commit c796a203218a8308f485b9eeb0d95233563a6c4b Author: cnstiout Date: Sat Jul 4 20:27:08 2026 +0200 Initial sanctuary sources diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7e44dc4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,24 @@ +.DS_Store +**/.DS_Store + +# Gradle and build outputs +.gradle/ +build/ +run/ +logs/ +out/ +*.class +*.log + +# Pack/export artifacts kept outside Git +/sanctuary.zip +/Gameplay/blocodex/blocodex-java.zip + +# Local IDE/editor files +.idea/ +.vscode/ +*.iml + +# Local toolchain caches +.jdk/ +.codex-cache/ diff --git a/Farming/canaplia/.gitignore b/Farming/canaplia/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Farming/canaplia/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Farming/canaplia/build.gradle b/Farming/canaplia/build.gradle new file mode 100644 index 0000000..9441702 --- /dev/null +++ b/Farming/canaplia/build.gradle @@ -0,0 +1,74 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { + mavenCentral() +} + +loom { + splitEnvironmentSourceSets() + + mods { + "canaplia" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" + testImplementation "org.junit.jupiter:junit-jupiter:5.11.4" + testRuntimeOnly "org.junit.platform:junit-platform-launcher" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +tasks.withType(Test).configureEach { + useJUnitPlatform() +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Farming/canaplia/docs/canaplia_2_0_foundations.md b/Farming/canaplia/docs/canaplia_2_0_foundations.md new file mode 100644 index 0000000..37528c7 --- /dev/null +++ b/Farming/canaplia/docs/canaplia_2_0_foundations.md @@ -0,0 +1,25 @@ +# Canaplia 2.0 Foundations + +This document tracks the architectural groundwork introduced in `2.0.0`. + +## Goals +- Prepare variant-specific smoke effects without changing item ids later. +- Prepare resin evolution from shared-behavior resin blocks toward future unique resin variants. +- Keep current gameplay behavior stable until the next prompts add new content. + +## What changed +- `RolledJointItem` is now aware of its `HempVariant`. +- `CanapliaSmokeEffects` now resolves profiles from `SmokeSource + HempVariant`. +- `HempBudCompostingState` now remembers which hemp variant was inserted into each tracked composter. +- `HempBudComposterInteraction` now accepts any hemp bud variant and blocks mixed-variant composting in a single composter. +- `CanapliaResinCatalog` now maps each bud variant to its matching resin block and burn duration. + +## Current shared behavior +- All hemp variants still use the same smoke effect set for now. +- All resin block variants still use the same smoke behavior for now. +- All resin block variants still use the same burn duration for now. + +## Next prompt entry points +- Add unique smoke profiles in `CanapliaSmokeEffects#createVariantAwareProfile`. +- Add unique burn durations in `CanapliaResinCatalog#resolve`. +- Add unique resin-side effects if they need to diverge from the hemp source variant. diff --git a/Farming/canaplia/docs/canaplia_codex_discovery_sources.csv b/Farming/canaplia/docs/canaplia_codex_discovery_sources.csv new file mode 100644 index 0000000..de2aa98 --- /dev/null +++ b/Farming/canaplia/docs/canaplia_codex_discovery_sources.csv @@ -0,0 +1,18 @@ +source_block,source_family,biome_focus,possible_variants,base_seed_drop_chance,extra_conditions,codex_notes +minecraft:short_grass,surface_flora,plains; forest; meadow; cherry_grove,common; tender; olive,0.06,Starter source buffed for survival playability,Main survival starter source +minecraft:tall_grass,surface_flora,plains; meadow; savanna; flower_forest,common; tender; olive,0.1,Higher chance than short grass,Best early-game exploration source +minecraft:short_dry_grass,dry_surface_flora,savanna; desert; badlands,olive,0.06,Fabric 1.21.11 dry-grass starter source,Primary dry-biome starter source +minecraft:tall_dry_grass,dry_surface_flora,savanna; desert; badlands,olive,0.1,Higher chance than short dry grass,Best early-game dry starter source +minecraft:fern,cold_or_shaded_flora,taiga; dark_forest; snowy_taiga; grove,dark; ashen,0.07,Pick by biome temperature / canopy,Useful for cold and shade strains +minecraft:large_fern,cold_or_shaded_flora,snowy_taiga; grove; old_growth_taiga,ashen; dark,0.1,Slightly better than normal fern,Good for cold-biome hunting +minecraft:dead_bush,dry_flora,badlands; eroded_badlands; wooded_badlands; desert,amber; olive,0.1,Amber should dominate in badlands,Avoid dirt-breaking loot; keep it botanical +minecraft:moss_carpet,humid_flora,lush_caves,moss,0.07,Humidity source,Pairs well with cave exploration +minecraft:hanging_roots,humid_flora,lush_caves; mangrove_swamp,moss,0.1,Humidity source,Good spelunker / wet-biome source +minecraft:cave_vines,humid_flora,lush_caves,moss,0.06,Humidity source,Optional extra source if desired +minecraft:crimson_roots,nether_native,crimson_forest; nether_wastes,ember,0.02,Nether only,Forced ember result +minecraft:warped_roots,nether_native,warped_forest; basalt_deltas,ember,0.02,Nether only,Forced ember result +minecraft:nether_sprouts,nether_native,soul_sand_valley; basalt_deltas,ember,0.015,Nether only,Forced ember result +minecraft:weeping_vines,nether_native,crimson_forest,ember,0.01,Nether only,Forced ember result +minecraft:twisting_vines,nether_native,warped_forest; soul_sand_valley,ember,0.01,Nether only,Forced ember result +minecraft:chorus_plant,end_native,end_highlands; end_midlands; small_end_islands; end_barrens,indigo,0.015,End only,Forced indigo result +minecraft:chorus_flower,end_native,end_highlands; end_midlands; small_end_islands; end_barrens,indigo,0.02,End only,Forced indigo result diff --git a/Farming/canaplia/docs/canaplia_codex_hybrid_rules.csv b/Farming/canaplia/docs/canaplia_codex_hybrid_rules.csv new file mode 100644 index 0000000..1a536f8 --- /dev/null +++ b/Farming/canaplia/docs/canaplia_codex_hybrid_rules.csv @@ -0,0 +1,7 @@ +result_variant,parent_a,parent_b,rule_type,environment_requirement,harvest_requirement,result_seed_chance,codex_notes +gold,tender,olive,hybrid,warm biome; sky visible; daytime,Both parents mature and adjacent (radius 1),0.12,Bright dry hybrid +purple,dark,moss,hybrid,humid area; low light,Both parents mature and adjacent (radius 1),0.08,Shadow-humidity hybrid +pink,tender,purple,hybrid,flower biome or greenhouse; dawn or dusk,Both parents mature and adjacent (radius 1),0.1,Floral color hybrid +coral,amber,moss,hybrid,warm biome; farmland touching water,Both parents mature and adjacent (radius 1),0.1,Warm coastal hybrid +bluish,ashen,tender,hybrid,cold biome or snow/ice nearby,Both parents mature and adjacent (radius 1),0.09,Cold color hybrid +varieg,any,different_any,mutation,humid biome; especially lush_caves,Two distinct mature variants adjacent (radius 1),0.06,Collector mutation diff --git a/Farming/canaplia/docs/canaplia_codex_special_rules.csv b/Farming/canaplia/docs/canaplia_codex_special_rules.csv new file mode 100644 index 0000000..45c8bd6 --- /dev/null +++ b/Farming/canaplia/docs/canaplia_codex_special_rules.csv @@ -0,0 +1,4 @@ +variant_key,rule_type,source,condition,result_chance,codex_notes +lunar,special_harvest,ashen or bluish,Harvest mature parent at night with sky visible in a cold biome,0.06,Night-only special roll; no full moon requirement +ember,dimension_lock,nether_native_plants,Break eligible Nether flora in any Nether biome,1.0,Forced result in Nether source table; never obtainable elsewhere +indigo,dimension_lock,chorus_plant or chorus_flower,Break eligible End flora in any End biome,1.0,Forced result in End source table; never obtainable elsewhere diff --git a/Farming/canaplia/docs/canaplia_codex_survival_obtainment.json b/Farming/canaplia/docs/canaplia_codex_survival_obtainment.json new file mode 100644 index 0000000..74c9f20 --- /dev/null +++ b/Farming/canaplia/docs/canaplia_codex_survival_obtainment.json @@ -0,0 +1,496 @@ +{ + "variants_catalog": [ + { + "variant_key": "common", + "variant_name_fr": "Chanvre commun", + "family": "wild_base", + "obtainable_in_survival": "yes", + "first_obtention": "Discover seeds by breaking short grass or tall grass", + "source_blocks_or_plants": "minecraft:short_grass; minecraft:tall_grass", + "biome_focus": "plains; forest; riverbanks", + "breeding_recipe": "", + "special_conditions": "No special condition", + "dimension_lock": "", + "codex_notes": "Main starter line. Use as fallback green strain." + }, + { + "variant_key": "tender", + "variant_name_fr": "Chanvre tendre", + "family": "wild_base", + "obtainable_in_survival": "yes", + "first_obtention": "Discover seeds by breaking short grass or tall grass", + "source_blocks_or_plants": "minecraft:short_grass; minecraft:tall_grass", + "biome_focus": "meadow; flower_forest; cherry_grove", + "breeding_recipe": "", + "special_conditions": "Best as a bright / floral base strain", + "dimension_lock": "", + "codex_notes": "Soft green line used in several hybrid recipes." + }, + { + "variant_key": "olive", + "variant_name_fr": "Chanvre olive", + "family": "wild_base", + "obtainable_in_survival": "yes", + "first_obtention": "Discover seeds by breaking grass or dry grass in warm biomes", + "source_blocks_or_plants": "minecraft:tall_grass; minecraft:short_grass; minecraft:tall_dry_grass; minecraft:short_dry_grass", + "biome_focus": "savanna; windswept_savanna; desert_edge", + "breeding_recipe": "", + "special_conditions": "Warm / dry overworld discovery line", + "dimension_lock": "", + "codex_notes": "Dry-climate green line." + }, + { + "variant_key": "dark", + "variant_name_fr": "Chanvre sombre", + "family": "wild_base", + "obtainable_in_survival": "yes", + "first_obtention": "Discover seeds by breaking ferns or shaded grass", + "source_blocks_or_plants": "minecraft:fern; minecraft:short_grass", + "biome_focus": "dark_forest; old_growth_taiga; pale_garden", + "breeding_recipe": "", + "special_conditions": "Better in low light / canopy-heavy biomes", + "dimension_lock": "", + "codex_notes": "Shade line; key parent for purple." + }, + { + "variant_key": "ashen", + "variant_name_fr": "Chanvre cendré", + "family": "wild_base", + "obtainable_in_survival": "yes", + "first_obtention": "Discover seeds by breaking ferns in cold biomes", + "source_blocks_or_plants": "minecraft:fern; minecraft:large_fern", + "biome_focus": "snowy_taiga; grove; snowy_plains", + "breeding_recipe": "", + "special_conditions": "Cold-climate base line", + "dimension_lock": "", + "codex_notes": "Cold green line; key parent for bluish and lunar." + }, + { + "variant_key": "moss", + "variant_name_fr": "Chanvre mousse", + "family": "wild_base", + "obtainable_in_survival": "yes", + "first_obtention": "Discover seeds from humid cave / swamp flora", + "source_blocks_or_plants": "minecraft:moss_carpet; minecraft:hanging_roots; minecraft:cave_vines", + "biome_focus": "lush_caves; swamp; mangrove_swamp", + "breeding_recipe": "", + "special_conditions": "Humidity-heavy discovery line", + "dimension_lock": "", + "codex_notes": "Humid green line; key parent for purple, coral, varieg." + }, + { + "variant_key": "amber", + "variant_name_fr": "Chanvre ambré", + "family": "wild_rare", + "obtainable_in_survival": "yes", + "first_obtention": "Rare seed from dead bushes", + "source_blocks_or_plants": "minecraft:dead_bush", + "biome_focus": "badlands; eroded_badlands; wooded_badlands", + "breeding_recipe": "", + "special_conditions": "Rare wild discovery in hot mineral biomes", + "dimension_lock": "", + "codex_notes": "Dry rare line; parent for coral." + }, + { + "variant_key": "gold", + "variant_name_fr": "Chanvre doré", + "family": "hybrid", + "obtainable_in_survival": "yes", + "first_obtention": "Obtain as hybrid seed", + "source_blocks_or_plants": "", + "biome_focus": "warm_biomes; bright_surface_fields", + "breeding_recipe": "tender + olive", + "special_conditions": "Mature parents adjacent (radius 1); harvest by day with sky visible", + "dimension_lock": "", + "codex_notes": "Colorful hybrid from bright and dry green parents." + }, + { + "variant_key": "pink", + "variant_name_fr": "Chanvre rosé", + "family": "hybrid", + "obtainable_in_survival": "yes", + "first_obtention": "Obtain as hybrid seed", + "source_blocks_or_plants": "", + "biome_focus": "flower_forest; meadow; cherry_grove", + "breeding_recipe": "tender + purple", + "special_conditions": "Mature parents adjacent (radius 1); harvest at dawn or dusk", + "dimension_lock": "", + "codex_notes": "Stylized floral hybrid." + }, + { + "variant_key": "coral", + "variant_name_fr": "Chanvre corail", + "family": "hybrid", + "obtainable_in_survival": "yes", + "first_obtention": "Obtain as hybrid seed", + "source_blocks_or_plants": "", + "biome_focus": "mangrove_edge; beach; warm_coast", + "breeding_recipe": "amber + moss", + "special_conditions": "Mature parents adjacent (radius 1); at least 1 water block touching farmland", + "dimension_lock": "", + "codex_notes": "Warm wet hybrid." + }, + { + "variant_key": "purple", + "variant_name_fr": "Chanvre pourpre", + "family": "hybrid", + "obtainable_in_survival": "yes", + "first_obtention": "Obtain as hybrid seed", + "source_blocks_or_plants": "", + "biome_focus": "humid_shaded_fields; swamp; dark_forest", + "breeding_recipe": "dark + moss", + "special_conditions": "Mature parents adjacent (radius 1); low light and humidity", + "dimension_lock": "", + "codex_notes": "Shadow-humidity hybrid." + }, + { + "variant_key": "varieg", + "variant_name_fr": "Chanvre panaché", + "family": "hybrid", + "obtainable_in_survival": "yes", + "first_obtention": "Obtain as mutation seed", + "source_blocks_or_plants": "", + "biome_focus": "lush_caves; jungle; swamp_greenhouse", + "breeding_recipe": "any_two_distinct_variants", + "special_conditions": "Two distinct mature parents adjacent (radius 1); humid biome", + "dimension_lock": "", + "codex_notes": "Mutation-style collector variant." + }, + { + "variant_key": "bluish", + "variant_name_fr": "Chanvre bleuté", + "family": "hybrid", + "obtainable_in_survival": "yes", + "first_obtention": "Obtain as hybrid seed", + "source_blocks_or_plants": "", + "biome_focus": "cold_fields; grove; ice_edge", + "breeding_recipe": "ashen + tender", + "special_conditions": "Mature parents adjacent (radius 1); cold biome or snow/ice nearby", + "dimension_lock": "", + "codex_notes": "Cold hybrid, moved out of wild discovery to keep survival logic coherent." + }, + { + "variant_key": "lunar", + "variant_name_fr": "Chanvre lunaire", + "family": "circumstantial", + "obtainable_in_survival": "yes", + "first_obtention": "Special night harvest", + "source_blocks_or_plants": "", + "biome_focus": "cold_open_sky_biomes", + "breeding_recipe": "ashen or bluish -> lunar seed roll", + "special_conditions": "Harvest mature ashen or bluish plant at night, with sky visible, in a cold biome", + "dimension_lock": "", + "codex_notes": "Not found directly; obtained through timed harvest." + }, + { + "variant_key": "ember", + "variant_name_fr": "Chanvre braise", + "family": "dimensional", + "obtainable_in_survival": "yes", + "first_obtention": "Break native Nether flora", + "source_blocks_or_plants": "minecraft:crimson_roots; minecraft:warped_roots; minecraft:nether_sprouts; minecraft:weeping_vines; minecraft:twisting_vines", + "biome_focus": "all_nether_biomes", + "breeding_recipe": "", + "special_conditions": "Nether-only. Never drops outside the Nether.", + "dimension_lock": "nether", + "codex_notes": "Dimension identity strain." + }, + { + "variant_key": "indigo", + "variant_name_fr": "Chanvre indigo", + "family": "dimensional", + "obtainable_in_survival": "yes", + "first_obtention": "Break chorus plants or chorus flowers", + "source_blocks_or_plants": "minecraft:chorus_plant; minecraft:chorus_flower", + "biome_focus": "all_end_biomes", + "breeding_recipe": "", + "special_conditions": "End-only. Never drops outside the End.", + "dimension_lock": "end", + "codex_notes": "Dimension identity strain." + } + ], + "discovery_sources": [ + { + "source_block": "minecraft:short_grass", + "source_family": "surface_flora", + "biome_focus": "plains; forest; meadow; cherry_grove", + "possible_variants": [ + "common", + "tender", + "olive" + ], + "base_seed_drop_chance": 0.06, + "extra_conditions": "Starter source buffed for survival playability", + "codex_notes": "Main survival starter source" + }, + { + "source_block": "minecraft:tall_grass", + "source_family": "surface_flora", + "biome_focus": "plains; meadow; savanna; flower_forest", + "possible_variants": [ + "common", + "tender", + "olive" + ], + "base_seed_drop_chance": 0.1, + "extra_conditions": "Higher chance than short grass", + "codex_notes": "Best early-game exploration source" + }, + { + "source_block": "minecraft:short_dry_grass", + "source_family": "dry_surface_flora", + "biome_focus": "savanna; desert; badlands", + "possible_variants": [ + "olive" + ], + "base_seed_drop_chance": 0.06, + "extra_conditions": "Fabric 1.21.11 dry-grass starter source", + "codex_notes": "Primary dry-biome starter source" + }, + { + "source_block": "minecraft:tall_dry_grass", + "source_family": "dry_surface_flora", + "biome_focus": "savanna; desert; badlands", + "possible_variants": [ + "olive" + ], + "base_seed_drop_chance": 0.1, + "extra_conditions": "Higher chance than short dry grass", + "codex_notes": "Best early-game dry starter source" + }, + { + "source_block": "minecraft:fern", + "source_family": "cold_or_shaded_flora", + "biome_focus": "taiga; dark_forest; snowy_taiga; grove", + "possible_variants": [ + "dark", + "ashen" + ], + "base_seed_drop_chance": 0.07, + "extra_conditions": "Pick by biome temperature / canopy", + "codex_notes": "Useful for cold and shade strains" + }, + { + "source_block": "minecraft:large_fern", + "source_family": "cold_or_shaded_flora", + "biome_focus": "snowy_taiga; grove; old_growth_taiga", + "possible_variants": [ + "ashen", + "dark" + ], + "base_seed_drop_chance": 0.1, + "extra_conditions": "Slightly better than normal fern", + "codex_notes": "Good for cold-biome hunting" + }, + { + "source_block": "minecraft:dead_bush", + "source_family": "dry_flora", + "biome_focus": "badlands; eroded_badlands; wooded_badlands; desert", + "possible_variants": [ + "amber", + "olive" + ], + "base_seed_drop_chance": 0.1, + "extra_conditions": "Amber should dominate in badlands", + "codex_notes": "Avoid dirt-breaking loot; keep it botanical" + }, + { + "source_block": "minecraft:moss_carpet", + "source_family": "humid_flora", + "biome_focus": "lush_caves", + "possible_variants": [ + "moss" + ], + "base_seed_drop_chance": 0.07, + "extra_conditions": "Humidity source", + "codex_notes": "Pairs well with cave exploration" + }, + { + "source_block": "minecraft:hanging_roots", + "source_family": "humid_flora", + "biome_focus": "lush_caves; mangrove_swamp", + "possible_variants": [ + "moss" + ], + "base_seed_drop_chance": 0.1, + "extra_conditions": "Humidity source", + "codex_notes": "Good spelunker / wet-biome source" + }, + { + "source_block": "minecraft:cave_vines", + "source_family": "humid_flora", + "biome_focus": "lush_caves", + "possible_variants": [ + "moss" + ], + "base_seed_drop_chance": 0.06, + "extra_conditions": "Humidity source", + "codex_notes": "Optional extra source if desired" + }, + { + "source_block": "minecraft:crimson_roots", + "source_family": "nether_native", + "biome_focus": "crimson_forest; nether_wastes", + "possible_variants": [ + "ember" + ], + "base_seed_drop_chance": 0.02, + "extra_conditions": "Nether only", + "codex_notes": "Forced ember result" + }, + { + "source_block": "minecraft:warped_roots", + "source_family": "nether_native", + "biome_focus": "warped_forest; basalt_deltas", + "possible_variants": [ + "ember" + ], + "base_seed_drop_chance": 0.02, + "extra_conditions": "Nether only", + "codex_notes": "Forced ember result" + }, + { + "source_block": "minecraft:nether_sprouts", + "source_family": "nether_native", + "biome_focus": "soul_sand_valley; basalt_deltas", + "possible_variants": [ + "ember" + ], + "base_seed_drop_chance": 0.015, + "extra_conditions": "Nether only", + "codex_notes": "Forced ember result" + }, + { + "source_block": "minecraft:weeping_vines", + "source_family": "nether_native", + "biome_focus": "crimson_forest", + "possible_variants": [ + "ember" + ], + "base_seed_drop_chance": 0.01, + "extra_conditions": "Nether only", + "codex_notes": "Forced ember result" + }, + { + "source_block": "minecraft:twisting_vines", + "source_family": "nether_native", + "biome_focus": "warped_forest; soul_sand_valley", + "possible_variants": [ + "ember" + ], + "base_seed_drop_chance": 0.01, + "extra_conditions": "Nether only", + "codex_notes": "Forced ember result" + }, + { + "source_block": "minecraft:chorus_plant", + "source_family": "end_native", + "biome_focus": "end_highlands; end_midlands; small_end_islands; end_barrens", + "possible_variants": [ + "indigo" + ], + "base_seed_drop_chance": 0.015, + "extra_conditions": "End only", + "codex_notes": "Forced indigo result" + }, + { + "source_block": "minecraft:chorus_flower", + "source_family": "end_native", + "biome_focus": "end_highlands; end_midlands; small_end_islands; end_barrens", + "possible_variants": [ + "indigo" + ], + "base_seed_drop_chance": 0.02, + "extra_conditions": "End only", + "codex_notes": "Forced indigo result" + } + ], + "hybrid_rules": [ + { + "result_variant": "gold", + "parent_a": "tender", + "parent_b": "olive", + "rule_type": "hybrid", + "environment_requirement": "warm biome; sky visible; daytime", + "harvest_requirement": "Both parents mature and adjacent (radius 1)", + "result_seed_chance": 0.12, + "codex_notes": "Bright dry hybrid" + }, + { + "result_variant": "purple", + "parent_a": "dark", + "parent_b": "moss", + "rule_type": "hybrid", + "environment_requirement": "humid area; low light", + "harvest_requirement": "Both parents mature and adjacent (radius 1)", + "result_seed_chance": 0.08, + "codex_notes": "Shadow-humidity hybrid" + }, + { + "result_variant": "pink", + "parent_a": "tender", + "parent_b": "purple", + "rule_type": "hybrid", + "environment_requirement": "flower biome or greenhouse; dawn or dusk", + "harvest_requirement": "Both parents mature and adjacent (radius 1)", + "result_seed_chance": 0.1, + "codex_notes": "Floral color hybrid" + }, + { + "result_variant": "coral", + "parent_a": "amber", + "parent_b": "moss", + "rule_type": "hybrid", + "environment_requirement": "warm biome; farmland touching water", + "harvest_requirement": "Both parents mature and adjacent (radius 1)", + "result_seed_chance": 0.1, + "codex_notes": "Warm coastal hybrid" + }, + { + "result_variant": "bluish", + "parent_a": "ashen", + "parent_b": "tender", + "rule_type": "hybrid", + "environment_requirement": "cold biome or snow/ice nearby", + "harvest_requirement": "Both parents mature and adjacent (radius 1)", + "result_seed_chance": 0.09, + "codex_notes": "Cold color hybrid" + }, + { + "result_variant": "varieg", + "parent_a": "any", + "parent_b": "different_any", + "rule_type": "mutation", + "environment_requirement": "humid biome; especially lush_caves", + "harvest_requirement": "Two distinct mature variants adjacent (radius 1)", + "result_seed_chance": 0.06, + "codex_notes": "Collector mutation" + } + ], + "special_rules": [ + { + "variant_key": "lunar", + "rule_type": "special_harvest", + "source": "ashen or bluish", + "condition": "Harvest mature parent at night with sky visible in a cold biome", + "result_chance": 0.06, + "codex_notes": "Night-only special roll; no full moon requirement" + }, + { + "variant_key": "ember", + "rule_type": "dimension_lock", + "source": "nether_native_plants", + "condition": "Break eligible Nether flora in any Nether biome", + "result_chance": 1.0, + "codex_notes": "Forced result in Nether source table; never obtainable elsewhere" + }, + { + "variant_key": "indigo", + "rule_type": "dimension_lock", + "source": "chorus_plant or chorus_flower", + "condition": "Break eligible End flora in any End biome", + "result_chance": 1.0, + "codex_notes": "Forced result in End source table; never obtainable elsewhere" + } + ] +} diff --git a/Farming/canaplia/docs/canaplia_codex_survival_obtainment.md b/Farming/canaplia/docs/canaplia_codex_survival_obtainment.md new file mode 100644 index 0000000..7f18118 --- /dev/null +++ b/Farming/canaplia/docs/canaplia_codex_survival_obtainment.md @@ -0,0 +1,29 @@ +# Canaplia survival obtainment tables for Codex + +These files describe how already-implemented hemp crops can be obtained in survival. + +## Design summary +- The crop blocks and item variants already exist in the mod. +- The missing part is the survival obtainment loop. +- Wild green variants are discovered from biome flora. +- Colorful variants mostly come from breeding / mutation. +- `lunar` is a timed special harvest. +- `ember` is Nether-only. +- `indigo` is End-only. + +## Files +- `canaplia_codex_variants_catalog.csv`: one row per variant +- `canaplia_codex_discovery_sources.csv`: world blocks / plants that can drop seeds +- `canaplia_codex_hybrid_rules.csv`: breeding and mutation outputs +- `canaplia_codex_special_rules.csv`: night / Nether / End rules +- `canaplia_codex_survival_obtainment.xlsx`: workbook version of the same data + +## Intended Codex usage +Use these files as the survival design source-of-truth for: +- loot/drop tables for biome flora +- breeding logic between mature adjacent crops +- special timed harvest rules +- dimension-exclusive obtainment rules + +## Internal key alignment +- Runtime enum keys must match the mod item/block ids: use `pink` instead of `rosy`, and `varieg` instead of `variegated`. diff --git a/Farming/canaplia/docs/canaplia_codex_variants_catalog.csv b/Farming/canaplia/docs/canaplia_codex_variants_catalog.csv new file mode 100644 index 0000000..d446e26 --- /dev/null +++ b/Farming/canaplia/docs/canaplia_codex_variants_catalog.csv @@ -0,0 +1,17 @@ +variant_key,variant_name_fr,family,obtainable_in_survival,first_obtention,source_blocks_or_plants,biome_focus,breeding_recipe,special_conditions,dimension_lock,codex_notes +common,Chanvre commun,wild_base,yes,Discover seeds by breaking short grass or tall grass,minecraft:short_grass; minecraft:tall_grass,plains; forest; riverbanks,,No special condition,,Main starter line. Use as fallback green strain. +tender,Chanvre tendre,wild_base,yes,Discover seeds by breaking short grass or tall grass,minecraft:short_grass; minecraft:tall_grass,meadow; flower_forest; cherry_grove,,Best as a bright / floral base strain,,Soft green line used in several hybrid recipes. +olive,Chanvre olive,wild_base,yes,Discover seeds by breaking grass or dry grass in warm biomes,minecraft:tall_grass; minecraft:short_grass; minecraft:tall_dry_grass; minecraft:short_dry_grass,savanna; windswept_savanna; desert_edge,,Warm / dry overworld discovery line,,Dry-climate green line. +dark,Chanvre sombre,wild_base,yes,Discover seeds by breaking ferns or shaded grass,minecraft:fern; minecraft:short_grass,dark_forest; old_growth_taiga; pale_garden,,Better in low light / canopy-heavy biomes,,Shade line; key parent for purple. +ashen,Chanvre cendré,wild_base,yes,Discover seeds by breaking ferns in cold biomes,minecraft:fern; minecraft:large_fern,snowy_taiga; grove; snowy_plains,,Cold-climate base line,,Cold green line; key parent for bluish and lunar. +moss,Chanvre mousse,wild_base,yes,Discover seeds from humid cave / swamp flora,minecraft:moss_carpet; minecraft:hanging_roots; minecraft:cave_vines,lush_caves; swamp; mangrove_swamp,,Humidity-heavy discovery line,,"Humid green line; key parent for purple, coral, varieg." +amber,Chanvre ambré,wild_rare,yes,Rare seed from dead bushes,minecraft:dead_bush,badlands; eroded_badlands; wooded_badlands,,Rare wild discovery in hot mineral biomes,,Dry rare line; parent for coral. +gold,Chanvre doré,hybrid,yes,Obtain as hybrid seed,,warm_biomes; bright_surface_fields,tender + olive,Mature parents adjacent (radius 1); harvest by day with sky visible,,Colorful hybrid from bright and dry green parents. +pink,Chanvre rosé,hybrid,yes,Obtain as hybrid seed,,flower_forest; meadow; cherry_grove,tender + purple,Mature parents adjacent (radius 1); harvest at dawn or dusk,,Stylized floral hybrid. +coral,Chanvre corail,hybrid,yes,Obtain as hybrid seed,,mangrove_edge; beach; warm_coast,amber + moss,Mature parents adjacent (radius 1); at least 1 water block touching farmland,,Warm wet hybrid. +purple,Chanvre pourpre,hybrid,yes,Obtain as hybrid seed,,humid_shaded_fields; swamp; dark_forest,dark + moss,Mature parents adjacent (radius 1); low light and humidity,,Shadow-humidity hybrid. +varieg,Chanvre panaché,hybrid,yes,Obtain as mutation seed,,lush_caves; jungle; swamp_greenhouse,any_two_distinct_variants,Two distinct mature parents adjacent (radius 1); humid biome,,Mutation-style collector variant. +bluish,Chanvre bleuté,hybrid,yes,Obtain as hybrid seed,,cold_fields; grove; ice_edge,ashen + tender,Mature parents adjacent (radius 1); cold biome or snow/ice nearby,,"Cold hybrid, moved out of wild discovery to keep survival logic coherent." +lunar,Chanvre lunaire,circumstantial,yes,Special night harvest,,cold_open_sky_biomes,ashen or bluish -> lunar seed roll,"Harvest mature ashen or bluish plant at night, with sky visible, in a cold biome",,Not found directly; obtained through timed harvest. +ember,Chanvre braise,dimensional,yes,Break native Nether flora,minecraft:crimson_roots; minecraft:warped_roots; minecraft:nether_sprouts; minecraft:weeping_vines; minecraft:twisting_vines,all_nether_biomes,,Nether-only. Never drops outside the Nether.,nether,Dimension identity strain. +indigo,Chanvre indigo,dimensional,yes,Break chorus plants or chorus flowers,minecraft:chorus_plant; minecraft:chorus_flower,all_end_biomes,,End-only. Never drops outside the End.,end,Dimension identity strain. diff --git a/Farming/canaplia/docs/hemp_effect_system.md b/Farming/canaplia/docs/hemp_effect_system.md new file mode 100644 index 0000000..6e8cf4d --- /dev/null +++ b/Farming/canaplia/docs/hemp_effect_system.md @@ -0,0 +1,160 @@ +# Hemp Effect System + +## Goal + +Each hemp variety applies: +1. a main gameplay profile, +2. a subtle visual profile during the normal trip, +3. a possible bad trip with stronger visual disturbance. + +Normal trip must stay readable and non-invasive. +Bad trip is the only state allowed to become truly disturbing. + +--- + +## Core rules + +### Consumption flow + +When the player consumes a hemp item: + +1. Resolve the consumed variety from its `id`. +2. Apply all `main_effects` immediately. +3. Enable the `normal_visual_profile`. +4. Roll one bad trip chance using `bad_trip_chance`. +5. If the roll succeeds, schedule the bad trip after a random delay in `bad_trip_delay_sec`. +6. When the delay expires, apply `bad_trip_effects` and enable `bad_trip_visual_profile`. +7. When the main duration ends, clear normal visuals and gameplay effects. +8. When the bad trip duration ends, clear bad trip visuals and gameplay effects. + +--- + +## Design constraints + +### Normal trip +Normal trip should: +- remain comfortable for 2 to 3 minutes, +- never make HUD unreadable, +- never make combat or building frustrating, +- use only light visual treatment. + +Allowed normal visual changes: +- subtle tint, +- mild saturation shift, +- mild contrast shift, +- very light vignette, +- very light ghosting. + +Forbidden during normal trip: +- strong blur, +- strong wobble, +- aggressive FOV change, +- strong double vision, +- strong screen shake. + +### Bad trip +Bad trip should: +- feel clearly worse, +- remain shorter than the main trip, +- include nausea and hunger, +- be visually more unstable. + +Allowed bad trip visual changes: +- stronger tint, +- stronger vignette, +- stronger saturation shift, +- light image wobble, +- light afterimage, +- light brightness pulsing. + +--- + +## Stacking rules + +Current stacking model: + +- Consuming the same variety refreshes that variety's duration. +- Consuming a different variety keeps the previous gameplay effects active and adds the new variety on top. +- Main gameplay effects from several varieties can coexist at the same time. +- A new manual consumption rerolls the bad trip entirely from the latest variety. +- Passive resin aura refresh keeps extending the same variety without rerolling the bad trip every tick. +- Only one normal hemp visual profile can be active at a time: the latest active variety drives visuals. +- Only one bad trip state can be active at a time, and a reroll replaces the previous pending or active bad trip. + +--- + +## Effect conventions + +### Main effect duration +Main trip duration should stay between 140 and 180 seconds. + +### Bad trip duration +Bad trip duration should stay between 25 and 40 seconds. + +### Bad trip base gameplay package +All bad trips contain at least: +- Nausea +- Hunger + +Rare and very rare varieties may add: +- Weakness +- Slowness +- short Blindness + +Use these sparingly. + +--- + +## Data format + +Each variety entry contains: + +- `id`: stable machine id +- `name_fr`: display name +- `rarity`: common, uncommon, rare, very_rare +- `color_family`: readable color identity +- `main_duration_sec`: main trip duration +- `main_effects`: list of vanilla effects +- `normal_visual_profile`: subtle visual profile +- `bad_trip_chance`: float from 0.0 to 1.0 +- `bad_trip_delay_sec`: min/max delay before bad trip starts +- `bad_trip_duration_sec`: bad trip duration +- `bad_trip_effects`: gameplay penalty package +- `bad_trip_visual_profile`: stronger visual profile + +--- + +## Visual profile semantics + +### Intensity scale +Use a 0.0 to 1.0 scale: +- 0.05 to 0.15 = subtle +- 0.20 to 0.35 = noticeable +- 0.40+ = invasive + +Normal trip should usually stay in 0.08 to 0.14. +Bad trip may go to 0.25 to 0.50 depending on rarity. + +### Suggested shader parameters +A visual profile can drive: +- `tint_strength` +- `saturation_delta` +- `contrast_delta` +- `vignette_strength` +- `ghosting_strength` +- `wobble_strength` +- `pulse_strength` + +Not every profile needs every parameter. + +--- + +## Implementation note + +The system should be data-driven: +- all plant tuning lives in JSON, +- gameplay code reads the JSON, +- visuals are picked by profile name or inline values, +- item classes should not hardcode effect logic. + +This allows easy balancing without rewriting gameplay code. diff --git a/Farming/canaplia/docs/hemp_varieties.json b/Farming/canaplia/docs/hemp_varieties.json new file mode 100644 index 0000000..0d05bc9 --- /dev/null +++ b/Farming/canaplia/docs/hemp_varieties.json @@ -0,0 +1,601 @@ +{ + "version": 1, + "bad_trip_base_rules": { + "applies_nausea": true, + "applies_hunger": true, + "normal_trip_visual_intensity_target": [0.08, 0.14], + "bad_trip_visual_intensity_target": [0.25, 0.50] + }, + "varieties": [ + { + "id": "chanvre_commun", + "name_fr": "Chanvre commun", + "rarity": "common", + "color_family": "natural_green", + "main_duration_sec": 160, + "main_effects": [ + { "effect": "minecraft:resistance", "amplifier": 0, "duration_sec": 160 }, + { "effect": "minecraft:slowness", "amplifier": 0, "duration_sec": 160 }, + { "effect": "minecraft:haste", "amplifier": 0, "duration_sec": 160 }, + { "effect": "minecraft:strength", "amplifier": 0, "duration_sec": 160 } + ], + "normal_visual_profile": { + "palette": "soft_green", + "intensity": 0.09, + "tint_strength": 0.05, + "saturation_delta": 0.03, + "contrast_delta": 0.02, + "vignette_strength": 0.03 + }, + "bad_trip_chance": 0.10, + "bad_trip_delay_sec": { "min": 18, "max": 32 }, + "bad_trip_duration_sec": 28, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 28 }, + { "effect": "minecraft:hunger", "amplifier": 0, "duration_sec": 32 } + ], + "bad_trip_visual_profile": { + "palette": "dirty_green", + "intensity": 0.26, + "tint_strength": 0.10, + "saturation_delta": -0.05, + "contrast_delta": 0.04, + "vignette_strength": 0.10, + "ghosting_strength": 0.06 + } + }, + { + "id": "chanvre_tendre", + "name_fr": "Chanvre tendre", + "rarity": "common", + "color_family": "fresh_light_green", + "main_duration_sec": 170, + "main_effects": [ + { "effect": "minecraft:speed", "amplifier": 0, "duration_sec": 170 }, + { "effect": "minecraft:jump_boost", "amplifier": 0, "duration_sec": 170 }, + { "effect": "minecraft:weakness", "amplifier": 0, "duration_sec": 170 } + ], + "normal_visual_profile": { + "palette": "fresh_green", + "intensity": 0.08, + "tint_strength": 0.04, + "saturation_delta": 0.04, + "contrast_delta": 0.01, + "vignette_strength": 0.02 + }, + "bad_trip_chance": 0.09, + "bad_trip_delay_sec": { "min": 20, "max": 35 }, + "bad_trip_duration_sec": 26, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 26 }, + { "effect": "minecraft:hunger", "amplifier": 0, "duration_sec": 30 } + ], + "bad_trip_visual_profile": { + "palette": "sour_green", + "intensity": 0.24, + "tint_strength": 0.09, + "saturation_delta": -0.04, + "vignette_strength": 0.08, + "ghosting_strength": 0.05 + } + }, + { + "id": "chanvre_olive", + "name_fr": "Chanvre olive", + "rarity": "common", + "color_family": "olive_green", + "main_duration_sec": 155, + "main_effects": [ + { "effect": "minecraft:haste", "amplifier": 0, "duration_sec": 155 }, + { "effect": "minecraft:luck", "amplifier": 0, "duration_sec": 155 }, + { "effect": "minecraft:hunger", "amplifier": 0, "duration_sec": 155 } + ], + "normal_visual_profile": { + "palette": "olive_matte", + "intensity": 0.09, + "tint_strength": 0.05, + "saturation_delta": -0.01, + "contrast_delta": 0.02, + "vignette_strength": 0.03 + }, + "bad_trip_chance": 0.12, + "bad_trip_delay_sec": { "min": 16, "max": 30 }, + "bad_trip_duration_sec": 30, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 30 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 34 } + ], + "bad_trip_visual_profile": { + "palette": "mustard_sick", + "intensity": 0.28, + "tint_strength": 0.11, + "saturation_delta": -0.08, + "vignette_strength": 0.10, + "ghosting_strength": 0.06 + } + }, + { + "id": "chanvre_sombre", + "name_fr": "Chanvre sombre", + "rarity": "common", + "color_family": "deep_forest_green", + "main_duration_sec": 165, + "main_effects": [ + { "effect": "minecraft:night_vision", "amplifier": 0, "duration_sec": 165 }, + { "effect": "minecraft:strength", "amplifier": 0, "duration_sec": 165 }, + { "effect": "minecraft:slowness", "amplifier": 0, "duration_sec": 165 } + ], + "normal_visual_profile": { + "palette": "deep_green", + "intensity": 0.10, + "tint_strength": 0.06, + "saturation_delta": -0.01, + "contrast_delta": 0.03, + "vignette_strength": 0.04 + }, + "bad_trip_chance": 0.12, + "bad_trip_delay_sec": { "min": 18, "max": 34 }, + "bad_trip_duration_sec": 30, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 30 }, + { "effect": "minecraft:hunger", "amplifier": 0, "duration_sec": 34 } + ], + "bad_trip_visual_profile": { + "palette": "swamp_dark", + "intensity": 0.29, + "tint_strength": 0.12, + "saturation_delta": -0.06, + "contrast_delta": 0.05, + "vignette_strength": 0.12, + "ghosting_strength": 0.05 + } + }, + { + "id": "chanvre_cendre", + "name_fr": "Chanvre cendré", + "rarity": "common", + "color_family": "ashy_green", + "main_duration_sec": 150, + "main_effects": [ + { "effect": "minecraft:slow_falling", "amplifier": 0, "duration_sec": 150 }, + { "effect": "minecraft:weakness", "amplifier": 0, "duration_sec": 150 } + ], + "normal_visual_profile": { + "palette": "ash_green", + "intensity": 0.09, + "tint_strength": 0.04, + "saturation_delta": -0.05, + "contrast_delta": -0.01, + "vignette_strength": 0.03, + "ghosting_strength": 0.03 + }, + "bad_trip_chance": 0.14, + "bad_trip_delay_sec": { "min": 14, "max": 28 }, + "bad_trip_duration_sec": 32, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 32 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 34 } + ], + "bad_trip_visual_profile": { + "palette": "dusty_gray_green", + "intensity": 0.30, + "tint_strength": 0.10, + "saturation_delta": -0.12, + "contrast_delta": -0.03, + "vignette_strength": 0.11, + "ghosting_strength": 0.08, + "wobble_strength": 0.04 + } + }, + { + "id": "chanvre_mousse", + "name_fr": "Chanvre mousse", + "rarity": "common", + "color_family": "moss_green", + "main_duration_sec": 175, + "main_effects": [ + { "effect": "minecraft:water_breathing", "amplifier": 0, "duration_sec": 175 }, + { "effect": "minecraft:regeneration", "amplifier": 0, "duration_sec": 175 }, + { "effect": "minecraft:slowness", "amplifier": 0, "duration_sec": 175 } + ], + "normal_visual_profile": { + "palette": "wet_moss", + "intensity": 0.09, + "tint_strength": 0.05, + "saturation_delta": 0.01, + "contrast_delta": -0.01, + "vignette_strength": 0.03 + }, + "bad_trip_chance": 0.11, + "bad_trip_delay_sec": { "min": 20, "max": 36 }, + "bad_trip_duration_sec": 28, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 28 }, + { "effect": "minecraft:hunger", "amplifier": 0, "duration_sec": 32 } + ], + "bad_trip_visual_profile": { + "palette": "bog_green", + "intensity": 0.27, + "tint_strength": 0.10, + "saturation_delta": -0.04, + "contrast_delta": -0.02, + "vignette_strength": 0.09, + "ghosting_strength": 0.06 + } + }, + { + "id": "chanvre_dore", + "name_fr": "Chanvre doré", + "rarity": "uncommon", + "color_family": "golden_green", + "main_duration_sec": 150, + "main_effects": [ + { "effect": "minecraft:absorption", "amplifier": 0, "duration_sec": 150 }, + { "effect": "minecraft:haste", "amplifier": 1, "duration_sec": 150 }, + { "effect": "minecraft:speed", "amplifier": 0, "duration_sec": 150 } + ], + "normal_visual_profile": { + "palette": "soft_gold", + "intensity": 0.11, + "tint_strength": 0.06, + "saturation_delta": 0.05, + "contrast_delta": 0.03, + "vignette_strength": 0.03 + }, + "bad_trip_chance": 0.15, + "bad_trip_delay_sec": { "min": 15, "max": 28 }, + "bad_trip_duration_sec": 30, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 30 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 34 } + ], + "bad_trip_visual_profile": { + "palette": "toxic_yellow", + "intensity": 0.32, + "tint_strength": 0.13, + "saturation_delta": 0.03, + "contrast_delta": 0.06, + "vignette_strength": 0.11, + "pulse_strength": 0.05 + } + }, + { + "id": "chanvre_ambre", + "name_fr": "Chanvre ambré", + "rarity": "uncommon", + "color_family": "amber_yellow_brown", + "main_duration_sec": 155, + "main_effects": [ + { "effect": "minecraft:fire_resistance", "amplifier": 0, "duration_sec": 155 }, + { "effect": "minecraft:strength", "amplifier": 0, "duration_sec": 155 }, + { "effect": "minecraft:hunger", "amplifier": 0, "duration_sec": 155 } + ], + "normal_visual_profile": { + "palette": "warm_amber", + "intensity": 0.11, + "tint_strength": 0.06, + "saturation_delta": 0.03, + "contrast_delta": 0.03, + "vignette_strength": 0.03 + }, + "bad_trip_chance": 0.16, + "bad_trip_delay_sec": { "min": 14, "max": 28 }, + "bad_trip_duration_sec": 32, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 32 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 34 } + ], + "bad_trip_visual_profile": { + "palette": "burnt_amber", + "intensity": 0.33, + "tint_strength": 0.14, + "saturation_delta": 0.01, + "contrast_delta": 0.05, + "vignette_strength": 0.12, + "pulse_strength": 0.06 + } + }, + { + "id": "chanvre_bleute", + "name_fr": "Chanvre bleuté", + "rarity": "uncommon", + "color_family": "cool_blue_green", + "main_duration_sec": 165, + "main_effects": [ + { "effect": "minecraft:night_vision", "amplifier": 0, "duration_sec": 165 }, + { "effect": "minecraft:water_breathing", "amplifier": 0, "duration_sec": 165 }, + { "effect": "minecraft:speed", "amplifier": 0, "duration_sec": 165 } + ], + "normal_visual_profile": { + "palette": "cool_blue", + "intensity": 0.10, + "tint_strength": 0.05, + "saturation_delta": 0.01, + "contrast_delta": 0.02, + "vignette_strength": 0.02 + }, + "bad_trip_chance": 0.14, + "bad_trip_delay_sec": { "min": 18, "max": 30 }, + "bad_trip_duration_sec": 29, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 29 }, + { "effect": "minecraft:hunger", "amplifier": 0, "duration_sec": 33 } + ], + "bad_trip_visual_profile": { + "palette": "cold_cyan", + "intensity": 0.30, + "tint_strength": 0.12, + "saturation_delta": -0.02, + "contrast_delta": 0.05, + "vignette_strength": 0.10, + "ghosting_strength": 0.07 + } + }, + { + "id": "chanvre_rose", + "name_fr": "Chanvre rosé", + "rarity": "uncommon", + "color_family": "soft_plant_pink", + "main_duration_sec": 175, + "main_effects": [ + { "effect": "minecraft:regeneration", "amplifier": 0, "duration_sec": 175 }, + { "effect": "minecraft:slowness", "amplifier": 0, "duration_sec": 175 } + ], + "normal_visual_profile": { + "palette": "soft_pink", + "intensity": 0.09, + "tint_strength": 0.04, + "saturation_delta": 0.03, + "contrast_delta": 0.01, + "vignette_strength": 0.02 + }, + "bad_trip_chance": 0.15, + "bad_trip_delay_sec": { "min": 20, "max": 35 }, + "bad_trip_duration_sec": 30, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 30 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 34 } + ], + "bad_trip_visual_profile": { + "palette": "sickly_pink", + "intensity": 0.31, + "tint_strength": 0.12, + "saturation_delta": -0.01, + "vignette_strength": 0.10, + "ghosting_strength": 0.06 + } + }, + { + "id": "chanvre_corail", + "name_fr": "Chanvre corail", + "rarity": "uncommon", + "color_family": "warm_coral", + "main_duration_sec": 150, + "main_effects": [ + { "effect": "minecraft:dolphins_grace", "amplifier": 0, "duration_sec": 150 }, + { "effect": "minecraft:water_breathing", "amplifier": 0, "duration_sec": 150 }, + { "effect": "minecraft:jump_boost", "amplifier": 0, "duration_sec": 150 } + ], + "normal_visual_profile": { + "palette": "coral_warm", + "intensity": 0.11, + "tint_strength": 0.05, + "saturation_delta": 0.04, + "contrast_delta": 0.02, + "vignette_strength": 0.02 + }, + "bad_trip_chance": 0.17, + "bad_trip_delay_sec": { "min": 14, "max": 26 }, + "bad_trip_duration_sec": 31, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 31 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 35 } + ], + "bad_trip_visual_profile": { + "palette": "burnt_coral", + "intensity": 0.33, + "tint_strength": 0.13, + "saturation_delta": 0.00, + "contrast_delta": 0.05, + "vignette_strength": 0.11, + "ghosting_strength": 0.06, + "pulse_strength": 0.05 + } + }, + { + "id": "chanvre_pourpre", + "name_fr": "Chanvre pourpre", + "rarity": "rare", + "color_family": "deep_red_violet", + "main_duration_sec": 145, + "main_effects": [ + { "effect": "minecraft:strength", "amplifier": 1, "duration_sec": 145 }, + { "effect": "minecraft:resistance", "amplifier": 0, "duration_sec": 145 } + ], + "normal_visual_profile": { + "palette": "mystic_purple", + "intensity": 0.12, + "tint_strength": 0.06, + "saturation_delta": 0.05, + "contrast_delta": 0.03, + "vignette_strength": 0.03 + }, + "bad_trip_chance": 0.22, + "bad_trip_delay_sec": { "min": 12, "max": 24 }, + "bad_trip_duration_sec": 34, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 1, "duration_sec": 34 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 36 }, + { "effect": "minecraft:weakness", "amplifier": 0, "duration_sec": 24 } + ], + "bad_trip_visual_profile": { + "palette": "corrupted_magenta", + "intensity": 0.40, + "tint_strength": 0.17, + "saturation_delta": 0.08, + "contrast_delta": 0.07, + "vignette_strength": 0.14, + "ghosting_strength": 0.10, + "wobble_strength": 0.05 + } + }, + { + "id": "chanvre_indigo", + "name_fr": "Chanvre indigo", + "rarity": "rare", + "color_family": "dark_blue_violet", + "main_duration_sec": 145, + "main_effects": [ + { "effect": "minecraft:invisibility", "amplifier": 0, "duration_sec": 145 }, + { "effect": "minecraft:night_vision", "amplifier": 0, "duration_sec": 145 }, + { "effect": "minecraft:weakness", "amplifier": 0, "duration_sec": 145 } + ], + "normal_visual_profile": { + "palette": "deep_indigo", + "intensity": 0.12, + "tint_strength": 0.06, + "saturation_delta": -0.01, + "contrast_delta": 0.04, + "vignette_strength": 0.04 + }, + "bad_trip_chance": 0.21, + "bad_trip_delay_sec": { "min": 12, "max": 25 }, + "bad_trip_duration_sec": 34, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 1, "duration_sec": 34 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 36 }, + { "effect": "minecraft:weakness", "amplifier": 0, "duration_sec": 24 } + ], + "bad_trip_visual_profile": { + "palette": "void_indigo", + "intensity": 0.39, + "tint_strength": 0.16, + "saturation_delta": -0.05, + "contrast_delta": 0.08, + "vignette_strength": 0.15, + "ghosting_strength": 0.11, + "wobble_strength": 0.04 + } + }, + { + "id": "chanvre_panache", + "name_fr": "Chanvre panaché", + "rarity": "rare", + "color_family": "mixed_pale_green", + "main_duration_sec": 160, + "main_effects_mode": "random_pick", + "main_effects_pool": [ + { "effect": "minecraft:speed", "amplifier": 0, "duration_sec": 160 }, + { "effect": "minecraft:haste", "amplifier": 0, "duration_sec": 160 }, + { "effect": "minecraft:regeneration", "amplifier": 0, "duration_sec": 160 }, + { "effect": "minecraft:night_vision", "amplifier": 0, "duration_sec": 160 } + ], + "main_effects_pick_count": 2, + "normal_visual_profile": { + "palette": "pale_mixed_green", + "intensity": 0.11, + "tint_strength": 0.05, + "saturation_delta": 0.01, + "contrast_delta": 0.02, + "vignette_strength": 0.03, + "ghosting_strength": 0.03 + }, + "bad_trip_chance": 0.20, + "bad_trip_delay_sec": { "min": 13, "max": 27 }, + "bad_trip_duration_sec": 33, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 1, "duration_sec": 33 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 36 } + ], + "bad_trip_visual_profile": { + "palette": "unstable_mixed", + "intensity": 0.36, + "tint_strength": 0.14, + "saturation_delta": -0.02, + "contrast_delta": 0.04, + "vignette_strength": 0.12, + "ghosting_strength": 0.10, + "wobble_strength": 0.05 + } + }, + { + "id": "chanvre_lunaire", + "name_fr": "Chanvre lunaire", + "rarity": "very_rare", + "color_family": "pale_silver_green", + "main_duration_sec": 150, + "main_effects": [ + { "effect": "minecraft:jump_boost", "amplifier": 1, "duration_sec": 150 }, + { "effect": "minecraft:slow_falling", "amplifier": 0, "duration_sec": 150 }, + { "effect": "minecraft:night_vision", "amplifier": 0, "duration_sec": 150 } + ], + "normal_visual_profile": { + "palette": "moon_pale", + "intensity": 0.13, + "tint_strength": 0.06, + "saturation_delta": -0.03, + "contrast_delta": 0.01, + "vignette_strength": 0.03, + "ghosting_strength": 0.03 + }, + "bad_trip_chance": 0.27, + "bad_trip_delay_sec": { "min": 10, "max": 22 }, + "bad_trip_duration_sec": 36, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 1, "duration_sec": 36 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 38 }, + { "effect": "minecraft:blindness", "amplifier": 0, "duration_sec": 4 } + ], + "bad_trip_visual_profile": { + "palette": "overexposed_moon", + "intensity": 0.46, + "tint_strength": 0.18, + "saturation_delta": -0.10, + "contrast_delta": -0.02, + "vignette_strength": 0.13, + "ghosting_strength": 0.12, + "wobble_strength": 0.06, + "pulse_strength": 0.06 + } + }, + { + "id": "chanvre_braise", + "name_fr": "Chanvre braise", + "rarity": "very_rare", + "color_family": "dark_red_ember", + "main_duration_sec": 145, + "main_effects": [ + { "effect": "minecraft:fire_resistance", "amplifier": 0, "duration_sec": 145 }, + { "effect": "minecraft:strength", "amplifier": 1, "duration_sec": 145 }, + { "effect": "minecraft:haste", "amplifier": 1, "duration_sec": 145 } + ], + "normal_visual_profile": { + "palette": "ember_warm", + "intensity": 0.13, + "tint_strength": 0.07, + "saturation_delta": 0.04, + "contrast_delta": 0.04, + "vignette_strength": 0.03 + }, + "bad_trip_chance": 0.30, + "bad_trip_delay_sec": { "min": 10, "max": 20 }, + "bad_trip_duration_sec": 38, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 1, "duration_sec": 38 }, + { "effect": "minecraft:hunger", "amplifier": 2, "duration_sec": 40 }, + { "effect": "minecraft:weakness", "amplifier": 0, "duration_sec": 20 } + ], + "bad_trip_visual_profile": { + "palette": "burning_red", + "intensity": 0.50, + "tint_strength": 0.20, + "saturation_delta": 0.06, + "contrast_delta": 0.08, + "vignette_strength": 0.16, + "ghosting_strength": 0.09, + "wobble_strength": 0.05, + "pulse_strength": 0.08 + } + } + ] +} \ No newline at end of file diff --git a/Farming/canaplia/docs/resin_block_variants_metadata.json b/Farming/canaplia/docs/resin_block_variants_metadata.json new file mode 100644 index 0000000..5fe1267 --- /dev/null +++ b/Farming/canaplia/docs/resin_block_variants_metadata.json @@ -0,0 +1,162 @@ +{ + "layout": { + "tile_size": [ + 16, + 16 + ], + "columns": 16, + "rows": 1, + "column_order": [ + "common", + "tender", + "olive", + "dark", + "ashen", + "moss", + "gold", + "amber", + "bluish", + "pink", + "coral", + "purple", + "indigo", + "varieg", + "lunar", + "ember" + ], + "row_order": [ + "resin_block" + ], + "note": "Raw sheet has no margins. Size: 256x16." + }, + "variants": [ + { + "key": "common", + "name": "Résine commune", + "rarity": "commun", + "h": 36, + "s": 1.0, + "v": 1.0 + }, + { + "key": "tender", + "name": "Résine tendre", + "rarity": "commun", + "h": 44, + "s": 0.88, + "v": 1.1 + }, + { + "key": "olive", + "name": "Résine olive", + "rarity": "commun", + "h": 78, + "s": 0.82, + "v": 0.96 + }, + { + "key": "dark", + "name": "Résine sombre", + "rarity": "commun", + "h": 28, + "s": 1.0, + "v": 0.72 + }, + { + "key": "ashen", + "name": "Résine cendrée", + "rarity": "commun", + "h": 34, + "s": 0.34, + "v": 0.92 + }, + { + "key": "moss", + "name": "Résine mousse", + "rarity": "commun", + "h": 112, + "s": 0.72, + "v": 0.82 + }, + { + "key": "gold", + "name": "Résine dorée", + "rarity": "peu commun", + "h": 52, + "s": 0.96, + "v": 1.12 + }, + { + "key": "amber", + "name": "Résine ambrée", + "rarity": "peu commun", + "h": 22, + "s": 1.0, + "v": 1.04 + }, + { + "key": "bluish", + "name": "Résine bleutée", + "rarity": "peu commun", + "h": 190, + "s": 0.7, + "v": 0.98 + }, + { + "key": "pink", + "name": "Résine rosée", + "rarity": "peu commun", + "h": 340, + "s": 0.62, + "v": 1.08 + }, + { + "key": "coral", + "name": "Résine corail", + "rarity": "peu commun", + "h": 10, + "s": 0.82, + "v": 1.1 + }, + { + "key": "purple", + "name": "Résine pourpre", + "rarity": "rare", + "h": 296, + "s": 0.82, + "v": 0.84 + }, + { + "key": "indigo", + "name": "Résine indigo", + "rarity": "rare", + "h": 246, + "s": 0.82, + "v": 0.84 + }, + { + "key": "varieg", + "name": "Résine panachée", + "rarity": "rare", + "h": 88, + "s": 0.88, + "v": 1.0 + }, + { + "key": "lunar", + "name": "Résine lunaire", + "rarity": "très rare", + "h": 72, + "s": 0.12, + "v": 1.22 + }, + { + "key": "ember", + "name": "Résine braise", + "rarity": "très rare", + "h": 4, + "s": 0.96, + "v": 0.92 + } + ] +} \ No newline at end of file diff --git a/Farming/canaplia/docs/resin_block_variants_spritesheet_16x16.png b/Farming/canaplia/docs/resin_block_variants_spritesheet_16x16.png new file mode 100644 index 0000000..f23bc0f Binary files /dev/null and b/Farming/canaplia/docs/resin_block_variants_spritesheet_16x16.png differ diff --git a/Farming/canaplia/gradle.properties b/Farming/canaplia/gradle.properties new file mode 100644 index 0000000..0ddc058 --- /dev/null +++ b/Farming/canaplia/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=2.0.0 +maven_group=io.github.koka +archives_base_name=canaplia + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Farming/canaplia/gradle/wrapper/gradle-wrapper.jar b/Farming/canaplia/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Farming/canaplia/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Farming/canaplia/gradle/wrapper/gradle-wrapper.properties b/Farming/canaplia/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Farming/canaplia/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Farming/canaplia/gradlew b/Farming/canaplia/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Farming/canaplia/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Farming/canaplia/gradlew.bat b/Farming/canaplia/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Farming/canaplia/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Farming/canaplia/mappings/mappings.tiny b/Farming/canaplia/mappings/mappings.tiny new file mode 100644 index 0000000..6547986 --- /dev/null +++ b/Farming/canaplia/mappings/mappings.tiny @@ -0,0 +1,179077 @@ +tiny 2 0 intermediary named +c net/minecraft/class_3720 net/minecraft/block/entity/BlastFurnaceBlockEntity + f Lnet/minecraft/class_2561; field_63037 CONTAINER_NAME_TEXT + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state +c net/minecraft/class_3721 net/minecraft/block/entity/BellBlockEntity + f J field_19155 lastRingTime + f Ljava/util/List; field_19156 hearingEntities + f I field_17095 ringTicks + f I field_31316 MAX_RINGING_TICKS + f I field_31322 MAX_BELL_HEARING_DISTANCE + f Z field_19157 resonating + f I field_19158 resonateTime + f I field_31319 MAX_RESONATING_TICKS + f Lnet/minecraft/class_2350; field_17097 lastSideHit + f Z field_17096 ringing + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3721;)V method_31659 serverTick + p 1 pos + p 2 state + p 3 blockEntity + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Ljava/util/List;)V method_20218 applyParticlesToRaiders + c Spawns {@link net.minecraft.particle.ParticleTypes#ENTITY_EFFECT} particles around raiders within 48 blocks. + p 0 world + p 1 pos + p 2 hearingEntities + m ()V method_20219 notifyMemoriesOfBell + c Makes living entities within 48 blocks remember that they heard a bell at the current world time. + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1309;)Z method_31661 method_31661 + p 1 entity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3721;)V method_31657 clientTick + p 3 blockEntity + p 0 world + p 1 pos + p 2 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3721;Lnet/minecraft/class_3721$class_5557;)V method_31658 tick + p 3 blockEntity + p 2 state + p 4 bellEffect + p 1 pos + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Ljava/util/List;)V method_20521 applyGlowToRaiders + p 1 pos + p 2 hearingEntities + p 0 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1309;)Z method_20518 isRaiderEntity + c Determines whether the given entity is in the {@link net.minecraft.registry.tag.EntityTypeTags#RAIDERS} entity type tag and within 48 blocks of the given position. + p 1 entity + p 0 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1309;)Z method_31660 method_31660 + p 1 entity + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1309;)Z method_20217 method_20217 + p 1 entity + m (Lnet/minecraft/class_1309;)V method_20520 applyGlowToEntity + c Gives the {@link net.minecraft.entity.effect.StatusEffects#GLOWING} status effect to the given entity for 3 seconds (60 ticks). + p 0 entity + m (Lnet/minecraft/class_2350;)V method_17031 activate + c Rings the bell in a given direction. + p 1 direction + m (Lnet/minecraft/class_2338;Ljava/util/List;)Z method_20523 raidersHearBell + c Determines whether at least one of the given entities would be affected by the bell.\n\n

This determines whether the bell resonates.\nFor some reason, despite affected by the bell, entities more than 32 blocks away will not count as hearing the bell. + p 1 hearingEntities + p 0 pos + m (Lnet/minecraft/class_2338;ILorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;)V method_20519 method_20519 + p 4 entity +c net/minecraft/class_3721$class_5557 net/minecraft/block/entity/BellBlockEntity$Effect + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Ljava/util/List;)V run run + p 3 hearingEntities + p 1 world + p 2 pos +c net/minecraft/class_3722 net/minecraft/block/entity/LecternBlockEntity + f I field_17390 pageCount + f Lnet/minecraft/class_3913; field_17387 propertyDelegate + f Lnet/minecraft/class_1799; field_17388 book + f I field_17389 currentPage + f Lnet/minecraft/class_1263; field_17386 inventory + m ()V method_17525 onBookRemoved + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_3218;)Lnet/minecraft/class_2168; method_17512 getCommandSource + p 2 world + p 1 player + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;)V method_17514 setBook + p 2 player + p 1 book + m ()Z method_17522 hasBook + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state + m (Lnet/minecraft/class_1799;)V method_17513 setBook + p 1 book + m ()I method_17523 getCurrentPage + m (Lnet/minecraft/class_1799;)I method_57591 getPageCount + p 0 stack + m ()I method_17524 getComparatorOutput + m ()Lnet/minecraft/class_1799; method_17520 getBook + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1799; method_17518 resolveBook + p 2 player + p 1 book + m (I)V method_17511 setCurrentPage + p 1 currentPage +c net/minecraft/class_3716 net/minecraft/block/SmokerBlock + f Lcom/mojang/serialization/MapCodec; field_46449 CODEC +c net/minecraft/class_3717 net/minecraft/block/SmithingTableBlock + f Lcom/mojang/serialization/MapCodec; field_46448 CODEC + f Lnet/minecraft/class_2561; field_22511 SCREEN_TITLE + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ILnet/minecraft/class_1661;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1703; method_24950 method_24950 + p 4 player + p 3 inventory + p 2 syncId +c net/minecraft/class_3718 net/minecraft/block/StonecutterBlock + f Lnet/minecraft/class_2754; field_17649 FACING + f Lnet/minecraft/class_2561; field_17650 TITLE + f Lcom/mojang/serialization/MapCodec; field_46464 CODEC + f Lnet/minecraft/class_265; field_16407 SHAPE + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ILnet/minecraft/class_1661;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1703; method_17896 method_17896 + p 3 playerInventory + p 2 syncId + p 4 player +c net/minecraft/class_3719 net/minecraft/block/entity/BarrelBlockEntity + f Lnet/minecraft/class_5561; field_27207 stateManager + f Lnet/minecraft/class_2371; field_16410 inventory + f Lnet/minecraft/class_2561; field_63036 CONTAINER_NAME_TEXT + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state + m ()V method_20362 tick + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3414;)V method_17764 playSound + p 2 soundEvent + p 1 state + m (Lnet/minecraft/class_2680;Z)V method_18318 setOpen + p 2 open + p 1 state +c net/minecraft/class_3713 net/minecraft/block/GrindstoneBlock + f Lnet/minecraft/class_2561; field_17364 TITLE + f Lcom/mojang/serialization/MapCodec; field_46365 CODEC + f Ljava/util/function/Function; field_55765 shapeFunction + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_16119 getShape + p 1 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ILnet/minecraft/class_1661;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1703; method_17469 method_17469 + p 2 syncId + p 4 player + p 3 inventory + m (Ljava/util/Map;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66436 method_66436 + p 1 state + m ()Ljava/util/function/Function; method_66437 createShapeFunction +c net/minecraft/class_3714 net/minecraft/data/loottable/vanilla/VanillaGiftLootTableGenerator + f Lnet/minecraft/class_7225$class_7874; comp_2790 registries + m ()Lnet/minecraft/class_7225$class_7874; comp_2790 registries + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries +c net/minecraft/class_3715 net/minecraft/block/LecternBlock + f Lnet/minecraft/class_2746; field_17366 HAS_BOOK + f I field_31113 SCHEDULED_TICK_DELAY + f Lcom/mojang/serialization/MapCodec; field_46386 CODEC + f Lnet/minecraft/class_265; field_55774 BASE_SHAPE + f Lnet/minecraft/class_2746; field_17365 POWERED + f Lnet/minecraft/class_2754; field_16404 FACING + f Ljava/util/Map; field_55775 OUTLINE_SHAPES_BY_DIRECTION + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_17471 setPowered + p 1 pos + p 2 state + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)V method_17470 openScreen + p 1 world + p 2 pos + p 3 player + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1799;)V method_17475 putBook + p 2 pos + p 3 state + p 4 stack + p 0 user + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_17474 updateNeighborAlways + p 0 world + p 1 pos + p 2 state + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Z)V method_17473 setHasBook + p 4 hasBook + p 1 world + p 0 user + p 3 state + p 2 pos + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1799;)Z method_17472 putBookIfAbsent + p 1 world + p 2 pos + p 3 state + p 4 stack + p 0 user + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Z)V method_17476 setPowered + p 0 world + p 1 pos + p 2 state + p 3 powered +c net/minecraft/class_3730 net/minecraft/entity/SpawnReason + f Lnet/minecraft/class_3730; field_16527 PATROL + f Lnet/minecraft/class_3730; field_47245 TRIAL_SPAWNER + f Lnet/minecraft/class_3730; field_16459 NATURAL + f Lnet/minecraft/class_3730; field_16468 CONVERSION + f Lnet/minecraft/class_3730; field_16469 SPAWNER + f Lnet/minecraft/class_3730; field_16466 BREEDING + f Lnet/minecraft/class_3730; field_16467 EVENT + f Lnet/minecraft/class_3730; field_16460 JOCKEY + f Lnet/minecraft/class_3730; field_16461 TRIGGERED + f Lnet/minecraft/class_3730; field_16465 SPAWN_ITEM_USE + f Lnet/minecraft/class_3730; field_16462 COMMAND + f Lnet/minecraft/class_3730; field_16463 REINFORCEMENT + f Lnet/minecraft/class_3730; field_52445 DIMENSION_TRAVEL + f Lnet/minecraft/class_3730; field_52444 LOAD + f Lnet/minecraft/class_3730; field_16472 CHUNK_GENERATION + f Lnet/minecraft/class_3730; field_16473 BUCKET + f Lnet/minecraft/class_3730; field_16470 DISPENSER + f Lnet/minecraft/class_3730; field_16471 MOB_SUMMONED + f Lnet/minecraft/class_3730; field_16474 STRUCTURE + m (Lnet/minecraft/class_3730;)Z method_54987 isTrialSpawner + p 0 reason + m (Lnet/minecraft/class_3730;)Z method_54986 isAnySpawner + p 0 reason +c net/minecraft/class_2400 net/minecraft/particle/SimpleParticleType + c A particle type representing a particle with no additional parameters.\n\n

Because no additional parameters can be provided, this particle type\nitself implements {@link ParticleEffect} and can be passed to methods\nwhich accept particle parameters. + f Lcom/mojang/serialization/MapCodec; field_25127 codec + f Lnet/minecraft/class_9139; field_48460 packetCodec + m ()Lnet/minecraft/class_2400; method_29140 getType + m (Z)V + p 1 alwaysShow +c net/minecraft/class_3732 net/minecraft/entity/mob/PatrolEntity + f Z field_57685 DEFAULT_PATROLLING + f Z field_57684 DEFAULT_PATROL_LEADER + f Z field_16477 patrolling + f Lnet/minecraft/class_2338; field_16478 patrolTarget + f Z field_16479 patrolLeader + m (Lnet/minecraft/class_2338;)V method_16216 setPatrolTarget + p 1 targetPos + m ()Z method_16915 isRaidCenterSet + m (Z)V method_22332 setPatrolling + p 1 patrolling + m ()V method_16218 setRandomPatrolTarget + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20739 canSpawn + p 0 type + p 2 spawnReason + p 1 world + p 4 random + p 3 pos + m ()Lnet/minecraft/class_2338; method_16215 getPatrolTarget + c Returns the position this patrol entity is walking to. + m ()Z method_16219 isPatrolLeader + m (Z)V method_16217 setPatrolLeader + p 1 patrolLeader + m ()Z method_16220 hasPatrolTarget + m ()Z method_16472 hasNoRaid + m ()Z method_16485 canLead +c net/minecraft/class_3732$class_3733 net/minecraft/entity/mob/PatrolEntity$PatrolGoal + f D field_16480 leaderSpeed + f J field_20701 nextPatrolSearchTime + f D field_16535 followSpeed + f Lnet/minecraft/class_3732; field_16481 entity + m ()Z method_16222 wander + m (Lnet/minecraft/class_3732;DD)V + p 4 followSpeed + p 2 leaderSpeed + p 1 entity + m ()Ljava/util/List; method_22333 findPatrolTargets +c net/minecraft/class_2401 net/minecraft/block/LeverBlock + f Lnet/minecraft/class_2746; field_11265 POWERED + f Lcom/mojang/serialization/MapCodec; field_46387 CODEC + f Ljava/util/function/Function; field_55776 shapeFunction + m (Ljava/util/Map;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66446 method_66446 + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_10309 updateNeighbors + p 2 world + p 1 state + p 3 pos + m ()Ljava/util/function/Function; method_66447 createShapeFunction + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;F)V method_10308 spawnParticles + p 0 state + p 2 pos + p 1 world + p 3 alpha + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)V method_21846 togglePower + p 4 player + p 3 pos + p 2 world + p 1 state + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_60283 playClickSound + p 3 state + p 2 pos + p 1 world + p 0 player +c net/minecraft/class_2402 net/minecraft/block/FluidFillable + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3611;)Z method_10310 canFillWithFluid + p 1 filler + p 2 world + p 3 pos + p 4 state + p 5 fluid + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3610;)Z method_10311 tryFillWithFluid + p 3 state + p 2 pos + p 4 fluidState + p 1 world +c net/minecraft/class_3727 net/minecraft/block/EntityShapeContext + f Z field_56696 placement + f Z field_16451 descending + f Lnet/minecraft/class_1799; field_17594 heldItem + f Lnet/minecraft/class_1297; field_27935 entity + f Z field_62080 shouldTreatFluidAsCube + f D field_16450 minY + m (Lnet/minecraft/class_1297;ZZ)V + p 3 placement + p 2 shouldTreatFluidAsCube + p 1 entity + m ()Lnet/minecraft/class_1297; method_32480 getEntity + m (ZZDLnet/minecraft/class_1799;ZLnet/minecraft/class_1297;)V + p 5 heldItem + p 6 shouldTreatFluidAsCube + p 7 entity + p 1 descending + p 2 placement + p 3 minY +c net/minecraft/class_3727$class_11898 net/minecraft/block/EntityShapeContext$Absent + f Lnet/minecraft/class_3726; field_62546 INSTANCE + f Lnet/minecraft/class_3726; field_62547 TREAT_FLUID_AS_CUBE + m (Z)V + p 1 shouldTreatFluidAsCube +c net/minecraft/class_3728 net/minecraft/client/util/SelectionManager + f Ljava/util/function/Supplier; field_16456 clipboardGetter + f Ljava/util/function/Predicate; field_24259 stringFilter + f I field_16452 selectionEnd + f Ljava/util/function/Consumer; field_16458 clipboardSetter + f I field_16453 selectionStart + f Ljava/util/function/Consumer; field_24258 stringSetter + f Ljava/util/function/Supplier; field_24257 stringGetter + m (IZ)V method_27555 moveCursorPastWord + p 2 shiftDown + p 1 offset + m (Lnet/minecraft/class_310;Ljava/lang/String;)V method_27557 method_27557 + p 1 clipboardString + m (Z)V method_27562 updateSelectionRange + p 1 shiftDown + m (I)V method_42576 deleteWord + p 1 offset + m (IZ)V method_27549 moveCursor + p 1 offset + p 2 shiftDown + m (I)I method_27567 clampCursorPosition + p 1 pos + m (Ljava/util/function/Supplier;Ljava/util/function/Consumer;Ljava/util/function/Supplier;Ljava/util/function/Consumer;Ljava/util/function/Predicate;)V + p 4 clipboardSetter + p 5 stringFilter + p 2 stringSetter + p 3 clipboardGetter + p 1 stringGetter + m (Lnet/minecraft/class_310;)Ljava/util/function/Supplier; method_27550 makeClipboardGetter + p 0 client + m ()I method_16203 getSelectionEnd + m (Ljava/lang/String;Ljava/lang/String;)V method_27552 insert + p 2 insertion + p 1 string + m ()I method_16201 getSelectionStart + m (I)V method_35731 setSelectionEnd + p 1 pos + m (Lnet/minecraft/class_11905;)Z method_16199 insert + p 1 input + m (Lnet/minecraft/class_11908;)Z method_16202 handleSpecialKey + p 1 input + m (Lnet/minecraft/class_310;)Ljava/util/function/Consumer; method_27561 makeClipboardSetter + p 0 client + m ()V method_35729 moveCursorToStart + m ()V method_16204 putCursorAtEnd + m (I)V method_27564 delete + p 1 offset + m (Ljava/lang/String;)Ljava/lang/String; method_16200 getSelectedText + p 1 string + m (I)V method_35727 moveCursor + p 1 offset + m (Z)V method_27558 moveCursorToEnd + p 1 shiftDown + m (Lnet/minecraft/class_310;Ljava/lang/String;)V method_27551 setClipboard + p 0 client + p 1 clipboard + m ()Z method_27568 isSelecting + m ()V method_27554 paste + m (Z)V method_27553 moveCursorToStart + p 1 shiftDown + m (ILnet/minecraft/class_3728$class_7279;)V method_42574 delete + p 2 selectionType + p 1 offset + m (IZ)V method_27560 moveCursorTo + p 2 shiftDown + p 1 position + m (IZLnet/minecraft/class_3728$class_7279;)V method_42575 moveCursor + p 3 selectionType + p 1 offset + p 2 shiftDown + m (I)V method_35730 moveCursorTo + p 1 position + m ()V method_27559 copy + m ()V method_27547 cut + m (II)V method_27548 setSelection + p 1 start + p 2 end + m (Ljava/lang/String;)V method_16197 insert + p 1 string + m (Ljava/lang/String;)Ljava/lang/String; method_16198 deleteSelectedText + p 1 string + m (I)V method_35728 moveCursorPastWord + p 1 offset + m (Lnet/minecraft/class_310;)Ljava/lang/String; method_27556 getClipboard + p 0 client + m ()V method_27563 selectAll +c net/minecraft/class_3728$class_7279 net/minecraft/client/util/SelectionManager$SelectionType + f Lnet/minecraft/class_3728$class_7279; field_38309 WORD + f Lnet/minecraft/class_3728$class_7279; field_38308 CHARACTER +c net/minecraft/class_3729 net/minecraft/client/render/entity/IllagerEntityRenderer + m (Lnet/minecraft/class_1543;Lnet/minecraft/class_10035;F)V method_62430 updateRenderState + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_575;F)V + p 3 shadowRadius + p 2 model + p 1 ctx +c net/minecraft/class_3723 net/minecraft/block/entity/SmokerBlockEntity + f Lnet/minecraft/class_2561; field_63047 CONTAINER_NAME_TEXT + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos +c net/minecraft/class_3725 net/minecraft/datafixer/fix/EntityCatSplitFix +c net/minecraft/class_3726 net/minecraft/block/ShapeContext + m (Lnet/minecraft/class_1657;)Lnet/minecraft/class_3726; method_67715 ofPlacement + p 0 player + m (Lnet/minecraft/class_3610;Lnet/minecraft/class_3610;)Z method_27866 canWalkOnFluid + p 1 stateAbove + p 2 state + m ()Z method_16193 isDescending + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_3726; method_16195 of + p 0 entity + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1941;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265; method_62878 getCollisionShape + p 3 pos + p 2 world + p 1 state + m ()Lnet/minecraft/class_3726; method_74169 absentTreatingFluidAsCube + m (Lnet/minecraft/class_1297;Z)Lnet/minecraft/class_3726; method_61893 of + p 1 shouldTreatFluidAsCube + p 0 entity + m (Lnet/minecraft/class_265;Lnet/minecraft/class_2338;Z)Z method_16192 isAbove + p 1 shape + p 2 pos + p 3 defaultValue + m ()Z method_67716 isPlacement + m ()Z method_73328 shouldTreatFluidAsCube + m ()Lnet/minecraft/class_3726; method_16194 absent + m (Lnet/minecraft/class_1792;)Z method_17785 isHolding + p 1 item + m (Lnet/minecraft/class_1297;D)Lnet/minecraft/class_3726; method_71491 ofCollision + p 0 entity + p 1 y +c net/minecraft/class_3710 net/minecraft/block/BlastFurnaceBlock + f Lcom/mojang/serialization/MapCodec; field_46279 CODEC +c net/minecraft/class_3711 net/minecraft/block/CartographyTableBlock + f Lcom/mojang/serialization/MapCodec; field_46303 CODEC + f Lnet/minecraft/class_2561; field_17355 TITLE + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ILnet/minecraft/class_1661;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1703; method_17457 method_17457 + p 4 player + p 2 syncId + p 3 inventory +c net/minecraft/class_3705 net/minecraft/screen/BlastFurnaceScreenHandler + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;Lnet/minecraft/class_3913;)V + p 4 propertyDelegate + p 3 inventory + p 2 playerInventory + p 1 syncId + m (ILnet/minecraft/class_1661;)V + p 1 syncId + p 2 playerInventory +c net/minecraft/class_3706 net/minecraft/screen/SmokerScreenHandler + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;Lnet/minecraft/class_3913;)V + p 1 syncId + p 4 propertyDelegate + p 3 inventory + p 2 playerInventory + m (ILnet/minecraft/class_1661;)V + p 1 syncId + p 2 playerInventory +c net/minecraft/class_3708 net/minecraft/block/BarrelBlock + f Lnet/minecraft/class_2746; field_18006 OPEN + f Lcom/mojang/serialization/MapCodec; field_46265 CODEC + f Lnet/minecraft/class_2754; field_16320 FACING +c net/minecraft/class_3701 net/minecraft/entity/passive/OcelotEntity + f Lnet/minecraft/class_3701$class_3703; field_16302 temptGoal + f Lnet/minecraft/class_3701$class_3702; field_16300 fleeGoal + f D field_30341 NORMAL_SPEED + f D field_30342 SPRINTING_SPEED + f D field_30340 CROUCHING_SPEED + f Lnet/minecraft/class_2940; field_16301 TRUSTING + f Z field_57613 DEFAULT_TRUSTING + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_3701; method_16104 createChild + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20666 canSpawn + p 1 world + p 0 type + p 3 pos + p 2 spawnReason + p 4 random + m (Lnet/minecraft/class_1799;)Z method_58370 method_58370 + p 0 stack + m ()Lnet/minecraft/class_5132$class_5133; method_26887 createOcelotAttributes + m ()V method_16103 updateFleeing + m ()Z method_16099 isTrusting + m (Z)V method_16102 setTrusting + p 1 trusting + m (Z)V method_16100 showEmoteParticle + p 1 positive +c net/minecraft/class_3701$class_3703 net/minecraft/entity/passive/OcelotEntity$OcelotTemptGoal + f Lnet/minecraft/class_3701; field_16304 ocelot + m (Lnet/minecraft/class_3701;DLjava/util/function/Predicate;Z)V + p 5 canBeScared + p 4 foodPredicate + p 2 speed + p 1 ocelot +c net/minecraft/class_3701$class_3702 net/minecraft/entity/passive/OcelotEntity$FleeGoal + f Lnet/minecraft/class_3701; field_16303 ocelot + m (Lnet/minecraft/class_3701;Ljava/lang/Class;FDD)V + p 1 ocelot + p 2 fleeFromType + p 3 distance + p 4 slowSpeed + p 6 fastSpeed +c net/minecraft/class_3709 net/minecraft/block/BellBlock + f Lnet/minecraft/class_265; field_17089 BELL_SHAPE + f Lnet/minecraft/class_2746; field_20648 POWERED + f Ljava/util/Map; field_55733 SINGLE_WALL_SHAPES + f Lnet/minecraft/class_265; field_17094 CEILING_SHAPE + f Lcom/mojang/serialization/MapCodec; field_46276 CODEC + f Ljava/util/Map; field_55734 FLOOR_SHAPES + f Ljava/util/Map; field_55735 DOUBLE_WALL_SHAPES + f Lnet/minecraft/class_2754; field_16324 FACING + f Lnet/minecraft/class_2754; field_16326 ATTACHMENT + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2350; method_16115 getPlacementSide + p 0 state + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_16116 getShape + p 1 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_3965;Lnet/minecraft/class_1657;Z)Z method_19285 ring + p 5 checkHitPos + p 4 player + p 3 hitResult + p 2 state + p 1 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;D)Z method_17028 isPointOnBell + p 3 y + p 2 side + p 1 state + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_17026 ring + p 1 entity + p 2 world + p 3 pos + p 4 direction + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_33600 ring + p 2 pos + p 3 direction + p 1 world +c net/minecraft/class_7288 net/minecraft/client/render/entity/feature/EmissiveFeatureRenderer + f Ljava/util/function/Function; field_61806 textureFunction + f Lnet/minecraft/class_583; field_61807 model + f Lnet/minecraft/class_7288$class_7289; field_38356 animationAlphaAdjuster + f Ljava/util/function/Function; field_54861 renderLayerFunction + f Z field_55302 ignoresInvisibility + m (Lnet/minecraft/class_3883;Ljava/util/function/Function;Lnet/minecraft/class_7288$class_7289;Lnet/minecraft/class_583;Ljava/util/function/Function;Z)V + p 6 ignoresInvisibility + p 2 textureFunction + p 3 animationAlphaAdjuster + p 4 model + p 5 renderLayerFunction + p 1 context + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10042;FF)V method_42613 render +c net/minecraft/class_7288$class_7289 net/minecraft/client/render/entity/feature/EmissiveFeatureRenderer$AnimationAlphaAdjuster + m (Lnet/minecraft/class_10042;F)F apply apply + p 2 tickProgress + p 1 state +c net/minecraft/class_7286 net/minecraft/client/render/fog/StatusEffectFogModifier + m ()Lnet/minecraft/class_6880; method_42590 getStatusEffect +c net/minecraft/class_7287 net/minecraft/client/render/entity/WardenEntityRenderer + f Lnet/minecraft/class_2960; field_38353 PULSATING_SPOTS_1_TEXTURE + f Lnet/minecraft/class_2960; field_38352 HEART_TEXTURE + f Lnet/minecraft/class_2960; field_38350 BIOLUMINESCENT_LAYER_TEXTURE + f Lnet/minecraft/class_2960; field_38354 PULSATING_SPOTS_2_TEXTURE + f Lnet/minecraft/class_2960; field_38349 TEXTURE + m ()Lnet/minecraft/class_10081; method_62573 createRenderState + m (Lnet/minecraft/class_10081;F)F method_42610 method_42610 + p 0 state + p 1 tickProgress + m (Lnet/minecraft/class_10081;F)F method_42611 method_42611 + p 0 state + p 1 tickProgress + m (Lnet/minecraft/class_10081;F)F method_42612 method_42612 + p 1 tickProgress + p 0 state + m (Lnet/minecraft/class_10081;)Lnet/minecraft/class_2960; method_72992 method_72992 + p 0 state + m (Lnet/minecraft/class_10081;)Lnet/minecraft/class_2960; method_72991 method_72991 + p 0 state + m (Lnet/minecraft/class_10081;)Lnet/minecraft/class_2960; method_72994 method_72994 + p 0 state + m (Lnet/minecraft/class_10081;)Lnet/minecraft/class_2960; method_72993 method_72993 + p 0 state + m (Lnet/minecraft/class_10081;)Lnet/minecraft/class_2960; method_72995 method_72995 + p 0 state + m (Lnet/minecraft/class_10081;)Lnet/minecraft/class_2960; method_42606 getTexture + m (Lnet/minecraft/class_7260;Lnet/minecraft/class_10081;F)V method_62572 updateRenderState + m (Lnet/minecraft/class_10081;F)F method_42607 method_42607 + p 0 state + p 1 tickProgress + m (Lnet/minecraft/class_10081;F)F method_42609 method_42609 + p 0 state + p 1 tickProgress +c net/minecraft/class_7284 net/minecraft/client/render/fog/DarknessEffectFogModifier +c net/minecraft/class_7285 net/minecraft/client/render/fog/FogData + f F field_60585 renderDistanceEnd + f F field_60583 renderDistanceStart + f F field_60584 environmentalEnd + f F field_60099 skyEnd + f F field_60100 cloudEnd + f F field_60582 environmentalStart +c net/minecraft/class_7283 net/minecraft/client/render/fog/BlindnessEffectFogModifier +c net/minecraft/class_7280 net/minecraft/client/render/entity/model/WardenEntityModel + f Lnet/minecraft/class_11509; field_60916 roaringAnimation + f Lnet/minecraft/class_11509; field_60912 attackingAnimation + f Lnet/minecraft/class_11509; field_60914 diggingAnimation + f Lnet/minecraft/class_630; field_38320 leftLeg + f Lnet/minecraft/class_630; field_38322 rightArm + f Lnet/minecraft/class_630; field_38316 body + f Lnet/minecraft/class_630; field_38449 leftRibcage + f Lnet/minecraft/class_630; field_38318 rightTendril + f Lnet/minecraft/class_11509; field_60915 emergingAnimation + f Lnet/minecraft/class_11509; field_60917 sniffingAnimation + f Lnet/minecraft/class_11509; field_60913 chargingSonicBoomAnimation + f Lnet/minecraft/class_630; field_38450 rightRibcage + f Lnet/minecraft/class_630; field_38321 leftArm + f Lnet/minecraft/class_630; field_38323 rightLeg + f Lnet/minecraft/class_630; field_38315 bone + f Lnet/minecraft/class_630; field_38317 head + f Lnet/minecraft/class_630; field_38319 leftTendril + m (F)V method_42734 setHeadAndBodyAngles + p 1 animationProgress + m ()Lnet/minecraft/class_5607; method_72870 getTendrilsTexturedModelData + m (FF)V method_42735 setHeadAngle + p 1 yaw + p 2 pitch + m (FF)V method_42737 setLimbAngles + p 1 angle + p 2 distance + m ()Lnet/minecraft/class_5607; method_42578 getTexturedModelData + m (Lnet/minecraft/class_10081;)V method_42580 setAngles + m (Lnet/minecraft/class_10081;F)V method_42736 setTendrilPitches + p 1 state + p 2 animationProgress + m ()V method_42742 setArmPivots + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5609; method_72875 method_72875 + p 0 modelData + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5609; method_72871 method_72871 + p 0 modelData + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5609; method_72873 method_72873 + p 0 modelData + m ()Lnet/minecraft/class_5607; method_72876 getPulsatingSpotsTexturedModelData + m ()Lnet/minecraft/class_5607; method_72872 getHeartTexturedModelData + m ()Lnet/minecraft/class_5607; method_72874 getBioluminescentTexturedModelData + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5609; method_72869 method_72869 + p 0 modelData +c net/minecraft/class_7281 net/minecraft/client/particle/ShriekParticle + f I field_38333 delay + f F field_38332 X_ROTATION + m (Lnet/minecraft/class_638;DDDILnet/minecraft/class_1058;)V + p 2 x + p 1 world + p 8 delay + p 9 sprite + p 4 y + p 6 z +c net/minecraft/class_7281$class_7282 net/minecraft/client/particle/ShriekParticle$Factory + f Lnet/minecraft/class_4002; field_38336 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_7290;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_42587 createParticle +c net/minecraft/class_7299 net/minecraft/entity/passive/AllayBrain + f I field_38413 LIKED_NOTEBLOCK_COOLDOWN_TICKS_EXPIRY + f I field_38940 WALK_TO_ITEM_RADIUS + f I field_40130 GIVE_INVENTORY_RUN_TIME + f F field_39113 FLEE_SPEED + f F field_38408 WALK_TO_ITEM_SPEED + m (Lnet/minecraft/class_3222;)Lnet/minecraft/class_4115; method_43092 method_43092 + p 0 player + m (Lnet/minecraft/class_1309;)Ljava/util/Optional; method_43093 getLikedPlayer + p 0 allay + m (Lnet/minecraft/class_1309;)Z method_49122 hasNearestVisibleWantedItem + p 0 entity + m (Lnet/minecraft/class_1309;)Ljava/util/Optional; method_42662 getLikedLookTarget + p 0 allay + m (Lnet/minecraft/class_1309;)Ljava/util/Optional; method_42657 getLookTarget + p 0 allay + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_2338;)V method_42659 rememberNoteBlock + p 1 pos + p 0 allay + m (Lnet/minecraft/class_4095;)V method_42663 addCoreActivities + p 0 brain + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_4095;Lnet/minecraft/class_4208;)Z method_42658 shouldGoTowardsNoteBlock + p 1 brain + p 0 allay + p 2 pos + m (Lnet/minecraft/class_7298;)V method_42661 updateActivities + p 0 allay + m (Lnet/minecraft/class_7298;)Z method_42664 method_42664 + p 0 allay + m (Lnet/minecraft/class_4095;)V method_42666 addIdleActivities + p 0 brain + m (Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_42660 create + p 0 brain +c net/minecraft/class_7297 net/minecraft/entity/ai/brain/task/WalkTowardsLookTargetTask + m (Ljava/util/function/Function;Ljava/util/function/Predicate;IFILnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47128 method_47128 + p 5 context + m (Ljava/util/function/Function;Ljava/util/function/Predicate;ILnet/minecraft/class_7906;Lnet/minecraft/class_7906;FILnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47131 method_47131 + p 9 time + p 8 entity + p 7 world + m (Ljava/util/function/Function;Ljava/util/function/Predicate;IIF)Lnet/minecraft/class_7893; method_47130 create + p 3 searchRange + p 4 speed + p 1 predicate + p 2 completionRange + p 0 lookTargetFunction + m (Ljava/util/function/Function;Ljava/util/function/Predicate;IFILnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47129 method_47129 + p 5 lookTarget + p 6 walkTarget +c net/minecraft/class_7298 net/minecraft/entity/passive/AllayEntity + f Lcom/google/common/collect/ImmutableList; field_38398 SENSORS + f Lnet/minecraft/class_8514$class_5719; field_39468 vibrationCallback + f Lnet/minecraft/class_2940; field_39466 DANCING + f Lnet/minecraft/class_5715; field_39469 jukeboxEventHandler + f F field_39474 lastSpinningAnimationTicks + f F field_39472 danceTicks + f F field_38936 lastItemHoldAnimationTicks + f Lcom/google/common/collect/ImmutableList; field_38403 MEMORY_MODULES + f Lnet/minecraft/class_1277; field_38402 inventory + f Lnet/minecraft/class_2940; field_39467 CAN_DUPLICATE + f Lnet/minecraft/class_5715; field_38401 gameEventHandler + f Lnet/minecraft/class_2382; field_38399 ITEM_PICKUP_RANGE_EXPANDER + f I field_39465 DUPLICATION_COOLDOWN + f F field_39473 spinningAnimationTicks + f Lnet/minecraft/class_8514$class_8515; field_44596 vibrationListenerData + f Lnet/minecraft/class_2338; field_39470 jukeboxPos + f Lcom/google/common/collect/ImmutableList; field_38937 THROW_SOUND_PITCHES + f J field_39471 duplicationCooldown + f F field_38935 itemHoldAnimationTicks + f I field_57621 DEFAULT_DUPLICATION_COOLDOWN + m (Lnet/minecraft/class_2338;Z)V method_44358 updateJukeboxPos + p 1 jukeboxPos + p 2 playing + m ()V method_44608 addHeartParticle + m ()Z method_43396 isHoldingItem + m ()Z method_44359 isDancing + m (F)F method_43397 getItemHoldAnimationTicks + p 1 tickProgress + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_45341 areDifferentPotions + p 1 stack + p 2 stack2 + m (Z)V method_44367 setDancing + p 1 dancing + m ()Lnet/minecraft/class_5132$class_5133; method_42655 createAllayAttributes + m ()Z method_44361 shouldStopDancing + m ()V method_44363 duplicate + m ()Z method_44365 canDuplicate + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_64454 method_64454 + p 2 stack + m (J)V method_67660 setDuplicationCooldown + p 1 duplicationCooldown + m ()V method_44364 startDuplicationCooldown + m ()Z method_44360 isSpinning + m (F)F method_44368 getSpinningAnimationTicks + p 1 tickProgress + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V method_44357 decrementStackUnlessInCreative + p 1 player + p 2 stack + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_45340 areItemsEqual + p 1 stack + p 2 stack2 + m (Lnet/minecraft/class_1297;)Z method_65349 isLikedBy + p 1 player + m ()V method_44362 tickDuplicationCooldown + m ()Z method_42654 isItemPickupCoolingDown +c net/minecraft/class_7298$class_7524 net/minecraft/entity/passive/AllayEntity$VibrationCallback + f I field_43190 RANGE + f Lnet/minecraft/class_5716; field_44597 positionSource +c net/minecraft/class_7298$class_7525 net/minecraft/entity/passive/AllayEntity$JukeboxEventListener + f Lnet/minecraft/class_5716; field_39478 positionSource + f I field_39479 range + m (Lnet/minecraft/class_7298;Lnet/minecraft/class_5716;I)V + p 2 positionSource + p 3 range +c net/minecraft/class_7296 net/minecraft/entity/ai/brain/task/GiveInventoryToLookTargetTask + f I field_38387 COMPLETION_RANGE + f Ljava/util/function/Function; field_38389 lookTargetFunction + f I field_38388 ITEM_PICKUP_COOLDOWN_TICKS + f F field_38390 speed + m (Lnet/minecraft/class_4115;Lnet/minecraft/class_1799;Lnet/minecraft/class_3222;)V method_43079 triggerCriterion + p 2 stack + p 3 player + p 1 target + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;Lnet/minecraft/class_243;)V method_43393 playThrowSound + p 1 stack + p 2 target + p 0 entity + m (Ljava/util/function/Function;FI)V + p 3 runTime + p 2 speed + p 1 lookTargetFunction + m (Lnet/minecraft/class_1309;)Z method_42649 hasItemAndTarget + p 1 entity + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_4115;)V method_42650 method_42650 + p 2 target + m (Lnet/minecraft/class_4115;)Lnet/minecraft/class_243; method_42651 offsetTarget + p 0 target + m (Lnet/minecraft/class_4115;Lnet/minecraft/class_1799;Lnet/minecraft/class_3222;)V method_43080 method_43080 + p 3 player +c net/minecraft/class_7293 net/minecraft/datafixer/fix/GameEventRenamesFix + f Lcom/mojang/datafixers/DSL$TypeReference; field_38383 typeReference + f Ljava/util/function/UnaryOperator; field_43178 renamer + f Ljava/lang/String; field_38381 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/util/function/UnaryOperator;)V + p 3 typeReference + p 4 renamer + p 1 outputSchema + p 2 name +c net/minecraft/class_7294 net/minecraft/datafixer/schema/Schema3083 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_7290 net/minecraft/particle/ShriekParticleEffect + f I field_38360 delay + f Lnet/minecraft/class_9139; field_48459 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_38358 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42617 method_42617 + p 0 instance + m (I)V + p 1 delay + m (Lnet/minecraft/class_7290;)Ljava/lang/Integer; method_56186 method_56186 + p 0 effect + m ()I method_42619 getDelay + m (Lnet/minecraft/class_7290;)Ljava/lang/Integer; method_42618 method_42618 + p 0 particleEffect +c net/minecraft/class_8597 net/minecraft/network/packet/s2c/login/UnknownLoginQueryRequestPayload + f Lnet/minecraft/class_2960; comp_1571 id + m (Lnet/minecraft/class_2960;)V + p 1 id +c net/minecraft/class_8598 net/minecraft/unused/packageinfo/PackageInfo8598 +c net/minecraft/class_8595 net/minecraft/network/packet/s2c/login/LoginQueryRequestPayload + m (Lnet/minecraft/class_2540;)V method_52296 write + p 1 buf + m ()Lnet/minecraft/class_2960; comp_1571 id +c net/minecraft/class_7264 net/minecraft/entity/vehicle/ChestBoatEntity +c net/minecraft/class_8596 net/minecraft/network/packet/c2s/login/UnknownLoginQueryResponsePayload + f Lnet/minecraft/class_8596; field_44980 INSTANCE +c net/minecraft/class_7265 net/minecraft/entity/vehicle/VehicleInventory + m (Lnet/minecraft/class_11372;)V method_42288 writeInventoryToData + p 1 view + m (Lnet/minecraft/class_1657;)Lnet/minecraft/class_1269; method_42284 open + p 1 player + m (Lnet/minecraft/class_5321;)V method_42275 setLootTable + p 1 lootTable + m (J)V method_42274 setLootTableSeed + p 1 lootTableSeed + m ()Lnet/minecraft/class_2371; method_42278 getInventory + m (Lnet/minecraft/class_11368;)V method_42285 readInventoryFromData + p 1 view + m ()Lnet/minecraft/class_238; method_5829 getBoundingBox + m (Lnet/minecraft/class_1657;)V method_42291 generateInventoryLoot + p 1 player + m ()J method_42277 getLootTableSeed + m (Lnet/minecraft/class_1657;)Z method_42294 canPlayerAccess + p 1 player + m ()Lnet/minecraft/class_5321; method_42276 getLootTable + m ()Lnet/minecraft/class_243; method_73189 getEntityPos + m ()Lnet/minecraft/class_1937; method_73183 getEntityWorld + m (I)Lnet/minecraft/class_1799; method_42289 removeInventoryStack + p 1 slot + m (Lnet/minecraft/class_1282;Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)V method_42283 onBroken + p 1 source + p 3 vehicle + p 2 world + m ()Z method_31481 isRemoved + m ()Z method_42295 isInventoryEmpty + m (II)Lnet/minecraft/class_1799; method_42286 removeInventoryStack + p 2 amount + p 1 slot + m (I)Lnet/minecraft/class_5630; method_42292 getInventoryStackReference + p 1 slot + m ()V method_42293 clearInventory + m ()V method_42273 resetInventory + m (ILnet/minecraft/class_1799;)V method_42287 setInventoryStack + p 2 stack + p 1 slot + m (I)Lnet/minecraft/class_1799; method_42290 getInventoryStack + p 1 slot +c net/minecraft/class_8593 net/minecraft/network/packet/c2s/login/EnterConfigurationC2SPacket + f Lnet/minecraft/class_8593; field_48252 INSTANCE + f Lnet/minecraft/class_9139; field_48253 CODEC + m (Lnet/minecraft/class_2911;)V method_52294 apply +c net/minecraft/class_7262 net/minecraft/block/entity/SculkShriekerWarningManager + f I field_38187 WARN_DECREASE_COOLDOWN + f I field_38195 warningLevel + f I field_38188 WARN_INCREASE_COOLDOWN + f I field_38186 WARN_WARDEN_RANGE + f I field_38196 cooldownTicks + f I field_38184 MAX_WARNING_LEVEL + f I field_38194 ticksSinceLastWarning + f D field_38738 WARN_RANGE + f Lcom/mojang/serialization/Codec; field_38183 CODEC + m (I)V method_42248 setWarningLevel + p 1 warningLevel + m (Lnet/minecraft/class_3222;)Z method_44001 method_44001 + p 0 nearbyPlayer + m ()V method_42258 reset + m (Lnet/minecraft/class_243;Lnet/minecraft/class_3222;)Z method_42255 method_42255 + p 1 player + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_3222;)Ljava/util/OptionalInt; method_42250 warnNearbyPlayers + p 2 player + p 1 pos + p 0 world + m (III)V + p 3 cooldownTicks + p 1 ticksSinceLastWarning + p 2 warningLevel + m ()Z method_44003 isInCooldown + m ()V method_42264 decreaseWarningLevel + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_42259 isWardenNearby + p 1 pos + p 0 world + m (Lnet/minecraft/class_7262;)V method_42252 copy + p 1 other + m (Lnet/minecraft/class_7262;)Ljava/lang/Integer; method_42269 method_42269 + p 0 manager + m (Lnet/minecraft/class_3222;)Ljava/util/stream/Stream; method_45380 method_45380 + p 0 playerx + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42254 method_42254 + p 0 instance + m (Lnet/minecraft/class_7262;Lnet/minecraft/class_3222;)V method_44002 method_44002 + p 1 nearbyPlayer + m (Lnet/minecraft/class_7262;)Ljava/lang/Integer; method_42263 method_42263 + p 0 manager + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Ljava/util/List; method_42265 getPlayersInRange + p 1 pos + p 0 world + m ()I method_42267 getWarningLevel + m ()V method_42247 tick + m ()V method_42261 increaseWarningLevel + m (Lnet/minecraft/class_7262;Lnet/minecraft/class_7262;)V method_45381 method_45381 + p 1 warningManager + m (Lnet/minecraft/class_7262;)Ljava/lang/Integer; method_42266 method_42266 + p 0 manager +c net/minecraft/class_7263 net/minecraft/unused/packageinfo/PackageInfo7263 +c net/minecraft/class_8594 net/minecraft/network/packet/c2s/login/LoginQueryResponsePayload + m (Lnet/minecraft/class_2540;)V method_52295 write + p 1 buf +c net/minecraft/class_8591 net/minecraft/network/packet/c2s/play/AcknowledgeReconfigurationC2SPacket + f Lnet/minecraft/class_9139; field_48187 CODEC + f Lnet/minecraft/class_8591; field_48186 INSTANCE + m (Lnet/minecraft/class_2792;)V method_52282 apply +c net/minecraft/class_7260 net/minecraft/entity/mob/WardenEntity + f I field_38155 ANGRINESS_AMOUNT + f I field_38143 MAX_HEALTH + f I field_38165 lastHeartbeatCooldown + f I field_38163 lastTendrilAlpha + f Lnet/minecraft/class_5715; field_38166 gameEventHandler + f Lnet/minecraft/class_7094; field_38136 diggingAnimationState + f Lnet/minecraft/class_7094; field_38168 roaringAnimationState + f F field_38145 KNOCKBACK_RESISTANCE + f I field_38147 ATTACK_DAMAGE + f Lnet/minecraft/class_2940; field_38148 ANGER + f I field_38164 heartbeatCooldown + f I field_38162 tendrilAlpha + f I field_52503 FOLLOW_RANGE + f I field_38150 DARKNESS_EFFECT_DURATION + f Lnet/minecraft/class_7094; field_38137 attackingAnimationState + f Lnet/minecraft/class_7254; field_38141 angerManager + f Lnet/minecraft/class_7094; field_38169 sniffingAnimationState + f Lnet/minecraft/class_7094; field_38135 emergingAnimationState + f Lnet/minecraft/class_8514$class_5719; field_44598 vibrationCallback + f Lnet/minecraft/class_7094; field_38859 chargingSonicBoomAnimationState + f F field_38146 ATTACK_KNOCKBACK + f F field_38144 MOVEMENT_SPEED + f Lnet/minecraft/class_8514$class_8515; field_44599 vibrationListenerData + m ()Ljava/util/Optional; method_42215 getPrimeSuspect + m ()I method_42222 getAnger + m ()Z method_43113 isDiggingOrEmerging + m (Lnet/minecraft/class_1297;IZ)V method_42212 increaseAngerAt + p 3 listening + p 2 amount + p 1 entity + m ()Lnet/minecraft/class_7254; method_42216 getAngerManager + m (Lnet/minecraft/class_1297;)V method_42211 removeSuspect + p 1 entity + m (F)F method_42202 getHeartAlpha + p 1 tickProgress + m (Lnet/minecraft/class_1297;)V method_42213 increaseAngerAt + p 1 entity + m ()V method_42219 playListeningSound + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_1297;I)V method_42204 addDarknessToClosePlayers + p 3 range + p 0 world + p 2 entity + p 1 pos + m ()I method_43999 getAngerAtTarget + m (Lnet/minecraft/class_7094;)V method_42205 addDigParticles + p 1 animationState + m ()V method_42217 updateAnger + m ()Lnet/minecraft/class_7253; method_42214 getAngriness + m (Lnet/minecraft/class_1309;)V method_43274 updateAttackTarget + p 1 target + m ()Lnet/minecraft/class_5132$class_5133; method_42221 addAttributes + m (F)F method_42223 getTendrilAlpha + p 1 tickProgress + m ()I method_42218 getHeartRate + m (Lnet/minecraft/class_1297;)Z method_42206 isValidTarget + p 1 entity +c net/minecraft/class_7260$class_8507 net/minecraft/entity/mob/WardenEntity$VibrationCallback + f I field_44601 RANGE + f Lnet/minecraft/class_5716; field_44602 positionSource +c net/minecraft/class_8592 net/minecraft/network/packet/c2s/handshake/ConnectionIntent + f I field_44977 LOGIN_ID + f I field_44976 STATUS_ID + f I field_48228 TRANSFER_ID + f Lnet/minecraft/class_8592; field_44975 LOGIN + f Lnet/minecraft/class_8592; field_44974 STATUS + f Lnet/minecraft/class_8592; field_48227 TRANSFER + m ()I method_52283 getId + m (I)Lnet/minecraft/class_8592; method_52284 byId + p 0 id +c net/minecraft/class_7261 net/minecraft/entity/mob/WardenBrain + f I field_38179 DIG_DURATION + f F field_38175 STROLL_SPEED + f I field_38173 DIG_COOLDOWN + f I field_38171 EMERGE_DURATION + f Ljava/util/List; field_38417 MEMORY_MODULES + f F field_38177 RANGED_APPROACH_SPEED + f F field_38176 CELEBRATE_TIME + f I field_38178 MELEE_ATTACK_INTERVAL + f I field_38172 ROAR_DURATION + f I field_38180 SNIFF_DURATION + f Ljava/util/List; field_38416 SENSORS + f Lnet/minecraft/class_7893; field_38182 RESET_DIG_COOLDOWN_TASK + m (Lnet/minecraft/class_7260;Lnet/minecraft/class_2338;)V method_42231 lookAtDisturbance + p 0 warden + p 1 pos + m (Lnet/minecraft/class_7260;Lnet/minecraft/class_1309;)Z method_42241 method_42241 + p 1 entity + m (Lnet/minecraft/class_7260;Lnet/minecraft/class_1309;)Z method_42229 isTargeting + p 1 entity + p 0 warden + m (Lnet/minecraft/class_1309;)V method_42225 resetDigCooldown + p 0 warden + m (Lnet/minecraft/class_7260;)V method_42228 updateActivities + p 0 warden + m (Lnet/minecraft/class_7260;Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/class_4095; method_42230 create + p 0 warden + p 1 dynamic + m (Lnet/minecraft/class_4095;)V method_42242 addInvestigateActivities + p 0 brain + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47303 method_47303 + p 1 digCooldown + m (Lnet/minecraft/class_4095;)V method_42240 addIdleActivities + p 0 brain + m (Lnet/minecraft/class_7260;Lnet/minecraft/class_4095;)V method_42236 addFightActivities + p 1 brain + p 0 warden + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47302 method_47302 + p 0 context + m (Lnet/minecraft/class_4095;)V method_42244 addSniffActivities + p 0 brain + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_42232 method_42232 + p 1 entityx + m (Lnet/minecraft/class_7260;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Z method_42243 method_42243 + p 2 target + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;Lnet/minecraft/class_1309;)V method_42235 removeDeadSuspect + p 0 world + p 1 warden + p 2 target + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)Z method_47304 method_47304 + p 3 entity + p 4 time + p 2 world + m (Lnet/minecraft/class_4095;)V method_42227 addCoreActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_42237 addDigActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_42245 addRoarActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_42233 addEmergeActivities + p 0 brain +c net/minecraft/class_8599 net/minecraft/network/QueryableServer + m ()Ljava/lang/String; method_3827 getVersion + m ()I method_3802 getMaxPlayerCount + m ()Ljava/lang/String; method_3818 getServerMotd + m ()I method_3788 getCurrentPlayerCount +c net/minecraft/class_7268 net/minecraft/block/SculkShriekerBlock + f Lnet/minecraft/class_2746; field_38422 CAN_SUMMON + f Lcom/mojang/serialization/MapCodec; field_46436 CODEC + f D field_38232 TOP + f Lnet/minecraft/class_2746; field_38230 WATERLOGGED + f Lnet/minecraft/class_2746; field_38229 SHRIEKING + f Lnet/minecraft/class_265; field_38231 SHAPE + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7133;)V method_43132 method_43132 + p 1 blockEntity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_3222;Lnet/minecraft/class_7133;)V method_43134 method_43134 + p 2 blockEntity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_7133;)V method_42317 method_42317 + p 1 pos + p 2 statex + p 0 worldx + p 3 blockEntity +c net/minecraft/class_7269 net/minecraft/world/event/listener/Vibration + f Lcom/mojang/serialization/Codec; field_38245 CODEC + f Lnet/minecraft/class_243; comp_659 pos + f Ljava/util/UUID; comp_660 uuid + f F comp_658 distance + f Ljava/util/UUID; comp_681 projectileOwnerUuid + f Lnet/minecraft/class_6880; comp_657 gameEvent + f Lnet/minecraft/class_1297; comp_661 entity + m (Lnet/minecraft/class_1297;)Ljava/util/UUID; method_42684 getOwnerUuid + p 0 entity + m (Lnet/minecraft/class_6880;FLnet/minecraft/class_243;Lnet/minecraft/class_1297;)V + p 3 pos + p 4 entity + p 1 gameEvent + p 2 distance + m (Lnet/minecraft/class_6880;FLnet/minecraft/class_243;Ljava/util/UUID;Ljava/util/UUID;)V + p 4 uuid + p 5 projectileOwnerUuid + p 2 distance + p 3 pos + p 1 gameEvent + m (Lnet/minecraft/class_7269;)Ljava/util/Optional; method_42689 method_42689 + p 0 vibration + m (Lnet/minecraft/class_3218;)Ljava/util/Optional; method_42348 getEntity + p 1 world + m (Lnet/minecraft/class_7269;)Ljava/util/Optional; method_42686 method_42686 + p 0 vibration + m (Lnet/minecraft/class_3218;)Ljava/util/Optional; method_42687 getOwner + p 1 world + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1676; method_42688 method_42688 + p 0 entity + m (Lnet/minecraft/class_1297;)Z method_42691 method_42691 + p 0 entity + m (Lnet/minecraft/class_6880;Ljava/lang/Float;Lnet/minecraft/class_243;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/class_7269; method_42685 method_42685 + p 4 projectileOwnerUuid + p 2 pos + p 3 uuid + p 0 event + p 1 distance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42349 method_42349 + p 0 instance + m ()Ljava/util/UUID; comp_681 projectileOwnerUuid + m ()F comp_658 distance + m ()Lnet/minecraft/class_6880; comp_657 gameEvent + m ()Ljava/util/UUID; comp_660 uuid + m ()Lnet/minecraft/class_1297; comp_661 entity + m ()Lnet/minecraft/class_243; comp_659 pos + m (Lnet/minecraft/class_6880;FLnet/minecraft/class_243;Ljava/util/UUID;Ljava/util/UUID;Lnet/minecraft/class_1297;)V + p 1 gameEvent + p 2 distance + p 3 pos + p 4 uuid + p 5 projectileOwnerUuid + p 6 entity +c net/minecraft/class_8590 net/minecraft/network/packet/c2s/play/AcknowledgeChunksC2SPacket + f Lnet/minecraft/class_9139; field_48183 CODEC + f F comp_1730 desiredChunksPerTick + m (Lnet/minecraft/class_2540;)V method_55967 write + p 1 buf + m (Lnet/minecraft/class_2792;)V method_52281 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()F comp_1730 desiredChunksPerTick + m (F)V + p 1 desiredChunksPerTick +c net/minecraft/class_7278 net/minecraft/client/render/entity/animation/WardenAnimations + f Lnet/minecraft/class_7184; field_38879 CHARGING_SONIC_BOOM + f Lnet/minecraft/class_7184; field_38303 DIGGING + f Lnet/minecraft/class_7184; field_38302 EMERGING + f Lnet/minecraft/class_7184; field_38305 SNIFFING + f Lnet/minecraft/class_7184; field_38304 ROARING + f Lnet/minecraft/class_7184; field_38306 ATTACKING +c com/mojang/blaze3d/pipeline/RenderPipeline com/mojang/blaze3d/pipeline/RenderPipeline + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_10149;Ljava/util/List;Ljava/util/List;Ljava/util/Optional;Lcom/mojang/blaze3d/platform/DepthTestFunction;Lcom/mojang/blaze3d/platform/PolygonMode;ZZZZLcom/mojang/blaze3d/platform/LogicOp;Lcom/mojang/blaze3d/vertex/VertexFormat;Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596;FFI)V + p 10 cull + p 9 polygonMode + p 12 writeAlpha + p 11 writeColor + p 6 uniforms + p 5 samplers + p 8 depthTestFunction + p 7 blendFunction + p 2 vertexShader + p 1 location + p 4 shaderDefines + p 3 fragmentShader + p 18 depthBiasConstant + p 17 depthBiasScaleFactor + p 19 sortKey + p 14 colorLogic + p 13 writeDepth + p 16 vertexFormatMode + p 15 vertexFormat + m ([Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; builder builder + p 0 snippets +c com/mojang/blaze3d/pipeline/RenderPipeline$Builder com/mojang/blaze3d/pipeline/RenderPipeline$Builder + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet;)V withSnippet withSnippet + p 1 snippet + m (Lnet/minecraft/class_2960;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withFragmentShader withFragmentShader + p 1 fragmentShader + m (Lnet/minecraft/class_2960;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withLocation withLocation + p 1 location + m (FF)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withDepthBias withDepthBias + p 1 depthBiasScaleFactor + p 2 depthBiasConstant + m (Ljava/lang/String;I)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withShaderDefine withShaderDefine + p 2 value + p 1 name + m (Lcom/mojang/blaze3d/platform/PolygonMode;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withPolygonMode withPolygonMode + p 1 polygonMode + m (Ljava/lang/String;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withFragmentShader withFragmentShader + p 1 fragmentShader + m (Ljava/lang/String;F)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withShaderDefine withShaderDefine + p 1 name + p 2 value + m (Ljava/lang/String;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withLocation withLocation + p 1 location + m (Ljava/util/List;)V lambda$withSnippet$1 lambda$withSnippet$1 + p 1 uniforms + m (Ljava/util/List;)V lambda$withSnippet$0 lambda$withSnippet$0 + p 1 samplers + m (Lnet/minecraft/class_2960;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withVertexShader withVertexShader + p 1 vertexShader + m (Z)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withCull withCull + p 1 cull + m (Ljava/lang/String;Lnet/minecraft/class_10789;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withUniform withUniform + p 2 type + p 1 name + m (Lcom/mojang/blaze3d/pipeline/BlendFunction;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withBlend withBlend + p 1 blendFunction + m (ZZ)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withColorWrite withColorWrite + p 2 writeAlpha + p 1 writeColor + m (Ljava/lang/String;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withSampler withSampler + p 1 sampler + m (Lcom/mojang/blaze3d/platform/LogicOp;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withColorLogic withColorLogic + p 1 colorLogic + m (Z)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withDepthWrite withDepthWrite + p 1 writeDepth + m (Z)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withColorWrite withColorWrite + p 1 writeColor + m (Lcom/mojang/blaze3d/platform/DepthTestFunction;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withDepthTestFunction withDepthTestFunction + p 1 depthTestFunction + m (Ljava/lang/String;Lnet/minecraft/class_10789;Lcom/mojang/blaze3d/textures/TextureFormat;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withUniform withUniform + p 3 format + p 1 name + p 2 type + m (Ljava/lang/String;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withShaderDefine withShaderDefine + p 1 flag + m (Lcom/mojang/blaze3d/vertex/VertexFormat;Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596;)Lcom/mojang/blaze3d/pipeline/RenderPipeline$Builder; withVertexFormat withVertexFormat + p 1 vertexFormat + p 2 vertexFormatMode +c com/mojang/blaze3d/pipeline/RenderPipeline$UniformDescription com/mojang/blaze3d/pipeline/RenderPipeline$UniformDescription + m (Ljava/lang/String;Lcom/mojang/blaze3d/textures/TextureFormat;)V + p 1 name + p 2 format + m (Ljava/lang/String;Lnet/minecraft/class_10789;)V + p 2 type + p 1 name + m (Ljava/lang/String;Lnet/minecraft/class_10789;Lcom/mojang/blaze3d/textures/TextureFormat;)V + p 1 name + p 2 type + p 3 textureFormat +c net/minecraft/class_2470 net/minecraft/util/BlockRotation + f Ljava/util/function/IntFunction; field_55986 INDEX_MAPPER + f I field_55988 index + f Lnet/minecraft/class_9139; field_55987 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_39313 CODEC + f Lcom/mojang/serialization/Codec; field_56670 ENUM_NAME_CODEC + f Ljava/lang/String; field_39314 id + f Lnet/minecraft/class_4990; field_23264 directionTransformation + f Lnet/minecraft/class_2470; field_11464 CLOCKWISE_180 + f Lnet/minecraft/class_2470; field_11465 COUNTERCLOCKWISE_90 + f Lnet/minecraft/class_2470; field_11467 NONE + f Lnet/minecraft/class_2470; field_11463 CLOCKWISE_90 + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_2470; method_16548 random + p 0 random + m ()Lnet/minecraft/class_4990; method_26383 getDirectionTransformation + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_2350; method_10503 rotate + p 1 direction + m (II)I method_10502 rotate + p 1 rotation + p 2 fullTurn + m (Ljava/lang/String;IILjava/lang/String;Lnet/minecraft/class_4990;)V + p 3 index + p 5 directionTransformation + p 4 id + m (Lnet/minecraft/class_5819;)Ljava/util/List; method_16547 randomRotationOrder + p 0 random + m (Lnet/minecraft/class_2470;)Lnet/minecraft/class_2470; method_10501 rotate + p 1 rotation + m ()I method_66710 getIndex +c net/minecraft/class_2471 net/minecraft/data/tag/vanilla/VanillaItemTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 2 registriesFuture + p 1 output + m (Lnet/minecraft/class_1792;)Lnet/minecraft/class_5321; method_71563 method_71563 + p 0 value + m (Lnet/minecraft/class_6880$class_6883;)Z method_65950 method_65950 + p 0 entry + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_2960; method_71564 method_71564 + p 0 entry +c net/minecraft/class_2471$class_11390 net/minecraft/data/tag/vanilla/VanillaItemTagProvider$ItemTagBuilder + f Lnet/minecraft/class_11389; field_60488 parent + m (Lnet/minecraft/class_11389;)V + p 1 parent + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_6862; method_71567 getItemTag + p 0 tag + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_11389; method_71565 add + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_11389; method_71566 addOptional +c net/minecraft/class_1140 net/minecraft/client/sound/SoundSystem + f J field_34967 lastSoundDeviceCheckTime + f Z field_5563 started + f Lcom/google/common/collect/Multimap; field_18951 sounds + f Lnet/minecraft/class_4238; field_18948 taskQueue + f Lnet/minecraft/class_315; field_5555 options + f Lnet/minecraft/class_4225; field_18945 soundEngine + f Lorg/slf4j/Logger; field_5559 LOGGER + f F field_33021 MIN_PITCH + f Ljava/lang/String; field_34827 OPENAL_SOFT_ON + f Lnet/minecraft/class_4227; field_18946 listener + f Ljava/util/List; field_5558 listeners + f Ljava/lang/String; field_33020 FOR_THE_DEBUG + f Ljava/util/List; field_5557 tickingSounds + f F field_33024 MAX_VOLUME + f Ljava/util/Map; field_18950 sources + f Lit/unimi/dsi/fastutil/objects/Object2FloatMap; field_64473 volumes + f Lorg/slf4j/Marker; field_5553 MARKER + f Lnet/minecraft/class_4237; field_18947 soundLoader + f Lnet/minecraft/class_4235; field_18949 channel + f I field_34828 OPENAL_SOFT_ON_LENGTH + f F field_33023 MIN_VOLUME + f Ljava/util/Set; field_5561 UNKNOWN_SOUNDS + f Ljava/util/List; field_20532 soundsToPlayNextTick + f I field_5550 ticks + f J field_34966 MIN_TIME_INTERVAL_TO_RELOAD_SOUNDS + f Ljava/util/concurrent/atomic/AtomicReference; field_35083 deviceChangeStatus + f F field_33022 MAX_PITCH + f Ljava/util/Map; field_5566 soundStartTicks + f Ljava/util/Map; field_18952 soundEndTicks + f Ljava/util/List; field_5551 preloadedSounds + f Lnet/minecraft/class_1144; field_5552 soundManager + m (Ljava/util/stream/Stream;)V method_19759 method_19759 + p 0 sources + m (Lnet/minecraft/class_1113;)V method_19753 stop + p 1 sound + m (Lnet/minecraft/class_1113;)F method_4849 getAdjustedPitch + p 1 sound + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3419;)V method_4838 stopSounds + p 1 id + p 2 category + m (Lnet/minecraft/class_4235$class_4236;Lnet/minecraft/class_4234;)V method_19758 method_19758 + p 1 stream + m (Lnet/minecraft/class_1113;)Z method_24880 shouldRepeatInstantly + p 0 sound + m (Lnet/minecraft/class_1113;)F method_4853 getAdjustedVolume + p 1 sound + m (Lnet/minecraft/class_4184;)V method_4840 updateListenerPosition + p 1 camera + m ()Lnet/minecraft/class_9054; method_55592 getListenerTransform + m ()V method_4856 stop + m ()V method_19762 resumeAll + m (Lnet/minecraft/class_4234;Lnet/minecraft/class_4224;)V method_19755 method_19755 + p 1 source + m (FFLnet/minecraft/class_1113$class_1114;FZZLnet/minecraft/class_243;ZLnet/minecraft/class_4224;)V method_19749 method_19749 + p 8 source + m (Lnet/minecraft/class_4235$class_4236;Lnet/minecraft/class_4231;)V method_19757 method_19757 + p 1 sound + m (FLnet/minecraft/class_3419;)F method_43222 getAdjustedVolume + p 1 volume + p 2 category + m (FLnet/minecraft/class_4224;)V method_76565 method_76565 + p 1 source + m (Lit/unimi/dsi/fastutil/objects/Object2FloatOpenHashMap;)V method_76568 method_76568 + p 0 map + m (Lnet/minecraft/class_3419;F)V method_4844 setVolume + p 2 volume + p 1 category + m (Lnet/minecraft/class_1145;)V method_4847 unregisterListener + p 1 listener + m ()V method_4837 reloadSounds + m (Lnet/minecraft/class_1113;)Z method_24879 shouldDelayRepeat + p 0 sound + m (Lnet/minecraft/class_1145;)V method_4855 registerListener + p 1 listener + m ()V method_4857 tick + m ([Lnet/minecraft/class_3419;)V method_71937 pauseAllExcept + p 1 categories + m ()Z method_38744 shouldReloadSounds + m (Lnet/minecraft/class_1113;I)V method_4852 play + p 2 delay + p 1 sound + m ()V method_71938 tickPaused + m ()Ljava/lang/String; method_20304 getDebugString + m ()Ljava/util/List; method_38564 getSoundDevices + m (Lnet/minecraft/class_3419;Lnet/minecraft/class_1113;Lnet/minecraft/class_4235$class_4236;)V method_76567 method_76567 + p 2 sound + p 3 manager + m (Z)V method_20185 tick + p 1 paused + m (Lnet/minecraft/class_4231;Lnet/minecraft/class_4224;)V method_19752 method_19752 + p 1 source + m (Lnet/minecraft/class_1113;)Z method_24878 hasRepeatDelay + p 0 sound + m ()V method_4846 start + m (Lnet/minecraft/class_1113;)Z method_4835 isPlaying + p 1 sound + m (Lnet/minecraft/class_1111;)V method_4851 addPreloadedSound + p 1 sound + m (Lnet/minecraft/class_3419;)V method_76566 refreshSoundVolumes + p 1 category + m ()V method_54648 stopAbruptly + m (FFLnet/minecraft/class_243;Lnet/minecraft/class_4224;)V method_19748 method_19748 + p 3 source + m (Lnet/minecraft/class_1144;Lnet/minecraft/class_315;Lnet/minecraft/class_5912;)V + p 1 soundManager + p 2 options + p 3 resourceFactory + m (Lnet/minecraft/class_1113;)Lnet/minecraft/class_1140$class_11518; method_4854 play + p 1 sound + m (Lnet/minecraft/class_1117;)V method_22139 playNextTick + p 1 sound + m ()V method_4843 stopAll +c net/minecraft/class_1140$class_11518 net/minecraft/client/sound/SoundSystem$PlayResult + f Lnet/minecraft/class_1140$class_11518; field_60956 NOT_STARTED + f Lnet/minecraft/class_1140$class_11518; field_60955 STARTED_SILENTLY + f Lnet/minecraft/class_1140$class_11518; field_60954 STARTED +c net/minecraft/class_1140$class_6665 net/minecraft/client/sound/SoundSystem$DeviceChangeStatus + f Lnet/minecraft/class_1140$class_6665; field_35086 NO_CHANGE + f Lnet/minecraft/class_1140$class_6665; field_35084 ONGOING + f Lnet/minecraft/class_1140$class_6665; field_35085 CHANGE_DETECTED +c net/minecraft/class_1144 net/minecraft/client/sound/SoundManager + f Lnet/minecraft/class_1111; field_5592 MISSING_SOUND + f Lnet/minecraft/class_1146; field_42935 INTENTIONALLY_EMPTY_SOUND_SET + f Lnet/minecraft/class_1111; field_42936 INTENTIONALLY_EMPTY_SOUND + f Lnet/minecraft/class_2960; field_52173 EMPTY_ID + f Ljava/util/Map; field_5588 sounds + f Lnet/minecraft/class_2960; field_42934 INTENTIONALLY_EMPTY_ID + f Lcom/google/gson/Gson; field_5594 GSON + f Ljava/util/Map; field_40576 soundResources + f Lcom/google/gson/reflect/TypeToken; field_5591 TYPE + f Lnet/minecraft/class_1140; field_5590 soundSystem + f Ljava/lang/String; field_33026 SOUNDS_JSON + f Lorg/slf4j/Logger; field_5593 LOGGER + m ()V method_4882 close + m ()V method_4880 resumeAll + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)Lnet/minecraft/class_1144$class_4009; method_18180 prepare + m ()V method_38566 reloadSounds + m (Lnet/minecraft/class_1113;)V method_4870 stop + p 1 sound + m (Lnet/minecraft/class_1113;)Lnet/minecraft/class_1140$class_11518; method_4873 play + p 1 sound + m (Lnet/minecraft/class_1117;)V method_22140 playNextTick + p 1 sound + m (Lnet/minecraft/class_1113;I)V method_4872 play + p 1 sound + p 2 delay + m (Lnet/minecraft/class_315;)V + p 1 gameOptions + m (Lnet/minecraft/class_4184;)V method_4876 updateListenerPosition + p 1 camera + m (Lnet/minecraft/class_1145;)V method_4878 registerListener + p 1 listener + m (Lnet/minecraft/class_1145;)V method_4866 unregisterListener + p 1 listener + m (Lnet/minecraft/class_3419;F)V method_76570 setVolume + p 1 category + p 2 volume + m ()V method_54649 stopAbruptly + m (Lnet/minecraft/class_1113;)Z method_4877 isPlaying + p 1 sound + m ()V method_4881 stopAll + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1146; method_4869 get + p 1 id + m (Lnet/minecraft/class_1144$class_4009;Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)V method_18182 apply + m ()Ljava/util/Collection; method_4864 getKeys + m (Lnet/minecraft/class_1111;Lnet/minecraft/class_2960;Lnet/minecraft/class_5912;)Z method_4868 isSoundResourcePresent + p 0 sound + p 2 resourceFactory + p 1 id + m ()Lnet/minecraft/class_9054; method_55593 getListenerTransform + m ()Ljava/util/List; method_38565 getSoundDevices + m ([Lnet/minecraft/class_3419;)V method_71939 pauseAllExcept + p 1 categories + m (Lnet/minecraft/class_3419;)V method_76569 refreshSoundVolumes + p 1 category + m ()Ljava/lang/String; method_20305 getDebugString + m (Z)V method_18670 tick + p 1 paused + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3419;)V method_4875 stopSounds + p 1 id + p 2 soundCategory +c net/minecraft/class_1144$class_4009 net/minecraft/client/sound/SoundManager$SoundList + f Ljava/util/Map; field_17908 loadedSounds + f Ljava/util/Map; field_40577 foundSounds + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_1110;)V method_18187 register + p 1 id + p 2 entry + m (Lnet/minecraft/class_3300;)V method_45913 findSounds + p 1 resourceManager + m (Ljava/util/Map;Ljava/util/Map;Lnet/minecraft/class_1140;)V method_18186 reload + p 3 system + p 1 sounds + p 2 soundResources +c net/minecraft/class_1144$class_4009$1 net/minecraft/client/sound/SoundManager$SoundList$1 + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_1111; method_4883 getSound +c net/minecraft/class_2476 net/minecraft/block/SeagrassBlock + f Lcom/mojang/serialization/MapCodec; field_46439 CODEC + f Lnet/minecraft/class_265; field_11485 SHAPE +c net/minecraft/class_2477 net/minecraft/util/Language + f Ljava/lang/String; field_33187 DEFAULT_LANGUAGE + f Ljava/util/regex/Pattern; field_11489 TOKEN_PATTERN + f Lcom/google/gson/Gson; field_25307 GSON + f Lnet/minecraft/class_2477; field_11486 instance + f Lorg/slf4j/Logger; field_11490 LOGGER + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_4679 get + p 2 fallback + p 1 key + m (Lnet/minecraft/class_5348;)Lnet/minecraft/class_5481; method_30934 reorder + p 1 text + m ()Lnet/minecraft/class_2477; method_10517 getInstance + m (Lnet/minecraft/class_2477;)V method_29427 setInstance + p 0 language + m (Ljava/lang/String;)Ljava/lang/String; method_48307 get + p 1 key + m ()Z method_29428 isRightToLeft + m ()Lnet/minecraft/class_2477; method_29429 create + m (Ljava/io/InputStream;Ljava/util/function/BiConsumer;)V method_29425 load + p 1 entryConsumer + p 0 inputStream + m (Ljava/util/List;)Ljava/util/List; method_30933 reorder + p 1 texts + m (Ljava/lang/String;)Z method_4678 hasTranslation + p 1 key + m (Ljava/util/function/BiConsumer;Ljava/lang/String;)V method_51465 load + p 0 entryConsumer + p 1 path +c net/minecraft/class_2477$1 net/minecraft/util/Language$1 + m (Lnet/minecraft/class_5224;Lnet/minecraft/class_2583;Ljava/lang/String;)Ljava/util/Optional; method_30935 method_30935 + p 2 string + p 1 style + m (Lnet/minecraft/class_5348;Lnet/minecraft/class_5224;)Z method_30936 method_30936 + p 1 visitor +c net/minecraft/class_1143 net/minecraft/sound/MusicType + f I field_29805 MENU_MAX_DELAY + f I field_29806 GAME_MIN_DELAY + f Lnet/minecraft/class_5195; field_5580 DRAGON + f I field_29804 MENU_MIN_DELAY + f Lnet/minecraft/class_5195; field_5578 CREDITS + f Lnet/minecraft/class_5195; field_5586 GAME + f Lnet/minecraft/class_5195; field_5585 MENU + f Lnet/minecraft/class_5195; field_5576 UNDERWATER + f Lnet/minecraft/class_5195; field_5581 CREATIVE + f I field_29807 GAME_MAX_DELAY + f Lnet/minecraft/class_5195; field_5583 END + f I field_29808 END_MIN_DELAY + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_5195; method_27283 createIngameMusic + p 0 sound +c net/minecraft/class_1142 net/minecraft/client/sound/MusicTracker + f Lnet/minecraft/class_1142$class_11504; field_60796 musicFrequency + f Z field_60951 shownToast + f I field_5572 timeUntilNextSong + f Lnet/minecraft/class_5819; field_5571 random + f F field_55164 volume + f Lnet/minecraft/class_310; field_5575 client + f I field_33019 DEFAULT_TIME_UNTIL_NEXT_SONG + f Lnet/minecraft/class_1113; field_5574 current + m (Lnet/minecraft/class_5195;)Z method_4860 isPlayingType + p 1 type + m ()V method_18669 tick + m (Lnet/minecraft/class_310;)V + p 1 client + m ()Ljava/lang/String; method_71934 getCurrentMusicTranslationKey + m (Lnet/minecraft/class_5195;)V method_50025 stop + p 1 type + m ()V method_72055 tryShowToast + m (Lnet/minecraft/class_5195;)V method_4858 play + p 1 sound + m (F)Z method_65255 canFadeTowardsVolume + p 1 volume + m (Lnet/minecraft/class_5195;Lnet/minecraft/class_1113;)Z method_75844 shouldReplace + p 0 newSound + p 1 currentSound + m ()V method_4859 stop + m (Lnet/minecraft/class_1142$class_11504;)V method_71933 setMusicFrequency + p 1 musicFrequency +c net/minecraft/class_1142$class_11504 net/minecraft/client/sound/MusicTracker$MusicFrequency + f Lnet/minecraft/class_2561; field_64472 text + f Lcom/mojang/serialization/Codec; field_60800 CODEC + f I field_60803 delayBetweenTracks + f Ljava/lang/String; field_64471 name + f Lnet/minecraft/class_1142$class_11504; field_60797 DEFAULT + f Lnet/minecraft/class_1142$class_11504; field_60799 CONSTANT + f Lnet/minecraft/class_1142$class_11504; field_60798 FREQUENT + m (Lnet/minecraft/class_5195;Lnet/minecraft/class_5819;)I method_71935 getDelayBeforePlaying + p 1 music + p 2 random + m ()Lnet/minecraft/class_2561; method_76564 getText + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;I)V + p 5 minutesBetweenTracks + p 3 name + p 4 translationKey +c net/minecraft/class_2478 net/minecraft/block/AbstractSignBlock + f Lnet/minecraft/class_2746; field_11491 WATERLOGGED + f Lnet/minecraft/class_4719; field_21675 type + f Lnet/minecraft/class_265; field_11492 SHAPE + m (Lnet/minecraft/class_4719;Lnet/minecraft/class_4970$class_2251;)V + p 1 type + p 2 settings + m ()Lnet/minecraft/class_4719; method_24025 getWoodType + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4719; method_45459 getWoodType + p 0 block + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_2625;Z)Z method_51173 isTextLiteralOrEmpty + p 3 front + p 1 player + p 2 blockEntity + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_243; method_50003 getCenter + p 1 state + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_2625;)Z method_49824 isOtherPlayerEditing + p 1 player + p 2 blockEntity + m (Lnet/minecraft/class_2680;)F method_49814 getRotationDegrees + p 1 state + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_2625;Z)V method_49825 openEditScreen + p 1 player + p 3 front + p 2 blockEntity + m (Lnet/minecraft/class_2561;)Z method_51172 method_51172 + p 0 message +c net/minecraft/class_2479 net/minecraft/nbt/NbtByteArray + c Represents an NBT byte array. This object is mutable and backed by {@code byte[]}.\nIts type is {@value NbtElement#BYTE_ARRAY_TYPE}. Like Java arrays, accessing\nindices that are out of bounds will throw {@link ArrayIndexOutOfBoundsException}.\nThe backing array can be obtained via {@link #getByteArray()}. + f [B field_11493 value + f I field_41716 SIZE + f Lnet/minecraft/class_4614; field_21024 TYPE + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (I)Lnet/minecraft/class_2481; method_17804 method_10536 + m ()[B method_10521 getByteArray + c {@return the underlying byte array}\n\n@apiNote This does not copy the array, so modifications to the returned array\nalso apply to this NBT byte array. + m (I)Lnet/minecraft/class_2481; method_10523 method_10534 + m ([B)V + p 1 value +c net/minecraft/class_2479$1 net/minecraft/nbt/NbtByteArray$1 + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2479; method_23232 read + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)[B method_53886 readByteArray + p 0 input + p 1 tracker +c net/minecraft/class_1148 net/minecraft/client/sound/SoundContainer + m (Lnet/minecraft/class_5819;)Ljava/lang/Object; method_4893 getSound + p 1 random + m (Lnet/minecraft/class_1140;)V method_18188 preload + p 1 soundSystem + m ()I method_4894 getWeight +c net/minecraft/class_2472 net/minecraft/block/SeaPickleBlock + f Lcom/mojang/serialization/MapCodec; field_46438 CODEC + f Lnet/minecraft/class_265; field_11470 TWO_PICKLES_SHAPE + f Lnet/minecraft/class_2746; field_11475 WATERLOGGED + f I field_31241 MAX_PICKLES + f Lnet/minecraft/class_265; field_11473 ONE_PICKLE_SHAPE + f Lnet/minecraft/class_265; field_11474 FOUR_PICKLES_SHAPE + f Lnet/minecraft/class_265; field_11471 THREE_PICKLES_SHAPE + f Lnet/minecraft/class_2758; field_11472 PICKLES + m (Lnet/minecraft/class_2680;)Z method_10506 isDry + p 0 state +c net/minecraft/class_2473 net/minecraft/block/SaplingBlock + f Lnet/minecraft/class_2758; field_11476 STAGE + f Lcom/mojang/serialization/MapCodec; field_46431 CODEC + f Lnet/minecraft/class_8813; field_11477 generator + f Lnet/minecraft/class_265; field_11478 SHAPE + m (Lnet/minecraft/class_2473;)Lnet/minecraft/class_8813; method_54039 method_54039 + p 0 block + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54038 method_54038 + p 0 instance + m (Lnet/minecraft/class_8813;Lnet/minecraft/class_4970$class_2251;)V + p 1 generator + p 2 settings + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_5819;)V method_10507 generate + p 1 world + p 2 pos + p 3 state + p 4 random +c net/minecraft/class_1146 net/minecraft/client/sound/WeightedSoundSet + f Ljava/util/List; field_5600 sounds + f Lnet/minecraft/class_2561; field_5599 subtitle + m (Lnet/minecraft/class_1148;)V method_4885 add + p 1 container + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_1111; method_4887 getSound + m (Lnet/minecraft/class_2960;Ljava/lang/String;)V + p 1 id + p 2 subtitle + m ()Lnet/minecraft/class_2561; method_4886 getSubtitle +c net/minecraft/class_2474 net/minecraft/data/tag/TagProvider + f Ljava/util/concurrent/CompletableFuture; field_43093 parentTagLookupFuture + f Lnet/minecraft/class_7784$class_7489; field_39380 pathResolver + f Ljava/util/concurrent/CompletableFuture; field_43108 registryLoadFuture + f Ljava/util/concurrent/CompletableFuture; field_43107 registriesFuture + f Lnet/minecraft/class_5321; field_40957 registryRef + f Ljava/util/Map; field_11481 tagBuilders + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_2474$class_8210;)Ljava/util/concurrent/CompletionStage; method_49659 method_49659 + p 2 info + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_7225$class_7874; method_49706 method_49706 + p 1 registries + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_7225$class_7874; method_49707 method_49707 + p 1 registriesFuture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_3495; method_27170 method_27170 + p 0 id + m (Lnet/minecraft/class_7784;Lnet/minecraft/class_5321;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;)V + p 3 registriesFuture + p 4 parentTagLookupFuture + p 1 output + p 2 registryRef + m ()Ljava/util/concurrent/CompletableFuture; method_49651 getRegistriesFuture + m ()Ljava/util/concurrent/CompletableFuture; method_49662 getTagLookupFuture + m (Lnet/minecraft/class_7225$class_7226;Lnet/minecraft/class_2960;)Z method_46832 method_46832 + p 2 id + m (Lnet/minecraft/class_2474$class_8210;Lnet/minecraft/class_2960;)Z method_49660 method_49660 + p 2 id + m (Lnet/minecraft/class_6862;)Ljava/util/Optional; method_49656 method_49656 + p 1 tag + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/class_3497;)Z method_49658 method_49658 + p 2 tagEntry + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_3495; method_27169 getTagBuilder + p 1 tag + m (Lnet/minecraft/class_7784;Lnet/minecraft/class_5321;Ljava/util/concurrent/CompletableFuture;)V + p 3 registriesFuture + p 1 output + p 2 registryRef + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_2474$class_8211;)Lnet/minecraft/class_2474$class_8210; method_49657 method_49657 + p 0 registries + p 1 parent + m (Lnet/minecraft/class_7225$class_7874;)V method_10514 configure + p 1 registries + m (Ljava/lang/Void;)Lnet/minecraft/class_2474$class_8211; method_49661 method_49661 + p 1 void_ +c net/minecraft/class_2474$class_8211 net/minecraft/data/tag/TagProvider$TagLookup + m (Lnet/minecraft/class_6862;)Ljava/util/Optional; method_49664 method_49664 + p 0 tag + m (Lnet/minecraft/class_6862;)Z contains contains + p 1 tag +c net/minecraft/class_2474$class_8210 net/minecraft/data/tag/TagProvider$RegistryInfo + f Lnet/minecraft/class_7225$class_7874; comp_1311 contents + f Lnet/minecraft/class_2474$class_8211; comp_1312 parent + m ()Lnet/minecraft/class_7225$class_7874; comp_1311 contents + m ()Lnet/minecraft/class_2474$class_8211; comp_1312 parent + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_2474$class_8211;)V + p 1 contents + p 2 parent +c net/minecraft/class_1145 net/minecraft/client/sound/SoundInstanceListener + m (Lnet/minecraft/class_1113;Lnet/minecraft/class_1146;F)V method_4884 onSoundPlayed + p 2 soundSet + p 3 range + p 1 sound +c net/minecraft/class_2469 net/minecraft/data/tag/vanilla/VanillaFluidTagProvider + m (Lnet/minecraft/class_3611;)Lnet/minecraft/class_5321; method_46825 method_46825 + p 0 fluid + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registriesFuture +c net/minecraft/class_2480 net/minecraft/block/ShulkerBoxBlock + f Lnet/minecraft/class_1767; field_11494 color + f Lnet/minecraft/class_2960; field_64505 CONTENTS_DYNAMIC_DROP_ID + f Ljava/util/Map; field_55792 SHAPES_BY_DIRECTION + f Lnet/minecraft/class_2754; field_11496 FACING + f Lcom/mojang/serialization/MapCodec; field_46440 CODEC + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_2248; method_10525 get + p 0 dyeColor + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2627;)Z method_33383 canOpen + p 2 pos + p 3 entity + p 0 state + p 1 world + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_1799; method_10529 getItemStack + p 0 color + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54040 method_54040 + p 0 instance + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 color + m (Ljava/util/Optional;Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2480; method_54042 method_54042 + p 1 settings + p 0 color + m (Lnet/minecraft/class_2480;)Ljava/util/Optional; method_54041 method_54041 + p 0 block + m ()Lnet/minecraft/class_1767; method_10528 getColor +c net/minecraft/class_2481 net/minecraft/nbt/NbtByte + c Represents an NBT byte. Its type is {@value NbtElement#BYTE_TYPE}.\nInstances are immutable. + f Lnet/minecraft/class_4614; field_21025 TYPE + f Lnet/minecraft/class_2481; field_21027 ONE + c The NBT byte representing {@code 1}.\n\n@apiNote This is often used to indicate a true boolean value. + f I field_41717 SIZE + f Lnet/minecraft/class_2481; field_21026 ZERO + c The NBT byte representing {@code 0}.\n\n@apiNote This is often used to indicate a false boolean value. + f B comp_3817 value + m ()Lnet/minecraft/class_2481; method_10530 copy + m (Z)Lnet/minecraft/class_2481; method_23234 of + c {@return the NBT byte representing the boolean {@code value}} + p 0 value + m (B)V + p 1 value + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (B)Lnet/minecraft/class_2481; method_23233 of + c {@return the NBT byte from {@code value}}\n\n@implNote This returns the value from the cache. + p 0 value + m ()B comp_3817 value +c net/minecraft/class_2481$1 net/minecraft/nbt/NbtByte$1 + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)B method_53887 readByte + p 1 tracker + p 0 input + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2481; method_23235 read +c net/minecraft/class_2481$class_4610 net/minecraft/nbt/NbtByte$Cache + f [Lnet/minecraft/class_2481; field_21028 VALUES +c net/minecraft/class_2482 net/minecraft/block/SlabBlock + f Lcom/mojang/serialization/MapCodec; field_46445 CODEC + f Lnet/minecraft/class_265; field_11500 BOTTOM_SHAPE + f Lnet/minecraft/class_2746; field_11502 WATERLOGGED + f Lnet/minecraft/class_2754; field_11501 TYPE + f Lnet/minecraft/class_265; field_11499 TOP_SHAPE +c net/minecraft/class_1151 net/minecraft/client/tutorial/MovementTutorialStepHandler + f Lnet/minecraft/class_2561; field_5614 LOOK_DESCRIPTION + f Lnet/minecraft/class_2561; field_5617 MOVE_DESCRIPTION + f Lnet/minecraft/class_2561; field_5621 LOOK_TITLE + f Z field_5620 movedLastTick + f Lnet/minecraft/class_2561; field_5624 MOVE_TITLE + f Z field_5619 lookedAroundLastTick + f Lnet/minecraft/class_1156; field_5618 manager + f Lnet/minecraft/class_372; field_5622 moveToast + f Lnet/minecraft/class_372; field_5623 lookAroundToast + f I field_5625 lookAroundCompletionTicks + f I field_5615 movedTicks + f I field_5626 moveAroundCompletionTicks + f I field_5616 ticks + f I field_5627 lookedAroundTicks + m (Lnet/minecraft/class_1156;)V + p 1 manager +c net/minecraft/class_1150 net/minecraft/client/tutorial/NoneTutorialStepHandler + m (Lnet/minecraft/class_1156;)V + p 1 manager +c net/minecraft/class_2487 net/minecraft/nbt/NbtCompound + c Represents an NBT compound object. This mutable object holds unordered key-value pairs\nwith distinct case-sensitive string keys. This can effectively be used like a\n{@code HashMap}. Note that this does not implement\n{@link java.util.Map}. Its type is {@value NbtElement#COMPOUND_TYPE}.\n\n

There are two ways to use this compound; one is to create NBT instances yourself and use\n{@link #get(String)} or {@link #put(String, NbtElement)}. Manual casting is required in\nthis case. The other, easier way is to use methods with type names, such as\n{@link #getInt(String)} or {@link #putInt(String, int)}. Where applicable, these methods\nreturn and accept Java types (e.g. {@code int}, {@code long[]}) instead of {@link NbtElement}\nsubclasses. Note that there is no {@code putCompound} method, since you can just use the\nput method. These getters also have the advantage of providing type safety, because if\ntype mismatch occurs or there is no such element in the compound, it returns the default\nvalue for that type instead of throwing or returning {@code null}. + f Lnet/minecraft/class_4614; field_21029 TYPE + f Ljava/util/Map; field_11515 entries + f Lorg/slf4j/Logger; field_56522 LOGGER + f I field_41718 SIZE + f Lcom/mojang/serialization/Codec; field_25128 CODEC + m (Ljava/util/function/BiConsumer;)V method_68561 forEach + p 1 entryConsumer + m (Lcom/mojang/serialization/MapCodec;)Ljava/util/Optional; method_67487 decode + p 1 codec + m (Ljava/lang/String;[J)V method_10564 putLongArray + c Puts a long array to this compound. This does not copy the array.\n\n@see #getLongArray(String)\n@see #putLongArray(String, List) + p 2 value + p 1 key + m (Ljava/lang/String;)Lnet/minecraft/class_2520; method_10551 remove + c Removes the entry with the specified {@code key}. Does nothing if there is none. + p 1 key + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/DataResult; method_29141 method_29141 + p 0 dynamic + m (Ljava/lang/String;)Ljava/util/Optional; method_10561 getIntArray + c {@return the int array associated with {@code key}, or an empty int array if there is no\nint array stored with the key}\n\n@apiNote Modifying the returned array also modifies the NBT int array.\n\n@see #putIntArray(String, int[])\n@see NbtIntArray#getIntArray() + p 1 key + m (Ljava/lang/String;)Ljava/util/Optional; method_10577 getBoolean + c {@return the boolean value stored with the {@code key}}\n\n@implNote Since NBT does not have a boolean type, {@link NbtByte} is used instead. This\nmethod returns {@code true} for any values which, after casting to {@code byte} as\ndescribed at {@link #getByte(String)}, is not {@code 0}. Since all non-numeric values\nbecome {@code 0} during casting to bytes, this method returns {@code false} for those\nas well. This includes values often considered truthy in other languages, such as a\nnon-empty string or list. + p 1 key + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_68564 getString + c {@return the {@link String} associated with {@code key}, or {@code fallback} if there\nis no string stored with the key}\n\n@see #putString(String, String)\n@see NbtElement#asString() + p 2 fallback + p 1 key + m (Ljava/lang/String;)Ljava/util/Optional; method_10565 getLongArray + c {@return the long array associated with {@code key}, or an empty long array if there is no\nlong array stored with the key}\n\n@apiNote Modifying the returned array also modifies the NBT long array.\n\n@see #putLongArray(String, long[])\n@see NbtLongArray#getLongArray() + p 1 key + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)V method_68081 putNullable + p 1 key + p 3 ops + p 2 codec + p 4 value + m ()Z method_33133 isEmpty + c {@return whether the compound has no entries} + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/DynamicOps;)Ljava/util/Optional; method_67488 decode + p 1 codec + p 2 ops + m (Ljava/lang/String;)Ljava/util/Optional; method_10537 getLong + c {@return the {@code long} associated with {@code key}, or {@code 0L} if there is no number\nstored with the key}\n\n

If a non-long numeric value is stored, this will cast the value.\n\n@see #putLong(String, long)\n@see AbstractNbtNumber#longValue() + p 1 key + m (Ljava/lang/String;)V method_67496 method_67496 + p 1 error + m (Ljava/lang/String;F)F method_66563 getFloat + c {@return the {@code float} associated with {@code key}, or {@code fallback} if there is\nno number stored with the key}\n\n

If a non-float numeric value is stored, this will cast the value.\n\n@see #putFloat(String, float)\n@see AbstractNbtNumber#floatValue() + p 2 fallback + p 1 key + m ()Lnet/minecraft/class_2487; method_10553 copy + m (Lcom/mojang/serialization/MapCodec;Ljava/lang/Object;)V method_67490 copyFromCodec + p 1 codec + p 2 value + m (Ljava/lang/String;)Lnet/minecraft/class_2520; method_10580 get + c {@return the element associated with the key from this compound, or\n{@code null} if there is none}\n\n@apiNote This method does not provide type safety; if the type is known, it is\nrecommended to use other type-specific methods instead.\n\n@see #put(String, NbtElement) + p 1 key + m (Ljava/lang/String;Ljava/lang/String;)V method_10582 putString + c Puts a {@link String} to this compound.\n\n@see #getString(String) + p 2 value + p 1 key + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/DynamicOps;)Ljava/util/Optional; method_67492 get + p 1 key + p 2 codec + p 3 ops + m (Ljava/lang/String;)Ljava/util/Optional; method_10562 getCompound + c {@return the compound associated with {@code key}, or an empty compound if there is no\ncompound stored with the key}\n\n@see #put(String, NbtElement) + p 1 key + m (Ljava/lang/String;)Ljava/util/Optional; method_10550 getInt + c {@return the {@code int} associated with {@code key}, or {@code 0} if there is no number\nstored with the key}\n\n

If a non-integer numeric value is stored, this will cast the value.\n\n@see #putInt(String, int)\n@see AbstractNbtNumber#intValue() + p 1 key + m ()Lnet/minecraft/class_2487; method_59873 shallowCopy + m (Ljava/util/HashMap;Ljava/lang/String;Lnet/minecraft/class_2520;)V method_68721 method_68721 + p 1 key + p 2 value + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/lang/String;)Ljava/util/Optional; method_10574 getDouble + c {@return the {@code double} associated with {@code key}, or {@code 0.0} if there is\nno number stored with the key}\n\n

If a non-double numeric value is stored, this will cast the value.\n\n@see #putDouble(String, double)\n@see AbstractNbtNumber#doubleValue() + p 1 key + m (Ljava/lang/String;)Ljava/util/Optional; method_10554 getList + c {@return the list associated with {@code key}, or an empty list if there is no\nlist stored with the key and the type}\n\n@see #put(String, NbtElement) + p 1 key + m (Ljava/lang/String;)Ljava/util/Optional; method_10558 getString + c {@return the {@link String} associated with {@code key}, or an empty string if there\nis no string stored with the key}\n\n@see #putString(String, String)\n@see NbtElement#asString() + p 1 key + m (Ljava/lang/String;J)J method_68080 getLong + c {@return the {@code long} associated with {@code key}, or {@code fallback} if there is\nno number stored with the key}\n\n

If a non-long numeric value is stored, this will cast the value.\n\n@see #putLong(String, long)\n@see AbstractNbtNumber#longValue() + p 2 fallback + p 1 key + m (Ljava/lang/String;D)D method_68563 getDouble + c {@return the {@code double} associated with {@code key}, or {@code fallback} if there\nis no number stored with the key}\n\n

If a non-double numeric value is stored, this will cast the value.\n\n@see #putDouble(String, double)\n@see AbstractNbtNumber#doubleValue() + p 1 key + p 2 fallback + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)V method_67493 put + p 3 ops + p 2 codec + p 4 value + p 1 key + m (Ljava/lang/String;)Ljava/util/Optional; method_68570 getOptional + p 1 key + m (Ljava/util/Map;)V + p 1 entries + m (Lnet/minecraft/class_4614;Ljava/lang/String;Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2520; method_10581 read + p 0 reader + p 1 key + p 2 input + p 3 tracker + m ()Ljava/util/Collection; method_68567 values + m ()Ljava/util/Set; method_10541 getKeys + c {@return the set of keys in this compound} + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)Ljava/util/Optional; method_67491 get + p 2 codec + p 1 key + m ()I method_10546 getSize + c {@return the size of this compound} + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)V method_67489 copyFromCodec + p 3 value + p 1 codec + p 2 ops + m (Ljava/lang/String;D)V method_10549 putDouble + c Puts a {@code double} to this compound.\n\n@see #getDouble(String) + p 1 key + p 2 value + m (Ljava/lang/String;)Ljava/util/Optional; method_10571 getByte + c {@return the {@code byte} associated with {@code key}, or {@code 0} if there is no number\nstored with the key}\n\n

If a non-byte numeric value is stored, this will cast the value.\n\n@see #putByte(String, byte)\n@see AbstractNbtNumber#byteValue() + p 1 key + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_10543 copyFrom + c Merges the entries of {@code source} to this compound. The passed compound will not\nbe modified. If both compounds contain a compound with the same key, they will be\nmerged; otherwise the values of this compound will be overwritten.\n\n@return this compound with entries merged + p 1 source + m (Ljava/lang/String;Lnet/minecraft/class_2520;)Lnet/minecraft/class_2520; method_10566 put + c Puts an element to this compound.\n\n@return the previous value, or {@code null} if there was none\n@see #get(String) + p 2 element + p 1 key + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;Ljava/lang/Object;)V method_67494 put + p 3 value + p 1 key + p 2 codec + m (Ljava/lang/String;)Ljava/util/Optional; method_10583 getFloat + c {@return the {@code float} associated with {@code key}, or {@code 0.0f} if there is\nno number stored with the key}\n\n

If a non-float numeric value is stored, this will cast the value.\n\n@see #putFloat(String, float)\n@see AbstractNbtNumber#floatValue() + p 1 key + m (Lnet/minecraft/class_2487;)Lcom/mojang/serialization/Dynamic; method_29142 method_29142 + p 0 nbt + m (Ljava/lang/String;)Z method_10545 contains + c Determines whether the NBT compound object contains the specified key.\n\n@return {@code true} if the key exists, else {@code false} + p 1 key + m (Ljava/lang/String;S)S method_68565 getShort + c {@return the {@code short} associated with {@code key}, or {@code fallback} if there is\nno number stored with the key}\n\n

If a non-short numeric value is stored, this will cast the value.\n\n@see #putShort(String, short)\n@see AbstractNbtNumber#shortValue() + p 2 fallback + p 1 key + m (Ljava/lang/String;)Ljava/util/Optional; method_10547 getByteArray + c {@return the byte array associated with {@code key}, or an empty byte array if there is no\nbyte array stored with the key}\n\n@apiNote Modifying the returned array also modifies the NBT byte array.\n\n@see #putByteArray(String, byte[])\n@see NbtByteArray#getByteArray() + p 1 key + m (Ljava/lang/String;Z)Z method_68566 getBoolean + p 1 key + p 2 fallback + m (Ljava/lang/String;Lnet/minecraft/class_2520;Ljava/lang/String;)V method_67495 method_67495 + p 2 error + m (Ljava/lang/String;)Lnet/minecraft/class_2487; method_68568 getCompoundOrEmpty + p 1 key + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;Ljava/lang/Object;)V method_68082 putNullable + p 3 value + p 1 key + p 2 codec + m (Ljava/lang/String;B)B method_68562 getByte + c {@return the {@code byte} associated with {@code key}, or {@code fallback} if there is\nno number stored with the key}\n\n

If a non-byte numeric value is stored, this will cast the value.\n\n@see #putByte(String, byte)\n@see AbstractNbtNumber#byteValue() + p 2 fallback + p 1 key + m (Ljava/lang/String;[I)V method_10539 putIntArray + c Puts an int array to this compound. This does not copy the array.\n\n@see #getIntArray(String)\n@see #putIntArray(String, List) + p 1 key + p 2 value + m (Ljava/lang/String;S)V method_10575 putShort + c Puts a {@code short} to this compound.\n\n@see #getShort(String) + p 1 key + p 2 value + m (Ljava/lang/String;Lnet/minecraft/class_2520;Ljava/io/DataOutput;)V method_10555 write + p 2 output + p 1 element + p 0 key + m (Ljava/lang/String;I)V method_10569 putInt + c Puts an {@code int} to this compound.\n\n@see #getInt(String) + p 1 key + p 2 value + m (Ljava/lang/String;J)V method_10544 putLong + c Puts a {@code long} to this compound.\n\n@see #getLong(String) + p 1 key + p 2 value + m (Ljava/lang/String;F)V method_10548 putFloat + c Puts a {@code float} to this compound.\n\n@see #getFloat(String) + p 1 key + p 2 value + m ()Ljava/util/Set; method_59874 entrySet + m (Ljava/lang/String;B)V method_10567 putByte + c Puts a {@code byte} to this compound.\n\n@see #getByte(String) + p 2 value + p 1 key + m (Ljava/lang/String;[B)V method_10570 putByteArray + c Puts a byte array to this compound. This does not copy the array.\n\n@see #getByteArray(String)\n@see #putByteArray(String, List) + p 2 value + p 1 key + m (Ljava/lang/String;)Ljava/util/Optional; method_10568 getShort + c {@return the {@code short} associated with {@code key}, or {@code 0} if there is no number\nstored with the key}\n\n

If a non-short numeric value is stored, this will cast the value.\n\n@see #putShort(String, short)\n@see AbstractNbtNumber#shortValue() + p 1 key + m (Ljava/lang/String;Z)V method_10556 putBoolean + c Puts a {@code boolean} to this compound. The value is stored as {@link NbtByte}.\n\n@see #getBoolean(String) + p 2 value + p 1 key + m (Ljava/lang/String;)Lnet/minecraft/class_2499; method_68569 getListOrEmpty + p 1 key + m (Ljava/lang/String;I)I method_68083 getInt + c {@return the {@code int} associated with {@code key}, or {@code fallback} if there is\nno number stored with the key}\n\n

If a non-integer numeric value is stored, this will cast the value.\n\n@see #putInt(String, int)\n@see AbstractNbtNumber#intValue() + p 1 key + p 2 fallback +c net/minecraft/class_2487$1 net/minecraft/nbt/NbtCompound$1 + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Ljava/lang/String; method_53907 readString + p 0 input + p 1 tracker + m (Ljava/io/DataInput;Lnet/minecraft/class_6836;Lnet/minecraft/class_2505;)Lnet/minecraft/class_6836$class_6838; method_53888 scanCompound + p 1 visitor + p 0 input + p 2 tracker + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2487; method_53889 readCompound + p 1 tracker + p 0 input + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2487; method_23240 read +c net/minecraft/class_1155 net/minecraft/client/tutorial/TutorialStepHandler + m (Lnet/minecraft/class_638;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;F)V method_4900 onBlockBreaking + p 2 pos + p 1 client + p 4 progress + p 3 state + m (Lnet/minecraft/class_744;)V method_4903 onMovement + p 1 input + m ()V method_4899 tick + m (DD)V method_4901 onMouseUpdate + p 1 deltaX + p 3 deltaY + m ()V method_4902 destroy + m (Lnet/minecraft/class_638;Lnet/minecraft/class_239;)V method_4898 onTarget + p 2 hitResult + p 1 world + m (Lnet/minecraft/class_1799;)V method_4897 onSlotUpdate + p 1 stack + m ()V method_4904 onInventoryOpened +c net/minecraft/class_1154 net/minecraft/client/tutorial/OpenInventoryTutorialStepHandler + f I field_5641 ticks + f I field_33034 DELAY + f Lnet/minecraft/class_1156; field_5640 manager + f Lnet/minecraft/class_2561; field_5643 TITLE + f Lnet/minecraft/class_2561; field_5644 DESCRIPTION + f Lnet/minecraft/class_372; field_5642 toast + m (Lnet/minecraft/class_1156;)V + p 1 manager +c net/minecraft/class_2488 net/minecraft/block/SnowBlock + f I field_31247 MAX_LAYERS + f Lnet/minecraft/class_2758; field_11518 LAYERS + f Lcom/mojang/serialization/MapCodec; field_46451 CODEC + f [Lnet/minecraft/class_265; field_11517 SHAPES_BY_LAYERS + m (I)Lnet/minecraft/class_265; method_66467 method_66467 + p 0 layers +c net/minecraft/class_2489 net/minecraft/nbt/NbtDouble + c Represents an NBT 64-bit floating-point number. Its type is {@value NbtElement#DOUBLE_TYPE}.\nInstances are immutable. + f Lnet/minecraft/class_2489; field_21030 ZERO + c The NBT double representing {@code 0.0}. + f Lnet/minecraft/class_4614; field_21031 TYPE + f I field_41720 SIZE + f D comp_3818 value + m ()Lnet/minecraft/class_2489; method_10585 copy + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (D)Lnet/minecraft/class_2489; method_23241 of + c {@return the NBT double from {@code value}} + p 0 value + m (D)V + p 1 value + m ()D comp_3818 value +c net/minecraft/class_2489$1 net/minecraft/nbt/NbtDouble$1 + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)D method_53890 readDouble + p 1 tracker + p 0 input + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2489; method_23242 read +c net/minecraft/class_1153 net/minecraft/client/tutorial/PunchTreeTutorialStepHandler + f Lnet/minecraft/class_2561; field_5638 TITLE + f Lnet/minecraft/class_2561; field_5639 DESCRIPTION + f I field_5635 punches + f I field_5636 ticks + f Lnet/minecraft/class_372; field_5637 toast + f Lnet/minecraft/class_1156; field_5634 manager + f I field_33035 DELAY + m (Lnet/minecraft/class_1156;)V + p 1 manager +c net/minecraft/class_1152 net/minecraft/client/tutorial/FindTreeTutorialStepHandler + f I field_33028 DELAY + f Lnet/minecraft/class_2561; field_5628 DESCRIPTION + f Lnet/minecraft/class_372; field_5633 toast + f Lnet/minecraft/class_1156; field_5630 manager + f I field_5629 ticks + f Lnet/minecraft/class_2561; field_5631 TITLE + m (Lnet/minecraft/class_746;)Z method_43341 hasItem + p 0 player + m (Lnet/minecraft/class_746;)Z method_4896 hasBrokenTreeBlocks + p 0 player + m (Lnet/minecraft/class_1156;)V + p 1 manager + m (Lnet/minecraft/class_1799;)Z method_43340 method_43340 + p 0 stack +c net/minecraft/class_2483 net/minecraft/nbt/AbstractNbtList + c Represents an abstraction of a mutable NBT list which holds elements of the same type. + m (ILnet/minecraft/class_2520;)Z method_10533 addElement + c Inserts {@code element} at {@code index}. Does nothing if the\ntypes were incompatible.\n\n@return whether the element was actually added + p 2 element + p 1 index + m (ILnet/minecraft/class_2520;)Z method_10535 setElement + c Sets the element at {@code index} to {@code element}. Does nothing if\nthe types were incompatible.\n\n@return whether the element was actually set + p 1 index + p 2 element +c net/minecraft/class_2483$1 net/minecraft/nbt/AbstractNbtList$1 + f I field_57976 current + m ()Lnet/minecraft/class_2520; method_68560 next +c net/minecraft/class_2484 net/minecraft/block/SkullBlock + f I field_31244 MAX_ROTATION_INDEX + f I field_31245 MAX_ROTATIONS + f Lnet/minecraft/class_265; field_41312 PIGLIN_SHAPE + f Lnet/minecraft/class_265; field_11506 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46441 CODEC + f Lnet/minecraft/class_2758; field_11505 ROTATION + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54043 method_54043 + p 0 instance +c net/minecraft/class_2484$class_2486 net/minecraft/block/SkullBlock$Type + f Ljava/lang/String; field_46444 id + f Lnet/minecraft/class_2484$class_2486; field_11508 ZOMBIE + f Lnet/minecraft/class_2484$class_2486; field_11507 CREEPER + f Lnet/minecraft/class_2484$class_2486; field_11513 WITHER_SKELETON + f Lnet/minecraft/class_2484$class_2486; field_11510 PLAYER + f Lnet/minecraft/class_2484$class_2486; field_11512 SKELETON + f Lnet/minecraft/class_2484$class_2486; field_11511 DRAGON + f Lnet/minecraft/class_2484$class_2486; field_41313 PIGLIN + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_2484$class_2485 net/minecraft/block/SkullBlock$SkullType + f Ljava/util/Map; field_46442 TYPES + f Lcom/mojang/serialization/Codec; field_46443 CODEC +c net/minecraft/class_1157 net/minecraft/client/tutorial/TutorialStep + f Ljava/util/function/Function; field_5647 handlerFactory + f Ljava/lang/String; field_5651 name + f Lnet/minecraft/class_1157; field_5649 PUNCH_TREE + f Lnet/minecraft/class_1157; field_5648 FIND_TREE + f Lnet/minecraft/class_1157; field_5653 NONE + f Lnet/minecraft/class_1157; field_5652 OPEN_INVENTORY + f Lnet/minecraft/class_1157; field_5655 CRAFT_PLANKS + f Lnet/minecraft/class_1157; field_5650 MOVEMENT + m (Ljava/lang/String;)Lnet/minecraft/class_1157; method_4919 byName + p 0 name + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/Function;)V + p 3 name + p 4 factory + m ()Ljava/lang/String; method_4920 getName + m (Lnet/minecraft/class_1156;)Lnet/minecraft/class_1155; method_4918 createHandler + p 1 manager +c net/minecraft/class_1156 net/minecraft/client/tutorial/TutorialManager + f Lnet/minecraft/class_310; field_5645 client + f Lnet/minecraft/class_1155; field_5646 currentHandler + m ()Lnet/minecraft/class_310; method_4914 getClient + m (Lnet/minecraft/class_1799;)V method_4906 onSlotUpdate + p 1 stack + m (Lnet/minecraft/class_638;Lnet/minecraft/class_239;)V method_4911 tick + p 2 hitResult + p 1 world + m (Lnet/minecraft/class_638;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;F)V method_4907 onBlockBreaking + p 3 state + p 4 progress + p 1 world + p 2 pos + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_4913 keyToText + p 0 name + m (Lnet/minecraft/class_744;)V method_4909 onMovement + p 1 input + m (DD)V method_4908 onUpdateMouse + p 1 deltaX + p 3 deltaY + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Lnet/minecraft/class_5536;)V method_33704 onPickupSlotClick + c Called when a player performs a {@link net.minecraft.screen.slot.SlotActionType#PICKUP\npickup slot action} in a screen handler. Used to trigger the bundle tutorial.\n\n@see net.minecraft.client.network.ClientPlayerEntity#onPickupSlotClick(ItemStack, ItemStack, ClickType) + p 3 clickType + p 2 slotStack + p 1 cursorStack + m (Lnet/minecraft/class_1157;)V method_4910 setStep + p 1 step + m ()Z method_4905 isInSurvival + c {@return whether the current game mode of the client is {@linkplain net.minecraft.world.GameMode#SURVIVAL survival}} + m ()V method_4912 onInventoryOpened + m ()V method_4915 destroyHandler + m ()V method_4917 tick + m (Lnet/minecraft/class_310;Lnet/minecraft/class_315;)V + p 1 client + p 2 options + m ()V method_4916 createHandler +c net/minecraft/server/Main net/minecraft/server/Main + f Lorg/slf4j/Logger; field_24625 LOGGER + m (Lnet/minecraft/class_3807;Lnet/minecraft/class_7237$class_7660;Lnet/minecraft/class_2378;ZZ)Lnet/minecraft/class_7237$class_7661; method_74054 createWorld + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_5219;Lcom/mojang/datafixers/DataFixer;ZLjava/util/function/BooleanSupplier;Lnet/minecraft/class_5455;Z)V method_29173 forceUpgradeWorld + p 1 saveProperties + p 0 session + p 6 recreateRegionFiles + p 3 eraseCache + p 2 dataFixer + p 5 registries + p 4 continueCheck + m (Lnet/minecraft/class_3806;Lcom/mojang/serialization/Dynamic;ZLnet/minecraft/class_3283;)Lnet/minecraft/class_7237$class_6906; method_46219 createServerConfig + p 0 serverPropertiesHandler + p 1 dynamic + p 2 safeMode + p 3 dataPackManager + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_3283;Lnet/minecraft/class_6904;Lnet/minecraft/class_3807;Lnet/minecraft/class_7497;Ljoptsimple/OptionSet;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;Ljava/lang/Thread;)Lnet/minecraft/class_3176; method_29734 method_29734 + p 11 thread + m ([Ljava/lang/String;)V main main + p 0 args + m (Lnet/minecraft/class_7237$class_6906;Lcom/mojang/serialization/Dynamic;Lnet/minecraft/class_3807;Ljoptsimple/OptionSet;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_43612 method_43612 + p 6 applyExecutor + m (Ljava/nio/file/Path;)V method_49066 writePidFile + p 0 path +c net/minecraft/class_1149 net/minecraft/client/tutorial/CraftPlanksTutorialStepHandler + f I field_5609 ticks + f I field_33027 DELAY + f Lnet/minecraft/class_1156; field_5608 manager + f Lnet/minecraft/class_372; field_5610 toast + f Lnet/minecraft/class_2561; field_5612 DESCRIPTION + f Lnet/minecraft/class_2561; field_5611 TITLE + m (Lnet/minecraft/class_746;Lnet/minecraft/class_6862;)Z method_4895 hasCrafted + p 1 tag + p 0 player + m (Lnet/minecraft/class_1156;)V + p 1 manager +c net/minecraft/class_3780 net/minecraft/structure/JigsawJunction + f Lnet/minecraft/class_3785$class_3786; field_16671 destProjection + f I field_16668 sourceZ + f I field_16669 sourceGroundY + f I field_16667 deltaY + f I field_16670 sourceX + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; method_16612 serialize + p 1 ops + m ()Lnet/minecraft/class_3785$class_3786; method_35368 getDestProjection + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/class_3780; method_28873 deserialize + p 0 dynamic + m (IIIILnet/minecraft/class_3785$class_3786;)V + p 5 destProjection + p 4 deltaY + p 3 sourceZ + p 2 sourceGroundY + p 1 sourceX + m ()I method_16609 getSourceZ + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()I method_16611 getSourceGroundY + m ()I method_16610 getSourceX + m ()I method_35367 getDeltaY +c net/minecraft/class_3785 net/minecraft/structure/pool/StructurePool + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; field_16680 elements + f Lnet/minecraft/class_6880; field_40926 fallback + f Ljava/util/List; field_16864 elementWeights + f Lcom/mojang/serialization/Codec; field_25853 CODEC + f Lorg/apache/commons/lang3/mutable/MutableObject; field_40925 FALLBACK + f I field_18707 highestY + f I field_31523 DEFAULT_Y + f Lcom/mojang/serialization/Codec; field_24954 REGISTRY_CODEC + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_3784;)I method_19310 method_19310 + p 1 element + m ()I method_16632 getElementCount + m (Lnet/minecraft/class_3784;)Z method_35372 method_35372 + p 0 element + m ()Ljava/util/List; method_67690 getElementWeights + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28886 method_28886 + p 0 instance + m (Lnet/minecraft/class_5819;)Ljava/util/List; method_16633 getElementIndicesInRandomOrder + p 1 random + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_3784; method_16631 getRandomElement + p 1 random + m (Lnet/minecraft/class_3485;)I method_19309 getHighestY + p 1 structureTemplateManager + m (Lnet/minecraft/class_3785;)Ljava/util/List; method_28888 method_28888 + p 0 pool + m (Lnet/minecraft/class_6880;Ljava/util/List;)V + p 1 fallback + p 2 elementWeights + m ()Lnet/minecraft/class_6880; method_46736 getFallback + m (Lnet/minecraft/class_6880;Ljava/util/List;Lnet/minecraft/class_3785$class_3786;)V + p 2 elementWeightsByGetters + p 1 fallback + p 3 projection +c net/minecraft/class_3785$class_3786 net/minecraft/structure/pool/StructurePool$Projection + f Lnet/minecraft/class_3542$class_7292; field_24956 CODEC + f Lcom/google/common/collect/ImmutableList; field_16685 processors + f Ljava/lang/String; field_16682 id + f Lnet/minecraft/class_3785$class_3786; field_16687 RIGID + f Lnet/minecraft/class_3785$class_3786; field_16686 TERRAIN_MATCHING + m ()Lcom/google/common/collect/ImmutableList; method_16636 getProcessors + m ()Ljava/lang/String; method_16635 getId + m (Ljava/lang/String;)Lnet/minecraft/class_3785$class_3786; method_16638 getById + p 0 id + m (Ljava/lang/String;ILjava/lang/String;Lcom/google/common/collect/ImmutableList;)V + p 4 processors + p 3 id +c net/minecraft/class_1122 net/minecraft/client/search/IdentifierSearchableIterator + f Ljava/util/Comparator; field_5492 lastIndexComparator + f Lcom/google/common/collect/PeekingIterator; field_5491 pathsIterator + f Lcom/google/common/collect/PeekingIterator; field_5490 namespacesIterator + m (Ljava/util/Iterator;Ljava/util/Iterator;Ljava/util/Comparator;)V + p 3 lastIndexComparator + p 2 pathsIterator + p 1 namespacesIterator +c net/minecraft/class_2454 net/minecraft/data/recipe/CookingRecipeJsonBuilder + f Lnet/minecraft/class_7709; field_40648 cookingCategory + f Ljava/util/Map; field_46150 criteria + f I field_11415 cookingTime + f Lnet/minecraft/class_1856; field_11418 input + f F field_11414 experience + f Lnet/minecraft/class_1874$class_3958; field_47504 recipeFactory + f Lnet/minecraft/class_1792; field_11417 output + f Ljava/lang/String; field_11419 group + f Lnet/minecraft/class_7800; field_40647 category + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_7709;Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;FILnet/minecraft/class_1874$class_3958;)V + p 2 cookingCategory + p 1 category + p 6 cookingTime + p 5 experience + p 4 input + p 3 output + p 7 recipeFactory + m (Lnet/minecraft/class_1856;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;FILnet/minecraft/class_1865;Lnet/minecraft/class_1874$class_3958;)Lnet/minecraft/class_2454; method_17801 create + p 6 recipeFactory + p 5 serializer + p 4 cookingTime + p 3 experience + p 2 output + p 1 category + p 0 input + m (Ljava/lang/String;)Lnet/minecraft/class_2454; method_35917 group + m (Lnet/minecraft/class_1856;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;FI)Lnet/minecraft/class_2454; method_17802 createSmelting + p 3 experience + p 4 cookingTime + p 0 input + p 1 category + p 2 output + m (Lnet/minecraft/class_1865;Lnet/minecraft/class_1935;)Lnet/minecraft/class_7709; method_46215 getCookingRecipeCategory + p 1 output + p 0 serializer + m (Lnet/minecraft/class_1856;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;FI)Lnet/minecraft/class_2454; method_10473 createBlasting + p 3 experience + p 2 output + p 4 cookingTime + p 1 category + p 0 input + m (Lnet/minecraft/class_5321;)V method_10471 validate + p 1 recipeKey + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_7709; method_46217 getBlastingRecipeCategory + p 0 output + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_7709; method_46216 getSmeltingRecipeCategory + p 0 output + m (Lnet/minecraft/class_1856;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;FI)Lnet/minecraft/class_2454; method_35916 createCampfireCooking + p 1 category + p 2 output + p 0 input + p 3 experience + p 4 cookingTime + m (Ljava/lang/String;Lnet/minecraft/class_175;)Lnet/minecraft/class_2454; method_10469 criterion + m (Lnet/minecraft/class_1856;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;FI)Lnet/minecraft/class_2454; method_35918 createSmoking + p 0 input + p 3 experience + p 4 cookingTime + p 1 category + p 2 output +c net/minecraft/class_1121 net/minecraft/client/search/IdentifierSearchProvider + f Ljava/util/Comparator; field_39199 lastIndexComparator + f Lnet/minecraft/class_7455; field_39200 idSearcher + m (Ljava/util/function/Function;Ljava/util/List;)V + p 2 values + p 1 identifiersGetter + m (Ljava/lang/String;)Ljava/util/List; method_43791 search + p 1 text + m (Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; method_43792 search + p 2 path + p 1 namespace +c net/minecraft/class_2456 net/minecraft/data/recipe/ComplexRecipeJsonBuilder + f Ljava/util/function/Function; field_47506 recipeFactory + m (Lnet/minecraft/class_8790;Lnet/minecraft/class_5321;)V method_10475 offerTo + p 2 recipeKey + p 1 exporter + m (Lnet/minecraft/class_8790;Ljava/lang/String;)V method_53820 offerTo + p 1 exporter + p 2 id + m (Ljava/util/function/Function;)V + p 1 recipeFactory + m (Ljava/util/function/Function;)Lnet/minecraft/class_2456; method_10476 create + p 0 recipeFactory +c net/minecraft/class_3788 net/minecraft/datafixer/fix/ChunkStatusFix2 + f Ljava/util/Map; field_16691 STATUS_MAP +c net/minecraft/class_2457 net/minecraft/block/RedstoneWireBlock + f Lcom/mojang/serialization/MapCodec; field_46422 CODEC + f [I field_24466 COLORS + f Lnet/minecraft/class_2754; field_11439 WIRE_CONNECTION_WEST + f Lnet/minecraft/class_2754; field_11437 WIRE_CONNECTION_SOUTH + f Lnet/minecraft/class_2754; field_11440 WIRE_CONNECTION_NORTH + f Lnet/minecraft/class_2758; field_11432 POWER + f Lnet/minecraft/class_2754; field_11436 WIRE_CONNECTION_EAST + f Lnet/minecraft/class_9906; field_52632 redstoneController + f Ljava/util/function/Function; field_55787 shapeFunction + f Lnet/minecraft/class_2680; field_24733 dotState + f Ljava/util/Map; field_11435 DIRECTION_TO_WIRE_CONNECTION_PROPERTY + f Z field_11438 wiresGivePower + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_27844 updateOffsetNeighbors + p 2 pos + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;ILnet/minecraft/class_2350;Lnet/minecraft/class_2350;FF)V method_27936 addPoweredParticles + p 0 world + p 1 random + p 4 perpendicular + p 5 direction + p 2 pos + p 3 color + p 6 minOffset + p 7 maxOffset + m (Lnet/minecraft/class_1937;)Z method_61745 areRedstoneExperimentsEnabled + p 0 world + m (Lnet/minecraft/class_2680;)Z method_28483 isNotConnected + p 0 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2773; method_10477 getRenderConnectionType + p 3 direction + p 1 world + p 2 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_10482 connectsTo + p 0 state + p 1 dir + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_27840 getPlacementState + p 1 world + p 3 pos + p 2 state + m ()Ljava/util/function/Function; method_66462 createShapeFunction + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_10479 updateNeighbors + p 2 pos + p 1 world + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Z)Lnet/minecraft/class_2773; method_27841 getRenderConnectionType + p 3 direction + p 2 pos + p 1 world + m ([I)V method_61747 method_61747 + p 0 colors + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)V method_28482 updateForNewState + p 1 world + p 2 pos + p 3 oldState + p 4 newState + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_9904;Z)V method_10485 update + p 5 blockAdded + p 2 pos + p 1 world + p 4 orientation + p 3 state + m (Lnet/minecraft/class_265;Ljava/util/Map;Ljava/util/Map;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66461 method_66461 + p 3 state + m (Lnet/minecraft/class_2680;)Z method_10484 connectsTo + p 0 state + m (I)I method_10487 getWireColor + p 0 powerLevel + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_27843 getDefaultWireState + p 2 state + p 1 world + p 3 pos + m (Lnet/minecraft/class_2680;)Z method_27846 isFullyConnected + p 0 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_27937 canRunOnTop + p 3 floor + p 2 pos + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)I method_61746 getStrongPower + p 1 world + p 2 pos +c net/minecraft/class_3781 net/minecraft/structure/pool/SinglePoolElement + f Ljava/util/Optional; field_52234 overrideLiquidSettings + f Ljava/util/Comparator; field_54804 JIGSAW_BLOCK_INFO_COMPARATOR + f Lcom/mojang/serialization/MapCodec; field_24952 CODEC + f Lnet/minecraft/class_6880; field_16674 processors + f Lcom/mojang/datafixers/util/Either; field_24015 location + f Lcom/mojang/serialization/Codec; field_24951 LOCATION_CODEC + m (Lnet/minecraft/class_3485;)Lnet/minecraft/class_3499; method_27233 getStructure + p 1 structureTemplateManager + m (Lnet/minecraft/class_3781;)Lnet/minecraft/class_6880; method_28881 method_28881 + p 0 pool + m (Lnet/minecraft/class_3781;)Ljava/util/Optional; method_61012 method_61012 + p 0 pool + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Z)Ljava/util/List; method_16614 getDataStructureBlocks + p 3 rotation + p 2 pos + p 1 structureTemplateManager + p 4 mirroredAndRotated + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; method_28882 locationGetter + m (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/class_6880;Lnet/minecraft/class_3785$class_3786;Ljava/util/Optional;)V + p 2 processors + p 1 location + p 4 overrideLiquidSettings + p 3 projection + m (Lcom/mojang/datafixers/util/Either;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_28877 encodeLocation + p 2 prefix + p 1 ops + p 0 location + m ()Lnet/minecraft/class_2960; method_67689 getIdOrThrow + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; method_28880 processorsGetter + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; method_61013 overrideLiquidSettingsGetter + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28878 method_28878 + p 0 instance + m (Lnet/minecraft/class_3781;)Lcom/mojang/datafixers/util/Either; method_28879 method_28879 + p 0 pool + m (Ljava/util/List;)V method_54782 sort + p 0 blocks + m (Lnet/minecraft/class_2470;Lnet/minecraft/class_3341;Lnet/minecraft/class_9822;Z)Lnet/minecraft/class_3492; method_16616 createPlacementData + p 4 keepJigsaws + p 3 liquidSettings + p 2 box + p 1 rotation +c net/minecraft/class_1126 net/minecraft/client/search/TextSearchProvider + f Lnet/minecraft/class_1129; field_39198 textSearcher + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/List;)V + p 1 textsGetter + p 2 identifiersGetter + p 3 values +c net/minecraft/class_2450 net/minecraft/data/recipe/ShapelessRecipeJsonBuilder + f Ljava/util/List; field_11394 inputs + f Ljava/lang/String; field_11398 group + f Lnet/minecraft/class_7871; field_53732 registryLookup + f Lnet/minecraft/class_1799; field_11396 output + f Ljava/util/Map; field_11393 criteria + f Lnet/minecraft/class_7800; field_40646 category + m (Lnet/minecraft/class_1856;I)Lnet/minecraft/class_2450; method_10453 input + p 2 amount + p 1 ingredient + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_2450; method_10454 input + p 1 item + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7800;Lnet/minecraft/class_1799;)Lnet/minecraft/class_2450; method_10447 create + p 0 registryLookup + p 1 category + p 2 output + m (Ljava/lang/String;)Lnet/minecraft/class_2450; method_10452 group + m (Lnet/minecraft/class_1935;I)Lnet/minecraft/class_2450; method_10449 input + p 1 item + p 2 amount + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;)Lnet/minecraft/class_2450; method_62770 create + p 0 registryLookup + p 2 output + p 1 category + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_2450; method_10446 input + p 1 tag + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;I)Lnet/minecraft/class_2450; method_10448 create + p 0 registryLookup + p 3 count + p 1 category + p 2 output + m (Lnet/minecraft/class_1856;)Lnet/minecraft/class_2450; method_10451 input + p 1 ingredient + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7800;Lnet/minecraft/class_1799;)V + p 1 registryLookup + p 2 category + p 3 output + m (Lnet/minecraft/class_5321;)V method_10445 validate + p 1 recipeKey + m (Ljava/lang/String;Lnet/minecraft/class_175;)Lnet/minecraft/class_2450; method_10442 criterion +c net/minecraft/class_3782 net/minecraft/structure/pool/ListPoolElement + f Lcom/mojang/serialization/MapCodec; field_24950 CODEC + f Ljava/util/List; field_16676 elements + m (Lnet/minecraft/class_3785$class_3786;Lnet/minecraft/class_3784;)V method_16620 method_16620 + p 1 element + m ()Ljava/util/List; method_67688 getElements + m (Lnet/minecraft/class_3785$class_3786;)V method_19307 setAllElementsProjection + p 1 projection + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28875 method_28875 + p 0 instance + m (Lnet/minecraft/class_3784;)Z method_35369 method_35369 + p 0 element + m (Ljava/util/List;Lnet/minecraft/class_3785$class_3786;)V + p 2 projection + p 1 elements + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_3784;)Lnet/minecraft/class_3341; method_35370 method_35370 + p 3 element + m (Lnet/minecraft/class_3782;)Ljava/util/List; method_28876 method_28876 + p 0 pool +c net/minecraft/class_1124 net/minecraft/client/search/SearchManager + f Lnet/minecraft/class_1124$class_1125; field_5494 ITEM_TAG + f Ljava/util/concurrent/CompletableFuture; field_51827 itemTagReloadFuture + f Ljava/util/Map; field_51829 reloaders + f Lnet/minecraft/class_1124$class_1125; field_5495 ITEM_TOOLTIP + f Lnet/minecraft/class_1124$class_1125; field_46200 RECIPE_OUTPUT + f Ljava/util/concurrent/CompletableFuture; field_51828 recipeOutputReloadFuture + f Ljava/util/concurrent/CompletableFuture; field_51826 itemTooltipReloadFuture + m (Lnet/minecraft/class_10352;Lnet/minecraft/class_2378;Lnet/minecraft/class_516;)Ljava/util/stream/Stream; method_64908 method_64908 + p 2 resultCollection + m (Lnet/minecraft/class_7225$class_7874;Ljava/util/List;)V method_60357 addItemTooltipReloader + p 2 stacks + p 1 registries + m (Lnet/minecraft/class_10352;Lnet/minecraft/class_10297;)Ljava/util/stream/Stream; method_64907 method_64907 + p 1 display + m (Lnet/minecraft/class_1792$class_9635;Lnet/minecraft/class_1836;Lnet/minecraft/class_1799;)Ljava/util/stream/Stream; method_60365 method_60365 + p 2 stack + m (Ljava/util/stream/Stream;Lnet/minecraft/class_1792$class_9635;Lnet/minecraft/class_1836;)Ljava/util/stream/Stream; method_60356 collectItemTooltips + p 2 type + p 1 context + p 0 stacks + m (Lnet/minecraft/class_2561;)Ljava/lang/String; method_60363 method_60363 + p 0 tooltip + m ()Lnet/minecraft/class_1129; method_60370 getItemTagReloadFuture + m (Lnet/minecraft/class_1799;)Ljava/util/stream/Stream; method_60351 method_60351 + p 0 stack + m ()Lnet/minecraft/class_1129; method_60372 getItemTooltipReloadFuture + m (Ljava/lang/String;)Z method_60354 method_60354 + p 0 string + m (Lnet/minecraft/class_299;Lnet/minecraft/class_1937;)V method_60352 addRecipeOutputReloader + p 2 world + p 1 recipeBook + m ()Lnet/minecraft/class_1129; method_60364 getRecipeOutputReloadFuture + m (Lnet/minecraft/class_1799;)Ljava/util/stream/Stream; method_60366 method_60366 + p 0 stack + m (Lnet/minecraft/class_1124$class_1125;Ljava/lang/Runnable;)V method_60353 addReloader + p 1 key + p 2 reloader + m (Ljava/util/List;)V method_60355 addItemTagReloader + p 1 stacks + m (Lnet/minecraft/class_10352;Lnet/minecraft/class_10297;)Ljava/util/stream/Stream; method_64910 method_64910 + p 1 display + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_1799;)Lnet/minecraft/class_2960; method_64909 method_64909 + p 1 stack + m (Lnet/minecraft/class_10352;Lnet/minecraft/class_1792$class_9635;Lnet/minecraft/class_1836;Lnet/minecraft/class_516;)Ljava/util/stream/Stream; method_60360 method_60360 + p 3 resultCollection + m ()V method_60348 refresh + m (Lnet/minecraft/class_1792$class_9635;Lnet/minecraft/class_1836;Lnet/minecraft/class_1799;)Ljava/util/stream/Stream; method_60349 method_60349 + p 2 stack +c net/minecraft/class_1124$class_1125 net/minecraft/client/search/SearchManager$Key +c net/minecraft/class_2452 net/minecraft/block/RailPlacementHelper + f Z field_11408 forbidCurves + f Ljava/util/List; field_11407 neighbors + f Lnet/minecraft/class_2680; field_11406 state + f Lnet/minecraft/class_1937; field_11409 world + f Lnet/minecraft/class_2241; field_11411 block + f Lnet/minecraft/class_2338; field_11410 pos + m (ZZLnet/minecraft/class_2768;)Lnet/minecraft/class_2452; method_10459 updateBlockState + p 2 forceUpdate + p 1 powered + p 3 railShape + m (Lnet/minecraft/class_2452;)V method_10461 computeRailShape + p 1 placementHelper + m (Lnet/minecraft/class_2452;)Z method_10464 isNeighbor + p 1 other + m ()Lnet/minecraft/class_2680; method_10462 getBlockState + m (Lnet/minecraft/class_2452;)Z method_10455 canConnect + p 1 placementHelper + m (Lnet/minecraft/class_2338;)Z method_10463 isNeighbor + p 1 pos + m (Lnet/minecraft/class_2338;)Z method_10465 canConnect + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 pos + p 3 state + p 1 world + m (Lnet/minecraft/class_2338;)Z method_10456 isVerticallyNearRail + p 1 pos + m ()I method_10460 getNeighborCount + m (Lnet/minecraft/class_2768;)V method_10466 computeNeighbors + p 1 shape + m ()Ljava/util/List; method_10457 getNeighbors + m ()V method_10467 updateNeighborPositions + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2452; method_10458 getNeighboringRail + p 1 pos +c net/minecraft/class_3784 net/minecraft/structure/pool/StructurePoolElement + f Lcom/mojang/serialization/Codec; field_24953 CODEC + f Lnet/minecraft/class_6880; field_40924 EMPTY_PROCESSORS + f Lnet/minecraft/class_3785$class_3786; field_16862 projection + m (Ljava/lang/String;Lnet/minecraft/class_6880;Lnet/minecraft/class_9822;)Ljava/util/function/Function; method_61016 ofProcessedSingle + p 0 id + p 1 processorListEntry + p 2 liquidSettings + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_3499$class_3501;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;)V method_16756 method_16756 + p 1 world + p 2 structureBlockInfo + p 3 pos + p 4 rotation + p 5 random + p 6 box + m (Ljava/lang/String;Lnet/minecraft/class_6880;Lnet/minecraft/class_3785$class_3786;)Lnet/minecraft/class_5188; method_30437 method_30437 + p 2 projection + m (Ljava/lang/String;Lnet/minecraft/class_6880;)Ljava/util/function/Function; method_30435 ofProcessedSingle + p 1 processorListEntry + p 0 id + m (Ljava/lang/String;Lnet/minecraft/class_6880;Lnet/minecraft/class_9822;Lnet/minecraft/class_3785$class_3786;)Lnet/minecraft/class_3781; method_61017 method_61017 + p 3 projection + m (Ljava/lang/String;)Ljava/util/function/Function; method_30434 ofSingle + p 0 id + m (Ljava/lang/String;Lnet/minecraft/class_9822;Lnet/minecraft/class_3785$class_3786;)Lnet/minecraft/class_3781; method_61015 method_61015 + p 2 projection + m (Ljava/lang/String;Lnet/minecraft/class_3785$class_3786;)Lnet/minecraft/class_5188; method_40165 method_40165 + p 1 projection + m (Lnet/minecraft/class_3785$class_3786;Ljava/util/function/Function;)Lnet/minecraft/class_3784; method_30424 method_30424 + p 1 elementGetter + m (Ljava/lang/String;Lnet/minecraft/class_6880;Lnet/minecraft/class_3785$class_3786;)Lnet/minecraft/class_3781; method_30427 method_30427 + p 2 projection + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;)Lnet/minecraft/class_3341; method_16628 getBoundingBox + p 2 pos + p 3 rotation + p 1 structureTemplateManager + m (Ljava/lang/String;Lnet/minecraft/class_3785$class_3786;)Lnet/minecraft/class_3781; method_30428 method_30428 + p 1 projection + m (Ljava/util/List;Lnet/minecraft/class_3785$class_3786;)Lnet/minecraft/class_3782; method_30430 method_30430 + p 1 projection + m (Lnet/minecraft/class_3785$class_3786;)Lnet/minecraft/class_3784; method_16622 setProjection + p 1 projection + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; method_28883 projectionGetter + m (Lnet/minecraft/class_3785$class_3786;)Lnet/minecraft/class_3777; method_30433 method_30433 + p 0 projection + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2470;)Lnet/minecraft/class_2382; method_16601 getStart + p 2 rotation + p 1 structureTemplateManager + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_5281;Lnet/minecraft/class_5138;Lnet/minecraft/class_2794;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_3341;Lnet/minecraft/class_5819;Lnet/minecraft/class_9822;Z)Z method_16626 generate + p 7 rotation + p 8 box + p 9 random + p 10 liquidSettings + p 11 keepJigsaws + p 1 structureTemplateManager + p 2 world + p 3 structureAccessor + p 4 chunkGenerator + p 5 pos + p 6 pivot + m ()Ljava/util/function/Function; method_30438 ofEmpty + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_3785$class_3786;)Lnet/minecraft/class_3776; method_30422 method_30422 + p 1 projection + m (Ljava/lang/String;Lnet/minecraft/class_6880;)Ljava/util/function/Function; method_30426 ofProcessedLegacySingle + p 0 id + p 1 processorListEntry + m ()Lnet/minecraft/class_3785$class_3786; method_16624 getProjection + m (Ljava/lang/String;Lnet/minecraft/class_9822;)Ljava/util/function/Function; method_61014 ofSingle + p 0 id + p 1 liquidSettings + m ()Lnet/minecraft/class_3816; method_16757 getType + m ()I method_19308 getGroundLevelDelta + m (Lnet/minecraft/class_6880;)Ljava/util/function/Function; method_30421 ofFeature + p 0 placedFeatureEntry + m (Ljava/lang/String;)Ljava/util/function/Function; method_30425 ofLegacySingle + p 0 id + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_5819;)Ljava/util/List; method_16627 getStructureBlockInfos + p 3 rotation + p 2 pos + p 4 random + p 1 structureTemplateManager + m (Lnet/minecraft/class_3785$class_3786;)V + p 1 projection + m (Ljava/util/List;)Ljava/util/function/Function; method_30429 ofList + p 0 elementGetters +c net/minecraft/class_2453 net/minecraft/block/RedstoneLampBlock + f Lnet/minecraft/class_2746; field_11413 LIT + f Lcom/mojang/serialization/MapCodec; field_46423 CODEC +c net/minecraft/class_1118 net/minecraft/client/sound/AmbientSoundLoops +c net/minecraft/class_1118$class_1119 net/minecraft/client/sound/AmbientSoundLoops$MusicLoop + f Lnet/minecraft/class_746; field_5482 player + m (Lnet/minecraft/class_746;Lnet/minecraft/class_3414;)V + p 2 soundEvent + p 1 player +c net/minecraft/class_1118$class_1120 net/minecraft/client/sound/AmbientSoundLoops$Underwater + f Lnet/minecraft/class_746; field_5483 player + f I field_33012 MAX_TRANSITION_TIMER + f I field_5484 transitionTimer + m (Lnet/minecraft/class_746;)V + p 1 player +c net/minecraft/class_1117 net/minecraft/client/sound/TickableSoundInstance + m ()V method_16896 tick + m ()Z method_4793 isDone +c net/minecraft/class_1116 net/minecraft/client/sound/AmbientSoundPlayer + f I field_33011 DEFAULT_TICKS_UNTIL_PLAY + f I field_5480 ticksUntilPlay + f F field_33010 MAX_TICKS_FOR_ULTRA_RARE_SOUND_LOOP + f Lnet/minecraft/class_1144; field_5479 soundManager + f Lnet/minecraft/class_746; field_5481 player + f F field_33009 MAX_TICKS_FOR_RARE_SOUND_LOOP + f F field_33008 MAX_TICKS_FOR_BASE_SOUND_LOOP + m (Lnet/minecraft/class_746;Lnet/minecraft/class_1144;)V + p 1 player + p 2 soundManager +c net/minecraft/class_3778 net/minecraft/structure/pool/StructurePoolBasedGenerator + f I field_52657 HEIGHT_NOT_SET + f Lorg/slf4j/Logger; field_16665 LOGGER + m (Lnet/minecraft/class_7138;IZLnet/minecraft/class_2794;Lnet/minecraft/class_3485;Lnet/minecraft/class_5539;Lnet/minecraft/class_5819;Lnet/minecraft/class_2378;Lnet/minecraft/class_3790;Ljava/util/List;Lnet/minecraft/class_265;Lnet/minecraft/class_8891;Lnet/minecraft/class_9822;)V method_27230 generate + p 6 random + p 5 heightLimitView + p 4 structureTemplateManager + p 3 chunkGenerator + p 2 modifyBoundingBox + p 1 maxSize + p 0 noiseConfig + p 12 liquidSettings + p 11 aliasLookup + p 10 pieceShape + p 9 pieces + p 8 firstPiece + p 7 structurePoolRegistry + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_45548 method_45548 + p 0 key + m (Lnet/minecraft/class_3784;Lnet/minecraft/class_2960;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_3485;Lnet/minecraft/class_2919;)Ljava/util/Optional; method_43566 findStartingJigsawPos + p 4 structureManager + p 5 random + p 2 pos + p 3 rotation + p 0 pool + p 1 id + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_8891;Lnet/minecraft/class_5321;)Ljava/util/Optional; method_55604 method_55604 + p 2 key + m (Lnet/minecraft/class_5539;Lnet/minecraft/class_9778;Lnet/minecraft/class_3341;)Z method_65173 exceedsHeightLimit + p 0 world + p 1 padding + p 2 box + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_6880;Ljava/util/Optional;ILnet/minecraft/class_2338;ZLjava/util/Optional;Lnet/minecraft/class_5434$class_11600;Lnet/minecraft/class_8891;Lnet/minecraft/class_9778;Lnet/minecraft/class_9822;)Ljava/util/Optional; method_30419 generate + p 0 context + p 1 structurePool + p 10 liquidSettings + p 8 aliasLookup + p 9 dimensionPadding + p 6 projectStartToHeightmap + p 7 maxDistanceFromCenter + p 4 pos + p 5 useExpansionHack + p 2 id + p 3 size + m (Lnet/minecraft/class_6880;)Z method_43730 method_43730 + p 0 biome + m (Lnet/minecraft/class_3790;IILnet/minecraft/class_5434$class_11600;ILnet/minecraft/class_5539;Lnet/minecraft/class_9778;ILnet/minecraft/class_3341;Lnet/minecraft/class_3195$class_7149;ZLnet/minecraft/class_2794;Lnet/minecraft/class_3485;Lnet/minecraft/class_2919;Lnet/minecraft/class_2378;Lnet/minecraft/class_8891;Lnet/minecraft/class_9822;Lnet/minecraft/class_6626;)V method_39824 method_39824 + p 17 collector + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6880;Lnet/minecraft/class_2960;ILnet/minecraft/class_2338;Z)Z method_43729 generate + p 0 world + p 5 keepJigsaws + p 1 structurePool + p 2 id + p 3 size + p 4 pos +c net/minecraft/class_3778$class_4181 net/minecraft/structure/pool/StructurePoolBasedGenerator$ShapedPoolStructurePiece + f Lorg/apache/commons/lang3/mutable/MutableObject; comp_2018 pieceShape + f Lnet/minecraft/class_3790; comp_2017 piece + f I comp_2019 depth + m (Lnet/minecraft/class_3790;Lorg/apache/commons/lang3/mutable/MutableObject;I)V + p 2 pieceShape + p 1 piece + p 3 currentSize + m ()Lorg/apache/commons/lang3/mutable/MutableObject; comp_2018 pieceShape + m ()Lnet/minecraft/class_3790; comp_2017 piece + m ()I comp_2019 depth +c net/minecraft/class_3778$class_4182 net/minecraft/structure/pool/StructurePoolBasedGenerator$StructurePoolGenerator + f Lnet/minecraft/class_8917; field_18706 structurePieces + f Lnet/minecraft/class_2378; field_25852 registry + f Lnet/minecraft/class_2794; field_18702 chunkGenerator + f Ljava/util/List; field_18704 children + f I field_18700 maxSize + f Lnet/minecraft/class_5819; field_18705 random + f Lnet/minecraft/class_3485; field_18703 structureTemplateManager + m (Lnet/minecraft/class_2378;ILnet/minecraft/class_2794;Lnet/minecraft/class_3485;Ljava/util/List;Lnet/minecraft/class_5819;)V + p 2 maxSize + p 1 registry + p 6 random + p 5 children + p 4 structureTemplateManager + p 3 chunkGenerator + m (Lnet/minecraft/class_3790;Lorg/apache/commons/lang3/mutable/MutableObject;IZLnet/minecraft/class_5539;Lnet/minecraft/class_7138;Lnet/minecraft/class_8891;Lnet/minecraft/class_9822;)V method_19306 generatePiece + p 4 modifyBoundingBox + p 3 depth + p 2 pieceShape + p 1 piece + p 8 liquidSettings + p 7 aliasLookup + p 6 noiseConfig + p 5 world + m (Lnet/minecraft/class_6880;)Ljava/lang/Integer; method_31114 method_31114 + p 1 entry + m (Lnet/minecraft/class_6880;)Ljava/lang/Integer; method_31113 method_31113 + p 1 entry + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_8891;Lnet/minecraft/class_3499$class_10326;)I method_19305 method_19305 + p 3 jigsawInfo + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_6880; method_31115 method_31115 + p 0 entry + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_46730 method_46730 + p 0 key +c net/minecraft/class_2447 net/minecraft/data/recipe/ShapedRecipeJsonBuilder + f I field_11378 count + f Z field_42956 showNotification + f Lnet/minecraft/class_1792; field_11380 output + f Lnet/minecraft/class_7871; field_53731 registryLookup + f Lnet/minecraft/class_7800; field_40645 category + f Ljava/lang/String; field_11381 group + f Ljava/util/List; field_11377 pattern + f Ljava/util/Map; field_11376 inputs + f Ljava/util/Map; field_46149 criteria + m (Ljava/lang/Character;Lnet/minecraft/class_1935;)Lnet/minecraft/class_2447; method_10434 input + p 1 c + p 2 item + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;)Lnet/minecraft/class_2447; method_10437 create + p 1 category + p 0 registryLookup + p 2 output + m (Ljava/lang/Character;Lnet/minecraft/class_6862;)Lnet/minecraft/class_2447; method_10433 input + p 2 tag + p 1 c + m (Ljava/lang/String;Lnet/minecraft/class_175;)Lnet/minecraft/class_2447; method_10429 criterion + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_8957; method_10432 validate + p 1 recipeKey + m (Ljava/lang/String;)Lnet/minecraft/class_2447; method_10439 pattern + p 1 patternStr + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;I)Lnet/minecraft/class_2447; method_10436 create + p 2 output + p 3 count + p 0 registryLookup + p 1 category + m (Ljava/lang/String;)Lnet/minecraft/class_2447; method_10435 group + m (Ljava/lang/Character;Lnet/minecraft/class_1856;)Lnet/minecraft/class_2447; method_10428 input + p 2 ingredient + p 1 c + m (Z)Lnet/minecraft/class_2447; method_49380 showNotification + p 1 showNotification + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;I)V + p 3 output + p 4 count + p 1 registryLookup + p 2 category +c net/minecraft/class_2449 net/minecraft/block/RedstoneOreBlock + f Lcom/mojang/serialization/MapCodec; field_46421 CODEC + f Lnet/minecraft/class_2746; field_11392 LIT + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_10441 light + p 2 pos + p 0 state + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_10440 spawnParticles + p 0 world + p 1 pos +c net/minecraft/class_3790 net/minecraft/structure/PoolStructurePiece + f Lnet/minecraft/class_9822; field_52228 liquidSettings + f Lnet/minecraft/class_2338; field_16695 pos + f Lnet/minecraft/class_3784; field_16693 poolElement + f Lnet/minecraft/class_3485; field_17660 structureTemplateManager + f I field_16692 groundLevelDelta + f Ljava/util/List; field_16696 junctions + f Lnet/minecraft/class_2470; field_16694 rotation + m ()Lnet/minecraft/class_2338; method_16648 getPos + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5138;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2338;Z)V method_27236 generate + p 4 random + p 3 chunkGenerator + p 2 structureAccessor + p 1 world + p 7 keepJigsaws + p 6 pivot + p 5 boundingBox + m ()Lnet/minecraft/class_3784; method_16644 getPoolElement + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_2520;)V method_16649 method_16649 + p 2 junctionTag + m ()Ljava/util/List; method_16645 getJunctions + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_3784;Lnet/minecraft/class_2338;ILnet/minecraft/class_2470;Lnet/minecraft/class_3341;Lnet/minecraft/class_9822;)V + p 4 groundLevelDelta + p 5 rotation + p 6 boundingBox + p 7 liquidSettings + p 1 structureTemplateManager + p 2 poolElement + p 3 pos + m (Lnet/minecraft/class_6625;Lnet/minecraft/class_2487;)V + p 1 context + p 2 nbt + m (Lnet/minecraft/class_3780;)V method_16647 addJunction + p 1 junction + m ()I method_16646 getGroundLevelDelta +c net/minecraft/class_3791 net/minecraft/structure/PillagerOutpostGenerator + f Lnet/minecraft/class_5321; field_26252 STRUCTURE_POOLS + m (Lnet/minecraft/class_7891;)V method_27235 bootstrap + p 0 poolRegisterable +c net/minecraft/class_1133 net/minecraft/client/network/LanServerPinger + c Used to send UDP multicasts to notify other clients of a local game on the same network.\n\n

These multicasts will always be sent to {@code 224.0.2.60:4445} where other clients can listen for local games. + f Z field_5527 running + f Ljava/net/DatagramSocket; field_5528 socket + f Ljava/lang/String; field_5530 addressPort + f Ljava/util/concurrent/atomic/AtomicInteger; field_5525 THREAD_ID + f Ljava/lang/String; field_5526 motd + f Ljava/lang/String; field_33016 PING_ADDRESS + f Lorg/slf4j/Logger; field_5529 LOGGER + f I field_33017 PING_PORT + f J field_33018 PING_INTERVAL + m (Ljava/lang/String;)Ljava/lang/String; method_4819 parseAnnouncementMotd + p 0 announcement + m (Ljava/lang/String;Ljava/lang/String;)V + p 2 addressPort + p 1 motd + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_4818 createAnnouncement + c Creates a server announcement.\n\n

\n{@code [MOTD]} // Specifies the beginning of the message of the day\n{@code A message of the day} // The message of the day\n{@code [/MOTD]} // Specifies the end of the message of the day.\n{@code [AD]} // Specifies the beginning of the address and the port of the local server.\n{@code the address of the local server.} // Such as {@code 192.146.2.1:23132}\n{@code [/AD]} // Specifies the end of the address and port of the local server.\n
\n\n

An example of a complete announcement:\n{@code [MOTD]A Player's Server[/MOTD][AD]192.168.0.33[/AD]} + p 0 motd + c the message of the day + p 1 addressPort + c the address of the server including the IP address and port + m (Ljava/lang/String;)Ljava/lang/String; method_4820 parseAnnouncementAddressPort + p 0 announcement +c net/minecraft/class_2465 net/minecraft/block/PillarBlock + f Lcom/mojang/serialization/MapCodec; field_46430 CODEC + f Lnet/minecraft/class_2754; field_11459 AXIS + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2470;)Lnet/minecraft/class_2680; method_36377 changeRotation + p 0 state + p 1 rotation +c net/minecraft/class_1132 net/minecraft/server/integrated/IntegratedServer + f Lnet/minecraft/class_12185; field_63624 gizmoCollector + f Z field_5524 paused + f Lorg/slf4j/Logger; field_5520 LOGGER + f Lnet/minecraft/class_310; field_5518 client + f Ljava/util/UUID; field_5521 localPlayerUuid + f Lnet/minecraft/class_1133; field_5519 lanPinger + f Ljava/util/List; field_63623 gizmoEntries + f I field_5522 lanPort + f Lnet/minecraft/class_1934; field_28075 forcedGameMode + f I field_34965 simulationDistance + m ()Lnet/minecraft/class_12086; method_75490 getFunctionPermissions + m ()Ljava/util/Collection; method_75491 getGizmoEntries + m ()V method_36439 incrementTotalWorldTimeStat + m ()Lnet/minecraft/class_9191; method_56881 getDebugSampleLog + m ()V method_57823 checkLowDiskSpaceWarning + m (Ljava/util/UUID;)V method_4817 setLocalPlayerUuid + p 1 localPlayerUuid + m (Ljava/lang/Thread;Lnet/minecraft/class_310;Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_3283;Lnet/minecraft/class_6904;Lnet/minecraft/class_7497;Lnet/minecraft/class_11545;)V + p 1 serverThread + p 2 client + p 3 session + p 4 dataPackManager + p 5 saveLoader + p 6 apiServices + p 7 chunkLoadProgress +c net/minecraft/class_3797 net/minecraft/MinecraftVersion + f Lnet/minecraft/class_6489; field_25319 DEVELOPMENT + f Lorg/slf4j/Logger; field_16741 LOGGER + m (Ljava/lang/String;Ljava/lang/String;Z)Lnet/minecraft/class_6489; method_73081 create + p 0 id + p 1 name + p 2 stable + m ()Lnet/minecraft/class_6489; method_16672 create + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_6489; method_73080 create + p 0 id + p 1 name + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_6489; method_70964 fromJson + p 0 json +c net/minecraft/class_2466 net/minecraft/data/tag/vanilla/VanillaBlockTagProvider + m (Lnet/minecraft/class_2248;)Z method_51274 method_51274 + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5321; method_46837 method_46837 + p 0 block + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 2 registriesFuture + p 1 output +c net/minecraft/class_3798 net/minecraft/structure/rule/TagMatchRuleTest + f Lnet/minecraft/class_6862; field_16747 tag + f Lcom/mojang/serialization/MapCodec; field_25014 CODEC + m (Lnet/minecraft/class_3798;)Lnet/minecraft/class_6862; method_28999 method_28999 + p 0 ruleTest + m (Lnet/minecraft/class_6862;)V + p 1 tag +c net/minecraft/class_1131 net/minecraft/client/network/LanServerInfo + f Ljava/lang/String; field_5517 addressPort + f J field_5516 lastTimeMillis + f Ljava/lang/String; field_5515 motd + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 motd + p 2 addressPort + m ()V method_4814 updateLastTime + m ()Ljava/lang/String; method_4813 getMotd + m ()Ljava/lang/String; method_4812 getAddressPort +c net/minecraft/class_2467 net/minecraft/data/tag/vanilla/VanillaEntityTypeTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registriesFuture + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_5321; method_46824 method_46824 + p 0 entityType +c net/minecraft/class_1130 net/minecraft/server/integrated/IntegratedPlayerManager + f Lorg/slf4j/Logger; field_60482 LOGGER + f Lnet/minecraft/class_2487; field_5514 userData + m ()Lnet/minecraft/class_1132; method_4811 getServer + m (Lnet/minecraft/class_1132;Lnet/minecraft/class_7780;Lnet/minecraft/class_29;)V + p 1 server + p 2 registryManager + p 3 saveHandler +c net/minecraft/class_2461 net/minecraft/data/dev/NbtProvider + f Lnet/minecraft/class_7784; field_40661 output + f Lorg/slf4j/Logger; field_11450 LOGGER + f Ljava/lang/Iterable; field_40660 paths + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_46583 method_46583 + p 0 future + m (Ljava/nio/file/Path;)Z method_10495 method_10495 + p 0 path + m (Lnet/minecraft/class_7403;Ljava/nio/file/Path;Ljava/lang/String;)V method_32234 writeTo + p 2 content + p 1 path + p 0 writer + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/lang/String; method_10496 getLocation + p 1 filePath + p 0 inputPath + m (Lnet/minecraft/class_7403;Ljava/nio/file/Path;Ljava/lang/String;Ljava/nio/file/Path;)Ljava/nio/file/Path; method_10493 convertNbtToSnbt + p 2 filename + p 3 outputPath + p 0 writer + p 1 inputPath + m (Lnet/minecraft/class_7784;Ljava/util/Collection;)V + p 2 paths + p 1 output + m (Lnet/minecraft/class_7403;Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_46581 method_46581 + p 3 path +c net/minecraft/class_3793 net/minecraft/structure/processor/BlockIgnoreStructureProcessor + f Lnet/minecraft/class_3793; field_16719 IGNORE_AIR + f Lnet/minecraft/class_3793; field_16718 IGNORE_STRUCTURE_BLOCKS + f Lcom/mojang/serialization/MapCodec; field_24998 CODEC + f Lcom/google/common/collect/ImmutableList; field_16720 blocks + f Lnet/minecraft/class_3793; field_16721 IGNORE_AIR_AND_STRUCTURE_BLOCKS + m (Lnet/minecraft/class_3793;)Ljava/util/List; method_28968 method_28968 + p 0 processor + m (Ljava/util/List;)V + p 1 blocks +c net/minecraft/class_2462 net/minecraft/block/RepeaterBlock + f Lcom/mojang/serialization/MapCodec; field_46426 CODEC + f Lnet/minecraft/class_2758; field_11451 DELAY + f Lnet/minecraft/class_2746; field_11452 LOCKED +c net/minecraft/class_3794 net/minecraft/structure/processor/JigsawReplacementStructureProcessor + f Lorg/slf4j/Logger; field_43332 LOGGER + f Lcom/mojang/serialization/MapCodec; field_25003 CODEC + f Lnet/minecraft/class_3794; field_16871 INSTANCE +c net/minecraft/class_2463 net/minecraft/data/SnbtProvider + f Lnet/minecraft/class_7784; field_40662 output + f Ljava/lang/Iterable; field_40663 paths + f Ljava/util/List; field_20309 write + f Lorg/slf4j/Logger; field_11454 LOGGER + m (Ljava/nio/file/Path;Lnet/minecraft/class_7403;Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_46587 method_46587 + p 4 path + m (Ljava/nio/file/Path;Ljava/lang/String;)Lnet/minecraft/class_2463$class_4511; method_22144 toCompressedNbt + p 2 name + p 1 path + m (Lnet/minecraft/class_7784;Ljava/lang/Iterable;)V + p 2 paths + p 1 output + m (Lnet/minecraft/class_2463$class_4460;)Lnet/minecraft/class_2463; method_21672 addWriter + p 1 tweaker + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_2463$class_4511;Ljava/nio/file/Path;)V method_10497 write + p 2 data + p 1 cache + p 3 root + m (Ljava/nio/file/Path;)Z method_10499 method_10499 + p 0 path + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/lang/String; method_10500 getFileName + p 1 root + p 2 file + m (Ljava/lang/String;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_21673 write + p 2 compound + p 1 key + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_46589 method_46589 + p 0 future +c net/minecraft/class_2463$class_5621 net/minecraft/data/SnbtProvider$CompressionException + m (Ljava/nio/file/Path;Ljava/lang/Throwable;)V + p 1 path + p 2 cause +c net/minecraft/class_2463$class_4511 net/minecraft/data/SnbtProvider$CompressedData + f Lcom/google/common/hash/HashCode; comp_783 sha1 + f Ljava/lang/String; comp_780 name + f [B comp_781 bytes + m ()Lcom/google/common/hash/HashCode; comp_783 sha1 + m ()Ljava/lang/String; comp_780 name + m ()[B comp_781 bytes + m (Ljava/lang/String;[BLcom/google/common/hash/HashCode;)V + p 2 bytes + p 1 name + p 3 sha1 +c net/minecraft/class_2463$class_4460 net/minecraft/data/SnbtProvider$Tweaker + m (Ljava/lang/String;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_21674 write + p 2 nbt + p 1 name +c net/minecraft/class_3795 net/minecraft/structure/processor/GravityStructureProcessor + f I field_16725 offset + f Lcom/mojang/serialization/MapCodec; field_25002 CODEC + f Lnet/minecraft/class_2902$class_2903; field_16723 heightmap + m (Lnet/minecraft/class_3795;)Ljava/lang/Integer; method_28973 method_28973 + p 0 processor + m (Lnet/minecraft/class_3795;)Lnet/minecraft/class_2902$class_2903; method_28974 method_28974 + p 0 processor + m (Lnet/minecraft/class_2902$class_2903;I)V + p 2 offset + p 1 heightmap + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28972 method_28972 + p 0 instance +c net/minecraft/class_1134 net/minecraft/client/network/LanServerQueryManager + f Lorg/slf4j/Logger; field_5532 LOGGER + f Ljava/util/concurrent/atomic/AtomicInteger; field_5531 THREAD_ID +c net/minecraft/class_1134$class_1136 net/minecraft/client/network/LanServerQueryManager$LanServerEntryList + f Z field_5537 dirty + f Ljava/util/List; field_5536 serverEntries + m ()Ljava/util/List; method_45912 getEntriesIfUpdated + m (Ljava/lang/String;Ljava/net/InetAddress;)V method_4824 addServer + p 2 address + p 1 announcement +c net/minecraft/class_1134$class_1135 net/minecraft/client/network/LanServerQueryManager$LanServerDetector + f Ljava/net/InetAddress; field_5534 multicastAddress + f Ljava/net/MulticastSocket; field_5535 socket + f Lnet/minecraft/class_1134$class_1136; field_5533 entryList + m (Lnet/minecraft/class_1134$class_1136;)V + p 1 entryList +c net/minecraft/class_2464 net/minecraft/block/BlockRenderType + f Lnet/minecraft/class_2464; field_11458 MODEL + f Lnet/minecraft/class_2464; field_11455 INVISIBLE +c net/minecraft/class_1129 net/minecraft/client/search/SearchProvider + c A functional interface that provides searching. + m (Ljava/lang/String;)Ljava/util/List; method_4810 findAll + c {@return the search result of {@code text}} + p 1 text +c net/minecraft/class_1128 net/minecraft/client/search/SuffixArray + c Provides an efficient way to search for a text in multiple texts. + f Z field_5508 PRINT_COMPARISONS + f Z field_5507 PRINT_ARRAY + f I field_5502 maxTextLength + f Ljava/util/List; field_5503 objects + f Lit/unimi/dsi/fastutil/ints/IntList; field_5509 textStarts + f Lit/unimi/dsi/fastutil/ints/IntList; field_5506 offsetInText + f Lorg/slf4j/Logger; field_5510 LOGGER + f Lit/unimi/dsi/fastutil/ints/IntList; field_5504 suffixIndexToObjectIndex + f Lit/unimi/dsi/fastutil/ints/IntList; field_5505 characters + m (Ljava/lang/String;I)I method_4805 compare + p 1 string + p 2 suffixIndex + m (Ljava/lang/Object;Ljava/lang/String;)V method_4806 add + c Adds a text with the corresponding object.\n\n

You are not allowed to call this method after calling {@link #build()} method.\n\n

Takes O({@code text.length()}) time. + p 1 object + p 2 text + m (I)Ljava/lang/String; method_4808 getDebugString + p 1 suffixIndex + m ([I[III)I method_38937 method_38937 + p 2 a + p 3 b + m ([I[I[III)V method_4803 method_4803 + p 3 i + p 4 j + m ()V method_4807 build + c Builds a suffix array with added texts.\n\n

You are not allowed to call this method multiple times.\n\n

Takes O(N * log N * log M) time on average where N is the sum of all text\nlength added, and M is the maximum text length added. + m (Ljava/lang/String;)Ljava/util/List; method_4804 findAll + c Retrieves all objects of which corresponding texts contain {@code text}.\n\n

You have to call {@link #build()} method before calling this method.\n\n

Takes O({@code text.length()} * log N) time to find objects where N is the\nsum of all text length added. Takes O(X + Y * log Y) time to collect found\nobjects into a list where X is the number of occurrences of {@code text} in all\ntexts added, and Y is the number of found objects. + p 1 text + m ()V method_4809 printArray +c net/minecraft/class_1127 net/minecraft/client/search/TextSearchableIterator + f Lcom/google/common/collect/PeekingIterator; field_5500 textsIterator + f Ljava/util/Comparator; field_5501 lastIndexComparator + f Lcom/google/common/collect/PeekingIterator; field_5499 idPathsIterator + m (Ljava/util/Iterator;Ljava/util/Iterator;Ljava/util/Comparator;)V + p 3 lastIndexComparator + p 2 textsIterator + p 1 idPathsIterator +c net/minecraft/class_3789 net/minecraft/structure/BuriedTreasureGenerator +c net/minecraft/class_3789$class_3339 net/minecraft/structure/BuriedTreasureGenerator$Piece + m (Lnet/minecraft/class_2338;)V + p 1 pos + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_2680;)Z method_14655 isLiquid + p 1 state +c net/minecraft/class_2458 net/minecraft/block/WallRedstoneTorchBlock + f Lnet/minecraft/class_2754; field_11443 FACING + f Lcom/mojang/serialization/MapCodec; field_46425 CODEC + f Lnet/minecraft/class_2746; field_11444 LIT +c net/minecraft/class_2459 net/minecraft/block/RedstoneTorchBlock + f Lcom/mojang/serialization/MapCodec; field_46424 CODEC + f Ljava/util/Map; field_11445 BURNOUT_MAP + f Lnet/minecraft/class_2746; field_11446 LIT + f I field_31230 SCHEDULED_TICK_DELAY + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Z)Z method_10489 isBurnedOut + p 2 addNew + p 1 pos + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_61749 update + p 2 pos + p 3 state + p 1 world + m (Lnet/minecraft/class_1922;)Ljava/util/List; method_20453 method_20453 + p 0 worldx + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_10488 shouldUnpower + p 1 world + p 2 pos + p 3 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;)Lnet/minecraft/class_9904; method_61748 getEmissionOrientation + p 2 state + p 1 world +c net/minecraft/class_2459$class_2460 net/minecraft/block/RedstoneTorchBlock$BurnoutEntry + f J field_11447 time + f Lnet/minecraft/class_2338; field_11448 pos + m (Lnet/minecraft/class_2338;J)V + p 1 pos + p 2 time +c net/minecraft/class_10947 net/minecraft/network/state/ContextAwareNetworkStateFactory + m (Ljava/util/function/Function;Ljava/lang/Object;)Lnet/minecraft/class_9127; method_68875 bind + p 1 registryBinder + p 2 context +c net/minecraft/class_10945 net/minecraft/network/packet/PacketCodecModifier + m (Lnet/minecraft/class_9139;Ljava/lang/Object;)Lnet/minecraft/class_9139; apply apply + p 1 packetCodec + p 2 context +c net/minecraft/class_10946 net/minecraft/network/state/NetworkStateFactory + m (Ljava/util/function/Function;)Lnet/minecraft/class_9127; method_68874 bind + p 1 registryBinder +c net/minecraft/class_3763 net/minecraft/entity/raid/RaiderEntity + f I field_16997 outOfRaidCounter + f Z field_57748 DEFAULT_ABLE_TO_JOIN_RAID + f Lnet/minecraft/class_3765; field_16599 raid + f Z field_16602 ableToJoinRaid + f Lnet/minecraft/class_2940; field_19032 CELEBRATING + f I field_57747 DEFAULT_WAVE + f I field_16601 wave + f Ljava/util/function/Predicate; field_16600 OBTAINABLE_OMINOUS_BANNER_PREDICATE + m (Lnet/minecraft/class_1542;)Z method_16483 method_16483 + p 0 itemEntity + m (Z)V method_16480 setAbleToJoinRaid + p 1 ableToJoinRaid + m (I)V method_16835 setOutOfRaidCounter + p 1 outOfRaidCounter + m (Lnet/minecraft/class_11372;I)V method_67376 method_67376 + p 1 raidId + m (I)V method_16477 setWave + p 1 wave + m ()Lnet/minecraft/class_3414; method_20033 getCelebratingSound + m (Lnet/minecraft/class_3765;)V method_16476 setRaid + p 1 raid + m (Z)V method_20036 setCelebrating + p 1 celebrating + m ()Z method_20034 isCelebrating + m ()Z method_58647 hasRaid + m ()Z method_16482 hasActiveRaid + m ()Lnet/minecraft/class_3765; method_16478 getRaid + m ()I method_16486 getWave + m (Lnet/minecraft/class_3218;Ljava/lang/Integer;)V method_68278 method_68278 + p 2 raidId + m ()I method_16836 getOutOfRaidCounter + m ()Z method_58646 isCaptain + m ()Z method_16481 canJoinRaid + m (Lnet/minecraft/class_3218;IZ)V method_16484 addBonusForWave + p 1 world + p 3 unused + p 2 wave +c net/minecraft/class_3763$class_4223 net/minecraft/entity/raid/RaiderEntity$PatrolApproachGoal + f Lnet/minecraft/class_3763; field_18883 raider + f Lnet/minecraft/class_4051; field_18881 closeRaiderPredicate + f F field_18884 squaredDistance + m (Lnet/minecraft/class_1543;F)V + p 1 raider + p 2 distance +c net/minecraft/class_3763$class_4261 net/minecraft/entity/raid/RaiderEntity$AttackHomeGoal + f Z field_19040 finished + f I field_19039 distance + f D field_19036 speed + f Lnet/minecraft/class_2338; field_19037 home + f Ljava/util/List; field_19038 lastHomes + f Lnet/minecraft/class_3763; field_19035 raider + m (Lnet/minecraft/class_2338;)Z method_20038 canLootHome + p 1 pos + m ()V method_20041 purgeMemory + m (Lnet/minecraft/class_6880;)Z method_20037 method_20037 + p 0 poi + m ()Z method_20039 isRaiding + m (Lnet/minecraft/class_3763;DI)V + p 4 distance + p 2 speed + p 1 raider + m ()Z method_20040 tryFindHome +c net/minecraft/class_3763$class_4260 net/minecraft/entity/raid/RaiderEntity$CelebrateGoal + f Lnet/minecraft/class_3763; field_19034 raider + m (Lnet/minecraft/class_3763;Lnet/minecraft/class_3763;)V + p 2 raider +c net/minecraft/class_3763$class_3764 net/minecraft/entity/raid/RaiderEntity$PickUpBannerAsLeaderGoal + f Lnet/minecraft/class_3763; field_16603 actor + f Lnet/minecraft/class_11; field_52514 path + f Lnet/minecraft/class_1542; field_52515 bannerItemEntity + f Lit/unimi/dsi/fastutil/ints/Int2LongOpenHashMap; field_52513 bannerItemCache + m (Lnet/minecraft/class_3763;Lnet/minecraft/class_3763;)V + p 2 actor + m ()Z method_61559 shouldStop +c net/minecraft/class_1100 net/minecraft/client/render/model/UnbakedModel + f Ljava/lang/String; field_57026 PARTICLE_TEXTURE + m ()Lnet/minecraft/class_809; comp_3742 transformations + m ()Lnet/minecraft/class_10419$class_10420; comp_3743 textures + m ()Lnet/minecraft/class_1100$class_4751; comp_3740 guiLight + m ()Lnet/minecraft/class_10820; comp_3739 geometry + m ()Lnet/minecraft/class_2960; comp_3744 parent + m ()Ljava/lang/Boolean; comp_3741 ambientOcclusion +c net/minecraft/class_1100$class_4751 net/minecraft/client/render/model/UnbakedModel$GuiLight + f Ljava/lang/String; field_21860 name + f Lnet/minecraft/class_1100$class_4751; field_21858 ITEM + c The model will be shaded from the front, like a basic item + f Lnet/minecraft/class_1100$class_4751; field_21859 BLOCK + c The model will be shaded from the side, like a block. + m ()Z method_24299 isSide + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m (Ljava/lang/String;)Lnet/minecraft/class_1100$class_4751; method_24300 byName + p 0 value +c net/minecraft/class_2432 net/minecraft/data/loottable/vanilla/VanillaChestLootTableGenerator + f Lnet/minecraft/class_7225$class_7874; comp_2787 registries + m ()Lnet/minecraft/class_52$class_53; method_48508 createStrongholdLibraryChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_48507 createWoodlandMansionChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_48509 createStrongholdCorridorChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_48504 createNetherBridgeChestTableBuilder + m (Ljava/util/function/BiConsumer;)V method_55304 acceptTrialSpawnerTables + p 1 lootTableBiConsumer + m ()Lnet/minecraft/class_52$class_53; method_48503 createEndCityTreasureChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_48514 createDesertPyramidChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_48506 createBastionOtherChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_48505 createBastionTreasureChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_48500 createShipwreckMapChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_48511 createJungleTempleChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_48499 createShipwreckSupplyChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_48510 createAncientCityChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_48502 createBastionBridgeChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_48513 createPillagerOutpostChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_48501 createBastionHoglinStableChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_48512 createShipwreckTreasureChestTableBuilder + m ()Lnet/minecraft/class_7225$class_7874; comp_2787 registries + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries +c net/minecraft/class_2433 net/minecraft/block/WallPlayerSkullBlock + f Lcom/mojang/serialization/MapCodec; field_46412 CODEC +c net/minecraft/class_3765 net/minecraft/village/raid/Raid + f I field_30686 DEFAULT_PRE_RAID_TICKS + f I field_19022 waveCount + f Z field_16611 started + f Ljava/util/Set; field_19021 heroesOfTheVillage + f I field_30675 SQUARED_MAX_RAIDER_DISTANCE + f Lcom/mojang/serialization/MapCodec; field_56439 CODEC + f Lnet/minecraft/class_3765$class_4259; field_19023 status + f I field_19024 finishCooldown + f Ljava/util/Optional; field_19172 preCalculatedRaidersSpawnLocation + f I field_16614 preRaidTicks + f Lnet/minecraft/class_2561; field_19019 VICTORY_TITLE + f Ljava/util/Map; field_16615 waveToCaptain + f I field_30689 MAX_ACTIVE_TICKS + f I field_30670 MAX_DESPAWN_COUNTER + f I field_16616 postRaidTicks + f F field_16620 totalHealth + f Lnet/minecraft/class_9168; field_53976 RAVAGER_SPAWN_LOCATION + f J field_16605 ticksActive + f I field_16621 wavesSpawned + f Ljava/lang/String; field_30684 RAIDERS_REMAINING_TRANSLATION_KEY + f Lnet/minecraft/class_2561; field_30683 OMINOUS_BANNER_TRANSLATION_KEY + f Lnet/minecraft/class_5819; field_16608 random + f Lnet/minecraft/class_3213; field_16607 bar + f Z field_16606 active + f Lnet/minecraft/class_2338; field_16613 center + f Lnet/minecraft/class_2561; field_19020 DEFEAT_TITLE + f Ljava/util/Map; field_16618 waveToRaiders + f Lnet/minecraft/class_2561; field_19016 EVENT_TEXT + f I field_16623 raidOmenLevel + m (Lnet/minecraft/class_3765;)Ljava/lang/Boolean; method_67375 method_67375 + p 0 raid + m (Lnet/minecraft/class_3765;)Ljava/lang/Float; method_67367 method_67367 + p 0 raid + m (Lnet/minecraft/class_2338;)D method_20510 method_20510 + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_3763;Z)V method_16510 removeFromWave + p 1 world + p 3 countHealth + p 2 raider + m ()Z method_20015 isSpawningExtraWave + m ()V method_16506 invalidate + m ()I method_16493 getBadOmenLevel + m ()Z method_20014 hasSpawnedExtraWave + m (Lnet/minecraft/class_3218;)V method_20511 moveRaidCenter + p 1 world + m ()Z method_16832 isFinished + m (Lnet/minecraft/class_3218;)V method_16509 tick + p 1 world + m (Lnet/minecraft/class_3765$class_3766;Lnet/minecraft/class_5819;ILnet/minecraft/class_1266;Z)I method_20019 getBonusCount + p 4 localDifficulty + p 5 extra + p 2 random + p 3 wave + p 1 member + m (Lnet/minecraft/class_3218;)Ljava/util/Optional; method_20267 getRaidersSpawnLocation + p 1 world + m (Ljava/lang/Integer;)Ljava/util/Set; method_16508 method_16508 + p 0 wavex + m (Lnet/minecraft/class_3222;)Z method_67363 method_67363 + p 1 player + m (Lnet/minecraft/class_3765;)Ljava/lang/Integer; method_67368 method_67368 + p 0 raid + m (Lnet/minecraft/class_3765$class_3766;IZ)I method_20018 getCount + p 1 member + p 2 wave + p 3 extra + m ()Z method_16519 canSpawnRaiders + m (Lnet/minecraft/class_3765;)Ljava/lang/Integer; method_67372 method_67372 + p 0 raid + m ()Z method_20013 hasExtraWave + m ()Z method_16833 shouldSpawnMoreGroups + m (I)V method_35211 setBadOmenLevel + p 1 badOmenLevel + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_16521 playRaidHorn + p 2 pos + p 1 world + m (Lnet/minecraft/class_3218;)V method_16834 removeObsoleteRaiders + p 1 world + m (Lnet/minecraft/class_3765;)Ljava/lang/Integer; method_67371 method_67371 + p 0 raid + m ()Z method_20012 hasSpawnedFinalWave + m ()Z method_20024 hasLost + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67361 method_67361 + p 0 instance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_16522 spawnNextWave + p 1 world + p 2 pos + m ()V method_16523 updateBar + m ()Ljava/util/Set; method_35213 getAllRaiders + m ()F method_20025 getEnchantmentChance + m (I)Lnet/minecraft/class_3763; method_16496 getCaptain + p 1 wave + m (Lnet/minecraft/class_3765;)Ljava/lang/Integer; method_67366 method_67366 + p 0 raid + m (Lnet/minecraft/class_3765;)Ljava/lang/Integer; method_67370 method_67370 + p 0 raid + m (Lnet/minecraft/class_1267;)I method_20016 getMaxWaves + p 1 difficulty + m ()Z method_20023 hasWon + m ()Z method_16524 hasStarted + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_3763;Lnet/minecraft/class_2338;Z)V method_16516 addRaider + p 2 wave + p 1 world + p 4 pos + p 3 raider + p 5 existing + m ()F method_16513 getCurrentRaiderHealth + m (Lnet/minecraft/class_3765;)Ljava/lang/Long; method_67373 method_67373 + p 0 raid + m ()I method_16514 getMaxAcceptableBadOmenLevel + m (Lnet/minecraft/class_3218;I)Lnet/minecraft/class_2338; method_16525 findRandomRaidersSpawnLocation + p 1 world + p 2 proximity + m ()Z method_20022 hasStopped + m (Lnet/minecraft/class_3222;)Z method_16518 start + p 1 player + m (Lnet/minecraft/class_2338;)V method_20509 setCenter + p 1 center + m ()F method_35212 getTotalHealth + m (ILnet/minecraft/class_3763;)V method_16491 setWaveCaptain + p 2 entity + p 1 wave + m (Lnet/minecraft/class_3765;)Lnet/minecraft/class_2338; method_67364 method_67364 + p 0 raid + m ()I method_16490 getGroupsSpawned + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_3763;)Z method_16505 addToWave + p 2 wave + p 1 world + p 3 raider + m (ZZJIIIIFILnet/minecraft/class_3765$class_4259;Lnet/minecraft/class_2338;Ljava/util/Set;)V + p 13 heroesOfTheVillage + p 12 center + p 11 status + p 10 waveCount + p 9 totalHealth + p 8 postRaidTicks + p 7 preRaidTicks + p 6 wavesSpawned + p 5 raidOmenLevel + p 3 ticksActive + p 2 active + p 1 started + m ()Lnet/minecraft/class_2338; method_16495 getCenter + m ()Z method_20021 hasSpawned + m (Lnet/minecraft/class_3765;)Ljava/util/Set; method_67362 method_67362 + p 0 raid + m (Lnet/minecraft/class_7871;)Lnet/minecraft/class_1799; method_61558 createOminousBanner + p 0 bannerPatternLookup + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_3763;Z)Z method_16487 addToWave + p 1 world + p 3 raider + p 2 wave + p 4 countHealth + m ()Ljava/util/function/Predicate; method_16501 isInRaidDistance + m (I)V method_16500 removeLeader + p 1 wave + m (Lnet/minecraft/class_1297;)V method_20017 addHero + p 1 entity + m ()Z method_20020 isPreRaid + m (Lnet/minecraft/class_3765;)Lnet/minecraft/class_3765$class_4259; method_67365 method_67365 + p 0 raid + m (Lnet/minecraft/class_3218;)V method_16499 updateBarToPlayers + p 1 world + m (Lnet/minecraft/class_3218;)V method_16520 markDirty + p 1 world + m ()Z method_16504 isActive + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1267;)V + p 2 difficulty + p 1 center + m ()I method_16517 getRaiderCount + m (Lnet/minecraft/class_3765;)Ljava/lang/Boolean; method_67374 method_67374 + p 0 raid +c net/minecraft/class_3765$class_3766 net/minecraft/village/raid/Raid$Member + f Lnet/minecraft/class_1299; field_16629 type + f [I field_16628 countInWave + f [Lnet/minecraft/class_3765$class_3766; field_16636 VALUES + f Lnet/minecraft/class_3765$class_3766; field_16631 VINDICATOR + f Lnet/minecraft/class_3765$class_3766; field_16630 RAVAGER + f Lnet/minecraft/class_3765$class_3766; field_16635 WITCH + f Lnet/minecraft/class_3765$class_3766; field_16634 EVOKER + f Lnet/minecraft/class_3765$class_3766; field_16633 PILLAGER + m (Ljava/lang/String;ILnet/minecraft/class_1299;[I)V + p 3 type + p 4 countInWave +c net/minecraft/class_3765$class_4259 net/minecraft/village/raid/Raid$Status + f Lcom/mojang/serialization/Codec; field_56440 CODEC + f Ljava/lang/String; field_56441 id + f Lnet/minecraft/class_3765$class_4259; field_19029 STOPPED + f Lnet/minecraft/class_3765$class_4259; field_19026 ONGOING + f Lnet/minecraft/class_3765$class_4259; field_19027 VICTORY + f Lnet/minecraft/class_3765$class_4259; field_19028 LOSS + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_2434 net/minecraft/data/loottable/vanilla/VanillaEntityLootTableGenerator + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_1935;)V method_62736 method_62736 + p 2 wool + p 1 color + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries + m ()Lnet/minecraft/class_52$class_53; method_48515 createElderGuardianTableBuilder +c net/minecraft/class_2435 net/minecraft/block/PlayerSkullBlock + f Lcom/mojang/serialization/MapCodec; field_46411 CODEC +c net/minecraft/class_1104 net/minecraft/client/util/ClientPlayerTickable + m ()V method_4756 tick +c net/minecraft/class_3760 net/minecraft/entity/ai/goal/DisableableFollowTargetGoal + c An active target goal that can be disabled so that it cannot start. + f Z field_17281 enabled + m (Lnet/minecraft/class_3763;Ljava/lang/Class;IZZLnet/minecraft/class_4051$class_10254;)V + p 1 actor + p 2 targetEntityClass + p 3 reciprocalChance + p 4 checkVisibility + p 5 checkCanNavigate + p 6 targetPredicate + m (Z)V method_17351 setEnabled + p 1 enabled +c net/minecraft/class_1103 net/minecraft/client/sound/ElytraSoundInstance + f Lnet/minecraft/class_746; field_5452 player + f I field_5453 tickCount + m (Lnet/minecraft/class_746;)V + p 1 player +c net/minecraft/class_1102 net/minecraft/client/sound/AbstractSoundInstance + f Lnet/minecraft/class_1113$class_1114; field_5440 attenuationType + f Lnet/minecraft/class_2960; field_5448 id + f F field_5442 volume + f F field_5441 pitch + f D field_5450 y + f Lnet/minecraft/class_3419; field_5447 category + f I field_5451 repeatDelay + f Z field_5446 repeat + f Z field_18936 relative + f Lnet/minecraft/class_1111; field_5444 sound + f D field_5439 x + f Lnet/minecraft/class_5819; field_38800 random + f D field_5449 z + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3419;Lnet/minecraft/class_5819;)V + p 1 soundId + p 3 random + p 2 category + m (Lnet/minecraft/class_3414;Lnet/minecraft/class_3419;Lnet/minecraft/class_5819;)V + p 1 sound + p 2 category + p 3 random +c net/minecraft/class_2430 net/minecraft/data/loottable/vanilla/VanillaBlockLootTableGenerator + f [F field_11338 JUNGLE_SAPLING_DROP_CHANCE + f Ljava/util/Set; field_11340 EXPLOSION_IMMUNE + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60398 method_60398 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16327 method_16327 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46052 method_46052 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46173 method_46173 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16303 method_16303 + p 1 block + m (Lnet/minecraft/class_7225$class_7226;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60411 method_60411 + p 2 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46040 method_46040 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49979 method_49979 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49967 method_49967 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60403 method_60403 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49368 method_49368 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49942 method_49942 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_66555 method_66555 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49930 method_49930 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65290 method_65290 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16286 method_16286 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_74434 method_74434 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16250 method_16250 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34602 method_34602 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46106 method_46106 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16328 method_16328 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60397 method_60397 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16316 method_16316 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46099 method_46099 + p 1 block + m (Lnet/minecraft/class_7225$class_7226;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60412 method_60412 + p 2 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46051 method_46051 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46172 method_46172 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46160 method_46160 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49369 method_49369 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49956 method_49956 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49944 method_49944 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60402 method_60402 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49932 method_49932 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16275 method_16275 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16263 method_16263 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16251 method_16251 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46117 method_46117 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34050 method_34050 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60396 method_60396 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16325 method_16325 + p 1 block + m (Lnet/minecraft/class_7225$class_7226;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_32226 method_32226 + p 2 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46098 method_46098 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46183 method_46183 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46050 method_46050 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46171 method_46171 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49969 method_49969 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49957 method_49957 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49945 method_49945 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49933 method_49933 + p 1 block + m (Lnet/minecraft/class_7225$class_7226;Lnet/minecraft/class_7225$class_7226;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60395 method_60395 + p 3 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60401 method_60401 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_30157 method_30157 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65280 method_65280 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34599 method_34599 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16296 method_16296 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46104 method_46104 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16284 method_16284 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34051 method_34051 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60400 method_60400 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46114 method_46114 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46102 method_46102 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46097 method_46097 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16326 method_16326 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16314 method_16314 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_46155 method_46155 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16302 method_16302 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46170 method_46170 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65268 method_65268 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46182 method_46182 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49958 method_49958 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_43813 method_43813 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46115 method_46115 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16273 method_16273 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46101 method_46101 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46113 method_46113 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46096 method_46096 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34052 method_34052 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46181 method_46181 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49947 method_49947 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49935 method_49935 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16282 method_16282 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16270 method_16270 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65270 method_65270 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16311 method_16311 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65282 method_65282 + p 1 block + m ()Lnet/minecraft/class_52$class_53; method_49983 pitcherCropDrops + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_68077 method_68077 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46112 method_46112 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46100 method_46100 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_46161 method_46161 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_36230 method_36230 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34053 method_34053 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16324 method_16324 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46180 method_46180 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46095 method_46095 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49948 method_49948 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49936 method_49936 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16312 method_16312 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65281 method_65281 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_74441 method_74441 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16300 method_16300 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16295 method_16295 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16283 method_16283 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46123 method_46123 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46111 method_46111 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34054 method_34054 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49370 method_49370 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46094 method_46094 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16292 method_16292 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16280 method_16280 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_29399 method_29399 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_43810 method_43810 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_74440 method_74440 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65272 method_65272 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65284 method_65284 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46122 method_46122 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46158 method_46158 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_46163 method_46163 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34055 method_34055 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16237 method_16237 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49371 method_49371 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46093 method_46093 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49938 method_49938 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49981 method_49981 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16310 method_16310 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65283 method_65283 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65271 method_65271 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46048 method_46048 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46169 method_46169 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49372 method_49372 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46121 method_46121 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49939 method_49939 + p 1 block + m (Lnet/minecraft/class_7225$class_7226;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60407 method_60407 + p 2 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16290 method_16290 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49982 method_49982 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49970 method_49970 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16246 method_16246 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34056 method_34056 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65274 method_65274 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65262 method_65262 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46049 method_46049 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65286 method_65286 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46047 method_46047 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46156 method_46156 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_23230 method_23230 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46168 method_46168 + p 1 block + m (Lnet/minecraft/class_2248;Ljava/lang/Integer;)Lnet/minecraft/class_117$class_118; method_43815 method_43815 + p 1 pickles + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49373 method_49373 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46120 method_46120 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_67555 method_67555 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_65289 method_65289 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16235 method_16235 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65285 method_65285 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65273 method_65273 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46167 method_46167 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65277 method_65277 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46046 method_46046 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46179 method_46179 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49929 method_49929 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_67556 method_67556 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49972 method_49972 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49960 method_49960 + p 1 block + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16268 method_16268 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_29400 method_29400 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16232 method_16232 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65276 method_65276 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65264 method_65264 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46178 method_46178 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46166 method_46166 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46045 method_46045 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46069 method_46069 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16269 method_16269 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49973 method_49973 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49961 method_49961 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_74439 method_74439 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_73065 skullDrops + p 1 skull + m (Lnet/minecraft/class_2248;Ljava/lang/Integer;)Lnet/minecraft/class_79$class_80; method_43812 method_43812 + p 1 layers + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16245 method_16245 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34047 method_34047 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16233 method_16233 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65263 method_65263 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65287 method_65287 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65275 method_65275 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46068 method_46068 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65267 method_65267 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46177 method_46177 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16307 method_16307 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65279 method_65279 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46044 method_46044 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46165 method_46165 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_33707 method_33707 + p 1 block + m (Lnet/minecraft/class_7225$class_7226;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60415 method_60415 + p 2 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_74438 method_74438 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34048 method_34048 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16266 method_16266 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16254 method_16254 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49984 decoratedPotDrops + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16242 method_16242 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65278 method_65278 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46067 method_46067 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65266 method_65266 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46043 method_46043 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46055 method_46055 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46176 method_46176 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34594 method_34594 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46164 method_46164 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_46157 method_46157 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_33708 method_33708 + p 1 block + m (Lnet/minecraft/class_2248;Ljava/lang/Integer;)Lnet/minecraft/class_79$class_80; method_43814 method_43814 + p 1 layers + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60418 method_60418 + p 1 block + m (Lnet/minecraft/class_7225$class_7226;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60416 method_60416 + p 2 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_26277 method_26277 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49976 method_49976 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49975 method_49975 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49963 method_49963 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_74437 method_74437 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46109 method_46109 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16255 method_16255 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16243 method_16243 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65265 method_65265 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_23231 method_23231 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65269 method_65269 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16317 method_16317 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49950 method_49950 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46066 method_46066 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46042 method_46042 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46054 method_46054 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46175 method_46175 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49366 method_49366 + p 1 block + m (Lnet/minecraft/class_7225$class_7226;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60413 method_60413 + p 2 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60417 method_60417 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60405 method_60405 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49964 method_49964 + p 1 block + m (Ljava/lang/Integer;)Lnet/minecraft/class_79$class_80; method_49928 method_49928 + p 0 age + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34595 method_34595 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16264 method_16264 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16252 method_16252 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34600 method_34600 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_74436 method_74436 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16306 method_16306 + p 1 block + m (Lnet/minecraft/class_7225$class_7226;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65288 method_65288 + p 2 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46053 method_46053 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46174 method_46174 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46162 method_46162 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46041 method_46041 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46065 method_46065 + p 1 block + m (Lnet/minecraft/class_7225$class_7226;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60414 method_60414 + p 2 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_46159 method_46159 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_60404 method_60404 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49978 method_49978 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49367 method_49367 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49966 method_49966 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49954 method_49954 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49953 method_49953 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49941 method_49941 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34596 method_34596 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46119 method_46119 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16277 method_16277 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_49951 method_49951 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_16241 method_16241 + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_34601 method_34601 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46107 method_46107 + p 1 block + m (Lnet/minecraft/class_2430;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_74435 method_74435 + p 1 block +c net/minecraft/class_1101 net/minecraft/client/sound/MovingSoundInstance + f Z field_5438 done + m ()V method_24876 setDone +c net/minecraft/class_2431 net/minecraft/block/ExperienceDroppingBlock + f Lnet/minecraft/class_6017; field_27195 experienceDropped + f Lcom/mojang/serialization/MapCodec; field_46340 CODEC + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 experienceDropped + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54011 method_54011 + p 0 instance + m (Lnet/minecraft/class_2431;)Lnet/minecraft/class_6017; method_54012 method_54012 + p 0 block +c net/minecraft/class_2429 net/minecraft/block/ConnectingBlock + f Lnet/minecraft/class_2746; field_11335 EAST + f Lnet/minecraft/class_2746; field_11332 NORTH + f Lnet/minecraft/class_2746; field_11331 SOUTH + f Lnet/minecraft/class_2746; field_11330 DOWN + f Ljava/util/Map; field_11329 FACING_PROPERTIES + f Lnet/minecraft/class_2746; field_11328 WEST + f Lnet/minecraft/class_2746; field_11327 UP + f Ljava/util/function/Function; field_55782 shapeFunction + m (FLnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 radius + m (F)Ljava/util/function/Function; method_10370 createShapeFunction + p 1 radius + m (Lnet/minecraft/class_265;Ljava/util/Map;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66457 method_66457 + p 2 state +c net/minecraft/class_3756 net/minecraft/util/math/noise/PerlinNoiseSampler + f D field_16588 originZ + f D field_16589 originY + f [B field_16590 permutation + f D field_16591 originX + m (IIIDDD[D)D method_35478 sampleDerivative + p 2 sectionY + p 1 sectionX + p 4 localX + p 3 sectionZ + p 6 localY + p 8 localZ + m (DDD)D method_33658 sample + p 5 z + p 3 y + p 1 x + m (IIIDDDD)D method_16450 sample + p 6 localY + p 4 localX + p 3 sectionZ + p 2 sectionY + p 1 sectionX + p 10 fadeLocalY + p 8 localZ + m (Ljava/lang/StringBuilder;)V method_39118 addDebugInfo + p 1 info + m (Lnet/minecraft/class_5819;)V + p 1 random + m (IDDD)D method_16448 grad + p 0 hash + p 1 x + p 3 y + p 5 z + m (DDD[D)D method_35477 sampleDerivative + p 5 z + p 3 y + p 1 x + m (I)I method_16449 map + p 1 input + m (DDDDD)D method_16447 sample + p 3 y + p 1 x + p 9 yMax + p 7 yScale + p 5 z +c net/minecraft/class_2425 net/minecraft/data/report/CommandSyntaxProvider + f Ljava/util/concurrent/CompletableFuture; field_40951 registriesFuture + f Lnet/minecraft/class_7784; field_40600 output + m (Lnet/minecraft/class_7403;Ljava/nio/file/Path;Lnet/minecraft/class_7225$class_7874;)Ljava/util/concurrent/CompletionStage; method_46811 method_46811 + p 2 registries + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 2 registriesFuture + p 1 output +c net/minecraft/class_2426 net/minecraft/block/ObserverBlock + f Lnet/minecraft/class_2746; field_11322 POWERED + f Lcom/mojang/serialization/MapCodec; field_46407 CODEC + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_10225;Lnet/minecraft/class_2338;)V method_10366 scheduleTick + p 1 world + p 2 tickView + p 3 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_10365 updateNeighbors + p 3 state + p 2 pos + p 1 world +c net/minecraft/class_2427 net/minecraft/data/report/RegistryDumpProvider + f Lnet/minecraft/class_7784; field_40601 output + m (Lnet/minecraft/class_2378;Lcom/google/gson/JsonObject;Lnet/minecraft/class_6880$class_6883;)V method_40564 method_40564 + p 2 entry + m (Lcom/google/gson/JsonObject;Lnet/minecraft/class_6880$class_6883;)V method_17174 method_17174 + p 1 entry + m (Lnet/minecraft/class_7784;)V + p 1 output + m (Lnet/minecraft/class_2378;)Lcom/google/gson/JsonElement; method_17175 toJson + p 0 registry +c net/minecraft/class_3759 net/minecraft/entity/ai/goal/MoveToRaidCenterGoal + f I field_36303 nextFreeRaiderCheckAge + f F field_30225 WALK_SPEED + f I field_36302 FREE_RAIDER_CHECK_INTERVAL + f Lnet/minecraft/class_3763; field_16597 actor + m (Lnet/minecraft/class_3763;)V + p 1 actor + m (Lnet/minecraft/class_3765;)V method_16465 includeFreeRaiders + p 1 raid +c net/minecraft/class_2428 net/minecraft/block/NoteBlock + f Lnet/minecraft/class_2754; field_11325 INSTRUMENT + f Lnet/minecraft/class_2746; field_11326 POWERED + f Lcom/mojang/serialization/MapCodec; field_46405 CODEC + f Lnet/minecraft/class_2758; field_11324 NOTE + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_10367 playNote + p 4 pos + p 3 world + p 2 state + p 1 entity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2960; method_47886 getCustomSound + p 1 world + p 2 pos + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_47583 getStateWithInstrument + p 3 state + p 2 pos + p 1 world + m (I)F method_49818 getNotePitch + p 0 note +c net/minecraft/class_10936 net/minecraft/screen/sync/ComponentChangesHash + f Lnet/minecraft/class_9139; field_58175 PACKET_CODEC + f Ljava/util/Set; comp_3875 removedComponents + f Ljava/util/Map; comp_3874 addedComponents + m (Lnet/minecraft/class_9326;Lnet/minecraft/class_10936$class_10937;)Z method_68849 hashEquals + p 2 hasher + p 1 changes + m (Ljava/util/Map;Lnet/minecraft/class_10936$class_10937;Lnet/minecraft/class_9336;)V method_68847 method_68847 + p 2 component + m (Lnet/minecraft/class_9326;Lnet/minecraft/class_10936$class_10937;)Lnet/minecraft/class_10936; method_68848 fromComponents + p 0 changes + p 1 hasher + m ()Ljava/util/Map; comp_3874 addedComponents + m ()Ljava/util/Set; comp_3875 removedComponents + m (Ljava/util/Map;Ljava/util/Set;)V + p 1 addedComponents + p 2 removedComponents +c net/minecraft/class_10936$class_10937 net/minecraft/screen/sync/ComponentChangesHash$ComponentHasher +c net/minecraft/class_10938 net/minecraft/screen/sync/ItemStackHash + f Lnet/minecraft/class_9139; field_58177 PACKET_CODEC + f Lnet/minecraft/class_10938; field_58176 EMPTY + m (Lnet/minecraft/class_10938;)Ljava/util/Optional; method_68852 method_68852 + p 0 hash + m (Ljava/util/Optional;)Lnet/minecraft/class_10938; method_68851 method_68851 + p 0 hash + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_10936$class_10937;)Lnet/minecraft/class_10938; method_68853 fromItemStack + p 0 stack + p 1 hasher + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_10936$class_10937;)Z method_68850 hashEquals + p 1 stack + p 2 hasher +c net/minecraft/class_10938$class_10939 net/minecraft/screen/sync/ItemStackHash$Impl + f Lnet/minecraft/class_9139; field_58178 PACKET_CODEC + f Lnet/minecraft/class_10936; comp_3878 components + f Lnet/minecraft/class_6880; comp_3876 item + f I comp_3877 count + m ()Lnet/minecraft/class_10936; comp_3878 components + m ()Lnet/minecraft/class_6880; comp_3876 item + m ()I comp_3877 count + m (Lnet/minecraft/class_6880;ILnet/minecraft/class_10936;)V + p 1 item + p 2 count + p 3 components +c net/minecraft/class_1111 net/minecraft/client/sound/Sound + f Lnet/minecraft/class_2960; field_5469 id + f Z field_5467 stream + f I field_5463 attenuation + f Lnet/minecraft/class_7373; field_5464 pitch + f Lnet/minecraft/class_7373; field_5466 volume + f I field_5468 weight + f Lnet/minecraft/class_1111$class_1112; field_5470 registrationType + f Z field_5465 preload + f Lnet/minecraft/class_7654; field_40575 FINDER + m ()Lnet/minecraft/class_2960; method_4766 getLocation + m ()Z method_4769 isStreamed + m ()Z method_4764 isPreloaded + m ()Lnet/minecraft/class_2960; method_4767 getIdentifier + m ()Lnet/minecraft/class_7373; method_4772 getPitch + m ()Lnet/minecraft/class_7373; method_4771 getVolume + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_1111; method_4765 getSound + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_7373;Lnet/minecraft/class_7373;ILnet/minecraft/class_1111$class_1112;ZZI)V + p 8 attenuation + p 7 preload + p 6 stream + p 5 registrationType + p 4 weight + p 3 pitch + p 2 volume + p 1 id + m ()I method_4770 getAttenuation + m ()Lnet/minecraft/class_1111$class_1112; method_4768 getRegistrationType +c net/minecraft/class_1111$class_1112 net/minecraft/client/sound/Sound$RegistrationType + f Lnet/minecraft/class_1111$class_1112; field_5473 SOUND_EVENT + f Ljava/lang/String; field_5472 name + f Lnet/minecraft/class_1111$class_1112; field_5474 FILE + m (Ljava/lang/String;)Lnet/minecraft/class_1111$class_1112; method_4773 getByName + p 0 name + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_2443 net/minecraft/block/RailBlock + f Lnet/minecraft/class_2754; field_11369 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46420 CODEC +c net/minecraft/class_1110 net/minecraft/client/sound/SoundEntry + f Ljava/lang/String; field_5461 subtitle + f Ljava/util/List; field_5460 sounds + f Z field_5462 replace + m (Ljava/util/List;ZLjava/lang/String;)V + p 3 subtitle + p 2 replace + p 1 sounds + m ()Z method_4763 canReplace + m ()Ljava/util/List; method_4761 getSounds + m ()Ljava/lang/String; method_4762 getSubtitle +c net/minecraft/class_3776 net/minecraft/structure/pool/FeaturePoolElement + f Lnet/minecraft/class_6880; field_16661 feature + f Lcom/mojang/serialization/MapCodec; field_24948 CODEC + f Lnet/minecraft/class_2960; field_57830 DEFAULT_NAME + f Lnet/minecraft/class_2487; field_16662 nbt + m ()Lnet/minecraft/class_2487; method_19299 createDefaultJigsawNbt + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_3785$class_3786;)V + p 1 feature + p 2 projection + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28871 method_28871 + p 0 instance + m (Lnet/minecraft/class_3776;)Lnet/minecraft/class_6880; method_28872 method_28872 + p 0 pool +c net/minecraft/class_2445 net/minecraft/block/PumpkinBlock + f Lcom/mojang/serialization/MapCodec; field_46419 CODEC + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_72609 method_72609 + p 4 stack + p 3 worldx +c net/minecraft/class_3777 net/minecraft/structure/pool/EmptyPoolElement + f Lnet/minecraft/class_3777; field_16663 INSTANCE + f Lcom/mojang/serialization/MapCodec; field_24947 CODEC +c net/minecraft/class_2446 net/minecraft/data/recipe/RecipeGenerator + f Ljava/util/Map; field_28555 VARIANT_FACTORIES + f Lnet/minecraft/class_7871; field_53722 itemLookup + f Lnet/minecraft/class_7225$class_7874; field_48981 registries + f Lnet/minecraft/class_8790; field_53721 exporter + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_32811 offerCutCopperRecipe + p 1 category + p 2 output + p 3 input + m (Lnet/minecraft/class_1865;Lnet/minecraft/class_1874$class_3958;Ljava/util/List;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;FILjava/lang/String;Ljava/lang/String;)V method_36232 offerMultipleOptions + p 7 cookingTime + p 6 experience + p 9 suffix + p 8 group + p 3 inputs + p 2 recipeFactory + p 5 output + p 4 category + p 1 serializer + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Ljava/lang/String;Ljava/lang/String;)V method_36449 offerReversibleCompactingRecipesWithReverseRecipeGroup + p 1 reverseCategory + p 2 baseItem + p 3 compactingCategory + p 4 compactItem + p 5 reverseId + p 6 reverseGroup + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_1792;Ljava/lang/String;Lnet/minecraft/class_7800;)V method_62744 offerDyeablesRecipes + p 1 dyes + p 2 dyeables + p 3 undyed + p 4 group + p 5 category + m (Ljava/lang/String;Lnet/minecraft/class_1865;Lnet/minecraft/class_1874$class_3958;I)V method_17585 generateCookingRecipes + p 3 recipeFactory + p 2 serializer + p 4 cookingTime + p 1 cooker + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;)Lnet/minecraft/class_5797; method_32808 createStairsRecipe + p 2 input + p 1 output + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_24478 offerBoatRecipe + p 2 input + p 1 output + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_62759 method_62759 + p 2 input + p 1 output + p 0 generator + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;)Lnet/minecraft/class_2450; method_62749 createShapeless + p 1 category + p 2 output + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_62751 method_62751 + p 1 output + p 0 generator + p 2 input + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_62763 method_62763 + p 0 generator + p 2 input + p 1 output + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;)Lnet/minecraft/class_5797; method_33546 createFenceRecipe + p 1 output + p 2 input + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_32810 offerPolishedStoneRecipe + p 1 category + p 2 output + p 3 input + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_47522 offerCompactingRecipe + p 3 input + p 2 output + p 1 category + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_5794;Lnet/minecraft/class_5794$class_5796;Lnet/minecraft/class_2248;)V method_62741 method_62741 + p 3 variant + p 4 block + m (Lnet/minecraft/class_1935;)Ljava/lang/String; method_36450 getRecipeName + p 0 item + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_7917;)V method_62743 offerSuspiciousStewRecipe + p 1 input + p 2 stewIngredient + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_6862;I)V method_24475 offerPlanksRecipe2 + p 3 count + p 2 logTag + p 1 output + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_175; method_10420 conditionsFromTag + p 1 tag + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_24476 offerBarkBlockRecipe + p 1 output + p 2 input + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;)Lnet/minecraft/class_2447; method_32805 createChiseledBlockRecipe + p 2 output + p 1 category + p 3 input + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;)Lnet/minecraft/class_2447; method_36547 createCutCopperRecipe + p 1 category + p 2 output + p 3 input + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_24885 offerCarpetRecipe + p 2 input + p 1 output + m (Lnet/minecraft/class_7699;)V method_34854 offerWaxingRecipes + p 1 enabledFeatures + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Ljava/lang/String; method_33714 convertBetween + p 1 from + p 0 to + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_62752 method_62752 + p 0 generator + p 2 input + p 1 output + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_1856; method_62748 ingredientFromTag + p 1 tag + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_62764 method_62764 + p 2 input + p 1 output + p 0 generator + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_33717 offerStonecuttingRecipe + p 2 output + p 1 category + p 3 input + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;)Lnet/minecraft/class_5797; method_32804 createSlabRecipe + p 1 category + p 2 output + p 3 input + m (Lnet/minecraft/class_1935;)Ljava/lang/String; method_36451 getSmeltingItemPath + p 0 item + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_24891 offerStainedGlassPaneRecipe + p 2 input + p 1 output + m (Lnet/minecraft/class_2096$class_2100;Lnet/minecraft/class_1935;)Lnet/minecraft/class_175; method_35914 conditionsFromItem + p 2 item + p 1 count + m (Lnet/minecraft/class_7699;)V method_46207 generateFamilies + p 1 enabledFeatures + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_62739 method_62739 + p 2 unwaxed + p 3 waxed + m (Lnet/minecraft/class_5794;Lnet/minecraft/class_7699;)V method_33535 generateFamily + p 2 enabledFeatures + p 1 family + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_76679 offerWaxedChiseledCopperRecipe + p 1 output + p 2 input + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_62757 method_62757 + p 2 input + p 1 output + p 0 generator + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;)Lnet/minecraft/class_5797; method_33537 createCondensingRecipe + p 3 input + p 1 category + p 2 output + m ()V method_10419 generate + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;I)Lnet/minecraft/class_2447; method_62747 createShaped + p 1 category + p 3 count + p 2 output + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_62761 method_62761 + p 2 input + p 1 output + p 0 generator + m (Lnet/minecraft/class_1935;)Ljava/lang/String; method_32807 hasItem + p 0 item + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;)Lnet/minecraft/class_5797; method_33548 createFenceGateRecipe + p 2 input + p 1 output + m (Ljava/util/List;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;FILjava/lang/String;)V method_36234 offerBlasting + p 1 inputs + p 2 category + p 3 output + p 4 experience + p 5 cookingTime + p 6 group + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_8790;)V + p 1 registries + p 2 exporter + m (Lnet/minecraft/class_5794;Lnet/minecraft/class_5794$class_5796;)Lnet/minecraft/class_2248; method_33533 getVariantRecipeInput + c Gets the block used to craft a certain {@linkplain net.minecraft.data.family.BlockFamily.Variant variant} of a base block.\n\n

Normally, the block used to craft a variant is the base block.\nFor chiseled variants, this is the slab variant of that block.\n\n

Purpur is handled separately because both purpur and purpur pillars can be used to craft purpur slabs and stairs. + p 1 family + p 2 variant + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_175; method_10426 conditionsFromItem + p 1 item + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;)V method_36325 offerReversibleCompactingRecipes + c Offers two recipes to convert between a normal and compacted form of an item.\n\n

The shaped recipe converts 9 items in a square to a compacted form of the item.\n

The shapeless recipe converts the compacted form to 9 of the normal form. + p 4 compactItem + p 1 reverseCategory + p 2 baseItem + p 3 compactingCategory + m ([Lnet/minecraft/class_2073;)Lnet/minecraft/class_175; method_10423 conditionsFromItemPredicates + p 0 predicates + m (Lnet/minecraft/class_1935;)Ljava/lang/String; method_36452 getBlastingItemPath + p 0 item + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_32812 offerChiseledBlockRecipe + p 1 category + p 2 output + p 3 input + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_24890 offerStainedGlassDyeingRecipe + p 1 output + p 2 input + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_32809 offerWallRecipe + p 1 category + p 2 output + p 3 input + m (Lnet/minecraft/class_5797;Lnet/minecraft/class_5794$class_5796;Ljava/lang/String;)V method_33536 method_33536 + p 2 group + m (Lnet/minecraft/class_1935;)Ljava/lang/String; method_33716 getItemPath + p 0 item + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_24887 offerBedRecipe + p 1 output + p 2 inputWool + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_62758 method_62758 + p 2 input + p 1 output + p 0 generator + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_7800;Lnet/minecraft/class_1792;)V method_29728 offerNetheriteUpgradeRecipe + p 1 input + p 2 category + p 3 result + m (Ljava/util/List;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;FILjava/lang/String;)V method_36233 offerSmelting + p 1 inputs + p 2 category + p 3 output + p 4 experience + p 5 cookingTime + p 6 group + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_62762 method_62762 + p 1 output + p 0 generator + p 2 input + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;)Lnet/minecraft/class_5797; method_32806 createPressurePlateRecipe + p 2 output + p 1 category + p 3 input + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_54830 offerBulbRecipe + p 2 input + p 1 output + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;Ljava/lang/String;I)V method_36445 offerShapelessRecipe + p 4 outputCount + p 3 group + p 2 input + p 1 output + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_5794;)V method_62740 method_62740 + p 2 family + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_24893 offerTerracottaDyeingRecipe + p 2 input + p 1 output + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_48533 offerSmithingTemplateCopyingRecipe + p 1 template + p 2 resource + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_62755 method_62755 + p 1 output + p 0 generator + p 2 input + m (Lnet/minecraft/class_1935;)V method_70962 offerDriedGhast + p 1 output + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_54829 offerGrateRecipe + p 2 input + p 1 output + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;)Lnet/minecraft/class_5797; method_33542 createButtonRecipe + p 2 input + p 1 output + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;Ljava/lang/String;)V method_36444 offerSingleOutputShapelessRecipe + p 1 output + p 2 input + p 3 group + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;)Lnet/minecraft/class_5797; method_33531 getWallRecipe + p 1 category + p 2 output + p 3 input + m ([Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_175; method_53499 conditionsFromPredicates + p 0 predicates + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_32814 offerSlabRecipe + p 1 category + p 2 output + p 3 input + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_46212 offerMosaicRecipe + p 3 input + p 2 output + p 1 category + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;I)Lnet/minecraft/class_2450; method_62750 createShapeless + p 2 output + p 3 count + p 1 category + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;I)V method_33715 offerStonecuttingRecipe + p 3 input + p 2 output + p 1 category + p 4 count + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_70963 offerHarness + p 1 output + p 2 wool + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_24892 offerStainedGlassPaneDyeingRecipe + p 2 inputDye + p 1 output + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;)V method_60922 offerSmithingTemplateCopyingRecipe + p 1 template + p 2 resource + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Ljava/lang/String;Ljava/lang/String;)V method_36446 offerReversibleCompactingRecipesWithCompactingRecipeGroup + p 4 compactItem + p 5 compactingId + p 6 compactingGroup + p 1 reverseCategory + p 2 baseItem + p 3 compactingCategory + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_62756 method_62756 + p 0 generator + p 2 input + p 1 output + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;)Lnet/minecraft/class_5797; method_33553 createTrapdoorRecipe + p 2 input + p 1 output + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_24889 offerBannerRecipe + p 1 output + p 2 inputWool + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_62760 method_62760 + p 2 input + p 1 output + p 0 generator + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_32233 offerCandleDyeingRecipe + p 1 output + p 2 input + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_34662 offerCrackingRecipe + c Offers a smelting recipe to the exporter that is used to convert the main block of a block family to its cracked variant. + p 2 input + p 1 output + m (Ljava/util/List;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/class_7800;)V method_51890 offerDyeableRecipes + p 1 dyes + p 2 dyeables + p 3 group + p 4 category + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;)Z method_62742 method_62742 + p 1 item + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_46208 offerHangingSignRecipe + p 2 input + p 1 output + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;)Lnet/minecraft/class_5797; method_33544 createDoorRecipe + p 2 input + p 1 output + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_46209 offer2x2CompactingRecipe + p 3 input + p 2 output + p 1 category + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;Ljava/lang/String;)V method_47521 offerCompactingRecipe + p 2 output + p 1 category + p 4 criterionName + p 3 input + m (Ljava/lang/String;Lnet/minecraft/class_1865;Lnet/minecraft/class_1874$class_3958;ILnet/minecraft/class_1935;Lnet/minecraft/class_1935;F)V method_36448 offerFoodCookingRecipe + p 6 output + p 5 input + p 4 cookingTime + p 3 recipeFactory + p 7 experience + p 2 serializer + p 1 cooker + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;)Lnet/minecraft/class_2447; method_62746 createShaped + p 2 output + p 1 category + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_73067 offerShelfRecipe + p 1 output + p 2 input + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;)V method_48530 offerSmithingTrimRecipe + p 2 pattern + p 3 recipeKey + p 1 input + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_62753 method_62753 + p 2 input + p 1 output + p 0 generator + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V method_36447 offerReversibleCompactingRecipes + p 7 reverseId + p 8 reverseGroup + p 1 reverseCategory + p 2 baseItem + p 5 compactingId + p 6 compactingGroup + p 3 compactingCategory + p 4 compactItem + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_42754 offerChestBoatRecipe + p 1 output + p 2 input + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_6862;I)V method_24477 offerPlanksRecipe + p 1 output + p 3 count + p 2 logTag + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_24894 offerConcretePowderDyeingRecipe + p 1 output + p 2 input + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_175; method_10422 requireEnteringFluid + p 0 block + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)V method_32813 offerPressurePlateRecipe + p 2 input + p 1 output + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1856;)Lnet/minecraft/class_5797; method_33555 createSignRecipe + p 2 input + p 1 output + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1799;)Lnet/minecraft/class_2450; method_62745 createShapeless + p 2 output + p 1 category + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_36546 method_36546 + p 2 input + p 1 output + p 0 generator + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; method_62754 method_62754 + p 2 input + p 1 output + p 0 generator +c net/minecraft/class_2446$class_10113 net/minecraft/data/recipe/RecipeGenerator$BlockFamilyRecipeFactory + m (Lnet/minecraft/class_2446;Lnet/minecraft/class_1935;Lnet/minecraft/class_1935;)Lnet/minecraft/class_5797; create create + p 3 input + p 2 output + p 1 generator +c net/minecraft/class_2446$class_10114 net/minecraft/data/recipe/RecipeGenerator$RecipeProvider + f Ljava/util/concurrent/CompletableFuture; field_53724 registriesFuture + f Lnet/minecraft/class_7784; field_53723 output + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registriesFuture + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_7225$class_7874;)Ljava/util/concurrent/CompletionStage; method_62767 method_62767 + p 2 registries + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_8790;)Lnet/minecraft/class_2446; method_62766 getRecipeGenerator + p 1 registries + p 2 exporter +c net/minecraft/class_2446$class_10114$1 net/minecraft/data/recipe/RecipeGenerator$RecipeProvider$1 + f Lnet/minecraft/class_7784$class_7489; field_53730 recipeAdvancementPathResolver + f Lnet/minecraft/class_7784$class_7489; field_53729 recipePathResolver + f Lnet/minecraft/class_7225$class_7874; field_53728 registries + m (Lnet/minecraft/class_8779;)V method_62768 addRecipeAdvancement + p 1 advancementEntry + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_1860;)V method_62769 addRecipe + p 1 key + p 2 recipe +c net/minecraft/class_1115 net/minecraft/client/sound/SoundEntryDeserializer + f Lnet/minecraft/class_5863; field_38801 ONE + m (Lcom/google/gson/JsonObject;Lnet/minecraft/class_1111$class_1112;)Lnet/minecraft/class_1111$class_1112; method_4789 deserializeType + p 1 json + p 2 fallback + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Ljava/lang/Object; deserialize deserialize + p 1 functionJson + p 2 unused + p 3 context + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_1111; method_4790 deserializeSound + p 1 json + m (Lcom/google/gson/JsonObject;)Ljava/util/List; method_4792 deserializeSounds + p 1 json + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/class_1110; method_4791 deserialize +c net/minecraft/class_2440 net/minecraft/block/PressurePlateBlock + f Lnet/minecraft/class_2746; field_11358 POWERED + f Lcom/mojang/serialization/MapCodec; field_46418 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54036 method_54036 + p 0 instance + m (Lnet/minecraft/class_2440;)Lnet/minecraft/class_8177; method_54037 method_54037 + p 0 block + m (Lnet/minecraft/class_8177;Lnet/minecraft/class_4970$class_2251;)V + p 1 type + p 2 settings +c net/minecraft/class_1113 net/minecraft/client/sound/SoundInstance + m ()Z method_26273 canPlay + m ()Z method_4786 isRepeatable + m ()Z method_4787 isRelative + m (Lnet/minecraft/class_1144;)Lnet/minecraft/class_1146; method_4783 getSoundSet + p 1 soundManager + m ()Lnet/minecraft/class_1111; method_4776 getSound + m ()Z method_4785 shouldAlwaysPlay + m ()Lnet/minecraft/class_1113$class_1114; method_4777 getAttenuationType + m ()D method_4778 getZ + m ()D method_4779 getY + m ()D method_4784 getX + m ()Lnet/minecraft/class_3419; method_4774 getCategory + m ()F method_4782 getPitch + m ()F method_4781 getVolume + m ()Lnet/minecraft/class_5819; method_43221 createRandom + m ()Lnet/minecraft/class_2960; method_4775 getId + m ()I method_4780 getRepeatDelay +c net/minecraft/class_1113$class_1114 net/minecraft/client/sound/SoundInstance$AttenuationType + f Lnet/minecraft/class_1113$class_1114; field_5476 LINEAR + f Lnet/minecraft/class_1113$class_1114; field_5478 NONE +c net/minecraft/class_3773 net/minecraft/structure/StructurePieceType + f Lnet/minecraft/class_3773; field_16921 NETHER_FORTRESS_SMALL_CORRIDOR + f Lnet/minecraft/class_3773; field_16965 STRONGHOLD_SMALL_CORRIDOR + f Lnet/minecraft/class_3773; field_16953 JUNGLE_TEMPLE + f Lnet/minecraft/class_3773; field_16941 STRONGHOLD_SQUARE_ROOM + f Lnet/minecraft/class_3773; field_16961 NETHER_FORTRESS_CORRIDOR_NETHER_WARTS_ROOM + f Lnet/minecraft/class_3773; field_16918 SWAMP_HUT + f Lnet/minecraft/class_3773; field_16906 STRONGHOLD_LEFT_TURN + f Lnet/minecraft/class_3773; field_16926 NETHER_FORTRESS_BRIDGE_CROSSING + f Lnet/minecraft/class_3773; field_16914 STRONGHOLD_START + f Lnet/minecraft/class_3773; field_16958 STRONGHOLD_RIGHT_TURN + f Lnet/minecraft/class_3773; field_16946 OCEAN_MONUMENT_DOUBLE_Y_ROOM + f Lnet/minecraft/class_3773; field_16934 STRONGHOLD_CORRIDOR + f Lnet/minecraft/class_3773; field_16922 OCEAN_MONUMENT_BASE + f Lnet/minecraft/class_3773; field_16966 OCEAN_MONUMENT_PENTHOUSE + f Lnet/minecraft/class_3773; field_16930 NETHER_FORTRESS_CORRIDOR_STAIRS + f Lnet/minecraft/class_3773; field_16962 NETHER_FORTRESS_CORRIDOR_LEFT_TURN + f Lnet/minecraft/class_3773; field_16970 OCEAN_MONUMENT_DOUBLE_Y_Z_ROOM + f Lnet/minecraft/class_3773; field_16907 WOODLAND_MANSION + f Lnet/minecraft/class_3773; field_16939 STRONGHOLD_PORTAL_ROOM + f Lnet/minecraft/class_3773; field_16927 OCEAN_MONUMENT_DOUBLE_X_Y_ROOM + f Lnet/minecraft/class_3773; field_16915 MINESHAFT_ROOM + f Lnet/minecraft/class_3773; field_16959 STRONGHOLD_LIBRARY + f Lnet/minecraft/class_3773; field_16903 NETHER_FORTRESS_BRIDGE_END + f Lnet/minecraft/class_3773; field_16935 SHIPWRECK + f Lnet/minecraft/class_3773; field_16967 NETHER_FORTRESS_BRIDGE_STAIRS + f Lnet/minecraft/class_3773; field_16911 OCEAN_MONUMENT_CORE_ROOM + f Lnet/minecraft/class_3773; field_16955 STRONGHOLD_CHEST_CORRIDOR + f Lnet/minecraft/class_3773; field_16919 MINESHAFT_CROSSING + f Lnet/minecraft/class_3773; field_16943 NETHER_FORTRESS_CORRIDOR_BALCONY + f Lnet/minecraft/class_3773; field_16931 NETHER_FORTRESS_BRIDGE_PLATFORM + f Lnet/minecraft/class_3773; field_16963 OCEAN_MONUMENT_DOUBLE_X_ROOM + f Lnet/minecraft/class_3773; field_16928 OCEAN_MONUMENT_SIMPLE_ROOM + f Lnet/minecraft/class_3773; field_16904 STRONGHOLD_SPIRAL_STAIRCASE + f Lnet/minecraft/class_3773; field_16948 STRONGHOLD_PRISON_HALL + f Lnet/minecraft/class_3773; field_16936 END_CITY + f Lnet/minecraft/class_3773; field_16924 NETHER_FORTRESS_START + f Lnet/minecraft/class_3773; field_16968 MINESHAFT_STAIRS + f Lnet/minecraft/class_3773; field_16944 OCEAN_MONUMENT_SIMPLE_TOP_ROOM + f Lnet/minecraft/class_3773; field_16908 NETHER_FORTRESS_BRIDGE_SMALL_CROSSING + f Lnet/minecraft/class_3773; field_22195 NETHER_FOSSIL + f Lnet/minecraft/class_3773; field_16932 OCEAN_TEMPLE + f Lnet/minecraft/class_3773; field_16952 NETHER_FORTRESS_CORRIDOR_EXIT + f Lnet/minecraft/class_3773; field_16960 BURIED_TREASURE + f Lnet/minecraft/class_3773; field_16929 NETHER_FORTRESS_CORRIDOR_CROSSING + f Lnet/minecraft/class_3773; field_16917 NETHER_FORTRESS_BRIDGE + f Lnet/minecraft/class_3773; field_16905 OCEAN_MONUMENT_ENTRY_ROOM + f Lnet/minecraft/class_3773; field_16949 STRONGHOLD_STAIRS + f Lnet/minecraft/class_3773; field_16937 STRONGHOLD_FIVE_WAY_CROSSING + f Lnet/minecraft/class_3773; field_16925 OCEAN_MONUMENT_DOUBLE_Z_ROOM + f Lnet/minecraft/class_3773; field_16969 MINESHAFT_CORRIDOR + f Lnet/minecraft/class_3773; field_16957 OCEAN_MONUMENT_WING_ROOM + f Lnet/minecraft/class_3773; field_16945 NETHER_FORTRESS_CORRIDOR_RIGHT_TURN + f Lnet/minecraft/class_3773; field_16933 DESERT_TEMPLE + f Lnet/minecraft/class_3773; field_24010 RUINED_PORTAL + f Lnet/minecraft/class_3773; field_16909 IGLOO + f Lnet/minecraft/class_3773; field_25840 JIGSAW + m (Lnet/minecraft/class_3773$class_6615;Ljava/lang/String;)Lnet/minecraft/class_3773; method_16813 register + p 1 id + p 0 type + m (Lnet/minecraft/class_6625;Lnet/minecraft/class_2487;)Lnet/minecraft/class_3443; load load + p 1 context + p 2 nbt + m (Lnet/minecraft/class_3773$class_6616;Ljava/lang/String;)Lnet/minecraft/class_3773; method_38691 register + p 1 id + p 0 type + m (Lnet/minecraft/class_3773;Ljava/lang/String;)Lnet/minecraft/class_3773; method_38692 register + p 0 type + p 1 id +c net/minecraft/class_3773$class_6616 net/minecraft/structure/StructurePieceType$ManagerAware + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2487;)Lnet/minecraft/class_3443; load load + p 1 structureTemplateManager + p 2 nbt +c net/minecraft/class_3773$class_6615 net/minecraft/structure/StructurePieceType$Simple + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_3443; load load + p 1 nbt +c net/minecraft/class_2442 net/minecraft/block/PoweredRailBlock + f Lcom/mojang/serialization/MapCodec; field_46417 CODEC + f Lnet/minecraft/class_2746; field_11364 POWERED + f Lnet/minecraft/class_2754; field_11365 SHAPE + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ZILnet/minecraft/class_2768;)Z method_10414 isPoweredByOtherRails + p 5 shape + p 4 distance + p 2 pos + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;ZI)Z method_10413 isPoweredByOtherRails + p 1 world + p 2 pos + p 3 state + p 5 distance +c net/minecraft/class_1108 net/minecraft/client/sound/MovingMinecartSoundInstance + c A sound instance played when a minecart is moving. + f Lnet/minecraft/class_1688; field_5458 minecart + f F field_5459 distance + m (Lnet/minecraft/class_1688;)V + p 1 minecart +c net/minecraft/class_1107 net/minecraft/client/sound/MinecartInsideSoundInstance + c A sound instance played when a player is riding a minecart. + f Z field_27773 underwater + f Lnet/minecraft/class_1688; field_5456 minecart + f Lnet/minecraft/class_1657; field_5457 player + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1688;ZLnet/minecraft/class_3414;FFF)V + p 1 player + p 3 underwater + p 2 minecart + p 5 minVolume + p 4 sound + p 7 multiplier + p 6 maxVolume +c net/minecraft/class_1106 net/minecraft/client/sound/EntityTrackingSoundInstance + f Lnet/minecraft/class_1297; field_5455 entity + m (Lnet/minecraft/class_3414;Lnet/minecraft/class_3419;FFLnet/minecraft/class_1297;J)V + p 1 sound + p 2 category + p 3 volume + p 4 pitch + p 5 entity + p 6 seed +c net/minecraft/class_1105 net/minecraft/client/sound/GuardianAttackSoundInstance + f F field_32997 BASE_VOLUME + f F field_33000 BEAM_PROGRESS_PITCH_MULTIPLIER + f F field_32999 BASE_PITCH + f F field_32998 BEAM_PROGRESS_VOLUME_MULTIPLIER + f Lnet/minecraft/class_1577; field_5454 guardian + m (Lnet/minecraft/class_1577;)V + p 1 guardian +c net/minecraft/class_3767 net/minecraft/village/raid/RaidManager + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_16639 raids + f Lnet/minecraft/class_10741; field_56443 STATE_TYPE + f Ljava/lang/String; field_30690 RAIDS + f I field_16638 nextAvailableId + f Lnet/minecraft/class_10741; field_56444 END_STATE_TYPE + f I field_16637 currentTime + f Lcom/mojang/serialization/Codec; field_56442 CODEC + m ()I method_16534 nextId + m (Lnet/minecraft/class_3765;)Ljava/util/OptionalInt; method_67378 getRaidId + p 1 raid + m (Lnet/minecraft/class_3763;)Z method_16838 isValidRaiderFor + p 0 raider + m (Lnet/minecraft/class_3218;)V method_16539 tick + p 1 world + m (Lnet/minecraft/class_1923;)Ljava/util/List; method_74673 getRaidCenters + p 1 chunkPos + m (Lnet/minecraft/class_3767;)Ljava/lang/Integer; method_67379 method_67379 + p 0 raidManager + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_10741; method_67380 getPersistentStateType + p 0 dimensionType + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67377 method_67377 + p 0 instance + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_3767; method_77 fromNbt + p 0 nbt + m (I)Lnet/minecraft/class_3765; method_16541 getRaid + p 1 id + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3765; method_16532 getOrCreateRaid + p 2 pos + p 1 world + m (Ljava/util/List;II)V + p 2 nextAvailableId + p 1 raids + p 3 currentTime + m (Lnet/minecraft/class_3767;)Ljava/util/List; method_67382 method_67382 + p 0 raidManager + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3765; method_16540 startRaid + p 1 player + p 2 pos + m (Lnet/minecraft/class_2338;I)Lnet/minecraft/class_3765; method_19209 getRaidAt + p 2 searchDistance + p 1 pos + m (Lnet/minecraft/class_3767;)Ljava/lang/Integer; method_67381 method_67381 + p 0 raidManager + m (Lnet/minecraft/class_6880;)Z method_44012 method_44012 + p 0 poiType +c net/minecraft/class_3767$class_10734 net/minecraft/village/raid/RaidManager$RaidWithId + f Lcom/mojang/serialization/Codec; field_56445 CODEC + f Lnet/minecraft/class_3765; comp_3635 raid + f I comp_3634 id + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectMap$Entry;)Lnet/minecraft/class_3767$class_10734; method_67384 fromMapEntry + p 0 entry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67383 method_67383 + p 0 instance + m ()Lnet/minecraft/class_3765; comp_3635 raid + m ()I comp_3634 id + m (ILnet/minecraft/class_3765;)V + p 1 id + p 2 raid +c net/minecraft/class_2436 net/minecraft/block/RedstoneBlock + f Lcom/mojang/serialization/MapCodec; field_46416 CODEC +c net/minecraft/class_2437 net/minecraft/data/loottable/vanilla/VanillaFishingLootTableGenerator + f Lnet/minecraft/class_7225$class_7874; comp_2789 registries + m ()Lnet/minecraft/class_52$class_53; method_48516 createFishTableBuilder + m ()Lnet/minecraft/class_7225$class_7874; comp_2789 registries + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries +c net/minecraft/class_3769 net/minecraft/world/spawner/PatrolSpawner + c A spawner for pillager patrols.\n\n

Pillager spawns in pillager outposts are controlled at\n{@link net.minecraft.world.gen.chunk.ChunkGenerator#getEntitySpawnList}. + f I field_16652 cooldown + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Z)Z method_16575 spawnPillager + p 3 random + p 4 captain + c whether the pillager is the captain of a patrol + p 1 world + p 2 pos +c net/minecraft/class_2438 net/minecraft/data/loottable/LootTableProvider + f Lnet/minecraft/class_7784$class_7489; field_39374 pathResolver + f Ljava/util/concurrent/CompletableFuture; field_48978 registriesFuture + f Ljava/util/List; field_11354 lootTypeGenerators + f Lorg/slf4j/Logger; field_11355 LOGGER + f Ljava/util/Set; field_40617 lootTableIds + m (Lnet/minecraft/class_58;Lnet/minecraft/class_6880$class_6883;)V method_10411 method_10411 + p 1 entry + m (Ljava/util/Map;Lnet/minecraft/class_2438$class_7790;Lnet/minecraft/class_2385;Lnet/minecraft/class_5321;Lnet/minecraft/class_52$class_53;)V method_10412 method_10412 + p 4 builder + p 3 lootTable + m (Lnet/minecraft/class_7225$class_7874;Ljava/util/Map;Lnet/minecraft/class_2385;Lnet/minecraft/class_2438$class_7790;)V method_10410 method_10410 + p 3 lootTypeGenerator + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_7225$class_7874;)Ljava/util/concurrent/CompletableFuture; method_56883 run + p 1 writer + p 2 registries + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_7225$class_7874;)Ljava/util/concurrent/CompletionStage; method_56884 method_56884 + p 2 registries + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_7225$class_7874;Ljava/util/Map$Entry;)Ljava/util/concurrent/CompletableFuture; method_10408 method_10408 + p 3 entry + m (Ljava/lang/String;Lnet/minecraft/class_8942$class_11337;)V method_10407 method_10407 + p 1 error + p 0 name + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_2960; method_58574 getId + p 0 lootTableKey + m (Lnet/minecraft/class_7784;Ljava/util/Set;Ljava/util/List;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lootTableIds + p 3 lootTypeGenerators + p 4 registriesFuture +c net/minecraft/class_2438$class_7790 net/minecraft/data/loottable/LootTableProvider$LootTypeGenerator + f Lnet/minecraft/class_176; comp_1069 paramSet + f Ljava/util/function/Function; comp_1068 provider + m ()Lnet/minecraft/class_176; comp_1069 paramSet + m ()Ljava/util/function/Function; comp_1068 provider + m (Ljava/util/function/Function;Lnet/minecraft/class_176;)V + p 1 provider + p 2 paramSet +c net/minecraft/class_2438$class_11386 net/minecraft/data/loottable/LootTableProvider$MissingTableError + f Lnet/minecraft/class_5321; comp_4275 id + m ()Lnet/minecraft/class_5321; comp_4275 id + m (Lnet/minecraft/class_5321;)V + p 1 id +c net/minecraft/class_1109 net/minecraft/client/sound/PositionedSoundInstance + m (Lnet/minecraft/class_3414;Lnet/minecraft/class_3419;FFLnet/minecraft/class_5819;Lnet/minecraft/class_2338;)V + p 6 pos + p 4 pitch + p 5 random + p 2 category + p 3 volume + p 1 sound + m (Lnet/minecraft/class_6880;F)Lnet/minecraft/class_1109; method_47978 ui + p 1 pitch + p 0 sound + m (Lnet/minecraft/class_3414;Lnet/minecraft/class_3419;FFLnet/minecraft/class_5819;ZILnet/minecraft/class_1113$class_1114;DDD)V + p 4 pitch + p 3 volume + p 2 category + p 1 sound + p 13 z + p 11 y + p 9 x + p 8 attenuationType + p 7 repeatDelay + p 6 repeat + p 5 random + m (Lnet/minecraft/class_3414;FF)Lnet/minecraft/class_1109; method_24877 ambient + p 2 volume + p 1 pitch + p 0 sound + m (Lnet/minecraft/class_3414;F)Lnet/minecraft/class_1109; method_4758 ui + p 0 sound + p 1 pitch + m (Lnet/minecraft/class_3414;Lnet/minecraft/class_5819;DDD)Lnet/minecraft/class_1109; method_25467 ambient + p 6 z + p 4 y + p 2 x + p 1 random + p 0 sound + m (Lnet/minecraft/class_3414;)Lnet/minecraft/class_1109; method_4759 music + p 0 sound + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3419;FFLnet/minecraft/class_5819;ZILnet/minecraft/class_1113$class_1114;DDDZ)V + p 9 x + p 8 attenuationType + p 7 repeatDelay + p 6 repeat + p 5 random + p 4 pitch + p 3 volume + p 2 category + p 1 id + p 15 relative + p 13 z + p 11 y + m (Lnet/minecraft/class_3414;Lnet/minecraft/class_243;)Lnet/minecraft/class_1109; method_4760 record + p 1 pos + p 0 sound + m (Lnet/minecraft/class_3414;)Lnet/minecraft/class_1109; method_25466 ambient + p 0 sound + m (Lnet/minecraft/class_3414;Lnet/minecraft/class_3419;FFLnet/minecraft/class_5819;DDD)V + p 2 category + p 3 volume + p 1 sound + p 6 x + p 4 pitch + p 5 random + p 10 z + p 8 y + m (Lnet/minecraft/class_3414;FF)Lnet/minecraft/class_1109; method_4757 ui + p 2 volume + p 0 sound + p 1 pitch +c net/minecraft/class_2439 net/minecraft/block/PotatoesBlock + f Lcom/mojang/serialization/MapCodec; field_46414 CODEC + f [Lnet/minecraft/class_265; field_11357 SHAPES_BY_AGE + m (I)Lnet/minecraft/class_265; method_66460 method_66460 + p 0 age +c net/minecraft/class_10941 net/minecraft/network/handler/PacketDecoderException + m (Ljava/lang/Throwable;)V + p 1 cause + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/class_10942 net/minecraft/network/handler/PacketException +c net/minecraft/class_3742 net/minecraft/client/gui/screen/ingame/JigsawBlockScreen + f Lnet/minecraft/class_3751; field_16522 jigsaw + f Lnet/minecraft/class_2561; field_26564 JOINT_LABEL_TEXT + f Lnet/minecraft/class_342; field_23348 nameField + f Lnet/minecraft/class_2561; field_47122 SELECTION_PRIORITY_TOOLTIP + f Lnet/minecraft/class_2561; field_47120 PLACEMENT_PRIORITY_TOOLTIP + f Lnet/minecraft/class_2561; field_26566 NAME_TEXT + f Lnet/minecraft/class_2561; field_26568 FINAL_STATE_TEXT + f Lnet/minecraft/class_342; field_16519 finalStateField + f Lnet/minecraft/class_3751$class_4991; field_23352 joint + f Lnet/minecraft/class_4185; field_19103 doneButton + f Z field_25271 keepJigsaws + f Lnet/minecraft/class_342; field_47124 placementPriorityField + f Lnet/minecraft/class_2561; field_47119 PLACEMENT_PRIORITY_TEXT + f I field_24052 generationDepth + f Lnet/minecraft/class_2561; field_47121 SELECTION_PRIORITY_TEXT + f Lnet/minecraft/class_2561; field_26565 POOL_TEXT + f Lnet/minecraft/class_5676; field_23351 jointRotationButton + f Lnet/minecraft/class_4185; field_33958 generateButton + f Lnet/minecraft/class_2561; field_26567 TARGET_TEXT + f Lnet/minecraft/class_342; field_23349 targetField + f Lnet/minecraft/class_342; field_23350 poolField + f Lnet/minecraft/class_342; field_47123 selectionPriorityField + m (Lnet/minecraft/class_4185;)V method_19893 method_19893 + p 1 button + m ()V method_20118 updateDoneButtonState + m (Ljava/lang/String;)I method_54800 parseInt + p 1 value + m ()V method_16348 updateServer + m (Lnet/minecraft/class_4185;)V method_27271 method_27271 + p 1 button + m (Ljava/lang/String;)V method_20119 method_20119 + p 1 name + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_3751$class_4991;)V method_32648 method_32648 + p 2 joint + p 1 button + m (Lnet/minecraft/class_4185;)V method_19892 method_19892 + p 1 button + m (Ljava/lang/String;)V method_20120 method_20120 + p 1 pool + m (Lnet/minecraft/class_3751;)V + p 1 jigsaw + m (Ljava/lang/String;)Z method_61042 isValidId + p 0 id + m ()V method_16349 onCancel + m ()V method_16346 onDone + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_32649 method_32649 + p 2 keepJigsaws + p 1 button + m (Ljava/lang/String;)V method_26412 method_26412 + p 1 target + m ()V method_27272 generate +c net/minecraft/class_3743 net/minecraft/datafixer/schema/Schema1909 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_2412 net/minecraft/data/advancement/vanilla/VanillaAdventureTabAdvancementGenerator + f Ljava/util/Map; field_60600 EXCEPTIONS + f I field_35092 OVERWORLD_MAX_Y + f I field_35094 OVERWORLD_BEDROCK_LAYER_HEIGHT + f Ljava/util/List; field_11294 MONSTERS + f Lorg/slf4j/Logger; field_60599 LOGGER + f I field_35091 OVERWORLD_HEIGHT + f I field_35093 OVERWORLD_MIN_Y + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_6862;)Lnet/minecraft/class_175; method_70959 requirePlacedPaleOakLog + p 0 blockRegistry + p 1 paleOakLogBlocks + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_6862;Lnet/minecraft/class_2350;)Lnet/minecraft/class_8548$class_8549; method_70960 method_70960 + p 2 direction + m (Lnet/minecraft/class_2096$class_2100;Ljava/util/Optional;)Lnet/minecraft/class_175; method_37316 createLightningStrike + p 0 range + p 1 entity + m (Lnet/minecraft/class_2048$class_2049;Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_175; method_37315 createLookingAtEntityUsing + p 1 using + p 0 lookingAt + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_7803$class_8905;)V method_51690 method_51690 + p 1 templatex + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_7871;Lnet/minecraft/class_1299;)V method_55580 method_55580 + p 2 entityType + m (Lnet/minecraft/class_161$class_162;)Lnet/minecraft/class_161$class_162; method_51689 requireAllExclusiveTrimmedArmor + p 0 builder + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_7871;Ljava/util/List;)Lnet/minecraft/class_161$class_162; method_10336 requireListedMobsKilled + p 0 builder + p 1 entityTypeRegistry + p 2 entityTypes + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_161$class_162;)Lnet/minecraft/class_161$class_162; method_51692 requireSalvagedSherd + p 0 itemRegistry + p 1 builder + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_2350;)Lnet/minecraft/class_5341$class_210; method_51817 method_51817 + p 1 facing + m (Lnet/minecraft/class_161$class_162;)Lnet/minecraft/class_161$class_162; method_51691 requireTrimmedArmor + p 0 builder + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_7225$class_7874;Ljava/util/List;)Lnet/minecraft/class_161$class_162; method_10337 requireListedBiomesVisited + p 0 builder + p 1 registries + p 2 biomes + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_5321;)V method_54650 method_54650 + p 1 template + m (Lnet/minecraft/class_7225$class_7874;Ljava/util/function/Consumer;Lnet/minecraft/class_8779;Lnet/minecraft/class_8197$class_5305;)V method_49356 buildAdventuringTime + p 2 parent + p 3 biomeSourceListPreset + p 0 registries + p 1 exporter + m (Lnet/minecraft/class_161$class_162;Lcom/mojang/datafixers/util/Pair;)V method_54651 method_54651 + p 1 pair + m (Lnet/minecraft/class_8779;Ljava/util/function/Consumer;Lnet/minecraft/class_7871;Ljava/util/List;)Lnet/minecraft/class_8779; method_55581 createKillMobAdvancements + p 2 entityTypeRegistry + p 3 entityTypes + p 0 parent + p 1 exporter + m (Ljava/util/Set;Lnet/minecraft/class_7803$class_8905;)Z method_54652 method_54652 + p 1 template + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_2248;)Lnet/minecraft/class_175; method_51815 requirePlacedBlockReadByComparator + p 1 block + p 0 blockRegistry + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_2248;)Lnet/minecraft/class_175; method_51819 requirePlacedComparatorReadingBlock + p 1 block + p 0 blockRegistry + m (Ljava/util/List;Lnet/minecraft/class_7225;)Ljava/util/List; method_71660 validateKillAllMobsTypeList + p 1 entityTypeRegistry + p 0 mobTypes + m (Ljava/util/Map;Ljava/util/List;Lnet/minecraft/class_1311;Ljava/util/Set;)V method_71661 method_71661 + p 2 group + p 3 types + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_2248;Lnet/minecraft/class_2350;)Lnet/minecraft/class_8548$class_8549; method_51816 method_51816 + p 2 facing +c net/minecraft/class_2413 net/minecraft/block/MagmaBlock + f I field_31193 SCHEDULED_TICK_DELAY + f Lcom/mojang/serialization/MapCodec; field_46393 CODEC +c net/minecraft/class_3738 net/minecraft/server/ServerTask + f I field_16504 creationTicks + f Ljava/lang/Runnable; field_16505 runnable + m ()I method_16338 getCreationTicks + m (ILjava/lang/Runnable;)V + p 1 creationTicks + p 2 runnable +c net/minecraft/class_2408 net/minecraft/data/DataCache + f Ljava/util/Set; field_38916 dataWriters + f Ljava/util/Map; field_40832 cachedDatas + f Ljava/nio/file/Path; field_38913 cachePath + f I field_40833 totalCacheMissCount + f Ljava/util/Set; field_38917 paths + f Lorg/slf4j/Logger; field_11287 LOGGER + f I field_38918 totalSize + f Ljava/nio/file/Path; field_11285 root + f Ljava/lang/String; field_38914 versionName + f Ljava/lang/String; field_38912 HEADER + m (Ljava/nio/file/Path;Ljava/util/Collection;Lnet/minecraft/class_6489;)V + p 3 gameVersion + p 2 providerNames + p 1 root + m (Ljava/lang/String;)Ljava/nio/file/Path; method_43353 getPath + p 1 providerName + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Lnet/minecraft/class_2408$class_7405; method_43348 parseOrCreateCache + p 0 root + p 1 dataProviderPath + m (Lnet/minecraft/class_2408$class_7860;)V method_46569 store + p 1 runResult + m ()V method_10326 write + m (Ljava/util/Set;Ljava/lang/String;Lnet/minecraft/class_2408$class_7405;)V method_46571 method_46571 + p 2 providerName + p 3 cachedData + m (Lnet/minecraft/class_2408$class_7404;Ljava/lang/Object;)Lnet/minecraft/class_2408$class_7860; method_46568 method_46568 + p 1 void_ + m (Ljava/lang/String;)Z method_43347 isVersionDifferent + p 1 providerName + m (Ljava/lang/String;Lnet/minecraft/class_2408$class_7859;)Ljava/util/concurrent/CompletableFuture; method_46570 run + p 1 providerName + p 2 runner +c net/minecraft/class_2408$1 net/minecraft/data/DataCache$1 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; method_56187 visitFile + m (Ljava/lang/Object;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile visitFile + p 1 path + p 2 attributes +c net/minecraft/class_2408$class_7858 net/minecraft/data/DataCache$IntermediaryCache + f Ljava/lang/String; comp_1122 version + f Ljava/util/concurrent/ConcurrentMap; comp_1123 data + m ()Lnet/minecraft/class_2408$class_7405; method_46573 toCachedData + m (Ljava/lang/String;)V + p 1 version + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashCode;)V method_46574 put + p 2 hashCode + p 1 path + m ()Ljava/util/concurrent/ConcurrentMap; comp_1123 data + m ()Ljava/lang/String; comp_1122 version + m (Ljava/lang/String;Ljava/util/concurrent/ConcurrentMap;)V + p 1 version + p 2 data +c net/minecraft/class_2408$class_7859 net/minecraft/data/DataCache$Runner + m (Lnet/minecraft/class_7403;)Ljava/util/concurrent/CompletableFuture; update update + p 1 writer +c net/minecraft/class_2408$class_7860 net/minecraft/data/DataCache$RunResult + f Ljava/lang/String; comp_1124 providerName + f I comp_1126 cacheMissCount + f Lnet/minecraft/class_2408$class_7405; comp_1125 cache + m ()Ljava/lang/String; comp_1124 providerName + m ()I comp_1126 cacheMissCount + m ()Lnet/minecraft/class_2408$class_7405; comp_1125 cache + m (Ljava/lang/String;Lnet/minecraft/class_2408$class_7405;I)V + p 1 providerName + p 2 cache + p 3 cacheMissCount +c net/minecraft/class_2408$class_7404 net/minecraft/data/DataCache$CachedDataWriter + f Lnet/minecraft/class_2408$class_7405; field_38919 oldCache + f Lnet/minecraft/class_2408$class_7858; field_38920 newCache + f Z field_40836 closed + f Ljava/lang/String; field_40835 providerName + f Ljava/util/concurrent/atomic/AtomicInteger; field_38921 cacheMissCount + m ()Lnet/minecraft/class_2408$class_7860; method_46572 finish + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashCode;)Z method_43355 isCacheInvalid + p 2 hashCode + p 1 path + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_2408$class_7405;)V + p 1 providerName + p 3 oldCache + p 2 version +c net/minecraft/class_2408$class_7405 net/minecraft/data/DataCache$CachedData + f Lcom/google/common/collect/ImmutableMap; comp_730 data + f Ljava/lang/String; comp_729 version + m (Ljava/nio/file/Path;)Lcom/google/common/hash/HashCode; method_43357 get + p 1 path + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Lnet/minecraft/class_2408$class_7405; method_43359 parseCache + p 1 dataProviderPath + p 0 root + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/lang/String;)V method_43360 write + p 2 dataProviderPath + p 3 description + p 1 root + m ()I method_43356 size + m (Lcom/google/common/collect/ImmutableMap$Builder;Ljava/nio/file/Path;Ljava/lang/String;)V method_43361 method_43361 + p 2 line + m ()Lcom/google/common/collect/ImmutableMap; comp_730 data + m ()Ljava/lang/String; comp_729 version + m (Ljava/lang/String;Lcom/google/common/collect/ImmutableMap;)V + p 1 version + p 2 data +c net/minecraft/class_2409 net/minecraft/data/advancement/AdvancementProvider + f Ljava/util/List; field_11289 tabGenerators + f Lnet/minecraft/class_7784$class_7489; field_39372 pathResolver + f Ljava/util/concurrent/CompletableFuture; field_40949 registriesFuture + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_7225$class_7874;)Ljava/util/concurrent/CompletionStage; method_46809 method_46809 + p 2 registries + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;Ljava/util/List;)V + p 3 tabGenerators + p 1 output + p 2 registriesFuture + m (Ljava/util/Set;Ljava/util/List;Lnet/minecraft/class_7403;Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_8779;)V method_10333 method_10333 + p 5 advancement +c net/minecraft/class_3734 net/minecraft/item/ScaffoldingItem +c net/minecraft/class_2403 net/minecraft/data/DataGenerator + f Lnet/minecraft/class_7784; field_40596 output + f Lnet/minecraft/class_6489; field_38910 gameVersion + f Lorg/slf4j/Logger; field_11275 LOGGER + f Ljava/util/Set; field_40826 providerNames + f Ljava/nio/file/Path; field_40595 outputPath + f Ljava/util/Map; field_38909 runningProviders + f Z field_38911 ignoreCache + m (Lnet/minecraft/class_2408;Lcom/google/common/base/Stopwatch;Ljava/lang/String;Lnet/minecraft/class_2405;)V method_46563 method_46563 + p 4 provider + p 3 name + m ()V method_10315 run + m (Z)Lnet/minecraft/class_2403$class_7856; method_46564 createVanillaPack + p 1 shouldRun + m (ZLjava/lang/String;)Lnet/minecraft/class_2403$class_7856; method_46565 createVanillaSubPack + p 1 shouldRun + p 2 packName + m (Ljava/nio/file/Path;Lnet/minecraft/class_6489;Z)V + p 1 outputPath + p 2 gameVersion + p 3 ignoreCache +c net/minecraft/class_2403$class_7856 net/minecraft/data/DataGenerator$Pack + f Lnet/minecraft/class_7784; field_40830 output + f Ljava/lang/String; field_40829 packName + f Z field_40828 shouldRun + m (Lnet/minecraft/class_2405$class_7857;)Lnet/minecraft/class_2405; method_46566 addProvider + p 1 factory + m (Lnet/minecraft/class_2403;ZLjava/lang/String;Lnet/minecraft/class_7784;)V + p 4 output + p 2 shouldRun + p 3 name +c net/minecraft/class_3735 net/minecraft/predicate/entity/EntityEquipmentPredicate + f Lcom/mojang/serialization/Codec; field_45744 CODEC + f Ljava/util/Optional; comp_2620 body + f Ljava/util/Optional; comp_1754 mainhand + f Ljava/util/Optional; comp_1755 offhand + f Ljava/util/Optional; comp_1752 legs + f Ljava/util/Optional; comp_1753 feet + f Ljava/util/Optional; comp_1750 head + f Ljava/util/Optional; comp_1751 chest + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_3735; method_58057 ominousBannerOnHead + p 0 itemLookup + p 1 bannerPatternLookup + m (Lnet/minecraft/class_1297;)Z method_16226 test + p 1 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53129 method_53129 + p 0 instance + m ()Ljava/util/Optional; comp_2620 body + m ()Ljava/util/Optional; comp_1750 head + m ()Ljava/util/Optional; comp_1751 chest + m ()Ljava/util/Optional; comp_1753 feet + m ()Ljava/util/Optional; comp_1752 legs + m ()Ljava/util/Optional; comp_1755 offhand + m ()Ljava/util/Optional; comp_1754 mainhand + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 head + p 2 chest + p 3 legs + p 4 feet + p 5 body + p 6 mainhand + p 7 offhand +c net/minecraft/class_3735$class_5278 net/minecraft/predicate/entity/EntityEquipmentPredicate$Builder + f Ljava/util/Optional; field_51371 body + f Ljava/util/Optional; field_24486 mainhand + f Ljava/util/Optional; field_24487 offhand + f Ljava/util/Optional; field_24482 head + f Ljava/util/Optional; field_24483 chest + f Ljava/util/Optional; field_24484 legs + f Ljava/util/Optional; field_24485 feet + m (Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_3735$class_5278; method_59651 body + p 1 item + m (Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_3735$class_5278; method_35196 offhand + p 1 item + m (Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_3735$class_5278; method_35195 mainhand + p 1 item + m (Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_3735$class_5278; method_27970 feet + p 1 item + m (Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_3735$class_5278; method_27966 head + p 1 item + m ()Lnet/minecraft/class_3735; method_27967 build + m (Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_3735$class_5278; method_27969 legs + p 1 item + m (Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_3735$class_5278; method_27968 chest + p 1 item + m ()Lnet/minecraft/class_3735$class_5278; method_27965 create +c net/minecraft/class_2404 net/minecraft/block/FluidBlock + f Lnet/minecraft/class_265; field_24412 COLLISION_SHAPE + f Lnet/minecraft/class_3609; field_11279 fluid + f Lcom/mojang/serialization/Codec; field_46391 FLUID_CODEC + f Lcom/mojang/serialization/MapCodec; field_46390 CODEC + f Lnet/minecraft/class_2758; field_11278 LEVEL + f Ljava/util/List; field_11276 statesByLevel + f Lcom/google/common/collect/ImmutableList; field_34006 FLOW_DIRECTIONS + m (Lnet/minecraft/class_3611;)Lcom/mojang/serialization/DataResult; method_54030 method_54030 + p 0 fluid + m (Lnet/minecraft/class_3609;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 fluid + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)V method_10318 playExtinguishSound + p 2 pos + p 1 world + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54027 method_54027 + p 0 instance + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_10316 receiveNeighborFluids + p 1 world + p 2 pos + p 3 state + m (Lnet/minecraft/class_2404;)Lnet/minecraft/class_3609; method_54028 method_54028 + p 0 block + m (Lnet/minecraft/class_3609;)Lnet/minecraft/class_3611; method_54029 method_54029 + p 0 fluid +c net/minecraft/class_3736 net/minecraft/block/ScaffoldingBlock + f Lnet/minecraft/class_265; field_17578 OUTLINE_SHAPE + f Lnet/minecraft/class_2758; field_16495 DISTANCE + f Lnet/minecraft/class_2746; field_16496 WATERLOGGED + f Lnet/minecraft/class_265; field_16497 BOTTOM_OUTLINE_SHAPE + f Lnet/minecraft/class_265; field_16494 NORMAL_OUTLINE_SHAPE + f Lnet/minecraft/class_2746; field_16547 BOTTOM + f I field_31237 MAX_DISTANCE + f Lcom/mojang/serialization/MapCodec; field_46432 CODEC + f Lnet/minecraft/class_265; field_17577 COLLISION_SHAPE + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;I)Z method_16373 shouldBeBottom + p 3 distance + p 1 world + p 2 pos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)I method_16372 calculateDistance + p 1 pos + p 0 world +c net/minecraft/class_2405 net/minecraft/data/DataProvider + f Lorg/slf4j/Logger; field_40831 LOGGER + f Ljava/util/function/ToIntFunction; field_39212 JSON_KEY_SORT_ORDER + f Ljava/util/Comparator; field_39213 JSON_KEY_SORTING_COMPARATOR + m (Lnet/minecraft/class_7403;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Ljava/lang/Object;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_64111 writeCodecToPath + p 0 writer + p 2 codec + p 1 ops + p 4 path + p 3 value + m (Lnet/minecraft/class_7403;Lcom/mojang/serialization/Codec;Ljava/lang/Object;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_64108 writeCodecToPath + p 1 codec + p 2 value + p 0 writer + p 3 path + m (Lnet/minecraft/class_7403;Lcom/mojang/serialization/Codec;Lnet/minecraft/class_7784$class_7489;Ljava/util/Map;)Ljava/util/concurrent/CompletableFuture; method_64110 writeAllToPath + p 1 codec + p 2 pathResolver + p 3 idsToValues + p 0 writer + m (Lnet/minecraft/class_7403;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/Map;)Ljava/util/concurrent/CompletableFuture; method_65772 writeAllToPath + p 2 pathResolver + p 3 idsToValues + p 0 writer + p 1 serializer + m (Ljava/util/function/Function;Ljava/util/function/Function;Lnet/minecraft/class_7403;Ljava/util/Map$Entry;)Ljava/util/concurrent/CompletableFuture; method_64109 method_64109 + p 3 entry + m ()Ljava/lang/String; method_10321 getName + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_43808 method_43808 + p 0 map + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;)Lcom/google/gson/JsonElement; method_65770 method_65770 + p 1 value + m (Lnet/minecraft/class_7403;Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/Map;)Ljava/util/concurrent/CompletableFuture; method_65771 writeAllToPath + p 3 idsToValues + p 2 pathResolver + p 1 codec + p 0 writer + m (Lnet/minecraft/class_7403;)Ljava/util/concurrent/CompletableFuture; method_10319 run + p 1 writer + m (Ljava/lang/String;)Ljava/lang/String; method_43809 method_43809 + p 0 key + m (Lnet/minecraft/class_7403;Lcom/google/gson/JsonElement;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_10320 writeToPath + p 2 path + p 1 json + p 0 writer + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_7225$class_7874;Lcom/mojang/serialization/Codec;Ljava/lang/Object;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_53496 writeCodecToPath + p 1 registries + p 0 writer + p 3 value + p 2 codec + p 4 path +c net/minecraft/class_2405$class_7857 net/minecraft/data/DataProvider$Factory + m (Lnet/minecraft/class_7784;)Lnet/minecraft/class_2405; create create + p 1 output +c net/minecraft/class_2406 net/minecraft/block/LoomBlock + f Lnet/minecraft/class_2561; field_17373 TITLE + f Lcom/mojang/serialization/MapCodec; field_46392 CODEC + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ILnet/minecraft/class_1661;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1703; method_17478 method_17478 + p 2 syncId + p 3 inventory + p 4 player +c net/minecraft/class_3737 net/minecraft/block/Waterloggable +c net/minecraft/class_2421 net/minecraft/block/NetherWartBlock + f I field_31199 MAX_AGE + f [Lnet/minecraft/class_265; field_11305 SHAPES_BY_AGE + f Lnet/minecraft/class_2758; field_11306 AGE + f Lcom/mojang/serialization/MapCodec; field_46403 CODEC + m (I)Lnet/minecraft/class_265; method_66456 method_66456 + p 0 age +c net/minecraft/class_3753 net/minecraft/network/packet/c2s/play/UpdateJigsawC2SPacket + f Lnet/minecraft/class_2960; field_23401 pool + f Ljava/lang/String; field_16564 finalState + f I field_46917 selectionPriority + f I field_46918 placementPriority + f Lnet/minecraft/class_2338; field_16565 pos + f Lnet/minecraft/class_9139; field_48220 CODEC + f Lnet/minecraft/class_2960; field_16566 target + f Lnet/minecraft/class_2960; field_16563 name + f Lnet/minecraft/class_3751$class_4991; field_23402 jointType + m ()I method_54669 getPlacementPriority + m ()I method_54668 getSelectionPriority + m ()Lnet/minecraft/class_2960; method_16394 getTarget + m ()Lnet/minecraft/class_2960; method_16395 getName + m (Lnet/minecraft/class_2540;)V method_56000 write + p 1 buf + m ()Ljava/lang/String; method_16393 getFinalState + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Ljava/lang/String;Lnet/minecraft/class_3751$class_4991;II)V + p 5 finalState + p 4 pool + p 3 target + p 2 name + p 8 placementPriority + p 7 selectionPriority + p 6 jointType + p 1 pos + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Lnet/minecraft/class_2338; method_16396 getPos + m ()Lnet/minecraft/class_3751$class_4991; method_26436 getJointType + m ()Lnet/minecraft/class_2960; method_26435 getPool + m (Lnet/minecraft/class_2792;)V method_16392 apply +c net/minecraft/class_2422 net/minecraft/data/report/BlockListProvider + f Lnet/minecraft/class_7784; field_40599 output + f Ljava/util/concurrent/CompletableFuture; field_49660 registriesFuture + m (Lnet/minecraft/class_7403;Ljava/nio/file/Path;Lnet/minecraft/class_7225$class_7874;)Ljava/util/concurrent/CompletionStage; method_57954 method_57954 + p 2 registries + m (Lnet/minecraft/class_6903;Lcom/google/gson/JsonObject;Lnet/minecraft/class_6880$class_6883;)V method_57952 method_57952 + p 2 entry + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 2 registriesFuture + p 1 output +c net/minecraft/class_3754 net/minecraft/world/gen/chunk/NoiseChunkGenerator + f Lcom/mojang/serialization/MapCodec; field_24773 CODEC + f Lnet/minecraft/class_6880; field_24774 settings + f Ljava/util/function/Supplier; field_34591 fluidLevelSampler + f Lnet/minecraft/class_2680; field_16648 AIR + m (Lnet/minecraft/class_6748;Lnet/minecraft/class_7138;Lnet/minecraft/class_5138;Lnet/minecraft/class_2791;)V method_38327 populateBiomes + p 2 noiseConfig + p 1 blender + p 4 chunk + p 3 structureAccessor + m (Lnet/minecraft/class_2791;Lnet/minecraft/class_5868;Lnet/minecraft/class_7138;Lnet/minecraft/class_5138;Lnet/minecraft/class_4543;Lnet/minecraft/class_2378;Lnet/minecraft/class_6748;)V method_41538 buildSurface + p 1 chunk + p 7 blender + p 6 biomeRegistry + p 3 noiseConfig + p 2 heightContext + p 5 biomeAccess + p 4 structureAccessor + m (Lnet/minecraft/class_7138;III)Lnet/minecraft/class_6880; method_38322 method_38322 + p 4 biomeZ + p 3 biomeY + p 2 biomeX + m (Lnet/minecraft/class_2791;Lnet/minecraft/class_5138;Lnet/minecraft/class_6748;Lnet/minecraft/class_7138;)Lnet/minecraft/class_6568; method_41537 createChunkNoiseSampler + p 1 chunk + p 2 world + p 3 blender + p 4 noiseConfig + m (Lnet/minecraft/class_6350$class_6351;ILnet/minecraft/class_6350$class_6351;Lnet/minecraft/class_6350$class_6351;III)Lnet/minecraft/class_6350$class_6351; method_45509 method_45509 + p 4 x + p 6 z + p 5 y + m (Lnet/minecraft/class_5284;)Lnet/minecraft/class_6350$class_6565; method_45510 createFluidLevelSampler + p 0 settings + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28550 method_28550 + p 0 instance + m (Lnet/minecraft/class_5321;)Z method_28548 matchesSettings + p 1 settings + m (Lnet/minecraft/class_5138;Lnet/minecraft/class_6748;Lnet/minecraft/class_7138;Lnet/minecraft/class_2791;)Lnet/minecraft/class_6568; method_41540 method_41540 + p 4 chunkx + m (Lnet/minecraft/class_3754;)Lnet/minecraft/class_1966; method_28554 method_28554 + p 0 generator + m (Lnet/minecraft/class_1966;Lnet/minecraft/class_6880;)V + p 1 biomeSource + p 2 settings + m (Lnet/minecraft/class_3754;)Lnet/minecraft/class_6880; method_28549 method_28549 + p 0 generator + m (Lnet/minecraft/class_5539;Lnet/minecraft/class_7138;IILorg/apache/commons/lang3/mutable/MutableObject;Ljava/util/function/Predicate;)Ljava/util/OptionalInt; method_26263 sampleHeightmap + p 1 world + p 2 noiseConfig + p 5 columnSample + p 6 stopPredicate + p 3 x + p 4 z + m (Lnet/minecraft/class_6748;Lnet/minecraft/class_5138;Lnet/minecraft/class_7138;Lnet/minecraft/class_2791;II)Lnet/minecraft/class_2791; method_33754 populateNoise + p 2 structureAccessor + p 1 blender + p 4 chunk + p 3 noiseConfig + p 6 cellHeight + p 5 minimumCellY + m (Lnet/minecraft/class_6568;IIILnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_38323 getBlockState + p 5 state + p 3 y + p 4 z + p 1 chunkNoiseSampler + p 2 x + m (Lnet/minecraft/class_5138;Lnet/minecraft/class_6748;Lnet/minecraft/class_7138;Lnet/minecraft/class_2791;)Lnet/minecraft/class_6568; method_41536 method_41536 + p 4 chunkx + m ()Lnet/minecraft/class_6880; method_41541 getSettings + m (Lnet/minecraft/class_5138;Lnet/minecraft/class_3233;Lnet/minecraft/class_7138;Lnet/minecraft/class_2791;)Lnet/minecraft/class_6568; method_41535 method_41535 + p 4 chunkx + m (Lnet/minecraft/class_5138;Lnet/minecraft/class_6748;Lnet/minecraft/class_7138;Lnet/minecraft/class_2791;)Lnet/minecraft/class_6568; method_41539 method_41539 + p 4 chunkx +c net/minecraft/class_2423 net/minecraft/block/NetherPortalBlock + f Ljava/util/Map; field_55781 SHAPES_BY_AXIS + f Lcom/mojang/serialization/MapCodec; field_46401 CODEC + f Lorg/slf4j/Logger; field_52060 LOGGER + f Lnet/minecraft/class_2754; field_11310 AXIS + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;)V method_60991 method_60991 + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5459$class_5460;Lnet/minecraft/class_2350$class_2351;Lnet/minecraft/class_243;Lnet/minecraft/class_1297;Lnet/minecraft/class_5454$class_9823;)Lnet/minecraft/class_5454; method_60774 getExitPortalTarget + p 3 positionInPortal + p 2 axis + p 1 exitPortalRectangle + p 0 world + p 5 postDimensionTransition + p 4 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;Lnet/minecraft/class_5459$class_5460;Lnet/minecraft/class_3218;Lnet/minecraft/class_5454$class_9823;)Lnet/minecraft/class_5454; method_60777 getExitPortalTarget + p 4 postDimensionTransition + p 2 exitPortalRectangle + p 3 world + p 0 entity + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;ZLnet/minecraft/class_2784;)Lnet/minecraft/class_5454; method_60773 getOrCreateExitPortalTarget + p 6 worldBorder + p 5 inNether + p 4 scaledPos + p 3 pos + p 2 entity + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)Z method_60990 method_60990 + p 2 posx + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)Z method_60775 method_60775 + p 2 posx +c net/minecraft/class_2424 net/minecraft/world/dimension/NetherPortal + f D field_41087 HEIGHT_STRETCH + f Lnet/minecraft/class_2350$class_2351; field_11317 axis + f Lnet/minecraft/class_2350; field_11314 negativeDir + f I field_31825 MIN_WIDTH + f I field_11312 height + f I field_31823 MAX_WIDTH + f Lnet/minecraft/class_4970$class_4973; field_25883 IS_VALID_FRAME_BLOCK + f I field_11313 foundPortalBlocks + f F field_41086 FALLBACK_THRESHOLD + f I field_31826 MIN_HEIGHT + f I field_11311 width + f I field_31824 MAX_HEIGHT + f Lnet/minecraft/class_2338; field_11316 lowerCorner + m (Lnet/minecraft/class_2680;)Z method_10359 validStateInsidePortal + p 0 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Ljava/util/function/Predicate;Lnet/minecraft/class_2350$class_2351;)Ljava/util/Optional; method_30486 getOrEmpty + p 0 world + p 3 firstCheckedAxis + p 1 pos + p 2 validator + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338$class_2339;II)Z method_30491 isHorizontalFrameValid + p 1 lowerCorner + p 0 world + p 5 height + p 4 width + p 3 pos + p 2 direction + m (DLnet/minecraft/class_243;)Lnet/minecraft/class_243; method_47381 method_47381 + p 2 pos + m ()Z method_10360 isValid + m ()Z method_10362 wasAlreadyValid + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_30487 method_30487 + p 0 state + p 2 pos + p 1 world + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)I method_30493 getWidth + p 2 negativeDir + p 1 lowerCorner + p 0 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)V method_64315 method_64315 + p 2 pos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)I method_30495 getValidatedWidth + p 0 world + p 2 negativeDir + p 1 lowerCorner + m (Lnet/minecraft/class_2424;)Z method_30489 method_30489 + p 0 areaHelper + m (Lnet/minecraft/class_1936;)V method_10363 createPortal + p 1 world + m (Lnet/minecraft/class_243;Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_4048;)Lnet/minecraft/class_243; method_47382 findOpenPosition + p 1 world + p 0 fallback + p 3 dimensions + p 2 entity + m (Lnet/minecraft/class_2350$class_2351;ILnet/minecraft/class_2350;Lnet/minecraft/class_2338;II)V + p 1 axis + p 3 negativeDir + p 2 foundPortalBlocks + p 5 width + p 4 lowerCorner + p 6 height + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_30492 getLowerCorner + p 0 world + p 1 direction + p 2 pow + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;ILorg/apache/commons/lang3/mutable/MutableInt;)I method_30496 getHeight + p 0 world + p 1 lowerCorner + p 2 negativeDir + p 3 width + p 4 foundPortalBlocks + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338$class_2339;ILorg/apache/commons/lang3/mutable/MutableInt;)I method_30490 getPotentialHeight + p 0 world + p 5 foundPortalBlocks + p 4 width + p 3 pos + p 2 negativeDir + p 1 lowerCorner + m (Lnet/minecraft/class_5459$class_5460;Lnet/minecraft/class_2350$class_2351;Lnet/minecraft/class_243;Lnet/minecraft/class_4048;)Lnet/minecraft/class_243; method_30494 entityPosInPortal + p 2 entityPos + p 3 entityDimensions + p 0 portalRect + p 1 portalAxis + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350$class_2351;)Ljava/util/Optional; method_30485 getNewPortal + p 0 world + p 1 pos + p 2 firstCheckedAxis + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350$class_2351;)Lnet/minecraft/class_2424; method_64314 getOnAxis + p 0 world + p 1 pos + p 2 axis +c net/minecraft/class_3755 net/minecraft/datafixer/fix/ChunkLightRemoveFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_16440 method_16440 + p 0 levelDynamic + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_16441 method_16441 + p 1 chunkTyped + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_16442 method_16442 + p 0 levelTyped +c net/minecraft/class_2420 net/minecraft/block/MushroomPlantBlock + f Lnet/minecraft/class_265; field_11304 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46399 CODEC + f Lnet/minecraft/class_5321; field_27194 featureKey + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_4970$class_2251;)V + p 1 featureKey + p 2 settings + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_5819;)Z method_10349 trySpawningBigMushroom + p 1 world + p 2 pos + p 3 state + p 4 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54034 method_54034 + p 0 instance + m (Lnet/minecraft/class_2420;)Lnet/minecraft/class_5321; method_54035 method_54035 + p 0 block +c net/minecraft/class_3751 net/minecraft/block/entity/JigsawBlockEntity + f Ljava/lang/String; field_16551 finalState + f Ljava/lang/String; field_31344 POOL_KEY + f Ljava/lang/String; field_31346 NAME_KEY + f I field_47099 selectionPriority + f I field_57783 DEFAULT_SELECTION_PRIORITY + f Lcom/mojang/serialization/Codec; field_57779 STRUCTURE_POOL_KEY_CODEC + f Ljava/lang/String; field_47097 SELECTION_PRIORITY_KEY + f Lnet/minecraft/class_2960; field_57780 DEFAULT_NAME + f Ljava/lang/String; field_57781 DEFAULT_FINAL_STATE + f Ljava/lang/String; field_31343 TARGET_KEY + f Ljava/lang/String; field_31347 FINAL_STATE_KEY + f Ljava/lang/String; field_31345 JOINT_KEY + f I field_47098 placementPriority + f Lnet/minecraft/class_5321; field_23327 pool + f Lnet/minecraft/class_3751$class_4991; field_23328 joint + f I field_57782 DEFAULT_PLACEMENT_PRIORITY + f Ljava/lang/String; field_47096 PLACEMENT_PRIORITY_KEY + f Lnet/minecraft/class_2960; field_16552 target + f Lnet/minecraft/class_2960; field_16550 name + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state + m ()I method_54777 getPlacementPriority + m ()Lnet/minecraft/class_2622; method_38248 toUpdatePacket + m (Lnet/minecraft/class_2960;)V method_16378 setTarget + p 1 target + m ()Lnet/minecraft/class_2960; method_16381 getName + m (Lnet/minecraft/class_5321;)V method_26398 setPool + p 1 pool + m (Lnet/minecraft/class_3751$class_4991;)V method_26396 setJoint + p 1 joint + m (I)V method_54775 setPlacementPriority + p 1 placementPriority + m ()Lnet/minecraft/class_2960; method_26399 getTarget + m ()I method_54778 getSelectionPriority + m (Lnet/minecraft/class_2960;)V method_16379 setName + p 1 name + m (Ljava/lang/String;)V method_16377 setFinalState + p 1 finalState + m ()Ljava/lang/String; method_16380 getFinalState + m ()Lnet/minecraft/class_5321; method_16382 getPool + m (Lnet/minecraft/class_3218;IZ)V method_27191 generate + p 2 maxDepth + p 3 keepJigsaws + p 1 world + m ()Lnet/minecraft/class_3751$class_4991; method_26400 getJoint + m (I)V method_54776 setSelectionPriority + p 1 selectionPriority +c net/minecraft/class_3751$class_4991 net/minecraft/block/entity/JigsawBlockEntity$Joint + f Lnet/minecraft/class_3542$class_7292; field_54790 CODEC + f Ljava/lang/String; field_23331 name + f Lnet/minecraft/class_3751$class_4991; field_23330 ALIGNED + f Lnet/minecraft/class_3751$class_4991; field_23329 ROLLABLE + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()Lnet/minecraft/class_2561; method_32357 asText +c net/minecraft/class_2418 net/minecraft/block/MyceliumBlock + f Lcom/mojang/serialization/MapCodec; field_46400 CODEC +c net/minecraft/class_3749 net/minecraft/block/LanternBlock + f Lnet/minecraft/class_265; field_16544 HANGING_SHAPE + f Lnet/minecraft/class_2746; field_16545 HANGING + f Lnet/minecraft/class_2746; field_26441 WATERLOGGED + f Lcom/mojang/serialization/MapCodec; field_46381 CODEC + f Lnet/minecraft/class_265; field_16546 STANDING_SHAPE + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2350; method_16370 attachedDirection + p 0 state +c net/minecraft/class_2419 net/minecraft/data/advancement/vanilla/VanillaEndTabAdvancementGenerator +c net/minecraft/class_3745 net/minecraft/entity/CrossbowUser + m (Lnet/minecraft/class_1309;F)V method_24654 shoot + p 2 speed + p 1 entity + m (Z)V method_7110 setCharging + p 1 charging + m ()Lnet/minecraft/class_1309; method_5968 getTarget + m ()V method_24651 postShoot +c net/minecraft/class_2414 net/minecraft/data/advancement/vanilla/VanillaHusbandryTabAdvancementGenerator + f [Lnet/minecraft/class_1792; field_33964 AXE_ITEMS + f Ljava/util/Comparator; field_58057 REGISTRY_ENTRY_COMPARATOR + f Ljava/util/List; field_38467 EGG_LAYING_ANIMALS + f [Lnet/minecraft/class_1792; field_11298 FOOD_ITEMS + f [Lnet/minecraft/class_1792; field_11295 FISH_ITEMS + f [Lnet/minecraft/class_1792; field_11297 FISH_BUCKET_ITEMS + f Ljava/util/List; field_11296 BREEDABLE_ANIMALS + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Lnet/minecraft/class_6880$class_6883;)V method_43363 method_43363 + p 3 entry + m (Lnet/minecraft/class_8779;Ljava/util/function/Consumer;Lnet/minecraft/class_7871;Ljava/util/stream/Stream;Ljava/util/stream/Stream;)Lnet/minecraft/class_8779; method_47810 createBreedAllAnimalsAdvancement + p 3 breedableAnimals + p 4 eggLayingAnimals + p 1 exporter + p 2 entityTypeLookup + p 0 parent + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_7871;)Lnet/minecraft/class_161$class_162; method_10340 requireListedFishBucketsFilled + p 1 itemLookup + p 0 builder + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_7871;)Lnet/minecraft/class_161$class_162; method_10341 requireFoodItemsEaten + p 0 builder + p 1 itemLookup + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_7225;)Lnet/minecraft/class_161$class_162; method_59775 requireAllWolvesTamed + p 1 wolfVariantRegistry + p 0 builder + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_6880$class_6883;)V method_16117 method_16117 + p 1 entry + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_6880$class_6883;)V method_59776 method_59776 + p 1 entry + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_7225;)Lnet/minecraft/class_161$class_162; method_16118 requireAllCatsTamed + p 0 builder + p 1 catVariantRegistry + m (Lnet/minecraft/class_161$class_162;Ljava/util/stream/Stream;Lnet/minecraft/class_7871;Ljava/util/stream/Stream;)Lnet/minecraft/class_161$class_162; method_10342 requireListedAnimalsBred + p 2 entityTypeLookup + p 1 breedableAnimals + p 0 builder + p 3 eggLayingAnimals + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_7871;)Lnet/minecraft/class_161$class_162; method_10339 requireListedFishCaught + p 0 builder + p 1 itemLookup + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_2960; method_68717 method_68717 + p 0 entry + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Lnet/minecraft/class_7225;Lnet/minecraft/class_161$class_162;)Lnet/minecraft/class_161$class_162; method_43362 requireAllFrogsOnLeads + p 2 frogVariantRegistry + p 3 builder + p 0 entityTypeLookup + p 1 itemLookup + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_7871;Lnet/minecraft/class_1299;)V method_48498 method_48498 + p 2 entityType + m (Lnet/minecraft/class_161$class_162;Lnet/minecraft/class_7871;Lnet/minecraft/class_1299;)V method_48497 method_48497 + p 2 entityType + m (Lnet/minecraft/class_7225;)Ljava/util/stream/Stream; method_68718 streamSorted + p 0 registry +c net/minecraft/class_3746 net/minecraft/world/TestableWorld + m (Lnet/minecraft/class_2902$class_2903;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_8598 getTopPosition + p 1 heightmap + p 2 pos + m (Lnet/minecraft/class_2338;Ljava/util/function/Predicate;)Z method_16358 testBlockState + p 1 pos + p 2 state + m (Lnet/minecraft/class_2338;Ljava/util/function/Predicate;)Z method_35237 testFluidState + p 2 state + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2591;)Ljava/util/Optional; method_35230 getBlockEntity + p 1 pos + p 2 type +c net/minecraft/class_2415 net/minecraft/util/BlockMirror + f Lnet/minecraft/class_4990; field_23263 directionTransformation + f Lcom/mojang/serialization/Codec; field_56669 ENUM_NAME_CODEC + f Lnet/minecraft/class_2561; field_27883 name + f Lcom/mojang/serialization/Codec; field_39311 CODEC + f Ljava/lang/String; field_39312 id + f Lnet/minecraft/class_2415; field_11300 LEFT_RIGHT + f Lnet/minecraft/class_2415; field_11301 FRONT_BACK + f Lnet/minecraft/class_2415; field_11302 NONE + m ()Lnet/minecraft/class_4990; method_26380 getDirectionTransformation + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_2350; method_10343 apply + p 1 direction + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_2470; method_10345 getRotation + p 1 direction + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_4990;)V + p 3 id + p 4 directionTransformation + m ()Lnet/minecraft/class_2561; method_32354 getName + m (II)I method_10344 mirror + p 1 rotation + p 2 fullTurn +c net/minecraft/class_3747 net/minecraft/world/ModifiableTestableWorld +c net/minecraft/class_2416 net/minecraft/data/advancement/vanilla/VanillaNetherTabAdvancementGenerator +c net/minecraft/class_3748 net/minecraft/block/JigsawBlock + f Lcom/mojang/serialization/MapCodec; field_46376 CODEC + f Lnet/minecraft/class_2754; field_23262 ORIENTATION + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2350; method_26378 getFacing + p 0 state + m (Lnet/minecraft/class_3499$class_10326;Lnet/minecraft/class_3499$class_10326;)Z method_16546 attachmentMatches + p 1 info2 + p 0 info1 + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2350; method_26379 getRotation + p 0 state +c net/minecraft/class_2417 net/minecraft/data/advancement/vanilla/VanillaStoryTabAdvancementGenerator +c net/minecraft/class_9940 net/minecraft/client/render/entity/model/ArrowEntityModel + m (Lnet/minecraft/class_9999;)V method_62058 setAngles + m ()Lnet/minecraft/class_5607; method_62059 getTexturedModelData +c net/minecraft/class_8617 net/minecraft/resource/metadata/PackOverlaysMetadata + f Lnet/minecraft/class_7677; field_61146 SERVER_DATA_SERIALIZER + f Lnet/minecraft/class_7677; field_61145 CLIENT_RESOURCES_SERIALIZER + f Ljava/util/regex/Pattern; field_45046 DIRECTORY_NAME_PATTERN + f Ljava/util/List; comp_1577 overlays + m (Lnet/minecraft/class_11555;Lnet/minecraft/class_8617$class_8618;)Z method_52428 method_52428 + p 1 overlay + m (Lnet/minecraft/class_3264;)Lcom/mojang/serialization/Codec; method_72307 createCodec + p 0 type + m (Lnet/minecraft/class_11555;)Ljava/util/List; method_52427 getAppliedOverlays + p 1 version + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_52430 validate + p 0 directoryName + m (Lnet/minecraft/class_3264;)Lnet/minecraft/class_7677; method_72309 getSerializerFor + p 0 type + m ()Ljava/util/List; comp_1577 overlays + m (Ljava/util/List;)V + p 1 overlays +c net/minecraft/class_8617$class_8618 net/minecraft/resource/metadata/PackOverlaysMetadata$Entry + f Lnet/minecraft/class_6497; comp_1578 format + f Ljava/lang/String; comp_1579 overlay + m (Lnet/minecraft/class_11555;)Z method_52432 isValid + p 1 version + m (ILnet/minecraft/class_8617$class_8618;)Lnet/minecraft/class_8617$class_8618$class_11553; method_72310 method_72310 + p 1 entry + m (Lnet/minecraft/class_3264;)Lcom/mojang/serialization/Codec; method_72313 createCodec + p 0 type + m (ILjava/util/List;)Lcom/mojang/serialization/DataResult; method_72314 method_72314 + p 1 holders + m (Lnet/minecraft/class_8617$class_8618$class_11553;Lnet/minecraft/class_6497;)Lnet/minecraft/class_8617$class_8618; method_72312 method_72312 + p 1 versionRange + p 0 holder + m (ILjava/util/List;)Lcom/mojang/serialization/DataResult; method_72311 method_72311 + p 1 entries + m ()Lnet/minecraft/class_6497; comp_1578 format + m ()Ljava/lang/String; comp_1579 overlay + m (Lnet/minecraft/class_6497;Ljava/lang/String;)V + p 1 format + p 2 overlay +c net/minecraft/class_8617$class_8618$class_11553 net/minecraft/resource/metadata/PackOverlaysMetadata$Entry$Holder + f Lcom/mojang/serialization/Codec; field_61148 CODEC + f Ljava/lang/String; comp_4413 overlay + f Lnet/minecraft/class_11555$class_11556; comp_4412 format + m ()Ljava/lang/String; comp_4413 overlay + m (Lnet/minecraft/class_11555$class_11556;Ljava/lang/String;)V + p 1 format + p 2 overlay +c net/minecraft/class_9947 net/minecraft/client/render/entity/model/HorseEntityModel +c net/minecraft/class_8614 net/minecraft/resource/OverlayResourcePack + f Ljava/util/List; field_45037 overlaysAndBase + f Lnet/minecraft/class_3262; field_45036 base + m (Lnet/minecraft/class_3262;Ljava/util/List;)V + p 1 base + p 2 overlays +c net/minecraft/class_9946 net/minecraft/client/render/entity/model/EndCrystalEntityModel + f Lnet/minecraft/class_630; field_52901 innerGlass + f Lnet/minecraft/class_630; field_52902 cube + f Lnet/minecraft/class_630; field_52899 base + f Lnet/minecraft/class_630; field_52900 outerGlass + f Ljava/lang/String; field_52905 BASE + f Ljava/lang/String; field_52904 INNER_GLASS + f Ljava/lang/String; field_52903 OUTER_GLASS + m (Lnet/minecraft/class_10014;)V method_62083 setAngles + m ()Lnet/minecraft/class_5607; method_62084 getTexturedModelData +c net/minecraft/class_9945 net/minecraft/client/render/entity/model/DonkeyEntityModel + f Lnet/minecraft/class_630; field_52896 rightChest + f Lnet/minecraft/class_630; field_52895 leftChest + f Lnet/minecraft/class_9953; field_56070 DONKEY_PARTS_ADDER + m (F)Lnet/minecraft/class_5607; method_62079 getTexturedModelData + p 0 scale + m (F)Lnet/minecraft/class_5607; method_62080 getBabyTexturedModelData + p 0 scale + m (Lnet/minecraft/class_5610;)V method_62077 addDonkeyParts + p 0 root + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5609; method_66839 method_66839 + p 0 data + m (Lnet/minecraft/class_10013;)V method_62078 setAngles + m (FZ)Lnet/minecraft/class_5607; method_66838 getSaddleTexturedModelData + p 1 baby + p 0 scale +c net/minecraft/class_8612 net/minecraft/server/network/SendResourcePackTask + f Lnet/minecraft/server/MinecraftServer$class_7460; field_45035 packProperties + f Lnet/minecraft/class_8605$class_8606; field_45034 KEY + m (Lnet/minecraft/server/MinecraftServer$class_7460;)V + p 1 packProperties +c net/minecraft/class_9944 net/minecraft/client/render/block/entity/model/ChestBlockModel + f Ljava/lang/String; field_52886 LID + f Ljava/lang/String; field_52885 BOTTOM + f Lnet/minecraft/class_630; field_52889 lid + f Lnet/minecraft/class_630; field_52890 lock + f Ljava/lang/String; field_52887 LOCK + m (Lnet/minecraft/class_630;)V + p 1 root + m ()Lnet/minecraft/class_5607; method_62072 getDoubleChestLeftTexturedBlockData + m ()Lnet/minecraft/class_5607; method_62070 getSingleTexturedModelData + m (Ljava/lang/Float;)V method_62069 setAngles + m ()Lnet/minecraft/class_5607; method_62071 getDoubleChestRightTexturedBlockData +c net/minecraft/class_8613 net/minecraft/unused/packageinfo/PackageInfo8613 +c net/minecraft/class_9943 net/minecraft/client/render/block/entity/model/BellBlockModel + f Ljava/lang/String; field_52874 BELL_BODY + f Lnet/minecraft/class_630; field_52876 bellBody + m (Lnet/minecraft/class_630;)V + p 1 root + m (Lnet/minecraft/class_9943$class_11649;)V method_62063 setAngles + m ()Lnet/minecraft/class_5607; method_62064 getTexturedModelData +c net/minecraft/class_9943$class_11649 net/minecraft/client/render/block/entity/model/BellBlockModel$BellModelState + f Lnet/minecraft/class_2350; comp_4803 shakeDirection + f F comp_4802 ticks + m ()Lnet/minecraft/class_2350; comp_4803 shakeDirection + m ()F comp_4802 ticks + m (FLnet/minecraft/class_2350;)V + p 1 ticks + p 2 shakeDirection +c net/minecraft/class_8610 net/minecraft/server/network/ServerConfigurationNetworkHandler + f Lorg/slf4j/Logger; field_45020 LOGGER + f Lcom/mojang/authlib/GameProfile; field_45022 profile + f Lnet/minecraft/class_8791; field_46157 syncedOptions + f Lnet/minecraft/class_8605; field_45024 currentTask + f Lnet/minecraft/class_11549; field_61127 prepareSpawnTask + f Lnet/minecraft/class_9223; field_49026 synchronizedRegistriesTask + f Ljava/util/Queue; field_45023 tasks + f Lnet/minecraft/class_2561; field_61126 CONFIGURATION_ERROR_TEXT + f Lnet/minecraft/class_2561; field_45021 INVALID_PLAYER_DATA_TEXT + m (Lnet/minecraft/server/MinecraftServer$class_7460;)V method_52407 method_52407 + p 1 properties + m (Lnet/minecraft/class_3262;)Ljava/util/stream/Stream; method_56530 method_56530 + p 0 pack + m ()V method_52409 sendConfigurations + m (Lnet/minecraft/class_8605$class_8606;)V method_52406 onTaskFinished + p 1 key + m ()V method_52410 endConfiguration + m ()V method_52411 queueSendResourcePackTask + m ()V method_52412 pollTask +c net/minecraft/class_9942 net/minecraft/client/render/entity/model/StingerModel + m (Lnet/minecraft/class_630;)V + p 1 root + m ()Lnet/minecraft/class_5607; method_62062 getTexturedModelData +c net/minecraft/class_8611 net/minecraft/server/network/JoinWorldTask + f Lnet/minecraft/class_8605$class_8606; field_45033 KEY +c net/minecraft/class_9941 net/minecraft/client/render/entity/model/BabyModelTransformer + f Ljava/util/Set; comp_2994 headParts + f F comp_2989 babyYHeadOffset + f Z comp_2988 scaleHead + f F comp_2993 bodyYOffset + f F comp_2992 babyBodyScale + f F comp_2991 babyHeadScale + f F comp_2990 babyZHeadOffset + m (Ljava/util/Set;)V + p 1 headParts + m (ZFFLjava/util/Set;)V + p 4 headParts + p 3 babyZHeadOffset + p 2 babyYHeadOffset + p 1 scaleHead + m ()F comp_2992 babyBodyScale + m ()F comp_2991 babyHeadScale + m ()F comp_2990 babyZHeadOffset + m ()F comp_2993 bodyYOffset + m ()Z comp_2988 scaleHead + m ()F comp_2989 babyYHeadOffset + m ()Ljava/util/Set; comp_2994 headParts + m (ZFFFFFLjava/util/Set;)V + p 1 scaleHead + p 2 babyYHeadOffset + p 3 babyZHeadOffset + p 4 babyHeadScale + p 5 babyBodyScale + p 6 bodyYOffset + p 7 headParts +c net/minecraft/class_8609 net/minecraft/server/network/ServerCommonNetworkHandler + f Lnet/minecraft/server/MinecraftServer; field_45012 server + f I field_45011 KEEP_ALIVE_INTERVAL + f Z field_48274 transferred + f Z field_45017 waitingForKeepAlive + f J field_45016 lastKeepAliveTime + f I field_51342 TRANSITION_TIMEOUT + f J field_45018 keepAliveId + f Lorg/slf4j/Logger; field_45014 LOGGER + f Z field_51344 transitioning + f Z field_45715 flushDisabled + f Lnet/minecraft/class_2561; field_45015 TIMEOUT_TEXT + f Lnet/minecraft/class_2535; field_45013 connection + f J field_51343 transitionStartTime + f Lnet/minecraft/class_2561; field_48273 UNEXPECTED_QUERY_RESPONSE_TEXT + f I field_45019 latency + m ()Z method_52402 isHost + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_2535;Lnet/minecraft/class_8792;)V + p 3 clientData + p 2 connection + p 1 server + m ()V method_59512 markTransitionTime + m (J)Z method_59511 checkTransitionTimeout + p 1 time + m ()I method_52405 getLatency + m ()V method_53046 disableFlush + m (Lnet/minecraft/class_2596;)V method_14364 sendPacket + p 1 packet + m (Lnet/minecraft/class_8791;)Lnet/minecraft/class_8792; method_53825 createClientData + p 1 syncedOptions + m ()Lcom/mojang/authlib/GameProfile; method_52403 getProfile + m (Lnet/minecraft/class_2596;Lio/netty/channel/ChannelFutureListener;)V method_52391 send + p 1 packet + m (Lnet/minecraft/class_2561;)V method_52396 disconnect + p 1 reason + m ()V method_53047 enableFlush + m ()Lcom/mojang/authlib/GameProfile; method_52404 getDebugProfile + m ()V method_52400 baseTick + m (Lnet/minecraft/class_9812;)V method_60673 disconnect + p 1 disconnectionInfo +c net/minecraft/class_8607 net/minecraft/network/handler/LegacyQueries + f I field_44992 HEADER + f I field_44994 QUERY_PACKET_ID + f Ljava/lang/String; field_44993 PING_HOST + f I field_44996 BUFFER_SIZE + f I field_44997 PROTOCOL_VERSION + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/String; method_52377 read + p 0 buf + m (Lio/netty/buffer/ByteBuf;Ljava/lang/String;)V method_52378 write + p 1 string + p 0 buf +c net/minecraft/class_9939 net/minecraft/client/render/entity/model/PiglinBaseEntityModel + f Ljava/lang/String; field_52866 RIGHT_PANTS + f Ljava/lang/String; field_52865 LEFT_PANTS + f Ljava/lang/String; field_52864 RIGHT_SLEEVE + f Ljava/lang/String; field_52863 LEFT_SLEEVE + f Lnet/minecraft/class_630; field_52859 rightPants + f Lnet/minecraft/class_630; field_52858 leftPants + f Lnet/minecraft/class_630; field_52857 rightSleeve + f Lnet/minecraft/class_630; field_52856 leftSleeve + f Lnet/minecraft/class_630; field_52862 leftEar + f Lnet/minecraft/class_630; field_52860 jacket + f Lnet/minecraft/class_630; field_52861 rightEar + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5609; method_72828 method_72828 + p 0 modelData + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5609; method_62055 getModelData + p 0 dilation + m (Lnet/minecraft/class_10034;)V method_17087 setAngles + m (Lnet/minecraft/class_5605;Lnet/minecraft/class_5605;)Lnet/minecraft/class_11677; method_72827 createEquipmentModelData + p 1 armorDilation + p 0 hatDilation + m (Lnet/minecraft/class_5605;Lnet/minecraft/class_5609;)Lnet/minecraft/class_5610; method_62056 getModelPartData + p 1 playerModelData + p 0 dilation +c net/minecraft/class_8608 net/minecraft/server/network/ChunkDataSender + f Lit/unimi/dsi/fastutil/longs/LongSet; field_45005 chunks + f I field_45010 maxUnacknowledgedBatches + f Lorg/slf4j/Logger; field_45002 LOGGER + f Z field_45006 local + f F field_45007 desiredBatchSize + f F field_45008 pending + f I field_45009 unacknowledgedBatches + m (Lnet/minecraft/class_3222;)V method_52386 sendChunkBatches + p 1 player + m (Lnet/minecraft/class_3244;Lnet/minecraft/class_3218;Lnet/minecraft/class_2818;)V method_52388 sendChunkData + p 0 handler + p 2 chunk + p 1 world + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_2818;)I method_52389 method_52389 + p 1 chunk + m (Lnet/minecraft/class_2818;)V method_52390 add + p 1 chunk + m (J)Z method_52384 isInNextBatch + p 1 chunkPos + m (Lnet/minecraft/class_3898;Lnet/minecraft/class_1923;)Ljava/util/List; method_52385 makeBatch + p 1 chunkLoadingManager + p 2 playerPos + m (F)V method_52383 onAcknowledgeChunks + p 1 desiredBatchSize + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1923;)V method_52387 unload + p 2 pos + p 1 player + m (Z)V + p 1 local +c net/minecraft/class_9938 net/minecraft/client/gui/screen/recipebook/CurrentIndexProvider +c net/minecraft/class_9951 net/minecraft/client/render/entity/model/Deadmau5EarsEntityModel + m ()Lnet/minecraft/class_5607; method_62109 getTexturedModelData +c net/minecraft/class_9950 net/minecraft/client/render/entity/model/PlayerCapeModel + f Ljava/lang/String; field_52926 CAPE + f Lnet/minecraft/class_630; field_52927 cape + m (Lnet/minecraft/class_10055;)V method_62110 setAngles + m ()Lnet/minecraft/class_5607; method_62108 getTexturedModelData +c net/minecraft/class_8627 net/minecraft/datafixer/fix/RenameScoreboardDisplaySlotFix + f Ljava/util/Map; field_45098 OLD_TO_NEW_SLOT_NAMES + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52489 method_52489 + p 1 scoreboardTyped + m (Ljava/lang/String;)Ljava/lang/String; method_52493 getUpdatedName + p 0 oldName + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52492 method_52492 + p 0 scoreboardDataDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52495 method_52495 + p 0 key + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52494 method_52494 + p 0 displaySlotsDynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52490 method_52490 + p 0 scoreboardDataTyped + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_52491 method_52491 + p 0 entry +c net/minecraft/class_9959 net/minecraft/client/world/WorldEventHandler + f Lnet/minecraft/class_310; field_53068 client + f Ljava/util/Map; field_53071 playingSongs + f Lnet/minecraft/class_638; field_53069 world + m (ILnet/minecraft/class_2338;Lnet/minecraft/class_5819;Lnet/minecraft/class_2400;)V method_62188 shootParticles + p 4 particleType + p 2 pos + p 3 random + p 1 direction + m (Lnet/minecraft/class_2338;)V method_62191 stopJukeboxSong + p 1 jukeboxPos + m (Lnet/minecraft/class_310;Lnet/minecraft/class_638;)V + p 1 client + p 2 world + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2338;)V method_62193 playJukeboxSong + p 1 song + p 2 jukeboxPos + m (ILnet/minecraft/class_2338;I)V method_62194 processWorldEvent + p 1 eventId + p 2 pos + p 3 data + m (ILnet/minecraft/class_2338;I)V method_62187 processGlobalEvent + p 2 pos + p 1 eventId + p 3 data + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Z)V method_62190 updateEntitiesForSong + p 3 playing + p 1 world + p 2 pos + m (Lnet/minecraft/class_2338;)V method_62195 stopJukeboxSongAndUpdate + p 1 jukeboxPos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_6880$class_6883;)V method_62192 method_62192 + p 2 song +c net/minecraft/class_8625 net/minecraft/datafixer/fix/DropInvalidSignDatafixDataFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52475 dropInvalidDatafixData + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52478 dropInvalidDatafixDataOnSide + p 0 textData + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;J)Lcom/mojang/serialization/Dynamic; method_52477 method_52477 + p 3 index + p 2 message + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 2 name + p 1 outputSchema +c net/minecraft/class_8626 net/minecraft/datafixer/fix/RandomSequenceSettingsFix + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52479 method_52479 + p 0 typed + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52481 method_52481 + p 0 data + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52480 method_52480 + p 0 randomSequencesData +c net/minecraft/class_8623 net/minecraft/util/collection/ArrayListDeque + f [Ljava/lang/Object; field_45068 array + f I field_45070 size + f I field_45067 MISSING + f I field_45069 startIndex + m (I)V + p 1 size + m (Ljava/util/function/Consumer;)V forEach forEach + p 1 consumer + m (Ljava/lang/Object;)V addFirst addFirst + p 1 value + m (I)V method_52455 checkBounds + p 1 index + m (Ljava/lang/Object;)Z removeFirstOccurrence removeFirstOccurrence + p 1 value + m (I)Ljava/lang/Object; remove remove + p 1 index + m (I)I method_52451 wrap + p 1 index + m (II)V method_52452 checkBounds + p 1 end + p 0 start + m (Ljava/lang/Object;)Z removeLastOccurrence removeLastOccurrence + p 1 value + m (Ljava/util/function/UnaryOperator;)V replaceAll replaceAll + p 1 mapper + m ()I method_52450 getArrayLength + m (I)Ljava/lang/Object; get get + p 1 index + m (Ljava/lang/Object;)Z offerLast offerLast + p 1 value + m (Ljava/util/function/Predicate;)Z removeIf removeIf + p 1 predicate + m (ILjava/lang/Object;)Ljava/lang/Object; set set + p 2 value + p 1 index + m ([Ljava/lang/Object;I)V method_52453 copyTo + p 2 size + p 1 array + m (I)Ljava/lang/Object; method_52456 getRaw + p 1 index + m (ILjava/lang/Object;)V add add + p 2 value + p 1 index + m (Ljava/lang/Object;)Z offerFirst offerFirst + p 1 value + m (Ljava/lang/Object;)V addLast addLast + p 1 value + m ()Lnet/minecraft/class_9634; method_59513 reversed + m ()V method_52454 enlarge +c net/minecraft/class_8623$class_9633 net/minecraft/util/collection/ArrayListDeque$ReversedWrapper + f Lnet/minecraft/class_8623; field_51346 original + m (Ljava/lang/Object;)I lastIndexOf lastIndexOf + p 1 value + m (Ljava/lang/Object;)I indexOf indexOf + p 1 value + m (ILjava/lang/Object;)Ljava/lang/Object; set set + p 1 index + p 2 value + m ()Lnet/minecraft/class_9634; method_59513 reversed + m (Ljava/lang/Object;)Z offerLast offerLast + p 1 value + m (Ljava/lang/Object;)Z contains contains + p 1 value + m (I)Ljava/lang/Object; get get + p 1 index + m (Ljava/lang/Object;)Z removeFirstOccurrence removeFirstOccurrence + p 1 value + m (Ljava/lang/Object;)Z removeLastOccurrence removeLastOccurrence + p 1 value + m (Lnet/minecraft/class_8623;Lnet/minecraft/class_8623;)V + p 2 original + m (I)I method_59514 getReversedIndex + p 1 index + m (I)Ljava/lang/Object; remove remove + p 1 index + m (Ljava/lang/Object;)Z offerFirst offerFirst + p 1 value + m (II)Ljava/util/List; subList subList + p 2 end + p 1 start + m (ILjava/lang/Object;)V add add + p 2 value + p 1 index +c net/minecraft/class_8623$class_8624 net/minecraft/util/collection/ArrayListDeque$IteratorImpl + f I field_45072 currentIndex +c net/minecraft/class_9955 net/minecraft/client/render/CloudRenderer + f Lnet/minecraft/class_9955$class_9957; field_53057 cells + f I field_53054 centerZ + f Lnet/minecraft/class_11285; field_60074 cloudFacesBuffer + f Lnet/minecraft/class_11285; field_60073 cloudInfoBuffer + f Lnet/minecraft/class_2960; field_53042 CLOUD_TEXTURE + f I field_53053 centerX + f Lnet/minecraft/class_9955$class_9956; field_53055 viewMode + f I field_60081 UBO_SIZE + f Z field_53052 rebuild + f Lorg/slf4j/Logger; field_53041 LOGGER + f Lnet/minecraft/class_4063; field_53056 renderMode + f I field_60792 instanceCount + m (J)Z method_62180 hasBorderSouth + p 0 packed + m (Ljava/nio/ByteBuffer;II)V method_62172 buildCloudCellFast + p 2 color + p 3 x + m (J)Z method_62178 hasBorderNorth + p 0 packed + m (I)Z method_62167 isEmpty + p 0 color + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)Ljava/util/Optional; method_62171 prepare + m ()V method_71099 rotate + m (J)Z method_62181 hasBorderWest + p 0 packed + m (I)I method_71301 calcCloudBufferSize + p 0 cloudRange + m ()V method_62166 scheduleTerrainUpdate + m (Lnet/minecraft/class_9955$class_9956;Ljava/nio/ByteBuffer;IIZI)V method_62175 buildCloudCells + p 3 x + p 4 z + p 1 viewMode + m (Ljava/util/Optional;Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)V method_62177 apply + m (J)Z method_62179 hasBorderEast + p 0 packed + m (IZZZZ)J method_62169 packCloudCell + p 3 borderSouth + p 2 borderEast + p 4 borderWest + p 1 borderNorth + p 0 color + m (ILnet/minecraft/class_4063;FLnet/minecraft/class_243;JF)V method_62168 renderClouds + p 3 cloudHeight + p 2 mode + p 1 color + m (Lnet/minecraft/class_9955$class_9956;Ljava/nio/ByteBuffer;IIJ)V method_62174 buildCloudCellFancy + p 1 viewMode +c net/minecraft/class_9955$class_9956 net/minecraft/client/render/CloudRenderer$ViewMode + f Lnet/minecraft/class_9955$class_9956; field_53062 BELOW_CLOUDS + f Lnet/minecraft/class_9955$class_9956; field_53061 INSIDE_CLOUDS + f Lnet/minecraft/class_9955$class_9956; field_53060 ABOVE_CLOUDS +c net/minecraft/class_9955$class_9957 net/minecraft/client/render/CloudRenderer$CloudCells + f I comp_3008 height + f I comp_3007 width + f [J comp_3006 cells + m ()[J comp_3006 cells + m ()I comp_3008 height + m ()I comp_3007 width + m ([JII)V + p 1 cells + p 2 width + p 3 height +c net/minecraft/class_8621 net/minecraft/resource/ResourcePackOpener + f Lnet/minecraft/class_8580; field_45057 symlinkFinder + m (Ljava/nio/file/Path;)Ljava/lang/Object; method_52439 openZip + p 1 path + m (Ljava/nio/file/Path;Ljava/util/List;)Ljava/lang/Object; method_52441 open + p 2 foundSymlinks + p 1 path + m (Lnet/minecraft/class_8580;)V + p 1 symlinkFinder + m (Ljava/nio/file/Path;)Ljava/lang/Object; method_52438 openDirectory + p 1 path +c net/minecraft/class_9953 net/minecraft/client/render/entity/model/ModelTransformer + f Lnet/minecraft/class_9953; field_56092 NO_OP + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5609; method_66843 method_66843 + p 0 data + m (FFLnet/minecraft/class_5609;)Lnet/minecraft/class_5609; method_62140 method_62140 + p 2 data + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5609; apply apply + p 1 modelData + m (F)Lnet/minecraft/class_9953; scaling scaling + p 0 scale + m (FFLnet/minecraft/class_5603;)Lnet/minecraft/class_5603; method_62139 method_62139 + p 2 transform +c net/minecraft/class_9952 net/minecraft/client/render/entity/model/ZombifiedPiglinEntityModel + m (Lnet/minecraft/class_10088;)V method_62125 setAngles +c com/mojang/blaze3d/buffers/GpuBufferSlice com/mojang/blaze3d/buffers/GpuBufferSlice + m (JJ)Lcom/mojang/blaze3d/buffers/GpuBufferSlice; slice slice + p 3 length + p 1 offset + m (Lcom/mojang/blaze3d/buffers/GpuBuffer;JJ)V + p 1 buffer + p 2 offset + p 4 length +c net/minecraft/class_9949 net/minecraft/client/render/entity/model/OcelotEntityModel +c net/minecraft/class_9926 net/minecraft/unused/packageinfo/PackageInfo9926 +c net/minecraft/class_9925 net/minecraft/client/util/Handle + f Lnet/minecraft/class_9925; field_52742 EMPTY + m ()Lnet/minecraft/class_9925; method_61956 empty +c net/minecraft/class_9924 net/minecraft/client/util/ClosableFactory + m (Ljava/lang/Object;)V method_61954 close + p 1 value + m ()Ljava/lang/Object; method_61955 create + m (Lnet/minecraft/class_9924;)Z method_66519 equals + p 1 factory + m (Ljava/lang/Object;)V method_66520 prepare + p 1 value +c net/minecraft/class_9923 net/minecraft/client/gl/SimpleFramebufferFactory + f I comp_3499 clearColor + f Z comp_2980 useDepth + f I comp_2979 height + f I comp_2978 width + m ()Lnet/minecraft/class_276; method_61952 create + m (Lnet/minecraft/class_276;)V method_66518 prepare + m (Lnet/minecraft/class_276;)V method_61953 close + m ()I comp_3499 clearColor + m ()I comp_2978 width + m ()I comp_2979 height + m ()Z comp_2980 useDepth + m (IIZI)V + p 1 width + p 2 height + p 3 useDepth + p 4 clearColor +c net/minecraft/class_9922 net/minecraft/client/util/ObjectAllocator + f Lnet/minecraft/class_9922; field_52741 TRIVIAL + m (Lnet/minecraft/class_9924;)Ljava/lang/Object; method_61948 acquire + p 1 factory + m (Lnet/minecraft/class_9924;Ljava/lang/Object;)V method_61949 release + p 1 factory + p 2 value +c net/minecraft/class_9920 net/minecraft/client/util/Pool + f I field_52736 lifespan + f Ljava/util/Deque; field_52737 entries + m (I)V + p 1 lifespan + m ()V method_61950 clear + m (Lnet/minecraft/class_9924;)Ljava/lang/Object; method_66517 acquireUnprepared + p 1 factory + m ()Ljava/util/Collection; method_61951 getEntries + m ()V method_61947 decrementLifespan +c net/minecraft/class_9920$class_9921 net/minecraft/client/util/Pool$Entry + f Ljava/lang/Object; field_52739 object + f Lnet/minecraft/class_9924; field_52738 factory + f I field_52740 lifespan + m (Lnet/minecraft/class_9924;Ljava/lang/Object;I)V + p 1 factory + p 2 object + p 3 lifespan +c net/minecraft/class_9919 net/minecraft/client/option/InactivityFpsLimiter + f I field_52726 AFK_STAGE_1_FPS + f I field_52725 MINIMIZED_FPS + f Lnet/minecraft/class_310; field_52731 client + f J field_52729 AFK_STAGE_2_THRESHOLD + f I field_52727 AFK_STAGE_2_FPS + f J field_52728 AFK_STAGE_1_THRESHOLD + f Lnet/minecraft/class_315; field_52730 options + f I field_52732 maxFps + f J field_52733 lastInputTime + f I field_52724 IN_GUI_FPS + m (I)V method_61938 setMaxFps + p 1 maxFps + m ()I method_61937 update + m (Lnet/minecraft/class_315;Lnet/minecraft/class_310;)V + p 2 client + p 1 options + m ()Z method_66515 shouldDisableProfilerTimeout + m ()Lnet/minecraft/class_9919$class_10601; method_66514 getLimitReason + m ()V method_61939 onInput +c net/minecraft/class_9919$class_10601 net/minecraft/client/option/InactivityFpsLimiter$LimitReason + f Lnet/minecraft/class_9919$class_10601; field_55847 OUT_OF_LEVEL_MENU + f Lnet/minecraft/class_9919$class_10601; field_55843 NONE + f Lnet/minecraft/class_9919$class_10601; field_55844 WINDOW_ICONIFIED + f Lnet/minecraft/class_9919$class_10601; field_55845 LONG_AFK + f Lnet/minecraft/class_9919$class_10601; field_55846 SHORT_AFK +c net/minecraft/class_9918 net/minecraft/client/ClientWatchdog + f Ljava/time/Duration; field_52723 TIMEOUT + m (Ljava/io/File;J)V method_61936 shutdownClient + p 0 runDir + p 1 threadId +c net/minecraft/class_9917 net/minecraft/unused/packageinfo/PackageInfo9917 +c net/minecraft/class_9916 net/minecraft/client/render/FramePass + m (Lnet/minecraft/class_9925;)Lnet/minecraft/class_9925; method_61933 transfer + p 1 handle + m (Lnet/minecraft/class_9925;)V method_61928 dependsOn + p 1 handle + m (Ljava/lang/String;Lnet/minecraft/class_9924;)Lnet/minecraft/class_9925; method_61930 addRequiredResource + p 2 factory + p 1 name + m (Ljava/lang/Runnable;)V method_61929 setRenderer + p 1 renderer + m (Lnet/minecraft/class_9916;)V method_61927 addRequired + p 1 pass + m ()V method_61924 markToBeVisited +c net/minecraft/class_8605 net/minecraft/server/network/ServerPlayerConfigurationTask + m ()Z method_72292 hasFinished + m (Ljava/util/function/Consumer;)V method_52376 sendPacket + p 1 sender + m ()Lnet/minecraft/class_8605$class_8606; method_52375 getKey +c net/minecraft/class_8605$class_8606 net/minecraft/server/network/ServerPlayerConfigurationTask$Key + f Ljava/lang/String; comp_1576 id + m ()Ljava/lang/String; comp_1576 id + m (Ljava/lang/String;)V + p 1 id +c net/minecraft/class_8603 net/minecraft/server/network/ChunkFilter + f Lnet/minecraft/class_8603; field_44986 IGNORE_ALL + m (IIIII)Z method_52357 isWithinDistanceExcludingEdge + p 4 z + p 3 x + p 0 centerX + p 2 viewDistance + p 1 centerZ + m (Lnet/minecraft/class_8603;Lnet/minecraft/class_8603;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V method_52360 forEachChangedChunk + p 3 justRemoved + p 2 newlyIncluded + p 1 newFilter + p 0 oldFilter + m (II)Z method_52356 isWithinDistance + p 1 x + p 2 z + m (Ljava/util/function/Consumer;)V method_52363 forEach + p 1 consumer + m (IIZ)Z method_52359 isWithinDistance + p 1 x + p 2 z + p 3 includeEdge + m (II)Z method_52364 isWithinDistanceExcludingEdge + p 1 x + p 2 z + m (Lnet/minecraft/class_1923;I)Lnet/minecraft/class_8603; method_52362 cylindrical + p 0 center + p 1 viewDistance + m (Lnet/minecraft/class_1923;)Z method_52361 isWithinDistance + p 1 pos + m (IIIIIZ)Z method_52358 isWithinDistance + p 2 viewDistance + p 3 x + p 0 centerX + p 1 centerZ + p 4 z + p 5 includeEdge +c net/minecraft/class_8603$class_8604 net/minecraft/server/network/ChunkFilter$Cylindrical + f Lnet/minecraft/class_1923; comp_1574 center + f I comp_1575 viewDistance + m ()I method_52369 getTop + m ()I method_52368 getRight + m ()I method_52367 getBottom + m (Lnet/minecraft/class_8603$class_8604;)Z method_52365 overlaps + p 1 o + m ()I method_52366 getLeft + m ()Lnet/minecraft/class_1923; comp_1574 center + m ()I comp_1575 viewDistance + m (Lnet/minecraft/class_1923;I)V + p 1 center + p 2 viewDistance +c net/minecraft/class_9934 net/minecraft/client/gui/screen/recipebook/GhostRecipe + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; field_52827 items + f Lnet/minecraft/class_9938; field_52828 currentIndexProvider + m (Lnet/minecraft/class_332;Lnet/minecraft/class_310;Z)V method_62033 draw + p 1 context + p 3 resultHasPadding + p 2 client + m (Lnet/minecraft/class_1735;Lnet/minecraft/class_10352;Lnet/minecraft/class_10302;Z)V method_64873 addItems + p 2 context + p 1 slot + p 4 resultSlot + p 3 display + m (ZLnet/minecraft/class_332;Lnet/minecraft/class_310;Lnet/minecraft/class_1735;Lnet/minecraft/class_9934$class_9935;)V method_62030 method_62030 + p 4 slot + p 5 item + m (Lnet/minecraft/class_1735;Lnet/minecraft/class_10352;Lnet/minecraft/class_10302;)V method_64872 addInputs + p 1 slot + p 2 context + p 3 display + m ()V method_62029 clear + m (Lnet/minecraft/class_9938;)V + p 1 currentIndexProvider + m (Lnet/minecraft/class_332;Lnet/minecraft/class_310;IILnet/minecraft/class_1735;)V method_62032 drawTooltip + p 5 slot + p 1 context + p 2 client + p 3 x + p 4 y + m (Lnet/minecraft/class_1735;Lnet/minecraft/class_10352;Lnet/minecraft/class_10302;)V method_64874 addResults + p 2 context + p 3 display + p 1 slot +c net/minecraft/class_9934$class_9935 net/minecraft/client/gui/screen/recipebook/GhostRecipe$CyclingItem + f Z comp_2984 isResultSlot + f Ljava/util/List; comp_2983 items + m (I)Lnet/minecraft/class_1799; method_62035 get + p 1 index + m ()Ljava/util/List; comp_2983 items + m ()Z comp_2984 isResultSlot + m (Ljava/util/List;Z)V + p 1 items + p 2 isResultSlot +c net/minecraft/class_9933 net/minecraft/client/gui/screen/recipebook/CraftingRecipeBookWidget + f Ljava/util/List; field_54827 TABS + f Lnet/minecraft/class_8666; field_52824 FILTER_BUTTON_TEXTURES + f Lnet/minecraft/class_2561; field_52825 TOGGLE_CRAFTABLE_TEXT + m (Lnet/minecraft/class_9884;)V + p 1 screenHandler + m (Ljava/util/List;Lnet/minecraft/class_9934;Lnet/minecraft/class_10352;Lnet/minecraft/class_10302;III)V method_64869 method_64869 + p 6 y + p 5 x + p 4 index + p 3 slot + m (Lnet/minecraft/class_10295;)Z method_64870 canDisplay + p 1 display +c net/minecraft/class_8602 net/minecraft/server/command/RandomCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_44984 RANGE_TOO_SMALL_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_44983 RANGE_TOO_LARGE_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_52320 suggestSequences + p 1 suggestionsBuilder + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_52318 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52335 method_52335 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2096$class_2100;Lnet/minecraft/class_2960;Z)I method_52325 execute + p 0 source + p 1 range + p 2 sequenceId + p 3 roll + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52340 method_52340 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2960;)I method_52323 executeReset + p 0 source + p 1 sequenceId + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52341 method_52341 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52331 method_52331 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52319 method_52319 + p 0 context + m (Lnet/minecraft/class_2168;)I method_52321 executeReset + p 0 source + m (Ljava/util/List;Lnet/minecraft/class_2960;Lnet/minecraft/class_8564;)V method_52327 method_52327 + p 2 sequence + p 1 id + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52337 method_52337 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52338 method_52338 + p 0 context + m (ZLcom/mojang/brigadier/context/CommandContext;)I method_52333 method_52333 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52339 method_52339 + p 0 context + m (ZLcom/mojang/brigadier/context/CommandContext;)I method_52328 method_52328 + p 1 context + m (Lnet/minecraft/class_2168;IZZ)I method_52322 executeReset + p 2 includeWorldSeed + p 3 includeSequenceId + p 0 source + p 1 salt + m (Ljava/lang/String;Z)Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; method_52326 random + p 0 argumentName + p 1 roll + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2960;IZZ)I method_52324 executeReset + p 0 source + p 1 sequenceId + p 2 salt + p 3 includeWorldSeed + p 4 includeSequenceId +c net/minecraft/class_9931 net/minecraft/client/gui/hud/debug/chart/PieChart + f Lnet/minecraft/class_327; field_52776 textRenderer + f Ljava/lang/String; field_52778 currentPath + f I field_52779 bottomMargin + f Lnet/minecraft/class_3696; field_52777 profileResult + m (Lnet/minecraft/class_332;)V method_61986 render + p 1 context + m (I)V method_61987 select + p 1 index + m (I)V method_61984 setBottomMargin + p 1 bottomMargin + m (Lnet/minecraft/class_3696;)V method_61985 setProfileResult + p 1 profileResult + m (Lnet/minecraft/class_327;)V + p 1 textRenderer +c net/minecraft/class_8600 net/minecraft/server/command/DebugConfigCommand + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52306 method_52306 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_71954 method_71954 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/UUID;)I method_52304 executeUnconfig + p 0 source + p 1 uuid + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3222;)I method_52303 executeConfig + p 1 player + p 0 source + m (Lnet/minecraft/server/MinecraftServer;)Ljava/lang/Iterable; method_52305 collectConfiguringPlayers + p 0 server + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_52299 register + p 1 registryAccess + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_71955 method_71955 + p 0 context + p 1 suggestionsBuilder + m (Lnet/minecraft/class_2168;Ljava/util/UUID;Lnet/minecraft/class_6880;)I method_71956 executeDialog + p 2 dialog + p 1 uuid + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52300 method_52300 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_71958 method_71958 + p 0 context + p 1 suggestionsBuilder + m (Lnet/minecraft/server/MinecraftServer;Ljava/util/UUID;)Lnet/minecraft/class_8610; method_71957 findConfigurationNetworkHandler + p 0 server + p 1 uuid +c net/minecraft/class_9930 net/minecraft/client/gui/tooltip/TooltipSubmenuHandler + m (Lnet/minecraft/class_1735;)V method_61978 reset + p 1 slot + m (Lnet/minecraft/class_1735;Lnet/minecraft/class_1713;)V method_64234 onMouseClick + p 1 slot + p 2 actionType + m (DDILnet/minecraft/class_1799;)Z method_61973 onScroll + p 1 horizontal + p 3 vertical + p 5 slotId + p 6 item + m (Lnet/minecraft/class_1735;)Z method_61974 isApplicableTo + p 1 slot +c net/minecraft/class_9929 net/minecraft/client/gui/tooltip/BundleTooltipSubmenuHandler + f Lnet/minecraft/class_310; field_52767 client + f Lnet/minecraft/class_9928; field_52768 scroller + m (Lnet/minecraft/class_1799;I)V method_61975 reset + p 1 item + p 2 slotId + m (Lnet/minecraft/class_1799;II)V method_61976 sendPacket + p 3 selectedItemIndex + p 2 slotId + p 1 item + m (Lnet/minecraft/class_310;)V + p 1 client +c net/minecraft/class_9928 net/minecraft/client/input/Scroller + f D field_52764 cumulHorizontal + f D field_52765 cumulVertical + m (DII)I method_61972 scrollCycling + p 3 total + p 2 selectedIndex + p 0 amount + m (DD)Lorg/joml/Vector2i; method_61971 update + p 3 vertical + p 1 horizontal +c net/minecraft/class_9927 net/minecraft/client/option/InactivityFpsLimit + f Lcom/mojang/serialization/Codec; field_52745 CODEC + f Ljava/lang/String; field_52747 name + f Lnet/minecraft/class_2561; field_64422 text + f Lnet/minecraft/class_9927; field_52743 MINIMIZED + f Lnet/minecraft/class_9927; field_52744 AFK + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V + p 4 translationKey + p 3 name + m ()Lnet/minecraft/class_2561; method_76526 getText +c net/minecraft/class_1180 net/minecraft/datafixer/fix/ItemLoreToTextFix +c net/minecraft/class_1184 net/minecraft/datafixer/fix/ItemSpawnEggFix + f [Ljava/lang/String; field_5679 DAMAGE_TO_ENTITY_IDS + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/util/Optional; method_5028 method_5028 + p 1 entityTyped + m ([Ljava/lang/String;)V method_5029 method_5029 + p 0 ids + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/util/Optional; method_5030 method_5030 + p 1 entityTagTyped + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/util/Optional; method_5025 method_5025 + p 1 tagTyped +c net/minecraft/class_1183 net/minecraft/datafixer/fix/ItemPotionFix + f I field_29885 SPLASH_POTION_FLAG + f Ljava/lang/String; field_29884 WATER + f [Ljava/lang/String; field_5678 ID_TO_POTIONS + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5024 method_5024 + p 2 itemStack + m ([Ljava/lang/String;)V method_5023 method_5023 + p 0 potions +c net/minecraft/class_1182 net/minecraft/datafixer/fix/ItemNameFix + f Ljava/lang/String; field_5676 name + m (Ljava/lang/String;)Ljava/lang/String; method_5022 rename + p 1 input + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/DataFix; method_5019 create + p 0 outputSchema + p 2 rename + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 2 name + p 1 outputSchema +c net/minecraft/class_1181 net/minecraft/datafixer/fix/ItemIdFix + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_5675 NUMERICAL_ID_TO_STRING_ID_MAP + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_5015 method_5015 + p 0 map + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5013 method_5013 + p 2 itemStackTyped + m (Ljava/lang/Integer;)Lcom/mojang/datafixers/util/Pair; method_5016 method_5016 + p 0 ordinal + m (Lcom/mojang/datafixers/util/Either;)Lcom/mojang/datafixers/util/Pair; method_5014 method_5014 + p 0 id + m (I)Ljava/lang/String; method_5018 fromId + p 0 id + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5017 method_5017 + p 0 named +c net/minecraft/class_9904 net/minecraft/world/block/WireOrientation + f Lnet/minecraft/class_2350; field_52671 front + f Ljava/util/List; field_52676 horizontalDirections + f Ljava/util/Map; field_52680 siblingsBySideBias + f Ljava/util/Map; field_52678 siblingsByFront + f Lnet/minecraft/class_9139; field_52668 PACKET_CODEC + f Lnet/minecraft/class_9904$class_9905; field_52673 sideBias + f Lnet/minecraft/class_2350; field_52670 up + f Ljava/util/List; field_52677 verticalDirections + f Ljava/util/List; field_52675 directionsByPriority + f I field_52674 ordinal + f Ljava/util/Map; field_52679 siblingsByUp + f [Lnet/minecraft/class_9904; field_52669 VALUES + f Lnet/minecraft/class_2350; field_52672 right + m (I)Lnet/minecraft/class_9904; method_61843 fromOrdinal + p 0 ordinal + m ()Ljava/util/List; method_61860 getVerticalDirections + m ()I method_61861 ordinal + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_9904; method_62875 withFrontIfNotUp + p 1 direction + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_9904; method_61844 random + p 0 random + m ()Lnet/minecraft/class_9904$class_9905; method_61856 getSideBias + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_9904; method_61853 withFrontAndSideBias + p 1 direction + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;Lnet/minecraft/class_9904$class_9905;)Lnet/minecraft/class_9904; method_61848 of + p 2 sideBias + p 1 front + p 0 up + m (Lnet/minecraft/class_9904;[Lnet/minecraft/class_9904;)Lnet/minecraft/class_9904; method_61846 initializeValuesArray + p 1 valuesOut + p 0 prime + m ()Ljava/util/List; method_61858 getDirectionsByPriority + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;Lnet/minecraft/class_9904$class_9905;)V + p 2 front + p 1 up + p 3 sideBias + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_9904; method_61847 withUp + p 1 direction + m ()Lnet/minecraft/class_2350; method_61854 getRight + m ()Lnet/minecraft/class_2350; method_61852 getUp + m (Lnet/minecraft/class_9904$class_9905;)Lnet/minecraft/class_9904; method_61845 withSideBias + p 1 sideBias + m (Lnet/minecraft/class_2350;)Z method_61855 method_61855 + p 1 direction + m (Lnet/minecraft/class_2350;)Z method_61857 method_61857 + p 1 direction + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;Lnet/minecraft/class_9904$class_9905;)I method_61851 ordinalFromComponents + p 0 up + p 2 sideBias + p 1 front + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_9904; method_61850 withFront + p 1 direction + m ()Lnet/minecraft/class_2350; method_61849 getFront + m ()Ljava/util/List; method_61859 getHorizontalDirections + m ()Lnet/minecraft/class_9904; method_61842 withOppositeSideBias +c net/minecraft/class_9904$class_9905 net/minecraft/world/block/WireOrientation$SideBias + f Ljava/lang/String; field_52683 name + f Lnet/minecraft/class_9904$class_9905; field_52682 RIGHT + f Lnet/minecraft/class_9904$class_9905; field_52681 LEFT + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()Lnet/minecraft/class_9904$class_9905; method_61863 opposite +c net/minecraft/class_1188 net/minecraft/datafixer/fix/ItemInstanceTheFlatteningFix + f Ljava/util/Map; field_5684 FLATTENING_MAP + f Ljava/util/Set; field_5682 DAMAGEABLE_ITEMS + f Ljava/util/Set; field_5683 ORIGINAL_ITEM_NAMES + m (Ljava/lang/String;I)Ljava/lang/String; method_5042 getItem + p 1 damage + p 0 originalName + m (Ljava/util/HashMap;)V method_5043 method_5043 + p 0 map + m (Ljava/lang/String;)Ljava/lang/String; method_5045 method_5045 + p 0 oldId + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5044 method_5044 + p 2 itemStackTyped +c net/minecraft/class_9903 net/minecraft/world/ExperimentalRedstoneController + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_52667 wireOrientationsAndPowers + f Ljava/util/Deque; field_52666 powerDecreaseQueue + f Ljava/util/Deque; field_52665 powerIncreaseQueue + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ILnet/minecraft/class_9904;Z)V method_61831 spreadPowerUpdateToNeighbors + p 1 world + p 4 orientation + p 5 canIncreasePower + p 2 pos + p 3 power + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ILnet/minecraft/class_9904;Z)V method_61841 spreadPowerUpdateTo + p 2 neighborPos + p 1 world + p 5 canIncreasePower + p 4 orientation + p 3 power + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_9904;)V method_61832 propagatePowerUpdates + p 1 world + p 3 orientation + p 2 pos + m (Lnet/minecraft/class_1937;)V method_61829 update + p 1 world + m (I)I method_61840 unpackPower + p 0 packed + m (I)Lnet/minecraft/class_9904; method_61828 unpackOrientation + p 0 packed + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_61834 canProvidePowerTo + p 0 wireState + p 1 direction + m (Lnet/minecraft/class_9904;ILnet/minecraft/class_2338;Ljava/lang/Integer;)Ljava/lang/Integer; method_61836 method_61836 + p 2 pos2 + p 3 orientationAndPower + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;I)V method_61837 method_61837 + p 1 pos + p 2 power + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;I)V method_61833 method_61833 + p 2 pos + p 3 orientationAndPower + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_9904;)Lnet/minecraft/class_9904; method_61830 tweakOrientation + p 0 world + p 1 orientation + m (Lnet/minecraft/class_2338;ILnet/minecraft/class_9904;)V method_61838 updatePowerAt + p 3 defaultOrientation + p 1 pos + p 2 power + m (Lnet/minecraft/class_9904;I)I method_61835 packOrientationAndPower + p 0 orientation + p 1 power +c net/minecraft/class_1187 net/minecraft/datafixer/fix/ItemStackEnchantmentFix + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_5681 ID_TO_ENCHANTMENTS_MAP + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5035 fixEnchantments + p 1 tagDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28207 method_28207 + p 0 storedEnchantment + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28206 method_28206 + p 0 storedEnchantmentsDynamic + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_5034 method_5034 + p 0 storedEnchantments + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28208 method_28208 + p 0 enchantment + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5036 method_5036 + p 2 itemStackTyped + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_5037 method_5037 + p 0 enchantments + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_5033 method_5033 + p 0 map + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5041 method_5041 + p 1 tagTyped +c net/minecraft/class_9902 net/minecraft/world/block/OrientationHelper + m (Lnet/minecraft/class_9904;Lnet/minecraft/class_2350;)Lnet/minecraft/class_9904; method_61827 withFrontNullable + p 1 direction + p 0 orientation + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;)Lnet/minecraft/class_9904; method_61826 getEmissionOrientation + p 2 front + p 0 world + p 1 up +c net/minecraft/class_1186 net/minecraft/datafixer/fix/ItemInstanceMapIdFix + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5032 method_5032 + p 2 itemStack +c net/minecraft/class_9901 net/minecraft/world/DefaultRedstoneController + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)I method_61825 calculateTotalPowerAt + p 1 world + p 2 pos +c net/minecraft/class_1185 net/minecraft/datafixer/fix/ItemShulkerBoxColorFix + f [Ljava/lang/String; field_5680 COLORED_SHULKER_BOX_IDS + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5031 method_5031 + p 3 itemStack +c net/minecraft/class_1189 net/minecraft/datafixer/fix/ItemInstanceSpawnEggFix + f Ljava/lang/String; field_41287 spawnEggId + f Ljava/util/Map; field_5685 ENTITY_SPAWN_EGGS + m (Ljava/util/HashMap;)V method_5047 method_5047 + p 0 map + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5046 method_5046 + p 5 stack + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;)V + p 2 changesType + p 3 spawnEggId + p 1 outputSchema +c net/minecraft/class_1191 net/minecraft/datafixer/fix/LeavesFix + f Ljava/util/Set; field_5686 LOGS_MAP + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_5688 LEAVES_MAP + f [[I field_5687 AXIAL_OFFSETS + m (I)I method_5050 getZ + p 1 packedLocalPos + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5056 method_5056 + p 4 chunkTyped + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5058 method_5058 + p 1 sectionDynamic + m (Lcom/mojang/datafixers/OpticFinder;[ILcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5063 method_5063 + p 3 sectionsTyped + m (III)I method_5051 packLocalPos + p 2 localZ + p 1 localY + p 0 localX + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5054 method_5054 + p 3 levelTyped + m (ZZZZ)I method_5061 getBoundaryClassBit + p 1 easternmost + p 0 westernmost + p 3 southernmost + p 2 northernmost + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_5055 method_5055 + p 0 map + m (Lnet/minecraft/class_1191$class_1192;)Lnet/minecraft/class_1191$class_1192; method_5049 method_5049 + p 0 fixer + m (Lcom/mojang/datafixers/Typed;)Lnet/minecraft/class_1191$class_1192; method_5057 method_5057 + p 1 sectionTyped + m (I)I method_5052 getX + p 1 packedLocalPos + m (I)I method_5062 getY + p 1 packedLocalPos +c net/minecraft/class_1191$class_1192 net/minecraft/datafixer/fix/LeavesFix$LeavesLogFixer + f Ljava/lang/String; field_29897 PERSISTENT + f Lit/unimi/dsi/fastutil/ints/Int2IntMap; field_5690 leafStates + f Lit/unimi/dsi/fastutil/ints/IntSet; field_5691 logIndices + f Lit/unimi/dsi/fastutil/ints/IntSet; field_5689 leafIndices + f Ljava/lang/String; field_29898 DECAYABLE + f Ljava/lang/String; field_29899 DISTANCE + m (I)Z method_5071 isLeaf + p 1 index + m (III)V method_5070 computeLeafStates + p 1 packedLocalPos + p 3 distance + p 2 propertyIndex + m (I)I method_5065 getDistanceToLog + p 1 index + m (I)Z method_5068 isLog + p 1 index + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;ZI)Lcom/mojang/serialization/Dynamic; method_5072 createLeafProperties + p 3 persistent + p 2 name + p 4 distance + p 1 tag +c net/minecraft/class_1191$class_1193 net/minecraft/datafixer/fix/LeavesFix$ListFixer + f Lnet/minecraft/class_5298; field_5696 blockStateMap + f Lcom/mojang/datafixers/types/Type; field_5695 blockStateType + f Lcom/mojang/datafixers/OpticFinder; field_5693 paletteFinder + f Ljava/util/List; field_5692 properties + f I field_5694 y + f Ljava/lang/String; field_29902 PROPERTIES_KEY + f Ljava/lang/String; field_29901 NAME_KEY + f Ljava/lang/String; field_29900 BLOCK_STATES_KEY + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5083 finalizeFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/datafixers/util/Pair; method_5078 method_5078 + p 0 propertiesDynamic + m (Ljava/util/List;)Ljava/util/List; method_5081 method_5081 + p 0 palettes + m ()Z method_5076 computeIsFixed + m ()Z method_5079 isFixed + m (I)I method_5075 blockStateAt + p 1 index + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/schemas/Schema;)V + p 2 inputSchema + p 1 sectionTyped + m (Ljava/lang/String;ZI)I method_5082 computeFlags + p 1 leafBlockName + p 2 persistent + p 3 distance + m ()I method_5077 getY + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5080 method_5080 + p 1 remainder + m (Lcom/mojang/serialization/Dynamic;)V method_5074 computeFixableBlockStates +c net/minecraft/class_1190 net/minecraft/datafixer/fix/ItemWaterPotionFix + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5048 method_5048 + p 2 itemStackTyped +c net/minecraft/class_1195 net/minecraft/datafixer/fix/LevelFlatGeneratorInfoFix + f Ljava/lang/String; field_29904 SUPERFLAT_PRESET + f Ljava/lang/String; field_29905 GENERATOR_OPTIONS_KEY + f Lcom/google/common/base/Splitter; field_5697 SPLIT_ON_COLON + f Lcom/google/common/base/Splitter; field_5698 SPLIT_ON_ASTERISK + f Lcom/google/common/base/Splitter; field_5701 SPLIT_ON_COMMA + f Lcom/google/common/base/Splitter; field_5699 SPLIT_ON_LOWER_X + f Lcom/google/common/base/Splitter; field_5700 SPLIT_ON_SEMICOLON + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5092 method_5092 + p 1 generatorOptionsDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5090 fixGeneratorOptions + p 1 levelDynamic + m (Ljava/lang/String;)Ljava/lang/String; method_5094 fixFlatGeneratorOptions + p 1 generatorOptions + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5093 method_5093 + p 1 levelTyped +c net/minecraft/class_1199 net/minecraft/datafixer/fix/ObjectiveRenderTypeFix + m (Ljava/lang/String;)Ljava/lang/String; method_5112 parseLegacyRenderType + p 0 oldName + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37376 method_37376 + p 0 typed + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_37377 method_37377 + p 0 objective +c net/minecraft/class_1198 net/minecraft/datafixer/fix/MobSpawnerEntityIdentifiersFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5108 method_5108 + p 0 spawnPotentialsDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5106 fixSpawner + p 1 spawnerDynamic + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5107 method_5107 + p 2 untaggedSpawnerTyped +c net/minecraft/class_1197 net/minecraft/datafixer/fix/ChoiceFix + f Ljava/lang/String; field_5703 name + f Lcom/mojang/datafixers/DSL$TypeReference; field_5704 type + f Ljava/lang/String; field_5705 choiceName + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5105 transform + p 1 inputTyped + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)V + p 5 choiceName + p 1 outputSchema + p 2 changesType + p 3 name + p 4 type +c net/minecraft/class_1196 net/minecraft/datafixer/fix/LevelDataGeneratorOptionsFix + f Ljava/util/Map; field_5702 NUMERICAL_IDS_TO_BIOME_IDS + f Ljava/lang/String; field_29903 GENERATOR_OPTIONS_KEY + m (Ljava/lang/String;)Lcom/mojang/datafixers/util/Pair; method_5099 parseFlatLayer + p 0 layer + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5096 method_5096 + p 1 levelTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28209 method_28209 + p 0 levelDynamic + m (Ljava/util/HashMap;)V method_5101 method_5101 + p 0 map + m (Ljava/lang/String;)Ljava/util/List; method_5103 parseFlatLayers + p 0 layers + m (Ljava/lang/String;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; method_5100 fixGeneratorOptions + p 1 levelDynamicOps + p 0 generatorOptions +c net/minecraft/class_9909 net/minecraft/client/render/FrameGraphBuilder + f Ljava/util/List; field_52700 passes + f Ljava/util/List; field_52699 objectNodes + f Ljava/util/List; field_52698 resourceNodes + m (Lnet/minecraft/class_9909$class_9914;Ljava/util/BitSet;Ljava/util/BitSet;Ljava/util/List;)V method_61907 visit + p 2 unvisited + p 1 node + p 4 topologicalOrderOut + p 3 visiting + m (Ljava/lang/String;)Lnet/minecraft/class_9916; method_61911 createPass + p 1 name + m (Lnet/minecraft/class_9922;)V method_61909 run + p 1 allocator + m (I)Ljava/lang/String; method_61906 method_61906 + p 1 id + m (Lnet/minecraft/class_9909$class_9914;Ljava/util/BitSet;Ljava/util/Deque;)V method_61908 markForVisit + p 1 pass + p 2 result + p 3 deque + m (Ljava/util/Collection;)V method_61915 checkResources + p 1 passes + m (Ljava/lang/String;Lnet/minecraft/class_9924;Lnet/minecraft/class_9909$class_9914;)Lnet/minecraft/class_9909$class_9913; method_61913 createResourceNode + p 1 name + p 2 factory + p 3 stageNode + m ()Ljava/util/BitSet; method_61905 collectPassesToVisit + m (Ljava/lang/String;Lnet/minecraft/class_9924;)Lnet/minecraft/class_9925; method_61912 createResourceHandle + p 2 factory + p 1 name + m (Lnet/minecraft/class_9922;Lnet/minecraft/class_9909$class_9912;)V method_61910 run + p 1 allocator + p 2 profiler + m (Ljava/lang/String;Ljava/lang/Object;)Lnet/minecraft/class_9925; method_61914 createObjectNode + p 1 name + p 2 object +c net/minecraft/class_9909$class_9911 net/minecraft/client/render/FrameGraphBuilder$Handle + f Lnet/minecraft/class_9909$class_9914; field_52704 from + f Lnet/minecraft/class_9909$class_9915; field_52702 parent + f Lnet/minecraft/class_9909$class_9911; field_52706 movedTo + f I field_52703 id + f Ljava/util/BitSet; field_52705 dependents + m (Lnet/minecraft/class_9909$class_9915;ILnet/minecraft/class_9909$class_9914;)V + p 3 from + p 1 parent + p 2 id + m (Lnet/minecraft/class_9909$class_9914;)Lnet/minecraft/class_9909$class_9911; method_61917 moveTo + p 1 pass +c net/minecraft/class_9909$class_9910 net/minecraft/client/render/FrameGraphBuilder$ObjectNode + f Ljava/lang/Object; field_52701 value + m (Ljava/lang/String;Lnet/minecraft/class_9909$class_9914;Ljava/lang/Object;)V + p 2 parent + p 1 name + p 3 value +c net/minecraft/class_9909$class_9915 net/minecraft/client/render/FrameGraphBuilder$Node + f Ljava/lang/String; field_52721 name + f Lnet/minecraft/class_9909$class_9911; field_52722 handle + m ()Ljava/lang/Object; method_61916 get + m (Ljava/lang/String;Lnet/minecraft/class_9909$class_9914;)V + p 2 from + p 1 name +c net/minecraft/class_9909$class_9914 net/minecraft/client/render/FrameGraphBuilder$FramePassImpl + f I field_52712 id + f Ljava/util/List; field_52714 transferredHandles + f Ljava/lang/String; field_52713 name + f Z field_52720 toBeVisited + f Ljava/util/BitSet; field_52715 requiredResourceIds + f Ljava/lang/Runnable; field_52717 renderer + f Ljava/util/BitSet; field_52716 requiredPassIds + f Ljava/util/List; field_52718 resourcesToAcquire + f Ljava/util/BitSet; field_52719 resourcesToRelease + m (Lnet/minecraft/class_9909$class_9911;)V method_61925 addRequired + p 1 handle + m (Lnet/minecraft/class_9909;ILjava/lang/String;)V + p 3 name + p 2 id + m (Lnet/minecraft/class_9909$class_9911;)Lnet/minecraft/class_9909$class_9911; method_61934 transfer + p 1 handle + m (Lnet/minecraft/class_9909$class_9914;)V method_61926 addRequired + p 1 child + m (Lnet/minecraft/class_9909$class_9911;)V method_61932 dependsOn + p 1 handle +c net/minecraft/class_9909$class_9913 net/minecraft/client/render/FrameGraphBuilder$ResourceNode + f Lnet/minecraft/class_9924; field_52709 factory + f Ljava/lang/Object; field_52710 resource + f I field_52708 id + m (Lnet/minecraft/class_9922;)V method_61922 acquire + p 1 allocator + m (Lnet/minecraft/class_9922;)V method_61923 release + p 1 allocator + m (ILjava/lang/String;Lnet/minecraft/class_9909$class_9914;Lnet/minecraft/class_9924;)V + p 2 name + p 1 id + p 4 factory + p 3 from +c net/minecraft/class_9909$class_9912 net/minecraft/client/render/FrameGraphBuilder$Profiler + f Lnet/minecraft/class_9909$class_9912; field_52707 NONE + m (Ljava/lang/String;)V method_61918 acquire + p 1 name + m (Ljava/lang/String;)V method_61919 release + p 1 name + m (Ljava/lang/String;)V method_61920 push + p 1 location + m (Ljava/lang/String;)V method_61921 pop + p 1 location +c net/minecraft/class_9906 net/minecraft/world/RedstoneController + f Lnet/minecraft/class_2457; field_52687 wire + m (Lnet/minecraft/class_2457;)V + p 1 wire + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)I method_61865 getStrongPowerAt + p 1 world + p 2 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)I method_61866 calculateWirePowerAt + p 1 world + p 2 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_9904;Z)V method_61824 update + p 5 blockAdded + p 4 orientation + p 3 state + p 2 pos + p 1 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)I method_61839 getWirePowerAt + p 1 world + p 2 pos +c net/minecraft/class_2490 net/minecraft/block/SlimeBlock + f Lcom/mojang/serialization/MapCodec; field_46446 CODEC + m (Lnet/minecraft/class_1297;)V method_21847 bounce + p 1 entity +c net/minecraft/class_2491 net/minecraft/nbt/NbtEnd + c Represents the NBT end value.\nDefines the end of an {@link NbtCompound} object during serialization,\nand is the type of an empty {@link NbtList}. + f I field_41721 SIZE + f Lnet/minecraft/class_2491; field_21033 INSTANCE + c A dummy instance of the NBT end. It will never appear nested in any parsed NBT\nstructure and should never be used as NBT compound values or list elements. + f Lnet/minecraft/class_4614; field_21032 TYPE + m ()Lnet/minecraft/class_2491; method_10586 copy +c net/minecraft/class_2491$1 net/minecraft/nbt/NbtEnd$1 + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2491; method_23243 read +c net/minecraft/class_2492 net/minecraft/block/SoulSandBlock + f Lnet/minecraft/class_265; field_11521 COLLISION_SHAPE + f I field_31249 SCHEDULED_TICK_DELAY + f Lcom/mojang/serialization/MapCodec; field_46454 CODEC +c net/minecraft/class_2493 net/minecraft/block/SnowyBlock + f Lnet/minecraft/class_2746; field_11522 SNOWY + f Lcom/mojang/serialization/MapCodec; field_46452 CODEC + m (Lnet/minecraft/class_2680;)Z method_35291 isSnow + p 0 state +c net/minecraft/class_1166 net/minecraft/datafixer/fix/EntityRidingToPassengerFix + m (Lcom/mojang/datafixers/schemas/Schema;Lcom/mojang/datafixers/schemas/Schema;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/TypeRewriteRule; method_4978 fixEntityTree + p 4 outputEntityTreeType + p 3 inputEntityTreeType + p 5 inputEntityType + p 2 outputSchema + p 1 inputSchema +c net/minecraft/class_2498 net/minecraft/sound/BlockSoundGroup + f Lnet/minecraft/class_2498; field_17579 SWEET_BERRY_BUSH + f Lnet/minecraft/class_2498; field_11537 GLASS + f Lnet/minecraft/class_2498; field_28427 GLOW_LICHEN + f Lnet/minecraft/class_2498; field_47084 POLISHED_TUFF + f Lnet/minecraft/class_2498; field_28116 SCULK_SENSOR + f Lnet/minecraft/class_2498; field_28702 AZALEA_LEAVES + f Lnet/minecraft/class_2498; field_37638 MANGROVE_ROOTS + f Lnet/minecraft/class_2498; field_22138 ROOTS + f Lnet/minecraft/class_2498; field_52633 SPAWNER + f Lnet/minecraft/class_2498; field_28697 MOSS_BLOCK + f F field_11539 pitch + f Lnet/minecraft/class_2498; field_55083 RESIN_BRICKS + f Lnet/minecraft/class_2498; field_37641 MUD_BRICKS + f Lnet/minecraft/class_2498; field_22141 SOUL_SAND + f Lnet/minecraft/class_2498; field_22153 NYLIUM + f Lnet/minecraft/class_2498; field_27204 COPPER + f Lnet/minecraft/class_2498; field_42766 CHERRY_WOOD + f Lnet/minecraft/class_2498; field_49834 HEAVY_CORE + f Lnet/minecraft/class_2498; field_27199 SMALL_AMETHYST_BUD + f Lnet/minecraft/class_3414; field_11530 hitSound + f Lnet/minecraft/class_2498; field_42770 SUSPICIOUS_SAND + f Lnet/minecraft/class_2498; field_11526 SAND + f Lnet/minecraft/class_2498; field_28701 HANGING_ROOTS + f Lnet/minecraft/class_2498; field_37639 MUDDY_MANGROVE_ROOTS + f Lnet/minecraft/class_2498; field_47085 COPPER_BULB + f Lnet/minecraft/class_2498; field_11538 BAMBOO_SAPLING + f Lnet/minecraft/class_2498; field_28696 MOSS_CARPET + f Lnet/minecraft/class_2498; field_22139 SHROOMLIGHT + f Lnet/minecraft/class_2498; field_22154 FUNGUS + f Lnet/minecraft/class_2498; field_37642 PACKED_MUD + f Lnet/minecraft/class_2498; field_22142 SOUL_SOIL + f Lnet/minecraft/class_2498; field_42767 CHERRY_SAPLING + f Lnet/minecraft/class_3414; field_11541 fallSound + f Lnet/minecraft/class_2498; field_23265 LODESTONE + f Lnet/minecraft/class_2498; field_28699 SMALL_DRIPLEAF + f Lnet/minecraft/class_2498; field_41083 NETHER_WOOD_HANGING_SIGN + f Lnet/minecraft/class_2498; field_48855 VAULT + f Lnet/minecraft/class_2498; field_47086 COPPER_GRATE + f Lnet/minecraft/class_2498; field_59759 DRIED_GHAST + f Lnet/minecraft/class_2498; field_17581 NETHER_WART + f Lnet/minecraft/class_2498; field_11543 WOOL + f Lnet/minecraft/class_2498; field_22148 NETHER_ORE + f Lnet/minecraft/class_2498; field_54773 CREAKING_HEART + f Lnet/minecraft/class_2498; field_37636 FROGLIGHT + f Lnet/minecraft/class_2498; field_11542 BAMBOO + f Lnet/minecraft/class_2498; field_22151 ANCIENT_DEBRIS + f Lnet/minecraft/class_2498; field_27884 POWDER_SNOW + f Lnet/minecraft/class_2498; field_29033 DEEPSLATE + f Lnet/minecraft/class_2498; field_47346 TRIAL_SPAWNER + f Lnet/minecraft/class_2498; field_61430 SHELF + f Lnet/minecraft/class_2498; field_11528 CORAL + f Lnet/minecraft/class_2498; field_17580 CROP + f Lnet/minecraft/class_2498; field_11544 STONE + f Lnet/minecraft/class_2498; field_37637 FROGSPAWN + f Lnet/minecraft/class_2498; field_43255 SUSPICIOUS_GRAVEL + f Lnet/minecraft/class_2498; field_11532 LADDER + f Lnet/minecraft/class_2498; field_22149 BONE + f Lnet/minecraft/class_2498; field_28698 BIG_DRIPLEAF + f Lnet/minecraft/class_2498; field_11531 ANVIL + f Lnet/minecraft/class_2498; field_43256 DECORATED_POT_SHATTER + f Lnet/minecraft/class_2498; field_25183 LILY_PAD + f Lnet/minecraft/class_2498; field_37640 MUD + f Lnet/minecraft/class_2498; field_22140 WEEPING_VINES + f Lnet/minecraft/class_3414; field_11527 stepSound + f Lnet/minecraft/class_2498; field_22152 NETHER_STEM + f Lnet/minecraft/class_2498; field_21214 HONEY + f Lnet/minecraft/class_2498; field_55793 LEAF_LITTER + f Lnet/minecraft/class_2498; field_28693 SPORE_BLOSSOM + f Lnet/minecraft/class_2498; field_11529 GRAVEL + f Lnet/minecraft/class_2498; field_11533 METAL + f Lnet/minecraft/class_2498; field_24119 CHAIN + f Lnet/minecraft/class_2498; field_41085 CHISELED_BOOKSHELF + f Lnet/minecraft/class_2498; field_37646 SCULK_SHRIEKER + f Lnet/minecraft/class_2498; field_11545 SLIME + f Lnet/minecraft/class_2498; field_37645 SCULK_VEIN + f Lnet/minecraft/class_2498; field_22145 NETHERRACK + f Lnet/minecraft/class_2498; field_40313 HANGING_SIGN + f Lnet/minecraft/class_3414; field_11546 breakSound + f Lnet/minecraft/class_2498; field_27200 MEDIUM_AMETHYST_BUD + f Lnet/minecraft/class_2498; field_29035 DEEPSLATE_TILES + f Lnet/minecraft/class_2498; field_55794 IRON + f Lnet/minecraft/class_2498; field_28692 CAVE_VINES + f Lnet/minecraft/class_2498; field_45971 WET_SPONGE + f Lnet/minecraft/class_2498; field_41084 BAMBOO_WOOD_HANGING_SIGN + f Lnet/minecraft/class_2498; field_22147 NETHER_SPROUTS + f F field_11540 volume + f Lnet/minecraft/class_2498; field_11534 WET_GRASS + f Lnet/minecraft/class_2498; field_27196 CANDLE + f Lnet/minecraft/class_2498; field_22146 NETHER_BRICKS + f Lnet/minecraft/class_2498; field_22150 NETHERITE + f Lnet/minecraft/class_2498; field_24121 GILDED_BLACKSTONE + f Lnet/minecraft/class_2498; field_16498 SCAFFOLDING + f Lnet/minecraft/class_2498; field_27201 LARGE_AMETHYST_BUD + f Lnet/minecraft/class_2498; field_29034 DEEPSLATE_BRICKS + f Lnet/minecraft/class_2498; field_42771 DECORATED_POT + f Lnet/minecraft/class_2498; field_28061 POINTED_DRIPSTONE + f Lnet/minecraft/class_2498; field_23083 VINE + f Lnet/minecraft/class_2498; field_11547 WOOD + f Lnet/minecraft/class_2498; field_28700 ROOTED_DIRT + f Lnet/minecraft/class_2498; field_45970 SPONGE + f Lnet/minecraft/class_2498; field_61429 COPPER_GOLEM_STATUE + f Lnet/minecraft/class_2498; field_50169 COBWEB + f Lnet/minecraft/class_2498; field_28695 FLOWERING_AZALEA + f Lnet/minecraft/class_2498; field_11535 GRASS + f Lnet/minecraft/class_2498; field_22143 BASALT + f Lnet/minecraft/class_2498; field_18852 STEM + f Lnet/minecraft/class_2498; field_27197 AMETHYST_BLOCK + f Lnet/minecraft/class_2498; field_37643 SCULK_CATALYST + f Lnet/minecraft/class_2498; field_24120 NETHER_GOLD_ORE + f Lnet/minecraft/class_3414; field_11536 placeSound + f Lnet/minecraft/class_2498; field_42768 CHERRY_LEAVES + f Lnet/minecraft/class_2498; field_40315 NETHER_WOOD + f Lnet/minecraft/class_2498; field_27202 TUFF + f Lnet/minecraft/class_2498; field_42772 FLOWERBED + f Lnet/minecraft/class_2498; field_28694 AZALEA + f Lnet/minecraft/class_2498; field_28060 DRIPSTONE_BLOCK + f Lnet/minecraft/class_2498; field_11548 SNOW + f Lnet/minecraft/class_2498; field_47083 TUFF_BRICKS + f Lnet/minecraft/class_2498; field_17734 LANTERN + f Lnet/minecraft/class_2498; field_44608 INTENTIONALLY_EMPTY + f Lnet/minecraft/class_2498; field_23082 WEEPING_VINES_LOW_PITCH + f Lnet/minecraft/class_2498; field_56574 CACTUS_FLOWER + f Lnet/minecraft/class_2498; field_37644 SCULK + f Lnet/minecraft/class_2498; field_22144 WART_BLOCK + f Lnet/minecraft/class_2498; field_29036 POLISHED_DEEPSLATE + f Lnet/minecraft/class_2498; field_27198 AMETHYST_CLUSTER + f Lnet/minecraft/class_2498; field_55082 RESIN + f Lnet/minecraft/class_2498; field_42769 CHERRY_WOOD_HANGING_SIGN + f Lnet/minecraft/class_2498; field_27203 CALCITE + f Lnet/minecraft/class_2498; field_40314 BAMBOO_WOOD + m ()Lnet/minecraft/class_3414; method_10593 getFallSound + m ()Lnet/minecraft/class_3414; method_10595 getBreakSound + m ()Lnet/minecraft/class_3414; method_10594 getStepSound + m ()F method_10599 getPitch + m (FFLnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;)V + p 1 volume + p 3 breakSound + p 2 pitch + p 5 placeSound + p 4 stepSound + p 7 fallSound + p 6 hitSound + m ()Lnet/minecraft/class_3414; method_10596 getHitSound + m ()F method_10597 getVolume + m ()Lnet/minecraft/class_3414; method_10598 getPlaceSound +c net/minecraft/class_1165 net/minecraft/datafixer/fix/EntityRedundantChanceTagsFix + f Lcom/mojang/serialization/Codec; field_25695 FLOAT_LIST_CODEC + m (ILjava/util/List;)Ljava/lang/Boolean; method_30072 method_30072 + p 1 chances + m (Lcom/mojang/serialization/OptionalDynamic;I)Z method_30073 hasZeroDropChance + p 0 listTag + p 1 expectedLength + m (Ljava/lang/Float;)Z method_30074 method_30074 + p 0 chance + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28188 method_28188 + p 0 entityTyped +c net/minecraft/class_2499 net/minecraft/nbt/NbtList + c Represents a mutable NBT list. Its type is {@value NbtElement#LIST_TYPE}.\n\n

To get values from this list, use methods with type names, such as\n{@link #getInt(int)}. Where applicable, these methods return Java types (e.g. {@code int},\n{@code long[]}) instead of {@link NbtElement} subclasses. If type mismatch occurs or\nthe index is out of bounds, it returns the default value for that type instead of\nthrowing or returning {@code null}.\n\n

Unlike {@link NbtCompound}, there is no Java type-based adder, and numeric value\ngetters will not try to cast the values. + f Ljava/util/List; field_11550 value + f Ljava/lang/String; field_57977 HOMOGENIZED_ENTRY_KEY + f I field_41725 SIZE + f Lnet/minecraft/class_4614; field_21039 TYPE + m (I)Lnet/minecraft/class_2499; method_68588 getListOrEmpty + p 1 index + m (Lnet/minecraft/class_2520;)V method_68580 unwrapAndAdd + p 1 nbt + m ()Ljava/util/stream/Stream; method_68589 streamCompounds + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2520; method_68579 unwrap + p 0 nbt + m (ILjava/lang/String;)Ljava/lang/String; method_68577 getString + p 2 fallback + p 1 index + m (I)Lnet/minecraft/class_2487; method_68582 getCompoundOrEmpty + p 1 index + m (II)I method_68576 getInt + p 2 fallback + p 1 index + m (I)Ljava/util/Optional; method_36111 getIntArray + c {@return the int array at {@code index}, or an empty int array if the index is\nout of bounds or if this is not a list of int arrays}\n\n@apiNote Modifying the returned array also modifies the NBT int array. + p 1 index + m ()Lnet/minecraft/class_2499; method_10612 copy + m (IF)F method_68575 getFloat + p 2 fallback + p 1 index + m (I)Lnet/minecraft/class_2520; method_68590 getNullable + p 1 index + m ()B method_68587 getValueType + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (I)Ljava/lang/Object; get get + p 1 index + m (IS)S method_68578 getShort + p 1 index + p 2 fallback + m (I)Ljava/util/Optional; method_10602 getCompound + c {@return the compound at {@code index}, or an empty compound if the index is out\nof bounds or if this is not a list of compounds} + p 1 index + m (I)Ljava/util/Optional; method_10600 getInt + c {@return the integer at {@code index}, or {@code 0} if the index is out of bounds\nor if this is not a list of integers} + p 1 index + m (Ljava/util/List;)V + p 1 value + m (Lnet/minecraft/class_2520;Ljava/util/function/Consumer;)V method_68581 method_68581 + p 1 callback + p 0 nbt + m (I)Ljava/util/Optional; method_10604 getFloat + c {@return the float at {@code index}, or {@code 0.0f} if the index is out of bounds\nor if this is not a list of floats} + p 1 index + m (I)Ljava/util/Optional; method_10608 getString + c {@return the stringified value at {@code index}, or an empty string if the index\nis out of bounds}\n\n

Unlike other getters, this works with any type, not just {@link NbtString}. + p 1 index + m (I)Ljava/util/Optional; method_68591 getOptional + p 1 index + m (BLnet/minecraft/class_2520;)Lnet/minecraft/class_2520; method_68573 wrapIfNeeded + p 0 type + p 1 value + m (ILnet/minecraft/class_2520;)Lnet/minecraft/class_2520; method_68585 set + m (Lnet/minecraft/class_2520;)Lnet/minecraft/class_2487; method_68584 convertToCompound + p 0 nbt + m (ILjava/lang/Object;)V add add + p 2 element + p 1 index + m (I)Ljava/util/Optional; method_36112 getLongArray + c {@return the long array at {@code index}, or an empty long array if the index is\nout of bounds or if this is not a list of long arrays}\n\n@apiNote Modifying the returned array also modifies the NBT long array. + p 1 index + m (ILnet/minecraft/class_2520;)V method_68586 add + m (ID)D method_68574 getDouble + p 2 fallback + p 1 index + m (I)Lnet/minecraft/class_2520; method_10534 get + m (I)Ljava/util/Optional; method_10603 getList + c {@return the list at {@code index}, or an empty list if the index is out\nof bounds or if this is not a list of lists} + p 1 index + m (I)Ljava/util/Optional; method_10611 getDouble + c {@return the double at {@code index}, or {@code 0.0} if the index is out of bounds\nor if this is not a list of doubles} + p 1 index + m (I)Lnet/minecraft/class_2520; method_10536 remove + m (ILjava/lang/Object;)Ljava/lang/Object; set set + p 1 index + p 2 element + m (Lnet/minecraft/class_2487;)Z method_68583 isConvertedEntry + p 0 nbt + m (I)Ljava/util/Optional; method_10609 getShort + c {@return the short at {@code index}, or {@code 0} if the index is out of bounds\nor if this is not a list of shorts} + p 1 index +c net/minecraft/class_2499$1 net/minecraft/nbt/NbtList$1 + m (Ljava/io/DataInput;Lnet/minecraft/class_6836;Lnet/minecraft/class_2505;)Lnet/minecraft/class_6836$class_6838; method_53894 scanList + p 2 tracker + p 1 visitor + p 0 input + m (Ljava/io/DataInput;)I method_72224 readListLength + p 0 input + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2499; method_23249 read + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2499; method_53895 readList + p 1 tracker + p 0 input +c net/minecraft/class_1163 net/minecraft/client/color/world/BiomeColors + f Lnet/minecraft/class_6539; field_57104 DRY_FOLIAGE_COLOR + f Lnet/minecraft/class_6539; field_5666 WATER_COLOR + f Lnet/minecraft/class_6539; field_5665 GRASS_COLOR + f Lnet/minecraft/class_6539; field_5664 FOLIAGE_COLOR + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;)I method_4961 getWaterColor + p 0 world + p 1 pos + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;)I method_4962 getGrassColor + p 1 pos + p 0 world + m (Lnet/minecraft/class_1959;DD)I method_68161 method_68161 + p 0 biome + p 3 z + p 1 x + m (Lnet/minecraft/class_1959;DD)I method_23791 method_23791 + p 0 biome + p 3 z + p 1 x + m (Lnet/minecraft/class_1959;DD)I method_68162 method_68162 + p 3 z + p 0 biome + p 1 x + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;)I method_68163 getDryFoliageColor + p 1 pos + p 0 world + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;)I method_4966 getFoliageColor + p 1 pos + p 0 world + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;Lnet/minecraft/class_6539;)I method_4965 getColor + p 2 resolver + p 1 pos + p 0 world +c net/minecraft/class_2494 net/minecraft/nbt/NbtFloat + c Represents an NBT 32-bit floating-point number. Its type is {@value NbtElement#FLOAT_TYPE}.\nInstances are immutable. + f I field_41722 SIZE + f Lnet/minecraft/class_2494; field_21034 ZERO + c The NBT float representing {@code 0.0f}. + f Lnet/minecraft/class_4614; field_21035 TYPE + f F comp_3819 value + m (F)Lnet/minecraft/class_2494; method_23244 of + c {@return the NBT float from {@code value}} + p 0 value + m (F)V + p 1 value + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_2494; method_10587 copy + m ()F comp_3819 value +c net/minecraft/class_2494$1 net/minecraft/nbt/NbtFloat$1 + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2494; method_23245 read + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)F method_53891 readFloat + p 0 input + p 1 tracker +c net/minecraft/class_1169 net/minecraft/datafixer/fix/EntityShulkerColorFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_4985 fixShulkerColor + p 1 shulkerDynamic +c net/minecraft/class_2495 net/minecraft/nbt/NbtIntArray + c Represents an NBT 32-bit integer array. This object is mutable and backed by\n{@code int[]}. Its type is {@value NbtElement#INT_ARRAY_TYPE}. Like Java arrays,\naccessing indices that are out of bounds will throw {@link ArrayIndexOutOfBoundsException}.\nThe backing array can be obtained via {@link #getIntArray()}. + f I field_41723 SIZE + f Lnet/minecraft/class_4614; field_21036 TYPE + f [I field_11524 value + m ([I)V + p 1 value + m ()Lnet/minecraft/class_2495; method_10591 copy + m (I)Lnet/minecraft/class_2497; method_17807 method_10536 + m (I)Lnet/minecraft/class_2497; method_10589 method_10534 + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()[I method_10588 getIntArray + c {@return the underlying int array}\n\n@apiNote This does not copy the array, so modifications to the returned array\nalso apply to this NBT int array. +c net/minecraft/class_2495$1 net/minecraft/nbt/NbtIntArray$1 + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2495; method_23246 read + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)[I method_53892 readIntArray + p 0 input + p 1 tracker +c net/minecraft/class_1168 net/minecraft/datafixer/fix/EntitySkeletonSplitFix +c net/minecraft/class_2496 net/minecraft/block/SpawnerBlock + f Lcom/mojang/serialization/MapCodec; field_46455 CODEC +c net/minecraft/class_1167 net/minecraft/datafixer/fix/EntityTransformFix + f Ljava/lang/String; field_5670 name + m (Ljava/lang/String;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/util/Pair; method_4982 transform + p 2 entityTyped + p 1 choice + m (Ljava/lang/String;Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 name + p 3 changesType + p 2 outputSchema + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; method_4983 makeTyped +c net/minecraft/class_2497 net/minecraft/nbt/NbtInt + c Represents an NBT 32-bit integer. Its type is {@value NbtElement#INT_TYPE}.\nInstances are immutable. + f I field_41724 SIZE + f Lnet/minecraft/class_4614; field_21037 TYPE + f I comp_3820 value + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (I)V + p 1 value + m (I)Lnet/minecraft/class_2497; method_23247 of + c {@return the NBT integer from {@code value}} + p 0 value + m ()Lnet/minecraft/class_2497; method_10592 copy + m ()I comp_3820 value +c net/minecraft/class_2497$1 net/minecraft/nbt/NbtInt$1 + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2497; method_23248 read + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)I method_53893 readInt + p 0 input + p 1 tracker +c net/minecraft/class_2497$class_4611 net/minecraft/nbt/NbtInt$Cache + f [Lnet/minecraft/class_2497; field_21038 VALUES + f I field_33198 MIN + f I field_33197 MAX +c net/minecraft/class_1173 net/minecraft/datafixer/fix/EntityTippedArrowFix +c net/minecraft/class_1172 net/minecraft/datafixer/fix/EntityWolfColorFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_4988 fixCollarColor + p 1 wolfDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_4989 method_4989 + p 0 colorDynamic +c net/minecraft/class_1171 net/minecraft/datafixer/fix/EntityStringUuidFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_4986 method_4986 + p 0 entityDynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_4987 method_4987 + p 0 entityTyped +c net/minecraft/class_1170 net/minecraft/datafixer/fix/EntityTheRenameningBlockFix + f Ljava/util/Map; field_5673 ITEMS + f Ljava/util/Map; field_5672 BLOCKS + f Ljava/lang/String; field_29882 BRED_PREFIX + f Ljava/util/Map; field_5671 ENTITIES +c net/minecraft/class_1177 net/minecraft/datafixer/fix/HeightmapRenamingFix + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_4999 method_4999 + p 2 chunkTyped + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5000 method_5000 + p 1 levelTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_4998 renameHeightmapTags + p 1 levelDynamic +c net/minecraft/class_1176 net/minecraft/datafixer/fix/IglooMetadataRemovalFix + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_49462 method_49462 + p 0 structureFeatureTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_4993 removeMetadata + p 0 structureFeatureDynamic + m (Lcom/mojang/serialization/Dynamic;)Z method_4997 isIgloo + p 0 structureFeatureDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_4996 removeIgloos + p 0 structureFeatureDynamic +c net/minecraft/class_1175 net/minecraft/datafixer/fix/EntityZombieSplitFix + f Ljava/util/function/Supplier; field_51480 ZOMBIE_VILLAGER_TYPE + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59813 method_59813 + p 0 entityDynamic + m (Lcom/mojang/datafixers/Typed;I)Lcom/mojang/datafixers/Typed; method_59812 setZombieVillagerProfession + p 1 entityTyped + p 2 variant + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59811 method_59811 + p 1 zombieVillagerDynamic +c net/minecraft/class_1174 net/minecraft/datafixer/fix/EntityZombieVillagerTypeFix + f I field_29883 TYPE_COUNT + m (I)I method_4991 clampType + p 1 type + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_4990 fixZombieType + p 1 zombieDynamic +c net/minecraft/class_1179 net/minecraft/datafixer/fix/ItemBannerColorFix + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5004 method_5004 + p 3 itemStackTyped +c net/minecraft/class_1178 net/minecraft/datafixer/fix/ItemCustomNameToComponentFix +c net/minecraft/class_8696 net/minecraft/unused/packageinfo/PackageInfo8696 +c net/minecraft/class_8697 net/minecraft/network/listener/ClientPacketListener +c net/minecraft/class_6032 net/minecraft/util/collection/WeightedList + f Ljava/util/List; field_30169 entries + f Lnet/minecraft/class_5819; field_30170 random + m (Lnet/minecraft/class_6032$class_6033;)V method_35089 method_35089 + p 1 entry + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_35091 createCodec + p 0 codec + m (Lnet/minecraft/class_6032;)Ljava/util/List; method_35090 method_35090 + p 0 weightedList + m (Ljava/lang/Object;I)Lnet/minecraft/class_6032; method_35093 add + p 1 data + p 2 weight + m (Ljava/util/List;)V + p 1 list + m ()Lnet/minecraft/class_6032; method_35088 shuffle + m ()Ljava/util/stream/Stream; method_35094 stream +c net/minecraft/class_6032$class_6033 net/minecraft/util/collection/WeightedList$Entry + f Ljava/lang/Object; field_30171 data + f D field_30173 shuffledOrder + f I field_30172 weight + m (F)V method_35096 setShuffledOrder + p 1 random + m (Ljava/lang/Object;I)V + p 1 data + p 2 weight + m ()D method_35102 getShuffledOrder + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_35099 createCodec + p 0 codec + m ()I method_35100 getWeight + m ()Ljava/lang/Object; method_35095 getElement +c net/minecraft/class_6032$class_6033$1 net/minecraft/util/collection/WeightedList$Entry$1 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_6032$class_6033;)Lcom/mojang/datafixers/util/Pair; method_35106 method_35106 + p 1 entry + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decode decode + p 2 data + p 1 ops + m (Lnet/minecraft/class_6032$class_6033;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_35104 encode + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode encode + p 1 entries + p 3 data + p 2 ops + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/Object;)Lnet/minecraft/class_6032$class_6033; method_35105 method_35105 + p 1 data +c net/minecraft/class_6034 net/minecraft/unused/packageinfo/PackageInfo6034 +c net/minecraft/class_8690 net/minecraft/client/texture/Scaling + f Lnet/minecraft/class_8690; field_45649 STRETCH + f Lcom/mojang/serialization/Codec; field_45648 CODEC + m ()Lnet/minecraft/class_8690$class_8695; method_52876 getType +c net/minecraft/class_8690$class_8694 net/minecraft/client/texture/Scaling$Tile + f Lcom/mojang/serialization/MapCodec; field_45655 CODEC + f I comp_1644 width + f I comp_1645 height + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52885 method_52885 + p 0 instance + m ()I comp_1645 height + m ()I comp_1644 width + m (II)V + p 1 width + p 2 height +c net/minecraft/class_8690$class_8695 net/minecraft/client/texture/Scaling$Type + f Lcom/mojang/serialization/MapCodec; field_45661 codec + f Lcom/mojang/serialization/Codec; field_45659 CODEC + f Ljava/lang/String; field_45660 name + f Lnet/minecraft/class_8690$class_8695; field_45657 TILE + f Lnet/minecraft/class_8690$class_8695; field_45656 STRETCH + f Lnet/minecraft/class_8690$class_8695; field_45658 NINE_SLICE + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/serialization/MapCodec;)V + p 4 codec + p 3 name + m ()Lcom/mojang/serialization/MapCodec; method_52886 getCodec +c net/minecraft/class_8690$class_8693 net/minecraft/client/texture/Scaling$Stretch + f Lcom/mojang/serialization/MapCodec; field_45654 CODEC +c net/minecraft/class_8690$class_8691 net/minecraft/client/texture/Scaling$NineSlice + f Lcom/mojang/serialization/MapCodec; field_45650 CODEC + f Z comp_3202 stretchInner + f I comp_1638 height + f I comp_1637 width + f Lnet/minecraft/class_8690$class_8691$class_8692; comp_1639 border + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52877 method_52877 + p 0 instance + m (Lnet/minecraft/class_8690$class_8691;)Lcom/mojang/serialization/DataResult; method_53493 validate + p 0 nineSlice + m ()Z comp_3202 stretchInner + m ()Lnet/minecraft/class_8690$class_8691$class_8692; comp_1639 border + m ()I comp_1637 width + m ()I comp_1638 height + m (IILnet/minecraft/class_8690$class_8691$class_8692;Z)V + p 1 width + p 2 height + p 3 border + p 4 stretchInner +c net/minecraft/class_8690$class_8691$class_8692 net/minecraft/client/texture/Scaling$NineSlice$Border + f Lcom/mojang/serialization/Codec; field_45653 CODEC + f Lcom/mojang/serialization/Codec; field_45651 UNIFORM_SIDE_SIZES_CODEC + f Lcom/mojang/serialization/Codec; field_45652 DIFFERENT_SIDE_SIZES_CODEC + f I comp_1641 top + f I comp_1640 left + f I comp_1643 bottom + f I comp_1642 right + m (Lnet/minecraft/class_8690$class_8691$class_8692;)Lcom/mojang/serialization/DataResult; method_52882 method_52882 + p 0 border + m (Lnet/minecraft/class_8690$class_8691$class_8692;)Lcom/mojang/datafixers/util/Either; method_52880 method_52880 + p 0 border + m ()Ljava/util/OptionalInt; method_52883 getUniformSideSize + m (Ljava/lang/Integer;)Lnet/minecraft/class_8690$class_8691$class_8692; method_52881 method_52881 + p 0 size + m ()I comp_1642 right + m ()I comp_1641 top + m ()I comp_1643 bottom + m ()I comp_1640 left + m (IIII)V + p 1 left + p 2 top + p 3 right + p 4 bottom +c net/minecraft/class_6030 net/minecraft/entity/ai/brain/task/LongJumpTask + f Ljava/util/function/BiPredicate; field_37432 jumpToPredicate + f I field_30135 MAX_TARGET_SEARCH_TIME + f F field_30141 maxRange + f Ljava/util/List; field_30142 potentialTargets + f Ljava/util/function/Function; field_33460 entityToSound + f I field_30145 targetSearchTime + f I field_30139 verticalRange + f I field_30137 PATHING_DISTANCE + f I field_30140 horizontalRange + f I field_30136 JUMP_WINDUP_TIME + f I field_30134 RUN_TIME + f J field_30146 targetPickedTime + f Lnet/minecraft/class_243; field_30144 currentTarget + f Ljava/util/List; field_37431 RAM_RANGES + f Lnet/minecraft/class_6019; field_30138 cooldownRange + f Ljava/util/Optional; field_30143 startPos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Z method_41341 method_41341 + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)Z method_35077 shouldKeepRunning + m (Lnet/minecraft/class_6019;IIFLjava/util/function/Function;Ljava/util/function/BiPredicate;)V + p 3 horizontalRange + p 2 verticalRange + p 5 entityToSound + p 4 maxRange + p 6 jumpToPredicate + p 1 cooldownRange + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)Z method_35076 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_35083 keepRunning + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Lnet/minecraft/class_6030$class_6031; method_41340 method_41340 + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_41342 pickTarget + p 1 world + p 3 time + p 2 entity + m (Lnet/minecraft/class_6019;IIFLjava/util/function/Function;)V + p 3 horizontalRange + p 2 verticalRange + p 5 entityToSound + p 4 maxRange + p 1 cooldownRange + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_2338;)Z method_45333 shouldJumpTo + p 1 pos + p 0 entity + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_35078 getJumpingVelocity + p 1 entity + p 2 targetPos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_35082 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;Lnet/minecraft/class_2338;)Z method_41337 canJumpTo + p 2 entity + p 3 pos + p 1 world + m (Lnet/minecraft/class_3218;)Ljava/util/Optional; method_41336 removeRandomTarget + p 1 world +c net/minecraft/class_6030$class_6031 net/minecraft/entity/ai/brain/task/LongJumpTask$Target + f Lnet/minecraft/class_2338; comp_3478 pos + f I comp_3479 weight + m ()Lnet/minecraft/class_2338; comp_3478 pos + m (Lnet/minecraft/class_2338;I)V + p 1 pos + p 2 weight + m ()I comp_3479 weight +c net/minecraft/class_6036 net/minecraft/unused/packageinfo/PackageInfo6036 +c net/minecraft/class_7367 net/minecraft/resource/InputSupplier + m (Ljava/nio/file/Path;)Lnet/minecraft/class_7367; create create + p 0 path + m (Ljava/util/zip/ZipFile;Ljava/util/zip/ZipEntry;)Lnet/minecraft/class_7367; create create + p 0 zipFile + p 1 zipEntry +c net/minecraft/class_6039 net/minecraft/unused/packageinfo/PackageInfo6039 +c net/minecraft/class_7368 net/minecraft/resource/metadata/ResourceMetadata + f Lnet/minecraft/class_7367; field_40056 NONE_SUPPLIER + f Lnet/minecraft/class_7368; field_38688 NONE + m (Ljava/io/InputStream;)Lnet/minecraft/class_7368; method_43042 create + p 0 stream + m (Ljava/util/Collection;)Ljava/util/List; method_72364 decode + p 1 serializers + m (Lnet/minecraft/class_7677;)Ljava/util/Optional; method_72365 decodeAsValue + p 1 additionalMetadata + m (Lnet/minecraft/class_7677;)Ljava/util/Optional; method_43041 decode + p 1 serializer +c net/minecraft/class_6038 net/minecraft/unused/packageinfo/PackageInfo6038 +c net/minecraft/class_7376 net/minecraft/predicate/entity/EntitySubPredicate + f Lcom/mojang/serialization/Codec; field_45747 CODEC + m ()Lcom/mojang/serialization/MapCodec; method_58152 getCodec + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_3218;Lnet/minecraft/class_243;)Z method_22497 test + p 3 pos + p 2 world + p 1 entity +c net/minecraft/class_6044 net/minecraft/entity/ai/brain/sensor/AxolotlAttackablesSensor + f F field_30248 TARGET_RANGE + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_35144 canHunt + p 2 target + p 1 axolotl + m (Lnet/minecraft/class_1309;)Z method_35145 isAlwaysHostileTo + p 1 axolotl + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_35146 isInRange + p 2 target + p 1 axolotl +c net/minecraft/class_6043 net/minecraft/unused/packageinfo/PackageInfo6043 +c net/minecraft/class_6046 net/minecraft/unused/packageinfo/PackageInfo6046 +c net/minecraft/class_7374 net/minecraft/unused/packageinfo/PackageInfo7374 +c net/minecraft/class_7375 net/minecraft/entity/passive/CatVariant + f Lcom/mojang/serialization/Codec; field_55959 ENTRY_CODEC + f Lnet/minecraft/class_9139; field_51941 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_56257 CODEC + f Lcom/mojang/serialization/Codec; field_56258 NETWORK_CODEC + f Lnet/minecraft/class_12079$class_10726; comp_3560 assetInfo + f Lnet/minecraft/class_10702; comp_3561 spawnConditions + m (Lnet/minecraft/class_12079$class_10726;)V + p 1 assetInfo + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67128 method_67128 + p 0 instance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67127 method_67127 + p 0 instance + m ()Lnet/minecraft/class_10702; comp_3561 spawnConditions + m ()Lnet/minecraft/class_12079$class_10726; comp_3560 assetInfo + m (Lnet/minecraft/class_12079$class_10726;Lnet/minecraft/class_10702;)V + p 1 assetInfo + p 2 spawnConditions +c net/minecraft/class_6045 net/minecraft/entity/ai/brain/sensor/NearestVisibleLivingEntitySensor + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_35148 matches + p 3 target + p 1 world + p 2 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Ljava/util/Optional; method_35151 getNearestVisibleLivingEntity + p 1 world + p 2 entity + m (Lnet/minecraft/class_1309;)Ljava/util/Optional; method_35147 getVisibleLivingEntities + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_35152 method_35152 + p 3 target + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_6670;)Ljava/util/Optional; method_35149 method_35149 + p 3 entities + m ()Lnet/minecraft/class_4140; method_35150 getOutputMemoryModule +c net/minecraft/class_6040 net/minecraft/unused/packageinfo/PackageInfo6040 +c net/minecraft/class_7372 net/minecraft/util/math/floatprovider/MultipliedFloatSupplier + f [Lnet/minecraft/class_7373; field_38707 multipliers + m ([Lnet/minecraft/class_7373;)V + p 1 multipliers +c net/minecraft/class_7373 net/minecraft/util/math/floatprovider/FloatSupplier + m (Lnet/minecraft/class_5819;)F method_33920 get + p 1 random +c net/minecraft/class_6042 net/minecraft/unused/packageinfo/PackageInfo6042 +c net/minecraft/class_7370 net/minecraft/datafixer/fix/AdvancementCriteriaRenameFix + f Ljava/lang/String; field_38703 advancementId + f Ljava/util/function/UnaryOperator; field_38704 renamer + f Ljava/lang/String; field_38702 description + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/UnaryOperator;)V + p 1 outputSchema + p 2 description + p 3 advancementId + p 4 renamer + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_43066 method_43066 + p 2 keyString + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_43063 method_43063 + p 1 typed + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43069 method_43069 + p 1 key + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_43064 method_43064 + p 1 pair + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43067 method_43067 + p 1 advancement + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43068 method_43068 + p 1 criteria + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43065 update + p 1 advancements +c net/minecraft/class_6041 net/minecraft/unused/packageinfo/PackageInfo6041 +c net/minecraft/class_7371 net/minecraft/datafixer/fix/EntityVariantTypeFix + f Ljava/lang/String; field_38705 variantKey + f Ljava/util/function/IntFunction; field_38706 variantIntToId + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/Number;)Lcom/mojang/serialization/Dynamic; method_43071 method_43071 + p 2 variantInt + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43076 method_43076 + p 1 variantDynamic + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/IntFunction;)V + p 1 outputSchema + p 2 name + p 3 type + p 4 entityId + p 5 variantKey + p 6 variantIntToId + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43070 method_43070 + p 1 entityDynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/serialization/Dynamic; method_43072 updateEntity + p 3 variantIntToId + p 1 oldVariantKey + p 2 newVariantKey + p 0 entityDynamic +c net/minecraft/class_6048 net/minecraft/unused/packageinfo/PackageInfo6048 +c net/minecraft/class_6047 net/minecraft/unused/packageinfo/PackageInfo6047 +c net/minecraft/class_7378 net/minecraft/predicate/entity/EntitySubPredicateTypes + f Lcom/mojang/serialization/MapCodec; field_50135 RAIDER + f Lcom/mojang/serialization/MapCodec; field_38727 PLAYER + f Lcom/mojang/serialization/MapCodec; field_38728 SLIME + f Lcom/mojang/serialization/MapCodec; field_38725 LIGHTNING + f Lcom/mojang/serialization/MapCodec; field_38726 FISHING_HOOK + f Lcom/mojang/serialization/MapCodec; field_53974 SHEEP + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_58157 getDefault + p 0 registry + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_58156 register + p 1 codec + p 0 id +c net/minecraft/class_6049 net/minecraft/unused/packageinfo/PackageInfo6049 +c net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent + m (Ljava/lang/String;)V + p 1 remoteAddress +c net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$class_6779 net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$Recorder + f Ljava/util/concurrent/atomic/AtomicLong; field_35649 receivedBytes + f Lnet/minecraft/util/profiling/jfr/event/NetworkSummaryEvent; field_35651 event + f Ljava/util/concurrent/atomic/AtomicLong; field_35647 sentBytes + f Ljava/util/concurrent/atomic/AtomicInteger; field_35650 receivedPackets + f Ljava/util/concurrent/atomic/AtomicInteger; field_35648 sentPackets + m (I)V method_39496 addReceivedPacket + p 1 bytes + m (I)V method_39495 addSentPacket + p 1 bytes + m (Ljava/lang/String;)V + p 1 remoteAddress + m ()V method_39494 commit +c net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$class_6778 net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$Names + f Ljava/lang/String; field_35642 REMOTE_ADDRESS + f Ljava/lang/String; field_35643 SENT_BYTES + f Ljava/lang/String; field_35644 RECEIVED_BYTES + f Ljava/lang/String; field_35645 SENT_PACKETS + f Ljava/lang/String; field_35646 RECEIVED_PACKETS +c net/minecraft/class_6011 net/minecraft/util/collection/Weighting + m (Ljava/util/List;Ljava/util/function/ToIntFunction;)I method_34984 getWeightSum + p 0 pool + p 1 weightGetter + m (Lnet/minecraft/class_5819;Ljava/util/List;Ljava/util/function/ToIntFunction;)Ljava/util/Optional; method_34986 getRandom + p 2 weightGetter + p 0 random + p 1 pool + m (Ljava/util/List;ILjava/util/function/ToIntFunction;)Ljava/util/Optional; method_34985 getAt + p 0 pool + p 1 totalWeight + p 2 weightGetter + m (Lnet/minecraft/class_5819;Ljava/util/List;ILjava/util/function/ToIntFunction;)Ljava/util/Optional; method_34987 getRandom + p 0 random + p 1 pool + p 2 totalWeight + p 3 weightGetter +c net/minecraft/class_8674 net/minecraft/client/network/ClientConfigurationNetworkHandler + f Lnet/minecraft/class_11653; field_61721 chunkLoadProgress + f Lcom/mojang/authlib/GameProfile; field_45597 profile + f Lnet/minecraft/class_9173; field_48766 clientRegistries + f Lorg/slf4j/Logger; field_45596 LOGGER + f Lnet/minecraft/class_5455$class_6890; field_45598 registryManager + f Lnet/minecraft/class_338$class_9477; field_50223 chatState + f Lnet/minecraft/class_7699; field_45599 enabledFeatures + f Lnet/minecraft/class_2561; field_63065 CODE_OF_CONDUCT_DISCONNECT_REASON + f Z field_62595 receivedCodeOfConduct + f Lnet/minecraft/class_9247; field_49123 dataPackManager + m (Lnet/minecraft/class_8710;)V method_52797 handleCustomPayload + p 1 payload + m (Lnet/minecraft/class_437;Z)V method_73469 method_73469 + p 2 acknowledged + m (Ljava/util/function/Function;)Ljava/lang/Object; method_57044 openClientDataPack + p 1 opener + m (Lnet/minecraft/class_5912;)Lnet/minecraft/class_5455$class_6890; method_57043 method_57043 + p 1 factory +c net/minecraft/class_6010 net/minecraft/util/collection/Weighted + c A data value with an associated weight. Weighted values are used in\n{@linkplain Pool pools}. + f Lorg/slf4j/Logger; field_55645 LOGGER + f I comp_2543 weight + f Ljava/lang/Object; comp_2542 value + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66212 method_66212 + p 1 instance + m (Ljava/util/function/Function;)Lnet/minecraft/class_6010; method_68255 transform + p 1 function + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_34981 createCodec + p 0 dataCodec + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/Codec; method_66211 createCodec + p 0 dataCodec + m (Ljava/lang/Object;I)V + p 2 weight + p 1 value + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_73184 createPacketCodec + p 0 dataCodec + m ()Ljava/lang/Object; comp_2542 value + m ()I comp_2543 weight +c net/minecraft/class_8675 net/minecraft/client/network/ClientConnectionState + f Lnet/minecraft/class_11653; comp_4466 chunkLoadProgress + f Lnet/minecraft/class_642; comp_1616 serverInfo + f Lnet/minecraft/class_7975; comp_1612 worldSession + f Lnet/minecraft/class_338$class_9477; comp_2553 chatState + f Lnet/minecraft/class_7699; comp_1614 enabledFeatures + f Ljava/util/Map; comp_2849 customReportDetails + f Ljava/lang/String; comp_1615 serverBrand + f Lnet/minecraft/class_5455$class_6890; comp_1613 receivedRegistries + f Ljava/util/Map; comp_4611 seenPlayers + f Ljava/util/Map; comp_2205 serverCookies + f Lcom/mojang/authlib/GameProfile; comp_1611 localGameProfile + f Lnet/minecraft/class_9782; comp_2850 serverLinks + f Z comp_4612 seenInsecureChatWarning + f Lnet/minecraft/class_437; comp_1617 postDisconnectScreen + m ()Lnet/minecraft/class_11653; comp_4466 chunkLoadProgress + m ()Lnet/minecraft/class_642; comp_1616 serverInfo + m ()Lnet/minecraft/class_7975; comp_1612 worldSession + m ()Ljava/util/Map; comp_2205 serverCookies + m ()Lcom/mojang/authlib/GameProfile; comp_1611 localGameProfile + m ()Ljava/lang/String; comp_1615 serverBrand + m ()Z comp_4612 seenInsecureChatWarning + m ()Ljava/util/Map; comp_4611 seenPlayers + m ()Ljava/util/Map; comp_2849 customReportDetails + m ()Lnet/minecraft/class_7699; comp_1614 enabledFeatures + m ()Lnet/minecraft/class_5455$class_6890; comp_1613 receivedRegistries + m ()Lnet/minecraft/class_338$class_9477; comp_2553 chatState + m ()Lnet/minecraft/class_437; comp_1617 postDisconnectScreen + m ()Lnet/minecraft/class_9782; comp_2850 serverLinks + m (Lnet/minecraft/class_11653;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_7975;Lnet/minecraft/class_5455$class_6890;Lnet/minecraft/class_7699;Ljava/lang/String;Lnet/minecraft/class_642;Lnet/minecraft/class_437;Ljava/util/Map;Lnet/minecraft/class_338$class_9477;Ljava/util/Map;Lnet/minecraft/class_9782;Ljava/util/Map;Z)V + p 1 chunkLoadProgress + p 2 localGameProfile + p 3 worldSession + p 4 receivedRegistries + p 5 enabledFeatures + p 6 serverBrand + p 7 serverInfo + p 8 postDisconnectScreen + p 9 serverCookies + p 10 chatState + p 11 customReportDetails + p 12 serverLinks + p 13 seenPlayers + p 14 seenInsecureChatWarning +c net/minecraft/class_6013 net/minecraft/unused/packageinfo/PackageInfo6013 +c net/minecraft/class_6012 net/minecraft/util/collection/Pool + f I field_29934 totalWeight + f Lnet/minecraft/class_6012$class_10581; field_55647 content + f I field_55646 FLATTENED_CONTENT_THRESHOLD + f Ljava/util/List; field_29935 entries + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_34991 createCodec + p 0 entryCodec + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_66217 createNonEmptyCodec + p 0 entryCodec + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/Codec; method_66213 createCodec + p 0 entryCodec + m ()Lnet/minecraft/class_6012$class_6006; method_66215 builder + m (Lnet/minecraft/class_5819;)Ljava/util/Optional; method_34992 getOrEmpty + p 1 random + m (Ljava/util/List;)V + p 1 entries + m ()Ljava/util/List; method_34994 getEntries + m ()Lnet/minecraft/class_6012; method_34990 empty + m (Lnet/minecraft/class_5819;)Ljava/lang/Object; method_66216 get + p 1 random + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/Codec; method_66218 createNonEmptyCodec + p 0 entryCodec + m ()Z method_34993 isEmpty + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_73185 createPacketCodec + p 0 entryCodec + m (Ljava/util/function/Function;)Lnet/minecraft/class_6012; method_68256 transform + p 1 function + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/util/function/Function;Lnet/minecraft/class_6010;)Lnet/minecraft/class_6010; method_68257 method_68257 + p 1 entry + m (Ljava/util/List;)Lnet/minecraft/class_6012; method_34988 of + p 0 entries + m (Ljava/lang/Object;)Lnet/minecraft/class_6012; method_66214 of + p 0 entry + m (Ljava/lang/Object;)Z method_66647 contains + p 1 value + m ([Lnet/minecraft/class_6010;)Lnet/minecraft/class_6012; method_34989 of + p 0 entries +c net/minecraft/class_6012$class_6006 net/minecraft/util/collection/Pool$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_29926 entries + m ()Lnet/minecraft/class_6012; method_34974 build + m (Ljava/lang/Object;)Lnet/minecraft/class_6012$class_6006; method_54453 add + p 1 object + m (Ljava/lang/Object;I)Lnet/minecraft/class_6012$class_6006; method_34975 add + p 1 object + p 2 weight +c net/minecraft/class_6012$class_10580 net/minecraft/util/collection/Pool$FlattenedContent + f [Ljava/lang/Object; field_55649 entries + m (Ljava/util/List;I)V + p 1 entries + p 2 totalWeight +c net/minecraft/class_6012$class_10581 net/minecraft/util/collection/Pool$Content + m (I)Ljava/lang/Object; method_66219 get + p 1 i +c net/minecraft/class_6012$class_10579 net/minecraft/util/collection/Pool$WrappedContent + f [Lnet/minecraft/class_6010; field_55648 entries + m (Ljava/util/List;)V + p 1 entries +c net/minecraft/class_8673 net/minecraft/client/network/ClientCommonNetworkHandler + f Lnet/minecraft/class_310; field_45588 client + f Z field_62020 seenInsecureChatWarning + f Ljava/util/Map; field_52154 customReportDetails + f Ljava/util/List; field_45595 queuedPackets + f Lnet/minecraft/class_2561; field_45594 LOST_CONNECTION_TEXT + f Lnet/minecraft/class_437; field_45593 postDisconnectScreen + f Ljava/util/Map; field_62019 seenPlayers + f Lnet/minecraft/class_7975; field_45592 worldSession + f Lnet/minecraft/class_642; field_45590 serverInfo + f Ljava/util/Map; field_48399 serverCookies + f Lnet/minecraft/class_9782; field_52155 serverLinks + f Lnet/minecraft/class_2535; field_45589 connection + f Ljava/lang/String; field_45591 brand + f Lorg/slf4j/Logger; field_45944 LOGGER + f Z field_51516 transferring + m (Lnet/minecraft/class_310;Lnet/minecraft/class_2535;Lnet/minecraft/class_8675;)V + p 3 connectionState + p 2 connection + p 1 client + m ()Lnet/minecraft/class_11513; method_72017 createDialogNetworkAccess + m ()V method_52789 sendQueuedPackets + m (Ljava/util/UUID;)V method_55511 method_55511 + p 1 id + m (Lnet/minecraft/class_2596;Ljava/util/function/BooleanSupplier;Ljava/time/Duration;)V method_52779 send + p 1 packet + p 2 sendCondition + p 3 expiry + m (Lnet/minecraft/class_2596;Ljava/lang/Throwable;)Ljava/util/Optional; method_60882 savePacketErrorReport + p 2 exception + p 1 packet + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_437;)V method_72154 showDialog + p 1 dialog + p 2 previousScreen + m (Ljava/lang/String;)Ljava/net/URL; method_52773 getParsedResourcePackUrl + p 0 url + m (Lnet/minecraft/class_9812;)Lnet/minecraft/class_437; method_52786 createDisconnectedScreen + p 1 info + m (Lnet/minecraft/class_8710;)V method_11152 onCustomPayload + p 1 payload + m (Lnet/minecraft/class_9782$class_9783;)Ljava/util/List; method_60880 method_60880 + p 0 bugReportEntry + m ()Ljava/lang/String; method_52790 getBrand + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_11513;Lnet/minecraft/class_437;)V method_71924 showDialog + p 3 previousScreen + p 2 networkAccess + p 1 dialog + m (Lnet/minecraft/class_2596;)V method_52787 sendPacket + p 1 packet + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_52778 getPrompt + p 1 customPrompt + p 0 requirementPrompt + m ()Lnet/minecraft/class_9782; method_72016 getServerLinks + m (Ljava/util/UUID;Ljava/net/URL;Ljava/lang/String;ZLnet/minecraft/class_2561;)Lnet/minecraft/class_437; method_55609 createConfirmServerResourcePackScreen + p 4 required + p 3 hash + p 5 prompt + p 2 url + p 1 id + m ()V method_72018 clearDialog +c net/minecraft/class_8673$class_9058 net/minecraft/client/network/ClientCommonNetworkHandler$ConfirmServerResourcePackScreen + f Lnet/minecraft/class_437; field_47683 parent + f Ljava/util/List; field_47682 packs + m (Lnet/minecraft/class_310;Lnet/minecraft/class_437;ZLjava/util/List;Lnet/minecraft/class_8673;Z)V method_55612 method_55612 + p 5 confirmed + m (Lnet/minecraft/class_310;Ljava/util/UUID;Ljava/net/URL;Ljava/lang/String;ZLnet/minecraft/class_2561;)Lnet/minecraft/class_8673$class_9058; method_55613 add + p 4 hash + p 5 required + p 6 prompt + p 1 client + p 2 id + p 3 url + m (Lnet/minecraft/class_8673;Lnet/minecraft/class_310;Lnet/minecraft/class_437;Ljava/util/List;ZLnet/minecraft/class_2561;)V + p 4 pack + p 3 parent + p 2 client + p 6 prompt + p 5 required +c net/minecraft/class_8673$class_9058$class_9059 net/minecraft/client/network/ClientCommonNetworkHandler$ConfirmServerResourcePackScreen$Pack + f Ljava/util/UUID; comp_2172 id + f Ljava/net/URL; comp_2173 url + f Ljava/lang/String; comp_2174 hash + m ()Ljava/net/URL; comp_2173 url + m ()Ljava/lang/String; comp_2174 hash + m ()Ljava/util/UUID; comp_2172 id + m (Ljava/util/UUID;Ljava/net/URL;Ljava/lang/String;)V + p 1 id + p 2 url + p 3 hash +c net/minecraft/class_8673$class_11740 net/minecraft/client/network/ClientCommonNetworkHandler$CommonDialogNetworkAccess +c net/minecraft/class_8673$class_8137 net/minecraft/client/network/ClientCommonNetworkHandler$QueuedPacket + f J comp_1266 expirationTime + f Ljava/util/function/BooleanSupplier; comp_1265 sendCondition + f Lnet/minecraft/class_2596; comp_1264 packet + m ()J comp_1266 expirationTime + m ()Ljava/util/function/BooleanSupplier; comp_1265 sendCondition + m ()Lnet/minecraft/class_2596; comp_1264 packet + m (Lnet/minecraft/class_2596;Ljava/util/function/BooleanSupplier;J)V + p 1 packet + p 2 sendCondition + p 3 expirationTime +c net/minecraft/class_8671 net/minecraft/client/gui/screen/ReconfiguringScreen + f Lnet/minecraft/class_8667; field_45512 layout + f Lnet/minecraft/class_4185; field_45510 disconnectButton + f I field_45511 tick + f Lnet/minecraft/class_2535; field_45509 connection + f I field_45508 DISCONNECT_BUTTON_ACTIVATION_TICK + m (Lnet/minecraft/class_8671;Lnet/minecraft/class_364;)V method_52758 method_52758 + p 1 child + m (Lnet/minecraft/class_4185;)V method_52757 method_52757 + p 1 button + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2535;)V + p 2 connection + p 1 title +c net/minecraft/class_6019 net/minecraft/util/math/intprovider/UniformIntProvider + f I field_29951 max + f I field_29950 min + f Lcom/mojang/serialization/MapCodec; field_29949 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35016 method_35016 + p 0 instance + m (Lnet/minecraft/class_6019;)Lcom/mojang/serialization/DataResult; method_35015 method_35015 + p 0 provider + m (II)V + p 1 min + p 2 max + m (Lnet/minecraft/class_6019;)Ljava/lang/Integer; method_35018 method_35018 + p 0 provider + m (II)Lnet/minecraft/class_6019; method_35017 create + p 0 min + c the minimum value, inclusive + p 1 max + c the maximum value, inclusive + m (Lnet/minecraft/class_6019;)Ljava/lang/Integer; method_35019 method_35019 + p 0 provider +c net/minecraft/class_6018 net/minecraft/util/math/intprovider/IntProviderType + f Lnet/minecraft/class_6018; field_35034 WEIGHTED_LIST + f Lnet/minecraft/class_6018; field_35357 CLAMPED_NORMAL + f Lnet/minecraft/class_6018; field_33453 CLAMPED + f Lnet/minecraft/class_6018; field_33452 BIASED_TO_BOTTOM + f Lnet/minecraft/class_6018; field_29947 CONSTANT + f Lnet/minecraft/class_6018; field_29948 UNIFORM + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_6018; method_35014 register + p 0 id +c net/minecraft/class_6015 net/minecraft/unused/packageinfo/PackageInfo6015 +c net/minecraft/class_8679 net/minecraft/client/render/ChunkRenderingDataPreparer + f I field_45619 DEFAULT_SECTION_DISTANCE + f Ljava/util/concurrent/atomic/AtomicBoolean; field_45626 needsUpdate + f Ljava/util/concurrent/atomic/AtomicReference; field_45625 events + f Ljava/util/concurrent/Future; field_45622 terrainUpdateFuture + f Ljava/util/concurrent/atomic/AtomicReference; field_45624 state + f [Lnet/minecraft/class_2350; field_45618 DIRECTIONS + f Lnet/minecraft/class_769; field_45623 builtChunkStorage + f Z field_45621 terrainUpdateScheduled + f I field_55873 SECTION_DISTANCE + f Lorg/slf4j/Logger; field_45617 LOGGER + f D field_45620 CHUNK_INNER_DIAGONAL_LENGTH + m (Lnet/minecraft/class_8679$class_8681;)V method_52823 scheduleNew + p 1 preparerState + m (Lnet/minecraft/class_846$class_851;)Lnet/minecraft/class_8679$class_762; method_52837 getInfo + p 1 chunk + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_8679$class_762;)D method_52830 method_52830 + p 1 chunkInfo + m ()Lnet/minecraft/class_10143; method_62925 getOctree + m (JLnet/minecraft/class_846$class_851;Lnet/minecraft/class_2350;)Lnet/minecraft/class_846$class_851; method_52831 getRenderedChunk + p 3 chunk + p 1 sectionPos + p 4 direction + m (ZLnet/minecraft/class_4604;Ljava/util/List;Lnet/minecraft/class_243;Lit/unimi/dsi/fastutil/longs/LongOpenHashSet;)V method_52835 updateNow + p 1 cullChunks + p 2 frustum + p 3 builtChunks + p 4 cameraPos + p 5 activeSections + m (JJ)Z method_52832 isWithinViewDistance + p 3 otherSectionPos + p 1 centerSectionPos + m ()Z method_52836 updateFrustum + m (Lnet/minecraft/class_4604;Ljava/util/List;Ljava/util/List;)V method_52828 collectChunks + p 1 frustum + p 3 nearbyChunks + p 2 builtChunks + m (Lnet/minecraft/class_8679$class_8680;Lnet/minecraft/class_1923;)V method_52822 addNeighbors + p 1 events + p 2 chunkPos + m (Lnet/minecraft/class_8679$class_6600;Lnet/minecraft/class_243;Ljava/util/Queue;ZLjava/util/function/Consumer;Lit/unimi/dsi/fastutil/longs/LongOpenHashSet;)V method_52825 update + p 1 renderableChunks + p 2 pos + p 4 cullChunks + m ()V method_52817 scheduleTerrainUpdate + m (Lnet/minecraft/class_8679$class_8681;Lnet/minecraft/class_8679$class_762;)V method_52824 method_52824 + p 1 info + m (Lnet/minecraft/class_769;)V method_52826 setStorage + p 1 storage + m (Lnet/minecraft/class_1923;)V method_52819 addNeighbors + p 1 chunkPos + m (ZLnet/minecraft/class_4184;Lnet/minecraft/class_4604;Ljava/util/List;Lit/unimi/dsi/fastutil/longs/LongOpenHashSet;)V method_52834 updateSectionOcclusionGraph + p 5 activeSections + p 2 camera + p 1 cullChunks + p 4 builtChunk + p 3 frustum + m (ZLnet/minecraft/class_4184;Lnet/minecraft/class_243;Lit/unimi/dsi/fastutil/longs/LongOpenHashSet;)V method_52833 updateTerrain + p 4 activeSections + p 1 cullChunks + p 2 camera + p 3 cameraPos + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_10143$class_10147;ZIZ)V method_62924 method_62924 + p 5 nearCenter + p 4 depth + p 3 skipVisibilityCheck + p 2 node + m (Lnet/minecraft/class_846$class_851;)V method_52827 schedulePropagationFrom + p 1 builtChunk + m (Lnet/minecraft/class_4184;Ljava/util/Queue;)V method_52821 scheduleLater + p 1 camera +c net/minecraft/class_8679$class_8681 net/minecraft/client/render/ChunkRenderingDataPreparer$PreparerState + f Lnet/minecraft/class_8679$class_8680; comp_1621 events + f Lnet/minecraft/class_8679$class_6600; comp_1620 storage + m (Lnet/minecraft/class_769;)V + p 1 storage + m ()Lnet/minecraft/class_8679$class_8680; comp_1621 events + m ()Lnet/minecraft/class_8679$class_6600; comp_1620 storage + m (Lnet/minecraft/class_8679$class_6600;Lnet/minecraft/class_8679$class_8680;)V + p 1 storage + p 2 events +c net/minecraft/class_8679$class_8680 net/minecraft/client/render/ChunkRenderingDataPreparer$Events + f Lit/unimi/dsi/fastutil/longs/LongSet; comp_1618 chunksWhichReceivedNeighbors + f Ljava/util/concurrent/BlockingQueue; comp_1619 sectionsToPropagateFrom + m ()Lit/unimi/dsi/fastutil/longs/LongSet; comp_1618 chunksWhichReceivedNeighbors + m ()Ljava/util/concurrent/BlockingQueue; comp_1619 sectionsToPropagateFrom + m (Lit/unimi/dsi/fastutil/longs/LongSet;Ljava/util/concurrent/BlockingQueue;)V + p 1 chunksWhichReceivedNeighbors + p 2 sectionsToPropagateFrom +c net/minecraft/class_8679$class_5972 net/minecraft/client/render/ChunkRenderingDataPreparer$ChunkInfoList + f [Lnet/minecraft/class_8679$class_762; field_29620 current + m (Lnet/minecraft/class_846$class_851;)Lnet/minecraft/class_8679$class_762; method_34820 getInfo + p 1 chunk + m (Lnet/minecraft/class_846$class_851;Lnet/minecraft/class_8679$class_762;)V method_34821 setInfo + p 2 info + p 1 chunk + m (I)V + p 1 size +c net/minecraft/class_8679$class_6600 net/minecraft/client/render/ChunkRenderingDataPreparer$RenderableChunks + f Lnet/minecraft/class_10143; field_53929 octree + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_45628 queue + f Lnet/minecraft/class_8679$class_5972; field_45627 infoList + m (Lnet/minecraft/class_769;)V + p 1 storage +c net/minecraft/class_8679$class_762 net/minecraft/client/render/ChunkRenderingDataPreparer$ChunkInfo + f B field_4125 direction + f B field_4126 cullingState + f I field_4122 propagationLevel + f Lnet/minecraft/class_846$class_851; field_4124 chunk + m (Lnet/minecraft/class_846$class_851;Lnet/minecraft/class_2350;I)V + p 3 propagationLevel + p 2 direction + p 1 chunk + m (Lnet/minecraft/class_2350;)Z method_3298 canCull + p 1 from + m (BLnet/minecraft/class_2350;)V method_3299 updateCullingState + p 2 from + p 1 parentCullingState + m (I)Z method_34814 hasDirection + p 1 ordinal + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_2350;)V method_34816 addDirection + p 1 direction + m ()Z method_34813 hasAnyDirection +c net/minecraft/class_6017 net/minecraft/util/math/intprovider/IntProvider + f Lcom/mojang/serialization/Codec; field_33451 POSITIVE_CODEC + f Lcom/mojang/serialization/Codec; field_33450 NON_NEGATIVE_CODEC + f Lcom/mojang/serialization/Codec; field_29946 VALUE_CODEC + f Lcom/mojang/serialization/Codec; field_29945 INT_CODEC + m (IILnet/minecraft/class_6017;)Lcom/mojang/serialization/DataResult; method_58612 validateProvider + p 2 provider + p 1 max + p 0 min + m ()I method_35009 getMin + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_6017; method_35007 method_35007 + p 0 either + m (IILcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_49103 createValidatingCodec + p 2 providerCodec + p 1 max + p 0 min + m (IILnet/minecraft/class_6017;)Lcom/mojang/serialization/DataResult; method_35005 method_35005 + p 2 provider + m ()Lnet/minecraft/class_6018; method_35012 getType + m (Lnet/minecraft/class_5819;)I method_35008 get + p 1 random + m (II)Lcom/mojang/serialization/Codec; method_35004 createValidatingCodec + p 0 min + p 1 max + m (Lnet/minecraft/class_6017;)Lnet/minecraft/class_6017; method_35010 method_35010 + p 0 provider + m (Lnet/minecraft/class_6017;)Lcom/mojang/datafixers/util/Either; method_35006 method_35006 + p 0 provider + m ()I method_35011 getMax +c net/minecraft/class_8676 net/minecraft/client/network/LegacyServerPinger + f Lnet/minecraft/class_639; field_45605 serverAddress + f Lcom/google/common/base/Splitter; field_45604 SPLITTER + f Lnet/minecraft/class_8676$class_8677; field_45606 handler + m (Lio/netty/channel/ChannelHandlerContext;)V channelActive channelActive + p 1 context + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V channelRead0 channelRead0 + p 1 context + p 2 buf + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;)V method_3005 channelRead0 + m (Lnet/minecraft/class_639;Lnet/minecraft/class_8676$class_8677;)V + p 1 serverAddress + p 2 handler + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Throwable;)V exceptionCaught exceptionCaught + p 1 context + p 2 throwable +c net/minecraft/class_8676$class_8677 net/minecraft/client/network/LegacyServerPinger$ResponseHandler + m (ILjava/lang/String;Ljava/lang/String;II)V handleResponse handleResponse + p 3 label + p 4 currentPlayers + p 1 protocolVersion + p 2 version + p 5 maxPlayers +c net/minecraft/class_6016 net/minecraft/util/math/intprovider/ConstantIntProvider + f Lnet/minecraft/class_6016; field_29942 ZERO + f Lcom/mojang/serialization/MapCodec; field_29943 CODEC + f I field_29944 value + m ()I method_34997 getValue + m (I)Lnet/minecraft/class_6016; method_34998 create + p 0 value + m (I)V + p 1 value +c net/minecraft/class_6022 net/minecraft/unused/packageinfo/PackageInfo6022 +c net/minecraft/class_8685 net/minecraft/entity/player/SkinTextures + f Lnet/minecraft/class_7920; comp_1629 model + f Z comp_1630 secure + f Lnet/minecraft/class_12079$class_12081; comp_1627 cape + f Lnet/minecraft/class_12079$class_12081; comp_1628 elytra + f Lnet/minecraft/class_12079$class_12081; comp_1626 body + m (Lnet/minecraft/class_12079$class_12081;Lnet/minecraft/class_12079$class_12081;Lnet/minecraft/class_12079$class_12081;Lnet/minecraft/class_7920;)Lnet/minecraft/class_8685; method_74884 create + p 1 cape + p 0 body + p 3 model + p 2 elytra + m (Lnet/minecraft/class_8685$class_11892;)Lnet/minecraft/class_8685; method_74883 withOverride + p 1 override + m ()Lnet/minecraft/class_7920; comp_1629 model + m ()Lnet/minecraft/class_12079$class_12081; comp_1626 body + m ()Lnet/minecraft/class_12079$class_12081; comp_1627 cape + m ()Lnet/minecraft/class_12079$class_12081; comp_1628 elytra + m ()Z comp_1630 secure + m (Lnet/minecraft/class_12079$class_12081;Lnet/minecraft/class_12079$class_12081;Lnet/minecraft/class_12079$class_12081;Lnet/minecraft/class_7920;Z)V + p 1 body + p 2 cape + p 3 elytra + p 4 model + p 5 secure +c net/minecraft/class_8685$class_11892 net/minecraft/entity/player/SkinTextures$SkinOverride + f Lnet/minecraft/class_8685$class_11892; field_63029 EMPTY + f Lcom/mojang/serialization/MapCodec; field_62523 CODEC + f Lnet/minecraft/class_9139; field_62524 PACKET_CODEC + f Ljava/util/Optional; comp_4765 body + f Ljava/util/Optional; comp_4768 model + f Ljava/util/Optional; comp_4767 elytra + f Ljava/util/Optional; comp_4766 cape + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_74105 method_74105 + p 0 instance + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/class_8685$class_11892; method_74885 create + p 3 model + p 0 texture + p 1 cape + p 2 elytra + m ()Ljava/util/Optional; comp_4765 body + m ()Ljava/util/Optional; comp_4768 model + m ()Ljava/util/Optional; comp_4766 cape + m ()Ljava/util/Optional; comp_4767 elytra + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 body + p 2 cape + p 3 elytra + p 4 model +c net/minecraft/class_6021 net/minecraft/unused/packageinfo/PackageInfo6021 +c net/minecraft/class_6024 net/minecraft/entity/EntityStatuses + f B field_30041 PLAY_CURE_ZOMBIE_VILLAGER_SOUND + f B field_30013 CREATE_EATING_PARTICLES + f B field_30045 PLAY_SPAWN_EFFECTS + f B field_30033 SHAKE_OFF_WATER + f B field_42621 START_DIGGING + f B field_30021 ADD_SPRINTING_PARTICLES_OR_RESET_SPAWNER_MINECART_SPAWN_DELAY + f B field_30017 BREAK_HEAD + f B field_30049 SET_OP_LEVEL_0 + f B field_30037 ADD_VILLAGER_HEART_PARTICLES + f B field_30025 RESET_WOLF_SHAKE + f B field_30009 TAME_OCELOT_SUCCESS + f B field_30029 PLAY_ATTACK_SOUND + f B field_33454 PREPARE_RAM + f B field_49074 PEEKING + f B field_30042 EXPLODE_FIREWORK_CLIENT + f B field_30050 SET_OP_LEVEL_1 + f B field_30002 STOP_LOOKING_AT_VILLAGER + f B field_30046 PLAY_GUARDIAN_ATTACK_SOUND + f B field_30034 CONSUME_ITEM + f B field_30022 DRIP_HONEY + f B field_30010 ADD_SPLASH_PARTICLES + f B field_30006 ADD_DOLPHIN_HAPPY_VILLAGER_PARTICLES + f B field_30038 ADD_VILLAGER_ANGRY_PARTICLES + f B field_30014 ADD_PORTAL_PARTICLES + f B field_30018 BREAK_CHEST + f B field_60536 RAVAGER_ROAR + f B field_33691 ADD_DEATH_PARTICLES + f B field_30031 ADD_NEGATIVE_PLAYER_REACTION_PARTICLES + f B field_30051 SET_OP_LEVEL_2 + f B field_30035 SET_SHEEP_EAT_GRASS_TIMER_OR_PRIME_TNT_MINECART + f B field_30023 DRIP_RICH_HONEY + f B field_38847 SONIC_BOOM + f B field_30043 ADD_BREEDING_PARTICLES + f B field_30039 ADD_VILLAGER_HAPPY_PARTICLES + f B field_30015 BREAK_MAINHAND + f B field_38094 EARS_TWITCH + f B field_30003 USE_TOTEM_OF_UNDYING + f B field_30047 USE_REDUCED_DEBUG_INFO + f B field_30019 BREAK_LEGS + f B field_30007 STUN_RAVAGER + f B field_29999 PULL_HOOKED_ENTITY + f B field_54559 INVULNERABLE_CREAKING_HIT + f B field_55660 ADD_BUBBLE_PARTICLES + f B field_29995 SET_OP_LEVEL_3 + f B field_30020 BREAK_FEET + f B field_30040 ADD_WITCH_PARTICLES + f B field_55945 BREAK_SADDLE + f B field_30024 SWAP_HANDS + f B field_63949 KINETIC_ATTACK + f B field_30000 HIT_ARMOR_STAND + f B field_30044 RESET_SQUID_THRUST_TIMER + f B field_30032 ADD_POSITIVE_PLAYER_REACTION_PARTICLES + f B field_30028 PLAY_DEATH_SOUND_OR_ADD_PROJECTILE_HIT_PARTICLES + f B field_30016 BREAK_OFFHAND + f B field_30048 USE_FULL_DEBUG_INFO + f B field_30036 LOOK_AT_VILLAGER + f B field_49215 BREAK_BODY + f B field_30008 TAME_OCELOT_FAILED + f B field_33455 FINISH_RAM + f B field_29996 SET_OP_LEVEL_4 +c net/minecraft/class_6023 net/minecraft/unused/packageinfo/PackageInfo6023 +c net/minecraft/class_8684 net/minecraft/client/texture/SpriteOpener + f Lorg/slf4j/Logger; field_45633 LOGGER + m (Ljava/util/Set;Lnet/minecraft/class_2960;Lnet/minecraft/class_3298;)Lnet/minecraft/class_7764; method_52851 method_52851 + p 2 resource + p 1 id + m (Ljava/util/Set;)Lnet/minecraft/class_8684; create create + p 0 additionalMetadata + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3298;)Lnet/minecraft/class_7764; loadSprite loadSprite + p 1 id + p 2 resource +c net/minecraft/class_6020 net/minecraft/unused/packageinfo/PackageInfo6020 +c net/minecraft/class_6029 net/minecraft/entity/ai/brain/task/LeapingChargeTask + f Lnet/minecraft/class_6019; field_30133 cooldownRange + f Lnet/minecraft/class_3414; field_33459 sound + f I field_30132 RUN_TIME + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_35075 finishRunning + m (Lnet/minecraft/class_6019;Lnet/minecraft/class_3414;)V + p 1 cooldownRange + p 2 sound + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)Z method_35073 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_35074 run +c net/minecraft/class_6026 net/minecraft/entity/Mount +c net/minecraft/class_8689 net/minecraft/client/resource/metadata/GuiResourceMetadata + f Lcom/mojang/serialization/Codec; field_45646 CODEC + f Lnet/minecraft/class_7677; field_45647 SERIALIZER + f Lnet/minecraft/class_8689; field_45645 DEFAULT + f Lnet/minecraft/class_8690; comp_1636 scaling + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52875 method_52875 + p 0 instance + m ()Lnet/minecraft/class_8690; comp_1636 scaling + m (Lnet/minecraft/class_8690;)V + p 1 scaling +c net/minecraft/class_6025 net/minecraft/entity/Tameable + m ()Lnet/minecraft/class_10583; method_66287 getOwnerReference + m ()Lnet/minecraft/class_1937; method_73183 getEntityWorld + m ()Lnet/minecraft/class_1309; method_67519 getTopLevelOwner + m ()Lnet/minecraft/class_1309; method_35057 getOwner +c net/minecraft/class_6028 net/minecraft/entity/ai/brain/task/FleeTask + f I field_30108 MAX_RUN_TIME + f Ljava/util/function/Function; field_59675 pathFinder + f I field_30110 VERTICAL_RANGE + f I field_30107 MIN_RUN_TIME + f I field_30109 HORIZONTAL_RANGE + f Ljava/util/function/Function; field_52010 entityToDangerousDamageTypes + f F field_30111 speed + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;)Z method_49487 shouldRun + m (FLjava/util/function/Function;Ljava/util/function/Function;)V + p 1 speed + p 2 entityToDangerousDamageTypes + p 3 pathFinder + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_3218;)Lnet/minecraft/class_243; method_39761 findTarget + p 1 entity + p 2 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_35064 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_35063 shouldKeepRunning + m (Lnet/minecraft/class_1314;)Lnet/minecraft/class_243; method_70679 method_70679 + p 0 entity + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1282;)Ljava/lang/Boolean; method_60721 method_60721 + p 2 hurtBy + m (FLjava/util/function/Function;)V + p 1 speed + p 2 entityToDangerousDamageTypes + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_51505 method_51505 + p 1 pos + m (FI)V + p 2 startHeight + p 1 speed + m (F)V + p 1 speed + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_44203 finishRunning + m (Lnet/minecraft/class_1314;)Lnet/minecraft/class_243; method_70681 method_70681 + p 0 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_35065 keepRunning + m (ILnet/minecraft/class_1314;)Lnet/minecraft/class_243; method_70678 method_70678 + p 1 entity + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_39763 method_39763 + p 1 pos + m (Lnet/minecraft/class_1314;)Lnet/minecraft/class_6862; method_60720 method_60720 + p 0 entity + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_51506 method_51506 + p 1 posx + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_1297;)Ljava/util/Optional; method_39762 findClosestWater + p 2 entity + p 1 world + m (Lnet/minecraft/class_1314;)Lnet/minecraft/class_6862; method_70680 method_70680 + p 0 entity +c net/minecraft/class_6027 net/minecraft/unused/packageinfo/PackageInfo6027 +c net/minecraft/class_9980 net/minecraft/client/render/model/json/BlockPropertiesPredicate + f Lcom/google/common/base/Splitter; field_53163 COMMA_SPLITTER + f Lcom/google/common/base/Splitter; field_53164 EQUAL_SIGN_SPLITTER + m (Ljava/util/Map;Lnet/minecraft/class_2688;)Z method_62336 method_62336 + p 1 state + m (Lnet/minecraft/class_2689;Ljava/lang/String;)Ljava/util/function/Predicate; method_62334 parse + p 1 string + p 0 stateManager + m (Lnet/minecraft/class_2769;Ljava/lang/String;)Ljava/lang/Comparable; method_62335 parse + p 0 property + p 1 value +c net/minecraft/class_9989 net/minecraft/client/render/entity/AbstractSkeletonEntityRenderer + m (Lnet/minecraft/class_10066;)Z method_62368 isShaking + m (Lnet/minecraft/class_1547;Lnet/minecraft/class_10066;F)V method_62367 updateRenderState + m (Lnet/minecraft/class_1547;Lnet/minecraft/class_1306;)Lnet/minecraft/class_572$class_573; method_65833 getArmPose + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_5601;Lnet/minecraft/class_11677;)V + p 2 layer + p 3 model + p 1 context + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_11677;Lnet/minecraft/class_606;)V + p 1 context + p 3 model +c net/minecraft/class_9988 net/minecraft/client/render/entity/AbstractHoglinEntityRenderer + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_5601;Lnet/minecraft/class_5601;F)V + p 4 scale + p 3 babyLayer + p 2 layer + p 1 context + m ()Lnet/minecraft/class_10032; method_62353 createRenderState + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_10032;F)V method_62356 updateRenderState +c net/minecraft/class_8656 net/minecraft/client/realms/gui/screen/BuyRealmsScreen + f Lnet/minecraft/class_2960; field_45275 POPUP_BACKGROUND_TEXTURE + f Lnet/minecraft/class_437; field_45268 parent + f Lnet/minecraft/class_2960; field_45276 TRIAL_AVAILABLE_TEXTURE + f Lnet/minecraft/class_2561; field_45274 CLOSE_TEXT + f Lnet/minecraft/class_2561; field_45273 POPUP_TEXT + f Z field_45269 trialAvailable + f Ljava/util/List; field_45267 realmsImages + f I field_45272 realmsImageDisplayTime + f Lnet/minecraft/class_4185; field_45270 trialButton + f I field_45271 realmsImageIndex + f Lnet/minecraft/class_8666; field_45277 CROSS_BUTTON_TEXTURES + m (Lnet/minecraft/class_332;Lnet/minecraft/class_4185;)V method_52686 drawTrialAvailableTexture + p 1 button + p 0 context + m ()I method_52681 getTop + m (Lnet/minecraft/class_4185;)V method_52687 method_52687 + p 1 button + m ()I method_52680 getLeft + m ()I method_52683 getBottom + m ()I method_52682 getRight + m (Lnet/minecraft/class_437;Z)V + p 2 trialAvailable + p 1 parent + m (Lnet/minecraft/class_2960;)Z method_52684 method_52684 + p 0 id + m (Lnet/minecraft/class_3300;)V method_52685 refreshImages + p 0 resourceManager + m (Lnet/minecraft/class_2960;)Z method_52688 method_52688 + p 0 id +c net/minecraft/class_9987 net/minecraft/client/render/debug/RedstoneUpdateOrderDebugRenderer + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_9904;)V method_75449 method_75449 + p 0 blockPos + p 1 orientation +c net/minecraft/class_8657 net/minecraft/client/util/CommandHistoryManager + f Ljava/lang/String; field_45289 FILENAME + f Ljava/nio/file/Path; field_45290 path + f Lnet/minecraft/class_8623; field_45291 history + f Lorg/slf4j/Logger; field_45287 LOGGER + f I field_45288 MAX_SIZE + m ()Ljava/util/Collection; method_52696 getHistory + m (Ljava/lang/String;)V method_52697 add + p 1 command + m (Ljava/nio/file/Path;)V + p 1 directoryPath + m ()V method_52698 write +c net/minecraft/class_9986 net/minecraft/client/render/debug/ChunkDebugRenderer + f [Lnet/minecraft/class_2350; field_53170 DIRECTIONS + f Lnet/minecraft/class_310; field_53171 client + m (Lnet/minecraft/class_310;)V + p 1 client + m (Lnet/minecraft/class_243;[Lorg/joml/Vector4f;IIIIIII)V method_62347 addFace + p 1 origin + p 2 vertexOffsets + p 3 i1 + p 4 i2 + p 5 i3 + p 6 i4 + p 7 red + p 8 green + p 9 blue + m (Lnet/minecraft/class_243;Lorg/joml/Vector4f;Lorg/joml/Vector4f;)V method_75429 addFrustumEdge + p 3 endOffset + p 2 startOffset + p 1 origin +c com/mojang/blaze3d/buffers/Std140Builder com/mojang/blaze3d/buffers/Std140Builder + m (IIII)Lcom/mojang/blaze3d/buffers/Std140Builder; putIVec4 putIVec4 + p 1 x + p 2 y + p 3 z + p 4 w + m (Ljava/nio/ByteBuffer;)V + p 1 buffer + m (Lorg/joml/Vector3fc;)Lcom/mojang/blaze3d/buffers/Std140Builder; putVec3 putVec3 + p 1 vec + m (FFF)Lcom/mojang/blaze3d/buffers/Std140Builder; putVec3 putVec3 + p 1 x + p 2 y + p 3 z + m (Lorg/joml/Vector3ic;)Lcom/mojang/blaze3d/buffers/Std140Builder; putIVec3 putIVec3 + p 1 vec + m (FFFF)Lcom/mojang/blaze3d/buffers/Std140Builder; putVec4 putVec4 + p 3 z + p 2 y + p 4 w + p 1 x + m (III)Lcom/mojang/blaze3d/buffers/Std140Builder; putIVec3 putIVec3 + p 3 z + p 1 x + p 2 y + m (F)Lcom/mojang/blaze3d/buffers/Std140Builder; putFloat putFloat + p 1 value + m (Lorg/joml/Matrix4fc;)Lcom/mojang/blaze3d/buffers/Std140Builder; putMat4f putMat4f + p 1 matrix + m (FF)Lcom/mojang/blaze3d/buffers/Std140Builder; putVec2 putVec2 + p 2 y + p 1 x + m (II)Lcom/mojang/blaze3d/buffers/Std140Builder; putIVec2 putIVec2 + p 2 y + p 1 x + m (Lorg/joml/Vector4ic;)Lcom/mojang/blaze3d/buffers/Std140Builder; putIVec4 putIVec4 + p 1 vec + m (Lorg/joml/Vector4fc;)Lcom/mojang/blaze3d/buffers/Std140Builder; putVec4 putVec4 + p 1 vec + m (I)Lcom/mojang/blaze3d/buffers/Std140Builder; putInt putInt + p 1 value + m (Lorg/joml/Vector2ic;)Lcom/mojang/blaze3d/buffers/Std140Builder; putIVec2 putIVec2 + p 1 vec + m (Lorg/joml/Vector2fc;)Lcom/mojang/blaze3d/buffers/Std140Builder; putVec2 putVec2 + p 1 vec + m (Ljava/nio/ByteBuffer;)Lcom/mojang/blaze3d/buffers/Std140Builder; intoBuffer intoBuffer + p 0 buffer + m (I)Lcom/mojang/blaze3d/buffers/Std140Builder; align align + p 1 alignedSize + m (Lorg/lwjgl/system/MemoryStack;I)Lcom/mojang/blaze3d/buffers/Std140Builder; onStack onStack + p 0 stack + p 1 size +c net/minecraft/server/MinecraftServer net/minecraft/server/MinecraftServer + c Represents a logical Minecraft server.\n\n

Since Minecraft uses a Client-Server architecture for the game, the server processes all logical game functions.\nA few of the actions a Minecraft server will handle includes processing player actions, handling damage to entities, advancing the world time and executing commands.\n\n

There are two primary implementations for a Minecraft server: a dedicated and an integrated server.\n\n

A dedicated server is a Minecraft server not attached to a Minecraft game client and may be run remotely from any connected players.\nA dedicated server has a few exclusive features such as a whitelist/blacklist, remote rcon connections, and a terminal to input commands.\n\n

An integrated server is functionally equivalent to a dedicated server except that is hosted by a Minecraft game client and is typically used in a single player world.\nAn integrated server differs from a dedicated server by allowing connections within the local area network (LAN) and the host client.\nGenerally, you will always want to treat connection to an integrated server like you would to a dedicated server since the concept of an integrated server is an implementation detail in Minecraft.\n\n@see net.minecraft.server.dedicated.MinecraftDedicatedServer\n@see net.minecraft.server.integrated.IntegratedServer + f Z field_4549 demo + f J field_47148 PREPARE_START_REGION_TICK_DELAY_NANOS + f Lnet/minecraft/class_5217$class_12064; field_63111 spawnPoint + f Lnet/minecraft/class_29; field_24371 saveHandler + f Lnet/minecraft/class_11870; field_62494 managementListener + f Lnet/minecraft/class_1845; field_51466 brewingRecipeRegistry + f I field_53716 idleTickCount + f Lnet/minecraft/class_2926$class_8145; field_42958 favicon + f I field_47135 ticksUntilAutosave + f J field_47147 PLAYER_SAMPLE_UPDATE_INTERVAL_NANOS + f Lnet/minecraft/class_3004; field_4548 bossBarManager + f Z field_33979 needsDebugSetup + f Z field_62495 useAllowlist + f Lnet/minecraft/class_8915; field_47142 tickManager + f Lnet/minecraft/class_3242; field_4563 networkIo + f Z field_4547 loading + f I field_33211 MAX_WORLD_BORDER_RADIUS + f J field_47145 OVERLOAD_WARNING_INTERVAL_NANOS + f Z field_33977 needsRecorderSetup + f Z field_4561 stopped + f Ljava/lang/String; field_34982 VANILLA + f Lnet/minecraft/class_9843; field_53717 suppressedExceptionsTracker + f Lcom/mojang/datafixers/DataFixer; field_4587 dataFixer + f Z field_4560 preventProxyConnections + f Lnet/minecraft/class_7497; field_39440 apiServices + f J field_47143 OVERLOAD_THRESHOLD_NANOS + f Ljava/util/Map; field_4589 worlds + f I field_4572 ticks + f I field_4596 playerIdleTimeout + f Lcom/mojang/authlib/GameProfile; field_39214 hostProfile + f Ljava/util/concurrent/Executor; field_17200 workerExecutor + f Z field_4570 enforceWhitelist + f Lnet/minecraft/class_2926; field_4593 metadata + f F field_47141 averageTickTime + f Z field_53718 waitingForNextTick + f Lnet/minecraft/class_1940; field_17704 DEMO_LEVEL_INFO + f Lnet/minecraft/class_12027; field_62998 subscriberTracker + f Ljava/util/function/Consumer; field_33976 recorderDumpConsumer + f J field_47140 tickEndTimeNanos + f [J field_47136 tickTimes + f Ljava/lang/Thread; field_16257 serverThread + f Lnet/minecraft/class_2991; field_4591 commandFunctionManager + f Lnet/minecraft/class_12085; field_63648 activityNotifier + f Ljava/lang/String; field_4585 serverIp + f Ljava/util/function/Consumer; field_33975 recorderResultConsumer + f Lnet/minecraft/class_3283; field_4595 dataPackManager + f Z field_19249 hasJustExecutedTask + f Ljava/net/Proxy; field_4599 proxy + f Lnet/minecraft/class_2995; field_4558 scoreboard + f Ljava/lang/String; field_4564 motd + f Lnet/minecraft/class_32$class_5143; field_23784 session + f Lnet/minecraft/class_3324; field_4550 playerManager + f Lnet/minecraft/class_9895; field_53715 fuelRegistry + f Ljava/util/List; field_4568 serverGuiTickables + f J field_48775 waitTime + f J field_4551 lastPlayerSampleUpdate + f Lnet/minecraft/class_5219; field_24372 saveProperties + f Lnet/minecraft/class_7780; field_25132 combinedDynamicRegistries + f J field_48774 tasksStartTime + f Lnet/minecraft/class_12110; field_63649 stopwatchPersistentState + f Lorg/slf4j/Logger; field_4546 LOGGER + f J field_48773 lastFullTickLogTime + f Ljava/security/KeyPair; field_4552 keyPair + f Lnet/minecraft/class_4565; field_20850 dataCommandStorage + f Lnet/minecraft/class_5819; field_4602 random + f Lnet/minecraft/class_3485; field_24370 structureTemplateManager + f J field_47139 tickStartTimeNanos + f Z field_35437 saving + f Lnet/minecraft/class_11560; field_35641 ANONYMOUS_PLAYER_PROFILE + f Z field_4544 running + f Lnet/minecraft/class_11545; field_61872 chunkLoadProgress + f Lnet/minecraft/server/MinecraftServer$class_6897; field_25318 resourceManagerHolder + f Ljava/lang/String; field_17601 serverId + f J field_47138 lastOverloadWarningNanos + f Lnet/minecraft/class_5962; field_22250 recorder + f Z field_4543 onlineMode + f Lnet/minecraft/server/MinecraftServer$class_6414; field_33978 debugStart + f Lcom/mojang/jtracy/DiscontinuousFrame; field_54275 discontinuousFrame + f I field_4555 serverPort + f Lnet/minecraft/class_11980; field_62766 packetApplyBatcher + f J field_47137 recentTickTimesNanos + f Ljava/util/concurrent/atomic/AtomicReference; field_51917 WORLD_GEN_EXCEPTION + m ()Ljava/lang/String; method_3819 getServerIp + m (Lnet/minecraft/class_3696;)V method_37318 method_37318 + p 1 profileResult + m ()Z method_27902 acceptsStatusQuery + m (Lnet/minecraft/class_2960;Ljava/util/Optional;)V method_71943 handleCustomClickAction + p 2 payload + p 1 id + m (Lnet/minecraft/class_1934;)I method_74059 changeGameModeGlobally + m (Lnet/minecraft/class_128;Lnet/minecraft/class_1923;Lnet/minecraft/class_9240;)V method_61089 writeChunkIoReport + p 3 key + p 1 report + p 2 pos + m ()Lnet/minecraft/class_11870; method_74055 getManagementListener + m (Z)V method_3730 setDemo + p 1 demo + m (Lcom/google/common/collect/ImmutableList;)Ljava/util/concurrent/CompletionStage; method_29437 method_29437 + p 1 resourcePacks + m (Lnet/minecraft/class_3222;)Lnet/minecraft/class_5513; method_31371 createFilterer + p 1 player + m (I)V method_3779 setServerPort + p 1 serverPort + m (Ljava/nio/file/Path;)V method_37113 dumpProperties + p 1 file + m ()Z method_37321 isRecorderActive + m (Z)Z method_74061 setAutosave + p 1 autosave + m (Ljava/lang/Runnable;)V method_3742 addServerGuiTickable + p 1 tickable + m ()V method_3735 loadWorld + m (Ljava/lang/String;)V method_17819 setServerId + p 1 serverId + m ()V method_3832 startDebug + m ()Z method_3759 isUsingNativeTransport + m ()V method_3856 forcePlayerSampleUpdate + m (Lnet/minecraft/class_3218;)V method_49750 sendTimeUpdatePackets + p 1 world + m ()Ljava/nio/file/Path; method_3831 getRunDirectory + m ()Z method_3820 isLoading + m (Z)V method_3731 setEnforceWhitelist + p 1 enforceWhitelist + m (Z)V method_3864 setOnlineMode + c Sets whether this server is in the online mode, or whether it\nauthenticates connecting players with the Minecraft Session Service.\n\n

This is called by individual server implementations on their setup.\n\n@see #isOnlineMode() + p 1 onlineMode + c whether the server will be in online mode + m (Lnet/minecraft/class_3283;Lnet/minecraft/class_7712;ZZ)Lnet/minecraft/class_7712; method_29736 loadDataPacks + p 3 safeMode + p 1 dataConfiguration + p 2 initMode + p 0 resourcePackManager + m ()V method_37322 resetRecorder + m (Z)V method_19467 setDifficultyLocked + p 1 locked + m (Ljava/lang/Throwable;)Lnet/minecraft/class_128; method_40376 createCrashReport + p 0 throwable + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_3215;Lnet/minecraft/class_5268;Lnet/minecraft/class_6880$class_6883;)V method_46841 method_46841 + p 3 feature + m ()Lnet/minecraft/class_1934; method_3790 getDefaultGameMode + m (Ljava/nio/file/Path;)V method_21692 dumpStats + p 1 path + m ()Ljava/lang/Iterable; method_3738 getWorlds + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5268;ZZLnet/minecraft/class_11545;)V method_27901 setupSpawn + p 3 debugWorld + p 2 bonusChest + p 4 loadProgress + p 1 worldProperties + p 0 world + m (Ljava/nio/file/Path;)Z method_49389 method_49389 + p 0 path + m ()Z method_3732 shouldBroadcastRconToOps + m ()Lnet/minecraft/class_11980; method_74432 getPacketApplyBatcher + m (Z)V method_3764 setPreventProxyConnections + p 1 preventProxyConnections + m ()V method_56603 pushFullTickLog + m ()Z method_39219 isSaving + m ()Lnet/minecraft/class_2926$class_2927; method_49386 createMetadataPlayers + m ()V method_16208 runTasksTillTickEnd + m ()Z method_60584 checkWorldGenException + m ()V method_74946 refreshSpawnPoint + m (Lnet/minecraft/class_11560;)Lnet/minecraft/class_12086; method_3835 getPermissionLevel + p 1 player + m ()Z method_20415 runOneTask + m (Ljava/nio/file/Path;)V method_21613 dump + p 1 path + m (Ljava/nio/file/Path;)Z method_49388 method_49388 + p 0 path + m ()Z method_3866 shouldKeepTicking + m (Ljava/util/function/BooleanSupplier;)V method_3813 tickWorlds + p 1 shouldKeepTicking + m ()V method_27731 updateDifficulty + m ()Z method_56626 shouldPushTickTimeLog + m ()Lcom/mojang/authlib/GameProfile; method_43824 getHostProfile + m (Lnet/minecraft/class_5217$class_12064;)V method_74943 setSpawnPoint + p 1 spawnPoint + m (Lnet/minecraft/class_3738;)Z method_19464 canExecute + m ()Z method_39424 hideOnlinePlayers + m (Lnet/minecraft/class_1934;)V method_3838 setDefaultGameMode + p 1 gameMode + m (Lnet/minecraft/class_1267;Z)V method_3776 setDifficulty + p 2 forceUpdate + p 1 difficulty + m (I)V method_3803 setPlayerIdleTimeout + p 1 playerIdleTimeout + m (Ljava/lang/String;)V method_3842 setServerIp + p 1 serverIp + m (ZZZ)Z method_3723 save + c Saves the server to the data storage device.\n\nTo store the player data in addition to server data, call {@link PlayerManager#saveAllPlayerData()}.\n\n@return whether saving was successful + p 1 suppressLogs + p 2 flush + c if it should immediately write all data to storage device + p 3 force + c when set to true, all the {@link ServerWorld}s will be saved even if {@link ServerWorld#savingDisabled} is set to true + m ()Lnet/minecraft/class_6683; method_24307 getModStatus + m ()Lnet/minecraft/class_3300; method_34864 getResourceManager + m ()Z method_3754 isHardcore + m ()V method_56605 pushPerformanceLogs + m ()Lnet/minecraft/class_12110; method_75525 getStopwatchPersistentState + m ()I method_61255 getPauseWhenEmptySeconds + m ()Z method_73568 getUseAllowlist + m (Lnet/minecraft/class_5218;)Ljava/nio/file/Path; method_27050 getSavePath + p 1 worldSavePath + m ()Z method_32303 requireResourcePack + m (Ljava/util/function/Consumer;Lnet/minecraft/class_3696;)V method_37319 method_37319 + p 2 result + m (Ljava/nio/file/Path;)V method_21615 dumpGamerules + p 1 path + m ()[J method_54835 getTickTimes + m ()Lnet/minecraft/class_5455$class_6890; method_30611 getRegistryManager + m ()Lnet/minecraft/class_3242; method_3787 getNetworkIo + m ()Lnet/minecraft/class_3695; method_16044 startTickMetrics + m ()V method_24490 endTickMetrics + m ()Lnet/minecraft/class_4565; method_22827 getDataCommandStorage + m ()Lnet/minecraft/class_5217$class_12064; method_74945 getSpawnPoint + m (I)I method_27903 adjustTrackingDistance + p 1 initialDistance + m ()V method_56604 startTaskPerformanceLog + m ()I method_3756 getServerPort + m (Ljava/nio/file/Path;)V method_21713 dumpThreads + p 1 path + m (Ljava/nio/file/Path;)V method_21616 dumpClasspath + p 1 path + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2556$class_7602;Ljava/lang/String;)V method_43614 logChatMessage + p 1 message + p 3 prefix + p 2 params + m (Lnet/minecraft/class_11560;)Z method_19466 isHost + p 1 player + m ()Lnet/minecraft/class_1863; method_3772 getRecipeManager + m ()Lnet/minecraft/class_3004; method_3837 getBossBarManager + m ()Z method_56040 acceptsTransfers + m (Lnet/minecraft/class_3283;Z)Lnet/minecraft/class_5359; method_29735 createDataPackSettings + p 0 dataPackManager + p 1 allowEnabling + m (J)V method_56602 pushTickLog + p 1 tickStartTime + m (Ljava/util/Collection;Lnet/minecraft/server/MinecraftServer$class_6897;)V method_29440 method_29440 + p 2 resourceManagerHolder + m (Ljava/util/Collection;)Ljava/util/concurrent/CompletableFuture; method_29439 reloadResources + c Reloads this server's data packs.\n\n@return a completable future which specifies whether the reload was successful\nA reload has failed when the future is exceptionally completed.\n@see CompletableFuture + p 1 dataPacks + m (Lnet/minecraft/class_3324;)V method_3846 setPlayerManager + p 1 playerManager + m ()Z method_43500 shouldEnforceSecureProfile + m ()I method_3862 getPlayerIdleTimeout + m ()I method_41239 getMaxChainedNeighborUpdates + m ()Z method_54809 isPaused + m ()V method_31400 generateKeyPair + m ()Ljava/util/Optional; method_49384 loadFavicon + m ()Z method_3806 isRunning + m ()V method_49749 sendTimeUpdatePackets + m ()Lnet/minecraft/class_7780; method_46221 getCombinedDynamicRegistries + m ()Ljava/util/Optional; method_3725 getIconFile + m ()Lnet/minecraft/class_7497; method_73550 getApiServices + m ()Lnet/minecraft/class_8915; method_54833 getTickManager + m ()Lnet/minecraft/class_4208; method_73041 getSpawnPos + m (Ljava/lang/String;)V method_3834 setMotd + p 1 motd + m ()Lnet/minecraft/class_2926; method_3765 getServerMetadata + m ()Z method_3718 isFlightEnabled + m ()V method_3786 createWorlds + m (Lnet/minecraft/class_2378;)Ljava/util/Optional; method_46842 method_46842 + p 0 featureRegistry + m ()Lnet/minecraft/class_3485; method_27727 getStructureTemplateManager + m ()V method_29741 runServer + m ()V method_3774 prepareStartRegion + m ()Ljava/net/Proxy; method_36113 getProxy + m ()Lnet/minecraft/class_1845; method_59777 getBrewingRecipeRegistry + m ()Z method_3750 isStopped + m (Ljava/nio/file/Path;)Ljava/util/Optional; method_49387 method_49387 + p 0 path + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)Z method_3785 isSpawnProtected + p 2 pos + p 3 player + p 1 world + m (Lnet/minecraft/class_5219;)V method_17977 setToDebugWorldProperties + p 1 properties + m ()Z method_3828 isOnlineMode + c {@return whether this Minecraft server authenticates players logging in with the\n{@linkplain #getSessionService() Minecraft Session Service}} If this server is\n{@linkplain #isSingleplayer() singleplayer}, such as integrated servers, it will\naccept unauthenticated players; otherwise, it disconnects such players.\n\n@see net.minecraft.server.network.ServerLoginNetworkHandler + m ()Z method_3816 isDedicated + c Checks whether this server is a dedicated server.\n\n

A dedicated server refers to a Minecraft server implementation which is detached from a parent Minecraft client process.\nA dedicated Minecraft server only accepts remote connections. + m (Lcom/mojang/authlib/GameProfile;)V method_43825 setHostProfile + p 1 hostProfile + m ()Lnet/minecraft/class_9895; method_62735 getFuelRegistry + m ()Z method_3799 isDemo + m ()Z method_3775 shouldPreventProxyConnections + m ()Z method_3860 isRemote + m ()Lnet/minecraft/class_7492; method_43929 getMessageDecorator + c {@return the message decorator used by the server}\n\n@see MessageDecorator + m ()Lnet/minecraft/class_3696; method_24489 stopDebug + m ()V method_54831 updateAutosaveTicks + m ()Lnet/minecraft/class_12096; method_74995 getFunctionPermissions + m (ZZZ)Z method_39218 saveAll + p 2 flush + p 1 suppressLogs + p 3 force + m (Lnet/minecraft/class_3222;)V method_53501 method_53501 + p 0 player + m (Ljava/lang/Runnable;)Lnet/minecraft/class_3738; method_16209 createTask + m ()V method_3728 kickNonWhitelistedPlayers + m ()Lnet/minecraft/class_2170; method_3734 getCommandManager + c Gets the server's command manager.\nThe command manager is responsible for parsing and dispatching commands. + m ()Lnet/minecraft/class_9383$class_9385; method_58576 getReloadableRegistries + m ()F method_54832 getAverageTickTime + m ()Lnet/minecraft/class_3283; method_3836 getDataPackManager + m ()Lcom/mojang/datafixers/DataFixer; method_3855 getDataFixer + m (Lnet/minecraft/class_6860;Lnet/minecraft/class_5350;)Lnet/minecraft/server/MinecraftServer$class_6897; method_40374 method_40374 + p 1 dataPackContents + m (Ljava/lang/Thread;Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_3283;Lnet/minecraft/class_6904;Ljava/net/Proxy;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/class_7497;Lnet/minecraft/class_11545;)V + p 6 dataFixer + p 7 apiServices + p 8 chunkLoadProgress + p 2 session + p 3 dataPackManager + p 4 saveLoader + p 5 proxy + p 1 serverThread + m ()J method_3826 getTimeReference + m (Lnet/minecraft/class_12279;Ljava/lang/Object;)V method_74058 onGameRuleUpdated + m (Lnet/minecraft/class_3222;)Lnet/minecraft/class_3225; method_32816 getPlayerInteractionManager + p 1 player + m (Lnet/minecraft/class_6860;Lnet/minecraft/class_5350;Ljava/lang/Throwable;)V method_40375 method_40375 + p 1 dataPackContents + p 2 throwable + m ()Lnet/minecraft/class_11545; method_73046 getChunkLoadProgress + m (Ljava/util/function/Function;)Lnet/minecraft/server/MinecraftServer; method_29740 startServer + p 0 serverFactory + m ()I method_3773 getNetworkCompressionThreshold + m (Ljava/nio/file/Path;)V method_37329 method_37329 + p 0 path + m ()V method_61254 tickNetworkIo + m (Ljava/util/Collection;Ljava/lang/String;)Z method_29738 method_29738 + p 1 name + m ()Lnet/minecraft/class_1934; method_3761 getForcedGameMode + c Returns the game mode a player should be set to when connecting to the server, or {@code null} if none is set. + m ()Lnet/minecraft/class_12085; method_75524 getActivityNotifier + m ()Z method_3729 isEnforceWhitelist + m (Lnet/minecraft/class_6396;)Lnet/minecraft/class_6396; method_37324 addSystemDetails + p 1 details + m ()Lnet/minecraft/class_3324; method_3760 getPlayerManager + m ()V method_62734 runAutosave + m (Ljava/nio/file/Path;)V method_64261 method_64261 + p 1 path + m (Z)V method_76677 processPacketsAndTick + p 1 sprint + m (Lnet/minecraft/class_6396;)Lnet/minecraft/class_6396; method_3859 addExtraSystemDetails + p 1 details + m ()Lnet/minecraft/class_2168; method_3739 getCommandSource + c Creates a command source which represents this Minecraft server instance. + m ()Lnet/minecraft/class_2991; method_3740 getCommandFunctionManager + m ()Z method_27051 syncChunkWrites + m (Z)V method_73589 setUseAllowlist + p 1 useAllowlist + m (Ljava/lang/RuntimeException;)V method_60582 setWorldGenException + p 0 exception + m ()Lnet/minecraft/class_2926; method_49385 createMetadata + m (Ljava/nio/file/Path;)V method_38584 dumpNativeModules + p 1 path + m ()Z method_16043 isStopping + m ()J method_54834 getAverageNanosPerTick + m ()Z method_3823 setupServer + c Setups a Minecraft server to be ready for players to connect.\nThis method does several things including loading server properties and loading worlds.\n\n@return true if the Minecraft server was successfully setup, false if the server failed to be setup. + m ()V method_3782 shutdown + m (Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V method_37320 setupRecorder + p 1 resultConsumer + p 2 dumpConsumer + m ()Lnet/minecraft/class_3218; method_74944 getSpawnWorld + m (Ljava/lang/String;)Ljava/nio/file/Path; method_3758 getPath + p 1 path + c relative path from the run directory + m ()Z method_52344 shouldLogIps + m ()Z method_24488 isDebugRunning + m ()Lnet/minecraft/class_5219; method_27728 getSaveProperties + m ()Ljava/util/Map; method_73282 getCodeOfConductLanguages + m (Lnet/minecraft/class_3738;)V method_24306 executeTask + m (Ljava/lang/Thread;Ljava/lang/Throwable;)V method_3854 method_3854 + p 1 throwable + p 0 thread + m ()I method_30612 getRateLimit + m ()V method_27729 updateMobSpawnOptions + m ()Lnet/minecraft/class_3218; method_30002 getOverworld + m ()Z method_5387 isMainThread + m ()Ljava/security/KeyPair; method_3716 getKeyPair + m ()Lnet/minecraft/class_8743; method_56593 getDebugSampleLog + m (Z)V method_3747 stop + c Stops this server.\n\n@apiNote Pass {@code true} to {@code waitForShutdown} to wait until the server shuts\ndown. Note that this must be {@code false} if called from the server thread,\notherwise it deadlocks. + p 1 waitForShutdown + c whether to wait for server shutdown, if called outside the server thread + m (I)Lnet/minecraft/class_11544; method_73044 createChunkLoadMap + c {@return a {@link ChunkLoadMap} to visualize chunk loading in singleplayer} + p 1 radius + m (Lnet/minecraft/class_3283;Ljava/util/Collection;Lnet/minecraft/class_7699;Z)Lnet/minecraft/class_7712; method_59848 loadDataPacks + p 0 resourcePackManager + p 2 enabledFeatures + p 1 enabledProfiles + p 3 allowEnabling + m ()I method_3780 getTicks + c Gets the amount of ticks the server has been running for. + m ()V method_3821 exit + m ()V method_42062 forceStopRecorder + m (Lnet/minecraft/class_128;)V method_3744 setCrashReport + p 1 report + m ()Z method_3724 isSingleplayer + c {@return whether this server is a singleplayer server} A {@index singleplayer}\nserver has a "single player" to whom the player data in the {@code level.dat}\napplies. Otherwise, the player data is not applied to anyone. Hence, it is\nnecessary to properly load some single-player save games.\n\n

All vanilla integrated servers and dedicated servers launched with the argument\n{@code --singleplayer } are singleplayer servers.\n\n

A dedicated singleplayer server always turns online mode off, regardless of the\ncontent of {@code server.properties}.\n\n@see #getHostProfile\n@see #setHostProfile + m ()Z method_74060 getAutosave + m ()Ljava/util/Set; method_29435 getWorldRegistryKeys + m (Lnet/minecraft/class_3218;)Z method_40056 method_40056 + p 0 world + m (Lnet/minecraft/class_6498$class_6499;)Ljava/lang/String; method_38580 method_38580 + p 0 module + m ()Ljava/util/Optional; method_43659 getResourcePackProperties + m ()I method_3749 getMaxWorldBorderRadius + m (Lnet/minecraft/class_1934;ZI)Z method_3763 openToLan + c Opens a server for LAN connections.\nThis is only supported on an integrated server, a dedicated server will always fail to open to LAN.\n\n@return whether the server was successfully opened to LAN + p 3 port + c the port to open up to LAN connections + p 1 gameMode + c the game mode connecting players will have set by default + p 2 cheatsAllowed + c whether players on the server have operator permissions + m ()V method_37323 stopRecorder + m (Ljava/lang/Throwable;Lnet/minecraft/class_9145;)V method_62733 onPacketException + p 1 exception + p 2 type + m ()Lnet/minecraft/class_12086; method_74994 getOpPermissionLevel + m (Ljava/util/function/BooleanSupplier;)V method_3748 tick + p 1 shouldKeepTicking + m ()Lnet/minecraft/class_12027; method_74841 getSubscriberTracker + m ()I method_54837 getAutosaveInterval + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_3218; method_3847 getWorld + p 1 key + m (Lnet/minecraft/class_3222;)V method_19465 sendDifficulty + p 1 player + m ()[Ljava/lang/String; method_3858 getPlayerNames + m ()Lnet/minecraft/class_9782; method_60672 getServerLinks + m (Lnet/minecraft/class_3283;Lnet/minecraft/class_7699;)V method_59847 forceEnableRequestedFeatures + p 1 enabledFeatures + p 0 resourcePackManager + m ()Lnet/minecraft/class_2995; method_3845 getScoreboard + m ()Lnet/minecraft/class_2989; method_3851 getAdvancementLoader +c net/minecraft/server/MinecraftServer$class_6414 net/minecraft/server/MinecraftServer$DebugStart + f I field_33981 tick + f J field_33980 time + m (JI)V + p 3 tick + p 1 time + m (JI)Lnet/minecraft/class_3696; method_37330 end + p 1 endTime + p 3 endTick +c net/minecraft/server/MinecraftServer$class_6897 net/minecraft/server/MinecraftServer$ResourceManagerHolder + f Lnet/minecraft/class_5350; comp_353 dataPackContents + f Lnet/minecraft/class_6860; comp_352 resourceManager + m ()Lnet/minecraft/class_5350; comp_353 dataPackContents + m ()Lnet/minecraft/class_6860; comp_352 resourceManager + m (Lnet/minecraft/class_6860;Lnet/minecraft/class_5350;)V + p 1 resourceManager + p 2 dataPackContents +c net/minecraft/server/MinecraftServer$class_7460 net/minecraft/server/MinecraftServer$ServerResourcePackProperties + f Lnet/minecraft/class_2561; comp_787 prompt + f Ljava/lang/String; comp_785 hash + f Ljava/lang/String; comp_784 url + f Ljava/util/UUID; comp_2156 id + f Z comp_786 isRequired + m ()Ljava/lang/String; comp_784 url + m ()Ljava/lang/String; comp_785 hash + m ()Z comp_786 isRequired + m ()Lnet/minecraft/class_2561; comp_787 prompt + m ()Ljava/util/UUID; comp_2156 id + m (Ljava/util/UUID;Ljava/lang/String;Ljava/lang/String;ZLnet/minecraft/class_2561;)V + p 1 id + p 2 url + p 3 hash + p 4 isRequired + p 5 prompt +c net/minecraft/server/MinecraftServer$1 net/minecraft/server/MinecraftServer$1 + f I field_61876 spawnChunkX + f Lnet/minecraft/class_3898; field_61875 chunkLoadingManager + f I field_61877 spawnChunkZ +c net/minecraft/class_6000 net/minecraft/datafixer/schema/Schema2704 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_6002 net/minecraft/unused/packageinfo/PackageInfo6002 +c net/minecraft/class_8661 net/minecraft/client/gui/widget/LoadingWidget + f Lnet/minecraft/class_327; field_45361 textRenderer + m (Lnet/minecraft/class_327;Lnet/minecraft/class_2561;)V + p 2 message + p 1 textRenderer +c net/minecraft/class_9993 net/minecraft/client/render/entity/ZombifiedPiglinEntityRenderer + f Lnet/minecraft/class_2960; field_53205 TEXTURE + m ()Lnet/minecraft/class_10088; method_62589 createRenderState + m (Lnet/minecraft/class_10088;)Lnet/minecraft/class_2960; method_62588 getTexture + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_5601;Lnet/minecraft/class_5601;Lnet/minecraft/class_11677;Lnet/minecraft/class_11677;)V + p 2 mainLayer + p 1 context + p 4 adultModel + p 3 babyMainLayer + p 5 babyModel + m (Lnet/minecraft/class_1590;Lnet/minecraft/class_10088;F)V method_62587 updateRenderState +c net/minecraft/class_6001 net/minecraft/unused/packageinfo/PackageInfo6001 +c net/minecraft/class_8662 net/minecraft/client/gui/widget/TextIconButtonWidget + c A button with an icon and an optional text.\n\n@see ButtonWidget + f I field_45380 textureWidth + f Lnet/minecraft/class_8666; field_45379 texture + f I field_45381 textureHeight + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_4185$class_4241;Z)Lnet/minecraft/class_8662$class_8663; method_52723 builder + p 1 onPress + p 0 text + p 2 hideLabel + m (Lnet/minecraft/class_332;II)V method_75817 drawIcon + p 3 y + p 1 context + p 2 x + m (IILnet/minecraft/class_2561;IILnet/minecraft/class_8666;Lnet/minecraft/class_4185$class_4241;Lnet/minecraft/class_2561;Lnet/minecraft/class_4185$class_7841;)V + p 6 textures + p 7 onPress + p 8 tooltip + p 9 narrationSupplier + p 2 height + p 3 message + p 4 textureWidth + p 5 textureHeight + p 1 width +c net/minecraft/class_8662$class_8663 net/minecraft/client/gui/widget/TextIconButtonWidget$Builder + f Lnet/minecraft/class_2561; field_45382 text + f Z field_45384 hideText + f I field_45385 width + f I field_45386 height + f Lnet/minecraft/class_2561; field_62121 tooltip + f I field_45388 textureWidth + f I field_45389 textureHeight + f Lnet/minecraft/class_8666; field_45387 texture + f Lnet/minecraft/class_4185$class_7841; field_49486 narrationSupplier + f Lnet/minecraft/class_4185$class_4241; field_45383 onPress + m (Lnet/minecraft/class_2960;II)Lnet/minecraft/class_8662$class_8663; method_52727 texture + p 3 height + p 2 width + p 1 texture + m (Lnet/minecraft/class_8666;II)Lnet/minecraft/class_8662$class_8663; method_73394 texture + p 2 width + p 1 texture + p 3 height + m (I)Lnet/minecraft/class_8662$class_8663; method_52725 width + p 1 width + m ()Lnet/minecraft/class_8662$class_8663; method_73393 useTextAsTooltip + m (II)Lnet/minecraft/class_8662$class_8663; method_52726 dimension + p 1 width + p 2 height + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_4185$class_4241;Z)V + p 3 hideText + p 2 onPress + p 1 text + m (Lnet/minecraft/class_4185$class_7841;)Lnet/minecraft/class_8662$class_8663; method_57722 narration + p 1 narrationSupplier + m ()Lnet/minecraft/class_8662; method_52724 build +c net/minecraft/class_8662$class_8664 net/minecraft/client/gui/widget/TextIconButtonWidget$IconOnly +c net/minecraft/class_8662$class_8665 net/minecraft/client/gui/widget/TextIconButtonWidget$WithText +c net/minecraft/class_9992 net/minecraft/client/render/entity/MinecartEntityRenderer + m ()Lnet/minecraft/class_10045; method_62491 createRenderState +c net/minecraft/class_9991 net/minecraft/client/render/entity/AbstractDonkeyEntityRenderer + f Lnet/minecraft/class_2960; field_53186 texture + m (Lnet/minecraft/class_1492;Lnet/minecraft/class_10013;F)V method_62413 updateRenderState + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_9991$class_10650;)V + p 2 type + p 1 context + m (Lnet/minecraft/class_10013;)Lnet/minecraft/class_1799; method_66848 method_66848 + p 0 state + m ()Lnet/minecraft/class_10013; method_62412 createRenderState + m (Lnet/minecraft/class_10013;)Lnet/minecraft/class_2960; method_62414 getTexture +c net/minecraft/class_9991$class_10650 net/minecraft/client/render/entity/AbstractDonkeyEntityRenderer$Type + f Lnet/minecraft/class_5601; field_56101 adultSaddleModelLayer + f Lnet/minecraft/class_2960; field_56097 texture + f Lnet/minecraft/class_5601; field_56102 babySaddleModelLayer + f Lnet/minecraft/class_10186$class_10190; field_56100 saddleLayerType + f Lnet/minecraft/class_5601; field_56098 adultModelLayer + f Lnet/minecraft/class_5601; field_56099 babyModelLayer + f Lnet/minecraft/class_9991$class_10650; field_56095 DONKEY + f Lnet/minecraft/class_9991$class_10650; field_56096 MULE + m (Ljava/lang/String;ILnet/minecraft/class_2960;Lnet/minecraft/class_5601;Lnet/minecraft/class_5601;Lnet/minecraft/class_10186$class_10190;Lnet/minecraft/class_5601;Lnet/minecraft/class_5601;)V + p 8 babySaddleModelLayer + p 5 babyModelLayer + p 4 adultModelLayer + p 7 adultSaddleModelLayer + p 6 saddleLayerType + p 3 texture +c net/minecraft/class_9990 net/minecraft/client/render/entity/AgeableMobEntityRenderer + f Lnet/minecraft/class_583; field_53178 babyModel + f Lnet/minecraft/class_583; field_53177 adultModel + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_583;Lnet/minecraft/class_583;F)V + p 3 babyModel + p 2 model + p 1 context + p 4 shadowRadius + m (Lnet/minecraft/class_10042;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_4054 render +c net/minecraft/class_8669 net/minecraft/client/gui/screen/world/SymlinkWarningScreen + f Lnet/minecraft/class_2561; field_45411 PACK_MESSAGE + f Lnet/minecraft/class_2561; field_45412 message + f Lnet/minecraft/class_2561; field_45410 PACK_TITLE + f Ljava/net/URI; field_45413 link + f Lnet/minecraft/class_7845; field_45415 grid + f Ljava/lang/Runnable; field_46861 onClose + f Lnet/minecraft/class_2561; field_45408 WORLD_TITLE + f Lnet/minecraft/class_2561; field_45409 WORLD_MESSAGE + m (Lnet/minecraft/class_4185;)V method_52747 method_52747 + p 1 button + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Ljava/net/URI;Ljava/lang/Runnable;)V + p 4 onClose + p 2 message + p 3 link + p 1 title + m (Ljava/lang/Runnable;)Lnet/minecraft/class_437; method_52748 world + p 0 onClose + m (Lnet/minecraft/class_4185;)V method_52749 method_52749 + p 1 button + m (Ljava/lang/Runnable;)Lnet/minecraft/class_437; method_52750 pack + p 0 onClose + m (Lnet/minecraft/class_4185;)V method_52751 method_52751 + p 1 button +c net/minecraft/class_6004 net/minecraft/unused/packageinfo/PackageInfo6004 +c net/minecraft/class_8667 net/minecraft/client/gui/widget/DirectionalLayoutWidget + c A widget implementing one-directional layout. The elements can be\npositioned either horizontally or vertically.\n\n

Use {@link AxisGridWidget} to allow multiple elements per row or column.\n\n@see AxisGridWidget + f Lnet/minecraft/class_7845; field_45400 grid + f I field_45402 currentIndex + f Lnet/minecraft/class_8667$class_8668; field_45401 axis + m ()Lnet/minecraft/class_8667; method_52741 vertical + m (Lnet/minecraft/class_8667$class_8668;)V + p 1 axis + m ()Lnet/minecraft/class_8667; method_52742 horizontal + m (Lnet/minecraft/class_8021;Lnet/minecraft/class_7847;)Lnet/minecraft/class_8021; method_52737 add + p 1 widget + p 2 positioner + m ()Lnet/minecraft/class_7847; method_52739 copyPositioner + m (IILnet/minecraft/class_8667$class_8668;)V + p 1 x + p 3 axis + p 2 y + m (Lnet/minecraft/class_8021;Ljava/util/function/Consumer;)Lnet/minecraft/class_8021; method_52738 add + p 2 callback + p 1 widget + m (Lnet/minecraft/class_8021;)Lnet/minecraft/class_8021; method_52736 add + p 1 widget + m ()Lnet/minecraft/class_7847; method_52740 getMainPositioner + m (I)Lnet/minecraft/class_8667; method_52735 spacing + p 1 spacing +c net/minecraft/class_8667$class_8668 net/minecraft/client/gui/widget/DirectionalLayoutWidget$DisplayAxis + f Lnet/minecraft/class_8667$class_8668; field_45404 VERTICAL + f Lnet/minecraft/class_8667$class_8668; field_45403 HORIZONTAL + m (Lnet/minecraft/class_7845;I)V method_52744 setSpacing + p 1 grid + p 2 spacing + m (Lnet/minecraft/class_7845;Lnet/minecraft/class_8021;ILnet/minecraft/class_7847;)Lnet/minecraft/class_8021; method_52745 add + p 4 positioner + p 3 index + p 2 widget + p 1 grid +c net/minecraft/class_9999 net/minecraft/client/render/entity/state/ProjectileEntityRenderState + f F field_53258 yaw + f F field_53257 pitch + f F field_53259 shake +c net/minecraft/class_6003 net/minecraft/unused/packageinfo/PackageInfo6003 +c net/minecraft/class_9998 net/minecraft/client/render/entity/state/ArmorStandEntityRenderState + f Z field_53248 small + f Lnet/minecraft/class_2379; field_53256 rightLegRotation + f Z field_53247 marker + f Lnet/minecraft/class_2379; field_53255 leftLegRotation + f Lnet/minecraft/class_2379; field_53254 rightArmRotation + f Lnet/minecraft/class_2379; field_53253 leftArmRotation + f Lnet/minecraft/class_2379; field_53252 bodyRotation + f Lnet/minecraft/class_2379; field_53251 headRotation + f Z field_53250 showBasePlate + f F field_53246 timeSinceLastHit + f F field_53245 yaw + f Z field_53249 showArms +c net/minecraft/class_9997 net/minecraft/client/render/entity/state/ArmadilloEntityRenderState + f Z field_53241 rolledUp + f Lnet/minecraft/class_7094; field_53243 rollingAnimationState + f Lnet/minecraft/class_7094; field_53242 unrollingAnimationState + f Lnet/minecraft/class_7094; field_53244 scaredAnimationState +c net/minecraft/class_8666 net/minecraft/client/gui/screen/ButtonTextures + c A set of button textures. It contains four texture choices, one of each of the cases\nwhere a button is enabled/disabled and focused/not focused. + f Lnet/minecraft/class_2960; comp_1605 disabled + c the texture for when the widget is disabled, but not focused + f Lnet/minecraft/class_2960; comp_1606 enabledFocused + c the texture for when the widget is enabled and focused + f Lnet/minecraft/class_2960; comp_1604 enabled + c the texture for when the widget is enabled, but not focused + f Lnet/minecraft/class_2960; comp_1607 disabledFocused + c the texture for when the widget is disabled and focused + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V + c Constructs a set of button textures where only focusing the widget affects\nthe textures. + p 1 unfocused + c the texture for when the widget is not focused + p 2 focused + c the texture for when the widget is focused + m (Lnet/minecraft/class_2960;)V + p 1 texture + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V + c Constructs a set of button textures where both disabled cases use the same texture. + p 3 focused + c the texture for when the widget is enabled and focused + p 2 disabled + c the texture for when the widget is disabled + p 1 enabled + c the texture for when the widget is enabled, but not focused + m (ZZ)Lnet/minecraft/class_2960; method_52729 get + c Gets a specific texture option from this texture set.\n\n@return the texture identifier matching the widget state + p 1 enabled + c {@code true} if the widget is enabled, {@code false} otherwise + p 2 focused + c {@code true} if the widget is focused, {@code false} otherwise + m ()Lnet/minecraft/class_2960; comp_1604 enabled + m ()Lnet/minecraft/class_2960; comp_1607 disabledFocused + m ()Lnet/minecraft/class_2960; comp_1606 enabledFocused + m ()Lnet/minecraft/class_2960; comp_1605 disabled + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V + p 1 enabled + p 2 disabled + p 3 enabledFocused + p 4 disabledFocused +c net/minecraft/class_9996 net/minecraft/client/render/entity/state/AllayEntityRenderState + f F field_53240 itemHoldAnimationTicks + f F field_53239 spinningAnimationTicks + f Z field_53237 dancing + f Z field_53238 spinning +c net/minecraft/class_9962 net/minecraft/client/gl/PostEffectPipeline + f Lcom/mojang/serialization/Codec; field_53111 CODEC + f Ljava/util/Map; comp_3016 internalTargets + f Ljava/util/List; comp_3017 passes + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62242 method_62242 + p 0 instance + m ()Ljava/util/Map; comp_3016 internalTargets + m ()Ljava/util/List; comp_3017 passes + m (Ljava/util/Map;Ljava/util/List;)V + p 1 internalTargets + p 2 passes +c net/minecraft/class_9962$class_9968 net/minecraft/client/gl/PostEffectPipeline$TargetSampler + f Lcom/mojang/serialization/Codec; field_53118 CODEC + f Ljava/lang/String; comp_3024 samplerName + f Lnet/minecraft/class_2960; comp_3025 targetId + f Z comp_3027 bilinear + f Z comp_3026 useDepthBuffer + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62252 method_62252 + p 0 instance + m ()Lnet/minecraft/class_2960; comp_3025 targetId + m ()Z comp_3026 useDepthBuffer + m ()Z comp_3027 bilinear + m (Ljava/lang/String;Lnet/minecraft/class_2960;ZZ)V + p 1 samplerName + p 2 targetId + p 3 useDepthBuffer + p 4 bilinear +c net/minecraft/class_9962$class_9969 net/minecraft/client/gl/PostEffectPipeline$TextureSampler + f Lcom/mojang/serialization/Codec; field_53119 CODEC + f Ljava/lang/String; comp_3024 samplerName + f Lnet/minecraft/class_2960; comp_3028 location + f I comp_3030 height + f Z comp_3031 bilinear + f I comp_3029 width + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62253 method_62253 + p 0 instance + m ()Lnet/minecraft/class_2960; comp_3028 location + m ()I comp_3030 height + m ()Z comp_3031 bilinear + m ()I comp_3029 width + m (Ljava/lang/String;Lnet/minecraft/class_2960;IIZ)V + p 1 samplerName + p 2 location + p 3 width + p 4 height + p 5 bilinear +c net/minecraft/class_9962$class_9966 net/minecraft/client/gl/PostEffectPipeline$Targets + f Lcom/mojang/serialization/Codec; field_53115 CODEC + f Ljava/util/Optional; comp_4165 height + f Ljava/util/Optional; comp_4164 width + f Z comp_4166 persistent + f I comp_4167 clearColor + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71125 method_71125 + p 0 instance + m ()Z comp_4166 persistent + m ()I comp_4167 clearColor + m ()Ljava/util/Optional; comp_4164 width + m ()Ljava/util/Optional; comp_4165 height + m (Ljava/util/Optional;Ljava/util/Optional;ZI)V + p 1 width + p 2 height + p 3 persistent + p 4 clearColor +c net/minecraft/class_9962$class_9967 net/minecraft/client/gl/PostEffectPipeline$Pass + f Lcom/mojang/serialization/Codec; field_53117 INPUTS_CODEC + f Lcom/mojang/serialization/Codec; field_60121 UNIFORMS_CODEC + f Lcom/mojang/serialization/Codec; field_53116 CODEC + f Lnet/minecraft/class_2960; comp_3718 vertexShaderId + f Lnet/minecraft/class_2960; comp_3719 fragmentShaderId + f Ljava/util/Map; comp_3023 uniforms + f Ljava/util/List; comp_3021 inputs + f Lnet/minecraft/class_2960; comp_3022 outputTarget + m (Lnet/minecraft/class_9962$class_9965;)Ljava/util/stream/Stream; method_66539 method_66539 + p 0 input + m ()Ljava/util/stream/Stream; method_66540 streamTargets + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62249 method_62249 + p 0 instance + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_62251 method_62251 + p 0 inputs + m ()Ljava/util/List; comp_3021 inputs + m ()Lnet/minecraft/class_2960; comp_3022 outputTarget + m ()Ljava/util/Map; comp_3023 uniforms + m ()Lnet/minecraft/class_2960; comp_3718 vertexShaderId + m ()Lnet/minecraft/class_2960; comp_3719 fragmentShaderId + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Ljava/util/List;Lnet/minecraft/class_2960;Ljava/util/Map;)V + p 1 vertexShaderId + p 2 fragmentShaderId + p 3 inputs + p 4 outputTarget + p 5 uniforms +c net/minecraft/class_9962$class_9965 net/minecraft/client/gl/PostEffectPipeline$Input + f Lcom/mojang/serialization/Codec; field_53114 CODEC + m ()Ljava/util/Set; method_62246 getTargetId + m (Lnet/minecraft/class_9962$class_9965;)Lcom/mojang/datafixers/util/Either; method_62245 method_62245 + p 0 sampler + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_9962$class_9965; method_62244 method_62244 + p 0 either + m ()Ljava/lang/String; comp_3024 samplerName +c net/minecraft/class_7300 net/minecraft/unused/packageinfo/PackageInfo7300 +c net/minecraft/class_8631 net/minecraft/entity/effect/BadOmenStatusEffect +c net/minecraft/class_9960 net/minecraft/client/render/DefaultFramebufferSet + f Lnet/minecraft/class_2960; field_53089 ENTITY_OUTLINE + f Lnet/minecraft/class_9925; field_53096 cloudsFramebuffer + f Lnet/minecraft/class_9925; field_53097 entityOutlineFramebuffer + f Lnet/minecraft/class_2960; field_53087 WEATHER + f Lnet/minecraft/class_2960; field_53088 CLOUDS + f Lnet/minecraft/class_2960; field_53085 ITEM_ENTITY + f Lnet/minecraft/class_9925; field_53092 translucentFramebuffer + f Lnet/minecraft/class_2960; field_53086 PARTICLES + f Lnet/minecraft/class_9925; field_53093 itemEntityFramebuffer + f Lnet/minecraft/class_2960; field_53083 MAIN + f Lnet/minecraft/class_9925; field_53094 particlesFramebuffer + f Lnet/minecraft/class_2960; field_53084 TRANSLUCENT + f Lnet/minecraft/class_9925; field_53095 weatherFramebuffer + f Ljava/util/Set; field_53903 MAIN_AND_ENTITY_OUTLINE + f Ljava/util/Set; field_53902 MAIN_ONLY + f Lnet/minecraft/class_9925; field_53091 mainFramebuffer + f Ljava/util/Set; field_53090 STAGES + m ()V method_62223 clear +c net/minecraft/class_8638 net/minecraft/entity/effect/WitherStatusEffect + f I field_55006 FLOWER_CONTACT_EFFECT_DURATION +c net/minecraft/class_7308 net/minecraft/client/render/entity/model/AllayEntityModel + f Lnet/minecraft/class_630; field_38445 leftArm + f Lnet/minecraft/class_630; field_39459 head + f Lnet/minecraft/class_630; field_38444 rightArm + f Lnet/minecraft/class_630; field_38447 leftWing + f Lnet/minecraft/class_630; field_38446 rightWing + f Lnet/minecraft/class_630; field_38443 body + m (Lnet/minecraft/class_9996;Lnet/minecraft/class_1306;Lnet/minecraft/class_4587;)V method_72829 setArmAngle + m (Lnet/minecraft/class_9996;)V method_42732 setAngles + m ()Lnet/minecraft/class_5607; method_42733 getTexturedModelData +c net/minecraft/class_8636 net/minecraft/entity/effect/RegenerationStatusEffect +c net/minecraft/class_8637 net/minecraft/entity/effect/SaturationStatusEffect +c net/minecraft/class_8635 net/minecraft/entity/effect/PoisonStatusEffect + f I field_55005 FLOWER_CONTACT_EFFECT_DURATION +c net/minecraft/class_8632 net/minecraft/entity/effect/InstantHealthOrDamageStatusEffect + f Z field_45103 damage + m (Lnet/minecraft/class_4081;IZ)V + p 1 category + p 3 damage + p 2 color +c net/minecraft/class_8633 net/minecraft/entity/effect/HungerStatusEffect +c net/minecraft/class_8641 net/minecraft/server/function/Macro + f Lnet/minecraft/class_2960; field_46758 id + f Lit/unimi/dsi/fastutil/objects/Object2ObjectLinkedOpenHashMap; field_45151 cache + f Ljava/util/List; field_46759 lines + f Ljava/util/List; field_45149 varNames + f Ljava/text/DecimalFormat; field_46190 DECIMAL_FORMAT + f I field_45150 CACHE_SIZE + m (Ljava/util/List;Ljava/util/List;Lcom/mojang/brigadier/CommandDispatcher;)Lnet/minecraft/class_8868; method_52597 withMacroReplaced + p 1 varNames + p 3 dispatcher + p 2 arguments + m (Ljava/util/List;Lit/unimi/dsi/fastutil/ints/IntList;Ljava/util/List;)V method_54424 addArgumentsByIndices + p 0 arguments + p 2 out + p 1 indices + m (Ljava/util/List;Ljava/lang/String;)Ljava/lang/String; method_54425 method_54425 + p 1 path + m (Ljava/util/List;Ljava/util/List;I)V method_54426 method_54426 + p 2 index + m (Lnet/minecraft/class_2960;Ljava/util/List;Ljava/util/List;)V + p 2 lines + p 1 id + p 3 varNames + m (Lnet/minecraft/class_2520;)Ljava/lang/String; method_53840 toString + p 0 nbt +c net/minecraft/class_8641$class_8869 net/minecraft/server/function/Macro$Line + m ()Lit/unimi/dsi/fastutil/ints/IntList; method_54428 getDependentVariables + m (Ljava/util/List;Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_2960;)Lnet/minecraft/class_8856; method_54429 instantiate + p 1 args + p 2 dispatcher + p 3 id +c net/minecraft/class_8641$class_8871 net/minecraft/server/function/Macro$FixedLine + f Lnet/minecraft/class_8856; field_46762 action + m (Lnet/minecraft/class_8856;)V + p 1 action +c net/minecraft/class_8641$class_8870 net/minecraft/server/function/Macro$VariableLine + f Lnet/minecraft/class_8873; field_46760 invocation + f Lnet/minecraft/class_8839; field_47891 source + f Lit/unimi/dsi/fastutil/ints/IntList; field_46761 variableIndices + m (Lnet/minecraft/class_8873;Lit/unimi/dsi/fastutil/ints/IntList;Lnet/minecraft/class_8839;)V + p 1 invocation + p 3 source + p 2 variableIndices +c net/minecraft/class_7310 net/minecraft/client/render/entity/AllayEntityRenderer + f Lnet/minecraft/class_2960; field_38461 TEXTURE + m (Lnet/minecraft/class_7298;Lnet/minecraft/class_9996;F)V method_62371 updateRenderState + m (Lnet/minecraft/class_7298;Lnet/minecraft/class_2338;)I method_42745 getBlockLight + m ()Lnet/minecraft/class_9996; method_62370 createRenderState + m (Lnet/minecraft/class_9996;)Lnet/minecraft/class_2960; method_42744 getTexture +c net/minecraft/class_8647 net/minecraft/client/realms/RealmsAvailability + f Lorg/slf4j/Logger; field_45182 LOGGER + f Ljava/util/concurrent/CompletableFuture; field_45183 currentFuture + m (Ljava/util/concurrent/CompletableFuture;)Z method_52625 wasUnsuccessful + p 0 future + m ()Ljava/util/concurrent/CompletableFuture; method_52626 checkInternal + m ()Ljava/util/concurrent/CompletableFuture; method_52624 check +c net/minecraft/class_8647$class_8649 net/minecraft/client/realms/RealmsAvailability$Type + f Lnet/minecraft/class_8647$class_8649; field_45185 SUCCESS + f Lnet/minecraft/class_8647$class_8649; field_45187 NEEDS_PARENTAL_CONSENT + f Lnet/minecraft/class_8647$class_8649; field_45186 INCOMPATIBLE_CLIENT + f Lnet/minecraft/class_8647$class_8649; field_45189 UNEXPECTED_ERROR + f Lnet/minecraft/class_8647$class_8649; field_45188 AUTHENTICATION_ERROR +c net/minecraft/class_8647$class_8648 net/minecraft/client/realms/RealmsAvailability$Info + f Lnet/minecraft/class_8647$class_8649; comp_1593 type + f Lnet/minecraft/class_4355; comp_1594 exception + m (Lnet/minecraft/class_437;)Lnet/minecraft/class_437; method_52628 createScreen + p 1 parent + m (Lnet/minecraft/class_4355;)V + p 1 exception + m (Lnet/minecraft/class_8647$class_8649;)V + p 1 type + m ()Lnet/minecraft/class_4355; comp_1594 exception + m ()Lnet/minecraft/class_8647$class_8649; comp_1593 type + m (Lnet/minecraft/class_8647$class_8649;Lnet/minecraft/class_4355;)V + p 1 type + p 2 exception +c net/minecraft/class_9978 net/minecraft/client/render/WorldBorderRendering + f D field_56589 lastUploadedBoundNorth + f Lnet/minecraft/class_2960; field_53157 FORCEFIELD + f Z field_56586 forceRefreshBuffers + f D field_56924 lastXMax + f D field_56923 lastXMin + f D field_56926 lastZMax + f D field_56925 lastZMin + f Lcom/mojang/blaze3d/systems/RenderSystem$class_5590; field_57936 indexBuffer + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_56591 vertexBuffer + f D field_56587 lastUploadedBoundWest + m (Lnet/minecraft/class_12078;Lnet/minecraft/class_243;DD)V method_62322 render + p 5 farPlaneDistance + p 3 viewDistanceBlocks + p 2 cameraPos + p 1 state + m (Lnet/minecraft/class_12078;DDDFFF)V method_67551 refreshDirectionBuffer + p 10 vMax + p 8 farPlaneDistance + p 9 vMin + p 6 x + p 4 z + p 2 viewDistanceBlocks + p 1 state + m (Lnet/minecraft/class_2784;FLnet/minecraft/class_243;DLnet/minecraft/class_12078;)V method_74927 updateRenderState + p 1 border + p 2 tickProgress + p 3 cameraPos + p 4 viewDistanceBlocks + p 6 state + m ()V method_67549 markBuffersDirty + m (Lnet/minecraft/class_12078;)Z method_67550 shouldRefreshBuffers + p 1 state +c net/minecraft/class_8646 net/minecraft/scoreboard/ScoreboardDisplaySlot + f Lnet/minecraft/class_3542$class_7292; field_45175 CODEC + f Ljava/lang/String; field_45178 name + f Ljava/util/function/IntFunction; field_45176 FROM_ID + f I field_45177 id + f Lnet/minecraft/class_8646; field_45170 TEAM_AQUA + f Lnet/minecraft/class_8646; field_45171 TEAM_RED + f Lnet/minecraft/class_8646; field_45172 TEAM_LIGHT_PURPLE + f Lnet/minecraft/class_8646; field_45173 TEAM_YELLOW + f Lnet/minecraft/class_8646; field_45174 TEAM_WHITE + f Lnet/minecraft/class_8646; field_45163 TEAM_DARK_RED + f Lnet/minecraft/class_8646; field_45164 TEAM_DARK_PURPLE + f Lnet/minecraft/class_8646; field_45165 TEAM_GOLD + f Lnet/minecraft/class_8646; field_45166 TEAM_GRAY + f Lnet/minecraft/class_8646; field_45167 TEAM_DARK_GRAY + f Lnet/minecraft/class_8646; field_45168 TEAM_BLUE + f Lnet/minecraft/class_8646; field_45169 TEAM_GREEN + f Lnet/minecraft/class_8646; field_45160 TEAM_DARK_BLUE + f Lnet/minecraft/class_8646; field_45161 TEAM_DARK_GREEN + f Lnet/minecraft/class_8646; field_45162 TEAM_DARK_AQUA + f Lnet/minecraft/class_8646; field_45159 TEAM_BLACK + f Lnet/minecraft/class_8646; field_45156 LIST + f Lnet/minecraft/class_8646; field_45157 SIDEBAR + f Lnet/minecraft/class_8646; field_45158 BELOW_NAME + m ()I method_52621 getId + m (Ljava/lang/String;IILjava/lang/String;)V + p 4 name + p 3 id + m (Lnet/minecraft/class_124;)Lnet/minecraft/class_8646; method_52622 fromFormatting + p 0 formatting +c net/minecraft/class_9976 net/minecraft/client/render/WeatherRendering + f I field_53154 soundChance + f [F field_53156 NORMAL_LINE_DZ + f [F field_53155 NORMAL_LINE_DX + c Given {@code -16 <= z < 16} and {@code -16 <= x < 16}, let {@code i = 32 * (z + 16) + (x + 16)}.\nThen {@code NORMAL_LINE_DX[i]} and {@code NORMAL_LINE_DZ[i]} describe the\nunit vector perpendicular to {@code (x, z)}.\n\nThese lookup tables are used for rendering rain and snow. + f Lnet/minecraft/class_2960; field_53151 SNOW_TEXTURE + f Lnet/minecraft/class_2960; field_53150 RAIN_TEXTURE + m (Lnet/minecraft/class_638;Lnet/minecraft/class_4184;ILnet/minecraft/class_4066;I)V method_62319 addParticlesAndSound + p 2 camera + p 1 world + p 4 particlesMode + p 3 ticks + p 5 weatherRadius + m (Lnet/minecraft/class_5819;IIIIIIF)Lnet/minecraft/class_9976$class_9977; method_62321 createSnowPiece + p 1 random + p 2 ticks + p 3 x + p 4 yMin + p 5 yMax + p 6 z + p 7 light + p 8 tickProgress + m (Lnet/minecraft/class_1937;IFLnet/minecraft/class_243;Lnet/minecraft/class_12077;)V method_62315 buildPrecipitationPieces + p 4 cameraPos + p 5 state + p 2 ticks + p 3 tickProgress + p 1 world + m (Lnet/minecraft/class_5819;IIIIIIF)Lnet/minecraft/class_9976$class_9977; method_62314 createRainPiece + p 1 random + p 2 ticks + p 3 x + p 4 yMin + p 5 yMax + p 6 z + p 7 light + p 8 tickProgress + m (Lnet/minecraft/class_4588;Ljava/util/List;Lnet/minecraft/class_243;FIF)V method_62318 renderPieces + p 1 vertexConsumer + p 3 pos + p 2 pieces + p 5 range + p 4 intensity + p 6 gradient + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1959$class_1963; method_62317 getPrecipitationAt + p 2 pos + p 1 world + m (Lnet/minecraft/class_4597;Lnet/minecraft/class_243;Lnet/minecraft/class_12077;)V method_62320 renderPrecipitation + p 1 vertexConsumers + p 3 state + p 2 pos +c net/minecraft/class_9976$class_9977 net/minecraft/client/render/WeatherRendering$Piece + f I comp_3048 lightCoords + f F comp_3047 vOffset + f F comp_3046 uOffset + f I comp_3045 topY + f I comp_3044 bottomY + f I comp_3043 z + f I comp_3042 x + m ()I comp_3043 z + m ()I comp_3042 x + m ()F comp_3047 vOffset + m ()F comp_3046 uOffset + m ()I comp_3045 topY + m ()I comp_3044 bottomY + m ()I comp_3048 lightCoords + m (IIIIFFI)V + p 1 x + p 2 z + p 3 bottomY + p 4 topY + p 5 uOffset + p 6 vOffset + p 7 lightCoords +c net/minecraft/class_8643 net/minecraft/server/function/MacroException + f Lnet/minecraft/class_2561; field_45154 message + m (Lnet/minecraft/class_2561;)V + p 1 message + m ()Lnet/minecraft/class_2561; method_52600 getMessage +c net/minecraft/class_7312 net/minecraft/structure/AncientCityGenerator + f Lnet/minecraft/class_5321; field_38471 CITY_CENTER + m (Lnet/minecraft/class_7891;)V method_42755 bootstrap + p 0 poolRegisterable +c net/minecraft/class_9975 net/minecraft/client/render/SkyRendering + f Lnet/minecraft/class_1059; field_63580 celestialAtlasTexture + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_53145 starVertexBuffer + f Lnet/minecraft/class_2960; field_63579 END_FLASH_TEXTURE + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_53147 bottomSkyVertexBuffer + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_62958 moonPhaseVertexBuffer + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_62960 endFlashVertexBuffer + f I field_58198 starIndexCount + f Lnet/minecraft/class_1044; field_62948 endSkyTexture + f Lnet/minecraft/class_2960; field_53143 END_SKY_TEXTURE + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_53146 topSkyVertexBuffer + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_62959 sunRiseVertexBuffer + f Lnet/minecraft/class_2960; field_63578 SUN_TEXTURE + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_62957 sunVertexBuffer + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_55153 endSkyVertexBuffer + f Lcom/mojang/blaze3d/systems/RenderSystem$class_5590; field_62961 indexBuffer2 + m (FLnet/minecraft/class_4587;)V method_62303 renderSun + p 2 matrices + p 1 alpha + m (Lnet/minecraft/class_638;FLnet/minecraft/class_4184;Lnet/minecraft/class_12076;)V method_74926 updateRenderState + p 1 world + p 2 tickProgress + p 3 camera + p 4 state + m ()V method_62305 renderSkyDark + m (Lnet/minecraft/class_1060;Lnet/minecraft/class_2960;)Lnet/minecraft/class_1044; method_74757 bindTexture + p 1 textureManager + p 2 texture + m (Lnet/minecraft/class_4587;FFFLnet/minecraft/class_12131;FF)V method_62307 renderCelestialBodies + p 7 starBrightness + p 5 moonPhase + p 6 alpha + p 3 moonAngle + p 4 starAngle + p 1 matrices + p 2 sunAngle + m ()Lcom/mojang/blaze3d/buffers/GpuBuffer; method_65233 createStars + m (Lnet/minecraft/class_1059;)Lcom/mojang/blaze3d/buffers/GpuBuffer; method_74759 createSun + p 0 atlas + m (Lnet/minecraft/class_12131;FLnet/minecraft/class_4587;)V method_62304 renderMoon + p 3 matrices + p 2 alpha + p 1 moonPhase + m (Lnet/minecraft/class_1059;)Lcom/mojang/blaze3d/buffers/GpuBuffer; method_74761 createEndFlash + p 0 atlas + m (Lnet/minecraft/class_4588;F)V method_62309 createSky + p 2 height + p 1 vertexConsumer + m (Lnet/minecraft/class_1060;Lnet/minecraft/class_11697;)V + p 1 textureManager + p 2 atlasManager + m (Lnet/minecraft/class_4587;FI)V method_62306 renderGlowingSky + p 2 solarAngle + p 1 matrices + p 3 color + m ()Lcom/mojang/blaze3d/buffers/GpuBuffer; method_74758 createSunRise + m (Lnet/minecraft/class_4587;FFF)V method_73244 drawEndLightFlash + p 1 matrices + p 2 intensity + p 3 pitch + p 4 yaw + m ()V method_62312 renderEndSky + m (FLnet/minecraft/class_4587;)V method_62310 renderStars + p 2 matrices + p 1 brightness + m ()Lcom/mojang/blaze3d/buffers/GpuBuffer; method_65234 createEndSky + m (I)V method_62302 renderTopSky + m (FLnet/minecraft/class_638;)Z method_74925 isSkyDark + p 2 world + p 1 tickProgress + m (Lnet/minecraft/class_1059;)Lcom/mojang/blaze3d/buffers/GpuBuffer; method_74760 createMoonPhases + p 0 atlas + m (Ljava/lang/String;Lnet/minecraft/class_1058;)Lcom/mojang/blaze3d/buffers/GpuBuffer; method_75418 createQuadVertexBuffer + p 1 sprite + p 0 description +c net/minecraft/class_7313 net/minecraft/structure/AncientCityOutskirtsGenerator + m (Lnet/minecraft/class_7891;)V method_42756 bootstrap + p 0 poolRegisterable +c net/minecraft/class_9974 net/minecraft/client/render/VertexRendering + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4588;Lnet/minecraft/class_265;DDDIF)V method_62296 drawOutline + p 10 lineWidth + p 9 color + p 7 offsetZ + p 5 offsetY + p 2 shape + p 3 offsetX + p 0 matrices + p 1 vertexConsumers + m (Lnet/minecraft/class_4588;Lnet/minecraft/class_4587$class_4665;DDDIFDDDDDD)V method_62299 method_62299 + p 20 maxZ + p 16 maxX + p 18 maxY + p 12 minY + p 14 minZ + p 10 minX +c net/minecraft/class_3600 net/minecraft/datafixer/fix/EntityHealthFix + f Ljava/util/Set; field_15894 ENTITIES + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15704 fixHealth + p 1 entityDynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15705 method_15705 + p 1 entityTyped +c net/minecraft/class_3601 net/minecraft/datafixer/fix/EntityHorseSaddleFix +c net/minecraft/class_4926 net/minecraft/client/data/BlockStateVariantMap + c An equivalence to the {@code Map}\npassed to the constructor of {@code ModelVariantMap}. + f Ljava/util/Map; field_22863 variants + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;)Lnet/minecraft/class_4926$class_4931; method_67873 operations + p 4 property5 + p 0 property1 + p 1 property2 + p 2 property3 + p 3 property4 + m ()V method_25792 validate + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;)Lnet/minecraft/class_4926$class_4928; method_67870 operations + p 0 property1 + p 1 property2 + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;)Lnet/minecraft/class_4926$class_4928; method_67865 models + p 0 property1 + p 1 property2 + m ()Ljava/util/Map; method_25782 getVariants + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;)Lnet/minecraft/class_4926$class_4930; method_67867 models + p 0 property1 + p 1 property2 + p 2 property3 + p 3 property4 + m (Lnet/minecraft/class_2769;)Lnet/minecraft/class_4926$class_4927; method_67869 operations + p 0 property + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_4934;)Ljava/util/stream/Stream; method_25788 method_25788 + p 1 propertiesMap + m (Lnet/minecraft/class_4934;)Z method_25789 method_25789 + p 1 propertiesMap + m ()Ljava/util/List; method_25791 getProperties + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;)Lnet/minecraft/class_4926$class_4929; method_67866 models + p 0 property1 + p 2 property3 + p 1 property2 + m (Lnet/minecraft/class_4934;Ljava/lang/Object;)V method_25790 register + p 1 properties + p 2 variant + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;)Lnet/minecraft/class_4926$class_4929; method_67871 operations + p 0 property1 + p 2 property3 + p 1 property2 + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;)Lnet/minecraft/class_4926$class_4930; method_67872 operations + p 2 property3 + p 3 property4 + p 0 property1 + p 1 property2 + m (Lnet/minecraft/class_2769;)Lnet/minecraft/class_4926$class_4927; method_67864 models + p 0 property + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;)Lnet/minecraft/class_4926$class_4931; method_67868 models + p 0 property1 + p 1 property2 + p 2 property3 + p 3 property4 + p 4 property5 +c net/minecraft/class_4926$class_4930 net/minecraft/client/data/BlockStateVariantMap$QuadrupleProperty + f Lnet/minecraft/class_2769; field_22870 first + f Lnet/minecraft/class_2769; field_22871 second + f Lnet/minecraft/class_2769; field_22872 third + f Lnet/minecraft/class_2769; field_22873 fourth + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Object;)Lnet/minecraft/class_4926$class_4930; method_25812 register + p 5 variant + p 4 fourthProperty + p 3 thirdProperty + p 2 secondProperty + p 1 firstProperty + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lcom/mojang/datafixers/util/Function4;Ljava/lang/Comparable;)V method_35888 method_35888 + p 5 fourthValue + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lcom/mojang/datafixers/util/Function4;Ljava/lang/Comparable;)V method_35889 method_35889 + p 4 thirdValue + m (Ljava/lang/Comparable;Lcom/mojang/datafixers/util/Function4;Ljava/lang/Comparable;)V method_35890 method_35890 + p 3 secondValue + m (Lcom/mojang/datafixers/util/Function4;)Lnet/minecraft/class_4926; method_35886 generate + p 1 variantFactory + m (Lcom/mojang/datafixers/util/Function4;Ljava/lang/Comparable;)V method_35892 method_35892 + p 2 firstValue + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;)V + p 1 first + p 2 second + p 3 third + p 4 fourth +c net/minecraft/class_4926$class_4931 net/minecraft/client/data/BlockStateVariantMap$QuintupleProperty + f Lnet/minecraft/class_2769; field_22876 third + f Lnet/minecraft/class_2769; field_22877 fourth + f Lnet/minecraft/class_2769; field_22878 fifth + f Lnet/minecraft/class_2769; field_22874 first + f Lnet/minecraft/class_2769; field_22875 second + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lcom/mojang/datafixers/util/Function5;Ljava/lang/Comparable;)V method_35899 method_35899 + p 6 fifthValue + m (Lcom/mojang/datafixers/util/Function5;Ljava/lang/Comparable;)V method_35904 method_35904 + p 2 firstValue + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lcom/mojang/datafixers/util/Function5;Ljava/lang/Comparable;)V method_35901 method_35901 + p 4 thirdValue + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lcom/mojang/datafixers/util/Function5;Ljava/lang/Comparable;)V method_35900 method_35900 + p 5 fourthValue + m (Lcom/mojang/datafixers/util/Function5;)Lnet/minecraft/class_4926; method_35897 generate + p 1 variantFactory + m (Ljava/lang/Comparable;Lcom/mojang/datafixers/util/Function5;Ljava/lang/Comparable;)V method_35902 method_35902 + p 3 secondValue + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Object;)Lnet/minecraft/class_4926$class_4931; method_25814 register + p 6 variant + p 5 fifthProperty + p 4 fourthProperty + p 3 thirdProperty + p 2 secondProperty + p 1 firstProperty + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;)V + p 2 second + p 3 third + p 4 fourth + p 5 fifth + p 1 first +c net/minecraft/class_4926$class_4927 net/minecraft/client/data/BlockStateVariantMap$SingleProperty + f Lnet/minecraft/class_2769; field_22864 property + m (Lnet/minecraft/class_2769;)V + p 1 property + m (Ljava/util/function/Function;)Lnet/minecraft/class_4926; method_25795 generate + p 1 variantFactory + m (Ljava/lang/Comparable;Ljava/lang/Object;)Lnet/minecraft/class_4926$class_4927; method_25794 register + p 1 property + p 2 variant + m (Ljava/util/function/Function;Ljava/lang/Comparable;)V method_25796 method_25796 + p 2 value +c net/minecraft/class_4926$class_4929 net/minecraft/client/data/BlockStateVariantMap$TripleProperty + f Lnet/minecraft/class_2769; field_22867 first + f Lnet/minecraft/class_2769; field_22868 second + f Lnet/minecraft/class_2769; field_22869 third + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;)V + p 3 third + p 2 second + p 1 first + m (Lcom/mojang/datafixers/util/Function3;Ljava/lang/Comparable;)V method_25808 method_25808 + p 2 firstValue + m (Ljava/lang/Comparable;Lcom/mojang/datafixers/util/Function3;Ljava/lang/Comparable;)V method_25809 method_25809 + p 3 secondValue + m (Lcom/mojang/datafixers/util/Function3;)Lnet/minecraft/class_4926; method_25805 generate + p 1 variantFactory + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Object;)Lnet/minecraft/class_4926$class_4929; method_25807 register + p 1 firstProperty + p 2 secondProperty + p 3 thirdProperty + p 4 variant + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lcom/mojang/datafixers/util/Function3;Ljava/lang/Comparable;)V method_25810 method_25810 + p 4 thirdValue +c net/minecraft/class_4926$class_4928 net/minecraft/client/data/BlockStateVariantMap$DoubleProperty + f Lnet/minecraft/class_2769; field_22865 first + f Lnet/minecraft/class_2769; field_22866 second + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_2769;)V + p 2 second + p 1 first + m (Ljava/lang/Comparable;Ljava/util/function/BiFunction;Ljava/lang/Comparable;)V method_25802 method_25802 + p 3 secondValue + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Object;)Lnet/minecraft/class_4926$class_4928; method_25798 register + p 2 secondProperty + p 3 variant + p 1 firstProperty + m (Ljava/util/function/BiFunction;Ljava/lang/Comparable;)V method_25804 method_25804 + p 2 firstValue + m (Ljava/util/function/BiFunction;)Lnet/minecraft/class_4926; method_25800 generate + p 1 variantFactory +c net/minecraft/class_4922 net/minecraft/client/data/MultipartBlockModelDefinitionCreator + f Lnet/minecraft/class_2248; field_22855 block + f Ljava/util/List; field_22856 multiparts + m (Lnet/minecraft/class_807;)Lnet/minecraft/class_4922; method_25764 with + p 1 part + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4922; method_25758 create + p 0 block + m (Lnet/minecraft/class_2248;)V + p 1 block + m (Lnet/minecraft/class_815;)V method_67851 validate + p 1 selector + m (Lnet/minecraft/class_815;Lnet/minecraft/class_807;)Lnet/minecraft/class_4922; method_25761 with + p 1 condition + p 2 part + m (Lnet/minecraft/class_10795;Lnet/minecraft/class_807;)Lnet/minecraft/class_4922; method_25762 with + p 1 conditionBuilder + p 2 part +c net/minecraft/class_4922$class_10887 net/minecraft/client/data/MultipartBlockModelDefinitionCreator$Part + f Ljava/util/Optional; comp_3811 condition + f Lnet/minecraft/class_807; comp_3812 variants + m ()Lnet/minecraft/class_819; method_68472 toComponent + m ()Lnet/minecraft/class_807; comp_3812 variants + m ()Ljava/util/Optional; comp_3811 condition + m (Ljava/util/Optional;Lnet/minecraft/class_807;)V + p 1 condition + p 2 variants +c net/minecraft/class_4925 net/minecraft/client/data/VariantsBlockModelDefinitionCreator + f Ljava/util/List; field_56798 variants + f Ljava/util/Set; field_22861 definedProperties + f Lnet/minecraft/class_2248; field_22859 block + m (Lnet/minecraft/class_4926;Lnet/minecraft/class_4925$class_10797;)Ljava/util/stream/Stream; method_67855 method_67855 + p 1 variant + m (Lnet/minecraft/class_10804;Lnet/minecraft/class_4925$class_10797;)Ljava/util/stream/Stream; method_67857 method_67857 + p 1 variant + m (Lnet/minecraft/class_10804;)Lnet/minecraft/class_4925; method_67856 apply + c Applies a model variant operator to this model definition creator.\n\n

A model variant operator transforms some of the variant settings based\non a defined set of properties in the block state, such as the model\nof the block state is determined by a coordinated map of power and\nmachine type property, and the y rotation determined by a facing\nproperty, etc.\n\n@return this model definition creator + p 1 operator + c the operator to apply to all variants + m (Lnet/minecraft/class_4926;)Lnet/minecraft/class_4925; method_25775 apply + c Applies a model variant operator map to this model definition creator.\n\n

A model variant operator transforms some of the variant settings based\non a defined set of properties in the block state, such as the model\nof the block state is determined by a coordinated map of power and\nmachine type property, and the y rotation determined by a facing\nproperty, etc.\n\n@return this model definition creator + p 1 operators + c the operators to apply based on block state properties + m (Ljava/util/Set;Lnet/minecraft/class_2248;Lnet/minecraft/class_4926;)Ljava/util/Set; method_67858 validateAndAddProperties + p 2 variantMap + p 0 definedProperties + p 1 block + m (Lnet/minecraft/class_2248;Ljava/util/List;Ljava/util/Set;)V + p 3 definedProperties + p 1 block + p 2 variants + m (Lnet/minecraft/class_2248;Ljava/util/Set;Lnet/minecraft/class_2769;)V method_67854 method_67854 + p 2 property + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;)Lnet/minecraft/class_4925; method_67853 of + p 0 block + p 1 model + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4925$class_10796; method_67852 of + p 0 block +c net/minecraft/class_4925$class_10797 net/minecraft/client/data/VariantsBlockModelDefinitionCreator$Entry + f Lnet/minecraft/class_4934; comp_3715 properties + f Lnet/minecraft/class_807; comp_3716 variant + m (Lnet/minecraft/class_4926;)Ljava/util/stream/Stream; method_67861 apply + p 1 operatorMap + m (Lnet/minecraft/class_10804;)Ljava/util/stream/Stream; method_67862 apply + p 1 operator + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_4925$class_10797; method_67863 method_67863 + p 1 variant + m ()Lnet/minecraft/class_807; comp_3716 variant + m ()Lnet/minecraft/class_4934; comp_3715 properties + m (Lnet/minecraft/class_4934;Lnet/minecraft/class_807;)V + p 1 properties + p 2 variant +c net/minecraft/class_4925$class_10796 net/minecraft/client/data/VariantsBlockModelDefinitionCreator$Empty + f Lnet/minecraft/class_2248; field_56799 block + m (Lnet/minecraft/class_4926;)Lnet/minecraft/class_4925; method_67859 with + p 1 variantMap + m (Lnet/minecraft/class_2248;)V + p 1 block +c net/minecraft/class_4941 net/minecraft/client/data/ModelIds + m (Lnet/minecraft/class_2248;Ljava/lang/String;)Lnet/minecraft/class_2960; method_25843 getBlockSubModelId + p 1 suffix + p 0 block + m (Lnet/minecraft/class_1792;Ljava/lang/String;)Lnet/minecraft/class_2960; method_25841 getItemSubModelId + p 0 item + p 1 suffix + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_2960; method_25842 getBlockModelId + p 0 block + m (Lnet/minecraft/class_1792;)Lnet/minecraft/class_2960; method_25840 getItemModelId + p 0 item + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_46196 method_46196 + p 1 path + m (Ljava/lang/String;)Lnet/minecraft/class_2960; method_25845 getMinecraftNamespacedItem + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/class_2960; method_25844 getMinecraftNamespacedBlock + p 0 name + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_46197 method_46197 + p 1 path +c net/minecraft/class_3610 net/minecraft/fluid/FluidState + f I field_31728 MAX_FLUID_LEVEL + f Lcom/mojang/serialization/Codec; field_25018 CODEC + f I field_31727 MAX_AMOUNT + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_243; method_15758 getVelocity + p 1 world + p 2 pos + m (Lnet/minecraft/class_6885;)Z method_40179 isIn + p 1 fluids + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_238; method_66789 getCollisionBox + p 2 pos + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;Lnet/minecraft/class_10774;)V method_67695 onEntityCollision + p 4 handler + p 3 entity + p 2 pos + p 1 world + m ()F method_15760 getBlastResistance + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3611;Lnet/minecraft/class_2350;)Z method_15764 canBeReplacedWith + p 1 world + p 2 pos + p 3 fluid + p 4 direction + m (Lnet/minecraft/class_3611;)Z method_33659 isEqualAndStill + p 1 fluid + m ()Ljava/util/stream/Stream; method_40181 streamTags + m (Lnet/minecraft/class_3611;)Z method_39360 isOf + p 1 fluid + m ()F method_20785 getHeight + m ()Z method_15771 isStill + m ()Z method_15773 hasRandomTicks + m (Lnet/minecraft/class_3611;Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap;Lcom/mojang/serialization/MapCodec;)V + p 3 codec + p 2 propertyMap + p 1 fluid + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_15756 canFlowTo + p 1 world + p 2 pos + m ()Lnet/minecraft/class_6880; method_40180 getRegistryEntry + m (Lnet/minecraft/class_6862;)Z method_15767 isIn + p 1 tag + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_15770 onScheduledTick + p 1 world + p 2 pos + p 3 state + m ()Lnet/minecraft/class_3611; method_15772 getFluid + m ()I method_15761 getLevel + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)F method_15763 getHeight + p 1 world + p 2 pos + m ()Z method_15769 isEmpty + m ()Lnet/minecraft/class_2394; method_15766 getParticle + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_15757 onRandomTick + p 3 random + p 2 pos + p 1 world + m ()Lnet/minecraft/class_2680; method_15759 getBlockState + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_15768 randomDisplayTick + p 1 world + p 2 pos + p 3 random + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265; method_17776 getShape + p 1 world + p 2 pos +c net/minecraft/class_4940 net/minecraft/client/data/SimpleModelSupplier + f Lnet/minecraft/class_2960; field_22900 parent + m ()Lcom/google/gson/JsonElement; method_25839 get + m (Lnet/minecraft/class_2960;)V + p 1 parent +c net/minecraft/class_3611 net/minecraft/fluid/Fluid + f Lnet/minecraft/class_6880$class_6883; field_36431 registryEntry + f Lnet/minecraft/class_2689; field_15905 stateManager + f Lnet/minecraft/class_3610; field_15903 defaultState + f Lnet/minecraft/class_2361; field_15904 STATE_IDS + m (Lnet/minecraft/class_3610;)V method_15781 setDefaultState + p 1 state + m ()Lnet/minecraft/class_1792; method_15774 getBucketItem + m (Lnet/minecraft/class_2689$class_2690;)V method_15775 appendProperties + p 1 builder + m (Lnet/minecraft/class_6862;)Z method_15791 isIn + p 1 tag + m ()F method_15784 getBlastResistance + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3610;)Lnet/minecraft/class_243; method_15782 getVelocity + p 1 world + p 2 pos + p 3 state + m (Lnet/minecraft/class_3610;)Z method_15793 isStill + p 1 state + m (Lnet/minecraft/class_3610;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)F method_15788 getHeight + p 1 state + p 2 world + p 3 pos + m ()Z method_15795 hasRandomTicks + m ()Lnet/minecraft/class_2689; method_15783 getStateManager + m (Lnet/minecraft/class_4538;)I method_15789 getTickRate + p 1 world + m ()Ljava/util/Optional; method_32359 getBucketFillSound + c Returns the sound played when filling a bucket with this fluid. + m ()Lnet/minecraft/class_3610; method_15785 getDefaultState + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;Lnet/minecraft/class_10774;)V method_67694 onEntityCollision + p 1 world + p 2 pos + p 3 entity + p 4 handler + m (Lnet/minecraft/class_3610;)I method_15779 getLevel + p 1 state + m (Lnet/minecraft/class_3611;)Z method_15780 matchesType + p 1 fluid + m (Lnet/minecraft/class_3610;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_238; method_66788 getCollisionBox + p 3 pos + p 2 world + p 1 state + m ()Lnet/minecraft/class_2394; method_15787 getParticle + m ()Z method_15794 isEmpty + m (Lnet/minecraft/class_3610;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265; method_17775 getShape + p 1 state + p 2 world + p 3 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_3610;Lnet/minecraft/class_5819;)V method_15776 randomDisplayTick + p 2 pos + p 1 world + p 4 random + p 3 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3610;)V method_15778 onScheduledTick + p 2 pos + p 3 blockState + p 4 fluidState + p 1 world + m (Lnet/minecraft/class_3610;)Lnet/minecraft/class_2680; method_15790 toBlockState + p 1 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_3610;Lnet/minecraft/class_5819;)V method_15792 onRandomTick + p 3 state + p 4 random + p 1 world + p 2 pos + m ()Lnet/minecraft/class_6880$class_6883; method_40178 getRegistryEntry + m (Lnet/minecraft/class_3610;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3611;Lnet/minecraft/class_2350;)Z method_15777 canBeReplacedWith + p 1 state + p 3 pos + p 2 world + p 5 direction + p 4 fluid + m (Lnet/minecraft/class_3610;)F method_20784 getHeight + p 1 state +c net/minecraft/class_4943 net/minecraft/client/data/Models + f Lnet/minecraft/class_4942; field_22908 PARTICLE + f [Lnet/minecraft/class_4942; field_22958 STEM_GROWTH_STAGES + f Lnet/minecraft/class_4942; field_42233 GENERATED_THREE_LAYERS + f Lnet/minecraft/class_4942; field_42232 GENERATED_TWO_LAYERS + f Lnet/minecraft/class_4942; field_43408 TEMPLATE_POTTED_FLOWERING_AZALEA_BUSH + f Lnet/minecraft/class_4942; field_22995 TEMPLATE_FENCE_GATE + f Lnet/minecraft/class_4942; field_22996 TEMPLATE_FENCE_GATE_OPEN + f Lnet/minecraft/class_4942; field_22994 WALL_INVENTORY + f Lnet/minecraft/class_4942; field_63503 SPEAR_IN_HAND + f Lnet/minecraft/class_4942; field_22988 FENCE_POST + f Lnet/minecraft/class_4942; field_22989 FENCE_SIDE + f Lnet/minecraft/class_4942; field_22983 BUTTON_INVENTORY + f Lnet/minecraft/class_4942; field_22982 BUTTON_PRESSED + f Lnet/minecraft/class_4942; field_44581 TEMPLATE_MUSIC_DISC + f Lnet/minecraft/class_4942; field_43384 SNIFFER_EGG + f Lnet/minecraft/class_4942; field_22991 TEMPLATE_WALL_POST + f Lnet/minecraft/class_4942; field_22990 FENCE_INVENTORY + f Lnet/minecraft/class_4942; field_22993 TEMPLATE_WALL_SIDE_TALL + f Lnet/minecraft/class_4942; field_22992 TEMPLATE_WALL_SIDE + f Lnet/minecraft/class_4942; field_29081 CUBE_COLUMN_MIRRORED + f Lnet/minecraft/class_4942; field_23957 TEMPLATE_CAMPFIRE + f Lnet/minecraft/class_4942; field_40628 TEMPLATE_CUSTOM_FENCE_GATE_WALL_OPEN + f Lnet/minecraft/class_4942; field_40627 TEMPLATE_CUSTOM_FENCE_GATE_WALL + f Lnet/minecraft/class_4942; field_40626 TEMPLATE_CUSTOM_FENCE_GATE_OPEN + f Lnet/minecraft/class_4942; field_40625 TEMPLATE_CUSTOM_FENCE_GATE + f Lnet/minecraft/class_4942; field_40624 CUSTOM_FENCE_INVENTORY + f Lnet/minecraft/class_4942; field_27789 TEMPLATE_CAKE_WITH_CANDLE + f Lnet/minecraft/class_4942; field_40623 CUSTOM_FENCE_SIDE_WEST + f Lnet/minecraft/class_4942; field_27788 TEMPLATE_FOUR_CANDLES + f Lnet/minecraft/class_4942; field_40622 CUSTOM_FENCE_SIDE_SOUTH + f Lnet/minecraft/class_4942; field_27787 TEMPLATE_THREE_CANDLES + f Lnet/minecraft/class_4942; field_40621 CUSTOM_FENCE_SIDE_EAST + f Lnet/minecraft/class_4942; field_27786 TEMPLATE_TWO_CANDLES + f Lnet/minecraft/class_4942; field_27785 TEMPLATE_CANDLE + f Lnet/minecraft/class_4942; field_27784 TEMPLATE_CAULDRON_FULL + f Lnet/minecraft/class_4942; field_54395 TEMPLATE_TORCH_WALL_UNLIT + f Lnet/minecraft/class_4942; field_54394 TEMPLATE_TORCH_UNLIT + f Lnet/minecraft/class_4942; field_40631 CUSTOM_FENCE_SIDE_NORTH + f Lnet/minecraft/class_4942; field_59814 DRIED_GHAST + f Lnet/minecraft/class_4942; field_40630 CUSTOM_FENCE_POST + f Lnet/minecraft/class_4942; field_53719 TEMPLATE_REDSTONE_TORCH + f Lnet/minecraft/class_4942; field_55256 CROSSBOW + f Lnet/minecraft/class_4942; field_55255 BOW + f Lnet/minecraft/class_4942; field_55254 TEMPLATE_BUNDLE_OPEN_BACK + f Lnet/minecraft/class_4942; field_55253 TEMPLATE_BUNDLE_OPEN_FRONT + f Lnet/minecraft/class_4942; field_55252 TEMPLATE_CHEST + f Lnet/minecraft/class_4942; field_38469 TEMPLATE_SCULK_SHRIEKER + f Lnet/minecraft/class_4942; field_41276 CUBE_COLUMN_UV_LOCKED_X + f Lnet/minecraft/class_4942; field_22912 STAIRS + f Lnet/minecraft/class_4942; field_22911 LEAVES + f Lnet/minecraft/class_4942; field_22914 OUTER_STAIRS + f Lnet/minecraft/class_4942; field_22913 INNER_STAIRS + f Lnet/minecraft/class_4942; field_22910 SLAB_TOP + f Lnet/minecraft/class_4942; field_22919 TEMPLATE_ORIENTABLE_TRAPDOOR_BOTTOM + f Lnet/minecraft/class_4942; field_22916 TEMPLATE_TRAPDOOR_BOTTOM + f Lnet/minecraft/class_4942; field_22915 TEMPLATE_TRAPDOOR_TOP + f Lnet/minecraft/class_4942; field_22918 TEMPLATE_ORIENTABLE_TRAPDOOR_TOP + f Lnet/minecraft/class_4942; field_22917 TEMPLATE_TRAPDOOR_OPEN + f Lnet/minecraft/class_4942; field_22907 PRESSURE_PLATE_DOWN + f Lnet/minecraft/class_4942; field_22909 SLAB + f Lnet/minecraft/class_4942; field_22904 TEMPLATE_FENCE_GATE_WALL + f Lnet/minecraft/class_4942; field_22906 PRESSURE_PLATE_UP + f Lnet/minecraft/class_4942; field_22905 TEMPLATE_FENCE_GATE_WALL_OPEN + f Lnet/minecraft/class_4942; field_61526 TEMPLATE_SHELF_CENTER + f Lnet/minecraft/class_4942; field_61525 TEMPLATE_SHELF_LEFT + f Lnet/minecraft/class_4942; field_22930 TEMPLATE_PISTON_HEAD + f Lnet/minecraft/class_4942; field_61524 TEMPLATE_SHELF_UNCONNECTED + f Lnet/minecraft/class_4942; field_61523 TEMPLATE_SHELF_UNPOWERED + f Lnet/minecraft/class_4942; field_61528 TEMPLATE_LIGHTNING_ROD + f Lnet/minecraft/class_4942; field_61527 TEMPLATE_SHELF_RIGHT + f Lnet/minecraft/class_4942; field_22936 TEMPLATE_FOUR_TURTLE_EGGS + f Lnet/minecraft/class_4942; field_22935 TEMPLATE_THREE_TURTLE_EGGS + f Lnet/minecraft/class_4942; field_22938 GENERATED + f Lnet/minecraft/class_4942; field_22937 TEMPLATE_SINGLE_FACE + f Lnet/minecraft/class_4942; field_61522 TEMPLATE_SHELF_INVENTORY + f Lnet/minecraft/class_4942; field_22932 TEMPLATE_SEAGRASS + f Lnet/minecraft/class_4942; field_61521 TEMPLATE_SHELF_BODY + f Lnet/minecraft/class_4942; field_22931 TEMPLATE_PISTON_HEAD_SHORT + f Lnet/minecraft/class_4942; field_22934 TEMPLATE_TWO_TURTLE_EGGS + f Lnet/minecraft/class_4942; field_22933 TEMPLATE_TURTLE_EGG + f Lnet/minecraft/class_4942; field_22939 HANDHELD + f Lnet/minecraft/class_4942; field_22924 TINTED_FLOWER_POT_CROSS + f Lnet/minecraft/class_4942; field_22923 FLOWER_POT_CROSS + f Lnet/minecraft/class_4942; field_22926 RAIL_CURVED + f Lnet/minecraft/class_4942; field_22925 RAIL_FLAT + f Lnet/minecraft/class_4942; field_22920 TEMPLATE_ORIENTABLE_TRAPDOOR_OPEN + f Lnet/minecraft/class_4942; field_22922 TINTED_CROSS + f Lnet/minecraft/class_4942; field_22921 CROSS + f Lnet/minecraft/class_4942; field_22928 TEMPLATE_RAIL_RAISED_SW + f Lnet/minecraft/class_4942; field_33965 TEMPLATE_POTTED_AZALEA_BUSH + f Lnet/minecraft/class_4942; field_22927 TEMPLATE_RAIL_RAISED_NE + f Lnet/minecraft/class_4942; field_22929 CARPET + f Lnet/minecraft/class_4942; field_41278 CUBE_COLUMN_UV_LOCKED_Z + f Lnet/minecraft/class_4942; field_41277 CUBE_COLUMN_UV_LOCKED_Y + f Lnet/minecraft/class_4942; field_22951 TEMPLATE_GLASS_PANE_NOSIDE + f Lnet/minecraft/class_4942; field_22952 TEMPLATE_GLASS_PANE_NOSIDE_ALT + f Lnet/minecraft/class_4942; field_22950 TEMPLATE_DAYLIGHT_DETECTOR + f Lnet/minecraft/class_4942; field_22954 TEMPLATE_GLASS_PANE_SIDE + f Lnet/minecraft/class_4942; field_22953 TEMPLATE_GLASS_PANE_POST + f Lnet/minecraft/class_4942; field_22959 STEM_FRUIT + f Lnet/minecraft/class_4942; field_28080 POINTED_DRIPSTONE + f Lnet/minecraft/class_4942; field_22956 TEMPLATE_COMMAND_BLOCK + f Lnet/minecraft/class_4942; field_22955 TEMPLATE_GLASS_PANE_SIDE_ALT + f Lnet/minecraft/class_4942; field_22957 TEMPLATE_ANVIL + f Lnet/minecraft/class_4942; field_22942 CUBE + f Lnet/minecraft/class_4942; field_22940 HANDHELD_ROD + f Lnet/minecraft/class_4942; field_22941 TEMPLATE_SHULKER_BOX + f Lnet/minecraft/class_4942; field_22948 TEMPLATE_GLAZED_TERRACOTTA + f Lnet/minecraft/class_4942; field_22947 CORAL_WALL_FAN + f Lnet/minecraft/class_4942; field_22949 TEMPLATE_CHORUS_FLOWER + f Lnet/minecraft/class_4942; field_22943 TEMPLATE_BED + f Lnet/minecraft/class_4942; field_22946 CORAL_FAN + f Lnet/minecraft/class_4942; field_22976 CUBE_TOP + f Lnet/minecraft/class_4942; field_22975 CUBE_COLUMN_HORIZONTAL + f Lnet/minecraft/class_4942; field_22978 ORIENTABLE + f Lnet/minecraft/class_4942; field_22977 CUBE_BOTTOM_TOP + f Lnet/minecraft/class_4942; field_22971 TEMPLATE_PISTON + f Lnet/minecraft/class_4942; field_22970 TEMPLATE_TORCH_WALL + f Lnet/minecraft/class_4942; field_22973 CUBE_MIRRORED_ALL + f Lnet/minecraft/class_4942; field_22974 CUBE_COLUMN + f Lnet/minecraft/class_4942; field_22972 CUBE_ALL + f Lnet/minecraft/class_4942; field_22979 ORIENTABLE_WITH_BOTTOM + f Lnet/minecraft/class_4942; field_22981 BUTTON + f Lnet/minecraft/class_4942; field_22980 ORIENTABLE_VERTICAL + f Lnet/minecraft/class_4942; field_22964 TEMPLATE_FIRE_SIDE_ALT + f Lnet/minecraft/class_4942; field_22962 TEMPLATE_FIRE_FLOOR + f Lnet/minecraft/class_4942; field_22963 TEMPLATE_FIRE_SIDE + f Lnet/minecraft/class_4942; field_22966 TEMPLATE_FIRE_UP_ALT + f Lnet/minecraft/class_4942; field_22965 TEMPLATE_FIRE_UP + f Lnet/minecraft/class_4942; field_22961 TEMPLATE_FARMLAND + f Lnet/minecraft/class_4942; field_22960 CROP + f Lnet/minecraft/class_4942; field_22968 TEMPLATE_HANGING_LANTERN + f Lnet/minecraft/class_4942; field_22967 TEMPLATE_LANTERN + f Lnet/minecraft/class_4942; field_22969 TEMPLATE_TORCH + f Lnet/minecraft/class_4942; field_28804 TEMPLATE_AZALEA + f Lnet/minecraft/class_4942; field_54878 MOSSY_CARPET_SIDE + f Lnet/minecraft/class_4942; field_55855 TEMPLATE_LEAF_LITTER_4 + f Lnet/minecraft/class_4942; field_55854 TEMPLATE_LEAF_LITTER_3 + f Lnet/minecraft/class_4942; field_55852 TEMPLATE_LEAF_LITTER_1 + f Lnet/minecraft/class_4942; field_55853 TEMPLATE_LEAF_LITTER_2 + f Lnet/minecraft/class_4942; field_28015 TEMPLATE_CAULDRON_LEVEL2 + f Lnet/minecraft/class_4942; field_28014 TEMPLATE_CAULDRON_LEVEL1 + f Lnet/minecraft/class_4942; field_55181 FLOWER_POT_CROSS_EMISSIVE + f Lnet/minecraft/class_4942; field_55180 CROSS_EMISSIVE + f Lnet/minecraft/class_4942; field_53720 TEMPLATE_REDSTONE_TORCH_WALL + f Lnet/minecraft/class_4942; field_42947 FLOWERBED_1 + f Lnet/minecraft/class_4942; field_42948 FLOWERBED_2 + f Lnet/minecraft/class_4942; field_42949 FLOWERBED_3 + f Lnet/minecraft/class_4942; field_42950 FLOWERBED_4 + f Lnet/minecraft/class_4942; field_38021 DOOR_TOP_LEFT_OPEN + f Lnet/minecraft/class_4942; field_38020 DOOR_TOP_LEFT + f Lnet/minecraft/class_4942; field_38023 DOOR_TOP_RIGHT_OPEN + f Lnet/minecraft/class_4942; field_38022 DOOR_TOP_RIGHT + f Lnet/minecraft/class_4942; field_38017 DOOR_BOTTOM_LEFT_OPEN + f Lnet/minecraft/class_4942; field_38016 DOOR_BOTTOM_LEFT + f Lnet/minecraft/class_4942; field_38019 DOOR_BOTTOM_RIGHT_OPEN + f Lnet/minecraft/class_4942; field_38018 DOOR_BOTTOM_RIGHT + f Lnet/minecraft/class_4942; field_41532 TEMPLATE_CHISELED_BOOKSHELF_SLOT_BOTTOM_RIGHT + f Lnet/minecraft/class_4942; field_41531 TEMPLATE_CHISELED_BOOKSHELF_SLOT_BOTTOM_MID + f Lnet/minecraft/class_4942; field_41530 TEMPLATE_CHISELED_BOOKSHELF_SLOT_BOTTOM_LEFT + f Lnet/minecraft/class_4942; field_38015 CUBE_NORTH_WEST_MIRRORED_ALL + f Lnet/minecraft/class_4942; field_49915 HANDHELD_MACE + f Lnet/minecraft/class_4942; field_41529 TEMPLATE_CHISELED_BOOKSHELF_SLOT_TOP_RIGHT + f Lnet/minecraft/class_4942; field_41528 TEMPLATE_CHISELED_BOOKSHELF_SLOT_TOP_MID + f Lnet/minecraft/class_4942; field_41527 TEMPLATE_CHISELED_BOOKSHELF_SLOT_TOP_LEFT + f Lnet/minecraft/class_4942; field_48980 TEMPLATE_VAULT + f Lnet/minecraft/class_4942; field_23400 CUBE_DIRECTIONAL + f Lnet/minecraft/class_4942; field_61918 TEMPLATE_BARS_CAP + f Lnet/minecraft/class_4942; field_61917 TEMPLATE_CHAIN + f Lnet/minecraft/class_4942; field_61919 TEMPLATE_BARS_CAP_ALT + f Lnet/minecraft/class_4942; field_61922 TEMPLATE_BARS_SIDE + f Lnet/minecraft/class_4942; field_61921 TEMPLATE_BARS_POST_ENDS + f Lnet/minecraft/class_4942; field_61920 TEMPLATE_BARS_POST + f Lnet/minecraft/class_4942; field_47500 CUBE_ALL_INNER_FACES + f Lnet/minecraft/class_4942; field_47501 CUBE_BOTTOM_TOP_INNER_FACES + f Lnet/minecraft/class_4942; field_61923 TEMPLATE_BARS_SIDE_ALT + m ([Lnet/minecraft/class_4945;)Lnet/minecraft/class_4942; method_25857 make + p 0 requiredTextureKeys + m (Ljava/lang/String;[Lnet/minecraft/class_4945;)Lnet/minecraft/class_4942; method_25856 block + p 0 parent + p 1 requiredTextureKeys + m (Ljava/lang/String;Ljava/lang/String;[Lnet/minecraft/class_4945;)Lnet/minecraft/class_4942; method_65504 openBundle + p 1 variant + p 2 requiredTextureKeys + p 0 parent + m (Ljava/lang/String;Ljava/lang/String;[Lnet/minecraft/class_4945;)Lnet/minecraft/class_4942; method_25855 block + p 2 requiredTextureKeys + p 0 parent + p 1 variant + m (Ljava/lang/String;[Lnet/minecraft/class_4945;)Lnet/minecraft/class_4942; method_25859 item + p 0 parent + p 1 requiredTextureKeys + m (I)Lnet/minecraft/class_4942; method_25858 method_25858 + p 0 stage +c net/minecraft/class_3612 net/minecraft/fluid/Fluids + f Lnet/minecraft/class_3609; field_15909 FLOWING_WATER + f Lnet/minecraft/class_3609; field_15907 FLOWING_LAVA + f Lnet/minecraft/class_3609; field_15908 LAVA + f Lnet/minecraft/class_3609; field_15910 WATER + f Lnet/minecraft/class_3611; field_15906 EMPTY + m (Ljava/lang/String;Lnet/minecraft/class_3611;)Lnet/minecraft/class_3611; method_15796 register + p 1 value + p 0 id +c net/minecraft/class_4942 net/minecraft/client/data/Model + f Ljava/util/Set; field_22902 requiredTextures + f Ljava/util/Optional; field_22903 variant + f Ljava/util/Optional; field_22901 parent + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_4944;Ljava/util/function/BiConsumer;)Lnet/minecraft/class_2960; method_48525 upload + p 2 textures + p 3 modelCollector + p 1 item + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_4944;Ljava/util/function/BiConsumer;)Lnet/minecraft/class_2960; method_25852 upload + p 3 modelCollector + p 2 textures + p 1 id + m (Ljava/util/Optional;Ljava/util/Optional;[Lnet/minecraft/class_4945;)V + p 2 variant + p 1 parent + p 3 requiredTextureKeys + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4944;Ljava/util/function/BiConsumer;)Lnet/minecraft/class_2960; method_25846 upload + p 3 modelCollector + p 2 textures + p 1 block + m (Lnet/minecraft/class_2248;Ljava/lang/String;Lnet/minecraft/class_4944;Ljava/util/function/BiConsumer;)Lnet/minecraft/class_2960; method_25853 uploadWithoutVariant + p 2 suffix + p 3 textures + p 1 block + p 4 modelCollector + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_2960; method_54828 getBlockSubModelId + p 1 block + m (Lnet/minecraft/class_4944;)Ljava/util/Map; method_25850 createTextureMap + p 1 textures + m (Lnet/minecraft/class_2248;Ljava/lang/String;Lnet/minecraft/class_4944;Ljava/util/function/BiConsumer;)Lnet/minecraft/class_2960; method_25847 upload + p 1 block + p 2 suffix + p 3 textures + p 4 modelCollector +c net/minecraft/class_3606 net/minecraft/datafixer/fix/HangingEntityFix + f [[I field_15897 OFFSETS + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15722 method_15722 + p 1 itemFrameTyped + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15720 method_15720 + p 1 paintingTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15721 method_15721 + p 1 paintingDynamic + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15717 method_15717 + p 3 entityTyped + m (Lcom/mojang/serialization/Dynamic;ZZ)Lcom/mojang/serialization/Dynamic; method_15719 fixDecorationPosition + p 2 isPainting + p 1 entityDynamic + p 3 isItemFrame + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15718 method_15718 + p 1 itemFrameDynamic + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15716 method_15716 + p 3 entityTyped +c net/minecraft/class_3607 net/minecraft/datafixer/fix/EntityPaintingMotiveFix + f Ljava/util/Map; field_15898 RENAMED_MOTIVES + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15723 renameMotive + p 1 painting + m (Ljava/util/HashMap;)V method_15724 method_15724 + p 0 map +c net/minecraft/class_3608 net/minecraft/datafixer/fix/EntityPufferfishRenameFix + f Ljava/util/Map; field_15899 RENAMED_FISH +c net/minecraft/class_3609 net/minecraft/fluid/FlowableFluid + c Represents a fluid which can flow. + f Ljava/util/Map; field_17587 shapeCache + f I field_31726 CACHE_SIZE + f Lnet/minecraft/class_2758; field_15900 LEVEL + f Lnet/minecraft/class_2746; field_15902 FALLING + m (Lnet/minecraft/class_3610;)Z method_15748 isEmptyOrThis + p 1 state + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)I method_15740 countNeighboringSources + p 2 pos + p 1 world + m (Lnet/minecraft/class_3610;)Z method_15752 isMatchingAndStill + p 1 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3610;)Z method_61813 canFlowThrough + p 5 fromPos + p 4 face + p 3 state + p 2 pos + p 7 fluidState + p 6 fromState + p 1 world + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_15732 receivesFlow + p 1 world + p 2 pos + p 0 face + p 5 fromState + p 3 state + p 4 fromPos + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;ILnet/minecraft/class_2350;Lnet/minecraft/class_2680;Lnet/minecraft/class_3609$class_9900;)I method_15742 getMinFlowDownDistance + c Finds the distance to the closest hole the fluid can flow down into starting with the direction specified. + p 4 direction + p 2 pos + p 1 world + p 6 spreadCache + p 5 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Ljava/util/Map; method_15726 getSpread + p 1 world + p 2 pos + p 3 state + m ()Lnet/minecraft/class_3611; method_15751 getStill + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_3610;Lnet/minecraft/class_3610;)I method_15753 getNextTickDelay + p 1 world + p 2 pos + p 3 oldState + p 4 newState + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_3610; method_15727 getUpdatedState + p 2 pos + p 1 world + p 3 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_3611;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3610;)Z method_15746 canFlowThrough + p 6 fromPos + p 5 face + p 8 fluidState + p 7 fromState + p 2 fluid + p 1 world + p 4 state + p 3 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_15730 beforeBreakingBlock + p 2 pos + p 3 state + p 1 world + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_15749 isFlowBlocked + p 1 world + p 2 pos + p 3 direction + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_3610;Lnet/minecraft/class_2680;)V method_15744 flowToSides + p 3 fluidState + p 2 pos + p 1 world + p 4 blockState + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_15736 canFlowDownTo + p 2 pos + p 1 world + p 4 fromPos + p 3 state + p 5 fromState + m (Lnet/minecraft/class_3218;)Z method_15737 isInfinite + p 1 world + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3610;)Lnet/minecraft/class_265; method_17773 method_17773 + p 2 state2 + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3611;)Z method_15754 canFill + p 1 pos + p 0 world + p 3 fluid + p 2 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;Lnet/minecraft/class_3610;)V method_15745 flow + p 5 fluidState + p 4 direction + p 3 state + p 2 pos + p 1 world + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3611;)Z method_61815 canFillWithFluid + p 0 world + p 2 state + p 1 pos + p 3 fluid + m (IZ)Lnet/minecraft/class_3610; method_15728 getFlowing + p 1 level + p 2 falling + m (Lnet/minecraft/class_4538;)I method_15733 getMaxFlowDistance + c {@return the maximum horizontal distance to check for holes the fluid can flow down into} + p 1 world + m (Lnet/minecraft/class_3610;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_17774 isFluidAboveEqual + p 2 pos + p 1 world + p 0 state + m (Lnet/minecraft/class_4538;)I method_15739 getLevelDecreasePerBlock + p 1 world + m (Z)Lnet/minecraft/class_3610; method_15729 getStill + p 1 falling + m (Lnet/minecraft/class_3610;)I method_15741 getBlockStateLevel + p 0 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3610;)V method_15725 tryFlow + p 4 fluidState + p 3 blockState + p 2 fluidPos + p 1 world + m ()Lnet/minecraft/class_3611; method_15750 getFlowing + m (Lnet/minecraft/class_2680;)Z method_61814 canFill + p 0 state +c net/minecraft/class_3609$class_9900 net/minecraft/fluid/FlowableFluid$SpreadCache + f Lnet/minecraft/class_2338; field_52661 startPos + f Lnet/minecraft/class_1922; field_52660 world + f Lit/unimi/dsi/fastutil/shorts/Short2ObjectMap; field_52662 stateCache + f Lit/unimi/dsi/fastutil/shorts/Short2BooleanMap; field_52663 flowDownCache + m (Lnet/minecraft/class_2338;S)Lnet/minecraft/class_2680; method_61821 method_61821 + p 2 packedPos + m (Lnet/minecraft/class_2338;S)Z method_61819 method_61819 + p 2 packed + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_61816 getBlockState + p 1 pos + m (Lnet/minecraft/class_2338;)S method_61820 pack + p 1 pos + m (Lnet/minecraft/class_2338;S)Lnet/minecraft/class_2680; method_61817 getBlockState + p 1 pos + p 2 packed + m (Lnet/minecraft/class_3609;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)V + p 2 world + p 3 startPos + m (Lnet/minecraft/class_2338;)Z method_61818 canFlowDownTo + p 1 pos +c net/minecraft/class_3609$class_2249 net/minecraft/fluid/FlowableFluid$NeighborGroup + f Lnet/minecraft/class_2680; comp_3130 self + f Lnet/minecraft/class_2680; comp_3131 other + f Lnet/minecraft/class_2350; comp_3132 facing + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_2680; comp_3130 self + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)V + p 3 facing + p 1 self + p 2 other + m ()Lnet/minecraft/class_2680; comp_3131 other + m ()Lnet/minecraft/class_2350; comp_3132 facing +c net/minecraft/class_3602 net/minecraft/datafixer/fix/EntityHorseSplitFix +c net/minecraft/class_4934 net/minecraft/client/data/PropertiesMap + c Represents a set of property to value pairs, used as conditions for model\napplication.\n\n

This object is immutable. + f Lnet/minecraft/class_4934; field_22881 EMPTY + f Ljava/util/List; comp_3717 values + f Ljava/util/Comparator; field_22882 COMPARATOR + m (Ljava/util/List;)V + p 1 values + m ()Ljava/util/List; comp_3717 values + m ([Lnet/minecraft/class_2769$class_4933;)Lnet/minecraft/class_4934; method_25821 withValues + p 0 values + m ()Ljava/lang/String; method_25822 asString + m (Lnet/minecraft/class_2769$class_4933;)Ljava/lang/String; method_25823 method_25823 + p 0 value + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_2769$class_4933;)Lnet/minecraft/class_4934; method_25819 withValue + p 1 value + m (Lnet/minecraft/class_4934;)Lnet/minecraft/class_4934; method_25820 copyOf + p 1 propertiesMap +c net/minecraft/class_3603 net/minecraft/datafixer/fix/EntityIdFix + f Ljava/util/Map; field_15895 RENAMED_ENTITIES + m (Ljava/util/HashMap;)V method_15708 method_15708 + p 0 map +c net/minecraft/class_3604 net/minecraft/datafixer/fix/EntityItemFrameDirectionFix + m (B)B method_15712 updateDirection + p 0 oldDirection + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15711 fixDirection + p 1 itemFrameDynamic +c net/minecraft/class_3605 net/minecraft/datafixer/fix/EntityMinecartIdentifiersFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59879 method_59879 + p 0 entityDynamic +c net/minecraft/class_7189 net/minecraft/unused/packageinfo/PackageInfo7189 +c net/minecraft/class_7187 net/minecraft/client/render/entity/animation/AnimationHelper + m (FFF)Lorg/joml/Vector3f; method_41823 createTranslationalVector + p 0 x + p 1 y + p 2 z + m (DDD)Lorg/joml/Vector3f; method_41822 createScalingVector + p 0 x + p 2 y + p 4 z + m (FFF)Lorg/joml/Vector3f; method_41829 createRotationalVector + p 1 y + p 2 z + p 0 x +c net/minecraft/class_7188 net/minecraft/client/render/entity/animation/FrogAnimations + f Lnet/minecraft/class_7184; field_37897 IDLING_IN_WATER + f Lnet/minecraft/class_7184; field_37895 USING_TONGUE + f Lnet/minecraft/class_7184; field_37896 SWIMMING + f Lnet/minecraft/class_7184; field_37893 WALKING + f Lnet/minecraft/class_7184; field_37894 LONG_JUMPING + f Lnet/minecraft/class_7184; field_37892 CROAKING +c net/minecraft/class_7186 net/minecraft/client/render/entity/animation/Keyframe + f Lnet/minecraft/class_7179$class_7180; comp_602 interpolation + f Lorg/joml/Vector3fc; comp_4453 preTarget + f Lorg/joml/Vector3fc; comp_4454 postTarget + f F comp_600 timestamp + m ()Lorg/joml/Vector3fc; comp_4454 postTarget + m ()Lorg/joml/Vector3fc; comp_4453 preTarget + m ()F comp_600 timestamp + m ()Lnet/minecraft/class_7179$class_7180; comp_602 interpolation + m (FLorg/joml/Vector3fc;Lorg/joml/Vector3fc;Lnet/minecraft/class_7179$class_7180;)V + p 1 timestamp + p 2 preTarget + p 3 postTarget + p 4 interpolation +c net/minecraft/class_7184 net/minecraft/client/render/entity/animation/AnimationDefinition + f F comp_597 lengthInSeconds + f Z comp_598 looping + f Ljava/util/Map; comp_599 boneAnimations + m (Lnet/minecraft/class_630;)Lnet/minecraft/class_11509; method_71979 createAnimation + p 1 root + m ()Ljava/util/Map; comp_599 boneAnimations + m ()F comp_597 lengthInSeconds + m ()Z comp_598 looping + m (FZLjava/util/Map;)V + p 1 lengthInSeconds + p 2 looping + p 3 boneAnimations +c net/minecraft/class_7184$class_7185 net/minecraft/client/render/entity/animation/AnimationDefinition$Builder + f F field_37889 lengthInSeconds + f Z field_37891 looping + f Ljava/util/Map; field_37890 transformations + m (F)Lnet/minecraft/class_7184$class_7185; method_41818 create + p 0 lengthInSeconds + m (Ljava/lang/String;)Ljava/util/List; method_41819 method_41819 + p 0 name + m ()Lnet/minecraft/class_7184; method_41821 build + m ()Lnet/minecraft/class_7184$class_7185; method_41817 looping + m (F)V + p 1 lengthInSeconds + m (Ljava/lang/String;Lnet/minecraft/class_7179;)Lnet/minecraft/class_7184$class_7185; method_41820 addBoneAnimation + p 2 transformation + p 1 name +c net/minecraft/class_4910 net/minecraft/client/data/BlockStateModelGenerator + f Lnet/minecraft/class_4926; field_56793 EAST_DEFAULT_HORIZONTAL_ROTATION_OPERATIONS + f Ljava/util/Map; field_28552 VARIANT_POOL_FUNCTIONS + f Lnet/minecraft/class_4926; field_56792 UP_DEFAULT_ROTATION_OPERATIONS + f Ljava/util/function/Consumer; field_22830 blockStateCollector + f Ljava/util/Map; field_56796 TEXTURED_MODELS + f Lnet/minecraft/class_4926; field_56791 NORTH_DEFAULT_ROTATION_OPERATIONS + f Lnet/minecraft/class_10405; field_55238 itemModelOutput + f Ljava/util/function/Function; field_58153 LEAF_LITTER_MODEL_4_CONDITION_FUNCTION + f Lnet/minecraft/class_10804; field_56783 ROTATE_X_180 + f Ljava/util/function/Function; field_58152 LEAF_LITTER_MODEL_3_CONDITION_FUNCTION + f Lnet/minecraft/class_10804; field_56782 ROTATE_X_90 + f Ljava/util/function/BiConsumer; field_22831 modelCollector + f Ljava/util/function/Function; field_58151 LEAF_LITTER_MODEL_2_CONDITION_FUNCTION + f Lnet/minecraft/class_10804; field_56781 UV_LOCK + f Ljava/util/function/Function; field_58150 LEAF_LITTER_MODEL_1_CONDITION_FUNCTION + f Lnet/minecraft/class_10804; field_56780 NO_OP + f Lnet/minecraft/class_10804; field_56787 ROTATE_Y_270 + f Ljava/util/Map; field_28548 CONNECTION_VARIANT_FUNCTIONS + c A map from a boolean property about connection on one direction to a\nfunction that creates a block state variant for connection on that\ndirection with a given connection model. + f Ljava/util/Map; field_41526 CHISELED_BOOKSHELF_MODEL_CACHE + f Lnet/minecraft/class_10804; field_56786 ROTATE_Y_180 + f Lnet/minecraft/class_10804; field_56785 ROTATE_Y_90 + f Lnet/minecraft/class_10804; field_56784 ROTATE_X_270 + f Ljava/util/function/Function; field_58149 FLOWERBED_MODEL_4_CONDITION_FUNCTION + f Ljava/util/Map; field_56790 BASE_WITH_CUSTOM_GENERATOR + f Ljava/util/function/Function; field_58148 FLOWERBED_MODEL_3_CONDITION_FUNCTION + f Ljava/util/function/Function; field_58147 FLOWERBED_MODEL_2_CONDITION_FUNCTION + f Lnet/minecraft/class_4926; field_56795 NORTH_DEFAULT_HORIZONTAL_ROTATION_OPERATIONS + f Ljava/util/List; field_56789 UNORIENTABLE_TRAPDOORS + f Ljava/util/function/Function; field_58146 FLOWERBED_MODEL_1_CONDITION_FUNCTION + f Lnet/minecraft/class_4926; field_56794 SOUTH_DEFAULT_HORIZONTAL_ROTATION_OPERATIONS + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)Lnet/minecraft/class_4917; method_25662 createTrapdoorBlockState + p 3 openModel + p 2 bottomModel + p 1 topModel + p 0 trapdoorBlock + m ()V method_65410 registerSkulls + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4944;Ljava/lang/Integer;)Lnet/minecraft/class_807; method_34606 method_34606 + p 3 age + m ()V method_36440 registerInfestedDeepslate + m ()V method_49991 registerPitcherPlant + m ()V method_25697 registerSmoothStone + m ()V method_25703 registerCartographyTable + m (Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_9206;Ljava/lang/Boolean;)Lnet/minecraft/class_807; method_67817 method_67817 + p 9 ominous + p 8 state + m (Lnet/minecraft/class_2248;)V method_25619 registerMirrorable + p 1 block + m (Lnet/minecraft/class_1792;)Lnet/minecraft/class_2960; method_65398 uploadItemModel + p 1 item + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2769;[I)V method_25547 registerCrop + p 1 crop + p 2 ageProperty + p 3 ageTextureIndices + m (Lnet/minecraft/class_813;)Lnet/minecraft/class_6010; method_68470 method_68470 + p 0 variant + m ()V method_25509 registerComposter + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;)V method_73136 registerWaxable + p 2 waxed + p 1 unwaxed + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2960;)V method_25623 registerParentedItemModel + p 1 block + p 2 parentModelId + m ()V method_65411 registerBanners + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_25686 registerRoots + p 1 root + p 2 pottedRoot + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_4910$class_4913;)V method_25602 registerPlantPart + p 2 plantStem + p 3 tintType + p 1 plant + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)Lnet/minecraft/class_4917; method_46189 createCustomFenceBlockState + p 5 westSideModel + p 3 eastSideModel + p 4 southSideModel + p 1 postModel + p 2 northSideModel + p 0 customFenceBlock + m ()V method_49990 registerSnifferEgg + m (Lnet/minecraft/class_2248;)V method_25688 registerStraightRail + p 1 rail + m (Lnet/minecraft/class_2248;)V method_51463 registerGeneric + p 1 block + m ()Lnet/minecraft/class_4926; method_25649 createAxisRotatedVariantMap + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2960;Lnet/minecraft/class_10401;)V method_65402 registerTintedItemModel + p 3 tint + p 1 block + p 2 modelId + m (Ljava/lang/Integer;Ljava/lang/Boolean;Ljava/lang/Boolean;)Lnet/minecraft/class_807; method_34619 method_34619 + p 2 on + p 0 tick + p 1 locked + m ()V method_25699 registerBrewingStand + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_4944;)V method_25561 registerPiston + p 1 piston + p 3 textures + m ()V method_33128 registerSculkSensor + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_4944;)V method_34645 method_34645 + p 1 textures + m (Lnet/minecraft/class_2248;)V method_65422 registerBuiltin + p 1 block + m (Lnet/minecraft/class_2248;)V method_33520 registerMultifaceBlock + p 1 block + m (Lnet/minecraft/class_2350;Ljava/lang/Boolean;Lnet/minecraft/class_11598;)Lnet/minecraft/class_815; method_72727 createSideChainModelCondition + p 2 sideChain + p 1 powered + p 0 facing + m (Lnet/minecraft/class_2248;)V method_25641 registerSimpleCubeAll + p 1 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4910$class_4913;)V method_65417 registerDoubleBlockAndItem + p 1 block + p 2 crossType + m ()V method_25530 registerRedstoneTorch + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)Lnet/minecraft/class_4917; method_54822 createCopperBulbBlockState + p 2 litUnpoweredModel + p 1 unlitUnpoweredModel + p 4 litPoweredModel + p 3 unlitPoweredModel + p 0 block + m (Lnet/minecraft/class_10795;)Lnet/minecraft/class_10795; method_68819 method_68819 + p 0 builder + m ()V method_25687 registerGrindstone + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_73140 registerCopperBars + p 2 waxedBlock + p 1 unwaxedBlock + m (Lnet/minecraft/class_2248;)V method_25665 registerOrientableTrapdoor + p 1 trapdoorBlock + m (Lnet/minecraft/class_813;)Lnet/minecraft/class_807; method_67839 modelWithYRotation + p 0 variant + m (Lnet/minecraft/class_2248;Ljava/util/function/Function;)V method_25558 registerBeehive + p 2 texturesFactory + p 1 beehive + m ()V method_25705 registerSmithingTable + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_807; method_25704 getFireUpModels + p 1 texture + m (Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Ljava/lang/Boolean;Lnet/minecraft/class_2768;)Lnet/minecraft/class_807; method_67818 method_67818 + p 6 powered + p 7 shape + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4946$class_4947;)V method_25622 registerSingleton + p 2 modelFactory + p 1 block + m (Lnet/minecraft/class_2248;)V method_25706 registerLantern + p 1 lantern + m ([Lnet/minecraft/class_813;)Lnet/minecraft/class_807; method_67833 createWeightedVariant + p 0 variants + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)Lnet/minecraft/class_4917; method_25609 createDoorBlockState + p 5 topLeftClosedModel + p 4 bottomRightOpenModel + p 3 bottomRightClosedModel + p 2 bottomLeftOpenModel + p 8 topRightOpenModel + p 7 topRightClosedModel + p 6 topLeftOpenModel + p 1 bottomLeftClosedModel + p 0 doorBlock + m (Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_8967;Ljava/lang/Boolean;)Lnet/minecraft/class_807; method_67816 method_67816 + p 7 ominous + p 6 state + m (Ljava/util/function/BiConsumer;)V method_72725 forEachHorizontalDirection + p 0 biConsumer + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_25672 registerParented + c Used for a block that shares a block model with another block, for example waxed copper or infested stone bricks. + p 2 child + p 1 modelSource + m ([ILit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lnet/minecraft/class_2248;Ljava/lang/Integer;)Lnet/minecraft/class_807; method_67830 method_67830 + p 4 age + m (Lnet/minecraft/class_807;Lnet/minecraft/class_807;Ljava/lang/Boolean;)Lnet/minecraft/class_807; method_67820 method_67820 + p 2 bloom + m ()V method_25531 registerRepeater + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792;)V method_25542 registerBuiltinWithParticle + p 2 particleSource + p 1 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_10515$class_10516;)V method_65409 registerSpecialItemModel + p 1 block + p 2 specialModel + m (Lnet/minecraft/class_4922;Lnet/minecraft/class_807;Lnet/minecraft/class_2350;Lnet/minecraft/class_10804;)V method_67811 method_67811 + p 4 operator + p 3 facing + m ()V method_25664 registerTallSeagrass + m ()V method_49992 registerPitcherCrop + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4910$class_4913;Lnet/minecraft/class_2769;[I)V method_49374 registerTintableCrossBlockStateWithStages + p 1 block + p 2 tintType + p 3 stageProperty + p 4 stages + m (Lnet/minecraft/class_4946$class_4947;Lnet/minecraft/class_2248;Ljava/lang/String;)Lnet/minecraft/class_2960; method_66528 createCreakingHeartModel + p 2 block + p 1 texturedModelFactory + p 3 suffix + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4944;Lnet/minecraft/class_4922;Lnet/minecraft/class_4942;Ljava/lang/Boolean;Lnet/minecraft/class_11598;)V method_72721 registerShelf + p 1 block + p 6 sideChain + p 4 model + p 5 powered + p 2 textureMap + p 3 definitionCreator + m (Lnet/minecraft/class_4946$class_4947;[Lnet/minecraft/class_2248;)V method_25614 registerSouthDefaultHorizontalFacing + p 2 blocks + p 1 modelFactory + m (Lnet/minecraft/class_2248;Ljava/lang/String;Lnet/minecraft/class_4944;)V method_66527 method_66527 + p 2 textureMap + m ([Lnet/minecraft/class_10795;)Lnet/minecraft/class_815; method_67832 or + p 0 conditionBuilders + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)V method_25678 registerDoubleBlock + p 1 block + p 2 upperModel + p 3 lowerModel + m (Lnet/minecraft/class_2248;)V method_65421 registerGrassTintedDoubleBlockAndItem + p 1 block + m (Ljava/util/Map;Lnet/minecraft/class_10641;)Lnet/minecraft/class_807; method_67828 method_67828 + p 1 mode + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;)V method_31063 registerAxisRotated + p 2 model + p 1 block + m (Lnet/minecraft/class_10795;)Lnet/minecraft/class_10795; method_68821 method_68821 + p 0 builder + m (Ljava/util/function/BiConsumer;Lcom/mojang/datafixers/util/Pair;)V method_72726 method_72726 + p 1 pair + m ()V method_72729 registerCopperChests + m (Lnet/minecraft/class_2248;)V method_64949 registerCreakingHeart + p 1 block + m ()V method_25532 registerSeaPickle + m (Lnet/minecraft/class_2248;)V method_25671 registerTrapdoor + p 1 trapdoorBlock + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_46190 registerHangingSign + p 2 hangingSign + p 1 base + p 3 wallHangingSign + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_807; method_25702 getFireSideModels + p 1 texture + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_5691;)Lnet/minecraft/class_807; method_32803 getDripstoneVariant + p 2 thickness + p 1 direction + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4946$class_4947;)V method_25652 registerCooker + p 1 cooker + p 2 modelFactory + m (Lnet/minecraft/class_2248;)V method_66529 registerLeafLitter + p 1 leafLitter + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)Lnet/minecraft/class_4917; method_25673 createPressurePlateBlockState + p 2 downModel + p 1 upModel + p 0 pressurePlateBlock + m (Lnet/minecraft/class_5000;)Lnet/minecraft/class_10804; method_26433 addJigsawOrientationToVariant + p 0 orientation + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)Lnet/minecraft/class_4917; method_25661 createFenceBlockState + p 2 sideModel + p 0 fenceBlock + p 1 postModel + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792;)V method_65295 registerMultifaceBlock + p 1 block + p 2 item + m (Lnet/minecraft/class_1792;)V method_25537 registerItemModel + p 1 item + m ()V method_25707 registerPumpkins + m (Lnet/minecraft/class_2248;Ljava/lang/String;)V method_65416 registerTwoLayerItemModel + p 2 layer1Suffix + p 1 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_73139 registerCopperChain + p 1 unwaxed + p 2 waxed + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_25666 registerWeightedPressurePlate + p 2 textureSource + p 1 weightedPressurePlate + m ()V method_33711 registerBigDripleaf + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_25642 registerWoolAndCarpet + p 2 carpet + p 1 wool + m (Lnet/minecraft/class_807;Ljava/lang/Integer;)Lnet/minecraft/class_807; method_67821 method_67821 + p 1 layers + m (Lnet/minecraft/class_10795;)Lnet/minecraft/class_10795; method_68822 method_68822 + p 0 builder + m (Lnet/minecraft/class_2248;)V method_37317 registerPottedAzaleaBush + p 1 block + m (Lnet/minecraft/class_4922;Ljava/lang/Boolean;Lnet/minecraft/class_11598;Lnet/minecraft/class_807;Lnet/minecraft/class_2350;Lnet/minecraft/class_10804;)V method_72724 method_72724 + p 5 operator + p 4 facing + m (Lnet/minecraft/class_2248;)V method_25696 registerDispenserLikeOrientable + p 1 block + m (Lnet/minecraft/class_2248;)V method_54826 registerCopperBulb + p 1 copperBulbBlock + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_65403 registerBuiltinWithParticle + p 1 block + p 2 particleSource + m (Lnet/minecraft/class_4944;)V method_67842 method_67842 + p 0 textureMap + m ()V method_25533 registerSnows + m ()V method_25521 registerLever + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;)Lnet/minecraft/class_4925; method_25644 createSingletonBlockState + p 0 block + p 1 model + m (Lnet/minecraft/class_5794;)V method_34612 method_34612 + p 1 family + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4912; method_25650 registerCubeAllModelTexturePool + p 1 block + m (Ljava/util/function/Function;Ljava/lang/Integer;)Lnet/minecraft/class_807; method_70820 method_70820 + p 1 hydration + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_73138 registerCopperLantern + p 1 unwaxed + p 2 waxed + m (Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_5705;)Lnet/minecraft/class_807; method_67815 method_67815 + p 2 phase + m (Lnet/minecraft/class_813;Lnet/minecraft/class_813;)Lnet/minecraft/class_807; method_67823 modelWithMirroring + p 1 mirroredVariant + p 0 variant + m ()V method_25534 register + m (Lnet/minecraft/class_2248;Ljava/lang/String;)V method_25556 registerItemModel + p 1 block + p 2 textureSuffix + m ()V method_33710 registerCaveVines + m ()V method_72728 registerCopperGolemStatues + m ()V method_33504 registerPetrifiedOakSlab + m ()V method_42037 registerSculkShrieker + m (Lnet/minecraft/class_4942;Ljava/lang/String;Lnet/minecraft/class_4944;Lnet/minecraft/class_4910$class_7987;)Lnet/minecraft/class_2960; method_47815 method_47815 + p 4 key + m (Ljava/lang/Integer;)Lnet/minecraft/class_2960; method_70822 method_70822 + p 1 hydration + m ()V method_25590 registerStonecutter + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Z)Lnet/minecraft/class_4917; method_25626 createFenceGateBlockState + p 5 uvlock + p 3 openWallModel + p 4 closedWallModel + p 1 openModel + p 2 closedModel + p 0 fenceGateBlock + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_25651 registerGlassAndPane + p 1 glassBlock + p 2 glassPane + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4944;)V method_64945 method_64945 + p 1 textureMap + m ()V method_42033 registerMuddyMangroveRoots + m (Lnet/minecraft/class_2248;)V method_25685 registerTurnableRail + p 1 rail + m (Lnet/minecraft/class_4922;Lnet/minecraft/class_807;Lnet/minecraft/class_10795;Lnet/minecraft/class_2769;Lnet/minecraft/class_10804;)V method_67812 method_67812 + p 4 operator + p 3 property + m ()V method_25522 registerLilyPad + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4944;)V method_25550 registerNorthDefaultHorizontalRotatable + p 1 block + p 2 texture + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2960;Z)V method_65404 registerChest + p 1 block + p 2 particleSource + p 3 texture + p 4 christmas + m ()V method_25510 registerDaylightDetector + m (Lnet/minecraft/class_2248;Ljava/lang/Integer;)Lnet/minecraft/class_807; method_49376 method_49376 + p 2 dusted + m (Lnet/minecraft/class_2248;)V method_49377 registerBrushableBlock + p 1 block + m (Lnet/minecraft/class_2248;)V method_73135 registerBars + p 1 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;)Lnet/minecraft/class_4917; method_25653 createAxisRotatedBlockState + p 1 model + p 0 block + m (Lnet/minecraft/class_2248;)V method_32229 registerAmethyst + p 1 block + m (Lnet/minecraft/class_813;)Lnet/minecraft/class_807; method_67822 createWeightedVariant + p 0 variant + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_813;Lnet/minecraft/class_4944;Ljava/util/function/BiConsumer;)Lnet/minecraft/class_4917; method_34608 createStoneState + p 0 block + p 1 variant + p 2 textures + p 3 modelCollector + m ()V method_25523 registerNetherPortal + m ()V method_26279 registerRespawnAnchor + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_807; method_25700 getFireFloorModels + p 1 texture + m ()V method_42034 registerMangrovePropagule + m (Lnet/minecraft/class_4946$class_4947;[Lnet/minecraft/class_2248;)V method_25576 registerRandomHorizontalRotations + p 2 blocks + p 1 modelFactory + m (Lnet/minecraft/class_4922;Lnet/minecraft/class_815;Lnet/minecraft/class_10804;Lcom/mojang/datafixers/util/Pair;)V method_47813 method_47813 + p 4 pair + m ()V method_25709 registerCauldrons + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Ljava/lang/Boolean;Ljava/lang/Integer;)Lnet/minecraft/class_807; method_67807 method_67807 + p 2 hanging + p 3 age + m (Lnet/minecraft/class_10795;)Lnet/minecraft/class_10795; method_68820 method_68820 + p 0 builder + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_25543 registerStateWithModelReference + p 1 block + p 2 modelReference + m ()V method_25591 registerStructureBlock + m (Lnet/minecraft/class_4944;)V method_67840 method_67840 + p 0 textureMap + m (Lnet/minecraft/class_2248;)V method_25698 registerNetherrackBottomCustomTop + p 1 block + m (Lnet/minecraft/class_2248;I)Lnet/minecraft/class_2960; method_34604 method_34604 + p 2 stage + m ()V method_25524 registerNetherrack + m ()V method_39204 registerLightBlock + m ()V method_25512 registerFarmland + m ()V method_25657 registerSunflower + m ()V method_42035 registerFrogspawn + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4946$class_4947;I)V method_65408 registerTintedBlockAndItem + p 2 texturedModelFactory + p 1 block + p 3 tintColor + m ()V method_33712 registerSmallDripleaf + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4910$class_4913;Lnet/minecraft/class_4944;)V method_25549 registerTintableCross + p 3 texture + p 2 tintType + p 1 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_25677 registerTorch + p 2 wallTorch + p 1 torch + m (Lnet/minecraft/class_2248;)V method_31064 registerRod + p 1 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)Lnet/minecraft/class_807; method_65419 uploadParticleModel + p 2 particleSource + p 1 block + m (Lnet/minecraft/class_2776;)Lnet/minecraft/class_807; method_34610 method_34610 + p 1 mode + m ()V method_56886 registerVault + m (Lnet/minecraft/class_2746;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)Lnet/minecraft/class_4926; method_25565 createBooleanModelMap + p 2 falseModel + p 1 trueModel + p 0 property + m ()V method_65418 registerVine + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_807; method_67835 createWeightedVariant + p 0 id + m ()V method_25592 registerSweetBerryBush + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V method_73137 registerBars + p 1 block + p 3 postModelId + p 2 postEndsModelId + p 5 capAltModelId + p 4 capModelId + p 7 sideAltModelId + p 6 sideModelId + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)V method_25560 registerTopSoil + p 3 snowyVariant + p 1 topSoil + p 2 regularVariant + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4910$class_4913;)V method_25603 registerTintableCrossBlockState + p 2 tintType + p 1 block + m ()V method_25513 registerFire + m ()V method_25525 registerObserver + m (Lnet/minecraft/class_2688;Ljava/util/function/Function;)Ljava/util/Map; method_67809 collectMultifaceOperators + p 1 propertyGetter + p 0 state + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_4944;)V method_34650 method_34650 + p 1 textureMap + m (Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Ljava/lang/Boolean;Ljava/lang/Boolean;)Lnet/minecraft/class_807; method_67819 method_67819 + p 5 powered + p 4 lit + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)Lnet/minecraft/class_4926; method_25566 createValueFencedModelMap + p 3 belowFenceModel + p 1 fence + p 2 aboveFenceModel + p 0 property + m ()V method_70821 registerDriedGhast + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_2960;)V method_65399 registerItemModel + p 2 modelId + p 1 item + m (Lnet/minecraft/class_4922;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_10795;Lnet/minecraft/class_2769;Lnet/minecraft/class_10804;)V method_67813 method_67813 + p 4 property + p 5 operator + m (Lnet/minecraft/class_2248;)V method_25692 registerAnvil + p 1 anvil + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_4910$class_4913;)V method_25545 registerFlowerPotPlant + p 1 plantBlock + p 2 flowerPotBlock + p 3 tintType + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_2248;Ljava/lang/String;)Lnet/minecraft/class_2960; method_65414 uploadTwoLayerBlockItemModel + p 3 layer1Suffix + p 1 item + p 2 block + m (Lnet/minecraft/class_2248;)V method_49378 registerFlowerbed + p 1 flowerbed + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_1767;)V method_65405 registerBanner + p 1 block + p 3 color + p 2 wallBlock + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_813; method_67806 createModelVariant + p 0 id + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4944;)V method_64944 method_64944 + p 1 textureMap + m ()V method_25593 registerTripwire + m (Lnet/minecraft/class_2248;)V method_25600 registerItemModel + p 1 block + m (Lnet/minecraft/class_4944;Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_34624 method_34624 + p 1 id + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4914; method_25676 createLogTexturePool + p 1 logBlock + m (Lnet/minecraft/class_10795;Lnet/minecraft/class_2769;Lnet/minecraft/class_10804;)V method_67836 method_67836 + p 1 property + p 2 operator + m ()V method_25526 registerPistons + m ()V method_25514 registerSoulFire + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_25544 registerCoral + p 4 deadCoralBlock + p 3 coralBlock + p 6 deadCoralFan + p 5 coralFan + p 2 deadCoral + p 1 coral + p 8 deadCoralWallFan + p 7 coralWallFan + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4946$class_4947;)V method_25605 registerNorthDefaultHorizontalRotatable + p 2 modelFactory + p 1 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4910$class_4913;Lnet/minecraft/class_4944;)V method_25604 registerTintableCrossBlockState + p 3 crossTexture + p 2 tintType + p 1 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)Lnet/minecraft/class_4917; method_25636 createWallBlockState + p 0 wallBlock + p 1 postModel + p 2 lowSideModel + p 3 tallSideModel + m (Lnet/minecraft/class_2248;)V method_25681 registerSimpleState + p 1 block + m ()V method_25691 registerBookshelf + m ()V method_66791 registerTestBlock + m ()V method_25594 registerTripwireHook + m ()V method_25527 registerPistonHead + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2484$class_2485;Lnet/minecraft/class_2960;)V method_65406 registerSkull + p 4 baseModelId + p 3 type + p 2 wallBlock + p 1 block + m (Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_5705;)Lnet/minecraft/class_807; method_67838 method_67838 + p 2 phase + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4946$class_4947;)V method_25553 registerAxisRotated + p 2 modelFactory + p 1 block + m ()V method_25515 registerFrostedIce + m (Lnet/minecraft/class_4944;)V method_67843 method_67843 + p 0 textureMap + m (Lnet/minecraft/class_2746;Z)Lnet/minecraft/class_10795; method_72722 createMultipartConditionBuilderWith + p 0 property + p 1 value + m (I)Lnet/minecraft/class_807; method_25535 getBambooBlockStateVariants + p 0 age + m ()V method_42038 registerSculkCatalyst + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_25620 registerGourd + p 2 attachedStemBlock + p 1 stemBlock + m (Ljava/util/function/Function;Lnet/minecraft/class_2688;Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_2350;Lnet/minecraft/class_10804;)V method_67829 method_67829 + p 3 direction + p 4 operator + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_813;Lnet/minecraft/class_4944;Ljava/util/function/BiConsumer;)Lnet/minecraft/class_4917; method_42039 createMudBrickState + p 1 variant + p 0 block + p 3 modelCollector + p 2 textures + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4946$class_4947;Lnet/minecraft/class_4946$class_4947;)V method_25554 registerAxisRotated + p 1 block + p 2 verticalModelFactory + p 3 horizontalModelFactory + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_813;Lnet/minecraft/class_4944;Ljava/util/function/BiConsumer;)Lnet/minecraft/class_4917; method_34631 createDeepslateState + p 2 textures + p 1 variant + p 3 modelCollector + p 0 block + m (Lnet/minecraft/class_2248;)V method_25694 registerMushroomBlock + p 1 mushroomBlock + m ()V method_25680 registerBarrel + m ()V method_25595 registerTurtleEgg + m ()V method_25528 registerScaffolding + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_32228 registerCandle + p 2 cake + p 1 candle + m (Lnet/minecraft/class_10795;Lnet/minecraft/class_2769;Lnet/minecraft/class_10804;)V method_67810 method_67810 + p 2 operator + p 1 property + m ()V method_25516 registerTopSoils + m (ILjava/lang/String;Lnet/minecraft/class_4944;)Lnet/minecraft/class_813; method_25536 getTurtleEggModel + p 1 eggs + p 2 prefix + p 3 textures + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1767;)V method_25710 registerShulkerBox + p 1 shulkerBox + p 2 color + m ()V method_49989 registerCalibratedSculkSensor + m ([Lnet/minecraft/class_10795;)Lnet/minecraft/class_815; method_72730 and + p 0 conditionBuilders + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_54825 registerWaxedCopperBulb + p 2 waxedCopperBulbBlock + p 1 unwaxedCopperBulbBlock + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_4944;)V method_34639 method_34639 + p 1 textures + m (Lnet/minecraft/class_2754;Ljava/lang/Enum;[Ljava/lang/Enum;)Lnet/minecraft/class_10795; method_72723 createMultipartConditionBuilderWith + p 0 property + p 2 values + p 1 value + m (Ljava/lang/Boolean;Ljava/lang/Boolean;)Lnet/minecraft/class_807; method_67824 method_67824 + p 0 attached + p 1 on + m (Lnet/minecraft/class_10795;)Lnet/minecraft/class_10795; method_68817 method_68817 + p 0 builder + m ()V method_25693 registerRedstone + m (Lnet/minecraft/class_2248;)V method_25631 registerRotatable + p 1 block + m (Lnet/minecraft/class_2248;)V method_64941 registerHangingMoss + p 1 block + m ()V method_25517 registerCocoa + m ()V method_25529 registerRedstoneLamp + m (Lnet/minecraft/class_4944;)V method_67837 method_67837 + p 0 textureMap + m (Lnet/minecraft/class_2248;)V method_25708 registerNorthDefaultHorizontalRotatable + p 1 block + m ()V method_25711 registerChorusFlower + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_34852 registerLightningRod + p 2 waxed + p 1 unwaxed + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Ljava/util/function/Function;Lnet/minecraft/class_807;Ljava/util/function/Function;Lnet/minecraft/class_807;Ljava/util/function/Function;Lnet/minecraft/class_807;Ljava/util/function/Function;)V method_66526 registerSegmentedBlock + p 7 model3ConditionFunction + p 6 model3 + p 9 model4ConditionFunction + p 8 model4 + p 3 model1ConditionFunction + p 2 model1 + p 5 model2ConditionFunction + p 4 model2 + p 1 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_5955$class_5811;)V method_72720 registerCopperGolemStatue + p 3 oxidationLevel + p 1 block + p 2 particleBlock + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)Lnet/minecraft/class_4917; method_25655 createOrientableTrapdoorBlockState + p 1 topModel + p 0 trapdoorBlock + p 3 openModel + p 2 bottomModel + m (Lnet/minecraft/class_4922;Lnet/minecraft/class_815;Lnet/minecraft/class_10804;Lnet/minecraft/class_2746;Lnet/minecraft/class_4942;Z)V method_47814 supplyChiseledBookshelfModel + p 6 occupied + p 5 model + p 2 facingCondition + p 1 blockStateSupplier + p 4 property + p 3 rotation + m (Lnet/minecraft/class_2248;)V method_65420 registerGrassTinted + p 1 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_4910$class_4913;)V method_65407 registerFlowerPotPlantAndItem + p 3 crossType + p 2 flowerPotBlock + p 1 block + m (II)Lnet/minecraft/class_813; method_25581 getTurtleEggModel + p 2 cracks + p 1 eggs + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_4944;)V method_34626 method_34626 + p 1 textures + m ()V method_25597 registerMagmaBlock + m (Lnet/minecraft/class_2248;Ljava/lang/String;Lnet/minecraft/class_4942;Ljava/util/function/Function;)Lnet/minecraft/class_2960; method_25557 createSubModel + p 3 model + p 4 texturesFactory + p 1 block + p 2 suffix + m (Lnet/minecraft/class_10795;)Lnet/minecraft/class_10795; method_68818 method_68818 + p 0 builder + m ()V method_25670 registerBamboo + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2960; method_65400 uploadBlockItemModel + p 2 block + p 1 item + m (Lnet/minecraft/class_2248;)V method_64940 registerPaleMossCarpet + p 1 block + m (Lnet/minecraft/class_4944;)V method_67814 method_67814 + p 0 textureMap + m ()V method_25518 registerDirtPath + m (Ljava/lang/Integer;)Lnet/minecraft/class_807; method_67825 method_67825 + p 1 hatch + m ([Lnet/minecraft/class_2960;Ljava/lang/Integer;)Lnet/minecraft/class_807; method_67831 method_67831 + p 1 charges + m ()V method_25712 registerEndPortalFrame + m (Ljava/lang/Integer;Ljava/lang/Integer;)Lnet/minecraft/class_807; method_67826 method_67826 + p 2 hatch + p 1 eggs + m (Ljava/lang/Comparable;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Ljava/lang/Comparable;)Lnet/minecraft/class_807; method_34617 method_34617 + p 3 value + m (Lnet/minecraft/class_813;)Lnet/minecraft/class_813; method_67841 method_67841 + p 0 variant + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)Lnet/minecraft/class_4917; method_25668 createSlabBlockState + p 1 bottomModel + p 0 slabBlock + p 3 doubleModel + p 2 topModel + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Ljava/util/function/BiFunction;)V method_25546 registerCubeWithCustomTextures + p 2 otherTextureSource + p 3 texturesFactory + p 1 block + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_2248;Ljava/lang/String;)Lnet/minecraft/class_2960; method_65401 uploadBlockItemModel + p 2 block + p 1 item + p 3 textureSuffix + m ()V method_65412 registerChests + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2960;)V method_25660 registerBuiltinWithParticle + p 2 particleSource + p 1 block + m ()V method_25695 registerComparator + m ()V method_32227 registerAmethysts + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_54823 registerParentedDoor + p 2 doorBlock + p 1 parent + m ()V method_25598 registerInfestedStone + m (Lnet/minecraft/class_10795;)Lnet/minecraft/class_10795; method_68815 method_68815 + p 0 builder + m ()Lnet/minecraft/class_10795; method_67834 createMultipartConditionBuilder + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4910$class_4913;)V method_25548 registerTintableCross + p 2 crossType + p 1 block + m ()V method_25519 registerHopper + m (Lnet/minecraft/class_4944;Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_34637 method_34637 + p 1 id + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4910$class_4913;)V method_25621 registerDoubleBlock + p 1 doubleBlock + p 2 tintType + m ()V method_25701 registerCake + m ([Lnet/minecraft/class_2248;)V method_27166 registerCampfire + p 1 blocks + m (Lnet/minecraft/class_4922;Lnet/minecraft/class_815;Lnet/minecraft/class_10804;)V method_47812 supplyChiseledBookshelfModels + p 2 facingCondition + p 1 blockStateSupplier + p 3 rotation + m (Lnet/minecraft/class_2248;Ljava/lang/Integer;Lnet/minecraft/class_2756;)Lnet/minecraft/class_807; method_67808 method_67808 + p 2 half + p 1 age + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)Lnet/minecraft/class_4917; method_25667 createAxisRotatedBlockState + p 1 verticalModel + p 0 block + p 2 horizontalModel + m ()V method_32802 registerPointedDripstone + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4944;Ljava/util/function/BiConsumer;)Lnet/minecraft/class_4917; method_47519 createUvLockedColumnBlockState + p 1 textureMap + p 0 block + p 2 modelCollector + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_54824 registerParentedTrapdoor + p 2 trapdoorBlock + p 1 parent + m (Lnet/minecraft/class_2248;)V method_25690 registerCommandBlock + p 1 commandBlock + m ()V method_65413 registerBeds + m (Ljava/lang/Integer;)Lnet/minecraft/class_807; method_34618 method_34618 + p 1 stage + m ()V method_54654 registerCrafter + m (Ljava/util/function/Consumer;Lnet/minecraft/class_10405;Ljava/util/function/BiConsumer;)V + p 1 blockStateCollector + p 2 itemModelOutput + p 3 modelCollector + m ()V method_25684 registerBell + m ()V method_46193 registerChiseledBookshelf + m (Lnet/minecraft/class_2248;Ljava/lang/Boolean;)Lnet/minecraft/class_807; method_64942 method_64942 + p 2 tip + m (Lnet/minecraft/class_10795;)Lnet/minecraft/class_10795; method_68816 method_68816 + p 0 builder + m ([ILnet/minecraft/class_2248;Lnet/minecraft/class_4910$class_4913;Ljava/lang/Integer;)Lnet/minecraft/class_807; method_49375 method_49375 + p 4 stage + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_1767;)V method_65415 registerBed + p 2 particleSource + p 1 block + p 3 color + m ()V method_55306 registerTrialSpawner + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_72719 registerShelf + p 1 block + m ()V method_25508 registerChorusPlant + m (Lnet/minecraft/class_2248;)V method_25658 registerDoor + p 1 doorBlock + m (Lnet/minecraft/class_2248;)V method_65291 registerMultifaceBlockModel + p 1 block + m ()V method_26434 registerJigsaw + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)Lnet/minecraft/class_4917; method_25654 createButtonBlockState + p 2 pressedModel + p 0 buttonBlock + p 1 unpressedModel + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_25601 registerCoralFan + p 1 coralFanBlock + p 2 coralWallFanBlock + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_807;Lnet/minecraft/class_807;Lnet/minecraft/class_807;)Lnet/minecraft/class_4917; method_25646 createStairsBlockState + p 0 stairsBlock + p 1 innerModel + p 2 straightModel + p 3 outerModel + m (Lnet/minecraft/class_2248;)V method_33713 registerAzalea + p 1 block +c net/minecraft/class_4910$class_5879 net/minecraft/client/data/BlockStateModelGenerator$StateFactory + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_813;Lnet/minecraft/class_4944;Ljava/util/function/BiConsumer;)Lnet/minecraft/class_4917; create create + p 4 modelCollector + p 3 textures + p 2 variant + p 1 block +c net/minecraft/class_4910$class_7987 net/minecraft/client/data/BlockStateModelGenerator$ChiseledBookshelfModelCacheKey + f Ljava/lang/String; comp_1176 modelSuffix + f Lnet/minecraft/class_4942; comp_1175 template + m ()Ljava/lang/String; comp_1176 modelSuffix + m ()Lnet/minecraft/class_4942; comp_1175 template + m (Lnet/minecraft/class_4942;Ljava/lang/String;)V + p 1 template + p 2 modelSuffix +c net/minecraft/class_4910$class_4912 net/minecraft/client/data/BlockStateModelGenerator$BlockTexturePool + f Ljava/util/Set; field_47134 children + f Lnet/minecraft/class_5794; field_28554 family + f Ljava/util/Map; field_28553 knownModels + f Lnet/minecraft/class_4944; field_22837 textures + f Lnet/minecraft/class_813; field_22838 baseModelId + m (Lnet/minecraft/class_2248;)V method_33528 registerTrapdoor + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4912; method_25722 fenceGate + p 1 fenceGateBlock + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4912; method_25724 slab + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4912; method_25720 wall + p 1 wallBlock + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4912; method_34661 block + p 1 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4942;)Lnet/minecraft/class_2960; method_33525 method_33525 + p 2 newModel + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4912; method_46195 customFenceGate + p 1 customFenceGateBlock + m (Lnet/minecraft/class_5794;)Lnet/minecraft/class_4910$class_4912; method_33522 family + p 1 family + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4942;)Lnet/minecraft/class_4910$class_4912; method_25718 base + p 2 model + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4912; method_25725 stairs + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4912; method_25717 sign + p 1 signBlock + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4912; method_25721 fence + p 1 fenceBlock + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4912; method_25723 pressurePlate + p 1 pressurePlateBlock + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4912; method_33527 door + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4912; method_46194 customFence + p 1 customFenceBlock + m (Lnet/minecraft/class_4942;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2960; method_33524 ensureModel + p 2 block + p 1 model + m (Lnet/minecraft/class_5794$class_5796;Lnet/minecraft/class_2248;)V method_33521 method_33521 + p 2 block + p 1 variant + m (Lnet/minecraft/class_4910;Lnet/minecraft/class_4944;)V + p 2 textures + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4912; method_25716 button + p 1 buttonBlock + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4912; method_54827 parented + p 1 parent + p 2 child +c net/minecraft/class_4910$class_4913 net/minecraft/client/data/BlockStateModelGenerator$CrossType + f Z field_55179 emissive + f Lnet/minecraft/class_4942; field_55177 model + f Lnet/minecraft/class_4942; field_55178 flowerPotModel + f Lnet/minecraft/class_4910$class_4913; field_22839 TINTED + f Lnet/minecraft/class_4910$class_4913; field_22840 NOT_TINTED + f Lnet/minecraft/class_4910$class_4913; field_55176 EMISSIVE_NOT_TINTED + m ()Lnet/minecraft/class_4942; method_25726 getCrossModel + m ()Lnet/minecraft/class_4942; method_25727 getFlowerPotCrossModel + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_65298 getFlowerPotTextureMap + p 1 block + m (Ljava/lang/String;ILnet/minecraft/class_4942;Lnet/minecraft/class_4942;Z)V + p 4 flowerPotModel + p 5 emissive + p 3 model + m (Lnet/minecraft/class_4910;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2960; method_65297 registerItemModel + p 1 modelGenerator + p 2 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_65296 getTextureMap + p 1 block +c net/minecraft/class_4910$class_4914 net/minecraft/client/data/BlockStateModelGenerator$LogTexturePool + f Lnet/minecraft/class_4944; field_22843 textures + m (Lnet/minecraft/class_4910;Lnet/minecraft/class_4944;)V + p 2 textures + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4914; method_25730 log + p 1 logBlock + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4914; method_25729 stem + p 1 stemBlock + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4914; method_47520 uvLockedLog + p 1 logBlock + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4910$class_4914; method_25728 wood + p 1 woodBlock +c net/minecraft/class_4905 net/minecraft/client/realms/gui/screen/RealmsScreen + f Lnet/minecraft/class_2960; field_60806 REALMS_LOGO_TEXTURE + f I field_60809 REALMS_LOGO_TEXTURE_WIDTH + f J field_33058 MAX_FILE_SIZE + f Ljava/util/List; field_33848 labels + f I field_33061 DARK_GRAY + c Hex color {@code 0xFF4C4C4C}. + f I field_33040 BLUE + c Hex color {@code 0xFF3366BB} + f I field_33062 GRAY + c Hex color {@code 0xFF6C6C6C}. + f I field_33041 PURPLE + c Hex color {@code 0xFF6C71C4}. + f I field_33063 GREEN + c Hex color {@code 0xFF7FFF7F}. + f I field_60807 REALMS_LOGO_WIDGET_WIDTH + f I field_60808 REALMS_LOGO_WIDGET_HEIGHT + f I field_60810 REALMS_LOGO_TEXTURE_HEIGHT + m ()Lnet/minecraft/class_2561; method_25495 narrateLabels + m (I)I method_25494 row + c Moved from RealmsConstants in 20w10a + p 0 index + m (Lnet/minecraft/class_4903;)Lnet/minecraft/class_4903; method_37107 addLabel + p 1 label + m ()Lnet/minecraft/class_8208; method_71940 createRealmsLogoIconWidget +c net/minecraft/class_4907 net/minecraft/client/realms/RepeatedNarrator + f Ljava/util/concurrent/atomic/AtomicReference; field_22826 params + f F field_22825 permitsPerSecond + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_4907$class_4908;)Lnet/minecraft/class_4907$class_4908; method_25500 method_25500 + p 2 parameters + m (Ljava/time/Duration;)V + p 1 duration + m (Lnet/minecraft/class_333;Lnet/minecraft/class_2561;)V method_25499 narrate + p 1 narratorManager + p 2 text +c net/minecraft/class_4907$class_4908 net/minecraft/client/realms/RepeatedNarrator$Parameters + f Lcom/google/common/util/concurrent/RateLimiter; field_22828 rateLimiter + f Lnet/minecraft/class_2561; field_22827 message + m (Lnet/minecraft/class_2561;Lcom/google/common/util/concurrent/RateLimiter;)V + p 1 text + p 2 rateLimiter +c net/minecraft/class_4903 net/minecraft/client/realms/RealmsLabel + f I field_22820 x + f I field_22821 y + f I field_22822 color + f Lnet/minecraft/class_2561; field_22819 text + m ()Lnet/minecraft/class_2561; method_25487 getText + m (Lnet/minecraft/class_2561;III)V + p 1 text + p 2 x + p 3 y + p 4 color +c net/minecraft/class_4902 net/minecraft/client/realms/RealmsConnection + f Lnet/minecraft/class_437; field_22815 onlineScreen + f Lnet/minecraft/class_2535; field_22817 connection + f Lorg/slf4j/Logger; field_22814 LOGGER + f Z field_22816 aborted + m ()V method_25481 tick + m (Lnet/minecraft/class_4877;Lnet/minecraft/class_639;)V method_25480 connect + p 1 server + p 2 address + m (Lnet/minecraft/class_437;)V + p 1 onlineScreen + m ()V method_25477 abort +c net/minecraft/class_4902$1 net/minecraft/client/realms/RealmsConnection$1 + m (Lnet/minecraft/class_2561;)V method_10210 method_10210 + p 0 status +c net/minecraft/class_7198 net/minecraft/client/render/entity/model/FrogEntityModel + f F field_42228 SWIMMING_LIMB_ANGLE_SCALE + f Lnet/minecraft/class_630; field_38448 croakingBody + f F field_42229 LIMB_DISTANCE_SCALE + f Lnet/minecraft/class_630; field_37926 leftLeg + f Lnet/minecraft/class_630; field_37925 rightArm + f Lnet/minecraft/class_630; field_37927 rightLeg + f F field_39193 WALKING_LIMB_ANGLE_SCALE + f Lnet/minecraft/class_630; field_37920 body + f Lnet/minecraft/class_630; field_37922 eyes + f Lnet/minecraft/class_630; field_37921 head + f Lnet/minecraft/class_630; field_37924 leftArm + f Lnet/minecraft/class_630; field_37923 tongue + f Lnet/minecraft/class_11509; field_60901 swimmingAnimation + f Lnet/minecraft/class_11509; field_60900 usingTongueAnimation + f Lnet/minecraft/class_11509; field_60899 croakingAnimation + f Lnet/minecraft/class_11509; field_60898 longJumpingAnimation + f Lnet/minecraft/class_11509; field_60903 idlingInWaterAnimation + f Lnet/minecraft/class_11509; field_60902 walkingAnimation + m ()Lnet/minecraft/class_5607; method_41905 getTexturedModelData + m (Lnet/minecraft/class_10028;)V method_41907 setAngles +c net/minecraft/class_7196 net/minecraft/server/integrated/IntegratedServerLoader + f Lnet/minecraft/class_310; field_37914 client + f Lorg/slf4j/Logger; field_37913 LOGGER + f Ljava/util/UUID; field_47592 WORLD_PACK_ID + f Lnet/minecraft/class_32; field_37915 storage + m (Lnet/minecraft/class_7237$class_7238;Lnet/minecraft/class_7237$class_6907;Lnet/minecraft/class_7237$class_7239;)Ljava/lang/Object; method_45694 load + p 2 loadContextSupplier + p 1 dataPacks + p 3 saveApplierFactory + m (Lcom/mojang/serialization/Dynamic;ZLnet/minecraft/class_3283;)Lnet/minecraft/class_6904; method_54610 load + p 3 dataPackManager + p 1 levelProperties + p 2 safeMode + m (Lnet/minecraft/class_310;Lnet/minecraft/class_525;Lcom/mojang/serialization/Lifecycle;Ljava/lang/Runnable;Z)V method_41892 tryLoad + p 2 lifecycle + p 1 parent + p 4 bypassWarnings + p 3 loader + p 0 client + m (Ljava/lang/String;)Lnet/minecraft/class_32$class_5143; method_41901 createSession + p 1 levelName + m (Lnet/minecraft/class_6860;Lnet/minecraft/class_5350;Lnet/minecraft/class_7780;Lnet/minecraft/class_7196$class_7750;)Lcom/mojang/datafixers/util/Pair; method_45695 method_45695 + p 2 combinedRegistryManager + p 3 currentSettings + p 0 resourceManager + p 1 dataPackContents + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/class_7237$class_7660;)Lnet/minecraft/class_7237$class_7661; method_54622 method_54622 + p 1 context + m (Lnet/minecraft/class_32$class_5143;Ljava/lang/Runnable;)V method_57782 start + p 1 session + p 2 onCancel + m (Ljava/lang/Throwable;)Ljava/util/concurrent/CompletionStage; method_57789 method_57789 + p 1 throwable + m (Lnet/minecraft/class_32$class_5143;Ljava/lang/Runnable;Z)V method_57783 method_57783 + p 3 confirmed + m (Lnet/minecraft/class_310;Lnet/minecraft/class_32;)V + p 2 storage + p 1 client + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_6904;Lnet/minecraft/class_1066;Lnet/minecraft/class_3283;Ljava/lang/Runnable;)V method_57776 start + p 5 onCancel + p 3 resourcePackLoader + p 4 dataPackManager + p 1 session + p 2 saveLoader + m (Lnet/minecraft/class_32$class_5143;ZLjava/lang/Runnable;Ljava/lang/Runnable;)V method_41898 showBackupPromptScreen + p 1 session + p 2 customized + p 3 callback + p 4 onCancel + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_5350;Lnet/minecraft/class_7780;Lnet/minecraft/class_5219;)V method_41889 startNewWorld + p 1 session + p 2 dataPackContents + p 3 dynamicRegistryManager + p 4 saveProperties + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_6904;Lnet/minecraft/class_1066;Lnet/minecraft/class_3283;Ljava/lang/Runnable;Ljava/lang/Boolean;)V method_57777 method_57777 + p 6 successful + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_6904;Lnet/minecraft/class_3283;)V method_57773 start + p 3 dataPackManager + p 2 saveLoader + p 1 session + m (Lnet/minecraft/class_32$class_5143;Lcom/mojang/serialization/Dynamic;ZLjava/lang/Runnable;)V method_57780 start + p 4 onCancel + p 3 safeMode + p 2 levelProperties + p 1 session + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_34;Lcom/mojang/serialization/Dynamic;Ljava/lang/Runnable;)V method_57781 start + p 4 onCancel + p 3 levelProperties + p 2 summary + p 1 session + m (Ljava/lang/Runnable;Lnet/minecraft/class_310;Lnet/minecraft/class_525;Z)V method_41893 method_41893 + p 3 confirmed + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_6904;Lnet/minecraft/class_3283;Ljava/lang/Runnable;)V method_57787 start + p 4 onCancel + p 3 dataPackManager + p 2 saveLoader + p 1 session + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_6904;Lnet/minecraft/class_3283;Ljava/lang/Runnable;)V method_57775 checkBackupAndStart + p 3 dataPackManager + p 4 onCancel + p 1 session + p 2 saveLoader + m (Lnet/minecraft/class_32$class_5143;Ljava/lang/Runnable;ZZ)V method_54617 method_54617 + p 3 eraseCache + p 2 backup + m (Lnet/minecraft/class_32$class_5143;Lcom/mojang/serialization/Dynamic;Ljava/lang/Runnable;ZZ)V method_57779 method_57779 + p 4 backup + p 5 eraseCache + m (Ljava/lang/Void;)Ljava/lang/Boolean; method_57786 method_57786 + p 0 v + m (Ljava/lang/String;Lnet/minecraft/class_1940;Lnet/minecraft/class_5285;Ljava/util/function/Function;Lnet/minecraft/class_437;)V method_41895 createAndStart + p 3 dynamicRegistryManager + p 4 dimensionsRegistrySupplier + p 1 levelName + p 2 levelInfo + p 5 screen + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_6904;Lnet/minecraft/class_3283;Lnet/minecraft/class_1066;Ljava/lang/Runnable;Z)V method_57774 method_57774 + p 6 confirmed + m ()Ljava/util/concurrent/CompletableFuture; method_43324 showPackLoadFailureScreen + m (Ljava/util/function/Function;Lnet/minecraft/class_1940;Lnet/minecraft/class_5285;Lnet/minecraft/class_7237$class_7660;)Lnet/minecraft/class_7237$class_7661; method_45698 method_45698 + p 3 context + m (Ljava/lang/String;Ljava/lang/Runnable;)V method_57784 start + p 2 onCancel + p 1 name + m (Lnet/minecraft/class_1066;Lnet/minecraft/class_32$class_5143;)Ljava/util/concurrent/CompletableFuture; method_55510 applyWorldPack + p 2 session + p 1 loader + m (Lnet/minecraft/class_32$class_5143;)Lcom/mojang/datafixers/util/Pair; method_45696 loadForRecreation + p 1 session + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/class_7237$class_7660;)Lnet/minecraft/class_7237$class_7661; method_54609 method_54609 + p 1 context + m (Ljava/lang/Throwable;)Ljava/lang/Void; method_57785 method_57785 + p 1 throwable +c net/minecraft/class_7196$class_7750 net/minecraft/server/integrated/IntegratedServerLoader$CurrentSettings + f Lnet/minecraft/class_1940; comp_1031 levelInfo + f Lnet/minecraft/class_2378; comp_1033 existingDimensionRegistry + f Lnet/minecraft/class_5285; comp_1032 options + m ()Lnet/minecraft/class_1940; comp_1031 levelInfo + m ()Lnet/minecraft/class_2378; comp_1033 existingDimensionRegistry + m ()Lnet/minecraft/class_5285; comp_1032 options + m (Lnet/minecraft/class_1940;Lnet/minecraft/class_5285;Lnet/minecraft/class_2378;)V + p 1 levelInfo + p 2 options + p 3 existingDimensionRegistry +c net/minecraft/class_4916 net/minecraft/client/data/ModelProvider + f Lnet/minecraft/class_7784$class_7489; field_39375 blockstatesPathResolver + f Lnet/minecraft/class_7784$class_7489; field_39376 modelsPathResolver + f Lnet/minecraft/class_7784$class_7489; field_55247 itemsPathResolver + m (Lnet/minecraft/class_7784;)V + p 1 output +c net/minecraft/class_4916$class_10408 net/minecraft/client/data/ModelProvider$ModelSuppliers + f Ljava/util/Map; field_55251 modelSuppliers + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_10411;)V method_65477 accept + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_7784$class_7489;)Ljava/util/concurrent/CompletableFuture; method_65478 writeAllToPath + p 2 pathResolver + p 1 writer + m (Ljava/lang/Object;Ljava/lang/Object;)V accept accept + p 2 modelSupplier + p 1 id +c net/minecraft/class_4916$class_10407 net/minecraft/client/data/ModelProvider$ItemAssets + f Ljava/util/Map; field_55250 aliasedAssets + f Ljava/util/Map; field_55249 itemAssets + m (Lnet/minecraft/class_6880$class_6883;)Z method_65476 method_65476 + p 1 entry + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_7784$class_7489;)Ljava/util/concurrent/CompletableFuture; method_65473 writeAllToPath + p 1 writer + p 2 pathResolver + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_2960; method_65472 method_65472 + p 0 entryx + m (Lnet/minecraft/class_1792;)V method_65470 method_65470 + p 1 item + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;)V method_65475 method_65475 + p 1 base + p 2 alias + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_10434;)V method_65471 accept + p 1 item + p 2 asset + m (Lnet/minecraft/class_7784$class_7489;Lnet/minecraft/class_1792;)Ljava/nio/file/Path; method_65474 method_65474 + p 1 item + m ()V method_65469 resolveAndValidate +c net/minecraft/class_4916$class_10406 net/minecraft/client/data/ModelProvider$BlockStateSuppliers + f Ljava/util/Map; field_55248 blockStateSuppliers + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_2960; method_65464 method_65464 + p 0 entryx + m (Lnet/minecraft/class_6880$class_6883;)Z method_65467 method_65467 + p 1 entry + m (Lnet/minecraft/class_6880$class_6883;)Z method_65468 method_65468 + p 0 entry + m (Lnet/minecraft/class_4917;)V method_65463 accept + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_7784$class_7489;)Ljava/util/concurrent/CompletableFuture; method_65465 writeAllToPath + p 2 pathResolver + p 1 writer + m (Lnet/minecraft/class_7784$class_7489;Lnet/minecraft/class_2248;)Ljava/nio/file/Path; method_65466 method_65466 + p 1 block + m (Ljava/lang/Object;)V accept accept + p 1 blockStateSupplier + m ()V method_65462 validate +c net/minecraft/class_4915 net/minecraft/client/data/ItemModelGenerator + f Ljava/util/function/BiConsumer; field_55246 modelCollector + f Lnet/minecraft/class_2960; field_56347 HELMET_TRIM_ID_PREFIX + f Lnet/minecraft/class_2960; field_56349 LEGGINGS_TRIM_ID_PREFIX + f Ljava/util/List; field_55244 TRIM_MATERIALS + f Lnet/minecraft/class_10401; field_55239 UNTINTED + f Lnet/minecraft/class_10405; field_55245 output + f Lnet/minecraft/class_2960; field_56350 BOOTS_TRIM_ID_PREFIX + f Lnet/minecraft/class_2960; field_56348 CHESTPLATE_TRIM_ID_PREFIX + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;Lnet/minecraft/class_4942;)V method_65441 registerWithTextureSource + p 1 item + p 2 textureSourceItem + p 3 model + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V method_48742 uploadArmor + p 3 layer1 + p 4 layer2 + p 1 id + p 2 layer0 + m (Lnet/minecraft/class_1792;Ljava/lang/String;Lnet/minecraft/class_10401;)V method_65437 registerWithTintedLayer + p 2 layer1Suffix + p 3 tint + p 1 item + m (Lnet/minecraft/class_1792;)V method_75342 registerSpear + p 1 item + m (Lnet/minecraft/class_1792;)Ljava/util/List; method_65440 createCompassRangeDispatchEntries + p 1 item + m (Lnet/minecraft/class_1792;)V method_65449 registerBrush + p 1 item + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;Z)V method_65429 registerArmor + p 1 item + p 2 equipmentKey + p 3 trimIdPrefix + p 4 dyeable + m (Lnet/minecraft/class_1792;)V method_65455 registerPotion + p 1 item + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_4942;)V method_65442 register + p 1 item + p 2 model + m (Lnet/minecraft/class_1792;)V method_65445 registerBundle + p 1 item + m (Lnet/minecraft/class_1792;)V method_65457 registerWithDyeableOverlay + p 1 item + m (Lnet/minecraft/class_1792;)V method_65447 registerCrossbow + p 1 item + m (Lnet/minecraft/class_1792;)V method_65451 registerGoatHorn + p 1 item + m (Lnet/minecraft/class_1792;)V method_65453 registerWithInHandModel + p 1 item + m (Ljava/lang/String;)Lnet/minecraft/class_2960; method_67260 getTrimAssetIdPrefix + p 0 prefix + m (Lnet/minecraft/class_1792;Ljava/lang/String;Lnet/minecraft/class_4942;)Lnet/minecraft/class_2960; method_65438 registerSubModel + p 3 model + p 1 item + p 2 suffix + m (Lnet/minecraft/class_1792;)V method_65443 registerCompass + p 1 item + m (Lnet/minecraft/class_10439$class_10441;Lnet/minecraft/class_10439$class_10441;)Lnet/minecraft/class_10439$class_10441; method_65439 createModelWithInHandVariant + p 1 inHandModel + p 0 model + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_2960;)V method_65430 registerPotionTinted + p 2 model + p 1 item + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_10401;)V method_65433 registerWithTintedOverlay + p 2 tint + p 1 item + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_4942;)Lnet/minecraft/class_2960; method_65434 upload + p 1 item + p 2 model + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;Lnet/minecraft/class_4942;)Lnet/minecraft/class_2960; method_65432 uploadWithTextureSource + p 1 item + p 3 model + p 2 textureSourceItem + m (Lnet/minecraft/class_1792;I)V method_76755 registerWithTintedOverlay + p 2 tint + p 1 item + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_65431 uploadTwoLayers + p 3 layer1 + p 1 item + p 2 layer0 + m (Lnet/minecraft/class_1792;)V method_65426 register + p 1 item + m (Lnet/minecraft/class_1792;)V method_65448 registerWithBrokenCondition + p 1 item + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_10460;Lnet/minecraft/class_10439$class_10441;Lnet/minecraft/class_10439$class_10441;)V method_65436 registerCondition + p 1 item + p 2 property + p 3 onTrue + p 4 onFalse + m (Lnet/minecraft/class_10405;Ljava/util/function/BiConsumer;)V + p 2 modelCollector + p 1 output + m (Lnet/minecraft/class_1792;)V method_65444 registerRecoveryCompass + p 1 item + m (Lnet/minecraft/class_1792;)V method_65456 registerTippedArrow + p 1 item + m ()V method_25731 register + m (Lnet/minecraft/class_1792;I)V method_65427 registerDyeable + p 1 item + p 2 defaultColor + m (Lnet/minecraft/class_1792;)V method_65446 registerBow + p 1 item + m (Lnet/minecraft/class_1792;)V method_65452 registerShield + p 1 item + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_48517 uploadArmor + p 3 layer1 + p 1 id + p 2 layer0 + m (Lnet/minecraft/class_1792;)V method_65454 registerTrident + p 1 item + m (Lnet/minecraft/class_1792;)V method_43229 registerClock + p 1 clock + m (Lnet/minecraft/class_1792;)V method_65450 registerFishingRod + p 1 item + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_4942;Ljava/lang/String;)Lnet/minecraft/class_2960; method_65435 uploadOpenBundleModel + p 3 textureSuffix + p 2 model + p 1 item +c net/minecraft/class_4915$class_8072 net/minecraft/client/data/ItemModelGenerator$TrimMaterial + f Lnet/minecraft/class_5321; comp_3367 materialKey + f Lnet/minecraft/class_10714; comp_3607 assets + m ()Lnet/minecraft/class_5321; comp_3367 materialKey + m ()Lnet/minecraft/class_10714; comp_3607 assets + m (Lnet/minecraft/class_10714;Lnet/minecraft/class_5321;)V + p 1 assets + p 2 materialKey +c net/minecraft/class_4917 net/minecraft/client/data/BlockModelDefinitionCreator + c A supplier of a block state JSON definition. + m ()Lnet/minecraft/class_2248; method_25743 getBlock + m ()Lnet/minecraft/class_790; method_67844 createBlockModelDefinition +c net/minecraft/class_7193 net/minecraft/client/world/GeneratorOptionsHolder + f Lnet/minecraft/class_5350; comp_619 dataPackContents + f Lnet/minecraft/class_2378; comp_1027 dimensionOptionsRegistry + f Lnet/minecraft/class_5285; comp_616 generatorOptions + f Lnet/minecraft/class_7780; comp_1029 combinedDynamicRegistries + f Lnet/minecraft/class_7723; comp_1028 selectedDimensions + f Lnet/minecraft/class_7712; comp_1030 dataConfiguration + f Lnet/minecraft/class_10220; comp_3218 initialWorldCreationOptions + m (Lnet/minecraft/class_7726;Lnet/minecraft/class_7780;Lnet/minecraft/class_5350;Lnet/minecraft/class_7712;)V + p 1 worldGenSettings + p 2 combinedDynamicRegistries + p 3 dataPackContents + p 4 dataConfiguration + m ()V method_60345 initializeIndexedFeaturesLists + m (Lnet/minecraft/class_5285;Lnet/minecraft/class_7723;)Lnet/minecraft/class_7193; method_41864 with + p 2 selectedDimensions + p 1 generatorOptions + m ()Lnet/minecraft/class_5455$class_6890; method_45689 getCombinedRegistryManager + m (Lnet/minecraft/class_7193$class_7195;)Lnet/minecraft/class_7193; method_41866 apply + p 1 modifier + m ()Lnet/minecraft/class_5350; comp_619 dataPackContents + m ()Lnet/minecraft/class_2378; comp_1027 dimensionOptionsRegistry + m ()Lnet/minecraft/class_5285; comp_616 generatorOptions + m ()Lnet/minecraft/class_7780; comp_1029 combinedDynamicRegistries + m (Lnet/minecraft/class_7193$class_7194;)Lnet/minecraft/class_7193; method_45690 apply + p 1 modifier + m (Lnet/minecraft/class_5285;Lnet/minecraft/class_7723;Lnet/minecraft/class_7780;Lnet/minecraft/class_5350;Lnet/minecraft/class_7712;Lnet/minecraft/class_10220;)V + p 2 selectedDimensions + p 1 generatorOptions + p 4 dataPackContents + p 3 combinedDynamicRegistries + p 5 dataConfiguration + m ()Lnet/minecraft/class_10220; comp_3218 initialWorldCreationOptions + m ()Lnet/minecraft/class_7712; comp_1030 dataConfiguration + m ()Lnet/minecraft/class_7723; comp_1028 selectedDimensions + m (Lnet/minecraft/class_5285;Lnet/minecraft/class_2378;Lnet/minecraft/class_7723;Lnet/minecraft/class_7780;Lnet/minecraft/class_5350;Lnet/minecraft/class_7712;Lnet/minecraft/class_10220;)V + p 1 generatorOptions + p 2 dimensionOptionsRegistry + p 3 selectedDimensions + p 4 combinedDynamicRegistries + p 5 dataPackContents + p 6 dataConfiguration + p 7 initialWorldCreationOptions +c net/minecraft/class_7193$class_7195 net/minecraft/client/world/GeneratorOptionsHolder$RegistryAwareModifier +c net/minecraft/class_7193$class_7194 net/minecraft/client/world/GeneratorOptionsHolder$Modifier +c net/minecraft/class_7190 net/minecraft/unused/packageinfo/PackageInfo7190 +c net/minecraft/class_7191 net/minecraft/client/font/BuiltinEmptyGlyph + f Lnet/minecraft/class_1011; field_37900 image + f Lnet/minecraft/class_7191; field_37899 MISSING + f Lnet/minecraft/class_7191; field_37898 WHITE + m (Lnet/minecraft/class_11642;)Lnet/minecraft/class_382; method_73407 bake + p 1 glyphBaker + m (IILnet/minecraft/class_7191$class_7192;)Lnet/minecraft/class_1011; method_41834 createRectImage + p 2 colorSupplier + p 0 width + p 1 height + m (II)I method_41835 method_41835 + p 0 x + p 1 y + m (II)I method_41833 method_41833 + p 1 y + p 0 x + m (Ljava/lang/String;ILjava/util/function/Supplier;)V + p 3 imageSupplier +c net/minecraft/class_7191$class_7192 net/minecraft/client/font/BuiltinEmptyGlyph$ColorSupplier + m (II)I getColor getColor + p 2 y + p 1 x +c net/minecraft/class_7168 net/minecraft/client/gl/GlTimer + f Lcom/mojang/blaze3d/systems/GpuQuery; field_63819 query + f Lcom/mojang/blaze3d/systems/CommandEncoder; field_63818 encoder + m ()Z method_74961 isRunning + m ()Lnet/minecraft/class_7168; method_41719 getInstance + m ()Lnet/minecraft/class_7168$class_7169; method_41721 endProfile + m ()V method_41720 beginProfile +c net/minecraft/class_7168$class_7169 net/minecraft/client/gl/GlTimer$Query + f Lcom/mojang/blaze3d/systems/GpuQuery; field_63820 query + f J field_37846 CLOSED + f J field_63821 result + f J field_37845 MISSING + m ()V method_41722 close + m (Lcom/mojang/blaze3d/systems/GpuQuery;)V + p 1 query + m ()J method_41724 queryResult + m ()Z method_41723 isResultAvailable +c net/minecraft/class_7168$class_7170 net/minecraft/client/gl/GlTimer$InstanceHolder + f Lnet/minecraft/class_7168; field_37849 INSTANCE + m ()Lnet/minecraft/class_7168; method_41725 create +c net/minecraft/class_7165 net/minecraft/world/block/NeighborUpdater + f [Lnet/minecraft/class_2350; field_37839 UPDATE_ORDER + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_2350;Lnet/minecraft/class_9904;)V method_41705 updateNeighbors + p 3 except + p 4 orientation + p 1 pos + p 2 sourceBlock + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_9904;Z)V method_41703 updateNeighbor + p 1 state + p 2 pos + p 3 sourceBlock + p 4 orientation + p 5 notify + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_9904;Z)V method_41708 tryNeighborUpdate + p 0 world + p 1 state + p 2 pos + p 3 sourceBlock + p 4 orientation + p 5 notify + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;II)V method_42392 replaceWithStateForNeighborUpdate + p 4 neighborPos + p 5 flags + p 6 maxUpdateDepth + p 1 direction + p 2 neighborState + p 3 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_9904;)V method_41704 updateNeighbor + p 1 pos + p 3 orientation + p 2 sourceBlock + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;II)V method_42393 replaceWithStateForNeighborUpdate + p 6 maxUpdateDepth + p 4 neighborState + p 5 flags + p 2 pos + p 3 neighborPos + p 0 world + p 1 direction +c net/minecraft/class_8496 net/minecraft/client/QuickPlay + f Lnet/minecraft/class_2561; field_44555 ERROR_INVALID_IDENTIFIER + f Lnet/minecraft/class_2561; field_44556 ERROR_REALM_CONNECT + f Lnet/minecraft/class_2561; field_44554 ERROR_TITLE + f Lorg/slf4j/Logger; field_60575 LOGGER + f Lnet/minecraft/class_2561; field_44560 TO_REALMS + f Lnet/minecraft/class_2561; field_44559 TO_WORLD + f Lnet/minecraft/class_2561; field_44557 ERROR_REALM_PERMISSION + f Lnet/minecraft/class_2561; field_44558 TO_TITLE + m (Lnet/minecraft/class_310;Lnet/minecraft/class_542$class_11396;Lnet/minecraft/class_4341;)V method_51260 startQuickPlay + p 2 realmsClient + p 1 variant + p 0 client + m (Lnet/minecraft/class_310;Ljava/lang/String;)V method_51263 startMultiplayer + p 1 serverAddress + p 0 client + m (Lnet/minecraft/class_310;Lnet/minecraft/class_4341;Ljava/lang/String;)V method_51259 startRealms + p 2 realmId + p 0 client + p 1 realmsClient + m (Lnet/minecraft/class_310;Ljava/lang/String;)V method_51261 startSingleplayer + p 0 client + p 1 levelName + m (Lnet/minecraft/class_32;)Ljava/lang/String; method_71648 getLatestLevelName + p 0 storage + m (JLnet/minecraft/class_4877;)Z method_51258 method_51258 + p 2 server +c net/minecraft/class_8497 net/minecraft/client/QuickPlayLogger + f Lorg/slf4j/Logger; field_44562 LOGGER + f Lnet/minecraft/class_8497$class_8499; field_44565 world + f Lnet/minecraft/class_8497; field_44561 NOOP + f Lcom/google/gson/Gson; field_44563 GSON + f Ljava/nio/file/Path; field_44564 path + m (Ljava/lang/String;)Lnet/minecraft/class_8497; method_51267 create + p 0 relativePath + m (Lnet/minecraft/class_310;)V method_51265 save + p 1 client + m (Lnet/minecraft/class_8497$class_8500;Ljava/lang/String;Ljava/lang/String;)V method_51266 setWorld + p 3 name + p 1 worldType + p 2 id + m (Ljava/lang/String;)V + p 1 relativePath + m (Lcom/google/gson/JsonElement;)V method_51264 method_51264 + p 1 json +c net/minecraft/class_8497$class_8499 net/minecraft/client/QuickPlayLogger$QuickPlayWorld + f Lcom/mojang/serialization/MapCodec; field_44567 CODEC + f Lnet/minecraft/class_8497$class_8500; comp_1483 type + f Ljava/lang/String; comp_1485 name + f Ljava/lang/String; comp_1484 id + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51270 method_51270 + p 0 instance + m ()Ljava/lang/String; comp_1484 id + m ()Ljava/lang/String; comp_1485 name + m ()Lnet/minecraft/class_8497$class_8500; comp_1483 type + m (Lnet/minecraft/class_8497$class_8500;Ljava/lang/String;Ljava/lang/String;)V + p 1 type + p 2 id + p 3 name +c net/minecraft/class_8497$class_8500 net/minecraft/client/QuickPlayLogger$WorldType + f Ljava/lang/String; field_44572 id + f Lcom/mojang/serialization/Codec; field_44571 CODEC + f Lnet/minecraft/class_8497$class_8500; field_44569 MULTIPLAYER + f Lnet/minecraft/class_8497$class_8500; field_44568 SINGLEPLAYER + f Lnet/minecraft/class_8497$class_8500; field_44570 REALMS + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_8497$class_8498 net/minecraft/client/QuickPlayLogger$Log + f Lnet/minecraft/class_1934; comp_1482 gameMode + f Lcom/mojang/serialization/Codec; field_44566 CODEC + f Ljava/time/Instant; comp_1481 lastPlayedTime + f Lnet/minecraft/class_8497$class_8499; comp_1480 quickPlayWorld + m ()Lnet/minecraft/class_1934; comp_1482 gameMode + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51269 method_51269 + p 0 instance + m ()Lnet/minecraft/class_8497$class_8499; comp_1480 quickPlayWorld + m ()Ljava/time/Instant; comp_1481 lastPlayedTime + m (Lnet/minecraft/class_8497$class_8499;Ljava/time/Instant;Lnet/minecraft/class_1934;)V + p 1 quickPlayWorld + p 2 lastPlayedTime + p 3 gameMode +c net/minecraft/class_7166 net/minecraft/client/font/SpaceFont + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_37842 codePointsToGlyphs + m (Ljava/util/Map;)V + p 1 codePointsToAdvances + m (Ljava/lang/Integer;Ljava/lang/Float;)V method_41716 method_41716 + p 1 codePoint + p 2 glyph +c net/minecraft/class_7166$class_8554 net/minecraft/client/font/SpaceFont$Loader + f Lcom/mojang/serialization/MapCodec; field_44791 CODEC + f Ljava/util/Map; comp_1517 advances + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51733 method_51733 + p 0 instance + m (Lnet/minecraft/class_3300;)Lnet/minecraft/class_390; method_51732 method_51732 + p 1 resourceManager + m ()Ljava/util/Map; comp_1517 advances + m (Ljava/util/Map;)V + p 1 advances +c net/minecraft/class_7164 net/minecraft/world/block/SimpleNeighborUpdater + f Lnet/minecraft/class_1937; field_37838 world + m (Lnet/minecraft/class_1937;)V + p 1 world +c net/minecraft/class_8492 net/minecraft/loot/function/ReferenceLootFunction + f Lorg/slf4j/Logger; field_44506 LOGGER + f Lnet/minecraft/class_5321; field_44507 name + f Lcom/mojang/serialization/MapCodec; field_45828 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53341 method_53341 + p 0 instance + m (Ljava/util/List;Lnet/minecraft/class_5321;)V + p 1 conditions + p 2 name + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_120$class_121; method_51224 builder + p 0 name + m (Lnet/minecraft/class_8492;)Lnet/minecraft/class_5321; method_53340 method_53340 + p 0 function + m (Lnet/minecraft/class_5321;Ljava/util/List;)Lnet/minecraft/class_117; method_51225 method_51225 + p 1 conditions +c net/minecraft/class_8490 net/minecraft/loot/LootDataType + f Lnet/minecraft/class_8490; field_44498 LOOT_TABLES + f Lnet/minecraft/class_8490; field_44497 ITEM_MODIFIERS + f Lnet/minecraft/class_8490; field_44496 PREDICATES + f Lcom/mojang/serialization/Codec; comp_2520 codec + f Lnet/minecraft/class_5321; comp_2519 registryKey + f Lnet/minecraft/class_8490$class_8491; comp_2522 validator + m ()Lnet/minecraft/class_8490$class_8491; method_51217 tableValidator + m (Lnet/minecraft/class_58;Lnet/minecraft/class_5321;Lnet/minecraft/class_46;)V method_51207 method_51207 + p 0 reporter + p 2 value + p 1 key + m (Lnet/minecraft/class_58;Lnet/minecraft/class_5321;Ljava/lang/Object;)V method_51209 validate + p 3 value + p 1 reporter + p 2 key + m ()Lnet/minecraft/class_8490$class_8491; method_51216 simpleValidator + m (Lnet/minecraft/class_58;Lnet/minecraft/class_5321;Lnet/minecraft/class_52;)V method_51208 method_51208 + p 2 value + p 1 key + p 0 reporter + m ()Ljava/util/stream/Stream; method_51215 stream + m ()Lnet/minecraft/class_8490$class_8491; comp_2522 validator + m ()Lcom/mojang/serialization/Codec; comp_2520 codec + m ()Lnet/minecraft/class_5321; comp_2519 registryKey + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;Lnet/minecraft/class_8490$class_8491;)V + p 1 registryKey + p 2 codec + p 3 validator +c net/minecraft/class_8490$class_8491 net/minecraft/loot/LootDataType$Validator + m (Lnet/minecraft/class_58;Lnet/minecraft/class_5321;Ljava/lang/Object;)V run run + p 1 reporter + p 2 key + p 3 value +c net/minecraft/class_7179 net/minecraft/client/render/entity/animation/Transformation + f Lnet/minecraft/class_7179$class_7182; comp_595 target + f [Lnet/minecraft/class_7186; comp_596 keyframes + m ()Lnet/minecraft/class_7179$class_7182; comp_595 target + m ()[Lnet/minecraft/class_7186; comp_596 keyframes + m (Lnet/minecraft/class_7179$class_7182;[Lnet/minecraft/class_7186;)V + p 1 target + p 2 keyframes +c net/minecraft/class_7179$class_7180 net/minecraft/client/render/entity/animation/Transformation$Interpolation + m (Lorg/joml/Vector3f;F[Lnet/minecraft/class_7186;IIF)Lorg/joml/Vector3f; apply apply + p 1 dest + p 2 delta + p 5 end + p 6 scale + p 3 keyframes + p 4 start +c net/minecraft/class_7179$class_7181 net/minecraft/client/render/entity/animation/Transformation$Interpolations + f Lnet/minecraft/class_7179$class_7180; field_37884 LINEAR + f Lnet/minecraft/class_7179$class_7180; field_37885 CUBIC + m (Lorg/joml/Vector3f;F[Lnet/minecraft/class_7186;IIF)Lorg/joml/Vector3f; method_41816 method_41816 + p 2 keyframes + p 3 start + p 0 dest + p 1 delta + p 4 end + p 5 scale + m (Lorg/joml/Vector3f;F[Lnet/minecraft/class_7186;IIF)Lorg/joml/Vector3f; method_41815 method_41815 + p 0 dest + p 3 start + p 4 end + p 1 delta + p 2 keyframes + p 5 scale +c net/minecraft/class_7179$class_7182 net/minecraft/client/render/entity/animation/Transformation$Target + m (Lnet/minecraft/class_630;Lorg/joml/Vector3f;)V apply apply + p 1 modelPart + p 2 vec +c net/minecraft/class_7179$class_7183 net/minecraft/client/render/entity/animation/Transformation$Targets + f Lnet/minecraft/class_7179$class_7182; field_37887 ROTATE + f Lnet/minecraft/class_7179$class_7182; field_37888 SCALE + f Lnet/minecraft/class_7179$class_7182; field_37886 MOVE_ORIGIN +c net/minecraft/class_7172 net/minecraft/client/option/SimpleOption + c A class representing an option of a client. Exactly one instance of this class\nshould be created per option. See below for how to create an instance.\n\n

Option values

\n\n

This class allows querying and storing of the option value via {@link #getValue()}\nand {@link #setValue(Object)} respectively. Option values are automatically validated,\nand if the value is invalid, the value resets back to the default. Some validators will\ncoerce the invalid value (e.g. by clamping) into a valid one instead of failing; in this\ncase the new value is used.\n\n

Option values are serialized using codecs. Check DataFixerUpper code for the list of\navailable codecs. For serialization of enums, you can check the code in {@link GameOptions}.\n\n

If the value has changed, the {@code changeCallback} passed to the constructor will\ntrigger with the new value.\n\n

Callbacks

\n

This class itself cannot be extended by default; instead, the behavior of the option,\nsuch as validation or rendering of the {@link ClickableWidget} associated with the\noption, is customized by passing a {@link SimpleOption.Callbacks} instance. There are\nseveral existing callbacks that should cover most of the needs:\n\n

    \n
  • {@link SimpleOption.PotentialValuesBasedCallbacks}: The most simple cycling option.\nUseful for enums.
  • \n
  • {@link SimpleOption.AlternateValuesSupportingCyclingCallbacks}: An option with\nalternate potential values that are used only when certain conditions are met. This is\nused in vanilla to hide "Fabulous!" graphics option after the user cancelled the\nwarning.
  • \n
  • {@link SimpleOption.LazyCyclingCallbacks}: An option whose potential values are\ndetermined lazily.
  • \n
  • {@link SimpleOption.MaxSuppliableIntCallbacks}: A cycling option with an integer value\nthat has a fixed minimum value and a dynamic maximum value. Values outside the range are\nclamped. This is used in vanilla to implement the GUI Scale option.
  • \n
  • {@link SimpleOption.DoubleSliderCallbacks}: A slider option of a {@code double}\nbetween {@code 0.0} and {@code 1.0}. Values outside this range are considered invalid.
  • \n
  • {@link SimpleOption.ValidatingIntSliderCallbacks}: A slider option of an {@code int}\nwith a minimum and maximum values. Values outside this range are considered invalid.
  • \n
\n\n

See also several {@code ofBoolean} methods for options using boolean values.\n\n

Modifiers

\n

Slider option callbacks allow "modifiers" to be applied. The "slider progress value"\nis the value used to calculate the slider's progress and must be linear. The real value,\nsimply called "value" in {@code withModifier} methods, is the value used in\n{@link #getValue()} and passed to {@link #textGetter}.\n\n

Text

\nOptions themselves have names; the translation key of the option needs to be passed when\nconstructing this class. This corresponds to {@link #text}. Options also have the\nrendered text, composed of the option name and the value; the code obtains the value using\nthe {@code valueTextGetter} in the constructor. The getter takes the option's name and the\ncurrent value, and returns the text. Several static methods in {@link GameOptions} can\nbe used to format the name and the value. For options backed by an enum that implements\n{@link TranslatableOption}, {@link #enumValueText()} can be passed to {@code valueTextGetter}\nto obtain the rendered text from the enum.\n\nOptions can also have a tooltip, specified by passing {@code tooltipFactoryGetter}. If the\noption has no tooltips, you can pass {@link #emptyTooltip()}, and if the option always\nuses one tooltip, you can pass {@link #constantTooltip(Text)}. + f Lnet/minecraft/class_7172$class_7178; field_37865 callbacks + f Lnet/minecraft/class_7172$class_7277; field_37863 tooltipFactory + f Lorg/slf4j/Logger; field_37862 LOGGER + f Ljava/lang/Object; field_37868 value + f Lcom/mojang/serialization/Codec; field_38279 codec + f Ljava/util/function/Function; field_37864 textGetter + f Lnet/minecraft/class_7172$class_7173; field_38278 BOOLEAN + c A set of callbacks for boolean options.\n\n@apiNote See also several {@code ofBoolean} methods in this class which provide easier ways\nof creating a boolean option. + f Lnet/minecraft/class_7172$class_7303; field_41333 BOOLEAN_TEXT_GETTER + f Ljava/lang/Object; field_37866 defaultValue + f Ljava/util/function/Consumer; field_37867 changeCallback + f Lnet/minecraft/class_2561; field_38280 text + m ()Lnet/minecraft/class_7172$class_7178; method_41754 getCallbacks + m (Lnet/minecraft/class_315;)Lnet/minecraft/class_339; method_57701 createWidget + p 1 options + m ()Lcom/mojang/serialization/Codec; method_42404 getCodec + m ()Ljava/lang/Object; method_41753 getValue + c {@return the option's current value} + m (Ljava/lang/String;Lnet/minecraft/class_7172$class_7277;Lnet/minecraft/class_7172$class_7303;ZLjava/util/function/Consumer;)Lnet/minecraft/class_7172; method_47604 ofBoolean + p 1 tooltipFactory + p 0 key + p 3 defaultValue + p 2 valueTextGetter + p 4 changeCallback + m (Ljava/lang/Object;)V method_47606 method_47606 + p 0 value + m (Ljava/lang/Object;)V method_41748 setValue + c Sets the option's value.\n\n

The behavior for invalid {@code value} varies; the validator can either coerce\nthe passed value into a valid one by clamping etc, or fail the validation and reset to\nthe default value.\n\n

If the new value differs from the new value, {@link #changeCallback} will trigger. + p 1 value + m (Lnet/minecraft/class_2561;Ljava/lang/Object;)Lnet/minecraft/class_7919; method_47393 method_47393 + p 1 value + m (Lnet/minecraft/class_7172$class_7303;Ljava/lang/Object;)Lnet/minecraft/class_2561; method_42715 method_42715 + p 2 value + m (Lnet/minecraft/class_315;IIILjava/util/function/Consumer;)Lnet/minecraft/class_339; method_47603 createWidget + p 4 width + p 3 y + p 2 x + p 1 options + p 5 changeCallback + m (Ljava/lang/Object;)Lnet/minecraft/class_7919; method_47394 method_47394 + p 0 value + m ()Lnet/minecraft/class_7172$class_7277; method_42399 emptyTooltip + c {@return the getter for the {@code tooltipFactoryGetter} parameter of the constructor\nto indicate empty tooltips} + m (Ljava/lang/String;Lnet/minecraft/class_7172$class_7277;Z)Lnet/minecraft/class_7172; method_41749 ofBoolean + c Creates a boolean option. + p 1 tooltipFactory + p 2 defaultValue + p 0 key + m (Ljava/lang/String;ZLjava/util/function/Consumer;)Lnet/minecraft/class_7172; method_41751 ofBoolean + c Creates a boolean option. + p 0 key + p 2 changeCallback + p 1 defaultValue + m (Lnet/minecraft/class_2561;Ljava/lang/Boolean;)Lnet/minecraft/class_2561; method_47605 method_47605 + p 0 optionText + p 1 value + m (Ljava/lang/Boolean;)V method_42405 method_42405 + p 0 value + m (Ljava/lang/String;Z)Lnet/minecraft/class_7172; method_42402 ofBoolean + c Creates a boolean option. + p 1 defaultValue + p 0 key + m (Lnet/minecraft/class_315;III)Lnet/minecraft/class_339; method_18520 createWidget + p 2 x + p 1 options + p 4 width + p 3 y + m (Ljava/lang/Boolean;)V method_41752 method_41752 + p 0 value + m (Ljava/lang/String;Lnet/minecraft/class_7172$class_7277;Lnet/minecraft/class_7172$class_7303;Lnet/minecraft/class_7172$class_7178;Ljava/lang/Object;Ljava/util/function/Consumer;)V + p 6 changeCallback + p 5 defaultValue + p 4 callbacks + p 3 valueTextGetter + p 2 tooltipFactory + p 1 key + m (Ljava/lang/String;Lnet/minecraft/class_7172$class_7277;ZLjava/util/function/Consumer;)Lnet/minecraft/class_7172; method_41750 ofBoolean + c Creates a boolean option. + p 1 tooltipFactory + p 2 defaultValue + p 0 key + p 3 changeCallback + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_7172$class_7277; method_42717 constantTooltip + c {@return the getter for the {@code tooltipFactoryGetter} parameter of the constructor\nto indicate constant tooltips} + p 0 text + m (Ljava/lang/String;Lnet/minecraft/class_7172$class_7277;Lnet/minecraft/class_7172$class_7303;Lnet/minecraft/class_7172$class_7178;Lcom/mojang/serialization/Codec;Ljava/lang/Object;Ljava/util/function/Consumer;)V + p 6 defaultValue + p 7 changeCallback + p 4 callbacks + p 5 codec + p 2 tooltipFactory + p 3 valueTextGetter + p 1 key +c net/minecraft/class_7172$class_12139 net/minecraft/client/option/SimpleOption$CategoricalSliderCallbacks + f Ljava/util/List; comp_5052 values + f Lcom/mojang/serialization/Codec; comp_675 codec + m ()Ljava/util/List; comp_5052 values + m (Ljava/util/List;Lcom/mojang/serialization/Codec;)V + p 1 values + p 2 codec +c net/minecraft/class_7172$class_7273 net/minecraft/client/option/SimpleOption$AlternateValuesSupportingCyclingCallbacks + c A set of callbacks for a cycling option with alternate potential values that are used\nonly when certain conditions are met.\n\n@see Callbacks + f Ljava/util/function/BooleanSupplier; comp_673 altCondition + f Lnet/minecraft/class_7172$class_7305$class_7274; comp_674 valueSetter + f Ljava/util/List; comp_672 altValues + f Ljava/util/List; comp_671 values + f Lcom/mojang/serialization/Codec; comp_675 codec + m ()Ljava/util/List; comp_672 altValues + m ()Ljava/util/List; comp_671 values + m ()Ljava/util/function/BooleanSupplier; comp_673 altCondition + m (Ljava/util/List;Ljava/util/List;Ljava/util/function/BooleanSupplier;Lnet/minecraft/class_7172$class_7305$class_7274;Lcom/mojang/serialization/Codec;)V + p 1 values + p 2 altValues + p 3 altCondition + p 4 valueSetter + p 5 codec +c net/minecraft/class_7172$class_7277 net/minecraft/client/option/SimpleOption$TooltipFactory + m (Ljava/lang/Object;)Lnet/minecraft/class_7919; apply apply + p 1 value +c net/minecraft/class_7172$class_7276 net/minecraft/client/option/SimpleOption$LazyCyclingCallbacks + c A set of callbacks for a cycling option whose potential values are determined lazily.\n\n@see Callbacks + f Lcom/mojang/serialization/Codec; comp_675 codec + f Ljava/util/function/Supplier; comp_676 values + f Ljava/util/function/Function; comp_677 validateValue + m ()Ljava/util/function/Function; comp_677 validateValue + m ()Ljava/util/function/Supplier; comp_676 values + m (Ljava/util/function/Supplier;Ljava/util/function/Function;Lcom/mojang/serialization/Codec;)V + p 1 values + p 2 validateValue + p 3 codec +c net/minecraft/class_7172$class_7275 net/minecraft/client/option/SimpleOption$IntSliderCallbacks + m (Ljava/lang/Integer;)Ljava/util/Optional; method_75310 getNext + m (Ljava/util/function/IntFunction;Ljava/util/function/ToIntFunction;Z)Lnet/minecraft/class_7172$class_7176; method_42414 withModifier + c Creates a slider callback with the modifier applied. Note that when using this,\n{@link SimpleOption.IntSliderCallbacks} must be constructed using the slider progress\nvalue; the modifier is applied to that callbacks.\n\n@see Callback Modifiers + p 1 sliderProgressValueToValue + p 2 valueToSliderProgressValue + m (D)Ljava/lang/Integer; method_42412 toValue + m (Ljava/lang/Integer;)Ljava/util/Optional; method_75312 getPrevious + m (Ljava/lang/Integer;)D method_42415 toSliderProgress + m ()I comp_593 minInclusive + m ()I comp_594 maxInclusive +c net/minecraft/class_7172$class_7275$1 net/minecraft/client/option/SimpleOption$IntSliderCallbacks$1 +c net/minecraft/class_7172$class_7304 net/minecraft/client/option/SimpleOption$MaxSuppliableIntCallbacks + c A set of callbacks for a cycling option with a fixed minimum value and a dynamic\nmaximum value. This clamps the value during validation.\n\n@see Callbacks + f I comp_593 minInclusive + f I comp_1316 encodableMaxInclusive + f Ljava/util/function/IntSupplier; comp_690 maxSupplier + m (Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_42409 method_42409 + p 1 value + m (Ljava/lang/Integer;)Ljava/util/Optional; method_42408 validate + m ()Ljava/util/function/IntSupplier; comp_690 maxSupplier + m ()I comp_1316 encodableMaxInclusive + m (ILjava/util/function/IntSupplier;I)V + p 1 minInclusive + p 2 maxSupplier + p 3 encodableMaxInclusive +c net/minecraft/class_7172$class_7303 net/minecraft/client/option/SimpleOption$ValueTextGetter + m (Lnet/minecraft/class_2561;Ljava/lang/Object;)Lnet/minecraft/class_2561; toString toString + p 2 value + p 1 optionText +c net/minecraft/class_7172$class_7306 net/minecraft/client/option/SimpleOption$TypeChangeableCallbacks + m ()Z method_42722 isCycling +c net/minecraft/class_7172$class_7305 net/minecraft/client/option/SimpleOption$CyclingCallbacks + m ()Lnet/minecraft/class_5676$class_5680; method_42721 getValues + m (Lnet/minecraft/class_7172;Lnet/minecraft/class_315;Ljava/util/function/Consumer;Lnet/minecraft/class_5676;Ljava/lang/Object;)V method_42724 method_42724 + p 4 button + p 5 value + m (Lnet/minecraft/class_7172$class_7277;IIILnet/minecraft/class_315;Ljava/util/function/Consumer;Lnet/minecraft/class_7172;)Lnet/minecraft/class_339; method_42723 method_42723 + p 7 option + m ()Lnet/minecraft/class_7172$class_7305$class_7274; comp_674 valueSetter +c net/minecraft/class_7172$class_7305$class_7274 net/minecraft/client/option/SimpleOption$CyclingCallbacks$ValueSetter + m (Lnet/minecraft/class_7172;Ljava/lang/Object;)V set set + p 2 value + p 1 option +c net/minecraft/class_7172$class_7175 net/minecraft/client/option/SimpleOption$OptionSliderWidgetImpl + f Lnet/minecraft/class_7172$class_7277; field_37874 tooltipFactory + f Ljava/lang/Long; field_51513 timeToApply + f Z field_51514 shouldApplyImmediately + f Ljava/util/function/Consumer; field_41334 changeCallback + f Lnet/minecraft/class_7172; field_37872 option + f Lnet/minecraft/class_7172$class_7176; field_37873 callbacks + m (Lnet/minecraft/class_315;IIIILnet/minecraft/class_7172;Lnet/minecraft/class_7172$class_7176;Lnet/minecraft/class_7172$class_7277;Ljava/util/function/Consumer;Z)V + p 9 changeCallback + p 10 shouldApplyImmediately + p 7 callbacks + p 8 tooltipFactory + p 5 height + p 6 option + p 3 y + p 4 width + p 1 options + p 2 x + m ()V method_59868 applyPendingValue +c net/minecraft/class_7172$class_7174 net/minecraft/client/option/SimpleOption$ValidatingIntSliderCallbacks + c A set of callbacks for a slider of integer values with a fixed minimum and maximum values.\n\n@see Callbacks + f I comp_594 maxInclusive + f I comp_593 minInclusive + f Z comp_2661 applyValueImmediately + m (Ljava/lang/Integer;)Ljava/util/Optional; method_41761 validate + m (II)V + p 2 maxInclusive + p 1 minInclusive + m (IIZ)V + p 1 minInclusive + p 2 maxInclusive + p 3 applyValueImmediately +c net/minecraft/class_7172$class_7173 net/minecraft/client/option/SimpleOption$PotentialValuesBasedCallbacks + c A set of callbacks for a cycling option.\n\n@see Callbacks + f Ljava/util/List; comp_592 values + f Lcom/mojang/serialization/Codec; comp_675 codec + m ()Ljava/util/List; comp_592 values + m (Ljava/util/List;Lcom/mojang/serialization/Codec;)V + p 1 values + p 2 codec +c net/minecraft/class_7172$class_7178 net/minecraft/client/option/SimpleOption$Callbacks + c A set of callbacks to customize an option's behavior.\n\n@see Callbacks + m (Lnet/minecraft/class_7172$class_7277;Lnet/minecraft/class_315;IIILjava/util/function/Consumer;)Ljava/util/function/Function; method_41756 getWidgetCreator + c {@return the widget creator}\n\n

Widget creators are responsible for rendering the option into\na {@link ClickableWidget}. + p 1 tooltipFactory + p 3 x + p 2 gameOptions + p 5 width + p 4 y + p 6 changeCallback + m (Ljava/lang/Object;)Ljava/util/Optional; method_41758 validate + c {@return the validated value}\n\n

Returning {@link Optional#empty()} indicates the passed value is invalid and it\nshould reset to the default value. This method can also coerce the invalid value\ninto a valid one by clamping, etc. + p 1 value + m ()Lcom/mojang/serialization/Codec; comp_675 codec +c net/minecraft/class_7172$class_7177 net/minecraft/client/option/SimpleOption$DoubleSliderCallbacks + c A set of callbacks for a slider of values from {@code 0.0} to {@code 1.0} (both\ninclusive). There is only one instance of this callbacks.\n\n@see Callbacks + f Lnet/minecraft/class_7172$class_7177; field_37875 INSTANCE + m (Ljava/lang/Double;)D method_41771 toSliderProgress + m (Ljava/lang/Boolean;)Ljava/lang/Double; method_42419 method_42419 + p 0 value + m (Ljava/util/function/DoubleFunction;Ljava/util/function/ToDoubleFunction;)Lnet/minecraft/class_7172$class_7176; method_42420 withModifier + c Creates a slider callback with the modifier applied.\n\n@see Callback Modifiers + p 1 sliderProgressValueToValue + p 2 valueToSliderProgressValue + m (D)Ljava/lang/Double; method_41768 toValue + m (Ljava/lang/Double;)Ljava/util/Optional; method_41770 validate +c net/minecraft/class_7172$class_7177$1 net/minecraft/client/option/SimpleOption$DoubleSliderCallbacks$1 +c net/minecraft/class_7172$class_7176 net/minecraft/client/option/SimpleOption$SliderCallbacks + c A set of callbacks for slider options.\n\n@see Callbacks + m (Ljava/lang/Object;)Ljava/util/Optional; method_75313 getNext + p 1 value + m (D)Ljava/lang/Object; method_41763 toValue + c {@return the value from the progress ({@code 0.0} to {@code 1.0}, both inclusive) of the slider} + p 1 sliderProgress + m (Ljava/lang/Object;)Ljava/util/Optional; method_75311 getPrevious + p 1 value + m (Lnet/minecraft/class_315;IIILnet/minecraft/class_7172$class_7277;Ljava/util/function/Consumer;Lnet/minecraft/class_7172;)Lnet/minecraft/class_339; method_42725 method_42725 + p 7 option + m (Ljava/lang/Object;)D method_41765 toSliderProgress + c {@return the progress ({@code 0.0} to {@code 1.0}, both inclusive) of the slider} + p 1 value + m ()Z comp_2661 applyValueImmediately +c net/minecraft/class_7145 net/minecraft/world/gen/WorldPreset + f Lcom/mojang/serialization/Codec; field_37726 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_37725 CODEC + f Ljava/util/Map; field_37727 dimensions + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41586 method_41586 + p 0 instance + m (Lnet/minecraft/class_7145;)Ljava/util/Map; method_41588 method_41588 + p 0 preset + m (Lnet/minecraft/class_7145;)Lcom/mojang/serialization/DataResult; method_44351 validate + p 0 preset + m ()Lnet/minecraft/class_7723; method_45546 createDimensionsRegistryHolder + m ()Lcom/google/common/collect/ImmutableMap; method_57016 collectDimensions + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_5321;)V method_57015 method_57015 + p 2 dimensionKey + m ()Ljava/util/Optional; method_41584 getOverworld + m (Ljava/util/Map;)V + p 1 dimensions +c net/minecraft/class_7143 net/minecraft/world/gen/FlatLevelGeneratorPresets + f Lnet/minecraft/class_5321; field_37718 BOTTOMLESS_PIT + f Lnet/minecraft/class_5321; field_37719 DESERT + f Lnet/minecraft/class_5321; field_37716 OVERWORLD + f Lnet/minecraft/class_5321; field_37717 SNOWY_KINGDOM + f Lnet/minecraft/class_5321; field_37714 TUNNELERS_DREAM + f Lnet/minecraft/class_5321; field_37715 WATER_WORLD + f Lnet/minecraft/class_5321; field_37713 CLASSIC_FLAT + f Lnet/minecraft/class_5321; field_37720 REDSTONE_READY + f Lnet/minecraft/class_5321; field_37721 THE_VOID + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_41580 of + p 0 id + m (Lnet/minecraft/class_7891;)V method_41579 bootstrap + p 0 presetRegisterable +c net/minecraft/class_7143$class_7144 net/minecraft/world/gen/FlatLevelGeneratorPresets$Registrar + f Lnet/minecraft/class_7891; field_40917 presetRegisterable + m (Lnet/minecraft/class_7891;)V + p 1 presetRegisterable + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_1935;Lnet/minecraft/class_5321;Ljava/util/Set;ZZ[Lnet/minecraft/class_3229;)V method_41583 createAndRegister + p 1 registryKey + p 6 hasLakes + p 7 layers + p 2 icon + p 3 biome + p 4 structureSetKeys + p 5 hasFeatures + m ()V method_41581 bootstrap +c net/minecraft/class_7141 net/minecraft/world/gen/feature/SculkPatchFeatureConfig + f Lcom/mojang/serialization/Codec; field_37710 CODEC + f Lnet/minecraft/class_6017; comp_685 extraRareGrowths + f I comp_555 spreadAttempts + f I comp_556 growthRounds + f I comp_557 spreadRounds + f F comp_558 catalystChance + f I comp_553 chargeCount + f I comp_554 amountPerCharge + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41575 method_41575 + p 0 instance + m ()I comp_553 chargeCount + m ()F comp_558 catalystChance + m ()I comp_554 amountPerCharge + m ()I comp_555 spreadAttempts + m ()I comp_556 growthRounds + m ()I comp_557 spreadRounds + m ()Lnet/minecraft/class_6017; comp_685 extraRareGrowths + m (IIIIILnet/minecraft/class_6017;F)V + p 1 chargeCount + p 2 amountPerCharge + p 3 spreadAttempts + p 4 growthRounds + p 5 spreadRounds + p 6 extraRareGrowths + p 7 catalystChance +c net/minecraft/class_7142 net/minecraft/world/gen/FlatLevelGeneratorPreset + f Lcom/mojang/serialization/Codec; field_37712 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_37711 CODEC + f Lnet/minecraft/class_6880; comp_559 displayItem + f Lnet/minecraft/class_3232; comp_560 settings + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41576 method_41576 + p 0 instance + m (Lnet/minecraft/class_7142;)Lnet/minecraft/class_3232; method_41577 method_41577 + p 0 preset + m (Lnet/minecraft/class_7142;)Lnet/minecraft/class_6880; method_41578 method_41578 + p 0 preset + m ()Lnet/minecraft/class_3232; comp_560 settings + m ()Lnet/minecraft/class_6880; comp_559 displayItem + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_3232;)V + p 1 displayItem + p 2 settings +c net/minecraft/class_7140 net/minecraft/world/gen/feature/SculkPatchFeature + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_41571 canGenerate + p 2 pos + p 1 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_41572 method_41572 + p 1 pos2 +c net/minecraft/class_7147 net/minecraft/world/gen/structure/BasicTempleStructure + f I field_37742 width + f I field_37743 height + f Lnet/minecraft/class_7147$class_7148; field_37741 constructor + m (Lnet/minecraft/class_7147$class_7148;IILnet/minecraft/class_3195$class_7302;)V + p 3 height + p 4 config + p 1 constructor + p 2 width + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_6626;)V method_41605 method_41605 + p 2 collector + m (Lnet/minecraft/class_6626;Lnet/minecraft/class_3195$class_7149;)V method_41606 addPieces + p 2 context + p 1 collector +c net/minecraft/class_7147$class_7148 net/minecraft/world/gen/structure/BasicTempleStructure$Constructor + m (Lnet/minecraft/class_2919;II)Lnet/minecraft/class_3443; construct construct + p 3 startZ + p 2 startX + p 1 random +c net/minecraft/class_7156 net/minecraft/unused/packageinfo/PackageInfo7156 +c net/minecraft/class_7157 net/minecraft/command/CommandRegistryAccess + c A class that creates {@link RegistryWrapper} with ability to set a policy on\nhow to handle unrecognized tags.\n\n@apiNote You usually do not need to create your own instance; the command registration\ncallbacks (such as {@link net.minecraft.server.command.CommandManager} constructor)\nprovides an instance with proper configurations. + m ()Lnet/minecraft/class_7699; method_64226 getEnabledFeatures + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_7699;)Lnet/minecraft/class_7157; method_46722 of + p 1 enabledFeatures + p 0 registries +c net/minecraft/class_7157$1 net/minecraft/command/CommandRegistryAccess$1 + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_7225$class_7226;)Lnet/minecraft/class_7225$class_7226; method_56810 method_56810 + p 1 wrapper +c net/minecraft/class_7151 net/minecraft/world/gen/structure/StructureType + f Lnet/minecraft/class_7151; field_37767 WOODLAND_MANSION + f Lnet/minecraft/class_7151; field_37766 SWAMP_HUT + f Lnet/minecraft/class_7151; field_37765 STRONGHOLD + f Lnet/minecraft/class_7151; field_37764 SHIPWRECK + f Lnet/minecraft/class_7151; field_37763 RUINED_PORTAL + f Lnet/minecraft/class_7151; field_37762 OCEAN_RUIN + f Lnet/minecraft/class_7151; field_37761 OCEAN_MONUMENT + f Lnet/minecraft/class_7151; field_37760 NETHER_FOSSIL + f Lnet/minecraft/class_7151; field_37755 FORTRESS + f Lnet/minecraft/class_7151; field_37754 END_CITY + f Lnet/minecraft/class_7151; field_37753 DESERT_PYRAMID + f Lnet/minecraft/class_7151; field_37752 BURIED_TREASURE + f Lnet/minecraft/class_7151; field_37759 MINESHAFT + f Lnet/minecraft/class_7151; field_37758 JUNGLE_TEMPLE + f Lnet/minecraft/class_7151; field_37757 JIGSAW + f Lnet/minecraft/class_7151; field_37756 IGLOO + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_7151; method_41623 register + p 1 codec + p 0 id +c net/minecraft/class_7159 net/minecraft/world/block/ChainRestrictedNeighborUpdater + f I field_37833 depth + f Ljava/util/ArrayDeque; field_37831 queue + f Ljava/util/List; field_37832 pending + f Lorg/slf4j/Logger; field_37829 LOGGER + f Lnet/minecraft/class_1937; field_37830 world + f I field_38276 maxChainDepth + f Ljava/util/function/Consumer; field_62924 neighborUpdateCallback + m (Ljava/util/function/Consumer;)V method_74694 setNeighborUpdateCallback + p 1 neighborUpdateCallback + m (Lnet/minecraft/class_1937;I)V + p 2 maxChainDepth + p 1 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_7159$class_7162;)V method_41706 enqueue + p 1 pos + p 2 entry + m ()V method_41702 runQueuedUpdates +c net/minecraft/class_7159$class_7160 net/minecraft/world/block/ChainRestrictedNeighborUpdater$StatefulEntry + f Lnet/minecraft/class_2248; comp_586 sourceBlock + f Lnet/minecraft/class_9904; comp_2972 orientation + f Lnet/minecraft/class_2338; comp_585 pos + f Z comp_588 movedByPiston + f Lnet/minecraft/class_2680; comp_584 state + m ()Lnet/minecraft/class_2248; comp_586 sourceBlock + m ()Lnet/minecraft/class_9904; comp_2972 orientation + m ()Lnet/minecraft/class_2680; comp_584 state + m ()Z comp_588 movedByPiston + m ()Lnet/minecraft/class_2338; comp_585 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_9904;Z)V + p 1 state + p 2 pos + p 3 sourceBlock + p 4 orientation + p 5 movedByPiston +c net/minecraft/class_7159$class_7161 net/minecraft/world/block/ChainRestrictedNeighborUpdater$SixWayEntry + f Lnet/minecraft/class_2350; field_37836 except + f Lnet/minecraft/class_9904; field_52664 orientation + f Lnet/minecraft/class_2338; field_37834 pos + f Lnet/minecraft/class_2248; field_37835 sourceBlock + f I field_37837 currentDirectionIndex + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_9904;Lnet/minecraft/class_2350;)V + p 1 pos + p 2 sourceBlock + p 3 orientation + p 4 except +c net/minecraft/class_7159$class_7162 net/minecraft/world/block/ChainRestrictedNeighborUpdater$Entry + m (Lnet/minecraft/class_1937;)Z method_41707 update + p 1 world + m (Ljava/util/function/Consumer;)V method_74695 runCallback + p 1 callback +c net/minecraft/class_7159$class_7272 net/minecraft/world/block/ChainRestrictedNeighborUpdater$StateReplacementEntry + f Lnet/minecraft/class_2680; comp_667 neighborState + f I comp_1344 updateLimit + f Lnet/minecraft/class_2338; comp_668 pos + f Lnet/minecraft/class_2338; comp_669 neighborPos + f Lnet/minecraft/class_2350; comp_666 direction + f I comp_670 updateFlags + m ()Lnet/minecraft/class_2680; comp_667 neighborState + m ()I comp_1344 updateLimit + m ()I comp_670 updateFlags + m ()Lnet/minecraft/class_2338; comp_669 neighborPos + m ()Lnet/minecraft/class_2338; comp_668 pos + m ()Lnet/minecraft/class_2350; comp_666 direction + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;II)V + p 1 direction + p 2 neighborState + p 3 pos + p 4 neighborPos + p 5 updateFlags + p 6 updateLimit +c net/minecraft/class_7159$class_7163 net/minecraft/world/block/ChainRestrictedNeighborUpdater$SimpleEntry + f Lnet/minecraft/class_2248; comp_590 sourceBlock + f Lnet/minecraft/class_9904; comp_2973 orientation + f Lnet/minecraft/class_2338; comp_589 pos + m ()Lnet/minecraft/class_2248; comp_590 sourceBlock + m ()Lnet/minecraft/class_2338; comp_589 pos + m ()Lnet/minecraft/class_9904; comp_2973 orientation + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_9904;)V + p 1 pos + p 2 sourceBlock + p 3 orientation +c net/minecraft/class_3680 net/minecraft/client/render/entity/model/CatEntityModel + c Represents the model of a {@linkplain CatEntity}.\n\n

Inherits the {@link OcelotEntityModel}. + f Lnet/minecraft/class_9953; field_52884 CAT_TRANSFORMER +c net/minecraft/class_10868 net/minecraft/client/texture/GlTexture + f I field_60565 refCount + f Z field_57883 closed + f I field_64515 UNINITIALIZED + f I field_64516 framebufferId + f I field_64517 depthGlId + f I field_57882 glId + f Lit/unimi/dsi/fastutil/ints/Int2IntMap; field_57885 depthTexToFramebufferIdCache + m (Lnet/minecraft/class_10874;I)I method_76596 createFramebuffer + p 1 bufferManager + p 2 depthGlId + m (Lnet/minecraft/class_10874;I)I method_68425 method_68425 + p 2 depthGlId + m ()I method_68427 getGlId + m ()V method_71636 decrementRefCount + m (ILjava/lang/String;Lcom/mojang/blaze3d/textures/TextureFormat;IIIII)V + p 8 glId + p 7 mipLevels + p 6 depthOrLayers + p 5 height + p 4 width + p 3 format + p 2 label + p 1 usage + m (Lnet/minecraft/class_10874;Lcom/mojang/blaze3d/textures/GpuTexture;)I method_68426 getOrCreateFramebuffer + p 1 bufferManager + p 2 depthTexture + m ()V method_71635 incrementRefCount + m ()V method_71637 free +c net/minecraft/class_2350 net/minecraft/util/math/Direction + c An enum representing 6 cardinal directions in Minecraft.\n\n

In Minecraft, the X axis determines the east-west direction, the Y axis determines\nthe up-down direction, and the Z axis determines the south-north direction (note\nthat positive-Z direction is south, not north). + f Lnet/minecraft/class_2382; field_11042 vec3i + f Lcom/mojang/serialization/Codec; field_57038 HORIZONTAL_QUARTER_TURNS_CODEC + f Lcom/google/common/collect/ImmutableList; field_61964 YXZ + f Ljava/lang/String; field_11046 id + f I field_11030 horizontalQuarterTurns + f Ljava/util/function/IntFunction; field_48449 INDEX_TO_VALUE_FUNCTION + f Lnet/minecraft/class_9139; field_48450 PACKET_CODEC + f Lnet/minecraft/class_243; field_53685 doubleVector + f [Lnet/minecraft/class_2350; field_11040 ALL + f Lcom/google/common/collect/ImmutableList; field_61965 YZX + f Lnet/minecraft/class_2350$class_2352; field_11044 direction + f Lnet/minecraft/class_3542$class_7292; field_29502 CODEC + f I field_11031 oppositeIndex + f Lnet/minecraft/class_2350$class_2351; field_11047 axis + f [Lnet/minecraft/class_2350; field_11038 VALUES + f [Lnet/minecraft/class_2350; field_11041 HORIZONTAL + f I field_11032 index + f Lorg/joml/Vector3fc; field_57039 floatVector + f Lcom/mojang/serialization/Codec; field_35088 VERTICAL_CODEC + f Lcom/mojang/serialization/Codec; field_57037 INDEX_CODEC + f Lnet/minecraft/class_2350; field_11043 NORTH + f Lnet/minecraft/class_2350; field_11039 WEST + f Lnet/minecraft/class_2350; field_11036 UP + f Lnet/minecraft/class_2350; field_11035 SOUTH + f Lnet/minecraft/class_2350; field_11034 EAST + f Lnet/minecraft/class_2350; field_11033 DOWN + m (IIILnet/minecraft/class_2350;)Lnet/minecraft/class_2350; method_62672 fromVector + c {@return the closest direction of the vector, or {@code fallback} for zero vector} + p 2 z + p 1 y + p 0 x + p 3 fallback + m (FFF)Lnet/minecraft/class_2350; method_10147 getFacing + p 2 z + p 0 x + p 1 y + m ()Lnet/minecraft/class_2350; method_10170 rotateYClockwise + m (Lnet/minecraft/class_2350$class_2352;Lnet/minecraft/class_2350$class_2351;)Lnet/minecraft/class_2350; method_10156 get + p 1 axis + p 0 direction + m (Lnet/minecraft/class_2350$class_2351;Lnet/minecraft/class_2350$class_2352;)Lnet/minecraft/class_2350; method_10169 from + p 1 direction + p 0 axis + m ()Lnet/minecraft/class_2350; method_35837 rotateZClockwise + m (I)Lnet/minecraft/class_2350; method_10139 fromHorizontalQuarterTurns + p 0 quarterTurns + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2350$class_2351;)Lnet/minecraft/class_2350; method_32801 getLookDirectionForAxis + p 1 axis + p 0 entity + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_2350; method_58251 getFacing + p 0 vec + m (I)Lnet/minecraft/class_2350; method_10143 byIndex + p 0 index + m (Lnet/minecraft/class_243;)Lcom/google/common/collect/ImmutableList; method_73163 getCollisionOrder + m ()I method_10146 getIndex + m (Ljava/lang/String;IIIILjava/lang/String;Lnet/minecraft/class_2350$class_2352;Lnet/minecraft/class_2350$class_2351;Lnet/minecraft/class_2382;)V + p 7 direction + p 8 axis + p 9 vector + p 3 index + p 4 oppositeIndex + p 5 horizontalQuarterTurns + p 6 id + m (Lnet/minecraft/class_2350$class_2351;)Lnet/minecraft/class_2350; method_35833 rotateClockwise + p 1 axis + m ()Lnet/minecraft/class_2350$class_2351; method_10166 getAxis + m ()Lnet/minecraft/class_2350; method_35836 rotateXCounterclockwise + m ()Lorg/joml/Vector3fc; method_68072 getFloatVector + m (Lnet/minecraft/class_2350;)I method_10141 method_10141 + p 0 direction + m ()Lorg/joml/Vector3f; method_23955 getUnitVector + m (Lnet/minecraft/class_2382;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2350; method_62674 fromVector + p 0 vec + p 1 fallback + m (Lnet/minecraft/class_2350;)Ljava/lang/Byte; method_68071 method_68071 + p 0 direction + m (DDD)Lnet/minecraft/class_2350; method_10142 getFacing + p 0 x + p 2 y + p 4 z + m ()Ljava/util/stream/Stream; method_42013 stream + m ()Lorg/joml/Quaternionf; method_23224 getRotationQuaternion + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;)[Lnet/minecraft/class_2350; method_10145 listClosest + c Helper function that returns the 3 directions given, followed by the 3 opposite given in opposite order. + p 0 first + p 1 second + p 2 third + m ()Lnet/minecraft/class_2382; method_62675 getVector + m ()Ljava/lang/String; method_10151 getId + m (Lorg/joml/Matrix4fc;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2350; method_23225 transform + p 1 direction + p 0 matrix + m (Lnet/minecraft/class_2350$class_2351;)Lnet/minecraft/class_2350; method_35834 rotateCounterclockwise + p 1 axis + m ()Lnet/minecraft/class_2350; method_10160 rotateYCounterclockwise + m (Lnet/minecraft/class_2350;)I method_10140 method_10140 + p 0 direction + m (Lnet/minecraft/class_1297;)[Lnet/minecraft/class_2350; method_10159 getEntityFacingOrder + p 0 entity + m (Lnet/minecraft/class_5819;)Ljava/util/Collection; method_42014 shuffle + c {@return a shuffled collection of all directions} + p 0 random + m (Lnet/minecraft/class_2350;)Ljava/lang/Byte; method_68070 method_68070 + p 0 direction + m ()Lnet/minecraft/class_243; method_62676 getDoubleVector + m ()Lnet/minecraft/class_2350; method_35835 rotateXClockwise + m ()I method_10148 getOffsetX + m (F)Z method_30928 pointsTo + c {@return whether the given yaw points to the direction}\n\n@implNote This returns whether the yaw can make an acute angle with the direction.\n\n

This always returns {@code false} for vertical directions. + p 1 yaw + m (Lnet/minecraft/class_2350;)Z method_10155 method_10155 + p 0 direction + m ()F method_10144 getPositiveHorizontalDegrees + m (Ljava/lang/String;)Lnet/minecraft/class_2350; method_10168 byId + c {@return a direction with the given {@code name}, or {@code null} if there is\nno such direction} + p 0 id + m (Lnet/minecraft/class_2350;)F method_62673 getHorizontalDegreesOrThrow + p 0 direction + m (D)Lnet/minecraft/class_2350; method_10150 fromHorizontalDegrees + p 0 angle + m ()Lnet/minecraft/class_2350; method_10153 getOpposite + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_2350; method_10162 random + p 0 random + m ()I method_10164 getOffsetY + m ()I method_10161 getHorizontalQuarterTurns + m ()Lnet/minecraft/class_2350$class_2352; method_10171 getDirection + m ()Lnet/minecraft/class_2350; method_35838 rotateZCounterclockwise + m ()I method_10165 getOffsetZ + m (Lnet/minecraft/class_2350;)Lcom/mojang/serialization/DataResult; method_38940 validateVertical + p 0 direction +c net/minecraft/class_2350$class_2351 net/minecraft/util/math/Direction$Axis + f [Lnet/minecraft/class_2350$class_2351; field_23780 VALUES + f Ljava/lang/String; field_11053 id + f Lnet/minecraft/class_3542$class_7292; field_25065 CODEC + f Lnet/minecraft/class_2350$class_2351; field_11048 X + f Lnet/minecraft/class_2350$class_2351; field_11051 Z + f Lnet/minecraft/class_2350$class_2351; field_11052 Y + m (Lnet/minecraft/class_2350;)Z method_10176 test + m ()Lnet/minecraft/class_2350; method_64923 getNegativeDirection + m ()Lnet/minecraft/class_2350; method_64922 getPositiveDirection + m (ZZZ)Z method_66548 choose + p 3 z + p 2 y + p 1 x + m ()Ljava/lang/String; method_10174 getId + m ()Lnet/minecraft/class_2350$class_2353; method_10180 getType + m (Ljava/lang/String;)Lnet/minecraft/class_2350$class_2351; method_10177 fromId + p 0 id + m ()Z method_10178 isVertical + m ()Z method_10179 isHorizontal + m (DDD)D method_10172 choose + p 3 y + p 5 z + p 1 x + m ()[Lnet/minecraft/class_2350; method_64924 getDirections + m (III)I method_10173 choose + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_2350$class_2351; method_16699 pickRandomAxis + p 0 random + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_2350$class_2353 net/minecraft/util/math/Direction$Type + f [Lnet/minecraft/class_2350; field_11061 facingArray + f [Lnet/minecraft/class_2350$class_2351; field_11065 axisArray + f Lnet/minecraft/class_2350$class_2353; field_11062 HORIZONTAL + f Lnet/minecraft/class_2350$class_2353; field_11064 VERTICAL + m (Ljava/lang/Object;)Z test test + p 1 direction + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_2350$class_2351; method_33465 randomAxis + p 1 random + m (Lnet/minecraft/class_5819;)Ljava/util/List; method_43342 getShuffled + p 1 random + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_2350; method_10183 random + p 1 random + m (Ljava/lang/String;I[Lnet/minecraft/class_2350;[Lnet/minecraft/class_2350$class_2351;)V + p 4 axisArray + p 3 facingArray + m ()Ljava/util/stream/Stream; method_29716 stream + m (Lnet/minecraft/class_2350;)Z method_10182 test + m ()I method_57092 getFacingCount +c net/minecraft/class_2350$class_2352 net/minecraft/util/math/Direction$AxisDirection + f I field_11059 offset + f Ljava/lang/String; field_11057 description + f Lnet/minecraft/class_2350$class_2352; field_11056 POSITIVE + f Lnet/minecraft/class_2350$class_2352; field_11060 NEGATIVE + m ()Lnet/minecraft/class_2350$class_2352; method_26424 getOpposite + m (Ljava/lang/String;IILjava/lang/String;)V + p 4 description + p 3 offset + m ()I method_10181 offset + m ()Ljava/lang/String; method_35839 getDescription +c net/minecraft/class_10869 net/minecraft/client/gl/VertexBufferManager + m (Lorg/lwjgl/opengl/GLCapabilities;Lnet/minecraft/class_10861;Ljava/util/Set;)Lnet/minecraft/class_10869; method_68429 create + p 0 capabilities + p 2 usedCapabilities + p 1 labeler + m (Lcom/mojang/blaze3d/vertex/VertexFormat;Lnet/minecraft/class_10859;)V method_68428 setupBuffer + p 2 into + p 1 format +c net/minecraft/class_10869$class_10871 net/minecraft/client/gl/VertexBufferManager$ARBVertexBufferManager + f Z field_60021 applyMesaWorkaround + f Ljava/util/Map; field_57891 cache + f Lnet/minecraft/class_10861; field_57892 labeler + m (Lnet/minecraft/class_10861;)V + p 1 labeler +c net/minecraft/class_10869$class_10870 net/minecraft/client/gl/VertexBufferManager$DefaultVertexBufferManager + f Lnet/minecraft/class_10861; field_57890 labeler + f Ljava/util/Map; field_57889 cache + m (Lnet/minecraft/class_10861;)V + p 1 labeler + m (Lcom/mojang/blaze3d/vertex/VertexFormat;Z)V method_68430 setupBuffer + p 0 format + p 1 vbaIsNew +c net/minecraft/class_10869$class_10872 net/minecraft/client/gl/VertexBufferManager$AllocatedBuffer + f I field_57893 glId + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_57894 vertexFormat + f Lnet/minecraft/class_10859; field_57895 buffer + m (ILcom/mojang/blaze3d/vertex/VertexFormat;Lnet/minecraft/class_10859;)V + p 2 vertexFormat + p 3 buffer + p 1 glId +c net/minecraft/class_3686 net/minecraft/datafixer/schema/Schema1904 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_2355 net/minecraft/util/math/EightWayDirection + f Ljava/util/Set; field_11078 directions + f Lnet/minecraft/class_2382; field_37995 offset + f Lnet/minecraft/class_2355; field_11076 NORTH_WEST + f Lnet/minecraft/class_2355; field_11075 EAST + f Lnet/minecraft/class_2355; field_11074 NORTH_EAST + f Lnet/minecraft/class_2355; field_11073 SOUTH + f Lnet/minecraft/class_2355; field_11072 WEST + f Lnet/minecraft/class_2355; field_11070 SOUTH_EAST + f Lnet/minecraft/class_2355; field_11069 NORTH + f Lnet/minecraft/class_2355; field_11068 SOUTH_WEST + m ()I method_42016 getOffsetZ + m ()Ljava/util/Set; method_10186 getDirections + m (Ljava/lang/String;I[Lnet/minecraft/class_2350;)V + p 3 directions + m ()I method_42015 getOffsetX +c net/minecraft/class_3687 net/minecraft/datafixer/schema/Schema1906 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_16054 method_16054 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_16052 method_16052 + p 2 name + p 0 schema + p 1 map +c net/minecraft/class_2356 net/minecraft/block/FlowerBlock + f Lnet/minecraft/class_265; field_11085 SHAPE + f Lnet/minecraft/class_9298; field_45775 stewEffects + f Lcom/mojang/serialization/MapCodec; field_46354 STEW_EFFECT_CODEC + f Lcom/mojang/serialization/MapCodec; field_46355 CODEC + m (Lnet/minecraft/class_6880;F)Lnet/minecraft/class_9298; method_54015 createStewEffectList + p 1 effectLengthInSeconds + p 0 effect + m (Lnet/minecraft/class_6880;FLnet/minecraft/class_4970$class_2251;)V + p 3 settings + p 2 effectLengthInSeconds + p 1 stewEffect + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54016 method_54016 + p 0 instance + m ()Lnet/minecraft/class_1293; method_65152 getContactEffect + m (Lnet/minecraft/class_9298;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 stewEffects +c net/minecraft/class_3688 net/minecraft/util/profiler/EmptyProfileResult + f Lnet/minecraft/class_3688; field_16265 INSTANCE +c net/minecraft/class_2357 net/minecraft/block/dispenser/DispenserBehavior + f Lorg/slf4j/Logger; field_34020 LOGGER + f Lnet/minecraft/class_2357; field_16902 NOOP + m ()V method_18346 registerDefaults + m (Lnet/minecraft/class_2342;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; dispense dispense + p 1 pointer + p 2 stack + m (Lnet/minecraft/class_2342;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_16812 doDispense + p 1 stack + p 0 pointer +c net/minecraft/class_2357$5 net/minecraft/block/dispenser/DispenserBehavior$5 + m (Lnet/minecraft/class_1792;)V method_66902 method_66902 + p 0 item +c net/minecraft/class_2357$4 net/minecraft/block/dispenser/DispenserBehavior$4 +c net/minecraft/class_2357$3 net/minecraft/block/dispenser/DispenserBehavior$3 + m (Lnet/minecraft/class_2342;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_66901 pickUpFluid + p 3 outputStack + p 2 inputStack + p 1 pointer + m (Lnet/minecraft/class_4970$class_4971;)Z method_66900 method_66900 + p 0 state +c net/minecraft/class_2357$2 net/minecraft/block/dispenser/DispenserBehavior$2 +c net/minecraft/class_2357$12 net/minecraft/block/dispenser/DispenserBehavior$12 + m (Lnet/minecraft/class_1792;)V method_66899 method_66899 + p 0 item +c net/minecraft/class_2357$11 net/minecraft/block/dispenser/DispenserBehavior$11 +c net/minecraft/class_2357$10 net/minecraft/block/dispenser/DispenserBehavior$10 + f Lnet/minecraft/class_2347; field_56153 fallback +c net/minecraft/class_2357$9 net/minecraft/block/dispenser/DispenserBehavior$9 + m (Lnet/minecraft/class_1492;)Z method_58766 method_58766 + p 0 donkey +c net/minecraft/class_2357$8 net/minecraft/block/dispenser/DispenserBehavior$8 + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_1531;)V method_58765 method_58765 + p 1 armorStand +c net/minecraft/class_2357$7 net/minecraft/block/dispenser/DispenserBehavior$7 + f Lnet/minecraft/class_2347; field_49137 fallbackBehavior +c net/minecraft/class_2357$14 net/minecraft/block/dispenser/DispenserBehavior$14 +c net/minecraft/class_2357$6 net/minecraft/block/dispenser/DispenserBehavior$6 +c net/minecraft/class_2357$13 net/minecraft/block/dispenser/DispenserBehavior$13 +c net/minecraft/class_2358 net/minecraft/block/FireBlock + f Lnet/minecraft/class_2746; field_11088 WEST + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_11091 spreadChances + f Lnet/minecraft/class_2746; field_11096 NORTH + f Lnet/minecraft/class_2758; field_11092 AGE + f Lnet/minecraft/class_2746; field_11093 UP + f Lnet/minecraft/class_2746; field_11094 EAST + f Ljava/util/function/Function; field_55760 shapeFunction + f Lcom/mojang/serialization/MapCodec; field_46352 CODEC + f Ljava/util/Map; field_11090 DIRECTION_PROPERTIES + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_11095 burnChances + f Lnet/minecraft/class_2746; field_11089 SOUTH + m (Lnet/minecraft/class_2248;II)V method_10189 registerFlammableBlock + p 1 block + p 3 spreadChance + p 2 burnChance + m (Ljava/util/Map;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66431 method_66431 + p 1 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_10193 areBlocksAroundFlammable + p 1 world + p 2 pos + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)I method_10194 getBurnChance + p 1 world + p 2 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ILnet/minecraft/class_5819;I)V method_10196 trySpreadingFire + p 5 currentAge + p 3 spreadFactor + p 4 random + p 1 world + p 2 pos + m (Lnet/minecraft/class_5819;)I method_26155 getFireTickDelay + p 0 random + m ()V method_10199 registerDefaultFlammables + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;I)Lnet/minecraft/class_2680; method_24855 getStateWithAge + p 1 world + p 3 age + p 2 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_10192 isRainingAround + p 2 pos + p 1 world + m (Lnet/minecraft/class_2680;)I method_10191 getBurnChance + p 1 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_10198 getStateForPosition + p 2 pos + p 1 world + m (Ljava/util/Map$Entry;)Z method_10197 method_10197 + p 0 entry + m (Lnet/minecraft/class_2680;)I method_10190 getSpreadChance + p 1 state + m ()Ljava/util/function/Function; method_66432 createShapeFunction +c net/minecraft/class_3682 net/minecraft/client/util/WindowProvider + f Lnet/minecraft/class_323; field_16255 monitorTracker + f Lnet/minecraft/class_310; field_16256 client + m (Lnet/minecraft/class_310;)V + p 1 client + m (Lnet/minecraft/class_543;Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_1041; method_16038 createWindow + p 1 settings + p 2 videoMode + p 3 title +c net/minecraft/class_3683 net/minecraft/client/render/entity/OcelotEntityRenderer + f Lnet/minecraft/class_2960; field_16259 TEXTURE + m ()Lnet/minecraft/class_10024; method_62495 createRenderState + m (Lnet/minecraft/class_10024;)Lnet/minecraft/class_2960; method_16046 getTexture + m (Lnet/minecraft/class_3701;Lnet/minecraft/class_10024;F)V method_62494 updateRenderState +c net/minecraft/class_3684 net/minecraft/client/render/entity/feature/CatCollarFeatureRenderer + f Lnet/minecraft/class_2960; field_16260 SKIN + f Lnet/minecraft/class_3680; field_53208 babyModel + f Lnet/minecraft/class_3680; field_53207 model + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;)V + p 1 context + p 2 loader + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10008;FF)V method_16047 render +c net/minecraft/class_3685 net/minecraft/client/util/RawTextureDataLoader + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_2960;)[I method_16049 loadRawTextureData + p 1 id + p 0 resourceManager +c net/minecraft/class_2354 net/minecraft/block/FenceBlock + f Ljava/util/function/Function; field_11066 cullingShapeFunction + f Lcom/mojang/serialization/MapCodec; field_46350 CODEC + m (Lnet/minecraft/class_2680;)Z method_26375 canConnectToFence + p 1 state + m (Lnet/minecraft/class_2680;ZLnet/minecraft/class_2350;)Z method_10184 canConnect + p 2 neighborIsFullSquare + p 1 state + p 3 dir +c net/minecraft/class_2348 net/minecraft/registry/SimpleDefaultedRegistry + c An implementation of {@link Registry} with a default ID and value for unknown lookups. + f Lnet/minecraft/class_2960; field_11014 defaultId + f Lnet/minecraft/class_6880$class_6883; field_11015 defaultEntry + m (Ljava/lang/String;Lnet/minecraft/class_5321;Lcom/mojang/serialization/Lifecycle;Z)V + p 4 intrusive + p 2 key + p 3 lifecycle + p 1 defaultId +c net/minecraft/class_2349 net/minecraft/block/FenceGateBlock + f Lnet/minecraft/class_2746; field_11024 IN_WALL + f Lnet/minecraft/class_2746; field_11021 POWERED + f Ljava/util/Map; field_55754 REGULAR_CULLING_SHAPES + f Ljava/util/Map; field_55755 IN_WALL_CULLING_SHAPES + f Ljava/util/Map; field_55756 REGULAR_OUTLINE_SHAPES + f Ljava/util/Map; field_55757 IN_WALL_OUTLINE_SHAPES + f Ljava/util/Map; field_55758 CLOSED_COLLISION_SHAPES + f Ljava/util/Map; field_55759 CLOSED_SIDES_SHAPES + f Lcom/mojang/serialization/MapCodec; field_46351 CODEC + f Lnet/minecraft/class_2746; field_11026 OPEN + f Lnet/minecraft/class_4719; field_42758 type + m (Lnet/minecraft/class_4719;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 type + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54013 method_54013 + p 0 instance + m (Lnet/minecraft/class_2680;)Z method_10138 isWall + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_16703 canWallConnect + p 0 state + p 1 side + m (Lnet/minecraft/class_2349;)Lnet/minecraft/class_4719; method_54014 method_54014 + p 0 block + m (Lnet/minecraft/class_265;)Lnet/minecraft/class_265; method_66429 method_66429 + p 0 shape + m (Lnet/minecraft/class_265;)Lnet/minecraft/class_265; method_66430 method_66430 + p 0 shape +c net/minecraft/class_10874 net/minecraft/client/gl/BufferManager + m ()I method_71023 createBuffer + m (ILjava/nio/ByteBuffer;I)V method_71029 setBufferData + p 3 usage + p 1 buffer + p 2 data + m (IJLjava/nio/ByteBuffer;I)V method_71027 setBufferSubData + p 5 usage + p 4 data + p 2 offset + p 1 buffer + m ()I method_68431 createFramebuffer + m (IIIIIIIIIIII)V method_68812 setupBlitFramebuffer + p 10 dstY1 + p 11 mask + p 12 filter + p 6 srcY1 + p 7 dstX0 + p 8 dstY0 + p 9 dstX1 + p 2 writeFramebuffer + p 3 srcX0 + p 4 srcY0 + p 5 srcX1 + p 1 readFramebuffer + m (Lorg/lwjgl/opengl/GLCapabilities;Ljava/util/Set;Lnet/minecraft/class_11541;)Lnet/minecraft/class_10874; method_68813 create + p 1 usedCapabilities + p 0 capabilities + p 2 deviceInfo + m (IIIII)V method_68432 setupFramebuffer + p 2 colorAttachment + p 1 framebuffer + p 4 mipLevel + p 3 depthAttachment + p 5 bindTarget + m (IJI)V method_71030 setBufferStorage + p 4 usage + p 1 buffer + p 2 size + m (IJJI)V method_71025 flushMappedBufferRange + p 4 length + p 6 usage + p 1 buffer + p 2 offset + m (IIJJJ)V method_72237 copyBufferSubData + p 2 toBuffer + p 3 readOffset + p 5 writeOffset + p 7 size + p 1 fromBuffer + m (IJI)V method_71028 setBufferData + p 1 buffer + p 2 size + p 4 usage + m (ILjava/nio/ByteBuffer;I)V method_71031 setBufferStorage + p 2 data + p 3 usage + p 1 buffer + m (IJJII)Ljava/nio/ByteBuffer; method_71026 mapBufferRange + p 6 access + p 7 usage + p 2 offset + p 1 buffer + p 4 length + m (II)V method_71024 unmapBuffer + p 1 buffer + p 2 usage +c net/minecraft/class_10874$class_10929 net/minecraft/client/gl/BufferManager$ARBBufferManager +c net/minecraft/class_10874$class_10930 net/minecraft/client/gl/BufferManager$DefaultBufferManager + m (I)I method_72698 getTarget +c net/minecraft/class_10877 net/minecraft/unused/packageinfo/PackageInfo10877 +c net/minecraft/class_10859 net/minecraft/client/gl/GlGpuBuffer + f Ljava/util/function/Supplier; field_57841 debugLabelSupplier + f Z field_57839 closed + f Ljava/nio/ByteBuffer; field_60010 backingBuffer + f I field_57842 id + f Lcom/mojang/jtracy/MemoryPool; field_57838 POOL + f Lnet/minecraft/class_10874; field_60011 bufferManager + m (Ljava/util/function/Supplier;Lnet/minecraft/class_10874;IJILjava/nio/ByteBuffer;)V + p 6 id + p 7 backingBuffer + p 1 debugLabelSupplier + p 2 bufferManager + p 3 usage + p 4 size +c net/minecraft/class_10859$class_11269 net/minecraft/client/gl/GlGpuBuffer$Mapped + f Ljava/lang/Runnable; field_60012 closer + f Z field_60015 closed + f Lnet/minecraft/class_10859; field_60013 backingBuffer + f Ljava/nio/ByteBuffer; field_60014 data + m (Ljava/lang/Runnable;Lnet/minecraft/class_10859;Ljava/nio/ByteBuffer;)V + p 1 closer + p 2 backingBuffer + p 3 data +c net/minecraft/class_2360 net/minecraft/block/FrostedIceBlock + f I field_31097 NEIGHBORS_CHECKED_ON_SCHEDULED_TICK + f I field_31098 NEIGHBORS_CHECKED_ON_NEIGHBOR_UPDATE + f Lcom/mojang/serialization/MapCodec; field_46358 CODEC + f I field_31096 MAX_AGE + f Lnet/minecraft/class_2758; field_11097 AGE + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_10201 increaseAge + p 2 world + p 3 pos + p 1 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;I)Z method_10202 canMelt + p 2 pos + p 3 maxNeighbors + p 1 world +c net/minecraft/class_2361 net/minecraft/util/collection/IdList + f Lit/unimi/dsi/fastutil/objects/Reference2IntMap; field_11100 idMap + f Ljava/util/List; field_11098 list + f I field_11099 nextId + m (I)Z method_35841 containsKey + p 1 index + m (I)V + p 1 initialSize + m (Ljava/lang/Object;)V method_10205 add + p 1 value + m (Ljava/lang/Object;I)V method_10203 set + p 1 value + p 2 id +c net/minecraft/class_3692 net/minecraft/util/profiler/ProfileResultImpl + f Ljava/util/Comparator; field_21825 COMPARATOR + f Ljava/util/Map; field_21826 locationInfos + f J field_16278 startTime + f J field_16276 endTime + f I field_16274 endTick + f I field_19383 tickDuration + f I field_16275 startTick + f Lcom/google/common/base/Splitter; field_21824 SPLITTER + f Lorg/slf4j/Logger; field_16279 LOGGER + f Lnet/minecraft/class_4748; field_21823 EMPTY_INFO + m (Ljava/lang/String;)Lnet/minecraft/class_3692$class_4747; method_24263 method_24263 + p 0 k + m (Ljava/lang/StringBuilder;ILjava/lang/String;J)V method_24258 method_24258 + p 3 marker + p 4 count + m (Ljava/lang/String;Ljava/lang/String;)Z method_24255 isSubpath + p 0 parent + p 1 path + m (Ljava/lang/StringBuilder;ILjava/lang/String;Lnet/minecraft/class_3692$class_4747;)V method_24257 method_24257 + p 3 name + p 4 info + m (JI)Ljava/lang/String; method_16063 asString + p 1 timeSpan + p 3 tickSpan + m (Ljava/util/Map;JIJI)V + p 2 startTime + p 4 startTick + p 5 endTime + p 7 endTick + p 1 locationInfos + m (ILjava/lang/String;Ljava/lang/StringBuilder;)V method_16061 appendTiming + p 3 sb + p 2 name + p 1 level + m (Ljava/lang/String;)Lnet/minecraft/class_4748; method_24262 getInfo + p 1 path + m (ILjava/lang/String;Lnet/minecraft/class_3692$class_4747;ILjava/lang/StringBuilder;)V method_24253 appendCounter + p 3 info + p 4 tickSpan + p 1 depth + p 2 name + p 5 sb + m (Ljava/lang/StringBuilder;I)Ljava/lang/StringBuilder; method_24256 indent + p 0 sb + p 1 size + m (Ljava/util/Map;Ljava/util/List;Ljava/lang/String;J)V method_24261 method_24261 + p 2 marker + p 3 count + m (Lnet/minecraft/class_3692$class_4747;)J method_24254 method_24254 + p 0 info + m (Ljava/util/Map;Ljava/lang/StringBuilder;I)V method_24260 appendCounterDump + p 2 sb + p 3 tickSpan + p 1 counters + m (IILjava/lang/StringBuilder;Ljava/util/Map$Entry;)V method_24252 method_24252 + p 4 entry + m ()Ljava/util/Map; method_24264 setupCounters + m (Ljava/util/Map;Ljava/lang/String;Lnet/minecraft/class_4748;)V method_24259 method_24259 + p 2 info + p 1 location +c net/minecraft/class_3692$class_4747 net/minecraft/util/profiler/ProfileResultImpl$CounterInfo + f Ljava/util/Map; field_21829 subCounters + f J field_21827 selfTime + f J field_21828 totalTime + m (Ljava/lang/String;)Lnet/minecraft/class_3692$class_4747; method_24266 method_24266 + p 0 k + m (Ljava/util/Iterator;J)V method_24267 add + p 1 pathIterator + p 2 time +c net/minecraft/class_3697 net/minecraft/entity/ai/goal/GoToBedAndSleepGoal + c Makes a {@link CatEntity} go to a bed and sleep. + f Lnet/minecraft/class_1451; field_16282 cat + m (Lnet/minecraft/class_1451;DI)V + p 4 range + p 2 speed + p 1 cat +c net/minecraft/class_2366 net/minecraft/block/GlazedTerracottaBlock + f Lcom/mojang/serialization/MapCodec; field_46362 CODEC +c net/minecraft/class_2369 net/minecraft/block/DirtPathBlock + f Lnet/minecraft/class_265; field_11106 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46335 CODEC +c net/minecraft/class_3693 net/minecraft/util/profiler/ReadableProfiler + m ()Ljava/util/Set; method_37168 getSampleTargets + c {@return a set of pairs of profiler location and sample kind} + m (Ljava/lang/String;)Lnet/minecraft/class_3533$class_4746; method_34696 getInfo + p 1 name + m ()Lnet/minecraft/class_3696; method_16064 getResult +c net/minecraft/class_2362 net/minecraft/block/FlowerPotBlock + f Ljava/util/Map; field_11103 CONTENT_TO_POTTED + f Lnet/minecraft/class_2248; field_11101 content + f Lcom/mojang/serialization/MapCodec; field_46356 CODEC + f Lnet/minecraft/class_265; field_11102 SHAPE + m ()Lnet/minecraft/class_2248; method_16231 getContent + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54017 method_54017 + p 0 instance + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 content + m (Lnet/minecraft/class_2362;)Lnet/minecraft/class_2248; method_54018 method_54018 + p 0 block + m ()Z method_31646 isEmpty + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_65160 getToggledState + p 1 state +c net/minecraft/class_3694 net/minecraft/util/profiler/DummyProfiler + f Lnet/minecraft/class_3694; field_16280 INSTANCE +c net/minecraft/class_2363 net/minecraft/block/AbstractFurnaceBlock + f Lnet/minecraft/class_2746; field_11105 LIT + f Lnet/minecraft/class_2754; field_11104 FACING + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)V method_17025 openScreen + p 3 player + p 1 world + p 2 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2609;)V method_64763 method_64763 + p 1 world + p 2 pos + p 3 state + p 4 blockEntity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2591;Lnet/minecraft/class_2591;)Lnet/minecraft/class_5558; method_31617 validateTicker + p 2 expectedType + p 0 world + p 1 givenType +c net/minecraft/class_3695 net/minecraft/util/profiler/Profiler + f Ljava/lang/String; field_29925 ROOT_NAME + m (Ljava/lang/String;)V method_15396 push + p 1 location + m ()V method_16066 endTick + m (Ljava/lang/String;)V method_39278 visit + p 1 marker + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_10214; method_64144 scoped + p 1 nameSupplier + m (I)V method_64152 setZoneColor + p 1 color + m ()V method_16065 startTick + m (J)V method_64153 addZoneValue + p 1 value + m (Lnet/minecraft/class_3695;Lnet/minecraft/class_3695;)Lnet/minecraft/class_3695; method_64154 union + p 0 first + p 1 second + m (Ljava/lang/String;)V method_64155 addZoneText + p 1 label + m (Ljava/util/function/Supplier;I)V method_24271 visit + c Increment the visit count for a marker.\n\n

This is useful to keep track of number of calls made to performance-\nwise expensive methods.\n\n

This method is preferred if getting the marker is costly; the\nsupplier won't be called if the profiler is disabled. + p 2 num + p 1 markerGetter + c the getter for a unique marker + m (Lnet/minecraft/class_5949;)V method_37167 markSampleType + p 1 type + m (Ljava/lang/String;I)V method_24270 visit + c Increment the visit count for a marker.\n\n

This is useful to keep track of number of calls made to performance-\nwise expensive methods. + p 2 num + p 1 marker + c a unique marker + m (Ljava/util/function/Supplier;)V method_15400 push + p 1 locationGetter + m (Ljava/util/function/Supplier;)V method_15403 swap + p 1 locationGetter + m (Ljava/lang/String;)V method_15405 swap + p 1 location + m (Ljava/util/function/Supplier;)V method_39277 visit + p 1 markerGetter + m ()V method_15407 pop + m (Ljava/lang/String;)Lnet/minecraft/class_10214; method_64145 scoped + p 1 name +c net/minecraft/class_3695$class_10211 net/minecraft/util/profiler/Profiler$UnionProfiler + f Lnet/minecraft/class_3695; field_21966 second + f Lnet/minecraft/class_3695; field_21965 first + m (Lnet/minecraft/class_3695;Lnet/minecraft/class_3695;)V + p 2 second + p 1 first +c net/minecraft/class_3696 net/minecraft/util/profiler/ProfileResult + f C field_29924 SPLITTER_CHAR + m ()Ljava/lang/String; method_34970 getRootTimings + m ()J method_16068 getStartTime + m (Ljava/lang/String;)Ljava/lang/String; method_21721 getHumanReadableName + p 0 path + m (Ljava/lang/String;)Ljava/util/List; method_16067 getTimings + p 1 parentPath + m ()I method_16070 getEndTick + m ()J method_16071 getTimeSpan + m (Ljava/nio/file/Path;)Z method_16069 save + p 1 path + m ()I method_16072 getStartTick + m ()J method_16073 getEndTime + m ()I method_16074 getTickSpan +c net/minecraft/class_2359 net/minecraft/util/collection/IndexedIterable + f I field_34829 ABSENT_RAW_ID + m (I)Ljava/lang/Object; method_39974 getOrThrow + c {@return the value at {@code index}}\n\n@throws IllegalArgumentException if the value is {@code null} + p 1 index + m (I)Ljava/lang/Object; method_10200 get + p 1 index + m (Ljava/lang/Object;)I method_56158 getRawIdOrThrow + p 1 value + m (Ljava/lang/Object;)I method_10206 getRawId + p 1 value + m ()I method_10204 size +c net/minecraft/class_10860 net/minecraft/client/gl/GlCommandEncoder + f I field_57845 temporaryFb1 + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_57847 currentPipeline + f I field_57846 temporaryFb2 + f Lnet/minecraft/class_10865; field_57844 backend + f Lnet/minecraft/class_5944; field_57849 currentProgram + f Lnet/minecraft/class_12224; field_63814 timerQuery + f Lorg/slf4j/Logger; field_57843 LOGGER + f Z field_57848 renderPassOpen + m ()V method_68346 closePass + m (Lnet/minecraft/class_10866;Ljava/util/Collection;)Z method_68351 setupRenderPass + p 1 pass + p 2 validationSkippedUniforms + m (Lnet/minecraft/class_10866;Ljava/util/Collection;Lcom/mojang/blaze3d/buffers/GpuBuffer;Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595;Ljava/util/Collection;Ljava/lang/Object;)V method_68355 drawObjectsWithRenderPass + p 5 validationSkippedUniforms + p 2 objects + p 1 pass + p 4 indexType + p 3 indexBuffer + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;)V method_68356 setPipelineAndApplyState + p 1 pipeline + m (Lnet/minecraft/class_10866;Ljava/lang/String;Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V method_68354 method_68354 + p 1 name + m (Lcom/mojang/blaze3d/textures/GpuTexture;IIII)V method_70806 validate + p 4 regionWidth + p 3 regionY + p 5 regionHeight + p 2 regionX + p 1 texture + m (Lnet/minecraft/class_10866;IIILcom/mojang/blaze3d/vertex/VertexFormat$class_5595;Lnet/minecraft/class_10867;I)V method_68353 drawObjectWithRenderPass + p 6 pipeline + p 5 indexType + p 7 instanceCount + p 2 baseVertex + p 1 pass + p 4 count + p 3 firstIndex + m ()Lnet/minecraft/class_10865; method_68369 getBackend + m (Lnet/minecraft/class_10866;IIILcom/mojang/blaze3d/vertex/VertexFormat$class_5595;I)V method_68352 drawBoundObjectWithRenderPass + p 6 instanceCount + p 5 indexType + p 4 count + p 3 firstIndex + p 2 baseVertex + p 1 pass + m (Lnet/minecraft/class_10865;)V + p 1 backend + m (Lcom/mojang/blaze3d/textures/GpuTexture;)V method_70805 validateColorAttachment + p 1 texture + m (Lcom/mojang/blaze3d/textures/GpuTexture;)V method_70807 validateDepthAttachment + p 1 texture +c net/minecraft/class_10861 net/minecraft/client/gl/DebugLabelManager + f Lorg/slf4j/Logger; field_57851 LOGGER + m (Ljava/util/function/Supplier;)V method_71166 pushDebugGroup + p 1 labelGetter + m (Lorg/lwjgl/opengl/GLCapabilities;ZLjava/util/Set;)Lnet/minecraft/class_10861; method_68376 create + p 2 usedCapabilities + p 0 capabilities + p 1 debugEnabled + m (Lnet/minecraft/class_5944;)V method_68372 labelShaderProgram + p 1 program + m (Lnet/minecraft/class_10869$class_10872;)V method_68375 labelAllocatedBuffer + p 1 buffer + m ()V method_71165 popDebugGroup + m (Lnet/minecraft/class_10859;)V method_68371 labelGlGpuBuffer + p 1 buffer + m (Lnet/minecraft/class_10868;)V method_68374 labelGlTexture + p 1 texture + m ()Z method_68370 isUsable + m (Lnet/minecraft/class_10141;)V method_68373 labelCompiledShader + p 1 shader +c net/minecraft/class_10861$class_10862 net/minecraft/client/gl/DebugLabelManager$KHRDebugLabelManager + f I field_57852 maxLabelLength +c net/minecraft/class_10861$class_10864 net/minecraft/client/gl/DebugLabelManager$EXTDebugLabelManager +c net/minecraft/class_10861$class_10863 net/minecraft/client/gl/DebugLabelManager$NoOpDebugLabelManager +c net/minecraft/class_10866 net/minecraft/client/gl/RenderPassImpl + f [Lcom/mojang/blaze3d/buffers/GpuBuffer; field_57869 vertexBuffers + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_57870 indexBuffer + f Z field_57879 closed + f Z field_57867 IS_DEVELOPMENT + f Z field_57878 hasDepth + f Lnet/minecraft/class_11219; field_57872 scissorState + f I field_60170 debugGroupPushCount + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595; field_57871 indexType + f Ljava/util/HashMap; field_57874 samplerUniforms + f Ljava/util/HashMap; field_57873 simpleUniforms + f Lnet/minecraft/class_10867; field_57868 pipeline + f Ljava/util/Set; field_57875 setSimpleUniforms + f Lnet/minecraft/class_10860; field_57877 resourceManager + m (Lnet/minecraft/class_10860;Z)V + p 1 resourceManager + p 2 hasDepth + m ()I method_70809 getScissorX + m ()Z method_68407 hasDepth + m ()Z method_70808 isScissorEnabled + m ()I method_70810 getScissorY + m ()I method_70811 getScissorWidth + m ()I method_70812 getScissorHeight +c net/minecraft/class_10866$class_12133 net/minecraft/client/gl/RenderPassImpl$SamplerUniform + f Lnet/minecraft/class_11391; comp_4995 view + f Lnet/minecraft/class_12134; comp_4996 sampler + m ()Lnet/minecraft/class_11391; comp_4995 view + m ()Lnet/minecraft/class_12134; comp_4996 sampler + m (Lnet/minecraft/class_11391;Lnet/minecraft/class_12134;)V + p 1 view + p 2 sampler +c net/minecraft/class_10867 net/minecraft/client/gl/CompiledShaderPipeline + f Lnet/minecraft/class_5944; comp_3802 program + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; comp_3801 info + m ()Lnet/minecraft/class_5944; comp_3802 program + m ()Lcom/mojang/blaze3d/pipeline/RenderPipeline; comp_3801 info + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_5944;)V + p 1 info + p 2 program +c net/minecraft/class_10865 net/minecraft/client/gl/GlBackend + f Z field_58038 allowGlArbDebugOutput + f Z field_58036 allowGlKhrDebug + f Lcom/mojang/blaze3d/systems/CommandEncoder; field_57854 commandEncoder + f Lnet/minecraft/class_12289; field_57859 defaultShaderSourceGetter + f Ljava/util/Set; field_58040 usedGlCapabilities + f Lnet/minecraft/class_11266; field_60017 gpuBufferManager + f I field_57857 maxTextureSize + f I field_64185 maxSupportedAnisotropy + f Lnet/minecraft/class_10874; field_57858 bufferManager + f Ljava/util/Map; field_57860 pipelineCompileCache + f I field_60018 uniformOffsetAlignment + f Z field_58035 allowGlArbVABinding + f Z field_58039 allowGlArbDirectAccess + f Lorg/slf4j/Logger; field_57853 LOGGER + f Z field_58037 allowExtDebugLabel + f Lnet/minecraft/class_10869; field_57862 vertexBufferManager + f Lnet/minecraft/class_1008; field_57855 glDebug + f Ljava/util/Map; field_57861 shaderCompileCache + f Z field_60016 allowGlBufferStorage + f Lnet/minecraft/class_10861; field_57856 debugLabelManager + m ()Lnet/minecraft/class_11266; method_71032 getGpuBufferManager + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;)Lnet/minecraft/class_10867; method_68381 compilePipelineCached + p 1 pipeline + m (Lnet/minecraft/class_2960;Lcom/mojang/blaze3d/shaders/ShaderType;Lnet/minecraft/class_10149;Lnet/minecraft/class_12289;)Lnet/minecraft/class_10141; method_68378 compileShader + p 4 sourceGetter + p 2 type + p 3 defines + p 1 id + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_12289;)Lnet/minecraft/class_10867; method_68383 precompilePipeline + m ()V method_72699 applyAmdCleanupHack + m (Lnet/minecraft/class_12289;Lnet/minecraft/class_10865$class_10154;)Lnet/minecraft/class_10141; method_68380 method_68380 + p 2 key + m ()I method_68403 determineMaxTextureSize + m (Lnet/minecraft/class_12289;Lcom/mojang/blaze3d/pipeline/RenderPipeline;)Lnet/minecraft/class_10867; method_68384 method_68384 + p 2 p + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;)Lnet/minecraft/class_10867; method_68382 method_68382 + p 1 p + m ()Lnet/minecraft/class_10874; method_68401 getBufferManager + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_12289;)Lnet/minecraft/class_10867; method_68392 compileRenderPipeline + p 2 sourceGetter + p 1 pipeline + m ()Lnet/minecraft/class_10861; method_68377 getDebugLabelManager + m (Lnet/minecraft/class_10865$class_10154;Lnet/minecraft/class_12289;)Lnet/minecraft/class_10141; method_68379 compileShader + p 1 key + p 2 sourceGetter + m ()Lnet/minecraft/class_10869; method_68402 getVertexBufferManager + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_12289;)Lnet/minecraft/class_5944; method_76229 compileProgram + p 1 pipeline + p 2 sourceGetter + m (JIZLnet/minecraft/class_12289;Z)V + p 1 contextId + p 3 debugVerbosity + p 4 sync + p 5 defaultShaderSourceGetter + p 6 renderDebugLabels +c net/minecraft/class_10865$class_10154 net/minecraft/client/gl/GlBackend$ShaderKey + f Lnet/minecraft/class_10149; comp_3110 defines + f Lnet/minecraft/class_2960; comp_3108 id + f Lcom/mojang/blaze3d/shaders/ShaderType; comp_3109 type + m ()Lnet/minecraft/class_10149; comp_3110 defines + m ()Lcom/mojang/blaze3d/shaders/ShaderType; comp_3109 type + m ()Lnet/minecraft/class_2960; comp_3108 id + m (Lnet/minecraft/class_2960;Lcom/mojang/blaze3d/shaders/ShaderType;Lnet/minecraft/class_10149;)V + p 1 id + p 2 type + p 3 defines +c net/minecraft/class_4990 net/minecraft/util/math/DirectionTransformation + f [[Lnet/minecraft/class_4990; field_56956 COMBINATIONS + f Ljava/lang/String; field_23289 name + f Lorg/joml/Matrix3fc; field_23288 matrix + f Lnet/minecraft/class_4998; field_23295 axisTransformation + f Z field_23293 flipY + f Z field_23294 flipZ + f Z field_23291 flipX + f [Lnet/minecraft/class_4990; field_56957 INVERSES + f Ljava/util/Map; field_23290 mappings + f Lnet/minecraft/class_4990; field_23305 ROT_120_NPP + f Lnet/minecraft/class_4990; field_23304 ROT_120_NPN + f Lnet/minecraft/class_4990; field_23307 ROT_120_PNP + f Lnet/minecraft/class_4990; field_23306 ROT_120_PNN + f Lnet/minecraft/class_4990; field_23300 ROT_180_FACE_XZ + f Lnet/minecraft/class_4990; field_23303 ROT_120_NNP + f Lnet/minecraft/class_4990; field_23302 ROT_120_NNN + f Lnet/minecraft/class_4990; field_23301 ROT_180_FACE_YZ + f Lnet/minecraft/class_4990; field_23309 ROT_120_PPP + f Lnet/minecraft/class_4990; field_23308 ROT_120_PPN + f Lnet/minecraft/class_4990; field_23310 ROT_180_EDGE_XY_NEG + f Lnet/minecraft/class_4990; field_23323 INVERT_X + f Lnet/minecraft/class_4990; field_23317 ROT_90_X_POS + f Lnet/minecraft/class_4990; field_23316 ROT_90_X_NEG + f Lnet/minecraft/class_4990; field_23319 ROT_90_Y_POS + f Lnet/minecraft/class_4990; field_23318 ROT_90_Y_NEG + f Lnet/minecraft/class_4990; field_23312 ROT_180_EDGE_XZ_NEG + f Lnet/minecraft/class_4990; field_23311 ROT_180_EDGE_XY_POS + f Lnet/minecraft/class_4990; field_23315 ROT_180_EDGE_YZ_POS + f Lnet/minecraft/class_4990; field_23314 ROT_180_EDGE_YZ_NEG + f Lnet/minecraft/class_4990; field_23313 ROT_180_EDGE_XZ_POS + f Lnet/minecraft/class_4990; field_23320 ROT_90_Z_NEG + f Lnet/minecraft/class_4990; field_23322 INVERSION + f Lnet/minecraft/class_4990; field_23321 ROT_90_Z_POS + f Lnet/minecraft/class_4990; field_23267 INVERT_Z + f Lnet/minecraft/class_4990; field_23266 INVERT_Y + f Lnet/minecraft/class_4990; field_23269 ROT_60_REF_NNP + f Lnet/minecraft/class_4990; field_23268 ROT_60_REF_NNN + f Lnet/minecraft/class_4990; field_23281 SWAP_NEG_XZ + f Lnet/minecraft/class_4990; field_23280 SWAP_NEG_YZ + f Lnet/minecraft/class_4990; field_23287 ROT_90_REF_Z_POS + f Lnet/minecraft/class_4990; field_23286 ROT_90_REF_Z_NEG + f Lnet/minecraft/class_4990; field_23283 ROT_90_REF_X_POS + f Lnet/minecraft/class_4990; field_23282 ROT_90_REF_X_NEG + f Lnet/minecraft/class_4990; field_23285 ROT_90_REF_Y_POS + f Lnet/minecraft/class_4990; field_23284 ROT_90_REF_Y_NEG + f Lnet/minecraft/class_4990; field_23275 ROT_60_REF_PPP + f Lnet/minecraft/class_4990; field_23274 ROT_60_REF_PPN + f Lnet/minecraft/class_4990; field_23277 SWAP_YZ + f Lnet/minecraft/class_4990; field_23276 SWAP_XY + f Lnet/minecraft/class_4990; field_23271 ROT_60_REF_NPP + f Lnet/minecraft/class_4990; field_23270 ROT_60_REF_NPN + f Lnet/minecraft/class_4990; field_23273 ROT_60_REF_PNP + f Lnet/minecraft/class_4990; field_23272 ROT_60_REF_PNN + f Lnet/minecraft/class_4990; field_23279 SWAP_NEG_XY + f Lnet/minecraft/class_4990; field_23278 SWAP_XZ + f Lnet/minecraft/class_4990; field_23292 IDENTITY + f Lnet/minecraft/class_4990; field_23299 ROT_180_FACE_XY + m (Lnet/minecraft/class_4990;Lnet/minecraft/class_4990;)Z method_26386 method_26386 + p 1 b + m ()Lorg/joml/Matrix3fc; method_35814 getMatrix + m (Lorg/joml/Vector3i;)Lorg/joml/Vector3i; method_75398 map + p 1 vec + m ()Lnet/minecraft/class_4998; method_75401 getAxisTransformation + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_4998;ZZZ)V + p 3 name + p 5 flipX + p 4 axisTransformation + p 7 flipZ + p 6 flipY + m (Lnet/minecraft/class_2350$class_2351;)Z method_26387 shouldFlipDirection + p 1 axis + m (Lnet/minecraft/class_5000;)Lnet/minecraft/class_5000; method_26389 mapJigsawOrientation + p 1 orientation + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_2350; method_75400 method_75400 + p 1 d + m ()Lnet/minecraft/class_4990; method_35813 inverse + m ()I method_75402 getIndex + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_2350; method_26388 map + p 1 direction + m (Lnet/minecraft/class_4990;)Lnet/minecraft/class_4990; method_26385 prepend + p 1 transformation + m (ZZZLnet/minecraft/class_4998;)I method_75399 toIndex + p 1 flipY + p 2 flipZ + p 3 axisTransformation + p 0 flipX + m (Lnet/minecraft/class_4990;)Lnet/minecraft/class_4990; method_26393 method_26393 + p 0 transformation + m (Lnet/minecraft/class_4990;)Lnet/minecraft/class_4990; method_26392 method_26392 + p 0 a +c net/minecraft/class_4996 net/minecraft/structure/rule/PosRuleTestType + f Lnet/minecraft/class_4996; field_23344 ALWAYS_TRUE + f Lnet/minecraft/class_4996; field_23346 AXIS_ALIGNED_LINEAR_POS + f Lnet/minecraft/class_4996; field_23345 LINEAR_POS + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_4996; method_26409 register + p 0 id + p 1 codec +c net/minecraft/class_1001 net/minecraft/client/render/entity/feature/TropicalFishColorFeatureRenderer + f Lnet/minecraft/class_615; field_4903 largeModel + f Lnet/minecraft/class_612; field_17157 smallModel + f Lnet/minecraft/class_2960; field_41647 SUNSTREAK_TEXTURE + f Lnet/minecraft/class_2960; field_41646 KOB_TEXTURE + f Lnet/minecraft/class_2960; field_41657 CLAYFISH_TEXTURE + f Lnet/minecraft/class_2960; field_41649 DASHER_TEXTURE + f Lnet/minecraft/class_2960; field_41648 SNOOPER_TEXTURE + f Lnet/minecraft/class_2960; field_41654 GLITTER_TEXTURE + f Lnet/minecraft/class_2960; field_41653 STRIPEY_TEXTURE + f Lnet/minecraft/class_2960; field_41656 BETTY_TEXTURE + f Lnet/minecraft/class_2960; field_41655 BLOCKFISH_TEXTURE + f Lnet/minecraft/class_2960; field_41650 BRINELY_TEXTURE + f Lnet/minecraft/class_2960; field_41652 FLOPPER_TEXTURE + f Lnet/minecraft/class_2960; field_41651 SPOTTY_TEXTURE + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10076;FF)V method_4205 render + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;)V + p 1 context + p 2 loader +c net/minecraft/class_2333 net/minecraft/block/EndPortalFrameBlock + f Lnet/minecraft/class_2754; field_10954 FACING + f Lnet/minecraft/class_2700; field_10957 completedFrame + f Lnet/minecraft/class_2746; field_10958 EYE + f Lcom/mojang/serialization/MapCodec; field_46345 CODEC + f Lnet/minecraft/class_265; field_10955 FRAME_WITH_EYE_SHAPE + f Lnet/minecraft/class_265; field_10956 FRAME_SHAPE + m ()Lnet/minecraft/class_2700; method_10054 getCompletedFramePattern +c net/minecraft/class_4995 net/minecraft/structure/rule/PosRuleTest + f Lcom/mojang/serialization/Codec; field_25007 BASE_CODEC + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_26406 test + p 3 pivot + p 4 random + p 1 originalPos + p 2 currentPos + m ()Lnet/minecraft/class_4996; method_26404 getType +c net/minecraft/class_1000 net/minecraft/client/render/entity/feature/SpiderEyesFeatureRenderer + f Lnet/minecraft/class_1921; field_4902 SKIN +c net/minecraft/class_3665 net/minecraft/client/render/model/ModelBakeSettings + f Lorg/joml/Matrix4fc; field_57009 TRANSFORM_NONE + m ()Lnet/minecraft/class_4590; method_3509 getRotation + m (Lnet/minecraft/class_2350;)Lorg/joml/Matrix4fc; method_68011 forward + p 1 facing + m (Lnet/minecraft/class_2350;)Lorg/joml/Matrix4fc; method_68012 reverse + p 1 facing +c net/minecraft/class_2334 net/minecraft/block/EndPortalBlock + f Lcom/mojang/serialization/MapCodec; field_46344 CODEC + f Lnet/minecraft/class_265; field_10959 SHAPE +c net/minecraft/class_3666 net/minecraft/world/gen/feature/EndSpikeFeatureConfig + f Lcom/mojang/serialization/Codec; field_24911 CODEC + f Z field_16207 crystalInvulnerable + f Ljava/util/List; field_16208 spikes + f Lnet/minecraft/class_2338; field_16206 crystalBeamTarget + m (ZLjava/util/List;Ljava/util/Optional;)V + p 1 crystalInvulnerable + p 3 crystalBeamTarget + p 2 spikes + m (ZLjava/util/List;Lnet/minecraft/class_2338;)V + p 1 crystalInvulnerable + p 2 spikes + p 3 crystalBeamTarget + m ()Lnet/minecraft/class_2338; method_15884 getPos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28790 method_28790 + p 0 instance + m ()Ljava/util/List; method_15885 getSpikes + m (Lnet/minecraft/class_3666;)Ljava/util/Optional; method_28789 method_28789 + p 0 config + m (Lnet/minecraft/class_3666;)Ljava/lang/Boolean; method_28792 method_28792 + p 0 config + m (Lnet/minecraft/class_3666;)Ljava/util/List; method_28791 method_28791 + p 0 config + m ()Z method_15883 isCrystalInvulnerable +c net/minecraft/class_2335 net/minecraft/util/math/AxisCycleDirection + f [Lnet/minecraft/class_2350$class_2351; field_10961 AXES + f [Lnet/minecraft/class_2335; field_10960 VALUES + f Lnet/minecraft/class_2335; field_10965 BACKWARD + f Lnet/minecraft/class_2335; field_10963 FORWARD + f Lnet/minecraft/class_2335; field_10962 NONE + m (IIILnet/minecraft/class_2350$class_2351;)I method_10056 choose + p 4 axis + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/class_2350$class_2351;)Lnet/minecraft/class_2350$class_2351; method_10058 cycle + p 1 axis + m (Lnet/minecraft/class_2350$class_2351;Lnet/minecraft/class_2350$class_2351;)Lnet/minecraft/class_2335; method_10057 between + p 0 from + p 1 to + m ()Lnet/minecraft/class_2335; method_10055 opposite + m (DDDLnet/minecraft/class_2350$class_2351;)D method_35819 choose + p 5 z + p 3 y + p 1 x + p 7 axis +c net/minecraft/class_4998 net/minecraft/util/math/AxisTransformation + f I field_63625 xMapping + f Lorg/joml/Matrix3fc; field_23369 matrix + f [[Lnet/minecraft/class_4998; field_57036 COMBINATIONS + f [Lnet/minecraft/class_4998; field_63628 INVERSE + f I field_63627 zMapping + f I field_63626 yMapping + f Lnet/minecraft/class_4998; field_23362 P123 + f Lnet/minecraft/class_4998; field_23367 P321 + f Lnet/minecraft/class_4998; field_23364 P132 + f Lnet/minecraft/class_4998; field_23363 P213 + f Lnet/minecraft/class_4998; field_23366 P312 + f Lnet/minecraft/class_4998; field_23365 P231 + m ()Lorg/joml/Matrix3fc; method_26416 getMatrix + m (Lnet/minecraft/class_4998;)Lnet/minecraft/class_4998; method_75501 method_75501 + p 0 a + m (Lorg/joml/Vector3f;)Lorg/joml/Vector3f; method_75498 map + p 1 vec + m (Lorg/joml/Vector3i;)Lorg/joml/Vector3i; method_75499 map + p 1 vec + m (IIILnet/minecraft/class_4998;)Z method_75495 method_75495 + p 3 transformation + m (Ljava/lang/String;IIII)V + p 5 zMapping + p 4 yMapping + p 3 xMapping + m (Lnet/minecraft/class_4998;)Lnet/minecraft/class_4998; method_26418 prepend + p 1 transformation + m ()Lnet/minecraft/class_4998; method_75493 getInverse + m (I)I method_75494 map + p 1 axis + m (Lnet/minecraft/class_2350$class_2351;)Lnet/minecraft/class_2350$class_2351; method_75497 map + p 1 axis + m (Lnet/minecraft/class_4998;Lnet/minecraft/class_4998;)Z method_75496 method_75496 + p 1 b +c net/minecraft/class_4997 net/minecraft/client/render/entity/model/StriderEntityModel + f Lnet/minecraft/class_630; field_27520 leftBottomBristle + f Ljava/lang/String; field_32564 RIGHT_BOTTOM_BRISTLE + c The key of the right bottom bristle model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_23354 leftLeg + f Ljava/lang/String; field_32565 RIGHT_MIDDLE_BRISTLE + c The key of the right middle bristle model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_23353 rightLeg + f Ljava/lang/String; field_32566 RIGHT_TOP_BRISTLE + c The key of the right top bristle model part, whose value is {@value}. + f Ljava/lang/String; field_32567 LEFT_TOP_BRISTLE + c The key of the left top bristle model part, whose value is {@value}. + f Ljava/lang/String; field_32568 LEFT_MIDDLE_BRISTLE + c The key of the left middle bristle model part, whose value is {@value}. + f Ljava/lang/String; field_32569 LEFT_BOTTOM_BRISTLE + c The key of the left bottom bristle model part, whose value is {@value}. + f Lnet/minecraft/class_9953; field_55115 BABY_TRANSFORMER + f Lnet/minecraft/class_630; field_23355 body + f Lnet/minecraft/class_630; field_27519 leftMiddleBristle + f Lnet/minecraft/class_630; field_27517 rightTopBristle + f Lnet/minecraft/class_630; field_27518 leftTopBristle + f Lnet/minecraft/class_630; field_27515 rightBottomBristle + f Lnet/minecraft/class_630; field_27516 rightMiddleBristle + m ()Lnet/minecraft/class_5607; method_32058 getTexturedModelData + m (Lnet/minecraft/class_10070;)V method_26414 setAngles +c net/minecraft/class_2336 net/minecraft/block/EnderChestBlock + f Lnet/minecraft/class_265; field_10967 SHAPE + f Lnet/minecraft/class_2746; field_10968 WATERLOGGED + f Lcom/mojang/serialization/MapCodec; field_46347 CODEC + f Lnet/minecraft/class_2561; field_17363 CONTAINER_NAME + f Lnet/minecraft/class_2754; field_10966 FACING + m (Lnet/minecraft/class_1730;ILnet/minecraft/class_1661;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1703; method_55773 method_55773 + p 3 player + p 2 playerInventory + p 1 syncId +c net/minecraft/class_4992 net/minecraft/structure/rule/AxisAlignedLinearPosRuleTest + f I field_23336 minDistance + f F field_23334 minChance + f I field_23337 maxDistance + f Lcom/mojang/serialization/MapCodec; field_24995 CODEC + f F field_23335 maxChance + f Lnet/minecraft/class_2350$class_2351; field_23338 axis + m (Lnet/minecraft/class_4992;)Lnet/minecraft/class_2350$class_2351; method_28961 method_28961 + p 0 ruleTest + m (Lnet/minecraft/class_4992;)Ljava/lang/Integer; method_28962 method_28962 + p 0 ruleTest + m (Lnet/minecraft/class_4992;)Ljava/lang/Float; method_28964 method_28964 + p 0 ruleTest + m (Lnet/minecraft/class_4992;)Ljava/lang/Float; method_28965 method_28965 + p 0 ruleTest + m (Lnet/minecraft/class_4992;)Ljava/lang/Integer; method_28963 method_28963 + p 0 ruleTest + m (FFIILnet/minecraft/class_2350$class_2351;)V + p 5 axis + p 3 minDistance + p 4 maxDistance + p 1 minChance + p 2 maxChance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28960 method_28960 + p 0 instance +c net/minecraft/class_1005 net/minecraft/client/render/entity/feature/WitchHeldItemFeatureRenderer + m (Lnet/minecraft/class_10082;Lnet/minecraft/class_4587;)V method_65252 applyTransforms +c net/minecraft/class_2330 net/minecraft/command/argument/serialize/IntegerArgumentSerializer + m (Lnet/minecraft/class_2330$class_7222;Lcom/google/gson/JsonObject;)V method_10049 writeJson + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2330$class_7222; method_10050 fromPacket + m (Lcom/mojang/brigadier/arguments/IntegerArgumentType;)Lnet/minecraft/class_2330$class_7222; method_42007 getArgumentTypeProperties + m (Lnet/minecraft/class_2330$class_7222;Lnet/minecraft/class_2540;)V method_10048 writePacket +c net/minecraft/class_2330$class_7222 net/minecraft/command/argument/serialize/IntegerArgumentSerializer$Properties + f I field_37989 max + f I field_37988 min + m (Lnet/minecraft/class_2330;II)V + p 2 min + p 3 max + m (Lnet/minecraft/class_7157;)Lcom/mojang/brigadier/arguments/IntegerArgumentType; method_42008 createType +c net/minecraft/class_1004 net/minecraft/client/render/entity/feature/WitherArmorFeatureRenderer + f Lnet/minecraft/class_2960; field_4910 SKIN + f Lnet/minecraft/class_621; field_4909 model + m (Lnet/minecraft/class_10083;)Z method_62600 shouldRender + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;)V + p 2 loader + p 1 context + m ()Lnet/minecraft/class_621; method_62601 getEnergySwirlModel +c net/minecraft/class_4994 net/minecraft/structure/rule/AlwaysTruePosRuleTest + f Lnet/minecraft/class_4994; field_23343 INSTANCE + f Lcom/mojang/serialization/MapCodec; field_25006 CODEC +c net/minecraft/class_2331 net/minecraft/block/EnchantingTableBlock + f Lnet/minecraft/class_265; field_10951 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46342 CODEC + f Ljava/util/List; field_36535 POWER_PROVIDER_OFFSETS + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Z method_40445 canAccessPowerProvider + p 1 tablePos + p 2 providerOffset + p 0 world + m (Lnet/minecraft/class_2338;)Z method_40446 method_40446 + p 0 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ILnet/minecraft/class_1661;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1703; method_17467 method_17467 + p 4 player + p 3 inventory + p 2 syncId +c net/minecraft/class_4993 net/minecraft/structure/rule/LinearPosRuleTest + f Lcom/mojang/serialization/MapCodec; field_25004 CODEC + f I field_23341 minDistance + f F field_23339 minChance + f I field_23342 maxDistance + f F field_23340 maxChance + m (Lnet/minecraft/class_4993;)Ljava/lang/Float; method_28979 method_28979 + p 0 ruleTest + m (Lnet/minecraft/class_4993;)Ljava/lang/Integer; method_28978 method_28978 + p 0 ruleTest + m (Lnet/minecraft/class_4993;)Ljava/lang/Float; method_28980 method_28980 + p 0 ruleTest + m (Lnet/minecraft/class_4993;)Ljava/lang/Integer; method_28977 method_28977 + p 0 ruleTest + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28976 method_28976 + p 0 instance + m (FFII)V + p 3 minDistance + p 2 maxChance + p 1 minChance + p 4 maxDistance +c net/minecraft/class_2332 net/minecraft/command/argument/serialize/StringArgumentSerializer + m (Lcom/mojang/brigadier/arguments/StringArgumentType;)Lnet/minecraft/class_2332$class_7224; method_42011 getArgumentTypeProperties + m (Lnet/minecraft/class_2332$class_7224;Lcom/google/gson/JsonObject;)V method_10051 writeJson + m (Lnet/minecraft/class_2332$class_7224;Lnet/minecraft/class_2540;)V method_10053 writePacket + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2332$class_7224; method_10052 fromPacket +c net/minecraft/class_2332$class_7224 net/minecraft/command/argument/serialize/StringArgumentSerializer$Properties + f Lcom/mojang/brigadier/arguments/StringArgumentType$StringType; field_37994 type + m (Lnet/minecraft/class_7157;)Lcom/mojang/brigadier/arguments/StringArgumentType; method_42012 createType + m (Lnet/minecraft/class_2332;Lcom/mojang/brigadier/arguments/StringArgumentType$StringType;)V + p 2 type +c net/minecraft/class_1002 net/minecraft/client/render/entity/feature/SkeletonOverlayFeatureRenderer + f Lnet/minecraft/class_606; field_4908 model + f Lnet/minecraft/class_2960; field_49166 texture + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;Lnet/minecraft/class_5601;Lnet/minecraft/class_2960;)V + p 2 loader + p 1 context + p 4 texture + p 3 layer + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10066;FF)V method_23204 render +c net/minecraft/class_2326 net/minecraft/command/argument/serialize/DoubleArgumentSerializer + m (Lnet/minecraft/class_2326$class_7220;Lnet/minecraft/class_2540;)V method_10041 writePacket + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2326$class_7220; method_10042 fromPacket + m (Lcom/mojang/brigadier/arguments/DoubleArgumentType;)Lnet/minecraft/class_2326$class_7220; method_42003 getArgumentTypeProperties + m (Lnet/minecraft/class_2326$class_7220;Lcom/google/gson/JsonObject;)V method_10043 writeJson +c net/minecraft/class_2326$class_7220 net/minecraft/command/argument/serialize/DoubleArgumentSerializer$Properties + f D field_37982 min + f D field_37983 max + m (Lnet/minecraft/class_7157;)Lcom/mojang/brigadier/arguments/DoubleArgumentType; method_42004 createType + m (Lnet/minecraft/class_2326;DD)V + p 4 max + p 2 min +c net/minecraft/class_2327 net/minecraft/command/argument/serialize/FloatArgumentSerializer + m (Lnet/minecraft/class_2327$class_7221;Lnet/minecraft/class_2540;)V method_10044 writePacket + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2327$class_7221; method_10045 fromPacket + m (Lnet/minecraft/class_2327$class_7221;Lcom/google/gson/JsonObject;)V method_10046 writeJson + m (Lcom/mojang/brigadier/arguments/FloatArgumentType;)Lnet/minecraft/class_2327$class_7221; method_42005 getArgumentTypeProperties +c net/minecraft/class_2327$class_7221 net/minecraft/command/argument/serialize/FloatArgumentSerializer$Properties + f F field_37986 max + f F field_37985 min + m (Lnet/minecraft/class_2327;FF)V + p 3 max + p 2 min + m (Lnet/minecraft/class_7157;)Lcom/mojang/brigadier/arguments/FloatArgumentType; method_42006 createType +c net/minecraft/class_2328 net/minecraft/block/DragonEggBlock + f Lnet/minecraft/class_265; field_10950 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46339 CODEC + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_10047 teleport + p 3 pos + p 2 world + p 1 state +c net/minecraft/class_2329 net/minecraft/block/EndGatewayBlock + f Lcom/mojang/serialization/MapCodec; field_46343 CODEC +c net/minecraft/class_10895 net/minecraft/client/render/model/MultipartBlockStateModel + f Lnet/minecraft/class_2680; field_57949 state + f Lnet/minecraft/class_10895$class_1095; field_57948 bakedModels + f Ljava/util/List; field_57950 models + m (Lnet/minecraft/class_10895$class_1095;Lnet/minecraft/class_2680;)V + p 2 state + p 1 bakedModels +c net/minecraft/class_10895$class_10204 net/minecraft/client/render/model/MultipartBlockStateModel$Selector + f Ljava/util/function/Predicate; comp_3203 condition + f Ljava/lang/Object; comp_3204 model + m (Ljava/lang/Object;)Lnet/minecraft/class_10895$class_10204; method_68527 build + p 1 model + m ()Ljava/util/function/Predicate; comp_3203 condition + m ()Ljava/lang/Object; comp_3204 model + m (Ljava/util/function/Predicate;Ljava/lang/Object;)V + p 1 condition + p 2 model +c net/minecraft/class_10895$class_816 net/minecraft/client/render/model/MultipartBlockStateModel$MultipartUnbaked + f Lnet/minecraft/class_7775$class_10897; field_57952 bakerCache + f Ljava/util/List; field_4330 selectors + m (Ljava/util/List;)V + p 1 selectors + m (Lnet/minecraft/class_10526$class_10103;Lnet/minecraft/class_10895$class_10204;)V method_62337 method_62337 + p 1 selector +c net/minecraft/class_10895$class_816$1 net/minecraft/client/render/model/MultipartBlockStateModel$MultipartUnbaked$1 + m (Lnet/minecraft/class_7775;)Lnet/minecraft/class_10895$class_1095; method_68530 compute +c net/minecraft/class_10895$class_816$class_9981 net/minecraft/client/render/model/MultipartBlockStateModel$MultipartUnbaked$EqualityGroup + f Lnet/minecraft/class_10895$class_816; comp_3050 model + f Lit/unimi/dsi/fastutil/ints/IntList; comp_3051 selectors + m ()Lnet/minecraft/class_10895$class_816; comp_3050 model + m ()Lit/unimi/dsi/fastutil/ints/IntList; comp_3051 selectors + m (Lnet/minecraft/class_10895$class_816;Lit/unimi/dsi/fastutil/ints/IntList;)V + p 1 model + p 2 selectors +c net/minecraft/class_10895$class_1095 net/minecraft/client/render/model/MultipartBlockStateModel$MultipartBakedModel + f Lnet/minecraft/class_1058; field_57011 particleSprite + f Ljava/util/List; field_5427 selectors + f Ljava/util/Map; field_57951 map + m (Ljava/util/List;)V + p 1 selectors + m (Ljava/util/List;)Lnet/minecraft/class_1087; method_64095 getFirst + p 0 selectors + m (Lnet/minecraft/class_2680;)Ljava/util/List; method_68528 build + p 1 state + m (Ljava/util/BitSet;)Ljava/util/List; method_68529 method_68529 + p 1 bitSet +c net/minecraft/class_10896 net/minecraft/client/render/chunk/Buffers + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595; field_57958 indexType + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_57956 indexBuffer + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_57955 vertexBuffer + f I field_57957 indexCount + m ()Lcom/mojang/blaze3d/buffers/GpuBuffer; method_68540 getVertexBuffer + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595; method_68547 getIndexType + m ()I method_68546 getIndexCount + m (Lcom/mojang/blaze3d/buffers/GpuBuffer;)V method_68542 setIndexBuffer + p 1 indexBuffer + m (Lcom/mojang/blaze3d/buffers/GpuBuffer;Lcom/mojang/blaze3d/buffers/GpuBuffer;ILcom/mojang/blaze3d/vertex/VertexFormat$class_5595;)V + p 1 vertexBuffer + p 2 indexBuffer + p 3 indexCount + p 4 indexType + m (I)V method_68541 setIndexCount + p 1 indexCount + m (Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595;)V method_68543 setIndexType + p 1 indexType + m (Lcom/mojang/blaze3d/buffers/GpuBuffer;)V method_68545 setVertexBuffer + p 1 vertexBuffer + m ()Lcom/mojang/blaze3d/buffers/GpuBuffer; method_68544 getIndexBuffer +c net/minecraft/class_10893 net/minecraft/client/render/model/SimpleBlockStateModel + f Lnet/minecraft/class_10889; field_57945 part + m (Lnet/minecraft/class_10889;)V + p 1 part +c net/minecraft/class_10893$class_10894 net/minecraft/client/render/model/SimpleBlockStateModel$Unbaked + f Lcom/mojang/serialization/Codec; field_57946 CODEC + f Lnet/minecraft/class_813; comp_3815 variant + m ()Lnet/minecraft/class_813; comp_3815 variant + m (Lnet/minecraft/class_813;)V + p 1 variant +c net/minecraft/class_10899 net/minecraft/nbt/NbtPrimitive +c net/minecraft/class_3670 net/minecraft/loot/function/SetNameLootFunction + f Lcom/mojang/serialization/MapCodec; field_45848 CODEC + f Lnet/minecraft/class_3670$class_9475; field_50208 target + f Lorg/slf4j/Logger; field_16230 LOGGER + f Ljava/util/Optional; field_16229 entity + f Ljava/util/Optional; field_16228 name + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53389 method_53389 + p 0 instance + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_47$class_50;Lnet/minecraft/class_3670$class_9475;Ljava/util/List;)Lnet/minecraft/class_117; method_35551 method_35551 + p 3 conditions + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_3670$class_9475;Lnet/minecraft/class_47$class_50;)Lnet/minecraft/class_120$class_121; method_35550 builder + p 0 name + p 1 target + p 2 entity + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_16191 method_16191 + p 0 textComponent + m (Lnet/minecraft/class_3670;)Ljava/util/Optional; method_53390 method_53390 + p 0 function + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_16189 method_16189 + p 2 textComponent + m (Lnet/minecraft/class_3670;)Lnet/minecraft/class_3670$class_9475; method_58733 method_58733 + p 0 function + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_3670$class_9475;)V + p 4 target + p 1 conditions + p 3 entity + p 2 name + m (Lnet/minecraft/class_3670;)Ljava/util/Optional; method_53388 method_53388 + p 0 function + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_47;Lnet/minecraft/class_2561;)V method_53386 method_53386 + p 3 name + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_3670$class_9475;)Lnet/minecraft/class_120$class_121; method_35549 builder + p 0 name + p 1 target + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_3670$class_9475;Ljava/util/List;)Lnet/minecraft/class_117; method_35552 method_35552 + p 2 conditions + m (Lnet/minecraft/class_47$class_50;)Ljava/util/Set; method_53387 method_53387 + p 0 entity + m (Lnet/minecraft/class_47;Lnet/minecraft/class_47$class_50;)Ljava/util/function/UnaryOperator; method_16190 applySourceEntity + p 1 sourceEntity + p 0 context +c net/minecraft/class_3670$class_9475 net/minecraft/loot/function/SetNameLootFunction$Target + f Lcom/mojang/serialization/Codec; field_50212 CODEC + f Ljava/lang/String; field_50213 id + f Lnet/minecraft/class_3670$class_9475; field_50210 CUSTOM_NAME + f Lnet/minecraft/class_3670$class_9475; field_50211 ITEM_NAME + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()Lnet/minecraft/class_9331; method_58734 getComponentType +c net/minecraft/class_3675 net/minecraft/client/util/InputUtil + f I field_31970 GLFW_KEY_KP_1 + f I field_31982 GLFW_KEY_DOWN + f I field_31994 GLFW_KEY_PAUSE + f I field_31930 GLFW_KEY_F15 + f I field_31942 GLFW_KEY_KP_MULTIPLY + f I field_32014 GLFW_KEY_9 + f I field_32026 GLFW_KEY_L + f I field_32002 GLFW_MOUSE_BUTTON_RIGHT + f I field_31954 GLFW_KEY_RIGHT_CONTROL + f I field_31966 GLFW_KEY_F24 + f I field_31978 GLFW_KEY_KP_9 + f I field_32030 GLFW_KEY_P + f I field_31914 GLFW_KEY_Y + f I field_31926 GLFW_KEY_F11 + f I field_31938 GLFW_KEY_GRAVE_ACCENT + f I field_31971 GLFW_KEY_KP_2 + f I field_31983 GLFW_KEY_LEFT + f I field_31995 GLFW_KEY_SCROLL_LOCK + f I field_31931 GLFW_KEY_F16 + f I field_32009 GLFW_KEY_4 + f I field_32025 GLFW_KEY_K + f I field_32001 GLFW_MOUSE_BUTTON_MIDDLE + f I field_32013 GLFW_KEY_8 + f I field_62550 GLFW_MOD_SUPER + f I field_31943 GLFW_KEY_PERIOD + f I field_31955 GLFW_KEY_RIGHT_SHIFT + f I field_31967 GLFW_KEY_F25 + f I field_31979 GLFW_KEY_KP_DECIMAL + f I field_31915 GLFW_KEY_Z + f I field_31927 GLFW_KEY_F12 + f I field_31939 GLFW_KEY_LEFT_BRACKET + f I field_31960 GLFW_KEY_F18 + f I field_31972 GLFW_KEY_KP_3 + f I field_31984 GLFW_KEY_RIGHT + f I field_31996 GLFW_KEY_PRINT_SCREEN + f I field_31920 GLFW_KEY_F5 + f Ljava/lang/invoke/MethodHandle; field_20333 GLFW_RAW_MOUSE_MOTION_SUPPORTED_HANDLE + f I field_32016 GLFW_KEY_B + f I field_32028 GLFW_KEY_N + f I field_32004 GLFW_CURSOR + f I field_31932 GLFW_KEY_UP + f I field_31944 GLFW_KEY_RIGHT_BRACKET + f I field_31956 GLFW_KEY_RIGHT_SUPER + f I field_31968 GLFW_KEY_NUM_LOCK + f I field_32020 GLFW_KEY_F + f Lnet/minecraft/class_3675$class_306; field_16237 UNKNOWN_KEY + f I field_31916 GLFW_KEY_F1 + f I field_31928 GLFW_KEY_F13 + f I field_20334 GLFW_RAW_MOUSE_MOTION + f I field_31961 GLFW_KEY_F19 + f I field_31973 GLFW_KEY_KP_4 + f I field_31985 GLFW_KEY_1 + f I field_31997 GLFW_PRESS + f I field_31929 GLFW_KEY_F14 + f I field_32027 GLFW_KEY_M + f I field_32003 GLFW_MOD_CONTROL + f I field_32015 GLFW_KEY_A + f I field_31921 GLFW_KEY_F6 + f I field_31933 GLFW_KEY_KP_ADD + f I field_31945 GLFW_KEY_SEMICOLON + f I field_31957 GLFW_KEY_ENTER + f I field_31969 GLFW_KEY_KP_0 + f I field_31917 GLFW_KEY_F2 + f I field_31990 GLFW_KEY_INSERT + f I field_31950 GLFW_KEY_LEFT_CONTROL + f I field_31962 GLFW_KEY_F20 + f I field_31974 GLFW_KEY_KP_5 + f I field_31986 GLFW_KEY_BACKSPACE + f I field_62549 GLFW_MOD_ALT + f I field_31918 GLFW_KEY_F3 + f I field_32018 GLFW_KEY_D + f I field_32006 GLFW_CURSOR_NORMAL + f I field_31910 GLFW_KEY_U + f I field_31998 GLFW_RELEASE + f I field_32010 GLFW_KEY_5 + f I field_31922 GLFW_KEY_F7 + f I field_32022 GLFW_KEY_H + f I field_31934 GLFW_KEY_APOSTROPHE + f I field_31946 GLFW_KEY_SLASH + f I field_31958 GLFW_KEY_ESCAPE + f I field_31906 GLFW_KEY_Q + f I field_31991 GLFW_KEY_PAGE_DOWN + f I field_31951 GLFW_KEY_LEFT_SHIFT + f I field_31963 GLFW_KEY_F21 + f I field_31975 GLFW_KEY_KP_6 + f I field_31907 GLFW_KEY_R + f I field_32029 GLFW_KEY_O + f I field_31919 GLFW_KEY_F4 + f I field_32005 GLFW_CURSOR_DISABLED + f I field_32017 GLFW_KEY_C + f I field_31987 GLFW_KEY_DELETE + f I field_32021 GLFW_KEY_G + f I field_31911 GLFW_KEY_V + f I field_31999 GLFW_REPEAT + f I field_31923 GLFW_KEY_F8 + f I field_31935 GLFW_KEY_BACKSLASH + f I field_31947 GLFW_KEY_SPACE + f I field_31959 GLFW_KEY_F17 + f I field_31980 GLFW_KEY_KP_ENTER + f I field_31992 GLFW_KEY_PAGE_UP + f I field_31940 GLFW_KEY_0 + f I field_31952 GLFW_KEY_LEFT_SUPER + f I field_31964 GLFW_KEY_F22 + f I field_31908 GLFW_KEY_S + f I field_32008 GLFW_KEY_3 + f I field_32012 GLFW_KEY_7 + f I field_62551 GLFW_MOD_CAPS_LOCK + f I field_32024 GLFW_KEY_J + f I field_31976 GLFW_KEY_KP_7 + f I field_31988 GLFW_KEY_END + f I field_32000 GLFW_MOUSE_BUTTON_LEFT + f I field_31912 GLFW_KEY_W + f I field_31924 GLFW_KEY_F9 + f I field_31936 GLFW_KEY_COMMA + f I field_31948 GLFW_KEY_TAB + f I field_31981 GLFW_KEY_KP_EQUAL + f I field_31993 GLFW_KEY_CAPS_LOCK + f I field_31941 GLFW_KEY_MINUS + f I field_31953 GLFW_KEY_RIGHT_ALT + f I field_62548 GLFW_MOD_SHIFT + f I field_32007 GLFW_KEY_2 + f I field_32019 GLFW_KEY_E + f I field_62552 GLFW_MOD_NUM_LOCK + f I field_31909 GLFW_KEY_T + f I field_32023 GLFW_KEY_I + f I field_31965 GLFW_KEY_F23 + f I field_31977 GLFW_KEY_KP_8 + f I field_32011 GLFW_KEY_6 + f I field_31989 GLFW_KEY_HOME + f I field_31913 GLFW_KEY_X + f I field_31925 GLFW_KEY_F10 + f I field_31937 GLFW_KEY_EQUAL + f I field_31949 GLFW_KEY_LEFT_ALT + m (Lnet/minecraft/class_1041;I)Z method_15987 isKeyPressed + p 0 window + p 1 code + m (Lnet/minecraft/class_1041;Lorg/lwjgl/glfw/GLFWCursorPosCallbackI;Lorg/lwjgl/glfw/GLFWMouseButtonCallbackI;Lorg/lwjgl/glfw/GLFWScrollCallbackI;Lorg/lwjgl/glfw/GLFWDropCallbackI;)V method_15983 setMouseCallbacks + p 3 scrollCallback + p 4 dropCallback + p 1 cursorPosCallback + p 2 mouseButtonCallback + p 0 window + m (Lnet/minecraft/class_11908;)Lnet/minecraft/class_3675$class_306; method_15985 fromKeyCode + p 0 key + m (Lnet/minecraft/class_1041;IDD)V method_15984 setCursorParameters + p 4 y + p 2 x + p 0 window + p 1 inputModeValue + m (Ljava/lang/String;)Lnet/minecraft/class_3675$class_306; method_15981 fromTranslationKey + p 0 translationKey + m ()Z method_21735 isRawMouseMotionSupported + m (Lnet/minecraft/class_1041;Lorg/lwjgl/glfw/GLFWKeyCallbackI;Lorg/lwjgl/glfw/GLFWCharModsCallbackI;)V method_15986 setKeyboardCallbacks + p 0 window + p 1 keyCallback + p 2 charModsCallback + m (Lnet/minecraft/class_1041;Z)V method_21736 setRawMouseMotionMode + p 1 value + p 0 window +c net/minecraft/class_3675$class_306 net/minecraft/client/util/InputUtil$Key + f Ljava/lang/String; field_1663 translationKey + f Ljava/util/function/Supplier; field_24196 localizedText + f I field_1665 code + f Lnet/minecraft/class_3675$class_307; field_1666 type + f Ljava/util/Map; field_1664 KEYS + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()I method_1444 getCode + m ()Lnet/minecraft/class_3675$class_307; method_1442 getCategory + m ()Ljava/util/OptionalInt; method_30103 toInt + m ()Lnet/minecraft/class_2561; method_27445 getLocalizedText + m (Ljava/lang/String;Lnet/minecraft/class_3675$class_307;I)V + p 2 type + p 1 translationKey + p 3 code + m ()Ljava/lang/String; method_1441 getTranslationKey +c net/minecraft/class_3675$class_307 net/minecraft/client/util/InputUtil$Type + f Ljava/lang/String; field_44919 UNKNOWN_TRANSLATION_KEY + f Ljava/lang/String; field_1673 name + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_1674 map + f Ljava/util/function/BiFunction; field_24197 textTranslator + f Lnet/minecraft/class_3675$class_307; field_1671 SCANCODE + f Lnet/minecraft/class_3675$class_307; field_1672 MOUSE + f Lnet/minecraft/class_3675$class_307; field_1668 KEYSYM + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/BiFunction;)V + p 4 textTranslator + p 3 name + m (Lnet/minecraft/class_3675$class_307;Ljava/lang/String;I)V method_1446 mapKey + p 0 type + p 1 translationKey + p 2 keyCode + m (Ljava/lang/Integer;Ljava/lang/String;)Lnet/minecraft/class_2561; method_27450 method_27450 + p 1 translationKey + p 0 keyCode + m (I)Lnet/minecraft/class_3675$class_306; method_1447 createFromCode + p 1 code + m (Ljava/lang/Integer;Ljava/lang/String;)Lnet/minecraft/class_2561; method_27449 method_27449 + p 1 translationKey + p 0 scanCode + m (Ljava/lang/Integer;Ljava/lang/String;)Lnet/minecraft/class_2561; method_27447 method_27447 + p 1 translationKey + p 0 buttonCode + m (I)Lnet/minecraft/class_3675$class_306; method_27448 method_27448 + p 1 code +c net/minecraft/class_3675$class_12135 net/minecraft/client/util/InputUtil$Keycode +c net/minecraft/class_2344 net/minecraft/block/FarmlandBlock + f Lnet/minecraft/class_265; field_11010 SHAPE + f Lnet/minecraft/class_2758; field_11009 MOISTURE + f I field_31084 MAX_MOISTURE + f Lcom/mojang/serialization/MapCodec; field_46349 CODEC + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_10126 isWaterNearby + p 1 pos + p 0 world + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_10124 hasCrop + p 1 pos + p 0 world + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_10125 setToDirt + p 3 pos + p 2 world + p 1 state + p 0 entity +c net/minecraft/class_3676 net/minecraft/client/util/MonitorFactory + m (J)Lnet/minecraft/class_313; createMonitor createMonitor + p 1 pointer +c net/minecraft/class_1011 net/minecraft/client/texture/NativeImage + f I field_4991 width + f Lnet/minecraft/class_1011$class_1012; field_4986 format + f J field_4988 pointer + f Lorg/slf4j/Logger; field_21684 LOGGER + f Ljava/util/Set; field_4992 WRITE_TO_FILE_OPEN_OPTIONS + f J field_4987 sizeBytes + f Lcom/mojang/jtracy/MemoryPool; field_54265 MEMORY_POOL + f I field_4989 height + f Z field_4990 isStbImage + m ()[I method_61942 copyPixelsArgb + m (IIZ)V + p 1 width + p 3 useStb + p 2 height + m (Lnet/minecraft/class_1011$class_1012;IIZJ)V + p 2 width + p 3 height + p 1 format + p 4 useStb + p 5 pointer + m (II)I method_4315 getColor + c Gets the color of a pixel on this native image.\nThe color returned by this method will be in a big-endian (from biggest\nto smallest bits) ABGR format, or little-endian RGBA.\n\n@throws IllegalArgumentException when this native image's format is not\n{@linkplain Format#RGBA little-endian RGBA}, or the coordinate is out-of-bounds\n@return the color, with red at smallest and alpha at biggest bits + p 1 x + p 2 y + m (Ljava/util/function/IntUnaryOperator;)Lnet/minecraft/class_1011; method_48462 applyToCopy + p 1 operator + m (Lnet/minecraft/class_1011;IIIIIIZZ)V method_47594 copyRect + p 4 destX + p 5 destY + p 6 width + p 7 height + p 8 flipX + p 9 flipY + p 1 image + p 2 x + p 3 y + m (IIIIIIZZ)V method_4304 copyRect + p 3 translateX + p 4 translateY + p 1 x + p 2 y + p 7 flipX + p 8 flipY + p 5 width + p 6 height + m ()[I method_4322 makePixelArray + m (II)Z method_36559 isOutOfBounds + p 2 y + p 1 x + m ([B)Lnet/minecraft/class_1011; method_49277 read + p 0 bytes + m (Ljava/io/InputStream;)Lnet/minecraft/class_1011; method_4309 read + p 0 stream + m ()V method_4302 untrack + m (Lnet/minecraft/class_1011$class_1012;Ljava/nio/ByteBuffer;)Lnet/minecraft/class_1011; method_4303 read + p 1 buffer + p 0 format + m ()V method_4320 checkAllocated + m ()[I method_48463 copyPixelsAbgr + m ()I method_4307 getWidth + m ()Lnet/minecraft/class_1011$class_1012; method_4318 getFormat + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/class_1011; method_4324 read + p 0 buffer + m (Ljava/nio/file/Path;)V method_4314 writeTo + p 1 path + m (IIIII)V method_4326 fillRect + p 1 x + p 3 width + p 2 y + p 5 color + p 4 height + m (Ljava/nio/channels/WritableByteChannel;)Z method_24032 write + p 1 channel + m ()I method_4323 getHeight + m (Lnet/minecraft/class_1011$class_1012;Ljava/io/InputStream;)Lnet/minecraft/class_1011; method_4310 read + p 1 stream + p 0 format + m (II)I method_61940 getColorArgb + p 1 x + p 2 y + m (Lorg/lwjgl/util/freetype/FT_Face;I)Z method_4316 makeGlyphBitmapSubpixel + p 1 face + p 2 glyphIndex + m (III)V method_61941 setColorArgb + p 1 x + p 2 y + p 3 color + m (Ljava/io/File;)V method_4325 writeTo + p 1 path + m (III)V method_4305 setColor + c Sets the color of a pixel on this native image.\nThe color to be set by this method will be in a big-endian (from biggest\nto smallest bits) ABGR format, or little-endian RGBA.\n\n@throws IllegalArgumentException when this native image's format is not\n{@linkplain Format#RGBA little-endian RGBA}, or the coordinate is out-of-bounds + p 3 color + c the color, with red at smallest and alpha at biggest bits + p 2 y + p 1 x + m ()J method_67769 imageId + m (Ljava/nio/ByteBuffer;[B)Lnet/minecraft/class_1011; method_65806 putAndRead + p 1 bytes + p 0 buffer + m (II)B method_4311 getOpacity + p 1 x + p 2 y + m (Lnet/minecraft/class_1011;)V method_4317 copyFrom + p 1 image + m (Lnet/minecraft/class_1011$class_1012;IIZ)V + p 1 format + p 3 height + p 2 width + p 4 useStb + m (IIIILnet/minecraft/class_1011;)V method_4300 resizeSubRectTo + p 3 width + p 2 y + p 5 targetImage + p 4 height + p 1 x +c net/minecraft/class_1011$class_1014 net/minecraft/client/texture/NativeImage$WriteCallback + f Ljava/nio/channels/WritableByteChannel; field_5018 channel + f Ljava/io/IOException; field_5019 exception + m (Ljava/nio/channels/WritableByteChannel;)V + p 1 channel + m (JJI)V invoke invoke + p 5 size + p 1 context + p 3 data + m ()V method_4342 throwStoredException +c net/minecraft/class_1011$class_1012 net/minecraft/client/texture/NativeImage$Format + f Lnet/minecraft/class_1011$class_1012; field_5001 RGB + c The format stores RGB in little endian order, so it's BGR from the biggest to\nthe smallest bits. + f Z field_5004 hasGreen + f Z field_5000 hasLuminance + f I field_5009 greenOffset + f I field_5007 luminanceOffset + f Z field_4996 writeable + f I field_4994 channelCount + f Lnet/minecraft/class_1011$class_1012; field_4997 RGBA + c The format stores RGBA in little endian order, so it's ABGR from the biggest to\nthe smallest bits. + f Lnet/minecraft/class_1011$class_1012; field_5002 LUMINANCE_ALPHA + c The format stores luminance and alpha in little endian order, so it's alpha then\nluminance from the biggest to the smallest bits. + f Z field_5005 hasRed + f Z field_5003 hasBlue + f I field_5008 blueOffset + f I field_5006 alphaOffset + f Z field_4999 hasAlpha + f I field_5010 redOffset + f Lnet/minecraft/class_1011$class_1012; field_4998 LUMINANCE + m ()Z method_4337 hasOpacityChannel + m ()Z method_35638 hasBlueChannel + m ()Z method_35628 hasRed + m ()I method_35634 getBlueOffset + m ()Z method_4329 hasAlpha + m ()I method_35632 getRedOffset + m ()I method_35640 getGreenChannelOffset + m (Ljava/lang/String;IIZZZZZIIIIIZ)V + p 14 writeable + p 11 blueOffset + p 10 greenOffset + p 13 alphaOffset + p 12 luminanceOffset + p 7 hasLuminance + p 6 hasBlue + p 9 redOffset + p 8 hasAlpha + p 3 channelCount + p 5 hasGreen + p 4 hasRed + m ()I method_35639 getRedChannelOffset + m ()I method_4330 getOpacityChannelOffset + c @apiNote For luminance-alpha format, this would return the luminance offset\nthan the alpha offset. + m ()I method_4332 getAlphaOffset + m ()Z method_35636 hasRedChannel + m ()Z method_35630 hasBlue + m ()Z method_4338 isWriteable + m ()Z method_35629 hasGreen + m ()I method_35635 getLuminanceOffset + m ()I method_35633 getGreenOffset + m (I)Lnet/minecraft/class_1011$class_1012; method_4336 fromChannelCount + p 0 glFormat + m ()I method_35641 getBlueChannelOffset + m ()I method_4335 getChannelCount + m ()Z method_35637 hasGreenChannel + m ()Z method_35631 hasLuminance +c net/minecraft/class_2346 net/minecraft/block/FallingBlock + m ()I method_26154 getFallDelay + c Gets the amount of time in ticks this block will wait before attempting to start falling. + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)I method_10130 getColor + p 1 state + p 2 world + p 3 pos + m (Lnet/minecraft/class_1540;)V method_10132 configureFallingBlockEntity + p 1 entity + m (Lnet/minecraft/class_2680;)Z method_10128 canFallThrough + p 0 state +c net/minecraft/class_3678 net/minecraft/client/WindowEventHandler + m (Z)V method_15995 onWindowFocusChanged + p 1 focused + m ()V method_30133 onCursorEnterChanged + m ()V method_15993 onResolutionChanged +c net/minecraft/class_2347 net/minecraft/block/dispenser/ItemDispenserBehavior + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;ILnet/minecraft/class_2350;Lnet/minecraft/class_2374;)V method_10134 spawnItem + p 3 side + p 4 pos + p 0 world + p 1 stack + p 2 speed + m (Lnet/minecraft/class_2342;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_60577 decrementStackWithRemainder + p 2 stack + p 1 pointer + p 3 remainder + m (Lnet/minecraft/class_2342;)V method_60578 syncDispensesEvent + p 0 pointer + m (Lnet/minecraft/class_2342;Lnet/minecraft/class_2350;)V method_10133 spawnParticles + p 2 side + p 1 pointer + m (Lnet/minecraft/class_2342;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_10135 dispenseSilently + p 2 stack + p 1 pointer + m (Lnet/minecraft/class_2342;)V method_10136 playSound + p 1 pointer + m (Lnet/minecraft/class_2342;Lnet/minecraft/class_1799;)V method_60579 addStackOrSpawn + p 1 pointer + p 2 stack + m (Lnet/minecraft/class_2342;Lnet/minecraft/class_2350;)V method_60580 syncActivatesEvent + p 0 pointer + p 1 side +c net/minecraft/class_3671 net/minecraft/loot/function/SetLoreLootFunction + f Ljava/util/Optional; field_16233 entity + f Ljava/util/List; field_16231 lore + f Lcom/mojang/serialization/MapCodec; field_45847 CODEC + f Lnet/minecraft/class_9368; field_50024 operation + m (Lnet/minecraft/class_3671;)Ljava/util/Optional; method_53382 method_53382 + p 0 function + m (Lnet/minecraft/class_9290;Lnet/minecraft/class_47;)Ljava/util/List; method_57658 getNewLoreTexts + p 1 current + p 2 context + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53383 method_53383 + p 0 instance + m (Lnet/minecraft/class_3671;)Lnet/minecraft/class_9368; method_53385 method_53385 + p 0 function + m (Lnet/minecraft/class_47;Lnet/minecraft/class_9290;)Lnet/minecraft/class_9290; method_57659 method_57659 + p 2 component + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_9368;Ljava/util/Optional;)V + p 4 entity + p 3 operation + p 2 lore + p 1 conditions + m (Lnet/minecraft/class_3671;)Ljava/util/List; method_53384 method_53384 + p 0 function + m (Lnet/minecraft/class_47$class_50;)Ljava/util/Set; method_53381 method_53381 + p 0 entity + m ()Lnet/minecraft/class_3671$class_6159; method_35544 builder +c net/minecraft/class_3671$class_6159 net/minecraft/loot/function/SetLoreLootFunction$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_31868 lore + f Ljava/util/Optional; field_31867 target + f Lnet/minecraft/class_9368; field_50025 operation + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_3671$class_6159; method_35547 lore + p 1 lore + m (Lnet/minecraft/class_9368;)Lnet/minecraft/class_3671$class_6159; method_58460 operation + p 1 operation + m (Lnet/minecraft/class_47$class_50;)Lnet/minecraft/class_3671$class_6159; method_35546 target + p 1 target + m ()Lnet/minecraft/class_3671$class_6159; method_35545 getThisBuilder +c net/minecraft/class_2341 net/minecraft/block/WallMountedBlock + f Lnet/minecraft/class_2754; field_11007 FACE + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_20046 canPlaceAt + p 1 pos + p 2 direction + p 0 world + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2350; method_10119 getDirection + p 0 state +c net/minecraft/class_2342 net/minecraft/util/math/BlockPointer + f Lnet/minecraft/class_3218; comp_1967 world + f Lnet/minecraft/class_2601; comp_1970 blockEntity + f Lnet/minecraft/class_2680; comp_1969 state + f Lnet/minecraft/class_2338; comp_1968 pos + m ()Lnet/minecraft/class_3218; comp_1967 world + m ()Lnet/minecraft/class_243; method_53906 centerPos + m ()Lnet/minecraft/class_2338; comp_1968 pos + m ()Lnet/minecraft/class_2601; comp_1970 blockEntity + m ()Lnet/minecraft/class_2680; comp_1969 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2601;)V + p 1 world + p 2 pos + p 3 state + p 4 blockEntity +c net/minecraft/class_3673 net/minecraft/client/util/GlfwUtil + m ()D method_15974 getTime + m ()V method_15973 makeJvmCrash +c net/minecraft/class_3674 net/minecraft/client/util/Clipboard + f Ljava/nio/ByteBuffer; field_16236 clipboardBuffer + f I field_31905 GLFW_FORMAT_UNAVAILABLE + m (Lnet/minecraft/class_1041;Lorg/lwjgl/glfw/GLFWErrorCallbackI;)Ljava/lang/String; method_15977 get + p 2 errorCallback + p 1 window + m (Lnet/minecraft/class_1041;Ljava/lang/String;)V method_15979 set + p 1 window + p 2 string + m (Lnet/minecraft/class_1041;Ljava/nio/ByteBuffer;[B)V method_15978 set + p 0 window + p 2 content + p 1 clipboardBuffer +c net/minecraft/class_2343 net/minecraft/block/BlockEntityProvider + c A block with a {@link BlockEntity}. If a block has a corresponding block entity,\nit must implement this interface. Multiple blocks can share a block entity type.\n\n

The {@link #createBlockEntity} method is responsible for creating an instance\nof your block entity; no other code should instantiate it.\n\n

See the documentation of {@link BlockEntity} for more information on what a\nblock entity is. See the documentation of {@link\nnet.minecraft.block.entity.BlockEntityType} for how to create a block entity type.\n\n@see BlockEntity\n@see BlockWithEntity + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2586; method_10123 createBlockEntity + c {@return a new block entity instance}\n\n

For example:\n

{@code\n@Override\npublic BlockEntity createBlockEntity(BlockPos pos, BlockState state) {\n  return new MyBlockEntity(pos, state);\n}\n}
\n\n@implNote While this is marked as nullable, in practice this should never return\n{@code null}. {@link PistonExtensionBlock} is the only block in vanilla that\nreturns {@code null} inside the implementation. + p 2 state + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_2591;)Lnet/minecraft/class_5558; method_31645 getTicker + c {@return the "ticker" for the block's block entity, or {@code null} if\nthe block entity does not need to be ticked}\n\n

Ticker is a functional interface called every tick to tick the block entity\non both the client and the server.\n\n

Tickers should validate that the passed {@code type} is the one this block expects,\nand return {@code null} if it isn't. This is to prevent crashes in rare cases where a\nmismatch occurs between the position's block and block entity. {@link\nBlockWithEntity#validateTicker} can be used to implement the check.\n\n

Example:\n\n

{@code\npublic  BlockEntityTicker getTicker(World world, BlockState state, BlockEntityType type) {\n  if (type != YourMod.MY_BLOCK_ENTITY_TYPE) return null;\n  // This should be a static method usable as a BlockEntityTicker.\n  return YourBlockEntity::tick;\n}\n}
+ p 2 state + p 3 type + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2586;)Lnet/minecraft/class_5714; method_32896 getGameEventListener + c {@return the game event listener for the block's block entity,\nor {@code null} if the block entity does not listen to game events}\n\n

Listeners should validate that the passed {@code blockEntity} is the block entity\nfor this block, and return {@code null} if it isn't. This is to prevent crashes in\nrare cases where a mismatch occurs between the position's block and block entity. + p 1 world + p 2 blockEntity +c net/minecraft/class_1008 net/minecraft/client/gl/GlDebug + f Lnet/minecraft/class_1008$class_6359; field_33671 lastDebugMessage + f I field_33669 DEBUG_MESSAGE_QUEUE_SIZE + f Ljava/util/Queue; field_33670 debugMessages + f Ljava/util/List; field_4915 KHR_VERBOSITY_LEVELS + f Ljava/util/List; field_4919 ARB_VERBOSITY_LEVELS + f Lorg/slf4j/Logger; field_4921 LOGGER + m ()Ljava/util/List; method_36478 collectDebugMessages + m (IIIIIJJ)V method_4224 onDebugMessage + p 3 id + p 4 severity + p 1 source + p 2 type + p 5 length + p 6 message + m (I)Ljava/lang/String; method_4222 getSource + p 0 opcode + m (I)Ljava/lang/String; method_4226 getSeverity + p 0 opcode + m (IZLjava/util/Set;)Lnet/minecraft/class_1008; method_4227 enableDebug + p 1 sync + p 0 verbosity + p 2 usedGlCaps + m (I)Ljava/lang/String; method_4225 unknown + p 0 opcode + m (I)Ljava/lang/String; method_4228 getType + p 0 opcode +c net/minecraft/class_1008$class_6359 net/minecraft/client/gl/GlDebug$DebugMessage + f I field_33678 count + f I field_33675 type + f I field_33676 severity + f I field_33673 id + f I field_33674 source + f Ljava/lang/String; field_33677 message + m (IIIILjava/lang/String;)Z method_36480 equals + p 2 type + p 1 source + p 4 severity + p 3 id + p 5 message + m (IIIILjava/lang/String;)V + p 5 message + p 4 severity + p 3 id + p 2 type + p 1 source +c net/minecraft/class_1007 net/minecraft/client/render/entity/PlayerEntityRenderer + m (Lnet/minecraft/class_11890;)Z method_74934 shouldFlipUpsideDown + m (Lnet/minecraft/class_11890;Lnet/minecraft/class_10055;F)V method_62604 updateRenderState + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_2960;Z)V method_4221 renderLeftArm + p 4 skinTexture + p 5 sleeveVisible + p 2 queue + p 3 light + p 1 matrices + m (ZLnet/minecraft/class_630;)Lnet/minecraft/class_591; method_72996 method_72996 + p 1 root + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_2960;Z)V method_4220 renderRightArm + p 5 sleeveVisible + p 3 light + p 4 skinTexture + p 1 matrices + p 2 queue + m (Lnet/minecraft/class_10055;Lnet/minecraft/class_4587;FF)V method_4212 setupTransforms + m (Lnet/minecraft/class_10055;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_4213 renderLabelIfPresent + m (Lnet/minecraft/class_1657;)Z method_74936 shouldFlipUpsideDown + p 0 player + m (Lnet/minecraft/class_11890;Lnet/minecraft/class_1799;Lnet/minecraft/class_1268;)Lnet/minecraft/class_572$class_573; method_4210 getArmPose + p 1 stack + p 0 player + p 2 hand + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_2960;Lnet/minecraft/class_630;Z)V method_23205 renderArm + p 5 arm + p 4 skinTexture + p 6 sleeveVisible + p 1 matrices + p 3 light + p 2 queue + m (Lnet/minecraft/class_5617$class_5618;Z)V + p 2 slim + p 1 ctx + m (Lnet/minecraft/class_10055;)Lnet/minecraft/class_2960; method_4216 getTexture + m (Lnet/minecraft/class_11890;D)Z method_74935 hasLabel + m ()Lnet/minecraft/class_10055; method_62608 createRenderState + m (Lnet/minecraft/class_10055;)Z method_62606 shouldRenderFeatures + m (Lnet/minecraft/class_11890;Lnet/minecraft/class_10055;F)V method_62607 updateGliding + p 3 tickProgress + p 2 state + p 1 player + m (Lnet/minecraft/class_11890;Lnet/minecraft/class_10055;F)V method_62609 updateCape + p 3 tickProgress + p 2 state + p 1 player + m (Lnet/minecraft/class_10055;)Lnet/minecraft/class_243; method_23206 getPositionOffset + m (Lnet/minecraft/class_10055;Lnet/minecraft/class_4587;)V method_4217 scale + m (Lnet/minecraft/class_11890;Lnet/minecraft/class_1306;)Lnet/minecraft/class_572$class_573; method_64258 getArmPose + p 0 player + p 1 arm +c net/minecraft/class_1006 net/minecraft/client/render/entity/feature/WolfCollarFeatureRenderer + f Lnet/minecraft/class_2960; field_4913 SKIN + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10085;FF)V method_4209 render +c net/minecraft/class_3668 net/minecraft/loot/function/FillPlayerHeadLootFunction + f Lnet/minecraft/class_47$class_50; field_16227 entity + f Lcom/mojang/serialization/MapCodec; field_45827 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53339 method_53339 + p 0 instance + m (Lnet/minecraft/class_47$class_50;)Lnet/minecraft/class_120$class_121; method_35522 builder + p 0 target + m (Lnet/minecraft/class_47$class_50;Ljava/util/List;)Lnet/minecraft/class_117; method_35523 method_35523 + p 1 conditions + m (Lnet/minecraft/class_3668;)Lnet/minecraft/class_47$class_50; method_53338 method_53338 + p 0 function + m (Ljava/util/List;Lnet/minecraft/class_47$class_50;)V + p 1 conditions + p 2 entity +c net/minecraft/class_2337 net/minecraft/block/RodBlock + f Ljava/util/Map; field_55788 SHAPES_BY_AXIS +c net/minecraft/class_2338 net/minecraft/util/math/BlockPos + c Represents the position of a block in a three-dimensional volume.\n\n

The position is integer-valued.\n\n

A block position may be mutable; hence, when using block positions\nobtained from other places as map keys, etc., you should call {@link\n#toImmutable()} to obtain an immutable block position. + f J field_10976 BITS_X + f Lcom/mojang/serialization/Codec; field_25064 CODEC + f Lnet/minecraft/class_2338; field_10980 ORIGIN + c The block position which x, y, and z values are all zero. + f Lnet/minecraft/class_9139; field_48404 PACKET_CODEC + f I field_10983 BIT_SHIFT_Z + f I field_10975 SIZE_BITS_Y + f I field_54978 SIZE_BITS_XZ + f J field_10974 BITS_Y + f I field_54979 MAX_XZ + f I field_10981 BIT_SHIFT_X + f J field_10973 BITS_Z + m ([I)Lnet/minecraft/class_2338; method_29095 method_29095 + p 0 values + m (JIII)J method_10096 add + p 0 value + p 3 y + p 2 x + p 4 z + m ()Lnet/minecraft/class_2338$class_2339; method_25503 mutableCopy + c Returns a mutable copy of this block position.\n\n

If this block position is a mutable one, mutation to this block\nposition won't affect the returned position. + m (I)Lnet/minecraft/class_2338; method_10088 west + p 1 distance + m (I)Lnet/minecraft/class_2338; method_10076 north + p 1 distance + m ()J method_10063 asLong + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_58250 max + p 1 b + p 0 a + m ()Lnet/minecraft/class_2338; method_10084 up + m (Ljava/util/Queue;ILnet/minecraft/class_2338;)V method_49926 method_49926 + p 2 queuedPos + m (Lnet/minecraft/class_2382;)V + p 1 pos + m (Lnet/minecraft/class_2338;III)Ljava/util/stream/Stream; method_25998 streamOutwards + p 0 center + p 3 maxZ + p 1 maxX + p 2 maxY + m (DDD)Lnet/minecraft/class_2338; method_49637 ofFloored + p 4 z + p 0 x + p 2 y + m (Lnet/minecraft/class_2338;)Ljava/util/stream/Stream; method_51686 streamSouthEastSquare + p 0 pos + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_2338; method_10081 add + m (Lnet/minecraft/class_238;)Ljava/util/stream/Stream; method_29715 stream + p 0 box + m (Lnet/minecraft/class_2374;)Lnet/minecraft/class_2338; method_49638 ofFloored + p 0 pos + m ()Lnet/minecraft/class_2338; method_10072 south + m (III)Lnet/minecraft/class_2338; method_10069 add + m (I)Lnet/minecraft/class_2338; method_35830 multiply + m ()Lnet/minecraft/class_243; method_46558 toCenterPos + c {@return the center of this block position}\n\n@see Vec3d#ofCenter + m (Lnet/minecraft/class_5819;IIIIIII)Ljava/lang/Iterable; method_27156 iterateRandomly + c Iterates through {@code count} random block positions in the given area.\n\n

The iterator yields positions in no specific order. The same position\nmay be returned multiple times by the iterator. + p 1 count + c the number of positions to iterate + p 2 minX + c the minimum x value for returned positions + p 3 minY + c the minimum y value for returned positions + p 4 minZ + c the minimum z value for returned positions + p 5 maxX + c the maximum x value for returned positions + p 6 maxY + c the maximum y value for returned positions + p 7 maxZ + c the maximum z value for returned positions + p 0 random + m (Lnet/minecraft/class_238;Lnet/minecraft/class_243;)Ljava/lang/Iterable; method_73159 iterateCollisionOrder + p 0 bounds + p 1 velocity + m (I)Lnet/minecraft/class_2338; method_10077 south + p 1 distance + m (Lnet/minecraft/class_5819;ILnet/minecraft/class_2338;I)Ljava/lang/Iterable; method_34848 iterateRandomly + c Iterates through {@code count} random block positions in a given range around the given position.\n\n

The iterator yields positions in no specific order. The same position\nmay be returned multiple times by the iterator. + p 3 range + c the maximum distance from the given pos in any axis + p 2 around + c the {@link BlockPos} to iterate around + p 1 count + c the number of positions to iterate + p 0 random + m (I)Lnet/minecraft/class_2338; method_10089 east + p 1 distance + m (J)J method_10091 removeChunkSectionLocalY + p 0 y + m (J)I method_10071 unpackLongY + p 0 packedPos + m (Lnet/minecraft/class_2338;ILnet/minecraft/class_2350;Lnet/minecraft/class_2350;)Ljava/lang/Iterable; method_30512 iterateInSquare + c Iterates block positions around the {@code center} in a square of\n({@code 2 * radius + 1}) by ({@code 2 * radius + 1}). The blocks\nare iterated in a (square) spiral around the center.\n\n

The first block returned is the center, then the iterator moves\na block towards the first direction, followed by moving along\nthe second direction.\n\n@throws IllegalStateException when the 2 directions lie on the same axis + p 2 firstDirection + c the direction the iterator moves first + p 3 secondDirection + c the direction the iterator moves after the first + p 0 center + c the center of iteration + p 1 radius + c the maximum chebychev distance + m (J)I method_10083 unpackLongZ + p 0 packedPos + m (J)Lnet/minecraft/class_2338; method_10092 fromLong + p 0 packedPos + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_60913 clampToWithin + p 1 pos + m (I)Lnet/minecraft/class_2338; method_33096 withY + p 1 y + m (Ljava/util/stream/IntStream;)Lcom/mojang/serialization/DataResult; method_29094 method_29094 + p 0 stream + m (Lnet/minecraft/class_238;)Ljava/lang/Iterable; method_62671 iterate + p 0 box + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Ljava/util/stream/Stream; method_20437 stream + p 1 end + p 0 start + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_2338; method_10093 offset + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_58249 min + p 1 b + p 0 a + m (I)Lnet/minecraft/class_2338; method_10086 up + p 1 distance + m ()Lnet/minecraft/class_243; method_61082 toBottomCenterPos + m (III)J method_10064 asLong + p 0 x + p 1 y + p 2 z + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_243;)Ljava/lang/Iterable; method_73160 iterateCollisionOrder + p 2 velocity + p 0 start + p 1 end + m ()Lnet/minecraft/class_2338; method_10074 down + m (IIIIII)Ljava/lang/Iterable; method_10094 iterate + p 1 startY + p 0 startX + p 3 endX + p 2 startZ + p 5 endZ + p 4 endY + m ()Lnet/minecraft/class_2338; method_10062 toImmutable + c Returns an immutable block position with the same x, y, and z as this\nposition.\n\n

This method should be called when a block position is used as map\nkeys as to prevent side effects of mutations of mutable block positions. + m ()Lnet/minecraft/class_2338; method_10078 east + m (Lnet/minecraft/class_3341;)Ljava/util/stream/Stream; method_23627 stream + p 0 box + m (Lnet/minecraft/class_2350;I)Lnet/minecraft/class_2338; method_10079 offset + m (Lnet/minecraft/class_2338;III)Ljava/lang/Iterable; method_25996 iterateOutwards + c Iterates block positions around the {@code center}. The iteration order\nis mainly based on the manhattan distance of the position from the\ncenter.\n\n

For the same manhattan distance, the positions are iterated by y\noffset, from negative to positive. For the same y offset, the positions\nare iterated by x offset, from negative to positive. For the two\npositions with the same x and y offsets and the same manhattan distance,\nthe one with a positive z offset is visited first before the one with a\nnegative z offset. + p 2 rangeY + c the maximum y difference from the center + p 3 rangeZ + c the maximum z difference from the center + p 0 center + c the center of iteration + p 1 rangeX + c the maximum x difference from the center + m (Lnet/minecraft/class_2338;)Ljava/util/stream/IntStream; method_29093 method_29093 + p 0 pos + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_2338; method_10059 subtract + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_2338; method_10075 crossProduct + p 1 pos + m (IIIIII)Ljava/util/stream/Stream; method_17962 stream + p 1 startY + p 0 startX + p 3 endX + p 2 startZ + p 5 endZ + p 4 endY + m (Lnet/minecraft/class_2350$class_2351;I)Lnet/minecraft/class_2338; method_30513 offset + m (Lnet/minecraft/class_2338;IILjava/util/function/Predicate;)Ljava/util/Optional; method_25997 findClosest + p 3 condition + p 1 horizontalRange + p 2 verticalRange + p 0 pos + m (I)Lnet/minecraft/class_2338; method_10087 down + m (Lnet/minecraft/class_2338;IILjava/util/function/BiConsumer;Ljava/util/function/Function;)I method_49925 iterateRecursively + c Iterates from {@code pos} recursively, like in a fill tool in a raster image editor.\n{@code callback} is called once (and only once) for each position it finds. When this\nreturns {@link BlockPos.IterationState#STOP}, the iteration is immediately aborted.\nIf this returns {@link BlockPos.IterationState#ACCEPT}, and the depth/iteration limit\nis not reached yet, the iteration count is incremented and {@code nextQueuer}\nqueues the next (usually neighboring) positions to iterate, with the depth\nincremented by one. {@link BlockPos.IterationState#SKIP} simply skips the position.\n\n@return the total number of iterations + p 3 nextQueuer + c a function that enqueues the next positions + p 2 maxIterations + c the maximum number of total iterations + p 4 callback + p 1 maxDepth + c the maximum depth of iteration + p 0 pos + c the starting position + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Ljava/lang/Iterable; method_10097 iterate + p 1 end + p 0 start + m ()Lnet/minecraft/class_2338; method_10095 north + m (IIIIIILnet/minecraft/class_243;)Ljava/lang/Iterable; method_73158 iterateCollisionOrder + p 5 z2 + p 6 velocity + p 3 x2 + p 4 y2 + p 1 y1 + p 2 z1 + p 0 x1 + m ()Lnet/minecraft/class_2338; method_10067 west + m (J)I method_10061 unpackLongX + p 0 packedPos + m (JLnet/minecraft/class_2350;)J method_10060 offset + p 2 direction + p 0 value + m (Lnet/minecraft/class_2470;)Lnet/minecraft/class_2338; method_10070 rotate + p 1 rotation +c net/minecraft/class_2338$class_10384 net/minecraft/util/math/BlockPos$IterationState + f Lnet/minecraft/class_2338$class_10384; field_55167 STOP + f Lnet/minecraft/class_2338$class_10384; field_55166 SKIP + f Lnet/minecraft/class_2338$class_10384; field_55165 ACCEPT +c net/minecraft/class_2338$1 net/minecraft/util/math/BlockPos$1 + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_2338; method_56156 decode + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_2338;)V method_56157 encode +c net/minecraft/class_2338$2 net/minecraft/util/math/BlockPos$2 + f I field_48406 remaining + f Lnet/minecraft/class_2338$class_2339; field_48405 pos + m ()Lnet/minecraft/class_2338; method_25999 computeNext +c net/minecraft/class_2338$class_2339 net/minecraft/util/math/BlockPos$Mutable + m (Lnet/minecraft/class_2350;I)Lnet/minecraft/class_2338; method_10079 offset + m (III)Lnet/minecraft/class_2338; method_10069 add + m (Lnet/minecraft/class_2350$class_2351;II)Lnet/minecraft/class_2338$class_2339; method_27158 clamp + c Clamps the component corresponding to the given {@code axis} between {@code min} and {@code max}. + p 1 axis + p 2 min + p 3 max + m (I)Lnet/minecraft/class_2338; method_35830 multiply + m (J)Lnet/minecraft/class_2338$class_2339; method_16363 set + p 1 pos + m (I)Lnet/minecraft/class_2338$class_2339; method_33099 setZ + m (Lnet/minecraft/class_2350;I)Lnet/minecraft/class_2338$class_2339; method_10104 move + c Moves this mutable block position by the given distance in the given\ndirection. + p 2 distance + p 1 direction + m (III)Lnet/minecraft/class_2338$class_2339; method_10100 move + c Moves the mutable block position by the delta x, y, and z provided. + p 3 dz + p 2 dy + p 1 dx + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_2338$class_2339; method_10101 set + p 1 pos + m (I)Lnet/minecraft/class_2338$class_2339; method_33097 setX + m (III)Lnet/minecraft/class_2338$class_2339; method_10103 set + c Sets the x, y, and z of this mutable block position. + p 2 y + p 1 x + p 3 z + m (I)Lnet/minecraft/class_2338$class_2339; method_33098 setY + m (Lnet/minecraft/class_2350$class_2351;I)Lnet/minecraft/class_2338; method_30513 offset + m (Lnet/minecraft/class_2335;III)Lnet/minecraft/class_2338$class_2339; method_17965 set + p 4 z + p 3 y + p 2 x + p 1 axis + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_2338$class_2339; method_30927 move + p 1 vec + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_2338$class_2339; method_10098 move + c Moves this mutable block position by 1 block in the given direction. + p 1 direction + m (DDD)Lnet/minecraft/class_2338$class_2339; method_10102 set + p 3 y + p 1 x + p 5 z + m (Lnet/minecraft/class_2382;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2338$class_2339; method_25505 set + c Sets this mutable block position to the offset position of the given\npos by the given direction. + p 1 pos + p 2 direction + m (Lnet/minecraft/class_2382;Lnet/minecraft/class_2382;)Lnet/minecraft/class_2338$class_2339; method_35831 set + c Sets this mutable block position to the sum of the given vectors. + p 2 vec2 + p 1 vec1 + m (DDD)V + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/class_2382;III)Lnet/minecraft/class_2338$class_2339; method_25504 set + c Sets this mutable block position to the sum of the given position and the\ngiven x, y, and z. + p 1 pos + p 2 x + p 3 y + p 4 z +c net/minecraft/class_2338$5 net/minecraft/util/math/BlockPos$5 + f I field_48445 steps + f I field_48444 maxSteps + f I field_48447 currentY + f I field_48446 currentX + f Lnet/minecraft/class_2338$class_2339; field_48441 pos + f I field_48448 currentZ + f [Lnet/minecraft/class_2350; field_48440 directions + f I field_48443 directionChangeCount + f I field_48442 maxDirectionChanges + m ()Lnet/minecraft/class_2338$class_2339; method_27157 computeNext +c net/minecraft/class_2338$6 net/minecraft/util/math/BlockPos$6 + f I field_61960 axis2z + f Lnet/minecraft/class_2338$class_2339; field_61950 pos + f I field_61957 axis1z + f I field_61956 axis1y + f I field_61955 axis1x + f I field_61953 deltaAxis3 + f I field_61952 deltaAxis2 + f I field_61963 axis3z + f I field_61951 deltaAxis1 + f I field_61962 axis3y + f I field_61961 axis3x + f I field_61959 axis2y + f I field_61958 axis2x + f Z field_61954 done + m ()Lnet/minecraft/class_2338; method_73162 computeNext +c net/minecraft/class_2338$3 net/minecraft/util/math/BlockPos$3 + f I field_48423 limitX + f I field_48422 manhattanDistance + f I field_48425 dx + f I field_48424 limitY + f I field_48426 dy + f Z field_48427 swapZ + f Lnet/minecraft/class_2338$class_2339; field_23380 pos + m ()Lnet/minecraft/class_2338; method_10106 computeNext +c net/minecraft/class_2338$4 net/minecraft/util/math/BlockPos$4 + f Lnet/minecraft/class_2338$class_2339; field_48434 pos + f I field_48435 index + m ()Lnet/minecraft/class_2338; method_30515 computeNext +c net/minecraft/class_4999 net/minecraft/client/render/entity/StriderEntityRenderer + f Lnet/minecraft/class_2960; field_23937 COLD_TEXTURE + f F field_47888 BABY_SHADOW_RADIUS_SCALE + f Lnet/minecraft/class_2960; field_23372 TEXTURE + m (Lnet/minecraft/class_4985;Lnet/minecraft/class_10070;F)V method_62544 updateRenderState + m (Lnet/minecraft/class_10070;)Z method_26423 isShaking + m (Lnet/minecraft/class_10070;)Lnet/minecraft/class_1799; method_66853 method_66853 + p 0 state + m (Lnet/minecraft/class_10070;)Lnet/minecraft/class_2960; method_26421 getTexture + m (Lnet/minecraft/class_10070;)F method_55834 getShadowRadius + m ()Lnet/minecraft/class_10070; method_62545 createRenderState +c net/minecraft/class_10889 net/minecraft/client/render/model/BlockModelPart + m ()Z comp_3751 useAmbientOcclusion + m ()Lnet/minecraft/class_1058; comp_3752 particleSprite + m (Lnet/minecraft/class_2350;)Ljava/util/List; method_68509 getQuads + p 1 side +c net/minecraft/class_10889$class_10890 net/minecraft/client/render/model/BlockModelPart$Unbaked + m (Lnet/minecraft/class_7775;)Lnet/minecraft/class_10889; method_68510 bake + p 1 baker +c net/minecraft/class_10826 net/minecraft/unused/packageinfo/PackageInfo10826 +c net/minecraft/class_10824 net/minecraft/entity/passive/WolfSoundVariants + f Lnet/minecraft/class_5321; field_57086 CUTE + f Lnet/minecraft/class_5321; field_57081 PUGLIN + f Lnet/minecraft/class_5321; field_57080 CLASSIC + f Lnet/minecraft/class_5321; field_57083 ANGRY + f Lnet/minecraft/class_5321; field_57082 SAD + f Lnet/minecraft/class_5321; field_57085 BIG + f Lnet/minecraft/class_5321; field_57084 GRUMPY + m (Lnet/minecraft/class_7891;)V method_68137 bootstrap + p 0 registry + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_10824$class_10825;)V method_68138 register + p 2 type + p 1 key + p 0 registry + m (Lnet/minecraft/class_10824$class_10825;)Lnet/minecraft/class_5321; method_68135 of + p 0 type + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_5819;)Lnet/minecraft/class_6880; method_68136 select + p 1 random + p 0 registries +c net/minecraft/class_10824$class_10825 net/minecraft/entity/passive/WolfSoundVariants$Type + f Ljava/lang/String; field_57095 suffix + f Ljava/lang/String; field_57094 id + f Lnet/minecraft/class_10824$class_10825; field_57090 ANGRY + f Lnet/minecraft/class_10824$class_10825; field_57091 GRUMPY + f Lnet/minecraft/class_10824$class_10825; field_57092 BIG + f Lnet/minecraft/class_10824$class_10825; field_57093 CUTE + f Lnet/minecraft/class_10824$class_10825; field_57087 CLASSIC + f Lnet/minecraft/class_10824$class_10825; field_57088 PUGLIN + f Lnet/minecraft/class_10824$class_10825; field_57089 SAD + m ()Ljava/lang/String; method_68139 getId + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V + p 4 suffix + p 3 id + m ()Ljava/lang/String; method_68140 getSoundEventSuffix +c net/minecraft/class_10828 net/minecraft/world/biome/BiomeColors + m (DD[II)I method_68142 getColor + p 2 downfall + p 4 colormap + p 5 fallback + p 0 temperature +c net/minecraft/class_10829 net/minecraft/world/biome/DryFoliageColors + f [I field_57098 colorMap + f I field_57097 DEFAULT + m (DD)I method_68143 getColor + p 0 temperature + p 2 downfall + m ([I)V method_68144 setColorMap + p 0 pixels +c net/minecraft/class_4974 net/minecraft/client/particle/ReversePortalParticle +c net/minecraft/class_4974$class_4975 net/minecraft/client/particle/ReversePortalParticle$Factory + f Lnet/minecraft/class_4002; field_23188 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_26268 createParticle +c net/minecraft/class_2311 net/minecraft/block/DryVegetationBlock + f Lnet/minecraft/class_265; field_10910 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46332 CODEC +c net/minecraft/class_2312 net/minecraft/block/AbstractRedstoneGateBlock + f Lnet/minecraft/class_2746; field_10911 POWERED + f Lnet/minecraft/class_265; field_10912 SHAPE + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_53789 canPlaceAbove + p 1 world + p 2 pos + p 3 state + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_9996 isLocked + p 1 world + p 3 state + p 2 pos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_9988 isTargetNotAligned + p 2 pos + p 1 world + p 3 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_9998 updatePowered + p 1 world + p 2 pos + p 3 state + m (Lnet/minecraft/class_2680;)I method_9992 getUpdateDelayInternal + p 1 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_9997 updateTarget + p 1 world + p 2 pos + p 3 state + m ()Z method_49816 getSideInputFromGatesOnly + m (Lnet/minecraft/class_2680;)Z method_9999 isRedstoneGate + p 0 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)I method_9991 getPower + p 1 world + p 2 pos + p 3 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)I method_9993 getOutputLevel + p 1 world + p 3 state + p 2 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_9990 hasPower + p 1 world + p 2 pos + p 3 state + m (Lnet/minecraft/class_8235;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)I method_10000 getMaxInputLevelSides + p 3 state + p 1 world + p 2 pos +c net/minecraft/class_4976 net/minecraft/datafixer/fix/VillagerGossipFix + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 choiceType + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_26290 method_26290 + p 0 gossips + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28201 method_28201 + p 0 gossipDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28200 method_28200 + p 0 gossipsDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26289 method_26289 + p 0 entityDynamic +c net/minecraft/class_2313 net/minecraft/block/DetectorRailBlock + f I field_31081 SCHEDULED_TICK_DELAY + f Lnet/minecraft/class_2754; field_10914 SHAPE + f Lnet/minecraft/class_2746; field_10913 POWERED + f Lcom/mojang/serialization/MapCodec; field_46334 CODEC + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_10002 updatePoweredStatus + p 3 state + p 1 world + p 2 pos + m (Lnet/minecraft/class_1297;)Z method_31644 method_31644 + p 0 entity + m (Lnet/minecraft/class_1297;)Z method_31643 method_31643 + p 0 cart + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Z)V method_10003 updateNearbyRails + p 1 world + p 2 pos + p 3 state + p 4 unpowering + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Ljava/lang/Class;Ljava/util/function/Predicate;)Ljava/util/List; method_10001 getCarts + p 4 entityPredicate + p 3 entityClass + p 2 pos + p 1 world + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_238; method_10004 getCartDetectionBox + p 1 pos +c net/minecraft/class_2314 net/minecraft/command/argument/serialize/ArgumentSerializer + c Serializes an argument type to be sent to the client. + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Lnet/minecraft/class_2314$class_7217; method_41726 getArgumentTypeProperties + p 1 argumentType + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2314$class_7217; method_10005 fromPacket + p 1 buf + m (Lnet/minecraft/class_2314$class_7217;Lcom/google/gson/JsonObject;)V method_10006 writeJson + p 2 json + p 1 properties + m (Lnet/minecraft/class_2314$class_7217;Lnet/minecraft/class_2540;)V method_10007 writePacket + p 2 buf + p 1 properties +c net/minecraft/class_2314$class_7217 net/minecraft/command/argument/serialize/ArgumentSerializer$ArgumentTypeProperties + m (Lnet/minecraft/class_7157;)Lcom/mojang/brigadier/arguments/ArgumentType; method_41730 createType + p 1 commandRegistryAccess + m ()Lnet/minecraft/class_2314; method_41728 getSerializer +c net/minecraft/class_4970 net/minecraft/block/AbstractBlock + c An abstract class that defines some logic for {@link Block blocks}.\nThis class should not be extended directly. Extend {@link Block} instead.\nCustom block behaviors are specified either through {@linkplain AbstractBlock.Settings\nblock settings} or by overriding methods in this class.\n\n

Methods in this class may be executed during world generation if they take\n{@link WorldAccess} as a parameter. In this case, a {@link net.minecraft.world.ChunkRegion}\nis passed to the parameter, which is not a subclass of {@link World}.\n\n@apiNote In vanilla subclasses, these methods are called either to do the\ndefault behavior (e.g. {@code super.onUse(...)}). Because the methods are {@code protected},\nyou must use these methods via the corresponding method in {@link\nAbstractBlockState}.\n\n

Many methods of this class are called on both the logical client and logical server,\nso take caution when using those methods. The logical side can be checked using\n{@link World#isClient}.\n\n

Quick view

\n

Notes: "Tall or wide block" refers to a block that\nhas multiple parts, such as doors, sunflowers, or beds. "Neighboring\nblock" refers to blocks adjacent to a block on all 6 sides (but not\ndiagonally.)\n\n

Placement related methods

\n\n\n\n \n \n \n \n \n \n \n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n
Block placement related methods (sorted by execution order)
MethodPurposePlayer/dispenserFalling block{@link World#setBlockState(BlockPos, BlockState) setBlockState} call
oldState.{@link #canReplace canReplace}Checking if the current block can be replacedYesYesNo
newBlock.{@link Block#getPlacementState getPlacementState}Getting the placed stateYesYesNo
newState.{@link #canPlaceAt canPlaceAt}Checking the block's placement restrictionYesYesNo
oldState.{@link #onStateReplaced onStateReplaced}Dropping inventory, updating redstone circuit, etcYesYesYes
newState.{@link #onBlockAdded onBlockAdded}Activating redstone component, etcYesYesYes
neighborState.{@link #neighborUpdate neighborUpdate}Activating neighboring redstone component, etcYesYesYes
oldState.{@link #prepare prepare}Updating redstone wire connectionYesYesYes
neighborState.{@link #getStateForNeighborUpdate getStateForNeighborUpdate}Checking the neighboring block's placement restriction, updating connection, etcYesYesYes
newState.{@link #prepare prepare}Updating redstone wire connectionYesYesYes
newBlock.{@link Block#onPlaced onPlaced}Placing the other half of tall or wide block, setting block entity's custom name, etcYesNoNo
\n\n

Breaking related methods

\n\n\n\n \n \n \n \n \n \n \n \n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n
Block breaking related methods (sorted by execution order)
MethodPurposePlayer miningExplosion{@link World#setBlockState(BlockPos, BlockState) setBlockState} / {@link net.minecraft.world.ModifiableWorld#removeBlock(BlockPos, boolean) removeBlock} call{@link net.minecraft.world.ModifiableWorld#breakBlock(BlockPos, boolean) breakBlock} call
state.{@link #onBlockBreakStart onBlockBreakStart}Doing something when player starts breaking a blockYesNoNoNo
state.{@link #calcBlockBreakingDelta calcBlockBreakingDelta}Calculating the player's mining speedYesNoNoNo
block.{@link Block#onBreak onBreak}Spawning particles, breaking the other half of tall or wide block, etcYesNoNoNo
state.{@link #onStateReplaced onStateReplaced}Dropping inventory, updating redstone circuit, etcYesYesYesYes
neighborState.{@link #neighborUpdate neighborUpdate}Activating neighboring redstone component, etcYesYesYesYes
state.{@link #prepare prepare}Updating redstone wire connectionYesYesYesYes
neighborState.{@link #getStateForNeighborUpdate getStateForNeighborUpdate}Checking the neighboring block's placement restriction, updating connection, etcYesYesYesYes
block.{@link Block#onBroken onBroken}Unused in most casesYesNoNoNo
block.{@link Block#afterBreak afterBreak}Dropping stacks, replacing the broken block with another block, etcYesNoNoNo
state.{@link #getDroppedStacks getDroppedStacks}Supplying information to loot context builderYesYesYesYes1
state.{@link #onStacksDropped onStacksDropped}Dropping experience orbsYesYes2YesYes1
\n\n

Notes:\n

    \n
  1. Called before {@link #onStateReplaced onStateReplaced} in this case.
  2. \n
  3. Called before {@link #getDroppedStacks getDroppedStacks} in this case.
  4. \n
+ f Lnet/minecraft/class_7699; field_40337 requiredFeatures + c The set of {@link net.minecraft.resource.featuretoggle.FeatureFlag FeatureFlags} that are required for this block to work correctly.\n\n@see net.minecraft.resource.featuretoggle.FeatureFlags + f Z field_23161 randomTicks + c Whether this block should tick when randomly selected when ticking the world. An example of this ticking is crop growth.\n\n@see Block#hasRandomTicks\n@see net.minecraft.server.world.ServerWorld#tickChunk + f [Lnet/minecraft/class_2350; field_23157 DIRECTIONS + f Lnet/minecraft/class_4970$class_2251; field_23155 settings + c The {@link AbstractBlock.Settings} to apply to this block. + f F field_23163 slipperiness + c A speed reduction applied to a {@link net.minecraft.entity.LivingEntity} that tries to move across this block.\n\n@see Block#getSlipperiness\n@see net.minecraft.entity.LivingEntity#travel + f Ljava/lang/String; field_54005 translationKey + f Z field_23154 dynamicBounds + c Whether this block's collision shape can change.\n\n@see Block#hasDynamicBounds + f F field_23160 resistance + c The blast resistance of the block.\n\n@see Block#getBlastResistance + f F field_23164 velocityMultiplier + c The multiplier applied to the velocity of an {@link net.minecraft.entity.Entity} when it walks on this block.\n\n@see Block#getVelocityMultiplier\n@see net.minecraft.entity.Entity#getVelocityMultiplier + f Z field_23159 collidable + c Whether this block can be walked on or through.\n\n@see #getCollisionShape + f F field_23165 jumpVelocityMultiplier + c The multiplier applied to the velocity of a {@link net.minecraft.entity.LivingEntity} when it jumps off this block.\n\n@see Block#getJumpVelocityMultiplier\n@see net.minecraft.entity.Entity#getJumpVelocityMultiplier + f Ljava/util/Optional; field_23156 lootTableKey + c The {@link RegistryKey} of the loot table that determines what this block drops.\n\n@see #getLootTableKey\n@see #getDroppedStacks + f Lnet/minecraft/class_2498; field_23162 soundGroup + c The collection of sounds played when breaking, stepping on, placing, hitting (with a projectile), or falling on this block.\n\n@see #getSoundGroup + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)J method_9535 getRenderingSeed + c {@return the seed value for rendering}\n\n

This is usually the hash code of {@code pos}. Tall or wide blocks (such as doors or\nbeds) should override this to make sure both parts of the block have the same seed.\n\n@see AbstractBlockState#getRenderingSeed + p 2 pos + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2415;)Lnet/minecraft/class_2680; method_9569 mirror + c {@return {@code state} mirrored by {@code mirror}}\n\n

By default, this returns the provided block state.\n\n@see AbstractBlockState#mirror + p 2 mirror + p 1 state + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_3965;)Lnet/minecraft/class_1269; method_55765 onUseWithItem + p 1 stack + p 5 player + p 4 pos + p 3 world + p 2 state + p 7 hit + p 6 hand + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Z)Lnet/minecraft/class_1799; method_9574 getPickStack + p 1 world + p 2 pos + p 3 state + p 4 includeData + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Z)V method_66388 onStateReplaced + p 4 moved + p 2 world + p 3 pos + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_37403 isShapeFullCube + c @see AbstractBlockState#isFullCube + p 1 state + p 3 pos + p 2 world + m ()Ljava/util/Optional; method_26162 getLootTableKey + m (Lnet/minecraft/class_2680;)Z method_9498 hasComparatorOutput + c {@return whether the block can have a comparator output}\n\n

This does not check the current comparator output of the block.\nUse {@link #getComparatorOutput} in that case.\n\n@see AbstractBlockState#hasComparatorOutput\n\n@see #getComparatorOutput + p 1 state + m (Lnet/minecraft/class_2680;)Z method_9579 isTransparent + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4538;Lnet/minecraft/class_10225;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_5819;)Lnet/minecraft/class_2680; method_9559 getStateForNeighborUpdate + c {@return the state of the block after a neighboring block's state change}\n\n

Returning {@link Blocks#AIR} breaks the block. This is useful to implement supporting\nblock requirement for blocks (if used along with {@link #canPlaceAt}).\n\n

Side effects like activating a redstone component (but not scheduling a tick)\nshould be performed in {@link #neighborUpdate} instead. If the block supports\nwaterlogging and currently has water, this method should be overridden to tick the\nfluid at the block's position.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nnet.minecraft.world.World#isClient}. This is not called if {@link Block#FORCE_STATE} flag is set in the {@code\nsetBlockState} call.\n\n

This method can be used for multiple purposes. Here are some examples:\n

    \n
  • {@link FenceBlock} uses it to update the fence's connection when a horizontally\nneighboring block's state is changed.
  • \n
  • {@link PlantBlock} uses it to break the plant if the state change causes it to\nlose its supporting block.
  • \n
  • {@link DoorBlock} uses it to copy the state of the other half of the door.
  • \n
  • {@link SlabBlock} uses it to schedule the fluid to tick if waterlogged.
  • \n
  • {@link SoulSandBlock} uses it to schedule the water block above to tick\nso that it becomes a bubble column.
  • \n
  • {@link FallingBlock} uses it to schedule the block to tick so that it can\nfall if needed.
  • \n
\n\n@see AbstractBlockState#getStateForNeighborUpdate\n@see #neighborUpdate\n@see #prepare\n@see #canPlaceAt\n@see Block#FORCE_STATE + p 3 tickView + p 2 world + c the world + p 5 direction + c the direction from this block to the neighbor + p 4 pos + c the position of this block + p 7 neighborState + c the state of the updated neighbor block + p 6 neighborPos + c the position of the neighbor block + p 8 random + p 1 state + c the state of this block + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_3965;Lnet/minecraft/class_1676;)V method_19286 onProjectileHit + c Called when a {@link ProjectileEntity} hits a block.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}.\n\n

Here are some examples:\n

    \n
  • {@link TargetBlock} activates.
  • \n
  • {@link BellBlock} rings.
  • \n
  • {@link LightningRodBlock} spawns a lightning.
  • \n
  • {@link AbstractCandleBlock} lights on fire when hit by a projectile on fire.
  • \n
\n\n@see AbstractBlockState#onProjectileHit\n@see ProjectileEntity#onBlockHit\n@see #onEntityCollision + p 1 world + p 4 projectile + p 2 state + p 3 hit + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)I method_9603 getStrongRedstonePower + c {@return the strong redstone power emitted from the block}\n\n

When overriding this, make sure to also override {@link #emitsRedstonePower} to\nreturn {@code true}. {@link #getWeakRedstonePower} might also need to be overridden.\n\n

Strong redstone power is a power that can power a redstone wire when a solid block\nis in between. For example, {@link RedstoneBlock} and {@link TargetBlock} emits weak\nredstone power only. {@link LeverBlock} and {@link ButtonBlock} emits both\nweak and strong redstone power.\n\n@see AbstractBlockState#getStrongRedstonePower\n\n@see #emitsRedstonePower\n@see #getWeakRedstonePower\n@see net.minecraft.world.RedstoneView#isReceivingRedstonePower + p 4 direction + p 2 world + p 3 pos + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3726;)Lnet/minecraft/class_265; method_9549 getCollisionShape + c @see AbstractBlockState#getCollisionShape(BlockView, BlockPos, ShapeContext) + p 1 state + p 2 world + p 3 pos + p 4 context + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3908; method_17454 createScreenHandlerFactory + c {@return the screen handler factory or {@code null} if screen handler cannot be created}\n\n

This method should be overridden for blocks with screen handlers, such as anvils.\nThe created screen handler is usually passed to {@link net.minecraft.entity.player.PlayerEntity#openHandledScreen}.\nSee {@link AnvilBlock#createScreenHandlerFactory} for basic usage. {@link BlockWithEntity}\ndelegates this logic to the block entity implementing {@link\nnet.minecraft.screen.NamedScreenHandlerFactory}. For example, any {@link BlockWithEntity} whose block entity\nextends {@link net.minecraft.block.entity.LockableContainerBlockEntity} needs to override\n{@link net.minecraft.block.entity.LockableContainerBlockEntity#createScreenHandler}\ninstead of this method.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}.\n\n@see AbstractBlockState#createScreenHandlerFactory\n@see net.minecraft.screen.SimpleNamedScreenHandlerFactory\n@see net.minecraft.block.entity.LockableContainerBlockEntity + p 3 pos + p 2 world + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_3965;)Lnet/minecraft/class_1269; method_55766 onUse + p 4 player + p 5 hit + p 1 state + p 2 world + p 3 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)V method_9606 onBlockBreakStart + c Called when a player starts breaking the block (including when instant-mining).\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}.\n\n@see AbstractBlockState#onBlockBreakStart + p 1 state + p 2 world + p 3 pos + p 4 player + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;Z)V method_9565 onStacksDropped + c Called server-side when the stacks are dropped by mining or explosion. This is mostly\noverridden to drop experience orbs. To change the dropped item stacks, use loot tables\nor {@link #getDroppedStacks}. To drop inventory contents, use {@link #onStateReplaced}\ninstead.\n\n

Experience orbs should only be dropped if {@code dropExperience} is {@code true}.\n{@link Block#dropExperienceWhenMined} can be used to drop experience orbs.\n{@link ExperienceDroppingBlock} provides the implementation for experience-dropping blocks.\n\n@see AbstractBlockState#onStacksDropped\n@see ExperienceDroppingBlock\n@see Block#dropExperienceWhenMined\n@see #getDroppedStacks\n@see #onStateReplaced + p 3 pos + p 2 world + p 5 dropExperience + p 4 tool + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;Lnet/minecraft/class_10774;Z)V method_9548 onEntityCollision + c Called when the entity's collision box intersects the block. Therefore,\nthis method is not called for blocks with a collision; use {@link Block#onSteppedOn}\nfor those blocks.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}.\n\n

Here are some examples:\n

    \n
  • {@link CactusBlock} damages the entity.
  • \n
  • {@link AbstractPressurePlateBlock} triggers.
  • \n
  • {@link CobwebBlock} slows the entity.
  • \n
  • {@link EndPortalBlock} teleports the entity.
  • \n
  • {@link HopperBlock} collects the item entity.
  • \n
\n\n@see AbstractBlockState#onEntityCollision\n@see Block#onSteppedOn\n@see #onProjectileHit + p 3 pos + p 4 entity + p 5 handler + p 1 state + p 2 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1657;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)F method_9594 calcBlockBreakingDelta + c @see AbstractBlockState#calcBlockBreakingDelta + p 3 world + p 4 pos + p 1 state + p 2 player + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_9522 isSideInvisible + c @see AbstractBlockState#isSideInvisible + p 2 stateFrom + p 1 state + p 3 direction + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2498; method_9573 getSoundGroup + p 1 state + m (Lnet/minecraft/class_2680;)Z method_9542 hasRandomTicks + p 1 state + m (Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54093 method_54093 + p 1 instance + m ()Lnet/minecraft/class_1792; method_8389 asItem + c {@return the block's corresponding item}\n\n

This is not affected by loot tables. Blocks without corresponding items,\nsuch as piston head, will return {@link net.minecraft.item.Items#AIR}.\n\n@see net.minecraft.item.BlockItem + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; method_54096 createSettingsCodec + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)F method_9575 getAmbientOcclusionLightLevel + c @see AbstractBlockState#getAmbientOcclusionLightLevel + p 3 pos + p 2 world + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_8567$class_8568;)Ljava/util/List; method_9560 getDroppedStacks + c {@return the block's dropped item stacks}\n\n

The default implementation uses loot tables. Blocks with custom drops should\nnot hardcode the drops; instead, make a new loot table. If the loot table\nneeds an additional context, override this method and modify {@code builder} before\ncalling {@code super.getDroppedStacks}. An example of this is {@link ShulkerBoxBlock}.\nNote that to prevent item duplication, when appending item stacks to the builder,\n{@link ItemStack#split} should be called.\n\n

This method should not be used for dropping inventory contents ({@link\n#onStateReplaced} should be used instead) or to drop experience orbs ({@link\n#onStacksDropped} should be used instead).\n\n@see AbstractBlockState#getDroppedStacks\n@see #onStateReplaced\n@see #onStacksDropped\n@see ItemStack#split\n@see net.minecraft.loot.context.LootContextParameters + p 2 builder + p 1 state + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2464; method_9604 getRenderType + c {@return the block's render type (invisible, animated, model)}\n\n@see AbstractBlockState#getRenderType + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265; method_9584 getRaycastShape + c @see AbstractBlockState#getRaycastShape + p 2 world + p 3 pos + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_9514 randomTick + c Called server-side when a block gets ticked randomly. This can be overridden to implement\nvarious logics, most commonly plant growth. Default implementation does\nnothing. To control the rate of the action, use {@code random}.\n\n

Random tick speed is controlled by the game rule {@link\nnet.minecraft.world.GameRules#RANDOM_TICK_SPEED randomTickSpeed} and can be disabled.\nOnly blocks within 128-block cylinder (i.e. ignoring Y coordinates) around players\nreceive random ticks.\n\n

Blocks overriding this must use {@link AbstractBlock.Settings#ticksRandomly}\nblock settings.\n\n

Here are some examples:\n

    \n
  • {@link SugarCaneBlock} uses this to grow sugar cane.
  • \n
  • {@link OxidizableBlock} uses this to oxidize.
  • \n
  • {@link NetherPortalBlock} uses this to spawn zombified piglins.
  • \n
  • {@link LeavesBlock} uses this to decay when far from logs.
  • \n
\n\n@see AbstractBlockState#randomTick\n\n@see CropBlock\n@see #scheduledTick + p 2 world + p 1 state + p 4 random + p 3 pos + m (Lnet/minecraft/class_4970$class_2251;)V + p 1 settings + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;II)Z method_9592 onSyncedBlockEvent + c Handles the block event, which is an event specific to a block with an integer ID and data.\n\n@return whether the event was handled successfully\n\n@see AbstractBlockState#onSyncedBlockEvent\n@see World#addSyncedBlockEvent + p 3 pos + p 2 world + p 5 data + p 4 type + p 1 state + m (Lnet/minecraft/class_2680;)Z method_9526 hasSidedTransparency + c {@return whether the block's transparency depends on the side of the block, like slabs}\n\n@see AbstractBlockState#hasSidedTransparency + p 1 state + m (Lnet/minecraft/class_2680;)Z method_72600 keepBlockEntityWhenReplacedWith + p 1 state + m (Lnet/minecraft/class_2680;)Z method_9506 emitsRedstonePower + c {@return whether the block is capable of emitting redstone power}\n\n

This does not return whether the block is currently emitting redstone power.\nUse {@link World#isEmittingRedstonePower} in that case.\n\n@see AbstractBlockState#emitsRedstonePower\n\n@see World#isEmittingRedstonePower + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3611;)Z method_22358 canBucketPlace + c {@return whether a bucket can replace the block with the fluid}\n\n

By default, this checks if the block allows replacing or is not solid.\nBlocks intended to be unbreakable should override this to implement additional checks.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}.\n\n@see AbstractBlockState#canBucketPlace\n@see #canReplace\n@see AbstractBlockState#isReplaceable + p 2 fluid + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3726;)Lnet/minecraft/class_265; method_26159 getCameraCollisionShape + c @see AbstractBlockState#getCameraCollisionShape + p 3 pos + p 4 context + p 1 state + p 2 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;)Lnet/minecraft/class_265; method_64022 getInsideCollisionShape + p 3 pos + p 4 entity + p 1 state + p 2 world + m ()Lnet/minecraft/class_4970$class_2251; method_54095 getSettings + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)I method_9572 getComparatorOutput + c {@return the comparator output of the block, from {@code 0} to {@code 15}}\n\n

When overriding this, {@link #hasComparatorOutput} must also be overridden.\n\n@see AbstractBlockState#getComparatorOutput\n@see #hasComparatorOutput + p 3 pos + p 4 direction + p 1 state + p 2 world + m ()F method_37247 getVerticalModelOffsetMultiplier + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_10;)Z method_9516 canPathfindThrough + c {@return if an entity using navigation type {@code type} can navigate through this block}\n\n@apiNote Subclasses may override this to prevent or restrict pathfinding through the\nblock. For example, {@link DoorBlock} restricts it to open doors only.\n\n@see AbstractBlockState#canPathfindThrough + p 2 type + p 1 state + m ()Lnet/minecraft/class_3620; method_26403 getDefaultMapColor + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_9558 canPlaceAt + c {@return whether the block can be placed at {@code pos}}\n\n

Blocks with supporting block requirements should override this method. Note that\nthis should also be checked manually during {@link #getStateForNeighborUpdate}\nin order to break the block that lost its supporting block.\n\n

This is only checked during {@linkplain net.minecraft.item.BlockItem#canPlace the\nuse of block items} or by endermen, falling blocks, etc that can place blocks. This\ndoes not affect block state changes performed through {@link\nnet.minecraft.world.World#setBlockState(BlockPos, BlockState)} call.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nnet.minecraft.world.World#isClient}.\n\n@see AbstractBlockState#canPlaceAt\n@see #getStateForNeighborUpdate + p 3 pos + p 2 world + p 1 state + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_9571 getCullingShape + c @see AbstractBlockState#getCullingShape + p 1 state + m ()Lcom/mojang/serialization/MapCodec; method_53969 getCodec + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Z)V method_9615 onBlockAdded + c Called server-side on the new block when the block state is changed. This includes block\nplacement. When overriding this method, {@link #getStateForNeighborUpdate} or {@link\n#neighborUpdate} should also be overridden. The method is used in the following cases:\n\n

    \n
  • When activating a redstone component on placement (used along with {@link\n#neighborUpdate}
  • \n
  • When resetting a position-dependent state (see {@link TargetBlock})
  • \n
  • When converting a block on placement (see {@link WetSpongeBlock})
  • \n
  • When {@linkplain AbstractFireBlock fire} lights a portal
  • \n
\n\n@see AbstractBlockState#onBlockAdded\n@see #onStateReplaced + p 4 oldState + p 5 notify + p 1 state + p 2 world + p 3 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)I method_9524 getWeakRedstonePower + c {@return the weak redstone power emitted from the block}\n\n

When overriding this, make sure to also override {@link #emitsRedstonePower} to\nreturn {@code true}.\n\n

Weak redstone power is a power that cannot power a redstone wire when a solid block\nis in between. For example, {@link RedstoneBlock} and {@link TargetBlock} emits weak\nredstone power only. {@link LeverBlock} and {@link ButtonBlock} emits both\nweak and strong redstone power depending on the direction.\n\n@see AbstractBlockState#getWeakRedstonePower\n\n@see #emitsRedstonePower\n@see #getStrongRedstonePower\n@see net.minecraft.world.RedstoneView#isReceivingRedstonePower + p 3 pos + p 2 world + p 4 direction + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1927;Ljava/util/function/BiConsumer;)V method_55124 onExploded + p 3 pos + p 2 world + p 5 stackMerger + p 4 explosion + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;II)V method_9517 prepare + c Called when the block state changes, before the {@linkplain #getStateForNeighborUpdate\nneighbor-triggered state update} on the original block, and after the\nneighbor-triggered state update on the replaced block.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}.\n\n@apiNote This is used by {@link RedstoneWireBlock} to update connected redstone wire.\n\n@see AbstractBlockState#prepare(WorldAccess, BlockPos, int, int)\n@see #getStateForNeighborUpdate\n@see #neighborUpdate + p 1 state + p 5 maxUpdateDepth + p 4 flags + p 3 pos + p 2 world + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_3610; method_9545 getFluidState + c {@return the state's associated fluid state}\n\n

{@linkplain Waterloggable Waterloggable blocks} must override this to return {@code Fluids.WATER.getStill(false)}\nwhen waterlogged.\n\n@see AbstractBlockState#getFluidState\n@see net.minecraft.fluid.Fluids#WATER + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2470;)Lnet/minecraft/class_2680; method_9598 rotate + c {@return {@code state} rotated by {@code rotation}}\n\n

By default, this returns the provided block state.\n\n@see AbstractBlockState#rotate + p 2 rotation + p 1 state + m ()Ljava/lang/String; method_63499 getTranslationKey + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_9904;Z)V method_9612 neighborUpdate + c Called when a neighboring block is updated. This method should be overridden\nto perform an action with a side effect, most notably an activation of a redstone\ncomponent. This can also be used to perform an action changing block states of\nother blocks, such as {@link SpongeBlock} which absorbs water.\n\n

To replace the state of the block itself, override {@link #getStateForNeighborUpdate}\ninstead.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}.\n\n@see AbstractBlockState#neighborUpdate\n@see #getStateForNeighborUpdate\n@see net.minecraft.world.RedstoneView#isReceivingRedstonePower + p 1 state + p 2 world + p 3 pos + p 4 sourceBlock + p 5 wireOrientation + p 6 notify + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1750;)Z method_9616 canReplace + c {@return whether the item can replace the block}\n\n

By default, this checks if the block allows replacing and whether the\nitem differs from the block's item. Items composed of multiple blocks, such as candles,\nvines, or snow layers, should override this to implement additional checks.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}.\n\n@see AbstractBlockState#canReplace\n@see #canBucketPlace\n@see AbstractBlockState#isReplaceable + p 1 state + p 2 context + m (Ljava/util/function/BiConsumer;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)V method_55224 method_55224 + p 2 stack + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265; method_25959 getSidesShape + c @see AbstractBlockState#getSidesShape + p 2 world + p 3 pos + p 1 state + m ()Lnet/minecraft/class_2248; method_26160 asBlock + c {@return the block as {@link Block}}\n\n

This is used for casting purposes. + m ()F method_32913 getMaxHorizontalModelOffset + m (Lnet/minecraft/class_2680;)I method_9505 getOpacity + c @see AbstractBlockState#getOpacity + p 1 state + m ()F method_36555 getHardness + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; method_54094 createCodec + p 0 blockFromSettings + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3726;)Lnet/minecraft/class_265; method_9530 getOutlineShape + c @see AbstractBlockState#getOutlineShape(BlockView, BlockPos, ShapeContext) + p 1 state + p 2 world + p 3 pos + p 4 context + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_9588 scheduledTick + c Called server-side when a block receives a scheduled tick. This can be used like a timer.\nScheduled ticks are added using {@link\nnet.minecraft.world.WorldAccess#scheduleBlockTick(BlockPos, Block, int)}.\n\n

Scheduled ticks are often used inside {@link #getStateForNeighborUpdate}.\n\n

Here are some examples:\n

    \n
  • {@link SugarCaneBlock} checks the placement requirement.
  • \n
  • {@link DispenserBlock} dispenses its content.
  • \n
  • {@link CommandBlock} executes its command.
  • \n
  • {@link FrogspawnBlock} spawns a tadpole.
  • \n
  • {@link SoulSandBlock} updates a bubble column.
  • \n
  • {@link FallingBlock} tries to fall.
  • \n
\n\n@see AbstractBlockState#scheduledTick\n@see net.minecraft.world.WorldAccess#scheduleBlockTick(BlockPos, Block, int)\n@see #getStateForNeighborUpdate\n@see #randomTick + p 4 random + p 2 world + p 3 pos + p 1 state +c net/minecraft/class_4970$class_4972 net/minecraft/block/AbstractBlock$TypedContextPredicate + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Ljava/lang/Object;)Z test test + p 4 type + p 3 pos + p 2 world + p 1 state +c net/minecraft/class_4970$class_4973 net/minecraft/block/AbstractBlock$ContextPredicate + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z test test + p 3 pos + p 1 state + p 2 world +c net/minecraft/class_4970$class_4971 net/minecraft/block/AbstractBlock$AbstractBlockState + f Lnet/minecraft/class_4970$class_4973; field_23175 suffocationPredicate + f Lnet/minecraft/class_4970$class_4973; field_23174 solidBlockPredicate + f [Lnet/minecraft/class_265; field_52641 cullingFaces + f Z field_43392 burnable + f Z field_52639 opaqueFullCube + f Lnet/minecraft/class_4970$class_4973; field_23177 postProcessPredicate + f Lnet/minecraft/class_4970$class_4971$class_3752; field_23166 shapeCache + f [Lnet/minecraft/class_265; field_52646 FULL_CULLING_FACES + f Lnet/minecraft/class_265; field_52640 cullingShape + f Z field_23169 isAir + f I field_52643 opacity + f Z field_23173 opaque + f Z field_25184 toolRequired + f Lnet/minecraft/class_4970$class_4973; field_23176 blockVisionPredicate + f Lnet/minecraft/class_4970$class_8176; field_42817 offsetter + f Z field_40340 ticksRandomly + f Lnet/minecraft/class_3619; field_43393 pistonBehavior + f I field_23167 luminance + f [Lnet/minecraft/class_2350; field_52644 DIRECTIONS + f Z field_44626 replaceable + f Z field_52642 transparent + f Lnet/minecraft/class_4970$class_4973; field_23178 emissiveLightingPredicate + f Lnet/minecraft/class_2766; field_44625 instrument + f Z field_40338 blockBreakParticles + f [Lnet/minecraft/class_265; field_52645 EMPTY_CULLING_FACES + f F field_23172 hardness + f Z field_23168 hasSidedTransparency + f Lnet/minecraft/class_3610; field_40339 fluidState + f Lnet/minecraft/class_3620; field_23171 mapColor + f Z field_44624 solid + f Z field_44480 liquid + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_26228 shouldSuffocate + p 2 pos + p 1 world + m (Lnet/minecraft/class_6880;)Z method_53257 isOf + p 1 blockEntry + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)I method_26203 getStrongRedstonePower + p 3 direction + p 2 pos + p 1 world + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)F method_26165 calcBlockBreakingDelta + p 1 player + p 3 pos + p 2 world + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_26232 shouldPostProcess + p 2 pos + p 1 world + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3726;)Lnet/minecraft/class_265; method_26202 getCameraCollisionShape + p 3 context + p 2 pos + p 1 world + m (Lnet/minecraft/class_6862;Ljava/util/function/Predicate;)Z method_27851 isIn + p 2 predicate + p 1 tag + m ()Z method_26229 hasRandomTicks + m (Lnet/minecraft/class_6885;)Z method_40143 isIn + p 1 blocks + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;II)Z method_26177 onSyncedBlockEvent + p 4 data + p 1 world + p 3 type + p 2 pos + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Z)Lnet/minecraft/class_1799; method_65171 getPickStack + p 2 pos + p 1 world + p 3 includeData + m ()Z method_26221 hasComparatorOutput + m (Lnet/minecraft/class_10;)Z method_26171 canPathfindThrough + p 1 type + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_26192 scheduledTick + p 3 random + p 2 pos + p 1 world + m (Lnet/minecraft/class_5321;)Z method_54097 matchesKey + p 1 key + m (Lnet/minecraft/class_2248;)Z method_27852 isOf + p 1 block + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;)Lnet/minecraft/class_265; method_64025 getInsideCollisionShape + p 2 pos + m (Lnet/minecraft/class_2470;)Lnet/minecraft/class_2680; method_26186 rotate + p 1 rotation + m (Lnet/minecraft/class_3611;)Z method_26188 canBucketPlace + p 1 fluid + m ()Z method_49228 hasModelOffset + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265; method_26220 getCollisionShape + p 2 pos + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;Z)V method_26180 onStacksDropped + p 1 world + p 4 dropExperience + p 2 pos + p 3 tool + m ()I method_26193 getOpacity + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_3965;)Lnet/minecraft/class_1269; method_55780 onUseWithItem + p 2 world + p 1 stack + p 4 hand + p 3 player + p 5 hit + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_26234 isFullCube + p 2 pos + p 1 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;I)V method_30101 updateNeighbors + p 1 world + p 3 flags + p 2 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_26199 randomTick + p 3 random + p 2 pos + p 1 world + m ()Ljava/util/stream/Stream; method_40144 streamTags + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_3965;Lnet/minecraft/class_1676;)V method_26175 onProjectileHit + p 2 state + p 1 world + p 4 projectile + p 3 hit + m ()Z method_51367 isSolid + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_243; method_26226 getModelOffset + p 1 pos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;)Z method_26168 hasSolidTopSurface + p 1 world + p 2 pos + p 3 entity + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)F method_26210 getAmbientOcclusionLightLevel + p 2 pos + p 1 world + m ()Z method_26219 emitsRedstonePower + m ()Z method_26211 hasSidedTransparency + m ()Lnet/minecraft/class_2766; method_51364 getInstrument + m ()Lnet/minecraft/class_3619; method_26223 getPistonBehavior + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)I method_26195 getWeakRedstonePower + p 2 pos + p 1 world + p 3 direction + m ()Lnet/minecraft/class_2498; method_26231 getSoundGroup + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Z)V method_26182 onBlockAdded + p 2 pos + p 3 state + p 1 world + p 4 notify + m ()V method_26200 initShapeCache + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2591;)Lnet/minecraft/class_5558; method_31708 getBlockEntityTicker + p 2 blockEntityType + p 1 world + m (Lnet/minecraft/class_2680;)Z method_72668 keepBlockEntityWhenReplacedWith + p 1 state + m ()Z method_26167 isTransparent + m (Lnet/minecraft/class_8567$class_8568;)Ljava/util/List; method_26189 getDroppedStacks + p 1 builder + m ()Lnet/minecraft/class_265; method_26201 getCullingShape + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_26212 isSolidBlock + p 2 pos + p 1 world + m ()I method_26213 getLuminance + c {@return the light level emitted by this block state} + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_26208 hasEmissiveLighting + p 1 world + p 2 pos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;)Z method_26170 allowsSpawning + p 1 world + p 3 type + p 2 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1927;Ljava/util/function/BiConsumer;)V method_55225 onExploded + p 1 world + p 2 pos + p 3 explosion + p 4 stackMerger + m ()Z method_51365 shouldBeSolid + m (Lnet/minecraft/class_2248;Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap;Lcom/mojang/serialization/MapCodec;)V + p 1 block + p 2 propertyMap + p 3 codec + m ()Lnet/minecraft/class_6880; method_41520 getRegistryEntry + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Z)V method_66478 onStateReplaced + p 1 world + p 3 moved + p 2 pos + m ()Z method_26225 isOpaque + m ()Z method_26209 exceedsCube + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)V method_26179 onBlockBreakStart + p 1 world + p 2 pos + p 3 player + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_26206 isSideSolidFullSquare + p 2 pos + p 1 world + p 3 direction + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_10225;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_5819;)Lnet/minecraft/class_2680; method_26191 getStateForNeighborUpdate + c Gets the possibly updated block state of this block when a neighboring block is updated.\n\n@return the new state of this block + p 5 neighborPos + c the position of the neighbor block + p 6 neighborState + c the state of the updated neighbor block + p 3 pos + c the position of this block + p 4 direction + c the direction from this block to the neighbor + p 7 random + p 1 world + c the world + p 2 tickView + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;I)V method_30102 prepare + p 2 pos + p 1 world + p 3 flags + m ()Lnet/minecraft/class_2680; method_26233 asBlockState + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;Lnet/minecraft/class_10774;Z)V method_26178 onEntityCollision + p 1 world + p 2 pos + p 3 entity + m ()Z method_51176 isLiquid + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)I method_26176 getComparatorOutput + p 1 world + p 2 pos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265; method_26224 getRaycastShape + p 2 pos + p 1 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;II)V method_26183 updateNeighbors + p 1 world + p 4 maxUpdateDepth + p 3 flags + p 2 pos + m ()Z method_51366 blocksMovement + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3620; method_26205 getMapColor + p 1 world + p 2 pos + m ()Z method_45475 hasBlockBreakParticles + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3726;)Lnet/minecraft/class_265; method_26194 getCollisionShape + p 1 world + p 3 context + p 2 pos + m ()Z method_50011 isBurnable + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_9904;Z)V method_26181 neighborUpdate + p 2 pos + p 1 world + p 4 wireOrientation + p 3 sourceBlock + p 5 notify + m ()Lnet/minecraft/class_3610; method_26227 getFluidState + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_5431;)Z method_30368 isSideSolid + p 4 shapeType + p 2 pos + p 3 direction + p 1 world + m (Lnet/minecraft/class_1750;)Z method_26166 canReplace + p 1 context + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3908; method_26196 createScreenHandlerFactory + p 1 world + p 2 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;II)V method_26198 prepare + p 1 world + p 2 pos + p 3 flags + p 4 maxUpdateDepth + m ([Lnet/minecraft/class_265;)V method_61765 method_61765 + p 0 direction + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_26230 shouldBlockVision + p 2 pos + p 1 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_26187 isSideInvisible + p 2 direction + p 1 state + m ()Lnet/minecraft/class_2248; method_26204 getBlock + m ()Z method_26215 isAir + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_265; method_26173 getCullingFace + p 1 direction + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;Lnet/minecraft/class_2350;)Z method_26169 isSolidSurface + p 1 world + p 2 pos + p 3 entity + p 4 direction + m ()Z method_29291 isToolRequired + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)F method_26214 getHardness + p 2 pos + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_3965;)Lnet/minecraft/class_1269; method_55781 onUse + p 3 hit + p 2 player + p 1 world + m (Lnet/minecraft/class_2415;)Lnet/minecraft/class_2680; method_26185 mirror + p 1 mirror + m ()Z method_45474 isReplaceable + m (Lnet/minecraft/class_6862;)Z method_26164 isIn + p 1 tag + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265; method_26218 getOutlineShape + p 1 world + p 2 pos + m ([Lnet/minecraft/class_265;)V method_61766 method_61766 + p 0 direction + m (Lnet/minecraft/class_2338;)J method_26190 getRenderingSeed + p 1 pos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265; method_26222 getSidesShape + p 2 pos + p 1 world + m ()Z method_31709 hasBlockEntity + m ()Z method_26216 isOpaqueFullCube + m ()Lnet/minecraft/class_2464; method_26217 getRenderType + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_26184 canPlaceAt + p 2 pos + p 1 world + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3726;)Lnet/minecraft/class_265; method_26172 getOutlineShape + p 1 world + p 2 pos + p 3 context +c net/minecraft/class_4970$class_4971$class_3752 net/minecraft/block/AbstractBlock$AbstractBlockState$ShapeCache + f Lnet/minecraft/class_265; field_19360 collisionShape + f Z field_20337 isFullCube + f [Lnet/minecraft/class_2350; field_16559 DIRECTIONS + f [Z field_19429 solidSides + f I field_25830 SHAPE_TYPE_LENGTH + f Z field_17651 exceedsCube + m (Lnet/minecraft/class_2680;)V + p 1 state + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_5431;)Z method_30369 isSideSolid + p 2 shapeType + p 1 direction + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_5431;)I method_30370 indexSolidSide + p 1 shapeType + p 0 direction + m (Lnet/minecraft/class_2350$class_2351;)Z method_17901 method_17901 + p 1 axis +c net/minecraft/class_4970$class_8176 net/minecraft/block/AbstractBlock$Offsetter + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)Lnet/minecraft/class_243; evaluate evaluate + p 1 state + p 2 pos +c net/minecraft/class_4970$class_2250 net/minecraft/block/AbstractBlock$OffsetType + f Lnet/minecraft/class_4970$class_2250; field_10656 NONE + f Lnet/minecraft/class_4970$class_2250; field_10655 XYZ + f Lnet/minecraft/class_4970$class_2250; field_10657 XZ +c net/minecraft/class_4970$class_2251 net/minecraft/block/AbstractBlock$Settings + f F field_21209 jumpVelocityMultiplier + f Lnet/minecraft/class_3619; field_43395 pistonBehavior + f Z field_44627 forceNotSolid + f Z field_20721 opaque + f Z field_44481 liquid + f Lnet/minecraft/class_4970$class_4973; field_23185 postProcessPredicate + f Lnet/minecraft/class_2498; field_10665 soundGroup + f F field_10667 slipperiness + f Z field_40341 blockBreakParticles + f F field_10669 hardness + f Lnet/minecraft/class_7699; field_40342 requiredFeatures + f Z field_44630 replaceable + f Z field_10664 collidable + f Lnet/minecraft/class_4970$class_4973; field_23184 blockVisionPredicate + f Lnet/minecraft/class_4970$class_8176; field_42818 offsetter + f Lnet/minecraft/class_4970$class_4972; field_23181 allowsSpawningPredicate + f Z field_25185 toolRequired + f Lnet/minecraft/class_5321; field_54006 registryKey + f F field_10660 resistance + f Ljava/util/function/Function; field_10662 mapColorProvider + f F field_23179 velocityMultiplier + f Lcom/mojang/serialization/Codec; field_46532 CODEC + f Z field_10661 randomTicks + f Lnet/minecraft/class_10162; field_54008 translationKey + f Lnet/minecraft/class_4970$class_4973; field_23183 suffocationPredicate + f Z field_43394 burnable + f Z field_10670 dynamicBounds + f Z field_44628 forceSolid + f Lnet/minecraft/class_10162; field_54007 lootTable + f Lnet/minecraft/class_2766; field_44629 instrument + f Lnet/minecraft/class_4970$class_4973; field_23186 emissiveLightingPredicate + f Ljava/util/function/ToIntFunction; field_10663 luminance + f Lnet/minecraft/class_4970$class_4973; field_23182 solidBlockPredicate + f Z field_23180 isAir + m (Lnet/minecraft/class_2766;)Lnet/minecraft/class_4970$class_2251; method_51368 instrument + p 1 instrument + m (Ljava/util/function/ToIntFunction;)Lnet/minecraft/class_4970$class_2251; method_9631 luminance + c Specifies the light level emitted by a block. + p 1 luminance + c a per block state light level, with values between 0 and 15 + m (Lnet/minecraft/class_4970$class_4973;)Lnet/minecraft/class_4970$class_2251; method_26243 suffocates + c Specifies logic that calculates whether an entity should suffocate if inside of a block. + p 1 predicate + m ([Lnet/minecraft/class_7696;)Lnet/minecraft/class_4970$class_2251; method_45476 requires + p 1 features + m (Lnet/minecraft/class_4970$class_4973;)Lnet/minecraft/class_4970$class_2251; method_26247 postProcess + p 1 predicate + m (F)Lnet/minecraft/class_4970$class_2251; method_23352 jumpVelocityMultiplier + p 1 jumpVelocityMultiplier + m ()Lnet/minecraft/class_4970$class_2251; method_51370 notSolid + m (F)Lnet/minecraft/class_4970$class_2251; method_9632 strength + p 1 strength + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)Lnet/minecraft/class_243; method_49231 method_49231 + p 0 state + p 1 pos + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_63503 method_63503 + p 0 registryKey + m (FF)Lnet/minecraft/class_4970$class_2251; method_9629 strength + p 2 resistance + p 1 hardness + m (Lnet/minecraft/class_2498;)Lnet/minecraft/class_4970$class_2251; method_9626 sounds + p 1 soundGroup + m ()Lnet/minecraft/class_4970$class_2251; method_9637 create + m (F)Lnet/minecraft/class_4970$class_2251; method_9628 slipperiness + p 1 slipperiness + m (Ljava/util/Optional;)Lnet/minecraft/class_4970$class_2251; method_63502 lootTable + p 1 lootTableKey + m (Lnet/minecraft/class_3620;)Lnet/minecraft/class_4970$class_2251; method_31710 mapColor + p 1 color + m (Lnet/minecraft/class_4970;)Lnet/minecraft/class_4970$class_2251; method_9630 copy + p 0 block + m (Lnet/minecraft/class_4970$class_4973;)Lnet/minecraft/class_4970$class_2251; method_26236 solidBlock + p 1 predicate + m (F)Lnet/minecraft/class_4970$class_2251; method_36557 hardness + p 1 hardness + m ()Lnet/minecraft/class_4970$class_2251; method_51369 solid + m ()Lnet/minecraft/class_4970$class_2251; method_26250 air + m (F)Lnet/minecraft/class_4970$class_2251; method_23351 velocityMultiplier + p 1 velocityMultiplier + m (Lnet/minecraft/class_4970$class_4973;)Lnet/minecraft/class_4970$class_2251; method_26249 emissiveLighting + p 1 predicate + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_4970$class_2251; method_51517 mapColor + p 1 color + m ()Lnet/minecraft/class_4970$class_2251; method_29292 requiresTool + m ()Lnet/minecraft/class_4970$class_2251; method_9634 noCollision + c Specifies that a block should have no collision bounds.\n\n

This also marks a block as non-opaque. + m ()Lnet/minecraft/class_4970$class_2251; method_9618 breakInstantly + c Specifies that a block is broken instantly. + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_26244 method_26244 + p 1 world + p 0 state + p 2 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_26248 method_26248 + p 2 pos + p 1 world + p 0 state + m (Lnet/minecraft/class_4970;)Lnet/minecraft/class_4970$class_2251; method_55226 copyShallow + p 0 block + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_4970$class_2251; method_63500 registryKey + p 1 registryKey + m (Lnet/minecraft/class_2680;)I method_26237 method_26237 + p 0 state + m (F)Lnet/minecraft/class_4970$class_2251; method_36558 resistance + p 1 resistance + m (Lnet/minecraft/class_4970$class_4972;)Lnet/minecraft/class_4970$class_2251; method_26235 allowsSpawning + c Specifies logic that calculates whether an entity can spawn on a block. + p 1 predicate + c the predicate used to calculate whether an entity can spawn on this block + m (Lnet/minecraft/class_4970$class_4973;)Lnet/minecraft/class_4970$class_2251; method_26245 blockVision + p 1 predicate + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_63504 method_63504 + p 0 registryKey + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_2680;)Lnet/minecraft/class_3620; method_51518 method_51518 + p 1 state + m ()Lnet/minecraft/class_4970$class_2251; method_42327 dropsNothing + m (Lnet/minecraft/class_3620;Lnet/minecraft/class_2680;)Lnet/minecraft/class_3620; method_51519 method_51519 + p 1 state + m ()Ljava/util/Optional; method_63505 getLootTableKey + m ()Lnet/minecraft/class_4970$class_2251; method_22488 nonOpaque + c Specifies that a block should be non-opaque and light should be allowed to pass through. + m ()Ljava/lang/String; method_63506 getTranslationKey + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;)Z method_26239 method_26239 + p 3 type + p 1 world + p 2 pos + p 0 state + m (Lnet/minecraft/class_4970$class_2250;)Lnet/minecraft/class_4970$class_2251; method_49229 offset + p 1 offsetType + m ()Lnet/minecraft/class_4970$class_2251; method_51177 liquid + m (Ljava/util/function/Function;)Lnet/minecraft/class_4970$class_2251; method_51520 mapColor + p 1 mapColorProvider + m ()Lnet/minecraft/class_4970$class_2251; method_9640 ticksRandomly + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_3620; method_51521 method_51521 + p 0 state + m (Ljava/lang/String;)Lnet/minecraft/class_4970$class_2251; method_63501 overrideTranslationKey + p 1 translationKey + m ()Lnet/minecraft/class_4970$class_2251; method_9624 dynamicBounds + c Specifies that a block's collision bounds can dynamically resize.\nBy default, block collision bounds are cached for performance.\nBy invoking this method, the game will not cache the block collision bounds and instead calculate the collision bounds when needed. + m (Lnet/minecraft/class_3619;)Lnet/minecraft/class_4970$class_2251; method_50012 pistonBehavior + p 1 pistonBehavior + m ()Lnet/minecraft/class_4970$class_2251; method_51371 replaceable + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_26246 method_26246 + p 1 world + p 0 state + p 2 pos + m ()Lnet/minecraft/class_4970$class_2251; method_45477 noBlockBreakParticles + m ()Lnet/minecraft/class_4970$class_2251; method_50013 burnable + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_26238 method_26238 + p 1 world + p 2 pos + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)Lnet/minecraft/class_243; method_49230 method_49230 + p 1 pos + p 0 state +c net/minecraft/class_2310 net/minecraft/block/HorizontalConnectingBlock + f Ljava/util/function/Function; field_55752 outlineShapeFunction + f Lnet/minecraft/class_2746; field_10900 WATERLOGGED + f Ljava/util/function/Function; field_55751 collisionShapeFunction + f Lnet/minecraft/class_2746; field_10905 NORTH + f Lnet/minecraft/class_2746; field_10903 WEST + f Ljava/util/Map; field_10902 FACING_PROPERTIES + f Lnet/minecraft/class_2746; field_10904 SOUTH + f Lnet/minecraft/class_2746; field_10907 EAST + m (Ljava/util/Map$Entry;)Z method_9986 method_9986 + p 0 entry + m (FFFFF)Ljava/util/function/Function; method_9984 createShapeFunction + p 2 radius2 + p 1 radius1 + p 4 offset2 + p 3 height1 + p 5 height2 + m (FFFFFLnet/minecraft/class_4970$class_2251;)V + p 1 radius1 + p 5 collisionHeight + p 4 boundingHeight2 + p 3 boundingHeight1 + p 2 radius2 + p 6 settings + m (Lnet/minecraft/class_265;Ljava/util/Map;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66428 method_66428 + p 2 state +c net/minecraft/class_2309 net/minecraft/block/DaylightDetectorBlock + f Lnet/minecraft/class_265; field_10898 SHAPE + f Lnet/minecraft/class_2746; field_10899 INVERTED + f Lnet/minecraft/class_2758; field_10897 POWER + f Lcom/mojang/serialization/MapCodec; field_46331 CODEC + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_9983 updateState + p 2 pos + p 1 world + p 0 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2603;)V method_31642 tick + p 1 pos + p 0 world + p 3 blockEntity + p 2 state +c net/minecraft/class_2304 net/minecraft/block/CraftingTableBlock + f Lnet/minecraft/class_2561; field_17362 TITLE + f Lcom/mojang/serialization/MapCodec; field_46328 CODEC + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ILnet/minecraft/class_1661;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1703; method_17466 method_17466 + p 3 inventory + p 4 player + p 2 syncId +c net/minecraft/class_4967 net/minecraft/sound/BiomeAdditionsSound + c Represents an "additions sound" for a biome. + f Lcom/mojang/serialization/Codec; field_24673 CODEC + f Lnet/minecraft/class_6880; comp_4987 sound + f D comp_4988 tickChance + m (Lnet/minecraft/class_6880;D)V + p 1 sound + p 2 chance + m ()Lnet/minecraft/class_6880; comp_4987 sound + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75263 method_75263 + p 0 instance + m (Lnet/minecraft/class_4967;)Ljava/lang/Double; method_75264 method_75264 + p 0 sound + m (Lnet/minecraft/class_4967;)Lnet/minecraft/class_6880; method_75265 method_75265 + p 0 sound + m ()D comp_4988 tickChance +c net/minecraft/class_4966 net/minecraft/world/gen/chunk/VerticalBlockSample + f I field_28105 startY + f [Lnet/minecraft/class_2680; field_23143 states + m (I[Lnet/minecraft/class_2680;)V + p 1 startY + p 2 states +c net/minecraft/class_2306 net/minecraft/command/EntitySelectorOptions + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_10887 INAPPLICABLE_OPTION_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10893 NEGATIVE_LEVEL_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10886 TOO_SMALL_LEVEL_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10890 NEGATIVE_DISTANCE_EXCEPTION + f Ljava/util/Map; field_10891 OPTIONS + f Lorg/slf4j/Logger; field_60481 LOGGER + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_10885 UNKNOWN_OPTION_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_10889 INVALID_MODE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_10892 INVALID_TYPE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_10888 IRREVERSIBLE_SORT_EXCEPTION + m (Lnet/minecraft/class_2303;)V method_9969 method_9969 + p 0 reader + m (Ljava/util/Map;Lnet/minecraft/class_1297;)Z method_9958 method_9958 + p 1 entity + m (Lnet/minecraft/class_2303;)V method_9977 method_9977 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9949 method_9949 + p 0 reader + m (Lnet/minecraft/class_2303;)V method_9953 method_9953 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9925 method_9925 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9933 method_9933 + p 0 reader + m (Lnet/minecraft/class_2303;)V method_9973 method_9973 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9945 method_9945 + p 0 reader + m (Ljava/lang/String;ZLnet/minecraft/class_1297;)Z method_9965 method_9965 + p 2 entity + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9959 method_9959 + p 0 option + m (Lnet/minecraft/class_2303;)Z method_22822 method_22822 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9941 method_9941 + p 0 reader + m (Lnet/minecraft/class_2303;)V method_9981 method_9981 + p 0 reader + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9923 method_9923 + p 0 option + m (Lnet/minecraft/class_1934;ZLnet/minecraft/class_1297;)Z method_9924 method_9924 + p 2 entity + m (Lnet/minecraft/class_2303;)Z method_9926 method_9926 + p 0 reader + m (Lnet/minecraft/class_2303;)V method_9966 method_9966 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9938 method_9938 + p 0 reader + m (Lnet/minecraft/class_2303;)V method_9978 method_9978 + p 0 reader + m (Lnet/minecraft/class_2303;)V method_9962 method_9962 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9934 method_9934 + p 0 reader + m (Lnet/minecraft/class_2303;)V method_9974 method_9974 + p 0 reader + m (Lnet/minecraft/class_2303;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9946 method_9946 + p 1 builder + p 2 consumer + m (Ljava/lang/String;ZLnet/minecraft/class_1297;)Z method_9922 method_9922 + p 2 entity + m (Ljava/util/Map;Lnet/minecraft/class_167;)Z method_9929 method_9929 + p 1 advancementProgress + m (Lnet/minecraft/class_5321;ZLnet/minecraft/class_1297;)Z method_22823 method_22823 + p 2 entity + m (Lnet/minecraft/class_2487;ZLnet/minecraft/class_1297;)Z method_9957 method_9957 + p 2 entity + m (ZLnet/minecraft/class_167;)Z method_9936 method_9936 + p 1 advancementProgress + m ()V method_9960 register + m (Lnet/minecraft/class_2303;)Z method_9942 method_9942 + p 0 reader + m (Lnet/minecraft/class_2303;)V method_9982 method_9982 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9954 method_9954 + p 0 reader + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9964 method_9964 + p 0 entity + m (Lnet/minecraft/class_2303;)V method_9970 method_9970 + p 0 reader + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9932 method_9932 + p 0 gameMode + m (Lnet/minecraft/class_2303;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V method_9930 suggestOptions + p 0 reader + p 1 suggestionBuilder + m (ZLnet/minecraft/class_178;)Z method_9931 method_9931 + p 1 criterionProgress + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9956 method_9956 + p 0 sortType + m (Lnet/minecraft/class_2303;)Z method_9939 method_9939 + p 0 reader + m (Lnet/minecraft/class_2303;)V method_9979 method_9979 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9927 method_9927 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9935 method_9935 + p 0 reader + m (Lnet/minecraft/class_2303;)V method_9975 method_9975 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9947 method_9947 + p 0 reader + m (Lnet/minecraft/class_2303;)V method_9951 method_9951 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9955 method_9955 + p 0 reader + m (Lnet/minecraft/class_2303;)V method_9963 method_9963 + p 0 reader + m (Lnet/minecraft/class_2303;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9921 method_9921 + p 2 consumer + p 1 builder + m (Lnet/minecraft/class_2303;)V method_22824 method_22824 + p 0 reader + m (Lnet/minecraft/class_6885$class_6888;)Lnet/minecraft/class_2960; method_62670 method_62670 + p 0 tag + m (Lnet/minecraft/class_6862;ZLnet/minecraft/class_1297;)Z method_9950 method_9950 + p 2 entity + m (Lnet/minecraft/class_2303;)V method_9971 method_9971 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9943 method_9943 + p 0 reader + m (Lnet/minecraft/class_2303;Ljava/lang/String;I)Lnet/minecraft/class_2306$class_2307; method_9976 getHandler + p 1 option + p 0 reader + p 2 restoreCursor + m (Lnet/minecraft/class_2303;)Z method_9928 method_9928 + p 0 reader + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9967 method_9967 + p 0 builder + p 1 consumer + m (Lnet/minecraft/class_2303;)V method_9968 method_9968 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9944 method_9944 + p 0 reader + m (Lnet/minecraft/class_1299;ZLnet/minecraft/class_1297;)Z method_9919 method_9919 + p 2 entity + m (Ljava/lang/String;ZLnet/minecraft/class_1297;)Z method_9920 method_9920 + p 2 entity + m (Lnet/minecraft/class_2303;)V method_9948 method_9948 + p 0 reader + m (Ljava/lang/String;Lnet/minecraft/class_2306$class_2307;Ljava/util/function/Predicate;Lnet/minecraft/class_2561;)V method_9961 putOption + p 3 description + p 2 condition + p 1 handler + p 0 id + m (Lnet/minecraft/class_2303;)V method_9972 method_9972 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9940 method_9940 + p 0 reader + m (Lnet/minecraft/class_2303;)V method_9980 method_9980 + p 0 reader + m (Lnet/minecraft/class_2303;)Z method_9952 method_9952 + p 0 reader + m (Ljava/util/Map;Lnet/minecraft/class_1297;)Z method_9937 method_9937 + p 1 entity + m (Lnet/minecraft/class_6885$class_6888;)Lnet/minecraft/class_2960; method_62669 method_62669 + p 0 tag +c net/minecraft/class_2306$class_2307 net/minecraft/command/EntitySelectorOptions$SelectorHandler + m (Lnet/minecraft/class_2303;)V handle handle + p 1 reader +c net/minecraft/class_2306$class_2308 net/minecraft/command/EntitySelectorOptions$SelectorOption + f Ljava/util/function/Predicate; comp_1064 condition + f Lnet/minecraft/class_2306$class_2307; comp_1063 handler + f Lnet/minecraft/class_2561; comp_1065 description + m ()Ljava/util/function/Predicate; comp_1064 condition + m ()Lnet/minecraft/class_2306$class_2307; comp_1063 handler + m ()Lnet/minecraft/class_2561; comp_1065 description + m (Lnet/minecraft/class_2306$class_2307;Ljava/util/function/Predicate;Lnet/minecraft/class_2561;)V + p 2 condition + p 1 handler + p 3 description +c net/minecraft/class_4969 net/minecraft/block/RespawnAnchorBlock + f Lcom/google/common/collect/ImmutableList; field_26442 VALID_HORIZONTAL_SPAWN_OFFSETS + f Lcom/google/common/collect/ImmutableList; field_26443 VALID_SPAWN_OFFSETS + f Lcom/mojang/serialization/MapCodec; field_46427 CODEC + f I field_31231 NO_CHARGES + f I field_31232 MAX_CHARGES + f Lnet/minecraft/class_2758; field_23153 CHARGES + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1941;Lnet/minecraft/class_2338;)Ljava/util/Optional; method_26156 findRespawnPosition + p 0 entity + p 1 world + p 2 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_29561 explode + p 1 state + p 3 explodedPos + p 2 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_27353 isUsable + p 1 pos + p 0 world + m (Lnet/minecraft/class_1799;)Z method_29289 isChargeItem + p 0 stack + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1941;Lnet/minecraft/class_2338;Z)Ljava/util/Optional; method_30842 findRespawnPosition + p 3 ignoreInvalidPos + p 2 pos + p 1 world + p 0 entity + m (Lnet/minecraft/class_2680;I)I method_26157 getLightLevel + p 0 state + p 1 maxLevel + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_29559 method_29559 + p 1 pos + m (Lnet/minecraft/class_2680;)Z method_29290 canCharge + p 0 state + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1937;)Z method_29560 hasStillWater + p 1 world + p 0 pos + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_26382 charge + p 3 state + p 1 world + p 2 pos + p 0 charger +c net/minecraft/class_4968 net/minecraft/sound/BiomeMoodSound + f Lcom/mojang/serialization/Codec; field_24674 CODEC + f Lnet/minecraft/class_6880; comp_4989 sound + f D comp_4992 offset + f Lnet/minecraft/class_4968; field_23146 CAVE + f I comp_4991 blockSearchExtent + f I comp_4990 tickDelay + m (Lnet/minecraft/class_6880;IID)V + p 1 sound + p 4 extraDistance + p 2 cultivationTicks + p 3 spawnRange + m ()Lnet/minecraft/class_6880; comp_4989 sound + m (Lnet/minecraft/class_4968;)Lnet/minecraft/class_6880; method_75270 method_75270 + p 0 sound + m ()D comp_4992 offset + m (Lnet/minecraft/class_4968;)Ljava/lang/Double; method_75267 method_75267 + p 0 sound + m (Lnet/minecraft/class_4968;)Ljava/lang/Integer; method_75268 method_75268 + p 0 sound + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75266 method_75266 + p 0 instance + m (Lnet/minecraft/class_4968;)Ljava/lang/Integer; method_75269 method_75269 + p 0 sound + m ()I comp_4990 tickDelay + m ()I comp_4991 blockSearchExtent +c net/minecraft/class_10830 net/minecraft/client/render/entity/feature/SheepWoolUndercoatFeatureRenderer + f Lnet/minecraft/class_583; field_57107 babyModel + f Lnet/minecraft/class_583; field_57106 model + f Lnet/minecraft/class_2960; field_57105 TEXTURE + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;)V + p 2 loader + p 1 context + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10063;FF)V method_68165 render +c net/minecraft/class_10831 net/minecraft/client/resource/DryFoliageColormapResourceSupplier + f Lnet/minecraft/class_2960; field_57108 DRY_FOLIAGE_COLORMAP + m ([ILnet/minecraft/class_3300;Lnet/minecraft/class_3695;)V method_68170 apply + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)[I method_68169 reload + p 1 resourceManager + p 2 profiler +c net/minecraft/class_10832 net/minecraft/util/packrat/ParsingStateImpl + f [Lnet/minecraft/class_10832$class_10836; field_57512 cutters + f Lnet/minecraft/class_10832$class_10835; field_57514 errorSuppressingState + f I field_57513 topCutterIndex + f Lnet/minecraft/class_9390; field_57510 errors + f [Lnet/minecraft/class_10832$class_10834; field_57509 memoStack + f Lnet/minecraft/class_9400; field_57511 results + m (I)Lnet/minecraft/class_10832$class_10834; method_68189 pushMemoizedData + p 1 cursor + m (Lnet/minecraft/class_9390;)V + p 1 errors +c net/minecraft/class_10832$class_10833 net/minecraft/util/packrat/ParsingStateImpl$MemoizedValue + f Lnet/minecraft/class_10832$class_10833; field_57515 EMPTY + f Ljava/lang/Object; comp_3787 value + f I comp_3788 markAfterParse + m ()Lnet/minecraft/class_10832$class_10833; method_68193 empty + m ()Ljava/lang/Object; comp_3787 value + m ()I comp_3788 markAfterParse + m (Ljava/lang/Object;I)V + p 1 value + p 2 markAfterParse +c net/minecraft/class_10832$class_10836 net/minecraft/util/packrat/ParsingStateImpl$Cutter + f Z field_57522 cut + m ()V method_68200 reset +c net/minecraft/class_10832$class_10834 net/minecraft/util/packrat/ParsingStateImpl$MemoizedData + f I field_57519 top + f [Ljava/lang/Object; field_57518 values + f I field_57516 SIZE_PER_SYMBOL + f I field_57517 MISSING + m (ILnet/minecraft/class_10832$class_10833;)V method_68195 put + p 1 index + p 2 value + m (Lnet/minecraft/class_9387;)I method_68196 get + p 1 symbol + m (Lnet/minecraft/class_9387;)I method_68197 push + p 1 symbol + m (I)Lnet/minecraft/class_10832$class_10833; method_68194 get + p 1 index +c net/minecraft/class_10832$class_10835 net/minecraft/util/packrat/ParsingStateImpl$ErrorSuppressing + f Lnet/minecraft/class_9390; field_57521 errors +c net/minecraft/class_10813 net/minecraft/client/render/model/SimpleModel + m ()Ljava/lang/String; debugName name +c net/minecraft/class_10819 net/minecraft/client/render/model/BakedSimpleModel + f Z field_57023 DEFAULT_AMBIENT_OCCLUSION + f Lnet/minecraft/class_1100$class_4751; field_57024 DEFAULT_GUI_LIGHT + m (Lnet/minecraft/class_10819;)Lnet/minecraft/class_10419; method_68055 getTextures + p 0 model + m ()Lnet/minecraft/class_10819; method_68038 getParent + m ()Z method_68040 getAmbientOcclusion + m (Lnet/minecraft/class_10819;)Lnet/minecraft/class_1100$class_4751; method_68058 getGuiLight + p 0 model + m (Lnet/minecraft/class_10419;Lnet/minecraft/class_7775;Lnet/minecraft/class_10813;)Lnet/minecraft/class_1058; method_68054 getParticleTexture + p 1 baker + p 2 model + p 0 textures + m ()Lnet/minecraft/class_1100$class_4751; method_68042 getGuiLight + m ()Lnet/minecraft/class_10419; method_68045 getTextures + m (Lnet/minecraft/class_10819;)Z method_68057 getAmbientOcclusion + p 0 model + m (Lnet/minecraft/class_10819;Lnet/minecraft/class_811;)Lnet/minecraft/class_804; method_68056 extractTransformation + p 1 mode + p 0 model + m ()Lnet/minecraft/class_809; method_68043 getTransformations + m (Lnet/minecraft/class_10419;Lnet/minecraft/class_7775;)Lnet/minecraft/class_1058; method_68033 getParticleTexture + p 2 baker + p 1 textures + m (Lnet/minecraft/class_10819;)Lnet/minecraft/class_809; method_68060 copyTransformations + p 0 model + m ()Lnet/minecraft/class_1100; method_68031 getModel + m ()Lnet/minecraft/class_10820; method_68044 getGeometry + m (Lnet/minecraft/class_10419;Lnet/minecraft/class_7775;Lnet/minecraft/class_3665;)Lnet/minecraft/class_10817; method_68034 bakeGeometry + p 3 settings + p 2 baker + p 1 textures + m (Lnet/minecraft/class_10819;)Lnet/minecraft/class_10820; method_68059 getGeometry + p 0 model +c net/minecraft/class_10817 net/minecraft/client/render/model/BakedGeometry + f Ljava/util/List; field_57019 upQuads + f Lnet/minecraft/class_10817; field_57012 EMPTY + f Ljava/util/List; field_57015 northQuads + f Ljava/util/List; field_57016 southQuads + f Ljava/util/List; field_57017 eastQuads + f Ljava/util/List; field_57018 westQuads + f Ljava/util/List; field_57013 allQuads + f Ljava/util/List; field_57014 sidelessQuads + f Ljava/util/List; field_57020 downQuads + m (Lnet/minecraft/class_2350;)Ljava/util/List; method_68049 getQuads + p 1 side + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;)V + p 2 sidelessQuads + p 3 northQuads + p 4 southQuads + p 5 eastQuads + p 1 allQuads + p 6 westQuads + p 7 upQuads + p 8 downQuads + m ()Ljava/util/List; method_68048 getAllQuads +c net/minecraft/class_10817$class_10818 net/minecraft/client/render/model/BakedGeometry$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_57021 sidelessQuads + f Lcom/google/common/collect/Multimap; field_57022 sidedQuads + m (Ljava/util/List;IIIIIII)Lnet/minecraft/class_10817; method_68052 buildFromList + p 7 downCount + p 5 westCount + p 6 upCount + p 0 quads + p 3 southCount + p 4 eastCount + p 1 sidelessCount + p 2 northCount + m (Lnet/minecraft/class_777;)Lnet/minecraft/class_10817$class_10818; method_68051 add + p 1 quad + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_777;)Lnet/minecraft/class_10817$class_10818; method_68053 add + p 2 quad + p 1 side + m ()Lnet/minecraft/class_10817; method_68050 build +c net/minecraft/class_4985 net/minecraft/entity/passive/StriderEntity + f F field_30501 DEFAULT_SADDLED_SPEED + f Lnet/minecraft/class_2940; field_23246 COLD + f Lnet/minecraft/class_1391; field_23241 temptGoal + f Lnet/minecraft/class_2960; field_42981 SUFFOCATING_MODIFIER_ID + f Lnet/minecraft/class_2940; field_23245 BOOST_TIME + f F field_30499 COLD_SADDLED_SPEED + f Lnet/minecraft/class_4980; field_23240 saddledComponent + f Lnet/minecraft/class_1322; field_42982 SUFFOCATING_MODIFIER + m ()V method_26347 updateFloating + m ()Z method_30079 isBeingTempted + m ()Lnet/minecraft/class_5132$class_5133; method_26924 createStriderAttributes + m (Lnet/minecraft/class_1799;)Z method_58395 method_58395 + p 0 stack + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_1266;Lnet/minecraft/class_1308;Lnet/minecraft/class_1315;)Lnet/minecraft/class_1315; method_30336 initializeRider + p 4 entityData + p 3 rider + p 2 difficulty + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_4985; method_26343 createChild + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_26344 canSpawn + p 4 random + p 2 spawnReason + p 3 pos + p 0 type + p 1 world + m ()Z method_26348 isCold + m (Z)V method_26349 setCold + p 1 cold +c net/minecraft/class_4985$class_5494 net/minecraft/entity/passive/StriderEntity$GoBackToLavaGoal + f Lnet/minecraft/class_4985; field_26632 strider + m (Lnet/minecraft/class_4985;D)V + p 1 strider + p 2 speed +c net/minecraft/class_4985$class_4988 net/minecraft/entity/passive/StriderEntity$Navigation + m (Lnet/minecraft/class_4985;Lnet/minecraft/class_1937;)V + p 2 world + p 1 entity +c net/minecraft/class_2323 net/minecraft/block/DoorBlock + f Lnet/minecraft/class_2754; field_10946 HALF + f Lnet/minecraft/class_8177; field_42757 blockSetType + f Lnet/minecraft/class_2754; field_10938 FACING + f Lnet/minecraft/class_2746; field_10945 OPEN + f Ljava/util/Map; field_55753 SHAPES_BY_DIRECTION + f Lnet/minecraft/class_2754; field_10941 HINGE + f Lnet/minecraft/class_2746; field_10940 POWERED + f Lcom/mojang/serialization/MapCodec; field_46337 CODEC + m (Lnet/minecraft/class_8177;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 type + m (Lnet/minecraft/class_1750;)Lnet/minecraft/class_2750; method_10035 getHinge + p 1 ctx + m ()Lnet/minecraft/class_8177; method_51169 getBlockSetType + m (Lnet/minecraft/class_2680;)Z method_24796 canOpenByHand + p 0 state + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Z)V method_10036 playOpenCloseSound + p 3 pos + p 2 world + p 1 entity + p 4 open + m (Lnet/minecraft/class_2680;)Z method_30841 isOpen + p 1 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_24795 canOpenByHand + p 1 pos + p 0 world + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54010 method_54010 + p 0 instance + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Z)V method_10033 setOpen + p 5 open + p 3 state + p 4 pos + p 1 entity + p 2 world +c net/minecraft/class_2325 net/minecraft/block/DropperBlock + f Lnet/minecraft/class_2357; field_10949 BEHAVIOR + f Lcom/mojang/serialization/MapCodec; field_46341 CODEC + f Lorg/slf4j/Logger; field_46213 LOGGER +c net/minecraft/class_4981 net/minecraft/entity/ItemSteerable + m ()Z method_6577 consumeOnAStickItem +c net/minecraft/class_4980 net/minecraft/entity/SaddledComponent + f Lnet/minecraft/class_2940; field_23219 boostTime + f Lnet/minecraft/class_2945; field_23218 dataTracker + f I field_23216 boostedTime + f Z field_23215 boosted + f I field_30060 MIN_BOOST_TIME + m ()V method_49478 tickBoost + m ()F method_49479 getMovementSpeedMultiplier + m ()I method_49480 getBoostTime + m (Lnet/minecraft/class_2945;Lnet/minecraft/class_2940;)V + p 1 dataTracker + p 2 boostTime + m ()V method_26307 boost + m (Lnet/minecraft/class_5819;)Z method_26308 boost + p 1 random +c net/minecraft/class_4983 net/minecraft/entity/ai/brain/task/FarmerWorkTask + f Ljava/util/List; field_23226 COMPOSTABLES + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)V method_26333 craftAndDropBread + p 1 world + p 2 villager + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;Lnet/minecraft/class_4208;Lnet/minecraft/class_2680;)V method_26334 compostSeeds + p 1 world + p 2 entity + p 3 pos + p 4 composterState + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_30232 syncComposterEvent + p 3 pos + p 4 newState + p 1 world + p 2 oldState +c net/minecraft/class_2320 net/minecraft/block/TallPlantBlock + f Lcom/mojang/serialization/MapCodec; field_46338 CODEC + f Lnet/minecraft/class_2754; field_10929 HALF + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;I)V method_10021 placeAt + p 3 flags + p 2 pos + p 1 state + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1657;)V method_30036 onBreakInCreative + c Destroys a bottom half of a tall double block (such as a plant or a door)\nwithout dropping an item when broken in creative.\n\n@see Block#onBreak(World, BlockPos, BlockState, PlayerEntity) + p 0 world + p 1 pos + p 2 state + p 3 player + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_37458 withWaterloggedState + p 2 state + p 1 pos + p 0 world +c net/minecraft/class_2321 net/minecraft/command/suggestion/SuggestionProviders + f Lnet/minecraft/class_2960; field_60811 ASK_SERVER_ID + f Ljava/util/Map; field_10931 REGISTRY + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; field_10935 SUMMONABLE_ENTITIES + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; field_10933 ASK_SERVER + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; field_10934 AVAILABLE_SOUNDS + m (Lnet/minecraft/class_2960;)Lcom/mojang/brigadier/suggestion/SuggestionProvider; method_10024 byId + p 0 id + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_1299;)Z method_45916 method_45916 + p 1 entityType + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_64921 method_64921 + p 1 builder + p 0 context + m (Lcom/mojang/brigadier/suggestion/SuggestionProvider;)Lnet/minecraft/class_2960; method_10027 computeId + p 0 provider + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_10029 method_10029 + p 0 context + p 1 builder + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_10028 method_10028 + p 0 context + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionProvider;)Lcom/mojang/brigadier/suggestion/SuggestionProvider; method_71942 cast + p 0 suggestionProvider + m (Lnet/minecraft/class_2960;Lcom/mojang/brigadier/suggestion/SuggestionProvider;)Lcom/mojang/brigadier/suggestion/SuggestionProvider; method_10022 register + p 1 provider + p 0 id +c net/minecraft/class_2321$class_2322 net/minecraft/command/suggestion/SuggestionProviders$LocalProvider + f Lnet/minecraft/class_2960; comp_4376 id + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; comp_4377 provider + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; getSuggestions getSuggestions + p 2 builder + p 1 context + m ()Lnet/minecraft/class_2960; comp_4376 id + m ()Lcom/mojang/brigadier/suggestion/SuggestionProvider; comp_4377 provider + m (Lnet/minecraft/class_2960;Lcom/mojang/brigadier/suggestion/SuggestionProvider;)V + p 1 id + p 2 provider +c net/minecraft/class_4982 net/minecraft/entity/ai/brain/task/BoneMealTask + f J field_23223 lastEndEntityAge + f J field_23222 startTime + f Ljava/util/Optional; field_23225 pos + f I field_23224 duration + f I field_30184 MAX_DURATION + m (Lnet/minecraft/class_1646;)V method_26324 addLookWalkTargets + p 1 villager + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)Z method_26327 shouldRun + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_2338;)V method_26325 method_26325 + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_26330 run + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3218;)Z method_26326 canBoneMeal + p 1 pos + p 2 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_26331 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_26332 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)Ljava/util/Optional; method_26329 findBoneMealPos + p 2 entity + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_26328 shouldKeepRunning +c net/minecraft/class_2319 net/minecraft/command/argument/serialize/ConstantArgumentSerializer + f Lnet/minecraft/class_2319$class_7219; field_37978 properties + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_2319; method_41999 of + p 0 typeSupplier + m (Lnet/minecraft/class_2319$class_7219;Lcom/google/gson/JsonObject;)V method_41996 writeJson + m (Ljava/util/function/Function;)V + p 1 typeSupplier + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2319$class_7219; method_42001 fromPacket + m (Ljava/util/function/Function;)Lnet/minecraft/class_2319; method_41998 of + p 0 typeSupplier + m (Lnet/minecraft/class_2319$class_7219;Lnet/minecraft/class_2540;)V method_41997 writePacket + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Lnet/minecraft/class_2319$class_7219; method_42002 getArgumentTypeProperties + m (Ljava/util/function/Supplier;Lnet/minecraft/class_7157;)Lcom/mojang/brigadier/arguments/ArgumentType; method_42000 method_42000 + p 1 commandRegistryAccess +c net/minecraft/class_2319$class_7219 net/minecraft/command/argument/serialize/ConstantArgumentSerializer$Properties + f Ljava/util/function/Function; field_37980 typeSupplier + m (Lnet/minecraft/class_2319;Ljava/util/function/Function;)V + p 2 typeSupplier +c net/minecraft/class_4978 net/minecraft/datafixer/fix/JigsawRotationFix + f Ljava/util/Map; field_23213 ORIENTATION_UPDATES + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_2315 net/minecraft/block/DispenserBlock + f Lnet/minecraft/class_2754; field_10918 FACING + f Lorg/slf4j/Logger; field_46212 LOGGER + f Ljava/util/Map; field_10919 BEHAVIORS + f Lnet/minecraft/class_2347; field_51412 DEFAULT_BEHAVIOR + f Lcom/mojang/serialization/MapCodec; field_46336 CODEC + f Lnet/minecraft/class_2746; field_10920 TRIGGERED + f I field_31082 SCHEDULED_TICK_DELAY + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)V method_10012 dispense + p 1 world + p 3 pos + p 2 state + m (Lnet/minecraft/class_1935;)V method_58681 registerProjectileBehavior + p 0 projectile + m (Lnet/minecraft/class_2342;DLnet/minecraft/class_243;)Lnet/minecraft/class_2374; method_10010 getOutputLocation + p 1 facingOffset + p 0 pointer + p 3 constantOffset + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_2357; method_64021 getBehaviorForItem + p 0 stack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;)Lnet/minecraft/class_2357; method_10011 getBehaviorForItem + p 1 world + p 2 stack + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_2357;)V method_10009 registerBehavior + p 0 provider + p 1 behavior + m (Lnet/minecraft/class_2342;)Lnet/minecraft/class_2374; method_58682 getOutputLocation + p 0 pointer +c net/minecraft/class_4977 net/minecraft/datafixer/fix/JigsawPropertiesFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26300 renameProperties + p 0 blockEntityDynamic +c net/minecraft/class_2316 net/minecraft/command/argument/ArgumentTypes + f Ljava/util/Map; field_10921 CLASS_MAP + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Lnet/minecraft/class_2314; method_41983 get + p 0 argumentType + m (Ljava/lang/Class;)Ljava/lang/Class; method_41181 upcast + p 0 clazz + m (Ljava/lang/Class;)Z method_41984 has + p 0 clazz + m (Lnet/minecraft/class_2378;Ljava/lang/String;Ljava/lang/Class;Lnet/minecraft/class_2314;)Lnet/minecraft/class_2314; method_10017 register + c Registers an argument type's serializer. + p 3 serializer + p 2 clazz + p 1 id + p 0 registry + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_2314; method_10015 register + p 0 registry + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Lnet/minecraft/class_2314$class_7217; method_41985 getArgumentTypeProperties + p 0 argumentType +c net/minecraft/class_4979 net/minecraft/datafixer/schema/Schema2519 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_2318 net/minecraft/block/FacingBlock + f Lnet/minecraft/class_2754; field_10927 FACING +c net/minecraft/class_10823 net/minecraft/entity/passive/WolfSoundVariant + f Lcom/mojang/serialization/Codec; field_57078 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_57076 CODEC + f Lnet/minecraft/class_9139; field_57079 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_57077 NETWORK_CODEC + f Lnet/minecraft/class_6880; comp_3779 ambientSound + f Lnet/minecraft/class_6880; comp_3780 deathSound + f Lnet/minecraft/class_6880; comp_3781 growlSound + f Lnet/minecraft/class_6880; comp_3782 hurtSound + f Lnet/minecraft/class_6880; comp_3783 pantSound + f Lnet/minecraft/class_6880; comp_3784 whineSound + m ()Lcom/mojang/serialization/Codec; method_68134 createCodec + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_68133 method_68133 + p 0 instance + m ()Lnet/minecraft/class_6880; comp_3783 pantSound + m ()Lnet/minecraft/class_6880; comp_3784 whineSound + m ()Lnet/minecraft/class_6880; comp_3781 growlSound + m ()Lnet/minecraft/class_6880; comp_3782 hurtSound + m ()Lnet/minecraft/class_6880; comp_3780 deathSound + m ()Lnet/minecraft/class_6880; comp_3779 ambientSound + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;)V + p 1 ambientSound + p 2 deathSound + p 3 growlSound + p 4 hurtSound + p 5 pantSound + p 6 whineSound +c net/minecraft/class_10820 net/minecraft/client/render/model/Geometry + f Lnet/minecraft/class_10820; field_57025 EMPTY + m (Lnet/minecraft/class_10419;Lnet/minecraft/class_7775;Lnet/minecraft/class_3665;Lnet/minecraft/class_10813;)Lnet/minecraft/class_10817; method_68062 method_68062 + p 3 model + p 2 settings + p 1 baker + p 0 textures + m (Lnet/minecraft/class_10419;Lnet/minecraft/class_7775;Lnet/minecraft/class_3665;Lnet/minecraft/class_10813;)Lnet/minecraft/class_10817; bake bake + p 1 textures + p 4 model + p 2 baker + p 3 settings +c net/minecraft/class_10821 net/minecraft/util/math/AxisRotation + f I field_57034 index + f Lcom/mojang/serialization/Codec; field_57033 CODEC + f Lnet/minecraft/class_10821; field_57030 R90 + f Lnet/minecraft/class_10821; field_57032 R270 + f Lnet/minecraft/class_10821; field_57031 R180 + f Lnet/minecraft/class_10821; field_57029 R0 + m (Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_68066 method_68066 + p 0 degrees + m (I)I method_68067 rotate + p 1 index + m (I)Lnet/minecraft/class_10821; method_68064 fromDegrees + p 0 degrees + m (Ljava/lang/String;IILnet/minecraft/class_4990;Lnet/minecraft/class_4990;Lnet/minecraft/class_4990;)V + p 3 index + m (Lnet/minecraft/class_10821;)Ljava/lang/Integer; method_68065 method_68065 + p 0 rotation +c net/minecraft/class_10848 net/minecraft/util/packrat/TokenParsingRule + f I field_58049 maxLength + f Lnet/minecraft/class_10837; field_57546 tooShortException + f I field_57545 minLength + m (ILnet/minecraft/class_10837;)V + p 2 tooShortException + p 1 minLength + m (IILnet/minecraft/class_10837;)V + p 3 tooShortException + p 1 minLength + p 2 maxLength + m (Lnet/minecraft/class_9393;)Ljava/lang/String; method_68244 parse + m (C)Z method_68243 isValidChar + p 1 c +c net/minecraft/class_10849 net/minecraft/util/packrat/NumeralParsingRule + f Lnet/minecraft/class_10837; field_57547 invalidCharException + f Lnet/minecraft/class_10837; field_57548 unexpectedUnderscoreException + m (Lnet/minecraft/class_9393;)Ljava/lang/String; method_68246 parse + m (Lnet/minecraft/class_10837;Lnet/minecraft/class_10837;)V + p 1 invalidCharException + p 2 unexpectedUnderscoreException + m (C)Z method_68245 accepts + p 1 c +c net/minecraft/class_10846 net/minecraft/util/packrat/Parser + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_10846;Lcom/mojang/serialization/Codec;Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;)Lnet/minecraft/class_10846; method_68239 withDecoding + p 4 invalidDataError + p 3 codec + p 2 encodedParser + p 1 ops + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; method_58341 parse + p 1 reader + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_58342 listSuggestions + p 1 builder + m (Ljava/util/function/Function;)Lnet/minecraft/class_10846; method_68240 map + p 1 mapper +c net/minecraft/class_10846$2 net/minecraft/util/packrat/Parser$2 + m (Lcom/mojang/brigadier/StringReader;ILcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_68241 method_68241 + p 3 error +c net/minecraft/class_10847 net/minecraft/util/packrat/PatternParsingRule + f Ljava/util/regex/Pattern; field_57543 pattern + f Lnet/minecraft/class_10837; field_57544 exception + m (Lnet/minecraft/class_9393;)Ljava/lang/String; method_68242 parse + m (Ljava/util/regex/Pattern;Lnet/minecraft/class_10837;)V + p 1 pattern + p 2 exception +c net/minecraft/class_3620 net/minecraft/block/MapColor + c Represents the surface color of a block when rendered from the {@link net.minecraft.client.render.MapRenderer}.\nColor names refer to a material or an object which refers to their vanilla Minecraft textures, not their real-world counterparts, eg. "emerald green".\nNames are in the form of either blockReference_baseColor or color.\n\n

When the map is rendered, the {@link MapColor.Brightness#brightness} value is added to the\nbase color. The "rendered color" is internally represented as a byte; the first six bits\nindicate the base color, and the last two bits indicate the brightness. This value is returned\nfrom {@link MapColor#getRenderColorByte} and is passed to {@link MapColor#getRenderColor}. + f Lnet/minecraft/class_3620; field_25704 DARK_CRIMSON + f Lnet/minecraft/class_3620; field_15985 TERRACOTTA_MAGENTA + f Lnet/minecraft/class_3620; field_15997 LIME + f Lnet/minecraft/class_3620; field_25708 BRIGHT_TEAL + f Lnet/minecraft/class_3620; field_15981 TERRACOTTA_ORANGE + f Lnet/minecraft/class_3620; field_16009 BLACK + f Lnet/minecraft/class_3620; field_15993 LIGHT_GRAY + f Lnet/minecraft/class_3620; field_16016 PALE_PURPLE + f Lnet/minecraft/class_3620; field_16028 TERRACOTTA_GREEN + f Lnet/minecraft/class_3620; field_16008 CLEAR + f I field_16011 color + f Lnet/minecraft/class_3620; field_15978 GRAY + f Lnet/minecraft/class_3620; field_16012 DARK_RED + f Lnet/minecraft/class_3620; field_16024 LIGHT_BLUE + f Lnet/minecraft/class_3620; field_15998 MAGENTA + f Lnet/minecraft/class_3620; field_16004 DARK_GREEN + f Lnet/minecraft/class_3620; field_16020 RED + f Lnet/minecraft/class_3620; field_16000 DIRT_BROWN + f Lnet/minecraft/class_3620; field_25705 TEAL + f Lnet/minecraft/class_3620; field_15996 OAK_TAN + f Lnet/minecraft/class_3620; field_15984 BLUE + f Lnet/minecraft/class_3620; field_33533 RAW_IRON_PINK + f Lnet/minecraft/class_3620; field_15992 TERRACOTTA_BROWN + f Lnet/minecraft/class_3620; field_15980 LAPIS_BLUE + f Lnet/minecraft/class_3620; field_16027 TERRACOTTA_GRAY + f Lnet/minecraft/class_3620; field_16007 TERRACOTTA_BLACK + f Lnet/minecraft/class_3620; field_16019 WATER_BLUE + f Lnet/minecraft/class_3620; field_15989 TERRACOTTA_PINK + f Lnet/minecraft/class_3620; field_16023 STONE_GRAY + f Lnet/minecraft/class_3620; field_16003 TERRACOTTA_WHITE + f Lnet/minecraft/class_3620; field_15977 BROWN + f Lnet/minecraft/class_3620; field_16015 TERRACOTTA_BLUE + f Lnet/minecraft/class_3620; field_25702 DULL_RED + f Lnet/minecraft/class_3620; field_33617 LICHEN_GREEN + f Lnet/minecraft/class_3620; field_25706 DARK_AQUA + f Lnet/minecraft/class_3620; field_15983 DIAMOND_BLUE + f Lnet/minecraft/class_3620; field_33532 DEEPSLATE_GRAY + f Lnet/minecraft/class_3620; field_15995 GREEN + f Lnet/minecraft/class_3620; field_15991 TERRACOTTA_LIGHT_BLUE + f Lnet/minecraft/class_3620; field_16018 TERRACOTTA_LIME + f I field_16021 id + f Lnet/minecraft/class_3620; field_16002 BRIGHT_RED + f Lnet/minecraft/class_3620; field_15976 LIGHT_BLUE_GRAY + f Lnet/minecraft/class_3620; field_16014 PURPLE + f Lnet/minecraft/class_3620; field_15988 TERRACOTTA_LIGHT_GRAY + f Lnet/minecraft/class_3620; field_16026 CYAN + f Lnet/minecraft/class_3620; field_16030 PINK + f Lnet/minecraft/class_3620; field_16010 YELLOW + f Lnet/minecraft/class_3620; field_16022 WHITE + f Lnet/minecraft/class_3620; field_25703 DULL_PINK + f Lnet/minecraft/class_3620; field_25707 DARK_DULL_PINK + f Lnet/minecraft/class_3620; field_15986 PALE_YELLOW + f Lnet/minecraft/class_3620; field_15994 GOLD + f Lnet/minecraft/class_3620; field_15982 TERRACOTTA_RED + f Lnet/minecraft/class_3620; field_15990 TERRACOTTA_CYAN + f Lnet/minecraft/class_3620; field_16005 IRON_GRAY + f Lnet/minecraft/class_3620; field_16017 SPRUCE_BROWN + f Lnet/minecraft/class_3620; field_16029 TERRACOTTA_PURPLE + f Lnet/minecraft/class_3620; field_16001 EMERALD_GREEN + f Lnet/minecraft/class_3620; field_15979 WHITE_GRAY + f Lnet/minecraft/class_3620; field_16013 TERRACOTTA_YELLOW + f Lnet/minecraft/class_3620; field_15987 ORANGE + f Lnet/minecraft/class_3620; field_16025 OFF_WHITE + f Lnet/minecraft/class_3620; field_15999 PALE_GREEN + f [Lnet/minecraft/class_3620; field_16006 COLORS + m (Lnet/minecraft/class_3620$class_6594;)B method_38481 getRenderColorByte + p 1 brightness + m (I)Lnet/minecraft/class_3620; method_38479 get + p 0 id + m (Lnet/minecraft/class_3620$class_6594;)I method_15820 getRenderColor + p 1 brightness + m (II)V + p 2 color + p 1 id + m (I)Lnet/minecraft/class_3620; method_38482 getUnchecked + p 0 id + m (I)I method_38480 getRenderColor + p 0 colorByte +c net/minecraft/class_3620$class_6594 net/minecraft/block/MapColor$Brightness + f I field_34763 id + f I field_34764 brightness + f [Lnet/minecraft/class_3620$class_6594; field_34765 VALUES + f Lnet/minecraft/class_3620$class_6594; field_34759 LOW + f Lnet/minecraft/class_3620$class_6594; field_34761 HIGH + f Lnet/minecraft/class_3620$class_6594; field_34760 NORMAL + f Lnet/minecraft/class_3620$class_6594; field_34762 LOWEST + m (Ljava/lang/String;III)V + p 4 brightness + p 3 id + m (I)Lnet/minecraft/class_3620$class_6594; method_38485 get + p 0 id + m (I)Lnet/minecraft/class_3620$class_6594; method_38484 validateAndGet + p 0 id +c net/minecraft/class_3621 net/minecraft/fluid/WaterFluid +c net/minecraft/class_3621$class_3623 net/minecraft/fluid/WaterFluid$Still +c net/minecraft/class_3621$class_3622 net/minecraft/fluid/WaterFluid$Flowing +c net/minecraft/class_4951 net/minecraft/block/WeepingVinesPlantBlock + f Lcom/mojang/serialization/MapCodec; field_46500 CODEC + f Lnet/minecraft/class_265; field_23326 SHAPE +c net/minecraft/class_4953 net/minecraft/world/gen/feature/TwistingVinesFeature + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338$class_2339;III)V method_25987 generateVineColumn + p 5 maxAge + p 4 minAge + p 1 random + p 0 world + p 3 maxLength + p 2 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_25986 isNotSuitable + p 1 pos + p 0 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338$class_2339;)Z method_27220 canGenerate + p 0 world + p 1 pos +c net/minecraft/class_4950 net/minecraft/block/TwistingVinesPlantBlock + f Lcom/mojang/serialization/MapCodec; field_46484 CODEC + f Lnet/minecraft/class_265; field_23325 SHAPE +c net/minecraft/class_4949 net/minecraft/block/VineLogic + m (Lnet/minecraft/class_5819;)I method_26381 getGrowthLength + p 0 random + m (Lnet/minecraft/class_2680;)Z method_25961 isValidForWeepingStem + p 0 state +c net/minecraft/class_3619 net/minecraft/block/piston/PistonBehavior + f Lnet/minecraft/class_3619; field_15970 PUSH_ONLY + f Lnet/minecraft/class_3619; field_15972 BLOCK + f Lnet/minecraft/class_3619; field_15971 DESTROY + f Lnet/minecraft/class_3619; field_15974 NORMAL + f Lnet/minecraft/class_3619; field_15975 IGNORE +c net/minecraft/class_4945 net/minecraft/client/data/TextureKey + f Lnet/minecraft/class_4945; field_23008 parent + f Ljava/lang/String; field_23007 name + f Lnet/minecraft/class_4945; field_22999 CROP + f Lnet/minecraft/class_4945; field_23958 LIT_LOG + f Lnet/minecraft/class_4945; field_27792 CONTENT + f Lnet/minecraft/class_4945; field_27791 INSIDE + f Lnet/minecraft/class_4945; field_27790 CANDLE + f Lnet/minecraft/class_4945; field_23011 TEXTURE + f Lnet/minecraft/class_4945; field_23010 ALL + f Lnet/minecraft/class_4945; field_23013 END + f Lnet/minecraft/class_4945; field_23012 PARTICLE + f Lnet/minecraft/class_4945; field_23019 NORTH + f Lnet/minecraft/class_4945; field_23015 TOP + f Lnet/minecraft/class_4945; field_23014 BOTTOM + f Lnet/minecraft/class_4945; field_23018 SIDE + f Lnet/minecraft/class_4945; field_23016 FRONT + f Lnet/minecraft/class_4945; field_23017 BACK + f Lnet/minecraft/class_4945; field_23001 FIRE + f Lnet/minecraft/class_4945; field_23000 DIRT + f Lnet/minecraft/class_4945; field_23003 PLATFORM + f Lnet/minecraft/class_4945; field_23002 LANTERN + f Lnet/minecraft/class_4945; field_23005 TORCH + f Lnet/minecraft/class_4945; field_23006 LAYER0 + f Lnet/minecraft/class_4945; field_23004 UNSTICKY + f Lnet/minecraft/class_4945; field_23035 UPPERSTEM + f Lnet/minecraft/class_4945; field_23034 STEM + f Lnet/minecraft/class_4945; field_23031 PANE + f Lnet/minecraft/class_4945; field_23030 PATTERN + f Lnet/minecraft/class_4945; field_23033 FAN + f Lnet/minecraft/class_4945; field_23032 EDGE + f Lnet/minecraft/class_4945; field_23023 UP + f Lnet/minecraft/class_4945; field_23022 WEST + f Lnet/minecraft/class_4945; field_23025 CROSS + f Lnet/minecraft/class_4945; field_23024 DOWN + f Lnet/minecraft/class_4945; field_23021 EAST + f Lnet/minecraft/class_4945; field_23020 SOUTH + f Lnet/minecraft/class_4945; field_23027 WALL + f Lnet/minecraft/class_4945; field_23028 RAIL + f Lnet/minecraft/class_4945; field_23026 PLANT + f Lnet/minecraft/class_4945; field_23029 WOOL + f Lnet/minecraft/class_4945; field_42234 LAYER2 + f Lnet/minecraft/class_4945; field_38470 INNER_TOP + f Lnet/minecraft/class_4945; field_42951 FLOWERBED + f Lnet/minecraft/class_4945; field_42089 LAYER1 + f Lnet/minecraft/class_4945; field_59815 TENTACLES + f Lnet/minecraft/class_4945; field_61924 BARS + f Lnet/minecraft/class_4945; field_55182 CROSS_EMISSIVE + m ()Lnet/minecraft/class_4945; method_25913 getParent + m (Ljava/lang/String;)Lnet/minecraft/class_4945; method_27043 of + p 0 name + m ()Ljava/lang/String; method_25912 getName + m (Ljava/lang/String;Lnet/minecraft/class_4945;)Lnet/minecraft/class_4945; method_27044 of + p 1 parent + p 0 name + m (Ljava/lang/String;Lnet/minecraft/class_4945;)V + p 1 name + p 2 parent +c net/minecraft/class_4944 net/minecraft/client/data/TextureMap + f Ljava/util/Set; field_22998 inherited + f Ljava/util/Map; field_22997 entries + m (Lnet/minecraft/class_1792;)Lnet/minecraft/class_2960; method_25876 getId + p 0 item + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25890 pattern + p 0 block + m (Lnet/minecraft/class_2248;Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_4944; method_55307 trialSpawner + p 1 side + p 2 top + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_65299 crossAndCrossEmissive + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_65300 plantAndCrossEmissive + p 0 block + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_25875 all + p 0 id + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25903 fire1 + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_73141 bars + p 0 block + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_25895 layer0 + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_4944; method_50027 snifferEgg + p 0 age + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25907 sideFrontTopBottom + p 0 block + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_46199 method_46199 + p 1 path + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_25891 particle + p 0 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_32232 cauldron + p 0 content + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25894 sideEnd + p 0 block + m (Lnet/minecraft/class_4945;Lnet/minecraft/class_4945;)Lnet/minecraft/class_4944; method_35908 copy + p 1 parent + p 2 child + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25911 layer0 + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_27168 wallSideEnd + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25898 sideTopBottom + p 0 block + m (Lnet/minecraft/class_2248;Z)Lnet/minecraft/class_4944; method_32231 candleCake + p 0 block + p 1 lit + m (Lnet/minecraft/class_1792;)Lnet/minecraft/class_4944; method_25862 particle + p 0 item + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25865 stemAndUpper + p 1 upper + p 0 stem + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25873 paneAndTopForEdge + p 1 top + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25881 plant + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_46201 textureParticle + p 0 block + m (Lnet/minecraft/class_4945;Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_25868 put + p 2 id + p 1 key + m (Lnet/minecraft/class_4945;)Lnet/minecraft/class_2960; method_25867 getTexture + p 1 key + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_25884 plant + p 0 id + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25902 fire0 + p 0 block + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_46198 method_46198 + p 1 path + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_25880 cross + p 0 id + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25906 sideFrontBack + p 0 block + m (Lnet/minecraft/class_4945;Lnet/minecraft/class_4945;)Lnet/minecraft/class_4944; method_25874 inherit + p 1 parent + p 2 child + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25885 rail + p 0 block + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_48745 layered + p 0 layer0 + p 1 layer1 + p 2 layer2 + m (Lnet/minecraft/class_1792;Ljava/lang/String;)Lnet/minecraft/class_2960; method_25863 getSubId + p 1 suffix + p 0 item + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25910 top + p 0 top + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25877 cross + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25897 sideAndEndForTop + p 0 block + m (Lnet/minecraft/class_1792;)Lnet/minecraft/class_4944; method_25871 layer0 + p 0 item + m (Ljava/lang/String;)Lnet/minecraft/class_4944; method_70823 driedGhast + p 0 hydration + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25892 fan + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25882 frontTopSide + p 1 downBlock + p 0 frontTopSideBlock + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_46200 textureSideTop + p 0 block + m (Lnet/minecraft/class_4945;Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_25879 copyAndAdd + p 2 id + p 1 key + m (Lnet/minecraft/class_4945;Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_35909 register + p 1 key + p 2 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_35911 wool + p 0 id + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_35910 topBottom + p 1 bottom + p 0 top + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_50028 pottedAzaleaBush + p 0 block + m (Lnet/minecraft/class_2248;Ljava/lang/String;)Lnet/minecraft/class_2960; method_25866 getSubId + p 1 suffix + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25878 frontSideWithCustomBottom + p 0 block + p 1 bottom + m (Lnet/minecraft/class_4945;Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_25883 of + p 0 key + p 1 id + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25901 particle + p 0 block + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_25893 torch + p 0 id + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25905 torch + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25896 sideAndTop + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25872 texture + p 0 block + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_25869 texture + p 0 id + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25888 stem + p 0 block + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_25889 crop + p 0 id + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25864 all + p 0 block + m ()Ljava/util/stream/Stream; method_25861 getInherited + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25909 sideFrontEnd + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_2960; method_25860 getId + p 0 block + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_48529 layered + p 0 layer0 + p 1 layer1 + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_25886 rail + p 0 id + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25904 lantern + p 0 block + m (Lnet/minecraft/class_2248;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_4944; method_56887 vault + p 2 side + p 1 front + p 0 block + p 4 bottom + p 3 top + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_64950 side + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25908 sideFrontTop + p 0 block + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)Lnet/minecraft/class_4944; method_25870 sideEnd + p 0 side + p 1 end + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_49379 flowerbed + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_27167 campfire + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25899 wallSideTopBottom + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25900 topBottom + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4944; method_25887 wool + p 0 block + m (Z)Lnet/minecraft/class_4944; method_42753 sculkShrieker + p 0 canSummon +c net/minecraft/class_3616 net/minecraft/fluid/LavaFluid + f F field_31729 MIN_HEIGHT_TO_REPLACE + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_15819 canLightFire + p 2 pos + p 1 world + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_15817 hasBurnableBlock + p 2 pos + p 1 world + m (Lnet/minecraft/class_4538;)Z method_75749 shouldLavaFlowFaster + p 0 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)V method_15818 playExtinguishEvent + p 1 world + p 2 pos +c net/minecraft/class_3616$class_3617 net/minecraft/fluid/LavaFluid$Flowing +c net/minecraft/class_3616$class_3618 net/minecraft/fluid/LavaFluid$Still +c net/minecraft/class_4946 net/minecraft/client/data/TexturedModel + c Represents a model with texture variables defined. + f Lnet/minecraft/class_4946$class_4947; field_42953 FLOWERBED_2 + f Lnet/minecraft/class_4946$class_4947; field_55858 TEMPLATE_LEAF_LITTER_3 + f Lnet/minecraft/class_4946$class_4947; field_42955 FLOWERBED_4 + f Lnet/minecraft/class_4946$class_4947; field_55856 TEMPLATE_LEAF_LITTER_1 + f Lnet/minecraft/class_4946$class_4947; field_23039 CUBE_COLUMN_HORIZONTAL + f Lnet/minecraft/class_4946$class_4947; field_23057 SIDE_TOP_BOTTOM_WALL + f Lnet/minecraft/class_4942; field_23059 model + f Lnet/minecraft/class_4946$class_4947; field_23049 LEAVES + f Lnet/minecraft/class_4946$class_4947; field_23037 CUBE_MIRRORED_ALL + f Lnet/minecraft/class_4946$class_4947; field_23043 ORIENTABLE_WITH_BOTTOM + f Lnet/minecraft/class_4946$class_4947; field_23045 TEMPLATE_GLAZED_TERRACOTTA + f Lnet/minecraft/class_4946$class_4947; field_23055 END_FOR_TOP_CUBE_COLUMN + f Lnet/minecraft/class_4946$class_4947; field_23041 CUBE_TOP + f Lnet/minecraft/class_4946$class_4947; field_23051 TEMPLATE_HANGING_LANTERN + f Lnet/minecraft/class_4946$class_4947; field_54879 MOSSY_CARPET_SIDE + f Lnet/minecraft/class_4946$class_4947; field_42954 FLOWERBED_3 + f Lnet/minecraft/class_4946$class_4947; field_55859 TEMPLATE_LEAF_LITTER_4 + f Lnet/minecraft/class_4946$class_4947; field_55857 TEMPLATE_LEAF_LITTER_2 + f Lnet/minecraft/class_4946$class_4947; field_23959 SIDE_END_WALL + f Lnet/minecraft/class_4946$class_4947; field_42952 FLOWERBED_1 + f Lnet/minecraft/class_4946$class_4947; field_61925 TEMPLATE_CHAIN + f Lnet/minecraft/class_4946$class_4947; field_23036 CUBE_ALL + f Lnet/minecraft/class_4946$class_4947; field_23046 CORAL_FAN + f Lnet/minecraft/class_4946$class_4947; field_23038 CUBE_COLUMN + f Lnet/minecraft/class_4946$class_4947; field_23048 TEMPLATE_ANVIL + f Lnet/minecraft/class_4946$class_4947; field_23054 TEMPLATE_SEAGRASS + f Lnet/minecraft/class_4946$class_4947; field_23042 ORIENTABLE + f Lnet/minecraft/class_4946$class_4947; field_23056 END_FOR_TOP_CUBE_COLUMN_HORIZONTAL + f Lnet/minecraft/class_4944; field_23058 textures + f Lnet/minecraft/class_4946$class_4947; field_47502 CUBE_ALL_INNER_FACES + f Lnet/minecraft/class_4946$class_4947; field_23044 CARPET + f Lnet/minecraft/class_4946$class_4947; field_23050 TEMPLATE_LANTERN + f Lnet/minecraft/class_4946$class_4947; field_23040 CUBE_BOTTOM_TOP + m (Ljava/util/function/Function;Lnet/minecraft/class_4942;Lnet/minecraft/class_2248;)Lnet/minecraft/class_4946; method_25919 method_25919 + p 2 block + m (Ljava/util/function/Function;Lnet/minecraft/class_4942;)Lnet/minecraft/class_4946$class_4947; method_25918 makeFactory + p 1 model + p 0 texturesGetter + m ()Lnet/minecraft/class_4942; method_25914 getModel + m (Lnet/minecraft/class_2248;Ljava/util/function/BiConsumer;)Lnet/minecraft/class_2960; method_25916 upload + p 2 writer + p 1 block + m (Ljava/util/function/Consumer;)Lnet/minecraft/class_4946; method_25917 textures + p 1 texturesConsumer + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_4946; method_25920 getCubeAll + p 0 id + m (Lnet/minecraft/class_2248;Ljava/lang/String;Ljava/util/function/BiConsumer;)Lnet/minecraft/class_2960; method_25915 upload + p 3 writer + p 2 suffix + p 1 block + m (Lnet/minecraft/class_4944;Lnet/minecraft/class_4942;)V + p 1 textures + p 2 model + m ()Lnet/minecraft/class_4944; method_25921 getTextures +c net/minecraft/class_4946$class_4947 net/minecraft/client/data/TexturedModel$Factory + m (Ljava/util/function/Consumer;)Lnet/minecraft/class_4946$class_4947; method_35912 andThen + p 1 consumer + m (Lnet/minecraft/class_2248;Ljava/lang/String;Ljava/util/function/BiConsumer;)Lnet/minecraft/class_2960; method_25922 upload + p 3 writer + p 1 block + p 2 suffix + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4946; get get + p 1 block + m (Lnet/minecraft/class_2248;Ljava/util/function/BiConsumer;)Lnet/minecraft/class_2960; method_25923 upload + p 1 block + p 2 writer + m (Ljava/util/function/Consumer;Lnet/minecraft/class_2248;)Lnet/minecraft/class_4946; method_35913 method_35913 + p 2 block +c net/minecraft/class_10852 net/minecraft/util/packrat/UnquotedStringParsingRule + f Lnet/minecraft/class_10837; field_57561 tooShortException + f I field_57560 minLength + m (Lnet/minecraft/class_9393;)Ljava/lang/String; method_68254 parse + m (ILnet/minecraft/class_10837;)V + p 1 minLength + p 2 tooShortException +c net/minecraft/class_10850 net/minecraft/command/argument/ParserBackedArgumentType + f Lnet/minecraft/class_10846; field_57549 parser + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lnet/minecraft/class_10846;)V + p 1 parser +c net/minecraft/class_10856 net/minecraft/world/gen/treedecorator/AttachedToLogsTreeDecorator + f Ljava/util/List; field_57827 directions + f F field_57825 probability + f Lcom/mojang/serialization/MapCodec; field_57824 CODEC + f Lnet/minecraft/class_4651; field_57826 blockProvider + m (FLnet/minecraft/class_4651;Ljava/util/List;)V + p 3 directions + p 2 blockProvider + p 1 probability + m (Lnet/minecraft/class_10856;)Ljava/lang/Float; method_68325 method_68325 + p 0 treeDecorator + m (Lnet/minecraft/class_10856;)Ljava/util/List; method_68323 method_68323 + p 0 treeDecorator + m (Lnet/minecraft/class_10856;)Lnet/minecraft/class_4651; method_68324 method_68324 + p 0 treeDecorator + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_68322 method_68322 + p 0 instance +c net/minecraft/class_10853 net/minecraft/world/gen/feature/FallenTreeFeature + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_68312 method_68312 + p 1 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_68313 isSolidBelow + p 1 world + p 2 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_68300 canReplaceAndHasSolidBelow + p 1 world + p 2 pos + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338$class_2339;)V method_68304 moveToGroundPos + p 2 pos + p 1 world + m (Lnet/minecraft/class_5281;)Ljava/util/function/BiConsumer; method_68301 createStatePlacer + p 1 world + m (Lnet/minecraft/class_10854;Lnet/minecraft/class_2338;Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;)V method_68309 generate + p 2 pos + p 1 config + p 4 random + p 3 world + m (Lnet/minecraft/class_2350;)Ljava/util/function/Function; method_68311 createAxisApplier + p 0 direction + m (Lnet/minecraft/class_5281;ILnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_2350;)Z method_68302 canPlaceLog + p 4 direction + p 3 pos + p 2 length + p 1 world + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Ljava/util/Set;Ljava/util/List;)V method_68303 applyDecorators + p 2 random + p 1 world + p 4 decorators + p 3 positions + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_68305 method_68305 + p 1 pos + p 2 state + m (Lnet/minecraft/class_10854;Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;ILnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_2350;)V method_68306 generateLog + p 6 direction + p 5 pos + p 4 length + p 3 random + p 2 world + p 1 config + m (Lnet/minecraft/class_10854;Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338$class_2339;Ljava/util/function/Function;)Lnet/minecraft/class_2338; method_68308 setBlockStateAndGetPos + p 5 stateFunction + p 4 pos + p 3 random + p 2 world + p 1 config + m (Lnet/minecraft/class_10854;Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338$class_2339;)V method_68307 generateStump + p 1 config + p 2 world + p 3 random + p 4 pos + m (Lnet/minecraft/class_4662$class_7402;Lnet/minecraft/class_4662;)V method_68310 method_68310 + p 1 decorator +c net/minecraft/class_10854 net/minecraft/world/gen/feature/FallenTreeFeatureConfig + f Lnet/minecraft/class_6017; field_57817 logLength + f Lcom/mojang/serialization/Codec; field_57815 CODEC + f Lnet/minecraft/class_4651; field_57816 trunkProvider + f Ljava/util/List; field_57819 logDecorators + f Ljava/util/List; field_57818 stumpDecorators + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_68314 method_68314 + p 0 instance + m (Lnet/minecraft/class_10854;)Ljava/util/List; method_68316 method_68316 + p 0 featureConfig + m (Lnet/minecraft/class_10854;)Ljava/util/List; method_68315 method_68315 + p 0 featureConfig + m (Lnet/minecraft/class_10854;)Lnet/minecraft/class_4651; method_68318 method_68318 + p 0 featureConfig + m (Lnet/minecraft/class_4651;Lnet/minecraft/class_6017;Ljava/util/List;Ljava/util/List;)V + p 2 logLength + p 1 trunkProvider + p 4 logDecorators + p 3 stumpDecorators + m (Lnet/minecraft/class_10854;)Lnet/minecraft/class_6017; method_68317 method_68317 + p 0 featureConfig +c net/minecraft/class_10854$class_10855 net/minecraft/world/gen/feature/FallenTreeFeatureConfig$Builder + f Lnet/minecraft/class_4651; field_57820 trunkProvider + f Lnet/minecraft/class_6017; field_57821 logLength + f Ljava/util/List; field_57822 stumpDecorators + f Ljava/util/List; field_57823 logDecorators + m (Ljava/util/List;)Lnet/minecraft/class_10854$class_10855; method_68321 logDecorators + p 1 logDecorators + m (Ljava/util/List;)Lnet/minecraft/class_10854$class_10855; method_68320 stumpDecorators + p 1 stumpDecorators + m ()Lnet/minecraft/class_10854; method_68319 build + m (Lnet/minecraft/class_4651;Lnet/minecraft/class_6017;)V + p 1 trunkProvider + p 2 logLength +c net/minecraft/class_10837 net/minecraft/util/packrat/CursorExceptionType + m (Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType;Ljava/lang/String;I)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_68204 method_68204 + p 1 input + p 2 cursor + m (Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;Ljava/lang/String;)Lnet/minecraft/class_10837; method_68201 create + p 0 type + p 1 arg + m (Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType;)Lnet/minecraft/class_10837; method_68203 create + p 0 type + m (Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;Ljava/lang/String;Ljava/lang/String;I)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_68202 method_68202 + p 2 input + p 3 cursor + m (Ljava/lang/String;I)Ljava/lang/Exception; create create + p 2 cursor + p 1 input +c net/minecraft/class_4963 net/minecraft/datafixer/fix/PlayerUuidFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28240 method_28240 + p 0 playerDynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26072 method_26072 + p 0 rootVehicleTyped + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26070 method_26070 + p 0 playerTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28241 method_28241 + p 0 rootVehicleDynamic +c net/minecraft/class_2300 net/minecraft/command/EntitySelector + f Ljava/util/List; field_52308 predicates + f Z field_10828 senderOnly + f I field_10822 limit + f Lnet/minecraft/class_238; field_10824 box + f Lnet/minecraft/class_2096$class_2099; field_10825 distance + f Ljava/util/function/BiConsumer; field_10826 sorter + f Z field_10827 usesAt + f Lnet/minecraft/class_5575; field_10832 entityFilter + f Z field_10829 localWorldOnly + f Ljava/util/function/BiConsumer; field_41524 ARBITRARY + f Ljava/util/UUID; field_10821 uuid + f Ljava/lang/String; field_10831 playerName + f Lnet/minecraft/class_5575; field_27774 PASSTHROUGH_FILTER + f Ljava/util/function/Function; field_10823 positionOffset + f Z field_10830 includesNonPlayers + f I field_33068 MAX_VALUE + m (Ljava/util/List;Lnet/minecraft/class_3218;Lnet/minecraft/class_238;Ljava/util/function/Predicate;)V method_9823 appendEntitiesFromWorld + p 1 entities + p 2 world + p 3 box + p 4 predicate + m (Lnet/minecraft/class_238;Lnet/minecraft/class_1297;)Z method_9810 method_9810 + p 1 entity + m (Lnet/minecraft/class_243;Ljava/util/List;)Ljava/util/List; method_9814 getEntities + p 1 pos + p 2 entities + m (Lnet/minecraft/class_2168;)Ljava/util/List; method_9813 getPlayers + p 1 source + m (Lnet/minecraft/class_2168;)Lnet/minecraft/class_3222; method_9811 getPlayer + p 1 source + m ()Z method_9820 isSenderOnly + m (Lnet/minecraft/class_2168;)V method_9818 checkSourcePermission + p 1 source + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_1297;)Z method_61159 method_61159 + p 1 entity + m ()I method_47803 getAppendLimit + m (Lnet/minecraft/class_243;Ljava/util/List;)V method_47802 method_47802 + p 1 entities + p 0 pos + m (Lnet/minecraft/class_243;Lnet/minecraft/class_238;Lnet/minecraft/class_7699;)Ljava/util/function/Predicate; method_9817 getPositionPredicate + p 3 enabledFeatures + p 1 pos + p 2 box + m (Ljava/util/List;)Lnet/minecraft/class_2561; method_9822 getNames + p 0 entities + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_238; method_61160 getOffsetBox + p 1 offset + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1297;)Z method_9812 method_9812 + p 2 entity + m ()I method_9815 getLimit + m (Lnet/minecraft/class_2168;)Ljava/util/List; method_9816 getEntities + p 1 source + m (Lnet/minecraft/class_2168;)Lnet/minecraft/class_1297; method_9809 getEntity + p 1 source + m (IZZLjava/util/List;Lnet/minecraft/class_2096$class_2099;Ljava/util/function/Function;Lnet/minecraft/class_238;Ljava/util/function/BiConsumer;ZLjava/lang/String;Ljava/util/UUID;Lnet/minecraft/class_1299;Z)V + p 1 count + p 2 includesNonPlayers + p 3 localWorldOnly + p 4 predicates + p 5 distance + p 6 positionOffset + p 7 box + p 8 sorter + p 9 senderOnly + p 10 playerName + p 11 uuid + p 12 type + p 13 usesAt + m ()Z method_9821 isLocalWorldOnly + m ()Z method_9819 includesNonPlayers + m ()Z method_35815 usesAt +c net/minecraft/class_2300$1 net/minecraft/command/EntitySelector$1 + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1297; method_32203 downcast +c net/minecraft/class_4962 net/minecraft/datafixer/fix/WorldUuidFix + f Lorg/slf4j/Logger; field_36329 LOGGER + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26060 fixDragonUuid + p 1 levelDynamic + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_28213 method_28213 + p 0 entry + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26061 fixCustomBossEvents + p 1 levelDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28219 method_28219 + p 0 dimensionDataValueDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28220 method_28220 + p 0 dragonFightDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26057 fixWanderingTraderId + p 1 levelDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28218 method_28218 + p 0 dimensionDataDynamic +c net/minecraft/class_2301 net/minecraft/block/CoralBlock + f Lnet/minecraft/class_2248; field_10833 deadCoralBlock + f Lnet/minecraft/class_265; field_10834 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46326 CODEC + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 deadCoralBlock + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54006 method_54006 + p 0 instance + m (Lnet/minecraft/class_2301;)Lnet/minecraft/class_2248; method_54007 method_54007 + p 0 block +c net/minecraft/class_4965 net/minecraft/predicate/entity/FishingHookPredicate + f Lnet/minecraft/class_4965; field_23137 ALL + f Lcom/mojang/serialization/MapCodec; field_45750 CODEC + f Ljava/util/Optional; comp_1779 inOpenWater + m (Z)Lnet/minecraft/class_4965; method_26095 of + p 0 inOpenWater + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53150 method_53150 + p 0 instance + m ()Ljava/util/Optional; comp_1779 inOpenWater + m (Ljava/util/Optional;)V + p 1 inOpenWater +c net/minecraft/class_2302 net/minecraft/block/CropBlock + f Lnet/minecraft/class_2758; field_10835 AGE + f I field_31079 MAX_AGE + f Lcom/mojang/serialization/MapCodec; field_46329 CODEC + f [Lnet/minecraft/class_265; field_10836 SHAPES_BY_AGE + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_52572 hasEnoughLightAt + p 1 pos + p 0 world + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)F method_9830 getAvailableMoisture + p 2 pos + p 0 block + p 1 world + m (I)Lnet/minecraft/class_2680; method_9828 withAge + p 1 age + m ()Lnet/minecraft/class_2758; method_9824 getAgeProperty + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_9826 applyGrowth + p 2 pos + p 1 world + p 3 state + m ()I method_9827 getMaxAge + m (Lnet/minecraft/class_1937;)I method_9831 getGrowthAmount + p 1 world + m (I)Lnet/minecraft/class_265; method_66427 method_66427 + p 0 age + m (Lnet/minecraft/class_2680;)Z method_9825 isMature + p 1 state + m (Lnet/minecraft/class_2680;)I method_9829 getAge + p 1 state + m ()Lnet/minecraft/class_1935; method_9832 getSeedsItem +c net/minecraft/class_4964 net/minecraft/datafixer/fix/PersistentStateUuidFix + f Lorg/slf4j/Logger; field_36330 LOGGER + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26073 method_26073 + p 0 raidsDataTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26075 method_26075 + p 0 raidsDataDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28256 method_28256 + p 0 raidDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28255 method_28255 + p 0 raidsDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28254 method_28254 + p 0 dataDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28258 method_28258 + p 0 heroOfTheVillageDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28257 method_28257 + p 0 heroesOfTheVillageDynamic +c net/minecraft/class_2303 net/minecraft/command/EntitySelectorReader + f Ljava/lang/Double; field_10857 x + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_10853 UNKNOWN_SELECTOR_EXCEPTION + f Z field_10865 excludesEntityType + f C field_33077 ALL_PLAYERS + f Z field_10841 selectsScores + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10875 INVALID_ENTITY_EXCEPTION + f Ljava/lang/Double; field_10862 dx + f Z field_10849 selectsGameMode + f Lnet/minecraft/class_1299; field_10863 entityType + f Ljava/util/function/BiFunction; field_10867 DEFAULT_SUGGESTION_PROVIDER + f Ljava/util/function/BiConsumer; field_10882 FURTHEST + f C field_33070 ARGUMENT_DEFINER + f Z field_10840 usesAt + f Lnet/minecraft/class_2096$class_2099; field_10838 distance + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10880 NOT_ALLOWED_EXCEPTION + f C field_33078 RANDOM_PLAYER + f Z field_10864 selectsAdvancements + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10837 UNTERMINATED_EXCEPTION + f C field_33075 ARGUMENT_SEPARATOR + f Z field_10871 excludesGameMode + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_10855 VALUELESS_EXCEPTION + f Z field_10843 includesNonPlayers + f Z field_10879 senderOnly + f Ljava/lang/Double; field_10852 dy + f Ljava/util/function/BiConsumer; field_10869 NEAREST + f C field_33080 ALL_ENTITIES + f Z field_10866 localWorldOnly + f Z field_10854 selectsName + f C field_33076 NEAREST_PLAYER + f Ljava/lang/Double; field_10881 dz + f Ljava/util/UUID; field_10878 uuid + f Ljava/util/function/BiFunction; field_10848 suggestionProvider + f I field_10858 limit + f Z field_10873 hasSorter + f C field_33073 ARGUMENTS_OPENING + f Z field_10845 selectsTeam + f C field_33069 SELECTOR_PREFIX + f I field_10861 startCursor + f Ljava/util/function/BiConsumer; field_10850 RANDOM + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10844 MISSING_EXCEPTION + f Ljava/util/function/BiConsumer; field_10847 sorter + f C field_33074 ARGUMENTS_CLOSING + f C field_52174 NEAREST_ENTITY + f Lnet/minecraft/class_2096$class_2100; field_10842 levelRange + f Z field_10868 excludesTeam + f Lnet/minecraft/class_2096$class_11894; field_10877 pitchRange + f Ljava/lang/String; field_10876 playerName + f C field_33071 INVERT_MODIFIER + f Z field_10851 hasLimit + f Ljava/lang/Double; field_10839 z + f Lcom/mojang/brigadier/StringReader; field_10860 reader + f C field_33079 SELF + f Ljava/lang/Double; field_10872 y + f Ljava/util/List; field_10870 predicates + f Lnet/minecraft/class_2096$class_11894; field_10859 yawRange + f C field_33072 TAG_MODIFIER + f Z field_10874 excludesName + f Z field_10846 atAllowed + m (Lnet/minecraft/class_1299;)V method_9842 setEntityType + p 1 entityType + m (Ljava/util/function/BiConsumer;)V method_9845 setSorter + p 1 sorter + m ()Lnet/minecraft/class_2096$class_11894; method_9853 getYawRange + m (Z)V method_9841 setIncludesNonPlayers + p 1 includesNonPlayers + m (Lnet/minecraft/class_243;Ljava/util/List;)V method_9888 method_9888 + p 1 entities + p 0 pos + m ()Z method_9861 selectsAdvancements + m (Z)V method_9865 setSelectsTeam + p 1 selectsTeam + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_9869 method_9869 + p 0 pos + m ()V method_9874 readArguments + m ()Lcom/mojang/brigadier/StringReader; method_9835 getReader + m ()Z method_9886 selectsEntityType + m (D)V method_9891 setDx + p 1 dx + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9908 listSuggestions + p 1 builder + p 2 consumer + m (Lnet/minecraft/class_2096$class_11894;)V method_9898 setPitchRange + p 1 pitchRange + m ()Z method_9915 readTagCharacter + m (Lnet/minecraft/class_12097;)Z method_75406 canUseSelectors + p 0 source + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9854 method_9854 + p 1 consumer + p 0 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9911 suggestOptionOrEnd + p 1 builder + p 2 consumer + m ()Ljava/lang/Double; method_9907 getDz + m (Lnet/minecraft/class_11887;FFLnet/minecraft/class_1297;)Z method_74311 method_74311 + p 3 entity + m (D)V method_9850 setX + p 1 x + m (Lnet/minecraft/class_2096$class_11894;Lnet/minecraft/class_11887;)Ljava/util/function/Predicate; method_9859 rotationPredicate + p 1 range + p 2 rotationGetter + m (Z)V method_9906 setSelectsAdvancements + p 1 selectsAdvancements + m (Z)V method_9877 setHasLimit + p 1 hasLimit + m ()Z method_9885 isSenderOnly + m ()Ljava/util/function/BiConsumer; method_35818 getSorter + m (Ljava/lang/Object;)Z method_61185 shouldAllowAtSelectors + p 0 source + m ()Lnet/minecraft/class_2096$class_11894; method_9883 getPitchRange + m ()Ljava/lang/Double; method_9851 getDx + m (Z)V method_9887 setHasSorter + p 1 hasSorter + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V method_9896 suggestSelector + p 0 builder + m (Lnet/minecraft/class_1297;)Z method_9856 method_9856 + p 1 entity + m ()Z method_9844 excludesName + m (Z)V method_9848 setSelectsScores + p 1 selectsScores + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9903 method_9903 + p 0 option + m ()V method_9860 setExcludesEntityType + m (Z)V method_9890 setSelectsGameMode + p 1 selectsGameMode + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_9872 method_9872 + p 1 pos + m ()Ljava/lang/Double; method_9840 getDy + m ()Z method_9912 selectsName + m (Z)V method_9899 setSelectsName + p 1 selectsName + m ()Lnet/minecraft/class_2096$class_2099; method_9873 getDistance + m ()Z method_9843 selectsScores + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9909 suggestOption + p 1 builder + p 2 consumer + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9863 method_9863 + p 0 selectorType + m ()Z method_9839 selectsGameMode + m ()Ljava/lang/Double; method_9902 getX + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)I method_9862 method_9862 + p 2 entity2 + p 1 entity1 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9847 suggestEndNext + p 2 consumer + p 1 builder + m (Ljava/util/function/BiFunction;)V method_9875 setSuggestionProvider + p 1 suggestionProvider + m (DDD)Lnet/minecraft/class_238; method_9894 createBox + p 1 x + p 5 z + p 3 y + m (Lnet/minecraft/class_243;Ljava/util/List;)V method_9901 method_9901 + p 0 pos + p 1 entities + m ()Z method_9866 hasLimit + m (D)V method_9879 setZ + p 1 z + m ()V method_9878 buildPredicate + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9834 suggestSelectorRest + p 1 builder + p 2 consumer + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9858 suggestNormal + p 2 consumer + p 1 builder + m ()Lnet/minecraft/class_2096$class_2100; method_9895 getLevelRange + m ()Z method_9892 readNegationCharacter + m ()Z method_9910 excludesEntityType + m ()Z method_9889 hasSorter + m (Lcom/mojang/brigadier/StringReader;Z)V + p 2 atAllowed + p 1 reader + m (Z)V method_9833 setExcludesTeam + p 1 excludesTeam + m (Z)V method_9857 setExcludesGameMode + p 1 excludesGameMode + m ()V method_9849 readRegular + m ()Z method_9837 excludesGameMode + m (D)V method_9918 setDz + p 1 dz + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9893 suggestOpen + p 1 builder + p 2 consumer + m (Ljava/util/function/Predicate;)V method_9916 addPredicate + p 1 predicate + m ()V method_9852 setLocalWorldOnly + m (Z)V method_9913 setExcludesName + p 1 excludesName + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_35817 suggestDefinerNext + p 1 builder + p 2 consumer + m ()Z method_35816 excludesTeam + m ()Lnet/minecraft/class_2300; method_9871 build + m ()V method_9917 readAtVariable + m ()Ljava/lang/Double; method_9868 getZ + m (I)V method_9900 setLimit + p 1 limit + m (D)V method_9905 setDy + p 1 dy + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)I method_9897 method_9897 + p 1 entity1 + p 2 entity2 + m (Lnet/minecraft/class_2096$class_2100;)V method_9846 setLevelRange + p 1 levelRange + m ()Ljava/lang/Double; method_9884 getY + m (Lnet/minecraft/class_243;Ljava/util/List;)V method_9867 method_9867 + p 0 pos + p 1 entities + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9880 suggestSelector + p 1 builder + p 2 consumer + m (Lnet/minecraft/class_2096$class_2099;)V method_9870 setDistance + p 1 distance + m (Lnet/minecraft/class_2096$class_11894;)V method_9855 setYawRange + p 1 yawRange + m ()Lnet/minecraft/class_2300; method_9882 read + m (D)V method_9864 setY + p 1 y + m ()Z method_9904 selectsTeam +c net/minecraft/class_4961 net/minecraft/datafixer/fix/ItemStackUuidFix + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26295 method_26295 + p 3 tagDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/util/Pair;)Ljava/lang/Boolean; method_26051 method_26051 + p 0 id + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26299 method_26299 + p 0 attributeModifier + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26298 fixSkullOwner + p 1 tagDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26293 method_26293 + p 1 attributeModifiersDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26297 fixAttributeModifiers + p 1 tagDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26053 method_26053 + p 0 skullOwner + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26296 method_26296 + p 3 tagTyped + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26294 method_26294 + p 2 itemStackTyped +c net/minecraft/class_4960 net/minecraft/datafixer/fix/EntityUuidFix + f Ljava/util/Set; field_23127 PROJECTILES + f Ljava/util/Set; field_23126 OTHER_LIVINGS + f Ljava/util/Set; field_23125 LEASHABLES + f Ljava/util/Set; field_23124 BREEDABLES + f Ljava/util/Set; field_23123 TAMEABLE_PETS + f Ljava/util/Set; field_23122 RIDEABLE_TAMEABLES + f Lorg/slf4j/Logger; field_36328 LOGGER + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26030 updateShulkerBullet + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26028 updateAreaEffectCloud + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26039 updateSelfUuid + p 0 entityDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26031 updateItemEntity + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26032 updateFox + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26022 updateAngryAtMemory + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26033 updateZombifiedPiglin + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26034 updateTameable + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26024 updateEvokerFangs + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26035 updateBreedable + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26036 updateLeashable + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26026 updateZombieVillager + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26037 updateLiving + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26038 updateProjectile +c net/minecraft/class_4959 net/minecraft/datafixer/fix/BlockEntityUuidFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26017 updateSkull + p 1 skullDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26018 updateConduit + p 1 conduitDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26015 method_26015 + p 1 ownerDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26019 method_26019 + p 0 ownerDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_4956 net/minecraft/client/particle/SoulParticle + f Z field_37961 sculk + f Lnet/minecraft/class_4002; field_23091 spriteProvider + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_4002;)V + p 6 z + p 4 y + p 10 velocityY + p 8 velocityX + p 14 spriteProvider + p 12 velocityZ + p 2 x + p 1 world +c net/minecraft/class_4956$class_7210 net/minecraft/client/particle/SoulParticle$SculkSoulFactory + f Lnet/minecraft/class_4002; field_37962 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_41948 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_4956$class_4957 net/minecraft/client/particle/SoulParticle$Factory + f Lnet/minecraft/class_4002; field_23092 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_25994 createParticle +c net/minecraft/class_4955 net/minecraft/client/particle/AbstractSlowingParticle +c net/minecraft/class_4958 net/minecraft/datafixer/fix/AbstractUuidFix + f Lcom/mojang/datafixers/DSL$TypeReference; field_23121 typeReference + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; method_26009 updateTyped + p 1 typed + p 2 name + p 3 updater + m (Lcom/mojang/datafixers/schemas/Schema;Lcom/mojang/datafixers/DSL$TypeReference;)V + p 2 typeReference + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;JJ)Ljava/util/Optional; method_26003 createArray + p 3 leastBits + p 1 mostBits + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/util/Optional; method_26005 createArrayFromStringUuid + p 1 key + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; method_26006 updateStringUuid + p 1 oldKey + p 2 newKey + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; method_26011 updateCompoundUuid + p 1 oldKey + p 2 newKey + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; method_26013 updateRegularMostLeast + p 1 oldKey + p 2 newKey + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; method_26014 createArrayFromMostLeastTags + p 2 leastBitsKey + p 1 mostBitsKey + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_26002 createArrayFromCompoundUuid +c net/minecraft/class_10842 net/minecraft/util/packrat/ParsingRuleEntry + m ()Lnet/minecraft/class_9387; method_68213 getSymbol + m ()Lnet/minecraft/class_9396; method_68214 getRule +c net/minecraft/class_9827 net/minecraft/data/report/PacketReportProvider + f Lnet/minecraft/class_7784; field_52278 output + m (Lcom/google/gson/JsonObject;Lnet/minecraft/class_9127$class_9128;)V method_61084 method_61084 + p 1 state + m (Lcom/google/gson/JsonObject;Lnet/minecraft/class_9145;I)V method_61085 method_61085 + p 1 packetType + p 2 protocolId + m (Lnet/minecraft/class_7784;)V + p 1 output + m ()Lcom/google/gson/JsonElement; method_61086 toJson + m (Lcom/google/gson/JsonObject;Lnet/minecraft/class_2539;Ljava/util/List;)V method_61083 method_61083 + p 1 phase + p 2 states +c net/minecraft/class_9826 net/minecraft/client/render/model/ErrorCollectingSpriteGetter + m (Ljava/lang/String;Lnet/minecraft/class_10813;)Lnet/minecraft/class_1058; method_65740 getMissing + p 1 name + p 2 model + m (Lnet/minecraft/class_4730;Lnet/minecraft/class_10813;)Lnet/minecraft/class_1058; method_65739 get + p 2 model + p 1 id + m (Lnet/minecraft/class_10419;Ljava/lang/String;Lnet/minecraft/class_10813;)Lnet/minecraft/class_1058; method_68061 get + p 3 model + p 1 texture + p 2 name +c net/minecraft/class_9824 net/minecraft/client/render/model/BlockStatesLoader + f Lnet/minecraft/class_7654; field_55458 FINDER + f Lorg/slf4j/Logger; field_52261 LOGGER + m (Ljava/util/List;)Lnet/minecraft/class_9824$class_10095; method_65719 method_65719 + p 0 definitions + m (Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_65718 load + p 1 prepareExecutor + p 0 resourceManager + m (Ljava/util/function/Function;Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletionStage; method_65721 method_65721 + p 2 resourceMap + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2689;Ljava/util/List;)Lnet/minecraft/class_9824$class_10095; method_62627 combine + p 2 definitions + p 1 stateManager + p 0 id +c net/minecraft/class_9824$class_10094 net/minecraft/client/render/model/BlockStatesLoader$LoadedBlockStateDefinition + f Lnet/minecraft/class_790; comp_3061 contents + f Ljava/lang/String; comp_3060 source + m ()Lnet/minecraft/class_790; comp_3061 contents + m ()Ljava/lang/String; comp_3060 source + m (Ljava/lang/String;Lnet/minecraft/class_790;)V + p 1 source + p 2 contents +c net/minecraft/class_9824$class_10095 net/minecraft/client/render/model/BlockStatesLoader$LoadedModels + f Ljava/util/Map; comp_3063 models + m ()Ljava/util/Map; comp_3063 models + m (Ljava/util/Map;)V + p 1 models +c net/minecraft/class_9822 net/minecraft/structure/StructureLiquidSettings + f Ljava/lang/String; field_52240 id + f Lcom/mojang/serialization/Codec; field_52239 codec + f Lnet/minecraft/class_9822; field_52238 APPLY_WATERLOGGING + f Lnet/minecraft/class_9822; field_52237 IGNORE_WATERLOGGING + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_9820 net/minecraft/server/world/ChunkErrorHandler + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_1923;Lnet/minecraft/class_9240;)V method_60998 onChunkMisplacement + p 3 key + p 2 expectedPos + p 1 actualPos + m (Ljava/lang/Throwable;Lnet/minecraft/class_9240;Lnet/minecraft/class_1923;)V method_57822 onChunkSaveFailure + p 1 exception + p 2 key + p 3 chunkPos + m (Ljava/lang/Throwable;Lnet/minecraft/class_9240;Lnet/minecraft/class_1923;)V method_57821 onChunkLoadFailure + p 1 exception + p 2 key + p 3 chunkPos + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_1923;)Lnet/minecraft/class_148; method_60997 createMisplacementException + p 0 actualPos + p 1 expectedPos +c net/minecraft/class_9817 net/minecraft/entity/Leashable + f Lnet/minecraft/class_243; field_60004 ELASTICITY_MULTIPLIER + f Ljava/lang/String; field_52216 LEASH_NBT_KEY + f Ljava/util/List; field_60000 HELD_ENTITY_ATTACHMENT_POINT + f D field_52315 DEFAULT_ELASTIC_DISTANCE + f Ljava/util/List; field_60001 LEASH_HOLDER_ATTACHMENT_POINT + f D field_52314 DEFAULT_SNAPPING_DISTANCE + f Ljava/util/List; field_60002 QUAD_LEASH_ATTACHMENT_POINTS + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_9817;)Z method_70996 method_70996 + p 1 leashable + m ()V method_71006 onLongLeashTick + m (Lnet/minecraft/class_1297;)F method_71003 getSlipperiness + p 0 entity + m ()V method_65895 onLeashRemoved + m ()V method_60970 snapLongLeash + m ()Z method_60954 mightBeLeashed + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_9817$class_9818;)Z method_70995 applyElasticity + p 2 leashData + p 1 leashHolder + m (Lnet/minecraft/class_1297;Ljava/util/function/Predicate;)Ljava/util/List; method_70997 collectLeashablesAround + p 1 leashablePredicate + p 0 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_9817$class_9818;)V method_60958 resolveLeashData + p 1 leashData + p 0 entity + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;DLnet/minecraft/class_243;Lnet/minecraft/class_243;)Ljava/util/Optional; method_70999 calculateLeashElasticity + p 1 heldEntityAttachmentPos + p 2 elasticDistance + p 4 heldEntityMovement + p 5 heldEntityAttachmentPoint + p 0 leashHolderAttachmentPos + m (Lnet/minecraft/class_9817$class_9818;)V method_60960 setLeashData + p 1 leashData + m ()Z method_70991 canUseQuadLeashAttachmentPoint + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1297; method_60966 getLeashHolder + p 0 entity + m (Lnet/minecraft/class_1297;)Z method_71002 canBeLeashedTo + p 1 entity + m ()Lnet/minecraft/class_9817$class_9818; method_60955 getLeashData + m (Lnet/minecraft/class_1297;Z)V method_60964 attachLeash + p 2 sendPacket + p 1 leashHolder + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;Ljava/util/List;Ljava/util/List;)Ljava/util/List; method_70994 calculateLeashElasticities + p 0 heldEntity + p 1 leashHolder + p 2 heldEntityAttachmentPoints + p 3 leashHolderAttachmentPoints + m (Ljava/util/function/Predicate;Lnet/minecraft/class_1297;)Z method_71000 method_71000 + p 1 entity + m (Lnet/minecraft/class_1297;ZZ)V method_60959 detachLeash + p 0 entity + p 1 sendPacket + p 2 dropItem + m (Lnet/minecraft/class_1297;)V method_71005 beforeLeashTick + p 1 leashHolder + m ()V method_5932 detachLeash + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)V method_60965 tickLeash + p 1 entity + p 0 world + m (Lnet/minecraft/class_1297;)D method_71001 getDistanceToCenter + p 1 entity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_243;Ljava/util/function/Predicate;)Ljava/util/List; method_70998 collectLeashablesAround + p 1 pos + p 0 world + p 2 leashablePredicate + m ()D method_70989 getLeashSnappingDistance + m ()Lnet/minecraft/class_1297; method_60952 getLeashHolder + m (Lnet/minecraft/class_1297;DDDD)[Lnet/minecraft/class_243; method_70993 createQuadLeashOffsets + p 0 leashedEntity + p 1 addedZOffset + p 3 zOffset + p 5 xOffset + p 7 yOffset + m ()Z method_5931 canBeLeashed + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;Z)V method_60957 attachLeash + p 1 leashHolder + p 2 sendPacket + p 0 entity + m (I)V method_60968 setUnresolvedLeashHolderId + p 1 unresolvedLeashHolderId + m (F)Lnet/minecraft/class_243; method_45321 getLeashOffset + p 1 tickProgress + m ()D method_70990 getElasticLeashDistance + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_243; method_71767 getLeashHolderMovement + p 0 leashHolder + m (Lnet/minecraft/class_11368;)V method_60967 readLeashData + p 1 view + m ()V method_65894 detachLeashWithoutDrop + m ()Z method_60953 isLeashed + m (Lnet/minecraft/class_11372;Lnet/minecraft/class_9817$class_9818;)V method_60962 writeLeashData + p 1 view + p 2 leashData + m ()[Lnet/minecraft/class_243; method_70992 getQuadLeashOffsets + m (Lnet/minecraft/class_1297;)V method_60963 onShortLeashTick + p 1 entity + m (Lnet/minecraft/class_1297;)Ljava/util/List; method_71004 collectLeashablesHeldBy + p 0 leashHolder + m ()Lnet/minecraft/class_243; method_29919 getLeashOffset +c net/minecraft/class_9817$class_11265 net/minecraft/entity/Leashable$Elasticity + f Lnet/minecraft/class_9817$class_11265; field_60006 ZERO + f Lnet/minecraft/class_243; comp_4146 force + f D comp_4147 torque + m (Ljava/util/List;)Lnet/minecraft/class_9817$class_11265; method_71009 sumOf + p 0 elasticities + m (D)Lnet/minecraft/class_9817$class_11265; method_71007 multiply + p 1 value + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;)D method_71008 calculateTorque + p 0 force + p 1 force2 + m ()Lnet/minecraft/class_243; comp_4146 force + m ()D comp_4147 torque + m (Lnet/minecraft/class_243;D)V + p 1 force + p 2 torque +c net/minecraft/class_9817$class_9818 net/minecraft/entity/Leashable$LeashData + f Lcom/mojang/datafixers/util/Either; field_52218 unresolvedLeashData + f I field_52219 unresolvedLeashHolderId + f Lcom/mojang/serialization/Codec; field_56648 CODEC + f Lnet/minecraft/class_1297; field_52217 leashHolder + f D field_60005 momentum + m (Lnet/minecraft/class_1297;)V method_60971 setLeashHolder + p 1 leashHolder + m (Lnet/minecraft/class_9817$class_9818;)Lcom/mojang/datafixers/util/Either; method_67649 method_67649 + p 0 data + m (Lcom/mojang/datafixers/util/Either;)V + p 1 unresolvedLeashData + m (I)V + p 1 unresolvedLeashHolderId + m (Lnet/minecraft/class_1297;)V + p 1 leashHolder +c net/minecraft/class_9830 net/minecraft/world/gen/placementmodifier/FixedPlacementModifier + f Lcom/mojang/serialization/MapCodec; field_52290 CODEC + f Ljava/util/List; field_52291 positions + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_61120 method_61120 + p 0 instance + m (Ljava/util/List;)V + p 1 positions + m (IILnet/minecraft/class_2338;)Z method_61123 method_61123 + p 2 posx + m (Lnet/minecraft/class_9830;)Ljava/util/List; method_61121 method_61121 + p 0 placementModifier + m ([Lnet/minecraft/class_2338;)Lnet/minecraft/class_9830; method_61122 of + p 0 positions + m (IILnet/minecraft/class_2338;)Z method_61119 chunkSectionMatchesPos + p 0 chunkSectionX + p 2 pos + p 1 chunkSectionZ +c net/minecraft/class_8506 net/minecraft/datafixer/schema/Schema3448 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_9838 net/minecraft/recipe/RecipeGridAligner + m (IILnet/minecraft/class_1860;Ljava/lang/Iterable;Lnet/minecraft/class_9838$class_9839;)V method_64566 alignRecipeToGrid + p 3 slots + p 2 recipe + p 1 height + p 0 width + p 4 filler + m (IIIILjava/lang/Iterable;Lnet/minecraft/class_9838$class_9839;)V method_61229 alignRecipeToGrid + p 0 width + p 1 height + p 2 recipeWidth + p 3 recipeHeight + p 4 slots + p 5 filler +c net/minecraft/class_9838$class_9839 net/minecraft/recipe/RecipeGridAligner$Filler + m (Ljava/lang/Object;III)V addItemToSlot addItemToSlot + p 1 slot + p 2 index + p 3 x + p 4 y +c net/minecraft/class_9837 net/minecraft/network/packet/c2s/play/BundleItemSelectedC2SPacket + f Lnet/minecraft/class_9139; field_52339 CODEC + f I comp_2895 selectedItemIndex + f I comp_2894 slotId + m (Lnet/minecraft/class_2792;)V method_61227 apply + m (Lnet/minecraft/class_2540;)V method_61228 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()I comp_2895 selectedItemIndex + m ()I comp_2894 slotId + m (II)V + p 1 slotId + p 2 selectedItemIndex +c net/minecraft/class_9836 net/minecraft/network/packet/c2s/play/ClientTickEndC2SPacket + f Lnet/minecraft/class_9836; field_52333 INSTANCE + f Lnet/minecraft/class_9139; field_52334 CODEC + m (Lnet/minecraft/class_2792;)V method_61221 apply +c net/minecraft/class_8504 net/minecraft/datafixer/fix/DecoratedPotFieldRenameFix + f Ljava/lang/String; field_44593 DECORATED_POT_ID + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_9835 net/minecraft/network/packet/s2c/play/SetPlayerInventoryS2CPacket + f Lnet/minecraft/class_9139; field_52327 CODEC + f Lnet/minecraft/class_1799; comp_2892 contents + f I comp_2891 slot + m (Lnet/minecraft/class_2602;)V method_61217 apply + m ()Lnet/minecraft/class_1799; comp_2892 contents + m ()I comp_2891 slot + m (ILnet/minecraft/class_1799;)V + p 1 slot + p 2 contents +c net/minecraft/class_8505 net/minecraft/datafixer/fix/RenameChunkStatusFix + f Ljava/lang/String; field_44594 name + f Ljava/util/function/UnaryOperator; field_44595 mapper + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_51292 method_51292 + p 1 chunk + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_51291 updateStatus + p 1 status + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_51290 method_51290 + p 1 typed + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/UnaryOperator;)V + p 1 outputSchema + p 3 mapper + p 2 name +c net/minecraft/class_9834 net/minecraft/network/packet/s2c/play/SetCursorItemS2CPacket + f Lnet/minecraft/class_9139; field_52326 CODEC + f Lnet/minecraft/class_1799; comp_2890 contents + m (Lnet/minecraft/class_2602;)V method_61216 apply + m ()Lnet/minecraft/class_1799; comp_2890 contents + m (Lnet/minecraft/class_1799;)V + p 1 contents +c net/minecraft/class_8503 net/minecraft/server/command/ReturnCommand + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_51277 register + p 0 dispatcher +c net/minecraft/class_8503$class_8835 net/minecraft/server/command/ReturnCommand$ValueCommand + m (Lnet/minecraft/class_8839;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_8936;Lnet/minecraft/class_8855;)V method_54289 execute +c net/minecraft/class_8503$class_8834 net/minecraft/server/command/ReturnCommand$ReturnRunRedirector + m (Lnet/minecraft/class_8839;Ljava/util/List;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_8936;Lnet/minecraft/class_8855;)V method_54864 execute +c net/minecraft/class_8503$class_8933 net/minecraft/server/command/ReturnCommand$FailCommand + m (Lnet/minecraft/class_8839;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_8936;Lnet/minecraft/class_8855;)V method_54863 execute +c net/minecraft/class_9833 net/minecraft/network/packet/s2c/play/MoveMinecartAlongTrackS2CPacket + f Lnet/minecraft/class_9139; field_52323 PACKET_CODEC + f Ljava/util/List; comp_2888 lerpSteps + f I comp_2887 entityId + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_1297; method_61213 getEntity + p 1 world + m (Lnet/minecraft/class_2602;)V method_61212 apply + m ()I comp_2887 entityId + m ()Ljava/util/List; comp_2888 lerpSteps + m (ILjava/util/List;)V + p 1 entityId + p 2 lerpSteps +c net/minecraft/class_8501 net/minecraft/unused/packageinfo/PackageInfo8501 +c net/minecraft/class_9829 net/minecraft/world/gen/feature/EndPlatformFeature + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_2338;Z)V method_61118 generate + p 0 world + p 1 pos + p 2 breakBlocks +c net/minecraft/class_10900 net/minecraft/nbt/SnbtParsing + f Lnet/minecraft/class_10849; field_57998 HEX_RULE + f Lnet/minecraft/class_10848; field_57999 UNQUOTED_STRING_RULE + f Lnet/minecraft/class_10837; field_57986 INVALID_UNQUOTED_START_EXCEPTION + f Lnet/minecraft/class_10837; field_57994 LEADING_ZERO_NOT_ALLOWED_EXCEPTION + f Lnet/minecraft/class_10837; field_57982 EXPECTED_FLOAT_TYPE_EXCEPTION + f Lnet/minecraft/class_10837; field_57990 UNDERSCORE_NOT_ALLOWED_EXCEPTION + f Lnet/minecraft/class_10837; field_58060 INFINITY_NOT_ALLOWED_EXCEPTION + f Ljava/util/regex/Pattern; field_58001 UNICODE_NAME_PATTERN + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_57980 EXPECTED_HEX_ESCAPE_EXCEPTION + f Lnet/minecraft/class_10837; field_57989 EXPECTED_BINARY_NUMERAL_EXCEPTION + f Lnet/minecraft/class_10849; field_57997 DECIMAL_RULE + f Lnet/minecraft/class_10837; field_57985 INVALID_ARRAY_ELEMENT_TYPE_EXCEPTION + f Lnet/minecraft/class_10837; field_57993 EMPTY_KEY_EXCEPTION + f Lnet/minecraft/class_10837; field_57981 EXPECTED_INTEGER_TYPE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_58059 NO_SUCH_OPERATION_EXCEPTION + f Lnet/minecraft/class_10837; field_57988 INVALID_STRING_CONTENTS_EXCEPTION + f Lnet/minecraft/class_10849; field_57996 BINARY_RULE + f Lnet/minecraft/class_10837; field_57984 INVALID_CHARACTER_NAME_EXCEPTION + f Lnet/minecraft/class_10837; field_57992 EXPECTED_HEX_NUMERAL_EXCEPTION + f Ljava/util/HexFormat; field_57995 HEX_FORMAT + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_58058 INVALID_CODEPOINT_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_57979 NUMBER_PARSE_FAILURE_EXCEPTION + f Lnet/minecraft/class_10837; field_57987 EXPECTED_UNQUOTED_STRING_EXCEPTION + f Lnet/minecraft/class_10837; field_57983 EXPECTED_NON_NEGATIVE_NUMBER_EXCEPTION + f Lnet/minecraft/class_10837; field_57991 EXPECTED_DECIMAL_NUMERAL_EXCEPTION + f Lnet/minecraft/class_9413$class_10851; field_58000 DECIMAL_CHAR + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_68630 method_68630 + p 0 value + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Lnet/minecraft/class_10900$class_10903; method_68609 method_68609 + p 5 results + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/lang/String; method_68634 method_68634 + p 1 results + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_10900$class_10905;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_10900$class_10906;Lnet/minecraft/class_10900$class_10909;Lnet/minecraft/class_9393;)Ljava/lang/Object; method_68619 decodeFloat + p 6 state + p 5 type + p 4 exponent + p 3 fractionalPart + p 2 intPart + p 1 sign + p 0 ops + m (Ljava/lang/NumberFormatException;)Lnet/minecraft/class_10837; method_68620 toNumberParseFailure + p 0 exception + m (Ljava/lang/StringBuilder;Ljava/lang/String;)V method_68624 skipUnderscoreAndAppend + p 1 value + p 0 builder + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/lang/String; method_68638 method_68638 + p 1 results + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_9393;Ljava/lang/String;)Ljava/lang/Object; method_68723 parseFiniteFloat + p 0 ops + p 1 state + p 2 value + m (Ljava/util/List;)Ljava/lang/String; method_68626 join + p 0 values + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/util/List; method_68632 method_68632 + p 1 results + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Lnet/minecraft/class_10900$class_10909; method_68639 method_68639 + p 1 results + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_68621 method_68621 + p 0 length + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Lnet/minecraft/class_10900$class_10905; method_68641 method_68641 + p 1 results + m (C)Ljava/lang/String; method_68607 escapeSpecialChar + p 0 c + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/lang/String; method_68637 method_68637 + p 1 results + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9393;)Ljava/lang/String; method_68608 method_68608 + p 5 state + m (C)Z method_68627 canUnquotedStringStartWith + p 0 c + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_68726 method_68726 + p 0 value + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/util/List; method_68633 method_68633 + p 1 results + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9393;)Ljava/util/Map$Entry; method_68611 method_68611 + p 2 state + m (Lnet/minecraft/class_9387;Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_9400;)Ljava/lang/Object; method_68616 method_68616 + p 3 results + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Lnet/minecraft/class_10900$class_10906; method_68628 method_68628 + p 2 results + m (C)Z method_68631 isPartOfDecimal + p 0 c + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_9387;Ljava/lang/Object;Lnet/minecraft/class_9393;)Ljava/lang/Object; method_68613 method_68613 + p 5 state + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/lang/String; method_68636 method_68636 + p 1 results + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_9393;Ljava/lang/String;)Ljava/lang/Object; method_68725 parseFiniteDouble + p 2 value + p 1 state + p 0 ops + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Lnet/minecraft/class_10900$class_10901; method_68629 method_68629 + p 1 results + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Ljava/lang/Object;Lnet/minecraft/class_9393;)Ljava/lang/Object; method_68722 method_68722 + p 5 state + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/util/List; method_68614 method_68614 + p 1 results + m (Ljava/lang/String;I)S method_68623 parseUnsignedShort + p 0 value + p 1 radix + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/lang/String; method_68635 method_68635 + p 1 results + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Lnet/minecraft/class_10900$class_10904; method_68640 method_68640 + p 1 results + m (Lnet/minecraft/class_9387;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9393;)Ljava/lang/Object; method_68615 method_68615 + p 4 state + m (Ljava/lang/StringBuilder;Ljava/lang/String;Z)V method_68625 append + p 0 builder + p 2 skipUnderscore + p 1 value + m (Lcom/mojang/serialization/DynamicOps;)Lnet/minecraft/class_9408; method_68618 createParser + p 0 ops + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/lang/String; method_68612 method_68612 + p 2 results + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_9393;)Ljava/lang/Object; method_68610 method_68610 + p 6 state + m (Ljava/lang/String;)Z method_68622 containsUnderscore + p 0 string + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_68724 method_68724 + p 0 operation +c net/minecraft/class_10900$class_10908 net/minecraft/nbt/SnbtParsing$HexParsingRule + m (I)V + p 1 length +c net/minecraft/class_10900$class_10909 net/minecraft/nbt/SnbtParsing$NumericType + f Lnet/minecraft/class_10900$class_10909; field_58025 LONG + f Lnet/minecraft/class_10900$class_10909; field_58020 FLOAT + f Lnet/minecraft/class_10900$class_10909; field_58022 BYTE + f Lnet/minecraft/class_10900$class_10909; field_58021 DOUBLE + f Lnet/minecraft/class_10900$class_10909; field_58023 SHORT + f Lnet/minecraft/class_10900$class_10909; field_58024 INT +c net/minecraft/class_10900$class_10906 net/minecraft/nbt/SnbtParsing$SignedValue + f Ljava/lang/Object; comp_3830 value + f Lnet/minecraft/class_10900$class_10905; comp_3829 sign + m ()Ljava/lang/Object; comp_3830 value + m ()Lnet/minecraft/class_10900$class_10905; comp_3829 sign + m (Lnet/minecraft/class_10900$class_10905;Ljava/lang/Object;)V + p 1 sign + p 2 value +c net/minecraft/class_10900$class_10907 net/minecraft/nbt/SnbtParsing$Signedness + f Lnet/minecraft/class_10900$class_10907; field_58017 SIGNED + f Lnet/minecraft/class_10900$class_10907; field_58018 UNSIGNED +c net/minecraft/class_10900$class_10904 net/minecraft/nbt/SnbtParsing$NumberSuffix + f Lnet/minecraft/class_10900$class_10904; field_58013 DEFAULT + f Lnet/minecraft/class_10900$class_10909; comp_3828 type + f Lnet/minecraft/class_10900$class_10907; comp_3827 signed + m ()Lnet/minecraft/class_10900$class_10909; comp_3828 type + m ()Lnet/minecraft/class_10900$class_10907; comp_3827 signed + m (Lnet/minecraft/class_10900$class_10907;Lnet/minecraft/class_10900$class_10909;)V + p 1 signed + p 2 type +c net/minecraft/class_10900$class_10905 net/minecraft/nbt/SnbtParsing$Sign + f Lnet/minecraft/class_10900$class_10905; field_58014 PLUS + f Lnet/minecraft/class_10900$class_10905; field_58015 MINUS + m (Ljava/lang/StringBuilder;)V method_68654 append + p 1 builder +c net/minecraft/class_10900$class_10902 net/minecraft/nbt/SnbtParsing$Radix + f Lnet/minecraft/class_10900$class_10902; field_58009 BINARY + f Lnet/minecraft/class_10900$class_10902; field_58011 HEX + f Lnet/minecraft/class_10900$class_10902; field_58010 DECIMAL +c net/minecraft/class_10900$class_10903 net/minecraft/nbt/SnbtParsing$IntValue + f Lnet/minecraft/class_10900$class_10904; comp_3826 suffix + f Lnet/minecraft/class_10900$class_10905; comp_3823 sign + f Lnet/minecraft/class_10900$class_10902; comp_3824 base + f Ljava/lang/String; comp_3825 digits + m (Lnet/minecraft/class_10900$class_10905;)Ljava/lang/String; method_68651 toString + p 1 sign + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_9393;)Ljava/lang/Object; method_68649 decode + p 1 ops + p 2 state + m ()Lnet/minecraft/class_10900$class_10907; method_68652 getSignedness + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_10900$class_10909;Lnet/minecraft/class_9393;)Ljava/lang/Object; method_68650 decode + p 1 ops + p 3 state + p 2 type + m ()Lnet/minecraft/class_10900$class_10905; comp_3823 sign + m ()Lnet/minecraft/class_10900$class_10904; comp_3826 suffix + m ()Lnet/minecraft/class_10900$class_10902; comp_3824 base + m ()Ljava/lang/String; comp_3825 digits + m (Lnet/minecraft/class_10900$class_10905;Lnet/minecraft/class_10900$class_10902;Ljava/lang/String;Lnet/minecraft/class_10900$class_10904;)V + p 1 sign + p 2 base + p 3 digits + p 4 suffix +c net/minecraft/class_10900$class_10901 net/minecraft/nbt/SnbtParsing$ArrayType + f Ljava/util/Set; field_58006 castableTypes + f Lnet/minecraft/class_10900$class_10909; field_58005 elementType + f Lnet/minecraft/class_10900$class_10901; field_58002 BYTE + f Lnet/minecraft/class_10900$class_10901; field_58003 INT + f Lnet/minecraft/class_10900$class_10901; field_58004 LONG + m (Lnet/minecraft/class_10900$class_10904;)Lnet/minecraft/class_10900$class_10909; method_68646 getType + p 1 suffix + m (Lcom/mojang/serialization/DynamicOps;Ljava/util/List;Lnet/minecraft/class_9393;)Ljava/lang/Object; method_68644 decode + p 1 ops + p 3 state + p 2 values + m (Ljava/lang/String;ILnet/minecraft/class_10900$class_10909;[Lnet/minecraft/class_10900$class_10909;)V + p 3 elementType + p 4 castableTypes + m (Lcom/mojang/serialization/DynamicOps;)Ljava/lang/Object; method_68643 createEmpty + p 1 ops + m (Lnet/minecraft/class_10900$class_10909;)Z method_68647 isTypeAllowed + p 1 type + m (Lnet/minecraft/class_10900$class_10903;Lnet/minecraft/class_9393;)Ljava/lang/Number; method_68645 decode + p 2 state + p 1 value +c net/minecraft/class_10900$class_10901$1 net/minecraft/nbt/SnbtParsing$ArrayType$1 + f Ljava/nio/ByteBuffer; field_58008 EMPTY_BUFFER +c net/minecraft/class_1080 net/minecraft/client/resource/metadata/AnimationFrameResourceMetadata + f Lcom/mojang/serialization/Codec; field_55534 BASE_CODEC + f Lcom/mojang/serialization/Codec; field_55535 CODEC + f Ljava/util/Optional; comp_3452 time + f I comp_3451 index + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65884 method_65884 + p 0 instance + m (Lnet/minecraft/class_1080;)Lcom/mojang/datafixers/util/Either; method_65885 method_65885 + p 0 metadatax + m ()Ljava/util/Optional; comp_3452 time + m ()I comp_3451 index + m (ILjava/util/Optional;)V + p 1 index + p 2 time + m (I)I method_4691 getTime + p 1 defaultTime + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_1080; method_65883 method_65883 + p 0 either + m (Lnet/minecraft/class_1080;)Lnet/minecraft/class_1080; method_65886 method_65886 + p 0 metadata + m (I)V + p 1 index +c net/minecraft/class_10923 net/minecraft/util/dynamic/HashCodeOps + f Lcom/google/common/hash/HashCode; field_58086 empty + f [B field_58114 falseByteArray + f Lcom/google/common/hash/HashCode; field_58090 hashFalse + f Ljava/util/Comparator; field_58083 ENTRY_COMPARATOR + f Lcom/google/common/hash/HashFunction; field_58085 function + f [B field_58092 emptyListByteArray + f Lcom/google/common/hash/HashCode; field_58087 emptyMap + f [B field_58113 emptyByteArray + f Ljava/util/Comparator; field_58082 HASH_CODE_COMPARATOR + f [B field_58091 emptyMapByteArray + f Lnet/minecraft/class_10923; field_58093 INSTANCE + f Lcom/google/common/hash/HashCode; field_58089 hashTrue + f [B field_58115 trueByteArray + f Lcom/mojang/serialization/DataResult; field_58116 ERROR + f Ljava/util/Comparator; field_58084 PAIR_COMPARATOR + f Lcom/google/common/hash/HashCode; field_58088 emptyList + m (Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68791 getMap + m ()Lcom/google/common/hash/HashCode; method_68778 emptyMap + m ()Lcom/google/common/hash/HashCode; method_68746 empty + m (I)Lcom/google/common/hash/HashCode; method_68750 createInt + m (Lcom/google/common/hash/HashCode;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_68781 get + m (F)Lcom/google/common/hash/HashCode; method_68749 createFloat + m (Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68779 getBooleanValue + m (Lcom/google/common/hash/HashFunction;)V + p 1 function + m (Lcom/google/common/hash/HashCode;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; method_68756 mergeToMap + m (Ljava/util/stream/IntStream;)Lcom/google/common/hash/HashCode; method_68773 createIntList + m (Lcom/google/common/hash/HashCode;Lcom/google/common/hash/HashCode;Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68754 mergeToMap + m (Lcom/google/common/hash/Hasher;Ljava/util/Map;)Lcom/google/common/hash/Hasher; method_68766 hash + p 1 map + p 0 hasher + m (Ljava/lang/Number;)Lcom/google/common/hash/HashCode; method_68769 createNumeric + m (Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68792 getByteBuffer + m (Lcom/google/common/hash/HashCode;Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68780 mergeToList + m (Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68784 getStringValue + m (Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68752 getNumberValue + m (Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68788 getMapEntries + m ()Lcom/mojang/serialization/DataResult; method_68785 error + m (Ljava/util/stream/Stream;)Lcom/google/common/hash/HashCode; method_68775 createMap + m (Ljava/util/Map;)Lcom/google/common/hash/HashCode; method_68772 createMap + m (S)Lcom/google/common/hash/HashCode; method_68776 createShort + m (Lcom/google/common/hash/HashCode;Ljava/util/Map;)Lcom/mojang/serialization/DataResult; method_68762 mergeToMap + m (Lcom/google/common/hash/HashCode;Lcom/google/common/hash/HashCode;Ljava/util/function/Function;)Lcom/google/common/hash/HashCode; method_68755 updateGeneric + m (Z)Lcom/google/common/hash/HashCode; method_68777 createBoolean + m (Lcom/google/common/hash/HashCode;Ljava/lang/String;Ljava/util/function/Function;)Lcom/google/common/hash/HashCode; method_68760 update + m (Lcom/google/common/hash/HashCode;Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68753 getGeneric + m (Lcom/google/common/hash/HashCode;Ljava/lang/String;)Lcom/google/common/hash/HashCode; method_68758 remove + m (Lcom/mojang/serialization/DynamicOps;Lcom/google/common/hash/HashCode;)Ljava/lang/Object; method_68768 convertTo + m (B)Lcom/google/common/hash/HashCode; method_68747 createByte + m (J)Lcom/google/common/hash/HashCode; method_68751 createLong + m (Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68793 getIntStream + m (Lcom/google/common/hash/HashCode;Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_68761 mergeToList + m (Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68789 getStream + m (Ljava/util/stream/Stream;)Lcom/google/common/hash/HashCode; method_68782 createList + m (Lcom/google/common/hash/HashCode;)Z method_76578 isEmpty + p 1 hashCode + m (Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68790 getList + m (Lcom/google/common/hash/HashCode;Ljava/lang/String;Lcom/google/common/hash/HashCode;)Lcom/google/common/hash/HashCode; method_68759 set + m (D)Lcom/google/common/hash/HashCode; method_68748 createDouble + m (Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68794 getLongStream + m (Lcom/google/common/hash/HashCode;Ljava/lang/Number;)Ljava/lang/Number; method_68757 getNumberValue + m (Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68786 getMapValues + m (Lcom/google/common/hash/Hasher;Lcom/mojang/datafixers/util/Pair;)V method_68764 method_68764 + p 1 pair + m (Lcom/google/common/hash/Hasher;Ljava/util/stream/Stream;)Lcom/google/common/hash/Hasher; method_68767 hash + p 0 hasher + p 1 pairs + m (Lcom/google/common/hash/Hasher;Ljava/util/Map$Entry;)V method_68765 method_68765 + p 1 entry + m ()Lcom/google/common/hash/HashCode; method_68783 emptyList + m (Ljava/util/stream/LongStream;)Lcom/google/common/hash/HashCode; method_68774 createLongList + m (Ljava/nio/ByteBuffer;)Lcom/google/common/hash/HashCode; method_68771 createByteList + m (Ljava/lang/String;)Lcom/google/common/hash/HashCode; method_68770 createString +c net/minecraft/class_10923$class_10925 net/minecraft/util/dynamic/HashCodeOps$Builder + m (Lcom/google/common/hash/HashCode;Lcom/google/common/hash/HashCode;Ljava/util/List;)Ljava/util/List; method_68799 append + m ()Ljava/util/List; method_68798 initBuilder + m (Ljava/util/List;Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68800 build +c net/minecraft/class_10923$class_10924 net/minecraft/util/dynamic/HashCodeOps$ListBuilder + m ()Lcom/google/common/hash/Hasher; method_68796 initBuilder + m (Lcom/google/common/hash/Hasher;Lcom/google/common/hash/HashCode;)Lcom/mojang/serialization/DataResult; method_68797 build + m (Lcom/google/common/hash/Hasher;Lcom/google/common/hash/HashCode;)Lcom/google/common/hash/Hasher; method_68795 add +c net/minecraft/class_1084 net/minecraft/client/resource/metadata/TextureResourceMetadata + f Lcom/mojang/serialization/Codec; field_55541 CODEC + f Lnet/minecraft/class_7677; field_55542 SERIALIZER + f Z field_32980 DEFAULT_BLUR + f Z comp_3460 clamp + f Z field_32981 DEFAULT_CLAMP + f F field_64678 DEFAULT_ALPHA_CUTOFF_BIAS + f Z comp_3459 blur + f F comp_5264 alphaCutoffBias + f Lnet/minecraft/class_12253; comp_5160 mipmapStrategy + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65889 method_65889 + p 0 instance + m (ZZLnet/minecraft/class_12253;F)V + p 2 clamp + p 1 blur + p 3 mipmapStrategy + p 4 alphaCutoffBias + m ()Z comp_3460 clamp + m ()Z comp_3459 blur + m ()F comp_5264 alphaCutoffBias + m ()Lnet/minecraft/class_12253; comp_5160 mipmapStrategy +c net/minecraft/class_10927 net/minecraft/screen/sync/TrackedSlot + f Lnet/minecraft/class_10927; field_58137 ALWAYS_IN_SYNC + m (Lnet/minecraft/class_1799;)V method_68806 setReceivedStack + p 1 receivedStack + m (Lnet/minecraft/class_10938;)V method_68807 setReceivedHash + p 1 receivedHash + m (Lnet/minecraft/class_1799;)Z method_68808 isInSync + p 1 actualStack +c net/minecraft/class_10927$class_10928 net/minecraft/screen/sync/TrackedSlot$Impl + f Lnet/minecraft/class_1799; field_58139 receivedStack + f Lnet/minecraft/class_10938; field_58140 receivedHash + f Lnet/minecraft/class_10936$class_10937; field_58138 hasher + m (Lnet/minecraft/class_10927$class_10928;)V method_68809 copyFrom + p 1 slot + m (Lnet/minecraft/class_10936$class_10937;)V + p 1 hasher +c net/minecraft/class_1082 net/minecraft/client/resource/metadata/LanguageResourceMetadata + f Ljava/util/Map; comp_1201 definitions + f Lcom/mojang/serialization/Codec; field_41863 LANGUAGE_CODE_CODEC + f Lcom/mojang/serialization/Codec; field_41864 CODEC + f Lnet/minecraft/class_7677; field_41865 SERIALIZER + m ()Ljava/util/Map; comp_1201 definitions + m (Ljava/util/Map;)V + p 1 definitions +c net/minecraft/class_9805 net/minecraft/client/gui/tooltip/ProfilesTooltipComponent + f Ljava/util/List; field_52142 profiles + m (Lnet/minecraft/class_11786$class_11787;)Ljava/lang/String; method_73431 getName + p 0 entry + m (Lnet/minecraft/class_9805$class_9806;)V + p 1 data +c net/minecraft/class_9805$class_9806 net/minecraft/client/gui/tooltip/ProfilesTooltipComponent$ProfilesData + f Ljava/util/List; comp_2848 profiles + m ()Ljava/util/List; comp_2848 profiles + m (Ljava/util/List;)V + p 1 profiles +c net/minecraft/class_1088 net/minecraft/client/render/model/ModelBaker + f Ljava/util/Map; field_56986 simpleModels + f Lnet/minecraft/class_4730; field_5370 FIRE_1 + f Lnet/minecraft/class_11786; field_62265 skinCache + f Ljava/util/List; field_21020 BLOCK_DESTRUCTION_STAGE_TEXTURES + f Lorg/slf4j/Logger; field_5380 LOGGER + f Ljava/util/List; field_20848 BLOCK_DESTRUCTION_STAGES + f Lnet/minecraft/class_4730; field_21558 SHIELD_BASE_NO_PATTERN + f Ljava/util/List; field_21772 BLOCK_DESTRUCTION_RENDER_LAYERS + f Lnet/minecraft/class_4730; field_5388 WATER_OVERLAY + f Ljava/util/Map; field_55572 itemAssets + f Lnet/minecraft/class_5599; field_55463 entityModels + f Lnet/minecraft/class_4730; field_20847 BANNER_BASE + f Lnet/minecraft/class_4730; field_5391 WATER_FLOW + f Lnet/minecraft/class_4730; field_5381 LAVA_FLOW + f Lnet/minecraft/class_4730; field_64595 WATER_STILL + f Lnet/minecraft/class_4730; field_21557 SHIELD_BASE + f Lnet/minecraft/class_11701; field_61869 spriteHolder + f I field_32983 MAX_BLOCK_DESTRUCTION_STAGE + f Lnet/minecraft/class_4730; field_64594 LAVA_STILL + f Ljava/util/Map; field_55464 blockModels + f Lnet/minecraft/class_10819; field_52275 missingModel + f Lnet/minecraft/class_4730; field_5397 FIRE_0 + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_23216 method_23216 + p 0 id + m (Ljava/lang/String;)Ljava/lang/String; method_60912 method_60912 + p 0 path + m (Lnet/minecraft/class_1088$class_7778;Lnet/minecraft/class_1088$class_10812;Lnet/minecraft/class_2960;Lnet/minecraft/class_10434;)Lnet/minecraft/class_10439; method_68019 method_68019 + p 3 state + p 4 asset + m (Ljava/util/Map;Lnet/minecraft/class_2960;Lnet/minecraft/class_10434;)V method_68020 method_68020 + p 1 id + p 2 asset + m (Lnet/minecraft/class_5599;Lnet/minecraft/class_11701;Lnet/minecraft/class_11786;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;Lnet/minecraft/class_10819;)V + p 6 simpleModels + p 5 itemAssets + p 7 missingModel + p 2 spriteHolder + p 1 entityModels + p 4 blockModels + p 3 skinCache + m (Lnet/minecraft/class_1088$class_10812;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)Lnet/minecraft/class_1088$class_10524; method_68017 method_68017 + p 2 blockStateModels + p 3 itemModels + m (Lnet/minecraft/class_9826;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_45876 bake + p 1 spriteGetter + p 2 executor + m (I)Lnet/minecraft/class_2960; method_22820 method_22820 + p 0 stage + m (Lnet/minecraft/class_1088$class_7778;Lnet/minecraft/class_2680;Lnet/minecraft/class_1087$class_9979;)Lnet/minecraft/class_1087; method_68018 method_68018 + p 2 unbaked + p 1 state +c net/minecraft/class_1088$class_7778 net/minecraft/client/render/model/ModelBaker$BakerImpl + f Ljava/util/Map; field_57959 cache + f Lnet/minecraft/class_1088$class_10812; field_64598 blockItemModels + f Lnet/minecraft/class_9826; field_56988 spriteGetter + f Ljava/util/function/Function; field_57960 cacheValueFunction + f Lnet/minecraft/class_7775$class_12356; field_64597 interner + m (Lnet/minecraft/class_7775$class_10897;)Ljava/lang/Object; method_68550 method_68550 + p 1 key + m (Lnet/minecraft/class_1088;Lnet/minecraft/class_9826;Lnet/minecraft/class_7775$class_12356;Lnet/minecraft/class_1088$class_10812;)V + p 3 interner + p 2 spriteGetter + p 4 blockItemModels +c net/minecraft/class_1088$class_10524 net/minecraft/client/render/model/ModelBaker$BakedModels + f Ljava/util/Map; comp_3472 itemProperties + f Ljava/util/Map; comp_3432 itemStackModels + f Ljava/util/Map; comp_3430 blockStateModels + f Lnet/minecraft/class_1088$class_10812; comp_3770 missingModels + m ()Ljava/util/Map; comp_3472 itemProperties + m ()Lnet/minecraft/class_1088$class_10812; comp_3770 missingModels + m ()Ljava/util/Map; comp_3430 blockStateModels + m ()Ljava/util/Map; comp_3432 itemStackModels + m (Lnet/minecraft/class_1088$class_10812;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)V + p 1 missingModels + p 2 blockStateModels + p 3 itemStackModels + p 4 itemProperties +c net/minecraft/class_1088$class_10812 net/minecraft/client/render/model/ModelBaker$BlockItemModels + f Lnet/minecraft/class_10889; comp_5259 blockPart + f Lnet/minecraft/class_1087; comp_3771 block + f Lnet/minecraft/class_10439; comp_3772 item + m (Lnet/minecraft/class_10819;Lnet/minecraft/class_9826;Lnet/minecraft/class_7775$class_12356;)Lnet/minecraft/class_1088$class_10812; method_68021 bake + p 0 model + m ()Lnet/minecraft/class_10439; comp_3772 item + m ()Lnet/minecraft/class_1087; comp_3771 block + m ()Lnet/minecraft/class_10889; comp_5259 blockPart + m (Lnet/minecraft/class_10889;Lnet/minecraft/class_1087;Lnet/minecraft/class_10439;)V + p 1 blockPart + p 2 block + p 3 item +c net/minecraft/class_1088$class_12357 net/minecraft/client/render/model/ModelBaker$Vec3fInternerImpl + f Lcom/google/common/collect/Interner; field_64599 INTERNER +c net/minecraft/class_1087 net/minecraft/client/render/model/BlockStateModel + m ()Lnet/minecraft/class_1058; method_68511 particleSprite + c {@return a texture that represents the model}\n\n

This is primarily used in particles. For example, block break particles use this sprite. + m (Lnet/minecraft/class_5819;Ljava/util/List;)V method_68513 addParts + p 2 parts + p 1 random + m (Lnet/minecraft/class_5819;)Ljava/util/List; method_68512 getParts + p 1 random +c net/minecraft/class_1087$class_9979 net/minecraft/client/render/model/BlockStateModel$UnbakedGrouped + m (Lnet/minecraft/class_2680;)Ljava/lang/Object; method_62332 getEqualityGroup + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_7775;)Lnet/minecraft/class_1087; method_65542 bake + p 2 baker + p 1 state +c net/minecraft/class_1087$class_10892 net/minecraft/client/render/model/BlockStateModel$Unbaked + f Lcom/mojang/serialization/Codec; field_57942 WEIGHTED_VARIANT_CODEC + f Lcom/mojang/serialization/Codec; field_57943 WEIGHTED_CODEC + f Lcom/mojang/serialization/Codec; field_57944 CODEC + m (Lnet/minecraft/class_10893$class_10894;)Ljava/lang/Record; method_68520 method_68520 + p 0 right + m ()Lnet/minecraft/class_1087$class_9979; method_68515 cached + m (Lnet/minecraft/class_1097$class_10898;)Ljava/lang/Record; method_68522 method_68522 + p 0 left + m (Lnet/minecraft/class_7775;)Lnet/minecraft/class_1087; method_68521 bake + p 1 baker + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_1087$class_10892; method_68517 method_68517 + p 0 either + m (Lnet/minecraft/class_1087$class_10892;)Lcom/mojang/serialization/DataResult; method_68519 method_68519 + p 0 variant + m (Ljava/util/List;)Lnet/minecraft/class_1097$class_10898; method_68523 method_68523 + p 0 variants + m (Lnet/minecraft/class_6010;)Lnet/minecraft/class_6010; method_68516 method_68516 + p 0 weighted + m (Lnet/minecraft/class_1097$class_10898;)Lcom/mojang/serialization/DataResult; method_68525 method_68525 + p 0 unbaked + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_68518 method_68518 + p 0 instance +c net/minecraft/class_1087$class_10891 net/minecraft/client/render/model/BlockStateModel$CachedUnbaked + f Lnet/minecraft/class_7775$class_10897; field_57940 cacheKey + f Lnet/minecraft/class_1087$class_10892; field_57939 delegate + m (Lnet/minecraft/class_1087$class_10892;)V + p 1 delegate +c net/minecraft/class_1087$class_10891$1 net/minecraft/client/render/model/BlockStateModel$CachedUnbaked$1 + m (Lnet/minecraft/class_7775;)Lnet/minecraft/class_1087; method_68514 compute +c net/minecraft/class_1086 net/minecraft/client/render/model/ModelRotation + f Lnet/minecraft/class_1086; field_63619 IDENTITY + f Ljava/util/Map; field_63620 BY_DIRECTION_TRANSFORMATION + f Lnet/minecraft/class_4590; field_23373 rotation + f Lnet/minecraft/class_1086$class_10810; field_56980 uvModel + f Ljava/util/Map; field_56979 invertedFaces + f Lnet/minecraft/class_4990; field_64679 transformation + f Ljava/util/Map; field_56978 faces + m (Lnet/minecraft/class_4990;)Lnet/minecraft/class_1086; method_75489 fromDirectionTransformation + p 0 directionTransformation + m (Lnet/minecraft/class_4990;)V + p 1 transformation + m ()Lnet/minecraft/class_3665; method_68010 getUVModel +c net/minecraft/class_1086$class_10810 net/minecraft/client/render/model/ModelRotation$UVModel + f Lnet/minecraft/class_1086; comp_3769 parent + m ()Lnet/minecraft/class_1086; comp_3769 parent + m (Lnet/minecraft/class_1086;)V + p 1 parent +c net/minecraft/class_9801 net/minecraft/client/render/BuiltBuffer + f Lnet/minecraft/class_9799$class_9800; field_52094 sortedBuffer + f Lnet/minecraft/class_9801$class_4574; field_52095 drawParameters + f Lnet/minecraft/class_9799$class_9800; field_52093 buffer + m ()Ljava/nio/ByteBuffer; method_60821 getSortedBuffer + m ()Lnet/minecraft/class_9801$class_4574; method_60822 getDrawParameters + m (Lnet/minecraft/class_9799$class_9800;Lnet/minecraft/class_9801$class_4574;)V + p 1 buffer + p 2 drawParameters + m (Ljava/nio/ByteBuffer;ILcom/mojang/blaze3d/vertex/VertexFormat;)Lnet/minecraft/class_11899; method_60820 collectCentroids + p 0 buffer + p 2 format + p 1 vertexCount + m ()Ljava/nio/ByteBuffer; method_60818 getBuffer + m (Lnet/minecraft/class_9799;Lnet/minecraft/class_8251;)Lnet/minecraft/class_9801$class_9802; method_60819 sortQuads + p 2 sorter + p 1 allocator +c net/minecraft/class_9801$class_4574 net/minecraft/client/render/BuiltBuffer$DrawParameters + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596; comp_752 mode + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595; comp_753 indexType + f I comp_751 indexCount + f I comp_750 vertexCount + f Lcom/mojang/blaze3d/vertex/VertexFormat; comp_749 format + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596; comp_752 mode + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595; comp_753 indexType + m ()Lcom/mojang/blaze3d/vertex/VertexFormat; comp_749 format + m ()I comp_751 indexCount + m ()I comp_750 vertexCount + m (Lcom/mojang/blaze3d/vertex/VertexFormat;IILcom/mojang/blaze3d/vertex/VertexFormat$class_5596;Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595;)V + p 1 format + p 2 vertexCount + p 3 indexCount + p 4 mode + p 5 indexType +c net/minecraft/class_9801$class_9802 net/minecraft/client/render/BuiltBuffer$SortState + f Lnet/minecraft/class_11899; comp_2840 centroids + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595; comp_2841 indexType + m (Lorg/apache/commons/lang3/mutable/MutableLong;I)V method_60826 method_60826 + p 1 i + m (Lorg/apache/commons/lang3/mutable/MutableLong;I)V method_60825 method_60825 + p 1 i + m (JLcom/mojang/blaze3d/vertex/VertexFormat$class_5595;)Lit/unimi/dsi/fastutil/ints/IntConsumer; method_60823 getStorer + p 1 pointer + p 3 indexType + m (Lnet/minecraft/class_9799;Lnet/minecraft/class_8251;)Lnet/minecraft/class_9799$class_9800; method_60824 sortAndStore + p 2 sorter + p 1 allocator + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595; comp_2841 indexType + m ()Lnet/minecraft/class_11899; comp_2840 centroids + m (Lnet/minecraft/class_11899;Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595;)V + p 1 centroids + p 2 indexType +c com/mojang/blaze3d/systems/GpuDevice com/mojang/blaze3d/systems/GpuDevice + m (Ljava/util/function/Supplier;ILjava/nio/ByteBuffer;)Lcom/mojang/blaze3d/buffers/GpuBuffer; createBuffer createBuffer + p 1 labelGetter + p 2 usage + p 3 data + m (Lcom/mojang/blaze3d/textures/AddressMode;Lcom/mojang/blaze3d/textures/AddressMode;Lcom/mojang/blaze3d/textures/FilterMode;Lcom/mojang/blaze3d/textures/FilterMode;ILjava/util/OptionalDouble;)Lnet/minecraft/class_12137; createSampler createSampler + p 1 addressModeU + p 2 addressModeV + p 5 maxAnisotropy + p 6 maxLevelOfDetail + p 3 minFilterMode + p 4 magFilterMode + m (Ljava/lang/String;ILcom/mojang/blaze3d/textures/TextureFormat;IIII)Lcom/mojang/blaze3d/textures/GpuTexture; createTexture createTexture + p 2 usage + p 1 label + p 4 width + p 3 format + p 6 depthOrLayers + p 5 height + p 7 mipLevels + m (Ljava/util/function/Supplier;ILcom/mojang/blaze3d/textures/TextureFormat;IIII)Lcom/mojang/blaze3d/textures/GpuTexture; createTexture createTexture + p 3 format + p 4 width + p 1 labelGetter + p 2 usage + p 7 mipLevels + p 5 height + p 6 depthOrLayers + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_12289;)Lcom/mojang/blaze3d/pipeline/CompiledRenderPipeline; precompilePipeline precompilePipeline + p 2 sourceGetter + p 1 pipeline + m (Lcom/mojang/blaze3d/textures/GpuTexture;II)Lcom/mojang/blaze3d/textures/GpuTextureView; createTextureView createTextureView + p 3 mipLevels + p 2 baseMipLevel + p 1 texture + m (Ljava/util/function/Supplier;IJ)Lcom/mojang/blaze3d/buffers/GpuBuffer; createBuffer createBuffer + p 2 usage + p 1 labelGetter + p 3 size + m (Lcom/mojang/blaze3d/textures/GpuTexture;)Lcom/mojang/blaze3d/textures/GpuTextureView; createTextureView createTextureView + p 1 texture + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;)Lcom/mojang/blaze3d/pipeline/CompiledRenderPipeline; precompilePipeline precompilePipeline + p 1 pipeline +c net/minecraft/class_10932 net/minecraft/client/render/entity/state/EntityHitbox + f F comp_3860 blue + f D comp_3853 y1 + f D comp_3852 x1 + f F comp_3855 offsetX + f D comp_3854 z1 + f F comp_3857 offsetZ + f F comp_3856 offsetY + f F comp_3859 green + f F comp_3858 red + f D comp_3851 z0 + f D comp_3850 y0 + f D comp_3849 x0 + m (DDDDDDFFF)V + p 9 y1 + p 11 z1 + p 5 z0 + p 7 x1 + p 1 x0 + p 3 y0 + p 13 red + p 14 green + p 15 blue + m ()F comp_3860 blue + m ()F comp_3859 green + m ()D comp_3850 y0 + m ()D comp_3852 x1 + m ()D comp_3851 z0 + m ()D comp_3854 z1 + m ()D comp_3853 y1 + m ()F comp_3856 offsetY + m ()F comp_3855 offsetX + m ()F comp_3858 red + m ()F comp_3857 offsetZ + m ()D comp_3849 x0 + m (DDDDDDFFFFFF)V + p 1 x0 + p 3 y0 + p 5 z0 + p 7 x1 + p 9 y1 + p 11 z1 + p 13 offsetX + p 14 offsetY + p 15 offsetZ + p 16 red + p 17 green + p 18 blue +c net/minecraft/class_10914 net/minecraft/predicate/component/ComponentsPredicate + f Lnet/minecraft/class_10914; field_58044 EMPTY + f Lcom/mojang/serialization/MapCodec; field_58045 CODEC + f Lnet/minecraft/class_9139; field_58046 PACKET_CODEC + f Lnet/minecraft/class_9329; comp_3833 exact + f Ljava/util/Map; comp_3834 partial + m (Lnet/minecraft/class_9473;)Z method_68682 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_68681 method_68681 + p 0 instance + m ()Z method_68680 isEmpty + m (Ljava/lang/Object;)Z test test + p 1 components + m ()Ljava/util/Map; comp_3834 partial + m ()Lnet/minecraft/class_9329; comp_3833 exact + m (Lnet/minecraft/class_9329;Ljava/util/Map;)V + p 1 exact + p 2 partial +c net/minecraft/class_10914$class_10915 net/minecraft/predicate/component/ComponentsPredicate$Builder + f Lcom/google/common/collect/ImmutableMap$Builder; field_58048 partial + f Lnet/minecraft/class_9329; field_58047 exact + m ()Lnet/minecraft/class_10914; method_68686 build + m ()Lnet/minecraft/class_10914$class_10915; method_68683 create + m (Lnet/minecraft/class_9360$class_8745;Lnet/minecraft/class_9360;)Lnet/minecraft/class_10914$class_10915; method_68685 partial + p 2 predicate + p 1 type + m (Lnet/minecraft/class_9331;)Lnet/minecraft/class_10914$class_10915; method_75073 has + p 1 type + m (Lnet/minecraft/class_9329;)Lnet/minecraft/class_10914$class_10915; method_68684 exact + p 1 exact +c net/minecraft/class_1092 net/minecraft/client/render/model/BakedModelManager + f Lnet/minecraft/class_5599; field_55473 entityModels + f Lnet/minecraft/class_1088$class_10812; field_57008 missingModels + f Lnet/minecraft/class_11697; field_61870 atlasManager + f Ljava/util/Map; field_55573 itemProperties + f Ljava/util/Map; field_55472 bakedItemModels + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_55476 modelGroups + f Lnet/minecraft/class_11786; field_62266 skinCache + f Lorg/slf4j/Logger; field_40573 LOGGER + f Lnet/minecraft/class_7654; field_53676 MODELS_FINDER + f Lnet/minecraft/class_2960; field_64468 BLOCK_OR_ITEM + f Lnet/minecraft/class_324; field_20277 colorMap + f Lnet/minecraft/class_773; field_5410 blockModelCache + f Lnet/minecraft/class_10418; field_55474 blockEntityModels + m ()Lnet/minecraft/class_1087; method_68046 getMissingModel + m (Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/lang/Void;)Lnet/minecraft/class_1092$class_10816; method_65747 method_65747 + p 3 async + m (Lnet/minecraft/class_2960;)Ljava/lang/String; method_65755 method_65755 + p 0 id + m (Lnet/minecraft/class_4730;)Ljava/lang/String; method_45886 method_45886 + p 0 spriteId + m (Ljava/util/Map;Lnet/minecraft/class_1087;)Ljava/util/Map; method_65751 toStateMap + p 0 blockStateModels + p 1 missingModel + m (Lnet/minecraft/class_324;Lnet/minecraft/class_9824$class_10095;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; method_62654 group + p 0 colors + p 1 definition + m ()Ljava/util/function/Supplier; method_65757 getEntityModelsSupplier + m (Lnet/minecraft/class_5599;)Lnet/minecraft/class_10418; method_73040 method_73040 + p 1 entityModels + m (Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/Executor;Ljava/lang/Void;)Ljava/util/concurrent/CompletionStage; method_65753 method_65753 + p 11 v + m (Ljava/lang/String;Ljava/util/Collection;)V method_65754 method_65754 + p 1 sprites + p 0 modelName + m (Ljava/lang/String;)Ljava/lang/String; method_65748 method_65748 + p 0 textureId + m (Lcom/google/common/collect/Multimap;Lcom/google/common/collect/Multimap;Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/class_5599;Lnet/minecraft/class_10418;Lnet/minecraft/class_1088$class_10524;)Lnet/minecraft/class_1092$class_7779; method_68047 method_68047 + p 5 bakedModels + m ()Lnet/minecraft/class_773; method_4743 getBlockModels + m ()Lnet/minecraft/class_10418; method_65756 getBlockEntityModelsSupplier + m (Lnet/minecraft/class_7766$class_7767;Lnet/minecraft/class_7766$class_7767;Lnet/minecraft/class_1088;Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/class_5599;Lnet/minecraft/class_10418;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_45883 bake + p 5 blockEntityModels + p 6 executor + p 0 blocksResult + p 3 groups + p 4 entityModels + p 1 itemsResult + p 2 baker + m (Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_45881 reloadModels + p 0 resourceManager + p 1 executor + m (Ljava/util/List;)Ljava/util/Map; method_45897 method_45897 + p 0 models + m (Lnet/minecraft/class_9824$class_10095;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; method_62655 method_62655 + p 1 definition + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)Z method_21611 shouldRerender + p 1 from + p 2 to + m (Lnet/minecraft/class_10097;Lnet/minecraft/class_10434;)V method_65933 method_65933 + p 1 asset + m (Ljava/util/Map;Lnet/minecraft/class_1087;Lnet/minecraft/class_2680;)V method_65752 method_65752 + p 2 state + m (Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletionStage; method_45899 method_45899 + p 1 models + m (Lnet/minecraft/class_324;Lnet/minecraft/class_11697;Lnet/minecraft/class_11786;)V + p 2 atlasManager + p 1 colorMap + p 3 skinCache + m (Ljava/util/Map;Lnet/minecraft/class_9824$class_10095;Lnet/minecraft/class_10521$class_10522;)Lnet/minecraft/class_1092$class_10816; method_62657 collect + p 2 result + p 0 modelMap + p 1 stateDefinition + m (Lnet/minecraft/class_1092$class_7779;)V method_18179 upload + p 1 bakingResult + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_10434$class_10543; method_65934 getItemProperties + p 1 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_10439; method_65746 getItemModel + p 1 id + m (Ljava/lang/String;Ljava/util/Collection;)V method_65749 method_65749 + p 1 textureIds + p 0 modelName +c net/minecraft/class_1092$class_7779 net/minecraft/client/render/model/BakedModelManager$BakingResult + f Lnet/minecraft/class_1088$class_10524; comp_3433 bakedModels + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; comp_3066 modelGroups + f Lnet/minecraft/class_10418; comp_3435 specialBlockModelRenderer + f Lnet/minecraft/class_5599; comp_3434 entityModelSet + f Ljava/util/Map; comp_1060 modelCache + m ()Lnet/minecraft/class_10418; comp_3435 specialBlockModelRenderer + m ()Lnet/minecraft/class_1088$class_10524; comp_3433 bakedModels + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; comp_3066 modelGroups + m ()Ljava/util/Map; comp_1060 modelCache + m ()Lnet/minecraft/class_5599; comp_3434 entityModelSet + m (Lnet/minecraft/class_1088$class_10524;Lit/unimi/dsi/fastutil/objects/Object2IntMap;Ljava/util/Map;Lnet/minecraft/class_5599;Lnet/minecraft/class_10418;)V + p 1 bakedModels + p 2 modelGroups + p 3 modelCache + p 4 entityModelSet + p 5 specialBlockModelRenderer +c net/minecraft/class_1092$class_10816 net/minecraft/client/render/model/BakedModelManager$Models + f Lnet/minecraft/class_10819; comp_3774 missing + f Ljava/util/Map; comp_3775 models + m ()Lnet/minecraft/class_10819; comp_3774 missing + m ()Ljava/util/Map; comp_3775 models + m (Lnet/minecraft/class_10819;Ljava/util/Map;)V + p 1 missing + p 2 models +c net/minecraft/class_1092$1 net/minecraft/client/render/model/BakedModelManager$1 + f Lnet/minecraft/class_1058; field_64470 missingItemSprite + f Lnet/minecraft/class_1058; field_55480 missingBlockSprite +c net/minecraft/class_10916 net/minecraft/nbt/SnbtOperation + f Lnet/minecraft/class_9401; field_58064 SUGGESTIONS + f Ljava/util/Map; field_58063 OPERATIONS + f Lnet/minecraft/class_10837; field_58065 EXPECTED_STRING_UUID_EXCEPTION + f Lnet/minecraft/class_10837; field_58066 EXPECTED_NUMBER_OR_BOOLEAN_EXCEPTION + f Ljava/lang/String; field_58062 FALSE + f Ljava/lang/String; field_58061 TRUE +c net/minecraft/class_10916$1 net/minecraft/nbt/SnbtOperation$1 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Ljava/lang/Boolean; method_68728 asBoolean + p 0 ops + p 1 value +c net/minecraft/class_10916$3 net/minecraft/nbt/SnbtOperation$3 + f Ljava/util/Set; field_58067 values +c net/minecraft/class_10916$class_10918 net/minecraft/nbt/SnbtOperation$Operator + m (Lcom/mojang/serialization/DynamicOps;Ljava/util/List;Lnet/minecraft/class_9393;)Ljava/lang/Object; method_68729 apply + p 1 ops + p 2 args + p 3 state +c net/minecraft/class_10916$class_10917 net/minecraft/nbt/SnbtOperation$Type + f Ljava/lang/String; comp_3835 id + f I comp_3836 argCount + m ()I comp_3836 argCount + m ()Ljava/lang/String; comp_3835 id + m (Ljava/lang/String;I)V + p 1 id + p 2 argCount +c net/minecraft/class_9815 net/minecraft/network/packet/s2c/common/ServerLinksS2CPacket + f Lnet/minecraft/class_9139; field_52190 CODEC + f Ljava/util/List; comp_2859 links + m (Lnet/minecraft/class_8705;)V method_60930 apply + m ()Ljava/util/List; comp_2859 links + m (Ljava/util/List;)V + p 1 links +c net/minecraft/class_9814 net/minecraft/network/packet/s2c/common/CustomReportDetailsS2CPacket + f I field_52187 MAX_VALUE_LENGTH + f I field_52188 MAX_DETAILS_SIZE + f Lnet/minecraft/class_9139; field_52189 DETAILS_CODEC + f I field_52186 MAX_KEY_LENGTH + f Lnet/minecraft/class_9139; field_52185 CODEC + f Ljava/util/Map; comp_2858 details + m (Lnet/minecraft/class_8705;)V method_60929 apply + m ()Ljava/util/Map; comp_2858 details + m (Ljava/util/Map;)V + p 1 details +c net/minecraft/class_9813 net/minecraft/util/crash/ReportType + f Lnet/minecraft/class_9813; field_52284 MINECRAFT_CHUNK_IO_ERROR_REPORT + f Ljava/util/List; comp_2857 nuggets + f Ljava/lang/String; comp_2856 header + f Lnet/minecraft/class_9813; field_52182 MINECRAFT_PROFILER_RESULTS + f Lnet/minecraft/class_9813; field_52181 MINECRAFT_CRASH_REPORT + f Lnet/minecraft/class_9813; field_52184 MINECRAFT_NETWORK_PROTOCOL_ERROR_REPORT + f Lnet/minecraft/class_9813; field_52183 MINECRAFT_TEST_REPORT + m ()Ljava/lang/String; method_60927 chooseNugget + m (Ljava/lang/StringBuilder;Ljava/util/List;)V method_60928 addHeaderAndNugget + p 2 extraInfo + p 1 reportBuilder + m ()Ljava/util/List; comp_2857 nuggets + m ()Ljava/lang/String; comp_2856 header + m (Ljava/lang/String;Ljava/util/List;)V + p 1 header + p 2 nuggets +c net/minecraft/class_1097 net/minecraft/client/render/model/WeightedBlockStateModel + f Lnet/minecraft/class_1058; field_57028 particleSprite + f Lnet/minecraft/class_6012; field_5434 models + m (Lnet/minecraft/class_6012;)V + p 1 models +c net/minecraft/class_1097$class_10898 net/minecraft/client/render/model/WeightedBlockStateModel$Unbaked + f Lnet/minecraft/class_6012; comp_3816 entries + m (Lnet/minecraft/class_10526$class_10103;Lnet/minecraft/class_6010;)V method_68552 method_68552 + p 1 entry + m (Lnet/minecraft/class_7775;Lnet/minecraft/class_1087$class_10892;)Lnet/minecraft/class_1087; method_68551 method_68551 + p 1 model + m ()Lnet/minecraft/class_6012; comp_3816 entries + m (Lnet/minecraft/class_6012;)V + p 1 entries +c net/minecraft/class_9812 net/minecraft/network/DisconnectionInfo + f Ljava/util/Optional; comp_2854 report + f Ljava/util/Optional; comp_2855 bugReportLink + f Lnet/minecraft/class_2561; comp_2853 reason + m (Lnet/minecraft/class_2561;)V + p 1 reason + m ()Ljava/util/Optional; comp_2854 report + m ()Ljava/util/Optional; comp_2855 bugReportLink + m ()Lnet/minecraft/class_2561; comp_2853 reason + m (Lnet/minecraft/class_2561;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 reason + p 2 report + p 3 bugReportLink +c net/minecraft/class_9810 net/minecraft/client/render/chunk/SectionBuilder + f Lnet/minecraft/class_776; field_52164 blockRenderManager + f Lnet/minecraft/class_824; field_52165 blockEntityRenderDispatcher + m (Lnet/minecraft/class_9810$class_9811;Lnet/minecraft/class_2586;)V method_60902 addBlockEntity + p 2 blockEntity + p 1 data + m (Lnet/minecraft/class_776;Lnet/minecraft/class_824;)V + p 2 blockEntityRenderDispatcher + p 1 blockRenderManager + m (Lnet/minecraft/class_4076;Lnet/minecraft/class_853;Lnet/minecraft/class_8251;Lnet/minecraft/class_750;)Lnet/minecraft/class_9810$class_9811; method_60904 build + p 4 allocatorStorage + p 3 vertexSorter + p 2 renderRegion + p 1 sectionPos + m (Ljava/util/Map;Lnet/minecraft/class_750;Lnet/minecraft/class_11515;)Lnet/minecraft/class_287; method_60903 beginBufferBuilding + p 1 builders + p 2 allocatorStorage + p 3 layer +c net/minecraft/class_9810$class_9811 net/minecraft/client/render/chunk/SectionBuilder$RenderData + f Ljava/util/Map; field_52168 buffers + f Ljava/util/List; field_52167 blockEntities + f Lnet/minecraft/class_854; field_52169 chunkOcclusionData + f Lnet/minecraft/class_9801$class_9802; field_52170 translucencySortingData + m ()V method_60905 close +c net/minecraft/class_10922 net/minecraft/util/dynamic/AbstractListBuilder + f Lcom/mojang/serialization/DataResult; field_58080 builder + f Lcom/mojang/serialization/DynamicOps; field_58081 ops + m (Ljava/util/function/UnaryOperator;)Lcom/mojang/serialization/ListBuilder; mapError mapError + p 1 onError + m ()Ljava/lang/Object; method_68739 initBuilder + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_68742 build + p 1 builder + p 2 prefix + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; method_68741 add + p 1 builder + p 2 value + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; build build + p 1 prefix + m (Lcom/mojang/serialization/DynamicOps;)V + p 1 ops + m (Ljava/lang/Object;)Lcom/mojang/serialization/ListBuilder; add add + p 1 value + m (Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/ListBuilder; withErrorsFrom withErrorsFrom + p 1 result + m (Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/ListBuilder; add add + p 1 value +c net/minecraft/class_963 net/minecraft/client/render/entity/VillagerEntityRenderer + f Lnet/minecraft/class_2960; field_4807 TEXTURE + f Lnet/minecraft/class_976$class_9994; field_53204 HEAD_TRANSFORMATION + m (Lnet/minecraft/class_10080;)Lnet/minecraft/class_2960; method_4151 getTexture + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_10080;F)V method_62567 updateRenderState + m ()Lnet/minecraft/class_10080; method_62568 createRenderState + m (Lnet/minecraft/class_10080;)F method_55836 getShadowRadius +c net/minecraft/class_2391 net/minecraft/block/KelpPlantBlock + f Lcom/mojang/serialization/MapCodec; field_46379 CODEC +c net/minecraft/class_2392 net/minecraft/particle/ItemStackParticleEffect + f Lnet/minecraft/class_2396; field_11193 type + f Lnet/minecraft/class_1799; field_11192 stack + f Lcom/mojang/serialization/Codec; field_51464 ITEM_STACK_CODEC + m (Lnet/minecraft/class_2396;)Lcom/mojang/serialization/MapCodec; method_29136 createCodec + p 0 type + m ()Lnet/minecraft/class_1799; method_10289 getItemStack + m (Lnet/minecraft/class_2396;Lnet/minecraft/class_1799;)Lnet/minecraft/class_2392; method_56177 method_56177 + p 1 stack + m (Lnet/minecraft/class_2396;)Lnet/minecraft/class_9139; method_56178 createPacketCodec + p 0 type + m (Lnet/minecraft/class_2396;Lnet/minecraft/class_1799;)V + p 2 stack + p 1 type + m (Lnet/minecraft/class_2396;Lnet/minecraft/class_1799;)Lnet/minecraft/class_2392; method_29137 method_29137 + p 1 stack + m (Lnet/minecraft/class_2392;)Lnet/minecraft/class_1799; method_56176 method_56176 + p 0 effect + m (Lnet/minecraft/class_2392;)Lnet/minecraft/class_1799; method_29135 method_29135 + p 0 effect +c net/minecraft/class_962 net/minecraft/client/render/entity/VindicatorEntityRenderer + f Lnet/minecraft/class_2960; field_4804 TEXTURE + m ()Lnet/minecraft/class_10035; method_62569 createRenderState + m (Lnet/minecraft/class_10035;)Lnet/minecraft/class_2960; method_4147 getTexture +c net/minecraft/class_962$1 net/minecraft/client/render/entity/VindicatorEntityRenderer$1 + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10035;FF)V method_17156 render +c net/minecraft/class_961 net/minecraft/client/render/entity/UndeadHorseEntityRenderer + f Lnet/minecraft/class_2960; field_53203 texture + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_961$class_10651;)V + p 1 ctx + p 2 type + m (Lnet/minecraft/class_10019;)Lnet/minecraft/class_2960; method_4145 getTexture + m ()Lnet/minecraft/class_10019; method_62564 createRenderState + m (Lnet/minecraft/class_10019;)Lnet/minecraft/class_1799; method_75465 method_75465 + p 0 state + m (Lnet/minecraft/class_10019;)Lnet/minecraft/class_1799; method_66854 method_66854 + p 0 state +c net/minecraft/class_961$class_10651 net/minecraft/client/render/entity/UndeadHorseEntityRenderer$Type + f Lnet/minecraft/class_5601; field_56107 modelLayer + f Lnet/minecraft/class_10186$class_10190; field_56109 saddleLayerType + f Lnet/minecraft/class_5601; field_56111 babySaddleModelLayer + f Lnet/minecraft/class_5601; field_56110 saddleModelLayer + f Lnet/minecraft/class_2960; field_56106 texture + f Lnet/minecraft/class_5601; field_56108 babyModelLayer + f Lnet/minecraft/class_961$class_10651; field_56104 SKELETON + f Lnet/minecraft/class_961$class_10651; field_56105 ZOMBIE + m (Ljava/lang/String;ILnet/minecraft/class_2960;Lnet/minecraft/class_5601;Lnet/minecraft/class_5601;Lnet/minecraft/class_10186$class_10190;Lnet/minecraft/class_5601;Lnet/minecraft/class_5601;)V + p 6 saddleLayerType + p 5 babyModelLayer + p 4 modelLayer + p 3 texture + p 8 babySaddleModelLayer + p 7 saddleModelLayer +c net/minecraft/class_2393 net/minecraft/block/KelpBlock + f D field_31105 GROWTH_CHANCE + f Lnet/minecraft/class_265; field_11195 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46378 CODEC +c net/minecraft/class_2394 net/minecraft/particle/ParticleEffect + m ()Lnet/minecraft/class_2396; method_10295 getType +c net/minecraft/class_960 net/minecraft/client/render/entity/VexEntityRenderer + f Lnet/minecraft/class_2960; field_4802 CHARGING_TEXTURE + f Lnet/minecraft/class_2960; field_4801 TEXTURE + m ()Lnet/minecraft/class_10078; method_62566 createRenderState + m (Lnet/minecraft/class_1634;Lnet/minecraft/class_2338;)I method_24092 getBlockLight + m (Lnet/minecraft/class_1634;Lnet/minecraft/class_10078;F)V method_62565 updateRenderState + m (Lnet/minecraft/class_10078;)Lnet/minecraft/class_2960; method_4144 getTexture +c net/minecraft/class_967 net/minecraft/client/render/entity/WitherSkeletonEntityRenderer + f Lnet/minecraft/class_2960; field_4818 TEXTURE + m (Lnet/minecraft/class_10066;)Lnet/minecraft/class_2960; method_57818 getTexture + m ()Lnet/minecraft/class_10066; method_62578 createRenderState +c net/minecraft/class_966 net/minecraft/client/render/entity/WitherSkullEntityRenderer + f Lnet/minecraft/class_607; field_4816 model + f Lnet/minecraft/class_2960; field_4815 TEXTURE + f Lnet/minecraft/class_2960; field_4817 INVULNERABLE_TEXTURE + m (Lnet/minecraft/class_1687;Lnet/minecraft/class_2338;)I method_24094 getBlockLight + m ()Lnet/minecraft/class_10084; method_62580 createRenderState + m (Lnet/minecraft/class_10084;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_4159 render + m ()Lnet/minecraft/class_5607; method_32199 getTexturedModelData + m (Lnet/minecraft/class_10084;)Lnet/minecraft/class_2960; method_4160 getTexture + p 1 state + m (Lnet/minecraft/class_1687;Lnet/minecraft/class_10084;F)V method_62579 updateRenderState +c net/minecraft/class_965 net/minecraft/client/render/entity/WitchEntityRenderer + f Lnet/minecraft/class_2960; field_4814 TEXTURE + m ()Lnet/minecraft/class_10082; method_62575 createRenderState + m (Lnet/minecraft/class_1640;Lnet/minecraft/class_10082;F)V method_62574 updateRenderState + m (Lnet/minecraft/class_10082;)Lnet/minecraft/class_2960; method_4154 getTexture +c net/minecraft/class_1061 net/minecraft/client/texture/TextureTickListener + m ()V method_4622 tick +c net/minecraft/class_2390 net/minecraft/particle/DustParticleEffect + f Lnet/minecraft/class_2390; field_11188 DEFAULT + f Lcom/mojang/serialization/MapCodec; field_25124 CODEC + f I field_28272 RED + f Lnet/minecraft/class_9139; field_48455 PACKET_CODEC + f I field_51492 color + m (Lnet/minecraft/class_2390;)Ljava/lang/Integer; method_65034 method_65034 + p 0 particle + m (Lnet/minecraft/class_2390;)Ljava/lang/Integer; method_65035 method_65035 + p 0 particle + m ()Lorg/joml/Vector3f; method_59843 getColor + m (IF)V + p 2 scale + p 1 color + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33115 method_33115 + p 0 instance +c net/minecraft/class_964 net/minecraft/client/render/entity/WitherEntityRenderer + f Lnet/minecraft/class_2960; field_4812 INVULNERABLE_TEXTURE + f Lnet/minecraft/class_2960; field_4813 TEXTURE + m (Lnet/minecraft/class_1528;Lnet/minecraft/class_2338;)I method_24093 getBlockLight + m ()Lnet/minecraft/class_10083; method_62577 createRenderState + m (Lnet/minecraft/class_10083;Lnet/minecraft/class_4587;)V method_4152 scale + m (Lnet/minecraft/class_1528;Lnet/minecraft/class_10083;F)V method_62576 updateRenderState + m (Lnet/minecraft/class_10083;)Lnet/minecraft/class_2960; method_4153 getTexture +c net/minecraft/class_1060 net/minecraft/client/texture/TextureManager + f Lnet/minecraft/class_3300; field_5287 resourceContainer + f Lnet/minecraft/class_2960; field_5285 MISSING_IDENTIFIER + f Lorg/slf4j/Logger; field_5288 LOGGER + f Ljava/util/Set; field_5284 tickListeners + f Ljava/util/Map; field_5286 textures + m (Lnet/minecraft/class_3300;)V + p 1 resourceManager + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_2960;Lnet/minecraft/class_10537;)Lnet/minecraft/class_10539; method_65877 loadTexture + p 2 texture + p 1 textureId + p 0 resourceManager + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_2960;Lnet/minecraft/class_10537;Ljava/util/concurrent/Executor;)Lnet/minecraft/class_1060$class_10540; method_65878 reloadTexture + p 0 resourceManager + p 2 texture + p 1 textureId + p 3 prepareExecutor + m (Lnet/minecraft/class_2960;)V method_65875 registerTexture + p 1 id + m (Lnet/minecraft/class_2960;)V method_4615 destroyTexture + p 1 id + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_10537;)V method_65876 registerTexture + p 2 texture + p 1 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1044; method_4619 getTexture + p 1 id + m (Ljava/util/List;Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;Lnet/minecraft/class_2960;Lnet/minecraft/class_1044;)V method_65879 method_65879 + p 3 id + p 4 texture + m (Ljava/nio/file/Path;)V method_49715 dumpDynamicTextures + p 1 path + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_1044;)V method_4616 registerTexture + p 1 id + p 2 texture + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_10537;)Lnet/minecraft/class_10539; method_65925 loadTexture + p 1 id + p 2 texture + m ()V method_76322 tick + m (Ljava/util/List;Ljava/lang/Void;)V method_65880 method_65880 + p 2 v + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_1044;)V method_30299 closeTexture + p 1 id + p 2 texture + m (Ljava/nio/file/Path;Lnet/minecraft/class_2960;Lnet/minecraft/class_1044;)V method_49718 method_49718 + p 2 texture + p 1 id +c net/minecraft/class_1060$class_10540 net/minecraft/client/texture/TextureManager$ReloadedTexture + f Lnet/minecraft/class_10537; comp_3449 texture + f Ljava/util/concurrent/CompletableFuture; comp_3450 newContents + m ()Ljava/util/concurrent/CompletableFuture; comp_3450 newContents + m ()Lnet/minecraft/class_10537; comp_3449 texture + m (Lnet/minecraft/class_10537;Ljava/util/concurrent/CompletableFuture;)V + p 1 texture + p 2 newContents +c net/minecraft/class_2399 net/minecraft/block/LadderBlock + f Ljava/util/Map; field_55768 SHAPES_BY_DIRECTION + f Lnet/minecraft/class_2754; field_11253 FACING + f Lnet/minecraft/class_2746; field_11257 WATERLOGGED + f Lcom/mojang/serialization/MapCodec; field_46380 CODEC + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_10305 canPlaceOn + p 1 world + p 2 pos + p 3 side +c net/minecraft/class_1066 net/minecraft/client/resource/server/ServerResourcePackLoader + f Lnet/minecraft/class_9041$class_9042; field_47597 reloadContext + f Lnet/minecraft/class_3285; field_47593 NOOP_PROVIDER + f Lnet/minecraft/class_9044; field_47598 manager + f Ljava/util/regex/Pattern; field_5296 SHA1_PATTERN + f Lnet/minecraft/class_9225; field_49134 POSITION + f I field_47690 packIndex + f Lnet/minecraft/class_3285; field_47596 packProvider + f Lnet/minecraft/class_5352; field_47600 packSource + f Lnet/minecraft/class_2561; field_40562 SERVER_NAME_TEXT + f Lorg/slf4j/Logger; field_5298 LOGGER + f Lnet/minecraft/class_310; field_47595 client + f Lnet/minecraft/class_9039; field_47594 DEBUG_PACK_STATE_CHANGE_CALLBACK + f Lnet/minecraft/class_9039; field_47601 packStateChangeCallback + f Lnet/minecraft/class_9028; field_47599 downloader + m (Ljava/util/List;)Ljava/util/List; method_55519 toProfiles + p 1 packs + m (Ljava/util/UUID;)Ljava/util/concurrent/CompletableFuture; method_55532 getPackLoadFuture + p 1 id + m (Lnet/minecraft/class_9041$class_9042;)V method_55517 reload + p 1 context + m (Lnet/minecraft/class_310;Ljava/nio/file/Path;Lnet/minecraft/class_542$class_547;)V + p 2 downloadsDirectory + p 1 client + p 3 runArgs + m ()V method_55540 declineAll + m ()V method_55530 onReloadFailure + m (Ljava/util/concurrent/Executor;)Ljava/lang/Runnable; method_55525 createPackChangeCallback + p 1 executor + m ()V method_55536 onReloadSuccess + m ()V method_55538 initWorldPack + m (Ljava/util/UUID;Ljava/net/URL;Ljava/lang/String;)V method_55523 addResourcePack + p 1 id + p 2 url + p 3 hash + m (Ljava/lang/String;)Lcom/google/common/hash/HashCode; method_55518 toHashCode + p 0 hash + m ()Lnet/minecraft/class_9041; method_55542 getReloadScheduler + m ()Lnet/minecraft/class_3285; method_55514 getPassthroughPackProvider + m (Ljava/util/function/Consumer;)V method_55526 method_55526 + p 1 packAdder + m (Lnet/minecraft/class_2535;)Lnet/minecraft/class_9039; method_55527 getStateChangeCallback + p 0 connection + m (Ljava/util/function/Consumer;)V method_55534 method_55534 + p 0 profileAdder + m (I)Lnet/minecraft/class_3521$class_9034; method_55515 createListener + p 1 entryCount + m (Ljava/util/UUID;)V method_55520 remove + p 1 id + m (Lnet/minecraft/class_2535;Lnet/minecraft/class_9044$class_9047;)V method_55528 init + p 2 acceptanceStatus + p 1 connection + m (Lnet/minecraft/class_9028;Ljava/util/concurrent/Executor;Lnet/minecraft/class_320;Ljava/net/Proxy;)Lnet/minecraft/class_9038; method_55516 createDownloadQueuer + p 4 proxy + p 3 session + p 2 executor + p 1 downloader + m ()V method_55541 clear + m ()V method_55535 onForcedReloadFailure + m (Ljava/util/List;)Lnet/minecraft/class_3285; method_55531 getPackProvider + p 0 serverPacks + m ()V method_55537 removeAll + m (Ljava/util/UUID;Ljava/nio/file/Path;)V method_55524 addResourcePack + p 1 id + p 2 path + m ()V method_55539 acceptAll +c net/minecraft/class_1066$3 net/minecraft/client/resource/server/ServerResourcePackLoader$3 + f I field_47692 failureCount + f Lnet/minecraft/class_2561; field_47605 toastTitle + f I field_47607 current + f Lnet/minecraft/class_2561; field_47606 toastDescription + f Ljava/util/OptionalLong; field_47608 contentLength + f Lnet/minecraft/class_370$class_9037; field_47604 toastType + m ()V method_55544 showToast + m (J)V method_55543 showProgress + p 1 writtenBytes +c net/minecraft/class_1066$4 net/minecraft/client/resource/server/ServerResourcePackLoader$4 + f I field_47614 MAX_BYTES + f Lcom/google/common/hash/HashFunction; field_47615 SHA1 + m ()Ljava/util/Map; method_55545 getHeaders +c net/minecraft/class_1066$5 net/minecraft/client/resource/server/ServerResourcePackLoader$5 + f Z field_47619 shouldKeepRunning + f Z field_47618 currentlyRunning + m ()V method_55547 runOnExecutor +c net/minecraft/class_1065 net/minecraft/client/resource/DefaultClientResourcePackProvider + f Lnet/minecraft/class_7662; field_40557 METADATA_MAP + f Ljava/lang/String; field_43088 HIGH_CONTRAST_ID + f Lnet/minecraft/class_9225; field_49132 REQUIRED_POSITION + f Lnet/minecraft/class_9225; field_49133 OPTIONAL_POSITION + f Lnet/minecraft/class_2960; field_40560 ID + f Lnet/minecraft/class_3272; field_40556 METADATA + f Ljava/nio/file/Path; field_40561 resourcePacksPath + f Ljava/util/Map; field_40559 PROFILE_NAME_TEXTS + f Lnet/minecraft/class_9224; field_49131 INFO + m (Ljava/nio/file/Path;)Lnet/minecraft/class_3268; method_45857 createDefaultPack + p 0 assetsPath + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; method_45856 getResourcePacksPath + p 1 path + m (Ljava/nio/file/Path;Lnet/minecraft/class_8580;)V + p 1 assetsPath + p 2 symlinkFinder + m (Ljava/lang/String;Lnet/minecraft/class_2561;)Lnet/minecraft/class_9224; method_57056 createInfo + p 1 title + p 0 id +c net/minecraft/class_1064 net/minecraft/client/resource/ResourceIndex + f Lcom/google/common/base/Splitter; field_40563 SEPARATOR_SPLITTER + f Lorg/slf4j/Logger; field_5290 LOGGER + m (Ljava/nio/file/Path;Ljava/lang/String;)Ljava/nio/file/Path; method_45858 buildFileSystem + c Builds the resource file system from the index.\n\n@return the root path of the resource file system + p 1 indexName + p 0 assetsDir +c net/minecraft/class_2396 net/minecraft/particle/ParticleType + f Z field_11196 alwaysShow + m (Z)V + p 1 alwaysShow + m ()Lcom/mojang/serialization/MapCodec; method_29138 getCodec + m ()Lnet/minecraft/class_9139; method_56179 getPacketCodec + m ()Z method_10299 shouldAlwaysSpawn +c net/minecraft/class_1069 net/minecraft/client/resource/GrassColormapResourceSupplier + f Lnet/minecraft/class_2960; field_5302 GRASS_COLORMAP_LOC + m ([ILnet/minecraft/class_3300;Lnet/minecraft/class_3695;)V method_18661 apply + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)[I method_18662 tryLoad + p 1 resourceManager + p 2 profiler +c net/minecraft/class_2397 net/minecraft/block/LeavesBlock + f I field_31111 MAX_DISTANCE + f Z field_64683 cutoutLeaves + f Lnet/minecraft/class_2746; field_38227 WATERLOGGED + f F field_55773 leafParticleChance + f Lnet/minecraft/class_2758; field_11199 DISTANCE + f Lnet/minecraft/class_2746; field_11200 PERSISTENT + m (FLnet/minecraft/class_4970$class_2251;)V + p 1 leafParticleChance + p 2 settings + m (Z)V method_76771 setCutoutLeaves + p 0 cutoutLeaves + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_10300 updateDistanceFromLogs + p 2 pos + p 1 world + p 0 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_67234 spawnLeafParticle + p 2 pos + p 1 world + p 3 random + m (Lnet/minecraft/class_2680;)I method_10302 getDistanceFromLog + p 0 state + m (Lnet/minecraft/class_2680;)Ljava/util/OptionalInt; method_49817 getOptionalDistanceFromLog + p 0 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)V method_66444 spawnLeafParticle + p 5 posBelow + p 4 state + p 3 random + p 2 pos + p 1 world + m (Lnet/minecraft/class_2680;)Z method_42311 shouldDecay + p 1 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)V method_66442 spawnWaterParticle + p 2 random + p 1 pos + p 0 world + p 4 posBelow + p 3 state +c net/minecraft/class_2398 net/minecraft/particle/ParticleTypes + f Lnet/minecraft/class_9139; field_48456 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_25125 TYPE_CODEC + f Lnet/minecraft/class_2396; field_54870 BLOCK_CRUMBLE + f Lnet/minecraft/class_2400; field_20537 FALLING_NECTAR + f Lnet/minecraft/class_2400; field_20534 DRIPPING_HONEY + f Lnet/minecraft/class_2400; field_20536 LANDING_HONEY + f Lnet/minecraft/class_2400; field_20535 FALLING_HONEY + f Lnet/minecraft/class_2396; field_54869 TRAIL + f Lnet/minecraft/class_2400; field_28079 FALLING_DRIPSTONE_WATER + f Lnet/minecraft/class_2400; field_56509 FIREFLY + f Lnet/minecraft/class_2396; field_35434 BLOCK_MARKER + f Lnet/minecraft/class_2400; field_28076 DRIPPING_DRIPSTONE_LAVA + f Lnet/minecraft/class_2400; field_28077 FALLING_DRIPSTONE_LAVA + f Lnet/minecraft/class_2400; field_28078 DRIPPING_DRIPSTONE_WATER + f Lnet/minecraft/class_2400; field_18306 FALLING_WATER + f Lnet/minecraft/class_2400; field_18305 LANDING_LAVA + f Lnet/minecraft/class_2400; field_18304 FALLING_LAVA + f Lnet/minecraft/class_2400; field_23190 REVERSE_PORTAL + f Lnet/minecraft/class_2400; field_46911 WHITE_SMOKE + f Lnet/minecraft/class_2400; field_28802 FALLING_SPORE_BLOSSOM + f Lnet/minecraft/class_2400; field_28803 SPORE_BLOSSOM_AIR + f Lnet/minecraft/class_2400; field_11250 ELDER_GUARDIAN + f Lnet/minecraft/class_2400; field_11251 SMOKE + f Lnet/minecraft/class_2400; field_11247 BUBBLE + f Lnet/minecraft/class_2400; field_11248 FIREWORK + f Lnet/minecraft/class_2400; field_11249 WITCH + f Lnet/minecraft/class_2400; field_11240 FLAME + f Lnet/minecraft/class_2400; field_11241 BUBBLE_POP + f Lnet/minecraft/class_2400; field_11242 RAIN + f Lnet/minecraft/class_2400; field_11243 CURRENT_DOWN + f Lnet/minecraft/class_2400; field_11244 FISHING + f Lnet/minecraft/class_2400; field_11246 ITEM_SLIME + f Lnet/minecraft/class_2400; field_11236 EXPLOSION + f Lnet/minecraft/class_2400; field_11237 LARGE_SMOKE + f Lnet/minecraft/class_2400; field_11238 BUBBLE_COLUMN_UP + f Lnet/minecraft/class_2400; field_11239 LAVA + f Lnet/minecraft/class_2400; field_11230 ITEM_SNOWBALL + f Lnet/minecraft/class_2400; field_11231 ANGRY_VILLAGER + f Lnet/minecraft/class_2400; field_11232 DRIPPING_WATER + f Lnet/minecraft/class_2400; field_11233 SQUID_INK + f Lnet/minecraft/class_2400; field_11234 SNEEZE + f Lnet/minecraft/class_2400; field_11222 DOLPHIN + f Lnet/minecraft/class_2400; field_11223 DRIPPING_LAVA + f Lnet/minecraft/class_2400; field_11224 NOTE + f Lnet/minecraft/class_2396; field_28275 VIBRATION + f Lnet/minecraft/class_2396; field_28276 DUST_COLOR_TRANSITION + f Lnet/minecraft/class_2400; field_11227 SWEEP_ATTACK + f Lnet/minecraft/class_2400; field_11228 SPIT + f Lnet/minecraft/class_2400; field_11229 NAUTILUS + f Lnet/minecraft/class_2400; field_11220 TOTEM_OF_UNDYING + f Lnet/minecraft/class_2400; field_11221 EXPLOSION_EMITTER + f Lnet/minecraft/class_2396; field_50248 DUST_PILLAR + f Lnet/minecraft/class_2396; field_38357 SHRIEK + f Lnet/minecraft/class_2396; field_11245 EFFECT + f Lnet/minecraft/class_2400; field_23114 SOUL + f Lnet/minecraft/class_2396; field_11226 ENTITY_EFFECT + f Lnet/minecraft/class_2400; field_28013 SNOWFLAKE + f Lnet/minecraft/class_2396; field_11218 ITEM + f Lnet/minecraft/class_2396; field_11212 DUST + f Lnet/minecraft/class_2396; field_11213 INSTANT_EFFECT + f Lnet/minecraft/class_2396; field_11216 DRAGON_BREATH + f Lnet/minecraft/class_2396; field_11217 BLOCK + f Lnet/minecraft/class_2396; field_38003 SCULK_CHARGE + f Lnet/minecraft/class_2396; field_11206 FALLING_DUST + f Lnet/minecraft/class_2400; field_47494 GUST + f Lnet/minecraft/class_2400; field_47493 TRIAL_SPAWNER_DETECTION + f Lnet/minecraft/class_2400; field_22446 DRIPPING_OBSIDIAN_TEAR + f Lnet/minecraft/class_2400; field_22447 FALLING_OBSIDIAN_TEAR + f Lnet/minecraft/class_2400; field_22448 LANDING_OBSIDIAN_TEAR + f Lnet/minecraft/class_2400; field_38004 SCULK_CHARGE_POP + f Lnet/minecraft/class_2400; field_17741 COMPOSTER + f Lnet/minecraft/class_2400; field_38002 SCULK_SOUL + f Lnet/minecraft/class_2400; field_29645 SCRAPE + f Lnet/minecraft/class_2400; field_29642 WAX_ON + f Lnet/minecraft/class_2400; field_29644 ELECTRIC_SPARK + f Lnet/minecraft/class_2400; field_29643 WAX_OFF + f Lnet/minecraft/class_2400; field_48975 VAULT_CONNECTION + f Lnet/minecraft/class_2400; field_22248 CRIMSON_SPORE + f Lnet/minecraft/class_2400; field_22249 WARPED_SPORE + f Lnet/minecraft/class_2400; field_22246 SOUL_FIRE_FLAME + f Lnet/minecraft/class_2400; field_22247 ASH + f Lnet/minecraft/class_2400; field_28478 GLOW_SQUID_INK + f Lnet/minecraft/class_2400; field_28479 GLOW + f Lnet/minecraft/class_2400; field_38908 SONIC_BOOM + f Lnet/minecraft/class_2400; field_61966 COPPER_FIRE_FLAME + f Lnet/minecraft/class_2400; field_43380 EGG_CRACK + f Lnet/minecraft/class_2400; field_11219 MYCELIUM + f Lnet/minecraft/class_2400; field_11210 UNDERWATER + f Lnet/minecraft/class_2400; field_11211 HAPPY_VILLAGER + f Lnet/minecraft/class_2400; field_27783 SMALL_FLAME + f Lnet/minecraft/class_2400; field_23956 WHITE_ASH + f Lnet/minecraft/class_2400; field_11214 PORTAL + f Lnet/minecraft/class_2400; field_11215 ENCHANT + f Lnet/minecraft/class_2400; field_11207 END_ROD + f Lnet/minecraft/class_2400; field_17430 CAMPFIRE_COSY_SMOKE + f Lnet/minecraft/class_2400; field_11208 ENCHANTED_HIT + f Lnet/minecraft/class_2400; field_17431 CAMPFIRE_SIGNAL_SMOKE + f Lnet/minecraft/class_2400; field_11209 DAMAGE_INDICATOR + f Lnet/minecraft/class_2400; field_43379 CHERRY_LEAVES + f Lnet/minecraft/class_2396; field_55880 TINTED_LEAVES + f Lnet/minecraft/class_2400; field_11201 HEART + f Lnet/minecraft/class_2400; field_11202 SPLASH + f Lnet/minecraft/class_2400; field_11203 POOF + f Lnet/minecraft/class_2400; field_11204 CLOUD + f Lnet/minecraft/class_2400; field_11205 CRIT + f Lnet/minecraft/class_2400; field_46763 DUST_PLUME + f Lnet/minecraft/class_2400; field_50249 OMINOUS_SPAWNING + f Lnet/minecraft/class_2400; field_50247 TRIAL_SPAWNER_DETECTION_OMINOUS + f Lnet/minecraft/class_2400; field_50250 RAID_OMEN + f Lnet/minecraft/class_2400; field_50251 TRIAL_OMEN + f Lnet/minecraft/class_2400; field_50252 SMALL_GUST + f Lnet/minecraft/class_2400; field_49139 GUST_EMITTER_SMALL + f Lnet/minecraft/class_2400; field_50245 INFESTED + f Lnet/minecraft/class_2400; field_50246 ITEM_COBWEB + f Lnet/minecraft/class_2400; field_55169 PALE_OAK_LEAVES + f Lnet/minecraft/class_2396; field_17909 FLASH + f Lnet/minecraft/class_2400; field_49140 GUST_EMITTER_LARGE + m (Lnet/minecraft/class_2396;)Lnet/minecraft/class_9139; method_56181 method_56181 + p 0 type + m (Lnet/minecraft/class_2396;)Lnet/minecraft/class_9139; method_56182 method_56182 + p 0 type + m (Lnet/minecraft/class_2396;)Lnet/minecraft/class_9139; method_56180 method_56180 + p 0 type + m (Lnet/minecraft/class_2396;)Lnet/minecraft/class_9139; method_64926 method_64926 + p 0 type + m (Lnet/minecraft/class_2396;)Lcom/mojang/serialization/MapCodec; method_42616 method_42616 + p 0 type + m (Lnet/minecraft/class_2396;)Lcom/mojang/serialization/MapCodec; method_33122 method_33122 + p 0 type + m (Lnet/minecraft/class_2396;)Lcom/mojang/serialization/MapCodec; method_29139 method_29139 + p 0 type + m (Lnet/minecraft/class_2396;)Lcom/mojang/serialization/MapCodec; method_33121 method_33121 + p 0 type + m (Lnet/minecraft/class_2396;)Lcom/mojang/serialization/MapCodec; method_64927 method_64927 + p 0 type + m (Lnet/minecraft/class_2396;)Lcom/mojang/serialization/MapCodec; method_42023 method_42023 + p 0 type + m (Lnet/minecraft/class_2396;)Lnet/minecraft/class_9139; method_56183 method_56183 + p 0 type + m (Ljava/lang/String;Z)Lnet/minecraft/class_2400; method_10303 register + p 0 name + p 1 alwaysShow + m (Lnet/minecraft/class_2396;)Lnet/minecraft/class_9139; method_56184 method_56184 + p 0 type + m (Ljava/lang/String;ZLjava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/class_2396; method_42022 register + p 2 codecGetter + p 1 alwaysShow + p 0 name + p 3 packetCodecGetter +c net/minecraft/class_1068 net/minecraft/client/util/DefaultSkinHelper + f [Lnet/minecraft/class_8685; field_41121 SKINS + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/class_8685; method_52854 getSkinTextures + p 0 profile + m (Ljava/lang/String;Lnet/minecraft/class_7920;)Lnet/minecraft/class_8685; method_52855 createSkinTextures + p 1 type + p 0 texture + m (Ljava/util/UUID;)Lnet/minecraft/class_8685; method_4648 getSkinTextures + p 0 uuid + m ()Lnet/minecraft/class_2960; method_4649 getTexture + m ()Lnet/minecraft/class_8685; method_62620 getSteve +c net/minecraft/class_959 net/minecraft/client/render/entity/TropicalFishEntityRenderer + f Lnet/minecraft/class_583; field_4800 smallModel + f Lnet/minecraft/class_583; field_4799 largeModel + f Lnet/minecraft/class_2960; field_41644 B_TEXTURE + f Lnet/minecraft/class_2960; field_41643 A_TEXTURE + m ()Lnet/minecraft/class_10076; method_62561 createRenderState + m (Lnet/minecraft/class_10076;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_4140 render + m (Lnet/minecraft/class_10076;)Lnet/minecraft/class_2960; method_4141 getTexture + m (Lnet/minecraft/class_1474;Lnet/minecraft/class_10076;F)V method_62559 updateRenderState + m (Lnet/minecraft/class_10076;)I method_62560 getMixColor + m (Lnet/minecraft/class_10076;Lnet/minecraft/class_4587;FF)V method_4142 setupTransforms +c net/minecraft/class_958 net/minecraft/client/render/entity/TurtleEntityRenderer + f Lnet/minecraft/class_2960; field_4798 TEXTURE + m (Lnet/minecraft/class_10077;)F method_55835 getShadowRadius + m ()Lnet/minecraft/class_10077; method_62563 createRenderState + m (Lnet/minecraft/class_10077;)Lnet/minecraft/class_2960; method_4139 getTexture + m (Lnet/minecraft/class_1481;Lnet/minecraft/class_10077;F)V method_62562 updateRenderState +c net/minecraft/class_957 net/minecraft/client/render/entity/TntMinecartEntityRenderer + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IZI)V method_23190 renderFlashingBlock + c Renders a given block state into the given buffers either normally or with a bright white overlay.\nUsed for rendering primed TNT either standalone or as part of a TNT minecart. + p 2 queue + p 1 matrices + p 0 state + m (Lnet/minecraft/class_1701;Lnet/minecraft/class_10046;F)V method_62556 updateRenderState + m (Lnet/minecraft/class_10046;Lnet/minecraft/class_2680;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;I)V method_4137 renderBlock + m ()Lnet/minecraft/class_10046; method_62555 createRenderState +c net/minecraft/class_1070 net/minecraft/client/resource/FoliageColormapResourceSupplier + f Lnet/minecraft/class_2960; field_5303 FOLIAGE_COLORMAP + m ([ILnet/minecraft/class_3300;Lnet/minecraft/class_3695;)V method_18659 apply + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)[I method_18660 reload + p 1 resourceManager + p 2 profiler +c net/minecraft/class_974 net/minecraft/client/render/entity/feature/CreeperChargeFeatureRenderer + f Lnet/minecraft/class_562; field_4844 model + f Lnet/minecraft/class_2960; field_4842 SKIN + m (Lnet/minecraft/class_10010;)Z method_62590 shouldRender + m ()Lnet/minecraft/class_562; method_62592 getEnergySwirlModel + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;)V + p 2 loader + p 1 context +c net/minecraft/class_973 net/minecraft/client/render/entity/feature/StuckArrowsFeatureRenderer + m (Lnet/minecraft/class_922;Lnet/minecraft/class_5617$class_5618;)V + p 1 entityRenderer + p 2 context +c net/minecraft/class_972 net/minecraft/client/render/entity/feature/CapeFeatureRenderer + f Lnet/minecraft/class_10201; field_54177 equipmentModelLoader + f Lnet/minecraft/class_572; field_53206 model + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_10186$class_10190;)Z method_64257 hasCustomModelForLayer + p 1 stack + p 2 layerType + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;Lnet/minecraft/class_10201;)V + p 1 context + p 2 modelLoader + p 3 equipmentModelLoader + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10055;FF)V method_4177 render +c net/minecraft/class_971 net/minecraft/client/render/entity/ZombieVillagerEntityRenderer + f Lnet/minecraft/class_2960; field_4835 TEXTURE + m (Lnet/minecraft/class_10087;)Z method_25452 isShaking + m (Lnet/minecraft/class_1641;Lnet/minecraft/class_10087;F)V method_62585 updateRenderState + m ()Lnet/minecraft/class_10087; method_62586 createRenderState + m (Lnet/minecraft/class_10087;)Lnet/minecraft/class_2960; method_4175 getTexture +c net/minecraft/class_1074 net/minecraft/client/resource/language/I18n + f Lnet/minecraft/class_2477; field_25290 language + m (Lnet/minecraft/class_2477;)V method_29391 setLanguage + p 0 language + m (Ljava/lang/String;)Z method_4663 hasTranslation + p 0 key + m (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; method_4662 translate + p 0 key + p 1 args +c net/minecraft/class_978 net/minecraft/client/render/entity/feature/Deadmau5FeatureRenderer + f Lnet/minecraft/class_572; field_53213 model + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;)V + p 1 context + p 2 entityModels + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10055;FF)V method_4181 render +c net/minecraft/class_977 net/minecraft/client/render/entity/feature/DolphinHeldItemFeatureRenderer + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10012;FF)V method_17160 render +c net/minecraft/class_976 net/minecraft/client/render/entity/feature/HeadFeatureRenderer + f Ljava/util/function/Function; field_27771 headModels + f Lnet/minecraft/class_976$class_9994; field_53211 headTransformation + f Lnet/minecraft/class_11786; field_62256 skinCache + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_976$class_9994;)V method_32798 translate + p 1 transformation + p 0 matrices + m (Lnet/minecraft/class_5599;Lnet/minecraft/class_2484$class_2485;)Lnet/minecraft/class_5598; method_65572 method_65572 + p 1 type + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;Lnet/minecraft/class_11786;Lnet/minecraft/class_976$class_9994;)V + p 1 context + p 4 headTransformation + p 2 models + p 3 skinCache + m (Lnet/minecraft/class_10042;Lnet/minecraft/class_2484$class_2485;)Lnet/minecraft/class_1921; method_73542 getRenderLayer + p 1 state + p 2 skullType + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10042;FF)V method_17159 render + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;Lnet/minecraft/class_11786;)V + p 3 skinCache + p 2 models + p 1 context +c net/minecraft/class_976$class_9994 net/minecraft/client/render/entity/feature/HeadFeatureRenderer$HeadTransformation + f Lnet/minecraft/class_976$class_9994; field_53212 DEFAULT + f F comp_3059 horizontalScale + f F comp_3057 yOffset + f F comp_3058 skullYOffset + m ()F comp_3058 skullYOffset + m ()F comp_3059 horizontalScale + m ()F comp_3057 yOffset + m (FFF)V + p 1 yOffset + p 2 skullYOffset + p 3 horizontalScale +c net/minecraft/class_975 net/minecraft/client/render/entity/feature/EndermanBlockFeatureRenderer + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10016;FF)V method_4179 render +c net/minecraft/class_1071 net/minecraft/client/texture/PlayerSkinProvider + f Lorg/slf4j/Logger; field_46909 LOGGER + f Lnet/minecraft/class_10538; field_62487 downloader + f Lcom/google/common/cache/LoadingCache; field_45634 cache + f Lnet/minecraft/class_1071$class_8687; field_45635 skinCache + f Lnet/minecraft/class_1071$class_8687; field_45637 elytraCache + f Lnet/minecraft/class_1071$class_8687; field_45636 capeCache + f Lnet/minecraft/class_7497; field_62263 apiServices + m (Ljava/nio/file/Path;Lnet/minecraft/class_7497;Lnet/minecraft/class_10538;Ljava/util/concurrent/Executor;)V + p 3 downloader + p 4 executor + p 1 cacheDirectory + p 2 apiServices + m (ZLnet/minecraft/class_8685;)Z method_73549 method_73549 + p 1 skinTextures + m (Lcom/mojang/authlib/GameProfile;Z)Ljava/util/function/Supplier; method_73544 supplySkinTextures + p 2 requireSecure + p 1 profile + m (ZLnet/minecraft/class_8685;)Z method_73547 method_73547 + p 1 skinTextures + m (Lcom/mojang/authlib/GameProfile;)Ljava/util/concurrent/CompletableFuture; method_52863 fetchSkinTextures + p 1 profile + m (Ljava/util/UUID;Lcom/mojang/authlib/minecraft/MinecraftProfileTextures;)Ljava/util/concurrent/CompletableFuture; method_52859 fetchSkinTextures + p 2 textures + p 1 uuid +c net/minecraft/class_1071$1 net/minecraft/client/texture/PlayerSkinProvider$1 + m (Lnet/minecraft/class_1071$class_8686;Lcom/mojang/authlib/minecraft/MinecraftProfileTextures;)Ljava/util/concurrent/CompletionStage; method_52866 method_52866 + p 2 textures + m (Lnet/minecraft/class_1071$class_8686;Lnet/minecraft/class_8685;Ljava/lang/Throwable;)Ljava/util/Optional; method_65882 method_65882 + p 1 skinTextures + p 2 throwable + m (Lnet/minecraft/class_1071$class_8686;)Ljava/util/concurrent/CompletableFuture; method_52868 load + m (Ljava/lang/Object;)Ljava/lang/Object; load load + p 1 value +c net/minecraft/class_1071$class_8687 net/minecraft/client/texture/PlayerSkinProvider$FileCache + f Lcom/mojang/authlib/minecraft/MinecraftProfileTexture$Type; field_45641 type + f Ljava/nio/file/Path; field_45640 directory + f Ljava/util/Map; field_45642 hashToTexture + m (Lnet/minecraft/class_1071;Ljava/nio/file/Path;Lcom/mojang/authlib/minecraft/MinecraftProfileTexture$Type;)V + p 3 type + p 2 directory + m (Lcom/mojang/authlib/minecraft/MinecraftProfileTexture;)Ljava/util/concurrent/CompletableFuture; method_52870 get + p 1 texture + m (Ljava/lang/String;)Lnet/minecraft/class_2960; method_52871 getTexturePath + p 1 hash + m (Lcom/mojang/authlib/minecraft/MinecraftProfileTexture;)Ljava/util/concurrent/CompletableFuture; method_52873 store + p 1 texture +c net/minecraft/class_1071$class_8686 net/minecraft/client/texture/PlayerSkinProvider$Key + f Ljava/util/UUID; comp_2010 profileId + f Lcom/mojang/authlib/properties/Property; comp_2011 packedTextures + m ()Lcom/mojang/authlib/properties/Property; comp_2011 packedTextures + m ()Ljava/util/UUID; comp_2010 profileId + m (Ljava/util/UUID;Lcom/mojang/authlib/properties/Property;)V + p 1 profileId + p 2 packedTextures +c net/minecraft/class_1078 net/minecraft/client/resource/language/TranslationStorage + f Z field_25289 rightToLeft + f Ljava/util/Map; field_5330 translations + f Lorg/slf4j/Logger; field_5332 LOGGER + m (Ljava/lang/String;Ljava/util/List;Ljava/util/Map;)V method_4676 load + p 0 langCode + p 1 resourceRefs + p 2 translations + m (Ljava/util/Map;Z)V + p 1 translations + p 2 rightToLeft + m (Lnet/minecraft/class_3300;Ljava/util/List;Z)Lnet/minecraft/class_1078; method_4675 load + p 2 rightToLeft + p 1 definitions + p 0 resourceManager +c net/minecraft/class_1077 net/minecraft/client/resource/language/LanguageDefinition + f Z comp_1200 rightToLeft + f Lcom/mojang/serialization/Codec; field_41862 CODEC + f Ljava/lang/String; comp_1198 region + f Ljava/lang/String; comp_1199 name + m ()Lnet/minecraft/class_2561; method_48303 getDisplayText + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48304 method_48304 + p 0 instance + m ()Z comp_1200 rightToLeft + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/lang/String;Ljava/lang/String;Z)V + p 2 region + p 1 code + p 3 rightToLeft + m ()Ljava/lang/String; comp_1198 region + m ()Ljava/lang/String; comp_1199 name +c net/minecraft/class_1076 net/minecraft/client/resource/language/LanguageManager + f Lorg/slf4j/Logger; field_5325 LOGGER + f Ljava/util/function/Consumer; field_51830 reloadCallback + f Ljava/lang/String; field_5323 currentLanguageCode + f Ljava/util/Map; field_5324 languageDefs + f Lnet/minecraft/class_1077; field_25291 ENGLISH_US + m (Ljava/lang/String;Ljava/util/function/Consumer;)V + p 1 languageCode + p 2 reloadCallback + m (Ljava/lang/String;)Lnet/minecraft/class_1077; method_4668 getLanguage + p 1 code + m (Ljava/util/stream/Stream;)Ljava/util/Map; method_29393 loadAvailableLanguages + p 0 packs + m (Ljava/lang/String;)V method_4667 setLanguage + p 1 languageCode + m ()Ljava/lang/String; method_4669 getLanguage + m ()Ljava/util/SortedMap; method_4665 getAllLanguages + m (Ljava/util/Map;Lnet/minecraft/class_3262;)V method_29392 method_29392 + p 1 pack +c net/minecraft/class_970 net/minecraft/client/render/entity/feature/ArmorFeatureRenderer + f Lnet/minecraft/class_11677; field_61805 babyModelData + f Lnet/minecraft/class_11677; field_61804 adultModelData + f Lnet/minecraft/class_10197; field_54183 equipmentRenderer + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10034;FF)V method_17157 render + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_11677;Lnet/minecraft/class_11677;Lnet/minecraft/class_10197;)V + p 4 equipmentRenderer + p 3 babyModelData + p 2 adultModelData + p 1 context + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_1799;Lnet/minecraft/class_1304;ILnet/minecraft/class_10034;)V method_4169 renderArmor + p 6 state + p 2 queue + p 3 stack + p 4 slot + p 5 light + p 1 matrices + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_11677;Lnet/minecraft/class_10197;)V + p 1 context + p 2 modelData + p 3 equipmentRenderer + m (Lnet/minecraft/class_1304;)Z method_4173 usesInnerModel + p 1 slot + m (Lnet/minecraft/class_10192;Lnet/minecraft/class_1304;)Z method_64082 hasModel + p 0 component + p 1 slot + m (Lnet/minecraft/class_10034;Lnet/minecraft/class_1304;)Lnet/minecraft/class_572; method_4172 getModel + p 2 slot + p 1 state + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1304;)Z method_64081 hasModel + p 1 slot + p 0 stack +c net/minecraft/class_1079 net/minecraft/client/resource/metadata/AnimationResourceMetadata + f Ljava/util/Optional; comp_3454 width + f Ljava/util/Optional; comp_3455 height + f Lcom/mojang/serialization/Codec; field_55536 CODEC + f Z comp_3457 interpolate + f Lnet/minecraft/class_7677; field_55537 SERIALIZER + f I comp_3456 defaultFrameTime + f Ljava/util/Optional; comp_3453 frames + m ()Ljava/util/Optional; comp_3454 width + m ()Ljava/util/Optional; comp_3455 height + m ()Z comp_3457 interpolate + m (II)Lnet/minecraft/class_7771; method_24143 getSize + p 1 defaultWidth + p 2 defaultHeight + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;IZ)V + p 4 defaultFrameTime + p 5 interpolate + p 1 frames + p 2 width + p 3 height + m ()I comp_3456 defaultFrameTime + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65887 method_65887 + p 0 instance + m ()Ljava/util/Optional; comp_3453 frames +c net/minecraft/class_969 net/minecraft/client/render/entity/WolfEntityRenderer + m (Lnet/minecraft/class_1493;Lnet/minecraft/class_10085;F)V method_62581 updateRenderState + m ()Lnet/minecraft/class_10085; method_62583 createRenderState + m (Lnet/minecraft/class_10085;)Lnet/minecraft/class_2960; method_4165 getTexture + m (Lnet/minecraft/class_10085;)I method_62582 getMixColor +c net/minecraft/class_968 net/minecraft/client/render/entity/ZombieBaseEntityRenderer + f Lnet/minecraft/class_2960; field_4819 TEXTURE + m (Lnet/minecraft/class_1642;Lnet/minecraft/class_1306;)Lnet/minecraft/class_572$class_573; method_75456 getArmPose + m (Lnet/minecraft/class_10086;)Z method_25449 isShaking + m (Lnet/minecraft/class_10086;)Lnet/minecraft/class_2960; method_4163 getTexture + m (Lnet/minecraft/class_1642;Lnet/minecraft/class_10086;F)V method_62369 updateRenderState + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_623;Lnet/minecraft/class_623;Lnet/minecraft/class_11677;Lnet/minecraft/class_11677;)V + p 3 babyMainModel + p 2 mainModel + p 5 babyModel + p 4 adultModel + p 1 context +c net/minecraft/class_985 net/minecraft/client/render/entity/feature/EndermanEyesFeatureRenderer + f Lnet/minecraft/class_1921; field_4876 SKIN +c net/minecraft/class_2370 net/minecraft/registry/SimpleRegistry + c An implementation of a mutable registry. All vanilla registries use this (or its\nsubclass, {@link DefaultedRegistry}).\n\n@see Registry + f Ljava/util/Map; field_25067 keyToEntry + f Ljava/util/Map; field_40584 intrusiveValueToEntry + f Lnet/minecraft/class_2370$class_10105; field_53687 tagLookup + f Lnet/minecraft/class_5321; field_41126 key + f Ljava/util/Map; field_36461 valueToEntry + f Lit/unimi/dsi/fastutil/objects/Reference2IntMap; field_26683 entryToRawId + f Ljava/util/Map; field_53686 tags + f Lcom/mojang/serialization/Lifecycle; field_26732 lifecycle + f Ljava/util/Map; field_49135 keyToEntryInfo + f Lit/unimi/dsi/fastutil/objects/ObjectList; field_26682 rawIdToEntry + f Z field_36463 frozen + f Ljava/util/Map; field_11107 idToEntry + m (Lit/unimi/dsi/fastutil/objects/Reference2IntOpenHashMap;)V method_39665 method_39665 + p 0 map + m (Ljava/util/Map;Lnet/minecraft/class_6862;Lnet/minecraft/class_6885$class_6888;)V method_62686 method_62686 + p 2 key + p 3 value + m (Lnet/minecraft/class_6880$class_6883;)Ljava/lang/Object; method_40253 getValue + p 0 entry + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_6880$class_6883; method_56594 method_56594 + p 1 k + m ()V method_62691 resetTagEntries + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_2960; method_41199 method_41199 + p 0 entry + m (Ljava/util/Map$Entry;)Z method_62689 method_62689 + p 0 entry + m (Ljava/lang/Object;)Lnet/minecraft/class_6880$class_6883; method_40271 method_40271 + p 1 valuex + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_6885$class_6888; method_40562 createNamedEntryList + p 1 tag + m (Lnet/minecraft/class_6885$class_6888;)V method_62688 method_62688 + p 0 tag + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_6885$class_6888; method_62690 getTag + p 1 key + m (Lnet/minecraft/class_6862;Lnet/minecraft/class_6880;)Lnet/minecraft/class_6880$class_6883; method_62682 ensureTagable + p 2 entry + p 1 key + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_2960; method_62685 method_62685 + p 0 entry + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_6880$class_6883; method_44299 method_44299 + p 1 key2 + m (Ljava/util/Map$Entry;)Z method_40256 method_40256 + p 0 entry + m ()V method_62692 refreshTags + m (Lnet/minecraft/class_5321;)V method_40274 assertNotFrozen + p 1 key + m (Lcom/google/common/collect/ImmutableMap$Builder;Ljava/util/Map;Lnet/minecraft/class_6862;Ljava/util/List;)V method_62684 method_62684 + p 3 key + p 4 values + m ()V method_45939 assertNotFrozen + m (Ljava/lang/Object;Lnet/minecraft/class_6880$class_6883;)V method_45938 method_45938 + p 1 entry + p 0 value + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Lifecycle;)V + p 2 lifecycle + p 1 key + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_6880$class_6883; method_44298 getOrCreateEntry + p 1 key + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Lifecycle;Z)V + p 2 lifecycle + p 1 key + p 3 intrusive + m (Ljava/util/Map;Lnet/minecraft/class_6880$class_6883;)V method_62687 method_62687 + p 1 key +c net/minecraft/class_2370$class_10105 net/minecraft/registry/SimpleRegistry$TagLookup + m (Lnet/minecraft/class_6862;)Ljava/util/Optional; method_62698 getOptional + p 1 key + m ()Lnet/minecraft/class_2370$class_10105; method_62697 ofUnbound + m ()Ljava/util/stream/Stream; method_62702 stream + m (Ljava/util/Map;)Lnet/minecraft/class_2370$class_10105; method_62699 fromMap + p 0 map + m ()Z method_62701 isBound + m (Ljava/util/function/BiConsumer;)V method_62700 forEach + p 1 consumer +c net/minecraft/class_2370$1 net/minecraft/registry/SimpleRegistry$1 +c net/minecraft/class_2371 net/minecraft/util/collection/DefaultedList + f Ljava/lang/Object; field_11116 initialElement + f Ljava/util/List; field_11115 delegate + m ()Lnet/minecraft/class_2371; method_10211 of + m (I)Lnet/minecraft/class_2371; method_37434 ofSize + p 0 size + m (ILjava/lang/Object;)Ljava/lang/Object; set set + p 2 element + p 1 index + m (Ljava/util/List;Ljava/lang/Object;)V + p 1 delegate + p 2 initialElement + m (ILjava/lang/Object;)Lnet/minecraft/class_2371; method_10213 ofSize + p 0 size + p 1 defaultValue + m (Ljava/lang/Object;[Ljava/lang/Object;)Lnet/minecraft/class_2371; method_10212 copyOf + p 0 defaultValue + p 1 values + m (I)Ljava/lang/Object; remove remove + p 1 index + m (I)Ljava/lang/Object; get get + p 1 index + m (ILjava/lang/Object;)V add add + p 1 index + p 2 element +c net/minecraft/class_983 net/minecraft/client/render/entity/feature/ShoulderParrotFeatureRenderer + f Lnet/minecraft/class_584; field_17154 model + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10055;FF)V method_4185 render + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10055;Lnet/minecraft/class_1453$class_7989;FFZ)V method_62593 render + p 1 matrices + p 2 queue + p 3 light + p 4 state + p 5 parrotVariant + p 6 headYaw + p 7 headPitch + p 8 left + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;)V + p 1 context + p 2 loader +c net/minecraft/class_2372 net/minecraft/block/GrassBlock + f Lcom/mojang/serialization/MapCodec; field_46364 CODEC +c net/minecraft/class_989 net/minecraft/client/render/entity/feature/HeldItemFeatureRenderer + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10426;FF)V method_17162 render + m (Lnet/minecraft/class_10426;Lnet/minecraft/class_10444;Lnet/minecraft/class_1799;Lnet/minecraft/class_1306;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;I)V method_4192 renderItem + p 7 light + p 6 queue + p 1 entityState + p 5 matrices + p 4 arm + p 3 stack + p 2 itemState +c net/minecraft/class_1041 net/minecraft/client/util/Window + f Ljava/lang/String; field_5192 phase + f Z field_52735 minimized + f I field_5184 windowedHeight + f I field_52250 FRAMEBUFFER_WIDTH_SCALE + f I field_5196 framebufferHeight + f I field_5180 scaledWidth + f Lnet/minecraft/class_323; field_5195 monitorTracker + f Z field_5191 fullscreen + f Lorg/slf4j/Logger; field_5178 LOGGER + f I field_5183 x + f Lnet/minecraft/class_11875; field_62448 cursor + f I field_5175 windowedX + f J field_5187 handle + f I field_52251 FRAMEBUFFER_HEIGHT_SCALE + f I field_5179 scaleFactor + f Z field_5186 fullscreenVideoModeDirty + f I field_5194 scaledHeight + f I field_5174 windowedWidth + f Z field_62447 allowCursorChanges + f I field_5182 width + f Ljava/util/Optional; field_5193 fullscreenVideoMode + f I field_5198 y + f Lnet/minecraft/class_3678; field_5176 eventHandler + f Z field_55579 zeroWidthOrHeight + f Lorg/lwjgl/glfw/GLFWErrorCallback; field_5190 errorCallback + f Z field_16517 vsync + f Z field_5177 currentFullscreen + f I field_5197 height + f I field_5185 windowedY + f I field_5181 framebufferWidth + m (Lnet/minecraft/class_11875;)V method_74029 setCursor + p 1 cursor + m (JZ)V method_4494 onWindowFocusChanged + p 1 window + p 3 focused + m ()I method_4486 getScaledWidth + m ()Z method_22093 shouldClose + m (IJ)V method_4501 throwGlError + p 0 error + p 1 description + m ()J method_4490 getHandle + m (I)V method_35642 setFramebufferWidth + p 1 framebufferWidth + m ()Z method_4498 isFullscreen + m (Ljava/util/Optional;)V method_4505 setFullscreenVideoMode + p 1 fullscreenVideoMode + m (Ljava/util/function/BiConsumer;)V method_4492 acceptError + p 0 consumer + m ()I method_4495 getScaleFactor + m ()I method_4499 getX + m ()Z method_61946 isMinimized + m ()V method_4500 toggleFullscreen + m ()V method_4479 updateWindowRegion + m (Ljava/lang/String;)V method_4474 setPhase + p 1 phase + m (JII)V method_4488 onWindowSizeChanged + p 1 window + p 4 height + p 3 width + m ()V method_4475 applyFullscreenVideoMode + m ()V method_4483 updateFramebufferSize + m ()F method_75291 getMinimumLineWidth + m ()Lnet/minecraft/class_313; method_20831 getMonitor + m (Lnet/minecraft/class_3262;Lnet/minecraft/class_8518;)V method_4491 setIcon + p 2 icons + p 1 resourcePack + m ()Ljava/lang/String; method_60793 getGlfwPlatform + m (II)V method_36813 setWindowedSize + p 1 width + p 2 height + m (I)V method_15997 setScaleFactor + p 1 scaleFactor + m ()I method_4480 getWidth + m (Lnet/minecraft/class_3678;Lnet/minecraft/class_323;Lnet/minecraft/class_543;Ljava/lang/String;Ljava/lang/String;)V + p 1 eventHandler + p 5 title + p 4 fullscreenVideoMode + p 3 settings + m ()V method_4513 logOnGlError + m (Ljava/lang/Runnable;)V method_61943 setCloseCallback + p 1 callback + m (IJ)V method_4482 logGlError + p 1 error + p 2 description + m (Ljava/lang/String;)V method_24286 setTitle + p 1 title + m ()I method_22092 getRefreshRate + m (JII)V method_4504 onFramebufferSizeChanged + p 1 window + p 3 width + p 4 height + m ()Ljava/util/Optional; method_4511 getFullscreenVideoMode + m ()I method_4502 getScaledHeight + m (JZ)V method_30132 onCursorEnterChanged + p 3 entered + p 1 window + m (ZLnet/minecraft/class_10219;)V method_4485 updateFullscreen + p 1 vsync + p 2 capturer + m ()I method_4506 getFramebufferHeight + m (Lnet/minecraft/class_10219;)V method_15998 swapBuffers + p 1 capturer + m ()I method_4477 getY + m (Z)V method_74030 setAllowCursorChanges + p 1 allowCursorChanges + m ()I method_4489 getFramebufferWidth + m (Z)V method_21668 setRawMouseMotion + p 1 rawMouseMotion + m ()V method_4481 throwOnGlError + m (JII)V method_4478 onWindowPosChanged + p 4 y + p 1 window + p 3 x + m (I)V method_35643 setFramebufferHeight + p 1 framebufferHeight + m (IZ)I method_4476 calculateScaleFactor + p 2 forceUnicodeFont + p 1 guiScale + m (JZ)V method_61945 onMinimizeChanged + p 1 window + p 3 minimized + m ()Z method_65966 hasZeroWidthOrHeight + m ()I method_4507 getHeight + m (Z)V method_4497 setVsync + p 1 vsync +c net/minecraft/class_1041$class_4716 net/minecraft/client/util/Window$GlErroredException +c net/minecraft/class_988 net/minecraft/client/render/entity/feature/LlamaDecorFeatureRenderer + f Lnet/minecraft/class_578; field_53220 model + f Lnet/minecraft/class_578; field_53221 babyModel + f Lnet/minecraft/class_10197; field_54184 equipmentRenderer + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;Lnet/minecraft/class_10197;)V + p 2 loader + p 3 equipmentRenderer + p 1 context + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_10043;Lnet/minecraft/class_1799;Lnet/minecraft/class_5321;I)V method_64083 render + p 6 light + p 5 assetKey + p 2 queue + p 1 matrices + p 4 stack + p 3 state + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10043;FF)V method_4191 render +c net/minecraft/class_986 net/minecraft/client/render/entity/feature/IronGolemFlowerFeatureRenderer + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10037;FF)V method_4188 render +c net/minecraft/class_2377 net/minecraft/block/HopperBlock + f Ljava/util/Map; field_55767 shapesByDirection + f Ljava/util/function/Function; field_55766 shapeFunction + f Lnet/minecraft/class_2746; field_11126 ENABLED + f Lnet/minecraft/class_2754; field_11129 FACING + f Lcom/mojang/serialization/MapCodec; field_46370 CODEC + m (Lnet/minecraft/class_265;Ljava/util/Map;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66438 method_66438 + p 2 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_10217 updateEnabled + p 2 pos + p 1 world + p 3 state + m (Lnet/minecraft/class_265;)Ljava/util/function/Function; method_66439 createShapeFunction + p 1 shape +c net/minecraft/class_2378 net/minecraft/registry/Registry + c A registry is used to register various in-game components. Almost all parts of the\ngame - from blocks, items, and entity types, to cat types, goat horn instruments,\nand structure pools - are registered in registries. Registry system allows the game\nto enumerate all known types of something, and to assign a unique identifier to each\nof those. Therefore, registering an object in the registry plays a very important\nrole, and failure to register new instances of registerable object usually results\nin a bug or even a crash.\n\n

Terminologies

\n

A registry is an object that holds the mapping between three things:\nthe string ID, the numeric ID, and the registered value. There are many registries\nfor different types of registerable objects, and a registry's type parameter indicates\nthe accepted type. For example, you register your {@link net.minecraft.block.Block} to {@code\nRegistry}. It's important to note that registries themselves are registered\nin a "registry of registries", {@link Registries#ROOT}.\n\n

The string ID, usually just called "ID", is a human-readable\n{@link Identifier} that uniquely identifies the registered value in a registry.\nThis should stay the same between two game versions, and is usually used for disk\nstorage.\n\n

The numeric ID or raw ID is an integer\nassigned automatically by the registry to each registered value. This is not\nguaranteed to stay the same between two game versions, and is usually used for\nnetworking purposes.\n\n

The registered value, often just called "value" in the code,\nis the value added to the registry. The registry's type parameter determines\nthe type of the registered value.\n\n

Each registered value can also be identified with a {@linkplain RegistryKey\nregistry key}. A registry key is a combination of the registry's ID and\nthe registered value's ID. Using a registry key makes the type of the ID's\nassociated value clear, as the type parameter contains the type.\n\n

A {@linkplain RegistryEntry registry entry} is an object\nholding a value that can be registered in a registry. In most cases, the\nvalue is already registered in a registry ("reference entry"), hence the name;\nhowever, it is possible to create a registry entry by direct reference\n("direct entry"). This is useful for data packs, as they can define\none-time use values directly without having to register them every time.\n\n

A {@link RegistryEntryList registry entry list} is a list\nof registry entries. This, is either a direct reference to each item, or\na reference to a tag. A tag is a way to dynamically\ndefine a list of registered values. Anything registered in a registry\ncan be tagged, and each registry holds a list of tags it recognizes.\n\n

Static and dynamic registries

\n

There are two kinds of registries: static and dynamic.\n\n

    \n
  • A static registry is a registry whose values are hard-coded\nin the game and cannot be added or modified through data packs. Most registries\nare static. Since they cannot be modified (without mods), it is a singleton,\nand exists in this class. During the game bootstrap, vanilla objects are\nregistered, after which the registry gets frozen to prohibit further changes.
  • \n\n
  • A dynamic registry is a registry whose values can be\nadded or replaced through data packs. A dynamic registry is bound to a server,\nand multiple registries for the same type of registerable object can exist during\nthe lifetime of the game. When a player joins, the server sends the contents of\nthe dynamic registry manager to the client, but only "network serializable"\nregistries are sent. To access a dynamic registry, first get an instance of the\ndynamic registry manager, then call the {@link DynamicRegistryManager#getOrThrow} method.
  • \n
\n\n

Using Registry

\n

Reading Registry

\n

A registry is also an {@link IndexedIterable}. Therefore, registries can be\niterated using, e.g. {@code for (Block block : Registries.BLOCK)}.\n\n

There are several other methods used for reading the contents of the registry:\n

    \n
  • {@link #getOrThrow(RegistryKey)} or {@link #getOptional(RegistryKey)} for getting the registry entry\nfrom the key.
  • \n
  • {@link #getOptionalValue(Identifier)} or {@link #getOptionalValue(RegistryKey)} for getting the registered\nvalue from the ID or the registry key.
  • \n
  • {@link #getId(Object)} for getting the ID of a registered value.
  • \n
  • {@link #getEntry(int)} for getting the registry entry from the raw ID.
  • \n
  • {@link #getOptional(TagKey)} and {@link #iterateEntries} for getting the contents of a tag,
  • \n
  • {@link #streamTags} for streaming all tags of a registry.
  • \n
\n\n

Registering something to Registry

\n

The steps for registration are different, depending on whether the registry is static\nor dynamic. For dynamic registries, data packs can usually be used to register a new\nvalue or replace one. For static registries, the game's code must be modified.\n\n

Static registries are defined in {@link Registries}, and unlike the dynamic registries, it\ncannot be changed after the game initialization. The game enforces this by "freezing"\nthe registry. Attempting to register a value after freezing causes a crash, such as\n"Registry is already frozen". Modding APIs usually provide a way to bypass this restriction.\n\n

Use {@link #register(Registry, Identifier, Object)} for registering a value to a registry.\n\n

Intrusive holders

\n

For historical reasons, there are two types of reference registry entries.\n(This is different from the "direct" and "reference" registry entry types.)\n\n

    \n
  • Intrusive holders are registry entries tied to a specific\nregisterable object at instantiation time. When instantiating those, it promises\nthat the object is later registered - which, if broken, will result in a crash.\nThis is used for {@link Registries#BLOCK}, {@link Registries#ITEM}, {@link Registries#FLUID},\n{@link Registries#ENTITY_TYPE}, and {@link Registries#GAME_EVENT} registries.
  • \n
  • Standalone holders are registry entries that are not intrusive.\nThere is no restriction on instantiation.
  • \n
\n\n

When a class whose instances are registered as intrusive holders, such as\n{@link net.minecraft.block.Block} or {@link net.minecraft.item.Item}, are instantiated\nwithout registering, the game crashes with "Some intrusive holders were not added to\nregistry" error message. This includes conditional registration.\nFor example, the code below can cause a crash:\n\n

{@code\nItem myItem = new Item(new Item.Settings());\nif (condition) {\n    Registry.register(Registries.ITEM, new Identifier("example", "bad"), myItem);\n}\n}
\n\n

The correct way is to make the instantiation conditional as well:\n\n

{@code\nif (condition) {\n    Item myItem = new Item(new Item.Settings());\n    Registry.register(Registries.ITEM, new Identifier("example", "bad"), myItem);\n}\n}
+ m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_31189 getOptionalValue + c {@return the value that is assigned {@code key}, or an empty optional if there is none} + p 1 key + m (Lnet/minecraft/class_3503$class_6863;)Lnet/minecraft/class_2378$class_10106; method_62683 startTagReload + p 1 tags + m ()Lcom/mojang/serialization/Codec; method_39673 getCodec + c {@return the codec for serializing {@code T}}\n\n@implNote This serializes a value using the ID or (if compressed) the raw ID. + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_5321;Ljava/lang/Object;)Lnet/minecraft/class_6880$class_6883; method_47984 registerReference + p 2 entry + p 1 key + p 0 registry + m (Lnet/minecraft/class_2960;)Lcom/mojang/serialization/DataResult; method_57065 method_57065 + p 1 id + m (Lnet/minecraft/class_2960;)Ljava/util/Optional; method_10223 getEntry + c {@return the reference registry entry for the value that is assigned {@code id}, or an\nempty optional if there is no such value} + p 1 id + m (Lnet/minecraft/class_6862;)Ljava/lang/Iterable; method_40286 iterateEntries + c {@return an iterable of values that are assigned {@code tag}, or an empty iterable\nif the tag is not known to the registry} + p 1 tag + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_6880; method_57064 method_57064 + p 0 entry + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_2960;Ljava/lang/Object;)Lnet/minecraft/class_6880$class_6883; method_47985 registerReference + p 2 entry + p 1 id + p 0 registry + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_2960;Ljava/lang/Object;)Ljava/lang/Object; method_10230 register + c Registers {@code entry} to {@code registry} under {@code id}.\n\n@return the passed {@code entry} + p 1 id + p 0 registry + p 2 entry + m ()Ljava/util/stream/Stream; method_40272 streamTags + m ()Lnet/minecraft/class_2378; method_40276 freeze + m ()Lnet/minecraft/class_2359; method_40295 getIndexedEntries + m (Lnet/minecraft/class_2960;)Z method_10250 containsId + c {@return whether {@code id} is registered in this registry} + p 1 id + m (Lnet/minecraft/class_5321;)Ljava/lang/Object; method_31140 getValueOrThrow + c {@return the value that is assigned {@code key}}\n\n@throws IllegalStateException if there is no value with {@code key} in the registry + p 1 key + m ()Ljava/util/stream/Stream; method_10220 stream + c {@return a stream of all values of this registry} + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_5321;Ljava/lang/Object;)Ljava/lang/Object; method_39197 register + c Registers {@code entry} to {@code registry} under {@code key}.\n\n@return the passed {@code entry} + p 2 entry + p 1 key + p 0 registry + m ()Lcom/mojang/serialization/Codec; method_57059 getReferenceEntryCodec + m (Lnet/minecraft/class_6880$class_6883;)Lcom/mojang/serialization/Lifecycle; method_57060 method_57060 + p 1 entry + m ()Lcom/mojang/serialization/Codec; method_40294 getEntryCodec + c {@return the codec for serializing the registry entry of {@code T}}\n\n@implNote This serializes a registry entry using the ID. + m (Ljava/lang/Object;)Lnet/minecraft/class_6880$class_6883; method_40269 createEntry + p 1 value + m ()Ljava/util/Set; method_42021 getKeys + c {@return the set of all registry keys registered in a registry} + m (Ljava/lang/Object;)Lnet/minecraft/class_6880; method_47983 getEntry + p 1 value + m (Lnet/minecraft/class_2378;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object; method_10226 register + p 2 entry + p 1 id + p 0 registry + m (Lnet/minecraft/class_6880;)Lcom/mojang/serialization/DataResult; method_57061 validateReference + p 1 entry + m ()Ljava/util/Set; method_29722 getEntrySet + c {@return the set containing {@link Map.Entry} of the registry keys and values registered\nin this registry} + m (Lnet/minecraft/class_2960;)Ljava/lang/Object; method_63535 get + c {@return the value that is assigned {@code id}, or {@code null} if there is none} + p 1 id + m (Lnet/minecraft/class_2960;)Ljava/util/Optional; method_17966 getOptionalValue + c {@return the value that is assigned {@code id}, or an empty optional if there is none} + p 1 id + m (Lnet/minecraft/class_5819;)Ljava/util/Optional; method_10240 getRandom + c {@return a random registry entry from this registry, or an empty optional if the\nregistry is empty} + p 1 random + m (I)Ljava/util/Optional; method_40265 getEntry + c {@return the reference registry entry for the value assigned {@code rawId}, or an\nempty optional if there is no such value} + p 1 rawId + m ()Ljava/util/Optional; method_60385 getDefaultEntry + m (Lnet/minecraft/class_5321;)Z method_35842 contains + c {@return whether {@code key} is registered in this registry} + p 1 key + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_2960; method_57062 method_57062 + p 0 entry + m (Ljava/lang/Object;)Ljava/util/Optional; method_29113 getKey + c {@return the registry key of {@code value}, or an empty optional if it is not registered} + p 1 entry + m (Lnet/minecraft/class_5321;)Ljava/lang/Object; method_29107 get + c {@return the value that is assigned {@code key}, or {@code null} if there is none} + p 1 key + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_2960;)Ljava/lang/Object; method_34028 method_34028 + p 1 id + m (Ljava/lang/Object;)Lnet/minecraft/class_2960; method_10221 getId + c {@return the ID assigned to {@code value}, or {@code null} if it is not registered} + p 1 value + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_47448 method_47448 + p 1 value + m ()Ljava/util/Set; method_10235 getIds + c {@return the set of all IDs registered in a registry} + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_57058 getEntryInfo + p 1 key + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/stream/Stream; keys keys + p 1 ops +c net/minecraft/class_2378$class_10106 net/minecraft/registry/Registry$PendingTagLoad + m ()Lnet/minecraft/class_7225$class_7226; method_62695 getLookup + m ()Lnet/minecraft/class_5321; method_62693 getKey + m ()V method_62696 apply + m ()I method_64925 size +c net/minecraft/class_2378$1 net/minecraft/registry/Registry$1 + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_6880; method_46773 method_46773 + p 0 entry + m (I)Lnet/minecraft/class_6880; method_46775 get + m (Lnet/minecraft/class_6880;)I method_46774 getRawId +c net/minecraft/class_1044 net/minecraft/client/texture/AbstractTexture + f Lcom/mojang/blaze3d/textures/GpuTextureView; field_60597 glTextureView + f Lcom/mojang/blaze3d/textures/GpuTexture; field_56974 glTexture + f Lnet/minecraft/class_12137; field_63613 sampler + m ()Lnet/minecraft/class_12137; method_75484 getSampler + m ()Lcom/mojang/blaze3d/textures/GpuTexture; method_68004 getGlTexture + m ()Lcom/mojang/blaze3d/textures/GpuTextureView; method_71659 getGlTextureView +c net/minecraft/class_2379 net/minecraft/util/math/EulerAngle + f F comp_3776 pitch + f Lcom/mojang/serialization/Codec; field_57040 CODEC + f F comp_3778 roll + f F comp_3777 yaw + f Lnet/minecraft/class_9139; field_48452 PACKET_CODEC + m (Lnet/minecraft/class_2379;)Ljava/util/List; method_68074 method_68074 + p 0 angle + m ()F comp_3776 pitch + m (Ljava/util/List;)Lnet/minecraft/class_2379; method_68075 method_68075 + p 0 angles + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_68073 method_68073 + p 0 list + m ()F comp_3778 roll + m ()F comp_3777 yaw + m (FFF)V + p 1 pitch + p 2 yaw + p 3 roll +c net/minecraft/class_2379$1 net/minecraft/util/math/EulerAngle$1 + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_2379; method_56161 decode + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_2379;)V method_56162 encode +c net/minecraft/class_1043 net/minecraft/client/texture/NativeImageBackedTexture + f Lnet/minecraft/class_1011; field_5200 image + f Lorg/slf4j/Logger; field_25794 LOGGER + m (Ljava/util/function/Supplier;Lnet/minecraft/class_1011;)V + p 2 image + p 1 nameSupplier + m (Ljava/util/function/Supplier;)V method_71142 createTexture + p 1 nameSupplier + m (Ljava/util/function/Supplier;IIZ)V + p 3 height + p 4 useStb + p 1 nameSupplier + p 2 width + m ()Lnet/minecraft/class_1011; method_4525 getImage + m (Ljava/lang/String;IIZ)V + p 2 width + p 1 name + p 4 useStb + p 3 height + m ()V method_4524 upload + m (Lnet/minecraft/class_1011;)V method_4526 setImage + p 1 image + m (Ljava/lang/String;)V method_71141 createTexture + p 1 name +c net/minecraft/class_1049 net/minecraft/client/texture/ResourceTexture + m (Lnet/minecraft/class_2960;)V + p 1 location +c net/minecraft/class_2373 net/minecraft/block/TranslucentBlock + f Lcom/mojang/serialization/MapCodec; field_46366 CODEC +c net/minecraft/class_2374 net/minecraft/util/math/Position + m ()D method_10216 getX + c Returns the X coordinate. + m ()D method_10215 getZ + c Returns the Z coordinate. + m ()D method_10214 getY + c Returns the Y coordinate. +c net/minecraft/class_980 net/minecraft/client/render/entity/feature/DrownedOverlayFeatureRenderer + f Lnet/minecraft/class_2960; field_4854 SKIN + f Lnet/minecraft/class_564; field_4855 model + f Lnet/minecraft/class_564; field_53214 babyModel + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;)V + p 1 context + p 2 loader + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10086;FF)V method_4182 render +c net/minecraft/class_1047 net/minecraft/client/texture/MissingSprite + f I field_32950 WIDTH + f Lnet/minecraft/class_2960; field_5219 MISSINGNO + f I field_32951 HEIGHT + f Ljava/lang/String; field_32952 MISSINGNO_ID + m (II)Lnet/minecraft/class_1011; method_45806 createImage + p 0 width + p 1 height + m ()Lnet/minecraft/class_2960; method_4539 getMissingSpriteId + m ()Lnet/minecraft/class_7764; method_45805 createSpriteContents + m ()Lnet/minecraft/class_1011; method_65855 createImage +c net/minecraft/class_979 net/minecraft/client/render/entity/feature/ElytraFeatureRenderer + f Lnet/minecraft/class_563; field_53215 babyModel + f Lnet/minecraft/class_10197; field_54185 equipmentRenderer + f Lnet/minecraft/class_563; field_4852 model + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10034;FF)V method_17161 render + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;Lnet/minecraft/class_10197;)V + p 1 context + p 2 loader + p 3 equipmentRenderer + m (Lnet/minecraft/class_10034;)Lnet/minecraft/class_2960; method_64084 getTexture + p 0 state +c net/minecraft/class_996 net/minecraft/client/render/entity/feature/SnowGolemPumpkinFeatureRenderer + f Lnet/minecraft/class_776; field_38905 blockRenderManager + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_776;)V + p 2 blockRenderManager + p 1 context + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10429;FF)V method_4201 render +c net/minecraft/class_2380 net/minecraft/block/HayBlock + f Lcom/mojang/serialization/MapCodec; field_46368 CODEC +c net/minecraft/class_2381 net/minecraft/block/MushroomBlock + f Lnet/minecraft/class_2746; field_11169 DOWN + f Ljava/util/Map; field_11168 FACING_PROPERTIES + f Lcom/mojang/serialization/MapCodec; field_46371 CODEC + f Lnet/minecraft/class_2746; field_11166 UP + f Lnet/minecraft/class_2746; field_11167 WEST + f Lnet/minecraft/class_2746; field_11171 NORTH + f Lnet/minecraft/class_2746; field_11172 EAST + f Lnet/minecraft/class_2746; field_11170 SOUTH +c net/minecraft/class_2382 net/minecraft/util/math/Vec3i + c A vector composed of 3 integers.\n\n

This class is very often used to hold the coordinates. To hold a block position\nspecifically, use {@link BlockPos} instead, which extends {@code Vec3i}. To hold\npositions for entities and other non-voxels, consider using {@link Vec3d} that\nholds values using {@code double} instead.\n\n

{@code Vec3i} is read-only, but subclasses like {@link BlockPos.Mutable}\nmay be mutable. Make sure to sanitize inputs of {@code Vec3i} if needed,\nsuch as calling {@link BlockPos#toImmutable()} or making new copies.\n\n@see org.joml.Vector3f\n@see Vec3d\n@see BlockPos + f I field_11174 y + f Lcom/mojang/serialization/Codec; field_25123 CODEC + f I field_11175 x + f Lnet/minecraft/class_2382; field_11176 ZERO + f I field_11173 z + f Lnet/minecraft/class_9139; field_56131 PACKET_CODEC + m ()Lnet/minecraft/class_2382; method_30931 up + c {@return a vector which is offset by {@code 1} in the upward direction} + m (Lnet/minecraft/class_2382;)I method_10265 compareTo + m (Lnet/minecraft/class_2350$class_2351;)I method_30558 getComponentAlongAxis + c {@return the component on the {@code axis} axis} + p 1 axis + m (I)Lnet/minecraft/class_2382; method_35860 north + c {@return a vector which is offset by {@code distance} in the northward direction}\n\n@implNote This can return the same vector if {@code distance} equals {@code 0}. + p 1 distance + m (Lnet/minecraft/class_2382;)I method_19455 getManhattanDistance + c {@return the Manhattan distance between here and {@code vec}}\n\n

Manhattan distance, also called taxicab distance or snake distance, is the\ndistance measured as the sum of the absolute differences of their coordinates.\nFor example, the Manhattan distance between {@code (0, 0, 0)} and {@code (1, 1, 1)}\nis {@code 3}. + p 1 vec + m (I)Lnet/minecraft/class_2382; method_35856 west + c {@return a vector which is offset by {@code distance} in the westward direction}\n\n@implNote This can return the same vector if {@code distance} equals {@code 0}. + p 1 distance + m ()Ljava/lang/String; method_23854 toShortString + c {@return the coordinates joined with a colon and a space} + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_2382; method_35851 offset + c {@return a vector which is offset by {@code 1} in {@code direction} direction} + p 1 direction + m (DDD)D method_10268 getSquaredDistanceFromCenter + c {@return the squared distance between the center of this voxel and {@code (x, y, z)}}\nThis is equivalent to {@link Vec3d#ofCenter(Vec3i)\nVec3d.ofCenter(this).squaredDistanceTo(x, y, z)}. + p 5 z + p 3 y + p 1 x + m (III)Lnet/minecraft/class_2382; method_34592 add + c {@return another Vec3i whose coordinates have the parameter x, y, and z\nadded to the coordinates of this vector}\n\n

This method always returns an immutable object. + p 3 z + p 2 y + p 1 x + m ()Lnet/minecraft/class_2382; method_35855 east + c {@return a vector which is offset by {@code 1} in the eastward direction} + m ()Lnet/minecraft/class_2382; method_35859 south + c {@return a vector which is offset by {@code 1} in the southward direction} + m ()Lorg/joml/Vector3i; method_75505 asVector3i + m (I)Lnet/minecraft/class_2382; method_30930 up + c {@return a vector which is offset by {@code distance} in the upward direction}\n\n@implNote This can return the same vector if {@code distance} equals {@code 0}. + p 1 distance + m ()Lnet/minecraft/class_2382; method_23228 down + c {@return a vector which is offset by {@code 1} in the downward direction} + m ()I method_10263 getX + m (Lnet/minecraft/class_2382;)Ljava/util/stream/IntStream; method_29124 method_29124 + p 0 vec + m (I)Lnet/minecraft/class_2382; method_23227 down + c {@return a vector which is offset by {@code distance} in the downward direction}\n\n@implNote This can return the same vector if {@code distance} equals {@code 0}. + p 1 distance + m (I)Lnet/minecraft/class_2382; method_35854 east + c {@return a vector which is offset by {@code distance} in the eastward direction}\n\n@implNote This can return the same vector if {@code distance} equals {@code 0}. + p 1 distance + m (I)Lnet/minecraft/class_2382; method_20787 setX + p 1 x + m (I)Lnet/minecraft/class_2382; method_35862 multiply + c {@return a vector with all components multiplied by {@code scale}}\n\n@implNote This can return the same vector if {@code scale} equals {@code 1}. + p 1 scale + m (I)Lnet/minecraft/class_2382; method_35858 south + c {@return a vector which is offset by {@code distance} in the southward direction}\n\n@implNote This can return the same vector if {@code distance} equals {@code 0}. + p 1 distance + m (III)V + p 1 x + p 2 y + p 3 z + m (ILnet/minecraft/class_2382;)Lcom/mojang/serialization/DataResult; method_48305 method_48305 + p 1 vec + m (III)Lnet/minecraft/class_2382; method_75504 multiply + p 3 scaleZ + p 2 scaleY + p 1 scaleX + m (Lnet/minecraft/class_2374;D)Z method_19769 isWithinDistance + c {@return whether the distance between here and {@code pos} is less than {@code distance}} + p 2 distance + p 1 pos + m ()I method_10264 getY + m (I)Lnet/minecraft/class_2382; method_10099 setY + p 1 y + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_2382; method_35852 subtract + c {@return another Vec3i whose coordinates have the coordinates of {@code vec}\nsubtracted from the coordinates of this vector}\n\n

This method always returns an immutable object. + p 1 vec + m ()I method_10260 getZ + m (Lnet/minecraft/class_2382;)D method_10262 getSquaredDistance + c {@return the squared distance between here (center) and {@code vec}}\n\n@see #getSquaredDistance(double, double, double)\n@see #getSquaredDistanceFromCenter(double, double, double) + p 1 vec + m (Ljava/lang/Object;)I compareTo compareTo + p 1 vec + m ()Lnet/minecraft/class_2382; method_35861 north + c {@return a vector which is offset by {@code 1} in the northward direction} + m ()Lnet/minecraft/class_2382; method_35857 west + c {@return a vector which is offset by {@code 1} in the westward direction} + m (Lnet/minecraft/class_2350;I)Lnet/minecraft/class_2382; method_23226 offset + c {@return a vector which is offset by {@code distance} in {@code direction} direction}\n\n@implNote This can return the same vector if {@code distance} equals {@code 0}. + p 1 direction + p 2 distance + m (I)Lnet/minecraft/class_2382; method_20788 setZ + p 1 z + m ([I)Lnet/minecraft/class_2382; method_29126 method_29126 + p 0 coordinates + m (Lnet/minecraft/class_2374;)D method_19770 getSquaredDistance + c {@return the squared distance between here and {@code pos}} + p 1 pos + m (Lnet/minecraft/class_2350$class_2351;I)Lnet/minecraft/class_2382; method_35850 offset + c {@return a vector which is offset by {@code distance} on {@code axis} axis}\n\n@implNote This can return the same vector if {@code distance} equals {@code 0}. + p 1 axis + p 2 distance + m (Ljava/util/stream/IntStream;)Lcom/mojang/serialization/DataResult; method_29125 method_29125 + p 0 stream + m (I)Lcom/mojang/serialization/Codec; method_39677 createOffsetCodec + p 0 maxAbsValue + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_2382; method_10259 crossProduct + p 1 vec + m (DDD)D method_40081 getSquaredDistance + c {@return the squared distance between here and {@code (x, y, z)}}\nThis is equivalent to {@code Vec3d.of(this).squaredDistanceTo(x, y, z)}. + p 5 z + p 3 y + p 1 x + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_2382;)I method_65076 getChebyshevDistance + c {@return the Chebyshev distance between here and {@code vec}}\n\n

Chebyshev distance, also called chessboard distance, is the distance measured\nas the greatest of the differences of any of their coordinates.\nFor example, the Chebyshev distance between {@code (0, 0, 0)} and {@code (3, 5, 1)}\nis {@code 5}. + p 1 vec + m (Lnet/minecraft/class_2382;D)Z method_19771 isWithinDistance + c {@return whether the distance between here and {@code vec} is less than {@code distance}} + p 1 vec + p 2 distance + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_2382; method_35853 add + c {@return another Vec3i whose coordinates have the coordinates of {@code vec}\nadded to the coordinates of this vector}\n\n

This method always returns an immutable object. + p 1 vec +c net/minecraft/class_994 net/minecraft/client/render/entity/feature/SheepWoolFeatureRenderer + f Lnet/minecraft/class_583; field_53225 babyWoolModel + f Lnet/minecraft/class_583; field_53224 woolModel + f Lnet/minecraft/class_2960; field_4892 TEXTURE + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10063;FF)V method_4198 render + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;)V + p 2 loader + p 1 context +c net/minecraft/class_993 net/minecraft/client/render/entity/feature/PhantomEyesFeatureRenderer + f Lnet/minecraft/class_1921; field_4890 SKIN +c net/minecraft/class_2383 net/minecraft/block/HorizontalFacingBlock + f Lnet/minecraft/class_2754; field_11177 FACING +c net/minecraft/class_998 net/minecraft/client/render/entity/feature/TridentRiptideFeatureRenderer + f Lnet/minecraft/class_10169; field_53227 model + f Lnet/minecraft/class_2960; field_4898 TEXTURE + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;)V + p 2 entityModels + p 1 context + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10055;FF)V method_4203 render +c net/minecraft/class_997 net/minecraft/client/render/entity/feature/SlimeOverlayFeatureRenderer + f Lnet/minecraft/class_609; field_4895 model + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10067;FF)V method_23200 render + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;)V + p 1 context + p 2 loader +c net/minecraft/class_2388 net/minecraft/particle/BlockStateParticleEffect + f Lcom/mojang/serialization/Codec; field_51463 BLOCK_STATE_CODEC + f Lnet/minecraft/class_2396; field_11183 type + f Lnet/minecraft/class_2680; field_11182 blockState + m (Lnet/minecraft/class_2396;Lnet/minecraft/class_2680;)V + p 1 type + p 2 blockState + m ()Lnet/minecraft/class_2680; method_10278 getBlockState + m (Lnet/minecraft/class_2396;)Lnet/minecraft/class_9139; method_56170 createPacketCodec + p 0 type + m (Lnet/minecraft/class_2388;)Lnet/minecraft/class_2680; method_56168 method_56168 + p 0 effect + m (Lnet/minecraft/class_2396;)Lcom/mojang/serialization/MapCodec; method_29128 createCodec + p 0 type + m (Lnet/minecraft/class_2396;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2388; method_56169 method_56169 + p 1 state + m (Lnet/minecraft/class_2388;)Lnet/minecraft/class_2680; method_29127 method_29127 + p 0 effect + m (Lnet/minecraft/class_2396;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2388; method_29129 method_29129 + p 1 state +c net/minecraft/class_1055 net/minecraft/client/texture/TextureStitcher + f I field_64242 padding + f I field_5242 width + f I field_5240 maxWidth + f I field_5238 maxHeight + f Ljava/util/List; field_5239 slots + f Ljava/util/List; field_5237 holders + f Ljava/util/Comparator; field_18030 COMPARATOR + f I field_5241 height + f I field_5243 mipLevel + m ()I method_4554 getWidth + m (Lnet/minecraft/class_1055$class_1056;)Z method_4552 growAndFit + p 1 holder + m (Lnet/minecraft/class_1055$class_1056;)Ljava/lang/Integer; method_18339 method_18339 + p 0 holder + m (Lnet/minecraft/class_1055$class_1056;)Z method_4550 fit + p 1 holder + m (II)I method_4551 applyMipLevel + p 0 size + p 1 mipLevel + m (Lnet/minecraft/class_1055$class_4726;)V method_4549 getStitchedSprites + p 1 consumer + m (Lnet/minecraft/class_1055$class_1056;)Lnet/minecraft/class_1055$class_7769; method_21686 method_21686 + p 0 holder + m ()I method_4555 getHeight + m (Lnet/minecraft/class_1055$class_7769;)V method_4553 add + p 1 info + m ()V method_4557 stitch + m (Lnet/minecraft/class_1055$class_1056;)Ljava/lang/Integer; method_18338 method_18338 + p 0 holder + m (IIII)V + p 2 maxHeight + p 3 mipLevel + p 1 maxWidth + p 4 anisotropy + m (Lnet/minecraft/class_1055$class_1056;)Lnet/minecraft/class_2960; method_18337 method_18337 + p 0 holder +c net/minecraft/class_1055$class_1056 net/minecraft/client/texture/TextureStitcher$Holder + f Lnet/minecraft/class_1055$class_7769; comp_1046 sprite + f I comp_1048 height + f I comp_1047 width + m ()Lnet/minecraft/class_1055$class_7769; comp_1046 sprite + m ()I comp_1047 width + m ()I comp_1048 height + m (Lnet/minecraft/class_1055$class_7769;II)V + p 1 sprite + p 2 width + p 3 height +c net/minecraft/class_1055$class_1057 net/minecraft/client/texture/TextureStitcher$Slot + f Lnet/minecraft/class_1055$class_1056; field_5254 texture + f I field_5250 height + f I field_5251 width + f I field_5252 y + f I field_5253 x + f Ljava/util/List; field_5255 subSlots + m ()I method_4567 getY + m ()I method_4569 getX + m (Lnet/minecraft/class_1055$class_4726;I)V method_4568 addAllFilledSlots + p 1 consumer + p 2 padding + m (Lnet/minecraft/class_1055$class_1056;)Z method_4566 fit + p 1 holder + m (IIII)V + p 1 x + p 3 width + p 2 y + p 4 height +c net/minecraft/class_1055$class_4726 net/minecraft/client/texture/TextureStitcher$SpriteConsumer + m (Lnet/minecraft/class_1055$class_7769;III)V load load + p 4 padding + p 1 info + p 2 x + p 3 y +c net/minecraft/class_1055$class_7769 net/minecraft/client/texture/TextureStitcher$Stitchable + m ()Lnet/minecraft/class_2960; method_45816 getId + m ()I method_45815 getHeight + m ()I method_45807 getWidth +c net/minecraft/class_2389 net/minecraft/block/PaneBlock + f Lcom/mojang/serialization/MapCodec; field_46375 CODEC + m (Lnet/minecraft/class_2680;Z)Z method_10281 connectsTo + p 2 sideSolidFullSquare + p 1 state +c net/minecraft/class_1054 net/minecraft/client/texture/TextureStitcherCannotFitException + f Ljava/util/Collection; field_20311 sprites + m (Lnet/minecraft/class_1055$class_7769;Ljava/util/Collection;)V + p 2 sprites + p 1 sprite + m ()Ljava/util/Collection; method_21687 getSprites +c net/minecraft/class_2384 net/minecraft/block/InfestedBlock + f Ljava/util/Map; field_11179 REGULAR_TO_INFESTED_BLOCK + f Lcom/mojang/serialization/MapCodec; field_46373 CODEC + f Ljava/util/Map; field_33565 INFESTED_TO_REGULAR_STATE + f Ljava/util/Map; field_33564 REGULAR_TO_INFESTED_STATE + f Lnet/minecraft/class_2248; field_11178 regularBlock + m (Ljava/util/function/Supplier;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_36364 method_36364 + p 1 infestedState + m ()Lnet/minecraft/class_2248; method_10271 getRegularBlock + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_36366 fromRegularState + p 0 regularState + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4970$class_2251;)V + c Creates an infested block + p 1 regularBlock + c the block this infested block should mimic + p 2 settings + c block settings + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_24797 spawnSilverfish + p 2 pos + p 1 world + m (Ljava/util/Map;Lnet/minecraft/class_2680;Ljava/util/function/Supplier;)Lnet/minecraft/class_2680; method_36363 copyProperties + p 2 toStateSupplier + p 0 stateMap + p 1 fromState + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54022 method_54022 + p 0 instance + m (Lnet/minecraft/class_2680;)Z method_10269 isInfestable + p 0 block + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_10270 toRegularState + p 1 infestedState +c net/minecraft/class_2385 net/minecraft/registry/MutableRegistry + c A registry that allows adding or modifying values.\nNote that in vanilla, all registries are instances of this.\n\n@see Registry + m ()Lnet/minecraft/class_7871; method_46769 createMutableRegistryLookup + m ()Z method_35863 isEmpty + c {@return whether the registry is empty} + m (Lnet/minecraft/class_5321;Ljava/lang/Object;Lnet/minecraft/class_9248;)Lnet/minecraft/class_6880$class_6883; method_10272 add + p 3 info + p 2 value + p 1 key + m (Lnet/minecraft/class_6862;Ljava/util/List;)V method_62681 setEntries + p 2 entries + p 1 tag +c net/minecraft/class_991 net/minecraft/client/render/entity/feature/MooshroomMushroomFeatureRenderer + f Lnet/minecraft/class_776; field_38902 blockRenderManager + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_776;)V + p 1 context + p 2 blockRenderManager + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10047;FF)V method_4195 render + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IZILnet/minecraft/class_2680;ILnet/minecraft/class_1087;)V method_37314 renderMushroom + p 8 mushroomModel + p 7 overlay + p 6 mushroom + p 5 outlineColor + p 4 renderAsModel + p 3 light + p 2 queue + p 1 matrices +c net/minecraft/class_1059 net/minecraft/client/texture/SpriteAtlasTexture + f Ljava/util/List; field_64243 animators + f Lnet/minecraft/class_2960; field_5275 BLOCK_ATLAS_TEXTURE + f Lnet/minecraft/class_2960; field_64467 ITEMS_ATLAS_TEXTURE + f Lorg/slf4j/Logger; field_5278 LOGGER + f Lnet/minecraft/class_1058; field_46207 missingSprite + f I field_64244 mipLevel + f Ljava/util/Map; field_5280 sprites + f I field_43114 height + f [Lcom/mojang/blaze3d/textures/GpuTextureView; field_64246 mipTextures + f Lnet/minecraft/class_2960; field_17898 PARTICLE_ATLAS_TEXTURE + f I field_17899 maxTextureSize + f Lnet/minecraft/class_2960; field_21749 id + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_64247 uniformBuffer + f I field_64245 numMipLevels + f Ljava/util/List; field_5277 spritesToLoad + f I field_43113 width + m (III)V method_72240 createTexture + p 1 width + p 2 height + p 3 mipLevel + m ()V method_4601 clear + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1058; method_4608 getSprite + p 1 id + m ()I method_49714 getHeight + m (Ljava/nio/file/Path;Ljava/lang/String;Ljava/util/Map;)V method_45849 dumpAtlasInfos + p 2 sprites + p 0 path + p 1 id + m ()Lnet/minecraft/class_2960; method_24106 getId + m ()I method_49713 getWidth + m (I)I method_68168 method_68168 + p 0 color + m ()I method_45850 getMaxTextureSize + m (Lnet/minecraft/class_1058;)Z method_76313 method_76313 + p 0 sprite + m (Lnet/minecraft/class_7766$class_7767;)V method_45848 create + p 1 stitchResult + m ()V method_76669 uploadAnimations + m ()V method_4612 tickAnimatedSprites + m (Lnet/minecraft/class_2960;)V + p 1 id + m ()Lnet/minecraft/class_1058; method_73023 getMissingSprite + m ()V method_76314 upload +c net/minecraft/class_990 net/minecraft/client/render/entity/feature/PandaHeldItemFeatureRenderer + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10050;FF)V method_4194 render +c net/minecraft/class_1058 net/minecraft/client/texture/Sprite + f F field_5267 maxV + f F field_5269 maxU + f I field_64248 padding + f I field_5256 y + f I field_5258 x + f F field_5270 minU + f F field_5268 minV + f Lnet/minecraft/class_2960; field_40552 atlasId + f Lnet/minecraft/class_7764; field_40553 contents + m ()I method_35807 getY + m ()Lnet/minecraft/class_2960; method_45852 getAtlasId + m (Ljava/nio/ByteBuffer;IIIII)V method_76320 putSpriteInfo + p 1 buffer + p 2 offset + p 5 height + p 6 stride + p 3 maxLevel + p 4 width + m ()F method_4594 getMinU + m (Lcom/mojang/blaze3d/buffers/GpuBufferSlice;I)Lnet/minecraft/class_7764$class_12298; method_76319 createAnimator + p 1 bufferSlice + p 2 animationInfoSize + m (Lcom/mojang/blaze3d/textures/GpuTexture;I)V method_4584 upload + p 1 texture + p 2 mipmap + m (Lnet/minecraft/class_4588;)Lnet/minecraft/class_4588; method_24108 getTextureSpecificVertexConsumer + p 1 consumer + m (F)F method_4570 getFrameV + p 1 frame + m (F)F method_4580 getFrameU + p 1 frame + m ()I method_35806 getX + m ()F method_4575 getMaxV + m ()Lnet/minecraft/class_7764; method_45851 getContents + m ()F method_4577 getMaxU + m ()Z method_76321 isAnimated + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_7764;IIIII)V + p 3 atlasWidth + p 4 atlasHeight + p 5 x + p 6 y + p 7 padding + p 1 atlasId + p 2 contents + m ()F method_4593 getMinV +c net/minecraft/class_2386 net/minecraft/block/IceBlock + f Lcom/mojang/serialization/MapCodec; field_46372 CODEC + m ()Lnet/minecraft/class_2680; method_51170 getMeltedState + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_10275 melt + p 3 pos + p 1 state + p 2 world +c net/minecraft/class_2387 net/minecraft/block/JukeboxBlock + f Lnet/minecraft/class_2746; field_11180 HAS_RECORD + f Lcom/mojang/serialization/MapCodec; field_46377 CODEC +c net/minecraft/class_8575 net/minecraft/datafixer/fix/LegacyDragonFightFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52228 method_52228 + p 0 levelData + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56973 updateExitPortalLocation + p 0 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52227 method_52227 + p 0 typed +c net/minecraft/class_7244 net/minecraft/entity/LargeEntitySpawnHelper + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_7244$class_7502;)Z method_42121 findSpawnPos + p 1 verticalRange + p 2 pos + p 0 world + p 3 requirements + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_3730;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;IIILnet/minecraft/class_7244$class_7502;Z)Ljava/util/Optional; method_42122 trySpawnAt + p 7 requirements + p 8 requireEmptySpace + p 0 entityType + p 1 reason + p 2 world + p 3 pos + p 4 tries + p 5 horizontalRange + p 6 verticalRange +c net/minecraft/class_7244$class_7502 net/minecraft/entity/LargeEntitySpawnHelper$Requirements + f Lnet/minecraft/class_7244$class_7502; field_39400 IRON_GOLEM + f Lnet/minecraft/class_7244$class_7502; field_39401 WARDEN + f Lnet/minecraft/class_7244$class_7502; field_54558 CREAKING + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_64603 method_64603 + p 4 aboveState + p 3 abovePos + p 2 state + p 1 pos + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_44182 method_44182 + p 4 aboveState + p 3 abovePos + p 2 state + p 1 pos + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_44183 method_44183 + p 4 aboveState + p 3 abovePos + p 2 state + p 1 pos + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z canSpawnOn canSpawnOn + p 2 pos + p 1 world + p 4 abovePos + p 3 state + p 5 aboveState +c net/minecraft/class_7245 net/minecraft/datafixer/schema/Schema3081 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_8573 net/minecraft/client/gui/screen/world/WorldIcon + f Lnet/minecraft/class_1060; field_44936 textureManager + f Z field_44939 closed + f Lnet/minecraft/class_2960; field_44937 id + f Lnet/minecraft/class_1043; field_44938 texture + f I field_44935 ICON_HEIGHT + f I field_44934 ICON_WIDTH + f Lnet/minecraft/class_2960; field_44933 UNKNOWN_SERVER_ID + m ()Z method_73412 isClosed + m ()V method_52198 destroy + m (Lnet/minecraft/class_1060;Lnet/minecraft/class_2960;)V + p 2 id + p 1 textureManager + m (Lnet/minecraft/class_1060;Ljava/lang/String;)Lnet/minecraft/class_8573; method_52202 forServer + p 0 textureManager + p 1 serverAddress + m ()V method_52203 assertOpen + m (Lnet/minecraft/class_1011;)V method_52199 load + p 1 image + m ()Lnet/minecraft/class_2960; method_52201 getTextureId + m (Lnet/minecraft/class_1060;Ljava/lang/String;)Lnet/minecraft/class_8573; method_52200 forWorld + p 0 textureManager + p 1 worldName +c net/minecraft/class_7243 net/minecraft/util/dynamic/CodecHolder + f Lcom/mojang/serialization/MapCodec; comp_640 codec + m (Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_7243; method_42116 of + p 0 mapCodec + m ()Lcom/mojang/serialization/MapCodec; comp_640 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec +c net/minecraft/class_7240 net/minecraft/server/command/WardenSpawnTrackerCommand + m (Lcom/mojang/brigadier/context/CommandContext;)I method_42105 method_42105 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_42103 clearTracker + p 0 source + p 1 players + m (Lnet/minecraft/class_2168;Ljava/util/Collection;I)I method_42104 setWarningLevel + p 0 source + p 2 warningCount + p 1 players + m (Lcom/mojang/brigadier/context/CommandContext;)I method_42101 method_42101 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_42100 register + p 0 dispatcher + m (ILnet/minecraft/class_7262;)V method_45156 method_45156 + p 1 warningManager +c net/minecraft/class_8572 net/minecraft/entity/damage/FallLocation + f Ljava/lang/String; comp_1539 id + f Lnet/minecraft/class_8572; field_44930 WATER + f Lnet/minecraft/class_8572; field_44929 OTHER_CLIMBABLE + f Lnet/minecraft/class_8572; field_44928 SCAFFOLDING + f Lnet/minecraft/class_8572; field_44927 TWISTING_VINES + f Lnet/minecraft/class_8572; field_44926 WEEPING_VINES + f Lnet/minecraft/class_8572; field_44925 VINES + f Lnet/minecraft/class_8572; field_44924 LADDER + f Lnet/minecraft/class_8572; field_44923 GENERIC + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_8572; method_52195 fromEntity + p 0 entity + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_8572; method_52196 fromBlockState + p 0 state + m ()Ljava/lang/String; method_52194 getDeathMessageKey + m ()Ljava/lang/String; comp_1539 id + m (Ljava/lang/String;)V + p 1 id +c net/minecraft/class_8579 net/minecraft/util/path/SymlinkValidationException + f Ljava/util/List; field_44954 symlinks + f Ljava/nio/file/Path; field_44953 path + m (Ljava/nio/file/Path;Ljava/util/List;)Ljava/lang/String; method_52241 getMessage + p 0 path + p 1 symlinks + m (Lnet/minecraft/class_8581;)Ljava/lang/String; method_52240 method_52240 + p 0 symlink + m (Ljava/nio/file/Path;Ljava/util/List;)V + p 1 path + p 2 symlinks +c net/minecraft/class_7248 net/minecraft/entity/RideableInventory + m (Lnet/minecraft/class_1657;)V method_6722 openInventory + p 1 player +c net/minecraft/class_7249 net/minecraft/entity/ai/brain/task/DigTask + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;)Z method_42151 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)V method_42153 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)V method_42154 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)Z method_42152 shouldKeepRunning + m (I)V + p 1 duration +c net/minecraft/class_7246 net/minecraft/datafixer/schema/Schema3082 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_42125 method_42125 + p 1 string + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_8577 net/minecraft/client/gui/widget/ScrollableTextWidget + f Lnet/minecraft/class_327; field_44947 textRenderer + f Lnet/minecraft/class_7940; field_44948 wrapped + m (IIIILnet/minecraft/class_2561;Lnet/minecraft/class_327;)V + p 6 textRenderer + p 1 x + p 5 message + p 4 height + p 3 width + p 2 y + m ()Z method_53546 textOverflows + m ()V method_73390 updateHeight +c net/minecraft/class_7255 net/minecraft/entity/ai/brain/task/RoarTask + f I field_39276 ANGER_INCREASE + f I field_38131 SOUND_DELAY + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)V method_42191 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)V method_42192 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)V method_42189 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)Z method_42190 shouldKeepRunning +c net/minecraft/class_7256 net/minecraft/entity/ai/brain/task/FindRoarTargetTask + m (Ljava/util/function/Function;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47256 method_47256 + p 1 context + m (Ljava/util/function/Function;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47258 method_47258 + p 1 roarTarget + p 2 attackTarget + p 3 cantReachWalkTargetSince + m (Ljava/util/function/Function;)Lnet/minecraft/class_7893; method_47255 create + p 0 targetFinder + m (Ljava/util/function/Function;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)Z method_47257 method_47257 + p 5 time + p 4 entity + p 3 world +c net/minecraft/class_7253 net/minecraft/entity/mob/Angriness + f I field_38124 threshold + f [Lnet/minecraft/class_7253; field_38123 VALUES + f Lnet/minecraft/class_3414; field_38125 sound + f Lnet/minecraft/class_3414; field_38732 listeningSound + f Lnet/minecraft/class_7253; field_38121 AGITATED + f Lnet/minecraft/class_7253; field_38122 ANGRY + f Lnet/minecraft/class_7253; field_38120 CALM + m (Lnet/minecraft/class_7253;Lnet/minecraft/class_7253;)I method_42172 method_42172 + p 1 b + p 0 a + m ()Lnet/minecraft/class_3414; method_43103 getListeningSound + m ()I method_42170 getThreshold + m ([Lnet/minecraft/class_7253;)V method_42173 method_42173 + p 0 values + m (I)Lnet/minecraft/class_7253; method_42171 getForAnger + p 0 anger + m ()Lnet/minecraft/class_3414; method_42174 getSound + m ()Z method_43691 isAngry + m (Ljava/lang/String;IILnet/minecraft/class_3414;Lnet/minecraft/class_3414;)V + p 4 sound + p 5 listeningSound + p 3 threshold +c net/minecraft/class_8585 net/minecraft/unused/packageinfo/PackageInfo8585 +c net/minecraft/class_7254 net/minecraft/entity/ai/WardenAngerManager + f I field_38128 MAX_ANGER + f Lnet/minecraft/class_7254$class_7379; field_39115 suspectComparator + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_38735 suspectUuidsToAngerLevel + f Lcom/mojang/serialization/Codec; field_38737 SUSPECT_CODEC + f I field_39304 primeAnger + f Ljava/util/ArrayList; field_38734 suspects + f Ljava/util/function/Predicate; field_39114 suspectPredicate + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_38130 suspectsToAngerLevel + f I field_38736 updateTimer + f I field_38129 ANGER_DECREASE_PER_TICK + m (Lnet/minecraft/class_1297;)Z method_42188 method_42188 + p 0 suspect + m (Lnet/minecraft/class_1297;)V method_42178 removeSuspect + p 1 entity + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)Lcom/mojang/datafixers/util/Pair; method_43106 method_43106 + p 0 suspect + m (Ljava/util/function/Predicate;)Lcom/mojang/serialization/Codec; method_43692 createCodec + p 0 suspectPredicate + m ()Ljava/util/Optional; method_42181 getPrimeSuspect + m ()V method_43998 updatePrimeAnger + m (Lcom/mojang/datafixers/util/Pair;)V method_43105 method_43105 + p 1 suspect + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1309; method_42186 method_42186 + p 0 suspect + m (Lnet/minecraft/class_1297;)I method_42185 getAngerFor + p 1 entity + m (Ljava/util/function/Predicate;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43693 method_43693 + p 1 instance + m (Ljava/util/function/Predicate;Ljava/util/List;)Lnet/minecraft/class_7254; method_43694 method_43694 + p 1 suspectUuidsToAngerLevel + m (Lnet/minecraft/class_1297;)Lcom/mojang/datafixers/util/Pair; method_43109 method_43109 + p 1 suspect + m (Ljava/util/function/Predicate;Ljava/util/List;)V + p 2 suspectUuidsToAngerLevel + p 1 suspectPredicate + m (ILnet/minecraft/class_1297;Ljava/lang/Integer;)Ljava/lang/Integer; method_42177 method_42177 + p 1 suspect + p 2 anger + m ()Ljava/util/List; method_43108 getSuspects + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43107 method_43107 + p 0 instance + m (Lnet/minecraft/class_1297;I)I method_42179 increaseAngerAt + p 1 entity + p 2 amount + m (Lnet/minecraft/class_3218;Ljava/util/function/Predicate;)V method_42176 tick + p 2 suspectPredicate + p 1 world + m ()Lnet/minecraft/class_1297; method_42187 getPrimeSuspectInternal + m (Lnet/minecraft/class_3218;)V method_43104 updateSuspectsMap + p 1 world +c net/minecraft/class_7254$class_7379 net/minecraft/entity/ai/WardenAngerManager$SuspectComparator + f Lnet/minecraft/class_7254; comp_708 angerManagement + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)I method_43110 compare + m (Ljava/lang/Object;Ljava/lang/Object;)I compare compare + p 1 first + p 2 second + m ()Lnet/minecraft/class_7254; comp_708 angerManagement + m (Lnet/minecraft/class_7254;)V + p 1 angerManagement +c net/minecraft/class_8582 net/minecraft/util/path/AllowedSymlinkPathMatcher + f Lorg/slf4j/Logger; field_44958 LOGGER + f Ljava/util/List; field_44960 allowedEntries + f Ljava/lang/String; field_44959 COMMENT_LINE_PREFIX + f Ljava/util/Map; field_44961 matcherCache + m (Ljava/nio/file/FileSystem;Ljava/lang/String;)Ljava/nio/file/PathMatcher; method_52251 method_52251 + p 2 scheme + m (Ljava/nio/file/FileSystem;)Ljava/nio/file/PathMatcher; method_52249 get + p 1 fileSystem + m (Ljava/nio/file/FileSystem;Lnet/minecraft/class_8582$class_8583;)Ljava/nio/file/PathMatcher; method_52250 method_52250 + p 1 entry + m (Ljava/util/List;Ljava/nio/file/Path;)Z method_52253 method_52253 + p 1 path + m (Ljava/nio/file/Path;)Z method_52254 method_52254 + p 0 path + m (Ljava/nio/file/Path;)Z matches matches + p 1 path + m (Ljava/nio/file/Path;)Z method_52252 method_52252 + p 0 path + m (Ljava/io/BufferedReader;)Lnet/minecraft/class_8582; method_52247 fromReader + p 0 reader + m (Ljava/util/List;)V + p 1 allowedEntries + m (Ljava/lang/String;)Ljava/util/stream/Stream; method_52248 method_52248 + p 0 line +c net/minecraft/class_8582$class_8583 net/minecraft/util/path/AllowedSymlinkPathMatcher$Entry + f Lnet/minecraft/class_8582$class_8584; comp_1549 type + f Ljava/lang/String; comp_1550 pattern + m (Ljava/lang/String;)Lnet/minecraft/class_8582$class_8583; method_52258 regex + p 0 pattern + m (Ljava/lang/String;)Lnet/minecraft/class_8582$class_8583; method_52257 glob + p 0 pattern + m (Ljava/lang/String;)Lnet/minecraft/class_8582$class_8583; method_52259 prefix + p 0 prefix + m (Ljava/lang/String;)Ljava/util/Optional; method_52255 readLine + p 0 line + m (Ljava/nio/file/FileSystem;)Ljava/nio/file/PathMatcher; method_52256 compile + p 1 fileSystem + m ()Ljava/lang/String; comp_1550 pattern + m ()Lnet/minecraft/class_8582$class_8584; comp_1549 type + m (Lnet/minecraft/class_8582$class_8584;Ljava/lang/String;)V + p 1 type + p 2 pattern +c net/minecraft/class_8582$class_8584 net/minecraft/util/path/AllowedSymlinkPathMatcher$EntryType + f Lnet/minecraft/class_8582$class_8584; field_44962 DEFAULT + f Lnet/minecraft/class_8582$class_8584; field_44963 PREFIX + m (Ljava/lang/String;Ljava/nio/file/Path;)Z method_52260 method_52260 + p 1 path + m (Ljava/nio/file/FileSystem;Ljava/lang/String;)Ljava/nio/file/PathMatcher; compile compile + p 2 pattern + p 1 fileSystem + m (Ljava/nio/file/FileSystem;Ljava/lang/String;)Ljava/nio/file/PathMatcher; method_52261 method_52261 + p 1 prefix + p 0 fileSystem +c net/minecraft/class_7251 net/minecraft/entity/ai/brain/task/SniffTask + f D field_38848 VERTICAL_RADIUS + f D field_38708 HORIZONTAL_RADIUS + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)V method_42160 run + m (I)V + p 1 runTime + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)V method_42161 finishRunning + m (Lnet/minecraft/class_7260;Lnet/minecraft/class_1309;)V method_42159 method_42159 + p 1 target + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)Z method_42158 shouldKeepRunning +c net/minecraft/class_7252 net/minecraft/entity/ai/brain/sensor/WardenAttackablesSensor + m (Lnet/minecraft/class_7260;Lnet/minecraft/class_1309;)V method_42164 method_42164 + p 1 entityx + m (Lnet/minecraft/class_7260;Ljava/util/function/Predicate;)Ljava/util/Optional; method_43086 findNearestTarget + p 0 warden + p 1 targetPredicate + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;)V method_43083 sense + m (Lnet/minecraft/class_1309;)Z method_43084 method_43084 + p 0 entityx + m (Lnet/minecraft/class_1309;)Z method_42166 method_42166 + p 0 entityx +c net/minecraft/class_8580 net/minecraft/util/path/SymlinkFinder + f Ljava/nio/file/PathMatcher; field_44955 matcher + m (Ljava/nio/file/Path;Ljava/util/List;)V method_52619 validateRecursively + p 1 path + p 2 results + m (Ljava/nio/file/Path;)Ljava/util/List; method_52618 validate + p 1 path + m (Ljava/nio/file/Path;Z)Ljava/util/List; method_52243 collect + p 1 path + p 2 resolveSymlink + m (Ljava/nio/file/PathMatcher;)V + p 1 matcher + m (Ljava/nio/file/Path;Ljava/util/List;)V method_52242 validate + p 2 results + p 1 path +c net/minecraft/class_8580$1 net/minecraft/util/path/SymlinkFinder$1 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)V method_52246 validate + p 1 path + p 2 attributes + m (Ljava/lang/Object;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; preVisitDirectory preVisitDirectory + p 2 attributes + p 1 path + m (Ljava/lang/Object;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile visitFile + p 1 path + p 2 attributes + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; method_52245 visitFile + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; method_52244 preVisitDirectory +c net/minecraft/class_8581 net/minecraft/util/path/SymlinkEntry + f Ljava/nio/file/Path; comp_1548 target + f Ljava/nio/file/Path; comp_1547 link + m ()Ljava/nio/file/Path; comp_1547 link + m ()Ljava/nio/file/Path; comp_1548 target + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)V + p 1 link + p 2 target +c net/minecraft/class_7250 net/minecraft/entity/ai/brain/task/EmergeTask + m (I)V + p 1 duration + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)V method_42156 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)V method_42157 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)Z method_42155 shouldKeepRunning +c net/minecraft/class_7259 net/minecraft/entity/ai/brain/task/StartSniffingTask + f Lnet/minecraft/class_6017; field_38133 COOLDOWN + m (Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47266 method_47266 + p 3 world + p 5 time + p 4 entity + m (Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47267 method_47267 + p 4 disturbanceLocation + p 2 sniffCooldown + p 3 nearestAttackable + p 0 isSniffing + p 1 walkTarget + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47265 method_47265 + p 0 context + m ()Lnet/minecraft/class_7893; method_47264 create +c net/minecraft/class_8588 net/minecraft/network/packet/s2c/play/EnterReconfigurationS2CPacket + f Lnet/minecraft/class_8588; field_47997 INSTANCE + f Lnet/minecraft/class_9139; field_47998 CODEC + m (Lnet/minecraft/class_2602;)V method_52272 apply +c net/minecraft/class_7257 net/minecraft/entity/ai/brain/task/LookAtDisturbanceTask + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47262 method_47262 + p 4 world + p 6 time + p 5 entity + m ()Lnet/minecraft/class_7893; method_47259 create + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47260 method_47260 + p 0 context + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47263 method_47263 + p 1 lookTarget + p 2 disturbanceLocation + p 3 roarTarget + p 4 attackTarget +c net/minecraft/class_8589 net/minecraft/network/packet/s2c/play/CommonPlayerSpawnInfo + f Lnet/minecraft/class_1934; comp_1556 gameMode + f Lnet/minecraft/class_1934; comp_1557 lastGameMode + f Z comp_1558 isDebug + f J comp_1555 seed + f Z comp_1559 isFlat + f I comp_2893 seaLevel + f I comp_1561 portalCooldown + f Ljava/util/Optional; comp_1560 lastDeathLocation + f Lnet/minecraft/class_5321; comp_1554 dimension + f Lnet/minecraft/class_6880; comp_1553 dimensionType + m ()Lnet/minecraft/class_1934; comp_1556 gameMode + m ()Lnet/minecraft/class_1934; comp_1557 lastGameMode + m (Lnet/minecraft/class_9129;)V method_52274 write + p 1 buf + m (Lnet/minecraft/class_9129;)V + p 1 buf + m ()Z comp_1559 isFlat + m ()Z comp_1558 isDebug + m ()J comp_1555 seed + m ()I comp_1561 portalCooldown + m ()Lnet/minecraft/class_6880; comp_1553 dimensionType + m ()Ljava/util/Optional; comp_1560 lastDeathLocation + m ()I comp_2893 seaLevel + m ()Lnet/minecraft/class_5321; comp_1554 dimension + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_5321;JLnet/minecraft/class_1934;Lnet/minecraft/class_1934;ZZLjava/util/Optional;II)V + p 1 dimensionType + p 2 dimension + p 3 seed + p 5 gameMode + p 6 lastGameMode + p 7 isDebug + p 8 isFlat + p 9 lastDeathLocation + p 10 portalCooldown + p 11 seaLevel +c net/minecraft/class_9884 net/minecraft/screen/AbstractCraftingScreenHandler + f Lnet/minecraft/class_8566; field_52559 craftingInventory + f Lnet/minecraft/class_1731; field_52560 craftingResultInventory + f I field_52562 height + f I field_52561 width + m ()I method_61630 getHeight + m ()Ljava/util/List; method_61628 getInputSlots + m ()Lnet/minecraft/class_1657; method_61631 getPlayer + m (II)V method_61626 addInputSlots + p 1 x + p 2 y + m ()Lnet/minecraft/class_1735; method_61627 getOutputSlot + m (Lnet/minecraft/class_3917;III)V + p 1 type + p 2 syncId + p 3 width + p 4 height + m ()V method_59963 onInputSlotFillStart + m ()I method_61629 getWidth + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8786;)V method_59964 onInputSlotFillFinish + p 2 recipe + p 1 world + m (Lnet/minecraft/class_1657;II)Lnet/minecraft/class_1735; method_61625 addResultSlot + p 2 x + p 1 player + p 3 y +c net/minecraft/class_9883 net/minecraft/entity/vehicle/DefaultMinecartController + f Lnet/minecraft/class_243; field_52554 velocity + f Lnet/minecraft/class_10584; field_55707 interpolator + m (DDDD)Lnet/minecraft/class_243; method_61619 simulateMovement + p 1 x + p 3 y + p 5 z + p 7 movement + m (DDD)Lnet/minecraft/class_243; method_61620 snapPositionToRail + p 3 y + p 5 z + p 1 x + m (Lnet/minecraft/class_10584;)V method_66329 onLerp + p 1 interpolator +c net/minecraft/class_8551 net/minecraft/loot/condition/AnyOfLootCondition + f Lcom/mojang/serialization/MapCodec; field_45859 CODEC + m ([Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_8551$class_8552; method_51727 builder + p 0 terms + m (Ljava/util/List;)V + p 1 terms +c net/minecraft/class_8551$class_8552 net/minecraft/loot/condition/AnyOfLootCondition$Builder +c net/minecraft/class_7228 net/minecraft/data/report/BiomeParametersProvider + f Ljava/nio/file/Path; field_39373 path + f Lorg/slf4j/Logger; field_38012 LOGGER + f Lcom/mojang/serialization/MapCodec; field_43090 BIOME_KEY_CODEC + f Ljava/util/concurrent/CompletableFuture; field_40950 registriesFuture + f Lcom/mojang/serialization/Codec; field_43091 BIOME_ENTRY_CODEC + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registriesFuture + m (Lnet/minecraft/class_2960;)Ljava/nio/file/Path; method_42032 resolvePath + p 1 id + m (Ljava/util/List;Lnet/minecraft/class_7403;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_8197$class_5305;Lnet/minecraft/class_6544$class_6547;)V method_49648 method_49648 + p 5 entries + p 4 preset + m (Ljava/nio/file/Path;Lnet/minecraft/class_7403;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Encoder;Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture; method_42030 write + p 0 path + p 1 writer + p 2 ops + p 3 codec + p 4 biomeSource + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_7225$class_7874;)Ljava/util/concurrent/CompletionStage; method_46810 method_46810 + p 2 registries + m (Ljava/nio/file/Path;Ljava/lang/String;)V method_42031 method_42031 + p 1 error +c net/minecraft/class_7229 net/minecraft/data/tag/vanilla/VanillaFlatLevelGeneratorPresetTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registriesFuture +c net/minecraft/class_9889 net/minecraft/component/type/EnchantableComponent + f Lnet/minecraft/class_9139; field_52608 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_52607 CODEC + f I comp_2938 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_61710 method_61710 + p 0 instance + m ()I comp_2938 value + m (I)V + p 1 value +c net/minecraft/class_8557 net/minecraft/client/font/TrueTypeFontLoader + f Lcom/mojang/serialization/MapCodec; field_44804 CODEC + f Lcom/mojang/serialization/Codec; field_44805 SKIP_CODEC + f Lnet/minecraft/class_2960; comp_1524 location + f F comp_1526 oversample + f F comp_1525 size + f Lnet/minecraft/class_8557$class_8558; comp_1527 shift + f Ljava/lang/String; comp_1528 skip + m (Lnet/minecraft/class_3300;)Lnet/minecraft/class_390; method_51759 load + p 1 resourceManager + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51761 method_51761 + p 0 instance + m (Ljava/util/List;)Ljava/lang/String; method_52730 method_52730 + p 0 chars + m ()Lnet/minecraft/class_2960; comp_1524 location + m ()F comp_1526 oversample + m ()F comp_1525 size + m ()Lnet/minecraft/class_8557$class_8558; comp_1527 shift + m ()Ljava/lang/String; comp_1528 skip + m (Lnet/minecraft/class_2960;FFLnet/minecraft/class_8557$class_8558;Ljava/lang/String;)V + p 1 location + p 2 size + p 3 oversample + p 4 shift + p 5 skip +c net/minecraft/class_8557$class_8558 net/minecraft/client/font/TrueTypeFontLoader$Shift + f Lcom/mojang/serialization/Codec; field_44807 CODEC + f Lnet/minecraft/class_8557$class_8558; field_44806 NONE + f F comp_1529 x + f F comp_1530 y + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_51765 method_51765 + p 0 floatList + m (Lnet/minecraft/class_8557$class_8558;)Ljava/util/List; method_51764 method_51764 + p 0 shift + m (Ljava/util/List;)Lnet/minecraft/class_8557$class_8558; method_51766 method_51766 + p 0 floatList + m ()F comp_1529 x + m ()F comp_1530 y + m (FF)V + p 1 x + p 2 y +c net/minecraft/class_7227 net/minecraft/particle/SculkChargeParticleEffect + f Lcom/mojang/serialization/MapCodec; field_38005 CODEC + f Lnet/minecraft/class_9139; field_48458 PACKET_CODEC + f F comp_632 roll + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42024 method_42024 + p 0 instance + m (Lnet/minecraft/class_7227;)Ljava/lang/Float; method_56185 method_56185 + p 0 effect + m (Lnet/minecraft/class_7227;)Ljava/lang/Float; method_42025 method_42025 + p 0 particleEffect + m ()F comp_632 roll + m (F)V + p 1 roll +c net/minecraft/class_9887 net/minecraft/recipe/IngredientPlacement + f Ljava/util/List; field_54635 ingredients + f Lit/unimi/dsi/fastutil/ints/IntList; field_55496 placementSlots + f Lnet/minecraft/class_9887; field_52597 NONE + m (Ljava/util/List;)Lnet/minecraft/class_9887; method_61686 forShapeless + p 0 ingredients + m (Ljava/util/List;Lit/unimi/dsi/fastutil/ints/IntList;)V + p 2 placementSlots + p 1 ingredients + m ()Lit/unimi/dsi/fastutil/ints/IntList; method_65800 getPlacementSlots + m (Ljava/util/List;)Lnet/minecraft/class_9887; method_61683 forMultipleSlots + p 0 ingredients + m ()Z method_61687 hasNoPlacement + m ()Ljava/util/List; method_64675 getIngredients + m (Lnet/minecraft/class_1856;)Lnet/minecraft/class_9887; method_61682 forSingleSlot + p 0 ingredient +c net/minecraft/class_7225 net/minecraft/registry/RegistryWrapper + c A read-only wrapper of a registry. + m ()Ljava/util/stream/Stream; method_42017 streamEntries + c {@return a stream of registry keys defined in the wrapped registry}\n\n@see Registry#getKeys + m ()Ljava/util/stream/Stream; method_46754 streamKeys + m ()Ljava/util/stream/Stream; method_46755 streamTagKeys + m ()Ljava/util/stream/Stream; method_42020 getTags +c net/minecraft/class_7225$class_7874 net/minecraft/registry/RegistryWrapper$WrapperLookup + m (Lcom/mojang/serialization/DynamicOps;)Lnet/minecraft/class_6903; method_57093 getOps + p 1 delegate + m ()Lcom/mojang/serialization/Lifecycle; method_62679 getLifecycle + m (Ljava/util/stream/Stream;)Lnet/minecraft/class_7225$class_7874; method_46761 of + p 0 wrappers + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_7225$class_7226; method_46762 getOrThrow + p 1 registryRef + m ()Ljava/util/stream/Stream; method_55282 streamAllRegistryKeys + m ()Ljava/util/stream/Stream; method_62678 stream + m (Lnet/minecraft/class_7225$class_7226;)Lnet/minecraft/class_7225$class_7226; method_46760 method_46760 + p 0 wrapper +c net/minecraft/class_7225$class_7874$1 net/minecraft/registry/RegistryWrapper$WrapperLookup$1 +c net/minecraft/class_7225$class_7226 net/minecraft/registry/RegistryWrapper$Impl + m ()Lcom/mojang/serialization/Lifecycle; method_46766 getLifecycle + m ()Lnet/minecraft/class_5321; method_46765 getKey + m (Lnet/minecraft/class_7699;)Lnet/minecraft/class_7225$class_7226; method_45919 withFeatureFilter + p 1 enabledFeatures + m (Ljava/util/function/Predicate;)Lnet/minecraft/class_7225$class_7226; method_56882 withPredicateFilter + p 1 predicate + m (Lnet/minecraft/class_7699;Ljava/lang/Object;)Z method_45920 method_45920 + p 1 feature +c net/minecraft/class_7225$class_7226$class_7875 net/minecraft/registry/RegistryWrapper$Impl$Delegating + m ()Lnet/minecraft/class_7225$class_7226; method_46725 getBase +c net/minecraft/class_7225$class_7226$1 net/minecraft/registry/RegistryWrapper$Impl$1 + m (Ljava/util/function/Predicate;Lnet/minecraft/class_6880$class_6883;)Z method_46756 method_46756 + p 1 entry + m (Ljava/util/function/Predicate;Lnet/minecraft/class_6880$class_6883;)Z method_46757 method_46757 + p 1 entry +c net/minecraft/class_9886 net/minecraft/item/ToolMaterial + f Lnet/minecraft/class_9886; field_52590 NETHERITE + f Lnet/minecraft/class_9886; field_52589 GOLD + f Lnet/minecraft/class_9886; field_61350 COPPER + f Lnet/minecraft/class_9886; field_52588 DIAMOND + f Lnet/minecraft/class_9886; field_52585 WOOD + f Lnet/minecraft/class_9886; field_52587 IRON + f Lnet/minecraft/class_9886; field_52586 STONE + f Lnet/minecraft/class_6862; comp_2935 repairItems + f Lnet/minecraft/class_6862; comp_2930 incorrectBlocksForDrops + f I comp_2931 durability + f I comp_2934 enchantmentValue + f F comp_2933 attackDamageBonus + f F comp_2932 speed + m (FF)Lnet/minecraft/class_9285; method_61660 createToolAttributeModifiers + p 1 attackDamage + p 2 attackSpeed + m (Lnet/minecraft/class_1792$class_1793;FF)Lnet/minecraft/class_1792$class_1793; method_61662 applySwordSettings + p 1 settings + p 2 attackDamage + p 3 attackSpeed + m (FF)Lnet/minecraft/class_9285; method_61664 createSwordAttributeModifiers + p 1 attackDamage + p 2 attackSpeed + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_61661 applyBaseSettings + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;Lnet/minecraft/class_6862;FFF)Lnet/minecraft/class_1792$class_1793; method_61663 applyToolSettings + p 5 disableBlockingForSeconds + p 4 attackSpeed + p 3 attackDamage + p 2 effectiveBlocks + p 1 settings + m ()Lnet/minecraft/class_6862; comp_2935 repairItems + m ()Lnet/minecraft/class_6862; comp_2930 incorrectBlocksForDrops + m ()I comp_2934 enchantmentValue + m ()F comp_2933 attackDamageBonus + m ()F comp_2932 speed + m ()I comp_2931 durability + m (Lnet/minecraft/class_6862;IFFILnet/minecraft/class_6862;)V + p 1 incorrectBlocksForDrops + p 2 durability + p 3 speed + p 4 attackDamageBonus + p 5 enchantmentValue + p 6 repairItems +c net/minecraft/class_8564 net/minecraft/util/math/random/RandomSequence + f Lcom/mojang/serialization/Codec; field_44859 CODEC + f Lnet/minecraft/class_6677; field_44860 source + m (JLjava/util/Optional;)V + p 1 seed + p 3 id + m (Lnet/minecraft/class_8564;)Lnet/minecraft/class_6677; method_51840 method_51840 + p 0 sequence + m (JLnet/minecraft/class_2960;)V + p 3 id + p 1 seed + m ()Lnet/minecraft/class_5819; method_51839 getSource + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51841 method_51841 + p 0 instance + m (JLjava/util/Optional;)Lnet/minecraft/class_6677; method_52189 createSource + p 0 seed + p 2 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_6673$class_6674; method_52171 createSeed + p 0 id + m (Lnet/minecraft/class_6677;)V + p 1 source +c net/minecraft/class_8565 net/minecraft/util/math/random/RandomSequencesState + f I field_45100 salt + f Ljava/util/Map; field_56421 sequences + f Lnet/minecraft/class_10741; field_56420 STATE_TYPE + f Z field_45102 includeSequenceId + f Z field_45101 includeWorldSeed + f Lcom/mojang/serialization/Codec; field_63283 CODEC + m ()I method_52509 resetAll + m (IZZ)V method_52510 setDefaultParameters + p 3 includeSequenceId + p 2 includeWorldSeed + p 1 salt + m (Lnet/minecraft/class_2960;J)Lnet/minecraft/class_8564; method_52519 createSequence + p 1 id + p 2 worldSeed + m (JLnet/minecraft/class_2960;)Lnet/minecraft/class_8564; method_75098 method_75098 + p 3 idx + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75100 method_75100 + p 0 instance + m (Lnet/minecraft/class_2960;JIZZ)V method_52512 reset + p 1 id + p 2 worldSeed + p 5 includeWorldSeed + p 4 salt + p 6 includeSequenceId + m ()I method_75101 getSalt + m (Lnet/minecraft/class_2960;J)Lnet/minecraft/class_5819; method_51843 getOrCreate + p 2 worldSeed + p 1 id + m (Ljava/util/function/BiConsumer;)V method_52513 forEachSequence + p 1 consumer + m (Lnet/minecraft/class_2960;JIZZ)Lnet/minecraft/class_8564; method_52518 createSequence + p 6 includeSequenceId + p 5 includeWorldSeed + p 4 salt + p 2 worldSeed + p 1 id + m ()Z method_75103 shouldIncludeSequenceId + m ()Z method_75102 shouldIncludeWorldSeed + m (IZZLjava/util/Map;)V + p 4 sequences + p 3 includeSequenceId + p 2 includeWorldSeed + p 1 salt + m (Lnet/minecraft/class_2960;J)V method_52517 reset + p 1 id + p 2 worldSeed +c net/minecraft/class_8565$class_8629 net/minecraft/util/math/random/RandomSequencesState$WrappedRandom + f Lnet/minecraft/class_5819; field_44864 random + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_8565;Lnet/minecraft/class_5819;)V + p 2 random +c net/minecraft/class_9895 net/minecraft/item/FuelRegistry + f Lit/unimi/dsi/fastutil/objects/Object2IntSortedMap; field_52635 fuelValues + m (Lit/unimi/dsi/fastutil/objects/Object2IntSortedMap;)V + p 1 fuelValues + m (Lnet/minecraft/class_1799;)Z method_61752 isFuel + p 1 item + m ()Ljava/util/SequencedSet; method_61751 getFuelItems + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_7699;)Lnet/minecraft/class_9895; method_61753 createDefault + p 1 enabledFeatures + p 0 registries + m (Lnet/minecraft/class_1799;)I method_61755 getFuelTicks + p 1 item + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_7699;I)Lnet/minecraft/class_9895; method_61754 createDefault + p 1 enabledFeatures + p 2 itemSmeltTime + p 0 registries +c net/minecraft/class_9895$class_9896 net/minecraft/item/FuelRegistry$Builder + f Lnet/minecraft/class_7699; field_52637 enabledFeatures + f Lnet/minecraft/class_7225; field_52636 itemLookup + f Lit/unimi/dsi/fastutil/objects/Object2IntSortedMap; field_52638 fuelValues + m (Lnet/minecraft/class_1935;I)Lnet/minecraft/class_9895$class_9896; method_61762 add + p 2 value + p 1 item + m (Lnet/minecraft/class_6862;I)Lnet/minecraft/class_9895$class_9896; method_61760 add + p 2 value + p 1 tag + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_9895$class_9896; method_61759 remove + p 1 tag + m (ILnet/minecraft/class_6885$class_6888;)V method_61758 method_61758 + p 2 tag + m (Lnet/minecraft/class_6862;Lnet/minecraft/class_1792;)Z method_61761 method_61761 + p 1 item + m (ILnet/minecraft/class_1792;)V method_61757 add + p 2 item + p 1 value + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_7699;)V + p 2 enabledFeatures + p 1 registries + m ()Lnet/minecraft/class_9895; method_61756 build +c net/minecraft/class_7231 net/minecraft/world/dimension/DimensionTypeRegistrar + m (Lnet/minecraft/class_7891;)V method_42043 bootstrap + p 0 dimensionTypeRegisterable +c net/minecraft/class_8563 net/minecraft/server/world/ChunkLevels + f I field_44850 FULL + f I field_44851 BLOCK_TICKING + f I field_44852 ENTITY_TICKING + f I field_44849 INACCESSIBLE + f Lnet/minecraft/class_9770; field_51860 FULL_GENERATION_STEP + f I field_51859 FULL_GENERATION_REQUIRED_LEVEL + m (Lnet/minecraft/class_2806;)I method_51829 getLevelFromStatus + p 0 status + m (I)Z method_51831 shouldTickEntities + p 0 level + m (I)Z method_51832 shouldTickBlocks + p 0 level + m (I)Z method_51833 isAccessible + p 0 level + m (Lnet/minecraft/class_3194;)I method_51828 getLevelFromType + p 0 type + m (ILnet/minecraft/class_2806;)Lnet/minecraft/class_2806; method_60437 getStatusForAdditionalLevel + p 1 emptyStatus + p 0 additionalLevel + m (I)Lnet/minecraft/class_2806; method_60438 getStatusForAdditionalLevel + p 0 level + m (I)Lnet/minecraft/class_2806; method_51827 getStatus + p 0 level + m (I)Lnet/minecraft/class_3194; method_51830 getType + p 0 level +c net/minecraft/class_9892 net/minecraft/world/explosion/ExplosionImpl + f Lnet/minecraft/class_1927$class_4179; field_52621 destructionType + f F field_52625 power + f Lnet/minecraft/class_3218; field_52622 world + f Ljava/util/Map; field_52628 knockbackByPlayer + f Lnet/minecraft/class_5362; field_52617 DEFAULT_BEHAVIOR + f Lnet/minecraft/class_5362; field_52627 behavior + f Lnet/minecraft/class_243; field_52623 pos + f Lnet/minecraft/class_1282; field_52626 damageSource + f Z field_52620 createFire + f Lnet/minecraft/class_1297; field_52624 entity + m ()Ljava/util/List; method_61740 getBlocksToDestroy + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1297;)F method_61731 calculateReceivedDamage + p 0 pos + p 1 entity + m ()V method_61741 damageEntities + m ()Z method_61739 isSmall + m (Ljava/util/List;)V method_61735 createFire + p 1 positions + m (Ljava/util/List;Lnet/minecraft/class_1799;Lnet/minecraft/class_2338;)V method_61736 method_61736 + p 1 item + p 2 pos + m ()Z method_61742 shouldDestroyBlocks + m (Ljava/util/List;)V method_61732 destroyBlocks + p 1 positions + m ()Ljava/util/Map; method_61738 getKnockbackByPlayer + m (Ljava/util/List;Lnet/minecraft/class_1799;Lnet/minecraft/class_2338;)V method_61733 addDroppedItem + p 0 droppedItemsOut + p 1 item + p 2 pos + m ()Lnet/minecraft/class_1282; method_65132 getDamageSource + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lnet/minecraft/class_5362;Lnet/minecraft/class_243;FZLnet/minecraft/class_1927$class_4179;)V + p 3 damageSource + p 4 behavior + p 1 world + p 2 entity + p 7 createFire + p 8 destructionType + p 5 pos + p 6 power + m ()I method_61737 explode + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_5362; method_61734 makeBehavior + p 1 entity +c net/minecraft/class_9892$class_9893 net/minecraft/world/explosion/ExplosionImpl$DroppedItem + f Lnet/minecraft/class_1799; field_52630 item + f Lnet/minecraft/class_2338; field_52629 pos + m (Lnet/minecraft/class_1799;)V method_61743 merge + p 1 other + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)V + p 1 pos + p 2 item +c net/minecraft/class_8560 net/minecraft/client/render/debug/SupportingBlockDebugRenderer + f Lnet/minecraft/class_310; field_44828 client + f D field_44829 lastEntityCheckTime + f Ljava/util/List; field_44830 entities + m (Lnet/minecraft/class_2338;DI)V method_51791 renderBlockHighlight + p 1 pos + m (Lnet/minecraft/class_1297;Ljava/util/function/DoubleSupplier;I)V method_51790 renderBlockHighlights + p 1 entity + p 2 dilationSupplier + p 3 colr + m (Lnet/minecraft/class_310;)V + p 1 client + m (Lnet/minecraft/class_1297;)D method_51789 getAdditionalDilation + p 1 entity + m (Ljava/util/function/DoubleSupplier;Lnet/minecraft/class_1297;ILnet/minecraft/class_2338;)V method_75453 method_75453 + p 4 pos +c net/minecraft/class_9891 net/minecraft/world/EmptyBlockRenderView + f Lnet/minecraft/class_9891; field_52611 INSTANCE +c net/minecraft/class_8561 net/minecraft/client/session/telemetry/GameLoadTimeEvent + f Lnet/minecraft/class_8561; field_44842 INSTANCE + f Ljava/util/OptionalLong; field_44846 bootstrapTime + f Lorg/slf4j/Logger; field_44843 LOGGER + f Lcom/google/common/base/Ticker; field_44844 ticker + f Ljava/util/Map; field_44845 stopwatches + m (Lcom/google/common/base/Stopwatch;Lnet/minecraft/class_7969;)Lcom/google/common/base/Stopwatch; method_51804 method_51804 + p 1 property + m (Lnet/minecraft/class_7969;)Lcom/google/common/base/Stopwatch; method_51813 method_51813 + p 1 property + m (Lnet/minecraft/class_7973$class_7974;)V method_51809 method_51809 + p 1 properties + m (Lnet/minecraft/class_7969;Ljava/util/function/Function;)V method_51808 addTimer + p 1 property + p 2 stopwatchProvider + m (J)V method_51803 setBootstrapTime + p 1 bootstrapTime + m (Lnet/minecraft/class_7969;)V method_51812 stopTimer + p 1 property + m (Lcom/google/common/base/Ticker;)V + p 1 ticker + m (Lnet/minecraft/class_7965;)V method_51805 send + p 1 sender + m (Lnet/minecraft/class_7973$class_7974;J)V method_51810 method_51810 + p 1 bootstrapTime + m (Lnet/minecraft/class_7969;)V method_51806 startTimer + p 1 property + m (Lnet/minecraft/class_7973$class_7974;Lnet/minecraft/class_7969;Lcom/google/common/base/Stopwatch;)V method_51811 method_51811 + p 1 property + p 2 stopwatch + m (Lnet/minecraft/class_7969;Lcom/google/common/base/Stopwatch;)V method_51807 addTimer + p 1 property + p 2 stopwatch +c net/minecraft/class_8561$class_8562 net/minecraft/client/session/telemetry/GameLoadTimeEvent$Measurement + f Lcom/mojang/serialization/Codec; field_44847 CODEC + f I comp_1531 millis + m (Lnet/minecraft/class_8561$class_8562;)Ljava/lang/Integer; method_51814 method_51814 + p 0 measurement + m ()I comp_1531 millis + m (I)V + p 1 millis +c net/minecraft/class_7230 net/minecraft/data/tag/vanilla/VanillaWorldPresetTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registriesFuture +c net/minecraft/class_9890 net/minecraft/component/type/RepairableComponent + f Lcom/mojang/serialization/Codec; field_52609 CODEC + f Lnet/minecraft/class_9139; field_52610 PACKET_CODEC + f Lnet/minecraft/class_6885; comp_2939 items + m (Lnet/minecraft/class_1799;)Z method_61713 matches + p 1 stack + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_61712 method_61712 + p 0 instance + m ()Lnet/minecraft/class_6885; comp_2939 items + m (Lnet/minecraft/class_6885;)V + p 1 items +c net/minecraft/class_7237 net/minecraft/server/SaveLoading + f Lorg/slf4j/Logger; field_39979 LOGGER + m (Lnet/minecraft/class_7237$class_7239;Lnet/minecraft/class_6860;Lnet/minecraft/class_7780;Lnet/minecraft/class_7237$class_7661;Lnet/minecraft/class_5350;)Ljava/lang/Object; method_42097 method_42097 + p 4 dataPackContents + m (Lnet/minecraft/class_7237$class_6906;Lnet/minecraft/class_7237$class_6907;Lnet/minecraft/class_7237$class_7239;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_42098 load + p 4 applyExecutor + p 3 prepareExecutor + p 0 serverConfig + p 2 saveApplierFactory + p 1 loadContextSupplier + m (Lnet/minecraft/class_6860;Lnet/minecraft/class_5350;Ljava/lang/Throwable;)V method_42096 method_42096 + p 2 throwable + p 1 dataPackContents +c net/minecraft/class_7237$class_7238 net/minecraft/server/SaveLoading$DataPacks + f Lnet/minecraft/class_3283; comp_635 manager + f Z comp_637 safeMode + f Lnet/minecraft/class_7712; comp_636 initialDataConfig + f Z comp_993 initMode + m ()Lnet/minecraft/class_3283; comp_635 manager + m ()Lcom/mojang/datafixers/util/Pair; method_42099 load + m ()Z comp_993 initMode + m ()Lnet/minecraft/class_7712; comp_636 initialDataConfig + m ()Z comp_637 safeMode + m (Lnet/minecraft/class_3283;Lnet/minecraft/class_7712;ZZ)V + p 1 manager + p 2 initialDataConfig + p 3 safeMode + p 4 initMode +c net/minecraft/class_7237$class_7239 net/minecraft/server/SaveLoading$SaveApplierFactory + m (Lnet/minecraft/class_6860;Lnet/minecraft/class_5350;Lnet/minecraft/class_7780;Ljava/lang/Object;)Ljava/lang/Object; create create + p 1 resourceManager + p 2 dataPackContents + p 3 combinedDynamicRegistries + p 4 loadContext +c net/minecraft/class_7237$class_6906 net/minecraft/server/SaveLoading$ServerConfig + f Lnet/minecraft/class_2170$class_5364; comp_361 commandEnvironment + f Lnet/minecraft/class_7237$class_7238; comp_634 dataPacks + f Lnet/minecraft/class_12096; comp_4941 functionCompilationPermissions + m ()Lnet/minecraft/class_2170$class_5364; comp_361 commandEnvironment + m ()Lnet/minecraft/class_7237$class_7238; comp_634 dataPacks + m ()Lnet/minecraft/class_12096; comp_4941 functionCompilationPermissions + m (Lnet/minecraft/class_7237$class_7238;Lnet/minecraft/class_2170$class_5364;Lnet/minecraft/class_12096;)V + p 1 dataPacks + p 2 commandEnvironment + p 3 functionCompilationPermissions +c net/minecraft/class_7237$class_7661 net/minecraft/server/SaveLoading$LoadContext + f Ljava/lang/Object; comp_991 extraData + f Lnet/minecraft/class_5455$class_6890; comp_992 dimensionsRegistryManager + m ()Ljava/lang/Object; comp_991 extraData + m ()Lnet/minecraft/class_5455$class_6890; comp_992 dimensionsRegistryManager + m (Ljava/lang/Object;Lnet/minecraft/class_5455$class_6890;)V + p 1 extraData + p 2 dimensionsRegistryManager +c net/minecraft/class_7237$class_6907 net/minecraft/server/SaveLoading$LoadContextSupplier + m (Lnet/minecraft/class_7237$class_7660;)Lnet/minecraft/class_7237$class_7661; get get + p 1 context +c net/minecraft/class_7237$class_7660 net/minecraft/server/SaveLoading$LoadContextSupplierContext + f Lnet/minecraft/class_7225$class_7874; comp_989 worldGenRegistryManager + f Lnet/minecraft/class_5455$class_6890; comp_990 dimensionsRegistryManager + f Lnet/minecraft/class_3300; comp_987 resourceManager + f Lnet/minecraft/class_7712; comp_988 dataConfiguration + m ()Lnet/minecraft/class_7225$class_7874; comp_989 worldGenRegistryManager + m ()Lnet/minecraft/class_5455$class_6890; comp_990 dimensionsRegistryManager + m ()Lnet/minecraft/class_3300; comp_987 resourceManager + m ()Lnet/minecraft/class_7712; comp_988 dataConfiguration + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_7712;Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_5455$class_6890;)V + p 1 resourceManager + p 2 dataConfiguration + p 3 worldGenRegistryManager + p 4 dimensionsRegistryManager +c net/minecraft/class_8566 net/minecraft/inventory/RecipeInputInventory + c Represents an inventory that is an input for a recipe, such as\ncrafting table inputs. + m ()Lnet/minecraft/class_9694$class_9765; method_60501 createPositionedRecipeInput + m ()Ljava/util/List; method_51305 getHeldStacks + c {@return the stacks held by the inventory} + m ()Lnet/minecraft/class_9694; method_59961 createRecipeInput + m ()I method_17398 getWidth + c {@return the width of the recipe grid} + m ()I method_17397 getHeight + c {@return the height of the recipe grid} +c net/minecraft/class_8567 net/minecraft/loot/context/LootWorldContext + f F field_44886 luck + f Ljava/util/Map; field_44885 dynamicDrops + f Lnet/minecraft/class_10352; field_44884 parameters + f Lnet/minecraft/class_3218; field_44883 world + m (Lnet/minecraft/class_2960;Ljava/util/function/Consumer;)V method_51864 addDynamicDrops + p 1 id + p 2 lootConsumer + m ()Lnet/minecraft/class_3218; method_51863 getWorld + m ()Lnet/minecraft/class_10352; method_65014 getParameters + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_10352;Ljava/util/Map;F)V + p 2 parameters + p 1 world + p 4 luck + p 3 dynamicDrops + m ()F method_51866 getLuck +c net/minecraft/class_8567$class_8568 net/minecraft/loot/context/LootWorldContext$Builder + f Lnet/minecraft/class_10352$class_10353; field_44888 parameters + f Lnet/minecraft/class_3218; field_44887 world + f F field_44890 luck + f Ljava/util/Map; field_44889 dynamicDrops + m (F)Lnet/minecraft/class_8567$class_8568; method_51871 luck + p 1 luck + m (Lnet/minecraft/class_169;Ljava/lang/Object;)Lnet/minecraft/class_8567$class_8568; method_51877 addOptional + p 2 value + p 1 parameter + m ()Lnet/minecraft/class_3218; method_51870 getWorld + m (Lnet/minecraft/class_169;)Ljava/lang/Object; method_51873 get + p 1 parameter + m (Lnet/minecraft/class_169;Ljava/lang/Object;)Lnet/minecraft/class_8567$class_8568; method_51874 add + p 1 parameter + p 2 value + m (Lnet/minecraft/class_169;)Ljava/lang/Object; method_51876 getOptional + p 1 parameter + m (Lnet/minecraft/class_3218;)V + p 1 world + m (Lnet/minecraft/class_176;)Lnet/minecraft/class_8567; method_51875 build + p 1 contextType + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_8567$class_49;)Lnet/minecraft/class_8567$class_8568; method_51872 addDynamicDrop + p 1 id + p 2 dynamicDrop +c net/minecraft/class_8567$class_49 net/minecraft/loot/context/LootWorldContext$DynamicDrop + m (Ljava/util/function/Consumer;)V add add + p 1 lootConsumer +c net/minecraft/class_9863 net/minecraft/entity/mob/ElytraFlightController + f F field_52438 lastLeftWingPitch + f F field_52439 lastLeftWingYaw + f F field_52436 leftWingYaw + f F field_52437 leftWingRoll + f F field_52440 lastLeftWingRoll + f F field_52435 leftWingPitch + f Lnet/minecraft/class_1309; field_52441 entity + m (Lnet/minecraft/class_1309;)V + p 1 entity + m (F)F method_61406 leftWingRoll + p 1 tickProgress + m (F)F method_61404 leftWingPitch + p 1 tickProgress + m (F)F method_61405 leftWingYaw + p 1 tickProgress + m ()V method_61403 update +c net/minecraft/class_7201 net/minecraft/client/render/entity/model/TadpoleEntityModel + f Lnet/minecraft/class_630; field_37934 tail + m ()Lnet/minecraft/class_5607; method_41917 getTexturedModelData + m (Lnet/minecraft/class_10042;)V method_41916 setAngles +c net/minecraft/class_8532 net/minecraft/client/font/GlyphContainer + f I field_44753 NUM_ROWS + f Ljava/util/function/IntFunction; field_44756 makeRow + f I field_44749 ROW_SHIFT + f [Ljava/lang/Object; field_44754 defaultRow + f I field_44751 LAST_ENTRY_NUM_IN_ROW + f I field_44752 LAST_ROW_NUM + f [[Ljava/lang/Object; field_44755 rows + f I field_44750 ENTRIES_PER_ROW + m (ILjava/util/function/IntFunction;)Ljava/lang/Object; method_51600 computeIfAbsent + p 1 codePoint + p 2 ifAbsent + m (I)Ljava/lang/Object; method_51604 remove + p 1 codePoint + m (Lnet/minecraft/class_8532$class_8533;)V method_51601 forEachGlyph + p 1 glyphConsumer + m (Lit/unimi/dsi/fastutil/ints/IntOpenHashSet;ILjava/lang/Object;)V method_51602 method_51602 + p 1 codePoint + p 2 glyph + m (Ljava/util/function/IntFunction;Ljava/util/function/IntFunction;)V + p 2 makeScroll + p 1 makeRow + m ()Lit/unimi/dsi/fastutil/ints/IntSet; method_51603 getProvidedGlyphs + m (I)Ljava/lang/Object; method_51598 get + p 1 codePoint + m (ILjava/lang/Object;)Ljava/lang/Object; method_51599 put + p 1 codePoint + p 2 glyph + m ()V method_51597 clear +c net/minecraft/class_8532$class_8533 net/minecraft/client/font/GlyphContainer$GlyphConsumer + m (ILjava/lang/Object;)V accept accept + p 2 glyph + p 1 codePoint +c net/minecraft/class_7208 net/minecraft/client/particle/SculkChargePopParticle + f Lnet/minecraft/class_4002; field_37960 spriteProvider + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_4002;)V + p 14 spriteProvider + p 12 velocityZ + p 10 velocityY + p 8 velocityX + p 6 z + p 4 y + p 1 world + p 2 x +c net/minecraft/class_7208$class_7209 net/minecraft/client/particle/SculkChargePopParticle$Factory + f Lnet/minecraft/class_4002; comp_621 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_41947 createParticle + m ()Lnet/minecraft/class_4002; comp_621 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_7206 net/minecraft/client/particle/SculkChargeParticle + f Lnet/minecraft/class_4002; field_37959 spriteProvider + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_4002;)V + p 12 velocityZ + p 14 spriteProvider + p 8 velocityX + p 10 velocityY + p 4 y + p 6 z + p 2 x + p 1 world +c net/minecraft/class_7206$class_7207 net/minecraft/client/particle/SculkChargeParticle$Factory + f Lnet/minecraft/class_4002; comp_620 spriteProvider + m (Lnet/minecraft/class_7227;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_41946 createParticle + m ()Lnet/minecraft/class_4002; comp_620 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_8538 net/minecraft/client/font/TextRenderLayerSet + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; comp_4371 guiPipeline + f Lnet/minecraft/class_1921; comp_1503 polygonOffset + f Lnet/minecraft/class_1921; comp_1502 seeThrough + f Lnet/minecraft/class_1921; comp_1501 normal + m (Lnet/minecraft/class_327$class_6415;)Lnet/minecraft/class_1921; method_51642 getRenderLayer + p 1 layerType + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_8538; method_51641 ofIntensity + p 0 textureId + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_8538; method_51643 of + p 0 textureId + m ()Lcom/mojang/blaze3d/pipeline/RenderPipeline; comp_4371 guiPipeline + m ()Lnet/minecraft/class_1921; comp_1502 seeThrough + m ()Lnet/minecraft/class_1921; comp_1503 polygonOffset + m ()Lnet/minecraft/class_1921; comp_1501 normal + m (Lnet/minecraft/class_1921;Lnet/minecraft/class_1921;Lnet/minecraft/class_1921;Lcom/mojang/blaze3d/pipeline/RenderPipeline;)V + p 1 normal + p 2 seeThrough + p 3 polygonOffset + p 4 guiPipeline +c net/minecraft/class_7204 net/minecraft/client/network/SequencedPacketCreator + m (I)Lnet/minecraft/class_2596; predict predict + p 1 sequence +c net/minecraft/class_7205 net/minecraft/unused/packageinfo/PackageInfo7205 +c net/minecraft/class_9866 net/minecraft/entity/passive/WaterAnimalEntity + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_61455 canSpawn + p 0 type + p 1 world + p 2 reason + p 3 pos + p 4 random + m (I)V method_61456 tickBreathing + p 1 air +c net/minecraft/class_7202 net/minecraft/client/network/PendingUpdateManager + f I field_37954 sequence + f Z field_37955 pendingSequence + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; field_37953 blockPosToPendingUpdate + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_41940 hasPendingUpdate + p 1 pos + p 2 state + m (ILnet/minecraft/class_638;)V method_41938 processPendingUpdates + p 2 world + p 1 maxProcessableSequence + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_746;)V method_41941 addPendingUpdate + p 1 pos + p 3 player + p 2 state + m ()Lnet/minecraft/class_7202; method_41937 incrementSequence + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_746;Ljava/lang/Long;Lnet/minecraft/class_7202$class_7203;)Lnet/minecraft/class_7202$class_7203; method_41939 method_41939 + p 3 posLong + p 4 pendingUpdate + m ()I method_41942 getSequence + m ()Z method_41943 hasPendingSequence +c net/minecraft/class_7202$class_7203 net/minecraft/client/network/PendingUpdateManager$PendingUpdate + f Lnet/minecraft/class_2680; field_37958 blockState + f Lnet/minecraft/class_243; field_37956 playerPos + f I field_37957 sequence + m (ILnet/minecraft/class_2680;Lnet/minecraft/class_243;)V + p 2 blockState + p 1 sequence + p 3 playerPos + m (I)Lnet/minecraft/class_7202$class_7203; method_41944 withSequence + p 1 sequence + m (Lnet/minecraft/class_2680;)V method_41945 setBlockState + p 1 state +c net/minecraft/class_9871 net/minecraft/entity/boss/dragon/EnderDragonFrameTracker + f I field_52492 currentIndex + f [Lnet/minecraft/class_9871$class_9872; field_52491 frames + m (I)Lnet/minecraft/class_9871$class_9872; method_61484 getFrame + p 1 age + m (DF)V method_61483 tick + p 1 y + p 3 yaw + m (IF)Lnet/minecraft/class_9871$class_9872; method_61485 getLerpedFrame + p 2 tickProgress + p 1 age + m (Lnet/minecraft/class_9871;)V method_61486 copyFrom + p 1 other +c net/minecraft/class_9871$class_9872 net/minecraft/entity/boss/dragon/EnderDragonFrameTracker$Frame + f D comp_2916 y + f F comp_2917 yRot + m ()F comp_2917 yRot + m ()D comp_2916 y + m (DF)V + p 1 y + p 3 yRot +c net/minecraft/class_8541 net/minecraft/client/font/ReferenceFont + f Lcom/mojang/serialization/MapCodec; field_44762 CODEC + f Lnet/minecraft/class_2960; comp_1523 id + m ()Lnet/minecraft/class_2960; comp_1523 id + m (Lnet/minecraft/class_2960;)V + p 1 id + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51647 method_51647 + p 0 instance +c net/minecraft/class_8548 net/minecraft/loot/condition/AllOfLootCondition + f Lcom/mojang/serialization/MapCodec; field_45857 CODEC + f Lcom/mojang/serialization/Codec; field_45858 INLINE_CODEC + m ([Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_8548$class_8549; method_51723 builder + p 0 terms + m (Ljava/util/List;)Lnet/minecraft/class_8548; method_53404 create + p 0 terms + m (Ljava/util/List;)V + p 1 terms +c net/minecraft/class_8548$class_8549 net/minecraft/loot/condition/AllOfLootCondition$Builder +c net/minecraft/class_7218 net/minecraft/command/argument/ArgumentHelper + f Lorg/slf4j/Logger; field_37975 LOGGER + f B field_37977 MAX_FLAG + f B field_37976 MIN_FLAG + m (Lcom/google/gson/JsonObject;Lcom/mojang/brigadier/arguments/ArgumentType;)V method_41987 writeArgument + p 1 argumentType + p 0 json + m (Ljava/util/Set;Ljava/util/Set;Lcom/mojang/brigadier/tree/CommandNode;)V method_41993 method_41993 + p 2 child + m (B)Z method_41986 hasMinFlag + p 0 flags + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_75492 method_75492 + p 0 error + m (B)Z method_41995 hasMaxFlag + p 0 flags + m (Lcom/mojang/brigadier/CommandDispatcher;Lcom/mojang/brigadier/tree/CommandNode;)Lcom/google/gson/JsonObject; method_41990 toJson + p 1 node + p 0 dispatcher + m (ZZ)I method_41994 getMinMaxFlag + p 1 hasMax + p 0 hasMin + m (Lcom/google/gson/JsonObject;Lnet/minecraft/class_2314;Lnet/minecraft/class_2314$class_7217;)V method_71941 writeArgumentTypeProperties + p 0 json + p 2 properties + p 1 serializer + m (Lcom/mojang/brigadier/tree/CommandNode;Ljava/util/Set;Ljava/util/Set;)V method_41992 collectUsedArgumentTypes + p 0 node + p 1 usedArgumentTypes + p 2 visitedNodes + m (Lcom/mojang/brigadier/tree/CommandNode;)Ljava/util/Set; method_41991 collectUsedArgumentTypes + p 0 rootNode +c net/minecraft/class_9879 net/minecraft/entity/vehicle/ExperimentalMinecartController + f D field_52531 totalWeight + f I field_52527 REFRESH_FREQUENCY + f F field_52535 lastQueriedTickProgress + f Ljava/util/List; field_52530 currentLerpSteps + f Lnet/minecraft/class_9879$class_9880; field_52532 initialStep + f Lnet/minecraft/class_9879$class_9881; field_52533 lastReturnedInterpolatedStep + f I field_52536 ticksToNextRefresh + f I field_52534 lastQueriedTicksToNextRefresh + f Ljava/util/List; field_52529 stagingLerpSteps + m (Lnet/minecraft/class_243;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_243; method_61604 accelerateFromPoweredRail + p 3 railState + p 1 velocity + p 2 railPos + m (Lnet/minecraft/class_2768;Lnet/minecraft/class_2768;)Z method_62828 restOnVShapedTrack + c Prevents otherwise stationary minecart from going back and forth on a V-shaped track. + p 1 currentRailShape + p 2 newRailShape + m (Lnet/minecraft/class_243;Lnet/minecraft/class_2768;)Lnet/minecraft/class_243; method_61603 applySlopeVelocity + p 1 horizontalVelocity + p 2 railShape + m (F)Lnet/minecraft/class_243; method_61611 getLerpedVelocity + p 1 tickProgress + m (F)Lnet/minecraft/class_9879$class_9881; method_61612 getLerpedStep + p 1 tickProgress + m ()Z method_61614 hasCurrentLerpSteps + m (Lnet/minecraft/class_238;)Z method_62830 pushAwayFromEntities + p 1 box + m (F)F method_61608 getLerpedYaw + p 1 tickProgress + m (Lnet/minecraft/class_243;Lnet/minecraft/class_2680;)Lnet/minecraft/class_243; method_61602 decelerateFromPoweredRail + p 2 railState + p 1 velocity + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Z)V method_61605 adjustToRail + p 3 ignoreWeight + p 2 blockState + p 1 pos + m (F)Lnet/minecraft/class_243; method_61610 getLerpedPosition + p 1 tickProgress + m (Lnet/minecraft/class_238;)Z method_62829 pickUpEntities + p 1 box + m ()V method_61613 setInitialStep + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_61609 applyInitialVelocity + p 1 horizontalVelocity + m ()V method_61615 tickClient + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_9879$class_9882;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2768;)Lnet/minecraft/class_243; method_61601 calcNewHorizontalVelocity + p 2 horizontalVelocity + p 3 iteration + p 4 pos + p 5 railState + p 1 world + p 6 railShape + m (F)F method_61607 getLerpedPitch + p 1 tickProgress + m (FF)V method_62827 setAngles + p 1 yaw + p 2 pitch + m (Lnet/minecraft/class_243;Lnet/minecraft/class_2768;)Z method_61606 ascends + p 2 railShape + p 1 velocity +c net/minecraft/class_9879$class_9882 net/minecraft/entity/vehicle/ExperimentalMinecartController$MoveIteration + f Z field_52544 slopeVelocityApplied + f Z field_52543 initial + f Z field_52546 accelerated + f Z field_52545 decelerated + f D field_52542 remainingMovement + m ()Z method_61618 shouldContinue +c net/minecraft/class_9879$class_9880 net/minecraft/entity/vehicle/ExperimentalMinecartController$Step + f Lnet/minecraft/class_9879$class_9880; field_52541 ZERO + f Lnet/minecraft/class_9139; field_52540 PACKET_CODEC + f F comp_2925 weight + f F comp_2924 xRot + f F comp_2923 yRot + f Lnet/minecraft/class_243; comp_2921 position + f Lnet/minecraft/class_243; comp_2922 movement + m ()Lnet/minecraft/class_243; comp_2921 position + m ()Lnet/minecraft/class_243; comp_2922 movement + m ()F comp_2925 weight + m ()F comp_2924 xRot + m ()F comp_2923 yRot + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;FFF)V + p 1 position + p 2 movement + p 3 yRot + p 4 xRot + p 5 weight +c net/minecraft/class_9879$class_9881 net/minecraft/entity/vehicle/ExperimentalMinecartController$InterpolatedStep + f F comp_2926 partialTicksInStep + f Lnet/minecraft/class_9879$class_9880; comp_2928 previousStep + f Lnet/minecraft/class_9879$class_9880; comp_2927 currentStep + m ()F comp_2926 partialTicksInStep + m ()Lnet/minecraft/class_9879$class_9880; comp_2927 currentStep + m ()Lnet/minecraft/class_9879$class_9880; comp_2928 previousStep + m (FLnet/minecraft/class_9879$class_9880;Lnet/minecraft/class_9879$class_9880;)V + p 1 partialTicksInStep + p 2 currentStep + p 3 previousStep +c net/minecraft/class_9878 net/minecraft/entity/vehicle/MinecartController + f Lnet/minecraft/class_1688; field_52520 minecart + m (DDD)V method_61579 setVelocity + p 5 z + p 3 y + p 1 x + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_61584 limitSpeed + p 1 velocity + m ()D method_61599 getSpeedRetention + m ()Z method_62826 handleCollision + m ()Lnet/minecraft/class_2350; method_61597 getHorizontalFacing + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2768;D)D method_61577 moveAlongTrack + p 3 remainingMovement + p 2 railShape + p 1 blockPos + m (DDD)V method_61583 setPos + p 5 z + p 3 y + p 1 x + m ()Lnet/minecraft/class_1937; method_61588 getWorld + m ()D method_61593 getY + m ()F method_61595 getPitch + m (Lnet/minecraft/class_243;)V method_61573 setLerpTargetVelocity + m (Lnet/minecraft/class_1688;)V + p 1 minecart + m (Lnet/minecraft/class_243;)V method_61581 setPos + p 1 pos + m ()V method_61587 tick + m (F)V method_61580 setYaw + p 1 yaw + m ()Lnet/minecraft/class_243; method_61591 getPos + m (Lnet/minecraft/class_3218;)V method_61589 moveOnRail + p 1 world + m ()D method_61594 getZ + m ()F method_61596 getYaw + m ()Lnet/minecraft/class_10584; method_66328 getInterpolator + m ()D method_61592 getX + m (F)V method_61575 setPitch + p 1 pitch + m (Lnet/minecraft/class_3218;)D method_61598 getMaxSpeed + p 1 world + m ()Lnet/minecraft/class_243; method_61590 getVelocity + m (Lnet/minecraft/class_243;)V method_61576 setVelocity + p 1 velocity +c net/minecraft/class_7213 net/minecraft/client/render/entity/FrogEntityRenderer + m (Lnet/minecraft/class_7102;Lnet/minecraft/class_10028;F)V method_62446 updateRenderState + m ()Lnet/minecraft/class_10028; method_62447 createRenderState + m (Lnet/minecraft/class_10028;)Lnet/minecraft/class_2960; method_41964 getTexture +c net/minecraft/class_7214 net/minecraft/client/render/entity/TadpoleEntityRenderer + f Lnet/minecraft/class_2960; field_37969 TEXTURE + m ()Lnet/minecraft/class_10042; method_62546 createRenderState +c net/minecraft/class_9875 net/minecraft/recipe/RecipeFinder + f Lnet/minecraft/class_1662; field_52506 recipeMatcher + m (Lnet/minecraft/class_1799;)V method_61541 addInput + p 1 item + m ()V method_61534 clear + m (Lnet/minecraft/class_1860;Lnet/minecraft/class_1662$class_9874;)I method_61543 countCrafts + p 2 itemCallback + p 1 recipe + m (Lnet/minecraft/class_1860;ILnet/minecraft/class_1662$class_9874;)Z method_61537 isCraftable + p 2 quantity + p 3 itemCallback + p 1 recipe + m (Ljava/util/List;ILnet/minecraft/class_1662$class_9874;)Z method_64644 isCraftable + p 1 rawIngredients + p 2 quantity + p 3 itemCallback + m (Lnet/minecraft/class_1860;Lnet/minecraft/class_1662$class_9874;)Z method_61538 isCraftable + p 2 itemCallback + p 1 recipe + m (Ljava/util/List;Lnet/minecraft/class_1662$class_9874;)Z method_64645 isCraftable + p 2 itemCallback + p 1 rawIngredients + m (Lnet/minecraft/class_1860;ILnet/minecraft/class_1662$class_9874;)I method_61542 countCrafts + p 3 itemCallback + p 1 recipe + p 2 max + m (Lnet/minecraft/class_1799;)V method_61535 addInputIfUsable + p 1 item + m (Lnet/minecraft/class_1799;I)V method_61536 addInput + p 2 maxCount + p 1 item +c net/minecraft/class_9849 net/minecraft/util/InterpolatedFlipFlop + f I field_52389 frames + c How many frames it takes to switch from fully off to fully on. + f Lnet/minecraft/class_12301; field_52390 smoothingFunction + f I field_52392 previous + f I field_52391 current + m (F)F method_61339 getValue + p 1 tickProgress + m (I)V + p 1 frames + m (Z)V method_61340 tick + p 1 active + m (ILnet/minecraft/class_12301;)V + p 1 frames + p 2 smoothingFunction +c net/minecraft/class_9848 net/minecraft/util/math/ColorHelper + c Contains color-related helper methods that mostly use ARGB colors represented as {@code 0xAARRGGBB}. + f I field_63677 LINEAR_TO_SRGB_LUT_LENGTH + f [B field_63679 LINEAR_TO_SRGB + f [S field_63678 SRGB_TO_LINEAR + m (I)I method_61338 fromAbgr + p 0 abgr + m (IIII)I method_76062 blend + p 0 blendedAlpha + p 1 alpha + p 2 a + p 3 b + m (F)I method_61317 getWhite + p 0 alpha + m (I)I method_61334 fullAlpha + p 0 argb + m (F)F method_75610 computeSrgbToLinear + p 0 srgb + m (I)Lorg/joml/Vector3f; method_64963 toRgbVector + p 0 rgb + m (I)F method_65101 getRedFloat + p 0 argb + m (II)I method_75606 add + p 1 b + p 0 a + m (IF)I method_75601 scaleAlpha + p 1 scale + p 0 argb + m (I)I method_61337 toAbgr + p 0 argb + m (I)I method_61333 grayscale + p 0 argb + m (II)I method_61328 scaleRgb + p 0 argb + p 1 scale + m (I)I method_75612 whiteWithAlpha + p 0 alpha + m (F)F method_75611 computeLinearToSrgb + p 0 linear + m (II)I method_61332 average + p 1 second + p 0 first + m (I)F method_75600 srgbToLinear + p 0 srgb + m (F)I method_75607 toAlpha + p 0 alpha + m (I)F method_65102 getGreenFloat + p 0 argb + m (FII)I method_75605 lerpLinear + c Interpolates between two colors in linear space. + p 1 start + p 0 delta + p 2 end + m (I)Lorg/joml/Vector4f; method_76335 toRgbaVector + p 0 argb + m (IIII)I method_75602 interpolate + p 1 b + p 2 c + p 3 d + p 0 a + m ([B)V method_75603 method_75603 + p 0 out + m (I)I method_61320 getAlpha + c @return the alpha value of {@code argb}\n\n

The returned value is between {@code 0} and {@code 255} (both inclusive). + p 0 argb + m (F)I method_75599 linearToSrgb + p 0 linear + m (Lnet/minecraft/class_243;)I method_61325 getArgb + p 0 rgb + m (I)I method_75613 toAlpha + p 0 alpha + m (FII)I method_61319 lerp + c Interpolates between two colors in sRGB space. + p 0 delta + p 1 start + p 2 end + m (I)F method_65103 getBlueFloat + p 0 argb + m (II)I method_75608 subtract + p 1 b + p 0 a + m (IIII)I method_61324 getArgb + c @return the ARGB color value from its components + p 3 blue + p 1 red + p 2 green + p 0 alpha + m (I)I method_61329 getGreen + c @return the green value of {@code argb}\n\n

The returned value is between {@code 0} and {@code 255} (both inclusive). + p 0 argb + m (I)I method_61327 getRed + c @return the red value of {@code argb}\n\n

The returned value is between {@code 0} and {@code 255} (both inclusive). + p 0 argb + m (I)I method_61335 zeroAlpha + p 0 argb + m (F)I method_61326 channelFromFloat + p 0 value + m (I)I method_61331 getBlue + c @return the blue value of {@code argb}\n\n

The returned value is between {@code 0} and {@code 255} (both inclusive). + p 0 argb + m (IIII)I method_75609 averageSrgbIntensities + p 1 b + p 0 a + p 3 d + p 2 c + m (IFFF)I method_64602 scaleRgb + p 2 greenScale + p 3 blueScale + p 0 argb + p 1 redScale + m (II)I method_61322 mix + p 1 second + p 0 first + m (IF)I method_70658 withBrightness + p 0 argb + p 1 brightness + m (II)I method_76063 alphaBlend + p 0 a + p 1 b + m (II)I method_61330 withAlpha + p 1 rgb + p 0 alpha + m ([S)V method_75604 method_75604 + p 0 out + m (FI)I method_71346 withAlpha + p 0 alpha + p 1 color + m (IF)I method_61321 scaleRgb + p 1 scale + p 0 argb + m (III)I method_61323 getArgb + c @return the full alpha ARGB color value from its components + p 1 green + p 2 blue + p 0 red + m (FFFF)I method_61318 fromFloats + p 3 blue + p 2 green + p 1 red + p 0 alpha + m (I)F method_61336 floatFromChannel + p 0 channel + m (I)F method_65100 getAlphaFloat + p 0 argb +c net/minecraft/class_8518 net/minecraft/client/util/Icons + f [Ljava/lang/String; field_44652 path + f Lnet/minecraft/class_8518; field_44651 SNAPSHOT + f Lnet/minecraft/class_8518; field_44650 RELEASE + m (Ljava/lang/String;I[Ljava/lang/String;)V + p 3 path + m (Lnet/minecraft/class_3262;)Lnet/minecraft/class_7367; method_51420 getMacIcon + p 1 resourcePack + m (Lnet/minecraft/class_3262;)Ljava/util/List; method_51418 getIcons + p 1 resourcePack + m (Lnet/minecraft/class_3262;Ljava/lang/String;)Lnet/minecraft/class_7367; method_51419 getIcon + p 2 fileName + p 1 resourcePack +c net/minecraft/class_9847 net/minecraft/server/filter/AbstractTextFilterer + f Lorg/slf4j/Logger; field_52365 LOGGER + f Ljava/net/URL; field_52368 url + f Ljava/util/concurrent/atomic/AtomicInteger; field_52366 WORKER_ID + f Ljava/util/concurrent/ExecutorService; field_52371 threadPool + f Ljava/util/concurrent/ThreadFactory; field_52367 THREAD_FACTORY + f Lnet/minecraft/class_9847$class_5515; field_52370 hashIgnorer + f Lnet/minecraft/class_9847$class_7242; field_52369 messageEncoder + m (Lcom/google/gson/JsonObject;Ljava/net/URL;)Lcom/google/gson/JsonObject; method_61302 request + p 1 request + p 2 url + m (Ljava/lang/Runnable;)Ljava/lang/Thread; method_61298 method_61298 + p 0 runnable + m (Ljava/net/HttpURLConnection;)V method_61284 addAuthentication + p 1 connection + m (Lcom/google/gson/JsonObject;Ljava/net/URL;)Ljava/net/HttpURLConnection; method_61294 openConnection + p 2 url + p 1 request + m (Ljava/net/URI;Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/lang/String;)Ljava/net/URL; method_61300 resolveEndpoint + p 1 endpoints + p 0 uri + p 3 defaultPath + p 2 key + m (Ljava/lang/String;Lnet/minecraft/class_9847$class_5515;Lcom/google/gson/JsonObject;)Lnet/minecraft/class_5837; method_61281 filter + p 2 hashIgnorer + p 1 raw + p 3 response + m (I)Ljava/util/concurrent/ExecutorService; method_61291 newThreadPool + p 0 threadCount + m (Lnet/minecraft/class_3806;)Lnet/minecraft/class_9847; method_61292 createTextFilter + p 0 properties + m (Ljava/lang/String;Lcom/google/gson/JsonArray;Lnet/minecraft/class_9847$class_5515;)Lnet/minecraft/class_7649; method_61299 createFilterMask + p 3 hashIgnorer + p 2 redactedTextIndex + p 1 raw + m (Lcom/mojang/authlib/GameProfile;Ljava/lang/String;Lnet/minecraft/class_9847$class_5515;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_61296 filter + p 4 executor + p 3 hashIgnorer + p 2 raw + p 1 profile + m (Ljava/net/URL;Lnet/minecraft/class_9847$class_7242;Lnet/minecraft/class_9847$class_5515;Ljava/util/concurrent/ExecutorService;)V + p 3 hashIgnorer + p 2 messageEncoder + p 4 threadPool + p 1 url + m ()I method_61285 getReadTimeout + m (Ljava/net/URL;)Ljava/net/HttpURLConnection; method_61301 openConnection + p 1 url + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/class_5513; method_31297 createFilterer + p 1 profile + m (Ljava/io/InputStream;)V method_61297 discardRestOfInput + p 1 stream + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_61293 getEndpointPath + p 2 defaultPath + p 0 endpoints + p 1 key +c net/minecraft/class_9847$class_7242 net/minecraft/server/filter/AbstractTextFilterer$MessageEncoder + m (Lcom/mojang/authlib/GameProfile;Ljava/lang/String;)Lcom/google/gson/JsonObject; encode encode + p 1 gameProfile + p 2 message +c net/minecraft/class_9847$class_5515 net/minecraft/server/filter/AbstractTextFilterer$HashIgnorer + f Lnet/minecraft/class_9847$class_5515; field_26834 NEVER_IGNORE + f Lnet/minecraft/class_9847$class_5515; field_26835 IGNORE_IF_MATCHES_ALL + m (ILjava/lang/String;I)Z method_33807 method_33807 + p 2 hashesSize + p 1 hashes + m (Ljava/lang/String;I)Z shouldIgnore shouldIgnore + p 2 hashesSize + p 1 hashes + m (Ljava/lang/String;I)Z method_31310 method_31310 + p 0 hashes + p 1 hashesSize + m (I)Lnet/minecraft/class_9847$class_5515; method_33806 internalDropHashes + p 0 hashesToDrop + m (Ljava/lang/String;I)Z method_31312 method_31312 + p 1 hashesSize + p 0 hashes + m (I)Lnet/minecraft/class_9847$class_5515; method_33808 dropHashes + p 0 hashesToDrop +c net/minecraft/class_9847$class_5516 net/minecraft/server/filter/AbstractTextFilterer$StreamImpl + f Ljava/util/concurrent/Executor; field_26838 executor + f Lcom/mojang/authlib/GameProfile; field_26837 gameProfile + m (Lnet/minecraft/class_9847;Lcom/mojang/authlib/GameProfile;)V + p 2 gameProfile + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; method_31315 method_31315 + p 1 text + m (Ljava/lang/Throwable;)Ljava/util/List; method_33809 method_33809 + p 0 throwable +c net/minecraft/class_9847$class_5517 net/minecraft/server/filter/AbstractTextFilterer$FailedHttpRequestException + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/class_9846 net/minecraft/server/filter/V1TextFilterer + f I field_52363 readTimeout + f Lcom/microsoft/aad/msal4j/ClientCredentialParameters; field_52361 credentialParameters + f Lcom/microsoft/aad/msal4j/ConfidentialClientApplication; field_52360 application + f Ljava/util/Set; field_52362 fullyFilteredEvents + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/authlib/GameProfile;Ljava/lang/String;)Lcom/google/gson/JsonObject; method_61287 method_61287 + p 3 message + p 2 profile + m (Ljava/lang/String;)Lnet/minecraft/class_9847; method_61286 load + p 0 response + m ()Lcom/microsoft/aad/msal4j/IAuthenticationResult; method_61289 getAuthToken + m (Ljava/net/URL;Lnet/minecraft/class_9847$class_7242;Lnet/minecraft/class_9847$class_5515;Ljava/util/concurrent/ExecutorService;Lcom/microsoft/aad/msal4j/ConfidentialClientApplication;Lcom/microsoft/aad/msal4j/ClientCredentialParameters;Ljava/util/Set;I)V + p 1 url + p 3 hashIgnorer + p 2 messageEncoder + p 5 application + p 4 threadPool + p 7 fullyFilteredEvents + p 6 credentialParameters + p 8 readTimeout + m (Ljava/util/Set;Lcom/google/gson/JsonElement;)V method_61288 method_61288 + p 1 json +c net/minecraft/class_8514 net/minecraft/world/event/Vibrations + f Ljava/util/function/ToIntFunction; field_44639 FREQUENCIES + f Ljava/util/List; field_44638 RESONATIONS + f I field_47839 DEFAULT_FREQUENCY + m (FI)I method_51384 getSignalStrength + p 1 range + p 0 distance + m (Lnet/minecraft/class_5321;)I method_51385 getFrequency + p 0 gameEvent + m ()Lnet/minecraft/class_8514$class_5719; method_51299 getVibrationCallback + m (Lnet/minecraft/class_6880;)I method_55783 getFrequency + p 0 gameEvent + m ()Lnet/minecraft/class_8514$class_8515; method_51298 getVibrationListenerData + m (Lit/unimi/dsi/fastutil/objects/Reference2IntOpenHashMap;)V method_51383 method_51383 + p 0 frequencies + m (I)Lnet/minecraft/class_5321; method_51386 getResonation + p 0 frequency +c net/minecraft/class_8514$class_5719 net/minecraft/world/event/Vibrations$Callback + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;F)V method_32969 accept + c Accepts a game event after delay. + p 4 sourceEntity + p 3 event + p 6 distance + p 5 entity + p 2 pos + p 1 world + m ()I method_49797 getRange + m ()Lnet/minecraft/class_5716; method_51300 getPositionSource + m ()V method_42672 onListen + m ()Z method_51363 requiresTickingChunksAround + m ()Lnet/minecraft/class_6862; method_42210 getTag + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_5712$class_7397;)Z method_42324 canAccept + p 1 gameEvent + p 2 emitter + m (F)I method_51410 getDelay + p 1 distance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;Lnet/minecraft/class_5712$class_7397;)Z method_32970 accepts + c Returns whether the callback wants to accept this event. + p 2 pos + p 1 world + p 4 emitter + p 3 event + m ()Z method_43695 triggersAvoidCriterion +c net/minecraft/class_8514$class_8517 net/minecraft/world/event/Vibrations$Ticker + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8514$class_8515;Lnet/minecraft/class_8514$class_5719;)V method_51409 spawnVibrationParticle + p 1 listenerData + p 2 callback + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8514$class_8515;Lnet/minecraft/class_8514$class_5719;)V method_51404 tryListen + p 0 world + p 1 listenerData + p 2 callback + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_51407 areChunksTickingAround + p 0 world + p 1 pos + m (Lnet/minecraft/class_8514$class_8515;Lnet/minecraft/class_8514$class_5719;Lnet/minecraft/class_3218;Lnet/minecraft/class_7269;)V method_51408 method_51408 + p 3 vibration + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8514$class_8515;Lnet/minecraft/class_8514$class_5719;Lnet/minecraft/class_7269;)Z method_51405 accept + p 3 vibration + p 0 world + p 1 listenerData + p 2 callback + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_8514$class_8515;Lnet/minecraft/class_8514$class_5719;)V method_51406 tick + p 2 callback + p 1 listenerData + p 0 world +c net/minecraft/class_8514$class_8516 net/minecraft/world/event/Vibrations$VibrationListener + f Lnet/minecraft/class_8514; field_44646 receiver + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8514$class_8515;Lnet/minecraft/class_6880;Lnet/minecraft/class_5712$class_7397;Lnet/minecraft/class_243;Lnet/minecraft/class_243;)V method_51399 listen + p 5 emitterPos + p 6 listenerPos + p 3 event + p 4 emitter + p 1 world + p 2 listenerData + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6880;Lnet/minecraft/class_5712$class_7397;Lnet/minecraft/class_243;)V method_51403 forceListen + p 1 world + p 3 emitter + p 2 event + p 4 emitterPos + m (Lnet/minecraft/class_8514;)V + p 1 receiver + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6880;Lnet/minecraft/class_5712$class_7397;Lnet/minecraft/class_243;Lnet/minecraft/class_243;)V method_51398 method_51398 + p 5 pos + m (Lnet/minecraft/class_2680;)Z method_51401 method_51401 + p 0 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_243;Lnet/minecraft/class_243;)Z method_51400 isOccluded + p 0 world + p 1 emitterPos + p 2 listenerPos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)F method_51402 getTravelDelay + p 1 listenerPos + p 0 emitterPos +c net/minecraft/class_8514$class_8515 net/minecraft/world/event/Vibrations$ListenerData + f I field_44643 delay + f Ljava/lang/String; field_44641 LISTENER_NBT_KEY + f Z field_44645 spawnParticle + f Lcom/mojang/serialization/Codec; field_44640 CODEC + f Lnet/minecraft/class_7722; field_44644 vibrationSelector + f Lnet/minecraft/class_7269; field_44642 vibration + m ()Lnet/minecraft/class_7722; method_51387 getSelector + m (Lnet/minecraft/class_7269;)V method_51390 setVibration + p 1 vibration + m (Lnet/minecraft/class_8514$class_8515;)Ljava/util/Optional; method_51391 method_51391 + p 0 listenerData + m (I)V method_51388 setDelay + p 1 delay + m ()I method_51395 getDelay + m (Lnet/minecraft/class_7269;Lnet/minecraft/class_7722;IZ)V + p 2 vibrationSelector + p 3 delay + p 1 vibration + p 4 spawnParticle + m (Z)V method_51393 setSpawnParticle + p 1 spawnParticle + m ()Lnet/minecraft/class_7269; method_51394 getVibration + m ()Z method_51397 shouldSpawnParticle + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51389 method_51389 + p 0 instance + m ()V method_51396 tickDelay + m (Ljava/util/Optional;Lnet/minecraft/class_7722;Ljava/lang/Integer;)Lnet/minecraft/class_8514$class_8515; method_51392 method_51392 + p 0 vibration + p 2 delay + p 1 selector +c net/minecraft/class_9843 net/minecraft/util/crash/SuppressedExceptionsTracker + f Lit/unimi/dsi/fastutil/objects/Object2IntLinkedOpenHashMap; field_52348 keyToCount + f I field_52346 MAX_QUEUE_SIZE + f Ljava/util/Queue; field_52347 queue + m ()J method_61251 currentTimeMillis + m ()Ljava/lang/String; method_61249 collect + m (Ljava/lang/String;Ljava/lang/Throwable;)V method_61250 onSuppressedException + p 1 location + p 2 exception +c net/minecraft/class_9843$class_9845 net/minecraft/util/crash/SuppressedExceptionsTracker$Key + f Ljava/lang/Class; comp_2905 cls + f Ljava/lang/String; comp_2904 location + m ()Ljava/lang/Class; comp_2905 cls + m ()Ljava/lang/String; comp_2904 location + m (Ljava/lang/String;Ljava/lang/Class;)V + p 1 location + p 2 cls +c net/minecraft/class_9843$class_9844 net/minecraft/util/crash/SuppressedExceptionsTracker$Entry + f Ljava/lang/Class; comp_2902 cls + f J comp_2900 timestampMs + f Ljava/lang/String; comp_2901 location + f Ljava/lang/String; comp_2903 message + m ()J comp_2900 timestampMs + m ()Ljava/lang/Class; comp_2902 cls + m ()Ljava/lang/String; comp_2903 message + m ()Ljava/lang/String; comp_2901 location + m (JLjava/lang/String;Ljava/lang/Class;Ljava/lang/String;)V + p 1 timestampMs + p 3 location + p 4 cls + p 5 message +c net/minecraft/class_8508 net/minecraft/advancement/criterion/RecipeCraftedCriterion + m (Lnet/minecraft/class_5321;Ljava/util/List;Lnet/minecraft/class_8508$class_8509;)Z method_51349 method_51349 + p 2 conditions + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_5321;Ljava/util/List;)V method_51350 trigger + p 1 player + p 2 recipeKey + p 3 ingredients +c net/minecraft/class_8508$class_8509 net/minecraft/advancement/criterion/RecipeCraftedCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47327 CODEC + f Lnet/minecraft/class_5321; comp_2087 recipeId + f Ljava/util/List; comp_2088 ingredients + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_175; method_58450 createCrafterRecipeCrafted + p 0 recipeKey + m (Lnet/minecraft/class_5321;Ljava/util/List;)Lnet/minecraft/class_175; method_51353 create + p 0 recipeKey + p 1 ingredients + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_175; method_51352 create + p 0 recipeKey + m (Ljava/util/Optional;Lnet/minecraft/class_5321;Ljava/util/List;)V + p 1 playerPredicate + p 3 ingredients + p 2 recipeId + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55106 method_55106 + p 0 instance + m (Lnet/minecraft/class_5321;Ljava/util/List;)Z method_51354 matches + p 2 ingredients + p 1 recipeKey + m ()Lnet/minecraft/class_5321; comp_2087 recipeId + m ()Ljava/util/List; comp_2088 ingredients +c net/minecraft/class_9852 net/minecraft/datafixer/fix/AttributeIdPrefixFix + f Ljava/util/List; field_52398 PREFIXES + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Ljava/lang/String;)Ljava/lang/String; method_61359 removePrefix + p 0 id +c net/minecraft/class_8520 net/minecraft/client/render/debug/LightDebugRenderer + f I field_44678 DEFAULT_SHAPE_COLOR + f Lnet/minecraft/class_1944; field_44680 lightType + f I field_44677 READY_SHAPE_COLOR + f I field_44676 RADIUS + f Lnet/minecraft/class_310; field_44679 client + f Ljava/time/Instant; field_44681 lastUpdateTime + f Lnet/minecraft/class_8520$class_8521; field_44682 data + f Ljava/time/Duration; field_44675 UPDATE_INTERVAL + m (IIIIIII)V method_51459 drawEdge + m (Lnet/minecraft/class_2350;IIII)V method_51460 drawFace + m (Lnet/minecraft/class_251;Lnet/minecraft/class_4076;I)V method_51458 drawEdges + m (Lnet/minecraft/class_251;Lnet/minecraft/class_4076;I)V method_51457 drawFaces + m (Lnet/minecraft/class_310;Lnet/minecraft/class_1944;)V + p 2 lightType + p 1 client +c net/minecraft/class_8520$class_8521 net/minecraft/client/render/debug/LightDebugRenderer$Data + f Lnet/minecraft/class_4076; field_44686 minSectionPos + f Lnet/minecraft/class_251; field_44684 readyShape + f Lnet/minecraft/class_251; field_44685 shape + m (Lnet/minecraft/class_3568;Lnet/minecraft/class_4076;ILnet/minecraft/class_1944;)V + p 4 lightType + p 3 radius + p 2 sectionPos + p 1 lightingProvider +c net/minecraft/class_9851 net/minecraft/util/TriState + f Lcom/mojang/serialization/Codec; field_64315 CODEC + f Ljava/lang/String; field_64316 name + f Lnet/minecraft/class_9851; field_52394 TRUE + f Lnet/minecraft/class_9851; field_52396 DEFAULT + f Lnet/minecraft/class_9851; field_52395 FALSE + m (Z)Lnet/minecraft/class_9851; method_76393 ofBoolean + p 0 value + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m (Lnet/minecraft/class_9851;)Lcom/mojang/datafixers/util/Either; method_76391 method_76391 + p 0 triState + m (Z)Z method_61348 asBoolean + p 1 fallback + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_9851; method_76392 method_76392 + p 0 either +c net/minecraft/class_8528 net/minecraft/world/chunk/light/ChunkSkyLight + f Lnet/minecraft/class_2338$class_2339; field_44715 reusableBlockPos2 + f Lnet/minecraft/class_2338$class_2339; field_44714 reusableBlockPos1 + f Lnet/minecraft/class_6490; field_44713 palette + f I field_44712 minY + m (Lnet/minecraft/class_2791;III)I method_51541 calculateSurfaceY + p 4 localZ + p 3 localX + p 2 topSectionIndex + p 1 chunk + m (Lnet/minecraft/class_2791;)V method_51540 refreshSurfaceY + p 1 chunk + m (II)I method_51535 get + p 1 localX + p 2 localZ + m ()I method_51533 getMaxSurfaceY + m (II)I method_51545 getPackedIndex + p 0 localX + p 1 localZ + m (I)I method_51544 convertMinY + p 1 y + m (I)I method_51542 get + p 1 index + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)Z method_51539 faceBlocksLight + p 1 lower + p 0 upper + m (II)V method_51543 set + p 1 index + p 2 y + m (Lnet/minecraft/class_5539;)V + p 1 heightLimitView + m (Lnet/minecraft/class_1922;IILnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_51537 isSkyLightAccessible + p 4 upperPos + p 3 value + p 2 packedIndex + p 1 blockView + p 7 lowerState + p 6 lowerPos + p 5 upperState + m (I)V method_51534 fill + p 1 y + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)I method_51538 locateLightBlockingBlockBelow + p 1 blockView + p 2 pos + p 3 blockState + m (Lnet/minecraft/class_1922;III)Z method_51536 isSkyLightAccessible + p 3 y + p 4 localZ + p 1 blockView + p 2 localX +c net/minecraft/class_8526 net/minecraft/block/entity/Sherds + f Lcom/mojang/serialization/Codec; field_49414 CODEC + f Lnet/minecraft/class_9139; field_49415 PACKET_CODEC + f Lnet/minecraft/class_8526; field_44707 DEFAULT + f Ljava/util/Optional; comp_1490 front + f Ljava/util/Optional; comp_1488 left + f Ljava/util/Optional; comp_1487 back + f Ljava/util/Optional; comp_1489 right + m ()Ljava/util/List; method_51512 toList + m (Ljava/util/function/Consumer;Ljava/util/Optional;)V method_67242 appendSherdTooltip + p 1 sherdItem + p 0 textConsumer + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;)V + p 4 front + p 3 right + p 2 left + p 1 back + m (Ljava/util/Optional;)Lnet/minecraft/class_1792; method_57592 method_57592 + p 0 item + m (Ljava/util/List;I)Ljava/util/Optional; method_51514 getSherd + p 1 index + p 0 sherds + m (Ljava/util/List;)V + p 1 sherds + m ()Ljava/util/Optional; comp_1487 back + m ()Ljava/util/Optional; comp_1488 left + m ()Ljava/util/Optional; comp_1489 right + m ()Ljava/util/Optional; comp_1490 front + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 back + p 2 left + p 3 right + p 4 front +c net/minecraft/class_8527 net/minecraft/world/chunk/light/LightSourceView + m ()Lnet/minecraft/class_8528; method_12018 getChunkSkyLight + m (Ljava/util/function/BiConsumer;)V method_51524 forEachLightSource + p 1 callback +c net/minecraft/class_9856 net/minecraft/datafixer/fix/OminousBannerRarityFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;)Lcom/mojang/datafixers/Typed; method_61387 fixNameAndRarity +c net/minecraft/class_8525 net/minecraft/datafixer/fix/ChunkDeleteLightFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_9854 net/minecraft/datafixer/fix/CarvingStepRemoveFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_61371 removeCarvingMasks +c net/minecraft/class_8523 net/minecraft/resource/DependencyTracker + f Ljava/util/Map; field_44702 underlying + m (Lcom/google/common/collect/Multimap;Ljava/util/Set;Ljava/util/function/BiConsumer;Ljava/lang/Object;)V method_51485 method_51485 + p 4 key + m (Ljava/util/function/BiConsumer;)V method_51487 traverse + p 1 callback + m (Lcom/google/common/collect/Multimap;Ljava/util/Set;Ljava/util/function/BiConsumer;Ljava/lang/Object;)V method_51490 method_51490 + p 4 child + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)V method_51489 addDependency + p 0 dependencies + p 2 dependency + p 1 key + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Lnet/minecraft/class_8523$class_8524;)V method_51482 method_51482 + p 1 key + p 2 value + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)Z method_51493 method_51493 + p 2 subdependency + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)Z method_51483 containsReverseDependency + p 1 key + p 2 dependency + p 0 dependencies + m (Ljava/lang/Object;Lnet/minecraft/class_8523$class_8524;)Lnet/minecraft/class_8523; method_51486 add + p 1 key + p 2 value + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Lnet/minecraft/class_8523$class_8524;)V method_51488 method_51488 + p 1 key + p 2 value + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)V method_51491 method_51491 + p 2 dependency + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)V method_51492 method_51492 + p 2 dependency + m (Lcom/google/common/collect/Multimap;Ljava/util/Set;Ljava/lang/Object;Ljava/util/function/BiConsumer;)V method_51484 traverse + p 1 parentChild + p 4 callback + p 3 rootKey + p 2 visited +c net/minecraft/class_8523$class_8524 net/minecraft/resource/DependencyTracker$Dependencies + m (Ljava/util/function/Consumer;)V method_51478 forDependencies + p 1 callback + m (Ljava/util/function/Consumer;)V method_51480 forOptionalDependencies + p 1 callback +c net/minecraft/class_9853 net/minecraft/datafixer/fix/AttributeRenameFix + f Ljava/lang/String; field_52399 name + f Ljava/util/function/UnaryOperator; field_52400 renamer + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/UnaryOperator;)V + p 2 name + p 1 outputSchema + p 3 renamer + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_61361 applyToIdField + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_61363 applyToEntity + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_61360 applyToComponents + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_61364 applyToTypeField +c net/minecraft/class_8519 net/minecraft/client/gui/screen/SplashTextRenderer + f Lnet/minecraft/class_2561; field_44666 text + f I field_44665 TEXT_Y + f I field_44664 TEXT_X + f Lnet/minecraft/class_8519; field_44663 OOOOO_O_O_OOOOO__SPOOKY + f Lnet/minecraft/class_8519; field_44662 HAPPY_NEW_YEAR + f Lnet/minecraft/class_8519; field_44661 MERRY_X_MAS + f F field_63884 TEXT_ROTATION + m (Lnet/minecraft/class_332;ILnet/minecraft/class_327;F)V method_51453 render + p 3 textRenderer + p 4 alpha + p 1 context + p 2 screenWidth + m (Lnet/minecraft/class_2561;)V + p 1 text +c net/minecraft/class_3962 net/minecraft/block/ComposterBlock + f I field_31073 MAX_LEVEL + f I field_31072 MIN_LEVEL + f Lcom/mojang/serialization/MapCodec; field_46320 CODEC + f I field_31071 NUM_LEVELS + f Lit/unimi/dsi/fastutil/objects/Object2FloatMap; field_17566 ITEM_TO_LEVEL_INCREASE_CHANCE + f [Lnet/minecraft/class_265; field_17568 COLLISION_SHAPES_BY_LEVEL + f Lnet/minecraft/class_2758; field_17565 LEVEL + m (I)Lnet/minecraft/class_265; method_66425 method_66425 + p 0 level + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Z)V method_18027 playEffects + p 0 world + p 1 pos + p 2 fill + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_26373 compost + p 0 user + p 2 world + p 1 state + p 4 pos + p 3 stack + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_17759 emptyComposter + p 3 pos + p 2 world + p 1 state + p 0 user + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)Lnet/minecraft/class_2680; method_17756 addToComposter + p 0 user + p 2 world + p 1 state + p 4 stack + p 3 pos + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_26374 emptyFullComposter + p 3 pos + p 2 world + p 1 state + p 0 user + m ()V method_17758 registerDefaultCompostableItems + m (FLnet/minecraft/class_1935;)V method_17753 registerCompostableItem + p 1 item + p 0 levelIncreaseChance +c net/minecraft/class_3962$class_3925 net/minecraft/block/ComposterBlock$DummyInventory +c net/minecraft/class_3962$class_3964 net/minecraft/block/ComposterBlock$FullComposterInventory + f Lnet/minecraft/class_2338; field_17575 pos + f Lnet/minecraft/class_2680; field_17573 state + f Lnet/minecraft/class_1936; field_17574 world + f Z field_17576 dirty + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)V + p 3 pos + p 4 outputItem + p 1 state + p 2 world +c net/minecraft/class_3962$class_3963 net/minecraft/block/ComposterBlock$ComposterInventory + f Lnet/minecraft/class_2338; field_17571 pos + f Z field_17572 dirty + f Lnet/minecraft/class_1936; field_17570 world + f Lnet/minecraft/class_2680; field_17569 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)V + p 2 world + p 3 pos + p 1 state +c net/minecraft/class_2631 net/minecraft/block/entity/SkullBlockEntity + f I field_41315 poweredTicks + f Lnet/minecraft/class_9296; field_12087 owner + f Z field_41316 powered + f Lnet/minecraft/class_2960; field_41603 noteBlockSound + f Lnet/minecraft/class_2561; field_49765 customName + f Ljava/lang/String; field_49762 PROFILE_NBT_KEY + f Ljava/lang/String; field_49763 CUSTOM_NAME_NBT_KEY + f Ljava/lang/String; field_41602 NOTE_BLOCK_SOUND_NBT_KEY + m ()Lnet/minecraft/class_2960; method_47888 getNoteBlockSound + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2631;)V method_47589 tick + p 1 pos + p 0 world + p 3 blockEntity + p 2 state + m ()Lnet/minecraft/class_9296; method_11334 getOwner + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m ()Lnet/minecraft/class_2622; method_38250 toUpdatePacket + m (F)F method_47588 getPoweredTicks + p 1 tickProgress +c net/minecraft/class_2632 net/minecraft/network/packet/s2c/play/DifficultyS2CPacket + f Z comp_4283 difficultyLocked + f Lnet/minecraft/class_1267; comp_4282 difficulty + f Lnet/minecraft/class_9139; field_47907 CODEC + m (Lnet/minecraft/class_2602;)V method_11341 apply + m ()Z comp_4283 difficultyLocked + m ()Lnet/minecraft/class_1267; comp_4282 difficulty + m (Lnet/minecraft/class_1267;Z)V + p 1 difficulty + p 2 difficultyLocked +c net/minecraft/class_2633 net/minecraft/block/entity/StructureBlockBlockEntity + f Ljava/lang/String; field_57787 DEFAULT_AUTHOR + f Ljava/lang/String; field_12104 author + f J field_57799 DEFAULT_SEED + f Z field_55823 strict + f Z field_12099 ignoreEntities + f Z field_57794 DEFAULT_STRICT + f Z field_12095 showBoundingBox + f F field_12101 integrity + f Lnet/minecraft/class_2382; field_12100 size + f Lnet/minecraft/class_2470; field_12105 rotation + f Ljava/lang/String; field_57788 DEFAULT_METADATA + f Ljava/lang/String; field_12098 metadata + f Lnet/minecraft/class_2338; field_57789 DEFAULT_OFFSET + f Z field_12096 showAir + f Z field_57795 DEFAULT_POWERED + f Lnet/minecraft/class_2415; field_57792 DEFAULT_MIRROR + f Z field_12097 powered + f Z field_57796 DEFAULT_SHOW_AIR + f J field_12103 seed + f Lnet/minecraft/class_2960; field_12102 templateName + f Lnet/minecraft/class_2415; field_12093 mirror + f Ljava/lang/String; field_31366 AUTHOR_KEY + f Lnet/minecraft/class_2382; field_57790 DEFAULT_SIZE + f F field_57798 DEFAULT_INTEGRITY + f Lnet/minecraft/class_2776; field_12094 mode + f Z field_57793 DEFAULT_IGNORE_ENTITIES + f Z field_57797 DEFAULT_SHOW_BOUNDING_BOX + f Lnet/minecraft/class_2470; field_57791 DEFAULT_ROTATION + f Lnet/minecraft/class_2338; field_12092 offset + m (Lnet/minecraft/class_3218;)V method_54878 loadAndPlaceStructure + p 1 world + m (Lnet/minecraft/class_1657;)Z method_11351 openScreen + p 1 player + m ()F method_11346 getIntegrity + m (Lnet/minecraft/class_3499;)V method_54877 loadStructure + p 1 template + m ()Z method_11357 shouldShowBoundingBox + m (Lnet/minecraft/class_2586;)Z method_34278 method_34278 + p 0 blockEntity + m ()V method_11361 unloadStructure + m ()Z method_11365 saveStructure + m (Lnet/minecraft/class_1309;)V method_11373 setAuthor + p 1 entity + m ()Lnet/minecraft/class_2622; method_38252 toUpdatePacket + m (Lnet/minecraft/class_2960;)V method_11344 setTemplateName + p 1 templateName + m ()Ljava/lang/String; method_11362 getTemplateName + m ()Lnet/minecraft/class_2338; method_11359 getOffset + m ()Ljava/lang/String; method_11358 getMetadata + m (J)Lnet/minecraft/class_5819; method_20048 createRandom + p 0 seed + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_3499;)V method_54875 loadAndPlaceStructure + p 2 template + p 1 world + m (Lnet/minecraft/class_3218;)Z method_54874 loadAndTryPlaceStructure + p 1 world + m (Lnet/minecraft/class_2776;)V method_11381 setMode + p 1 mode + m (Lnet/minecraft/class_3218;)Lnet/minecraft/class_3499; method_54879 getStructureTemplate + p 1 world + m (Z)Z method_11366 saveStructure + p 1 toDisk + m (Lnet/minecraft/class_2338;)Z method_34279 method_34279 + p 1 pos + m ()Z method_11354 isPowered + m ()J method_11371 getSeed + m (Lnet/minecraft/class_2338;Ljava/util/stream/Stream;)Ljava/util/Optional; method_34277 getStructureBox + p 0 pos + p 1 corners + m (J)V method_11382 setSeed + p 1 seed + m (Lnet/minecraft/class_2338;)V method_11378 setOffset + p 1 offset + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2960;Lnet/minecraft/class_2338;Lnet/minecraft/class_2382;ZLjava/lang/String;ZLjava/util/List;)Z method_66717 saveStructure + p 0 world + p 5 author + p 6 toDisk + p 3 size + p 4 ignoreEntities + p 1 templateId + p 2 start + m ()Lnet/minecraft/class_2776; method_11374 getMode + m (Z)V method_66476 setStrict + m ()Z method_11383 detectStructureSize + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Ljava/util/stream/Stream; method_34276 streamCornerPos + c Streams positions of {@link StructureBlockMode#CORNER} mode structure blocks with matching names. + p 1 start + p 2 end + m ()Lnet/minecraft/class_2470; method_11353 getRotation + m ()Z method_11367 shouldIgnoreEntities + m (F)V method_11370 setIntegrity + p 1 integrity + m ()Z method_11375 shouldShowAir + m (Z)V method_11379 setPowered + p 1 powered + m (Z)V method_11347 setShowAir + p 1 showAir + m (Ljava/lang/String;)V method_11363 setMetadata + p 1 metadata + m (Ljava/lang/String;)V method_11343 setTemplateName + p 1 templateName + m ()V method_11348 updateBlockMode + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_54876 method_54876 + p 1 pos + m (Lnet/minecraft/class_2470;)V method_11385 setRotation + p 1 rotation + m ()Lnet/minecraft/class_2415; method_11345 getMirror + m ()Z method_66477 isStrict + m (Lnet/minecraft/class_2586;)Lnet/minecraft/class_2633; method_34273 method_34273 + p 0 blockEntity + m (Lnet/minecraft/class_2633;)Z method_34274 method_34274 + p 1 blockEntity + m ()Lnet/minecraft/class_2382; method_11349 getSize + m ()Z method_11372 isStructureAvailable + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3341;)Z method_34275 method_34275 + p 2 box + m (Z)V method_11352 setIgnoreEntities + p 1 ignoreEntities + m (Lnet/minecraft/class_2382;)V method_11377 setSize + p 1 size + m (Z)V method_11360 setShowBoundingBox + p 1 showBoundingBox + m (Lnet/minecraft/class_2415;)V method_11356 setMirror + p 1 mirror + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state + m ()Z method_11384 hasStructureName + m (Lnet/minecraft/class_3218;)Z method_11376 loadStructure + p 1 world +c net/minecraft/class_2633$class_2634 net/minecraft/block/entity/StructureBlockBlockEntity$Action + f Lnet/minecraft/class_2633$class_2634; field_12110 SAVE_AREA + f Lnet/minecraft/class_2633$class_2634; field_12106 SCAN_AREA + f Lnet/minecraft/class_2633$class_2634; field_12109 LOAD_AREA + f Lnet/minecraft/class_2633$class_2634; field_12108 UPDATE_DATA +c net/minecraft/class_1301 net/minecraft/predicate/entity/EntityPredicates + f Ljava/util/function/Predicate; field_35589 CAN_COLLIDE + f Ljava/util/function/Predicate; field_52443 CAN_HIT + f Ljava/util/function/Predicate; field_6156 EXCEPT_CREATIVE_OR_SPECTATOR + f Ljava/util/function/Predicate; field_6157 VALID_LIVING_ENTITY + c Tests if a living entity is valid.\n\n

A living entity is valid when the entity is alive.\n\n@see net.minecraft.entity.LivingEntity#isAlive() + f Ljava/util/function/Predicate; field_6152 VALID_INVENTORIES + c Tests if an entity has a valid inventory.\n\n

An entity has a valid inventory when:\n\n

  • The entity is alive\n
  • The entity implements {@link net.minecraft.inventory.Inventory}\n
\n\n@see net.minecraft.entity.vehicle.StorageMinecartEntity + f Ljava/util/function/Predicate; field_6153 NOT_MOUNTED + c Tests if an entity is not mounted.\n\n

An entity is not mounted when:\n\n

  • The entity is alive\n
  • The entity has no passengers\n
  • The entity is not in a vehicle\n
+ f Ljava/util/function/Predicate; field_6154 VALID_ENTITY + c Tests if an entity is valid.\n\n

An entity is valid when the entity is alive.\n\n@see net.minecraft.entity.Entity#isAlive() + f Ljava/util/function/Predicate; field_6155 EXCEPT_SPECTATOR + m (Lnet/minecraft/class_1297;)Z method_24517 method_24517 + p 0 entity + m (Lnet/minecraft/class_1297;)Z method_5914 method_5914 + p 0 entity + m (Lnet/minecraft/class_1297;)Z method_71613 method_71613 + p 0 entity + m (Lnet/minecraft/class_1297;)Z method_5908 method_5908 + p 0 entity + m (Lnet/minecraft/class_1297;)Ljava/util/function/Predicate; method_5911 canBePushedBy + p 0 entity + m (DDDDLnet/minecraft/class_1297;)Z method_5912 method_5912 + p 8 entity + m (Lnet/minecraft/class_1297;)Ljava/util/function/Predicate; method_5913 rides + p 0 entity + m (Lnet/minecraft/class_1297;)Z method_32878 method_32878 + p 0 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)Z method_5906 method_5906 + p 1 testedEntity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_270;Lnet/minecraft/class_270$class_271;Lnet/minecraft/class_1297;)Z method_5915 method_5915 + p 3 entityx + m (DDDD)Ljava/util/function/Predicate; method_5909 maxDistance + p 0 x + p 2 y + p 4 z + p 6 max + m (Lnet/minecraft/class_1297;)Z method_5910 method_5910 + p 0 entity +c net/minecraft/class_2627 net/minecraft/block/entity/ShulkerBoxBlockEntity + f [I field_12059 AVAILABLE_SLOTS + f I field_12053 viewerCount + f Lnet/minecraft/class_2371; field_12054 inventory + f Lnet/minecraft/class_1767; field_12060 cachedColor + f I field_31356 INVENTORY_SIZE + f Lnet/minecraft/class_2561; field_63046 CONTAINER_NAME_TEXT + f Lnet/minecraft/class_2627$class_2628; field_12057 animationStage + f F field_12056 animationProgress + f F field_12055 lastAnimationProgress + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2627;)V method_31694 tick + p 3 blockEntity + p 2 state + p 1 pos + p 0 world + m ()Lnet/minecraft/class_2627$class_2628; method_11313 getAnimationStage + m (F)F method_11312 getAnimationProgress + p 1 tickProgress + m ()Z method_27093 suffocates + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_11316 pushEntities + p 2 pos + p 3 state + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_11318 updateAnimation + p 1 world + p 2 pos + p 3 state + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m ()Lnet/minecraft/class_1767; method_11320 getColor + m (Lnet/minecraft/class_11368;)V method_11319 readInventoryNbt + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 color + p 2 pos + p 3 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_20047 updateNeighborStates + p 1 pos + p 2 state + p 0 world + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_238; method_11314 getBoundingBox + p 1 state +c net/minecraft/class_2627$class_2628 net/minecraft/block/entity/ShulkerBoxBlockEntity$AnimationStage + f Lnet/minecraft/class_2627$class_2628; field_12063 OPENED + f Lnet/minecraft/class_2627$class_2628; field_12064 CLOSING + f Lnet/minecraft/class_2627$class_2628; field_12065 CLOSED + f Lnet/minecraft/class_2627$class_2628; field_12066 OPENING +c net/minecraft/class_3959 net/minecraft/world/RaycastContext + f Lnet/minecraft/class_3959$class_3960; field_17555 shapeType + f Lnet/minecraft/class_3959$class_242; field_17556 fluid + f Lnet/minecraft/class_3726; field_17557 shapeContext + f Lnet/minecraft/class_243; field_17554 end + f Lnet/minecraft/class_243; field_17553 start + m ()Lnet/minecraft/class_243; method_17750 getStart + m (Lnet/minecraft/class_3610;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265; method_17749 getFluidShape + p 3 pos + p 2 world + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265; method_17748 getBlockShape + p 3 pos + p 1 state + p 2 world + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_3959$class_3960;Lnet/minecraft/class_3959$class_242;Lnet/minecraft/class_1297;)V + p 3 shapeType + p 2 end + p 1 start + p 5 entity + p 4 fluidHandling + m ()Lnet/minecraft/class_243; method_17747 getEnd + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_3959$class_3960;Lnet/minecraft/class_3959$class_242;Lnet/minecraft/class_3726;)V + p 5 shapeContext + p 1 start + p 2 end + p 3 shapeType + p 4 fluidHandling +c net/minecraft/class_3959$class_3961 net/minecraft/world/RaycastContext$ShapeProvider + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3726;)Lnet/minecraft/class_265; get get + p 1 state + p 2 world + p 3 pos + p 4 context +c net/minecraft/class_3959$class_3960 net/minecraft/world/RaycastContext$ShapeType + f Lnet/minecraft/class_3959$class_3961; field_17560 provider + f Lnet/minecraft/class_3959$class_3960; field_17558 COLLIDER + f Lnet/minecraft/class_3959$class_3960; field_17559 OUTLINE + f Lnet/minecraft/class_3959$class_3960; field_36337 FALLDAMAGE_RESETTING + f Lnet/minecraft/class_3959$class_3960; field_23142 VISUAL + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3726;)Lnet/minecraft/class_265; method_40007 method_40007 + p 3 context + p 2 pos + p 1 world + p 0 state + m (Ljava/lang/String;ILnet/minecraft/class_3959$class_3961;)V + p 3 provider +c net/minecraft/class_3959$class_242 net/minecraft/world/RaycastContext$FluidHandling + f Ljava/util/function/Predicate; field_1346 predicate + f Lnet/minecraft/class_3959$class_242; field_36338 WATER + f Lnet/minecraft/class_3959$class_242; field_1345 SOURCE_ONLY + f Lnet/minecraft/class_3959$class_242; field_1347 ANY + f Lnet/minecraft/class_3959$class_242; field_1348 NONE + m (Lnet/minecraft/class_3610;)Z method_1017 method_1017 + p 0 state + m (Lnet/minecraft/class_3610;)Z method_17751 handled + p 1 state + m (Ljava/lang/String;ILjava/util/function/Predicate;)V + p 3 predicate + m (Lnet/minecraft/class_3610;)Z method_1018 method_1018 + p 0 state + m (Lnet/minecraft/class_3610;)Z method_40008 method_40008 + p 0 state +c net/minecraft/class_2629 net/minecraft/network/packet/s2c/play/BossBarS2CPacket + f Lnet/minecraft/class_2629$class_5882; field_29099 REMOVE_ACTION + f I field_33315 DRAGON_MUSIC_MASK + f Lnet/minecraft/class_9139; field_47906 CODEC + f Lnet/minecraft/class_2629$class_5882; field_12075 action + f I field_33316 THICKEN_FOG_MASK + f I field_33314 DARKEN_SKY_MASK + f Ljava/util/UUID; field_12074 uuid + m (Lnet/minecraft/class_1259;)Lnet/minecraft/class_2629; method_34097 updateStyle + p 0 bar + m (Lnet/minecraft/class_2602;)V method_11330 apply + m (Ljava/util/UUID;)Lnet/minecraft/class_2629; method_34090 remove + p 0 uuid + m (Ljava/util/UUID;Lnet/minecraft/class_2629$class_5882;)V + p 1 uuid + p 2 action + m (Lnet/minecraft/class_2629$class_5881;)V method_34091 accept + p 1 consumer + m (Lnet/minecraft/class_9129;)V + p 1 buf + m (ZZZ)I method_34095 maskProperties + p 2 thickenFog + p 0 darkenSky + p 1 dragonMusic + m (Lnet/minecraft/class_1259;)Lnet/minecraft/class_2629; method_34089 add + p 0 bar + m (Lnet/minecraft/class_1259;)Lnet/minecraft/class_2629; method_34098 updateProperties + p 0 bar + m (Lnet/minecraft/class_1259;)Lnet/minecraft/class_2629; method_34096 updateName + p 0 bar + m (Lnet/minecraft/class_1259;)Lnet/minecraft/class_2629; method_34094 updateProgress + p 0 bar + m (Lnet/minecraft/class_9129;)V method_55861 write + p 1 buf +c net/minecraft/class_2629$class_5882 net/minecraft/network/packet/s2c/play/BossBarS2CPacket$Action + m ()Lnet/minecraft/class_2629$class_5883; method_34105 getType + m (Ljava/util/UUID;Lnet/minecraft/class_2629$class_5881;)V method_34106 accept + p 2 consumer + p 1 uuid + m (Lnet/minecraft/class_9129;)V method_34107 toPacket + p 1 buf +c net/minecraft/class_2629$class_5883 net/minecraft/network/packet/s2c/play/BossBarS2CPacket$Type + f Lnet/minecraft/class_9141; field_29113 parser + f Lnet/minecraft/class_2629$class_5883; field_29112 UPDATE_PROPERTIES + f Lnet/minecraft/class_2629$class_5883; field_29110 UPDATE_NAME + f Lnet/minecraft/class_2629$class_5883; field_29111 UPDATE_STYLE + f Lnet/minecraft/class_2629$class_5883; field_29109 UPDATE_PROGRESS + f Lnet/minecraft/class_2629$class_5883; field_29107 ADD + f Lnet/minecraft/class_2629$class_5883; field_29108 REMOVE + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_2629$class_5882; method_34113 method_34113 + p 0 buf + m (Ljava/lang/String;ILnet/minecraft/class_9141;)V + p 3 parser +c net/minecraft/class_2629$class_5880 net/minecraft/network/packet/s2c/play/BossBarS2CPacket$AddAction + f Lnet/minecraft/class_1259$class_1260; field_29102 color + f Lnet/minecraft/class_2561; field_29100 name + f F field_29101 percent + f Z field_29105 dragonMusic + f Z field_29106 thickenFog + f Z field_29104 darkenSky + f Lnet/minecraft/class_1259$class_1261; field_29103 style + m (Lnet/minecraft/class_9129;)V + p 1 buf + m (Lnet/minecraft/class_1259;)V + p 1 bar +c net/minecraft/class_2629$class_5881 net/minecraft/network/packet/s2c/play/BossBarS2CPacket$Consumer + m (Ljava/util/UUID;)V method_34099 remove + p 1 uuid + m (Ljava/util/UUID;Lnet/minecraft/class_2561;FLnet/minecraft/class_1259$class_1260;Lnet/minecraft/class_1259$class_1261;ZZZ)V method_34103 add + p 8 thickenFog + p 7 dragonMusic + p 6 darkenSky + p 5 style + p 4 color + p 3 percent + p 2 name + p 1 uuid + m (Ljava/util/UUID;Lnet/minecraft/class_2561;)V method_34102 updateName + p 2 name + p 1 uuid + m (Ljava/util/UUID;Lnet/minecraft/class_1259$class_1260;Lnet/minecraft/class_1259$class_1261;)V method_34101 updateStyle + p 3 style + p 1 id + p 2 color + m (Ljava/util/UUID;ZZZ)V method_34104 updateProperties + p 3 dragonMusic + p 4 thickenFog + p 1 uuid + p 2 darkenSky + m (Ljava/util/UUID;F)V method_34100 updateProgress + p 1 uuid + p 2 percent +c net/minecraft/class_2629$class_5886 net/minecraft/network/packet/s2c/play/BossBarS2CPacket$UpdatePropertiesAction + f Z field_29118 dragonMusic + f Z field_29119 thickenFog + f Z field_29117 darkenSky + m (Lnet/minecraft/class_9129;)V + p 1 buf + m (ZZZ)V + p 1 darkenSky + p 2 dragonMusic + p 3 thickenFog +c net/minecraft/class_2629$class_5887 net/minecraft/network/packet/s2c/play/BossBarS2CPacket$UpdateStyleAction + f Lnet/minecraft/class_1259$class_1261; field_29121 style + f Lnet/minecraft/class_1259$class_1260; field_29120 color + m (Lnet/minecraft/class_9129;)V + p 1 buf + m (Lnet/minecraft/class_1259$class_1260;Lnet/minecraft/class_1259$class_1261;)V + p 2 style + p 1 color +c net/minecraft/class_2629$class_5884 net/minecraft/network/packet/s2c/play/BossBarS2CPacket$UpdateNameAction + f Lnet/minecraft/class_2561; comp_2260 name + m (Lnet/minecraft/class_9129;)V + p 1 buf + m (Lnet/minecraft/class_2561;)V + p 1 name + m ()Lnet/minecraft/class_2561; comp_2260 name +c net/minecraft/class_2629$class_5885 net/minecraft/network/packet/s2c/play/BossBarS2CPacket$UpdateProgressAction + f F comp_2261 progress + m (Lnet/minecraft/class_9129;)V + p 1 buf + m (F)V + p 1 percent + m ()F comp_2261 progress +c net/minecraft/class_2623 net/minecraft/network/packet/s2c/play/BlockEventS2CPacket + f I field_12042 type + f Lnet/minecraft/class_2248; field_12043 block + f I field_12041 data + f Lnet/minecraft/class_9139; field_47904 CODEC + f Lnet/minecraft/class_2338; field_12044 pos + m ()I method_11294 getType + m ()Lnet/minecraft/class_2248; method_11295 getBlock + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;II)V + p 4 data + p 1 pos + p 3 type + p 2 block + m ()Lnet/minecraft/class_2338; method_11298 getPos + m (Lnet/minecraft/class_9129;)V method_55860 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11297 apply + m (Lnet/minecraft/class_9129;)V + p 1 buf + m ()I method_11296 getData +c net/minecraft/class_3954 net/minecraft/block/InventoryProvider + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1278; method_17680 getInventory + p 2 world + p 1 state + p 3 pos +c net/minecraft/class_2624 net/minecraft/block/entity/LockableContainerBlockEntity + f Lnet/minecraft/class_2561; field_17376 customName + f Lnet/minecraft/class_1273; field_12045 lock + m ()Lnet/minecraft/class_2371; method_11282 getHeldStacks + m ()Lnet/minecraft/class_2561; method_17823 getContainerName + m (ILnet/minecraft/class_1661;)Lnet/minecraft/class_1703; method_5465 createScreenHandler + p 1 syncId + p 2 playerInventory + m (Lnet/minecraft/class_2371;)V method_11281 setHeldStacks + p 1 inventory + m ()Z method_74145 isLocked + m (Lnet/minecraft/class_1657;)Z method_17489 checkUnlocked + p 1 player + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1657;Lnet/minecraft/class_2561;)V method_76772 handleLocked + p 1 player + p 0 containerPos + p 2 name +c net/minecraft/class_3955 net/minecraft/recipe/CraftingRecipe + m (Lnet/minecraft/class_9694;)Lnet/minecraft/class_2371; method_64671 collectRecipeRemainders + p 0 input + m (Lnet/minecraft/class_9694;)Lnet/minecraft/class_2371; method_17704 getRecipeRemainders + p 1 input + m ()Lnet/minecraft/class_7710; method_45441 getCategory +c net/minecraft/class_2625 net/minecraft/block/entity/SignBlockEntity + f Lnet/minecraft/class_8242; field_43296 backText + f I field_40335 MAX_TEXT_WIDTH + f Z field_43297 waxed + f Lnet/minecraft/class_8242; field_43295 frontText + f Z field_57786 DEFAULT_WAXED + f I field_40336 TEXT_LINE_HEIGHT + f Ljava/util/UUID; field_12046 editor + f Lorg/slf4j/Logger; field_43294 LOGGER + m (Lnet/minecraft/class_1657;ZLjava/util/List;)V method_49836 tryChangeText + p 3 messages + p 2 front + p 1 player + m (Lnet/minecraft/class_8242;)Lnet/minecraft/class_8242; method_50008 parseLines + p 1 signText + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_50009 parseLine + p 1 text + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m (Lnet/minecraft/class_8242;)Z method_49839 setBackText + p 1 backText + m ()Lnet/minecraft/class_8242; method_49853 getFrontText + m ()Lnet/minecraft/class_3414; method_54303 getInteractionFailSound + m (Z)Lnet/minecraft/class_8242; method_49843 getText + p 1 front + m (Lnet/minecraft/class_2625;Lnet/minecraft/class_1937;Ljava/util/UUID;)V method_49838 tryClearInvalidEditor + p 2 world + p 1 blockEntity + p 3 uuid + m (ZLnet/minecraft/class_1657;)Z method_50010 canRunCommandClickEvent + p 2 player + p 1 front + m ()I method_45470 getMaxTextWidth + m (Lnet/minecraft/class_1657;Ljava/util/List;Lnet/minecraft/class_8242;)Lnet/minecraft/class_8242; method_49835 getTextWithMessages + p 2 messages + p 1 player + p 3 text + m ()Ljava/util/UUID; method_11305 getEditor + m (Lnet/minecraft/class_1657;Ljava/util/List;Lnet/minecraft/class_8242;)Lnet/minecraft/class_8242; method_49845 method_49845 + p 3 text + m (Lnet/minecraft/class_8242;)Z method_49846 setFrontText + p 1 frontText + m (Ljava/util/function/UnaryOperator;Z)Z method_49841 changeText + p 2 front + p 1 textChanger + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1657;Lnet/minecraft/class_2338;Z)Z method_50007 runCommandClickEvent + p 4 front + p 3 pos + p 2 player + p 1 world + m (Lnet/minecraft/class_1657;)Z method_49834 isPlayerFacingFront + p 1 player + m ()Lnet/minecraft/class_8242; method_49854 getBackText + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2168; method_50006 createCommandSource + p 0 player + p 2 pos + p 1 world + m (Lnet/minecraft/class_8242;Z)Z method_49840 setText + p 2 front + p 1 text + m ()Lnet/minecraft/class_8242; method_49852 createText + m ()Lnet/minecraft/class_2622; method_38249 toUpdatePacket + m ()I method_45469 getTextLineHeight + m (Z)Z method_49849 setWaxed + p 1 waxed + m ()V method_34272 updateListeners + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2625;)V method_49837 tick + p 2 state + p 3 blockEntity + p 0 world + p 1 pos + m (Ljava/util/UUID;)V method_11306 setEditor + p 1 editor + m (Ljava/util/UUID;)Z method_49847 isPlayerTooFarToEdit + p 1 uuid + m ()Z method_49855 isWaxed +c net/minecraft/class_3956 net/minecraft/recipe/RecipeType + c The recipe type allows matching recipes more efficiently by only checking\nrecipes under a given type.\n\n@param the common supertype of recipes within a recipe type + f Lnet/minecraft/class_3956; field_17641 STONECUTTING + f Lnet/minecraft/class_3956; field_17549 CAMPFIRE_COOKING + f Lnet/minecraft/class_3956; field_17548 SMOKING + f Lnet/minecraft/class_3956; field_17547 BLASTING + f Lnet/minecraft/class_3956; field_17546 SMELTING + f Lnet/minecraft/class_3956; field_17545 CRAFTING + f Lnet/minecraft/class_3956; field_25388 SMITHING + m (Ljava/lang/String;)Lnet/minecraft/class_3956; method_17726 register + p 0 id +c net/minecraft/class_2626 net/minecraft/network/packet/s2c/play/BlockUpdateS2CPacket + f Lnet/minecraft/class_9139; field_47905 CODEC + f Lnet/minecraft/class_2680; field_12051 state + f Lnet/minecraft/class_2338; field_12052 pos + m (Lnet/minecraft/class_2602;)V method_11310 apply + m ()Lnet/minecraft/class_2680; method_11308 getState + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m ()Lnet/minecraft/class_2338; method_11309 getPos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)V + p 2 pos + p 1 world +c net/minecraft/class_2641 net/minecraft/network/packet/s2c/play/CommandTreeS2CPacket + f Ljava/util/List; field_38039 nodes + f I field_38038 rootSize + f B field_33321 NODE_TYPE_ROOT + f B field_60608 REQUIRES_LEVEL + f B field_33317 NODE_TYPE_MASK + f B field_33323 NODE_TYPE_ARGUMENT + f B field_33319 HAS_REDIRECT + f B field_33320 HAS_SUGGESTION_PROVIDER + f B field_33318 EXECUTABLE + f B field_33322 NODE_TYPE_LITERAL + f Lnet/minecraft/class_9139; field_47914 CODEC + m (Lnet/minecraft/class_7157;Lnet/minecraft/class_2641$class_11408;)Lcom/mojang/brigadier/tree/RootCommandNode; method_11403 getCommandTree + p 2 nodeFactory + p 1 commandRegistryAccess + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2641$class_2642; method_11405 readCommandNode + p 0 buf + m (Lnet/minecraft/class_2540;)V method_55867 write + p 1 buf + m (Lcom/mojang/brigadier/tree/CommandNode;Lnet/minecraft/class_2641$class_11409;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)Lnet/minecraft/class_2641$class_2642; method_11401 createNodeData + p 1 inspector + p 2 nodeOrdinals + p 0 node + m (Lcom/mojang/brigadier/tree/RootCommandNode;Lnet/minecraft/class_2641$class_11409;)V + p 2 inspector + p 1 rootIndex + m (Ljava/util/List;Ljava/util/function/BiPredicate;)V method_42067 validate + p 1 validator + p 0 nodeDatas + m (Lcom/mojang/brigadier/tree/RootCommandNode;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; method_30944 traverse + p 0 commandTree + m (Lnet/minecraft/class_2540;B)Lnet/minecraft/class_2641$class_7235; method_11402 readArgumentBuilder + p 0 buf + p 1 flags + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/class_2641$class_11409;)Ljava/util/List; method_30945 collectNodes + p 0 nodeOrdinals + p 1 inspector + m (Ljava/util/function/BiPredicate;Ljava/util/List;Lit/unimi/dsi/fastutil/ints/IntSet;I)Z method_42068 method_42068 + p 0 index + m (Ljava/util/List;)V method_30946 validate + p 0 nodeDatas + m (Lnet/minecraft/class_2602;)V method_11404 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_2641$class_2642;)V method_34119 method_34119 + p 1 node + p 0 buf2 +c net/minecraft/class_2641$class_7235 net/minecraft/network/packet/s2c/play/CommandTreeS2CPacket$SuggestableNode + m (Lnet/minecraft/class_7157;Lnet/minecraft/class_2641$class_11408;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_42070 createArgumentBuilder + p 2 nodeFactory + p 1 commandRegistryAccess + m (Lnet/minecraft/class_2540;)V method_42071 write + p 1 buf +c net/minecraft/class_2641$class_7232 net/minecraft/network/packet/s2c/play/CommandTreeS2CPacket$ArgumentNode + f Lnet/minecraft/class_2960; comp_4286 id + f Ljava/lang/String; comp_4284 name + f Lnet/minecraft/class_2314$class_7217; comp_4285 properties + m ()Lnet/minecraft/class_2960; comp_4286 id + m ()Ljava/lang/String; comp_4284 name + m ()Lnet/minecraft/class_2314$class_7217; comp_4285 properties + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_2314$class_7217;)V method_42072 write + p 1 properties + p 0 buf + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_2314;Lnet/minecraft/class_2314$class_7217;)V method_42073 write + p 0 buf + p 1 serializer + p 2 properties + m (Ljava/lang/String;Lnet/minecraft/class_2314$class_7217;Lnet/minecraft/class_2960;)V + p 1 name + p 2 properties + p 3 id +c net/minecraft/class_2641$class_7233 net/minecraft/network/packet/s2c/play/CommandTreeS2CPacket$LiteralNode + f Ljava/lang/String; comp_4291 literal + m ()Ljava/lang/String; comp_4291 literal + m (Ljava/lang/String;)V + p 1 literal +c net/minecraft/class_2641$class_7234 net/minecraft/network/packet/s2c/play/CommandTreeS2CPacket$CommandTree + f Ljava/util/List; field_38046 nodeDatas + f Ljava/util/List; field_38047 nodes + f Lnet/minecraft/class_7157; field_38045 commandRegistryAccess + f Lnet/minecraft/class_2641$class_11408; field_60609 nodeFactory + m (I)Lcom/mojang/brigadier/tree/CommandNode; method_42077 getNode + p 1 index + m (Lnet/minecraft/class_7157;Lnet/minecraft/class_2641$class_11408;Ljava/util/List;)V + p 1 commandRegistryAccess + p 2 nodeFactory + p 3 nodeDatas +c net/minecraft/class_2641$class_11408 net/minecraft/network/packet/s2c/play/CommandTreeS2CPacket$NodeFactory + m (Ljava/lang/String;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_71670 literal + p 1 name + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;ZZ)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_71669 modifyNode + p 2 disableExecution + p 3 requireTrusted + p 1 arg + m (Ljava/lang/String;Lcom/mojang/brigadier/arguments/ArgumentType;Lnet/minecraft/class_2960;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_71671 argument + p 1 name + p 2 type + p 3 suggestionProviderId +c net/minecraft/class_2641$class_11409 net/minecraft/network/packet/s2c/play/CommandTreeS2CPacket$CommandNodeInspector + m (Lcom/mojang/brigadier/tree/CommandNode;)Z method_71673 isExecutable + p 1 node + m (Lcom/mojang/brigadier/tree/CommandNode;)Z method_71674 hasRequiredLevel + p 1 node + m (Lcom/mojang/brigadier/tree/ArgumentCommandNode;)Lnet/minecraft/class_2960; method_71672 getSuggestionProviderId + p 1 node +c net/minecraft/class_2641$class_2642 net/minecraft/network/packet/s2c/play/CommandTreeS2CPacket$CommandNodeData + f [I comp_4290 childNodeIndices + f I comp_4288 flags + f Lnet/minecraft/class_2641$class_7235; comp_4287 suggestableNode + f I comp_4289 redirectNodeIndex + m (Lit/unimi/dsi/fastutil/ints/IntSet;)Z method_42074 validateRedirectNodeIndex + p 1 indices + m (Lit/unimi/dsi/fastutil/ints/IntSet;)Z method_42076 validateChildNodeIndices + p 1 indices + m (Lnet/minecraft/class_2641$class_7235;II[I)V + p 4 childNodeIndices + p 2 flags + p 3 redirectNodeIndex + p 1 suggestableNode + m ()[I comp_4290 childNodeIndices + m ()I comp_4288 flags + m (Lnet/minecraft/class_2540;)V method_42075 write + p 1 buf + m ()Lnet/minecraft/class_2641$class_7235; comp_4287 suggestableNode + m ()I comp_4289 redirectNodeIndex +c net/minecraft/class_3972 net/minecraft/recipe/SingleStackRecipe + c A recipe that has only one input ingredient. It can be used by any type\nof recipe as long as its subclass implements the proper interface. + f Lnet/minecraft/class_1799; field_17643 result + f Lnet/minecraft/class_9887; field_52604 ingredientPlacement + f Lnet/minecraft/class_1856; field_17642 ingredient + f Ljava/lang/String; field_17645 group + m (Ljava/lang/String;Lnet/minecraft/class_1856;Lnet/minecraft/class_1799;)V + p 1 group + p 3 result + p 2 ingredient + m (Lnet/minecraft/class_9696;Lnet/minecraft/class_1937;)Z method_64719 matches + m (Lnet/minecraft/class_9696;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_59998 craft + m ()Lnet/minecraft/class_1799; method_64721 result + m ()Lnet/minecraft/class_1856; method_64720 ingredient +c net/minecraft/class_3972$class_3973 net/minecraft/recipe/SingleStackRecipe$Serializer + f Lcom/mojang/serialization/MapCodec; field_46107 codec + f Lnet/minecraft/class_9139; field_48363 packetCodec + m (Lnet/minecraft/class_3972$class_3974;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53774 method_53774 + p 1 instance + m (Lnet/minecraft/class_3972$class_3974;)V + p 1 recipeFactory +c net/minecraft/class_3972$class_3974 net/minecraft/recipe/SingleStackRecipe$RecipeFactory + m (Ljava/lang/String;Lnet/minecraft/class_1856;Lnet/minecraft/class_1799;)Lnet/minecraft/class_3972; create create + p 3 result + p 2 ingredient + p 1 group +c net/minecraft/class_2643 net/minecraft/block/entity/EndGatewayBlockEntity + f Z field_12129 exactTeleport + f Lorg/slf4j/Logger; field_12133 LOGGER + f I field_12130 teleportCooldown + f J field_57802 DEFAULT_AGE + f Lnet/minecraft/class_2338; field_12132 exitPortalPos + f Z field_57803 DEFAULT_EXACT_TELEPORT + f J field_12131 age + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Lnet/minecraft/class_243; method_60787 getOrCreateExitPortalPos + p 2 pos + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2643;)V method_31702 serverTick + p 2 state + p 3 blockEntity + p 0 world + p 1 pos + m ()Z method_11421 needsCooldownBeforeTeleporting + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2643;)V method_31700 clientTick + p 0 world + p 1 pos + p 2 state + p 3 blockEntity + m (F)F method_11417 getRecentlyGeneratedBeamHeight + p 1 tickProgress + m ()Lnet/minecraft/class_2622; method_38253 toUpdatePacket + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Lnet/minecraft/class_243; method_31701 findTeleportLocation + p 0 world + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;)Z method_31698 isChunkEmpty + p 0 world + p 1 pos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;IZ)Lnet/minecraft/class_2338; method_11410 findExitPortalPos + p 3 force + p 2 searchRadius + p 1 pos + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_243;)Lnet/minecraft/class_2818; method_11414 getChunk + p 0 world + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_31699 setupExitPortalLocation + c Finds teleport location and creates an island to teleport to (if there is none).\n\n

This does not create an exit portal.\n\n@return the position of the exit portal + p 0 world + p 1 pos + m (F)F method_11412 getCooldownBeamHeight + p 1 tickProgress + m ()I method_11415 getDrawnSidesCount + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_11419 findBestPortalExitPos + p 1 pos + p 0 world + m ()Z method_11420 isRecentlyGenerated + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_3018;)V method_11416 createPortal + p 0 world + p 2 config + p 1 pos + m (Lnet/minecraft/class_2818;)Lnet/minecraft/class_2338; method_11413 findPortalPosition + p 0 chunk + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2643;)V method_11411 startTeleportCooldown + p 3 blockEntity + p 1 pos + p 2 state + p 0 world + m (Lnet/minecraft/class_2338;Z)V method_11418 setExitPortalPos + p 1 pos + p 2 exactTeleport +c net/minecraft/class_3975 net/minecraft/recipe/StonecuttingRecipe + m ()Lnet/minecraft/class_10302; method_64725 createResultDisplay + m (Ljava/lang/String;Lnet/minecraft/class_1856;Lnet/minecraft/class_1799;)V + p 3 result + p 1 group + p 2 ingredient +c net/minecraft/class_1313 net/minecraft/entity/MovementType + f Lnet/minecraft/class_1313; field_6310 PISTON + f Lnet/minecraft/class_1313; field_6309 SHULKER + f Lnet/minecraft/class_1313; field_6308 SELF + f Lnet/minecraft/class_1313; field_6305 PLAYER + f Lnet/minecraft/class_1313; field_6306 SHULKER_BOX +c net/minecraft/class_3970 net/minecraft/datafixer/fix/MapIdFix +c net/minecraft/class_1311 net/minecraft/entity/SpawnGroup + c A spawn group represents the category of an entity's natural spawning.\n\n

Entities that don't support natural spawning belong to the\n{@link #MISC} group.\n\n@see EntityType#getSpawnGroup()\n@see net.minecraft.world.SpawnHelper + f Z field_6298 peaceful + f Z field_6295 rare + f Ljava/lang/String; field_6304 name + f I field_24461 despawnStartRange + f I field_24462 immediateDespawnRange + f I field_6297 capacity + f Lcom/mojang/serialization/Codec; field_24655 CODEC + c A codec that encodes and decodes a spawn group from and to its\n{@linkplain #getName() name} string. + f Lnet/minecraft/class_1311; field_6294 CREATURE + f Lnet/minecraft/class_1311; field_30092 UNDERGROUND_WATER_CREATURE + f Lnet/minecraft/class_1311; field_6300 WATER_CREATURE + f Lnet/minecraft/class_1311; field_6303 AMBIENT + f Lnet/minecraft/class_1311; field_6302 MONSTER + f Lnet/minecraft/class_1311; field_17715 MISC + f Lnet/minecraft/class_1311; field_24460 WATER_AMBIENT + f Lnet/minecraft/class_1311; field_34447 AXOLOTLS + m ()I method_6134 getCapacity + c Returns the maximum number of mobs in this group that can be spawned per\nchunk. + m ()I method_27920 getDespawnStartRange + c Returns the distance, of a mob of this group from a player, at which\nthat mob can despawn at chance.\n\n

This is ignored if a mob {@linkplain\nnet.minecraft.entity.mob.MobEntity#canImmediatelyDespawn(double) cannot\nimmediately despawn}.\n\n@see net.minecraft.entity.mob.MobEntity#checkDespawn() + m ()Ljava/lang/String; method_6133 getName + c Returns the name of this spawn group.\n\n

The names are unique and are in {@code lower_snake_case}. + m (Ljava/lang/String;ILjava/lang/String;IZZI)V + p 6 rare + p 7 immediateDespawnRange + p 4 spawnCap + p 5 peaceful + p 3 name + m ()Z method_6135 isRare + c Returns if this spawn group is spawned only rarely.\n\n

A rare spawn only happens when the {@linkplain\nnet.minecraft.world.WorldProperties#getTime() world time} is a multiple\nof {@code 400} in {@link\nnet.minecraft.server.world.ServerChunkManager#tickChunks()}. + m ()I method_27919 getImmediateDespawnRange + c Returns the distance, of a mob of this group from a player, at which\nthat mob will despawn immediately.\n\n

This is ignored if a mob {@linkplain\nnet.minecraft.entity.mob.MobEntity#canImmediatelyDespawn(double) cannot\nimmediately despawn}.\n\n@see net.minecraft.entity.mob.MobEntity#checkDespawn() + m ()Z method_6136 isPeaceful + c Returns {@code true} if this group is spawned as animals, or {@code false}\nif this group is spawned as monsters.\n\n@see net.minecraft.world.World#setMobSpawnOptions(boolean, boolean) +c net/minecraft/class_3971 net/minecraft/screen/StonecutterScreenHandler + f Ljava/lang/Runnable; field_17636 contentsChangedListener + f Lnet/minecraft/class_1735; field_17627 inputSlot + f Lnet/minecraft/class_10291$class_10293; field_54600 availableRecipes + f I field_30846 OUTPUT_START + f I field_30842 INPUT_ID + f I field_30844 INVENTORY_START + f Lnet/minecraft/class_1735; field_17628 outputSlot + f Lnet/minecraft/class_1731; field_19173 output + f Lnet/minecraft/class_3915; field_17631 selectedRecipe + f Lnet/minecraft/class_1799; field_17634 inputStack + f Lnet/minecraft/class_1263; field_17629 input + f Lnet/minecraft/class_1937; field_17632 world + f Lnet/minecraft/class_3914; field_17630 context + f I field_30847 OUTPUT_END + f I field_30843 OUTPUT_ID + f J field_17635 lastTakeTime + f I field_30845 INVENTORY_END + m ()Z method_17865 canCraft + m (Ljava/lang/Runnable;)V method_17859 setContentsChangedListener + p 1 contentsChangedListener + m ()I method_17864 getAvailableRecipeCount + m ()I method_17862 getSelectedRecipe + m (I)V method_17866 populateResult + p 1 selectedId + m (Lnet/minecraft/class_8786;)V method_64655 method_64655 + p 1 recipe + m (ILnet/minecraft/class_1661;)V + p 2 playerInventory + p 1 syncId + m ()Lnet/minecraft/class_10291$class_10293; method_17863 getAvailableRecipes + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_17856 method_17856 + p 3 pos + p 2 world + m (Lnet/minecraft/class_1799;)V method_17855 updateInput + p 1 stack + m (I)Z method_30160 isInBounds + p 1 id + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;)V + p 2 playerInventory + p 1 syncId + p 3 context +c net/minecraft/class_3971$2 net/minecraft/screen/StonecutterScreenHandler$2 + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_17868 method_17868 + p 1 world + p 2 pos + m ()Ljava/util/List; method_51308 getInputStacks +c net/minecraft/class_2640 net/minecraft/block/entity/EndPortalBlockEntity + m (Lnet/minecraft/class_2350;)Z method_11400 shouldDrawSide + p 1 direction + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos +c net/minecraft/class_1306 net/minecraft/util/Arm + c An enum representing an entity's arm.\n\n@see Hand + f Lcom/mojang/serialization/Codec; field_45121 CODEC + f Lnet/minecraft/class_2561; field_64360 text + f I field_38385 id + f Ljava/util/function/IntFunction; field_46166 BY_ID + f Lnet/minecraft/class_9139; field_64359 PACKET_CODEC + f Ljava/lang/String; field_6181 name + f Lnet/minecraft/class_1306; field_6183 RIGHT + f Lnet/minecraft/class_1306; field_6182 LEFT + m ()Lnet/minecraft/class_1306; method_5928 getOpposite + c {@return the arm on the opposite side} + m ()Lnet/minecraft/class_2561; method_76442 getText + m (Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;)V + p 5 translationKey + p 4 name + p 3 id + m (Lnet/minecraft/class_1306;)I method_76441 method_76441 + p 0 arm + m (Lnet/minecraft/class_1306;)I method_76443 method_76443 + p 0 arm +c net/minecraft/class_3969 net/minecraft/client/render/entity/model/GiantEntityModel + c Represents the model of a {@linkplain GiantEntity}.\n\n

Inherits the model of {@link AbstractZombieModel}. +c net/minecraft/class_2639 net/minecraft/network/packet/s2c/play/CommandSuggestionsS2CPacket + f Lnet/minecraft/class_9139; field_47913 CODEC + f I comp_2262 id + f I comp_2263 start + f I comp_2264 length + f Ljava/util/List; comp_2265 suggestions + m (ILcom/mojang/brigadier/suggestion/Suggestions;)V + p 2 suggestions + p 1 completionId + m (Lcom/mojang/brigadier/suggestion/Suggestion;)Lnet/minecraft/class_2639$class_9177; method_56609 method_56609 + p 0 suggestion + m ()Lcom/mojang/brigadier/suggestion/Suggestions; method_11397 getSuggestions + m (Lnet/minecraft/class_2602;)V method_11398 apply + m (Lcom/mojang/brigadier/context/StringRange;Lnet/minecraft/class_2639$class_9177;)Lcom/mojang/brigadier/suggestion/Suggestion; method_56608 method_56608 + p 1 suggestion + m ()Ljava/util/List; comp_2265 suggestions + m ()I comp_2262 id + m ()I comp_2264 length + m ()I comp_2263 start + m (IIILjava/util/List;)V + p 1 id + p 2 start + p 3 length + p 4 suggestions +c net/minecraft/class_2639$class_9177 net/minecraft/network/packet/s2c/play/CommandSuggestionsS2CPacket$Suggestion + f Lnet/minecraft/class_9139; field_48779 CODEC + f Ljava/util/Optional; comp_2267 tooltip + f Ljava/lang/String; comp_2266 text + m ()Ljava/lang/String; comp_2266 text + m ()Ljava/util/Optional; comp_2267 tooltip + m (Ljava/lang/String;Ljava/util/Optional;)V + p 1 text + p 2 tooltip +c net/minecraft/class_1304 net/minecraft/entity/EquipmentSlot + c Provides enum types for several key slots found within an entity {@link net.minecraft.inventory.Inventory}.\n

\nEach equipment slot has a type, which represents what inventory category it is contained within.\nThe {@code HAND} category covers the mainhand and offhand slots, while the {@code ARMOR} category covers the 4\ntypes of armor slots found in {@link net.minecraft.entity.LivingEntity}.\n

\nEach equipment slot contains information on where that slot should be located within a parent {@link net.minecraft.inventory.Inventory}.\n{@link #getEntitySlotId()} will provide the base slot index a slot should occupy (starting from {@code 0}),\nwhile {@link #getOffsetEntitySlotId(int)} will return the same value added to an offset index.\n

\nAn equipment slot can be used to quickly access the item held by an inventory slot in a {@link LivingEntity} through\nmethods such as {@link LivingEntity#getEquippedStack(EquipmentSlot)}, which will return the {@link net.minecraft.item.ItemStack}\nheld in the entity's inventory slot pointed at by the target slot. + f Ljava/lang/String; field_6175 name + f Lnet/minecraft/class_9139; field_54088 PACKET_CODEC + f I field_51935 NO_MAX_COUNT + f I field_51936 maxCount + f Lnet/minecraft/class_1304$class_1305; field_6170 type + f Ljava/util/List; field_54086 VALUES + f I field_54089 index + f I field_6168 entityId + f Ljava/util/function/IntFunction; field_54087 FROM_INDEX + f Lnet/minecraft/class_3542$class_7292; field_45739 CODEC + f Lnet/minecraft/class_1304; field_55946 SADDLE + f Lnet/minecraft/class_1304; field_6173 MAINHAND + f Lnet/minecraft/class_1304; field_6174 CHEST + f Lnet/minecraft/class_1304; field_6171 OFFHAND + f Lnet/minecraft/class_1304; field_6172 LEGS + f Lnet/minecraft/class_1304; field_6166 FEET + f Lnet/minecraft/class_1304; field_6169 HEAD + f Lnet/minecraft/class_1304; field_48824 BODY + m ()I method_63622 getIndex + m (Ljava/lang/String;ILnet/minecraft/class_1304$class_1305;IILjava/lang/String;)V + p 5 index + p 4 entityId + p 6 name + p 3 type + m (I)I method_63620 getOffsetIndex + p 1 offset + m (Ljava/lang/String;)Lnet/minecraft/class_1304; method_5924 byName + c {@return the slot where {@linkplain #getName the name} is equal to {@code name}}\nIf no slot matching the input name is found, this throws {@link IllegalArgumentException}.\n\n@throws IllegalArgumentException if no slot type could be found matching {@code name} + p 0 name + m ()Z method_46643 isArmorSlot + m (Lnet/minecraft/class_1304;)I method_63619 method_63619 + p 0 slot + m (I)I method_32320 getOffsetEntitySlotId + c {@return the index of the inventory slot this slot should occupy, plus the passed in {@code offset} amount} + p 1 offset + m (Ljava/lang/String;ILnet/minecraft/class_1304$class_1305;IIILjava/lang/String;)V + p 7 name + p 6 index + p 5 maxCount + p 4 entityId + p 3 type + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_60610 split + p 1 stack + m (Lnet/minecraft/class_1304;)I method_63621 method_63621 + p 0 slot + m ()Lnet/minecraft/class_1304$class_1305; method_5925 getType + c {@return the target {@link EquipmentSlot.Type} that this slot targets}\n\n

\nAn equipment slot either targets the hand or body type, which can be used to determine whether a request\nto manipulate slot data on an entity should be applied to an armor inventory or general item inventory. + m ()I method_5927 getEntitySlotId + c {@return the index of the inventory slot this slot should occupy}\n\n

\nIn the case of {@link #MAINHAND} and {@link #OFFHAND}, this method will return 0 and 1, respectively.\nThe remaining armor slots re-start at index 0 and end at index 3.\n\n

\nTo calculate the target index of an inventory slot for a slot relative to the offset index of an entire\ninventory, visit {@link #getOffsetEntitySlotId(int)}. + m ()Ljava/lang/String; method_5923 getName + c {@return the unique name of this equipment slot}\n\n

The returned value will be a lower-case string (such as "chest" for {@link #CHEST}). + m ()Z method_66664 increasesDroppedExperience +c net/minecraft/class_1304$class_1305 net/minecraft/entity/EquipmentSlot$Type + c The type of body item slot an {@link EquipmentSlot} targets. + f Lnet/minecraft/class_1304$class_1305; field_6178 HUMANOID_ARMOR + f Lnet/minecraft/class_1304$class_1305; field_6177 HAND + f Lnet/minecraft/class_1304$class_1305; field_55947 SADDLE + f Lnet/minecraft/class_1304$class_1305; field_48825 ANIMAL_ARMOR +c net/minecraft/class_1303 net/minecraft/entity/ExperienceOrbEntity + f I field_57586 DEFAULT_COUNT + f I field_27009 pickingCount + f Lnet/minecraft/class_10584; field_55662 interpolator + f Lnet/minecraft/class_1657; field_6162 target + f S field_57583 DEFAULT_HEALTH + f I field_30055 DESPAWN_AGE + f I field_6164 orbAge + f S field_57585 DEFAULT_VALUE + f I field_30056 EXPENSIVE_UPDATE_INTERVAL + f S field_57584 DEFAULT_AGE + f I field_30058 MERGING_CHANCE_FRACTION + f Lnet/minecraft/class_2940; field_55950 VALUE + f I field_6161 health + m ()I method_5919 getValue + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;I)Z method_31496 wasMergedIntoExistingOrb + p 1 pos + p 2 amount + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_243;I)V method_71373 spawn + p 3 amount + p 2 velocity + p 1 pos + p 0 world + m (Lnet/minecraft/class_1303;)Z method_31494 isMergeable + p 1 other + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_243;Lnet/minecraft/class_243;I)V + p 2 pos + p 1 world + p 4 amount + p 3 velocity + m (Lnet/minecraft/class_1937;DDDI)V + p 4 y + p 6 z + p 1 world + p 2 x + p 8 amount + m ()V method_66264 moveTowardsPlayer + m ()I method_5920 getOrbSize + m (D)V method_71968 tryMoveToOpenSpace + p 1 boundingBoxLength + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;I)V method_31493 spawn + p 0 world + p 1 pos + p 2 amount + m (Lnet/minecraft/class_243;)V method_71967 method_71967 + p 1 pos + m (I)I method_5918 roundToOrbSize + p 0 value + m (Lnet/minecraft/class_1303;II)Z method_31495 isMergeable + p 0 orb + p 2 amount + p 1 seed + m ()V method_5921 applyWaterMovement + m ()V method_31498 expensiveUpdate + c Performs an expensive update.\n\n@implSpec Called every second (every {@link #EXPENSIVE_UPDATE_INTERVAL} ticks).\nThis method first checks if the orb still has a nearby {@link #target},\nand assigns a new target if there is none. It then tries to merge nearby experience orbs. + m (Lnet/minecraft/class_1303;)V method_31497 merge + p 1 other + m (I)V method_66666 setValue + p 1 value + m (IILnet/minecraft/class_1303;)Z method_31492 method_31492 + p 2 orb + m (Lnet/minecraft/class_3222;I)I method_35051 repairPlayerGears + c Repairs a player's gears using the experience recursively, until the experience is\nall used or all gears are repaired.\n\n@return the amount of leftover experience + p 2 amount + p 1 player +c net/minecraft/class_3965 net/minecraft/util/hit/BlockHitResult + f Lnet/minecraft/class_2338; field_17589 blockPos + f Z field_53823 againstWorldBorder + f Lnet/minecraft/class_2350; field_17588 side + f Z field_17590 missed + f Z field_17591 insideBlock + m (Lnet/minecraft/class_243;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;Z)V + p 1 pos + p 2 side + p 3 blockPos + p 4 insideBlock + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_3965; method_17779 withSide + p 1 side + m (ZLnet/minecraft/class_243;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;ZZ)V + p 5 insideBlock + p 6 againstWorldBorder + p 1 missed + p 2 pos + p 3 side + p 4 blockPos + m ()Lnet/minecraft/class_2338; method_17777 getBlockPos + m (Lnet/minecraft/class_243;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3965; method_17778 createMissed + p 0 pos + p 1 side + p 2 blockPos + m ()Z method_17781 isInsideBlock + m (Lnet/minecraft/class_243;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;ZZ)V + p 4 insideBlock + p 3 blockPos + p 2 side + p 1 pos + p 5 againstWorldBorder + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_3965; method_29328 withBlockPos + p 1 blockPos + m ()Z method_62877 isAgainstWorldBorder + m ()Lnet/minecraft/class_2350; method_17780 getSide + m ()Lnet/minecraft/class_3965; method_62876 againstWorldBorder +c net/minecraft/class_3966 net/minecraft/util/hit/EntityHitResult + f Lnet/minecraft/class_1297; field_17592 entity + m ()Lnet/minecraft/class_1297; method_17782 getEntity + m (Lnet/minecraft/class_1297;)V + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_243;)V + p 1 entity + p 2 pos +c net/minecraft/class_1309 net/minecraft/entity/LivingEntity + c Represents an entity which has a health value and can receive damage. + f Lnet/minecraft/class_1309; field_6236 attacking + f F field_6287 movementSpeed + f Lnet/minecraft/class_4095; field_18321 brain + f F field_6251 handSwingProgress + f Lnet/minecraft/class_10583; field_55674 attackerReference + f Z field_6285 effectsChanged + f F field_6250 forwardSpeed + f Lnet/minecraft/class_1282; field_6276 lastDamageSource + f Z field_6252 handSwinging + f Lnet/minecraft/class_2940; field_6214 POTION_SWIRLS_AMBIENT + f F field_6241 headYaw + f F field_6253 lastDamageTaken + f I field_6265 headTrackingIncrements + f F field_30068 BABY_SCALE_FACTOR + f Lnet/minecraft/class_9863; field_52447 elytraFlightController + f F field_6264 lastLeaningPitch + f Ljava/util/EnumMap; field_51571 locationBasedEnchantmentEffects + f D field_45123 serverHeadYaw + f F field_6243 leaningPitch + f I field_6279 handSwingTicks + f Ljava/lang/String; field_60538 EQUIPMENT_KEY + f I field_6230 lastAttackedTime + f Lnet/minecraft/class_2940; field_6219 STUCK_ARROW_COUNT + f Ljava/lang/String; field_60539 BRAIN_KEY + f I field_6278 despawnCounter + f I field_6254 maxHurtTime + f Lnet/minecraft/class_1283; field_6256 damageTracker + f Ljava/util/Map; field_55951 lastEquipmentStacks + f Lnet/minecraft/class_4048; field_18072 SLEEPING_DIMENSIONS + f F field_6220 lastBodyYaw + f Ljava/lang/String; field_60537 SLEEPING_POS_KEY + f Lnet/minecraft/class_2940; field_18073 SLEEPING_POSITION + f Lnet/minecraft/class_2940; field_20348 STINGER_COUNT + f F field_51569 riptideAttackDamage + f Lnet/minecraft/class_2960; field_51996 SPRINTING_SPEED_MODIFIER_ID + f Ljava/lang/String; field_60544 HEALTH_KEY + f Lcom/mojang/serialization/Dynamic; field_60356 BRAIN + f Lit/unimi/dsi/fastutil/objects/Object2LongMap; field_63292 piercingCooldowns + f Lnet/minecraft/class_11208$class_11209; field_59669 waypointConfig + f Ljava/lang/String; field_60542 DEATH_TIME_KEY + f Z field_6282 jumping + f F field_6283 bodyYaw + f I field_6270 lastAttackTime + f Lorg/slf4j/Logger; field_36332 LOGGER + f Ljava/lang/String; field_60543 HURT_BY_TIMESTAMP_KEY + f Lnet/minecraft/class_2940; field_6247 HEALTH + f I field_6273 ticksSinceLastAttack + f I field_6261 riptideTicks + f Z field_6272 dead + f Ljava/lang/String; field_60540 FALL_FLYING_KEY + f Lnet/minecraft/class_10584; field_55675 interpolator + f Ljava/lang/String; field_60541 HURT_TIME_KEY + f Lnet/minecraft/class_2940; field_6257 LIVING_FLAGS + f Lnet/minecraft/class_1322; field_6231 SPRINTING_SPEED_BOOST + f Ljava/util/Optional; field_22418 climbingPos + f I field_63291 ticksSinceHandEquipping + f Lnet/minecraft/class_2338; field_6268 lastBlockPos + f I field_6218 stuckArrowTimer + f Lnet/minecraft/class_8080; field_42108 limbAnimator + f I field_20347 stuckStingerTimer + f Ljava/util/function/Predicate; field_54564 NOT_WEARING_GAZE_DISGUISE_PREDICATE + f Z field_37421 experienceDroppingDisabled + f Ljava/util/Map; field_6280 activeStatusEffects + f Z field_30082 noDrag + f J field_63950 lastKineticAttackTime + f Lnet/minecraft/class_10630; field_56535 equipment + f Lnet/minecraft/class_2940; field_49792 POTION_SWIRLS + f Lnet/minecraft/class_2960; field_27859 POWDER_SNOW_SPEED_MODIFIER_ID + f Lnet/minecraft/class_1799; field_6277 activeItemStack + f Lnet/minecraft/class_5131; field_6260 attributes + f F field_6259 lastHeadYaw + f I field_6235 hurtTime + f F field_6246 absorptionAmount + f I field_6222 itemUseTimeLeft + f I field_6213 deathTime + f I field_30071 EQUIPMENT_SLOT_ID + f F field_6212 sidewaysSpeed + f Lnet/minecraft/class_10583; field_6258 attackingPlayer + f Ljava/lang/String; field_45740 ACTIVE_EFFECTS_KEY + f I field_30066 USING_RIPTIDE_FLAG + f F field_6227 upwardSpeed + f I field_6239 glidingTicks + f I field_30065 OFF_HAND_ACTIVE_FLAG + f I field_30077 DEATH_TICKS + f I field_6238 playerHitTimer + f J field_6226 lastDamageTime + f Lnet/minecraft/class_1268; field_6266 preferredHand + f I field_30064 USING_ITEM_FLAG + f F field_6229 lastHandSwingProgress + f Lnet/minecraft/class_1799; field_51570 riptideStack + f D field_30076 GRAVITY + f D field_33908 MAX_ENTITY_VIEWING_DISTANCE + f I field_6228 jumpingCooldown + f Ljava/lang/String; field_51995 ATTRIBUTES_KEY + m ()V method_18400 wakeUp + c Wakes this entity up.\n\n@see net.minecraft.entity.player.PlayerEntity#wakeUp(boolean, boolean) a more specific overload for players + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)I method_59923 getExperienceToDrop + p 2 attacker + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;Z)V method_16077 dropLoot + p 3 causedByPlayer + p 2 damageSource + p 1 world + m ()Z method_6071 shouldAlwaysDropExperience + c Returns if this entity may always drop experience, skipping any\nother checks.\n\n@see #dropXp\n@see #getXpToDrop() + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1304;)Z method_63624 canGlideWith + p 0 stack + p 1 slot + m (Lnet/minecraft/class_10583;I)V method_29505 setAttacking + p 1 attackingPlayer + p 2 playerHitTimer + m (F)F method_75879 getTimeSinceLastKineticAttack + p 1 tickProgress + m (Lnet/minecraft/class_1297;I)Z method_75118 isInPiercingCooldown + p 2 cooldownTicks + p 1 target + m ()Lnet/minecraft/class_2350; method_18401 getSleepingDirection + m ()Lnet/minecraft/class_4095$class_5303; method_28306 createBrainProfile + m ()I method_6096 getArmor + m (Lnet/minecraft/class_1282;F[Lnet/minecraft/class_1304;)V method_57292 damageEquipment + p 2 amount + p 1 source + p 3 slots + m ()Ljava/util/Map; method_30129 getEquipmentChanges + c {@return the difference between the last sent equipment set and the\ncurrent one} + m (Lnet/minecraft/class_3218;)Z method_27071 shouldDropLoot + p 1 world + m (Lnet/minecraft/class_1657;)F method_49485 getSaddledSpeed + p 1 controllingPlayer + m ()V method_6072 updateLeaningPitch + m (Lnet/minecraft/class_8567$class_8568;)Lnet/minecraft/class_8567; method_64172 method_64172 + p 1 parameterSetBuilder + m (Lnet/minecraft/class_1799;)Z method_63625 canEquipFromDispenser + p 1 stack + m ()V method_76086 floatIfRidden + m (Lnet/minecraft/class_1304;)Z method_44201 isArmorSlot + p 1 slot + m (Lnet/minecraft/class_1297;FLnet/minecraft/class_243;)V method_75122 knockbackTarget + p 3 playerTargetVelocity + p 1 target + p 2 strength + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;)Z method_5679 isInvulnerableTo + p 1 world + p 2 source + m ()J method_51851 getLootTableSeed + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;ZLnet/minecraft/class_5321;)V method_72395 dropLoot + p 2 damageSource + p 3 causedByPlayer + p 1 world + p 4 lootTableKey + m (D)D method_66669 getUnsafeFallDistance + p 1 fallDistance + m (Lnet/minecraft/class_1297;)V method_75119 startPiercingCooldown + p 1 target + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_45324 areItemsDifferent + p 1 stack + p 2 stack2 + m (I)V method_21755 setStingerCount + p 1 stingerCount + m (DD)V method_48761 tiltScreen + p 1 deltaX + p 3 deltaZ + m (Lnet/minecraft/class_4050;)Lnet/minecraft/class_238; method_24833 getBoundingBox + p 1 pose + m ()Z method_29920 shouldSwimInFluids + m (Z)V method_35054 setNoDrag + p 1 noDrag + m ()Z method_74092 shouldDrown + m ()V method_6050 tickStatusEffects + m ()Z method_6086 isAffectedBySplashPotions + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_31079 positionInPortal + p 0 pos + m ()Z method_6062 isImmobile + m (Lnet/minecraft/class_1304;)Z method_63626 canDispenserEquipSlot + p 1 slot + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1304;)Z method_63623 canEquip + p 1 stack + p 2 slot + m (Lnet/minecraft/class_1542;)V method_29499 triggerItemPickedUpByEntityCriteria + c Called to trigger advancement criteria when an entity picks up an item\nthrown by a player. + p 1 item + m (F)V method_6073 setAbsorptionAmount + p 1 absorptionAmount + m (Lnet/minecraft/class_6880;)V method_52540 updateAttribute + p 1 attribute + m (Lnet/minecraft/class_1293;)Z method_6049 canHaveStatusEffect + p 1 effect + m ()F method_55693 getScale + m ()F method_6063 getMaxHealth + m ()Ljava/util/Collection; method_6026 getStatusEffects + m ()Lnet/minecraft/class_1309; method_6065 getAttacker + m ()Lnet/minecraft/class_1306; method_6068 getMainArm + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1304;)Lnet/minecraft/class_5630; method_32321 getStackReference + p 0 entity + p 1 slot + m (Lnet/minecraft/class_1304;)Z method_63629 method_63629 + p 1 slot + m ()Lnet/minecraft/class_1799; method_6047 getMainHandStack + m (DDDZ)Z method_6082 teleport + p 7 particleEffects + p 3 y + p 5 z + p 1 x + m ()Z method_41330 isExperienceDroppingDisabled + m (Lnet/minecraft/class_2338;)Ljava/lang/Boolean; method_18405 method_18405 + p 1 pos + m (Lnet/minecraft/class_1304;)B method_20237 getEquipmentBreakStatus + p 0 slot + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;)F method_59924 getAttackKnockbackAgainst + p 1 target + p 2 damageSource + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5321;Ljava/util/function/Function;Ljava/util/function/BiConsumer;)Z method_64170 forEachGeneratedItem + p 4 lootConsumer + p 3 lootContextParametersFactory + p 2 lootTableKey + p 1 world + m ()Z method_5999 hasInvertedHealingAndHarm + m (Lnet/minecraft/class_1297;I)V method_6103 sendPickup + p 2 count + p 1 item + m ()Lnet/minecraft/class_1657; method_66280 getAttackingPlayer + m ()Lnet/minecraft/class_5132$class_5133; method_26827 createLivingAttributes + m ()Lnet/minecraft/class_1309; method_6052 getAttacking + m (Lnet/minecraft/class_1299;)Z method_5973 canTarget + p 1 type + m (F)V method_48565 updateLimbs + p 1 posDelta + m (Lnet/minecraft/class_3610;)Z method_76088 isTravellingInFluid + p 1 state + m ()Lnet/minecraft/class_1282; method_6081 getRecentDamageSource + m ()V method_6093 knockDownwards + m (Lnet/minecraft/class_6880;)D method_45326 getAttributeBaseValue + p 1 attribute + m ()V method_32324 removePowderSnowSlow + m ()Z method_29504 isDead + m ()Z method_18406 isSleepingInBed + m (I)V method_16826 setDespawnCounter + p 1 despawnCounter + m ()F method_7292 getLuck + m (Lnet/minecraft/class_1799;)V method_37119 tickItemStackUsage + p 1 stack + m (Lnet/minecraft/class_6880;)D method_45325 getAttributeValue + p 1 attribute + m ()V method_6070 tickCramming + m ()Z method_6094 canBreatheInWater + m ()I method_6083 getLastAttackTime + m (Lnet/minecraft/class_243;F)Lnet/minecraft/class_243; method_26318 applyMovementInput + p 1 movementInput + p 2 slipperiness + m (Z)V method_29242 updateLimbs + p 1 flutter + m (F)F method_6055 getHandSwingProgress + p 1 tickProgress + m ()V method_6043 jump + m (Ljava/util/function/Predicate;)Z method_24520 isHolding + c Checks if this entity is holding a certain item.\n\n

This checks both the entity's main and off hand. + p 1 predicate + m (Lnet/minecraft/class_1293;Lnet/minecraft/class_1297;)V method_26082 setStatusEffect + c Sets a status effect in this entity.\n\n

The preexistent status effect of the same type on this entity, if there is one, is cleared.\nTo actually add a status effect and undergo effect combination logic, call\n{@link #addStatusEffect(StatusEffectInstance, Entity)}.\n\n@apiNote In vanilla, this is exclusively used by the client to set a status\neffect on the player upon {@linkplain\nnet.minecraft.client.network.ClientPlayNetworkHandler#onEntityStatusEffect\nreception} of the status effect packet. + p 2 source + c the source entity or {@code null} for non-entity sources + p 1 effect + c the effect to set + m (I)I method_6064 getNextAirOnLand + p 1 air + m ()F method_6032 getHealth + m ()Lnet/minecraft/class_10630; method_67518 createEquipment + m ()V method_32325 addPowderSnowSlowIfNeeded + m (Lnet/minecraft/class_1282;)V method_65344 becomeAngry + p 1 damageSource + m ()Ljava/util/Map; method_6088 getActiveStatusEffects + m (F)V method_6031 turnHead + p 1 bodyRotation + m ()V method_6044 endCombat + m (Lnet/minecraft/class_1268;Z)V method_23667 swingHand + p 2 fromServerPlayer + p 1 hand + m (Lnet/minecraft/class_1799;)V method_6045 playEquipmentBreakEffects + p 1 stack + m ()Z method_35053 hasNoDrag + m (Lcom/mojang/serialization/Dynamic;)V method_71377 method_71377 + p 1 brain + m (Lnet/minecraft/class_1309;)V method_23733 onKilledBy + c Performs secondary effects after this mob has been killed.\n\n

The default behavior spawns a wither rose if {@code adversary} is a {@code WitherEntity}. + p 1 adversary + c the main adversary responsible for this entity's death + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5321;Lnet/minecraft/class_1799;Ljava/util/function/BiConsumer;)V method_61419 forEachShearedItem + p 4 lootConsumer + p 3 tool + p 2 lootTableKey + p 1 world + m (Ljava/util/List;Lnet/minecraft/class_1304;Lnet/minecraft/class_1799;)V method_66668 method_66668 + p 2 slot + p 3 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;F)F method_67346 getDamageBlockedAmount + p 1 world + p 2 source + p 3 amount + m ()V method_6069 clearPotionSwirls + m ()F method_53964 getMaxRelativeHeadRotation + c {@return the maximum rotation of the head relative to the body in degrees} + m ()V method_6021 clearActiveItem + m (Lnet/minecraft/class_1297;)V method_6038 onDismounted + p 1 vehicle + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;F)V method_6074 applyDamage + p 3 amount + p 2 source + p 1 world + m (F)V method_6033 setHealth + p 1 health + m ()Z method_36608 isPartOfGame + m ()Z method_33190 canTakeDamage + m ()I method_6022 getStuckArrowCount + m ()I method_6131 getDespawnCounter + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_64449 method_64449 + p 2 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5321;Ljava/util/function/BiConsumer;)Z method_64169 forEachGiftedItem + p 1 world + p 2 lootTableKey + p 3 lootConsumer + m (Lnet/minecraft/class_243;FFF)V method_70671 travelFlying + p 4 regularSpeed + p 1 movementInput + p 3 inLavaSpeed + p 2 inWaterSpeed + m (Lnet/minecraft/class_1282;)V method_6078 onDeath + p 1 damageSource + m ()Lnet/minecraft/class_1309$class_6823; method_39760 getFallSounds + m (Lnet/minecraft/class_1309;)Z method_18395 canTarget + p 1 target + m ()F method_6120 getBaseWaterMovementSpeedMultiplier + m (IZ)V method_6085 setLivingFlag + p 2 value + p 1 mask + m (Ljava/util/function/BiConsumer;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_64448 method_64448 + p 2 stack + m (Z)V method_6100 setJumping + p 1 jumping + m (Ljava/util/Collection;)V method_6129 onStatusEffectsRemoved + p 1 effects + m (Lnet/minecraft/class_2338;)V method_18392 setPositionInBed + p 1 pos + m ()V method_30127 swapHandStacks + m ()Z method_5936 canPickUpLoot + m ()Lnet/minecraft/class_5131; method_6127 getAttributes + m (Lnet/minecraft/class_1799;ZZ)Lnet/minecraft/class_1542; method_67517 createItemEntity + p 1 stack + p 3 retainOwnership + p 2 atSelf + m (Lnet/minecraft/class_1282;)V method_6013 playHurtSound + p 1 damageSource + m ()V method_6075 stopUsingItem + m (Lnet/minecraft/class_11372;Lcom/mojang/serialization/Dynamic;)V method_71374 method_71374 + p 1 brain + m (Lnet/minecraft/class_1282;F)V method_36977 damageHelmet + p 1 source + p 2 amount + m ()V method_30128 sendEquipmentChanges + c Sends equipment changes to nearby players. + m (Lnet/minecraft/class_1293;Lnet/minecraft/class_1297;)V method_6020 onStatusEffectApplied + p 2 source + p 1 effect + m (Lnet/minecraft/class_2338;Z)V method_6006 setNearbySongPlaying + p 1 songPosition + p 2 playing + m (Lnet/minecraft/class_1309;)Z method_64620 method_64620 + p 0 entity + m ()Lnet/minecraft/class_1799; method_76694 getActiveOrMainHandStack + m ()V method_6076 tickActiveItemStack + m (Lnet/minecraft/class_1304;Lnet/minecraft/class_1297;FZZZ)Z method_75123 pierce + p 5 knockback + p 6 dismount + p 1 slot + p 2 target + p 3 damage + p 4 dealDamage + m ()V method_6040 consumeItem + m (Lnet/minecraft/class_6862;)V method_6010 swimUpward + p 1 fluid + m (I)V method_6097 setStuckArrowCount + p 1 stuckArrowCount + m (Lnet/minecraft/class_1304;)Lnet/minecraft/class_1799; method_6118 getEquippedStack + p 1 slot + m (Lnet/minecraft/class_1293;Lnet/minecraft/class_1297;)Z method_37222 addStatusEffect + c Adds a status effect to this entity.\n\n@implNote A status effect may fail to be added due to getting overridden by\nexisting effects or the effect being incompatible with this entity.\n\n@return whether the active status effects of this entity has been modified + p 1 effect + c the effect to add + p 2 source + c the source entity or {@code null} for non-entity sources + m (Lnet/minecraft/class_1304;)Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; method_61427 method_61427 + p 0 slotx + m ()Lcom/google/common/collect/ImmutableList; method_24831 getPoses + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)V method_6090 takeShieldHit + p 1 world + p 2 attacker + m ()Lnet/minecraft/class_1309; method_6124 getPrimeAdversary + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;)V method_16080 drop + p 1 world + p 2 damageSource + m ()V method_52543 updateAttributes + m (Lnet/minecraft/class_1304;)Ljava/util/Map; method_59926 getLocationBasedEnchantmentEffects + p 1 slot + m (Lnet/minecraft/class_4050;)Lnet/minecraft/class_4048; method_55694 getBaseDimensions + p 1 pose + m ()V method_6053 tickGliding + m (Lnet/minecraft/class_1306;)Lnet/minecraft/class_1799; method_61420 getStackInArm + p 1 arm + m (Lnet/minecraft/class_3610;)Z method_26319 canWalkOnFluid + p 1 state + m (Lnet/minecraft/class_1297;)D method_18390 getAttackDistanceScalingFactor + p 1 entity + m ()Z method_6054 shouldDropExperience + c Returns if this entity should drop experience on death when the {@linkplain\nnet.minecraft.world.GameRules#DO_MOB_LOOT doMobLoot} game rule is\nenabled and has been attacked by a player.\n\n

If {@link #shouldAlwaysDropExperience() shouldAlwaysDropExperience()} returns {@code\ntrue}, this check is disregarded.\n\n@see #dropExperience\n@see #shouldAlwaysDropExperience()\n@see #getExperienceToDrop() + m (Lnet/minecraft/class_1297;)V method_6114 onAttacking + p 1 target + m ()V method_36362 updateGlowing + m ()Lnet/minecraft/class_1283; method_6066 getDamageTracker + m (F)V method_52544 setAbsorptionAmountUnclamped + p 1 absorptionAmount + m (F)F method_56077 clampScale + p 1 scale + m (Lnet/minecraft/class_1799;)V method_64399 giveOrDropStack + p 1 stack + m ()F method_6067 getAbsorptionAmount + m ()Ljava/util/Optional; method_18398 getSleepingPosition + m ()Z method_6039 isBlocking + m (Lnet/minecraft/class_1268;)V method_6104 swingHand + p 1 hand + m (Lnet/minecraft/class_1268;)V method_6019 setCurrentHand + p 1 hand + m ()F method_67125 getWeaponDisableBlockingForSeconds + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1304;Lnet/minecraft/class_5131;)V method_61422 onEquipmentRemoved + p 1 removedEquipment + p 2 slot + p 3 container + m ()I method_6028 getHandSwingDuration + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5321;Lnet/minecraft/class_1297;Lnet/minecraft/class_1799;Ljava/util/function/BiConsumer;)Z method_72394 forEachBrushedItem + p 1 world + p 4 tool + p 5 lootConsumer + p 2 lootTableKey + p 3 interactingEntity + m ()V method_66276 addBubbleParticles + m ()F method_6029 getMovementSpeed + m ()F method_6017 getSoundPitch + m (Ljava/util/Map;)V method_30121 checkHandStackSwap + c Notifies nearby players if the stacks in the hands have been swapped. + p 1 equipmentChanges + m (DF)I method_23329 computeFallDamage + p 3 damagePerDistance + p 1 fallDistance + m ()F method_18396 getArmorVisibility + m ()Z method_6113 isSleeping + m ()Z method_6101 isClimbing + m (Lnet/minecraft/class_1304;)Z method_6084 hasStackEquipped + p 1 slot + m (F)V method_6125 setMovementSpeed + p 1 movementSpeed + m (Lnet/minecraft/class_3414;)V method_56078 playSound + p 1 sound + m ()V method_75124 beforePlayerAttack + m ()V method_23328 playBlockFallSound + m (Ljava/util/function/Predicate;)I method_76444 getPiercedEntityCount + p 1 predicate + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1304;Lnet/minecraft/class_1799;)Z method_32323 method_32323 + p 2 stack + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1304;)V method_20235 sendEquipmentBreakStatus + p 2 slot + p 1 item + m ()Z method_6102 isMobOrPlayer + m (Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)V method_6122 setStackInHand + p 2 stack + p 1 hand + m (ID)V method_52539 lerpHeadYaw + p 1 headTrackingIncrements + p 2 serverHeadYaw + m (Lnet/minecraft/class_1282;)Z method_6095 tryUseDeathProtector + p 1 source + m ()V method_75125 useAttackEnchantmentEffects + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_18801 applyClimbingSpeed + p 1 motion + m (Lnet/minecraft/class_4050;)Z method_52542 wouldNotSuffocateInPose + p 1 pose + m (Lnet/minecraft/class_243;F)V method_70670 travelFlying + p 2 speed + p 1 movementInput + m (DDD)V method_6005 takeKnockback + p 1 strength + p 5 z + p 3 x + m ()Z method_6115 isUsingItem + m ()Lnet/minecraft/class_1268; method_6058 getActiveHand + m (DD)V method_61424 checkGlidingCollision + p 1 oldSpeed + p 3 newSpeed + m (Ljava/util/Map;)V method_30123 sendEquipmentChanges + c Sends equipment changes to nearby players.\n\n@see #sendEquipmentChanges() + p 1 equipmentChanges + m (Lnet/minecraft/class_1799;I)V method_6037 spawnItemParticles + p 2 count + p 1 stack + m ()V method_6007 tickMovement + m (Lnet/minecraft/class_1309;DZZ[D)Z method_64619 isEntityLookingAtMe + p 5 visualShape + p 6 checkedYs + p 1 entity + m ()F method_52541 getMaxAbsorption + m ()V method_75126 handleEffectsChanged + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_6077 canEnterTrapdoor + p 2 state + p 1 pos + m ()V method_18399 clearSleepingPosition + m (Lnet/minecraft/class_1309;)V method_6015 setAttacker + p 1 attacker + m ()V method_6023 tickNewAi + m ()Z method_63628 canGlide + m (Lnet/minecraft/class_3218;)V method_16078 dropInventory + p 1 world + m (Ljava/lang/String;)V method_68264 method_68264 + p 1 team + m ()I method_6048 getItemUseTime + m ()Lnet/minecraft/class_238; method_53510 getHitbox + c Gets the area in which this entity can be attacked by mobs whose attack box overlaps it.\n\n@see net.minecraft.entity.mob.MobEntity#getAttackBox + m (Lnet/minecraft/class_1293;ZLnet/minecraft/class_1297;)V method_6009 onStatusEffectUpgraded + p 3 source + p 2 reapplyEffect + p 1 effect + m (Lnet/minecraft/class_11372;Lnet/minecraft/class_2338;)V method_71375 method_71375 + p 1 pos + m (Lnet/minecraft/class_243;)V method_6091 travel + c Allows you to do certain speed and velocity calculations. This is useful for custom vehicle behavior, or custom entity movement. This is not to be confused with AI.\n\n

See vanilla examples of {@linkplain net.minecraft.entity.passive.AbstractHorseEntity#travel\ncustom horse vehicle} and {@linkplain net.minecraft.entity.mob.FlyingEntity#travel\nflying entities}. + p 1 movementInput + c represents the sidewaysSpeed, upwardSpeed, and forwardSpeed of the entity in that order + m (F)F method_6024 getLeaningPitch + p 1 tickProgress + m ()V method_6000 enterCombat + m ()V method_76773 playKineticHitSound + m ()Z method_6012 clearStatusEffects + m (Lnet/minecraft/class_6880;F)F method_66279 getEffectFadeFactor + p 2 tickProgress + p 1 effect + m ()V method_59928 playAttackSound + m (Lnet/minecraft/class_1293;)V method_52197 sendEffectToControllingPlayer + p 1 effect + m (I)I method_6130 getNextAirUnderwater + p 1 air + m (D)V method_76090 resetVerticalVelocityInFluid + p 1 y + m (Lnet/minecraft/class_3218;)I method_6110 getExperienceToDrop + c Called when this entity is killed and returns the amount of experience\nto drop.\n\n@see #dropXp\n@see #shouldAlwaysDropXp()\n@see #shouldDropXp() + p 1 world + m (Lnet/minecraft/class_1282;F)V method_6105 damageArmor + p 2 amount + p 1 source + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_18808 getProjectileType + p 1 stack + m (F)V method_6025 heal + c Heals this entity by the given {@code amount} of half-hearts.\n\n

A dead entity cannot be healed.\n\n@see #isDead() + p 1 amount + m ()I method_6014 getItemUseTimeLeft + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_61430 calcGlidingVelocity + p 1 oldVelocity + m (Lnet/minecraft/class_1799;ZZ)Lnet/minecraft/class_1542; method_7329 dropItem + p 1 stack + p 2 dropAtSelf + p 3 retainOwnership + m ()I method_63627 getPlayerHitTimer + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_243;)V method_49481 tickControlled + p 2 movementInput + p 1 controllingPlayer + m ()Lnet/minecraft/class_12392; method_76693 getAttackRange + m (Lnet/minecraft/class_1268;)Lnet/minecraft/class_1799; method_5998 getStackInHand + p 1 hand + m ()F method_49484 getOffGroundSpeed + m ()Z method_59925 hasLandedInFluid + m (Lnet/minecraft/class_1304;Lnet/minecraft/class_1799;Lnet/minecraft/class_10192;)Lnet/minecraft/class_6880; method_66667 getEquipSound + p 2 stack + p 3 equippableComponent + p 1 slot + m ()Z method_6123 isUsingRiptide + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1322;)V method_61423 method_61423 + p 2 modifier + p 1 attribute + m ()V method_58150 updatePotionSwirls + m ()Lnet/minecraft/class_4095; method_18868 getBrain + m (Lnet/minecraft/class_1297;)Z method_6057 canSee + p 1 entity + m ()V method_6027 updatePotionVisibility + m ()I method_6003 getGlidingTicks + m ()D method_61426 getEffectiveGravity + m ()Z method_70673 isJumping + m (Lnet/minecraft/class_1792;)Z method_24518 isHolding + c Checks if this entity is holding a certain item.\n\n

This checks both the entity's main and off hand. + p 1 item + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_1293; method_6112 getStatusEffect + p 1 effect + m (Lnet/minecraft/class_6880;)Z method_6059 hasStatusEffect + p 1 effect + m ()I method_21753 getStingerCount + m ()Lnet/minecraft/class_1799; method_6079 getOffHandStack + m (DZLnet/minecraft/class_243;)Lnet/minecraft/class_243; method_26317 applyFluidMovingSpeed + p 1 gravity + p 3 falling + p 4 motion + m ()Z method_6109 isBaby + m (Lnet/minecraft/class_2338;)V method_18402 setSleepingPosition + p 1 pos + m ()Lnet/minecraft/class_3414; method_6002 getDeathSound + m ()Lnet/minecraft/class_1799; method_62821 getBlockingItem + c {@return the item stack currently being used for blocking, such as shields} + m (Lnet/minecraft/class_1282;)V method_66283 playThornsSound + p 1 damageSource + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_1293; method_6111 removeStatusEffectInternal + c Removes a status effect from this entity without calling any listener.\n\n

This method does not perform any cleanup or synchronization operation.\nUnder most circumstances, calling {@link #removeStatusEffect(RegistryEntry)} is highly preferable.\n\n@return the status effect removed + p 1 effect + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1304; method_32326 getPreferredEquipmentSlot + p 1 stack + m (Lnet/minecraft/class_243;)V method_61429 travelInFluid + p 1 movementInput + m ()Z method_29503 hurtByWater + m (Lnet/minecraft/class_243;)V method_61417 travelGliding + p 1 movementInput + m (Lnet/minecraft/class_1304;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V method_6116 onEquipStack + p 3 newStack + p 2 oldStack + p 1 slot + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_243;)V method_49483 travelControlled + p 2 movementInput + p 1 controllingPlayer + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/class_4095; method_18867 deserializeBrain + p 1 dynamic + m ()Lnet/minecraft/class_1799; method_6030 getActiveItem + m (DLnet/minecraft/class_243;)Lnet/minecraft/class_243; method_61418 method_61418 + p 2 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)V method_23883 dropExperience + c Drops experience when this entity is killed.\n\n

To control the details of experience dropping, consider overriding\n{@link #shouldAlwaysDropExperience()}, {@link #shouldDropExperience()}, and\n{@link #getExperienceToDrop()}. + p 1 world + p 2 attacker + m (I)Lnet/minecraft/class_1304; method_32322 getEquipmentSlot + p 0 slotId + m (Lnet/minecraft/class_243;)V method_61428 travelMidAir + p 1 movementInput + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_3959$class_3960;Lnet/minecraft/class_3959$class_242;D)Z method_64618 canSee + p 4 entityY + p 2 shapeType + p 3 fluidHandling + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297$class_5529;)V method_60699 onRemoval + p 2 reason + p 1 world + m (Lnet/minecraft/class_1309;)V method_6060 knockback + p 1 target + m ()F method_37416 getJumpBoostVelocityModifier + m (F)I method_56993 getSafeFallDistance + p 1 health + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_6126 applyMovementEffects + p 2 pos + p 1 world + m (Lnet/minecraft/class_2338;)V method_18404 method_18404 + p 1 pos + m ()V method_41329 disableExperienceDropping + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_49482 getControlledMovementInput + p 2 movementInput + p 1 controllingPlayer + m (Lnet/minecraft/class_1657;I)V method_66277 setAttacking + p 1 attackingPlayer + p 2 playerHitTimer + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)Z method_6121 tryAttack + p 1 world + p 2 target + m (Lnet/minecraft/class_1309;)V method_5997 attackLivingEntity + p 1 target + m ()F method_48157 getDamageTiltYaw + m (Lnet/minecraft/class_2338;)V method_18403 sleep + p 1 pos + m (F)F method_56994 getJumpVelocity + p 1 strength + m (Lnet/minecraft/class_238;Lnet/minecraft/class_238;)V method_6035 tickRiptide + p 1 a + p 2 b + m ()I method_6117 getLastAttackedTime + m ()Z method_6128 isGliding + m (Lnet/minecraft/class_1282;)Lnet/minecraft/class_3414; method_6011 getHurtSound + p 1 source + m (Lnet/minecraft/class_1293;)Z method_6092 addStatusEffect + c Adds a status effect to this entity without specifying a source entity.\n\n

Consider calling {@link #addStatusEffect(StatusEffectInstance, Entity)}\nif the {@code effect} is caused by or from an entity.\n\n@return whether the active status effects of this entity has been modified\n@see #addStatusEffect(StatusEffectInstance, Entity) + p 1 effect + c the effect to add + m ()V method_6008 markEffectsDirty + m (Lnet/minecraft/class_243;DZD)V method_76089 travelInLava + p 5 y + p 4 falling + p 2 gravity + p 1 movementInput + m (Lnet/minecraft/class_1282;)Lnet/minecraft/class_1657; method_65343 setAttackingPlayer + p 1 damageSource + m ()V method_36549 addDeathParticles + m (Lnet/minecraft/class_1304;)Lnet/minecraft/class_1799; method_66670 method_66670 + p 0 slot + m ()F method_6106 getJumpVelocity + m (Lnet/minecraft/class_6880;)Z method_6016 removeStatusEffect + c Removes a status effect from this entity.\n\n

Calling this method will call cleanup methods on the status effect and trigger synchronization of effect particles with watching clients. If this entity is a player,\nthe change in the list of effects will also be synchronized with the corresponding client.\n\n@return whether the active status effects on this entity has been changed by\nthis call + p 1 effect + m ()Z method_56992 isInCreativeMode + m (F)F method_75120 getItemUseTime + p 1 baseTime + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;ZLnet/minecraft/class_5321;Ljava/util/function/Consumer;)V method_72396 generateLoot + p 2 damageSource + p 1 world + p 5 lootConsumer + p 4 lootTableKey + p 3 causedByPlayer + m (Lnet/minecraft/class_1304;)Z method_56991 canUseSlot + p 1 slot + m (Lnet/minecraft/class_1297;)V method_6087 pushAway + p 1 entity + m ()Ljava/util/Optional; method_24832 getClimbingPos + m (Lnet/minecraft/class_2338;)V method_67650 method_67650 + p 1 pos + m (Lnet/minecraft/class_5131;Lnet/minecraft/class_6880;Lnet/minecraft/class_1322;)V method_61421 method_61421 + p 2 modifier + p 1 attribute + m ()F method_6107 getSoundVolume + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;Z)V method_6099 dropEquipment + p 1 world + p 2 source + p 3 causedByPlayer + m ()V method_6119 tickHandSwing + m (Lnet/minecraft/class_243;DZD)V method_76087 travelInWater + p 5 y + p 4 falling + p 2 gravity + p 1 movementInput + m (Lnet/minecraft/class_1282;F)F method_6036 modifyAppliedDamage + c {@return the modified damage value for the applied {@code damage}}\n\n@apiNote Subclasses should override this to make the entity take reduced damage.\n\n@implNote This applies enchantments and the resistance effect. {@link\nnet.minecraft.entity.mob.WitchEntity} uses this to negate their own damage and reduce the\napplied status effect damage. + p 2 amount + p 1 source + m ()Z method_21754 isHoldingOntoLadder + c @return {@code true} if this entity should not lose height while in a climbing state\n@see net.minecraft.entity.LivingEntity + m ()V method_66282 tickMovementInput + m (F)F method_18802 getMovementSpeed + p 1 slipperiness + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1799;Lnet/minecraft/class_8567$class_8568;)Lnet/minecraft/class_8567; method_72397 method_72397 + p 3 parameterSetBuilder + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_8567$class_8568;)Lnet/minecraft/class_8567; method_64171 method_64171 + p 2 parameterSetBuilder + m ()F method_17825 getScaleFactor + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1799;)Z method_24519 method_24519 + p 1 stack + m ()V method_6108 updatePostDeath + m (I)Lnet/minecraft/class_3414; method_6041 getFallSound + p 1 distance + m (Ljava/util/UUID;I)V method_66278 setAttacking + p 1 attackingPlayer + p 2 playerHitTimer + m (Ljava/util/Collection;)Z method_6089 containsOnlyAmbientEffects + p 0 effects + m ()V method_66281 stopGliding + m (Lnet/minecraft/class_1282;F)F method_6132 applyArmorToDamage + p 2 amount + p 1 source + m (Lnet/minecraft/class_1304;Lnet/minecraft/class_1799;)V method_5673 equipStack + p 2 stack + p 1 slot + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_1324; method_5996 getAttributeInstance + p 1 attribute +c net/minecraft/class_1309$class_6823 net/minecraft/entity/LivingEntity$FallSounds + f Lnet/minecraft/class_3414; comp_301 small + f Lnet/minecraft/class_3414; comp_302 big + m ()Lnet/minecraft/class_3414; comp_302 big + m ()Lnet/minecraft/class_3414; comp_301 small + m (Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;)V + p 1 small + p 2 big +c net/minecraft/class_1308 net/minecraft/entity/mob/MobEntity + f Lnet/minecraft/class_1330; field_6188 bodyControl + f Ljava/util/List; field_52448 EQUIPMENT_INIT_ORDER + f Lnet/minecraft/class_1413; field_6190 visibilityCache + f Lnet/minecraft/class_9817$class_9818; field_52221 leashData + f F field_30084 BASE_ENCHANTED_ARMOR_CHANCE + c The base chance (before applying difficulty) that a mob's equipped armor can become enchanted.\n\n@see MobEntity#enchantEquipment + f F field_30085 BASE_ENCHANTED_MAIN_HAND_EQUIPMENT_CHANCE + c The base chance (before applying difficulty) that a mob's equipped item can become enchanted.\n\n@see MobEntity#enchantMainHandItem + f I field_6191 ambientSoundChance + f F field_30083 DEFAULT_CAN_PICKUP_LOOT_CHANCE + c Used by Zombies to control the chance that they spawn with the ability to pick up loot.\n\n@see ZombieEntity#initialize + f Ljava/lang/String; field_60545 DROP_CHANCES_KEY + f Lnet/minecraft/class_1355; field_6185 targetSelector + c Contains goals used to select this entity's target.\nActions in this queue are executed first so the selected target is available\nto the rest of the AI's goals. + f I field_6194 experiencePoints + f Z field_57591 DEFAULT_CAN_PICK_UP_LOOT + f Lnet/minecraft/class_1309; field_6199 target + f Lnet/minecraft/class_2382; field_38386 ITEM_PICK_UP_RANGE_EXPANDER + f Lnet/minecraft/class_1335; field_6207 moveControl + f F field_62910 ARMOR_UPGRADE_ROLLS + f J field_6184 lootTableSeed + f F field_62909 ARMOR_UPGRADE_CHANCE + f Z field_57593 DEFAULT_LEFT_HANDED + f Lnet/minecraft/class_2940; field_6193 MOB_FLAGS + f I field_30089 LEFT_HANDED_FLAG + f Lnet/minecraft/class_1333; field_6206 lookControl + f Ljava/lang/String; field_60548 NO_AI_KEY + f D field_45969 ATTACK_RANGE + f Lnet/minecraft/class_10582; field_55677 equipmentDropChances + f F field_30091 BASE_SPAWN_EQUIPMENT_CHANCE + c The base chance (before applying local difficulty) that this mob will spawn with equipment.\n\n@see MobEntity#initEquipment + f Z field_57592 DEFAULT_PERSISTENCE_REQUIRED + f Z field_6200 persistent + f I field_30087 MINIMUM_DROPPED_EXPERIENCE_PER_EQUIPMENT + c The minimum additional experience a mob will drop per item of equipment they have.\n\n@see MobEntity#getExperienceToDrop + f Lnet/minecraft/class_1355; field_6201 goalSelector + c Contains actions the entity can perform. These may consume, for example, the target\nentity as determined during the {@link MobEntity#targetSelector}'s execution. + f I field_30088 AI_DISABLED_FLAG + f Lnet/minecraft/class_2338; field_18074 positionTarget + f Ljava/util/Optional; field_6198 lootTable + f I field_30090 ATTACKING_FLAG + f Z field_6203 canPickUpLoot + f Lnet/minecraft/class_1408; field_6189 navigation + f Ljava/lang/String; field_60546 LEFT_HANDED_KEY + f Lnet/minecraft/class_2960; field_51997 RANDOM_SPAWN_BONUS_MODIFIER_ID + f Z field_57594 DEFAULT_NO_AI + f Lnet/minecraft/class_1334; field_6204 jumpControl + f Ljava/util/Map; field_6196 pathfindingPenalties + f I field_18075 positionTargetRange + f Ljava/lang/String; field_60547 CAN_PICK_UP_LOOT_KEY + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_1304;Lnet/minecraft/class_5819;FLnet/minecraft/class_1266;)V method_59927 enchantEquipment + p 5 localDifficulty + p 1 world + p 2 slot + p 3 random + p 4 power + m ()V method_5966 playAmbientSound + m (Lnet/minecraft/class_3218;)Lnet/minecraft/class_8567; method_58635 createEquipmentLootParameters + p 1 world + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_10179;Lnet/minecraft/class_3730;Lnet/minecraft/class_10179$class_10180;)Lnet/minecraft/class_1308; method_63631 convertTo + p 2 context + p 1 entityType + p 4 finalizer + p 3 reason + m ()Lnet/minecraft/class_1408; method_5942 getNavigation + m (Lnet/minecraft/class_3218;)V method_5958 mobTick + p 1 world + m ()I method_5970 getMinAmbientSoundDelay + m ()Lnet/minecraft/class_1335; method_5962 getMoveControl + m ()Lnet/minecraft/class_1333; method_5988 getLookControl + m ()I method_5978 getMaxLookPitchChange + c {@return the maximum degrees which the pitch can change when looking}\n\n

This is used by the look control.\n\n

It can return from {@code 1} for entities that can hardly raise their head,\nlike axolotls or dolphins, or {@code 180} for entities that can freely raise\nand lower their head, like guardians. The default return value is {@code 40}. + m (Lnet/minecraft/class_3218;Ljava/util/function/Predicate;)Ljava/util/Set; method_60972 dropForeignEquipment + c Drops all foreign equipment (equipment which this entity picked up from the world and should be always dropped undamaged).\n\n@return a set of {@code EquipmentSlot}s where each slot is being occupied by an item which did not pass the predicate + p 2 dropPredicate + p 1 world + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1308;)V method_24522 method_24522 + p 2 entity + m ()Z method_18410 hasPositionTarget + m ()Z method_18411 isInPositionTargetRange + m (Ljava/util/List;Lnet/minecraft/class_4135;)V method_74658 method_74658 + p 1 goal + m (Lnet/minecraft/class_1304;Lnet/minecraft/class_1799;)V method_24834 equipLootStack + p 2 stack + p 1 slot + m (F)V method_5976 setUpwardSpeed + p 1 upwardSpeed + m (Lnet/minecraft/class_7;F)V method_5941 setPathfindingPenalty + p 2 penalty + p 1 nodeType + m (I)Z method_5969 spawnsTooManyForEachTry + p 1 count + m ()V method_20417 updateGoalControls + m (Lnet/minecraft/class_4538;)Z method_5957 canSpawn + p 1 world + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_29506 interactWithItem + p 2 hand + p 1 player + m ()Lnet/minecraft/class_3414; method_5994 getAmbientSound + m (Ljava/util/function/Predicate;)V method_47825 clearGoals + p 1 predicate + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_5992 interactMob + p 2 hand + p 1 player + m (Lnet/minecraft/class_2338;)Z method_18407 isInPositionTargetRange + p 1 pos + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1308;)V method_18249 onPlayerSpawnedChild + p 1 player + p 2 child + m (Lnet/minecraft/class_1304;I)Lnet/minecraft/class_1792; method_5948 getEquipmentForSlot + p 1 equipmentLevel + p 0 equipmentSlot + m (Lnet/minecraft/class_1352;)Z method_47824 method_47824 + p 0 goal + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_1408; method_5965 createNavigation + p 1 world + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20636 canMobSpawn + p 4 random + p 3 pos + p 2 spawnReason + p 1 world + p 0 type + m ()V method_35056 clearGoalsAndTasks + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1542;)V method_5949 loot + p 1 world + p 2 itemEntity + m ()Lnet/minecraft/class_2382; method_42646 getItemPickUpRangeExpander + m ()I method_18413 getPositionTargetRange + m (D)Lnet/minecraft/class_238; method_53511 getAttackBox + c Gets the area in which this mob can attack entities whose hitbox intersects it.\n\n@see LivingEntity#getHitbox + p 1 attackRange + m (Lnet/minecraft/class_9652;)V method_58634 setEquipmentFromTable + p 1 equipmentTable + m ()Lnet/minecraft/class_1799; method_56676 getBodyArmor + m (Z)V method_7217 setBaby + p 1 baby + m ()I method_20240 getMaxLookYawChange + c {@return the maximum degrees which the yaw can change when looking}\n\n

This is used by the look control.\n\n

The default return value is {@code 10}. + m ()Z method_17326 cannotDespawn + m ()Lnet/minecraft/class_1334; method_5993 getJumpControl + m ()Lnet/minecraft/class_1304; method_75127 getDaylightProtectionSlot + m ()Z method_5987 isAiDisabled + m ()Z method_56677 isWearingBodyArmor + m ()V method_5975 resetSoundDelay + m ()V method_51504 onStartPathfinding + m ()Z method_5947 isPersistent + m ()V method_5959 initGoals + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Lnet/minecraft/class_1304;)Z method_65347 prefersNewWeapon + p 3 slot + p 2 currentStack + p 1 newStack + m (Lnet/minecraft/class_1304;)Lnet/minecraft/class_1263; method_66674 createEquipmentInventory + p 1 slot + m ()F method_76091 getRiderChargingSpeedMultiplier + m ()Lnet/minecraft/class_5132$class_5133; method_26828 createMobAttributes + m ()V method_5990 playSpawnEffects + m (Lnet/minecraft/class_1799;)V method_56678 equipBodyArmor + p 1 stack + m ()V method_51503 onFinishPathfinding + m ()Z method_6510 isAttacking + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Lnet/minecraft/class_1304;)Z method_65346 prefersNewArmor + p 3 slot + p 2 currentStack + p 1 newStack + m (Lnet/minecraft/class_1657;)Z method_71768 canRemoveSaddle + p 1 player + m ()V method_56080 clampHeadYaw + m ()Lnet/minecraft/class_1413; method_5985 getVisibilityCache + m ()I method_5986 getMaxHeadRotation + c {@return the maximum degrees which the head yaw can differ from the body yaw}\n\n

This is used by the body control.\n\n

It can return from {@code 1} for entities that can hardly rotate their head,\nlike axolotls or dolphins, or {@code 180} for entities that can freely rotate\ntheir head, like shulkers. The default return value is {@code 75}. + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_10179;Lnet/minecraft/class_10179$class_10180;)Lnet/minecraft/class_1308; method_29243 convertTo + c Converts this entity to the provided {@code entityType}.\n

The new entity will keep many of the properties set for this entity,\nincluding its vehicle, its name and whether it is persistent or not.\n

If {@code keepEquipment} is {@code true}, it will also keep its equipment. + p 3 finalizer + p 1 entityType + c the entity type to convert to + p 2 context + m ()Lnet/minecraft/class_10582; method_66286 getEquipmentDropChances + m ()Lnet/minecraft/class_1330; method_5963 createBodyControl + m (Z)V method_5977 setAiDisabled + p 1 aiDisabled + m ()V method_71614 resetLeashMomentum + m ()Z method_5961 isLeftHanded + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)V method_6475 eat + p 2 hand + p 1 player + p 3 stack + m (Lnet/minecraft/class_2338;I)V method_18408 setPositionTarget + p 1 target + p 2 range + m (Lnet/minecraft/class_1799;)Z method_60974 method_60974 + p 0 stack + m ()Lnet/minecraft/class_2338; method_18412 getPositionTarget + m (Z)V method_5937 setLeftHanded + p 1 leftHanded + m (D)Z method_5974 canImmediatelyDespawn + p 1 distanceSquared + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_5819;Lnet/minecraft/class_1266;)V method_5984 updateEnchantments + p 3 localDifficulty + p 1 world + p 2 random + m ()V method_35055 clearPositionTarget + m (Z)V method_19540 setAttacking + p 1 attacking + m (Lnet/minecraft/class_1799;)Z method_76695 canUseRangedWeapon + p 1 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)Z method_20820 canGather + p 1 world + p 2 stack + m ()I method_5945 getLimitPerChunk + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_6880;Lnet/minecraft/class_1304;)D method_63632 getAttributeValueWithStack + p 3 slot + p 2 attribute + p 1 stack + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_1266;)V method_5964 initEquipment + p 1 random + p 2 localDifficulty + m (Lnet/minecraft/class_5321;Ljava/util/Map;)V method_59665 setEquipmentFromTable + p 1 lootTable + p 2 slotDropChances + m (Z)V method_5952 setCanPickUpLoot + p 1 canPickUpLoot + m ()Z method_5972 isAffectedByDaylight + m (Lnet/minecraft/class_243;)Z method_70676 isInPositionTargetRange + p 1 pos + m ()V method_75128 tickBurnInDaylight + m ()Z method_26323 movesIndependently + c When true, causes this entity to take over pathfinding for its controlling passenger. + m (Lnet/minecraft/class_1799;)Z method_5939 canPickupItem + p 1 stack + m ()V method_55695 stopMovement + m (Lnet/minecraft/class_1297;FF)V method_5951 lookAtEntity + p 1 targetEntity + p 2 maxYawChange + p 3 maxPitchChange + m (Lnet/minecraft/class_1304;)V method_25939 setDropGuaranteed + p 1 slot + m ()Z method_66672 hasSaddleEquipped + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Lnet/minecraft/class_1304;)Z method_5955 prefersNewEquipment + p 3 slot + p 2 currentStack + p 1 newStack + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_26320 prefersNewDamageableItem + p 1 newStack + p 2 oldStack + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_5819;Lnet/minecraft/class_1304;Lnet/minecraft/class_1266;)V method_30758 enchantEquipment + p 4 localDifficulty + p 2 random + p 3 slot + p 1 world + m (Lnet/minecraft/class_3218;)V method_60973 dropAllForeignEquipment + p 1 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;)Z method_5979 canSpawn + p 2 spawnReason + p 1 world + m (Lnet/minecraft/class_1304;)Z method_71148 isWearing + p 1 slot + m (Lnet/minecraft/class_1309;)V method_5980 setTarget + p 1 target + m ()V method_5971 setPersistent + m ()V method_5983 onEatingGrass + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_24523 tryEquip + p 1 world + p 2 stack + m (FFF)F method_5960 changeAngle + c Changes the angle from {@code from} to {@code to}, or by {@code max} degrees\nif {@code to} is too big a change.\n\n

This is the same as {@link LookControl#changeAngle(float, float, float)}. + p 3 max + p 2 to + p 1 from + m (F)V method_5930 setForwardSpeed + p 1 forwardSpeed + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_5819;Lnet/minecraft/class_1266;)V method_30759 enchantMainHandItem + p 3 localDifficulty + p 2 random + p 1 world + m ()Lnet/minecraft/class_1309; method_59664 getTargetInBrain + m (Lnet/minecraft/class_11372;Lnet/minecraft/class_5321;)V method_67651 method_67651 + p 1 lootTableKey + m (Lnet/minecraft/class_7;)F method_5944 getPathfindingPenalty + p 1 nodeType + m (F)V method_5938 setSidewaysSpeed + p 1 sidewaysSpeed + m ()Lnet/minecraft/class_6862; method_65345 getPreferredWeapons + m (Lnet/minecraft/class_1309;)Z method_42150 isInAttackRange + p 1 entity + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_1266;Lnet/minecraft/class_3730;Lnet/minecraft/class_1315;)Lnet/minecraft/class_1315; method_5943 initialize + p 4 entityData + p 2 difficulty + p 3 spawnReason + p 1 world +c net/minecraft/class_2636 net/minecraft/block/entity/MobSpawnerBlockEntity + f Lnet/minecraft/class_1917; field_12114 logic + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2636;)V method_31697 serverTick + p 0 world + p 2 state + p 1 pos + p 3 blockEntity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2636;)V method_31696 clientTick + p 1 pos + p 0 world + p 3 blockEntity + p 2 state + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m ()Lnet/minecraft/class_2622; method_38251 toUpdatePacket + m ()Lnet/minecraft/class_1917; method_11390 getLogic +c net/minecraft/class_2637 net/minecraft/network/packet/s2c/play/ChunkDeltaUpdateS2CPacket + f [Lnet/minecraft/class_2680; field_26347 blockStates + f Lnet/minecraft/class_4076; field_26345 sectionPos + f [S field_26346 positions + c The packed local positions for each entry in {@link #blockStates}.\n\n@see ChunkSectionPos#packLocal(BlockPos) + f Lnet/minecraft/class_9139; field_47964 CODEC + m (Ljava/util/function/BiConsumer;)V method_30621 visitUpdates + c Calls the given consumer for each pair of block position and block state contained in this packet. + p 1 visitor + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_4076;Lit/unimi/dsi/fastutil/shorts/ShortSet;Lnet/minecraft/class_2826;)V + p 2 positions + p 3 section + p 1 sectionPos + c the position of the given chunk section that will be sent to the client + m (Lnet/minecraft/class_2540;)V method_55911 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11392 apply +c net/minecraft/class_3968 net/minecraft/client/render/entity/model/AbstractZombieModel + m (Lnet/minecraft/class_10086;)V method_17791 setAngles +c net/minecraft/class_3940 net/minecraft/client/particle/BillboardParticle + c A {@link Particle} which renders a camera-facing sprite with a target texture scale. + f F field_62636 alpha + f F field_62638 lastZRotation + f F field_62634 green + f F field_17867 scale + f F field_62635 blue + f F field_62637 zRotation + f F field_62633 red + f Lnet/minecraft/class_1058; field_62632 sprite + m (Lnet/minecraft/class_11944;Lnet/minecraft/class_4184;F)V method_3074 render + p 3 tickProgress + p 2 camera + p 1 submittable + m (Lnet/minecraft/class_4002;)V method_74306 updateSprite + p 1 spriteProvider + m (Lnet/minecraft/class_1058;)V method_74307 setSprite + p 1 sprite + m (Lnet/minecraft/class_11944;Lorg/joml/Quaternionf;FFFF)V method_60375 renderVertex + p 5 z + p 4 y + p 3 x + p 2 rotation + p 6 tickProgress + p 1 submittable + m ()F method_18136 getMaxV + c {@return the upper V coordinate of the UV coordinates used to draw this particle} + m ()F method_18134 getMaxU + c {@return the upper U coordinate of the UV coordinates used to draw this particle} + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_1058;)V + p 6 z + p 4 y + p 10 velocityY + p 8 velocityX + p 14 sprite + p 12 velocityZ + p 2 x + p 1 world + m (Lnet/minecraft/class_11944;Lnet/minecraft/class_4184;Lorg/joml/Quaternionf;F)V method_60373 render + p 3 rotation + p 4 tickProgress + p 1 submittable + p 2 camera + m ()Lnet/minecraft/class_3940$class_11941; method_74255 getRenderType + m (FFF)V method_74305 setColor + p 2 green + p 3 blue + p 1 red + m ()Lnet/minecraft/class_3940$class_8981; method_55245 getRotator + m (F)F method_18132 getSize + c {@return the draw scale of this particle, which is used while rendering in {@link #buildGeometry}} + p 1 tickProgress + m (Lnet/minecraft/class_638;DDDLnet/minecraft/class_1058;)V + p 4 y + p 6 z + p 8 sprite + p 1 world + p 2 x + m ()F method_18133 getMinU + c {@return the lower U coordinate of the UV coordinates used to draw this particle} + m ()F method_18135 getMinV + c {@return the lower V coordinate of the UV coordinates used to draw this particle} + m (F)V method_74308 setAlpha + p 1 alpha +c net/minecraft/class_3940$class_8981 net/minecraft/client/particle/BillboardParticle$Rotator + f Lnet/minecraft/class_3940$class_8981; field_47458 Y_AND_W_ONLY + f Lnet/minecraft/class_3940$class_8981; field_47457 ALL_AXIS + m (Lorg/joml/Quaternionf;Lnet/minecraft/class_4184;F)V setRotation setRotation + p 3 tickProgress + p 2 camera + p 1 quaternion + m (Lorg/joml/Quaternionf;Lnet/minecraft/class_4184;F)V method_55247 method_55247 + p 0 quaternion + p 1 camera + p 2 tickProgress + m (Lorg/joml/Quaternionf;Lnet/minecraft/class_4184;F)V method_55246 method_55246 + p 0 quaternion + p 1 camera + p 2 tickProgress +c net/minecraft/class_3940$class_11941 net/minecraft/client/particle/BillboardParticle$RenderType + f Lnet/minecraft/class_3940$class_11941; field_62639 BLOCK_ATLAS_TRANSLUCENT + f Lnet/minecraft/class_3940$class_11941; field_64447 ITEM_ATLAS_TRANSLUCENT + f Lnet/minecraft/class_3940$class_11941; field_62641 PARTICLE_ATLAS_TRANSLUCENT + f Lnet/minecraft/class_3940$class_11941; field_62640 PARTICLE_ATLAS_OPAQUE + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; comp_4896 pipeline + f Z comp_4894 translucent + f Lnet/minecraft/class_2960; comp_4895 textureAtlasLocation + m ()Z comp_4894 translucent + m ()Lnet/minecraft/class_2960; comp_4895 textureAtlasLocation + m ()Lcom/mojang/blaze3d/pipeline/RenderPipeline; comp_4896 pipeline + m (ZLnet/minecraft/class_2960;Lcom/mojang/blaze3d/pipeline/RenderPipeline;)V + p 1 translucent + p 2 textureAtlasLocation + p 3 pipeline +c net/minecraft/class_3941 net/minecraft/client/render/block/entity/CampfireBlockEntityRenderer + f F field_32824 SCALE + f Lnet/minecraft/class_10442; field_62252 itemModelManager + m (Lnet/minecraft/class_3924;Lnet/minecraft/class_11958;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74364 updateRenderState + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 ctx + m (Lnet/minecraft/class_11958;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_17581 render + m ()Lnet/minecraft/class_11958; method_74363 createRenderState +c net/minecraft/class_3942 net/minecraft/client/render/block/entity/LecternBlockEntityRenderer + f Lnet/minecraft/class_557$class_11650; field_61791 bookModelState + f Lnet/minecraft/class_11701; field_61790 spriteHolder + f Lnet/minecraft/class_557; field_17428 book + m (Lnet/minecraft/class_11967;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_17582 render + m (Lnet/minecraft/class_3722;Lnet/minecraft/class_11967;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74378 updateRenderState + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 ctx + m ()Lnet/minecraft/class_11967; method_74377 createRenderState +c net/minecraft/class_2611 net/minecraft/block/entity/EnderChestBlockEntity + f Lnet/minecraft/class_5561; field_27217 stateManager + f Lnet/minecraft/class_5560; field_27216 lidAnimator + m ()V method_31690 onScheduledTick + m (Lnet/minecraft/class_11565;)V method_11219 onOpen + p 1 user + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2611;)V method_31689 clientTick + p 3 blockEntity + p 2 state + p 1 pos + p 0 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m (Lnet/minecraft/class_11565;)V method_11220 onClose + p 1 user + m (Lnet/minecraft/class_1657;)Z method_11218 canPlayerUse + p 1 player +c net/minecraft/class_3936 net/minecraft/client/gui/screen/ingame/ScreenHandlerProvider + m ()Lnet/minecraft/class_1703; method_17577 getScreenHandler +c net/minecraft/class_2605 net/minecraft/block/entity/EnchantingTableBlockEntity + f F field_11966 nextPageTurningSpeed + f F field_11967 flipTurn + f Lnet/minecraft/class_2561; field_63043 CONTAINER_NAME_TEXT + f F field_11964 bookRotation + f F field_11965 pageTurningSpeed + f F field_11958 nextPageAngle + f F field_11969 flipRandom + f I field_11961 ticks + f Lnet/minecraft/class_2561; field_11959 customName + f F field_11962 targetBookRotation + f F field_11963 lastBookRotation + f F field_11960 pageAngle + f Lnet/minecraft/class_5819; field_11968 RANDOM + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2605;)V method_31688 tick + p 0 world + p 3 blockEntity + p 2 state + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state + m (Lnet/minecraft/class_2561;)V method_11179 setCustomName + p 1 customName +c net/minecraft/class_3937 net/minecraft/client/particle/CampfireSmokeParticle + m (Lnet/minecraft/class_638;DDDDDDZLnet/minecraft/class_1058;)V + p 15 sprite + p 14 signal + p 1 world + p 10 velocityY + p 12 velocityZ + p 6 z + p 8 velocityX + p 2 x + p 4 y +c net/minecraft/class_3937$class_3938 net/minecraft/client/particle/CampfireSmokeParticle$CosySmokeFactory + f Lnet/minecraft/class_4002; field_18290 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_17579 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_3937$class_3995 net/minecraft/client/particle/CampfireSmokeParticle$SignalSmokeFactory + f Lnet/minecraft/class_4002; field_17789 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_18820 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_2608 net/minecraft/block/entity/DropperBlockEntity + f Lnet/minecraft/class_2561; field_63042 CONTAINER_NAME_TEXT +c net/minecraft/class_2601 net/minecraft/block/entity/DispenserBlockEntity + f I field_31340 INVENTORY_SIZE + f Lnet/minecraft/class_2561; field_63041 CONTAINER_NAME_TEXT + f Lnet/minecraft/class_2371; field_11945 inventory + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_11075 addToFirstFreeSlot + p 1 stack + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m (Lnet/minecraft/class_5819;)I method_11076 chooseNonEmptySlot + p 1 random +c net/minecraft/class_2602 net/minecraft/network/listener/ClientPlayPacketListener + c A client side packet listener where play stage packets from the server are processed. + m (Lnet/minecraft/class_2673;)V method_11098 onWorldEvent + p 1 packet + m (Lnet/minecraft/class_9632;)V method_59504 onProjectilePower + p 1 packet + m (Lnet/minecraft/class_2664;)V method_11124 onExplosion + p 1 packet + m (Lnet/minecraft/class_2626;)V method_11136 onBlockUpdate + p 1 packet + m (Lnet/minecraft/class_2735;)V method_11135 onUpdateSelectedSlot + p 1 packet + m (Lnet/minecraft/class_2648;)V method_11089 onOpenMountScreen + p 1 packet + m (Lnet/minecraft/class_2781;)V method_11149 onEntityAttributes + p 1 packet + m (Lnet/minecraft/class_5905;)V method_34084 onTitleFade + p 1 packet + m (Lnet/minecraft/class_7439;)V method_43596 onGameMessage + p 1 packet + m (Lnet/minecraft/class_4282;)V method_20320 onChunkRenderDistanceCenter + p 1 packet + m (Lnet/minecraft/class_8738;)V method_52799 onChunkSent + p 1 packet + m (Lnet/minecraft/class_6682;)V method_39025 onSimulationDistance + p 1 packet + m (Lnet/minecraft/class_5891;)V method_34074 onEnterCombat + p 1 packet + m (Lnet/minecraft/class_8043;)V method_48295 onDamageTilt + p 1 packet + m (Lnet/minecraft/class_2653;)V method_11109 onScreenHandlerSlotUpdate + p 1 packet + m (Lnet/minecraft/class_2617;)V method_11129 onStatistics + p 1 packet + m (Lnet/minecraft/class_2739;)V method_11093 onEntityTrackerUpdate + p 1 packet + m (Lnet/minecraft/class_2620;)V method_11116 onBlockBreakingProgress + p 1 packet + m (Lnet/minecraft/class_7827;)V method_45724 onProfilelessChatMessage + p 1 packet + m (Lnet/minecraft/class_8588;)V method_52798 onEnterReconfiguration + p 1 packet + m (Lnet/minecraft/class_2684;)V method_11155 onEntity + p 1 packet + m (Lnet/minecraft/class_2759;)V method_11142 onPlayerSpawnPosition + p 1 packet + m (Lnet/minecraft/class_9178;)V method_56607 onDebugSample + p 1 packet + m (Lnet/minecraft/class_7617;)V method_44814 onRemoveMessage + p 1 packet + m (Lnet/minecraft/class_8212;)V method_49631 onChunkBiomeData + p 1 packet + m (Lnet/minecraft/class_2637;)V method_11100 onChunkDeltaUpdate + p 1 packet + m (Lnet/minecraft/class_7495;)V method_44075 onServerMetadata + p 1 packet + m (Lnet/minecraft/class_2772;)V method_11105 onPlayerListHeader + p 1 packet + m (Lnet/minecraft/class_2649;)V method_11153 onInventory + p 1 packet + m (Lnet/minecraft/class_2757;)V method_11118 onScoreboardScoreUpdate + p 1 packet + m (Lnet/minecraft/class_4273;)V method_20203 onChunkLoadDistance + p 1 packet + m (Lnet/minecraft/class_5892;)V method_34075 onDeathMessage + p 1 packet + m (Lnet/minecraft/class_2788;)V method_11106 onSynchronizeRecipes + p 1 packet + m (Lnet/minecraft/class_2629;)V method_11078 onBossBar + p 1 packet + m (Lnet/minecraft/class_10269;)V method_64556 onRecipeBookSettings + p 1 packet + m (Lnet/minecraft/class_2651;)V method_11131 onScreenHandlerPropertyUpdate + p 1 packet + m (Lnet/minecraft/class_9833;)V method_61186 onMoveMinecartAlongTrack + p 1 packet + m (Lnet/minecraft/class_2736;)V method_11159 onScoreboardDisplay + p 1 packet + m (Lnet/minecraft/class_5903;)V method_34082 onSubtitle + p 1 packet + m (Lnet/minecraft/class_8739;)V method_52800 onStartChunkSend + p 1 packet + m (Lnet/minecraft/class_11986;)V method_74459 onGameTestHighlightPos + p 1 packet + m (Lnet/minecraft/class_5896;)V method_34078 onWorldBorderInterpolateSize + p 1 packet + m (Lnet/minecraft/class_2604;)V method_11112 onEntitySpawn + c Handles the spawning of non-living entities. + p 1 packet + m (Lnet/minecraft/class_2779;)V method_11130 onAdvancements + p 1 packet + m (Lnet/minecraft/class_2696;)V method_11154 onPlayerAbilities + p 1 packet + m (Lnet/minecraft/class_5900;)V method_11099 onTeam + p 1 packet + m (Lnet/minecraft/class_2708;)V method_11157 onPlayerPositionLook + p 1 packet + m (Lnet/minecraft/class_10264;)V method_64553 onEntityPositionSync + p 1 packet + m (Lnet/minecraft/class_2675;)V method_11077 onParticle + p 1 packet + m (Lnet/minecraft/class_2748;)V method_11101 onExperienceBarUpdate + p 1 packet + m (Lnet/minecraft/class_2678;)V method_11120 onGameJoin + p 1 packet + m (Lnet/minecraft/class_2726;)V method_11139 onEntitySetHeadYaw + p 1 packet + m (Lnet/minecraft/class_9834;)V method_61187 onSetCursorItem + p 1 packet + m (Lnet/minecraft/class_5904;)V method_34083 onTitle + p 1 packet + m (Lnet/minecraft/class_5890;)V method_34073 onEndCombat + p 1 packet + m (Lnet/minecraft/class_5897;)V method_34079 onWorldBorderSizeChanged + p 1 packet + m (Lnet/minecraft/class_2622;)V method_11094 onBlockEntityUpdate + p 1 packet + m (Lnet/minecraft/class_8042;)V method_48294 onBundle + p 1 packet + m (Lnet/minecraft/class_2770;)V method_11082 onStopSound + p 1 packet + m (Lnet/minecraft/class_7828;)V method_45725 onPlayerRemove + p 1 packet + m (Lnet/minecraft/class_10265;)V method_64554 onPlayerRotation + p 1 packet + m (Lnet/minecraft/class_2623;)V method_11158 onBlockEvent + p 1 packet + m (Lnet/minecraft/class_2718;)V method_11119 onRemoveEntityStatusEffect + p 1 packet + m (Lnet/minecraft/class_10268;)V method_11115 onRecipeBookRemove + p 1 packet + m (Lnet/minecraft/class_2743;)V method_11132 onEntityVelocityUpdate + p 1 packet + m (Lnet/minecraft/class_9835;)V method_61188 onSetPlayerInventory + p 1 packet + m (Lnet/minecraft/class_2740;)V method_11110 onEntityAttach + p 1 packet + m (Lnet/minecraft/class_11984;)V method_74457 onEntityValueDebug + p 1 packet + m (Lnet/minecraft/class_8914;)V method_54807 onTickStep + p 1 packet + m (Lnet/minecraft/class_2639;)V method_11081 onCommandSuggestions + p 1 packet + m (Lnet/minecraft/class_5894;)V method_34076 onOverlayMessage + p 1 packet + m (Lnet/minecraft/class_2783;)V method_11084 onEntityStatusEffect + p 1 packet + m (Lnet/minecraft/class_8143;)V method_49034 onEntityDamage + p 1 packet + m (Lnet/minecraft/class_2729;)V method_11161 onSelectAdvancementTab + p 1 packet + m (Lnet/minecraft/class_3944;)V method_17587 onOpenScreen + p 1 packet + m (Lnet/minecraft/class_5898;)V method_34080 onWorldBorderWarningTimeChanged + p 1 packet + m (Lnet/minecraft/class_5888;)V method_34071 onTitleClear + p 1 packet + m (Lnet/minecraft/class_2641;)V method_11145 onCommandTree + p 1 packet + m (Lnet/minecraft/class_10266;)V method_64555 onRecipeBookAdd + p 1 packet + m (Lnet/minecraft/class_2683;)V method_11088 onMapUpdate + p 1 packet + m (Lnet/minecraft/class_2744;)V method_11151 onEntityEquipmentUpdate + p 1 packet + m (Lnet/minecraft/class_2656;)V method_11087 onCooldownUpdate + p 1 packet + m (Lnet/minecraft/class_9006;)V method_55450 onScoreboardScoreReset + p 1 packet + m (Lnet/minecraft/class_2703;)V method_11113 onPlayerList + p 1 packet + m (Lnet/minecraft/class_2724;)V method_11117 onPlayerRespawn + p 1 packet + m (Lnet/minecraft/class_11985;)V method_74458 onEventDebug + p 1 packet + m (Lnet/minecraft/class_5895;)V method_34077 onWorldBorderCenterChanged + p 1 packet + m (Lnet/minecraft/class_10614;)V method_66579 onTestInstanceBlockStatus + p 1 packet + m (Lnet/minecraft/class_2767;)V method_11146 onPlaySound + p 1 packet + m (Lnet/minecraft/class_2777;)V method_11086 onEntityPosition + p 1 packet + m (Lnet/minecraft/class_3943;)V method_17586 onSetTradeOffers + p 1 packet + m (Lnet/minecraft/class_5899;)V method_34081 onWorldBorderWarningBlocksChanged + p 1 packet + m (Lnet/minecraft/class_5889;)V method_34072 onWorldBorderInitialize + p 1 packet + m (Lnet/minecraft/class_2752;)V method_11080 onEntityPassengersSet + p 1 packet + m (Lnet/minecraft/class_2749;)V method_11122 onHealthUpdate + p 1 packet + m (Lnet/minecraft/class_2645;)V method_11102 onCloseScreen + p 1 packet + m (Lnet/minecraft/class_2676;)V method_11143 onLightUpdate + p 1 packet + m (Lnet/minecraft/class_2695;)V method_11090 onCraftFailedResponse + p 1 packet + m (Lnet/minecraft/class_2734;)V method_11111 onSetCameraEntity + p 1 packet + m (Lnet/minecraft/class_2668;)V method_11085 onGameStateChange + p 1 packet + m (Lnet/minecraft/class_11982;)V method_74455 onBlockValueDebug + p 1 packet + m (Lnet/minecraft/class_2761;)V method_11079 onWorldTimeUpdate + p 1 packet + m (Lnet/minecraft/class_2616;)V method_11160 onEntityAnimation + p 1 packet + m (Lnet/minecraft/class_2765;)V method_11125 onPlaySoundFromEntity + p 1 packet + m (Lnet/minecraft/class_7597;)V method_44763 onChatSuggestions + p 1 packet + m (Lnet/minecraft/class_4463;)V method_21707 onPlayerActionResponse + p 1 packet + m (Lnet/minecraft/class_2707;)V method_11092 onLookAt + p 1 packet + m (Lnet/minecraft/class_2775;)V method_11150 onItemPickupAnimation + p 1 packet + m (Lnet/minecraft/class_2663;)V method_11148 onEntityStatus + p 1 packet + m (Lnet/minecraft/class_2716;)V method_11095 onEntitiesDestroy + p 1 packet + m (Lnet/minecraft/class_3895;)V method_17186 onOpenWrittenBook + p 1 packet + m (Lnet/minecraft/class_2632;)V method_11140 onDifficulty + p 1 packet + m (Lnet/minecraft/class_7438;)V method_43595 onChatMessage + p 1 packet + m (Lnet/minecraft/class_2751;)V method_11144 onScoreboardObjectiveUpdate + p 1 packet + m (Lnet/minecraft/class_2774;)V method_11127 onNbtQueryResponse + p 1 packet + m (Lnet/minecraft/class_11983;)V method_74456 onChunkValueDebug + p 1 packet + m (Lnet/minecraft/class_8913;)V method_54806 onUpdateTickRate + p 1 packet + m (Lnet/minecraft/class_2693;)V method_11108 onSignEditorOpen + p 1 packet + m (Lnet/minecraft/class_2672;)V method_11128 onChunkData + p 1 packet + m (Lnet/minecraft/class_11173;)V method_70581 onWaypoint + p 1 packet + m (Lnet/minecraft/class_2666;)V method_11107 onUnloadChunk + p 1 packet + m (Lnet/minecraft/class_2692;)V method_11134 onVehicleMove + p 1 packet +c net/minecraft/class_3934 net/minecraft/client/gui/screen/ingame/CartographyTableScreen + f Lnet/minecraft/class_2960; field_45455 DUPLICATED_MAP_TEXTURE + f Lnet/minecraft/class_2960; field_45454 SCALED_MAP_TEXTURE + f Lnet/minecraft/class_10090; field_52809 mapRenderState + f Lnet/minecraft/class_2960; field_45453 ERROR_TEXTURE + f Lnet/minecraft/class_2960; field_17421 TEXTURE + f Lnet/minecraft/class_2960; field_45452 LOCKED_TEXTURE + f Lnet/minecraft/class_2960; field_45451 MAP_TEXTURE + m (Lnet/minecraft/class_3910;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 1 handler + p 2 inventory + p 3 title + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9209;Lnet/minecraft/class_22;IIF)V method_17566 drawMap + p 3 mapState + p 4 x + p 1 context + p 2 mapId + p 5 y + p 6 scale + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9209;Lnet/minecraft/class_22;ZZZZ)V method_17567 drawMap + p 4 cloneMode + p 5 expandMode + p 6 lockMode + p 7 cannotExpand + p 1 context + p 2 mapId + p 3 mapState +c net/minecraft/class_2603 net/minecraft/block/entity/DaylightDetectorBlockEntity + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state +c net/minecraft/class_2604 net/minecraft/network/packet/s2c/play/EntitySpawnS2CPacket + f I field_11953 entityId + f B field_38817 headYaw + f Ljava/util/UUID; field_11952 uuid + f Lnet/minecraft/class_243; field_61886 velocity + f B field_11947 pitch + f B field_11957 yaw + f D field_11956 z + f D field_11946 y + f Lnet/minecraft/class_9139; field_47896 CODEC + f I field_11954 entityData + f D field_11948 x + f Lnet/minecraft/class_1299; field_11955 entityType + m ()Ljava/util/UUID; method_11164 getUuid + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_3231;I)V + p 1 entity + p 2 entityTrackerEntry + p 3 entityData + m ()Lnet/minecraft/class_243; method_73084 getVelocity + m ()I method_11167 getEntityId + m ()Lnet/minecraft/class_1299; method_11169 getEntityType + m ()F method_43233 getHeadYaw + m ()D method_11175 getX + m (Lnet/minecraft/class_2602;)V method_11178 apply + m (ILjava/util/UUID;DDDFFLnet/minecraft/class_1299;ILnet/minecraft/class_243;D)V + p 9 pitch + p 10 yaw + p 11 entityType + p 12 entityData + p 5 y + p 7 z + p 1 entityId + p 2 uuid + p 3 x + p 13 velocity + p 14 headYaw + m ()F method_11171 getPitch + m (Lnet/minecraft/class_9129;)V + p 1 buf + m (Lnet/minecraft/class_9129;)V method_55855 write + p 1 buf + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_3231;)V + p 2 entityTrackerEntry + p 1 entity + m ()D method_11174 getY + m ()D method_11176 getZ + m ()F method_11168 getYaw + m (Lnet/minecraft/class_1297;ILnet/minecraft/class_2338;)V + p 1 entity + p 2 entityData + p 3 pos + m ()I method_11166 getEntityData +c net/minecraft/class_3935 net/minecraft/client/gui/screen/ingame/LecternScreen + f Lnet/minecraft/class_1712; field_17423 listener + f Lnet/minecraft/class_3916; field_17422 handler + m ()V method_17574 updatePageProvider + m ()V method_17575 updatePage + m (Lnet/minecraft/class_4185;)V method_19895 method_19895 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19894 method_19894 + p 1 button + m ()Lnet/minecraft/class_3916; method_17573 getScreenHandler + m (I)V method_17572 sendButtonPressPacket + p 1 id + m (Lnet/minecraft/class_3916;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 2 inventory + p 3 title + p 1 handler +c net/minecraft/class_2609 net/minecraft/block/entity/AbstractFurnaceBlockEntity + f Lcom/mojang/serialization/Codec; field_56671 CODEC + f Lnet/minecraft/class_1863$class_7266; field_38234 matchGetter + f [I field_11982 BOTTOM_SLOTS + f I field_31292 COOK_TIME_TOTAL_PROPERTY_INDEX + f S field_57767 DEFAULT_COOKING_TOTAL_TIME + f I field_31290 FUEL_TIME_PROPERTY_INDEX + f S field_57765 DEFAULT_LIT_TOTAL_TIME + f I field_31294 DEFAULT_COOK_TIME + f Lnet/minecraft/class_2371; field_11984 inventory + f I field_55574 litTimeRemaining + f I field_31288 OUTPUT_SLOT_INDEX + f I field_55576 cookingTimeSpent + f I field_31286 INPUT_SLOT_INDEX + f Lnet/minecraft/class_3913; field_17374 propertyDelegate + f I field_11988 cookingTotalTime + f S field_57764 DEFAULT_LIT_TIME_REMAINING + f [I field_11983 SIDE_SLOTS + f I field_31291 COOK_TIME_PROPERTY_INDEX + f S field_57766 DEFAULT_COOKING_TIME_SPENT + f [I field_11987 TOP_SLOTS + f Lit/unimi/dsi/fastutil/objects/Reference2IntOpenHashMap; field_11986 recipesUsed + f I field_31293 PROPERTY_COUNT + f I field_31289 BURN_TIME_PROPERTY_INDEX + f I field_55575 litTotalTime + f I field_31287 FUEL_SLOT_INDEX + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2609;)I method_17029 getCookTime + p 1 furnace + p 0 world + m ()Z method_11201 isBurning + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_8786;Lnet/minecraft/class_9696;Lnet/minecraft/class_2371;I)Z method_11203 craftRecipe + p 0 dynamicRegistryManager + p 1 recipe + p 2 input + p 3 inventory + p 4 maxCount + m (Lnet/minecraft/class_9895;Lnet/minecraft/class_1799;)I method_11200 getFuelTime + p 2 stack + p 1 fuelRegistry + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;IF)V method_17760 dropExperience + p 0 world + p 2 multiplier + p 1 pos + p 3 experience + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_8786;Lnet/minecraft/class_9696;Lnet/minecraft/class_2371;I)Z method_11192 canAcceptRecipeOutput + p 4 maxCount + p 2 input + p 3 inventory + p 0 dynamicRegistryManager + p 1 recipe + m (Lnet/minecraft/class_2591;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3956;)V + p 4 recipeType + p 3 state + p 2 pos + p 1 blockEntityType + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;)Ljava/util/List; method_27354 getRecipesUsedAndDropExperience + p 1 world + p 2 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2609;)V method_31651 tick + p 3 blockEntity + p 0 world + p 2 state + p 1 pos + m (Ljava/util/List;Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lit/unimi/dsi/fastutil/objects/Reference2IntMap$Entry;Lnet/minecraft/class_8786;)V method_17761 method_17761 + p 4 recipe + m (Lnet/minecraft/class_8786;)Ljava/lang/Integer; method_53790 method_53790 + p 0 recipe + m (Lnet/minecraft/class_3222;)V method_17763 dropExperienceForRecipesUsed + p 1 player +c net/minecraft/class_2620 net/minecraft/network/packet/s2c/play/BlockBreakingProgressS2CPacket + f Lnet/minecraft/class_2338; field_12034 pos + f I field_12033 entityId + f I field_12032 progress + f Lnet/minecraft/class_9139; field_47902 CODEC + m (Lnet/minecraft/class_2602;)V method_11279 apply + m ()I method_11280 getEntityId + m (Lnet/minecraft/class_2540;)V method_55859 write + p 1 buf + m ()I method_11278 getProgress + m ()Lnet/minecraft/class_2338; method_11277 getPos + m (ILnet/minecraft/class_2338;I)V + p 3 progress + p 2 pos + p 1 entityId + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_2621 net/minecraft/block/entity/LootableContainerBlockEntity + f Lnet/minecraft/class_5321; field_12037 lootTable + f J field_12036 lootTableSeed +c net/minecraft/class_2622 net/minecraft/network/packet/s2c/play/BlockEntityUpdateS2CPacket + f Lnet/minecraft/class_2591; field_12038 blockEntityType + f Lnet/minecraft/class_2338; field_12040 pos + f Lnet/minecraft/class_9139; field_47903 CODEC + f Lnet/minecraft/class_2487; field_12039 nbt + m ()Lnet/minecraft/class_2338; method_11293 getPos + m (Lnet/minecraft/class_2586;)Lnet/minecraft/class_2622; method_38585 create + p 0 blockEntity + m (Lnet/minecraft/class_2586;Ljava/util/function/BiFunction;)Lnet/minecraft/class_2622; method_39026 create + p 0 blockEntity + p 1 nbtGetter + m ()Lnet/minecraft/class_2487; method_11290 getNbt + m (Lnet/minecraft/class_2602;)V method_11292 apply + m ()Lnet/minecraft/class_2591; method_11291 getBlockEntityType + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2591;Lnet/minecraft/class_2487;)V + p 1 pos + p 2 blockEntityType + p 3 nbt +c net/minecraft/class_2616 net/minecraft/network/packet/s2c/play/EntityAnimationS2CPacket + f I field_12028 animationId + f I field_12029 entityId + f I field_33299 CRIT + f I field_33300 ENCHANTED_HIT + f Lnet/minecraft/class_9139; field_47898 CODEC + f I field_33298 SWING_OFF_HAND + f I field_33297 WAKE_UP + f I field_33295 SWING_MAIN_HAND + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11268 apply + m (Lnet/minecraft/class_1297;I)V + p 1 entity + p 2 animationId + m (Lnet/minecraft/class_2540;)V method_55857 write + p 1 buf + m ()I method_11269 getEntityId + m ()I method_11267 getAnimationId +c net/minecraft/class_2617 net/minecraft/network/packet/s2c/play/StatisticsS2CPacket + f Lnet/minecraft/class_9139; field_47900 STAT_MAP_CODEC + f Lnet/minecraft/class_9139; field_47899 CODEC + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; comp_2197 stats + m (Lnet/minecraft/class_2602;)V method_11270 apply + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; comp_2197 stats + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;)V + p 1 stats +c net/minecraft/class_2618 net/minecraft/block/entity/LidOpenable + c An interface implemented by block entities with openable lids,\nsuch as chests or ender chests. + m (F)F method_11274 getAnimationProgress + p 1 tickProgress +c net/minecraft/class_2619 net/minecraft/block/entity/JukeboxBlockEntity + f Ljava/lang/String; field_52064 RECORD_ITEM_NBT_KEY + f Ljava/lang/String; field_52065 TICKS_SINCE_SONG_STARTED_NBT_KEY + f Lnet/minecraft/class_1799; field_46507 recordStack + f Lnet/minecraft/class_9794; field_52066 manager + m ()V method_60785 onManagerChange + m (Lnet/minecraft/class_6880;)V method_60783 method_60783 + p 1 song + m (Lnet/minecraft/class_6880;)V method_60780 method_60780 + p 1 song + m (Ljava/lang/Long;Lnet/minecraft/class_6880;)V method_68286 method_68286 + p 2 song + m (Z)V method_60782 onRecordStackChanged + p 1 hasRecord + m (Lnet/minecraft/class_11368;Ljava/lang/Long;)V method_68287 method_68287 + p 2 ticksSinceSongStarted + m ()I method_60992 getComparatorOutput + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2619;)V method_44370 tick + p 3 blockEntity + p 0 world + p 2 state + p 1 pos + m ()Lnet/minecraft/class_9794; method_60784 getManager + m ()V method_60786 reloadDisc + m ()V method_49213 dropRecord + m (Lnet/minecraft/class_1799;)V method_49210 setDisc + p 1 stack +c net/minecraft/class_3943 net/minecraft/network/packet/s2c/play/SetTradeOffersS2CPacket + f I field_18802 experience + f I field_18801 levelProgress + f Lnet/minecraft/class_1916; field_17435 offers + f Z field_19376 refreshable + f Z field_18803 leveled + f I field_17434 syncId + f Lnet/minecraft/class_9139; field_47939 CODEC + m ()I method_17589 getSyncId + m (ILnet/minecraft/class_1916;IIZZ)V + p 6 refreshable + p 4 experience + p 5 leveled + p 2 offers + p 3 levelProgress + p 1 syncId + m ()Z method_19460 isLeveled + m ()I method_19459 getExperience + m (Lnet/minecraft/class_9129;)V method_55889 write + p 1 buf + m ()I method_19458 getLevelProgress + m ()Z method_20722 isRefreshable + m ()Lnet/minecraft/class_1916; method_17590 getOffers + m (Lnet/minecraft/class_2602;)V method_17588 apply + m (Lnet/minecraft/class_9129;)V + p 1 buf +c net/minecraft/class_3944 net/minecraft/network/packet/s2c/play/OpenScreenS2CPacket + f I field_17436 syncId + f Lnet/minecraft/class_9139; field_47945 CODEC + f Lnet/minecraft/class_2561; field_17438 name + f Lnet/minecraft/class_3917; field_17437 screenHandlerId + m ()I method_17592 getSyncId + m (Lnet/minecraft/class_2602;)V method_17591 apply + m (ILnet/minecraft/class_3917;Lnet/minecraft/class_2561;)V + p 3 name + p 2 screenHandlerId + p 1 syncId + m ()Lnet/minecraft/class_3917; method_17593 getScreenHandlerType + m ()Lnet/minecraft/class_2561; method_17594 getName +c net/minecraft/class_3945 net/minecraft/server/command/TeamMsgCommand + f Lnet/minecraft/class_2583; field_24380 STYLE + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_17440 NO_TEAM_EXCEPTION + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_268;Ljava/util/List;Lnet/minecraft/class_7471;)V method_45155 method_45155 + p 4 message + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_268;Lnet/minecraft/class_3222;)Z method_45154 method_45154 + p 2 player + m (Lcom/mojang/brigadier/context/CommandContext;)I method_17601 method_17601 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_17600 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_268;Ljava/util/List;Lnet/minecraft/class_7471;)V method_17599 execute + p 3 recipients + p 4 message + p 1 entity + p 2 team + p 0 source +c net/minecraft/class_2614 net/minecraft/block/entity/HopperBlockEntity + f I field_12023 transferCooldown + f I field_31341 TRANSFER_COOLDOWN + f [[I field_49100 AVAILABLE_SLOTS_CACHE + f Lnet/minecraft/class_2350; field_49101 facing + f Lnet/minecraft/class_2371; field_12024 inventory + f J field_12022 lastTickTime + f I field_31342 INVENTORY_SIZE + f I field_57778 DEFAULT_TRANSFER_COOLDOWN + f Lnet/minecraft/class_2561; field_63045 CONTAINER_NAME_TEXT + m ()Z method_11242 isDisabled + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2614;)Z method_11246 insert + p 2 blockEntity + p 1 pos + p 0 world + m (Lnet/minecraft/class_1263;Lnet/minecraft/class_2350;)Z method_11258 isInventoryFull + p 1 direction + p 0 inventory + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2614;)V method_31692 serverTick + p 2 state + p 3 blockEntity + p 0 world + p 1 pos + m (Lnet/minecraft/class_1263;Lnet/minecraft/class_1799;ILnet/minecraft/class_2350;)Z method_11244 canInsert + p 0 inventory + p 2 slot + p 1 stack + p 3 side + m (Lnet/minecraft/class_1263;Lnet/minecraft/class_1542;)Z method_11247 extract + p 0 inventory + p 1 itemEntity + m ()Z method_11256 isFull + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2614;Ljava/util/function/BooleanSupplier;)Z method_11243 insertAndExtract + p 3 blockEntity + p 2 state + p 1 pos + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2614;)Lnet/minecraft/class_1263; method_11255 getOutputInventory + p 2 blockEntity + p 1 pos + p 0 world + m (Lnet/minecraft/class_1937;DDD)Lnet/minecraft/class_1263; method_57009 getEntityInventoryAt + p 3 y + p 1 x + p 5 z + p 0 world + m (Lnet/minecraft/class_1263;Lnet/minecraft/class_1263;Lnet/minecraft/class_1799;Lnet/minecraft/class_2350;)Lnet/minecraft/class_1799; method_11260 transfer + p 3 side + p 2 stack + p 1 to + p 0 from + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2615;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_1263; method_11248 getInputInventory + p 0 world + p 1 hopper + p 2 pos + p 3 state + m ()Z method_11239 needsCooldown + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1297;Lnet/minecraft/class_2614;)V method_11236 onEntityCollided + p 3 entity + p 4 blockEntity + p 1 pos + p 2 state + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_1263; method_57010 getBlockInventoryAt + p 0 world + p 2 state + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2615;)Ljava/util/List; method_11237 getInputItemEntities + p 1 hopper + p 0 world + m (Lnet/minecraft/class_1263;Lnet/minecraft/class_2350;)[I method_17767 getAvailableSlots + p 0 inventory + p 1 side + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1263; method_11250 getInventoryAt + p 0 world + p 1 pos + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_11254 canMergeItems + p 1 second + p 0 first + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2615;)Z method_11241 extract + p 0 world + p 1 hopper + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;DDD)Lnet/minecraft/class_1263; method_11251 getInventoryAt + p 7 z + p 5 y + p 2 state + p 3 x + p 0 world + p 1 pos + m (I)[I method_57011 indexArray + p 0 size + m (Lnet/minecraft/class_2615;Lnet/minecraft/class_1263;ILnet/minecraft/class_2350;)Z method_11261 extract + p 2 slot + p 3 side + p 0 hopper + p 1 inventory + m (Lnet/minecraft/class_1263;Lnet/minecraft/class_1263;Lnet/minecraft/class_1799;ILnet/minecraft/class_2350;)Z method_11252 canExtract + p 1 fromInventory + p 0 hopperInventory + p 3 slot + p 2 stack + p 4 facing + m (Lnet/minecraft/class_1263;Lnet/minecraft/class_1263;Lnet/minecraft/class_1799;ILnet/minecraft/class_2350;)Lnet/minecraft/class_1799; method_11253 transfer + p 3 slot + p 4 side + p 1 to + p 2 stack + p 0 from + m (I)V method_11238 setTransferCooldown + p 1 transferCooldown +c net/minecraft/class_2615 net/minecraft/block/entity/Hopper + f Lnet/minecraft/class_238; field_12026 INPUT_AREA_SHAPE + m ()D method_11266 getHopperX + m ()D method_11265 getHopperZ + m ()D method_11264 getHopperY + m ()Z method_57081 canBlockFromAbove + m ()Lnet/minecraft/class_238; method_11262 getInputAreaShape +c net/minecraft/class_6198 net/minecraft/unused/packageinfo/PackageInfo6198 +c net/minecraft/class_6197 net/minecraft/unused/packageinfo/PackageInfo6197 +c net/minecraft/class_6199 net/minecraft/unused/packageinfo/PackageInfo6199 +c net/minecraft/class_6194 net/minecraft/unused/packageinfo/PackageInfo6194 +c net/minecraft/class_6196 net/minecraft/unused/packageinfo/PackageInfo6196 +c net/minecraft/class_6195 net/minecraft/unused/packageinfo/PackageInfo6195 +c net/minecraft/class_3920 net/minecraft/recipe/CampfireCookingRecipe +c net/minecraft/class_3914 net/minecraft/screen/ScreenHandlerContext + c A screen handler context allows running code on the server side only. Screen\nhandlers are designed to be used on both sides; any action modifying the world has\nto be wrapped in a call to the context. This guarantees that no casting error occurs\ninside the screen handler code.\n\n

A context with the world is passed to the screen handler on creation on the server.\nOn the server, the context executes the function with the world and the position.\nOn the client, the {@linkplain #EMPTY empty context} is used. + f Lnet/minecraft/class_3914; field_17304 EMPTY + c The dummy screen handler context for clientside screen handlers. + m (Ljava/util/function/BiFunction;Ljava/lang/Object;)Ljava/lang/Object; method_17396 get + c Gets a value from this context's world and position\nwith a {@link BiFunction} getter.\n\n@return the getter's return value if this context is active,\n the default value otherwise + p 2 defaultValue + c a fallback default value, used if this context is empty + p 1 getter + c a function that gets a non-null value from this context's world and position + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3914; method_17392 create + c Returns an active screen handler context. Used on the logical server. + p 0 world + p 1 pos + m (Ljava/util/function/BiConsumer;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Ljava/util/Optional; method_17394 method_17394 + p 1 world + p 2 pos + m (Ljava/util/function/BiConsumer;)V method_17393 run + c Runs a {@link BiConsumer} with this context's world and position\nif this context is active. + p 1 function + m (Ljava/util/function/BiFunction;)Ljava/util/Optional; method_17395 get + c Gets an optional value from this context's world and position\nwith a {@link BiFunction} getter.\n\n@return a present {@link Optional} with the getter's return value,\n or {@link Optional#empty()} if this context is empty + p 1 getter + c a function that gets a non-null value from this context's world and position +c net/minecraft/class_3915 net/minecraft/screen/Property + c An integer property that is stored in a {@link ScreenHandler}.\n\n

{@code Property} instances are used for tracking integer properties in property delegates\nand other sources of integer properties, and sending needed content updates to listeners.\n\n@see ScreenHandler#addProperty + f I field_17307 oldValue + m ([II)Lnet/minecraft/class_3915; method_17406 create + c Creates a new property that accesses the {@code index} of the {@code array}. + p 0 array + p 1 index + m (I)V method_17404 set + p 1 value + m ()I method_17407 get + m ()Z method_17408 hasChanged + c Returns true if the value of this property has changed since the last call to {@code hasChanged()}. + m ()Lnet/minecraft/class_3915; method_17403 create + c Creates a new property that is not attached to any other objects. + m (Lnet/minecraft/class_3913;I)Lnet/minecraft/class_3915; method_17405 create + c Creates a new property that accesses the {@code index} of the {@code delegate}. + p 1 index + p 0 delegate +c net/minecraft/class_3915$3 net/minecraft/screen/Property$3 + f I field_17312 value +c net/minecraft/class_3916 net/minecraft/screen/LecternScreenHandler + f I field_30823 BASE_JUMP_TO_PAGE_BUTTON_ID + f Lnet/minecraft/class_3913; field_17314 propertyDelegate + f I field_30822 TAKE_BOOK_BUTTON_ID + f I field_30821 NEXT_PAGE_BUTTON_ID + f I field_30820 PREVIOUS_PAGE_BUTTON_ID + f Lnet/minecraft/class_1263; field_17313 inventory + m ()I method_17419 getPage + m (I)V + p 1 syncId + m (ILnet/minecraft/class_1263;Lnet/minecraft/class_3913;)V + p 2 inventory + p 1 syncId + p 3 propertyDelegate + m ()Lnet/minecraft/class_1799; method_17418 getBookItem +c net/minecraft/class_3917 net/minecraft/screen/ScreenHandlerType + c Screen handler type is used to create screen handlers on the client.\nIt is a holder object holding a factory (usually a reference to the constructor).\nThey are registered in the registry under {@link\nnet.minecraft.registry.Registries#SCREEN_HANDLER}.\n\n

Technically speaking, screen handlers do not have to register screen handler\ntypes. However, such screen handlers are practically useless as they cannot be\nopened server-side using conventional methods.\n\n@apiNote Screen handler types should not be used to create a new screen handler\non the server. See {@link ScreenHandlerFactory} for server-side creation.\n\n@see ScreenHandler + f Lnet/minecraft/class_7699; field_41923 requiredFeatures + f Lnet/minecraft/class_3917$class_3918; field_17344 factory + f Lnet/minecraft/class_3917; field_17327 GENERIC_9X6 + f Lnet/minecraft/class_3917; field_17326 GENERIC_9X3 + f Lnet/minecraft/class_3917; field_17329 ANVIL + f Lnet/minecraft/class_3917; field_17328 GENERIC_3X3 + f Lnet/minecraft/class_3917; field_17335 FURNACE + f Lnet/minecraft/class_3917; field_18666 GENERIC_9X4 + f Lnet/minecraft/class_3917; field_17334 ENCHANTMENT + f Lnet/minecraft/class_3917; field_18665 GENERIC_9X2 + f Lnet/minecraft/class_3917; field_17333 CRAFTING + f Lnet/minecraft/class_3917; field_18664 GENERIC_9X1 + f Lnet/minecraft/class_3917; field_17332 BREWING_STAND + f Lnet/minecraft/class_3917; field_17339 LOOM + f Lnet/minecraft/class_3917; field_17338 LECTERN + f Lnet/minecraft/class_3917; field_17337 HOPPER + f Lnet/minecraft/class_3917; field_17336 GRINDSTONE + f Lnet/minecraft/class_3917; field_18667 GENERIC_9X5 + f Lnet/minecraft/class_3917; field_17331 BLAST_FURNACE + f Lnet/minecraft/class_3917; field_17330 BEACON + f Lnet/minecraft/class_3917; field_17343 CARTOGRAPHY_TABLE + f Lnet/minecraft/class_3917; field_17342 SMOKER + f Lnet/minecraft/class_3917; field_17341 SHULKER_BOX + f Lnet/minecraft/class_3917; field_17340 MERCHANT + f Lnet/minecraft/class_3917; field_17625 STONECUTTER + f Lnet/minecraft/class_3917; field_46790 CRAFTER_3X3 + f Lnet/minecraft/class_3917; field_22484 SMITHING + m (Ljava/lang/String;Lnet/minecraft/class_3917$class_3918;[Lnet/minecraft/class_7696;)Lnet/minecraft/class_3917; method_48387 register + p 2 requiredFeatures + p 1 factory + p 0 id + m (Lnet/minecraft/class_3917$class_3918;Lnet/minecraft/class_7699;)V + p 2 requiredFeatures + p 1 factory + m (ILnet/minecraft/class_1661;)Lnet/minecraft/class_3916; method_17436 method_17436 + p 1 playerInventory + p 0 syncId + m (ILnet/minecraft/class_1661;)Lnet/minecraft/class_1703; method_17434 create + p 2 playerInventory + p 1 syncId + m (Ljava/lang/String;Lnet/minecraft/class_3917$class_3918;)Lnet/minecraft/class_3917; method_17435 register + p 1 factory + p 0 id +c net/minecraft/class_3917$class_3918 net/minecraft/screen/ScreenHandlerType$Factory + c A functional interface that creates a screen handler instance on the client.\n\n

Screen handlers usually have a constructor that can be used as an implementation.\nSee the note on {@link ScreenHandler}. + m (ILnet/minecraft/class_1661;)Lnet/minecraft/class_1703; create create + p 2 playerInventory + p 1 syncId +c net/minecraft/class_3910 net/minecraft/screen/CartographyTableScreenHandler + f Lnet/minecraft/class_1731; field_19272 resultInventory + f Lnet/minecraft/class_3914; field_17294 context + f J field_20382 lastTakeResultTime + f I field_30773 MAP_SLOT_INDEX + f I field_30774 MATERIAL_SLOT_INDEX + f Lnet/minecraft/class_1263; field_17293 inventory + f I field_30775 RESULT_SLOT_INDEX + f I field_30776 INVENTORY_START + f I field_30777 INVENTORY_END + f I field_30778 HOTBAR_START + f I field_30779 HOTBAR_END + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V method_17381 updateResult + p 1 map + p 2 item + p 3 oldResult + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_17382 method_17382 + p 4 world + p 5 pos + m (ILnet/minecraft/class_1661;)V + p 2 inventory + p 1 syncId + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_17379 method_17379 + p 3 pos + p 2 world + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;)V + p 2 inventory + p 3 context + p 1 syncId +c net/minecraft/class_3910$5 net/minecraft/screen/CartographyTableScreenHandler$5 + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_17387 method_17387 + p 1 world + p 2 pos +c net/minecraft/class_3913 net/minecraft/screen/PropertyDelegate + c A property delegate represents an indexed list of integer properties.\n\n

The delegate is passed when creating the screen handler.\nOn the server, access to the property's value is delegated to the delegate (which in\nturn delegates to another object like a block entity instance).\nOn the client, access to the property's value still uses the synced value.\n\n@see Property#create(PropertyDelegate, int)\n@see ScreenHandler#addProperties(PropertyDelegate) + m (I)I method_17390 get + p 1 index + m ()I method_17389 size + m (II)V method_17391 set + p 2 value + p 1 index +c net/minecraft/class_6190 net/minecraft/unused/packageinfo/PackageInfo6190 +c net/minecraft/class_6191 net/minecraft/unused/packageinfo/PackageInfo6191 +c net/minecraft/class_3919 net/minecraft/screen/ArrayPropertyDelegate + c A {@link PropertyDelegate} that is implemented using an int array. + f [I field_17345 data + m (I)V + p 1 size +c net/minecraft/class_2600 net/minecraft/network/NetworkThreadUtils + f Lorg/slf4j/Logger; field_20318 LOGGER + m (Ljava/lang/Exception;Lnet/minecraft/class_2596;Lnet/minecraft/class_2547;)Lnet/minecraft/class_148; method_59854 createCrashException + p 0 exception + p 1 packet + p 2 listener + m (Lnet/minecraft/class_2596;Lnet/minecraft/class_2547;Lnet/minecraft/class_11980;)V method_11074 forceMainThread + p 2 batcher + p 1 listener + p 0 packet + m (Lnet/minecraft/class_2596;Lnet/minecraft/class_2547;Lnet/minecraft/class_3218;)V method_11073 forceMainThread + p 0 packet + p 1 listener + p 2 world + m (Lnet/minecraft/class_128;Lnet/minecraft/class_2547;Lnet/minecraft/class_2596;)V method_59803 fillCrashReport + p 1 listener + p 2 packet + p 0 report +c net/minecraft/class_3928 net/minecraft/client/gui/screen/world/LevelLoadingScreen + f Lnet/minecraft/class_1058; field_61634 netherPortalSprite + f J field_19101 lastNarrationTime + f J field_32246 NARRATION_DELAY + f Lnet/minecraft/class_2561; field_61629 READY_TO_PLAY_MESSAGE + f Lnet/minecraft/class_11653; field_61631 chunkLoadProgress + f F field_61632 loadProgress + f Lnet/minecraft/class_3928$class_9678; field_61633 reason + f Lnet/minecraft/class_2561; field_61628 DOWNLOADING_TERRAIN_TEXT + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_17407 STATUS_TO_COLOR + m ()Lnet/minecraft/class_1058; method_72801 getNetherPortalSprite + m (Lnet/minecraft/class_11653;Lnet/minecraft/class_3928$class_9678;)V + p 2 reason + p 1 progressProvider + m (Lnet/minecraft/class_332;IIIILnet/minecraft/class_11544;)V method_17538 drawChunkMap + p 5 map + p 4 chunkGap + p 3 chunkLength + p 2 centerY + p 1 centerX + p 0 context + m (Lnet/minecraft/class_11653;Lnet/minecraft/class_3928$class_9678;)V method_72800 init + p 2 reason + p 1 chunkLoadProgress + m (Lnet/minecraft/class_332;IIIIF)V method_72799 drawLoadingBar + p 6 delta + p 5 height + p 4 width + p 3 y1 + p 2 x1 + p 1 context + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_17537 method_17537 + p 0 map +c net/minecraft/class_3928$class_9678 net/minecraft/client/gui/screen/world/LevelLoadingScreen$WorldEntryReason + f Lnet/minecraft/class_3928$class_9678; field_51488 END_PORTAL + f Lnet/minecraft/class_3928$class_9678; field_51489 OTHER + f Lnet/minecraft/class_3928$class_9678; field_51487 NETHER_PORTAL +c net/minecraft/class_3922 net/minecraft/block/CampfireBlock + f Lnet/minecraft/class_2754; field_17564 FACING + f Z field_23881 emitsParticles + f Lnet/minecraft/class_2746; field_17352 LIT + f Lnet/minecraft/class_2746; field_17353 SIGNAL_FIRE + f Lcom/mojang/serialization/MapCodec; field_46297 CODEC + f Lnet/minecraft/class_2746; field_17354 WATERLOGGED + f I field_25182 fireDamage + f Lnet/minecraft/class_265; field_21580 SMOKEY_SHAPE + c The shape used to test whether a given block is considered 'smokey'. + f Lnet/minecraft/class_265; field_17351 SHAPE + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_23895 isLitCampfireInRange + p 1 pos + p 0 world + m (Lnet/minecraft/class_2680;)Z method_30035 canBeLit + p 0 state + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_29288 extinguish + p 0 entity + p 1 world + p 2 pos + p 3 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ZZ)V method_17455 spawnSmokeParticle + p 3 lotsOfSmoke + p 0 world + p 2 isSignal + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1863$class_7266;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3924;)V method_64781 method_64781 + p 5 blockEntity + p 2 world + p 3 pos + p 4 state + m (Lnet/minecraft/class_2680;)Z method_23896 isLitCampfire + p 0 state + m (Lnet/minecraft/class_3922;)Ljava/lang/Boolean; method_53988 method_53988 + p 0 block + m (Lnet/minecraft/class_4970$class_4971;)Z method_30034 method_30034 + p 0 statex + m (Lnet/minecraft/class_3922;)Ljava/lang/Integer; method_53987 method_53987 + p 0 block + m (ZILnet/minecraft/class_4970$class_2251;)V + p 2 fireDamage + p 1 emitsParticles + p 3 settings + m (Lnet/minecraft/class_2680;)Z method_17456 isSignalFireBaseBlock + p 1 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53986 method_53986 + p 0 instance +c net/minecraft/class_3924 net/minecraft/block/entity/CampfireBlockEntity + f Lorg/slf4j/Logger; field_60371 LOGGER + f Lnet/minecraft/class_2371; field_17383 itemsBeingCooked + f [I field_17384 cookingTimes + f [I field_17385 cookingTotalTimes + m (Lnet/minecraft/class_9696;Lnet/minecraft/class_3218;Lnet/minecraft/class_8786;)Lnet/minecraft/class_1799; method_17504 method_17504 + p 2 recipe + m ()Lnet/minecraft/class_2371; method_17505 getItemsBeingCooked + m ()V method_17510 updateListeners + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)Z method_17503 addItem + p 1 world + p 2 entity + p 3 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3924;Lnet/minecraft/class_1863$class_7266;)V method_31666 litServerTick + p 2 state + p 1 pos + p 0 world + p 4 recipeMatchGetter + p 3 blockEntity + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3924;)V method_31668 clientTick + p 3 campfire + p 2 state + p 1 pos + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3924;)V method_31667 unlitServerTick + p 3 campfire + p 2 state + p 1 pos + p 0 world + m ()Lnet/minecraft/class_2622; method_38245 toUpdatePacket +c net/minecraft/class_3929 net/minecraft/client/gui/screen/ingame/HandledScreens + f Lorg/slf4j/Logger; field_17408 LOGGER + f Ljava/util/Map; field_17409 PROVIDERS + m (Lnet/minecraft/class_3917;Lnet/minecraft/class_310;ILnet/minecraft/class_2561;)V method_17541 open + p 0 type + p 1 client + p 2 id + p 3 title + m ()Z method_17539 isMissingScreens + m (Lnet/minecraft/class_3917;Lnet/minecraft/class_3929$class_3930;)V method_17542 register + p 0 type + p 1 provider + m (Lnet/minecraft/class_3917;)Lnet/minecraft/class_3929$class_3930; method_17540 getProvider + p 0 type +c net/minecraft/class_3929$class_3930 net/minecraft/client/gui/screen/ingame/HandledScreens$Provider + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_3917;Lnet/minecraft/class_310;I)V method_17543 open + p 4 id + p 3 client + p 2 type + p 1 name + m (Lnet/minecraft/class_1703;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)Lnet/minecraft/class_437; create create + p 3 title + p 2 playerInventory + p 1 handler +c net/minecraft/class_6176 net/minecraft/unused/packageinfo/PackageInfo6176 +c net/minecraft/class_6175 net/minecraft/unused/packageinfo/PackageInfo6175 +c net/minecraft/class_6177 net/minecraft/util/annotation/DeobfuscateClass + c An annotation on classes. When a class is annotated, the class itself and its\nfields and methods are not obfuscated. Mainly used by blaze3d.\n\n@see net.minecraft.obfuscate.DontObfuscate +c net/minecraft/class_6172 net/minecraft/unused/packageinfo/PackageInfo6172 +c net/minecraft/class_6171 net/minecraft/unused/packageinfo/PackageInfo6171 +c net/minecraft/class_6174 net/minecraft/unused/packageinfo/PackageInfo6174 +c net/minecraft/class_6173 net/minecraft/unused/packageinfo/PackageInfo6173 +c net/minecraft/class_6170 net/minecraft/unused/packageinfo/PackageInfo6170 +c net/minecraft/class_6187 net/minecraft/unused/packageinfo/PackageInfo6187 +c net/minecraft/class_6186 net/minecraft/unused/packageinfo/PackageInfo6186 +c net/minecraft/class_6188 net/minecraft/unused/packageinfo/PackageInfo6188 +c net/minecraft/class_6183 net/minecraft/unused/packageinfo/PackageInfo6183 +c net/minecraft/class_6182 net/minecraft/unused/packageinfo/PackageInfo6182 +c net/minecraft/class_6185 net/minecraft/unused/packageinfo/PackageInfo6185 +c net/minecraft/class_3903 net/minecraft/datafixer/fix/CatTypeFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_17325 fixCatTypeData + p 1 catDynamic +c net/minecraft/class_3904 net/minecraft/datafixer/fix/NewVillageFix + m (Lcom/mojang/datafixers/types/templates/CompoundList$CompoundListType;)Lcom/mojang/datafixers/TypeRewriteRule; method_17334 fix +c net/minecraft/class_3905 net/minecraft/datafixer/schema/Schema1920 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_17343 method_17343 + p 0 schema + p 1 map + p 2 name +c net/minecraft/class_3902 net/minecraft/util/Unit + f Lcom/mojang/serialization/Codec; field_51563 CODEC + f Lnet/minecraft/class_9139; field_55626 PACKET_CODEC + f Lnet/minecraft/class_3902; field_17274 INSTANCE +c net/minecraft/class_6181 net/minecraft/unused/packageinfo/PackageInfo6181 +c net/minecraft/class_6180 net/minecraft/unused/packageinfo/PackageInfo6180 +c net/minecraft/class_3908 net/minecraft/screen/NamedScreenHandlerFactory + c A screen handler factory with a name (title). This is passed to {@link\nnet.minecraft.entity.player.PlayerEntity#openHandledScreen} to open a screen\nhandler.\n\n

In vanilla, most block entity instances implement this interface, allowing them to be used\nas a factory. {@link SimpleNamedScreenHandlerFactory} is a screen handler factory\nimplementation for use cases that do not involve a block entity. + m ()Lnet/minecraft/class_2561; method_5476 getDisplayName + c Returns the title of this screen handler; will be a part of the open\nscreen packet sent to the client. +c net/minecraft/class_3909 net/minecraft/entity/ai/goal/RaidGoal + f I field_17282 cooldown + f I field_30231 MAX_COOLDOWN + m ()V method_17353 decreaseCooldown + m (Lnet/minecraft/class_3763;Ljava/lang/Class;ZLnet/minecraft/class_4051$class_10254;)V + p 1 raider + p 2 targetEntityClass + p 3 checkVisibility + p 4 targetPredicate + m ()I method_17352 getCooldown +c net/minecraft/class_1382 net/minecraft/entity/ai/goal/StepAndDestroyBlockGoal + f Lnet/minecraft/class_1308; field_6589 stepAndDestroyMob + f I field_30227 MAX_COOLDOWN + f I field_6588 counter + f Lnet/minecraft/class_2248; field_6587 targetBlock + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)V method_6307 tickStepping + p 2 pos + p 1 world + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1314;DI)V + p 3 speed + p 1 targetBlock + p 2 mob + p 5 maxYDifference + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1922;)Lnet/minecraft/class_2338; method_6308 tweakToProperPos + p 1 pos + p 2 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_6309 onDestroyBlock + p 1 world + p 2 pos +c net/minecraft/class_923 net/minecraft/client/render/entity/LlamaSpitEntityRenderer + f Lnet/minecraft/class_2960; field_4745 TEXTURE + f Lnet/minecraft/class_581; field_4744 model + m (Lnet/minecraft/class_1673;Lnet/minecraft/class_10044;F)V method_62488 updateRenderState + m ()Lnet/minecraft/class_10044; method_62487 createRenderState + m (Lnet/minecraft/class_10044;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_4061 render +c net/minecraft/class_1381 net/minecraft/entity/ai/goal/ProjectileAttackGoal + f D field_6586 mobSpeed + f Lnet/minecraft/class_1603; field_6582 owner + f I field_6581 updateCountdownTicks + f I field_6577 maxIntervalTicks + f F field_6585 maxShootRange + f Lnet/minecraft/class_1309; field_6580 target + f F field_6584 squaredMaxShootRange + f I field_6579 seenTargetTicks + f I field_6578 minIntervalTicks + f Lnet/minecraft/class_1308; field_6583 mob + m (Lnet/minecraft/class_1603;DIIF)V + p 2 mobSpeed + p 1 mob + p 6 maxShootRange + p 4 minIntervalTicks + p 5 maxIntervalTicks + m (Lnet/minecraft/class_1603;DIF)V + p 5 maxShootRange + p 4 intervalTicks + p 1 mob + p 2 mobSpeed +c net/minecraft/class_922 net/minecraft/client/render/entity/LivingEntityRenderer + f Lnet/minecraft/class_583; field_4737 model + f Ljava/util/List; field_4738 features + f Lnet/minecraft/class_10442; field_55298 itemModelResolver + m (Lnet/minecraft/class_1309;D)Z method_4055 hasLabel + m (Ljava/lang/String;)Z method_74932 shouldFlipUpsideDown + p 0 name + m (Lnet/minecraft/class_10042;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_4054 render + m (Lnet/minecraft/class_10042;)Z method_62483 shouldRenderFeatures + p 1 state + m (Lnet/minecraft/class_3887;)Z method_4046 addFeature + p 1 feature + m ()F method_3919 getLyingPositionRotationDegrees + m (Lnet/minecraft/class_10042;)Z method_4056 isVisible + p 1 state + m (Lnet/minecraft/class_10042;)I method_62484 getMixColor + p 1 state + m (Lnet/minecraft/class_10042;)F method_23185 getAnimationCounter + p 1 state + m (Lnet/minecraft/class_10042;)Lnet/minecraft/class_2960; method_3885 getTexture + p 1 state + m (Lnet/minecraft/class_10042;Lnet/minecraft/class_4587;FF)V method_4058 setupTransforms + p 4 baseHeight + p 1 state + p 2 matrices + p 3 bodyYaw + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_10042;F)V method_62355 updateRenderState + m (Lnet/minecraft/class_10042;F)I method_23622 getOverlay + c {@return the packed overlay color for an entity} It is determined by the entity's death progress and whether the entity is flashing. + p 1 whiteOverlayProgress + p 0 state + m (Lnet/minecraft/class_10042;ZZZ)Lnet/minecraft/class_1921; method_24302 getRenderLayer + c Gets the render layer appropriate for rendering the passed entity. Returns null if the entity should not be rendered. + p 4 showOutline + p 3 translucent + p 2 showBody + p 1 state + m (Lnet/minecraft/class_2350;)F method_18656 getYaw + p 0 direction + m (Lnet/minecraft/class_10042;)Z method_25450 isShaking + c {@return if this entity is shaking} Specifically, in the way a zombie villager,\nzombie, husk, or piglin undergoing conversion shakes. + p 1 state + m (Lnet/minecraft/class_1309;FF)F method_62482 clampBodyYaw + p 0 entity + p 1 degrees + p 2 tickProgress + m (Lnet/minecraft/class_10042;)F method_55832 getShadowRadius + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_583;F)V + p 1 ctx + p 3 shadowRadius + p 2 model + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_238; method_62463 getBoundingBox + m (Lnet/minecraft/class_1309;)Z method_38563 shouldFlipUpsideDown + p 1 entity + m (Lnet/minecraft/class_10042;Lnet/minecraft/class_4587;)V method_4042 scale + p 1 state + p 2 matrices +c net/minecraft/class_1380 net/minecraft/entity/ai/goal/BowAttackGoal + f I field_6568 combatTicks + f Lnet/minecraft/class_1588; field_6576 actor + f Z field_6571 backward + f D field_6569 speed + f I field_6572 targetSeeingTicker + f Z field_6573 movingToLeft + f I field_6574 cooldown + f F field_6570 squaredRange + f I field_6575 attackInterval + m ()Z method_6306 isHoldingBow + m (Lnet/minecraft/class_1588;DIF)V + p 1 actor + p 2 speed + p 5 range + p 4 attackInterval + m (I)V method_6305 setAttackInterval + p 1 attackInterval +c net/minecraft/class_921 net/minecraft/client/render/entity/LlamaEntityRenderer + f Lnet/minecraft/class_2960; field_41633 BROWN_TEXTURE + f Lnet/minecraft/class_2960; field_41634 GRAY_TEXTURE + f Lnet/minecraft/class_2960; field_41631 CREAMY_TEXTURE + f Lnet/minecraft/class_2960; field_41632 WHITE_TEXTURE + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_5601;Lnet/minecraft/class_5601;)V + p 1 context + p 2 layer + p 3 babyLayer + m (Lnet/minecraft/class_1501;Lnet/minecraft/class_10043;F)V method_62485 updateRenderState + m (Lnet/minecraft/class_10043;)Lnet/minecraft/class_2960; method_4037 getTexture + m ()Lnet/minecraft/class_10043; method_62486 createRenderState +c net/minecraft/class_920 net/minecraft/client/render/entity/LeashKnotEntityRenderer + f Lnet/minecraft/class_579; field_53192 model + f Lnet/minecraft/class_2960; field_4734 TEXTURE +c net/minecraft/class_1386 net/minecraft/entity/ai/goal/SitGoal + f Lnet/minecraft/class_1321; field_6597 tameable + m (Lnet/minecraft/class_1321;)V + p 1 tameable +c net/minecraft/class_1384 net/minecraft/entity/ai/goal/AvoidSunlightGoal + f Lnet/minecraft/class_1314; field_6594 mob + m (Lnet/minecraft/class_1314;)V + p 1 mob +c net/minecraft/class_1383 net/minecraft/entity/ai/goal/CrossbowAttackGoal + f Lnet/minecraft/class_1588; field_6593 actor + f Lnet/minecraft/class_6019; field_25696 COOLDOWN_RANGE + f I field_16529 chargedTicksLeft + f I field_25697 cooldown + f I field_6592 seeingTargetTicker + f D field_6590 speed + f F field_6591 squaredRange + f Lnet/minecraft/class_1383$class_3744; field_16528 stage + m ()Z method_19996 hasAliveTarget + m (Lnet/minecraft/class_1588;DF)V + p 1 actor + p 2 speed + p 4 range + m ()Z method_16352 isUncharged + m ()Z method_6310 isEntityHoldingCrossbow +c net/minecraft/class_1383$class_3744 net/minecraft/entity/ai/goal/CrossbowAttackGoal$Stage + f Lnet/minecraft/class_1383$class_3744; field_16534 UNCHARGED + f Lnet/minecraft/class_1383$class_3744; field_16533 READY_TO_ATTACK + f Lnet/minecraft/class_1383$class_3744; field_16532 CHARGED + f Lnet/minecraft/class_1383$class_3744; field_16530 CHARGING +c net/minecraft/class_1389 net/minecraft/entity/ai/goal/CreeperIgniteGoal + f Lnet/minecraft/class_1309; field_6609 target + f Lnet/minecraft/class_1548; field_6608 creeper + m (Lnet/minecraft/class_1548;)V + p 1 creeper +c net/minecraft/class_1387 net/minecraft/entity/ai/goal/HorseBondWithPlayerGoal + f D field_6603 targetZ + f Lnet/minecraft/class_1496; field_6602 horse + f D field_6599 targetY + f D field_6600 targetX + f D field_6601 speed + m (Lnet/minecraft/class_1496;D)V + p 1 horse + p 2 speed +c net/minecraft/class_916 net/minecraft/client/render/entity/ItemEntityRenderer + f Lnet/minecraft/class_10442; field_55293 itemModelManager + f Lnet/minecraft/class_5819; field_4725 random + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10428;Lnet/minecraft/class_5819;)V method_67984 render + p 2 light + p 3 state + p 0 matrices + p 1 queue + p 4 random + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10428;Lnet/minecraft/class_5819;Lnet/minecraft/class_238;)V method_72986 render + p 5 boundingBox + p 0 matrices + p 2 light + p 1 queue + p 4 random + p 3 state + m (Lnet/minecraft/class_10039;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3996 render + m (Lnet/minecraft/class_1542;Lnet/minecraft/class_10039;F)V method_62470 updateRenderState + m ()Lnet/minecraft/class_10039; method_62469 createRenderState + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10428;Lnet/minecraft/class_5819;)V method_56858 renderStack + p 0 matrices + p 1 queue + p 2 light + p 3 state + p 4 random +c net/minecraft/class_915 net/minecraft/client/render/entity/ItemFrameEntityRenderer + f Lnet/minecraft/class_10442; field_55294 itemModelManager + f Lnet/minecraft/class_330; field_53191 mapRenderer + f Lnet/minecraft/class_776; field_38891 blockRenderManager + f I field_32932 GLOW_FRAME_BLOCK_LIGHT + m (Lnet/minecraft/class_1533;Lnet/minecraft/class_2338;)I method_33435 getBlockLight + m (Lnet/minecraft/class_1533;D)Z method_23176 hasLabel + m (Lnet/minecraft/class_1533;Lnet/minecraft/class_10040;F)V method_62473 updateRenderState + m ()Lnet/minecraft/class_10040; method_62471 createRenderState + m (Lnet/minecraft/class_10040;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3994 render + m (Lnet/minecraft/class_10040;)Lnet/minecraft/class_243; method_23174 getPositionOffset + m (Lnet/minecraft/class_1533;)Lnet/minecraft/class_2561; method_62472 getDisplayName + m (ZII)I method_33433 getLight + p 1 glow + p 2 glowLight + p 3 regularLight +c net/minecraft/class_914 net/minecraft/client/render/entity/IllusionerEntityRenderer + f Lnet/minecraft/class_2960; field_4718 TEXTURE + m (Lnet/minecraft/class_1581;)Lnet/minecraft/class_238; method_62464 getBoundingBox + m (Lnet/minecraft/class_1581;Lnet/minecraft/class_10036;F)V method_62465 updateRenderState + m (Lnet/minecraft/class_10036;)Z method_3988 isVisible + m (Lnet/minecraft/class_10036;)Lnet/minecraft/class_2960; method_3990 getTexture + m (Lnet/minecraft/class_10036;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3991 render + m ()Lnet/minecraft/class_10036; method_62466 createRenderState +c net/minecraft/class_914$1 net/minecraft/client/render/entity/IllusionerEntityRenderer$1 + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10036;FF)V method_17149 render +c net/minecraft/class_913 net/minecraft/client/render/entity/IronGolemEntityRenderer + f Lnet/minecraft/class_2960; field_4717 TEXTURE + m (Lnet/minecraft/class_1439;Lnet/minecraft/class_10037;F)V method_62467 updateRenderState + m (Lnet/minecraft/class_10037;)Lnet/minecraft/class_2960; method_3987 getTexture + m ()Lnet/minecraft/class_10037; method_62468 createRenderState + m (Lnet/minecraft/class_10037;Lnet/minecraft/class_4587;FF)V method_3986 setupTransforms +c net/minecraft/class_919 net/minecraft/client/render/entity/LightningEntityRenderer + m (Lnet/minecraft/class_1538;Lnet/minecraft/class_10041;F)V method_62481 updateRenderState + m (Lnet/minecraft/class_10041;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_4034 render + m (Lnet/minecraft/class_1538;)Z method_62480 canBeCulled + m ()Lnet/minecraft/class_10041; method_62479 createRenderState + m (Lorg/joml/Matrix4f;Lnet/minecraft/class_4588;FFIFFFFFFFZZZZ)V method_23183 drawBranch + p 0 matrix + p 2 x1 + p 1 buffer + p 4 y + p 3 z1 + p 6 z2 + p 5 x2 + p 8 green + p 7 red + p 10 offset2 + p 9 blue + p 12 shiftEast1 + p 11 offset1 + p 14 shiftEast2 + p 13 shiftSouth1 + p 15 shiftSouth2 + m (Lnet/minecraft/class_10041;[FF[FFLnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_72989 method_72989 + p 5 matricesEntry + p 6 vertexConsumer +c net/minecraft/class_918 net/minecraft/client/render/item/ItemRenderer + f Lnet/minecraft/class_2960; field_43087 ITEM_ENCHANTMENT_GLINT + f I field_55295 NO_TINT + f Lnet/minecraft/class_2960; field_43086 ENTITY_ENCHANTMENT_GLINT + m (Lnet/minecraft/class_1921;ZZ)Ljava/util/List; method_72988 getGlintRenderLayers + p 0 renderLayer + p 2 glint + p 1 solid + m (Lnet/minecraft/class_4597;Lnet/minecraft/class_1921;Lnet/minecraft/class_4587$class_4665;)Lnet/minecraft/class_4588; method_71138 getSpecialItemGlintConsumer + p 2 matrix + p 0 consumers + p 1 layer + m ([II)I method_65569 getTint + p 1 index + p 0 tints + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4588;Ljava/util/List;[III)V method_23180 renderBakedItemQuads + p 4 light + p 3 tints + p 5 overlay + p 0 matrices + p 2 quads + p 1 vertexConsumer + m (Lnet/minecraft/class_1921;)Z method_71139 useTransparentGlint + p 0 renderLayer + m (Lnet/minecraft/class_811;Lnet/minecraft/class_4587;Lnet/minecraft/class_4597;II[ILjava/util/List;Lnet/minecraft/class_1921;Lnet/minecraft/class_10444$class_10445;)V method_62476 renderItem + p 7 layer + p 8 glint + p 1 matrices + p 2 vertexConsumers + p 0 displayContext + p 5 tints + p 6 quads + p 3 light + p 4 overlay + m (Lnet/minecraft/class_4597;Lnet/minecraft/class_1921;ZZ)Lnet/minecraft/class_4588; method_23181 getItemGlintConsumer + p 1 layer + p 2 solid + p 0 vertexConsumers + p 3 glint +c net/minecraft/class_917 net/minecraft/client/render/entity/MagmaCubeEntityRenderer + f Lnet/minecraft/class_2960; field_4727 TEXTURE + m (Lnet/minecraft/class_1589;Lnet/minecraft/class_2338;)I method_24090 getBlockLight + m (Lnet/minecraft/class_10067;)Lnet/minecraft/class_2960; method_4001 getTexture + m (Lnet/minecraft/class_10067;Lnet/minecraft/class_4587;)V method_4000 scale + m ()Lnet/minecraft/class_10067; method_62490 createRenderState + m (Lnet/minecraft/class_1589;Lnet/minecraft/class_10067;F)V method_62489 updateRenderState + m (Lnet/minecraft/class_10067;)F method_65248 getShadowRadius +c net/minecraft/class_930 net/minecraft/client/render/entity/ParrotEntityRenderer + f Lnet/minecraft/class_2960; field_41640 GREY_TEXTURE + f Lnet/minecraft/class_2960; field_41639 YELLOW_TEXTURE + f Lnet/minecraft/class_2960; field_41637 BLUE_TEXTURE + f Lnet/minecraft/class_2960; field_41638 GREEN_TEXTURE + f Lnet/minecraft/class_2960; field_41636 RED_BLUE_TEXTURE + m (Lnet/minecraft/class_10051;)Lnet/minecraft/class_2960; method_4080 getTexture + m (Lnet/minecraft/class_1453;Lnet/minecraft/class_10051;F)V method_62502 updateRenderState + m ()Lnet/minecraft/class_10051; method_62503 createRenderState + m (Lnet/minecraft/class_1453$class_7989;)Lnet/minecraft/class_2960; method_47906 getTexture + p 0 variant +c net/minecraft/class_1393 net/minecraft/entity/ai/goal/MoveIntoWaterGoal + f Lnet/minecraft/class_1314; field_6625 mob + m (Lnet/minecraft/class_1314;)V + p 1 mob +c net/minecraft/class_934 net/minecraft/client/render/entity/PillagerEntityRenderer + f Lnet/minecraft/class_2960; field_4757 TEXTURE + m ()Lnet/minecraft/class_10035; method_62510 createRenderState + m (Lnet/minecraft/class_10035;)Lnet/minecraft/class_2960; method_4092 getTexture +c net/minecraft/class_933 net/minecraft/client/render/entity/PhantomEntityRenderer + f Lnet/minecraft/class_2960; field_4756 TEXTURE + m (Lnet/minecraft/class_10052;)Lnet/minecraft/class_2960; method_4090 getTexture + m (Lnet/minecraft/class_10052;Lnet/minecraft/class_4587;FF)V method_4089 setupTransforms + m ()Lnet/minecraft/class_10052; method_62505 createRenderState + m (Lnet/minecraft/class_10052;Lnet/minecraft/class_4587;)V method_4088 scale + m (Lnet/minecraft/class_1593;Lnet/minecraft/class_10052;F)V method_62504 updateRenderState +c net/minecraft/class_1391 net/minecraft/entity/ai/goal/TemptGoal + f Lnet/minecraft/class_4051; field_28404 predicate + f D field_6621 lastPlayerZ + f D field_6611 lastPlayerY + f Ljava/util/function/Predicate; field_6622 temptItemPredicate + f Lnet/minecraft/class_1308; field_6616 mob + f D field_59677 DEFAULT_RANGE + f D field_6615 speed + f D field_6619 lastPlayerPitch + f Z field_6620 canBeScared + f I field_6612 cooldown + f D field_6614 lastPlayerX + f Z field_6613 active + f Lnet/minecraft/class_1657; field_6617 closestPlayer + f D field_59678 range + f D field_6618 lastPlayerYaw + f Lnet/minecraft/class_4051; field_18090 TEMPTING_ENTITY_PREDICATE + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_74094 method_74094 + p 1 target + p 2 world + m (Lnet/minecraft/class_1657;)V method_70684 startMovingTo + p 1 player + m (Lnet/minecraft/class_1308;DLjava/util/function/Predicate;ZD)V + p 1 mob + p 2 speed + p 4 temptItemPredicate + p 5 canBeScared + p 6 range + m ()V method_70685 stopMoving + m (Lnet/minecraft/class_1314;DLjava/util/function/Predicate;Z)V + p 1 entity + p 2 speed + p 4 temptItemPredicate + p 5 canBeScared + m ()Z method_16081 canBeScared + m ()Z method_6313 isActive + m (Lnet/minecraft/class_1314;DLjava/util/function/Predicate;ZD)V + p 5 canBeScared + p 6 range + p 1 entity + p 2 speed + p 4 temptItemPredicate + m (Lnet/minecraft/class_1309;)Z method_6312 isTemptedBy + p 1 entity +c net/minecraft/class_1391$class_11185 net/minecraft/entity/ai/goal/TemptGoal$HappyGhastTemptGoal +c net/minecraft/class_932 net/minecraft/client/render/entity/PigEntityRenderer + f Ljava/util/Map; field_55874 modelPairs + m ()Lnet/minecraft/class_10053; method_62507 createRenderState + m (Lnet/minecraft/class_1452;Lnet/minecraft/class_10053;F)V method_62506 updateRenderState + m (Lnet/minecraft/class_10053;)Lnet/minecraft/class_2960; method_4087 getTexture + m (Lnet/minecraft/class_5617$class_5618;)Ljava/util/Map; method_66541 createModelPairs + p 0 context + m (Lnet/minecraft/class_10053;)Lnet/minecraft/class_1799; method_66852 method_66852 + p 0 state + m (Lnet/minecraft/class_10053;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_66542 render +c net/minecraft/class_1390 net/minecraft/entity/ai/goal/StopFollowingCustomerGoal + f Lnet/minecraft/class_3988; field_6610 merchant + m (Lnet/minecraft/class_3988;)V + p 1 merchant +c net/minecraft/class_931 net/minecraft/client/render/entity/PandaEntityRenderer + f Ljava/util/Map; field_17595 TEXTURES + m (Lnet/minecraft/class_10050;Lnet/minecraft/class_4587;FF)V method_4085 setupTransforms + m (Lnet/minecraft/class_10050;)Lnet/minecraft/class_2960; method_4083 getTexture + m (Lnet/minecraft/class_1440;Lnet/minecraft/class_10050;F)V method_62500 updateRenderState + m (FFIFF)F method_4086 getAngle + m ()Lnet/minecraft/class_10050; method_62501 createRenderState +c net/minecraft/class_1397 net/minecraft/entity/ai/goal/TrackIronGolemTargetGoal + f Lnet/minecraft/class_1309; field_6630 target + f Lnet/minecraft/class_1439; field_6629 golem + f Lnet/minecraft/class_4051; field_19340 targetPredicate + m (Lnet/minecraft/class_1439;)V + p 1 golem +c net/minecraft/class_1396 net/minecraft/entity/ai/goal/ZombieAttackGoal + f Lnet/minecraft/class_1642; field_6628 zombie + f I field_6627 ticks + m (Lnet/minecraft/class_1642;DZ)V + p 4 pauseWhenMobIdle + p 1 zombie + p 2 speed +c net/minecraft/class_1395 net/minecraft/entity/ai/goal/FlyGoal +c net/minecraft/class_1394 net/minecraft/entity/ai/goal/WanderAroundFarGoal + f F field_6626 probability + f F field_30229 CHANCE + m (Lnet/minecraft/class_1314;DF)V + p 4 probability + p 2 speed + p 1 mob +c net/minecraft/class_1399 net/minecraft/entity/ai/goal/RevengeGoal + f [Ljava/lang/Class; field_6640 noHelpTypes + f Lnet/minecraft/class_4051; field_18091 VALID_AVOIDABLES_PREDICATE + f [Ljava/lang/Class; field_6637 noRevengeTypes + f I field_30230 BOX_VERTICAL_EXPANSION + f I field_6638 lastAttackedTime + f Z field_6639 groupRevenge + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1309;)V method_6319 setMobEntityTarget + p 1 mob + p 2 target + m (Lnet/minecraft/class_1314;[Ljava/lang/Class;)V + p 2 noRevengeTypes + p 1 mob + m ([Ljava/lang/Class;)Lnet/minecraft/class_1399; method_6318 setGroupRevenge + p 1 noHelpTypes + m ()V method_6317 callSameTypeForRevenge +c com/mojang/blaze3d/vertex/VertexFormatElement com/mojang/blaze3d/vertex/VertexFormatElement + m (IILcom/mojang/blaze3d/vertex/VertexFormatElement$Type;Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage;I)Lcom/mojang/blaze3d/vertex/VertexFormatElement; register register + p 4 count + p 2 type + p 3 usage + p 0 id + p 1 index + m (ILcom/mojang/blaze3d/vertex/VertexFormatElement$Usage;)Z supportsUsage supportsUsage + p 2 usage + p 1 uvIndex + m (I)Ljava/util/stream/Stream; elementsFromMask elementsFromMask + p 0 mask + m (I)Lcom/mojang/blaze3d/vertex/VertexFormatElement; byId byId + p 0 id + m (ILcom/mojang/blaze3d/vertex/VertexFormatElement;)Z lambda$elementsFromMask$0 lambda$elementsFromMask$0 + p 1 element + m (IILcom/mojang/blaze3d/vertex/VertexFormatElement$Type;Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage;I)V + p 1 id + p 2 index + p 3 type + p 4 usage + p 5 count +c com/mojang/blaze3d/vertex/VertexFormatElement$Type com/mojang/blaze3d/vertex/VertexFormatElement$Type + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 size + p 4 name +c com/mojang/blaze3d/vertex/VertexFormatElement$Usage com/mojang/blaze3d/vertex/VertexFormatElement$Usage + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_927 net/minecraft/client/render/entity/MobEntityRenderer + m (Lnet/minecraft/class_10042;)F method_55832 getShadowRadius + m (Lnet/minecraft/class_1308;D)Z method_4071 hasLabel + m (Lnet/minecraft/class_1297;Ljava/lang/String;)Z method_74933 nameEquals + p 0 entity + p 1 name +c net/minecraft/class_926 net/minecraft/client/render/entity/MooshroomEntityRenderer + f Ljava/util/Map; field_4748 TEXTURES + m ()Lnet/minecraft/class_10047; method_62493 createRenderState + m (Lnet/minecraft/class_10047;)Lnet/minecraft/class_2960; method_4066 getTexture + m (Lnet/minecraft/class_1438;Lnet/minecraft/class_10047;F)V method_62492 updateRenderState + m (Ljava/util/HashMap;)V method_18657 method_18657 + p 0 map +c net/minecraft/class_925 net/minecraft/client/render/entity/AbstractMinecartEntityRenderer + f Lnet/minecraft/class_2960; field_4746 TEXTURE + f Lnet/minecraft/class_580; field_4747 model + m (Lnet/minecraft/class_1688;Lnet/minecraft/class_10045;F)V method_62362 updateRenderState + m (Lnet/minecraft/class_1688;Lnet/minecraft/class_9883;Lnet/minecraft/class_10045;F)V method_62361 updateFromDefaultController + p 1 controller + p 0 minecart + p 3 tickProgress + p 2 state + m (Lnet/minecraft/class_10045;Lnet/minecraft/class_4587;)V method_62365 transformDefaultControllerMinecart + p 0 state + p 1 matrices + m (Lnet/minecraft/class_10045;Lnet/minecraft/class_4587;)V method_62363 transformExperimentalControllerMinecart + p 0 state + p 1 matrices + m (Lnet/minecraft/class_10045;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_4063 render + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_5601;)V + p 2 layer + p 1 ctx + m (Lnet/minecraft/class_10045;Lnet/minecraft/class_2680;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;I)V method_4064 renderBlock + p 5 light + p 4 queue + p 3 matrices + p 2 blockState + p 1 state + m (Lnet/minecraft/class_1688;Lnet/minecraft/class_9879;Lnet/minecraft/class_10045;F)V method_62360 updateFromExperimentalController + p 0 minecart + p 1 controller + p 2 state + p 3 tickProgress + m (Lnet/minecraft/class_10045;)Lnet/minecraft/class_243; method_62364 getPositionOffset + m (Lnet/minecraft/class_1688;)Lnet/minecraft/class_238; method_62359 getBoundingBox +c net/minecraft/class_929 net/minecraft/client/render/entity/CatEntityRenderer + m (Lnet/minecraft/class_10008;Lnet/minecraft/class_4587;FF)V method_16045 setupTransforms + m ()Lnet/minecraft/class_10008; method_62394 createRenderState + m (Lnet/minecraft/class_10008;)Lnet/minecraft/class_2960; method_4078 getTexture + m (Lnet/minecraft/class_1451;Lnet/minecraft/class_10008;F)V method_62395 updateRenderState +c net/minecraft/class_928 net/minecraft/client/render/entity/PaintingEntityRenderer + f Lnet/minecraft/class_1059; field_61801 paintingAtlases + f Lnet/minecraft/class_2960; field_61800 BACK_TEXTURE + m (Lnet/minecraft/class_1534;Lnet/minecraft/class_10049;F)V method_62499 updateRenderState + m (IILnet/minecraft/class_1058;[ILnet/minecraft/class_1058;Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_72990 method_72990 + p 7 vertexConsumer + p 6 matricesEntry + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;FFFFFIIII)V method_23188 vertex + p 5 u + p 6 v + p 3 x + p 4 y + p 1 matrix + p 2 vertexConsumer + p 11 light + p 9 normalY + p 10 normalZ + p 7 z + p 8 normalX + m (Lnet/minecraft/class_10049;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_4075 render + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_1921;[IIILnet/minecraft/class_1058;Lnet/minecraft/class_1058;)V method_4074 renderPainting + p 2 queue + p 3 renderLayer + p 1 matrices + p 6 height + p 7 front + p 4 lightmapCoordinates + p 5 width + p 8 back + m ()Lnet/minecraft/class_10049; method_62498 createRenderState +c net/minecraft/class_941 net/minecraft/client/render/entity/SheepEntityRenderer + f Lnet/minecraft/class_2960; field_4778 TEXTURE + m (Lnet/minecraft/class_10063;)Lnet/minecraft/class_2960; method_4106 getTexture + m (Lnet/minecraft/class_1472;Lnet/minecraft/class_10063;F)V method_62522 updateRenderState + m ()Lnet/minecraft/class_10063; method_62523 createRenderState +c net/minecraft/class_940 net/minecraft/client/render/entity/ShulkerBulletEntityRenderer + f Lnet/minecraft/class_1921; field_21744 LAYER + f Lnet/minecraft/class_2960; field_4776 TEXTURE + f Lnet/minecraft/class_603; field_4777 model + m ()Lnet/minecraft/class_10064; method_62524 createRenderState + m (Lnet/minecraft/class_1678;Lnet/minecraft/class_2338;)I method_24091 getBlockLight + m (Lnet/minecraft/class_1678;Lnet/minecraft/class_10064;F)V method_62525 updateRenderState + m (Lnet/minecraft/class_10064;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_4103 render +c net/minecraft/class_1360 net/minecraft/entity/ai/goal/SitOnOwnerShoulderGoal + f Z field_6480 mounted + f Lnet/minecraft/class_1471; field_6478 tameable + m (Lnet/minecraft/class_1471;)V + p 1 tameable +c net/minecraft/class_945 net/minecraft/client/render/entity/SlimeEntityRenderer + f Lnet/minecraft/class_2960; field_4784 TEXTURE + m (Lnet/minecraft/class_10067;)F method_65250 getShadowRadius + m ()Lnet/minecraft/class_10067; method_62532 createRenderState + m (Lnet/minecraft/class_10067;Lnet/minecraft/class_4587;)V method_4118 scale + m (Lnet/minecraft/class_1621;Lnet/minecraft/class_10067;F)V method_62531 updateRenderState + m (Lnet/minecraft/class_10067;)Lnet/minecraft/class_2960; method_4116 getTexture +c net/minecraft/class_943 net/minecraft/client/render/entity/ShulkerEntityRenderer + f Lnet/minecraft/class_2960; field_4781 TEXTURE + f [Lnet/minecraft/class_2960; field_4780 COLORED_TEXTURES + m (Lnet/minecraft/class_1606;Lnet/minecraft/class_10065;F)V method_62526 updateRenderState + m (Lnet/minecraft/class_10065;)Lnet/minecraft/class_243; method_23189 getPositionOffset + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_2960; method_37105 getTexture + p 0 shulkerColor + m ()Lnet/minecraft/class_10065; method_62527 createRenderState + m (Lnet/minecraft/class_10065;Lnet/minecraft/class_4587;FF)V method_4114 setupTransforms + m (Lnet/minecraft/class_1606;Lnet/minecraft/class_4604;DDD)Z method_4112 shouldRender + m (Lnet/minecraft/class_10065;)Lnet/minecraft/class_2960; method_4111 getTexture + m (Lnet/minecraft/class_4730;)Lnet/minecraft/class_2960; method_22792 method_22792 + p 0 spriteId +c net/minecraft/class_942 net/minecraft/client/render/entity/SilverfishEntityRenderer + f Lnet/minecraft/class_2960; field_4779 TEXTURE + m ()Lnet/minecraft/class_10042; method_62528 createRenderState +c net/minecraft/class_2696 net/minecraft/network/packet/s2c/play/PlayerAbilitiesS2CPacket + f Z field_12337 allowFlying + f Z field_12336 creativeMode + f Z field_12339 invulnerable + f Z field_12338 flying + f I field_33339 CREATIVE_MODE_MASK + f I field_33338 ALLOW_FLYING_MASK + f I field_33337 FLYING_MASK + f I field_33336 INVULNERABLE_MASK + f F field_12335 flySpeed + f F field_12334 walkSpeed + f Lnet/minecraft/class_9139; field_47948 CODEC + m (Lnet/minecraft/class_1656;)V + p 1 abilities + m ()Z method_11695 isInvulnerable + m ()Z method_11696 isCreativeMode + m ()Z method_11699 allowFlying + m (Lnet/minecraft/class_2540;)V method_55897 write + p 1 buf + m ()Z method_11698 isFlying + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11697 apply + m ()F method_11691 getWalkSpeed + m ()F method_11690 getFlySpeed +c net/minecraft/class_1364 net/minecraft/entity/ai/goal/LookAtCustomerGoal + f Lnet/minecraft/class_3988; field_6495 merchant + m (Lnet/minecraft/class_3988;)V + p 1 merchant +c net/minecraft/class_2697 net/minecraft/block/pattern/BlockPatternBuilder + f Lit/unimi/dsi/fastutil/chars/CharSet; field_64166 keysMissingPredicates + f Ljava/util/Map; field_12343 charMap + f Ljava/util/List; field_12344 aisles + f I field_12342 height + f I field_12341 width + m ()Lnet/minecraft/class_2697; method_11701 start + m (Lnet/minecraft/class_2694;)Z method_38861 method_38861 + p 0 pos + m ()Lnet/minecraft/class_2700; method_11704 build + m (CLjava/util/function/Predicate;)Lnet/minecraft/class_2697; method_11700 where + p 1 key + p 2 predicate + m ()[[[Ljava/util/function/Predicate; method_11703 bakePredicates + m ([Ljava/lang/String;)Lnet/minecraft/class_2697; method_11702 aisle + p 1 pattern +c net/minecraft/class_1362 net/minecraft/entity/ai/goal/FormCaravanGoal + f I field_6489 counter + f Lnet/minecraft/class_1501; field_6488 llama + f I field_30217 MAX_CARAVAN_LENGTH + f D field_6487 speed + m (Lnet/minecraft/class_1297;)Z method_19616 method_19616 + p 0 entity + m (Lnet/minecraft/class_1501;D)V + p 2 speed + p 1 llama + m (Lnet/minecraft/class_1501;I)Z method_6285 canFollow + p 1 llama + p 2 length +c net/minecraft/class_1361 net/minecraft/entity/ai/goal/LookAtEntityGoal + f Lnet/minecraft/class_1297; field_6484 target + f F field_6481 chance + f F field_6482 range + f I field_6483 lookTime + f Lnet/minecraft/class_4051; field_18087 targetPredicate + f Ljava/lang/Class; field_6485 targetType + f Z field_33761 lookForward + f Lnet/minecraft/class_1308; field_6486 mob + f F field_33760 DEFAULT_CHANCE + m (Lnet/minecraft/class_1308;Ljava/lang/Class;FF)V + p 3 range + p 4 chance + p 1 mob + p 2 targetType + m (Lnet/minecraft/class_1308;Ljava/lang/Class;F)V + p 3 range + p 1 mob + p 2 targetType + m (Lnet/minecraft/class_1308;Ljava/lang/Class;FFZ)V + p 5 lookForward + p 3 range + p 4 chance + p 1 mob + p 2 targetType + m (Ljava/util/function/Predicate;Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_18414 method_18414 + p 2 world + p 1 entity +c net/minecraft/class_2692 net/minecraft/network/packet/s2c/play/VehicleMoveS2CPacket + f F comp_3348 yaw + f F comp_3349 pitch + f Lnet/minecraft/class_9139; field_47943 CODEC + f Lnet/minecraft/class_243; comp_3347 position + m ()F comp_3348 yaw + m ()F comp_3349 pitch + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_2692; method_65305 fromVehicle + p 0 vehicle + m (Lnet/minecraft/class_2602;)V method_11672 apply + m ()Lnet/minecraft/class_243; comp_3347 position + m (Lnet/minecraft/class_243;FF)V + p 1 position + p 2 yaw + p 3 pitch +c net/minecraft/class_1368 net/minecraft/entity/ai/goal/MoveThroughVillageGoal + f I field_18414 distance + f Z field_6524 requiresNighttime + f Ljava/util/function/BooleanSupplier; field_18415 doorPassingThroughGetter + f Lnet/minecraft/class_11; field_6523 targetPath + f Lnet/minecraft/class_2338; field_18412 target + f D field_6520 speed + f Lnet/minecraft/class_1314; field_6525 mob + f Ljava/util/List; field_18413 visitedTargets + m (Lnet/minecraft/class_6880;)Z method_43976 method_43976 + p 0 poiType + m (Lnet/minecraft/class_6880;)Z method_43975 method_43975 + p 0 poiType + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)D method_19053 method_19053 + p 3 pos + m (Lnet/minecraft/class_1314;DZILjava/util/function/BooleanSupplier;)V + p 1 entity + p 2 speed + p 4 requiresNighttime + p 5 distance + p 6 doorPassingThroughGetter + m ()V method_6297 forgetOldTarget + m (Lnet/minecraft/class_2338;)Z method_19052 shouldVisit + p 1 pos +c net/minecraft/class_2693 net/minecraft/network/packet/s2c/play/SignEditorOpenS2CPacket + f Z field_43387 front + f Lnet/minecraft/class_2338; field_12325 pos + f Lnet/minecraft/class_9139; field_47946 CODEC + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_55895 write + p 1 buf + m (Lnet/minecraft/class_2338;Z)V + p 1 pos + p 2 front + m ()Lnet/minecraft/class_2338; method_11677 getPos + m (Lnet/minecraft/class_2602;)V method_11676 apply + m ()Z method_49995 isFront +c net/minecraft/class_1367 net/minecraft/entity/ai/goal/MoveToTargetPosGoal + f Z field_6513 reached + f I field_30223 MIN_INTERVAL + f I field_30221 MIN_WAITING_TIME + f I field_30222 MAX_TRYING_TIME + f I field_6517 tryingTime + f Lnet/minecraft/class_2338; field_6512 targetPos + f I field_6515 lowestY + f I field_6518 cooldown + f D field_6514 speed + f I field_6519 maxYDifference + f I field_6510 range + f I field_6511 safeWaitingTime + f Lnet/minecraft/class_1314; field_6516 mob + m (Lnet/minecraft/class_1314;DI)V + p 4 range + p 2 speed + p 1 mob + m (Lnet/minecraft/class_1314;DII)V + p 1 mob + p 2 speed + p 5 maxYDifference + p 4 range + m ()D method_6291 getDesiredDistanceToTarget + m ()Z method_6292 findTargetPos + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_6296 isTargetPos + p 2 pos + p 1 world + m ()Z method_6295 hasReached + m ()V method_6290 startMovingToTarget + m ()Z method_6294 shouldResetPath + m ()Lnet/minecraft/class_2338; method_30953 getTargetPos + m (Lnet/minecraft/class_1314;)I method_6293 getInterval + p 1 mob +c net/minecraft/class_1366 net/minecraft/entity/ai/goal/MeleeAttackGoal + f D field_6507 targetY + f D field_6508 targetX + f D field_6506 targetZ + f I field_24667 cooldown + f Lnet/minecraft/class_11; field_6509 path + f Z field_6502 pauseWhenMobIdle + f J field_19200 lastUpdateTime + f I field_6504 attackIntervalTicks + f D field_6500 speed + f I field_6501 updateCountdownTicks + f Lnet/minecraft/class_1314; field_6503 mob + f J field_30218 MAX_ATTACK_TIME + m ()V method_28346 resetCooldown + m (Lnet/minecraft/class_1309;)V method_6288 attack + p 1 target + m ()Z method_28347 isCooledDown + m (Lnet/minecraft/class_1314;DZ)V + p 2 speed + p 1 mob + p 4 pauseWhenMobIdle + m ()I method_28348 getCooldown + m ()I method_28349 getMaxCooldown + m (Lnet/minecraft/class_1309;)Z method_53715 canAttack + p 1 target +c net/minecraft/class_2694 net/minecraft/block/pattern/CachedBlockPosition + f Z field_12328 cachedEntity + f Lnet/minecraft/class_4538; field_12330 world + f Lnet/minecraft/class_2586; field_12327 blockEntity + f Lnet/minecraft/class_2338; field_12331 pos + f Z field_12329 forceLoad + f Lnet/minecraft/class_2680; field_12326 state + m ()Lnet/minecraft/class_2338; method_11683 getBlockPos + m (Ljava/util/function/Predicate;Lnet/minecraft/class_2694;)Z method_11682 method_11682 + p 1 pos + m ()Lnet/minecraft/class_2680; method_11681 getBlockState + m ()Lnet/minecraft/class_2586; method_11680 getBlockEntity + m (Ljava/util/function/Predicate;)Ljava/util/function/Predicate; method_11678 matchesBlockState + p 0 state + m ()Lnet/minecraft/class_4538; method_11679 getWorld + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Z)V + p 3 forceLoad + p 2 pos + p 1 world +c net/minecraft/class_2695 net/minecraft/network/packet/s2c/play/CraftFailedResponseS2CPacket + f Lnet/minecraft/class_9139; field_47947 CODEC + f I comp_3226 syncId + f Lnet/minecraft/class_10295; comp_3227 recipeDisplay + m (Lnet/minecraft/class_2602;)V method_11686 apply + m ()I comp_3226 syncId + m ()Lnet/minecraft/class_10295; comp_3227 recipeDisplay + m (ILnet/minecraft/class_10295;)V + p 1 syncId + p 2 recipeDisplay +c net/minecraft/class_1359 net/minecraft/entity/ai/goal/PounceAtTargetGoal + f F field_6475 velocity + f Lnet/minecraft/class_1308; field_6476 mob + f Lnet/minecraft/class_1309; field_6477 target + m (Lnet/minecraft/class_1308;F)V + p 1 mob + p 2 velocity +c net/minecraft/class_1358 net/minecraft/entity/ai/goal/StopAndLookAtEntityGoal +c net/minecraft/class_2689 net/minecraft/state/StateManager + f Lcom/google/common/collect/ImmutableList; field_12315 states + f Ljava/lang/Object; field_12317 owner + f Ljava/util/regex/Pattern; field_12314 VALID_NAME_PATTERN + f Lcom/google/common/collect/ImmutableSortedMap; field_12316 properties + m (Lnet/minecraft/class_2769;Ljava/util/List;)Ljava/util/stream/Stream; method_11666 method_11666 + p 1 entries + m (Ljava/lang/String;)Lnet/minecraft/class_2769; method_11663 getProperty + p 1 name + m (Lcom/mojang/serialization/MapCodec;Ljava/util/function/Supplier;Ljava/lang/String;Lnet/minecraft/class_2769;)Lcom/mojang/serialization/MapCodec; method_30040 addFieldToMapCodec + p 2 key + p 1 defaultStateGetter + p 3 property + p 0 mapCodec + m ()Ljava/lang/Object; method_11660 getOwner + m (Ljava/lang/String;)V method_38859 method_38859 + p 0 value + m ()Ljava/util/Collection; method_11659 getProperties + m (Ljava/util/List;Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Ljava/util/List; method_11661 method_11661 + p 2 value + m (Ljava/util/function/Function;Ljava/lang/Object;Lnet/minecraft/class_2689$class_2691;Ljava/util/Map;)V + p 1 defaultStateGetter + p 2 owner + p 3 factory + p 4 propertiesMap + m (Lnet/minecraft/class_2689$class_2691;Ljava/lang/Object;Lcom/mojang/serialization/MapCodec;Ljava/util/Map;Ljava/util/List;Ljava/util/List;)V method_28484 method_28484 + p 5 entries + m (Lnet/minecraft/class_2769;Lcom/mojang/datafixers/util/Pair;)Lnet/minecraft/class_2688; method_30038 method_30038 + p 1 pair + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_2688;)Lcom/mojang/datafixers/util/Pair; method_30037 method_30037 + p 1 state + m ()Lcom/google/common/collect/ImmutableList; method_11662 getStates + m ()Lnet/minecraft/class_2688; method_11664 getDefaultState +c net/minecraft/class_2689$class_2691 net/minecraft/state/StateManager$Factory + m (Ljava/lang/Object;Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap;Lcom/mojang/serialization/MapCodec;)Ljava/lang/Object; create create + p 2 propertyMap + p 3 codec + p 1 owner +c net/minecraft/class_2689$class_2690 net/minecraft/state/StateManager$Builder + f Ljava/lang/Object; field_12318 owner + f Ljava/util/Map; field_12319 namedProperties + m (Lnet/minecraft/class_2769;)V method_11669 validate + p 1 property + m ([Lnet/minecraft/class_2769;)Lnet/minecraft/class_2689$class_2690; method_11667 add + p 1 properties + m (Ljava/lang/Object;)V + p 1 owner + m (Ljava/util/function/Function;Lnet/minecraft/class_2689$class_2691;)Lnet/minecraft/class_2689; method_11668 build + p 2 factory + p 1 defaultStateGetter +c net/minecraft/class_938 net/minecraft/client/render/entity/SalmonEntityRenderer + f Lnet/minecraft/class_2960; field_4767 TEXTURE + f Lnet/minecraft/class_599; field_53198 smallModel + f Lnet/minecraft/class_599; field_53199 mediumModel + f Lnet/minecraft/class_599; field_53200 largeModel + m (Lnet/minecraft/class_10062;Lnet/minecraft/class_4587;FF)V method_4100 setupTransforms + m ()Lnet/minecraft/class_10062; method_62521 createRenderState + m (Lnet/minecraft/class_10062;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_62520 render + m (Lnet/minecraft/class_10062;)Lnet/minecraft/class_2960; method_4101 getTexture + m (Lnet/minecraft/class_1462;Lnet/minecraft/class_10062;F)V method_62519 updateRenderState +c net/minecraft/class_937 net/minecraft/client/render/entity/PolarBearEntityRenderer + f Lnet/minecraft/class_2960; field_4766 TEXTURE + m (Lnet/minecraft/class_1456;Lnet/minecraft/class_10057;F)V method_62511 updateRenderState + m (Lnet/minecraft/class_10057;)Lnet/minecraft/class_2960; method_4097 getTexture + m ()Lnet/minecraft/class_10057; method_62512 createRenderState +c net/minecraft/class_936 net/minecraft/client/render/entity/PufferfishEntityRenderer + f Lnet/minecraft/class_2960; field_4762 TEXTURE + f Lnet/minecraft/class_583; field_4763 largeModel + f Lnet/minecraft/class_583; field_4764 mediumModel + f Lnet/minecraft/class_583; field_4761 smallModel + m (Lnet/minecraft/class_10058;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_4094 render + m (Lnet/minecraft/class_10058;Lnet/minecraft/class_4587;FF)V method_4095 setupTransforms + m ()Lnet/minecraft/class_10058; method_62514 createRenderState + m (Lnet/minecraft/class_1454;Lnet/minecraft/class_10058;F)V method_62513 updateRenderState + m (Lnet/minecraft/class_10058;)Lnet/minecraft/class_2960; method_4096 getTexture + m (Lnet/minecraft/class_10058;)F method_65249 getShadowRadius +c net/minecraft/class_939 net/minecraft/client/render/entity/RabbitEntityRenderer + f Lnet/minecraft/class_2960; field_4768 GOLD_TEXTURE + f Lnet/minecraft/class_2960; field_4769 CAERBANNOG_TEXTURE + f Lnet/minecraft/class_2960; field_4771 TOAST_TEXTURE + f Lnet/minecraft/class_2960; field_4770 BROWN_TEXTURE + f Lnet/minecraft/class_2960; field_4773 WHITE_TEXTURE + f Lnet/minecraft/class_2960; field_4772 WHITE_SPLOTCHED_TEXTURE + f Lnet/minecraft/class_2960; field_4775 BLACK_TEXTURE + f Lnet/minecraft/class_2960; field_4774 SALT_TEXTURE + m (Lnet/minecraft/class_10059;)Lnet/minecraft/class_2960; method_4102 getTexture + m ()Lnet/minecraft/class_10059; method_62516 createRenderState + m (Lnet/minecraft/class_1463;Lnet/minecraft/class_10059;F)V method_62515 updateRenderState +c net/minecraft/class_951 net/minecraft/client/render/entity/SquidEntityRenderer + f Lnet/minecraft/class_2960; field_4791 TEXTURE + m (Lnet/minecraft/class_10069;Lnet/minecraft/class_4587;FF)V method_4126 setupTransforms + m ()Lnet/minecraft/class_10069; method_62542 createRenderState + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_610;Lnet/minecraft/class_610;)V + p 1 context + p 3 babyModel + p 2 model + m (Lnet/minecraft/class_10069;)Lnet/minecraft/class_2960; method_33431 getTexture + m (Lnet/minecraft/class_1477;Lnet/minecraft/class_10069;F)V method_62541 updateRenderState +c net/minecraft/class_950 net/minecraft/client/render/entity/StrayEntityRenderer + f Lnet/minecraft/class_2960; field_4790 TEXTURE + f Lnet/minecraft/class_2960; field_49165 OVERLAY_TEXTURE + m ()Lnet/minecraft/class_10066; method_62543 createRenderState + m (Lnet/minecraft/class_10066;)Lnet/minecraft/class_2960; method_57817 getTexture +c net/minecraft/class_1371 net/minecraft/entity/ai/goal/AttackGoal + c Goal that causes its mob to follow and attack its selected target. + f Lnet/minecraft/class_1308; field_6541 mob + f I field_6540 cooldown + f Lnet/minecraft/class_1309; field_6539 target + m (Lnet/minecraft/class_1308;)V + p 1 mob +c net/minecraft/class_956 net/minecraft/client/render/entity/TntEntityRenderer + m (Lnet/minecraft/class_10075;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_4135 render + m ()Lnet/minecraft/class_10075; method_62557 createRenderState + m (Lnet/minecraft/class_1541;Lnet/minecraft/class_10075;F)V method_62558 updateRenderState +c net/minecraft/class_1370 net/minecraft/entity/ai/goal/GoToWalkTargetGoal + f D field_6534 y + f D field_6533 z + f Lnet/minecraft/class_1314; field_6536 mob + f D field_6535 x + f D field_6537 speed + m (Lnet/minecraft/class_1314;D)V + p 1 mob + p 2 speed +c net/minecraft/class_955 net/minecraft/client/render/entity/TridentEntityRenderer + f Lnet/minecraft/class_613; field_4797 model + f Lnet/minecraft/class_2960; field_4796 TEXTURE + m (Lnet/minecraft/class_1685;Lnet/minecraft/class_10073;F)V method_62552 updateRenderState + m ()Lnet/minecraft/class_10073; method_62551 createRenderState + m (Lnet/minecraft/class_10073;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_4133 render +c net/minecraft/class_954 net/minecraft/client/render/entity/ArrowEntityRenderer + f Lnet/minecraft/class_2960; field_4794 TIPPED_TEXTURE + f Lnet/minecraft/class_2960; field_4795 TEXTURE + m ()Lnet/minecraft/class_10074; method_62553 createRenderState + m (Lnet/minecraft/class_1667;Lnet/minecraft/class_10074;F)V method_62554 updateRenderState + m (Lnet/minecraft/class_10074;)Lnet/minecraft/class_2960; method_4130 getTexture +c net/minecraft/class_953 net/minecraft/client/render/entity/FlyingItemEntityRenderer + f Z field_21745 lit + f Lnet/minecraft/class_10442; field_55301 itemModelManager + f F field_17147 scale + m (Lnet/minecraft/class_10072;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_62550 render + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_10072;F)V method_62548 updateRenderState + m (Lnet/minecraft/class_5617$class_5618;FZ)V + p 1 ctx + p 2 scale + p 3 lit + m ()Lnet/minecraft/class_10072; method_62547 createRenderState +c net/minecraft/class_1374 net/minecraft/entity/ai/goal/EscapeDangerGoal + f D field_6547 targetX + f Ljava/util/function/Function; field_52011 entityToDangerousDamageTypes + f D field_6546 targetY + f Lnet/minecraft/class_1314; field_6549 mob + f D field_6548 speed + f Z field_23227 active + f D field_6550 targetZ + f I field_36271 RANGE_Y + m (Lnet/minecraft/class_6862;Lnet/minecraft/class_1314;)Lnet/minecraft/class_6862; method_60722 method_60722 + p 1 entity + m (Lnet/minecraft/class_1314;D)V + p 1 mob + p 2 speed + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_39764 method_39764 + p 1 pos + m (Lnet/minecraft/class_1314;DLnet/minecraft/class_6862;)V + p 2 speed + p 1 mob + p 4 dangerousDamageTypes + m ()Z method_26337 isActive + m ()Z method_40072 isInDanger + m ()Z method_6301 findTarget + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_1297;I)Lnet/minecraft/class_2338; method_6300 locateClosestWater + p 3 rangeX + p 1 world + p 2 entity + m (Lnet/minecraft/class_1314;DLjava/util/function/Function;)V + p 1 mob + p 2 speed + p 4 entityToDangerousDamageTypes +c net/minecraft/class_1373 net/minecraft/entity/ai/goal/CatSitOnBlockGoal + f Lnet/minecraft/class_1451; field_6545 cat + m (Lnet/minecraft/class_4970$class_4971;)Z method_27793 method_27793 + p 0 state + m (Lnet/minecraft/class_2742;)Ljava/lang/Boolean; method_27794 method_27794 + p 0 part + m (Lnet/minecraft/class_1451;D)V + p 2 speed + p 1 cat +c net/minecraft/class_1372 net/minecraft/entity/ai/goal/IronGolemLookGoal + f Lnet/minecraft/class_1309; field_61987 recipient + f Lnet/minecraft/class_4051; field_18089 CLOSE_VILLAGER_PREDICATE + f Lnet/minecraft/class_1792; field_61986 GIFT + f I field_6543 lookCountdown + f Lnet/minecraft/class_1439; field_6542 golem + f I field_30224 MAX_LOOK_COOLDOWN + m (Lnet/minecraft/class_1439;)V + p 1 golem + m ()Lnet/minecraft/class_238; method_73191 getRange +c net/minecraft/class_1379 net/minecraft/entity/ai/goal/WanderAroundGoal + f I field_30226 DEFAULT_CHANCE + f Z field_6565 ignoringChance + f D field_6567 speed + f I field_6564 chance + f D field_6562 targetY + f D field_6561 targetZ + f Lnet/minecraft/class_1314; field_6566 mob + f D field_6563 targetX + f Z field_24463 canDespawn + m (I)V method_6303 setChance + p 1 chance + m ()Lnet/minecraft/class_243; method_6302 getWanderTarget + m (Lnet/minecraft/class_1314;D)V + p 2 speed + p 1 mob + m (Lnet/minecraft/class_1314;DIZ)V + p 1 entity + p 2 speed + p 5 canDespawn + p 4 chance + m ()V method_6304 ignoreChanceOnce + m (Lnet/minecraft/class_1314;DI)V + p 4 chance + p 2 speed + p 1 mob +c net/minecraft/class_1378 net/minecraft/entity/ai/goal/SwimAroundGoal +c net/minecraft/class_1376 net/minecraft/entity/ai/goal/LookAroundGoal + f I field_6555 lookTime + f D field_6554 deltaX + f D field_6553 deltaZ + f Lnet/minecraft/class_1308; field_6556 mob + m (Lnet/minecraft/class_1308;)V + p 1 mob +c net/minecraft/class_1369 net/minecraft/entity/ai/goal/WanderNearTargetGoal + f Lnet/minecraft/class_1309; field_6529 target + f D field_6531 z + f D field_6530 speed + f F field_6532 maxDistance + f Lnet/minecraft/class_1314; field_6528 mob + f D field_6526 y + f D field_6527 x + m (Lnet/minecraft/class_1314;DF)V + p 4 maxDistance + p 2 speed + p 1 mob +c net/minecraft/class_949 net/minecraft/client/render/entity/SpiderEntityRenderer + f Lnet/minecraft/class_2960; field_4789 TEXTURE + m ()Lnet/minecraft/class_10042; method_62540 createRenderState + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_5601;)V + p 2 layer + p 1 ctx + m (Lnet/minecraft/class_1628;Lnet/minecraft/class_10042;F)V method_62539 updateRenderState +c net/minecraft/class_948 net/minecraft/client/render/entity/SnowGolemEntityRenderer + f Lnet/minecraft/class_2960; field_4788 TEXTURE + m ()Lnet/minecraft/class_10429; method_62537 createRenderState + m (Lnet/minecraft/class_1473;Lnet/minecraft/class_10429;F)V method_62536 updateRenderState + m (Lnet/minecraft/class_10429;)Lnet/minecraft/class_2960; method_65571 getTexture +c net/minecraft/class_947 net/minecraft/client/render/entity/SpectralArrowEntityRenderer + f Lnet/minecraft/class_2960; field_4787 TEXTURE + m ()Lnet/minecraft/class_9999; method_62538 createRenderState +c net/minecraft/class_946 net/minecraft/client/render/entity/SkeletonEntityRenderer + f Lnet/minecraft/class_2960; field_4785 TEXTURE + m (Lnet/minecraft/class_10066;)Lnet/minecraft/class_2960; method_62529 getTexture + m ()Lnet/minecraft/class_10066; method_62530 createRenderState +c net/minecraft/class_1342 net/minecraft/entity/ai/goal/BreatheAirGoal + f Lnet/minecraft/class_1314; field_6408 mob + m ()V method_6252 moveToAir + m (Lnet/minecraft/class_1314;)V + p 1 mob + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_6253 isAirPos + p 2 pos + p 1 world +c net/minecraft/class_2674 net/minecraft/block/piston/PistonHandler + f Z field_12247 retracted + f Lnet/minecraft/class_2338; field_12244 posTo + f I field_31384 MAX_MOVABLE_BLOCKS + f Lnet/minecraft/class_2350; field_12243 motionDirection + f Ljava/util/List; field_12245 movedBlocks + f Ljava/util/List; field_12246 brokenBlocks + f Lnet/minecraft/class_2338; field_12250 posFrom + f Lnet/minecraft/class_2350; field_12248 pistonDirection + f Lnet/minecraft/class_1937; field_12249 world + m ()Ljava/util/List; method_11536 getBrokenBlocks + m (Lnet/minecraft/class_2680;)Z method_23367 isBlockSticky + p 0 state + m ()Lnet/minecraft/class_2350; method_35299 getMotionDirection + m (Lnet/minecraft/class_2338;)Z method_11538 tryMoveAdjacentBlock + p 1 pos + m ()Ljava/util/List; method_11541 getMovedBlocks + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_11540 tryMove + p 1 pos + p 2 dir + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Z)V + p 3 dir + p 2 pos + p 4 retracted + p 1 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)Z method_23675 isAdjacentBlockStuck + p 1 adjacentState + p 0 state + m ()Z method_11537 calculatePush + m (II)V method_11539 setMovedBlocks + p 1 from + p 2 to +c net/minecraft/class_2675 net/minecraft/network/packet/s2c/play/ParticleS2CPacket + f D field_12256 z + f D field_12258 x + f F field_12252 offsetY + f Lnet/minecraft/class_2394; field_12259 parameters + f F field_12260 speed + f Z field_12254 forceSpawn + f D field_12257 y + f F field_12255 offsetX + f I field_12253 count + f F field_12251 offsetZ + f Lnet/minecraft/class_9139; field_47935 CODEC + f Z field_54980 important + m (Lnet/minecraft/class_2602;)V method_11553 apply + m ()D method_11544 getX + m (Lnet/minecraft/class_9129;)V method_55885 write + p 1 buf + m ()D method_11546 getZ + m ()F method_11548 getOffsetX + m (Lnet/minecraft/class_2394;ZZDDDFFFFI)V + p 11 offsetY + p 10 offsetX + p 8 z + p 6 y + p 4 x + p 3 important + p 2 forceSpawn + p 1 parameters + p 14 count + p 13 speed + p 12 offsetZ + m ()F method_11550 getOffsetZ + m ()F method_11543 getSpeed + m ()I method_11545 getCount + m ()Lnet/minecraft/class_2394; method_11551 getParameters + m ()Z method_65082 isImportant + m ()D method_11547 getY + m ()F method_11549 getOffsetY + m ()Z method_11552 shouldForceSpawn + m (Lnet/minecraft/class_9129;)V + p 1 buf +c net/minecraft/class_1341 net/minecraft/entity/ai/goal/AnimalMateGoal + f Lnet/minecraft/class_1429; field_6404 animal + f Ljava/lang/Class; field_6403 entityClass + f Lnet/minecraft/class_3218; field_6405 world + f Lnet/minecraft/class_1429; field_6406 mate + f D field_6407 speed + f I field_6402 timer + f Lnet/minecraft/class_4051; field_18086 VALID_MATE_PREDICATE + m (Lnet/minecraft/class_1429;DLjava/lang/Class;)V + p 4 entityClass + p 1 animal + p 2 speed + m ()Lnet/minecraft/class_1429; method_6250 findMate + m (Lnet/minecraft/class_1429;D)V + p 2 speed + p 1 animal + m ()V method_6249 breed +c net/minecraft/class_2676 net/minecraft/network/packet/s2c/play/LightUpdateS2CPacket + f Lnet/minecraft/class_6606; field_34872 data + f I field_12265 chunkX + f Lnet/minecraft/class_9139; field_47936 CODEC + f I field_12264 chunkZ + m ()I method_11558 getChunkX + m ()Lnet/minecraft/class_6606; method_38600 getData + m (Lnet/minecraft/class_2602;)V method_11560 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_3568;Ljava/util/BitSet;Ljava/util/BitSet;)V + p 2 lightProvider + p 1 chunkPos + p 4 blockBits + p 3 skyBits + m ()I method_11554 getChunkZ + m (Lnet/minecraft/class_2540;)V method_55886 write + p 1 buf +c net/minecraft/class_1340 net/minecraft/entity/ai/goal/ChaseBoatState + f Lnet/minecraft/class_1340; field_6400 GO_IN_BOAT_DIRECTION + f Lnet/minecraft/class_1340; field_6401 GO_TO_BOAT +c net/minecraft/class_2670 net/minecraft/network/packet/s2c/common/KeepAliveS2CPacket + f J field_12211 id + f Lnet/minecraft/class_9139; field_48623 CODEC + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()J method_11517 getId + m (Lnet/minecraft/class_2540;)V method_56463 write + p 1 buf + m (Lnet/minecraft/class_8705;)V method_11518 apply + m (J)V + p 1 id +c net/minecraft/class_1346 net/minecraft/entity/ai/goal/ChaseBoatGoal + f Lnet/minecraft/class_1340; field_6425 state + f I field_6428 updateCountdownTicks + f Lnet/minecraft/class_1314; field_6426 mob + f Lnet/minecraft/class_1657; field_6427 passenger + m (Lnet/minecraft/class_1314;)V + p 1 mob +c net/minecraft/class_1345 net/minecraft/entity/ai/goal/EatGrassGoal + f I field_30203 MAX_TIMER + f I field_6422 timer + f Ljava/util/function/Predicate; field_56536 EDIBLE_PREDICATE + f Lnet/minecraft/class_1937; field_6421 world + f Lnet/minecraft/class_1308; field_6424 mob + m ()I method_6258 getTimer + m (Lnet/minecraft/class_2680;)Z method_67520 method_67520 + p 0 state + m (Lnet/minecraft/class_1308;)V + p 1 mob +c net/minecraft/class_2671 net/minecraft/block/PistonHeadBlock + f Ljava/util/Map; field_55827 SHORT_SHAPES + f Ljava/util/Map; field_55828 LONG_SHAPES + f Lnet/minecraft/class_2754; field_12224 TYPE + f Lcom/mojang/serialization/MapCodec; field_46531 CODEC + f Lnet/minecraft/class_265; field_55826 BASE_SHAPE + f Lnet/minecraft/class_2746; field_12227 SHORT + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)Z method_26980 isAttached + p 1 headState + p 2 pistonState +c net/minecraft/class_2672 net/minecraft/network/packet/s2c/play/ChunkDataS2CPacket + f I field_12236 chunkX + f Lnet/minecraft/class_6603; field_34870 chunkData + f I field_12235 chunkZ + f Lnet/minecraft/class_6606; field_34871 lightData + f Lnet/minecraft/class_9139; field_47933 CODEC + m ()Lnet/minecraft/class_6603; method_38598 getChunkData + m (Lnet/minecraft/class_2602;)V method_11528 apply + m ()I method_11524 getChunkZ + m ()I method_11523 getChunkX + m (Lnet/minecraft/class_9129;)V method_55883 write + p 1 buf + m (Lnet/minecraft/class_9129;)V + p 1 buf + m ()Lnet/minecraft/class_6606; method_38599 getLightData + m (Lnet/minecraft/class_2818;Lnet/minecraft/class_3568;Ljava/util/BitSet;Ljava/util/BitSet;)V + p 3 skyBits + p 4 blockBits + p 1 chunk + p 2 lightProvider +c net/minecraft/class_1344 net/minecraft/entity/ai/goal/EscapeSunlightGoal + f D field_6417 targetX + f Lnet/minecraft/class_1937; field_6418 world + f D field_6420 speed + f D field_6416 targetY + f D field_6415 targetZ + f Lnet/minecraft/class_1314; field_6419 mob + m ()Z method_18250 targetShadedPos + m ()Lnet/minecraft/class_243; method_6257 locateShadedPos + m (Lnet/minecraft/class_1314;D)V + p 1 mob + p 2 speed +c net/minecraft/class_2673 net/minecraft/network/packet/s2c/play/WorldEventS2CPacket + f I field_12239 data + f Lnet/minecraft/class_2338; field_12242 pos + f I field_12241 eventId + f Lnet/minecraft/class_9139; field_47934 CODEC + f Z field_12240 global + m ()Lnet/minecraft/class_2338; method_11531 getPos + m ()I method_11532 getEventId + m ()Z method_11533 isGlobal + m (ILnet/minecraft/class_2338;IZ)V + p 2 pos + p 1 eventId + p 4 global + p 3 data + m (Lnet/minecraft/class_2540;)V method_55884 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()I method_11534 getData + m (Lnet/minecraft/class_2602;)V method_11535 apply +c net/minecraft/class_1343 net/minecraft/entity/ai/goal/DoorInteractGoal + f F field_6409 offsetZ + f Z field_6412 doorValid + f Z field_6411 shouldStop + f Lnet/minecraft/class_2338; field_6414 doorPos + f F field_6410 offsetX + f Lnet/minecraft/class_1308; field_6413 mob + m ()Z method_6256 isDoorOpen + m (Lnet/minecraft/class_1308;)V + p 1 mob + m (Z)V method_19995 setDoorOpen + p 1 open +c net/minecraft/class_1339 net/minecraft/entity/ai/goal/BreakDoorGoal + f I field_6397 lastBreakProgress + f I field_6398 breakProgress + f I field_30202 MIN_MAX_PROGRESS + f Ljava/util/function/Predicate; field_19003 difficultySufficientPredicate + f I field_16596 maxProgress + m (Lnet/minecraft/class_1308;ILjava/util/function/Predicate;)V + p 1 mob + p 2 maxProgress + p 3 difficultySufficientPredicate + m (Lnet/minecraft/class_1267;)Z method_19994 isDifficultySufficient + p 1 difficulty + m (Lnet/minecraft/class_1308;Ljava/util/function/Predicate;)V + p 1 mob + p 2 difficultySufficientPredicate + m ()I method_16462 getMaxProgress +c net/minecraft/class_1338 net/minecraft/entity/ai/goal/FleeEntityGoal + f Ljava/util/function/Predicate; field_6393 extraInclusionSelector + f Lnet/minecraft/class_1314; field_6391 mob + f Lnet/minecraft/class_1309; field_6390 targetEntity + f Lnet/minecraft/class_11; field_6387 fleePath + f Lnet/minecraft/class_1408; field_6394 fleeingEntityNavigation + f F field_6386 fleeDistance + f D field_6395 fastSpeed + f D field_6385 slowSpeed + f Ljava/util/function/Predicate; field_6388 inclusionSelector + f Ljava/lang/Class; field_6392 classToFleeFrom + f Lnet/minecraft/class_4051; field_18084 withinRangePredicate + m (Lnet/minecraft/class_1314;Ljava/lang/Class;Ljava/util/function/Predicate;FDDLjava/util/function/Predicate;)V + p 2 fleeFromType + p 3 extraInclusionSelector + p 4 distance + p 5 slowSpeed + p 7 fastSpeed + p 9 inclusionSelector + p 1 mob + m (Lnet/minecraft/class_1314;Ljava/lang/Class;FDDLjava/util/function/Predicate;)V + p 1 fleeingEntity + p 2 classToFleeFrom + p 3 fleeDistance + p 4 fleeSlowSpeed + p 6 fleeFastSpeed + p 8 inclusionSelector + m (Lnet/minecraft/class_1309;)Z method_6245 method_6245 + p 0 entity + m (Lnet/minecraft/class_1309;)Z method_6246 method_6246 + p 0 entity + m (Lnet/minecraft/class_1314;Ljava/lang/Class;FDD)V + p 6 fastSpeed + p 4 slowSpeed + p 2 fleeFromType + p 3 distance + p 1 mob + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_64450 method_64450 + p 3 world + p 2 entity +c net/minecraft/class_1337 net/minecraft/entity/ai/goal/WolfBegGoal + f Lnet/minecraft/class_1493; field_6384 wolf + f Lnet/minecraft/class_3218; field_6381 world + f Lnet/minecraft/class_4051; field_18085 validPlayerPredicate + f Lnet/minecraft/class_1657; field_6383 begFrom + f I field_6382 timer + f F field_6380 begDistance + m (Lnet/minecraft/class_1657;)Z method_6244 isAttractive + p 1 player + m (Lnet/minecraft/class_1493;F)V + p 1 wolf + p 2 begDistance +c net/minecraft/class_3998 net/minecraft/client/particle/NoRenderParticle + c A {@link Particle} with no rendered texture. Useful for emitter particles (such as {@link EmitterParticle})\nthat spawn other particles while ticking, but do not render anything themselves. +c net/minecraft/class_2667 net/minecraft/block/PistonExtensionBlock + f Lcom/mojang/serialization/MapCodec; field_46529 CODEC + f Lnet/minecraft/class_2754; field_12196 FACING + f Lnet/minecraft/class_2754; field_12197 TYPE + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;ZZ)Lnet/minecraft/class_2586; method_11489 createBlockEntityPiston + p 1 state + p 0 pos + p 3 facing + p 2 pushedBlock + p 5 source + p 4 extending + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2669; method_11488 getPistonBlockEntity + p 1 world + p 2 pos +c net/minecraft/class_2668 net/minecraft/network/packet/s2c/play/GameStateChangeS2CPacket + f I field_33331 DEMO_INVENTORY_HELP + f Lnet/minecraft/class_2668$class_5402; field_25656 IMMEDIATE_RESPAWN + f Lnet/minecraft/class_2668$class_5402; field_25646 RAIN_STARTED + f Lnet/minecraft/class_2668$class_5402; field_25654 PUFFERFISH_STING + f Lnet/minecraft/class_2668$class_5402; field_25648 GAME_MODE_CHANGED + f I field_33329 DEMO_MOVEMENT_HELP + f Lnet/minecraft/class_2668$class_5402; field_25652 RAIN_GRADIENT_CHANGED + f Lnet/minecraft/class_2668$class_5402; field_46637 INITIAL_CHUNKS_COMING + f Lnet/minecraft/class_2668$class_5402; field_12199 reason + f Lnet/minecraft/class_2668$class_5402; field_25650 DEMO_MESSAGE_SHOWN + f F field_12198 value + f Lnet/minecraft/class_9139; field_47927 CODEC + f I field_33330 DEMO_JUMP_HELP + f I field_33332 DEMO_EXPIRY_NOTICE + f Lnet/minecraft/class_2668$class_5402; field_25645 NO_RESPAWN_BLOCK + f Lnet/minecraft/class_2668$class_5402; field_46189 LIMITED_CRAFTING_TOGGLED + f Lnet/minecraft/class_2668$class_5402; field_25655 ELDER_GUARDIAN_EFFECT + f Lnet/minecraft/class_2668$class_5402; field_25649 GAME_WON + f Lnet/minecraft/class_2668$class_5402; field_25647 RAIN_STOPPED + f I field_33328 DEMO_OPEN_SCREEN + f Lnet/minecraft/class_2668$class_5402; field_25653 THUNDER_GRADIENT_CHANGED + f Lnet/minecraft/class_2668$class_5402; field_25651 PROJECTILE_HIT_PLAYER + m ()Lnet/minecraft/class_2668$class_5402; method_11491 getReason + m (Lnet/minecraft/class_2540;)V method_55879 write + p 1 buf + m ()F method_11492 getValue + m (Lnet/minecraft/class_2668$class_5402;F)V + p 1 reason + p 2 value + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11490 apply +c net/minecraft/class_2668$class_5402 net/minecraft/network/packet/s2c/play/GameStateChangeS2CPacket$Reason + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_25657 REASONS + f I field_25658 id + m (I)V + p 1 id +c net/minecraft/class_3999 net/minecraft/client/particle/ParticleTextureSheet + c Defines rendering setup and draw logic for particles based on their requirements for depth checking, textures, and transparency.\n\n

\nEach {@link Particle} returns a sheet in {@link Particle#getType()}.\nWhen particles are rendered, each sheet will be drawn once. + f Lnet/minecraft/class_3999; field_17832 NO_RENDER + f Ljava/lang/String; comp_3340 name + f Lnet/minecraft/class_3999; field_62622 SINGLE_QUADS + f Lnet/minecraft/class_3999; field_62624 ELDER_GUARDIANS + f Lnet/minecraft/class_3999; field_62623 ITEM_PICKUP + m ()Ljava/lang/String; comp_3340 name + m (Ljava/lang/String;)V + p 1 name +c net/minecraft/class_2669 net/minecraft/block/entity/PistonBlockEntity + c A piston block entity represents the block being pushed by a piston. + f Z field_12202 source + f F field_57805 DEFAULT_PROGRESS + f Ljava/lang/ThreadLocal; field_12205 ENTITY_MOVEMENT_DIRECTION + f Lnet/minecraft/class_2680; field_57804 DEFAULT_PUSHED_BLOCK_STATE + f F field_12207 progress + f Z field_57806 DEFAULT_EXTENDING + f Z field_12203 extending + f Lnet/minecraft/class_2680; field_12204 pushedBlockState + f J field_12208 savedWorldTime + f Lnet/minecraft/class_2350; field_12201 facing + f F field_12206 lastProgress + f Z field_57807 DEFAULT_SOURCE + m (F)F method_11504 getAmountExtended + p 1 progress + m ()Lnet/minecraft/class_2680; method_11495 getPushedBlock + m ()Lnet/minecraft/class_2350; method_11498 getFacing + m (F)F method_11499 getProgress + p 1 tickProgress + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;FLnet/minecraft/class_2669;)V method_23674 moveEntitiesInHoneyBlock + p 1 pos + p 3 blockEntity + p 0 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;ZZ)V + p 4 facing + p 5 extending + p 2 state + p 3 pushedBlock + p 6 source + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;FLnet/minecraft/class_2669;)V method_11503 pushEntities + p 3 blockEntity + p 0 world + p 1 pos + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_1297;DLnet/minecraft/class_2350;)V method_23672 moveEntity + p 4 movementDirection + p 0 direction + p 1 entity + p 2 distance + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_238;Lnet/minecraft/class_2669;)Lnet/minecraft/class_238; method_11500 offsetHeadBox + p 0 pos + p 1 box + p 2 blockEntity + m ()V method_11513 finish + m ()Lnet/minecraft/class_2350; method_11506 getMovementDirection + m (Lnet/minecraft/class_238;Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;)Z method_23673 method_23673 + p 2 entity + m ()Lnet/minecraft/class_2680; method_11496 getHeadBlockState + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;Lnet/minecraft/class_2350;D)V method_11514 push + p 3 amount + p 1 entity + p 2 direction + p 0 pos + m ()J method_11508 getSavedWorldTime + m (F)F method_11511 getRenderOffsetY + p 1 tickProgress + m ()Z method_11501 isExtending + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2669;)V method_31707 tick + p 3 blockEntity + p 1 pos + p 2 state + p 0 world + m ()Z method_11515 isSource + m (F)F method_11507 getRenderOffsetZ + p 1 tickProgress + m (Lnet/minecraft/class_238;Lnet/minecraft/class_2350;Lnet/minecraft/class_238;)D method_11497 getIntersectionSize + m ()Z method_23364 isPushingHoneyBlock + m ()Lnet/minecraft/class_2350; method_61764 getDirection + m (Lnet/minecraft/class_238;Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;)Z method_23671 canMoveEntity + p 0 box + p 1 entity + p 2 pos + m (F)F method_11494 getRenderOffsetX + p 1 tickProgress + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265; method_11512 getCollisionShape + p 2 pos + p 1 world +c net/minecraft/class_2680 net/minecraft/block/BlockState + f Lcom/mojang/serialization/Codec; field_24734 CODEC +c net/minecraft/class_1353 net/minecraft/entity/ai/goal/FollowParentGoal + f I field_30211 MIN_DISTANCE + f I field_6454 delay + f I field_30210 VERTICAL_CHECK_RANGE + f D field_6453 speed + f Lnet/minecraft/class_1429; field_6452 parent + f I field_30209 HORIZONTAL_CHECK_RANGE + f Lnet/minecraft/class_1429; field_6455 animal + m (Lnet/minecraft/class_1429;D)V + p 2 speed + p 1 animal +c net/minecraft/class_1352 net/minecraft/entity/ai/goal/Goal + f Ljava/util/EnumSet; field_6451 controls + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_3218; method_64451 getServerWorld + p 0 entity + m ()Z method_38846 shouldRunEveryTick + c {@return if the goal should run every tick or not}\n\n

This returns {@code false} by default. If this returns false,\nthe goal will tick once after the entity is spawned, and will tick\nevery other tick.\n\n@see #getTickCount(int) + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_3218; method_64452 castToServerWorld + p 0 world + m ()Ljava/util/EnumSet; method_6271 getControls + m ()Z method_6264 canStart + m (Ljava/util/EnumSet;)V method_6265 setControls + p 1 controls + m ()Z method_6266 shouldContinue + m ()Z method_6267 canStop + m ()V method_6270 stop + m ()V method_6268 tick + m ()V method_6269 start + m (I)I method_38847 getTickCount + c {@return how many times a goal can tick in the given {@param ticks} at most} + p 1 ticks + m (I)I method_38848 toGoalTicks + p 0 serverTicks +c net/minecraft/class_1352$class_4134 net/minecraft/entity/ai/goal/Goal$Control + f Lnet/minecraft/class_1352$class_4134; field_18408 TARGET + f Lnet/minecraft/class_1352$class_4134; field_18407 JUMP + f Lnet/minecraft/class_1352$class_4134; field_18406 LOOK + f Lnet/minecraft/class_1352$class_4134; field_18405 MOVE +c net/minecraft/class_2688 net/minecraft/state/State + f Ljava/lang/String; field_31386 PROPERTIES + f Ljava/util/Map; field_24741 withMap + f Ljava/util/function/Function; field_24737 PROPERTY_MAP_PRINTER + f Ljava/lang/String; field_31385 NAME + f Ljava/lang/Object; field_24739 owner + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap; field_24738 propertyMap + f Lcom/mojang/serialization/MapCodec; field_24740 codec + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Ljava/util/Map; method_28499 toMapWith + p 2 value + p 1 property + m ()Ljava/util/Collection; method_28501 getProperties + m (Ljava/lang/Object;Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap;Lcom/mojang/serialization/MapCodec;)V + p 3 codec + p 2 propertyMap + p 1 owner + m (Ljava/util/Map;)V method_28496 createWithMap + p 1 states + m (Lnet/minecraft/class_2688;)Ljava/lang/Object; method_28492 method_28492 + p 0 state + m (Lnet/minecraft/class_2769;)Ljava/lang/Comparable; method_11654 get + p 1 property + m (Ljava/util/function/Function;Ljava/lang/Object;)Lcom/mojang/serialization/MapCodec; method_28497 method_28497 + p 1 owner + m (Lnet/minecraft/class_2769;)Ljava/lang/Comparable; method_61768 getNullable + p 1 property + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; method_28494 createCodec + p 1 ownerToStateFunction + p 0 codec + m (Ljava/util/Map;Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Ljava/lang/Object; method_64217 method_64217 + p 3 value + m (Ljava/util/List;Ljava/lang/Object;)Ljava/lang/Object; method_28495 getNext + p 1 value + p 0 values + m (Lnet/minecraft/class_2769;)Z method_28498 contains + p 1 property + m ()Ljava/util/Map; method_11656 getEntries + m (Lnet/minecraft/class_2769;)Ljava/util/Optional; method_28500 getOrEmpty + p 1 property + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Ljava/lang/Object; method_11657 with + p 1 property + p 2 value + m (Lnet/minecraft/class_2688;Ljava/util/Optional;)Lnet/minecraft/class_2688; method_38860 method_38860 + p 1 state + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;Ljava/lang/Comparable;)Ljava/lang/Object; method_64216 with + p 1 property + p 3 oldValue + p 2 newValue + m (Lnet/minecraft/class_2769;)Ljava/lang/Object; method_28493 cycle + p 1 property + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Ljava/lang/Comparable; method_61767 get + p 2 fallback + p 1 property + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Ljava/lang/Object; method_47968 withIfExists + p 1 property + p 2 value +c net/minecraft/class_2688$1 net/minecraft/state/State$1 + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 entry + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Ljava/lang/String; method_11575 nameValue + p 1 property + p 2 value + m (Ljava/util/Map$Entry;)Ljava/lang/String; method_11576 apply +c net/minecraft/class_1350 net/minecraft/entity/ai/goal/FollowOwnerGoal + f Lnet/minecraft/class_1309; field_6444 owner + f F field_6449 minDistance + f F field_6447 oldWaterPathfindingPenalty + f Lnet/minecraft/class_1408; field_6446 navigation + f I field_6443 updateCountdownTicks + f F field_6450 maxDistance + f D field_6442 speed + f Lnet/minecraft/class_1321; field_6448 tameable + m (Lnet/minecraft/class_1321;DFF)V + p 4 minDistance + p 1 tameable + p 2 speed + p 5 maxDistance +c net/minecraft/class_1357 net/minecraft/entity/ai/goal/DolphinJumpGoal + f [I field_6474 OFFSET_MULTIPLIERS + f Lnet/minecraft/class_1433; field_6471 dolphin + f I field_6472 chance + f Z field_6473 inWater + m (Lnet/minecraft/class_2338;III)Z method_6284 isWater + p 3 offsetZ + p 2 offsetX + p 4 multiplier + p 1 pos + m (Lnet/minecraft/class_2338;III)Z method_6282 isAirAbove + p 4 multiplier + p 1 pos + p 3 offsetZ + p 2 offsetX + m (Lnet/minecraft/class_1433;I)V + p 2 chance + p 1 dolphin +c net/minecraft/class_2682 net/minecraft/world/EmptyBlockView + f Lnet/minecraft/class_2682; field_12294 INSTANCE +c net/minecraft/class_2683 net/minecraft/network/packet/s2c/play/MapUpdateS2CPacket + f Ljava/util/Optional; comp_2274 updateData + f Lnet/minecraft/class_9139; field_47938 CODEC + f Lnet/minecraft/class_9209; comp_2270 mapId + f Z comp_2272 locked + f B comp_2271 scale + f Ljava/util/Optional; comp_2273 decorations + m (Lnet/minecraft/class_9209;BZLjava/util/Collection;Lnet/minecraft/class_22$class_5637;)V + p 2 scale + p 1 mapId + p 4 decorations + p 3 locked + p 5 updateData + m (Lnet/minecraft/class_22;Lnet/minecraft/class_22$class_5637;)V method_56618 method_56618 + p 1 updateData + m (Lnet/minecraft/class_2602;)V method_11643 apply + m ()Ljava/util/Optional; comp_2274 updateData + m (Lnet/minecraft/class_22;)V method_11642 apply + p 1 mapState + m ()B comp_2271 scale + m ()Z comp_2272 locked + m ()Ljava/util/Optional; comp_2273 decorations + m ()Lnet/minecraft/class_9209; comp_2270 mapId + m (Lnet/minecraft/class_9209;BZLjava/util/Optional;Ljava/util/Optional;)V + p 1 mapId + p 2 scale + p 3 locked + p 4 decorations + p 5 updateData +c net/minecraft/class_1355 net/minecraft/entity/ai/goal/GoalSelector + c Manages a set of goals, which are competing for certain controls on the mob.\nMultiple goals can run at the same time, so long as they are all using different controls.\n\n

A running goal will always be replaced with a goal with a lower priority, if\nsuch a goal exists, it's competing for the same control and its\n{@link Goal#canStart() canStart()} method returns true. (Note that some goals randomize\nthis method.)\n\n

If two goals have the same priority and are competing for the same control, then one\ngoal cannot replace the other if it's running. The goal selector tries to run goals in the order\nthey were added. + f Lnet/minecraft/class_4135; field_18410 REPLACEABLE_GOAL + f Ljava/util/EnumSet; field_6462 disabledControls + f Ljava/util/Set; field_6461 goals + f Ljava/util/Map; field_18411 goalsByControl + m (Lnet/minecraft/class_4135;Ljava/util/EnumSet;)Z method_38063 usesAny + p 1 controls + p 0 goal + m (Lnet/minecraft/class_1352$class_4134;Z)V method_6276 setControlEnabled + p 1 control + p 2 enabled + m (Lnet/minecraft/class_4135;Ljava/util/Map;)Z method_38064 canReplaceAll + p 0 goal + p 1 goalsByControl + m (Ljava/util/function/Predicate;)V method_35113 clear + p 1 predicate + m (Lnet/minecraft/class_1352$class_4134;)V method_6273 enableControl + p 1 control + m ()V method_6275 tick + m (Lnet/minecraft/class_1352$class_4134;)V method_6274 disableControl + p 1 control + m (ILnet/minecraft/class_1352;)V method_6277 add + c Adds a goal with a certain priority. Goals with lower priorities will replace running goals\nwith a higher priority. + p 1 priority + p 2 goal + m ()Ljava/util/Set; method_35115 getGoals + m (Z)V method_38849 tickGoals + p 1 tickAll + m (Lnet/minecraft/class_1352;)V method_6280 remove + p 1 goal + m (Ljava/util/function/Predicate;Lnet/minecraft/class_4135;)Z method_47828 method_47828 + p 1 goal +c net/minecraft/class_2684 net/minecraft/network/packet/s2c/play/EntityS2CPacket + f Z field_12306 onGround + f Z field_20849 positionChanged + f Z field_12305 rotate + f B field_12312 yaw + f B field_12311 pitch + f S field_12309 deltaX + f I field_12310 id + f S field_12308 deltaY + f S field_12307 deltaZ + m ()F method_11650 getPitch + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_1297; method_11645 getEntity + p 1 world + m (Lnet/minecraft/class_2602;)V method_11651 apply + m (ISSSBBZZZ)V + p 6 pitch + p 5 yaw + p 4 deltaZ + p 3 deltaY + p 2 deltaX + p 1 entityId + p 9 positionChanged + p 8 rotate + p 7 onGround + m ()Z method_22826 isPositionChanged + m ()F method_11649 getYaw + m ()Z method_11652 hasRotation + m ()Z method_11653 isOnGround + m ()S method_36150 getDeltaX + m ()S method_36151 getDeltaY + m ()S method_36152 getDeltaZ +c net/minecraft/class_2684$class_2687 net/minecraft/network/packet/s2c/play/EntityS2CPacket$Rotate + f Lnet/minecraft/class_9139; field_47942 CODEC + m (Lnet/minecraft/class_2540;)V method_55892 write + p 1 buf + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2684$class_2687; method_34140 read + p 0 buf + m (IBBZ)V + p 1 entityId + p 2 yaw + p 3 pitch + p 4 onGround +c net/minecraft/class_2684$class_2686 net/minecraft/network/packet/s2c/play/EntityS2CPacket$RotateAndMoveRelative + f Lnet/minecraft/class_9139; field_47941 CODEC + m (ISSSBBZ)V + p 1 entityId + p 4 deltaZ + p 5 yaw + p 2 deltaX + p 3 deltaY + p 6 pitch + p 7 onGround + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2684$class_2686; method_34139 read + p 0 buf + m (Lnet/minecraft/class_2540;)V method_55891 write + p 1 buf +c net/minecraft/class_2684$class_2685 net/minecraft/network/packet/s2c/play/EntityS2CPacket$MoveRelative + f Lnet/minecraft/class_9139; field_47940 CODEC + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2684$class_2685; method_34138 read + p 0 buf + m (ISSSZ)V + p 5 onGround + p 2 deltaX + p 1 entityId + p 4 deltaZ + p 3 deltaY + m (Lnet/minecraft/class_2540;)V method_55890 write + p 1 buf +c net/minecraft/class_1349 net/minecraft/entity/ai/goal/FollowGroupLeaderGoal + f Lnet/minecraft/class_1425; field_6441 fish + f I field_6439 checkSurroundingDelay + f I field_30204 MIN_SEARCH_DELAY + f I field_6440 moveDelay + m (Lnet/minecraft/class_1425;)Z method_6260 method_6260 + p 0 fish + m (Lnet/minecraft/class_1425;)I method_6261 getSurroundingSearchDelay + p 1 fish + m (Lnet/minecraft/class_1425;)Z method_6262 method_6262 + p 0 fish + m (Lnet/minecraft/class_1425;)V + p 1 fish +c net/minecraft/class_1348 net/minecraft/entity/ai/goal/FollowMobGoal + f D field_6430 speed + f Lnet/minecraft/class_1308; field_6432 mob + f F field_6435 maxDistance + f Lnet/minecraft/class_1408; field_6434 navigation + f Lnet/minecraft/class_1308; field_6433 target + f F field_6438 minDistance + f F field_6437 oldWaterPathFindingPenalty + f I field_6431 updateCountdownTicks + f Ljava/util/function/Predicate; field_6436 targetPredicate + m (Lnet/minecraft/class_1308;DFF)V + p 2 speed + p 1 mob + p 4 minDistance + p 5 maxDistance + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1308;)Z method_6259 method_6259 + p 1 target +c net/minecraft/class_1347 net/minecraft/entity/ai/goal/SwimGoal + f Lnet/minecraft/class_1308; field_6429 mob + m (Lnet/minecraft/class_1308;)V + p 1 mob +c net/minecraft/class_2678 net/minecraft/network/packet/s2c/play/GameJoinS2CPacket + f I comp_98 viewDistance + f I comp_88 playerEntityId + f I comp_97 maxPlayers + f Lnet/minecraft/class_9139; field_47937 CODEC + f Z comp_99 reducedDebugInfo + f Z comp_89 hardcore + f Z comp_100 showDeathScreen + f Ljava/util/Set; comp_92 dimensionIds + f Lnet/minecraft/class_8589; comp_1727 commonPlayerSpawnInfo + f Z comp_2200 enforcesSecureChat + f I comp_169 simulationDistance + f Z comp_1964 doLimitedCrafting + m ()I comp_98 viewDistance + m (Lnet/minecraft/class_9129;)V + p 1 buf + m ()I comp_88 playerEntityId + m ()I comp_97 maxPlayers + m (Lnet/minecraft/class_2602;)V method_11567 apply + m (Lnet/minecraft/class_9129;)V method_55887 write + p 1 buf + m ()Z comp_99 reducedDebugInfo + m ()Z comp_89 hardcore + m ()Z comp_100 showDeathScreen + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_5321; method_34135 method_34135 + p 0 b + m (IZLjava/util/Set;IIIZZZLnet/minecraft/class_8589;Z)V + p 1 playerEntityId + p 2 hardcore + p 3 dimensionIds + p 4 maxPlayers + p 5 viewDistance + p 6 simulationDistance + p 7 reducedDebugInfo + p 8 showDeathScreen + p 9 doLimitedCrafting + p 10 commonPlayerSpawnInfo + p 11 enforcesSecureChat + m ()Ljava/util/Set; comp_92 dimensionIds + m ()Z comp_2200 enforcesSecureChat + m ()I comp_169 simulationDistance + m ()Z comp_1964 doLimitedCrafting + m ()Lnet/minecraft/class_8589; comp_1727 commonPlayerSpawnInfo +c net/minecraft/class_901 net/minecraft/client/render/entity/FallingBlockEntityRenderer + m (Lnet/minecraft/class_1540;Lnet/minecraft/class_4604;DDD)Z method_62436 shouldRender + m (Lnet/minecraft/class_10023;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3965 render + m (Lnet/minecraft/class_1540;Lnet/minecraft/class_10023;F)V method_62437 updateRenderState + m ()Lnet/minecraft/class_10023; method_62435 createRenderState +c net/minecraft/class_900 net/minecraft/client/render/entity/EvokerFangsEntityRenderer + f Lnet/minecraft/class_2960; field_4699 TEXTURE + f Lnet/minecraft/class_568; field_4700 model + m (Lnet/minecraft/class_10020;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3962 render + m (Lnet/minecraft/class_1669;Lnet/minecraft/class_10020;F)V method_62429 updateRenderState + m ()Lnet/minecraft/class_10020; method_62428 createRenderState +c com/mojang/blaze3d/shaders/ShaderType com/mojang/blaze3d/shaders/ShaderType + m (Lnet/minecraft/class_2960;)Lcom/mojang/blaze3d/shaders/ShaderType; byLocation byLocation + p 0 id + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V + p 4 extension + p 3 name +c net/minecraft/class_3983 net/minecraft/datafixer/fix/EntityRavagerRenameFix + f Ljava/util/Map; field_17712 ITEMS +c net/minecraft/class_1320 net/minecraft/entity/attribute/EntityAttribute + c Represents a type of double-valued attribute that a living entity may have.\n\n

An attribute is a tracked double value stored on an entity.\nAn attribute has a default value on which attribute modifiers operate. + f Z field_23698 tracked + f Lnet/minecraft/class_1320$class_9764; field_51884 category + f Lcom/mojang/serialization/Codec; field_51575 CODEC + f D field_23697 fallback + f Ljava/lang/String; field_23699 translationKey + f Lnet/minecraft/class_9139; field_51940 PACKET_CODEC + m (Z)Lnet/minecraft/class_1320; method_26829 setTracked + c Sets all instances of this attribute to synchronize their values to clients. + p 1 tracked + m ()D method_6169 getDefaultValue + m (Ljava/lang/String;D)V + p 2 fallback + p 1 translationKey + m (D)D method_6165 clamp + p 1 value + m ()Z method_6168 isTracked + c Checks if instances of this attribute should synchronize values to clients. + m ()Ljava/lang/String; method_26830 getTranslationKey + m (Z)Lnet/minecraft/class_124; method_60494 getFormatting + p 1 addition + m (Lnet/minecraft/class_1320$class_9764;)Lnet/minecraft/class_1320; method_60493 setCategory + p 1 category +c net/minecraft/class_1320$class_9764 net/minecraft/entity/attribute/EntityAttribute$Category + f Lnet/minecraft/class_1320$class_9764; field_51886 NEUTRAL + f Lnet/minecraft/class_1320$class_9764; field_51887 NEGATIVE + f Lnet/minecraft/class_1320$class_9764; field_51885 POSITIVE + m (Z)Lnet/minecraft/class_124; method_60496 getFormatting + p 1 addition +c net/minecraft/class_2653 net/minecraft/network/packet/s2c/play/ScreenHandlerSlotUpdateS2CPacket + f Lnet/minecraft/class_9139; field_47918 CODEC + f I field_12151 slot + f Lnet/minecraft/class_1799; field_12153 stack + f I field_12152 syncId + f I field_34036 revision + m ()I method_37439 getRevision + m (IIILnet/minecraft/class_1799;)V + p 1 syncId + p 2 revision + p 3 slot + p 4 stack + m (Lnet/minecraft/class_9129;)V method_55871 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11451 apply + m ()I method_11452 getSyncId + m ()Lnet/minecraft/class_1799; method_11449 getStack + m (Lnet/minecraft/class_9129;)V + p 1 buf + m ()I method_11450 getSlot +c net/minecraft/class_3984 net/minecraft/datafixer/schema/Schema1928 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_17998 targetEntityItems + p 2 entityId + p 1 map + p 0 schema +c net/minecraft/class_3985 net/minecraft/datafixer/schema/Schema1929 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_18000 method_18000 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_18001 method_18001 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_3986 net/minecraft/entity/passive/TraderLlamaEntity + f I field_17716 despawnDelay + f I field_57638 DEFAULT_DESPAWN_DELAY + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_63011 method_63011 + p 0 entity + m (I)V method_35189 setDespawnDelay + p 1 despawnDelay + m ()V method_20501 tryDespawn + m ()Z method_20504 leashedByPlayer + m ()Z method_20503 heldByTrader + m ()Z method_20502 canDespawn +c net/minecraft/class_3986$class_3987 net/minecraft/entity/passive/TraderLlamaEntity$DefendTraderGoal + f Lnet/minecraft/class_1309; field_17719 offender + f I field_17720 traderLastAttackedTime + f Lnet/minecraft/class_1501; field_17718 llama + m (Lnet/minecraft/class_1501;)V + p 1 llama +c net/minecraft/class_1324 net/minecraft/entity/attribute/EntityAttributeInstance + c A double-valued attribute. + f Ljava/util/Map; field_23702 idToModifiers + f Z field_23705 dirty + f D field_23704 baseValue + f D field_23706 value + f Ljava/util/Map; field_23701 operationToModifiers + f Ljava/util/Map; field_23703 persistentModifiers + f Ljava/util/function/Consumer; field_23707 updateCallback + f Lnet/minecraft/class_6880; field_23700 type + m (Lnet/minecraft/class_1322$class_1323;)Ljava/util/Map; method_6193 getModifiers + p 1 operation + m (Lnet/minecraft/class_1322;)V method_55696 updateModifier + p 1 modifier + m (Lnet/minecraft/class_2960;)Z method_6200 removeModifier + p 1 id + m (Lnet/minecraft/class_1322;)V method_61163 overwritePersistentModifier + p 1 modifier + m ()Lnet/minecraft/class_1324$class_11345; method_71379 pack + m (Lnet/minecraft/class_6880;Ljava/util/function/Consumer;)V + p 2 updateCallback + p 1 type + m (Lnet/minecraft/class_1322$class_1323;)Ljava/util/Collection; method_26834 getModifiersByOperation + p 1 operation + m (Lnet/minecraft/class_1322$class_1323;)Ljava/util/Map; method_26836 method_26836 + p 0 operationx + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1322; method_6199 getModifier + p 1 id + m (Lnet/minecraft/class_1324;)V method_26831 setFrom + c Copies the values of an attribute to this attribute.\n\n

Temporary modifiers are copied when using the operation. + p 1 other + m ()D method_6194 getValue + m (D)V method_6192 setBaseValue + p 1 baseValue + m ()D method_6201 getBaseValue + c Gets the base value of this attribute instance.\nThis is the value before any attribute modifiers are applied. + m (Lnet/minecraft/class_1324$class_11345;)V method_71378 unpack + p 1 packed + m (Lnet/minecraft/class_2960;)Z method_6196 hasModifier + p 1 id + m (Ljava/util/Collection;)V method_61434 addPersistentModifiers + p 1 modifiers + m ()D method_26840 computeValue + c Computes this attribute's value, taking modifiers into account.\n\n

Attribute modifiers are applied in order by operation:\n

  • {@link net.minecraft.entity.attribute.EntityAttributeModifier.Operation#ADD_VALUE ADD_VALUE} // Adds the value of the modifier to the attribute's base value.
  • \n
  • {@link net.minecraft.entity.attribute.EntityAttributeModifier.Operation#ADD_MULTIPLIED_BASE ADD_MULTIPLIED_BASE} // Multiplies the value of the modifier to the attributes base value, and then adds it to the total value.
  • \n
  • {@link net.minecraft.entity.attribute.EntityAttributeModifier.Operation#ADD_MULTIPLIED_TOTAL ADD_MULTIPLIED_TOTAL} // Adds 1 to the value of the attribute modifier. Then multiplies the attribute's value by the total value of the attribute after addition and multiplication of the base value occur.
  • \n
+ m (Lnet/minecraft/class_1322$class_1323;Ljava/util/Map;)V method_26832 method_26832 + p 2 modifiers + p 1 operation + m ()Ljava/util/Set; method_6195 getModifiers + m ()Lnet/minecraft/class_6880; method_6198 getAttribute + m (Lnet/minecraft/class_1322;)V method_26837 addPersistentModifier + p 1 modifier + m ()Ljava/util/Set; method_61435 getPersistentModifiers + m (Lnet/minecraft/class_1322;)V method_6202 removeModifier + p 1 modifier + m ()V method_6203 clearModifiers + m (Lnet/minecraft/class_1322;)V method_26835 addTemporaryModifier + c Adds a temporary attribute modifier.\nThe modifier will not be serialized. + p 1 modifier + m (Lnet/minecraft/class_1322;)V method_6197 addModifier + p 1 modifier + m ()V method_26838 onUpdate +c net/minecraft/class_1324$class_11345 net/minecraft/entity/attribute/EntityAttributeInstance$Packed + f Lcom/mojang/serialization/Codec; field_60358 LIST_CODEC + f Lcom/mojang/serialization/Codec; field_60357 CODEC + f Lnet/minecraft/class_6880; comp_4214 attribute + f D comp_4215 baseValue + f Ljava/util/List; comp_4216 modifiers + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71380 method_71380 + p 0 instance + m ()Ljava/util/List; comp_4216 modifiers + m ()D comp_4215 baseValue + m ()Lnet/minecraft/class_6880; comp_4214 attribute + m (Lnet/minecraft/class_6880;DLjava/util/List;)V + p 1 attribute + p 2 baseValue + p 4 modifiers +c net/minecraft/class_3980 net/minecraft/util/CuboidBlockIterator + f I field_18233 x + f I field_18234 y + f I field_18235 z + f I field_17683 startX + f I field_23112 totalSize + f I field_17684 startY + f I field_23113 blocksIterated + f I field_17685 startZ + f I field_17686 sizeX + f I field_17687 sizeY + f I field_17688 sizeZ + m (IIIIII)V + p 2 startY + p 1 startX + p 4 endX + p 3 startZ + p 6 endZ + p 5 endY + m ()Z method_17963 step + m ()I method_20789 getEdgeCoordinatesCount + m ()I method_18671 getX + m ()I method_18673 getZ + m ()I method_18672 getY +c net/minecraft/class_1322 net/minecraft/entity/attribute/EntityAttributeModifier + f Lnet/minecraft/class_9139; field_49233 PACKET_CODEC + f D comp_2449 value + f Lcom/mojang/serialization/Codec; field_46247 CODEC + f Lcom/mojang/serialization/MapCodec; field_49232 MAP_CODEC + f Lnet/minecraft/class_2960; comp_2447 id + f Lnet/minecraft/class_1322$class_1323; comp_2450 operation + m ()D comp_2449 value + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_2960;)Z method_60718 idMatches + p 1 id + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60719 method_60719 + p 0 instance + m ()Lnet/minecraft/class_1322$class_1323; comp_2450 operation + m ()Lnet/minecraft/class_2960; comp_2447 id + m (Lnet/minecraft/class_2960;DLnet/minecraft/class_1322$class_1323;)V + p 1 id + p 2 value + p 4 operation +c net/minecraft/class_1322$class_1323 net/minecraft/entity/attribute/EntityAttributeModifier$Operation + c Represents an operation which can be applied to an attribute modifier. + f Lnet/minecraft/class_1322$class_1323; field_6331 ADD_MULTIPLIED_TOTAL + c Multiplies the total value of the attribute.\n\n

The total value is equal to the sum of all additions and base multiplications applied by an attribute modifier. + f Lnet/minecraft/class_1322$class_1323; field_6330 ADD_MULTIPLIED_BASE + c Multiplies the base value of the attribute.\n\n

Is applied after addition. + f Ljava/lang/String; field_45743 name + f Ljava/util/function/IntFunction; field_48325 ID_TO_VALUE + f I field_6329 id + f Lnet/minecraft/class_1322$class_1323; field_6328 ADD_VALUE + c Adds to the base value of an attribute. + f Lnet/minecraft/class_9139; field_48326 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_45742 CODEC + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 name + p 4 id + m ()I method_56082 getId +c net/minecraft/class_3981 net/minecraft/data/recipe/StonecuttingRecipeJsonBuilder + f Lnet/minecraft/class_1856; field_17691 input + f I field_17692 count + f Lnet/minecraft/class_1792; field_17690 output + f Ljava/lang/String; field_17694 group + f Lnet/minecraft/class_7800; field_40650 category + f Lnet/minecraft/class_3972$class_3974; field_47505 recipeFactory + f Ljava/util/Map; field_46151 criteria + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_3972$class_3974;Lnet/minecraft/class_1856;Lnet/minecraft/class_1935;I)V + p 3 input + p 4 output + p 1 category + p 2 recipeFactory + p 5 count + m (Ljava/lang/String;Lnet/minecraft/class_175;)Lnet/minecraft/class_3981; method_17970 criterion + m (Lnet/minecraft/class_5321;)V method_17973 validate + p 1 recipeKey + m (Lnet/minecraft/class_1856;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;I)Lnet/minecraft/class_3981; method_17969 createStonecutting + p 0 input + p 2 output + p 1 category + p 3 count + m (Ljava/lang/String;)Lnet/minecraft/class_3981; method_35919 group + m (Lnet/minecraft/class_1856;Lnet/minecraft/class_7800;Lnet/minecraft/class_1935;)Lnet/minecraft/class_3981; method_17968 createStonecutting + p 0 input + p 2 output + p 1 category +c net/minecraft/class_2651 net/minecraft/network/packet/s2c/play/ScreenHandlerPropertyUpdateS2CPacket + f I field_12149 propertyId + f I field_12148 value + f Lnet/minecraft/class_9139; field_47917 CODEC + f I field_12150 syncId + m ()I method_11446 getValue + m ()I method_11448 getSyncId + m ()I method_11445 getPropertyId + m (Lnet/minecraft/class_2602;)V method_11447 apply + m (III)V + p 2 propertyId + p 3 value + p 1 syncId + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_55870 write + p 1 buf +c net/minecraft/class_1321 net/minecraft/entity/passive/TameableEntity + f Z field_57595 DEFAULT_SITTING + f Lnet/minecraft/class_2940; field_6320 OWNER_UUID + f Lnet/minecraft/class_2940; field_6322 TAMEABLE_FLAGS + c The tracked flags of tameable entities. Has the {@code 1} flag for {@linkplain\n#isInSittingPose() sitting pose} and the {@code 4} flag for {@linkplain\n#isTamed() tamed}. + f Z field_21974 sitting + m (Z)V method_6180 showEmoteParticle + p 1 positive + m (Lnet/minecraft/class_2338;)Z method_60717 canTeleportTo + p 1 pos + m (Lnet/minecraft/class_1309;)V method_6174 setOwner + p 1 owner + m ()Z method_6172 isInSittingPose + m (Lnet/minecraft/class_1657;)V method_6170 setTamedBy + p 1 player + m (Z)V method_24346 setSitting + p 1 sitting + m ()Z method_60716 canTeleportOntoLeaves + m ()Z method_60714 shouldTryTeleportToOwner + m (ZZ)V method_6173 setTamed + p 2 updateAttributes + p 1 tamed + m (Z)V method_6179 setInSittingPose + p 1 inSittingPose + m ()V method_56996 updateAttributesForTamed + m (Lnet/minecraft/class_2338;)V method_60712 tryTeleportNear + p 1 pos + m ()Z method_24345 isSitting + m (Lnet/minecraft/class_1309;)Z method_6171 isOwner + p 1 entity + m ()Z method_6181 isTamed + m ()V method_60713 tryTeleportToOwner + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_6178 canAttackWithOwner + p 1 target + p 2 owner + m ()Z method_60715 cannotFollowOwner + m (Lnet/minecraft/class_10583;)V method_66288 setOwner + p 1 owner + m (III)Z method_60711 tryTeleportTo + p 1 x + p 2 y + p 3 z +c net/minecraft/class_1321$class_9788 net/minecraft/entity/passive/TameableEntity$TameableEscapeDangerGoal + m (Lnet/minecraft/class_1321;DLnet/minecraft/class_6862;)V + p 2 speed + p 4 dangerousDamageTypes + m (Lnet/minecraft/class_1321;D)V + p 2 speed +c net/minecraft/class_2649 net/minecraft/network/packet/s2c/play/InventoryS2CPacket + c Represents the contents of a block or entity inventory being synchronized\nfrom the server to the client. + f Lnet/minecraft/class_9139; field_47916 CODEC + f Lnet/minecraft/class_1799; comp_3840 cursorStack + f I comp_3837 syncId + c The {@link net.minecraft.screen.ScreenHandler#syncId} of a screen handler. + f I comp_3838 revision + f Ljava/util/List; comp_3839 contents + m (Lnet/minecraft/class_2602;)V method_11439 apply + m ()Lnet/minecraft/class_1799; comp_3840 cursorStack + m ()I comp_3837 syncId + m ()I comp_3838 revision + m ()Ljava/util/List; comp_3839 contents + m (IILjava/util/List;Lnet/minecraft/class_1799;)V + p 1 syncId + p 2 revision + p 3 contents + p 4 cursorStack +c net/minecraft/class_1317 net/minecraft/entity/SpawnRestriction + f Ljava/util/Map; field_6313 RESTRICTIONS + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_2902$class_2903; method_6160 getHeightmapType + p 0 type + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_56558 isSpawnPosAllowed + p 0 type + p 1 world + p 2 pos + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_5425;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20638 canSpawn + p 0 type + p 2 spawnReason + p 1 world + p 4 random + p 3 pos + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_9168;Lnet/minecraft/class_2902$class_2903;Lnet/minecraft/class_1317$class_4306;)V method_20637 register + p 3 predicate + p 2 heightmapType + p 1 location + p 0 type + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_9168; method_6159 getLocation + p 0 type +c net/minecraft/class_1317$class_1318 net/minecraft/entity/SpawnRestriction$Entry + f Lnet/minecraft/class_2902$class_2903; comp_2253 heightmapType + f Lnet/minecraft/class_9168; comp_2254 location + f Lnet/minecraft/class_1317$class_4306; comp_2255 predicate + m (Lnet/minecraft/class_2902$class_2903;Lnet/minecraft/class_9168;Lnet/minecraft/class_1317$class_4306;)V + p 1 heightmapType + p 2 location + p 3 predicate + m ()Lnet/minecraft/class_2902$class_2903; comp_2253 heightmapType + m ()Lnet/minecraft/class_9168; comp_2254 location + m ()Lnet/minecraft/class_1317$class_4306; comp_2255 predicate +c net/minecraft/class_1317$class_4306 net/minecraft/entity/SpawnRestriction$SpawnPredicate + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_5425;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z test test + p 2 world + p 3 spawnReason + p 4 pos + p 5 random + p 1 type +c net/minecraft/class_1316 net/minecraft/entity/JumpingMount + m (I)V method_6154 setJumpStrength + p 1 strength + m ()I method_45327 getJumpCooldown + m ()V method_6156 stopJumping + m (I)F method_75133 clampJumpStrength + p 1 strength + m ()Z method_6153 canJump + m (I)V method_6155 startJumping + p 1 height +c net/minecraft/class_1315 net/minecraft/entity/EntityData +c net/minecraft/class_1314 net/minecraft/entity/mob/PathAwareEntity + f F field_35670 DEFAULT_PATHFINDING_FAVOR + m (Lnet/minecraft/class_2338;)F method_6149 getPathfindingFavor + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_4538;)F method_6144 getPathfindingFavor + p 1 pos + p 2 world + m ()Z method_52546 isPanicking + m ()Z method_43689 shouldFollowLeash + m ()Z method_6150 isNavigating + m ()D method_6148 getFollowLeashSpeed +c net/minecraft/class_2645 net/minecraft/network/packet/s2c/play/CloseScreenS2CPacket + f Lnet/minecraft/class_9139; field_47915 CODEC + f I field_12137 syncId + m (Lnet/minecraft/class_2540;)V method_55868 write + p 1 buf + m (I)V + p 1 syncId + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11427 apply + m ()I method_36148 getSyncId +c net/minecraft/class_3977 net/minecraft/world/storage/VersionedChunkStorage + f Lnet/minecraft/class_4284; field_63960 dataFixTypes + f Lnet/minecraft/class_4698; field_21494 worker + f Lcom/mojang/datafixers/DataFixer; field_17655 dataFixer + f Ljava/util/function/Supplier; field_63961 updaterFactory + m (Lnet/minecraft/class_1923;)Ljava/util/concurrent/CompletableFuture; method_23696 getNbt + p 1 chunkPos + m (Lnet/minecraft/class_9240;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;ZLnet/minecraft/class_4284;)V + p 4 dsync + p 3 dataFixer + p 2 directory + p 1 storageKey + p 5 dataFixTypes + m (Lnet/minecraft/class_1923;Ljava/util/function/Supplier;)Ljava/util/concurrent/CompletableFuture; method_56565 set + p 1 chunkPos + p 2 chunkTagFactory + m (Z)Ljava/util/concurrent/CompletableFuture; method_75897 completeAll + p 1 sync + m (Lnet/minecraft/class_9240;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;ZLnet/minecraft/class_4284;Ljava/util/function/Supplier;)V + p 2 directory + p 1 storageKey + p 6 updaterFactory + p 5 dataFixTypes + p 4 dsync + p 3 dataFixer + m (Lnet/minecraft/class_2487;ILnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_17907 updateChunkNbt + p 3 context + p 2 fallbackVersion + p 1 chunkNbt + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_2487;)Ljava/util/concurrent/CompletableFuture; method_17910 setNbt + p 1 chunkPos + p 2 chunkTag + m (Lnet/minecraft/class_1923;)V method_75898 markChunkDone + p 1 chunkPos + m (Lnet/minecraft/class_2487;)V method_60626 removeContext + p 0 nbt + m (Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; method_75894 updateChunkNbt + p 2 fallbackVersion + p 1 chunkNbt + m (Lnet/minecraft/class_1923;I)Z method_42328 needsBlending + p 2 checkRadius + p 1 chunkPos + m ()Lnet/minecraft/class_6830; method_39800 getWorker + m (Lnet/minecraft/class_2487;I)Lnet/minecraft/class_2487; method_75895 updateChunkNbt + p 1 chunkNbt + p 2 fallbackVersion + m ()Lnet/minecraft/class_9240; method_60999 getStorageKey + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_2487;)V method_39799 saveContextToNbt + p 0 nbt + p 1 context +c net/minecraft/class_2646 net/minecraft/block/entity/TrappedChestBlockEntity +c net/minecraft/class_3978 net/minecraft/world/IdCountsState + f Lnet/minecraft/class_10741; field_56475 STATE_TYPE + f I field_56477 map + f Lcom/mojang/serialization/Codec; field_56474 CODEC + m (I)V + p 1 map + m (Lnet/minecraft/class_3978;)Ljava/lang/Integer; method_67423 method_67423 + p 0 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67422 method_67422 + p 0 instance + m ()Lnet/minecraft/class_9209; method_67421 createNextMapId +c net/minecraft/class_2648 net/minecraft/network/packet/s2c/play/OpenMountScreenS2CPacket + f I field_12143 slotColumnCount + f I field_12144 syncId + f I field_12142 mountId + f Lnet/minecraft/class_9139; field_47928 CODEC + m (Lnet/minecraft/class_2602;)V method_11437 apply + m (Lnet/minecraft/class_2540;)V method_55880 write + p 1 buf + m (III)V + p 1 syncId + p 3 mountId + p 2 slotColumnCount + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()I method_11432 getSyncId + m ()I method_11434 getSlotColumnCount + m ()I method_11433 getMountId +c net/minecraft/class_3979 net/minecraft/client/gui/screen/ingame/StonecutterScreen + f Lnet/minecraft/class_2960; field_45502 RECIPE_TEXTURE + f Lnet/minecraft/class_2960; field_45501 RECIPE_HIGHLIGHTED_TEXTURE + f Lnet/minecraft/class_2960; field_45504 SCROLLER_DISABLED_TEXTURE + f Lnet/minecraft/class_2960; field_45503 SCROLLER_TEXTURE + f Lnet/minecraft/class_2960; field_45505 RECIPE_SELECTED_TEXTURE + f I field_32380 RECIPE_LIST_OFFSET_Y + f Lnet/minecraft/class_2960; field_17673 TEXTURE + f F field_17674 scrollAmount + f I field_32373 SCROLLBAR_HEIGHT + f I field_17671 scrollOffset + f I field_32372 SCROLLBAR_WIDTH + f I field_32377 RECIPE_ENTRY_HEIGHT + f I field_32376 RECIPE_ENTRY_WIDTH + f I field_32375 RECIPE_LIST_ROWS + f Z field_17670 mouseClicked + f I field_32374 RECIPE_LIST_COLUMNS + f I field_32379 RECIPE_LIST_OFFSET_X + f I field_32378 SCROLLBAR_AREA_HEIGHT + f Z field_17672 canCraft + m ()V method_17955 onInventoryChange + m (Lnet/minecraft/class_332;IIIII)V method_17952 renderRecipeBackground + p 3 mouseY + p 2 mouseX + p 1 context + p 6 scrollOffset + p 5 y + p 4 x + m ()Z method_17954 shouldScroll + m (Lnet/minecraft/class_3971;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 2 inventory + p 1 handler + p 3 title + m (Lnet/minecraft/class_332;III)V method_17951 renderRecipeIcons + p 1 context + p 2 x + p 3 y + p 4 scrollOffset + m ()I method_17953 getMaxScroll +c net/minecraft/class_912 net/minecraft/client/render/entity/HuskEntityRenderer + f Lnet/minecraft/class_2960; field_4716 TEXTURE + m (Lnet/minecraft/class_10086;)Lnet/minecraft/class_2960; method_4163 getTexture +c net/minecraft/class_911 net/minecraft/client/render/entity/RavagerEntityRenderer + f Lnet/minecraft/class_2960; field_4715 TEXTURE + m ()Lnet/minecraft/class_10060; method_62518 createRenderState + m (Lnet/minecraft/class_1584;Lnet/minecraft/class_10060;F)V method_62517 updateRenderState + m (Lnet/minecraft/class_10060;)Lnet/minecraft/class_2960; method_3984 getTexture +c net/minecraft/class_910 net/minecraft/client/render/entity/HorseEntityRenderer + f Ljava/util/Map; field_4714 TEXTURES + m (Lnet/minecraft/class_10033;)Lnet/minecraft/class_2960; method_3983 getTexture + m ()Lnet/minecraft/class_10033; method_62460 createRenderState + m (Lnet/minecraft/class_1498;Lnet/minecraft/class_10033;F)V method_62459 updateRenderState + m (Lnet/minecraft/class_10033;)Lnet/minecraft/class_1799; method_66851 method_66851 + p 0 state + m (Lnet/minecraft/class_10033;)Lnet/minecraft/class_1799; method_66850 method_66850 + p 0 state +c net/minecraft/class_2663 net/minecraft/network/packet/s2c/play/EntityStatusS2CPacket + f B field_12174 status + f I field_12175 entityId + f Lnet/minecraft/class_9139; field_47924 CODEC + m (Lnet/minecraft/class_2540;)V method_55876 write + p 1 buf + m (Lnet/minecraft/class_1297;B)V + p 2 status + p 1 entity + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_1297; method_11469 getEntity + p 1 world + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()B method_11470 getStatus + m (Lnet/minecraft/class_2602;)V method_11471 apply +c net/minecraft/class_1331 net/minecraft/entity/ai/control/FlightMoveControl + f Z field_20350 noGravity + f I field_20349 maxPitchChange + m (Lnet/minecraft/class_1308;IZ)V + p 1 entity + p 2 maxPitchChange + p 3 noGravity +c net/minecraft/class_2664 net/minecraft/network/packet/s2c/play/ExplosionS2CPacket + c Sent when an explosion occurs in the world.\n\n

The client will update {@linkplain\nnet.minecraft.client.MinecraftClient#player the player}'s velocity as\nwell as performing an explosion.\n\n@see net.minecraft.network.packet.s2c.play.EntityVelocityUpdateS2CPacket + f Lnet/minecraft/class_9139; field_47925 CODEC + f Lnet/minecraft/class_6012; comp_4596 blockParticles + f Lnet/minecraft/class_243; comp_2883 center + f Ljava/util/Optional; comp_2884 playerKnockback + f Lnet/minecraft/class_2394; comp_2885 explosionParticle + f I comp_4595 blockCount + f F comp_4594 radius + f Lnet/minecraft/class_6880; comp_2886 explosionSound + m (Lnet/minecraft/class_2602;)V method_11480 apply + m ()Ljava/util/Optional; comp_2884 playerKnockback + m ()Lnet/minecraft/class_6880; comp_2886 explosionSound + m ()I comp_4595 blockCount + m ()Lnet/minecraft/class_2394; comp_2885 explosionParticle + m ()F comp_4594 radius + m ()Lnet/minecraft/class_243; comp_2883 center + m ()Lnet/minecraft/class_6012; comp_4596 blockParticles + m (Lnet/minecraft/class_243;FILjava/util/Optional;Lnet/minecraft/class_2394;Lnet/minecraft/class_6880;Lnet/minecraft/class_6012;)V + p 1 center + p 2 radius + p 3 blockCount + p 4 playerKnockback + p 5 explosionParticle + p 6 explosionSound + p 7 blockParticles +c net/minecraft/class_1330 net/minecraft/entity/ai/control/BodyControl + c The body control ensures a mob's head and body yaws are kept up with each other. + f I field_6355 bodyAdjustTicks + f I field_30194 BODY_KEEP_UP_THRESHOLD + f I field_30195 ROTATE_BODY_START_TICK + f I field_30196 ROTATION_INCREMENTS + f Lnet/minecraft/class_1308; field_6356 entity + f F field_6354 lastHeadYaw + m (Lnet/minecraft/class_1308;)V + p 1 entity + m ()V method_20245 slowlyAdjustBody + c Gradually adjusts the body yaw toward the head yaw, starting after 10 ticks of\n{@linkplain #bodyAdjustTicks wait} and finishes by the 20th tick. + m ()V method_6224 tick + c Ticks the body control.\n\n@implSpec If the entity {@linkplain #isMoving() has moved}, its body yaw\nadjusts to its head yaw. Otherwise, if the entity is {@linkplain\n#isIndependent() not steered}, its head yaw adjusts to its body yaw. + m ()V method_20244 keepUpHead + c Keeps up the head yaw by ensuring it is within the {@linkplain\nMobEntity#getMaxHeadRotation max head rotation} from the body yaw. + m ()V method_20243 keepUpBody + c Keeps up the body yaw by ensuring it is within the {@linkplain\nMobEntity#getMaxHeadRotation max head rotation} from the head yaw. + m ()Z method_20247 isMoving + m ()Z method_20246 isIndependent +c net/minecraft/class_2665 net/minecraft/block/PistonBlock + f Lcom/mojang/serialization/MapCodec; field_46530 CODEC + f Ljava/util/Map; field_55824 EXTENDED_SHAPES_BY_DIRECTION + f Lnet/minecraft/class_2746; field_12191 EXTENDED + f Z field_12187 sticky + m (ZLnet/minecraft/class_4970$class_2251;)V + p 1 sticky + p 2 settings + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Z)Z method_11481 move + p 2 pos + p 1 world + p 4 extend + p 3 dir + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54091 method_54091 + p 0 instance + m (Lnet/minecraft/class_8235;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_11482 shouldExtend + p 1 world + p 3 pistonFace + p 2 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_11483 tryMove + p 1 world + p 2 pos + p 3 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;ZLnet/minecraft/class_2350;)Z method_11484 isMovable + p 2 pos + p 3 direction + p 0 state + p 1 world + p 4 canBreak + p 5 pistonDir + m (Lnet/minecraft/class_2665;)Ljava/lang/Boolean; method_54092 method_54092 + p 0 block +c net/minecraft/class_2666 net/minecraft/network/packet/s2c/play/UnloadChunkS2CPacket + f Lnet/minecraft/class_9139; field_47926 CODEC + f Lnet/minecraft/class_1923; comp_1726 pos + m (Lnet/minecraft/class_2540;)V method_55878 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11486 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Lnet/minecraft/class_1923; comp_1726 pos + m (Lnet/minecraft/class_1923;)V + p 1 pos +c net/minecraft/class_3990 net/minecraft/world/WanderingTraderManager + f I field_17729 spawnDelay + f I field_17728 spawnTimer + f Lnet/minecraft/class_5268; field_24387 properties + f I field_30634 DEFAULT_SPAWN_CHANCE + f I field_17730 spawnChance + f I field_30631 DEFAULT_SPAWN_TIMER + f I field_30630 DEFAULT_SPAWN_DELAY + f I field_30633 MAX_SPAWN_CHANCE + f Lnet/minecraft/class_5819; field_17726 random + f I field_30632 MIN_SPAWN_CHANCE + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;I)Lnet/minecraft/class_2338; method_18017 getNearbySpawnPos + p 1 world + p 3 range + p 2 pos + m (Lnet/minecraft/class_3218;)Z method_18018 trySpawn + p 1 world + m (Lnet/minecraft/class_5268;)V + p 1 properties + m (Lnet/minecraft/class_6880;)Z method_44010 method_44010 + p 0 poiType + m (Lnet/minecraft/class_2338;)Z method_19631 method_19631 + p 0 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_3989;I)V method_18016 spawnLlama + p 3 range + p 2 wanderingTrader + p 1 world + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_23279 doesNotSuffocateAt + p 1 world + p 2 pos +c net/minecraft/class_1335 net/minecraft/entity/ai/control/MoveControl + f Lnet/minecraft/class_1335$class_1336; field_6374 state + f D field_6367 targetZ + f D field_6369 targetY + f Lnet/minecraft/class_1308; field_6371 entity + f F field_6368 forwardMovement + f D field_6370 targetX + f F field_6373 sidewaysMovement + f D field_6372 speed + f F field_30198 REACHED_DESTINATION_DISTANCE_SQUARED + m ()D method_6242 getSpeed + m ()V method_70683 setWaiting + m (FF)Z method_25946 isPosWalkable + p 1 x + p 2 z + m (DDDD)V method_6239 moveTo + p 7 speed + p 5 z + p 3 y + p 1 x + m ()Z method_6241 isMoving + m ()D method_6235 getTargetY + m ()D method_6237 getTargetZ + m ()D method_6236 getTargetX + m ()V method_6240 tick + m (FF)V method_6243 strafeTo + p 2 sideways + p 1 forward + m (FFF)F method_6238 wrapDegrees + p 1 from + p 3 max + p 2 to + m (Lnet/minecraft/class_1308;)V + p 1 entity +c net/minecraft/class_1335$class_1336 net/minecraft/entity/ai/control/MoveControl$State + f Lnet/minecraft/class_1335$class_1336; field_6377 WAIT + f Lnet/minecraft/class_1335$class_1336; field_6376 STRAFE + f Lnet/minecraft/class_1335$class_1336; field_6379 JUMPING + f Lnet/minecraft/class_1335$class_1336; field_6378 MOVE_TO +c net/minecraft/class_1334 net/minecraft/entity/ai/control/JumpControl + f Z field_6365 active + f Lnet/minecraft/class_1308; field_6366 entity + m ()V method_6234 tick + m ()V method_6233 setActive + m (Lnet/minecraft/class_1308;)V + p 1 entity +c net/minecraft/class_2661 net/minecraft/network/packet/s2c/common/DisconnectS2CPacket + f Lnet/minecraft/class_9139; field_48622 CODEC + f Lnet/minecraft/class_2561; comp_2325 reason + m (Lnet/minecraft/class_8705;)V method_11467 apply + m ()Lnet/minecraft/class_2561; comp_2325 reason + m (Lnet/minecraft/class_2561;)V + p 1 reason +c net/minecraft/class_1333 net/minecraft/entity/ai/control/LookControl + c The look control adjusts a mob's rotations to look at a target position. + f F field_6358 maxPitchChange + f I field_35103 lookAtTimer + f F field_6359 maxYawChange + f D field_6362 z + f D field_6363 y + f D field_6364 x + f Lnet/minecraft/class_1308; field_6361 entity + m (DDDFF)V method_6230 lookAt + p 1 x + p 3 y + p 5 z + p 7 maxYawChange + p 8 maxPitchChange + m (Lnet/minecraft/class_1297;)V method_35111 lookAt + p 1 entity + m (Lnet/minecraft/class_1297;FF)V method_6226 lookAt + p 1 entity + p 3 maxPitchChange + p 2 maxYawChange + m (DDD)V method_20248 lookAt + p 1 x + p 3 y + p 5 z + m ()D method_6225 getLookX + m ()D method_6228 getLookZ + m ()D method_6227 getLookY + m ()Z method_20433 shouldStayHorizontal + m ()V method_6231 tick + m ()Ljava/util/Optional; method_20250 getTargetPitch + m ()Ljava/util/Optional; method_20251 getTargetYaw + m (Ljava/lang/Float;)V method_37355 method_37355 + p 1 pitch + m (Lnet/minecraft/class_243;)V method_19615 lookAt + p 1 direction + m (Lnet/minecraft/class_1308;)V + p 1 entity + m (Ljava/lang/Float;)V method_37356 method_37356 + p 1 yaw + m ()Z method_38970 isLookingAtSpecificPosition + m ()V method_36980 clampHeadYaw +c net/minecraft/class_3992 net/minecraft/client/render/entity/WanderingTraderEntityRenderer + f Lnet/minecraft/class_2960; field_17739 TEXTURE + m (Lnet/minecraft/class_10080;)Lnet/minecraft/class_2960; method_18045 getTexture + m ()Lnet/minecraft/class_10080; method_62571 createRenderState + m (Lnet/minecraft/class_3989;Lnet/minecraft/class_10080;F)V method_62570 updateRenderState +c net/minecraft/class_1332 net/minecraft/entity/ai/control/YawAdjustingLookControl + c The yaw adjusting look control adjusts the entity's body yaw to be close to the\nhead yaw. In vanilla, this is used by entities that cannot rotate their heads\neasily, such as axolotl and dolphin. + f I field_6357 yawAdjustThreshold + f I field_30201 ADDED_YAW + f I field_30200 ADDED_PITCH + m (Lnet/minecraft/class_1308;I)V + p 1 entity + p 2 yawAdjustThreshold + m (Ljava/lang/Float;)V method_37358 method_37358 + p 1 yaw + m (Ljava/lang/Float;)V method_37357 method_37357 + p 1 pitch +c net/minecraft/class_3993 net/minecraft/entity/ai/goal/HoldInHandsGoal + f Lnet/minecraft/class_3414; field_18280 sound + f Ljava/util/function/Predicate; field_17757 condition + f Lnet/minecraft/class_1308; field_17755 actor + f Lnet/minecraft/class_1799; field_17756 item + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1799;Lnet/minecraft/class_3414;Ljava/util/function/Predicate;)V + p 1 actor + p 4 condition + p 3 sound + p 2 item +c net/minecraft/class_2656 net/minecraft/network/packet/s2c/play/CooldownUpdateS2CPacket + f I comp_2199 cooldown + f Lnet/minecraft/class_9139; field_47919 CODEC + f Lnet/minecraft/class_2960; comp_3082 cooldownGroup + m (Lnet/minecraft/class_2602;)V method_11455 apply + m ()I comp_2199 cooldown + m ()Lnet/minecraft/class_2960; comp_3082 cooldownGroup + m (Lnet/minecraft/class_2960;I)V + p 1 cooldownGroup + p 2 cooldown +c net/minecraft/class_3988 net/minecraft/entity/passive/MerchantEntity + f I field_30600 INVENTORY_SIZE + f Lnet/minecraft/class_1916; field_17721 offers + f Lnet/minecraft/class_2940; field_19295 HEAD_ROLLING_TIME_LEFT + f Lnet/minecraft/class_1277; field_17723 inventory + f Lnet/minecraft/class_1657; field_17722 customer + m (Lnet/minecraft/class_2394;)V method_18007 produceParticles + p 1 parameters + m ()V method_19181 resetCustomer + m ()Z method_18009 hasCustomer + m (Lnet/minecraft/class_3218;)V method_7237 fillRecipes + p 1 world + m ()V method_20010 playCelebrateSound + m (Lnet/minecraft/class_1914;)V method_18008 afterUsing + p 1 offer + m ()I method_20506 getHeadRollingTimeLeft + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1916;[Lnet/minecraft/class_3853$class_1652;I)V method_19170 fillRecipesFromPool + p 1 world + p 3 pool + p 2 recipeList + p 4 count + m (Z)Lnet/minecraft/class_3414; method_18012 getTradingSound + p 1 sold + m (I)V method_20507 setHeadRollingTimeLeft + p 1 ticks +c net/minecraft/class_2658 net/minecraft/network/packet/s2c/common/CustomPayloadS2CPacket + f I field_33326 MAX_PAYLOAD_SIZE + f Lnet/minecraft/class_9139; field_48620 PLAY_CODEC + f Lnet/minecraft/class_9139; field_48621 CONFIGURATION_CODEC + f Lnet/minecraft/class_8710; comp_1646 payload + m (Ljava/util/ArrayList;)V method_58270 method_58270 + p 0 types + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_9139; method_56461 method_56461 + p 0 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_9139; method_56460 method_56460 + p 0 id + m (Lnet/minecraft/class_8705;)V method_53024 apply + m ()Lnet/minecraft/class_8710; comp_1646 payload + m (Lnet/minecraft/class_8710;)V + p 1 payload +c net/minecraft/class_3989 net/minecraft/entity/passive/WanderingTraderEntity + f I field_17725 despawnDelay + f Lnet/minecraft/class_2338; field_17758 wanderTarget + f I field_57715 DEFAULT_DESPAWN_DELAY + m ()I method_18014 getDespawnDelay + m (Lnet/minecraft/class_3989;)Z method_18067 method_18067 + p 1 wanderingTrader + m (Lnet/minecraft/class_3989;)Z method_18068 method_18068 + p 1 wanderingTrader + m ()V method_20508 tickDespawnDelay + m (Lnet/minecraft/class_2338;)V method_18069 setWanderTarget + p 1 wanderTarget + m ()Lnet/minecraft/class_2338; method_18065 getWanderTarget + m (I)V method_18013 setDespawnDelay + p 1 despawnDelay +c net/minecraft/class_3989$class_3994 net/minecraft/entity/passive/WanderingTraderEntity$WanderToTargetGoal + f D field_17761 speed + f D field_17760 proximityDistance + f Lnet/minecraft/class_3989; field_17759 trader + m (Lnet/minecraft/class_3989;Lnet/minecraft/class_3989;DD)V + p 2 trader + p 3 proximityDistance + p 5 speed + m (Lnet/minecraft/class_2338;D)Z method_18070 isTooFarFrom + p 2 proximityDistance + p 1 pos +c net/minecraft/class_1329 net/minecraft/entity/attribute/ClampedEntityAttribute + c Represents a type of attribute with minimum and maximum value limits. + f D field_6353 minValue + f D field_6351 maxValue + m ()D method_35062 getMaxValue + m (Ljava/lang/String;DDD)V + p 1 translationKey + p 2 fallback + p 4 min + p 6 max + m ()D method_35061 getMinValue +c net/minecraft/class_905 net/minecraft/client/render/entity/GhastEntityRenderer + f Lnet/minecraft/class_2960; field_4705 TEXTURE + f Lnet/minecraft/class_2960; field_4706 SHOOTING_TEXTURE + m (Lnet/minecraft/class_10029;)Lnet/minecraft/class_2960; method_3972 getTexture + m ()Lnet/minecraft/class_10029; method_62449 createRenderState + m (Lnet/minecraft/class_1571;Lnet/minecraft/class_10029;F)V method_62448 updateRenderState +c net/minecraft/class_903 net/minecraft/client/render/entity/FireworkRocketEntityRenderer + f Lnet/minecraft/class_10442; field_55292 itemModelManager + m (Lnet/minecraft/class_10025;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3968 render + m (Lnet/minecraft/class_1671;Lnet/minecraft/class_10025;F)V method_62439 updateRenderState + m ()Lnet/minecraft/class_10025; method_62438 createRenderState +c net/minecraft/class_902 net/minecraft/client/render/entity/ExperienceOrbEntityRenderer + f Lnet/minecraft/class_2960; field_4701 TEXTURE + f Lnet/minecraft/class_1921; field_21741 LAYER + m (Lnet/minecraft/class_1303;Lnet/minecraft/class_2338;)I method_24089 getBlockLight + m (Lnet/minecraft/class_10022;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3966 render + m (IIFFLnet/minecraft/class_10022;FFLnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_72982 method_72982 + p 8 vertexConsumer + p 7 matricesEntry + m (Lnet/minecraft/class_1303;Lnet/minecraft/class_10022;F)V method_62434 updateRenderState + m (Lnet/minecraft/class_4588;Lnet/minecraft/class_4587$class_4665;FFIIIFFI)V method_23171 vertex + p 8 v + p 7 u + p 6 blue + p 5 green + p 9 light + p 0 vertexConsumer + p 4 red + p 3 y + p 2 x + p 1 matrix + m ()Lnet/minecraft/class_10022; method_62433 createRenderState +c net/minecraft/class_909 net/minecraft/client/render/entity/BipedEntityRenderer + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_572;Lnet/minecraft/class_572;FLnet/minecraft/class_976$class_9994;)V + p 5 headTransformation + p 3 babyModel + p 4 scale + p 1 context + p 2 model + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_10034;FLnet/minecraft/class_10442;)V method_62461 updateBipedRenderState + p 2 tickProgress + p 3 itemModelResolver + p 0 entity + p 1 state + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_10034;F)V method_62366 updateRenderState + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1304;)Lnet/minecraft/class_1799; method_65568 getEquippedStack + p 0 entity + p 1 slot + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1306;)Lnet/minecraft/class_572$class_573; method_65564 getArmPose + p 2 arm + p 1 entity + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_1306; method_62462 getPreferredArm + p 0 entity + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_572;F)V + p 2 model + p 1 context + p 3 shadowRadius + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_572;Lnet/minecraft/class_572;F)V + p 1 context + p 2 model + p 3 babyModel + p 4 scale +c net/minecraft/class_908 net/minecraft/client/render/entity/GiantEntityRenderer + f Lnet/minecraft/class_2960; field_4710 TEXTURE + m (Lnet/minecraft/class_5617$class_5618;F)V + p 1 ctx + p 2 scale + m (Lnet/minecraft/class_1570;Lnet/minecraft/class_10086;F)V method_62450 updateRenderState + m (Lnet/minecraft/class_10086;)Lnet/minecraft/class_2960; method_3981 getTexture + m ()Lnet/minecraft/class_10086; method_62451 createRenderState +c net/minecraft/class_907 net/minecraft/client/render/entity/GuardianEntityRenderer + f Lnet/minecraft/class_2960; field_4709 EXPLOSION_BEAM_TEXTURE + f Lnet/minecraft/class_2960; field_4708 TEXTURE + f Lnet/minecraft/class_1921; field_21743 LAYER + m (Lnet/minecraft/class_4588;Lnet/minecraft/class_4587$class_4665;FFFIIIFF)V method_23173 vertex + p 1 matrix + p 2 x + p 3 y + p 4 z + p 0 vertexConsumer + p 9 v + p 5 red + p 6 green + p 7 blue + p 8 u + m ()Lnet/minecraft/class_10031; method_62457 createRenderState + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_243;FFF)V method_62456 renderBeam + p 4 beamProgress + p 3 beamTicks + p 2 offset + p 1 queue + p 0 matrices + m (Lnet/minecraft/class_10031;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3977 render + m (Lnet/minecraft/class_10031;)Lnet/minecraft/class_2960; method_3976 getTexture + m (Lnet/minecraft/class_1309;DF)Lnet/minecraft/class_243; method_3979 fromLerpedPosition + p 2 yOffset + p 1 entity + p 4 delta + m (Lnet/minecraft/class_5617$class_5618;FLnet/minecraft/class_5601;)V + p 2 shadowRadius + p 1 ctx + p 3 layer + m (Lnet/minecraft/class_1577;)Lnet/minecraft/class_1297; method_62454 getBeamTarget + p 0 guardian + m (FFFIIIFFFFFFFFFFFFFFFFFLnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_72985 method_72985 + p 23 matricesEntry + p 24 vertexConsumer + m (Lnet/minecraft/class_1577;Lnet/minecraft/class_10031;F)V method_62455 updateRenderState + m (Lnet/minecraft/class_1577;Lnet/minecraft/class_4604;DDD)Z method_3978 shouldRender +c net/minecraft/class_906 net/minecraft/client/render/entity/FishingBobberEntityRenderer + f Lnet/minecraft/class_2960; field_4707 TEXTURE + f Lnet/minecraft/class_1921; field_21742 LAYER + m (Lnet/minecraft/class_10026;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3974 render + m (Lnet/minecraft/class_1657;FF)Lnet/minecraft/class_243; method_59755 getHandPos + p 3 tickProgress + p 2 handRotation + p 1 player + m (FFFFLnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_72983 method_72983 + p 4 matricesEntry + p 5 vertexConsumer + m ()Lnet/minecraft/class_10026; method_62440 createRenderState + m (II)F method_23954 percentage + p 1 denominator + p 0 value + m (Lnet/minecraft/class_1536;Lnet/minecraft/class_10026;F)V method_62443 updateRenderState + m (Lnet/minecraft/class_1657;)Lnet/minecraft/class_1306; method_65567 getArmHoldingRod + p 0 player + m (FFFLnet/minecraft/class_4588;Lnet/minecraft/class_4587$class_4665;FFF)V method_23172 renderFishingLine + p 1 y + p 0 x + p 5 segmentStart + p 4 matrices + p 3 buffer + p 2 z + p 7 getMinimumLineWidth + p 6 segmentEnd + m (Lnet/minecraft/class_4588;Lnet/minecraft/class_4587$class_4665;IFIII)V method_23840 vertex + p 1 matrix + p 0 buffer + p 3 x + p 2 light + p 5 u + p 4 y + p 6 v + m (Lnet/minecraft/class_1536;)Z method_62441 canBeCulled + m (Lnet/minecraft/class_10026;Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_72984 method_72984 + p 1 matricesEntry + p 2 vertexConsumer + m (Lnet/minecraft/class_1536;Lnet/minecraft/class_4604;DDD)Z method_62442 shouldRender +c net/minecraft/class_7520 net/minecraft/datafixer/fix/GoatMissingStateFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44319 method_44319 + p 0 goatDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_8851 net/minecraft/command/Forkable + m (Ljava/lang/Object;Ljava/util/List;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_8936;Lnet/minecraft/class_8855;)V method_54270 execute + p 1 baseSource + p 2 sources + p 3 contextChain + p 4 flags + p 5 control +c net/minecraft/class_8851$class_8852 net/minecraft/command/Forkable$RedirectModifier + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; apply apply + p 1 context +c net/minecraft/class_885 net/minecraft/client/render/entity/CodEntityRenderer + f Lnet/minecraft/class_2960; field_4652 TEXTURE + m ()Lnet/minecraft/class_10042; method_62398 createRenderState +c net/minecraft/class_884 net/minecraft/client/render/entity/CowEntityRenderer + f Ljava/util/Map; field_56506 babyModelPairMap + m (Lnet/minecraft/class_10750;)Lnet/minecraft/class_2960; method_67474 getTexture + m (Lnet/minecraft/class_10750;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_67475 render + m (Lnet/minecraft/class_5617$class_5618;)Ljava/util/Map; method_67473 createBabyModelPairMap + p 0 context + m ()Lnet/minecraft/class_10750; method_62399 createRenderState + m (Lnet/minecraft/class_10730;Lnet/minecraft/class_10750;F)V method_62400 updateRenderState +c net/minecraft/class_889 net/minecraft/client/render/entity/model/DolphinEntityModel + c Represents the model of a dolphin-like entity.\n\n

\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#BODY}{@linkplain #root Root part}{@link #body}
{@value EntityModelPartNames#BACK_FIN}{@value EntityModelPartNames#BODY}
{@value EntityModelPartNames#LEFT_FIN}{@value EntityModelPartNames#BODY}
{@value EntityModelPartNames#RIGHT_FIN}{@value EntityModelPartNames#BODY}
{@value EntityModelPartNames#TAIL}{@value EntityModelPartNames#BODY}{@link #tail}
{@value EntityModelPartNames#TAIL_FIN}{@value EntityModelPartNames#TAIL}{@link #tailFin}
{@value EntityModelPartNames#HEAD}{@value EntityModelPartNames#BODY}
{@value EntityModelPartNames#NOSE}{@value EntityModelPartNames#HEAD}
\n
+ f Lnet/minecraft/class_630; field_4655 tailFin + f Lnet/minecraft/class_630; field_4657 tail + f Lnet/minecraft/class_9953; field_52894 BABY_TRANSFORMER + f Lnet/minecraft/class_630; field_4658 body + m (Lnet/minecraft/class_10012;)V method_62076 setAngles + m ()Lnet/minecraft/class_5607; method_31992 getTexturedModelData +c net/minecraft/class_888 net/minecraft/client/render/entity/DolphinEntityRenderer + f Lnet/minecraft/class_2960; field_4654 TEXTURE + m (Lnet/minecraft/class_1433;Lnet/minecraft/class_10012;F)V method_62411 updateRenderState + m ()Lnet/minecraft/class_10012; method_62410 createRenderState + m (Lnet/minecraft/class_10012;)Lnet/minecraft/class_2960; method_3903 getTexture +c net/minecraft/class_887 net/minecraft/client/render/entity/CreeperEntityRenderer + f Lnet/minecraft/class_2960; field_4653 TEXTURE + m (Lnet/minecraft/class_10010;)F method_23154 getAnimationCounter + m (Lnet/minecraft/class_1548;Lnet/minecraft/class_10010;F)V method_62402 updateRenderState + m ()Lnet/minecraft/class_10010; method_62401 createRenderState + m (Lnet/minecraft/class_10010;)Lnet/minecraft/class_2960; method_3899 getTexture + m (Lnet/minecraft/class_10010;Lnet/minecraft/class_4587;)V method_3900 scale +c net/minecraft/class_8858 net/minecraft/command/SingleCommandAction + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_46739 FORK_LIMIT_EXCEPTION + f Lcom/mojang/brigadier/context/ContextChain; field_46741 contextChain + f Ljava/lang/String; field_46740 command + m (Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;)V + p 1 command + p 2 contextChain + m (Lcom/mojang/brigadier/context/CommandContext;ZI)V method_54897 method_54897 + p 2 returnValue + p 1 successful + p 0 context + m (Lnet/minecraft/class_8839;Ljava/util/List;Lnet/minecraft/class_8854;Lnet/minecraft/class_8937;Lnet/minecraft/class_8936;)V method_54410 execute + p 4 frame + p 3 context + p 5 flags + p 2 sources + p 1 baseSource + m (Lnet/minecraft/class_8865;Lnet/minecraft/class_8937;Lnet/minecraft/class_8839;)Lnet/minecraft/class_8847; method_54408 method_54408 + p 1 frame + p 2 source + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54409 method_54409 + p 0 count + m (Lnet/minecraft/class_8854;Lnet/minecraft/class_8937;)V method_54407 traceCommandStart + p 2 frame + p 1 context +c net/minecraft/class_8858$class_8861 net/minecraft/command/SingleCommandAction$Sourced + m (Lnet/minecraft/class_8839;Lnet/minecraft/class_8854;Lnet/minecraft/class_8937;)V method_54412 execute +c net/minecraft/class_8858$class_8859 net/minecraft/command/SingleCommandAction$MultiSource + f Lnet/minecraft/class_8839; field_47165 baseSource + f Ljava/util/List; field_46745 sources + f Lnet/minecraft/class_8936; field_47164 flags + m (Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_8936;Lnet/minecraft/class_8839;Ljava/util/List;)V + p 4 baseSource + p 5 sources + p 2 contextChain + p 3 flags + p 1 command +c net/minecraft/class_8858$class_8860 net/minecraft/command/SingleCommandAction$SingleSource + f Lnet/minecraft/class_8839; field_46746 source + m (Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_8839;)V + p 2 contextChain + p 1 command + p 3 source +c net/minecraft/class_7528 net/minecraft/client/gui/widget/ScrollableWidget + c A widget that can be focused and vertically scrolled. + f I field_55258 SCROLLBAR_WIDTH + f Lnet/minecraft/class_2960; field_55259 SCROLLER_BACKGROUND_TEXTURE + f D field_39497 scrollY + f Z field_39498 scrollbarDragged + f Lnet/minecraft/class_2960; field_45906 SCROLLER_TEXTURE + m ()D method_44387 getScrollY + m ()I method_65508 getScrollbarThumbY + m ()Z method_44392 overflows + c {@return whether the contents overflow and needs a scrollbar} + m (Lnet/minecraft/class_332;II)V method_44396 drawScrollbar + p 2 mouseX + p 1 context + p 3 mouseY + m ()I method_65507 getScrollbarX + m (Lnet/minecraft/class_11909;)Z method_65505 checkScrollbarDragged + p 1 click + m (D)V method_44382 setScrollY + p 1 scrollY + m ()V method_65506 refreshScroll + m (DD)Z method_74038 isInScrollbar + p 1 mouseX + p 3 mouseY + m ()I method_44390 getMaxScrollY + m ()I method_44395 getContentsHeightWithPadding + m ()I method_44394 getScrollbarThumbHeight + m ()D method_44393 getDeltaYPerScroll +c net/minecraft/class_8856 net/minecraft/command/SourcedCommandAction + m (Ljava/lang/Object;)Lnet/minecraft/class_8853; bind bind + p 1 source + m (Ljava/lang/Object;Lnet/minecraft/class_8854;Lnet/minecraft/class_8937;)V method_54405 method_54405 + p 2 context + p 3 frame + m (Ljava/lang/Object;Lnet/minecraft/class_8854;Lnet/minecraft/class_8937;)V execute execute + p 1 source + p 2 context + p 3 frame +c net/minecraft/class_8857 net/minecraft/unused/packageinfo/PackageInfo8857 +c net/minecraft/class_8854 net/minecraft/command/CommandExecutionContext + f I field_46731 maxCommandChainLength + f I field_46735 commandsRemaining + f Ljava/util/List; field_46738 pendingCommands + f Z field_46736 queueOverflowed + f Lnet/minecraft/class_6346; field_46734 tracer + f I field_46729 MAX_COMMAND_QUEUE_LENGTH + f Lnet/minecraft/class_3695; field_46733 profiler + f I field_46732 forkLimit + f I field_47705 currentDepth + f Lorg/slf4j/Logger; field_46730 LOGGER + f Ljava/util/Deque; field_46737 commandQueue + m ()V method_54390 run + m (Lnet/minecraft/class_8854;Lnet/minecraft/class_8935;)Lnet/minecraft/class_8937; method_54889 frame + p 1 returnValueConsumer + p 0 context + m (I)Lnet/minecraft/class_8937$class_8938; method_54890 getEscapeControl + p 1 depth + m (IILnet/minecraft/class_3695;)V + p 3 profiler + p 1 maxCommandChainLength + p 2 maxCommandForkCount + m ()V method_54399 decrementCommandQuota + m ()V method_54400 markQueueOverflowed + m (I)V method_54391 escape + p 1 depth + m ()Lnet/minecraft/class_6346; method_54396 getTracer + m ()I method_54398 getForkLimit + m ()V method_55594 queuePendingCommands + m (Lnet/minecraft/class_8847;)V method_54392 enqueueCommand + p 1 entry + m (Lnet/minecraft/class_8854;Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_8839;Lnet/minecraft/class_8935;)V method_54393 enqueueCommand + p 1 command + p 0 context + p 4 returnValueConsumer + p 3 source + p 2 contextChain + m ()Lnet/minecraft/class_3695; method_54397 getProfiler + m (Lnet/minecraft/class_6346;)V method_54394 setTracer + p 1 tracer + m (Lnet/minecraft/class_8854;Lnet/minecraft/class_8868;Lnet/minecraft/class_8839;Lnet/minecraft/class_8935;)V method_54395 enqueueProcedureCall + p 2 source + p 3 returnValueConsumer + p 0 context + p 1 procedure +c net/minecraft/class_882 net/minecraft/client/render/entity/ChickenEntityRenderer + f Ljava/util/Map; field_56593 babyModelPairMap + m (Lnet/minecraft/class_5617$class_5618;)Ljava/util/Map; method_67552 createBabyModelPairMap + p 0 context + m (Lnet/minecraft/class_10009;)Lnet/minecraft/class_2960; method_3892 getTexture + m ()Lnet/minecraft/class_10009; method_62396 createRenderState + m (Lnet/minecraft/class_1428;Lnet/minecraft/class_10009;F)V method_62397 updateRenderState + m (Lnet/minecraft/class_10009;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_67553 render +c net/minecraft/class_8855 net/minecraft/command/ExecutionControl + m ()Lnet/minecraft/class_6346; method_54404 getTracer + m (Lnet/minecraft/class_8854;Lnet/minecraft/class_8937;)Lnet/minecraft/class_8855; method_54892 of + p 0 context + p 1 frame + m ()Lnet/minecraft/class_8937; method_54893 getFrame + m (Lnet/minecraft/class_8853;)V method_54402 enqueueAction + p 1 action + m (Lnet/minecraft/class_6346;)V method_54403 setTracer + p 1 tracer +c net/minecraft/class_881 net/minecraft/client/render/entity/BoatEntityRenderer + f Lnet/minecraft/class_2960; field_54501 texture + f Lnet/minecraft/class_583; field_54502 model + f Lnet/minecraft/class_3879$class_9948; field_53182 waterMaskModel + m (Ljava/lang/String;)Ljava/lang/String; method_64523 method_64523 + p 0 path + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_5601;)V + p 2 layer + p 1 ctx + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_62386 method_62386 + p 0 id +c net/minecraft/class_7521 net/minecraft/entity/ai/brain/task/DismountVehicleTask +c net/minecraft/class_880 net/minecraft/client/render/entity/CaveSpiderEntityRenderer + f Lnet/minecraft/class_2960; field_4646 TEXTURE +c net/minecraft/class_7522 net/minecraft/world/chunk/ReadableContainer + m (III)Ljava/lang/Object; method_12321 get + p 3 z + p 2 y + p 1 x + m ()I method_74157 getElementBits + m (Lnet/minecraft/class_2841$class_4464;)V method_21732 count + p 1 counter + m (Ljava/util/function/Consumer;)V method_39793 forEachValue + p 1 action + m (Lnet/minecraft/class_6563;)Lnet/minecraft/class_7522$class_6562; method_44345 serialize + p 1 provider + m (Lnet/minecraft/class_2540;)V method_12325 writePacket + c Writes this container to the packet byte buffer. + p 1 buf + c the packet byte buffer + m ()I method_12327 getPacketSize + m ()Lnet/minecraft/class_2841; method_39957 copy + m (Ljava/util/function/Predicate;)Z method_19526 hasAny + c {@return {@code true} if any object in this container's palette matches\nthis predicate} + p 1 predicate + m ()Lnet/minecraft/class_2841; method_44350 slice +c net/minecraft/class_7522$class_7523 net/minecraft/world/chunk/ReadableContainer$Reader + m (Lnet/minecraft/class_6563;Lnet/minecraft/class_7522$class_6562;)Lcom/mojang/serialization/DataResult; read read + p 1 provider + p 2 serialized +c net/minecraft/class_7522$class_6562 net/minecraft/world/chunk/ReadableContainer$Serialized + c The storage form of the paletted container in the {@linkplain\nPalettedContainer#createCodec codec}. The {@code palette} is the entries\nin the palette, but the interpretation of data depends on the palette\nprovider specified for the codec.\n\n@see PalettedContainer#createCodec + f Ljava/util/Optional; comp_76 storage + c the data of the container + f I field_62540 MISSING_BITS_PER_ENTRY + f Ljava/util/List; comp_75 paletteEntries + c the palette + f I comp_4791 bitsPerEntry + m (Ljava/util/List;Ljava/util/Optional;)V + p 2 storage + p 1 paletteEntries + m ()Ljava/util/Optional; comp_76 storage + m ()I comp_4791 bitsPerEntry + m ()Ljava/util/List; comp_75 paletteEntries + m (Ljava/util/List;Ljava/util/Optional;I)V + p 1 paletteEntries + p 2 storage + p 3 bitsPerEntry +c net/minecraft/class_8853 net/minecraft/command/CommandAction + m (Lnet/minecraft/class_8854;Lnet/minecraft/class_8937;)V execute execute + p 2 frame + p 1 context +c net/minecraft/class_7530 net/minecraft/client/gui/EditBox + c A multiline edit box with support for basic keyboard shortcuts.\nThis should not be used directly; {@link net.minecraft.client.gui.widget.EditBoxWidget}\nprovides the GUI for the edit box. + f Ljava/lang/Runnable; field_39522 cursorChangeListener + f Lnet/minecraft/class_327; field_39513 textRenderer + f Lorg/slf4j/Logger; field_61063 LOGGER + f Z field_39518 selecting + f I field_39519 maxLength + f I field_60450 maxLines + f Ljava/lang/String; field_39515 text + f I field_39511 UNLIMITED_LENGTH + c A constant denoting that the edit box accepts unlimited amount of text. Edit box\nwidgets with such edit boxes do not show the current text length indicator. + f I field_39516 cursor + f Ljava/util/function/Consumer; field_39521 changeListener + f I field_39512 CURSOR_WIDTH + f I field_39520 width + f I field_39517 selectionEnd + f Ljava/util/List; field_39514 lines + m (I)V method_71517 setMaxLines + p 1 maxLines + m (I)V method_44411 setMaxLength + c Sets the maximum length of the edit box text in characters.\n\n

If {@code maxLength} equals {@link #UNLIMITED_LENGTH}, the edit box does not\nhave a length limit. Edit box widgets with such edit boxes do not show the current\ntext length indicator.\n\n@throws IllegalArgumentException if {@code maxLength} is negative\n@see #getMaxLength\n@see #hasMaxLength + p 1 maxLength + m (I)V method_44419 delete + c Deletes the selected text, or {@code offset} characters of text from the cursor position\nif there is no selection. If the offset is negative, the characters before the cursor\nwill be removed, and vice versa. + p 1 offset + m ()Z method_44435 hasSelection + c {@return whether the edit box has a selected text} + m (Ljava/util/function/Consumer;)V method_44415 setChangeListener + c Sets the change listener that is called every time the text changes. + p 1 changeListener + c the listener that takes the new text of the edit box + m ()I method_44432 getCurrentLineIndex + c {@return the line index that the cursor is located at} + m (Lnet/minecraft/class_327;I)V + p 1 textRenderer + p 2 width + m ()Lnet/minecraft/class_7530$class_7531; method_44427 getSelection + c {@return the current selection} + m (I)Lnet/minecraft/class_7530$class_7531; method_44431 getOffsetLine + c {@return the line offset by {@code offsetFromCurrent} from the cursor's line} + p 1 offsetFromCurrent + m (Ljava/lang/String;)Ljava/lang/String; method_44423 truncateForReplacement + c {@return {@code value} truncated to at most {@link #maxLength} characters}\n\n@see #truncate + p 1 value + m ()I method_44424 getCursor + c {@return the cursor position} + m ()Z method_71518 hasMaxLines + m ()Ljava/lang/String; method_44436 getSelectedText + c {@return the text that is currently selected, or an empty string if there is no selection} + m ()I method_44409 getMaxLength + c {@return the maximum length of the edit box text in characters}\n\n

If this equals {@link #UNLIMITED_LENGTH}, the edit box does not have a\nlength limit. Edit box widgets with such edit boxes do not show the current\ntext length indicator.\n\n@see #setMaxLength\n@see #hasMaxLength + m ()V method_44440 onChange + c Called when the text changes. This rewraps the text, calls\n{@link #changeListener}, then calls {@link #cursorChangeListener}. + m (DD)V method_44410 moveCursor + c Moves the cursor to the specified position relative to the edit box. + p 1 x + p 3 y + m ()Lnet/minecraft/class_7530$class_7531; method_44439 getCurrentLine + c {@return the line that the cursor is located at} + m ()V method_72748 selectWord + m (Ljava/lang/String;)V method_44420 replaceSelection + c Replaces the current selection with {@code string}. If there is no\nselection, this inserts the string at the cursor position. This removes\n{@linkplain net.minecraft.util.StringHelper#isValidChar invalid characters} and truncates\nthe passed string if necessary. + p 1 string + m ()Ljava/lang/String; method_44421 getText + c {@return the text of the edit box} + m (I)V method_44425 moveCursorLine + c Moves the cursor by {@code offset} lines. This method attempts to keep the\nrelative position within the line the same. Does nothing if {@code offset} is zero. + p 1 offset + m ()Lnet/minecraft/class_7530$class_7531; method_44438 getNextWordAtCursor + c {@return the substring of a word whose start position is after the cursor}\n\n

A word is a string consisting entirely of non-whitespace characters. If the\ncursor is in the middle of a word, the start position is that of the first word\nafter the cursor; if not, the start position is that of the next word.\n\n@see #getPreviousWordAtCursor + m (Ljava/lang/String;)V method_72235 setText + p 1 setText + m (I)I method_44433 getWordEndIndex + c {@return the end index of the word starting at {@code startIndex}}\n\n

A word is a string consisting entirely of non-whitespace characters. Therefore,\nthe end index is the index of the character whose succeeding character is the first\nwhitespace since {@code startIndex}. + p 1 startIndex + m ()V method_44441 rewrap + c Rewraps the text. This is called whenever the text changes. + m (Ljava/lang/Runnable;)V method_44413 setCursorChangeListener + c Sets the cursor change listener that is called every time the cursor position changes. + p 1 cursorChangeListener + m (Ljava/lang/String;Z)V method_44414 setText + c Sets the text of the edit box and moves the cursor to the end of the edit box. + p 1 text + p 2 allowOverflow + m ()Ljava/lang/Iterable; method_44434 getLines + c {@return the lines of the edit box's text} + m (I)Lnet/minecraft/class_7530$class_7531; method_44422 getLine + c {@return the line with index {@code index}} + p 1 index + m (Z)V method_44417 setSelecting + c Sets whether the edit box is currently selecting.\n\n

If using the widget, this is done by dragging or holding down Shift and clicking. + p 1 selecting + m (Lnet/minecraft/class_7533;I)V method_44412 moveCursor + c Moves the cursor by {@code amount} characters.\n\n@apiNote See {@link CursorMovement} for the types of the movement. + p 1 movement + p 2 amount + m (Ljava/lang/String;)Z method_71519 exceedsMaxLines + p 1 text + m ()Lnet/minecraft/class_7530$class_7531; method_44437 getPreviousWordAtCursor + c {@return the substring of a word whose start position is before the cursor}\n\n

A word is a string consisting entirely of non-whitespace characters. If the\ncursor is in the middle of a word, the start position is that of the word; if not,\nthe start position is that of the first word before the cursor.\n\n@see #getNextWordAtCursor + m ()I method_44430 getLineCount + c {@return the number of total lines in the edit box} + m (Ljava/lang/String;)V method_44429 method_44429 + p 0 text + m (Lnet/minecraft/class_11908;)Z method_44428 handleSpecialKey + c Handles the special keys, such as copy, cut, linebreak, and cursor movements. + p 1 key + m (Lnet/minecraft/class_2583;II)V method_44416 method_44416 + p 3 end + p 2 start + p 1 style + m (Ljava/lang/String;)Ljava/lang/String; method_44426 truncate + c {@return {@code value} truncated to fit in the current text}\n

For example, if the edit box with 100 characters limit currently\nhas 90 characters, this method will return at most 10 characters.\n\n@see #truncateForReplacement + p 1 value + m ()Z method_44418 hasMaxLength + c {@return whether the edit box has a maximum length limit}\n\n

Edit box widgets with edit boxes without a length limit do not\nshow the current text length indicator.\n\n@see #getMaxLength\n@see #setMaxLength +c net/minecraft/class_7530$class_7531 net/minecraft/client/gui/EditBox$Substring + c A substring of an edit box's text, specified using the indices of the\nstart and the end. This can indicate selections, lines, words, etc. This\ndoes not contain the string itself; to obtain the string, get the text\nfirst, then call {@link String#substring}. + f Lnet/minecraft/class_7530$class_7531; field_39524 EMPTY + c An empty substring. + f I comp_863 endIndex + f I comp_862 beginIndex + m ()I comp_862 beginIndex + m ()I comp_863 endIndex + m (II)V + p 1 beginIndex + p 2 endIndex +c net/minecraft/class_897 net/minecraft/client/render/entity/EntityRenderer + f F field_4672 shadowOpacity + f Lnet/minecraft/class_327; field_27761 textRenderer + f Lnet/minecraft/class_898; field_4676 dispatcher + f F field_4673 shadowRadius + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;)I method_24087 getBlockLight + p 1 entity + p 2 pos + m (Lnet/minecraft/class_1297;F)Lnet/minecraft/class_10017; method_62425 getAndUpdateRenderState + p 1 entity + p 2 tickProgress + m ()Lnet/minecraft/class_10017; method_55269 createRenderState + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_10017;)V method_73154 updateShadow + p 2 renderState + p 1 entity + m (Lnet/minecraft/class_10017;)F method_65247 getShadowOpacity + p 1 state + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1297; method_68837 getServerEntity + p 0 clientEntity + m (Lnet/minecraft/class_10017;Lnet/minecraft/class_310;Lnet/minecraft/class_1937;)V method_72979 updateShadow + p 1 renderState + p 3 world + p 2 client + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;)I method_27950 getSkyLight + p 2 pos + p 1 entity + m (Lnet/minecraft/class_1297;)Z method_62406 canBeCulled + p 1 entity + m (Lnet/minecraft/class_10017;Lnet/minecraft/class_1937;FLnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_2791;)V method_72978 addShadowPiece + p 1 renderState + p 5 chunk + p 4 pos + p 3 shadowOpacity + p 2 world + m (Lnet/minecraft/class_10017;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3926 renderLabelIfPresent + p 3 queue + p 1 state + p 2 matrices + m (Lnet/minecraft/class_10017;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3936 render + p 4 cameraState + p 2 matrices + p 3 queue + p 1 renderState + m (Lnet/minecraft/class_1297;F)I method_24088 getLight + p 1 entity + p 2 tickProgress + m (Lnet/minecraft/class_10017;)F method_55831 getShadowRadius + p 1 state + m (Lnet/minecraft/class_10017;)Lnet/minecraft/class_243; method_23169 getPositionOffset + p 1 state + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_238; method_62358 getBoundingBox + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_4604;DDD)Z method_3933 shouldRender + p 1 entity + p 5 y + p 3 x + p 2 frustum + p 7 z + m (Lnet/minecraft/class_1297;D)Z method_3921 hasLabel + c Determines whether the passed entity should render with a nameplate above its head.\n\n

Checks for a custom nametag on living entities, and for teams/team visibilities for players. + p 2 squaredDistanceToCamera + p 1 entity + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_2561; method_62426 getDisplayName + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_10017;F)V method_62354 updateRenderState + p 2 state + p 1 entity + p 3 tickProgress + m (Lnet/minecraft/class_5617$class_5618;)V + p 1 context + m ()Lnet/minecraft/class_327; method_3932 getTextRenderer +c net/minecraft/class_8862 net/minecraft/command/CommandFunctionAction + f Lnet/minecraft/class_8935; field_47166 returnValueConsumer + f Lnet/minecraft/class_8868; field_46747 function + f Z field_47167 propagateReturn + m (Lnet/minecraft/class_8839;Lnet/minecraft/class_8854;Lnet/minecraft/class_8937;)V method_54851 execute + m (Lnet/minecraft/class_8868;Lnet/minecraft/class_8935;Z)V + p 1 function + p 3 propagateReturn + p 2 returnValueConsumer + m (Lnet/minecraft/class_8839;Lnet/minecraft/class_8937;Lnet/minecraft/class_8856;)Lnet/minecraft/class_8847; method_54898 method_54898 + p 2 action + p 1 frame +c net/minecraft/class_896 net/minecraft/client/render/entity/EndermiteEntityRenderer + f Lnet/minecraft/class_2960; field_4671 TEXTURE + m ()Lnet/minecraft/class_10042; method_62423 createRenderState +c net/minecraft/class_6200 net/minecraft/unused/packageinfo/PackageInfo6200 +c net/minecraft/class_895 net/minecraft/client/render/entity/EnderDragonEntityRenderer + f Lnet/minecraft/class_2960; field_4668 CRYSTAL_BEAM_TEXTURE + f Lnet/minecraft/class_2960; field_4669 EXPLOSION_TEXTURE + f Lnet/minecraft/class_2960; field_21006 EYE_TEXTURE + f Lnet/minecraft/class_625; field_21008 model + f Lnet/minecraft/class_1921; field_21737 DRAGON_CUTOUT + f Lnet/minecraft/class_2960; field_4670 TEXTURE + f Lnet/minecraft/class_1921; field_21739 DRAGON_EYES + f Lnet/minecraft/class_1921; field_21738 DRAGON_DECAL + f Lnet/minecraft/class_1921; field_21740 CRYSTAL_BEAM_LAYER + f F field_21007 HALF_SQRT_3 + m (FIFFLnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_72973 method_72973 + p 5 vertexConsumer + p 4 matricesEntry + m (Lnet/minecraft/class_4587;FLnet/minecraft/class_11659;Lnet/minecraft/class_1921;)V method_61158 renderDeathAnimation + p 3 renderLayer + p 0 matrices + p 1 animationProgress + p 2 queue + m ()Lnet/minecraft/class_10015; method_62418 createRenderState + m (Lnet/minecraft/class_10015;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3918 render + m (FFFFLnet/minecraft/class_4587;Lnet/minecraft/class_11659;I)V method_3917 renderCrystalBeam + p 6 light + p 4 matrices + p 5 queue + p 2 dz + p 3 tickProgress + p 0 dx + p 1 dy + m (Lnet/minecraft/class_1510;Lnet/minecraft/class_10015;F)V method_62420 updateRenderState + m (FLnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_72974 method_72974 + p 1 matricesEntry + p 2 vertexConsumer + m (Lnet/minecraft/class_1510;)Z method_62419 canBeCulled +c net/minecraft/class_894 net/minecraft/client/render/entity/EndermanEntityRenderer + f Lnet/minecraft/class_2960; field_4666 TEXTURE + f Lnet/minecraft/class_5819; field_4667 random + m ()Lnet/minecraft/class_10016; method_62421 createRenderState + m (Lnet/minecraft/class_1560;Lnet/minecraft/class_10016;F)V method_62422 updateRenderState + m (Lnet/minecraft/class_10016;)Lnet/minecraft/class_2960; method_3912 getTexture + m (Lnet/minecraft/class_10016;)Lnet/minecraft/class_243; method_23160 getPositionOffset +c net/minecraft/class_899 net/minecraft/client/render/entity/EvokerEntityRenderer + f Lnet/minecraft/class_2960; field_4697 TEXTURE + m (Lnet/minecraft/class_10021;)Lnet/minecraft/class_2960; method_3961 getTexture + m ()Lnet/minecraft/class_10021; method_62432 createRenderState + m (Lnet/minecraft/class_1617;Lnet/minecraft/class_10021;F)V method_62431 updateRenderState +c net/minecraft/class_899$1 net/minecraft/client/render/entity/EvokerEntityRenderer$1 + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10021;FF)V method_23170 render +c net/minecraft/class_898 net/minecraft/client/render/entity/EntityRenderManager + f Lnet/minecraft/class_327; field_4689 textRenderer + f Lnet/minecraft/class_10201; field_55290 equipmentModelLoader + f Ljava/util/Map; field_62757 mannequinRenderers + f Lnet/minecraft/class_4184; field_4686 camera + f Lnet/minecraft/class_315; field_4692 gameOptions + f Ljava/util/Map; field_4696 renderers + f Lnet/minecraft/class_759; field_38887 heldItemRenderer + f Ljava/util/function/Supplier; field_27760 entityModelsGetter + f Lnet/minecraft/class_776; field_38886 blockRenderManager + f Lnet/minecraft/class_330; field_53188 mapRenderer + f Lnet/minecraft/class_1060; field_4685 textureManager + f Lnet/minecraft/class_11697; field_61796 atlasManager + f Lnet/minecraft/class_10442; field_55289 itemModelManager + f Ljava/util/Map; field_4687 playerRenderers + f Lnet/minecraft/class_11786; field_62254 skinCache + f Lnet/minecraft/class_1297; field_4678 targetedEntity + m (Lnet/minecraft/class_1297;F)I method_23839 getLight + p 1 entity + p 2 tickProgress + m (Lnet/minecraft/class_742;)Lnet/minecraft/class_1007; method_74405 getPlayerRenderer + p 1 player + m (Lnet/minecraft/class_10017;)Lnet/minecraft/class_897; method_68832 getRenderer + p 1 state + m ()Lnet/minecraft/class_759; method_43336 getHeldItemRenderer + m (Lnet/minecraft/class_1297;)D method_23168 getSquaredDistanceToCamera + p 1 entity + m (Ljava/util/Map;Lnet/minecraft/class_11890;)Lnet/minecraft/class_1007; method_74406 getPlayerRenderer + p 1 skinTypeToRenderer + p 2 player + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_4604;DDD)Z method_3950 shouldRender + p 5 y + p 7 z + p 1 entity + p 2 frustum + p 3 x + m (Lnet/minecraft/class_10017;Lnet/minecraft/class_12075;DDDLnet/minecraft/class_4587;Lnet/minecraft/class_11659;)V method_72976 render + p 2 cameraState + p 1 renderState + p 3 offsetX + p 10 queue + p 9 matrices + p 5 offsetY + p 7 offsetZ + m (Lnet/minecraft/class_1297;F)Lnet/minecraft/class_10017; method_72977 getAndUpdateRenderState + p 2 tickProgress + p 1 entity + m (Lnet/minecraft/class_310;Lnet/minecraft/class_1060;Lnet/minecraft/class_10442;Lnet/minecraft/class_330;Lnet/minecraft/class_776;Lnet/minecraft/class_11697;Lnet/minecraft/class_327;Lnet/minecraft/class_315;Ljava/util/function/Supplier;Lnet/minecraft/class_10201;Lnet/minecraft/class_11786;)V + p 8 gameOptions + p 9 entityModelsGetter + p 6 atlasManager + p 7 textRenderer + p 10 equipmentModelLoader + p 11 skinCache + p 1 client + p 4 mapRenderer + p 5 blockRenderManager + p 2 textureManager + p 3 itemModelManager + m (Lnet/minecraft/class_897;Lnet/minecraft/class_128;)Lnet/minecraft/class_129; method_68829 addRendererDetails + p 1 renderer + p 2 crashReport + m (Lnet/minecraft/class_4184;Lnet/minecraft/class_1297;)V method_3941 configure + p 2 targetedEntity + p 1 camera + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_897; method_3953 getRenderer + p 1 entity + m ()V method_72975 clearCamera +c net/minecraft/class_6206 net/minecraft/unused/packageinfo/PackageInfo6206 +c net/minecraft/class_7538 net/minecraft/client/gui/screen/report/ChatReportScreen + f Lnet/minecraft/class_2561; field_46031 TITLE_TEXT + f Lnet/minecraft/class_7529; field_46033 commentsBox + f Lnet/minecraft/class_2561; field_39574 SELECT_CHAT_TEXT + f Lnet/minecraft/class_4185; field_46034 selectChatButton + f Lnet/minecraft/class_4185; field_46035 selectReasonButton + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7574;Ljava/util/UUID;)V + p 2 reporter + p 1 parent + p 3 reportedPlayerUuid + m (Lnet/minecraft/class_7566$class_8772;)V method_61144 method_61144 + p 1 updatedReportBuilder + m (Lnet/minecraft/class_7573;)V method_61145 method_61145 + p 1 reason + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7574;Lnet/minecraft/class_7566$class_8772;)V + p 2 context + p 3 reportBuilder + p 1 parent + m (Lnet/minecraft/class_7847;)V method_61143 method_61143 + p 0 positioner + m (Lnet/minecraft/class_4185;)V method_61147 method_61147 + p 1 button + m (Ljava/lang/String;)V method_61146 method_61146 + p 1 comments + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7574;Lnet/minecraft/class_7566;)V + p 1 parent + p 2 context + p 3 report + m (Lnet/minecraft/class_4185;)V method_61142 method_61142 + p 1 button +c net/minecraft/class_6205 net/minecraft/unused/packageinfo/PackageInfo6205 +c net/minecraft/class_8867 net/minecraft/server/function/FunctionBuilder + f Ljava/util/List; field_46756 macroLines + f Ljava/util/List; field_46757 usedVariables + f Ljava/util/List; field_46755 actions + m (Ljava/util/List;)Lit/unimi/dsi/fastutil/ints/IntList; method_54422 indicesOfVariables + p 1 variables + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2158; method_54418 toCommandFunction + p 1 id + m (Ljava/lang/String;)I method_54420 indexOfVariable + p 1 variable + m (Lnet/minecraft/class_8856;)V method_54419 addAction + p 1 action + m (Ljava/lang/String;ILnet/minecraft/class_8839;)V method_54421 addMacroCommand + p 1 command + p 2 lineNum + p 3 source +c net/minecraft/class_6208 net/minecraft/unused/packageinfo/PackageInfo6208 +c net/minecraft/class_8868 net/minecraft/server/function/Procedure + m ()Lnet/minecraft/class_2960; comp_1994 id + m ()Ljava/util/List; comp_1995 entries +c net/minecraft/class_6207 net/minecraft/unused/packageinfo/PackageInfo6207 +c net/minecraft/class_6202 net/minecraft/unused/packageinfo/PackageInfo6202 +c net/minecraft/class_8865 net/minecraft/command/FixedCommandAction + f Lcom/mojang/brigadier/context/CommandContext; field_46754 context + f Lnet/minecraft/class_8936; field_47168 flags + f Ljava/lang/String; field_46752 command + m (Lnet/minecraft/class_8839;Lnet/minecraft/class_8854;Lnet/minecraft/class_8937;)V method_54416 execute + m (Ljava/lang/String;Lnet/minecraft/class_8936;Lcom/mojang/brigadier/context/CommandContext;)V + p 3 context + p 2 flags + p 1 command +c net/minecraft/class_7534 net/minecraft/client/gui/screen/TaskScreen + c A screen that is used for indicating that a task is running or has finished\nrunning (either successfully or unsuccessfully). The screen has an optional\nmulti-line description and a button which can be used to close the screen.\nThe button can have a cooldown, which disables the button for a while after\nthe screen is displayed. + f I field_39543 DESCRIPTION_TEXT_WIDTH + f Lnet/minecraft/class_2561; field_39745 descriptionText + f I field_39541 TITLE_TEXT_Y + f I field_39542 DESCRIPTION_TEXT_Y + f Lnet/minecraft/class_2561; field_39544 closeButtonText + f Ljava/lang/Runnable; field_39545 closeCallback + c The callback executed when the button or the Esc key is pressed. This can\nhave a side effect, such as cancelling a task in progress. + f Lnet/minecraft/class_5489; field_39546 description + f Lnet/minecraft/class_4185; field_39547 button + c The button to close the screen (potentially with a side effect, such as cancelling a task). + f I field_39746 buttonCooldown + c How long the button should be disabled after the screen is displayed in ticks.\nCan be disabled by setting to {@code 0}. + m (Lnet/minecraft/class_4185;)V method_44689 method_44689 + p 1 button + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Ljava/lang/Runnable;I)V + p 2 descriptionText + p 1 title + p 4 closeCallback + p 3 closeButtonText + p 5 buttonCooldown + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Ljava/lang/Runnable;)Lnet/minecraft/class_7534; method_44690 createRunningScreen + c {@return a new screen to indicate a task is running}\n\n

The screen has no description or button cooldown. + p 2 closeCallback + p 0 title + p 1 closeButtonText + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Ljava/lang/Runnable;)Lnet/minecraft/class_7534; method_44691 createResultScreen + c {@return a new screen to indicate a task has finished running}\n\n

The screen has a button cooldown of 20 ticks (1 second). + p 3 closeCallback + p 1 descriptionText + p 2 closeButtonText + p 0 title +c net/minecraft/class_893 net/minecraft/client/render/entity/ElderGuardianEntityRenderer + f Lnet/minecraft/class_2960; field_4665 TEXTURE + m (Lnet/minecraft/class_10031;)Lnet/minecraft/class_2960; method_3976 getTexture +c net/minecraft/class_6201 net/minecraft/unused/packageinfo/PackageInfo6201 +c net/minecraft/class_8866 net/minecraft/unused/packageinfo/PackageInfo8866 +c net/minecraft/class_892 net/minecraft/client/render/entity/EndCrystalEntityRenderer + f Lnet/minecraft/class_9946; field_53187 model + f Lnet/minecraft/class_2960; field_4663 TEXTURE + f Lnet/minecraft/class_1921; field_21736 END_CRYSTAL + m (Lnet/minecraft/class_1511;Lnet/minecraft/class_4604;DDD)Z method_3907 shouldRender + m (Lnet/minecraft/class_10014;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3908 render + m (Lnet/minecraft/class_1511;Lnet/minecraft/class_10014;F)V method_62417 updateRenderState + m ()Lnet/minecraft/class_10014; method_62416 createRenderState + m (F)F method_23155 getYOffset +c net/minecraft/class_8863 net/minecraft/command/SteppedCommandAction + f I field_46751 nextActionIndex + f Ljava/util/List; field_46749 actions + f Lnet/minecraft/class_8847; field_46750 selfCommandQueueEntry + f Lnet/minecraft/class_8863$class_8864; field_46748 wrapper + m (Lnet/minecraft/class_8863$class_8864;Ljava/util/List;Lnet/minecraft/class_8937;)V + p 1 wrapper + p 3 frame + p 2 actions + m (Lnet/minecraft/class_8854;Lnet/minecraft/class_8937;Ljava/util/List;Lnet/minecraft/class_8863$class_8864;)V method_54414 enqueueCommands + p 0 context + p 1 frame + p 2 actions + p 3 wrapper +c net/minecraft/class_8863$class_8864 net/minecraft/command/SteppedCommandAction$ActionWrapper + m (Lnet/minecraft/class_8937;Ljava/lang/Object;)Lnet/minecraft/class_8847; create create + p 2 action + p 1 frame +c net/minecraft/class_7532 net/minecraft/client/gui/PlayerSkinDrawer + c Helper class for drawing a player's head on GUI. + f I field_39530 FACE_OVERLAY_Y + f I field_39529 FACE_OVERLAY_X + f I field_39527 FACE_X + f I field_39528 FACE_Y + f I field_39525 FACE_WIDTH + f I field_39526 FACE_HEIGHT + f I field_39534 SKIN_TEXTURE_HEIGHT + f I field_39533 SKIN_TEXTURE_WIDTH + m (Lnet/minecraft/class_332;Lnet/minecraft/class_8685;IIII)V method_44443 draw + c Draws the player's head (including the hat) on GUI. + p 1 textures + p 0 context + p 3 y + p 2 x + p 5 color + p 4 size + m (Lnet/minecraft/class_332;Lnet/minecraft/class_2960;IIIZI)V method_44444 drawHat + p 5 upsideDown + p 6 color + p 3 y + p 4 size + p 1 texture + p 2 x + p 0 context + m (Lnet/minecraft/class_332;Lnet/minecraft/class_2960;IIIZZI)V method_44445 draw + c Draws the player's head on GUI. + p 3 y + p 2 x + p 5 hatVisible + p 4 size + p 7 color + p 6 upsideDown + p 1 texture + p 0 context + m (Lnet/minecraft/class_332;Lnet/minecraft/class_8685;III)V method_52722 draw + p 2 x + p 3 y + p 4 size + p 0 context + p 1 textures +c net/minecraft/class_891 net/minecraft/client/render/entity/DragonFireballEntityRenderer + f Lnet/minecraft/class_2960; field_4661 TEXTURE + f Lnet/minecraft/class_1921; field_21735 LAYER + m (Lnet/minecraft/class_10017;Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_72972 method_72972 + p 2 vertexConsumer + p 1 matricesEntry + m (Lnet/minecraft/class_1670;Lnet/minecraft/class_2338;)I method_24086 getBlockLight + m (Lnet/minecraft/class_4588;Lnet/minecraft/class_4587$class_4665;IFIII)V method_23837 produceVertex + p 1 matrix + p 2 light + p 3 x + p 4 z + p 0 vertexConsumer + p 5 textureU + p 6 textureV +c net/minecraft/class_6203 net/minecraft/unused/packageinfo/PackageInfo6203 +c net/minecraft/class_890 net/minecraft/client/render/entity/DrownedEntityRenderer + f Lnet/minecraft/class_2960; field_4659 TEXTURE + m (Lnet/minecraft/class_10086;Lnet/minecraft/class_4587;FF)V method_4164 setupTransforms + m ()Lnet/minecraft/class_10086; method_62415 createRenderState + m (Lnet/minecraft/class_1551;Lnet/minecraft/class_1306;)Lnet/minecraft/class_572$class_573; method_65565 getArmPose + m (Lnet/minecraft/class_10086;)Lnet/minecraft/class_2960; method_4163 getTexture +c net/minecraft/class_7533 net/minecraft/client/input/CursorMovement + c The types of cursor movement. + f Lnet/minecraft/class_7533; field_39535 ABSOLUTE + c Cursor is moved using an absolute position. + f Lnet/minecraft/class_7533; field_39536 RELATIVE + c Cursor is moved using a relative position. + f Lnet/minecraft/class_7533; field_39537 END + c Cursor is moved to the end of the text. +c net/minecraft/class_7529 net/minecraft/client/gui/widget/EditBoxWidget + c A widget of {@link EditBox}, a multiline edit box with support for\nbasic keyboard shortcuts. This class implements the rendering and scrolling\nfor the edit box. + f Z field_60440 textShadow + f Lnet/minecraft/class_7530; field_39509 editBox + f Lnet/minecraft/class_2561; field_39508 placeholder + c The placeholder text that gets rendered when the edit box is empty. This does not\nget returned from {@link #getText}; an empty string will be returned in such cases. + f I field_60439 textColor + f Lnet/minecraft/class_327; field_39507 textRenderer + f I field_39506 UNFOCUSED_BOX_TEXT_COLOR + f I field_39503 CURSOR_COLOR + f I field_39502 CURSOR_PADDING + f I field_45363 CURSOR_BLINK_INTERVAL + f J field_45364 lastSwitchFocusTime + f Ljava/lang/String; field_39504 UNDERSCORE + f I field_60441 cursorColor + m ()Ljava/lang/String; method_44405 getText + c {@return the current text of the edit box} + m (I)V method_71506 setMaxLines + p 1 maxLines + m ()Lnet/minecraft/class_7529$class_11383; method_71507 builder + m (Ljava/lang/String;Z)V method_72234 setText + p 2 allowOverflow + p 1 text + m (Ljava/util/function/Consumer;)V method_44401 setChangeListener + c Sets the change listener that is called every time the text changes. + p 1 changeListener + c the listener that takes the new text of the edit box + m ()V method_44407 onCursorChange + m (DD)V method_44404 moveCursor + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/class_327;IIIILnet/minecraft/class_2561;Lnet/minecraft/class_2561;IZIZZ)V + p 2 x + p 3 y + p 1 textRenderer + p 12 hasOverlay + p 10 cursorColor + p 11 hasBackground + p 8 textColor + p 9 textShadow + p 6 placeholder + p 7 message + p 4 width + p 5 height + m (Ljava/lang/String;)V method_44400 setText + c Sets the text of the edit box and moves the cursor to the end of the edit box. + p 1 text + m (I)V method_44402 setMaxLength + c Sets the maximum length of the edit box text in characters.\n\n

If {@code maxLength} equals {@link EditBox#UNLIMITED_LENGTH}, the edit box does not\nhave a length limit, and the widget does not show the current text length indicator.\n\n@throws IllegalArgumentException if {@code maxLength} is negative\n@see EditBox#setMaxLength + p 1 maxLength +c net/minecraft/class_7529$class_11383 net/minecraft/client/gui/widget/EditBoxWidget$Builder + f Lnet/minecraft/class_2561; field_60444 placeholder + f Z field_60446 textShadow + f Z field_60448 hasBackground + f Z field_60449 hasOverlay + f I field_60442 x + f I field_60445 textColor + f I field_60443 y + f I field_60447 cursorColor + m (Lnet/minecraft/class_327;IILnet/minecraft/class_2561;)Lnet/minecraft/class_7529; method_71509 build + p 1 textRenderer + p 4 message + p 2 width + p 3 height + m (I)Lnet/minecraft/class_7529$class_11383; method_71512 y + p 1 y + m (I)Lnet/minecraft/class_7529$class_11383; method_71514 textColor + p 1 textColor + m (I)Lnet/minecraft/class_7529$class_11383; method_71516 cursorColor + p 1 cursorColor + m (I)Lnet/minecraft/class_7529$class_11383; method_71508 x + p 1 x + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_7529$class_11383; method_71510 placeholder + p 1 placeholder + m (Z)Lnet/minecraft/class_7529$class_11383; method_71511 textShadow + p 1 textShadow + m (Z)Lnet/minecraft/class_7529$class_11383; method_71513 hasBackground + p 1 hasBackground + m (Z)Lnet/minecraft/class_7529$class_11383; method_71515 hasOverlay + p 1 hasOverlay +c net/minecraft/class_7505 net/minecraft/datafixer/fix/ItemNbtFix + f Ljava/util/function/Predicate; field_39404 itemIdPredicate + f Ljava/lang/String; field_39403 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Predicate;)V + p 3 itemIdPredicate + p 2 name + p 1 outputSchema + m (Lcom/mojang/datafixers/OpticFinder;Ljava/util/function/Predicate;Lcom/mojang/datafixers/OpticFinder;Ljava/util/function/UnaryOperator;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56970 method_56970 + p 4 itemStackTyped + m (Lcom/mojang/datafixers/types/Type;Ljava/util/function/Predicate;Ljava/util/function/UnaryOperator;)Ljava/util/function/UnaryOperator; method_56971 fixNbt + p 2 nbtFixer + p 1 itemIdPredicate + p 0 itemStackType + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_66067 fix + p 1 typed +c net/minecraft/class_8836 net/minecraft/entity/vehicle/VehicleEntity + f Lnet/minecraft/class_2940; field_46657 DAMAGE_WOBBLE_STRENGTH + f Lnet/minecraft/class_2940; field_46655 DAMAGE_WOBBLE_TICKS + f Lnet/minecraft/class_2940; field_46656 DAMAGE_WOBBLE_SIDE + m (Lnet/minecraft/class_1282;)Z method_55056 shouldAlwaysKill + p 1 source + m ()Lnet/minecraft/class_1792; method_7557 asItem + m ()F method_54294 getDamageWobbleStrength + m ()I method_54296 getDamageWobbleSide + m ()I method_54295 getDamageWobbleTicks + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;)V method_7516 killAndDropSelf + p 1 world + p 2 damageSource + m (I)V method_54300 setDamageWobbleSide + p 1 damageWobbleSide + m (I)V method_54299 setDamageWobbleTicks + p 1 damageWobbleTicks + m (F)V method_54297 setDamageWobbleStrength + p 1 damageWobbleStrength + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1792;)V method_54298 killAndDropItem + p 2 item + p 1 world +c net/minecraft/class_7506 net/minecraft/datafixer/fix/PointOfInterestRemoveFix + f Ljava/util/function/Predicate; field_39405 keepPredicate + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Predicate;)V + p 1 outputSchema + p 3 removePredicate + p 2 name + m (Lcom/mojang/serialization/Dynamic;)Z method_44195 shouldKeepRecord + p 1 dynamic +c net/minecraft/class_7503 net/minecraft/datafixer/fix/RemoveFilteredBookTextFix + m (Ljava/lang/String;)Z method_44189 method_44189 + p 0 itemId + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66068 method_66068 + p 0 nbt + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_7504 net/minecraft/datafixer/fix/RemoveFilteredSignTextFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_7501 net/minecraft/network/encryption/Signer + f Lorg/slf4j/Logger; field_39399 LOGGER + m (Lnet/minecraft/class_7498;)[B sign sign + p 1 updatable + m (Ljava/security/PrivateKey;Ljava/lang/String;)Lnet/minecraft/class_7501; method_44179 create + p 1 algorithm + p 0 privateKey + m (Ljava/lang/String;Ljava/security/PrivateKey;Lnet/minecraft/class_7498;)[B method_44178 method_44178 + p 2 updatable + m ([B)[B method_44180 sign + p 1 data + m ([BLnet/minecraft/class_7498$class_7499;)V method_44181 method_44181 + p 1 updater +c net/minecraft/class_7500 net/minecraft/network/encryption/SignatureVerifier + f Lnet/minecraft/class_7500; field_39397 NOOP + f Lorg/slf4j/Logger; field_39398 LOGGER + m (Ljava/util/Collection;Lnet/minecraft/class_7498;[B)Z method_51496 method_51496 + p 1 updatable + p 2 signatureData + m ([BLnet/minecraft/class_7498$class_7499;)V method_44176 method_44176 + p 1 updater + m (Lnet/minecraft/class_7498;[BLjava/security/Signature;)Z method_44171 verify + p 0 updatable + p 1 signatureData + p 2 signature + m (Lnet/minecraft/class_7498;[BLcom/mojang/authlib/yggdrasil/ServicesKeyInfo;)Z method_44173 method_44173 + p 2 keyInfo + m (Lnet/minecraft/class_7498;[B)Z method_44170 method_44170 + p 0 updatable + p 1 signatureData + m ([B[B)Z method_44177 validate + p 2 signatureData + p 1 signedData + m (Ljava/lang/String;Ljava/security/PublicKey;Lnet/minecraft/class_7498;[B)Z method_44174 method_44174 + p 3 signatureData + p 2 updatable + m (Lnet/minecraft/class_7498;[B)Z validate validate + p 1 updatable + p 2 signatureData + m (Lcom/mojang/authlib/yggdrasil/ServicesKeySet;Lcom/mojang/authlib/yggdrasil/ServicesKeyType;)Lnet/minecraft/class_7500; method_44172 create + p 0 servicesKeySet + p 1 servicesKeyType + m (Ljava/security/PublicKey;Ljava/lang/String;)Lnet/minecraft/class_7500; method_44175 create + p 0 publicKey + p 1 algorithm +c net/minecraft/class_8828 net/minecraft/text/PlainTextContent + f Lcom/mojang/serialization/MapCodec; field_46623 CODEC + f Lnet/minecraft/class_8828; field_46625 EMPTY + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54231 method_54231 + p 0 instance + m (Ljava/lang/String;)Lnet/minecraft/class_8828; method_54232 of + p 0 string + m ()Ljava/lang/String; comp_737 string +c net/minecraft/class_8828$class_2585 net/minecraft/text/PlainTextContent$Literal + f Ljava/lang/String; comp_737 string + m (Ljava/lang/String;)V + p 1 string +c net/minecraft/class_8847 net/minecraft/command/CommandQueueEntry + f Lnet/minecraft/class_8937; comp_2021 frame + f Lnet/minecraft/class_8853; comp_1993 action + m (Lnet/minecraft/class_8854;)V method_54388 execute + p 1 context + m ()Lnet/minecraft/class_8937; comp_2021 frame + m ()Lnet/minecraft/class_8853; comp_1993 action + m (Lnet/minecraft/class_8937;Lnet/minecraft/class_8853;)V + p 1 frame + p 2 action +c net/minecraft/class_8848 net/minecraft/command/ControlFlowAware + m (Ljava/lang/Object;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_8936;Lnet/minecraft/class_8855;)V method_54290 execute + p 3 flags + p 4 control + p 1 source + p 2 contextChain +c net/minecraft/class_8848$class_8849 net/minecraft/command/ControlFlowAware$Command + m (Lcom/mojang/brigadier/context/CommandContext;)I run run + p 1 context +c net/minecraft/class_8848$class_8850 net/minecraft/command/ControlFlowAware$Helper + m (Lnet/minecraft/class_8839;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_8936;Lnet/minecraft/class_8855;)V method_54259 executeInner + p 1 source + p 2 contextChain + p 3 flags + p 4 control + m (Lnet/minecraft/class_8839;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_8936;Lnet/minecraft/class_8855;)V method_54389 execute + m (Lcom/mojang/brigadier/exceptions/CommandSyntaxException;Lnet/minecraft/class_8839;Lnet/minecraft/class_8936;Lnet/minecraft/class_6346;)V method_54255 sendError + p 2 source + p 1 exception + p 4 tracer + p 3 flags +c net/minecraft/class_8845 net/minecraft/client/particle/DustPlumeParticle + f I field_46725 COLOR + m (Lnet/minecraft/class_638;DDDDDDFLnet/minecraft/class_4002;)V + p 6 z + p 8 velocityX + p 2 x + p 1 world + p 4 y + p 14 scaleMultiplier + p 15 spriteProvider + p 10 velocityY + p 12 velocityZ +c net/minecraft/class_8845$class_8846 net/minecraft/client/particle/DustPlumeParticle$Factory + f Lnet/minecraft/class_4002; field_46726 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_54387 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_7510 net/minecraft/world/gen/feature/util/PlacedFeatureIndexer + c A class for indexing placed features with a feature order cycle detection.\n\n

Placed features have the {@link net.minecraft.world.gen.GenerationStep.Feature\ngeneration steps}, and they generate in that order. For example, if biome X registers\nthe placed feature A in the {@link\nnet.minecraft.world.gen.GenerationStep.Feature#UNDERGROUND_ORES} step and the\nplaced feature B and C in the {@link\nnet.minecraft.world.gen.GenerationStep.Feature#TOP_LAYER_MODIFICATION} step,\nthen B and C generate after A. If, then, biome Y registers B in the {@link\nnet.minecraft.world.gen.GenerationStep.Feature#LOCAL_MODIFICATIONS}, this will\ncause a "feature order cycle", because B should generate after A\naccording to the biome X, but A should generate after B according to biome Y. This\nis wrong and causes a crash.\n\n

In other words, "feature order cycle" occurs when placed features are\nregistered in multiple generation steps, due to e.g. reusing vanilla features.\nTo prevent this error, make sure to generate the feature in the same generation step\nas vanilla, and if that is not possible, create a new feature. + m (ILnet/minecraft/class_7510$class_6543;)Z method_44208 method_44208 + p 1 feature + m (Ljava/util/Comparator;Lnet/minecraft/class_7510$class_6543;)Ljava/util/Set; method_44209 method_44209 + p 1 feature + m (Ljava/util/List;Ljava/util/function/Function;Z)Ljava/util/List; method_44210 collectIndexedFeatures + c {@return the indexed placed features collected after validating feature orders}\n\n@throws IllegalStateException when a feature order cycle is detected\n\n@apiNote Check the class documentation for what feature order cycle means. + p 2 listInvolvedBiomesOnFailure + c whether to include involved biomes in the thrown exception + p 1 biomesToPlacedFeaturesList + c a function that, given a biome, returns a list of placed features grouped\nby their generation steps + p 0 biomes + m (Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/lang/Object;)I method_44211 method_44211 + p 1 feature +c net/minecraft/class_7510$class_6827 net/minecraft/world/gen/feature/util/PlacedFeatureIndexer$IndexedFeatures + f Ljava/util/List; comp_303 features + f Ljava/util/function/ToIntFunction; comp_304 indexMapping + m (Ljava/util/List;)V + p 1 features + m ()Ljava/util/function/ToIntFunction; comp_304 indexMapping + m ()Ljava/util/List; comp_303 features + m (Ljava/util/List;Ljava/util/function/ToIntFunction;)V + p 1 features + p 2 indexMapping +c net/minecraft/class_7510$class_6543 net/minecraft/world/gen/feature/util/PlacedFeatureIndexer$IndexedFeature + f I comp_68 step + f Lnet/minecraft/class_6796; comp_69 feature + f I comp_234 featureIndex + m ()I comp_68 step + m ()I comp_234 featureIndex + m ()Lnet/minecraft/class_6796; comp_69 feature + m (IILnet/minecraft/class_6796;)V + p 1 featureIndex + p 2 step + p 3 feature +c net/minecraft/class_7511 net/minecraft/world/gen/chunk/ChunkGenerators + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_44219 registerAndGetDefault + p 0 registry +c net/minecraft/class_7509 net/minecraft/world/biome/source/BiomeSources + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_44207 registerAndGetDefault + p 0 registry +c net/minecraft/class_7507 net/minecraft/datafixer/fix/PointOfInterestRenameFix + f Ljava/util/function/Function; field_39406 renamer + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Function;)V + p 1 outputSchema + p 3 renamer + p 2 name +c net/minecraft/class_8839 net/minecraft/server/command/AbstractServerCommandSource + m (Lcom/mojang/brigadier/exceptions/CommandExceptionType;Lcom/mojang/brigadier/Message;ZLnet/minecraft/class_6346;)V method_54491 handleException + p 1 type + p 2 message + p 3 silent + p 4 tracer + m ()Lnet/minecraft/class_8839; method_54311 withDummyReturnValueConsumer + m ()Z method_54882 isSilent + m ()Lcom/mojang/brigadier/CommandDispatcher; method_54310 getDispatcher + m ()Lcom/mojang/brigadier/ResultConsumer; method_54317 asResultConsumer + m (Lcom/mojang/brigadier/context/CommandContext;ZI)V method_54316 method_54316 + p 2 result + p 1 success + p 0 context + m (Lcom/mojang/brigadier/exceptions/CommandSyntaxException;ZLnet/minecraft/class_6346;)V method_54495 handleException + p 3 tracer + p 2 silent + p 1 exception + m (Lnet/minecraft/class_8935;)Lnet/minecraft/class_8839; method_54307 withReturnValueConsumer + p 1 returnValueConsumer + m ()Lnet/minecraft/class_8935; method_54881 getReturnValueConsumer +c net/minecraft/class_7508 net/minecraft/datafixer/fix/RenameVariantsFix + f Ljava/util/Map; field_39407 oldToNewNames + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44200 method_44200 + p 1 variant + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44198 method_44198 + p 1 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Ljava/util/Map;)V + p 1 outputSchema + p 2 name + p 3 type + p 4 choiceName + p 5 oldToNewNames + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_44199 method_44199 + p 2 variantName +c net/minecraft/class_841 net/minecraft/client/render/block/entity/EndGatewayBlockEntityRenderer + f Lnet/minecraft/class_2960; field_4409 BEAM_TEXTURE + m ()Lnet/minecraft/class_11965; method_74392 createRenderState + m (Lnet/minecraft/class_11965;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_22751 render + m (Lnet/minecraft/class_2643;Lnet/minecraft/class_11965;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74391 updateRenderState +c net/minecraft/class_840 net/minecraft/client/render/block/entity/AbstractEndPortalBlockEntityRenderer + f Lnet/minecraft/class_2960; field_4407 PORTAL_TEXTURE + f Lnet/minecraft/class_2960; field_4406 SKY_TEXTURE + m (Lnet/minecraft/class_11966;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3591 render + m (Ljava/util/EnumSet;Lorg/joml/Matrix4f;Lnet/minecraft/class_4588;FFFFFFFFLnet/minecraft/class_2350;)V method_23085 renderSide + p 12 side + p 3 vertices + p 2 model + p 1 sides + p 7 y2 + p 6 y1 + p 5 x2 + p 4 x1 + p 11 z4 + p 10 z3 + p 9 z2 + p 8 z1 + m (Lnet/minecraft/class_2640;Lnet/minecraft/class_11966;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74332 updateRenderState + m ()Lnet/minecraft/class_1921; method_34589 getLayer + m ()F method_35793 getBottomYOffset + m (Ljava/util/EnumSet;Lorg/joml/Matrix4f;Lnet/minecraft/class_4588;)V method_23084 renderSides + p 1 sides + p 2 matrix + p 3 vertexConsumer + m ()F method_3594 getTopYOffset + m (Lnet/minecraft/class_11966;Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_73539 method_73539 + p 3 vertexConsumer + p 2 matricesEntry +c net/minecraft/class_846 net/minecraft/client/render/chunk/ChunkBuilder + f Ljava/util/Queue; field_61029 renderQueue + f Lnet/minecraft/class_638; field_20831 world + f Lnet/minecraft/class_750; field_20828 buffers + f Ljava/util/concurrent/Executor; field_61028 uploadExecutor + f Lnet/minecraft/class_8901; field_46907 buffersPool + f Lnet/minecraft/class_9810; field_52171 sectionBuilder + f Lnet/minecraft/class_10207; field_20830 executor + f Lnet/minecraft/class_10176; field_54167 consecutiveExecutor + f Lnet/minecraft/class_761; field_20832 worldRenderer + f Ljava/util/Queue; field_4443 uploadQueue + f Lnet/minecraft/class_10160; field_53957 scheduler + f Z field_46908 stopped + f Lnet/minecraft/class_243; field_18766 cameraPosition + m ()V method_22763 scheduleRunTasks + m ()I method_34846 getChunksToUpload + m ()Ljava/lang/String; method_3622 getDebugString + m ()I method_72046 getScheduledTaskCount + m (Lnet/minecraft/class_846$class_851$class_4577;)V method_22756 send + p 1 task + m (Lnet/minecraft/class_846$class_851;Lnet/minecraft/class_6850;)V method_3627 rebuild + p 2 builder + p 1 chunk + m ()Z method_3630 isEmpty + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_38555 method_38555 + p 0 future + m (Lnet/minecraft/class_846$class_851$class_4577;Lnet/minecraft/class_750;Lnet/minecraft/class_846$class_4690;Ljava/lang/Throwable;)V method_22755 method_22755 + p 4 throwable + p 3 result + m ()V method_3619 stop + m ()I method_34847 getFreeBufferCount + m (Lnet/minecraft/class_638;Lnet/minecraft/class_761;Lnet/minecraft/class_10207;Lnet/minecraft/class_4599;Lnet/minecraft/class_776;Lnet/minecraft/class_824;)V + p 1 world + p 2 worldRenderer + p 3 executor + p 4 bufferBuilderStorage + p 5 blockRenderManager + p 6 blockEntityRenderDispatcher + m (Lnet/minecraft/class_243;)V method_19419 setCameraPosition + p 1 cameraPosition + m (Lnet/minecraft/class_638;)V method_22752 setWorld + p 1 world + m ()V method_22761 upload + m ()V method_72045 cancelAllTasks +c net/minecraft/class_846$class_4690 net/minecraft/client/render/chunk/ChunkBuilder$Result + f Lnet/minecraft/class_846$class_4690; field_21439 CANCELLED + f Lnet/minecraft/class_846$class_4690; field_21438 SUCCESSFUL +c net/minecraft/class_846$class_851 net/minecraft/client/render/chunk/ChunkBuilder$BuiltChunk + f J field_53958 sectionPos + f Lnet/minecraft/class_846$class_851$class_4579; field_4461 sortTask + f Z field_4464 needsRebuild + f I field_32832 CHUNK_SIZE + f I field_29641 index + f Lnet/minecraft/class_2338$class_2339; field_4467 origin + f Ljava/util/concurrent/atomic/AtomicReference; field_60949 currentRenderData + f Z field_4463 needsImportantRebuild + f Lnet/minecraft/class_238; field_4458 boundingBox + f Lnet/minecraft/class_846$class_851$class_4578; field_20834 rebuildTask + m (Lnet/minecraft/class_11517;)V method_72049 setCurrentRenderData + p 1 data + m (J)V method_62973 setSectionPos + p 1 sectionPos + m (J)Z method_3651 isChunkNonEmpty + p 1 sectionPos + m (Lnet/minecraft/class_2350;)J method_62974 getOffsetSectionPos + p 1 direction + m (Lnet/minecraft/class_6850;)V method_22781 rebuild + p 1 builder + m (Lnet/minecraft/class_6850;)V method_22777 scheduleRebuild + p 1 builder + m (Lnet/minecraft/class_11516;Lnet/minecraft/class_9799$class_9800;Lnet/minecraft/class_11515;)Ljava/util/concurrent/CompletableFuture; method_68531 uploadIndices + p 1 data + p 2 buffer + p 3 layer + m ()Lnet/minecraft/class_238; method_40051 getBoundingBox + m ()Z method_3673 shouldBuild + m ()Z method_3661 needsImportantRebuild + m ()Z method_64065 hasTranslucentLayer + m (Lnet/minecraft/class_11516;Lnet/minecraft/class_11515;Lnet/minecraft/class_9801;)V method_72048 method_72048 + p 2 layer + p 3 buffer + m ()Lnet/minecraft/class_11517; method_72052 getCurrentRenderData + m ()V method_3675 clear + m ()V method_3663 cancel + m (Lnet/minecraft/class_4076;)Lnet/minecraft/class_8251; method_60909 getVertexSorter + p 1 sectionPos + m ()J method_62975 getSectionPos + m (Lnet/minecraft/class_846;)V method_22773 scheduleSort + p 1 builder + m ()Lnet/minecraft/class_2338; method_3670 getOrigin + m (Lnet/minecraft/class_846;IJ)V + p 3 sectionPos + p 2 index + m ()V method_3662 cancelRebuild + m (Ljava/util/Map;Lnet/minecraft/class_11516;)Ljava/util/concurrent/CompletableFuture; method_72050 uploadLayer + p 2 renderData + p 1 buffersByLayer + m (Lnet/minecraft/class_6850;)Lnet/minecraft/class_846$class_851$class_4577; method_3674 createRebuildTask + p 1 builder + m ()Z method_64066 isCurrentlySorting + m (Z)V method_3654 scheduleRebuild + p 1 important + m ()Z method_3672 needsRebuild +c net/minecraft/class_846$class_851$class_4579 net/minecraft/client/render/chunk/ChunkBuilder$BuiltChunk$SortTask + f Lnet/minecraft/class_11516; field_60950 renderData + m (Lnet/minecraft/class_846$class_851;Lnet/minecraft/class_11516;)V + p 2 data +c net/minecraft/class_846$class_851$class_4578 net/minecraft/client/render/chunk/ChunkBuilder$BuiltChunk$RebuildTask + f Lnet/minecraft/class_853; field_20838 region + m (Lnet/minecraft/class_846$class_851;Lnet/minecraft/class_853;Z)V + p 3 prioritized + p 2 region +c net/minecraft/class_846$class_851$class_4577 net/minecraft/client/render/chunk/ChunkBuilder$BuiltChunk$Task + f Z field_53959 prioritized + f Ljava/util/concurrent/atomic/AtomicBoolean; field_54169 finished + f Ljava/util/concurrent/atomic/AtomicBoolean; field_20836 cancelled + m ()Lnet/minecraft/class_2338; method_62977 getOrigin + m (Lnet/minecraft/class_846$class_851;Z)V + p 2 prioritized + m (Lnet/minecraft/class_750;)Ljava/util/concurrent/CompletableFuture; method_22783 run + p 1 buffers + m ()Z method_62976 isPrioritized + m ()Ljava/lang/String; method_38556 getName + m ()V method_22782 cancel +c net/minecraft/class_8812 net/minecraft/block/ColoredFallingBlock + f Lcom/mojang/serialization/MapCodec; field_46316 CODEC + f Lnet/minecraft/class_8805; field_46317 color + m (Lnet/minecraft/class_8805;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 color + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53996 method_53996 + p 0 instance + m (Lnet/minecraft/class_8812;)Lnet/minecraft/class_8805; method_53997 method_53997 + p 0 block +c net/minecraft/class_8813 net/minecraft/block/SaplingGenerator + f Ljava/util/Map; field_46520 GENERATORS + f F field_46522 rareChance + f Lcom/mojang/serialization/Codec; field_46510 CODEC + f Ljava/util/Optional; field_46523 megaVariant + f Ljava/util/Optional; field_46527 beesVariant + f Ljava/util/Optional; field_46526 rareRegularVariant + f Ljava/util/Optional; field_46525 regularVariant + f Ljava/lang/String; field_46521 id + f Ljava/util/Optional; field_46524 rareMegaVariant + f Ljava/util/Optional; field_46528 rareBeesVariant + f Lnet/minecraft/class_8813; field_46513 MANGROVE + f Lnet/minecraft/class_8813; field_46512 SPRUCE + f Lnet/minecraft/class_8813; field_46511 OAK + f Lnet/minecraft/class_8813; field_46515 BIRCH + f Lnet/minecraft/class_8813; field_46514 AZALEA + f Lnet/minecraft/class_8813; field_46517 ACACIA + f Lnet/minecraft/class_8813; field_46516 JUNGLE + f Lnet/minecraft/class_8813; field_46519 DARK_OAK + f Lnet/minecraft/class_8813; field_46518 CHERRY + f Lnet/minecraft/class_8813; field_54791 PALE_OAK + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_54088 areFlowersNearby + p 1 world + p 2 pos + m (Ljava/lang/String;FLjava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 2 rareChance + p 1 id + p 8 rareBeesVariant + p 7 beesVariant + p 6 rareRegularVariant + p 5 regularVariant + p 4 rareMegaVariant + p 3 megaVariant + m (Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 4 beesVariant + p 2 megaVariant + p 3 regularVariant + p 1 id + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_5321; method_54086 getMegaTreeFeature + p 1 random + m (Lnet/minecraft/class_5819;Z)Lnet/minecraft/class_5321; method_54087 getSmallTreeFeature + p 2 flowersNearby + p 1 random + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2794;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_5819;)Z method_54085 generate + p 5 random + p 4 state + p 3 pos + p 2 chunkGenerator + p 1 world + m (Lnet/minecraft/class_8813;)Ljava/lang/String; method_54089 method_54089 + p 0 generator + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;II)Z method_54090 canGenerateLargeTree + p 3 x + p 4 z + p 0 state + p 1 world + p 2 pos +c net/minecraft/class_8810 net/minecraft/block/AbstractTorchBlock + f Lnet/minecraft/class_265; field_46271 SHAPE +c net/minecraft/class_8811 net/minecraft/block/BlockTypes + f Lcom/mojang/serialization/MapCodec; field_46281 CODEC + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_53979 registerAndGetDefault + p 0 registry +c net/minecraft/class_12175 net/minecraft/world/debug/gizmo/Gizmo + m (Lnet/minecraft/class_12177;F)V method_75531 draw + p 1 consumer + p 2 opacity +c net/minecraft/class_12174 net/minecraft/world/debug/gizmo/BoxGizmo + f Z comp_5099 coloredCornerStroke + f Lnet/minecraft/class_238; comp_5097 aabb + f Lnet/minecraft/class_12179; comp_5098 style + m ()Z comp_5099 coloredCornerStroke + m ()Lnet/minecraft/class_238; comp_5097 aabb + m ()Lnet/minecraft/class_12179; comp_5098 style + m (Lnet/minecraft/class_238;Lnet/minecraft/class_12179;Z)V + p 1 aabb + p 2 style + p 3 coloredCornerStroke +c net/minecraft/class_12173 net/minecraft/world/debug/gizmo/CircleGizmo + f I field_63653 NUM_VERTICES + f F field_63654 ANGLE_INTERVAL + f Lnet/minecraft/class_12179; comp_5096 style + f Lnet/minecraft/class_243; comp_5094 pos + f F comp_5095 radius + m ()F comp_5095 radius + m ()Lnet/minecraft/class_243; comp_5094 pos + m ()Lnet/minecraft/class_12179; comp_5096 style + m (Lnet/minecraft/class_243;FLnet/minecraft/class_12179;)V + p 1 pos + p 2 radius + p 3 style +c net/minecraft/class_8809 net/minecraft/datafixer/fix/TextFixes + f Ljava/lang/String; field_46246 EMPTY_TEXT + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_53963 translate + p 0 ops + p 1 key + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_53961 text + p 0 ops + p 1 string + m (Ljava/lang/String;)Ljava/lang/String; method_66041 translate + p 0 string + m (Ljava/lang/String;)Ljava/lang/String; method_53962 text + p 0 string + m (Ljava/lang/String;)Ljava/lang/String; method_56629 parseLenientJson + p 0 json + m (Ljava/lang/String;)Ljava/util/Optional; method_58596 getTranslate + p 0 json + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; method_53960 empty + p 0 ops +c net/minecraft/class_12172 net/minecraft/world/debug/gizmo/ArrowGizmo + f Lnet/minecraft/class_243; comp_5090 start + f Lnet/minecraft/class_243; comp_5091 end + f I comp_5092 color + f F comp_5093 width + m ()F comp_5093 width + m ()I comp_5092 color + m ()Lnet/minecraft/class_243; comp_5091 end + m ()Lnet/minecraft/class_243; comp_5090 start + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;IF)V + p 1 start + p 2 end + p 3 color + p 4 width +c net/minecraft/class_12179 net/minecraft/client/render/DrawStyle + f F field_63655 DEFAULT_STROKE_WIDTH + f I comp_5100 stroke + f F comp_5101 strokeWidth + f I comp_5102 fill + m (I)Lnet/minecraft/class_12179; method_75535 stroked + p 0 stroke + m (IF)Lnet/minecraft/class_12179; method_75536 stroked + p 0 stroke + p 1 strokeWidth + m (I)Lnet/minecraft/class_12179; method_75539 filled + p 0 fill + m (IFI)Lnet/minecraft/class_12179; method_75537 filledAndStroked + p 2 fill + p 0 stroke + p 1 strokeWidth + m ()Z method_75538 hasStroke + m (F)I method_75853 stroke + p 1 opacity + m ()Z method_75534 hasFill + m (F)I method_75854 fill + p 1 opacity + m ()I comp_5102 fill + m ()I comp_5100 stroke + m ()F comp_5101 strokeWidth + m (IFI)V + p 1 stroke + p 2 strokeWidth + p 3 fill +c net/minecraft/class_12178 net/minecraft/world/debug/gizmo/VisibilityConfigurable + m ()Lnet/minecraft/class_12178; method_75852 fadeOut + m ()Lnet/minecraft/class_12178; method_75533 ignoreOcclusion + m (I)Lnet/minecraft/class_12178; method_75851 withLifespan + p 1 lifespan +c net/minecraft/class_12177 net/minecraft/world/debug/gizmo/GizmoDrawer + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;IF)V method_75473 addLine + p 4 width + p 1 start + p 2 end + p 3 color + m (Lnet/minecraft/class_243;IF)V method_75472 addPoint + p 1 pos + p 3 size + p 2 color + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_243;I)V method_75474 addQuad + p 4 d + p 3 c + p 2 b + p 1 a + p 5 color + m ([Lnet/minecraft/class_243;I)V method_75478 addPolygon + p 2 color + p 1 vertices + m (Lnet/minecraft/class_243;Ljava/lang/String;Lnet/minecraft/class_12187$class_12188;)V method_75475 addText + p 2 text + p 3 style + p 1 pos +c net/minecraft/class_8805 net/minecraft/util/ColorCode + f Lcom/mojang/serialization/Codec; field_46234 CODEC + f I comp_1971 rgba + m ()I comp_1971 rgba + m (I)V + p 1 rgba +c net/minecraft/class_12176 net/minecraft/world/debug/gizmo/GizmoCollector + f Lnet/minecraft/class_12178; field_64085 NOOP_CONFIGURABLE + f Lnet/minecraft/class_12176; field_64086 EMPTY + m (Lnet/minecraft/class_12175;)Lnet/minecraft/class_12178; method_75532 collect + p 1 gizmo + m (Lnet/minecraft/class_12175;)Lnet/minecraft/class_12178; method_76038 method_76038 + p 0 gizmo +c net/minecraft/class_839 net/minecraft/client/render/block/entity/MobSpawnerBlockEntityRenderer + f Lnet/minecraft/class_898; field_38885 entityRenderDispatcher + m (Lnet/minecraft/class_2636;Lnet/minecraft/class_11973;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74388 updateRenderState + m (Lnet/minecraft/class_11973;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3589 render + m ()Lnet/minecraft/class_11973; method_74387 createRenderState + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 ctx + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_10017;Lnet/minecraft/class_898;FFLnet/minecraft/class_12075;)V method_55253 renderDisplayEntity + p 0 matrices + p 1 queue + p 2 state + p 3 entityRenderDispatcher + p 4 rotation + p 5 scale + p 6 cameraRenderState +c net/minecraft/class_838 net/minecraft/client/render/block/entity/StructureBlockBlockEntityRenderer + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_11955;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74358 updateRenderState + m (Lnet/minecraft/class_11955;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_74359 render + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_11955;)V method_74357 updateStructureBoxRenderState + p 0 blockEntity + p 1 state + m (Lnet/minecraft/class_11955;Lnet/minecraft/class_2338;Lnet/minecraft/class_2382;)V method_61047 renderStructureVoids + p 3 size + p 2 pos + p 1 state + m (Lnet/minecraft/class_11955;Lnet/minecraft/class_2338;Lnet/minecraft/class_2382;)V method_3585 renderInvisibleBlocks + p 1 state + p 2 pos + p 3 size + m ()Lnet/minecraft/class_11955; method_74356 createRenderState +c net/minecraft/class_837 net/minecraft/client/render/block/entity/SignBlockEntityRenderer + f Lnet/minecraft/class_243; field_44578 TEXT_OFFSET + f Ljava/util/Map; field_27754 typeToModelPair + f F field_44577 SCALE + m (Z)Lnet/minecraft/class_5607; method_32154 getTexturedModelData + p 0 standing + m (Lnet/minecraft/class_5614$class_5615;Lnet/minecraft/class_4719;)Lnet/minecraft/class_837$class_9985; method_32158 method_32158 + p 1 signType + m (Lnet/minecraft/class_4587;)V method_72164 setTransformsForItem + p 0 matrices + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 ctx + m (Lnet/minecraft/class_11701;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IILnet/minecraft/class_3879$class_9948;Lnet/minecraft/class_4730;)V method_45800 renderAsItem + p 6 texture + p 2 queue + p 3 light + p 4 overlay + p 5 model + p 0 spriteHolder + p 1 matrices + m (Lnet/minecraft/class_4587;F)V method_65831 setAngles + p 1 blockRotationDegrees + p 0 matrices + m (Lnet/minecraft/class_4719;)Lnet/minecraft/class_4719; method_32156 method_32156 + p 0 signType + m (Lnet/minecraft/class_5599;Lnet/minecraft/class_4719;Z)Lnet/minecraft/class_3879$class_9948; method_32157 createSignModel + p 1 type + p 0 models + p 2 standing +c net/minecraft/class_837$class_9985 net/minecraft/client/render/block/entity/SignBlockEntityRenderer$SignModelPair + f Lnet/minecraft/class_3879$class_9948; comp_3055 standing + f Lnet/minecraft/class_3879$class_9948; comp_3056 wall + m ()Lnet/minecraft/class_3879$class_9948; comp_3056 wall + m ()Lnet/minecraft/class_3879$class_9948; comp_3055 standing + m (Lnet/minecraft/class_3879$class_9948;Lnet/minecraft/class_3879$class_9948;)V + p 1 standing + p 2 wall +c net/minecraft/class_836 net/minecraft/client/render/block/entity/SkullBlockEntityRenderer + f Ljava/util/Map; field_4390 TEXTURES + f Ljava/util/function/Function; field_4391 models + f Lnet/minecraft/class_11786; field_62253 skinCache + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_72165 getTranslucentRenderLayer + p 0 texture + m (Lnet/minecraft/class_5599;Lnet/minecraft/class_2484$class_2485;)Lnet/minecraft/class_5598; method_32160 getModels + p 0 models + p 1 type + m (Lnet/minecraft/class_2484$class_2485;Lnet/minecraft/class_2631;)Lnet/minecraft/class_1921; method_32161 renderSkull + p 1 skullType + p 2 blockEntity + m (Lnet/minecraft/class_11972;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3577 render + m (Lnet/minecraft/class_5599;Lnet/minecraft/class_2484$class_2485;)Lnet/minecraft/class_5598; method_65563 method_65563 + p 1 type + m (Lnet/minecraft/class_2350;FFLnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_5598;Lnet/minecraft/class_1921;ILnet/minecraft/class_11683$class_11792;)V method_72958 render + p 9 crumblingOverlay + p 0 facing + p 2 poweredTicks + p 1 yaw + p 4 queue + p 3 matrices + p 6 model + p 5 light + p 8 outlineColor + p 7 renderLayer + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 context + m ()Lnet/minecraft/class_11972; method_74385 createRenderState + m (Lnet/minecraft/class_2484$class_2485;Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_3578 getCutoutRenderLayer + p 0 type + p 1 texture + m (Lnet/minecraft/class_2631;Lnet/minecraft/class_11972;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74386 updateRenderState + m (Ljava/util/HashMap;)V method_3580 method_3580 + p 0 map +c net/minecraft/class_853 net/minecraft/client/render/chunk/ChunkRendererRegion + f [Lnet/minecraft/class_6849; field_60946 renderedChunks + f I field_60943 baseX + f I field_60944 baseY + f Lnet/minecraft/class_1937; field_4490 world + f I field_60945 baseZ + f I field_52161 SIDE_LENGTH_CHUNKS + m (Lnet/minecraft/class_1937;III[Lnet/minecraft/class_6849;)V + p 3 baseY + p 2 baseX + p 1 world + p 5 renderedChunks + p 4 baseZ + m (IIIIII)I method_60899 getIndex + p 5 sectionZ + p 4 sectionY + p 3 sectionX + p 2 zOffset + p 1 yOffset + p 0 xOffset + m (III)Lnet/minecraft/class_6849; method_72044 getRenderedChunk + p 3 sectionZ + p 2 sectionY + p 1 sectionX +c net/minecraft/class_852 net/minecraft/client/render/chunk/ChunkOcclusionDataBuilder + f [I field_4474 EDGE_POINTS + f I field_4473 openCount + f [Lnet/minecraft/class_2350; field_4479 DIRECTIONS + f Ljava/util/BitSet; field_4478 closed + f I field_4476 STEP_Z + f I field_4475 STEP_Y + f I field_4477 STEP_X + m (III)I method_3681 pack + p 2 z + p 1 y + p 0 x + m (ILnet/minecraft/class_2350;)I method_3685 offset + p 2 direction + p 1 pos + m (Lnet/minecraft/class_2338;)V method_3682 markClosed + p 1 pos + m (I)Ljava/util/Set; method_3687 getOpenFaces + p 1 pos + m (ILjava/util/Set;)V method_3684 addEdgeFaces + p 2 openFaces + p 1 pos + m (Lnet/minecraft/class_2338;)I method_3683 pack + p 0 pos + m ([I)V method_3680 method_3680 + p 0 edgePoints + m ()Lnet/minecraft/class_854; method_3679 build +c net/minecraft/class_854 net/minecraft/client/render/chunk/ChunkOcclusionData + f I field_4491 DIRECTION_COUNT + f Ljava/util/BitSet; field_4492 visibility + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;Z)V method_3692 setVisibleThrough + p 1 from + p 2 to + p 3 visible + m (Ljava/util/Set;)V method_3693 addOpenEdgeFaces + p 1 faces + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;)Z method_3695 isVisibleThrough + p 1 from + p 2 to + m (Z)V method_3694 fill + p 1 visible +c net/minecraft/class_8824 net/minecraft/text/TextCodecs + f Lnet/minecraft/class_9139; field_48985 OPTIONAL_PACKET_CODEC + f Lnet/minecraft/class_9139; field_48540 REGISTRY_PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_46597 CODEC + f Lnet/minecraft/class_9139; field_49667 OPTIONAL_UNLIMITED_REGISTRY_PACKET_CODEC + f Lnet/minecraft/class_9139; field_49668 PACKET_CODEC + f Lnet/minecraft/class_9139; field_49666 UNLIMITED_REGISTRY_PACKET_CODEC + m (Lnet/minecraft/class_5699$class_10388;)V method_74064 registerTypes + p 0 idMapper + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54167 method_54167 + p 2 instance + m (I)Lcom/mojang/serialization/Codec; method_66572 withJsonLengthLimit + p 0 maxLength + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_54166 createCodec + p 0 selfCodec + m (Lnet/minecraft/class_5699$class_10388;Ljava/util/function/Function;Ljava/lang/String;)Lcom/mojang/serialization/MapCodec; method_54174 dispatchingCodec + p 0 idMapper + p 2 typeKey + p 1 typeToCodec + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_2561; method_54175 method_54175 + p 0 either2 + m (Ljava/util/List;)Lnet/minecraft/class_5250; method_54169 combine + p 0 texts + m (Lnet/minecraft/class_2561;)Lcom/mojang/datafixers/util/Either; method_54172 method_54172 + p 0 text + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_54177 method_54177 + p 0 text + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_2561; method_54165 method_54165 + p 0 either + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_74065 method_74065 + p 0 codec +c net/minecraft/class_8824$class_8825 net/minecraft/text/TextCodecs$FuzzyCodec + f Ljava/util/function/Function; field_46600 codecGetter + f Ljava/util/Collection; field_46599 codecs + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)Lcom/mojang/serialization/RecordBuilder; encode encode + p 3 prefix + p 2 ops + p 1 input + m (Ljava/util/Collection;Ljava/util/function/Function;)V + p 1 codecs + p 2 codecGetter + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/stream/Stream; keys keys + p 1 ops + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; decode decode + p 1 ops + p 2 input + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapCodec;)Ljava/util/stream/Stream; method_54181 method_54181 + p 1 codec +c net/minecraft/class_8824$class_8912 net/minecraft/text/TextCodecs$DispatchingCodec + f Lcom/mojang/serialization/MapCodec; field_46915 withKeyCodec + f Ljava/lang/String; field_46914 dispatchingKey + f Lcom/mojang/serialization/MapCodec; field_46916 withoutKeyCodec + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)Lcom/mojang/serialization/RecordBuilder; encode encode + p 1 input + p 2 ops + p 3 prefix + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; decode decode + p 2 input + p 1 ops + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/MapCodec;)V + p 1 dispatchingKey + p 3 withoutKeyCodec + p 2 withKeyCodec + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/stream/Stream; keys keys + p 1 ops +c net/minecraft/class_8824$1 net/minecraft/text/TextCodecs$1 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decode decode + p 2 value + p 1 ops + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_2561;)Z method_66575 isTooLarge + p 1 ops + p 2 text + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DynamicOps; method_57976 toJsonOps + p 0 ops + m (Lcom/mojang/serialization/DynamicOps;ILcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_66574 method_66574 + p 3 pair + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode encode + p 3 prefix + p 2 ops + p 1 input + m (Lnet/minecraft/class_2561;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_57978 encode +c net/minecraft/class_12160 net/minecraft/client/render/gizmo/GizmoDrawerImpl + f Lnet/minecraft/class_12160$class_12355; field_64589 transparent + f Lnet/minecraft/class_12160$class_12355; field_64588 opaque + f Z field_64590 empty + m (I)Lnet/minecraft/class_12160$class_12355; method_76660 getDivision + p 1 color + m ()Z method_76659 isEmpty + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4597;Lnet/minecraft/class_12075;Lorg/joml/Matrix4f;)V method_75477 draw + p 2 vertexConsumers + p 1 matrices + p 4 posMatrix + p 3 cameraRenderState +c net/minecraft/class_12160$class_12164 net/minecraft/client/render/gizmo/GizmoDrawerImpl$Text + f Lnet/minecraft/class_243; comp_5082 pos + f Lnet/minecraft/class_12187$class_12188; comp_5084 style + f Ljava/lang/String; comp_5083 text + m ()Ljava/lang/String; comp_5083 text + m ()Lnet/minecraft/class_243; comp_5082 pos + m ()Lnet/minecraft/class_12187$class_12188; comp_5084 style + m (Lnet/minecraft/class_243;Ljava/lang/String;Lnet/minecraft/class_12187$class_12188;)V + p 1 pos + p 2 text + p 3 style +c net/minecraft/class_12160$class_12165 net/minecraft/client/render/gizmo/GizmoDrawerImpl$Polygon + f [Lnet/minecraft/class_243; comp_5085 points + f I comp_5086 color + m ()I comp_5086 color + m ()[Lnet/minecraft/class_243; comp_5085 points + m ([Lnet/minecraft/class_243;I)V + p 1 points + p 2 color +c net/minecraft/class_12160$class_12162 net/minecraft/client/render/gizmo/GizmoDrawerImpl$Point + f Lnet/minecraft/class_243; comp_5074 pos + f I comp_5075 color + f F comp_5076 size + m ()Lnet/minecraft/class_243; comp_5074 pos + m ()I comp_5075 color + m ()F comp_5076 size + m (Lnet/minecraft/class_243;IF)V + p 1 pos + p 2 color + p 3 size +c net/minecraft/class_12160$class_12163 net/minecraft/client/render/gizmo/GizmoDrawerImpl$Quad + f Lnet/minecraft/class_243; comp_5080 d + f Lnet/minecraft/class_243; comp_5077 a + f Lnet/minecraft/class_243; comp_5079 c + f Lnet/minecraft/class_243; comp_5078 b + f I comp_5081 color + m ()Lnet/minecraft/class_243; comp_5080 d + m ()Lnet/minecraft/class_243; comp_5079 c + m ()Lnet/minecraft/class_243; comp_5078 b + m ()Lnet/minecraft/class_243; comp_5077 a + m ()I comp_5081 color + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_243;I)V + p 1 a + p 2 b + p 3 c + p 4 d + p 5 color +c net/minecraft/class_12160$class_12355 net/minecraft/client/render/gizmo/GizmoDrawerImpl$Division + f Ljava/util/List; comp_5258 points + f Ljava/util/List; comp_5257 texts + f Ljava/util/List; comp_5254 lines + f Ljava/util/List; comp_5256 triangleFans + f Ljava/util/List; comp_5255 quads + f Z comp_5253 opaque + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4597;Lnet/minecraft/class_12075;)V method_76661 drawText + p 3 cameraRenderState + p 2 vertexConsumers + p 1 matrices + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4597;Lnet/minecraft/class_12075;Lorg/joml/Matrix4f;)V method_76664 drawLines + p 3 cameraRenderState + p 4 posMatrix + p 1 matrices + p 2 vertexConsumers + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4597;Lnet/minecraft/class_12075;)V method_76665 drawQuads + p 3 cameraRenderState + p 2 vertexConsumers + p 1 matrices + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4597;Lnet/minecraft/class_12075;)V method_76666 drawPoints + p 3 cameraRenderState + p 2 vertexConsumers + p 1 matrices + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4597;Lnet/minecraft/class_12075;Lorg/joml/Matrix4f;)V method_76662 draw + p 3 cameraRenderState + p 4 posMatrix + p 1 matrices + p 2 vertexConsumers + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4597;Lnet/minecraft/class_12075;)V method_76663 drawTriangleFans + p 1 matrices + p 3 cameraRenderState + p 2 vertexConsumers + m (Z)V + p 1 opaque + m ()Ljava/util/List; comp_5254 lines + m ()Ljava/util/List; comp_5256 triangleFans + m ()Ljava/util/List; comp_5255 quads + m ()Ljava/util/List; comp_5258 points + m ()Ljava/util/List; comp_5257 texts + m ()Z comp_5253 opaque + m (ZLjava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;)V + p 1 opaque + p 2 lines + p 3 quads + p 4 triangleFans + p 5 texts + p 6 points +c net/minecraft/class_12160$class_12161 net/minecraft/client/render/gizmo/GizmoDrawerImpl$Line + f Lnet/minecraft/class_243; comp_5071 end + f Lnet/minecraft/class_243; comp_5070 start + f I comp_5072 color + f F comp_5073 width + m ()Lnet/minecraft/class_243; comp_5070 start + m ()Lnet/minecraft/class_243; comp_5071 end + m ()I comp_5072 color + m ()F comp_5073 width + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;IF)V + p 1 start + p 2 end + p 3 color + p 4 width +c net/minecraft/class_12167 net/minecraft/predicate/component/ComponentExistencePredicate + f Lnet/minecraft/class_9331; comp_5089 type + m ()Lnet/minecraft/class_9331; comp_5089 type + m (Lnet/minecraft/class_9331;)V + p 1 type +c net/minecraft/class_12166 net/minecraft/unused/packageinfo/PackageInfo12166 +c net/minecraft/class_8816 net/minecraft/client/gui/screen/PopupScreen + f Lnet/minecraft/class_2561; field_46563 message + f Lnet/minecraft/class_2960; field_46562 image + f Ljava/lang/Runnable; field_46565 onClosed + f I field_46559 IMAGE_HEIGHT + f I field_46558 IMAGE_WIDTH + f I field_46555 VERTICAL_SPACING + f I field_46566 innerWidth + f I field_46557 BUTTON_HORIZONTAL_SPACING + f I field_46556 MARGIN_WIDTH + f Lnet/minecraft/class_2960; field_46554 BACKGROUND_TEXTURE + f I field_46560 DEFAULT_WIDTH + f Lnet/minecraft/class_8667; field_46567 layout + f Ljava/util/List; field_46564 buttons + f Lnet/minecraft/class_437; field_46561 backgroundScreen + m (Lnet/minecraft/class_8816$class_8818;Lnet/minecraft/class_4185;)V method_54122 method_54122 + p 2 button + m ()Lnet/minecraft/class_8667; method_54124 createButtonLayout + m (Lnet/minecraft/class_437;ILnet/minecraft/class_2960;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Ljava/util/List;Ljava/lang/Runnable;)V + p 1 backgroundScreen + p 2 width + p 7 onClosed + p 5 message + p 6 buttons + p 3 image + p 4 title + m (Lnet/minecraft/class_8816;Lnet/minecraft/class_364;)V method_54123 method_54123 + p 1 child +c net/minecraft/class_8816$class_8818 net/minecraft/client/gui/screen/PopupScreen$Button + f Lnet/minecraft/class_2561; comp_1979 message + f Ljava/util/function/Consumer; comp_1980 action + m ()Ljava/util/function/Consumer; comp_1980 action + m ()Lnet/minecraft/class_2561; comp_1979 message + m (Lnet/minecraft/class_2561;Ljava/util/function/Consumer;)V + p 1 message + p 2 action +c net/minecraft/class_8816$class_8817 net/minecraft/client/gui/screen/PopupScreen$Builder + f Ljava/lang/Runnable; field_46574 onClosed + f Lnet/minecraft/class_437; field_46568 backgroundScreen + f Lnet/minecraft/class_2561; field_46570 message + f Lnet/minecraft/class_2960; field_46572 image + f Lnet/minecraft/class_2561; field_46569 title + f I field_46571 width + f Ljava/util/List; field_46573 buttons + m (Lnet/minecraft/class_437;Lnet/minecraft/class_2561;)V + p 2 title + p 1 backgroundScreen + m (I)Lnet/minecraft/class_8816$class_8817; method_54126 width + p 1 width + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_8816$class_8817; method_54127 image + p 1 image + m (Ljava/lang/Runnable;)Lnet/minecraft/class_8816$class_8817; method_54128 onClosed + p 1 onClosed + m ()Lnet/minecraft/class_8816; method_54125 build + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_8816$class_8817; method_54129 message + p 1 message + m (Lnet/minecraft/class_2561;Ljava/util/function/Consumer;)Lnet/minecraft/class_8816$class_8817; method_54130 button + p 1 message + p 2 action +c net/minecraft/class_863 net/minecraft/client/render/debug/DebugRenderer + f Ljava/util/List; field_63588 renderers + f J field_63072 currentVersion + m (Lnet/minecraft/class_4604;DDDF)V method_23099 render + p 8 tickProgress + p 2 cameraX + p 1 frustum + p 6 cameraZ + p 4 cameraY + m (F)Lnet/minecraft/class_243; method_62348 hueToRgb + p 0 hue + m (FFFF)Lnet/minecraft/class_243; method_62349 shiftHue + p 0 r + p 1 g + p 2 b + p 3 dHue + m (Lnet/minecraft/class_1297;I)Ljava/util/Optional; method_23101 getTargetedEntity + p 1 maxDistance + p 0 entity + m ()V method_74928 initRenderers +c net/minecraft/class_863$class_864 net/minecraft/client/render/debug/DebugRenderer$Renderer + m (DDDLnet/minecraft/class_12021;Lnet/minecraft/class_4604;F)V method_23109 render + p 9 tickProgress + p 8 frustum + p 7 store + p 1 cameraX + p 5 cameraZ + p 3 cameraY +c net/minecraft/class_862 net/minecraft/client/render/debug/ChunkBorderDebugRenderer + f I field_35558 YELLOW + f I field_35557 DARK_CYAN + f I field_63587 LIGHT_RED + f Lnet/minecraft/class_310; field_4516 client + m (Lnet/minecraft/class_310;)V + p 1 client +c net/minecraft/class_868 net/minecraft/client/render/debug/PathfindingDebugRenderer + f F field_32913 DRAWN_STRING_SIZE + f F field_32907 RANGE + m (Lnet/minecraft/class_11;DDD)V method_23117 drawPathLines + p 3 cameraY + p 5 cameraZ + p 0 path + p 1 cameraX + m (DDDLnet/minecraft/class_11;F)V method_74798 render + p 0 cameraX + p 2 cameraY + p 4 cameraZ + p 6 path + p 7 maxNodeDistance + m (Lnet/minecraft/class_2338;DDD)F method_23119 getManhattanDistance + p 0 pos + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/class_11;FZZDDD)V method_23118 drawPath + p 0 path + p 1 maxNodeDistance + p 6 cameraY + p 8 cameraZ + p 4 cameraX + m (DDDLnet/minecraft/class_1297;Lnet/minecraft/class_12013;)V method_75444 method_75444 + p 6 entity + p 7 debugData +c net/minecraft/class_867 net/minecraft/client/render/debug/HeightmapDebugRenderer + f I field_32903 CHUNK_RANGE + f Lnet/minecraft/class_310; field_4613 client + f F field_32904 BOX_HEIGHT + m (Lnet/minecraft/class_2902$class_2903;)Lorg/joml/Vector3f; method_27037 getColorForHeightmapType + p 1 type + m (Lnet/minecraft/class_310;)V + p 1 client +c net/minecraft/class_866 net/minecraft/client/render/debug/SkyLightDebugRenderer + f Z field_63591 visualizeSkyLightLevels + f Z field_63590 visualizeBlockLightLevels + f Lnet/minecraft/class_310; field_4612 client + f I field_32905 RANGE + m (Lnet/minecraft/class_310;ZZ)V + p 3 visualizeSkyLightLevels + p 2 visualizeBlockLightLevels + p 1 client +c net/minecraft/class_865 net/minecraft/client/render/debug/CollisionDebugRenderer + f Ljava/util/List; field_4542 collisions + f D field_4541 lastUpdateTime + f Lnet/minecraft/class_310; field_4540 client + m (Lnet/minecraft/class_310;)V + p 1 client +c net/minecraft/class_12193 net/minecraft/world/attribute/EnvironmentAttributeTypes + f Lcom/mojang/serialization/Codec; field_63699 CODEC + f Lnet/minecraft/class_12192; field_63694 BED_RULE + f Lnet/minecraft/class_12192; field_63691 BOOLEAN + f Lnet/minecraft/class_12192; field_63692 FLOAT + f Lnet/minecraft/class_12192; field_63697 BACKGROUND_MUSIC + f Lnet/minecraft/class_12192; field_63698 AMBIENT_SOUNDS + f Lnet/minecraft/class_12192; field_63695 PARTICLE + f Lnet/minecraft/class_12192; field_63696 AMBIENT_PARTICLES + f Lnet/minecraft/class_12192; field_64318 ANGLE_DEGREES + f Lnet/minecraft/class_12192; field_64319 MOON_PHASE + f Lnet/minecraft/class_12192; field_64317 TRI_STATE + f Lnet/minecraft/class_12192; field_64320 ACTIVITY + f Lnet/minecraft/class_12192; field_64118 RGB_COLOR + f Lnet/minecraft/class_12192; field_64119 ARGB_COLOR + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_12192; method_75637 registerAndGetDefault + p 0 registry + m (Ljava/lang/String;Lnet/minecraft/class_12192;)Lnet/minecraft/class_12192; method_75636 register + p 0 path + p 1 type +c net/minecraft/class_860 net/minecraft/client/render/debug/ChunkLoadingDebugRenderer + f D field_4510 lastUpdateTime + f Lnet/minecraft/class_310; field_4509 client + f Lnet/minecraft/class_860$class_4605; field_20998 loadingData + f I field_4511 LOADING_DATA_CHUNK_RANGE + m (Lnet/minecraft/class_310;)V + p 1 client +c net/minecraft/class_860$class_4605 net/minecraft/client/render/debug/ChunkLoadingDebugRenderer$ChunkLoadingStatus + f Ljava/util/concurrent/CompletableFuture; field_21001 serverStates + f Ljava/util/Map; field_21000 clientStates + m (Lnet/minecraft/class_860;Lnet/minecraft/class_1132;DD)V + p 5 z + p 3 x + p 2 server +c net/minecraft/class_12192 net/minecraft/world/attribute/EnvironmentAttributeType + f Lnet/minecraft/class_12210; comp_5212 stateChangeLerp + f Lnet/minecraft/class_12210; comp_5211 keyframeLerp + f Ljava/util/Map; comp_5129 modifierLibrary + f Lnet/minecraft/class_12210; comp_5131 spatialLerp + f Lnet/minecraft/class_12210; comp_5132 partialTickLerp + f Lcom/mojang/serialization/Codec; comp_5130 modifierCodec + f Lcom/mojang/serialization/Codec; comp_5128 valueCodec + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_12192; method_75631 discrete + p 0 valueCodec + m (Lcom/mojang/serialization/Codec;Ljava/util/Map;Lnet/minecraft/class_12210;)Lnet/minecraft/class_12192; method_75633 interpolated + p 0 valueCodec + p 2 lerp + p 1 modifierLibrary + m (Lnet/minecraft/class_12212;)V method_75630 validate + p 1 modifier + m (Lcom/mojang/serialization/Codec;Ljava/util/Map;Lnet/minecraft/class_12210;Lnet/minecraft/class_12210;)Lnet/minecraft/class_12192; method_75634 interpolated + p 0 valueCodec + p 1 modifierLibrary + p 2 spatialLerp + p 3 partialTickLerp + m (Lcom/mojang/serialization/Codec;Ljava/util/Map;)Lnet/minecraft/class_12192; method_75632 discrete + p 1 modifierLibrary + p 0 valueCodec + m (Ljava/util/Map;)Lcom/mojang/serialization/Codec; method_75635 createModifierCodec + p 0 modifierLibrary + m ()Lcom/mojang/serialization/Codec; comp_5130 modifierCodec + m ()Ljava/util/Map; comp_5129 modifierLibrary + m ()Lnet/minecraft/class_12210; comp_5211 keyframeLerp + m ()Lnet/minecraft/class_12210; comp_5212 stateChangeLerp + m ()Lnet/minecraft/class_12210; comp_5132 partialTickLerp + m ()Lnet/minecraft/class_12210; comp_5131 spatialLerp + m ()Lcom/mojang/serialization/Codec; comp_5128 valueCodec + m (Lcom/mojang/serialization/Codec;Ljava/util/Map;Lcom/mojang/serialization/Codec;Lnet/minecraft/class_12210;Lnet/minecraft/class_12210;Lnet/minecraft/class_12210;Lnet/minecraft/class_12210;)V + p 1 valueCodec + p 2 modifierLibrary + p 3 modifierCodec + p 4 keyframeLerp + p 5 stateChangeLerp + p 6 spatialLerp + p 7 partialTickLerp +c net/minecraft/class_12191 net/minecraft/world/attribute/AttributeValidator + f Lnet/minecraft/class_12191; field_63688 NON_NEGATIVE_FLOAT + f Lnet/minecraft/class_12191; field_63687 PROBABILITY + m (FF)Lnet/minecraft/class_12191; method_75624 ranged + p 0 min + p 1 max + m ()Lnet/minecraft/class_12191; method_75623 all + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_75625 validate + p 1 value + m (Ljava/lang/Object;)Ljava/lang/Object; method_75626 clamp + p 1 value +c net/minecraft/class_12191$2 net/minecraft/world/attribute/AttributeValidator$2 + m (Ljava/lang/Float;)Lcom/mojang/serialization/DataResult; method_75627 validate + m (Ljava/lang/Float;)Ljava/lang/Float; method_75629 clamp +c net/minecraft/class_12190 net/minecraft/world/attribute/AmbientSounds + f Lnet/minecraft/class_12190; field_63684 DEFAULT + f Lnet/minecraft/class_12190; field_63685 CAVE + f Ljava/util/List; comp_5127 additions + f Lcom/mojang/serialization/Codec; field_63686 CODEC + f Ljava/util/Optional; comp_5126 mood + f Ljava/util/Optional; comp_5125 loop + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75622 method_75622 + p 0 instance + m ()Ljava/util/List; comp_5127 additions + m ()Ljava/util/Optional; comp_5125 loop + m ()Ljava/util/Optional; comp_5126 mood + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/List;)V + p 1 loop + p 2 mood + p 3 additions +c net/minecraft/class_12197 net/minecraft/world/attribute/EnvironmentAttribute + f Z field_63715 synced + f Z field_63716 positional + f Lnet/minecraft/class_12191; field_63714 validator + f Z field_63717 interpolated + f Lnet/minecraft/class_12192; field_63712 type + f Ljava/lang/Object; field_63713 defaultValue + m (Lnet/minecraft/class_12192;)Lnet/minecraft/class_12197$class_12198; method_75648 builder + p 0 type + m ()Lcom/mojang/serialization/Codec; method_75651 getCodec + m ()Lnet/minecraft/class_12192; method_75647 getType + m (Lnet/minecraft/class_12192;Ljava/lang/Object;Lnet/minecraft/class_12191;ZZZ)V + p 4 synced + p 5 positional + p 2 defaultValue + p 3 validator + p 6 interpolated + p 1 type + m ()Z method_75652 isSynced + m ()Z method_75653 isPositional + m (Ljava/lang/Object;)Ljava/lang/Object; method_75649 clamp + p 1 value + m ()Z method_75654 isInterpolated + m ()Ljava/lang/Object; method_75650 getDefaultValue +c net/minecraft/class_12197$class_12198 net/minecraft/world/attribute/EnvironmentAttribute$Builder + f Z field_63722 positional + f Z field_63723 interpolated + f Z field_63721 synced + f Lnet/minecraft/class_12192; field_63718 type + f Ljava/lang/Object; field_63719 defaultValue + f Lnet/minecraft/class_12191; field_63720 validator + m ()Lnet/minecraft/class_12197$class_12198; method_75655 synced + m ()Lnet/minecraft/class_12197$class_12198; method_75659 interpolated + m (Ljava/lang/Object;)Lnet/minecraft/class_12197$class_12198; method_75657 defaultValue + p 1 defaultValue + m ()Lnet/minecraft/class_12197$class_12198; method_75658 global + m ()Lnet/minecraft/class_12197; method_75660 build + m (Lnet/minecraft/class_12192;)V + p 1 type + m (Lnet/minecraft/class_12191;)Lnet/minecraft/class_12197$class_12198; method_75656 validator + p 1 validator +c net/minecraft/class_12195 net/minecraft/world/attribute/BedRule + f Lnet/minecraft/class_12195; field_63703 OVERWORLD + f Lnet/minecraft/class_12195; field_63704 OTHER_DIMENSION + f Lnet/minecraft/class_12195$class_12196; comp_5137 canSetSpawn + f Lnet/minecraft/class_12195$class_12196; comp_5136 canSleep + f Z comp_5138 explodes + f Lcom/mojang/serialization/Codec; field_63705 CODEC + f Ljava/util/Optional; comp_5139 errorMessage + m (Lnet/minecraft/class_1937;)Z method_75644 canSetSpawn + p 1 world + m (Lnet/minecraft/class_1937;)Z method_75643 canSleep + p 1 world + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75642 method_75642 + p 0 instance + m ()Lnet/minecraft/class_1657$class_1658; method_75641 getFailureReason + m ()Lnet/minecraft/class_12195$class_12196; comp_5137 canSetSpawn + m ()Lnet/minecraft/class_12195$class_12196; comp_5136 canSleep + m ()Z comp_5138 explodes + m ()Ljava/util/Optional; comp_5139 errorMessage + m (Lnet/minecraft/class_12195$class_12196;Lnet/minecraft/class_12195$class_12196;ZLjava/util/Optional;)V + p 1 canSleep + p 2 canSetSpawn + p 3 explodes + p 4 errorMessage +c net/minecraft/class_12195$class_12196 net/minecraft/world/attribute/BedRule$Condition + f Ljava/lang/String; field_63710 name + f Lnet/minecraft/class_12195$class_12196; field_63706 ALWAYS + f Lnet/minecraft/class_12195$class_12196; field_63708 NEVER + f Lnet/minecraft/class_12195$class_12196; field_63707 WHEN_DARK + f Lcom/mojang/serialization/Codec; field_63709 CODEC + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m (Lnet/minecraft/class_1937;)Z method_75646 test + p 1 world +c net/minecraft/class_12194 net/minecraft/world/attribute/BackgroundMusic + f Lnet/minecraft/class_12194; field_63701 DEFAULT + f Lnet/minecraft/class_12194; field_63700 EMPTY + f Ljava/util/Optional; comp_5133 defaultMusic + f Ljava/util/Optional; comp_5134 creativeMusic + f Ljava/util/Optional; comp_5135 underwaterMusic + f Lcom/mojang/serialization/Codec; field_63702 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75639 method_75639 + p 0 instance + m (Lnet/minecraft/class_5195;)Lnet/minecraft/class_12194; method_75638 withUnderwater + p 1 underwater + m (ZZ)Ljava/util/Optional; method_75640 getCurrent + p 2 underwater + p 1 creative + m (Lnet/minecraft/class_5195;)V + p 1 defaultMusic + m (Lnet/minecraft/class_6880;)V + p 1 defaultMusic + m ()Ljava/util/Optional; comp_5135 underwaterMusic + m ()Ljava/util/Optional; comp_5134 creativeMusic + m ()Ljava/util/Optional; comp_5133 defaultMusic + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 defaultMusic + p 2 creativeMusic + p 3 underwaterMusic +c net/minecraft/class_12199 net/minecraft/world/attribute/EnvironmentAttributeMap + f Ljava/util/Map; field_63728 entries + f Lnet/minecraft/class_12199; field_63724 EMPTY + f Lcom/mojang/serialization/Codec; field_63726 NETWORK_CODEC + f Lcom/mojang/serialization/Codec; field_63727 POSITIONAL_CODEC + c Accepts positional attributes only. + f Lcom/mojang/serialization/Codec; field_63725 CODEC + m (Lnet/minecraft/class_12197;)Z method_75667 containsKey + p 1 key + m (Lnet/minecraft/class_12199;)Lnet/minecraft/class_12199; method_75664 retainSyncedAttributes + p 0 map + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/util/Set; method_75666 keySet + m (Lnet/minecraft/class_12197;)Z method_75670 method_75670 + p 0 attribute + m (Lnet/minecraft/class_12199;)Ljava/util/Map; method_75671 method_75671 + p 0 map + m (Lnet/minecraft/class_12199;)Lcom/mojang/serialization/DataResult; method_75668 method_75668 + p 0 map + m (Ljava/util/Map;)V + p 1 entries + m ()Lnet/minecraft/class_12199$class_12200; method_75661 builder + m (Lnet/minecraft/class_12197;)Lnet/minecraft/class_12199$class_12201; method_75662 getEntry + p 1 key + m (Lnet/minecraft/class_12197;Ljava/lang/Object;)Ljava/lang/Object; method_75663 apply + p 2 value + p 1 key +c net/minecraft/class_12199$class_12201 net/minecraft/world/attribute/EnvironmentAttributeMap$Entry + f Lnet/minecraft/class_12212; comp_5141 modifier + f Ljava/lang/Object; comp_5140 argument + m (Lnet/minecraft/class_12197;)Lcom/mojang/serialization/Codec; method_75676 createCodec + p 0 attribute + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_12212;)Lcom/mojang/serialization/MapCodec; method_75677 createModifierDependentCodec + p 1 modifier + p 0 attribute + m (Lnet/minecraft/class_12199$class_12201;)Lnet/minecraft/class_12199$class_12201; method_75684 method_75684 + p 0 entry + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_12199$class_12201; method_75681 method_75681 + p 0 either + m (Ljava/lang/Object;)Lnet/minecraft/class_12199$class_12201; method_75685 method_75685 + p 0 value + m (Lnet/minecraft/class_12199$class_12201;)Lcom/mojang/datafixers/util/Either; method_75678 method_75678 + p 0 entry + m (Ljava/lang/Object;)Ljava/lang/Object; method_75682 apply + p 1 value + m (Lnet/minecraft/class_12212;Lnet/minecraft/class_12197;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75679 method_75679 + p 2 instance + m (Lnet/minecraft/class_12212;Ljava/lang/Object;)Lnet/minecraft/class_12199$class_12201; method_75680 method_75680 + p 1 argument + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_12212;)Lcom/mojang/serialization/MapCodec; method_75683 method_75683 + p 1 modifier + m ()Lnet/minecraft/class_12212; comp_5141 modifier + m ()Ljava/lang/Object; comp_5140 argument + m (Ljava/lang/Object;Lnet/minecraft/class_12212;)V + p 1 argument + p 2 modifier +c net/minecraft/class_12199$class_12200 net/minecraft/world/attribute/EnvironmentAttributeMap$Builder + f Ljava/util/Map; field_63729 entries + m (Lnet/minecraft/class_12199;)Lnet/minecraft/class_12199$class_12200; method_75675 addAll + p 1 map + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_12212;Ljava/lang/Object;)Lnet/minecraft/class_12199$class_12200; method_75673 with + p 1 key + p 2 modifier + p 3 param + m (Lnet/minecraft/class_12197;Ljava/lang/Object;)Lnet/minecraft/class_12199$class_12200; method_75674 with + p 2 value + p 1 key + m ()Lnet/minecraft/class_12199; method_75672 build +c net/minecraft/class_875 net/minecraft/client/render/entity/AbstractHorseEntityRenderer + m (Lnet/minecraft/class_1496;Lnet/minecraft/class_10019;F)V method_62357 updateRenderState + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_583;Lnet/minecraft/class_583;)V + p 1 context + p 2 model + p 3 babyModel +c net/minecraft/class_872 net/minecraft/client/render/debug/WaterDebugRenderer + f Lnet/minecraft/class_310; field_4629 client + m (Lnet/minecraft/class_310;)V + p 1 client +c net/minecraft/class_879 net/minecraft/client/render/entity/BatEntityRenderer + f Lnet/minecraft/class_2960; field_4645 TEXTURE + m ()Lnet/minecraft/class_10001; method_62380 createRenderState + m (Lnet/minecraft/class_10001;)Lnet/minecraft/class_2960; method_3883 getTexture + m (Lnet/minecraft/class_1420;Lnet/minecraft/class_10001;F)V method_62381 updateRenderState +c net/minecraft/class_878 net/minecraft/client/render/entity/BlazeEntityRenderer + f Lnet/minecraft/class_2960; field_4644 TEXTURE + m ()Lnet/minecraft/class_10042; method_62384 createRenderState + m (Lnet/minecraft/class_1545;Lnet/minecraft/class_2338;)I method_24085 getBlockLight +c net/minecraft/class_877 net/minecraft/client/render/entity/ArmorStandEntityRenderer + f Lnet/minecraft/class_548; field_53180 smallModel + f Lnet/minecraft/class_548; field_53179 mainModel + f Lnet/minecraft/class_2960; field_4642 TEXTURE + m ()Lnet/minecraft/class_9998; method_62374 createRenderState + m (Lnet/minecraft/class_9998;Lnet/minecraft/class_4587;FF)V method_3877 setupTransforms + m (Lnet/minecraft/class_9998;)Lnet/minecraft/class_2960; method_3880 getTexture + m (Lnet/minecraft/class_9998;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_62376 render + m (Lnet/minecraft/class_1531;Lnet/minecraft/class_9998;F)V method_62375 updateRenderState + m (Lnet/minecraft/class_1531;D)Z method_3878 hasLabel + m (Lnet/minecraft/class_9998;ZZZ)Lnet/minecraft/class_1921; method_24301 getRenderLayer +c net/minecraft/class_876 net/minecraft/client/render/entity/ProjectileEntityRenderer + f Lnet/minecraft/class_9940; field_53181 model + m (Lnet/minecraft/class_9999;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3875 render + m (Lnet/minecraft/class_1665;Lnet/minecraft/class_9999;F)V method_62377 updateRenderState + m (Lnet/minecraft/class_9999;)Lnet/minecraft/class_2960; method_4120 getTexture + p 1 state +c net/minecraft/class_8803 net/minecraft/block/BlockKeys + f Lnet/minecraft/class_5321; field_46221 PUMPKIN + f Lnet/minecraft/class_5321; field_46222 PUMPKIN_STEM + f Lnet/minecraft/class_5321; field_46223 ATTACHED_PUMPKIN_STEM + f Lnet/minecraft/class_5321; field_46224 MELON + f Lnet/minecraft/class_5321; field_46225 MELON_STEM + f Lnet/minecraft/class_5321; field_46226 ATTACHED_MELON_STEM + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_53910 of + p 0 id +c net/minecraft/class_8804 net/minecraft/item/ItemKeys + f Lnet/minecraft/class_5321; field_46227 PUMPKIN_SEEDS + f Lnet/minecraft/class_5321; field_46228 MELON_SEEDS + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_53911 of + p 0 id +c net/minecraft/class_8801 net/minecraft/nbt/NbtSizeValidationException +c net/minecraft/class_12182 net/minecraft/world/debug/gizmo/LineGizmo + f F comp_5106 width + f I comp_5105 color + f Lnet/minecraft/class_243; comp_5104 end + f Lnet/minecraft/class_243; comp_5103 start + m ()Lnet/minecraft/class_243; comp_5104 end + m ()Lnet/minecraft/class_243; comp_5103 start + m ()I comp_5105 color + m ()F comp_5106 width + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;IF)V + p 1 start + p 2 end + p 3 color + p 4 width +c net/minecraft/class_871 net/minecraft/client/render/debug/BlockOutlineDebugRenderer + f Lnet/minecraft/class_310; field_4628 client + m (Lnet/minecraft/class_310;)V + p 1 client + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2350;Lnet/minecraft/class_243;Lnet/minecraft/class_243;I)V method_75450 drawFace + p 5 maxPos + p 6 color + p 3 direction + p 4 minPos + p 1 state + p 2 world + p 0 pos +c net/minecraft/class_8800 net/minecraft/util/PngMetadata + f I field_46203 IHDR_CHUNK_LENGTH + f Ljava/util/HexFormat; field_55543 HEX_FORMAT + f I field_46202 IHDR_CHUNK_TYPE + f J field_46201 PNG_SIGNATURE + f I comp_1966 height + f I comp_1965 width + m (Ljava/nio/ByteBuffer;)V method_54945 validate + p 0 buf + m (Ljava/io/InputStream;)Lnet/minecraft/class_8800; method_53877 fromStream + p 0 stream + m ([B)Lnet/minecraft/class_8800; method_53878 fromBytes + p 0 bytes + m ()I comp_1965 width + m ()I comp_1966 height + m (II)V + p 1 width + p 2 height +c net/minecraft/class_870 net/minecraft/client/render/debug/StructureDebugRenderer + m (Lnet/minecraft/class_1923;Ljava/util/List;)V method_75451 method_75451 + p 0 chunkPos + p 1 structures +c net/minecraft/class_12180 net/minecraft/world/debug/gizmo/GizmoDrawing + f Ljava/lang/ThreadLocal; field_63656 CURRENT_GIZMO_COLLECTOR + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_2350;Lnet/minecraft/class_12179;)Lnet/minecraft/class_12178; method_75548 face + p 3 style + p 0 nwd + p 1 seu + p 2 direction + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_12179;)Lnet/minecraft/class_12178; method_75550 box + p 1 style + p 0 blockPos + m (Lnet/minecraft/class_243;FLnet/minecraft/class_12179;)Lnet/minecraft/class_12178; method_75543 circle + p 0 pos + p 2 style + p 1 radius + m (Lnet/minecraft/class_2338;FLnet/minecraft/class_12179;)Lnet/minecraft/class_12178; method_75549 box + p 1 expansion + p 0 blockPos + p 2 style + m (Ljava/lang/String;Lnet/minecraft/class_2338;IIF)Lnet/minecraft/class_12178; method_75552 blockLabel + p 0 text + p 1 blockPos + p 4 scale + p 2 yOffset + p 3 color + m (Ljava/lang/String;Lnet/minecraft/class_243;Lnet/minecraft/class_12187$class_12188;)Lnet/minecraft/class_12178; method_75551 text + p 0 text + p 1 pos + p 2 style + m (Lnet/minecraft/class_243;IF)Lnet/minecraft/class_12178; method_75544 point + p 0 pos + p 1 color + p 2 size + m (Lnet/minecraft/class_12175;)Lnet/minecraft/class_12178; method_75553 collect + p 0 gizmo + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;IF)Lnet/minecraft/class_12178; method_75556 arrow + p 3 width + p 2 color + p 1 end + p 0 start + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;IF)Lnet/minecraft/class_12178; method_75546 line + p 2 color + p 3 width + p 0 start + p 1 end + m (Lnet/minecraft/class_1297;ILjava/lang/String;IF)Lnet/minecraft/class_12178; method_75540 entityLabel + p 0 entity + p 1 yOffset + p 4 scale + p 2 text + p 3 color + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_12179;)Lnet/minecraft/class_12178; method_75547 quad + p 2 c + p 3 d + p 4 style + p 0 a + p 1 b + m (Lnet/minecraft/class_238;Lnet/minecraft/class_12179;Z)Lnet/minecraft/class_12178; method_75542 box + p 2 coloredCornerStroke + p 0 box + p 1 style + m (Lnet/minecraft/class_238;Lnet/minecraft/class_12179;)Lnet/minecraft/class_12178; method_75541 box + p 0 box + p 1 style + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;I)Lnet/minecraft/class_12178; method_75545 line + p 1 end + p 2 color + p 0 start + m (Lnet/minecraft/class_12176;)Lnet/minecraft/class_12180$class_12181; method_75554 using + p 0 gizmoCollector + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;I)Lnet/minecraft/class_12178; method_75555 arrow + p 2 color + p 1 end + p 0 start +c net/minecraft/class_12180$class_12181 net/minecraft/world/debug/gizmo/GizmoDrawing$CollectorScope + f Lnet/minecraft/class_12176; field_63657 prevCollector + f Z field_63658 closed +c net/minecraft/class_12185 net/minecraft/world/debug/gizmo/GizmoCollectorImpl + f Ljava/util/List; field_63929 pendingGizmos + f Ljava/util/List; field_63661 gizmos + m ()Ljava/util/List; method_75558 extractGizmos + m (JLnet/minecraft/class_12185$class_12186;)Z method_75855 method_75855 + p 2 entry + m ()Ljava/util/List; method_75560 getGizmos + m (Ljava/util/Collection;)V method_75856 add + p 1 gizmos +c net/minecraft/class_12185$class_12186 net/minecraft/world/debug/gizmo/GizmoCollectorImpl$Entry + f Z field_63663 ignoreOcclusion + f Lnet/minecraft/class_12175; field_63662 gizmo + f J field_63931 removalTime + f Z field_63932 fadeOut + f J field_63930 creationTime + m ()Lnet/minecraft/class_12175; method_75563 getGizmo + m (J)F method_75857 getOpacity + p 1 time + m (Lnet/minecraft/class_12175;)V + p 1 gizmo + m ()J method_75858 getRemovalTime + m ()Z method_75562 ignoresOcclusion +c net/minecraft/class_12184 net/minecraft/world/debug/gizmo/QuadGizmo + f Lnet/minecraft/class_243; comp_5112 c + f Lnet/minecraft/class_12179; comp_5114 style + f Lnet/minecraft/class_243; comp_5111 b + f Lnet/minecraft/class_243; comp_5110 a + f Lnet/minecraft/class_243; comp_5113 d + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_2350;Lnet/minecraft/class_12179;)Lnet/minecraft/class_12184; method_75557 ofFace + p 1 seu + p 0 nwd + p 3 style + p 2 direction + m ()Lnet/minecraft/class_243; comp_5113 d + m ()Lnet/minecraft/class_243; comp_5112 c + m ()Lnet/minecraft/class_243; comp_5111 b + m ()Lnet/minecraft/class_243; comp_5110 a + m ()Lnet/minecraft/class_12179; comp_5114 style + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_12179;)V + p 1 a + p 2 b + p 3 c + p 4 d + p 5 style +c net/minecraft/class_12183 net/minecraft/world/debug/gizmo/PointGizmo + f Lnet/minecraft/class_243; comp_5107 pos + f I comp_5108 color + f F comp_5109 size + m ()Lnet/minecraft/class_243; comp_5107 pos + m ()I comp_5108 color + m ()F comp_5109 size + m (Lnet/minecraft/class_243;IF)V + p 1 pos + p 2 color + p 3 size +c net/minecraft/class_12189 net/minecraft/unused/packageinfo/PackageInfo12189 +c net/minecraft/class_12187 net/minecraft/world/debug/gizmo/TextGizmo + f Ljava/lang/String; comp_5116 text + f Lnet/minecraft/class_12187$class_12188; comp_5117 style + f Lnet/minecraft/class_243; comp_5115 pos + m ()Ljava/lang/String; comp_5116 text + m ()Lnet/minecraft/class_243; comp_5115 pos + m ()Lnet/minecraft/class_12187$class_12188; comp_5117 style + m (Lnet/minecraft/class_243;Ljava/lang/String;Lnet/minecraft/class_12187$class_12188;)V + p 1 pos + p 2 text + p 3 style +c net/minecraft/class_12187$class_12188 net/minecraft/world/debug/gizmo/TextGizmo$Style + f F field_63664 DEFAULT_SCALE + f F comp_5119 scale + f I comp_5118 color + f Ljava/util/OptionalDouble; comp_5120 adjustLeft + m ()Lnet/minecraft/class_12187$class_12188; method_75564 left + m (F)Lnet/minecraft/class_12187$class_12188; method_75565 scaled + p 1 scale + m (F)Lnet/minecraft/class_12187$class_12188; method_75567 adjusted + p 1 adjustLeft + m (I)Lnet/minecraft/class_12187$class_12188; method_75566 left + p 0 color + m (I)Lnet/minecraft/class_12187$class_12188; method_75568 centered + p 0 color + m ()Ljava/util/OptionalDouble; comp_5120 adjustLeft + m ()I comp_5118 color + m ()F comp_5119 scale + m (IFLjava/util/OptionalDouble;)V + p 1 color + p 2 scale + p 3 adjustLeft +c net/minecraft/class_869 net/minecraft/client/render/debug/NeighborUpdateDebugRenderer + m (Ljava/util/Map;Lnet/minecraft/class_2338;II)V method_75442 method_75442 + p 3 expiry + p 2 remainingTime + p 1 pos +c net/minecraft/class_869$class_12045 net/minecraft/client/render/debug/NeighborUpdateDebugRenderer$Update + f Lnet/minecraft/class_869$class_12045; field_62973 EMPTY + f I comp_4903 age + f I comp_4902 count + m (I)Lnet/minecraft/class_869$class_12045; method_74795 withAge + p 1 age + m ()I comp_4902 count + m ()I comp_4903 age + m (II)V + p 1 count + p 2 age +c net/minecraft/class_6275 net/minecraft/unused/packageinfo/PackageInfo6275 +c net/minecraft/class_6274 net/minecraft/unused/packageinfo/PackageInfo6274 +c net/minecraft/class_6277 net/minecraft/unused/packageinfo/PackageInfo6277 +c net/minecraft/class_6276 net/minecraft/unused/packageinfo/PackageInfo6276 +c net/minecraft/class_6271 net/minecraft/unused/packageinfo/PackageInfo6271 +c net/minecraft/class_6270 net/minecraft/unused/packageinfo/PackageInfo6270 +c net/minecraft/class_6273 net/minecraft/unused/packageinfo/PackageInfo6273 +c net/minecraft/class_6272 net/minecraft/unused/packageinfo/PackageInfo6272 +c net/minecraft/class_6279 net/minecraft/unused/packageinfo/PackageInfo6279 +c net/minecraft/class_6278 net/minecraft/unused/packageinfo/PackageInfo6278 +c net/minecraft/class_12131 net/minecraft/world/MoonPhase + f Ljava/lang/String; field_63435 name + f I field_64379 DAY_LENGTH + f I field_63434 index + f I field_63433 COUNT + f Lcom/mojang/serialization/Codec; field_64378 CODEC + f Lnet/minecraft/class_12131; field_63425 FULL_MOON + f Lnet/minecraft/class_12131; field_63427 THIRD_QUARTER + f Lnet/minecraft/class_12131; field_63426 WANING_GIBBOUS + f Lnet/minecraft/class_12131; field_63431 FIRST_QUARTER + f Lnet/minecraft/class_12131; field_63430 WAXING_CRESCENT + f Lnet/minecraft/class_12131; field_63432 WAXING_GIBBOUS + f Lnet/minecraft/class_12131; field_63429 NEW_MOON + f Lnet/minecraft/class_12131; field_63428 WANING_CRESCENT + m ()I method_75261 getIndex + m ()I method_76466 phaseTicks + m (Ljava/lang/String;IILjava/lang/String;)V + p 4 name + p 3 index +c net/minecraft/class_12130 net/minecraft/enchantment/effect/value/ExponentialEnchantmentEffect + f Lnet/minecraft/class_9704; comp_4986 exponent + f Lnet/minecraft/class_9704; comp_4985 base + f Lcom/mojang/serialization/MapCodec; field_63423 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75259 method_75259 + p 0 instance + m ()Lnet/minecraft/class_9704; comp_4985 base + m ()Lnet/minecraft/class_9704; comp_4986 exponent + m (Lnet/minecraft/class_9704;Lnet/minecraft/class_9704;)V + p 1 base + p 2 exponent +c net/minecraft/class_12134 net/minecraft/client/gl/GlSampler + f Ljava/util/OptionalDouble; field_64416 maxLevelOfDetail + f Z field_63446 closed + f I field_63441 samplerId + f Lcom/mojang/blaze3d/textures/AddressMode; field_63443 addressModeV + f Lcom/mojang/blaze3d/textures/AddressMode; field_63442 addressModeU + f I field_64186 maxAnisotropy + f Lcom/mojang/blaze3d/textures/FilterMode; field_63445 magFilterMode + f Lcom/mojang/blaze3d/textures/FilterMode; field_63444 minFilterMode + m ()I method_75285 getSamplerId + m (Lcom/mojang/blaze3d/textures/AddressMode;Lcom/mojang/blaze3d/textures/AddressMode;Lcom/mojang/blaze3d/textures/FilterMode;Lcom/mojang/blaze3d/textures/FilterMode;ILjava/util/OptionalDouble;)V + p 5 maxAnisotropy + p 6 maxLevelOfDetail + p 3 minFilterMode + p 4 magFilterMode + p 1 addressModeU + p 2 addressModeV + m ()Z method_75290 isClosed +c net/minecraft/class_12138 net/minecraft/client/realms/dto/SentInvite + f Ljava/lang/String; field_63457 profileName + f Ljava/util/UUID; field_63458 uuid +c net/minecraft/class_12137 net/minecraft/client/gl/GpuSampler + m ()Lcom/mojang/blaze3d/textures/FilterMode; method_75288 getMinFilterMode + m ()Lcom/mojang/blaze3d/textures/AddressMode; method_75286 getAddressModeU + m ()Lcom/mojang/blaze3d/textures/FilterMode; method_75289 getMagFilterMode + m ()Ljava/util/OptionalDouble; method_76519 getMaxLevelOfDetail + m ()I method_76230 getMaxAnisotropy + m ()Lcom/mojang/blaze3d/textures/AddressMode; method_75287 getAddressModeV +c net/minecraft/class_12136 net/minecraft/client/gl/SamplerCache + f [Lnet/minecraft/class_12137; field_63453 samplers + m (Lcom/mojang/blaze3d/textures/FilterMode;)Lnet/minecraft/class_12137; method_75294 get + p 1 filterMode + m ()V method_75295 close + m ()V method_75292 init + m (Lcom/mojang/blaze3d/textures/FilterMode;)Lnet/minecraft/class_12137; method_75297 getRepeated + p 1 filterMode + m (Lcom/mojang/blaze3d/textures/AddressMode;Lcom/mojang/blaze3d/textures/AddressMode;Lcom/mojang/blaze3d/textures/FilterMode;Lcom/mojang/blaze3d/textures/FilterMode;Z)Lnet/minecraft/class_12137; method_75293 get + p 1 addressModeU + p 2 addressModeV + p 3 minFilterMode + p 4 magFilterMode + p 5 defaultLineOfDetail + m (Lcom/mojang/blaze3d/textures/FilterMode;Z)Lnet/minecraft/class_12137; method_76520 get + p 1 filterMode + p 2 defaultLineOfDetail + m (Lcom/mojang/blaze3d/textures/AddressMode;Lcom/mojang/blaze3d/textures/AddressMode;Lcom/mojang/blaze3d/textures/FilterMode;Lcom/mojang/blaze3d/textures/FilterMode;Z)I method_75296 toIndex + p 0 addressModeU + p 1 addressModeV + p 2 minFilterMode + p 3 magFilterMode + m (Lcom/mojang/blaze3d/textures/FilterMode;Z)Lnet/minecraft/class_12137; method_76521 getRepeated + p 2 defaultLineOfDetail + p 1 filterMode +c net/minecraft/class_6286 net/minecraft/unused/packageinfo/PackageInfo6286 +c net/minecraft/class_6285 net/minecraft/unused/packageinfo/PackageInfo6285 +c net/minecraft/class_6288 net/minecraft/unused/packageinfo/PackageInfo6288 +c net/minecraft/class_6287 net/minecraft/unused/packageinfo/PackageInfo6287 +c net/minecraft/class_6282 net/minecraft/unused/packageinfo/PackageInfo6282 +c net/minecraft/class_6281 net/minecraft/unused/packageinfo/PackageInfo6281 +c net/minecraft/class_6284 net/minecraft/unused/packageinfo/PackageInfo6284 +c net/minecraft/class_6283 net/minecraft/unused/packageinfo/PackageInfo6283 +c net/minecraft/class_6289 net/minecraft/unused/packageinfo/PackageInfo6289 +c net/minecraft/class_12120 net/minecraft/entity/mob/ZombieNautilusBrain + f Lcom/google/common/collect/ImmutableList; field_63364 SENSORS + f Lcom/google/common/collect/ImmutableList; field_63365 MEMORY_MODULES + m (Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_75188 create + p 0 brain + m ()Lnet/minecraft/class_4095$class_5303; method_75185 createProfile + m (Lnet/minecraft/class_4095;)V method_75193 addFightActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_75191 addCoreActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_75192 addIdleActivities + p 0 brain + m (Lnet/minecraft/class_1309;)Ljava/lang/Double; method_75186 method_75186 + p 0 entity + m (Lnet/minecraft/class_12119;)V method_75189 updateActivities + p 0 nautilus + m (Lnet/minecraft/class_1309;)Ljava/lang/Float; method_75190 method_75190 + p 0 entity +c net/minecraft/class_12123 net/minecraft/component/type/KineticWeaponComponent + f Lnet/minecraft/class_9139; field_63408 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_63407 CODEC + f I comp_5145 contactCooldownTicks + f Ljava/util/Optional; comp_4959 knockbackConditions + f Ljava/util/Optional; comp_4958 dismountConditions + f Ljava/util/Optional; comp_4964 hitSound + f Ljava/util/Optional; comp_4963 sound + f Ljava/util/Optional; comp_4960 damageConditions + f I comp_4957 delayTicks + f F comp_4962 damageMultiplier + f F comp_4961 forwardMovement + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_243; method_75229 getAmplifiedMovement + p 0 entity + m (Lnet/minecraft/class_1297;)V method_75234 playSound + p 1 entity + m (Lnet/minecraft/class_1799;ILnet/minecraft/class_1309;Lnet/minecraft/class_1304;)V method_75233 usageTick + p 4 slot + p 1 stack + p 3 user + p 2 remainingUseTicks + m (Lnet/minecraft/class_1297;)V method_76776 playHitSound + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;)V method_75235 method_75235 + p 1 sound + m ()I method_75228 getUseTicks + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1297;)Z method_75231 method_75231 + p 1 target + m (Lnet/minecraft/class_1297;)Z method_76742 method_76742 + p 0 entity + m (Ljava/util/Collection;)Ljava/util/Collection; method_76741 method_76741 + p 0 entityHits + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;)V method_76775 method_76775 + p 1 hitSound + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75232 method_75232 + p 0 instance + m (Lnet/minecraft/class_3965;)Ljava/util/Collection; method_76740 method_76740 + p 0 blockHit + m ()I comp_5145 contactCooldownTicks + m ()I comp_4957 delayTicks + m ()F comp_4961 forwardMovement + m ()F comp_4962 damageMultiplier + m ()Ljava/util/Optional; comp_4964 hitSound + m ()Ljava/util/Optional; comp_4963 sound + m ()Ljava/util/Optional; comp_4960 damageConditions + m ()Ljava/util/Optional; comp_4959 knockbackConditions + m ()Ljava/util/Optional; comp_4958 dismountConditions + m (IILjava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;FFLjava/util/Optional;Ljava/util/Optional;)V + p 1 contactCooldownTicks + p 2 delayTicks + p 3 dismountConditions + p 4 knockbackConditions + p 5 damageConditions + p 6 forwardMovement + p 7 damageMultiplier + p 8 sound + p 9 hitSound +c net/minecraft/class_12123$class_12124 net/minecraft/component/type/KineticWeaponComponent$Condition + f Lnet/minecraft/class_9139; field_63410 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_63409 CODEC + f F comp_4966 minSpeed + f F comp_4967 minRelativeSpeed + f I comp_4965 maxDurationTicks + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75239 method_75239 + p 0 instance + m (IF)Ljava/util/Optional; method_75240 ofMinRelativeSpeed + p 0 maxDurationTicks + p 1 minRelativeSpeed + m (IDDD)Z method_75237 isSatisfied + p 6 minSpeedMultiplier + p 4 relativeSpeed + p 2 speed + p 1 durationTicks + m (IF)Ljava/util/Optional; method_75238 ofMinSpeed + p 1 minSpeed + p 0 maxDurationTicks + m ()I comp_4965 maxDurationTicks + m ()F comp_4966 minSpeed + m ()F comp_4967 minRelativeSpeed + m (IFF)V + p 1 maxDurationTicks + p 2 minSpeed + p 3 minRelativeSpeed +c net/minecraft/class_12122 net/minecraft/util/SwingAnimationType + f Ljava/util/function/IntFunction; field_63403 BY_PACKET_ID + f I field_63404 packetId + f Ljava/lang/String; field_63405 name + f Lnet/minecraft/class_9139; field_63402 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_63401 CODEC + f Lnet/minecraft/class_12122; field_63398 NONE + f Lnet/minecraft/class_12122; field_63399 WHACK + f Lnet/minecraft/class_12122; field_63400 STAB + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 packetId + p 4 name + m ()I method_75226 getPacketId +c net/minecraft/class_12121 net/minecraft/unused/packageinfo/PackageInfo12121 +c net/minecraft/class_12127 net/minecraft/component/type/UseEffectsComponent + f Lnet/minecraft/class_12127; field_63416 DEFAULT + f Lnet/minecraft/class_9139; field_63418 PACKET_CODEC + f Z comp_5230 interactVibrations + f F comp_4978 speedMultiplier + f Z comp_4977 canSprint + f Lcom/mojang/serialization/Codec; field_63417 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75250 method_75250 + p 0 instance + m ()Z comp_5230 interactVibrations + m ()Z comp_4977 canSprint + m ()F comp_4978 speedMultiplier + m (ZZF)V + p 1 canSprint + p 2 interactVibrations + p 3 speedMultiplier +c net/minecraft/class_6280 net/minecraft/unused/packageinfo/PackageInfo6280 +c net/minecraft/class_12126 net/minecraft/component/type/SwingAnimationComponent + f Lnet/minecraft/class_9139; field_63415 PACKET_CODEC + f Lnet/minecraft/class_12126; field_63413 DEFAULT + f I comp_4976 duration + f Lcom/mojang/serialization/Codec; field_63414 CODEC + f Lnet/minecraft/class_12122; comp_4975 type + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75249 method_75249 + p 0 instance + m ()I comp_4976 duration + m ()Lnet/minecraft/class_12122; comp_4975 type + m (Lnet/minecraft/class_12122;I)V + p 1 type + p 2 duration +c net/minecraft/class_12125 net/minecraft/component/type/PiercingWeaponComponent + f Lnet/minecraft/class_9139; field_63412 PACKET_CODEC + f Z comp_4971 dealsKnockback + f Z comp_4972 dismounts + f Ljava/util/Optional; comp_4974 hitSound + f Ljava/util/Optional; comp_4973 sound + f Lcom/mojang/serialization/Codec; field_63411 CODEC + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1297;)Z method_75241 method_75241 + p 1 target + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)Z method_75244 canHit + p 1 target + p 0 attacker + m (Lnet/minecraft/class_1297;)V method_75243 playSound + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;)V method_75245 method_75245 + p 1 sound + m (Lnet/minecraft/class_1297;)V method_75247 playHitSound + p 1 entity + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1304;)V method_75242 stab + p 1 attacker + p 2 slot + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;)V method_75248 method_75248 + p 1 sound + m (Ljava/util/Collection;)Ljava/util/Collection; method_76744 method_76744 + p 0 entityHits + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75246 method_75246 + p 0 instance + m (Lnet/minecraft/class_3965;)Ljava/util/Collection; method_76743 method_76743 + p 0 blockHit + m ()Z comp_4972 dismounts + m ()Z comp_4971 dealsKnockback + m ()Ljava/util/Optional; comp_4974 hitSound + m ()Ljava/util/Optional; comp_4973 sound + m (ZZLjava/util/Optional;Ljava/util/Optional;)V + p 1 dealsKnockback + p 2 dismounts + p 3 sound + p 4 hitSound +c net/minecraft/class_12129 net/minecraft/enchantment/effect/entity/ApplyImpulseEnchantmentEffect + f I field_64656 CURRENT_EXPLOSION_RESET_GRACE_TIME + f Lcom/mojang/serialization/MapCodec; field_63422 CODEC + f Lnet/minecraft/class_243; comp_4982 coordinateScale + f Lnet/minecraft/class_243; comp_4981 direction + f Lnet/minecraft/class_9704; comp_4983 magnitude + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75258 method_75258 + p 0 instance + m ()Lnet/minecraft/class_9704; comp_4983 magnitude + m ()Lnet/minecraft/class_243; comp_4982 coordinateScale + m ()Lnet/minecraft/class_243; comp_4981 direction + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_9704;)V + p 1 direction + p 2 coordinateScale + p 3 magnitude +c net/minecraft/class_6253 net/minecraft/unused/packageinfo/PackageInfo6253 +c net/minecraft/class_6252 net/minecraft/unused/packageinfo/PackageInfo6252 +c net/minecraft/class_6255 net/minecraft/unused/packageinfo/PackageInfo6255 +c net/minecraft/class_6254 net/minecraft/unused/packageinfo/PackageInfo6254 +c net/minecraft/class_7581 net/minecraft/client/realms/util/PeriodicRunnerFactory + f Ljava/util/concurrent/TimeUnit; field_39698 timeUnit + f Lnet/minecraft/class_7576; field_39699 timeSupplier + f Lorg/slf4j/Logger; field_39696 LOGGER + f Ljava/util/concurrent/Executor; field_39697 executor + m (Ljava/lang/String;Ljava/util/concurrent/Callable;Ljava/time/Duration;Lnet/minecraft/class_7587;)Lnet/minecraft/class_7581$class_7586; method_44629 create + p 3 cycle + p 4 backoff + p 1 name + p 2 task + m ()Lnet/minecraft/class_7581$class_7584; method_44628 create + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/TimeUnit;Lnet/minecraft/class_7576;)V + p 3 timeSupplier + p 2 timeUnit + p 1 executor +c net/minecraft/class_7581$class_7584 net/minecraft/client/realms/util/PeriodicRunnerFactory$RunnersManager + f Ljava/util/List; field_39705 runners + m (Lnet/minecraft/class_7581$class_7586;Ljava/util/function/Consumer;)V method_44635 add + p 2 resultListener + p 1 runner + m ()V method_44634 forceRunListeners + m ()V method_44636 runAll + m ()V method_44637 resetAll +c net/minecraft/class_7581$class_7583 net/minecraft/client/realms/util/PeriodicRunnerFactory$ResultListenableRunner + f Ljava/util/function/Consumer; field_39702 resultListener + f J field_39703 lastRunTime + f Lnet/minecraft/class_7581$class_7586; field_39701 runner + m (J)V method_44631 run + p 1 currentTime + m (Lnet/minecraft/class_7581;Lnet/minecraft/class_7581$class_7586;Ljava/util/function/Consumer;)V + p 3 resultListener + p 2 runner + m ()V method_44633 reset + m ()V method_44630 runListener + m ()V method_44632 forceRunListener +c net/minecraft/class_7581$class_7582 net/minecraft/client/realms/util/PeriodicRunnerFactory$TimedErrableResult + f J comp_889 time + f Lcom/mojang/datafixers/util/Either; comp_888 value + m ()J comp_889 time + m ()Lcom/mojang/datafixers/util/Either; comp_888 value + m (Lcom/mojang/datafixers/util/Either;J)V + p 1 value + p 2 time +c net/minecraft/class_7581$class_7586 net/minecraft/client/realms/util/PeriodicRunnerFactory$PeriodicRunner + f J field_39709 unitDuration + f Lnet/minecraft/class_7581$class_7585; field_39712 lastResult + f Lnet/minecraft/class_7587; field_39710 backoff + f J field_39713 nextTime + f Ljava/util/concurrent/CompletableFuture; field_39711 resultFuture + f Ljava/lang/String; field_39707 name + f Ljava/util/concurrent/Callable; field_39708 task + m (JLjava/lang/Object;)V method_44641 method_44641 + p 3 value + m ()V method_44638 reset + m (JLjava/lang/Exception;)V method_44640 method_44640 + p 3 exception + m (Lnet/minecraft/class_7581;Ljava/lang/String;Ljava/util/concurrent/Callable;JLnet/minecraft/class_7587;)V + p 6 backoff + p 2 name + p 3 task + p 4 unitDuration + m (J)V method_44639 run + p 1 currentTime +c net/minecraft/class_7581$class_7585 net/minecraft/client/realms/util/PeriodicRunnerFactory$TimedResult + f J comp_891 time + f Ljava/lang/Object; comp_890 value + m ()J comp_891 time + m ()Ljava/lang/Object; comp_890 value + m (Ljava/lang/Object;J)V + p 1 value + p 2 time +c net/minecraft/class_6251 net/minecraft/unused/packageinfo/PackageInfo6251 +c net/minecraft/class_6250 net/minecraft/unused/packageinfo/PackageInfo6250 +c net/minecraft/class_7580 net/minecraft/client/realms/util/RealmsServerFilterer + f Ljava/util/Set; field_39693 removedServers + f Ljava/util/List; field_39694 sortedServers + f Lnet/minecraft/class_310; field_39692 client + m (Lnet/minecraft/class_4877;)V method_44622 remove + p 1 server + m ()Z method_52664 isEmpty + m (Ljava/util/List;)V method_44623 filterAndSort + p 1 servers + m (Lnet/minecraft/class_310;)V + p 1 client +c net/minecraft/class_6257 net/minecraft/unused/packageinfo/PackageInfo6257 +c net/minecraft/class_7589 net/minecraft/datafixer/fix/BlendingDataRemoveFromNetherEndFix + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/OptionalDynamic;)Lcom/mojang/serialization/Dynamic; method_44688 removeInapplicableBlendingData + p 1 context + p 0 chunk + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44687 method_44687 + p 0 chunk + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_44686 method_44686 + p 0 typed + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_6256 net/minecraft/client/render/entity/GoatEntityRenderer + f Lnet/minecraft/class_2960; field_32923 TEXTURE + m (Lnet/minecraft/class_6053;Lnet/minecraft/class_10030;F)V method_62452 updateRenderState + m ()Lnet/minecraft/class_10030; method_62453 createRenderState + m (Lnet/minecraft/class_10030;)Lnet/minecraft/class_2960; method_35800 getTexture +c net/minecraft/class_6259 net/minecraft/unused/packageinfo/PackageInfo6259 +c net/minecraft/class_7587 net/minecraft/client/util/Backoff + f Lnet/minecraft/class_7587; field_39714 ONE_CYCLE + m (I)Lnet/minecraft/class_7587; method_44644 exponential + p 0 maxSkippableCycles + m ()J method_44645 fail + m ()J method_44643 success +c net/minecraft/class_7587$2 net/minecraft/client/util/Backoff$2 + f Lorg/slf4j/Logger; field_39716 LOGGER + f I field_39717 failureCount +c net/minecraft/class_6258 net/minecraft/unused/packageinfo/PackageInfo6258 +c net/minecraft/class_7588 net/minecraft/client/session/Bans + f Lnet/minecraft/class_2561; field_39720 TEMPORARY_TITLE + f Lnet/minecraft/class_2561; field_39721 PERMANENT_TITLE + f Lnet/minecraft/class_2561; field_46010 SKIN_TITLE + f Lnet/minecraft/class_2561; field_46011 SKIN_DESCRIPTION + f Lnet/minecraft/class_2561; field_46009 NAME_TITLE + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/class_2561; method_44655 getDurationText + p 0 banDetails + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/class_2561; method_44656 getTemporaryBanDurationText + p 0 banDetails + m (Ljava/net/URI;Ljava/lang/Runnable;Z)V method_53555 method_53555 + p 2 confirmed + m (Ljava/lang/String;Ljava/lang/Runnable;)Lnet/minecraft/class_407; method_53556 createUsernameBanScreen + p 0 username + p 1 onClose + m (Lcom/mojang/authlib/minecraft/BanDetails;)Z method_44657 isTemporary + p 0 banDetails + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/class_407; method_44652 createBanScreen + p 1 banDetails + p 0 callback + m (Ljava/net/URI;Ljava/lang/Runnable;Z)V method_53557 method_53557 + p 2 confirmed + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/class_2561; method_44653 getDescriptionText + p 0 banDetails + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/class_2561; method_44654 getReasonText + p 0 banDetails + m (Ljava/lang/Runnable;)Lnet/minecraft/class_407; method_53554 createSkinBanScreen + p 0 onClose + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/class_2561; method_44651 getTitle + p 0 banDetails +c net/minecraft/class_12152 net/minecraft/client/render/entity/state/Lancing + m (Lnet/minecraft/class_630;Lnet/minecraft/class_630;ZLnet/minecraft/class_1799;Lnet/minecraft/class_10034;)V method_75394 positionArmForSpear + p 0 arm + p 1 head + p 2 right + p 3 itemStack + p 4 state +c net/minecraft/class_12151 net/minecraft/client/render/entity/model/NautilusSaddleEntityModel + f Lnet/minecraft/class_630; field_63554 shell + f Lnet/minecraft/class_630; field_63553 saddleRoot + m ()Lnet/minecraft/class_5607; method_75389 getTexturedModelData +c net/minecraft/class_12150 net/minecraft/client/render/entity/model/NautilusEntityModel + f Lnet/minecraft/class_11509; field_63552 animation + f Lnet/minecraft/class_630; field_63550 body + f Lnet/minecraft/class_630; field_63551 nautilusRoot + m ()Lnet/minecraft/class_5607; method_75388 getBabyTexturedModelData + m (FF)V method_75384 setHeadAngles + p 2 pitch + p 1 yaw + m ()Lnet/minecraft/class_5607; method_75386 getTexturedModelData + m (Lnet/minecraft/class_12158;)V method_75385 setAngles + m ()Lnet/minecraft/class_5609; method_75387 getModelData +c net/minecraft/class_12156 net/minecraft/client/render/entity/NautilusEntityRenderer + f Lnet/minecraft/class_2960; field_64455 TEXTURE + f Lnet/minecraft/class_2960; field_64456 BABY_TEXTURE + m ()Lnet/minecraft/class_12158; method_75461 createRenderState + m (Lnet/minecraft/class_12158;)Lnet/minecraft/class_1799; method_75462 method_75462 + p 0 state + m (Lnet/minecraft/class_12158;)Lnet/minecraft/class_1799; method_75463 method_75463 + p 0 state + m (Lnet/minecraft/class_5617$class_5618;)V + p 1 context + m (Lnet/minecraft/class_12158;)Lnet/minecraft/class_2960; method_75460 getTexture + m (Lnet/minecraft/class_12116;Lnet/minecraft/class_12158;F)V method_75459 updateRenderState +c net/minecraft/class_12155 net/minecraft/client/render/debug/EntityHitboxDebugRenderer + f Lnet/minecraft/class_310; field_63589 client + m (Lnet/minecraft/class_310;)V + p 1 client + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1297; method_75431 getLocalServerEntity + p 1 entity + m (Lnet/minecraft/class_1297;FZ)V method_75432 drawHitbox + p 2 tickProgress + p 1 entity + p 3 inLocalServer +c net/minecraft/class_12159 net/minecraft/client/render/entity/state/LancerEntityRenderState +c net/minecraft/class_12158 net/minecraft/client/render/entity/state/NautilusEntityRenderState + f Lnet/minecraft/class_1799; field_63606 saddleStack + f Lnet/minecraft/class_1799; field_63607 armorStack + f Lnet/minecraft/class_12319; field_64458 variant +c net/minecraft/class_6264 net/minecraft/unused/packageinfo/PackageInfo6264 +c net/minecraft/class_6263 net/minecraft/unused/packageinfo/PackageInfo6263 +c net/minecraft/class_7597 net/minecraft/network/packet/s2c/play/ChatSuggestionsS2CPacket + f Lnet/minecraft/class_9139; field_47920 CODEC + f Ljava/util/List; comp_909 entries + f Lnet/minecraft/class_7597$class_7598; comp_908 action + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_55872 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_44783 apply + m ()Ljava/util/List; comp_909 entries + m ()Lnet/minecraft/class_7597$class_7598; comp_908 action + m (Lnet/minecraft/class_7597$class_7598;Ljava/util/List;)V + p 1 action + p 2 entries +c net/minecraft/class_7597$class_7598 net/minecraft/network/packet/s2c/play/ChatSuggestionsS2CPacket$Action + f Lnet/minecraft/class_7597$class_7598; field_39803 SET + f Lnet/minecraft/class_7597$class_7598; field_39802 REMOVE + f Lnet/minecraft/class_7597$class_7598; field_39801 ADD +c net/minecraft/class_6266 net/minecraft/unused/packageinfo/PackageInfo6266 +c net/minecraft/class_7594 net/minecraft/client/network/message/MessageHandler + c Handles received messages, including chat messages and game messages. + f J field_39798 lastProcessTime + f Ljava/util/Deque; field_39796 delayedMessages + f Lnet/minecraft/class_310; field_39779 client + f Lnet/minecraft/class_2561; field_45950 VALIDATION_ERROR_TEXT + f J field_39797 chatDelay + m (Lnet/minecraft/class_2561;Ljava/time/Instant;)V method_44735 addToChatLog + p 1 message + p 2 timestamp + m (Lnet/minecraft/class_7471;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_2556$class_7602;)V method_45748 onChatMessage + p 1 message + p 3 params + p 2 sender + m (Lnet/minecraft/class_2561;)Ljava/util/UUID; method_44734 extractSender + p 1 text + m (Lnet/minecraft/class_7471;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_7595;)V method_44737 addToChatLog + p 1 message + p 3 messageTrustStatus + m (Lnet/minecraft/class_310;)V + p 1 client + m (Lnet/minecraft/class_2556$class_7602;Lnet/minecraft/class_7471;Lnet/minecraft/class_2561;Lcom/mojang/authlib/GameProfile;ZLjava/time/Instant;)Z method_44943 processChatMessageInternal + c Processes a chat message.\n\n

If the message cannot be verified due to a broken chain, this disconnects\nthe client from the server.\n\n

The message can still end up not being displayed if the verification\nfails and {@code onlyShowSecureChat} is {@code true} or if the sender is\nblocked via the social interactions screen.\n\n

This adds the message to the hud, narrates it, and appends it to the\nchat log.\n\n@return whether the message was actually displayed + p 3 decorated + p 4 sender + p 5 onlyShowSecureChat + p 6 receptionTimestamp + c the timestamp when the message was received by this client + p 1 params + p 2 message + m ()J method_44944 getUnprocessedMessageCount + c {@return the number of delayed messages that are not processed yet} + m (Ljava/util/UUID;Lnet/minecraft/class_7469;Lnet/minecraft/class_2556$class_7602;)V method_53488 onUnverifiedMessage + p 2 signature + p 3 parameters + p 1 sender + m (Ljava/util/UUID;)Z method_44738 isAlwaysTrusted + c {@return whether messages from {@code sender} are always trusted}\n\n

Messages from this client's player in a singleplayer world are always trusted. + p 1 sender + m (Lnet/minecraft/class_7469;Lnet/minecraft/class_7594$class_7627;)Z method_45747 method_45747 + p 1 message + m ()V method_44765 processDelayedMessages + c Processes all delayed messages until one of them fails to process if the delay\nhas passed, and otherwise does nothing. + m (Lnet/minecraft/class_2556$class_7602;Lnet/minecraft/class_2561;)V method_44772 narrate + c Narrates {@code message}.\n\n@see net.minecraft.client.util.NarratorManager#narrateChatMessage + p 1 params + p 2 message + m (Lnet/minecraft/class_7471;Lnet/minecraft/class_2561;Ljava/time/Instant;)Lnet/minecraft/class_7595; method_44732 getStatus + c {@return the trust status of {@code message}}\n\n

This returns {@link MessageTrustStatus#SECURE} for messages that are\nconsidered to be {@linkplain #isAlwaysTrusted always trusted}.\n\n@see #isAlwaysTrusted\n@see MessageTrustStatus#getStatus + p 1 message + p 2 decorated + p 3 receptionTimestamp + m (Lnet/minecraft/class_2561;Z)V method_44736 onGameMessage + c Called when a game message is received.\n\n

Game messages ignore chat delay. + p 2 overlay + p 1 message + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2556$class_7602;)V method_45746 onProfilelessMessage + p 2 params + p 1 content + m ()Z method_44775 shouldDelay + c {@return if the chat delay is set and the message should be delayed} + m (Lnet/minecraft/class_7469;)Z method_44819 removeDelayedMessage + c Removes a delayed message whose signature matches {@code signature}.\nIf this returns {@code false}, either the message is not received or it it\nalready on the hud.\n\n@return whether the message was removed + p 1 signature + m (Lnet/minecraft/class_7469;Ljava/util/function/BooleanSupplier;)V method_44818 process + c Queues {@code processor} during {@linkplain #shouldDelay the chat delay},\notherwise runs the processor. + p 2 processor + p 1 signature + m ()V method_44769 process + c Processes one delayed message from the queue's beginning. + m ()V method_44945 processAll + c Processes all delayed messages from the queue. + m (D)V method_44766 setChatDelay + c Sets the chat delay to {@code chatDelay} seconds. If the chat delay was changed\nto {@code 0}, this also processes all queued messages. + p 1 chatDelay +c net/minecraft/class_7594$class_7627 net/minecraft/client/network/message/MessageHandler$ProcessableMessage + c A message to be processed. An instance is created for each received message. + f Lnet/minecraft/class_7469; comp_1034 signature + f Ljava/util/function/BooleanSupplier; comp_1035 handler + m ()Z method_45750 accept + c If this is not processed yet, adds the message to the hud; otherwise, processes\nthe message header without adding to the hud. + m ()Ljava/util/function/BooleanSupplier; comp_1035 handler + m ()Lnet/minecraft/class_7469; comp_1034 signature + m (Lnet/minecraft/class_7469;Ljava/util/function/BooleanSupplier;)V + p 1 signature + p 2 handler +c net/minecraft/class_6265 net/minecraft/unused/packageinfo/PackageInfo6265 +c net/minecraft/class_7595 net/minecraft/client/network/message/MessageTrustStatus + f Lcom/mojang/serialization/Codec; field_40801 CODEC + f Ljava/lang/String; field_40802 id + f Lnet/minecraft/class_7595; field_39782 NOT_SECURE + f Lnet/minecraft/class_7595; field_39780 SECURE + f Lnet/minecraft/class_7595; field_39781 MODIFIED + m (Lnet/minecraft/class_7471;Lnet/minecraft/class_2561;Ljava/time/Instant;)Lnet/minecraft/class_7595; method_44742 getStatus + p 1 decorated + p 0 message + p 2 receptionTimestamp + m (Lnet/minecraft/class_7471;Lnet/minecraft/class_2561;)Z method_45755 isModified + p 1 decorated + p 0 message + m (Lnet/minecraft/class_2583;Ljava/lang/String;)Ljava/util/Optional; method_45757 method_45757 + p 0 style + p 1 part + m (Lnet/minecraft/class_7471;)Lnet/minecraft/class_7591; method_44741 createIndicator + p 1 message + m ()Z method_44740 isInsecure + m (Lnet/minecraft/class_2561;)Z method_45754 isNotInDefaultFont + p 0 content + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m (Lnet/minecraft/class_2583;)Z method_45756 isNotInDefaultFont + p 0 style +c net/minecraft/class_6260 net/minecraft/unused/packageinfo/PackageInfo6260 +c net/minecraft/class_6262 net/minecraft/unused/packageinfo/PackageInfo6262 +c net/minecraft/class_6261 net/minecraft/unused/packageinfo/PackageInfo6261 +c net/minecraft/class_7591 net/minecraft/client/gui/hud/MessageIndicator + f I field_39759 MODIFIED_COLOR + f I field_39758 NOT_SECURE_COLOR + f Ljava/lang/String; comp_902 loggedName + f Lnet/minecraft/class_7591; field_41093 SINGLE_PLAYER + f Lnet/minecraft/class_2561; field_40379 SYSTEM_TEXT + f Lnet/minecraft/class_2561; field_45897 ERROR_TEXT + f Lnet/minecraft/class_2561; field_41092 SINGLE_PLAYER_TEXT + f Lnet/minecraft/class_2561; field_39757 MODIFIED_TEXT + f Lnet/minecraft/class_2561; field_39756 NOT_SECURE_TEXT + f Lnet/minecraft/class_7591; field_39789 SYSTEM + f Lnet/minecraft/class_7591; field_45898 CHAT_ERROR + f Lnet/minecraft/class_7591; field_39760 NOT_SECURE + f I comp_899 indicatorColor + f Lnet/minecraft/class_2561; comp_901 text + f Lnet/minecraft/class_7591$class_7592; comp_900 icon + m ()Lnet/minecraft/class_7591; method_44709 notSecure + m ()Ljava/lang/String; comp_902 loggedName + m ()Lnet/minecraft/class_7591; method_53461 chatError + m ()Lnet/minecraft/class_7591; method_47391 singlePlayer + m ()Lnet/minecraft/class_7591; method_44751 system + m (Ljava/lang/String;)Lnet/minecraft/class_7591; method_44710 modified + p 0 originalText + m ()Lnet/minecraft/class_2561; comp_901 text + m ()Lnet/minecraft/class_7591$class_7592; comp_900 icon + m ()I comp_899 indicatorColor + m (ILnet/minecraft/class_7591$class_7592;Lnet/minecraft/class_2561;Ljava/lang/String;)V + p 1 indicatorColor + p 2 icon + p 3 text + p 4 loggedName +c net/minecraft/class_7591$class_7592 net/minecraft/client/gui/hud/MessageIndicator$Icon + f Lnet/minecraft/class_2960; field_45292 texture + f I field_39767 height + f I field_39766 width + f Lnet/minecraft/class_7591$class_7592; field_39763 CHAT_MODIFIED + m (Ljava/lang/String;ILnet/minecraft/class_2960;II)V + p 5 height + p 4 width + p 3 texture + m (Lnet/minecraft/class_332;II)V method_44712 draw + p 1 context + p 2 x + p 3 y +c net/minecraft/class_6268 net/minecraft/unused/packageinfo/PackageInfo6268 +c net/minecraft/class_6267 net/minecraft/unused/packageinfo/PackageInfo6267 +c net/minecraft/class_6269 net/minecraft/unused/packageinfo/PackageInfo6269 +c net/minecraft/class_12140 net/minecraft/client/render/entity/animation/NautilusAnimations + f Lnet/minecraft/class_7184; field_63502 ANIMATION +c net/minecraft/class_12144 net/minecraft/client/gui/Updatable + m ()V method_75314 update +c net/minecraft/class_12149 net/minecraft/client/render/entity/model/NautilusArmorEntityModel + f Lnet/minecraft/class_630; field_63545 shell + f Lnet/minecraft/class_630; field_63544 armorRoot + m ()Lnet/minecraft/class_5607; method_75383 getTexturedModelData +c net/minecraft/class_8894 net/minecraft/unused/packageinfo/PackageInfo8894 +c net/minecraft/class_6231 net/minecraft/unused/packageinfo/PackageInfo6231 +c net/minecraft/class_7563 net/minecraft/client/session/report/AbuseReportSender + m ()Z method_44561 canSendReports + m (Ljava/util/UUID;Lnet/minecraft/class_8776;Lcom/mojang/authlib/minecraft/report/AbuseReport;)Ljava/util/concurrent/CompletableFuture; method_44563 send + p 3 report + p 1 id + p 2 type + m ()Lcom/mojang/authlib/minecraft/report/AbuseReportLimits; method_44564 getLimits + m (Lnet/minecraft/class_7569;Lcom/mojang/authlib/minecraft/UserApiService;)Lnet/minecraft/class_7563; method_44562 create + p 0 environment + p 1 userApiService +c net/minecraft/class_7563$class_7564 net/minecraft/client/session/report/AbuseReportSender$AbuseReportException +c net/minecraft/class_7563$class_7565 net/minecraft/client/session/report/AbuseReportSender$Impl + f Lnet/minecraft/class_2561; field_39642 SERVICE_UNAVAILABLE_ERROR_TEXT + f Lnet/minecraft/class_2561; field_39643 HTTP_ERROR_TEXT + f Lnet/minecraft/class_2561; field_39644 JSON_ERROR_TEXT + f Lcom/mojang/authlib/minecraft/UserApiService; comp_876 userApiService + f Lnet/minecraft/class_7569; comp_875 environment + m (Lcom/mojang/authlib/exceptions/MinecraftClientException;)Lnet/minecraft/class_2561; method_44565 getErrorText + p 1 exception + m (Lcom/mojang/authlib/exceptions/MinecraftClientHttpException;)Lnet/minecraft/class_2561; method_44566 getErrorText + p 1 exception + m ()Lnet/minecraft/class_7569; comp_875 environment + m ()Lcom/mojang/authlib/minecraft/UserApiService; comp_876 userApiService + m (Lnet/minecraft/class_7569;Lcom/mojang/authlib/minecraft/UserApiService;)V + p 1 environment + p 2 userApiService +c net/minecraft/class_8895 net/minecraft/world/level/storage/ParsedSaveProperties + f Lnet/minecraft/class_5219; comp_2008 properties + f Lnet/minecraft/class_7723$class_7725; comp_2009 dimensions + m ()Lnet/minecraft/class_5219; comp_2008 properties + m ()Lnet/minecraft/class_7723$class_7725; comp_2009 dimensions + m (Lnet/minecraft/class_5219;Lnet/minecraft/class_7723$class_7725;)V + p 1 properties + p 2 dimensions +c net/minecraft/class_6230 net/minecraft/client/render/entity/model/EntityModelPartNames + c Contains common model part names used in {@linkplain EntityModel entity models}. + f Ljava/lang/String; field_32618 TAIL_FIN + c The key of a tail fin model part, whose value is {@value}. + f Ljava/lang/String; field_32606 HEAD + c The key of a head model part, whose value is {@value}. + f Ljava/lang/String; field_59961 GOGGLES + c The key of a goggles model part, whose value is {@value}. + f Ljava/lang/String; field_37943 CROAKING_BODY + c The key of a croaking body model part, whose value is {@value}. + f Ljava/lang/String; field_38458 LEFT_RIBCAGE + c The key of a left ribcage model part, whose value is {@value}. + f Ljava/lang/String; field_32589 RIGHT_LID + c The key of a right lid model part, whose value is {@value}. + f Ljava/lang/String; field_32610 HAT_RIM + c The key of a hat rim model part, whose value is {@value}. + f Ljava/lang/String; field_32634 RIGHT_HIND_LEG + c The key of a right hind leg model part, whose value is {@value}. + f Ljava/lang/String; field_32622 RIGHT_ARM + c The key of a right arm model part, whose value is {@value}. + f Ljava/lang/String; field_49564 MUSHROOMS + c The key of a mushrooms model part, whose value is {@value}. + f Ljava/lang/String; field_32593 RIGHT_HORN + c The key of a right horn model part, whose value is {@value}. + f Ljava/lang/String; field_64434 YELLOW_CORAL_FIRST + c The key of a first yellow coral model part, whose value is {@value}. + f Ljava/lang/String; field_63563 LOWER_MOUTH + c The key of a lower mouth model part, whose value is {@value}. + f Ljava/lang/String; field_32607 HAT + c The key of a hat model part, whose value is {@value}. + f Ljava/lang/String; field_38330 LEFT_TENDRIL + c The key of a left tendril model part, whose value is {@value}. + f Ljava/lang/String; field_59962 HARNESS + c The key of a harness model part, whose value is {@value}. + f Ljava/lang/String; field_37944 TONGUE + c The key of a tongue model part, whose value is {@value}. + f Ljava/lang/String; field_32619 LEFT_BLUE_FIN + c The key of a left blue fin model part, whose value is {@value}. + f Ljava/lang/String; field_32635 LEFT_FRONT_LEG + c The key of a left front leg model part, whose value is {@value}. + f Ljava/lang/String; field_32623 LEFT_WING + c The key of a left wing model part, whose value is {@value}. + f Ljava/lang/String; field_32611 JACKET + c The key of a jacket model part, whose value is {@value}. + f Ljava/lang/String; field_64433 YELLOW_CORAL + c The key of a yellow coral model part, whose value is {@value}. + f Ljava/lang/String; field_32594 LEFT_EYE + c The key of a left eye model part, whose value is {@value}. + f Ljava/lang/String; field_47449 WIND_BOTTOM + c The key of a wind bottom model part, whose value is {@value}. + f Ljava/lang/String; field_63562 INNER_MOUTH + c The key of an inner mouth model part, whose value is {@value}. + f Ljava/lang/String; field_32628 RIGHT_WING_TIP + c The key of a right wing tip model part, whose value is {@value}. + f Ljava/lang/String; field_38331 BONE + c The key of a bone model part, whose value is {@value}. + f Ljava/lang/String; field_32616 TOP_FIN + c The key of a top fin model part, whose value is {@value}. + f Ljava/lang/String; field_32604 NECK + c The key of a neck model part, whose value is {@value}. + f Ljava/lang/String; field_37945 TONGUE_RL + c The key of a tongue rl model part, whose value is {@value}. + f Ljava/lang/String; field_32632 RIGHT_LEG + c The key of a right leg model part, whose value is {@value}. + f Ljava/lang/String; field_32620 RIGHT_BLUE_FIN + c The key of a right blue fin model part, whose value is {@value}. + f Ljava/lang/String; field_32587 RIGHT_FRONT_LEG_TIP + c The key of a right front leg tip model part, whose value is {@value}. + f Ljava/lang/String; field_32599 TAIL + c The key of a tail model part, whose value is {@value}. + f Ljava/lang/String; field_42886 RIGHT_MID_LEG + c The key of a right mid leg part, whose value is {@value}. + f Ljava/lang/String; field_53023 RIGHT_PADDLE + c The key of a right paddle model part, whose value is {@value}. + f Ljava/lang/String; field_32591 RIGHT_CHEST + c The key of a right chest model part, whose value is {@value}. + f Ljava/lang/String; field_32629 LEFT_EAR + c The key of a left ear model part, whose value is {@value}. + f Ljava/lang/String; field_37946 LEFT_HAND + c The key of a left hand model part, whose value is {@value}. + f Ljava/lang/String; field_32617 BOTTOM_FIN + c The key of a bottom fin model part, whose value is {@value}. + f Ljava/lang/String; field_32605 MOUTH + c The key of a mouth model part, whose value is {@value}. + f Ljava/lang/String; field_32621 LEFT_ARM + c The key of a left arm model part, whose value is {@value}. + f Ljava/lang/String; field_53022 LEFT_PADDLE + c The key of a left paddle model part, whose value is {@value}. + f Ljava/lang/String; field_54849 UPPER_BODY + c The key of an upper body model part, whose value is {@value}. + f Ljava/lang/String; field_32588 LEFT_LID + c The key of a left lid model part, whose value is {@value}. + f Ljava/lang/String; field_32633 LEFT_HIND_LEG + c The key of a left hind leg model part, whose value is {@value}. + f Ljava/lang/String; field_32592 LEFT_HORN + c The key of a left horn model part, whose value is {@value}. + f Ljava/lang/String; field_64443 RED_CORAL_SECOND + c The key of a second red coral model part, whose value is {@value}. + f Ljava/lang/String; field_42885 LEFT_MID_LEG + c The key of a left mid leg part, whose value is {@value}. + f Ljava/lang/String; field_47128 FEET + c The key of a feet model part, whose value is {@value}. + f Ljava/lang/String; field_37950 EYES + c The key of an eyes model part, whose value is {@value}. + f Ljava/lang/String; field_64439 BLUE_CORAL_FIRST + c The key of a first blue coral model part, whose value is {@value}. + f Ljava/lang/String; field_37947 RIGHT_HAND + c The key of a right hand model part, whose value is {@value}. + f Ljava/lang/String; field_32638 RIGHT_HIND_FOOT + c The key of a right hind foot model part, whose value is {@value}. + f Ljava/lang/String; field_32626 RIGHT_WING_BASE + c The key of a right wing base model part, whose value is {@value}. + f Ljava/lang/String; field_47450 RODS + c The key of a rods model part, whose value is {@value}. + f Ljava/lang/String; field_32630 RIGHT_EAR + c The key of a right ear model part, whose value is {@value}. + f Ljava/lang/String; field_32585 RIGHT_HIND_LEG_TIP + c The key of a right hind leg tip model part, whose value is {@value}. + f Ljava/lang/String; field_32614 RIGHT_GILLS + c The key of a right gills model part, whose value is {@value}. + f Ljava/lang/String; field_32597 NOSE + c The key of a nose model part, whose value is {@value}. + f Ljava/lang/String; field_32602 BACK_FIN + c The key of a back fin model part, whose value is {@value}. + f Ljava/lang/String; field_47446 WIND_BODY + c The key of a wind body model part, whose value is {@value}. + f Ljava/lang/String; field_64442 RED_CORAL_FIRST + c The key of a first red coral model part, whose value is {@value}. + f Ljava/lang/String; field_53025 CHEST_BOTTOM + c The key of a chest bottom model part, whose value is {@value}. + f Ljava/lang/String; field_56091 UPPER_MOUTH + c The key of an upper mouth model part, whose value is {@value}. + f Ljava/lang/String; field_38329 RIGHT_TENDRIL + c The key of a right tendril model part, whose value is {@value}. + f Ljava/lang/String; field_64438 BLUE_CORAL + c The key of a blue coral model part, whose value is {@value}. + f Ljava/lang/String; field_32639 LEFT_FRONT_FOOT + c The key of a left front foot model part, whose value is {@value}. + f Ljava/lang/String; field_32627 LEFT_WING_TIP + c The key of a left wing tip model part, whose value is {@value}. + f Ljava/lang/String; field_37948 LEFT_FOOT + c The key of a left foot model part, whose value is {@value}. + f Ljava/lang/String; field_32615 RIGHT_FIN + c The key of a right fin model part, whose value is {@value}. + f Ljava/lang/String; field_32631 LEFT_LEG + c The key of a left leg model part, whose value is {@value}. + f Ljava/lang/String; field_32603 MANE + c The key of a mane model part, whose value is {@value}. + f Ljava/lang/String; field_32586 LEFT_FRONT_LEG_TIP + c The key of a left front leg tip model part, whose value is {@value}. + f Ljava/lang/String; field_32598 ARMS + c The key of an arms model part, whose value is {@value}. + f Ljava/lang/String; field_64441 RED_CORAL + c The key of a red coral model part, whose value is {@value}. + f Ljava/lang/String; field_64437 PINK_CORAL_SECOND + c The key of a second pink coral model part, whose value is {@value}. + f Ljava/lang/String; field_32590 LEFT_CHEST + c The key of a left chest model part, whose value is {@value}. + f Ljava/lang/String; field_53024 BOTTOM + c The key of a bottom model part, whose value is {@value}. + f Ljava/lang/String; field_37949 RIGHT_FOOT + c The key of a right foot model part, whose value is {@value}. + f Ljava/lang/String; field_32608 BODY + c The key of a body model part, whose value is {@value}. + f Ljava/lang/String; field_32636 RIGHT_FRONT_LEG + c The key of a right front leg model part, whose value is {@value}. + f Ljava/lang/String; field_32624 RIGHT_WING + c The key of a right wing model part, whose value is {@value}. + f Ljava/lang/String; field_64440 BLUE_CORAL_SECOND + c The key of a second blue coral model part, whose value is {@value}. + f Ljava/lang/String; field_32612 TOP_GILLS + c The key of a top gills model part, whose value is {@value}. + f Ljava/lang/String; field_32600 CUBE + c The key of a cube model part, whose value is {@value}. + f Ljava/lang/String; field_32583 RIGHT_FRONT_FOOT + c The key of a right front foot model part, whose value is {@value}. + f Ljava/lang/String; field_53027 CHEST_LOCK + c The key of a chest lock model part, whose value is {@value}. + f Ljava/lang/String; field_32595 RIGHT_EYE + c The key of a right eye model part, whose value is {@value}. + f Ljava/lang/String; field_47448 WIND_MID + c The key of a wind mid model part, whose value is {@value}. + f Ljava/lang/String; field_64436 PINK_CORAL + c The key of a pink coral model part, whose value is {@value}. + f Ljava/lang/String; field_59960 INNER_BODY + c The key of an inner body model part, whose value is {@value}. + f Ljava/lang/String; field_32637 LEFT_HIND_FOOT + c The key of a left hind foot model part, whose value is {@value}. + f Ljava/lang/String; field_37942 ROOT + c The key of a root model part, whose value is {@value}. + f Ljava/lang/String; field_32609 LEFT_FIN + c The key of a left fin model part, whose value is {@value}. + f Ljava/lang/String; field_38457 RIGHT_RIBCAGE + c The key of a right ribcage model part, whose value is {@value}. + f Ljava/lang/String; field_32596 JAW + c The key of a jaw model part, whose value is {@value}. + f Ljava/lang/String; field_32625 LEFT_WING_BASE + c The key of a left wing base model part, whose value is {@value}. + f Ljava/lang/String; field_32613 LEFT_GILLS + c The key of a left gills model part, whose value is {@value}. + f Ljava/lang/String; field_32601 BEAK + c The key of a beak model part, whose value is {@value}. + f Ljava/lang/String; field_47447 WIND_TOP + c The key of a wind top model part, whose value is {@value}. + f Ljava/lang/String; field_32584 LEFT_HIND_LEG_TIP + c The key of a left hind leg tip model part, whose value is {@value}. + f Ljava/lang/String; field_53026 CHEST_LID + c The key of a chest lid model part, whose value is {@value}. + f Ljava/lang/String; field_64435 YELLOW_CORAL_SECOND + c The key of a second yellow coral model part, whose value is {@value}. + f Ljava/lang/String; field_63564 SHELL + c The key of a shell model part, whose value is {@value}. + m (I)Ljava/lang/String; method_70935 getTentacleName + c @return The key of a tentacle model part, suffixed with {@code index}. + p 0 index +c net/minecraft/class_8892 net/minecraft/structure/pool/alias/RandomStructurePoolAliasBinding + f Lcom/mojang/serialization/MapCodec; field_46827 CODEC + f Lnet/minecraft/class_6012; comp_2006 targets + f Lnet/minecraft/class_5321; comp_2005 alias + m (Ljava/util/function/BiConsumer;Lnet/minecraft/class_5321;)V method_54515 method_54515 + p 2 target + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54514 method_54514 + p 0 instance + m ()Lnet/minecraft/class_6012; comp_2006 targets + m ()Lnet/minecraft/class_5321; comp_2005 alias + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_6012;)V + p 1 alias + p 2 targets +c net/minecraft/class_6233 net/minecraft/unused/packageinfo/PackageInfo6233 +c net/minecraft/class_7561 net/minecraft/network/message/MessageSignatureStorage + c Collects message signatures on the server to make a message chain. + f I field_40845 MISSING + f I field_40686 MAX_ENTRIES + f [Lnet/minecraft/class_7469; field_40687 signatures + m (Ljava/util/ArrayDeque;)V method_46283 addFrom + p 1 deque + m (Ljava/util/List;)V method_46284 addFrom + p 1 signatures + m ()Lnet/minecraft/class_7561; method_46281 create + m (I)V + p 1 maxEntries + m (Lnet/minecraft/class_7608;Lnet/minecraft/class_7469;)V method_46286 add + p 2 signature + p 1 body + m (I)Lnet/minecraft/class_7469; method_46606 get + p 1 index + m (Lnet/minecraft/class_7469;)I method_46607 indexOf + p 1 signature +c net/minecraft/class_8893 net/minecraft/structure/pool/alias/RandomGroupStructurePoolAliasBinding + f Lcom/mojang/serialization/MapCodec; field_46828 CODEC + f Lnet/minecraft/class_6012; comp_2007 groups + m (Lnet/minecraft/class_5819;Ljava/util/function/BiConsumer;Ljava/util/List;)V method_54516 method_54516 + p 2 group + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54519 method_54519 + p 0 instance + m (Lnet/minecraft/class_5819;Ljava/util/function/BiConsumer;Lnet/minecraft/class_8889;)V method_54517 method_54517 + p 2 binding + m (Lnet/minecraft/class_6010;)Ljava/util/stream/Stream; method_54518 method_54518 + p 0 present + m ()Lnet/minecraft/class_6012; comp_2007 groups + m (Lnet/minecraft/class_6012;)V + p 1 groups +c net/minecraft/class_6232 net/minecraft/unused/packageinfo/PackageInfo6232 +c net/minecraft/class_7562 net/minecraft/unused/packageinfo/PackageInfo7562 +c net/minecraft/class_8890 net/minecraft/structure/pool/alias/StructurePoolAliasBindings + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_54509 registerAndGetDefault + p 0 registry + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_55227 method_55227 + p 0 target + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_6880;Ljava/lang/String;)V method_55228 method_55228 + p 2 path + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_6880;Ljava/util/List;)V method_55229 registerPools + p 2 aliases + p 1 base + p 0 pools +c net/minecraft/class_8891 net/minecraft/structure/pool/alias/StructurePoolAliasLookup + f Lnet/minecraft/class_8891; field_46826 EMPTY + m (Ljava/util/List;Lnet/minecraft/class_2338;J)Lnet/minecraft/class_8891; create create + p 2 seed + p 0 bindings + p 1 pos + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_5321; lookup lookup + p 1 pool + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_5321; method_54513 method_54513 + p 0 pool + m (Lnet/minecraft/class_5819;Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_8889;)V method_54511 method_54511 + p 2 binding + m (Ljava/util/Map;Lnet/minecraft/class_5321;)Lnet/minecraft/class_5321; method_54512 method_54512 + p 1 alias +c net/minecraft/class_7569 net/minecraft/client/session/report/ReporterEnvironment + f Ljava/lang/String; comp_880 clientVersion + f Lnet/minecraft/class_7569$class_7570; comp_881 server + m (Ljava/lang/String;)Lnet/minecraft/class_7569; method_44589 ofThirdPartyServer + p 0 ip + m (Lnet/minecraft/class_7569$class_7570;)Lnet/minecraft/class_7569; method_44588 ofServer + p 0 server + m (Lnet/minecraft/class_4877;)Lnet/minecraft/class_7569; method_44587 ofRealm + p 0 server + m ()Lnet/minecraft/class_7569; method_44586 ofIntegratedServer + m ()Lcom/mojang/authlib/yggdrasil/request/AbuseReportRequest$ClientInfo; method_44590 toClientInfo + m ()Lcom/mojang/authlib/yggdrasil/request/AbuseReportRequest$RealmInfo; method_44592 toRealmInfo + m ()Lcom/mojang/authlib/yggdrasil/request/AbuseReportRequest$ThirdPartyServerInfo; method_44591 toThirdPartyServerInfo + m ()Ljava/lang/String; method_44593 getVersion + m ()Lnet/minecraft/class_7569$class_7570; comp_881 server + m ()Ljava/lang/String; comp_880 clientVersion + m (Ljava/lang/String;Lnet/minecraft/class_7569$class_7570;)V + p 1 clientVersion + p 2 server +c net/minecraft/class_7569$class_7570 net/minecraft/client/session/report/ReporterEnvironment$Server +c net/minecraft/class_7569$class_7570$class_7572 net/minecraft/client/session/report/ReporterEnvironment$Server$ThirdParty + f Ljava/lang/String; comp_884 ip + m ()Ljava/lang/String; comp_884 ip + m (Ljava/lang/String;)V + p 1 ip +c net/minecraft/class_7569$class_7570$class_7571 net/minecraft/client/session/report/ReporterEnvironment$Server$Realm + f J comp_882 realmId + f I comp_883 slotId + m (Lnet/minecraft/class_4877;)V + p 1 server + m ()I comp_883 slotId + m ()J comp_882 realmId + m (JI)V + p 1 realmId + p 3 slotId +c net/minecraft/class_6235 net/minecraft/unused/packageinfo/PackageInfo6235 +c net/minecraft/class_8898 net/minecraft/client/gui/screen/ingame/CrafterScreen + f Lnet/minecraft/class_2960; field_46883 POWERED_REDSTONE_TEXTURE + f Lnet/minecraft/class_2960; field_46882 DISABLED_SLOT_TEXTURE + f Lnet/minecraft/class_2960; field_46879 TEXTURE + f Lnet/minecraft/class_2561; field_46880 TOGGLEABLE_SLOT_TEXT + f Lnet/minecraft/class_1657; field_46881 player + f Lnet/minecraft/class_2960; field_46884 UNPOWERED_REDSTONE_TEXTURE + m (IZ)V method_54798 setSlotEnabled + p 2 enabled + p 1 slotId + m (I)V method_54797 enableSlot + p 1 slotId + m (Lnet/minecraft/class_8881;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 3 title + p 1 handler + p 2 playerInventory + m (Lnet/minecraft/class_332;Lnet/minecraft/class_8882;)V method_54591 drawDisabledSlot + p 2 slot + p 1 context + m (Lnet/minecraft/class_332;)V method_54592 drawArrowTexture + p 1 context + m (I)V method_54799 disableSlot + p 1 slotId +c net/minecraft/class_8899 net/minecraft/client/particle/WhiteSmokeParticle + m (Lnet/minecraft/class_638;DDDDDDFLnet/minecraft/class_4002;)V + p 12 velocityZ + p 15 spriteProvider + p 14 scaleMultiplier + p 8 velocityX + p 10 velocityY + p 4 y + p 6 z + p 1 world + p 2 x +c net/minecraft/class_8899$class_8900 net/minecraft/client/particle/WhiteSmokeParticle$Factory + f Lnet/minecraft/class_4002; field_46899 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_54635 createParticle +c net/minecraft/class_6236 net/minecraft/unused/packageinfo/PackageInfo6236 +c net/minecraft/class_8897 net/minecraft/client/gui/screen/world/RecoverWorldScreen + f Lnet/minecraft/class_32$class_5143; field_46878 session + f Lnet/minecraft/class_7940; field_46876 messageWidget + f Lnet/minecraft/class_7940; field_46877 exceptionWidget + f Lnet/minecraft/class_2561; field_46870 DONE_FAILED_TEXT + f Lnet/minecraft/class_2561; field_46871 ISSUE_NONE_TEXT + f Lnet/minecraft/class_2561; field_46872 MISSING_FILE_TEXT + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; field_46873 callback + f Lnet/minecraft/class_2561; field_46864 TITLE_TEXT + f Lnet/minecraft/class_2561; field_46875 message + f Lnet/minecraft/class_2561; field_46865 BUG_TRACKER_TEXT + f Lnet/minecraft/class_2561; field_46866 RESTORE_TEXT + f Lnet/minecraft/class_2561; field_46867 NO_FALLBACK_TEXT + f Lnet/minecraft/class_2561; field_46868 DONE_TITLE_TEXT + f Lorg/slf4j/Logger; field_46862 LOGGER + f Lnet/minecraft/class_2561; field_46869 DONE_SUCCESS_TEXT + f Lnet/minecraft/class_8667; field_46874 layout + m (Lnet/minecraft/class_310;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/class_32$class_5143;)V + p 2 callback + p 3 session + p 1 client + m (Lnet/minecraft/class_310;)V method_54585 tryRestore + p 1 client + m (Lnet/minecraft/class_32$class_5143;ZLjava/lang/Exception;)Lnet/minecraft/class_2561; method_54584 toText + p 1 session + p 2 old + p 3 exception + m (Lnet/minecraft/class_4185;)V method_54587 method_54587 + p 1 button + m (Lnet/minecraft/class_32$class_5143;Z)Ljava/lang/Exception; method_54583 getLoadingException + p 2 old + p 1 session +c net/minecraft/class_7566 net/minecraft/client/session/report/ChatAbuseReport + f Lit/unimi/dsi/fastutil/ints/IntSet; field_46059 selectedMessages + m ()Lnet/minecraft/class_7566; method_44585 copy + m (ILcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V method_44569 toggleMessageSelection + p 1 index + p 2 limits +c net/minecraft/class_7566$class_8772 net/minecraft/client/session/report/ChatAbuseReport$Builder + m (I)Z method_53603 isMessageSelected + p 1 index + m ()Lnet/minecraft/class_7566$class_8772; method_53606 copy + m (Lnet/minecraft/class_7557$class_7558;Z)Lcom/mojang/authlib/minecraft/report/ReportChatMessage; method_53599 toReportChatMessage + p 2 selected + p 1 message + m (Lnet/minecraft/class_7574;)Lcom/mojang/authlib/minecraft/report/ReportEvidence; method_53604 collectEvidences + p 1 context + m (Lnet/minecraft/class_7566;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 2 limits + p 1 report + m (I)V method_53598 toggleMessageSelection + p 1 index + m (Ljava/util/UUID;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 2 limits + p 1 reportedPlayerUuid + m ()Lit/unimi/dsi/fastutil/ints/IntSet; method_53597 getSelectedMessages + m (Ljava/util/List;ILnet/minecraft/class_7557$class_7558;)V method_53601 method_53601 + p 3 message + p 2 index +c net/minecraft/class_6242 net/minecraft/unused/packageinfo/PackageInfo6242 +c net/minecraft/class_7574 net/minecraft/client/session/report/AbuseReportContext + f Lnet/minecraft/class_7563; field_40819 sender + f Lnet/minecraft/class_7569; field_40820 environment + f Lnet/minecraft/class_7855; field_40822 draft + f Lnet/minecraft/class_7555; field_40821 chatLog + f I field_39675 MAX_LOGS + m (Lnet/minecraft/class_310;Lnet/minecraft/class_7855;Lnet/minecraft/class_437;Ljava/lang/Runnable;Z)V method_46551 method_46551 + p 5 confirmed + m (Lnet/minecraft/class_7563;Lnet/minecraft/class_7569;Lnet/minecraft/class_7555;)V + p 1 sender + p 3 chatLog + p 2 environment + m (Lnet/minecraft/class_7569;Lcom/mojang/authlib/minecraft/UserApiService;)Lnet/minecraft/class_7574; method_44599 create + p 0 environment + p 1 userApiService + m ()Z method_46556 hasDraft + m (Lnet/minecraft/class_310;Lnet/minecraft/class_437;Ljava/lang/Runnable;Z)V method_46552 tryShowDraftScreen + p 1 client + p 3 callback + p 2 parent + p 4 quit + m ()Lnet/minecraft/class_7563; method_46550 getSender + m (Ljava/util/UUID;)Z method_46554 draftPlayerUuidEquals + p 1 uuid + m (Lnet/minecraft/class_7569;)Z method_44598 environmentEquals + p 1 environment + m (Lnet/minecraft/class_7855;)V method_46553 setDraft + p 1 draft + m ()Lnet/minecraft/class_7555; method_46555 getChatLog +c net/minecraft/class_6241 net/minecraft/unused/packageinfo/PackageInfo6241 +c net/minecraft/class_7575 net/minecraft/unused/packageinfo/PackageInfo7575 +c net/minecraft/class_6244 net/minecraft/unused/packageinfo/PackageInfo6244 +c net/minecraft/class_6243 net/minecraft/unused/packageinfo/PackageInfo6243 +c net/minecraft/class_7573 net/minecraft/client/session/report/AbuseReportReason + f Lnet/minecraft/class_2561; field_39673 description + f Lnet/minecraft/class_2561; field_39672 text + f Ljava/lang/String; field_39671 id + f Lnet/minecraft/class_7573; field_53036 SEXUALLY_INAPPROPRIATE + f Lnet/minecraft/class_7573; field_53035 I_WANT_TO_REPORT_THEM + f Lnet/minecraft/class_7573; field_39659 HATE_SPEECH + f Lnet/minecraft/class_7573; field_39667 SELF_HARM_OR_SUICIDE + f Lnet/minecraft/class_7573; field_39666 DEFAMATION_IMPERSONATION_FALSE_INFORMATION + f Lnet/minecraft/class_7573; field_39663 NON_CONSENSUAL_INTIMATE_IMAGERY + f Lnet/minecraft/class_7573; field_39664 HARASSMENT_OR_BULLYING + f Lnet/minecraft/class_7573; field_39661 CHILD_SEXUAL_EXPLOITATION_OR_ABUSE + f Lnet/minecraft/class_7573; field_39662 IMMINENT_HARM + f Lnet/minecraft/class_7573; field_39660 TERRORISM_OR_VIOLENT_EXTREMISM + f Lnet/minecraft/class_7573; field_39670 ALCOHOL_TOBACCO_DRUGS + m ()Lnet/minecraft/class_2561; method_44596 getDescription + m ()Lnet/minecraft/class_2561; method_44595 getText + m ()Ljava/lang/String; method_44594 getId + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m (Lnet/minecraft/class_8776;)Ljava/util/List; method_62164 getExcludedReasonsForType + p 0 reportType +c net/minecraft/class_6240 net/minecraft/unused/packageinfo/PackageInfo6240 +c net/minecraft/class_6249 net/minecraft/unused/packageinfo/PackageInfo6249 +c net/minecraft/class_7578 net/minecraft/client/realms/RealmsPeriodicCheckers + f Lnet/minecraft/class_7581$class_7586; field_43035 notifications + f Lnet/minecraft/class_7579; field_39688 newsUpdater + f Lnet/minecraft/class_7581; field_39682 runnerFactory + f Lnet/minecraft/class_7581$class_7586; field_39683 serverList + f Ljava/util/List; field_46704 checkers + f Lnet/minecraft/class_7581$class_7586; field_39686 trialAvailability + f Lnet/minecraft/class_7581$class_7586; field_39685 pendingInvitesCount + f Lnet/minecraft/class_7581$class_7586; field_39687 news + f Lnet/minecraft/class_7581$class_7586; field_52122 onlinePlayers + m (Lnet/minecraft/class_4341;)V + p 1 client + m ()Ljava/util/List; method_54369 getCheckers +c net/minecraft/class_7578$class_8843 net/minecraft/client/realms/RealmsPeriodicCheckers$AvailableServers + f Ljava/util/List; comp_1990 availableSnapshotServers + f Ljava/util/List; comp_1989 serverList + m ()Ljava/util/List; comp_1990 availableSnapshotServers + m ()Ljava/util/List; comp_1989 serverList + m (Ljava/util/List;Ljava/util/List;)V + p 1 serverList + p 2 availableSnapshotServers +c net/minecraft/class_6245 net/minecraft/unused/packageinfo/PackageInfo6245 +c net/minecraft/class_7579 net/minecraft/client/realms/RealmsNewsUpdater + f Ljava/lang/String; field_39691 newsLink + f Z field_39690 hasUnreadNews + f Lnet/minecraft/class_4432; field_39689 persistence + m (Lnet/minecraft/class_4876;)V method_44619 updateNews + p 1 news + m (Lnet/minecraft/class_4432;)V + p 1 persistence + m ()Ljava/lang/String; method_44620 getNewsLink + m ()Z method_44618 hasUnreadNews + m (Lnet/minecraft/class_4876;)Lnet/minecraft/class_4432$class_4433; method_44621 checkLinkUpdated + p 1 news +c net/minecraft/class_6248 net/minecraft/unused/packageinfo/PackageInfo6248 +c net/minecraft/class_7576 net/minecraft/util/TimeSupplier + m (Ljava/util/concurrent/TimeUnit;)J get get + p 1 timeUnit +c net/minecraft/class_7576$class_7577 net/minecraft/util/TimeSupplier$Nanoseconds +c net/minecraft/class_8872 net/minecraft/server/function/ExpandedMacro + f Lnet/minecraft/class_2960; comp_1994 id + f Ljava/util/List; comp_1995 entries + m (Lnet/minecraft/class_2960;Ljava/util/List;)V + p 1 id + p 2 entries +c net/minecraft/class_7541 net/minecraft/client/session/report/MessagesListAdder + f Lnet/minecraft/class_7555; field_39581 log + f Lnet/minecraft/class_7757; field_40439 contextMessageCollector + f I field_40440 maxLogIndex + f I field_40441 foldedMessageCount + f Lnet/minecraft/class_7826; field_40795 link + f Ljava/util/function/Predicate; field_39582 reportablePredicate + f Lnet/minecraft/class_7471; field_40442 lastMessage + m (Lnet/minecraft/class_7574;Ljava/util/function/Predicate;)V + p 2 reportablePredicate + p 1 context + m (Lnet/minecraft/class_7541$class_7542;Lnet/minecraft/class_7557$class_7558;)Z method_45664 tryAdd + p 1 messages + p 2 message + m (ILnet/minecraft/class_7541$class_7542;)V method_44486 add + p 1 minAmount + p 2 messages +c net/minecraft/class_7541$class_7542 net/minecraft/client/session/report/MessagesListAdder$MessagesList + m (Lnet/minecraft/class_2561;)V method_44492 addText + p 1 text + m (ILnet/minecraft/class_7557$class_7558;)V method_44490 addMessage + p 1 index + p 2 message +c net/minecraft/class_8873 net/minecraft/command/MacroInvocation + f Ljava/util/List; comp_1996 segments + f Ljava/util/List; comp_1997 variables + m (Ljava/lang/String;)Lnet/minecraft/class_8873; method_54432 parse + p 0 command + m (Ljava/lang/String;)Z method_54431 isValidMacroName + p 0 name + m (Ljava/util/List;)Ljava/lang/String; method_54433 apply + p 1 arguments + m ()Ljava/util/List; comp_1996 segments + m ()Ljava/util/List; comp_1997 variables + m (Ljava/util/List;Ljava/util/List;)V + p 1 segments + p 2 variables +c net/minecraft/class_6211 net/minecraft/unused/packageinfo/PackageInfo6211 +c net/minecraft/class_6210 net/minecraft/unused/packageinfo/PackageInfo6210 +c net/minecraft/class_6217 net/minecraft/unused/packageinfo/PackageInfo6217 +c net/minecraft/class_6219 net/minecraft/unused/packageinfo/PackageInfo6219 +c net/minecraft/class_8878 net/minecraft/datafixer/fix/PrimedTntBlockStateFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54449 fixFuse + p 0 data + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54450 fixBlockState + p 0 data +c net/minecraft/class_6218 net/minecraft/unused/packageinfo/PackageInfo6218 +c net/minecraft/class_8879 net/minecraft/datafixer/schema/Schema3682 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_6213 net/minecraft/unused/packageinfo/PackageInfo6213 +c net/minecraft/class_8876 net/minecraft/datafixer/fix/LevelLegacyWorldGenSettingsFix + f Ljava/util/List; field_46772 SETTINGS_TO_FIX + f Ljava/lang/String; field_46771 WORLD_GEN_SETTINGS_KEY + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54444 method_54444 + p 0 data + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_54443 method_54443 + p 0 typed + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_6212 net/minecraft/unused/packageinfo/PackageInfo6212 +c net/minecraft/class_8877 net/minecraft/datafixer/fix/ChoiceWriteReadFix + f Lcom/mojang/datafixers/DSL$TypeReference; field_46775 type + f Ljava/lang/String; field_46774 choiceName + f Ljava/lang/String; field_46773 name + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54447 transform + p 1 data + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;)Lcom/mojang/datafixers/TypeRewriteRule; method_56641 makeRule + p 2 outputType +c net/minecraft/class_8874 net/minecraft/unused/packageinfo/PackageInfo8874 +c net/minecraft/class_7543 net/minecraft/client/gui/screen/report/ChatSelectionScreen + f Lnet/minecraft/class_7574; field_39585 reporter + f Ljava/util/function/Consumer; field_39589 newReportConsumer + f Lnet/minecraft/class_7566$class_8772; field_39588 report + f Lnet/minecraft/class_7541; field_39590 listAdder + f Lnet/minecraft/class_2960; field_45559 CHECKMARK_ICON_TEXTURE + f Lnet/minecraft/class_437; field_39584 parent + f Lnet/minecraft/class_5489; field_39729 contextMessage + f Lnet/minecraft/class_4185; field_39586 doneButton + f Lnet/minecraft/class_2561; field_39728 CONTEXT_TEXT + f Lnet/minecraft/class_2561; field_39727 TITLE_TEXT + f Lnet/minecraft/class_7543$class_7544; field_39587 selectionList + m ()V method_44509 setDoneButtonActivation + m ()V method_44507 addMoreMessages + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7574;Lnet/minecraft/class_7566$class_8772;Ljava/util/function/Consumer;)V + p 1 parent + p 3 report + p 2 reporter + p 4 newReportConsumer + m (Lnet/minecraft/class_4185;)V method_44493 method_44493 + p 1 button + m (Lnet/minecraft/class_4185;)V method_44496 method_44496 + p 1 button + m (Lnet/minecraft/class_7557;)Z method_44495 isSentByReportedPlayer + p 1 message + m ()V method_44504 addMessages +c net/minecraft/class_7543$class_7544 net/minecraft/client/gui/screen/report/ChatSelectionScreen$SelectionListWidget + f Lnet/minecraft/class_7543$class_7544$class_7547; field_39593 lastSenderEntryPair + m (Lnet/minecraft/class_7557$class_7558;Z)V method_44511 addSenderEntry + p 1 message + p 2 fromReportedPlayer + m (Lnet/minecraft/class_7543;Lnet/minecraft/class_310;I)V + p 3 contextMessagesHeight + p 2 client + m ()I method_44665 getContextMessageY + m (Lnet/minecraft/class_8028;)Lnet/minecraft/class_7543$class_7544$class_7546; method_48284 getNeighboringEntry + m ()I method_44513 getDisplayedItemCount + m (Lnet/minecraft/class_7543$class_7544$class_7546;)V method_48283 setSelected + m (Lnet/minecraft/class_332;IIFLnet/minecraft/class_7543$class_7544$class_7546;)V method_73447 renderEntry + m (Lnet/minecraft/class_7543$class_7544$class_7546;)Z method_44693 shouldHighlight + p 1 entry +c net/minecraft/class_7543$class_7544$class_7550 net/minecraft/client/gui/screen/report/ChatSelectionScreen$SelectionListWidget$SeparatorEntry +c net/minecraft/class_7543$class_7544$class_7549 net/minecraft/client/gui/screen/report/ChatSelectionScreen$SelectionListWidget$SenderEntry + f I field_39607 PLAYER_SKIN_SIZE + f Lnet/minecraft/class_2561; field_39608 headingText + f Z field_39610 fromReportedPlayer + f Ljava/util/function/Supplier; field_39609 skinTexturesSupplier + m (Lnet/minecraft/class_7543$class_7544;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_2561;Z)V + p 3 headingText + p 2 gameProfile + p 4 fromReportedPlayer +c net/minecraft/class_7543$class_7544$class_7548 net/minecraft/client/gui/screen/report/ChatSelectionScreen$SelectionListWidget$MessageEntry + f Lnet/minecraft/class_5348; field_39601 truncatedContent + f Z field_39605 isChatMessage + f Z field_39604 fromReportedPlayer + f Lnet/minecraft/class_7591$class_7592; field_39776 indicatorIcon + f Ljava/util/List; field_39777 originalContent + f Ljava/util/List; field_39603 fullContent + f I field_39600 index + f I field_39599 CHAT_MESSAGE_LEFT_MARGIN + f I field_39775 INDICATOR_LEFT_MARGIN + f I field_39752 CHECKMARK_HEIGHT + f Lnet/minecraft/class_2561; field_39602 narration + f I field_39751 CHECKMARK_WIDTH + m ()I method_44666 getTextWidth + m ()I method_44667 getIndent + m (Lnet/minecraft/class_7543$class_7544;ILnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_7591;ZZ)V + p 3 message + p 4 narration + p 2 index + p 7 isChatMessage + p 5 indicator + p 6 fromReportedPlayer + m (Lnet/minecraft/class_332;IIIII)V method_44729 renderIndicator + p 5 mouseX + p 6 mouseY + p 3 y + p 4 entryHeight + p 1 context + p 2 x + m ()Z method_44517 toggle + m (Lnet/minecraft/class_332;III)V method_44695 drawCheckmark + p 3 x + p 4 entryHeight + p 1 context + p 2 y +c net/minecraft/class_7543$class_7544$class_7547 net/minecraft/client/gui/screen/report/ChatSelectionScreen$SelectionListWidget$SenderEntryPair + f Lnet/minecraft/class_7543$class_7544$class_7546; comp_867 entry + f Ljava/util/UUID; comp_866 sender + m (Lnet/minecraft/class_7543$class_7544$class_7547;)Z method_44516 senderEquals + p 1 pair + m ()Lnet/minecraft/class_7543$class_7544$class_7546; comp_867 entry + m ()Ljava/util/UUID; comp_866 sender + m (Ljava/util/UUID;Lnet/minecraft/class_7543$class_7544$class_7546;)V + p 1 sender + p 2 entry +c net/minecraft/class_7543$class_7544$class_7546 net/minecraft/client/gui/screen/report/ChatSelectionScreen$SelectionListWidget$Entry + m ()Z method_44694 isHighlightedOnHover + m ()Z method_44514 isSelected + m ()Z method_44515 canSelect +c net/minecraft/class_7543$class_7544$class_7545 net/minecraft/client/gui/screen/report/ChatSelectionScreen$SelectionListWidget$TextEntry + f Lnet/minecraft/class_2561; field_39596 text + m (Lnet/minecraft/class_7543$class_7544;Lnet/minecraft/class_2561;)V + p 2 text +c net/minecraft/class_6214 net/minecraft/unused/packageinfo/PackageInfo6214 +c net/minecraft/class_8875 net/minecraft/network/packet/c2s/play/SlotChangedStateC2SPacket + f I comp_1999 screenHandlerId + f Lnet/minecraft/class_9139; field_48192 CODEC + f I comp_1998 slotId + f Z comp_2000 newState + m (Lnet/minecraft/class_2792;)V method_54437 apply + m ()I comp_1999 screenHandlerId + m (Lnet/minecraft/class_2540;)V method_55973 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Z comp_2000 newState + m ()I comp_1998 slotId + m (IIZ)V + p 1 slotId + p 2 screenHandlerId + p 3 newState +c net/minecraft/class_6209 net/minecraft/unused/packageinfo/PackageInfo6209 +c net/minecraft/class_12112 net/minecraft/entity/ai/goal/ChargeKineticWeaponGoal + f D field_63307 speed + f D field_63308 targetFollowingSpeed + f Lnet/minecraft/class_1588; field_63306 entity + f D field_63311 CHARGING_TIME_TICKS + f F field_64641 maxSquaredDistanceToTarget + f F field_64642 minSquaredDistanceToTarget + f Lnet/minecraft/class_12112$class_12362; field_64643 data + m (Lnet/minecraft/class_1588;DDFF)V + p 2 speed + p 4 targetFollowingSpeed + p 7 minDistanceToTarget + p 6 maxDistanceToTarget + p 1 entity + m ()Z method_75142 canAttack + m ()I method_75143 getUseGoalTicks +c net/minecraft/class_12112$class_12362 net/minecraft/entity/ai/goal/ChargeKineticWeaponGoal$Data + f Lnet/minecraft/class_243; field_64646 startPos + f I field_64645 chargeTicks + f Z field_64647 charged + f I field_64644 remainingUseTicks + m ()Z method_76725 finishedCharging + m ()Z method_76724 canStartCharging + m ()Z method_76722 isIdle + m (I)V method_76723 setRemainingUseTicks + p 1 remainingUseTicks +c net/minecraft/class_12111 net/minecraft/entity/ai/brain/task/DashAttackTask + f Lnet/minecraft/class_243; field_63305 lastPos + f D field_63302 maxDistance + f D field_63303 maxEntitySpeed + f F field_63300 speed + f F field_63301 knockbackStrength + f Lnet/minecraft/class_3414; field_64480 sound + f I field_63298 cooldownTicks + f Lnet/minecraft/class_4051; field_63299 predicate + f Lnet/minecraft/class_243; field_63304 velocity + m (ILnet/minecraft/class_4051;FFDDLnet/minecraft/class_3414;)V + p 5 maxEntitySpeed + p 4 knockbackStrength + p 7 maxDistance + p 9 sound + p 1 cooldownTicks + p 3 speed + p 2 predicate + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;)Z method_75134 shouldRun + m (Lnet/minecraft/class_1429;Lnet/minecraft/class_1309;)V method_75137 knockbackTarget + p 1 entity + p 2 target + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;J)V method_75138 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;Lnet/minecraft/class_1309;)Z method_75139 method_75139 + p 3 target + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;J)V method_75140 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;J)V method_75141 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;Lnet/minecraft/class_1309;)V method_75136 attack + p 3 target + p 2 entity + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;J)Z method_75135 shouldKeepRunning +c net/minecraft/class_12110 net/minecraft/world/timer/stopwatch/StopwatchPersistentState + f Lnet/minecraft/class_10741; field_63284 STATE_TYPE + f Lcom/mojang/serialization/Codec; field_63285 CODEC + f Ljava/util/Map; field_63286 stopwatches + m ()Ljava/util/List; method_75113 keys + m (Ljava/util/Map;JLnet/minecraft/class_2960;Lnet/minecraft/class_12109;)V method_75111 method_75111 + p 3 id + p 4 stopwatch + m ()J method_75115 getTimeMs + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_12109; method_75106 get + p 1 id + m (Lnet/minecraft/class_2960;Ljava/util/function/UnaryOperator;)Z method_75108 update + c Only has effect if there is a stopwatch by the identifier {@code id}.\n\n@return {@code true} if the operation succeeded. + p 1 id + p 2 f + m ()Ljava/util/Map; method_75116 toElapsedTimes + m (Ljava/util/function/UnaryOperator;Lnet/minecraft/class_2960;Lnet/minecraft/class_12109;)Lnet/minecraft/class_12109; method_75112 method_75112 + p 2 stopwatch + p 1 id_ + m (Lnet/minecraft/class_2960;)Z method_75114 remove + c Only has effect if there is a stopwatch by the identifier {@code id}.\n\n@return {@code true} if the operation succeeded. + p 1 id + m (Ljava/util/Map;)Lnet/minecraft/class_12110; method_75110 fromElapsedTimes + p 0 times + m (Lnet/minecraft/class_12110;JLnet/minecraft/class_2960;Ljava/lang/Long;)V method_75109 method_75109 + p 3 id + p 4 time + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_12109;)Z method_75107 add + c Only has effect if there is no stopwatch by the identifier {@code id}.\n\n@return {@code true} if the operation succeeded. + p 1 id + p 2 stopwatch +c net/minecraft/class_12117 net/minecraft/entity/passive/NautilusEntity + f I field_63951 MAX_AIR + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_12117; method_75166 createChild + m (Lnet/minecraft/class_3218;I)V method_75881 tickAir + p 2 lastAir + p 1 world +c net/minecraft/class_12116 net/minecraft/entity/passive/AbstractNautilusEntity + f Lnet/minecraft/class_2940; field_63337 DASHING + f F field_63330 dashStrength + f I field_63342 jumpCooldown + f Lnet/minecraft/class_1277; field_64483 inventory + m (Z)V method_75151 setDashing + p 1 dashing + m (FLnet/minecraft/class_1657;)V method_75152 dash + p 1 strength + p 2 controller + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_75154 canSpawn + p 0 type + p 1 world + p 2 reason + p 3 pos + p 4 random + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_241; method_75165 getControlledRotation + p 1 entity + m ()Z method_76728 hasAttackTarget + m ()Z method_76727 isControlledByMob + m (Lnet/minecraft/class_1657;)V method_75164 tryTame + p 1 player + m (Lnet/minecraft/class_1657;)V method_75163 putPlayerOnBack + p 1 player + m ()V method_76586 initInventory + m ()Lnet/minecraft/class_5132$class_5133; method_75156 createNautilusAttributes + m (Lnet/minecraft/class_1937;)V method_75155 tickController + p 1 world + m ()I method_75161 getMaxTargetRange + m ()Lnet/minecraft/class_3414; method_75160 getDashReadySound + m ()V method_75162 spawnParticles + m ()I method_76585 getSlotCount + m ()Z method_75158 isDashing + m ()Lnet/minecraft/class_3414; method_75159 getDashSound + m ()I method_76587 getInventoryColumns + m ()V method_75157 tickPositionTarget + m (Lnet/minecraft/class_1263;)Z method_76584 areInventoriesDifferent + p 1 inventory +c net/minecraft/class_12119 net/minecraft/entity/mob/ZombieNautilusEntity + f Lnet/minecraft/class_2940; field_64373 VARIANT + m (Lnet/minecraft/class_6880;)V method_76452 setVariant + p 1 variant + m ()Lnet/minecraft/class_5132$class_5133; method_75184 createZombieNautilusAttributes + m ()Lnet/minecraft/class_6880; method_76453 getVariant + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_12119; method_75183 createChild +c net/minecraft/class_12118 net/minecraft/entity/passive/NautilusBrain + f Lcom/google/common/collect/ImmutableList; field_63350 SENSORS + f Lcom/google/common/collect/ImmutableList; field_63351 MEMORY_MODULES + f Lnet/minecraft/class_6019; field_63356 ATTACK_TARGET_COOLDOWN + f Lnet/minecraft/class_4051; field_63363 FIGHT_TARGET_PREDICATE + m (Lnet/minecraft/class_4095;)V method_75182 addFightActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_75181 addIdleActivities + p 0 brain + m (Lnet/minecraft/class_12117;)V method_75174 updateActivities + p 0 nautilus + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_12116;)Ljava/util/Optional; method_75168 findAttackTarget + p 1 nautilus + p 0 world + m (Lnet/minecraft/class_1309;)Ljava/lang/Double; method_75178 method_75178 + p 0 entity + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_75171 method_75171 + p 0 entity + p 1 world + m (Lnet/minecraft/class_4095;)V method_75179 addCoreActivities + p 0 brain + m ()Lnet/minecraft/class_4095$class_5303; method_75167 createProfile + m (Lnet/minecraft/class_1309;)Z method_75170 isTarget + p 0 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_12116;Lnet/minecraft/class_1309;)V method_75169 onDamage + p 2 attacker + p 1 nautilus + p 0 world + m (Lnet/minecraft/class_1309;)Ljava/lang/Float; method_75180 method_75180 + p 0 entity + m (Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_75172 create + p 0 brain + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_12116;Lnet/minecraft/class_1309;)Z method_75177 method_75177 + p 2 target + m (Lnet/minecraft/class_1799;)Z method_75175 method_75175 + p 0 stack + m (Lnet/minecraft/class_12116;Lnet/minecraft/class_5819;)V method_75173 initialize + p 0 nautilus + p 1 random + m ()Ljava/util/function/Predicate; method_75176 getNautilusFoodPredicate +c net/minecraft/class_6220 net/minecraft/unused/packageinfo/PackageInfo6220 +c net/minecraft/class_8883 net/minecraft/screen/slot/CrafterOutputSlot +c net/minecraft/class_8884 net/minecraft/recipe/RecipeCache + f Ljava/lang/ref/WeakReference; field_46793 recipeManagerRef + f [Lnet/minecraft/class_8884$class_8885; field_46792 cache + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_3218;)Ljava/util/Optional; method_54468 getAndCacheRecipe + p 2 world + p 1 input + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_8786;)V method_54471 cache + p 2 recipe + p 1 input + m (I)V + p 1 size + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9694;)Ljava/util/Optional; method_54470 getRecipe + p 2 input + p 1 world + m (I)V method_54467 sendToFront + p 1 index + m (Lnet/minecraft/class_3218;)V method_54469 validateRecipeManager + p 1 world +c net/minecraft/class_8884$class_8885 net/minecraft/recipe/RecipeCache$CachedRecipe + f I comp_2816 width + f I comp_2817 height + f Lnet/minecraft/class_8786; comp_2002 value + f Lnet/minecraft/class_2371; comp_2001 key + m (Lnet/minecraft/class_9694;)Z method_54472 matches + p 1 input + m ()Lnet/minecraft/class_2371; comp_2001 key + m ()I comp_2816 width + m ()I comp_2817 height + m ()Lnet/minecraft/class_8786; comp_2002 value + m (Lnet/minecraft/class_2371;IILnet/minecraft/class_8786;)V + p 1 key + p 2 width + p 3 height + p 4 value +c net/minecraft/class_6222 net/minecraft/unused/packageinfo/PackageInfo6222 +c net/minecraft/class_8881 net/minecraft/screen/CrafterScreenHandler + f Lnet/minecraft/class_1657; field_46787 player + f Lnet/minecraft/class_8566; field_46788 inputInventory + f Lnet/minecraft/class_1731; field_46780 resultInventory + f Lnet/minecraft/class_3913; field_46786 propertyDelegate + m (ILnet/minecraft/class_1661;)V + p 2 playerInventory + p 1 syncId + m (Lnet/minecraft/class_1661;)V method_54459 addSlots + p 1 playerInventory + m (I)Z method_54461 isSlotDisabled + p 1 slot + m ()V method_54464 updateResult + m ()Z method_54462 isTriggered + m (IZ)V method_54458 setSlotEnabled + p 1 slot + p 2 enabled + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_8566;Lnet/minecraft/class_3913;)V + p 1 syncId + p 4 propertyDelegate + p 3 inputInventory + p 2 playerInventory + m ()Lnet/minecraft/class_1263; method_54463 getInputInventory +c net/minecraft/class_6221 net/minecraft/unused/packageinfo/PackageInfo6221 +c net/minecraft/class_8882 net/minecraft/screen/slot/CrafterInputSlot + f Lnet/minecraft/class_8881; field_46789 crafterScreenHandler + m (Lnet/minecraft/class_1263;IIILnet/minecraft/class_8881;)V + p 3 x + p 4 y + p 1 inventory + p 2 index + p 5 crafterScreenHandler +c net/minecraft/class_7551 net/minecraft/client/gui/screen/report/AbuseReportReasonScreen + f I field_39735 TOP_MARGIN + f Lnet/minecraft/class_7573; field_39778 reason + f Lnet/minecraft/class_8132; field_49548 layout + f Lnet/minecraft/class_8776; field_52852 reportType + f Lnet/minecraft/class_7551$class_7552; field_39616 reasonList + f Lnet/minecraft/class_437; field_39615 parent + f Lnet/minecraft/class_2561; field_39612 TITLE_TEXT + f Ljava/util/function/Consumer; field_39618 reasonConsumer + f Lnet/minecraft/class_2561; field_39754 READ_INFO_TEXT + f Lnet/minecraft/class_2561; field_39613 DESCRIPTION_TEXT + m (Lnet/minecraft/class_4185;)V method_44520 method_44520 + p 1 button + m ()I method_57760 getWidth + m ()I method_57762 getReasonListHeight + m ()I method_57761 getHeight + m ()I method_57764 getLeft + m ()I method_44669 getBottom + m ()I method_57759 getRight + m ()I method_44668 getTop + m (Lnet/minecraft/class_7551;Lnet/minecraft/class_364;)V method_57763 method_57763 + p 1 child + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7573;Lnet/minecraft/class_8776;Ljava/util/function/Consumer;)V + p 2 reason + p 1 parent + p 4 reasonConsumer + p 3 reportType +c net/minecraft/class_7551$class_7552 net/minecraft/client/gui/screen/report/AbuseReportReasonScreen$ReasonListWidget + m (Lnet/minecraft/class_7551$class_7552$class_7553;)V method_44730 setSelected + m (Lnet/minecraft/class_7551;Lnet/minecraft/class_310;)V + p 2 client + m (Lnet/minecraft/class_7573;)Lnet/minecraft/class_7551$class_7552$class_7553; method_44522 getEntry + p 1 reason + m (Lnet/minecraft/class_7573;Lnet/minecraft/class_7551$class_7552$class_7553;)Z method_44523 method_44523 + p 1 entry +c net/minecraft/class_7551$class_7552$class_7553 net/minecraft/client/gui/screen/report/AbuseReportReasonScreen$ReasonListWidget$ReasonEntry + f Lnet/minecraft/class_7573; field_39621 reason + m ()Lnet/minecraft/class_7573; method_44524 getReason + m (Lnet/minecraft/class_7551$class_7552;Lnet/minecraft/class_7573;)V + p 2 reason +c net/minecraft/class_8880 net/minecraft/datafixer/schema/Schema3683 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_6227 net/minecraft/client/render/entity/model/GoatEntityModel + c Represents the model of a {@linkplain GoatEntity}.\n\n

\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}Root part{@link #head}
{@value EntityModelPartNames#LEFT_HORN}{@value EntityModelPartNames#HEAD}
{@value EntityModelPartNames#RIGHT_HORN}{@value EntityModelPartNames#HEAD}
{@value EntityModelPartNames#NOSE}{@value EntityModelPartNames#HEAD}
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value EntityModelPartNames#RIGHT_HIND_LEG}Root part{@link #rightHindLeg}
{@value EntityModelPartNames#LEFT_HIND_LEG}Root part{@link #leftHindLeg}
{@value EntityModelPartNames#RIGHT_FRONT_LEG}Root part{@link #rightFrontLeg}
{@value EntityModelPartNames#LEFT_FRONT_LEG}Root part{@link #leftFrontLeg}
\n
+ f Lnet/minecraft/class_9953; field_52914 BABY_TRANSFORMER + m ()Lnet/minecraft/class_5607; method_35742 getTexturedModelData + m (Lnet/minecraft/class_10030;)V method_35741 setAngles +c net/minecraft/class_8889 net/minecraft/structure/pool/alias/StructurePoolAliasBinding + f Lcom/mojang/serialization/Codec; field_46825 CODEC + m (Lnet/minecraft/class_6012;)Lnet/minecraft/class_8893; method_54506 randomGroup + p 0 groups + m (Lnet/minecraft/class_5819;Ljava/util/function/BiConsumer;)V method_54500 forEach + p 1 random + p 2 aliasConsumer + m ()Lcom/mojang/serialization/MapCodec; method_54502 getCodec + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_6012;)Lnet/minecraft/class_8892; method_54504 random + p 0 alias + p 1 targets + m (Lnet/minecraft/class_6012$class_6006;Lnet/minecraft/class_6010;)V method_54505 method_54505 + p 1 target + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;)Lnet/minecraft/class_8888; method_54503 direct + p 1 target + p 0 alias + m (Ljava/lang/String;Lnet/minecraft/class_6012;)Lnet/minecraft/class_8892; method_54507 random + p 1 targets + p 0 alias + m ()Ljava/util/stream/Stream; method_54499 streamTargets + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_8888; method_54508 direct + p 0 alias + p 1 target +c net/minecraft/class_6224 net/minecraft/unused/packageinfo/PackageInfo6224 +c net/minecraft/class_8887 net/minecraft/block/entity/CrafterBlockEntity + f I field_46811 GRID_SIZE + f I field_57777 DEFAULT_TRIGGERED + f Lnet/minecraft/class_2561; field_63040 CONTAINER_NAME_TEXT + f Lnet/minecraft/class_2371; field_46817 inputStacks + f I field_46813 SLOT_ENABLED + f I field_46815 PROPERTIES_COUNT + f I field_46809 GRID_WIDTH + f I field_46810 GRID_HEIGHT + f I field_46812 SLOT_DISABLED + f I field_57776 DEFAULT_CRAFTING_TICKS_REMAINING + f Lnet/minecraft/class_3913; field_46816 propertyDelegate + f I field_46814 TRIGGERED_PROPERTY + f I field_46818 craftingTicksRemaining + m (Z)V method_54482 setTriggered + p 1 triggered + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_8887;)V method_54481 tickCrafting + p 2 state + p 1 pos + p 0 world + p 3 blockEntity + m (ILnet/minecraft/class_1799;I)Z method_54479 betterSlotExists + p 3 slot + p 1 count + p 2 stack + m ()I method_54489 getComparatorOutput + m (I)Z method_54483 isSlotDisabled + p 1 slot + m (Lnet/minecraft/class_11372;)V method_54487 putTriggered + p 1 view + m (I)Z method_54485 canToggleSlot + p 1 slot + m ([I)V method_68285 method_68285 + p 1 slots + m (IZ)V method_54480 setSlotEnabled + p 2 enabled + p 1 slot + m (Lnet/minecraft/class_11372;)V method_54486 putDisabledSlots + p 1 view + m (I)V method_54484 setCraftingTicksRemaining + p 1 craftingTicksRemaining + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m ()Lnet/minecraft/class_2371; method_11282 getHeldStacks + m ()Z method_54488 isTriggered +c net/minecraft/class_8887$1 net/minecraft/block/entity/CrafterBlockEntity$1 + f [I field_46820 disabledSlots + f I field_46821 triggered +c net/minecraft/class_8888 net/minecraft/structure/pool/alias/DirectStructurePoolAliasBinding + f Lcom/mojang/serialization/MapCodec; field_46824 CODEC + f Lnet/minecraft/class_5321; comp_2003 alias + f Lnet/minecraft/class_5321; comp_2004 target + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54501 method_54501 + p 0 instance + m ()Lnet/minecraft/class_5321; comp_2004 target + m ()Lnet/minecraft/class_5321; comp_2003 alias + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;)V + p 1 alias + p 2 target +c net/minecraft/class_6223 net/minecraft/unused/packageinfo/PackageInfo6223 +c net/minecraft/class_7557 net/minecraft/client/session/report/log/ReceivedMessage + c A message received by the client and stored in {@link ChatLog}.\n\n

This includes both {@linkplain net.minecraft.network.packet.s2c.play.ChatMessageS2CPacket\nchat messages} and {@linkplain net.minecraft.network.packet.s2c.play.GameMessageS2CPacket\ngame messages}. + m (Lnet/minecraft/class_2561;Ljava/time/Instant;)Lnet/minecraft/class_7557$class_7559; method_44554 of + c {@return the received message constructed from a game message's elements} + p 0 message + c the message content + p 1 timestamp + c the timestamp of the message + m ()Lnet/minecraft/class_2561; method_44551 getContent + c {@return the content of the message}\n\n@implNote If the message is a chat message and it contains an unsigned part, the unsigned\npart will be returned. Note that in vanilla, unsigned part is stripped prior to\nconstruction of the received message instance if the client requires secure chat. + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_7471;Lnet/minecraft/class_7595;)Lnet/minecraft/class_7557$class_7558; method_44552 of + c {@return the received message constructed from a chat message} + p 1 message + p 2 trustStatus + p 0 gameProfile + c the game profile of the message's sender + m (Ljava/util/UUID;)Z method_44553 isSentFrom + c {@return whether the sender's UUID equals {@code uuid}} + p 1 uuid + m ()Lnet/minecraft/class_2561; method_44555 getNarration + c {@return the narration of the message (by default, the content)} +c net/minecraft/class_7557$class_7558 net/minecraft/client/session/report/log/ReceivedMessage$ChatMessage + c A chat message received by the client. + f Lcom/mojang/serialization/MapCodec; field_40809 CHAT_MESSAGE_CODEC + f Ljava/time/format/DateTimeFormatter; field_39637 DATE_TIME_FORMATTER + f Lnet/minecraft/class_7595; comp_905 trustStatus + f Lcom/mojang/authlib/GameProfile; comp_868 profile + f Lnet/minecraft/class_7471; comp_870 message + m ()Lnet/minecraft/class_2561; method_44556 getHeadingText + c {@return the heading text used by Chat Selection screen}\n\n

The text contains the sender's display name and the formatted timestamp. + m ()Ljava/util/UUID; method_44557 getSenderUuid + c {@return the UUID of the sender} + m ()Lnet/minecraft/class_2561; method_44558 getFormattedTimestamp + c {@return the formatted timestamp text of this message} + m ()Lnet/minecraft/class_7595; comp_905 trustStatus + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46543 method_46543 + p 0 instance + m ()Lcom/mojang/authlib/GameProfile; comp_868 profile + m ()Lnet/minecraft/class_7471; comp_870 message + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_7471;Lnet/minecraft/class_7595;)V + p 1 profile + p 2 message + p 3 trustStatus +c net/minecraft/class_7557$class_7559 net/minecraft/client/session/report/log/ReceivedMessage$GameMessage + c A game message received by the client. + f Ljava/time/Instant; comp_872 timestamp + f Lcom/mojang/serialization/MapCodec; field_40810 GAME_MESSAGE_CODEC + f Lnet/minecraft/class_2561; comp_871 message + m ()Ljava/time/Instant; comp_872 timestamp + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46544 method_46544 + p 0 instance + m ()Lnet/minecraft/class_2561; comp_871 message + m (Lnet/minecraft/class_2561;Ljava/time/Instant;)V + p 1 message + p 2 timestamp +c net/minecraft/class_6226 net/minecraft/unused/packageinfo/PackageInfo6226 +c net/minecraft/class_7554 net/minecraft/unused/packageinfo/PackageInfo7554 +c net/minecraft/class_6225 net/minecraft/unused/packageinfo/PackageInfo6225 +c net/minecraft/class_7555 net/minecraft/client/session/report/log/ChatLog + c A chat log holds received message entries with sequential indices, where\nnewer entries receive bigger indices.\n\n

Currently there is only one type of entries; {@link ReceivedMessage}, which is\nan entry for full chat or game messages. + f I field_40497 currentIndex + f [Lnet/minecraft/class_7629; field_40496 entries + m ()Ljava/util/List; method_46536 toList + m ()I method_46537 size + m (I)V + p 1 maxSize + m (I)Lnet/minecraft/class_7629; method_44532 get + c {@return the entry with index {@code index}, or {@code null} if there is no\nsuch entry in the log} + p 1 index + m (ILjava/util/List;)V + p 1 size + p 2 entries + m ()I method_45751 getMinIndex + m (II)[Lnet/minecraft/class_7629; method_46534 method_46534 + p 1 currentIndex + m ()I method_45752 getMaxIndex + m (ILjava/util/List;)Lcom/mojang/serialization/DataResult; method_46535 method_46535 + p 1 entries + m (Lnet/minecraft/class_7629;)V method_44535 add + c Adds {@code entry} to the log. + p 1 entry + m (I)I method_45753 wrapIndex + p 1 index + m (I)Lcom/mojang/serialization/Codec; method_46533 createCodec + p 0 maxSize +c net/minecraft/class_8886 net/minecraft/block/CrafterBlock + f Lcom/mojang/serialization/MapCodec; field_46798 CODEC + f I field_47521 TRIGGER_DELAY + f Lnet/minecraft/class_8884; field_46803 RECIPE_CACHE + f Lnet/minecraft/class_2754; field_46801 ORIENTATION + f Lnet/minecraft/class_2746; field_46799 CRAFTING + f Lnet/minecraft/class_2746; field_46800 TRIGGERED + m (Lnet/minecraft/class_1799;)V method_54474 method_54474 + p 0 stack + m (Lnet/minecraft/class_2586;Z)V method_54477 setTriggered + p 1 blockEntity + p 2 triggered + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_54478 craft + p 3 pos + p 2 world + p 1 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_8887;Lnet/minecraft/class_1799;Lnet/minecraft/class_2680;Lnet/minecraft/class_8786;)V method_54476 transferOrSpawnStack + p 3 blockEntity + p 4 stack + p 5 state + p 6 recipe + p 1 world + p 2 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9694;)Ljava/util/Optional; method_54475 getCraftingRecipe + p 1 input + p 0 world +c net/minecraft/class_12102 net/minecraft/datafixer/fix/DebugProfileOverlayReferenceFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 schema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_75072 method_75072 + p 0 value + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_75068 method_75068 + p 0 typed + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_75069 method_75069 + p 0 pair + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_75070 method_75070 + p 0 profile + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_75071 method_75071 + p 0 map +c net/minecraft/class_12101 net/minecraft/util/math/Easing + m (F)F method_75052 inOutBack + p 0 t + m (F)F method_75044 outBack + p 0 t + m (F)F method_75046 outCubic + p 0 t + m (F)F method_76348 inOutQuart + p 0 t + m (F)F method_76338 inCubic + p 0 t + m (F)F method_76346 inOutCubic + p 0 t + m (F)F method_76336 inBack + p 0 t + m (F)F method_75050 inOutElastic + p 0 t + m (F)F method_76351 outElastic + p 0 t + m (F)F method_76341 inQuart + p 0 t + m (F)F method_76355 outSine + p 0 t + m (F)F method_76345 inOutCirc + p 0 t + m (F)F method_76353 outQuad + p 0 t + m (F)F method_76343 inSine + p 0 t + m (F)F method_75049 outCirc + p 0 t + m (F)F method_75051 inCirc + p 0 f + m (F)F method_75043 inOutSine + p 0 t + m (F)F method_75045 outQuart + p 0 t + m (F)F method_75047 inOutExpo + p 0 t + m (F)F method_76337 inBounce + p 0 t + m (F)F method_76349 inOutQuint + p 0 t + m (F)F method_76347 inOutQuad + p 0 t + m (F)F method_76339 inElastic + p 0 t + m (F)F method_76340 inExpo + p 0 t + m (F)F method_76352 outExpo + p 0 t + m (F)F method_76350 outBounce + p 0 t + m (F)F method_76344 inOutBounce + p 0 t + m (F)F method_76342 inQuint + p 0 t + m (F)F method_76354 outQuint + p 0 t + m (F)F method_75048 inQuad + p 0 t +c net/minecraft/class_12100 net/minecraft/unused/packageinfo/PackageInfo12100 +c net/minecraft/class_12106 net/minecraft/datafixer/fix/TridentAnimationFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_75084 method_75084 + p 0 value + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 schema +c net/minecraft/class_12105 net/minecraft/datafixer/fix/SetGraphicsPresetToCustomFix + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_75082 method_75082 + p 0 typed + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_75083 method_75083 + p 0 options + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 schema +c net/minecraft/class_12104 net/minecraft/datafixer/fix/SplitGraphicsModeFix + f Ljava/lang/String; field_63269 fancyValue + f Ljava/lang/String; field_63270 fabulousValue + f Ljava/lang/String; field_63268 fastValue + f Ljava/lang/String; field_63267 optionName + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_75078 method_75078 + p 1 options + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_75077 method_75077 + p 1 typed + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 4 fancyValue + p 3 fastValue + p 2 optionName + p 1 schema + p 5 fabulousValue + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_75079 method_75079 + p 2 graphicsMode + m (Ljava/lang/String;)Ljava/lang/String; method_75080 getValueForMode + p 1 graphicsMode +c net/minecraft/class_12103 net/minecraft/datafixer/fix/FancyGraphicsToGraphicsModeFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_75075 fx + p 0 value + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_75076 method_75076 + p 0 options + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_75074 method_75074 + p 0 typed + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 schema +c net/minecraft/class_12109 net/minecraft/world/timer/stopwatch/Stopwatch + f J comp_4950 creationTime + f J comp_4951 accumulatedElapsedTime + m (J)J method_75104 getElapsedTimeMs + p 1 timeMs + m (J)D method_75105 getElapsedTimeSeconds + p 1 timeMs + m (J)V + p 1 creationTimeMs + m ()J comp_4951 accumulatedElapsedTime + m ()J comp_4950 creationTime + m (JJ)V + p 1 creationTime + p 3 accumulatedElapsedTime +c net/minecraft/class_12108 net/minecraft/util/profiling/jfr/sample/ClientFpsSample + f I comp_4949 fps + m (Ljdk/jfr/consumer/RecordedEvent;Ljava/lang/String;)Lnet/minecraft/class_12108; method_75097 fromEvent + p 0 event + p 1 key + m ()I comp_4949 fps + m (I)V + p 1 fps +c net/minecraft/class_12107 net/minecraft/datafixer/schema/Schema4648 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_2510 net/minecraft/block/StairsBlock + f Ljava/util/Map; field_55796 STRAIGHT_BOTTOM_SHAPES + f Lnet/minecraft/class_2754; field_11565 SHAPE + f Lnet/minecraft/class_2746; field_11573 WATERLOGGED + f Ljava/util/Map; field_55795 OUTER_BOTTOM_SHAPES + f Lnet/minecraft/class_2248; field_11579 baseBlock + f Lnet/minecraft/class_265; field_55802 STRAIGHT_SHAPE + f Lnet/minecraft/class_265; field_55801 OUTER_SHAPE + f Lnet/minecraft/class_265; field_55803 INNER_SHAPE + f Ljava/util/Map; field_55798 OUTER_TOP_SHAPES + f Ljava/util/Map; field_55797 INNER_BOTTOM_SHAPES + f Ljava/util/Map; field_55800 INNER_TOP_SHAPES + f Ljava/util/Map; field_55799 STRAIGHT_TOP_SHAPES + f Lcom/mojang/serialization/MapCodec; field_46460 CODEC + f Lnet/minecraft/class_2680; field_11574 baseBlockState + f Lnet/minecraft/class_2754; field_11571 FACING + f Lnet/minecraft/class_2754; field_11572 HALF + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54046 method_54046 + p 0 instance + m (Lnet/minecraft/class_2510;)Lnet/minecraft/class_2680; method_54047 method_54047 + p 0 block + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2778; method_10675 getStairShape + p 2 pos + p 1 world + p 0 state + m (Lnet/minecraft/class_2680;)Z method_10676 isStairs + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 baseBlockState + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_10678 isDifferentOrientation + p 0 state + p 2 pos + p 1 world + p 3 dir +c net/minecraft/class_2512 net/minecraft/nbt/NbtHelper + c Helper methods for handling NBT. + f Ljava/util/Comparator; field_27816 BLOCK_POS_COMPARATOR + f Ljava/lang/String; field_33227 COMMA + f Lcom/google/common/base/Splitter; field_27819 COLON_SPLITTER + f Lorg/slf4j/Logger; field_11582 LOGGER + f C field_33226 RIGHT_CURLY_BRACKET + f Lcom/google/common/base/Splitter; field_27818 COMMA_SPLITTER + f Lcom/mojang/serialization/Codec; field_57978 BLOCK_KEY_CODEC + f C field_33225 LEFT_CURLY_BRACKET + f C field_33228 COLON + f Ljava/util/Comparator; field_27817 ENTITY_POS_COMPARATOR + f Ljava/lang/String; field_33224 DATA_KEY + m (Lnet/minecraft/class_2499;)I method_32276 method_32276 + p 0 nbt + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_73082 putDataVersion + p 0 dynamic + m (Lnet/minecraft/class_2520;Z)Ljava/lang/String; method_36117 toFormattedString + c {@return the human-readable, non-deserializable representation of {@code nbt}} + p 1 withArrayContents + c whether to include contents of {@link NbtByteArray}, {@link NbtIntArray},\nand {@link NbtLongArray} + p 0 nbt + m (Lnet/minecraft/class_2499;)I method_32272 method_32272 + p 0 nbt + m (ILjava/lang/StringBuilder;)Ljava/lang/StringBuilder; method_36114 appendIndent + p 0 depth + p 1 stringBuilder + m (Lnet/minecraft/class_2499;Lnet/minecraft/class_2487;)V method_32265 method_32265 + p 1 nbt + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_32275 fromNbtProviderFormat + p 0 compound + m (Ljava/util/Map;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2499; method_32261 method_32261 + p 1 nbt + m (Lnet/minecraft/class_2499;)D method_32269 method_32269 + p 0 nbt + m (Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; method_73083 putDataVersion + p 1 dataVersion + p 0 dynamic + m (Lnet/minecraft/class_2520;)Ljava/util/stream/Stream; method_68598 method_68598 + p 0 nbt + m (Lnet/minecraft/class_2520;)Lnet/minecraft/class_2561; method_32270 toPrettyPrintedText + c {@return the pretty-printed text representation of {@code element}}\n\n@see net.minecraft.nbt.visitor.NbtTextFormatter + p 0 element + m (Lcom/mojang/serialization/Dynamic;I)I method_68084 getDataVersion + p 0 dynamic + p 1 fallback + m (Lnet/minecraft/class_2487;)Ljava/lang/String; method_32271 toNbtProviderString + c {@return the string representation of {@code compound} as used\nby the NBT provider in the data generator}\n\n

The passed {@code compound} will be sorted and modified in-place\nto make it more human-readable e.g. by converting {@link NbtCompound}\nin the {@code palettes} {@code NbtList} to its short string\nrepresentation. Therefore the returned value is not an accurate\nrepresentation of the original NBT.\n\n@see net.minecraft.data.dev.NbtProvider\n@see #fromNbtProviderString(String) + p 0 compound + m (Lnet/minecraft/class_2487;Ljava/lang/String;)Ljava/lang/String; method_68596 method_68596 + p 1 key + m (Ljava/lang/StringBuilder;Lnet/minecraft/class_2520;IZ)Ljava/lang/StringBuilder; method_36116 appendFormattedString + p 1 nbt + p 0 stringBuilder + p 3 withArrayContents + p 2 depth + m (Lnet/minecraft/class_2499;)D method_32268 method_32268 + p 0 nbt + m (Lnet/minecraft/class_2499;)D method_32264 method_32264 + p 0 nbt + m (Lnet/minecraft/class_2487;)Ljava/util/Optional; method_32278 method_32278 + p 0 nbt + m (Lnet/minecraft/class_2520;Lnet/minecraft/class_2520;Z)Z method_10687 matches + c {@return whether {@code standard} is a subset of {@code subject}}\n\n

Elements are matched based on the following order:\n

    \n
  1. Passing the same reference to both parameters will return {@code true}.
  2. \n
  3. If {@code standard} is {@code null}, return {@code true}.
  4. \n
  5. If {@code subject} is {@code null}, return {@code false}.
  6. \n
  7. If the types of {@code standard} and {@code subject} are different,\nreturn {@code false}.
  8. \n
  9. If {@code standard} is {@link NbtCompound}, return {@code true} if all keys\nin the {@code standard} exist in {@code subject} and the values match (comparing\nrecursively.)
  10. \n
  11. If {@code standard} is {@link NbtList} and {@code ignoreListOrder} is {@code true},\nreturn {@code true} if both lists are empty, or if there exists a "matching" value\nin {@code subject} for all values of {@code standard} (that is, if {@code standard}\nis a subset of {@code subject}, ignoring duplicates.), otherwise {@code false}.\nThis means that the comparison ignores the ordering of the lists.
  12. \n
  13. Otherwise, return {@code standard.equals(subject)}.
  14. \n
+ p 2 ignoreListOrder + c whether to ignore ordering for {@link NbtList} + p 1 subject + c the element to test + p 0 standard + c the standard (also called as "template" or "schema") element + m (Lnet/minecraft/class_2520;)Ljava/lang/String; method_36118 toFormattedString + c {@return the human-readable, non-deserializable representation of {@code nbt}}\n\n

This does not include contents of {@link NbtByteArray}, {@link NbtIntArray},\nand {@link NbtLongArray}. To include them, call\n{@link #toFormattedString(NbtElement, boolean)} with {@code withArrayContents}\nparameter set to true.\n\n@see #toFormattedString(NbtElement, boolean) + p 0 nbt + m (Lnet/minecraft/class_2499;)I method_32274 method_32274 + p 0 nbt + m (Ljava/lang/StringBuilder;Lnet/minecraft/class_2487;)V method_32262 method_32262 + p 1 properties + m (Ljava/lang/String;)Lnet/minecraft/class_2487; method_32260 fromNbtProviderString + c {@return the {@code string} parsed as an NBT provider-formatted\nNBT compound}\n\n

This method first parses the string as an NBT, then performs\nseveral conversions from human-readable {@link NbtCompound} items\nto the actual values used in-game.\n\n@see net.minecraft.data.SnbtProvider\n@see #toNbtProviderString + p 0 string + m (Lnet/minecraft/class_2688;Lnet/minecraft/class_2769;Ljava/lang/String;Lnet/minecraft/class_2487;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2688; method_10682 withProperty + p 4 root + p 2 key + p 3 properties + p 0 state + p 1 property + m (Lnet/minecraft/class_11372;)V method_71568 writeDataVersion + p 0 view + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_48310 putDataVersion + p 0 nbt + m (Lnet/minecraft/class_2520;)Ljava/util/stream/Stream; method_68597 method_68597 + p 0 nbt + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2487; method_10686 fromBlockState + c {@return the serialized block state}\n\n@see #toBlockState(RegistryEntryLookup, NbtCompound) + p 0 state + m (Lnet/minecraft/class_2487;I)I method_48309 getDataVersion + p 1 fallback + p 0 nbt + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2680; method_10681 toBlockState + c {@return the block state from the {@code nbt}}\n\n

This returns the default state for {@link net.minecraft.block.Blocks#AIR}\nif the block name is not present.\n\n@see #fromBlockState(BlockState) + p 0 blockLookup + p 1 nbt + m (Lnet/minecraft/class_2499;Lnet/minecraft/class_2499;Lnet/minecraft/class_2499;)V method_32266 method_32266 + p 2 nbt + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_32273 toNbtProviderFormat + p 0 compound + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Ljava/lang/String; method_10685 nameValue + p 0 property + p 1 value + m (Lnet/minecraft/class_2487;I)Lnet/minecraft/class_2487; method_48308 putDataVersion + p 0 nbt + p 1 dataVersion + m (Lnet/minecraft/class_2487;)Ljava/util/Optional; method_32279 method_32279 + p 0 nbt + m (Lnet/minecraft/class_11372;I)V method_71569 writeDataVersion + p 0 view + p 1 dataVersion + m (Lnet/minecraft/class_2487;Ljava/lang/String;Ljava/lang/String;)V method_32263 method_32263 + p 2 property + m (Lnet/minecraft/class_2487;)I method_76039 getDataVersion + p 0 nbt + m (Lnet/minecraft/class_3610;)Lnet/minecraft/class_2487; method_36115 fromFluidState + c {@return the serialized fluid state} + p 0 state + m (Ljava/lang/String;)Lnet/minecraft/class_2487; method_32267 fromNbtProviderFormattedPalette + p 0 string + m (Lnet/minecraft/class_2487;)Ljava/lang/String; method_32277 toNbtProviderFormattedPalette + p 0 compound + m (Ljava/util/Map$Entry;)Ljava/lang/String; method_68595 method_68595 + p 0 entry +c net/minecraft/class_3843 net/minecraft/data/validate/StructureValidatorProvider + f Lorg/slf4j/Logger; field_24617 LOGGER + f Ljava/lang/String; field_52179 PATH_PREFIX + m (Ljava/lang/String;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_32235 update + p 1 nbt + p 0 name +c net/minecraft/class_3837 net/minecraft/loot/function/CopyNbtLootFunction + f Lnet/minecraft/class_5651; field_17013 source + f Ljava/util/List; field_17014 operations + f Lcom/mojang/serialization/MapCodec; field_45819 CODEC + m (Lnet/minecraft/class_5651;)Lnet/minecraft/class_3837$class_3838; method_16848 builder + p 0 source + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53316 method_53316 + p 0 instance + m (Lnet/minecraft/class_47$class_50;)Lnet/minecraft/class_3837$class_3838; method_35519 builder + p 0 target + m (Lnet/minecraft/class_3837;)Lnet/minecraft/class_5651; method_53317 method_53317 + p 0 function + m (Lnet/minecraft/class_3837;)Ljava/util/List; method_53315 method_53315 + p 0 function + m (Ljava/util/List;Lnet/minecraft/class_5651;Ljava/util/List;)V + p 1 conditions + p 2 source + p 3 operations + m (Ljava/util/function/Supplier;Lnet/minecraft/class_2520;Lnet/minecraft/class_3837$class_3839;)V method_16846 method_16846 + p 2 operation +c net/minecraft/class_3837$class_3841 net/minecraft/loot/function/CopyNbtLootFunction$Operator + f Ljava/lang/String; field_17035 name + f Lcom/mojang/serialization/Codec; field_45821 CODEC + f Lnet/minecraft/class_3837$class_3841; field_17033 APPEND + f Lnet/minecraft/class_3837$class_3841; field_17032 REPLACE + f Lnet/minecraft/class_3837$class_3841; field_17034 MERGE + m (Lnet/minecraft/class_2520;Lnet/minecraft/class_2203$class_2209;Ljava/util/List;)V method_16864 merge + p 2 targetPath + p 1 itemNbt + p 3 sourceNbts + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_3837$class_3841$3 net/minecraft/loot/function/CopyNbtLootFunction$Operator$3 + m (Lnet/minecraft/class_2520;Lnet/minecraft/class_2520;)V method_16868 method_16868 + p 1 sourceNbt + m (Ljava/util/List;Lnet/minecraft/class_2520;)V method_16869 method_16869 + p 1 foundNbt +c net/minecraft/class_3837$class_3841$2 net/minecraft/loot/function/CopyNbtLootFunction$Operator$2 + m (Lnet/minecraft/class_2520;Lnet/minecraft/class_2520;)V method_16866 method_16866 + p 1 sourceNbt + m (Ljava/util/List;Lnet/minecraft/class_2520;)V method_16867 method_16867 + p 1 foundNbt +c net/minecraft/class_3837$class_3838 net/minecraft/loot/function/CopyNbtLootFunction$Builder + f Lnet/minecraft/class_5651; field_17017 source + f Ljava/util/List; field_17018 operations + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_3837$class_3841;)Lnet/minecraft/class_3837$class_3838; method_16857 withOperation + p 2 target + p 3 operator + p 1 source + m (Lnet/minecraft/class_5651;)V + p 1 source + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_3837$class_3838; method_16856 withOperation + p 1 source + p 2 target + m ()Lnet/minecraft/class_3837$class_3838; method_16855 getThisBuilder +c net/minecraft/class_3837$class_3839 net/minecraft/loot/function/CopyNbtLootFunction$Operation + f Lnet/minecraft/class_2203$class_2209; comp_1854 parsedTargetPath + f Lnet/minecraft/class_2203$class_2209; comp_1853 parsedSourcePath + f Lcom/mojang/serialization/Codec; field_45820 CODEC + f Lnet/minecraft/class_3837$class_3841; comp_1855 operator + m (Ljava/util/function/Supplier;Lnet/minecraft/class_2520;)V method_16860 execute + p 1 itemNbtGetter + p 2 sourceEntityNbt + m ()Lnet/minecraft/class_2203$class_2209; comp_1854 parsedTargetPath + m (Lnet/minecraft/class_2203$class_2209;Lnet/minecraft/class_2203$class_2209;Lnet/minecraft/class_3837$class_3841;)V + p 3 operator + p 1 parsedSourcePath + p 2 parsedTargetPath + m ()Lnet/minecraft/class_2203$class_2209; comp_1853 parsedSourcePath + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53318 method_53318 + p 0 instance + m ()Lnet/minecraft/class_3837$class_3841; comp_1855 operator +c net/minecraft/class_2506 net/minecraft/block/StainedGlassBlock + f Lcom/mojang/serialization/MapCodec; field_46458 CODEC + f Lnet/minecraft/class_1767; field_11558 color + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54044 method_54044 + p 0 instance + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_4970$class_2251;)V + p 1 color + p 2 settings +c net/minecraft/class_2507 net/minecraft/nbt/NbtIo + c A set of utility functions for reading, writing, and scanning NBT files.\nMethods that do not require {@link NbtSizeTracker} accept any bytes of data,\nprovided that its depth does not exceed {@value NbtSizeTracker#DEFAULT_MAX_DEPTH}.\n\n

When {@linkplain DataOutput#writeUTF writing an invalid string}, methods in\nthis class will write an empty string instead of crashing, with the exception of\n{@link #writeUnsafe} which throws instead. + f [Ljava/nio/file/OpenOption; field_47513 OPEN_OPTIONS + m (Lnet/minecraft/class_2487;Ljava/nio/file/Path;)V method_30614 writeCompressed + c Writes the Gzip-compressed {@code nbt} to the file at {@code path}.\n\n@throws IOException if the IO operation fails\n@see #writeCompressed(NbtCompound, OutputStream) + p 1 path + p 0 nbt + m (Ljava/io/DataInput;Lnet/minecraft/class_6836;Lnet/minecraft/class_2505;)V method_39855 scan + c Scans the NBT input using {@code scanner}.\n\n@apiNote This method does not return the scan result; the user is expected\nto call the appropriate method of the {@link NbtScanner} subclasses, such as\n{@link net.minecraft.nbt.scanner.NbtCollector#getRoot()}.\n\n@throws IOException if the IO operation fails\n@throws NbtSizeValidationException if the {@code tracker}'s validation fails + p 1 scanner + p 2 tracker + p 0 input + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;B)Lnet/minecraft/class_2520; method_52892 readElement + p 0 input + p 1 tracker + p 2 typeId + m (Lnet/minecraft/class_2520;Ljava/io/DataOutput;)V method_52893 writeForPacket + c Writes the {@code nbt} to {@code output}. The output is the byte indicating\nthe element type, followed by the NBT data.\n\n@apiNote In vanilla, this is used exclusively in networking.\n@throws IOException if the IO operation fails\n@see #read(DataInput, NbtSizeTracker)\n@see #write(NbtElement, DataOutput) + p 1 output + p 0 nbt + m (Ljava/io/InputStream;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2487; method_10629 readCompressed + c Reads an NBT compound from Gzip-compressed {@code stream}.\n\n@return the NBT compound from the stream\n@throws IOException if the IO operation fails or if the root NBT element is\nnot a compound\n@throws NbtSizeValidationException if the NBT is too deep\n@see #readCompressed(Path, NbtSizeTracker) + p 0 stream + p 1 tagSizeTracker + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2520; method_52894 read + c Reads an NBT element from {@code input}. Unlike {@link\n#readCompound(DataInput, NbtSizeTracker)}, the element does not have to\nbe a compound.\n\n@return the NBT element from the input\n@throws IOException if the IO operation fails\n@throws NbtSizeValidationException if the {@code tracker}'s validation fails + p 0 input + p 1 tracker + m (Ljava/io/InputStream;)Ljava/io/DataInputStream; method_40059 decompress + c {@return a new input stream that decompresses the input {@code stream}} + p 0 stream + m (Ljava/io/OutputStream;)Ljava/io/DataOutputStream; method_54906 compress + c {@return a new output stream that compresses the input {@code stream}} + p 0 stream + m (Lnet/minecraft/class_2487;Ljava/io/OutputStream;)V method_10634 writeCompressed + c Writes the Gzip-compressed {@code nbt} to {@code stream}.\n\n@throws IOException if the IO operation fails\n@see #writeCompressed(NbtCompound, Path) + p 0 nbt + p 1 stream + m (Lnet/minecraft/class_2520;Ljava/io/DataOutput;)V method_10631 writeUnsafe + c Writes the {@code nbt} to {@code output}. The output is the byte indicating\nthe element type, followed by {@linkplain DataOutput#writeUTF an empty string}\nand the NBT data.\n\n

When {@linkplain DataOutput#writeUTF writing an invalid string}, this\nmethod will throw an error, unlike other methods.\n\n@throws IOException if the IO operation fails\n@see #read(DataInput, NbtSizeTracker)\n@see #writeForPacket(NbtElement, DataOutput)\n@see #write(NbtElement, DataOutput) + p 0 nbt + p 1 output + m (Ljava/io/InputStream;Lnet/minecraft/class_6836;Lnet/minecraft/class_2505;)V method_40058 scanCompressed + c Scans the compressed NBT stream using {@code scanner}.\n\n@apiNote This method does not return the scan result; the user is expected\nto call the appropriate method of the {@link NbtScanner} subclasses, such as\n{@link net.minecraft.nbt.scanner.NbtCollector#getRoot()}.\n\n@throws IOException if the IO operation fails\n@throws NbtSizeValidationException if the {@code tracker}'s validation fails\n@see #scanCompressed(Path, NbtScanner, NbtSizeTracker) + p 1 scanner + p 0 stream + p 2 tracker + m (Ljava/nio/file/Path;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2487; method_30613 readCompressed + c Reads an NBT compound from Gzip-compressed file at {@code path}.\n\n@return the NBT compound from the file\n@throws IOException if the IO operation fails or if the root NBT element is\nnot a compound\n@throws NbtSizeValidationException if the NBT is too deep\n@see #readCompressed(InputStream, NbtSizeTracker) + p 1 tagSizeTracker + p 0 path + m (Ljava/nio/file/Path;Lnet/minecraft/class_6836;Lnet/minecraft/class_2505;)V method_40057 scanCompressed + c Scans the compressed NBT file using {@code scanner}.\n\n@apiNote This method does not return the scan result; the user is expected\nto call the appropriate method of the {@link NbtScanner} subclasses, such as\n{@link net.minecraft.nbt.scanner.NbtCollector#getRoot()}.\n\n@throws IOException if the IO operation fails\n@throws NbtSizeValidationException if the {@code tracker}'s validation fails\n@see #scanCompressed(InputStream, NbtScanner, NbtSizeTracker) + p 1 scanner + p 2 tracker + p 0 path + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2520; method_10626 readElement + p 1 tracker + p 0 input + m (Lnet/minecraft/class_2487;Ljava/io/DataOutput;)V method_10628 writeCompound + c Writes the {@code nbt} to {@code output}.\n\n@throws IOException if the IO operation fails\n@see #write(NbtCompound, Path) + p 0 nbt + p 1 output + m (Ljava/nio/file/Path;)Lnet/minecraft/class_2487; method_10633 read + c Reads an NBT compound from the file at{@code path}.\n\n@return the NBT compound from the file, or {@code null} if the file does not exist\n@throws IOException if the IO operation fails or if the root NBT element is\nnot a compound\n@throws NbtSizeValidationException if the NBT is too deep + p 0 path + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2487; method_10625 readCompound + c Reads an NBT compound from {@code input}.\n\n@return the NBT compound from the input\n@throws IOException if the IO operation fails or if the root NBT element is\nnot a compound\n@throws NbtSizeValidationException if the {@code tracker}'s validation fails + p 1 tracker + p 0 input + m (Lnet/minecraft/class_2520;Ljava/io/DataOutput;)V method_55324 write + c Writes the {@code nbt} to {@code output}. The output is the byte indicating\nthe element type, followed by {@linkplain DataOutput#writeUTF an empty string}\nand the NBT data.\n\n

When {@linkplain DataOutput#writeUTF writing an invalid string}, this\nmethod will write an empty string instead of crashing.\n\n@throws IOException if the IO operation fails\n@see #read(DataInput, NbtSizeTracker)\n@see #writeForPacket(NbtElement, DataOutput)\n@see #writeUnsafe(NbtElement, DataOutput) + p 0 nbt + p 1 output + m (Ljava/io/DataInput;)Lnet/minecraft/class_2487; method_10627 readCompound + c Reads an NBT compound from {@code input}.\n\n@return the NBT compound from the input\n@throws IOException if the IO operation fails or if the root NBT element is\nnot a compound\n@throws NbtSizeValidationException if the NBT is too deep + p 0 input + m (Lnet/minecraft/class_2487;Ljava/nio/file/Path;)V method_10630 write + c Writes the {@code nbt} to the file at {@code path}.\n\n@throws IOException if the IO operation fails\n@see #writeCompound(NbtCompound, DataOutput) + p 1 path + p 0 nbt +c net/minecraft/class_2507$class_9003 net/minecraft/nbt/NbtIo$InvalidUtfSkippingDataOutput +c net/minecraft/class_2508 net/minecraft/block/SignBlock + f Lnet/minecraft/class_2758; field_11559 ROTATION + f Lcom/mojang/serialization/MapCodec; field_46461 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54048 method_54048 + p 0 instance +c net/minecraft/class_2509 net/minecraft/nbt/NbtOps + c Used to handle Minecraft NBTs within {@link com.mojang.serialization.Dynamic\ndynamics} for DataFixerUpper, allowing generalized serialization logic\nshared across different type of data structures. Use {@link NbtOps#INSTANCE}\nfor the ops singleton.\n\n

For instance, dimension data may be stored as JSON in data packs, but\nthey will be transported in packets as NBT. DataFixerUpper allows\ngeneralizing the dimension serialization logic to prevent duplicate code,\nwhere the NBT ops allow the DataFixerUpper dimension serialization logic\nto interact with Minecraft NBTs.\n\n@see NbtOps#INSTANCE + f Lnet/minecraft/class_2509; field_11560 INSTANCE + c An singleton of the NBT dynamic ops.\n\n

This ops does not compress maps (replace field name to value pairs\nwith an ordered list of values in serialization). In fact, since\nMinecraft NBT lists can only contain elements of the same type, this op\ncannot compress maps. + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getNumberValue getNumberValue + p 1 element + m (B)Lnet/minecraft/class_2520; method_10640 createByte + m (Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult; method_10651 getIntStream + m (Lnet/minecraft/class_2520;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; method_29154 mergeToMap + m (Lnet/minecraft/class_2487;Lcom/mojang/datafixers/util/Pair;)V method_29152 method_29152 + p 1 entry + m (Ljava/util/stream/Stream;)Lnet/minecraft/class_2520; method_10655 createMap + m (Ljava/lang/String;)Ljava/lang/Object; createString createString + p 1 string + m ()Lnet/minecraft/class_2520; method_76574 emptyMap + m (Ljava/lang/Number;)Ljava/lang/Object; createNumeric createNumeric + p 1 value + m (Ljava/util/List;Lnet/minecraft/class_2509$class_7813;)Lcom/mojang/serialization/DataResult; method_46230 method_46230 + p 1 merger + m (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; remove remove + p 2 key + p 1 element + m (Lnet/minecraft/class_2520;Lnet/minecraft/class_2509$class_7813;)Lcom/mojang/serialization/DataResult; method_46234 method_46234 + p 1 merger + m (Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult; method_29163 getMap + m (Ljava/util/stream/Stream;)Ljava/lang/Object; createList createList + p 1 stream + m (Lnet/minecraft/class_2520;Lnet/minecraft/class_2520;Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult; method_29157 mergeToMap + m (Ljava/util/stream/LongStream;)Lnet/minecraft/class_2520; method_10643 createLongList + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; mergeToMap mergeToMap + p 1 map + p 2 key + p 3 value + m (Lnet/minecraft/class_2520;Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult; method_29156 mergeToList + m (Ljava/nio/ByteBuffer;)Ljava/lang/Object; createByteList createByteList + p 1 buf + m (Ljava/lang/Object;Ljava/util/List;)Lcom/mojang/serialization/DataResult; mergeToList mergeToList + p 2 values + p 1 list + m (Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult; method_10664 getStream + m (Ljava/util/stream/LongStream;)Ljava/lang/Object; createLongList createLongList + p 1 stream + m (S)Lnet/minecraft/class_2520; method_10635 createShort + m (Lnet/minecraft/class_2520;Ljava/util/Map;)Lcom/mojang/serialization/DataResult; method_59877 mergeToMap + m (Lnet/minecraft/class_2520;Ljava/lang/String;)Lnet/minecraft/class_2520; method_10648 remove + m ()Lnet/minecraft/class_2520; method_76573 emptyList + m (S)Ljava/lang/Object; createShort createShort + p 1 value + m (F)Ljava/lang/Object; createFloat createFloat + p 1 value + m (Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult; method_29164 getList + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getMap getMap + p 1 element + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/class_2520; method_10657 createByteList + m (Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult; method_10656 getStringValue + m (I)Lnet/minecraft/class_2520; method_10661 createInt + m (Ljava/lang/Object;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; mergeToMap mergeToMap + p 2 map + p 1 element + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getByteBuffer getByteBuffer + p 1 element + m (Lnet/minecraft/class_2520;)Ljava/util/Optional; method_46235 createMerger + p 0 nbt + m (D)Lnet/minecraft/class_2520; method_10652 createDouble + m (F)Lnet/minecraft/class_2520; method_10662 createFloat + m (Ljava/util/stream/IntStream;)Ljava/lang/Object; createIntList createIntList + p 1 stream + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getMapValues getMapValues + p 1 element + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getStream getStream + p 1 element + m (J)Ljava/lang/Object; createLong createLong + p 1 value + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getList getList + p 1 element + m (Ljava/util/stream/Stream;)Lnet/minecraft/class_2520; method_10665 createList + m (Ljava/lang/Object;Ljava/util/Map;)Lcom/mojang/serialization/DataResult; mergeToMap mergeToMap + p 2 map + p 1 nbt + m (Ljava/util/stream/Stream;)Ljava/lang/Object; createMap createMap + p 1 entries + m (Z)Lnet/minecraft/class_2520; method_23253 createBoolean + m (I)Ljava/lang/Object; createInt createInt + p 1 value + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; mergeToList mergeToList + p 1 list + p 2 value + m (Ljava/lang/String;)Lnet/minecraft/class_2520; method_10639 createString + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getMapEntries getMapEntries + p 1 element + m (Lnet/minecraft/class_2520;Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_29155 mergeToList + m ()Lnet/minecraft/class_2520; method_10668 empty + m (Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult; method_10645 getNumberValue + m (Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult; method_10637 getLongStream + m (Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult; method_10669 getMapValues + m (Ljava/util/stream/IntStream;)Lnet/minecraft/class_2520; method_10663 createIntList + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getStringValue getStringValue + p 1 element + m (Z)Ljava/lang/Object; createBoolean createBoolean + p 1 value + m (Ljava/lang/Number;)Lnet/minecraft/class_2520; method_10660 createNumeric + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_2520;)Ljava/lang/Object; method_29146 convertTo + m (Ljava/util/List;Lnet/minecraft/class_2487;Lcom/mojang/datafixers/util/Pair;)V method_29147 method_29147 + p 2 pair + p 0 entry + m (D)Ljava/lang/Object; createDouble createDouble + p 1 value + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Ljava/lang/Object; convertTo convertTo + p 2 element + p 1 ops + m (Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult; method_29162 getMapEntries + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getIntStream getIntStream + p 1 element + m (Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult; method_10646 getByteBuffer + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getLongStream getLongStream + p 1 element + m (J)Lnet/minecraft/class_2520; method_10654 createLong + m (B)Ljava/lang/Object; createByte createByte + p 1 value +c net/minecraft/class_2509$class_7814 net/minecraft/nbt/NbtOps$LongArrayMerger + f Lit/unimi/dsi/fastutil/longs/LongArrayList; field_40673 list + m ([J)V + p 1 values +c net/minecraft/class_2509$class_7813 net/minecraft/nbt/NbtOps$Merger + m ()Lnet/minecraft/class_2520; method_46239 getResult + m (Ljava/lang/Iterable;)Lnet/minecraft/class_2509$class_7813; method_46247 merge + p 1 nbts + m (Lnet/minecraft/class_2520;)Lnet/minecraft/class_2509$class_7813; method_46240 merge + p 1 nbt + m (Ljava/util/stream/Stream;)Lnet/minecraft/class_2509$class_7813; method_46248 merge + p 1 nbts +c net/minecraft/class_2509$class_7812 net/minecraft/nbt/NbtOps$IntArrayMerger + f Lit/unimi/dsi/fastutil/ints/IntArrayList; field_40672 list + m ([I)V + p 1 values +c net/minecraft/class_2509$class_7809 net/minecraft/nbt/NbtOps$CompoundListMerger + f Lnet/minecraft/class_2499; field_40669 list + m (Lit/unimi/dsi/fastutil/ints/IntArrayList;)V + p 1 list + m (I)V method_46242 method_46242 + p 1 value + m (Lit/unimi/dsi/fastutil/bytes/ByteArrayList;)V + p 1 list + m (J)V method_46243 method_46243 + p 1 value + m (B)V method_46241 method_46241 + p 1 value + m (Lit/unimi/dsi/fastutil/longs/LongArrayList;)V + p 1 list +c net/minecraft/class_2509$class_7808 net/minecraft/nbt/NbtOps$ByteArrayMerger + f Lit/unimi/dsi/fastutil/bytes/ByteArrayList; field_40668 list + m ([B)V + p 1 values +c net/minecraft/class_2509$1 net/minecraft/nbt/NbtOps$1 + m (Ljava/lang/String;)Ljava/lang/Object; get get + p 1 key + m (Lnet/minecraft/class_2520;)Lnet/minecraft/class_2520; method_29167 get + m (Ljava/lang/String;)Lnet/minecraft/class_2520; method_29165 get + m (Ljava/lang/Object;)Ljava/lang/Object; get get + p 1 nbt +c net/minecraft/class_2509$class_5320 net/minecraft/nbt/NbtOps$MapBuilder + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult; method_29170 build + m ()Lnet/minecraft/class_2487; method_29168 initBuilder + m (Ljava/lang/String;Lnet/minecraft/class_2520;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_29169 append + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; build build + p 1 nbt + p 2 mergedValue + m (Lnet/minecraft/class_2509;)V + p 1 ops + m (Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; append append + p 2 value + p 3 nbt + p 1 key +c net/minecraft/class_2502 net/minecraft/block/SpongeBlock + f I field_31251 ABSORB_LIMIT + f Lcom/mojang/serialization/MapCodec; field_46456 CODEC + f I field_31250 ABSORB_RADIUS + f [Lnet/minecraft/class_2350; field_43257 DIRECTIONS + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_10620 update + p 2 pos + p 1 world + m (Lnet/minecraft/class_2338;Ljava/util/function/Consumer;)V method_49830 method_49830 + p 1 queuer + p 0 currentPos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338$class_10384; method_49829 method_49829 + p 2 currentPos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_10619 absorbWater + p 2 pos + p 1 world +c net/minecraft/class_3834 net/minecraft/structure/SavannaVillageData + f Lnet/minecraft/class_5321; field_26285 TOWN_CENTERS_KEY + f Lnet/minecraft/class_5321; field_40962 TERMINATORS_KEY + f Lnet/minecraft/class_5321; field_40963 ZOMBIE_TERMINATORS_KEY + m (Lnet/minecraft/class_7891;)V method_16844 bootstrap + p 0 poolRegisterable +c net/minecraft/class_2503 net/minecraft/nbt/NbtLong + c Represents an NBT 64-bit integer. Its type is {@value NbtElement#LONG_TYPE}.\nInstances are immutable. + f Lnet/minecraft/class_4614; field_21041 TYPE + f I field_41727 SIZE + f J comp_3821 value + m ()Lnet/minecraft/class_2503; method_10621 copy + m (J)Lnet/minecraft/class_2503; method_23251 of + c {@return the NBT long from {@code value}} + p 0 value + m (J)V + p 1 value + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()J comp_3821 value +c net/minecraft/class_2503$1 net/minecraft/nbt/NbtLong$1 + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)J method_53897 readLong + p 0 input + p 1 tracker + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2503; method_23252 read +c net/minecraft/class_2503$class_4612 net/minecraft/nbt/NbtLong$Cache + f [Lnet/minecraft/class_2503; field_21042 VALUES + f I field_33203 MIN + f I field_33202 MAX +c net/minecraft/class_2504 net/minecraft/block/StainedGlassPaneBlock + f Lcom/mojang/serialization/MapCodec; field_46459 CODEC + f Lnet/minecraft/class_1767; field_11554 color + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_4970$class_2251;)V + p 1 color + p 2 settings + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54045 method_54045 + p 0 instance +c net/minecraft/class_3836 net/minecraft/structure/SnowyVillageData + f Lnet/minecraft/class_5321; field_26286 TOWN_CENTERS_KEY + f Lnet/minecraft/class_5321; field_40964 TERMINATORS_KEY + m (Lnet/minecraft/class_7891;)V method_16845 bootstrap + p 0 poolRegisterable +c net/minecraft/class_2505 net/minecraft/nbt/NbtSizeTracker + c Tracks the size of NBT elements in bytes and in depth. Throws {@link\nNbtSizeValidationException} if the tracked element becomes larger than {@link\n#maxBytes} or if the depth exceeds {@link #maxDepth} during addition. + f I field_64682 LEVEL_MAX_SIZE + f I field_64681 PACKET_MAX_SIZE + f I field_46210 depth + f I field_46208 DEFAULT_MAX_DEPTH + f J field_11555 allocatedBytes + f I field_46209 maxDepth + f J field_11557 maxBytes + m ()I method_53902 getDepth + m ()Lnet/minecraft/class_2505; method_76768 forPacket + m ()Lnet/minecraft/class_2505; method_76769 forLevel + m (J)V method_48004 add + p 1 bytes + m (J)Lnet/minecraft/class_2505; method_53899 of + p 0 maxBytes + m (JI)V + p 1 maxBytes + p 3 maxDepth + m ()Lnet/minecraft/class_2505; method_53898 ofUnlimitedBytes + m ()V method_53901 popStack + m ()V method_53900 pushStack + m ()J method_47987 getAllocatedBytes + m (JJ)V method_53908 add + p 1 multiplier + p 3 bytes +c net/minecraft/class_3851 net/minecraft/village/VillagerDataContainer + m ()Lnet/minecraft/class_3850; method_7231 getVillagerData + m (Lnet/minecraft/class_3850;)V method_7195 setVillagerData + p 1 villagerData +c net/minecraft/class_2520 net/minecraft/nbt/NbtElement + c Represents an NBT element. + f B field_33256 DOUBLE_TYPE + c The numeric ID of an NBT double value. Is {@value}.\n\n@see NbtDouble + f B field_33258 STRING_TYPE + c The numeric ID of an NBT string value. Is {@value}.\n\n@see NbtString + f I field_33264 MAX_DEPTH + f B field_33252 SHORT_TYPE + c The numeric ID of an NBT short value. Is {@value}.\n\n@see NbtShort + f B field_33254 LONG_TYPE + c The numeric ID of an NBT long value. Is {@value}.\n\n@see NbtLong + f B field_33260 COMPOUND_TYPE + c The numeric ID of an NBT compound value. Is {@value}.\n\n@see NbtCompound + f B field_33262 LONG_ARRAY_TYPE + c The numeric ID of an NBT long array value. Is {@value}.\n\n@see NbtLongArray + f B field_33250 END_TYPE + c The numeric ID of an NBT end value. Is {@value}.\n\n@see NbtEnd + f B field_33257 BYTE_ARRAY_TYPE + c The numeric ID of an NBT byte array value. Is {@value}.\n\n@see NbtByteArray + f B field_33259 LIST_TYPE + c The numeric ID of an NBT list value. Is {@value}.\n\n@see NbtList + f B field_33253 INT_TYPE + c The numeric ID of an NBT integer value. Is {@value}.\n\n@see NbtInt + f B field_33255 FLOAT_TYPE + c The numeric ID of an NBT float value. Is {@value}.\n\n@see NbtFloat + f B field_33251 BYTE_TYPE + c The numeric ID of an NBT byte value. Is {@value}.\n\n@see NbtByte + f B field_33261 INT_ARRAY_TYPE + c The numeric ID of an NBT integer array value. Is {@value}.\n\n@see NbtIntArray + m (Lnet/minecraft/class_6836;)V method_39876 accept + p 1 visitor + m ()Lnet/minecraft/class_2520; method_10707 copy + c {@return an NBT element of equal value that won't change with this element} + m ()Ljava/util/Optional; method_68605 asDouble + m ()Ljava/util/Optional; method_68603 asLong + m ()Ljava/util/Optional; method_68601 asShort + m ()Ljava/util/Optional; method_68572 asIntArray + m ()Ljava/util/Optional; method_68592 asNbtList + m (Ljava/lang/Byte;)Ljava/lang/Boolean; method_68661 method_68661 + p 0 b + m ()Lnet/minecraft/class_4614; method_23258 getNbtType + c {@return the NBT type definition of this NBT element} + m ()B method_10711 getType + c {@return the type of this NBT element} + m ()Ljava/util/Optional; method_68606 asBoolean + m ()Ljava/util/Optional; method_68658 asString + m ()Ljava/util/Optional; method_68559 asByteArray + m ()Ljava/util/Optional; method_68604 asFloat + m ()Ljava/util/Optional; method_68602 asInt + m (Lnet/minecraft/class_6836;)Lnet/minecraft/class_6836$class_6838; method_39850 doAccept + p 1 visitor + m ()Ljava/util/Optional; method_68599 asNumber + m ()Ljava/util/Optional; method_68600 asByte + m (Ljava/io/DataOutput;)V method_10713 write + c Writes the NBT element to {@code output}.\n\n@apiNote This is a low-level method for serializing NBT elements; consider using\n{@link NbtIo}, {@link NbtOps}, or {@link net.minecraft.network.PacketByteBuf#writeNbt}\ninstead. + p 1 output + m (Lnet/minecraft/class_5627;)V method_32289 accept + p 1 visitor + m ()Ljava/util/Optional; method_68571 asCompound + m ()Ljava/util/Optional; method_68593 asLongArray + m ()I method_47988 getSizeInBytes +c net/minecraft/class_3852 net/minecraft/village/VillagerProfession + f Ljava/util/function/Predicate; comp_820 acquirableWorkstation + c A predicate for a workstation that could be acquired by the villager profession. + f Lnet/minecraft/class_3414; comp_823 workSound + f Lcom/google/common/collect/ImmutableSet; comp_821 gatherableItems + f Lcom/google/common/collect/ImmutableSet; comp_822 secondaryJobSites + f Lnet/minecraft/class_2561; comp_818 id + f Ljava/util/function/Predicate; field_39308 IS_ACQUIRABLE_JOB_SITE + f Ljava/util/function/Predicate; comp_819 heldWorkstation + c A predicate for the workstation currently held by the villager profession. + f Lnet/minecraft/class_5321; field_17059 LEATHERWORKER + f Lnet/minecraft/class_5321; field_17058 FLETCHER + f Lnet/minecraft/class_5321; field_17057 FISHERMAN + f Lnet/minecraft/class_5321; field_17052 ARMORER + f Lnet/minecraft/class_5321; field_17051 NONE + f Lnet/minecraft/class_5321; field_17056 FARMER + f Lnet/minecraft/class_5321; field_17055 CLERIC + f Lnet/minecraft/class_5321; field_17054 CARTOGRAPHER + f Lnet/minecraft/class_5321; field_17053 BUTCHER + f Lnet/minecraft/class_5321; field_17060 LIBRARIAN + f Lnet/minecraft/class_5321; field_17064 TOOLSMITH + f Lnet/minecraft/class_5321; field_17063 SHEPHERD + f Lnet/minecraft/class_5321; field_17062 NITWIT + f Lnet/minecraft/class_5321; field_17061 MASON + f Lnet/minecraft/class_5321; field_17065 WEAPONSMITH + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lnet/minecraft/class_3414;)Lnet/minecraft/class_3852; method_16926 register + p 0 registry + p 2 heldWorkstation + p 1 key + p 3 workSound + m ()Ljava/util/function/Predicate; comp_820 acquirableWorkstation + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lcom/google/common/collect/ImmutableSet;Lcom/google/common/collect/ImmutableSet;Lnet/minecraft/class_3414;)Lnet/minecraft/class_3852; method_19197 register + p 3 gatherableItems + p 2 heldWorkstation + p 5 workSound + p 4 secondaryJobSites + p 1 key + p 0 registry + m ()Lnet/minecraft/class_3414; comp_823 workSound + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_5321;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lcom/google/common/collect/ImmutableSet;Lcom/google/common/collect/ImmutableSet;Lnet/minecraft/class_3414;)Lnet/minecraft/class_3852; method_44008 register + p 1 key + p 0 registry + p 6 workSound + p 3 acquirableWorkstation + p 2 heldWorkstation + p 5 secondaryJobSites + p 4 gatherableItems + m ()Lcom/google/common/collect/ImmutableSet; comp_821 gatherableItems + m ()Lcom/google/common/collect/ImmutableSet; comp_822 secondaryJobSites + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_6880;)Z method_44009 method_44009 + p 1 entry + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_6880;)Z method_44321 method_44321 + p 1 entry + m ()Lnet/minecraft/class_2561; comp_818 id + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_6880;)Z method_44322 method_44322 + p 1 entry + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_6880;)Z method_44005 method_44005 + p 1 entry + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_66691 of + p 0 id + m (Lnet/minecraft/class_6880;)Z method_44006 method_44006 + p 0 poiType + m ()Ljava/util/function/Predicate; comp_819 heldWorkstation + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_5321;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/class_3414;)Lnet/minecraft/class_3852; method_44007 register + p 3 acquirableWorkstation + p 4 workSound + p 1 key + p 2 heldWorkstation + p 0 registry + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_3852; method_66692 registerAndGetDefault + p 0 registry + m (Lnet/minecraft/class_2561;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lcom/google/common/collect/ImmutableSet;Lcom/google/common/collect/ImmutableSet;Lnet/minecraft/class_3414;)V + p 1 id + p 2 heldWorkstation + p 3 acquirableWorkstation + p 4 gatherableItems + p 5 secondaryJobSites + p 6 workSound +c net/minecraft/class_2521 net/minecraft/block/TallFlowerBlock + f Lcom/mojang/serialization/MapCodec; field_46469 CODEC +c net/minecraft/class_3853 net/minecraft/village/TradeOffers + f I field_30618 NOVICE_SELL_EXPERIENCE + f F field_30628 HIGH_PRICE_MULTIPLIER + f I field_30626 MASTER_TRADE_EXPERIENCE + f I field_30616 COMMON_MAX_USES + f I field_30622 JOURNEYMAN_SELL_EXPERIENCE + f I field_30624 EXPERT_SELL_EXPERIENCE + f I field_30620 APPRENTICE_SELL_EXPERIENCE + f Ljava/util/Map; field_17067 PROFESSION_TO_LEVELED_TRADE + f Ljava/util/List; field_17724 WANDERING_TRADER_TRADES + f I field_30619 NOVICE_BUY_EXPERIENCE + f F field_30627 LOW_PRICE_MULTIPLIER + f I field_30615 DEFAULT_MAX_USES + f I field_30625 EXPERT_BUY_EXPERIENCE + f I field_30617 RARE_MAX_USES + f I field_30621 APPRENTICE_BUY_EXPERIENCE + f I field_30623 JOURNEYMAN_BUY_EXPERIENCE + f Ljava/util/Map; field_45128 REBALANCED_PROFESSION_TO_LEVELED_TRADE + m (Ljava/util/HashMap;)V method_16929 method_16929 + p 0 map + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_9306; method_57311 createPotion + p 0 potion + m (Lcom/google/common/collect/ImmutableMap;)Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; method_16928 copyToFastUtilMap + p 0 map + m (I)Lnet/minecraft/class_3853$class_1652; method_52552 createLibrarianTradeFactory + p 0 experience + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_9329$class_9330;)Lnet/minecraft/class_9329$class_9330; method_57312 method_57312 + p 1 builder + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_1799; method_52553 createPotionStack + p 0 potion + m ()Lnet/minecraft/class_3853$class_1652; method_52551 createMasterLibrarianTradeFactory +c net/minecraft/class_3853$class_4164 net/minecraft/village/TradeOffers$ProcessItemFactory + f Ljava/util/Optional; field_51618 enchantmentProviderKey + f F field_18570 multiplier + f Lnet/minecraft/class_1799; field_18566 processed + f I field_18565 price + f I field_18568 maxUses + f I field_18569 experience + f Lnet/minecraft/class_9306; field_18563 toBeProcessed + m (Lnet/minecraft/class_1935;IILnet/minecraft/class_1935;IIIFLnet/minecraft/class_5321;)V + p 4 processed + p 5 processedCount + p 2 count + p 3 price + p 8 multiplier + p 9 enchantmentProviderKey + p 6 maxUses + p 7 experience + p 1 item + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_5819;Lnet/minecraft/class_5321;)V method_59950 method_59950 + p 4 key + m (Lnet/minecraft/class_1935;IILnet/minecraft/class_1792;IIIF)V + p 1 item + p 2 count + p 3 price + p 4 processed + p 5 processedCount + p 6 maxUses + p 7 experience + p 8 multiplier + m (Lnet/minecraft/class_9306;ILnet/minecraft/class_1799;IIFLjava/util/Optional;)V + p 7 enchantmentProviderKey + p 6 multiplier + p 5 processedCount + p 4 maxUses + p 3 processed + p 2 count + p 1 toBeProcessed + m (Lnet/minecraft/class_1935;IILnet/minecraft/class_1799;IIIF)V + p 1 item + p 2 count + p 3 price + p 4 processed + p 5 processedCount + p 6 maxUses + p 7 experience + p 8 multiplier +c net/minecraft/class_3853$class_4165 net/minecraft/village/TradeOffers$SellItemFactory + f Ljava/util/Optional; field_51619 enchantmentProviderKey + f I field_18572 price + f I field_18574 maxUses + f I field_18575 experience + f F field_18576 multiplier + f Lnet/minecraft/class_1799; field_18571 sell + m (Lnet/minecraft/class_2248;IIII)V + p 3 count + p 4 maxUses + p 1 block + p 2 price + p 5 experience + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_5819;Lnet/minecraft/class_5321;)V method_59951 method_59951 + p 4 key + m (Lnet/minecraft/class_1792;IIIIFLnet/minecraft/class_5321;)V + p 7 enchantmentProviderKey + p 4 maxUses + p 3 count + p 6 multiplier + p 5 experience + p 2 price + p 1 item + m (Lnet/minecraft/class_1792;III)V + p 3 count + p 4 experience + p 1 item + p 2 price + m (Lnet/minecraft/class_1792;IIII)V + p 1 item + p 2 price + p 3 count + p 4 maxUses + p 5 experience + m (Lnet/minecraft/class_1799;IIII)V + p 1 stack + p 2 price + p 3 count + p 4 maxUses + p 5 experience + m (Lnet/minecraft/class_1799;IIIIF)V + p 2 price + p 1 stack + p 6 multiplier + p 5 experience + p 4 maxUses + p 3 count + m (Lnet/minecraft/class_1799;IIIIFLjava/util/Optional;)V + p 2 price + p 3 count + p 4 maxUses + p 5 experience + p 1 sell + p 6 multiplier + p 7 enchantmentProviderKey + m (Lnet/minecraft/class_1792;IIIIF)V + p 1 item + p 2 price + p 3 count + p 4 maxUses + p 5 experience + p 6 multiplier +c net/minecraft/class_3853$class_4166 net/minecraft/village/TradeOffers$SellSuspiciousStewFactory + f F field_18580 multiplier + f I field_18579 experience + f Lnet/minecraft/class_9298; field_45756 stewEffects + m (Lnet/minecraft/class_9298;IF)V + p 3 multiplier + p 1 stewEffects + p 2 experience + m (Lnet/minecraft/class_6880;II)V + p 3 experience + p 2 duration + p 1 effect +c net/minecraft/class_3853$class_4167 net/minecraft/village/TradeOffers$SellPotionHoldingItemFactory + f I field_18583 price + f I field_18584 maxUses + f I field_18585 experience + f Lnet/minecraft/class_1792; field_18586 secondBuy + f I field_18587 secondCount + f F field_18588 priceMultiplier + f Lnet/minecraft/class_1799; field_18581 sell + f I field_18582 sellCount + m (Lnet/minecraft/class_1792;ILnet/minecraft/class_1792;IIII)V + p 7 experience + p 6 maxUses + p 3 tippedArrow + p 2 secondCount + p 5 price + p 4 sellCount + p 1 arrow + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6880$class_6883;)Z method_19203 method_19203 + p 1 entry +c net/minecraft/class_3853$class_1652 net/minecraft/village/TradeOffers$Factory + c A factory to create trade offers. + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_5819;)Lnet/minecraft/class_1914; method_7246 create + c Creates a trade offer.\n\n@return a new trade offer, or {@code null} if none should be created + p 3 random + p 2 entity + p 1 world +c net/minecraft/class_3853$class_4160 net/minecraft/village/TradeOffers$SellDyedArmorFactory + f Lnet/minecraft/class_1792; field_18544 sell + f I field_18545 price + f I field_18546 maxUses + f I field_18547 experience + m (Lnet/minecraft/class_1792;III)V + p 2 price + p 3 maxUses + p 4 experience + p 1 item + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_1769; method_19200 getDye + p 0 random + m (Lnet/minecraft/class_1792;I)V + p 1 item + p 2 price +c net/minecraft/class_3853$class_4161 net/minecraft/village/TradeOffers$BuyItemFactory + f I field_18549 price + f I field_18550 maxUses + f I field_18551 experience + f F field_18552 multiplier + f Lnet/minecraft/class_9306; field_45130 stack + m (Lnet/minecraft/class_1935;III)V + p 1 item + p 3 experience + p 2 maxUses + p 4 price + m (Lnet/minecraft/class_1935;IIII)V + p 1 item + p 2 count + p 5 price + p 3 maxUses + p 4 experience + m (Lnet/minecraft/class_9306;III)V + p 1 stack + p 2 count + p 3 maxUses + p 4 experience +c net/minecraft/class_3853$class_4162 net/minecraft/village/TradeOffers$TypeAwareBuyForOneEmeraldFactory + f I field_18554 count + f I field_18555 maxUses + f I field_18556 experience + f Ljava/util/Map; field_18553 map + m (Ljava/util/Map;Lnet/minecraft/class_5321;)Z method_19202 method_19202 + p 1 typeKey + m (Lnet/minecraft/class_5321;)V method_19201 method_19201 + p 0 typeKey + m (IIILjava/util/Map;)V + p 1 count + p 4 map + p 2 maxUses + p 3 experience +c net/minecraft/class_3853$class_8640 net/minecraft/village/TradeOffers$TypedWrapperFactory + f Ljava/util/Map; comp_1962 typeToFactory + m (Lnet/minecraft/class_3853$class_1652;[Lnet/minecraft/class_5321;)Lnet/minecraft/class_3853$class_8640; method_53834 of + p 1 types + p 0 factory + m ()Ljava/util/Map; comp_1962 typeToFactory + m (Ljava/util/Map;)V + p 1 typeToFactory +c net/minecraft/class_3853$class_4163 net/minecraft/village/TradeOffers$SellEnchantedToolFactory + f Lnet/minecraft/class_1799; field_18558 tool + f I field_18560 maxUses + f I field_18561 experience + f F field_18562 multiplier + f I field_18559 basePrice + m (Lnet/minecraft/class_1792;IIIF)V + p 5 multiplier + p 4 experience + p 3 maxUses + p 2 basePrice + p 1 item + m (Lnet/minecraft/class_1792;III)V + p 2 basePrice + p 1 item + p 4 experience + p 3 maxUses +c net/minecraft/class_3853$class_1654 net/minecraft/village/TradeOffers$SellMapFactory + f Lnet/minecraft/class_6862; field_7474 structure + f I field_18589 price + f Ljava/lang/String; field_37051 nameKey + f Lnet/minecraft/class_6880; field_7473 decoration + f I field_18591 experience + f I field_18590 maxUses + m (ILnet/minecraft/class_6862;Ljava/lang/String;Lnet/minecraft/class_6880;II)V + p 3 nameKey + p 2 structure + p 5 maxUses + p 4 decoration + p 1 price + p 6 experience +c net/minecraft/class_3853$class_8793 net/minecraft/village/TradeOffers$EmptyFactory +c net/minecraft/class_3853$class_1648 net/minecraft/village/TradeOffers$EnchantBookFactory + f I field_18557 experience + f Lnet/minecraft/class_6862; field_45131 possibleEnchantments + f I field_45133 maxLevel + f I field_45132 minLevel + m (ILnet/minecraft/class_6862;)V + p 1 experience + p 2 possibleEnchantments + m (IIILnet/minecraft/class_6862;)V + p 3 maxLevel + p 4 possibleEnchantments + p 1 experience + p 2 minLevel +c net/minecraft/class_2522 net/minecraft/nbt/StringNbtReader + c A class for reading a stringified NBT.\n\n@apiNote Methods in this class throw {@code CommandSyntaxException} to indicate\nsyntax errors within the NBT representation. + f Lcom/mojang/serialization/Codec; field_51469 NBT_COMPOUND_CODEC + f Lcom/mojang/serialization/DynamicOps; field_58174 ops + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_11602 TRAILING + f Lcom/mojang/serialization/Codec; field_56411 STRINGIFIED_CODEC + f Lnet/minecraft/class_9408; field_58029 parser + f Lnet/minecraft/class_2522; field_58028 DEFAULT_READER + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_56410 EXPECTED_COMPOUND + f C field_33266 COLON + f C field_33265 COMMA + m (Ljava/lang/String;)Lnet/minecraft/class_2487; method_67315 readCompound + p 0 snbt + m (Lcom/mojang/serialization/DynamicOps;)Lnet/minecraft/class_2522; method_68662 fromOps + p 0 ops + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; method_67312 read + p 1 reader + m (Ljava/lang/String;)Ljava/lang/Object; method_67313 read + p 1 snbt + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2487; method_67310 readCompoundAsArgument + p 0 reader + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; method_67319 readAsArgument + p 1 reader + m ()Lcom/mojang/serialization/DynamicOps; method_68846 getOps + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/class_2520;)Lnet/minecraft/class_2487; method_67311 expectCompound + p 0 reader + p 1 nbtElement + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_53502 method_53502 + p 0 snbt + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_9408;)V + p 1 ops + p 2 parser +c net/minecraft/class_3854 net/minecraft/village/VillagerType + f Ljava/util/Map; field_17078 BIOME_TO_TYPE + f Lnet/minecraft/class_5321; field_17075 SNOW + f Lnet/minecraft/class_5321; field_17074 SAVANNA + f Lnet/minecraft/class_5321; field_17077 TAIGA + f Lnet/minecraft/class_5321; field_17076 SWAMP + f Lnet/minecraft/class_5321; field_17071 DESERT + f Lnet/minecraft/class_9139; field_55976 PACKET_CODEC + f Lnet/minecraft/class_5321; field_17073 PLAINS + f Lnet/minecraft/class_5321; field_17072 JUNGLE + f Lcom/mojang/serialization/Codec; field_55975 CODEC + m (Ljava/util/HashMap;)V method_16932 method_16932 + p 0 map + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_5321; method_16930 forBiome + p 0 biomeEntry + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_66693 of + p 0 id + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_3854; method_66694 registerAndGetDefault + p 0 registry + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_5321;)Lnet/minecraft/class_3854; method_16931 create + p 1 key + p 0 registry +c net/minecraft/class_2523 net/minecraft/block/SugarCaneBlock + f Lnet/minecraft/class_2758; field_11610 AGE + f Lcom/mojang/serialization/MapCodec; field_46467 CODEC + f Lnet/minecraft/class_265; field_11611 SHAPE +c net/minecraft/class_3850 net/minecraft/village/VillagerData + f Lnet/minecraft/class_6880; comp_3520 type + f I comp_3522 level + f [I field_18540 LEVEL_BASE_EXPERIENCE + f Lnet/minecraft/class_6880; comp_3521 profession + f I field_30614 MAX_LEVEL + f I field_30613 MIN_LEVEL + f Lcom/mojang/serialization/Codec; field_24669 CODEC + f Lnet/minecraft/class_9139; field_48345 PACKET_CODEC + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_3850; method_16922 withType + p 1 type + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_3850; method_16921 withProfession + p 1 profession + m (Lnet/minecraft/class_3850;)Lnet/minecraft/class_6880; method_28373 method_28373 + p 0 data + m ()Lnet/minecraft/class_6880; comp_3520 type + m (Lnet/minecraft/class_3850;)Lnet/minecraft/class_6880; method_28374 method_28374 + p 0 data + m ()I comp_3522 level + m (Lnet/minecraft/class_7871$class_7872;Lnet/minecraft/class_5321;)Lnet/minecraft/class_3850; method_66688 withProfession + p 2 professionKey + p 1 registries + m ()Lnet/minecraft/class_6880; comp_3521 profession + m (I)Z method_19196 canLevelUp + p 0 level + m (Lnet/minecraft/class_7871$class_7872;Lnet/minecraft/class_5321;)Lnet/minecraft/class_3850; method_66687 withType + p 2 typeKey + p 1 registries + m (Lnet/minecraft/class_3850;)Ljava/lang/Integer; method_28371 method_28371 + p 0 data + m (I)Lnet/minecraft/class_3850; method_16920 withLevel + p 1 level + m (I)I method_19194 getLowerLevelExperience + p 0 level + m (I)I method_19195 getUpperLevelExperience + p 0 level + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;I)V + p 3 level + p 1 type + p 2 profession + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28372 method_28372 + p 0 instance +c net/minecraft/class_2518 net/minecraft/block/StructureVoidBlock + f Lcom/mojang/serialization/MapCodec; field_46466 CODEC + f Lnet/minecraft/class_265; field_11589 SHAPE +c net/minecraft/class_2519 net/minecraft/nbt/NbtString + c Represents an NBT string. Its type is {@value NbtElement#STRING_TYPE}.\nInstances are immutable. + f Lnet/minecraft/class_4614; field_21045 TYPE + f Lnet/minecraft/class_2519; field_21046 EMPTY + f C field_33245 NULL + f C field_33244 BACKSLASH + f C field_33243 SINGLE_QUOTE + f C field_33242 DOUBLE_QUOTE + f I field_41729 SIZE + f Ljava/lang/String; comp_3831 value + m (Ljava/lang/String;Ljava/lang/StringBuilder;)V method_68657 appendEscaped + p 0 value + p 1 builder + m (Ljava/lang/String;)Ljava/lang/String; method_72226 escapeUnquoted + c {@return the string with quotes and backslashes escaped, without quoting}\n\n@implNote The resulting string is not quoted. Unlike {@link #escape}, this\nescapes both singlequotes and double quotes. + p 0 value + m ()Lnet/minecraft/class_2519; method_10705 copy + m (Ljava/lang/String;Ljava/lang/StringBuilder;)V method_72225 appendEscapedWithoutQuoting + p 1 builder + p 0 value + m (Ljava/lang/String;)V + p 1 value + m (Ljava/lang/String;)Ljava/lang/String; method_10706 escape + c {@return the string quoted with quotes and backslashes escaped}\n\n@implNote If {@code value} contains one of the singlequote or the double quote,\nit tries to use the other quotes to quote the string. If both appear, then the quote\nthat appeared later will be used to quote the string. If neither of them appears, this\nuses a double quote. For example, the string {@code It's a "Tiny Potato"!} will be\nescaped as {@code "It's a \\"Tiny Potato\\"!"}, while the string\n{@code It is a "Tiny Potato"!} will be escaped as {@code 'It is a "Tiny Potato"!'}. + p 0 value + m (Ljava/io/DataInput;)V method_39875 skip + p 0 input + m (Ljava/lang/String;)Lnet/minecraft/class_2519; method_23256 of + c {@return the NBT string from {@code value}} + p 0 value + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/lang/String; comp_3831 value +c net/minecraft/class_2519$1 net/minecraft/nbt/NbtString$1 + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Ljava/lang/String; method_53904 readString + p 1 tracker + p 0 input + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2519; method_23257 read +c net/minecraft/class_2513 net/minecraft/block/StemBlock + f Lnet/minecraft/class_2758; field_11584 AGE + f Lcom/mojang/serialization/MapCodec; field_46462 CODEC + f I field_31255 MAX_AGE + f Lnet/minecraft/class_5321; field_27205 pickBlockItem + f Lnet/minecraft/class_5321; field_46463 attachedStemBlock + f [Lnet/minecraft/class_265; field_11583 SHAPES_BY_AGE + f Lnet/minecraft/class_5321; field_11585 gourdBlock + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54049 method_54049 + p 0 instance + m (I)Lnet/minecraft/class_265; method_66468 method_66468 + p 0 age + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lnet/minecraft/class_4970$class_2251;)V + p 1 gourdBlock + p 2 attachedStemBlock + p 3 pickBlockItem + p 4 settings + m (Lnet/minecraft/class_2513;)Lnet/minecraft/class_5321; method_54051 method_54051 + p 0 block + m (Lnet/minecraft/class_2513;)Lnet/minecraft/class_5321; method_54050 method_54050 + p 0 block + m (Lnet/minecraft/class_2513;)Lnet/minecraft/class_5321; method_54052 method_54052 + p 0 block +c net/minecraft/class_3845 net/minecraft/datafixer/fix/VillagerProfessionFix + m (II)Ljava/lang/String; method_16897 convertProfessionId + p 0 professionId + p 1 careerId + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 2 entity + p 1 outputSchema +c net/minecraft/class_2514 net/minecraft/nbt/AbstractNbtNumber + c Represents an NBT number. + m ()S method_10696 shortValue + c Gets the value as a 16-bit integer.\n\n@return the value as a short + m ()D method_10697 doubleValue + c Gets the value as a 64-bit floating-point number.\n\n@return the value as a double + m ()I method_10701 intValue + c Gets the value as a 32-bit integer.\n\n@return the value as an int + m ()Ljava/lang/Number; method_10702 numberValue + c Gets the value as a generic number.\n\n@return the value as a {@link Number} + m ()F method_10700 floatValue + c Gets the value as a 32-bit floating-point number.\n\n@return the value as a float + m ()B method_10698 byteValue + c Gets the value as an 8-bit integer.\n\n@return the value as a byte + m ()J method_10699 longValue + c Gets the value as a 64-bit integer.\n\n@return the value as a long +c net/minecraft/class_2515 net/minecraft/block/StructureBlock + f Lcom/mojang/serialization/MapCodec; field_46465 CODEC + f Lnet/minecraft/class_2754; field_11586 MODE + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2633;)V method_10703 doAction + p 2 blockEntity + p 1 world +c net/minecraft/class_2516 net/minecraft/nbt/NbtShort + c Represents an NBT 16-bit integer. Its type is {@value NbtElement#SHORT_TYPE}.\nInstances are immutable. + f I field_41728 SIZE + f Lnet/minecraft/class_4614; field_21043 TYPE + f S comp_3822 value + m ()Lnet/minecraft/class_2516; method_10704 copy + m (S)V + p 1 value + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (S)Lnet/minecraft/class_2516; method_23254 of + c {@return the NBT short from {@code value}} + p 0 value + m ()S comp_3822 value +c net/minecraft/class_2516$class_4613 net/minecraft/nbt/NbtShort$Cache + f I field_33233 MIN + f I field_33232 MAX + f [Lnet/minecraft/class_2516; field_21044 VALUES +c net/minecraft/class_2516$1 net/minecraft/nbt/NbtShort$1 + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2516; method_23255 read + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)S method_53903 readShort + p 1 tracker + p 0 input +c net/minecraft/class_3847 net/minecraft/util/thread/TaskQueue + m ()Z method_16911 isEmpty + m (Ljava/lang/Runnable;)Z method_16910 add + m ()Ljava/lang/Runnable; method_16909 poll + m ()I method_34706 getSize +c net/minecraft/class_3847$class_3849 net/minecraft/util/thread/TaskQueue$Simple + f Ljava/util/Queue; field_17045 queue + m (Ljava/util/Queue;)V + p 1 queue +c net/minecraft/class_3847$class_3848 net/minecraft/util/thread/TaskQueue$Prioritized + f [Ljava/util/Queue; field_35032 queue + f Ljava/util/concurrent/atomic/AtomicInteger; field_35033 queueSize + m (I)V + p 1 priorityCount + m (Lnet/minecraft/class_3847$class_3907;)Z method_16913 add +c net/minecraft/class_3847$class_3907 net/minecraft/util/thread/TaskQueue$PrioritizedTask + f Ljava/lang/Runnable; comp_3143 runnable + f I comp_3142 priority + m ()Ljava/lang/Runnable; comp_3143 runnable + m ()I comp_3142 priority + m (ILjava/lang/Runnable;)V + p 2 runnable + p 1 priority +c net/minecraft/class_6099 net/minecraft/unused/packageinfo/PackageInfo6099 +c net/minecraft/class_6098 net/minecraft/unused/packageinfo/PackageInfo6098 +c net/minecraft/class_6095 net/minecraft/unused/packageinfo/PackageInfo6095 +c net/minecraft/class_6094 net/minecraft/unused/packageinfo/PackageInfo6094 +c net/minecraft/class_6097 net/minecraft/unused/packageinfo/PackageInfo6097 +c net/minecraft/class_6096 net/minecraft/unused/packageinfo/PackageInfo6096 +c net/minecraft/class_3820 net/minecraft/structure/rule/BlockStateMatchRuleTest + f Lcom/mojang/serialization/MapCodec; field_25001 CODEC + f Lnet/minecraft/class_2680; field_16870 blockState + m (Lnet/minecraft/class_3820;)Lnet/minecraft/class_2680; method_28971 method_28971 + p 0 ruleTest + m (Lnet/minecraft/class_2680;)V + p 1 blockState +c net/minecraft/class_3821 net/minecraft/structure/processor/StructureProcessorRule + f Lnet/minecraft/class_4995; field_23347 positionPredicate + f Lnet/minecraft/class_8247; field_43333 DEFAULT_BLOCK_ENTITY_MODIFIER + f Lnet/minecraft/class_2680; field_16874 outputState + f Lnet/minecraft/class_8248; field_43334 blockEntityModifier + f Lcom/mojang/serialization/Codec; field_25008 CODEC + f Lnet/minecraft/class_3825; field_16873 locationPredicate + f Lnet/minecraft/class_3825; field_16872 inputPredicate + m (Lnet/minecraft/class_3825;Lnet/minecraft/class_3825;Lnet/minecraft/class_4995;Lnet/minecraft/class_2680;)V + p 1 inputPredicate + p 2 locationPredicate + p 3 positionPredicate + p 4 state + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_16760 getOutputNbt + p 2 nbt + p 1 random + m (Lnet/minecraft/class_3821;)Lnet/minecraft/class_4995; method_28987 method_28987 + p 0 rule + m (Lnet/minecraft/class_3821;)Lnet/minecraft/class_8248; method_28985 method_28985 + p 0 rule + m (Lnet/minecraft/class_3825;Lnet/minecraft/class_3825;Lnet/minecraft/class_4995;Lnet/minecraft/class_2680;Lnet/minecraft/class_8248;)V + p 5 blockEntityModifier + p 4 outputState + p 3 positionPredicate + p 2 locationPredicate + p 1 inputPredicate + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_16762 test + p 6 random + p 5 pivot + p 4 currentPos + p 3 originalPos + p 2 currentState + p 1 input + m (Lnet/minecraft/class_3821;)Lnet/minecraft/class_3825; method_28988 method_28988 + p 0 rule + m (Lnet/minecraft/class_3821;)Lnet/minecraft/class_2680; method_28986 method_28986 + p 0 rule + m (Lnet/minecraft/class_3821;)Lnet/minecraft/class_3825; method_28989 method_28989 + p 0 rule + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28984 method_28984 + p 0 instance + m (Lnet/minecraft/class_3825;Lnet/minecraft/class_3825;Lnet/minecraft/class_2680;)V + p 3 state + p 2 locationPredicate + p 1 inputPredicate + m ()Lnet/minecraft/class_2680; method_16763 getOutputState +c net/minecraft/class_3815 net/minecraft/structure/PlainsVillageData + f Lnet/minecraft/class_5321; field_26253 TOWN_CENTERS_KEY + f Lnet/minecraft/class_5321; field_40961 TERMINATORS_KEY + m (Lnet/minecraft/class_7891;)V method_16754 bootstrap + p 0 poolRegisterable +c net/minecraft/class_3816 net/minecraft/structure/pool/StructurePoolElementType + f Lnet/minecraft/class_3816; field_24016 LEGACY_SINGLE_POOL_ELEMENT + f Lnet/minecraft/class_3816; field_16974 LIST_POOL_ELEMENT + f Lnet/minecraft/class_3816; field_16972 EMPTY_POOL_ELEMENT + f Lnet/minecraft/class_3816; field_16973 SINGLE_POOL_ELEMENT + f Lnet/minecraft/class_3816; field_16971 FEATURE_POOL_ELEMENT + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_3816; method_28885 register + p 1 codec + p 0 id +c net/minecraft/class_3818 net/minecraft/structure/rule/AlwaysTrueRuleTest + f Lcom/mojang/serialization/MapCodec; field_24994 CODEC + f Lnet/minecraft/class_3818; field_16868 INSTANCE +c net/minecraft/class_3813 net/minecraft/structure/VillageGenerator + m (Lnet/minecraft/class_7891;)V method_27221 bootstrap + p 0 poolRegisterable +c net/minecraft/class_6091 net/minecraft/unused/packageinfo/PackageInfo6091 +c net/minecraft/class_6090 net/minecraft/unused/packageinfo/PackageInfo6090 +c net/minecraft/class_6093 net/minecraft/unused/packageinfo/PackageInfo6093 +c net/minecraft/class_6092 net/minecraft/unused/packageinfo/PackageInfo6092 +c net/minecraft/class_3819 net/minecraft/structure/rule/BlockMatchRuleTest + f Lnet/minecraft/class_2248; field_16869 block + f Lcom/mojang/serialization/MapCodec; field_24999 CODEC + m (Lnet/minecraft/class_2248;)V + p 1 block + m (Lnet/minecraft/class_3819;)Lnet/minecraft/class_2248; method_28969 method_28969 + p 0 ruleTest +c net/minecraft/class_3830 net/minecraft/block/SweetBerryBushBlock + f Lnet/minecraft/class_2758; field_17000 AGE + f Lnet/minecraft/class_265; field_17001 SMALL_SHAPE + f Lnet/minecraft/class_265; field_17002 LARGE_SHAPE + f F field_31260 MIN_MOVEMENT_FOR_DAMAGE + f I field_31259 MAX_AGE + f Lcom/mojang/serialization/MapCodec; field_46468 CODEC + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_73119 method_73119 + p 2 stack + p 1 worldx +c net/minecraft/class_2500 net/minecraft/block/SpreadableBlock + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_10614 canSurvive + p 0 state + p 1 world + p 2 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_10613 canSpread + p 0 state + p 1 world + p 2 pos +c net/minecraft/class_2501 net/minecraft/nbt/NbtLongArray + c Represents an NBT 64-bit integer array. This object is mutable and backed by\n{@code long[]}. Its type is {@value NbtElement#LONG_ARRAY_TYPE}. Like Java arrays,\naccessing indices that are out of bounds will throw {@link ArrayIndexOutOfBoundsException}.\nThe backing array can be obtained via {@link #getLongArray()}. + f [J field_11552 value + f Lnet/minecraft/class_4614; field_21040 TYPE + f I field_41726 SIZE + m (I)Lnet/minecraft/class_2503; method_10616 method_10534 + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ([J)V + p 1 value + m (I)Lnet/minecraft/class_2503; method_17811 method_10536 + m ()Lnet/minecraft/class_2501; method_10618 copy + m ()[J method_10615 getLongArray + c {@return the underlying long array}\n\n@apiNote This does not copy the array, so modifications to the returned array\nalso apply to this NBT long array. +c net/minecraft/class_2501$1 net/minecraft/nbt/NbtLongArray$1 + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)[J method_53896 readLongArray + p 0 input + p 1 tracker + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2501; method_23250 read +c net/minecraft/class_3826 net/minecraft/structure/processor/RuleStructureProcessor + f Lcom/mojang/serialization/MapCodec; field_25011 CODEC + f Lcom/google/common/collect/ImmutableList; field_16881 rules + m (Ljava/util/List;)V + p 1 rules + m (Lnet/minecraft/class_3826;)Ljava/util/List; method_28996 method_28996 + p 0 processor +c net/minecraft/class_3827 net/minecraft/structure/rule/RuleTestType + f Lnet/minecraft/class_3827; field_16984 RANDOM_BLOCKSTATE_MATCH + f Lnet/minecraft/class_3827; field_16985 BLOCKSTATE_MATCH + f Lnet/minecraft/class_3827; field_16982 ALWAYS_TRUE + f Lnet/minecraft/class_3827; field_16983 TAG_MATCH + f Lnet/minecraft/class_3827; field_16980 RANDOM_BLOCK_MATCH + f Lnet/minecraft/class_3827; field_16981 BLOCK_MATCH + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_3827; method_16821 register + p 0 id + p 1 codec +c net/minecraft/class_3828 net/minecraft/structure/processor/StructureProcessorType + f Lcom/mojang/serialization/Codec; field_25877 REGISTRY_CODEC + f Lcom/mojang/serialization/Codec; field_25876 PROCESSORS_CODEC + f Lcom/mojang/serialization/Codec; field_25013 CODEC + f Lcom/mojang/serialization/Codec; field_26663 LIST_CODEC + f Lnet/minecraft/class_3828; field_25620 LAVA_SUBMERGED_BLOCK + f Lnet/minecraft/class_3828; field_43335 CAPPED + f Lnet/minecraft/class_3828; field_16987 NOP + f Lnet/minecraft/class_3828; field_16989 GRAVITY + f Lnet/minecraft/class_3828; field_16988 BLOCK_ROT + f Lnet/minecraft/class_3828; field_16986 BLOCK_IGNORE + f Lnet/minecraft/class_3828; field_33773 PROTECTED_BLOCKS + f Lnet/minecraft/class_3828; field_16991 JIGSAW_REPLACEMENT + f Lnet/minecraft/class_3828; field_16990 RULE + f Lnet/minecraft/class_3828; field_24045 BLACKSTONE_REPLACE + f Lnet/minecraft/class_3828; field_24044 BLOCK_AGE + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_3828; method_16822 register + p 1 codec + p 0 id +c net/minecraft/class_3829 net/minecraft/util/Clearable + c Represents an object which can be cleared. + m ()V method_5448 clear +c net/minecraft/class_3822 net/minecraft/structure/processor/NopStructureProcessor + f Lnet/minecraft/class_3822; field_16876 INSTANCE + f Lcom/mojang/serialization/MapCodec; field_25005 CODEC +c net/minecraft/class_3823 net/minecraft/structure/rule/RandomBlockStateMatchRuleTest + f F field_16877 probability + f Lnet/minecraft/class_2680; field_16878 blockState + f Lcom/mojang/serialization/MapCodec; field_25010 CODEC + m (Lnet/minecraft/class_3823;)Ljava/lang/Float; method_28994 method_28994 + p 0 ruleTest + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28993 method_28993 + p 0 instance + m (Lnet/minecraft/class_3823;)Lnet/minecraft/class_2680; method_28995 method_28995 + p 0 ruleTest + m (Lnet/minecraft/class_2680;F)V + p 2 probability + p 1 blockState +c net/minecraft/class_3824 net/minecraft/structure/rule/RandomBlockMatchRuleTest + f Lnet/minecraft/class_2248; field_16880 block + f Lcom/mojang/serialization/MapCodec; field_25009 CODEC + f F field_16879 probability + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28990 method_28990 + p 0 instance + m (Lnet/minecraft/class_3824;)Ljava/lang/Float; method_28991 method_28991 + p 0 ruleTest + m (Lnet/minecraft/class_3824;)Lnet/minecraft/class_2248; method_28992 method_28992 + p 0 ruleTest + m (Lnet/minecraft/class_2248;F)V + p 1 block + p 2 probability +c net/minecraft/class_3825 net/minecraft/structure/rule/RuleTest + c Rule tests are used in structure generation to check if a block state matches some condition. + f Lcom/mojang/serialization/Codec; field_25012 TYPE_CODEC + m ()Lnet/minecraft/class_3827; method_16766 getType + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_5819;)Z method_16768 test + p 1 state + p 2 random +c net/minecraft/class_6077 net/minecraft/unused/packageinfo/PackageInfo6077 +c net/minecraft/class_6076 net/minecraft/unused/packageinfo/PackageInfo6076 +c net/minecraft/class_6078 net/minecraft/unused/packageinfo/PackageInfo6078 +c net/minecraft/class_6073 net/minecraft/unused/packageinfo/PackageInfo6073 +c net/minecraft/class_6072 net/minecraft/unused/packageinfo/PackageInfo6072 +c net/minecraft/class_6075 net/minecraft/entity/player/HungerConstants + c Some constants on hunger values.\n\n@see HungerManager + f I field_30704 FULL_FOOD_LEVEL + c The maximum food level ({@value}) allowed in a hunger manager. + f I field_30711 SLOW_HEALING_FOOD_LEVEL + c The minimum food level ({@value}) required for the slow-healing mechanism. + f I field_30710 FAST_HEALING_INTERVAL + c When the food tick is a multiple of {@value}, the hunger manager may perform\nfast healing logic. + f I field_30713 STARVING_FOOD_LEVEL + c The maximum food level ({@value}) permitted for the starving mechanism to run. + f I field_30712 EXHAUSTION_PER_HITPOINT + c The exhaustion from healing each hitpoint ({@value}), used for both fast and\nslow healing mechanisms. + f F field_30708 EXHAUSTION_UNIT + c A value {@value} that when the exhaustion reaches, the exhaustion minuses itself\nby to reduce the saturation or food level. + f F field_30706 INITIAL_SATURATION_LEVEL + c The initial saturation level ({@value}) for a newly created hunger manager. + f I field_30709 SLOW_HEALING_STARVING_INTERVAL + c When the food tick is a multiple of {@value}, the hunger manager may perform\nslow healing or starving logic. + m (IF)F method_59683 calculateSaturation + p 0 nutrition + p 1 saturationModifier +c net/minecraft/class_6074 net/minecraft/unused/packageinfo/PackageInfo6074 +c net/minecraft/class_6071 net/minecraft/unused/packageinfo/PackageInfo6071 +c net/minecraft/class_6070 net/minecraft/unused/packageinfo/PackageInfo6070 +c net/minecraft/class_6088 net/minecraft/world/WorldEvents + c Constants of World Event IDs.\n

World Events are used to trigger things on the client from the server side.\nMost commonly, playing sound events or spawning particles.\n

Some events have an extra data integer sent alongside them.\n
Some events are global, meaning they will be sent to every player regardless of their position.\n

Events are sent from the server to the client using {@link net.minecraft.network.packet.s2c.play.WorldEventS2CPacket WorldEventS2CPacket},\nreceived on the client by {@link net.minecraft.client.network.ClientPlayNetworkHandler#onWorldEvent(net.minecraft.network.packet.s2c.play.WorldEventS2CPacket) ClientPlayNetworkHandler#onWorldEvent},\nsynced by {@link net.minecraft.client.world.ClientWorld#syncWorldEvent(net.minecraft.entity.player.PlayerEntity, int, net.minecraft.util.math.BlockPos, int) ClientWorld#syncWorldEvent} and\n{@link net.minecraft.client.world.ClientWorld#syncGlobalEvent(int, net.minecraft.util.math.BlockPos, int) ClientWorld#syncGlobalEvent} (for regular and global events respectively), and\nfinally processed by {@link net.minecraft.client.world.WorldEventHandler#processWorldEvent(int, net.minecraft.util.math.BlockPos, int) WorldRenderer#processWorldEvent} and\n{@link net.minecraft.client.world.WorldEventHandler#processGlobalEvent(int, net.minecraft.util.math.BlockPos, int) WorldRenderer#processGlobalEvent} (for regular and global events respectively). + f I field_31180 WITHER_BREAKS_BLOCK + c A wither breaks a block.\n
Plays the wither breaking block sound event.\n

Called by {@link net.minecraft.entity.boss.WitherEntity#mobTick() WitherEntity#mobTick} + f I field_31160 DISPENSER_LAUNCHES_PROJECTILE + c A dispenser launches a projectile.\n
Plays the dispenser launch sound event.\n

Called by {@link net.minecraft.block.dispenser.ProjectileDispenserBehavior#playSound(net.minecraft.util.math.BlockPointer) ProjectileDispenserBehavior#playSound} + f I field_31152 WET_SPONGE_DRIES_OUT + c A wet sponge dries out in an ultrawarm dimension.\n
Spawns cloud particles.\n

Called by {@link net.minecraft.block.WetSpongeBlock#onBlockAdded(net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState, boolean) WetSpongeBlock#onBlockAdded} + f I field_42760 JUKEBOX_STARTS_PLAYING + c A jukebox starts playing a music disc.\n
Plays the appropriate music.\n

The raw ID of the music disc item must be supplied as extra data.\n

Called by {@link net.minecraft.block.entity.JukeboxBlockEntity#startPlaying() JukeboxBlockEntity#startPlaying} + f I field_31140 DISPENSER_DISPENSES + c A dispenser dispenses an item.\n
Plays the dispensing sound event.\n

Called by {@link net.minecraft.block.dispenser.BoatDispenserBehavior#playSound(net.minecraft.util.math.BlockPointer) BoatDispenserBehavior#playSound},\n{@link net.minecraft.block.dispenser.FallibleItemDispenserBehavior#playSound(net.minecraft.util.math.BlockPointer) FallibleItemDispenserBehavior#playSound},\n{@link net.minecraft.block.dispenser.ItemDispenserBehavior#playSound(net.minecraft.util.math.BlockPointer) ItemDispenserBehavior#playSound},\nand {@link net.minecraft.item.MinecartItem#DISPENSER_BEHAVIOR MinecartItem#DISPENSER_BEHAVIOR} + f I field_31132 SMITHING_TABLE_USED + c A smithing table is used.\n
Plays the smithing table used sound event.\n

Called by {@link net.minecraft.screen.SmithingScreenHandler#onTakeOutput(net.minecraft.entity.player.PlayerEntity, net.minecraft.item.ItemStack) SmithingScreenHandler#onTakeOutput} + f I field_31176 BLAZE_SHOOTS + c A blaze shoots a fireball or a fire charge is shot by a dispenser.\n
Plays the blaze shoot sound event.\n

Called by {@link net.minecraft.entity.mob.BlazeEntity.ShootFireballGoal#tick() BlazeEntity.ShootFireballGoal#tick},\nand {@link net.minecraft.block.dispenser.DispenserBehavior DispenserBehavior} + f I field_31120 TRAVEL_THROUGH_PORTAL + c A portal is traveled through.\n
Plays the portal travel sound event directly through the client's sound manager.\n

Called by {@link net.minecraft.server.network.ServerPlayerEntity#moveToWorld(net.minecraft.server.world.ServerWorld) ServerPlayerEntity#moveToWorld} + f I field_31156 BLOCK_WAXED + c A block is waxed.\n
Plays the block waxing sound event and spawns waxing particles.\n

Called by {@link net.minecraft.item.HoneycombItem#useOnBlock(net.minecraft.item.ItemUsageContext) HoneycombItem#useOnBlock} + f I field_31144 BLOCK_BROKEN + c A block is broken.\n
Plays the appropriate block breaking sound event and spawns block breaking particles.\n

The raw ID of the block must be supplied as extra data.\n

Called by {@link net.minecraft.block.Block#spawnBreakParticles(net.minecraft.world.World, net.minecraft.entity.player.PlayerEntity, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState) Block#spawnBreakParticles},\n{@link net.minecraft.block.TallPlantBlock#onBreakInCreative(net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState, net.minecraft.entity.player.PlayerEntity) TallPlantBlock#onBreakInCreative},\n{@link net.minecraft.entity.ai.goal.BreakDoorGoal#tick() BreakDoorGoal#tick},\n{@link net.minecraft.block.CarvedPumpkinBlock#trySpawnEntity(net.minecraft.world.World, net.minecraft.util.math.BlockPos) CarvedPumpkinBlock#trySpawnEntity},\n{@link net.minecraft.entity.ai.goal.EatGrassGoal#tick() EatGrassGoal#tick},\n{@link net.minecraft.entity.passive.FoxEntity#tick() FoxEntity#tick},\n{@link net.minecraft.block.PowderSnowBlock#tryDrainFluid(net.minecraft.entity.player.PlayerEntity, net.minecraft.world.WorldAccess, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState) PowderSnowBlock#tryDrainFluid},\n{@link net.minecraft.entity.passive.RabbitEntity.EatCarrotCropGoal#tick() RabbitEntity.EatCarrotCropGoal#tick},\n{@link net.minecraft.block.SpongeBlock#update(net.minecraft.world.World, net.minecraft.util.math.BlockPos) SpongeBlock#update},\n{@link net.minecraft.block.TurtleEggBlock#breakEgg(net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState) TurtleEggBlock#breakEgg},\n{@link net.minecraft.block.TurtleEggBlock#randomTick(net.minecraft.block.BlockState, net.minecraft.server.world.ServerWorld, net.minecraft.util.math.BlockPos, net.minecraft.util.math.random.AbstractRandom) TurtleEggBlock#randomTick},\n{@link net.minecraft.entity.passive.TurtleEntity#tickMovement() TurtleEntity#tickMovement},\n{@link net.minecraft.block.WitherSkullBlock#onPlaced(net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.entity.SkullBlockEntity) WitherSkullBlock#onPlaced},\nand {@link net.minecraft.world.World#breakBlock(net.minecraft.util.math.BlockPos, boolean, net.minecraft.entity.Entity, int) World#breakBlock} + f I field_31136 SKELETON_CONVERTS_TO_STRAY + c A skeleton converts into a stray.\n
Plays the skeleton convert to stray sound event.\n

Called by {@link net.minecraft.entity.mob.SkeletonEntity#convertToStray() SkeletonEntity#convertToStray} + f I field_50165 OMINOUS_TRIAL_SPAWNER_DETECTS_PLAYER + c An ominous trial spawner detects survival-mode players.\n
Plays the detection sound and spawns detection particles.\n

The extra data denotes the number of players.\n

Called by {@link net.minecraft.block.spawner.TrialSpawnerData#updatePlayers}. + f I field_31116 ENDER_DRAGON_DIES + c An ender dragon dies.\n
Plays the ender dragon death sound event.\n

This is a global event.\n

Called by {@link net.minecraft.entity.boss.dragon.EnderDragonEntity#updatePostDeath() EnderDragonEntity#updatePostDeath} + f I field_31128 ZOMBIE_CONVERTS_TO_DROWNED + c A zombie converts into a drowned.\n
Plays the zombie convert to drowned sound event.\n

Called by {@link net.minecraft.entity.mob.ZombieEntity#convertInWater() ZombieEntity#convertInWater} + f I field_46806 CRAFTER_FAILS + c A crafter fails to craft.\n
Plays the crafter fail sound event.\n

Called by {@link net.minecraft.block.CrafterBlock#craft(net.minecraft.block.BlockState, net.minecraft.server.world.ServerWorld, net.minecraft.util.math.BlockPos) CrafterBlock#craft} + f I field_47342 TRIAL_SPAWNER_DETECTS_PLAYER + c A trial spawner detects survival-mode players.\n
Plays the detection sound and spawns detection particles.\n

The extra data denotes the number of players.\n

Called by {@link net.minecraft.block.spawner.TrialSpawnerData#updatePlayers}. + f I field_47838 TURTLE_EGG_PLACED + c A turtle egg is placed on sand.\n
Spawns happy villager particles.\n

The amount of particles to spawn must be supplied as extra data.\n

Called by {@link net.minecraft.block.TurtleEggBlock#onBlockAdded(net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState, boolean) TurtleEggBlock#onBlockAdded} + f I field_43238 SNIFFER_EGG_CRACKS + c A sniffer egg cracks.\n
Spawns between 1 and 3 egg crack particles.\n

If a {@code 1} is passed as extra data, between 3 and 6 egg crack particles are spawned instead.\n

Called by {@link net.minecraft.block.SnifferEggBlock#onBlockAdded(net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState, boolean) SnifferEggBlock#onBlockAdded} + f I field_42759 BLOCK_FINISHED_BRUSHING + c A block has been completely brushed.\n
Spawns block break particles and plays the block's brushing complete sound.\n

The block's raw ID must be supplied as extra data.\n

Called by {@link net.minecraft.block.entity.BrushableBlockEntity#finishBrushing(net.minecraft.entity.player.PlayerEntity) BrushableBlockEntity#finishBrushing} + f I field_37586 SCULK_CHARGE + c Sculk releases a charge.\n
Spawns sculk charge particles.\n

Called by {@link net.minecraft.block.entity.SculkSpreadManager#tick(net.minecraft.world.WorldAccess, net.minecraft.util.math.BlockPos, net.minecraft.util.math.random.Random, boolean) SculkSpreadManager#tick} + f I field_31181 WITHER_SPAWNS + c A wither is spawned.\n
Plays the wither spawn sound event.\n

This is a global event.\n

Called by {@link net.minecraft.entity.boss.WitherEntity#mobTick() WitherEntity#mobTick} + f I field_31141 END_PORTAL_FRAME_FILLED + c An end portal frame is filled with an eye of ender.\n
Plays the end portal frame filled sound event and spawns smoke particles.\n

Called by {@link net.minecraft.item.EnderEyeItem#useOnBlock(net.minecraft.item.ItemUsageContext) EnderEyeItem#useOnBlock} + f I field_31173 GHAST_WARNS + c A ghast warns its victim.\n
Plays the ghast warn sound event.\n

Called by {@link net.minecraft.entity.mob.GhastEntity.ShootFireballGoal#tick() GhastEntity.ShootFireballGoal#tick} + f I field_31121 CHORUS_FLOWER_GROWS + c A chorus flower grows.\n
Plays the chorus flower growing sound event.\n

Called by {@link net.minecraft.block.ChorusFlowerBlock#grow(net.minecraft.world.World, net.minecraft.util.math.BlockPos, int) ChorusFlowerBlock#grow} + f I field_31153 END_GATEWAY_SPAWNS + c An end gateway spawns.\n
Plays the end gateway spawn sound event and spawns an explosion emitter particle.\n

Called by {@link net.minecraft.entity.boss.dragon.EnderDragonFight#generateEndGateway(net.minecraft.util.math.BlockPos) EnderDragonFight#generateEndGateway} + f I field_31145 SPLASH_POTION_SPLASHED + c A non-instant splash potion is splashed.\n
Plays the splash potion breaking sound event and spawns splash potion particles.\n

The hex color of the potion must be supplied as extra data.\n

For instant effects such as Instant Health and Instant Damage, use {@link #INSTANT_SPLASH_POTION_SPLASHED}.\n

Called by {@link net.minecraft.entity.projectile.thrown.ExperienceBottleEntity#onCollision(net.minecraft.util.hit.HitResult) ExperienceBottleEntity#onCollision},\nand {@link net.minecraft.entity.projectile.thrown.PotionEntity#onCollision(net.minecraft.util.hit.HitResult) PotionEntity#onCollision} + f I field_31133 POINTED_DRIPSTONE_LANDS + c A pointed dripstone lands after falling.\n
Plays the pointed dripstone landing sound event.\n

Called by {@link net.minecraft.block.PointedDripstoneBlock#onDestroyedOnLanding(net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.entity.FallingBlockEntity) PointedDripstoneBlock#onDestroyedOnLanding} + f I field_31177 ZOMBIE_ATTACKS_WOODEN_DOOR + c A zombie attacks a wooden door.\n
Plays the zombie attacking wooden door sound event.\n

Called by {@link net.minecraft.entity.ai.goal.BreakDoorGoal#tick() BreakDoorGoal#tick} + f I field_31157 WAX_REMOVED + c Wax is removed from a block.\n
Spawns wax removal particles.\n

Called by {@link net.minecraft.item.AxeItem#useOnBlock(net.minecraft.item.ItemUsageContext) AxeItem#useOnBlock} + f I field_50168 SMASH_ATTACK + c A mace is used to execute a smash attack.\n
Spawns dust pillar particles.\n

The amount of particles to spawn must be supplied as extra data.\n

Called by {@link net.minecraft.item.MaceItem#knockbackNearbyEntities} + f I field_31117 ANVIL_DESTROYED + c An anvil is destroyed from damage.\n
Plays the anvil destroyed sound event.\n

Called by {@link net.minecraft.block.AnvilBlock#onDestroyedOnLanding(net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.entity.FallingBlockEntity) AnvilBlock#onDestroyedOnLanding},\nand {@link net.minecraft.screen.AnvilScreenHandler#onTakeOutput(net.minecraft.entity.player.PlayerEntity, net.minecraft.item.ItemStack) AnvilScreenHandler#onTakeOutput} + f I field_31149 DRAGON_BREATH_CLOUD_SPAWNS + c A dragon breath cloud spawns.\n
Plays the dragon fireball explode sound event and spawns dragon breath particles.\n

Called by {@link net.minecraft.entity.projectile.DragonFireballEntity#onCollision(net.minecraft.util.hit.HitResult) DragonFireballEntity#onCollision} + f I field_31137 COMPOSTER_USED + c An item is composted in a composter.\n
Plays the appropriate composting sound event and spawns composter particles.\n

A {@code 1} should be passed as extra data if the use of the composter added to the level of compost inside.\n

Called by {@link net.minecraft.block.ComposterBlock#onUse(net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.entity.player.PlayerEntity, net.minecraft.util.hit.BlockHitResult) ComposterBlock#onUse},\n{@link net.minecraft.block.ComposterBlock.ComposterInventory#markDirty() ComposterBlock.ComposterInventory#markDirty},\nand {@link net.minecraft.entity.ai.brain.task.FarmerWorkTask#syncComposterEvent(net.minecraft.server.world.ServerWorld, net.minecraft.block.BlockState, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState) FarmerWorkTask#syncComposterEvent} + f I field_31129 HUSK_CONVERTS_TO_ZOMBIE + c A husk converts into a zombie.\n
Plays the husk convert to zombie sound event.\n

Called by {@link net.minecraft.entity.mob.HuskEntity#convertInWater() HuskEntity#convertInWater} + f I field_48854 VAULT_EJECTS_ITEM + c A vault ejects loot.\n
Spawns ejection particles.\n

Called by {@link net.minecraft.block.enums.VaultState#ejectItem}. + f I field_50164 COBWEB_WEAVED + c A cobweb is placed by the weaving effect.\n
Spawns poof particles and plays the cobweb place sound.\n

Called by {@link net.minecraft.entity.effect.WeavingStatusEffect#tryPlaceCobweb}. + f I field_46807 CRAFTER_SHOOTS + c A crafter shoots out an item.\n
Shoots white smoke particles.\n

The ordinal direction the crafter is facing must be supplied as extra data.\n

Called by {@link net.minecraft.block.CrafterBlock#transferOrSpawnStack(net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.entity.CrafterBlockEntity, net.minecraft.item.ItemStack, net.minecraft.block.BlockState) CrafterBlock#transferOrSpawnStack} + f I field_47341 TRIAL_SPAWNER_SPAWNS_MOB_AT_SPAWN_POS + c A trial spawner spawns a mob. Triggered at the position of the spawned mob.\n
Plays the spawn sound and spawns mob spawn particles.\n

Called by {@link net.minecraft.block.spawner.TrialSpawnerLogic#trySpawnMob}. + f I field_47837 BEE_FERTILIZES_PLANT + c A plant is fertilized by a bee.\n
Spawns happy villager particles.\n

The amount of particles to spawn must be supplied as extra data.\n

Called by {@link net.minecraft.entity.passive.BeeEntity.GrowCropsGoal#tick() BeeEntity.GrowCropsGoal#tick} + f I field_48853 VAULT_DEACTIVATES + c A vault is deactivated.\n
Plays the deactivate sound and spawns small flame particles.\n

Called by {@link net.minecraft.block.enums.VaultState#INACTIVE}. + f I field_31150 INSTANT_SPLASH_POTION_SPLASHED + c An instant splash potion is splashed.\n
Plays the splash potion breaking sound event and spawns instant splash potion particles.\n

The hex color of the potion must be supplied as extra data.\n

For non-instant effects, use {@link #SPLASH_POTION_SPLASHED}.\n

Called by {@link net.minecraft.entity.projectile.thrown.PotionEntity#onCollision(net.minecraft.util.hit.HitResult) PotionEntity#onCollision} + f I field_31182 WITHER_SHOOTS + c A wither shoots a wither skull.\n
Plays the wither shoot sound event.\n

Called by {@link net.minecraft.entity.boss.WitherEntity#shootSkullAt(int, double, double, double, boolean) WitherEntity#shootSkullAt} + f I field_31130 GRINDSTONE_USED + c A grindstone is used.\n
Plays the grindstone used sound event.\n

Called by {@link net.minecraft.screen.GrindstoneScreenHandler GrindstoneScreenHandler} + f I field_31174 GHAST_SHOOTS + c A ghast shoots a fireball.\n
Plays the ghast shoot sound event.\n

Called by {@link net.minecraft.entity.mob.GhastEntity.ShootFireballGoal#tick() GhastEntity.ShootFireballGoal#tick} + f I field_31162 FIREWORK_ROCKET_SHOOTS + c A firework rocket is shot.\n
Plays the firework shoot sound event.\n

Called by {@link net.minecraft.block.dispenser.DispenserBehavior DispenserBehavior} + f I field_31154 ENDER_DRAGON_RESURRECTED + c The ender dragon is being resurrected.\n
Plays the ender dragon growl sound event.\n

Called by {@link net.minecraft.entity.boss.dragon.EnderDragonSpawnState#run(net.minecraft.server.world.ServerWorld, net.minecraft.entity.boss.dragon.EnderDragonFight, java.util.List, int, net.minecraft.util.math.BlockPos) EnderDragonSpawnState#run} + f I field_31142 POINTED_DRIPSTONE_DRIPS + c A pointed dripstone drips fluid particles.\n
Spawns dripping fluid particles.\n

Called by {@link net.minecraft.block.PointedDripstoneBlock#dripTick(net.minecraft.block.BlockState, net.minecraft.server.world.ServerWorld, net.minecraft.util.math.BlockPos, float) PointedDripstoneBlock#dripTick} + f I field_31134 POINTED_DRIPSTONE_DRIPS_LAVA_INTO_CAULDRON + c A pointed dripstone drips lava into a cauldron.\n
Plays the pointed dripstone dripping lava into cauldron sound event.\n

Called by {@link net.minecraft.block.CauldronBlock#fillFromDripstone(net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.fluid.Fluid) CauldronBlock#fillFromDripstone} + f I field_31178 ZOMBIE_ATTACKS_IRON_DOOR + c A zombie attacks an iron door.\n
Plays the zombie attacking iron door sound event.\n
Goes unused. + f I field_31114 ZOMBIE_INFECTS_VILLAGER + c A zombie infects a villager.\n
Plays the zombie infect villager sound event.\n

Called by {@link net.minecraft.entity.mob.ZombieEntity#onKilledOther(net.minecraft.server.world.ServerWorld, net.minecraft.entity.LivingEntity) ZombieEntity#onKilledOther} + f I field_31122 CHORUS_FLOWER_DIES + c A chorus flower dies.\n
Plays the chorus flower death sound event.\n

Called by {@link net.minecraft.block.ChorusFlowerBlock#die(net.minecraft.world.World, net.minecraft.util.math.BlockPos) ChorusFlowerBlock#die} + f I field_31158 BLOCK_SCRAPED + c A block is scraped.\n
Spawns scraping particles.\n

Called by {@link net.minecraft.item.AxeItem#useOnBlock(net.minecraft.item.ItemUsageContext) AxeItem#useOnBlock} + f I field_50167 OMINOUS_ITEM_SPAWNER_SPAWNS_ITEM + c An ominous item spawner spawns an item.\n
Plays the item spawn sound and spawns mob spawn particles.\n

Called by {@link net.minecraft.entity.OminousItemSpawnerEntity#spawnItem} + f I field_31146 EYE_OF_ENDER_BREAKS + c A thrown eye of ender breaks.\n
Spawns several particles.\n

Called by {@link net.minecraft.entity.EyeOfEnderEntity#tick() EyeOfEnderEntity#tick} + f I field_31138 LAVA_EXTINGUISHED + c Lava is extinguished.\n
Plays the lava extinguish sound event and spawns large smoke particles.\n

Called by {@link net.minecraft.block.FluidBlock#playExtinguishSound(net.minecraft.world.WorldAccess, net.minecraft.util.math.BlockPos) FluidBlock#playExtinguishSound},\nand {@link net.minecraft.fluid.LavaFluid#playExtinguishEvent(net.minecraft.world.WorldAccess, net.minecraft.util.math.BlockPos) LavaFluid#playExtinguishEvent} + f I field_31118 ANVIL_USED + c An anvil is used.\n
Plays the anvil used sound event.\n

Called by {@link net.minecraft.screen.AnvilScreenHandler#onTakeOutput(net.minecraft.entity.player.PlayerEntity, net.minecraft.item.ItemStack) AnvilScreenHandler#onTakeOutput} + f I field_31126 END_PORTAL_OPENED + c An end portal is opened.\n
Plays the end portal spawn sound event.\n

This is a global event.\n

Called by {@link net.minecraft.item.EnderEyeItem#useOnBlock(net.minecraft.item.ItemUsageContext) EnderEyeItem#useOnBlock} + f I field_33511 BONE_MEAL_USED + c Bone meal is used.\n
Plays the bone meal item used sound event and spawns happy villager particles.\n

The amount of particles to spawn must be supplied as extra data.\n

Called by {@link net.minecraft.item.BoneMealItem#useOnBlock(net.minecraft.item.ItemUsageContext) BoneMealItem#useOnBlock},\nan anonymous class in {@link net.minecraft.block.dispenser.DispenserBehavior#registerDefaults() DispenserBehavior#registerDefaults},\nand {@link net.minecraft.entity.ai.brain.task.BoneMealTask#keepRunning(net.minecraft.server.world.ServerWorld, net.minecraft.entity.passive.VillagerEntity, long) BoneMealTask#keepRunning} + f I field_47340 TRIAL_SPAWNER_SPAWNS_MOB + c A trial spawner spawns a mob. Triggered at the position of the spawner.\n
Spawns mob spawn particles.\n

Called by {@link net.minecraft.block.spawner.TrialSpawnerLogic#trySpawnMob}. + f I field_48852 VAULT_ACTIVATES + c A vault is activated.\n
Plays the activate sound and spawns smoke and small flame particles.\n

Called by {@link net.minecraft.block.enums.VaultState#ACTIVE}. + f I field_31183 BAT_TAKES_OFF + c A bat takes off.\n
Plays the bat take off sound event.\n

Called by {@link net.minecraft.entity.passive.BatEntity#mobTick() BatEntity#mobTick} + f I field_31151 ENDER_DRAGON_BREAKS_BLOCK + c An ender dragon breaks a block.\n
Spawns an explosion particle.\n

Called by {@link net.minecraft.entity.boss.dragon.EnderDragonEntity#destroyBlocks(net.minecraft.util.math.Box) EnderDragonEntity#destroyBlocks} + f I field_42761 JUKEBOX_STOPS_PLAYING + c A jukebox stops playing a music disc.\n
Stops any music currently playing.\n

Called by {@link net.minecraft.block.entity.JukeboxBlockEntity#stopPlaying() JukeboxBlockEntity#stopPlaying} + f I field_31143 DISPENSER_ACTIVATED + c A dispenser is activated.\n
Shoots smoke particles.\n

The ordinal direction the dispenser is facing must be supplied as extra data.\n

Called by {@link net.minecraft.block.dispenser.ItemDispenserBehavior#spawnParticles(net.minecraft.util.math.BlockPointer, net.minecraft.util.math.Direction) ItemDispenserBehavior#spawnParticles} + f I field_38228 SCULK_SHRIEKS + c A sculk shrieker shrieks.\n
Spawns shriek particles and plays the shriek sound event.\n

Called by {@link net.minecraft.block.entity.SculkShriekerBlockEntity#shriek(net.minecraft.server.world.ServerWorld, net.minecraft.entity.Entity) SculkShriekerBlockEntity#shriek} + f I field_31131 LECTERN_BOOK_PAGE_TURNED + c A page is turned in a book on a lectern.\n
Plays the page turn sound event.\n

Called by {@link net.minecraft.block.LecternBlock#setPowered(net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState) LecternBlock#setPowered} + f I field_31175 ENDER_DRAGON_SHOOTS + c An ender dragon shoots a fireball.\n
Plays the ender dragon shoot sound event.\n

Called by {@link net.minecraft.entity.boss.dragon.phase.StrafePlayerPhase#serverTick() StrafePlayerPhase#serverTick} + f I field_31123 BREWING_STAND_BREWS + c A brewing stand brews.\n
Plays the brewing stand brewing sound event.\n

Called by {@link net.minecraft.block.entity.BrewingStandBlockEntity#craft(net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.util.collection.DefaultedList) BrewingStandBlockEntity#craft} + f I field_31167 FIRE_EXTINGUISHED + c Fire is extinguished.\n
Plays the appropriate fire extinguish sound event.\n

A {@code 1} should be supplied as extra data if an entity was extinguished, and {@code 0} for a block.\n

Called by {@link net.minecraft.block.AbstractFireBlock#onBreak(net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState, net.minecraft.entity.player.PlayerEntity) AbstractFireBlock#onBreak},\n{@link net.minecraft.entity.projectile.thrown.PotionEntity#extinguishFire(net.minecraft.util.math.BlockPos) PotionEntity#extinguishFire},\nand {@link net.minecraft.item.ShovelItem#useOnBlock(net.minecraft.item.ItemUsageContext) ShovelItem#useOnBlock} + f I field_31155 ELECTRICITY_SPARKS + c Electricity sparks after lightning hits a lightning rod or oxidizable blocks.\n
Spawns electric spark particles.\n

The ordinal direction the lightning rod is facing must be supplied as extra data.\n
A {@code -1} should be passed if the event is called by a lightning entity itself.\n

Called by {@link net.minecraft.block.LightningRodBlock#setPowered(net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos) LightningRodBlock#setPowered},\nand {@link net.minecraft.entity.LightningEntity#cleanOxidationAround(net.minecraft.world.World, net.minecraft.util.math.BlockPos) LightningEntity#cleanOxidationAround} + f I field_31147 SPAWNER_SPAWNS_MOB + c A spawner spawns a mob.\n
Spawns smoke and flame particles.\n

Called by {@link net.minecraft.block.spawner.MobSpawnerLogic#serverTick(net.minecraft.server.world.ServerWorld, net.minecraft.util.math.BlockPos) MobSpawnerLogic#serverTick} + f I field_31135 POINTED_DRIPSTONE_DRIPS_WATER_INTO_CAULDRON + c A pointed dripstone drips water into a cauldron.\n
Plays the pointed dripstone dripping water into cauldron sound event.\n

Called by {@link net.minecraft.block.CauldronBlock#fillFromDripstone(net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.fluid.Fluid) CauldronBlock#fillFromDripstone},\nand {@link net.minecraft.block.LeveledCauldronBlock#fillFromDripstone(net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.fluid.Fluid) LeveledCauldronBlock#fillFromDripstone} + f I field_31179 ZOMBIE_BREAKS_WOODEN_DOOR + c A zombie breaks a wooden door.\n
Plays the zombie breaking wooden door sound event.\n

Called by {@link net.minecraft.entity.ai.goal.BreakDoorGoal#tick() BreakDoorGoal#tick} + f I field_31127 PHANTOM_BITES + c A phantom bites its victim.\n
Plays the phantom bite sound event.\n

Called by {@link net.minecraft.entity.mob.PhantomEntity.SwoopMovementGoal#tick() PhantomEntity.SwoopMovementGoal#tick} + f I field_31159 DISPENSER_FAILS + c A dispenser fails to dispense an item.\n
Plays the dispenser fail sound event.\n

Called by {@link net.minecraft.block.DispenserBlock#dispense(net.minecraft.server.world.ServerWorld, net.minecraft.block.BlockState, net.minecraft.util.math.BlockPos) DispenserBlock#dispense},\n{@link net.minecraft.block.DropperBlock#dispense(net.minecraft.server.world.ServerWorld, net.minecraft.block.BlockState, net.minecraft.util.math.BlockPos) DropperBlock#dispense},\nand {@link net.minecraft.block.dispenser.FallibleItemDispenserBehavior#playSound(net.minecraft.util.math.BlockPointer) FallibleItemDispenserBehavior#playSound} + f I field_50166 TRIAL_SPAWNER_TURNS_OMINOUS + c A trial spawner becomes ominous.\n
Plays the activate sound and spawns both detection and omen particles.\n

If a {@code 0} is passed as extra data, the activate sound will be played at 0.3 volume.\n
Otherwise, it is played at full volume.\n

Called by {@link net.minecraft.block.spawner.TrialSpawnerLogic#setOminous},\nand {@link net.minecraft.block.spawner.TrialSpawnerData#updatePlayers}. + f I field_31115 ZOMBIE_VILLAGER_CURED + c A zombie villager is cured.\n
Plays the zombie villager cured sound event.\n

Called by {@link net.minecraft.entity.mob.ZombieVillagerEntity#finishConversion(net.minecraft.server.world.ServerWorld) ZombieVillagerEntity#finishConversion} + f I field_31139 REDSTONE_TORCH_BURNS_OUT + c A redstone torch burns out.\n
Plays the redstone torch burn out sound event and spawns smoke particles.\n

Called by {@link net.minecraft.block.RedstoneTorchBlock#scheduledTick(net.minecraft.block.BlockState, net.minecraft.server.world.ServerWorld, net.minecraft.util.math.BlockPos, net.minecraft.util.math.random.AbstractRandom) RedstoneTorchBlock#scheduledTick} + f I field_31119 ANVIL_LANDS + c An anvil lands after falling.\n
Plays the anvil landing sound event.\n

Called by {@link net.minecraft.block.AnvilBlock#onLanding(net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState, net.minecraft.block.BlockState, net.minecraft.entity.FallingBlockEntity) AnvilBlock#onLanding} + f I field_46805 CRAFTER_CRAFTS + c A crafter crafts an item.\n
Plays the crafter craft sound event.\n

Called by {@link net.minecraft.block.CrafterBlock#transferOrSpawnStack CrafterBlock#transferOrSpawnStack} + f I field_47343 TRIAL_SPAWNER_EJECTS_ITEM + c A trial spawner ejects loot.\n
Plays the ejection sound and spawns ejection particles.\n

Called by {@link net.minecraft.block.spawner.TrialSpawnerLogic#ejectLootTable}. +c net/minecraft/class_6089 net/minecraft/block/LightBlock + f Ljava/util/function/ToIntFunction; field_31189 STATE_TO_LUMINANCE + f Lnet/minecraft/class_2758; field_31187 LEVEL_15 + f Lnet/minecraft/class_2746; field_31188 WATERLOGGED + f Lcom/mojang/serialization/MapCodec; field_46388 CODEC + m (Lnet/minecraft/class_1799;I)Lnet/minecraft/class_1799; method_47377 addNbtForLevel + p 0 stack + p 1 level + m (Lnet/minecraft/class_2680;)I method_35281 method_35281 + p 0 state +c net/minecraft/class_6084 net/minecraft/unused/packageinfo/PackageInfo6084 +c net/minecraft/class_6083 net/minecraft/unused/packageinfo/PackageInfo6083 +c net/minecraft/class_6086 net/minecraft/unused/packageinfo/PackageInfo6086 +c net/minecraft/class_6085 net/minecraft/unused/packageinfo/PackageInfo6085 +c net/minecraft/class_3805 net/minecraft/world/gen/feature/BlockPileFeature + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Lnet/minecraft/class_4634;)V method_16708 addPileBlock + p 4 config + p 2 pos + p 3 random + p 1 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_16707 canPlace + p 1 world + p 2 pos + p 3 random +c net/minecraft/class_3806 net/minecraft/server/dedicated/ServerPropertiesHandler + f Lnet/minecraft/class_3808$class_3809; field_16805 enforceWhitelist + f Z field_16813 onlineMode + f Lnet/minecraft/class_3808$class_3809; field_16825 motd + f Ljava/lang/String; field_48711 regionFileCompression + f Lnet/minecraft/class_3808$class_3809; field_62280 statusHeartbeatInterval + f Ljava/lang/String; field_62794 MANAGEMENT_SERVER_TLS_KEYSTORE + f Ljava/lang/String; field_51987 bugReportLink + f Ljava/lang/String; field_62798 managementServerTlsKeystore + f Lnet/minecraft/class_3808$class_3809; field_16817 playerIdleTimeout + f I field_25802 rateLimit + f Lnet/minecraft/class_3808$class_3809; field_24453 enableStatus + f Lnet/minecraft/class_12086; field_63172 functionPermissionLevel + f Lorg/slf4j/Logger; field_37276 LOGGER + f Z field_62797 managementServerTlsEnabled + f Lnet/minecraft/class_3808$class_3809; field_48270 acceptsTransfers + f Lnet/minecraft/class_3808$class_3809; field_16841 gameMode + f Ljava/lang/String; field_63666 managementServerAllowedOrigin + f Z field_16838 hardcore + f Z field_16802 broadcastConsoleToOps + f Lnet/minecraft/class_3808$class_3809; field_16814 maxPlayers + f Z field_16818 enableRcon + f Lnet/minecraft/class_3806$class_7044; field_39983 worldGenProperties + f Ljava/lang/String; field_62795 MANAGEMENT_SERVER_TLS_KEYSTORE_PASSWORD + f Z field_62063 enableCodeOfConduct + f Z field_62281 managementServerEnabled + f I field_16842 networkCompressionThreshold + f Ljava/lang/String; field_62799 managementServerKeystorePassword + f Lnet/minecraft/class_3808$class_3809; field_52352 pauseWhenEmptySeconds + f J field_16815 maxTickTime + f Lcom/google/common/base/Splitter; field_39982 COMMA_SPLITTER + f Z field_24056 enableJmxMonitoring + f Ljava/util/regex/Pattern; field_39094 SHA1_PATTERN + f Lnet/minecraft/class_3808$class_3809; field_63171 opPermissionLevel + f Lnet/minecraft/class_3808$class_3809; field_16827 forceGameMode + f Z field_44985 logIps + f I field_52351 textFilteringVersion + f Z field_16819 enableQuery + f I field_37275 maxChainedNeighborUpdates + f Z field_16839 preventProxyConnections + f Z field_23785 syncChunkWrites + f Ljava/lang/String; field_16823 rconPassword + f Lnet/minecraft/class_5285; field_24623 generatorOptions + f Ljava/lang/String; field_62796 managementServerSecret + f I field_16831 queryPort + f Lnet/minecraft/class_3808$class_3809; field_16807 allowFlight + f Ljava/lang/Boolean; field_16830 announcePlayerAchievements + f Ljava/lang/String; field_62282 managementServerHost + f I field_16812 maxWorldSize + f I field_16828 rconPort + f Lnet/minecraft/class_3808$class_3809; field_34883 simulationDistance + f Ljava/lang/String; field_26899 textFilteringConfig + f Lnet/minecraft/class_3808$class_3809; field_16804 whiteList + f Lnet/minecraft/class_3808$class_3809; field_16816 spawnProtection + f Z field_16824 broadcastRconToOps + f Ljava/util/Optional; field_39093 serverResourcePackProperties + f Lnet/minecraft/class_3808$class_3809; field_16844 viewDistance + f Ljava/lang/String; field_62793 MANAGEMENT_SERVER_TLS_ENABLED + f Ljava/lang/String; field_16820 levelName + f Lnet/minecraft/class_3808$class_3809; field_35564 hideOnlinePlayers + f Lnet/minecraft/class_3808$class_3809; field_24454 entityBroadcastRangePercentage + f Z field_39018 enforceSecureProfile + f I field_16837 serverPort + f Lnet/minecraft/class_5359; field_39981 dataPackSettings + f Ljava/lang/String; field_16829 serverIp + f Lnet/minecraft/class_3808$class_3809; field_16840 difficulty + f I field_62283 managementServerPort + f Z field_16832 useNativeTransport + m (Lnet/minecraft/class_5455;Ljava/util/Properties;)Lnet/minecraft/class_3806; method_16713 create + m (Ljava/lang/Integer;)Ljava/lang/Integer; method_16715 method_16715 + p 0 maxWorldSize + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZLjava/lang/String;)Ljava/util/Optional; method_43660 getServerResourcePackProperties + p 2 sha1 + p 3 hash + p 0 id + p 1 url + p 4 required + p 5 prompt + m (Ljava/lang/String;)Lnet/minecraft/class_12086; method_74997 parsePermissionLevel + p 0 value + m (Ljava/lang/String;Ljava/lang/String;)V method_71329 method_71329 + p 1 error + m (Ljava/nio/file/Path;)Lnet/minecraft/class_3806; method_16714 load + p 0 path + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_43661 parseResourcePackPrompt + p 0 prompt + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_5359; method_45159 parseDataPackSettings + p 1 disabled + p 0 enabled + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_7723; method_45157 createDimensionsRegistryHolder + p 1 registries + m (Lnet/minecraft/class_12086;)Ljava/lang/String; method_74996 permissionLevelToString + p 0 level + m (Ljava/lang/String;)Lcom/google/gson/JsonObject; method_41186 method_41186 + p 0 generatorSettings + m (Ljava/lang/String;)Ljava/lang/Integer; method_73603 method_73603 + p 0 value + m (Ljava/lang/String;)Ljava/lang/String; method_41005 method_41005 + p 0 type +c net/minecraft/class_3806$class_7044 net/minecraft/server/dedicated/ServerPropertiesHandler$WorldGenProperties + f Ljava/util/Map; field_37277 LEVEL_TYPE_TO_PRESET_KEY + f Lcom/google/gson/JsonObject; comp_459 generatorSettings + f Ljava/lang/String; comp_461 levelType + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_41244 method_41244 + p 0 levelTypeId + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_7723; method_41242 createDimensionsRegistryHolder + p 1 registries + m ()Ljava/lang/String; comp_461 levelType + m ()Lcom/google/gson/JsonObject; comp_459 generatorSettings + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)V + p 1 generatorSettings + p 2 levelType +c net/minecraft/class_3807 net/minecraft/server/dedicated/ServerPropertiesLoader + f Ljava/nio/file/Path; field_16846 path + f Lnet/minecraft/class_3806; field_16847 propertiesHandler + m ()V method_16719 store + m (Ljava/nio/file/Path;)V + p 1 path + m ()Lnet/minecraft/class_3806; method_16717 getPropertiesHandler + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/class_3807; method_16718 apply + p 1 applier +c net/minecraft/class_3802 net/minecraft/client/gui/screen/ingame/GrindstoneScreen + f Lnet/minecraft/class_2960; field_16769 TEXTURE + f Lnet/minecraft/class_2960; field_45471 ERROR_TEXTURE + m (Lnet/minecraft/class_3803;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 3 title + p 2 inventory + p 1 handler +c net/minecraft/class_3803 net/minecraft/screen/GrindstoneScreenHandler + f Lnet/minecraft/class_1263; field_16772 input + f Lnet/minecraft/class_3914; field_16775 context + f I field_30800 HOTBAR_END + f I field_30798 INVENTORY_END + f I field_30799 HOTBAR_START + f I field_30796 OUTPUT_ID + f I field_30797 INVENTORY_START + f I field_30794 INPUT_1_ID + f Lnet/minecraft/class_1263; field_16773 result + f I field_30795 INPUT_2_ID + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_58070 getOutputStack + p 1 firstInput + p 2 secondInput + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;)V + p 3 context + p 1 syncId + p 2 playerInventory + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_16693 grind + p 1 item + m (Lnet/minecraft/class_9304$class_9305;)V method_58072 method_58072 + p 0 components + m ()V method_16695 updateResult + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_9304$class_9305;)V method_58071 method_58071 + p 1 components + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_58074 combineItems + p 1 firstInput + p 2 secondInput + m (Lnet/minecraft/class_6880;)Z method_58073 method_58073 + p 0 enchantment + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V method_20268 transferEnchantments + p 2 source + p 1 target + m (ILnet/minecraft/class_1661;)V + p 2 playerInventory + p 1 syncId + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_17415 method_17415 + p 2 world + p 3 pos +c net/minecraft/class_3803$4 net/minecraft/screen/GrindstoneScreenHandler$4 + m (Lnet/minecraft/class_1937;)I method_17416 getExperience + p 1 world + m (Lnet/minecraft/class_1799;)I method_16696 getExperience + p 1 stack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_17417 method_17417 + p 1 world + p 2 pos +c net/minecraft/class_6080 net/minecraft/unused/packageinfo/PackageInfo6080 +c net/minecraft/class_6082 net/minecraft/unused/packageinfo/PackageInfo6082 +c net/minecraft/class_6081 net/minecraft/unused/packageinfo/PackageInfo6081 +c net/minecraft/class_3808 net/minecraft/server/dedicated/AbstractPropertiesHandler + f Lorg/slf4j/Logger; field_16849 LOGGER + f Ljava/util/Properties; field_16848 properties + m (Ljava/lang/String;)Ljava/lang/Boolean; method_16736 getDeprecatedBoolean + p 1 key + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/UnaryOperator;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; method_16735 get + p 5 fallback + p 1 key + p 2 parser + p 3 parsedTransformer + p 4 stringifier + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; method_16737 get + p 3 fallback + p 2 parser + p 1 key + m (Ljava/util/function/Function;)Ljava/util/function/Function; method_16721 wrapNumberParser + p 0 parser + m ()Ljava/util/Properties; method_16723 copyProperties + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_16732 getString + p 1 key + p 2 fallback + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/lang/Object;)Lnet/minecraft/class_3808$class_3809; method_16730 accessor + p 3 fallback + p 1 key + p 2 parser + m (Ljava/util/function/Function;Ljava/util/function/UnaryOperator;Ljava/lang/String;)Ljava/lang/Object; method_16731 method_16731 + p 2 value + m (Ljava/lang/String;Z)Lnet/minecraft/class_3808$class_3809; method_16744 booleanAccessor + p 1 key + p 2 fallback + m (Lnet/minecraft/class_5455;Ljava/util/Properties;)Lnet/minecraft/class_3808; method_16739 create + c Creates another property handler with the same type as this one from the\npassed new map of properties. + p 2 properties + p 1 registryManager + m (Ljava/util/Properties;)V + p 1 properties + m (Ljava/nio/file/Path;)Ljava/util/Properties; method_16727 loadProperties + c Loads a map of properties from the {@code path}. + p 0 path + m (Ljava/lang/String;Ljava/util/function/Function;)Ljava/lang/Object; method_16742 getDeprecated + p 2 stringifier + p 1 key + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_3808$class_3809; method_73604 stringAccessor + p 1 key + p 2 fallback + m (Ljava/util/function/Function;Ljava/lang/String;)Ljava/lang/Number; method_16733 method_16733 + p 1 string + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Lnet/minecraft/class_3808$class_3809; method_16724 accessor + p 4 fallback + p 3 stringifier + p 2 parser + p 1 key + m (Ljava/util/function/IntFunction;Ljava/util/function/Function;Ljava/lang/String;)Ljava/lang/Object; method_16729 method_16729 + p 2 string + m (Ljava/lang/String;I)Lnet/minecraft/class_3808$class_3809; method_16743 intAccessor + p 2 fallback + p 1 key + m (Ljava/lang/String;)Ljava/lang/String; method_16734 getStringValue + p 1 key + m (Ljava/lang/String;)Ljava/lang/String; method_16738 getDeprecatedString + p 1 key + m (Ljava/lang/String;Z)Z method_16740 parseBoolean + p 2 fallback + p 1 key + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; method_16741 get + p 4 fallback + p 3 stringifier + p 2 parser + p 1 key + m (Ljava/nio/file/Path;)V method_16728 saveProperties + c Saves the properties of this handler to the {@code path}. + p 1 path + m (Ljava/lang/String;J)J method_16725 parseLong + p 1 key + p 2 fallback + m (Ljava/lang/String;I)I method_16726 getInt + p 2 fallback + p 1 key + m (Ljava/lang/String;Ljava/util/function/UnaryOperator;I)I method_16720 transformedParseInt + p 3 fallback + p 1 key + p 2 transformer + m (Ljava/util/function/IntFunction;Ljava/util/function/Function;)Ljava/util/function/Function; method_16722 combineParser + p 1 fallbackParser + p 0 intParser +c net/minecraft/class_3808$class_3809 net/minecraft/server/dedicated/AbstractPropertiesHandler$PropertyAccessor + f Ljava/util/function/Function; field_16851 stringifier + f Ljava/lang/Object; field_16850 value + f Ljava/lang/String; field_16852 key + m (Lnet/minecraft/class_3808;Ljava/lang/String;Ljava/lang/Object;Ljava/util/function/Function;)V + p 3 value + p 2 key + p 4 stringifier + m (Lnet/minecraft/class_5455;Ljava/lang/Object;)Lnet/minecraft/class_3808; method_16745 set + c Returns a new property handler with another map of property in which\nthe property handled by this accessor is updated.\n\n

This method does not mutate the original property where this accessor\nis from. + p 1 registryManager + p 2 value +c net/minecraft/class_7387 net/minecraft/world/gen/root/RootPlacer + f Lnet/minecraft/class_6017; field_38868 trunkOffsetY + f Ljava/util/Optional; field_38869 aboveRootPlacement + f Lnet/minecraft/class_4651; field_38780 rootProvider + f Lcom/mojang/serialization/Codec; field_38779 TYPE_CODEC + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Lnet/minecraft/class_2338; method_43309 trunkOffset + p 1 pos + p 2 random + m (Lnet/minecraft/class_7387;)Lnet/minecraft/class_4651; method_43183 method_43183 + p 0 rootPlacer + m (Lnet/minecraft/class_7387;)Lnet/minecraft/class_6017; method_43310 method_43310 + p 0 rootPlacer + m (Lnet/minecraft/class_3746;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_4643;)V method_43172 placeRoots + p 2 replacer + p 3 random + p 1 world + p 4 pos + p 5 config + m (Lnet/minecraft/class_7387;)Ljava/util/Optional; method_43308 method_43308 + p 0 rootPlacer + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_2338;)Z method_43167 canGrowThrough + p 2 pos + p 1 world + m (Lnet/minecraft/class_3610;)Z method_43184 method_43184 + p 0 fluidState + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_4651;Ljava/util/Optional;)V + p 2 rootProvider + p 1 trunkOffsetY + p 3 aboveRootPlacement + m (Lnet/minecraft/class_3746;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_4643;)Z method_43168 generate + p 6 config + p 5 trunkPos + p 4 pos + p 3 random + p 2 replacer + p 1 world + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P3; method_43182 createCodecParts + p 0 instance + m ()Lnet/minecraft/class_7388; method_43165 getType + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_43181 applyWaterlogging + p 1 world + p 2 pos + p 3 state +c net/minecraft/class_6055 net/minecraft/unused/packageinfo/PackageInfo6055 +c net/minecraft/class_7388 net/minecraft/world/gen/root/RootPlacerType + f Lcom/mojang/serialization/MapCodec; field_38782 codec + f Lnet/minecraft/class_7388; field_38781 MANGROVE_ROOT_PLACER + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_7388; method_43186 register + p 0 id + p 1 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()Lcom/mojang/serialization/MapCodec; method_43185 getCodec +c net/minecraft/class_6054 net/minecraft/entity/passive/GoatBrain + f F field_30410 NORMAL_WALK_SPEED + f I field_33493 LONG_JUMP_HORIZONTAL_RANGE + f I field_33495 MIN_RAM_TARGET_DISTANCE + f F field_30406 FOLLOWING_TARGET_WALK_SPEED + f I field_33491 MAX_RAM_TARGET_DISTANCE + f F field_30409 FOLLOW_ADULT_WALK_SPEED + f Lnet/minecraft/class_4051; field_33500 RAM_TARGET_PREDICATE + f F field_33497 BABY_RAM_STRENGTH_MULTIPLIER + f I field_33490 PREPARE_RAM_DURATION + f Lnet/minecraft/class_6019; field_30411 LONG_JUMP_COOLDOWN_RANGE + f I field_33492 LONG_JUMP_VERTICAL_RANGE + f F field_30408 TEMPTED_WALK_SPEED + f Lnet/minecraft/class_6019; field_30407 WALKING_SPEED + f F field_33498 PREPARING_RAM_WALK_SPEED + f Lnet/minecraft/class_6019; field_33499 RAM_COOLDOWN_RANGE + f F field_33501 RAM_SPEED + f Lnet/minecraft/class_6019; field_33693 SCREAMING_RAM_COOLDOWN_RANGE + f F field_33496 ADULT_RAM_STRENGTH_MULTIPLIER + m (Lnet/minecraft/class_6053;Lnet/minecraft/class_5819;)V method_35184 resetLongJumpCooldown + p 1 random + p 0 goat + m (Lnet/minecraft/class_4095;)V method_36288 addRamActivities + p 0 brain + m (Lnet/minecraft/class_6053;)Lnet/minecraft/class_3414; method_36291 method_36291 + p 0 goat + m (Lnet/minecraft/class_6053;)I method_36553 method_36553 + p 0 goat + m (Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_35183 create + p 0 brain + m (Lnet/minecraft/class_4095;)V method_35187 addIdleActivities + p 0 brain + m (Lnet/minecraft/class_1309;)Ljava/lang/Float; method_35182 method_35182 + p 0 goat + m (Lnet/minecraft/class_6053;)Lnet/minecraft/class_3414; method_36286 method_36286 + p 0 goat + m (Lnet/minecraft/class_6053;)Lnet/minecraft/class_3414; method_43543 method_43543 + p 0 goat + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_36285 method_36285 + p 0 target + p 1 world + m (Lnet/minecraft/class_6053;)D method_36289 method_36289 + p 0 goat + m (Lnet/minecraft/class_4095;)V method_35185 addCoreActivities + p 0 brain + m (Lnet/minecraft/class_6053;)Lnet/minecraft/class_6019; method_36290 method_36290 + p 0 goat + m (Lnet/minecraft/class_6053;)V method_35186 updateActivities + p 0 goat + m (Lnet/minecraft/class_4095;)V method_35188 addLongJumpActivities + p 0 brain + m (Lnet/minecraft/class_6053;)Lnet/minecraft/class_3414; method_36287 method_36287 + p 0 goat +c net/minecraft/class_6057 net/minecraft/unused/packageinfo/PackageInfo6057 +c net/minecraft/class_7386 net/minecraft/world/gen/root/MangroveRootPlacer + f Lcom/mojang/serialization/MapCodec; field_38771 CODEC + f Lnet/minecraft/class_7399; field_38867 mangroveRootPlacement + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;Ljava/util/List;I)Z method_43166 canGrow + p 5 origin + p 4 direction + p 3 pos + p 2 random + p 7 rootLength + p 6 offshootPositions + p 1 world + m (Lnet/minecraft/class_7386;)Lnet/minecraft/class_7399; method_43180 method_43180 + p 0 rootPlacer + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43173 method_43173 + p 0 instance + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_4651;Ljava/util/Optional;Lnet/minecraft/class_7399;)V + p 1 trunkOffsetY + p 3 aboveRootPlacement + p 2 rootProvider + p 4 mangroveRootPlacement + m (Lnet/minecraft/class_2680;)Z method_43174 method_43174 + p 1 state + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Ljava/util/List; method_43171 getOffshootPositions + p 4 origin + p 3 random + p 2 direction + p 1 pos + m (Lnet/minecraft/class_2680;)Z method_43169 method_43169 + p 1 state +c net/minecraft/class_6051 net/minecraft/unused/packageinfo/PackageInfo6051 +c net/minecraft/class_7383 net/minecraft/predicate/entity/SlimePredicate + f Lcom/mojang/serialization/MapCodec; field_45776 CODEC + f Lnet/minecraft/class_2096$class_2100; comp_1829 size + m (Lnet/minecraft/class_2096$class_2100;)V + p 1 size + m (Lnet/minecraft/class_2096$class_2100;)Lnet/minecraft/class_7383; method_43157 of + p 0 size + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53234 method_53234 + p 0 instance + m ()Lnet/minecraft/class_2096$class_2100; comp_1829 size +c net/minecraft/class_6050 net/minecraft/unused/packageinfo/PackageInfo6050 +c net/minecraft/class_7384 net/minecraft/util/math/random/ThreadSafeRandom + c A random that can be shared by multiple threads safely. + f J field_38763 INCREMENT + f J field_38762 MULTIPLIER + f I field_38760 INT_BITS + f J field_38761 SEED_MASK + f Ljava/util/concurrent/atomic/AtomicLong; field_38764 seed + f Lnet/minecraft/class_6672; field_38765 gaussianGenerator + m (J)V + p 1 seed +c net/minecraft/class_6053 net/minecraft/entity/passive/GoatEntity + f Z field_33487 preparingRam + f Z field_57626 DEFAULT_SCREAMING + f Lcom/google/common/collect/ImmutableList; field_30400 SENSORS + f Lnet/minecraft/class_2940; field_33486 SCREAMING + f I field_30402 FALL_DAMAGE_SUBTRACTOR + f Z field_57628 DEFAULT_RIGHT_HORN + f I field_34022 DEFAULT_ATTACK_DAMAGE + f Lnet/minecraft/class_2940; field_39047 LEFT_HORN + f Z field_57627 DEFAULT_LEFT_HORN + f Lcom/google/common/collect/ImmutableList; field_30401 MEMORY_MODULES + f D field_30403 SCREAMING_CHANCE + f Lnet/minecraft/class_4048; field_30399 LONG_JUMPING_DIMENSIONS + f I field_33488 headPitch + f I field_34023 BABY_ATTACK_DAMAGE + f Lnet/minecraft/class_2940; field_39048 RIGHT_HORN + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_6053; method_35177 createChild + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_38067 canSpawn + p 1 world + p 2 spawnReason + p 0 entityType + p 3 pos + p 4 random + m ()Z method_43539 hasRightHorn + m ()V method_43541 addHorns + m ()Lnet/minecraft/class_5132$class_5133; method_35179 createGoatAttributes + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_1799; method_61482 method_61482 + p 0 instrument + m ()Z method_43538 hasLeftHorn + m ()Z method_35178 isScreaming + m ()F method_36283 getHeadPitch + m ()Lnet/minecraft/class_3414; method_35180 getMilkingSound + m ()V method_43542 removeHorns + m (Z)V method_36284 setScreaming + p 1 screaming + m ()Z method_43540 dropHorn + m ()Lnet/minecraft/class_1799; method_43690 getGoatHornStack +c net/minecraft/class_6052 net/minecraft/unused/packageinfo/PackageInfo6052 +c net/minecraft/class_6059 net/minecraft/unused/packageinfo/PackageInfo6059 +c net/minecraft/class_6058 net/minecraft/unused/packageinfo/PackageInfo6058 +c net/minecraft/class_7389 net/minecraft/world/gen/treedecorator/AttachedToLeavesTreeDecorator + f I field_38788 requiredEmptyBlocks + f Ljava/util/List; field_38789 directions + f Lcom/mojang/serialization/MapCodec; field_38783 CODEC + f I field_38785 exclusionRadiusXZ + f F field_38784 probability + f I field_38786 exclusionRadiusY + f Lnet/minecraft/class_4651; field_38787 blockProvider + m (Lnet/minecraft/class_7389;)Ljava/lang/Float; method_43194 method_43194 + p 0 treeDecorator + m (Lnet/minecraft/class_7389;)Ljava/util/List; method_43189 method_43189 + p 0 treeDecorator + m (Lnet/minecraft/class_7389;)Lnet/minecraft/class_4651; method_43191 method_43191 + p 0 treeDecorator + m (FIILnet/minecraft/class_4651;ILjava/util/List;)V + p 1 probability + p 6 directions + p 2 exclusionRadiusXZ + p 3 exclusionRadiusY + p 4 blockProvider + p 5 requiredEmptyBlocks + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43188 method_43188 + p 0 instance + m (Lnet/minecraft/class_7389;)Ljava/lang/Integer; method_43190 method_43190 + p 0 treeDecorator + m (Lnet/minecraft/class_4662$class_7402;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_43187 meetsRequiredEmptyBlocks + p 1 generator + p 2 pos + p 3 direction + m (Lnet/minecraft/class_7389;)Ljava/lang/Integer; method_43193 method_43193 + p 0 treeDecorator + m (Lnet/minecraft/class_7389;)Ljava/lang/Integer; method_43192 method_43192 + p 0 treeDecorator +c net/minecraft/class_7398 net/minecraft/world/gen/root/AboveRootPlacement + f Lcom/mojang/serialization/Codec; field_38865 CODEC + f F comp_718 aboveRootPlacementChance + f Lnet/minecraft/class_4651; comp_717 aboveRootProvider + m (Lnet/minecraft/class_7398;)Ljava/lang/Float; method_43299 method_43299 + p 0 aboveRootPlacement + m (Lnet/minecraft/class_7398;)Lnet/minecraft/class_4651; method_43300 method_43300 + p 0 aboveRootPlacement + m ()Lnet/minecraft/class_4651; comp_717 aboveRootProvider + m ()F comp_718 aboveRootPlacementChance + m (Lnet/minecraft/class_4651;F)V + p 1 aboveRootProvider + p 2 aboveRootPlacementChance +c net/minecraft/class_6066 net/minecraft/unused/packageinfo/PackageInfo6066 +c net/minecraft/class_7399 net/minecraft/world/gen/root/MangroveRootPlacement + f Lcom/mojang/serialization/Codec; field_38866 CODEC + f Lnet/minecraft/class_4651; comp_721 muddyRootsProvider + f I comp_723 maxRootLength + f I comp_722 maxRootWidth + f F comp_724 randomSkewChance + f Lnet/minecraft/class_6885; comp_719 canGrowThrough + f Lnet/minecraft/class_6885; comp_720 muddyRootsIn + m (Lnet/minecraft/class_7399;)Ljava/lang/Float; method_43302 method_43302 + p 0 rootPlacement + m (Lnet/minecraft/class_7399;)Lnet/minecraft/class_4651; method_43305 method_43305 + p 0 rootPlacement + m (Lnet/minecraft/class_7399;)Lnet/minecraft/class_6885; method_43307 method_43307 + p 0 rootPlacement + m (Lnet/minecraft/class_7399;)Ljava/lang/Integer; method_43303 method_43303 + p 0 rootPlacement + m (Lnet/minecraft/class_7399;)Lnet/minecraft/class_6885; method_43306 method_43306 + p 0 rootPlacement + m (Lnet/minecraft/class_7399;)Ljava/lang/Integer; method_43304 method_43304 + p 0 rootPlacement + m ()Lnet/minecraft/class_6885; comp_719 canGrowThrough + m ()Lnet/minecraft/class_4651; comp_721 muddyRootsProvider + m ()Lnet/minecraft/class_6885; comp_720 muddyRootsIn + m ()I comp_722 maxRootWidth + m ()F comp_724 randomSkewChance + m ()I comp_723 maxRootLength + m (Lnet/minecraft/class_6885;Lnet/minecraft/class_6885;Lnet/minecraft/class_4651;IIF)V + p 1 canGrowThrough + p 2 muddyRootsIn + p 3 muddyRootsProvider + p 4 maxRootWidth + p 5 maxRootLength + p 6 randomSkewChance +c net/minecraft/class_6065 net/minecraft/unused/packageinfo/PackageInfo6065 +c net/minecraft/class_6068 net/minecraft/unused/packageinfo/PackageInfo6068 +c net/minecraft/class_7396 net/minecraft/entity/ai/brain/task/SonicBoomTask + f I field_38849 COOLDOWN + f I field_38854 SOUND_DELAY + f I field_38855 RUN_TIME + f I field_38850 HORIZONTAL_RANGE + f I field_38851 VERTICAL_RANGE + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)Z method_43263 shouldKeepRunning + m (Lnet/minecraft/class_7260;Lnet/minecraft/class_1309;)Z method_43266 method_43266 + p 1 target + m (Lnet/minecraft/class_1309;I)V method_43264 cooldown + p 1 cooldown + p 0 warden + m (Lnet/minecraft/class_7260;Lnet/minecraft/class_1309;)V method_43973 method_43973 + p 1 target + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;)Z method_43262 shouldRun + m (Lnet/minecraft/class_7260;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)V method_43265 method_43265 + p 2 target + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)V method_43269 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)V method_43268 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7260;J)V method_43267 run +c net/minecraft/class_6067 net/minecraft/entity/InventoryOwner + f Ljava/lang/String; field_40736 INVENTORY_KEY + m ()Lnet/minecraft/class_1277; method_35199 getInventory + m (Lnet/minecraft/class_11368;)V method_46400 readInventory + p 1 view + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;Lnet/minecraft/class_6067;Lnet/minecraft/class_1542;)V method_43544 pickUpItem + p 0 world + p 2 inventoryOwner + p 1 entity + p 3 item + m (Lnet/minecraft/class_11368$class_11369;)V method_68276 method_68276 + p 1 list + m (Lnet/minecraft/class_11372;)V method_46399 writeInventory + p 1 view +c net/minecraft/class_6062 net/minecraft/unused/packageinfo/PackageInfo6062 +c net/minecraft/class_6061 net/minecraft/unused/packageinfo/PackageInfo6061 +c net/minecraft/class_6064 net/minecraft/unused/packageinfo/PackageInfo6064 +c net/minecraft/class_6063 net/minecraft/unused/packageinfo/PackageInfo6063 +c net/minecraft/class_6069 net/minecraft/unused/packageinfo/PackageInfo6069 +c net/minecraft/class_7390 net/minecraft/world/gen/trunk/UpwardsBranchingTrunkPlacer + f Lnet/minecraft/class_6885; field_38797 canGrowThrough + f Lnet/minecraft/class_6017; field_38796 extraBranchLength + f F field_38795 placeBranchPerLogProbability + f Lnet/minecraft/class_6017; field_38794 extraBranchSteps + f Lcom/mojang/serialization/MapCodec; field_38793 CODEC + m (Lnet/minecraft/class_7390;)Lnet/minecraft/class_6885; method_43201 method_43201 + p 0 trunkPlacer + m (Lnet/minecraft/class_7390;)Lnet/minecraft/class_6017; method_43205 method_43205 + p 0 trunkPlacer + m (Lnet/minecraft/class_7390;)Ljava/lang/Float; method_43204 method_43204 + p 0 trunkPlacer + m (Lnet/minecraft/class_7390;)Lnet/minecraft/class_6017; method_43203 method_43203 + p 0 trunkPlacer + m (IIILnet/minecraft/class_6017;FLnet/minecraft/class_6017;Lnet/minecraft/class_6885;)V + p 7 canGrowThrough + p 6 extraBranchLength + p 1 baseHeight + p 5 placeBranchPerLogProbability + p 4 extraBranchSteps + p 3 secondRandomHeight + p 2 firstRandomHeight + m (Lnet/minecraft/class_2680;)Z method_43200 method_43200 + p 1 state + m (Lnet/minecraft/class_3746;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5819;ILnet/minecraft/class_4643;Ljava/util/List;Lnet/minecraft/class_2338$class_2339;ILnet/minecraft/class_2350;II)V method_43199 generateExtraBranch + p 4 height + p 5 config + p 2 replacer + p 3 random + p 1 world + p 10 length + p 11 steps + p 8 yOffset + p 9 direction + p 6 nodes + p 7 pos +c net/minecraft/class_2590 net/minecraft/text/TranslationException + m (Lnet/minecraft/class_2588;Ljava/lang/String;)V + p 2 message + p 1 text + m (Lnet/minecraft/class_2588;I)V + p 1 text + p 2 index + m (Lnet/minecraft/class_2588;Ljava/lang/Throwable;)V + p 2 cause + p 1 text +c net/minecraft/class_2591 net/minecraft/block/entity/BlockEntityType + c Represents a type of {@linkplain BlockEntity block entities}.\nThere is one instance of block entity for each placed block entity; this class\nrepresents the type of the placed block entities, like chests or furnaces.\n\n

Block entity types are pre-defined and registered in {@link\nnet.minecraft.registry.Registries#BLOCK_ENTITY_TYPE}.\n\n

Blocks that have corresponding block entities must implement {@link\nnet.minecraft.block.BlockEntityProvider} and list it in the builder of the block\nentity type. Multiple blocks or block states can be associated with a single block\nentity type.\n\n@see BlockEntity\n@see net.minecraft.block.BlockEntityProvider + f Lnet/minecraft/class_2591$class_5559; field_11892 factory + f Lorg/slf4j/Logger; field_11893 LOGGER + f Lnet/minecraft/class_6880$class_6883; field_45786 registryEntry + f Ljava/util/Set; field_55084 POTENTIALLY_EXECUTES_COMMANDS + f Ljava/util/Set; field_19315 blocks + f Lnet/minecraft/class_2591; field_48859 VAULT + f Lnet/minecraft/class_2591; field_54774 CREAKING_HEART + f Lnet/minecraft/class_2591; field_42780 BRUSHABLE_BLOCK + f Lnet/minecraft/class_2591; field_42781 DECORATED_POT + f Lnet/minecraft/class_2591; field_28117 SCULK_SENSOR + f Lnet/minecraft/class_2591; field_55992 TEST_BLOCK + f Lnet/minecraft/class_2591; field_55993 TEST_INSTANCE_BLOCK + f Lnet/minecraft/class_2591; field_16411 BARREL + f Lnet/minecraft/class_2591; field_16415 BLAST_FURNACE + f Lnet/minecraft/class_2591; field_16549 JIGSAW + f Lnet/minecraft/class_2591; field_16414 SMOKER + f Lnet/minecraft/class_2591; field_16413 BELL + f Lnet/minecraft/class_2591; field_16412 LECTERN + f Lnet/minecraft/class_2591; field_11898 END_PORTAL + f Lnet/minecraft/class_2591; field_11897 PISTON + f Lnet/minecraft/class_2591; field_11899 DROPPER + f Lnet/minecraft/class_2591; field_11891 TRAPPED_CHEST + f Lnet/minecraft/class_2591; field_11890 BEACON + f Lnet/minecraft/class_2591; field_11895 STRUCTURE_BLOCK + f Lnet/minecraft/class_2591; field_11896 SHULKER_BOX + f Lnet/minecraft/class_2591; field_11894 BREWING_STAND + f Lnet/minecraft/class_2591; field_40330 HANGING_SIGN + f Lnet/minecraft/class_2591; field_40329 CHISELED_BOOKSHELF + f Lnet/minecraft/class_2591; field_11914 CHEST + f Lnet/minecraft/class_2591; field_11911 SIGN + f Lnet/minecraft/class_2591; field_11910 BED + f Lnet/minecraft/class_2591; field_11913 SKULL + f Lnet/minecraft/class_2591; field_11912 ENCHANTING_TABLE + f Lnet/minecraft/class_2591; field_11903 FURNACE + f Lnet/minecraft/class_2591; field_11902 CONDUIT + f Lnet/minecraft/class_2591; field_11905 BANNER + f Lnet/minecraft/class_2591; field_11904 COMMAND_BLOCK + f Lnet/minecraft/class_2591; field_11907 JUKEBOX + f Lnet/minecraft/class_2591; field_11906 END_GATEWAY + f Lnet/minecraft/class_2591; field_11908 COMPARATOR + f Lnet/minecraft/class_2591; field_11901 ENDER_CHEST + f Lnet/minecraft/class_2591; field_11900 DAYLIGHT_DETECTOR + f Lnet/minecraft/class_2591; field_43258 CALIBRATED_SCULK_SENSOR + f Lnet/minecraft/class_2591; field_17380 CAMPFIRE + f Lnet/minecraft/class_2591; field_37647 SCULK_CATALYST + f Lnet/minecraft/class_2591; field_37648 SCULK_SHRIEKER + f Lnet/minecraft/class_2591; field_11888 HOPPER + f Lnet/minecraft/class_2591; field_11887 DISPENSER + f Lnet/minecraft/class_2591; field_11889 MOB_SPAWNER + f Lnet/minecraft/class_2591; field_47352 TRIAL_SPAWNER + f Lnet/minecraft/class_2591; field_61437 SHELF + f Lnet/minecraft/class_2591; field_61438 COPPER_GOLEM_STATUE + f Lnet/minecraft/class_2591; field_20431 BEEHIVE + f Lnet/minecraft/class_2591; field_46808 CRAFTER + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2586; method_11032 instantiate + c {@return a new instance of the block entity}\n\n@see BlockEntityType.BlockEntityFactory + p 1 pos + p 2 state + m ()Z method_65166 canPotentiallyExecuteCommands + m (Ljava/lang/String;Lnet/minecraft/class_2591$class_5559;[Lnet/minecraft/class_2248;)Lnet/minecraft/class_2591; method_11030 create + p 0 id + p 1 factory + p 2 blocks + m (Lnet/minecraft/class_2591$class_5559;Ljava/util/Set;)V + p 2 blocks + p 1 factory + m (Lnet/minecraft/class_2591;)Lnet/minecraft/class_2960; method_11033 getId + c {@return the block entity type's ID, or {@code null} if it is unregistered}\n\n

This should never return {@code null} under normal circumstances. + p 0 type + m (Lnet/minecraft/class_2680;)Z method_20526 supports + c {@return whether the block entity type supports {@code state}}\n\n

The block, not the block state, determines the corresponding block entity type;\ntherefore, for states of the same block, the return value is the same. + p 1 state + m ()Lnet/minecraft/class_6880$class_6883; method_53254 getRegistryEntry + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2586; method_24182 get + c {@return the block entity instance of this type at {@code pos}, or {@code null} if\nno such block entity exists}\n\n@see BlockView#getBlockEntity + p 1 world + p 2 pos +c net/minecraft/class_2591$class_5559 net/minecraft/block/entity/BlockEntityType$BlockEntityFactory + c A functional interface for a factory that creates a new block entity\ninstance. This is usually not implemented directly; the block entity class's\nconstructor (such as {@code MyBlockEntity::MyBlockEntity}) can be used as the\nimplementation. + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2586; create create + p 2 state + p 1 pos +c net/minecraft/class_801 net/minecraft/client/render/model/json/GeneratedItemModel + f Lnet/minecraft/class_10419$class_10420; field_55274 TEXTURES + f Lnet/minecraft/class_2960; field_55273 GENERATED + f Ljava/util/List; field_4270 LAYERS + f Lnet/minecraft/class_783$class_10800; field_56930 FACING_SOUTH_UV + f Lnet/minecraft/class_783$class_10800; field_56931 FACING_NORTH_UV + m (ILjava/lang/String;Lnet/minecraft/class_7764;)Ljava/util/List; method_3480 addLayerElements + p 0 tintIndex + p 1 name + m (Lnet/minecraft/class_7764;Ljava/lang/String;I)Ljava/util/List; method_3481 addSubComponents + p 2 tintIndex + p 1 textureId + p 0 sprite + m (Lnet/minecraft/class_801$class_803;Ljava/util/Set;Lnet/minecraft/class_7764;IIIII)V method_3476 buildCube + m (Lnet/minecraft/class_7764;IIIII)Z method_3477 isPixelTransparent + m (Lnet/minecraft/class_10419;Lnet/minecraft/class_7775;Lnet/minecraft/class_3665;Lnet/minecraft/class_10813;)Lnet/minecraft/class_10817; method_3479 bakeGeometry + p 2 settings + p 3 model + p 0 textures + p 1 baker + m (Lnet/minecraft/class_7764;)Ljava/util/Collection; method_3478 getFrames +c net/minecraft/class_801$class_803 net/minecraft/client/render/model/json/GeneratedItemModel$Side + f Lnet/minecraft/class_2350; field_4276 direction + f Lnet/minecraft/class_801$class_803; field_4278 LEFT + f Lnet/minecraft/class_801$class_803; field_4277 DOWN + f Lnet/minecraft/class_801$class_803; field_4283 RIGHT + f Lnet/minecraft/class_801$class_803; field_4281 UP + m ()Lnet/minecraft/class_2350; method_3488 getDirection + m (Ljava/lang/String;ILnet/minecraft/class_2350;)V + p 3 direction + m ()Z method_3491 isVertical +c net/minecraft/class_2597 net/minecraft/block/entity/ConduitBlockEntity + f I field_31337 MIN_BLOCKS_TO_ACTIVATE + f F field_11932 ticksActive + f Ljava/util/List; field_11937 activatingBlocks + f [Lnet/minecraft/class_2248; field_11931 ACTIVATING_BLOCKS + f I field_11936 ticks + f J field_11938 nextAmbientSoundTime + f Z field_11933 eyeOpen + f Lnet/minecraft/class_10583; field_11939 targetEntity + f Z field_11934 active + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_238; method_11059 getAttackZone + p 0 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Ljava/util/List;)Z method_11069 updateActivatingBlocks + p 0 world + p 1 pos + p 2 activatingBlocks + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Ljava/util/List;)V method_11055 givePlayersEffects + p 0 world + p 2 activatingBlocks + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Ljava/util/List;Lnet/minecraft/class_1297;I)V method_11063 spawnNautilusParticles + p 4 ticks + p 0 world + p 1 pos + p 2 activatingBlocks + p 3 entity + m (Lnet/minecraft/class_1309;)Z method_71634 method_71634 + p 0 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2597;Z)V method_71632 tryAttack + p 0 world + p 1 pos + p 4 canAttack + p 2 state + p 3 blockEntity + m (F)F method_11061 getRotation + p 1 tickProgress + m (Lnet/minecraft/class_2597;Ljava/util/List;)V method_31676 openEye + p 1 activatingBlocks + p 0 blockEntity + m ()Z method_11065 isActive + m ()Lnet/minecraft/class_2622; method_38247 toUpdatePacket + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2597;)V method_31675 clientTick + p 0 world + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2597;)V method_31677 serverTick + p 0 world + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Lnet/minecraft/class_10583; method_71631 findAttackTarget + p 1 pos + p 0 world + m (Lnet/minecraft/class_10583;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Z)Lnet/minecraft/class_10583; method_71633 getValidTarget + p 2 pos + p 3 canAttack + p 0 currentTarget + p 1 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m (Z)V method_11062 setEyeOpen + p 1 eyeOpen + m ()Z method_11066 isEyeOpen +c net/minecraft/class_1265 net/minecraft/inventory/InventoryChangedListener + c A functional interface used in {@link SimpleInventory#addListener}.\n\n

Other inventories can listen for inventory changes by overriding\n{@link Inventory#markDirty}. + m (Lnet/minecraft/class_1263;)V method_5453 onInventoryChanged + p 1 sender +c net/minecraft/class_2598 net/minecraft/network/NetworkSide + f Ljava/lang/String; field_48613 name + f Lnet/minecraft/class_2598; field_11942 CLIENTBOUND + f Lnet/minecraft/class_2598; field_11941 SERVERBOUND + m ()Ljava/lang/String; method_56444 getName + m ()Lnet/minecraft/class_2598; method_36146 getOpposite + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_1264 net/minecraft/util/ItemScatterer + c Contains utility methods for spawning item entities scattered around a certain position.\nAll methods consume the item stack, so there is no need for decrementing the\nstack size yourself.\n\n@see net.minecraft.block.AbstractBlock#onStateReplaced + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1263;)V method_5450 spawn + c Spawns item entities from {@code inventory} around the given position. + p 7 inventory + p 0 world + p 1 x + p 5 z + p 3 y + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;Lnet/minecraft/class_1263;)V method_5452 spawn + c Spawns item entities from {@code inventory} around {@code entity}'s position. + p 1 entity + p 2 inventory + p 0 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_66221 onStateReplaced + p 1 world + p 2 pos + p 0 state + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1799;)V method_5449 spawn + c Spawns an item entity of {@code stack} around the given position. + p 7 stack + p 5 z + p 3 y + p 1 x + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1263;)V method_5451 spawn + c Spawns item entities from {@code inventory} around {@code pos}. + p 0 world + p 1 pos + p 2 inventory + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)V method_17348 method_17348 + p 2 stack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2371;)V method_17349 spawn + c Spawns item entities from {@code stacks} around {@code pos}. + p 2 stacks + p 1 pos + p 0 world +c net/minecraft/class_2599 net/minecraft/block/entity/ComparatorBlockEntity + f I field_11943 outputSignal + f I field_57775 DEFAULT_OUTPUT_SIGNAL + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m ()I method_11071 getOutputSignal + m (I)V method_11070 setOutputSignal + p 1 outputSignal +c net/minecraft/class_1263 net/minecraft/inventory/Inventory + c A container of {@link ItemStack}s. In general, when a player stores an item stack\nand can retrieve the same item stack back, that stack is stored in an\ninventory. The inventory can be persistent, like chests or donkeys, or it can\nbe created without backing storage, like the slots in crafting tables.\nIt is the responsibility of the user to sync or save the contents of the\ninventory.\n\n

Entities and block entities that can hold item stacks generally\nimplement this interface themselves, allowing hopper interactions. Call {@link\nnet.minecraft.entity.player.PlayerEntity#getInventory} to get the player's\ninventory (including armors and offhand).\n\n

An inventory has a fixed size, and each element in the inventory is identified\nby the slot number, which is between zero and {@code size() - 1} like arrays.\nWhen a slot of the inventory is empty, it should be filled with {@link\nItemStack#EMPTY}.\n\n

An implementation of this interface should have a field of {@link\nnet.minecraft.util.collection.DefaultedList#ofSize(int, Object)} with the second\nargument as {@link ItemStack#EMPTY}, and implement methods by delegating to the\nlist. The list itself should not be modified directly, and the list's size\nshould remain constant throughout the lifetime of the inventory.\nImplementations must call {@link #markDirty} when the inventory is modified.\n\n@apiNote If an inventory is needed for temporary storage, use {@link\nSimpleInventory}. For persistent storage in entities or block entities,\nuse {@link net.minecraft.entity.vehicle.VehicleInventory} or\n{@link net.minecraft.block.entity.LockableContainerBlockEntity}.\n\n@see net.minecraft.entity.vehicle.VehicleInventory\n@see net.minecraft.block.entity.LockableContainerBlockEntity + f F field_48319 DEFAULT_MAX_INTERACTION_RANGE + m (Lnet/minecraft/class_11565;)V method_5432 onClose + c Called when the inventory is closed. Specifically, this is called inside\n{@link net.minecraft.screen.ScreenHandler#onClosed}. This does nothing\nby default.\n\n

The method is called in both the client and the server. However, because\nclientside screen handler is created with a {@link net.minecraft.inventory.SimpleInventory},\nother implementations can (and the vanilla code does) assume that the method is called\nin the server. + p 1 user + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_1657;F)Z method_49106 canPlayerUse + c {@return whether {@code player} can use this {@code blockEntity}}\n\n@apiNote This is used by block entities to implement {@link\n#canPlayerUse(PlayerEntity)}.\n\n@implNote This method checks whether the given block entity exists and whether\nthe player is within {@code range} blocks of the block entity.\n\n@see #canPlayerUse(BlockEntity, PlayerEntity) + p 1 player + p 2 range + p 0 blockEntity + m ()Ljava/util/List; method_72379 getViewingUsers + m ()V method_5431 markDirty + c Marks the inventory as modified. Implementations should call this method\nevery time the inventory is changed in any way.\n\n@apiNote Implementations should mark the inventory for synchronization or\nsaving in this method. Since this is called frequently, it is not recommended to\nsynchronize or save the inventory directly in this method. If this inventory is\nimplemented in a block entity, then it should always call\n{@code super.markDirty();} to ensure the block entity gets saved.\n\n@see net.minecraft.block.entity.BlockEntity#markDirty + m (Lnet/minecraft/class_11565;)V method_5435 onOpen + c Called when the inventory is opened. Specifically, this is called inside the\n{@link net.minecraft.screen.ScreenHandler} constructor. This does nothing\nby default.\n\n

The method is called in both the client and the server. However, because\nclientside screen handler is created with a {@link net.minecraft.inventory.SimpleInventory},\nother implementations can (and the vanilla code does) assume that the method is called\nin the server. + p 1 user + m (I)Lnet/minecraft/class_1799; method_5438 getStack + c {@return the stack currently stored at {@code slot}}\n\n

If the slot is empty, or is outside the bounds of this inventory,\nthis returns {@link ItemStack#EMPTY}. + p 1 slot + m ()Z method_5442 isEmpty + c {@return whether the inventory consists entirely of {@linkplain ItemStack#isEmpty\nempty item stacks}} + m (Lnet/minecraft/class_1792;)I method_18861 count + c {@return the number of times {@code item} occurs in this inventory\nacross all stored stacks} + p 1 item + m (Ljava/util/Set;Lnet/minecraft/class_1799;)Z method_43255 method_43255 + p 1 stack + m (Ljava/util/Set;)Z method_18862 containsAny + c {@return whether this inventory contains any of {@code items}}\n\n@see #containsAny(Predicate) + p 1 items + m (Lnet/minecraft/class_1657;)Z method_5443 canPlayerUse + c {@return whether {@code player} can use this inventory}\n\n

This is called by {@link net.minecraft.screen.ScreenHandler#canUse}.\n\n@apiNote Implementations should check the distance between the inventory\nholder and {@code player}. For convenience, this interface offers two methods\nused by block entities to implement this check.\n\n@see #canPlayerUse(BlockEntity, PlayerEntity)\n@see #canPlayerUse(BlockEntity, PlayerEntity, int) + p 1 player + m ()I method_5439 size + c {@return the size of the inventory}\n\n

The inventory should support the slot ID from {@code 0} to {@code size() - 1}.\nThis should remain constant throughout the inventory's lifetime. + m (Ljava/util/function/Predicate;)Z method_43256 containsAny + c {@return whether this inventory contains any of the stacks matching {@code\npredicate}}\n\n@see #containsAny(Set) + p 1 predicate + m (Lnet/minecraft/class_1799;)I method_58350 getMaxCount + p 1 stack + m (Lnet/minecraft/class_1263;ILnet/minecraft/class_1799;)Z method_49104 canTransferTo + c {@return whether a hopper can transfer {@code stack} from {@code slot} to\nthe hopper}\n\n

This returns {@code true} by default. + p 1 hopperInventory + p 3 stack + p 2 slot + m (II)Lnet/minecraft/class_1799; method_5434 removeStack + c Removes a specific number of items from {@code slot}.\n\n@return the removed items as a stack + p 1 slot + p 2 amount + m ()I method_5444 getMaxCountPerStack + c {@return the maximum {@linkplain ItemStack#getCount number of items} a stack\ncan contain when placed inside this inventory}\n\n

No slots may have more than this number of items. It is effectively the\nstacking limit for this inventory's slots. + m (ILnet/minecraft/class_1799;)Z method_5437 isValid + c {@return whether {@code stack} is valid for the {@code slot}}\n\n

Implementations can, for example, use this to check whether the item\nis in a specific tag. This returns {@code true} by default. + p 1 slot + p 2 stack + m (I)Lnet/minecraft/class_1799; method_5441 removeStack + c Removes the stack currently stored at {@code slot}.\n\n@return the stack previously stored at the indicated slot + p 1 slot + m (ILnet/minecraft/class_1799;)V method_5447 setStack + c Sets the stack stored at {@code slot} to {@code stack}. + p 1 slot + p 2 stack + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_1657;)Z method_49105 canPlayerUse + c {@return whether {@code player} can use this {@code blockEntity}}\n\n@apiNote This is used by block entities to implement {@link\n#canPlayerUse(PlayerEntity)}.\n\n@implNote This method checks whether the given block entity exists and whether\nthe player is within 8 blocks of the block entity.\n\n@see #canPlayerUse(BlockEntity, PlayerEntity, int) + p 1 player + p 0 blockEntity +c net/minecraft/class_1263$class_10755 net/minecraft/inventory/Inventory$Iterator + f I field_56533 index + f I field_56534 size + f Lnet/minecraft/class_1263; field_56532 inventory + m ()Lnet/minecraft/class_1799; method_67511 next + m (Lnet/minecraft/class_1263;)V + p 1 inventory +c net/minecraft/class_1262 net/minecraft/inventory/Inventories + c Contains utility methods used by {@link Inventory} implementations or for working\nwith inventories. + f Ljava/lang/String; field_49719 ITEMS_NBT_KEY + m (Lnet/minecraft/class_1799;Ljava/util/function/Predicate;IZ)I method_29235 remove + c Removes a number, not exceeding {@code maxCount}, of items from an item stack based on a predicate and returns that number.\n@return the number of items removed + p 1 shouldRemove + p 0 stack + p 3 dryRun + c whether to return the number of items which would have been removed without actually removing them + p 2 maxCount + m (Lnet/minecraft/class_11372;Lnet/minecraft/class_2371;)V method_5426 writeData + c Writes the inventory to {@code nbt}. This method will always write to the NBT,\neven if {@code stacks} only contains empty stacks.\n\n

See {@link #writeNbt(NbtCompound, DefaultedList, boolean, RegistryWrapper.WrapperLookup)}\nfor the serialization format.\n\n@see #readNbt(NbtCompound, DefaultedList, RegistryWrapper.WrapperLookup)\n@see #writeNbt(NbtCompound, DefaultedList, boolean, RegistryWrapper.WrapperLookup)\n@return the passed {@code nbt} + p 1 stacks + p 0 view + m (Lnet/minecraft/class_1263;Ljava/util/function/Predicate;IZ)I method_29234 remove + c Removes a number, not exceeding {@code maxCount}, of items from an inventory based on a predicate and returns that number.\n@return the number of items removed + p 3 dryRun + c whether to return the number of items which would have been removed without actually removing them + p 0 inventory + p 1 shouldRemove + p 2 maxCount + m (Ljava/util/List;II)Lnet/minecraft/class_1799; method_5430 splitStack + c {@return the copy of the stack split from the stack at {@code slot}}\n\n

This returns {@link ItemStack#EMPTY} when {@code slot} is out of bounds,\nthe stack at the slot is empty, or when {@code amount <= 0}.\n\n@apiNote This is used to implement {@link Inventory#removeStack(int, int)}.\nThis should not otherwise be used directly.\n\n@see ItemStack#split(int) + p 0 stacks + p 1 slot + p 2 amount + m (Lnet/minecraft/class_11372;Lnet/minecraft/class_2371;Z)V method_5427 writeData + c Writes the inventory to {@code nbt}.\n\n

The inventory is serialized as a list of non-empty item stacks.\nIn addition, each compound has a byte entry with the key {@code Slot},\nindicating the slot. The list is then written to {@code nbt} under the key {@code\nItems}.\n\n

If {@code setIfEmpty} is {@code false} and each stack in {@code stacks} is empty,\nthen {@code nbt} will not be modified at all. Otherwise, the {@code Items} entry\nwill always be present.\n\n@see #readNbt(NbtCompound, DefaultedList, RegistryWrapper.WrapperLookup)\n@return the passed {@code nbt} + p 0 view + p 2 setIfEmpty + p 1 stacks + m (Lnet/minecraft/class_11368;Lnet/minecraft/class_2371;)V method_5429 readData + c Reads {@code nbt} and sets the elements of {@code stacks} accordingly.\n\n

See {@link #writeNbt(NbtCompound, DefaultedList, boolean, RegistryWrapper.WrapperLookup)}\nfor the serialization format. If the slot is out of bounds, it is ignored.\n\n@see #writeNbt(NbtCompound, DefaultedList, RegistryWrapper.WrapperLookup)\n@see #writeNbt(NbtCompound, DefaultedList, boolean, RegistryWrapper.WrapperLookup) + p 1 stacks + p 0 view + m (Ljava/util/List;I)Lnet/minecraft/class_1799; method_5428 removeStack + c Sets the stack at {@code slot} to {@link ItemStack#EMPTY} and returns the old stack.\n\n

This returns {@link ItemStack#EMPTY} when {@code slot} is out of bounds.\n\n@apiNote This is used to implement {@link Inventory#removeStack(int)}.\nThis should not otherwise be used directly.\n\n@return the stack previously at {@code slot} + p 0 stacks + p 1 slot +c net/minecraft/class_1269 net/minecraft/util/ActionResult + c An enum indicating the hand interaction's result. Methods called on hand interaction,\nsuch as {@link net.minecraft.block.AbstractBlock#onUse}, return this. + f Lnet/minecraft/class_1269$class_9862; field_52423 PASS_TO_DEFAULT_BLOCK_ACTION + c Indicates an action is not performed and the default block action\nshould be performed instead. + f Lnet/minecraft/class_1269$class_9859; field_5811 PASS + c Indicates an action is not performed but allows other actions to\nperform. + f Lnet/minecraft/class_1269$class_9857; field_5814 FAIL + c Indicates that an action is not performed and prevents other actions\nfrom performing. + f Lnet/minecraft/class_1269$class_9860; field_52422 SUCCESS_SERVER + c Indicates an action is performed on the logical server only and the\nactor's hand should swing to indicate the performance. + f Lnet/minecraft/class_1269$class_9860; field_5812 SUCCESS + c Indicates an action is performed and the actor's hand should swing to\nindicate the performance. + f Lnet/minecraft/class_1269$class_9860; field_21466 CONSUME + c Indicates an action is performed but no animation should accompany the\nperformance. + m ()Z method_23665 isAccepted + c {@return whether an action is performed} +c net/minecraft/class_1269$class_9857 net/minecraft/util/ActionResult$Fail +c net/minecraft/class_1269$class_9859 net/minecraft/util/ActionResult$Pass +c net/minecraft/class_1269$class_9858 net/minecraft/util/ActionResult$ItemContext + f Lnet/minecraft/class_1269$class_9858; field_52424 KEEP_HAND_STACK_NO_INCREMENT_STAT + f Lnet/minecraft/class_1799; comp_2908 newHandStack + c the item stack that should replace the hand stack after an interaction, if any + f Z comp_2907 incrementStat + f Lnet/minecraft/class_1269$class_9858; field_52425 KEEP_HAND_STACK + m ()Lnet/minecraft/class_1799; comp_2908 newHandStack + m ()Z comp_2907 incrementStat + m (ZLnet/minecraft/class_1799;)V + p 1 incrementStat + p 2 newHandStack +c net/minecraft/class_1269$class_9860 net/minecraft/util/ActionResult$Success + f Lnet/minecraft/class_1269$class_9858; comp_2910 itemContext + f Lnet/minecraft/class_1269$class_9861; comp_2909 swingSource + m ()Lnet/minecraft/class_1269$class_9860; method_61394 noIncrementStat + m ()Lnet/minecraft/class_1799; method_61396 getNewHandStack + c {@return the item stack that should replace the hand stack after this interaction, if any} + m ()Z method_61395 shouldIncrementStat + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269$class_9860; method_61393 withNewHandStack + p 1 newHandStack + m ()Lnet/minecraft/class_1269$class_9861; comp_2909 swingSource + m ()Lnet/minecraft/class_1269$class_9858; comp_2910 itemContext + m (Lnet/minecraft/class_1269$class_9861;Lnet/minecraft/class_1269$class_9858;)V + p 1 swingSource + p 2 itemContext +c net/minecraft/class_1269$class_9862 net/minecraft/util/ActionResult$PassToDefaultBlockAction +c net/minecraft/class_1269$class_9861 net/minecraft/util/ActionResult$SwingSource + c Represents the side that should be considered the source of truth\nfor an arm swing, if any. + f Lnet/minecraft/class_1269$class_9861; field_52428 SERVER + f Lnet/minecraft/class_1269$class_9861; field_52426 NONE + f Lnet/minecraft/class_1269$class_9861; field_52427 CLIENT +c net/minecraft/class_2593 net/minecraft/block/entity/CommandBlockBlockEntity + f Z field_57772 DEFAULT_POWERED + f Z field_57774 DEFAULT_CONDITION_MET + f Z field_57773 DEFAULT_AUTO + f Z field_11917 conditionMet + f Lnet/minecraft/class_1918; field_11920 commandExecutor + f Z field_11918 auto + f Z field_11919 powered + m ()Z method_11046 isConditionalCommandBlock + m (Z)V method_11038 setPowered + p 1 powered + m ()Z method_11045 updateConditionMet + m ()Z method_11044 isConditionMet + m ()Lnet/minecraft/class_1918; method_11040 getCommandExecutor + m ()V method_23360 scheduleAutoTick + m ()Lnet/minecraft/class_2593$class_2594; method_11039 getCommandBlockType + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m (Z)V method_11041 setAuto + p 1 auto + m ()V method_23359 updateCommandBlock + m ()Z method_11043 isPowered + m ()Z method_11042 isAuto +c net/minecraft/class_2593$class_2594 net/minecraft/block/entity/CommandBlockBlockEntity$Type + f Lnet/minecraft/class_2593$class_2594; field_11924 REDSTONE + f Lnet/minecraft/class_2593$class_2594; field_11922 SEQUENCE + f Lnet/minecraft/class_2593$class_2594; field_11923 AUTO +c net/minecraft/class_1268 net/minecraft/util/Hand + c An enum representing an entity's hand.\n\n

If the entity is right-handed, {@link #MAIN_HAND} is of {@link Arm#RIGHT},\nand if the entity is left-handed, {@link #MAIN_HAND} is of {@link Arm#LEFT}, + f Lnet/minecraft/class_1268; field_5808 MAIN_HAND + f Lnet/minecraft/class_1268; field_5810 OFF_HAND + m ()Lnet/minecraft/class_1304; method_73186 getEquipmentSlot +c net/minecraft/class_1267 net/minecraft/world/Difficulty + f Ljava/util/function/IntFunction; field_5800 BY_ID + f I field_5803 id + f Lnet/minecraft/class_9139; field_60664 PACKET_CODEC + f Lnet/minecraft/class_3542$class_7292; field_41668 CODEC + f Ljava/lang/String; field_5806 name + f Lnet/minecraft/class_1267; field_5805 EASY + f Lnet/minecraft/class_1267; field_5802 NORMAL + f Lnet/minecraft/class_1267; field_5807 HARD + f Lnet/minecraft/class_1267; field_5801 PEACEFUL + m ()Lnet/minecraft/class_2561; method_5463 getTranslatableName + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()Ljava/lang/String; method_5460 getName + m (Ljava/lang/String;)Lnet/minecraft/class_1267; method_16691 byName + p 0 name + m (I)Lnet/minecraft/class_1267; method_5462 byId + p 0 id + m ()Lnet/minecraft/class_2561; method_48556 getInfo + m ()I method_5461 getId +c net/minecraft/class_2595 net/minecraft/block/entity/ChestBlockEntity + f I field_31332 VIEWER_COUNT_UPDATE_EVENT_TYPE + f Lnet/minecraft/class_5561; field_27209 stateManager + f Lnet/minecraft/class_2561; field_63039 CONTAINER_NAME_TEXT + f Lnet/minecraft/class_2371; field_11927 inventory + f Lnet/minecraft/class_5560; field_27210 lidAnimator + m ()V method_31671 onScheduledTick + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2595;)V method_31670 clientTick + p 2 state + p 3 blockEntity + p 0 world + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3414;)V method_11050 playSound + p 3 soundEvent + p 0 world + p 1 pos + p 2 state + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;II)V method_11049 onViewerCountUpdate + p 2 pos + p 1 world + p 5 newViewerCount + p 4 oldViewerCount + p 3 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)I method_11048 getPlayersLookingInChestCount + p 0 world + p 1 pos + m (Lnet/minecraft/class_2595;Lnet/minecraft/class_2595;)V method_11047 copyInventory + p 0 from + p 1 to +c net/minecraft/class_1266 net/minecraft/world/LocalDifficulty + f F field_5799 localDifficulty + f Lnet/minecraft/class_1267; field_5798 globalDifficulty + m ()F method_5458 getClampedLocalDifficulty + m ()F method_5457 getLocalDifficulty + m (F)Z method_5455 isHarderThan + p 1 difficulty + m ()Lnet/minecraft/class_1267; method_5454 getGlobalDifficulty + m ()Z method_35020 isAtLeastHard + m (Lnet/minecraft/class_1267;JJF)V + p 4 inhabitedTime + p 2 timeOfDay + p 6 moonSize + p 1 difficulty + m (Lnet/minecraft/class_1267;JJF)F method_5456 setLocalDifficulty + p 1 difficulty + p 4 inhabitedTime + p 2 timeOfDay + p 6 moonSize +c net/minecraft/class_2596 net/minecraft/network/packet/Packet + m (Lnet/minecraft/class_2547;)V method_65081 apply + p 1 listener + m (Lnet/minecraft/class_9143;Lnet/minecraft/class_9141;)Lnet/minecraft/class_9139; method_56443 createCodec + p 1 decoder + p 0 encoder + m ()Z method_55943 transitionsNetworkState + c {@return {@code true} if the packet signals transitioning between {@link\nnet.minecraft.network.NetworkState}s}\n\n

Such packets cannot be {@linkplain net.minecraft.network.packet.BundlePacket bundled}. + m ()Z method_11051 isWritingErrorSkippable + c {@return whether a throwable in writing of this packet allows the\nconnection to simply skip the packet's sending than disconnecting} + m ()Lnet/minecraft/class_9145; method_65080 getPacketType +c net/minecraft/class_1259 net/minecraft/entity/boss/BossBar + f Ljava/util/UUID; field_5772 uuid + f Z field_5776 darkenSky + f Lnet/minecraft/class_1259$class_1260; field_5778 color + f F field_5774 percent + f Lnet/minecraft/class_1259$class_1261; field_5779 style + f Z field_5773 thickenFog + f Z field_5775 dragonMusic + f Lnet/minecraft/class_2561; field_5777 name + m (Z)Lnet/minecraft/class_1259; method_5410 setDragonMusic + p 1 dragonMusic + m ()Z method_5418 hasDragonMusic + m (Z)Lnet/minecraft/class_1259; method_5406 setDarkenSky + p 1 darkenSky + m (Lnet/minecraft/class_2561;)V method_5413 setName + p 1 name + m ()Lnet/minecraft/class_2561; method_5414 getName + m ()F method_5412 getPercent + m ()Lnet/minecraft/class_1259$class_1260; method_5420 getColor + m (Lnet/minecraft/class_1259$class_1260;)V method_5416 setColor + p 1 color + m ()Lnet/minecraft/class_1259$class_1261; method_5415 getStyle + m (Z)Lnet/minecraft/class_1259; method_5411 setThickenFog + p 1 thickenFog + m ()Ljava/util/UUID; method_5407 getUuid + m ()Z method_5419 shouldThickenFog + m (Ljava/util/UUID;Lnet/minecraft/class_2561;Lnet/minecraft/class_1259$class_1260;Lnet/minecraft/class_1259$class_1261;)V + p 4 style + p 3 color + p 2 name + p 1 uuid + m ()Z method_5417 shouldDarkenSky + m (Lnet/minecraft/class_1259$class_1261;)V method_5409 setStyle + p 1 style + m (F)V method_5408 setPercent + p 1 percent +c net/minecraft/class_1259$class_1261 net/minecraft/entity/boss/BossBar$Style + f Ljava/lang/String; field_5794 name + f Lcom/mojang/serialization/Codec; field_56629 CODEC + f Lnet/minecraft/class_1259$class_1261; field_5795 PROGRESS + f Lnet/minecraft/class_1259$class_1261; field_5796 NOTCHED_6 + f Lnet/minecraft/class_1259$class_1261; field_5790 NOTCHED_20 + f Lnet/minecraft/class_1259$class_1261; field_5791 NOTCHED_10 + f Lnet/minecraft/class_1259$class_1261; field_5793 NOTCHED_12 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()Ljava/lang/String; method_5425 getName +c net/minecraft/class_1259$class_1260 net/minecraft/entity/boss/BossBar$Color + f Ljava/lang/String; field_5781 name + f Lnet/minecraft/class_124; field_5787 format + f Lcom/mojang/serialization/Codec; field_56628 CODEC + f Lnet/minecraft/class_1259$class_1260; field_5785 GREEN + f Lnet/minecraft/class_1259$class_1260; field_5786 WHITE + f Lnet/minecraft/class_1259$class_1260; field_5788 PINK + f Lnet/minecraft/class_1259$class_1260; field_5782 YELLOW + f Lnet/minecraft/class_1259$class_1260; field_5783 PURPLE + f Lnet/minecraft/class_1259$class_1260; field_5784 RED + f Lnet/minecraft/class_1259$class_1260; field_5780 BLUE + m ()Ljava/lang/String; method_5421 getName + m ()Lnet/minecraft/class_124; method_5423 getTextFormat + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_124;)V + p 3 name + p 4 format +c net/minecraft/class_813 net/minecraft/client/render/model/json/ModelVariant + f Lcom/mojang/serialization/Codec; field_56933 CODEC + f Lcom/mojang/serialization/MapCodec; field_57947 MAP_CODEC + f Lnet/minecraft/class_2960; comp_3379 modelId + f Lnet/minecraft/class_813$class_10803; comp_3754 modelState + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_813; method_67936 withModel + p 1 modelId + m (Lnet/minecraft/class_10821;)Lnet/minecraft/class_813; method_67940 withRotationX + p 1 amount + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_813$class_10803;)V + p 1 location + p 2 modelState + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67937 method_67937 + p 0 instance + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_10821;)Lnet/minecraft/class_813; method_67942 withRotationY + p 1 amount + m (Lnet/minecraft/class_2960;)V + p 1 model + m (Lnet/minecraft/class_10804;)Lnet/minecraft/class_813; method_67939 with + p 1 variantOperator + m ()Lnet/minecraft/class_2960; comp_3379 modelId + m (Lnet/minecraft/class_813$class_10803;)Lnet/minecraft/class_813; method_67938 setState + p 1 modelState + m (Lnet/minecraft/class_10821;)Lnet/minecraft/class_813; method_76657 withRotationZ + p 1 amount + m (Z)Lnet/minecraft/class_813; method_67941 withUVLock + p 1 uvLock + m ()Lnet/minecraft/class_813$class_10803; comp_3754 modelState +c net/minecraft/class_813$class_10803 net/minecraft/client/render/model/json/ModelVariant$ModelState + f Lcom/mojang/serialization/MapCodec; field_56934 CODEC + f Lnet/minecraft/class_813$class_10803; field_56935 DEFAULT + f Lnet/minecraft/class_10821; comp_3756 y + f Lnet/minecraft/class_10821; comp_3755 x + f Lnet/minecraft/class_10821; comp_5252 z + f Z comp_3757 uvLock + m (Z)Lnet/minecraft/class_813$class_10803; method_67946 setUVLock + p 1 uvLock + m ()Lnet/minecraft/class_3665; method_67943 asModelBakeSettings + m (Lnet/minecraft/class_10821;)Lnet/minecraft/class_813$class_10803; method_67945 setRotationX + p 1 amount + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67944 method_67944 + p 0 instance + m (Lnet/minecraft/class_10821;)Lnet/minecraft/class_813$class_10803; method_67947 setRotationY + p 1 amount + m (Lnet/minecraft/class_10821;)Lnet/minecraft/class_813$class_10803; method_76658 setRotationZ + p 1 amount + m ()Lnet/minecraft/class_10821; comp_3756 y + m ()Lnet/minecraft/class_10821; comp_3755 x + m ()Lnet/minecraft/class_10821; comp_5252 z + m ()Z comp_3757 uvLock + m (Lnet/minecraft/class_10821;Lnet/minecraft/class_10821;Lnet/minecraft/class_10821;Z)V + p 1 x + p 2 y + p 3 z + p 4 uvLock +c net/minecraft/class_1270 net/minecraft/screen/ScreenHandlerFactory + c A functional interface to create a new screen handler (menu) on the server.\n\n

This interface itself is not used directly. Instead, the subinterface\n{@link NamedScreenHandlerFactory} is passed to {@link\nnet.minecraft.entity.player.PlayerEntity#openHandledScreen}. In vanilla,\nblock entity instances implement that interface, allowing them to be passed.\n{@link SimpleNamedScreenHandlerFactory} is a screen handler factory implementation\nfor use cases that do not involve a block entity.\n\n

The factory should create a new instance of a screen handler with the server-side\nconstructor (one that takes inventories, etc). If the screen handler requires\na property delegate or a context, create an instance and pass it here.\n\n@see ScreenHandler\n@see NamedScreenHandlerFactory + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1703; createMenu createMenu + p 3 player + p 2 playerInventory + p 1 syncId +c net/minecraft/class_811 net/minecraft/item/ItemDisplayContext + f Ljava/util/function/IntFunction; field_42469 FROM_INDEX + f Ljava/lang/String; field_42471 name + f Lcom/mojang/serialization/Codec; field_42468 CODEC + f B field_42470 index + f Lnet/minecraft/class_811; field_61988 ON_SHELF + f Lnet/minecraft/class_811; field_4323 THIRD_PERSON_LEFT_HAND + f Lnet/minecraft/class_811; field_4322 FIRST_PERSON_RIGHT_HAND + f Lnet/minecraft/class_811; field_4321 FIRST_PERSON_LEFT_HAND + f Lnet/minecraft/class_811; field_4320 THIRD_PERSON_RIGHT_HAND + f Lnet/minecraft/class_811; field_4319 FIXED + f Lnet/minecraft/class_811; field_4318 GROUND + f Lnet/minecraft/class_811; field_4317 GUI + f Lnet/minecraft/class_811; field_4316 HEAD + f Lnet/minecraft/class_811; field_4315 NONE + m ()Z method_67675 isLeftHand + m ()B method_48961 getIndex + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 index + p 4 name + m ()Z method_29998 isFirstPerson +c net/minecraft/class_1275 net/minecraft/util/Nameable + c Represents something that can be named, such as block entities or entities. + m ()Ljava/lang/String; method_74861 getStringifiedName + m ()Lnet/minecraft/class_2561; method_5477 getName + c {@return the name of this object}\n\n

This should return {@linkplain #getCustomName the custom name} if it exists,\notherwise the default name. This should not have styling applied. + m ()Lnet/minecraft/class_2561; method_5476 getDisplayName + c {@return the display name of this object}\n\n

By default, this returns the result of {@link #getName}. The return value can\nhave styling applied. + m ()Lnet/minecraft/class_2561; method_5797 getCustomName + c {@return the custom name of this object, or {@code null} if there is none} + m ()Z method_16914 hasCustomName + c {@return whether this object has a custom name} +c net/minecraft/class_1273 net/minecraft/inventory/ContainerLock + f Lnet/minecraft/class_1273; field_5817 EMPTY + c An empty container lock that can always be opened. + f Lcom/mojang/serialization/Codec; field_49206 CODEC + f Ljava/lang/String; field_29956 LOCK_KEY + f Lnet/minecraft/class_2073; comp_3222 predicate + m (Lnet/minecraft/class_11368;)Lnet/minecraft/class_1273; method_5473 read + c Creates a new {@code ContainerLock} from the {@code Lock} key of the NBT compound.\n

\nIf the {@code Lock} key is not present, returns an empty lock. + p 0 view + m (Lnet/minecraft/class_11372;)V method_5474 write + c Inserts the key string of this lock into the {@code Lock} key of the NBT compound. + p 1 view + m (Lnet/minecraft/class_1657;)Z method_76770 checkUnlocked + p 1 player + m (Lnet/minecraft/class_1799;)Z method_5472 canOpen + c Returns true if this lock can be opened with the key item stack.\n

\nAn item stack is a valid key if the stack name matches the key string of this lock,\nor if the key string is empty. + p 1 stack + m ()Lnet/minecraft/class_2073; comp_3222 predicate + m (Lnet/minecraft/class_2073;)V + p 1 predicate +c net/minecraft/class_1278 net/minecraft/inventory/SidedInventory + c A special inventory interface for inventories that expose different slots for different sides, such as furnaces. + m (ILnet/minecraft/class_1799;Lnet/minecraft/class_2350;)Z method_5492 canInsert + c {@return whether the given stack can be inserted into this inventory\nat the specified slot position from the given direction} + p 1 slot + p 2 stack + p 3 dir + m (ILnet/minecraft/class_1799;Lnet/minecraft/class_2350;)Z method_5493 canExtract + c {@return whether the given stack can be removed from this inventory at the\nspecified slot position from the given direction} + p 3 dir + p 1 slot + p 2 stack + m (Lnet/minecraft/class_2350;)[I method_5494 getAvailableSlots + c {@return the available slot positions that are reachable from a given side} + p 1 side +c net/minecraft/class_1277 net/minecraft/inventory/SimpleInventory + c A generic implementation of {@link Inventory}. This is used in a number of\nplaces, mostly:\n\n

    \n
  • To store the input of a {@link net.minecraft.screen.ScreenHandler} while\nit is open. The inventory is stored as a field, and the screen handler will have\na slot backed by that inventory.
  • \n
  • When defining the clientside constructor for a {@link\nnet.minecraft.screen.ScreenHandler} subclass. The contents of the inventory will\nthen be automatically synced from the serverside screen handler, which queries\nthe original inventory.
  • \n
  • For entities and block entities which do not interact with hoppers and therefore\ndo not need to implement {@link Inventory} themselves.\n
\n\n

Changes to the inventory can be listened to either by subclassing this and\noverriding {@link #markDirty}, or by using {@link #addListener}. + f I field_5831 size + f Lnet/minecraft/class_2371; field_5828 heldStacks + f Ljava/util/List; field_5829 listeners + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V method_20632 transfer + p 2 target + p 1 source + m (Lnet/minecraft/class_1799;)V method_20633 addToNewSlot + p 1 stack + m (Lnet/minecraft/class_1799;)V method_20634 addToExistingSlot + p 1 stack + m (Lnet/minecraft/class_1799;)Z method_20635 method_20635 + p 0 stack + m (Lnet/minecraft/class_11368$class_11369;)V method_7659 readDataList + c Reads the item stacks from {@code nbtList}.\n\n@see #toNbtList + p 1 list + m (Lnet/minecraft/class_1792;I)Lnet/minecraft/class_1799; method_20631 removeItem + c Searches this inventory for the specified item and removes the given amount from this inventory.\n\n@return the stack of removed items + p 2 count + p 1 item + m (Lnet/minecraft/class_11372$class_11373;)V method_7660 toDataList + c {@return an NBT list of non-empty {@linkplain ItemStack#encode(RegistryWrapper.WrapperLookup) item stacks}}\n\n

Unlike {@link Inventories#writeNbt(NbtCompound, DefaultedList, boolean, RegistryWrapper.WrapperLookup)},\nthis does not serialize the slots.\n\n@see #readNbtList + p 1 list + m (Lnet/minecraft/class_1799;)Z method_27070 canInsert + c {@return whether {@code stack} can be inserted into this inventory} + p 1 stack + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_5491 addStack + c Adds {@code stack} to this inventory as much as possible. It is possible\nthat the item stack gets inserted into a non-empty slot or spread across\nseveral slots, if it can combine with other stack(s) in this inventory.\n\n@return the leftover part of the stack, or {@code ItemStack#EMPTY} if the entire\nstack fit inside the inventory + p 1 stack + m (Lnet/minecraft/class_1265;)V method_5488 removeListener + c Removes a {@code listener} previously added by {@code #addListener}.\nDoes nothing when the listener was not found. + p 1 listener + m ()Lnet/minecraft/class_2371; method_54454 getHeldStacks + m (Lnet/minecraft/class_1265;)V method_5489 addListener + c Adds a {@code listener} for inventory modifications. If a listener is\nadded multiple times, it will also be triggered multiple times. + p 1 listener + m ()Ljava/util/List; method_24514 clearToList + c Clears this inventory and returns all the non-empty stacks in a list.\n\n@return the non-empty stacks previously in the inventory + m (Lnet/minecraft/class_1799;)Z method_24513 method_24513 + p 0 stack + m (I)V + p 1 size + m ([Lnet/minecraft/class_1799;)V + p 1 items +c com/mojang/blaze3d/textures/GpuTexture com/mojang/blaze3d/textures/GpuTexture + m (ILjava/lang/String;Lcom/mojang/blaze3d/textures/TextureFormat;IIII)V + p 2 label + p 1 usage + p 6 depthOrLayers + p 5 height + p 4 width + p 3 format + p 7 mipLevels + m (I)I getHeight getHeight + p 1 mipLevel + m (I)I getWidth getWidth + p 1 mipLevel +c com/mojang/blaze3d/textures/GpuTexture$class_12115 com/mojang/blaze3d/textures/GpuTexture$Usage +c net/minecraft/class_804 net/minecraft/client/render/model/json/Transformation + f Lnet/minecraft/class_804; field_4284 IDENTITY + f Lorg/joml/Vector3fc; comp_3747 rotation + f Lorg/joml/Vector3fc; comp_3748 translation + f Lorg/joml/Vector3fc; comp_3749 scale + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lorg/joml/Vector3fc; comp_3747 rotation + m ()Lorg/joml/Vector3fc; comp_3748 translation + m (ZLnet/minecraft/class_4587$class_4665;)V method_23075 apply + p 1 leftHanded + p 2 entry + m ()Lorg/joml/Vector3fc; comp_3749 scale + m (Lorg/joml/Vector3fc;Lorg/joml/Vector3fc;Lorg/joml/Vector3fc;)V + p 1 rotation + p 2 translation + p 3 scale +c net/minecraft/class_804$class_805 net/minecraft/client/render/model/json/Transformation$Deserializer + f Lorg/joml/Vector3f; field_4288 DEFAULT_ROTATION + f Lorg/joml/Vector3f; field_4290 DEFAULT_TRANSLATION + f F field_32808 MAX_TRANSLATION + f Lorg/joml/Vector3f; field_4289 DEFAULT_SCALE + f F field_32809 MAX_SCALE + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lorg/joml/Vector3f;)Lorg/joml/Vector3f; method_3493 parseVector3f + p 1 json + p 3 fallback + p 2 key + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Ljava/lang/Object; deserialize deserialize + p 2 unused + p 1 functionJson + p 3 context + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/class_804; method_3494 deserialize +c net/minecraft/class_809 net/minecraft/client/render/model/json/ModelTransformation + f Lnet/minecraft/class_804; comp_3370 firstPersonLeftHand + f Lnet/minecraft/class_804; comp_3371 firstPersonRightHand + f Lnet/minecraft/class_804; comp_3372 head + f Lnet/minecraft/class_809; field_4301 NONE + f Lnet/minecraft/class_804; comp_3368 thirdPersonLeftHand + f Lnet/minecraft/class_804; comp_3369 thirdPersonRightHand + f Lnet/minecraft/class_804; comp_3373 gui + f Lnet/minecraft/class_804; comp_3374 ground + f Lnet/minecraft/class_804; comp_3375 fixed + f Lnet/minecraft/class_804; comp_4619 fixedFromBottom + m ()Lnet/minecraft/class_804; comp_3370 firstPersonLeftHand + m ()Lnet/minecraft/class_804; comp_3371 firstPersonRightHand + m ()Lnet/minecraft/class_804; comp_3372 head + m (Lnet/minecraft/class_811;)Lnet/minecraft/class_804; method_3503 getTransformation + p 1 renderMode + m ()Lnet/minecraft/class_804; comp_3368 thirdPersonLeftHand + m ()Lnet/minecraft/class_804; comp_3369 thirdPersonRightHand + m (Lnet/minecraft/class_804;Lnet/minecraft/class_804;Lnet/minecraft/class_804;Lnet/minecraft/class_804;Lnet/minecraft/class_804;Lnet/minecraft/class_804;Lnet/minecraft/class_804;Lnet/minecraft/class_804;Lnet/minecraft/class_804;)V + p 2 thirdPersonRightHand + p 3 firstPersonLeftHand + p 1 thirdPersonLeftHand + p 8 fixed + p 6 gui + p 7 ground + p 4 firstPersonRightHand + p 5 head + p 9 fixedFromBottom + m ()Lnet/minecraft/class_804; comp_3373 gui + m ()Lnet/minecraft/class_804; comp_3374 ground + m ()Lnet/minecraft/class_804; comp_3375 fixed + m ()Lnet/minecraft/class_804; comp_4619 fixedFromBottom +c net/minecraft/class_809$class_810 net/minecraft/client/render/model/json/ModelTransformation$Deserializer + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;Lnet/minecraft/class_811;)Lnet/minecraft/class_804; method_3504 parseModelTransformation + p 3 displayContext + p 2 json + p 1 ctx + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Ljava/lang/Object; deserialize deserialize + p 2 unused + p 3 context + p 1 functionJson + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/class_809; method_3505 deserialize +c net/minecraft/class_807 net/minecraft/client/render/model/json/WeightedVariant + f Lnet/minecraft/class_6012; comp_3049 variants + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_1087$class_10892; method_68471 toModel + m (Lnet/minecraft/class_10804;)Lnet/minecraft/class_807; method_67929 apply + p 1 operator + m ()Lnet/minecraft/class_6012; comp_3049 variants + m (Lnet/minecraft/class_6012;)V + p 1 variants +c net/minecraft/class_2570 net/minecraft/block/WitherSkullBlock + f Lnet/minecraft/class_2700; field_11765 witherBossPattern + f Lcom/mojang/serialization/MapCodec; field_46504 CODEC + f Lnet/minecraft/class_2700; field_11764 witherDispenserPattern + m (Lnet/minecraft/class_2694;)Z method_51174 method_51174 + p 0 pos + m ()Lnet/minecraft/class_2700; method_10900 getWitherBossPattern + m (Lnet/minecraft/class_2694;)Z method_51175 method_51175 + p 0 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2631;)V method_10898 onPlaced + p 0 world + p 2 blockEntity + p 1 pos + m ()Lnet/minecraft/class_2700; method_10897 getWitherDispenserPattern + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)Z method_10899 canDispense + p 0 world + p 1 pos + p 2 stack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_56119 onPlaced + p 1 pos + p 0 world + m (Lnet/minecraft/class_2694;)Z method_24799 method_24799 + p 0 pos + m (Lnet/minecraft/class_2694;)Z method_24798 method_24798 + p 0 pos +c net/minecraft/class_824 net/minecraft/client/render/block/entity/BlockEntityRenderManager + f Lnet/minecraft/class_776; field_27747 blockRenderManager + f Lnet/minecraft/class_918; field_38880 itemRenderer + f Lnet/minecraft/class_10442; field_55283 itemModelManager + f Lnet/minecraft/class_327; field_4342 textRenderer + f Ljava/util/function/Supplier; field_27746 entityModelsGetter + f Lnet/minecraft/class_11701; field_61783 spriteHolder + f Ljava/util/Map; field_4345 renderers + f Lnet/minecraft/class_243; field_63069 cameraPos + f Lnet/minecraft/class_11786; field_62250 playerSkinCache + f Lnet/minecraft/class_898; field_38881 entityRenderDispatcher + m (Lnet/minecraft/class_2586;FLnet/minecraft/class_11683$class_11792;)Lnet/minecraft/class_11954; method_74348 getRenderState + p 3 crumblingOverlay + p 2 tickProgress + p 1 blockEntity + m (Lnet/minecraft/class_11954;)Lnet/minecraft/class_827; method_74349 getByRenderState + p 1 renderState + m (Lnet/minecraft/class_4184;)V method_3549 configure + p 1 camera + m (Lnet/minecraft/class_327;Ljava/util/function/Supplier;Lnet/minecraft/class_776;Lnet/minecraft/class_10442;Lnet/minecraft/class_918;Lnet/minecraft/class_898;Lnet/minecraft/class_11701;Lnet/minecraft/class_11786;)V + p 8 playerSkinCache + p 1 textRenderer + p 2 entityModelsGetter + p 3 blockRenderManager + p 4 itemModelManager + p 5 itemRenderer + p 6 entityRenderDispatcher + p 7 spriteHolder + m (Lnet/minecraft/class_2586;)Lnet/minecraft/class_827; method_3550 get + p 1 blockEntity + m (Lnet/minecraft/class_11954;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3555 render + p 4 cameraRenderState + p 2 matrices + p 3 queue + p 1 renderState +c net/minecraft/class_823 net/minecraft/client/render/block/entity/BannerBlockEntityRenderer + f I field_32819 ROTATIONS + f Lnet/minecraft/class_10377; field_55157 wallFlagModel + f Lnet/minecraft/class_10378; field_55155 wallModel + f Lnet/minecraft/class_10377; field_55156 standingFlagModel + f Lnet/minecraft/class_10378; field_55154 standingModel + f Lnet/minecraft/class_11701; field_61779 materials + m ()Lnet/minecraft/class_11949; method_74336 createRenderState + m (Lnet/minecraft/class_11701;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IILnet/minecraft/class_3879;Ljava/lang/Object;Lnet/minecraft/class_4730;ZLnet/minecraft/class_1767;Lnet/minecraft/class_9307;ZLnet/minecraft/class_11683$class_11792;I)V method_23802 renderCanvas + p 3 light + p 4 overlay + p 1 matrices + p 2 queue + p 7 spriteId + p 8 useBannerLayer + p 5 model + p 6 state + p 9 color + p 10 patterns + p 0 materials + m (Lnet/minecraft/class_2573;Lnet/minecraft/class_11949;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74337 updateRenderState + m (Ljava/util/function/Consumer;)V method_72158 collectVertices + m (Lnet/minecraft/class_11701;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IIFLnet/minecraft/class_10378;Lnet/minecraft/class_10377;FLnet/minecraft/class_1767;Lnet/minecraft/class_9307;Lnet/minecraft/class_11683$class_11792;I)V method_65555 render + p 7 flagModel + p 6 model + p 5 yaw + p 4 overlay + p 11 crumblingOverlay + p 10 bannerPatterns + p 9 dyeColor + p 8 pitch + p 3 light + p 2 queue + p 1 matrices + p 0 materials + m (Lnet/minecraft/class_10515$class_11695;)V + p 1 context + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IILnet/minecraft/class_1767;Lnet/minecraft/class_9307;I)V method_65556 renderAsItem + p 5 baseColor + p 4 overlay + p 6 patterns + p 1 matrices + p 3 light + p 2 queue + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 context + m (Lnet/minecraft/class_11949;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3546 render + m (Lnet/minecraft/class_11701;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IILnet/minecraft/class_3879;Ljava/lang/Object;Lnet/minecraft/class_4730;Lnet/minecraft/class_1767;Lnet/minecraft/class_11683$class_11792;)V method_58140 renderLayer + p 0 materials + p 1 matrices + p 2 queue + p 3 light + p 4 overlay + p 5 model + p 6 state + p 7 spriteId + p 8 color + p 9 crumblingOverlay + m (Lnet/minecraft/class_5599;Lnet/minecraft/class_11701;)V + p 1 models + p 2 materials +c net/minecraft/class_822 net/minecraft/client/render/block/entity/BeaconBlockEntityRenderer + f I field_32822 MAX_BEAM_HEIGHT + f Lnet/minecraft/class_2960; field_4338 BEAM_TEXTURE + m (Lnet/minecraft/class_11950;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_74342 render + m (Lnet/minecraft/class_10633$class_2581;)Lnet/minecraft/class_11950$class_11951; method_74339 method_74339 + p 0 beamSegment + m ()Lnet/minecraft/class_11950; method_74338 createRenderState + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;IIIFFFFFFFF)V method_22740 renderBeamFace + p 0 matrix + p 1 vertices + p 12 v2 + p 10 u2 + p 11 v1 + p 8 z2 + p 9 u1 + p 6 z1 + p 7 x2 + p 4 height + p 5 x1 + p 2 color + p 3 yOffset + m (IIIFFFFFFLnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_73535 method_73535 + p 9 matricesEntry + p 10 vertexConsumer + m (IIIFFFFFFFFFFLnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_73534 method_73534 + p 14 vertexConsumer + p 13 matricesEntry + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_11950;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74341 updateRenderState + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;IIFFFF)V method_23076 renderBeamVertex + p 2 color + p 3 y + p 0 matrix + p 1 vertices + p 6 u + p 7 v + p 4 x + p 5 z + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;IIIFFFFFFFFFFFF)V method_22741 renderBeamLayer + p 1 vertices + p 2 color + p 3 yOffset + p 4 height + p 5 x1 + p 6 z1 + p 7 x2 + p 8 z2 + p 9 x3 + p 10 z3 + p 11 x4 + p 12 z4 + p 13 u1 + p 14 u2 + p 15 v1 + p 16 v2 + p 0 matricesEntry + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;FFIII)V method_3543 renderBeam + p 1 queue + p 2 scale + p 0 matrices + p 5 maxHeight + p 6 color + p 3 rotationDegrees + p 4 minHeight + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_2960;FFIIIFF)V method_3545 renderBeam + p 5 minHeight + p 4 beamRotationDegrees + p 3 beamHeight + p 2 textureId + p 1 queue + p 0 matrices + p 9 outerScale + p 8 innerScale + p 7 color + p 6 maxHeight + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_11950;FLnet/minecraft/class_243;)V method_74340 updateBeaconRenderState + p 0 blockEntity + p 2 tickProgress + p 1 state + p 3 cameraPos +c net/minecraft/class_2575 net/minecraft/text/BlockNbtDataSource + f Lnet/minecraft/class_2267; comp_734 pos + f Ljava/lang/String; comp_733 rawPos + f Lcom/mojang/serialization/MapCodec; field_46614 CODEC + m ()Lnet/minecraft/class_2267; comp_734 pos + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/lang/String; comp_733 rawPos + m (Ljava/lang/String;)Lnet/minecraft/class_2267; method_16121 parsePos + p 0 string + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54226 method_54226 + p 0 instance + m (Ljava/lang/String;)V + p 1 rawPath + m (Ljava/lang/String;Lnet/minecraft/class_2267;)V + p 1 rawPath + p 2 pos +c net/minecraft/class_1243 net/minecraft/datafixer/schema/Schema1510 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_2576 net/minecraft/text/EntityNbtDataSource + f Ljava/lang/String; comp_735 rawSelector + f Lnet/minecraft/class_2300; comp_736 selector + f Lcom/mojang/serialization/MapCodec; field_46617 CODEC + m (Ljava/lang/String;)Lnet/minecraft/class_2300; method_10923 parseSelector + p 0 rawSelector + m ()Ljava/lang/String; comp_735 rawSelector + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_2300; comp_736 selector + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54227 method_54227 + p 0 instance + m (Ljava/lang/String;)V + p 1 rawPath + m (Ljava/lang/String;Lnet/minecraft/class_2300;)V + p 1 rawPath + p 2 selector +c net/minecraft/class_1242 net/minecraft/datafixer/schema/Schema1483 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_1241 net/minecraft/datafixer/schema/Schema1486 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_2577 net/minecraft/block/CarpetBlock + f Lnet/minecraft/class_265; field_11783 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46301 CODEC +c net/minecraft/class_2578 net/minecraft/text/ScoreTextContent + f Lcom/mojang/datafixers/util/Either; comp_3078 name + f Lcom/mojang/serialization/MapCodec; field_46627 CODEC + f Ljava/lang/String; comp_3079 objective + f Lcom/mojang/serialization/MapCodec; field_46626 INNER_CODEC + m (Lcom/mojang/datafixers/util/Either;Ljava/lang/String;)V + p 2 objective + p 1 name + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_2168;)Lnet/minecraft/class_9015; method_27699 getScoreHolder + p 1 source + m ()Lcom/mojang/datafixers/util/Either; comp_3078 name + m (Lnet/minecraft/class_9015;Lnet/minecraft/class_2168;)Lnet/minecraft/class_5250; method_27700 getScore + p 2 source + p 1 scoreHolder + m ()Ljava/lang/String; comp_3079 objective + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54233 method_54233 + p 0 instance +c net/minecraft/class_1240 net/minecraft/datafixer/schema/Schema1470 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_5280 targetEntityItems + p 2 entityId + p 0 schema + p 1 map + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5282 method_5282 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_1247 net/minecraft/datafixer/schema/Schema501 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 2 parent + p 1 versionKey +c net/minecraft/class_2572 net/minecraft/text/KeybindTextContent + c The keybind text content. This {@link #getTranslated()} implementation\nis not thread-safe. + f Ljava/util/function/Supplier; field_11768 translated + f Lcom/mojang/serialization/MapCodec; field_46619 CODEC + f Ljava/lang/String; field_11767 key + m (Lnet/minecraft/class_2572;)Ljava/lang/String; method_54229 method_54229 + p 0 content + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54228 method_54228 + p 0 instance + m (Ljava/lang/String;)V + p 1 key + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/lang/String; method_10901 getKey + m ()Lnet/minecraft/class_2561; method_27691 getTranslated +c net/minecraft/class_1246 net/minecraft/datafixer/schema/Schema700 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 2 parent + p 1 versionKey +c net/minecraft/class_1245 net/minecraft/datafixer/schema/Schema1800 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5287 method_5287 + p 1 name +c net/minecraft/class_2573 net/minecraft/block/entity/BannerBlockEntity + f Lnet/minecraft/class_2561; field_11772 customName + f Lnet/minecraft/class_1767; field_11774 baseColor + f I field_31296 MAX_PATTERN_COUNT + f Ljava/lang/String; field_31297 PATTERNS_KEY + f Lnet/minecraft/class_9307; field_49756 patterns + f Lnet/minecraft/class_2561; field_63035 BLOCK_NAME + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state + m ()Lnet/minecraft/class_9307; method_58122 getPatterns + m ()Lnet/minecraft/class_2622; method_16886 toUpdatePacket + m ()Lnet/minecraft/class_1799; method_10907 getPickStack + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1767;)V + p 2 state + p 1 pos + p 3 baseColor + m ()Lnet/minecraft/class_1767; method_10908 getColorForState +c net/minecraft/class_2574 net/minecraft/text/NbtTextContent + f Lnet/minecraft/class_2203$class_2209; field_11779 path + f Z field_11778 interpret + f Lorg/slf4j/Logger; field_11777 LOGGER + f Lcom/mojang/serialization/MapCodec; field_46621 CODEC + f Ljava/lang/String; field_11776 rawPath + f Ljava/util/Optional; field_33539 separator + f Lnet/minecraft/class_7419; field_39014 dataSource + m (Ljava/lang/String;ZLjava/util/Optional;Lnet/minecraft/class_7419;)V + p 1 rawPath + p 2 interpret + p 3 separator + p 4 dataSource + m ()Lnet/minecraft/class_7419; method_43485 getDataSource + m ()Ljava/util/Optional; method_43484 getSeparator + m (Ljava/lang/String;)Lnet/minecraft/class_2203$class_2209; method_10919 parsePath + p 0 rawPath + m (Ljava/util/stream/Stream;Lnet/minecraft/class_5250;)Lnet/minecraft/class_5250; method_36334 method_36334 + p 1 text + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/lang/String; method_10920 getPath + m ()Z method_10921 shouldInterpret + m (Lnet/minecraft/class_5250;Lnet/minecraft/class_5250;Lnet/minecraft/class_5250;)Lnet/minecraft/class_5250; method_36335 method_36335 + p 2 current + p 1 accumulator + m (Lnet/minecraft/class_6903;Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;ILnet/minecraft/class_2520;)Ljava/util/stream/Stream; method_10917 method_10917 + p 4 nbt + m (Ljava/lang/String;Lnet/minecraft/class_2203$class_2209;ZLjava/util/Optional;Lnet/minecraft/class_7419;)V + p 5 dataSource + p 4 separator + p 3 interpret + p 2 path + p 1 rawPath + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_5250;Lnet/minecraft/class_5250;)Lnet/minecraft/class_5250; method_15880 method_15880 + p 1 accumulator + p 2 current + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54230 method_54230 + p 0 instance + m (Lnet/minecraft/class_2520;)Ljava/lang/String; method_68667 asString + p 0 nbt + m (Lnet/minecraft/class_2487;)Ljava/util/stream/Stream; method_10918 method_10918 + p 1 nbt +c net/minecraft/class_1244 net/minecraft/datafixer/schema/Schema1801 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_1239 net/minecraft/datafixer/schema/Schema1481 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_1238 net/minecraft/datafixer/schema/Schema1460 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5233 method_5233 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5255 method_5255 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5277 method_5277 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5245 method_5245 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5275 method_5275 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5265 method_5265 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5241 method_5241 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5263 method_5263 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_5232 targetEntityItems + p 1 map + p 0 schema + p 2 entityId + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5249 method_5249 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5279 method_5279 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5244 method_5244 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5234 method_5234 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5256 method_5256 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5278 method_5278 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5264 method_5264 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5262 method_5262 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5252 method_5252 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5250 method_5250 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_5273 registerInventory + p 0 schema + p 2 name + p 1 map + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5270 method_5270 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 1 schema + p 2 entityTypes + p 3 blockEntityTypes + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5238 method_5238 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5246 method_5246 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5258 method_5258 + p 1 name +c net/minecraft/class_1237 net/minecraft/datafixer/schema/Schema1466 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 1 schema + p 2 entityTypes + p 3 blockEntityTypes +c net/minecraft/class_3899 net/minecraft/server/world/LevelPrioritizedQueue + f Ljava/lang/String; field_17247 name + f Ljava/util/List; field_54042 values + f I field_17241 LEVEL_COUNT + f I field_54043 topPriority + m (Ljava/lang/Runnable;JI)V method_17274 add + p 1 task + p 2 pos + p 4 level + m (I)Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; method_17271 method_17271 + p 0 level + m (J)Ljava/util/List; method_17273 method_17273 + p 0 chunkPos + m (Ljava/lang/String;)V + p 1 name + m (J)Ljava/util/List; method_17277 method_17277 + p 0 chunkPos + m ()Lnet/minecraft/class_3899$class_10172; method_17606 poll + m ()Z method_39993 hasQueuedElement + m (ILnet/minecraft/class_1923;I)V method_17272 updateLevel + p 3 toLevel + p 2 pos + p 1 fromLevel + m (JZ)V method_17609 remove + p 1 pos + p 3 removeElement +c net/minecraft/class_3899$class_10172 net/minecraft/server/world/LevelPrioritizedQueue$Entry + f Ljava/util/List; comp_3141 tasks + f J comp_3140 chunkPos + m ()Ljava/util/List; comp_3141 tasks + m ()J comp_3140 chunkPos + m (JLjava/util/List;)V + p 1 chunkPos + p 3 tasks +c net/minecraft/class_2568 net/minecraft/text/HoverEvent + f Lcom/mojang/serialization/Codec; field_46601 CODEC + m ()Lnet/minecraft/class_2568$class_5247; method_10892 getAction + m (Lnet/minecraft/class_2568$class_5247;)Lcom/mojang/serialization/MapCodec; method_54184 method_54184 + p 0 action +c net/minecraft/class_2568$class_5248 net/minecraft/text/HoverEvent$EntityContent + f Ljava/util/Optional; field_24353 name + f Lcom/mojang/serialization/MapCodec; field_46607 CODEC + f Ljava/util/UUID; field_24352 uuid + f Lnet/minecraft/class_1299; field_24351 entityType + f Ljava/util/List; field_24354 tooltip + m (Lnet/minecraft/class_2568$class_5248;)Ljava/util/UUID; method_54197 method_54197 + p 0 content + m (Lnet/minecraft/class_2568$class_5248;)Ljava/util/Optional; method_54196 method_54196 + p 0 content + m ()Ljava/util/List; method_27682 asTooltip + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54193 method_54193 + p 0 instance + m (Lnet/minecraft/class_2568$class_5248;)Lnet/minecraft/class_1299; method_54198 method_54198 + p 0 content + m (Lnet/minecraft/class_1299;Ljava/util/UUID;Ljava/util/Optional;)V + p 2 uuid + p 3 name + p 1 entityType + m (Lnet/minecraft/class_1299;Ljava/util/UUID;Lnet/minecraft/class_2561;)V + p 3 name + p 1 entityType + p 2 uuid + m (Ljava/lang/Object;)Z equals equals + p 1 o +c net/minecraft/class_2568$class_5247 net/minecraft/text/HoverEvent$Action + f Lcom/mojang/serialization/Codec; field_46603 UNVALIDATED_CODEC + f Lcom/mojang/serialization/Codec; field_46604 CODEC + f Z field_24347 parsable + f Lcom/mojang/serialization/MapCodec; field_46605 codec + f Ljava/lang/String; field_24346 name + f Lnet/minecraft/class_2568$class_5247; field_24342 SHOW_TEXT + f Lnet/minecraft/class_2568$class_5247; field_24343 SHOW_ITEM + f Lnet/minecraft/class_2568$class_5247; field_24344 SHOW_ENTITY + m (Ljava/lang/String;ILjava/lang/String;ZLcom/mojang/serialization/MapCodec;)V + p 3 name + p 4 parsable + p 5 codec + m (Lnet/minecraft/class_2568$class_5247;)Lcom/mojang/serialization/DataResult; method_54186 validate + p 0 action + m ()Z method_27667 isParsable +c net/minecraft/class_2568$class_10612 net/minecraft/text/HoverEvent$ShowItem + f Lcom/mojang/serialization/MapCodec; field_55912 CODEC + f Lnet/minecraft/class_1799; comp_3509 item + m (Lnet/minecraft/class_1799;)V + p 1 stack + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_1799; comp_3509 item +c net/minecraft/class_2568$class_10611 net/minecraft/text/HoverEvent$ShowEntity + f Lcom/mojang/serialization/MapCodec; field_55911 CODEC + f Lnet/minecraft/class_2568$class_5248; comp_3508 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66577 method_66577 + p 0 instance + m ()Lnet/minecraft/class_2568$class_5248; comp_3508 entity + m (Lnet/minecraft/class_2568$class_5248;)V + p 1 entity +c net/minecraft/class_2568$class_10613 net/minecraft/text/HoverEvent$ShowText + f Lcom/mojang/serialization/MapCodec; field_55913 CODEC + f Lnet/minecraft/class_2561; comp_3510 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66578 method_66578 + p 0 instance + m ()Lnet/minecraft/class_2561; comp_3510 value + m (Lnet/minecraft/class_2561;)V + p 1 value +c net/minecraft/class_815 net/minecraft/client/render/model/json/MultipartModelCondition + f Lcom/mojang/serialization/Codec; field_56942 CODEC + m (Lnet/minecraft/class_818;)Ljava/lang/Record; method_67957 method_67957 + p 0 selector + m (Lnet/minecraft/class_10806;)Ljava/util/Map; method_67960 method_67960 + p 0 condition + m (Lnet/minecraft/class_10806;)Ljava/lang/Record; method_67955 method_67955 + p 0 condition + m (Lnet/minecraft/class_2689;)Ljava/util/function/Predicate; instantiate instantiate + p 1 value + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_67954 method_67954 + p 0 group + m (Ljava/util/Map;)Lcom/mojang/serialization/DataResult; method_67958 method_67958 + p 0 map + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_815; method_67953 method_67953 + p 0 either + m (Lnet/minecraft/class_815;)Lcom/mojang/serialization/DataResult; method_67956 method_67956 + p 0 condition +c net/minecraft/class_819 net/minecraft/client/render/model/json/MultipartModelComponent + f Ljava/util/Optional; comp_3764 selector + f Lnet/minecraft/class_1087$class_10892; comp_3765 model + f Lcom/mojang/serialization/Codec; field_56952 CODEC + m ()Ljava/util/Optional; comp_3764 selector + m (Lnet/minecraft/class_2689;)Ljava/util/function/Predicate; method_67981 init + p 1 value + m ()Lnet/minecraft/class_1087$class_10892; comp_3765 model + m (Lnet/minecraft/class_2688;)Z method_67983 method_67983 + p 0 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67980 method_67980 + p 0 instance + m (Lnet/minecraft/class_2689;Lnet/minecraft/class_815;)Ljava/util/function/Predicate; method_67982 method_67982 + p 1 condition + m (Ljava/util/Optional;Lnet/minecraft/class_1087$class_10892;)V + p 2 model + p 1 selector +c net/minecraft/class_818 net/minecraft/client/render/model/json/SimpleMultipartModelSelector + f Lorg/slf4j/Logger; field_56944 LOGGER + f Lcom/mojang/serialization/Codec; field_56943 CODEC + f Ljava/util/Map; comp_3760 tests + m (Ljava/util/List;Lnet/minecraft/class_2689;Ljava/lang/String;Lnet/minecraft/class_818$class_10808;)V method_67962 method_67962 + p 2 property + p 3 terms + m (Lnet/minecraft/class_2689;Ljava/lang/String;Lnet/minecraft/class_818$class_10808;)Ljava/util/function/Predicate; method_67961 init + p 0 stateManager + p 1 property + p 2 terms + m ()Ljava/util/Map; comp_3760 tests + m (Ljava/util/Map;)V + p 1 tests +c net/minecraft/class_818$class_10808 net/minecraft/client/render/model/json/SimpleMultipartModelSelector$Terms + f Lcom/mojang/serialization/Codec; field_56946 VALUE_CODEC + f Lcom/google/common/base/Joiner; field_56948 JOINER + f C field_56947 DELIMITER + f Lcom/mojang/serialization/Codec; field_56950 CODEC + f Lcom/google/common/base/Splitter; field_56949 SPLITTER + f Ljava/util/List; comp_3763 entries + m (Ljava/lang/Object;Lnet/minecraft/class_2769;Ljava/lang/String;)Ljava/lang/Comparable; method_67971 parseValue + p 2 property + p 1 object + p 3 value + m (Ljava/lang/Object;Lnet/minecraft/class_2769;)Ljava/util/function/Predicate; method_67969 instantiate + p 2 property + p 1 object + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_67979 method_67979 + p 0 v + m (Lcom/mojang/datafixers/util/Either;)Ljava/lang/String; method_67964 method_67964 + p 0 either + m (Ljava/util/List;)V + p 1 entries + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_67972 tryParse + p 0 terms + m (Lnet/minecraft/class_2769;Ljava/util/List;ZLnet/minecraft/class_2688;)Z method_67967 method_67967 + p 3 state + m (Lnet/minecraft/class_2688;)Z method_67974 method_67974 + p 0 state + m (Lnet/minecraft/class_2688;)Z method_67965 method_67965 + p 0 state + m (Ljava/lang/Object;Lnet/minecraft/class_2769;Lnet/minecraft/class_818$class_10807;)Ljava/util/function/Predicate; method_67970 instantiate + p 2 property + p 3 term + p 1 object + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;ZLnet/minecraft/class_2688;)Z method_67966 method_67966 + p 3 state + m (Ljava/lang/Comparable;Ljava/lang/Comparable;)Z method_67968 method_67968 + p 1 value + m (Ljava/lang/Object;Lnet/minecraft/class_2769;Lnet/minecraft/class_818$class_10807;)Ljava/util/function/Predicate; method_67976 method_67976 + p 3 term + m (Ljava/lang/Comparable;Ljava/lang/Comparable;)Z method_67975 method_67975 + p 1 value + m ()Ljava/util/List; comp_3763 entries +c net/minecraft/class_818$class_10807 net/minecraft/client/render/model/json/SimpleMultipartModelSelector$Term + f Ljava/lang/String; field_56945 NEGATED_PREFIX + f Ljava/lang/String; comp_3761 value + f Z comp_3762 negated + m (Ljava/lang/String;)Lnet/minecraft/class_818$class_10807; method_67963 parse + p 0 value + m (Ljava/lang/String;Z)V + p 1 value + p 2 negated + m ()Ljava/lang/String; comp_3761 value + m ()Z comp_3762 negated +c net/minecraft/class_2580 net/minecraft/block/entity/BeaconBlockEntity + f Lnet/minecraft/class_1273; field_17377 lock + f Ljava/util/List; field_11801 EFFECTS_BY_LEVEL + f Lnet/minecraft/class_2561; field_40328 CONTAINER_NAME_TEXT + f Ljava/lang/String; field_45784 PRIMARY_EFFECT_NBT_KEY + f Lnet/minecraft/class_6880; field_11795 primary + f I field_31304 MAX_LEVEL + f Lnet/minecraft/class_3913; field_17378 propertyDelegate + f Ljava/util/Set; field_11798 EFFECTS + f I field_31302 SECONDARY_PROPERTY_INDEX + f Lnet/minecraft/class_2561; field_11793 customName + f I field_31300 LEVEL_PROPERTY_INDEX + f I field_19179 minY + f I field_11803 level + f Lnet/minecraft/class_6880; field_11799 secondary + f Ljava/lang/String; field_45785 SECONDARY_EFFECT_NBT_KEY + f I field_31303 PROPERTY_COUNT + f Ljava/util/List; field_19177 beamSegments + f I field_31301 PRIMARY_PROPERTY_INDEX + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_3414;)V method_10938 playSound + p 1 pos + p 2 sound + p 0 world + m (Lnet/minecraft/class_11368;Ljava/lang/String;)Lnet/minecraft/class_6880; method_53252 readStatusEffect + p 0 view + p 1 key + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state + m (Lnet/minecraft/class_11372;Ljava/lang/String;Lnet/minecraft/class_6880;)V method_53253 writeStatusEffect + p 2 effect + p 1 key + p 0 view + m ()Lnet/minecraft/class_2622; method_38236 toUpdatePacket + m (Lnet/minecraft/class_2561;)V method_10936 setCustomName + p 1 customName + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_6880; method_53251 getEffectOrNull + p 0 effect + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2580;)V method_16896 tick + p 0 world + p 3 blockEntity + p 1 pos + p 2 state + m (Lnet/minecraft/class_1937;III)I method_20293 updateLevel + p 1 x + p 0 world + p 3 z + p 2 y + m (Lnet/minecraft/class_11372;Ljava/lang/String;Lnet/minecraft/class_5321;)V method_55779 method_55779 + p 2 entryKey + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ILnet/minecraft/class_6880;Lnet/minecraft/class_6880;)V method_10940 applyPlayerEffects + p 0 world + p 4 secondaryEffect + p 3 primaryEffect + p 2 beaconLevel + p 1 pos +c net/minecraft/class_1250 net/minecraft/datafixer/schema/Schema704 + f Ljava/util/Map; field_5744 BLOCK_RENAMES + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 3 blockEntityTypes + p 2 entityTypes + p 1 schema + m (Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)Lcom/mojang/datafixers/types/Type; getChoiceType getChoiceType + p 2 choiceName + p 1 type +c net/minecraft/class_1250$1 net/minecraft/datafixer/schema/Schema704$1 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 ops + p 2 value +c net/minecraft/class_835 net/minecraft/client/render/block/entity/PistonBlockEntityRenderer + m (Lnet/minecraft/class_2669;Lnet/minecraft/class_11968;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74380 updateRenderState + m ()Lnet/minecraft/class_11968; method_74379 createRenderState + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_6880;Lnet/minecraft/class_1937;)Lnet/minecraft/class_11791; method_3575 renderModel + p 0 pos + p 1 state + p 2 biome + p 3 world + m (Lnet/minecraft/class_11968;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3576 render +c net/minecraft/class_834 net/minecraft/client/render/block/entity/ShulkerBoxBlockEntityRenderer + f Lnet/minecraft/class_834$class_9984; field_4387 model + f Lnet/minecraft/class_11701; field_61794 materials + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_2350;F)V method_72162 setTransforms + p 1 matrices + p 3 openness + p 2 facing + m (Lnet/minecraft/class_10515$class_11695;)V + p 1 context + m (Lnet/minecraft/class_11970;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3574 render + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IILnet/minecraft/class_2350;FLnet/minecraft/class_11683$class_11792;Lnet/minecraft/class_4730;I)V method_65562 render + p 6 openness + p 5 facing + p 8 spriteId + p 7 crumblingOverlay + p 2 queue + p 1 matrices + p 4 overlay + p 3 light + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 ctx + m ()Lnet/minecraft/class_11970; method_74383 createRenderState + m (Lnet/minecraft/class_2350;FLjava/util/function/Consumer;)V method_72163 collectVertices + p 1 facing + p 2 openness + m (Lnet/minecraft/class_2627;Lnet/minecraft/class_11970;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74384 updateRenderState + m (Lnet/minecraft/class_5599;Lnet/minecraft/class_11701;)V + p 1 models + p 2 materials +c net/minecraft/class_834$class_9984 net/minecraft/client/render/block/entity/ShulkerBoxBlockEntityRenderer$ShulkerBoxBlockModel + f Lnet/minecraft/class_630; field_53169 lid + m (Ljava/lang/Float;)V method_62341 setAngles + m (Lnet/minecraft/class_630;)V + p 1 root +c net/minecraft/class_1254 net/minecraft/datafixer/schema/Schema99 + f Lorg/slf4j/Logger; field_5749 LOGGER + f Ljava/util/Map; field_5748 BLOCKS_TO_BLOCK_ENTITIES + m (Ljava/util/HashMap;)V method_5344 method_5344 + p 0 map + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5371 method_5371 + p 2 entityTag + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5357 method_5357 + p 3 tag + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_5377 targetDisplayTile + p 1 map + p 0 schema + p 2 entityId + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5358 method_5358 + p 1 name + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;Ljava/util/Map;)Ljava/lang/Object; method_5359 updateBlockEntityTags + p 0 stack + p 1 renames + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5366 method_5366 + p 1 name + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5375 method_5375 + p 2 blockEntityTag + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5354 method_5354 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5376 method_5376 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5356 method_5356 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5340 method_5340 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5362 method_5362 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5372 method_5372 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5342 method_5342 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5374 method_5374 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5381 method_5381 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 3 blockEntityTypes + p 1 schema + p 2 entityTypes + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_5346 targetItems + p 2 entityId + p 0 schema + p 1 map + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_5368 targetInTile + p 2 entityId + p 1 map + p 0 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5349 method_5349 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5365 method_5365 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5367 method_5367 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5351 method_5351 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5363 method_5363 + p 1 name +c net/minecraft/class_1254$1 net/minecraft/datafixer/schema/Schema99$1 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 2 value + p 1 ops +c net/minecraft/class_2586 net/minecraft/block/entity/BlockEntity + c A block entity is an object holding extra data about a block in a world.\nBlocks hold their data using pre-defined, finite sets of {@link BlockState};\nhowever, some blocks need to hold data that cannot be pre-defined, such as\ninventories of chests, texts of signs, or pattern combinations of banners.\nBlock entities can hold these data.\n\n

Block entities have two other important additions to normal blocks: they\ncan define custom rendering behaviors, and they can tick on every server tick\ninstead of randomly. Some block entities only use these without any extra data.\n\n

Block entities are bound to a world and there is one instance of {@link\nBlockEntity} per the block position, unlike {@link net.minecraft.block.Block}\nor {@link BlockState} which are reused. Block entities are created using {@link\nBlockEntityType}, a type of block entities. In most cases, block entities do not\nhave to be constructed manually except in {@link\nnet.minecraft.block.BlockEntityProvider#createBlockEntity}.\n\n

To get the block entity at a certain position, use {@link World#getBlockEntity}.\nNote that the block entity returned can be, in rare cases, different from the\none associated with the block at that position. For this reason the return value\nshould not be cast unsafely.\n\n

Block entities, like entities, use NBT for the storage of data. The data is\nloaded to the instance's fields in {@link #readNbt} and written to NBT in\n{@link #writeNbt}. When a data that needs to be saved has changed, always make sure\nto call {@link #markDirty()}.\n\n

See {@link net.minecraft.block.BlockEntityProvider} and {@link BlockEntityType}\nfor information on creating a block with block entities.\n\n

Block entity's data, unlike block states, are not automatically synced. Block\nentities declare when and which data to sync. In general, block entities need to\nsync states observable from the clients without specific interaction (such as opening\na container). {@link #toUpdatePacket} and {@link #toInitialChunkDataNbt} control\nwhich data is sent to the client. To sync the block entity to the client, call\n{@code serverWorld.getChunkManager().markForUpdate(this.getPos());}. + f Z field_11865 removed + f Lnet/minecraft/class_2338; field_11867 pos + f Lnet/minecraft/class_2680; field_11866 cachedState + f Lnet/minecraft/class_9323; field_50172 components + f Lcom/mojang/serialization/Codec; field_57768 TYPE_CODEC + f Lorg/slf4j/Logger; field_11868 LOGGER + f Lnet/minecraft/class_1937; field_11863 world + f Lnet/minecraft/class_2591; field_11864 type + m (II)Z method_11004 onSyncedBlockEvent + c If this block entity's block extends {@link net.minecraft.block.BlockWithEntity},\nthis is called inside {@link net.minecraft.block.AbstractBlock#onSyncedBlockEvent}.\n\n@see net.minecraft.block.AbstractBlock#onSyncedBlockEvent + p 2 data + p 1 type + m ()V method_5431 markDirty + c Marks this block entity as dirty and that it needs to be saved.\nThis also triggers {@linkplain World#updateComparators comparator update}.\n\n

This must be called when something changed in a way that\naffects the saved NBT; otherwise, the game might not save the block entity. + m (Lnet/minecraft/class_9323;)V method_58684 setComponents + p 1 components + m (Lnet/minecraft/class_1799;)V method_58683 readComponents + p 1 stack + m (Lnet/minecraft/class_11372;)V method_71399 writeFullData + p 1 view + m (Lnet/minecraft/class_1937;)V method_31662 setWorld + c Sets the world the block entity belongs to.\n\n

This should not be called manually; however, this can be overridden\nto initialize fields dependent on the world. + p 1 world + m (Lnet/minecraft/class_11372;)V method_38243 writeDataWithId + c {@return the block entity's NBT data with block entity type ID}\n\n

In addition to data written at {@link #writeNbt}, this also\nwrites the {@linkplain #writeIdToNbt block entity type ID}.\n\n@see #createNbt\n@see #createNbtWithIdentifyingData + p 1 view + m ()Lnet/minecraft/class_1937; method_10997 getWorld + c {@return the world the block entity belongs to}\n\n

This can return {@code null} during world generation. + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_2487; method_38244 createNbt + c {@return the block entity's NBT data}\n\n

Internally, this calls {@link #writeNbt} with a new {@link NbtCompound}\nand returns the compound.\n\n@see #writeNbt\n@see #createNbtWithIdentifyingData\n@see #createNbtWithId + p 1 registries + m ()Lnet/minecraft/class_2680; method_11010 getCachedState + c {@return the cached block state at the block entity's position}\n\n

This is faster than calling {@link World#getBlockState}. + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_66473 onBlockReplaced + p 1 pos + p 2 oldState + m (Lnet/minecraft/class_11372;)V method_71400 writeDataWithoutId + p 1 data + m (Lnet/minecraft/class_2680;)V method_31664 setCachedState + p 1 state + m (Lnet/minecraft/class_11368;)V method_58691 readComponentlessData + p 1 view + m ()V method_11012 markRemoved + m (Lnet/minecraft/class_11368;)V method_11014 readData + c Reads data from {@code nbt}. Subclasses should override this if they\nstore a persistent data.\n\n

NBT is a storage format; therefore, a data from NBT is loaded to a\nblock entity instance's fields, which are used for other operations instead\nof the NBT. The data is written back to NBT when saving the block entity.\n\n

{@code nbt} might not have all expected keys, or might have a key whose\nvalue does not meet the requirement (such as the type or the range). This\nmethod should fall back to a reasonable default value instead of throwing an\nexception.\n\n@see #writeNbt + p 1 view + m (Lnet/minecraft/class_9323$class_9324;)V method_57567 addComponents + p 1 builder + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_31663 markDirty + p 0 world + p 1 pos + p 2 state + m (Lnet/minecraft/class_129;)V method_11003 populateCrashReport + p 1 crashReportSection + m (Lnet/minecraft/class_11372;)V method_11007 writeData + c Writes data to {@code nbt}. Subclasses should override this if they\nstore a persistent data.\n\n

NBT is a storage format; therefore, a data from NBT is loaded to a\nblock entity instance's fields, which are used for other operations instead\nof the NBT. The data is written back to NBT when saving the block entity.\n\n@see #readNbt + p 1 view + m (Lnet/minecraft/class_11368;)V method_58690 read + p 1 view + m ()Lnet/minecraft/class_8942$class_11336; method_71402 getReporterContext + m ()Lnet/minecraft/class_2338; method_11016 getPos + c {@return the block entity's position} + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_2487; method_58692 createComponentlessNbt + p 1 registries + m (Lnet/minecraft/class_2591;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 3 state + p 2 pos + p 1 type + m ()Z method_11015 isRemoved + m (Lnet/minecraft/class_11372;)V method_57569 removeFromCopiedStackData + p 1 view + m ()Lnet/minecraft/class_2591; method_11017 getType + m ()V method_10996 cancelRemoval + m ()Lnet/minecraft/class_9323; method_58693 getComponents + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2338; method_38239 posFromNbt + c {@return the block position from {@code nbt}}\n\n

The passed NBT should use lowercase {@code x}, {@code y}, and {@code z}\nkeys to store the position. This is incompatible with {@link\nnet.minecraft.nbt.NbtHelper#fromBlockPos} that use uppercase keys. + p 0 chunkPos + p 1 nbt + m (Lnet/minecraft/class_11372;)V method_10999 writeIdentifyingData + c Writes to {@code nbt} the block entity type ID under the {@code id} key,\nand the block's position under {@code x}, {@code y}, and {@code z} keys.\n\n@throws RuntimeException if the block entity type is not registered in\nthe registry + p 1 view + m (Lnet/minecraft/class_11372;)V method_38241 writeId + c Writes the block entity type ID to {@code nbt} under the {@code id} key.\n\n@throws RuntimeException if the block entity type is not registered in\nthe registry + p 1 view + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_2487; method_38242 createNbtWithIdentifyingData + c {@return the block entity's NBT data with identifying data}\n\n

In addition to data written at {@link #writeNbt}, this also\nwrites the {@linkplain #writeIdToNbt block entity type ID} and the\nposition of the block entity.\n\n@see #createNbt\n@see #createNbtWithId + p 1 registries + m (Lnet/minecraft/class_11368;Ljava/lang/String;)Lnet/minecraft/class_2561; method_59894 tryParseCustomName + p 1 key + p 0 view + m (Lnet/minecraft/class_2680;)V method_61175 validateSupports + p 1 state + m ()Z method_11002 hasWorld + m ()Lnet/minecraft/class_2596; method_38235 toUpdatePacket + c {@return the packet to send to nearby players when the block entity's observable\nstate changes, or {@code null} to not send the packet}\n\n

If the data returned by {@link #toInitialChunkDataNbt initial chunk data} is suitable\nfor updates, the following shortcut can be used to create an update packet: {@code\nBlockEntityUpdateS2CPacket.create(this)}. The NBT will be passed to {@link #readNbt}\non the client.\n\n

"Observable state" is a state that clients can observe without specific interaction.\nFor example, {@link CampfireBlockEntity}'s cooked items are observable states,\nbut chests' inventories are not observable states, since the player must first open\nthat chest before they can see the contents.\n\n

To sync block entity data using this method, use {@code\nserverWorld.getChunkManager().markForUpdate(this.getPos());}.\n\n@see #toInitialChunkDataNbt + m ()Ljava/lang/String; method_61177 getNameForReport + m (Lnet/minecraft/class_9323;Lnet/minecraft/class_9326;)V method_58685 readComponents + p 1 defaultComponents + p 2 components + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2487;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_2586; method_11005 createFromNbt + c {@return the new block entity loaded from {@code nbt}, or {@code null} if it fails}\n\n

This is used during chunk loading. This can fail if {@code nbt} has an improper or\nunregistered {@code id}, or if {@link #readNbt} throws an exception; in these cases,\nthis logs an error and returns {@code null}. + p 1 state + p 0 pos + p 3 registries + p 2 nbt + m (Lnet/minecraft/class_11372;Lnet/minecraft/class_2591;)V method_38238 writeId + c Writes the ID of {@code type} to {@code nbt} under the {@code id} key. + p 1 type + p 0 view + m ()Lnet/minecraft/class_9323; method_57590 createComponentMap + m (Lnet/minecraft/class_11372;)V method_71401 writeComponentlessData + p 1 view + m (Lnet/minecraft/class_9473;)V method_57568 readComponents + p 1 components + m (Lnet/minecraft/class_2680;)Z method_61176 supports + p 1 state + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_2487; method_16887 toInitialChunkDataNbt + c {@return the serialized state of this block entity that is observable by clients}\n\n

This is sent alongside the initial chunk data, as well as when the block\nentity implements {@link #toUpdatePacket} and decides to use the default\n{@link net.minecraft.network.packet.s2c.play.BlockEntityUpdateS2CPacket}.\n\n

"Observable state" is a state that clients can observe without specific interaction.\nFor example, {@link CampfireBlockEntity}'s cooked items are observable states,\nbut chests' inventories are not observable states, since the player must first open\nthat chest before they can see the contents.\n\n

To send all NBT data of this block entity saved to disk, return {@link #createNbt}.\n\n@see #toUpdatePacket + p 1 registries +c net/minecraft/class_2586$class_11348 net/minecraft/block/entity/BlockEntity$ReporterContext + f Lnet/minecraft/class_2586; comp_4230 blockEntity + m ()Lnet/minecraft/class_2586; comp_4230 blockEntity + m (Lnet/minecraft/class_2586;)V + p 1 blockEntity +c net/minecraft/class_1253 net/minecraft/datafixer/schema/Schema705 + f Ljava/util/Map; field_49717 ITEM_TO_ENTITY + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5318 method_5318 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5328 method_5328 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5314 method_5314 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_5311 targetEntityItems + p 0 schema + p 1 map + p 2 entityId + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5324 method_5324 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5316 method_5316 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5338 method_5338 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5326 method_5326 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5320 method_5320 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5312 method_5312 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5334 method_5334 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5322 method_5322 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5317 method_5317 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_5330 targetInTile + p 1 map + p 0 schema + p 2 entityId + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5325 method_5325 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5313 method_5313 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5327 method_5327 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 2 entityTypes + p 3 blockEntityTypes + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5337 method_5337 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5321 method_5321 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5331 method_5331 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5323 method_5323 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_1253$1 net/minecraft/datafixer/schema/Schema705$1 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 2 value + p 1 ops +c net/minecraft/class_2587 net/minecraft/block/entity/BedBlockEntity + f Lnet/minecraft/class_1767; field_11869 color + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m ()Lnet/minecraft/class_1767; method_11018 getColor + m ()Lnet/minecraft/class_2622; method_38237 toUpdatePacket + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1767;)V + p 3 color + p 2 state + p 1 pos +c net/minecraft/class_2588 net/minecraft/text/TranslatableTextContent + f Lnet/minecraft/class_5348; field_24368 LITERAL_PERCENT_SIGN + f Ljava/util/List; field_11877 translations + f Lcom/mojang/serialization/Codec; field_46635 OBJECT_ARGUMENT_CODEC + f Ljava/lang/String; field_11876 key + f [Ljava/lang/Object; field_24367 EMPTY_ARGUMENTS + f Lnet/minecraft/class_5348; field_24369 NULL_ARGUMENT + f Lcom/mojang/serialization/MapCodec; field_46633 CODEC + f Ljava/util/regex/Pattern; field_11872 ARG_FORMAT + f Lcom/mojang/serialization/Codec; field_46636 ARGUMENT_CODEC + f Lnet/minecraft/class_2477; field_25317 languageCache + f Ljava/lang/String; field_41875 fallback + f [Ljava/lang/Object; field_11875 args + m (Ljava/lang/Object;)Z method_54238 isPrimitive + c {@return whether {@code argument} is primitive}\n\n

Primitives include numbers, booleans, and strings. These (along with {@code Text})\ncan be used as translatable text arguments; others need to be converted first. + p 0 argument + m ()V method_11025 updateTranslations + m (Lnet/minecraft/class_2561;)Ljava/lang/Object; method_54242 method_54242 + p 0 text + m ()Ljava/lang/String; method_48323 getFallback + m (Lcom/mojang/datafixers/util/Either;)Ljava/lang/Object; method_54236 method_54236 + p 0 either + m (Ljava/lang/Object;)Ljava/lang/Object; method_54249 method_54249 + p 0 object + m (Ljava/lang/String;Ljava/util/function/Consumer;)V method_11024 forEachPart + p 2 partsConsumer + p 1 translation + m (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V + p 3 args + p 2 fallback + p 1 key + m (Lnet/minecraft/class_2588;)Ljava/util/Optional; method_54243 method_54243 + p 0 content + m (I)Lnet/minecraft/class_5348; method_29434 getArg + p 1 index + m (Ljava/util/List;)[Ljava/lang/Object; method_54240 method_54240 + p 0 list + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ([Ljava/lang/Object;)Ljava/util/Optional; method_54244 toOptionalList + p 0 args + m ()[Ljava/lang/Object; method_11023 getArgs + m (Ljava/lang/Object;)Lcom/mojang/datafixers/util/Either; method_54247 method_54247 + p 0 argument + m (Lnet/minecraft/class_2588;)Ljava/lang/String; method_54248 method_54248 + p 0 content + m ()Ljava/lang/String; method_11022 getKey + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_54245 validate + p 0 object + m (Lnet/minecraft/class_2588;)Ljava/util/Optional; method_54246 method_54246 + p 0 content + m (Ljava/util/Optional;)[Ljava/lang/Object; method_54241 toArray + p 0 args + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54237 method_54237 + p 0 instance + m (Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/class_2588; method_54239 of + p 1 fallback + p 0 key + p 2 args +c net/minecraft/class_1252 net/minecraft/datafixer/schema/Schema808 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_5309 targetItems + p 2 blockEntityId + p 1 map + p 0 schema +c net/minecraft/class_1251 net/minecraft/datafixer/schema/Schema703 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 2 parent + p 1 versionKey + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_2589 net/minecraft/block/entity/BrewingStandBlockEntity + f I field_31327 PROPERTY_COUNT + f I field_31326 FUEL_PROPERTY_INDEX + f I field_31329 FUEL_SLOT_INDEX + f Lnet/minecraft/class_2561; field_63038 CONTAINER_NAME_TEXT + f I field_31328 INPUT_SLOT_INDEX + f [Z field_11883 slotsEmptyLastTick + f B field_57770 DEFAULT_FUEL + f I field_31325 BREW_TIME_PROPERTY_INDEX + f I field_31324 MAX_FUEL_USES + f [I field_11880 SIDE_SLOTS + f Lnet/minecraft/class_2371; field_11882 inventory + f S field_57769 DEFAULT_BREW_TIME + f Lnet/minecraft/class_3913; field_17381 propertyDelegate + f [I field_11886 TOP_SLOTS + f Lnet/minecraft/class_1792; field_11881 itemBrewing + f I field_11878 brewTime + f [I field_11879 BOTTOM_SLOTS + f I field_11885 fuel + m (Lnet/minecraft/class_1845;Lnet/minecraft/class_2371;)Z method_11027 canCraft + p 0 brewingRecipeRegistry + p 1 slots + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2589;)V method_31665 tick + p 1 pos + p 0 world + p 3 blockEntity + p 2 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2371;)V method_11029 craft + p 0 world + p 1 pos + p 2 slots + m ()[Z method_11028 getSlotsEmpty + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state +c net/minecraft/class_2582 net/minecraft/block/entity/BannerPattern + f Lcom/mojang/serialization/Codec; field_49759 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_49757 CODEC + f Lnet/minecraft/class_9139; field_49760 ENTRY_PACKET_CODEC + f Lnet/minecraft/class_9139; field_49758 PACKET_CODEC + f Ljava/lang/String; comp_2457 translationKey + f Lnet/minecraft/class_2960; comp_2456 assetId + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58123 method_58123 + p 0 instance + m ()Lnet/minecraft/class_2960; comp_2456 assetId + m ()Ljava/lang/String; comp_2457 translationKey + m (Lnet/minecraft/class_2960;Ljava/lang/String;)V + p 1 assetId + p 2 translationKey +c net/minecraft/class_1258 net/minecraft/inventory/DoubleInventory + c Represents a combined inventory that is backed by two inventories.\nThis is used by double chests.\n\n

It is possible to nest this inventory to create triple or quadruple\ninventories. + f Lnet/minecraft/class_1263; field_5771 second + f Lnet/minecraft/class_1263; field_5769 first + m (Lnet/minecraft/class_1263;Lnet/minecraft/class_1263;)V + p 2 second + p 1 first + m (Lnet/minecraft/class_1263;)Z method_5405 isPart + c {@return whether {@code inventory} is part of the combined inventory} + p 1 inventory +c net/minecraft/class_1257 net/minecraft/world/updater/WorldUpdater + f Lnet/minecraft/class_2561; field_48724 UPGRADING_POI_TEXT + f Lnet/minecraft/class_2561; field_48726 UPGRADING_ENTITIES_TEXT + f F field_5763 progress + f Ljava/lang/Thread; field_5767 updateThread + f Z field_48730 recreateRegionFiles + f Lcom/mojang/datafixers/DataFixer; field_24084 dataFixer + f Lnet/minecraft/class_26; field_5755 persistentStateManager + f Z field_5760 keepUpgradingChunks + f I field_48731 totalRegionCount + f Z field_19225 eraseCache + f I field_5764 skippedChunkCount + f Lnet/minecraft/class_2561; field_48729 FINISHED_CHUNKS_TEXT + f Ljava/lang/String; field_48723 NEW_PREFIX + f Ljava/util/regex/Pattern; field_17622 REGION_FILE_PATTERN + f Lnet/minecraft/class_2561; field_48725 FINISHED_POI_TEXT + f Lnet/minecraft/class_32$class_5143; field_24083 session + f Lnet/minecraft/class_2561; field_48727 FINISHED_ENTITIES_TEXT + f I field_5766 upgradedChunkCount + f I field_5768 totalChunkCount + f Ljava/util/concurrent/ThreadFactory; field_5757 UPDATE_THREAD_FACTORY + f Lit/unimi/dsi/fastutil/objects/Reference2FloatMap; field_5762 dimensionProgress + f Ljava/util/Set; field_40114 worldKeys + f Lnet/minecraft/class_2378; field_40113 dimensionOptionsRegistry + f Lorg/slf4j/Logger; field_5756 LOGGER + f Z field_5759 done + f Lnet/minecraft/class_2561; field_5765 status + f Lnet/minecraft/class_2561; field_48728 UPGRADING_CHUNKS_TEXT + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; method_56987 getNewDirectoryPath + p 0 current + m ()V method_5404 updateWorld + m ()I method_5397 getTotalChunkCount + m ()V method_5402 cancel + m (Lnet/minecraft/class_32$class_5143;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/class_5219;Lnet/minecraft/class_5455;ZZ)V + p 3 saveProperties + p 4 registries + p 1 session + p 2 dataFixer + p 5 eraseCache + p 6 recreateRegionFiles + m ()I method_5399 getSkippedChunkCount + m ()Ljava/util/Set; method_28304 getWorlds + m ()I method_5400 getUpgradedChunkCount + m ()Z method_5403 isDone + m (Lnet/minecraft/class_5321;)F method_5393 getProgress + p 1 world + m ()F method_5401 getProgress + m ()Lnet/minecraft/class_2561; method_5394 getStatus + m (Ljava/lang/Thread;Ljava/lang/Throwable;)V method_5398 method_5398 + p 1 thread + p 2 throwable +c net/minecraft/class_1257$class_9167 net/minecraft/world/updater/WorldUpdater$ChunkPosKeyedStorageUpdate + m (Lnet/minecraft/class_1257;Lnet/minecraft/class_4284;Ljava/lang/String;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 2 dataFixTypes + p 3 targetName + p 4 upgradingText + p 5 finishedText + m (Lnet/minecraft/class_3977;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_56550 updateNbt + p 2 nbt + p 1 storage +c net/minecraft/class_1257$class_9166 net/minecraft/world/updater/WorldUpdater$PoiUpdate +c net/minecraft/class_1257$class_9165 net/minecraft/world/updater/WorldUpdater$Region + f Lnet/minecraft/class_2861; comp_2251 file + f Ljava/util/List; comp_2252 chunksToUpgrade + m ()Ljava/util/List; comp_2252 chunksToUpgrade + m ()Lnet/minecraft/class_2861; comp_2251 file + m (Lnet/minecraft/class_2861;Ljava/util/List;)V + p 1 file + p 2 chunksToUpgrade +c net/minecraft/class_1257$class_9164 net/minecraft/world/updater/WorldUpdater$EntitiesUpdate +c net/minecraft/class_1257$class_9163 net/minecraft/world/updater/WorldUpdater$WorldData + f Ljava/util/ListIterator; comp_2250 files + f Lnet/minecraft/class_5321; comp_2248 dimensionKey + f Lnet/minecraft/class_3977; comp_2249 storage + m ()Ljava/util/ListIterator; comp_2250 files + m ()Lnet/minecraft/class_3977; comp_2249 storage + m ()Lnet/minecraft/class_5321; comp_2248 dimensionKey + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_3977;Ljava/util/ListIterator;)V + p 1 dimensionKey + p 2 storage + p 3 files +c net/minecraft/class_1257$class_9162 net/minecraft/world/updater/WorldUpdater$RegionUpdate +c net/minecraft/class_1257$class_9161 net/minecraft/world/updater/WorldUpdater$Update + f Lnet/minecraft/class_2561; field_48736 finishedText + f Lnet/minecraft/class_2561; field_48735 upgradingText + f Ljava/util/concurrent/CompletableFuture; field_48732 pendingUpdateFuture + f Lnet/minecraft/class_4284; field_48733 dataFixTypes + f Ljava/lang/String; field_48737 targetName + f Ljava/lang/String; field_49072 name + m (Lnet/minecraft/class_1257;Lnet/minecraft/class_4284;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 4 targetName + p 3 name + p 2 dataFixTypes + p 6 finishedText + p 5 upgradingText + m (Lnet/minecraft/class_1257$class_9165;)I method_56540 method_56540 + p 0 region + m ()V method_56537 update + m (Lnet/minecraft/class_9240;Ljava/nio/file/Path;)Ljava/util/ListIterator; method_56545 enumerateRegions + p 2 regionDirectory + p 1 key + m (Lnet/minecraft/class_3977;Lnet/minecraft/class_1923;Lnet/minecraft/class_5321;)Z method_56543 update + p 3 worldKey + p 2 chunkPos + p 1 storage + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_3977;Lnet/minecraft/class_1923;)Z method_56538 update + p 3 chunkPos + p 1 worldKey + p 2 storage + m (Lnet/minecraft/class_2861;)V method_56541 recreate + p 1 regionFile + m (Lnet/minecraft/class_9240;Ljava/nio/file/Path;)Ljava/util/List; method_56539 listRegions + p 0 key + p 1 regionDirectory + m (Ljava/io/File;Ljava/lang/String;)Z method_56542 method_56542 + p 0 file + p 1 name + m ()Ljava/util/List; method_56544 listWoldData + m (Lnet/minecraft/class_9240;Ljava/nio/file/Path;)Lnet/minecraft/class_3977; method_56552 openStorage + p 2 directory + p 1 storageKey +c net/minecraft/class_2583 net/minecraft/text/Style + c The style of a {@link Text}, representing cosmetic attributes. It includes\nfont, formatting, click/hover events (actions), color, etc.\n\n

A style is immutable.\n\n@see Text + f Ljava/lang/Integer; field_55191 shadowColor + f Lnet/minecraft/class_5251; field_11855 color + f Ljava/lang/Boolean; field_11857 strikethrough + f Lnet/minecraft/class_2558; field_11853 clickEvent + f Ljava/lang/Boolean; field_11851 underlined + f Ljava/lang/Boolean; field_11861 obfuscated + f Lnet/minecraft/class_11719; field_24361 font + f Ljava/lang/String; field_11859 insertion + f Lnet/minecraft/class_2568; field_11858 hoverEvent + f Ljava/lang/Boolean; field_11856 bold + f Lnet/minecraft/class_2583; field_24360 EMPTY + c An empty style. + f Ljava/lang/Boolean; field_11852 italic + m (Lnet/minecraft/class_2583;Ljava/lang/Object;Ljava/lang/Object;)Lnet/minecraft/class_2583; method_54210 with + p 0 newStyle + p 1 oldAttribute + p 2 newAttribute + m ()Lnet/minecraft/class_2568; method_10969 getHoverEvent + c Returns the hover event of this style. + m ()Z method_10966 isItalic + c Returns whether the style has italic formatting.\n\n@see Formatting#ITALIC + m (Lnet/minecraft/class_2558;)Lnet/minecraft/class_2583; method_10958 withClickEvent + c Returns a new style with the click event provided and all other\nattributes of this style. + p 1 clickEvent + c the new click event + m (Lnet/minecraft/class_11719;)Lnet/minecraft/class_2583; method_27704 withFont + c Returns a new style with the font provided and all other\nattributes of this style. + p 1 font + m (Lnet/minecraft/class_2568;)Lnet/minecraft/class_2583; method_10949 withHoverEvent + c Returns a new style with the hover event provided and all other\nattributes of this style. + p 1 hoverEvent + c the new hover event + m (Ljava/lang/String;)Lnet/minecraft/class_2583; method_10975 withInsertion + c Returns a new style with the insertion provided and all other\nattributes of this style. + p 1 insertion + c the new insertion string + m ()Lnet/minecraft/class_11719; method_27708 getFont + c Returns the font of this style. + m ()Z method_10984 isBold + c Returns whether the style has bold formatting.\n\n@see Formatting#BOLD + m ()Z method_10986 isStrikethrough + c Returns whether the style has strikethrough formatting.\n\n@see Formatting#STRIKETHROUGH + m (Lnet/minecraft/class_5251;Ljava/lang/Integer;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Lnet/minecraft/class_2558;Lnet/minecraft/class_2568;Ljava/lang/String;Lnet/minecraft/class_11719;)V + p 1 color + p 10 insertion + p 11 font + p 6 strikethrough + p 7 obfuscated + p 8 clickEvent + p 9 hoverEvent + p 2 shadowColor + p 3 bold + p 4 italic + p 5 underlined + m (Lnet/minecraft/class_5251;)Lnet/minecraft/class_2583; method_27703 withColor + c Returns a new style with the color provided and all other attributes of\nthis style. + p 1 color + c the new color + m (Lnet/minecraft/class_124;)Lnet/minecraft/class_2583; method_27706 withFormatting + c Returns a new style with the formatting provided and all other\nattributes of this style. + p 1 formatting + c the new formatting + m (Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_27702 withParent + c Returns a new style with the undefined attributes of this style filled\nby the {@code parent} style. + p 1 parent + c the parent style + m ([Lnet/minecraft/class_124;)Lnet/minecraft/class_2583; method_27705 withFormatting + c Returns a new style with the formattings provided and all other\nattributes of this style. + p 1 formattings + c an array of new formattings + m ()Lnet/minecraft/class_2583; method_75861 withoutShadow + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2583; method_36141 withObfuscated + p 1 obfuscated + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2583; method_30938 withUnderline + c Returns a new style with the underline attribute provided and all other\nattributes of this style. + p 1 underline + m ()Ljava/lang/Integer; method_65301 getShadowColor + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Z method_10965 isUnderlined + c Returns whether the style has underline formatting.\n\n@see Formatting#UNDERLINE + m ()Z method_10987 isObfuscated + c Returns whether the style has obfuscated formatting.\n\n@see Formatting#OBFUSCATED + m ()Z method_10967 isEmpty + c Returns if this is the empty style.\n\n@see #EMPTY + m ()Ljava/lang/String; method_10955 getInsertion + c Returns the insertion text of the style.\n\n

An insertion is inserted when a piece of text clicked while shift key\nis down in the chat HUD. + m ()Lnet/minecraft/class_5251; method_10973 getColor + c Returns the color of this style. + m (Lnet/minecraft/class_124;)Lnet/minecraft/class_2583; method_27707 withExclusiveFormatting + c Returns a new style with the formatting provided and some applicable\nattributes of this style.\n\n

When a color formatting is passed for {@code formatting}, the other\nformattings, including bold, italic, strikethrough, underlined, and\nobfuscated, are all removed. + p 1 formatting + c the new formatting + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2583; method_10978 withItalic + c Returns a new style with the italic attribute provided and all other\nattributes of this style. + p 1 italic + c the new italic property + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/class_2583; method_43870 of + p 10 font + p 8 hoverEvent + p 9 insertion + p 6 obfuscated + p 7 clickEvent + p 4 underlined + p 5 strikethrough + p 2 bold + p 3 italic + p 0 color + p 1 shadowColor + m (I)Lnet/minecraft/class_2583; method_36139 withColor + p 1 rgbColor + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2583; method_10982 withBold + c Returns a new style with the bold attribute provided and all other\nattributes of this style. + p 1 bold + m (Lnet/minecraft/class_124;)Lnet/minecraft/class_2583; method_10977 withColor + c Returns a new style with the color provided and all other attributes of\nthis style. + p 1 color + c the new color + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2583; method_36140 withStrikethrough + p 1 strikethrough + m (I)Lnet/minecraft/class_2583; method_65302 withShadowColor + p 1 shadowColor + m ()Lnet/minecraft/class_2558; method_10970 getClickEvent + c Returns the click event of this style. +c net/minecraft/class_2583$class_2584 net/minecraft/text/Style$Codecs + c Contains codecs to serialize {@link Style}s. + f Lcom/mojang/serialization/Codec; field_46613 CODEC + f Lcom/mojang/serialization/MapCodec; field_46612 MAP_CODEC + f Lnet/minecraft/class_9139; field_48541 PACKET_CODEC + m (Lnet/minecraft/class_2583;)Ljava/util/Optional; method_54220 method_54220 + p 0 style + m (Lnet/minecraft/class_2583;)Ljava/util/Optional; method_54217 method_54217 + p 0 style + m (Lnet/minecraft/class_2583;)Ljava/util/Optional; method_54216 method_54216 + p 0 style + m (Lnet/minecraft/class_2583;)Ljava/util/Optional; method_65303 method_65303 + p 0 style + m (Lnet/minecraft/class_2583;)Ljava/util/Optional; method_54215 method_54215 + p 0 style + m (Lnet/minecraft/class_2583;)Ljava/util/Optional; method_54214 method_54214 + p 0 style + m (Lnet/minecraft/class_2583;)Ljava/util/Optional; method_54213 method_54213 + p 0 style + m (Lnet/minecraft/class_2583;)Ljava/util/Optional; method_54212 method_54212 + p 0 style + m (Lnet/minecraft/class_2583;)Ljava/util/Optional; method_54221 method_54221 + p 0 style + m (Lnet/minecraft/class_2583;)Ljava/util/Optional; method_54219 method_54219 + p 0 style + m (Lnet/minecraft/class_2583;)Ljava/util/Optional; method_54218 method_54218 + p 0 style + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54211 method_54211 + p 0 instance +c net/minecraft/class_2583$class_7418 net/minecraft/text/Style$Writer + f Z field_39012 shouldAppendComma + m (Ljava/lang/String;Ljava/lang/Boolean;)V method_43479 append + p 2 value + p 1 key + m ()V method_43478 appendComma + m (Ljava/lang/String;Ljava/lang/Object;)V method_43480 append + p 1 key + p 2 value +c net/minecraft/class_1255 net/minecraft/util/thread/ThreadExecutor + f Ljava/util/Queue; field_5750 tasks + f Lorg/slf4j/Logger; field_5751 LOGGER + f Ljava/lang/String; field_18318 name + f I field_18319 executionsInProgress + m ()Z method_18854 isOnThread + m (Ljava/lang/Runnable;)V method_19537 submitAndJoin + p 1 runnable + m (Ljava/lang/Throwable;)Z method_61391 isMemoryError + c {@return whether {@code exception} represents an {@link OutOfMemoryError} or\n{@link StackOverflowError}} + p 0 exception + m (Ljava/lang/String;)V + p 1 name + m ()Z method_16075 runTask + m (Ljava/lang/Runnable;)V method_18859 executeTask + p 1 task + m (Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; method_5382 submitAsync + p 1 runnable + m ()Ljava/lang/Thread; method_3777 getThread + m (Ljava/util/function/Supplier;)Ljava/util/concurrent/CompletableFuture; method_5385 submit + p 1 task + m ()Z method_5384 shouldExecuteAsync + m ()Z method_72378 isExecutionInProgress + m (Ljava/lang/Runnable;)Z method_18856 canExecute + p 1 task + m (Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; method_20493 submit + p 1 task + m ()V method_5383 runTasks + m ()V method_20813 waitForTasks + m (Ljava/util/function/BooleanSupplier;)V method_18857 runTasks + p 1 stopCondition + m ()V method_18855 cancelTasks + m ()I method_21684 getTaskCount + m (Ljava/lang/Runnable;)V method_40000 executeSync + p 1 runnable +c net/minecraft/class_1249 net/minecraft/datafixer/schema/Schema701 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 2 parent + p 1 versionKey + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_1248 net/minecraft/datafixer/schema/Schema702 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_2579 net/minecraft/text/SelectorTextContent + f Lnet/minecraft/class_10104; comp_3080 selector + f Ljava/util/Optional; comp_3081 separator + f Lcom/mojang/serialization/MapCodec; field_46629 CODEC + m (Lnet/minecraft/class_10104;Ljava/util/Optional;)V + p 2 separator + p 1 selector + m ()Lnet/minecraft/class_10104; comp_3080 selector + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/util/Optional; comp_3081 separator + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54234 method_54234 + p 0 instance +c net/minecraft/class_828 net/minecraft/client/render/block/entity/EnchantingTableBlockEntityRenderer + f Lnet/minecraft/class_557; field_4370 book + f Lnet/minecraft/class_4730; field_4369 BOOK_TEXTURE + f Lnet/minecraft/class_11701; field_61788 spriteHolder + m ()Lnet/minecraft/class_11964; method_74375 createRenderState + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 ctx + m (Lnet/minecraft/class_2605;Lnet/minecraft/class_11964;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74376 updateRenderState + m (Lnet/minecraft/class_11964;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3571 render +c net/minecraft/class_827 net/minecraft/client/render/block/entity/BlockEntityRenderer + m ()Z method_3563 rendersOutsideBoundingBox + m (Lnet/minecraft/class_11954;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3569 render + p 4 cameraState + p 1 state + p 2 matrices + p 3 queue + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_11954;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74331 updateRenderState + p 1 blockEntity + p 3 tickProgress + p 2 state + p 5 crumblingOverlay + p 4 cameraPos + m ()I method_33893 getRenderDistance + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_243;)Z method_33892 isInRenderDistance + p 2 pos + p 1 blockEntity + m ()Lnet/minecraft/class_11954; method_74335 createRenderState +c net/minecraft/class_826 net/minecraft/client/render/block/entity/ChestBlockEntityRenderer + f Z field_4365 christmas + f Lnet/minecraft/class_9944; field_53167 doubleChestRight + f Lnet/minecraft/class_9944; field_53166 doubleChestLeft + f Lnet/minecraft/class_9944; field_53165 singleChest + f Lnet/minecraft/class_11701; field_61784 materials + m (Lnet/minecraft/class_2586;Z)Lnet/minecraft/class_11959$class_11960; method_74366 getVariant + p 2 christmas + p 1 blockEntity + m (Lnet/minecraft/class_11959;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_74367 render + m ()Lnet/minecraft/class_11959; method_74368 createRenderState + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_11959;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74365 updateRenderState + m ()Z method_65559 isAroundChristmas + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 context +c net/minecraft/class_825 net/minecraft/client/render/block/entity/BedBlockEntityRenderer + f Lnet/minecraft/class_11701; field_61780 materials + f Lnet/minecraft/class_3879$class_9948; field_27745 bedFoot + f Lnet/minecraft/class_3879$class_9948; field_27744 bedHead + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IILnet/minecraft/class_4730;I)V method_65557 renderAsItem + p 3 light + p 4 overlay + p 1 matrices + p 2 queue + p 5 textureId + m (Lnet/minecraft/class_2587;Lnet/minecraft/class_11952;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74344 updateRenderState + m (Lnet/minecraft/class_11701;Lnet/minecraft/class_5599;)V + p 2 entityModelSet + p 1 materials + m ()Lnet/minecraft/class_5607; method_32137 getFootTexturedModelData + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_74343 method_74343 + p 0 world + p 1 pos + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_3879$class_9948;Lnet/minecraft/class_2350;Lnet/minecraft/class_4730;IIZLnet/minecraft/class_11683$class_11792;I)V method_3558 renderPart + p 2 queue + p 3 model + p 1 matrices + p 6 light + p 7 overlay + p 4 direction + p 5 spriteId + p 8 isFoot + p 9 crumblingOverlay + m ()Lnet/minecraft/class_5607; method_32136 getHeadTexturedModelData + m (Ljava/util/function/Consumer;)V method_72160 collectVertices + m (Lnet/minecraft/class_4587;ZLnet/minecraft/class_2350;)V method_72159 setTransforms + p 2 direction + p 0 matrices + p 1 isFoot + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 ctx + m (Lnet/minecraft/class_10515$class_11695;)V + p 1 context + m ()Lnet/minecraft/class_11952; method_74345 createRenderState + m (Lnet/minecraft/class_11952;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_3557 render +c net/minecraft/class_829 net/minecraft/client/render/block/entity/ConduitBlockEntityRenderer + f Lnet/minecraft/class_4730; field_4371 WIND_VERTICAL_TEXTURE + f Lnet/minecraft/class_11701; field_61785 materials + f Lnet/minecraft/class_4730; field_4380 CLOSED_EYE_TEXTURE + f Lnet/minecraft/class_4730; field_4379 OPEN_EYE_TEXTURE + f Lnet/minecraft/class_4730; field_4378 CAGE_TEXTURE + f Lnet/minecraft/class_4730; field_4377 BASE_TEXTURE + f Lnet/minecraft/class_630; field_20823 conduitEye + f Lnet/minecraft/class_630; field_20824 conduitWind + f Lnet/minecraft/class_630; field_20825 conduitShell + f Lnet/minecraft/class_630; field_20826 conduit + f Lnet/minecraft/class_4730; field_4373 WIND_TEXTURE + f Lnet/minecraft/class_10721; field_56365 SPRITE_MAPPER + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 ctx + m ()Lnet/minecraft/class_5607; method_32153 getPlainTexturedModelData + m ()Lnet/minecraft/class_5607; method_32152 getShellTexturedModelData + m ()Lnet/minecraft/class_11961; method_74370 createRenderState + m ()Lnet/minecraft/class_5607; method_32151 getWindTexturedModelData + m (Lnet/minecraft/class_11961;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_22750 render + m ()Lnet/minecraft/class_5607; method_32150 getEyeTexturedModelData + m (Lnet/minecraft/class_2597;Lnet/minecraft/class_11961;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74369 updateRenderState +c net/minecraft/class_1221 net/minecraft/datafixer/schema/Schema102 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 2 entityTypes + p 1 schema + p 3 blockEntityTypes + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/class_3884 net/minecraft/client/render/entity/model/ModelWithHat + c Represents a model with a hat. + m (Lnet/minecraft/class_10017;Lnet/minecraft/class_4587;)V method_65191 rotateArms + p 1 state + p 2 matrices +c net/minecraft/class_2553 net/minecraft/block/LilyPadBlock + f Lnet/minecraft/class_265; field_11728 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46492 CODEC +c net/minecraft/class_1220 net/minecraft/datafixer/schema/IdentifierNormalizingSchema + f Lcom/mojang/serialization/codecs/PrimitiveCodec; field_24652 CODEC + f Lcom/mojang/datafixers/types/Type; field_24653 IDENTIFIER_TYPE + m (Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)Lcom/mojang/datafixers/types/Type; getChoiceType getChoiceType + p 1 type + p 2 choiceName + m ()Lcom/mojang/datafixers/types/Type; method_28295 getIdentifierType + m (Ljava/lang/String;)Ljava/lang/String; method_5193 normalize + p 0 id + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/class_1220$1 net/minecraft/datafixer/schema/IdentifierNormalizingSchema$1 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Ljava/lang/Object; write write + p 1 ops + p 2 value + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; read read + p 2 input + p 1 ops + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;)Ljava/lang/Object; method_28296 write +c net/minecraft/class_3885 net/minecraft/client/render/entity/feature/VillagerClothingFeatureRenderer + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; field_17149 villagerTypeToHat + f Lnet/minecraft/class_583; field_61810 babyModel + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_17148 LEVEL_TO_ID + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; field_17150 professionToHat + f Lnet/minecraft/class_3300; field_17151 resourceManager + f Lnet/minecraft/class_583; field_61809 adultModel + f Ljava/lang/String; field_17152 entityType + m (Ljava/lang/String;Lnet/minecraft/class_5321;Ljava/lang/Object;)Lnet/minecraft/class_3888$class_3889; method_17154 method_17154 + p 3 key + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_45803 method_45803 + p 2 path + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectMap;Ljava/lang/String;Lnet/minecraft/class_6880;)Lnet/minecraft/class_3888$class_3889; method_17153 getHatType + p 2 keyType + p 1 metadataMap + p 3 entry + m (Ljava/lang/String;Lnet/minecraft/class_6880;)Lnet/minecraft/class_2960; method_66858 getTexture + p 2 entry + p 1 keyType + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_3300;Ljava/lang/String;Lnet/minecraft/class_583;Lnet/minecraft/class_583;)V + p 5 babyModel + p 3 entityType + p 4 adultModel + p 1 context + p 2 resourceManager + m (Ljava/lang/String;Lnet/minecraft/class_5321;)Lnet/minecraft/class_2960; method_66857 method_66857 + p 2 key + m (Ljava/lang/String;Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_17155 getTexture + p 1 keyType + p 2 keyId + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10042;FF)V method_17151 render + m (Lnet/minecraft/class_3298;)Ljava/util/Optional; method_43211 method_43211 + p 0 resource + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_17152 method_17152 + p 0 levelToId +c net/minecraft/class_3886 net/minecraft/client/render/entity/ZombieEntityRenderer + m ()Lnet/minecraft/class_10086; method_62584 createRenderState + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_5601;Lnet/minecraft/class_5601;Lnet/minecraft/class_11677;Lnet/minecraft/class_11677;)V + p 2 layer + p 3 legsArmorLayer + p 1 ctx +c net/minecraft/class_2555 net/minecraft/block/WallTorchBlock + f Lcom/mojang/serialization/MapCodec; field_46491 CODEC + f Ljava/util/Map; field_11732 SHAPES_BY_DIRECTION + f Lnet/minecraft/class_2754; field_11731 FACING + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54066 method_54066 + p 0 instance + m (Lnet/minecraft/class_2555;)Lnet/minecraft/class_2400; method_54067 method_54067 + p 0 block + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_10841 getBoundingShape + p 0 state + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_56118 canPlaceAt + p 1 pos + p 2 facing + p 0 world +c net/minecraft/class_2556 net/minecraft/network/message/MessageType + c A message type (also known as "chat type") controls how to display or narrate\nthe chat messages sent to the clients. Message types are registered using data packs. When\nsending a chat message, the registry key of the message type can be passed to indicate\nwhich message type should be used.\n\n

Message type has two fields.\n

    \n
  • {@link #chat} controls the content displayed in the {@linkplain\nnet.minecraft.client.gui.hud.ChatHud chat hud}.
  • \n
  • {@link #narration} controls the narrated content.
  • \n
\n\n

The fields are "decoration", which is an instance of {@link Decoration}.\nDecorations are pre-defined message formatting and styling rules, which can be\n{@linkplain Decoration#apply applied} to the message to produce the displayed or\nnarrated text. + f Lnet/minecraft/class_7463; comp_792 chat + c the display rule for the content displayed in the chat hud + f Lnet/minecraft/class_5321; field_39228 SAY_COMMAND + c The registry key for the say command message type, used by {@linkplain\nnet.minecraft.server.command.SayCommand /say}. The message content is\n{@linkplain Decoration#ofChat decorated} using the {@code chat.type.announcement}\ntext. + f Lnet/minecraft/class_5321; field_39882 TEAM_MSG_COMMAND_OUTGOING + c The registry key for the outgoing team message command message type, used by\n{@linkplain net.minecraft.server.command.TeamMsgCommand /teammsg}. The message\ncontent is {@linkplain Decoration#ofTeamMessage decorated} using the {@code\nchat.type.team.sent} text.\n\n

An outgoing message is a message that the team message's sender sees in the chat. + f Lnet/minecraft/class_7463; comp_794 narration + c the narration rule for the content + f Lnet/minecraft/class_5321; field_39881 TEAM_MSG_COMMAND_INCOMING + c The registry key for the incoming team message command message type, used by\n{@linkplain net.minecraft.server.command.TeamMsgCommand /teammsg}. The message\ncontent is {@linkplain Decoration#ofTeamMessage decorated} using the {@code\nchat.type.team.text} text.\n\n

An incoming message is a team message received from the sender. + f Lcom/mojang/serialization/Codec; field_39227 CODEC + f Lnet/minecraft/class_5321; field_39800 MSG_COMMAND_OUTGOING + c The registry key for the outgoing message command message type, used by {@linkplain\nnet.minecraft.server.command.MessageCommand /msg}. The message content is\n{@linkplain Decoration#ofOutgoingMessage decorated} using the {@code\ncommands.message.display.outgoing} text.\n\n

An outgoing message is a message that the private message's sender sees in the chat. + f Lnet/minecraft/class_9139; field_51969 PACKET_CODEC + f Lnet/minecraft/class_7463; field_39677 CHAT_TEXT_DECORATION + f Lnet/minecraft/class_5321; field_39799 MSG_COMMAND_INCOMING + c The registry key for the incoming message command message type, used by {@linkplain\nnet.minecraft.server.command.MessageCommand /msg}. The message content is\n{@linkplain Decoration#ofIncomingMessage decorated} using the {@code\ncommands.message.display.incoming} text.\n\n

An incoming message is a private message received from the sender. + f Lnet/minecraft/class_5321; field_39231 EMOTE_COMMAND + c The registry key for the emote command message type, used by {@linkplain\nnet.minecraft.server.command.MeCommand /me}. The message content is\n{@linkplain Decoration#ofChat decorated} using the {@code chat.type.emote} text. + f Lnet/minecraft/class_5321; field_11737 CHAT + c The registry key for the message type used by {@link\nnet.minecraft.network.packet.c2s.play.ChatMessageC2SPacket chat messages}.\nThe message content is {@linkplain Decoration#ofChat decorated} using the\n{@code chat.type.text} text. + f Lnet/minecraft/class_9139; field_51970 ENTRY_PACKET_CODEC + m (Lnet/minecraft/class_7891;)V method_43844 bootstrap + p 0 messageTypeRegisterable + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_43845 register + p 0 id + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5455;Lnet/minecraft/class_2561;)Lnet/minecraft/class_2556$class_7602; method_44834 params + p 2 name + p 0 typeKey + p 1 registryManager + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_1297;)Lnet/minecraft/class_2556$class_7602; method_44832 params + p 0 typeKey + p 1 entity + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2168;)Lnet/minecraft/class_2556$class_7602; method_44833 params + p 1 source + p 0 typeKey + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43843 method_43843 + p 0 instance + m ()Lnet/minecraft/class_7463; comp_792 chat + m ()Lnet/minecraft/class_7463; comp_794 narration + m (Lnet/minecraft/class_7463;Lnet/minecraft/class_7463;)V + p 1 chat + p 2 narration +c net/minecraft/class_2556$class_7602 net/minecraft/network/message/MessageType$Parameters + c A record holding the message type and the decoration parameters. + f Lnet/minecraft/class_6880; comp_919 type + f Lnet/minecraft/class_9139; field_48776 CODEC + f Lnet/minecraft/class_2561; comp_920 name + f Ljava/util/Optional; comp_921 targetName + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_44838 applyNarrationDecoration + p 1 content + m ()Lnet/minecraft/class_6880; comp_919 type + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_2556$class_7602; method_44839 withTargetName + c {@return a new instance with the given target name}\n\n

Target name is used as the team name in {@link\nnet.minecraft.server.command.TeamMsgCommand} and as the recipient name in {@link\nnet.minecraft.server.command.MessageCommand}. + p 1 targetName + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_44837 applyChatDecoration + p 1 content + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2561;)V + p 1 type + p 2 name + m ()Lnet/minecraft/class_2561; comp_920 name + m ()Ljava/util/Optional; comp_921 targetName + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2561;Ljava/util/Optional;)V + p 1 type + p 2 name + p 3 targetName +c net/minecraft/class_3887 net/minecraft/client/render/entity/feature/FeatureRenderer + f Lnet/minecraft/class_3883; field_17155 context + m (Lnet/minecraft/class_3879;Lnet/minecraft/class_2960;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10042;II)V method_23196 render + p 4 light + p 5 state + p 6 color + p 7 queueOrder + p 0 model + p 1 texture + p 2 matrices + p 3 queue + m (Lnet/minecraft/class_3879;Lnet/minecraft/class_2960;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10042;II)V method_23199 renderModel + p 1 texture + p 2 matrices + p 3 queue + p 4 light + p 0 model + p 5 state + p 6 color + p 7 queueOrder + m ()Lnet/minecraft/class_583; method_17165 getContextModel + m (Lnet/minecraft/class_3883;)V + p 1 context + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10017;FF)V method_4199 render + p 4 state + p 5 limbAngle + p 2 queue + p 3 light + p 6 limbDistance + p 1 matrices +c net/minecraft/class_1225 net/minecraft/datafixer/schema/Schema1125 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 3 blockEntityTypes + p 2 entityTypes + p 1 schema +c net/minecraft/class_3880 net/minecraft/client/render/block/entity/BellBlockEntityRenderer + f Lnet/minecraft/class_11701; field_61781 materials + f Lnet/minecraft/class_4730; field_17145 BELL_BODY_TEXTURE + f Lnet/minecraft/class_9943; field_20816 bellBody + m (Lnet/minecraft/class_3721;Lnet/minecraft/class_11953;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74347 updateRenderState + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 context + m ()Lnet/minecraft/class_11953; method_74346 createRenderState + m (Lnet/minecraft/class_11953;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_17139 render +c net/minecraft/class_2550 net/minecraft/network/handler/SplitterHandler + f Lnet/minecraft/class_8762; field_45956 packetSizeLogger + f Lio/netty/buffer/ByteBuf; field_45691 reusableBuf + f I field_45690 LENGTH_BYTES + m (Lnet/minecraft/class_8762;)V + p 1 packetSizeLogger + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List;)V decode decode + p 1 ctx + p 3 bytes + p 2 buf + m (Lio/netty/channel/ChannelHandlerContext;)V handlerRemoved0 handlerRemoved0 + p 1 context + m (Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)Z method_53022 shouldSplit + p 0 source + p 1 sizeBuf +c net/minecraft/class_1224 net/minecraft/datafixer/schema/Schema1022 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 2 entityTypes + p 3 blockEntityTypes + p 1 schema +c net/minecraft/class_3881 net/minecraft/client/render/entity/model/ModelWithArms + m (Lnet/minecraft/class_10017;Lnet/minecraft/class_1306;Lnet/minecraft/class_4587;)V method_2803 setArmAngle + p 3 matrices + p 2 arm + p 1 state +c net/minecraft/class_1223 net/minecraft/datafixer/schema/Schema106 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 2 parent + p 1 versionKey + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 1 schema + p 2 entityTypes + p 3 blockEntityTypes +c net/minecraft/class_3882 net/minecraft/client/render/entity/model/ModelWithHead + c Represents a model with a head. + m ()Lnet/minecraft/class_630; method_2838 getHead + c Gets the head model part.\n\n@return the head + m (Lnet/minecraft/class_4587;)V method_74046 applyTransform + p 1 matrices +c net/minecraft/class_2551 net/minecraft/block/WallSignBlock + f Lnet/minecraft/class_2754; field_11726 FACING + f Lcom/mojang/serialization/MapCodec; field_46489 CODEC + f Ljava/util/Map; field_11727 SHAPES_BY_DIRECTION + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54064 method_54064 + p 0 instance +c net/minecraft/class_2552 net/minecraft/network/handler/SizePrepender + f I field_33288 MAX_PREPEND_LENGTH + c The max length, in number of bytes, of the prepending size var int permitted.\nHas value {@value}. + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Lio/netty/buffer/ByteBuf;)V encode encode + p 1 ctx + p 2 input + p 3 output + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)V method_10840 encode +c net/minecraft/class_1222 net/minecraft/datafixer/schema/Schema100 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 2 parent + p 1 versionKey + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 3 blockEntityTypes + p 2 entityTypes + p 1 schema +c net/minecraft/class_3883 net/minecraft/client/render/entity/feature/FeatureRendererContext + m ()Lnet/minecraft/class_583; method_4038 getModel +c net/minecraft/class_1218 net/minecraft/datafixer/fix/WriteAndReadFix + f Ljava/lang/String; field_5742 name + f Lcom/mojang/datafixers/DSL$TypeReference; field_5743 type + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;)V + p 1 outputSchema + p 2 name + p 3 type +c net/minecraft/class_1215 net/minecraft/datafixer/fix/AddTrappedChestFix + f Lorg/slf4j/Logger; field_5740 LOGGER +c net/minecraft/class_1215$class_1216 net/minecraft/datafixer/fix/AddTrappedChestFix$ListFixer + f Lit/unimi/dsi/fastutil/ints/IntSet; field_5741 targets + m (I)Z method_5180 isTarget + p 1 index +c net/minecraft/class_2546 net/minecraft/block/WallBannerBlock + f Lcom/mojang/serialization/MapCodec; field_46486 CODEC + f Ljava/util/Map; field_11723 SHAPES_BY_DIRECTION + f Lnet/minecraft/class_2754; field_11722 FACING + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54062 method_54062 + p 0 instance +c net/minecraft/class_2547 net/minecraft/network/listener/PacketListener + c A packet listener listens to packets on a {@linkplain\nnet.minecraft.network.ClientConnection connection}.\n\n

Its listener methods will be called on the netty event loop than the\nclient or server game engine threads. + m (Lnet/minecraft/class_2596;)Z method_52413 accepts + p 1 packet + m (Lnet/minecraft/class_128;Lnet/minecraft/class_129;)V method_55597 addCustomCrashReportInfo + p 1 report + p 2 section + m (Lnet/minecraft/class_128;)V method_55622 fillCrashReport + p 1 report + m (Lnet/minecraft/class_9812;)V method_10839 onDisconnected + c Called when the connection this listener listens to has disconnected.\nCan be used to display the disconnection reason. + p 1 info + m ()Lnet/minecraft/class_2539; method_52280 getPhase + m ()Z method_48106 isConnectionOpen + m (Lnet/minecraft/class_2596;Ljava/lang/Exception;)V method_59807 onPacketException + p 2 exception + p 1 packet + m ()Lnet/minecraft/class_2598; method_52895 getSide + m (Lnet/minecraft/class_2561;Ljava/lang/Throwable;)Lnet/minecraft/class_9812; method_60881 createDisconnectionInfo + p 2 exception + p 1 reason +c net/minecraft/class_2548 net/minecraft/network/handler/PacketEncoderException + m (Ljava/lang/String;)V + p 1 message + m (Ljava/lang/Throwable;)V + p 1 cause +c net/minecraft/class_3879 net/minecraft/client/model/Model + c Represents a dynamic model which has its own render layers and custom rendering. + f Lnet/minecraft/class_630; field_54014 root + f Ljava/util/function/Function; field_21343 layerFactory + f Ljava/util/List; field_54013 parts + m (Lnet/minecraft/class_630;Ljava/util/function/Function;)V + p 1 root + p 2 layerFactory + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_23500 getLayer + c {@return the render layer for the corresponding texture} + p 1 texture + c the texture used for the render layer + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4588;II)V method_60879 render + p 4 overlay + p 3 light + p 2 vertices + p 1 matrices + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4588;III)V method_62100 render + p 4 overlay + p 3 light + p 5 color + p 2 vertices + p 1 matrices + m ()Lnet/minecraft/class_630; method_63512 getRootPart + m ()V method_63514 resetTransforms + m (Ljava/lang/Object;)V method_2819 setAngles + p 1 state + m ()Ljava/util/List; method_63513 getParts +c net/minecraft/class_3879$class_9948 net/minecraft/client/model/Model$SinglePartModel + m (Lnet/minecraft/class_630;Ljava/util/function/Function;)V + p 1 part + p 2 layerFactory + m (Lnet/minecraft/class_3902;)V method_72856 setAngles +c net/minecraft/class_1219 net/minecraft/datafixer/fix/VillagerTradeFix + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5190 method_5190 + p 0 entry + m (Ljava/lang/String;)Ljava/lang/String; method_5192 method_5192 + p 0 id + m (Lcom/mojang/datafixers/OpticFinder;Ljava/util/function/Function;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_59638 method_59638 + p 4 villagerTradeTyped + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5187 fixPumpkinTrade + p 2 itemTyped + p 1 idOpticFinder + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_59639 method_59639 + p 2 itemTyped +c net/minecraft/class_2549 net/minecraft/block/WallSkullBlock + f Ljava/util/Map; field_11725 SHAPES_BY_DIRECTION + f Lnet/minecraft/class_2754; field_11724 FACING + f Lcom/mojang/serialization/MapCodec; field_46490 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54065 method_54065 + p 0 instance +c net/minecraft/class_2564 net/minecraft/text/Texts + f Ljava/lang/String; field_33536 DEFAULT_SEPARATOR + f Lnet/minecraft/class_2561; field_33537 GRAY_DEFAULT_SEPARATOR_TEXT + f Lnet/minecraft/class_2561; field_33538 DEFAULT_SEPARATOR_TEXT + m (Ljava/util/Collection;Ljava/util/function/Function;)Lnet/minecraft/class_2561; method_10884 join + p 0 elements + p 1 transformer + m (Ljava/util/Collection;Ljava/util/function/Function;)Lnet/minecraft/class_2561; method_10887 joinOrdered + p 0 elements + p 1 transformer + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_5250; method_10885 bracketed + p 0 text + m (Ljava/util/Collection;)Lnet/minecraft/class_2561; method_10888 joinOrdered + p 0 strings + m (Lnet/minecraft/class_2168;Ljava/util/Optional;Lnet/minecraft/class_1297;I)Ljava/util/Optional; method_36330 parse + p 2 sender + p 3 depth + p 0 source + p 1 text + m (Ljava/util/Collection;Lnet/minecraft/class_2561;Ljava/util/function/Function;)Lnet/minecraft/class_5250; method_36332 join + p 1 separator + p 0 elements + p 2 transformer + m (Ljava/lang/String;)Lnet/minecraft/class_5250; method_47523 bracketedCopyable + p 0 string + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2561;Lnet/minecraft/class_1297;I)Lnet/minecraft/class_5250; method_10881 parse + p 0 source + p 2 sender + p 1 text + p 3 depth + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2583;Lnet/minecraft/class_1297;I)Lnet/minecraft/class_2583; method_27663 parseStyle + p 0 source + p 1 style + p 2 sender + p 3 depth + m (Lnet/minecraft/class_5250;Lnet/minecraft/class_2583;)Lnet/minecraft/class_5250; method_10889 setStyleIfAbsent + p 0 text + p 1 style + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2561; method_75859 withStyle + p 1 style + p 0 text + m (Lcom/mojang/brigadier/Message;)Lnet/minecraft/class_2561; method_10883 toText + p 0 message + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_10886 method_10886 + p 0 string + m (Ljava/lang/String;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_47524 method_47524 + p 1 style + m (Ljava/util/Collection;Ljava/util/Optional;Ljava/util/function/Function;)Lnet/minecraft/class_5250; method_36331 join + p 2 transformer + p 0 elements + p 1 separator + m (Ljava/util/Collection;Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_37112 join + p 1 separator + p 0 texts + m (Lnet/minecraft/class_2561;)Z method_43476 hasTranslation + p 0 text +c net/minecraft/class_3895 net/minecraft/network/packet/s2c/play/OpenWrittenBookS2CPacket + f Lnet/minecraft/class_1268; field_17199 hand + f Lnet/minecraft/class_9139; field_47944 CODEC + m (Lnet/minecraft/class_2602;)V method_17187 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Lnet/minecraft/class_1268; method_17188 getHand + m (Lnet/minecraft/class_1268;)V + p 1 hand + m (Lnet/minecraft/class_2540;)V method_55894 write + p 1 buf +c net/minecraft/class_1232 net/minecraft/datafixer/schema/Schema1451v2 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5225 method_5225 + p 1 name +c net/minecraft/class_1231 net/minecraft/datafixer/schema/Schema1451v3 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5217 method_5217 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_2565 net/minecraft/block/WetSpongeBlock + f Lcom/mojang/serialization/MapCodec; field_46502 CODEC +c net/minecraft/class_1230 net/minecraft/datafixer/schema/Schema1451 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_3898 net/minecraft/server/world/ServerChunkLoadingManager + f Lnet/minecraft/class_5567; field_26931 chunkStatusChangeListener + f I field_29675 DEFAULT_VIEW_DISTANCE + f Lnet/minecraft/class_1255; field_17216 mainThreadExecutor + f Lnet/minecraft/class_3227; field_17215 lightingProvider + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; field_17213 currentChunkHolders + f Lnet/minecraft/class_3898$class_3216; field_17228 levelManager + f Lnet/minecraft/class_7869; field_40856 structurePlacementCalculator + f Ljava/lang/String; field_17707 saveDir + f Lnet/minecraft/class_10592; field_55588 ticketManager + f Lorg/slf4j/Logger; field_17212 LOGGER + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; field_17220 chunkHolders + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; field_18807 chunksToUnload + f Lit/unimi/dsi/fastutil/longs/LongSet; field_54964 chunksToSave + f Ljava/util/concurrent/atomic/AtomicInteger; field_54965 chunksBeingSavedCount + f B field_29673 LEVEL_CHUNK + f Lnet/minecraft/class_10171; field_54034 worldGenScheduler + f Lit/unimi/dsi/fastutil/longs/Long2LongMap; field_52353 chunkToNextSaveTimeMs + f Lnet/minecraft/class_9312; field_51861 generationContext + f B field_29672 UNMARKED_CHUNK + f Lnet/minecraft/class_10171; field_54035 lightScheduler + f I field_29670 FORCED_CHUNK_LEVEL + f B field_29671 PROTO_CHUNK + f Lit/unimi/dsi/fastutil/longs/LongSet; field_17221 unloadedChunks + f Lnet/minecraft/class_3210; field_18241 playerChunkWatchingManager + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_18242 entityTrackers + f Ljava/util/concurrent/CompletableFuture; field_51863 UNLOADED_CHUNKS_FUTURE + f Ljava/util/List; field_51864 loaders + f Ljava/util/Queue; field_19343 unloadTaskQueue + f I field_18243 watchDistance + f Z field_17222 chunkHolderListDirty + f Lnet/minecraft/class_9259; field_51862 UNLOADED_CHUNKS + f Lnet/minecraft/class_3218; field_17214 world + f Lnet/minecraft/class_7138; field_37278 noiseConfig + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; field_23786 chunkToType + f Lnet/minecraft/class_4153; field_18808 pointOfInterestStorage + m (Lnet/minecraft/class_3222;)V method_17241 sendWatchPackets + p 1 player + m (Ljava/util/List;)Lnet/minecraft/class_2818; method_17232 method_17232 + p 0 chunks + m (Lnet/minecraft/class_3193;Ljava/lang/Void;Ljava/lang/Throwable;)V method_20604 method_20604 + p 1 void_ + p 2 throwable + m ()Lnet/minecraft/class_2794; method_37897 getChunkGenerator + m ()Lnet/minecraft/class_3227; method_17212 getLightingProvider + m (Lnet/minecraft/class_3193;ILjava/util/function/IntFunction;)Ljava/util/concurrent/CompletableFuture; method_17220 getRegion + p 2 margin + p 1 centerChunk + p 3 distanceToStatus + m (Lnet/minecraft/class_1923;)Lnet/minecraft/class_2791; method_43382 getProtoChunk + p 1 chunkPos + m (Lnet/minecraft/class_1923;Ljava/util/Optional;)Lnet/minecraft/class_2791; method_43375 method_43375 + p 2 nbt + m (Lnet/minecraft/class_3222;Z)V method_18714 handlePlayerAddedOrRemoved + p 1 player + p 2 added + m (Lnet/minecraft/class_1923;)Ljava/lang/String; method_23272 getChunkLoadingDebugInfo + p 1 chunkPos + m ()Z method_17244 updateHolderMap + m ()V method_18727 tickEntityMovement + c Ticks and updates the tracked status of each tracker.\n\n

This first checks if entities have changed chunk sections, and updates\ntracking status of those entities to all players. It then checks if any player\nhas changed chunk sections, and updates all entities tracking status to those\nplayers. This ensures all possible updates are accounted for. + m (Lnet/minecraft/class_3193;Lnet/minecraft/class_2818;)V method_53686 sendToPlayers + p 2 chunk + p 1 chunkHolder + m (Ljava/util/function/BooleanSupplier;)V method_65055 saveChunks + p 1 shouldKeepTicking + m (Ljava/lang/StringBuilder;Lnet/minecraft/class_3193;)V method_40068 method_40068 + p 1 chunkHolder + m (J)Lnet/minecraft/class_2818; method_53688 getPostProcessedChunk + p 1 pos + m (Lnet/minecraft/class_2791;)Ljava/util/Optional; method_21620 method_21620 + p 0 chunk + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_2818;)V method_52348 track + p 1 chunk + p 0 player + m (Lnet/minecraft/class_1297;)Z method_74530 hasTrackingPlayer + p 1 entity + m (Lnet/minecraft/class_3193;)Ljava/util/concurrent/CompletableFuture; method_31417 makeChunkAccessible + p 1 holder + m ()I method_17260 getLoadedChunkCount + m ()Z method_39992 shouldDelayShutdown + c {@return whether the server shutdown should be delayed to process some tasks} + m (Ljava/util/List;)Lnet/minecraft/class_9259; method_60449 method_60449 + p 1 chunks + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2596;)V method_74526 sendToOtherNearbyPlayers + p 2 packet + p 1 entity + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/class_2791;)V method_20578 method_20578 + p 1 chunk + m (Ljava/util/concurrent/CompletableFuture;)Ljava/lang/String; method_21676 getFutureStatus + p 0 future + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_32$class_5143;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/class_3485;Ljava/util/concurrent/Executor;Lnet/minecraft/class_1255;Lnet/minecraft/class_2823;Lnet/minecraft/class_2794;Lnet/minecraft/class_5567;Ljava/util/function/Supplier;Lnet/minecraft/class_10592;IZ)V + p 5 executor + p 6 mainThreadExecutor + p 7 chunkProvider + p 8 chunkGenerator + p 9 chunkStatusChangeListener + p 10 persistentStateManagerFactory + p 11 ticketManager + p 12 viewDistance + p 13 dsync + p 1 world + p 2 session + p 3 dataFixer + p 4 structureTemplateManager + m (I)Lnet/minecraft/class_2806; method_17254 method_17254 + p 0 distance + m ()Lnet/minecraft/class_7869; method_46641 getStructurePlacementCalculator + m (J)Ljava/util/function/IntSupplier; method_17604 getCompletedLevelSupplier + p 1 pos + m (Z)V method_17242 save + p 1 flush + m (Lnet/minecraft/class_9259;)Lnet/minecraft/class_9259; method_51282 method_51282 + p 0 chunk + m (Lnet/minecraft/class_3222;)V method_20726 updateWatchedSection + c Updates the watched chunk section position for the {@code player}, and sends a\nrender distance update packet to the client. + p 1 player + m (Lnet/minecraft/class_3222;)V method_18713 updatePosition + c Updates the chunk section position of the {@code player}. This updates the player\nposition for both entity tracking and chunk loading (watching) logic.\n\n@see ServerChunkManager#updatePosition(ServerPlayerEntity) + p 1 player + m (Ljava/util/List;)V method_67497 collectSpawningChunks + p 1 chunks + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_43381 updateChunkNbt + p 1 nbt + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_8603;)V method_52346 sendWatchPackets + p 1 player + p 2 chunkFilter + m (Lnet/minecraft/class_3222;Ljava/util/List;)V method_49420 method_49420 + p 1 chunksx + p 0 player + m (Ljava/util/function/Consumer;J)V method_67499 method_67499 + p 2 chunkPos + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_3194;)V method_31414 onChunkStatusChange + p 2 levelType + p 1 chunkPos + m (Lnet/minecraft/class_9259;)Lnet/minecraft/class_9259; method_17230 method_17230 + p 0 chunk + m (Lnet/minecraft/class_1923;)V method_27054 markAsProtoChunk + p 1 pos + m (Ljava/util/List;)Lnet/minecraft/class_2818; method_31416 method_31416 + p 0 chunks + m (Lnet/minecraft/class_3193;)Lnet/minecraft/class_2791; method_20584 method_20584 + p 1 holder + m (Ljava/util/function/BooleanSupplier;)V method_20605 unloadChunks + p 1 shouldKeepTicking + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1923;)Z method_38782 canTickChunk + c {@return whether the {@code player} can tick the chunk at {@code pos}}\n\n@implNote Spectators cannot tick chunks. Additionally, only chunks within 128\nblock radius of that player can be ticked.\n\n@apiNote This controls monster spawning and block random ticks. + p 1 player + p 2 pos + m (Lnet/minecraft/class_3193;Lnet/minecraft/class_9259;)Lnet/minecraft/class_9259; method_53683 method_53683 + p 2 optionalChunk + m (Lnet/minecraft/class_1923;Ljava/util/function/IntSupplier;ILjava/util/function/IntConsumer;)V method_63545 updateLevel + p 4 levelSetter + p 3 targetLevel + p 2 levelGetter + p 1 pos + m (Lnet/minecraft/class_3222;)I method_52350 getViewDistance + p 1 player + m (Ljava/lang/StringBuilder;Lnet/minecraft/class_3193;Lcom/mojang/datafixers/util/Pair;)V method_40069 method_40069 + p 2 pair + m (Lnet/minecraft/class_1297;)V method_18716 unloadEntity + p 1 entity + m (ILnet/minecraft/class_3193;)Z method_72252 method_72252 + p 1 holder + m (Ljava/util/function/Consumer;)V method_74529 forEachChunk + p 1 action + m (I)V method_17214 setViewDistance + p 1 watchDistance + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_5321;)V method_75865 method_75865 + p 1 generator + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1923;)V method_52355 method_52355 + p 2 chunkPos + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2596;)V method_74528 sendToNearbyPlayers + p 1 entity + p 2 packet + m (Ljava/util/Optional;)Ljava/util/Optional; method_43377 method_43377 + p 1 nbt + m (Lnet/minecraft/class_1923;)V method_53689 method_53689 + p 1 pos + m (Ljava/lang/IllegalStateException;Ljava/lang/String;)Lnet/minecraft/class_148; method_40067 crash + p 2 details + p 1 exception + m (Lnet/minecraft/class_1923;I)V method_53685 forceLighting + p 2 radius + p 1 centerPos + m (Lnet/minecraft/class_9759;)V method_60439 schedule + p 1 loader + m (Lnet/minecraft/class_1923;)Z method_27055 isLevelChunk + p 1 pos + m (Lnet/minecraft/class_2791;)Z method_17228 save + p 1 chunk + m (Lnet/minecraft/class_9259;)Lnet/minecraft/class_9259; method_20577 method_20577 + p 0 optionalChunks + m (Lnet/minecraft/class_2818;)Ljava/lang/Integer; method_21621 method_21621 + p 0 chunk + m ()Lnet/minecraft/class_4153; method_19488 getPointOfInterestStorage + m (J)Lnet/minecraft/class_3193; method_17216 getChunkHolder + p 1 pos + m (Lnet/minecraft/class_1923;)Z method_38783 shouldTick + p 1 pos + m (Lnet/minecraft/class_1923;)Ljava/util/List; method_37907 getPlayersWatchingChunk + p 1 pos + m (Lnet/minecraft/class_3222;Ljava/util/function/Consumer;)V method_74525 forEachEntityTrackedBy + p 2 action + p 1 player + m ()Ljava/lang/String; method_37476 getSaveDir + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1923;)V method_52354 method_52354 + p 1 chunkPos + m (Lnet/minecraft/class_2818;)Ljava/lang/Integer; method_39220 method_39220 + p 0 chunk + m (J)Lnet/minecraft/class_3193; method_17255 getCurrentChunkHolder + p 1 pos + m (Ljava/lang/Throwable;Lnet/minecraft/class_1923;)Lnet/minecraft/class_2791; method_43376 recoverFromException + p 1 throwable + p 2 chunkPos + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_243;I)Z method_76056 isNonSpectatorWithinDistance + p 1 player + p 2 pos + p 3 distance + m (Lnet/minecraft/class_5321;Ljava/util/Optional;)Lnet/minecraft/class_2487; method_75863 getContextNbt + p 0 dimensionKey + p 1 chunkGeneratorKey + m (Lnet/minecraft/class_3193;J)Z method_39925 save + p 1 chunkHolder + p 2 currentTime + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_243;)D method_18704 getSquaredDistance + p 1 pos + p 0 chunkPos + m (JILnet/minecraft/class_3193;I)Lnet/minecraft/class_3193; method_17217 setLevel + c Sets the loading level of {@code ChunkHolder}s. Nonexistent {@code ChunkHolder}s will be created automatically\nif their loading level is 45 or lower, and chunks whose loading levels are 46 or higher will be scheduled to be removed. + p 4 holder + p 3 level + p 1 pos + m (Ljava/util/function/Consumer;)V method_67498 forEachBlockTickingChunk + p 1 chunkConsumer + m (Ljava/util/function/BooleanSupplier;)V method_17233 tick + p 1 shouldKeepTicking + m (Lnet/minecraft/class_2818;)Ljava/lang/Integer; method_39221 method_39221 + p 0 chunk + m (Lnet/minecraft/class_3222;)Ljava/util/List; method_49422 method_49422 + p 0 player + m (Lnet/minecraft/class_3222;II)Z method_52351 isOnTrackEdge + p 1 player + p 2 chunkX + p 3 chunkZ + m (Lnet/minecraft/class_1923;)Z method_61261 isAnyPlayerTicking + p 1 pos + m (Lnet/minecraft/class_1923;)Ljava/util/concurrent/CompletableFuture; method_43383 getUpdatedChunkNbt + p 1 chunkPos + m (Lnet/minecraft/class_3193;)Ljava/util/concurrent/CompletableFuture; method_17235 makeChunkTickable + p 1 holder + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_2808;)B method_27053 mark + p 2 type + p 1 pos + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1923;)V method_52352 untrack + p 1 pos + p 0 player + m (Lnet/minecraft/class_3193;)Ljava/util/concurrent/CompletableFuture; method_17247 makeChunkEntitiesTickable + p 1 holder + m (Ljava/util/List;)V method_49421 sendChunkBiomePackets + p 1 chunks + m (J)Lnet/minecraft/class_2806; method_72254 getStatus + p 1 chunkPos + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2596;Ljava/util/function/Predicate;)V method_74527 sendToOtherNearbyPlayersIf + p 3 predicate + p 2 packet + p 1 entity + m (Lnet/minecraft/class_1923;Ljava/lang/Void;Ljava/lang/Throwable;)Ljava/lang/Object; method_57120 method_57120 + p 3 exception + m (Lnet/minecraft/class_1297;)V method_18701 loadEntity + p 1 entity + m ()Lnet/minecraft/class_7138; method_41247 getNoiseConfig + m (Lnet/minecraft/class_2791;)Z method_20582 method_20582 + p 0 chunk + m (Lnet/minecraft/class_2806;)Ljava/util/stream/Stream; method_72253 getChunkHolders + c {@return chunk holders with a level less than or equal to {@code status}} + p 1 status + m (I)Lnet/minecraft/class_2806; method_17245 method_17245 + p 0 distance + m (Ljava/io/Writer;)V method_21619 dump + p 1 writer + m (Lnet/minecraft/class_2338;I)Z method_76057 isAnyNonSpectatorWithin + p 1 pos + p 2 distance + m (JLnet/minecraft/class_3193;)V method_20458 tryUnloadChunk + p 3 chunk + p 1 pos + m (Lnet/minecraft/class_3193;Ljava/util/List;)Lnet/minecraft/class_2818; method_61257 method_61257 + p 2 chunks + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1923;)V method_52347 track + p 1 player + p 2 pos + m (Lnet/minecraft/class_1923;)V method_65056 markChunkNeedsSaving + p 1 pos + m (Lnet/minecraft/class_3222;II)Z method_52345 isTracked + p 2 chunkX + p 1 player + p 3 chunkZ + m ()Lnet/minecraft/class_3204; method_17263 getLevelManager + m (Lnet/minecraft/class_3222;)Z method_18722 doesNotGenerateChunks + p 1 player + m (Lnet/minecraft/class_1923;Ljava/lang/Throwable;)Lnet/minecraft/class_2791; method_43374 method_43374 + p 2 throwable + m (Lnet/minecraft/class_1923;)Ljava/util/concurrent/CompletableFuture; method_20619 loadChunk + p 1 pos +c net/minecraft/class_3898$class_3208 net/minecraft/server/world/ServerChunkLoadingManager$EntityTracker + c An entity tracker governs which players' clients can see an entity. Each\ntracker corresponds to one entity in a server world and is mapped from the\nentity's network ID.\n\n@see ServerChunkLoadingManager#entityTrackers + f Lnet/minecraft/class_1297; field_18247 entity + f I field_18248 maxDistance + f Ljava/util/Set; field_18250 listeners + f Lnet/minecraft/class_4076; field_18249 trackedSection + c The chunk section position of the tracked entity, may be outdated as an entity\nticks. This is used by {@link ServerChunkLoadingManager#tickEntityMovement()\ntickEntityMovement()} to bypass unnecessary status updates before calling\n{@link #updateTrackedStatus(ServerPlayerEntity) updateTrackedStatus()}. + f Lnet/minecraft/class_3231; field_18246 entry + m (Ljava/util/List;)V method_18729 updateTrackedStatus + c Updates the tracked status of this tracker's entity for the given players.\n\n@see updateTrackedStatus(ServerPlayerEntity) + p 1 players + m (Lnet/minecraft/class_3898;Lnet/minecraft/class_1297;IIZ)V + p 5 alwaysUpdateVelocity + p 4 tickInterval + p 3 maxDistance + p 2 entity + m (Lnet/minecraft/class_3222;)V method_18736 updateTrackedStatus + c Updates the tracked status of this tracker's entity for the {@code player}.\n\n

If this tracker should be listened by the player, the player's tracking\nlistener is added if it is not in the listeners; if this tracker should not be\nlistened by the player, the player's tracking listener is removed if it is in\nthe listeners. + p 1 player + m (Lnet/minecraft/class_3222;)V method_18733 stopTracking + p 1 player + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()I method_22844 getMaxTrackDistance + m (I)I method_27906 adjustTrackingDistance + p 1 initialDistance + m ()V method_18728 stopTracking +c net/minecraft/class_3898$class_3216 net/minecraft/server/world/ServerChunkLoadingManager$LevelManager + m (Lnet/minecraft/class_3898;Lnet/minecraft/class_10592;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)V + p 3 executor + p 4 mainThreadExecutor + p 2 ticketManager +c net/minecraft/class_2567 net/minecraft/block/WallWitherSkullBlock + f Lcom/mojang/serialization/MapCodec; field_46505 CODEC +c net/minecraft/class_1236 net/minecraft/datafixer/schema/Schema1451v6 + f Ljava/lang/String; field_34013 SPECIAL_TYPE + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; method_37389 method_37389 + p 0 schema + m (Ljava/lang/String;)Ljava/lang/String; method_52506 toDotSeparated + p 0 id + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 3 blockEntityTypes + p 2 entityTypes + p 1 schema +c net/minecraft/class_1236$2 net/minecraft/datafixer/schema/Schema1451v6$2 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_37398 method_37398 + p 1 criteriaName + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 ops + p 2 value +c net/minecraft/class_1236$1 net/minecraft/datafixer/schema/Schema1451v6$1 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 2 value + p 1 ops + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/Dynamic; method_37396 method_37396 + p 1 pair + m (Ljava/lang/String;)Lcom/mojang/datafixers/util/Pair; method_37397 method_37397 + p 0 criteriaName +c net/minecraft/class_2560 net/minecraft/block/CobwebBlock + f Lcom/mojang/serialization/MapCodec; field_46498 CODEC +c net/minecraft/class_2561 net/minecraft/text/Text + c A text. Can be converted to and from JSON format.\n\n

Each text has a tree structure, embodying all its {@link\n#getSiblings() siblings}. To iterate contents in the text and all\nits siblings, call {@code visit} methods.\n\n

This interface does not expose mutation operations. For mutation,\nrefer to {@link MutableText}.\n\n@see MutableText + m (Lnet/minecraft/class_2561;)Z method_44745 contains + c {@return whether the text contains {@code text}, without considering styles} + p 1 text + m ()Ljava/lang/String; method_54160 getLiteralString + c {@return the string of the literal text, or {@code null} if this text is not\na literal}\n\n

A literal text is an unstyled {@link PlainTextContent} without any siblings.\nSuch texts are serialized as a string instead of an object. + m (Ljava/lang/String;)Lnet/minecraft/class_5250; method_43472 keybind + p 0 string + m (Ljava/lang/String;)Lnet/minecraft/class_5250; method_43470 literal + p 0 string + m (Ljava/util/List;Lnet/minecraft/class_2583;Ljava/lang/String;)Ljava/util/Optional; method_36135 method_36135 + p 1 styleOverride + p 2 text + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_5250; method_48321 translatableWithFallback + p 1 fallback + p 0 key + m ()Lnet/minecraft/class_5250; method_27661 copy + c Copies the text's content, the style, and the siblings.\n\n

A shallow copy is made for the siblings. + m ()Lnet/minecraft/class_5481; method_30937 asOrderedText + m (I)Ljava/lang/String; method_10858 asTruncatedString + c Returns the full string representation of this text, truncated beyond\nthe supplied {@code length}. + p 1 length + c the max length allowed for the string representation of the text + m (Lnet/minecraft/class_2583;)Ljava/util/List; method_36136 getWithStyle + p 1 style + m (Lnet/minecraft/class_1923;)Lnet/minecraft/class_2561; method_54156 of + c {@return a text representing chunk {@code pos}}\n\n

The returned text has the format {@code [X, Z]}. + p 0 pos + m (Ljava/util/UUID;)Lnet/minecraft/class_2561; method_54158 of + c {@return a text representing {@code uuid}}\n\n

The UUID is converted to a string like {@code 12345678-90AB-CDEF-1234-567890ABCDEF}.\n\n@see UUID#toString + p 0 uuid + m (Ljava/lang/String;)Lnet/minecraft/class_5250; method_43471 translatable + p 0 key + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_30163 of + c Creates a literal text with the given string as content. + p 0 string + m ()Ljava/util/List; method_44746 withoutStyle + m (Ljava/util/Date;)Lnet/minecraft/class_2561; method_54157 of + c {@return a {@linkplain #literal literal} text representing {@code date}}\n\n@implNote The date is converted to a string using {@link Date#toString}.\nNotably, it does not localize the date format. + p 0 date + m (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Lnet/minecraft/class_5250; method_48322 translatableWithFallback + p 0 key + p 1 fallback + p 2 args + m (Lnet/minecraft/class_10104;Ljava/util/Optional;)Lnet/minecraft/class_5250; method_43467 selector + p 0 selector + p 1 separator + m (Lcom/mojang/brigadier/Message;)Lnet/minecraft/class_2561; method_54155 of + c {@return a text with {@code message}}\n\n

If a text instance is passed, this method returns {@code message} itself;\notherwise this creates a new literal text with the message content. + p 0 message + m (Lnet/minecraft/class_10104;Ljava/lang/String;)Lnet/minecraft/class_5250; method_62790 score + p 1 objective + p 0 selector + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2561; method_54154 of + c {@return a text representing {@code id}}\n\n

The returned text has the format {@code namespace:path}.\nNamespace is always included. + p 0 id + m ()Lnet/minecraft/class_5250; method_27662 copyContentOnly + c Copies the text's content, excluding the styles or siblings. + m (Ljava/net/URI;)Lnet/minecraft/class_2561; method_61110 of + p 0 uri + m (ILjava/lang/StringBuilder;Ljava/lang/String;)Ljava/util/Optional; method_27655 method_27655 + p 2 string + m (Lnet/minecraft/class_11724;)Lnet/minecraft/class_5250; method_74062 object + p 0 object + m (Ljava/lang/String;[Ljava/lang/Object;)Lnet/minecraft/class_5250; method_54159 stringifiedTranslatable + c {@return a translatable text with arguments}\n\n

Arguments that are not numbers, booleans, strings, or another {@link Text} are\nconverted to strings using {@link String#valueOf(Object)}. + p 0 key + p 1 args + m ()Ljava/util/List; method_10855 getSiblings + c Returns the siblings of this text. + m ()Lnet/minecraft/class_5250; method_43473 empty + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_5250; method_43466 score + p 1 objective + p 0 name + m ()Lnet/minecraft/class_2583; method_10866 getStyle + c Returns the style of this text. + m (Ljava/lang/String;[Ljava/lang/Object;)Lnet/minecraft/class_5250; method_43469 translatable + c {@return a translatable text with arguments}\n\n

The arguments passed must be either numbers, booleans, strings, or another\n{@link Text}. Use {@link #stringifiedTranslatable} to construct texts with\nother objects as arguments. Alternatively, convert them using static methods here\nlike {@link #of(Identifier)}. + p 1 args + p 0 key + m ()Lnet/minecraft/class_7417; method_10851 getContent + c {@return the content of the text} + m (Ljava/lang/String;ZLjava/util/Optional;Lnet/minecraft/class_7419;)Lnet/minecraft/class_5250; method_43468 nbt + p 0 rawPath + p 1 interpret + p 2 separator + p 3 dataSource +c net/minecraft/class_1234 net/minecraft/datafixer/schema/Schema1451v4 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 3 blockEntityTypes + p 1 schema + p 2 entityTypes +c net/minecraft/class_1233 net/minecraft/datafixer/schema/Schema1451v5 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_2563 net/minecraft/block/WitherRoseBlock + f Lcom/mojang/serialization/MapCodec; field_46503 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54075 method_54075 + p 0 instance +c net/minecraft/class_1229 net/minecraft/datafixer/schema/Schema1451v1 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 3 blockEntityTypes + p 1 schema + p 2 entityTypes +c net/minecraft/class_1228 net/minecraft/datafixer/schema/Schema135 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 2 entityTypes + p 3 blockEntityTypes + p 1 schema +c net/minecraft/class_1227 net/minecraft/datafixer/schema/Schema143 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_1226 net/minecraft/datafixer/schema/Schema107 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 2 parent + p 1 versionKey + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_3888 net/minecraft/client/render/entity/feature/VillagerResourceMetadata + f Lnet/minecraft/class_3888$class_3889; comp_3458 hatType + f Lcom/mojang/serialization/Codec; field_55538 CODEC + f Lnet/minecraft/class_7677; field_55539 SERIALIZER + m (Lnet/minecraft/class_3888$class_3889;)V + p 1 hatType + m ()Lnet/minecraft/class_3888$class_3889; comp_3458 hatType + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65888 method_65888 + p 0 instance +c net/minecraft/class_3888$class_3889 net/minecraft/client/render/entity/feature/VillagerResourceMetadata$HatType + f Ljava/lang/String; field_17164 name + f Lcom/mojang/serialization/Codec; field_55540 CODEC + f Lnet/minecraft/class_3888$class_3889; field_17160 NONE + f Lnet/minecraft/class_3888$class_3889; field_17161 PARTIAL + f Lnet/minecraft/class_3888$class_3889; field_17162 FULL + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_2557 net/minecraft/block/WeightedPressurePlateBlock + f Lnet/minecraft/class_2758; field_11739 POWER + f I field_11738 weight + f Lcom/mojang/serialization/MapCodec; field_46501 CODEC + m (ILnet/minecraft/class_8177;Lnet/minecraft/class_4970$class_2251;)V + p 1 weight + p 2 type + p 3 settings + m (Lnet/minecraft/class_2557;)Lnet/minecraft/class_8177; method_54073 method_54073 + p 0 block + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54072 method_54072 + p 0 instance + m (Lnet/minecraft/class_2557;)Ljava/lang/Integer; method_54074 method_54074 + p 0 block +c net/minecraft/class_2558 net/minecraft/text/ClickEvent + f Lcom/mojang/serialization/Codec; field_46594 CODEC + m ()Lnet/minecraft/class_2558$class_2559; method_10845 getAction + m (Lnet/minecraft/class_2558$class_2559;)Lcom/mojang/serialization/MapCodec; method_66564 method_66564 + p 0 action +c net/minecraft/class_2558$class_10610 net/minecraft/text/ClickEvent$SuggestCommand + f Lcom/mojang/serialization/MapCodec; field_55908 CODEC + f Ljava/lang/String; comp_3507 command + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66571 method_66571 + p 0 instance + m ()Ljava/lang/String; comp_3507 command + m (Ljava/lang/String;)V + p 1 command +c net/minecraft/class_2558$class_10606 net/minecraft/text/ClickEvent$CopyToClipboard + f Lcom/mojang/serialization/MapCodec; field_55904 CODEC + f Ljava/lang/String; comp_3503 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66566 method_66566 + p 0 instance + m ()Ljava/lang/String; comp_3503 value + m (Ljava/lang/String;)V + p 1 value +c net/minecraft/class_2558$class_10605 net/minecraft/text/ClickEvent$ChangePage + f Lcom/mojang/serialization/MapCodec; field_55903 CODEC + f I comp_3502 page + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66565 method_66565 + p 0 instance + m ()I comp_3502 page + m (I)V + p 1 page +c net/minecraft/class_2558$class_2559 net/minecraft/text/ClickEvent$Action + f Lcom/mojang/serialization/Codec; field_46595 UNVALIDATED_CODEC + f Lcom/mojang/serialization/Codec; field_46596 CODEC + f Ljava/lang/String; field_11742 name + f Z field_11744 userDefinable + f Lcom/mojang/serialization/MapCodec; field_55902 codec + f Lnet/minecraft/class_2558$class_2559; field_11750 RUN_COMMAND + f Lnet/minecraft/class_2558$class_2559; field_60821 SHOW_DIALOG + f Lnet/minecraft/class_2558$class_2559; field_60822 CUSTOM + f Lnet/minecraft/class_2558$class_2559; field_21462 COPY_TO_CLIPBOARD + f Lnet/minecraft/class_2558$class_2559; field_11746 OPEN_FILE + f Lnet/minecraft/class_2558$class_2559; field_11748 CHANGE_PAGE + f Lnet/minecraft/class_2558$class_2559; field_11749 OPEN_URL + f Lnet/minecraft/class_2558$class_2559; field_11745 SUGGEST_COMMAND + m (Ljava/lang/String;ILjava/lang/String;ZLcom/mojang/serialization/MapCodec;)V + p 4 userDefinable + p 3 name + p 5 codec + m ()Z method_10847 isUserDefinable + m (Lnet/minecraft/class_2558$class_2559;)Lcom/mojang/serialization/DataResult; method_54152 validate + p 0 action + m ()Lcom/mojang/serialization/MapCodec; method_72184 getCodec +c net/minecraft/class_2558$class_10609 net/minecraft/text/ClickEvent$RunCommand + f Lcom/mojang/serialization/MapCodec; field_55907 CODEC + f Ljava/lang/String; comp_3506 command + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66570 method_66570 + p 0 instance + m ()Ljava/lang/String; comp_3506 command + m (Ljava/lang/String;)V + p 1 command +c net/minecraft/class_2558$class_11506 net/minecraft/text/ClickEvent$Custom + f Lcom/mojang/serialization/MapCodec; field_60823 CODEC + f Ljava/util/Optional; comp_4379 payload + f Lnet/minecraft/class_2960; comp_4378 id + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71949 method_71949 + p 0 instance + m ()Ljava/util/Optional; comp_4379 payload + m ()Lnet/minecraft/class_2960; comp_4378 id + m (Lnet/minecraft/class_2960;Ljava/util/Optional;)V + p 1 id + p 2 payload +c net/minecraft/class_2558$class_10608 net/minecraft/text/ClickEvent$OpenUrl + f Lcom/mojang/serialization/MapCodec; field_55906 CODEC + f Ljava/net/URI; comp_3505 uri + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66569 method_66569 + p 0 instance + m ()Ljava/net/URI; comp_3505 uri + m (Ljava/net/URI;)V + p 1 uri +c net/minecraft/class_2558$class_11507 net/minecraft/text/ClickEvent$ShowDialog + f Lcom/mojang/serialization/MapCodec; field_60824 CODEC + f Lnet/minecraft/class_6880; comp_4380 dialog + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71950 method_71950 + p 0 instance + m ()Lnet/minecraft/class_6880; comp_4380 dialog + m (Lnet/minecraft/class_6880;)V + p 1 dialog +c net/minecraft/class_2558$class_10607 net/minecraft/text/ClickEvent$OpenFile + f Lcom/mojang/serialization/MapCodec; field_55905 CODEC + f Ljava/lang/String; comp_3504 path + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66567 method_66567 + p 0 instance + m ()Ljava/io/File; method_66568 file + m (Ljava/io/File;)V + p 1 file + m (Ljava/nio/file/Path;)V + p 1 path + m ()Ljava/lang/String; comp_3504 path + m (Ljava/lang/String;)V + p 1 path +c net/minecraft/class_2531 net/minecraft/block/TrappedChestBlock + f Lcom/mojang/serialization/MapCodec; field_46479 CODEC +c net/minecraft/class_3862 net/minecraft/recipe/SmokingRecipe +c net/minecraft/class_2532 net/minecraft/network/handler/PacketInflater + f Ljava/util/zip/Inflater; field_11622 inflater + f Z field_34058 rejectsBadPackets + f I field_11623 compressionThreshold + f I field_33279 MAXIMUM_PACKET_SIZE + c The maximum size allowed for a compressed packet. Has value {@value}. + m (IZ)V + p 1 compressionThreshold + p 2 rejectsBadPackets + m (IZ)V method_10739 setCompressionThreshold + p 1 compressionThreshold + p 2 rejectsBadPackets + m (Lio/netty/channel/ChannelHandlerContext;I)Lio/netty/buffer/ByteBuf; method_52897 inflate + p 2 expectedSize + p 1 context + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List;)V decode decode + p 2 buf + p 3 objects + p 1 ctx + m (Lio/netty/buffer/ByteBuf;)V method_52896 setInputBuf + p 1 buf +c net/minecraft/class_3864 net/minecraft/world/gen/feature/DefaultBiomeFeatures + m (Lnet/minecraft/class_5483$class_5496;)V method_30580 addFarmAnimals + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;II)V method_30678 addWarmOceanMobs + p 1 squidWeight + p 2 squidMinGroupSize + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_32236 addAmethystGeodes + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;Z)V method_30582 addSnowyMobs + p 0 builder + p 1 zombieHorse + m (Lnet/minecraft/class_5485$class_5495;)V method_17019 addWaterBiomeOakTrees + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17007 addExtraGoldOre + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17015 addSweetBerryBushes + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16967 addWindsweptSavannaGrass + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17023 addSavannaTrees + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16999 addFrozenTopLayer + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17011 addClayDisk + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16979 addDefaultGrass + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_42042 addSculk + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16959 addJungleTrees + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16991 addKelp + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16983 addLandCarvers + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16971 addForestGrass + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16995 addLessKelp + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16987 addDesertVegetation + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_33131 addDripstone + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16975 addDesertDryVegetation + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_28439 addAncientDebris + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_39933 addVines + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;)V method_30680 addPlainsMobs + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;)V method_30583 addDesertMobs + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_39420 addFrozenLavaSpring + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;)V method_30587 addEndMobs + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17018 addTaigaTrees + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;)V method_30579 addCaveMobs + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_34664 addClayOre + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;)V method_75526 addCaveAndMonstersAndZombieHorse + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_43230 addMangroveSwampFeatures + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17014 addSweetBerryBushesSnowy + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16988 addSwampVegetation + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17022 addTallBirchTrees + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17010 addDefaultDisks + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16968 addSavannaGrass + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16980 addTaigaGrass + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16972 addSwampFeatures + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;I)V method_60650 addCaveAndMonsters + p 0 builder + p 1 skeletonWeight + m (Lnet/minecraft/class_5485$class_5495;)V method_16960 addSparseJungleTrees + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16996 addSprings + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16976 addGiantTaigaGrass + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;Z)V method_16984 addDefaultVegetation + p 0 builder + p 1 includeNearWater + m (Lnet/minecraft/class_5485$class_5495;)V method_39932 addSparseMelons + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;)V method_30586 addJungleMobs + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17009 addInfestedStone + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;III)V method_30679 addOceanMobs + p 3 codWeight + p 1 squidWeight + p 2 squidMaxGroupSize + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_49390 addCherryGroveFeatures + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17017 addBambooJungleTrees + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_34663 addLushCavesDecoration + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17005 addMineables + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_43231 addGrassAndClayDisks + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17013 addLargeFerns + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16989 addDesertFeatures + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_38567 addMeadowFlowers + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16977 addDefaultFlowers + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16969 addBadlandsGrass + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17021 addForestTrees + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16957 addWindsweptHillsTrees + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_38745 addGroveTrees + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_68553 addMangroveSwampAquaticFeatures + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;Z)V method_17006 addDefaultOres + p 0 builder + p 1 largeCopperOreBlob + m (Lnet/minecraft/class_5485$class_5495;)V method_16981 addPlainsTallGrass + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_66556 addLeafLitter + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16961 addBadlandsPlateauTrees + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16985 addBadlandsVegetation + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16973 addMushroomFieldsFeatures + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16965 addJungleGrass + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16997 addIcebergs + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_39931 addMelons + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;)V method_30581 addCaveAndMonsters + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16990 addFossils + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;)V method_30585 addMushroomMobs + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17008 addEmeraldOre + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17016 addBamboo + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_67479 addBushes + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17004 addDungeons + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;)V method_38941 addDripstoneCaveMobs + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17024 addExtraSavannaTrees + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16978 addExtraDefaultFlowers + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17012 addMossyRocks + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16966 addSavannaTallGrass + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16958 addWindsweptForestTrees + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_17020 addBirchTrees + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_38568 addDefaultOres + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_74442 addDefaultVegetationNearWater + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16970 addForestFlowers + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;IIIIZ)V method_30578 addMonsters + p 1 zombieWeight + p 0 builder + p 5 drowned + p 4 skeletonWeight + p 3 zombieHorseWeight + p 2 zombieVillagerWeight + m (Lnet/minecraft/class_5485$class_5495;)V method_66557 addBirchForestWildflowers + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16982 addDefaultMushrooms + p 0 builder + m (Lnet/minecraft/class_5483$class_5496;I)V method_75845 addSwampMobs + p 0 builder + p 1 skeletonWeight + m (Lnet/minecraft/class_5485$class_5495;)V method_16974 addPlainsFeatures + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_24382 addNetherMineables + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16962 addSnowySpruceTrees + p 0 builder + m (Lnet/minecraft/class_5485$class_5495;)V method_16998 addBlueIce + p 0 builder +c net/minecraft/class_2533 net/minecraft/block/TrapdoorBlock + f Lnet/minecraft/class_2746; field_11631 OPEN + f Lnet/minecraft/class_2754; field_11625 HALF + f Lnet/minecraft/class_2746; field_11626 WATERLOGGED + f Ljava/util/Map; field_55805 shapeByDirection + f Lnet/minecraft/class_8177; field_42779 blockSetType + f Lcom/mojang/serialization/MapCodec; field_46478 CODEC + f Lnet/minecraft/class_2746; field_11629 POWERED + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54058 method_54058 + p 0 instance + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Z)V method_10740 playToggleSound + p 4 open + p 3 pos + p 2 world + p 1 player + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)V method_55139 flip + p 4 player + p 2 world + p 3 pos + p 1 state + m ()Lnet/minecraft/class_8177; method_54766 getBlockSetType + m (Lnet/minecraft/class_8177;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 type + m (Lnet/minecraft/class_2533;)Lnet/minecraft/class_8177; method_54059 method_54059 + p 0 block +c net/minecraft/class_2534 net/minecraft/network/handler/PacketDeflater + f Ljava/util/zip/Deflater; field_11638 deflater + f I field_11636 compressionThreshold + f [B field_11637 deflateBuffer + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)V method_10741 encode + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Lio/netty/buffer/ByteBuf;)V encode encode + p 2 input + p 1 ctx + p 3 output + m ()I method_36120 getCompressionThreshold + m (I)V + p 1 compressionThreshold + m (I)V method_10742 setCompressionThreshold + p 1 compressionThreshold +c net/minecraft/class_3865 net/minecraft/block/FurnaceBlock + f Lcom/mojang/serialization/MapCodec; field_46360 CODEC +c net/minecraft/class_1203 net/minecraft/datafixer/fix/OptionsLowerCaseLanguageFix + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5126 method_5126 + p 0 optionsTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5125 method_5125 + p 0 optionsDynamic +c net/minecraft/class_1202 net/minecraft/datafixer/fix/OptionsForceVBOFix + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5124 method_5124 + p 0 optionsTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5123 method_5123 + p 0 optionsDynamic +c net/minecraft/class_1201 net/minecraft/datafixer/fix/OptionsKeyLwjgl3Fix + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_5706 NUMERICAL_KEY_IDS_TO_KEY_NAMES + f Ljava/lang/String; field_29906 KEY_UNKNOWN + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5121 method_5121 + p 0 optionsTyped + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_5118 method_5118 + p 0 map + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;)Lcom/mojang/serialization/Dynamic; method_28236 method_28236 + p 1 optionsMap + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28235 method_28235 + p 0 optionsDynamic +c net/minecraft/class_2530 net/minecraft/block/TntBlock + f Lnet/minecraft/class_2746; field_11621 UNSTABLE + f Lcom/mojang/serialization/MapCodec; field_46474 CODEC + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_10738 primeTnt + p 1 pos + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1309;)Z method_10737 primeTnt + p 1 pos + p 0 world + p 2 igniter +c net/minecraft/class_3861 net/minecraft/recipe/SmeltingRecipe +c net/minecraft/class_2528 net/minecraft/network/encryption/PacketDecryptor + f Lnet/minecraft/class_2524; field_11619 manager + m (Ljavax/crypto/Cipher;)V + p 1 cipher + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List;)V method_10735 decode + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Ljava/util/List;)V decode decode + p 1 context + p 2 buf + p 3 result +c net/minecraft/class_3859 net/minecraft/recipe/BlastingRecipe +c net/minecraft/class_2529 net/minecraft/network/encryption/PacketEncryptor + f Lnet/minecraft/class_2524; field_11620 manager + m (Ljavax/crypto/Cipher;)V + p 1 cipher + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)V method_10736 encode + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Lio/netty/buffer/ByteBuf;)V encode encode + p 2 buf + p 1 context + p 3 result +c net/minecraft/class_2524 net/minecraft/network/encryption/PacketEncryptionManager + f [B field_11614 encryptionBuffer + f [B field_11613 conversionBuffer + f Ljavax/crypto/Cipher; field_11612 cipher + m (Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)V method_10732 encrypt + p 1 buf + p 2 result + m (Lio/netty/buffer/ByteBuf;)[B method_10733 toByteArray + p 1 buf + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;)Lio/netty/buffer/ByteBuf; method_10734 decrypt + p 2 buf + p 1 context + m (Ljavax/crypto/Cipher;)V + p 1 cipher +c net/minecraft/class_3855 net/minecraft/entity/projectile/AbstractFireballEntity + f Lnet/minecraft/class_2940; field_17081 ITEM + f F field_52508 MAX_RENDER_DISTANCE_WHEN_NEWLY_SPAWNED + m ()Lnet/minecraft/class_1799; method_56685 getItem + m (Lnet/minecraft/class_1799;)V method_16936 setItem + p 1 stack +c net/minecraft/class_3856 net/minecraft/entity/FlyingItemEntity + m ()Lnet/minecraft/class_1799; method_7495 getStack +c net/minecraft/class_2525 net/minecraft/block/TallSeagrassBlock + f Lnet/minecraft/class_2754; field_11616 HALF + f Lcom/mojang/serialization/MapCodec; field_46471 CODEC + f Lnet/minecraft/class_265; field_11615 SHAPE +c net/minecraft/class_3857 net/minecraft/entity/projectile/thrown/ThrownItemEntity + f Lnet/minecraft/class_2940; field_17082 ITEM + m (Lnet/minecraft/class_1799;)V method_16940 setItem + p 1 stack + m (Lnet/minecraft/class_1299;DDDLnet/minecraft/class_1937;Lnet/minecraft/class_1799;)V + p 8 world + p 6 z + p 9 stack + p 4 y + p 1 type + p 2 x + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1309;Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;)V + p 4 stack + p 1 type + p 3 world + p 2 owner + m ()Lnet/minecraft/class_1792; method_16942 getDefaultItem +c net/minecraft/class_2526 net/minecraft/block/ShortPlantBlock + f Lcom/mojang/serialization/MapCodec; field_46470 CODEC + f Lnet/minecraft/class_265; field_11617 SHAPE + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2320; method_61750 getLargeVariant + p 0 state +c net/minecraft/class_3858 net/minecraft/screen/FurnaceScreenHandler + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;Lnet/minecraft/class_3913;)V + p 4 propertyDelegate + p 3 inventory + p 2 playerInventory + p 1 syncId + m (ILnet/minecraft/class_1661;)V + p 1 syncId + p 2 playerInventory +c net/minecraft/class_2527 net/minecraft/block/TorchBlock + f Lcom/mojang/serialization/MapCodec; field_46475 PARTICLE_TYPE_CODEC + f Lnet/minecraft/class_2400; field_22155 particle + f Lcom/mojang/serialization/MapCodec; field_46476 CODEC + m (Lnet/minecraft/class_2527;)Lnet/minecraft/class_2400; method_54054 method_54054 + p 0 block + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54053 method_54053 + p 0 instance + m (Lnet/minecraft/class_2396;)Lcom/mojang/serialization/DataResult; method_54055 method_54055 + p 0 particleType + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 particle + m (Lnet/minecraft/class_2400;)Lnet/minecraft/class_2396; method_54056 method_54056 + p 0 particleType +c com/mojang/blaze3d/vertex/VertexFormat com/mojang/blaze3d/vertex/VertexFormat + m (Ljava/util/List;Ljava/util/List;Lit/unimi/dsi/fastutil/ints/IntList;I)V + p 4 vertexSize + p 1 elements + p 3 offsets + p 2 names + m (Lcom/mojang/blaze3d/vertex/VertexFormatElement;)Z contains contains + p 1 element + m (Lcom/mojang/blaze3d/vertex/VertexFormatElement;)Ljava/lang/String; getElementName getElementName + p 1 element + m (Ljava/nio/ByteBuffer;)Lcom/mojang/blaze3d/buffers/GpuBuffer; uploadImmediateIndexBuffer uploadImmediateIndexBuffer + p 1 data + m (II)I lambda$new$0 lambda$new$0 + p 0 a + p 1 b + m (Lcom/mojang/blaze3d/vertex/VertexFormatElement;)I getOffset getOffset + p 1 element + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/nio/ByteBuffer;)Lcom/mojang/blaze3d/buffers/GpuBuffer; uploadImmediateVertexBuffer uploadImmediateVertexBuffer + p 1 data + m (Lcom/mojang/blaze3d/buffers/GpuBuffer;Ljava/nio/ByteBuffer;ILjava/util/function/Supplier;)Lcom/mojang/blaze3d/buffers/GpuBuffer; uploadToBuffer uploadToBuffer + p 2 usage + p 1 data + p 3 labelGetter +c com/mojang/blaze3d/vertex/VertexFormat$class_5595 com/mojang/blaze3d/vertex/VertexFormat$IndexType + f I field_27375 size + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595; field_27372 SHORT + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595; field_27373 INT + m (Ljava/lang/String;II)V + p 3 size + m (I)Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595; method_31972 smallestFor +c com/mojang/blaze3d/vertex/VertexFormat$class_5596 com/mojang/blaze3d/vertex/VertexFormat$DrawMode + f I field_27385 additionalVertexCount + c The number of vertices needed to form an additional shape. In other words, it's\nfirstVertexCount - s where s is the number of vertices shared with the previous shape. + f Z field_38878 shareVertices + c Whether there are shared vertices in consecutive shapes. + f I field_27384 firstVertexCount + c The number of vertices needed to form a first shape. + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596; field_29344 DEBUG_LINES + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596; field_29345 DEBUG_LINE_STRIP + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596; field_63316 POINTS + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596; field_27380 TRIANGLE_STRIP + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596; field_27381 TRIANGLE_FAN + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596; field_27382 QUADS + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596; field_27377 LINES + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596; field_27379 TRIANGLES + m (Ljava/lang/String;IIIZ)V + p 3 firstVertexCount + p 5 shareVertices + p 4 additionalVertexCount + m (I)I method_31973 getIndexCount + p 1 vertexCount +c com/mojang/blaze3d/vertex/VertexFormat$Builder com/mojang/blaze3d/vertex/VertexFormat$Builder + m (I)Lcom/mojang/blaze3d/vertex/VertexFormat$Builder; padding padding + p 1 padding + m (Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormatElement;)Lcom/mojang/blaze3d/vertex/VertexFormat$Builder; add add + p 1 name + p 2 element +c net/minecraft/class_1210 net/minecraft/datafixer/mapping/LegacyCoralBlockMapping + f Ljava/util/Map; field_5733 MAP +c net/minecraft/class_3873 net/minecraft/client/gui/screen/ingame/FurnaceScreen + f Lnet/minecraft/class_2960; field_17127 TEXTURE + f Lnet/minecraft/class_2960; field_45470 BURN_PROGRESS_TEXTURE + f Lnet/minecraft/class_2960; field_45469 LIT_PROGRESS_TEXTURE + f Ljava/util/List; field_54823 TABS + f Lnet/minecraft/class_2561; field_52810 TOGGLE_SMELTABLE_TEXT + m (Lnet/minecraft/class_3858;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 1 handler + p 2 inventory + p 3 title +c net/minecraft/class_2542 net/minecraft/block/TurtleEggBlock + f Lcom/mojang/serialization/MapCodec; field_46482 CODEC + f Lnet/minecraft/class_2758; field_11711 HATCH + f Lnet/minecraft/class_265; field_55810 MULTIPLE_SHAPE + f Lnet/minecraft/class_2758; field_11710 EGGS + f Lnet/minecraft/class_265; field_55809 SINGLE_SHAPE + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;I)V method_10834 tryBreakEgg + p 5 inverseChance + p 4 entity + p 1 world + p 3 pos + p 2 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_10832 shouldHatchProgress + p 2 pos + p 1 world + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_29952 isSand + p 0 world + p 1 pos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_10831 isSandBelow + p 0 world + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_10833 breakEgg + p 3 state + p 2 pos + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)Z method_10835 breaksEgg + p 2 entity + p 1 world +c net/minecraft/class_2543 net/minecraft/network/handler/DecoderHandler + f Lnet/minecraft/class_9127; field_48536 state + f Lorg/slf4j/Logger; field_11715 LOGGER + m (Lnet/minecraft/class_9127;)V + p 1 state + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List;)V decode decode + p 1 context + p 2 buf + p 3 objects +c net/minecraft/class_3874 net/minecraft/client/gui/screen/ingame/SmokerScreen + f Lnet/minecraft/class_2960; field_45499 LIT_PROGRESS_TEXTURE + f Lnet/minecraft/class_2960; field_17128 TEXTURE + f Lnet/minecraft/class_2960; field_45500 BURN_PROGRESS_TEXTURE + f Ljava/util/List; field_54824 TABS + f Lnet/minecraft/class_2561; field_52811 TOGGLE_SMOKABLE_TEXT + m (Lnet/minecraft/class_3706;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 1 handler + p 2 inventory + p 3 title +c net/minecraft/class_2544 net/minecraft/block/WallBlock + f Ljava/util/function/Function; field_55812 collisionShapeFunction + f Lnet/minecraft/class_2746; field_22160 WATERLOGGED + f Ljava/util/function/Function; field_55820 outlineShapeFunction + f Lnet/minecraft/class_265; field_55813 POST_SHAPE_FOR_TALL_TEST + f Ljava/util/Map; field_55814 WALL_SHAPES_FOR_TALL_TEST_BY_DIRECTION + f Ljava/util/Map; field_55819 WALL_SHAPE_PROPERTIES_BY_DIRECTION + f Lnet/minecraft/class_2746; field_11717 UP + f Lcom/mojang/serialization/MapCodec; field_46487 CODEC + f Lnet/minecraft/class_2754; field_55817 SOUTH_WALL_SHAPE + f Lnet/minecraft/class_2754; field_55816 NORTH_WALL_SHAPE + f Lnet/minecraft/class_2754; field_55815 EAST_WALL_SHAPE + f Lnet/minecraft/class_2754; field_55818 WEST_WALL_SHAPE + m (Lnet/minecraft/class_265;Lnet/minecraft/class_265;)Z method_24427 shouldUseTallShape + p 0 aboveShape + p 1 tallShape + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_265;)Z method_27092 shouldHavePost + p 2 aboveState + p 1 state + p 3 aboveShape + m (FF)Ljava/util/function/Function; method_24420 createShapeFunction + p 2 lowHeight + p 1 tallHeight + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;ZZZZ)Lnet/minecraft/class_2680; method_24422 getStateWith + p 8 west + p 6 east + p 7 south + p 4 aboveState + p 5 north + p 2 state + p 3 pos + p 1 world + m (Lnet/minecraft/class_2680;ZLnet/minecraft/class_2350;)Z method_16704 shouldConnectTo + p 3 side + p 2 faceFullSquare + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2769;)Z method_24424 isConnected + p 0 state + p 1 property + m (Lnet/minecraft/class_2680;ZZZZLnet/minecraft/class_265;)Lnet/minecraft/class_2680; method_24425 getStateWith + p 6 aboveShape + p 5 west + p 4 south + p 3 east + p 2 north + p 1 state + m (ZLnet/minecraft/class_265;Lnet/minecraft/class_265;)Lnet/minecraft/class_4778; method_24428 getWallShape + p 3 tallShape + p 2 aboveShape + p 1 connected + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2680; method_24423 getStateWithNeighbor + p 4 neighborPos + p 3 state + p 2 pos + p 1 world + p 6 direction + p 5 neighborState + m (Lnet/minecraft/class_265;Ljava/util/Map;Ljava/util/Map;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66472 method_66472 + p 3 state + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_24421 getStateAt + p 1 world + p 2 state + p 3 pos + p 4 aboveState +c net/minecraft/class_2545 net/minecraft/network/handler/EncoderHandler + f Lorg/slf4j/Logger; field_11721 LOGGER + f Lnet/minecraft/class_9127; field_48537 state + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Lio/netty/buffer/ByteBuf;)V encode encode + p 1 context + p 2 packet + p 3 out + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/class_2596;Lio/netty/buffer/ByteBuf;)V method_10838 encode + m (Lnet/minecraft/class_9127;)V + p 1 state +c net/minecraft/class_1214 net/minecraft/datafixer/fix/StatsCounterFix + f Ljava/util/Map; field_5735 RENAMED_ENTITIES + f Ljava/util/Set; field_5739 REMOVED_STATS + f Ljava/lang/String; field_29909 CUSTOM + f Ljava/lang/String; field_29908 NEW_MINE_BLOCK_ID + f Ljava/util/Map; field_5738 RENAMED_ITEM_STATS + f Ljava/util/Map; field_5737 RENAMED_GENERAL_STATS + f Ljava/lang/String; field_29907 OLD_MINE_BLOCK_ID + f Ljava/util/Map; field_5736 RENAMED_ENTITY_STATS + f Ljava/util/Set; field_45099 SKIPPED_STATS + m (Ljava/lang/String;)Ljava/lang/String; method_5173 getBlock + p 0 id + m (Ljava/lang/String;)Ljava/lang/String; method_5172 getItem + p 0 id + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52497 method_52497 + p 1 objectiveTyped + m ()Lcom/mojang/datafixers/TypeRewriteRule; method_52496 makeFirstRoundRule + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52498 method_52498 + p 0 criteriaNameDynamic + m ()Lcom/mojang/datafixers/TypeRewriteRule; method_52501 makeSecondRoundRule + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52502 method_52502 + p 1 statsTyped + m (Ljava/lang/String;)Lnet/minecraft/class_1214$class_8628; method_52500 rename + p 0 old + m (Ljava/lang/String;)Ljava/lang/String; method_52505 method_52505 + p 0 criteriaName +c net/minecraft/class_1214$class_8628 net/minecraft/datafixer/fix/StatsCounterFix$Stat + f Ljava/lang/String; comp_1585 type + f Ljava/lang/String; comp_1586 typeKey + m ()Ljava/lang/String; comp_1585 type + m ()Ljava/lang/String; comp_1586 typeKey + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 type + p 2 typeKey +c net/minecraft/class_3870 net/minecraft/structure/TaigaVillageData + f Lnet/minecraft/class_5321; field_40965 TERMINATORS_KEY + f Lnet/minecraft/class_5321; field_26341 TOWN_CENTERS_KEY + m (Lnet/minecraft/class_7891;)V method_17038 bootstrap + p 0 poolRegisterable +c net/minecraft/class_1213 net/minecraft/datafixer/fix/StatsRenameFix + f Ljava/lang/String; field_33560 name + f Ljava/util/Map; field_33561 replacements + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37384 method_37384 + p 4 objectiveTyped + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37386 method_37386 + p 2 customCriteriaTypeTyped + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37380 method_37380 + p 3 statsInnerTyped + m (Ljava/lang/String;)Ljava/lang/String; method_37382 method_37382 + p 1 old + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37385 method_37385 + p 3 criteriaTypeTyped + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/Map;)V + p 3 replacements + p 2 name + p 1 outputSchema + m ()Lcom/mojang/datafixers/TypeRewriteRule; method_37378 renameObjectives + m (Ljava/lang/String;)Ljava/lang/String; method_37387 method_37387 + p 1 old + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37379 method_37379 + p 4 statsTyped + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37381 method_37381 + p 2 customStatTyped + m ()Lcom/mojang/datafixers/TypeRewriteRule; method_37383 renameStats +c net/minecraft/class_2540 net/minecraft/network/PacketByteBuf + c A packet byte buf is a specialized byte buf with utility methods adapted\nto Minecraft's protocol. It has serialization and deserialization of\ncustom objects.\n\n

\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Custom object handling
Object Type read method write method
Codec-based (NBT){@link #decode(DynamicOps, Codec, NbtSizeTracker)}{@link #encode(DynamicOps, Codec, Object)}
Codec-based (JSON){@link #decodeAsJson(Codec)}{@link #encodeAsJson(Codec, Object)}
Integer-identified value{@link #decode(IntFunction)}{@link #encode(ToIntFunction, Object)}
{@link Collection}{@link #readCollection(IntFunction, PacketByteBuf.PacketReader)}{@link #writeCollection(Collection, PacketByteBuf.PacketWriter)}
{@link IntList}{@link #readIntList()}{@link #writeIntList(IntList)}
{@link Map}{@link #readMap(IntFunction, PacketByteBuf.PacketReader, PacketByteBuf.PacketReader)}{@link #writeMap(Map, PacketByteBuf.PacketWriter, PacketByteBuf.PacketWriter)}
{@link EnumSet}{@link #readEnumSet(Class)}{@link #writeEnumSet(EnumSet, Class)}
{@code byte[]}{@link #readByteArray()}{@link #writeByteArray(byte[])}
{@code int[]}{@link #readIntArray()}{@link #writeIntArray(int[])}
{@code long[]}{@link #readLongArray()}{@link #writeLongArray(long[])}
{@link BlockPos}{@link #readBlockPos()}{@link #writeBlockPos(BlockPos)}
{@link ChunkPos}{@link #readChunkPos()}{@link #writeChunkPos(ChunkPos)}
{@link ChunkSectionPos}{@link #readChunkSectionPos()}{@link #writeChunkSectionPos(ChunkSectionPos)}
{@link GlobalPos}{@link #readGlobalPos()}{@link #writeGlobalPos(GlobalPos)}
{@link Vector3f}{@link #readVector3f()}{@link #writeVector3f(Vector3f)}
{@link Vec3d}{@link #readVec3d()}{@link #writeVec3d(Vec3d)}
{@link Quaternionf}{@link #readQuaternionf()}{@link #writeQuaternionf(Quaternionf)}
{@link Enum}{@link #readEnumConstant(Class)}{@link #writeEnumConstant(Enum)}
{@index VarInt}{@link #readVarInt()}{@link #writeVarInt(int)}
{@index VarLong}{@link #readVarLong()}{@link #writeVarLong(long)}
{@link UUID}{@link #readUuid()}{@link #writeUuid(UUID)}
{@link NbtCompound}{@link #readNbt()}{@link #writeNbt(NbtCompound)}
{@link String}{@link #readString()}{@link #writeString(String)}
{@link Identifier}{@link #readIdentifier()}{@link #writeIdentifier(Identifier)}
{@link RegistryKey}{@link #readRegistryKey(RegistryKey)}{@link #writeRegistryKey(RegistryKey)}
{@link RegistryKey} of a registry{@link #readRegistryRefKey()}{@link #writeRegistryKey(RegistryKey)}
{@link Date}{@link #readDate()}{@link #writeDate(Date)}
{@link Instant}{@link #readInstant()}{@link #writeInstant(Instant)}
{@link PublicKey}{@link #readPublicKey()}{@link #writePublicKey(PublicKey)}
{@link BlockHitResult}{@link #readBlockHitResult()}{@link #writeBlockHitResult(BlockHitResult)}
{@link BitSet}{@link #readBitSet()}{@link #writeBitSet(BitSet)}
{@link Optional}{@link #readOptional(PacketByteBuf.PacketReader)}{@link #writeOptional(Optional, PacketByteBuf.PacketWriter)}
Nullable value{@link #readNullable(PacketByteBuf.PacketReader)}{@link #writeNullable(Object, PacketByteBuf.PacketWriter)}
\n\n

All {@code read} and {@code write} methods throw {@link\nIndexOutOfBoundsException} if there is not enough bytes to be read or\nnot enough space to write. + f Lio/netty/buffer/ByteBuf; field_11695 parent + f S field_33283 DEFAULT_MAX_STRING_LENGTH + c The default max length of strings {@linkplain #readString() read} or {@linkplain\n#writeString(String) written}. This is also the max length of identifiers\n{@linkplain #readIdentifier() read} or {@linkplain #writeIdentifier(Identifier)\nwritten} in their string form. + f I field_33284 MAX_TEXT_LENGTH + c The maximum size, in terms of JSON string length, allowed for serialized texts. + f Lcom/google/gson/Gson; field_42966 GSON + m (ILjava/nio/ByteBuffer;)Lnet/minecraft/class_2540; method_52950 getBytes + m (Ljava/lang/Object;Ljava/lang/String;)Lio/netty/handler/codec/EncoderException; method_34061 method_34061 + p 1 error + m (Ljava/util/BitSet;)V method_33557 writeBitSet + c Writes a bit set to this buf. A bit set is represented by a long array.\n\n@see #readBitSet() + p 1 bitSet + c the bit set to write + m (I[BII)Lnet/minecraft/class_2540; method_52953 getBytes + m (ILio/netty/buffer/ByteBuf;)Lnet/minecraft/class_2540; method_52968 setBytes + m (ILjava/io/OutputStream;I)Lnet/minecraft/class_2540; method_52949 getBytes + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2540; method_10807 writeBlockPos + c Writes a block position to this buf. A block position is represented by\na regular long.\n\n@return this buf, for chaining\n@see #readBlockPos() + p 1 pos + c the pos to write + m (Lio/netty/buffer/ByteBuf;II)Lnet/minecraft/class_2540; method_52977 writeBytes + m (I)Lio/netty/buffer/ByteBuf; writeShort writeShort + p 1 value + m (ILjava/nio/ByteBuffer;)Lio/netty/buffer/ByteBuf; getBytes getBytes + p 1 index + p 2 buf + m (Lio/netty/buffer/ByteBuf;)I method_62787 readSyncId + p 0 buf + m (I)Z getBoolean getBoolean + p 1 index + m (II)Lio/netty/buffer/ByteBuf; setShort setShort + p 1 index + p 2 value + m (I)I getInt getInt + p 1 index + m ()Ljava/security/PublicKey; method_44119 readPublicKey + c Reads a public key from this buf. A public key is represented by a {@linkplain\n#readByteArray byte array} of X.509-encoded payload.\n\n@return the read public key\n@throws io.netty.handler.codec.DecoderException if the public key is malformed\n@see #writePublicKey(PublicKey) + m (I)Lnet/minecraft/class_2540; method_53002 writeInt + m (Lnet/minecraft/class_3965;)V method_17813 writeBlockHitResult + c Writes a block hit result to this buf. A block hit result is represented\nby a block position, a direction enum constant, 3 floats for the hit\noffset position, and a boolean for whether the hit was inside a block.\n\n@see #readBlockHitResult() + p 1 hitResult + c the block hit result to write + m (I)Lio/netty/buffer/ByteBuf; readSlice readSlice + p 1 length + m (II)Lio/netty/buffer/ByteBuf; retainedSlice retainedSlice + p 1 index + p 2 length + m (II)Ljava/nio/ByteBuffer; internalNioBuffer internalNioBuffer + p 2 length + p 1 index + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_2520;)V method_56341 writeNbt + p 1 nbt + p 0 buf + m (I)Lio/netty/buffer/ByteBuf; retain retain + p 1 increment + m (I)Lio/netty/buffer/ByteBuf; writeChar writeChar + p 1 value + m (I)Lnet/minecraft/class_2540; method_52994 skipBytes + m (ILio/netty/buffer/ByteBuf;I)Lio/netty/buffer/ByteBuf; getBytes getBytes + p 3 length + p 2 buf + p 1 index + m (I)Lio/netty/buffer/ByteBuf; writeInt writeInt + p 1 value + m (I)F getFloat getFloat + p 1 index + m (D)Lnet/minecraft/class_2540; method_52940 writeDouble + m (Z)Lio/netty/buffer/ByteBuf; writeBoolean writeBoolean + p 1 value + m ()I method_10816 readVarInt + c Reads a single var int from this buf.\n\n@return the value read\n@see #writeVarInt(int) + m (I[B)Lnet/minecraft/class_2540; method_52952 getBytes + m (I[B)Lio/netty/buffer/ByteBuf; getBytes getBytes + p 2 bytes + p 1 index + m (II)Lio/netty/buffer/ByteBuf; copy copy + p 2 length + p 1 index + m (I)Lio/netty/buffer/ByteBuf; writerIndex writerIndex + p 1 index + m (IILio/netty/util/ByteProcessor;)I forEachByteDesc forEachByteDesc + p 3 byteProcessor + p 2 length + p 1 index + m (I)Lnet/minecraft/class_2540; method_53001 writeMediumLE + m (Lio/netty/buffer/ByteBuf;I)Lio/netty/buffer/ByteBuf; readBytes readBytes + p 1 buf + p 2 length + m (Lorg/joml/Vector3f;)V method_49068 writeVector3f + c Writes a {@link Vector3f} to this buf. A {@link Vector3f} is represented by\nthree {@code float}s.\n\n@see #readVector3f() + p 1 vector3f + m (I)Lio/netty/buffer/ByteBuf; skipBytes skipBytes + p 1 length + m (IJ)Lnet/minecraft/class_2540; method_52945 setLong + m (J)Lnet/minecraft/class_2540; method_52982 writeLongLE + m (I)I getMedium getMedium + p 1 index + m ([BII)Lio/netty/buffer/ByteBuf; writeBytes writeBytes + p 3 length + p 2 sourceIndex + p 1 bytes + m (Lnet/minecraft/class_9141;)Ljava/util/Optional; method_37436 readOptional + c Reads an optional value from this buf. An optional value is represented by\na boolean indicating if the value is present, followed by the value only if\nthe value is present.\n\n@return the read optional value\n@see #writeOptional(Optional, PacketByteBuf.PacketWriter) + p 1 reader + m (II)Lnet/minecraft/class_2540; method_52991 setIntLE + m (ILjava/nio/charset/Charset;)Ljava/lang/CharSequence; readCharSequence readCharSequence + p 1 length + p 2 charset + m (II)Lio/netty/buffer/ByteBuf; setMediumLE setMediumLE + p 1 index + p 2 value + m (Lio/netty/buffer/ByteBuf;I)Lnet/minecraft/class_2540; method_52976 writeBytes + m (IB)I bytesBefore bytesBefore + p 1 length + p 2 value + m (IILjava/nio/charset/Charset;)Ljava/lang/String; toString toString + p 1 index + p 2 length + p 3 charset + m (II)Lio/netty/buffer/ByteBuf; setChar setChar + p 2 value + p 1 index + m (Lnet/minecraft/class_2505;)Lnet/minecraft/class_2520; method_30616 readNbt + c Reads an NBT element from this buf. The binary representation of NBT is\nhandled by {@link net.minecraft.nbt.NbtIo}. If an NBT null is encountered,\nthis method returns {@code null}. The element can have a maximum size\ncontrolled by the {@code sizeTracker}.\n\n@return the read element, may be {@code null}\n@throws io.netty.handler.codec.EncoderException if the NBT cannot be read\n@throws net.minecraft.nbt.NbtSizeValidationException if the element exceeds the allowed maximum size\n@see #writeNbt(NbtElement)\n@see #readNbt() + p 1 sizeTracker + m (I)Lio/netty/buffer/ByteBuf; writeZero writeZero + p 1 length + m (I)I getUnsignedShortLE getUnsignedShortLE + p 1 index + m (I)Lnet/minecraft/class_2540; method_53004 writeChar + m (I)S getShort getShort + p 1 index + m (Ljava/util/BitSet;I)V method_46252 writeBitSet + c Writes a bit set to this buf. A bit set is represented using its byte array representation.\n\n@throws io.netty.handler.codec.EncoderException if the bit set's length is above {@code size}\n\n@see BitSet#toByteArray\n@see #readBitSet + p 1 bitSet + p 2 size + c the maximum size of the bit set + m (Lio/netty/buffer/ByteBuf;)Lio/netty/buffer/ByteBuf; writeBytes writeBytes + p 1 buf + m (Lio/netty/buffer/ByteBuf;)V + c Creates a packet byte buf that delegates its operations to the {@code\nparent} buf. + p 1 parent + c the parent, or delegate, buf + m (Ljava/util/function/IntFunction;Lnet/minecraft/class_9141;Lnet/minecraft/class_9141;)Ljava/util/Map; method_34069 readMap + c Reads a map from this buf. The map is stored as a leading\n{@linkplain #readVarInt() var int} size followed by each key and value\npair.\n\n@param the key type\n@param the value type\n@param the map type\n@return the read map\n@see #writeMap(Map, PacketByteBuf.PacketWriter, PacketByteBuf.PacketWriter)\n@see #readMap(PacketByteBuf.PacketReader, PacketByteBuf.PacketReader) + p 3 valueReader + p 2 keyReader + p 1 mapFactory + c a factory that creates a map with a given size + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;)Ljava/lang/Object; method_52954 decode + c Reads an object from this buf as a compound NBT with the given codec.\n\n@param the decoded object's type\n@return the read object\n@throws io.netty.handler.codec.EncoderException if the {@code codec} fails\nto decode the compound NBT\n@see #encode(DynamicOps, Codec, Object) + p 2 codec + p 1 ops + m (Lio/netty/buffer/ByteBuf;[J)[J method_68088 readFixedLengthLongArray + p 0 buf + p 1 values + m (ID)Lio/netty/buffer/ByteBuf; setDouble setDouble + p 1 index + p 2 value + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (ILjava/nio/channels/FileChannel;JI)I getBytes getBytes + p 1 index + p 2 channel + p 5 length + p 3 pos + m (I)J getLong getLong + p 1 index + m (Ljava/util/function/IntFunction;)Ljava/lang/Object; method_52962 decode + c Reads a {@linkplain #readVarInt var int} representing an ID, then\nreturns the value converted by {@code idToValue}.\n\n@see #encode(ToIntFunction, Object) + p 1 idToValue + c a function that gets the value from the integer ID + m (ILio/netty/buffer/ByteBuf;)Lio/netty/buffer/ByteBuf; setBytes setBytes + p 1 index + p 2 buf + m ()Lorg/joml/Quaternionf; method_49070 readQuaternionf + c Reads a {@link Quaternionf} from this buf. A {@link Quaternionf} is represented\nby four {@code float}s.\n\n@see #writeQuaternionf(Quaternionf) + m (I)J getLongLE getLongLE + p 1 index + m (I)Lnet/minecraft/class_2540; method_53003 writeIntLE + m ()Ljava/time/Instant; method_44118 readInstant + c Reads an instant from this buf. An instant is represented by the milliseconds\nsince the epoch.\n\n@return the read instant\n@see #writeInstant(Instant) + m ()Lnet/minecraft/class_2487; method_10798 readNbt + c Reads an NBT compound from this buf. The binary representation of NBT is\nhandled by {@link net.minecraft.nbt.NbtIo}. If an NBT null is encountered,\nthis method returns {@code null}. The compound can have a maximum size of\n{@value #MAX_READ_NBT_SIZE} bytes.\n\n

Note that unlike {@link #readNbt(NbtSizeTracker)}, this can only\nread compounds.\n\n@return the read compound, may be {@code null}\n@throws io.netty.handler.codec.EncoderException if the NBT cannot be read\n@throws net.minecraft.nbt.NbtSizeValidationException if the compound exceeds the allowed maximum size\n@see #writeNbt(NbtCompound)\n@see #readNbt(NbtSizeTracker)\n@see #MAX_READ_NBT_SIZE + m (I)I getUnsignedMediumLE getUnsignedMediumLE + p 1 index + m (I)Lnet/minecraft/class_2540; method_52997 writeByte + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Object;Lnet/minecraft/class_9142;)V method_56892 writeNullable + p 0 buf + p 2 writer + p 1 value + m (Lio/netty/util/ByteProcessor;)I forEachByte forEachByte + p 1 byteProcessor + m (I)Lnet/minecraft/class_2540; method_52990 writerIndex + m (I)Lio/netty/buffer/ByteBuf; readBytes readBytes + p 1 length + m (I[BII)Lio/netty/buffer/ByteBuf; setBytes setBytes + p 2 bytes + p 3 sourceIndex + p 4 length + p 1 index + m (ILjava/io/InputStream;I)I setBytes setBytes + p 3 length + p 1 index + p 2 stream + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_1923;)V method_64263 writeChunkPos + p 1 pos + p 0 buf + m ()Lit/unimi/dsi/fastutil/ints/IntList; method_34059 readIntList + c Reads a list of primitive ints from this buf. The ints are stored as var\nints, with an extra var int in the beginning indicating the size.\n\n@apiNote To limit the length of the list or array read, use\n{@link #readIntArray(int)}.\n\n@implNote A list of ints has the same format as an int array.\n\n@return the read list\n@see #writeIntList(IntList)\n@see #readIntArray() + m (II)Lnet/minecraft/class_2540; method_52989 setInt + m (Lio/netty/buffer/ByteBuf;)Lorg/joml/Quaternionf; method_56343 readQuaternionf + p 0 buf + m ()Lnet/minecraft/class_2540; method_52938 retain + m (Ljava/lang/String;I)Lnet/minecraft/class_2540; method_10788 writeString + c Writes a string to this buf. A string is represented by a byte array of\nits UTF-8 data. That byte array can have a maximum length of\n{@code maxLength}.\n\n@return this buf, for chaining\n@throws io.netty.handler.codec.EncoderException if the byte array of the\nstring to write is longer than {@code maxLength}\n@see #readString()\n@see #readString(int)\n@see #writeString(String) + p 1 string + p 2 maxLength + c the max length of the byte array + m (Ljava/nio/channels/FileChannel;JI)I readBytes readBytes + p 4 length + p 2 pos + p 1 channel + m (II)Ljava/nio/ByteBuffer; nioBuffer nioBuffer + p 1 index + p 2 length + m ()[B method_10795 readByteArray + c Reads an array of primitive bytes from this buf. The array first has a\nvar int indicating its length, followed by the actual bytes. The array\ndoes not have a length limit.\n\n@see #readByteArray(int)\n@see #writeByteArray(byte[])\n@return the read byte array + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_5321; method_44112 readRegistryKey + c Reads a registry key from this buf. A registry key is represented by its\n{@linkplain #readIdentifier value as an identifier}.\n\n@return the read registry key\n@see #writeRegistryKey(RegistryKey) + p 1 registryRef + c the registry key of the registry the read registry key belongs to + m (II)Lnet/minecraft/class_2540; method_52966 setByte + m (Ljava/lang/String;)Lio/netty/handler/codec/DecoderException; method_49397 method_49397 + p 0 error + m (ILio/netty/buffer/ByteBuf;II)Lnet/minecraft/class_2540; method_52970 setBytes + m (Lnet/minecraft/class_9141;Lnet/minecraft/class_9141;)Lcom/mojang/datafixers/util/Either; method_70968 readEither + p 1 leftDecoder + p 2 rightDecoder + m (I[B)Lnet/minecraft/class_2540; method_52972 setBytes + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Ljava/lang/Object;)Lnet/minecraft/class_2540; method_29172 encode + c Writes an object to this buf as a compound NBT with the given codec.\n\n@param the encoded object's type\n@throws io.netty.handler.codec.EncoderException if the {@code codec} fails\nto encode the compound NBT\n@see #decode(DynamicOps, Codec, NbtSizeTracker) + p 3 value + p 2 codec + p 1 ops + m (Ljava/util/Collection;Lnet/minecraft/class_9142;)V method_34062 writeCollection + c Writes a collection to this buf. The collection is stored as a leading\n{@linkplain #readVarInt() var int} size followed by the entries\nsequentially.\n\n@param the list's entry type\n@see #readCollection(IntFunction, PacketByteBuf.PacketReader) + p 2 writer + p 1 collection + c the collection to write + m (I)S getUnsignedByte getUnsignedByte + p 1 index + m (Lio/netty/buffer/ByteBuf;Ljava/util/UUID;)V method_56337 writeUuid + p 1 uuid + p 0 buf + m (II)Lio/netty/buffer/ByteBuf; setShortLE setShortLE + p 1 index + p 2 value + m ([BII)Lnet/minecraft/class_2540; method_52980 writeBytes + m (Lnet/minecraft/class_243;)V method_52955 writeVec3d + c Writes a {@link Vec3d} to this buf. A {@link Vec3d} is represented\nby four {@code double}s.\n\n@see #readVec3d() + p 1 vec + m (IF)Lio/netty/buffer/ByteBuf; setFloat setFloat + p 1 index + p 2 value + m ()Lnet/minecraft/class_4208; method_44117 readGlobalPos + c Reads a global position from this buf. A global position is represented by\n{@linkplain #readRegistryKey the registry key} of the dimension followed by\n{@linkplain #readBlockPos the block position}.\n\n@return the read global pos\n@see #writeGlobalPos(GlobalPos) + m (Lio/netty/buffer/ByteBuf;)Ljava/util/UUID; method_56344 readUuid + p 0 buf + m (Lio/netty/buffer/ByteBuf;I)Lio/netty/buffer/ByteBuf; writeBytes writeBytes + p 2 length + p 1 buf + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_2487; method_56345 readNbt + p 0 buf + m ()Lnet/minecraft/class_2540; method_52939 touch + m (ILjava/util/function/IntFunction;I)Ljava/lang/Object; method_37452 method_37452 + p 2 value + m (ILjava/io/OutputStream;I)Lio/netty/buffer/ByteBuf; getBytes getBytes + p 1 index + p 3 length + p 2 stream + m (I)Z isWritable isWritable + p 1 size + m (F)Lio/netty/buffer/ByteBuf; writeFloat writeFloat + p 1 value + m (Lit/unimi/dsi/fastutil/ints/IntList;)V method_34060 writeIntList + c Writes a list of primitive ints from this buf. The ints are stored as var\nints, with an extra var int in the beginning indicating the size.\n\n@implNote A list of ints has the same format as an int array.\n\n@see #readIntList()\n@see #writeIntArray(int[]) + p 1 list + c the list to write + m (IILjava/nio/charset/Charset;)Ljava/lang/CharSequence; getCharSequence getCharSequence + p 1 index + p 2 length + p 3 charset + m (I)Lnet/minecraft/class_2540; method_52992 ensureWritable + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_2338;)V method_56336 writeBlockPos + p 1 pos + p 0 buf + m (I)Lio/netty/buffer/ByteBuf; readerIndex readerIndex + p 1 index + m (I)Lnet/minecraft/class_2540; method_53000 writeMedium + m (Lio/netty/buffer/ByteBuf;II)Lio/netty/buffer/ByteBuf; readBytes readBytes + p 3 length + p 1 buf + p 2 outputIndex + m (Ljava/nio/channels/FileChannel;JI)I writeBytes writeBytes + p 4 length + p 1 channel + p 2 pos + m (Ljava/util/function/IntFunction;Lnet/minecraft/class_9141;)Ljava/util/Collection; method_34068 readCollection + c Reads a collection from this buf. The collection is stored as a leading\n{@linkplain #readVarInt() var int} size followed by the entries\nsequentially.\n\n@param the collection's entry type\n@param the collection's type\n@return the read collection\n@see #writeCollection(Collection, PacketByteBuf.PacketWriter)\n@see #readList(PacketByteBuf.PacketReader) + p 1 collectionFactory + c a factory that creates a collection with a given size + p 2 reader + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_243;)V method_62783 writeVec3d + p 1 vec + p 0 buf + m ()Ljava/util/UUID; method_10790 readUuid + c Reads a UUID (universally unique identifier) from this buf. A UUID is\nrepresented by two regular longs.\n\n@return the read UUID\n@see #writeUuid(UUID) + m (J)Lio/netty/buffer/ByteBuf; writeLongLE writeLongLE + p 1 value + m (Ljava/io/OutputStream;I)Lio/netty/buffer/ByteBuf; readBytes readBytes + p 2 length + p 1 stream + m (Lnet/minecraft/class_9142;Lnet/minecraft/class_9142;Ljava/lang/Object;Ljava/lang/Object;)V method_34064 method_34064 + p 4 value + p 3 key + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_2540; method_52956 readBytes + m (I)Lio/netty/buffer/ByteBuf; capacity capacity + p 1 capacity + m (ILio/netty/buffer/ByteBuf;II)Lnet/minecraft/class_2540; method_52948 getBytes + m (B)I bytesBefore bytesBefore + p 1 value + m (Ljava/lang/String;)Lnet/minecraft/class_2540; method_10814 writeString + c Writes a string to this buf. A string is represented by a byte array of\nits UTF-8 data. That byte array can have a maximum length of\n{@value #DEFAULT_MAX_STRING_LENGTH}.\n\n@return this buf, for chaining\n@throws io.netty.handler.codec.EncoderException if the byte array of the\nstring to write is longer than {@value #DEFAULT_MAX_STRING_LENGTH}\n@see #readString()\n@see #readString(int)\n@see #writeString(String, int) + p 1 string + c the string to write + m (Ljava/lang/Enum;)Lnet/minecraft/class_2540; method_10817 writeEnumConstant + c Writes an enum constant to this buf. An enum constant is represented\nby a var int indicating its ordinal.\n\n@return this buf, for chaining\n@see #readEnumConstant(Class) + p 1 instance + c the enum constant to write + m ([B)Lnet/minecraft/class_2540; method_10813 writeByteArray + c Writes an array of primitive bytes to this buf. The array first has a\nvar int indicating its length, followed by the actual bytes.\n\n@see #readByteArray()\n@return this buf, for chaining + p 1 array + c the array to write + m (IZ)I ensureWritable ensureWritable + p 2 force + p 1 minBytes + m (Ljava/lang/Object;)Lio/netty/util/ReferenceCounted; touch touch + p 1 object + m (II)Lnet/minecraft/class_2540; method_52944 setIndex + m ([B)Lnet/minecraft/class_2540; method_52979 readBytes + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_9141;)Ljava/lang/Object; method_56893 readNullable + p 0 buf + p 1 reader + m (Lnet/minecraft/class_4208;)V method_44113 writeGlobalPos + c Writes a global position to this buf. A global position is represented by\n{@linkplain #writeRegistryKey the registry key} of the dimension followed by\n{@linkplain #writeBlockPos the block position}.\n\n@see #readGlobalPos() + p 1 pos + m (Ljava/lang/CharSequence;Ljava/nio/charset/Charset;)I writeCharSequence writeCharSequence + p 1 sequence + p 2 charset + m (IJ)Lnet/minecraft/class_2540; method_52967 setLongLE + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_243; method_62785 readVec3d + p 0 buf + m (ILio/netty/buffer/ByteBuf;I)Lnet/minecraft/class_2540; method_52947 getBytes + m (I)S getShortLE getShortLE + p 1 index + m (Ljava/util/function/Consumer;)V method_34065 forEachInCollection + c Iterates a collection from this buf. The collection is stored as a leading\n{@linkplain #readVarInt() var int} {@code size} followed by the entries\nsequentially. The {@code consumer} will be called {@code size} times.\n\n@see #readCollection(IntFunction, PacketByteBuf.PacketReader) + p 1 consumer + c the consumer to read entries + m (Lio/netty/buffer/ByteBuf;[J)V method_68085 writeLongArray + p 1 values + p 0 buf + m ()Lnet/minecraft/class_243; method_52996 readVec3d + c Reads a {@link Vec3d} from this buf. A {@link Vec3d} is represented\nby four {@code double}s.\n\n@see #writeVec3d(Vec3d) + m (Ljava/util/function/IntFunction;I)Ljava/util/function/IntFunction; method_37453 getMaxValidator + p 1 max + p 0 applier + m (D)Lio/netty/buffer/ByteBuf; writeDouble writeDouble + p 1 value + m (IIB)I indexOf indexOf + p 1 from + p 3 value + p 2 to + m (Lnet/minecraft/class_2520;Ljava/lang/String;)Lio/netty/handler/codec/DecoderException; method_34070 method_34070 + p 1 error + m (II)Lnet/minecraft/class_2540; method_52985 setMedium + m (Ljava/util/Optional;Lnet/minecraft/class_9142;)V method_37435 writeOptional + c Writes an optional value to this buf. An optional value is represented by\na boolean indicating if the value is present, followed by the value only if\nthe value is present.\n\n@see #readOptional(PacketByteBuf.PacketReader) + p 1 value + p 2 writer + m (ID)Lnet/minecraft/class_2540; method_52942 setDouble + m (I)B getByte getByte + p 1 index + m (Ljava/nio/ByteBuffer;)Lio/netty/buffer/ByteBuf; writeBytes writeBytes + p 1 buf + m (Ljava/security/PublicKey;)Lnet/minecraft/class_2540; method_44114 writePublicKey + c Writes a public key to this buf. A public key is represented by a {@linkplain\n#writeByteArray byte array} of X.509-encoded payload.\n\n@return this buf, for chaining\n@see #readPublicKey() + p 1 publicKey + m (Lcom/mojang/serialization/Codec;)Ljava/lang/Object; method_49394 decodeAsJson + c Reads an object from this buf as a JSON element with the given codec.\n\n@param the decoded object's type\n@return the read object\n@throws io.netty.handler.codec.EncoderException if the {@code codec} fails\nto decode the JSON element\n@see #encodeAsJson(Codec, Object) + p 1 codec + m (ILio/netty/buffer/ByteBuf;II)Lio/netty/buffer/ByteBuf; getBytes getBytes + p 4 length + p 1 index + p 3 outputIndex + p 2 buf + m (Lnet/minecraft/class_9141;)Ljava/util/List; method_34066 readList + c Reads a collection from this buf as an array list.\n\n@param the list's entry type\n@return the read list\n@see #readCollection(IntFunction, PacketByteBuf.PacketReader) + p 1 reader + m (I)Lio/netty/buffer/ByteBuf; writeIntLE writeIntLE + p 1 value + m ()Lnet/minecraft/class_2540; method_52934 markWriterIndex + m ()Ljava/util/BitSet; method_33558 readBitSet + c Reads a bit set from this buf. A bit set is represented by a long array.\n\n@return the read bit set\n@see #writeBitSet(BitSet) + m ()Lnet/minecraft/class_2960; method_10810 readIdentifier + c Reads an identifier from this buf. An identifier is represented by its\nstring form. The read identifier's string form can have a max length of\n{@value #DEFAULT_MAX_STRING_LENGTH}.\n\n@return the read identifier\n@throws io.netty.handler.codec.DecoderException if the identifier's\nstring form is longer than {@value #DEFAULT_MAX_STRING_LENGTH}\n@see #writeIdentifier(Identifier) + m (IJ)Lio/netty/buffer/ByteBuf; setLong setLong + p 1 index + p 2 value + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2540; method_10812 writeIdentifier + c Writes an identifier to this buf. An identifier is represented by its\nstring form. The written identifier's byte array can have a max length of\n{@value #DEFAULT_MAX_STRING_LENGTH}.\n\n@return this buf, for chaining\n@throws io.netty.handler.codec.EncoderException if the {@code id}'s\nbyte array is longer than {@value #DEFAULT_MAX_STRING_LENGTH}\n@see #readIdentifier() + p 1 id + c the identifier to write + m ()Ljava/lang/String; method_19772 readString + c Reads a string from this buf. A string is represented by a byte array of\nits UTF-8 data. The string can have a maximum length of {@value\n#DEFAULT_MAX_STRING_LENGTH}.\n\n@return the string read\n@throws io.netty.handler.codec.DecoderException if the string read\nexceeds the maximum length\n@see #readString(int)\n@see #writeString(String)\n@see #writeString(String, int) + m (ILio/netty/buffer/ByteBuf;I)Lio/netty/buffer/ByteBuf; setBytes setBytes + p 1 index + p 2 buf + p 3 length + m (I)J getUnsignedInt getUnsignedInt + p 1 index + m (Lio/netty/buffer/ByteBuf;)[B method_56890 readByteArray + p 0 buf + m ()J method_10792 readVarLong + c Reads a single var long from this buf.\n\n@return the value read\n@see #writeVarLong(long) + m (Lnet/minecraft/class_9141;)Ljava/lang/Object; method_43827 readNullable + c Reads a nullable value from this buf. A nullable value is represented by\na boolean indicating if the value is not null, followed by the value only if\nthe value is not null.\n\n@return the read nullable value\n@see #writeNullable(Object, PacketByteBuf.PacketWriter) + p 1 reader + m ()[I method_10787 readIntArray + c Reads an array of primitive ints from this buf. The array first has a\nvar int indicating its length, followed by the var int entries. The array\ndoes not have a length limit.\n\n@implNote An int array has the same format as a list of ints.\n\n@see #readIntArray(int)\n@see #writeIntArray(int[])\n@see #readIntList()\n@return the read byte array + m (Lio/netty/util/ByteProcessor;)I forEachByteDesc forEachByteDesc + p 1 byteProcessor + m (ILjava/nio/ByteBuffer;)Lio/netty/buffer/ByteBuf; setBytes setBytes + p 2 buf + p 1 index + m (Lio/netty/buffer/ByteBuf;I)Lnet/minecraft/class_2540; method_52957 readBytes + m (Ljava/lang/Object;Ljava/lang/String;)Lio/netty/handler/codec/EncoderException; method_49396 method_49396 + p 1 error + m (Ljava/io/InputStream;I)I writeBytes writeBytes + p 2 length + p 1 stream + m (Ljava/nio/channels/ScatteringByteChannel;I)I writeBytes writeBytes + p 2 length + p 1 channel + m ([J)[J method_68089 readFixedLengthLongArray + p 1 values + m (Lio/netty/buffer/ByteBuf;[J)V method_68086 writeFixedLengthLongArray + p 0 buf + p 1 values + m (Lio/netty/buffer/ByteBuf;[B)V method_56894 writeByteArray + p 0 buf + p 1 array + m ()Lnet/minecraft/class_2540; method_52935 resetWriterIndex + m (Lnet/minecraft/class_1923;)Lnet/minecraft/class_2540; method_36130 writeChunkPos + c Writes a chunk position to this buf. A chunk position is represented by\na regular long.\n\n@return this buf, for chaining\n@see #readChunkPos() + p 1 pos + c the chunk position to write + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_1923; method_64264 readChunkPos + p 0 buf + m (ILio/netty/buffer/ByteBuf;I)Lnet/minecraft/class_2540; method_52969 setBytes + m (I)I getIntLE getIntLE + p 1 index + m ()Lnet/minecraft/class_1923; method_36133 readChunkPos + c Reads a chunk position from this buf. A chunk position is represented by\na regular long.\n\n@return the read chunk position\n@see #writeChunkPos(ChunkPos) + m (J)Lio/netty/buffer/ByteBuf; writeLong writeLong + p 1 value + m (Ljava/nio/ByteOrder;)Lio/netty/buffer/ByteBuf; order order + p 1 byteOrder + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/class_2540; method_52961 readBytes + m (I)Ljava/util/BitSet; method_46254 readBitSet + c Reads a bit set from this buf. A bit set is represented using its byte array representation.\n\n@see BitSet#valueOf\n@see #writeBitSet + p 1 size + c the maximum size of the bit set + m (II)Lnet/minecraft/class_2540; method_52987 setMediumLE + m (I)J getUnsignedIntLE getUnsignedIntLE + p 1 index + m (Ljava/lang/Class;)Ljava/lang/Enum; method_10818 readEnumConstant + c Reads an enum constant from this buf. An enum constant is represented\nby a var int indicating its ordinal.\n\n@return the read enum constant\n@see #writeEnumConstant(Enum) + p 1 enumClass + c the enum class, for constant lookup + m ([BII)Lnet/minecraft/class_2540; method_52965 readBytes + m (I)Z isReadable isReadable + p 1 size + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2520; method_56340 readNbt + p 0 buf + p 1 sizeTracker + m ([J)Lnet/minecraft/class_2540; method_10789 writeLongArray + c Writes an array of primitive longs to this buf. The array first has a\nvar int indicating its length, followed by the regular long (not var\nlong) values.\n\n@see #readLongArray()\n@return this buf, for chaining + p 1 values + m (I[B)Lio/netty/buffer/ByteBuf; setBytes setBytes + p 1 index + p 2 bytes + m ([B)Lio/netty/buffer/ByteBuf; writeBytes writeBytes + p 1 bytes + m (I)Lnet/minecraft/class_2540; method_10804 writeVarInt + c Writes a single var int to this buf.\n\n

Compared to regular ints, var ints may use less bytes (ranging from 1\nto 5, where regular ints use 4) when representing smaller positive\nnumbers.\n\n@return this buf, for chaining\n@see #readVarInt()\n@see net.minecraft.network.encoding.VarInts + p 1 value + c the value to write + m (Ljava/nio/channels/GatheringByteChannel;I)I readBytes readBytes + p 2 length + p 1 channel + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Lnet/minecraft/class_2505;)Ljava/lang/Object; method_29171 decode + c Reads an object from this buf as a compound NBT with the given codec.\n\n@param the decoded object's type\n@return the read object\n@throws io.netty.handler.codec.EncoderException if the {@code codec} fails\nto decode the compound NBT\n@see #encode(DynamicOps, Codec, Object) + p 1 ops + p 2 codec + p 3 sizeTracker + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;)V method_49395 encodeAsJson + c Writes an object to this buf as a JSON element with the given codec.\n\n@param the encoded object's type\n@throws io.netty.handler.codec.EncoderException if the {@code codec} fails\nto encode the JSON element\n@see #decodeAsJson(Codec) + p 2 value + p 1 codec + m (II)[Ljava/nio/ByteBuffer; nioBuffers nioBuffers + p 1 index + p 2 length + m ()Lnet/minecraft/class_2540; method_52936 discardReadBytes + m (ILjava/nio/channels/FileChannel;JI)I setBytes setBytes + p 3 pos + p 5 length + p 1 index + p 2 channel + m (I)Lio/netty/buffer/ByteBuf; writeByte writeByte + p 1 value + m (Lio/netty/buffer/ByteBuf;II)Lio/netty/buffer/ByteBuf; writeBytes writeBytes + p 3 length + p 2 sourceIndex + p 1 buf + m (Lio/netty/buffer/ByteBuf;)[J method_10801 readLongArray + c Reads an array of primitive longs from this buf. The array first has a\nvar int indicating its length, followed by the regular long (not var\nlong) values. The array does not have a length limit.\n\n

Only when {@code toArray} is not {@code null} and {@code\ntoArray.length} equals to the length var int read will the {@code\ntoArray} be reused and returned; otherwise, a new array\nof proper size is created.\n\n@see #writeLongArray(long[])\n@see #readLongArray()\n@see #readLongArray(long[], int)\n@return the read long array + p 0 buf + m (Ljava/nio/ByteBuffer;)Lio/netty/buffer/ByteBuf; readBytes readBytes + p 1 buf + m (II)Lio/netty/buffer/ByteBuf; setIndex setIndex + p 1 readerIndex + p 2 writerIndex + m ([I)Lnet/minecraft/class_2540; method_10806 writeIntArray + c Writes an array of primitive ints to this buf. The array first has a\nvar int indicating its length, followed by the var int entries.\n\n@implNote An int array has the same format as a list of ints.\n\n@see #readIntArray(int)\n@see #writeIntArray(int[])\n@see #writeIntList(IntList)\n@return this buf, for chaining + p 1 array + c the array to write + m (I)Z release release + p 1 decrement + m (IF)Lnet/minecraft/class_2540; method_52943 setFloat + m (Lio/netty/buffer/ByteBuf;)I compareTo compareTo + m (ILjava/nio/channels/GatheringByteChannel;I)I getBytes getBytes + p 3 length + p 2 channel + p 1 index + m (Ljava/lang/Object;)I compareTo compareTo + p 1 buf + m (Lio/netty/buffer/ByteBuf;I)V method_62784 writeSyncId + p 0 buf + p 1 syncId + m (I)Lio/netty/util/ReferenceCounted; retain retain + p 1 increment + m (II)Lio/netty/buffer/ByteBuf; setIntLE setIntLE + p 2 value + p 1 index + m (IZ)Lnet/minecraft/class_2540; method_52951 setBoolean + m ()Lnet/minecraft/class_2540; method_52937 discardSomeReadBytes + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_2540; method_52975 writeBytes + m (II)Lio/netty/buffer/ByteBuf; slice slice + p 2 length + p 1 index + m (IJ)Lio/netty/buffer/ByteBuf; setLongLE setLongLE + p 2 value + p 1 index + m (I[BII)Lnet/minecraft/class_2540; method_52973 setBytes + m (II)Lio/netty/buffer/ByteBuf; setMedium setMedium + p 2 value + p 1 index + m (I)C getChar getChar + p 1 index + m (Lorg/joml/Quaternionf;)V method_49067 writeQuaternionf + c Writes a {@link Quaternionf} to this buf. A {@link Quaternionf} is represented\nby four {@code float}s.\n\n@see #readQuaternionf() + p 1 quaternionf + m (Lio/netty/buffer/ByteBuf;Lorg/joml/Quaternionfc;)V method_56338 writeQuaternionf + p 1 quaternion + p 0 buf + m (Lnet/minecraft/class_2520;)Lnet/minecraft/class_2540; method_10794 writeNbt + c Writes an NBT element to this buf. The binary representation of NBT is\nhandled by {@link net.minecraft.nbt.NbtIo}. If {@code nbt} is {@code\nnull}, it is treated as an NBT null.\n\n@return this buf, for chaining\n@throws io.netty.handler.codec.EncoderException if the NBT cannot be\nwritten\n@see #readNbt()\n@see #readNbt(NbtSizeTracker) + p 1 nbt + m (II)Lnet/minecraft/class_2540; method_52981 setShort + m (II)Lnet/minecraft/class_2540; method_52993 setChar + m (II)Lio/netty/buffer/ByteBuf; setZero setZero + p 1 index + p 2 length + m ()I method_62788 readSyncId + m (F)Lnet/minecraft/class_2540; method_52941 writeFloat + m (Ljava/util/Map;Lnet/minecraft/class_9142;Lnet/minecraft/class_9142;)V method_34063 writeMap + c Writes a map to this buf. The map is stored as a leading\n{@linkplain #readVarInt() var int} size followed by each key and value\npair.\n\n@param the key type\n@param the value type\n@see #readMap(IntFunction, PacketByteBuf.PacketReader, PacketByteBuf.PacketReader) + p 3 valueWriter + p 2 keyWriter + p 1 map + c the map to write + m (I)Lnet/minecraft/class_2540; method_52986 capacity + m (Ljava/lang/Object;)Lnet/minecraft/class_2540; method_52960 touch + m (I)Lnet/minecraft/class_2540; method_52998 writeShort + m (Ljava/util/UUID;)Lnet/minecraft/class_2540; method_10797 writeUuid + c Writes a UUID (universally unique identifier) to this buf. A UUID is\nrepresented by two regular longs.\n\n@return this buf, for chaining\n@see #readUuid() + p 1 uuid + c the UUID to write + m (I)Lio/netty/buffer/ByteBuf; ensureWritable ensureWritable + p 1 minBytes + m (Ljava/util/EnumSet;Ljava/lang/Class;)V method_46253 writeEnumSet + c Writes an enum set to this buf. An enum set is represented by a bit set that indicates\nwhether each element is in the set.\n\n@see #readEnumSet + p 1 enumSet + p 2 type + c the type of the enum + m (I)Lio/netty/buffer/ByteBuf; writeMedium writeMedium + p 1 value + m ()Lnet/minecraft/class_2540; method_52931 clear + m (Lio/netty/buffer/ByteBuf;)Lio/netty/buffer/ByteBuf; readBytes readBytes + p 1 buf + m ()Lorg/joml/Vector3f; method_49069 readVector3f + c Reads a {@link Vector3f} from this buf. A {@link Vector3f} is represented by\nthree {@code float}s.\n\n@see #writeVector3f(Vector3f) + m (I)[I method_10799 readIntArray + c Reads an array of primitive ints from this buf. The array first has a\nvar int indicating its length, followed by the var int entries. The array\nhas a length limit given by {@code maxSize}.\n\n@implNote An int array has the same format as a list of ints.\n\n@see #readIntArray()\n@see #writeIntArray(int[])\n@return the read byte array\n@throws io.netty.handler.codec.DecoderException if the read array has a\nlength over {@code maxSize} + p 1 maxSize + c the max length of the read array + m (I)Ljava/lang/String; method_10800 readString + c Reads a string from this buf. A string is represented by a byte array of\nits UTF-8 data. The string can have a maximum length of {@code maxLength}.\n\n@return the string read\n@throws io.netty.handler.codec.DecoderException if the string read\nis longer than {@code maxLength}\n@see #readString()\n@see #writeString(String)\n@see #writeString(String, int) + p 1 maxLength + c the maximum length of the string read + m ([J)Lnet/minecraft/class_2540; method_68087 writeFixedLengthLongArray + p 1 values + m (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/class_9142;Lnet/minecraft/class_9142;)V method_70966 writeEither + p 3 rightEncoder + p 2 leftEncoder + p 1 either + m (II)Lio/netty/buffer/ByteBuf; setInt setInt + p 1 index + p 2 value + m ()Lnet/minecraft/class_243; method_73168 readVelocity + c Reads a {@link Vec3d} representing a velocity from this buf.\n\n@see #writeVelocity(Vec3d) + m (I)Lio/netty/buffer/ByteBuf; writeMediumLE writeMediumLE + p 1 value + m (I)Lnet/minecraft/class_2540; method_53005 writeZero + m ([BII)Lio/netty/buffer/ByteBuf; readBytes readBytes + p 1 bytes + p 2 outputIndex + p 3 length + m (Lnet/minecraft/class_9141;Lnet/minecraft/class_9141;)Ljava/util/Map; method_34067 readMap + c Reads a map from this buf as a hash map.\n\n@param the key type\n@param the value type\n@return the read map\n@see #readMap(IntFunction, PacketByteBuf.PacketReader, PacketByteBuf.PacketReader) + p 2 valueReader + p 1 keyReader + m (ILio/netty/buffer/ByteBuf;)Lio/netty/buffer/ByteBuf; getBytes getBytes + p 2 buf + p 1 index + m (J)Lnet/minecraft/class_2540; method_10791 writeVarLong + c Writes a single var long to this buf.\n\n

Compared to regular longs, var longs may use less bytes when\nrepresenting smaller positive numbers.\n\n@return this buf, for chaining\n@see #readVarLong()\n@see net.minecraft.network.encoding.VarLongs + p 1 value + c the value to write + m ()[J method_33134 readLongArray + c Reads an array of primitive longs from this buf. The array first has a\nvar int indicating its length, followed by the regular long (not var\nlong) values. The array does not have a length limit.\n\n@see #writeLongArray(long[])\n@see #readLongArray(long[])\n@see #readLongArray(long[], int)\n@return the read long array + m (Ljava/nio/charset/Charset;)Ljava/lang/String; toString toString + p 1 charset + m (I[BII)Lio/netty/buffer/ByteBuf; getBytes getBytes + p 4 length + p 3 outputIndex + p 2 bytes + p 1 index + m (Lio/netty/buffer/ByteBuf;Lorg/joml/Vector3fc;)V method_56339 writeVector3f + p 1 vec + p 0 buf + m (J)Lnet/minecraft/class_2540; method_52974 writeLong + m (I)Lnet/minecraft/class_2540; method_52999 writeShortLE + m (I)D getDouble getDouble + p 1 index + m (Ljava/util/function/ToIntFunction;Ljava/lang/Object;)Lnet/minecraft/class_2540; method_52963 encode + c Converts {@code value} to an integer representing its ID, then\nwrites a {@linkplain #readVarInt var int} representation of such ID.\n\n@see #decode(IntFunction) + p 2 value + p 1 valueToId + c a function that gets the value's integer ID + m ([B)Lio/netty/buffer/ByteBuf; readBytes readBytes + p 1 bytes + m (Lnet/minecraft/class_5321;)V method_44116 writeRegistryKey + c Writes a registry key to this buf. A registry key is represented by its\n{@linkplain #writeIdentifier value as an identifier}.\n\n@see #readRegistryKey(RegistryKey) + p 1 key + m (I)Lio/netty/buffer/ByteBuf; readRetainedSlice readRetainedSlice + p 1 length + m (I)I getMediumLE getMediumLE + p 1 index + m ()Lnet/minecraft/class_2540; method_52932 markReaderIndex + m (ILio/netty/buffer/ByteBuf;)Lnet/minecraft/class_2540; method_52946 getBytes + m (Ljava/io/OutputStream;I)Lnet/minecraft/class_2540; method_52959 readBytes + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_2338; method_56335 readBlockPos + p 0 buf + m (ILio/netty/buffer/ByteBuf;II)Lio/netty/buffer/ByteBuf; setBytes setBytes + p 2 buf + p 3 sourceIndex + p 1 index + p 4 length + m ()Lnet/minecraft/class_3965; method_17814 readBlockHitResult + c Reads a block hit result from this buf. A block hit result is represented\nby a block position, a direction enum constant, 3 floats for the hit\noffset position, and a boolean for whether the hit was inside a block.\n\n@return the read block hit result\n@see #writeBlockHitResult(BlockHitResult) + m (Z)Lnet/minecraft/class_2540; method_52964 writeBoolean + m (II)Lnet/minecraft/class_2540; method_52995 setZero + m (Ljava/lang/Class;)Ljava/util/EnumSet; method_46251 readEnumSet + c Reads an enum set from this buf. An enum set is represented by a bit set that indicates\nwhether each element is in the set.\n\n@see #writeEnumSet + p 1 type + c the type of the enum + m (IIB)I bytesBefore bytesBefore + p 3 value + p 1 index + p 2 length + m (Ljava/lang/Object;Lnet/minecraft/class_9142;)V method_43826 writeNullable + c Writes a nullable value to this buf. A nullable value is represented by\na boolean indicating if the value is not null, followed by the value only if\nthe value is not null.\n\n@see #readNullable(PacketByteBuf.PacketReader) + p 2 writer + p 1 value + m (I)I getUnsignedMedium getUnsignedMedium + p 1 index + m (I)V method_62786 writeSyncId + p 1 syncId + m (I)I getUnsignedShort getUnsignedShort + p 1 index + m ()Lnet/minecraft/class_5321; method_53006 readRegistryRefKey + c Reads a registry key referencing another registry key from this buf.\nSuch key is represented by its {@linkplain #readIdentifier value as an identifier}.\n\n

This is the same as {@code readRegistryKey(Registries.ROOT)}.\nTo read a registry key of a registered object (such as biomes),\nuse {@link #readRegistryKey(RegistryKey)}.\n\n@return the read registry key\n@see #readRegistryKey(RegistryKey)\n@see #writeRegistryKey(RegistryKey) + m (I)Lnet/minecraft/class_2540; method_52988 readerIndex + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/class_2540; method_52978 writeBytes + m (ILjava/lang/CharSequence;Ljava/nio/charset/Charset;)I setCharSequence setCharSequence + p 3 charset + p 1 index + p 2 sequence + m (Lio/netty/buffer/ByteBuf;I)[B method_56891 readByteArray + p 0 buf + p 1 maxSize + m (Lnet/minecraft/class_243;)V method_73167 writeVelocity + c Writes a {@link Vec3d} representing a velocity to this buf.\n\n@see #readVelocity() + p 1 velocity + m ()Lnet/minecraft/class_2540; method_52933 resetReaderIndex + m ([B)Lnet/minecraft/class_2540; method_52983 writeBytes + m ()Lnet/minecraft/class_2338; method_10811 readBlockPos + c Reads a block position from this buf. A block position is represented by\na regular long.\n\n@return the read block pos\n@see #writeBlockPos(BlockPos) + m (I)[B method_10803 readByteArray + c Reads an array of primitive bytes from this buf. The array first has a\nvar int indicating its length, followed by the actual bytes. The array\nhas a length limit given by {@code maxSize}.\n\n@see #readByteArray()\n@see #writeByteArray(byte[])\n@return the read byte array\n@throws io.netty.handler.codec.DecoderException if the read array has a\nlength over {@code maxSize} + p 1 maxSize + c the max length of the read array + m (II)Lnet/minecraft/class_2540; method_52984 setShortLE + m (I)Lnet/minecraft/class_2540; method_53007 retain + m (ILjava/nio/ByteBuffer;)Lnet/minecraft/class_2540; method_52971 setBytes + m (Lio/netty/buffer/ByteBuf;II)Lnet/minecraft/class_2540; method_52958 readBytes + m (II)Lio/netty/buffer/ByteBuf; setByte setByte + p 1 index + p 2 value + m (Lio/netty/buffer/ByteBuf;)Lorg/joml/Vector3f; method_56342 readVector3f + p 0 buf + m (IZ)Lio/netty/buffer/ByteBuf; setBoolean setBoolean + p 2 value + p 1 index + m (ILjava/nio/channels/ScatteringByteChannel;I)I setBytes setBytes + p 3 length + p 2 channel + p 1 index + m (IILio/netty/util/ByteProcessor;)I forEachByte forEachByte + p 1 index + p 2 length + p 3 byteProcessor + m (I)Lio/netty/buffer/ByteBuf; writeShortLE writeShortLE + p 1 value + m (Ljava/time/Instant;)V method_44115 writeInstant + c Writes an instant to this buf. An instant is represented by the milliseconds\nsince the epoch.\n\n@see #readInstant() + p 1 instant +c net/minecraft/class_1212 net/minecraft/datafixer/fix/EntitySimpleTransformFix + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/datafixers/util/Pair; method_5164 transform + p 2 entityDynamic + p 1 choice +c net/minecraft/class_3871 net/minecraft/client/gui/screen/ingame/BlastFurnaceScreen + f Lnet/minecraft/class_2960; field_17115 TEXTURE + f Lnet/minecraft/class_2561; field_52804 TOGGLE_BLASTABLE_TEXT + f Lnet/minecraft/class_2960; field_45446 LIT_PROGRESS_TEXTURE + f Ljava/util/List; field_54822 TABS + f Lnet/minecraft/class_2960; field_45447 BURN_PROGRESS_TEXTURE + m (Lnet/minecraft/class_3705;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 3 title + p 1 container + p 2 inventory +c net/minecraft/class_1211 net/minecraft/datafixer/fix/EntityRenameFix + f Ljava/lang/String; field_5734 name + m (Ljava/lang/String;Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 name + p 3 changesType + p 2 outputSchema + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Ljava/lang/String;)Ljava/lang/String; method_5161 method_5161 + p 3 oldName + m (Ljava/lang/String;)Ljava/lang/String; method_5163 rename + p 1 oldName +c net/minecraft/class_3872 net/minecraft/client/gui/screen/ingame/BookScreen + f Lnet/minecraft/class_474; field_17123 previousPageButton + f Z field_18976 pageTurnSound + f Lnet/minecraft/class_3872$class_3931; field_17417 EMPTY_PROVIDER + f I field_32331 MAX_TEXT_WIDTH + f I field_32333 WIDTH + f Lnet/minecraft/class_2583; field_63908 STYLE + f Lnet/minecraft/class_474; field_17122 nextPageButton + f I field_17121 cachedPageIndex + f Lnet/minecraft/class_3872$class_3931; field_17418 contents + f Lnet/minecraft/class_2561; field_60476 TITLE_TEXT + f Ljava/util/List; field_17120 cachedPage + f I field_32332 MAX_TEXT_HEIGHT + f Lnet/minecraft/class_2561; field_25897 pageIndexText + f I field_32334 HEIGHT + f I field_17119 pageIndex + f Lnet/minecraft/class_2960; field_17117 BOOK_TEXTURE + m ()Lnet/minecraft/class_2561; method_71545 getPageIndicatorText + m (I)Z method_17556 setPage + p 1 index + m ()V method_17558 addPageButtons + m ()V method_17058 goToNextPage + m ()I method_75834 getTop + m (Lnet/minecraft/class_3872$class_3931;)V method_17554 setPageProvider + p 1 pageProvider + m (Lnet/minecraft/class_4185;)V method_19884 method_19884 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19886 method_19886 + p 1 button + m ()I method_17055 getPageCount + m ()I method_75832 getCloseButtonY + m (Lnet/minecraft/class_2558;)Z method_71846 handleClickEvent + p 1 clickEvent + m (Lnet/minecraft/class_12225;Z)V method_75835 render + p 2 click + p 1 drawer + m (I)Z method_17789 jumpToPage + p 1 page + m ()V method_17557 addCloseButton + m ()V method_17057 goToPreviousPage + m ()V method_17059 updatePageButtons + m ()I method_75833 getLeft + m (Lnet/minecraft/class_3872$class_3931;)V + p 1 pageProvider + m (Lnet/minecraft/class_4185;)V method_19885 method_19885 + p 1 button + m (Lnet/minecraft/class_3872$class_3931;Z)V + p 1 contents + p 2 playPageTurnSound + m ()V method_72151 closeScreen +c net/minecraft/class_3872$class_3931 net/minecraft/client/gui/screen/ingame/BookScreen$Contents + f Ljava/util/List; comp_2438 pages + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_3872$class_3931; method_17562 create + p 0 stack + m (I)Lnet/minecraft/class_2561; method_17563 getPage + p 1 index + m ()I method_17560 getPageCount + m ()Ljava/util/List; comp_2438 pages + m (Ljava/util/List;)V + p 1 pages +c net/minecraft/class_2541 net/minecraft/block/VineBlock + f Lcom/mojang/serialization/MapCodec; field_46485 CODEC + f Lnet/minecraft/class_2746; field_11706 NORTH + f Lnet/minecraft/class_2746; field_11703 UP + f Lnet/minecraft/class_2746; field_11702 EAST + f Lnet/minecraft/class_2746; field_11699 SOUTH + f Lnet/minecraft/class_2746; field_11696 WEST + f Ljava/util/Map; field_11697 FACING_PROPERTIES + f Ljava/util/function/Function; field_55811 shapeFunction + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_5819;)Lnet/minecraft/class_2680; method_10820 getGrownState + p 1 above + p 2 state + p 3 random + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_10821 shouldConnectTo + p 0 world + p 2 direction + p 1 pos + m (Ljava/util/Map;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66470 method_66470 + p 1 state + m (Lnet/minecraft/class_2680;)I method_10822 getAdjacentBlockCount + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_10827 getPlacementShape + p 3 pos + p 1 state + p 2 world + m (Ljava/util/Map$Entry;)Z method_10826 method_10826 + p 0 entry + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_10824 canGrowAt + p 2 pos + p 1 world + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_2746; method_10828 getFacingProperty + p 0 direction + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_10829 shouldHaveSide + p 3 side + p 2 pos + p 1 world + m (Lnet/minecraft/class_2680;)Z method_10823 hasAdjacentBlocks + p 1 state + m ()Ljava/util/function/Function; method_66471 createShapeFunction + m (Lnet/minecraft/class_2680;)Z method_10830 hasHorizontalSide + p 1 state +c net/minecraft/class_2539 net/minecraft/network/NetworkPhase + f Ljava/lang/String; field_20594 id + f Lnet/minecraft/class_2539; field_20592 STATUS + f Lnet/minecraft/class_2539; field_20593 LOGIN + f Lnet/minecraft/class_2539; field_20590 HANDSHAKING + f Lnet/minecraft/class_2539; field_20591 PLAY + f Lnet/minecraft/class_2539; field_45671 CONFIGURATION + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()Ljava/lang/String; method_10785 getId +c net/minecraft/class_1207 net/minecraft/datafixer/mapping/LegacyCoralFanBlockMapping + f Ljava/util/Map; field_5709 MAP +c net/minecraft/class_1206 net/minecraft/datafixer/mapping/FlatteningRecipeMapping + f Ljava/util/Map; field_5708 RECIPES +c net/minecraft/class_1205 net/minecraft/datafixer/mapping/WoodRecipeMapping + f Ljava/util/Map; field_5707 RECIPES +c net/minecraft/class_1204 net/minecraft/datafixer/fix/OptionsKeyTranslationFix + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;)Lcom/mojang/serialization/Dynamic; method_28239 method_28239 + p 1 optionsMap + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5130 method_5130 + p 0 optionsTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28237 method_28237 + p 0 optionsDynamic +c net/minecraft/class_2535 net/minecraft/network/ClientConnection + c A connection backed by a netty channel. It can be one to a client on the\nserver or one to a server on a client. + f Z field_11640 errored + f F field_11653 averagePacketsSent + f Z field_48515 duringLogin + f Z field_11647 encrypted + f Lnet/minecraft/class_9127; field_48514 C2S_HANDSHAKE_STATE + f Lnet/minecraft/class_8762; field_45955 packetSizeLogger + f Lnet/minecraft/class_9812; field_52180 disconnectionInfo + f Lnet/minecraft/class_2547; field_45669 prePlayStateListener + f I field_11656 packetsSentCounter + f Lorg/slf4j/Marker; field_11641 NETWORK_MARKER + f Lio/netty/channel/Channel; field_11651 channel + f Lnet/minecraft/class_2598; field_11643 side + c The side this connection is to. + f Z field_11646 disconnected + f Lnet/minecraft/class_2547; field_11652 packetListener + f F field_33280 CURRENT_PACKET_COUNTER_WEIGHT + c Represents when the average packet counter is updated, what percent of the\nvalue of the average counter is set from the current counter.\n\n

The formula is {@link #averagePacketsSent averagePacketsSent} = {@value}\n× {@link #packetsSentCounter packetsSentCounter} + (1 - {@value}) ×\n{@code averagePacketsSent}. + f Ljava/util/Queue; field_45668 queuedTasks + f Lorg/slf4j/Logger; field_11642 LOGGER + f I field_11655 ticks + f Lorg/slf4j/Marker; field_36379 PACKET_RECEIVED_MARKER + f Lnet/minecraft/class_9812; field_44972 pendingDisconnectionInfo + f Ljava/net/SocketAddress; field_11645 address + f F field_11654 averagePacketsReceived + f Lorg/slf4j/Marker; field_11639 NETWORK_PACKETS_MARKER + f I field_11658 packetsReceivedCounter + f Lorg/slf4j/Marker; field_36380 PACKET_SENT_MARKER + m ()Lnet/minecraft/class_2598; method_36121 getSide + c Returns the side of this connection, or the direction of the packets received\nby this connection. + m (Lnet/minecraft/class_9127;Lnet/minecraft/class_2547;)V method_56330 transitionInbound + p 2 packetListener + p 1 state + m ()F method_10745 getAveragePacketsSent + m (Ljava/net/InetSocketAddress;Lnet/minecraft/class_12239;Lnet/minecraft/class_2535;)Lio/netty/channel/ChannelFuture; method_52271 connect + p 0 address + p 2 connection + p 1 backend + m (Ljava/net/InetSocketAddress;Lnet/minecraft/class_12239;Lnet/minecraft/class_9191;)Lnet/minecraft/class_2535; method_10753 connect + p 0 address + p 1 backend + p 2 packetSizeLog + m ()Z method_10772 isChannelAbsent + m (Z)Ljava/lang/String; method_56334 getInboundHandlerName + p 0 receivingSide + m (Lnet/minecraft/class_9812;)V method_60924 disconnect + p 1 disconnectionInfo + m ()V method_52918 flushInternal + m (Lnet/minecraft/class_2596;Lio/netty/channel/ChannelFutureListener;)V method_10752 send + p 1 packet + p 2 listener + m ()V method_10757 tryDisableAutoRead + m (Ljava/lang/String;ILnet/minecraft/class_2896;)V method_52902 connect + p 3 listener + p 2 port + p 1 address + m (Lnet/minecraft/class_9191;)V method_53505 resetPacketSizeLog + p 1 log + m (Lio/netty/channel/ChannelHandlerContext;)V channelInactive channelInactive + p 1 context + m (Lio/netty/channel/ChannelPipeline;Lnet/minecraft/class_2598;ZLnet/minecraft/class_8762;)V method_48311 addHandlers + p 1 side + p 0 pipeline + p 3 packetSizeLogger + p 2 local + m (Lnet/minecraft/class_2596;Lio/netty/channel/ChannelFutureListener;Z)V method_52906 send + p 3 flush + p 2 listener + p 1 packet + m ()Z method_10771 isEncrypted + m (Lorg/slf4j/Marker;)V method_40064 method_40064 + p 0 marker + m ()Ljava/net/SocketAddress; method_10755 getAddress + m ()V method_52915 flush + m (Lnet/minecraft/class_9127;)V method_56329 transitionOutbound + p 1 newState + m (Lnet/minecraft/class_2561;)V method_10747 disconnect + p 1 disconnectReason + m (Ljava/util/function/Consumer;)V method_52905 submit + p 1 task + m ()Z method_10756 isLocal + m (Lnet/minecraft/class_2547;)V method_52912 setInitialPacketListener + c Sets the initial packet listener.\n\n@throws IllegalStateException if the listener was already set\n@see #transitionInbound\n@see #transitionOutbound + p 1 packetListener + m (Lio/netty/channel/ChannelPipeline;Lnet/minecraft/class_2598;)V method_52911 addLocalValidator + p 1 side + p 0 pipeline + m ()V method_10768 handleDisconnection + m (Ljava/lang/String;ILnet/minecraft/class_9127;Lnet/minecraft/class_9127;Lnet/minecraft/class_8697;Z)V method_56326 connect + p 1 address + p 2 port + p 5 prePlayStateListener + p 6 transfer + p 3 outboundState + p 4 inboundState + m ()Lnet/minecraft/class_9812; method_60926 getDisconnectionInfo + m (Ljava/lang/String;ILnet/minecraft/class_9127;Lnet/minecraft/class_9127;Lnet/minecraft/class_8697;Lnet/minecraft/class_8592;)V method_52904 connect + p 5 prePlayStateListener + p 6 intent + p 1 address + p 2 port + p 3 outboundState + p 4 inboundState + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Throwable;)V exceptionCaught exceptionCaught + p 2 ex + p 1 context + m (Lnet/minecraft/class_9127;Lnet/minecraft/class_2547;)V method_56332 setPacketListener + p 2 listener + p 1 state + m (Lio/netty/channel/ChannelHandlerContext;)V channelActive channelActive + p 1 context + m (ZLio/netty/channel/ChannelHandlerContext;)V method_56331 method_56331 + p 2 context + m (Lnet/minecraft/class_2596;)V method_10743 send + p 1 packet + m (Lorg/slf4j/Marker;)V method_40063 method_40063 + p 0 marker + m (Lio/netty/channel/ChannelFuture;)V method_59851 syncUninterruptibly + p 0 future + m (Ljava/net/SocketAddress;)Lnet/minecraft/class_2535; method_10769 connectLocal + p 0 address + m (Lnet/minecraft/class_8036;Lio/netty/channel/ChannelHandlerContext;)V method_56328 method_56328 + p 1 context + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V channelRead0 channelRead0 + p 1 context + p 2 packet + m (Lnet/minecraft/class_8035;Lio/netty/channel/ChannelHandlerContext;)V method_56327 method_56327 + p 1 context + m ()V method_30615 updateStats + m ()V method_10751 handleQueuedTasks + m (Lio/netty/channel/ChannelPipeline;)V method_53859 addFlowControlHandler + p 1 pipeline + m (Ljavax/crypto/Cipher;Ljavax/crypto/Cipher;)V method_10746 setupEncryption + p 2 encryptionCipher + p 1 decryptionCipher + m (Ljava/lang/String;ILnet/minecraft/class_2921;)V method_52903 connect + p 1 address + p 3 listener + p 2 port + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/class_2596;)V method_10770 channelRead0 + m (IZ)V method_10760 setCompressionThreshold + c Sets the compression threshold of this connection.\n\n

Packets over the threshold in size will be written as a {@code 0}\nbyte followed by contents, while compressed ones will be written as\na var int for the decompressed size followed by the compressed contents.\n\n

The connections on the two sides must have the same compression\nthreshold, or compression errors may result. + p 1 compressionThreshold + c the compression threshold, in number of bytes + p 2 rejectsBadPackets + c whether this connection may abort if a compressed packet with a bad size is received + m ()F method_10762 getAveragePacketsReceived + m (Lnet/minecraft/class_2596;Lio/netty/channel/ChannelFutureListener;Z)V method_36942 sendInternal + p 2 listener + p 1 packet + p 3 flush + m (Lnet/minecraft/class_2596;Lio/netty/channel/ChannelFutureListener;Z)V method_10764 sendImmediately + p 3 flush + p 2 listener + p 1 packet + m ()Lnet/minecraft/class_2598; method_36122 getOppositeSide + c Returns the opposite side of this connection, or the direction of the packets\nsent by this connection. + m (Lnet/minecraft/class_8762;Z)Lio/netty/channel/ChannelInboundHandler; method_59852 getSplitter + p 1 local + p 0 packetSizeLogger + m (Z)Lio/netty/channel/ChannelOutboundHandler; method_59853 getPrepender + p 0 local + m (Lorg/slf4j/Marker;)V method_40062 method_40062 + p 0 marker + m (Z)Ljava/lang/String; method_56333 getOutboundHandlerName + p 0 sendingSide + m (Lnet/minecraft/class_2596;Lnet/minecraft/class_2547;)V method_10759 handlePacket + p 1 listener + p 0 packet + m (Z)Ljava/lang/String; method_52909 getAddressAsString + p 1 logIps + m ()V method_10754 tick + m ()Z method_10758 isOpen + m (Lnet/minecraft/class_9127;Lnet/minecraft/class_8697;Ljava/lang/String;ILnet/minecraft/class_8592;Lnet/minecraft/class_9127;Lnet/minecraft/class_2535;)V method_52900 method_52900 + p 7 connection + m ()Lnet/minecraft/class_2547; method_10744 getPacketListener + m (Lnet/minecraft/class_2598;)V + p 1 side + m (Lnet/minecraft/class_2596;Lio/netty/channel/ChannelFutureListener;ZLnet/minecraft/class_2535;)V method_52907 method_52907 + p 3 connection +c net/minecraft/class_2535$2 net/minecraft/network/ClientConnection$2 + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V write write + p 3 promise + p 1 context + p 2 value +c net/minecraft/class_2535$3 net/minecraft/network/ClientConnection$3 + m (Lio/netty/channel/Channel;)V initChannel initChannel + p 1 channel +c net/minecraft/class_2535$1 net/minecraft/network/ClientConnection$1 + m (Lio/netty/channel/Channel;)V initChannel initChannel + p 1 channel +c net/minecraft/class_3866 net/minecraft/block/entity/FurnaceBlockEntity + f Lnet/minecraft/class_2561; field_63044 CONTAINER_NAME_TEXT + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state +c net/minecraft/class_3867 net/minecraft/block/enums/Attachment + f Ljava/lang/String; field_17102 name + f Lnet/minecraft/class_3867; field_17098 FLOOR + f Lnet/minecraft/class_3867; field_17099 CEILING + f Lnet/minecraft/class_3867; field_17101 DOUBLE_WALL + f Lnet/minecraft/class_3867; field_17100 SINGLE_WALL + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_3868 net/minecraft/structure/DesertVillageData + f Lnet/minecraft/class_5321; field_25948 TOWN_CENTERS_KEY + f Lnet/minecraft/class_5321; field_40959 ZOMBIE_TERMINATORS_KEY + f Lnet/minecraft/class_5321; field_40958 TERMINATORS_KEY + m (Lnet/minecraft/class_7891;)V method_17037 bootstrap + p 0 poolRegisterable +c net/minecraft/class_2537 net/minecraft/block/TripwireHookBlock + f Lnet/minecraft/class_2746; field_11669 ATTACHED + f Lcom/mojang/serialization/MapCodec; field_46481 CODEC + f Ljava/util/Map; field_55808 SHAPES_BY_DIRECTION + f Lnet/minecraft/class_2746; field_11671 POWERED + f I field_31271 SCHEDULED_TICK_DELAY + f Lnet/minecraft/class_2754; field_11666 FACING + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)V method_10775 updateNeighborsOnAxis + p 0 block + p 1 world + p 2 pos + p 3 direction + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ZZZZ)V method_10777 playSound + p 4 detached + p 5 off + p 2 attached + p 3 on + p 0 world + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;ZZILnet/minecraft/class_2680;)V method_10776 update + p 2 state + p 1 pos + p 0 world +c net/minecraft/class_1208 net/minecraft/datafixer/TypeReferences + c Represents all the type references Minecraft's datafixer can fix. + f Lcom/mojang/datafixers/DSL$TypeReference; field_5721 OBJECTIVE + f Lcom/mojang/datafixers/DSL$TypeReference; field_45092 SAVED_DATA_MAP_DATA + f Lcom/mojang/datafixers/DSL$TypeReference; field_5711 RECIPE + f Lcom/mojang/datafixers/DSL$TypeReference; field_5723 ENTITY_TREE + c A type reference which refers to an entity tree.\n\n

An entity tree contains the passengers of an entity and their passengers. + f Lcom/mojang/datafixers/DSL$TypeReference; field_45094 SAVED_DATA_RAIDS + f Lcom/mojang/datafixers/DSL$TypeReference; field_5713 ITEM_NAME + c A type reference which refers to an item's identifier. + f Lcom/mojang/datafixers/DSL$TypeReference; field_19224 POI_CHUNK + c A type reference which refers to the point of interest data in a chunk. + f Lcom/mojang/datafixers/DSL$TypeReference; field_5725 ADVANCEMENTS + f Lcom/mojang/datafixers/DSL$TypeReference; field_5715 PLAYER + c A type reference which refers to a player. + f Lcom/mojang/datafixers/DSL$TypeReference; field_5727 BLOCK_ENTITY + c A type reference which refers to a block entity. + f Lcom/mojang/datafixers/DSL$TypeReference; field_45090 SAVED_DATA_COMMAND_STORAGE + f Lcom/mojang/datafixers/DSL$TypeReference; field_5717 OPTIONS + c A type reference which refers to client game options. + f Lcom/mojang/datafixers/DSL$TypeReference; field_5729 ENTITY + c A type reference which refers to a type of entity. + f Lcom/mojang/datafixers/DSL$TypeReference; field_5719 ENTITY_NAME + c A type reference which refers to an entity's identifier. + f Lcom/mojang/datafixers/DSL$TypeReference; field_26993 ENTITY_CHUNK + c A type reference which refers to the entity data in a chunk. + f Lcom/mojang/datafixers/DSL$TypeReference; field_43179 MULTI_NOISE_BIOME_SOURCE_PARAMETER_LIST + f Lcom/mojang/datafixers/DSL$TypeReference; field_47727 FLAT_BLOCK_STATE + f Lcom/mojang/datafixers/DSL$TypeReference; field_45095 SAVED_DATA_RANDOM_SEQUENCES + f Lcom/mojang/datafixers/DSL$TypeReference; field_5730 STATS + f Lcom/mojang/datafixers/DSL$TypeReference; field_5720 BLOCK_STATE + c A type reference which refers to a block state. + f Lcom/mojang/datafixers/DSL$TypeReference; field_45097 SAVED_DATA_SCOREBOARD + f Lcom/mojang/datafixers/DSL$TypeReference; field_5710 LEVEL + f Lcom/mojang/datafixers/DSL$TypeReference; field_5722 HOTBAR + c A type reference which refers to the saved creative hotbars.\n\n

This type reference is only used on the client. + f Lcom/mojang/datafixers/DSL$TypeReference; field_5712 ITEM_STACK + c A type reference which refers to an item stack. + f Lcom/mojang/datafixers/DSL$TypeReference; field_5724 STRUCTURE_FEATURE + f Lcom/mojang/datafixers/DSL$TypeReference; field_45093 SAVED_DATA_IDCOUNTS + f Lcom/mojang/datafixers/DSL$TypeReference; field_5714 TEAM + f Lcom/mojang/datafixers/DSL$TypeReference; field_49205 DATA_COMPONENTS + f Lcom/mojang/datafixers/DSL$TypeReference; field_5726 CHUNK + c A type reference which refers to a chunk. + f Lcom/mojang/datafixers/DSL$TypeReference; field_5716 STRUCTURE + f Lcom/mojang/datafixers/DSL$TypeReference; field_23067 WORLD_GEN_SETTINGS + c A type reference which refers to world gen settings. + f Lcom/mojang/datafixers/DSL$TypeReference; field_5728 BIOME + c A type reference which refers to a biome. + f Lcom/mojang/datafixers/DSL$TypeReference; field_5718 UNTAGGED_SPAWNER + f Lcom/mojang/datafixers/DSL$TypeReference; field_45096 SAVED_DATA_STRUCTURE_FEATURE_INDICES + f Lcom/mojang/datafixers/DSL$TypeReference; field_38380 GAME_EVENT_NAME + f Lcom/mojang/datafixers/DSL$TypeReference; field_5731 BLOCK_NAME + c A type reference which refers to a block's identifier. + f Lcom/mojang/datafixers/DSL$TypeReference; field_63271 STOPWATCHES_SAVED_DATA + f Lcom/mojang/datafixers/DSL$TypeReference; field_63272 DEBUG_PROFILE + f Lcom/mojang/datafixers/DSL$TypeReference; field_55935 ENTITY_EQUIPMENT + f Lcom/mojang/datafixers/DSL$TypeReference; field_55638 TICKETS_SAVED_DATA + f Lcom/mojang/datafixers/DSL$TypeReference; field_55639 TEXT_COMPONENT + f Lcom/mojang/datafixers/DSL$TypeReference; field_62508 WORLD_BORDER_SAVED_DATA + f Lcom/mojang/datafixers/DSL$TypeReference; field_59996 LIGHTWEIGHT_LEVEL + f Lcom/mojang/datafixers/DSL$TypeReference; field_51368 VILLAGER_TRADE + f Lcom/mojang/datafixers/DSL$TypeReference; field_51369 PARTICLE + m (Ljava/lang/String;)Lcom/mojang/datafixers/DSL$TypeReference; method_59518 create + p 0 typeName +c net/minecraft/class_2538 net/minecraft/block/TripwireBlock + f Lnet/minecraft/class_2746; field_11678 SOUTH + f Lnet/minecraft/class_2746; field_11679 DISARMED + f Lnet/minecraft/class_265; field_55806 ATTACHED_SHAPE + f Lnet/minecraft/class_265; field_55807 UNATTACHED_SHAPE + f Ljava/util/Map; field_11676 FACING_PROPERTIES + f I field_31267 SCHEDULED_TICK_DELAY + f Lnet/minecraft/class_2746; field_11680 POWERED + f Lnet/minecraft/class_2248; field_11677 hookBlock + f Lnet/minecraft/class_2746; field_11683 ATTACHED + f Lnet/minecraft/class_2746; field_11673 EAST + f Lnet/minecraft/class_2746; field_11674 WEST + f Lcom/mojang/serialization/MapCodec; field_46480 CODEC + f Lnet/minecraft/class_2746; field_11675 NORTH + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_10779 update + p 3 state + p 1 world + p 2 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_64024 updatePowered + p 1 world + p 2 pos + m (Lnet/minecraft/class_2538;)Lnet/minecraft/class_2248; method_54061 method_54061 + p 0 block + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54060 method_54060 + p 0 instance + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4970$class_2251;)V + p 1 hookBlock + p 2 settings + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_10778 shouldConnectTo + p 2 facing + p 1 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Ljava/util/List;)V method_10780 updatePowered + p 1 world + p 2 pos + p 3 entities +c net/minecraft/class_765 net/minecraft/client/render/LightmapTextureManager + c The lightmap texture manager maintains a texture containing the RGBA overlay for each of the 16×16 sky and block light combinations.\n

\nAlso contains some utilities to pack and unpack lightmap coordinates from sky and block light values,\nand some lightmap coordinates constants. + f I field_32767 MAX_LIGHT_COORDINATE + c Represents the maximum lightmap coordinate, where both sky light and block light equals {@code 15}.\nThe value of this maximum lightmap coordinate is {@value}. + f I field_32768 MAX_SKY_LIGHT_COORDINATE + c Represents the maximum sky-light-wise lightmap coordinate whose value is {@value}.\nThis is equivalent to a {@code 15} sky light and {@code 0} block light. + f F field_21528 flickerIntensity + f I field_32769 MAX_BLOCK_LIGHT_COORDINATE + c Represents the maximum block-light-wise lightmap coordinate whose value is {@value}.\nThis is equivalent to a {@code 0} sky light and {@code 15} block light. + f Lnet/minecraft/class_757; field_4134 renderer + f Z field_4135 dirty + f Lnet/minecraft/class_310; field_4137 client + f Lnet/minecraft/class_11285; field_60112 buffer + f Lcom/mojang/blaze3d/textures/GpuTexture; field_57927 glTexture + f Lcom/mojang/blaze3d/textures/GpuTextureView; field_60581 glTextureView + f I field_60111 UBO_SIZE + m (FI)F method_62226 getBrightness + p 0 ambientLight + p 1 lightLevel + m (I)I method_24186 getBlockLightCoordinates + p 0 light + m (I)I method_24187 getSkyLightCoordinates + p 0 light + m (II)I method_62228 applyEmission + p 1 lightEmission + p 0 light + m (F)V method_3313 update + p 1 tickProgress + m ()V method_3314 tick + m (Lnet/minecraft/class_757;Lnet/minecraft/class_310;)V + p 2 client + m (II)I method_23687 pack + p 0 block + p 1 sky + m (Lnet/minecraft/class_1309;FF)F method_42596 getDarkness + p 1 entity + p 2 factor + p 3 tickProgress + m ()Lcom/mojang/blaze3d/textures/GpuTextureView; method_71650 getGlTextureView + m (Lnet/minecraft/class_2874;I)F method_23284 getBrightness + p 0 type + p 1 lightLevel +c net/minecraft/class_8730 net/minecraft/unused/packageinfo/PackageInfo8730 +c net/minecraft/class_769 net/minecraft/client/render/BuiltChunkStorage + f Lnet/minecraft/class_1937; field_4151 world + f Lnet/minecraft/class_761; field_4146 worldRenderer + f [Lnet/minecraft/class_846$class_851; field_4150 chunks + f I field_4147 sizeZ + f I field_4148 sizeX + f I field_4149 sizeY + f I field_45629 viewDistance + f Lnet/minecraft/class_4076; field_53952 sectionPos + m (Lnet/minecraft/class_846;)V method_3324 createChunks + p 1 chunkBuilder + m (Lnet/minecraft/class_4076;)V method_3330 updateCameraPosition + p 1 sectionPos + m ()Lnet/minecraft/class_5539; method_52840 getWorld + m (J)Lnet/minecraft/class_846$class_851; method_62963 getRenderedChunk + p 1 sectionPos + m (III)Z method_62965 isSectionWithinViewDistance + p 3 sectionZ + p 2 sectionY + p 1 sectionX + m ()I method_52839 getViewDistance + m (I)V method_3325 setViewDistance + p 1 viewDistance + m ()Lnet/minecraft/class_4076; method_62966 getSectionPos + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_846$class_851; method_3323 getRenderedChunk + p 1 blockPos + m (III)I method_3326 getChunkIndex + p 3 z + p 2 y + p 1 x + m ()V method_3327 clear + m (IIIZ)V method_16040 scheduleRebuild + p 4 important + p 3 z + p 2 y + p 1 x + m (Lnet/minecraft/class_846;Lnet/minecraft/class_1937;ILnet/minecraft/class_761;)V + p 4 worldRenderer + p 2 world + p 3 viewDistance + p 1 chunkBuilder + m (III)Lnet/minecraft/class_846$class_851; method_62964 getRenderedChunk + p 3 sectionZ + p 2 sectionY + p 1 sectionX +c net/minecraft/class_768 net/minecraft/client/util/math/Rect2i + f I field_4142 height + f I field_4143 width + f I field_4144 y + f I field_4145 x + m ()I method_3319 getWidth + m ()I method_3321 getX + m ()I method_3322 getY + m (II)V method_35779 setStartPos + p 2 y + p 1 x + m (Lnet/minecraft/class_768;)Lnet/minecraft/class_768; method_35780 intersection + p 1 rect + m ()I method_3320 getHeight + m (II)Z method_3318 contains + p 1 x + p 2 y + m (I)V method_35781 setY + p 1 y + m (I)V method_35783 setHeight + p 1 height + m (I)V method_35782 setWidth + p 1 width + m (IIII)V + p 4 height + p 3 width + p 2 y + p 1 x + m (I)V method_35778 setX + p 1 x +c net/minecraft/class_766 net/minecraft/client/gui/RotatingCubeMapRenderer + f Lnet/minecraft/class_310; field_4139 client + f F field_40510 pitch + f Lnet/minecraft/class_2960; field_49905 OVERLAY_TEXTURE + f Lnet/minecraft/class_751; field_4141 cubeMap + m (Lnet/minecraft/class_332;IIZ)V method_3317 render + p 3 height + p 2 width + p 4 rotate + p 1 context + m (FF)F method_45780 wrapOnce + p 0 a + p 1 b + m (Lnet/minecraft/class_1060;)V method_71651 registerTextures + p 1 textureManager + m (Lnet/minecraft/class_751;)V + p 1 cubeMap +c net/minecraft/class_7406 net/minecraft/registry/tag/PaintingVariantTags + f Lnet/minecraft/class_6862; field_38929 PLACEABLE + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_43384 of + p 0 id +c net/minecraft/class_8737 net/minecraft/unused/packageinfo/PackageInfo8737 +c net/minecraft/class_12090 net/minecraft/command/permission/PermissionCheck + f Lcom/mojang/serialization/Codec; field_63192 CODEC + m ()Lcom/mojang/serialization/MapCodec; method_75021 getCodec + m (Lnet/minecraft/class_12096;)Z method_75022 allows + p 1 permissions + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_75023 method_75023 + p 0 codec +c net/minecraft/class_12090$class_12091 net/minecraft/command/permission/PermissionCheck$AlwaysPass + f Lnet/minecraft/class_12090$class_12091; field_63193 INSTANCE + f Lcom/mojang/serialization/MapCodec; field_63194 CODEC +c net/minecraft/class_12090$class_12092 net/minecraft/command/permission/PermissionCheck$Require + f Lcom/mojang/serialization/MapCodec; field_63195 CODEC + f Lnet/minecraft/class_12087; comp_4944 permission + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75024 method_75024 + p 0 instance + m ()Lnet/minecraft/class_12087; comp_4944 permission + m (Lnet/minecraft/class_12087;)V + p 1 permission +c net/minecraft/class_93 net/minecraft/loot/entry/GroupEntry + f Lcom/mojang/serialization/MapCodec; field_45800 CODEC + m ([Lnet/minecraft/class_79$class_80;)Lnet/minecraft/class_93$class_6152; method_35511 create + p 0 entries + m (Ljava/util/List;Lnet/minecraft/class_47;Ljava/util/function/Consumer;)Z method_452 method_452 + p 2 lootChoiceExpander + p 1 context + m (Lnet/minecraft/class_64;Lnet/minecraft/class_64;Lnet/minecraft/class_47;Ljava/util/function/Consumer;)Z method_29315 method_29315 + p 2 context + p 3 choiceConsumer +c net/minecraft/class_93$class_6152 net/minecraft/loot/entry/GroupEntry$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_31846 entries + m ()Lnet/minecraft/class_93$class_6152; method_35512 getThisBuilder + m ([Lnet/minecraft/class_79$class_80;)V + p 1 entries +c net/minecraft/class_8738 net/minecraft/network/packet/s2c/play/ChunkSentS2CPacket + f Lnet/minecraft/class_9139; field_47908 CODEC + f I comp_1725 batchSize + m (Lnet/minecraft/class_2540;)V method_55863 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2602;)V method_53044 apply + m ()I comp_1725 batchSize + m (I)V + p 1 batchSize +c net/minecraft/class_8735 net/minecraft/network/listener/ServerConfigurationPacketListener + m (Lnet/minecraft/class_9220;)V method_56909 onSelectKnownPacks + p 1 packet + m (Lnet/minecraft/class_11752;)V method_73259 onAcceptCodeOfConduct + p 1 packet + m (Lnet/minecraft/class_8736;)V method_52408 onReady + p 1 packet +c net/minecraft/class_8736 net/minecraft/network/packet/c2s/config/ReadyC2SPacket + f Lnet/minecraft/class_9139; field_48701 CODEC + f Lnet/minecraft/class_8736; field_48700 INSTANCE + m (Lnet/minecraft/class_8735;)V method_53043 apply +c net/minecraft/class_94 net/minecraft/loot/function/ApplyBonusLootFunction + f Lnet/minecraft/class_94$class_96; field_1009 formula + f Lcom/mojang/serialization/Codec; field_45807 TYPE_CODEC + f Ljava/util/Map; field_1010 FACTORIES + f Lnet/minecraft/class_6880; field_1011 enchantment + f Lcom/mojang/serialization/MapCodec; field_45808 FORMULA_CODEC + f Lcom/mojang/serialization/MapCodec; field_45806 CODEC + m (Lnet/minecraft/class_6880;I)Lnet/minecraft/class_120$class_121; method_461 uniformBonusCount + p 1 bonusMultiplier + p 0 enchantment + m (Lnet/minecraft/class_94;)Lnet/minecraft/class_94$class_96; method_53299 method_53299 + p 0 function + m (Lnet/minecraft/class_94;)Lnet/minecraft/class_6880; method_53302 method_53302 + p 0 function + m (Lnet/minecraft/class_6880;Ljava/util/List;)Lnet/minecraft/class_117; method_457 method_457 + p 1 conditions + m (Lnet/minecraft/class_6880;FI)Lnet/minecraft/class_120$class_121; method_463 binomialWithBonusCount + p 2 extra + p 0 enchantment + p 1 probability + m (Lnet/minecraft/class_6880;Ljava/util/List;)Lnet/minecraft/class_117; method_453 method_453 + p 1 conditions + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53301 method_53301 + p 0 instance + m (Ljava/util/List;Lnet/minecraft/class_6880;Lnet/minecraft/class_94$class_96;)V + p 2 enchantment + p 3 formula + p 1 conditions + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_120$class_121; method_456 uniformBonusCount + p 0 enchantment + m (Lnet/minecraft/class_6880;ILjava/util/List;)Lnet/minecraft/class_117; method_462 method_462 + p 2 conditions + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_120$class_121; method_455 oreDrops + p 0 enchantment + m (Lnet/minecraft/class_2960;)Lcom/mojang/serialization/DataResult; method_53298 method_53298 + p 0 id + m (Lnet/minecraft/class_6880;IFLjava/util/List;)Lnet/minecraft/class_117; method_459 method_459 + p 3 conditions +c net/minecraft/class_94$class_8752 net/minecraft/loot/function/ApplyBonusLootFunction$Type + f Lcom/mojang/serialization/Codec; comp_1851 codec + f Lnet/minecraft/class_2960; comp_1850 id + m ()Lnet/minecraft/class_2960; comp_1850 id + m ()Lcom/mojang/serialization/Codec; comp_1851 codec + m (Lnet/minecraft/class_2960;Lcom/mojang/serialization/Codec;)V + p 1 id + p 2 codec +c net/minecraft/class_94$class_96 net/minecraft/loot/function/ApplyBonusLootFunction$Formula + m ()Lnet/minecraft/class_94$class_8752; method_466 getType + m (Lnet/minecraft/class_5819;II)I method_467 getValue + p 1 random + p 2 initialCount + p 3 enchantmentLevel +c net/minecraft/class_94$class_95 net/minecraft/loot/function/ApplyBonusLootFunction$BinomialWithBonusCount + f Lnet/minecraft/class_94$class_8752; field_1013 TYPE + f Lcom/mojang/serialization/Codec; field_45811 CODEC + f I comp_1848 extra + f F comp_1849 probability + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53307 method_53307 + p 0 instance + m (IF)V + p 2 probability + p 1 extra + m ()I comp_1848 extra + m ()F comp_1849 probability +c net/minecraft/class_94$class_100 net/minecraft/loot/function/ApplyBonusLootFunction$UniformBonusCount + f Lnet/minecraft/class_94$class_8752; field_45814 TYPE + f Lcom/mojang/serialization/Codec; field_45813 CODEC + f I comp_1852 bonusMultiplier + m (I)V + p 1 bonusMultiplier + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53308 method_53308 + p 0 instance + m ()I comp_1852 bonusMultiplier +c net/minecraft/class_94$class_98 net/minecraft/loot/function/ApplyBonusLootFunction$OreDrops + f Lnet/minecraft/class_94$class_8752; field_1015 TYPE + f Lcom/mojang/serialization/Codec; field_45812 CODEC + f Lnet/minecraft/class_94$class_98; field_64391 INSTANCE +c net/minecraft/class_8733 net/minecraft/network/packet/s2c/config/ReadyS2CPacket + f Lnet/minecraft/class_9139; field_48691 CODEC + f Lnet/minecraft/class_8733; field_48690 INSTANCE + m (Lnet/minecraft/class_8732;)V method_53041 apply +c net/minecraft/class_12094 net/minecraft/command/permission/PermissionLevel + f I field_63205 level + f Ljava/util/function/IntFunction; field_63203 BY_LEVEL + f Ljava/lang/String; field_63204 name + f Lcom/mojang/serialization/Codec; field_63202 NUMERIC_CODEC + f Lnet/minecraft/class_12094; field_63200 OWNERS + f Lcom/mojang/serialization/Codec; field_63201 CODEC + f Lnet/minecraft/class_12094; field_63196 ALL + f Lnet/minecraft/class_12094; field_63198 GAMEMASTERS + f Lnet/minecraft/class_12094; field_63197 MODERATORS + f Lnet/minecraft/class_12094; field_63199 ADMINS + m (I)Lnet/minecraft/class_12094; method_75027 fromLevel + p 0 level + m ()I method_75026 getLevel + m (Lnet/minecraft/class_12094;)Ljava/lang/Integer; method_75030 method_75030 + p 0 level + m (Lnet/minecraft/class_12094;)Z method_75028 isAtLeast + p 1 other + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 name + p 4 level + m (Lnet/minecraft/class_12094;)I method_75031 method_75031 + p 0 level +c net/minecraft/class_761 net/minecraft/client/render/WorldRenderer + f Lnet/minecraft/class_4604; field_4056 capturedFrustum + f Lnet/minecraft/class_846; field_45614 chunkBuilder + f Lnet/minecraft/class_898; field_4109 entityRenderManager + f Lnet/minecraft/class_2960; field_53901 ENTITY_OUTLINE + f Lnet/minecraft/class_9960; field_53081 framebufferSet + f D field_4081 lastCameraY + f I field_32759 SECTION_SIZE + f Lnet/minecraft/class_761$class_12351; field_64566 gizmos + f Lnet/minecraft/class_2960; field_53900 TRANSPARENCY + f Z field_62945 captureFrustum + f Lnet/minecraft/class_638; field_4085 world + f I field_54162 NEARBY_SECTION_DISTANCE + f Lnet/minecraft/class_11661; field_61738 entityRenderCommandQueue + f Lnet/minecraft/class_11684; field_61739 entityRenderDispatcher + f Lnet/minecraft/class_310; field_4088 client + f D field_4096 lastCameraZ + f Lnet/minecraft/class_11658; field_61737 worldRenderState + f Lnet/minecraft/class_4503; field_63068 gameTestDebugRenderer + f I field_54161 chunkIndex + f Lnet/minecraft/class_9975; field_53075 skyRendering + f D field_4115 lastCameraPitch + f Lnet/minecraft/class_9976; field_53078 weatherRendering + f Lnet/minecraft/class_4599; field_20951 bufferBuilders + f Lnet/minecraft/class_12185; field_63574 gizmoCollector + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_4058 blockBreakingInfos + f I field_4073 ticks + f Lnet/minecraft/class_824; field_27741 blockEntityRenderManager + f D field_4069 lastCameraX + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; field_45616 builtChunks + f I field_54163 MIN_TRANSPARENT_SORT_COUNT + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_20950 blockBreakingProgressions + f Lnet/minecraft/class_8679; field_45615 chunkRenderingDataPreparer + f Lnet/minecraft/class_276; field_53080 entityOutlineFramebuffer + f I field_4084 cameraChunkX + f Lnet/minecraft/class_2338; field_54160 lastTranslucencySortCameraPos + f Lnet/minecraft/class_769; field_4112 chunks + f I field_34812 HALF_SECTION_SIZE + f I field_4121 cameraChunkZ + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; field_54164 nearbyChunks + f Lnet/minecraft/class_12137; field_64218 terrainSampler + f D field_4064 lastCameraYaw + f I field_4105 cameraChunkY + f Lnet/minecraft/class_9955; field_53076 cloudRenderer + f Lnet/minecraft/class_9978; field_53077 worldBorderRendering + f Lnet/minecraft/class_863; field_63067 debugRenderer + f I field_4062 viewDistance + f Lnet/minecraft/class_11943; field_62647 particleBatch + m ()I method_3246 getCompletedChunkCount + m (III)V method_18145 scheduleChunkRenders3x3x3 + p 1 x + p 2 y + p 3 z + m ()Lnet/minecraft/class_276; method_29363 getWeatherFramebuffer + m (Lnet/minecraft/class_9909;Lnet/minecraft/class_4063;Lnet/minecraft/class_243;JFIF)V method_62204 renderClouds + p 2 mode + p 1 frameGraphBuilder + p 3 cameraPos + m ()Lnet/minecraft/class_276; method_22990 getEntityOutlinesFramebuffer + m ()Lnet/minecraft/class_279; method_62907 getTransparencyPostEffectProcessor + m (IIIIII)V method_18146 scheduleBlockRenders + p 5 maxY + p 6 maxZ + p 3 minZ + p 4 maxX + p 1 minX + p 2 minY + m (Lnet/minecraft/class_3191;)V method_22987 removeBlockBreakingInfo + p 1 info + m ()Ljava/lang/String; method_3289 getChunksDebugString + m ()Lnet/minecraft/class_276; method_29364 getCloudsFramebuffer + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)V method_21596 scheduleBlockRerenderIfNeeded + p 1 pos + p 2 old + p 3 updated + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_11658;)V method_62206 renderBlockDamage + p 2 immediate + p 3 renderStates + p 1 matrices + m (Lnet/minecraft/class_638;)V method_3244 setWorld + p 1 world + m (Lnet/minecraft/class_9909;Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V method_62201 renderParticles + p 1 frameGraphBuilder + p 2 fogBuffer + m (Lnet/minecraft/class_846$class_851;Lnet/minecraft/class_10196;Lnet/minecraft/class_243;ZZ)V method_64060 scheduleChunkTranslucencySort + p 1 chunk + p 2 relativePos + p 3 cameraPos + p 4 needsUpdate + p 5 ignoreCameraAlignment + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11658;Lnet/minecraft/class_11659;)V method_72916 pushEntityRenders + p 1 matrices + p 2 renderStates + p 3 queue + m ()Lit/unimi/dsi/fastutil/objects/ObjectArrayList; method_62220 getBuiltChunks + m (Lnet/minecraft/class_761$class_10948;Lnet/minecraft/class_1920;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)I method_23793 getLightmapCoordinates + p 1 world + p 2 state + p 3 pos + p 0 brightnessGetter + m (Lnet/minecraft/class_4184;)V method_3252 tick + p 1 camera + m (Lnet/minecraft/class_1297;F)Lnet/minecraft/class_10017; method_72914 getAndUpdateRenderState + p 1 entity + p 2 tickProgress + m ()V method_35776 killFrustum + m ()Lnet/minecraft/class_4604; method_62222 getCapturedFrustum + m ()D method_34812 getViewDistance + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4588;DDDLnet/minecraft/class_12074;IF)V method_22712 drawBlockOutline + p 3 x + p 5 y + p 7 z + p 9 state + p 10 color + p 11 lineWidth + p 1 matrices + p 2 vertexConsumer + m ()V method_71118 rotate + m (Lnet/minecraft/class_4184;Lnet/minecraft/class_11658;)V method_74922 fillBlockBreakingProgressRenderState + p 1 camera + p 2 renderStates + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lnet/minecraft/class_243;)Lnet/minecraft/class_4604; method_32133 setupFrustum + p 1 posMatrix + p 3 pos + p 2 projMatrix + m (Lnet/minecraft/class_4184;Lnet/minecraft/class_11658;)V method_74923 fillEntityOutlineRenderStates + p 2 renderStates + p 1 camera + m ()V method_3292 scheduleTerrainUpdate + m ()V method_35775 captureFrustum + m (Lnet/minecraft/class_9909;Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V method_62203 renderWeather + p 1 frameGraphBuilder + m ()D method_34811 getChunkCount + m (Lnet/minecraft/class_9909;Lnet/minecraft/class_12075;Lcom/mojang/blaze3d/buffers/GpuBufferSlice;Lorg/joml/Matrix4f;)V method_62199 renderLateDebug + p 1 frameGraphBuilder + p 3 fogBuffer + p 2 cameraRenderState + m ()Lnet/minecraft/class_846; method_34810 getChunkBuilder + m (Lnet/minecraft/class_2338;)Z method_40050 isRenderingReady + p 1 pos + m (Lnet/minecraft/class_846$class_851;)V method_38550 addBuiltChunk + p 1 chunk + m (Lnet/minecraft/class_9909;Lnet/minecraft/class_4184;Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V method_62200 renderSky + p 3 fogBuffer + p 2 camera + p 1 frameGraphBuilder + m ()Z method_3281 isTerrainRenderComplete + m (Lorg/joml/Matrix4fc;DDD)Lnet/minecraft/class_11532; method_72157 renderBlockLayers + p 6 cameraZ + p 4 cameraY + p 2 cameraX + p 1 matrix + m (Lnet/minecraft/class_310;Lnet/minecraft/class_898;Lnet/minecraft/class_824;Lnet/minecraft/class_4599;Lnet/minecraft/class_11658;Lnet/minecraft/class_11684;)V + p 5 worldRenderState + p 4 bufferBuilders + p 6 entityRenderDispatcher + p 1 client + p 3 blockEntityRenderManager + p 2 entityRenderManager + m ()Lnet/minecraft/class_9955; method_62196 getCloudRenderer + m (Lnet/minecraft/class_4184;)Z method_43788 hasBlindnessOrDarkness + p 1 camera + m (ILnet/minecraft/class_2338;I)V method_8569 setBlockBreakingInfo + p 2 pos + p 1 entityId + p 3 stage + m ()V method_64059 clear + m ()V method_3254 drawEntityOutlinesFramebuffer + m ()Lnet/minecraft/class_12180$class_12181; method_75414 startDrawingGizmos + m ()Z method_3270 canDrawEntityOutlines + m (Lnet/minecraft/class_4184;Lnet/minecraft/class_4604;Z)V method_74752 updateCamera + p 3 spectator + p 1 camera + p 2 frustum + m ()V method_74921 updateBlockBreakingProgress + m (Lnet/minecraft/class_4184;)V method_3269 updateChunks + p 1 camera + m (J)V method_62908 onChunkUnload + p 1 sectionPos + m ()V method_76647 collectGizmos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;I)V method_8570 updateBlock + p 3 oldState + p 2 pos + p 5 flags + p 4 newState + p 1 world + m (Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_4587;ZLnet/minecraft/class_11658;)V method_62210 renderTargetBlockOutline + p 3 renderBlockOutline + p 4 renderStates + p 1 immediate + p 2 matrices + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;)I method_23794 getLightmapCoordinates + p 1 pos + p 0 world + m ()Lnet/minecraft/class_276; method_29360 getTranslucentFramebuffer + m (Lnet/minecraft/class_4587;)V method_22979 checkEmpty + p 1 matrices + m ()V method_3279 reload + m (IIIIII)V method_62219 scheduleChunkRenders + p 4 maxX + p 3 minZ + p 6 maxZ + p 5 maxY + p 2 minY + p 1 minX + m (Lnet/minecraft/class_9909;Lnet/minecraft/class_4604;Lorg/joml/Matrix4f;Lcom/mojang/blaze3d/buffers/GpuBufferSlice;ZLnet/minecraft/class_11658;Lnet/minecraft/class_9779;Lnet/minecraft/class_3695;)V method_62202 renderMain + p 4 fogBuffer + p 5 renderBlockOutline + p 6 state + p 7 tickCounter + p 1 frameGraphBuilder + p 2 frustum + p 3 posMatrix + p 8 profiler + m (II)V method_3242 onResized + p 2 height + p 1 width + m ()Ljava/lang/String; method_3272 getEntitiesDebugString + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11658;Lnet/minecraft/class_11661;)V method_62208 renderBlockEntities + p 2 renderStates + p 1 matrices + p 3 queue + m ()V method_76296 refreshTerrainSampler + m (Lnet/minecraft/class_4184;FLnet/minecraft/class_11658;)V method_74314 fillBlockEntityRenderStates + p 2 tickProgress + p 3 renderStates + p 1 camera + m ()Lnet/minecraft/class_8679; method_62221 getChunkRenderingDataPreparer + m (Lnet/minecraft/class_4604;)Lnet/minecraft/class_4604; method_52816 offsetFrustum + p 0 frustum + m ()Lnet/minecraft/class_276; method_29361 getEntityFramebuffer + m (III)V method_8571 scheduleChunkRender + p 3 chunkZ + p 1 chunkX + p 2 chunkY + m (Lnet/minecraft/class_243;)V method_62198 translucencySort + p 1 cameraPos + m ()V method_3296 loadEntityOutlinePostProcessor + m (Lnet/minecraft/class_4184;Lnet/minecraft/class_4604;Lnet/minecraft/class_9779;Lnet/minecraft/class_11658;)V method_72917 fillEntityRenderStates + p 4 renderStates + p 3 tickCounter + p 2 frustum + p 1 camera + m (Lnet/minecraft/class_4604;)V method_38551 applyFrustum + p 1 frustum + m (IIIZ)V method_3295 scheduleChunkRender + p 4 important + p 3 z + p 2 y + p 1 x + m (Lnet/minecraft/class_1923;)V method_65201 scheduleNeighborUpdates + p 1 chunkPos + m ()Lnet/minecraft/class_276; method_29362 getParticlesFramebuffer + m (Lnet/minecraft/class_9922;Lnet/minecraft/class_9779;ZLnet/minecraft/class_4184;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lcom/mojang/blaze3d/buffers/GpuBufferSlice;Lorg/joml/Vector4f;Z)V method_22710 render + p 5 positionMatrix + p 4 camera + p 7 projectionMatrix + p 6 basicProjectionMatrix + p 9 fogColor + p 8 fogBuffer + p 10 renderSky + p 1 allocator + p 3 renderBlockOutline + p 2 tickCounter + m (Lnet/minecraft/class_2338;Z)V method_16037 scheduleSectionRender + p 2 important + p 1 pos +c net/minecraft/class_761$class_10948 net/minecraft/client/render/WorldRenderer$BrightnessGetter + f Lnet/minecraft/class_761$class_10948; field_58200 DEFAULT + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;)I packedBrightness packedBrightness + p 2 pos + p 1 world + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;)I method_68890 method_68890 + p 0 world + p 1 pos +c net/minecraft/class_761$class_12351 net/minecraft/client/render/WorldRenderer$Gizmos + f Lnet/minecraft/class_12160; comp_5236 standardPrimitives + f Lnet/minecraft/class_12160; comp_5237 alwaysOnTopPrimitives + m ()Lnet/minecraft/class_12160; comp_5237 alwaysOnTopPrimitives + m ()Lnet/minecraft/class_12160; comp_5236 standardPrimitives + m (Lnet/minecraft/class_12160;Lnet/minecraft/class_12160;)V + p 1 standardPrimitives + p 2 alwaysOnTopPrimitives +c net/minecraft/class_8734 net/minecraft/network/packet/s2c/config/DynamicRegistriesS2CPacket + f Lnet/minecraft/class_9139; field_48692 CODEC + f Lnet/minecraft/class_9139; field_48777 REGISTRY_KEY_CODEC + f Lnet/minecraft/class_5321; comp_2258 registry + f Ljava/util/List; comp_2259 entries + m (Lnet/minecraft/class_8732;)V method_53042 apply + m ()Lnet/minecraft/class_5321; comp_2258 registry + m ()Ljava/util/List; comp_2259 entries + m (Lnet/minecraft/class_5321;Ljava/util/List;)V + p 1 registry + p 2 entries +c net/minecraft/class_12093 net/minecraft/command/permission/PermissionChecks + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_75025 registerAndGetDefault + p 0 registry +c net/minecraft/class_7403 net/minecraft/data/DataWriter + f Lnet/minecraft/class_7403; field_39439 UNCACHED + m (Ljava/nio/file/Path;[BLcom/google/common/hash/HashCode;)V method_43346 write + p 1 path + p 3 hashCode + p 2 data + m (Ljava/nio/file/Path;[BLcom/google/common/hash/HashCode;)V method_44300 method_44300 + p 1 data + p 2 hashCode + p 0 path +c net/minecraft/class_7400 net/minecraft/world/gen/stateprovider/PredicatedStateProvider + f Lcom/mojang/serialization/Codec; field_38870 CODEC + f Lnet/minecraft/class_4651; comp_725 fallback + f Ljava/util/List; comp_726 rules + m (Lnet/minecraft/class_4651;)Lnet/minecraft/class_7400; method_43314 of + p 0 stateProvider + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_7400; method_43312 of + p 0 block + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_43311 getBlockState + p 2 random + p 1 world + p 3 pos + m ()Ljava/util/List; comp_726 rules + m ()Lnet/minecraft/class_4651; comp_725 fallback + m (Lnet/minecraft/class_4651;Ljava/util/List;)V + p 1 fallback + p 2 rules +c net/minecraft/class_7400$class_7401 net/minecraft/world/gen/stateprovider/PredicatedStateProvider$Rule + f Lcom/mojang/serialization/Codec; field_38871 CODEC + f Lnet/minecraft/class_6646; comp_727 ifTrue + f Lnet/minecraft/class_4651; comp_728 then + m ()Lnet/minecraft/class_4651; comp_728 then + m ()Lnet/minecraft/class_6646; comp_727 ifTrue + m (Lnet/minecraft/class_6646;Lnet/minecraft/class_4651;)V + p 1 ifTrue + p 2 then +c net/minecraft/class_8731 net/minecraft/unused/packageinfo/PackageInfo8731 +c net/minecraft/class_91 net/minecraft/loot/entry/TagEntry + f Lnet/minecraft/class_6862; field_1005 name + f Z field_1006 expand + f Lcom/mojang/serialization/MapCodec; field_45805 CODEC + m (Lnet/minecraft/class_91;)Ljava/lang/Boolean; method_53295 method_53295 + p 0 entry + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_85$class_86; method_445 expandBuilder + p 0 name + m (Lnet/minecraft/class_6862;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/class_85; method_444 method_444 + p 1 weight + p 3 conditions + p 2 quality + p 4 functions + m (Lnet/minecraft/class_91;)Lnet/minecraft/class_6862; method_53296 method_53296 + p 0 entry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53297 method_53297 + p 0 instance + m (Lnet/minecraft/class_6862;ZIILjava/util/List;Ljava/util/List;)V + p 5 conditions + p 6 functions + p 1 name + p 2 expand + p 3 weight + p 4 quality + m (Lnet/minecraft/class_47;Ljava/util/function/Consumer;)Z method_447 grow + p 1 context + p 2 lootChoiceExpander + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_85$class_86; method_35517 builder + p 0 name + m (Ljava/util/function/Consumer;Lnet/minecraft/class_6880;)V method_449 method_449 + p 1 entry + m (Lnet/minecraft/class_6862;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/class_85; method_35518 method_35518 + p 4 functions + p 3 conditions + p 2 quality + p 1 weight +c net/minecraft/class_8732 net/minecraft/network/listener/ClientConfigurationPacketListener + m (Lnet/minecraft/class_9250;)V method_57045 onSelectKnownPacks + p 1 packet + m (Lnet/minecraft/class_7832;)V method_52796 onFeatures + p 1 packet + m (Lnet/minecraft/class_8733;)V method_52794 onReady + p 1 packet + m (Lnet/minecraft/class_8734;)V method_52795 onDynamicRegistries + p 1 packet + m (Lnet/minecraft/class_11751;)V method_73257 onCodeOfConduct + p 1 packet + m (Lnet/minecraft/class_9448;)V method_58577 onResetChat + p 1 packet +c net/minecraft/class_12098 net/minecraft/command/permission/Permissions + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_75038 registerAndGetDefault + p 0 registry +c net/minecraft/class_12097 net/minecraft/command/permission/PermissionSource + m ()Lnet/minecraft/class_12096; method_75037 getPermissions +c net/minecraft/class_12096 net/minecraft/command/permission/PermissionPredicate + f Lnet/minecraft/class_12096; field_63207 NONE + f Lnet/minecraft/class_12096; field_63208 ALL + m (Lnet/minecraft/class_12087;)Z method_75036 method_75036 + p 0 perm + m (Lnet/minecraft/class_12096;)Lnet/minecraft/class_12096; method_75034 or + p 1 other + m (Lnet/minecraft/class_12087;)Z method_75033 method_75033 + p 0 perm + m (Lnet/minecraft/class_12087;)Z hasPermission hasPermission + p 1 perm +c net/minecraft/class_12095 net/minecraft/command/permission/PermissionSourcePredicate + f Lnet/minecraft/class_12090; comp_4945 test + m (Lnet/minecraft/class_12097;)Z method_75032 test + m (Ljava/lang/Object;)Z test test + p 1 source + m ()Lnet/minecraft/class_12090; comp_4945 test + m (Lnet/minecraft/class_12090;)V + p 1 test +c net/minecraft/class_12099 net/minecraft/command/DefaultPermissions + f Lnet/minecraft/class_12087; field_63213 ENTITY_SELECTORS + f Lnet/minecraft/class_12087; field_63211 ADMINS + f Lnet/minecraft/class_12087; field_63212 OWNERS + f Lnet/minecraft/class_12087; field_63210 GAMEMASTERS + f Lnet/minecraft/class_12087; field_63209 MODERATORS +c net/minecraft/class_759 net/minecraft/client/render/item/HeldItemRenderer + f F field_32715 ARM_TRANSLATE_X + f F field_32747 EAT_OR_DRINK_Y_ANGLE_MULTIPLIER + f F field_32739 EQUIP_OFFSET_TRANSLATE_X + f Lnet/minecraft/class_898; field_4046 entityRenderDispatcher + f F field_32719 FIRST_PERSON_MAP_FIRST_SCALE + f Lnet/minecraft/class_1799; field_4048 offHand + f F field_4052 equipProgressOffHand + f F field_32723 FIRST_PERSON_MAP_SECOND_SCALE + f F field_32714 ARM_Z_ANGLE_MULTIPLIER + f F field_32758 ARM_HOLDING_ITEM_SECOND_Y_ANGLE_MULTIPLIER + f Lnet/minecraft/class_1921; field_21807 MAP_BACKGROUND + f Lnet/minecraft/class_1799; field_4047 mainHand + f Lnet/minecraft/class_10090; field_53067 mapRenderState + f F field_4043 equipProgressMainHand + f Lnet/minecraft/class_10442; field_55548 itemModelManager + f F field_32689 ARM_HOLDING_ITEM_FIRST_Z_ANGLE_MULTIPLIER + f F field_32722 FIRST_PERSON_MAP_TRANSLATE_Z + f I field_32702 ARM_HOLDING_ITEM_SECOND_Z_ANGLE_MULTIPLIER + f F field_4051 lastEquipProgressOffHand + f F field_32746 EAT_OR_DRINK_X_ANGLE_MULTIPLIER + f F field_32717 ARM_TRANSLATE_Z + f Lnet/minecraft/class_1921; field_21808 MAP_BACKGROUND_CHECKERBOARD + f I field_32701 ARM_HOLDING_ITEM_THIRD_Y_ANGLE_MULTIPLIER + f F field_32741 EQUIP_OFFSET_TRANSLATE_Z + f F field_32721 FIRST_PERSON_MAP_TRANSLATE_Y + f F field_32713 ARM_Y_ANGLE_MULTIPLIER + f F field_32748 EAT_OR_DRINK_Z_ANGLE_MULTIPLIER + f F field_32716 ARM_TRANSLATE_Y + f F field_4053 lastEquipProgressMainHand + f Lnet/minecraft/class_310; field_4050 client + f F field_32740 EQUIP_OFFSET_TRANSLATE_Y + f F field_32720 FIRST_PERSON_MAP_TRANSLATE_X + f I field_32700 ARM_HOLDING_ITEM_X_ANGLE_MULTIPLIER + f F field_32699 ARM_HOLDING_ITEM_TRANSLATE_X + f F field_32712 ARM_X_ANGLE_MULTIPLIER + m (Lnet/minecraft/class_746;)Lnet/minecraft/class_759$class_5773; method_33303 getHandRenderType + p 0 player + m (FLnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_746;I)V method_22976 renderItem + p 2 matrices + p 4 player + p 5 light + p 1 tickProgress + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;Lnet/minecraft/class_811;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;I)V method_3233 renderItem + p 3 renderMode + p 4 matrices + p 6 light + p 1 entity + p 2 stack + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IFFF)V method_3231 renderMapInBothHands + p 3 light + p 1 matrices + p 6 swingProgress + p 4 pitch + p 5 equipProgress + m (Lnet/minecraft/class_1268;)V method_3215 resetEquipProgress + p 1 hand + m (Lnet/minecraft/class_310;Lnet/minecraft/class_898;Lnet/minecraft/class_10442;)V + p 1 client + p 2 entityRenderDispatcher + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_65910 shouldSkipHandAnimationOnSwap + p 1 from + p 2 to + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IFFLnet/minecraft/class_1306;)V method_3219 renderArmHoldingItem + p 1 matrices + p 3 light + p 2 queue + p 5 swingProgress + p 4 equipProgress + p 6 arm + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_1306;F)V method_3224 applyEquipOffset + p 3 equipProgress + p 1 matrices + p 2 arm + m (Lnet/minecraft/class_4587;FLnet/minecraft/class_1306;Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;)V method_3218 applyEatOrDrinkTransformation + p 5 player + p 4 stack + p 3 arm + p 2 tickProgress + p 1 matrices + m (Lnet/minecraft/class_742;FFLnet/minecraft/class_1268;FLnet/minecraft/class_1799;FLnet/minecraft/class_4587;Lnet/minecraft/class_11659;I)V method_3228 renderFirstPersonItem + p 5 swingProgress + p 4 hand + p 3 pitch + p 2 tickProgress + p 1 player + p 10 light + p 8 matrices + p 7 equipProgress + p 6 item + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_1306;F)V method_3217 applySwingOffset + p 3 swingProgress + p 1 matrices + p 2 arm + m (FLnet/minecraft/class_4587;ILnet/minecraft/class_1306;)V method_65816 swingArm + p 1 swingProgress + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_1306;)V method_3216 renderArm + p 3 light + p 4 arm + p 1 matrices + m (F)F method_3227 getMapAngle + p 1 tickProgress + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_1799;)V method_3223 renderFirstPersonMap + p 3 swingProgress + p 4 stack + p 1 matrices + p 2 queue + m (Lnet/minecraft/class_746;)Lnet/minecraft/class_759$class_5773; method_33304 getUsingItemHandRenderType + p 0 player + m (Lnet/minecraft/class_1799;)Z method_33302 isChargedCrossbow + p 0 stack + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IFLnet/minecraft/class_1306;FLnet/minecraft/class_1799;)V method_3222 renderMapInOneHand + p 1 matrices + p 3 light + p 4 equipProgress + p 5 arm + p 6 swingProgress + p 7 stack + m (Lnet/minecraft/class_4587;FLnet/minecraft/class_1306;Lnet/minecraft/class_1657;)V method_49340 applyBrushTransformation + p 3 arm + p 2 tickProgress + p 1 matrices + m (ILnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_73476 method_73476 + p 2 vertexConsumer + p 1 matricesEntry + m ()V method_3220 updateHeldItems +c net/minecraft/class_759$class_5773 net/minecraft/client/render/item/HeldItemRenderer$HandRenderType + f Z field_28388 renderOffHand + f Z field_28387 renderMainHand + f Lnet/minecraft/class_759$class_5773; field_28385 RENDER_MAIN_HAND_ONLY + f Lnet/minecraft/class_759$class_5773; field_28386 RENDER_OFF_HAND_ONLY + f Lnet/minecraft/class_759$class_5773; field_28384 RENDER_BOTH_HANDS + m (Lnet/minecraft/class_1268;)Lnet/minecraft/class_759$class_5773; method_33305 shouldOnlyRender + p 0 hand + m (Ljava/lang/String;IZZ)V + p 3 renderMainHand + p 4 renderOffHand +c net/minecraft/class_8740 net/minecraft/network/listener/ServerQueryPingPacketListener + m (Lnet/minecraft/class_2935;)V method_12697 onQueryPing + c Handles a packet from client to query the "ping" (connection latency).\nThis is different from {@link net.minecraft.network.packet.s2c.common.CommonPingS2CPacket},\nwhich can be sent by the server to request acknowledgment. + p 1 packet +c net/minecraft/class_776 net/minecraft/client/render/block/BlockRenderManager + f Lnet/minecraft/class_775; field_4167 fluidRenderer + f Lnet/minecraft/class_773; field_4168 models + f Lnet/minecraft/class_11701; field_61777 spriteHolder + f Lnet/minecraft/class_5819; field_4169 random + f Lnet/minecraft/class_778; field_4170 blockModelRenderer + f Ljava/util/List; field_57937 parts + f Lnet/minecraft/class_324; field_20987 blockColors + m ()Lnet/minecraft/class_773; method_3351 getModels + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_1087; method_3349 getModel + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_1920;Lnet/minecraft/class_4587;Lnet/minecraft/class_4588;ZLjava/util/List;)V method_3355 renderBlock + p 2 pos + p 1 state + p 4 matrices + p 3 world + p 6 cull + p 5 vertexConsumer + p 7 parts + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_1920;Lnet/minecraft/class_4587;Lnet/minecraft/class_4588;)V method_23071 renderDamage + p 3 world + p 4 matrices + p 5 vertexConsumer + p 1 state + p 2 pos + m ()Lnet/minecraft/class_778; method_3350 getModelRenderer + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1920;Lnet/minecraft/class_4588;Lnet/minecraft/class_2680;Lnet/minecraft/class_3610;)V method_3352 renderFluid + p 5 fluidState + p 4 blockState + p 3 vertexConsumer + p 2 world + p 1 pos + m (Lnet/minecraft/class_773;Lnet/minecraft/class_11701;Lnet/minecraft/class_324;)V + p 1 models + p 2 spriteHolder + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4587;Lnet/minecraft/class_4597;II)V method_3353 renderBlockAsEntity + p 4 light + p 5 overlay + p 1 state + p 2 matrices + p 3 vertexConsumers +c net/minecraft/class_775 net/minecraft/client/render/block/FluidRenderer + f Lnet/minecraft/class_1058; field_4164 waterOverlaySprite + f F field_32781 FLUID_HEIGHT + m ([FF)V method_40080 addHeight + p 2 height + p 1 weightedAverageHeight + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_29709 isOppositeSideCovered + p 0 state + p 1 side + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_3611;Lnet/minecraft/class_2338;)F method_40078 getFluidHeight + p 2 fluid + p 3 pos + p 1 world + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;Lnet/minecraft/class_4588;Lnet/minecraft/class_2680;Lnet/minecraft/class_3610;)V method_3347 render + p 4 blockState + p 5 fluidState + p 2 pos + p 3 vertexConsumer + p 1 world + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_3611;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3610;)F method_40079 getFluidHeight + p 5 fluidState + p 4 blockState + p 3 pos + p 2 fluid + p 1 world + m (Lnet/minecraft/class_3610;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;Lnet/minecraft/class_3610;)Z method_29708 shouldRenderSide + p 3 fluidFromSide + p 2 side + p 1 state + p 0 fluid + m (Lnet/minecraft/class_2350;FLnet/minecraft/class_2680;)Z method_29710 isSideCovered + p 2 state + p 1 height + p 0 side + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;)I method_3343 getLight + p 2 pos + p 1 world + m (Lnet/minecraft/class_2350;FLnet/minecraft/class_2680;)Z method_3344 shouldSkipRendering + p 2 state + p 1 height + p 0 side + m (Lnet/minecraft/class_4588;FFFFFFFFI)V method_23072 vertex + p 10 light + p 8 u + p 9 v + p 6 green + p 7 blue + p 4 z + p 5 red + p 2 x + p 3 y + p 1 vertexConsumer + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_3611;FFFLnet/minecraft/class_2338;)F method_40077 calculateFluidHeight + p 5 eastWestHeight + p 6 pos + p 3 originHeight + p 4 northSouthHeight + p 1 world + p 2 fluid + m (Lnet/minecraft/class_3610;Lnet/minecraft/class_3610;)Z method_3348 isSameFluid + p 0 a + p 1 b +c net/minecraft/class_773 net/minecraft/client/render/block/BlockModels + f Lnet/minecraft/class_1092; field_4163 modelManager + f Ljava/util/Map; field_4162 models + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_1087; method_3335 getModel + p 1 state + m (Ljava/util/Map;)V method_45784 setModels + p 1 models + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_1058; method_3339 getModelParticleSprite + p 1 state + m ()Lnet/minecraft/class_1092; method_3333 getModelManager + m (Lnet/minecraft/class_1092;)V + p 1 modelManager +c net/minecraft/class_778 net/minecraft/client/render/block/BlockModelRenderer + f Lnet/minecraft/class_324; field_4178 colors + f Ljava/lang/ThreadLocal; field_4179 BRIGHTNESS_CACHE + f [Lnet/minecraft/class_2350; field_27743 DIRECTIONS + f I field_32784 BRIGHTNESS_CACHE_MAX_SIZE + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;FFFLjava/util/List;II)V method_3365 renderQuads + p 2 red + p 3 green + p 0 entry + p 1 vertexConsumer + p 6 light + p 7 overlay + p 4 blue + p 5 quads + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_777;Lnet/minecraft/class_778$class_10931;)V method_3364 getQuadDimensions + p 0 world + p 2 pos + p 1 state + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;Lnet/minecraft/class_1087;FFFII)V method_3367 render + p 5 blue + p 6 light + p 7 overlay + p 1 vertexConsumer + p 2 model + p 3 red + p 4 green + p 0 entry + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_4587;Lnet/minecraft/class_4588;Ljava/util/List;Lnet/minecraft/class_778$class_780;I)V method_3363 renderQuadsSmooth + p 8 overlay + p 7 ambientOcclusionCalculator + p 6 quads + p 5 vertexConsumer + p 4 matrices + p 3 pos + p 2 state + p 1 world + m ()V method_20544 enableBrightnessCache + m ()V method_20545 disableBrightnessCache + m (Lnet/minecraft/class_1920;Ljava/util/List;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_4587;Lnet/minecraft/class_4588;ZI)V method_3373 renderFlat + p 8 overlay + p 6 vertexConsumer + p 7 cull + p 4 pos + p 5 matrices + p 2 parts + p 3 state + p 1 world + m (Lnet/minecraft/class_1920;Ljava/util/List;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_4587;Lnet/minecraft/class_4588;ZI)V method_3374 render + p 7 cull + p 8 overlay + p 5 matrices + p 6 vertexConsumer + p 3 state + p 4 pos + p 1 world + p 2 parts + m (Lnet/minecraft/class_1920;Ljava/util/List;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_4587;Lnet/minecraft/class_4588;ZI)V method_3361 renderSmooth + p 6 vertexConsumer + p 5 matrices + p 8 overlay + p 7 cull + p 2 parts + p 1 world + p 4 pos + p 3 state + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_4588;Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_777;Lnet/minecraft/class_778$class_10931;I)V method_23073 renderQuad + p 8 light + p 4 vertexConsumer + p 5 matrixEntry + p 6 quad + p 7 lightmap + p 1 world + p 2 state + p 3 pos + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2680;ZLnet/minecraft/class_2350;Lnet/minecraft/class_2338;)Z method_68826 shouldDrawFace + p 1 state + p 2 cull + p 3 side + p 4 pos + p 0 world + m (Lnet/minecraft/class_324;)V + p 1 colors + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;IIZLnet/minecraft/class_4587;Lnet/minecraft/class_4588;Ljava/util/List;Lnet/minecraft/class_778$class_10931;)V method_3370 renderQuadsFlat + p 4 light + p 3 pos + p 2 state + p 1 world + p 8 vertexConsumer + p 7 matrices + p 6 useWorldLight + p 5 overlay + p 10 lightmap + p 9 quads +c net/minecraft/class_778$class_782 net/minecraft/client/render/block/BlockModelRenderer$NeighborOrientation + f I field_58167 SIZE + f I field_58168 index + f Lnet/minecraft/class_778$class_782; field_4221 FLIP_SOUTH + f Lnet/minecraft/class_778$class_782; field_4214 FLIP_EAST + f Lnet/minecraft/class_778$class_782; field_4213 SOUTH + f Lnet/minecraft/class_778$class_782; field_4217 FLIP_UP + f Lnet/minecraft/class_778$class_782; field_4215 WEST + f Lnet/minecraft/class_778$class_782; field_4216 FLIP_WEST + f Lnet/minecraft/class_778$class_782; field_4210 DOWN + f Lnet/minecraft/class_778$class_782; field_4212 UP + f Lnet/minecraft/class_778$class_782; field_4211 NORTH + f Lnet/minecraft/class_778$class_782; field_4219 EAST + f Lnet/minecraft/class_778$class_782; field_4218 FLIP_NORTH + f Lnet/minecraft/class_778$class_782; field_4220 FLIP_DOWN + m (Ljava/lang/String;II)V + p 3 index +c net/minecraft/class_778$class_781 net/minecraft/client/render/block/BlockModelRenderer$Translation + f I field_4203 firstCorner + f [Lnet/minecraft/class_778$class_781; field_4202 VALUES + f I field_4201 secondCorner + f I field_4209 fourthCorner + f I field_4198 thirdCorner + f Lnet/minecraft/class_778$class_781; field_4200 UP + f Lnet/minecraft/class_778$class_781; field_4206 WEST + f Lnet/minecraft/class_778$class_781; field_4204 NORTH + f Lnet/minecraft/class_778$class_781; field_4205 SOUTH + f Lnet/minecraft/class_778$class_781; field_4207 EAST + f Lnet/minecraft/class_778$class_781; field_4199 DOWN + m (Ljava/lang/String;IIIII)V + p 6 fourthCorner + p 5 thirdCorner + p 4 secondCorner + p 3 firstCorner + m ([Lnet/minecraft/class_778$class_781;)V method_3390 method_3390 + p 0 values + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_778$class_781; method_3394 getTranslations + p 0 direction +c net/minecraft/class_778$class_780 net/minecraft/client/render/block/BlockModelRenderer$AmbientOcclusionCalculator + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Z)V method_3388 apply + p 3 pos + p 4 direction + p 1 world + p 2 state + m (IIII)I method_3386 getAmbientOcclusionBrightness + m (IIIIFFFF)I method_3389 getBrightness +c net/minecraft/class_778$class_10931 net/minecraft/client/render/block/BlockModelRenderer$LightmapCache + f [I field_58163 is + f I field_58164 lastTintIndex + f I field_58165 colorOfLastTintIndex + f Lnet/minecraft/class_2338$class_2339; field_58159 pos + f [F field_58162 fs + f Lnet/minecraft/class_778$class_4303; field_58166 brightnessCache +c net/minecraft/class_778$class_779 net/minecraft/client/render/block/BlockModelRenderer$NeighborData + f Z field_4189 nonCubicWeight + f [Lnet/minecraft/class_778$class_779; field_4190 VALUES + f [Lnet/minecraft/class_2350; field_4191 faces + f Lnet/minecraft/class_778$class_779; field_4184 SOUTH + f Lnet/minecraft/class_778$class_779; field_4187 WEST + f Lnet/minecraft/class_778$class_779; field_4186 EAST + f Lnet/minecraft/class_778$class_779; field_4181 DOWN + f Lnet/minecraft/class_778$class_779; field_4183 NORTH + f Lnet/minecraft/class_778$class_779; field_4182 UP + m (Ljava/lang/String;I[Lnet/minecraft/class_2350;FZ[Lnet/minecraft/class_778$class_782;[Lnet/minecraft/class_778$class_782;[Lnet/minecraft/class_778$class_782;[Lnet/minecraft/class_778$class_782;)V + p 5 nonCubicWeight + p 3 faces + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_778$class_779; method_3378 getData + p 0 direction + m ([Lnet/minecraft/class_778$class_779;)V method_3383 method_3383 + p 0 values +c net/minecraft/class_778$class_4303 net/minecraft/client/render/block/BlockModelRenderer$BrightnessCache + f Lnet/minecraft/class_761$class_10948; field_58201 brightnessCache + f Z field_19320 enabled + f Lit/unimi/dsi/fastutil/longs/Long2FloatLinkedOpenHashMap; field_19322 floatCache + f Lit/unimi/dsi/fastutil/longs/Long2IntLinkedOpenHashMap; field_19321 intCache + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;)I method_20549 getInt + p 2 world + p 1 state + p 3 pos + m ()V method_20548 enable + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;)I method_68891 method_68891 + p 1 world + p 2 pos + m ()V method_20550 disable + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;)F method_20551 getFloat + p 3 pos + p 2 blockView + p 1 state +c net/minecraft/class_778$class_4303$1 net/minecraft/client/render/block/BlockModelRenderer$BrightnessCache$1 + m (I)V rehash rehash + p 1 newN +c net/minecraft/class_778$class_4303$2 net/minecraft/client/render/block/BlockModelRenderer$BrightnessCache$2 + m (I)V rehash rehash + p 1 newN +c net/minecraft/class_777 net/minecraft/client/render/model/BakedQuad + f Lnet/minecraft/class_2350; comp_3723 face + f I field_64572 NUM_VERTICES + f I comp_3722 tintIndex + f I comp_3726 lightEmission + f Z comp_3725 shade + f Lnet/minecraft/class_1058; comp_3724 sprite + f J comp_5244 packedUV2 + f J comp_5245 packedUV3 + f J comp_5242 packedUV0 + f J comp_5243 packedUV1 + f Lorg/joml/Vector3fc; comp_5239 position1 + f Lorg/joml/Vector3fc; comp_5238 position0 + f Lorg/joml/Vector3fc; comp_5241 position3 + f Lorg/joml/Vector3fc; comp_5240 position2 + m (I)J method_76649 getTexcoords + p 1 index + m (I)Lorg/joml/Vector3fc; method_76648 getPosition + p 1 index + m ()Z method_3360 hasTint + m ()Lnet/minecraft/class_2350; comp_3723 face + m ()I comp_3722 tintIndex + m ()Z comp_3725 shade + m ()I comp_3726 lightEmission + m ()Lnet/minecraft/class_1058; comp_3724 sprite + m ()Lorg/joml/Vector3fc; comp_5240 position2 + m ()Lorg/joml/Vector3fc; comp_5241 position3 + m ()Lorg/joml/Vector3fc; comp_5238 position0 + m ()Lorg/joml/Vector3fc; comp_5239 position1 + m ()J comp_5245 packedUV3 + m ()J comp_5243 packedUV1 + m ()J comp_5244 packedUV2 + m ()J comp_5242 packedUV0 + m (Lorg/joml/Vector3fc;Lorg/joml/Vector3fc;Lorg/joml/Vector3fc;Lorg/joml/Vector3fc;JJJJILnet/minecraft/class_2350;Lnet/minecraft/class_1058;ZI)V + p 1 position0 + p 2 position1 + p 3 position2 + p 4 position3 + p 5 packedUV0 + p 7 packedUV1 + p 9 packedUV2 + p 11 packedUV3 + p 13 tintIndex + p 14 face + p 15 sprite + p 16 shade + p 17 lightEmission +c net/minecraft/class_7417 net/minecraft/text/TextContent + c Represents type-specific content of text. It is stored in each tree node\nin a text tree structure. Its implementations are immutable. + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;I)Lnet/minecraft/class_5250; method_10890 parse + c Parses this content into a basic mutable text without custom style or\nsiblings. The resulting text may or may not have this content. + p 1 source + p 2 sender + p 3 depth + m (Lnet/minecraft/class_5348$class_5246;Lnet/minecraft/class_2583;)Ljava/util/Optional; method_27660 visit + c Visits this content. Returns a value if the visitor terminates amid\nthe visit, or {@code Optional.empty()} if it proceeds.\n\n@return {@code Optional.empty()} if the visit finished, or a terminating\nresult from the {@code visitor}\n@see Text#visit(StringVisitable.StyledVisitor, Style) + p 2 style + p 1 visitor + m ()Lcom/mojang/serialization/MapCodec; method_74063 getCodec + m (Lnet/minecraft/class_5348$class_5245;)Ljava/util/Optional; method_27659 visit + c Visits this content. Returns a value if the visitor terminates amid\nthe visit, or {@code Optional.empty()} if it proceeds.\n\n@return {@code Optional.empty()} if the visit finished, or a terminating\nresult from the {@code visitor}\n@see Text#visit(StringVisitable.Visitor) + p 1 visitor +c net/minecraft/class_7416 net/minecraft/data/tag/vanilla/VanillaPaintingVariantTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registriesFuture +c net/minecraft/class_12083 net/minecraft/server/command/StopwatchCommand + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_63168 DOES_NOT_EXIST_EXCEPTION + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; field_63169 STOPWATCH_SUGGESTION_PROVIDER + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_63170 ALREADY_EXISTS_EXCEPTION + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_74983 method_74983 + p 0 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_74987 method_74987 + p 0 name + m (Lcom/mojang/brigadier/context/CommandContext;)I method_74989 method_74989 + p 0 context + m (Lnet/minecraft/class_12109;)Lnet/minecraft/class_12109; method_74978 method_74978 + p 0 stopwatch + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_74981 method_74981 + p 0 context + p 1 builder + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2960;)I method_74982 executeCreate + p 0 source + p 1 id + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_74979 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_74980 method_74980 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_74991 method_74991 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2960;)I method_74990 executeRestart + p 0 source + p 1 id + m (Lcom/mojang/brigadier/context/CommandContext;)I method_75569 method_75569 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2960;)I method_74992 executeRemove + p 0 source + p 1 id + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2960;D)I method_74986 executeQuery + p 1 id + p 0 source + p 2 scale + m (Lcom/mojang/brigadier/context/CommandContext;)I method_75570 method_75570 + p 0 context +c net/minecraft/class_8744 net/minecraft/datafixer/fix/StatusEffectFix + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_45725 OLD_TO_NEW_IDS + f Ljava/util/Set; field_45726 POTION_ITEM_IDS + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_53104 fixEffectsKey + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_53106 fixSuspiciousStewEffects + p 0 tagTyped + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_53085 renameKeyAndUpdateId + p 0 dynamic + p 1 oldKey + p 3 newKey + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_53100 fixStewEffectsKey + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_53095 fixSuspiciousStewEffect + p 0 effectDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_53083 fixSuspiciousStewEffect + p 1 effectDynamicOut + p 0 effectDynamicIn + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53079 method_53079 + p 2 itemStackTyped + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53099 method_53099 + p 1 entityTyped + m (Ljava/lang/Number;)Ljava/lang/String; method_53091 method_53091 + p 0 oldId + m ()Lcom/mojang/datafixers/TypeRewriteRule; method_53078 makeBlockEntitiesRule + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_53107 method_53107 + p 0 tagDynamic + m ()Lcom/mojang/datafixers/TypeRewriteRule; method_53098 makeItemStacksRule + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53094 method_53094 + p 0 tagTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_53103 fixCustomPotionEffectsKey + p 0 dynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53080 method_53080 + p 0 tagTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_53105 fixActiveEffectsKey + p 0 dynamic + m ()Lcom/mojang/datafixers/TypeRewriteRule; method_53713 makePlayersRule + m (Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Lcom/mojang/serialization/Dynamic; method_53089 method_53089 + p 1 effects + m (Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Lcom/mojang/serialization/Dynamic; method_53097 method_53097 + p 1 oldEffects + m (Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53092 method_53092 + p 1 matchingEntityTyped + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_53082 fixEffect + p 0 effectDynamic + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_53090 method_53090 + p 0 idMap + m ()Lcom/mojang/datafixers/TypeRewriteRule; method_53093 makeEntitiesRule + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/util/Optional; method_53084 updateId + p 0 dynamic + p 1 idKey + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_53096 renameKeyAndUpdateId + p 2 newKey + p 1 oldKey + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_53101 fixEffectList + p 1 oldEffectListKey + p 0 dynamic + p 2 newEffectListKey + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_53108 method_53108 + p 0 dynamic + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; method_53081 fixEntityEffects + p 3 entityId + p 4 effectsFixer + p 1 entityTyped + p 2 entityTypeReference +c net/minecraft/class_7413 net/minecraft/client/gui/screen/LoadingDisplay + f J field_38993 INTERVAL + f [Ljava/lang/String; field_38992 TEXTS + m (J)Ljava/lang/String; method_43449 get + p 0 tick +c net/minecraft/class_8743 net/minecraft/util/profiler/log/DebugSampleLog + m (J)V method_53066 push + p 1 value + m (JI)V method_56535 push + p 3 column + p 1 value + m ([J)V method_56650 set + p 1 values +c net/minecraft/class_12087 net/minecraft/command/permission/Permission + f Lcom/mojang/serialization/Codec; field_63188 UNABBREVIATED_CODEC + f Lcom/mojang/serialization/Codec; field_63189 CODEC + m (Lnet/minecraft/class_12087;)Lnet/minecraft/class_12087; method_75016 method_75016 + p 0 perm + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_75015 method_75015 + p 0 codec + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_12087; method_75014 method_75014 + p 0 either + m (Lnet/minecraft/class_12087;)Lcom/mojang/datafixers/util/Either; method_75013 method_75013 + p 0 perm + m ()Lcom/mojang/serialization/MapCodec; method_75012 getCodec +c net/minecraft/class_12087$class_12088 net/minecraft/command/permission/Permission$Atom + f Lnet/minecraft/class_2960; comp_4942 id + f Lcom/mojang/serialization/MapCodec; field_63190 CODEC + m (Ljava/lang/String;)Lnet/minecraft/class_12087$class_12088; method_75019 ofVanilla + p 0 path + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75018 method_75018 + p 0 instance + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_12087$class_12088; method_75017 of + p 0 id + m ()Lnet/minecraft/class_2960; comp_4942 id + m (Lnet/minecraft/class_2960;)V + p 1 id +c net/minecraft/class_12087$class_12089 net/minecraft/command/permission/Permission$Level + f Lnet/minecraft/class_12094; comp_4943 level + f Lcom/mojang/serialization/MapCodec; field_63191 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75020 method_75020 + p 0 instance + m ()Lnet/minecraft/class_12094; comp_4943 level + m (Lnet/minecraft/class_12094;)V + p 1 level +c net/minecraft/class_12086 net/minecraft/command/permission/LeveledPermissionPredicate + f Lnet/minecraft/class_12086; field_63185 OWNERS + f Lnet/minecraft/class_12086; field_63184 ADMINS + f Lnet/minecraft/class_12086; field_63183 GAMEMASTERS + f Lnet/minecraft/class_12086; field_63182 MODERATORS + f Lnet/minecraft/class_12086; field_63181 ALL + m (Lnet/minecraft/class_12094;)Lnet/minecraft/class_12086; method_75011 create + p 0 level + m (Lnet/minecraft/class_12094;)Lnet/minecraft/class_12086; method_75010 fromLevel + p 0 level + m ()Lnet/minecraft/class_12094; method_75009 getLevel +c net/minecraft/class_12085 net/minecraft/server/dedicated/management/ActivityNotifier + f Ljava/util/concurrent/atomic/AtomicLong; field_63178 lastUpdated + f Lnet/minecraft/class_11870; field_63180 listener + f Ljava/util/concurrent/atomic/AtomicBoolean; field_63179 rateLimited + f J field_63177 rateLimitMs + m ()V method_75007 notifyListenersWithRateLimit + m ()V method_75008 notifyListenerImpl + m ()V method_75006 notifyListeners + m (Lnet/minecraft/class_11870;I)V + p 2 rateLimitSeconds + p 1 listener +c net/minecraft/class_8739 net/minecraft/network/packet/s2c/play/StartChunkSendS2CPacket + f Lnet/minecraft/class_8739; field_47909 INSTANCE + f Lnet/minecraft/class_9139; field_47910 CODEC + m (Lnet/minecraft/class_2602;)V method_53045 apply +c net/minecraft/class_7408 net/minecraft/entity/decoration/painting/PaintingVariants + f Lnet/minecraft/class_5321; field_38967 FIGHTERS + f Lnet/minecraft/class_5321; field_38968 POINTER + f Lnet/minecraft/class_5321; field_38969 PIGSCENE + f Lnet/minecraft/class_5321; field_38963 STAGE + f Lnet/minecraft/class_5321; field_38964 VOID + f Lnet/minecraft/class_5321; field_38965 SKULL_AND_ROSES + f Lnet/minecraft/class_5321; field_38966 WITHER + f Lnet/minecraft/class_5321; field_38960 GRAHAM + f Lnet/minecraft/class_5321; field_38961 MATCH + f Lnet/minecraft/class_5321; field_38962 BUST + f Lnet/minecraft/class_5321; field_38971 SKELETON + f Lnet/minecraft/class_5321; field_38972 DONKEY_KONG + f Lnet/minecraft/class_5321; field_38970 BURNING_SKULL + f Lnet/minecraft/class_5321; field_38947 KEBAB + f Lnet/minecraft/class_5321; field_38948 AZTEC + f Lnet/minecraft/class_5321; field_38949 ALBAN + f Lnet/minecraft/class_5321; field_38943 EARTH + f Lnet/minecraft/class_5321; field_38944 WIND + f Lnet/minecraft/class_5321; field_38945 WATER + f Lnet/minecraft/class_5321; field_38946 FIRE + f Lnet/minecraft/class_5321; field_38959 WANDERER + f Lnet/minecraft/class_5321; field_38955 COURBET + f Lnet/minecraft/class_5321; field_38956 SEA + f Lnet/minecraft/class_5321; field_38957 SUNSET + f Lnet/minecraft/class_5321; field_38958 CREEBET + f Lnet/minecraft/class_5321; field_38951 BOMB + f Lnet/minecraft/class_5321; field_38952 PLANT + f Lnet/minecraft/class_5321; field_38953 WASTELAND + f Lnet/minecraft/class_5321; field_38954 POOL + f Lnet/minecraft/class_5321; field_38950 AZTEC2 + f Lnet/minecraft/class_5321; field_61065 DENNIS + f Lnet/minecraft/class_5321; field_51598 BAROQUE + f Lnet/minecraft/class_5321; field_51599 HUMBLE + f Lnet/minecraft/class_5321; field_51615 POND + f Lnet/minecraft/class_5321; field_51616 SUNFLOWERS + f Lnet/minecraft/class_5321; field_51617 TIDES + f Lnet/minecraft/class_5321; field_51610 FINDING + f Lnet/minecraft/class_5321; field_51611 LOWMIST + f Lnet/minecraft/class_5321; field_51612 ORB + f Lnet/minecraft/class_5321; field_51614 PASSAGE + f Lnet/minecraft/class_5321; field_51613 OWLEMONS + f Lnet/minecraft/class_5321; field_51603 BACKYARD + f Lnet/minecraft/class_5321; field_51602 UNPACKED + f Lnet/minecraft/class_5321; field_51604 BOUQUET + f Lnet/minecraft/class_5321; field_51605 CAVEBIRD + f Lnet/minecraft/class_5321; field_51606 CHANGING + f Lnet/minecraft/class_5321; field_51600 MEDITATIVE + f Lnet/minecraft/class_5321; field_51601 PRAIRIE_RIDE + f Lnet/minecraft/class_5321; field_51607 COTAN + f Lnet/minecraft/class_5321; field_51608 ENDBOSS + f Lnet/minecraft/class_5321; field_51609 FERN + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_43407 of + p 0 id + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;IIZ)V method_61490 register + p 4 hasAuthor + p 3 height + p 2 width + p 1 key + p 0 registry + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;II)V method_59949 register + p 0 registry + p 1 key + p 2 width + p 3 height + m (Lnet/minecraft/class_7891;)V method_43406 bootstrap + p 0 registry +c net/minecraft/class_7409 net/minecraft/item/DiscFragmentItem + m ()Lnet/minecraft/class_5250; method_43408 getDescription +c net/minecraft/class_785 net/minecraft/client/render/model/json/ModelElement + f I comp_3732 lightEmission + f Lorg/joml/Vector3fc; comp_3728 to + f Lorg/joml/Vector3fc; comp_3727 from + f Lnet/minecraft/class_789; comp_3730 rotation + f Z comp_3731 shade + f Ljava/util/Map; comp_3729 faces + m ()I comp_3732 lightEmission + m ()Lorg/joml/Vector3fc; comp_3728 to + m ()Lorg/joml/Vector3fc; comp_3727 from + m ()Lnet/minecraft/class_789; comp_3730 rotation + m ()Z comp_3731 shade + m (Lorg/joml/Vector3fc;Lorg/joml/Vector3fc;Ljava/util/Map;)V + p 3 faces + p 2 to + p 1 from + m (Lorg/joml/Vector3fc;Lorg/joml/Vector3fc;Ljava/util/Map;Lnet/minecraft/class_789;ZI)V + p 5 shade + p 6 lightEmission + p 3 faces + p 4 rotation + p 1 from + p 2 to + m ()Ljava/util/Map; comp_3729 faces +c net/minecraft/class_785$class_786 net/minecraft/client/render/model/json/ModelElement$Deserializer + f Ljava/lang/String; field_64580 Z_KEY + f Ljava/lang/String; field_64582 RESCALE_KEY + f Ljava/lang/String; field_64581 AXIS_KEY + f Ljava/lang/String; field_64573 SHADE_KEY + f Ljava/lang/String; field_64584 TO_KEY + f Z field_32788 DEFAULT_SHADE + f Ljava/lang/String; field_64583 FACES_KEY + f Ljava/lang/String; field_64575 ROTATION_KEY + f Ljava/lang/String; field_64574 LIGHT_EMISSION_KEY + f Ljava/lang/String; field_64585 FROM_KEY + f Ljava/lang/String; field_64577 ANGLE_KEY + f Ljava/lang/String; field_64576 ORIGIN_KEY + f Ljava/lang/String; field_64579 Y_KEY + f Ljava/lang/String; field_64578 X_KEY + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_2350$class_2351; method_3411 deserializeAxis + p 1 object + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Ljava/lang/Object; deserialize deserialize + p 2 type + p 1 json + p 3 context + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lorg/joml/Vector3f; method_3409 deserializeVec3f + p 1 key + p 0 json + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_789; method_3410 deserializeRotation + p 1 object + m (Ljava/lang/String;)Lnet/minecraft/class_2350; method_3408 getDirection + p 1 name + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/class_785; method_3406 deserialize + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Ljava/util/Map; method_3404 deserializeFaces + p 1 context + p 2 object + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lorg/joml/Vector3f; method_76650 deserializeFromTo + p 1 key + p 0 json + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Ljava/util/Map; method_3412 deserializeFacesValidating + p 1 context + p 2 object +c net/minecraft/class_789 net/minecraft/client/render/model/json/ModelElementRotation + f Z comp_1121 rescale + f Lorg/joml/Vector3fc; comp_1118 origin + f Lorg/joml/Matrix4fc; comp_5069 transform + f Lnet/minecraft/class_789$class_12353; comp_5246 value + m (Lorg/joml/Vector3fc;Lnet/minecraft/class_789$class_12353;Z)V + p 1 origin + p 3 rescale + p 2 value + m (Lnet/minecraft/class_789$class_12353;Z)Lorg/joml/Matrix4f; method_75421 transform + p 1 rescale + p 0 value + m (Lorg/joml/Matrix4fc;Lnet/minecraft/class_2350$class_2351;Lorg/joml/Vector3f;)F method_76651 scale + p 2 vec + p 1 axis + p 0 matrix + m ()Z comp_1121 rescale + m (Lorg/joml/Matrix4fc;)Lorg/joml/Vector3fc; method_75422 scale + p 0 matrix + m ()Lorg/joml/Vector3fc; comp_1118 origin + m ()Lorg/joml/Matrix4fc; comp_5069 transform + m ()Lnet/minecraft/class_789$class_12353; comp_5246 value + m (Lorg/joml/Vector3fc;Lnet/minecraft/class_789$class_12353;ZLorg/joml/Matrix4fc;)V + p 1 origin + p 2 value + p 3 rescale + p 4 transform +c net/minecraft/class_789$class_12352 net/minecraft/client/render/model/json/ModelElementRotation$OfEuler + f F comp_5247 x + f F comp_5249 z + f F comp_5248 y + m ()F comp_5249 z + m ()F comp_5248 y + m ()F comp_5247 x + m (FFF)V + p 1 x + p 2 y + p 3 z +c net/minecraft/class_789$class_12353 net/minecraft/client/render/model/json/ModelElementRotation$RotationValue + m ()Lorg/joml/Matrix4f; method_76652 getMatrix +c net/minecraft/class_789$class_12354 net/minecraft/client/render/model/json/ModelElementRotation$OfAxisAngle + f Lnet/minecraft/class_2350$class_2351; comp_5250 axis + f F comp_5251 angle + m ()F comp_5251 angle + m ()Lnet/minecraft/class_2350$class_2351; comp_5250 axis + m (Lnet/minecraft/class_2350$class_2351;F)V + p 1 axis + p 2 angle +c net/minecraft/class_8711 net/minecraft/network/packet/UnknownCustomPayload + f Lnet/minecraft/class_2960; comp_1678 id + m (ILnet/minecraft/class_2960;Lnet/minecraft/class_2540;)Lnet/minecraft/class_8711; method_56491 method_56491 + p 2 buf + m (Lnet/minecraft/class_2960;I)Lnet/minecraft/class_9139; method_56492 createCodec + p 0 id + p 1 maxBytes + m (Lnet/minecraft/class_8711;Lnet/minecraft/class_2540;)V method_56493 method_56493 + p 0 value + p 1 buf + m ()Lnet/minecraft/class_2960; comp_1678 id + m (Lnet/minecraft/class_2960;)V + p 1 id +c net/minecraft/class_783 net/minecraft/client/render/model/json/ModelElementFace + f Lnet/minecraft/class_2350; comp_2867 cullFace + f I comp_2868 tintIndex + f Ljava/lang/String; comp_2869 textureId + f Lnet/minecraft/class_10821; comp_3734 rotation + f Lnet/minecraft/class_783$class_10800; comp_3733 uvs + m ()Lnet/minecraft/class_2350; comp_2867 cullFace + m (Lnet/minecraft/class_783$class_10800;Lnet/minecraft/class_10821;I)F method_67910 getVValue + p 0 uv + p 1 rotation + p 2 index + m ()I comp_2868 tintIndex + m (Lnet/minecraft/class_2350;ILjava/lang/String;Lnet/minecraft/class_783$class_10800;Lnet/minecraft/class_10821;)V + p 4 textureData + p 2 tintIndex + p 3 textureId + p 1 cullFace + p 5 rotation + m ()Ljava/lang/String; comp_2869 textureId + m (Lnet/minecraft/class_783$class_10800;Lnet/minecraft/class_10821;I)F method_67909 getUValue + p 1 rotation + p 2 index + p 0 uv + m ()Lnet/minecraft/class_10821; comp_3734 rotation + m ()Lnet/minecraft/class_783$class_10800; comp_3733 uvs +c net/minecraft/class_783$class_784 net/minecraft/client/render/model/json/ModelElementFace$Deserializer + f I field_32790 DEFAULT_TINT_INDEX + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_10821; method_67911 getRotation + p 0 json + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_783$class_10800; method_67912 getUV + p 0 json + m (Lcom/google/gson/JsonObject;)I method_3400 deserializeTintIndex + p 0 json + m (Lcom/google/gson/JsonObject;)Ljava/lang/String; method_3399 deserializeTexture + p 0 json + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/class_783; method_3397 deserialize + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Ljava/lang/Object; deserialize deserialize + p 1 functionJson + p 2 unused + p 3 context + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_2350; method_3398 deserializeCullFace + p 0 json +c net/minecraft/class_783$class_10800 net/minecraft/client/render/model/json/ModelElementFace$UV + f F comp_3738 maxV + f F comp_3737 maxU + f F comp_3736 minV + f F comp_3735 minU + m (I)F method_67914 getVVertices + m (I)F method_67913 getUVertices + m ()F comp_3738 maxV + m ()F comp_3737 maxU + m ()F comp_3736 minV + m ()F comp_3735 minU + m (FFFF)V + p 1 minU + p 2 minV + p 3 maxU + p 4 maxV +c net/minecraft/class_8710 net/minecraft/network/packet/CustomPayload + m (Lnet/minecraft/class_8710$class_9155;)Lnet/minecraft/class_2960; method_56486 method_56486 + p 0 type + m ()Lnet/minecraft/class_8710$class_9154; method_56479 getId + m (Ljava/lang/String;)Lnet/minecraft/class_8710$class_9154; method_56483 id + p 0 id + m (Lnet/minecraft/class_9143;Lnet/minecraft/class_9141;)Lnet/minecraft/class_9139; method_56484 codecOf + p 0 encoder + p 1 decoder + m (Lnet/minecraft/class_8710$class_9153;Ljava/util/List;)Lnet/minecraft/class_9139; method_56485 createCodec + p 1 types + p 0 unknownCodecFactory +c net/minecraft/class_8710$1 net/minecraft/network/packet/CustomPayload$1 + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_9139; method_56487 getCodec + p 1 id + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_8710; method_56488 decode + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_8710$class_9154;Lnet/minecraft/class_8710;)V method_56489 encode + p 2 id + p 1 value + p 3 payload + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_8710;)V method_56490 encode +c net/minecraft/class_8710$class_9153 net/minecraft/network/packet/CustomPayload$CodecFactory + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_9139; create create + p 1 id +c net/minecraft/class_8710$class_9154 net/minecraft/network/packet/CustomPayload$Id + f Lnet/minecraft/class_2960; comp_2242 id + m ()Lnet/minecraft/class_2960; comp_2242 id + m (Lnet/minecraft/class_2960;)V + p 1 id +c net/minecraft/class_8710$class_9155 net/minecraft/network/packet/CustomPayload$Type + f Lnet/minecraft/class_8710$class_9154; comp_2243 id + f Lnet/minecraft/class_9139; comp_2244 codec + m ()Lnet/minecraft/class_8710$class_9154; comp_2243 id + m ()Lnet/minecraft/class_9139; comp_2244 codec + m (Lnet/minecraft/class_8710$class_9154;Lnet/minecraft/class_9139;)V + p 1 id + p 2 codec +c net/minecraft/class_8709 net/minecraft/network/packet/BrandCustomPayload + f Lnet/minecraft/class_8710$class_9154; field_48655 ID + f Lnet/minecraft/class_9139; field_48654 CODEC + f Ljava/lang/String; comp_1677 brand + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_56481 write + p 1 buf + m ()Ljava/lang/String; comp_1677 brand + m (Ljava/lang/String;)V + p 1 brand +c net/minecraft/class_8706 net/minecraft/network/listener/ServerCommonPacketListener + m (Lnet/minecraft/class_11411;)V method_71953 onCustomClickAction + p 1 packet + m (Lnet/minecraft/class_6374;)V method_52394 onPong + p 1 packet + m (Lnet/minecraft/class_2827;)V method_52393 onKeepAlive + p 1 packet + m (Lnet/minecraft/class_2817;)V method_52392 onCustomPayload + p 1 packet + m (Lnet/minecraft/class_2803;)V method_12069 onClientOptions + p 1 packet + m (Lnet/minecraft/class_2856;)V method_52395 onResourcePackStatus + p 1 packet +c net/minecraft/class_796 net/minecraft/client/render/model/BakedQuadFactory + f Lorg/joml/Vector3fc; field_60150 CENTER + m (Lnet/minecraft/class_7775$class_12356;Lorg/joml/Vector3fc;Lorg/joml/Vector3fc;Lnet/minecraft/class_783;Lnet/minecraft/class_1058;Lnet/minecraft/class_2350;Lnet/minecraft/class_3665;Lnet/minecraft/class_789;ZI)Lnet/minecraft/class_777; method_3468 bake + p 1 from + p 0 interner + p 9 lightEmission + p 8 shade + p 7 rotation + p 6 settings + p 5 direction + p 4 sprite + p 3 face + p 2 to + m (F)F method_67919 setCenterBack + m (F)F method_67924 setCenterForward + m (ILnet/minecraft/class_753;Lnet/minecraft/class_783$class_10800;Lnet/minecraft/class_10821;Lorg/joml/Matrix4fc;Lorg/joml/Vector3fc;Lorg/joml/Vector3fc;Lnet/minecraft/class_1058;Lnet/minecraft/class_4590;Lnet/minecraft/class_789;[Lorg/joml/Vector3fc;[JLnet/minecraft/class_7775$class_12356;)V method_3461 packVertexData + p 6 to + p 7 sprite + p 8 affineTransformation + p 9 rotation + p 10 positions + p 11 packedUvs + p 12 interner + p 0 corner + p 1 cubeFace + p 2 uv + p 3 axisRotation + p 4 matrix + p 5 from + m (Lorg/joml/Vector3fc;Lorg/joml/Vector3fc;Lnet/minecraft/class_2350;)Lnet/minecraft/class_783$class_10800; method_67921 setDefaultUV + p 2 facing + p 0 from + p 1 to + m ([Lorg/joml/Vector3fc;)Lnet/minecraft/class_2350; method_3467 decodeDirection + p 0 vecs + m (Lorg/joml/Vector3f;)Lnet/minecraft/class_2350; method_76653 getDirection + p 0 vec + m ([Lorg/joml/Vector3fc;[JLnet/minecraft/class_2350;)V method_3462 encodeDirection + m (Lorg/joml/Vector3f;Lorg/joml/Vector3fc;Lorg/joml/Matrix4fc;)V method_3464 transformVertex + p 0 vertex +c net/minecraft/class_790 net/minecraft/client/render/model/json/BlockModelDefinition + f Lorg/slf4j/Logger; field_53162 LOGGER + f Lcom/mojang/serialization/Codec; field_56928 CODEC + f Ljava/util/Optional; comp_3746 multipartModel + f Ljava/util/Optional; comp_3813 simpleModels + m (Lnet/minecraft/class_790;)Lcom/mojang/serialization/DataResult; method_67917 method_67917 + p 0 modelDefinition + m ()Ljava/util/Optional; comp_3746 multipartModel + m (Lnet/minecraft/class_2689;Ljava/util/function/Supplier;Ljava/util/Map;Lnet/minecraft/class_790$class_10888;)V method_68505 method_68505 + p 3 simpleModels + m (Lnet/minecraft/class_2689;Ljava/util/Map;Lnet/minecraft/class_790$class_9982;)V method_68504 method_68504 + p 2 multipartModel + m (Ljava/util/Map;Lnet/minecraft/class_2680;Lnet/minecraft/class_1087$class_9979;)V method_68506 method_68506 + p 1 state + p 2 model + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_2689;Ljava/util/function/Supplier;)Ljava/util/Map; method_62327 load + p 2 idSupplier + p 1 stateManager + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67915 method_67915 + p 0 instance + m ()Ljava/util/Optional; comp_3813 simpleModels + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 simpleModels + p 2 multipartModel +c net/minecraft/class_790$class_10888 net/minecraft/client/render/model/json/BlockModelDefinition$Variants + f Lcom/mojang/serialization/Codec; field_57938 CODEC + f Ljava/util/Map; comp_3814 models + m (Lnet/minecraft/class_2689;Ljava/util/function/BiConsumer;Ljava/util/function/Supplier;Ljava/lang/String;Lnet/minecraft/class_1087$class_10892;)V method_68507 method_68507 + p 3 predicate + p 4 model + m (Lnet/minecraft/class_2689;Ljava/util/function/Supplier;Ljava/util/function/BiConsumer;)V method_68508 load + p 1 stateManager + p 2 idSupplier + p 3 callback + m ()Ljava/util/Map; comp_3814 models + m (Ljava/util/Map;)V + p 1 models +c net/minecraft/class_790$class_9982 net/minecraft/client/render/model/json/BlockModelDefinition$Multipart + f Lcom/mojang/serialization/Codec; field_56951 CODEC + f Ljava/util/List; comp_3052 selectors + m (Lnet/minecraft/class_2689;)Lnet/minecraft/class_10895$class_816; method_62339 toModel + p 1 stateManager + m ()Ljava/util/List; comp_3052 selectors + m (Ljava/util/List;)V + p 1 selectors +c net/minecraft/class_793 net/minecraft/client/render/model/json/JsonUnbakedModel + f Lnet/minecraft/class_1100$class_4751; comp_3740 guiLight + f Lcom/google/gson/Gson; field_4254 GSON + f Lnet/minecraft/class_10419$class_10420; comp_3743 textures + f Lnet/minecraft/class_809; comp_3742 transformations + f Lnet/minecraft/class_10820; comp_3739 geometry + f Ljava/lang/Boolean; comp_3741 ambientOcclusion + f Lnet/minecraft/class_2960; comp_3744 parent + m (Ljava/io/Reader;)Lnet/minecraft/class_793; method_3437 deserialize + p 0 input + m (Lnet/minecraft/class_10820;Lnet/minecraft/class_1100$class_4751;Ljava/lang/Boolean;Lnet/minecraft/class_809;Lnet/minecraft/class_10419$class_10420;Lnet/minecraft/class_2960;)V + p 1 geometry + p 2 guiLight + p 3 ambientOcclusion + p 4 transformations + p 5 textures + p 6 parent +c net/minecraft/class_793$class_795 net/minecraft/client/render/model/json/JsonUnbakedModel$Deserializer + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_10419$class_10420; method_3448 texturesFromJson + p 1 object + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Lnet/minecraft/class_10820; method_3449 elementsFromJson + p 1 context + p 2 json + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/class_793; method_3451 deserialize + m (Lcom/google/gson/JsonObject;)Ljava/lang/String; method_3450 parentFromJson + p 1 json + m (Lcom/google/gson/JsonObject;)Ljava/lang/Boolean; method_3453 ambientOcclusionFromJson + p 1 json + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Ljava/lang/Object; deserialize deserialize + p 2 unused + p 3 ctx + p 1 element +c net/minecraft/class_721 net/minecraft/client/particle/SpitParticle +c net/minecraft/class_721$class_722 net/minecraft/client/particle/SpitParticle$Factory + f Lnet/minecraft/class_4002; field_17876 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3103 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_725 net/minecraft/client/particle/SquidInkParticle + m (Lnet/minecraft/class_638;DDDDDDILnet/minecraft/class_4002;)V + p 15 spriteProvider + p 2 x + p 1 world + p 4 y + p 6 z + p 8 velocityX + p 10 velocityY + p 12 velocityZ + p 14 color +c net/minecraft/class_725$class_726 net/minecraft/client/particle/SquidInkParticle$Factory + f Lnet/minecraft/class_4002; field_17878 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3105 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_725$class_5788 net/minecraft/client/particle/SquidInkParticle$GlowSquidInkFactory + f Lnet/minecraft/class_4002; field_28460 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_33427 createParticle +c net/minecraft/class_723 net/minecraft/client/particle/WaterSuspendParticle +c net/minecraft/class_723$class_4795 net/minecraft/client/particle/WaterSuspendParticle$CrimsonSporeFactory + f Lnet/minecraft/class_4002; field_22238 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_24464 createParticle +c net/minecraft/class_723$class_4796 net/minecraft/client/particle/WaterSuspendParticle$UnderwaterFactory + f Lnet/minecraft/class_4002; field_22239 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_24465 createParticle +c net/minecraft/class_723$class_4797 net/minecraft/client/particle/WaterSuspendParticle$WarpedSporeFactory + f Lnet/minecraft/class_4002; field_22240 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_24466 createParticle +c net/minecraft/class_723$class_5877 net/minecraft/client/particle/WaterSuspendParticle$SporeBlossomAirFactory + f Lnet/minecraft/class_4002; field_29073 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_34024 createParticle +c net/minecraft/class_12052 net/minecraft/client/sound/SoundPreviewer + f Lnet/minecraft/class_1113; field_62992 currentSoundPreview + f Lnet/minecraft/class_3419; field_62993 category + m (Lnet/minecraft/class_1144;Lnet/minecraft/class_3419;)V method_74839 stopPreviewOfOtherCategory + p 1 category + p 0 manager + m (Lnet/minecraft/class_1144;)Z method_74838 canPlaySound + p 0 manager + m (Lnet/minecraft/class_1144;Lnet/minecraft/class_3419;F)V method_74840 preview + p 1 category + p 2 volume + p 0 manager +c net/minecraft/class_12058 net/minecraft/server/dedicated/management/UriUtil + f Lcom/mojang/serialization/Codec; field_63005 URI_CODEC + m (Ljava/lang/String;)Ljava/net/URI; method_74850 createSchemasUri + p 0 id + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_74851 method_74851 + p 0 uri +c net/minecraft/class_717 net/minecraft/client/particle/FireSmokeParticle + m (Lnet/minecraft/class_638;DDDDDDFLnet/minecraft/class_4002;)V + p 1 world + p 2 x + p 15 spriteProvider + p 6 z + p 4 y + p 10 velocityY + p 8 velocityX + p 14 scaleMultiplier + p 12 velocityZ +c net/minecraft/class_717$class_718 net/minecraft/client/particle/FireSmokeParticle$Factory + f Lnet/minecraft/class_4002; field_17869 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3101 createParticle +c net/minecraft/class_12059 net/minecraft/unused/packageinfo/PackageInfo12059 +c net/minecraft/class_719 net/minecraft/client/particle/WaterSplashParticle +c net/minecraft/class_719$class_720 net/minecraft/client/particle/WaterSplashParticle$SplashFactory + f Lnet/minecraft/class_4002; field_17877 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3102 createParticle +c net/minecraft/class_736 net/minecraft/client/particle/CurrentDownParticle + f F field_3897 accelerationAngle + c The angle, in radians, of the horizontal acceleration of the particle. +c net/minecraft/class_736$class_737 net/minecraft/client/particle/CurrentDownParticle$Factory + f Lnet/minecraft/class_4002; field_17890 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3114 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_734 net/minecraft/client/particle/TotemParticle + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_4002;)V + p 8 velocityX + p 10 velocityY + p 12 velocityZ + p 14 spriteProvider + p 1 world + p 2 x + p 4 y + p 6 z +c net/minecraft/class_734$class_735 net/minecraft/client/particle/TotemParticle$Factory + f Lnet/minecraft/class_4002; field_17887 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3113 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_733 net/minecraft/client/particle/EmitterParticle + f I field_3895 maxEmitterAge + f I field_3896 emitterAge + f Lnet/minecraft/class_1297; field_3894 entity + f Lnet/minecraft/class_2394; field_3893 parameters + m (Lnet/minecraft/class_638;Lnet/minecraft/class_1297;Lnet/minecraft/class_2394;ILnet/minecraft/class_243;)V + p 1 world + p 3 parameters + p 2 entity + p 5 velocity + p 4 maxEmitterAge + m (Lnet/minecraft/class_638;Lnet/minecraft/class_1297;Lnet/minecraft/class_2394;I)V + p 4 maxEmitterAge + p 3 parameters + p 2 entity + p 1 world + m (Lnet/minecraft/class_638;Lnet/minecraft/class_1297;Lnet/minecraft/class_2394;)V + p 3 parameters + p 2 entity + p 1 world +c net/minecraft/class_8704 net/minecraft/network/encoding/VarLongs + f I field_45688 MORE_BITS_MASK + f I field_45687 DATA_BITS_MASK + f I field_45689 DATA_BITS_PER_BYTE + f I field_45686 MAX_BYTES + m (Lio/netty/buffer/ByteBuf;J)Lio/netty/buffer/ByteBuf; method_53021 write + p 1 l + p 0 buf + m (J)I method_53019 getSizeInBytes + p 0 l + m (B)Z method_53018 shouldContinueRead + p 0 b + m (Lio/netty/buffer/ByteBuf;)J method_53020 read + p 0 buf +c net/minecraft/class_8705 net/minecraft/network/listener/ClientCommonPacketListener + m (Lnet/minecraft/class_2720;)V method_52784 onResourcePackSend + p 1 packet + m (Lnet/minecraft/class_11406;)V method_71665 onClearDialog + p 1 packet + m (Lnet/minecraft/class_11407;)V method_71666 onShowDialog + p 1 packet + m (Lnet/minecraft/class_2790;)V method_11126 onSynchronizeTags + p 1 packet + m (Lnet/minecraft/class_2670;)V method_52782 onKeepAlive + p 1 packet + m (Lnet/minecraft/class_9151;)V method_56150 onServerTransfer + p 1 packet + m (Lnet/minecraft/class_2661;)V method_52781 onDisconnect + p 1 packet + m (Lnet/minecraft/class_6373;)V method_52783 onPing + p 1 packet + m (Lnet/minecraft/class_9814;)V method_60883 onCustomReportDetails + p 1 packet + m (Lnet/minecraft/class_9815;)V method_60884 onServerLinks + p 1 packet + m (Lnet/minecraft/class_2658;)V method_52780 onCustomPayload + p 1 packet + m (Lnet/minecraft/class_9053;)V method_55512 onResourcePackRemove + p 1 packet + m (Lnet/minecraft/class_9150;)V method_56149 onStoreCookie + p 1 packet +c net/minecraft/class_8702 net/minecraft/network/encoding/StringEncoding + m (Lio/netty/buffer/ByteBuf;I)Ljava/lang/String; method_53012 decode + p 0 buf + p 1 maxLength + m (Lio/netty/buffer/ByteBuf;Ljava/lang/CharSequence;I)V method_53013 encode + p 0 buf + p 1 string + p 2 maxLength +c net/minecraft/class_8703 net/minecraft/network/encoding/VarInts + f I field_45683 DATA_BITS_MASK + f I field_45682 MAX_BYTES + f I field_45685 DATA_BITS_PER_BYTE + f I field_45684 MORE_BITS_MASK + m (Lio/netty/buffer/ByteBuf;)I method_53016 read + p 0 buf + m (I)I method_53015 getSizeInBytes + p 0 i + m (Lio/netty/buffer/ByteBuf;I)Lio/netty/buffer/ByteBuf; method_53017 write + p 1 i + p 0 buf + m (B)Z method_53014 shouldContinueRead + p 0 b +c net/minecraft/class_8700 net/minecraft/network/handler/NetworkStateTransitionHandler + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/class_2596;)V method_56348 onEncoded + p 0 context + p 1 packet + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/class_2596;)V method_56347 onDecoded + p 0 context + p 1 packet +c net/minecraft/class_8701 net/minecraft/network/listener/ServerPacketListener +c net/minecraft/class_12043 net/minecraft/client/render/debug/EntityBlockIntersectionsDebugRenderer + f F field_62971 EXPANSION + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_12008;)V method_75430 method_75430 + p 1 type + p 0 pos +c net/minecraft/class_12046 net/minecraft/client/render/debug/PoiDebugRenderer + f Lnet/minecraft/class_4207; field_62979 brainDebugRenderer + f I field_62978 ORANGE_COLOR + m (Lnet/minecraft/class_12014;Lnet/minecraft/class_12021;)V method_74801 drawPoiInfo + p 1 data + p 2 store + m (Lnet/minecraft/class_12014;ZLnet/minecraft/class_12021;)Ljava/util/List; method_74799 getTicketHolders + p 2 potential + p 1 poiData + p 3 store + m (Lnet/minecraft/class_2338;Ljava/util/List;)V method_74803 drawGhostPoi + p 1 pos + p 2 ghostPois + m (ZLnet/minecraft/class_12014;Ljava/util/List;Lnet/minecraft/class_1297;Lnet/minecraft/class_12006;)V method_74806 method_74806 + p 4 grainData + p 3 entity + m (Ljava/lang/String;Lnet/minecraft/class_12014;II)V method_74804 drawTextOverPoi + p 2 yOffset + p 1 data + p 0 string + p 3 color + m (Lnet/minecraft/class_4207;)V + p 1 brainDebugRenderer + m (Lnet/minecraft/class_2338;)V method_74802 accentuatePoi + p 0 pos + m (Lnet/minecraft/class_12021;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Ljava/util/List;)V method_75446 method_75446 + p 4 ghostPois + p 3 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_12021;Lnet/minecraft/class_2338;Lnet/minecraft/class_12014;)V method_75447 method_75447 + p 4 data + p 3 pos +c net/minecraft/class_729 net/minecraft/client/particle/SuspendParticle +c net/minecraft/class_729$class_8254 net/minecraft/client/particle/SuspendParticle$EggCrackFactory + f Lnet/minecraft/class_4002; field_43374 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_49917 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_729$class_3991 net/minecraft/client/particle/SuspendParticle$Factory + f Lnet/minecraft/class_4002; field_17880 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_18044 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_729$class_730 net/minecraft/client/particle/SuspendParticle$DolphinFactory + f Lnet/minecraft/class_4002; field_17881 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3110 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_729$class_731 net/minecraft/client/particle/SuspendParticle$HappyVillagerFactory + f Lnet/minecraft/class_4002; field_17882 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3111 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_729$class_732 net/minecraft/client/particle/SuspendParticle$MyceliumFactory + f Lnet/minecraft/class_4002; field_17883 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3112 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_727 net/minecraft/client/particle/BlockDustParticle + f F field_17885 sampleV + f F field_17884 sampleU + f Lnet/minecraft/class_2338; field_3891 blockPos + f Lnet/minecraft/class_3940$class_11941; field_64558 renderType + m (Lnet/minecraft/class_2388;Lnet/minecraft/class_638;DDDDDD)Lnet/minecraft/class_727; method_58750 create + p 6 z + p 4 y + p 2 x + p 0 parameters + p 1 world + p 12 velocityZ + p 10 velocityY + p 8 velocityX + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_2680;)V + p 14 state + p 1 world + p 10 velocityY + p 12 velocityZ + p 6 z + p 8 velocityX + p 2 x + p 4 y + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_2680;Lnet/minecraft/class_2338;)V + p 4 y + p 6 z + p 1 world + p 2 x + p 12 velocityZ + p 15 blockPos + p 14 state + p 8 velocityX + p 10 velocityY +c net/minecraft/class_727$class_728 net/minecraft/client/particle/BlockDustParticle$Factory + m (Lnet/minecraft/class_2388;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3109 createParticle +c net/minecraft/class_727$class_10334 net/minecraft/client/particle/BlockDustParticle$CrumbleFactory + m (Lnet/minecraft/class_2388;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_64912 createParticle +c net/minecraft/class_727$class_9482 net/minecraft/client/particle/BlockDustParticle$DustPillarFactory + m (Lnet/minecraft/class_2388;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_58751 createParticle +c net/minecraft/class_743 net/minecraft/client/input/KeyboardInput + f Lnet/minecraft/class_315; field_3902 settings + m (Lnet/minecraft/class_315;)V + p 1 settings + m (ZZ)F method_40218 getMovementMultiplier + p 0 positive + p 1 negative +c net/minecraft/class_742 net/minecraft/client/network/AbstractClientPlayerEntity + f Z field_62644 deadmau5 + f Lnet/minecraft/class_640; field_3901 playerListEntry + f Lnet/minecraft/class_11902; field_62645 state + m ()Lnet/minecraft/class_640; method_3123 getPlayerListEntry + m (ZF)F method_3118 getFovMultiplier + p 2 fovEffectScale + p 1 firstPerson + m (F)V method_74312 addDistanceMoved + p 1 distanceMoved + m (Lnet/minecraft/class_638;Lcom/mojang/authlib/GameProfile;)V + p 2 profile + p 1 world + m ()V method_74313 tickPlayerMovement +c net/minecraft/class_740 net/minecraft/client/particle/RainSplashParticle +c net/minecraft/class_740$class_741 net/minecraft/client/particle/RainSplashParticle$Factory + f Lnet/minecraft/class_4002; field_17891 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3116 createParticle +c net/minecraft/class_1283 net/minecraft/entity/damage/DamageTracker + f I field_29967 DAMAGE_COOLDOWN + f I field_29968 ATTACK_DAMAGE_COOLDOWN + f Ljava/util/List; field_5870 recentDamage + f I field_5876 ageOnLastDamage + f I field_5875 ageOnLastAttacked + f I field_5873 ageOnLastUpdate + f Lnet/minecraft/class_2583; field_42274 INTENTIONAL_GAME_DESIGN_ISSUE_LINK_STYLE + f Z field_5872 hasDamage + f Lnet/minecraft/class_1309; field_5877 entity + f Z field_5874 recentlyAttacked + m ()Lnet/minecraft/class_2561; method_5548 getDeathMessage + m ()Lnet/minecraft/class_1281; method_5544 getBiggestFall + m (Lnet/minecraft/class_1309;)V + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2561;Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_2561; method_52193 getAttackedFallDeathMessage + p 2 attackerDisplayName + p 3 itemDeathTranslationKey + p 4 deathTranslationKey + p 1 attacker + m ()I method_5546 getTimeSinceLastAttack + m (Lnet/minecraft/class_1281;Lnet/minecraft/class_1297;)Lnet/minecraft/class_2561; method_52190 getFallDeathMessage + p 2 attacker + p 1 damageRecord + m (Lnet/minecraft/class_1282;)Z method_52191 isAttackerLiving + p 0 damageSource + m ()V method_5539 update + m (Lnet/minecraft/class_1282;F)V method_5547 onDamage + p 1 damageSource + p 2 damage + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_2561; method_52192 getDisplayName + p 0 entity +c net/minecraft/class_747 net/minecraft/screen/SimpleNamedScreenHandlerFactory + c An implementation of {@link NamedScreenHandlerFactory} that can be used\nwithout the use of anonymous class. This delegates the creation to {@link\n#baseFactory}.\n\n

An instance is passed to {@link net.minecraft.entity.player.PlayerEntity#openHandledScreen}\nto open a screen handler. + f Lnet/minecraft/class_2561; field_3947 name + f Lnet/minecraft/class_1270; field_17280 baseFactory + m (Lnet/minecraft/class_1270;Lnet/minecraft/class_2561;)V + p 2 name + p 1 baseFactory +c net/minecraft/class_1282 net/minecraft/entity/damage/DamageSource + f Lnet/minecraft/class_6880; field_42291 type + f Lnet/minecraft/class_1297; field_42293 source + f Lnet/minecraft/class_243; field_42294 position + f Lnet/minecraft/class_1297; field_42292 attacker + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1297;)V + p 2 attacker + p 1 type + m ()F method_5528 getExhaustion + m ()Z method_5530 isSourceCreativePlayer + m ()Lnet/minecraft/class_8110; method_48792 getType + m (Lnet/minecraft/class_6880;)V + p 1 type + m ()Z method_60489 isDirect + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_2561; method_5506 getDeathMessage + p 1 killed + m ()Lnet/minecraft/class_1297; method_5526 getSource + m (Lnet/minecraft/class_5321;)Z method_49708 isOf + p 1 typeKey + m ()Ljava/lang/String; method_5525 getName + m ()Lnet/minecraft/class_6880; method_48793 getTypeRegistryEntry + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_243;)V + p 2 position + p 1 type + m ()Lnet/minecraft/class_243; method_5510 getPosition + m ()Lnet/minecraft/class_243; method_48791 getStoredPosition + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;Lnet/minecraft/class_243;)V + p 1 type + p 2 source + p 3 attacker + p 4 position + m (Lnet/minecraft/class_6862;)Z method_48789 isIn + p 1 tag + m ()Lnet/minecraft/class_1799; method_60948 getWeaponStack + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)V + p 1 type + p 3 attacker + p 2 source + m ()Z method_5514 isScaledWithDifficulty + m ()Lnet/minecraft/class_1297; method_5529 getAttacker +c net/minecraft/class_746 net/minecraft/client/network/ClientPlayerEntity + c Represents the client's own player entity. + f Lnet/minecraft/class_744; field_3913 input + f Z field_3942 riding + f Z field_3918 healthInitialized + f F field_44912 lastNauseaIntensity + f I field_3923 ticksSinceLastPositionPacketSent + f F field_3931 lastRenderYaw + f I field_3935 ticksLeftToDoubleTapSprint + f Lnet/minecraft/class_10185; field_54156 lastPlayerInput + f Lnet/minecraft/class_12096; field_63569 permissions + f I field_3934 ticksToNextAutoJump + f F field_3922 mountJumpStrength + f Z field_46188 limitedCraftingEnabled + f Z field_23093 inSneakingPose + f D field_3926 lastXClient + f I field_3938 mountJumpTicks + f F field_3914 lastRenderPitch + f I field_59964 experienceBarDisplayStartTime + f Z field_3920 lastOnGround + f Lnet/minecraft/class_634; field_3944 networkHandler + f Lnet/minecraft/class_310; field_3937 client + f Lnet/minecraft/class_3469; field_3928 statHandler + f Z field_53040 lastHorizontalCollision + f F field_3941 lastYawClient + f Lnet/minecraft/class_1268; field_3945 activeHand + f Ljava/util/List; field_3933 tickables + f Lnet/minecraft/class_299; field_3930 recipeBook + f I field_3917 underwaterVisibilityTicks + f F field_3925 lastPitchClient + f D field_36194 MAX_SOFT_COLLISION_RADIANS + f Z field_3915 usingItem + f Lorg/slf4j/Logger; field_39078 LOGGER + f Z field_3927 autoJumpEnabled + f Z field_3939 falling + f Z field_3919 lastSprinting + f F field_44911 nauseaIntensity + f D field_3940 lastYClient + f F field_3932 renderYaw + f Lnet/minecraft/class_10222; field_54391 itemDropCooldown + f F field_3916 renderPitch + f Z field_20663 showsDeathScreen + f D field_3924 lastZClient + m ()Z method_67472 shouldStopSwimSprinting + m (Lnet/minecraft/class_239;Lnet/minecraft/class_243;D)Lnet/minecraft/class_239; method_76764 checkCrosshairTargetRange + p 2 range + p 1 cameraPos + p 0 hitResult + m ()Z method_3144 isRiding + m ()Lnet/minecraft/class_10185; method_71091 getLastPlayerInput + m ()V method_3132 openRidingInventory + m ()V method_3136 sendMovementPackets + m ()V method_75408 updateExperienceBarDisplayStartTime + m ()Z method_22120 hasMovementInput + c {@return whether the player has movement input} + m ()V method_46742 sendSprintingPacket + m (Lnet/minecraft/class_265;)Ljava/util/stream/Stream; method_3139 method_3139 + p 0 shape + m ()F method_3140 getUnderwaterVisibility + c {@return the color multiplier of vision in water} Visibility in\nwater is reduced when the player just entered water. + m (Z)Z method_7290 dropSelectedItem + p 1 entireStack + m (Z)Z method_74047 canSprint + p 1 allowTouchingWater + m ()Z method_65949 shouldStopSprinting + m ()V method_7331 requestRespawn + m (Z)V method_22420 setShowsDeathScreen + p 1 showsDeathScreen + m (F)V method_3138 updateHealth + p 1 health + m ()F method_3151 getMountJumpStrength + m ()F method_26269 getMoodPercentage + c {@return the percentage for the biome mood sound for the debug HUD to\ndisplay} + m (Lnet/minecraft/class_1934;)V method_51889 onGameModeChanged + p 1 gameMode + m (Lnet/minecraft/class_241;)F method_67272 getDirectionalMovementSpeedMultiplier + p 0 vec + m (Lnet/minecraft/class_310;Lnet/minecraft/class_638;Lnet/minecraft/class_634;Lnet/minecraft/class_3469;Lnet/minecraft/class_299;Lnet/minecraft/class_10185;Z)V + p 7 lastSprinting + p 1 client + p 2 world + p 5 recipeBook + p 6 lastPlayerInput + p 3 networkHandler + p 4 stats + m (Z)V method_60887 tickNausea + p 1 fromPortalEffect + m ()Lnet/minecraft/class_1316; method_45773 getJumpingMount + m ()Lnet/minecraft/class_299; method_3130 getRecipeBook + m (Z)V method_53848 setLimitedCraftingEnabled + p 1 limitedCraftingEnabled + m (Lnet/minecraft/class_12096;)V method_75411 setPermissions + p 1 permissions + m (Lnet/minecraft/class_1297;DDF)Lnet/minecraft/class_239; method_76763 getCrosshairTarget + p 1 blockInteractionRange + p 0 cameraEntity + p 3 entityInteractionRange + p 5 tickProgress + m ()Z method_3134 isCamera + m ()Lnet/minecraft/class_9797$class_9798; method_60886 getCurrentPortalEffect + m ()V method_33689 init + m ()Z method_48300 canStartSprinting + m ()F method_75410 getActiveItemSpeedMultiplier + m ()Z method_22119 shouldAutoJump + m (Lnet/minecraft/class_1297;)Z method_48301 canVehicleSprint + p 1 vehicle + m (Lnet/minecraft/class_241;)Lnet/minecraft/class_241; method_67270 applyMovementSpeedFactors + p 1 input + m ()Z method_53847 isLimitedCraftingEnabled + m ()V method_3133 startRidingJump + m ()Z method_3149 isAutoJumpEnabled + m ()Z method_75409 isBlockedFromSprinting + m ()Lnet/minecraft/class_10222; method_64376 getItemDropCooldown + m ()V method_3137 closeScreen + m ()Z method_20303 shouldSlowDown + m (FF)V method_3148 autoJump + p 1 dx + p 2 dz + m ()Z method_22419 showsDeathScreen + m (DD)V method_30673 pushOutOfBlocks + p 1 x + p 3 z + m (Lnet/minecraft/class_2338;)Z method_30674 wouldCollideAt + p 1 pos + m ()Lnet/minecraft/class_3469; method_3143 getStatHandler + m (FLnet/minecraft/class_1297;)Lnet/minecraft/class_239; method_76762 getCrosshairTarget + p 2 cameraEntity + p 1 tickProgress + m (Lnet/minecraft/class_241;)Lnet/minecraft/class_241; method_67271 applyDirectionalMovementSpeedFactors + p 0 vec + m (Lnet/minecraft/class_10298;)V method_3141 onRecipeDisplayed + p 1 recipeId + m (FII)V method_3145 setExperience + p 3 level + p 2 total + p 1 progress +c net/minecraft/class_1281 net/minecraft/entity/damage/DamageRecord + f F comp_1536 damage + f F comp_1538 fallDistance + f Lnet/minecraft/class_1282; comp_1535 damageSource + f Lnet/minecraft/class_8572; comp_1537 fallLocation + m (Lnet/minecraft/class_1282;FLnet/minecraft/class_8572;F)V + p 1 damageSource + p 2 damage + p 3 fallLocation + p 4 fallDistance + m ()F comp_1536 damage + m ()F comp_1538 fallDistance + m ()Lnet/minecraft/class_1282; comp_1535 damageSource + m ()Lnet/minecraft/class_8572; comp_1537 fallLocation +c net/minecraft/class_745 net/minecraft/client/network/OtherClientPlayerEntity + c Represents a player entity that is present on the client but is not the client's own player. + f I field_42908 velocityLerpDivisor + f Lnet/minecraft/class_243; field_42907 clientVelocity +c net/minecraft/class_1280 net/minecraft/entity/DamageUtil + m (Lnet/minecraft/class_1309;FLnet/minecraft/class_1282;FF)F method_5496 getDamageLeft + p 4 armorToughness + p 3 armor + p 2 damageSource + p 1 damageAmount + p 0 armorWearer + m (FF)F method_5497 getInflictedDamage + p 0 damageDealt + p 1 protection +c net/minecraft/class_744 net/minecraft/client/input/Input + f Lnet/minecraft/class_10185; field_54155 playerInput + f Lnet/minecraft/class_241; field_55868 movementVector + m ()V method_3129 tick + m ()V method_64054 jump + m ()Lnet/minecraft/class_241; method_3128 getMovementInput + m ()Z method_20622 hasForwardMovement +c net/minecraft/class_1289 net/minecraft/entity/effect/InstantStatusEffect +c net/minecraft/class_1288 net/minecraft/entity/effect/AbsorptionStatusEffect +c net/minecraft/class_12076 net/minecraft/client/render/state/SkyRenderState + f F field_64466 starAngle + f I field_63095 sunriseAndSunsetColor + f F field_63093 rainGradient + f F field_63091 sunAngle + f Lnet/minecraft/class_12131; field_63096 moonPhase + f F field_64465 moonAngle + f Z field_63090 shouldRenderSkyDark + f F field_63094 starBrightness + f I field_63097 skyColor + f F field_63100 endFlashYaw + f Lnet/minecraft/class_2874$class_12326; field_64464 skybox + f F field_63098 endFlashIntensity + f F field_63099 endFlashPitch + m ()V method_74937 clear +c net/minecraft/class_12075 net/minecraft/client/render/state/CameraRenderState + f Lorg/joml/Quaternionf; field_63081 orientation + f Lnet/minecraft/class_243; field_63078 pos + f Lnet/minecraft/class_2338; field_63077 blockPos + f Lnet/minecraft/class_243; field_63080 entityPos + f Z field_63079 initialized +c net/minecraft/class_12074 net/minecraft/client/render/state/OutlineRenderState + f Lnet/minecraft/class_2338; comp_4932 pos + f Z comp_4934 highContrast + f Z comp_4933 isTranslucent + f Lnet/minecraft/class_265; comp_4937 occlusionShape + f Lnet/minecraft/class_265; comp_4936 collisionShape + f Lnet/minecraft/class_265; comp_4935 shape + f Lnet/minecraft/class_265; comp_4938 interactionShape + m (Lnet/minecraft/class_2338;ZZLnet/minecraft/class_265;)V + p 4 shape + p 3 highContrast + p 2 isTranslucent + p 1 pos + m ()Lnet/minecraft/class_2338; comp_4932 pos + m ()Lnet/minecraft/class_265; comp_4935 shape + m ()Lnet/minecraft/class_265; comp_4936 collisionShape + m ()Z comp_4933 isTranslucent + m ()Z comp_4934 highContrast + m ()Lnet/minecraft/class_265; comp_4937 occlusionShape + m ()Lnet/minecraft/class_265; comp_4938 interactionShape + m (Lnet/minecraft/class_2338;ZZLnet/minecraft/class_265;Lnet/minecraft/class_265;Lnet/minecraft/class_265;Lnet/minecraft/class_265;)V + p 1 pos + p 2 isTranslucent + p 3 highContrast + p 4 shape + p 5 collisionShape + p 6 occlusionShape + p 7 interactionShape +c net/minecraft/class_12073 net/minecraft/client/render/state/BreakingBlockRenderState + f I field_63076 breakProgress + m (Lnet/minecraft/class_638;Lnet/minecraft/class_2338;I)V + p 3 breakProgress + p 2 entityBlockPos + p 1 world +c net/minecraft/class_12079 net/minecraft/util/AssetInfo + m ()Lnet/minecraft/class_2960; comp_3626 id +c net/minecraft/class_12079$class_12080 net/minecraft/util/AssetInfo$SkinAssetInfo + f Ljava/lang/String; comp_4939 url + f Lnet/minecraft/class_2960; comp_3627 texturePath + m ()Ljava/lang/String; comp_4939 url + m (Lnet/minecraft/class_2960;Ljava/lang/String;)V + p 1 texturePath + p 2 url +c net/minecraft/class_12079$class_12081 net/minecraft/util/AssetInfo$TextureAsset + m ()Lnet/minecraft/class_2960; comp_3627 texturePath +c net/minecraft/class_12079$class_10726 net/minecraft/util/AssetInfo$TextureAssetInfo + f Lcom/mojang/serialization/Codec; field_56393 CODEC + f Lnet/minecraft/class_9139; field_56395 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_56394 MAP_CODEC + f Lnet/minecraft/class_2960; comp_3627 texturePath + f Lnet/minecraft/class_2960; comp_3626 id + m (Lnet/minecraft/class_2960;)V + p 1 id + m (Ljava/lang/String;)Ljava/lang/String; method_67294 method_67294 + p 0 path + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V + p 1 id + p 2 texturePath +c net/minecraft/class_12078 net/minecraft/client/render/state/WorldBorderRenderState + f I field_63109 tint + f D field_63105 minX + f D field_63108 maxZ + f D field_63106 maxX + f D field_63107 minZ + f D field_63110 alpha + m (DD)Ljava/util/List; method_74940 nearestBorder + p 1 x + p 3 z + m (Lnet/minecraft/class_12078$class_10763;)D method_74941 method_74941 + p 0 d + m ()V method_74939 clear +c net/minecraft/class_12078$class_10763 net/minecraft/client/render/state/WorldBorderRenderState$Distance + f D comp_3672 value + f Lnet/minecraft/class_2350; comp_3671 direction + m ()D comp_3672 value + m ()Lnet/minecraft/class_2350; comp_3671 direction + m (Lnet/minecraft/class_2350;D)V + p 1 direction + p 2 value +c net/minecraft/class_12077 net/minecraft/client/render/state/WeatherRenderState + f F field_63103 intensity + f Ljava/util/List; field_63102 snowPieces + f I field_63104 radius + f Ljava/util/List; field_63101 rainPieces + m ()V method_74938 clear +c net/minecraft/class_738 net/minecraft/client/particle/FishingParticle + f Lnet/minecraft/class_4002; field_17888 spriteProvider + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_4002;)V + p 14 spriteProvider + p 12 velocityZ + p 2 x + p 1 world + p 6 z + p 4 y + p 10 velocityY + p 8 velocityX +c net/minecraft/class_738$class_739 net/minecraft/client/particle/FishingParticle$Factory + f Lnet/minecraft/class_4002; field_17889 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3115 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_753 net/minecraft/client/render/model/CubeFace + f [Lnet/minecraft/class_753$class_755; field_3959 corners + f Ljava/util/Map; field_3958 DIRECTION_LOOKUP + f Lnet/minecraft/class_753; field_3961 EAST + f Lnet/minecraft/class_753; field_3963 SOUTH + f Lnet/minecraft/class_753; field_3962 NORTH + f Lnet/minecraft/class_753; field_3960 UP + f Lnet/minecraft/class_753; field_3966 WEST + f Lnet/minecraft/class_753; field_3965 DOWN + m (I)Lnet/minecraft/class_753$class_755; method_3162 getCorner + p 1 corner + m (Ljava/lang/String;I[Lnet/minecraft/class_753$class_755;)V + p 3 corners + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_753; method_3163 getFace + p 0 direction + m (Ljava/util/EnumMap;)V method_3161 method_3161 + p 0 map +c net/minecraft/class_753$class_12350 net/minecraft/client/render/model/CubeFace$CornerCoord + f Lnet/minecraft/class_753$class_12350; field_64562 MAX_X + f Lnet/minecraft/class_753$class_12350; field_64563 MAX_Y + f Lnet/minecraft/class_753$class_12350; field_64564 MAX_Z + f Lnet/minecraft/class_753$class_12350; field_64560 MIN_Y + f Lnet/minecraft/class_753$class_12350; field_64561 MIN_Z + f Lnet/minecraft/class_753$class_12350; field_64559 MIN_X + m (Lorg/joml/Vector3fc;Lorg/joml/Vector3fc;)F method_76645 get + p 2 to + p 1 from + m (FFFFFF)F method_76644 get + p 4 toX + p 3 fromZ + p 6 toZ + p 5 toY + p 2 fromY + p 1 fromX +c net/minecraft/class_753$class_755 net/minecraft/client/render/model/CubeFace$Corner + f Lnet/minecraft/class_753$class_12350; comp_5235 zSide + f Lnet/minecraft/class_753$class_12350; comp_5234 ySide + f Lnet/minecraft/class_753$class_12350; comp_5233 xSide + m (Lorg/joml/Vector3fc;Lorg/joml/Vector3fc;)Lorg/joml/Vector3f; method_76646 get + p 1 from + p 2 to + m ()Lnet/minecraft/class_753$class_12350; comp_5235 zSide + m ()Lnet/minecraft/class_753$class_12350; comp_5234 ySide + m ()Lnet/minecraft/class_753$class_12350; comp_5233 xSide + m (Lnet/minecraft/class_753$class_12350;Lnet/minecraft/class_753$class_12350;Lnet/minecraft/class_753$class_12350;)V + p 1 xSide + p 2 ySide + p 3 zSide +c net/minecraft/class_751 net/minecraft/client/gui/CubeMapRenderer + f Lnet/minecraft/class_11279; field_60577 projectionMatrix + f I field_32680 FACES_COUNT + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_60576 buffer + f Lnet/minecraft/class_2960; field_60578 id + m ()Lcom/mojang/blaze3d/buffers/GpuBuffer; method_67548 upload + m (Lnet/minecraft/class_2960;)V + p 1 id + m (Lnet/minecraft/class_1060;)V method_65815 registerTextures + p 1 textureManager + m (Lnet/minecraft/class_310;FF)V method_3156 draw + p 2 x + p 1 client + p 3 y +c net/minecraft/class_1294 net/minecraft/entity/effect/StatusEffects + f I field_38093 DARKNESS_PADDING_DURATION + f Lnet/minecraft/class_6880; field_50121 INFESTED + f Lnet/minecraft/class_6880; field_50120 OOZING + f Lnet/minecraft/class_6880; field_50116 TRIAL_OMEN + f Lnet/minecraft/class_6880; field_50118 WIND_CHARGED + f Lnet/minecraft/class_6880; field_50117 RAID_OMEN + f Lnet/minecraft/class_6880; field_50119 WEAVING + f Lnet/minecraft/class_6880; field_5898 ABSORPTION + f Lnet/minecraft/class_6880; field_5899 POISON + f Lnet/minecraft/class_6880; field_16595 BAD_OMEN + f Lnet/minecraft/class_6880; field_18980 HERO_OF_THE_VILLAGE + f Lnet/minecraft/class_6880; field_5901 MINING_FATIGUE + f Lnet/minecraft/class_6880; field_5902 LEVITATION + f Lnet/minecraft/class_6880; field_5903 HUNGER + f Lnet/minecraft/class_6880; field_5904 SPEED + f Lnet/minecraft/class_6880; field_5900 DOLPHINS_GRACE + f Lnet/minecraft/class_6880; field_5925 NIGHT_VISION + f Lnet/minecraft/class_6880; field_5926 LUCK + f Lnet/minecraft/class_6880; field_5927 CONDUIT_POWER + f Lnet/minecraft/class_6880; field_5921 INSTANT_DAMAGE + f Lnet/minecraft/class_6880; field_5922 SATURATION + f Lnet/minecraft/class_6880; field_5923 WATER_BREATHING + f Lnet/minecraft/class_6880; field_5924 REGENERATION + f Lnet/minecraft/class_6880; field_5920 WITHER + f Lnet/minecraft/class_6880; field_5917 HASTE + f Lnet/minecraft/class_6880; field_5918 FIRE_RESISTANCE + f Lnet/minecraft/class_6880; field_5919 BLINDNESS + f Lnet/minecraft/class_6880; field_5913 JUMP_BOOST + f Lnet/minecraft/class_6880; field_5914 HEALTH_BOOST + f Lnet/minecraft/class_6880; field_5915 INSTANT_HEALTH + f Lnet/minecraft/class_6880; field_5916 NAUSEA + f Lnet/minecraft/class_6880; field_5910 STRENGTH + f Lnet/minecraft/class_6880; field_5911 WEAKNESS + f Lnet/minecraft/class_6880; field_5912 GLOWING + f Lnet/minecraft/class_6880; field_5905 INVISIBILITY + f Lnet/minecraft/class_6880; field_5906 SLOW_FALLING + f Lnet/minecraft/class_6880; field_5907 RESISTANCE + f Lnet/minecraft/class_6880; field_5908 UNLUCK + f Lnet/minecraft/class_6880; field_5909 SLOWNESS + f Lnet/minecraft/class_6880; field_63288 BREATH_OF_THE_NAUTILUS + f Lnet/minecraft/class_6880; field_38092 DARKNESS + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_6880; method_55664 registerAndGetDefault + p 0 registry + m (Ljava/lang/String;Lnet/minecraft/class_1291;)Lnet/minecraft/class_6880; method_5594 register + p 1 statusEffect + p 0 id + m (Lnet/minecraft/class_5819;)I method_58626 method_58626 + p 0 random + m (Lnet/minecraft/class_5819;)I method_58624 method_58624 + p 0 random + m (Lnet/minecraft/class_5819;)I method_58625 method_58625 + p 0 random +c net/minecraft/class_758 net/minecraft/client/render/fog/FogRenderer + f Ljava/util/List; field_60586 FOG_MODIFIERS + f Z field_54018 fogEnabled + f I field_60096 FOG_UBO_SIZE + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_60097 emptyBuffer + f Lnet/minecraft/class_11285; field_60098 fogBuffer + m (Lnet/minecraft/class_4184;)Lnet/minecraft/class_5636; method_71652 getCameraSubmersionType + p 1 camera + m (Lnet/minecraft/class_4184;ILnet/minecraft/class_9779;FLnet/minecraft/class_638;)Lorg/joml/Vector4f; method_3211 applyFog + p 1 camera + p 2 viewDistance + m (Ljava/nio/ByteBuffer;ILorg/joml/Vector4f;FFFFFF)V method_71110 applyFog + p 9 cloudEnd + p 6 renderDistanceStart + p 5 environmentalEnd + p 8 skyEnd + p 7 renderDistanceEnd + p 2 bufPos + p 1 buffer + p 4 environmentalStart + p 3 fogColor + m ()Z method_63521 toggleFog + m (Lnet/minecraft/class_4184;FLnet/minecraft/class_638;IF)Lorg/joml/Vector4f; method_62185 getFogColor + p 2 tickProgress + p 3 world + p 1 camera + p 4 viewDistance + p 5 skyDarkness + m (Lnet/minecraft/class_758$class_4596;)Lcom/mojang/blaze3d/buffers/GpuBufferSlice; method_71109 getFogBuffer + p 1 fogType + m ()V method_71108 rotate +c net/minecraft/class_758$class_4596 net/minecraft/client/render/fog/FogRenderer$FogType + f Lnet/minecraft/class_758$class_4596; field_60102 WORLD + f Lnet/minecraft/class_758$class_4596; field_60101 NONE +c net/minecraft/class_1293 net/minecraft/entity/effect/StatusEffectInstance + f Lnet/minecraft/class_9139; field_49207 PACKET_CODEC + f Z field_5889 showIcon + f I field_42106 INFINITE + f I field_5895 duration + f Lnet/minecraft/class_6880; field_5896 type + f Z field_5890 showParticles + f Lorg/slf4j/Logger; field_5897 LOGGER + f I field_49014 MIN_AMPLIFIER + f Lcom/mojang/serialization/Codec; field_48821 CODEC + f Lnet/minecraft/class_1293; field_21830 hiddenEffect + c The effect hidden when upgrading effects. Duration decreases with this\neffect.\n\n

This exists so that long-duration low-amplifier effects reappears\nafter short-duration high-amplifier effects run out. + f I field_5893 amplifier + f I field_49015 MAX_AMPLIFIER + f Z field_5892 ambient + f Lnet/minecraft/class_1293$class_9063; field_47739 fading + m (Lnet/minecraft/class_6880;IIZZZLnet/minecraft/class_1293;)V + p 1 effect + p 2 duration + p 3 amplifier + p 4 ambient + p 5 showParticles + p 6 showIcon + p 7 hiddenEffect + m ()Z method_5581 shouldShowParticles + m (Lnet/minecraft/class_1293;)Z method_48561 lastsShorterThan + p 1 effect + m ()Lnet/minecraft/class_6880; method_5579 getEffectType + m (Lnet/minecraft/class_6880;)V + p 1 effect + m ()I method_5578 getAmplifier + m (Lnet/minecraft/class_1309;F)F method_55653 getFadeFactor + c {@return the factor (multiplier) for effect fade-in and fade-out}\n\n

The return value is between {@code 0.0f} and {@code 1.0f} (both inclusive).\n\n@see StatusEffect#fadeTicks(int) + p 2 tickProgress + p 1 entity + m (I)Z method_48557 isDurationBelow + p 1 duration + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56666 method_56666 + p 0 instance + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1293$class_9195;)Lnet/minecraft/class_1293; method_56667 method_56667 + p 1 parametersx + m ()Z method_66230 tickHiddenEffect + m (Lnet/minecraft/class_6880;I)V + p 2 duration + p 1 effect + m (Ljava/lang/Object;)I compareTo compareTo + p 1 that + m ()V method_55657 skipFading + c Skips fade-in or fade-out currently in progress, instantly setting it\nto the final state (factor {@code 1.0f} or {@code 0.0f}, depending on the\neffect's duration). + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1282;F)V method_58621 onEntityDamage + p 4 amount + p 2 entity + p 3 source + p 1 world + m ()Z method_5592 shouldShowIcon + m (I)I method_48560 method_48560 + p 0 duration + m (Lnet/minecraft/class_6880;IIZZ)V + p 3 amplifier + p 2 duration + p 1 effect + p 5 visible + p 4 ambient + m (Lnet/minecraft/class_1293;)Z method_5590 upgrade + p 1 that + m ()I method_5584 getDuration + m (Lnet/minecraft/class_1293;)I method_5587 compareTo + m ()V method_66229 tickClient + m ()V method_5588 updateDuration + m ()Z method_48562 isActive + m (F)Lnet/minecraft/class_1293; method_66227 withScaledDuration + p 1 durationMultiplier + m (Lnet/minecraft/class_6880;)Z method_55654 equals + p 1 effect + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Z method_5591 isAmbient + m (Lnet/minecraft/class_1293;)V method_55656 copyFadingFrom + p 1 effect + m (Lnet/minecraft/class_1309;)V method_58623 playApplySound + p 1 entity + m ()Lnet/minecraft/class_2394; method_58148 createParticle + m ()Z method_48559 isInfinite + m (Lnet/minecraft/class_6880;IIZZZ)V + p 3 amplifier + p 2 duration + p 1 effect + p 6 showIcon + p 5 showParticles + p 4 ambient + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1293$class_9195;)V + p 2 parameters + p 1 effect + m (Lnet/minecraft/class_6880;II)V + p 1 effect + p 2 duration + p 3 amplifier + m (Lnet/minecraft/class_1293;)V method_24276 copyFrom + p 1 that + m (Lnet/minecraft/class_1309;)V method_52523 onApplied + p 1 entity + m ()Lnet/minecraft/class_1293$class_9195; method_56668 asParameters + m (Lnet/minecraft/class_1293;)V + p 1 instance + m ()Ljava/lang/String; method_5586 getTranslationKey + m (Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)I method_48558 mapDuration + p 1 mapper + m (FI)I method_66228 method_66228 + p 1 duration + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Ljava/lang/Runnable;)Z method_5585 update + p 1 world + p 2 entity + p 3 hiddenEffectCallback + m ()Ljava/lang/String; method_48563 getDurationString + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1297$class_5529;)V method_58622 onEntityRemoval + p 3 reason + p 2 entity + p 1 world +c net/minecraft/class_1293$class_9063 net/minecraft/entity/effect/StatusEffectInstance$Fading + c Computes the factor (multiplier) for effect fade-in and fade-out.\n\n

This is used by {@link StatusEffects#DARKNESS} in vanilla.\n\n@see StatusEffect#fadeTicks(int)\n@see StatusEffect#getFadeInTicks\n@see StatusEffect#getFadeOutTicks + f F field_47740 factor + f F field_47741 lastFactor + m (Lnet/minecraft/class_1293$class_9063;)V method_55658 copyFrom + p 1 fading + m (Lnet/minecraft/class_1293;)V method_55661 update + p 1 effect + m (Lnet/minecraft/class_1293;)V method_55659 skipFading + c Skips fade-in or fade-out currently in progress, instantly setting it\nto the final state (factor {@code 1.0f} or {@code 0.0f}, depending on the\neffect's duration). + p 1 effect + m (Lnet/minecraft/class_1309;F)F method_55660 calculate + p 1 entity + p 2 tickProgress + m (Lnet/minecraft/class_1293;)Z method_66231 shouldFadeIn + p 0 effect +c net/minecraft/class_1293$class_9195 net/minecraft/entity/effect/StatusEffectInstance$Parameters + f Lnet/minecraft/class_9139; field_49208 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_48822 CODEC + f Z comp_2295 showParticles + f Z comp_2296 showIcon + f I comp_2293 duration + f Z comp_2294 ambient + f I comp_2292 amplifier + f Ljava/util/Optional; comp_2297 hiddenEffect + m (IIZZLjava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/class_1293$class_9195; method_56669 create + p 2 ambient + p 1 duration + p 0 amplifier + p 5 hiddenEffect + p 4 showIcon + p 3 showParticles + m (Lnet/minecraft/class_1293$class_9195;)Ljava/util/Optional; method_56670 method_56670 + p 0 parameters + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56672 method_56672 + p 1 instance + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_57279 method_57279 + p 0 packetCodec + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/MapCodec; method_56671 method_56671 + p 0 codec + m ()Z comp_2294 ambient + m ()Z comp_2295 showParticles + m ()I comp_2292 amplifier + m ()I comp_2293 duration + m ()Z comp_2296 showIcon + m ()Ljava/util/Optional; comp_2297 hiddenEffect + m (IIZZZLjava/util/Optional;)V + p 1 amplifier + p 2 duration + p 3 ambient + p 4 showParticles + p 5 showIcon + p 6 hiddenEffect +c net/minecraft/class_757 net/minecraft/client/render/GameRenderer + f Lnet/minecraft/class_759; field_4012 firstPersonRenderer + f Lnet/minecraft/class_4184; field_18765 camera + f Lnet/minecraft/class_11279; field_60106 hudProjectionMatrix + f F field_4025 viewDistanceBlocks + f J field_3998 lastWindowFocusedTime + f Lnet/minecraft/class_11228; field_59965 guiRenderer + f Lnet/minecraft/class_12335; field_64449 cameraOverride + f F field_55871 nauseaEffectTime + f Lnet/minecraft/class_2960; field_53899 BLUR_ID + f F field_32686 CAMERA_DEPTH + c Since the camera is conceptualized as a single point, a depth of {@value}\nblocks is used to define a rectangular area to be rendered.\n\n@see Camera#getProjection() + f Lnet/minecraft/class_11284; field_60104 globalSettings + f Lnet/minecraft/class_758; field_60793 fogRenderer + f F field_3997 lastSkyDarkness + f F field_55872 nauseaEffectSpeed + f Lnet/minecraft/class_2960; field_53898 postProcessorId + f Lnet/minecraft/class_4608; field_20949 overlayTexture + f Lnet/minecraft/class_765; field_4028 lightmapTextureManager + f Lnet/minecraft/class_11286; field_60105 worldProjectionMatrix + f Lnet/minecraft/class_4599; field_20948 buffers + f Lnet/minecraft/class_766; field_60580 rotatingPanoramaRenderer + f Lnet/minecraft/class_310; field_4015 client + f Lnet/minecraft/class_751; field_60579 panoramaRenderer + f Lnet/minecraft/class_4603; field_59967 overlayRenderer + f F field_4019 fovMultiplier + f F field_4002 skyDarkness + f Lnet/minecraft/class_9920; field_53066 pool + f Lnet/minecraft/class_11661; field_61733 orderedRenderCommandQueue + f Lnet/minecraft/class_11684; field_61734 entityRenderDispatcher + f Lnet/minecraft/class_11658; field_61732 worldRenderState + f Z field_4013 postProcessorEnabled + f Z field_34055 hasWorldIcon + f Lnet/minecraft/class_5819; field_3994 random + f Lnet/minecraft/class_11246; field_59966 guiState + f F field_3999 lastFovMultiplier + f J field_4017 lastWorldIconUpdate + f Lnet/minecraft/class_308; field_60103 diffuseLighting + f Lorg/slf4j/Logger; field_3993 LOGGER + f Z field_4009 blockOutlineEnabled + m (Lnet/minecraft/class_5912;)V method_34521 preloadPrograms + p 1 factory + m ()Lnet/minecraft/class_310; method_35772 getClient + m (F)F method_3195 getSkyDarkness + p 1 tickProgress + m ()V method_3199 updateFovMultiplier + m (Ljava/nio/file/Path;Lnet/minecraft/class_1011;)V method_68164 method_68164 + p 1 screenshot + m ()Lnet/minecraft/class_11661; method_72910 getEntityRenderCommandQueue + m (Lnet/minecraft/class_9779;)V method_76295 updateCamera + p 1 tickCounter + m ()Lnet/minecraft/class_4608; method_22975 getOverlayTexture + m ()Lnet/minecraft/class_11684; method_72911 getEntityRenderDispatcher + m ()V method_37473 updateWorldIcon + m ()Lnet/minecraft/class_4184; method_19418 getCamera + m (Ljava/nio/file/Path;)V method_37474 method_37474 + p 1 path + m (Lnet/minecraft/class_1297;)V method_3167 onCameraEntitySet + p 1 entity + m (Lnet/minecraft/class_4587;F)V method_3186 bobView + p 1 matrices + p 2 tickProgress + m (Lnet/minecraft/class_4587;F)V method_3198 tiltViewWhenHurt + p 1 matrices + p 2 tickProgress + m ()V method_3182 tick + m ()Lnet/minecraft/class_11658; method_72912 getEntityRenderStates + m (Lnet/minecraft/class_11247;)V method_75836 method_75836 + p 1 text + m (Lnet/minecraft/class_310;Lnet/minecraft/class_759;Lnet/minecraft/class_4599;Lnet/minecraft/class_776;)V + p 4 blockRenderManager + p 3 buffers + p 2 firstPersonHeldItemRenderer + p 1 client + m ()F method_32796 getFarPlaneDistance + m (Lnet/minecraft/class_1799;)V method_3189 showFloatingItem + p 1 floatingItem + m ()V method_75837 renderActiveTextAreas + m (Lnet/minecraft/class_1309;F)F method_3174 getNightVisionStrength + p 0 entity + p 1 tickProgress + m ()Z method_3202 shouldRenderBlockOutline + m (FZLorg/joml/Matrix4f;)V method_3172 renderHand + p 3 positionMatrix + p 1 tickProgress + p 2 sleeping + m (F)Lorg/joml/Matrix4f; method_74751 getProjectionMatrix + m (Lnet/minecraft/class_638;)V method_71112 setWorld + p 1 world + m (Lnet/minecraft/class_2960;)V method_62904 setPostProcessor + p 1 id + m ()V method_57796 renderBlur + m ()V method_62905 clearPostProcessor + m ()Z method_35765 isRenderingPanorama + m (Z)V method_35769 setBlockOutlineEnabled + p 1 blockOutlineEnabled + m ()F method_3193 getViewDistanceBlocks + m ()V method_3203 reset + m (II)V method_3169 onResized + p 1 width + p 2 height + m ()Lnet/minecraft/class_11284; method_71113 getGlobalSettings + m ()V method_3184 togglePostProcessorEnabled + m (Lnet/minecraft/class_4184;FZ)F method_3196 getFov + p 1 camera + p 2 tickProgress + p 3 changingFov + m (Lnet/minecraft/class_5912;Lnet/minecraft/class_2960;Lcom/mojang/blaze3d/shaders/ShaderType;)Ljava/lang/String; method_68479 method_68479 + p 1 id + p 2 type + m (F)V method_74920 updateCameraState + m (Lnet/minecraft/class_12335;)V method_76543 setCameraOverride + p 1 cameraOverride + m ()Lnet/minecraft/class_765; method_22974 getLightmapTextureManager + m (Lnet/minecraft/class_9779;)V method_3188 renderWorld + p 1 renderTickCounter + m (Ljava/nio/file/Path;)V method_3176 updateWorldIcon + p 1 path + m (F)Lorg/joml/Matrix4f; method_22973 getBasicProjectionMatrix + p 1 fovDegrees + m ()Lnet/minecraft/class_766; method_71649 getRotatingPanoramaRenderer + m ()Lnet/minecraft/class_2960; method_62906 getPostProcessorId + m ()Lnet/minecraft/class_12335; method_76544 getCameraOverride + m (Lnet/minecraft/class_9779;Z)V method_3192 render + p 1 tickCounter + p 2 tick + m ()Lnet/minecraft/class_308; method_71114 getDiffuseLighting + m (F)V method_3190 updateCrosshairTarget + p 1 tickProgress +c net/minecraft/class_757$1 net/minecraft/client/render/GameRenderer$1 + f I field_63914 index + m (Lnet/minecraft/class_12236;Z)V method_75838 addGlyph + p 2 empty + p 1 glyph +c net/minecraft/class_1292 net/minecraft/entity/effect/StatusEffectUtil + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_243;DLnet/minecraft/class_6880;Lnet/minecraft/class_1293;ILnet/minecraft/class_3222;)Z method_42145 method_42145 + p 7 player + m (Lnet/minecraft/class_1309;)I method_5575 getHasteAmplifier + p 0 entity + m (Lnet/minecraft/class_1309;)Z method_5576 hasHaste + p 0 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_243;DLnet/minecraft/class_1293;I)Ljava/util/List; method_42143 addEffectToPlayersWithinDistance + p 5 statusEffectInstance + p 3 range + p 2 origin + p 1 entity + p 0 world + p 6 duration + m (Lnet/minecraft/class_1309;)Z method_5574 hasWaterBreathing + p 0 entity + m (Lnet/minecraft/class_1309;)Z method_76582 canIncreaseAirOnLand + p 0 entity + m (Lnet/minecraft/class_1293;Lnet/minecraft/class_1297;Lnet/minecraft/class_3222;)V method_42144 method_42144 + p 2 player + m (Lnet/minecraft/class_1293;FF)Lnet/minecraft/class_2561; method_5577 getDurationText + p 1 multiplier + p 0 effect + p 2 tickRate +c net/minecraft/class_1291 net/minecraft/entity/effect/StatusEffect + f Ljava/util/function/Function; field_49790 particleFactory + f I field_5886 color + f Lnet/minecraft/class_4081; field_18270 category + f Lcom/mojang/serialization/Codec; field_51933 ENTRY_CODEC + f I field_49789 AMBIENT_PARTICLE_ALPHA + f I field_55651 fadeOutTicks + f Lnet/minecraft/class_7699; field_50115 requiredFeatures + f Ljava/lang/String; field_5883 translationKey + f I field_55650 fadeInTicks + f Lnet/minecraft/class_9139; field_51934 ENTRY_PACKET_CODEC + f Ljava/util/Optional; field_50114 applySound + f I field_55652 fadeOutThresholdTicks + f Ljava/util/Map; field_5885 attributeModifiers + m ([Lnet/minecraft/class_7696;)Lnet/minecraft/class_1291; method_58619 requires + p 1 requiredFeatures + m (Lnet/minecraft/class_4081;I)V + p 2 color + p 1 category + m ()Z method_5573 isBeneficial + m (ILnet/minecraft/class_1293;)Lnet/minecraft/class_2394; method_58145 method_58145 + p 1 effect + m (Lnet/minecraft/class_5131;)V method_5562 onRemoved + p 1 attributeContainer + m (II)Z method_5552 canApplyUpdateEffect + p 2 amplifier + p 1 duration + m ()Z method_5561 isInstant + m (I)Lnet/minecraft/class_1291; method_66222 fadeTicks + p 1 fadeTicks + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;I)Z method_5572 applyUpdateEffect + p 3 amplifier + p 2 entity + p 1 world + m ()I method_66226 getFadeOutThresholdTicks + m (Ljava/util/function/BiConsumer;ILnet/minecraft/class_6880;Lnet/minecraft/class_1291$class_8634;)V method_55651 method_55651 + p 3 attributeModifierCreator + p 2 attribute + m (Lnet/minecraft/class_1293;)Lnet/minecraft/class_2394; method_58146 createParticle + p 1 effect + m ()I method_66224 getFadeInTicks + m ()I method_5556 getColor + m (Lnet/minecraft/class_2394;Lnet/minecraft/class_1293;)Lnet/minecraft/class_2394; method_58147 method_58147 + p 1 effect + m (III)Lnet/minecraft/class_1291; method_66223 fadeTicks + p 1 fadeInTicks + p 2 fadeOutTicks + p 3 fadeOutThresholdTicks + m (Lnet/minecraft/class_3414;)Lnet/minecraft/class_1291; method_58616 applySound + p 1 sound + m (Lnet/minecraft/class_5131;I)V method_5555 onApplied + p 1 attributeContainer + p 2 amplifier + m (Lnet/minecraft/class_1309;I)V method_58620 playApplySound + p 1 entity + p 2 amplifier + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2960;DLnet/minecraft/class_1322$class_1323;)Lnet/minecraft/class_1291; method_5566 addAttributeModifier + p 5 operation + p 1 attribute + p 3 amount + p 2 id + m (ILjava/util/function/BiConsumer;)V method_55650 forEachAttributeModifier + p 2 consumer + p 1 amplifier + m ()I method_66225 getFadeOutTicks + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;ILnet/minecraft/class_1282;F)V method_58614 onEntityDamage + p 2 entity + p 1 world + p 4 source + p 3 amplifier + p 5 amount + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;Lnet/minecraft/class_1309;ID)V method_5564 applyInstantEffect + p 2 effectEntity + p 3 attacker + p 4 target + p 5 amplifier + p 1 world + p 6 proximity + m (Lnet/minecraft/class_1309;I)V method_52520 onApplied + p 2 amplifier + p 1 entity + m ()Ljava/lang/String; method_5567 getTranslationKey + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;ILnet/minecraft/class_1297$class_5529;)V method_58617 onEntityRemoval + p 4 reason + p 2 entity + p 3 amplifier + p 1 world + m (Lnet/minecraft/class_4081;ILnet/minecraft/class_2394;)V + p 2 color + p 3 particleEffect + p 1 category + m ()Lnet/minecraft/class_4081; method_18792 getCategory + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3414;)V method_58618 method_58618 + p 1 sound + m ()Ljava/lang/String; method_5559 loadTranslationKey + m ()Lnet/minecraft/class_2561; method_5560 getName +c net/minecraft/class_1291$class_8634 net/minecraft/entity/effect/StatusEffect$EffectAttributeModifierCreator + f D comp_2183 baseValue + f Lnet/minecraft/class_2960; comp_2182 id + f Lnet/minecraft/class_1322$class_1323; comp_2184 operation + m (I)Lnet/minecraft/class_1322; method_52522 createAttributeModifier + p 1 amplifier + m ()D comp_2183 baseValue + m ()Lnet/minecraft/class_2960; comp_2182 id + m ()Lnet/minecraft/class_1322$class_1323; comp_2184 operation + m (Lnet/minecraft/class_2960;DLnet/minecraft/class_1322$class_1323;)V + p 1 id + p 2 baseValue + p 4 operation +c net/minecraft/class_1297 net/minecraft/entity/Entity + c An object that exists in a world and has {@code double}-precision position.\nThey are registered in {@link EntityType}.\n\n

Examples of entities include players, mobs, minecarts, projectiles, and\ndropped items.\n\n

Entity can be identified by the {@link #id ID} or the {@link #uuid UUID}.\nEntity ID is an integer used in networking, and is not saved on disk. UUID is\nused to identify an entity in NBT and other places where persistence is required.\n\n

Creating and spawning entities

\nEntities must be created first, which then can be added to a world ("spawning").\nThere are multiple methods of doing this, shown on the table below:\n\n
\n\n\n\n\t\n\n\n\t\n\n\n\t\n\n\n\t\n\n\n\t\n\n
Creation & Spawning (at once)
MethodRecommended usageAdditional note
{@link EntityType#spawn}Any entityInitializes mobs.
{@link EntityType#spawnFromItemStack}Entities in items (such as buckets)Initializes mobs.
{@link ExperienceOrbEntity#spawn}Experience orbs with set amountCan spawn multiple orbs.
{@link net.minecraft.util.ItemScatterer} methodsItemsWill spawn with random velocity.
\n\n\n\n\n\t\n\n\n\t\n\n\n\t\n\n\n\t\n\n\n\t\n\n\n\t\n\n\n\t\n\n
Creation only
MethodRecommended usageAdditional note
Subclass constructorsNon-mob entities (such as projectiles)NBT and other data must be set manually.
{@link EntityType#create}Any entityInitializes mobs and supports custom NBT.
{@link EntityType#getEntityFromNbt}Entities stored in NBTCan throw exceptions.
{@link EntityType#loadEntityFromNbt}Entities stored in user-provided NBTIgnores exceptions.
{@link EntityType#loadEntityWithPassengers}Entities with passengers stored in user-provided NBTIgnores exceptions. Initializes rides.
{@link EntityType#streamFromNbt}Entities with passengers stored in NBTIgnores exceptions.
\n\n\n\n\n\t\n\n\n\t\n\n\n\t\n\n\n\t\n\n
Spawning only
MethodRecommended usageAdditional note
{@link net.minecraft.world.ServerWorldAccess#spawnEntityAndPassengers}Any entityDoes not check duplicate UUID.
{@link ServerWorld#spawnNewEntityAndPassengers}Any entityChecks duplicate UUID.
{@link net.minecraft.world.ModifiableWorld#spawnEntity}Any entityDoes not spawn passengers.
\n
\n\n

Warning: When using constructors to spawn mobs instead of\n{@link EntityType#create}, they must be manually\n{@link net.minecraft.entity.mob.MobEntity#initialize initialized} before spawning.\n\n

Discarding

\nEntities can be discarded (despawned) by calling {@link #discard}. This does not drop loot.\nTo kill entities and drop loot, call {@link #kill} or {@link damage} (with large enough damage amount). + f Z field_28628 wasInPowderSnow + f I field_60858 MAX_QUEUED_COLLISION_CHECKS + f Ljava/lang/String; field_60527 NO_GRAVITY_KEY + f Lnet/minecraft/class_238; field_6025 NULL_BOX + f Lnet/minecraft/class_5569; field_26996 changeListener + f I field_5956 fireTicks + f Ljava/lang/String; field_60528 AIR_KEY + f Ljava/util/UUID; field_6021 uuid + f Z field_64356 velocityDirty + f Ljava/lang/String; field_60525 ROTATION_KEY + f D field_5969 lastZ + f F field_26997 lastChimeIntensity + f Lnet/minecraft/class_243; field_22467 pos + f F field_6031 yaw + f Lnet/minecraft/class_2945; field_6011 dataTracker + f Z field_23807 intersectionChecked + c Whether the entity should be included in intersection checks.\n\n

An intersection check is used to prevent block placement or\nmob spawning within the bounding box.\n\n@implNote Intersection is always checked for\n{@link net.minecraft.entity.vehicle.BoatEntity},\n{@link net.minecraft.entity.vehicle.AbstractMinecartEntity}, {@link TntEntity},\n{@link net.minecraft.entity.decoration.EndCrystalEntity},\n{@link FallingBlockEntity}, and {@link LivingEntity}.\nIntersection with {@link net.minecraft.entity.decoration.ArmorStandEntity} is checked if\nit is not a {@link net.minecraft.entity.decoration.ArmorStandEntity#isMarker marker}. + f Ljava/lang/String; field_60526 PORTAL_COOLDOWN_KEY + f Lnet/minecraft/class_243; field_18276 velocity + f Ljava/util/Set; field_25599 submergedFluidTag + f Z field_5957 touchingWater + f Lnet/minecraft/class_1297; field_6034 vehicle + f Ljava/lang/String; field_60535 POS_KEY + f Lnet/minecraft/class_238; field_6005 boundingBox + f Z field_27857 inPowderSnow + f Z field_5958 glowing + f Ljava/lang/String; field_60524 MOTION_KEY + f I field_6012 age + f Lcom/google/common/collect/ImmutableList; field_5979 passengerList + f Lnet/minecraft/class_2940; field_18064 POSE + f Ljava/lang/String; field_60533 GLOWING_KEY + f Z field_6000 submergedInWater + f Ljava/lang/String; field_60534 INVULNERABLE_KEY + f D field_6036 lastY + f I field_29976 SPRINTING_FLAG_INDEX + f D field_5971 lastRenderY + f I field_29988 DEFAULT_PORTAL_COOLDOWN + c @see Entity#getDefaultPortalCooldown + f Ljava/lang/String; field_60531 FIRE_KEY + f J field_5996 pistonMovementTick + f I field_29987 MAX_RIDING_COOLDOWN + c @see Entity#removePassenger + f I field_29975 SNEAKING_FLAG_INDEX + f Ljava/lang/String; field_60532 SILENT_KEY + f I field_29978 INVISIBLE_FLAG_INDEX + f Z field_5960 noClip + f Z field_33758 hasVisualFire + f Ljava/lang/String; field_29994 UUID_KEY + f Ljava/util/List; field_57579 currentlyCheckedCollisions + f I field_5986 id + c The entity's network ID, used as a reference for synchronization over network.\nThis is not persistent across save and loads; use {@link #uuid} to identify\nan entity in those cases.\n\n@see #getId() + f I field_29989 MAX_COMMAND_TAGS + c @see Entity#addCommandTag\n@see Entity#readNbt + f I field_29977 SWIMMING_FLAG_INDEX + f Ljava/util/Set; field_6029 commandTags + f Lnet/minecraft/class_2940; field_6032 AIR + f Ljava/lang/String; field_60530 FALL_DISTANCE_KEY + f Lnet/minecraft/class_2940; field_27858 FROZEN_TICKS + f I field_5951 ridingCooldown + f Lnet/minecraft/class_2940; field_6027 CUSTOM_NAME + f D field_5999 renderDistanceMultiplier + f Lnet/minecraft/class_1299; field_5961 type + f I field_29979 ON_FIRE_FLAG_INDEX + f Ljava/lang/String; field_58050 CUSTOM_DATA_KEY + f F field_5965 pitch + f F field_28627 speed + f D field_5989 lastRenderZ + f Z field_5952 onGround + f Ljava/lang/String; field_29986 PASSENGERS_KEY + f Z field_5976 horizontalCollision + f Ljava/util/concurrent/atomic/AtomicInteger; field_5978 CURRENT_ID + c A generator of unique entity {@link #id network IDs}. The generated\nID for client entities are useless and discarded subsequently through\n{@link #setId(int)} calls. + f Lnet/minecraft/class_243; field_17046 movementMultiplier + f Lnet/minecraft/class_9787; field_51994 portalManager + f Z field_5953 firstUpdate + f I field_26994 lastChimeAge + f Ljava/lang/String; field_29985 ID_KEY + f Ljava/lang/String; field_5981 uuidString + f I field_29992 DEFAULT_MIN_FREEZE_DAMAGE_TICKS + c @see Entity#getMinFreezeDamageTicks + f Lit/unimi/dsi/fastutil/objects/Object2DoubleMap; field_5964 fluidHeight + f I field_29980 GLOWING_FLAG_INDEX + f Ljava/util/Optional; field_44784 supportingBlockPos + f Lnet/minecraft/class_2940; field_5975 NAME_VISIBLE + f Z field_34927 collidedSoftly + f Lnet/minecraft/class_243; field_64357 movement + f Z field_6009 invulnerable + f Lnet/minecraft/class_1923; field_35101 chunkPos + f Lnet/minecraft/class_2680; field_47742 stateAtPos + f Z field_36331 groundCollision + f D field_29982 SPEED_IN_LAVA_IN_NETHER + f I field_29993 FREEZING_DAMAGE_INTERVAL + c @see net.minecraft.entity.LivingEntity#tickMovement + f I field_29981 GLIDING_FLAG_INDEX + f Lnet/minecraft/class_2940; field_5962 SILENT + f D field_29984 SPEED_IN_WATER + f Lnet/minecraft/class_5819; field_5974 random + f Ljava/lang/String; field_61220 CUSTOM_NAME_KEY + f D field_29983 SPEED_IN_LAVA + f Lit/unimi/dsi/fastutil/longs/LongSet; field_54948 collidedBlockPositions + f F field_29974 MIN_RISING_BUBBLE_COLUMN_SPEED + f Z field_5992 verticalCollision + f Lnet/minecraft/class_9279; field_58051 customData + f F field_5982 lastYaw + f F field_5994 distanceTraveled + f F field_29973 DEFAULT_FRICTION + c The factor by which an entity's speed is reduced every tick.\n

\nFor example: {@code horizontalSpeed = velocity.horizontalSpeed() * FRICTION_RATE} + f Lnet/minecraft/class_2338; field_22468 blockPos + f Lnet/minecraft/class_1297$class_5529; field_26995 removalReason + f Z field_44873 forceUpdateSupportingBlockPos + f F field_6003 nextStepSoundDistance + f Z field_59667 alwaysSyncAbsolute + f Lcom/mojang/serialization/Codec; field_56631 TAG_LIST_CODEC + f Lnet/minecraft/class_1937; field_6002 world + f Z field_6037 knockedBack + f D field_6014 lastX + f D field_6038 lastRenderX + f D field_6017 fallDistance + f Lnet/minecraft/class_10774$class_10775; field_56630 collisionHandler + f F field_6004 lastPitch + f Lnet/minecraft/class_2940; field_5990 FLAGS + f F field_18066 standingEyeHeight + f Lnet/minecraft/class_2940; field_5995 NO_GRAVITY + f Lnet/minecraft/class_7422; field_38931 trackedPosition + f Lnet/minecraft/class_4048; field_18065 dimensions + f I field_6018 portalCooldown + f Ljava/util/ArrayDeque; field_54947 queuedCollisionChecks + f [D field_5993 pistonMovementDelta + f Ljava/lang/String; field_60529 ON_GROUND_KEY + f Lnet/minecraft/class_243; field_64358 lastPos + f I field_6008 timeUntilRegen + f Lorg/slf4j/Logger; field_60355 LOGGER + m ()V method_5630 updateSubmergedInWaterState + m ()Z method_5799 isTouchingWater + c Returns whether this entity's hitbox is touching water fluid. + m (I)Z method_5795 getFlag + c {@return the entity flag with index {@code flag}}\n\n

Entity flag is used to track whether the entity is sneaking, sprinting, invisible,\netc. + p 1 index + m ()V method_36975 playExtinguishSound + c Plays the {@link\nnet.minecraft.sound.SoundEvents#ENTITY_GENERIC_EXTINGUISH_FIRE} sound. + m (Lnet/minecraft/class_1927;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;F)Z method_5853 canExplosionDestroyBlock + c {@return whether {@code explosion} from this entity can destroy {@code state}}\n\n@apiNote This is used by {@link\nnet.minecraft.entity.vehicle.TntMinecartEntity} to prevent the rail from being\ndestroyed by explosion.\n\n@see net.minecraft.world.explosion.ExplosionBehavior#canDestroyBlock + p 4 state + p 5 explosionPower + p 2 world + p 3 pos + p 1 explosion + m ()F method_5751 getStandingEyeHeight + c {@return the standing eye height}\n\n

This is used for calculating the leash offset.\n\n@see #getLeashOffset + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_5856 removeClickEvents + p 0 textComponent + m (Lnet/minecraft/class_1297$class_5529;)V method_5650 remove + c Removes the entity.\n\n@see #kill\n@see #discard + p 1 reason + m (Lnet/minecraft/class_270;)Z method_5645 isTeamPlayer + c {@return whether this entity is in {@code team}}\n\n

This returns {@code false} if this entity is not in any team. + p 1 team + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_4048;F)Lnet/minecraft/class_243; method_52533 getPassengerAttachmentPos + p 3 scaleFactor + p 2 dimensions + p 1 passenger + m (F)F method_60951 lerpYaw + p 1 tickProgress + m ()V method_67633 igniteByLava + m ()F method_17682 getHeight + c {@return the height of the entity's current dimension} + m (Lnet/minecraft/class_4050;)Z method_41328 isInPose + p 1 pose + m ()Lnet/minecraft/class_1297$class_5529; method_35049 getRemovalReason + c {@return the reason for the entity's removal, or {@code null} if it is not removed} + m ()V method_61409 tickBlockCollision + m (Lnet/minecraft/class_1657;)Z method_70984 snipAllHeldLeashes + p 1 player + m (DFLnet/minecraft/class_1282;)V method_67345 handleFallDamageForPassengers + p 4 damageSource + p 3 damagePerDistance + p 1 fallDistance + m (DDD)Z method_5654 doesNotCollide + c {@return whether the bounding box with the given offsets do not collide with\nblocks or fluids} + p 3 offsetY + p 5 offsetZ + p 1 offsetX + m ()F method_5871 getTargetingMargin + c {@return the margin around the entity's bounding box where the entity\ntargeting is still successful}\n\n@apiNote {@link net.minecraft.entity.projectile.ExplosiveProjectileEntity}\noverrides this method to return {@code 1.0f}, which expands the ghast fireball's\neffective hitbox. + m (Lnet/minecraft/class_1297;)Z method_54756 method_54756 + p 0 passenger + m ()V method_33573 addAirTravelEffects + c Adds the effects of this entity when it travels in air, usually to the\nworld the entity is in.\n\n

This is only called when the entity {@linkplain #getMoveEffect() has\nany move effect}, from {@link #move(MovementType, Vec3d)} + m (D)D method_74657 calcDistanceFromBottomCollision + p 1 checkedDistance + m ()V method_5773 tick + c Ticks this entity.\n\n@apiNote This can be overridden to add additional logics. {@code super.tick();}\nshould be called in those cases.\n\n@implNote By default, this delegates all logics to {@link #baseTick}.\n\n@see net.minecraft.entity.LivingEntity#tickMovement\n@see net.minecraft.entity.mob.MobEntity#mobTick + m (F)Lnet/minecraft/class_243; method_5828 getRotationVec + p 1 tickProgress + m ()V method_5785 scheduleVelocityUpdate + m ()F method_17681 getWidth + c {@return the width of the entity's current dimension} + m (Lnet/minecraft/class_2680;)Z method_51702 canClimb + p 1 state + m (Lnet/minecraft/class_1657;)V method_5694 onPlayerCollision + c Called when a player collides with the entity. Does nothing by default.\n\n

This should be overridden if the collision logic is specific to players,\nsuch as picking up item entities, experience orbs, or arrows. + p 1 player + m ()Lnet/minecraft/class_1297$class_5799; method_33570 getMoveEffect + c Returns the possible effect(s) of an entity moving.\n\n@implNote If an entity does not emit game events or play move sounds, this\nmethod should be overridden as returning a value other than\n{@linkplain Entity.MoveEffect#ALL ALL} allows skipping some movement logic\nand boost ticking performance. + m ()V method_46395 extinguishWithSound + m (Z)V method_5834 setGlowing + c Sets whether the entity is glowing.\n\n

Glowing entities have an outline when rendered.\n\n@see #isGlowing + p 1 glowing + m (DD)V method_5872 changeLookDirection + p 1 cursorDeltaX + p 3 cursorDeltaY + m (Lnet/minecraft/class_1297;)Z method_61416 isInSameTeam + p 1 other + m (Lnet/minecraft/class_9473;)V method_66649 copyComponentsFrom + p 1 from + m (Lnet/minecraft/class_2415;)F method_5763 applyMirror + c Applies {@code mirror} to the entity's yaw. + p 1 mirror + m (Z)Z method_5822 canUsePortals + c {@return whether the entity can use nether portals and end portals}\n\n

{@link net.minecraft.entity.boss.dragon.EnderDragonEntity},\n{@link net.minecraft.entity.boss.WitherEntity}, and {@link\nnet.minecraft.entity.projectile.FishingBobberEntity} cannot use portals. + p 1 allowVehicles + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_18794 adjustMovementForPiston + p 1 movement + m (Lnet/minecraft/class_3222;)Z method_5680 canBeSpectated + c {@return whether {@code spectator} can spectate this entity}\n\n

Spectator players (other than themselves) cannot be spectated. + p 1 spectator + m ()V method_31482 unsetRemoved + c Unsets this entity's removal.\n\n

This should rarely be used; this is only used by players during teleportation. + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)V method_49787 playCombinationStepSounds + p 1 primaryState + p 2 secondaryState + m ()Lnet/minecraft/class_1297; method_5668 getRootVehicle + c {@return the lowest entity this entity is riding}\n\n@see #getVehicle + m ()I method_5676 getBurningDuration + m ()Ljava/lang/Iterable; method_5736 getPassengersDeep + c {@return an iterable of all passengers}\n\n

This is recursive; for example, if a boat has 2 pigs, ridden by player A and\nplayer B, then {@code boat.streamIntoPassengers()} would return a stream of\nthe first pig, player A, the second pig, and player B. This does not stream\nthe vehicle itself.\n\n@see #getPassengerList\n@see #streamIntoPassengers\n@see #streamSelfAndPassengers\n@see #streamPassengersAndSelf + m (Lnet/minecraft/class_3218;)V method_5768 kill + c Kills the entity.\n\n

This drops loot when applicable, and emits the {@link\nnet.minecraft.world.event.GameEvent#ENTITY_DIE} game event. + p 1 world + m ()V method_46396 reinitDimensions + m (D)Z method_5640 shouldRender + p 1 distance + m ()Z method_5675 isPushedByFluids + c {@return whether the entity is pushed by fluids}\n\n@apiNote Aquatic mobs should override this to return {@code false}.\nPlayers are not pushed by fluids if they can fly (e.g. because of game mode). + m ()V method_5760 tickPortalCooldown + m ()V method_5772 removeAllPassengers + c Causes all passengers of this entity to stop riding this entity.\n\n

For example, {@code boat.removeAllPassengers()} will dismount all passengers of\nthe boat.\n\n@see #stopRiding + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Ljava/util/List;)Z method_63612 collides + p 3 boxes + p 2 newPos + p 1 oldPos + m (DDD)V method_5632 pushOutOfBlocks + c Pushes this entity out of blocks.\n\n@apiNote This is used by {@link ItemEntity} and {@link ExperienceOrbEntity}. + p 1 x + c the entity's X position + p 3 y + c the entity bounding box's center Y position + p 5 z + c the entity's Z position + m (ZLnet/minecraft/class_2338;)V method_5700 onBubbleColumnSurfaceCollision + c Called when the entity collides with a bubble column with an air above.\n\n

This applies the bubble column velocity by default. {@link\nnet.minecraft.entity.vehicle.BoatEntity} uses this to spawn splash particles. + p 2 pos + p 1 drag + c whether the entity should be dragged downwards + m (Lnet/minecraft/class_9817;)V method_70980 tickHeldLeash + p 1 leashedEntity + m (Lnet/minecraft/class_2350$class_2351;Lnet/minecraft/class_5459$class_5460;)Lnet/minecraft/class_243; method_30633 positionInPortal + c {@return the entity's position in the portal after teleportation}\n\n@see net.minecraft.world.dimension.NetherPortal#entityPosInPortal + p 1 portalAxis + p 2 portalRect + m (Lnet/minecraft/class_1297;DD)Z method_43259 isInRange + c {@return whether both the horizontal and vertical distances between this entity and\n{@code entity} are below the passed values} + p 1 entity + p 4 verticalRadius + p 2 horizontalRadius + m (F)Lnet/minecraft/class_2338; method_43258 getPosWithYOffset + p 1 offset + m ()Z method_5876 updateWaterState + m (Lnet/minecraft/class_1282;)V method_48922 onDamaged + p 1 damageSource + m ()Z method_5767 isInvisible + c {@return whether the entity is invisible to everyone}\n\n

Invisibility status effect and {@link\nnet.minecraft.entity.decoration.ArmorStandEntity}'s {@code Invisible} NBT key can\ncause an entity to be invisible.\n\n@see #isInvisibleTo\n@see #setInvisible + m (Lnet/minecraft/class_2604;)V method_31471 onSpawnPacket + c Called on the client when the entity receives a spawn packet.\n\n

This sets the entity's position, angles, ID, and UUID. Subclasses\ncan override this to initialize additional fields. + p 1 packet + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_243;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_5664 interactAt + c Called when the player interacts with the entity at the specific position.\n\n

This should not be used in most cases; {@link #interact} should be used.\nThis should be used if the interaction's result depends on which part of the\nentity was interacted at. + p 2 hitPos + c the interaction's position offset from the entity's position + p 3 hand + p 1 player + m (Lnet/minecraft/class_6880;)V method_32876 emitGameEvent + c Emits a game event originating from this entity at this entity's position.\n\n@see #emitGameEvent(RegistryEntry, Entity) + p 1 event + m (Lnet/minecraft/class_3218;DDDLjava/util/Set;FFZ)Z method_48105 teleport + c Teleports the entity to the given position. If {@code world} differs from\nthe current world, it copies the entity and discards the current one.\n\n@see #requestTeleportAndDismount\n@see #requestTeleport\n@see #teleportTo\n@see #refreshPositionAndAngles(double, double, double, float, float) + p 2 destX + p 1 world + p 11 resetCamera + p 8 flags + p 10 pitch + p 9 yaw + p 4 destY + p 6 destZ + m (Lnet/minecraft/class_6862;D)Z method_5692 updateMovementInFluid + p 1 tag + p 2 speed + m (Z)V method_32319 setInPowderSnow + p 1 inPowderSnow + m (Lnet/minecraft/class_1297;)Z method_5698 handleAttack + c Handles a player attacking the entity. This is called before {@link\n#damage} and can be used to restrict players from attacking the entity\nby returning {@code true}.\n\n@apiNote For example, {@link net.minecraft.entity.decoration.ArmorStandEntity}\nchecks whether the player can modify blocks at the entity's position.\n\n@return whether to stop handling the attack\n\n@see World#canPlayerModifyAt + p 1 attacker + m (Lnet/minecraft/class_6862;)Z method_5777 isSubmergedIn + c {@return whether the entity is submerged in a fluid in {@code fluidTag}} + p 1 fluidTag + m ()V method_31472 discard + c Discards the entity. This is also referred to as "despawning".\n\n

This does not cause the entity to drop loot. + m ()Z method_52535 isInFluid + m ()V method_5646 extinguish + c Extinguishes this entity.\n\n@apiNote This is used by water, {@link net.minecraft.block.LeveledCauldronBlock},\nand splash water bottles in vanilla. + m (Z)V method_5803 setSilent + c Sets whether the entity is silent.\n\n

This is saved under the {@code Silent} NBT key. + p 1 silent + m (Lnet/minecraft/class_9473;Lnet/minecraft/class_9331;)Z method_66650 copyComponentFrom + p 1 from + p 2 type + m ()V method_5730 setOnFireFromLava + c Sets the entity on fire from lava, applies lava damage, and plays the burning sound.\n\n@implNote Fire from lava lasts 15 seconds by default. + m ()Z method_5778 isBeingRainedOn + c {@return whether it is raining at the entity's position} + m (D)V method_5840 setRenderDistanceMultiplier + c Sets the render distance multiplier.\n\n

This is only used on the client. + p 0 value + m (Lnet/minecraft/class_6862;)D method_5861 getFluidHeight + c {@return the height of the fluid in {@code fluid} tag} + p 1 fluid + m (FF)V method_5710 setRotation + c Sets the entity's yaw and pitch. + p 2 pitch + p 1 yaw + m ()Z method_5851 isGlowing + c {@return whether the entity is glowing, checking the entity flags on the client}\n\n

Glowing entities have an outline when rendered.\n\n@see #isGlowingLocal\n@see #setGlowing + m ()Z method_5863 canHit + c {@return whether the entity can be hit with a projectile or be targeted by\nthe player crosshair} + m (DDD)V method_33567 requestTeleportAndDismount + c Requests the entity to teleport to the given position. If the entity is\na player, this also dismounts the player.\n\n@see #teleportTo\n@see #teleport(ServerWorld, double, double, double, Set, float, float)\n@see #requestTeleport\n@see #refreshPositionAndAngles(double, double, double, float, float) + p 3 destY + p 1 destX + p 5 destZ + m ()Lnet/minecraft/class_1297; method_31483 getFirstPassenger + c {@return the first passenger of the {@linkplain #getPassengerList passenger list},\nor {@code null} if there is no passengers}\n\n

Such passenger is usually also the {@linkplain #getControllingPassenger the\ncontrolling passenger}.\n\n@see #getControllingPassenger\n@see #hasControllingPassenger\n@see #getPassengerList + m (Lnet/minecraft/class_243;FF)Lnet/minecraft/class_243; method_18795 movementInputToVelocity + c {@return a vector with the horizontal direction being {@code yaw} degrees and the\nabsolute value being {@code movementInput} normalized and multiplied by {@code speed}} + p 2 yaw + p 0 movementInput + p 1 speed + m ()Z method_49108 canBeHitByProjectile + m ()V method_31473 attemptTickInVoid + c Calls {@link #tickInVoid()} when the entity is 64 blocks below the world's {@linkplain net.minecraft.world.HeightLimitView#getBottomY() minimum Y position}. + m ()I method_5669 getAir + c {@return the air left for the entity, in ticks}\n\n

Air is decremented every tick if the entity's eye is submerged in water.\nIf this is {@code -20}, the air will be reset to {@code 0} and the entity takes\na drowning damage.\n\n@apiNote {@link net.minecraft.entity.mob.WaterCreatureEntity} reuses the air to\nindicate the entity's air breathed when the entity is in water. If the entity is\nnot touching a water, the air decrements, and the entity drowns in the same way\nas other entities.\n\n@see #getMaxAir\n@see #setAir\n@see net.minecraft.entity.mob.WaterCreatureEntity#tickWaterBreathingAir + m (FF)V method_60608 setAngles + p 1 yaw + p 2 pitch + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_66250 spawnBubbleColumnParticles + p 1 pos + p 0 world + m (DZLnet/minecraft/class_2680;Lnet/minecraft/class_2338;)V method_5623 fall + c Called when the entity falls. Flying mobs should override this to do nothing.\n\n@implNote If on ground, this calls {@link net.minecraft.block.Block#onLandedUpon}, which can add or\nreduce fall damage, emits {@link net.minecraft.world.event.GameEvent#HIT_GROUND}, then calls {@link #onLanding}.\nOtherwise, if {@code heightDifference} is negative, it subtracts that value from\n{@link #fallDistance}. + p 1 heightDifference + p 3 onGround + p 4 state + p 5 landedPosition + m (Lnet/minecraft/class_1937;)V method_51502 setWorld + p 1 world + m ()Z method_5862 doesRenderOnFire + c {@return whether an entity should render as being on fire}\n\n

This returns whether the entity {@linkplain #isOnFire is on fire} and\nis not a spectator.\n\n@see #isOnFire + m ()Z method_5753 isFireImmune + c {@return whether the entity is immune to {@linkplain\nnet.minecraft.registry.tag.DamageTypeTags#IS_FIRE fire damage}}\n\n@see EntityType.Builder#makeFireImmune + m (Ljava/lang/String;)Z method_5780 addCommandTag + c Adds a command tag to this entity. An entity can have up to {@code 1024}\ncommand tags.\n\n

Command tags are set using the {@linkplain net.minecraft.server.command.TagCommand\n/tag command}, and is different from entity type tags defined in data packs.\n\n@return whether the command tag was successfully added + p 1 tag + m ()Z method_5765 hasVehicle + c {@return whether this entity is riding an entity}\n\n

This is the opposite of {@link #hasPassengers}.\n\n@see #startRiding(Entity)\n@see #startRiding(Entity, boolean)\n@see #stopRiding\n@see #hasPassengers + m ()V method_75725 beforePacketsSent + m ()[Lnet/minecraft/class_243; method_70985 getHeldQuadLeashOffsets + m (Lnet/minecraft/class_1297;)V method_5697 pushAwayFrom + p 1 entity + m (Lnet/minecraft/class_243;)D method_5707 squaredDistanceTo + c {@return the squared distance between this entity and the given position} + p 1 vector + m (DDD)V method_5762 addVelocity + p 5 deltaZ + p 3 deltaY + p 1 deltaX + m (Lnet/minecraft/class_1297;)V method_5793 removePassenger + c Removes {@code passenger} from the passengers. This should not be called\nnormally; call {@link #stopRiding} instead. (Note that vehicles are not\npassed to that method; {@code entity.stopRiding()} is the equivalent of {@code\nvehicle.removePassenger(entity)}.)\n\n@throws IllegalStateException when the method is called directly + p 1 passenger + m ()Z method_42148 hasControllingPassenger + c {@return whether there is a passenger in control of this entity}\n\n@see #getControllingPassenger\n@see #getPassengerList\n@see #getFirstPassenger + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;)V method_5716 updateKilledAdvancementCriterion + p 1 entityKilled + p 2 damageSource + m (Lnet/minecraft/class_2945$class_9222;)V method_5693 initDataTracker + c Initializes data tracker.\n\n@apiNote Subclasses should override this and add to the builder any data\nthat needs to be tracked. + p 1 builder + m ()I method_5850 getSafeFallDistance + c {@return the maximum height of a fall the entity takes during pathfinding} + m (Lnet/minecraft/class_1282;F)Z method_64420 sidedDamage + p 2 amount + p 1 source + m ()Lnet/minecraft/class_241; method_5802 getRotationClient + m (DDD)V method_45166 requestTeleportOffset + c Requests the entity to teleport to the current position offset by the given amount.\n\n

For players, this sends the teleport packet. For other entities,\nthis just sets the position of the entity and its passengers.\n\n@see #teleport\n@see #requestTeleport(double, double, double)\n@see #requestTeleportAndDismount\n@see #refreshPositionAndAngles(double, double, double, float, float) + p 1 offsetX + p 3 offsetY + p 5 offsetZ + m (Lnet/minecraft/class_2680;)V method_51296 playSecondaryStepSound + p 1 state + m (Lnet/minecraft/class_5454;)V method_64612 sendTeleportPacket + p 1 teleportTarget + m ()Z method_21749 bypassesSteppingEffects + c {@return whether the entity should bypass effects caused by stepping}\n\n

This returns {@link #isSneaking} by default.\n\n@apiNote Stepping effects include magma blocks dealing fire damage, turtle eggs\nbreaking, or sculk sensors triggering.\n\n@see #bypassesLandingEffects + m (Z)V method_5728 setSprinting + c Sets whether the entity is sprinting.\n\n@see #isSprinting + p 1 sprinting + m ()Z method_5740 hasNoGravity + c {@return whether the entity has no gravity}\n\n

Entities using {@link net.minecraft.entity.ai.control.FlightMoveControl} has\nno gravity. This is saved under the {@code NoGravity} NBT key. + m ()Z method_5655 isInvulnerable + c {@return whether the entity is invulnerable}\n\n

This is saved on the {@code Invulnerable} NBT key.\n\n@implNote Invulnerable entities are immune from all damages except {@link\nnet.minecraft.entity.damage.DamageTypes#OUT_OF_WORLD}\nand damages by creative mode players by default.\n\n@see #isInvulnerableTo\n@see #setInvulnerable + m ()Z method_5776 isFlappingWings + c {@return whether the entity is flapping their wings}\n\n

Entities flapping their wings will call {@link #addFlapEffects} inside\n{@link #addAirTravelEffects}. + m ()V method_5982 checkDespawn + c Checks whether the entity should be despawned.\n\n

To despawn this entity, call {@link #discard}.\n\n@see #discard + m ()Lnet/minecraft/class_2945; method_5841 getDataTracker + m (Lnet/minecraft/class_2470;)F method_5832 applyRotation + c Applies {@code rotation} to the entity's yaw. + p 1 rotation + m ()V method_67635 defrost + m (Lnet/minecraft/class_1297;)Z method_5794 isConnectedThroughVehicle + c {@return whether this entity and another entity share the same root vehicle}\n\n@see #getRootVehicle\n@see #getVehicle + p 1 entity + c the other entity + m ()Lnet/minecraft/class_243; method_76333 getKineticAttackMovement + m (ZLnet/minecraft/class_243;)V method_65342 setMovement + p 1 onGround + p 2 movement + m (F)Lnet/minecraft/class_243; method_5836 getCameraPosVec + p 1 tickProgress + m (Lnet/minecraft/class_1297;D)Z method_24516 isInRange + c {@return whether the distance between this entity and {@code entity} is below\n{@code radius}} + p 2 radius + p 1 entity + m ()I method_5748 getMaxAir + c {@return the maximum amount of air the entity can hold, in ticks}\n\n

Most entities have the max air of 300 ticks, or 15 seconds.\n{@link net.minecraft.entity.passive.DolphinEntity} has 4800 ticks or 4\nminutes; {@link net.minecraft.entity.passive.AxolotlEntity} has 6000 ticks\nor 5 minutes. Note that this does not include enchantments.\n\n@see #getAir\n@see #setAir + m (Lnet/minecraft/class_4050;)V method_18380 setPose + p 1 pose + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_5688 interact + c Called when a player interacts with this entity. + p 2 hand + c the hand the player used to interact with this entity + p 1 player + c the player + m (DDD)V method_24203 refreshPositionAfterTeleport + p 1 x + p 5 z + p 3 y + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_243; method_52538 getPassengerRidingPos + p 1 passenger + m ()D method_29241 getSwimHeight + c {@return the minimum submerged height of this entity in fluid so that it\nwould be affected by fluid physics}\n\n@apiNote This is also used by living entities for checking whether to\nstart swimming.\n\n@implNote This implementation returns {@code 0.4} if its\n{@linkplain #getStandingEyeHeight standing eye height} is larger than\n{@code 0.4}; otherwise it returns {@code 0.0} for shorter entities.\nThe swim height of 0 allows short entities like baby animals\nto start swimming to avoid suffocation. + m (Lnet/minecraft/class_3414;)V method_43077 playSoundIfNotSilent + p 1 event + m ()I method_54757 getPlayerPassengers + m (F)V method_5734 playSwimSound + p 1 volume + m (F)F method_61414 getLerpedPitch + p 1 tickProgress + m ()Z method_5638 shouldSetPositionOnLoad + m (F)V method_5879 animateDamage + c Called on the client to animate the entity's damage (the wobble). + p 1 yaw + m (Lnet/minecraft/class_4050;)F method_18381 getEyeHeight + c {@return the eye height for {@code pose}} + p 1 pose + m ()Z method_74016 isPartlyTouchingWater + c {@return whether this entity's hitbox is touching, but not fully submerged in, water} + m ()Lnet/minecraft/class_8109; method_48923 getDamageSources + m ()Lnet/minecraft/class_238; method_33332 calculateBoundingBox + m ()I method_31477 getBlockX + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V method_73092 updateTrackedPositionAndAngles + m ()Lnet/minecraft/class_2350; method_5735 getHorizontalFacing + m (FF)V method_73094 updateTrackedAngles + m (Lnet/minecraft/class_1297;)Z method_5818 canAddPassenger + c {@return whether {@code entity} can ride this entity}\n\n

Returning {@code false} causes other entities to be unable to ride this entity. For\nexample, {@link net.minecraft.entity.vehicle.BoatEntity} uses this to restrict how many\npassengers can ride the same boat (2 for normal, 1 for chest boat).\n\n

This is the opposite of {@link #canStartRiding}.\n\n@see #startRiding(Entity)\n@see #startRiding(Entity, boolean)\n@see #canStartRiding\n@see #stopRiding\n@see #hasVehicle + p 1 passenger + m ()Lnet/minecraft/class_7422; method_43389 getTrackedPosition + m (DDDFF)V method_5641 updatePositionAndAngles + p 8 pitch + p 7 yaw + p 5 z + p 3 y + p 1 x + m (Lnet/minecraft/class_243;FF)V method_63615 setLastPositionAndAngles + p 1 pos + p 2 yaw + p 3 pitch + m ()Z method_66245 isInterpolating + m ()Lnet/minecraft/class_1923; method_31476 getChunkPos + c {@return the chunk position of the entity} + m (F)V method_5636 setBodyYaw + c Sets the body yaw of this entity.\n\n@see #getBodyYaw + p 1 bodyYaw + m (Z)V method_70669 setAlwaysSyncAbsolute + p 1 alwaysSyncAbsolute + m (Lnet/minecraft/class_243;)V method_60491 addVelocity + p 1 vec + m ()I method_32312 getFrozenTicks + c {@return how long the entity is freezing, in ticks}\n\n

If this is equal to or above {@link #getMinFreezeDamageTicks}, the entity\nreceives freezing damage.\n\n@see #setFrozenTicks\n@see #getFreezingScale\n@see #isFrozen\n@see #getMinFreezeDamageTicks + m ()V method_5746 onSwimmingStart + m ()Z method_5624 isSprinting + c {@return whether the entity is sprinting}\n\n

Swimming is also considered as sprinting.\n\n#setSprinting + m ()Z method_5733 shouldRenderName + c {@return whether to render the name of the entity}\n\n

This returns {@code true} for players and {@link #isCustomNameVisible} for\nother entities.\n\n@see #isCustomNameVisible + m ()I method_31478 getBlockY + m ()Z method_5757 isInsideWall + c {@return whether the entity is in a wall and should suffocate}\n\n

This returns {@code false} if {@link #noClip} is {@code true}; otherwise,\nthis returns {@code true} if the eye position is occupied by a {@linkplain\nnet.minecraft.block.AbstractBlock.Settings#suffocates block that can suffocate}. + m ()V method_5842 tickRiding + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Z method_5721 isTouchingWaterOrRain + c {@return whether this entity is touching water or is being rained on (but does not check\nfor a bubble column)}\n\n@see net.minecraft.entity.Entity#isTouchingWater()\n@see net.minecraft.entity.Entity#isBeingRainedOn()\n@see net.minecraft.entity.Entity#isInFluid() + m (Ljava/util/function/BiConsumer;)V method_42147 updateEventHandler + c Called when the entity is loaded to register game event handlers.\n\n

Entities that listen to game events should first create an instance of\n{@link net.minecraft.world.event.listener.EntityGameEventHandler} in the\nentity's constructor, and override this to call {@code callback}. For example:\n\n

{@code\nif (this.world instanceof ServerWorld serverWorld) {\n  callback.accept(this.handler, serverWorld);\n}\n}
+ p 1 callback + m (DDD)V method_5859 requestTeleport + c Requests the entity to teleport to the given position.\n\n

For players, this sends the teleport packet. For other entities,\nthis just sets the position of the entity and its passengers.\n\n@see #teleportTo\n@see #teleport(ServerWorld, double, double, double, Set, float, float)\n@see #requestTeleportOffset(double, double, double)\n@see #requestTeleportAndDismount\n@see #refreshPositionAndAngles(double, double, double, float, float) + p 3 destY + p 5 destZ + p 1 destX + m ()Lnet/minecraft/class_243; method_60478 getMovement + m ()F method_5867 calculateNextStepSoundDistance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_36971 canModifyAt + c {@return whether the entity can modify the world at {@code pos}}\n\n

This returns {@code true} for most entities. Players check {@link\nWorld#canPlayerModifyAt} to prevent them from modifying entities in the spawn\nprotection or outside the world border. {@link\nnet.minecraft.entity.projectile.ProjectileEntity} delegates it to the owner\nif the owner is a player; if the owner is a non-player entity, this returns\nthe value of {@link net.minecraft.world.GameRules#DO_MOB_GRIEFING}, and ownerless\nprojectiles are always allowed to modify the world.\n\n@see World#canPlayerModifyAt + p 2 pos + p 1 world + m ()F method_32313 getFreezingScale + c {@return the current freezing scale}\n\n

Freezing scale is calculated as {@code\nMath.min(1, getFrozenTicks() / getMinFreezeDamageTicks())}.\n\n@see #setFrozenTicks\n@see #getFrozenTicks\n@see #isFrozen\n@see #getMinFreezeDamageTicks + m ()Lnet/minecraft/class_243; method_75117 getHeadRotationVector + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1935;)Lnet/minecraft/class_1542; method_5706 dropItem + c Drops one {@code item} at the entity's position.\n\n@return the spawned item entity, or {@code null} if called on the client\n\n@see #dropItem(ServerWorld, ItemConvertible, int)\n@see #dropStack(ServerWorld, ItemStack)\n@see #dropStack(ServerWorld, ItemStack, float) + p 2 item + p 1 world + m ()Z method_64270 shouldPlayBurnSoundInLava + m ()Ljava/util/List; method_5685 getPassengerList + c {@return the list of passengers of this entity}\n\n@see #getControllingPassenger\n@see #getFirstPassenger\n@see #streamIntoPassengers\n@see #streamSelfAndPassengers\n@see #streamPassengersAndSelf\n@see #getPassengersDeep + m (DDD)V method_43391 updateTrackedPosition + p 3 y + p 5 z + p 1 x + m ()I method_31479 getBlockZ + m (Lnet/minecraft/class_1297;)V method_5719 copyPositionAndRotation + c Sets the entity's position and rotation the same as {@code entity}.\n\n@see #refreshPositionAndAngles(double, double, double, float, float) + p 1 entity + m ()Z method_5732 isAttackable + c {@return whether the entity can be attacked by players}\n\n

Note that this is not called for most entities defined in vanilla as unattackable\n(such as {@link net.minecraft.entity.ItemEntity} and {@link net.minecraft.entity.ExperienceOrbEntity}) as trying to attack them\nkicks the player.\n\n@see net.minecraft.server.network.ServerPlayNetworkHandler#onPlayerInteractEntity + m (Lnet/minecraft/class_1297;)Z method_5804 startRiding + c Starts riding {@code entity}.\n\n

For example, {@code player.startRiding(horse)} causes the player to ride a\nhorse; the opposite, {@code horse.startRiding(player)}, will cause the horse\nto ride a player.\n\n

This fails when this entity is already riding the entity (or vice versa),\nor when this entity {@linkplain #canStartRiding does not allow riding other entities}\n(or {@linkplain #canAddPassenger vice versa}).\nIf this entity is already riding another entity, it will stop riding that entity first.\n\n@return whether this entity successfully started riding\n\n@see #startRiding(Entity, boolean)\n@see #canAddPassenger\n@see #canStartRiding\n@see #stopRiding\n@see #hasVehicle + p 1 entity + m (Lnet/minecraft/class_243;)V method_45319 addVelocityInternal + p 1 velocity + m ()Z method_32314 isFrozen + c {@return whether the entity is frozen}\n\n

Frozen entities take freezing damage. Entity becomes frozen {@link\n#getMinFreezeDamageTicks} ticks after starting to freeze.\n\n@see #getFrozenTicks\n@see #setFrozenTicks\n@see #getFreezingScale\n@see #getMinFreezeDamageTicks + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_9817;)Z method_70981 method_70981 + p 1 leashable + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)Z method_31475 method_31475 + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_243;)Lnet/minecraft/class_1542; method_71764 dropStack + p 1 world + p 3 offset + p 2 stack + m ()Lnet/minecraft/class_243; method_43390 getSyncedPos + c {@return the position of the entity synced to clients}\n\n

This is the same as {@link #getPos} except for paintings which return the\nattachment position.\n\n@see #getPos\n@see #getBlockPos\n@see #getChunkPos + m ()Z method_52534 shouldControlVehicles + m (Lnet/minecraft/class_1927;)Z method_5659 isImmuneToExplosion + c {@return whether the entity is immune from explosion knockback and damage}\n\n

Invisible {@link net.minecraft.entity.decoration.ArmorStandEntity} and\nemerging or digging {@link net.minecraft.entity.mob.WardenEntity} are\nimmune from explosions. + p 1 explosion + m (F)F method_61415 getLerpedYaw + p 1 tickProgress + m (B)V method_5711 handleStatus + c Called on the client when the entity receives an entity status from the server.\nThey are often used to spawn particles or play sounds.\nSubclasses can override this method to handle custom entity status.\n\n@apiNote To send an entity status, use {@link World#sendEntityStatus}.\n\n@see net.minecraft.entity.EntityStatuses + p 1 status + m ()Lnet/minecraft/class_243; method_61411 getLastRenderPos + m (Lnet/minecraft/class_2680;)V method_5622 onBlockCollision + c Called when this entity's collision box intersects {@code state}.\n\n@see net.minecraft.block.AbstractBlock#onEntityCollision + p 1 state + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_51297 playStepSounds + p 2 state + p 1 pos + m ()V method_23311 refreshPosition + m ()V method_30229 resetPortalCooldown + c Resets the entity's portal cooldown to the default.\n\n@see #getDefaultPortalCooldown + m ()Z method_40071 shouldEscapePowderSnow + c {@return whether the entity should escape from powder snow}\n\n

This returns {@code true} if the entity is/was in powder snow and\nif it can freeze.\n\n@see #canFreeze\n@see #isFrozen + m (F)V method_5847 setHeadYaw + c Sets the head yaw of this entity.\n\n@see #getHeadYaw + p 1 headYaw + m (D)D method_23324 getBodyZ + p 1 widthScale + m ()Lnet/minecraft/class_3414; method_5672 getHighSpeedSplashSound + m ()V method_5848 stopRiding + c Stops riding the vehicle if present.\n\n

For example, if {@code player} is riding on a horse, {@code player.stopRiding()}\nwill dismount that player from the horse.\n\n@see #removeAllPassengers + m ()Z method_5715 isSneaking + c {@return whether the entity is sneaking}\n\n

This only returns {@code true} if the entity is a player and that player\nis pressing the Sneak key. See also {@link #isInSneakingPose}.\n\n@see #setSneaking\n@see #isInSneakingPose + m (Lnet/minecraft/class_1297;)V method_37216 method_37216 + p 0 player + m ()I method_32315 getMinFreezeDamageTicks + c {@return how long it takes for the entity to be completely frozen and receive\nfreezing damage, in ticks}\n\n@see #getFrozenTicks\n@see #setFrozenTicks\n@see #getFreezingScale\n@see #isFrozen + m (Lnet/minecraft/class_243;)Z method_39759 hasCollidedSoftly + p 1 adjustedMovement + m ()Ljava/util/Optional; method_5991 getLootTableKey + m (Lnet/minecraft/class_243;)V method_73095 updateTrackedPosition + m (Lnet/minecraft/class_1297;)V method_56918 onExplodedBy + p 1 entity + m (Lnet/minecraft/class_1297;ZLnet/minecraft/class_2338;)V method_67123 applyBubbleColumnSurfaceEffects + p 2 pos + p 1 drag + p 0 entity + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_243;)V method_5844 slowMovement + c Calls {@link #onLanding} and slows this entity.\n\n

This means that the entity will avoid taking fall damage.\n\n@apiNote This should be called inside {@link\nnet.minecraft.block.AbstractBlock#onEntityCollision}. This is used by cobwebs,\nsweet berries, and powder snow. + p 2 multiplier + p 1 state + m (Lnet/minecraft/class_11368;)V method_5651 readData + p 1 view + m ()D method_7490 getGravity + m ()Lnet/minecraft/class_9066; method_56072 getAttachments + m (Lnet/minecraft/class_1282;F)V method_64419 serverDamage + p 1 source + p 2 amount + m ()Ljava/lang/String; method_5653 getSavedEntityId + m ()D method_5824 getRenderDistanceMultiplier + c {@return the entity render distance multiplier}\n\n

This is only usable on the client. + m ()Z method_36361 isGlowingLocal + c {@return whether the entity is glowing, without checking the entity flags}\n\n@apiNote This is only used to copy entity data to NBT when bucketing.\n\n@see #isGlowing\n@see #setGlowing + m (Lnet/minecraft/class_2183$class_2184;Lnet/minecraft/class_243;)V method_5702 lookAt + c Changes this entity's pitch and yaw to look at {@code target}. + p 1 anchorPoint + p 2 target + m ()Z method_32316 canFreeze + c {@return whether the entity can freeze}\n\n@implNote Entities cannot be frozen if they are in the {@link\nnet.minecraft.registry.tag.EntityTypeTags#FREEZE_IMMUNE_ENTITY_TYPES} tag. In addition to this, {@link\nLivingEntity} cannot be frozen if they are spectator or if they wear an\nitem inside {@link net.minecraft.registry.tag.ItemTags#FREEZE_IMMUNE_WEARABLES} tag. + m (I)V method_5855 setAir + c Sets the air left for the entity in ticks.\n\n

Air is decremented every tick if the entity's eye is submerged in water.\nIf this is {@code -20}, the air will be reset to {@code 0} and the entity takes\na drowning damage.\n\n@apiNote {@link net.minecraft.entity.mob.WaterCreatureEntity} reuses the air to\nindicate the entity's air breathed when the entity is in water. If the entity is\nnot touching a water, the air decrements, and the entity drowns in the same way\nas other entities.\n\n@see #getMaxAir\n@see #getAir\n@see net.minecraft.entity.mob.WaterCreatureEntity#tickWaterBreathingAir + p 1 air + m (D)D method_23323 getBodyY + p 1 heightScale + m (Lnet/minecraft/class_243;FF)V method_66246 updateTrackedPositionAndAngles + p 1 pos + m ()Z method_66249 canMoveVoluntarily + m ()Lnet/minecraft/class_2350; method_5755 getMovementDirection + m ()Z method_5810 isPushable + c {@return whether the entity can be pushed by other entities} + m ()Z method_5701 isSilent + c {@return whether the entity is silent}\n\n

Silent entities should not make sounds. {@link #playSound} checks this method by\ndefault, but if a sound is played manually, this has to be checked too.\n\n

This is saved under the {@code Silent} NBT key. + m (Z)V method_24830 setOnGround + p 1 onGround + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;F)Z method_64397 damage + c Applies a damage to this entity. The exact implementation differs between subclasses.\n\n

{@link net.minecraft.entity.LivingEntity} has health value, and damaging the entity decreases it. This\nalso handles shields, extra damage to helmets for falling blocks, setting the attacker,\nplaying hurt sound, etc.\n\n

Some entities like {@link net.minecraft.entity.ItemEntity} also have health value, which the overridden\nmethod decrements. There also exist several entities, like {@link\nnet.minecraft.entity.decoration.EndCrystalEntity}, where any damage discards the entity\n(perhaps with an explosion).\n\n

If this is overridden, it must check the result of {@link net.minecraft.entity.LivingEntity#isInvulnerableTo} and\nreturn early.\n\n@return whether the entity was actually damaged\n\n@see #isAlwaysInvulnerableTo\n@see net.minecraft.entity.LivingEntity#isInvulnerableTo\n@see net.minecraft.entity.LivingEntity#modifyAppliedDamage + p 1 world + p 3 amount + p 2 source + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_238; method_65341 calculateDefaultBoundingBox + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5454;)Lnet/minecraft/class_1297; method_64611 teleportSameDimension + p 1 world + p 2 teleportTarget + m (I)V method_56073 setOnFireForTicks + p 1 ticks + m (Lnet/minecraft/class_1297;ZZ)Z method_5873 startRiding + c Starts riding {@code entity}.\n\n

For example, {@code player.startRiding(horse)} causes the player to ride a\nhorse; the opposite, {@code horse.startRiding(player)}, will cause the horse\nto ride a player.\n\n

This fails when this entity is already riding the entity (or vice versa),\nor when this entity {@linkplain #canStartRiding does not allow riding other entities}\n(or {@linkplain #canAddPassenger vice versa}) unless {@code force} is {@code true}.\nIf this entity is already riding another entity, it will stop riding that entity first.\n\n@return whether this entity successfully started riding\n\n@see #startRiding(Entity)\n@see #canAddPassenger\n@see #canStartRiding\n@see #stopRiding\n@see #hasVehicle + p 2 force + c whether to bypass the entity's rideability check + p 3 emitEvent + p 1 entity + m ()Lnet/minecraft/class_1299; method_5864 getType + m ()Lnet/minecraft/class_1297; method_5854 getVehicle + c {@return the entity this entity rides, or {@code null} if there is none}\n\n@see #getRootVehicle\n@see #getControllingVehicle + m (F)V method_5639 setOnFireFor + c Sets the entity on fire for {@code seconds} seconds. + p 1 seconds + m ()Z method_66248 isControlledByMainPlayer + m (D)D method_23322 getParticleX + p 1 widthScale + m ()D method_23321 getZ + m ()V method_5713 checkWaterState + m (Lnet/minecraft/class_1313;Lnet/minecraft/class_243;)V method_5784 move + p 2 movement + p 1 type + m ()Z method_65038 isControlledByPlayer + m (FZFZ)V method_64578 rotate + p 4 relativePitch + p 2 relativeYaw + p 3 pitch + p 1 yaw + m ()I method_20802 getFireTicks + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1542; method_5775 dropStack + c Drops {@code stack} at the entity's position.\n\n@return the spawned item entity, or {@code null} if the stack is empty or if called\non the client\n\n@see #dropItem(ServerWorld, ItemConvertible)\n@see #dropItem(ServerWorld, ItemConvertible, int)\n@see #dropStack(ServerWorld, ItemStack, float) + p 2 stack + p 1 world + m (Lnet/minecraft/class_1297;)Z method_37217 method_37217 + p 0 passenger + m ()Z method_66247 isLogicalSideForUpdatingMovement + m ()Lnet/minecraft/class_243; method_5720 getRotationVector + m (DDD)D method_5649 squaredDistanceTo + c {@return the squared distance between this entity and the given position} + p 1 x + p 3 y + p 5 z + m ()D method_23320 getEyeY + m ()Z method_5869 isSubmergedInWater + c {@return whether this entity's hitbox is fully submerged in water} + m (DFZ)Lnet/minecraft/class_239; method_5745 raycast + p 1 maxDistance + p 3 tickProgress + p 4 includeFluids + m (I)V method_20803 setFireTicks + c Sets the entity on fire for {@code ticks} ticks.\n\n@see #setOnFireFor + p 1 fireTicks + m (Lnet/minecraft/class_1297;)V method_5627 addPassenger + c Adds {@code passenger} as a passenger. This should not be called\nnormally; call {@link #startRiding(Entity)} instead. (Note that\nthe entity to pass and the entity to call are swapped in this case;\n{@code entity.startRiding(vehicle)} is the equivalent of {@code\nvehicle.addPassenger(entity)}.)\n\n@throws IllegalStateException when the method is called directly + p 1 passenger + m (Z)V method_5880 setCustomNameVisible + c Sets whether the custom name should be shown.\n\n

This is stored on {@code CustomNameVisible} NBT key.\n\n@see #isCustomNameVisible + p 1 visible + m (DDD)V method_23327 setPos + c Sets the position of this entity.\n\n

This should be used when overriding {@link #tick} to change the\nentity's position; in other cases, use {@link #setPosition(double, double, double)}\nor {@link #refreshPositionAndAngles(double, double, double, float, float)}.\n\n@see #setPosition(double, double, double)\n@see #refreshPositionAndAngles(double, double, double, float, float) + p 3 y + p 5 z + p 1 x + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_14245 getWorldSpawnPos + p 1 world + p 2 basePos + m ()V method_68259 popQueuedCollisionCheck + m (Lnet/minecraft/class_243;)V method_33574 setPosition + c Sets the position and refreshes the bounding box.\n\n

This should be called after creating an instance of non-living entities.\nFor living entities, {@link #refreshPositionAndAngles} should be used instead.\n\n@see #refreshPositionAndAngles\n@see #teleportTo + p 1 pos + m (Ljava/lang/String;)Z method_5738 removeCommandTag + c Removes a command tag from this entity.\n\n

Command tags are set using the {@linkplain net.minecraft.server.command.TagCommand\n/tag command}, and is different from entity type tags defined in data packs.\n\n@return whether the command tag was successfully removed + p 1 tag + m (D)D method_23316 getBodyX + p 1 widthScale + m (Lnet/minecraft/class_3610;Lnet/minecraft/class_2338;Lnet/minecraft/class_243;Lnet/minecraft/class_243;)Z method_66648 collidesWithFluid + p 2 fluidPos + p 3 oldPos + p 4 newPos + p 1 state + m (Ljava/util/List;)V method_68260 tickBlockCollisions + p 1 checks + m ()Lnet/minecraft/class_2680; method_55667 getBlockStateAtPos + c {@return the block state at the entity's position}\n\n

The result is cached.\n\n@see #getBlockPos\n@see #getLandingBlockState\n@see #getSteppingBlockState + m ()Z method_33724 isRegionUnloaded + c {@return whether any part of this entity's bounding box is in an unloaded\nregion of the world the entity is in}\n\n@implNote This implementation expands this entity's bounding box by 1 in\neach axis and checks whether the expanded box's smallest enclosing\naxis-aligned integer box is fully loaded in the world. + m (Lnet/minecraft/class_1792;)Lnet/minecraft/class_243; method_40123 getHandPosOffset + c {@return the offset of the hand that holds {@code item}}\n\n

This returns {@link Vec3d#ZERO} if the entity is not a player.\n\n@apiNote The offset is applied to the position of the firework rocket particle\nwhen used by players. + p 1 item + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_51700 method_51700 + p 1 pos + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_243;Lnet/minecraft/class_238;Lnet/minecraft/class_1937;Ljava/util/List;)Lnet/minecraft/class_243; method_20736 adjustMovementForCollisions + p 2 entityBoundingBox + p 1 movement + p 4 collisions + p 3 world + p 0 entity + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_10774$class_10775;Lit/unimi/dsi/fastutil/longs/LongSet;I)I method_72084 checkBlockCollision + p 1 from + p 2 to + p 3 collisionHandler + p 4 collidedBlockPositions + m ()Z method_27298 shouldSpawnSprintingParticles + m ()Lnet/minecraft/class_2680; method_43261 getLandingBlockState + c {@return the block state at the landing position}\n\n@implNote Landing position is the entity's position, with {@code 0.2} subtracted\nfrom the Y coordinate. This means that, for example, if a player is on a carpet on\na soul soil, the soul soil's position would be returned.\n\n@see #getLandingPos() + m (Lnet/minecraft/class_1297;)Z method_5821 hasPassengerDeep + c {@return whether {@code passenger} is riding this entity or any of its passengers}\n\n@see #getPassengerList\n@see #streamIntoPassengers\n@see #streamSelfAndPassengers\n@see #streamPassengersAndSelf\n@see #getPassengersDeep\n@see #hasPlayerRider + p 1 passenger + m ()V method_38785 onLanding + c Called when the entity lands on a block. + m (Lnet/minecraft/class_1297;)D method_5858 squaredDistanceTo + c {@return the squared distance between this entity and {@code entity}} + p 1 entity + m (Lnet/minecraft/class_1676;)Lnet/minecraft/class_9109; method_56071 getProjectileDeflection + p 1 projectile + m (Lnet/minecraft/class_4048;)Z method_60490 recalculateDimensions + p 1 previous + m ()F method_23326 getVelocityMultiplier + m ()V method_5839 spawnSprintingParticles + m ()V method_76440 tickLastPos + m ()Z method_6034 canActVoluntarily + m (Lnet/minecraft/class_1297$class_10365;)V method_71966 addQueuedCollisionChecks + p 1 queuedCollisionCheck + m (F)F method_5705 getYaw + p 1 tickProgress + m (DDDFF)V method_5808 refreshPositionAndAngles + c Sets the entity's position, yaw, and pitch, and refreshes several position-related\nfields.\n\n

This should be used over other methods for setting positions of mobs.\n\n@see #refreshPositionAndAngles(BlockPos, float, float) + p 1 x + p 3 y + p 5 z + p 8 pitch + p 7 yaw + m ()V method_18382 calculateDimensions + c Calculates and sets the dimension (bounding box) of the entity and refreshes\nits position. + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;ZZLnet/minecraft/class_243;)Z method_51701 stepOnBlock + p 2 state + p 1 pos + p 5 movement + p 4 emitEvent + p 3 playSound + m (Lnet/minecraft/class_1297;Z)V method_67124 applyBubbleColumnEffects + p 1 drag + p 0 entity + m (Lnet/minecraft/class_9797;Lnet/minecraft/class_2338;)V method_60697 tryUsePortal + p 2 pos + p 1 portal + m ()F method_5718 getBrightnessAtEyes + m (Z)V method_5660 setSneaking + c Sets whether the entity is sneaking.\n\n@see #isSneaking\n@see #isInSneakingPose + p 1 sneaking + m (Z)V method_5684 setInvulnerable + c Sets whether the entity is invulnerable.\n\n

This is saved on the {@code Invulnerable} NBT key.\n\n@implNote Invulnerable entities are immune from all damages except {@link\nnet.minecraft.entity.damage.DamageTypes#OUT_OF_WORLD}\nand damages by creative mode players by default.\n\n@see #isInvulnerableTo\n@see #isInvulnerable + p 1 invulnerable + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1937;Ljava/util/List;Lnet/minecraft/class_238;)Ljava/util/List; method_59920 findCollisionsForMovement + p 2 regularCollisions + p 1 world + p 0 entity + p 3 movingEntityBoundingBox + m (Lnet/minecraft/class_243;)V method_18799 setVelocity + p 1 velocity + m ()F method_23313 getJumpVelocityMultiplier + m (I)V method_32317 setFrozenTicks + c Sets how long the entity is freezing in ticks.\n\n

If this is equal to or above {@link #getMinFreezeDamageTicks}, the entity\nreceives freezing damage.\n\n@see #setFrozenTicks\n@see #getFreezingScale\n@see #isFrozen\n@see #getMinFreezeDamageTicks + p 1 frozenTicks + m (DFLnet/minecraft/class_1282;)Z method_5747 handleFallDamage + c Called when an entity falls.\n\n

Flying mobs and mobs immune to fall damage should override this to do nothing.\nMobs with reduced fall damage should override this method to apply reduced damage instead.\nSome entities explode instead of applying fall damage, like {@link\nnet.minecraft.entity.vehicle.TntMinecartEntity}.\n\n@return whether to play the sound when falling on honey block; {@code false} for all\nentities except horses and llamas + p 1 fallDistance + p 3 damagePerDistance + p 4 damageSource + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;Lnet/minecraft/class_9066;)Lnet/minecraft/class_243; method_55665 getPassengerAttachmentPos + p 1 passenger + p 2 attachments + p 0 vehicle + m ()Lnet/minecraft/class_1799; method_31480 getPickBlockStack + c {@return the stack for creative "pick block" functionality, or {@code null}\nif there is none}\n\n

If the entity has an item representation (such as boats or minecarts),\nthis should be overridden to return a new stack. Note that {@link\nnet.minecraft.entity.mob.MobEntity} handles the spawn eggs.\n{@link net.minecraft.entity.decoration.ItemFrameEntity} instead returns\nthe copy of the stack held in the frame. + m ()Lnet/minecraft/class_243; method_33571 getEyePos + c {@return the position of the eye}\n\n@see #getEyeY + m ()Lnet/minecraft/class_2568; method_5769 getHoverEvent + c {@return the hover event referencing this entity} + m (Lnet/minecraft/class_1297;)Z method_5626 hasPassenger + c {@return whether {@code passenger} is a passenger of this entity}\n\n@see #getPassengerList\n@see #streamIntoPassengers\n@see #streamSelfAndPassengers\n@see #streamPassengersAndSelf\n@see #getPassengersDeep\n@see #hasPassenger(Predicate) + p 1 passenger + m (Lnet/minecraft/class_1282;)Z method_5643 clientDamage + p 1 source + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_243; method_24829 updatePassengerForDismount + c {@return the position of the dismounted {@code passenger}}\n\n

Vehicles should override this to return a suitable dismounting position\nfor the passenger. Check the implementation of the subclass for details.\n\n@see #getPassengerDismountOffset\n@see net.minecraft.entity.Dismounting + p 1 passenger + m (Lnet/minecraft/class_2338;)Z method_51849 isSupportedBy + p 1 pos + m (Lnet/minecraft/class_1297;)Z method_5722 isTeammate + c {@return whether this entity and {@code other} are in the same team}\n\n

This returns {@code false} if this entity is not in any team. + p 1 other + m (D)D method_23325 getParticleZ + p 1 widthScale + m (Lnet/minecraft/class_1297;)V method_24201 updatePassengerPosition + p 1 passenger + m (Lnet/minecraft/class_3231;)Lnet/minecraft/class_2596; method_18002 createSpawnPacket + c {@return a packet to notify the clients of the entity's spawning}\n\n@apiNote Subclasses should return {@code new EntitySpawnS2CPacket(this)},\nunless they use a custom spawning packet. + p 1 entityTrackerEntry + m ()V method_5825 tickInVoid + c Called when the entity is 64 blocks below the world's {@linkplain net.minecraft.world.HeightLimitView#getBottomY() minimum Y position}.\n\n

{@linkplain LivingEntity Living entities} use this to deal {@linkplain net.minecraft.entity.damage.DamageTypes#OUT_OF_WORLD out of world damage}. + m ()D method_56989 getFinalGravity + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1313;)Lnet/minecraft/class_243; method_18796 adjustMovementForSneaking + p 2 type + p 1 movement + m ()V method_5801 addFlapEffects + c Adds the effects of this entity flapping, usually to the world the entity\nis in.\n\n

The actual flapping logic should be done in {@link #tick()} instead.\n\n

This is only called when the entity {@linkplain #isFlappingWings() is flapping wings}\nand the entity {@linkplain #getMoveEffect() has any move effect}, from\n{@link #addAirTravelEffects()}. + m ()Lnet/minecraft/class_3414; method_5625 getSplashSound + m (Lnet/minecraft/class_1297;)Z method_30949 collidesWith + c {@return whether this entity cannot occupy the same space with {@code other}}\n\n

This returns {@code false} if {@code other} is {@linkplain #isConnectedThroughVehicle\nconnected through vehicles}.\n\n@see #isCollidable + p 1 other + m (F)Lnet/minecraft/class_243; method_31166 getClientCameraPosVec + p 1 tickProgress + m ()F method_36454 getYaw + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1937;Lnet/minecraft/class_238;)Ljava/util/List; method_74656 findCollisions + p 2 box + p 1 world + p 0 entity + m (FF)V method_63617 setLastAngles + p 1 lastYaw + p 2 lastPitch + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;)V method_64166 tickBlockCollision + p 2 pos + p 1 lastRenderPos + m ()D method_23319 getRandomBodyY + m (ZZLnet/minecraft/class_243;)V method_60607 setMovement + p 1 onGround + p 2 horizontalCollision + p 3 movement + m ()Ljava/util/stream/Stream; method_31484 streamIntoPassengers + c {@return a recursive stream of all passengers}\n\n

This is recursive; for example, if a boat has 2 pigs, ridden by player A and\nplayer B, then {@code boat.streamIntoPassengers()} would return a stream of\nthe first pig, player A, the second pig, and player B. This does not stream\nthe vehicle itself.\n\n@see #getPassengerList\n@see #streamSelfAndPassengers\n@see #streamPassengersAndSelf\n@see #getPassengersDeep + m ()V method_63613 updateLastPosition + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Z method_66654 setApplicableComponent + p 1 type + p 2 value + m (Lnet/minecraft/class_1799;)V method_66652 copyComponentsFrom + p 1 stack + m ()Z method_61410 shouldTickBlockCollision + m ()Z method_48921 couldAcceptPassenger + c {@return {@code true} if this entity supports passengers in general} + m (Z)V method_33572 setOnFire + p 1 onFire + m ()F method_36455 getPitch + m ()Z method_18276 isInSneakingPose + c {@return whether the entity is in a crouching pose}\n\n

Compared to {@link #isSneaking()}, it only makes the entity appear\ncrouching and does not bring other effects of sneaking, such as no less\nobvious name label rendering, no dismounting while riding, etc.\n\n

This is used by vanilla for non-player entities to crouch, such as\nfor foxes and cats. This is also used when the entity is a player and\nthe player would otherwise collide with blocks (for example, when the\nplayer is in a 1.5 blocks tall tunnel). + m (Lnet/minecraft/class_238;)V method_5857 setBoundingBox + p 1 boundingBox + m (FF)Lnet/minecraft/class_243; method_18863 getOppositeRotationVector + p 2 yaw + p 1 pitch + m (DDD)Z method_5727 shouldRender + p 5 cameraZ + p 3 cameraY + p 1 cameraX + m ()Lnet/minecraft/class_268; method_5781 getScoreboardTeam + c {@return the scoreboard team the entity belongs to, or {@code null} if there is none} + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297$class_4738;)V method_5865 updatePassengerPosition + p 2 positionUpdater + p 1 passenger + m (Lnet/minecraft/class_2561;)V method_5665 setCustomName + c Sets the custom name of the entity to {@code name} (or {@code null} to\nremove the custom name). + p 1 name + m ()D method_23318 getY + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)V method_66653 setComponent + p 1 type + p 2 value + m (DDF)Lnet/minecraft/class_243; method_24826 getPassengerDismountOffset + c {@return the offset for dismounting the passenger} + p 2 passengerWidth + p 4 passengerYaw + p 0 vehicleWidth + m ()V method_63614 updateLastAngles + m ()Lnet/minecraft/class_243; method_18798 getVelocity + m ()Z method_5807 isCustomNameVisible + c {@return whether the custom name should be shown}\n\n

This is stored on {@code CustomNameVisible} NBT key.\n\n@see #setCustomNameVisible + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;)V + p 2 world + p 1 type + m (Ljava/util/function/Predicate;)Z method_5703 hasPassenger + c {@return whether there is a passenger of this entity matching {@code predicate}}\n\n@see #getPassengerList\n@see #streamIntoPassengers\n@see #streamSelfAndPassengers\n@see #streamPassengersAndSelf\n@see #getPassengersDeep\n@see #hasPassenger(Entity) + p 1 predicate + m (Lnet/minecraft/class_2350$class_2351;D)D method_18797 calculatePistonMovementFactor + p 2 offsetFactor + p 1 axis + m (Lnet/minecraft/class_3222;)V method_5742 onStoppedTrackingBy + c Called when {@code player} stops tracking this entity.\n\n

Entities with boss bars like {@link net.minecraft.entity.boss.WitherEntity}\nshould override this to remove the player from the boss bar. + p 1 player + m (IDDDDD)V method_52532 lerpPosAndRotation + p 1 step + p 10 pitch + p 8 yaw + p 6 z + p 4 y + p 2 x + m (Lnet/minecraft/class_243;)V method_5750 setVelocityClient + p 1 clientVelocity + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;Lnet/minecraft/class_1308;)Z method_71765 shearEquipment + p 4 entity + p 2 hand + p 3 shears + p 1 player + m (I)V method_5838 setId + c Sets the network ID of this entity.\n\n@apiNote This is used by client-side networking logic to set up the network\nID of entities from the server. This shouldn't be used by server-side logic\nas the network ID is already properly initialized on entity object construction.\n\n@see #getId() + p 1 id + m ()D method_23317 getX + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_3218;Lnet/minecraft/class_5454;)Lnet/minecraft/class_1297; method_64614 teleportCrossDimension + p 2 to + p 3 teleportTarget + p 1 from + m ()Z method_5709 isLiving + m ()Z method_76798 isMovingHorizontally + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_49788 getStepSoundPos + p 1 pos + m ()V method_18375 detach + c Removes all the passengers and removes this entity from any vehicles it is riding. + m (Lnet/minecraft/class_1297;)Z method_30948 isCollidable + c {@return whether other entities cannot occupy the same space with this entity}\n\n

If {@code true}, other entities can stand on this entity without falling.\n{@link net.minecraft.entity.vehicle.BoatEntity} and {@link\nnet.minecraft.entity.mob.ShulkerEntity} has this behavior.\n\n@see #collidesWith + p 1 entity + m ()Z method_30230 hasPortalCooldown + c {@return whether the entity's portal cooldown is in effect} + m ()V method_37215 playAmethystChimeSound + m ()I method_5806 getDefaultPortalCooldown + c {@return the entity's default portal cooldown}\n\n

This is 300 ticks by default, or 10 ticks for players.\n\n@see #resetPortalCooldown + m (DDD)V method_5814 setPosition + c Sets the position and refreshes the bounding box.\n\n

This should be called after creating an instance of non-living entities.\nFor living entities, {@link #refreshPositionAndAngles} should be used instead.\n\n@see #refreshPositionAndAngles\n@see #teleportTo + p 3 y + p 1 x + p 5 z + m ()V method_60698 tickPortalTeleportation + m (Z)V method_5796 setSwimming + c Sets whether the entity is swimming.\n\n@see #isSwimming + p 1 swimming + m (Lnet/minecraft/class_1297$class_5799;Lnet/minecraft/class_243;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_61407 applyMoveEffect + p 1 moveEffect + p 2 movement + p 3 landingPos + p 4 landingState + m (Lnet/minecraft/class_238;)Z method_5629 doesNotCollide + p 1 box + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_5712 playStepSound + p 2 state + p 1 pos + m (Lnet/minecraft/class_1657;)Z method_5756 isInvisibleTo + c {@return whether the entity is invisible to {@code player}}\n\n

Spectators can see all entities, and entities on the same team as player's can\nsee all entities if {@link AbstractTeam#shouldShowFriendlyInvisibles} returns\n{@code true}. Otherwise, this returns {@link #isInvisible}.\n\n@see AbstractTeam#shouldShowFriendlyInvisibles\n@see #isInvisible + p 1 player + m ()Ljava/lang/String; method_5845 getUuidAsString + c {@return the entity's UUID as string}\n\n

This is a shortcut of {@code getUuid().toString()}.\n\n@see #getUuid + m ()Lnet/minecraft/class_243; method_5663 getRotationVecClient + m (FF)Lnet/minecraft/class_243; method_5631 getRotationVector + p 2 yaw + p 1 pitch + m (Lnet/minecraft/class_1297;)F method_5739 distanceTo + c {@return the distance between this entity and {@code entity}} + p 1 entity + m (ZLnet/minecraft/class_243;)V method_51703 updateSupportingBlockPos + p 2 movement + p 1 onGround + m (Lnet/minecraft/class_1282;)Z method_64421 isAlwaysInvulnerableTo + p 1 damageSource + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1282;)Z method_5874 onKilledOther + c Called when this entity kills {@code other}.\n\n@apiNote {@link net.minecraft.entity.mob.ZombieEntity} overrides this to convert the\nkilled villager to a zombie villager.\n\n@return whether the entity died (and not converted to another entity) + p 1 world + p 2 other + p 3 damageSource + m ()Lnet/minecraft/class_2350; method_58149 getFacing + m (Lnet/minecraft/class_11372;)V method_5647 writeData + p 1 view + m ()Z method_20232 isInSwimmingPose + c {@return whether the entity is in swimming pose}\n\n

This includes crawling entities and entities using elytra that aren't fall-flying.\nPlayers start crawling if they would otherwise collide with blocks (for example,\nwhen the player is in a 1 block tall tunnel).\n\n@see #isCrawling + m ()Lnet/minecraft/class_10584; method_66233 getInterpolator + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_17835 adjustMovementForCollisions + p 1 movement + m ()Z method_5805 isAlive + c {@return whether the entity is alive}\n\n

For non-{@link LivingEntity}, this is the same as negating {@link #isRemoved}.\n{@link LivingEntity} checks the entity's health in addition to the removal. + m ()Z method_5817 hasPlayerRider + c {@return whether a player is riding this entity or any of its passengers}\n\n@implNote The default implementation is very inefficient.\n\n@see #getPassengerList\n@see #streamIntoPassengers\n@see #streamSelfAndPassengers\n@see #streamPassengersAndSelf\n@see #getPassengersDeep\n@see #hasPassengerDeep + m ()Z method_70987 isFlyingVehicle + m ()V method_5670 baseTick + m (Lnet/minecraft/class_243;)V method_63618 setLastPosition + p 1 pos + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Ljava/lang/Object; method_66651 castComponentValue + p 1 value + p 0 type + m (FI)V method_5683 updateTrackedHeadRotation + p 1 yaw + p 2 interpolationSteps + m ()Lnet/minecraft/class_2338; method_43260 getLandingPos + c {@return the landing position}\n\n@implNote Landing position is the entity's position, with {@code 0.2} subtracted\nfrom the Y coordinate. This means that, for example, if a player is on a carpet on\na soul soil, the soul soil's position would be returned.\n\n@see #getSteppingPos()\n@see #getLandingBlockState() + m (Lnet/minecraft/class_243;)V method_29495 refreshPositionAfterTeleport + p 1 pos + m ()Z method_21750 bypassesLandingEffects + c {@return whether the entity should bypass effects caused by landing on a block}\n\n

This returns {@link #isSneaking} by default.\n\n@apiNote Landing effects include slime blocks nullifying the fall damage and\nslime blocks and beds bouncing the entity.\n\n@see #bypassesSteppingEffects + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_243; method_55668 getVehicleAttachmentPos + p 1 vehicle + m (Lnet/minecraft/class_3222;)V method_5837 onStartedTrackingBy + c Called when {@code player} starts tracking this entity.\n\n

Entities with boss bars like {@link net.minecraft.entity.boss.WitherEntity}\nshould override this to add the player to the boss bar. + p 1 player + m ()Lnet/minecraft/class_2680; method_25936 getSteppingBlockState + c {@return the block state at the stepping position}\n\n@implNote Stepping position is the entity's position, with {@code 1e-05} subtracted\nfrom the Y coordinate. This means that, for example, if a player is on a carpet on\na soul soil, the carpet's position would be returned.\n\n@see #getSteppingPos() + m ()F method_5791 getHeadYaw + c {@return the head yaw of the entity}\n\n@see #setHeadYaw + m ()Lnet/minecraft/class_2338; method_23312 getSteppingPos + c {@return the stepping position}\n\n@implNote Stepping position is the entity's position, with {@code 1e-05} subtracted\nfrom the Y coordinate. This means that, for example, if a player is on a carpet on\na soul soil, the carpet's position would be returned.\n\n@see #getLandingPos()\n@see #getSteppingBlockState() + m (Lnet/minecraft/class_1297;)Z method_5860 canStartRiding + c {@return whether this entity can ride {@code entity}}\n\n

Returning {@code false} causes the entity to be unable to ride other entities. For\nexample, {@link net.minecraft.entity.boss.WitherEntity} overrides this to return\n{@code false}, so withers cannot ride boats or minecarts. Note that this check can be\nbypassed by passing {@code true} to {@link #startRiding(Entity, boolean)}.\n\n

This is the opposite of {@link #canAddPassenger}.\n\n@see #startRiding(Entity)\n@see #startRiding(Entity, boolean)\n@see #canAddPassenger\n@see #stopRiding\n@see #hasVehicle + p 1 entity + m ()Lnet/minecraft/class_3619; method_5657 getPistonBehavior + c {@return the behavior of the piston for this entity}\n\n

This is {@link PistonBehavior#NORMAL} by default. {@link net.minecraft.entity.AreaEffectCloudEntity},\n{@link net.minecraft.entity.MarkerEntity}, and marker {@link net.minecraft.entity.decoration.ArmorStandEntity}\nreturn {@link PistonBehavior#IGNORE}, causing the piston to not affect the entity's\nposition. Other piston behaviors are inapplicable to entities, and treated like\n{@link PistonBehavior#NORMAL}. + m (F)V method_36457 setPitch + p 1 pitch + m (DDD)V method_30634 updatePosition + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/class_10182;Lnet/minecraft/class_10182;Ljava/util/Set;)V method_74862 setPosition + p 3 flags + p 2 newPos + p 1 currentPos + m (IZ)V method_5729 setFlag + c Sets the entity flag with index {@code flag} to {@code value}.\n\n

Entity flag is used to track whether the entity is sneaking, sprinting, invisible,\netc. + p 1 index + p 2 value + m (Lnet/minecraft/class_2338;FF)V method_5725 refreshPositionAndAngles + c Sets the entity's position, yaw, and pitch, and refreshes several position-related\nfields.\n\n

This should be used over other methods for setting positions of mobs.\n\n@see #refreshPositionAndAngles(double, double, double, float, float) + p 2 yaw + p 1 pos + p 3 pitch + m (Ljava/util/List;Lnet/minecraft/class_10774$class_10775;)V method_65037 checkBlockCollisions + p 2 collisionHandler + p 1 queuedCollisionChecks + m ()Z method_5681 isSwimming + c {@return whether the entity is swimming}\n\n

An entity is swimming if it is touching water, not riding any entities, and is\nsprinting. Note that to start swimming, the entity must first be submerged in\nwater.\n\n@see #setSwimming + m ()Z method_21751 isSneaky + m ()V method_5790 updateSwimming + m (Z)V method_5875 setNoGravity + c Sets whether the entity has no gravity.\n\n

Entities using {@link net.minecraft.entity.ai.control.FlightMoveControl} has\nno gravity. This is saved under the {@code NoGravity} NBT key. + p 1 noGravity + m (Lnet/minecraft/class_1297;)V method_5644 onPassengerLookAround + p 1 passenger + m (Lnet/minecraft/class_243;Lnet/minecraft/class_238;Ljava/util/List;)Lnet/minecraft/class_243; method_20737 adjustMovementForCollisions + p 2 collisions + p 1 entityBoundingBox + p 0 movement + m (Lnet/minecraft/class_11368;)V method_5749 readCustomData + p 1 view + m (Ljava/util/UUID;)V method_67634 method_67634 + p 1 uuid + m (Lnet/minecraft/class_5454;Lnet/minecraft/class_3218;)V method_70666 teleportSpectatingPlayers + p 2 from + p 1 teleportTarget + m ()Z method_33189 occludeVibrationSignals + c {@return whether the entity should not emit vibrations}\n\n

By default, wool or carpet {@linkplain ItemEntity item entities}, and\n{@link net.minecraft.entity.mob.WardenEntity} do not emit vibrations. + m (Lnet/minecraft/class_2338;)V method_60950 addPortalChunkTicketAt + p 1 pos + m ()Z method_52172 isOnRail + m ()Lnet/minecraft/class_1799; method_59958 getWeaponStack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1937;)Z method_61113 canTeleportBetween + p 1 from + p 2 to + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;F)Lnet/minecraft/class_1542; method_5699 dropStack + c Drops {@code stack} at the entity's position with the given Y offset.\n\n@return the spawned item entity, or {@code null} if the stack is empty or if called\non the client\n\n@see #dropItem(ServerWorld, ItemConvertible)\n@see #dropItem(ServerWorld, ItemConvertible, int)\n@see #dropStack(ServerWorld, ItemStack) + p 1 world + p 2 stack + p 3 yOffset + m ()V method_71965 clearQueuedCollisionChecks + m ()Lnet/minecraft/class_2338; method_23314 getVelocityAffectingPos + m ()Lnet/minecraft/class_4050; method_18376 getPose + m ()V method_22862 resetPosition + m (Lnet/minecraft/class_1297$class_5529;)V method_64615 onRemove + c Called when the entity is about to be removed. + p 1 reason + m ()Z method_70986 hasQuadLeashAttachmentPoints + m (Lnet/minecraft/class_3218;)Lnet/minecraft/class_2168; method_5671 getCommandSource + c {@return a command source which represents this entity} + p 1 world + m ()I method_22861 getTeamColorValue + c {@return the team color value, or {@code 0xFFFFFF} if the entity is not in\na team or the color is not set} + m (Z)V method_5764 onBubbleColumnCollision + c Called when the entity collides with a bubble column without an air above.\n\n

This applies the bubble column velocity by default. + p 1 drag + c whether the entity should be dragged downwards + m (Lnet/minecraft/class_3414;FF)V method_5783 playSound + c Plays {@code sound} at this entity's position with the entity's {@linkplain\n#getSoundCategory sound category} if the entity is {@linkplain #isSilent not silent}. + p 3 pitch + p 1 sound + p 2 volume + m (Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_5813 method_5813 + p 1 style + m ()Lnet/minecraft/class_8942$class_11336; method_71370 getErrorReporterContext + m ()Z method_24828 isOnGround + c {@return whether the entity is on the ground} + m (Lnet/minecraft/class_4050;)Lnet/minecraft/class_4048; method_18377 getDimensions + c {@return the dimensions of the entity with the given {@code pose}}\n\n@see #getWidth\n@see #getHeight + p 1 pose + m (F)V method_36456 setYaw + p 1 yaw + m ()Z method_5809 isOnFire + c {@return whether the entity is on fire and is not fire immune}\n\n@see #isFireImmune + m (F)Lnet/minecraft/class_243; method_18864 getOppositeRotationVector + p 1 tickProgress + m (I)V method_51850 setPortalCooldown + p 1 portalCooldown + m (Lnet/minecraft/class_238;Lnet/minecraft/class_2338;)Z method_30022 method_30022 + p 2 pos + m ()F method_49476 getStepHeight + m (Lnet/minecraft/class_129;)V method_5819 populateCrashReport + c Populates the crash report section to include the entity's information. + p 1 section + m ()V method_70983 limitFallDistance + m (F)Lnet/minecraft/class_243; method_30950 getLerpedPos + p 1 deltaTicks + m ()Z method_49693 shouldDismountUnderwater + c {@return whether this vehicle should dismount the passenger if submerged underwater} + m ()V method_51295 playSwimSound + m ()Z method_5771 isInLava + c {@return whether the entity is in lava} + m (Lnet/minecraft/class_11372;)Z method_5786 saveSelfData + p 1 view + m (Lnet/minecraft/class_2680;)Z method_49790 shouldPlayAmethystChimeSound + p 1 state + m ()Lnet/minecraft/class_2561; method_23315 getDefaultName + c {@return the default name of the entity}\n\n@see EntityType#getName + m (Lnet/minecraft/class_243;FF)V method_60949 refreshPositionAndAngles + p 2 yaw + p 1 pos + p 3 pitch + m (Lnet/minecraft/class_1927;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3610;F)F method_5774 getEffectiveExplosionResistance + c {@return the blast resistance of {@code blockState} for an explosion caused\nby this entity}\n\n@apiNote {@link net.minecraft.entity.projectile.WitherSkullEntity} overrides\nthis to implement the "charged/blue skull" behavior.\n\n@see net.minecraft.world.explosion.ExplosionBehavior#getBlastResistance + p 1 explosion + p 4 blockState + p 5 fluidState + p 2 world + p 3 pos + p 6 max + m ()Z method_48155 canSprintAsVehicle + m ()Lnet/minecraft/class_3414; method_5737 getSwimSound + m ()Z method_70668 isAtCloudHeight + m (Ljava/util/UUID;)V method_5826 setUuid + c Sets the UUID of the entity to {@code uuid}.\n\n

This should not be called after spawning the entity.\n\n@see #getUuid\n@see #getUuidAsString + p 1 uuid + m (Lnet/minecraft/class_1657;)Z method_70988 detachAllHeldLeashes + p 1 player + m (Lnet/minecraft/class_9817;)V method_70982 onHeldLeashUpdate + p 1 heldLeashable + m (Lnet/minecraft/class_1297;)V method_5878 copyFrom + c Copies serializable data and nether portal data from {@code original}.\n\n@see #readNbt\n@see #teleportTo + p 1 original + m ()Z method_5782 hasPassengers + c {@return whether another entity is riding this entity}\n\n

This is the opposite of {@link #hasVehicle}.\n\n@see #startRiding(Entity)\n@see #startRiding(Entity, boolean)\n@see #stopRiding\n@see #hasVehicle + m ()Z method_73187 isInteractable + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1538;)V method_5800 onStruckByLightning + c Called when the entity is struck by lightning. This sets the entity on fire and\ndeals lightning damage by default; entities that do not take such damage should\noverride this method to do nothing. + p 1 world + p 2 lightning + m (Lnet/minecraft/class_238;Ljava/util/List;FF)[F method_59921 collectStepHeights + p 1 collisions + p 0 collisionBox + p 3 stepHeight + m (Lnet/minecraft/class_11372;)V method_5652 writeCustomData + p 1 view + m (FLnet/minecraft/class_243;)V method_5724 updateVelocity + c Updates the entity's velocity to add a vector in the direction of the entity's yaw\nwhose absolute value is {@code movementInput} normalized and multiplied by {@code speed}.\n\n

This is usually called inside overridden {@link LivingEntity#travel} if the entity is\ntouching water; see {@link net.minecraft.entity.passive.FishEntity} for an example. + p 1 speed + p 2 movementInput + m ()Z method_20448 isCrawling + c {@return whether the entity is crawling}\n\n

An entity is crawling if it is in swimming pose, but is not touching water.\nPlayers start crawling if they would otherwise collide with blocks (for example,\nwhen the player is in a 1 block tall tunnel).\n\n@see #isInSwimmingPose + m ()I method_51848 getPortalCooldown + m (Lnet/minecraft/class_10182;Ljava/util/Set;)V method_61412 setPosition + p 1 pos + p 2 flags + m ()Lnet/minecraft/class_1297; method_49694 getControllingVehicle + c {@return the entity this entity rides and controls, or {@code null} if there is none}\n\n@see #getRootVehicle\n@see #getVehicle + m ()Z method_7325 isSpectator + c {@return whether the entity is a spectator}\n\n

This returns {@code false} unless the entity is a player in spectator game mode. + m ()V method_36209 onRemoved + c Called on the client side when the entity is removed.\n\n@apiNote To handle entity removal server-side, override {@link #remove} and\nadd custom logic there. + m ()Lnet/minecraft/class_3419; method_5634 getSoundCategory + c {@return the sound category for sounds from this entity}\n\n

This is used by {@link #playSound(SoundEvent, float, float)} and defaults to\n{@link SoundCategory#NEUTRAL}. Hostile entities should override this to\nreturn {@link SoundCategory#HOSTILE}.\n\n@see #playSound(SoundEvent, float, float) + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_30632 collidesWithStateAtPos + c {@return whether the entity collides with the block {@code state} at {@code pos}} + p 1 pos + p 2 state + m ()Lnet/minecraft/class_5455; method_56673 getRegistryManager + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;ZZ)V method_72085 afterCollisionCheck + p 3 blockCollision + p 2 pos + p 4 fluidCollision + p 1 world + m ()Lnet/minecraft/class_5819; method_59922 getRandom + m ()Z method_5696 canAvoidTraps + c {@return whether the entity cannot trigger pressure plates or tripwires}\n\n

{@link net.minecraft.entity.passive.BatEntity} is the only entity in vanilla\nthat can avoid traps. + m ()V method_56990 applyGravity + m (Z)V method_5648 setInvisible + c Sets whether the entity is invisible to everyone.\n\n

Invisibility status effect and {@link\nnet.minecraft.entity.decoration.ArmorStandEntity}'s {@code Invisible} NBT key can\ncause an entity to be invisible.\n\n@see #isInvisible\n@see #isInvisibleTo + p 1 invisible + m (Lnet/minecraft/class_1297;)V method_49789 method_49789 + p 0 entity + m ()Z method_21752 isDescending + c {@return whether the entity is actively descending}\n\n

This affects scaffolding and powder snow (if the entity can walk on it), and\nreturns {@link #isSneaking} by default. This returns {@code false} for entities\ndescending a ladder, since the entity is not actively doing so, instead letting\nthe gravity to do so. + m (DDDZ)V method_65942 handleFall + p 7 onGround + p 1 xDifference + p 3 yDifference + p 5 zDifference + m (DDD)V method_18800 setVelocity + p 5 z + p 1 x + p 3 y + m ()V method_49792 teleportPassengers + m (F)F method_5695 getPitch + p 1 tickProgress + m ()V method_29239 dismountVehicle + c Dismounts the vehicle if present.\n

\nFor players, will not trigger any networking changes. Use {@link #stopRiding()} instead.\n\n@see #stopRiding() + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1297;)V method_32875 emitGameEvent + c Emits a game event originating from another entity at this entity's position.\n\n

A common example is a game event called in {@link #interact}, where the player\ninteracting with the entity is the emitter of the event.\n\n@see #emitGameEvent(RegistryEntry) + p 2 entity + c the entity that emitted the game event, or {@code null} if there is none + p 1 event + m ()Ljava/util/Set; method_5752 getCommandTags + c {@return all command tags the entity belongs to}\n\n

Scoreboard tags are set using the {@linkplain net.minecraft.server.command.TagCommand\n/tag command}, and is different from entity type tags defined in data packs. + m ()V method_30076 removeFromDimension + c Removes this entity from the current dimension.\n\n

This calls {@link #setRemoved} by default. Subclasses can add other logics,\nsuch as setting the stack count of {@linkplain LivingEntity#getEquippedItems equipped stacks}\nto zero.\n\n@see #teleportTo + m (F)Lnet/minecraft/class_243; method_30951 getLeashPos + c {@return the position of the leash this entity holds}\n\n

This is different from {@link #getLeashOffset}; this method is called on the entity\nthat holds the leash.\n\n@see #getLeashOffset\n@see #getStandingEyeHeight + p 1 tickProgress + m (Lnet/minecraft/class_11372;)Z method_5662 saveData + p 1 view + m (Lnet/minecraft/class_1297;)Z method_5779 isPartOf + c {@return whether this entity is part of {@code entity}}\n\n

This is just an equality check for all entities except the ender dragon part.\nAn ender dragon is composed of several entity parts; each part returns {@code true}\nfor {@code part.isPartOf(dragon)}. + p 1 entity + m (Lnet/minecraft/class_5454;)Lnet/minecraft/class_1297; method_5731 teleportTo + c Teleports this entity to another location, potentially in another world.\n\n

Note if teleported to a different world, entities (excluding server player entities) are completely recreated at the destination.\n\n@return the entity after teleporting + p 1 teleportTarget + m (Lnet/minecraft/class_5454;Lnet/minecraft/class_1297;)Lnet/minecraft/class_5454; method_64613 getPassengerTeleportTarget + p 1 teleportTarget + p 2 passenger + m ()Z method_70667 shouldAlwaysSyncAbsolute + m ()Lnet/minecraft/class_1309; method_5642 getControllingPassenger + c {@return the passenger in control of this entity, or {@code null} if there is none}\n\n

Rideable entities should override this to return the entity. This is\nusually {@code #getFirstPassenger}.\n\n@see #hasControllingPassenger\n@see #getPassengerList\n@see #getFirstPassenger +c net/minecraft/class_1297$class_5799 net/minecraft/entity/Entity$MoveEffect + c The move effect represents possible effects of an entity moving, such as\nplaying sounds, emitting game events, none, or both.\n\n@see Entity#getMoveEffect() + f Z field_28634 sounds + f Z field_28635 events + f Lnet/minecraft/class_1297$class_5799; field_28630 NONE + f Lnet/minecraft/class_1297$class_5799; field_28631 SOUNDS + f Lnet/minecraft/class_1297$class_5799; field_28632 EVENTS + f Lnet/minecraft/class_1297$class_5799; field_28633 ALL + m (Ljava/lang/String;IZZ)V + p 3 sounds + p 4 events + m ()Z method_33578 playsSounds + c Returns whether this means an entity may play sounds as it moves. + m ()Z method_33577 emitsGameEvents + c Returns whether this means an entity may emit game events as it moves. + m ()Z method_33576 hasAny + c Returns whether this means an entity may emit game events or play sounds\nas it moves. +c net/minecraft/class_1297$class_4738 net/minecraft/entity/Entity$PositionUpdater + m (Lnet/minecraft/class_1297;DDD)V accept accept + p 1 entity + p 2 x + p 4 y + p 6 z +c net/minecraft/class_1297$class_10365 net/minecraft/entity/Entity$QueuedCollisionCheck + f Ljava/util/Optional; comp_4875 axisDependentOriginalMovement + f Lnet/minecraft/class_243; comp_3322 to + f Lnet/minecraft/class_243; comp_3321 from + m ()Ljava/util/Optional; comp_4875 axisDependentOriginalMovement + m ()Lnet/minecraft/class_243; comp_3322 to + m ()Lnet/minecraft/class_243; comp_3321 from + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Ljava/util/Optional;)V + p 1 from + p 2 to + p 3 axisDependentOriginalMovement +c net/minecraft/class_1297$class_11344 net/minecraft/entity/Entity$ErrorReporterContext + f Lnet/minecraft/class_1297; comp_4213 entity + m ()Lnet/minecraft/class_1297; comp_4213 entity + m (Lnet/minecraft/class_1297;)V + p 1 entity +c net/minecraft/class_1297$class_5529 net/minecraft/entity/Entity$RemovalReason + c The reason of the entity's removal.\n\n@see Entity#setRemoved + f Lnet/minecraft/class_1297$class_5529; field_27002 CHANGED_DIMENSION + c The entity changed dimension. + f Lnet/minecraft/class_1297$class_5529; field_27001 UNLOADED_WITH_PLAYER + c The entity is unloaded because the player was riding it and the player\ndisconnected. + f Lnet/minecraft/class_1297$class_5529; field_26999 DISCARDED + c The entity is discarded (despawned). + f Z field_27004 save + f Lnet/minecraft/class_1297$class_5529; field_26998 KILLED + c The entity is killed. + f Z field_27003 destroy + f Lnet/minecraft/class_1297$class_5529; field_27000 UNLOADED_TO_CHUNK + c The entity is unloaded to chunk.\n

\nThe entity should be saved. + m ()Z method_31487 shouldSave + c Returns whether the entity should be saved or not. + m ()Z method_31486 shouldDestroy + c Returns whether the entity should be destroyed or not.\n

\nIf an entity should be destroyed, then the entity should not be re-used and any external data on the entity will be cleared. + m (Ljava/lang/String;IZZ)V + p 3 destroy + p 4 save +c net/minecraft/class_1296 net/minecraft/entity/passive/PassiveEntity + f I field_29969 BABY_AGE + f I field_5950 breedingAge + f I field_57563 DEFAULT_FORCED_AGE + f I field_57562 DEFAULT_AGE + f I field_5948 forcedAge + f I field_5947 happyTicksRemaining + f I field_29970 HAPPY_TICKS + f Lnet/minecraft/class_2940; field_5949 CHILD + m ()I method_63606 getHappyTicksRemaining + m ()Z method_19184 isReadyToBreed + m ()I method_63605 getForcedAge + m ()I method_5618 getBreedingAge + m (IZ)V method_5620 growUp + p 1 age + p 2 overGrow + m ()V method_5619 onGrowUp + m (I)V method_5614 setBreedingAge + p 1 age + m (I)V method_5615 growUp + p 1 age + m (I)I method_41321 toGrowUpAge + c Calculates the age to pass to {@link #growUp(int)} in seconds.\n\n@apiNote When passing the value from {@link #getBreedingAge()}, make sure to\nnegate the value; otherwise, the entity's age will decrease. + p 0 breedingAge + c the current, negated breeding age (in ticks) + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_1296; method_5613 createChild + p 1 world + p 2 entity +c net/minecraft/class_1296$class_4697 net/minecraft/entity/passive/PassiveEntity$PassiveData + f F field_20686 babyChance + f I field_20684 spawnCount + f Z field_20685 babyAllowed + m ()I method_22432 getSpawnedCount + m (F)V + p 1 babyChance + m ()Z method_22436 canSpawnBaby + m ()F method_22437 getBabyChance + m ()V method_22435 countSpawned + m (ZF)V + p 1 babyAllowed + p 2 babyChance + m (Z)V + p 1 babyAllowed +c net/minecraft/class_1295 net/minecraft/entity/AreaEffectCloudEntity + f I field_5941 waitTime + f Lnet/minecraft/class_2940; field_5944 WAITING + f I field_57571 DEFAULT_WAIT_TIME + f Lnet/minecraft/class_2940; field_5938 RADIUS + f I field_5939 duration + f I field_5937 reapplicationDelay + f F field_5929 radiusOnUse + f F field_40731 DEFAULT_RADIUS + f Lnet/minecraft/class_2940; field_5931 PARTICLE + f F field_55653 potionDurationScale + f Lnet/minecraft/class_10583; field_5943 owner + f F field_57569 DEFAULT_RADIUS_GROWTH + f I field_5932 durationOnUse + f I field_57572 DEFAULT_REAPPLICATION_DELAY + f I field_57564 DEFAULT_DURATION + f F field_29971 MAX_RADIUS + f Lnet/minecraft/class_2394; field_59666 customParticle + f F field_5930 radiusGrowth + f Lnet/minecraft/class_1844; field_49209 potionContentsComponent + f Lnet/minecraft/class_9381; field_56422 DEFAULT_PARTICLE_EFFECT + f Ljava/util/Map; field_5942 affectedEntities + f F field_57568 DEFAULT_RADIUS_ON_USE + m (Lnet/minecraft/class_2394;)V method_5608 setParticleType + p 1 customParticle + m (I)V method_35043 setDurationOnUse + p 1 durationOnUse + m ()I method_5605 getDuration + m (I)V method_5604 setDuration + p 1 duration + m ()I method_35047 getWaitTime + m (F)V method_5609 setRadiusOnUse + p 1 radiusOnUse + m ()F method_35045 getRadiusGrowth + m (F)V method_5603 setRadius + p 1 radius + m ()Lnet/minecraft/class_1309; method_5601 getOwner + m (F)V method_5596 setRadiusGrowth + p 1 radiusGrowth + m (Lnet/minecraft/class_1309;)V method_5607 setOwner + p 1 owner + m (I)V method_5595 setWaitTime + p 1 waitTime + m ()Z method_5611 isWaiting + m ()V method_70665 updateParticle + m (Lnet/minecraft/class_1293;)V method_5610 addEffect + p 1 effect + m (Z)V method_5598 setWaiting + p 1 waiting + m (Lnet/minecraft/class_1937;DDD)V + p 6 z + p 1 world + p 2 x + p 4 y + m (Ljava/util/Map$Entry;)Z method_64416 method_64416 + p 1 entity + m ()F method_5599 getRadius + m (Lnet/minecraft/class_1844;)V method_57280 setPotionContents + p 1 potionContentsComponent + m ()I method_35046 getDurationOnUse + m ()F method_35044 getRadiusOnUse + m (Lnet/minecraft/class_3218;)V method_64415 serverTick + p 1 world + m ()Lnet/minecraft/class_2394; method_5600 getParticleType + m (F)V method_66232 setPotionDurationScale + p 1 potionDurationScale + m ()V method_64418 clientTick +c net/minecraft/class_12061 net/minecraft/unused/packageinfo/PackageInfo12061 +c net/minecraft/class_750 net/minecraft/client/render/chunk/BlockBufferAllocatorStorage + f I field_46902 EXPECTED_TOTAL_SIZE + f Ljava/util/Map; field_3951 allocators + m ()V method_22705 clear + m (Lnet/minecraft/class_11515;)Lnet/minecraft/class_9799; method_3154 get + p 1 layer + m ()V method_23501 reset +c net/minecraft/class_12060 net/minecraft/unused/packageinfo/PackageInfo12060 +c net/minecraft/class_1299 net/minecraft/entity/EntityType + f Ljava/util/Set; field_55544 POTENTIALLY_EXECUTES_COMMANDS + f Z field_61223 allowedInPeaceful + f I field_24085 maxTrackDistance + f Z field_18981 fireImmune + f Lnet/minecraft/class_6880$class_6883; field_36398 registryEntry + f Lnet/minecraft/class_7699; field_40115 requiredFeatures + f Ljava/util/Optional; field_16526 lootTableKey + f Lorg/slf4j/Logger; field_6088 LOGGER + f Lnet/minecraft/class_1311; field_6094 spawnGroup + f Z field_6056 saveable + f Z field_19423 spawnableFarFromPlayer + f Z field_6072 summonable + f Ljava/lang/String; field_6106 translationKey + f Lcom/mojang/serialization/Codec; field_57582 CODEC + f F field_50125 spawnBoxScale + f Lnet/minecraft/class_2561; field_6092 name + f Lnet/minecraft/class_1299$class_4049; field_6101 factory + f Lnet/minecraft/class_4048; field_18070 dimensions + f Lnet/minecraft/class_9139; field_61222 PACKET_CODEC + f I field_24086 trackTickInterval + f Lcom/google/common/collect/ImmutableSet; field_25355 canSpawnInside + f Lnet/minecraft/class_1299; field_49075 BREEZE_WIND_CHARGE + f Lnet/minecraft/class_1299; field_42622 SNIFFER + f Lnet/minecraft/class_1299; field_42623 INTERACTION + f Lnet/minecraft/class_1299; field_28401 GLOW_ITEM_FRAME + f Lnet/minecraft/class_1299; field_28402 GLOW_SQUID + f Lnet/minecraft/class_1299; field_59668 HAPPY_GHAST + f Lnet/minecraft/class_1299; field_40116 CAMEL + f Lnet/minecraft/class_1299; field_17713 WANDERING_TRADER + f Lnet/minecraft/class_1299; field_17714 TRADER_LLAMA + f Lnet/minecraft/class_1299; field_63289 NAUTILUS + f Lnet/minecraft/class_1299; field_38095 WARDEN + f Lnet/minecraft/class_1299; field_63290 ZOMBIE_NAUTILUS + f Lnet/minecraft/class_1299; field_6047 SNOW_GOLEM + f Lnet/minecraft/class_1299; field_6048 ZOMBIE_HORSE + f Lnet/minecraft/class_1299; field_6046 CREEPER + f Lnet/minecraft/class_1299; field_6049 SMALL_FIREBALL + f Lnet/minecraft/class_1299; field_6043 ITEM_FRAME + f Lnet/minecraft/class_1299; field_6044 EXPERIENCE_ORB + f Lnet/minecraft/class_1299; field_25751 PIGLIN_BRUTE + f Lnet/minecraft/class_1299; field_6042 POLAR_BEAR + f Lnet/minecraft/class_1299; field_22281 PIGLIN + f Lnet/minecraft/class_1299; field_23214 STRIDER + f Lnet/minecraft/class_1299; field_6069 SLIME + f Lnet/minecraft/class_1299; field_6063 TNT + f Lnet/minecraft/class_1299; field_6064 EXPERIENCE_BOTTLE + f Lnet/minecraft/class_1299; field_6061 EYE_OF_ENDER + f Lnet/minecraft/class_1299; field_6062 PUFFERFISH + f Lnet/minecraft/class_1299; field_6067 DONKEY + f Lnet/minecraft/class_1299; field_6068 SNOWBALL + f Lnet/minecraft/class_1299; field_6065 ILLUSIONER + f Lnet/minecraft/class_1299; field_6066 FIREBALL + f Lnet/minecraft/class_1299; field_6060 EVOKER_FANGS + f Lnet/minecraft/class_1299; field_33456 MARKER + f Lnet/minecraft/class_1299; field_6059 VEX + f Lnet/minecraft/class_1299; field_6057 MULE + f Lnet/minecraft/class_1299; field_6058 HOPPER_MINECART + f Lnet/minecraft/class_1299; field_6051 ZOMBIE + f Lnet/minecraft/class_1299; field_6052 ITEM + f Lnet/minecraft/class_1299; field_6050 ZOMBIFIED_PIGLIN + f Lnet/minecraft/class_1299; field_6055 WOLF + f Lnet/minecraft/class_1299; field_6053 TNT_MINECART + f Lnet/minecraft/class_1299; field_50124 OMINOUS_ITEM_SPAWNER + f Lnet/minecraft/class_1299; field_6054 ZOMBIE_VILLAGER + f Lnet/minecraft/class_1299; field_6087 DOLPHIN + f Lnet/minecraft/class_1299; field_6085 COW + f Lnet/minecraft/class_1299; field_6086 ELDER_GUARDIAN + f Lnet/minecraft/class_1299; field_6089 FALLING_BLOCK + f Lnet/minecraft/class_1299; field_6080 FURNACE_MINECART + f Lnet/minecraft/class_1299; field_6083 AREA_EFFECT_CLOUD + f Lnet/minecraft/class_1299; field_6084 CAVE_SPIDER + f Lnet/minecraft/class_1299; field_6081 OCELOT + f Lnet/minecraft/class_1299; field_6082 ENDER_PEARL + f Lnet/minecraft/class_1299; field_49148 BOGGED + f Lnet/minecraft/class_1299; field_23696 ZOGLIN + f Lnet/minecraft/class_1299; field_6075 SKELETON_HORSE + f Lnet/minecraft/class_1299; field_6076 WITHER_SKELETON + f Lnet/minecraft/class_1299; field_6073 SALMON + f Lnet/minecraft/class_1299; field_6074 LLAMA + f Lnet/minecraft/class_1299; field_6079 SPIDER + f Lnet/minecraft/class_1299; field_6077 VILLAGER + f Lnet/minecraft/class_1299; field_6078 PHANTOM + f Lnet/minecraft/class_1299; field_6071 HUSK + f Lnet/minecraft/class_1299; field_6070 COD + f Lnet/minecraft/class_1299; field_38384 ALLAY + f Lnet/minecraft/class_1299; field_28315 AXOLOTL + f Lnet/minecraft/class_1299; field_6099 BLAZE + f Lnet/minecraft/class_1299; field_47754 ARMADILLO + f Lnet/minecraft/class_1299; field_6097 PLAYER + f Lnet/minecraft/class_1299; field_6098 STRAY + f Lnet/minecraft/class_1299; field_6091 ENDERMAN + f Lnet/minecraft/class_1299; field_6090 EVOKER + f Lnet/minecraft/class_1299; field_56254 SPLASH_POTION + f Lnet/minecraft/class_1299; field_6095 GIANT + f Lnet/minecraft/class_1299; field_56255 LINGERING_POTION + f Lnet/minecraft/class_1299; field_6096 MINECART + f Lnet/minecraft/class_1299; field_6093 PIG + f Lnet/minecraft/class_1299; field_62515 MANNEQUIN + f Lnet/minecraft/class_1299; field_6112 LIGHTNING_BOLT + f Lnet/minecraft/class_1299; field_6113 TURTLE + f Lnet/minecraft/class_1299; field_6110 END_CRYSTAL + f Lnet/minecraft/class_1299; field_6111 TROPICAL_FISH + f Lnet/minecraft/class_1299; field_6104 PARROT + f Lnet/minecraft/class_1299; field_6105 PILLAGER + f Lnet/minecraft/class_1299; field_6102 MAGMA_CUBE + f Lnet/minecraft/class_1299; field_6103 FISHING_BOBBER + f Lnet/minecraft/class_1299; field_6108 BAT + f Lnet/minecraft/class_1299; field_6109 SHULKER + f Lnet/minecraft/class_1299; field_6107 GHAST + f Lnet/minecraft/class_1299; field_6100 SHULKER_BULLET + f Lnet/minecraft/class_1299; field_21973 HOGLIN + f Lnet/minecraft/class_1299; field_6132 CHICKEN + f Lnet/minecraft/class_1299; field_6133 FIREWORK_ROCKET + f Lnet/minecraft/class_1299; field_6130 WITHER_SKULL + f Lnet/minecraft/class_1299; field_6131 ARMOR_STAND + f Lnet/minecraft/class_1299; field_6136 COMMAND_BLOCK_MINECART + f Lnet/minecraft/class_1299; field_6137 SKELETON + f Lnet/minecraft/class_1299; field_6134 RAVAGER + f Lnet/minecraft/class_1299; field_6135 SPECTRAL_ARROW + f Lnet/minecraft/class_1299; field_6128 ENDERMITE + f Lnet/minecraft/class_1299; field_30052 GOAT + f Lnet/minecraft/class_1299; field_6129 DRAGON_FIREBALL + f Lnet/minecraft/class_1299; field_6126 CHEST_MINECART + f Lnet/minecraft/class_1299; field_6127 TRIDENT + f Lnet/minecraft/class_1299; field_6120 PAINTING + f Lnet/minecraft/class_1299; field_6124 LLAMA_SPIT + f Lnet/minecraft/class_1299; field_6125 SILVERFISH + f Lnet/minecraft/class_1299; field_6122 ARROW + f Lnet/minecraft/class_1299; field_6123 DROWNED + f Lnet/minecraft/class_1299; field_6116 ENDER_DRAGON + f Lnet/minecraft/class_1299; field_6117 VINDICATOR + f Lnet/minecraft/class_1299; field_6114 SQUID + f Lnet/minecraft/class_1299; field_6115 SHEEP + f Lnet/minecraft/class_1299; field_61221 COPPER_GOLEM + f Lnet/minecraft/class_1299; field_6118 GUARDIAN + f Lnet/minecraft/class_1299; field_6119 WITHER + f Lnet/minecraft/class_1299; field_6144 EGG + f Lnet/minecraft/class_1299; field_6145 WITCH + f Lnet/minecraft/class_1299; field_6142 SPAWNER_MINECART + f Lnet/minecraft/class_1299; field_6143 MOOSHROOM + f Lnet/minecraft/class_1299; field_6146 PANDA + f Lnet/minecraft/class_1299; field_6147 IRON_GOLEM + f Lnet/minecraft/class_1299; field_6140 RABBIT + f Lnet/minecraft/class_1299; field_16281 CAT + f Lnet/minecraft/class_1299; field_6138 LEASH_KNOT + f Lnet/minecraft/class_1299; field_6139 HORSE + f Lnet/minecraft/class_1299; field_54412 JUNGLE_BOAT + f Lnet/minecraft/class_1299; field_54410 OAK_BOAT + f Lnet/minecraft/class_1299; field_54411 OAK_CHEST_BOAT + f Lnet/minecraft/class_1299; field_54414 MANGROVE_BOAT + f Lnet/minecraft/class_1299; field_54413 JUNGLE_CHEST_BOAT + f Lnet/minecraft/class_1299; field_54416 SPRUCE_BOAT + f Lnet/minecraft/class_1299; field_54415 ACACIA_CHEST_BOAT + f Lnet/minecraft/class_1299; field_54418 BAMBOO_CHEST_RAFT + f Lnet/minecraft/class_1299; field_54417 SPRUCE_CHEST_BOAT + f Lnet/minecraft/class_1299; field_54419 BAMBOO_RAFT + f Lnet/minecraft/class_1299; field_54406 DARK_OAK_BOAT + f Lnet/minecraft/class_1299; field_54408 ACACIA_BOAT + f Lnet/minecraft/class_1299; field_54407 DARK_OAK_CHEST_BOAT + f Lnet/minecraft/class_1299; field_54409 MANGROVE_CHEST_BOAT + f Lnet/minecraft/class_1299; field_17943 FOX + f Lnet/minecraft/class_1299; field_54560 CREAKING + f Lnet/minecraft/class_1299; field_54562 PALE_OAK_BOAT + f Lnet/minecraft/class_1299; field_54563 PALE_OAK_CHEST_BOAT + f Lnet/minecraft/class_1299; field_20346 BEE + f Lnet/minecraft/class_1299; field_54421 BIRCH_CHEST_BOAT + f Lnet/minecraft/class_1299; field_54422 CHERRY_BOAT + f Lnet/minecraft/class_1299; field_54420 BIRCH_BOAT + f Lnet/minecraft/class_1299; field_54423 CHERRY_CHEST_BOAT + f Lnet/minecraft/class_1299; field_64132 CAMEL_HUSK + f Lnet/minecraft/class_1299; field_64131 PARCHED + f Lnet/minecraft/class_1299; field_42456 ITEM_DISPLAY + f Lnet/minecraft/class_1299; field_42457 TEXT_DISPLAY + f Lnet/minecraft/class_1299; field_42460 BLOCK_DISPLAY + f Lnet/minecraft/class_1299; field_47244 BREEZE + f Lnet/minecraft/class_1299; field_47243 WIND_CHARGE + f Lnet/minecraft/class_1299; field_37419 FROG + f Lnet/minecraft/class_1299; field_37420 TADPOLE + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;ZLnet/minecraft/class_238;)D method_5884 getOriginY + p 2 invertY + p 3 boundingBox + p 0 world + p 1 pos + m ()Z method_5896 isSummonable + m ()Lnet/minecraft/class_1311; method_5891 getSpawnGroup + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_1299$class_4049; method_64438 getChestRaftFactory + p 0 itemSupplier + m (Ljava/util/function/Consumer;Lnet/minecraft/class_1799;)Ljava/util/function/Consumer; method_66663 componentsCopier + p 0 chained + p 1 stack + m (Ljava/lang/String;)Ljava/util/Optional; method_5898 get + p 0 id + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_1299$class_4049; method_64434 getChestBoatFactory + p 0 itemSupplier + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;Lnet/minecraft/class_11368;Ljava/util/function/Consumer;)V method_67636 method_67636 + p 2 viewx + p 3 callback + m (Lnet/minecraft/class_11368;Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;)Ljava/util/Optional; method_17848 loadEntityFromData + p 0 view + p 1 world + p 2 reason + m ()Z method_19946 isFireImmune + m ()Lnet/minecraft/class_6880$class_6883; method_40124 getRegistryEntry + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1297; method_31488 downcast + m (Lnet/minecraft/class_1297;)V method_47823 method_47823 + p 0 entity + m (Lnet/minecraft/class_1299$class_4049;Lnet/minecraft/class_1311;ZZZZLcom/google/common/collect/ImmutableSet;Lnet/minecraft/class_4048;FIILjava/lang/String;Ljava/util/Optional;Lnet/minecraft/class_7699;Z)V + p 9 spawnBoxScale + p 10 maxTrackDistance + p 11 trackTickInterval + p 12 translationKey + p 13 lootTable + p 14 requiredFeatures + p 15 allowedInPeaceful + p 1 factory + p 2 spawnGroup + p 3 saveable + p 4 summonable + p 5 fireImmune + p 6 spawnableFarFromPlayer + p 7 canSpawnInside + p 8 dimensions + m (Ljava/util/function/Supplier;Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;)Lnet/minecraft/class_10257; method_64433 method_64433 + p 2 world + p 1 type + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_11368;Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;)Ljava/util/Optional; method_72389 loadEntityFromData + p 3 reason + p 1 view + p 2 world + p 0 type + m (Lnet/minecraft/class_11368;)Ljava/util/Optional; method_17684 fromData + p 0 view + m (Lnet/minecraft/class_3218;Ljava/util/function/Consumer;Lnet/minecraft/class_2338;Lnet/minecraft/class_3730;ZZ)Lnet/minecraft/class_1297; method_5899 spawn + p 4 reason + p 3 pos + p 2 afterConsumer + p 1 world + p 6 invertY + p 5 alignPosition + m ()Ljava/util/Optional; method_16351 getLootTableKey + m (Lnet/minecraft/class_6885;)Z method_53125 isIn + p 1 entityTypeEntryList + m ()F method_17686 getHeight + m (Lnet/minecraft/class_11368;Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;Lnet/minecraft/class_12259;)Lnet/minecraft/class_1297; method_17842 loadEntityWithPassengers + p 1 world + p 0 view + p 3 processor + p 2 reason + m ()Z method_18389 alwaysUpdateVelocity + m (DDD)Lnet/minecraft/class_238; method_58629 getSpawnBox + p 1 x + p 5 z + p 3 y + m (Ljava/util/function/Supplier;Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;)Lnet/minecraft/class_1690; method_64439 method_64439 + p 2 world + p 1 type + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_11368;Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;Lnet/minecraft/class_12259;)Lnet/minecraft/class_1297; method_72385 loadEntityWithPassengers + p 0 type + p 1 view + p 2 world + p 3 reason + p 4 processor + m (Ljava/util/function/Supplier;Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;)Lnet/minecraft/class_7264; method_64437 method_64437 + p 1 type + p 2 world + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_2960; method_5890 getId + p 0 type + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;)Ljava/util/function/Consumer; method_48009 copier + p 0 world + p 1 stack + p 2 spawner + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;)V method_66662 method_66662 + p 1 entity + m (Lnet/minecraft/class_11368;Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;)Ljava/util/Optional; method_5892 getEntityFromData + p 0 view + p 2 reason + p 1 world + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_11368;Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;)Ljava/util/Optional; method_72384 getEntityFromData + p 0 type + p 1 readView + p 2 world + p 3 spawnReason + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;Lnet/minecraft/class_12259;)Lnet/minecraft/class_1297; method_71371 loadEntityWithPassengers + p 3 processor + p 0 nbt + p 1 world + p 2 reason + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_11580;Lnet/minecraft/class_1297;)V method_48008 method_48008 + p 3 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_11368;Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;Lnet/minecraft/class_12259;)Lnet/minecraft/class_1297; method_72383 loadEntityPassengers + p 0 entity + p 1 view + p 4 processor + p 2 world + p 3 reason + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1297;Lnet/minecraft/class_11580;)V method_5881 loadFromEntityNbt + p 0 world + p 3 data + p 1 spawner + p 2 entity + m (Ljava/util/function/Supplier;Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;)Lnet/minecraft/class_10258; method_64435 method_64435 + p 1 type + p 2 world + m (Lnet/minecraft/class_3218;Ljava/util/function/Consumer;Lnet/minecraft/class_2338;Lnet/minecraft/class_3730;ZZ)Lnet/minecraft/class_1297; method_5888 create + p 4 reason + p 3 pos + p 2 afterConsumer + p 1 world + p 6 invertY + p 5 alignPosition + m (Lnet/minecraft/class_11368;Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;Lnet/minecraft/class_12259;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1297; method_17843 method_17843 + p 4 entity + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_1299$class_4049; method_64432 getBoatFactory + p 0 itemSupplier + m ()Z method_65893 canPotentiallyExecuteCommands + m (Lnet/minecraft/class_2680;)Z method_29496 isInvalidSpawn + c Returns whether the EntityType can spawn inside the given block.\n\n

By default, non-fire-immune mobs can't spawn in/on blocks dealing fire damage.\nAny mob can't spawn in wither roses, sweet berry bush, or cacti.\n\n

This can be overwritten via {@link EntityType.Builder#allowSpawningInside(Block[])} + p 1 state + m ()Ljava/lang/String; method_5882 getTranslationKey + m ()F method_17685 getWidth + m (Lnet/minecraft/class_11368;Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;Lnet/minecraft/class_12259;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1297; method_72388 method_72388 + p 4 entity + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_1299$class_4049; method_64436 getRaftFactory + p 0 itemSupplier + m ()Lnet/minecraft/class_4048; method_18386 getDimensions + m (Lnet/minecraft/class_11368$class_11370;Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;)Ljava/util/stream/Stream; method_31489 streamFromData + p 1 world + p 0 view + p 2 reason + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_1299$class_1300;)Lnet/minecraft/class_1299; method_63002 register + p 1 type + p 0 key + m (Lnet/minecraft/class_11368;Lnet/minecraft/class_1297;)V method_72387 method_72387 + p 1 entity + m (Lnet/minecraft/class_1297;)V method_48013 method_48013 + p 0 entity + m ()I method_18387 getMaxTrackDistance + c Returns the tracking distance, in chunks, of this type of entity\nfor clients. This will be then modified by the server's tracking\ndistance multiplier. + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_63003 keyOf + p 0 id + m (Ljava/lang/String;Lnet/minecraft/class_1299$class_1300;)Lnet/minecraft/class_1299; method_5895 register + p 1 type + p 0 id + m (Ljava/util/function/Consumer;Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;)Ljava/util/function/Consumer; method_48156 copier + p 0 chained + p 2 stack + p 1 world + p 3 spawner + m (Ljava/util/function/Consumer;Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;)Ljava/util/function/Consumer; method_48011 nbtCopier + p 0 chained + p 2 stack + p 1 world + p 3 spawner + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_3730;)Lnet/minecraft/class_1297; method_47821 spawn + p 1 world + p 3 reason + p 2 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;)Lnet/minecraft/class_1297; method_5883 create + p 2 reason + p 1 world + m (Lnet/minecraft/class_11368;Lnet/minecraft/class_1297;)V method_17839 method_17839 + p 1 entity + m ()Ljava/lang/String; method_35050 getUntranslatedName + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_2487;Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;Lnet/minecraft/class_12259;)Lnet/minecraft/class_1297; method_72386 loadEntityWithPassengers + p 4 processor + p 3 reason + p 0 type + p 2 world + p 1 data + m ()Z method_5893 isSaveable + m ()Z method_72390 isAllowedInPeaceful + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_3730;Lnet/minecraft/class_1299;)Lnet/minecraft/class_1297; method_17846 method_17846 + p 2 type + m (Lnet/minecraft/class_6862;)Z method_20210 isIn + p 1 tag + m ()I method_18388 getTrackTickInterval + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;Lnet/minecraft/class_2338;Lnet/minecraft/class_3730;ZZ)Lnet/minecraft/class_1297; method_5894 spawnFromItemStack + p 7 invertY + p 1 world + p 2 stack + p 3 spawner + p 4 pos + p 5 spawnReason + p 6 alignPosition + m ()Lnet/minecraft/class_2561; method_5897 getName + m (Ljava/util/function/Consumer;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1297; method_67637 method_67637 + p 1 entity + m ()Z method_20814 isSpawnableFarFromPlayer +c net/minecraft/class_1299$class_4049 net/minecraft/entity/EntityType$EntityFactory + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;)Lnet/minecraft/class_1297; create create + p 1 type + p 2 world +c net/minecraft/class_1299$class_1300 net/minecraft/entity/EntityType$Builder + f Z field_6151 saveable + f Lnet/minecraft/class_10162; field_53973 translationKey + f F field_50126 spawnBoxScale + f Z field_18982 fireImmune + f Lnet/minecraft/class_9066$class_9067; field_47755 attachments + f Lcom/google/common/collect/ImmutableSet; field_25356 canSpawnInside + f Lnet/minecraft/class_1311; field_6149 spawnGroup + f I field_24087 maxTrackingRange + f Lnet/minecraft/class_1299$class_4049; field_6148 factory + f Z field_61224 allowedInPeaceful + f Lnet/minecraft/class_4048; field_18071 dimensions + f Z field_6150 summonable + f Lnet/minecraft/class_10162; field_53972 lootTable + f I field_24088 trackingTickInterval + f Z field_19424 spawnableFarFromPlayer + f Lnet/minecraft/class_7699; field_40117 requiredFeatures + m (F)Lnet/minecraft/class_1299$class_1300; method_55692 nameTagAttachment + p 1 offsetY + m (Lnet/minecraft/class_1299$class_4049;Lnet/minecraft/class_1311;)V + p 2 spawnGroup + p 1 factory + m (Lnet/minecraft/class_1299$class_4049;Lnet/minecraft/class_1311;)Lnet/minecraft/class_1299$class_1300; method_5903 create + p 0 factory + p 1 spawnGroup + m ()Lnet/minecraft/class_1299$class_1300; method_19947 makeFireImmune + m ()Lnet/minecraft/class_1299$class_1300; method_20815 spawnableFarFromPlayer + m (FF)Lnet/minecraft/class_1299$class_1300; method_17687 dimensions + p 1 width + p 2 height + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;)Lnet/minecraft/class_1297; method_5900 method_5900 + p 1 world + p 0 type + m ([F)Lnet/minecraft/class_1299$class_1300; method_55689 passengerAttachments + p 1 offsetYs + m ([Lnet/minecraft/class_2248;)Lnet/minecraft/class_1299$class_1300; method_29497 allowSpawningInside + c Allows this type of entity to spawn inside the given block, bypassing the default\nwither rose, sweet berry bush, cactus, and fire-damage-dealing blocks for\nnon-fire-resistant mobs.\n\n

{@code minecraft:prevent_mob_spawning_inside} tag overrides this.\nWith this setting, fire resistant mobs can spawn on/in fire damage dealing blocks,\nand wither skeletons can spawn in wither roses. If a block added is not in the default\nblacklist, the addition has no effect. + p 1 blocks + m ()Lnet/minecraft/class_1299$class_1300; method_5901 disableSummon + m ([Lnet/minecraft/class_7696;)Lnet/minecraft/class_1299$class_1300; method_45323 requires + p 1 features + m (Lnet/minecraft/class_9064;FFF)Lnet/minecraft/class_1299$class_1300; method_56075 attachment + p 1 type + p 2 offsetX + p 3 offsetY + p 4 offsetZ + m (F)Lnet/minecraft/class_1299$class_1300; method_55691 vehicleAttachment + p 1 offsetY + m (I)Lnet/minecraft/class_1299$class_1300; method_27300 trackingTickInterval + p 1 trackingTickInterval + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_63005 method_63005 + p 0 registryKey + m (F)Lnet/minecraft/class_1299$class_1300; method_58630 spawnBoxScale + p 1 spawnBoxScale + m ()Lnet/minecraft/class_1299$class_1300; method_63006 dropsNothing + m (Lnet/minecraft/class_1311;)Lnet/minecraft/class_1299$class_1300; method_5902 create + p 0 spawnGroup + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_63004 method_63004 + p 0 registryKey + m (Lnet/minecraft/class_9064;Lnet/minecraft/class_243;)Lnet/minecraft/class_1299$class_1300; method_56076 attachment + p 2 offset + p 1 type + m ()Lnet/minecraft/class_1299$class_1300; method_5904 disableSaving + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_1299$class_1300; method_55688 vehicleAttachment + p 1 vehicleAttachment + m ()Lnet/minecraft/class_1299$class_1300; method_72391 notAllowedInPeaceful + m (F)Lnet/minecraft/class_1299$class_1300; method_55687 eyeHeight + p 1 eyeHeight + m ([Lnet/minecraft/class_243;)Lnet/minecraft/class_1299$class_1300; method_55690 passengerAttachments + p 1 passengerAttachments + m (I)Lnet/minecraft/class_1299$class_1300; method_27299 maxTrackingRange + p 1 maxTrackingRange + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_1299; method_5905 build + p 1 registryKey +c net/minecraft/class_12063 net/minecraft/datafixer/fix/WorldSpawnDataFix +c net/minecraft/class_12062 net/minecraft/datafixer/fix/PlayerRespawnDataFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 schema +c net/minecraft/class_748 net/minecraft/client/option/HotbarStorageEntry + f I field_48944 HOTBAR_SIZE + f Lcom/mojang/serialization/DynamicOps; field_48945 NBT_OPS + f Ljava/util/List; field_48947 stacks + f Lcom/mojang/serialization/Dynamic; field_48946 EMPTY_STACK + f Lcom/mojang/serialization/Codec; field_48942 CODEC + f Lorg/slf4j/Logger; field_48943 LOGGER + m (Lnet/minecraft/class_1661;Lnet/minecraft/class_5455;)V method_56836 serialize + p 1 playerInventory + p 2 registryManager + m (Lnet/minecraft/class_748;)Ljava/util/List; method_56838 method_56838 + p 0 entry + m (Ljava/lang/String;)V method_56841 method_56841 + p 0 error + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_56842 method_56842 + p 0 stacks + m (Ljava/lang/String;)V method_56844 method_56844 + p 0 error + m (Ljava/util/List;)V + p 1 stacks + m (Lnet/minecraft/class_7225$class_7874;)Ljava/util/List; method_56839 deserialize + p 1 registries + m ()Z method_56835 isEmpty + m (Lnet/minecraft/class_7225$class_7874;Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/class_1799; method_56840 method_56840 + p 1 stack + m (Lcom/mojang/serialization/Dynamic;)Z method_56837 isEmpty + p 0 stack + m (Lnet/minecraft/class_2520;)Lcom/mojang/serialization/Dynamic; method_56843 method_56843 + p 0 nbt +c net/minecraft/class_6154 net/minecraft/unused/packageinfo/PackageInfo6154 +c net/minecraft/class_7486 net/minecraft/command/argument/BlockMirrorArgumentType + m ()Lnet/minecraft/class_7485; method_44100 blockMirror + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2415; method_44101 getBlockMirror + p 1 id + p 0 context +c net/minecraft/class_13 net/minecraft/entity/ai/pathing/PathNodeNavigator + f I field_18708 range + f [Lnet/minecraft/class_9; field_60 successors + f Ljava/util/function/BooleanSupplier; field_62923 shouldSendDebugData + f Lnet/minecraft/class_5; field_62 minHeap + f F field_31807 TARGET_DISTANCE_MULTIPLIER + f Lnet/minecraft/class_8; field_61 pathNodeMaker + m (I)V method_61822 setRange + p 1 range + m (Lnet/minecraft/class_8;I)V + p 2 range + p 1 pathNodeMaker + m (Ljava/util/function/BooleanSupplier;)V method_74692 setShouldSendDebugData + p 1 shouldSendDebugData + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_4459; method_21659 method_21659 + p 1 pos + m (Lnet/minecraft/class_1950;Lnet/minecraft/class_1308;Ljava/util/Set;FIF)Lnet/minecraft/class_11; method_52 findPathToAny + p 5 distance + p 6 rangeMultiplier + p 1 world + p 2 mob + p 3 positions + p 4 followRange + m (Ljava/util/Map;Lnet/minecraft/class_4459;)Lnet/minecraft/class_11; method_21660 method_21660 + p 2 node + m (Lnet/minecraft/class_9;Lnet/minecraft/class_2338;Z)Lnet/minecraft/class_11; method_55 createPath + p 1 endNode + p 3 reachesTarget + p 2 target + m (Lnet/minecraft/class_9;Ljava/util/Map;FIF)Lnet/minecraft/class_11; method_54 findPathToAny + p 1 startNode + p 2 positions + p 5 rangeMultiplier + p 3 followRange + p 4 distance + m (Lnet/minecraft/class_9;Ljava/util/Set;)F method_21658 calculateDistances + p 1 node + p 2 targets + m (Ljava/util/Map;Lnet/minecraft/class_4459;)Lnet/minecraft/class_11; method_21661 method_21661 + p 2 node + m (Lnet/minecraft/class_9;Lnet/minecraft/class_9;)F method_44000 getDistance + p 1 a + p 2 b +c net/minecraft/class_7487 net/minecraft/command/argument/BlockRotationArgumentType + m ()Lnet/minecraft/class_7487; method_44102 blockRotation + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2470; method_44103 getBlockRotation + p 1 id + p 0 context +c net/minecraft/class_12 net/minecraft/entity/ai/pathing/WaterPathNodeMaker + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_34767 nodePosToType + f Z field_58 canJumpOutOfWater + m (III)Lnet/minecraft/class_9; method_47936 getPassableNode + p 3 z + p 2 y + p 1 x + m (Z)V + p 1 canJumpOutOfWater + m (IIIJ)Lnet/minecraft/class_7; method_38486 method_38486 + p 4 pos + m (III)Lnet/minecraft/class_7; method_38489 addPathNodePos + p 2 y + p 3 z + p 1 x + m (Lnet/minecraft/class_9;)Z method_38487 hasNotVisited + p 1 node + m (Lnet/minecraft/class_9;)Z method_57084 hasPenalty + p 0 node +c net/minecraft/class_15 net/minecraft/entity/ai/pathing/AmphibiousPathNodeMaker + f F field_64 oldWaterBorderPenalty + f F field_65 oldWalkablePenalty + f Z field_28358 penalizeDeepWater + m (Z)V + p 1 penalizeDeepWater + m (Lnet/minecraft/class_9;Lnet/minecraft/class_9;)Z method_43413 isValidAquaticAdjacentSuccessor + p 2 successor + p 1 node +c net/minecraft/class_7485 net/minecraft/command/argument/EnumArgumentType + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_39361 INVALID_ENUM_EXCEPTION + f Lcom/mojang/serialization/Codec; field_39362 codec + f Ljava/util/function/Supplier; field_39363 valuesSupplier + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Enum; method_44091 parse + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Ljava/lang/Object;)Ljava/lang/String; method_44094 method_44094 + p 0 enum_ + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Supplier;)V + p 2 valuesSupplier + p 1 codec + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_44095 method_44095 + p 0 value + m (Ljava/lang/String;)Ljava/lang/String; method_49545 transformValueName + p 1 name + m (Ljava/lang/Object;)Ljava/lang/String; method_44092 method_44092 + p 0 enum_ + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder +c net/minecraft/class_14 net/minecraft/entity/ai/pathing/LandPathNodeMaker + f D field_31809 Y_OFFSET + f [Lnet/minecraft/class_9; field_49157 successors + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; field_25191 collidedBoxes + f D field_40928 MIN_STEP_HEIGHT + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_49156 nodeTypes + m (Lnet/minecraft/class_9;)Z method_29578 isBlocked + p 1 node + m (Lnet/minecraft/class_2338;)Z method_47893 canPathThrough + p 1 pos + m (Lnet/minecraft/class_2338;)D method_37003 getFeetY + p 1 pos + m (III)Lnet/minecraft/class_9; method_57091 getOpenNode + p 2 y + p 3 z + p 1 x + m (Lnet/minecraft/class_7;)Z method_43414 isBlocked + p 0 nodeType + m (III)Lnet/minecraft/class_9; method_43570 getBlockedNode + p 3 z + p 1 x + p 2 y + m (Lnet/minecraft/class_238;Ljava/lang/Object;)Z method_29305 method_29305 + p 2 box2 + m (IIILnet/minecraft/class_9;)Lnet/minecraft/class_9; method_57087 getNonWaterNodeBelow + p 4 node + p 2 y + p 3 z + p 1 x + m ()D method_46739 getStepHeight + m (IIIIDLnet/minecraft/class_2350;Lnet/minecraft/class_7;)Lnet/minecraft/class_9; method_62 getPathNode + p 1 x + p 4 maxYStep + p 5 lastFeetY + p 2 y + p 3 z + p 8 nodeType + p 7 direction + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_2338;)Lnet/minecraft/class_7; method_57625 getLandNodeType + p 0 entity + p 1 pos + m (Lnet/minecraft/class_9;Lnet/minecraft/class_9;)Z method_20536 isValidAdjacentSuccessor + p 2 successor + p 1 node + m (Lnet/minecraft/class_9316;IIILnet/minecraft/class_7;)Lnet/minecraft/class_7; method_59 getNodeTypeFromNeighbors + p 4 fallback + p 0 context + p 1 x + p 2 y + p 3 z + m (III)Lnet/minecraft/class_7; method_31932 getNodeType + p 1 x + p 3 z + p 2 y + m (Lnet/minecraft/class_9;)Z method_57089 isValidDiagonalSuccessor + p 1 node + m ()Z method_37004 isAmphibious + m (IIILnet/minecraft/class_7;)Lnet/minecraft/class_9; method_57088 getNodeWith + p 2 y + p 1 x + p 4 type + p 3 z + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_9; method_43415 getStart + p 1 pos + m (IIILnet/minecraft/class_7;F)Lnet/minecraft/class_9; method_43569 getNodeWith + p 4 type + p 5 penalty + p 2 y + p 3 z + p 1 x + m (Lnet/minecraft/class_9;Lnet/minecraft/class_9;Lnet/minecraft/class_9;)Z method_29579 isValidDiagonalSuccessor + p 3 xDiagNode + p 2 zNode + p 1 xNode + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_7; method_58 getCommonNodeType + p 0 world + p 1 pos + m (Lnet/minecraft/class_9316;III)Ljava/util/Set; method_57090 getCollidingNodeTypes + p 1 context + p 2 x + p 3 y + p 4 z + m (IIIIDLnet/minecraft/class_2350;Lnet/minecraft/class_7;Lnet/minecraft/class_2338$class_2339;)Lnet/minecraft/class_9; method_57085 getJumpOnTopNode + p 9 mutablePos + p 4 maxYStep + p 3 z + p 2 y + p 1 x + p 8 nodeType + p 7 direction + p 5 lastFeetY + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)D method_60 getFeetY + p 1 pos + p 0 world + m (Lnet/minecraft/class_9316;Lnet/minecraft/class_2338$class_2339;)Lnet/minecraft/class_7; method_23476 getLandNodeType + p 0 context + p 1 pos + m (Lnet/minecraft/class_238;)Z method_29304 checkBoxCollision + p 1 box +c net/minecraft/class_6150 net/minecraft/unused/packageinfo/PackageInfo6150 +c net/minecraft/class_11 net/minecraft/entity/ai/pathing/Path + f Lnet/minecraft/class_9139; field_62922 PACKET_CODEC + f Ljava/util/List; field_52 nodes + f Lnet/minecraft/class_11$class_8644; field_45155 debugNodeInfos + f Z field_20303 reachesTarget + f Lnet/minecraft/class_2338; field_20301 target + f F field_20302 manhattanDistanceFromTarget + f I field_54 currentNodeIndex + m ()I method_38 getLength + m ([Lnet/minecraft/class_9;[Lnet/minecraft/class_9;Ljava/util/Set;)V method_35500 setDebugInfo + p 2 debugSecondNodes + p 1 debugNodes + p 3 debugTargetNodes + m (I)V method_36 setLength + p 1 length + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_11;)V method_74690 method_74690 + p 1 path + p 0 buf + m (Lnet/minecraft/class_2540;)V method_35498 toBuf + p 1 buf + m (Lnet/minecraft/class_11;)Z method_41 equalsPath + p 1 path + m (I)V method_42 setCurrentNodeIndex + p 1 nodeIndex + m ()Z method_30849 isStart + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_9;)V method_35499 method_35499 + p 1 node + p 0 buf + m ()Lnet/minecraft/class_2338; method_48 getTarget + m ()V method_44 next + m ()Lnet/minecraft/class_9; method_30850 getLastNode + m ()Lnet/minecraft/class_9; method_45 getEnd + m ()Z method_46 isFinished + m ()Lnet/minecraft/class_9; method_29301 getCurrentNode + m ()Lnet/minecraft/class_2338; method_31032 getCurrentNodePos + m ()F method_21656 getManhattanDistanceFromTarget + m (Ljava/util/List;Lnet/minecraft/class_2338;Z)V + p 2 target + p 3 reachesTarget + p 1 nodes + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()I method_39 getCurrentNodeIndex + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_243; method_49 getNodePosition + p 1 entity + m (Lnet/minecraft/class_2540;)[Lnet/minecraft/class_9; method_52603 nodesFromBuf + p 0 buf + m ()Z method_21655 reachesTarget + m (ILnet/minecraft/class_9;)V method_33 setNode + p 2 node + p 1 index + m (I)Lnet/minecraft/class_2338; method_31031 getNodePos + p 1 index + m ()Lnet/minecraft/class_11$class_8644; method_52604 getDebugNodeInfos + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_11; method_34 fromBuf + p 0 buf + m (I)Lnet/minecraft/class_9; method_40 getNode + p 1 index + m ()Lnet/minecraft/class_11; method_52605 copy + m (Lnet/minecraft/class_1297;I)Lnet/minecraft/class_243; method_47 getNodePosition + p 2 index + p 1 entity + m (Lnet/minecraft/class_2540;[Lnet/minecraft/class_9;)V method_52602 write + p 1 nodes + p 0 buf +c net/minecraft/class_11$class_8644 net/minecraft/entity/ai/pathing/Path$DebugNodeInfo + f [Lnet/minecraft/class_9; comp_1587 openSet + f [Lnet/minecraft/class_9; comp_1588 closedSet + f Ljava/util/Set; comp_1589 targetNodes + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_11$class_8644; method_52608 fromBuf + p 0 buf + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_4459;)V method_52607 method_52607 + p 0 buf + p 1 node + m (Lnet/minecraft/class_2540;)V method_52606 write + p 1 buf + m ()[Lnet/minecraft/class_9; comp_1587 openSet + m ()[Lnet/minecraft/class_9; comp_1588 closedSet + m ()Ljava/util/Set; comp_1589 targetNodes + m ([Lnet/minecraft/class_9;[Lnet/minecraft/class_9;Ljava/util/Set;)V + p 1 openSet + p 2 closedSet + p 3 targetNodes +c net/minecraft/class_6151 net/minecraft/unused/packageinfo/PackageInfo6151 +c net/minecraft/class_10 net/minecraft/entity/ai/pathing/NavigationType + f Lnet/minecraft/class_10; field_51 AIR + f Lnet/minecraft/class_10; field_50 LAND + f Lnet/minecraft/class_10; field_48 WATER +c net/minecraft/class_12010 net/minecraft/world/debug/data/GameEventListenerDebugData + f Lnet/minecraft/class_9139; field_62856 PACKET_CODEC + f I comp_4856 listenerRadius + m ()I comp_4856 listenerRadius + m (I)V + p 1 listenerRadius +c net/minecraft/class_12014 net/minecraft/world/debug/data/PoiDebugData + f Lnet/minecraft/class_9139; field_62861 PACKET_CODEC + f Lnet/minecraft/class_6880; comp_4865 poiType + f I comp_4866 freeTicketCount + f Lnet/minecraft/class_2338; comp_4864 pos + m (Lnet/minecraft/class_4156;)V + p 1 poi + m ()Lnet/minecraft/class_2338; comp_4864 pos + m ()Lnet/minecraft/class_6880; comp_4865 poiType + m ()I comp_4866 freeTicketCount + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;I)V + p 1 pos + p 2 poiType + p 3 freeTicketCount +c net/minecraft/class_12013 net/minecraft/world/debug/data/EntityPathDebugData + f Lnet/minecraft/class_9139; field_62860 PACKET_CODEC + f Lnet/minecraft/class_11; comp_4862 path + f F comp_4863 maxNodeDistance + m ()Lnet/minecraft/class_11; comp_4862 path + m ()F comp_4863 maxNodeDistance + m (Lnet/minecraft/class_11;F)V + p 1 path + p 2 maxNodeDistance +c net/minecraft/class_12012 net/minecraft/world/debug/data/BeeHiveDebugData + f Lnet/minecraft/class_9139; field_62859 PACKET_CODEC + f I comp_4859 occupantCount + f I comp_4860 honeyLevel + f Z comp_4861 sedated + f Lnet/minecraft/class_2248; comp_4858 type + m (Lnet/minecraft/class_4482;)Lnet/minecraft/class_12012; method_74568 fromBeehive + p 0 beehive + m ()Lnet/minecraft/class_2248; comp_4858 type + m ()I comp_4859 occupantCount + m ()I comp_4860 honeyLevel + m ()Z comp_4861 sedated + m (Lnet/minecraft/class_2248;IIZ)V + p 1 type + p 2 occupantCount + p 3 honeyLevel + p 4 sedated +c net/minecraft/class_12011 net/minecraft/world/debug/data/GoalSelectorDebugData + f Lnet/minecraft/class_9139; field_62857 PACKET_CODEC + f Ljava/util/List; comp_4857 goals + m ()Ljava/util/List; comp_4857 goals + m (Ljava/util/List;)V + p 1 goals +c net/minecraft/class_12011$class_8717 net/minecraft/world/debug/data/GoalSelectorDebugData$Goal + f Lnet/minecraft/class_9139; field_62858 PACKET_CODEC + f Z comp_1691 isRunning + f I comp_1690 priority + f Ljava/lang/String; comp_1692 name + m ()Ljava/lang/String; comp_1692 name + m ()Z comp_1691 isRunning + m ()I comp_1690 priority + m (IZLjava/lang/String;)V + p 1 priority + p 2 isRunning + p 3 name +c net/minecraft/class_12017 net/minecraft/world/debug/DebugSubscriptionType + f Lnet/minecraft/class_9139; field_62865 packetCodec + f I field_62864 DEFAULT_EXPIRY + f I field_62866 expiry + m ()I method_74573 getExpiry + m ()Lnet/minecraft/class_12017$class_12019; method_74569 optionalValueFor + m (Lnet/minecraft/class_9139;)V + p 1 packetCodec + m (Ljava/lang/Object;)Lnet/minecraft/class_12017$class_12019; method_74570 optionalValueFor + p 1 value + m (Lnet/minecraft/class_9139;I)V + p 1 packetCodec + p 2 expiry + m (Ljava/lang/Object;)Lnet/minecraft/class_12017$class_12018; method_74572 valueFor + p 1 value + m ()Lnet/minecraft/class_9139; method_74571 getPacketCodec +c net/minecraft/class_12017$class_12019 net/minecraft/world/debug/DebugSubscriptionType$OptionalValue + f Lnet/minecraft/class_9139; field_62868 PACKET_CODEC + f Ljava/util/Optional; comp_4874 value + f Lnet/minecraft/class_12017; comp_4873 subscription + m (Lnet/minecraft/class_12017;)Lnet/minecraft/class_9139; method_74576 createPacketCodec + p 0 type + m (Lnet/minecraft/class_12017;Ljava/util/Optional;)Lnet/minecraft/class_12017$class_12019; method_74577 method_74577 + p 1 value + m ()Ljava/util/Optional; comp_4874 value + m ()Lnet/minecraft/class_12017; comp_4873 subscription + m (Lnet/minecraft/class_12017;Ljava/util/Optional;)V + p 1 subscription + p 2 value +c net/minecraft/class_12017$class_12018 net/minecraft/world/debug/DebugSubscriptionType$Value + f Lnet/minecraft/class_9139; field_62867 PACKET_CODEC + f Lnet/minecraft/class_12017; comp_4871 subscription + f Ljava/lang/Object; comp_4872 value + m (Lnet/minecraft/class_12017;Ljava/lang/Object;)Lnet/minecraft/class_12017$class_12018; method_74575 method_74575 + p 1 value + m (Lnet/minecraft/class_12017;)Lnet/minecraft/class_9139; method_74574 createPacketCodec + p 0 type + m ()Lnet/minecraft/class_12017; comp_4871 subscription + m ()Ljava/lang/Object; comp_4872 value + m (Lnet/minecraft/class_12017;Ljava/lang/Object;)V + p 1 subscription + p 2 value +c net/minecraft/class_12015 net/minecraft/world/debug/data/StructureDebugData + f Lnet/minecraft/class_9139; field_62862 PACKET_CODEC + f Ljava/util/List; comp_4868 pieces + f Lnet/minecraft/class_3341; comp_4867 boundingBox + m ()Lnet/minecraft/class_3341; comp_4867 boundingBox + m ()Ljava/util/List; comp_4868 pieces + m (Lnet/minecraft/class_3341;Ljava/util/List;)V + p 1 boundingBox + p 2 pieces +c net/minecraft/class_12015$class_12016 net/minecraft/world/debug/data/StructureDebugData$Piece + f Lnet/minecraft/class_9139; field_62863 PACKET_CODEC + f Lnet/minecraft/class_3341; comp_4869 boundingBox + f Z comp_4870 isStart + m ()Z comp_4870 isStart + m ()Lnet/minecraft/class_3341; comp_4869 boundingBox + m (Lnet/minecraft/class_3341;Z)V + p 1 boundingBox + p 2 isStart +c net/minecraft/class_7497 net/minecraft/util/ApiServices + c A record holding session services used by the server.\n\n@apiNote Individual services can be accessed using the getters in\n{@link net.minecraft.server.MinecraftServer}. + f Ljava/lang/String; field_39392 USER_CACHE_FILE_NAME + f Lcom/mojang/authlib/GameProfileRepository; comp_839 profileRepository + f Lnet/minecraft/class_11561; comp_4407 nameToIdCache + f Lnet/minecraft/class_11755; comp_4624 profileResolver + f Lcom/mojang/authlib/minecraft/MinecraftSessionService; comp_837 sessionService + f Lcom/mojang/authlib/yggdrasil/ServicesKeySet; comp_838 servicesKeySet + m (Lcom/mojang/authlib/yggdrasil/YggdrasilAuthenticationService;Ljava/io/File;)Lnet/minecraft/class_7497; method_44143 create + c {@return a new API service instance}\n\n

This is usually not needed; call getters on {@link\nnet.minecraft.server.MinecraftServer} instead. + p 1 rootDirectory + p 0 authenticationService + m ()Z method_55595 providesProfileKeys + m ()Lnet/minecraft/class_7500; method_51467 serviceSignatureVerifier + m ()Lcom/mojang/authlib/yggdrasil/ServicesKeySet; comp_838 servicesKeySet + m ()Lcom/mojang/authlib/GameProfileRepository; comp_839 profileRepository + m ()Lcom/mojang/authlib/minecraft/MinecraftSessionService; comp_837 sessionService + m ()Lnet/minecraft/class_11561; comp_4407 nameToIdCache + m ()Lnet/minecraft/class_11755; comp_4624 profileResolver + m (Lcom/mojang/authlib/minecraft/MinecraftSessionService;Lcom/mojang/authlib/yggdrasil/ServicesKeySet;Lcom/mojang/authlib/GameProfileRepository;Lnet/minecraft/class_11561;Lnet/minecraft/class_11755;)V + p 1 sessionService + p 2 servicesKeySet + p 3 profileRepository + p 4 nameToIdCache + p 5 profileResolver +c net/minecraft/class_7498 net/minecraft/network/encryption/SignatureUpdatable + m (Lnet/minecraft/class_7498$class_7499;)V update update + p 1 updater +c net/minecraft/class_7498$class_7499 net/minecraft/network/encryption/SignatureUpdatable$SignatureUpdater + m ([B)V update update + p 1 data +c net/minecraft/class_26 net/minecraft/world/PersistentStateManager + f Lcom/mojang/datafixers/DataFixer; field_17663 dataFixer + f Ljava/util/Map; field_134 loadedStates + f Ljava/nio/file/Path; field_17664 directory + f Lorg/slf4j/Logger; field_136 LOGGER + f Ljava/util/concurrent/CompletableFuture; field_52688 savingFuture + f Lnet/minecraft/class_7225$class_7874; field_48926 registries + m (Ljava/lang/String;Lnet/minecraft/class_4284;I)Lnet/minecraft/class_2487; method_17923 readNbt + p 3 currentSaveVersion + p 1 id + p 2 dataFixTypes + m (Lnet/minecraft/class_10741;)Lnet/minecraft/class_18; method_17924 getOrCreate + p 1 type + m (Lnet/minecraft/class_10741;Lnet/minecraft/class_18;)V method_123 set + p 2 state + p 1 type + m ()Ljava/util/Map; method_61881 collectStatesToSave + m (Lnet/minecraft/class_10741;Ljava/lang/String;)V method_67443 method_67443 + p 1 error + m (Ljava/io/PushbackInputStream;)Z method_17921 isCompressed + p 1 stream + m (Lnet/minecraft/class_10741;Lnet/minecraft/class_2487;)V method_65963 save + p 1 type + p 2 nbt + m ()V method_125 save + m (Lnet/minecraft/class_10741;)Lnet/minecraft/class_18; method_120 readFromFile + p 1 type + m (Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/class_7225$class_7874;)V + p 2 dataFixer + p 1 directory + p 3 registries + m (Ljava/util/Map;Lnet/minecraft/class_6903;Lnet/minecraft/class_10741;Ljava/util/Optional;)V method_67444 method_67444 + p 4 optionalState + p 3 type + m (Ljava/lang/String;)Ljava/nio/file/Path; method_17922 getFile + p 1 id + m ()Ljava/util/concurrent/CompletableFuture; method_61873 startSaving + m (Lnet/minecraft/class_10741;Lnet/minecraft/class_18;Lnet/minecraft/class_6903;)Lnet/minecraft/class_2487; method_67442 encode + p 1 type + p 2 state + p 3 ops + m (Lnet/minecraft/class_10741;)Lnet/minecraft/class_18; method_20786 get + p 1 type + m (Ljava/util/Map;Lnet/minecraft/class_10741;Lnet/minecraft/class_6903;Lnet/minecraft/class_18;)V method_67445 method_67445 + p 4 state +c net/minecraft/class_6167 net/minecraft/unused/packageinfo/PackageInfo6167 +c net/minecraft/class_7495 net/minecraft/network/packet/s2c/play/ServerMetadataS2CPacket + f Ljava/util/Optional; comp_2278 favicon + f Lnet/minecraft/class_2561; comp_2277 description + f Lnet/minecraft/class_9139; field_47966 CODEC + m ()Ljava/util/Optional; comp_2278 favicon + m (Lnet/minecraft/class_2602;)V method_44131 apply + m ()Lnet/minecraft/class_2561; comp_2277 description + m (Lnet/minecraft/class_2561;Ljava/util/Optional;)V + p 1 description + p 2 favicon +c net/minecraft/class_6166 net/minecraft/unused/packageinfo/PackageInfo6166 +c net/minecraft/class_6161 net/minecraft/unused/packageinfo/PackageInfo6161 +c net/minecraft/class_20 net/minecraft/item/map/MapDecoration + f B comp_1845 rotation + f B comp_1844 z + f Lnet/minecraft/class_9139; field_48920 CODEC + f Ljava/util/Optional; comp_1846 name + f B comp_1843 x + f Lnet/minecraft/class_6880; comp_1842 type + m (Lnet/minecraft/class_6880;BBBLjava/util/Optional;)V + p 3 z + p 2 x + p 4 rotation + p 1 type + p 5 name + m ()B comp_1845 rotation + m ()Z method_94 isAlwaysRendered + m ()B comp_1844 z + m ()Lnet/minecraft/class_2960; method_58451 getAssetId + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/util/Optional; comp_1846 name + m ()Lnet/minecraft/class_6880; comp_1842 type + m ()B comp_1843 x +c net/minecraft/class_6160 net/minecraft/unused/packageinfo/PackageInfo6160 +c net/minecraft/class_22 net/minecraft/item/map/MapState + f Z field_17403 locked + f I field_33992 decorationCount + f Lorg/slf4j/Logger; field_25019 LOGGER + f [B field_122 colors + f Ljava/util/Map; field_121 frames + f Ljava/util/Map; field_117 decorations + f Z field_113 unlimitedTracking + f I field_31833 SIZE_HALF + f Ljava/util/List; field_112 updateTrackers + f I field_115 centerZ + c The scaled center coordinate of the map state on the Z axis.\n

\nAlways {@code 0} for the client. + f Ljava/util/Map; field_120 updateTrackersByPlayer + f Lnet/minecraft/class_5321; field_118 dimension + f Lcom/mojang/serialization/Codec; field_56478 CODEC + f Z field_114 showDecorations + f I field_31832 SIZE + f B field_119 scale + f Ljava/lang/String; field_52316 FRAME_PREFIX + f I field_116 centerX + c The scaled center coordinate of the map state on the X axis.\n

\nAlways {@code 0} for the client. + f Ljava/util/Map; field_123 banners + c The banner markers to track in world.\n

\nEmpty for the client. + f I field_31831 MAX_SCALE + f I field_33991 MAX_DECORATIONS + m (FF)Z method_61868 isInBounds + p 1 dz + p 0 dx + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V method_102 update + p 2 stack + p 1 player + m (Lnet/minecraft/class_1922;II)V method_109 removeBanner + p 1 world + p 2 x + p 3 z + m (Lnet/minecraft/class_1657;)Lnet/minecraft/class_22$class_23; method_101 getPlayerSyncData + p 1 player + m (I)Ljava/lang/String; method_61169 getFrameDecorationKey + p 0 id + m (Lnet/minecraft/class_22;)Ljava/lang/Boolean; method_67430 method_67430 + p 0 mapState + m (IIB)V method_32370 setColor + p 2 z + p 3 color + p 1 x + m ()Ljava/util/Collection; method_35503 getBanners + m (Lnet/minecraft/class_22;)Ljava/lang/Byte; method_67432 method_67432 + p 0 mapState + m (Ljava/lang/String;)V method_32368 removeDecoration + p 1 id + m (Lnet/minecraft/class_1936;D)B method_61869 getPlayerMarkerRotation + p 1 world + p 2 rotation + m ()Lnet/minecraft/class_22; method_32364 zoomOut + c Creates a new map state which is a zoomed out version of the current one.\n

\nThe scale of the new map state is {@code currentScale + zoomOutScale} and clamped between {@code 0} and {@code 4}.\n

\nThe colors are not copied, neither are the decorations. + m (Lnet/minecraft/class_1657;Ljava/lang/String;Lnet/minecraft/class_9292$class_9293;)V method_57626 method_57626 + p 2 id + p 3 decoration + m (Lnet/minecraft/class_9209;Lnet/minecraft/class_1657;)Lnet/minecraft/class_2596; method_100 getPlayerMarkerPacket + p 1 mapId + p 2 player + m ()Z method_32372 hasExplorationMapDecoration + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_108 addBanner + p 1 world + p 2 pos + m ()V method_32374 markDecorationsDirty + m (Lnet/minecraft/class_22;)Ljava/lang/Integer; method_67435 method_67435 + p 0 mapState + m (BZLnet/minecraft/class_5321;)Lnet/minecraft/class_22; method_32362 of + c Creates a new map state instance for the client.\n

\nThe client is not aware of the coordinates of the map state so its center coordinates will always be {@code (0, 0)}. + p 1 locked + p 0 scale + p 2 dimension + m (II)V method_103 markDirty + p 2 z + p 1 x + m (DDBZZLnet/minecraft/class_5321;)Lnet/minecraft/class_22; method_32363 of + c Creates a new map state instance. + p 7 dimension + p 5 showDecorations + p 6 unlimitedTracking + p 0 centerX + c the absolute center X-coordinate + p 4 scale + p 2 centerZ + c the absolute center Z-coordinate + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1936;DFF)Lnet/minecraft/class_22$class_9907; method_61870 getMarker + p 6 dz + p 2 world + p 3 rotation + p 5 dx + p 1 type + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67424 method_67424 + p 0 instance + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_9209;Lnet/minecraft/class_1799;)Z method_55785 method_55785 + p 2 other + m (F)B method_61867 offsetToMarkerPosition + p 0 d + m (I)Z method_37343 decorationCountNotLessThan + p 1 decorationCount + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_2338;Ljava/lang/String;Lnet/minecraft/class_6880;)V method_110 addDecorationsNbt + p 0 stack + p 2 id + p 1 pos + p 3 decorationType + m (Lnet/minecraft/class_22;)Ljava/lang/Boolean; method_67428 method_67428 + p 0 mapState + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1936;Ljava/lang/String;DDDLnet/minecraft/class_2561;)V method_107 addDecoration + p 3 key + p 2 world + p 4 x + p 6 z + p 8 rotation + p 10 text + p 1 type + m (Lnet/minecraft/class_22;)Lnet/minecraft/class_5321; method_67436 method_67436 + p 0 mapState + m (Ljava/util/List;)V method_32369 replaceDecorations + p 1 decorations + m (Lnet/minecraft/class_22;)Ljava/util/List; method_67427 method_67427 + p 0 mapState + m (Lnet/minecraft/class_5321;IIBLjava/nio/ByteBuffer;ZZZLjava/util/List;Ljava/util/List;)V + p 8 locked + p 7 unlimitedTracking + p 10 frames + p 9 banners + p 4 scale + p 3 centerZ + p 6 showDecorations + p 5 colors + p 2 centerX + p 1 dimension + m (IIBZZZLnet/minecraft/class_5321;)V + p 1 centerX + p 3 scale + p 2 centerZ + p 5 unlimitedTracking + p 4 showDecorations + p 7 dimension + p 6 locked + m (IIB)Z method_32365 putColor + c Sets the color at the specified coordinates if the current color is different.\n\n@return {@code true} if the color has been updated, else {@code false} + p 2 z + p 3 color + p 1 x + m (Lnet/minecraft/class_22;)Ljava/util/List; method_67426 method_67426 + p 0 mapState + m (Lnet/minecraft/class_9209;)Lnet/minecraft/class_10741; method_67425 createStateType + p 0 mapId + m (Lnet/minecraft/class_22;)Ljava/lang/Boolean; method_67429 method_67429 + p 0 mapState + m ()Ljava/lang/Iterable; method_32373 getDecorations + m (Lnet/minecraft/class_22;)Ljava/nio/ByteBuffer; method_67431 method_67431 + p 0 mapState + m (Lnet/minecraft/class_2338;I)V method_104 removeFrame + p 2 id + p 1 pos + m (Lnet/minecraft/class_1657;)Z method_64505 hasMapInvisibilityEquipment + p 0 player + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1936;DFF)Lcom/mojang/datafixers/util/Pair; method_61872 getPlayerMarkerAndRotation + p 2 world + p 1 type + p 3 rotation + p 6 dz + p 5 dx + m (Lnet/minecraft/class_1799;)Ljava/util/function/Predicate; method_55784 getEqualPredicate + p 0 stack + m ()Lnet/minecraft/class_22; method_32361 copy + m (Ljava/lang/String;Lnet/minecraft/class_9292$class_9293;Lnet/minecraft/class_9292;)Lnet/minecraft/class_9292; method_57627 method_57627 + p 2 decorations + m (FF)Lnet/minecraft/class_6880; method_61871 getPlayerMarker + p 1 dx + p 2 dz + m (Lnet/minecraft/class_22;)Ljava/lang/Integer; method_67433 method_67433 + p 0 mapState +c net/minecraft/class_22$class_23 net/minecraft/item/map/MapState$PlayerUpdateTracker + f Z field_130 dirty + f Z field_27891 decorationsDirty + f Lnet/minecraft/class_1657; field_125 player + f I field_128 startZ + f I field_129 startX + f I field_126 endZ + f I field_127 endX + f I field_124 emptyPacketsRequested + m (II)V method_111 markDirty + p 1 startX + p 2 startZ + m ()Lnet/minecraft/class_22$class_5637; method_32375 getMapUpdateData + m (Lnet/minecraft/class_22;Lnet/minecraft/class_1657;)V + p 2 player + m (Lnet/minecraft/class_9209;)Lnet/minecraft/class_2596; method_112 getPacket + p 1 mapId + m ()V method_32379 markDecorationsDirty +c net/minecraft/class_22$class_5637 net/minecraft/item/map/MapState$UpdateData + f Lnet/minecraft/class_9139; field_48925 CODEC + f I comp_2319 height + f I comp_2318 width + f I comp_2317 startZ + f I comp_2316 startX + f [B comp_2320 colors + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Optional; method_56816 decode + p 0 buf + m ()I comp_2319 height + m ()I comp_2318 width + m (Lio/netty/buffer/ByteBuf;Ljava/util/Optional;)V method_56817 encode + p 1 updateData + p 0 buf + m ()I comp_2317 startZ + m ()I comp_2316 startX + m ()[B comp_2320 colors + m (IIII[B)V + p 1 startX + p 3 width + p 2 startZ + p 5 colors + p 4 height + m (Lnet/minecraft/class_22;)V method_32380 setColorsTo + p 1 mapState +c net/minecraft/class_22$class_9907 net/minecraft/item/map/MapState$Marker + f B comp_2975 x + f B comp_2976 y + f B comp_2977 rot + f Lnet/minecraft/class_6880; comp_2974 type + m ()B comp_2975 x + m ()B comp_2976 y + m ()B comp_2977 rot + m ()Lnet/minecraft/class_6880; comp_2974 type + m (Lnet/minecraft/class_6880;BBB)V + p 1 type + p 2 x + p 3 y + p 4 rot +c net/minecraft/class_7491 net/minecraft/data/tag/vanilla/VanillaPointOfInterestTypeTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 2 registriesFuture + p 1 output +c net/minecraft/class_6162 net/minecraft/unused/packageinfo/PackageInfo6162 +c net/minecraft/class_7492 net/minecraft/network/message/MessageDecorator + c Message decorator decorates the chat messages and other messages server-side.\nCurrently, only one message decorator can exist at a time. The message decorator\nthat is currently used can be obtained by\n{@link net.minecraft.server.MinecraftServer#getMessageDecorator}.\n\n

Messages decorated using message decorator are still marked as verifiable\nif there is no change in its text or used fonts. If they change, the message cannot\nbe verified. Before 1.19.2, chat previews allowed signing of such message; however\nthat feature was removed in 1.19.3. + f Lnet/minecraft/class_7492; field_39384 NOOP + c An empty message decorator that returns the original message. + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; decorate decorate + p 1 sender + p 2 message + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_44303 method_44303 + p 0 sender + p 1 message +c net/minecraft/class_21 net/minecraft/item/map/MapDecorationTypes + f I field_50020 TRIAL_CHAMBERS_MAP_COLOR + f Lnet/minecraft/class_6880; field_46179 VILLAGE_SAVANNA + f Lnet/minecraft/class_6880; field_46178 VILLAGE_PLAINS + f Lnet/minecraft/class_6880; field_46177 VILLAGE_DESERT + f Lnet/minecraft/class_6880; field_46180 VILLAGE_SNOWY + f Lnet/minecraft/class_6880; field_46183 SWAMP_HUT + f Lnet/minecraft/class_6880; field_46182 JUNGLE_TEMPLE + f Lnet/minecraft/class_6880; field_46181 VILLAGE_TAIGA + f Lnet/minecraft/class_6880; field_50019 TRIAL_CHAMBERS + f Lnet/minecraft/class_6880; field_83 BLUE_MARKER + f Lnet/minecraft/class_6880; field_89 RED_MARKER + f Lnet/minecraft/class_6880; field_88 MANSION + f Lnet/minecraft/class_6880; field_85 TARGET_POINT + f Lnet/minecraft/class_6880; field_84 TARGET_X + f Lnet/minecraft/class_6880; field_87 PLAYER_OFF_LIMITS + f Lnet/minecraft/class_6880; field_86 PLAYER_OFF_MAP + f Lnet/minecraft/class_6880; field_93 BANNER_YELLOW + f Lnet/minecraft/class_6880; field_92 BANNER_ORANGE + f Lnet/minecraft/class_6880; field_95 FRAME + f Lnet/minecraft/class_6880; field_94 BANNER_LIME + f Lnet/minecraft/class_6880; field_91 PLAYER + f Lnet/minecraft/class_6880; field_90 BANNER_LIGHT_BLUE + f Lnet/minecraft/class_6880; field_97 BANNER_MAGENTA + f Lnet/minecraft/class_6880; field_96 BANNER_WHITE + f Lnet/minecraft/class_6880; field_99 BANNER_RED + f Lnet/minecraft/class_6880; field_98 MONUMENT + f Lnet/minecraft/class_6880; field_100 BANNER_PINK + f Lnet/minecraft/class_6880; field_101 BANNER_GRAY + f Lnet/minecraft/class_6880; field_102 BANNER_GREEN + f Lnet/minecraft/class_6880; field_107 BANNER_LIGHT_GRAY + f Lnet/minecraft/class_6880; field_108 BANNER_CYAN + f Lnet/minecraft/class_6880; field_103 BANNER_BLACK + f Lnet/minecraft/class_6880; field_104 BANNER_PURPLE + f Lnet/minecraft/class_6880; field_105 BANNER_BLUE + f Lnet/minecraft/class_6880; field_106 BANNER_BROWN + f Lnet/minecraft/class_6880; field_110 RED_X + m (Ljava/lang/String;Ljava/lang/String;ZIZZ)Lnet/minecraft/class_6880; method_58453 register + p 1 assetId + p 0 id + p 5 explorationMapElement + p 4 trackCount + p 3 mapColor + p 2 showOnItemFrame + m (Ljava/lang/String;Ljava/lang/String;ZZ)Lnet/minecraft/class_6880; method_58454 register + p 3 trackCount + p 2 showOnItemFrame + p 1 assetId + p 0 id + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_6880; method_58455 getDefault + p 0 registry +c net/minecraft/class_6169 net/minecraft/unused/packageinfo/PackageInfo6169 +c net/minecraft/class_6168 net/minecraft/unused/packageinfo/PackageInfo6168 +c net/minecraft/class_12003 net/minecraft/network/encryption/BearerToken + f Ljava/lang/String; field_62839 ALLOWED_CHARS + f Ljava/lang/String; comp_4833 secretKey + m (Ljava/lang/String;)Z method_74524 isValid + p 0 token + m ()Ljava/lang/String; method_74523 generate + m ()Ljava/lang/String; comp_4833 secretKey + m (Ljava/lang/String;)V + p 1 secretKey +c net/minecraft/class_12002 net/minecraft/server/dedicated/management/ManagementServerEncryption + f Ljava/lang/String; field_62836 PASSWORD_ENVIRONMENT_VARIABLE_NAME + f Ljava/lang/String; field_62837 PASSWORD_PROPERTY_NAME + f Lorg/slf4j/Logger; field_62838 LOGGER + m (Ljava/lang/String;Ljava/lang/String;)Lio/netty/handler/ssl/SslContext; method_74522 createContext + p 0 keystore + p 1 password + m ()V method_74519 logInstructions + m (Ljava/lang/String;)Ljava/lang/String; method_74521 getKeystorePassword + p 0 fallback + m (Ljava/io/File;Ljava/lang/String;)Lio/netty/handler/ssl/SslContext; method_74520 createContext + p 0 keystore + p 1 password +c net/minecraft/class_12000 net/minecraft/server/dedicated/management/network/BearerAuthenticationHandler + f Ljava/lang/String; field_62831 BEARER_PREFIX + f Lnet/minecraft/class_12003; field_62833 token + f Lorg/slf4j/Logger; field_62832 LOGGER + f Lio/netty/util/AttributeKey; field_63006 AUTHENTICATED_KEY + f Ljava/util/Set; field_63674 allowedOrigins + f Ljava/lang/String; field_63673 PROTOCOL_PREFIX + f Lio/netty/util/AttributeKey; field_63671 WEBSOCKET_AUTH_ALLOWED_KEY + f Ljava/lang/String; field_63672 PROTOCOL + m (Lio/netty/handler/codec/http/HttpRequest;)Ljava/lang/String; method_75595 getProtocolToken + p 1 request + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/util/concurrent/Future;)V method_74509 method_74509 + p 1 future + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/String;)V method_74510 sendUnauthorizedError + p 2 message + p 1 context + m (Ljava/lang/String;)Z method_74512 tokenMatches + p 1 requestToken + m (Lio/netty/handler/codec/http/HttpRequest;)Ljava/lang/String; method_75594 getBearerToken + p 1 request + m (Lio/netty/handler/codec/http/HttpRequest;)Z method_75593 isOriginAllowed + p 1 request + m (Lio/netty/channel/ChannelHandlerContext;)Ljava/lang/String; method_74508 getHostAddress + p 1 context + m (Lio/netty/handler/codec/http/HttpRequest;)Lnet/minecraft/class_12000$class_12001; method_74511 authenticate + p 1 request + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V write write + p 2 value + p 1 context + p 3 promise + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V channelRead channelRead + p 2 object + p 1 context + m (Lnet/minecraft/class_12003;Ljava/lang/String;)V + p 1 token + p 2 allowedOrigins +c net/minecraft/class_12000$class_12001 net/minecraft/server/dedicated/management/network/BearerAuthenticationHandler$Result + f Ljava/lang/String; field_62835 message + f Z field_62834 successful + f Z field_63675 mustReturnProtocol + m ()Z method_74517 isSuccessful + m (ZLjava/lang/String;Z)V + p 3 mustReturnProtocol + p 1 successful + p 2 message + m (Ljava/lang/String;)Lnet/minecraft/class_12000$class_12001; method_74516 failure + p 0 message + m ()Z method_75597 mustReturnProtocol + m (Z)Lnet/minecraft/class_12000$class_12001; method_75596 success + p 0 mustReturnProtocol + m ()Ljava/lang/String; method_74518 getMessage + m ()Lnet/minecraft/class_12000$class_12001; method_74515 success +c net/minecraft/class_12007 net/minecraft/world/debug/data/BreezeDebugData + f Lnet/minecraft/class_9139; field_62846 PACKET_CODEC + f Ljava/util/Optional; comp_4853 jumpTarget + f Ljava/util/Optional; comp_4852 attackTarget + m ()Ljava/util/Optional; comp_4852 attackTarget + m ()Ljava/util/Optional; comp_4853 jumpTarget + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 attackTarget + p 2 jumpTarget +c net/minecraft/class_12006 net/minecraft/world/debug/data/BrainDebugData + f Lnet/minecraft/class_9139; field_62845 PACKET_CODEC + f Ljava/util/List; comp_4847 behaviors + f Ljava/util/List; comp_4846 activities + f Ljava/util/List; comp_4849 gossips + f Ljava/util/List; comp_4848 memories + f I comp_4840 xp + f F comp_4842 maxHealth + f F comp_4841 health + f Z comp_4844 wantsGolem + f I comp_4845 angerLevel + f Ljava/lang/String; comp_4839 profession + f Ljava/lang/String; comp_4838 name + f Ljava/lang/String; comp_4843 inventory + f Ljava/util/Set; comp_4851 potentialPois + f Ljava/util/Set; comp_4850 pois + m (Lnet/minecraft/class_2540;)V method_74560 write + p 1 buf + m (Lnet/minecraft/class_3218;JLnet/minecraft/class_4140;Ljava/util/Optional;)Ljava/lang/String; method_74549 collectMemoryString + p 0 world + p 1 time + p 4 memory + p 3 type + m (Lnet/minecraft/class_1646;)Ljava/util/List; method_74555 getGossips + p 0 villager + m (Lnet/minecraft/class_3218;JLjava/util/Map$Entry;)Ljava/lang/String; method_74550 method_74550 + p 3 entry + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Ljava/util/stream/Stream; method_74552 streamMemories + p 2 time + p 1 entity + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Lnet/minecraft/class_12006; method_74551 fromEntity + p 0 world + p 1 entity + m (Lnet/minecraft/class_2338;)Z method_74556 poiContains + p 1 pos + m (Ljava/util/List;Ljava/util/UUID;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)V method_74559 method_74559 + p 2 gossips + p 1 uuid + m (Lnet/minecraft/class_3218;Ljava/lang/Object;)Ljava/lang/String; method_74553 toString + p 0 world + p 1 value + m (Lnet/minecraft/class_3218;Ljava/lang/Object;)Ljava/lang/String; method_74562 method_74562 + p 1 v + m (Lnet/minecraft/class_4095;[Lnet/minecraft/class_4140;)Ljava/util/Set; method_74554 getMemorizedPositions + p 1 types + p 0 brain + m (Ljava/lang/String;)Ljava/lang/String; method_74557 method_74557 + p 0 memory + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2338;)Z method_74563 potentialPoiContains + p 1 pos + m (Ljava/util/List;Ljava/lang/String;Lnet/minecraft/class_4139;I)V method_74558 method_74558 + p 2 type + p 3 gossip + m ()Ljava/util/List; comp_4849 gossips + m ()Ljava/util/List; comp_4848 memories + m ()Ljava/util/List; comp_4847 behaviors + m ()Ljava/util/List; comp_4846 activities + m ()F comp_4841 health + m ()I comp_4840 xp + m ()F comp_4842 maxHealth + m ()I comp_4845 angerLevel + m ()Z comp_4844 wantsGolem + m ()Ljava/lang/String; comp_4843 inventory + m ()Ljava/lang/String; comp_4838 name + m ()Ljava/lang/String; comp_4839 profession + m ()Ljava/util/Set; comp_4850 pois + m ()Ljava/util/Set; comp_4851 potentialPois + m (Ljava/lang/String;Ljava/lang/String;IFFLjava/lang/String;ZILjava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/Set;Ljava/util/Set;)V + p 1 name + p 2 profession + p 3 xp + p 4 health + p 5 maxHealth + p 6 inventory + p 7 wantsGolem + p 8 angerLevel + p 9 activities + p 10 behaviors + p 11 memories + p 12 gossips + p 13 pois + p 14 potentialPois +c net/minecraft/class_12005 net/minecraft/world/debug/data/BeeDebugData + f Lnet/minecraft/class_9139; field_62844 PACKET_CODEC + f Ljava/util/List; comp_4837 blacklistedHives + f I comp_4836 travelTicks + f Ljava/util/Optional; comp_4835 flowerPos + f Ljava/util/Optional; comp_4834 hivePos + m (Lnet/minecraft/class_2338;)Z method_74548 hivePosEquals + p 1 pos + m ()Ljava/util/List; comp_4837 blacklistedHives + m ()Ljava/util/Optional; comp_4834 hivePos + m ()Ljava/util/Optional; comp_4835 flowerPos + m ()I comp_4836 travelTicks + m (Ljava/util/Optional;Ljava/util/Optional;ILjava/util/List;)V + p 1 hivePos + p 2 flowerPos + p 3 travelTicks + p 4 blacklistedHives +c net/minecraft/class_17 net/minecraft/item/map/MapBannerMarker + c Represents a banner marker in world.\n

\nUsed to track banners in a map state. + f Lcom/mojang/serialization/Codec; field_48918 CODEC + f Lnet/minecraft/class_2338; comp_2312 pos + f Ljava/util/Optional; comp_2314 name + f Lnet/minecraft/class_1767; comp_2313 color + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_17; method_73 fromWorldBlock + p 1 blockPos + p 0 blockView + m ()Lnet/minecraft/class_6880; method_72 getDecorationType + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56812 method_56812 + p 0 instance + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1767;Ljava/util/Optional;)V + p 2 dyeColor + p 1 pos + p 3 name + m ()Ljava/lang/String; method_71 getKey + m ()Lnet/minecraft/class_1767; comp_2313 color + m ()Lnet/minecraft/class_2338; comp_2312 pos + m ()Ljava/util/Optional; comp_2314 name +c net/minecraft/class_12009 net/minecraft/world/debug/data/GameEventDebugData + f Lnet/minecraft/class_9139; field_62855 PACKET_CODEC + f Lnet/minecraft/class_6880; comp_4854 event + f Lnet/minecraft/class_243; comp_4855 pos + m ()Lnet/minecraft/class_243; comp_4855 pos + m ()Lnet/minecraft/class_6880; comp_4854 event + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_243;)V + p 1 event + p 2 pos +c net/minecraft/class_19 net/minecraft/item/map/MapFrameMarker + f Lcom/mojang/serialization/Codec; field_56473 CODEC + f I comp_3493 entityId + f I comp_3492 rotation + f Lnet/minecraft/class_2338; comp_3491 pos + m (Lnet/minecraft/class_2338;II)V + p 3 entityId + p 2 rotation + p 1 pos + m ()I comp_3493 entityId + m ()I comp_3492 rotation + m (Lnet/minecraft/class_2338;)Ljava/lang/String; method_81 getKey + p 0 pos + m ()Ljava/lang/String; method_82 getKey + m ()Lnet/minecraft/class_2338; comp_3491 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67420 method_67420 + p 0 instance +c net/minecraft/class_18 net/minecraft/world/PersistentState + f Z field_72 dirty + m (Z)V method_78 setDirty + p 1 dirty + m ()V method_80 markDirty + m ()Z method_79 isDirty +c net/minecraft/class_12008 net/minecraft/entity/EntityBlockIntersectionType + f Lnet/minecraft/class_9139; field_62850 PACKET_CODEC + f I field_62852 id + f Ljava/util/function/IntFunction; field_62851 BY_ID + f I field_62853 color + f Lnet/minecraft/class_12008; field_62848 IN_FLUID + f Lnet/minecraft/class_12008; field_62847 IN_BLOCK + f Lnet/minecraft/class_12008; field_62849 IN_AIR + m ()I method_74564 getColor + m (Ljava/lang/String;III)V + p 4 color + p 3 id + m (Lnet/minecraft/class_12008;)I method_74567 method_74567 + p 0 type + m (Lnet/minecraft/class_12008;)I method_74565 method_74565 + p 0 type +c net/minecraft/class_6132 net/minecraft/unused/packageinfo/PackageInfo6132 +c net/minecraft/class_8795 net/minecraft/data/loottable/rebalance/TradeRebalanceLootTableProviders + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/class_2438; method_53853 createTradeRebalanceProvider + p 1 registriesFuture + p 0 output +c net/minecraft/class_34 net/minecraft/world/level/storage/LevelSummary + f Lnet/minecraft/class_1940; field_25022 levelInfo + f Ljava/lang/String; field_205 name + f Z field_209 requiresConversion + f Z field_23772 locked + f Ljava/nio/file/Path; field_23773 iconPath + f Lnet/minecraft/class_2561; field_24191 details + f Z field_40371 experimental + f Lnet/minecraft/class_2561; field_46832 SELECT_WORLD_TEXT + f Lnet/minecraft/class_5315; field_25023 versionInfo + m ()Z method_56127 isImmediatelyLoadable + m (Lnet/minecraft/class_34;)I method_251 compareTo + m ()Lnet/minecraft/class_2561; method_27430 createDetails + m ()Z method_54552 isSelectable + m ()Z method_54550 wouldBeDowngraded + m ()Z method_259 hasCheats + m ()Ljava/nio/file/Path; method_27020 getIconPath + m ()Z method_257 isHardcore + m (Ljava/lang/Object;)I compareTo compareTo + p 1 other + m ()Z method_33784 isUnavailable + m ()Lnet/minecraft/class_5315; method_29586 getVersionInfo + m ()Lnet/minecraft/class_34$class_5781; method_33405 getConversionWarning + m ()J method_249 getLastPlayed + m ()Z method_54555 isDeletable + m ()Z method_54553 isEditable + m ()Z method_54549 shouldPromptBackup + m ()Lnet/minecraft/class_2561; method_27429 getDetails + m ()Lnet/minecraft/class_1940; method_35505 getLevelInfo + m ()Z method_27021 isLocked + m ()Ljava/lang/String; method_252 getDisplayName + m ()Lnet/minecraft/class_2561; method_54551 getSelectWorldText + m ()Lnet/minecraft/class_1934; method_247 getGameMode + m (Lnet/minecraft/class_1940;Lnet/minecraft/class_5315;Ljava/lang/String;ZZZLjava/nio/file/Path;)V + p 1 levelInfo + p 2 versionInfo + p 5 locked + p 6 experimental + p 3 name + p 4 requiresConversion + p 7 iconPath + m ()Z method_255 requiresConversion + m ()Z method_38496 isVersionAvailable + m ()Lnet/minecraft/class_5250; method_258 getVersion + m ()Z method_54554 isRecreatable + m ()Ljava/lang/String; method_248 getName + m ()Z method_45554 isExperimental +c net/minecraft/class_34$class_8578 net/minecraft/world/level/storage/LevelSummary$SymlinkLevelSummary + f Lnet/minecraft/class_2561; field_46837 TITLE_TEXT + f Lnet/minecraft/class_2561; field_46836 MORE_INFO_TEXT + m (Ljava/lang/String;Ljava/nio/file/Path;)V + p 1 name + p 2 iconPath +c net/minecraft/class_34$class_8896 net/minecraft/world/level/storage/LevelSummary$RecoveryWarning + f Lnet/minecraft/class_2561; field_46834 BUTTON_TEXT + f J field_46835 lastPlayed + f Lnet/minecraft/class_2561; field_46833 WARNING_TEXT + m (Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_54556 method_54556 + p 0 style + m (Ljava/lang/String;Ljava/nio/file/Path;J)V + p 1 name + p 2 iconPath + p 3 lastPlayed +c net/minecraft/class_34$class_5781 net/minecraft/world/level/storage/LevelSummary$ConversionWarning + f Z field_28441 dangerous + f Z field_28440 backup + f Ljava/lang/String; field_28442 translationKeySuffix + f Lnet/minecraft/class_34$class_5781; field_28438 DOWNGRADE + f Lnet/minecraft/class_34$class_5781; field_28437 NONE + f Lnet/minecraft/class_34$class_5781; field_28439 UPGRADE_TO_SNAPSHOT + m (Ljava/lang/String;IZZLjava/lang/String;)V + p 3 backup + p 4 dangerous + p 5 translationKeySuffix + m ()Z method_33407 isDangerous + m ()Z method_33406 promptsBackup + m ()Ljava/lang/String; method_33408 getTranslationKeySuffix +c net/minecraft/class_8796 net/minecraft/structure/StructureUpdateEntrypoint + m (Ljava/lang/String;)V method_53854 update + p 0 directory + m (Ljava/nio/file/Path;)Z method_53857 method_53857 + p 0 path + m ([Ljava/lang/String;)V method_53856 main + p 0 args + m (Ljava/nio/file/Path;)V method_53855 method_53855 + p 0 path +c net/minecraft/class_6131 net/minecraft/unused/packageinfo/PackageInfo6131 +c net/minecraft/class_7463 net/minecraft/text/Decoration + c A decoration is a pre-defined set of styling and formatting rules for messages\nsent by the server. This consists of the translation key, the style, and the parameters\nusable in the translation. The actual text format needs to be supplied via custom\nlanguage files in resource packs. + f Lcom/mojang/serialization/Codec; field_39219 CODEC + f Lnet/minecraft/class_9139; field_51971 PACKET_CODEC + f Ljava/lang/String; comp_788 translationKey + f Ljava/util/List; comp_789 parameters + f Lnet/minecraft/class_2583; comp_790 style + m (Ljava/lang/String;)Lnet/minecraft/class_7463; method_44780 ofOutgoingMessage + c {@return the decoration used in outgoing messages sent with {@link\nnet.minecraft.server.command.MessageCommand}}\n\n@implNote This decoration allows using the target (recipient) and the content parameters.\nIt is italicized and colored gray. + p 0 translationKey + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2556$class_7602;)Lnet/minecraft/class_2561; method_43832 apply + c {@return the text obtained by applying the passed values to the decoration} + p 1 content + c the value of the content parameter + p 2 params + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43830 method_43830 + p 0 instance + m (Ljava/lang/String;)Lnet/minecraft/class_7463; method_43835 ofTeamMessage + c {@return the decoration used in chat messages}\n\n@implNote This decoration allows using the target (team name), the sender, and the\ncontent parameters. It has no style. + p 0 translationKey + m (Ljava/lang/String;)Lnet/minecraft/class_7463; method_44779 ofIncomingMessage + c {@return the decoration used in incoming messages sent with {@link\nnet.minecraft.server.command.MessageCommand}}\n\n@implNote This decoration allows using the sender and the content parameters. It is\nitalicized and colored gray. + p 0 translationKey + m (Ljava/lang/String;)Lnet/minecraft/class_7463; method_43831 ofChat + c {@return the decoration used in chat messages}\n\n@implNote This decoration allows using the sender and the content parameters. It has no style. + p 0 translationKey + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2556$class_7602;)[Lnet/minecraft/class_2561; method_43834 collectArguments + c {@return the arguments passed to {@link Text#translatable(String, Object[])}}\n\n

This is collected by supplying {@code content} and {@code sender} to the\nparameters' {@link Decoration.Parameter#apply} method. + p 1 content + p 2 params + m ()Lnet/minecraft/class_2583; comp_790 style + m ()Ljava/lang/String; comp_788 translationKey + m ()Ljava/util/List; comp_789 parameters + m (Ljava/lang/String;Ljava/util/List;Lnet/minecraft/class_2583;)V + p 1 translationKey + p 2 parameters + p 3 style +c net/minecraft/class_7463$class_7464 net/minecraft/text/Decoration$Parameter + c Represents a parameter that the decoration uses. + f I field_51974 id + f Ljava/util/function/IntFunction; field_51973 BY_ID + f Lnet/minecraft/class_9139; field_51972 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_39223 CODEC + f Ljava/lang/String; field_39224 name + f Lnet/minecraft/class_7463$class_7464$class_7465; field_39225 selector + f Lnet/minecraft/class_7463$class_7464; field_39222 CONTENT + f Lnet/minecraft/class_7463$class_7464; field_39221 TARGET + f Lnet/minecraft/class_7463$class_7464; field_39220 SENDER + m (Ljava/lang/String;IILjava/lang/String;Lnet/minecraft/class_7463$class_7464$class_7465;)V + p 4 name + p 5 selector + p 3 id + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2556$class_7602;)Lnet/minecraft/class_2561; method_43840 method_43840 + p 0 content + p 1 params + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2556$class_7602;)Lnet/minecraft/class_2561; method_43839 method_43839 + p 1 params + p 0 content + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2556$class_7602;)Lnet/minecraft/class_2561; method_43838 method_43838 + p 0 content + p 1 params + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2556$class_7602;)Lnet/minecraft/class_2561; method_43837 apply + c {@return the text obtained by applying the passed values to the parameter} + p 1 content + p 2 params + m (Lnet/minecraft/class_7463$class_7464;)I method_60653 method_60653 + p 0 parameter + m (Lnet/minecraft/class_7463$class_7464;)I method_60652 method_60652 + p 0 parameter +c net/minecraft/class_7463$class_7464$class_7465 net/minecraft/text/Decoration$Parameter$Selector + c A functional interface that selects the text from the passed parameters. + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2556$class_7602;)Lnet/minecraft/class_2561; select select + p 1 content + p 2 params +c net/minecraft/class_6133 net/minecraft/unused/packageinfo/PackageInfo6133 +c net/minecraft/class_8794 net/minecraft/data/loottable/rebalance/TradeRebalanceChestLootTableGenerator + f Lnet/minecraft/class_7225$class_7874; comp_2785 registries + m ()Lnet/minecraft/class_52$class_53; method_53849 createPillagerOutpostChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_53852 createJungleTempleChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_53851 createAncientCityChestTableBuilder + m ()Lnet/minecraft/class_52$class_53; method_53850 createDesertPyramidChestTableBuilder + m ()Lnet/minecraft/class_7225$class_7874; comp_2785 registries + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries +c net/minecraft/class_31 net/minecraft/world/level/LevelProperties + f J field_198 timeOfDay + f I field_176 clearWeatherTime + f Lnet/minecraft/class_236; field_191 scheduledEvents + f Lnet/minecraft/class_1940; field_25030 levelInfo + f I field_158 version + f Lnet/minecraft/class_2487; field_170 playerData + f Lnet/minecraft/class_2881$class_8576; field_25031 dragonFight + f I field_192 rainTime + f Ljava/util/Optional; field_24193 worldBorder + f Z field_157 difficultyLocked + f I field_17736 wanderingTraderSpawnDelay + f Lnet/minecraft/class_5217$class_12064; field_63052 spawnPoint + f Lnet/minecraft/class_31$class_7729; field_40372 specialProperty + f Ljava/lang/String; field_31843 WORLD_GEN_SETTINGS_KEY + f Lcom/mojang/serialization/Lifecycle; field_25426 lifecycle + f Ljava/util/UUID; field_17738 wanderingTraderId + f Lnet/minecraft/class_5285; field_25425 generatorOptions + f Z field_185 initialized + f Ljava/lang/String; field_46838 LEVEL_NAME_KEY + f J field_189 time + f Ljava/util/Set; field_43352 removedFeatures + f I field_173 thunderTime + f Ljava/lang/String; field_36349 PLAYER_KEY + f Lnet/minecraft/class_2487; field_156 customBossEvents + f Z field_168 thundering + f Ljava/util/Set; field_21837 serverBrands + f I field_17737 wanderingTraderSpawnChance + f Z field_190 raining + f Lorg/slf4j/Logger; field_25029 LOGGER + f Z field_21838 modded + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/class_1940;Lnet/minecraft/class_31$class_7729;Lnet/minecraft/class_5285;Lcom/mojang/serialization/Lifecycle;)Lnet/minecraft/class_31; method_29029 readProperties + p 1 info + p 0 dynamic + p 3 generatorOptions + p 2 specialProperty + p 4 lifecycle + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/stream/Stream; method_29032 method_29032 + p 0 removedFeatures + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_2520;)V method_29030 method_29030 + p 1 worldGenSettings + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/stream/Stream; method_49901 method_49901 + p 0 serverBrands + m (Lnet/minecraft/class_1940;Lnet/minecraft/class_5285;Lnet/minecraft/class_31$class_7729;Lcom/mojang/serialization/Lifecycle;)V + p 4 lifecycle + p 1 levelInfo + p 2 generatorOptions + p 3 specialProperty + m (Ljava/util/Set;)Lnet/minecraft/class_2499; method_49902 createStringList + p 0 strings + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_2487;Lnet/minecraft/class_2487;)V method_158 updateProperties + p 3 playerNbt + p 2 levelNbt + p 1 registryManager + m (Lnet/minecraft/class_2487;ZLnet/minecraft/class_5217$class_12064;JJIIIZIZZZLjava/util/Optional;IILjava/util/UUID;Ljava/util/Set;Ljava/util/Set;Lnet/minecraft/class_236;Lnet/minecraft/class_2487;Lnet/minecraft/class_2881$class_8576;Lnet/minecraft/class_1940;Lnet/minecraft/class_5285;Lnet/minecraft/class_31$class_7729;Lcom/mojang/serialization/Lifecycle;)V + p 20 serverBrands + p 19 wanderingTraderId + p 22 scheduledEvents + p 21 removedFeatures + p 16 worldBorder + p 15 difficultyLocked + p 18 wanderingTraderSpawnChance + p 17 wanderingTraderSpawnDelay + p 12 thunderTime + p 11 raining + p 14 initialized + p 13 thundering + p 8 version + p 10 rainTime + p 9 clearWeatherTime + p 28 lifecycle + p 27 specialProperty + p 24 dragonFight + p 23 customBossEvents + p 26 generatorOptions + p 25 levelInfo + p 4 time + p 3 spawnPoint + p 6 timeOfDay + p 2 modded + p 1 playerData + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_2784$class_5200;)V method_74168 method_74168 + p 1 worldBorder +c net/minecraft/class_31$class_7729 net/minecraft/world/level/LevelProperties$SpecialProperty + f Lnet/minecraft/class_31$class_7729; field_40373 NONE + f Lnet/minecraft/class_31$class_7729; field_40374 FLAT + f Lnet/minecraft/class_31$class_7729; field_40375 DEBUG +c net/minecraft/class_8791 net/minecraft/network/packet/c2s/common/SyncedClientOptions + f Lnet/minecraft/class_1306; comp_1956 mainArm + f Z comp_1954 chatColorsEnabled + f Z comp_1957 filtersText + f Z comp_1958 allowsServerListing + f I field_46155 MAX_LANGUAGE_CODE_LENGTH + f I comp_1955 playerModelParts + f Ljava/lang/String; comp_1951 language + f I comp_1952 viewDistance + f Lnet/minecraft/class_1659; comp_1953 chatVisibility + f Lnet/minecraft/class_4066; comp_2906 particleStatus + m ()Lnet/minecraft/class_1306; comp_1956 mainArm + m ()Lnet/minecraft/class_8791; method_53821 createDefault + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Z comp_1954 chatColorsEnabled + m ()Z comp_1957 filtersText + m ()Z comp_1958 allowsServerListing + m (Lnet/minecraft/class_2540;)V method_53822 write + p 1 buf + m ()I comp_1955 playerModelParts + m ()Ljava/lang/String; comp_1951 language + m ()Lnet/minecraft/class_4066; comp_2906 particleStatus + m ()Lnet/minecraft/class_1659; comp_1953 chatVisibility + m ()I comp_1952 viewDistance + m (Ljava/lang/String;ILnet/minecraft/class_1659;ZILnet/minecraft/class_1306;ZZLnet/minecraft/class_4066;)V + p 1 language + p 2 viewDistance + p 3 chatVisibility + p 4 chatColorsEnabled + p 5 playerModelParts + p 6 mainArm + p 7 filtersText + p 8 allowsServerListing + p 9 particleStatus +c net/minecraft/class_8792 net/minecraft/server/network/ConnectedClientData + f Lnet/minecraft/class_8791; comp_1961 syncedOptions + f Z comp_2202 transferred + f I comp_1960 latency + f Lcom/mojang/authlib/GameProfile; comp_1959 gameProfile + m ()Lnet/minecraft/class_8791; comp_1961 syncedOptions + m (Lcom/mojang/authlib/GameProfile;Z)Lnet/minecraft/class_8792; method_53824 createDefault + p 0 profile + m ()Lcom/mojang/authlib/GameProfile; comp_1959 gameProfile + m ()I comp_1960 latency + m ()Z comp_2202 transferred + m (Lcom/mojang/authlib/GameProfile;ILnet/minecraft/class_8791;Z)V + p 1 gameProfile + p 2 latency + p 3 syncedOptions + p 4 transferred +c net/minecraft/class_33 net/minecraft/world/level/storage/LevelStorageException + f Lnet/minecraft/class_2561; field_38981 messageText + m ()Lnet/minecraft/class_2561; method_43416 getMessageText + m (Lnet/minecraft/class_2561;)V + p 1 messageText +c net/minecraft/class_6130 net/minecraft/structure/StructurePiecesHolder + c A holder of structure pieces to be added.\n\n@see StructurePiece#fillOpenings + m (Lnet/minecraft/class_3341;)Lnet/minecraft/class_3443; method_35461 getIntersecting + c Returns an arbitrary piece in this holder that intersects the given {@code box},\nor {@code null} if there is no such piece. + p 1 box + c the box to check intersection against + m (Lnet/minecraft/class_3443;)V method_35462 addPiece + c Adds a structure piece into this holder. + p 1 piece + c the piece to add +c net/minecraft/class_32 net/minecraft/world/level/storage/LevelStorage + f Ljava/lang/String; field_44950 ALLOWED_SYMLINKS_FILE_NAME + f Ljava/lang/String; field_36348 DATA_KEY + f Lcom/mojang/datafixers/DataFixer; field_17668 dataFixer + f Ljava/nio/file/Path; field_17667 backupsDirectory + f Ljava/nio/file/PathMatcher; field_44951 DEFAULT_ALLOWED_SYMLINK_MATCHER + f Lnet/minecraft/class_8580; field_44952 symlinkFinder + f Lorg/slf4j/Logger; field_17665 LOGGER + f I field_49426 RECOMMENDED_USABLE_SPACE_BYTES + f Ljava/nio/file/Path; field_17666 savesDirectory + m (Ljava/lang/String;)Lnet/minecraft/class_32$class_5143; method_27002 createSessionWithoutSymlinkCheck + p 1 directoryName + m (Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;)Lcom/mojang/serialization/Dynamic; method_54528 readLevelProperties + p 1 dataFixer + p 0 path + m (Lcom/mojang/datafixers/DataFixer;ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59827 method_59827 + p 2 player + m (Ljava/util/List;)Ljava/util/List; method_43495 method_43495 + p 0 summaries + m (Ljava/nio/file/Path;)Lnet/minecraft/class_8580; method_52235 createSymlinkFinder + p 0 allowedSymlinksFile + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Lnet/minecraft/class_8580;Lcom/mojang/datafixers/DataFixer;)V + p 3 symlinkFinder + p 4 dataFixer + p 1 savesDirectory + p 2 backupsDirectory + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/class_7712; method_29580 parseDataPackSettings + p 0 dynamic + m (Ljava/lang/String;)Lnet/minecraft/class_32$class_5143; method_52236 createSession + p 1 directoryName + m (Ljava/nio/file/Path;)Z method_52616 method_52616 + p 0 path + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/class_32$class_7411;Z)Lnet/minecraft/class_34; method_54524 parseSummary + p 2 save + p 3 locked + p 1 dynamic + m (Ljava/lang/String;)Z method_240 isLevelNameValid + p 1 name + m (Ljava/lang/String;)Z method_230 levelExists + p 1 name + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/class_7699; method_45552 parseEnabledFeatures + p 0 levelData + m ()Ljava/lang/String; method_35504 getFormatName + m ()Ljava/nio/file/Path; method_236 getBackupsDirectory + m (Lnet/minecraft/class_32$class_7410;)Ljava/util/concurrent/CompletableFuture; method_43417 loadSummaries + p 1 levels + m ()I method_17931 getCurrentVersion + m (Ljava/lang/String;)Ljava/nio/file/Path; method_52238 resolve + p 1 name + m ()Ljava/nio/file/Path; method_19636 getSavesDirectory + m (Lnet/minecraft/class_32$class_7411;)Z method_43419 method_43419 + p 0 levelSave + m ()Lnet/minecraft/class_32$class_7410; method_235 getLevelList + m (Lnet/minecraft/class_2960;)V method_45551 method_45551 + p 0 id + m (Ljava/nio/file/Path;)Lnet/minecraft/class_2487; method_54529 readLevelProperties + p 0 path + m (Lcom/mojang/datafixers/DataFixer;ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59826 method_59826 + p 2 worldGenSettings + m (Ljava/nio/file/Path;)Ljava/time/Instant; method_54530 getLastModifiedTime + p 0 path + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/class_7712;Lnet/minecraft/class_2378;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_8895; method_54523 parseSaveProperties + p 3 registries + p 1 dataConfiguration + p 2 dimensionsRegistry + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/class_3283;Z)Lnet/minecraft/class_7237$class_7238; method_54522 parseDataPacks + p 0 dynamic + p 1 dataPackManager + p 2 safeMode + m ()Lnet/minecraft/class_8580; method_52237 getSymlinkFinder + m (Lnet/minecraft/class_32$class_7411;Z)Lnet/minecraft/class_34; method_54527 readSummary + p 1 save + p 2 locked + m (Ljava/nio/file/Path;)Lnet/minecraft/class_32; method_26999 create + p 0 path + m (Ljava/nio/file/Path;)Z method_43420 method_43420 + p 0 path + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/stream/Stream; method_45553 method_45553 + p 0 featureFlag + m (Ljava/nio/file/Path;)Lnet/minecraft/class_2520; method_40035 loadCompactLevelData + c {@return the compact version of the NBT for the level data {@code file}}\n\n

The returned NBT will not have {@code Player} and {@code WorldGenSettings} keys. + p 0 path + m (Lnet/minecraft/class_32$class_7411;)J method_54526 getLastModifiedTime + p 0 save +c net/minecraft/class_32$class_7411 net/minecraft/world/level/storage/LevelStorage$LevelSave + f Ljava/nio/file/Path; comp_732 path + m (Ljava/time/ZonedDateTime;)Ljava/nio/file/Path; method_54531 getRawLevelDatPath + p 1 dateTime + m ()Ljava/nio/file/Path; method_43428 getSessionLockPath + m (Ljava/time/ZonedDateTime;)Ljava/nio/file/Path; method_43424 getCorruptedLevelDatPath + p 1 dateTime + m ()Ljava/nio/file/Path; method_43425 getLevelDatPath + m ()Ljava/nio/file/Path; method_43427 getIconPath + m ()Ljava/nio/file/Path; method_43426 getLevelDatOldPath + m ()Ljava/lang/String; method_43422 getRootPath + m (Lnet/minecraft/class_5218;)Ljava/nio/file/Path; method_43423 getPath + p 1 savePath + m ()Ljava/nio/file/Path; comp_732 path + m (Ljava/nio/file/Path;)V + p 1 path +c net/minecraft/class_32$class_7410 net/minecraft/world/level/storage/LevelStorage$LevelList + f Ljava/util/List; comp_731 levels + m ()Z method_43421 isEmpty + m ()Ljava/util/List; comp_731 levels + m (Ljava/util/List;)V + p 1 levels +c net/minecraft/class_32$class_5143 net/minecraft/world/level/storage/LevelStorage$Session + f Ljava/util/Map; field_24190 paths + f Lnet/minecraft/class_5125; field_23767 lock + f Ljava/lang/String; field_23769 directoryName + f Lnet/minecraft/class_32$class_7411; field_23768 directory + m (Lnet/minecraft/class_2487;)V method_54538 save + p 1 nbt + m (Ljava/lang/String;)V method_54540 removePlayerAndSave + p 1 name + m ()V method_27017 checkValid + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/class_34; method_29584 getLevelSummary + p 1 dynamic + m ()Lcom/mojang/serialization/Dynamic; method_54546 readOldLevelProperties + m ()Z method_57629 shouldShowLowDiskSpaceWarning + m ()Z method_54547 levelDatExists + m (Ljava/lang/String;)V method_27008 save + p 1 name + m ()Ljava/lang/String; method_27005 getDirectoryName + m ()Ljava/util/Optional; method_27014 getIconFile + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_5219;Lnet/minecraft/class_2487;)V method_27426 backupLevelDataFile + p 1 registryManager + p 2 saveProperties + p 3 nbt + m ()J method_57628 getUsableSpace + m (Z)Lcom/mojang/serialization/Dynamic; method_27013 readLevelProperties + p 1 old + m ()V method_27015 deleteSessionLock + m ()Lnet/minecraft/class_32$class_7411; method_54543 getDirectory + m (Lnet/minecraft/class_5321;)Ljava/nio/file/Path; method_27424 getWorldDirectory + p 1 key + m (Lnet/minecraft/class_5218;)Ljava/nio/file/Path; method_27010 getDirectory + p 1 savePath + m (Ljava/util/function/Consumer;)V method_54537 save + p 1 nbtProcessor + m (Ljava/lang/String;Lnet/minecraft/class_2487;)V method_54541 method_54541 + p 1 nbt + m ()Lnet/minecraft/class_32; method_52617 getLevelStorage + m ()V method_54532 tryClose + m (Lnet/minecraft/class_32;Ljava/lang/String;Ljava/nio/file/Path;)V + p 2 directoryName + p 3 path + m ()Z method_54548 tryRestoreBackup + m ()J method_27016 createBackup + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_5219;)V method_27425 backupLevelDataFile + p 1 registryManager + p 2 saveProperties + m ()Lcom/mojang/serialization/Dynamic; method_54545 readLevelProperties + m (Z)Ljava/time/Instant; method_54539 getLastModifiedTime + p 1 old + m ()Lnet/minecraft/class_29; method_27427 createSaveHandler + m (Ljava/lang/String;Lnet/minecraft/class_2487;)V method_54534 method_54534 + p 1 nbt +c net/minecraft/class_32$class_5143$2 net/minecraft/world/level/storage/LevelStorage$Session$2 + m (Ljava/lang/Object;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile visitFile + p 2 attributes + p 1 path + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; method_246 visitFile +c net/minecraft/class_32$class_5143$1 net/minecraft/world/level/storage/LevelStorage$Session$1 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; method_27019 visitFile + m (Ljava/lang/Object;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile visitFile + p 1 path + p 2 attributes + m (Ljava/lang/Object;Ljava/io/IOException;)Ljava/nio/file/FileVisitResult; postVisitDirectory postVisitDirectory + p 1 path + p 2 exception + m (Ljava/nio/file/Path;Ljava/io/IOException;)Ljava/nio/file/FileVisitResult; method_27018 postVisitDirectory +c net/minecraft/class_8790 net/minecraft/data/recipe/RecipeExporter + m ()V method_62738 addRootAdvancement + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_1860;Lnet/minecraft/class_8779;)V method_53819 accept + p 2 recipe + p 3 advancement + p 1 key + m ()Lnet/minecraft/class_161$class_162; method_53818 getAdvancementBuilder +c net/minecraft/class_6139 net/minecraft/unused/packageinfo/PackageInfo6139 +c net/minecraft/class_6136 net/minecraft/util/collection/LinkedBlockPosHashSet + c Represents a set of block positions (long representation).\n

\nUses a {@link Long2LongLinkedOpenHashMap} as its internal storage medium\nto facilitate the quick addition and removal of block positions.\n

\nPositions are index into a 2x cubed area that then stores as a long, a bitset\nrepresenting which positions within that area are currently set.\n

\nThis has two major advantages:\n

    \n
  1. Positions that are geometrically close together are grouped together in memory. This localizes adjacent reads and writes.
  2. \n
  3. A larger number of positions can be comprised together into one long allowing for a smaller memory footprint.
  4. \n
\n@see net.minecraft.world.chunk.light.LevelPropagator + f Lnet/minecraft/class_6136$class_6137; field_31715 buffer + m (IF)V + p 2 loadFactor + p 1 expectedSize + m (J)Z add add + c Marks a block position as "set". + p 1 posLong + m (J)Z rem rem + c Marks a block position as "not set". Effectively removing it from this collection. + p 1 posLong + m ()I size size + c @throws UnsupportedOperationException + m ()Z isEmpty isEmpty + c Checks whether there are any block positions that have been "set".\n\n@return {@code true} is this collection is empty. + m ()J removeFirstLong removeFirstLong + c Pops first block position off of this set. +c net/minecraft/class_6136$class_6137 net/minecraft/util/collection/LinkedBlockPosHashSet$Storage + c Represents a three-dimensional mapping from a block position to a bitset\nof values set at that position. + f I field_31725 expectedSize + f I field_31716 STARTING_OFFSET + f I field_31721 Z_BIT_OFFSET + f J field_31722 MAX_POSITION + f I field_31720 X_BIT_OFFSET + f I field_31723 lastWrittenIndex + f J field_31724 lastWrittenKey + f I field_31718 FIELD_SPACING + f I field_31717 HORIZONTAL_COLUMN_BIT_SEPARATION + f I field_31719 Y_BIT_OFFSET + m (J)Z method_35487 add + c Ensures that this collection contains the specified element (optional operation).\n\n@see java.util.Collection#add(Object) + p 1 posLong + m (J)Z method_35488 rem + c Removes a block position from this map. + p 1 posLong + m ()J method_35481 removeFirstLong + m (J)Z method_35489 unsetBits + c Unsets flags within the last 2x cubed region contained within this map.\n

\nThis is equivalent to the call {@code unsetBitsAt(this.n, mask)}\n\n@return {@code true} if the collection was changed as a result of this call + p 1 mask + m (IJ)Z method_35485 unsetBitsAt + c Unsets flags within a specific 2x cubed region contained within this map.\n\n@return {@code true} if the collection was changed as a result of this call + p 2 mask + p 1 index + m (IJ)Z method_35482 setBits + c Sets flags within a specific 2x cubed region represented by {@code index}.\n\n@return {@code true} if the map already contained set bits for the indicated mask\n (i.e. an overlap occurred) + p 2 mask + c mask of bits to set + p 1 index + c zero-based index of a 2x cubed area + m (J)J method_35483 getKey + c Converts an individual position into a key\nrepresenting the 2x cube region containing that position. + p 0 posLong + m (J)I method_35486 getBlockOffset + c Gets a position's index relative to its containing 2x cube region + p 0 posLong + m (IF)V + p 1 expectedSize + p 2 loadFactor + m (JI)J method_35484 getBlockPosLong + p 2 valueLength + p 0 key + m (I)V rehash rehash + p 1 newN +c net/minecraft/class_6135 net/minecraft/unused/packageinfo/PackageInfo6135 +c net/minecraft/class_7469 net/minecraft/network/message/MessageSignatureData + c A message signature data that can be verified. + f I field_40683 SIZE + f Lcom/mojang/serialization/Codec; field_40844 CODEC + f [B comp_925 data + m ()I method_68858 calculateChecksum + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()[B comp_925 data + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_7469;)V method_44845 write + p 1 signature + p 0 buf + m (Lnet/minecraft/class_7469;)Ljava/lang/String; method_68857 toString + p 0 signature + m (Lnet/minecraft/class_7561;)Lnet/minecraft/class_7469$class_7819; method_46277 pack + p 1 storage + m (Lnet/minecraft/class_7500;Lnet/minecraft/class_7498;)Z method_44843 verify + c {@return whether the signature data is verified} + p 1 verifier + c the verifier that is created with the sender's public key + p 2 updatable + m ()Ljava/nio/ByteBuffer; method_44994 toByteBuffer + c {@return the byte buffer containing the signature data} + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_7469; method_46276 fromBuf + p 0 buf + m ([B)V + p 1 data +c net/minecraft/class_7469$class_7819 net/minecraft/network/message/MessageSignatureData$Indexed + f I field_40684 MISSING_ID + f Lnet/minecraft/class_7469; comp_1080 fullSignature + f I comp_1079 id + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_7469$class_7819; method_46278 fromBuf + p 0 buf + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_7469$class_7819;)V method_46279 write + p 1 indexed + p 0 buf + m (I)V + p 1 id + m (Lnet/minecraft/class_7561;)Ljava/util/Optional; method_46280 getSignature + p 1 storage + m (Lnet/minecraft/class_7469;)V + p 1 signature + m ()Lnet/minecraft/class_7469; comp_1080 fullSignature + m ()I comp_1079 id + m (ILnet/minecraft/class_7469;)V + p 1 id + p 2 fullSignature +c net/minecraft/class_6138 net/minecraft/unused/packageinfo/PackageInfo6138 +c net/minecraft/class_12036 net/minecraft/client/network/ClientDebugSubscriptionManager + f Lnet/minecraft/class_340; field_62933 debugHud + f Ljava/util/Set; field_62934 clientSubscriptions + f Lnet/minecraft/class_634; field_62932 networkHandler + f Ljava/util/Map; field_62935 valuesBySubscription + m ()V method_74712 clearAllSubscriptions + m (Lnet/minecraft/class_634;Lnet/minecraft/class_340;)V + p 2 debugHud + p 1 networkHandler + m (JLnet/minecraft/class_1297;Lnet/minecraft/class_12017$class_12019;)V method_74716 updateEntity + p 1 lifetime + p 3 entity + p 4 optional + m (Ljava/util/Set;Lnet/minecraft/class_12017;Z)V method_74729 addDebugSubscription + p 2 enable + p 1 type + p 0 types + m (J)V method_74713 startTick + p 1 time + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_12021; method_74726 createDebugDataStore + p 1 world + m (Lnet/minecraft/class_12017;)Lnet/minecraft/class_12036$class_12039; method_76758 method_76758 + p 0 type + m (JLnet/minecraft/class_1923;Lnet/minecraft/class_12017$class_12019;)V method_74717 updateChunk + p 3 pos + p 4 optional + p 1 lifetime + m (JLnet/minecraft/class_2338;Lnet/minecraft/class_12017$class_12019;)V method_74718 updateBlock + p 1 lifetime + p 4 optional + p 3 pos + m (Lnet/minecraft/class_12036$class_12039;)Lnet/minecraft/class_12036$class_12037; method_74727 method_74727 + p 0 maps + m ()Lnet/minecraft/class_12036$class_12038; method_74736 forBlocks + m (JLnet/minecraft/class_12017;Lnet/minecraft/class_12036$class_12039;)V method_74715 method_74715 + p 2 type + p 3 valueMap + m ()V method_74730 clearValues + m ()Ljava/util/Set; method_74733 getRequestedSubscriptions + m (Lnet/minecraft/class_1923;)V method_74725 removeChunk + p 1 pos + m (Lnet/minecraft/class_12017;Ljava/lang/Object;Lnet/minecraft/class_12036$class_12038;)Ljava/lang/Object; method_74723 getValue + p 1 type + p 2 object + p 3 getter + m (Lnet/minecraft/class_12017;Lnet/minecraft/class_12036$class_12038;)Lnet/minecraft/class_12036$class_12037; method_74721 getValue + p 2 getter + p 1 type + m (Ljava/util/Set;)V method_74728 onSubscriptionsChanged + p 1 subscriptions + m (Lnet/minecraft/class_12017;Lnet/minecraft/class_12036$class_12038;Ljava/util/function/BiConsumer;)V method_74722 forEachValue + p 1 type + p 2 getter + p 3 visitor + m (JLnet/minecraft/class_12017$class_12018;)V method_74714 addEvent + p 3 value + p 1 lifetime + m (JLjava/lang/Object;Lnet/minecraft/class_12017$class_12019;Lnet/minecraft/class_12036$class_12038;)V method_74719 updateTrackableValueMap + p 1 lifetime + p 4 optional + p 3 object + m (Lnet/minecraft/class_1297;)V method_74724 removeEntity + p 1 entity + m ()Lnet/minecraft/class_12036$class_12038; method_74735 forEntities + m (Ljava/util/Set;)V method_76759 clearSubscriptions + p 1 subscriptions + m ()Lnet/minecraft/class_12036$class_12038; method_74737 forChunks + m (Lnet/minecraft/class_12036$class_12039;)Lnet/minecraft/class_12036$class_12037; method_74734 method_74734 + p 0 maps + m (Lnet/minecraft/class_12017;)Lnet/minecraft/class_12036$class_12039; method_74720 getTrackableValueMaps + p 1 type + m (Lnet/minecraft/class_12036$class_12039;)Lnet/minecraft/class_12036$class_12037; method_74732 method_74732 + p 0 maps +c net/minecraft/class_12036$class_12037 net/minecraft/client/network/ClientDebugSubscriptionManager$TrackableValue + f Ljava/util/Map; field_62938 trackableValues + m (Ljava/util/function/BiConsumer;Ljava/lang/Object;Lnet/minecraft/class_12036$class_12040;)V method_74742 method_74742 + p 2 v + p 1 k + m (Ljava/util/function/Predicate;)V method_74745 removeKeys + p 1 predicate + m (Ljava/util/function/Predicate;)V method_74743 removeAll + p 1 predicate + m (Ljava/lang/Object;)Ljava/lang/Object; method_74744 get + p 1 object + m (JLjava/lang/Object;Lnet/minecraft/class_12017$class_12019;)V method_74739 apply + p 1 time + p 3 key + p 4 value + m (Ljava/lang/Object;)V method_74740 removeUUID + p 1 key + m (Ljava/util/function/BiConsumer;)V method_74741 forEach + p 1 action +c net/minecraft/class_12036$class_12039 net/minecraft/client/network/ClientDebugSubscriptionManager$TrackableValueMap + f Lnet/minecraft/class_12036$class_12037; field_62941 entities + f Lnet/minecraft/class_12036$class_12037; field_62940 blocks + f Lnet/minecraft/class_12036$class_12037; field_62939 chunks + f Ljava/util/List; field_62942 values + m (J)V method_74746 ejectExpiredSubscriptions + p 1 time + m (Lnet/minecraft/class_1923;)V method_74748 removeChunk + p 1 pos + m (JLnet/minecraft/class_12036$class_12040;)Z method_74747 method_74747 + p 2 time +c net/minecraft/class_12036$class_12038 net/minecraft/client/network/ClientDebugSubscriptionManager$TrackableValueGetter + m (Lnet/minecraft/class_12036$class_12039;)Lnet/minecraft/class_12036$class_12037; get get + p 1 map +c net/minecraft/class_12036$1 net/minecraft/client/network/ClientDebugSubscriptionManager$1 + m (Lnet/minecraft/class_1937;Ljava/util/function/BiConsumer;Ljava/util/UUID;Ljava/lang/Object;)V method_74738 method_74738 + p 2 uuid + p 3 type +c net/minecraft/class_12036$class_12040 net/minecraft/client/network/ClientDebugSubscriptionManager$ValueWithExpiry + f J field_62943 INEXPIRABLE + f J comp_4893 expiresAfterTime + f Ljava/lang/Object; comp_4892 value + m (J)Z method_74749 hasExpired + p 1 time + m ()J comp_4893 expiresAfterTime + m ()Ljava/lang/Object; comp_4892 value + m (Ljava/lang/Object;J)V + p 1 value + p 2 expiresAfterTime +c net/minecraft/class_12035 net/minecraft/client/gui/render/state/TiledTexturedQuadGuiElementRenderState + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; comp_4055 pipeline + f I comp_4881 tileWidth + f I comp_4883 x0 + f I comp_4882 tileHeight + f I comp_4885 x1 + f I comp_4884 y0 + f F comp_4887 u0 + f I comp_4886 y1 + f F comp_4889 v0 + f F comp_4888 u1 + f I comp_4891 color + f F comp_4890 v1 + f Lnet/minecraft/class_8030; comp_4274 bounds + f Lnet/minecraft/class_11231; comp_4056 textureSetup + f Lnet/minecraft/class_8030; comp_4069 scissorArea + f Lorg/joml/Matrix3x2f; comp_4880 pose + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_11231;Lorg/joml/Matrix3x2f;IIIIIIFFFFILnet/minecraft/class_8030;)V + p 9 y1 + p 8 x1 + p 11 u1 + p 10 u0 + p 5 tileHeight + p 4 tileWidth + p 7 y0 + p 6 x0 + p 13 v1 + p 12 v0 + p 15 scissorArea + p 14 color + p 1 pipeline + p 3 pose + p 2 textureSetup + m (IIIILorg/joml/Matrix3x2f;Lnet/minecraft/class_8030;)Lnet/minecraft/class_8030; method_74708 createBounds + p 5 rect + p 2 x2 + p 1 y1 + p 4 pose + p 3 y2 + p 0 x1 + m ()Lorg/joml/Matrix3x2f; comp_4880 pose + m ()I comp_4884 y0 + m ()I comp_4883 x0 + m ()I comp_4886 y1 + m ()I comp_4885 x1 + m ()F comp_4888 u1 + m ()F comp_4887 u0 + m ()F comp_4889 v0 + m ()I comp_4882 tileHeight + m ()I comp_4881 tileWidth + m ()F comp_4890 v1 + m ()I comp_4891 color + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_11231;Lorg/joml/Matrix3x2f;IIIIIIFFFFILnet/minecraft/class_8030;Lnet/minecraft/class_8030;)V + p 1 pipeline + p 2 textureSetup + p 3 pose + p 4 tileWidth + p 5 tileHeight + p 6 x0 + p 7 y0 + p 8 x1 + p 9 y1 + p 10 u0 + p 11 u1 + p 12 v0 + p 13 v1 + p 14 color + p 15 scissorArea + p 16 bounds +c net/minecraft/class_12033 net/minecraft/unused/packageinfo/PackageInfo12033 +c net/minecraft/class_27 net/minecraft/world/level/UnmodifiableLevelProperties + f Lnet/minecraft/class_5268; field_139 worldProperties + f Lnet/minecraft/class_5219; field_24179 saveProperties + m (Lnet/minecraft/class_5219;Lnet/minecraft/class_5268;)V + p 2 worldProperties + p 1 saveProperties +c net/minecraft/class_29 net/minecraft/world/PlayerSaveHandler + f Ljava/io/File; field_144 playerDataDir + f Lcom/mojang/datafixers/DataFixer; field_148 dataFixer + f Lorg/slf4j/Logger; field_149 LOGGER + m (Lnet/minecraft/class_1657;)V method_262 savePlayerData + p 1 player + m (Lnet/minecraft/class_11560;)Ljava/util/Optional; method_55789 loadPlayerData + m (Lnet/minecraft/class_11560;Ljava/lang/String;)Ljava/util/Optional; method_261 loadPlayerData + p 2 extension + m (Lnet/minecraft/class_32$class_5143;Lcom/mojang/datafixers/DataFixer;)V + p 1 session + p 2 dataFixer + m (Lnet/minecraft/class_11560;Ljava/lang/String;)V method_55787 backupCorruptedPlayerData + p 2 extension +c net/minecraft/class_7475 net/minecraft/registry/tag/TagFile + f Lcom/mojang/serialization/Codec; field_39269 CODEC + f Ljava/util/List; comp_811 entries + f Z comp_812 replace + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43950 method_43950 + p 0 instance + m ()Z comp_812 replace + m ()Ljava/util/List; comp_811 entries + m (Ljava/util/List;Z)V + p 1 entries + p 2 replace +c net/minecraft/class_46 net/minecraft/loot/context/LootContextAware + m ()Ljava/util/Set; method_293 getAllowedParameters + m (Lnet/minecraft/class_58;)V method_292 validate + p 1 reporter +c net/minecraft/class_7473 net/minecraft/registry/tag/PointOfInterestTypeTags + f Lnet/minecraft/class_6862; field_39262 ACQUIRABLE_JOB_SITE + f Lnet/minecraft/class_6862; field_39264 BEE_HOME + f Lnet/minecraft/class_6862; field_39263 VILLAGE + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_43935 of + p 0 id +c net/minecraft/class_6145 net/minecraft/unused/packageinfo/PackageInfo6145 +c net/minecraft/class_47 net/minecraft/loot/context/LootContext + f Lnet/minecraft/class_5819; field_923 random + f Ljava/util/Set; field_927 activeEntries + f Lnet/minecraft/class_8567; field_44881 worldContext + f Lnet/minecraft/class_7871$class_7872; field_44490 lookup + m (Lnet/minecraft/class_2960;Ljava/util/function/Consumer;)V method_297 drop + p 2 lootConsumer + p 1 id + m (Lnet/minecraft/class_47$class_8487;)Z method_51184 isActive + p 1 entry + m ()Lnet/minecraft/class_3218; method_299 getWorld + m ()Lnet/minecraft/class_5819; method_294 getRandom + m (Lnet/minecraft/class_47$class_8487;)Z method_298 markActive + p 1 entry + m (Lnet/minecraft/class_47$class_8487;)V method_295 markInactive + p 1 entry + m ()Lnet/minecraft/class_7871$class_7872; method_51183 getLookup + m (Lnet/minecraft/class_5341;)Lnet/minecraft/class_47$class_8487; method_51187 predicate + p 0 predicate + m (Lnet/minecraft/class_169;)Ljava/lang/Object; method_65013 get + p 1 parameter + m (Lnet/minecraft/class_8567;Lnet/minecraft/class_5819;Lnet/minecraft/class_7871$class_7872;)V + p 2 random + p 1 worldContext + p 3 lookup + m (Lnet/minecraft/class_169;)Z method_300 hasParameter + p 1 parameter + m (Lnet/minecraft/class_117;)Lnet/minecraft/class_47$class_8487; method_51186 itemModifier + p 0 itemModifier + m ()F method_302 getLuck + m (Lnet/minecraft/class_169;)Ljava/lang/Object; method_35508 getOrThrow + p 1 parameter + m (Lnet/minecraft/class_52;)Lnet/minecraft/class_47$class_8487; method_51185 table + p 0 table +c net/minecraft/class_47$class_9319 net/minecraft/loot/context/LootContext$BlockEntityReference + f Ljava/lang/String; field_49438 id + f Lnet/minecraft/class_169; field_63053 parameter + f Lnet/minecraft/class_47$class_9319; field_49436 BLOCK_ENTITY + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_169;)V + p 4 parameter + p 3 id +c net/minecraft/class_47$class_48 net/minecraft/loot/context/LootContext$Builder + f Lnet/minecraft/class_5819; field_934 random + f Lnet/minecraft/class_8567; field_44882 worldContext + m ()Lnet/minecraft/class_3218; method_313 getWorld + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_47$class_48; method_60568 random + p 1 random + m (Lnet/minecraft/class_8567;)V + p 1 worldContext + m (J)Lnet/minecraft/class_47$class_48; method_304 random + p 1 seed + m (Ljava/util/Optional;)Lnet/minecraft/class_47; method_309 build + p 1 randomId +c net/minecraft/class_47$class_8487 net/minecraft/loot/context/LootContext$Entry + f Lnet/minecraft/class_8490; comp_1472 type + f Ljava/lang/Object; comp_1473 value + m ()Ljava/lang/Object; comp_1473 value + m ()Lnet/minecraft/class_8490; comp_1472 type + m (Lnet/minecraft/class_8490;Ljava/lang/Object;)V + p 1 type + p 2 value +c net/minecraft/class_47$class_12065 net/minecraft/loot/context/LootContext$ItemStackReference + f Lnet/minecraft/class_169; field_63056 parameter + f Ljava/lang/String; field_63055 id + f Lnet/minecraft/class_47$class_12065; field_63054 TOOL + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_169;)V + p 4 parameter + p 3 id +c net/minecraft/class_47$class_50 net/minecraft/loot/context/LootContext$EntityReference + f Ljava/lang/String; field_941 type + f Lnet/minecraft/class_169; field_938 parameter + f Lnet/minecraft/class_3542$class_7292; field_45792 CODEC + f Lnet/minecraft/class_47$class_50; field_61496 INTERACTING_ENTITY + f Lnet/minecraft/class_47$class_50; field_61495 TARGET_ENTITY + f Lnet/minecraft/class_47$class_50; field_939 DIRECT_ATTACKER + f Lnet/minecraft/class_47$class_50; field_937 ATTACKING_PLAYER + f Lnet/minecraft/class_47$class_50; field_936 ATTACKER + f Lnet/minecraft/class_47$class_50; field_935 THIS + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_169;)V + p 4 parameter + p 3 type + m (Ljava/lang/String;)Lnet/minecraft/class_47$class_50; method_314 fromString + p 0 type +c net/minecraft/class_7471 net/minecraft/network/message/SignedMessage + c A signed message, consisting of the signature, the signed content,\nthe message body, the link to its preceding message, and the optional\nunsigned content supplied when the message decorator modified the message.\n\n

Note that the signature itself might not be valid. + f Ljava/time/Duration; field_39786 SERVERBOUND_TIME_TO_LIVE + f Lcom/mojang/serialization/MapCodec; field_40846 CODEC + f Ljava/time/Duration; field_39787 CLIENTBOUND_TIME_TO_LIVE + f Ljava/util/UUID; field_40688 NIL_UUID + f Lnet/minecraft/class_7826; comp_1083 link + f Lnet/minecraft/class_2561; comp_830 unsignedContent + f Lnet/minecraft/class_7649; comp_981 filterMask + f Lnet/minecraft/class_7608; comp_928 signedBody + f Lnet/minecraft/class_7469; comp_1084 signature + m ()J method_44865 getSalt + m ()Z method_46293 isSenderMissing + m (Ljava/time/Instant;)Z method_44747 isExpiredOnServer + p 1 currentTime + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46608 method_46608 + p 0 instance + m ()Lnet/minecraft/class_2561; method_46291 getContent + m (Z)Lnet/minecraft/class_7471; method_45099 withFilterMaskEnabled + c {@return this signed chat message if {@code enabled} is {@code true},\notherwise a new signed chat message without filtered parts} + p 1 enabled + m ()Lnet/minecraft/class_7471; method_44607 withoutUnsigned + c {@return the signed chat message with {@link #unsignedContent} removed if it exists}\n\n@implNote This returns itself if the message does not have an unsigned content. + m ()Lnet/minecraft/class_7471; method_55625 stripSignature + m (Ljava/util/UUID;Ljava/lang/String;)Lnet/minecraft/class_7471; method_45098 ofUnsigned + c {@return a new signed message with given sender UUID and empty signature} + p 0 sender + p 1 content + m (Lnet/minecraft/class_7498$class_7499;Lnet/minecraft/class_7826;Lnet/minecraft/class_7608;)V method_46290 update + p 0 updater + p 2 body + p 1 link + m (Ljava/lang/String;)Lnet/minecraft/class_7471; method_45041 ofUnsigned + c {@return a new signed message with empty signature} + p 0 content + m ()Z method_45100 isFullyFiltered + m ()Ljava/lang/String; method_44862 getSignedContent + m (Lnet/minecraft/class_7500;)Z method_44858 verify + p 1 verifier + m ()Ljava/time/Instant; method_44864 getTimestamp + m (Lnet/minecraft/class_7471;)Ljava/util/Optional; method_46611 method_46611 + p 0 message + m ()Z method_46294 hasSignature + m (Lnet/minecraft/class_7471;)Ljava/util/Optional; method_46609 method_46609 + p 0 message + m (Ljava/time/Instant;)Z method_44748 isExpiredOnClient + p 1 currentTime + m (Lnet/minecraft/class_7649;)Lnet/minecraft/class_7471; method_45097 withFilterMask + c {@return the signed chat message with {@code filterMask} added} + p 1 filterMask + m ()Ljava/util/UUID; method_46292 getSender + m (Lnet/minecraft/class_7826;Ljava/util/Optional;Lnet/minecraft/class_7608;Ljava/util/Optional;Lnet/minecraft/class_7649;)Lnet/minecraft/class_7471; method_46610 method_46610 + p 2 signedBody + p 3 unsignedContent + p 0 link + p 1 signature + p 4 filterMask + m (Ljava/util/UUID;)Z method_45040 canVerifyFrom + c {@return whether the message can be verified as from {@code sender}}\n\n

This does not actually verify that the message is, in fact, from {@code sender}.\nRather, this returns whether it's possible to verify that {@code sender} sent this\nmessage. + p 1 sender + m (Lnet/minecraft/class_7471;)Ljava/lang/String; method_68860 toString + p 0 message + m (Lnet/minecraft/class_7469;)Ljava/lang/String; method_68859 method_68859 + p 0 entry + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_7471; method_44863 withUnsignedContent + p 1 unsignedContent + m (Lnet/minecraft/class_7498$class_7499;)V method_46289 method_46289 + p 1 updater + m ()Lnet/minecraft/class_2561; comp_830 unsignedContent + m ()Lnet/minecraft/class_7469; comp_1084 signature + m ()Lnet/minecraft/class_7826; comp_1083 link + m ()Lnet/minecraft/class_7649; comp_981 filterMask + m ()Lnet/minecraft/class_7608; comp_928 signedBody + m (Lnet/minecraft/class_7826;Lnet/minecraft/class_7469;Lnet/minecraft/class_7608;Lnet/minecraft/class_2561;Lnet/minecraft/class_7649;)V + p 1 link + p 2 signature + p 3 signedBody + p 4 unsignedContent + p 5 filterMask +c net/minecraft/class_42 net/minecraft/loot/operator/BoundedIntUnaryOperator + f Lnet/minecraft/class_5658; field_920 max + f Lcom/mojang/serialization/Codec; field_45790 CODEC + f Lnet/minecraft/class_5658; field_921 min + f Lcom/mojang/serialization/Codec; field_45791 OPERATOR_CODEC + f Lnet/minecraft/class_42$class_5639; field_27897 applier + f Lnet/minecraft/class_42$class_5638; field_27898 tester + m (Lnet/minecraft/class_42;)Ljava/util/Optional; method_53264 method_53264 + p 0 operator + m (Lnet/minecraft/class_5658;Lnet/minecraft/class_5658;)V + p 2 max + p 1 min + m (Lnet/minecraft/class_5658;Lnet/minecraft/class_47;I)I method_32398 method_32398 + p 1 context + p 2 value + m (Lnet/minecraft/class_5658;Lnet/minecraft/class_47;I)I method_32394 method_32394 + p 1 context + p 2 value + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_42; method_53260 method_53260 + p 0 either + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 min + p 2 max + m (Lnet/minecraft/class_47;I)I method_279 method_279 + p 1 value + p 0 context + m (Lnet/minecraft/class_47;I)Z method_32393 test + p 2 value + p 1 context + m (I)Lnet/minecraft/class_42; method_277 createMax + p 0 max + m (Lnet/minecraft/class_5658;Lnet/minecraft/class_47;I)Z method_32390 method_32390 + p 1 context + p 2 value + m (Lnet/minecraft/class_5658;Lnet/minecraft/class_5658;Lnet/minecraft/class_47;I)I method_32395 method_32395 + p 3 value + p 2 context + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53261 method_53261 + p 0 instance + m ()Ljava/util/Set; method_32386 getRequiredParameters + m (Lnet/minecraft/class_47;I)I method_32389 apply + p 1 context + p 2 value + m (Lnet/minecraft/class_5658;Lnet/minecraft/class_5658;Lnet/minecraft/class_47;I)Z method_32391 method_32391 + p 2 context + p 3 value + m (Lnet/minecraft/class_42;)Lcom/mojang/datafixers/util/Either; method_53262 method_53262 + p 0 operator + m (Lnet/minecraft/class_42;)Ljava/util/Optional; method_53265 method_53265 + p 0 operator + m (II)Lnet/minecraft/class_42; method_282 create + p 1 max + p 0 min + m ()Ljava/util/OptionalInt; method_53263 getConstantValue + m (I)Lnet/minecraft/class_42; method_280 createMin + p 0 min + m (Lnet/minecraft/class_47;I)Z method_32396 method_32396 + p 1 value + p 0 context + m (Lnet/minecraft/class_5658;Lnet/minecraft/class_47;I)Z method_32397 method_32397 + p 1 context + p 2 value + m (I)Lnet/minecraft/class_42; method_32387 create + p 0 value +c net/minecraft/class_42$class_5639 net/minecraft/loot/operator/BoundedIntUnaryOperator$Applier + m (Lnet/minecraft/class_47;I)I apply apply + p 2 value + p 1 context +c net/minecraft/class_42$class_5638 net/minecraft/loot/operator/BoundedIntUnaryOperator$Tester + m (Lnet/minecraft/class_47;I)Z test test + p 1 context + p 2 value +c net/minecraft/class_7472 net/minecraft/network/packet/c2s/play/CommandExecutionC2SPacket + f Lnet/minecraft/class_9139; field_48178 CODEC + f Ljava/lang/String; comp_808 command + m (Lnet/minecraft/class_2792;)V method_43897 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_55964 write + p 1 buf + m ()Ljava/lang/String; comp_808 command + m (Ljava/lang/String;)V + p 1 command +c net/minecraft/class_44 net/minecraft/loot/provider/number/ConstantLootNumberProvider + f Lcom/mojang/serialization/MapCodec; field_45886 CODEC + f Lcom/mojang/serialization/Codec; field_45887 INLINE_CODEC + f F comp_1895 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53439 method_53439 + p 0 instance + m (F)V + p 1 value + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (F)Lnet/minecraft/class_44; method_32448 create + p 0 value + m ()F comp_1895 value +c net/minecraft/class_40 net/minecraft/loot/provider/number/BinomialLootNumberProvider + f Lcom/mojang/serialization/MapCodec; field_45885 CODEC + f Lnet/minecraft/class_5658; comp_1894 p + f Lnet/minecraft/class_5658; comp_1893 n + m (Lnet/minecraft/class_5658;Lnet/minecraft/class_5658;)V + p 1 n + p 2 p + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53438 method_53438 + p 0 instance + m (IF)Lnet/minecraft/class_40; method_273 create + p 1 p + p 0 n + m ()Lnet/minecraft/class_5658; comp_1893 n + m ()Lnet/minecraft/class_5658; comp_1894 p +c net/minecraft/class_6147 net/minecraft/unused/packageinfo/PackageInfo6147 +c net/minecraft/class_6146 net/minecraft/unused/packageinfo/PackageInfo6146 +c net/minecraft/class_7477 net/minecraft/world/poi/PointOfInterestTypes + f Ljava/util/Set; field_39300 CAULDRONS + f Ljava/util/Set; field_39299 BED_HEADS + f Ljava/util/Map; field_39301 POI_STATES_TO_TYPE + f Ljava/util/Set; field_61256 LIGHTNING_RODS + f Lnet/minecraft/class_5321; field_60007 TEST_INSTANCE + f Lnet/minecraft/class_5321; field_39297 LIGHTNING_ROD + f Lnet/minecraft/class_5321; field_39293 BEEHIVE + f Lnet/minecraft/class_5321; field_39294 BEE_NEST + f Lnet/minecraft/class_5321; field_39295 NETHER_PORTAL + f Lnet/minecraft/class_5321; field_39296 LODESTONE + f Lnet/minecraft/class_5321; field_39290 WEAPONSMITH + f Lnet/minecraft/class_5321; field_39291 HOME + f Lnet/minecraft/class_5321; field_39292 MEETING + f Lnet/minecraft/class_5321; field_39278 ARMORER + f Lnet/minecraft/class_5321; field_39279 BUTCHER + f Lnet/minecraft/class_5321; field_39289 TOOLSMITH + f Lnet/minecraft/class_5321; field_39285 LEATHERWORKER + f Lnet/minecraft/class_5321; field_39286 LIBRARIAN + f Lnet/minecraft/class_5321; field_39287 MASON + f Lnet/minecraft/class_5321; field_39288 SHEPHERD + f Lnet/minecraft/class_5321; field_39281 CLERIC + f Lnet/minecraft/class_5321; field_39282 FARMER + f Lnet/minecraft/class_5321; field_39283 FISHERMAN + f Lnet/minecraft/class_5321; field_39284 FLETCHER + f Lnet/minecraft/class_5321; field_39280 CARTOGRAPHER + m (Lnet/minecraft/class_2248;)Ljava/util/stream/Stream; method_43997 method_43997 + p 0 block + m (Lnet/minecraft/class_2680;)Z method_43996 method_43996 + p 0 state + m (Lnet/minecraft/class_2680;)Z method_46397 isPointOfInterest + p 0 state + m (Lnet/minecraft/class_2248;)Ljava/util/Set; method_43988 getStatesOfBlock + p 0 block + m (Lnet/minecraft/class_6880;Ljava/util/Set;)V method_43990 registerStates + p 0 poiTypeEntry + p 1 states + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_5321;Ljava/util/Set;II)Lnet/minecraft/class_4158; method_43993 register + p 1 key + p 0 registry + p 4 searchDistance + p 3 ticketCount + p 2 states + m (Lnet/minecraft/class_2680;)Ljava/util/Optional; method_43989 getTypeForState + p 0 state + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_4158; method_43992 registerAndGetDefault + p 0 registry + m (Lnet/minecraft/class_2248;)Ljava/util/stream/Stream; method_43995 method_43995 + p 0 block + m (Lnet/minecraft/class_2248;)Ljava/util/stream/Stream; method_72456 method_72456 + p 0 block + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2680;)V method_43991 method_43991 + p 1 state + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_43994 of + p 0 id +c net/minecraft/class_6149 net/minecraft/unused/packageinfo/PackageInfo6149 +c net/minecraft/class_12021 net/minecraft/world/debug/DebugDataStore + m (Lnet/minecraft/class_12017;Lnet/minecraft/class_12021$class_12022;)V method_74582 forEachEvent + p 2 action + p 1 type + m (Lnet/minecraft/class_12017;Lnet/minecraft/class_1923;)Ljava/lang/Object; method_74584 getChunkData + p 1 type + p 2 chunkPos + m (Lnet/minecraft/class_12017;Ljava/util/function/BiConsumer;)V method_74587 forEachBlockData + p 1 type + p 2 action + m (Lnet/minecraft/class_12017;Ljava/util/function/BiConsumer;)V method_74588 forEachEntityData + p 1 type + p 2 action + m (Lnet/minecraft/class_12017;Ljava/util/function/BiConsumer;)V method_74586 forEachChunkData + p 1 type + p 2 action + m (Lnet/minecraft/class_12017;Lnet/minecraft/class_2338;)Ljava/lang/Object; method_74585 getBlockData + p 1 type + p 2 pos + m (Lnet/minecraft/class_12017;Lnet/minecraft/class_1297;)Ljava/lang/Object; method_74583 getEntityData + p 1 type + p 2 entity +c net/minecraft/class_12021$class_12022 net/minecraft/world/debug/DebugDataStore$EventConsumer + m (Ljava/lang/Object;II)V accept accept + p 2 remainingTime + p 1 value + p 3 expiry +c net/minecraft/class_12020 net/minecraft/world/debug/DebugSubscriptionTypes + f Lnet/minecraft/class_12017; field_62869 DEDICATED_SERVER_TICK_TIME + f Lnet/minecraft/class_12017; field_62879 VILLAGE_SECTIONS + f Lnet/minecraft/class_12017; field_62878 REDSTONE_WIRE_ORIENTATIONS + f Lnet/minecraft/class_12017; field_62871 BRAINS + f Lnet/minecraft/class_12017; field_62870 BEES + f Lnet/minecraft/class_12017; field_62873 GOAL_SELECTORS + f Lnet/minecraft/class_12017; field_62872 BREEZES + f Lnet/minecraft/class_12017; field_62875 ENTITY_BLOCK_INTERSECTIONS + f Lnet/minecraft/class_12017; field_62874 ENTITY_PATHS + f Lnet/minecraft/class_12017; field_62877 POIS + f Lnet/minecraft/class_12017; field_62876 BEE_HIVES + f Lnet/minecraft/class_12017; field_62881 STRUCTURES + f Lnet/minecraft/class_12017; field_62880 RAIDS + f Lnet/minecraft/class_12017; field_62883 NEIGHBOR_UPDATES + f Lnet/minecraft/class_12017; field_62882 GAME_EVENT_LISTENERS + f Lnet/minecraft/class_12017; field_62884 GAME_EVENTS + m (Ljava/lang/String;)Lnet/minecraft/class_12017; method_74578 register + p 0 id + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_12017; method_74581 registerAndGetDefault + p 0 registry + m (Ljava/lang/String;Lnet/minecraft/class_9139;)Lnet/minecraft/class_12017; method_74579 register + p 1 packetCodec + p 0 id + m (Ljava/lang/String;Lnet/minecraft/class_9139;I)Lnet/minecraft/class_12017; method_74580 register + p 1 packetCodec + p 0 id + p 2 expiry +c net/minecraft/class_12023 net/minecraft/world/debug/DebugTrackable + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_12023$class_12024;)V method_74589 registerTracking + p 2 tracker + p 1 world +c net/minecraft/class_12023$class_12024 net/minecraft/world/debug/DebugTrackable$Tracker + m (Lnet/minecraft/class_12017;Lnet/minecraft/class_12023$class_12025;)V method_74590 track + p 1 type + p 2 dataSupplier +c net/minecraft/class_12023$class_12025 net/minecraft/world/debug/DebugTrackable$DebugDataSupplier +c net/minecraft/class_12028 net/minecraft/server/debug/TrackedSubscription + f Lnet/minecraft/class_12017; field_62900 type + f Ljava/util/Set; field_62901 subscribingPlayers + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1923;Lnet/minecraft/class_2596;)V method_74624 sendToTrackingPlayers + p 1 world + p 2 chunkPos + p 3 packet + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1923;)V method_74632 sendInitial + p 1 player + p 2 chunkPos + m (Lnet/minecraft/class_12017;)V + p 1 type + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1923;)V method_74634 method_74634 + p 2 chunkPos + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;)V method_74633 method_74633 + p 2 entity + m (Lnet/minecraft/class_3222;)V method_74626 startTracking + p 1 player + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;)V method_74631 sendInitial + p 1 player + p 2 entity + m (Lnet/minecraft/class_3218;Ljava/util/UUID;)Z method_74625 method_74625 + p 1 uuid + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1923;)V method_74628 sendInitialIfSubscribed + p 2 chunkPos + p 1 player + m (Lnet/minecraft/class_3218;)V method_74629 sendUpdate + p 1 world + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;)V method_74627 sendInitialIfSubscribed + p 1 player + p 2 entity + m ()V method_74621 clear + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_2596;)V method_74623 sendToTrackingPlayers + p 2 entity + p 1 world + p 3 packet + m (Lnet/minecraft/class_3218;)V method_74622 refreshTracking + p 1 world + m (Lnet/minecraft/class_3222;)Z method_74630 method_74630 + p 1 player +c net/minecraft/class_12028$class_12030 net/minecraft/server/debug/TrackedSubscription$UpdateTrackedSubscription + f Ljava/util/Map; field_62902 trackedChunks + f Ljava/util/Map; field_62903 trackedBlockEntities + f Ljava/util/Map; field_62904 trackedEntities + m (Ljava/util/UUID;Lnet/minecraft/class_12023$class_12025;)V method_74645 trackEntity + p 1 uuid + p 2 dataSupplier + m (Lnet/minecraft/class_1297;)V method_74641 untrackEntity + p 1 entity + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_12023$class_12025;)V method_74644 trackBlockEntity + p 2 dataSupplier + p 1 chunkPos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_74640 untrackBlockEntity + p 1 world + p 2 pos + m (Lnet/minecraft/class_1923;)V method_74642 untrackChunk + p 1 chunkPos + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_12023$class_12025;)V method_74643 trackChunk + p 1 chunkPos + p 2 dataSupplier +c net/minecraft/class_12028$class_12031 net/minecraft/server/debug/TrackedSubscription$UpdateQuerier + f Ljava/lang/Object; field_62906 lastData + f Lnet/minecraft/class_12023$class_12025; field_62905 dataSupplier + m (Lnet/minecraft/class_12017;)Lnet/minecraft/class_12017$class_12019; method_74646 queryUpdate + p 1 type + m (Lnet/minecraft/class_12023$class_12025;)V + p 1 dataSupplier +c net/minecraft/class_12028$class_12032 net/minecraft/server/debug/TrackedSubscription$TrackedVillageSections + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_4076;Ljava/lang/Boolean;)V method_74652 method_74652 + p 2 sectionPos + p 3 nearOccupiedPoi + m (Lnet/minecraft/class_6880;)Z method_74653 method_74653 + p 0 type + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_74649 onPoiRemoved + p 2 pos + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_3222;Lnet/minecraft/class_4156;)V method_74647 method_74647 + p 3 poi + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4076;Ljava/lang/Boolean;)V method_74650 method_74650 + p 2 sectionPos + p 3 nearOccupiedPoi + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4076;Ljava/util/function/BiConsumer;)V method_74651 forEachSurrounding + p 2 action + p 1 sectionPos + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4156;)V method_74648 onPoiAdded + p 2 poi + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_74654 handlePoiUpdate + p 1 world + p 2 pos +c net/minecraft/class_12028$class_12029 net/minecraft/server/debug/TrackedSubscription$TrackedPoi + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4156;)V method_74635 onPoiAdded + p 1 world + p 2 poi + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_4156;)V method_74637 method_74637 + p 2 poi + m (Lnet/minecraft/class_6880;)Z method_74638 method_74638 + p 0 type + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_74639 onPoiUpdated + p 2 pos + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_74636 onPoiRemoved + p 1 world + p 2 pos +c net/minecraft/class_12027 net/minecraft/server/debug/SubscriberTracker + f Lnet/minecraft/server/MinecraftServer; field_62898 server + f Ljava/util/Map; field_62899 subscribers + m (Lnet/minecraft/class_12017;Lnet/minecraft/class_2596;)V method_74617 send + p 1 type + p 2 packet + m (Lnet/minecraft/class_3222;)Z method_74615 canSubscribe + p 1 player + m ()Ljava/util/Set; method_74618 getSubscribedTypes + m (Lnet/minecraft/class_12017;)Ljava/util/List; method_74620 method_74620 + p 0 type + m (Lnet/minecraft/class_12017;)Z method_74616 hasSubscriber + p 1 type + m ()V method_74614 tick + m (Lnet/minecraft/class_12017;)Ljava/util/List; method_74619 getSubscribers + p 1 type + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server +c net/minecraft/class_12026 net/minecraft/server/debug/SubscriptionTracker + f Lnet/minecraft/class_12028$class_12029; field_62888 trackedPoi + f Lnet/minecraft/class_12028$class_12032; field_62889 trackedVillageSections + f Z field_62890 stopped + f Lnet/minecraft/class_3218; field_62885 world + f Ljava/util/List; field_62886 subscriptions + f Ljava/util/Map; field_62887 subscriptionsByTypes + f Ljava/util/Set; field_62891 subscribedTypes + m (Lnet/minecraft/class_12027;)V method_74596 tick + p 1 subscriberTracker + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_12017;Lnet/minecraft/class_2596;)V method_74599 sendToTrackingPlayers + p 2 type + p 3 packet + p 1 entity + m (Lnet/minecraft/class_2338;)V method_74613 onPoiRemoved + p 1 pos + m (Lnet/minecraft/class_1923;)V method_74602 untrackChunk + p 1 chunkPos + m (Lnet/minecraft/class_2338;)V method_74611 onPoiUpdated + p 1 pos + m (Lnet/minecraft/class_1297;)V method_74610 untrackEntity + p 1 entity + m (Lnet/minecraft/class_1297;)V method_74597 trackEntity + p 1 entity + m (Lnet/minecraft/class_3218;)V + p 1 world + m ()V method_74591 startTracking + m (Lnet/minecraft/class_2586;)V method_74604 trackBlockEntity + p 1 blockEntity + m (Lnet/minecraft/class_2818;)V method_74605 trackChunk + p 1 chunk + m (Lnet/minecraft/class_12017;)Lnet/minecraft/class_12028$class_12030; method_74609 get + p 1 type + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_12017;Lnet/minecraft/class_2596;)V method_74603 sendToTrackingPlayers + p 3 packet + p 2 type + p 1 chunkPos + m (Lnet/minecraft/class_4156;)V method_74601 onPoiAdded + p 1 poi + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;)V method_74592 sendInitialIfSubscribed + p 1 player + p 2 entity + m (Lnet/minecraft/class_2338;)V method_74606 untrackBlockEntity + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_12017;Ljava/lang/Object;)V method_74608 sendBlockDebugData + p 3 value + p 2 type + p 1 pos + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_12017;)V method_74598 removeEntityDebugData + p 1 entity + p 2 type + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1923;)V method_74593 sendInitialIfSubscribed + p 2 chunkPos + p 1 player + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_12017;)V method_74607 removeBlockDebugData + p 2 type + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_12017;Ljava/lang/Object;)V method_74612 sendEventDebugData + p 3 value + p 1 pos + p 2 type + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_12017;Ljava/lang/Object;)V method_74600 sendEntityDebugData + p 1 entity + p 2 type + p 3 value + m (Lnet/minecraft/class_12017;)Z method_74594 isSubscribed + p 1 type + m (Lnet/minecraft/class_12017;Lnet/minecraft/class_3222;)Z method_74595 method_74595 + p 1 player +c net/minecraft/class_39 net/minecraft/loot/LootTables + f Ljava/util/Map; field_52692 SHEEP_DROPS_FROM_DYE_COLOR + f Lnet/minecraft/class_5321; field_17009 VILLAGE_ARMORER_CHEST + f Lnet/minecraft/class_5321; field_17108 VILLAGE_FLETCHER_CHEST + f Lnet/minecraft/class_5321; field_16753 VILLAGE_SAVANNA_HOUSE_CHEST + f Lnet/minecraft/class_5321; field_17011 VILLAGE_SHEPARD_CHEST + f Ljava/util/Set; field_667 LOOT_TABLES + f Lnet/minecraft/class_5321; field_16751 VILLAGE_CARTOGRAPHER_CHEST + f Lnet/minecraft/class_5321; field_16749 VILLAGE_TAIGA_HOUSE_CHEST + f Lnet/minecraft/class_5321; field_18007 VILLAGE_FISHER_CHEST + f Ljava/util/Map; field_52693 SHEEP_SHEARING_FROM_DYE_COLOR + f Lnet/minecraft/class_5321; field_17109 VILLAGE_TEMPLE_CHEST + f Lnet/minecraft/class_5321; field_17107 VILLAGE_TOOLSMITH_CHEST + f Ljava/util/Set; field_600 LOOT_TABLES_READ_ONLY + f Lnet/minecraft/class_5321; field_16754 VILLAGE_SNOWY_HOUSE_CHEST + f Lnet/minecraft/class_5321; field_16752 VILLAGE_DESERT_HOUSE_CHEST + f Lnet/minecraft/class_5321; field_850 SPAWN_BONUS_CHEST + f Lnet/minecraft/class_5321; field_17012 VILLAGE_BUTCHER_CHEST + f Lnet/minecraft/class_5321; field_16750 VILLAGE_TANNERY_CHEST + f Lnet/minecraft/class_5321; field_17010 VILLAGE_MASON_CHEST + f Lnet/minecraft/class_5321; field_434 VILLAGE_WEAPONSMITH_CHEST + f Lnet/minecraft/class_5321; field_16748 VILLAGE_PLAINS_CHEST + f Lnet/minecraft/class_5321; field_47422 TRIAL_CHAMBERS_CHAMBER_DISPENSER + f Lnet/minecraft/class_5321; field_47421 TRIAL_CHAMBERS_CORRIDOR_DISPENSER + f Lnet/minecraft/class_5321; field_47420 TRIAL_CHAMBERS_ENTRANCE_CHEST + f Lnet/minecraft/class_5321; field_353 FISHING_GAMEPLAY + f Lnet/minecraft/class_5321; field_47426 TRIAL_CHAMBERS_CORRIDOR_POT + f Lnet/minecraft/class_5321; field_47425 TRIAL_CHAMBERS_WATER_DISPENSER + f Lnet/minecraft/class_5321; field_47424 TRIAL_CHAMBER_CONSUMABLES_SPAWNER + f Lnet/minecraft/class_5321; field_47423 TRIAL_CHAMBER_KEY_SPAWNER + f Lnet/minecraft/class_5321; field_356 SIMPLE_DUNGEON_CHEST + f Lnet/minecraft/class_5321; field_472 ABANDONED_MINESHAFT_CHEST + f Lnet/minecraft/class_5321; field_47418 TRIAL_CHAMBERS_INTERSECTION_CHEST + f Lnet/minecraft/class_5321; field_47417 TRIAL_CHAMBERS_CORRIDOR_CHEST + f Lnet/minecraft/class_5321; field_47416 TRIAL_CHAMBERS_SUPPLY_CHEST + f Lnet/minecraft/class_5321; field_47415 TRIAL_CHAMBERS_REWARD_CHEST + f Lnet/minecraft/class_5321; field_484 WOODLAND_MANSION_CHEST + f Lnet/minecraft/class_5321; field_47419 TRIAL_CHAMBERS_INTERSECTION_BARREL_CHEST + f Lnet/minecraft/class_5321; field_274 END_CITY_TREASURE_CHEST + f Lnet/minecraft/class_5321; field_49844 TRIAL_CHAMBERS_REWARD_COMMON_CHEST + f Lnet/minecraft/class_5321; field_49845 TRIAL_CHAMBERS_REWARD_RARE_CHEST + f Lnet/minecraft/class_5321; field_49846 TRIAL_CHAMBERS_REWARD_UNIQUE_CHEST + f Lnet/minecraft/class_5321; field_251 BURIED_TREASURE_CHEST + f Lnet/minecraft/class_5321; field_266 FISHING_JUNK_GAMEPLAY + f Lnet/minecraft/class_5321; field_397 UNDERWATER_RUIN_SMALL_CHEST + f Lnet/minecraft/class_5321; field_44748 SNIFFER_DIGGING_GAMEPLAY + f Lnet/minecraft/class_5321; field_54247 HERO_OF_THE_VILLAGE_BABY_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_54246 HERO_OF_THE_VILLAGE_UNEMPLOYED_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_54249 ARMADILLO_SHED_GAMEPLAY + f Lnet/minecraft/class_5321; field_54248 CHICKEN_LAY_GAMEPLAY + f Lnet/minecraft/class_5321; field_49427 BOGGED_SHEARING + f Lnet/minecraft/class_5321; field_803 JUNGLE_TEMPLE_CHEST + f Lnet/minecraft/class_5321; field_800 STRONGHOLD_CROSSING_CHEST + f Lnet/minecraft/class_5321; field_44649 TRAIL_RUINS_RARE_ARCHAEOLOGY + f Lnet/minecraft/class_5321; field_44648 TRAIL_RUINS_COMMON_ARCHAEOLOGY + f Lnet/minecraft/class_5321; field_24047 BASTION_OTHER_CHEST + f Lnet/minecraft/class_5321; field_24048 BASTION_BRIDGE_CHEST + f Lnet/minecraft/class_5321; field_24046 BASTION_TREASURE_CHEST + f Lnet/minecraft/class_5321; field_842 STRONGHOLD_CORRIDOR_CHEST + f Lnet/minecraft/class_5321; field_841 SHIPWRECK_MAP_CHEST + f Lnet/minecraft/class_5321; field_50201 TRIAL_CHAMBER_EQUIPMENT + f Lnet/minecraft/class_5321; field_50200 TRIAL_CHAMBER_ITEMS_TO_DROP_WHEN_OMINOUS_SPAWNER + f Lnet/minecraft/class_5321; field_854 FISHING_TREASURE_GAMEPLAY + f Lnet/minecraft/class_5321; field_61484 TURTLE_GROW_GAMEPLAY + f Lnet/minecraft/class_5321; field_54009 MOOSHROOM_SHEARING + f Lnet/minecraft/class_5321; field_43353 DESERT_WELL_ARCHAEOLOGY + f Lnet/minecraft/class_5321; field_43354 DESERT_PYRAMID_ARCHAEOLOGY + f Lnet/minecraft/class_5321; field_43357 OCEAN_RUIN_COLD_ARCHAEOLOGY + f Lnet/minecraft/class_5321; field_43356 OCEAN_RUIN_WARM_ARCHAEOLOGY + f Lnet/minecraft/class_5321; field_38439 ANCIENT_CITY_ICE_BOX_CHEST + f Lnet/minecraft/class_5321; field_38438 ANCIENT_CITY_CHEST + f Lnet/minecraft/class_5321; field_61494 ZOMBIE_CHARGED_CREEPER + f Lnet/minecraft/class_5321; field_61493 WITHER_SKELETON_CHARGED_CREEPER + f Lnet/minecraft/class_5321; field_61492 SKELETON_CHARGED_CREEPER + f Lnet/minecraft/class_5321; field_61491 CREEPER_CHARGED_CREEPER + f Lnet/minecraft/class_5321; field_61490 PIGLIN_CHARGED_CREEPER + f Lnet/minecraft/class_5321; field_24049 BASTION_HOGLIN_STABLE_CHEST + f Lnet/minecraft/class_5321; field_61489 ROOT_CHARGED_CREEPER + f Lnet/minecraft/class_5321; field_61488 ARMADILLO_BRUSH + f Lnet/minecraft/class_5321; field_61487 PUMPKIN_CARVE + f Lnet/minecraft/class_5321; field_61486 BEEHIVE_HARVEST + f Lnet/minecraft/class_5321; field_54010 SHEEP_SHEARING + f Lnet/minecraft/class_5321; field_24050 RUINED_PORTAL_CHEST + f Lnet/minecraft/class_5321; field_61485 CAVE_VINE_HARVEST + f Lnet/minecraft/class_5321; field_751 JUNGLE_TEMPLE_DISPENSER_CHEST + f Lnet/minecraft/class_5321; field_885 DESERT_PYRAMID_CHEST + f Lnet/minecraft/class_5321; field_880 SHIPWRECK_SUPPLY_CHEST + f Lnet/minecraft/class_5321; field_51414 TRIAL_CHAMBER_RANGED_EQUIPMENT + f Lnet/minecraft/class_5321; field_51415 TRIAL_CHAMBER_MELEE_EQUIPMENT + f Lnet/minecraft/class_5321; field_22402 PIGLIN_BARTERING_GAMEPLAY + f Lnet/minecraft/class_5321; field_615 NETHER_BRIDGE_CHEST + f Lnet/minecraft/class_5321; field_665 SHIPWRECK_TREASURE_CHEST + f Lnet/minecraft/class_5321; field_662 IGLOO_CHEST_CHEST + f Lnet/minecraft/class_5321; field_795 FISHING_FISH_GAMEPLAY + f Lnet/minecraft/class_5321; field_52690 MOOSHROOM_BROWN_SHEARING + f Lnet/minecraft/class_5321; field_61913 SWEET_BERRY_BUSH_HARVEST + f Lnet/minecraft/class_5321; field_52691 SNOW_GOLEM_SHEARING + f Lnet/minecraft/class_5321; field_52689 MOOSHROOM_RED_SHEARING + f Lnet/minecraft/class_5321; field_19065 HERO_OF_THE_VILLAGE_CLERIC_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_19064 HERO_OF_THE_VILLAGE_CARTOGRAPHER_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_19063 HERO_OF_THE_VILLAGE_BUTCHER_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_19062 HERO_OF_THE_VILLAGE_ARMORER_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_19074 HERO_OF_THE_VILLAGE_WEAPONSMITH_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_19073 HERO_OF_THE_VILLAGE_TOOLSMITH_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_19072 HERO_OF_THE_VILLAGE_SHEPHERD_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_19071 HERO_OF_THE_VILLAGE_MASON_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_19070 HERO_OF_THE_VILLAGE_LIBRARIAN_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_49158 PANDA_SNEEZE_GAMEPLAY + f Lnet/minecraft/class_5321; field_19069 HERO_OF_THE_VILLAGE_LEATHERWORKER_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_19068 HERO_OF_THE_VILLAGE_FLETCHER_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_19067 HERO_OF_THE_VILLAGE_FISHERMAN_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_19066 HERO_OF_THE_VILLAGE_FARMER_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_50194 TRIAL_CHAMBERS_REWARD_OMINOUS_CHEST + f Lnet/minecraft/class_5321; field_50196 TRIAL_CHAMBERS_REWARD_OMINOUS_RARE_CHEST + f Lnet/minecraft/class_5321; field_50195 TRIAL_CHAMBERS_REWARD_OMINOUS_COMMON_CHEST + f Lnet/minecraft/class_5321; field_50198 OMINOUS_TRIAL_CHAMBER_KEY_SPAWNER + f Lnet/minecraft/class_5321; field_50197 TRIAL_CHAMBERS_REWARD_OMINOUS_UNIQUE_CHEST + f Lnet/minecraft/class_5321; field_50199 OMINOUS_TRIAL_CHAMBER_CONSUMABLES_SPAWNER + f Lnet/minecraft/class_5321; field_16593 PILLAGER_OUTPOST_CHEST + f Lnet/minecraft/class_5321; field_16216 CAT_MORNING_GIFT_GAMEPLAY + f Lnet/minecraft/class_5321; field_683 STRONGHOLD_LIBRARY_CHEST + f Lnet/minecraft/class_5321; field_300 UNDERWATER_RUIN_BIG_CHEST + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_269 register + p 0 id + m (Ljava/lang/String;)Ljava/util/Map; method_61883 registerAllDyeColors + p 0 prefix + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_5321; method_271 registerLootTable + p 0 key + m (Ljava/lang/String;Lnet/minecraft/class_1767;)Lnet/minecraft/class_5321; method_66490 method_66490 + p 1 color + m ()Ljava/util/Set; method_270 getAll +c net/minecraft/class_7442 net/minecraft/datafixer/fix/GoatHornIdFix + f [Ljava/lang/String; field_39110 GOAT_HORN_IDS + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Ljava/lang/String;)Z method_44191 method_44191 + p 0 itemId +c net/minecraft/class_8773 net/minecraft/client/session/report/UsernameAbuseReport + f Ljava/lang/String; field_46060 username + m (Ljava/util/UUID;Ljava/time/Instant;Ljava/util/UUID;Ljava/lang/String;)V + p 4 username + p 3 reportedPlayerUuid + p 2 currentTime + p 1 reportId + m ()Lnet/minecraft/class_8773; method_53608 copy + m ()Ljava/lang/String; method_53607 getUsername +c net/minecraft/class_8773$class_8774 net/minecraft/client/session/report/UsernameAbuseReport$Builder + m (Lnet/minecraft/class_8773;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 2 limits + p 1 report + m (Ljava/util/UUID;Ljava/lang/String;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 reportedPlayerUuid + p 2 username + p 3 limits +c net/minecraft/class_7440 net/minecraft/registry/tag/BannerPatternTags + f Lnet/minecraft/class_6862; field_39103 PIGLIN_PATTERN_ITEM + f Lnet/minecraft/class_6862; field_39100 SKULL_PATTERN_ITEM + f Lnet/minecraft/class_6862; field_39102 GLOBE_PATTERN_ITEM + f Lnet/minecraft/class_6862; field_39101 MOJANG_PATTERN_ITEM + f Lnet/minecraft/class_6862; field_52379 BORDURE_INDENTED_PATTERN_ITEM + f Lnet/minecraft/class_6862; field_52378 FIELD_MASONED_PATTERN_ITEM + f Lnet/minecraft/class_6862; field_49787 GUSTER_PATTERN_ITEM + f Lnet/minecraft/class_6862; field_49786 FLOW_PATTERN_ITEM + f Lnet/minecraft/class_6862; field_39099 CREEPER_PATTERN_ITEM + f Lnet/minecraft/class_6862; field_39098 FLOWER_PATTERN_ITEM + f Lnet/minecraft/class_6862; field_39097 NO_ITEM_REQUIRED + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_43675 of + p 0 id +c net/minecraft/class_6112 net/minecraft/unused/packageinfo/PackageInfo6112 +c net/minecraft/class_8771 net/minecraft/client/gui/screen/report/SkinReportScreen + f I field_46053 REASON_BUTTON_AND_COMMENTS_BOX_WIDTH + f I field_46052 SKIN_WIDGET_WIDTH + f Lnet/minecraft/class_4185; field_46058 selectReasonButton + f Lnet/minecraft/class_7529; field_46056 commentsBox + f Lnet/minecraft/class_2561; field_46054 TITLE_TEXT + m (Lnet/minecraft/class_4185;)V method_61151 method_61151 + p 1 button + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7574;Ljava/util/UUID;Ljava/util/function/Supplier;)V + p 2 context + p 1 parent + p 4 skinSupplier + p 3 reportedPlayerUuid + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7574;Lnet/minecraft/class_8777;)V + p 3 report + p 2 context + p 1 parent + m (Ljava/lang/String;)V method_61154 method_61154 + p 1 comments + m (Lnet/minecraft/class_7573;)V method_61153 method_61153 + p 1 reason + m (Lnet/minecraft/class_7847;)V method_61152 method_61152 + p 0 positioner + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7574;Lnet/minecraft/class_8777$class_8778;)V + p 3 reportBuilder + p 1 parent + p 2 context +c net/minecraft/class_7441 net/minecraft/registry/tag/InstrumentTags + f Lnet/minecraft/class_6862; field_39107 SCREAMING_GOAT_HORNS + f Lnet/minecraft/class_6862; field_39106 REGULAR_GOAT_HORNS + f Lnet/minecraft/class_6862; field_39108 GOAT_HORNS + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_43676 of + p 0 id +c net/minecraft/class_6111 net/minecraft/unused/packageinfo/PackageInfo6111 +c net/minecraft/class_58 net/minecraft/loot/LootTableReporter + f Ljava/util/Set; field_44505 referenceStack + f Ljava/util/Optional; field_44504 dataLookup + f Lnet/minecraft/class_8942; field_47427 errorReporter + f Lnet/minecraft/class_176; field_20756 contextType + m (Lnet/minecraft/class_176;)Lnet/minecraft/class_58; method_22568 withContextType + p 1 contextType + m (Lnet/minecraft/class_8942$class_11336;Lnet/minecraft/class_5321;)Lnet/minecraft/class_58; method_51219 makeChild + p 2 key + m (Lnet/minecraft/class_8942$class_11337;)V method_360 report + m ()Z method_61030 canUseReferences + m ()Lnet/minecraft/class_7871$class_7872; method_51220 getDataLookup + m (Lnet/minecraft/class_5321;)Z method_51218 isInStack + p 1 key + m (Lnet/minecraft/class_8942$class_11336;)Lnet/minecraft/class_58; method_364 makeChild + m ()Lnet/minecraft/class_8942; method_60288 getErrorReporter + m (Lnet/minecraft/class_8942;Lnet/minecraft/class_176;Ljava/util/Optional;Ljava/util/Set;)V + p 3 dataLookup + p 4 referenceStack + p 1 errorReporter + p 2 contextType + m (Lnet/minecraft/class_46;)V method_22567 validateContext + p 1 contextAware + m (Lnet/minecraft/class_8942;Lnet/minecraft/class_176;)V + p 2 contextType + p 1 errorReporter + m (Lnet/minecraft/class_8942;Lnet/minecraft/class_176;Lnet/minecraft/class_7871$class_7872;)V + p 1 errorReporter + p 2 contextType + p 3 dataLookup +c net/minecraft/class_58$class_11375 net/minecraft/loot/LootTableReporter$MissingElementError + f Lnet/minecraft/class_5321; comp_4268 referenced + m ()Lnet/minecraft/class_5321; comp_4268 referenced + m (Lnet/minecraft/class_5321;)V + p 1 referenced +c net/minecraft/class_58$class_11376 net/minecraft/loot/LootTableReporter$ParametersNotProvidedError + f Ljava/util/Set; comp_4269 notProvided + m ()Ljava/util/Set; comp_4269 notProvided + m (Ljava/util/Set;)V + p 1 notProvided +c net/minecraft/class_58$class_11377 net/minecraft/loot/LootTableReporter$RecursionError + f Lnet/minecraft/class_5321; comp_4270 referenced + m ()Lnet/minecraft/class_5321; comp_4270 referenced + m (Lnet/minecraft/class_5321;)V + p 1 referenced +c net/minecraft/class_58$class_11378 net/minecraft/loot/LootTableReporter$ReferenceNotAllowedError + f Lnet/minecraft/class_5321; comp_4271 referenced + m ()Lnet/minecraft/class_5321; comp_4271 referenced + m (Lnet/minecraft/class_5321;)V + p 1 referenced +c net/minecraft/class_52 net/minecraft/loot/LootTable + f Lorg/slf4j/Logger; field_946 LOGGER + f Lcom/mojang/serialization/Codec; field_50021 CODEC + f Ljava/util/Optional; field_44892 randomSequenceId + f J field_49428 DEFAULT_SEED + f Lcom/mojang/serialization/Codec; field_56684 TABLE_KEY + f Lnet/minecraft/class_176; field_947 GENERIC + f Ljava/util/List; field_944 functions + f Ljava/util/function/BiFunction; field_945 combinedFunction + f Lcom/mojang/serialization/Codec; field_45796 ENTRY_CODEC + f Lnet/minecraft/class_176; field_942 type + f Ljava/util/List; field_943 pools + f Lnet/minecraft/class_52; field_948 EMPTY + m (Lnet/minecraft/class_3218;Ljava/util/function/Consumer;Lnet/minecraft/class_1799;)V method_331 method_331 + p 2 stack + m (Lit/unimi/dsi/fastutil/objects/ObjectArrayList;ILnet/minecraft/class_5819;)V method_333 spreadStacks + p 3 random + p 2 freeSlots + p 1 stacks + m (Lnet/minecraft/class_52;)Lnet/minecraft/class_176; method_67701 method_67701 + p 0 table + m (Lnet/minecraft/class_8567;)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; method_51878 generateLoot + p 1 parameters + m (Lnet/minecraft/class_52;)Ljava/util/List; method_67697 method_67697 + p 0 table + m ()Lnet/minecraft/class_52$class_53; method_324 builder + m (Lnet/minecraft/class_58;)V method_330 validate + p 1 reporter + m (Lnet/minecraft/class_47;)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; method_319 generateLoot + p 1 context + m (Lnet/minecraft/class_52;)Ljava/util/Optional; method_67700 method_67700 + p 0 table + m (Lnet/minecraft/class_176;Ljava/util/Optional;Ljava/util/List;Ljava/util/List;)V + p 2 randomSequenceId + p 1 type + p 4 functions + p 3 pools + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67696 method_67696 + p 0 instance + m (Lnet/minecraft/class_1263;Lnet/minecraft/class_8567;J)V method_329 supplyInventory + p 3 seed + p 2 parameters + p 1 inventory + m (Lnet/minecraft/class_8567;Ljava/util/function/Consumer;)V method_51882 generateLoot + p 1 parameters + p 2 lootConsumer + m (Lnet/minecraft/class_8567;Lnet/minecraft/class_5819;)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; method_60569 generateLoot + p 2 random + p 1 parameters + m (Lnet/minecraft/class_47;Ljava/util/function/Consumer;)V method_320 generateLoot + p 1 context + p 2 lootConsumer + m (Lnet/minecraft/class_3218;Ljava/util/function/Consumer;)Ljava/util/function/Consumer; method_332 processStacks + p 1 consumer + p 0 world + m (Lnet/minecraft/class_52;)Ljava/util/List; method_67698 method_67698 + p 0 table + m (Lnet/minecraft/class_8567;JLjava/util/function/Consumer;)V method_51880 generateLoot + p 1 parameters + p 2 seed + p 4 lootConsumer + m ()Lnet/minecraft/class_176; method_322 getType + m (Lnet/minecraft/class_8567;J)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; method_51879 generateLoot + p 1 parameters + p 2 seed + m (Lnet/minecraft/class_1263;Lnet/minecraft/class_5819;)Ljava/util/List; method_321 getFreeSlots + p 1 inventory + p 2 random + m (Lnet/minecraft/class_8567;Ljava/util/function/Consumer;)V method_51881 generateUnprocessedLoot + p 1 parameters + p 2 lootConsumer + m (Lnet/minecraft/class_47;Ljava/util/function/Consumer;)V method_328 generateUnprocessedLoot + p 1 context + p 2 lootConsumer +c net/minecraft/class_52$class_53 net/minecraft/loot/LootTable$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_951 functions + f Lnet/minecraft/class_176; field_950 type + f Ljava/util/Optional; field_44893 randomSequenceId + f Lcom/google/common/collect/ImmutableList$Builder; field_949 pools + m ()Lnet/minecraft/class_52$class_53; method_337 getThisFunctionConsumingBuilder + m ()Lnet/minecraft/class_52; method_338 build + m (Lnet/minecraft/class_55$class_56;)Lnet/minecraft/class_52$class_53; method_336 pool + p 1 poolBuilder + m (Lnet/minecraft/class_117$class_118;)Lnet/minecraft/class_52$class_53; method_335 apply + m (Lnet/minecraft/class_176;)Lnet/minecraft/class_52$class_53; method_334 type + p 1 type + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_52$class_53; method_51883 randomSequenceId + p 1 randomSequenceId +c net/minecraft/class_8770 net/minecraft/client/gui/screen/report/AbuseReportTypeScreen + f Lnet/minecraft/class_437; field_46047 parent + f Lnet/minecraft/class_2561; field_46045 NAME_TYPE_TEXT + f Lnet/minecraft/class_2561; field_46044 SKIN_TYPE_TEXT + f Lnet/minecraft/class_8667; field_46050 layout + f Lnet/minecraft/class_5519; field_46049 selectedPlayer + f Lnet/minecraft/class_2561; field_46043 CHAT_TYPE_TEXT + f Lnet/minecraft/class_7574; field_46048 context + f Lnet/minecraft/class_2561; field_46042 MESSAGE_TEXT + f Lnet/minecraft/class_2561; field_46041 TITLE_TEXT + m (Lnet/minecraft/class_8770;Lnet/minecraft/class_364;)V method_53582 method_53582 + p 1 child + m (Lnet/minecraft/class_4185;)V method_53581 method_53581 + p 1 button + m (Lnet/minecraft/class_4185;)V method_53583 method_53583 + p 1 button + m (Lnet/minecraft/class_4185;)V method_53585 method_53585 + p 1 button + m (Lnet/minecraft/class_4185;)V method_53584 method_53584 + p 1 button + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7574;Lnet/minecraft/class_5519;)V + p 1 parent + p 3 selectedPlayer + p 2 context +c net/minecraft/class_55 net/minecraft/loot/LootPool + f Ljava/util/function/BiFunction; field_952 javaFunctions + f Lnet/minecraft/class_5658; field_957 rolls + f Lcom/mojang/serialization/Codec; field_45795 CODEC + f Ljava/util/function/Predicate; field_955 predicate + f Lnet/minecraft/class_5658; field_958 bonusRolls + f Ljava/util/List; field_956 functions + f Ljava/util/List; field_954 conditions + f Ljava/util/List; field_953 entries + m (Lnet/minecraft/class_55;)Ljava/util/List; method_53272 method_53272 + p 0 pool + m (Lnet/minecraft/class_55;)Ljava/util/List; method_53271 method_53271 + p 0 pool + m (Lnet/minecraft/class_47;Ljava/util/List;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/class_82;)V method_342 method_342 + p 3 choice + m (Lnet/minecraft/class_58;)V method_349 validate + p 1 reporter + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53268 method_53268 + p 0 instance + m (Lnet/minecraft/class_55;)Lnet/minecraft/class_5658; method_53270 method_53270 + p 0 pool + m (Lnet/minecraft/class_55;)Ljava/util/List; method_53273 method_53273 + p 0 pool + m ()Lnet/minecraft/class_55$class_56; method_347 builder + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_5658;Lnet/minecraft/class_5658;)V + p 1 entries + p 3 functions + p 2 conditions + p 5 bonusRolls + p 4 rolls + m (Ljava/util/function/Consumer;Lnet/minecraft/class_47;)V method_341 addGeneratedLoot + p 1 lootConsumer + p 2 context + m (Lnet/minecraft/class_55;)Lnet/minecraft/class_5658; method_53269 method_53269 + p 0 pool + m (Ljava/util/function/Consumer;Lnet/minecraft/class_47;)V method_345 supplyOnce + p 1 lootConsumer + p 2 context +c net/minecraft/class_55$class_56 net/minecraft/loot/LootPool$Builder + f Lnet/minecraft/class_5658; field_962 bonusRollsRange + f Lcom/google/common/collect/ImmutableList$Builder; field_963 conditions + f Lcom/google/common/collect/ImmutableList$Builder; field_960 entries + f Lcom/google/common/collect/ImmutableList$Builder; field_961 functions + f Lnet/minecraft/class_5658; field_959 rolls + m (Lnet/minecraft/class_5658;)Lnet/minecraft/class_55$class_56; method_35509 bonusRolls + p 1 bonusRolls + m ()Lnet/minecraft/class_55$class_56; method_354 getThisFunctionConsumingBuilder + m (Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_55$class_56; method_356 conditionally + m (Lnet/minecraft/class_79$class_80;)Lnet/minecraft/class_55$class_56; method_351 with + p 1 entry + m (Lnet/minecraft/class_117$class_118;)Lnet/minecraft/class_55$class_56; method_353 apply + m ()Lnet/minecraft/class_55; method_355 build + m (Lnet/minecraft/class_5658;)Lnet/minecraft/class_55$class_56; method_352 rolls + p 1 rolls +c net/minecraft/class_6118 net/minecraft/unused/packageinfo/PackageInfo6118 +c net/minecraft/class_6117 net/minecraft/unused/packageinfo/PackageInfo6117 +c net/minecraft/class_7448 net/minecraft/network/message/SignedCommandArguments + c An interface wrapping {@link ArgumentSignatureDataMap}. + f Lnet/minecraft/class_7448; field_39901 EMPTY + c An empty signed command arguments that always returns {@code null} for\n{@link #getMessage}. + m (Ljava/lang/String;)Lnet/minecraft/class_7471; method_44907 getMessage + p 1 argumentName +c net/minecraft/class_7448$class_7449 net/minecraft/network/message/SignedCommandArguments$Impl + c A basic implementation of {@link SignedCommandArguments}. + f Ljava/util/Map; comp_971 arguments + m ()Ljava/util/Map; comp_971 arguments + m (Ljava/util/Map;)V + p 1 arguments +c net/minecraft/class_8779 net/minecraft/advancement/AdvancementEntry + f Lnet/minecraft/class_9139; field_48180 PACKET_CODEC + f Lnet/minecraft/class_9139; field_48181 LIST_PACKET_CODEC + f Lnet/minecraft/class_2960; comp_1919 id + f Lnet/minecraft/class_161; comp_1920 value + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_2960; comp_1919 id + m ()Lnet/minecraft/class_161; comp_1920 value + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_161;)V + p 1 id + p 2 value +c net/minecraft/class_6119 net/minecraft/unused/packageinfo/PackageInfo6119 +c net/minecraft/class_6114 net/minecraft/unused/packageinfo/PackageInfo6114 +c net/minecraft/class_8777 net/minecraft/client/session/report/SkinAbuseReport + f Ljava/util/function/Supplier; field_46069 skinSupplier + m ()Ljava/util/function/Supplier; method_53618 getSkinSupplier + m (Ljava/util/UUID;Ljava/time/Instant;Ljava/util/UUID;Ljava/util/function/Supplier;)V + p 1 reportId + p 2 currentTime + p 3 reportedPlayerUuid + p 4 skinSupplier + m ()Lnet/minecraft/class_8777; method_53619 copy +c net/minecraft/class_8777$class_8778 net/minecraft/client/session/report/SkinAbuseReport$Builder + m (Ljava/util/UUID;Ljava/util/function/Supplier;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 reportedPlayerUuid + p 2 skinSupplier + p 3 limits + m (Lnet/minecraft/class_8777;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 2 limits + p 1 report +c net/minecraft/class_7446 net/minecraft/block/entity/BannerPatterns + f Lnet/minecraft/class_5321; field_39171 DIAGONAL_LEFT + f Lnet/minecraft/class_5321; field_39172 DIAGONAL_UP_RIGHT + f Lnet/minecraft/class_5321; field_39173 DIAGONAL_UP_LEFT + f Lnet/minecraft/class_5321; field_39174 DIAGONAL_RIGHT + f Lnet/minecraft/class_5321; field_39170 TRIANGLES_TOP + f Lnet/minecraft/class_5321; field_39167 TRIANGLE_BOTTOM + f Lnet/minecraft/class_5321; field_39168 TRIANGLE_TOP + f Lnet/minecraft/class_5321; field_39169 TRIANGLES_BOTTOM + f Lnet/minecraft/class_5321; field_39163 STRIPE_DOWNLEFT + f Lnet/minecraft/class_5321; field_39164 SMALL_STRIPES + f Lnet/minecraft/class_5321; field_39165 CROSS + f Lnet/minecraft/class_5321; field_39166 STRAIGHT_CROSS + f Lnet/minecraft/class_5321; field_39175 CIRCLE + f Lnet/minecraft/class_5321; field_39176 RHOMBUS + f Lnet/minecraft/class_5321; field_39150 PIGLIN + f Lnet/minecraft/class_5321; field_49835 FLOW + f Lnet/minecraft/class_5321; field_49836 GUSTER + f Lnet/minecraft/class_5321; field_39147 SKULL + f Lnet/minecraft/class_5321; field_39148 FLOWER + f Lnet/minecraft/class_5321; field_39149 MOJANG + f Lnet/minecraft/class_5321; field_39143 GRADIENT_UP + f Lnet/minecraft/class_5321; field_39144 BRICKS + f Lnet/minecraft/class_5321; field_39145 GLOBE + f Lnet/minecraft/class_5321; field_39146 CREEPER + f Lnet/minecraft/class_5321; field_39140 BORDER + f Lnet/minecraft/class_5321; field_39141 CURLY_BORDER + f Lnet/minecraft/class_5321; field_39142 GRADIENT + f Lnet/minecraft/class_5321; field_39160 STRIPE_CENTER + f Lnet/minecraft/class_5321; field_39161 STRIPE_MIDDLE + f Lnet/minecraft/class_5321; field_39162 STRIPE_DOWNRIGHT + f Lnet/minecraft/class_5321; field_39159 STRIPE_RIGHT + f Lnet/minecraft/class_5321; field_39155 SQUARE_TOP_RIGHT + f Lnet/minecraft/class_5321; field_39156 STRIPE_BOTTOM + f Lnet/minecraft/class_5321; field_39157 STRIPE_TOP + f Lnet/minecraft/class_5321; field_39158 STRIPE_LEFT + f Lnet/minecraft/class_5321; field_39151 BASE + f Lnet/minecraft/class_5321; field_39152 SQUARE_BOTTOM_LEFT + f Lnet/minecraft/class_5321; field_39153 SQUARE_BOTTOM_RIGHT + f Lnet/minecraft/class_5321; field_39154 SQUARE_TOP_LEFT + f Lnet/minecraft/class_5321; field_39139 HALF_HORIZONTAL_BOTTOM + f Lnet/minecraft/class_5321; field_39136 HALF_VERTICAL + f Lnet/minecraft/class_5321; field_39137 HALF_HORIZONTAL + f Lnet/minecraft/class_5321; field_39138 HALF_VERTICAL_RIGHT + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;)V method_57577 register + p 1 key + p 0 registry + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_43722 of + p 0 id + m (Lnet/minecraft/class_7891;)V method_43721 bootstrap + p 0 registry +c net/minecraft/class_6113 net/minecraft/unused/packageinfo/PackageInfo6113 +c net/minecraft/class_6116 net/minecraft/unused/packageinfo/PackageInfo6116 +c net/minecraft/class_7444 net/minecraft/item/Instrument + f Lcom/mojang/serialization/Codec; field_39122 ENTRY_CODEC + f Lnet/minecraft/class_9139; field_49261 PACKET_CODEC + f Lnet/minecraft/class_9139; field_49262 ENTRY_PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_49260 CODEC + f Lnet/minecraft/class_2561; comp_2929 description + f Lnet/minecraft/class_6880; comp_772 soundEvent + f F comp_774 range + f F comp_773 useDuration + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43709 method_43709 + p 0 instance + m ()Lnet/minecraft/class_2561; comp_2929 description + m ()F comp_773 useDuration + m ()Lnet/minecraft/class_6880; comp_772 soundEvent + m ()F comp_774 range + m (Lnet/minecraft/class_6880;FFLnet/minecraft/class_2561;)V + p 1 soundEvent + p 2 useDuration + p 3 range + p 4 description +c net/minecraft/class_6115 net/minecraft/unused/packageinfo/PackageInfo6115 +c net/minecraft/class_8776 net/minecraft/client/session/report/AbuseReportType + f Ljava/lang/String; field_46067 name + f Lnet/minecraft/class_8776; field_46065 SKIN + f Lnet/minecraft/class_8776; field_46064 CHAT + f Lnet/minecraft/class_8776; field_46066 USERNAME + m ()Ljava/lang/String; method_53616 getName + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_7445 net/minecraft/item/Instruments + f I field_39124 GOAT_HORN_RANGE + f F field_39125 GOAT_HORN_USE_DURATION + f Lnet/minecraft/class_5321; field_39133 DREAM_GOAT_HORN + f Lnet/minecraft/class_5321; field_39130 ADMIRE_GOAT_HORN + f Lnet/minecraft/class_5321; field_39131 CALL_GOAT_HORN + f Lnet/minecraft/class_5321; field_39132 YEARN_GOAT_HORN + f Lnet/minecraft/class_5321; field_39129 FEEL_GOAT_HORN + f Lnet/minecraft/class_5321; field_39126 PONDER_GOAT_HORN + f Lnet/minecraft/class_5321; field_39127 SING_GOAT_HORN + f Lnet/minecraft/class_5321; field_39128 SEEK_GOAT_HORN + m (Lnet/minecraft/class_7891;)V method_43713 bootstrap + p 0 registry + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_43714 of + p 0 id + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_6880;FF)V method_61646 register + p 4 range + p 3 useDuration + p 2 sound + p 1 key + p 0 registry +c net/minecraft/class_6121 net/minecraft/world/gen/heightprovider/ConstantHeightProvider + f Lnet/minecraft/class_6121; field_31536 ZERO + f Lnet/minecraft/class_5843; field_31538 offset + f Lcom/mojang/serialization/MapCodec; field_31537 CONSTANT_CODEC + m (Lnet/minecraft/class_5843;)V + p 1 offset + m (Lnet/minecraft/class_5843;)Lnet/minecraft/class_6121; method_35383 create + p 0 offset + m ()Lnet/minecraft/class_5843; method_35385 getOffset +c net/minecraft/class_6120 net/minecraft/world/gen/heightprovider/BiasedToBottomHeightProvider + f Lcom/mojang/serialization/MapCodec; field_31531 BIASED_TO_BOTTOM_CODEC + f Lorg/slf4j/Logger; field_31532 LOGGER + f I field_31535 inner + f Lnet/minecraft/class_5843; field_31534 maxOffset + f Lnet/minecraft/class_5843; field_31533 minOffset + m (Lnet/minecraft/class_6120;)Lnet/minecraft/class_5843; method_35380 method_35380 + p 0 provider + m (Lnet/minecraft/class_6120;)Lnet/minecraft/class_5843; method_35379 method_35379 + p 0 provider + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35376 method_35376 + p 0 instance + m (Lnet/minecraft/class_5843;Lnet/minecraft/class_5843;I)V + p 1 minOffset + p 2 maxOffset + p 3 inner + m (Lnet/minecraft/class_5843;Lnet/minecraft/class_5843;I)Lnet/minecraft/class_6120; method_35377 create + p 2 inner + p 1 maxOffset + p 0 minOffset + m (Lnet/minecraft/class_6120;)Ljava/lang/Integer; method_35378 method_35378 + p 0 provider +c net/minecraft/class_67 net/minecraft/loot/entry/DynamicEntry + f Lnet/minecraft/class_2960; field_980 name + f Lcom/mojang/serialization/MapCodec; field_45798 CODEC + m (Lnet/minecraft/class_67;)Lnet/minecraft/class_2960; method_53282 method_53282 + p 0 entry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53283 method_53283 + p 0 instance + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_85$class_86; method_390 builder + p 0 name + m (Lnet/minecraft/class_2960;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/class_85; method_391 method_391 + p 3 conditions + p 4 functions + p 1 weight + p 2 quality + m (Lnet/minecraft/class_2960;IILjava/util/List;Ljava/util/List;)V + p 3 quality + p 4 conditions + p 1 name + p 2 weight + p 5 functions +c net/minecraft/class_6123 net/minecraft/world/gen/heightprovider/HeightProviderType + f Lnet/minecraft/class_6123; field_33521 TRAPEZOID + f Lnet/minecraft/class_6123; field_33520 VERY_BIASED_TO_BOTTOM + f Lnet/minecraft/class_6123; field_31543 BIASED_TO_BOTTOM + f Lnet/minecraft/class_6123; field_31542 UNIFORM + f Lnet/minecraft/class_6123; field_31541 CONSTANT + f Lnet/minecraft/class_6123; field_35711 WEIGHTED_LIST + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_6123; method_35394 register + p 1 codec + p 0 id +c net/minecraft/class_7451 net/minecraft/command/argument/SignedArgumentType +c net/minecraft/class_8782 net/minecraft/advancement/AdvancementRequirements + f Lcom/mojang/serialization/Codec; field_47184 CODEC + f Lnet/minecraft/class_8782; field_46084 EMPTY + f Ljava/util/List; comp_1922 requirements + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_53670 writeRequirements + p 1 buf + m ()I method_53664 getLength + m (Ljava/util/function/Predicate;)I method_53675 countMatches + p 1 predicate + m ()Ljava/util/Set; method_53678 getNames + m (Ljava/util/Set;)Lcom/mojang/serialization/DataResult; method_54925 validate + p 1 requirements + m (Ljava/util/function/Predicate;)Z method_53669 matches + p 1 predicate + m (Ljava/util/Collection;)Lnet/minecraft/class_8782; method_53674 anyOf + p 0 requirements + m ()Z method_53677 isEmpty + m (Ljava/util/List;Ljava/util/function/Predicate;)Z method_53671 anyMatch + p 1 predicate + p 0 requirements + m (Lnet/minecraft/class_2540;)Ljava/util/List; method_54928 method_54928 + p 0 bufx + m (Lnet/minecraft/class_2540;Ljava/util/List;)V method_54927 method_54927 + p 0 bufx + p 1 requirements + m (Ljava/util/Collection;)Lnet/minecraft/class_8782; method_53668 allOf + p 0 requirements + m ()Ljava/util/List; comp_1922 requirements + m (Ljava/util/List;)V + p 1 requirements +c net/minecraft/class_8782$class_8797 net/minecraft/advancement/AdvancementRequirements$CriterionMerger + f Lnet/minecraft/class_8782$class_8797; field_1257 OR + f Lnet/minecraft/class_8782$class_8797; field_16882 AND + m (Ljava/util/Collection;)Lnet/minecraft/class_8782; create create + p 1 requirements +c net/minecraft/class_6122 net/minecraft/world/gen/heightprovider/HeightProvider + f Lcom/mojang/serialization/Codec; field_31540 CODEC + f Lcom/mojang/serialization/Codec; field_31539 OFFSET_OR_HEIGHT_CODEC + m (Lnet/minecraft/class_6122;)Lnet/minecraft/class_6122; method_35392 method_35392 + p 0 provider + m (Lnet/minecraft/class_6122;)Lcom/mojang/datafixers/util/Either; method_35390 method_35390 + p 0 provider + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_5868;)I method_35391 get + p 2 context + p 1 random + m ()Lnet/minecraft/class_6123; method_35388 getType + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_6122; method_35389 method_35389 + p 0 either +c net/minecraft/class_69 net/minecraft/loot/entry/CombinedEntry + f Ljava/util/List; field_982 children + f Lnet/minecraft/class_64; field_983 predicate + f Lnet/minecraft/class_8942$class_11337; field_60421 EMPTY_CHILDREN_LIST_ERROR + m (Lnet/minecraft/class_69$class_70;)Lcom/mojang/serialization/MapCodec; method_53279 createCodec + p 0 factory + m (Lnet/minecraft/class_69;)Ljava/util/List; method_53281 method_53281 + p 0 entry + m (Ljava/util/List;)Lnet/minecraft/class_64; method_394 combine + p 1 terms + m (Ljava/util/List;Ljava/util/List;)V + p 2 conditions + p 1 terms + m (Lnet/minecraft/class_69$class_70;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53280 method_53280 + p 1 instance +c net/minecraft/class_69$class_70 net/minecraft/loot/entry/CombinedEntry$Factory + m (Ljava/util/List;Ljava/util/List;)Lnet/minecraft/class_69; create create + p 1 terms + p 2 conditions +c net/minecraft/class_7452 net/minecraft/client/particle/SonicBoomParticle +c net/minecraft/class_7452$class_7453 net/minecraft/client/particle/SonicBoomParticle$Factory + f Lnet/minecraft/class_4002; field_39196 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_43785 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_64 net/minecraft/loot/entry/EntryCombiner + f Lnet/minecraft/class_64; field_16884 ALWAYS_TRUE + f Lnet/minecraft/class_64; field_16883 ALWAYS_FALSE + m (Lnet/minecraft/class_64;Lnet/minecraft/class_47;Ljava/util/function/Consumer;)Z method_16777 method_16777 + p 2 context + p 3 lootChoiceExpander + m (Lnet/minecraft/class_47;Ljava/util/function/Consumer;)Z expand expand + p 1 context + p 2 choiceConsumer + m (Lnet/minecraft/class_47;Ljava/util/function/Consumer;)Z method_16775 method_16775 + p 1 choiceConsumer + p 0 context + m (Lnet/minecraft/class_47;Ljava/util/function/Consumer;)Z method_16776 doExpand + p 0 context + p 1 choiceConsumer + m (Lnet/minecraft/class_64;)Lnet/minecraft/class_64; method_16778 and + p 1 other + m (Lnet/minecraft/class_64;)Lnet/minecraft/class_64; method_385 or + p 1 other + m (Lnet/minecraft/class_64;Lnet/minecraft/class_47;Ljava/util/function/Consumer;)Z method_16779 method_16779 + p 2 context + p 3 lootChoiceExpander +c net/minecraft/class_7450 net/minecraft/network/message/ArgumentSignatureDataMap + c A record holding the signatures for all signable arguments of an executed command.\n\n@see SignedCommandArguments + f I field_39418 MAX_ARGUMENTS + f Lnet/minecraft/class_7450; field_39807 EMPTY + f I field_39185 MAX_ARGUMENT_NAME_LENGTH + f Ljava/util/List; comp_912 entries + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_7450$class_7599;)V method_44799 method_44799 + p 0 buf2 + p 1 entry + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_43749 write + p 1 buf + m (Lnet/minecraft/class_7450$class_7600;Lnet/minecraft/class_7644$class_7645;)Lnet/minecraft/class_7450$class_7599; method_45561 method_45561 + p 1 argument + m (Lnet/minecraft/class_7644;Lnet/minecraft/class_7450$class_7600;)Lnet/minecraft/class_7450; method_44797 sign + c {@return the signature map with {@code arguments} signed with\n{@code signer}} + p 0 arguments + p 1 signer + m ()Ljava/util/List; comp_912 entries + m (Ljava/util/List;)V + p 1 entries +c net/minecraft/class_7450$class_7600 net/minecraft/network/message/ArgumentSignatureDataMap$ArgumentSigner + c A functional interface that signs an argument of a command. + m (Ljava/lang/String;)Lnet/minecraft/class_7469; sign sign + p 1 value +c net/minecraft/class_7450$class_7599 net/minecraft/network/message/ArgumentSignatureDataMap$Entry + c An entry of the signatures map, consisting of the argument's name and signature data. + f Lnet/minecraft/class_7469; comp_914 signature + f Ljava/lang/String; comp_913 name + m (Lnet/minecraft/class_2540;)V method_44800 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Ljava/lang/String; comp_913 name + m ()Lnet/minecraft/class_7469; comp_914 signature + m (Ljava/lang/String;Lnet/minecraft/class_7469;)V + p 1 name + p 2 signature +c net/minecraft/class_8781 net/minecraft/advancement/PlacedAdvancement + f Ljava/util/Set; field_46079 children + f Lnet/minecraft/class_8781; field_46078 parent + f Lnet/minecraft/class_8779; field_46077 advancementEntry + m (Lnet/minecraft/class_8779;Lnet/minecraft/class_8781;)V + p 2 parent + p 1 advancementEntry + m ()Lnet/minecraft/class_8779; method_53649 getAdvancementEntry + m ()Lnet/minecraft/class_8781; method_53652 getRoot + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_8781;)V method_53650 addChild + p 1 advancement + m ()Lnet/minecraft/class_161; method_53647 getAdvancement + m ()Ljava/lang/Iterable; method_53653 getChildren + m (Lnet/minecraft/class_8781;)Lnet/minecraft/class_8781; method_53648 findRoot + p 0 advancement + m ()Lnet/minecraft/class_8781; method_53651 getParent +c net/minecraft/class_65 net/minecraft/loot/entry/AlternativeEntry + f Lnet/minecraft/class_8942$class_11337; field_60420 UNREACHABLE_ENTRY_ERROR + f Lcom/mojang/serialization/MapCodec; field_45797 CODEC + m (Ljava/util/List;Lnet/minecraft/class_47;Ljava/util/function/Consumer;)Z method_387 method_387 + p 1 context + p 2 lootChoiceExpander + m ([Lnet/minecraft/class_79$class_80;)Lnet/minecraft/class_65$class_66; method_386 builder + p 0 children + m (Ljava/util/Collection;Ljava/util/function/Function;)Lnet/minecraft/class_65$class_66; method_43734 builder + p 0 children + p 1 toBuilderFunction +c net/minecraft/class_65$class_66 net/minecraft/loot/entry/AlternativeEntry$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_979 children + m ()Lnet/minecraft/class_65$class_66; method_388 getThisBuilder + m ([Lnet/minecraft/class_79$class_80;)V + p 1 children +c net/minecraft/class_6128 net/minecraft/unused/packageinfo/PackageInfo6128 +c net/minecraft/class_7459 net/minecraft/data/tag/vanilla/VanillaInstrumentTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 2 registriesFuture + p 1 output +c net/minecraft/class_6125 net/minecraft/unused/packageinfo/PackageInfo6125 +c net/minecraft/class_6124 net/minecraft/world/gen/heightprovider/UniformHeightProvider + f Lit/unimi/dsi/fastutil/longs/LongSet; field_36290 warnedEmptyHeightRanges + f Lcom/mojang/serialization/MapCodec; field_31544 UNIFORM_CODEC + f Lorg/slf4j/Logger; field_31545 LOGGER + f Lnet/minecraft/class_5843; field_31547 maxOffset + f Lnet/minecraft/class_5843; field_31546 minOffset + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35395 method_35395 + p 0 instance + m (Lnet/minecraft/class_5843;Lnet/minecraft/class_5843;)Lnet/minecraft/class_6124; method_35396 create + p 1 maxOffset + c the maximum offset, inclusive + p 0 minOffset + c the minimum offset, inclusive + m (Lnet/minecraft/class_6124;)Lnet/minecraft/class_5843; method_35397 method_35397 + p 0 provider + m (Lnet/minecraft/class_6124;)Lnet/minecraft/class_5843; method_35398 method_35398 + p 0 provider + m (Lnet/minecraft/class_5843;Lnet/minecraft/class_5843;)V + p 1 minOffset + p 2 maxOffset +c net/minecraft/class_7458 net/minecraft/data/tag/vanilla/VanillaBannerPatternTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 2 registriesFuture + p 1 dataGenerator +c net/minecraft/class_7455 net/minecraft/client/search/IdentifierSearcher + c An interface used for searching with an identifier's path or namespace. + m ()Lnet/minecraft/class_7455; method_43799 of + c {@return a searcher that always returns no results} + m (Ljava/util/List;Ljava/util/function/Function;)Lnet/minecraft/class_7455; method_43802 of + c {@return a searcher that searches from {@code values}} + p 1 identifiersGetter + c a function that, when given a value from {@code values}, returns a\nstream of identifiers associated with the value + p 0 values + m (Ljava/lang/String;)Ljava/util/List; method_43803 searchPath + c {@return the results of searching from the paths of the ids} + p 1 path + m (Lnet/minecraft/class_1128;Ljava/lang/Object;Lnet/minecraft/class_1128;Lnet/minecraft/class_2960;)V method_43800 method_43800 + p 3 id + m (Ljava/lang/String;)Ljava/util/List; method_43801 searchNamespace + c {@return the results of searching from the namespaces of the ids} + p 1 namespace +c net/minecraft/class_8786 net/minecraft/recipe/RecipeEntry + f Lnet/minecraft/class_1860; comp_1933 value + f Lnet/minecraft/class_5321; comp_1932 id + f Lnet/minecraft/class_9139; field_48357 PACKET_CODEC + m ()Lnet/minecraft/class_1860; comp_1933 value + m ()Lnet/minecraft/class_5321; comp_1932 id + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_1860;)V + p 1 id + p 2 value +c net/minecraft/class_6126 net/minecraft/unused/packageinfo/PackageInfo6126 +c net/minecraft/class_7420 net/minecraft/text/KeybindTranslations + f Ljava/util/function/Function; field_39013 factory + m (Ljava/lang/String;)Ljava/util/function/Supplier; method_43481 method_43481 + p 0 key + m (Ljava/util/function/Function;)V method_43482 setFactory + p 0 factory +c net/minecraft/class_79 net/minecraft/loot/entry/LootPoolEntry + f Ljava/util/function/Predicate; field_989 conditionPredicate + f Ljava/util/List; field_988 conditions + m ()Lnet/minecraft/class_5338; method_29318 getType + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P1; method_53287 addConditionsField + p 0 instance + m (Lnet/minecraft/class_47;)Z method_414 test + p 1 context + m (Lnet/minecraft/class_58;)V method_415 validate + p 1 reporter + m (Lnet/minecraft/class_79;)Ljava/util/List; method_53288 method_53288 + p 0 entry + m (Ljava/util/List;)V + p 1 conditions +c net/minecraft/class_79$class_80 net/minecraft/loot/entry/LootPoolEntry$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_990 conditions + m ()Ljava/util/List; method_420 getConditions + m (Lnet/minecraft/class_79$class_80;)Lnet/minecraft/class_93$class_6152; method_35513 groupEntry + p 1 entry + m ()Lnet/minecraft/class_79; method_419 build + m (Lnet/minecraft/class_79$class_80;)Lnet/minecraft/class_65$class_66; method_417 alternatively + p 1 builder + m (Lnet/minecraft/class_79$class_80;)Lnet/minecraft/class_72$class_6153; method_35514 sequenceEntry + p 1 entry + m (Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_79$class_80; method_421 conditionally + m ()Lnet/minecraft/class_79$class_80; method_418 getThisBuilder + m ()Lnet/minecraft/class_79$class_80; method_416 getThisConditionConsumingBuilder +c net/minecraft/class_7421 net/minecraft/unused/packageinfo/PackageInfo7421 +c net/minecraft/class_75 net/minecraft/loot/entry/LootPoolEntryTypes + f Lcom/mojang/serialization/Codec; field_45802 CODEC + f Lnet/minecraft/class_5338; field_25209 DYNAMIC + f Lnet/minecraft/class_5338; field_25207 ITEM + f Lnet/minecraft/class_5338; field_25208 LOOT_TABLE + f Lnet/minecraft/class_5338; field_25213 GROUP + f Lnet/minecraft/class_5338; field_25210 TAG + f Lnet/minecraft/class_5338; field_25212 SEQUENCE + f Lnet/minecraft/class_5338; field_25211 ALTERNATIVES + f Lnet/minecraft/class_5338; field_64181 SLOTS + f Lnet/minecraft/class_5338; field_25206 EMPTY + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_5338; method_29317 register + p 0 id + p 1 codec +c net/minecraft/class_77 net/minecraft/loot/entry/ItemEntry + f Lcom/mojang/serialization/MapCodec; field_45801 CODEC + f Lnet/minecraft/class_6880; field_987 item + m (Lnet/minecraft/class_6880;IILjava/util/List;Ljava/util/List;)V + p 5 functions + p 3 quality + p 4 conditions + p 1 item + p 2 weight + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53286 method_53286 + p 0 instance + m (Lnet/minecraft/class_77;)Lnet/minecraft/class_6880; method_53285 method_53285 + p 0 entry + m (Lnet/minecraft/class_1935;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/class_85; method_409 method_409 + p 3 conditions + p 4 functions + p 1 weight + p 2 quality + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_85$class_86; method_411 builder + p 0 drop +c net/minecraft/class_7428 net/minecraft/network/encryption/PlayerPublicKey + c An RSA public key for a player, signed by the Mojang's server.\n\n

Users cannot generate the keys themselves; this must be provided from Mojang's\nauthentication server.\n\n@see net.minecraft.client.session.ProfileKeys\n@see PlayerKeyPair + f Lnet/minecraft/class_2561; field_39956 INVALID_PUBLIC_KEY_SIGNATURE_TEXT + f Lnet/minecraft/class_2561; field_39954 EXPIRED_PUBLIC_KEY_TEXT + f Ljava/time/Duration; field_39955 EXPIRATION_GRACE_PERIOD + f Lcom/mojang/serialization/Codec; field_39050 CODEC + f Lnet/minecraft/class_7428$class_7443; comp_767 data + m ()Lnet/minecraft/class_7500; method_43697 createSignatureInstance + m (Lnet/minecraft/class_7500;Ljava/util/UUID;Lnet/minecraft/class_7428$class_7443;)Lnet/minecraft/class_7428; method_43550 verifyAndDecode + c Verifies the public key and decodes it.\n\n

The checks whether the public key is present, signed with the Mojang's private key,\nand not expired (taking into account the provided grace period).\n\n@throws PublicKeyException when the key is expired or malformed + p 2 publicKeyData + p 1 playerUuid + p 0 servicesSignatureVerifier + m ()Lnet/minecraft/class_7428$class_7443; comp_767 data + m (Lnet/minecraft/class_7428$class_7443;)V + p 1 data +c net/minecraft/class_7428$class_7443 net/minecraft/network/encryption/PlayerPublicKey$PublicKeyData + f I field_39309 KEY_SIGNATURE_MAX_SIZE + f Lcom/mojang/serialization/Codec; field_39119 CODEC + f Ljava/time/Instant; comp_769 expiresAt + f [B comp_771 keySignature + f Ljava/security/PublicKey; comp_770 key + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Ljava/time/Duration;)Z method_45103 isExpired + c {@return whether the key is expired, with the provided grace period taken into account} + p 1 gracePeriod + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_2540;)V method_44011 write + p 1 buf + m (Lnet/minecraft/class_7500;Ljava/util/UUID;)Z method_44205 verifyKey + p 1 servicesSignatureVerifier + p 2 playerUuid + m (Ljava/util/UUID;)[B method_43702 toSerializedString + p 1 playerUuid + m ()Z method_43704 isExpired + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43701 method_43701 + p 0 instance + m ()Ljava/time/Instant; comp_769 expiresAt + m ()Ljava/security/PublicKey; comp_770 key + m ()[B comp_771 keySignature + m (Ljava/time/Instant;Ljava/security/PublicKey;[B)V + p 1 expiresAt + p 2 key + p 3 keySignature +c net/minecraft/class_7428$class_7652 net/minecraft/network/encryption/PlayerPublicKey$PublicKeyException +c net/minecraft/class_8759 net/minecraft/client/gui/hud/debug/chart/TickChart + f Ljava/util/function/Supplier; field_47117 millisPerTickSupplier + m (Lnet/minecraft/class_327;Lnet/minecraft/class_9194;Ljava/util/function/Supplier;)V + p 2 log + p 1 textRenderer + p 3 millisPerTickSupplier + m (D)D method_53482 toMillisecondsPerTick + p 0 nanosecondsPerTick +c net/minecraft/class_73 net/minecraft/loot/entry/EmptyEntry + f Lcom/mojang/serialization/MapCodec; field_45799 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53284 method_53284 + p 0 instance + m ()Lnet/minecraft/class_85$class_86; method_401 builder + m (IILjava/util/List;Ljava/util/List;)V + p 1 weight + p 2 quality + p 3 conditions + p 4 functions +c net/minecraft/class_8757 net/minecraft/client/gui/hud/debug/chart/RenderingChart + m (D)D method_53481 toMillisecondsPerFrame + p 0 nanosecondsPerFrame +c net/minecraft/class_7427 net/minecraft/network/encryption/PlayerKeyPair + c An RSA key pair for a player.\n\n

Users cannot generate the keys themselves; this must be provided from Mojang's\nauthentication server.\n\n@see net.minecraft.client.session.ProfileKeys\n@see PlayerPublicKey + f Ljava/time/Instant; comp_743 refreshedAfter + c the time when the keys must be refreshed (not necessarily the expiry time) + f Lcom/mojang/serialization/Codec; field_39049 CODEC + f Lnet/minecraft/class_7428; comp_742 publicKey + f Ljava/security/PrivateKey; comp_741 privateKey + m ()Z method_43546 needsRefreshing + c {@return whether the keys need to be refreshed} + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43547 method_43547 + p 0 instance + m ()Ljava/security/PrivateKey; comp_741 privateKey + m ()Ljava/time/Instant; comp_743 refreshedAfter + m ()Lnet/minecraft/class_7428; comp_742 publicKey + m (Ljava/security/PrivateKey;Lnet/minecraft/class_7428;Ljava/time/Instant;)V + p 1 privateKey + p 2 publicKey + p 3 refreshedAfter +c net/minecraft/class_72 net/minecraft/loot/entry/SequenceEntry + f Lcom/mojang/serialization/MapCodec; field_45804 CODEC + m ([Lnet/minecraft/class_79$class_80;)Lnet/minecraft/class_72$class_6153; method_35515 create + p 0 entries + m (Ljava/util/List;Lnet/minecraft/class_47;Ljava/util/function/Consumer;)Z method_400 method_400 + p 1 context + p 2 lootChoiceExpander +c net/minecraft/class_72$class_6153 net/minecraft/loot/entry/SequenceEntry$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_31849 entries + m ()Lnet/minecraft/class_72$class_6153; method_35516 getThisBuilder + m ([Lnet/minecraft/class_79$class_80;)V + p 1 entries +c net/minecraft/class_8758 net/minecraft/client/gui/hud/debug/chart/PingChart +c net/minecraft/class_8755 net/minecraft/client/gui/hud/debug/chart/DebugChart + f Lnet/minecraft/class_327; field_45918 textRenderer + f Lnet/minecraft/class_9194; field_45919 log + m (Lnet/minecraft/class_327;Lnet/minecraft/class_9194;)V + p 1 textRenderer + p 2 log + m (Lnet/minecraft/class_332;III)V method_56581 drawOverlayBar + p 1 context + p 3 x + p 2 y + p 4 index + m (DDIDIDI)I method_53469 getColor + p 1 value + p 3 min + p 9 max + p 11 maxColor + p 5 minColor + p 6 median + p 8 medianColor + m (D)Ljava/lang/String; method_53468 format + p 1 value + m ()I method_61983 getHeight + m (J)I method_53471 getColor + p 1 value + m (Lnet/minecraft/class_332;III)V method_56580 drawTotalBar + p 2 y + p 1 context + p 4 index + p 3 x + m (I)I method_53470 getWidth + p 1 centerX + m (D)I method_53475 getHeight + p 1 value + m (I)J method_56579 get + p 1 index + m (Lnet/minecraft/class_332;Ljava/lang/String;II)V method_53474 drawBorderedText + p 1 context + p 2 string + p 3 x + p 4 y + m (Lnet/minecraft/class_332;II)V method_53472 render + p 3 width + p 1 context + p 2 x + m (Lnet/minecraft/class_332;III)V method_53473 renderThresholds + p 1 context + p 2 x + p 3 width + p 4 height + m (Lnet/minecraft/class_332;III)V method_56578 drawBar + p 1 context + p 2 y + p 3 x + p 4 index +c net/minecraft/class_8756 net/minecraft/client/gui/hud/debug/chart/PacketSizeChart + m (D)I method_53479 calculateHeight + p 0 value + m (D)Ljava/lang/String; method_53478 formatBytesPerSecond + p 0 value + m (D)D method_53480 toBytesPerSecond + p 0 bytesPerTick + m (Lnet/minecraft/class_332;IIII)V method_53476 drawSizeBar + p 2 x + p 3 width + p 4 height + p 5 bytes + p 1 context + m (Lnet/minecraft/class_332;IIILjava/lang/String;)V method_53477 drawSizeBar + p 4 y + p 5 label + p 1 context + p 2 x + p 3 width +c net/minecraft/class_7422 net/minecraft/entity/TrackedPosition + f D field_39015 COORDINATE_SCALE + f Lnet/minecraft/class_243; field_39016 pos + m (Lnet/minecraft/class_243;)J method_43490 getDeltaX + p 1 pos + m (JJJ)Lnet/minecraft/class_243; method_43489 withDelta + p 1 x + p 5 z + p 3 y + m (Lnet/minecraft/class_243;)J method_43491 getDeltaY + p 1 pos + m (Lnet/minecraft/class_243;)J method_43492 getDeltaZ + p 1 pos + m (D)J method_43487 pack + p 0 value + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_43493 subtract + p 1 pos + m ()Lnet/minecraft/class_243; method_60933 getPos + m (Lnet/minecraft/class_243;)V method_43494 setPos + p 1 pos + m (J)D method_43488 unpack + p 0 value +c net/minecraft/class_7419 net/minecraft/text/NbtDataSource + c A data source for the NBT text content. Unmodifiable. + m (Lnet/minecraft/class_2168;)Ljava/util/stream/Stream; method_10916 get + p 1 source + m ()Lcom/mojang/serialization/MapCodec; method_74066 getCodec +c net/minecraft/class_8762 net/minecraft/network/handler/PacketSizeLogger + f Ljava/util/concurrent/atomic/AtomicInteger; field_45953 packetSizeInBytes + f Lnet/minecraft/class_9191; field_45954 log + m (I)V method_53504 increment + p 1 bytes + m (Lnet/minecraft/class_9191;)V + p 1 log + m ()V method_53503 push +c net/minecraft/class_7431 net/minecraft/loot/function/SetInstrumentLootFunction + f Lnet/minecraft/class_6862; field_39184 options + f Lcom/mojang/serialization/MapCodec; field_45844 CODEC + m (Lnet/minecraft/class_6862;Ljava/util/List;)Lnet/minecraft/class_117; method_43743 method_43743 + p 1 conditions + m (Ljava/util/List;Lnet/minecraft/class_6862;)V + p 2 options + p 1 conditions + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53374 method_53374 + p 0 instance + m (Lnet/minecraft/class_7431;)Lnet/minecraft/class_6862; method_53373 method_53373 + p 0 function + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_120$class_121; method_43571 builder + p 0 options +c net/minecraft/class_8763 net/minecraft/network/listener/ClientPingResultPacketListener + m (Lnet/minecraft/class_2923;)V method_12666 onPingResult + c Handles a packet from the server that includes the "ping" (connection latency).\nThis is different from {@link net.minecraft.network.packet.c2s.common.CommonPongC2SPacket},\nwhich is sent by the client to acknowledgment a ping packet from the server. + p 1 packet +c net/minecraft/class_6101 net/minecraft/world/dimension/YLevels + f I field_31438 END_GENERATION_HEIGHT + f I field_31428 OVERWORLD_MIN_Y + f I field_31439 END_LOGICAL_HEIGHT + f I field_31436 END_MIN_Y + f I field_31437 END_HEIGHT + f I field_31434 NETHER_GENERATION_HEIGHT + f I field_31435 NETHER_LOGICAL_HEIGHT + f I field_31432 NETHER_MIN_Y + f I field_31433 NETHER_HEIGHT + f F field_59768 OVERWORLD_CLOUD_HEIGHT + f I field_52652 DEFAULT_SEA_LEVEL + f I field_31429 OVERWORLD_HEIGHT + f I field_59767 CLOUD_VERTICAL_SIZE + f I field_31430 OVERWORLD_GENERATION_HEIGHT + f I field_31431 OVERWORLD_LOGICAL_HEIGHT +c net/minecraft/class_8760 net/minecraft/client/network/ChunkBatchSizeCalculator + f I field_45942 sampleSize + f J field_45943 startTime + f D field_45941 averageNanosPerChunk + m ()V method_53483 onStartChunkSend + m ()F method_53485 getDesiredChunksPerTick + m (I)V method_53484 onChunkSent + p 1 batchSize +c net/minecraft/class_6100 net/minecraft/unused/packageinfo/PackageInfo6100 +c net/minecraft/class_8761 net/minecraft/client/network/PingMeasurer + f Lnet/minecraft/class_9191; field_45949 log + f Lnet/minecraft/class_634; field_45948 handler + m (Lnet/minecraft/class_2923;)V method_53487 onPingResult + p 1 packet + m ()V method_53486 ping + m (Lnet/minecraft/class_634;Lnet/minecraft/class_9191;)V + p 2 log + p 1 handler +c net/minecraft/class_7430 net/minecraft/item/GoatHornItem + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_6880;)Lnet/minecraft/class_1799; method_43558 getStackForInstrument + p 0 item + p 1 instrument + m (Lnet/minecraft/class_6880;)Ljava/lang/Integer; method_45432 method_45432 + p 0 instrument + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_7225$class_7874;)Ljava/util/Optional; method_43711 getInstrument + p 2 registries + p 1 stack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_7444;)V method_43563 playSound + p 2 instrument + p 1 player + p 0 world +c net/minecraft/class_85 net/minecraft/loot/entry/LeafEntry + f I field_994 quality + f I field_995 weight + f Lnet/minecraft/class_82; field_998 choice + f Ljava/util/List; field_996 functions + f Ljava/util/function/BiFunction; field_997 compiledFunctions + f I field_31847 DEFAULT_WEIGHT + f I field_31848 DEFAULT_QUALITY + m (Lnet/minecraft/class_85$class_89;)Lnet/minecraft/class_85$class_86; method_434 builder + p 0 factory + m (Ljava/util/function/Consumer;Lnet/minecraft/class_47;)V method_433 generateLoot + p 1 lootConsumer + p 2 context + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P4; method_53290 addLeafFields + p 0 instance + m (IILjava/util/List;Ljava/util/List;)V + p 1 weight + p 4 functions + p 3 conditions + p 2 quality + m (Lnet/minecraft/class_85;)Ljava/lang/Integer; method_53291 method_53291 + p 0 entry + m (Lnet/minecraft/class_85;)Ljava/lang/Integer; method_53292 method_53292 + p 0 entry + m (Lnet/minecraft/class_85;)Ljava/util/List; method_53289 method_53289 + p 0 entry +c net/minecraft/class_85$class_86 net/minecraft/loot/entry/LeafEntry$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_999 functions + f I field_1001 weight + f I field_1000 quality + m (Lnet/minecraft/class_117$class_118;)Lnet/minecraft/class_85$class_86; method_438 apply + m (I)Lnet/minecraft/class_85$class_86; method_437 weight + p 1 weight + m ()Ljava/util/List; method_439 getFunctions + m (I)Lnet/minecraft/class_85$class_86; method_436 quality + p 1 quality +c net/minecraft/class_85$class_87 net/minecraft/loot/entry/LeafEntry$BasicBuilder + f Lnet/minecraft/class_85$class_89; field_1003 factory + m ()Lnet/minecraft/class_85$class_87; method_440 getThisBuilder + m (Lnet/minecraft/class_85$class_89;)V + p 1 factory +c net/minecraft/class_85$class_88 net/minecraft/loot/entry/LeafEntry$Choice +c net/minecraft/class_85$class_89 net/minecraft/loot/entry/LeafEntry$Factory + m (IILjava/util/List;Ljava/util/List;)Lnet/minecraft/class_85; build build + p 4 functions + p 3 conditions + p 2 quality + p 1 weight +c net/minecraft/class_7439 net/minecraft/network/packet/s2c/play/GameMessageS2CPacket + f Lnet/minecraft/class_9139; field_48000 CODEC + f Lnet/minecraft/class_2561; comp_763 content + f Z comp_906 overlay + m (Lnet/minecraft/class_2602;)V method_43631 apply + m ()Lnet/minecraft/class_2561; comp_763 content + m ()Z comp_906 overlay + m (Lnet/minecraft/class_2561;Z)V + p 1 content + p 2 overlay +c net/minecraft/class_82 net/minecraft/loot/LootChoice + m (F)I method_427 getWeight + p 1 luck + m (Ljava/util/function/Consumer;Lnet/minecraft/class_47;)V method_426 generateLoot + p 2 context + p 1 lootConsumer +c net/minecraft/class_6106 net/minecraft/unused/packageinfo/PackageInfo6106 +c net/minecraft/class_6109 net/minecraft/unused/packageinfo/PackageInfo6109 +c net/minecraft/class_7437 net/minecraft/util/TextifiedException + c An exception that has a user-friendly {@link Text} attached. + f Lnet/minecraft/class_2561; field_39084 messageText + m (Lnet/minecraft/class_2561;Ljava/lang/Throwable;)V + p 1 messageText + p 2 cause + m ()Lnet/minecraft/class_2561; method_43626 getMessageText + c {@return the exception's message text} + m (Lnet/minecraft/class_2561;)V + p 1 messageText +c net/minecraft/class_8768 net/minecraft/client/gui/screen/report/ReportScreen + f Lnet/minecraft/class_437; field_46019 parent + f Lnet/minecraft/class_4185; field_52300 sendButton + f Lnet/minecraft/class_4286; field_52302 checkbox + f Lnet/minecraft/class_8667; field_52304 layout + f Lnet/minecraft/class_2561; field_46027 DESCRIBE_TEXT + f Lnet/minecraft/class_2561; field_46023 SENDING_TITLE_TEXT + f Lnet/minecraft/class_2561; field_46013 OBSERVED_WHAT_TEXT + f Lnet/minecraft/class_2561; field_46025 ERROR_TITLE_TEXT + f Lnet/minecraft/class_2561; field_46015 MORE_COMMENTS_TEXT + f Lorg/slf4j/Logger; field_46029 LOGGER + f Lnet/minecraft/class_2561; field_52301 ATTESTATION_TEXT + f Lnet/minecraft/class_7574; field_46020 context + f Lnet/minecraft/class_2561; field_46022 REPORT_SENT_MESSAGE_TEXT + f Lnet/minecraft/class_7855$class_8775; field_46021 reportBuilder + f Lnet/minecraft/class_2561; field_46028 COMMENTS_TEXT + f Lnet/minecraft/class_2561; field_46012 SEND_TEXT + f Lnet/minecraft/class_2561; field_46024 SENT_TITLE_TEXT + f Lnet/minecraft/class_2561; field_46014 SELECT_REASON_TEXT + f Lnet/minecraft/class_2561; field_46026 GENERIC_ERROR_TEXT + m (Lnet/minecraft/class_8768;Lnet/minecraft/class_364;)V method_61139 method_61139 + p 1 child + m (Lnet/minecraft/class_2561;)V method_53570 showError + p 1 errorMessage + m ()V method_61136 addAttestationCheckboxAndSendButton + m ()V method_53559 onSent + m (Lnet/minecraft/class_7855$class_7568;)V method_53566 method_53566 + p 1 reportWithId + m (Lnet/minecraft/class_4286;Z)V method_61138 method_61138 + p 2 attested + p 1 checkbox + m ()V method_53571 trySend + m ()V method_53561 resetDraft + m ()V method_61141 addTitle + m (Lnet/minecraft/class_4185;)V method_61140 method_61140 + p 1 button + m ()V method_61135 addContent + m (Ljava/lang/Object;Ljava/lang/Throwable;)Ljava/lang/Object; method_53567 method_53567 + p 2 throwable + p 1 v + m (Lnet/minecraft/class_4185;)V method_61137 method_61137 + p 1 button + m (Ljava/lang/Throwable;)V method_53568 onSendError + p 1 error + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_437;Lnet/minecraft/class_7574;Lnet/minecraft/class_7855$class_8775;)V + p 2 parent + p 3 context + p 1 title + p 4 reportBuilder + m (Lnet/minecraft/class_7855$class_7567;)V method_53565 method_53565 + p 1 validationError + m ()V method_53560 saveDraft + m (IILjava/util/function/Consumer;)Lnet/minecraft/class_7529; method_53564 createCommentsBox + p 1 width + p 3 changeListener + p 2 height + m ()V method_53586 onChange +c net/minecraft/class_8768$class_7539 net/minecraft/client/gui/screen/report/ReportScreen$DiscardWarningScreen + f Lnet/minecraft/class_2561; field_39725 RETURN_BUTTON_TEXT + f Lnet/minecraft/class_2561; field_40794 DRAFT_BUTTON_TEXT + f Lnet/minecraft/class_2561; field_39726 DISCARD_BUTTON_TEXT + f Lnet/minecraft/class_2561; field_39723 TITLE + f Lnet/minecraft/class_2561; field_39724 MESSAGE + m (Lnet/minecraft/class_4185;)V method_57756 method_57756 + p 1 button + m (Lnet/minecraft/class_4185;)V method_57757 method_57757 + p 1 button + m (Lnet/minecraft/class_4185;)V method_57758 method_57758 + p 1 button +c net/minecraft/class_6108 net/minecraft/world/gen/carver/CaveCarverConfig + f Lcom/mojang/serialization/Codec; field_31491 CAVE_CODEC + f Lnet/minecraft/class_5863; field_31494 floorLevel + f Lnet/minecraft/class_5863; field_31492 horizontalRadiusMultiplier + f Lnet/minecraft/class_5863; field_31493 verticalRadiusMultiplier + m (Lnet/minecraft/class_6108;)Lnet/minecraft/class_5863; method_35355 method_35355 + p 0 config + m (FLnet/minecraft/class_6122;Lnet/minecraft/class_5863;Lnet/minecraft/class_5843;Lnet/minecraft/class_5872;Lnet/minecraft/class_6885;Lnet/minecraft/class_5863;Lnet/minecraft/class_5863;Lnet/minecraft/class_5863;)V + p 1 probability + p 3 yScale + p 2 y + p 5 debugConfig + p 4 lavaLevel + p 7 horizontalRadiusMultiplier + p 6 replaceable + p 9 floorLevel + p 8 verticalRadiusMultiplier + m (FLnet/minecraft/class_6122;Lnet/minecraft/class_5863;Lnet/minecraft/class_5843;Lnet/minecraft/class_6885;Lnet/minecraft/class_5863;Lnet/minecraft/class_5863;Lnet/minecraft/class_5863;)V + p 8 floorLevel + p 2 y + p 3 yScale + p 1 probability + p 6 horizontalRadiusMultiplier + p 7 verticalRadiusMultiplier + p 4 lavaLevel + p 5 replaceable + m (Lnet/minecraft/class_5871;Lnet/minecraft/class_5863;Lnet/minecraft/class_5863;Lnet/minecraft/class_5863;)V + p 4 floorLevel + p 3 verticalRadiusMultiplier + p 2 horizontalRadiusMultiplier + p 1 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35352 method_35352 + p 0 instance + m (Lnet/minecraft/class_6108;)Lnet/minecraft/class_5863; method_35353 method_35353 + p 0 config + m (Lnet/minecraft/class_6108;)Lnet/minecraft/class_5871; method_35356 method_35356 + p 0 config + m (Lnet/minecraft/class_6108;)Lnet/minecraft/class_5863; method_35354 method_35354 + p 0 config +c net/minecraft/class_7438 net/minecraft/network/packet/s2c/play/ChatMessageS2CPacket + c A packet used to send a chat message to the clients.\n\n

The content is not wrapped in any way (e.g. by {@code chat.type.text} text); the\nraw message content is sent to the clients, and they will wrap it. To register\ncustom wrapping behaviors, check {@link MessageType#register}.\n\n

Chat messages have signatures. It is possible to use a bogus signature - such as\n{@link net.minecraft.network.message.SignedMessage#ofUnsigned} - to send a chat\nmessage; however if the signature is invalid (e.g. because the text's content differs\nfrom the one sent by the client, or because the passed signature is invalid) the client\nwill show a warning and can discard it depending on the options.\n\n

If the message takes more than {@link\nnet.minecraft.network.message.SignedMessage#CLIENTBOUND_TIME_TO_LIVE}\nto reach the clients (including the time it originally took to reach the server),\nthe message is not considered secure anymore by the clients, and may be discarded\ndepending on the clients' options.\n\n@see net.minecraft.server.network.ServerPlayerEntity#sendChatMessage\n@see net.minecraft.client.network.ClientPlayNetworkHandler#onChatMessage + f Lnet/minecraft/class_9139; field_47949 CODEC + f Lnet/minecraft/class_2556$class_7602; comp_943 serializedParameters + f Lnet/minecraft/class_7469; comp_1101 signature + f Lnet/minecraft/class_2561; comp_1103 unsignedContent + f Lnet/minecraft/class_7608$class_7824; comp_1102 body + f Ljava/util/UUID; comp_1099 sender + f I comp_3841 globalIndex + f Lnet/minecraft/class_7649; comp_1104 filterMask + f I comp_1100 index + m (Lnet/minecraft/class_9129;)V + p 1 buf + m ()Lnet/minecraft/class_2556$class_7602; comp_943 serializedParameters + m (Lnet/minecraft/class_9129;)V method_55898 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_43629 apply + m ()Lnet/minecraft/class_2561; comp_1103 unsignedContent + m ()Lnet/minecraft/class_7469; comp_1101 signature + m ()Lnet/minecraft/class_7649; comp_1104 filterMask + m ()Lnet/minecraft/class_7608$class_7824; comp_1102 body + m ()I comp_3841 globalIndex + m ()I comp_1100 index + m ()Ljava/util/UUID; comp_1099 sender + m (ILjava/util/UUID;ILnet/minecraft/class_7469;Lnet/minecraft/class_7608$class_7824;Lnet/minecraft/class_2561;Lnet/minecraft/class_7649;Lnet/minecraft/class_2556$class_7602;)V + p 1 globalIndex + p 2 sender + p 3 index + p 4 signature + p 5 body + p 6 unsignedContent + p 7 filterMask + p 8 serializedParameters +c net/minecraft/class_83 net/minecraft/loot/entry/LootTableEntry + f Lnet/minecraft/class_8942$class_11336; field_60422 INLINE_CONTEXT + f Lcom/mojang/datafixers/util/Either; field_49429 value + f Lcom/mojang/serialization/MapCodec; field_45803 CODEC + m (Lnet/minecraft/class_83;)Lcom/mojang/datafixers/util/Either; method_53293 method_53293 + p 0 entry + m (Lnet/minecraft/class_52;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/class_85; method_57632 method_57632 + p 2 quality + p 1 weight + p 4 functions + p 3 conditions + m (Lnet/minecraft/class_58;Lnet/minecraft/class_5321;Lnet/minecraft/class_6880$class_6883;)V method_57633 method_57633 + p 2 entry + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_85$class_86; method_428 builder + p 0 key + m (Lnet/minecraft/class_47;Lnet/minecraft/class_5321;)Lnet/minecraft/class_52; method_57630 method_57630 + p 1 key + m (Lnet/minecraft/class_52;)Lnet/minecraft/class_85$class_86; method_57631 builder + p 0 table + m (Lnet/minecraft/class_58;Lnet/minecraft/class_52;)V method_51222 method_51222 + p 1 table + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53294 method_53294 + p 0 instance + m (Lnet/minecraft/class_5321;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/class_85; method_430 method_430 + p 2 quality + p 1 weight + p 4 functions + p 3 conditions + m (Lnet/minecraft/class_52;)Lnet/minecraft/class_52; method_57634 method_57634 + p 0 table + m (Lcom/mojang/datafixers/util/Either;IILjava/util/List;Ljava/util/List;)V + p 5 functions + p 4 conditions + p 3 quality + p 2 weight + p 1 value + m (Lnet/minecraft/class_58;Lnet/minecraft/class_5321;)V method_51223 method_51223 + p 1 key +c net/minecraft/class_8769 net/minecraft/client/gui/screen/report/UsernameReportScreen + f Lnet/minecraft/class_2561; field_46037 TITLE_TEXT + f Lnet/minecraft/class_7529; field_46039 commentsBox + m (Lnet/minecraft/class_7847;)V method_61148 method_61148 + p 0 positioner + m (Ljava/lang/String;)V method_61149 method_61149 + p 1 comments + m (Lnet/minecraft/class_7847;)V method_61150 method_61150 + p 0 positioner + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7574;Lnet/minecraft/class_8773;)V + p 2 context + p 1 parent + p 3 report + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7574;Lnet/minecraft/class_8773$class_8774;)V + p 2 context + p 3 reportBuilder + p 1 parent + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7574;Ljava/util/UUID;Ljava/lang/String;)V + p 1 parent + p 3 reportedPlayerUuid + p 2 context + p 4 username +c net/minecraft/class_6103 net/minecraft/unused/packageinfo/PackageInfo6103 +c net/minecraft/class_6102 net/minecraft/unused/packageinfo/PackageInfo6102 +c net/minecraft/class_8767 net/minecraft/client/gui/widget/LayoutWidgets + f I field_46007 SPACING + m (Lnet/minecraft/class_327;Lnet/minecraft/class_8021;Lnet/minecraft/class_2561;)Lnet/minecraft/class_8133; method_53549 createLabeledWidget + p 2 label + p 1 widget + p 0 textRenderer + m (Lnet/minecraft/class_327;Lnet/minecraft/class_8021;Lnet/minecraft/class_2561;Ljava/util/function/Consumer;)Lnet/minecraft/class_8133; method_53550 createLabeledWidget + p 0 textRenderer + p 3 callback + p 1 widget + p 2 label + m (Lnet/minecraft/class_7847;)V method_53551 method_53551 + p 0 positioner +c net/minecraft/class_6105 net/minecraft/unused/packageinfo/PackageInfo6105 +c net/minecraft/class_6104 net/minecraft/unused/packageinfo/PackageInfo6104 +c net/minecraft/class_8765 net/minecraft/client/gui/widget/PlayerSkinWidget + f F field_46005 xRotation + f Ljava/util/function/Supplier; field_46004 skinSupplier + f F field_46006 yRotation + f Lnet/minecraft/class_591; field_59834 wideModel + f Lnet/minecraft/class_591; field_59835 slimModel + m (IILnet/minecraft/class_5599;Ljava/util/function/Supplier;)V + p 1 width + p 2 height + p 3 entityModels + p 4 skinSupplier +c net/minecraft/class_7434 net/minecraft/client/session/ProfileKeysImpl + c A class to fetch, load, and save the player's public and private keys. + f Ljava/util/concurrent/CompletableFuture; field_39959 keyFuture + f Lcom/mojang/authlib/minecraft/UserApiService; field_39958 userApiService + f Ljava/nio/file/Path; field_39076 jsonPath + f Ljava/time/Instant; field_40798 expiryCheckTime + f Ljava/nio/file/Path; field_39075 PROFILE_KEYS_PATH + f Ljava/time/Duration; field_40797 TIME_UNTIL_FIRST_EXPIRY_CHECK + f Lorg/slf4j/Logger; field_39074 LOGGER + m (Lnet/minecraft/class_7427;)V method_43600 saveKeyPairToFile + c Saves the {@code keyPair} to the cache file if {@link\nnet.minecraft.SharedConstants#isDevelopment} is {@code true};\notherwise, just deletes the cache file. + p 1 keyPair + m ()Ljava/util/Optional; method_43606 loadKeyPairFromFile + c {@return the profile keys from the local cache}\n\n

This can return expired keys.\n\n@implNote The cache file is stored at {@code .minecraft/profilekeys/.json}. + m (Lcom/google/gson/JsonElement;)V method_43601 method_43601 + p 1 json + m (Ljava/util/Optional;)Ljava/util/concurrent/CompletableFuture; method_43602 getKeyPair + c Gets the key pair from the file cache, or if it is unavailable or expired,\nthe Mojang server. + p 1 currentKey + m (Lcom/mojang/authlib/minecraft/UserApiService;Ljava/util/UUID;Ljava/nio/file/Path;)V + p 2 uuid + p 3 root + p 1 userApiService + m (Lcom/mojang/authlib/minecraft/UserApiService;)Lnet/minecraft/class_7427; method_43605 fetchKeyPair + c {@return the key pair fetched from Mojang's server}\n\n@throws NetworkEncryptionException when the fetched key is malformed\n@throws IOException when fetching fails + p 1 userApiService + m (Lcom/mojang/authlib/yggdrasil/response/KeyPairResponse;)Lnet/minecraft/class_7428$class_7443; method_44076 decodeKeyPairResponse + c {@return {@code keyPairResponse} decoded to {@link PlayerPublicKey.PublicKeyData}}\n\n@throws NetworkEncryptionException when the response is malformed + p 0 keyPairResponse +c net/minecraft/class_8177 net/minecraft/block/BlockSetType + f Ljava/util/Map; field_46533 VALUES + f Lnet/minecraft/class_8177; field_47100 COPPER + f Lcom/mojang/serialization/Codec; field_46534 CODEC + f Lnet/minecraft/class_8177; field_42826 ACACIA + f Lnet/minecraft/class_8177; field_42827 CHERRY + f Lnet/minecraft/class_8177; field_42824 SPRUCE + f Lnet/minecraft/class_8177; field_42825 BIRCH + f Lnet/minecraft/class_8177; field_42819 IRON + f Lnet/minecraft/class_8177; field_54792 PALE_OAK + f Lnet/minecraft/class_8177; field_42828 JUNGLE + f Lnet/minecraft/class_8177; field_42829 DARK_OAK + f Lnet/minecraft/class_8177; field_42830 CRIMSON + f Lnet/minecraft/class_8177; field_42822 POLISHED_BLACKSTONE + f Lnet/minecraft/class_8177; field_42833 BAMBOO + f Lnet/minecraft/class_8177; field_42823 OAK + f Lnet/minecraft/class_8177; field_42820 GOLD + f Lnet/minecraft/class_8177; field_42831 WARPED + f Lnet/minecraft/class_8177; field_42821 STONE + f Lnet/minecraft/class_8177; field_42832 MANGROVE + f Lnet/minecraft/class_3414; comp_1295 pressurePlateClickOff + f Lnet/minecraft/class_3414; comp_1296 pressurePlateClickOn + f Lnet/minecraft/class_3414; comp_1297 buttonClickOff + f Lnet/minecraft/class_3414; comp_1298 buttonClickOn + f Lnet/minecraft/class_3414; comp_1291 doorClose + f Lnet/minecraft/class_3414; comp_1292 doorOpen + f Lnet/minecraft/class_3414; comp_1293 trapdoorClose + f Lnet/minecraft/class_3414; comp_1294 trapdoorOpen + f Lnet/minecraft/class_2498; comp_1290 soundType + f Z comp_1972 canButtonBeActivatedByArrows + f Ljava/lang/String; comp_1289 name + f Lnet/minecraft/class_8177$class_2441; comp_1973 pressurePlateSensitivity + f Z comp_2112 canOpenByWindCharge + f Z comp_1471 canOpenByHand + m ()Ljava/util/stream/Stream; method_49232 stream + m (Ljava/lang/String;)V + p 1 name + m (Lnet/minecraft/class_8177;)Lnet/minecraft/class_8177; method_49233 register + p 0 blockSetType + m ()Z comp_2112 canOpenByWindCharge + m ()Lnet/minecraft/class_8177$class_2441; comp_1973 pressurePlateSensitivity + m ()Z comp_1972 canButtonBeActivatedByArrows + m ()Lnet/minecraft/class_3414; comp_1292 doorOpen + m ()Lnet/minecraft/class_3414; comp_1291 doorClose + m ()Lnet/minecraft/class_3414; comp_1294 trapdoorOpen + m ()Lnet/minecraft/class_3414; comp_1293 trapdoorClose + m ()Lnet/minecraft/class_3414; comp_1296 pressurePlateClickOn + m ()Lnet/minecraft/class_3414; comp_1295 pressurePlateClickOff + m ()Lnet/minecraft/class_3414; comp_1298 buttonClickOn + m ()Lnet/minecraft/class_3414; comp_1297 buttonClickOff + m ()Lnet/minecraft/class_2498; comp_1290 soundType + m ()Ljava/lang/String; comp_1289 name + m ()Z comp_1471 canOpenByHand + m (Ljava/lang/String;ZZZLnet/minecraft/class_8177$class_2441;Lnet/minecraft/class_2498;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;)V + p 1 name + p 2 canOpenByHand + p 3 canOpenByWindCharge + p 4 canButtonBeActivatedByArrows + p 5 pressurePlateSensitivity + p 6 soundType + p 7 doorClose + p 8 doorOpen + p 9 trapdoorClose + p 10 trapdoorOpen + p 11 pressurePlateClickOff + p 12 pressurePlateClickOn + p 13 buttonClickOff + p 14 buttonClickOn +c net/minecraft/class_8177$class_2441 net/minecraft/block/BlockSetType$ActivationRule + f Lnet/minecraft/class_8177$class_2441; field_11361 EVERYTHING + f Lnet/minecraft/class_8177$class_2441; field_11362 MOBS +c net/minecraft/class_8178 net/minecraft/world/gen/foliage/CherryFoliagePlacer + f Lcom/mojang/serialization/MapCodec; field_42841 CODEC + f F field_42846 hangingLeavesExtensionChance + f Lnet/minecraft/class_6017; field_42842 height + f F field_42843 wideBottomLayerHoleChance + f F field_42844 cornerHoleChance + f F field_42845 hangingLeavesChance + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;FFFF)V + p 7 hangingLeavesExtensionChance + p 5 cornerHoleChance + p 6 hangingLeavesChance + p 3 height + p 4 wideBottomLayerHoleChance + p 1 radius + p 2 offset + m (Lnet/minecraft/class_8178;)Ljava/lang/Float; method_49243 method_49243 + p 0 foliagePlacer + m (Lnet/minecraft/class_8178;)Ljava/lang/Float; method_49244 method_49244 + p 0 foliagePlacer + m (Lnet/minecraft/class_8178;)Ljava/lang/Float; method_49242 method_49242 + p 0 foliagePlacer + m (Lnet/minecraft/class_8178;)Ljava/lang/Float; method_49245 method_49245 + p 0 foliagePlacer + m (Lnet/minecraft/class_8178;)Lnet/minecraft/class_6017; method_49246 method_49246 + p 0 foliagePlacer +c net/minecraft/class_8173 net/minecraft/block/DecoratedPotPatterns + f Ljava/util/Map; field_42798 SHERD_TO_PATTERN + f Lnet/minecraft/class_5321; field_43272 SHELTER + f Lnet/minecraft/class_5321; field_43273 SNORT + f Lnet/minecraft/class_5321; field_43270 PLENTY + f Lnet/minecraft/class_5321; field_43271 SHEAF + f Lnet/minecraft/class_5321; field_43268 MINER + f Lnet/minecraft/class_5321; field_43269 MOURNER + f Lnet/minecraft/class_5321; field_43264 FRIEND + f Lnet/minecraft/class_5321; field_43265 HEART + f Lnet/minecraft/class_5321; field_43266 HEARTBREAK + f Lnet/minecraft/class_5321; field_43267 HOWL + f Lnet/minecraft/class_5321; field_43260 BREWER + f Lnet/minecraft/class_5321; field_43261 BURN + f Lnet/minecraft/class_5321; field_43262 DANGER + f Lnet/minecraft/class_5321; field_43263 EXPLORER + f Lnet/minecraft/class_5321; field_43259 BLADE + f Lnet/minecraft/class_5321; field_43290 ANGLER + f Lnet/minecraft/class_5321; field_51897 BLANK + f Lnet/minecraft/class_5321; field_49838 GUSTER + f Lnet/minecraft/class_5321; field_49839 SCRAPE + f Lnet/minecraft/class_5321; field_49837 FLOW + f Lnet/minecraft/class_5321; field_42797 SKULL + f Lnet/minecraft/class_5321; field_42796 ARMS_UP + f Lnet/minecraft/class_5321; field_42795 PRIZE + f Lnet/minecraft/class_5321; field_42794 ARCHER + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_9766; method_49207 registerAndGetDefault + p 0 registry + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_49208 of + p 0 path + m (Lnet/minecraft/class_1792;)Lnet/minecraft/class_5321; method_49206 fromSherd + p 0 sherd + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_5321;Ljava/lang/String;)Lnet/minecraft/class_9766; method_60512 register + p 2 id + p 1 key + p 0 registry +c net/minecraft/class_8174 net/minecraft/block/entity/BrushableBlockEntity + f I field_42809 brushesCount + f Lnet/minecraft/class_2350; field_42813 hitDirection + f Lorg/slf4j/Logger; field_42801 LOGGER + f Lnet/minecraft/class_1799; field_42812 item + f Lnet/minecraft/class_5321; field_42814 lootTable + f Ljava/lang/String; field_42802 LOOT_TABLE_NBT_KEY + f Ljava/lang/String; field_42803 LOOT_TABLE_SEED_NBT_KEY + f Ljava/lang/String; field_42804 HIT_DIRECTION_NBT_KEY + f Ljava/lang/String; field_42805 ITEM_NBT_KEY + f J field_42815 lootTableSeed + f J field_42810 nextDustTime + f J field_42811 nextBrushTime + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state + m (Lnet/minecraft/class_5321;J)V method_49216 setLootTable + p 2 seed + p 1 lootTable + m (Lnet/minecraft/class_11372;)Z method_49223 writeLootTableToData + p 1 view + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)V method_49218 finishBrushing + p 1 world + p 3 brush + p 2 brusher + m ()Lnet/minecraft/class_2350; method_49224 getHitDirection + m (JLnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_2350;Lnet/minecraft/class_1799;)Z method_49215 brush + p 6 brush + p 5 hitDirection + p 4 brusher + p 3 world + p 1 worldTime + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)V method_49217 generateItem + p 2 brusher + p 1 world + p 3 brush + m (Lnet/minecraft/class_3218;)V method_49219 scheduledTick + p 1 world + m ()I method_49226 getDustedLevel + m ()Lnet/minecraft/class_1799; method_49225 getItem + m ()Lnet/minecraft/class_2622; method_49221 toUpdatePacket + m (Lnet/minecraft/class_11368;)Z method_49222 readLootTableFromData + p 1 view + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)V method_49220 spawnItem + p 1 world + p 2 brusher + p 3 brush +c net/minecraft/class_5900 net/minecraft/network/packet/s2c/play/TeamS2CPacket + f Lnet/minecraft/class_9139; field_47987 CODEC + f Ljava/util/Optional; field_29154 team + f I field_33349 ADD_PLAYERS + c The {@link #packetType} that adds a few players to a team. Has value {@value}. + f I field_33347 REMOVE + c The {@link #packetType} that removes a team. Has value {@value}. + f I field_33351 FIRST_MAX_VISIBILITY_OR_COLLISION_RULE_LENGTH + c One of the name tag visibility rule or collision rule strings' max length.\nHas value {@value}. + f I field_29151 packetType + c Indicates the type of this packet. Is one of {@link #ADD}, {@link #REMOVE},\n{@link #UPDATE}, {@link #ADD_PLAYERS}, or {@link #REMOVE_PLAYERS}. + f I field_33348 UPDATE + c The {@link #packetType} that updates a team's information. Has value {@value}. + f I field_33346 ADD + c The {@link #packetType} that creates a new team with a few players. Has value\n{@value}. + f Ljava/lang/String; field_29152 teamName + f Ljava/util/Collection; field_29153 playerNames + f I field_33352 SECOND_MAX_VISIBILITY_OR_COLLISION_RULE_LENGTH + c One of the name tag visibility rule or collision rule strings' max length.\nHas value {@value}. + f I field_33350 REMOVE_PLAYERS + c The {@link #packetType} that removes a few players from a team. Has value {@value}. + m (Lnet/minecraft/class_268;Ljava/lang/String;Lnet/minecraft/class_5900$class_5901;)Lnet/minecraft/class_5900; method_34171 changePlayerTeam + p 2 operation + p 1 playerName + p 0 team + m ()Ljava/util/Optional; method_34179 getTeam + m (Lnet/minecraft/class_9129;)V method_55934 write + p 1 buf + m (I)Z method_34169 containsPlayers + p 0 packetType + m (Lnet/minecraft/class_268;Z)Lnet/minecraft/class_5900; method_34172 updateTeam + p 1 updatePlayers + p 0 team + m ()Lnet/minecraft/class_5900$class_5901; method_34174 getPlayerListOperation + m (I)Z method_34175 containsTeamInfo + p 0 packetType + m ()Ljava/util/Collection; method_34178 getPlayerNames + m ()Lnet/minecraft/class_5900$class_5901; method_34176 getTeamOperation + m (Lnet/minecraft/class_268;)Lnet/minecraft/class_5900; method_34170 updateRemovedTeam + p 0 team + m ()Ljava/lang/String; method_34177 getTeamName + m (Ljava/lang/String;ILjava/util/Optional;Ljava/util/Collection;)V + p 4 playerNames + p 1 teamName + p 2 packetType + p 3 team + m (Lnet/minecraft/class_2602;)V method_34173 apply + m (Lnet/minecraft/class_9129;)V + p 1 buf +c net/minecraft/class_5900$class_5901 net/minecraft/network/packet/s2c/play/TeamS2CPacket$Operation + f Lnet/minecraft/class_5900$class_5901; field_29156 REMOVE + f Lnet/minecraft/class_5900$class_5901; field_29155 ADD +c net/minecraft/class_5900$class_5902 net/minecraft/network/packet/s2c/play/TeamS2CPacket$SerializableTeam + f I field_29164 friendlyFlags + f Lnet/minecraft/class_2561; field_29160 suffix + f Lnet/minecraft/class_2561; field_29159 prefix + f Lnet/minecraft/class_2561; field_29158 displayName + f Lnet/minecraft/class_270$class_272; field_29161 nameTagVisibilityRule + f Lnet/minecraft/class_270$class_271; field_29162 collisionRule + f Lnet/minecraft/class_124; field_29163 color + m ()Lnet/minecraft/class_2561; method_34187 getPrefix + m (Lnet/minecraft/class_9129;)V method_34182 write + p 1 buf + m ()Lnet/minecraft/class_2561; method_34188 getSuffix + m ()Lnet/minecraft/class_270$class_272; method_34185 getNameTagVisibilityRule + m ()Lnet/minecraft/class_270$class_271; method_34186 getCollisionRule + m ()Lnet/minecraft/class_2561; method_34181 getDisplayName + m (Lnet/minecraft/class_9129;)V + p 1 buf + m ()Lnet/minecraft/class_124; method_34184 getColor + m ()I method_34183 getFriendlyFlagsBitwise + m (Lnet/minecraft/class_268;)V + p 1 team +c net/minecraft/class_8171 net/minecraft/block/TorchflowerBlock + f Lnet/minecraft/class_2758; field_42776 AGE + f Lcom/mojang/serialization/MapCodec; field_46477 CODEC + f [Lnet/minecraft/class_265; field_55804 SHAPES_BY_AGE + m (I)Lnet/minecraft/class_265; method_66469 method_66469 + p 0 age +c net/minecraft/class_8172 net/minecraft/block/entity/DecoratedPotBlockEntity + f Lnet/minecraft/class_8172$class_8837; field_46662 lastWobbleType + f Lnet/minecraft/class_5321; field_47156 lootTableId + f Lnet/minecraft/class_8526; field_44706 sherds + f Ljava/lang/String; field_46659 ITEM_NBT_KEY + f Lnet/minecraft/class_1799; field_46663 stack + f J field_47157 lootTableSeed + f Ljava/lang/String; field_42782 SHERDS_NBT_KEY + f J field_46661 lastWobbleTime + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m ()Lnet/minecraft/class_8526; method_51511 getSherds + m ()Lnet/minecraft/class_2622; method_49200 toUpdatePacket + m (Lnet/minecraft/class_8172$class_8837;)V method_54301 wobble + p 1 wobbleType + m ()Lnet/minecraft/class_2350; method_49204 getHorizontalFacing + m (Lnet/minecraft/class_8526;)Lnet/minecraft/class_1799; method_52577 getStackWith + p 0 sherds +c net/minecraft/class_8172$class_8837 net/minecraft/block/entity/DecoratedPotBlockEntity$WobbleType + f I field_46666 lengthInTicks + f Lnet/minecraft/class_8172$class_8837; field_46664 POSITIVE + f Lnet/minecraft/class_8172$class_8837; field_46665 NEGATIVE + m (Ljava/lang/String;II)V + p 3 lengthInTicks +c net/minecraft/class_8170 net/minecraft/block/BrushableBlock + f Lcom/mojang/serialization/MapCodec; field_46290 CODEC + f Lnet/minecraft/class_2248; field_43232 baseBlock + f Lnet/minecraft/class_2758; field_42774 DUSTED + f Lnet/minecraft/class_3414; field_43233 brushingSound + f Lnet/minecraft/class_3414; field_43234 brushingCompleteSound + m ()Lnet/minecraft/class_2248; method_49810 getBaseBlock + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53982 method_53982 + p 0 instance + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_4970$class_2251;)V + p 3 brushingCompleteSound + p 2 brushingSound + p 4 settings + p 1 baseBlock + m ()Lnet/minecraft/class_3414; method_49812 getBrushingCompleteSound + m ()Lnet/minecraft/class_3414; method_49811 getBrushingSound +c net/minecraft/class_8188 net/minecraft/client/render/block/entity/DecoratedPotBlockEntityRenderer + f Lnet/minecraft/class_630; field_42925 top + f Lnet/minecraft/class_630; field_42923 left + f Lnet/minecraft/class_630; field_42921 front + f Ljava/lang/String; field_42917 RIGHT + f Ljava/lang/String; field_42915 BACK + f Ljava/lang/String; field_42913 NECK + f Lnet/minecraft/class_11701; field_61787 materials + f Lnet/minecraft/class_630; field_42926 bottom + f Lnet/minecraft/class_630; field_42924 right + f Lnet/minecraft/class_630; field_42922 back + f Ljava/lang/String; field_42919 BOTTOM + f Lnet/minecraft/class_630; field_42920 neck + f Ljava/lang/String; field_42918 TOP + f Ljava/lang/String; field_42916 LEFT + f Ljava/lang/String; field_42914 FRONT + m (Ljava/util/Optional;)Lnet/minecraft/class_4730; method_49343 getTextureIdFromSherd + p 0 sherd + m (Lnet/minecraft/class_8172;Lnet/minecraft/class_11963;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74373 updateRenderState + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IILnet/minecraft/class_8526;I)V method_65561 render + p 2 queue + p 1 matrices + p 5 sherds + p 4 overlay + p 3 light + m ()Lnet/minecraft/class_5607; method_49346 getTopBottomNeckTexturedModelData + m (Lnet/minecraft/class_11963;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_49344 render + m (Lnet/minecraft/class_10515$class_11695;)V + p 1 context + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 context + m (Ljava/util/function/Consumer;)V method_72161 collectVertices + m ()Lnet/minecraft/class_11963; method_74374 createRenderState + m ()Lnet/minecraft/class_5607; method_49347 getSidesTexturedModelData + m (Lnet/minecraft/class_5599;Lnet/minecraft/class_11701;)V + p 1 entityModelSet + p 2 materials +c net/minecraft/class_8189 net/minecraft/client/render/block/entity/BrushableBlockEntityRenderer + f Lnet/minecraft/class_10442; field_62251 itemModelManager + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 context + m (Lnet/minecraft/class_8174;Lnet/minecraft/class_11957;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74362 updateRenderState + m ()Lnet/minecraft/class_11957; method_74361 createRenderState + m (Lnet/minecraft/class_11957;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_49348 render + m (Lnet/minecraft/class_2350;I)[F method_49349 getTranslation + p 2 dustedLevel + p 1 direction +c net/minecraft/class_8186 net/minecraft/client/session/BanReason + f Lnet/minecraft/class_2561; field_42904 description + f Lnet/minecraft/class_8186; field_42895 HARASSMENT_OR_BULLYING + f Lnet/minecraft/class_8186; field_42893 HATE_SPEECH + f Lnet/minecraft/class_8186; field_42894 HATE_TERRORISM_NOTORIOUS_FIGURE + f Lnet/minecraft/class_8186; field_42897 DRUGS + f Lnet/minecraft/class_8186; field_42896 DEFAMATION_IMPERSONATION_FALSE_INFORMATION + f Lnet/minecraft/class_8186; field_42892 FALSE_REPORTING + f Lnet/minecraft/class_8186; field_42891 GENERIC_VIOLATION + f Lnet/minecraft/class_8186; field_42899 SPAM_OR_ADVERTISING + f Lnet/minecraft/class_8186; field_42898 FRAUD + f Lnet/minecraft/class_8186; field_42900 NUDITY_OR_PORNOGRAPHY + f Lnet/minecraft/class_8186; field_42902 EXTREME_VIOLENCE_OR_GORE + f Lnet/minecraft/class_8186; field_42901 SEXUALLY_INAPPROPRIATE + f Lnet/minecraft/class_8186; field_42903 IMMINENT_HARM_TO_PERSON_OR_PROPERTY + m (I)Lnet/minecraft/class_8186; method_49313 byId + p 0 id + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()Lnet/minecraft/class_2561; method_49312 getDescription +c net/minecraft/class_8185 net/minecraft/client/render/entity/model/SnifferEntityModel + f Lnet/minecraft/class_11509; field_60911 babyGrowthAnimation + f Lnet/minecraft/class_11509; field_60910 scentingAnimation + f Lnet/minecraft/class_630; field_43085 head + f Lnet/minecraft/class_9953; field_52938 BABY_TRANSFORMER + f Lnet/minecraft/class_11509; field_60909 feelingHappyAnimation + f Lnet/minecraft/class_11509; field_60908 risingAnimation + f Lnet/minecraft/class_11509; field_60907 sniffingAnimation + f Lnet/minecraft/class_11509; field_60906 diggingAnimation + f Lnet/minecraft/class_11509; field_60905 walkingAnimation + f F field_43364 LIMB_ANGLE_SCALE + f Lnet/minecraft/class_11509; field_60904 searchingAnimation + f F field_43407 LIMB_DISTANCE_SCALE + m (Lnet/minecraft/class_10068;)V method_49302 setAngles + m ()Lnet/minecraft/class_5607; method_49303 getTexturedModelData +c net/minecraft/class_5905 net/minecraft/network/packet/s2c/play/TitleFadeS2CPacket + f I field_29169 fadeOutTicks + f I field_29168 stayTicks + f I field_29167 fadeInTicks + f Lnet/minecraft/class_9139; field_47993 CODEC + m (III)V + p 2 stayTicks + p 1 fadeInTicks + p 3 fadeOutTicks + m (Lnet/minecraft/class_2540;)V method_55940 write + p 1 buf + m ()I method_34196 getFadeOutTicks + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()I method_34195 getStayTicks + m ()I method_34194 getFadeInTicks + m (Lnet/minecraft/class_2602;)V method_34193 apply +c net/minecraft/class_5904 net/minecraft/network/packet/s2c/play/TitleS2CPacket + f Lnet/minecraft/class_9139; field_47992 CODEC + f Lnet/minecraft/class_2561; comp_2281 text + m (Lnet/minecraft/class_2602;)V method_34191 apply + m ()Lnet/minecraft/class_2561; comp_2281 text + m (Lnet/minecraft/class_2561;)V + p 1 text +c net/minecraft/class_5903 net/minecraft/network/packet/s2c/play/SubtitleS2CPacket + f Lnet/minecraft/class_9139; field_47990 CODEC + f Lnet/minecraft/class_2561; comp_2280 text + m (Lnet/minecraft/class_2602;)V method_34189 apply + m ()Lnet/minecraft/class_2561; comp_2280 text + m (Lnet/minecraft/class_2561;)V + p 1 text +c net/minecraft/class_8182 net/minecraft/client/render/entity/animation/SnifferAnimations + f Lnet/minecraft/class_7184; field_43406 BABY_GROWTH + f Lnet/minecraft/class_7184; field_42873 FEELING_HAPPY + f Lnet/minecraft/class_7184; field_42871 RISING + f Lnet/minecraft/class_7184; field_42870 DIGGING + f Lnet/minecraft/class_7184; field_42869 SEARCHING + f Lnet/minecraft/class_7184; field_42868 WALKING + f Lnet/minecraft/class_7184; field_42867 SNIFFING + f Lnet/minecraft/class_7184; field_42866 SCENTING +c net/minecraft/class_8180 net/minecraft/world/gen/trunk/CherryTrunkPlacer + f Lcom/mojang/serialization/MapCodec; field_42848 CODEC + f Lnet/minecraft/class_6019; field_42852 branchStartOffsetFromTop + f Lnet/minecraft/class_6017; field_42854 branchEndOffsetFromTop + f Lnet/minecraft/class_6019; field_42853 secondBranchStartOffsetFromTop + f Lnet/minecraft/class_6017; field_42850 branchCount + f Lnet/minecraft/class_6017; field_42851 branchHorizontalLength + f Lcom/mojang/serialization/Codec; field_42849 BRANCH_START_OFFSET_FROM_TOP_CODEC + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_49251 method_49251 + p 1 state + m (IIILnet/minecraft/class_6017;Lnet/minecraft/class_6017;Lnet/minecraft/class_6019;Lnet/minecraft/class_6017;)V + p 2 firstRandomHeight + p 1 baseHeight + p 4 branchCount + p 3 secondRandomHeight + p 6 branchStartOffsetFromTop + p 5 branchHorizontalLength + p 7 branchEndOffsetFromTop + m (Lnet/minecraft/class_3746;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5819;ILnet/minecraft/class_2338;Lnet/minecraft/class_4643;Ljava/util/function/Function;Lnet/minecraft/class_2350;IZLnet/minecraft/class_2338$class_2339;)Lnet/minecraft/class_4647$class_5208; method_49249 generateBranch + p 1 world + p 3 random + p 2 replacer + p 9 branchStartOffset + p 8 direction + p 11 mutablePos + p 10 branchBelowHeight + p 5 startPos + p 4 height + p 7 withAxisFunction + p 6 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49252 method_49252 + p 0 instance + m (Lnet/minecraft/class_8180;)Lnet/minecraft/class_6019; method_49253 method_49253 + p 0 trunkPlacer + m (Lnet/minecraft/class_8180;)Lnet/minecraft/class_6017; method_49255 method_49255 + p 0 trunkPlacer + m (Lnet/minecraft/class_8180;)Lnet/minecraft/class_6017; method_49254 method_49254 + p 0 trunkPlacer + m (Lnet/minecraft/class_8180;)Lnet/minecraft/class_6017; method_49250 method_49250 + p 0 trunkPlacer + m (Lnet/minecraft/class_6019;)Lcom/mojang/serialization/DataResult; method_49248 method_49248 + p 0 branchStartOffsetFromTop +c net/minecraft/class_8181 net/minecraft/inventory/SingleStackInventory + c An inventory that holds exactly one {@link ItemStack}, at slot {@code 0}. + m (I)Lnet/minecraft/class_1799; method_54078 decreaseStack + p 1 count + m (Lnet/minecraft/class_1799;)V method_54077 setStack + p 1 stack + m ()Lnet/minecraft/class_1799; method_54079 getStack + m ()Lnet/minecraft/class_1799; method_54099 emptyStack +c net/minecraft/class_8181$class_9210 net/minecraft/inventory/SingleStackInventory$SingleStackBlockEntityInventory + m ()Lnet/minecraft/class_2586; method_54080 asBlockEntity +c net/minecraft/class_8155 net/minecraft/entity/passive/SnifferBrain + f Lorg/slf4j/Logger; field_42675 LOGGER + f I field_42677 SNIFF_COOLDOWN_EXPIRY + f Ljava/util/List; field_42674 MEMORY_MODULES + f Ljava/util/List; field_42673 SENSORS + f F field_42679 FLEE_SPEED + m (Lnet/minecraft/class_1309;)Ljava/lang/Float; method_51160 method_51160 + p 0 sniffer + m (Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_49152 create + p 0 brain + m (Lnet/minecraft/class_1309;)Ljava/lang/Double; method_52174 method_52174 + p 0 sniffer + m (Lnet/minecraft/class_4095;)V method_49157 addIdleActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_49156 addDigActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_49155 addSniffActivities + p 0 brain + m (Lnet/minecraft/class_8153;)V method_49153 updateActivities + p 0 sniffer + m (Lnet/minecraft/class_4095;)V method_49154 addCoreActivities + p 0 brain + m (Lnet/minecraft/class_8153;)Lnet/minecraft/class_8153; method_51161 stopDiggingOrSniffing + p 0 sniffer +c net/minecraft/class_8155$class_8161 net/minecraft/entity/passive/SnifferBrain$SniffingTask + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)V method_49179 run + m (Lnet/minecraft/class_8153;Lnet/minecraft/class_2338;)V method_49178 method_49178 + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)V method_49180 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)Z method_49177 shouldKeepRunning + m (II)V + p 2 maxRunTime + p 1 minRunTime + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;)Z method_49176 shouldRun +c net/minecraft/class_8155$class_8160 net/minecraft/entity/passive/SnifferBrain$SearchingTask + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)Z method_49173 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;)Z method_49172 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)V method_49174 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)V method_49175 finishRunning +c net/minecraft/class_8155$1 net/minecraft/entity/passive/SnifferBrain$1 + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)V method_57004 run +c net/minecraft/class_8155$class_8159 net/minecraft/entity/passive/SnifferBrain$ScentingTask + m (II)V + p 2 maxRunTime + p 1 minRunTime + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)Z method_49169 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;)Z method_51162 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)V method_49170 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)V method_49171 finishRunning +c net/minecraft/class_8155$2 net/minecraft/entity/passive/SnifferBrain$2 + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;J)V method_24544 run +c net/minecraft/class_8155$3 net/minecraft/entity/passive/SnifferBrain$3 + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_33197 run +c net/minecraft/class_8155$class_8156 net/minecraft/entity/passive/SnifferBrain$DiggingTask + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)V method_49160 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)V method_49161 finishRunning + m (II)V + p 2 maxRunTime + p 1 minRunTime + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;)Z method_49158 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)Z method_49159 shouldKeepRunning +c net/minecraft/class_8155$class_8158 net/minecraft/entity/passive/SnifferBrain$FinishDiggingTask + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)Z method_49166 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;)Z method_49165 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)V method_49167 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)V method_49168 finishRunning + m (I)V + p 1 runTime +c net/minecraft/class_8155$class_8157 net/minecraft/entity/passive/SnifferBrain$FeelHappyTask + m (II)V + p 2 maxRunTime + p 1 minRunTime + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)V method_49163 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)V method_49164 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8153;J)Z method_49162 shouldKeepRunning +c net/minecraft/class_9486 net/minecraft/data/loottable/vanilla/VanillaEquipmentLootTableGenerator + f Lnet/minecraft/class_7225$class_7874; comp_2788 registries + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;Lnet/minecraft/class_8053;Lnet/minecraft/class_7225$class_7226;)Lnet/minecraft/class_52$class_53; method_60419 createEquipmentTableBuilder + p 0 helmet + p 1 chestplate + p 2 trim + p 3 enchantmentRegistryWrapper + m ()Lnet/minecraft/class_7225$class_7874; comp_2788 registries + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries +c net/minecraft/class_8153 net/minecraft/entity/passive/SnifferEntity + f Lnet/minecraft/class_2940; field_42662 STATE + f Lnet/minecraft/class_7094; field_42655 risingAnimationState + f Lnet/minecraft/class_4048; field_44786 DIMENSIONS + f Lnet/minecraft/class_7094; field_42652 sniffingAnimationState + f Lnet/minecraft/class_7094; field_42650 feelingHappyAnimationState + f Lnet/minecraft/class_2940; field_42663 FINISH_DIG_TIME + f Lnet/minecraft/class_7094; field_42654 diggingAnimationState + f Lnet/minecraft/class_7094; field_42651 scentingAnimationState + m ()Z method_51158 isTempted + m ()Lnet/minecraft/class_243; method_49137 getDigLocation + m ()Lnet/minecraft/class_8153; method_51156 playScentingSound + m ()Z method_49150 isDiggingOrSearching + m ()Ljava/util/stream/Stream; method_49143 getExploredPositions + m ()Z method_49135 canDig + m (Lnet/minecraft/class_2338;)Z method_51157 method_51157 + p 1 pos + m ()Lnet/minecraft/class_2338; method_51508 getDigPos + m ()Ljava/util/Optional; method_49134 findSniffingTargetPos + m (Lnet/minecraft/class_8153$class_8154;)Lnet/minecraft/class_8153; method_49133 setState + p 1 state + m ()Lnet/minecraft/class_8153$class_8154; method_49138 getState + m (Lnet/minecraft/class_2338;)Z method_49140 isDiggable + p 1 pos + m ()V method_49139 stopAnimations + m ()Z method_51301 isSearching + m ()Lnet/minecraft/class_5132$class_5133; method_49146 createSnifferAttributes + m ()Z method_51155 canTryToDig + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_8153; method_49145 addExploredPosition + p 1 pos + m ()V method_49142 dropSeeds + m ()V method_49144 playSearchingSound + m (Lnet/minecraft/class_8153$class_8154;)Lnet/minecraft/class_8153; method_49132 startState + p 1 state + m ()Lnet/minecraft/class_8153; method_49141 setDigging + m (Z)Lnet/minecraft/class_8153; method_49149 finishDigging + p 1 explored + m (Lnet/minecraft/class_7094;)Lnet/minecraft/class_8153; method_49131 spawnDiggingParticles + p 1 diggingAnimationState +c net/minecraft/class_8153$class_8154 net/minecraft/entity/passive/SnifferEntity$State + f Lnet/minecraft/class_9139; field_48341 PACKET_CODEC + f Ljava/util/function/IntFunction; field_48340 INDEX_TO_VALUE + f I field_48342 index + f Lnet/minecraft/class_8153$class_8154; field_42665 IDLING + f Lnet/minecraft/class_8153$class_8154; field_42669 SEARCHING + f Lnet/minecraft/class_8153$class_8154; field_42668 SNIFFING + f Lnet/minecraft/class_8153$class_8154; field_42667 SCENTING + f Lnet/minecraft/class_8153$class_8154; field_42666 FEELING_HAPPY + f Lnet/minecraft/class_8153$class_8154; field_42671 RISING + f Lnet/minecraft/class_8153$class_8154; field_42670 DIGGING + m (Ljava/lang/String;II)V + p 3 index + m ()I method_56085 getIndex +c net/minecraft/class_9483 net/minecraft/client/render/entity/OminousItemSpawnerEntityRenderer + f Lnet/minecraft/class_5819; field_55300 random + f Lnet/minecraft/class_10442; field_55299 itemModelManager + m (Lnet/minecraft/class_9461;Lnet/minecraft/class_10428;F)V method_62497 updateRenderState + m (Lnet/minecraft/class_10428;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_58753 render + m ()Lnet/minecraft/class_10428; method_62496 createRenderState +c net/minecraft/class_8152 net/minecraft/entity/Targeter + m ()Lnet/minecraft/class_1309; method_5968 getTarget +c net/minecraft/class_12310 net/minecraft/world/attribute/EnvironmentAttributeFunction +c net/minecraft/class_12310$class_12311 net/minecraft/world/attribute/EnvironmentAttributeFunction$Constant + m (Ljava/lang/Object;)Ljava/lang/Object; applyConstant applyConstant + p 1 value +c net/minecraft/class_12310$class_12312 net/minecraft/world/attribute/EnvironmentAttributeFunction$Positional + m (Ljava/lang/Object;Lnet/minecraft/class_243;Lnet/minecraft/class_12211;)Ljava/lang/Object; applyPositional applyPositional + p 1 value + p 2 pos + p 3 weightedAttributeList +c net/minecraft/class_12310$class_12313 net/minecraft/world/attribute/EnvironmentAttributeFunction$TimeBased + m (Ljava/lang/Object;I)Ljava/lang/Object; applyTimeBased applyTimeBased + p 2 time + p 1 value +c net/minecraft/class_8150 net/minecraft/entity/decoration/InteractionEntity + f Lnet/minecraft/class_8150$class_8151; field_42634 interaction + f Lnet/minecraft/class_8150$class_8151; field_42633 attack + f Ljava/lang/String; field_42628 WIDTH_KEY + f Ljava/lang/String; field_42629 HEIGHT_KEY + f F field_57589 DEFAULT_HEIGHT + f Ljava/lang/String; field_42631 INTERACTION_KEY + f F field_57588 DEFAULT_WIDTH + f Ljava/lang/String; field_42632 RESPONSE_KEY + f Lnet/minecraft/class_2940; field_42627 RESPONSE + f Z field_57590 DEFAULT_RESPONSE + f Lnet/minecraft/class_2940; field_42626 HEIGHT + f Lnet/minecraft/class_2940; field_42625 WIDTH + f Ljava/lang/String; field_42630 ATTACK_KEY + m (F)V method_49109 setInteractionWidth + p 1 width + m ()Lnet/minecraft/class_4048; method_49119 getDimensions + m ()F method_49116 getInteractionWidth + m ()F method_49117 getInteractionHeight + m (Z)V method_49112 setResponse + p 1 response + m ()Z method_49118 shouldRespond + m (F)V method_49113 setInteractionHeight + p 1 height +c net/minecraft/class_8150$class_8151 net/minecraft/entity/decoration/InteractionEntity$Interaction + f Lcom/mojang/serialization/Codec; field_42635 CODEC + f J comp_1285 timestamp + f Ljava/util/UUID; comp_1284 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49120 method_49120 + p 0 instance + m ()Ljava/util/UUID; comp_1284 player + m ()J comp_1285 timestamp + m (Ljava/util/UUID;J)V + p 1 player + p 2 timestamp +c net/minecraft/class_12319 net/minecraft/entity/mob/ZombieNautilusVariant + f Lnet/minecraft/class_9139; field_64364 ENTRY_PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_64363 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_64362 NETWORK_CODEC + f Lnet/minecraft/class_10693; comp_5215 modelAndTexture + f Lnet/minecraft/class_10702; comp_5216 spawnConditions + f Lcom/mojang/serialization/Codec; field_64361 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76446 method_76446 + p 0 instance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76445 method_76445 + p 0 instance + m (Lnet/minecraft/class_10693;)V + p 1 modelAndTexture + m ()Lnet/minecraft/class_10693; comp_5215 modelAndTexture + m ()Lnet/minecraft/class_10702; comp_5216 spawnConditions + m (Lnet/minecraft/class_10693;Lnet/minecraft/class_10702;)V + p 1 modelAndTexture + p 2 spawnConditions +c net/minecraft/class_12319$class_12320 net/minecraft/entity/mob/ZombieNautilusVariant$Model + f Ljava/lang/String; field_64368 id + f Lcom/mojang/serialization/Codec; field_64367 CODEC + f Lnet/minecraft/class_12319$class_12320; field_64366 WARM + f Lnet/minecraft/class_12319$class_12320; field_64365 NORMAL + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_12316 net/minecraft/world/attribute/WeatherAttributes + f Ljava/util/Set; field_64351 ATTRIBUTES + f Lnet/minecraft/class_12199; field_64350 THUNDER_EFFECTS + f Lnet/minecraft/class_12199; field_64349 RAIN_EFFECTS + m (Lnet/minecraft/class_12205$class_12314;Lnet/minecraft/class_12316$class_12317;)V method_76430 addWeatherAttributes + p 0 builder + p 1 weather + m (Lnet/minecraft/class_12205$class_12314;Lnet/minecraft/class_12316$class_12317;Lnet/minecraft/class_12197;)V method_76431 addWeatherAttribute + p 0 builder + p 1 weather + p 2 attribute + m (Lnet/minecraft/class_12316$class_12317;Lnet/minecraft/class_12199$class_12201;Lnet/minecraft/class_12197;Lnet/minecraft/class_12199$class_12201;Ljava/lang/Object;I)Ljava/lang/Object; method_76432 method_76432 + p 5 time + p 4 value +c net/minecraft/class_12316$class_12317 net/minecraft/world/attribute/WeatherAttributes$WeatherAccess + m ()F method_76433 getRainGradient + m ()F method_76435 getThunderGradient + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_12316$class_12317; method_76434 ofWorld + p 0 world +c net/minecraft/class_8168 net/minecraft/block/DecoratedPotBlock + f Lcom/mojang/serialization/MapCodec; field_46333 CODEC + f Lnet/minecraft/class_2754; field_42755 FACING + f Lnet/minecraft/class_265; field_42754 SHAPE + f Lnet/minecraft/class_2960; field_43236 SHERDS_DYNAMIC_DROP_ID + f Lnet/minecraft/class_2746; field_42756 WATERLOGGED + f Lnet/minecraft/class_2746; field_43237 CRACKED + m (Lnet/minecraft/class_8172;Ljava/util/function/Consumer;)V method_49815 method_49815 + p 1 lootConsumer +c net/minecraft/class_8164 net/minecraft/recipe/CraftingDecoratedPotRecipe + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_49186 matches + m (Lnet/minecraft/class_9694;)Lnet/minecraft/class_1799; method_64976 getBack + p 0 input + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_49187 craft + m (Lnet/minecraft/class_9694;)Lnet/minecraft/class_1799; method_64977 getLeft + p 0 input + m (Lnet/minecraft/class_9694;)Lnet/minecraft/class_1799; method_64978 getRight + p 0 input + m (Lnet/minecraft/class_9694;)Lnet/minecraft/class_1799; method_64979 getFront + p 0 input +c net/minecraft/class_8162 net/minecraft/item/BrushItem + f I field_42683 MAX_BRUSH_TIME + f I field_43390 ANIMATION_DURATION + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_3965;Lnet/minecraft/class_2680;Lnet/minecraft/class_243;Lnet/minecraft/class_1306;)V method_49184 addDustParticles + p 4 userRotation + p 5 arm + p 2 hitResult + p 3 state + p 1 world + m (Lnet/minecraft/class_1657;)Lnet/minecraft/class_239; method_49999 getHitResult + p 1 user +c net/minecraft/class_8162$class_8163 net/minecraft/item/BrushItem$DustParticlesOffset + f D comp_1286 xd + f D comp_1288 zd + f D comp_1287 yd + m (Lnet/minecraft/class_243;Lnet/minecraft/class_2350;)Lnet/minecraft/class_8162$class_8163; method_49185 fromSide + p 1 side + p 0 userRotation + m ()D comp_1288 zd + m ()D comp_1287 yd + m ()D comp_1286 xd + m (DDD)V + p 1 xd + p 3 yd + p 5 zd +c net/minecraft/class_12300 net/minecraft/registry/tag/TimelineTags + f Lnet/minecraft/class_6862; field_64266 IN_END + f Lnet/minecraft/class_6862; field_64265 IN_NETHER + f Lnet/minecraft/class_6862; field_64264 IN_OVERWORLD + f Lnet/minecraft/class_6862; field_64263 UNIVERSAL + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_76334 of + p 0 name +c net/minecraft/class_12301 net/minecraft/world/attribute/timeline/EasingType + f Lnet/minecraft/class_5699$class_10388; field_64275 EASING_TYPES_BY_NAME + f Lcom/mojang/serialization/Codec; field_64276 CODEC + f Lnet/minecraft/class_12301; field_64300 OUT_BOUNCE + f Lnet/minecraft/class_12301; field_64270 OUT_EXPO + f Lnet/minecraft/class_12301; field_64269 OUT_ELASTIC + f Lnet/minecraft/class_12301; field_64268 OUT_CUBIC + f Lnet/minecraft/class_12301; field_64267 OUT_CIRC + f Lnet/minecraft/class_12301; field_64282 IN_CUBIC + f Lnet/minecraft/class_12301; field_64280 IN_BOUNCE + f Lnet/minecraft/class_12301; field_64281 IN_CIRC + f Lnet/minecraft/class_12301; field_64274 OUT_SINE + f Lnet/minecraft/class_12301; field_64273 OUT_QUINT + f Lnet/minecraft/class_12301; field_64272 OUT_QUART + f Lnet/minecraft/class_12301; field_64271 OUT_QUAD + f Lnet/minecraft/class_12301; field_64278 LINEAR + f Lnet/minecraft/class_12301; field_64277 CONSTANT + f Lnet/minecraft/class_12301; field_64279 IN_BACK + f Lnet/minecraft/class_12301; field_64294 IN_OUT_EXPO + f Lnet/minecraft/class_12301; field_64293 IN_OUT_ELASTIC + f Lnet/minecraft/class_12301; field_64291 IN_OUT_CIRC + f Lnet/minecraft/class_12301; field_64292 IN_OUT_CUBIC + f Lnet/minecraft/class_12301; field_64290 IN_OUT_BOUNCE + f Lnet/minecraft/class_12301; field_64286 IN_QUART + f Lnet/minecraft/class_12301; field_64285 IN_QUAD + f Lnet/minecraft/class_12301; field_64284 IN_EXPO + f Lnet/minecraft/class_12301; field_64283 IN_ELASTIC + f Lnet/minecraft/class_12301; field_64289 IN_OUT_BACK + f Lnet/minecraft/class_12301; field_64288 IN_SINE + f Lnet/minecraft/class_12301; field_64287 IN_QUINT + f Lnet/minecraft/class_12301; field_64298 IN_OUT_SINE + f Lnet/minecraft/class_12301; field_64297 IN_OUT_QUINT + f Lnet/minecraft/class_12301; field_64296 IN_OUT_QUART + f Lnet/minecraft/class_12301; field_64295 IN_OUT_QUAD + f Lnet/minecraft/class_12301; field_64299 OUT_BACK + m (FF)Lnet/minecraft/class_12301; method_76357 cubicBezierSymmetric + p 1 y1 + p 0 x1 + m (F)F method_76356 method_76356 + p 0 x + m (FFFF)Lnet/minecraft/class_12301; method_76358 cubicBezier + p 0 x1 + p 1 y1 + p 2 x2 + p 3 y2 + m (Ljava/lang/String;Lnet/minecraft/class_12301;)Lnet/minecraft/class_12301; method_76360 register + p 0 name + p 1 easingType + m (F)F apply apply + p 1 x + m (F)F method_76361 method_76361 + p 0 x + m (Lnet/minecraft/class_12301;)Lcom/mojang/datafixers/util/Either; method_76359 method_76359 + p 0 easing +c net/minecraft/class_12301$class_12302 net/minecraft/world/attribute/timeline/EasingType$CubicBezier + c A cubic Bézier curve used for interpolation. The first and last control points\nare fixed at (0, 0) and at (1, 1). + f Lnet/minecraft/class_12301$class_12302$class_12303; field_64304 xParams + f Lnet/minecraft/class_12301$class_12304; field_64303 controlPoints + f I field_64302 MAX_NEWTON_ITERATIONS + f Lnet/minecraft/class_12301$class_12302$class_12303; field_64305 yParams + f Lcom/mojang/serialization/Codec; field_64301 CODEC + m (Lnet/minecraft/class_12301$class_12304;)V + p 1 controlPoints + m (Lnet/minecraft/class_12301$class_12302;)Lnet/minecraft/class_12301$class_12304; method_76362 method_76362 + p 0 easing + m (FF)Lnet/minecraft/class_12301$class_12302$class_12303; method_76364 computeParameters + c {@code z0} is fixed at 0 and {@code z3} is fixed at 1. + p 0 z1 + p 1 z2 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76363 method_76363 + p 0 instance + m (Ljava/lang/Object;)Z equals equals + p 1 other +c net/minecraft/class_12301$class_12302$class_12303 net/minecraft/world/attribute/timeline/EasingType$CubicBezier$Parameters + c Describes the parameters of a cubic Bézier curve in one axis. The constant\ncoefficient is always 0 because the curve starts at (0, 0). + f F comp_5197 c + f F comp_5196 b + f F comp_5195 a + m (F)F method_76366 derivative + p 1 t + m (F)F method_76365 apply + p 1 t + m ()F comp_5197 c + m ()F comp_5196 b + m ()F comp_5195 a + m (FFF)V + p 1 a + p 2 b + p 3 c +c net/minecraft/class_12301$class_12304 net/minecraft/world/attribute/timeline/EasingType$CubicBezierControlPoints + f Lcom/mojang/serialization/Codec; field_64306 CODEC + f F comp_5200 x2 + f F comp_5201 y2 + f F comp_5199 y1 + f F comp_5198 x1 + m (Lnet/minecraft/class_12301$class_12304;)Ljava/util/List; method_76367 method_76367 + p 0 points + m (Ljava/util/List;)Lnet/minecraft/class_12301$class_12304; method_76368 method_76368 + p 0 points + m ()Lcom/mojang/serialization/DataResult; method_76369 validate + m ()F comp_5201 y2 + m ()F comp_5200 x2 + m ()F comp_5199 y1 + m ()F comp_5198 x1 + m (FFFF)V + p 1 x1 + p 2 y1 + p 3 x2 + p 4 y2 +c net/minecraft/class_12308 net/minecraft/world/attribute/timeline/TrackEvaluator + f Ljava/util/Optional; field_64309 period + f Lnet/minecraft/class_12210; field_64310 interpolator + f Ljava/util/List; field_64311 segments + m (Lnet/minecraft/class_12306;Ljava/util/Optional;Lnet/minecraft/class_12210;)V + p 2 period + p 3 interpolator + p 1 track + m (J)J method_76390 periodize + p 1 time + m (J)Ljava/lang/Object; method_76386 get + p 1 time + m (Lnet/minecraft/class_12306;Ljava/util/List;Ljava/util/List;)V method_76387 addSegmentsOfKeyframe + p 2 segmentsOut + p 1 keyframes + p 0 track + m (J)Lnet/minecraft/class_12308$class_12309; method_76389 getSegmentForTime + p 1 time + m (Lnet/minecraft/class_12306;Ljava/util/Optional;)Ljava/util/List; method_76388 convertToSegments + p 1 period + p 0 track +c net/minecraft/class_12308$class_12309 net/minecraft/world/attribute/timeline/TrackEvaluator$Segment + f Ljava/lang/Object; comp_5209 toValue + f Ljava/lang/Object; comp_5207 fromValue + f I comp_5210 toTicks + f Lnet/minecraft/class_12301; comp_5206 easing + f I comp_5208 fromTicks + m (Lnet/minecraft/class_12306;Lnet/minecraft/class_12305;ILnet/minecraft/class_12305;I)V + p 5 toTicks + p 2 fromKeyframe + p 1 track + p 4 toKeyframe + p 3 fromTicks + m ()Ljava/lang/Object; comp_5209 toValue + m ()Ljava/lang/Object; comp_5207 fromValue + m ()I comp_5210 toTicks + m ()I comp_5208 fromTicks + m ()Lnet/minecraft/class_12301; comp_5206 easing + m (Lnet/minecraft/class_12301;Ljava/lang/Object;ILjava/lang/Object;I)V + p 1 easing + p 2 fromValue + p 3 fromTicks + p 4 toValue + p 5 toTicks +c net/minecraft/class_12306 net/minecraft/world/attribute/timeline/Track + f Ljava/util/List; comp_5204 keyframes + f Lnet/minecraft/class_12301; comp_5205 easingType + m (Lnet/minecraft/class_12306;I)Lcom/mojang/serialization/DataResult; method_76376 validateKeyframesInPeriod + p 0 track + p 1 period + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_76379 validateKeyframes + p 0 keyframes + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/MapCodec; method_76377 createCodec + p 0 valueCodec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76378 method_76378 + p 1 instance + m (Ljava/util/Optional;Lnet/minecraft/class_12210;)Lnet/minecraft/class_12308; method_76380 createEvaluator + p 1 period + p 2 interpolator + m ()Ljava/util/List; comp_5204 keyframes + m ()Lnet/minecraft/class_12301; comp_5205 easingType + m (Ljava/util/List;Lnet/minecraft/class_12301;)V + p 1 keyframes + p 2 easingType +c net/minecraft/class_12306$class_12307 net/minecraft/world/attribute/timeline/Track$Builder + f Lnet/minecraft/class_12301; field_64308 easingType + f Lcom/google/common/collect/ImmutableList$Builder; field_64307 keyframes + m (ILjava/lang/Object;)Lnet/minecraft/class_12306$class_12307; method_76384 keyframe + p 1 ticks + p 2 value + m (Lnet/minecraft/class_12301;)Lnet/minecraft/class_12306$class_12307; method_76385 easingType + p 1 easingType + m ()Lnet/minecraft/class_12306; method_76383 build +c net/minecraft/class_12305 net/minecraft/world/attribute/timeline/Keyframe + f Ljava/lang/Object; comp_5203 value + f I comp_5202 ticks + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_76372 createCodec + p 0 valueCodec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76373 method_76373 + p 1 instance + m ()Ljava/lang/Object; comp_5203 value + m ()I comp_5202 ticks + m (ILjava/lang/Object;)V + p 1 ticks + p 2 value +c net/minecraft/class_8133 net/minecraft/client/gui/widget/LayoutWidget + m (Ljava/util/function/Consumer;)V method_48227 forEachElement + p 1 consumer + m (Lnet/minecraft/class_8021;)V method_49004 method_49004 + p 0 element + m ()V method_48222 refreshPositions + m (Ljava/util/function/Consumer;Lnet/minecraft/class_8021;)V method_49005 method_49005 + p 1 element +c net/minecraft/class_8134 net/minecraft/client/gui/screen/world/ExperimentsScreen + f I field_55262 EXPERIMENTS_LIST_HEIGHT + f Lnet/minecraft/class_437; field_42505 parent + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; field_42508 experiments + f Lnet/minecraft/class_3283; field_42506 resourcePackManager + f I field_42503 EXPERIMENTS_LIST_WIDTH + f Lnet/minecraft/class_2561; field_49562 TITLE + f Lnet/minecraft/class_11467; field_55263 experimentsList + f Lnet/minecraft/class_8132; field_42504 experimentToggleList + f Ljava/util/function/Consumer; field_42507 applier + f Lnet/minecraft/class_2561; field_50043 INFO_TEXT + m (Lnet/minecraft/class_4185;)V method_49018 method_49018 + p 1 button + m (Lnet/minecraft/class_8134;Lnet/minecraft/class_364;)V method_49019 method_49019 + p 1 widget + m (Lnet/minecraft/class_437;Lnet/minecraft/class_3283;Ljava/util/function/Consumer;)V + p 2 resourcePackManager + p 1 parent + p 3 applier + m (Lnet/minecraft/class_3288;)Lnet/minecraft/class_2561; method_49016 getDataPackName + p 0 packProfile + m (Lnet/minecraft/class_8096$class_8097;Lnet/minecraft/class_3288;Z)V method_49020 method_49020 + p 3 enabled + p 2 pack + m (Lnet/minecraft/class_3288;Ljava/lang/Boolean;)V method_49017 method_49017 + p 2 enabled + m (Lnet/minecraft/class_7847;)V method_52767 method_52767 + p 0 positioner + m ()V method_49024 applyAndClose + m (Lnet/minecraft/class_4185;)V method_49023 method_49023 + p 1 button + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_3288;Z)V method_49021 method_49021 + p 2 pack + p 3 enabled +c net/minecraft/class_9463 net/minecraft/item/ProjectileItem + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2374;Lnet/minecraft/class_1799;Lnet/minecraft/class_2350;)Lnet/minecraft/class_1676; method_58648 createEntity + p 4 direction + p 3 stack + p 2 pos + p 1 world + m (Lnet/minecraft/class_1676;DDDFF)V method_58654 initializeProjectile + p 4 y + p 6 z + p 2 x + p 1 entity + p 8 power + p 9 uncertainty + m ()Lnet/minecraft/class_9463$class_9464; method_58653 getProjectileSettings +c net/minecraft/class_9463$class_9466 net/minecraft/item/ProjectileItem$PositionFunction + m (Lnet/minecraft/class_2342;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2374; getDispensePosition getDispensePosition + p 2 facing + p 1 pointer +c net/minecraft/class_9463$class_9464 net/minecraft/item/ProjectileItem$Settings + f Lnet/minecraft/class_9463$class_9464; field_50147 DEFAULT + f F comp_2545 uncertainty + f F comp_2546 power + f Ljava/util/OptionalInt; comp_2547 overrideDispenseEvent + f Lnet/minecraft/class_9463$class_9466; comp_2544 positionFunction + m ()Lnet/minecraft/class_9463$class_9464$class_9465; method_58663 builder + m ()F comp_2546 power + m ()F comp_2545 uncertainty + m ()Lnet/minecraft/class_9463$class_9466; comp_2544 positionFunction + m ()Ljava/util/OptionalInt; comp_2547 overrideDispenseEvent + m (Lnet/minecraft/class_9463$class_9466;FFLjava/util/OptionalInt;)V + p 1 positionFunction + p 2 uncertainty + p 3 power + p 4 overrideDispenseEvent +c net/minecraft/class_9463$class_9464$class_9465 net/minecraft/item/ProjectileItem$Settings$Builder + f Lnet/minecraft/class_9463$class_9466; field_50148 positionFunction + f F field_50149 uncertainty + f Ljava/util/OptionalInt; field_50151 overrideDispenserEvent + f F field_50150 power + m (F)Lnet/minecraft/class_9463$class_9464$class_9465; method_58665 uncertainty + p 1 uncertainty + m (I)Lnet/minecraft/class_9463$class_9464$class_9465; method_58666 overrideDispenseEvent + p 1 overrideDispenseEvent + m (F)Lnet/minecraft/class_9463$class_9464$class_9465; method_58669 power + p 1 power + m (Lnet/minecraft/class_2342;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2374; method_68690 method_68690 + p 0 pointer + p 1 direction + m (Lnet/minecraft/class_9463$class_9466;)Lnet/minecraft/class_9463$class_9464$class_9465; method_58667 positionFunction + p 1 positionFunction + m ()Lnet/minecraft/class_9463$class_9464; method_58664 build +c net/minecraft/class_8132 net/minecraft/client/gui/widget/ThreePartsLayoutWidget + f I field_42490 DEFAULT_HEADER_FOOTER_HEIGHT + f Lnet/minecraft/class_7843; field_42491 header + f Lnet/minecraft/class_7843; field_42492 footer + f Lnet/minecraft/class_7843; field_42493 body + f I field_43136 FOOTER_MARGIN_TOP + f Lnet/minecraft/class_437; field_42494 screen + f I field_42495 headerHeight + f I field_42496 footerHeight + m ()I method_48998 getHeaderHeight + m (Lnet/minecraft/class_8021;)Lnet/minecraft/class_8021; method_48999 addBody + p 1 widget + m (Lnet/minecraft/class_8021;Ljava/util/function/Consumer;)Lnet/minecraft/class_8021; method_48997 addFooter + p 2 callback + p 1 widget + m (Lnet/minecraft/class_8021;Ljava/util/function/Consumer;)Lnet/minecraft/class_8021; method_49000 addBody + p 1 widget + p 2 callback + m (Lnet/minecraft/class_437;)V + p 1 screen + m (Lnet/minecraft/class_437;I)V + p 1 screen + p 2 headerFooterHeight + m (I)V method_48995 setHeaderHeight + p 1 headerHeight + m ()I method_48994 getFooterHeight + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_327;)V method_57726 addHeader + p 2 textRenderer + p 1 text + m (I)V method_48991 setFooterHeight + p 1 footerHeight + m ()I method_57727 getContentHeight + m (Lnet/minecraft/class_8021;Ljava/util/function/Consumer;)Lnet/minecraft/class_8021; method_48993 addHeader + p 2 callback + p 1 widget + m (Lnet/minecraft/class_8021;)Lnet/minecraft/class_8021; method_48992 addHeader + p 1 widget + m (Lnet/minecraft/class_437;II)V + p 2 headerHeight + p 1 screen + p 3 footerHeight + m (Lnet/minecraft/class_8021;)Lnet/minecraft/class_8021; method_48996 addFooter + p 1 widget +c net/minecraft/class_9461 net/minecraft/entity/OminousItemSpawnerEntity + f Ljava/lang/String; field_50131 SPAWN_ITEM_AFTER_TICKS_NBT_KEY + f Ljava/lang/String; field_50132 ITEM_NBT_KEY + f I field_50130 MAX_SPAWN_ITEM_AFTER_TICKS + f J field_50134 spawnItemAfterTicks + f I field_50129 MIN_SPAWN_ITEM_AFTER_TICKS + f Lnet/minecraft/class_2940; field_50133 ITEM + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9463;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1297; method_61432 spawnProjectile + p 1 world + p 3 stack + p 2 item + m ()V method_58642 tickClient + m ()V method_58643 spawnItem + m ()Lnet/minecraft/class_1799; method_58640 getItem + m (Lnet/minecraft/class_3218;)V method_58641 tickServer + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;)Lnet/minecraft/class_9461; method_58638 create + p 0 world + p 1 stack + m (Lnet/minecraft/class_3218;I)V method_61431 method_61431 + p 2 dispenseEvent + m ()V method_58639 addParticles + m (Lnet/minecraft/class_1799;)V method_58636 setItem + p 1 stack +c net/minecraft/class_9460 net/minecraft/entity/EquipmentHolder + m (Lnet/minecraft/class_1304;)Lnet/minecraft/class_1799; method_6118 getEquippedStack + p 1 slot + m (Lnet/minecraft/class_9652;Lnet/minecraft/class_8567;)V method_58631 setEquipmentFromTable + p 2 parameters + p 1 equipmentTable + m (Lnet/minecraft/class_1304;F)V method_5946 setEquipmentDropChance + p 1 slot + p 2 dropChance + m (Lnet/minecraft/class_1799;Ljava/util/List;)Lnet/minecraft/class_1304; method_58633 getSlotForStack + p 1 stack + p 2 slotBlacklist + m (Lnet/minecraft/class_1304;Lnet/minecraft/class_1799;)V method_5673 equipStack + p 1 slot + p 2 stack + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_8567;JLjava/util/Map;)V method_58632 setEquipmentFromTable + p 1 lootTable + p 2 parameters + p 3 seed + p 5 slotDropChances + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_8567;Ljava/util/Map;)V method_59663 setEquipmentFromTable + p 2 parameters + p 1 lootTable + p 3 slotDropChances +c net/minecraft/class_8130 net/minecraft/client/gui/widget/AbstractTextWidget + f Lnet/minecraft/class_327; field_42483 textRenderer + f Ljava/util/function/Consumer; field_63860 clickedStyleConsumer + m (IIIILnet/minecraft/class_2561;Lnet/minecraft/class_327;)V + p 3 width + p 4 height + p 5 message + p 6 textRenderer + p 1 x + p 2 y + m (Ljava/util/function/Consumer;)Lnet/minecraft/class_8130; method_75797 onClick + p 1 clickedStyleConsumer + m (Lnet/minecraft/class_12225;)V method_75796 draw + p 1 textConsumer + m ()Lnet/minecraft/class_327; method_48977 getTextRenderer +c net/minecraft/class_8138 net/minecraft/client/render/entity/DisplayEntityRenderer + f Lnet/minecraft/class_898; field_42525 renderDispatcher + m (Lnet/minecraft/class_10011;)F method_65246 getShadowOpacity + m (Lnet/minecraft/class_10011;)F method_65245 getShadowRadius + m (Lnet/minecraft/class_8113;Lnet/minecraft/class_2338;)I method_63529 getSkyLight + m (Lnet/minecraft/class_8113;)Z method_62405 canBeCulled + m (Lnet/minecraft/class_8113;)Lnet/minecraft/class_238; method_62403 getBoundingBox + m (Lnet/minecraft/class_10011;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IF)V method_49052 render + p 3 queue + p 4 light + p 5 tickProgress + p 1 state + p 2 matrices + m (Lnet/minecraft/class_10011;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_49051 render + m (Lnet/minecraft/class_8113;)I method_63531 getBrightnessOverride + p 0 entity + m (Lnet/minecraft/class_8113;F)F method_52844 lerpYaw + p 1 deltaTicks + p 0 entity + m (F)F method_52845 getBackwardsYaw + p 0 yaw + m (Lnet/minecraft/class_8113;Lnet/minecraft/class_10011;F)V method_62404 updateRenderState + m (Lnet/minecraft/class_8113;Lnet/minecraft/class_2338;)I method_63530 getBlockLight + m (Lnet/minecraft/class_8113$class_8229;Lnet/minecraft/class_10011;Lorg/joml/Quaternionf;)Lorg/joml/Quaternionf; method_49053 getBillboardRotation + p 1 renderState + p 2 state + p 3 rotation + m (Lnet/minecraft/class_8113;F)F method_52846 lerpPitch + p 1 deltaTicks + p 0 entity + m (F)F method_52847 getNegatedPitch + p 0 pitch +c net/minecraft/class_8138$class_8139 net/minecraft/client/render/entity/DisplayEntityRenderer$BlockDisplayEntityRenderer + m (Lnet/minecraft/class_10003;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IF)V method_49054 render + m ()Lnet/minecraft/class_10003; method_49922 createRenderState + m (Lnet/minecraft/class_8113$class_8115;Lnet/minecraft/class_10003;F)V method_62407 updateRenderState +c net/minecraft/class_8138$class_8140 net/minecraft/client/render/entity/DisplayEntityRenderer$ItemDisplayEntityRenderer + f Lnet/minecraft/class_10442; field_55288 itemModelManager + m (Lnet/minecraft/class_8113$class_8122;Lnet/minecraft/class_10038;F)V method_62408 updateRenderState + m (Lnet/minecraft/class_10038;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IF)V method_49055 render + m ()Lnet/minecraft/class_10038; method_49923 createRenderState +c net/minecraft/class_8138$class_8141 net/minecraft/client/render/entity/DisplayEntityRenderer$TextDisplayEntityRenderer + f Lnet/minecraft/class_327; field_42531 displayTextRenderer + m ()Lnet/minecraft/class_10071; method_49924 createRenderState + m (Lnet/minecraft/class_2561;I)Lnet/minecraft/class_8113$class_8123$class_8125; method_49057 getLines + p 1 text + p 2 width + m (Lnet/minecraft/class_10071;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IF)V method_49056 render + m (IIIILnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_72971 method_72971 + p 5 vertexConsumer + p 4 matricesEntry + m (Lnet/minecraft/class_8113$class_8123;Lnet/minecraft/class_10071;F)V method_62409 updateRenderState +c net/minecraft/class_8146 net/minecraft/datafixer/schema/Schema3326 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_8147 net/minecraft/datafixer/schema/Schema3327 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_8144 net/minecraft/util/Nullables + c Contains utility methods that accept or return nullable values. + m (Ljava/util/Collection;Ljava/util/function/Supplier;)Ljava/lang/Object; method_49082 getFirstOrElseGet + c {@return the first element of {@code collection}, or {@code getter.get()} if it is empty} + p 0 collection + p 1 getter + m ([Z)Z method_49091 isEmpty + c {@return whether {@code array} is {@code null} or empty} + p 0 array + m (Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object; method_49077 map + c {@return the {@code value} with {@code mapper} applied if the value is not {@code null},\notherwise {@code null}}\n\n

This is the nullable equivalent to {@link java.util.Optional#map}. + p 0 value + p 1 mapper + m ([B)Z method_49083 isEmpty + c {@return whether {@code array} is {@code null} or empty} + p 0 array + m ([C)Z method_49084 isEmpty + c {@return whether {@code array} is {@code null} or empty} + p 0 array + m ([D)Z method_49085 isEmpty + c {@return whether {@code array} is {@code null} or empty} + p 0 array + m ([Ljava/lang/Object;)Z method_49089 isEmpty + c {@return whether {@code array} is {@code null} or empty} + p 0 array + m (Ljava/util/Collection;)Ljava/lang/Object; method_49080 getFirst + c {@return the first element of {@code collection}, or {@code null} if it is empty} + p 0 collection + m (Ljava/lang/Object;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; method_49078 mapOrElse + c {@return the {@code value} with {@code mapper} applied if the value is not {@code null},\notherwise {@code other}}\n\n

This is the nullable equivalent to {@link java.util.Optional#map} chained with\n{@link java.util.Optional#orElse}. + p 1 mapper + p 0 value + p 2 other + m ([F)Z method_49086 isEmpty + c {@return whether {@code array} is {@code null} or empty} + p 0 array + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; method_62789 requireNonNullElse + p 0 first + p 1 second + m (Ljava/util/Collection;Ljava/lang/Object;)Ljava/lang/Object; method_49081 getFirstOrElse + c {@return the first element of {@code collection}, or {@code defaultValue} if it is empty} + p 1 defaultValue + p 0 collection + m ([I)Z method_49087 isEmpty + c {@return whether {@code array} is {@code null} or empty} + p 0 array + m ([J)Z method_49088 isEmpty + c {@return whether {@code array} is {@code null} or empty} + p 0 array + m ([S)Z method_49090 isEmpty + c {@return whether {@code array} is {@code null} or empty} + p 0 array + m (Ljava/lang/Object;Ljava/util/function/Function;Ljava/util/function/Supplier;)Ljava/lang/Object; method_49079 mapOrElseGet + c {@return the {@code value} with {@code mapper} applied if the value is not {@code null},\notherwise {@code getter.get()}}\n\n

This is the nullable equivalent to {@link java.util.Optional#map} chained with\n{@link java.util.Optional#orElseGet}. + p 0 value + p 1 mapper + p 2 getter +c net/minecraft/class_9476 net/minecraft/loot/function/SetOminousBottleAmplifierLootFunction + f Lcom/mojang/serialization/MapCodec; field_50215 CODEC + f Lnet/minecraft/class_5658; field_50216 amplifier + m (Ljava/util/List;Lnet/minecraft/class_5658;)V + p 1 conditions + p 2 amplifier + m (Lnet/minecraft/class_5658;)Lnet/minecraft/class_120$class_121; method_58737 builder + p 0 amplifier + m (Lnet/minecraft/class_5658;Ljava/util/List;)Lnet/minecraft/class_117; method_58738 method_58738 + p 1 conditions + m ()Lnet/minecraft/class_5658; method_58740 getAmplifier + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58739 method_58739 + p 0 instance + m (Lnet/minecraft/class_9476;)Lnet/minecraft/class_5658; method_58736 method_58736 + p 0 lootFunction +c net/minecraft/class_8142 net/minecraft/data/tag/vanilla/VanillaDamageTypeTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 2 registriesFuture + p 1 output +c net/minecraft/class_8143 net/minecraft/network/packet/s2c/play/EntityDamageS2CPacket + f Lnet/minecraft/class_9139; field_47921 CODEC + f Ljava/util/Optional; comp_1271 sourcePosition + f I comp_1267 entityId + f I comp_1269 sourceCauseId + f I comp_1270 sourceDirectId + f Lnet/minecraft/class_6880; comp_1268 sourceType + m (Lnet/minecraft/class_2540;I)V method_49072 writeOffsetVarInt + p 0 buf + p 1 value + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_243; method_49076 method_49076 + p 0 pos + m (Lnet/minecraft/class_2602;)V method_49074 apply + m (Lnet/minecraft/class_9129;)V + p 1 buf + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;)V + p 1 entity + p 2 damageSource + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_243;)V method_49073 method_49073 + p 0 bufx + p 1 pos + m (Lnet/minecraft/class_2540;)I method_49075 readOffsetVarInt + p 0 buf + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_1282; method_49071 createDamageSource + p 1 world + m (Lnet/minecraft/class_9129;)V method_55873 write + p 1 buf + m ()I comp_1269 sourceCauseId + m ()I comp_1267 entityId + m ()Lnet/minecraft/class_6880; comp_1268 sourceType + m ()I comp_1270 sourceDirectId + m ()Ljava/util/Optional; comp_1271 sourcePosition + m (ILnet/minecraft/class_6880;IILjava/util/Optional;)V + p 1 entityId + p 2 sourceType + p 3 sourceCauseId + p 4 sourceDirectId + p 5 sourcePosition +c net/minecraft/class_9473 net/minecraft/component/ComponentsAccess + m (Lnet/minecraft/class_9331;)Ljava/lang/Object; method_58694 get + p 1 type + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Ljava/lang/Object; method_58695 getOrDefault + p 1 type + p 2 fallback + m (Lnet/minecraft/class_9331;)Lnet/minecraft/class_9336; method_66876 getTyped + p 1 type +c net/minecraft/class_9471 net/minecraft/predicate/entity/RaiderPredicate + f Lcom/mojang/serialization/MapCodec; field_50162 CODEC + f Lnet/minecraft/class_9471; field_50163 CAPTAIN_WITHOUT_RAID + f Z comp_2550 isCaptain + f Z comp_2549 hasRaid + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58678 method_58678 + p 0 instance + m ()Z comp_2549 hasRaid + m ()Z comp_2550 isCaptain + m (ZZ)V + p 1 hasRaid + p 2 isCaptain +c net/minecraft/class_8148 net/minecraft/datafixer/schema/Schema3328 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_8149 net/minecraft/entity/Attackable + m ()Lnet/minecraft/class_1309; method_49107 getLastAttacker +c net/minecraft/class_9479 net/minecraft/client/particle/OminousSpawningParticle + f D field_50228 startY + f D field_50227 startX + f D field_50224 startZ + f I field_50226 toColor + f I field_50225 fromColor + m (Lnet/minecraft/class_638;DDDDDDIILnet/minecraft/class_1058;)V + p 8 velocityX + p 10 velocityY + p 12 velocityZ + p 14 fromColor + p 15 toColor + p 16 sprite + p 1 world + p 2 x + p 4 y + p 6 z +c net/minecraft/class_9479$class_9480 net/minecraft/client/particle/OminousSpawningParticle$Factory + f Lnet/minecraft/class_4002; field_50229 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_58748 createParticle +c net/minecraft/class_8113 net/minecraft/entity/decoration/DisplayEntity + f Lnet/minecraft/class_2940; field_42402 SCALE + f Lnet/minecraft/class_2940; field_45112 START_INTERPOLATION + f Ljava/lang/String; field_42392 SHADOW_STRENGTH_NBT_KEY + f I field_57573 DEFAULT_INTERPOLATION_DURATION + f Z field_43182 startInterpolationSet + f F field_43135 lerpProgress + f Ljava/lang/String; field_45111 START_INTERPOLATION_KEY + f Lnet/minecraft/class_2940; field_42373 WIDTH + f Z field_52434 tooSmallToRender + f Lnet/minecraft/class_2940; field_42369 BRIGHTNESS + f Ljava/lang/String; field_42388 BILLBOARD_NBT_KEY + f I field_57574 DEFAULT_START_INTERPOLATION + f Lnet/minecraft/class_2940; field_42403 LEFT_ROTATION + f Z field_43185 renderingDataSet + f Ljava/lang/String; field_42393 WIDTH_NBT_KEY + f Lnet/minecraft/class_10584; field_55654 interpolator + f Ljava/lang/String; field_45110 INTERPOLATION_DURATION_KEY + f Lnet/minecraft/class_2940; field_42370 VIEW_RANGE + f Lit/unimi/dsi/fastutil/ints/IntSet; field_43180 RENDERING_DATA_IDS + f Lnet/minecraft/class_2940; field_42374 HEIGHT + f J field_42620 interpolationStart + f Ljava/lang/String; field_42389 BRIGHTNESS_NBT_KEY + f Lnet/minecraft/class_2940; field_45114 TELEPORT_DURATION + f Ljava/lang/String; field_42394 HEIGHT_NBT_KEY + f Ljava/lang/String; field_42390 VIEW_RANGE_NBT_KEY + f Ljava/lang/String; field_45109 TELEPORT_DURATION_KEY + f Lnet/minecraft/class_8113$class_8229; field_43184 renderProperties + f Lnet/minecraft/class_2940; field_42371 SHADOW_RADIUS + f Lnet/minecraft/class_2940; field_42375 GLOW_COLOR_OVERRIDE + f Lnet/minecraft/class_2940; field_42367 RIGHT_ROTATION + f I field_43181 interpolationDuration + f Lnet/minecraft/class_2940; field_45113 INTERPOLATION_DURATION + f Ljava/lang/String; field_42395 GLOW_COLOR_OVERRIDE_NBT_KEY + f Ljava/lang/String; field_42387 TRANSFORMATION_NBT_KEY + f Lnet/minecraft/class_2940; field_42401 TRANSLATION + f Z field_43183 interpolationDurationSet + f Ljava/lang/String; field_42391 SHADOW_RADIUS_NBT_KEY + f Lorg/slf4j/Logger; field_42397 LOGGER + f Lnet/minecraft/class_2940; field_42372 SHADOW_STRENGTH + f Lnet/minecraft/class_238; field_42383 visibilityBoundingBox + f Lnet/minecraft/class_2940; field_42368 BILLBOARD + m ()I method_48876 getGlowColorOverride + m ()Lnet/minecraft/class_8113$class_8229; method_49774 copyRenderState + m (Lnet/minecraft/class_8113$class_8114;)V method_48847 setBillboardMode + p 1 billboardMode + m (F)V method_48875 setDisplayHeight + p 1 height + m ()Z method_61402 shouldRender + m (Lnet/minecraft/class_8104;)V method_48846 setBrightness + p 1 brightness + m ()I method_52528 getStartInterpolation + m ()F method_48869 getViewRange + m (F)F method_48844 getLerpProgress + p 1 tickProgress + m ()F method_48877 getDisplayHeight + m (I)V method_52526 setTeleportDuration + p 1 teleportDuration + m ()I method_48865 getBrightness + m ()Lnet/minecraft/class_8113$class_8229; method_49777 getRenderState + m (F)V method_48872 setShadowStrength + p 1 shadowStrength + m ()Lnet/minecraft/class_8104; method_48868 getBrightnessUnpacked + m (Lnet/minecraft/class_4590;)V method_48849 setTransformation + p 1 transformation + m ()Lnet/minecraft/class_8113$class_8114; method_48864 getBillboardMode + m ()Lnet/minecraft/class_238; method_5830 getVisibilityBoundingBox + m (Lnet/minecraft/class_8113$class_8229;F)Lnet/minecraft/class_8113$class_8229; method_49775 getLerpedRenderState + p 1 state + p 2 lerpProgress + m ()I method_52527 getInterpolationDuration + m (I)V method_52525 setStartInterpolation + p 1 startInterpolation + m (I)V method_48858 setGlowColorOverride + p 1 glowColorOverride + m ()F method_48874 getDisplayWidth + m ()F method_48870 getShadowRadius + m (F)V method_48861 setViewRange + p 1 viewRange + m ()V method_48878 updateVisibilityBoundingBox + m (F)V method_48873 setDisplayWidth + p 1 width + m (ZF)V method_49776 refreshData + p 2 lerpProgress + p 1 shouldLerp + m ()F method_48871 getShadowStrength + m (I)V method_52524 setInterpolationDuration + p 1 interpolationDuration + m (F)V method_48862 setShadowRadius + p 1 shadowRadius + m (Lnet/minecraft/class_2945;)Lnet/minecraft/class_4590; method_48845 getTransformation + p 0 dataTracker + m ()I method_52529 getTeleportDuration +c net/minecraft/class_8113$class_8122 net/minecraft/entity/decoration/DisplayEntity$ItemDisplayEntity + f Lnet/minecraft/class_2940; field_42424 ITEM_DISPLAY + f Lnet/minecraft/class_2940; field_42423 ITEM + f Ljava/lang/String; field_42422 ITEM_DISPLAY_NBT_KEY + f Ljava/lang/String; field_42421 ITEM_NBT_KEY + f Lnet/minecraft/class_5630; field_42425 stackReference + f Lnet/minecraft/class_8113$class_8122$class_8226; field_43187 data + m (Lnet/minecraft/class_1799;)V method_48897 setItemStack + p 1 stack + m ()Lnet/minecraft/class_1799; method_48900 getItemStack + m ()Lnet/minecraft/class_811; method_48901 getItemDisplayContext + m ()Lnet/minecraft/class_8113$class_8122$class_8226; method_49782 getData + m (Lnet/minecraft/class_811;)V method_48896 setItemDisplayContext + p 1 context +c net/minecraft/class_8113$class_8122$class_8226 net/minecraft/entity/decoration/DisplayEntity$ItemDisplayEntity$Data + f Lnet/minecraft/class_1799; comp_1322 itemStack + f Lnet/minecraft/class_811; comp_1323 itemTransform + m ()Lnet/minecraft/class_1799; comp_1322 itemStack + m ()Lnet/minecraft/class_811; comp_1323 itemTransform + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_811;)V + p 1 itemStack + p 2 itemTransform +c net/minecraft/class_8113$class_8123 net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity + f Lnet/minecraft/class_2940; field_42437 BACKGROUND + f Lnet/minecraft/class_8113$class_8123$class_8230; field_43189 data + f Lnet/minecraft/class_2940; field_42439 TEXT_DISPLAY_FLAGS + f I field_57578 DEFAULT_LINE_WIDTH + f Ljava/lang/String; field_42432 DEFAULT_BACKGROUND_NBT_KEY + f Lnet/minecraft/class_2940; field_42435 TEXT + f Lnet/minecraft/class_8113$class_8123$class_8125; field_42442 textLines + f Ljava/lang/String; field_42430 SHADOW_NBT_KEY + f Ljava/lang/String; field_42428 TEXT_OPACITY_NBT_KEY + f B field_42447 LEFT_ALIGNMENT_FLAG + f B field_42445 SEE_THROUGH_FLAG + f Lnet/minecraft/class_2940; field_42436 LINE_WIDTH + f Lnet/minecraft/class_2940; field_42438 TEXT_OPACITY + f Ljava/lang/String; field_42431 SEE_THROUGH_NBT_KEY + f Ljava/lang/String; field_42443 TEXT_NBT_KEY + f Lit/unimi/dsi/fastutil/ints/IntSet; field_43188 TEXT_RENDERING_DATA_IDS + f Ljava/lang/String; field_42433 ALIGNMENT_NBT_KEY + f B field_42448 RIGHT_ALIGNMENT_FLAG + f Ljava/lang/String; field_42429 BACKGROUND_NBT_KEY + f B field_42446 DEFAULT_BACKGROUND_FLAG + f Ljava/lang/String; field_42427 LINE_WIDTH_NBT_KEY + f B field_42444 SHADOW_FLAG + f B field_42434 INITIAL_TEXT_OPACITY + f I field_42449 INITIAL_BACKGROUND + m (I)V method_48908 setLineWidth + p 1 lineWidth + m (Lnet/minecraft/class_2561;)V method_48911 setText + p 1 text + m ()I method_48916 getLineWidth + m ()B method_48918 getTextOpacity + m ()Lnet/minecraft/class_8113$class_8123$class_8230; method_49784 getData + m (BLnet/minecraft/class_11368;Ljava/lang/String;B)B method_48903 readFlag + p 2 nbtKey + p 3 flag + p 0 flags + p 1 view + m (B)V method_48912 setDisplayFlags + p 1 flags + m ()Lnet/minecraft/class_2561; method_48915 getText + m (BLnet/minecraft/class_11372;Ljava/lang/String;B)V method_48907 writeFlag + p 3 flag + p 2 nbtKey + p 1 view + p 0 flags + m ()I method_48919 getBackground + m ()B method_48917 getDisplayFlags + m (Lnet/minecraft/class_8113$class_8123$class_8230;F)Lnet/minecraft/class_8113$class_8123$class_8230; method_49783 getLerpedRenderState + p 1 data + p 2 lerpProgress + m (B)Lnet/minecraft/class_8113$class_8123$class_8124; method_48902 getAlignment + p 0 flags + m ()Lnet/minecraft/class_8113$class_8123$class_8230; method_49785 copyData + m (B)V method_48909 setTextOpacity + p 1 textOpacity + m (I)V method_48910 setBackground + p 1 background + m (Lnet/minecraft/class_8113$class_8123$class_8127;)Lnet/minecraft/class_8113$class_8123$class_8125; method_48905 splitLines + p 1 splitter +c net/minecraft/class_8113$class_8123$class_8230 net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity$Data + f I comp_1335 lineWidth + f B comp_1338 flags + f Lnet/minecraft/class_2561; comp_1334 text + f Lnet/minecraft/class_8113$class_8119; comp_1337 backgroundColor + f Lnet/minecraft/class_8113$class_8119; comp_1336 textOpacity + m ()B comp_1338 flags + m ()I comp_1335 lineWidth + m ()Lnet/minecraft/class_8113$class_8119; comp_1336 textOpacity + m ()Lnet/minecraft/class_8113$class_8119; comp_1337 backgroundColor + m ()Lnet/minecraft/class_2561; comp_1334 text + m (Lnet/minecraft/class_2561;ILnet/minecraft/class_8113$class_8119;Lnet/minecraft/class_8113$class_8119;B)V + p 1 text + p 2 lineWidth + p 3 textOpacity + p 4 backgroundColor + p 5 flags +c net/minecraft/class_8113$class_8123$class_8124 net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity$TextAlignment + f Ljava/lang/String; field_42454 name + f Lcom/mojang/serialization/Codec; field_42453 CODEC + f Lnet/minecraft/class_8113$class_8123$class_8124; field_42452 RIGHT + f Lnet/minecraft/class_8113$class_8123$class_8124; field_42451 LEFT + f Lnet/minecraft/class_8113$class_8123$class_8124; field_42450 CENTER + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_8113$class_8123$class_8127 net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity$LineSplitter + m (Lnet/minecraft/class_2561;I)Lnet/minecraft/class_8113$class_8123$class_8125; split split + p 1 text + p 2 lineWidth +c net/minecraft/class_8113$class_8123$class_8126 net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity$TextLine + f I comp_1250 width + f Lnet/minecraft/class_5481; comp_1249 contents + m ()Lnet/minecraft/class_5481; comp_1249 contents + m ()I comp_1250 width + m (Lnet/minecraft/class_5481;I)V + p 1 contents + p 2 width +c net/minecraft/class_8113$class_8123$class_8125 net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity$TextLines + f Ljava/util/List; comp_1247 lines + f I comp_1248 width + m ()Ljava/util/List; comp_1247 lines + m ()I comp_1248 width + m (Ljava/util/List;I)V + p 1 lines + p 2 width +c net/minecraft/class_8113$class_8119 net/minecraft/entity/decoration/DisplayEntity$IntLerper + m (I)Lnet/minecraft/class_8113$class_8119; constant constant + p 0 value + m (F)I method_48889 lerp + p 1 delta + m (IF)I method_49781 method_49781 + p 1 delta +c net/minecraft/class_8113$class_8117 net/minecraft/entity/decoration/DisplayEntity$FloatLerper + m (FF)F method_49779 method_49779 + p 1 delta + m (F)Lnet/minecraft/class_8113$class_8117; constant constant + p 0 value + m (F)F method_48886 lerp + p 1 delta +c net/minecraft/class_8113$class_8118 net/minecraft/entity/decoration/DisplayEntity$AbstractInterpolator + m (F)Ljava/lang/Object; method_48888 interpolate + p 1 delta + m (Ljava/lang/Object;F)Ljava/lang/Object; method_49780 method_49780 + p 1 delta + m (Ljava/lang/Object;)Lnet/minecraft/class_8113$class_8118; constant constant + p 0 value +c net/minecraft/class_8113$class_8115 net/minecraft/entity/decoration/DisplayEntity$BlockDisplayEntity + f Lnet/minecraft/class_2940; field_42416 BLOCK_STATE + f Ljava/lang/String; field_42415 BLOCK_STATE_NBT_KEY + f Lnet/minecraft/class_8113$class_8115$class_8225; field_43186 data + m ()Lnet/minecraft/class_2680; method_48884 getBlockState + m ()Lnet/minecraft/class_8113$class_8115$class_8225; method_49778 getData + m (Lnet/minecraft/class_2680;)V method_48883 setBlockState + p 1 state +c net/minecraft/class_8113$class_8115$class_8225 net/minecraft/entity/decoration/DisplayEntity$BlockDisplayEntity$Data + f Lnet/minecraft/class_2680; comp_1319 blockState + m ()Lnet/minecraft/class_2680; comp_1319 blockState + m (Lnet/minecraft/class_2680;)V + p 1 blockState +c net/minecraft/class_8113$class_8116 net/minecraft/entity/decoration/DisplayEntity$ArgbLerper + f I comp_1321 current + f I comp_1320 previous + m ()I comp_1320 previous + m ()I comp_1321 current + m (II)V + p 1 previous + p 2 current +c net/minecraft/class_8113$class_8114 net/minecraft/entity/decoration/DisplayEntity$BillboardMode + f B field_42412 index + f Lcom/mojang/serialization/Codec; field_42410 CODEC + f Ljava/util/function/IntFunction; field_42411 FROM_INDEX + f Ljava/lang/String; field_42413 name + f Lnet/minecraft/class_8113$class_8114; field_42409 CENTER + f Lnet/minecraft/class_8113$class_8114; field_42408 HORIZONTAL + f Lnet/minecraft/class_8113$class_8114; field_42407 VERTICAL + f Lnet/minecraft/class_8113$class_8114; field_42406 FIXED + m (Ljava/lang/String;IBLjava/lang/String;)V + p 3 index + p 4 name + m ()B method_48881 getIndex +c net/minecraft/class_8113$class_8231 net/minecraft/entity/decoration/DisplayEntity$AffineTransformationInterpolator + f Lnet/minecraft/class_4590; comp_1339 previous + f Lnet/minecraft/class_4590; comp_1340 current + m (F)Lnet/minecraft/class_4590; method_49786 interpolate + m ()Lnet/minecraft/class_4590; comp_1340 current + m ()Lnet/minecraft/class_4590; comp_1339 previous + m (Lnet/minecraft/class_4590;Lnet/minecraft/class_4590;)V + p 1 previous + p 2 current +c net/minecraft/class_8113$class_8229 net/minecraft/entity/decoration/DisplayEntity$RenderState + f Lnet/minecraft/class_8113$class_8117; comp_1331 shadowRadius + f Lnet/minecraft/class_8113$class_8117; comp_1332 shadowStrength + f Lnet/minecraft/class_8113$class_8114; comp_1329 billboardConstraints + f Lnet/minecraft/class_8113$class_8118; comp_1328 transformation + f I comp_1333 glowColorOverride + f I comp_1330 brightnessOverride + m ()I comp_1333 glowColorOverride + m ()I comp_1330 brightnessOverride + m ()Lnet/minecraft/class_8113$class_8117; comp_1331 shadowRadius + m ()Lnet/minecraft/class_8113$class_8117; comp_1332 shadowStrength + m ()Lnet/minecraft/class_8113$class_8118; comp_1328 transformation + m ()Lnet/minecraft/class_8113$class_8114; comp_1329 billboardConstraints + m (Lnet/minecraft/class_8113$class_8118;Lnet/minecraft/class_8113$class_8114;ILnet/minecraft/class_8113$class_8117;Lnet/minecraft/class_8113$class_8117;I)V + p 1 transformation + p 2 billboardConstraints + p 3 brightnessOverride + p 4 shadowRadius + p 5 shadowStrength + p 6 glowColorOverride +c net/minecraft/class_8113$class_8227 net/minecraft/entity/decoration/DisplayEntity$FloatLerperImpl + f F comp_1325 current + f F comp_1324 previous + m ()F comp_1324 previous + m ()F comp_1325 current + m (FF)V + p 1 previous + p 2 current +c net/minecraft/class_8113$class_8228 net/minecraft/entity/decoration/DisplayEntity$IntLerperImpl + f I comp_1327 current + f I comp_1326 previous + m ()I comp_1326 previous + m ()I comp_1327 current + m (II)V + p 1 previous + p 2 current +c net/minecraft/class_8111 net/minecraft/entity/damage/DamageTypes + f Lnet/minecraft/class_5321; field_42347 OUT_OF_WORLD + f Lnet/minecraft/class_5321; field_42359 STING + f Lnet/minecraft/class_5321; field_44869 GENERIC_KILL + f Lnet/minecraft/class_5321; field_42327 WITHER_SKULL + f Lnet/minecraft/class_5321; field_42339 HOT_FLOOR + f Lnet/minecraft/class_5321; field_42319 MOB_ATTACK_NO_AGGRO + f Lnet/minecraft/class_5321; field_47737 WIND_CHARGE + f Lnet/minecraft/class_5321; field_42351 DRAGON_BREATH + f Lnet/minecraft/class_5321; field_42331 EXPLOSION + f Lnet/minecraft/class_5321; field_42343 STARVE + f Lnet/minecraft/class_5321; field_42355 STALAGMITE + f Lnet/minecraft/class_5321; field_42323 MOB_PROJECTILE + f Lnet/minecraft/class_5321; field_42335 IN_FIRE + f Lnet/minecraft/class_5321; field_42358 FALLING_STALACTITE + f Lnet/minecraft/class_5321; field_42326 UNATTRIBUTED_FIREBALL + f Lnet/minecraft/class_5321; field_42338 LAVA + f Lnet/minecraft/class_5321; field_47736 SPIT + f Lnet/minecraft/class_5321; field_42350 WITHER + f Lnet/minecraft/class_5321; field_51566 CAMPFIRE + f Lnet/minecraft/class_5321; field_42330 THORNS + f Lnet/minecraft/class_5321; field_42342 DROWN + f Lnet/minecraft/class_5321; field_42354 FREEZE + f Lnet/minecraft/class_5321; field_42322 TRIDENT + f Lnet/minecraft/class_5321; field_42334 BAD_RESPAWN_POINT + f Lnet/minecraft/class_5321; field_42346 FLY_INTO_WALL + f Lnet/minecraft/class_5321; field_52432 ENDER_PEARL + f Lnet/minecraft/class_5321; field_63287 SPEAR + f Lnet/minecraft/class_5321; field_42325 FIREBALL + f Lnet/minecraft/class_5321; field_42337 ON_FIRE + f Lnet/minecraft/class_5321; field_42349 MAGIC + f Lnet/minecraft/class_5321; field_42329 INDIRECT_MAGIC + f Lnet/minecraft/class_5321; field_42341 CRAMMING + f Lnet/minecraft/class_5321; field_42353 SWEET_BERRY_BUSH + f Lnet/minecraft/class_5321; field_42321 ARROW + f Lnet/minecraft/class_5321; field_42333 SONIC_BOOM + f Lnet/minecraft/class_5321; field_42345 FALL + f Lnet/minecraft/class_5321; field_42357 FALLING_ANVIL + f Lnet/minecraft/class_5321; field_52431 MACE_SMASH + f Lnet/minecraft/class_5321; field_42360 MOB_ATTACK + f Lnet/minecraft/class_5321; field_42336 LIGHTNING_BOLT + f Lnet/minecraft/class_5321; field_44868 OUTSIDE_BORDER + f Lnet/minecraft/class_5321; field_42348 GENERIC + f Lnet/minecraft/class_5321; field_42328 THROWN + f Lnet/minecraft/class_5321; field_42340 IN_WALL + f Lnet/minecraft/class_5321; field_42352 DRY_OUT + f Lnet/minecraft/class_5321; field_42320 PLAYER_ATTACK + f Lnet/minecraft/class_5321; field_42332 PLAYER_EXPLOSION + f Lnet/minecraft/class_5321; field_42344 CACTUS + f Lnet/minecraft/class_5321; field_42356 FALLING_BLOCK + f Lnet/minecraft/class_5321; field_42324 FIREWORKS + m (Lnet/minecraft/class_7891;)V method_48839 bootstrap + p 0 damageTypeRegisterable +c net/minecraft/class_8112 net/minecraft/entity/damage/DeathMessageType + f Lcom/mojang/serialization/Codec; field_42364 CODEC + f Ljava/lang/String; field_42365 id + f Lnet/minecraft/class_8112; field_42362 FALL_VARIANTS + f Lnet/minecraft/class_8112; field_42361 DEFAULT + f Lnet/minecraft/class_8112; field_42363 INTENTIONAL_GAME_DESIGN + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_8110 net/minecraft/entity/damage/DamageType + f Lcom/mojang/serialization/Codec; field_51565 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_42318 CODEC + f Lnet/minecraft/class_9139; field_51932 ENTRY_PACKET_CODEC + f Ljava/lang/String; comp_1242 msgId + f Lnet/minecraft/class_8107; comp_1245 effects + f Lnet/minecraft/class_8108; comp_1243 scaling + f Lnet/minecraft/class_8112; comp_1246 deathMessageType + f F comp_1244 exhaustion + m (Ljava/lang/String;F)V + p 1 msgId + p 2 exhaustion + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48838 method_48838 + p 0 instance + m (Ljava/lang/String;FLnet/minecraft/class_8107;)V + p 1 msgId + p 2 exhaustion + p 3 effects + m (Ljava/lang/String;Lnet/minecraft/class_8108;F)V + p 3 exhaustion + p 2 scaling + p 1 msgId + m (Ljava/lang/String;Lnet/minecraft/class_8108;FLnet/minecraft/class_8107;)V + p 2 scaling + p 3 exhaustion + p 4 effects + p 1 msgId + m ()F comp_1244 exhaustion + m ()Lnet/minecraft/class_8112; comp_1246 deathMessageType + m ()Lnet/minecraft/class_8108; comp_1243 scaling + m ()Lnet/minecraft/class_8107; comp_1245 effects + m ()Ljava/lang/String; comp_1242 msgId + m (Ljava/lang/String;Lnet/minecraft/class_8108;FLnet/minecraft/class_8107;Lnet/minecraft/class_8112;)V + p 1 msgId + p 2 scaling + p 3 exhaustion + p 4 effects + p 5 deathMessageType +c net/minecraft/class_9449 net/minecraft/network/packet/c2s/play/ChatCommandSignedC2SPacket + c A packet used to execute commands on the server.\n\n

This truncates the command to at most 256 characters before sending to the\nserver on the client. If the server receives the command longer than 256 characters,\nit will reject the message and disconnect the client.\n\n

If the command contains an invalid character (see {@link\nnet.minecraft.util.StringHelper#isValidChar}) or if the server receives\nthe commands in improper order, the server will reject the command and disconnect\nthe client.\n\n

Commands that took more than {@link\nnet.minecraft.network.message.SignedMessage#SERVERBOUND_TIME_TO_LIVE}\nto reach the server are considered expired and log warnings on the server\nif it contains signed message arguments. If the message takes more than\n{@link net.minecraft.network.message.SignedMessage#CLIENTBOUND_TIME_TO_LIVE} to\nreach the clients (including the time it took to reach the server), the message\nis not considered secure anymore by the clients, and may be discarded depending\non the clients' options.\n\n@see net.minecraft.client.network.ClientPlayNetworkHandler#sendCommand(String)\n@see net.minecraft.server.network.ServerPlayNetworkHandler#onCommandExecution + f Lnet/minecraft/class_9139; field_50087 CODEC + f Ljava/time/Instant; comp_2533 timestamp + f Ljava/lang/String; comp_2532 command + f Lnet/minecraft/class_7635$class_7636; comp_2536 lastSeenMessages + f J comp_2534 salt + f Lnet/minecraft/class_7450; comp_2535 argumentSignatures + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Ljava/time/Instant; comp_2533 timestamp + m (Lnet/minecraft/class_2540;)V method_58582 write + p 1 buf + m (Lnet/minecraft/class_2792;)V method_58581 apply + m ()Lnet/minecraft/class_7635$class_7636; comp_2536 lastSeenMessages + m ()J comp_2534 salt + m ()Ljava/lang/String; comp_2532 command + m ()Lnet/minecraft/class_7450; comp_2535 argumentSignatures + m (Ljava/lang/String;Ljava/time/Instant;JLnet/minecraft/class_7450;Lnet/minecraft/class_7635$class_7636;)V + p 1 command + p 2 timestamp + p 3 salt + p 5 argumentSignatures + p 6 lastSeenMessages +c net/minecraft/class_9448 net/minecraft/network/packet/s2c/config/ResetChatS2CPacket + f Lnet/minecraft/class_9139; field_50084 CODEC + f Lnet/minecraft/class_9448; field_50083 INSTANCE + m (Lnet/minecraft/class_8732;)V method_58578 apply +c net/minecraft/class_9456 net/minecraft/entity/effect/OozingStatusEffect + f Ljava/util/function/ToIntFunction; field_50122 slimeCountFunction + m (Lnet/minecraft/class_4081;ILjava/util/function/ToIntFunction;)V + p 1 category + p 2 color + p 3 slimeCountFunction + m (ILnet/minecraft/class_9456$class_9775;I)I method_59652 getSlimesToSpawn + p 1 slimeCounter + p 0 maxEntityCramming + p 2 potentialSlimes + m (Lnet/minecraft/class_1937;DDD)V method_58627 spawnSlime + p 4 y + p 1 world + p 2 x + p 6 z +c net/minecraft/class_9456$class_9775 net/minecraft/entity/effect/OozingStatusEffect$SlimeCounter + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_9456$class_9775; method_60604 around + p 0 entity + m (Lnet/minecraft/class_1309;I)I method_60605 method_60605 + p 1 limit + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1621;)Z method_60606 method_60606 + p 1 slime + m (I)I count count + p 1 limit +c net/minecraft/class_9455 net/minecraft/entity/effect/InfestedStatusEffect + f F field_50112 silverfishChance + f Ljava/util/function/ToIntFunction; field_50113 silverfishCountFunction + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;DDD)V method_58615 spawnSilverfish + p 1 world + p 7 z + p 5 y + p 3 x + p 2 entity + m (Lnet/minecraft/class_4081;IFLjava/util/function/ToIntFunction;)V + p 1 category + p 4 silverfishCountFunction + p 3 silverfishChance + p 2 color +c net/minecraft/class_9454 net/minecraft/datafixer/schema/Schema3825 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_9453 net/minecraft/datafixer/fix/TrialSpawnerConfigTagFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_58610 fix + p 0 data + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_9452 net/minecraft/datafixer/fix/ItemStackCustomNameToItemNameFix + f Ljava/util/Set; field_50111 EXPLORER_MAP_NAMES + m (Ljava/lang/String;)Z method_58605 method_58605 + p 0 name + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58607 fixOminousBanner + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58601 method_58601 + p 2 itemStackTyped + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58603 fixExplorerMaps + m (Ljava/lang/String;)Z method_58609 method_58609 + p 0 itemId + m (Lcom/mojang/datafixers/Typed;Ljava/util/function/Predicate;)Lcom/mojang/datafixers/Typed; method_58604 fix + p 1 namePredicate + m (Ljava/lang/String;)Z method_58608 method_58608 + p 0 itemId +c net/minecraft/class_9451 net/minecraft/datafixer/fix/BannerCustomNameToItemNameFix + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;)Lcom/mojang/datafixers/Typed; method_58597 fix + m (Ljava/lang/String;)Z method_58600 method_58600 + p 0 name + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_8129 net/minecraft/predicate/TagPredicate + f Lnet/minecraft/class_6862; comp_1836 tag + f Z comp_1837 expected + m (Lnet/minecraft/class_5321;)Lcom/mojang/serialization/Codec; method_53245 createCodec + p 0 registryRef + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_8129; method_48968 unexpected + p 0 tag + m (Lnet/minecraft/class_6880;)Z method_48967 test + p 1 registryEntry + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_8129; method_48965 expected + p 0 tag + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53246 method_53246 + p 1 instance + m (Lnet/minecraft/class_6862;Z)V + p 2 expected + p 1 tag + m ()Z comp_1837 expected + m ()Lnet/minecraft/class_6862; comp_1836 tag +c net/minecraft/class_9459 net/minecraft/entity/effect/WindChargedStatusEffect +c net/minecraft/class_9458 net/minecraft/entity/effect/WeavingStatusEffect + f Ljava/util/function/ToIntFunction; field_50123 cobwebChanceFunction + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)V method_58628 tryPlaceCobweb + p 2 random + p 1 world + p 3 pos + m (Lnet/minecraft/class_4081;ILjava/util/function/ToIntFunction;)V + p 3 cobwebChanceFunction + p 2 color + p 1 category +c net/minecraft/class_9457 net/minecraft/entity/effect/RaidOmenStatusEffect +c net/minecraft/class_4655 net/minecraft/world/gen/stateprovider/PillarBlockStateProvider + f Lnet/minecraft/class_2248; field_21313 block + f Lcom/mojang/serialization/MapCodec; field_24944 CODEC + m (Lnet/minecraft/class_4655;)Lnet/minecraft/class_2248; method_28866 method_28866 + p 0 provider + m (Lnet/minecraft/class_2248;)V + p 1 block +c net/minecraft/class_5986 net/minecraft/unused/packageinfo/PackageInfo5986 +c net/minecraft/class_3324 net/minecraft/server/PlayerManager + f Lnet/minecraft/server/MinecraftServer; field_14360 server + f Ljava/io/File; field_14343 WHITELIST_FILE + f Ljava/io/File; field_14355 BANNED_PLAYERS_FILE + f I field_29790 LATENCY_UPDATE_INTERVAL + f Lnet/minecraft/class_3337; field_14361 whitelist + f Lnet/minecraft/class_29; field_14358 saveHandler + f I field_34895 simulationDistance + f Ljava/io/File; field_14364 BANNED_IPS_FILE + f Ljava/util/List; field_14351 players + f Ljava/io/File; field_14348 OPERATORS_FILE + f Ljava/util/Map; field_14346 advancementTrackers + f Ljava/util/Map; field_14354 playerMap + f Lnet/minecraft/class_3317; field_14345 bannedIps + f Lnet/minecraft/class_2561; field_39921 FILTERED_FULL_TEXT + f Z field_14350 cheatsAllowed + f I field_14359 viewDistance + f Lorg/slf4j/Logger; field_14349 LOGGER + f Ljava/util/Map; field_14362 statisticsMap + f Lnet/minecraft/class_2561; field_45061 DUPLICATE_LOGIN_TEXT + f Lnet/minecraft/class_3335; field_14344 bannedProfiles + f Lnet/minecraft/class_3326; field_14353 ops + f Ljava/text/SimpleDateFormat; field_14356 DATE_FORMATTER + f I field_14357 latencyUpdateTimer + f Lnet/minecraft/class_7780; field_24626 registryManager + m ()Z method_14614 isWhitelistEnabled + m (Lnet/minecraft/class_1657;DDDDLnet/minecraft/class_5321;Lnet/minecraft/class_2596;)V method_14605 sendToAround + p 1 player + p 2 x + p 4 y + p 6 z + p 8 distance + p 10 worldKey + p 11 packet + m (Lnet/minecraft/class_7471;Lnet/minecraft/class_3222;Lnet/minecraft/class_2556$class_7602;)V method_43673 broadcast + c Broadcasts a chat message to all players and the server console.\n\n

Chat messages have signatures. It is possible to use a bogus signature - such as\n{@link net.minecraft.network.message.SignedMessage#ofUnsigned} - to send a chat\nmessage; however if the signature is invalid (e.g. because the text's content differs\nfrom the one sent by the client, or because the passed signature is invalid) the client\nwill show a warning and can discard it depending on the client's options.\n\n@apiNote This method is used to broadcast a message sent by a player\nthrough {@linkplain net.minecraft.client.gui.screen.ChatScreen the chat screen}\nas well as through commands like {@link net.minecraft.server.command.MeCommand} or\n{@link net.minecraft.server.command.SayCommand} .\n\n@see #broadcast(Text, boolean)\n@see #broadcast(Text, Function, boolean)\n@see #broadcast(SignedMessage, ServerCommandSource, MessageType.Parameters) + p 1 message + p 3 params + p 2 sender + m (Lnet/minecraft/class_11560;)Ljava/util/Optional; method_14600 loadPlayerData + p 1 player + m (Lnet/minecraft/class_2596;)V method_14581 sendToAll + p 1 packet + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_12086;)V method_14596 sendCommandTree + p 1 player + p 2 permissions + m (Lnet/minecraft/class_3222;)V method_14611 remove + p 1 player + m (Ljava/lang/String;)Lnet/minecraft/class_3222; method_74003 isAlreadyConnected + p 1 playerName + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_3218;)V method_14606 sendWorldInfo + p 1 player + p 2 world + m (Lnet/minecraft/class_11560;)Z method_14609 canBypassPlayerLimit + p 1 configEntry + m (Lnet/minecraft/class_3222;)V method_14594 sendPlayerStatus + p 1 player + m ()Ljava/util/List; method_14571 getPlayerList + c Gets a list of all players on a Minecraft server.\nThis list should not be modified! + m (I)V method_38650 setSimulationDistance + p 1 simulationDistance + m ()V method_14572 onDataPacksReloaded + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_7780;Lnet/minecraft/class_29;Lnet/minecraft/class_11871;)V + p 2 registryManager + p 1 server + p 4 managementListener + p 3 saveHandler + m ()V method_14601 updatePlayerLatency + m (Lnet/minecraft/class_2995;Lnet/minecraft/class_3222;)V method_14588 sendScoreboard + p 1 scoreboard + p 2 player + m ()I method_14592 getMaxPlayerCount + m ()V method_14617 saveAllPlayerData + m (Ljava/lang/String;)Ljava/util/List; method_14559 getPlayersByIp + p 1 ip + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_2561;)V method_14564 sendToTeam + p 2 message + p 1 source + m (Ljava/lang/String;)Lnet/minecraft/class_3222; method_14566 getPlayer + p 1 name + m ()I method_14568 getViewDistance + m (Lnet/minecraft/class_1297;)V method_31441 method_31441 + p 0 entity + m (Lnet/minecraft/class_11560;Ljava/util/Optional;Ljava/util/Optional;)V method_74002 addToOperators + p 3 canBypassPlayerLimit + p 2 permissionLevel + p 1 player + m (Lnet/minecraft/class_11560;)Z method_14569 isOperator + p 1 player + m ()Lnet/minecraft/class_3317; method_14585 getIpBanList + m (Lnet/minecraft/class_3222;ZLnet/minecraft/class_1297$class_5529;)Lnet/minecraft/class_3222; method_14556 respawnPlayer + p 2 alive + p 1 player + p 3 removalReason + m (Lnet/minecraft/class_7471;)Z method_44793 verify + c {@return whether {@code message} is not expired and is verified}\n\n@implNote This only affects the server log. Unverified messages are still broadcast\nto other clients. + p 1 message + m ()Lnet/minecraft/class_3335; method_14563 getUserBanList + m ()Z method_14579 areCheatsAllowed + m (Ljava/util/UUID;)Lnet/minecraft/class_3222; method_14602 getPlayer + p 1 uuid + m ()V method_14599 reloadWhitelist + m (Lcom/mojang/authlib/GameProfile;Ljava/util/UUID;)Lnet/minecraft/class_3442; method_76060 method_76060 + p 2 uuid + m (Lnet/minecraft/class_2535;Lnet/minecraft/class_3222;Lnet/minecraft/class_8792;)V method_14570 onPlayerConnect + p 1 connection + p 2 player + p 3 clientData + m (Lnet/minecraft/class_11560;)V method_14582 addToOperators + p 1 player + m (Lnet/minecraft/class_3222;)V method_14576 sendCommandTree + p 1 player + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_2561;)V method_14565 sendToOtherTeams + p 1 source + p 2 message + m (Lnet/minecraft/class_1657;)Lnet/minecraft/class_3442; method_14583 createStatHandler + p 1 player + m (Ljava/util/UUID;)Z method_52449 disconnectDuplicateLogins + p 1 uuid + m (I)V method_14608 setViewDistance + p 1 viewDistance + m (Lcom/mojang/authlib/GameProfile;)Ljava/nio/file/Path; method_76059 locateStatFilePath + p 1 profile + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_3222;)Lnet/minecraft/class_2561; method_43511 method_43511 + p 1 player + m (Lnet/minecraft/class_2561;Z)V method_43514 broadcast + c Broadcasts a message to all players and the server console.\n\n@apiNote This is used to send general messages such as a death\nmessage or a join/leave message.\n\n@see #broadcast(Text, Function, boolean)\n@see #broadcast(SignedMessage, ServerCommandSource, MessageType.Parameters)\n@see #broadcast(SignedMessage, ServerPlayerEntity, MessageType.Parameters) + p 2 overlay + p 1 message + m (Ljava/net/SocketAddress;Lnet/minecraft/class_11560;)Lnet/minecraft/class_2561; method_14586 checkCanJoin + p 2 configEntry + p 1 address + m (Lnet/minecraft/class_3218;)V method_14591 setMainWorld + p 1 world + m (Z)V method_14607 setCheatsAllowed + p 1 cheatsAllowed + m ()Lnet/minecraft/class_3337; method_14590 getWhitelist + m (Lnet/minecraft/class_11560;)Z method_14587 isWhitelisted + p 1 player + m ()Lnet/minecraft/server/MinecraftServer; method_14561 getServer + m ()I method_14574 getCurrentPlayerCount + m (Lnet/minecraft/class_2561;Ljava/util/function/Function;Z)V method_43512 broadcast + c Broadcasts a message to all players and the server console. A different\nmessage can be sent to a different player.\n\n@see #broadcast(Text, boolean)\n@see #broadcast(SignedMessage, ServerCommandSource, MessageType.Parameters)\n@see #broadcast(SignedMessage, ServerPlayerEntity, MessageType.Parameters) + p 1 message + p 3 overlay + p 2 playerMessageFactory + c a function that takes the player to send the message to\nand returns either the text to send to them or {@code null}\nto indicate the message should not be sent to them + m ()Lnet/minecraft/class_2487; method_14567 getUserData + c Gets the user data of the player hosting the Minecraft server.\n\n@return the user data of the host of the server if the server is an integrated server, otherwise {@code null} + m (Lnet/minecraft/class_3222;)V method_14577 savePlayerData + p 1 player + m (Lnet/minecraft/class_7471;Ljava/util/function/Predicate;Lnet/minecraft/class_3222;Lnet/minecraft/class_2556$class_7602;)V method_44791 broadcast + c Broadcasts a chat message to all players and the server console.\n\n

Chat messages have signatures. It is possible to use a bogus signature - such as\n{@link net.minecraft.network.message.SignedMessage#ofUnsigned} - to send a chat\nmessage; however if the signature is invalid (e.g. because the text's content differs\nfrom the one sent by the client, or because the passed signature is invalid) the client\nwill show a warning and can discard it depending on the client's options.\n\n@see #broadcast(Text, boolean)\n@see #broadcast(Text, Function, boolean)\n@see #broadcast(SignedMessage, ServerCommandSource, MessageType.Parameters)\n@see #broadcast(SignedMessage, ServerPlayerEntity, MessageType.Parameters) + p 4 params + p 3 sender + p 2 shouldSendFiltered + c predicate that determines whether to send the filtered message for the given player + p 1 message + m ()Lnet/minecraft/class_3326; method_14603 getOpList + m ()I method_38651 getSimulationDistance + m (Lnet/minecraft/class_3222;)V method_60598 sendStatusEffects + p 1 player + m ()[Ljava/lang/String; method_14560 getWhitelistedNames + m (Lnet/minecraft/class_3222;)Lnet/minecraft/class_2985; method_14578 getAdvancementTracker + p 1 player + m ()[Ljava/lang/String; method_14584 getOpNames + m (Lnet/minecraft/class_7471;Lnet/minecraft/class_2168;Lnet/minecraft/class_2556$class_7602;)V method_44166 broadcast + c Broadcasts a chat message to all players and the server console.\n\n@apiNote This method is used to broadcast a message sent by commands like\n{@link net.minecraft.server.command.MeCommand} or\n{@link net.minecraft.server.command.SayCommand} .\n\n@see #broadcast(Text, boolean)\n@see #broadcast(Text, Function, boolean)\n@see #broadcast(SignedMessage, ServerPlayerEntity, MessageType.Parameters) + p 1 message + p 2 source + p 3 params + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3244;)V method_60597 sendStatusEffects + p 1 entity + p 2 networkHandler + m (Lnet/minecraft/class_11560;)V method_14604 removeFromOperators + p 1 player + m ()[Ljava/lang/String; method_14580 getPlayerNames + m (Lnet/minecraft/class_2596;Lnet/minecraft/class_5321;)V method_14589 sendToDimension + p 1 packet + p 2 dimension + m ()V method_14597 disconnectAllPlayers +c net/minecraft/class_5985 net/minecraft/unused/packageinfo/PackageInfo5985 +c net/minecraft/class_4657 net/minecraft/world/gen/stateprovider/WeightedBlockStateProvider + f Lcom/mojang/serialization/MapCodec; field_24946 CODEC + f Lnet/minecraft/class_6012; field_21315 states + m (Lnet/minecraft/class_6012;)Lcom/mojang/serialization/DataResult; method_28868 wrap + p 0 states + m (Lnet/minecraft/class_6012;)V + p 1 states + m (Lnet/minecraft/class_6012$class_6006;)V + p 1 states +c net/minecraft/class_5988 net/minecraft/unused/packageinfo/PackageInfo5988 +c net/minecraft/class_4656 net/minecraft/world/gen/stateprovider/SimpleBlockStateProvider + f Lnet/minecraft/class_2680; field_21314 state + f Lcom/mojang/serialization/MapCodec; field_24945 CODEC + m (Lnet/minecraft/class_2680;)V + p 1 state +c net/minecraft/class_3326 net/minecraft/server/OperatorList + m (Lnet/minecraft/class_11560;)Z method_14620 canBypassPlayerLimit + m (Lnet/minecraft/class_11560;)Z method_74004 remove + m (Lnet/minecraft/class_11560;)Ljava/lang/String; method_14619 toString + m (Lnet/minecraft/class_3327;)Z method_74005 add +c net/minecraft/class_5987 net/minecraft/unused/packageinfo/PackageInfo5987 +c net/minecraft/class_4651 net/minecraft/world/gen/stateprovider/BlockStateProvider + c A provider for {@linkplain BlockState block states}. Results may be random or based on a block position. + f Lcom/mojang/serialization/Codec; field_24937 TYPE_CODEC + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_23455 get + c {@return a provided block state} + p 2 pos + p 1 random + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_4656; method_38433 of + c {@return a block state provider that always returns the given state} + p 0 state + c the block state that the block state provider should return + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4656; method_38432 of + c {@return a block state provider that always returns the {@linkplain Block#getDefaultState() default state} for the given block} + p 0 block + c the block of the default state that the block state provider should return + m ()Lnet/minecraft/class_4652; method_28862 getType + c {@return the type of this block state provider}\n\n@implNote The returned block state provider type should be registered so that the {@code type} field is properly serialized. +c net/minecraft/class_5982 net/minecraft/unused/packageinfo/PackageInfo5982 +c net/minecraft/class_4650 net/minecraft/world/gen/foliage/SpruceFoliagePlacer + f Lcom/mojang/serialization/MapCodec; field_24936 CODEC + f Lnet/minecraft/class_6017; field_23757 trunkHeight + m (Lnet/minecraft/class_4650;)Lnet/minecraft/class_6017; method_30418 method_30418 + p 0 placer + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;)V + p 1 radius + p 3 trunkHeight + p 2 offset + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30417 method_30417 + p 0 instance +c net/minecraft/class_3320 net/minecraft/server/BannedIpEntry + m (Ljava/lang/String;)V + p 1 ip + m (Lcom/google/gson/JsonObject;)Ljava/lang/String; method_14532 getIp + p 0 json + m (Lcom/google/gson/JsonObject;)V + p 1 json + m (Ljava/lang/String;Ljava/util/Date;Ljava/lang/String;Ljava/util/Date;Ljava/lang/String;)V + p 5 reason + p 3 source + p 4 expiry + p 1 ip + p 2 created +c net/minecraft/class_3321 net/minecraft/server/ServerConfigHandler + f Ljava/io/File; field_14327 OPERATORS_FILE + f Ljava/io/File; field_14325 WHITE_LIST_FILE + f Ljava/io/File; field_14328 BANNED_PLAYERS_FILE + f Lorg/slf4j/Logger; field_14326 LOGGER + f Ljava/io/File; field_14324 BANNED_IPS_FILE + m (Lnet/minecraft/server/MinecraftServer;)Z method_14539 convertOperators + p 0 server + m (Lnet/minecraft/server/MinecraftServer;)Z method_14547 convertBannedPlayers + p 0 server + m (Ljava/io/File;)V method_14549 markFileConverted + p 0 file + m (Lnet/minecraft/server/MinecraftServer;)Z method_14545 convertBannedIps + p 0 server + m (Lnet/minecraft/server/MinecraftServer;)Z method_14533 convertWhitelist + p 0 server + m (Lnet/minecraft/server/MinecraftServer;Ljava/util/Collection;Lcom/mojang/authlib/ProfileLookupCallback;)V method_14538 lookupProfile + p 0 server + p 2 callback + p 1 bannedPlayers + m (Lnet/minecraft/class_3176;)Z method_14550 convertPlayerFiles + p 0 minecraftServer + m (Ljava/lang/String;Ljava/util/Date;)Ljava/util/Date; method_14535 parseDate + p 1 fallback + p 0 dateString + m (Lnet/minecraft/server/MinecraftServer;)Ljava/io/File; method_14536 getLevelPlayersFolder + p 0 server + m (Ljava/io/File;)V method_14534 createDirectory + p 0 directory + m (Lnet/minecraft/server/MinecraftServer;)Z method_14542 checkPlayerConversionSuccess + p 0 server + m (Lnet/minecraft/server/MinecraftServer;)Z method_14540 checkSuccess + p 0 server + m (Ljava/lang/String;)Z method_14552 method_14552 + p 0 playerName + m ()Z method_14541 checkListConversionSuccess + m (Lnet/minecraft/server/MinecraftServer;Ljava/lang/String;)Ljava/util/UUID; method_14546 getPlayerUuidByName + p 0 server + p 1 name + m (Ljava/io/File;Ljava/util/Map;)Ljava/util/List; method_14543 processSimpleListFile + p 1 valueMap + p 0 file +c net/minecraft/class_3321$class_3322 net/minecraft/server/ServerConfigHandler$ServerConfigException + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 1 message + p 2 cause + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/class_3321$1 net/minecraft/server/ServerConfigHandler$1 + m (Ljava/lang/String;Ljava/lang/Exception;)V onProfileLookupFailed onProfileLookupFailed + p 2 exception +c net/minecraft/class_3321$4 net/minecraft/server/ServerConfigHandler$4 + m (Ljava/lang/String;Ljava/lang/Exception;)V onProfileLookupFailed onProfileLookupFailed + p 2 exception +c net/minecraft/class_3321$5 net/minecraft/server/ServerConfigHandler$5 + m (Ljava/lang/String;Ljava/lang/Exception;)V onProfileLookupFailed onProfileLookupFailed + p 2 exception + m (Ljava/io/File;Ljava/lang/String;Ljava/lang/String;)V method_14553 convertPlayerFile + p 2 fileName + p 3 uuid + p 1 playerDataFolder + m (Ljava/lang/String;)Ljava/lang/String; method_14554 getPlayerFileName +c net/minecraft/class_3321$2 net/minecraft/server/ServerConfigHandler$2 + m (Ljava/lang/String;Ljava/lang/Exception;)V onProfileLookupFailed onProfileLookupFailed + p 2 exception +c net/minecraft/class_3321$3 net/minecraft/server/ServerConfigHandler$3 + m (Ljava/lang/String;Ljava/lang/Exception;)V onProfileLookupFailed onProfileLookupFailed + p 2 exception +c net/minecraft/class_5984 net/minecraft/unused/packageinfo/PackageInfo5984 +c net/minecraft/class_4652 net/minecraft/world/gen/stateprovider/BlockStateProviderType + f Lcom/mojang/serialization/MapCodec; field_24939 codec + f Lnet/minecraft/class_4652; field_29300 RANDOMIZED_INT_STATE_PROVIDER + f Lnet/minecraft/class_4652; field_21306 WEIGHTED_STATE_PROVIDER + f Lnet/minecraft/class_4652; field_21305 SIMPLE_STATE_PROVIDER + f Lnet/minecraft/class_4652; field_24938 ROTATED_BLOCK_PROVIDER + f Lnet/minecraft/class_4652; field_34934 DUAL_NOISE_PROVIDER + f Lnet/minecraft/class_4652; field_34932 NOISE_THRESHOLD_PROVIDER + f Lnet/minecraft/class_4652; field_34933 NOISE_PROVIDER + m ()Lcom/mojang/serialization/MapCodec; method_28863 getCodec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_4652; method_23457 register + p 1 codec + p 0 id +c net/minecraft/class_5983 net/minecraft/unused/packageinfo/PackageInfo5983 +c net/minecraft/class_4648 net/minecraft/world/gen/foliage/FoliagePlacerType + f Lcom/mojang/serialization/MapCodec; field_24932 codec + f Lnet/minecraft/class_4648; field_21302 ACACIA_FOLIAGE_PLACER + f Lnet/minecraft/class_4648; field_42847 CHERRY_FOLIAGE_PLACER + f Lnet/minecraft/class_4648; field_29296 RANDOM_SPREAD_FOLIAGE_PLACER + f Lnet/minecraft/class_4648; field_24163 JUNGLE_FOLIAGE_PLACER + f Lnet/minecraft/class_4648; field_24164 MEGA_PINE_FOLIAGE_PLACER + f Lnet/minecraft/class_4648; field_24165 DARK_OAK_FOLIAGE_PLACER + f Lnet/minecraft/class_4648; field_24161 BUSH_FOLIAGE_PLACER + f Lnet/minecraft/class_4648; field_24162 FANCY_FOLIAGE_PLACER + f Lnet/minecraft/class_4648; field_21300 SPRUCE_FOLIAGE_PLACER + f Lnet/minecraft/class_4648; field_21301 PINE_FOLIAGE_PLACER + f Lnet/minecraft/class_4648; field_21299 BLOB_FOLIAGE_PLACER + m ()Lcom/mojang/serialization/MapCodec; method_28849 getCodec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_4648; method_28850 register + p 0 id + p 1 codec +c net/minecraft/class_5979 net/minecraft/unused/packageinfo/PackageInfo5979 +c net/minecraft/class_4647 net/minecraft/world/gen/foliage/FoliagePlacer + f Lcom/mojang/serialization/Codec; field_24931 TYPE_CODEC + f Lnet/minecraft/class_6017; field_21296 radius + f Lnet/minecraft/class_6017; field_23753 offset + m (Lnet/minecraft/class_5819;IIIIZ)Z method_23451 isInvalidForLeaves + c Used to exclude certain positions such as corners when creating a square of leaves. + p 6 giantTrunk + p 1 random + p 4 dz + p 5 radius + p 2 dx + p 3 y + m (Lnet/minecraft/class_5819;ILnet/minecraft/class_4643;)I method_26989 getRandomHeight + p 2 trunkHeight + p 3 config + p 1 random + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_4647$class_8179;Lnet/minecraft/class_5819;Lnet/minecraft/class_4643;Lnet/minecraft/class_2338;)Z method_34359 placeFoliageBlock + p 2 random + p 1 placer + p 4 pos + p 3 config + p 0 world + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_4647$class_8179;Lnet/minecraft/class_5819;Lnet/minecraft/class_4643;FLnet/minecraft/class_2338;Lnet/minecraft/class_2338$class_2339;)Z method_49884 placeFoliageBlock + p 6 pos + p 4 chance + p 5 origin + p 2 random + p 3 config + p 0 world + p 1 placer + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_4647$class_8179;Lnet/minecraft/class_5819;Lnet/minecraft/class_4643;ILnet/minecraft/class_4647$class_5208;III)V method_23448 generate + c This is the main method used to generate foliage. + p 1 world + p 2 placer + p 5 trunkHeight + p 6 treeNode + p 3 random + p 4 config + p 9 offset + p 7 foliageHeight + p 8 radius + m (Lnet/minecraft/class_3610;)Z method_42380 method_42380 + p 0 fluidState + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_4647$class_8179;Lnet/minecraft/class_5819;Lnet/minecraft/class_4643;Lnet/minecraft/class_2338;IIZ)V method_23449 generateSquare + c Generates a square of leaves with the given radius. Sub-classes can use the method {@code isInvalidForLeaves} to exclude certain positions, such as corners. + p 3 random + p 4 config + p 1 world + p 2 placer + p 7 y + p 8 giantTrunk + p 5 centerPos + p 6 radius + m (Lnet/minecraft/class_5819;)I method_27386 getRandomOffset + p 1 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P2; method_30411 fillFoliagePlacerFields + p 0 instance + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;)V + p 1 radius + p 2 offset + m (Lnet/minecraft/class_5819;IIIIZ)Z method_27387 isPositionInvalid + c Normalizes x and z coords before checking if they are invalid. + p 1 random + p 3 y + p 2 dx + p 5 radius + p 4 dz + p 6 giantTrunk + m (Lnet/minecraft/class_5819;I)I method_23452 getRandomRadius + p 2 baseHeight + p 1 random + m (Lnet/minecraft/class_2680;)Z method_64224 method_64224 + p 0 state + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_4647$class_8179;Lnet/minecraft/class_5819;Lnet/minecraft/class_4643;ILnet/minecraft/class_4647$class_5208;II)V method_27385 generate + p 6 treeNode + p 7 foliageHeight + p 4 config + p 5 trunkHeight + p 8 radius + p 2 placer + p 3 random + p 1 world + m ()Lnet/minecraft/class_4648; method_28843 getType + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_4647$class_8179;Lnet/minecraft/class_5819;Lnet/minecraft/class_4643;Lnet/minecraft/class_2338;IIZFF)V method_49247 generateSquareWithHangingLeaves + p 3 random + p 4 config + p 1 world + p 2 placer + p 7 y + p 8 giantTrunk + p 5 centerPos + p 6 radius + p 9 hangingLeavesChance + p 10 hangingLeavesExtensionChance + m (Lnet/minecraft/class_4647;)Lnet/minecraft/class_6017; method_30412 method_30412 + p 0 placer + m (Lnet/minecraft/class_4647;)Lnet/minecraft/class_6017; method_30410 method_30410 + p 0 placer +c net/minecraft/class_4647$class_8179 net/minecraft/world/gen/foliage/FoliagePlacer$BlockPlacer + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_49240 placeBlock + p 1 pos + p 2 state + m (Lnet/minecraft/class_2338;)Z method_49239 hasPlacedBlock + p 1 pos +c net/minecraft/class_4647$class_5208 net/minecraft/world/gen/foliage/FoliagePlacer$TreeNode + c A point on a tree to generate foliage around + f Lnet/minecraft/class_2338; field_24158 center + f I field_24159 foliageRadius + f Z field_24160 giantTrunk + m (Lnet/minecraft/class_2338;IZ)V + p 2 foliageRadius + p 1 center + p 3 giantTrunk + m ()I method_27389 getFoliageRadius + m ()Lnet/minecraft/class_2338; method_27388 getCenter + m ()Z method_27390 isGiantTrunk + c Whether this node is the top of a giant (2x2 block) trunk +c net/minecraft/class_3317 net/minecraft/server/BannedIpList + m (Ljava/net/SocketAddress;)Z method_14527 isBanned + p 1 ip + m (Ljava/net/SocketAddress;)Ljava/lang/String; method_14526 stringifyAddress + p 1 address + m (Lnet/minecraft/class_3320;)Z method_73999 add + m (Ljava/lang/String;)Z method_74000 remove + m (Ljava/lang/String;)Z method_14529 isBanned + p 1 ip + m (Ljava/net/SocketAddress;)Lnet/minecraft/class_3320; method_14528 get + p 1 address +c net/minecraft/class_5978 net/minecraft/unused/packageinfo/PackageInfo5978 +c net/minecraft/class_4649 net/minecraft/world/gen/foliage/PineFoliagePlacer + f Lnet/minecraft/class_6017; field_23755 height + f Lcom/mojang/serialization/MapCodec; field_24935 CODEC + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;)V + p 3 height + p 2 offset + p 1 radius + m (Lnet/minecraft/class_4649;)Lnet/minecraft/class_6017; method_30416 method_30416 + p 0 placer + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30415 method_30415 + p 0 instance +c net/minecraft/class_4660 net/minecraft/world/gen/treedecorator/CocoaTreeDecorator + f F field_21318 probability + f Lcom/mojang/serialization/MapCodec; field_24959 CODEC + m (F)V + p 1 probability + m (ILnet/minecraft/class_2338;)Z method_23465 method_23465 + p 1 pos + m (Lnet/minecraft/class_4660;)Ljava/lang/Float; method_28891 method_28891 + p 0 decorator + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_4662$class_7402;Lnet/minecraft/class_2338;)V method_23466 method_23466 + p 2 pos +c net/minecraft/class_5991 net/minecraft/unused/packageinfo/PackageInfo5991 +c net/minecraft/class_5990 net/minecraft/unused/packageinfo/PackageInfo5990 +c net/minecraft/class_5997 net/minecraft/unused/packageinfo/PackageInfo5997 +c net/minecraft/class_4666 net/minecraft/client/option/StickyKeyBinding + f Z field_62926 restore + f Ljava/util/function/BooleanSupplier; field_21334 toggleGetter + f Z field_62108 resetOnScreenClose + m ()Z method_73364 shouldRestoreOnScreenClose + m (Ljava/lang/String;Lnet/minecraft/class_3675$class_307;ILnet/minecraft/class_304$class_11900;Ljava/util/function/BooleanSupplier;Z)V + p 5 toggleGetter + p 6 restore + p 3 code + p 4 category + p 1 id + p 2 type + m (Ljava/lang/String;ILnet/minecraft/class_304$class_11900;Ljava/util/function/BooleanSupplier;Z)V + p 2 code + p 1 id + p 4 toggleGetter + p 3 category + p 5 restore + m ()V method_52232 untoggle +c net/minecraft/class_3335 net/minecraft/server/BannedPlayerList + m (Lnet/minecraft/class_11560;)Z method_14650 contains + p 1 player + m (Lnet/minecraft/class_3336;)Z method_74006 add + m (Lnet/minecraft/class_11560;)Z method_74007 remove + m (Lnet/minecraft/class_11560;)Ljava/lang/String; method_14649 toString +c net/minecraft/class_5996 net/minecraft/util/annotation/Debug + c An annotation, mostly on side-effect-free methods.\n\n

Most methods annotated are getters that don't cause side-effects. Some of\nthose methods also may execute dry-runs.\n\n

However, it is present on {@link\nnet.minecraft.entity.passive.BeeEntity.MoveToHiveGoal}, and its purpose in that\ncase is not yet clear.\n\n

This annotation has class retention and can be applied to a wide range of\ntargets.\n\n

This annotation is not {@link java.lang.annotation.Documented}, and hence\nwill not appear in the generated javadoc for annotated elements. +c net/minecraft/class_3336 net/minecraft/server/BannedPlayerEntry + m (Lcom/google/gson/JsonObject;)V + p 1 json + m (Lnet/minecraft/class_11560;Ljava/util/Date;Ljava/lang/String;Ljava/util/Date;Ljava/lang/String;)V + p 2 created + p 4 expiry + p 3 source + p 5 reason +c net/minecraft/class_5999 net/minecraft/datafixer/schema/Schema2571 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_3337 net/minecraft/server/Whitelist + m (Lnet/minecraft/class_11560;)Z method_14653 isAllowed + m (Lnet/minecraft/class_11560;)Ljava/lang/String; method_14652 toString + m (Lnet/minecraft/class_11560;)Z method_74009 remove + m (Lnet/minecraft/class_3340;)Z method_74008 add +c net/minecraft/class_5998 net/minecraft/unused/packageinfo/PackageInfo5998 +c net/minecraft/class_4667 net/minecraft/client/gui/screen/option/GameOptionsScreen + f Lnet/minecraft/class_8132; field_49503 layout + f Lnet/minecraft/class_353; field_51824 body + f Lnet/minecraft/class_437; field_21335 parent + f Lnet/minecraft/class_315; field_21336 gameOptions + m (Lnet/minecraft/class_4667;Lnet/minecraft/class_364;)V method_60336 method_60336 + p 1 child + m (Lnet/minecraft/class_7172;)V method_75370 update + p 1 option + m ()V method_31387 initFooter + m ()V method_57732 initHeader + m (Lnet/minecraft/class_437;Lnet/minecraft/class_315;Lnet/minecraft/class_2561;)V + p 2 gameOptions + p 1 parent + p 3 title + m (Lnet/minecraft/class_4185;)V method_57731 method_57731 + p 1 button + m ()V method_60325 addOptions + m ()V method_60329 initBody +c net/minecraft/class_2006 net/minecraft/advancement/criterion/ConstructBeaconCriterion + m (ILnet/minecraft/class_2006$class_2008;)Z method_22459 method_22459 + p 1 conditions + m (Lnet/minecraft/class_3222;I)V method_8812 trigger + p 1 player + p 2 level +c net/minecraft/class_2006$class_2008 net/minecraft/advancement/criterion/ConstructBeaconCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47232 CODEC + f Ljava/util/Optional; comp_2029 player + f Lnet/minecraft/class_2096$class_2100; comp_2040 level + m (Ljava/util/Optional;Lnet/minecraft/class_2096$class_2100;)V + p 1 playerPredicate + p 2 level + m (I)Z method_8817 matches + p 1 level + m (Lnet/minecraft/class_2096$class_2100;)Lnet/minecraft/class_175; method_8818 level + p 0 level + m ()Lnet/minecraft/class_175; method_35110 create + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54956 method_54956 + p 0 instance + m ()Lnet/minecraft/class_2096$class_2100; comp_2040 level +c net/minecraft/class_4662 net/minecraft/world/gen/treedecorator/TreeDecorator + c Tree decorators can add additional blocks to trees, such as vines or beehives. + f Lcom/mojang/serialization/Codec; field_24962 TYPE_CODEC + m (Lnet/minecraft/class_4662$class_7402;)V method_23469 generate + p 1 generator + m ()Lnet/minecraft/class_4663; method_28893 getType +c net/minecraft/class_4662$class_7402 net/minecraft/world/gen/treedecorator/TreeDecorator$Generator + f Ljava/util/function/BiConsumer; field_38873 replacer + f Lnet/minecraft/class_5819; field_38874 random + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; field_38877 rootPositions + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; field_38875 logPositions + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; field_38876 leavesPositions + f Lnet/minecraft/class_3746; field_38872 world + m ()Lit/unimi/dsi/fastutil/objects/ObjectArrayList; method_43321 getLogPositions + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2746;)V method_43319 replaceWithVine + p 1 pos + p 2 faceProperty + m ()Lit/unimi/dsi/fastutil/objects/ObjectArrayList; method_43323 getRootPositions + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_43318 replace + p 1 pos + p 2 state + m ()Lit/unimi/dsi/fastutil/objects/ObjectArrayList; method_43322 getLeavesPositions + m (Lnet/minecraft/class_2338;)Z method_43317 isAir + p 1 pos + m ()Lnet/minecraft/class_5819; method_43320 getRandom + m (Lnet/minecraft/class_3746;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5819;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;)V + p 4 logPositions + p 5 leavesPositions + p 2 replacer + p 3 random + p 6 rootPositions + p 1 world + m ()Lnet/minecraft/class_3746; method_43316 getWorld + m (Lnet/minecraft/class_2338;Ljava/util/function/Predicate;)Z method_64820 matches + p 2 statePredicate + p 1 pos +c net/minecraft/class_3330 net/minecraft/server/ServerConfigEntry + f Ljava/lang/Object; field_14368 key + m ()Ljava/lang/Object; method_14626 getKey + m ()Z method_14627 isInvalid + m (Lcom/google/gson/JsonObject;)V method_24896 write + p 1 json + m (Ljava/lang/Object;)V + p 1 key +c net/minecraft/class_5993 net/minecraft/unused/packageinfo/PackageInfo5993 +c net/minecraft/class_4661 net/minecraft/world/gen/treedecorator/LeavesVineTreeDecorator + f Lcom/mojang/serialization/MapCodec; field_24960 CODEC + f F field_38790 probability + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2746;Lnet/minecraft/class_4662$class_7402;)V method_23467 placeVines + c Places a vine at a given position and then up to 4 more vines going downwards. + p 0 pos + p 1 faceProperty + p 2 generator + m (F)V + p 1 probability + m (Lnet/minecraft/class_4661;)Ljava/lang/Float; method_43195 method_43195 + p 0 treeDecorator + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_4662$class_7402;Lnet/minecraft/class_2338;)V method_23468 method_23468 + p 3 pos +c net/minecraft/class_3331 net/minecraft/server/ServerConfigList + f Lorg/slf4j/Logger; field_14373 LOGGER + f Ljava/io/File; field_14370 file + f Ljava/util/Map; field_14371 map + f Lcom/google/gson/Gson; field_14374 GSON + m ()V method_73998 clear + m ()V method_14630 load + m ()Ljava/util/Collection; method_14632 values + m ()V method_14631 removeInvalidEntries + m (Ljava/lang/Object;)Z method_14635 remove + p 1 key + m ()[Ljava/lang/String; method_14636 getNames + m (Ljava/lang/Object;)Lnet/minecraft/class_3330; method_14640 get + p 1 key + m (Ljava/lang/Object;)Z method_14644 contains + m ()V method_14629 save + m (Ljava/io/File;Lnet/minecraft/class_11871;)V + p 1 file + m (Lnet/minecraft/class_3330;)Z method_14638 remove + p 1 entry + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_3330; method_14642 fromJson + p 1 json + m (Ljava/lang/Object;)Ljava/lang/String; method_14634 toString + p 1 profile + m (Lnet/minecraft/class_3330;)Lcom/google/gson/JsonObject; method_24897 method_24897 + p 0 entry + m (Lnet/minecraft/class_3330;)Z method_14633 add + m ()Ljava/io/File; method_14643 getFile + m ()Z method_14641 isEmpty +c net/minecraft/class_5992 net/minecraft/unused/packageinfo/PackageInfo5992 +c net/minecraft/class_4664 net/minecraft/world/gen/treedecorator/TrunkVineTreeDecorator + f Lcom/mojang/serialization/MapCodec; field_24964 CODEC + f Lnet/minecraft/class_4664; field_24965 INSTANCE + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_4662$class_7402;Lnet/minecraft/class_2338;)V method_23474 method_23474 + p 2 pos +c net/minecraft/class_4663 net/minecraft/world/gen/treedecorator/TreeDecoratorType + f Lcom/mojang/serialization/MapCodec; field_24963 codec + f Lnet/minecraft/class_4663; field_55841 PLACE_ON_GROUND + f Lnet/minecraft/class_4663; field_21321 LEAVE_VINE + f Lnet/minecraft/class_4663; field_21320 TRUNK_VINE + f Lnet/minecraft/class_4663; field_21324 ALTER_GROUND + f Lnet/minecraft/class_4663; field_21322 COCOA + f Lnet/minecraft/class_4663; field_21323 BEEHIVE + f Lnet/minecraft/class_4663; field_54802 PALE_MOSS + f Lnet/minecraft/class_4663; field_54803 CREAKING_HEART + f Lnet/minecraft/class_4663; field_57828 ATTACHED_TO_LOGS + f Lnet/minecraft/class_4663; field_38791 ATTACHED_TO_LEAVES + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()Lcom/mojang/serialization/MapCodec; method_28894 getCodec + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_4663; method_28895 register + p 1 codec + p 0 id +c net/minecraft/class_5994 net/minecraft/unused/packageinfo/PackageInfo5994 +c net/minecraft/class_2002 net/minecraft/advancement/criterion/ChanneledLightningCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;)Lnet/minecraft/class_47; method_27791 method_27791 + p 1 entity + m (Lnet/minecraft/class_3222;Ljava/util/Collection;)V method_8803 trigger + p 1 player + p 2 victims + m (Ljava/util/List;Lnet/minecraft/class_2002$class_2004;)Z method_22458 method_22458 + p 1 conditions +c net/minecraft/class_2002$class_2004 net/minecraft/advancement/criterion/ChanneledLightningCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47231 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/List; comp_2039 victims + m ([Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_175; method_8809 create + p 0 victims + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54955 method_54955 + p 0 instance + m (Ljava/util/Collection;)Z method_8808 matches + p 1 victims + m (Ljava/util/Optional;Ljava/util/List;)V + p 2 victims + p 1 playerPredicate + m ()Ljava/util/List; comp_2039 victims +c net/minecraft/class_4659 net/minecraft/world/gen/treedecorator/BeehiveTreeDecorator + f F field_21317 probability + f Lcom/mojang/serialization/MapCodec; field_24958 CODEC + f [Lnet/minecraft/class_2350; field_36347 GENERATE_DIRECTIONS + f Lnet/minecraft/class_2350; field_36346 BEE_NEST_FACE + m (ILnet/minecraft/class_2338;)Z method_23464 method_23464 + p 1 pos + m (Lnet/minecraft/class_2338;)Ljava/util/stream/Stream; method_40033 method_40033 + p 0 pos + m (F)V + p 1 probability + m (Lnet/minecraft/class_4662$class_7402;Lnet/minecraft/class_2338;)Z method_40032 method_40032 + p 1 pos + m (Lnet/minecraft/class_4659;)Ljava/lang/Float; method_28890 method_28890 + p 0 decorator + m (Lnet/minecraft/class_2350;)Z method_40034 method_40034 + p 0 direction + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_4482;)V method_35373 method_35373 + p 1 blockEntity +c net/minecraft/class_3327 net/minecraft/server/OperatorEntry + f Z field_14367 bypassPlayerLimit + f Lnet/minecraft/class_12086; field_63215 level + m (Lnet/minecraft/class_11560;Lnet/minecraft/class_12086;Z)V + p 1 player + p 3 bypassPlayerLimit + p 2 level + m ()Lnet/minecraft/class_12086; method_75039 getLevel + m (Lcom/google/gson/JsonObject;)V + p 1 json + m ()Z method_14622 canBypassPlayerLimit +c net/minecraft/class_4658 net/minecraft/world/gen/treedecorator/AlterGroundTreeDecorator + f Lcom/mojang/serialization/MapCodec; field_24957 CODEC + f Lnet/minecraft/class_4651; field_21316 provider + m (Lnet/minecraft/class_4662$class_7402;Lnet/minecraft/class_2338;)V method_23463 setColumn + p 2 origin + p 1 generator + m (ILnet/minecraft/class_2338;)Z method_23460 method_23460 + p 1 pos + m (Lnet/minecraft/class_4662$class_7402;Lnet/minecraft/class_2338;)V method_23461 method_23461 + p 2 pos + m (Lnet/minecraft/class_4651;)V + p 1 provider + m (Lnet/minecraft/class_4662$class_7402;Lnet/minecraft/class_2338;)V method_23462 setArea + p 1 generator + p 2 origin + m (Lnet/minecraft/class_4658;)Lnet/minecraft/class_4651; method_28889 method_28889 + p 0 decorator +c net/minecraft/class_5989 net/minecraft/unused/packageinfo/PackageInfo5989 +c net/minecraft/class_703 net/minecraft/client/particle/Particle + c A client-side visual effect with position, velocity, collision, and additional render properties.\n\n

\nEach particle is typically rendered as a camera-facing texture quad.\n{@link net.minecraft.client.particle.SpriteBillboardParticle} provides this behavior, and most vanilla particles inherit from it.\n\n

\nIf you would like a particle with no direct rendering effects, inherit from {@link NoRenderParticle}. + f Z field_28787 ascending + f Z field_3845 onGround + f Z field_3843 dead + f Lnet/minecraft/class_638; field_3851 world + f D field_3854 y + f Lnet/minecraft/class_238; field_3872 boundingBox + f Lnet/minecraft/class_238; field_3860 EMPTY_BOUNDING_BOX + f D field_3852 velocityX + f D field_3874 x + f F field_3844 gravityStrength + f D field_3850 velocityZ + f I field_3866 age + f F field_28786 velocityMultiplier + f D field_3838 lastY + f D field_3858 lastX + f D field_3856 lastZ + f Z field_21507 stopped + f Lnet/minecraft/class_5819; field_3840 random + f F field_3867 spacingY + f I field_3847 maxAge + f D field_3871 z + f Z field_3862 collidesWithWorld + f F field_3849 spacingXZ + f D field_3869 velocityY + f D field_36193 MAX_SQUARED_COLLISION_CHECK_DISTANCE + m ()V method_3085 markDead + c Marks this particle as ready to be removed from the containing {@link ClientWorld}. + m (Lnet/minecraft/class_638;DDD)V + p 6 z + p 4 y + p 2 x + p 1 world + m ()Lnet/minecraft/class_3999; method_74274 textureSheet + m (I)V method_3077 setMaxAge + c Sets the maximum age, in ticks, that this particle can exist for. + p 1 maxAge + c the new maximum age of this particle, in ticks + m (Lnet/minecraft/class_638;DDDDDD)V + p 1 world + p 2 x + p 12 velocityZ + p 8 velocityX + p 10 velocityY + p 4 y + p 6 z + m (DDD)V method_34753 setVelocity + c Updates this particle's velocity to the target X, Y, and Z values. + p 1 velocityX + c the new x-velocity of this particle + p 3 velocityY + c the new y-velocity of this particle + p 5 velocityZ + c the new z-velocity of this particle + m (F)I method_3068 getBrightness + c {@return the packed light level this particle should render at}\n\n@see net.minecraft.client.render.LightmapTextureManager + p 1 tint + m (Lnet/minecraft/class_238;)V method_3067 setBoundingBox + p 1 boundingBox + m ()V method_3070 tick + c Called each game tick (20 times per second), and should be used to do core particle logic, such as movement and collision. + m (FF)V method_3080 setBoundingBoxSpacing + p 2 spacingY + p 1 spacingXZ + m ()Ljava/util/Optional; method_34019 getGroup + c {@return the optional group that this particle belongs to}\n\n

A particle group restricts the number of particles from the group that\ncan be rendered in a client world. If the particle does not have a group,\nit is not restricted. + m ()Z method_3086 isAlive + c {@return {@code false} if this particle is finished and should be removed from the parent {@link ParticleManager}, otherwise {@code true} if the particle is still alive} + m (F)Lnet/minecraft/class_703; method_3087 scale + c Scales the size of this particle by the given {@code scale} amount.\n\n@return this particle + p 1 scale + c the amount to scale this particle's size by + m ()V method_3072 repositionFromBoundingBox + m (F)Lnet/minecraft/class_703; method_3075 move + c Multiplies this particle's current velocity by the target {@code speed} amount. + p 1 speed + c the velocity multiplier to apply to this particle + m ()I method_3082 getMaxAge + c {@return the maximum age, in ticks, of this particle}\nIf this particle's age exceeds this value, it will be removed from the world. + m (DDD)V method_3063 setPos + c Updates the position and bounding box of this particle to the target {@code x}, {@code y}, {@code z} position. + p 3 y + c the y position to move this particle to + p 1 x + c the x position to move this particle to + p 5 z + c the z position to move this particle to + m ()Lnet/minecraft/class_238; method_3064 getBoundingBox + c {@return the bounding {@link Box} of this particle used for collision and movement logic}\n\n

\nBy default, this bounding box is automatically repositioned when a particle moves in {@link Particle#tick()}.\nTo adjust the size of the returned box, visit {@link Particle#setBoundingBoxSpacing(float, float)}.\nTo directly update the current bounding box, visit {@link Particle#setBoundingBox(Box)}; + m (DDD)V method_3069 move + c Moves this particle by the specified delta amounts, re-positioning bounding boxes and adjusting movement for collision with the world. + p 1 dx + c the delta x to move this particle by + p 5 dz + c the delta z to move this particle by + p 3 dy + c the delta y to move this particle by +c net/minecraft/class_703$class_9213 net/minecraft/client/particle/Particle$DynamicAlpha + f Lnet/minecraft/class_703$class_9213; field_48941 OPAQUE + f F comp_2323 startAtNormalizedAge + f F comp_2324 endAtNormalizedAge + f F comp_2321 startAlpha + f F comp_2322 endAlpha + m ()Z method_56833 isOpaque + m (IIF)F method_56834 getAlpha + p 2 maxAge + p 1 age + p 3 tickProgress + m ()F comp_2322 endAlpha + m ()F comp_2323 startAtNormalizedAge + m ()F comp_2324 endAtNormalizedAge + m ()F comp_2321 startAlpha + m (FFFF)V + p 1 startAlpha + p 2 endAlpha + p 3 startAtNormalizedAge + p 4 endAtNormalizedAge +c net/minecraft/class_702 net/minecraft/client/particle/ParticleManager + f Ljava/util/List; field_17820 PARTICLE_TEXTURE_SHEETS + f Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; field_29072 groupCounts + f Lnet/minecraft/class_638; field_3834 world + f Ljava/util/Map; field_3830 particles + f Lnet/minecraft/class_5819; field_3832 random + f Ljava/util/Queue; field_3837 newEmitterParticles + f Ljava/util/Queue; field_3836 newParticles + f Lnet/minecraft/class_11939; field_62618 spriteManager + m (Lnet/minecraft/class_2394;DDDDDD)Lnet/minecraft/class_703; method_3056 addParticle + p 10 velocityY + p 12 velocityZ + p 1 parameters + p 2 x + p 4 y + p 6 z + p 8 velocityX + m ()V method_48015 clearParticles + m (Lnet/minecraft/class_2394;DDDDDD)Lnet/minecraft/class_703; method_3055 createParticle + p 12 velocityZ + p 1 parameters + p 2 x + p 4 y + p 6 z + p 8 velocityX + p 10 velocityY + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2394;I)V method_3051 addEmitter + p 1 entity + p 2 parameters + p 3 maxAge + m ()V method_3057 tick + m (Lnet/minecraft/class_3999;)Lnet/minecraft/class_11938; method_74281 createParticleRenderer + p 1 textureSheet + m (Lnet/minecraft/class_5878;I)V method_34022 addTo + p 2 count + p 1 group + m (Lnet/minecraft/class_3999;Lnet/minecraft/class_11938;)V method_74282 method_74282 + p 0 textureSheet + p 1 particle + m ()Ljava/lang/String; method_3052 getDebugString + m (Lnet/minecraft/class_703;)V method_3058 addParticle + p 1 particle + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2394;)V method_3061 addEmitter + p 1 entity + p 2 parameters + m (Lnet/minecraft/class_638;Lnet/minecraft/class_11939;)V + p 1 world + p 2 spriteManager + m (Lnet/minecraft/class_5878;)Z method_34021 canAdd + c {@return whether another particle from {@code group} can be rendered by this\nmanager} + p 1 group + m (Lnet/minecraft/class_11943;Lnet/minecraft/class_4604;Lnet/minecraft/class_4184;F)V method_74283 addToBatch + p 3 camera + p 4 tickProgress + p 1 batch + p 2 frustum + m (Lnet/minecraft/class_638;)V method_3045 setWorld + p 1 world +c net/minecraft/class_5964 net/minecraft/util/profiler/Deviation + f Lnet/minecraft/class_3696; field_29597 result + f I field_29596 ticks + f Ljava/time/Instant; field_29595 instant + m (Ljava/time/Instant;ILnet/minecraft/class_3696;)V + p 1 instant + p 2 ticks + p 3 result +c net/minecraft/class_3302 net/minecraft/resource/ResourceReloader + c A resource reloader performs actual reloading in its {@linkplain #reload\nreload} when called by {@link SimpleResourceReload#start}.\n\n@see SimpleResourceReload#start\n@see SinglePreparationResourceReloader SinglePreparationResourceReloader\n(completes preparation in one method)\n@see SynchronousResourceReloader SynchronousResourceReloader\n(performs all reloading in the apply executor) + m ()Ljava/lang/String; method_22322 getName + c Returns a user-friendly name for logging. + m (Lnet/minecraft/class_3302$class_11558;Ljava/util/concurrent/Executor;Lnet/minecraft/class_3302$class_4045;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_25931 reload + c Performs a reload. Returns a future that is completed when the reload\nis completed.\n\n

In a reload, there is a prepare stage and an apply stage. For the\nprepare stage, you should create completable futures with {@linkplain\nCompletableFuture#supplyAsync(Supplier, Executor)\nCompletableFuture.supplyAsync(..., prepareExecutor)}\nto ensure the prepare actions are done with the prepare executor. Then,\nyou should have a completable future for all the prepared actions, and\ncall {@linkplain CompletableFuture#thenCompose(Function)\ncombinedPrepare.thenCompose(synchronizer::waitFor)}\nto notify the {@code synchronizer}. Finally, you should run {@linkplain\nCompletableFuture#thenAcceptAsync(Consumer, Executor)\nCompletableFuture.thenAcceptAsync(..., applyExecutor)} for apply actions.\nIn the end, returns the result of {@code thenAcceptAsync}.\n\n@return a future for the reload\n@see net.minecraft.resource.ReloadableResourceManagerImpl#reload(Executor, Executor,\nCompletableFuture, List) + p 1 store + p 3 reloadSynchronizer + p 2 prepareExecutor + p 4 applyExecutor + m (Lnet/minecraft/class_3302$class_11558;)V prepareSharedState prepareSharedState + c Inserts state that should be shared between reloaders into the provided data store. + p 1 store +c net/minecraft/class_3302$class_4045 net/minecraft/resource/ResourceReloader$Synchronizer + c A synchronizer to indicate completion of a reloader's prepare stage and\nto allow start of the apply stage only if all reloaders have finished\nthe prepare stage. + m (Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture; method_18352 whenPrepared + c Indicates, to the ongoing reload, that this reloader has finished its\npreparation stage with the {@code preparedObject} as its result.\n\n

Returns a completable future that the apply stage depends on. This\nreturned future is completed when all the reloaders have completed their\nprepare stages in the reload.\n\n

Example:\n{@code\nCompletableFuture prepareStage = ...;\nprepareStage.thenCompose(synchronizer::whenPrepared)\n .thenAcceptAsync(..., applyExecutor);\n}\n\n@return a completable future as the precondition for the apply stage + p 1 preparedObject + c the result of the prepare stage +c net/minecraft/class_3302$class_11558 net/minecraft/resource/ResourceReloader$Store + c A data store that can be used for sharing state between resource reloaders.\n\nValues can be inserted during {@link ResourceReloader#prepareSharedState prepareSharedState}\nand retrieved during {@link ResourceReloader#reload reload}. + f Ljava/util/Map; field_61162 store + f Lnet/minecraft/class_3300; field_61161 resourceManager + m (Lnet/minecraft/class_3300;)V + p 1 resourceManager + m (Lnet/minecraft/class_3302$class_11559;Ljava/lang/Object;)V method_72363 put + c Inserts a value associated with the given key into the data store. + p 2 value + p 1 key + m (Lnet/minecraft/class_3302$class_11559;)Ljava/lang/Object; method_72362 getOrThrow + c {@return the value associated with the given key}. This is safe to call during\n{@link ResourceReloader#reload reload} if any resource reloader has previously\ninserted a value with the same key object during {@link ResourceReloader#prepareSharedState prepareSharedState}. + p 1 key + m ()Lnet/minecraft/class_3300; method_72361 getResourceManager +c net/minecraft/class_3302$class_11559 net/minecraft/resource/ResourceReloader$Key + c Type used as a key for {@link Store}. +c net/minecraft/class_5963 net/minecraft/util/profiler/DummyRecorder + f Lnet/minecraft/class_5962; field_29594 INSTANCE +c net/minecraft/class_4635 net/minecraft/world/gen/feature/HugeMushroomFeatureConfig + f Lcom/mojang/serialization/Codec; field_24885 CODEC + f I field_21232 foliageRadius + f Lnet/minecraft/class_4651; field_21231 stemProvider + f Lnet/minecraft/class_4651; field_21230 capProvider + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28721 method_28721 + p 0 instance + m (Lnet/minecraft/class_4651;Lnet/minecraft/class_4651;I)V + p 1 capProvider + p 3 foliageRadius + p 2 stemProvider +c net/minecraft/class_3304 net/minecraft/resource/ReloadableResourceManagerImpl + c A reloadable resource manager is always available to be accessed, and is the\ntype used by the minecraft client instance. It has a backing {@linkplain\n#activeManager active resource manager} that it delegates to.\n\n

It starts with an empty active resource manager, and swaps the active\nresource manager whenever it {@linkplain #reload reloads}; in addition,\n{@linkplain #close closing} it will replace the active resource manager\nwith an empty one, and the reloadable manager itself is still accessible to\nusers, as opposed to the lifecycled resource manager. + f Ljava/util/List; field_17935 reloaders + f Lorg/slf4j/Logger; field_14295 LOGGER + f Lnet/minecraft/class_3264; field_14294 type + f Lnet/minecraft/class_6860; field_36391 activeManager + m (Lnet/minecraft/class_3302;)V method_14477 registerReloader + c Registers a reloader to all future reloads on this resource\nmanager. + p 1 reloader + m (Lnet/minecraft/class_3264;)V + p 1 type + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;Ljava/util/List;)Lnet/minecraft/class_4011; method_18232 reload + c Swaps the active resource manager with another one backed by the given\n{@code packs} and start a {@linkplain SimpleResourceReload#start reload}. + p 1 prepareExecutor + p 4 packs + p 3 initialStage + p 2 applyExecutor +c net/minecraft/class_4634 net/minecraft/world/gen/feature/BlockPileFeatureConfig + f Lcom/mojang/serialization/Codec; field_24873 CODEC + f Lnet/minecraft/class_4651; field_21229 stateProvider + m (Lnet/minecraft/class_4651;)V + p 1 stateProvider + m (Lnet/minecraft/class_4634;)Lnet/minecraft/class_4651; method_28683 method_28683 + p 0 config +c net/minecraft/class_5965 net/minecraft/util/profiler/Sampler + f Z field_29601 active + f Ljava/lang/Runnable; field_29602 startAction + f Ljava/util/function/DoubleSupplier; field_29599 retriever + f D field_33884 currentSample + f Ljava/lang/String; field_33882 name + f Lio/netty/buffer/ByteBuf; field_33883 ticksBuffer + f Lnet/minecraft/class_5949; field_29598 type + f Lnet/minecraft/class_5965$class_5967; field_29603 deviationChecker + f Lio/netty/buffer/ByteBuf; field_29600 valueBuffer + m ()V method_34782 stop + m (Ljava/lang/String;Lnet/minecraft/class_5949;Ljava/util/function/DoubleSupplier;Ljava/lang/Runnable;Lnet/minecraft/class_5965$class_5967;)V + p 4 startAction + p 3 retriever + p 2 type + p 1 name + p 5 deviationChecker + m ()V method_34780 start + m ()Lnet/minecraft/class_5965$class_6398; method_37173 collectData + m (I)V method_34781 sample + p 1 tick + m (Ljava/lang/String;Lnet/minecraft/class_5949;Ljava/util/function/ToDoubleFunction;Ljava/lang/Object;)Lnet/minecraft/class_5965$class_5966; method_34779 builder + p 3 context + p 0 name + p 1 type + p 2 retriever + m (Ljava/lang/String;Lnet/minecraft/class_5949;Ljava/lang/Object;Ljava/util/function/ToDoubleFunction;)Lnet/minecraft/class_5965; method_34778 create + p 3 retriever + p 0 name + p 1 type + p 2 context + m ()Ljava/util/function/DoubleSupplier; method_37170 getRetriever + m (Ljava/lang/String;Lnet/minecraft/class_5949;Ljava/util/function/DoubleSupplier;)Lnet/minecraft/class_5965; method_34776 create + p 1 type + p 0 name + p 2 retriever + m ()Lnet/minecraft/class_5949; method_37172 getType + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/lang/String; method_37171 getName + m ()V method_34786 ensureActive + m ()Z method_37174 hasDeviated +c net/minecraft/class_5965$class_6398 net/minecraft/util/profiler/Sampler$Data + f Lit/unimi/dsi/fastutil/ints/Int2DoubleMap; field_33887 values + f I field_33888 startTick + f I field_33889 endTick + m ()I method_37177 getEndTick + m (IILit/unimi/dsi/fastutil/ints/Int2DoubleMap;)V + p 1 startTick + p 2 endTick + p 3 values + m (I)D method_37176 getValue + p 1 tick + m ()I method_37175 getStartTick +c net/minecraft/class_5965$class_5968 net/minecraft/util/profiler/Sampler$RatioDeviationChecker + f F field_29609 threshold + f D field_29611 lastValue + m (F)V + p 1 threshold +c net/minecraft/class_5965$class_5967 net/minecraft/util/profiler/Sampler$DeviationChecker + m (D)Z method_34792 check + p 1 value +c net/minecraft/class_5965$class_5966 net/minecraft/util/profiler/Sampler$Builder + f Ljava/util/function/DoubleSupplier; field_29605 timeGetter + f Ljava/lang/Object; field_29606 context + f Lnet/minecraft/class_5949; field_33886 type + f Lnet/minecraft/class_5965$class_5967; field_29608 deviationChecker + f Ljava/lang/Runnable; field_29607 startAction + f Ljava/lang/String; field_33885 name + m (Ljava/util/function/Consumer;)Lnet/minecraft/class_5965$class_5966; method_34789 startAction + p 1 action + m (Ljava/lang/String;Lnet/minecraft/class_5949;Ljava/util/function/ToDoubleFunction;Ljava/lang/Object;)V + p 4 context + p 2 type + p 3 timeFunction + p 1 name + m ()Lnet/minecraft/class_5965; method_34787 build + m (Lnet/minecraft/class_5965$class_5967;)Lnet/minecraft/class_5965$class_5966; method_34788 deviationChecker + p 1 deviationChecker +c net/minecraft/class_5962 net/minecraft/util/profiler/Recorder + m ()V method_34772 endTick + m ()Lnet/minecraft/class_3695; method_34774 getProfiler + m ()V method_34770 stop + m ()V method_34771 startTick + m ()V method_41320 forceStop + m ()Z method_34773 isActive +c net/minecraft/class_3300 net/minecraft/resource/ResourceManager + c Provides resource loading capabilities to Minecraft. + m (Ljava/lang/String;Ljava/util/function/Predicate;)Ljava/util/Map; method_14488 findResources + c Returns a sorted list of identifiers matching a path predicate.\n\n

Scanning begins in {@code startingPath} and each candidate file present under that directory\nwill be offered up to the predicate to decide whether it should be included or not.\n\n

Elements in the returned list may not, necessarily be unique. Additional effort is advised to ensure that\nduplicates in the returned list are discarded before loading.\n\n@return the list matching identifiers + p 1 startingPath + c the starting path to begin scanning from + p 2 allowedPathPredicate + c a predicate to determine whether a path should be included or not + m ()Ljava/util/stream/Stream; method_29213 streamResourcePacks + c Gets a stream of loaded resource packs in increasing order of priority. + m ()Ljava/util/Set; method_14487 getAllNamespaces + c Gets a set of all namespaces offered by the resource packs loaded by this manager. + m (Ljava/lang/String;Ljava/util/function/Predicate;)Ljava/util/Map; method_41265 findAllResources + p 2 allowedPathPredicate + p 1 startingPath + m (Lnet/minecraft/class_2960;)Ljava/util/List; method_14489 getAllResources + c Gets all of the available resources to the corresponding resource identifier.\n\n

Resources are returned in load order, or ascending order of priority, so the last element in the returned\nlist is what would be returned normally by {@link #getResource}\n\n

Each resource in this returned list must be closed to avoid resource leaks. + p 1 id + c the resource identifier to search for +c net/minecraft/class_3300$class_5353 net/minecraft/resource/ResourceManager$Empty + f Lnet/minecraft/class_3300$class_5353; field_25351 INSTANCE +c net/minecraft/class_5961 net/minecraft/util/profiler/DebugRecorder + f Ljava/util/Set; field_33893 samplers + f Lnet/minecraft/class_5971; field_29583 dumper + f I field_32676 MAX_DURATION_IN_SECONDS + f Ljava/util/concurrent/Executor; field_29582 dumpExecutor + f Ljava/util/function/Consumer; field_29579 globalDumpConsumer + f Ljava/util/function/Consumer; field_29584 resultConsumer + f Ljava/util/function/LongSupplier; field_29586 timeGetter + f Z field_29591 stopping + f Lnet/minecraft/class_6400; field_33892 samplerSource + f Ljava/util/function/Consumer; field_29585 dumpConsumer + f Ljava/util/Map; field_33891 deviations + f Lnet/minecraft/class_3693; field_29590 profiler + f I field_29589 ticks + f J field_29588 endTime + f Lnet/minecraft/class_4757; field_29581 timeTracker + m (Lnet/minecraft/class_3696;)V method_34763 dump + p 1 result + m (Lnet/minecraft/class_6400;Ljava/util/function/LongSupplier;Ljava/util/concurrent/Executor;Lnet/minecraft/class_5971;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V + p 2 timeGetter + p 3 dumpExecutor + p 1 samplerSource + p 6 dumpConsumer + p 4 dumper + p 5 resultConsumer + m (Ljava/util/function/Consumer;)V method_35762 setGlobalDumpConsumer + p 0 consumer + m ()V method_34762 checkState + m (Ljava/util/Collection;)V method_41319 forceStop + p 1 samplers + m (Lnet/minecraft/class_6400;Ljava/util/function/LongSupplier;Ljava/util/concurrent/Executor;Lnet/minecraft/class_5971;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)Lnet/minecraft/class_5961; method_37191 of + p 4 resultConsumer + p 5 dumpConsumer + p 2 dumpExecutor + p 3 dumper + p 0 source + p 1 timeGetter + m (Lnet/minecraft/class_5965;)Ljava/util/List; method_37190 method_37190 + p 0 s +c net/minecraft/class_4625 net/minecraft/world/gen/feature/HugeMushroomFeature + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;ILnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_4635;)V method_23375 generateCap + p 1 world + p 2 random + p 3 start + p 4 y + p 5 mutable + p 6 config + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_4635;ILnet/minecraft/class_2338$class_2339;)V method_23376 generateStem + p 1 world + p 6 mutablePos + p 4 config + p 5 height + p 2 random + p 3 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;ILnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_4635;)Z method_23374 canGenerate + p 3 height + p 4 mutablePos + p 5 config + p 1 world + p 2 pos + m (IIII)I method_23372 getCapSize + p 4 y + p 3 capSize + m (Lnet/minecraft/class_5819;)I method_23377 getHeight + p 1 random + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_2680;)V method_66481 generateStem + p 3 state + p 2 pos + p 1 world +c net/minecraft/class_4628 net/minecraft/world/gen/feature/RandomPatchFeature +c net/minecraft/class_711 net/minecraft/client/particle/SpellParticle + f Lnet/minecraft/class_4002; field_17870 spriteProvider + f F field_51440 defaultAlpha + f Lnet/minecraft/class_5819; field_3888 RANDOM + m ()Z method_37102 isInvisible + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_4002;)V + p 10 velocityY + p 8 velocityX + p 14 spriteProvider + p 12 velocityZ + p 2 x + p 1 world + p 6 z + p 4 y +c net/minecraft/class_711$class_713 net/minecraft/client/particle/SpellParticle$InstantFactory + f Lnet/minecraft/class_4002; field_17872 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_11979;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3097 createParticle +c net/minecraft/class_711$class_714 net/minecraft/client/particle/SpellParticle$EntityFactory + f Lnet/minecraft/class_4002; field_17873 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_9381;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3098 createParticle +c net/minecraft/class_711$class_715 net/minecraft/client/particle/SpellParticle$DefaultFactory + f Lnet/minecraft/class_4002; field_17874 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3099 createParticle +c net/minecraft/class_711$class_716 net/minecraft/client/particle/SpellParticle$WitchFactory + f Lnet/minecraft/class_4002; field_17875 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3100 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_5975 net/minecraft/unused/packageinfo/PackageInfo5975 +c net/minecraft/class_3312 net/minecraft/util/UserCache + f Ljava/util/concurrent/atomic/AtomicLong; field_25724 accessCount + f Z field_61163 offlineMode + f Ljava/io/File; field_14314 cacheFile + f Lcom/google/gson/Gson; field_14318 gson + f Lorg/slf4j/Logger; field_25805 LOGGER + f Ljava/util/Map; field_14310 byUuid + f Ljava/util/Map; field_14312 byName + f Lcom/mojang/authlib/GameProfileRepository; field_14315 profileRepository + f I field_29788 MAX_SAVED_ENTRIES + m (Lnet/minecraft/class_3312$class_3313;Ljava/text/DateFormat;)Lcom/google/gson/JsonElement; method_30165 entryToJson + p 1 dateFormat + p 0 entry + m ()J method_30169 incrementAndGetAccessCount + m (Lcom/google/gson/JsonElement;Ljava/text/DateFormat;)Ljava/util/Optional; method_30167 entryFromJson + p 1 dateFormat + p 0 json + m (Ljava/lang/String;)Ljava/util/Optional; method_53912 getOfflinePlayerProfile + m ()Ljava/text/DateFormat; method_30170 getDateFormat + m (Lcom/google/gson/JsonArray;Ljava/text/DateFormat;Lnet/minecraft/class_3312$class_3313;)V method_30166 method_30166 + p 2 entry + m (Ljava/text/DateFormat;Ljava/util/List;Lcom/google/gson/JsonElement;)V method_30168 method_30168 + p 2 json + m (I)Ljava/util/stream/Stream; method_14516 getLastAccessedEntries + p 1 limit + m (Lnet/minecraft/class_3312$class_3313;)V method_30164 add + p 1 entry + m (Lcom/mojang/authlib/GameProfileRepository;Ljava/io/File;)V + p 1 profileRepository + p 2 cacheFile + m (Lnet/minecraft/class_11560;)Lnet/minecraft/class_3312$class_3313; method_72368 addToCache + p 1 player + m ()Ljava/util/List; method_14517 load + m (Lcom/mojang/authlib/GameProfileRepository;Ljava/lang/String;)Ljava/util/Optional; method_14509 findProfileByName + p 1 repository +c net/minecraft/class_3312$class_3313 net/minecraft/util/UserCache$Entry + f Ljava/util/Date; field_14319 expirationDate + f Lnet/minecraft/class_11560; field_61164 player + f J field_25726 lastAccessed + m ()Ljava/util/Date; method_14520 getExpirationDate + m (J)V method_30171 setLastAccessed + p 1 lastAccessed + m ()J method_30172 getLastAccessed + m (Lnet/minecraft/class_11560;Ljava/util/Date;)V + p 1 player + p 2 expirationDate + m ()Lnet/minecraft/class_11560; method_72369 getPlayer +c net/minecraft/class_4643 net/minecraft/world/gen/feature/TreeFeatureConfig + f Lnet/minecraft/class_4651; field_29280 foliageProvider + f Lnet/minecraft/class_4651; field_21288 trunkProvider + f Lcom/mojang/serialization/Codec; field_24921 CODEC + f Lnet/minecraft/class_4647; field_24135 foliagePlacer + f Lnet/minecraft/class_5141; field_24136 trunkPlacer + f Z field_29281 forceDirt + f Z field_24138 ignoreVines + f Ljava/util/Optional; field_38767 rootPlacer + f Ljava/util/List; field_21290 decorators + f Lnet/minecraft/class_4651; field_29279 dirtProvider + f Lnet/minecraft/class_5201; field_24137 minimumSize + m (Lnet/minecraft/class_4643;)Ljava/util/List; method_34345 method_34345 + p 0 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28811 method_28811 + p 0 instance + m (Lnet/minecraft/class_4643;)Lnet/minecraft/class_5201; method_28814 method_28814 + p 0 config + m (Lnet/minecraft/class_4643;)Ljava/lang/Boolean; method_37261 method_37261 + p 0 config + m (Lnet/minecraft/class_4643;)Lnet/minecraft/class_5141; method_28818 method_28818 + p 0 config + m (Lnet/minecraft/class_4643;)Lnet/minecraft/class_4651; method_28819 method_28819 + p 0 config + m (Lnet/minecraft/class_4643;)Lnet/minecraft/class_4651; method_28817 method_28817 + p 0 config + m (Lnet/minecraft/class_4643;)Lnet/minecraft/class_4647; method_28816 method_28816 + p 0 config + m (Lnet/minecraft/class_4651;Lnet/minecraft/class_5141;Lnet/minecraft/class_4651;Lnet/minecraft/class_4647;Ljava/util/Optional;Lnet/minecraft/class_4651;Lnet/minecraft/class_5201;Ljava/util/List;ZZ)V + p 8 decorators + p 9 ignoreVines + p 6 dirtProvider + p 7 minimumSize + p 10 forceDirt + p 1 trunkProvider + p 4 foliagePlacer + p 5 rootPlacer + p 2 trunkPlacer + p 3 foliageProvider + m (Lnet/minecraft/class_4643;)Ljava/lang/Boolean; method_34344 method_34344 + p 0 config + m (Lnet/minecraft/class_4643;)Ljava/util/Optional; method_43164 method_43164 + p 0 config + m (Lnet/minecraft/class_4643;)Lnet/minecraft/class_4651; method_28815 method_28815 + p 0 config +c net/minecraft/class_4643$class_4644 net/minecraft/world/gen/feature/TreeFeatureConfig$Builder + f Lnet/minecraft/class_5201; field_24142 minimumSize + f Z field_29284 forceDirt + f Ljava/util/List; field_21294 decorators + f Lnet/minecraft/class_4651; field_29283 dirtProvider + f Lnet/minecraft/class_4651; field_29282 foliageProvider + f Ljava/util/Optional; field_38768 rootPlacer + f Lnet/minecraft/class_4647; field_24140 foliagePlacer + f Lnet/minecraft/class_4651; field_21292 trunkProvider + f Z field_24143 ignoreVines + f Lnet/minecraft/class_5141; field_24141 trunkPlacer + m (Ljava/util/List;)Lnet/minecraft/class_4643$class_4644; method_27376 decorators + p 1 decorators + m (Lnet/minecraft/class_4651;Lnet/minecraft/class_5141;Lnet/minecraft/class_4651;Lnet/minecraft/class_4647;Lnet/minecraft/class_5201;)V + p 5 minimumSize + p 4 foliagePlacer + p 3 foliageProvider + p 2 trunkPlacer + p 1 trunkProvider + m ()Lnet/minecraft/class_4643$class_4644; method_27374 ignoreVines + m (Lnet/minecraft/class_4651;Lnet/minecraft/class_5141;Lnet/minecraft/class_4651;Lnet/minecraft/class_4647;Ljava/util/Optional;Lnet/minecraft/class_5201;)V + p 6 minimumSize + p 2 trunkPlacer + p 3 foliageProvider + p 4 foliagePlacer + p 5 rootPlacer + p 1 trunkProvider + m ()Lnet/minecraft/class_4643; method_23445 build + m (Lnet/minecraft/class_4651;)Lnet/minecraft/class_4643$class_4644; method_34346 dirtProvider + p 1 dirtProvider + m ()Lnet/minecraft/class_4643$class_4644; method_34347 forceDirt +c net/minecraft/class_5974 net/minecraft/unused/packageinfo/PackageInfo5974 +c net/minecraft/class_4646 net/minecraft/world/gen/foliage/BlobFoliagePlacer + f Lcom/mojang/serialization/MapCodec; field_24927 CODEC + f I field_23752 height + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;I)V + p 2 offset + p 3 height + p 1 radius + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P3; method_28838 createCodec + p 0 builder + m (Lnet/minecraft/class_4646;)Ljava/lang/Integer; method_28837 method_28837 + p 0 placer + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28839 method_28839 + p 0 instance +c net/minecraft/class_5977 net/minecraft/unused/packageinfo/PackageInfo5977 +c net/minecraft/class_4645 net/minecraft/world/gen/foliage/AcaciaFoliagePlacer + f Lcom/mojang/serialization/MapCodec; field_24926 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28836 method_28836 + p 0 instance +c net/minecraft/class_5976 net/minecraft/unused/packageinfo/PackageInfo5976 +c net/minecraft/class_5971 net/minecraft/util/profiler/RecordDumper + f Ljava/lang/String; field_32677 METRICS_DIRECTORY + f Ljava/lang/String; field_33903 type + f Ljava/nio/file/Path; field_29616 DEBUG_PROFILING_DIRECTORY + f Lorg/slf4j/Logger; field_29618 LOGGER + f Ljava/lang/String; field_32678 DEVIATIONS_DIRECTORY + f Ljava/lang/String; field_32679 FILE_NAME + m (Lnet/minecraft/class_5949;Ljava/util/List;Ljava/nio/file/Path;)V method_37208 writeSamplersInType + p 3 directory + p 2 samplers + p 1 type + m (Ljava/nio/file/Path;Lnet/minecraft/class_5949;Ljava/util/List;)V method_37209 method_37209 + p 3 sampler + p 2 type + m (Ljava/util/Map;Ljava/nio/file/Path;)V method_37212 writeDeviations + p 1 deviations + p 2 deviationsDirectory + m (Ljava/util/Set;Ljava/nio/file/Path;)V method_34803 writeSamplers + p 1 samplers + p 2 directory + m (Ljava/time/format/DateTimeFormatter;Ljava/nio/file/Path;Lnet/minecraft/class_5965;Lnet/minecraft/class_5964;)V method_37210 method_37210 + p 3 deviation + m (Lnet/minecraft/class_3696;Ljava/nio/file/Path;)V method_34802 save + p 1 result + p 2 directory + m (Ljava/util/Set;Ljava/util/Map;Lnet/minecraft/class_3696;)Ljava/nio/file/Path; method_34807 createDump + p 1 samplers + p 2 deviations + p 3 result + m (Ljava/lang/String;)V + p 1 type + m (Ljava/time/format/DateTimeFormatter;Ljava/nio/file/Path;Lnet/minecraft/class_5965;Ljava/util/List;)V method_37211 method_37211 + p 3 sampleDeviations + p 2 sampler + m (ILnet/minecraft/class_5965$class_6398;)Ljava/lang/String; method_37207 method_37207 + p 1 data +c net/minecraft/class_3310 net/minecraft/world/gen/feature/EndSpikeFeature + f I field_31517 DISTANCE_FROM_ORIGIN + f Lcom/google/common/cache/LoadingCache; field_14309 CACHE + f I field_31516 COUNT + m (Lnet/minecraft/class_5281;)Ljava/util/List; method_14506 getSpikes + p 0 world + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_5819;Lnet/minecraft/class_3666;Lnet/minecraft/class_3310$class_3181;)V method_15888 generateSpike + p 3 config + p 4 spike + p 1 world + p 2 random +c net/minecraft/class_3310$class_3311 net/minecraft/world/gen/feature/EndSpikeFeature$SpikeCache + m (Ljava/lang/Object;)Ljava/lang/Object; load load + p 1 seed + m (Ljava/lang/Long;)Ljava/util/List; method_14507 load +c net/minecraft/class_3310$class_3181 net/minecraft/world/gen/feature/EndSpikeFeature$Spike + f Z field_13832 guarded + f I field_13836 centerX + f I field_13833 radius + f I field_13834 centerZ + f Lcom/mojang/serialization/Codec; field_24841 CODEC + f I field_13831 height + f Lnet/minecraft/class_238; field_13835 boundingBox + m ()Lnet/minecraft/class_238; method_13968 getBoundingBox + m ()Z method_13965 isGuarded + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28649 method_28649 + p 0 instance + m (Lnet/minecraft/class_2338;)Z method_13962 isInChunk + p 1 pos + m (IIIIZ)V + p 1 centerX + p 3 radius + p 2 centerZ + p 5 guarded + p 4 height + m ()I method_13963 getRadius + m (Lnet/minecraft/class_3310$class_3181;)Ljava/lang/Integer; method_28653 method_28653 + p 0 spike + m ()I method_13964 getHeight + m (Lnet/minecraft/class_3310$class_3181;)Ljava/lang/Boolean; method_28648 method_28648 + p 0 spike + m ()I method_13966 getCenterX + m (Lnet/minecraft/class_3310$class_3181;)Ljava/lang/Integer; method_28650 method_28650 + p 0 spike + m ()I method_13967 getCenterZ + m (Lnet/minecraft/class_3310$class_3181;)Ljava/lang/Integer; method_28652 method_28652 + p 0 spike + m (Lnet/minecraft/class_3310$class_3181;)Ljava/lang/Integer; method_28651 method_28651 + p 0 spike +c net/minecraft/class_4642 net/minecraft/world/gen/feature/SpringFeatureConfig + f I field_21286 holeCount + f Lnet/minecraft/class_6885; field_21287 validBlocks + f I field_21285 rockCount + f Z field_21284 requiresBlockBelow + f Lcom/mojang/serialization/Codec; field_24912 CODEC + f Lnet/minecraft/class_3610; field_21283 state + m (Lnet/minecraft/class_4642;)Lnet/minecraft/class_6885; method_28793 method_28793 + p 0 config + m (Lnet/minecraft/class_4642;)Ljava/lang/Integer; method_28795 method_28795 + p 0 config + m (Lnet/minecraft/class_4642;)Ljava/lang/Integer; method_28796 method_28796 + p 0 config + m (Lnet/minecraft/class_4642;)Lnet/minecraft/class_3610; method_28798 method_28798 + p 0 config + m (Lnet/minecraft/class_3610;ZIILnet/minecraft/class_6885;)V + p 2 requiresBlockBelow + p 3 rockCount + p 4 holeCount + p 5 validBlocks + p 1 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28794 method_28794 + p 0 instance + m (Lnet/minecraft/class_4642;)Ljava/lang/Boolean; method_28797 method_28797 + p 0 config +c net/minecraft/class_5973 net/minecraft/util/math/MathConstants + f F field_29658 PI + f F field_29659 DEGREES_PER_RADIAN + f F field_29660 RADIANS_PER_DEGREE + f F field_29661 EPSILON +c net/minecraft/class_3309 net/minecraft/server/BanEntry + f Ljava/lang/String; field_29787 FOREVER + f Ljava/util/Date; field_14306 creationDate + f Ljava/util/Date; field_14305 expiryDate + f Ljava/text/SimpleDateFormat; field_14308 DATE_FORMAT + f Ljava/lang/String; field_14307 reason + f Ljava/lang/String; field_14304 source + m ()Ljava/lang/String; method_14501 getSource + m ()Ljava/util/Date; method_14502 getExpiryDate + m ()Ljava/lang/String; method_14503 getReason + m ()Lnet/minecraft/class_2561; method_74541 getReasonText + m ()Lnet/minecraft/class_2561; method_14504 toText + m ()Ljava/util/Date; method_34885 getCreationDate + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/lang/Object;Ljava/util/Date;Ljava/lang/String;Ljava/util/Date;Ljava/lang/String;)V + p 5 reason + p 4 expiryDate + p 3 source + p 2 creationDate + p 1 key + m (Ljava/lang/Object;Lcom/google/gson/JsonObject;)V + p 1 key + p 2 json +c net/minecraft/class_4638 net/minecraft/world/gen/feature/RandomPatchFeatureConfig + f Lcom/mojang/serialization/Codec; field_24902 CODEC + f I comp_151 ySpread + f I comp_150 xzSpread + f I comp_149 tries + f Lnet/minecraft/class_6880; comp_155 feature + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38912 method_38912 + p 0 instance + m ()Lnet/minecraft/class_6880; comp_155 feature + m ()I comp_150 xzSpread + m ()I comp_151 ySpread + m ()I comp_149 tries + m (IIILnet/minecraft/class_6880;)V + p 1 tries + p 2 xzSpread + p 3 ySpread + p 4 feature +c net/minecraft/class_707 net/minecraft/client/particle/ParticleFactory + m (Lnet/minecraft/class_2394;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3090 createParticle + p 15 random + p 1 parameters + p 2 world + p 3 x + p 5 y + p 7 z + p 9 velocityX + p 11 velocityY + p 13 velocityZ +c net/minecraft/class_707$class_8187 net/minecraft/client/particle/ParticleFactory$BlockLeakParticleFactory + m (Lnet/minecraft/class_2394;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_3940; method_74291 createParticle + p 1 parameters + p 2 world + p 3 x + p 5 y + p 7 z + p 9 velocityX + p 11 velocityY + p 13 velocityZ +c net/minecraft/class_704 net/minecraft/client/particle/CloudParticle + f Lnet/minecraft/class_4002; field_17862 spriteProvider + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_4002;)V + p 1 world + p 2 x + p 14 spriteProvider + p 12 velocityZ + p 10 velocityY + p 8 velocityX + p 6 z + p 4 y +c net/minecraft/class_704$class_705 net/minecraft/client/particle/CloudParticle$CloudFactory + f Lnet/minecraft/class_4002; field_17863 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3088 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_704$class_706 net/minecraft/client/particle/CloudParticle$SneezeFactory + f Lnet/minecraft/class_4002; field_17864 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3089 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_709 net/minecraft/client/particle/PortalParticle + f D field_3885 startY + f D field_3886 startX + f D field_3884 startZ +c net/minecraft/class_709$class_710 net/minecraft/client/particle/PortalParticle$Factory + f Lnet/minecraft/class_4002; field_17865 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3094 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_708 net/minecraft/client/particle/AnimatedParticle + f Z field_3880 changesColor + f F field_3877 targetGreen + f F field_3878 targetRed + f Lnet/minecraft/class_4002; field_17866 spriteProvider + f F field_3876 targetBlue + m (I)V method_3093 setColor + p 1 rgbHex + m (I)V method_3092 setTargetColor + p 1 rgbHex + m (Lnet/minecraft/class_638;DDDLnet/minecraft/class_4002;F)V + p 9 upwardsAcceleration + p 8 spriteProvider + p 6 z + p 4 y + p 2 x + p 1 world +c net/minecraft/class_5944 net/minecraft/client/gl/ShaderProgram + c Represents a shader program. Also known as a program object that can be\ncreated with {@code glCreateProgram}.\n\n

Warning: This class is referred to as a shader in\nstrings. However, this does NOT represent a shader object that can be\ncreated with {@code glCreateShader}. {@link CompiledShader} is what\nrepresents a shader object.\n\n@see \nGLSL Object - OpenGL Wiki (Program objects) + f Lorg/slf4j/Logger; field_58041 LOGGER + f Ljava/util/Map; field_53841 uniformsByName + f I field_29493 glRef + f Ljava/util/Set; field_57863 predefinedUniforms + f Ljava/lang/String; field_57865 debugLabel + f Lnet/minecraft/class_5944; field_57864 INVALID + m ()I method_1270 getGlRef + m (Lnet/minecraft/class_10141;Lnet/minecraft/class_10141;Lcom/mojang/blaze3d/vertex/VertexFormat;Ljava/lang/String;)Lnet/minecraft/class_5944; method_62896 create + p 3 name + p 2 format + p 1 fragmentShader + p 0 vertexShader + m (ILjava/lang/String;)V + p 1 glRef + p 2 debugLabel + m (Ljava/util/List;Ljava/util/List;)V method_62900 set + p 2 samplers + p 1 uniforms + m ()Ljava/lang/String; method_68404 getDebugLabel + m ()Ljava/util/Map; method_68406 getUniforms + m (Ljava/lang/String;)Lnet/minecraft/class_284; method_34582 getUniform + p 1 name +c net/minecraft/class_4608 net/minecraft/client/render/OverlayTexture + f Lnet/minecraft/class_1043; field_21013 texture + f I field_21444 DEFAULT_UV + m (Z)I method_23212 getV + p 0 hurt + m (F)I method_23210 getU + p 0 whiteOverlayProgress + m (FZ)I method_23624 getUv + p 0 whiteOverlayProgress + p 1 hurt + m (II)I method_23625 packUv + p 1 v + p 0 u + m ()Lcom/mojang/blaze3d/textures/GpuTextureView; method_76037 getTextureView +c net/minecraft/class_4607 net/minecraft/client/render/entity/feature/EnergySwirlOverlayFeatureRenderer + m (Lnet/minecraft/class_10017;)Z method_62591 shouldRender + p 1 state + m ()Lnet/minecraft/class_583; method_23203 getEnergySwirlModel + m (F)F method_23202 getEnergySwirlX + p 1 partialAge + m ()Lnet/minecraft/class_2960; method_23201 getEnergySwirlTexture +c com/mojang/blaze3d/buffers/GpuBuffer com/mojang/blaze3d/buffers/GpuBuffer + m (IJ)V + p 2 size + p 1 usage + m (JJ)Lcom/mojang/blaze3d/buffers/GpuBufferSlice; slice slice + p 1 offset + p 3 length +c com/mojang/blaze3d/buffers/GpuBuffer$class_12113 com/mojang/blaze3d/buffers/GpuBuffer$Usage +c net/minecraft/class_4609 net/minecraft/util/math/AffineTransformations + f Ljava/util/Map; field_21021 DIRECTION_ROTATIONS + f Ljava/util/Map; field_21022 INVERTED_DIRECTION_ROTATIONS + m (Lnet/minecraft/class_4590;Lnet/minecraft/class_2350;)Lnet/minecraft/class_4590; method_68069 getTransformed + m (Lnet/minecraft/class_4590;)Lnet/minecraft/class_4590; method_23220 setupUvLock + p 0 transformation + m (Lnet/minecraft/class_4590;)Lnet/minecraft/class_4590; method_35829 method_35829 + p 0 transformation +c net/minecraft/class_4604 net/minecraft/client/render/Frustum + f Lorg/joml/FrustumIntersection; field_40823 frustumIntersection + f Lorg/joml/Vector4f; field_34821 recession + c The vector corresponding to the direction toward the far plane of the frustum. + f I field_34820 RECESSION_SCALE + f D field_20996 y + f D field_20997 z + f D field_20995 x + f Lorg/joml/Matrix4f; field_40824 positionProjectionMatrix + m (I)Lnet/minecraft/class_4604; method_38557 coverBoxAroundSetPosition + c Moves the frustum backwards until it entirely covers the cell containing the\ncurrent position in a cubic lattice with cell size {@code boxSize}. + p 1 boxSize + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;)V method_23092 init + c @implNote The upper-left 3x3 matrix of {@code positionMatrix * projectionMatrix}\nshould be orthogonal for {@link Frustum#recession} to be set to a meaningful value. + p 2 projectionMatrix + p 1 positionMatrix + m ()[Lorg/joml/Vector4f; method_62342 getBoundaryPoints + m ()D method_62345 getZ + m ()D method_62344 getY + m (F)Lnet/minecraft/class_4604; method_74403 offset + p 1 distance + m ()D method_62343 getX + m (DDDDDD)I method_23089 intersectAab + p 11 maxZ + p 7 maxX + p 9 maxY + p 3 minY + p 5 minZ + p 1 minX + m (Lnet/minecraft/class_3341;)I method_62978 intersectAab + p 1 box + m (DDD)V method_23088 setPosition + p 3 cameraY + p 5 cameraZ + p 1 cameraX + m (Lnet/minecraft/class_4604;)V + p 1 frustum + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;)V + p 1 positionMatrix + p 2 projectionMatrix + m (DDD)Z method_74404 intersectPoint + p 3 y + p 5 z + p 1 x + m (Lnet/minecraft/class_238;)Z method_23093 isVisible + p 1 box +c net/minecraft/class_5934 net/minecraft/world/gen/placementmodifier/SurfaceWaterDepthFilterPlacementModifier + f I field_29324 maxWaterDepth + f Lcom/mojang/serialization/MapCodec; field_29323 MODIFIER_CODEC + m (I)V + p 1 maxWaterDepth + m (I)Lnet/minecraft/class_5934; method_39662 of + p 0 maxWaterDepth + m (Lnet/minecraft/class_5934;)Ljava/lang/Integer; method_34387 method_34387 + p 0 placementModifier + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34386 method_34386 + p 0 instance +c net/minecraft/class_4603 net/minecraft/client/gui/hud/InGameOverlayRenderer + f Lnet/minecraft/class_2960; field_20986 UNDERWATER_TEXTURE + f Lnet/minecraft/class_11701; field_61744 spriteHolder + f Lnet/minecraft/class_310; field_59970 client + f Lnet/minecraft/class_1799; field_59972 floatingItem + f F field_59975 floatingItemOffsetY + f F field_59974 floatingItemOffsetX + f Lnet/minecraft/class_4597; field_59971 vertexConsumers + f I field_59973 floatingItemTimer + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_5819;)V method_70938 setFloatingItem + p 1 stack + p 2 random + m (Lnet/minecraft/class_310;Lnet/minecraft/class_11701;Lnet/minecraft/class_4597;)V + p 1 client + p 2 spriteHolder + p 3 vertexConsumers + m (Lnet/minecraft/class_1058;Lnet/minecraft/class_4587;Lnet/minecraft/class_4597;)V method_23068 renderInWallOverlay + p 2 vertexConsumers + p 1 matrices + p 0 sprite + m (Lnet/minecraft/class_310;Lnet/minecraft/class_4587;Lnet/minecraft/class_4597;)V method_23069 renderUnderwaterOverlay + p 0 client + p 1 matrices + p 2 vertexConsumers + m (Lnet/minecraft/class_1657;)Lnet/minecraft/class_2680; method_24225 getInWallBlockState + p 0 player + m ()V method_70937 tickFloatingItemTimer + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4597;Lnet/minecraft/class_1058;)V method_23070 renderFireOverlay + p 1 vertexConsumers + p 2 sprite + p 0 matrices + m ()V method_70940 clearFloatingItem + m (ZFLnet/minecraft/class_11659;)V method_23067 renderOverlays + p 2 tickProgress + p 3 queue + p 1 sleeping + m (Lnet/minecraft/class_4587;FLnet/minecraft/class_11659;)V method_70939 renderFloatingItem + p 2 tickProgress + p 3 queue + p 1 matrices +c net/minecraft/class_4606 net/minecraft/client/render/entity/feature/EyesFeatureRenderer + m ()Lnet/minecraft/class_1921; method_23193 getEyesTexture +c net/minecraft/class_5953 net/minecraft/item/HoneycombItem + f Ljava/util/function/Supplier; field_29560 UNWAXED_TO_WAXED_BLOCKS + f Ljava/util/function/Supplier; field_29561 WAXED_TO_UNWAXED_BLOCKS + f Ljava/lang/String; field_64496 WAXED_COPPER_DOOR_GROUP + f Ljava/lang/String; field_64499 WAXED_COPPER_CHEST_GROUP + f Ljava/lang/String; field_64500 WAXED_LIGHTNING_ROD_GROUP + f Ljava/lang/String; field_64498 WAXED_COPPER_GOLEM_STATUE_GROUP + f Ljava/lang/String; field_64497 WAXED_COPPER_TRAPDOOR_GROUP + f Ljava/lang/String; field_64503 WAXED_COPPER_LANTERN_GROUP + f Ljava/lang/String; field_64504 WAXED_COPPER_BLOCK_GROUP + f Ljava/lang/String; field_64501 WAXED_COPPER_BAR_GROUP + f Lcom/google/common/collect/ImmutableMap; field_64495 WAXED_RECIPE_GROUPS + f Ljava/lang/String; field_64502 WAXED_COPPER_CHAIN_GROUP + m (Lnet/minecraft/class_2680;)Ljava/util/Optional; method_34720 getWaxedState + p 0 state + m (Lnet/minecraft/class_1838;Lnet/minecraft/class_2338;Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)Lnet/minecraft/class_1269; method_34719 method_34719 + p 4 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2680; method_34721 method_34721 + p 1 block +c net/minecraft/class_4622 net/minecraft/block/HoneyBlock + f Lnet/minecraft/class_265; field_21213 SHAPE + f I field_31104 TICKS_PER_SECOND + f Lcom/mojang/serialization/MapCodec; field_46369 CODEC + m (Lnet/minecraft/class_1297;)V method_24175 addRegularParticles + p 0 entity + m (Lnet/minecraft/class_1297;)Z method_24179 hasHoneyBlockEffects + p 0 entity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;)V method_24177 addCollisionEffects + p 2 entity + p 1 world + m (Lnet/minecraft/class_1297;)V method_24180 updateSlidingVelocity + p 1 entity + m (Lnet/minecraft/class_1297;I)V method_23355 addParticles + p 1 count + p 0 entity + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;)Z method_23356 isSliding + p 1 pos + p 2 entity + m (D)D method_65067 getOldVelocityY + m (D)D method_65068 getNewVelocityY + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;)V method_24176 triggerAdvancement + p 2 pos + p 1 entity + m (Lnet/minecraft/class_1297;)V method_24178 addRichParticles + p 0 entity +c net/minecraft/class_5952 net/minecraft/util/thread/SampleableExecutor + m ()Ljava/util/List; method_34705 createSamplers +c net/minecraft/class_5955 net/minecraft/block/Oxidizable + f Ljava/util/function/Supplier; field_29564 OXIDATION_LEVEL_INCREASES + f Ljava/util/function/Supplier; field_29565 OXIDATION_LEVEL_DECREASES + m (Lnet/minecraft/class_2680;)Ljava/util/Optional; method_34735 getDecreasedOxidationState + p 0 state + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_2248; method_34734 getUnaffectedOxidationBlock + p 0 block + m (Lnet/minecraft/class_2248;)Ljava/util/Optional; method_34737 getIncreasedOxidationBlock + p 0 block + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2680; method_34733 method_34733 + p 1 block + m (Lnet/minecraft/class_2248;)Ljava/util/Optional; method_34732 getDecreasedOxidationBlock + p 0 block + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2680; method_34736 method_34736 + p 1 block + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_34738 getUnaffectedOxidationState + p 0 state +c net/minecraft/class_5955$class_5811 net/minecraft/block/Oxidizable$OxidationLevel + f Lnet/minecraft/class_9139; field_61432 PACKET_CODEC + f Ljava/lang/String; field_46494 id + f Lcom/mojang/serialization/Codec; field_46493 CODEC + f Ljava/util/function/IntFunction; field_61431 indexMapper + f Lnet/minecraft/class_5955$class_5811; field_28707 OXIDIZED + f Lnet/minecraft/class_5955$class_5811; field_28705 EXPOSED + f Lnet/minecraft/class_5955$class_5811; field_28706 WEATHERED + f Lnet/minecraft/class_5955$class_5811; field_28704 UNAFFECTED + m ()Lnet/minecraft/class_5955$class_5811; method_72644 getDecreased + m ()Lnet/minecraft/class_5955$class_5811; method_72643 getIncreased + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_4623 net/minecraft/util/math/Boxes + m (Lnet/minecraft/class_238;Lnet/minecraft/class_2350;D)Lnet/minecraft/class_238; method_23362 stretch + p 1 direction + p 0 box + p 2 length +c net/minecraft/class_5954 net/minecraft/block/RootedDirtBlock + f Lcom/mojang/serialization/MapCodec; field_46428 CODEC +c net/minecraft/class_4620 net/minecraft/datafixer/fix/PointOfInterestFix + f Ljava/lang/String; field_39402 name + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44188 fixRecord + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44187 fixRecords + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28246 method_28246 + p 1 sections + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_28243 method_28243 + p 1 ops + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_44186 update + p 1 dynamics + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 2 name + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Lcom/mojang/serialization/Dynamic; method_44185 method_44185 + p 2 dynamics + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_23299 fixSections + p 1 dynamic + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_23302 method_23302 + p 1 pair + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_23305 method_23305 + p 1 pair +c net/minecraft/class_5950 net/minecraft/util/thread/ExecutorSampling + f Lnet/minecraft/class_5950; field_29555 INSTANCE + f Ljava/util/WeakHashMap; field_29556 activeExecutors + m (Lnet/minecraft/class_5952;)V method_34702 add + p 1 executor + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_5965; method_37179 method_37179 + p 0 entry + m (Lnet/minecraft/class_5952;)Ljava/util/stream/Stream; method_37181 method_37181 + p 0 executor + m ()Ljava/util/List; method_37178 createSamplers + m (Ljava/util/Map;)Ljava/util/List; method_37180 mergeSimilarSamplers + p 0 samplers +c net/minecraft/class_5950$class_6399 net/minecraft/util/thread/ExecutorSampling$MergedSampler + f Ljava/util/List; field_33890 delegates + m (Ljava/util/List;)D method_37186 averageRetrievers + p 0 samplers + m (Ljava/lang/String;Ljava/util/List;)V + p 2 delegates + p 1 id + m (Ljava/util/List;)Lnet/minecraft/class_5965$class_5967; method_37183 combineDeviationCheckers + p 0 delegates + m (DLnet/minecraft/class_5965;)Z method_37182 method_37182 + p 2 sampler + m (Ljava/util/List;D)Z method_37184 method_37184 + p 1 value + m (Ljava/util/List;)V method_37185 start + p 0 samplers +c net/minecraft/class_5949 net/minecraft/util/profiler/SampleType + f Ljava/lang/String; field_29553 name + f Lnet/minecraft/class_5949; field_33878 JVM + f Lnet/minecraft/class_5949; field_33877 TICK_LOOP + f Lnet/minecraft/class_5949; field_33879 CHUNK_RENDERING + f Lnet/minecraft/class_5949; field_33881 CPU + f Lnet/minecraft/class_5949; field_33880 CHUNK_RENDERING_DISPATCHING + f Lnet/minecraft/class_5949; field_33876 PATH_FINDING + f Lnet/minecraft/class_5949; field_37416 GPU + f Lnet/minecraft/class_5949; field_29551 EVENT_LOOPS + f Lnet/minecraft/class_5949; field_54068 CONSECUTIVE_EXECUTORS + m ()Ljava/lang/String; method_34700 getName + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_4618 net/minecraft/client/render/OutlineVertexConsumerProvider + f Lnet/minecraft/class_4597$class_4598; field_21059 plainDrawer + f I field_61740 OUTLINE_COLOR + m (I)V method_23286 setColor + p 1 red + m ()V method_23285 draw +c net/minecraft/class_4618$class_4586 net/minecraft/client/render/OutlineVertexConsumerProvider$OutlineVertexConsumer + f Lnet/minecraft/class_4588; comp_2851 delegate + f I comp_2852 color + m ()Lnet/minecraft/class_4588; comp_2851 delegate + m ()I comp_2852 color + m (Lnet/minecraft/class_4588;I)V + p 1 delegate + p 2 color +c net/minecraft/class_5946 net/minecraft/datafixer/fix/ArrowPickupFix + c A fix that automatically renames the {@code player} byte in arrow data to\n{@code pickup}, if there is not any existing {@code pickup} data.\n\n

This is known as {@index AbstractArrowPickupFix} in the literal\nstring, though this fix is not abstract. + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_34687 method_34687 + p 1 t + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_34686 update + c When the {@code pickup} NBT byte of an arrow's data is absent, sets it\nfrom the arrow's {@code player} NBT byte. + p 0 arrowData + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_34684 update + p 1 typed + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; method_34685 updateEntity + p 3 updater + p 1 typed + p 2 choiceName +c net/minecraft/class_4615 net/minecraft/nbt/NbtTypes + c A class holding known NBT types. + f [Lnet/minecraft/class_4614; field_21048 VALUES + m (I)Lnet/minecraft/class_4614; method_23265 byId + c Gets the associated {@linkplain NbtType NBT type} for a given {@code id}.\n

\nThis method does not support id aliases.\n\n@return the NBT type, or {@linkplain NbtType#createInvalid an invalid type} if there is no type with the given {@code id} + p 0 id +c net/minecraft/class_4614 net/minecraft/nbt/NbtType + c Represents an NBT type. + m (Ljava/io/DataInput;Lnet/minecraft/class_6836;Lnet/minecraft/class_2505;)V method_39877 accept + p 1 input + p 3 tracker + p 2 visitor + m (Ljava/io/DataInput;Lnet/minecraft/class_6836;Lnet/minecraft/class_2505;)Lnet/minecraft/class_6836$class_6838; method_39852 doAccept + p 2 visitor + p 3 tracker + p 1 input + m ()Ljava/lang/String; method_23261 getCommandFeedbackName + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2520; method_23262 read + p 2 tracker + p 1 input + m (Ljava/io/DataInput;ILnet/minecraft/class_2505;)V method_39854 skip + p 3 tracker + p 2 count + p 1 input + m ()Ljava/lang/String; method_23259 getCrashReportName + m (I)Lnet/minecraft/class_4614; method_23260 createInvalid + c {@return an invalid NBT type}\n\n

Operations with an invalid NBT type always throws {@link IOException}.\n\n@see NbtTypes#byId(int) + p 0 type + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)V method_39851 skip + p 1 input + p 2 tracker +c net/minecraft/class_4614$class_6840 net/minecraft/nbt/NbtType$OfVariableSize + c Represents an NBT type whose elements can have a variable size, such as lists. +c net/minecraft/class_4614$1 net/minecraft/nbt/NbtType$1 + m (Ljava/io/DataInput;Lnet/minecraft/class_2505;)Lnet/minecraft/class_2491; method_23264 read + m ()Ljava/io/IOException; method_39878 createException +c net/minecraft/class_4614$class_6839 net/minecraft/nbt/NbtType$OfFixedSize + c Represents an NBT type whose elements have a fixed size, such as primitives. + m ()I method_39853 getSizeInBytes + c {@return the size of the elements in bytes} +c net/minecraft/class_5945 net/minecraft/particle/ParticleUtil + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Lnet/minecraft/class_2394;)V method_49099 spawnParticle + p 2 random + p 3 effect + p 0 world + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2394;Lnet/minecraft/class_6017;)V method_34682 spawnParticle + p 1 pos + p 2 effect + p 3 count + p 0 world + m (Lnet/minecraft/class_2350$class_2351;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;DLnet/minecraft/class_2394;Lnet/minecraft/class_6019;)V method_34683 spawnParticle + p 3 variance + p 2 pos + p 1 world + p 0 axis + p 6 range + p 5 effect + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;ILnet/minecraft/class_2394;)V method_55636 spawnParticlesAround + p 3 effect + p 2 count + p 1 pos + p 0 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;IDDZLnet/minecraft/class_2394;)V method_55635 spawnParticlesAround + p 0 world + p 1 pos + p 7 force + p 8 effect + p 2 count + p 3 horizontalOffset + p 5 verticalOffset + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_243; method_41306 getRandomVelocity + p 0 random + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2394;Lnet/minecraft/class_243;D)V method_34681 spawnParticle + p 5 offsetMultiplier + p 3 effect + p 4 velocity + p 1 pos + p 2 direction + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2394;Lnet/minecraft/class_6017;Lnet/minecraft/class_2350;Ljava/util/function/Supplier;D)V method_41305 spawnParticles + p 2 effect + p 1 pos + p 0 world + p 6 offsetMultiplier + p 5 velocity + p 4 direction + p 3 count + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;I)V method_58595 spawnSmashAttackParticles + p 2 count + p 1 pos + p 0 world +c net/minecraft/class_4617 net/minecraft/util/NameGenerator + f [Ljava/lang/String; field_21051 SUFFIX + f [Ljava/lang/String; field_21050 PREFIX + m (Lnet/minecraft/class_1297;)Ljava/lang/String; method_36154 name + p 0 entity + m (Ljava/util/UUID;)Ljava/lang/String; method_23267 name + p 0 uuid + m (Lnet/minecraft/class_5819;[Ljava/lang/String;)Ljava/lang/String; method_23266 getRandom + p 0 random + p 1 options + m (Ljava/util/UUID;)Lnet/minecraft/class_5819; method_23268 randomFromUuid + p 0 uuid +c net/minecraft/class_4616 net/minecraft/text/StorageNbtDataSource + f Lcom/mojang/serialization/MapCodec; field_46631 CODEC + f Lnet/minecraft/class_2960; comp_738 id + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54235 method_54235 + p 0 instance + m ()Lnet/minecraft/class_2960; comp_738 id + m (Lnet/minecraft/class_2960;)V + p 1 id +c net/minecraft/class_5947 net/minecraft/datafixer/fix/StructureFeatureChildrenPoolElementFix + c A fix that updates a few children pool element features with complex\nconfigurations to simple ID strings within structure features.\n\n

This is known as {@index SavedDataFeaturePoolElementFix} in the\nliteral strings. + f Ljava/util/regex/Pattern; field_29545 ARRAY_INDEX_PATTERN + f Ljava/util/Set; field_29547 TARGET_FEATURES + f Ljava/util/Set; field_29546 TARGET_CHILDREN_IDS + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;[Ljava/lang/String;)Lcom/mojang/serialization/OptionalDynamic; method_34689 findValueAt + p 0 root + p 1 pathParts + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_34693 updateChildren + p 0 children + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_34692 updateStructureFeature + p 0 structureFeature + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; method_34690 updateFeature + p 0 type + p 3 stateProviderStateName + p 4 stateProviderFirstEntryName + p 1 name + p 2 stateProviderType + p 5 foliagePlacerType + p 6 leavesProviderStateName + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_34695 method_34695 + p 0 poolElement + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_34694 method_34694 + p 0 child + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_34688 updatePoolElementFeature + p 0 feature + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_34691 mapChildren + p 0 children +c net/minecraft/class_8199 net/minecraft/command/argument/HeightmapArgumentType + f Lcom/mojang/serialization/Codec; field_42994 HEIGHTMAP_CODEC + m (Ljava/lang/String;)Ljava/lang/String; method_49547 method_49547 + p 0 name + m ()Lnet/minecraft/class_8199; method_49542 heightmap + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2902$class_2903; method_49544 getHeightmap + p 1 id + p 0 context + m ()[Lnet/minecraft/class_2902$class_2903; method_49546 getHeightmapTypes +c net/minecraft/class_8197 net/minecraft/world/biome/source/MultiNoiseBiomeSourceParameterList + f Lnet/minecraft/class_8197$class_5305; field_42988 preset + f Lcom/mojang/serialization/Codec; field_42987 REGISTRY_CODEC + f Lcom/mojang/serialization/Codec; field_42986 CODEC + f Lnet/minecraft/class_6544$class_6547; field_42989 entries + m ()Ljava/util/Map; method_49512 getPresetToEntriesMap + m (Lnet/minecraft/class_8197$class_5305;)Lnet/minecraft/class_6544$class_6547; method_49509 method_49509 + p 0 preset + m (Lnet/minecraft/class_8197$class_5305;)Lnet/minecraft/class_8197$class_5305; method_49513 method_49513 + p 0 preset + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_5321; method_49508 method_49508 + p 0 biomeKey + m (Lnet/minecraft/class_8197$class_5305;Lnet/minecraft/class_7871;)V + p 2 biomeLookup + p 1 preset + m ()Lnet/minecraft/class_6544$class_6547; method_49507 getEntries + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49511 method_49511 + p 0 instance +c net/minecraft/class_8197$class_5305 net/minecraft/world/biome/source/MultiNoiseBiomeSourceParameterList$Preset + f Lcom/mojang/serialization/Codec; field_42990 CODEC + f Lnet/minecraft/class_8197$class_5305$class_8165; comp_1310 biomeSourceFunction + f Ljava/util/Map; field_24724 BY_IDENTIFIER + f Lnet/minecraft/class_2960; comp_1309 id + f Lnet/minecraft/class_8197$class_5305; field_24723 NETHER + f Lnet/minecraft/class_8197$class_5305; field_34499 OVERWORLD + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_8197$class_5305$class_8165;)V + p 1 id + p 2 biomeSourceFunction + m ()Ljava/util/stream/Stream; method_49514 biomeStream + m (Lnet/minecraft/class_8197$class_5305;)Lcom/mojang/serialization/DataResult; method_49517 method_49517 + p 0 preset + m (Lcom/google/common/collect/ImmutableList$Builder;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Pair;)V method_49192 method_49192 + p 2 pair + m ()Lnet/minecraft/class_8197$class_5305$class_8165; comp_1310 biomeSourceFunction + m (Ljava/util/function/Function;)Lnet/minecraft/class_6544$class_6547; method_49193 getOverworldEntries + p 0 biomeEntryGetter + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_5321; method_49515 method_49515 + p 0 biomeKey + m (Lnet/minecraft/class_8197$class_5305;)Lnet/minecraft/class_8197$class_5305; method_49519 method_49519 + p 0 preset + m ()Lnet/minecraft/class_2960; comp_1309 id + m (Lnet/minecraft/class_2960;)Lcom/mojang/serialization/DataResult; method_49516 method_49516 + p 0 id +c net/minecraft/class_8197$class_5305$class_8165 net/minecraft/world/biome/source/MultiNoiseBiomeSourceParameterList$Preset$BiomeSourceFunction + m (Ljava/util/function/Function;)Lnet/minecraft/class_6544$class_6547; apply apply + p 1 biomeEntryGetter +c net/minecraft/class_8198 net/minecraft/world/biome/source/MultiNoiseBiomeSourceParameterLists + f Lnet/minecraft/class_5321; field_42992 OVERWORLD + f Lnet/minecraft/class_5321; field_42991 NETHER + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_49521 of + p 0 id + m (Lnet/minecraft/class_7891;)V method_49522 bootstrap + p 0 registry +c net/minecraft/class_5922 net/minecraft/world/gen/feature/VegetationPatchFeature + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5927;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Z method_34315 generateVegetationFeature + p 5 pos + p 2 config + p 1 world + p 4 random + p 3 generator + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5927;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Ljava/util/function/Predicate;II)Ljava/util/Set; method_34316 placeGroundAndGetPositions + p 1 world + p 4 pos + p 5 replaceable + p 2 config + p 3 random + p 6 radiusX + p 7 radiusZ + m (Lnet/minecraft/class_5821;Lnet/minecraft/class_5281;Lnet/minecraft/class_5927;Lnet/minecraft/class_5819;Ljava/util/Set;II)V method_34318 generateVegetation + p 7 radiusZ + p 4 random + p 3 config + p 6 radiusX + p 5 positions + p 2 world + p 1 context + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5927;Ljava/util/function/Predicate;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338$class_2339;I)Z method_34317 placeGround + p 6 depth + p 5 pos + p 4 random + p 3 replaceable + p 2 config + p 1 world + m (Lnet/minecraft/class_2680;)Z method_34321 method_34321 + p 0 state + m (Lnet/minecraft/class_5927;Lnet/minecraft/class_2680;)Z method_40164 method_40164 + p 1 state +c net/minecraft/class_5921 net/minecraft/world/gen/feature/RootSystemFeature + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5926;Lnet/minecraft/class_2338;)Z method_34310 hasSpaceForTree + p 2 pos + p 1 config + p 0 world + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5926;Lnet/minecraft/class_5819;IILnet/minecraft/class_2338$class_2339;)V method_34311 generateRoots + p 2 random + p 1 config + p 0 world + p 5 mutablePos + p 4 z + p 3 x + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2794;Lnet/minecraft/class_5926;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_2338;)Z method_34308 generateTreeAndRoots + p 2 config + p 1 generator + p 0 world + p 5 pos + p 4 mutablePos + p 3 random + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5926;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338$class_2339;)V method_34312 generateHangingRoots + p 4 mutablePos + p 0 world + p 1 config + p 2 random + p 3 pos + m (Lnet/minecraft/class_2338;ILnet/minecraft/class_5281;Lnet/minecraft/class_5926;Lnet/minecraft/class_5819;)V method_39918 generateRootsColumn + p 4 random + p 0 pos + p 1 maxY + p 2 world + p 3 config + m (Lnet/minecraft/class_2680;II)Z method_36419 isAirOrWater + p 1 height + p 2 allowedVerticalWaterForTree + p 0 state + m (Lnet/minecraft/class_5926;Lnet/minecraft/class_2680;)Z method_34307 method_34307 + p 1 state +c net/minecraft/class_5916 net/minecraft/screen/ScreenHandlerSyncHandler + m (Lnet/minecraft/class_1703;Lnet/minecraft/class_1799;)V method_34262 updateCursorStack + p 1 handler + p 2 stack + m (Lnet/minecraft/class_1703;ILnet/minecraft/class_1799;)V method_34261 updateSlot + p 1 handler + p 2 slot + p 3 stack + m (Lnet/minecraft/class_1703;II)V method_34260 updateProperty + p 1 handler + p 2 property + p 3 value + m ()Lnet/minecraft/class_10927; method_68735 createTrackedSlot + m (Lnet/minecraft/class_1703;Ljava/util/List;Lnet/minecraft/class_1799;[I)V method_34263 updateState + p 1 handler + p 4 properties + p 3 cursorStack + p 2 stacks +c net/minecraft/class_5919 net/minecraft/world/gen/feature/FossilFeatureConfig + f Ljava/util/List; field_29254 fossilStructures + f Ljava/util/List; field_29255 overlayStructures + f I field_29258 maxEmptyCorners + f Lnet/minecraft/class_6880; field_29257 overlayProcessors + f Lnet/minecraft/class_6880; field_29256 fossilProcessors + f Lcom/mojang/serialization/Codec; field_29253 CODEC + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;I)V + p 4 overlayProcessors + p 5 maxEmptyCorners + p 2 overlayStructures + p 3 fossilProcessors + p 1 fossilStructures + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34299 method_34299 + p 0 instance + m (Lnet/minecraft/class_5919;)Ljava/util/List; method_34305 method_34305 + p 0 config + m (Lnet/minecraft/class_5919;)Lnet/minecraft/class_6880; method_34304 method_34304 + p 0 config + m (Lnet/minecraft/class_5919;)Ljava/util/List; method_34306 method_34306 + p 0 config + m (Lnet/minecraft/class_5919;)Ljava/lang/Integer; method_34300 method_34300 + p 0 config + m (Lnet/minecraft/class_5919;)Lnet/minecraft/class_6880; method_34302 method_34302 + p 0 config +c net/minecraft/class_5913 net/minecraft/client/gl/GlImportProcessor + c Handles the flattening of "moj_" import strings in the loaded GLSL shader file.\nInstances of an import are replaced by the contents of the referenced file\nprefixed by a comment describing the line position and original file location\nof the import. + f Ljava/lang/String; field_33620 SINGLE_LINE_COMMENT_PATTERN + f Ljava/util/regex/Pattern; field_29201 IMPORT_VERSION_PATTERN + f Ljava/util/regex/Pattern; field_29200 MOJ_IMPORT_PATTERN + f Ljava/lang/String; field_32036 MULTI_LINE_COMMENT_PATTERN + f Ljava/util/regex/Pattern; field_33621 TRAILING_WHITESPACE_PATTERN + m (Ljava/lang/String;)Ljava/util/List; method_34229 readSource + c Reads the source code supplied into a list of lines suitable for uploading to\nthe GL Shader cache.\n\n

Imports are processed as per the description of this class. + p 1 source + m (ZLjava/lang/String;)Ljava/lang/String; method_34233 loadImport + c Called to load an import reference's source code. + p 2 name + p 1 inline + m (Ljava/lang/String;Lnet/minecraft/class_5913$class_5914;Ljava/lang/String;)Ljava/util/List; method_34232 parseImports + p 1 source + p 2 context + p 3 path + m (Ljava/lang/String;Lnet/minecraft/class_10149;)Ljava/lang/String; method_62880 addDefines + p 1 defines + p 0 source + m (Ljava/lang/String;Ljava/util/regex/Matcher;I)Z method_36424 hasBogusString + p 2 matchEnd + p 0 string + p 1 matcher + m (Ljava/lang/String;Lnet/minecraft/class_5913$class_5914;)Ljava/lang/String; method_34231 extractVersion + c Converts a line known to contain an import into a fully-qualified\nversion of itself for insertion as a comment. + p 1 line + p 2 context + m (Ljava/lang/String;Ljava/util/regex/Matcher;)Z method_36423 isLineValid + p 0 line + p 1 matcher + m (Ljava/lang/String;I)Ljava/lang/String; method_34230 readImport + p 1 line + p 2 start +c net/minecraft/class_5913$class_5914 net/minecraft/client/gl/GlImportProcessor$Context + c A context for the parser to keep track of its current line and caret position in the file. + f I field_29203 line + f I field_29202 column +c net/minecraft/class_5912 net/minecraft/resource/ResourceFactory + c Provides resource access. + f Lnet/minecraft/class_5912; field_49043 MISSING + m (Ljava/util/Map;)Lnet/minecraft/class_5912; fromMap fromMap + p 0 map + m (Lnet/minecraft/class_2960;)Ljava/util/Optional; method_56937 method_56937 + p 0 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_3298; getResourceOrThrow getResourceOrThrow + p 1 id + m (Ljava/util/Map;Lnet/minecraft/class_2960;)Ljava/util/Optional; method_45307 method_45307 + p 1 id + m (Lnet/minecraft/class_2960;)Ljava/io/BufferedReader; openAsReader openAsReader + p 1 id + m (Lnet/minecraft/class_2960;)Ljava/util/Optional; method_14486 getResource + c Finds and returns the corresponding resource for a resource's identifier.\n\n

Starts by scanning each resource pack from highest priority to lowest. If no resource packs were found\nto contain the requested entry, will return {@link Optional#empty()}.\n\n

The returned resource must be closed to avoid resource leaks. + p 1 id + c the resource identifier to search for + m (Lnet/minecraft/class_2960;)Ljava/io/InputStream; open open + p 1 id +c net/minecraft/class_5915 net/minecraft/entity/decoration/GlowItemFrameEntity +c net/minecraft/class_8191 net/minecraft/client/sound/SnifferDigSoundInstance + f Lnet/minecraft/class_8153; field_42933 sniffer + m (Lnet/minecraft/class_8153;)V + p 1 sniffer +c net/minecraft/class_8190 net/minecraft/client/render/entity/SnifferEntityRenderer + f Lnet/minecraft/class_2960; field_42930 TEXTURE + m (Lnet/minecraft/class_10068;)Lnet/minecraft/class_2960; method_49350 getTexture + m ()Lnet/minecraft/class_10068; method_62535 createRenderState + m (Lnet/minecraft/class_8153;)Lnet/minecraft/class_238; method_62533 getBoundingBox + m (Lnet/minecraft/class_8153;Lnet/minecraft/class_10068;F)V method_62534 updateRenderState +c net/minecraft/class_5930 net/minecraft/world/gen/trunk/BendingTrunkPlacer + f Lnet/minecraft/class_6017; field_29308 bendLength + f Lcom/mojang/serialization/MapCodec; field_29306 CODEC + f I field_29307 minHeightForLeaves + m (Lnet/minecraft/class_5930;)Ljava/lang/Integer; method_34374 method_34374 + p 0 placer + m (IIIILnet/minecraft/class_6017;)V + p 1 baseHeight + p 3 secondRandomHeight + p 2 firstRandomHeight + p 5 bendLength + p 4 minHeightForLeaves + m (Lnet/minecraft/class_5930;)Lnet/minecraft/class_6017; method_34372 method_34372 + p 0 placer + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34373 method_34373 + p 0 instance +c net/minecraft/class_5932 net/minecraft/util/math/VerticalSurfaceType + f Lnet/minecraft/class_2350; field_29316 direction + f Ljava/lang/String; field_29318 name + f I field_29317 offset + f Lcom/mojang/serialization/Codec; field_29315 CODEC + f Lnet/minecraft/class_5932; field_29314 FLOOR + f Lnet/minecraft/class_5932; field_29313 CEILING + m ()Lnet/minecraft/class_2350; method_34379 getDirection + m (Ljava/lang/String;ILnet/minecraft/class_2350;ILjava/lang/String;)V + p 4 offset + p 5 name + p 3 direction + m ()I method_34380 getOffset +c com/mojang/blaze3d/opengl/GlStateManager com/mojang/blaze3d/opengl/GlStateManager + m (I)V _logicOp _logicOp + p 0 op + m (I)V _enableVertexAttribArray _enableVertexAttribArray + p 0 index + m (I)Ljava/lang/String; _getString _getString + p 0 name + m (I)V _clear _clear + p 0 mask + m (II)I glGetShaderi glGetShaderi + p 0 shader + p 1 pname + m (I)V _glUseProgram _glUseProgram + p 0 program + m (I)I _getInteger _getInteger + p 0 pname + m (II)V _pixelStore _pixelStore + p 0 pname + p 1 param + m (J)V _glDeleteSync _glDeleteSync + p 0 sync + m (I)V _deleteTexture _deleteTexture + p 0 texture + m (I)I glCreateShader glCreateShader + p 0 type + m (II)V _glUniform1i _glUniform1i + p 1 value + p 0 location + m (I)V glDeleteShader glDeleteShader + p 0 shader + m (IJLjava/nio/ByteBuffer;)V _glBufferSubData _glBufferSubData + p 1 offset + p 0 target + p 3 data + m (IIIIIIIILjava/nio/ByteBuffer;)V _texImage2D _texImage2D + p 6 format + p 7 type + p 4 height + p 5 border + p 2 internalFormat + p 3 width + p 0 target + p 1 level + m (IIII)V _blendFuncSeparate _blendFuncSeparate + p 1 dstFactorRgb + p 2 srcFactorAlpha + p 3 dstFactorAlpha + p 0 srcFactorRGB + m (I)I getFrameBuffer getFrameBuffer + p 0 target + m (III)I _getTexLevelParameter _getTexLevelParameter + p 2 pname + p 1 level + p 0 target + m (III)V _texParameter _texParameter + p 1 pname + p 0 target + p 2 param + m (IILjava/lang/CharSequence;)V _glBindAttribLocation _glBindAttribLocation + p 1 index + p 0 program + p 2 name + m (IIIII)V _glFramebufferTexture2D _glFramebufferTexture2D + p 3 texture + p 4 level + p 0 target + p 1 attachment + p 2 textureTarget + m (II)V _glBindFramebuffer _glBindFramebuffer + p 1 framebuffer + p 0 target + m (JIJ)I _glClientWaitSync _glClientWaitSync + p 0 sync + p 3 timeout + p 2 flags + m (I)V _depthFunc _depthFunc + p 0 func + m (II)Ljava/lang/String; glGetProgramInfoLog glGetProgramInfoLog + p 1 maxLength + p 0 program + m (I)Lcom/mojang/blaze3d/opengl/GlStateManager$class_1039; lambda$static$0 lambda$static$0 + p 0 index + m (ILjava/nio/ByteBuffer;I)V _glBufferData _glBufferData + p 2 usage + p 1 data + p 0 target + m (I)V _bindTexture _bindTexture + p 0 texture + m (I)V glLinkProgram glLinkProgram + p 0 program + m (IIII)V _scissorBox _scissorBox + p 0 x + p 1 y + p 2 width + p 3 height + m (IIIJ)V _drawElements _drawElements + p 0 mode + p 1 type + p 2 count + p 3 indices + m (ILjava/lang/String;)V glShaderSource glShaderSource + p 1 source + p 0 shader + m (I)V _glDeleteBuffers _glDeleteBuffers + p 0 buffer + m (IIIIJ)V _vertexAttribIPointer _vertexAttribIPointer + p 2 type + p 1 size + p 4 pointer + p 3 stride + p 0 index + m (IIIIIIIILjava/nio/ByteBuffer;)V _texSubImage2D _texSubImage2D + p 5 height + p 4 width + p 7 type + p 6 format + p 1 level + p 0 target + p 3 offsetY + p 2 offsetX + m (IIIIIIJ)V _readPixels _readPixels + p 6 pixels + p 5 type + p 4 format + p 3 height + p 2 width + p 1 y + p 0 x + m (II)I glGetProgrami glGetProgrami + p 1 pname + p 0 program + m (II)J _glFenceSync _glFenceSync + p 1 flags + p 0 condition + m (I)V _activeTexture _activeTexture + p 0 texture + m (IIII)V _viewport _viewport + p 0 x + p 3 height + p 1 y + p 2 width + m (IJI)V _glBufferData _glBufferData + p 3 usage + p 1 size + p 0 target + m (III)V _drawArrays _drawArrays + p 0 mode + p 1 first + p 2 count + m (IIIIIIIIJ)V _texSubImage2D _texSubImage2D + p 3 offsetY + p 4 width + p 1 level + p 2 offsetX + p 0 target + p 7 type + p 8 pixels + p 5 height + p 6 format + m (I)V glDeleteProgram glDeleteProgram + p 0 program + m (II)V _glBindBuffer _glBindBuffer + p 1 buffer + p 0 target + m (ZZZZ)V _colorMask _colorMask + p 2 blue + p 3 alpha + p 0 red + p 1 green + m (II)V glAttachShader glAttachShader + p 0 program + p 1 shader + m (IIIZIJ)V _vertexAttribPointer _vertexAttribPointer + p 5 pointer + p 4 stride + p 1 size + p 0 index + p 3 normalized + p 2 type + m (I)V glCompileShader glCompileShader + p 0 shader + m (IIII)V glBlendFuncSeparate glBlendFuncSeparate + p 3 dstFactorAlpha + p 2 srcFactorAlpha + p 1 dstFactorRgb + p 0 srcFactorRgb + m (I)V _glUnmapBuffer _glUnmapBuffer + p 0 target + m (IIIIIIIIII)V _glBlitFrameBuffer _glBlitFrameBuffer + p 1 srcY0 + p 0 srcX0 + p 3 srcY1 + p 2 srcX1 + p 5 dstY0 + p 4 dstX0 + p 7 dstY1 + p 6 dstX1 + p 9 filter + p 8 mask + m (II)V _polygonMode _polygonMode + p 1 mode + p 0 face + m (I)V _glDeleteFramebuffers _glDeleteFramebuffers + p 0 framebuffer + m (II)Ljava/lang/String; glGetShaderInfoLog glGetShaderInfoLog + p 1 maxLength + p 0 shader + m (I)V _glBindVertexArray _glBindVertexArray + p 0 array + m (FF)V _polygonOffset _polygonOffset + p 0 factor + p 1 units + m (Z)V _depthMask _depthMask + p 0 mask + m (IJJI)Ljava/nio/ByteBuffer; _glMapBufferRange _glMapBufferRange + p 3 range + p 5 access + p 0 target + p 1 offset + m (ILjava/lang/CharSequence;)I _glGetUniformLocation _glGetUniformLocation + p 1 name + p 0 program +c com/mojang/blaze3d/opengl/GlStateManager$class_1031 com/mojang/blaze3d/opengl/GlStateManager$PolygonOffsetState + f Lcom/mojang/blaze3d/opengl/GlStateManager$class_1018; field_5123 capFill + f F field_5122 units + f F field_5124 factor +c com/mojang/blaze3d/opengl/GlStateManager$class_5518 com/mojang/blaze3d/opengl/GlStateManager$ScissorTestState + f Lcom/mojang/blaze3d/opengl/GlStateManager$class_1018; field_26840 capState +c com/mojang/blaze3d/opengl/GlStateManager$class_1039 com/mojang/blaze3d/opengl/GlStateManager$Texture2DState + f I field_5167 boundTexture +c com/mojang/blaze3d/opengl/GlStateManager$class_1025 com/mojang/blaze3d/opengl/GlStateManager$CullFaceState + f Lcom/mojang/blaze3d/opengl/GlStateManager$class_1018; field_5072 capState +c com/mojang/blaze3d/opengl/GlStateManager$class_1022 com/mojang/blaze3d/opengl/GlStateManager$ColorMask + f Z field_5061 blue + f Z field_5060 alpha + f Z field_5063 red + f Z field_5062 green +c com/mojang/blaze3d/opengl/GlStateManager$class_1021 com/mojang/blaze3d/opengl/GlStateManager$LogicOpState + f Lcom/mojang/blaze3d/opengl/GlStateManager$class_1018; field_5058 capState + f I field_5059 op +c com/mojang/blaze3d/opengl/GlStateManager$class_1026 com/mojang/blaze3d/opengl/GlStateManager$DepthTestState + f Lcom/mojang/blaze3d/opengl/GlStateManager$class_1018; field_5074 capState + f I field_5075 func + f Z field_5076 mask +c com/mojang/blaze3d/opengl/GlStateManager$class_1018 com/mojang/blaze3d/opengl/GlStateManager$CapabilityTracker + f I field_5050 cap + f Z field_5051 state + m (Z)V method_4470 setState + p 1 state + m (I)V + p 1 cap + m ()V method_4469 disable + m ()V method_4471 enable +c com/mojang/blaze3d/opengl/GlStateManager$class_1017 com/mojang/blaze3d/opengl/GlStateManager$BlendFuncState + f I field_5049 srcFactorRgb + f Lcom/mojang/blaze3d/opengl/GlStateManager$class_1018; field_5045 capState + f I field_5047 srcFactorAlpha + f I field_5048 dstFactorRgb + f I field_5046 dstFactorAlpha +c net/minecraft/class_5928 net/minecraft/world/gen/foliage/RandomSpreadFoliagePlacer + f Lcom/mojang/serialization/MapCodec; field_29297 CODEC + f I field_29299 leafPlacementAttempts + f Lnet/minecraft/class_6017; field_29298 foliageHeight + m (Lnet/minecraft/class_5928;)Lnet/minecraft/class_6017; method_34362 method_34362 + p 0 placer + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34360 method_34360 + p 0 instance + m (Lnet/minecraft/class_5928;)Ljava/lang/Integer; method_34361 method_34361 + p 0 placer + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;I)V + p 3 foliageHeight + p 2 offset + p 4 leafPlacementAttempts + p 1 radius +c net/minecraft/class_5927 net/minecraft/world/gen/feature/VegetationPatchFeatureConfig + f Lnet/minecraft/class_4651; field_29287 groundState + f Lnet/minecraft/class_6880; field_29288 vegetationFeature + f Lnet/minecraft/class_6862; field_29286 replaceable + f F field_29295 extraEdgeColumnChance + f Lnet/minecraft/class_5932; field_29289 surface + f F field_29293 vegetationChance + f F field_29291 extraBottomBlockChance + f I field_29292 verticalRange + f Lcom/mojang/serialization/Codec; field_29285 CODEC + f Lnet/minecraft/class_6017; field_29290 depth + f Lnet/minecraft/class_6017; field_29294 horizontalRadius + m (Lnet/minecraft/class_6862;Lnet/minecraft/class_4651;Lnet/minecraft/class_6880;Lnet/minecraft/class_5932;Lnet/minecraft/class_6017;FIFLnet/minecraft/class_6017;F)V + p 7 verticalRange + p 6 extraBottomBlockChance + p 9 horizontalRadius + p 8 vegetationChance + p 10 extraEdgeColumnChance + p 1 replaceable + p 3 vegetationFeature + p 2 groundState + p 5 depth + p 4 surface + m (Lnet/minecraft/class_5927;)Lnet/minecraft/class_5932; method_34355 method_34355 + p 0 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34348 method_34348 + p 0 instance + m (Lnet/minecraft/class_5927;)Ljava/lang/Integer; method_34352 method_34352 + p 0 config + m (Lnet/minecraft/class_5927;)Lnet/minecraft/class_6862; method_34358 method_34358 + p 0 config + m (Lnet/minecraft/class_5927;)Ljava/lang/Float; method_34351 method_34351 + p 0 config + m (Lnet/minecraft/class_5927;)Lnet/minecraft/class_6880; method_34356 method_34356 + p 0 config + m (Lnet/minecraft/class_5927;)Lnet/minecraft/class_4651; method_34357 method_34357 + p 0 config + m (Lnet/minecraft/class_5927;)Ljava/lang/Float; method_34349 method_34349 + p 0 config + m (Lnet/minecraft/class_5927;)Lnet/minecraft/class_6017; method_34350 method_34350 + p 0 config + m (Lnet/minecraft/class_5927;)Ljava/lang/Float; method_34353 method_34353 + p 0 config + m (Lnet/minecraft/class_5927;)Lnet/minecraft/class_6017; method_34354 method_34354 + p 0 config +c net/minecraft/class_5929 net/minecraft/world/gen/stateprovider/RandomizedIntBlockStateProvider + c A {@linkplain BlockStateProvider block state provider} that randomizes a single {@link IntProperty} of a block state provided by another provider. + f Lnet/minecraft/class_6017; field_29305 values + f Lnet/minecraft/class_4651; field_29302 source + f Lcom/mojang/serialization/MapCodec; field_29301 CODEC + f Ljava/lang/String; field_29303 propertyName + f Lnet/minecraft/class_2758; field_29304 property + m (Lnet/minecraft/class_2769;)Z method_34369 method_34369 + p 0 property + m (Lnet/minecraft/class_2680;Ljava/lang/String;)Lnet/minecraft/class_2758; method_34363 getIntPropertyByName + p 0 state + p 1 propertyName + m (Lnet/minecraft/class_2769;)Lnet/minecraft/class_2758; method_34364 method_34364 + p 0 property + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34365 method_34365 + p 0 instance + m (Ljava/lang/String;Lnet/minecraft/class_2769;)Z method_34368 method_34368 + p 1 property + m (Lnet/minecraft/class_4651;Ljava/lang/String;Lnet/minecraft/class_6017;)V + p 1 source + p 3 values + p 2 propertyName + m (Lnet/minecraft/class_4651;Lnet/minecraft/class_2758;Lnet/minecraft/class_6017;)V + p 2 property + p 3 values + p 1 source +c net/minecraft/class_5923 net/minecraft/world/gen/feature/WaterloggedVegetationPatchFeature + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_2350;)Z method_34322 isSolidBlockSide + p 3 direction + p 2 mutablePos + p 1 pos + p 0 world + m (Lnet/minecraft/class_5281;Ljava/util/Set;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338$class_2339;)Z method_34323 isSolidBlockAroundPos + p 2 pos + p 3 mutablePos + p 0 world + p 1 positions +c net/minecraft/class_5926 net/minecraft/world/gen/feature/RootSystemFeatureConfig + f Lnet/minecraft/class_4651; field_29272 rootStateProvider + f I field_29269 requiredVerticalSpaceForTree + f I field_29275 hangingRootRadius + f Lnet/minecraft/class_6880; field_29268 feature + f I field_29273 rootPlacementAttempts + f Lnet/minecraft/class_6646; field_36289 predicate + f I field_33616 allowedVerticalWaterForTree + f Lcom/mojang/serialization/Codec; field_29267 CODEC + f I field_29278 hangingRootPlacementAttempts + f I field_29276 hangingRootVerticalSpan + f Lnet/minecraft/class_4651; field_29277 hangingRootStateProvider + f I field_29274 maxRootColumnHeight + f Lnet/minecraft/class_6862; field_29271 rootReplaceable + f I field_29270 rootRadius + m (Lnet/minecraft/class_5926;)Ljava/lang/Integer; method_34336 method_34336 + p 0 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34332 method_34332 + p 0 instance + m (Lnet/minecraft/class_5926;)Ljava/lang/Integer; method_34338 method_34338 + p 0 config + m (Lnet/minecraft/class_5926;)Ljava/lang/Integer; method_36421 method_36421 + p 0 config + m (Lnet/minecraft/class_5926;)Ljava/lang/Integer; method_34341 method_34341 + p 0 config + m (Lnet/minecraft/class_5926;)Lnet/minecraft/class_6880; method_34343 method_34343 + p 0 config + m (Lnet/minecraft/class_5926;)Ljava/lang/Integer; method_34333 method_34333 + p 0 config + m (Lnet/minecraft/class_5926;)Lnet/minecraft/class_4651; method_34339 method_34339 + p 0 config + m (Lnet/minecraft/class_5926;)Lnet/minecraft/class_6646; method_39919 method_39919 + p 0 config + m (Lnet/minecraft/class_5926;)Ljava/lang/Integer; method_34335 method_34335 + p 0 config + m (Lnet/minecraft/class_6880;IILnet/minecraft/class_6862;Lnet/minecraft/class_4651;IIIILnet/minecraft/class_4651;IILnet/minecraft/class_6646;)V + p 13 predicate + p 10 hangingRootStateProvider + p 9 hangingRootVerticalSpan + p 12 allowedVerticalWaterForTree + p 11 hangingRootPlacementAttempts + p 6 rootPlacementAttempts + p 5 rootStateProvider + p 8 hangingRootRadius + p 7 maxRootColumnHeight + p 2 requiredVerticalSpaceForTree + p 1 feature + p 4 rootReplaceable + p 3 rootRadius + m (Lnet/minecraft/class_5926;)Ljava/lang/Integer; method_34337 method_34337 + p 0 config + m (Lnet/minecraft/class_5926;)Lnet/minecraft/class_4651; method_34334 method_34334 + p 0 config + m (Lnet/minecraft/class_5926;)Ljava/lang/Integer; method_34342 method_34342 + p 0 config + m (Lnet/minecraft/class_5926;)Lnet/minecraft/class_6862; method_34340 method_34340 + p 0 config +c net/minecraft/class_5925 net/minecraft/world/gen/placementmodifier/HeightmapPlacementModifier + f Lcom/mojang/serialization/MapCodec; field_29265 MODIFIER_CODEC + f Lnet/minecraft/class_2902$class_2903; field_29266 heightmap + m (Lnet/minecraft/class_5925;)Lnet/minecraft/class_2902$class_2903; method_34331 method_34331 + p 0 placementModifier + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34330 method_34330 + p 0 instance + m (Lnet/minecraft/class_2902$class_2903;)V + p 1 heightmap + m (Lnet/minecraft/class_2902$class_2903;)Lnet/minecraft/class_5925; method_39638 of + p 0 heightmap +c net/minecraft/class_644 net/minecraft/client/network/MultiplayerServerListPinger + f Lorg/slf4j/Logger; field_3771 LOGGER + f Lnet/minecraft/class_2561; field_33740 CANNOT_CONNECT_TEXT + f Ljava/util/List; field_3769 clientConnections + m (Lnet/minecraft/class_642;Ljava/lang/Runnable;Ljava/lang/Runnable;Lnet/minecraft/class_12239;)V method_3003 add + p 3 pingCallback + p 2 saver + p 1 entry + p 4 backend + m ()V method_3004 cancel + m ()V method_3000 tick + m (II)Lnet/minecraft/class_2561; method_27647 createPlayerCountText + p 1 max + p 0 current + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_642;)V method_36897 showError + p 2 info + p 1 error + m (Ljava/net/InetSocketAddress;Lnet/minecraft/class_639;Lnet/minecraft/class_642;Lnet/minecraft/class_12239;)V method_3001 ping + p 3 serverInfo + p 4 backend + p 1 socketAddress + p 2 address +c net/minecraft/class_644$1 net/minecraft/client/network/MultiplayerServerListPinger$1 + f Z field_3775 sentQuery + f Z field_3773 received + f J field_3772 startTime + m (Lnet/minecraft/class_642;Ljava/lang/Runnable;Lnet/minecraft/class_2926$class_8145;)V method_49310 method_49310 + p 2 favicon + m (Lnet/minecraft/class_642;Lnet/minecraft/class_2926$class_2927;)V method_49308 method_49308 + p 1 players + m (Lnet/minecraft/class_642;Lnet/minecraft/class_2926$class_2930;)V method_49309 method_49309 + p 1 version +c net/minecraft/class_644$2 net/minecraft/client/network/MultiplayerServerListPinger$2 + m (Lio/netty/channel/Channel;)V initChannel initChannel + p 1 channel + m (Lnet/minecraft/class_642;ILjava/lang/String;Ljava/lang/String;II)V method_52813 method_52813 + p 5 maxPlayers + p 3 label + p 4 currentPlayers + p 1 protocolVersion + p 2 version +c net/minecraft/class_2073 net/minecraft/predicate/item/ItemPredicate + f Lcom/mojang/serialization/Codec; field_45754 CODEC + f Lnet/minecraft/class_10914; comp_2374 components + f Lnet/minecraft/class_2096$class_2100; comp_1785 count + f Ljava/util/Optional; comp_1784 items + m (Lnet/minecraft/class_1799;)Z method_8970 test + p 1 stack + m (Ljava/lang/Object;)Z test test + p 1 stack + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57298 method_57298 + p 0 instance + m ()Ljava/util/Optional; comp_1784 items + m ()Lnet/minecraft/class_10914; comp_2374 components + m ()Lnet/minecraft/class_2096$class_2100; comp_1785 count + m (Ljava/util/Optional;Lnet/minecraft/class_2096$class_2100;Lnet/minecraft/class_10914;)V + p 1 items + p 2 count + p 3 components +c net/minecraft/class_2073$class_2074 net/minecraft/predicate/item/ItemPredicate$Builder + f Ljava/util/Optional; field_9650 item + f Lnet/minecraft/class_2096$class_2100; field_9648 count + f Lnet/minecraft/class_10914; field_49235 components + m ()Lnet/minecraft/class_2073; method_8976 build + m (Lnet/minecraft/class_7871;[Lnet/minecraft/class_1935;)Lnet/minecraft/class_2073$class_2074; method_8977 items + p 1 itemRegistry + p 2 items + m (Lnet/minecraft/class_2096$class_2100;)Lnet/minecraft/class_2073$class_2074; method_35233 count + p 1 count + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_6862;)Lnet/minecraft/class_2073$class_2074; method_8975 tag + p 2 tag + p 1 itemRegistry + m (Lnet/minecraft/class_10914;)Lnet/minecraft/class_2073$class_2074; method_57299 components + p 1 components + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_6880; method_53166 method_53166 + p 0 item + m ()Lnet/minecraft/class_2073$class_2074; method_8973 create +c net/minecraft/class_642 net/minecraft/client/network/ServerInfo + c The information of a server entry in the list of servers available in\nthe multiplayer screen, or that of the servers connected directly.\nThe information for directly-connected servers are also saved (although\nhidden from the multiplayer screen) so that chat preview acknowledgements\nand other settings are saved. The list of these servers is stored in the\n{@code servers.dat} file within the client game directory.\n\n@see net.minecraft.client.option.ServerList + f Ljava/lang/String; field_3752 name + f Lnet/minecraft/class_642$class_9083; field_47879 status + f J field_3758 ping + f I field_3756 protocolVersion + f Lorg/slf4j/Logger; field_42889 LOGGER + f Lnet/minecraft/class_642$class_8678; field_45608 serverType + f Lnet/minecraft/class_2561; field_3753 playerCountLabel + f Lnet/minecraft/class_2561; field_3757 label + f Lnet/minecraft/class_642$class_643; field_3755 resourcePackPolicy + f Ljava/lang/String; field_3761 address + f Ljava/util/List; field_3762 playerListSummary + f [B field_42890 favicon + f Lnet/minecraft/class_2926$class_2927; field_41861 players + f I field_62211 acceptedCodeOfConduct + f I field_46206 MAX_FAVICON_SIZE + f Lnet/minecraft/class_2561; field_3760 version + m ()Lnet/minecraft/class_642$class_9083; method_55825 getStatus + m (Ljava/lang/String;)Z method_73472 hasAcceptedCodeOfConduct + p 1 codeOfConductText + m ()Lnet/minecraft/class_642$class_8678; method_55616 getServerType + m (Lnet/minecraft/class_642;)V method_44292 copyFrom + p 1 serverInfo + m ()Z method_52811 isRealm + m (Lnet/minecraft/class_642$class_643;)V method_2995 setResourcePackPolicy + c Sets the resource pack policy on this server.\n\n

This is called when a user has responded to the prompt on whether to\naccept server resource packs from this server in the future. + p 1 resourcePackPolicy + m (Lnet/minecraft/class_642$class_9083;)V method_55824 setStatus + p 1 status + m ()Lnet/minecraft/class_2487; method_2992 toNbt + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_642$class_8678;)V + p 3 serverType + p 2 address + p 1 name + m ()Z method_2994 isLocal + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_642; method_2993 fromNbt + p 0 root + m (Lnet/minecraft/class_642;)V method_2996 copyWithSettingsFrom + p 1 serverInfo + m ([B)V method_49305 setFavicon + p 1 favicon + m ()[B method_49306 getFavicon + m ()V method_73474 resetAcceptedCodeOfConduct + m (Ljava/lang/String;)V method_73473 setAcceptedCodeOfConduct + p 1 codeOfConductText + m ([B)[B method_53885 validateFavicon + p 0 favicon + m ()Lnet/minecraft/class_642$class_643; method_2990 getResourcePackPolicy + c {@return the policy on resource packs sent by this server} +c net/minecraft/class_642$class_9083 net/minecraft/client/network/ServerInfo$Status + f Lnet/minecraft/class_642$class_9083; field_47883 INCOMPATIBLE + f Lnet/minecraft/class_642$class_9083; field_47884 SUCCESSFUL + f Lnet/minecraft/class_642$class_9083; field_47880 INITIAL + f Lnet/minecraft/class_642$class_9083; field_47881 PINGING + f Lnet/minecraft/class_642$class_9083; field_47882 UNREACHABLE +c net/minecraft/class_642$class_8678 net/minecraft/client/network/ServerInfo$ServerType + f Lnet/minecraft/class_642$class_8678; field_45609 LAN + f Lnet/minecraft/class_642$class_8678; field_45610 REALM + f Lnet/minecraft/class_642$class_8678; field_45611 OTHER +c net/minecraft/class_642$class_643 net/minecraft/client/network/ServerInfo$ResourcePackPolicy + c The policy of the client when this server sends a {@linkplain\nnet.minecraft.network.packet.s2c.common.ResourcePackSendS2CPacket server\nresource pack}.\n\n@see ServerInfo#getResourcePackPolicy() + f Lcom/mojang/serialization/MapCodec; field_56800 CODEC + f [Lnet/minecraft/class_642$class_643; field_3766 RESOURCE_PACK_POLICIES + f Lnet/minecraft/class_642$class_643; field_3768 ENABLED + c Always accepts the resource pack and starts downloading it. + f Lnet/minecraft/class_642$class_643; field_3764 DISABLED + c Always rejects the resource pack. + f Lnet/minecraft/class_642$class_643; field_3767 PROMPT + c Opens a screen on whether to always accept or reject resource packs from\nthis server for the current pack or any pack in the future. + f Lnet/minecraft/class_2561; field_3765 name + m (Ljava/util/Optional;)Lnet/minecraft/class_642$class_643; method_67877 method_67877 + p 0 value + m (Ljava/lang/Boolean;)Lnet/minecraft/class_642$class_643; method_67876 method_67876 + p 0 acceptTextures + m ()Lnet/minecraft/class_2561; method_2997 getName + m (Lnet/minecraft/class_642$class_643;)Ljava/util/Optional; method_67875 method_67875 + p 0 value + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_641 net/minecraft/client/option/ServerList + c A list of {@link ServerInfo}. The list can contain an unlimited amount of\n{@linkplain #servers server entries that are displayed on the multiplayer screen},\nand up to {@value #MAX_HIDDEN_ENTRIES} {@linkplain #hiddenServers entries of servers}\nthat are created when using "Direct Connection" and is hidden from the screen. + f Lnet/minecraft/class_310; field_3750 client + f Lorg/slf4j/Logger; field_3751 LOGGER + f I field_39437 MAX_HIDDEN_ENTRIES + f Ljava/util/List; field_3749 servers + f Ljava/util/List; field_39438 hiddenServers + f Lnet/minecraft/class_10176; field_54154 IO_EXECUTOR + m (II)V method_2985 swapEntries + p 1 index1 + p 2 index2 + m (Lnet/minecraft/class_642;)V method_2986 updateServerListEntry + p 0 serverInfo + m ()V method_2981 loadFile + m (I)Lnet/minecraft/class_642; method_2982 get + p 1 index + m ()V method_2987 saveFile + m (Lnet/minecraft/class_642;Ljava/util/List;)Z method_44294 replace + c Replaces the server info in {@code serverInfos} whose name and address match\n{@code serverInfo}'s with {@code serverInfo}. + p 1 serverInfos + p 0 serverInfo + m (Lnet/minecraft/class_642;)V method_2983 remove + p 1 serverInfo + m ()I method_2984 size + m (Lnet/minecraft/class_642;Z)V method_2988 add + c Adds a server info to this list. + p 2 hidden + c whether the info should not be listed in the multiplayer screen (also called\n"direct connection") + p 1 serverInfo + m (Lnet/minecraft/class_310;)V + p 1 client + m (ILnet/minecraft/class_642;)V method_2980 set + p 1 index + p 2 serverInfo + m (Lnet/minecraft/class_2487;)V method_68474 method_68474 + p 1 nbt + m (Ljava/lang/String;)Lnet/minecraft/class_642; method_44296 tryUnhide + c {@return the previously hidden server info for the address {@code address}, or\n{@code null} if there is no such info}\n\n

This "unhides" the server info and is used when adding the entry to the\nmultiplayer screen to unhide any existing server info created when connecting\ndirectly. + p 1 address + m (Ljava/lang/String;)Lnet/minecraft/class_642; method_44295 get + c {@return the server info for {@code address}, or {@code null} if there is no such one} + p 1 address +c net/minecraft/class_647 net/minecraft/client/particle/CrackParticle + f F field_17783 sampleU + f Lnet/minecraft/class_3940$class_11941; field_64446 renderType + f F field_17784 sampleV +c net/minecraft/class_647$class_9478 net/minecraft/client/particle/CrackParticle$CobwebFactory + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_58747 createParticle +c net/minecraft/class_647$class_650 net/minecraft/client/particle/CrackParticle$SnowballFactory + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3009 createParticle +c net/minecraft/class_647$class_649 net/minecraft/client/particle/CrackParticle$SlimeballFactory + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3008 createParticle +c net/minecraft/class_647$class_10417 net/minecraft/client/particle/CrackParticle$Factory + f Lnet/minecraft/class_10444; field_55268 itemRenderState + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_5819;)Lnet/minecraft/class_1058; method_74256 getSprite + p 2 world + p 3 random + p 1 stack +c net/minecraft/class_647$class_648 net/minecraft/client/particle/CrackParticle$ItemFactory + m (Lnet/minecraft/class_2392;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3007 createParticle +c net/minecraft/class_645 net/minecraft/client/particle/SweepAttackParticle + f Lnet/minecraft/class_4002; field_17781 spriteProvider + m (Lnet/minecraft/class_638;DDDDLnet/minecraft/class_4002;)V + p 2 x + p 1 world + p 6 z + p 4 y + p 10 spriteProvider + p 8 velocityX +c net/minecraft/class_645$class_646 net/minecraft/client/particle/SweepAttackParticle$Factory + f Lnet/minecraft/class_4002; field_17782 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3006 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_640 net/minecraft/client/network/PlayerListEntry + f Ljava/util/function/Supplier; field_45607 texturesSupplier + f Lnet/minecraft/class_2561; field_3743 displayName + f Lnet/minecraft/class_7615; field_39809 messageVerifier + f Lcom/mojang/authlib/GameProfile; field_3741 profile + f I field_53033 listOrder + f I field_3739 latency + f Lnet/minecraft/class_7822; field_40495 session + f Z field_55126 showHat + f Lnet/minecraft/class_1934; field_3744 gameMode + m (I)V method_2970 setLatency + p 1 latency + m (I)V method_62153 setListOrder + p 1 listOrder + m ()Lnet/minecraft/class_7615; method_44817 getMessageVerifier + m (Lnet/minecraft/class_1934;)V method_2963 setGameMode + p 1 gameMode + m ()Lnet/minecraft/class_7822; method_45741 getSession + m ()Lcom/mojang/authlib/GameProfile; method_2966 getProfile + m ()I method_2959 getLatency + m ()Lnet/minecraft/class_2561; method_2971 getDisplayName + m (Lnet/minecraft/class_2561;)V method_2962 setDisplayName + p 1 displayName + m ()Z method_65195 shouldShowHat + m (Z)Lnet/minecraft/class_7615; method_46531 getInitialVerifier + p 0 secureChatEnforced + m (Lcom/mojang/authlib/GameProfile;)Ljava/util/function/Supplier; method_52803 texturesSupplier + p 0 profile + m (Z)V method_46530 resetSession + p 1 secureChatEnforced + m (Lnet/minecraft/class_7822;)V method_45740 setSession + p 1 session + m ()Lnet/minecraft/class_1934; method_2958 getGameMode + m ()Lnet/minecraft/class_268; method_2955 getScoreboardTeam + m ()Z method_45742 hasPublicKey + m (Lcom/mojang/authlib/GameProfile;Z)V + p 2 secureChatEnforced + p 1 profile + m ()I method_62154 getListOrder + m (Z)V method_65194 setShowHat + p 1 showHat + m ()Lnet/minecraft/class_8685; method_52810 getSkinTextures +c net/minecraft/class_2076 net/minecraft/advancement/criterion/KilledByArrowCriterion + m (Ljava/util/List;Ljava/util/Set;Lnet/minecraft/class_1799;Lnet/minecraft/class_2076$class_2078;)Z method_22478 method_22478 + p 3 conditions + m (Lnet/minecraft/class_3222;Ljava/util/Collection;Lnet/minecraft/class_1799;)V method_8980 trigger + p 3 weapon + p 2 piercingKilledEntities + p 1 player +c net/minecraft/class_2076$class_2078 net/minecraft/advancement/criterion/KilledByArrowCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47268 CODEC + f Ljava/util/Optional; comp_3212 firedFromWeapon + f Lnet/minecraft/class_2096$class_2100; comp_2067 uniqueEntityTypes + f Ljava/util/List; comp_2066 victims + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_2096$class_2100;)Lnet/minecraft/class_175; method_8987 createCrossbow + p 1 uniqueEntityTypeCount + p 0 itemRegistry + m (Ljava/util/Optional;Ljava/util/List;Lnet/minecraft/class_2096$class_2100;Ljava/util/Optional;)V + p 1 playerPredicate + p 3 uniqueEntityTypes + p 2 victims + p 4 firedFromWeapon + m (Lnet/minecraft/class_7871;[Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_175; method_8986 createCrossbow + p 1 victims + p 0 itemRegistry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55005 method_55005 + p 0 instance + m (Ljava/util/Collection;ILnet/minecraft/class_1799;)Z method_8988 matches + p 3 weapon + p 2 uniqueEntityTypeCount + p 1 victimContexts + m ()Ljava/util/Optional; comp_3212 firedFromWeapon + m ()Lnet/minecraft/class_2096$class_2100; comp_2067 uniqueEntityTypes + m ()Ljava/util/List; comp_2066 victims +c net/minecraft/class_639 net/minecraft/client/network/ServerAddress + f Lnet/minecraft/class_639; field_33418 INVALID + f Lcom/google/common/net/HostAndPort; field_33417 hostAndPort + f Lorg/slf4j/Logger; field_33416 LOGGER + m ()I method_2954 getPort + m (Ljava/lang/String;)Z method_36224 isValid + p 0 address + m (Lcom/google/common/net/HostAndPort;)V + p 1 hostAndPort + m (Ljava/lang/String;)I method_2951 portOrDefault + p 0 port + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/lang/String;)Lnet/minecraft/class_639; method_2950 parse + p 0 address + m ()Ljava/lang/String; method_2952 getAddress + m (Ljava/lang/String;I)V + p 1 host + p 2 port +c net/minecraft/class_638 net/minecraft/client/world/ClientWorld + f I field_53029 seaLevel + f Ljava/util/Map; field_17675 mapStates + f Lnet/minecraft/class_761; field_17780 worldRenderer + f Lit/unimi/dsi/fastutil/objects/Object2ObjectArrayMap; field_21527 colorCache + f Lnet/minecraft/class_8921; field_47129 tickManager + f D field_32641 PARTICLE_Y_OFFSET + c A minor offset applied when spawning particles. + f Ljava/util/Set; field_35432 BLOCK_MARKER_ITEMS + f Ljava/util/Deque; field_34804 chunkUpdaters + f Lnet/minecraft/class_2784; field_62596 worldBorder + f Lnet/minecraft/class_634; field_3727 networkHandler + f Lnet/minecraft/class_7202; field_37951 pendingUpdateManager + f Lnet/minecraft/class_12205; field_64444 environmentAttributeAccess + f Lnet/minecraft/class_310; field_3729 client + f I field_35163 simulationDistance + f Lorg/slf4j/Logger; field_37952 LOGGER + f Lnet/minecraft/class_9959; field_53028 worldEventHandler + f Z field_54500 shouldTickTimeOfDay + f Ljava/util/Set; field_60919 blockEntities + f Lnet/minecraft/class_11741; field_62027 blockParticlesManager + f Ljava/util/List; field_55125 enderDragonParts + f Lnet/minecraft/class_5574; field_27733 entityList + f Lnet/minecraft/class_2561; field_61021 QUITTING_MULTIPLAYER_TEXT + f Ljava/util/List; field_18226 players + f I field_21526 lightningTicksLeft + f Lnet/minecraft/class_631; field_24605 chunkManager + f Lnet/minecraft/class_11743; field_62026 endLightFlashManager + f Lnet/minecraft/class_5582; field_27734 entityManager + f Lnet/minecraft/class_638$class_5271; field_24430 clientWorldProperties + m ()Ljava/util/List; method_65192 getEnderDragonParts + m (Ljava/util/function/BooleanSupplier;)V method_8441 tick + p 1 shouldKeepTicking + m (Lnet/minecraft/class_2818;)V method_18110 unloadBlockEntities + p 1 chunk + m ()V method_38534 runQueuedChunkUpdates + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectArrayMap;)V method_23778 method_23778 + p 1 map + m (Z)Lnet/minecraft/class_4066; method_74918 getParticlesMode + m (Lnet/minecraft/class_1297;)V method_18646 tickEntity + p 1 entity + m (Lnet/minecraft/class_1923;)V method_23782 resetChunkColor + p 1 chunkPos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)V method_74254 spawnBlockBreakingParticle + p 1 pos + p 2 direction + m ()V method_18116 tickEntities + m (III)V method_2941 doRandomBlockDisplayTicks + p 1 centerX + p 2 centerY + p 3 centerZ + m (Lnet/minecraft/class_1297;)V method_32124 method_32124 + p 1 entity + m (Lnet/minecraft/class_12205$class_12314;)Lnet/minecraft/class_12205$class_12314; method_76541 addClientSideAttributes + p 1 builder + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2394;Lnet/minecraft/class_265;D)V method_2948 addParticle + p 1 pos + p 2 parameters + p 3 shape + p 4 y + m (Lnet/minecraft/class_1297;)Z method_62145 hasEntity + p 1 entity + m (Lnet/minecraft/class_634;Lnet/minecraft/class_638$class_5271;Lnet/minecraft/class_5321;Lnet/minecraft/class_6880;IILnet/minecraft/class_761;ZJI)V + p 2 properties + p 3 registryRef + p 1 networkHandler + p 6 simulationDistance + p 7 worldRenderer + p 4 dimensionType + p 5 loadDistance + p 11 seaLevel + p 8 debugWorld + p 9 seed + m ()Lnet/minecraft/class_11743; method_73229 getEndLightFlashManager + m ()Ljava/lang/Iterable; method_18112 getEntities + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;I)V method_41928 handleBlockUpdate + p 2 state + p 1 pos + p 3 flags + m (Lnet/minecraft/class_9209;Lnet/minecraft/class_22;)V method_47437 putClientsideMapState + p 2 state + p 1 id + m (IIIIII)V method_62146 scheduleChunkRenders + p 1 minX + p 2 minY + p 3 minZ + p 4 maxX + p 5 maxY + p 6 maxZ + m (Lnet/minecraft/class_2338;)I method_38535 method_38535 + p 1 pos + m ()Ljava/util/Map; method_35754 getMapStates + m (ILnet/minecraft/class_1297$class_5529;)V method_2945 removeEntity + p 1 entityId + p 2 removalReason + m (Lnet/minecraft/class_2338;)I method_38538 method_38538 + p 1 pos + m (Lnet/minecraft/class_1297;)V method_53875 addEntity + p 1 entity + m (Ljava/lang/Float;I)Ljava/lang/Float; method_76542 method_76542 + p 1 factor + p 2 time + m ()Ljava/util/Set; method_72019 getBlockEntities + m ()V method_29090 tickTime + m (III)V method_18113 scheduleBlockRenders + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_6539;Lnet/minecraft/class_4700;)V method_32121 method_32121 + p 2 cache + p 1 resolver + m ()I method_39024 getSimulationDistance + m (ILjava/lang/Integer;I)Ljava/lang/Integer; method_76540 method_76540 + p 3 time + p 2 color + m ()Lnet/minecraft/class_631; method_2935 getChunkManager + m (I)V method_39023 setSimulationDistance + p 1 simulationDistance + m (Lnet/minecraft/class_2338;)I method_68160 method_68160 + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2394;Z)V method_2938 addParticle + p 2 state + p 3 parameters + p 4 solidBelow + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_243;)V method_41926 processPendingUpdate + p 2 state + p 1 pos + p 3 playerPos + m ()I method_23789 getLightningTicksLeft + m (JJZ)V method_29089 setTime + p 1 time + p 3 timeOfDay + p 5 shouldTickTimeOfDay + m (Lnet/minecraft/class_2338;)I method_38537 method_38537 + p 1 pos + m ()I method_18120 getRegularEntityCount + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)V method_18647 tickPassenger + p 2 passenger + p 1 entity + m ()Lnet/minecraft/class_12205; method_75728 getEnvironmentAttributes + m (DDDDDLnet/minecraft/class_2394;)V method_2932 addParticle + p 3 maxX + p 1 minX + p 11 parameters + p 9 y + p 7 maxZ + p 5 minZ + m (Lnet/minecraft/class_6539;Lnet/minecraft/class_4700;)V method_23779 method_23779 + p 1 cache + p 0 resolver + m (DDDLnet/minecraft/class_3414;Lnet/minecraft/class_3419;FFZJ)V method_43207 playSound + p 11 useDistance + p 12 seed + p 1 x + p 3 y + p 5 z + p 7 event + p 8 category + p 9 volume + p 10 pitch + m (Ljava/util/Map;)V method_35753 putMapStates + p 1 mapStates + m (J)V method_62895 onChunkUnload + p 1 sectionPos + m (IIIILnet/minecraft/class_5819;Lnet/minecraft/class_2248;Lnet/minecraft/class_2338$class_2339;)V method_2943 randomBlockDisplayTick + p 1 centerX + p 2 centerY + p 7 pos + p 3 centerZ + p 4 radius + p 5 random + p 6 block + m ()Lnet/minecraft/class_7202; method_41925 getPendingUpdateManager + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;DDDDDD)V method_74253 method_74253 + p 13 maxZ + p 3 minX + p 7 minZ + p 5 minY + p 11 maxY + p 9 maxX + m ()Lnet/minecraft/class_2248; method_35752 getBlockParticle + m ()V method_23784 reloadColor + m (Lnet/minecraft/class_2561;)V method_8525 disconnect + p 1 reasonText + m ()Lnet/minecraft/class_638$class_5271; method_28104 getLevelProperties + m (I)V method_41927 handlePlayerActionResponse + p 1 sequence + m (Lnet/minecraft/class_2394;ZZDDDDDD)V method_74919 addParticle + m (Lnet/minecraft/class_243;FILnet/minecraft/class_6012;)V method_73228 addBlockParticleEffects + p 4 particles + p 3 blockCount + p 2 radius + p 1 center + m (Ljava/lang/Runnable;)V method_38536 enqueueChunkUpdate + p 1 updater + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_6539;)I method_23780 calculateColor + p 1 pos + p 2 colorResolver +c net/minecraft/class_638$class_5612 net/minecraft/client/world/ClientWorld$ClientEntityHandler + m (Lnet/minecraft/class_1297;)V method_32125 create + m (Lnet/minecraft/class_1297;)V method_32130 stopTracking + m (Lnet/minecraft/class_1297;)V method_32129 startTracking + m (Lnet/minecraft/class_1297;)V method_32128 stopTicking + m (Lnet/minecraft/class_1297;)V method_32127 startTicking + m (Lnet/minecraft/class_1297;)V method_43208 updateLoadStatus + m (Lnet/minecraft/class_1297;)V method_32126 destroy +c net/minecraft/class_638$class_5271 net/minecraft/client/world/ClientWorld$Properties + f Z field_24440 raining + f Z field_24442 difficultyLocked + f J field_24438 time + f J field_24439 timeOfDay + f Lnet/minecraft/class_5217$class_12064; field_63066 position + f Lnet/minecraft/class_1267; field_24441 difficulty + f Z field_24433 hardcore + f Z field_24607 flatWorld + m (J)V method_177 setTime + p 1 time + m (J)V method_165 setTimeOfDay + p 1 timeOfDay + m (Lnet/minecraft/class_1267;)V method_27875 setDifficulty + p 1 difficulty + m ()F method_71646 getVoidDarknessRange + m (Lnet/minecraft/class_1267;ZZ)V + p 1 difficulty + p 2 hardcore + p 3 flatWorld + m (Z)V method_27876 setDifficultyLocked + p 1 difficultyLocked + m (Lnet/minecraft/class_5539;)D method_28105 getSkyDarknessHeight + p 1 world +c net/minecraft/class_655 net/minecraft/client/particle/WaterBubbleParticle +c net/minecraft/class_655$class_656 net/minecraft/client/particle/WaterBubbleParticle$Factory + f Lnet/minecraft/class_4002; field_17785 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3012 createParticle +c net/minecraft/class_653 net/minecraft/client/particle/BubbleColumnUpParticle +c net/minecraft/class_653$class_654 net/minecraft/client/particle/BubbleColumnUpParticle$Factory + f Lnet/minecraft/class_4002; field_17786 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3011 createParticle +c net/minecraft/class_2085 net/minecraft/advancement/criterion/LevitationCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_243;I)V method_9008 trigger + p 1 player + p 3 duration + p 2 startPos + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_243;ILnet/minecraft/class_2085$class_2087;)Z method_22480 method_22480 + p 3 conditions +c net/minecraft/class_2085$class_2087 net/minecraft/advancement/criterion/LevitationCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47305 CODEC + f Lnet/minecraft/class_2096$class_2100; comp_2071 duration + f Ljava/util/Optional; comp_2070 distance + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_243;I)Z method_9014 matches + p 3 duration + p 1 player + p 2 distance + m (Lnet/minecraft/class_2025;)Lnet/minecraft/class_175; method_9013 create + p 0 distance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55051 method_55051 + p 0 instance + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_2096$class_2100;)V + p 1 playerPredicate + p 2 distance + p 3 duration + m ()Ljava/util/Optional; comp_2070 distance + m ()Lnet/minecraft/class_2096$class_2100; comp_2071 duration +c net/minecraft/class_2080 net/minecraft/advancement/criterion/OnKilledCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;)V method_8990 trigger + p 3 killingDamage + p 2 entity + p 1 player + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_47;Lnet/minecraft/class_1282;Lnet/minecraft/class_2080$class_2083;)Z method_22479 method_22479 + p 3 conditions +c net/minecraft/class_2080$class_2083 net/minecraft/advancement/criterion/OnKilledCriterion$Conditions + f Ljava/util/Optional; comp_2068 entity + f Lcom/mojang/serialization/Codec; field_47304 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2069 killingBlow + m (Lnet/minecraft/class_2048$class_2049;Ljava/util/Optional;)Lnet/minecraft/class_175; method_35253 createEntityKilledPlayer + p 1 killingBlow + p 0 killerEntityPredicateBuilder + m (Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/class_175; method_35256 createEntityKilledPlayer + p 1 killingBlow + p 0 entity + m ()Ljava/util/Optional; comp_2068 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55050 method_55050 + p 0 instance + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_175; method_8997 createPlayerKilledEntity + p 0 killedEntityPredicateBuilder + m (Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/class_175; method_35250 createPlayerKilledEntity + p 1 killingBlow + p 0 entity + m (Lnet/minecraft/class_2048$class_2049;Ljava/util/Optional;)Lnet/minecraft/class_175; method_35247 createPlayerKilledEntity + p 0 killedEntityPredicateBuilder + p 1 killingBlow + m (Ljava/util/Optional;Lnet/minecraft/class_2022$class_2023;)Lnet/minecraft/class_175; method_35255 createEntityKilledPlayer + p 1 damageSourcePredicateBuilder + p 0 entity + m ()Lnet/minecraft/class_175; method_8999 createPlayerKilledEntity + m ()Lnet/minecraft/class_175; method_42671 createKillMobNearSculkCatalyst + m ()Lnet/minecraft/class_175; method_8998 createEntityKilledPlayer + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_47;Lnet/minecraft/class_1282;)Z method_9000 test + p 3 killingBlow + p 2 entity + p 1 player + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_175; method_35251 createEntityKilledPlayer + p 0 killerEntityPredicateBuilder + m (Ljava/util/Optional;)Lnet/minecraft/class_175; method_35254 createEntityKilledPlayer + p 0 entity + m (Ljava/util/Optional;Lnet/minecraft/class_2022$class_2023;)Lnet/minecraft/class_175; method_35249 createPlayerKilledEntity + p 1 damageSourcePredicateBuilder + p 0 entity + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 3 killingBlow + p 2 entity + m (Ljava/util/Optional;)Lnet/minecraft/class_175; method_35248 createPlayerKilledEntity + p 0 entity + m (Lnet/minecraft/class_2048$class_2049;Lnet/minecraft/class_2022$class_2023;)Lnet/minecraft/class_175; method_9001 createPlayerKilledEntity + p 1 killingBlowBuilder + p 0 killedEntityPredicateBuilder + m (Lnet/minecraft/class_2048$class_2049;Lnet/minecraft/class_2022$class_2023;)Lnet/minecraft/class_175; method_35252 createEntityKilledPlayer + p 1 damageSourcePredicateBuilder + p 0 killerEntityPredicateBuilder + m ()Ljava/util/Optional; comp_2069 killingBlow +c net/minecraft/class_657 net/minecraft/client/particle/DamageParticle +c net/minecraft/class_657$class_658 net/minecraft/client/particle/DamageParticle$DefaultFactory + f Lnet/minecraft/class_4002; field_17790 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3013 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_657$class_3939 net/minecraft/client/particle/DamageParticle$Factory + f Lnet/minecraft/class_4002; field_18291 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_17580 createParticle +c net/minecraft/class_657$class_659 net/minecraft/client/particle/DamageParticle$EnchantedHitFactory + f Lnet/minecraft/class_4002; field_17791 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3014 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_2050 net/minecraft/predicate/entity/EntityTypePredicate + f Lcom/mojang/serialization/Codec; field_45749 CODEC + f Lnet/minecraft/class_6885; comp_1775 types + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_6862;)Lnet/minecraft/class_2050; method_8926 create + p 1 tag + p 0 entityTypeRegistry + m (Lnet/minecraft/class_1299;)Z method_8925 matches + p 1 type + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_1299;)Lnet/minecraft/class_2050; method_8929 create + p 1 type + p 0 entityTypeRegistry + m ()Lnet/minecraft/class_6885; comp_1775 types + m (Lnet/minecraft/class_6885;)V + p 1 types +c net/minecraft/class_666 net/minecraft/client/particle/DragonBreathParticle + f F field_32653 MAX_BLUE + f F field_32652 MAX_GREEN + f I field_32655 MAX_COLOR + f F field_32651 MAX_RED + f I field_32654 MIN_COLOR + f F field_32650 MIN_BLUE + f Lnet/minecraft/class_4002; field_17793 spriteProvider + f F field_32649 MIN_GREEN + f F field_32648 MIN_RED + f Z field_3792 reachedGround + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_4002;)V + p 12 velocityZ + p 10 velocityY + p 8 velocityX + p 6 z + p 4 y + p 2 x + p 1 world + p 14 spriteProvider +c net/minecraft/class_666$class_667 net/minecraft/client/particle/DragonBreathParticle$Factory + f Lnet/minecraft/class_4002; field_17794 spriteProvider + m (Lnet/minecraft/class_11978;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3019 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_663 net/minecraft/client/particle/BlockLeakParticle + f Z field_22437 obsidianTear + f Lnet/minecraft/class_3611; field_3789 fluid + m (Lnet/minecraft/class_638;DDDLnet/minecraft/class_3611;Lnet/minecraft/class_1058;)V + p 1 world + p 2 x + p 4 y + p 6 z + p 8 fluid + p 9 sprite + m ()V method_18822 updateVelocity + m ()Lnet/minecraft/class_3611; method_32791 getFluid + m ()V method_18821 updateAge +c net/minecraft/class_663$class_11922 net/minecraft/client/particle/BlockLeakParticle$LandingLavaFactory + f Lnet/minecraft/class_4002; field_62606 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74266 createParticle +c net/minecraft/class_663$class_11923 net/minecraft/client/particle/BlockLeakParticle$FallingNectarFactory + f Lnet/minecraft/class_4002; field_62607 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74267 createParticle +c net/minecraft/class_663$class_11920 net/minecraft/client/particle/BlockLeakParticle$FallingLavaFactory + f Lnet/minecraft/class_4002; field_62604 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74264 createParticle +c net/minecraft/class_663$class_11921 net/minecraft/client/particle/BlockLeakParticle$DrippingLavaFactory + f Lnet/minecraft/class_4002; field_62605 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74265 createParticle +c net/minecraft/class_663$class_4498 net/minecraft/client/particle/BlockLeakParticle$FallingHoney +c net/minecraft/class_663$class_4497 net/minecraft/client/particle/BlockLeakParticle$Falling +c net/minecraft/class_663$class_11928 net/minecraft/client/particle/BlockLeakParticle$FallingWaterFactory + f Lnet/minecraft/class_4002; field_62612 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74272 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_663$class_11929 net/minecraft/client/particle/BlockLeakParticle$DrippingWaterFactory + f Lnet/minecraft/class_4002; field_62613 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74273 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_663$class_11926 net/minecraft/client/particle/BlockLeakParticle$LandingObsidianTearFactory + f Lnet/minecraft/class_4002; field_62610 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74270 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_663$class_11927 net/minecraft/client/particle/BlockLeakParticle$FallingSporeBlossomFactory + f Lnet/minecraft/class_4002; field_62611 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74271 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_663$class_11924 net/minecraft/client/particle/BlockLeakParticle$FallingObsidianTearFactory + f Lnet/minecraft/class_4002; field_62608 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74268 createParticle +c net/minecraft/class_663$class_11925 net/minecraft/client/particle/BlockLeakParticle$DrippingObsidianTearFactory + f Lnet/minecraft/class_4002; field_62609 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74269 createParticle +c net/minecraft/class_663$class_11919 net/minecraft/client/particle/BlockLeakParticle$LandingHoneyFactory + f Lnet/minecraft/class_4002; field_62603 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74263 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_663$class_11917 net/minecraft/client/particle/BlockLeakParticle$FallingHoneyFactory + f Lnet/minecraft/class_4002; field_62601 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74261 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_663$class_11918 net/minecraft/client/particle/BlockLeakParticle$DrippingHoneyFactory + f Lnet/minecraft/class_4002; field_62602 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74262 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_663$class_11915 net/minecraft/client/particle/BlockLeakParticle$FallingDripstoneWaterFactory + f Lnet/minecraft/class_4002; field_62599 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74259 createParticle +c net/minecraft/class_663$class_11916 net/minecraft/client/particle/BlockLeakParticle$DrippingDripstoneWaterFactory + f Lnet/minecraft/class_4002; field_62600 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74260 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_663$class_11913 net/minecraft/client/particle/BlockLeakParticle$FallingDripstoneLavaFactory + f Lnet/minecraft/class_4002; field_62597 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74257 createParticle +c net/minecraft/class_663$class_11914 net/minecraft/client/particle/BlockLeakParticle$DrippingDripstoneLavaFactory + f Lnet/minecraft/class_4002; field_62598 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_74258 createParticle +c net/minecraft/class_663$class_4085 net/minecraft/client/particle/BlockLeakParticle$Landing +c net/minecraft/class_663$class_5692 net/minecraft/client/particle/BlockLeakParticle$DripstoneLavaDrip +c net/minecraft/class_663$class_4083 net/minecraft/client/particle/BlockLeakParticle$ContinuousFalling + f Lnet/minecraft/class_2394; field_18292 nextParticle + m (Lnet/minecraft/class_638;DDDLnet/minecraft/class_3611;Lnet/minecraft/class_2394;Lnet/minecraft/class_1058;)V + p 2 x + p 1 world + p 6 z + p 4 y + p 10 sprite + p 8 fluid +c net/minecraft/class_663$class_4084 net/minecraft/client/particle/BlockLeakParticle$Dripping + f Lnet/minecraft/class_2394; field_18293 nextParticle + m (Lnet/minecraft/class_638;DDDLnet/minecraft/class_3611;Lnet/minecraft/class_2394;Lnet/minecraft/class_1058;)V + p 4 y + p 1 world + p 2 x + p 8 fluid + p 6 z + p 9 nextParticle + p 10 sprite +c net/minecraft/class_663$class_4082 net/minecraft/client/particle/BlockLeakParticle$DrippingLava +c net/minecraft/class_668 net/minecraft/client/particle/ConnectionParticle + f D field_3793 startZ + f D field_3794 startY + f D field_3795 startX + f Z field_48938 fullBrightness + f Lnet/minecraft/class_703$class_9213; field_48939 dynamicAlpha + m (Lnet/minecraft/class_638;DDDDDDZLnet/minecraft/class_703$class_9213;Lnet/minecraft/class_1058;)V + p 6 z + p 8 velocityX + p 2 x + p 4 y + p 14 fullBrightness + p 15 dynamicAlpha + p 16 sprite + p 1 world + p 10 velocityY + p 12 velocityZ +c net/minecraft/class_668$class_669 net/minecraft/client/particle/ConnectionParticle$NautilusFactory + f Lnet/minecraft/class_4002; field_17804 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3020 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_668$class_9212 net/minecraft/client/particle/ConnectionParticle$VaultConnectionFactory + f Lnet/minecraft/class_4002; field_48940 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_56832 createParticle +c net/minecraft/class_668$class_670 net/minecraft/client/particle/ConnectionParticle$EnchantFactory + f Lnet/minecraft/class_4002; field_17803 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3021 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_3389 net/minecraft/server/rcon/RconClient + f Z field_14488 authenticated + f [B field_14490 packetBuffer + f Lorg/slf4j/Logger; field_14491 LOGGER + f Lnet/minecraft/class_2994; field_23965 server + f Ljava/lang/String; field_14492 password + f Ljava/net/Socket; field_14489 socket + m (Lnet/minecraft/class_2994;Ljava/lang/String;Ljava/net/Socket;)V + p 3 socket + p 2 password + p 1 server + m (IILjava/lang/String;)V method_14790 respond + p 3 message + p 2 responseType + p 1 sessionToken + m ()V method_14788 close + m (ILjava/lang/String;)V method_14789 respond + p 1 sessionToken + p 2 message + m ()V method_14787 fail +c net/minecraft/class_2058 net/minecraft/advancement/criterion/FishingRodHookedCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1799;Lnet/minecraft/class_1536;Ljava/util/Collection;)V method_8939 trigger + p 1 player + p 3 bobber + p 2 rod + p 4 fishingLoots + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_47;Ljava/util/Collection;Lnet/minecraft/class_2058$class_2060;)Z method_22472 method_22472 + p 3 conditions +c net/minecraft/class_2058$class_2060 net/minecraft/advancement/criterion/FishingRodHookedCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47259 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2054 rod + f Ljava/util/Optional; comp_2056 item + f Ljava/util/Optional; comp_2055 entity + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_47;Ljava/util/Collection;)Z method_27810 matches + p 3 fishingLoots + p 1 rodStack + p 2 hookedEntity + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/class_175; method_8947 create + p 1 hookedEntity + p 2 caughtItem + p 0 rod + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 2 rod + p 1 playerPredicate + p 4 caughtItem + p 3 hookedEntity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54992 method_54992 + p 0 instance + m ()Ljava/util/Optional; comp_2054 rod + m ()Ljava/util/Optional; comp_2055 entity + m ()Ljava/util/Optional; comp_2056 item +c net/minecraft/class_2054 net/minecraft/advancement/criterion/FilledBucketCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1799;)V method_8932 trigger + p 1 player + p 2 stack + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_2054$class_2056;)Z method_22471 method_22471 + p 1 conditions +c net/minecraft/class_2054$class_2056 net/minecraft/advancement/criterion/FilledBucketCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47251 CODEC + f Ljava/util/Optional; comp_2053 item + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54991 method_54991 + p 0 instance + m (Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_175; method_8937 create + p 0 item + m (Lnet/minecraft/class_1799;)Z method_8938 matches + p 1 stack + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 2 item + m ()Ljava/util/Optional; comp_2053 item +c net/minecraft/class_661 net/minecraft/client/particle/BubblePopParticle + f Lnet/minecraft/class_4002; field_17787 spriteProvider + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_4002;)V + p 6 z + p 8 velocityX + p 2 x + p 1 world + p 4 y + p 14 spriteProvider + p 10 velocityY + p 12 velocityZ +c net/minecraft/class_661$class_662 net/minecraft/client/particle/BubblePopParticle$Factory + f Lnet/minecraft/class_4002; field_17788 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3016 createParticle +c net/minecraft/class_677 net/minecraft/client/particle/FireworksSparkParticle +c net/minecraft/class_677$class_679 net/minecraft/client/particle/FireworksSparkParticle$ExplosionFactory + f Lnet/minecraft/class_4002; field_17811 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3025 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_677$class_681 net/minecraft/client/particle/FireworksSparkParticle$FireworkParticle + f [[D field_49566 STAR_PATTERN + f Lnet/minecraft/class_702; field_3805 particleManager + f I field_3808 age + f Z field_3807 flicker + f Ljava/util/List; field_3806 explosions + f [[D field_49565 CREEPER_PATTERN + m (DDDDDDLit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V method_3030 addExplosionParticle + p 5 z + p 3 y + p 9 velocityY + p 7 velocityX + p 13 colors + p 14 targetColors + p 11 velocityZ + p 1 x + p 15 trail + p 16 flicker + m (DILit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V method_3031 explodeBall + p 1 size + p 3 amount + p 4 colors + p 5 targetColors + p 6 trail + p 7 flicker + m (D[[DLit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZZ)V method_3028 explodeStar + p 1 size + p 8 keepShape + p 6 trail + p 7 flicker + p 4 colors + p 5 targetColors + p 3 pattern + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_702;Ljava/util/List;)V + p 10 velocityY + p 8 velocityX + p 6 z + p 4 y + p 2 x + p 1 world + p 15 fireworkExplosions + p 14 particleManager + p 12 velocityZ + m (Lit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V method_3032 explodeBurst + p 4 flicker + p 3 trail + p 2 targetColors + p 1 colors + m ()Z method_3029 isFar +c net/minecraft/class_677$class_680 net/minecraft/client/particle/FireworksSparkParticle$Explosion + f Z field_3804 trail + f Z field_3803 flicker + f Lnet/minecraft/class_702; field_3798 particleManager + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_702;Lnet/minecraft/class_4002;)V + p 4 y + p 2 x + p 1 world + p 14 particleManager + p 15 spriteProvider + p 12 velocityZ + p 10 velocityY + p 8 velocityX + p 6 z + m (Z)V method_3027 setTrail + p 1 trail + m (Z)V method_3026 setFlicker + p 1 flicker +c net/minecraft/class_677$class_3997 net/minecraft/client/particle/FireworksSparkParticle$FlashFactory + f Lnet/minecraft/class_4002; field_17810 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_9381;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_18121 createParticle +c net/minecraft/class_677$class_678 net/minecraft/client/particle/FireworksSparkParticle$Flash +c net/minecraft/class_2062 net/minecraft/advancement/criterion/ImpossibleCriterion +c net/minecraft/class_2062$class_2063 net/minecraft/advancement/criterion/ImpossibleCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47262 CODEC +c net/minecraft/class_675 net/minecraft/client/particle/EndRodParticle + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_4002;)V + p 8 velocityX + p 10 velocityY + p 4 y + p 6 z + p 1 world + p 2 x + p 12 velocityZ + p 14 spriteProvider +c net/minecraft/class_675$class_676 net/minecraft/client/particle/EndRodParticle$Factory + f Lnet/minecraft/class_4002; field_17805 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3024 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_3390 net/minecraft/structure/NetherFortressGenerator + f [Lnet/minecraft/class_3390$class_3404; field_14494 ALL_BRIDGE_PIECES + f [Lnet/minecraft/class_3390$class_3404; field_14493 ALL_CORRIDOR_PIECES + m (Lnet/minecraft/class_3390$class_3404;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3390$class_3403; method_14795 createPiece + p 7 chainLength + p 6 orientation + p 5 z + p 4 y + p 3 x + p 2 random + p 1 holder + p 0 pieceData +c net/minecraft/class_3390$class_3407 net/minecraft/structure/NetherFortressGenerator$Start + f Ljava/util/List; field_14505 pieces + f Ljava/util/List; field_14507 bridgePieces + f Ljava/util/List; field_14504 corridorPieces + f Lnet/minecraft/class_3390$class_3404; field_14506 lastPiece + m (Lnet/minecraft/class_5819;II)V + p 3 z + p 2 x + p 1 random +c net/minecraft/class_3390$class_3406 net/minecraft/structure/NetherFortressGenerator$BridgeStairs + f I field_31600 SIZE_Z + f I field_31599 SIZE_Y + f I field_31598 SIZE_X + m (ILnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 2 boundingBox + p 3 orientation + p 1 chainLength + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_6130;IIIILnet/minecraft/class_2350;)Lnet/minecraft/class_3390$class_3406; method_14818 create + p 1 x + p 2 y + p 0 holder + p 5 orientation + p 3 z + p 4 chainlength +c net/minecraft/class_3390$class_3399 net/minecraft/structure/NetherFortressGenerator$SmallCorridor + f I field_31585 SIZE_Z + f I field_31584 SIZE_Y + f I field_31583 SIZE_X + m (Lnet/minecraft/class_6130;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3390$class_3399; method_14804 create + p 0 holder + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 chainLength + m (ILnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 3 orientation + p 2 boundingBox + p 1 chainLength + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3390$class_3398 net/minecraft/structure/NetherFortressGenerator$CorridorLeftTurn + f Z field_14496 containsChest + f I field_31580 SIZE_X + f I field_31582 SIZE_Z + f I field_31581 SIZE_Y + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3390$class_3398; method_14803 create + p 5 orientation + p 4 z + p 6 chainLength + p 1 random + p 0 holder + p 3 y + p 2 x + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 1 chainLength + p 2 random + p 3 boundingBox + p 4 orientation + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3390$class_3401 net/minecraft/structure/NetherFortressGenerator$CorridorNetherWartsRoom + f I field_31589 SIZE_X + f I field_31591 SIZE_Z + f I field_31590 SIZE_Y + m (ILnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 1 chainLength + p 2 boundingBox + p 3 orientation + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_6130;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3390$class_3401; method_14806 create + p 3 z + p 2 y + p 5 chainlength + p 4 orientation + p 1 x + p 0 holder +c net/minecraft/class_3390$class_3400 net/minecraft/structure/NetherFortressGenerator$CorridorRightTurn + f I field_31588 SIZE_Z + f I field_31587 SIZE_Y + f I field_31586 SIZE_X + f Z field_14497 containsChest + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 1 chainLength + p 2 random + p 3 boundingBox + p 4 orientation + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3390$class_3400; method_14805 create + p 6 chainLength + p 0 holder + p 1 random + p 4 z + p 5 orientation + p 2 x + p 3 y +c net/minecraft/class_3390$class_3403 net/minecraft/structure/NetherFortressGenerator$Piece + m (Ljava/util/List;)I method_14810 checkRemainingPieces + p 1 possiblePieces + m (Lnet/minecraft/class_3390$class_3407;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;IZ)Lnet/minecraft/class_3443; method_14813 pieceGenerator + p 8 chainLength + p 7 orientation + p 6 z + p 5 y + p 9 inside + p 4 x + p 3 random + p 2 holder + p 1 start + m (Lnet/minecraft/class_3390$class_3407;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIZ)Lnet/minecraft/class_3443; method_14812 fillNWOpening + p 4 heightOffset + p 5 leftRightOffset + p 6 inside + p 1 start + p 2 holder + p 3 random + m (Lnet/minecraft/class_3390$class_3407;Ljava/util/List;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3390$class_3403; method_14811 pickPiece + p 8 orientation + p 9 chainLength + p 6 y + p 7 z + p 4 random + p 5 x + p 2 possiblePieces + p 3 holder + p 1 start + m (Lnet/minecraft/class_3390$class_3407;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIZ)Lnet/minecraft/class_3443; method_14808 fillSEOpening + p 4 heightOffset + p 3 random + p 2 holder + p 1 start + p 6 inside + p 5 leftRightOffset + m (Lnet/minecraft/class_3390$class_3407;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIZ)Lnet/minecraft/class_3443; method_14814 fillForwardOpening + p 6 inside + p 2 holder + p 3 random + p 4 leftRightOffset + p 5 heightOffset + p 1 start + m (Lnet/minecraft/class_3341;)Z method_14809 isInBounds + p 0 boundingBox +c net/minecraft/class_3390$class_3402 net/minecraft/structure/NetherFortressGenerator$BridgePlatform + f I field_31594 SIZE_Z + f I field_31593 SIZE_Y + f I field_31592 SIZE_X + f Z field_14498 hasBlazeSpawner + m (Lnet/minecraft/class_6130;IIIILnet/minecraft/class_2350;)Lnet/minecraft/class_3390$class_3402; method_14807 create + p 0 holder + p 1 x + p 2 y + p 3 z + p 4 chainLength + p 5 orientation + m (ILnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 1 chainLength + p 2 boundingBox + p 3 orientation + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3390$class_3405 net/minecraft/structure/NetherFortressGenerator$BridgeSmallCrossing + f I field_31597 SIZE_Z + f I field_31596 SIZE_Y + f I field_31595 SIZE_X + m (ILnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 2 boundingBox + p 1 chainLength + p 3 orientation + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_6130;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3390$class_3405; method_14817 create + p 5 chainLength + p 4 orientation + p 3 z + p 2 y + p 1 x + p 0 holder +c net/minecraft/class_3390$class_3404 net/minecraft/structure/NetherFortressGenerator$PieceData + f Ljava/lang/Class; field_14501 pieceType + f I field_14503 weight + f I field_14502 generatedCount + f I field_14499 limit + f Z field_14500 repeatable + m (Ljava/lang/Class;II)V + p 2 weight + p 1 pieceType + p 3 limit + m ()Z method_14815 canGenerate + m (Ljava/lang/Class;IIZ)V + p 4 repeatable + p 3 limit + p 2 weight + p 1 pieceType + m (I)Z method_14816 canGenerate + p 1 chainLength +c net/minecraft/class_3390$class_3391 net/minecraft/structure/NetherFortressGenerator$BridgeCrossing + f I field_31561 SIZE_Z + f I field_31560 SIZE_Y + f I field_31559 SIZE_X + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (IILnet/minecraft/class_2350;)V + p 1 x + p 2 z + p 3 orientation + m (ILnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 1 chainLength + p 2 boundingBox + p 3 orientation + m (Lnet/minecraft/class_6130;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3390$class_3391; method_14796 create + p 5 chainLength + p 4 orientation + p 3 z + p 2 y + p 1 x + p 0 holder +c net/minecraft/class_3390$class_3393 net/minecraft/structure/NetherFortressGenerator$Bridge + f I field_31565 SIZE_X + f I field_31567 SIZE_Z + f I field_31566 SIZE_Y + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3390$class_3393; method_14798 create + p 6 chainLength + p 5 orientation + p 0 holder + p 2 x + p 1 random + p 4 z + p 3 y + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 1 chainLength + p 3 boundingBox + p 2 random + p 4 orientation + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3390$class_3392 net/minecraft/structure/NetherFortressGenerator$BridgeEnd + f I field_31564 SIZE_Z + f I field_31563 SIZE_Y + f I field_31562 SIZE_X + f I field_14495 seed + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3390$class_3392; method_14797 create + p 6 chainLength + p 1 random + p 0 holder + p 3 y + p 2 x + p 5 orientation + p 4 z + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 2 random + p 1 chainLength + p 4 orientation + p 3 boundingBox + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3390$class_3395 net/minecraft/structure/NetherFortressGenerator$CorridorBalcony + f I field_31573 SIZE_Z + f I field_31572 SIZE_Y + f I field_31571 SIZE_X + m (ILnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 2 boundingBox + p 1 chainLength + p 3 orientation + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_6130;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3390$class_3395; method_14800 create + p 4 orientation + p 5 chainLength + p 2 y + p 3 z + p 0 holder + p 1 x +c net/minecraft/class_3390$class_3394 net/minecraft/structure/NetherFortressGenerator$CorridorStairs + f I field_31568 SIZE_X + f I field_31570 SIZE_Z + f I field_31569 SIZE_Y + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (ILnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 1 chainLength + p 3 orientation + p 2 boundingBox + m (Lnet/minecraft/class_6130;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3390$class_3394; method_14799 create + p 5 chainLength + p 1 x + p 2 y + p 3 z + p 4 orientation + p 0 holder +c net/minecraft/class_3390$class_3397 net/minecraft/structure/NetherFortressGenerator$CorridorCrossing + f I field_31579 SIZE_Z + f I field_31578 SIZE_Y + f I field_31577 SIZE_X + m (ILnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 1 chainLength + p 2 boundingBox + p 3 orientation + m (Lnet/minecraft/class_6130;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3390$class_3397; method_14802 create + p 5 chainLength + p 4 orientation + p 3 z + p 2 y + p 1 x + p 0 holder + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3390$class_3396 net/minecraft/structure/NetherFortressGenerator$CorridorExit + f I field_31575 SIZE_Y + f I field_31574 SIZE_X + f I field_31576 SIZE_Z + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3390$class_3396; method_14801 create + p 0 holder + p 1 random + p 6 chainLength + p 2 x + p 3 y + p 4 z + p 5 orientation + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 4 orientation + p 3 boundingBox + p 2 random + p 1 chainLength + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_2069 net/minecraft/advancement/criterion/ItemDurabilityChangedCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1799;I)V method_8960 trigger + p 3 durability + p 2 stack + p 1 player + m (Lnet/minecraft/class_1799;ILnet/minecraft/class_2069$class_2071;)Z method_22477 method_22477 + p 2 conditions +c net/minecraft/class_2069$class_2071 net/minecraft/advancement/criterion/ItemDurabilityChangedCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47266 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2062 item + f Lnet/minecraft/class_2096$class_2100; comp_2063 durability + f Lnet/minecraft/class_2096$class_2100; comp_2064 delta + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_2096$class_2100;Lnet/minecraft/class_2096$class_2100;)V + p 3 durability + p 4 delta + p 1 playerPredicate + p 2 item + m (Ljava/util/Optional;Lnet/minecraft/class_2096$class_2100;)Lnet/minecraft/class_175; method_35229 create + p 1 durability + p 0 item + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55000 method_55000 + p 0 instance + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_2096$class_2100;)Lnet/minecraft/class_175; method_8967 create + p 0 playerPredicate + p 2 durability + p 1 item + m (Lnet/minecraft/class_1799;I)Z method_8968 matches + p 1 stack + p 2 durability + m ()Lnet/minecraft/class_2096$class_2100; comp_2063 durability + m ()Lnet/minecraft/class_2096$class_2100; comp_2064 delta + m ()Ljava/util/Optional; comp_2062 item +c net/minecraft/class_673 net/minecraft/client/particle/ExplosionSmokeParticle + f Lnet/minecraft/class_4002; field_17806 spriteProvider + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_4002;)V + p 6 z + p 8 velocityX + p 2 x + p 4 y + p 14 spriteProvider + p 1 world + p 10 velocityY + p 12 velocityZ +c net/minecraft/class_673$class_674 net/minecraft/client/particle/ExplosionSmokeParticle$Factory + f Lnet/minecraft/class_4002; field_17807 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3023 createParticle +c net/minecraft/class_2066 net/minecraft/advancement/criterion/InventoryChangedCriterion + m (Lnet/minecraft/class_1661;Lnet/minecraft/class_1799;IIILnet/minecraft/class_2066$class_2068;)Z method_22476 method_22476 + p 5 conditions + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1661;Lnet/minecraft/class_1799;III)V method_24362 trigger + p 6 occupied + p 4 full + p 5 empty + p 2 inventory + p 3 stack + p 1 player + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1661;Lnet/minecraft/class_1799;)V method_8950 trigger + p 1 player + p 3 stack + p 2 inventory +c net/minecraft/class_2066$class_2068 net/minecraft/advancement/criterion/InventoryChangedCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47263 CODEC + f Ljava/util/List; comp_2058 items + f Lnet/minecraft/class_2066$class_2068$class_8948; comp_2057 slots + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54997 method_54997 + p 0 instance + m ([Lnet/minecraft/class_1935;)Lnet/minecraft/class_175; method_8959 items + p 0 items + m ([Lnet/minecraft/class_2073;)Lnet/minecraft/class_175; method_8957 items + p 0 items + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_2073;)Z method_24363 method_24363 + p 1 item + m (Ljava/util/Optional;Lnet/minecraft/class_2066$class_2068$class_8948;Ljava/util/List;)V + p 1 playerPredicate + p 2 slots + p 3 items + m ([Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_175; method_53160 items + p 0 items + m (Lnet/minecraft/class_1661;Lnet/minecraft/class_1799;III)Z method_8958 matches + p 3 full + p 4 empty + p 5 occupied + p 1 inventory + p 2 stack + m ()Lnet/minecraft/class_2066$class_2068$class_8948; comp_2057 slots + m ()Ljava/util/List; comp_2058 items +c net/minecraft/class_2066$class_2068$class_8948 net/minecraft/advancement/criterion/InventoryChangedCriterion$Conditions$Slots + f Lcom/mojang/serialization/Codec; field_47264 CODEC + f Lnet/minecraft/class_2066$class_2068$class_8948; field_47265 ANY + f Lnet/minecraft/class_2096$class_2100; comp_2060 full + f Lnet/minecraft/class_2096$class_2100; comp_2061 empty + f Lnet/minecraft/class_2096$class_2100; comp_2059 occupied + m (III)Z method_54998 test + p 2 empty + p 3 occupied + p 1 full + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54999 method_54999 + p 0 instance + m ()Lnet/minecraft/class_2096$class_2100; comp_2061 empty + m ()Lnet/minecraft/class_2096$class_2100; comp_2060 full + m ()Lnet/minecraft/class_2096$class_2100; comp_2059 occupied + m (Lnet/minecraft/class_2096$class_2100;Lnet/minecraft/class_2096$class_2100;Lnet/minecraft/class_2096$class_2100;)V + p 1 occupied + p 2 full + p 3 empty +c net/minecraft/class_671 net/minecraft/client/particle/RedDustParticle + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_2390;Lnet/minecraft/class_4002;)V + p 6 z + p 4 y + p 2 x + p 1 world + p 15 spriteProvider + p 14 parameters + p 12 velocityZ + p 10 velocityY + p 8 velocityX +c net/minecraft/class_671$class_672 net/minecraft/client/particle/RedDustParticle$Factory + f Lnet/minecraft/class_4002; field_17802 spriteProvider + m (Lnet/minecraft/class_2390;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3022 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_4691 net/minecraft/client/render/entity/feature/IronGolemCrackFeatureRenderer + f Ljava/util/Map; field_21443 CRACK_TEXTURES + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10037;FF)V method_23623 render +c net/minecraft/class_600 net/minecraft/client/render/entity/model/ShieldEntityModel + c Represents the model of a held shield.\n\n

\n\n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value #PLATE}{@linkplain #root Root part}{@link #plate}
{@value #HANDLE}{@linkplain #root Root part}{@link #handle}
\n
+ f Lnet/minecraft/class_630; field_3551 handle + f Lnet/minecraft/class_630; field_3550 plate + f Ljava/lang/String; field_32550 HANDLE + c The key of the handle model part, whose value is {@value}. + f Ljava/lang/String; field_32549 PLATE + c The key of the plate model part, whose value is {@value}. + m ()Lnet/minecraft/class_630; method_23775 getHandle + m (Lnet/minecraft/class_630;)V + p 1 root + m ()Lnet/minecraft/class_630; method_23774 getPlate + m ()Lnet/minecraft/class_5607; method_32039 getTexturedModelData +c net/minecraft/class_3360 net/minecraft/world/updater/FeatureUpdater + f Ljava/util/Map; field_14436 ANCIENT_TO_OLD + f Ljava/util/Map; field_14432 featureIdToChunkNbt + f Ljava/util/List; field_17659 newNames + f Z field_14434 needsUpdate + f Ljava/util/Set; field_37194 NEW_STRUCTURE_NAMES + f Lcom/mojang/datafixers/DataFixer; field_63963 dataFixer + f Ljava/util/Map; field_14433 updateStates + f Ljava/util/Map; field_14435 OLD_TO_NEW + f Ljava/util/List; field_17658 oldNames + f I field_63962 TARGET_DATA_VERSION + f Z field_64685 initialized + f Lnet/minecraft/class_26; field_64684 persistentStateManager + m (Ljava/lang/String;Lnet/minecraft/class_2520;)V method_68328 method_68328 + p 2 nbt + p 1 key + m (Lnet/minecraft/class_2487;)Ljava/util/Optional; method_75899 method_75899 + p 0 levelTag + m (JLnet/minecraft/class_2487;Ljava/lang/String;)V method_68326 method_68326 + p 4 id + m (Ljava/lang/String;)Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; method_14736 method_14736 + p 0 featureId + m (Lnet/minecraft/class_26;)V method_14734 init + p 1 persistentStateManager + m (Lnet/minecraft/class_2487;)Ljava/util/Optional; method_68330 method_68330 + p 0 child + m (II)Z method_14737 needsUpdate + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/class_26;Ljava/util/List;Ljava/util/List;Lcom/mojang/datafixers/DataFixer;)V + p 1 persistentStateManager + p 2 oldNames + p 3 newNames + p 4 dataFixer + m (Ljava/util/HashMap;)V method_14739 method_14739 + p 0 map + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_1923;)Lnet/minecraft/class_2487; method_14741 getUpdatedStarts + p 1 nbt + p 2 pos + m (Lnet/minecraft/class_5321;Ljava/util/function/Supplier;Lcom/mojang/datafixers/DataFixer;)Ljava/util/function/Supplier; method_14745 create + p 0 world + p 1 persistentStateManagerSupplier + p 2 dataFixer + m (Lnet/minecraft/class_3440;Ljava/lang/String;Lnet/minecraft/class_2520;)V method_68327 method_68327 + p 1 key + p 2 nbt + m (Ljava/util/HashMap;)V method_14742 method_14742 + p 0 map + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_14735 getUpdatedReferences + p 1 nbt + m (IILjava/lang/String;)Z method_14738 needsUpdate + p 1 chunkX + p 2 chunkZ + p 3 id + m (Lnet/minecraft/class_2487;Ljava/lang/String;)V method_68329 method_68329 + p 1 id +c net/minecraft/class_4693 net/minecraft/test/TimedTaskRunner + f Ljava/util/List; field_21458 tasks + f Lnet/minecraft/class_4517; field_21457 test + f I field_21459 tick + m (I)Lnet/minecraft/class_4693; method_36076 expectMinDuration + p 1 minDuration + m (ILjava/lang/Runnable;)Lnet/minecraft/class_4693; method_36084 expectMinDurationOrRun + p 2 task + p 1 minDuration + m (Lnet/minecraft/class_4517;)V + p 1 gameTest + m (I)V method_23645 runTasks + p 1 tick + m (ILjava/lang/Runnable;)Lnet/minecraft/class_4693; method_36077 expectMinDurationAndRun + p 2 task + p 1 minDuration + m (JLjava/lang/Runnable;)Lnet/minecraft/class_4693; method_36078 createAndAdd + p 1 duration + p 3 task + m (I)V method_23644 runReported + p 1 tick + m (I)V method_23643 runSilently + p 1 tick + m (Ljava/lang/Runnable;)Lnet/minecraft/class_4693; method_36085 createAndAddReported + p 1 task + m (Ljava/lang/Runnable;)Lnet/minecraft/class_4693; method_36079 createAndAdd + p 1 task + m (Ljava/lang/Runnable;)V method_36089 tryRun + p 1 task + m ()V method_36075 completeIfSuccessful + m ()Lnet/minecraft/class_4693$class_6304; method_36083 createAndAddTrigger + m (Ljava/util/function/Supplier;)V method_36080 fail + p 1 exceptionSupplier +c net/minecraft/class_4693$class_6304 net/minecraft/test/TimedTaskRunner$Trigger + f I field_33154 UNTRIGGERED_TICK + f I field_33155 triggeredTick + m ()V method_36092 checkTrigger + m (I)V method_36093 trigger + p 1 tick +c net/minecraft/class_2030 net/minecraft/advancement/criterion/EnchantedItemCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1799;I)V method_8870 trigger + p 3 levels + p 2 stack + p 1 player + m (Lnet/minecraft/class_1799;ILnet/minecraft/class_2030$class_2032;)Z method_22463 method_22463 + p 2 conditions +c net/minecraft/class_2030$class_2032 net/minecraft/advancement/criterion/EnchantedItemCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47241 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2048 item + f Lnet/minecraft/class_2096$class_2100; comp_2049 levels + m (Lnet/minecraft/class_1799;I)Z method_8878 matches + p 1 stack + p 2 levels + m ()Lnet/minecraft/class_175; method_8877 any + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_2096$class_2100;)V + p 3 levels + p 2 item + p 1 playerPredicate + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54978 method_54978 + p 0 instance + m ()Lnet/minecraft/class_2096$class_2100; comp_2049 levels + m ()Ljava/util/Optional; comp_2048 item +c net/minecraft/class_4692 net/minecraft/test/TimedTask + f Ljava/lang/Runnable; field_21451 task + f Ljava/lang/Long; field_21450 duration + m (Ljava/lang/Long;Ljava/lang/Runnable;)V + p 1 duration + p 2 task + m (JLjava/lang/Runnable;)Lnet/minecraft/class_4692; method_35941 create + p 0 duration + p 2 task + m (Ljava/lang/Runnable;)Lnet/minecraft/class_4692; method_35942 create + p 0 task +c net/minecraft/class_604 net/minecraft/client/render/entity/model/SilverfishEntityModel + f [[I field_3558 SEGMENT_LOCATIONS + f [Lnet/minecraft/class_630; field_3560 body + f [[I field_3559 SEGMENT_SIZES + f I field_32556 BODY_PARTS_COUNT + f [Lnet/minecraft/class_630; field_3557 scales + m (Lnet/minecraft/class_10017;)V method_72863 setAngles + m (I)Ljava/lang/String; method_32045 getSegmentName + p 0 index + m (I)Ljava/lang/String; method_32043 getLayerName + p 0 index + m ()Lnet/minecraft/class_5607; method_32042 getTexturedModelData +c net/minecraft/class_603 net/minecraft/client/render/entity/model/ShulkerBulletEntityModel + c Represents the model of shulker-bullet-like entity.\n\n
\n\n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value #MAIN}{@linkplain #root Root part}{@link #bullet}
\n
+ f Ljava/lang/String; field_32553 MAIN + c The key of the main model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_3556 bullet + m (Lnet/minecraft/class_10064;)V method_62114 setAngles + m ()Lnet/minecraft/class_5607; method_32040 getTexturedModelData +c net/minecraft/class_602 net/minecraft/client/render/entity/model/ShulkerEntityModel + f Lnet/minecraft/class_630; field_3555 lid + f Lnet/minecraft/class_630; field_3554 head + f Ljava/lang/String; field_32555 BASE + c The key of the base model part, whose value is {@value}. + f Ljava/lang/String; field_32554 LID + c The key of the lid model part, whose value is {@value}. + m ()Lnet/minecraft/class_5607; method_32041 getTexturedModelData + m ()Lnet/minecraft/class_5609; method_62116 getModelData + m ()Lnet/minecraft/class_5607; method_62115 getShulkerBoxTexturedModelData + m (Lnet/minecraft/class_10065;)V method_17122 setAngles +c net/minecraft/class_601 net/minecraft/client/render/entity/model/SheepEntityModel + f Lnet/minecraft/class_9953; field_52936 BABY_TRANSFORMER + m (Lnet/minecraft/class_10063;)V method_17121 setAngles + m ()Lnet/minecraft/class_5607; method_32038 getTexturedModelData +c net/minecraft/class_4698 net/minecraft/world/storage/StorageIoWorker + f Lorg/slf4j/Logger; field_21495 LOGGER + f I field_38241 MAX_CACHE_SIZE + f Ljava/util/function/Supplier; field_63958 NULL_NBT_SUPPLIER + f Ljava/util/SequencedMap; field_21500 results + f Lnet/minecraft/class_10177; field_54149 executor + f Ljava/util/concurrent/atomic/AtomicBoolean; field_21497 closed + f Lnet/minecraft/class_2867; field_21499 storage + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; field_38240 blendingStatusCaches + m (Ljava/util/concurrent/CompletableFuture;)V method_64028 method_64028 + p 0 future + m (Z)Ljava/util/concurrent/CompletableFuture; method_23698 completeAll + p 1 sync + m ()V method_64030 runRemainingTasks + m (II)Ljava/util/concurrent/CompletableFuture; method_42333 computeBlendingStatus + p 1 chunkX + p 2 chunkZ + m ()Lnet/minecraft/class_9240; method_61004 getStorageKey + m (Lnet/minecraft/class_1923;)Ljava/util/concurrent/CompletableFuture; method_31738 readChunkData + p 1 pos + m (Lnet/minecraft/class_1923;I)Z method_42330 needsBlending + p 1 chunkPos + p 2 checkRadius + m ()V method_27945 writeRemainingResults + m ()V method_23719 writeResult + m (Lnet/minecraft/class_2487;)Z method_42332 needsBlending + p 1 nbt + m (Lnet/minecraft/class_4698$class_4699;)Ljava/util/concurrent/CompletableFuture; method_23705 method_23705 + p 0 result + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_1923;)Lnet/minecraft/class_4698$class_4699; method_23711 method_23711 + p 1 pos2 + m (Lnet/minecraft/class_4698$class_10195;)Ljava/util/concurrent/CompletableFuture; method_64026 run + p 1 task + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_2487;)Ljava/util/concurrent/CompletableFuture; method_23703 setResult + p 2 nbt + p 1 pos + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_4698$class_4699;)V method_23701 write + p 1 pos + p 2 result + m (Ljava/lang/Void;)Ljava/util/concurrent/CompletionStage; method_27940 method_27940 + p 1 void_ + m (Ljava/util/BitSet;Lnet/minecraft/class_1923;)V method_42331 method_42331 + p 2 chunkPos + m (II)Ljava/util/concurrent/CompletableFuture; method_42329 getOrComputeBlendingStatus + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/class_9240;Ljava/nio/file/Path;Z)V + p 3 dsync + p 2 directory + p 1 storageKey + m (Lnet/minecraft/class_1923;Ljava/util/function/Supplier;)Ljava/util/concurrent/CompletableFuture; method_61773 setResult + p 2 nbtSupplier + p 1 pos + m (Lnet/minecraft/class_4698$class_10195;Ljava/util/concurrent/CompletableFuture;)V method_64027 method_64027 + p 2 future + m (Ljava/util/function/Supplier;)Ljava/util/concurrent/CompletableFuture; method_23709 run + p 1 task + m (Ljava/lang/Void;)Ljava/util/concurrent/CompletionStage; method_37479 method_37479 + p 1 void_ +c net/minecraft/class_4698$class_5276 net/minecraft/world/storage/StorageIoWorker$Priority + f Lnet/minecraft/class_4698$class_5276; field_27237 FOREGROUND + f Lnet/minecraft/class_4698$class_5276; field_27239 SHUTDOWN + f Lnet/minecraft/class_4698$class_5276; field_27238 BACKGROUND +c net/minecraft/class_4698$class_10195 net/minecraft/world/storage/StorageIoWorker$Callable +c net/minecraft/class_4698$class_4699 net/minecraft/world/storage/StorageIoWorker$Result + f Ljava/util/concurrent/CompletableFuture; field_21504 future + f Lnet/minecraft/class_2487; field_21503 nbt + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m ()Lnet/minecraft/class_2487; method_60627 copyNbt +c net/minecraft/class_2037 net/minecraft/advancement/criterion/EnterBlockCriterion + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2037$class_2039;)Z method_22465 method_22465 + p 1 conditions + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_2680;)V method_8885 trigger + p 1 player + p 2 state +c net/minecraft/class_2037$class_2039 net/minecraft/advancement/criterion/EnterBlockCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47242 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2051 state + f Ljava/util/Optional; comp_2050 block + m (Lnet/minecraft/class_2037$class_2039;)Lcom/mojang/serialization/DataResult; method_54979 validate + p 0 conditions + m (Lnet/minecraft/class_6880;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_54983 method_54983 + p 1 property + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 3 state + p 1 playerPredicate + p 2 block + m (Lnet/minecraft/class_2680;)Z method_8891 matches + p 1 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54981 method_54981 + p 0 instance + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_175; method_8890 block + p 0 block + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_4559;)Ljava/util/Optional; method_54982 method_54982 + p 1 state + m (Lnet/minecraft/class_2037$class_2039;Lnet/minecraft/class_6880;)Ljava/util/Optional; method_54980 method_54980 + p 1 block + m ()Ljava/util/Optional; comp_2051 state + m ()Ljava/util/Optional; comp_2050 block +c net/minecraft/class_4695 net/minecraft/datafixer/fix/StructureReferenceFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_23664 method_23664 + p 0 referencesDynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_23662 method_23662 + p 0 structureFeatureTyped + m (Ljava/lang/Integer;)Z method_23663 method_23663 + p 0 references + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_23661 updateReferences + p 0 structureFeatureDynamic +c net/minecraft/class_4694 net/minecraft/server/command/SpectateCommand + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_62502 CANNOT_SPECTATE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_21463 SPECTATE_SELF_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_21464 NOT_SPECTATOR_EXCEPTION + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_23653 register + p 0 dispatcher + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_23655 method_23655 + p 0 playerName + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23657 method_23657 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_74072 method_74072 + p 0 entityName + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23656 method_23656 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23654 method_23654 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_3222;)I method_23652 execute + p 2 player + p 1 entity + p 0 source +c net/minecraft/class_3364 net/minecraft/server/rcon/QueryResponseHandler + f Ljava/lang/String; field_14445 motd + f Ljava/lang/String; field_14447 levelName + f Ljava/lang/String; field_29795 GAME_TYPE + f I field_14457 port + f Ljava/net/DatagramSocket; field_14449 socket + f J field_14443 lastQueryTime + f J field_29797 CLEAN_UP_THRESHOLD + f Ljava/util/Map; field_14453 queries + f Ljava/lang/String; field_14444 ip + f J field_14450 lastResponseTime + f Ljava/lang/String; field_14454 hostname + f Lnet/minecraft/class_3345; field_14446 data + f Lorg/slf4j/Logger; field_23963 LOGGER + f Lnet/minecraft/class_2994; field_23964 server + f Ljava/lang/String; field_29796 GAME_ID + f [B field_14452 packetBuffer + f I field_14442 queryPort + f I field_14456 maxPlayerCount + m (Ljava/lang/Exception;)V method_14752 handleIoException + p 1 e + m (Ljava/net/DatagramPacket;)V method_14749 createQuery + p 1 packet + m (Lnet/minecraft/class_2994;I)V + p 1 server + p 2 queryPort + m (JLnet/minecraft/class_3364$class_3365;)Z method_27174 method_27174 + p 2 query + m (Ljava/net/DatagramPacket;)Z method_14750 handle + p 1 packet + m (Lnet/minecraft/class_2994;)Lnet/minecraft/class_3364; method_30737 create + p 0 server + m ()V method_14746 cleanUp + m ()Z method_14754 initialize + m (Ljava/net/DatagramPacket;)[B method_14747 createRulesReply + p 1 packet + m (Ljava/net/SocketAddress;)[B method_14748 getMessageBytes + p 1 address + m (Ljava/net/DatagramPacket;)Ljava/lang/Boolean; method_14753 isValidQuery + p 1 packet + m ([BLjava/net/DatagramPacket;)V method_14751 reply + p 1 buf + p 2 packet +c net/minecraft/class_3364$class_3365 net/minecraft/server/rcon/QueryResponseHandler$Query + f I field_14458 id + f J field_14459 startTime + f Ljava/lang/String; field_14462 message + f [B field_14460 messageBytes + f [B field_14461 replyBuf + m ()I method_14756 getId + m (Ljava/net/DatagramPacket;)V + p 1 packet + m ()[B method_14758 getMessageBytes + m ()[B method_14757 getReplyBuf + m ()Ljava/lang/String; method_34888 getMessage + m (J)Ljava/lang/Boolean; method_14755 startedBefore + p 1 lastQueryTime +c net/minecraft/class_3366 net/minecraft/structure/OceanMonumentGenerator +c net/minecraft/class_3366$class_3371 net/minecraft/structure/OceanMonumentGenerator$DoubleZRoomFactory +c net/minecraft/class_3366$class_3382 net/minecraft/structure/OceanMonumentGenerator$Entry + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_3366$class_3388;)V + p 2 setting + p 1 orientation + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3366$class_3372 net/minecraft/structure/OceanMonumentGenerator$SimpleRoomFactory +c net/minecraft/class_3366$class_3383 net/minecraft/structure/OceanMonumentGenerator$Penthouse + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_3341;)V + p 2 box + p 1 orientation + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3366$class_3380 net/minecraft/structure/OceanMonumentGenerator$DoubleYZRoom + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_3366$class_3388;)V + p 1 orientation + p 2 setting + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3366$class_3370 net/minecraft/structure/OceanMonumentGenerator$DoubleYZRoomFactory +c net/minecraft/class_3366$class_3381 net/minecraft/structure/OceanMonumentGenerator$DoubleZRoom + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_3366$class_3388;)V + p 1 orientation + p 2 setting + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3366$class_3375 net/minecraft/structure/OceanMonumentGenerator$PieceFactory + m (Lnet/minecraft/class_3366$class_3388;)Z method_14769 canGenerate + p 1 setting + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_3366$class_3388;Lnet/minecraft/class_5819;)Lnet/minecraft/class_3366$class_3384; method_14768 generate + p 2 setting + p 1 direction + p 3 random +c net/minecraft/class_3366$class_3386 net/minecraft/structure/OceanMonumentGenerator$SimpleRoomTop + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_3366$class_3388;)V + p 2 setting + p 1 orientation + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3366$class_3376 net/minecraft/structure/OceanMonumentGenerator$CoreRoom + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_3366$class_3388;)V + p 2 setting + p 1 orientation +c net/minecraft/class_3366$class_3387 net/minecraft/structure/OceanMonumentGenerator$WingRoom + f I field_14481 roomType + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_3341;I)V + p 2 box + p 1 orientation + p 3 wing + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3366$class_3373 net/minecraft/structure/OceanMonumentGenerator$SimpleRoomTopFactory +c net/minecraft/class_3366$class_3384 net/minecraft/structure/OceanMonumentGenerator$Piece + f I field_31618 CORE_ROOM + f I field_31608 BASE_SIZE_X + f I field_31614 LEVEL_TWO_INDEX_BOUND + f I field_31616 WING_ROOM_A + f Lnet/minecraft/class_2680; field_14473 PRISMARINE + f Lnet/minecraft/class_2680; field_14475 WATER + f Lnet/minecraft/class_2680; field_14471 SEA_LANTERN + f I field_14477 FOUR_ONE_ZERO_INDEX + f I field_31611 PIECE_GRID_SIZE_X + f I field_14469 TWO_ZERO_ZERO_INDEX + f I field_31617 WING_ROOM_B + f I field_31609 BASE_SIZE_Z + f I field_31613 PIECE_GRID_SIZE_Y + f I field_31615 LEVEL_THREE_INDEX_BOUND + f Lnet/minecraft/class_2680; field_14474 DARK_PRISMARINE + f Lnet/minecraft/class_2680; field_14476 PRISMARINE_BRICKS + f Lnet/minecraft/class_2680; field_14470 ALSO_PRISMARINE_BRICKS + f Ljava/util/Set; field_14472 ICE_BLOCKS + f Lnet/minecraft/class_3366$class_3388; field_14479 setting + f I field_31610 BASE_SIZE_Y + f I field_31612 PIECE_GRID_SIZE_Z + f I field_14468 TWO_TWO_ZERO_INDEX + f I field_14478 ZERO_ONE_ZERO_INDEX + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;IIIIIILnet/minecraft/class_2680;)V method_14771 fillArea + p 1 world + p 2 box + p 5 z + p 6 width + p 3 x + p 4 y + p 9 state + p 7 height + p 8 depth + m (III)I method_14770 getIndex + p 1 y + p 2 z + p 0 x + m (Lnet/minecraft/class_3341;IIII)Z method_14775 boxIntersects + p 1 box + p 2 x1 + p 3 z1 + p 4 x2 + p 5 z2 + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_3366$class_3388;III)Lnet/minecraft/class_3341; method_35445 createBox + p 0 orientation + p 1 setting + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/class_3773;Lnet/minecraft/class_2350;ILnet/minecraft/class_3341;)V + p 4 box + p 3 length + p 2 orientation + p 1 type + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;III)V method_14772 spawnElderGuardian + p 5 z + p 4 y + p 3 x + p 2 box + p 1 world + m (Lnet/minecraft/class_3773;ILnet/minecraft/class_2350;Lnet/minecraft/class_3366$class_3388;III)V + p 7 z + p 5 x + p 6 y + p 3 orientation + p 4 setting + p 1 type + p 2 length + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;IIZ)V method_14774 generateVerticalConnection + p 5 neighbor + p 4 z + p 3 x + p 2 box + p 1 world + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;IIIIII)V method_14773 setAirAndWater + p 1 world + p 2 box + p 3 x + p 4 y + p 5 z + p 6 width + p 7 height + p 8 depth +c net/minecraft/class_3366$class_3374 net/minecraft/structure/OceanMonumentGenerator$Base + f Lnet/minecraft/class_3366$class_3388; field_14464 entryPieceSetting + f I field_31604 SIZE_Z + f I field_31603 SIZE_Y + f I field_31606 BIOME_CHECK_RADIUS + f Lnet/minecraft/class_3366$class_3388; field_14466 coreRoomPieceSetting + f Ljava/util/List; field_14465 children + f I field_31602 SIZE_X + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;)V method_14766 generateLevelTwo + p 2 random + p 1 world + p 3 box + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;)V method_14765 generateRoof + p 1 world + p 3 box + p 2 random + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;)V method_14767 generateLevelThree + p 1 world + p 3 box + p 2 random + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;)V method_14762 generateEntranceWall + p 2 random + p 1 world + p 3 box + m (ZILnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;)V method_14761 generateWing + p 1 side + p 2 start + p 3 world + p 4 random + p 5 box + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;)V method_14764 generateLevelOne + p 2 random + p 1 world + p 3 box + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;)V method_14763 generateEntranceArches + p 1 world + p 3 box + p 2 random + m (Lnet/minecraft/class_5819;IILnet/minecraft/class_2350;)V + p 1 random + p 2 x + p 3 z + p 4 orientation + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_5819;)Ljava/util/List; method_14760 setupPieces + p 1 random +c net/minecraft/class_3366$class_3385 net/minecraft/structure/OceanMonumentGenerator$SimpleRoom + f I field_14480 roomType + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_3366$class_3388;Lnet/minecraft/class_5819;)V + p 3 random + p 2 setting + p 1 orientation + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3366$class_3368 net/minecraft/structure/OceanMonumentGenerator$DoubleXYRoomFactory +c net/minecraft/class_3366$class_3379 net/minecraft/structure/OceanMonumentGenerator$DoubleYRoom + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_3366$class_3388;)V + p 1 orientation + p 2 setting + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3366$class_3369 net/minecraft/structure/OceanMonumentGenerator$DoubleYRoomFactory +c net/minecraft/class_3366$class_3377 net/minecraft/structure/OceanMonumentGenerator$DoubleXRoom + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_3366$class_3388;)V + p 1 orientation + p 2 setting + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3366$class_3388 net/minecraft/structure/OceanMonumentGenerator$PieceSetting + f [Z field_14482 neighborPresences + f I field_14486 roomIndex + f [Lnet/minecraft/class_3366$class_3388; field_14487 neighbors + f Z field_14485 used + f I field_14483 entranceDistance + f Z field_14484 entrance + m (I)Z method_14783 hasEntranceConnection + p 1 distance + m ()V method_14780 checkNeighborStates + m ()Z method_14785 isAboveLevelThree + m ()I method_14781 countNeighbors + m (I)V + p 1 index + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_3366$class_3388;)V method_14786 setNeighbor + p 2 setting + p 1 orientation +c net/minecraft/class_3366$class_3367 net/minecraft/structure/OceanMonumentGenerator$DoubleXRoomFactory +c net/minecraft/class_3366$class_3378 net/minecraft/structure/OceanMonumentGenerator$DoubleXYRoom + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_3366$class_3388;)V + p 2 setting + p 1 orientation + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_2035 net/minecraft/predicate/item/EnchantmentPredicate + f Lnet/minecraft/class_2096$class_2100; comp_1749 levels + f Lcom/mojang/serialization/Codec; field_45741 CODEC + f Ljava/util/Optional; comp_2665 enchantments + m (Lnet/minecraft/class_6885;Lnet/minecraft/class_2096$class_2100;)V + p 2 levels + p 1 enchantments + m (Lnet/minecraft/class_9304;Lnet/minecraft/class_6880;)Z method_59916 testLevel + p 1 enchantmentsComponent + p 2 enchantment + m (Lnet/minecraft/class_9304;)Z method_8880 test + p 1 enchantmentsComponent + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2096$class_2100;)V + p 2 levels + p 1 enchantment + m ()Lnet/minecraft/class_2096$class_2100; comp_1749 levels + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53126 method_53126 + p 0 instance + m ()Ljava/util/Optional; comp_2665 enchantments + m (Ljava/util/Optional;Lnet/minecraft/class_2096$class_2100;)V + p 1 enchantments + p 2 levels +c net/minecraft/class_4696 net/minecraft/client/render/BlockRenderLayers + f Z field_63572 cutoutLeaves + f Ljava/util/Map; field_21469 BLOCKS + f Ljava/util/Map; field_60921 FLUIDS + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_11515; method_23679 getBlockLayer + p 0 state + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_1921; method_23683 getEntityBlockLayer + p 0 state + m (Ljava/util/HashMap;Lnet/minecraft/class_11515;Lnet/minecraft/class_2248;)V method_73152 method_73152 + p 2 block + m (Ljava/util/HashMap;Lnet/minecraft/class_11515;Lnet/minecraft/class_2248;)V method_73153 method_73153 + p 2 block + m (Ljava/util/HashMap;)V method_23685 method_23685 + p 0 map + m (Z)V method_75412 setCutoutLeaves + p 0 cutoutLeaves + m (Lnet/minecraft/class_3610;)Lnet/minecraft/class_11515; method_23680 getFluidLayer + p 0 state + m (Ljava/util/HashMap;)V method_23681 method_23681 + p 0 map + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_1921; method_29359 getMovingBlockLayer + p 0 state +c net/minecraft/class_611 net/minecraft/client/render/entity/model/SpiderEntityModel + f Lnet/minecraft/class_630; field_3583 head + f Ljava/lang/String; field_32560 RIGHT_MIDDLE_FRONT_LEG + c The key of the right middle front leg model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_27512 leftFrontLeg + f Ljava/lang/String; field_32561 LEFT_MIDDLE_FRONT_LEG + c The key of the left middle front leg model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_27511 rightFrontLeg + f Lnet/minecraft/class_630; field_27510 leftMiddleFrontLeg + f Lnet/minecraft/class_630; field_27506 leftHindLeg + f Lnet/minecraft/class_630; field_27505 rightHindLeg + f Lnet/minecraft/class_630; field_27509 rightMiddleFrontLeg + f Ljava/lang/String; field_32558 BODY0 + c The key of the first model part of the body, whose value is {@value}. + f Lnet/minecraft/class_630; field_27508 leftMiddleLeg + f Lnet/minecraft/class_630; field_27507 rightMiddleLeg + f Ljava/lang/String; field_32562 RIGHT_MIDDLE_HIND_LEG + c The key of the right middle hind leg model part, whose value is {@value}. + f Ljava/lang/String; field_32563 LEFT_MIDDLE_HIND_LEG + c The key of the left middle hind leg model part, whose value is {@value}. + f Ljava/lang/String; field_32559 BODY1 + c The key of the second model part of the body, whose value is {@value}. + m ()Lnet/minecraft/class_5607; method_32054 getTexturedModelData + m (Lnet/minecraft/class_10042;)V method_62119 setAngles +c net/minecraft/class_2040 net/minecraft/predicate/entity/EntityFlagsPredicate + f Lcom/mojang/serialization/Codec; field_45745 CODEC + f Ljava/util/Optional; comp_1757 isSneaking + f Ljava/util/Optional; comp_2667 isFlying + f Ljava/util/Optional; comp_2666 isOnGround + f Ljava/util/Optional; comp_4946 isInWater + f Ljava/util/Optional; comp_4947 isFallFlying + f Ljava/util/Optional; comp_1759 isSwimming + f Ljava/util/Optional; comp_1758 isSprinting + f Ljava/util/Optional; comp_1756 isOnFire + f Ljava/util/Optional; comp_1760 isBaby + m (Lnet/minecraft/class_1297;)Z method_8892 test + p 1 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53131 method_53131 + p 0 instance + m ()Ljava/util/Optional; comp_1757 isSneaking + m ()Ljava/util/Optional; comp_1758 isSprinting + m ()Ljava/util/Optional; comp_1759 isSwimming + m ()Ljava/util/Optional; comp_1756 isOnFire + m ()Ljava/util/Optional; comp_1760 isBaby + m ()Ljava/util/Optional; comp_2666 isOnGround + m ()Ljava/util/Optional; comp_2667 isFlying + m ()Ljava/util/Optional; comp_4946 isInWater + m ()Ljava/util/Optional; comp_4947 isFallFlying + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 isOnGround + p 2 isOnFire + p 3 isSneaking + p 4 isSprinting + p 5 isSwimming + p 6 isFlying + p 7 isBaby + p 8 isInWater + p 9 isFallFlying +c net/minecraft/class_2040$class_2041 net/minecraft/predicate/entity/EntityFlagsPredicate$Builder + f Ljava/util/Optional; field_9585 isSwimming + f Ljava/util/Optional; field_9586 isSneaking + f Ljava/util/Optional; field_9584 isBaby + f Ljava/util/Optional; field_63273 isInWater + f Ljava/util/Optional; field_63274 isFallFlying + f Ljava/util/Optional; field_9587 isOnFire + f Ljava/util/Optional; field_9588 isSprinting + f Ljava/util/Optional; field_51567 isOnGround + f Ljava/util/Optional; field_51568 isFlying + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2040$class_2041; method_35203 sneaking + p 1 sneaking + m ()Lnet/minecraft/class_2040; method_8899 build + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2040$class_2041; method_8898 onFire + p 1 onFire + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2040$class_2041; method_59919 flying + p 1 flying + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2040$class_2041; method_75086 isFallFlying + p 1 isFallFlying + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2040$class_2041; method_59918 onGround + p 1 onGround + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2040$class_2041; method_75085 isInWater + p 1 isInWater + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2040$class_2041; method_29935 isBaby + p 1 isBaby + m ()Lnet/minecraft/class_2040$class_2041; method_8897 create + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2040$class_2041; method_35204 sprinting + p 1 sprinting + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2040$class_2041; method_35205 swimming + p 1 swimming +c net/minecraft/class_610 net/minecraft/client/render/entity/model/SquidEntityModel + c Represents the model of a squid-like entity.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#BODY}{@linkplain #root Root part}
{@code tentacle0}{@linkplain #root Root part}{@link #tentacles tentacles[0]}
{@code tentacle1}{@linkplain #root Root part}{@link #tentacles tentacles[1]}
{@code tentacle2}{@linkplain #root Root part}{@link #tentacles tentacles[2]}
{@code tentacle3}{@linkplain #root Root part}{@link #tentacles tentacles[3]}
{@code tentacle4}{@linkplain #root Root part}{@link #tentacles tentacles[4]}
{@code tentacle5}{@linkplain #root Root part}{@link #tentacles tentacles[5]}
{@code tentacle6}{@linkplain #root Root part}{@link #tentacles tentacles[6]}
{@code tentacle7}{@linkplain #root Root part}{@link #tentacles tentacles[7]}
\n
+ f Lnet/minecraft/class_9953; field_52939 BABY_TRANSFORMER + f [Lnet/minecraft/class_630; field_3574 tentacles + m ()Lnet/minecraft/class_5607; method_32055 getTexturedModelData + m (Lnet/minecraft/class_10069;)V method_62120 setAngles + m (I)Ljava/lang/String; method_32056 getTentacleName + p 0 index +c net/minecraft/class_615 net/minecraft/client/render/entity/model/LargeTropicalFishEntityModel + f Lnet/minecraft/class_630; field_3599 tail + m (Lnet/minecraft/class_10076;)V method_62122 setAngles + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5607; method_32061 getTexturedModelData + p 0 dilation +c net/minecraft/class_614 net/minecraft/client/render/entity/model/TurtleEntityModel + f Ljava/lang/String; field_32570 EGG_BELLY + c The key of the model part of the belly side of the turtle's shell, whose value is {@value}. + f Lnet/minecraft/class_9953; field_52940 BABY_TRANSFORMER + f Lnet/minecraft/class_630; field_3594 plastron + c The belly side of the turtle's shell. + m ()Lnet/minecraft/class_5607; method_32062 getTexturedModelData + m (Lnet/minecraft/class_10077;)V method_17125 setAngles +c net/minecraft/class_613 net/minecraft/client/render/entity/model/TridentEntityModel + c Represents the model of a thrown trident.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@code pole}{@linkplain #root Root part}
{@code base}{@code pole}
{@code left_spike}{@code pole}
{@code middle_spike}{@code pole}
{@code right_spike}{@code pole}
\n
+ f Lnet/minecraft/class_2960; field_3592 TEXTURE + m ()Lnet/minecraft/class_5607; method_32059 getTexturedModelData + m (Lnet/minecraft/class_630;)V + p 1 root +c net/minecraft/class_612 net/minecraft/client/render/entity/model/SmallTropicalFishEntityModel + f Lnet/minecraft/class_630; field_27523 tail + m (Lnet/minecraft/class_10076;)V method_62121 setAngles + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5607; method_32060 getTexturedModelData + p 0 dilation +c net/minecraft/class_2048 net/minecraft/predicate/entity/EntityPredicate + f Ljava/util/Optional; comp_1769 typeSpecific + f Ljava/util/Optional; comp_1762 distance + f Ljava/util/Optional; comp_1761 type + f Lcom/mojang/serialization/Codec; field_47250 LOOT_CONTEXT_PREDICATE_CODEC + f Lcom/mojang/serialization/Codec; field_45746 CODEC + f Ljava/util/Optional; comp_1771 passenger + f Ljava/util/Optional; comp_1770 vehicle + f Ljava/util/Optional; comp_1773 team + f Ljava/util/Optional; comp_1772 targetedEntity + f Ljava/util/Optional; comp_1765 effects + f Ljava/util/Optional; comp_1767 flags + f Ljava/util/Optional; comp_1766 nbt + f Ljava/util/Optional; comp_1768 equipment + f Ljava/util/Optional; comp_2669 periodicTick + f Ljava/util/Optional; comp_2668 movement + f Lnet/minecraft/class_10914; comp_3519 components + f Ljava/util/Optional; comp_2446 slots + f Lnet/minecraft/class_2048$class_9777; comp_1763 location + m (Ljava/util/Optional;)Ljava/util/Optional; method_53137 contextPredicateFromEntityPredicate + p 0 entityPredicate + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_5258; method_53134 contextPredicateFromEntityPredicate + p 0 builder + m ()Ljava/util/Optional; comp_1769 typeSpecific + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53136 method_53136 + p 1 instance + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;)Z method_8914 test + p 1 player + p 2 entity + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;)Lnet/minecraft/class_47; method_27802 createAdvancementEntityLootContext + p 1 target + p 0 player + m ()Ljava/util/Optional; comp_1762 distance + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_53135 method_53135 + p 0 entityPredicateCodec + m ()Ljava/util/Optional; comp_1761 type + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_1297;)Z method_37227 method_37227 + p 3 entityx + m ([Lnet/minecraft/class_2048$class_2049;)Ljava/util/List; method_53139 contextPredicateFromEntityPredicates + p 0 builders + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_1297;)Z method_8909 test + p 3 entity + p 2 pos + p 1 world + m (Lnet/minecraft/class_2048;)Lnet/minecraft/class_5258; method_51704 asLootContextPredicate + p 0 predicate + m ()Ljava/util/Optional; comp_2446 slots + m ()Ljava/util/Optional; comp_1770 vehicle + m ()Ljava/util/Optional; comp_1771 passenger + m ()Ljava/util/Optional; comp_1772 targetedEntity + m ()Ljava/util/Optional; comp_2668 movement + m ()Ljava/util/Optional; comp_1773 team + m ()Ljava/util/Optional; comp_1765 effects + m ()Ljava/util/Optional; comp_1766 nbt + m ()Ljava/util/Optional; comp_1767 flags + m ()Ljava/util/Optional; comp_1768 equipment + m ()Lnet/minecraft/class_10914; comp_3519 components + m ()Lnet/minecraft/class_2048$class_9777; comp_1763 location + m ()Ljava/util/Optional; comp_2669 periodicTick + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_2048$class_9777;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_10914;)V + p 1 type + p 2 distance + p 3 movement + p 4 location + p 5 effects + p 6 nbt + p 7 flags + p 8 equipment + p 9 typeSpecific + p 10 periodicTick + p 11 vehicle + p 12 passenger + p 13 targetedEntity + p 14 team + p 15 slots + p 16 components +c net/minecraft/class_2048$class_2049 net/minecraft/predicate/entity/EntityPredicate$Builder + f Ljava/util/Optional; field_9602 distance + f Ljava/util/Optional; field_51937 location + f Ljava/util/Optional; field_16491 equipment + f Ljava/util/Optional; field_49721 slots + f Ljava/util/Optional; field_51573 movement + f Ljava/util/Optional; field_38722 typeSpecific + f Ljava/util/Optional; field_9606 flags + f Ljava/util/Optional; field_24491 targetedEntity + f Lnet/minecraft/class_10914; field_55957 components + f Ljava/util/Optional; field_20700 team + f Ljava/util/Optional; field_9605 effects + f Ljava/util/Optional; field_9603 nbt + f Ljava/util/Optional; field_51938 movementAffectedBy + f Ljava/util/Optional; field_51574 periodicTick + f Ljava/util/Optional; field_9607 type + f Ljava/util/Optional; field_33915 steppingOn + f Ljava/util/Optional; field_33917 passenger + f Ljava/util/Optional; field_24490 vehicle + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_2048$class_2049; method_37229 passenger + p 1 passenger + m (Lnet/minecraft/class_7376;)Lnet/minecraft/class_2048$class_2049; method_43094 typeSpecific + p 1 typeSpecific + m (Lnet/minecraft/class_2025;)Lnet/minecraft/class_2048$class_2049; method_8924 distance + p 1 distance + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_2048$class_2049; method_27971 vehicle + p 1 vehicle + m (Lnet/minecraft/class_9750;)Lnet/minecraft/class_2048$class_2049; method_59930 movement + p 1 movement + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_6862;)Lnet/minecraft/class_2048$class_2049; method_8922 type + p 1 entityTypeRegistry + p 2 tag + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_1299;)Lnet/minecraft/class_2048$class_2049; method_8921 type + p 2 type + p 1 entityTypeRegistry + m (Lnet/minecraft/class_10914;)Lnet/minecraft/class_2048$class_2049; method_66675 components + p 1 components + m (Lnet/minecraft/class_3735$class_5278;)Lnet/minecraft/class_2048$class_2049; method_53141 equipment + p 1 equipment + m (Lnet/minecraft/class_2105;)Lnet/minecraft/class_2048$class_2049; method_8915 nbt + p 1 nbt + m ()Lnet/minecraft/class_2048$class_2049; method_8916 create + m (Lnet/minecraft/class_2050;)Lnet/minecraft/class_2048$class_2049; method_8917 type + p 1 type + m (Lnet/minecraft/class_2102$class_8748;)Lnet/minecraft/class_2048$class_2049; method_8923 effects + p 1 effects + m (Lnet/minecraft/class_2090$class_2091;)Lnet/minecraft/class_2048$class_2049; method_37230 steppingOn + p 1 steppingOn + m (Lnet/minecraft/class_2090$class_2091;)Lnet/minecraft/class_2048$class_2049; method_60611 movementAffectedBy + p 1 movementAffectedBy + m (Lnet/minecraft/class_2040$class_2041;)Lnet/minecraft/class_2048$class_2049; method_8919 flags + p 1 flags + m (I)Lnet/minecraft/class_2048$class_2049; method_59929 periodicTick + p 1 periodicTick + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_2048$class_2049; method_27972 targetedEntity + p 1 targetedEntity + m (Ljava/lang/String;)Lnet/minecraft/class_2048$class_2049; method_22470 team + p 1 team + m (Lnet/minecraft/class_9350;)Lnet/minecraft/class_2048$class_2049; method_58058 slots + p 1 slots + m (Lnet/minecraft/class_2090$class_2091;)Lnet/minecraft/class_2048$class_2049; method_8918 location + p 1 location + m (Lnet/minecraft/class_3735;)Lnet/minecraft/class_2048$class_2049; method_16227 equipment + p 1 equipment + m ()Lnet/minecraft/class_2048; method_8920 build +c net/minecraft/class_2048$class_9777 net/minecraft/predicate/entity/EntityPredicate$PositionalPredicates + f Lcom/mojang/serialization/MapCodec; field_51939 CODEC + f Ljava/util/Optional; comp_2815 affectsMovement + f Ljava/util/Optional; comp_2814 steppingOn + f Ljava/util/Optional; comp_2813 located + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60612 method_60612 + p 0 instance + m ()Ljava/util/Optional; comp_2815 affectsMovement + m ()Ljava/util/Optional; comp_2813 located + m ()Ljava/util/Optional; comp_2814 steppingOn + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 located + p 2 steppingOn + p 3 affectsMovement +c net/minecraft/class_2044 net/minecraft/advancement/criterion/EntityHurtPlayerCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1282;FFZLnet/minecraft/class_2044$class_2046;)Z method_22468 method_22468 + p 5 conditions + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1282;FFZ)V method_22467 trigger + p 2 source + p 3 dealt + p 4 taken + p 5 blocked + p 1 player +c net/minecraft/class_2044$class_2046 net/minecraft/advancement/criterion/EntityHurtPlayerCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47249 CODEC + f Ljava/util/Optional; comp_2052 damage + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54988 method_54988 + p 0 instance + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1282;FFZ)Z method_8907 matches + p 5 blocked + p 4 taken + p 3 dealt + p 2 damageSource + p 1 player + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 2 damage + m (Lnet/minecraft/class_2019$class_2020;)Lnet/minecraft/class_175; method_8908 create + p 0 damageBuilder + m ()Lnet/minecraft/class_175; method_35210 create + m (Lnet/minecraft/class_2019;)Lnet/minecraft/class_175; method_35209 create + p 0 predicate + m ()Ljava/util/Optional; comp_2052 damage +c net/minecraft/class_608 net/minecraft/client/render/entity/model/SnowGolemEntityModel + f Ljava/lang/String; field_32557 UPPER_BODY + c The key of the upper body model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_27503 rightArm + f Lnet/minecraft/class_630; field_3568 head + f Lnet/minecraft/class_630; field_27501 upperBody + f Lnet/minecraft/class_630; field_27502 leftArm + m (Lnet/minecraft/class_10042;)V method_62118 setAngles + m ()Lnet/minecraft/class_630; method_2834 getHead + m ()Lnet/minecraft/class_5607; method_32053 getTexturedModelData +c net/minecraft/class_607 net/minecraft/client/render/entity/model/SkullEntityModel + c Represents the model of a skull.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}{@linkplain #root Root part}{@link #head}
{@value EntityModelPartNames#HAT} (note: may not exist){@value EntityModelPartNames#HEAD}
\n
+ f Lnet/minecraft/class_630; field_3564 head + m (Lnet/minecraft/class_5598$class_11652;)V method_72865 setAngles + m ()Lnet/minecraft/class_5609; method_32048 getModelData + m ()Lnet/minecraft/class_5607; method_32049 getHeadTexturedModelData + m ()Lnet/minecraft/class_5607; method_32050 getSkullTexturedModelData +c net/minecraft/class_606 net/minecraft/client/render/entity/model/SkeletonEntityModel + m ()Lnet/minecraft/class_5607; method_76293 getParchedTexturedModelData + m ()Lnet/minecraft/class_5607; method_32047 getTexturedModelData + m (Lnet/minecraft/class_10066;Lnet/minecraft/class_1306;Lnet/minecraft/class_4587;)V method_72864 setArmAngle + m (Lnet/minecraft/class_10066;)V method_19690 setAngles + m (Lnet/minecraft/class_5610;)V method_57794 addLimbs + p 0 data +c net/minecraft/class_609 net/minecraft/client/render/entity/model/SlimeEntityModel + m ()Lnet/minecraft/class_5607; method_32051 getOuterTexturedModelData + m ()Lnet/minecraft/class_5607; method_32052 getInnerTexturedModelData +c net/minecraft/class_622 net/minecraft/client/render/entity/model/WitchEntityModel + c Represents the model of a witch resembling entity.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}{@linkplain #root Root part}{@link #head}
{@value EntityModelPartNames#HAT}{@value EntityModelPartNames#HEAD}{@link #hat}
{@code hat2}{@value EntityModelPartNames#HAT}
{@code hat3}{@code hat2}
{@code hat4}{@code hat3}
{@value EntityModelPartNames#NOSE}{@value EntityModelPartNames#HEAD}{@link #nose}
{@code mole}{@value EntityModelPartNames#NOSE}
{@value EntityModelPartNames#BODY}{@linkplain #root Root part}
{@value EntityModelPartNames#JACKET}{@value EntityModelPartNames#BODY}
{@value EntityModelPartNames#ARMS}{@linkplain #root Root part}
{@value EntityModelPartNames#RIGHT_LEG}{@linkplain #root Root part}{@link #rightLeg}
{@value EntityModelPartNames#LEFT_LEG}{@linkplain #root Root part}{@link #leftLeg}
\n
+ f Lnet/minecraft/class_630; field_52941 nose + f Lnet/minecraft/class_630; field_52943 head + f Lnet/minecraft/class_630; field_52946 rightLeg + f Lnet/minecraft/class_630; field_52947 leftLeg + f Lnet/minecraft/class_630; field_55118 arms + m ()Lnet/minecraft/class_5607; method_32065 getTexturedModelData + m (Lnet/minecraft/class_10082;)V method_62124 setAngles + m ()Lnet/minecraft/class_630; method_2839 getNose + m (Lnet/minecraft/class_10082;Lnet/minecraft/class_4587;)V method_72878 rotateArms +c net/minecraft/class_621 net/minecraft/client/render/entity/model/WitherEntityModel + c Represents the model of a {@linkplain WitherEntity}.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@code shoulders}{@linkplain #root Root part}
{@value #RIBCAGE}{@linkplain #root Root part}{@link #ribcage}
{@value EntityModelPartNames#TAIL}{@linkplain #root Root part}{@link #tail}
{@value #CENTER_HEAD}{@linkplain #root Root part}{@link #centerHead}
{@value #RIGHT_HEAD}{@linkplain #root Root part}{@link #rightHead}
{@value #LEFT_HEAD}{@linkplain #root Root part}{@link #leftHead}
\n
+ f Lnet/minecraft/class_630; field_27534 rightHead + f Lnet/minecraft/class_630; field_27533 centerHead + f Ljava/lang/String; field_32571 RIBCAGE + c The key of the ribcage model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_27537 tail + f Lnet/minecraft/class_630; field_27536 ribcage + f Lnet/minecraft/class_630; field_27535 leftHead + f Ljava/lang/String; field_32573 RIGHT_HEAD + c The key of the right head model part, whose value is {@value}. + f Ljava/lang/String; field_32572 CENTER_HEAD + c The key of the center head model part, whose value is {@value}. + f F field_32575 RIBCAGE_PITCH_OFFSET + f Ljava/lang/String; field_32574 LEFT_HEAD + c The key of the left head model part, whose value is {@value}. + f F field_32576 TAIL_PITCH_OFFSET + m (Lnet/minecraft/class_10083;Lnet/minecraft/class_630;I)V method_32066 rotateHead + p 2 sigma + p 1 head + m (Lnet/minecraft/class_10083;)V method_17130 setAngles + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5607; method_32067 getTexturedModelData + p 0 dilation +c net/minecraft/class_620 net/minecraft/client/render/entity/model/VillagerResemblingModel + c Represents the model of a villager resembling entity.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}{@linkplain #root Root part}{@link #head}
{@value EntityModelPartNames#HAT}{@value EntityModelPartNames#HEAD}{@link #hat}
{@value EntityModelPartNames#HAT_RIM}{@value EntityModelPartNames#HAT}{@link #hatRim}
{@value EntityModelPartNames#NOSE}{@value EntityModelPartNames#HEAD}{@link #nose}
{@value EntityModelPartNames#BODY}{@linkplain #root Root part}
{@value EntityModelPartNames#JACKET}{@value EntityModelPartNames#BODY}
{@value EntityModelPartNames#ARMS}{@linkplain #root Root part}
{@value EntityModelPartNames#RIGHT_LEG}{@linkplain #root Root part}{@link #rightLeg}
{@value EntityModelPartNames#LEFT_LEG}{@linkplain #root Root part}{@link #leftLeg}
\n
+ f Lnet/minecraft/class_9953; field_55116 BABY_TRANSFORMER + f Lnet/minecraft/class_630; field_27531 leftLeg + f Lnet/minecraft/class_630; field_27530 rightLeg + f Lnet/minecraft/class_630; field_55117 arms + f Lnet/minecraft/class_630; field_27527 head + m ()Lnet/minecraft/class_5609; method_32064 getModelData + m (Lnet/minecraft/class_10080;)V method_62123 setAngles + m ()Lnet/minecraft/class_5609; method_72868 getNoHatModelData + m (Lnet/minecraft/class_10080;Lnet/minecraft/class_4587;)V method_72867 rotateArms +c net/minecraft/class_3340 net/minecraft/server/WhitelistEntry + m (Lcom/google/gson/JsonObject;)V + p 1 json + m (Lnet/minecraft/class_11560;)V + p 1 player +c net/minecraft/class_626 net/minecraft/client/render/entity/model/DragonHeadEntityModel + c Represents the model of the dragon head.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}Root part{@link #head}
{@value EntityModelPartNames#JAW}{@value EntityModelPartNames#HEAD}{@link #jaw}
\n
+ f Lnet/minecraft/class_630; field_3639 jaw + f Lnet/minecraft/class_630; field_3638 head + m (Lnet/minecraft/class_5598$class_11652;)V method_72884 setAngles + m ()Lnet/minecraft/class_5607; method_32071 getTexturedModelData +c net/minecraft/class_625 net/minecraft/client/render/entity/DragonEntityModel + f Lnet/minecraft/class_630; field_3626 rightHindLegTip + f Lnet/minecraft/class_630; field_3634 rightFrontLegTip + f [Lnet/minecraft/class_630; field_52954 tailParts + f Lnet/minecraft/class_630; field_3632 rightFrontLeg + f Lnet/minecraft/class_630; field_3630 head + f Lnet/minecraft/class_630; field_21554 leftHindFoot + f Lnet/minecraft/class_630; field_3629 leftWing + f Lnet/minecraft/class_630; field_21552 leftHindLeg + f Lnet/minecraft/class_630; field_3627 body + f I field_52951 NUM_TAIL_PARTS + f Lnet/minecraft/class_630; field_21548 leftWingTip + f Lnet/minecraft/class_630; field_21550 leftFrontLegTip + f Lnet/minecraft/class_630; field_3625 rightFrontFoot + f Lnet/minecraft/class_630; field_3635 rightWingTip + f [Lnet/minecraft/class_630; field_52953 neckParts + f Lnet/minecraft/class_630; field_3633 rightHindLeg + f Lnet/minecraft/class_630; field_3631 jaw + f Lnet/minecraft/class_630; field_21555 rightWing + f Lnet/minecraft/class_630; field_21553 leftHindLegTip + f Lnet/minecraft/class_630; field_3628 rightHindFoot + f Lnet/minecraft/class_630; field_21551 leftFrontFoot + f I field_52950 NUM_NECK_PARTS + f Lnet/minecraft/class_630; field_21549 leftFrontLeg + m (I)Ljava/lang/String; method_62127 neck + p 0 id + m (I)Ljava/lang/String; method_62129 tail + p 0 id + m (Lnet/minecraft/class_10015;)V method_23621 setAngles + m (FLnet/minecraft/class_630;Lnet/minecraft/class_630;Lnet/minecraft/class_630;Lnet/minecraft/class_630;Lnet/minecraft/class_630;Lnet/minecraft/class_630;)V method_62126 setLegAngles + p 2 frontLeg + p 1 offset + p 7 hindFoot + p 6 hindLegTip + p 5 hindLeg + p 4 frontFoot + p 3 frontLegTip + m ()Lnet/minecraft/class_5607; method_62128 createTexturedModelData +c net/minecraft/class_624 net/minecraft/client/render/entity/model/WolfEntityModel + f Lnet/minecraft/class_630; field_27539 leftHindLeg + f Lnet/minecraft/class_630; field_27538 rightHindLeg + f Ljava/lang/String; field_32579 REAL_TAIL + c The key of the real tail model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_3623 torso + f Lnet/minecraft/class_630; field_3621 head + c The main bone used to animate the head. Contains {@link #realHead} as one of its children. + f Lnet/minecraft/class_630; field_20789 realTail + f Lnet/minecraft/class_630; field_20788 realHead + f Ljava/lang/String; field_32578 UPPER_BODY + c The key of the upper body model part, whose value is {@value}. + f Ljava/lang/String; field_32577 REAL_HEAD + c The key of the real head model part, whose value is {@value}. + f Lnet/minecraft/class_9953; field_52948 BABY_TRANSFORMER + f Lnet/minecraft/class_630; field_3619 neck + f Lnet/minecraft/class_630; field_3617 tail + c The main bone used to animate the tail. Contains {@link #realTail} as one of its children. + f Lnet/minecraft/class_630; field_27540 rightFrontLeg + f Lnet/minecraft/class_630; field_27541 leftFrontLeg + m (Lnet/minecraft/class_10085;)V method_17133 setAngles + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5609; method_32068 getTexturedModelData + p 0 dilation +c net/minecraft/class_623 net/minecraft/client/render/entity/model/ZombieEntityModel +c net/minecraft/class_3345 net/minecraft/server/rcon/DataStreamHelper + f Ljava/io/ByteArrayOutputStream; field_14395 byteArrayOutputStream + f Ljava/io/DataOutputStream; field_14396 dataOutputStream + m ()V method_14693 reset + m (S)V method_14691 writeShort + p 1 value + m (I)V method_34887 writeInt + p 1 value + m ()[B method_14689 bytes + m (Ljava/lang/String;)V method_14690 writeBytes + p 1 value + m (I)V method_14692 write + p 1 value + m (F)V method_34886 writeFloat + p 1 value + m ([B)V method_14694 write + p 1 values + m (I)V + p 1 size +c net/minecraft/class_2014 net/minecraft/advancement/criterion/CuredZombieVillagerCriterion + m (Lnet/minecraft/class_47;Lnet/minecraft/class_47;Lnet/minecraft/class_2014$class_2016;)Z method_22461 method_22461 + p 2 conditions + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1642;Lnet/minecraft/class_1646;)V method_8831 trigger + p 2 zombie + p 1 player + p 3 villager +c net/minecraft/class_2014$class_2016 net/minecraft/advancement/criterion/CuredZombieVillagerCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47237 CODEC + f Ljava/util/Optional; comp_2042 zombie + f Ljava/util/Optional; comp_2043 villager + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 2 zombie + p 3 villager + m (Lnet/minecraft/class_47;Lnet/minecraft/class_47;)Z method_8837 matches + p 2 villager + p 1 zombie + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54972 method_54972 + p 0 instance + m ()Lnet/minecraft/class_175; method_8836 any + m ()Ljava/util/Optional; comp_2043 villager + m ()Ljava/util/Optional; comp_2042 zombie +c net/minecraft/class_3346 net/minecraft/structure/DesertTempleGenerator + f Ljava/util/List; field_42856 potentialSuspiciousSandPositions + f I field_34726 DEPTH + f I field_34725 WIDTH + f [Z field_14397 hasPlacedChest + f Lnet/minecraft/class_2338; field_44482 basementMarkerPos + m (IIIIII)V method_49263 addPotentialSuspiciousSandArea + p 5 endY + p 6 endZ + p 1 startX + p 2 startY + p 3 startZ + p 4 endX + m (Lnet/minecraft/class_5819;II)V + p 1 random + p 2 x + p 3 z + m ()Lnet/minecraft/class_2338; method_51180 getBasementMarkerPos + m (Lnet/minecraft/class_5281;IIILnet/minecraft/class_3341;)V method_49260 addSandOrSandstone + p 2 x + p 3 y + p 4 z + p 5 chunkBox + p 1 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;)V method_49266 generateSuspiciousSandRoom + p 3 chunkBox + p 1 pos + p 2 world + m (III)V method_49259 addPotentialSuspiciousSandPosition + p 3 z + p 1 x + p 2 y + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;IIIII)V method_49262 generateBasementRoof + p 1 world + p 3 startX + p 2 chunkBox + p 5 startZ + p 4 y + p 7 endZ + p 6 endX + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;)V method_49261 generateBasement + p 1 world + p 2 chunkBox + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;)V method_49264 generateBasementStairs + p 1 pos + p 2 world + p 3 chunkBox + m ()Ljava/util/List; method_49265 getPotentialSuspiciousSandPositions + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3347 net/minecraft/server/rcon/BufferHelper + f [C field_14398 HEX_CHARS_LOOKUP + m ([BII)I method_14696 getIntLE + p 2 limit + p 0 buf + p 1 start + m ([BII)I method_14698 getIntBE + p 0 buf + p 1 start + p 2 limit + m ([BII)Ljava/lang/String; method_14697 getString + p 0 buf + m ([BI)I method_14695 getIntLE + p 1 start + p 0 buf + m (B)Ljava/lang/String; method_14699 toHex + p 0 b +c net/minecraft/class_3348 net/minecraft/structure/JungleTempleGenerator + f Z field_14401 placedHiddenChest + f Z field_14402 placedMainChest + f Z field_14399 placedTrap2 + f I field_34728 DEPTH + f Z field_14400 placedTrap1 + f Lnet/minecraft/class_3348$class_3349; field_14403 COBBLESTONE_RANDOMIZER + m (Lnet/minecraft/class_5819;II)V + p 3 z + p 2 x + p 1 random + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3348$class_3349 net/minecraft/structure/JungleTempleGenerator$CobblestoneRandomizer +c net/minecraft/class_3341 net/minecraft/util/math/BlockBox + c A mutable box with integer coordinates. The box is axis-aligned and the\ncoordinates are inclusive.\n\n

This box, though mutable, has proper {@code hashCode} and {@code\nequals} implementations and can be used as map keys if user can ensure\nthey are not modified.\n\n@see Box + f Lnet/minecraft/class_9139; field_62921 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_29325 CODEC + c A codec that stores a block box as an int array. In the serialized array,\nthe ordered elements are {@link #minX}, {@link #minY}, {@link #minZ},\n{@link #maxX}, {@link #maxY}, {@link #maxZ}. + f I field_14380 minX + f I field_14378 minZ + f I field_14376 maxY + f Lorg/slf4j/Logger; field_31548 LOGGER + f I field_14381 maxZ + f I field_14379 minY + f I field_14377 maxX + m ()Lnet/minecraft/class_2382; method_14659 getDimensions + c {@return the dimensions (the size) of this box} + m (III)Lnet/minecraft/class_3341; method_14661 move + p 3 dz + p 2 dy + p 1 dx + m (III)Z method_47593 contains + p 1 x + p 2 y + p 3 z + m (IIII)Z method_14669 intersectsXZ + c {@return whether the rectangle from the given coordinates intersects with this box's XZ plane} + p 4 maxZ + p 1 minX + p 2 minZ + p 3 maxX + m ()Ljava/util/stream/Stream; method_54883 streamChunkPos + m ()I method_14663 getBlockCountZ + c {@return the number of blocks on the Z axis}\n\n

This is equal to {@code maxZ - minZ + 1}. + m (I)Lnet/minecraft/class_3341; method_35410 expand + c {@return a new box that is expanded on each direction by {@code offset}} + p 1 offset + m (Lnet/minecraft/class_3341;)Z method_14657 intersects + c {@return whether {@code other} intersects with this box} + p 1 other + m ()I method_35416 getMinY + m ()I method_35418 getMaxX + m ()I method_35420 getMaxZ + m (Ljava/util/function/Consumer;)V method_34391 forEachVertex + c Calls {@code consumer} for each vertex (corner) of this box. + p 1 consumer + m (Lnet/minecraft/class_3341;)Lnet/minecraft/class_2338; method_74689 method_74689 + p 0 box + m ()Lnet/minecraft/class_3341; method_14665 infinite + c {@return a new all-encompassing, infinite box} + m (Lnet/minecraft/class_2382;Lnet/minecraft/class_2382;)Lnet/minecraft/class_3341; method_34390 create + c {@return a new box from two corners, {@code first} and {@code second}} + p 0 first + p 1 second + m ()I method_35414 getBlockCountX + c {@return the number of blocks on the X axis}\n\n

This is equal to {@code maxX - minX + 1}. + m (III)Lnet/minecraft/class_3341; method_19311 offset + c {@return a new box that is translated by {@code x}, {@code y}, {@code z}\non each axis from this box}\n\n@see #move(int, int, int) + p 2 y + p 1 x + p 3 z + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_3341; method_34389 encompass + c Expands this box to encompass the {@code pos}.\n\n@return this box, for chaining + p 1 pos + c the pos to encompass + m (III)Lnet/minecraft/class_3341; method_59718 expand + c {@return a new box that is expanded by {@code x}, {@code y}, {@code z}\non each axis}\n\n@see #expand(int) + p 1 x + p 3 z + p 2 y + m (Lnet/minecraft/class_2382;)Z method_14662 contains + c {@return whether this box contains {@code pos}} + p 1 pos + m (Lnet/minecraft/class_2338;)V + c Creates a box enclosing only {@code pos}. + p 1 pos + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_3341; method_29299 move + p 1 vec + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_3341;)Lnet/minecraft/class_3341; method_72690 createEncompassing + p 0 box1 + p 1 box2 + m ()I method_35417 getMinZ + m ()I method_14660 getBlockCountY + c {@return the number of blocks on the Y axis}\n\n

This is equal to {@code maxY - minY + 1}. + m (IIIIIIIIILnet/minecraft/class_2350;)Lnet/minecraft/class_3341; method_14667 rotated + p 0 x + p 1 y + p 2 z + p 3 offsetX + p 4 offsetY + p 5 offsetZ + p 6 sizeX + p 7 sizeY + p 8 sizeZ + p 9 facing + m (Ljava/lang/Iterable;)Ljava/util/Optional; method_35411 encompassPositions + c {@return the minimum box encompassing all of the given {@code positions},\nor an empty optional if {@code positions} is empty} + p 0 positions + m (Ljava/util/stream/IntStream;)Lcom/mojang/serialization/DataResult; method_34392 method_34392 + p 0 values + m ()I method_35419 getMaxY + m (Ljava/lang/Iterable;)Ljava/util/Optional; method_35413 encompass + c {@return the minimum box encompassing all of the given {@code boxes},\nor an empty optional if {@code boxes} is empty} + p 0 boxes + m (Lnet/minecraft/class_3341;)Lnet/minecraft/class_3341; method_35412 encompass + p 1 box + m (Lnet/minecraft/class_3341;)Ljava/util/stream/IntStream; method_34394 method_34394 + p 0 box + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3341; method_74687 method_74687 + p 0 min + p 1 max + m ([I)Lnet/minecraft/class_3341; method_34393 method_34393 + p 0 array + m (IIIIII)V + p 6 maxZ + p 2 minY + p 3 minZ + p 4 maxX + p 5 maxY + p 1 minX + m (Lnet/minecraft/class_3341;)Lnet/minecraft/class_2338; method_74688 method_74688 + p 0 box + m ()Lnet/minecraft/class_2338; method_22874 getCenter + c {@return the center of this box}\n\n@apiNote This is biased toward the minimum bound corner of the box. + m ()I method_35415 getMinX +c net/minecraft/class_2010 net/minecraft/advancement/criterion/ConsumeItemCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1799;)V method_8821 trigger + p 2 stack + p 1 player + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_2010$class_2012;)Z method_22460 method_22460 + p 1 conditions +c net/minecraft/class_2010$class_2012 net/minecraft/advancement/criterion/ConsumeItemCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47233 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2041 item + m ()Lnet/minecraft/class_175; method_8827 any + m (Lnet/minecraft/class_1799;)Z method_8826 matches + p 1 stack + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 2 item + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54957 method_54957 + p 0 instance + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_1935;)Lnet/minecraft/class_175; method_8828 item + p 0 itemRegistry + p 1 item + m (Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_175; method_35112 predicate + p 0 predicate + m ()Ljava/util/Optional; comp_2041 item +c net/minecraft/class_3342 net/minecraft/structure/EndCityGenerator + f Lnet/minecraft/class_3342$class_3344; field_14387 BRIDGE_PIECE + f I field_31549 MAX_DEPTH + f Lnet/minecraft/class_3342$class_3344; field_14386 SMALL_TOWER + f Lnet/minecraft/class_3342$class_3344; field_14384 FAT_TOWER + f Lnet/minecraft/class_3342$class_3344; field_14390 BUILDING + f Ljava/util/List; field_14385 SMALL_TOWER_BRIDGE_ATTACHMENTS + f Ljava/util/List; field_14388 FAT_TOWER_BRIDGE_ATTACHMENTS + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_3342$class_3344;ILnet/minecraft/class_3342$class_3343;Lnet/minecraft/class_2338;Ljava/util/List;Lnet/minecraft/class_5819;)Z method_14673 createPart + p 5 pieces + p 4 pos + p 6 random + p 1 piece + p 0 manager + p 3 parent + p 2 depth + m (Ljava/util/List;Lnet/minecraft/class_3342$class_3343;)Lnet/minecraft/class_3342$class_3343; method_14681 addPiece + p 1 piece + p 0 pieces + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Ljava/util/List;Lnet/minecraft/class_5819;)V method_14679 addPieces + p 4 random + p 3 pieces + p 2 rotation + p 1 pos + p 0 structureTemplateManager + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_3342$class_3343;Lnet/minecraft/class_2338;Ljava/lang/String;Lnet/minecraft/class_2470;Z)Lnet/minecraft/class_3342$class_3343; method_14684 createPiece + p 2 relativePosition + p 1 lastPiece + p 0 structureTemplateManager + p 5 ignoreAir + p 4 rotation + p 3 template +c net/minecraft/class_3342$3 net/minecraft/structure/EndCityGenerator$3 + f Z field_14394 shipGenerated +c net/minecraft/class_3342$class_3344 net/minecraft/structure/EndCityGenerator$Part + m ()V method_14688 init + m (Lnet/minecraft/class_3485;ILnet/minecraft/class_3342$class_3343;Lnet/minecraft/class_2338;Ljava/util/List;Lnet/minecraft/class_5819;)Z method_14687 create + p 6 random + p 5 pieces + p 4 pos + p 3 root + p 2 depth + p 1 manager +c net/minecraft/class_3342$class_3343 net/minecraft/structure/EndCityGenerator$Piece + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_2960;)Lnet/minecraft/class_3492; method_35426 method_35426 + p 1 id + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2487;)V + p 1 manager + p 2 nbt + m (Ljava/lang/String;)Lnet/minecraft/class_2960; method_35425 getId + p 0 template + m (Lnet/minecraft/class_3485;Ljava/lang/String;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Z)V + p 3 pos + p 2 template + p 5 includeAir + p 4 rotation + p 1 manager + m (ZLnet/minecraft/class_2470;)Lnet/minecraft/class_3492; method_35427 createPlacementData + p 0 includeAir + p 1 rotation +c net/minecraft/class_619 net/minecraft/client/render/entity/model/ZombieVillagerEntityModel + m (Lnet/minecraft/class_10087;)V method_17135 setAngles + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5609; method_32069 getArmorTexturedModelData + p 0 dilation + m (Lnet/minecraft/class_10087;Lnet/minecraft/class_4587;)V method_72881 rotateArms + m ()Lnet/minecraft/class_5607; method_32070 getTexturedModelData + m (Lnet/minecraft/class_5605;Lnet/minecraft/class_5605;)Lnet/minecraft/class_11677; method_72879 getEquipmentModelData + p 1 armorDilation + p 0 hatDilation + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5609; method_72882 method_72882 + p 0 data + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5607; method_72880 method_72880 + p 0 modelData + m ()Lnet/minecraft/class_5607; method_72883 getTexturedModelDataWithoutHead +c net/minecraft/class_617 net/minecraft/client/render/entity/model/VexEntityModel + c Represents the model of a {@linkplain VexEntity}.\n\n

\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}Root part
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value EntityModelPartNames#RIGHT_ARM}Root part{@link #rightArm}
{@value EntityModelPartNames#LEFT_ARM}Root part{@link #leftArm}
{@value EntityModelPartNames#RIGHT_WING}Root part{@link #rightWing}
{@value EntityModelPartNames#LEFT_WING}Root part{@link #leftWing}
\n
+ f Lnet/minecraft/class_630; field_3601 leftWing + f Lnet/minecraft/class_630; field_3602 rightWing + f Lnet/minecraft/class_630; field_41117 body + f Lnet/minecraft/class_630; field_41118 rightArm + f Lnet/minecraft/class_630; field_41119 leftArm + f Lnet/minecraft/class_630; field_41711 head + m (Lnet/minecraft/class_10078;Lnet/minecraft/class_1306;Lnet/minecraft/class_4587;)V method_72866 setArmAngle + m (ZZF)V method_48293 setChargingArmAngles + m (Lnet/minecraft/class_10078;)V method_17127 setAngles + m ()Lnet/minecraft/class_5607; method_32063 getTexturedModelData + m (Lnet/minecraft/class_4587;Z)V method_47977 translateForHand + p 2 mainHand + p 1 matrices +c net/minecraft/class_632 net/minecraft/client/network/ClientAdvancementManager + f Ljava/util/Map; field_3681 advancementProgresses + f Lnet/minecraft/class_310; field_3684 client + f Lnet/minecraft/class_7975; field_44808 worldSession + f Lnet/minecraft/class_632$class_633; field_3682 listener + f Lnet/minecraft/class_8779; field_3685 selectedTab + f Lorg/slf4j/Logger; field_3686 LOGGER + f Lnet/minecraft/class_163; field_46144 manager + m (Lnet/minecraft/class_632$class_633;Lnet/minecraft/class_8779;Lnet/minecraft/class_167;)V method_53816 method_53816 + p 3 progress + p 2 advancement + m (Lnet/minecraft/class_8779;Z)V method_2864 selectTab + p 1 tab + p 2 local + m (Lnet/minecraft/class_632$class_633;)V method_2862 setListener + p 1 listener + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_8779; method_53815 get + p 1 id + m ()Lnet/minecraft/class_163; method_53814 getManager + m (Lnet/minecraft/class_2779;)V method_2861 onAdvancements + p 1 packet + m (Lnet/minecraft/class_310;Lnet/minecraft/class_7975;)V + p 2 worldSession + p 1 client +c net/minecraft/class_632$class_633 net/minecraft/client/network/ClientAdvancementManager$Listener + m (Lnet/minecraft/class_8779;)V method_2866 selectTab + p 1 advancement + m (Lnet/minecraft/class_8781;Lnet/minecraft/class_167;)V method_2865 setProgress + p 1 advancement + p 2 progress +c net/minecraft/class_3350 net/minecraft/server/rcon/RconCommandOutput + f Lnet/minecraft/class_2561; field_25146 RCON_NAME_TEXT + f Lnet/minecraft/server/MinecraftServer; field_14405 server + f Ljava/lang/StringBuffer; field_14404 buffer + f Ljava/lang/String; field_29793 RCON_NAME + m ()V method_14702 clear + m ()Lnet/minecraft/class_2168; method_14700 createRconCommandSource + m ()Ljava/lang/String; method_14701 asString + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server +c net/minecraft/class_631 net/minecraft/client/world/ClientChunkManager + f Lnet/minecraft/class_3568; field_3677 lightingProvider + f Lnet/minecraft/class_638; field_16525 world + f Lnet/minecraft/class_2818; field_3676 emptyChunk + f Lnet/minecraft/class_631$class_3681; field_16246 chunks + f Lorg/slf4j/Logger; field_3679 LOGGER + m (IILnet/minecraft/class_2806;Z)Lnet/minecraft/class_2818; method_2857 getChunk + m (I)I method_20230 getChunkMapRadius + p 0 loadDistance + m (IILnet/minecraft/class_2540;Ljava/util/Map;Ljava/util/function/Consumer;)Lnet/minecraft/class_2818; method_16020 loadChunkFromPacket + p 1 x + p 2 z + p 3 buf + p 4 heightmaps + m (II)V method_20317 setChunkMapCenter + p 2 z + p 1 x + m (IILnet/minecraft/class_2540;)V method_49630 onChunkBiomeData + p 2 z + p 3 buf + p 1 x + m (Lnet/minecraft/class_2818;II)Z method_20181 positionEquals + p 2 z + p 1 x + p 0 chunk + m (Lnet/minecraft/class_638;I)V + p 2 loadDistance + p 1 world + m (Lnet/minecraft/class_1923;)V method_2859 unload + p 1 pos + m ()Lit/unimi/dsi/fastutil/longs/LongOpenHashSet; method_62890 getActiveSections + m (I)V method_20180 updateLoadDistance + p 1 loadDistance +c net/minecraft/class_631$class_3681 net/minecraft/client/world/ClientChunkManager$ClientChunkMap + f Ljava/util/concurrent/atomic/AtomicReferenceArray; field_16251 chunks + f I field_19205 centerChunkZ + f I field_19204 centerChunkX + f I field_16253 radius + f I field_16252 diameter + f I field_19143 loadedChunkCount + f Lit/unimi/dsi/fastutil/longs/LongOpenHashSet; field_53836 activeSections + m (ILnet/minecraft/class_2818;)V method_62893 unloadChunk + p 1 index + p 2 chunk + m (I)Lnet/minecraft/class_2818; method_16033 getChunk + p 1 index + m (II)Z method_16034 isInRadius + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/class_2818;)V method_62894 loadChunkSections + p 1 chunk + m (ILnet/minecraft/class_2818;)V method_16031 set + p 1 index + p 2 chunk + m (Lnet/minecraft/class_2818;)V method_62892 unloadChunkSections + p 1 chunk + m (II)I method_16027 getIndex + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/class_2818;)V method_65523 refreshSections + p 1 chunk + m (Lnet/minecraft/class_631;I)V + p 2 radius + m (Ljava/lang/String;)V method_35751 writePositions + p 1 fileName + m (IIIZ)V method_62891 onSectionStatusChanged + p 1 x + p 2 sectionY + p 3 z + p 4 previouslyEmpty +c net/minecraft/class_3351 net/minecraft/structure/IglooGenerator + f Lnet/minecraft/class_2960; field_14407 MIDDLE_TEMPLATE + f Lnet/minecraft/class_2960; field_14409 TOP_TEMPLATE + f I field_31550 OFFSET_Y + f Ljava/util/Map; field_14408 OFFSETS + f Lnet/minecraft/class_2960; field_14410 BOTTOM_TEMPLATE + f Ljava/util/Map; field_14406 OFFSETS_FROM_TOP + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;)V method_14705 addPieces + p 0 manager + p 1 pos + p 2 rotation + p 3 holder + p 4 random +c net/minecraft/class_3351$class_3352 net/minecraft/structure/IglooGenerator$Piece + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2960;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;I)V + p 1 manager + p 3 pos + p 2 identifier + p 5 yOffset + p 4 rotation + m (Lnet/minecraft/class_2470;Lnet/minecraft/class_2960;)Lnet/minecraft/class_3492; method_35428 createPlacementData + p 1 identifier + p 0 rotation + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2487;)V + p 2 nbt + p 1 manager + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_2960;)Lnet/minecraft/class_3492; method_35429 method_35429 + p 1 identifier + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2338;I)Lnet/minecraft/class_2338; method_35430 getPosOffset + p 2 yOffset + p 0 identifier + p 1 pos +c net/minecraft/class_630 net/minecraft/client/model/ModelPart + f Ljava/util/List; field_3663 cuboids + f F field_37939 yScale + f F field_3674 roll + f F field_3654 pitch + f F field_3656 originY + f Z field_3665 visible + f Lnet/minecraft/class_5603; field_37941 defaultTransform + f F field_3657 originX + f F field_3675 yaw + f F field_3655 originZ + f F field_37938 xScale + f Z field_38456 hidden + f F field_37940 zScale + f Ljava/util/Map; field_3661 children + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_630$class_6229;Ljava/lang/String;)V method_35746 forEachCuboid + p 1 matrices + p 3 path + p 2 consumer + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4588;III)V method_22699 render + p 1 matrices + p 2 vertices + p 3 light + p 4 overlay + p 5 color + m (Lnet/minecraft/class_4587;Ljava/util/function/Consumer;)V method_72152 collectVertices + p 2 collector + p 1 matrices + m ()Ljava/util/function/Function; method_72015 createPartGetter + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_630$class_6229;)V method_35745 forEachCuboid + p 2 consumer + p 1 matrices + m (Ljava/util/function/Consumer;Lnet/minecraft/class_4587$class_4665;Ljava/lang/String;ILnet/minecraft/class_630$class_628;)V method_72153 method_72153 + p 1 matrix + p 2 path + p 3 index + p 4 cuboid + m (Ljava/lang/String;)Lnet/minecraft/class_630; method_32086 getChild + p 1 name + m ()Ljava/util/List; method_32088 traverse + m ()Z method_32087 isEmpty + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_630$class_6229;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_630;)V method_35747 method_35747 + p 4 part + p 3 name + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_4588;II)V method_22698 render + p 4 overlay + p 2 vertices + p 3 light + p 1 matrices + m (Lnet/minecraft/class_4587;)V method_22703 applyTransform + p 1 matrices + m (Lorg/joml/Vector3f;)V method_41922 rotate + p 1 vec3f + m (Ljava/util/function/BiConsumer;)V method_72014 forEachChild + p 1 partBiConsumer + m (Lorg/joml/Vector3f;)V method_41920 moveOrigin + p 1 vec3f + m (Ljava/util/List;Ljava/util/Map;)V + p 1 cuboids + p 2 children + m (Ljava/lang/String;)Z method_41919 hasChild + p 1 child + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_630$class_628; method_22700 getRandomCuboid + p 1 random + m (FFF)V method_33425 setAngles + p 1 pitch + p 2 yaw + p 3 roll + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;III)V method_22702 renderCuboids + p 5 color + p 4 overlay + p 3 light + p 2 vertexConsumer + p 1 entry + m (Lorg/joml/Vector3f;)V method_41924 scale + p 1 vec3f + m ()Lnet/minecraft/class_5603; method_32084 getTransform + m ()V method_41923 resetTransform + m (Lorg/joml/Quaternionf;)V method_62132 rotate + p 1 quaternion + m ()Lnet/minecraft/class_5603; method_41921 getDefaultTransform + m (Lnet/minecraft/class_5603;)V method_32085 setTransform + p 1 transform + m (Lnet/minecraft/class_5603;)V method_41918 setDefaultTransform + p 1 transform + m (FFF)V method_2851 setOrigin + p 3 z + p 2 y + p 1 x + m (Ljava/util/List;Ljava/lang/String;Lnet/minecraft/class_630;)V method_72013 method_72013 + p 2 part + p 1 key +c net/minecraft/class_630$class_593 net/minecraft/client/model/ModelPart$Quad + f [Lnet/minecraft/class_630$class_618; comp_3184 vertices + f Lorg/joml/Vector3fc; comp_3185 direction + m ([Lnet/minecraft/class_630$class_618;FFFFFFZLnet/minecraft/class_2350;)V + p 9 direction + p 8 flip + p 5 v2 + p 4 u2 + p 7 squishV + p 6 squishU + p 1 vertices + p 3 v1 + p 2 u1 + m ()[Lnet/minecraft/class_630$class_618; comp_3184 vertices + m ()Lorg/joml/Vector3fc; comp_3185 direction + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_2350; method_74249 getMirrorDirection + p 0 direction + m ([Lnet/minecraft/class_630$class_618;Lorg/joml/Vector3fc;)V + p 1 vertices + p 2 direction +c net/minecraft/class_630$class_628 net/minecraft/client/model/ModelPart$Cuboid + f F field_3646 maxZ + f F field_3645 minX + f F field_3644 minY + f F field_3643 minZ + f [Lnet/minecraft/class_630$class_593; field_3649 sides + f F field_3648 maxX + f F field_3647 maxY + m (IIFFFFFFFFFZFFLjava/util/Set;)V + p 1 u + p 3 x + p 2 v + p 9 extraX + p 8 sizeZ + p 11 extraZ + p 10 extraY + p 5 z + p 4 y + p 7 sizeY + p 6 sizeX + p 13 textureWidth + p 12 mirror + p 15 sides + p 14 textureHeight + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;III)V method_32089 renderCuboid + p 1 entry + p 2 vertexConsumer + p 5 color + p 3 light + p 4 overlay +c net/minecraft/class_630$class_6229 net/minecraft/client/model/ModelPart$CuboidConsumer + m (Lnet/minecraft/class_4587$class_4665;Ljava/lang/String;ILnet/minecraft/class_630$class_628;)V method_35748 accept + c Accepts a cuboid from a model part.\n\n@see ModelPart#forEachCuboid(MatrixStack, CuboidConsumer) + p 3 index + c the index of the current cuboid in the current model part + p 2 path + c the path of the current model part, separated by {@code /} + p 4 cuboid + c the current cuboid + p 1 matrix + c the current matrix transformation from the model parts +c net/minecraft/class_630$class_618 net/minecraft/client/model/ModelPart$Vertex + f F comp_3187 u + f F comp_3188 v + f F field_62594 SCALE_FACTOR + f F comp_4806 z + f F comp_4805 y + f F comp_4804 x + m (FF)Lnet/minecraft/class_630$class_618; method_2837 remap + p 2 v + p 1 u + m ()F comp_3187 u + m ()F method_74252 worldZ + m ()F comp_3188 v + m ()F method_74251 worldY + m ()F method_74250 worldX + m ()F comp_4806 z + m ()F comp_4805 y + m ()F comp_4804 x + m (FFFFF)V + p 1 x + p 2 y + p 3 z + p 4 u + p 5 v +c net/minecraft/class_637 net/minecraft/client/network/ClientCommandSource + f Ljava/util/concurrent/CompletableFuture; field_3723 pendingCommandCompletion + f I field_3724 completionId + f Ljava/util/Set; field_39794 chatSuggestions + f Lnet/minecraft/class_310; field_3725 client + f Lnet/minecraft/class_634; field_3722 networkHandler + f Lnet/minecraft/class_12096; field_63568 permissionPredicate + m (Lnet/minecraft/class_2172$class_7078;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lnet/minecraft/class_2378;)Ljava/util/concurrent/CompletableFuture; method_41232 method_41232 + p 3 registry + m (Lnet/minecraft/class_7597$class_7598;Ljava/util/List;)V method_44764 onChatSuggestions + p 1 action + p 2 suggestions + m (D)Ljava/lang/String; method_2929 format + p 0 d + m (Lnet/minecraft/class_634;Lnet/minecraft/class_310;Lnet/minecraft/class_12096;)V + p 2 client + p 3 permissionPredicate + p 1 networkHandler + m (ILcom/mojang/brigadier/suggestion/Suggestions;)V method_2931 onCommandSuggestions + p 1 completionId + p 2 suggestions + m (I)Ljava/lang/String; method_2930 format + p 0 i +c net/minecraft/class_636 net/minecraft/client/network/ClientPlayerInteractionManager + f Lnet/minecraft/class_1934; field_24608 previousGameMode + f F field_3715 currentBreakingProgress + f Lorg/slf4j/Logger; field_20316 LOGGER + f Lnet/minecraft/class_310; field_3712 client + f I field_3716 blockBreakingCooldown + f Lnet/minecraft/class_1934; field_3719 gameMode + f I field_3721 lastSelectedSlot + f F field_3713 blockBreakingSoundCooldown + f Lnet/minecraft/class_634; field_3720 networkHandler + f Lnet/minecraft/class_2338; field_3714 currentBreakingPos + f Z field_3717 breakingBlock + f Lnet/minecraft/class_1799; field_3718 selectedStack + m (ILnet/minecraft/class_10298;Z)V method_2912 clickRecipe + p 3 craftAll + p 2 recipeId + p 1 syncId + m (Lnet/minecraft/class_638;Lnet/minecraft/class_3469;Lnet/minecraft/class_299;)Lnet/minecraft/class_746; method_29357 createPlayer + p 2 statHandler + p 3 recipeBook + p 1 world + m (Lnet/minecraft/class_2338;)Z method_2899 breakBlock + p 1 pos + m (Lnet/minecraft/class_12125;)V method_75407 attackWithPiercingWeapon + p 1 piercingWeaponComponent + m ()V method_2911 syncSelectedSlot + m (Lnet/minecraft/class_1297;Z)V method_2916 pickItemFromEntity + p 1 entity + p 2 includeData + m ()V method_2927 tick + m (IIILnet/minecraft/class_1713;Lnet/minecraft/class_1657;)V method_2906 clickSlot + c @see net.minecraft.screen.ScreenHandler#onSlotClick(int, int, net.minecraft.screen.slot.SlotActionType, net.minecraft.entity.player.PlayerEntity) + p 4 actionType + p 3 button + p 5 player + p 2 slotId + p 1 syncId + m (Lnet/minecraft/class_310;Lnet/minecraft/class_634;)V + p 1 client + p 2 networkHandler + m ()Z method_2923 isBreakingBlock + m ()I method_51888 getBlockBreakingProgress + m (Lnet/minecraft/class_1934;)V method_2907 setGameMode + p 1 gameMode + m (Lnet/minecraft/class_1268;Lnet/minecraft/class_1657;Lorg/apache/commons/lang3/mutable/MutableObject;I)Lnet/minecraft/class_2596; method_41929 method_41929 + p 4 sequence + m (Lnet/minecraft/class_2338;Z)V method_65193 pickItemFromBlock + p 1 pos + p 2 includeData + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;I)Lnet/minecraft/class_2596; method_41930 method_41930 + p 4 sequence + m ()Lnet/minecraft/class_1934; method_28107 getPreviousGameMode + m (Lnet/minecraft/class_1934;Lnet/minecraft/class_1934;)V method_32790 setGameModes + p 1 gameMode + p 2 previousGameMode + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1297;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_2905 interactEntity + p 1 player + p 2 entity + p 3 hand + m (Lnet/minecraft/class_1799;)V method_2915 dropCreativeStack + p 1 stack + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_2919 interactItem + p 2 hand + p 1 player + m (Lnet/minecraft/class_1799;I)V method_2909 clickCreativeStack + p 1 stack + p 2 slotId + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1297;)V method_2918 attackEntity + p 2 target + p 1 player + m (Lnet/minecraft/class_1657;)V method_2903 copyAbilities + p 1 player + m (Lnet/minecraft/class_2338;)Z method_2922 isCurrentlyBreaking + p 1 pos + m (II)V method_2900 clickButton + p 2 buttonId + p 1 syncId + m (Lnet/minecraft/class_638;Lnet/minecraft/class_3469;Lnet/minecraft/class_299;Lnet/minecraft/class_10185;Z)Lnet/minecraft/class_746; method_2901 createPlayer + p 4 lastPlayerInput + p 3 recipeBook + p 5 lastSprinting + p 2 statHandler + p 1 world + m ()V method_2925 cancelBlockBreaking + m (Lnet/minecraft/class_746;Lnet/minecraft/class_1268;Lnet/minecraft/class_3965;)Lnet/minecraft/class_1269; method_2896 interactBlock + p 2 hand + p 3 hitResult + p 1 player + m ()Z method_2913 hasExperienceBar + m (Lnet/minecraft/class_746;Lnet/minecraft/class_1268;Lnet/minecraft/class_3965;)Lnet/minecraft/class_1269; method_41934 interactBlockInternal + p 1 player + p 3 hitResult + p 2 hand + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_2902 updateBlockBreakingProgress + p 2 direction + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_2910 attackBlock + p 2 direction + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;I)Lnet/minecraft/class_2596; method_41935 method_41935 + p 3 sequence + m (Lnet/minecraft/class_1657;)V method_2897 stopUsingItem + p 1 player + m (Lnet/minecraft/class_638;Lnet/minecraft/class_7204;)V method_41931 sendSequencedPacket + p 1 world + p 2 packetCreator + m ()Z method_2928 isFlyingLocked + m (IIZ)V method_54634 slotChangedState + p 3 newState + p 2 screenHandlerId + p 1 slot + m ()Z method_2908 hasStatusBars + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1297;Lnet/minecraft/class_3966;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_2917 interactEntityAtLocation + p 1 player + p 4 hand + p 3 hitResult + p 2 entity + m ()Z method_2895 hasRidingInventory + m ()Lnet/minecraft/class_1934; method_2920 getCurrentGameMode + m ()Z method_2924 hasLimitedAttackSpeed + m (Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/class_746;Lnet/minecraft/class_1268;Lnet/minecraft/class_3965;I)Lnet/minecraft/class_2596; method_41933 method_41933 + p 5 sequence + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;I)Lnet/minecraft/class_2596; method_41936 method_41936 + p 3 sequence + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;I)Lnet/minecraft/class_2596; method_41932 method_41932 + p 3 sequence +c net/minecraft/class_635 net/minecraft/client/network/ClientLoginNetworkHandler + f Ljava/lang/String; field_44809 minigameName + f Lnet/minecraft/class_2535; field_3707 connection + f Lnet/minecraft/class_11653; field_61722 clientChunkLoadProgress + f Z field_48401 hasCookies + f Z field_41383 newWorld + f Ljava/util/Map; field_48400 serverCookies + f Ljava/util/Map; field_62024 playersByUuid + f Lorg/slf4j/Logger; field_3710 LOGGER + f Ljava/util/concurrent/atomic/AtomicReference; field_46192 state + f Lnet/minecraft/class_310; field_3708 client + f Lnet/minecraft/class_642; field_40481 serverInfo + f Ljava/time/Duration; field_41384 worldLoadTime + f Z field_62025 seenInsecureChatWarning + f Lnet/minecraft/class_437; field_3706 parentScreen + f Ljava/util/function/Consumer; field_3711 statusConsumer + m (Ljava/lang/String;Lnet/minecraft/class_2917;Ljavax/crypto/Cipher;Ljavax/crypto/Cipher;)V method_2894 method_2894 + p 3 decryptionCipher + p 4 encryptionCipher + p 1 serverId + p 2 packet + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_2892 joinServerSession + p 1 serverId + m (Lnet/minecraft/class_635$class_8798;)V method_53872 switchTo + p 1 state + m (Ljava/lang/String;)V method_51768 setMinigameName + p 1 minigameName + m (Lnet/minecraft/class_2535;Lnet/minecraft/class_310;Lnet/minecraft/class_642;Lnet/minecraft/class_437;ZLjava/time/Duration;Ljava/util/function/Consumer;Lnet/minecraft/class_11653;Lnet/minecraft/class_9112;)V + p 3 serverInfo + p 4 parentScreen + p 5 newWorld + p 6 worldLoadTime + p 7 statusConsumer + p 8 clientChunkLoadProgress + p 9 cookieStorage + p 1 connection + p 2 client + m (Lnet/minecraft/class_635$class_8798;Lnet/minecraft/class_635$class_8798;)Lnet/minecraft/class_635$class_8798; method_53873 method_53873 + p 1 currentState + m (Lnet/minecraft/class_2917;Ljavax/crypto/Cipher;Ljavax/crypto/Cipher;)V method_56151 setupEncryption + p 1 keyPacket + p 2 decryptionCipher + p 3 encryptionCipher +c net/minecraft/class_635$class_8798 net/minecraft/client/network/ClientLoginNetworkHandler$State + f Ljava/util/Set; field_46198 prevStates + f Lnet/minecraft/class_2561; field_46197 name + f Lnet/minecraft/class_635$class_8798; field_46196 JOINING + f Lnet/minecraft/class_635$class_8798; field_46193 CONNECTING + f Lnet/minecraft/class_635$class_8798; field_46194 AUTHORIZING + f Lnet/minecraft/class_635$class_8798; field_46195 ENCRYPTING + m (Ljava/lang/String;ILnet/minecraft/class_2561;Ljava/util/Set;)V + p 3 name + p 4 prevStates +c net/minecraft/class_634 net/minecraft/client/network/ClientPlayNetworkHandler + f Lnet/minecraft/class_638$class_5271; field_24321 worldProperties + f Ljava/util/OptionalInt; field_54851 removedPlayerVehicleId + f Ljava/util/Set; field_25273 worldKeys + f Lnet/minecraft/class_2561; field_62029 CONFIRM_SUGGEST_COMMAND_TEXT + f Lnet/minecraft/class_12036; field_62944 debugSubscriptionManager + f Lcom/mojang/authlib/GameProfile; field_3697 profile + f Lnet/minecraft/class_11264; field_59963 waypointHandler + f Lnet/minecraft/class_2641$class_11408; field_60784 COMMAND_NODE_FACTORY + f Z field_46187 worldCleared + f Lnet/minecraft/class_5455$class_6890; field_25063 combinedDynamicRegistries + f Lnet/minecraft/class_2561; field_62028 CONFIRM_RUN_COMMAND_TEXT + f Lnet/minecraft/class_2561; field_40485 INVALID_PACKET_TEXT + f Lnet/minecraft/class_7561; field_40483 signatureStorage + f Lnet/minecraft/class_9895; field_53030 fuelRegistry + f Lnet/minecraft/class_8760; field_45945 chunkBatchSizeCalculator + f Lnet/minecraft/class_2561; field_58157 BAD_CHAT_INDEX_TEXT + f I field_35164 simulationDistance + f Lnet/minecraft/class_12096; field_63567 RESTRICTED_PERMISSION_PREDICATE + f Ljava/util/UUID; field_16771 sessionId + f Lnet/minecraft/class_8791; field_53032 syncedOptions + f Lnet/minecraft/class_269; field_47878 scoreboard + f I field_19144 chunkLoadDistance + f Z field_64674 loaded + f Lnet/minecraft/class_10333; field_54850 recipeManager + f I field_58156 globalChatMessageIndex + f Lnet/minecraft/class_12090; field_63566 RESTRICTED_PERMISSION_CHECK + f I field_40487 ACKNOWLEDGMENT_BATCH_SIZE + f Ljava/util/List; field_56354 cachedData + f Lnet/minecraft/class_2561; field_60783 CONFIRM_COMMAND_TITLE_TEXT + f Lnet/minecraft/class_1845; field_51439 brewingRecipeRegistry + f Lnet/minecraft/class_2561; field_45603 RECONFIGURING_TEXT + f Lnet/minecraft/class_8761; field_45946 pingMeasurer + f Lnet/minecraft/class_300; field_3692 dataQueryHandler + f Lnet/minecraft/class_1124; field_51825 searchManager + f Ljava/util/concurrent/CompletableFuture; field_53031 profileKeyPairFuture + f Lcom/mojang/brigadier/CommandDispatcher; field_3696 commandDispatcher + f Lnet/minecraft/class_7637; field_39858 lastSeenMessagesCollector + f Lnet/minecraft/class_5819; field_3687 random + f Lnet/minecraft/class_637; field_3691 commandSource + f Lnet/minecraft/class_10936$class_10937; field_58155 componentHasher + f Lnet/minecraft/class_638; field_3699 world + f Lnet/minecraft/class_12087; field_63565 RESTRICTED_PERMISSION + f Ljava/util/Map; field_3693 playerListEntries + f Lnet/minecraft/class_2561; field_39917 UNSECURE_SERVER_TOAST_TEXT + f Ljava/util/Set; field_40489 listedPlayerListEntries + f Lnet/minecraft/class_637; field_60782 restrictedCommandSource + c A {@link CommandSource} that always has a permission level of 0. + f Z field_48403 secureChatEnforced + f Lnet/minecraft/class_2561; field_39916 UNSECURE_SERVER_TOAST_TITLE + f Lnet/minecraft/class_7818; field_40799 session + f Lnet/minecraft/class_11653; field_61723 chunkLoadProgress + f Lorg/slf4j/Logger; field_3695 LOGGER + f Lnet/minecraft/class_7610$class_7612; field_39808 messagePacker + f Lnet/minecraft/class_632; field_3700 advancementHandler + f Lnet/minecraft/class_7699; field_45600 enabledFeatures + m ()Lnet/minecraft/class_300; method_2876 getDataQueryHandler + m (Lnet/minecraft/class_2604;)Lnet/minecraft/class_1297; method_53876 createEntity + p 1 packet + m (Lnet/minecraft/class_310;Lnet/minecraft/class_2535;Lnet/minecraft/class_8675;)V + p 1 client + m ()V method_72898 setPlayerLoaded + m ()Lnet/minecraft/class_10286; method_64899 getRecipeManager + m ()Lnet/minecraft/class_10936$class_10937; method_68823 getComponentHasher + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_437;)V method_71926 openConfirmRunCommandScreen + p 3 screenAfterRun + p 2 message + p 1 command + m (Lnet/minecraft/class_8710;)V method_52801 warnOnUnknownPayload + p 1 payload + m (Lnet/minecraft/class_8791;)V method_62149 syncOptions + p 1 syncedOptions + m ()Lnet/minecraft/class_637; method_2875 getCommandSource + m ()Lnet/minecraft/class_638; method_2890 getWorld + m ()Lnet/minecraft/class_5455$class_6890; method_29091 getRegistryManager + m (Lnet/minecraft/class_299;)V method_64898 refreshRecipeBook + p 1 recipeBook + m (Lnet/minecraft/class_7699;)Z method_45720 hasFeature + p 1 feature + m (Lnet/minecraft/class_268;Lnet/minecraft/class_5900$class_5902;)V method_34010 method_34010 + p 1 team + m (IILnet/minecraft/class_6606;Z)V method_38543 readLightData + p 2 z + p 1 x + p 4 scheduleBlockRenders + p 3 data + m ()Lcom/mojang/brigadier/CommandDispatcher; method_2886 getCommandDispatcher + m ()Lnet/minecraft/class_642; method_45734 getServerInfo + m (Ljava/lang/String;Lnet/minecraft/class_437;)V method_71927 runClickEventCommand + p 2 afterActionScreen + p 1 command + m ()Lnet/minecraft/class_632; method_2869 getAdvancementHandler + m (Ljava/util/UUID;)Lnet/minecraft/class_640; method_2871 getPlayerListEntry + p 1 uuid + m (Ljava/lang/String;)V method_45729 sendChatMessage + p 1 content + m (Lnet/minecraft/class_2622;Lnet/minecraft/class_2586;)V method_38542 method_38542 + p 2 blockEntity + m ()Ljava/util/Collection; method_31363 getPlayerUuids + m (Z)V method_76761 setLoaded + p 1 loaded + m ()Lcom/mojang/authlib/GameProfile; method_2879 getProfile + m (Lnet/minecraft/class_1297;)V method_43209 playSpawnSound + p 1 entity + m ()Ljava/util/Map; method_73234 getSeenPlayers + m (Lnet/minecraft/class_6903;Lnet/minecraft/class_9336;)Ljava/lang/Integer; method_68824 method_68824 + p 1 component + m (Ljava/time/Instant;JLnet/minecraft/class_7637$class_7816;Ljava/lang/String;)Lnet/minecraft/class_7469; method_45722 method_45722 + p 5 value + m (IILnet/minecraft/class_3568;Lnet/minecraft/class_1944;Ljava/util/BitSet;Ljava/util/BitSet;Ljava/util/Iterator;Z)V method_2870 updateLighting + p 1 chunkX + p 2 chunkZ + p 3 provider + p 4 type + p 5 inited + p 6 uninited + p 7 nibbles + p 8 scheduleBlockRenders + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_2561;Ljava/lang/Runnable;)V method_73231 openConfirmCommandScreen + p 1 command + p 4 action + p 2 message + p 3 yesText + m (Lnet/minecraft/class_7469;Z)V method_44940 acknowledge + p 2 displayed + p 1 signature + m ()V method_54134 clearWorld + m ()Lnet/minecraft/class_12021; method_74750 getDebugDataStore + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_6864$class_5748;)Lnet/minecraft/class_2378$class_10106; method_62148 startTagReload + p 1 registryRef + p 2 serialized + m (Lnet/minecraft/class_10719;)V method_67269 registerForCleaning + p 1 dataCache + m ()Ljava/util/Collection; method_2880 getPlayerList + m (Ljava/lang/String;)Lnet/minecraft/class_640; method_73471 getCaseInsensitivePlayerInfo + p 1 name + m ()Lnet/minecraft/class_1124; method_60347 getSearchManager + m (Ljava/lang/String;)Lnet/minecraft/class_640; method_2874 getPlayerListEntry + p 1 profileName + m (Lnet/minecraft/class_2703$class_2705;Lnet/minecraft/class_640;)V method_45727 setPublicSession + p 1 receivedEntry + p 2 currentEntry + m ()Ljava/util/Set; method_29356 getWorldKeys + m (Lnet/minecraft/class_10182;Ljava/util/Set;Lnet/minecraft/class_1297;Z)Z method_64897 setPosition + p 2 entity + p 0 pos + p 1 flags + m ()V method_45737 sendAcknowledgment + m ()V method_60346 refreshSearchManager + m (ZLjava/util/List;Lnet/minecraft/class_5321;Lnet/minecraft/class_6864$class_5748;)V method_62150 method_62150 + p 4 serialized + p 3 registryRef + m (Lnet/minecraft/class_9336;Ljava/lang/String;)Ljava/lang/IllegalArgumentException; method_68825 method_68825 + p 1 error + m ()V method_62151 fetchProfileKey + m (Lnet/minecraft/class_7427;)V method_47657 updateKeyPair + p 1 keyPair + m (Lnet/minecraft/class_2666;)V method_51684 unloadChunk + p 1 packet + m ()Lnet/minecraft/class_11264; method_70936 getWaypointHandler + m (Lnet/minecraft/class_1657;)Lnet/minecraft/class_1799; method_19691 getActiveDeathProtector + p 0 player + m ()Ljava/util/Collection; method_45732 getListedPlayerListEntries + m (I)V method_64896 method_64896 + p 1 id + m ()Z method_76760 isLoaded + m ()Lnet/minecraft/class_7699; method_45735 getEnabledFeatures + m (Lnet/minecraft/class_2818;II)V method_38541 scheduleRenderChunk + p 1 chunk + p 2 x + p 3 z + m ()Lnet/minecraft/class_2535; method_48296 getConnection + m (Lnet/minecraft/class_1309;Lcom/mojang/datafixers/util/Pair;)V method_34008 method_34008 + p 1 pair + m (Lnet/minecraft/class_2703$class_5893;Lnet/minecraft/class_2703$class_2705;Lnet/minecraft/class_640;)V method_45726 handlePlayerListAction + p 3 currentEntry + p 2 receivedEntry + p 1 action + m ()V method_47658 unloadWorld + m ()Z method_46529 isSecureChatEnforced + m ()Ljava/util/UUID; method_16690 getSessionId + m (IILnet/minecraft/class_6603;)V method_38539 loadChunk + p 3 chunkData + p 2 z + p 1 x + m (Ljava/lang/String;)V method_45730 sendChatCommand + p 1 command + m (Lnet/minecraft/class_746;Lnet/minecraft/class_638;Lnet/minecraft/class_3928$class_9678;)V method_54133 startWorldLoading + p 3 reason + p 2 world + p 1 player + m (Ljava/lang/Runnable;Lnet/minecraft/class_437;Z)V method_73230 method_73230 + p 3 confirmed + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_34007 method_34007 + p 2 state + p 1 pos + m ()V method_67268 clearCachedData + m (Lcom/mojang/brigadier/ParseResults;)Z method_71925 validate + p 0 parseResults + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_437;)V method_73233 suggestCommand + p 1 command + p 3 afterActionScreen + p 2 message + m ()Lnet/minecraft/class_9895; method_62147 getFuelRegistry + m (Ljava/lang/String;)Lnet/minecraft/class_634$class_11503; method_71929 parseCommand + p 1 command + m ()Lnet/minecraft/class_269; method_55823 getScoreboard + m (ZLnet/minecraft/class_5321;Lnet/minecraft/class_5321;)Lnet/minecraft/class_3928$class_9678; method_59842 getWorldEntryReason + p 3 to + p 2 from + p 1 dead + m ()Lnet/minecraft/class_1845; method_59754 getBrewingRecipeRegistry +c net/minecraft/class_634$class_11503 net/minecraft/client/network/ClientPlayNetworkHandler$CommandRunResult + f Lnet/minecraft/class_634$class_11503; field_60789 PERMISSIONS_REQUIRED + f Lnet/minecraft/class_634$class_11503; field_60787 PARSE_ERRORS + f Lnet/minecraft/class_634$class_11503; field_60788 SIGNATURE_REQUIRED + f Lnet/minecraft/class_634$class_11503; field_60786 NO_ISSUES +c net/minecraft/class_634$1 net/minecraft/client/network/ClientPlayNetworkHandler$1 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_71930 method_71930 + p 0 context +c net/minecraft/class_2025 net/minecraft/predicate/entity/DistancePredicate + f Lcom/mojang/serialization/Codec; field_45728 CODEC + f Lnet/minecraft/class_2096$class_2099; comp_1744 y + f Lnet/minecraft/class_2096$class_2099; comp_1743 x + f Lnet/minecraft/class_2096$class_2099; comp_1746 horizontal + f Lnet/minecraft/class_2096$class_2099; comp_1745 z + f Lnet/minecraft/class_2096$class_2099; comp_1747 absolute + m (Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;)V + p 5 absolute + p 4 horizontal + p 1 x + p 3 z + p 2 y + m (Lnet/minecraft/class_2096$class_2099;)Lnet/minecraft/class_2025; method_8860 horizontal + p 0 horizontal + m (DDDDDD)Z method_8859 test + p 7 x1 + p 9 y1 + p 3 y0 + p 5 z0 + p 1 x0 + p 11 z1 + m (Lnet/minecraft/class_2096$class_2099;)Lnet/minecraft/class_2025; method_8856 y + p 0 y + m (Lnet/minecraft/class_2096$class_2099;)Lnet/minecraft/class_2025; method_37223 absolute + p 0 absolute + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53118 method_53118 + p 0 instance + m ()Lnet/minecraft/class_2096$class_2099; comp_1743 x + m ()Lnet/minecraft/class_2096$class_2099; comp_1744 y + m ()Lnet/minecraft/class_2096$class_2099; comp_1745 z + m ()Lnet/minecraft/class_2096$class_2099; comp_1746 horizontal + m ()Lnet/minecraft/class_2096$class_2099; comp_1747 absolute +c net/minecraft/class_2027 net/minecraft/advancement/criterion/EffectsChangedCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;)V method_8863 trigger + p 2 source + p 1 player + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_47;Lnet/minecraft/class_2027$class_2029;)Z method_22462 method_22462 + p 2 conditions +c net/minecraft/class_2027$class_2029 net/minecraft/advancement/criterion/EffectsChangedCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47240 CODEC + f Ljava/util/Optional; comp_2047 source + f Ljava/util/Optional; comp_2046 effects + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54977 method_54977 + p 0 instance + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_47;)Z method_8868 matches + p 2 context + p 1 player + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_175; method_37224 create + p 0 source + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 3 source + p 1 playerPredicate + p 2 effects + m (Lnet/minecraft/class_2102$class_8748;)Lnet/minecraft/class_175; method_8869 create + p 0 effects + m ()Ljava/util/Optional; comp_2047 source + m ()Ljava/util/Optional; comp_2046 effects +c net/minecraft/class_3359 net/minecraft/server/rcon/RconBase + f Ljava/lang/Thread; field_14423 thread + f Lorg/slf4j/Logger; field_14430 LOGGER + f Z field_14431 running + f Ljava/util/concurrent/atomic/AtomicInteger; field_14428 THREAD_COUNTER + f Ljava/lang/String; field_14424 description + m (Ljava/lang/String;)V + p 1 description + m ()Z method_14731 isRunning + m ()V method_18050 stop + m ()Z method_14728 start +c net/minecraft/class_3353 net/minecraft/structure/MineshaftGenerator + m (Lnet/minecraft/class_3443;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3353$class_3356; method_14711 pieceGenerator + p 0 start + p 1 holder + p 2 random + p 3 x + p 4 y + p 5 z + p 6 orientation + p 7 chainLength + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;ILnet/minecraft/class_3098$class_3100;)Lnet/minecraft/class_3353$class_3356; method_14712 pickPiece + p 1 random + p 0 holder + p 3 y + p 2 x + p 5 orientation + p 4 z + p 7 type + p 6 chainLength +c net/minecraft/class_3353$class_3355 net/minecraft/structure/MineshaftGenerator$MineshaftCrossing + f Z field_14419 twoFloors + f Lnet/minecraft/class_2350; field_14420 direction + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;IIII)V method_14716 generateCrossingPillar + p 3 x + p 2 boundingBox + p 5 z + p 4 minY + p 6 maxY + p 1 world + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;)Lnet/minecraft/class_3341; method_14717 getBoundingBox + p 5 orientation + p 3 y + p 4 z + p 1 random + p 2 x + p 0 holder + m (ILnet/minecraft/class_3341;Lnet/minecraft/class_2350;Lnet/minecraft/class_3098$class_3100;)V + p 2 boundingBox + p 1 chainLength + p 4 type + p 3 orientation +c net/minecraft/class_3353$class_3356 net/minecraft/structure/MineshaftGenerator$MineshaftPart + f Lnet/minecraft/class_3098$class_3100; field_14421 mineshaftType + m (Lnet/minecraft/class_3773;ILnet/minecraft/class_3098$class_3100;Lnet/minecraft/class_3341;)V + p 1 structurePieceType + p 3 type + p 2 chainLength + p 4 box + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;Lnet/minecraft/class_2680;III)V method_33880 tryPlaceFloor + p 5 y + p 6 z + p 3 state + p 4 x + p 1 world + p 2 box + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_3341;IIII)Z method_14719 isSolidCeiling + p 1 world + p 2 boundingBox + p 3 minX + p 4 maxX + p 5 y + p 6 z + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_3341;)Z method_33999 cannotGenerate + p 1 world + p 2 box +c net/minecraft/class_3353$class_3354 net/minecraft/structure/MineshaftGenerator$MineshaftCorridor + f I field_14413 length + f Z field_14416 hasRails + f Z field_14415 hasCobwebs + f Z field_14414 hasSpawner + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;IIIIILnet/minecraft/class_5819;)V method_14713 generateSupports + p 8 random + p 4 minY + p 5 z + p 6 maxY + p 7 maxX + p 1 world + p 2 boundingBox + p 3 minX + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;Lnet/minecraft/class_3098$class_3100;)V + p 5 type + p 4 orientation + p 3 boundingBox + p 2 random + p 1 chainLength + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;)Lnet/minecraft/class_3341; method_14714 getBoundingBox + p 5 orientation + p 2 x + p 1 random + p 4 z + p 3 y + p 0 holder + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;IIII)Z method_36422 hasSolidNeighborBlocks + p 6 count + p 5 z + p 2 box + p 1 world + p 4 y + p 3 x + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2680;IIILnet/minecraft/class_3341;)V method_33879 fillSupportBeam + p 5 z + p 6 box + p 1 world + p 2 state + p 3 x + p 4 y + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;III)V method_33776 fillSupportBeam + p 1 world + p 2 box + p 3 x + p 4 y + p 5 z + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338$class_2339;II)V method_33878 fillColumn + p 1 state + p 0 world + p 3 startY + p 2 pos + p 4 endY + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_33777 isUpsideSolidFullSquare + p 2 pos + p 3 state + p 1 world + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_33877 sideCoversSmallSquare + p 3 state + p 1 world + p 2 pos + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;Lnet/minecraft/class_5819;FIII)V method_14715 addCobwebsUnderground + p 5 x + p 4 threshold + p 3 random + p 2 box + p 7 z + p 6 y + p 1 world +c net/minecraft/class_3353$class_3357 net/minecraft/structure/MineshaftGenerator$MineshaftRoom + f Ljava/util/List; field_14422 entrances + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (ILnet/minecraft/class_5819;IILnet/minecraft/class_3098$class_3100;)V + p 3 x + p 4 z + p 5 type + p 1 chainLength + p 2 random +c net/minecraft/class_3353$class_3358 net/minecraft/structure/MineshaftGenerator$MineshaftStairs + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (ILnet/minecraft/class_3341;Lnet/minecraft/class_2350;Lnet/minecraft/class_3098$class_3100;)V + p 4 type + p 2 boundingBox + p 3 orientation + p 1 chainLength + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;)Lnet/minecraft/class_3341; method_14720 getBoundingBox + p 1 random + p 0 holder + p 5 orientation + p 4 z + p 3 y + p 2 x +c net/minecraft/class_2022 net/minecraft/predicate/entity/DamageSourcePredicate + f Lcom/mojang/serialization/Codec; field_45727 CODEC + f Ljava/util/Optional; comp_1741 directEntity + f Ljava/util/Optional; comp_1742 sourceEntity + f Ljava/util/Optional; comp_2793 isDirect + f Ljava/util/List; comp_1740 tags + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1282;)Z method_8847 test + p 2 damageSource + p 1 player + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 tagPredicates + p 2 directEntity + p 3 sourceEntity + p 4 isDirect + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53116 method_53116 + p 0 instance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_1282;)Z method_8845 test + p 3 damageSource + p 2 pos + p 1 world + m ()Ljava/util/Optional; comp_1741 directEntity + m ()Ljava/util/Optional; comp_1742 sourceEntity + m ()Ljava/util/List; comp_1740 tags + m ()Ljava/util/Optional; comp_2793 isDirect +c net/minecraft/class_2022$class_2023 net/minecraft/predicate/entity/DamageSourcePredicate$Builder + f Ljava/util/Optional; field_9545 sourceEntity + f Ljava/util/Optional; field_9544 directEntity + f Ljava/util/Optional; field_51883 isDirect + f Lcom/google/common/collect/ImmutableList$Builder; field_42273 tagPredicates + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_2022$class_2023; method_8854 directEntity + p 1 entity + m (Z)Lnet/minecraft/class_2022$class_2023; method_60488 isDirect + p 1 direct + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_2022$class_2023; method_35131 sourceEntity + p 1 entity + m (Lnet/minecraft/class_8129;)Lnet/minecraft/class_2022$class_2023; method_48785 tag + p 1 tagPredicate + m ()Lnet/minecraft/class_2022$class_2023; method_8855 create + m ()Lnet/minecraft/class_2022; method_8851 build +c net/minecraft/class_2019 net/minecraft/predicate/DamagePredicate + f Lnet/minecraft/class_2096$class_2099; comp_1735 dealt + f Lnet/minecraft/class_2096$class_2099; comp_1736 taken + f Lcom/mojang/serialization/Codec; field_47238 CODEC + f Ljava/util/Optional; comp_1738 blocked + f Ljava/util/Optional; comp_1737 sourceEntity + f Ljava/util/Optional; comp_1739 type + m ()Lnet/minecraft/class_2096$class_2099; comp_1735 dealt + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1282;FFZ)Z method_8838 test + p 4 taken + p 5 blocked + p 2 source + p 3 dealt + p 1 player + m (Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 dealt + p 2 taken + p 3 sourceEntity + p 4 blocked + p 5 type + m ()Lnet/minecraft/class_2096$class_2099; comp_1736 taken + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54973 method_54973 + p 0 instance + m ()Ljava/util/Optional; comp_1737 sourceEntity + m ()Ljava/util/Optional; comp_1738 blocked + m ()Ljava/util/Optional; comp_1739 type +c net/minecraft/class_2019$class_2020 net/minecraft/predicate/DamagePredicate$Builder + f Lnet/minecraft/class_2096$class_2099; field_9530 dealt + f Ljava/util/Optional; field_9526 blocked + f Ljava/util/Optional; field_9529 type + f Lnet/minecraft/class_2096$class_2099; field_9527 taken + f Ljava/util/Optional; field_9528 sourceEntity + m (Lnet/minecraft/class_2022$class_2023;)Lnet/minecraft/class_2019$class_2020; method_8842 type + p 1 builder + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2019$class_2020; method_8841 blocked + p 1 blocked + m (Lnet/minecraft/class_2022;)Lnet/minecraft/class_2019$class_2020; method_35116 type + p 1 type + m (Lnet/minecraft/class_2048;)Lnet/minecraft/class_2019$class_2020; method_35117 sourceEntity + p 1 sourceEntity + m (Lnet/minecraft/class_2096$class_2099;)Lnet/minecraft/class_2019$class_2020; method_35119 taken + p 1 taken + m ()Lnet/minecraft/class_2019$class_2020; method_8844 create + m ()Lnet/minecraft/class_2019; method_8843 build + m (Lnet/minecraft/class_2096$class_2099;)Lnet/minecraft/class_2019$class_2020; method_35118 dealt + p 1 dealt +c net/minecraft/class_8212 net/minecraft/network/packet/s2c/play/ChunkBiomeDataS2CPacket + f I field_43094 MAX_SIZE + f Lnet/minecraft/class_9139; field_47911 CODEC + f Ljava/util/List; comp_1313 chunkBiomeData + m (Ljava/util/List;)Lnet/minecraft/class_8212; method_49685 create + p 0 chunks + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_8212$class_8213;)V method_49686 method_49686 + p 1 data + p 0 bufx + m (Lnet/minecraft/class_2540;)V method_55864 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_49687 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Ljava/util/List; comp_1313 chunkBiomeData + m (Ljava/util/List;)V + p 1 chunkBiomeData +c net/minecraft/class_8212$class_8213 net/minecraft/network/packet/s2c/play/ChunkBiomeDataS2CPacket$Serialized + f Lnet/minecraft/class_1923; comp_1314 pos + f [B comp_1315 buffer + m (Lnet/minecraft/class_2818;)I method_49689 getTotalPacketSize + p 0 chunk + m ()Lnet/minecraft/class_2540; method_49688 toReadingBuf + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_2818;)V method_49691 write + p 0 buf + p 1 chunk + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Lio/netty/buffer/ByteBuf; method_49692 toWritingBuf + m (Lnet/minecraft/class_2818;)V + p 1 chunk + m (Lnet/minecraft/class_2540;)V method_49690 write + p 1 buf + m ()[B comp_1315 buffer + m ()Lnet/minecraft/class_1923; comp_1314 pos + m (Lnet/minecraft/class_1923;[B)V + p 1 pos + p 2 buffer +c net/minecraft/class_8218 net/minecraft/util/math/GivensPair + c A pair of {@code sin(θ)} and {@code cos(θ)} used in Givens quaternion. + f F comp_1318 cosHalf + f F comp_1317 sinHalf + m (Lorg/joml/Quaternionf;)Lorg/joml/Quaternionf; method_49732 setYRotation + m ()F method_49733 sinDouble + m (Lorg/joml/Matrix3f;)Lorg/joml/Matrix3f; method_49728 setRotationX + m (Lorg/joml/Quaternionf;)Lorg/joml/Quaternionf; method_49729 setXRotation + m (F)Lnet/minecraft/class_8218; method_49726 fromAngle + p 0 radians + m (Lorg/joml/Matrix3f;)Lorg/joml/Matrix3f; method_49731 setRotationY + m (Lorg/joml/Quaternionf;)Lorg/joml/Quaternionf; method_49735 setZRotation + m ()Lnet/minecraft/class_8218; method_49725 negateSin + m ()F method_49730 cosDouble + m (FF)Lnet/minecraft/class_8218; method_49727 normalize + p 0 a + p 1 b + m (Lorg/joml/Matrix3f;)Lorg/joml/Matrix3f; method_49734 setRotationZ + m ()F comp_1317 sinHalf + m ()F comp_1318 cosHalf + m (FF)V + p 1 sinHalf + p 2 cosHalf +c net/minecraft/class_8219 net/minecraft/client/gui/screen/option/CreditsAndAttributionScreen + f Lnet/minecraft/class_2561; field_43140 CREDITS_TEXT + f Lnet/minecraft/class_2561; field_43141 ATTRIBUTION_TEXT + f I field_43138 BUTTON_WIDTH + f I field_43137 SPACING + f Lnet/minecraft/class_2561; field_43139 TITLE + f Lnet/minecraft/class_437; field_43143 parent + f Lnet/minecraft/class_8132; field_43144 layout + f Lnet/minecraft/class_2561; field_43142 LICENSE_TEXT + m ()V method_49739 openCredits + m (Lnet/minecraft/class_437;)V + p 1 parent + m (Lnet/minecraft/class_4185;)V method_49738 method_49738 + p 1 button + m (Lnet/minecraft/class_4185;)V method_49737 method_49737 + p 1 button +c net/minecraft/class_8216 net/minecraft/util/Urls + f Ljava/net/URI; field_43121 BUY_JAVA + f Ljava/net/URI; field_43132 REALMS_TERMS + f Ljava/net/URI; field_43133 REALMS_CONTENT_CREATOR + f Ljava/net/URI; field_43122 JAVA_ACCOUNT_SETTINGS + f Ljava/net/URI; field_43123 SNAPSHOT_FEEDBACK + f Ljava/net/URI; field_43124 JAVA_FEEDBACK + f Ljava/net/URI; field_44949 MINECRAFT_SYMLINKS + f Ljava/net/URI; field_43125 SNAPSHOT_BUGS + f Ljava/net/URI; field_43126 JAVA_ACCESSIBILITY + f Ljava/net/URI; field_43127 ABOUT_JAVA_REPORTING + f Ljava/net/URI; field_43117 GDPR + f Ljava/net/URI; field_43128 JAVA_MODERATION + f Ljava/net/URI; field_43129 JAVA_BLOCKING + f Ljava/net/URI; field_43118 EULA + f Ljava/net/URI; field_43119 JAVA_ATTRIBUTION + f Ljava/net/URI; field_55621 INTENTIONAL_GAME_DESIGN_ISSUE + f Ljava/net/URI; field_46769 MINECRAFT_SUPPORT + f Ljava/lang/String; field_55620 INTENTIONAL_GAME_DESIGN_ISSUE_ID + f Ljava/lang/String; field_54967 EXTEND_JAVA_REALMS + f Ljava/net/URI; field_43130 JAVA_REALMS_TRIAL + f Ljava/net/URI; field_43131 BUY_JAVA_REALMS + f Ljava/net/URI; field_43120 JAVA_LICENSES + f Ljava/net/URI; field_45074 PRIVACY_STATEMENT + m (Ljava/lang/String;Ljava/util/UUID;)Ljava/lang/String; method_49719 getExtendJavaRealmsUrl + p 0 subscriptionId + p 1 uuid + m (Ljava/lang/String;Ljava/util/UUID;Z)Ljava/lang/String; method_49720 getExtendJavaRealmsUrl + p 0 subscriptionId + p 1 uuid + p 2 trial +c net/minecraft/class_8215 net/minecraft/client/texture/DynamicTexture + m (Lnet/minecraft/class_2960;Ljava/nio/file/Path;)V method_49712 save + p 1 id + p 2 path +c net/minecraft/class_12373 net/minecraft/unused/packageinfo/PackageInfo12373 +c net/minecraft/class_12372 net/minecraft/unused/packageinfo/PackageInfo12372 +c net/minecraft/class_12371 net/minecraft/unused/packageinfo/PackageInfo12371 +c net/minecraft/class_12370 net/minecraft/unused/packageinfo/PackageInfo12370 +c net/minecraft/class_12377 net/minecraft/unused/packageinfo/PackageInfo12377 +c net/minecraft/class_12376 net/minecraft/unused/packageinfo/PackageInfo12376 +c net/minecraft/class_12375 net/minecraft/unused/packageinfo/PackageInfo12375 +c net/minecraft/class_12374 net/minecraft/unused/packageinfo/PackageInfo12374 +c net/minecraft/class_12379 net/minecraft/unused/packageinfo/PackageInfo12379 +c net/minecraft/class_12378 net/minecraft/unused/packageinfo/PackageInfo12378 +c net/minecraft/class_8223 net/minecraft/datafixer/fix/RemoveFeatureTogglesFix + f Ljava/util/Set; field_43177 featureToggleIds + f Ljava/lang/String; field_43176 name + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_49769 method_49769 + p 3 stream + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Z method_49770 method_49770 + p 3 enabledFeature + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_49766 method_49766 + p 1 levelTyped + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_49768 method_49768 + p 3 enabledFeatures + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/Set;)V + p 3 featureToggleIds + p 1 outputSchema + p 2 name + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_49767 removeFeatureToggles + p 1 dynamic +c net/minecraft/class_8224 net/minecraft/datafixer/schema/Schema3438 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_8221 net/minecraft/datafixer/fix/UpdateSignTextFormatFix + f Ljava/lang/String; field_45086 DEFAULT_COLOR + f Ljava/lang/String; field_45085 FILTERED_CORRECT + m (Ljava/util/List;Ljava/util/Optional;J)Lcom/mojang/serialization/Dynamic; method_52471 method_52471 + p 1 message + p 2 index + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Optional;)Lcom/mojang/serialization/Dynamic; method_52470 method_52470 + p 1 text + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52474 emptySignData + p 0 signData + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/util/stream/Stream; method_52469 streamKeys + p 0 signData + p 1 prefix + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;)V + p 3 blockEntityId + p 2 name + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52473 updateBack + p 0 signData + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52472 updateFront + p 0 signData +c net/minecraft/class_8222 net/minecraft/datafixer/fix/EntityBrushableBlockFieldsRenameFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_49763 renameFields + p 1 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_8220 net/minecraft/datafixer/fix/RenameBlockEntityFix + f Ljava/lang/String; field_43174 name + f Ljava/util/function/UnaryOperator; field_43175 renamer + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_49757 method_49757 + p 1 pair + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_49758 method_49758 + p 1 ops + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/UnaryOperator;)V + p 1 outputSchema + p 2 name + p 3 renamer + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/UnaryOperator;)Lcom/mojang/datafixers/DataFix; method_49756 create + p 2 renamer + p 1 name + p 0 outputSchema +c net/minecraft/class_12361 net/minecraft/entity/ai/brain/task/SpearFleeTask + f D field_64636 speed + f I field_64635 RUN_TIME + m (D)V + p 1 speedFactor + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;)Z method_76714 shouldRun + m (Lnet/minecraft/class_1314;FLnet/minecraft/class_243;)V method_76717 method_76717 + p 3 pos + m (Lnet/minecraft/class_1314;)Z method_76719 shouldAttack + p 1 entity + m (Lnet/minecraft/class_1314;)Lnet/minecraft/class_1309; method_76716 getAttackTarget + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_76720 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_76721 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_76718 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_76715 run +c net/minecraft/class_12366 net/minecraft/unused/packageinfo/PackageInfo12366 +c net/minecraft/class_12365 net/minecraft/unused/packageinfo/PackageInfo12365 +c net/minecraft/class_12364 net/minecraft/unused/packageinfo/PackageInfo12364 +c net/minecraft/class_12363 net/minecraft/unused/packageinfo/PackageInfo12363 +c net/minecraft/class_12369 net/minecraft/unused/packageinfo/PackageInfo12369 +c net/minecraft/class_12368 net/minecraft/unused/packageinfo/PackageInfo12368 +c net/minecraft/class_12367 net/minecraft/unused/packageinfo/PackageInfo12367 +c com/mojang/blaze3d/platform/TextureUtil com/mojang/blaze3d/platform/TextureUtil + m (II)I x x + p 0 packed + p 1 width + m (Ljava/io/InputStream;)Ljava/nio/ByteBuffer; readResource readResource + p 0 inputStream + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; getDebugTexturePath getDebugTexturePath + p 0 path + m (III)I pack pack + p 1 y + p 2 width + p 0 x + m (Lnet/minecraft/class_1011;)V solidify solidify + p 0 image + m (II)I y y + p 0 packed + p 1 width + m (Lnet/minecraft/class_1011;)V fillEmptyAreasWithDarkColor fillEmptyAreasWithDarkColor + p 0 image + m (Ljava/nio/channels/ReadableByteChannel;I)Ljava/nio/ByteBuffer; readResource readResource + p 0 channel + p 1 bufSize + m (Ljava/nio/file/Path;Ljava/lang/String;Lcom/mojang/blaze3d/textures/GpuTexture;ILjava/util/function/IntUnaryOperator;)V writeAsPNG writeAsPNG + p 4 colorFunction + p 3 scales + p 2 texture + p 1 prefix + p 0 directory +c com/mojang/blaze3d/opengl/GlConst com/mojang/blaze3d/opengl/GlConst + m (Lcom/mojang/blaze3d/textures/TextureFormat;)I toGlExternalId toGlExternalId + p 0 format + m (Lcom/mojang/blaze3d/textures/TextureFormat;)I toGlType toGlType + p 0 format + m (Lnet/minecraft/class_1011$class_1012;)I toGl toGl + p 0 format + m (Lcom/mojang/blaze3d/textures/TextureFormat;)I toGlInternalId toGlInternalId + p 0 format + m (Lcom/mojang/blaze3d/platform/SourceFactor;)I toGl toGl + p 0 factor + m (Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596;)I toGl toGl + p 0 drawMode + m (Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595;)I toGl toGl + p 0 type + m (Lcom/mojang/blaze3d/textures/AddressMode;)I toGl toGl + p 0 addressMode + m (Lcom/mojang/blaze3d/shaders/ShaderType;)I toGl toGl + p 0 type + m (Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type;)I toGl toGl + p 0 type + m (Lcom/mojang/blaze3d/platform/DestFactor;)I toGl toGl + p 0 factor + m (Lcom/mojang/blaze3d/platform/DepthTestFunction;)I toGl toGl + p 0 function + m (I)I bufferUsageToGlEnum bufferUsageToGlEnum + p 0 usage + m (I)I bufferUsageToGlFlag bufferUsageToGlFlag + p 0 usage + m (Lcom/mojang/blaze3d/platform/PolygonMode;)I toGl toGl + p 0 polygonMode +c net/minecraft/class_12391 net/minecraft/unused/packageinfo/PackageInfo12391 +c net/minecraft/class_12390 net/minecraft/unused/packageinfo/PackageInfo12390 +c net/minecraft/class_12395 net/minecraft/unused/packageinfo/PackageInfo12395 +c net/minecraft/class_12394 net/minecraft/unused/packageinfo/PackageInfo12394 +c net/minecraft/class_12393 net/minecraft/client/option/TextureFilteringMode + f Lcom/mojang/serialization/Codec; field_64666 CODEC + f Ljava/util/function/IntFunction; field_64667 BY_ID + f I field_64668 id + f Lnet/minecraft/class_2561; field_64669 text + f Lnet/minecraft/class_12393; field_64663 NONE + f Lnet/minecraft/class_12393; field_64665 ANISOTROPIC + f Lnet/minecraft/class_12393; field_64664 RGSS + m (Lnet/minecraft/class_12393;)Ljava/lang/Integer; method_76752 method_76752 + p 0 mode + m (Lnet/minecraft/class_12393;)I method_76754 method_76754 + p 0 mode + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 translationKey + m ()Lnet/minecraft/class_2561; method_76751 getText +c net/minecraft/class_12392 net/minecraft/component/type/AttackRangeComponent + f Lnet/minecraft/class_9139; field_64655 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_64654 CODEC + f F comp_5265 minCreativeRange + f F comp_5263 mobFactor + f F comp_5262 hitboxMargin + f F comp_5266 maxCreativeRange + f F comp_5261 maxRange + f F comp_5260 minRange + m (Lnet/minecraft/class_1309;Ljava/util/function/ToDoubleFunction;D)Z method_76737 isWithinRange + p 3 extraHitboxMargin + p 1 entity + p 2 squaredDistanceFunction + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_238;D)Z method_76735 isWithinRange + p 1 entity + p 2 box + p 3 extraHitboxMargin + m (Lnet/minecraft/class_1297;)F method_76739 getEffectiveMaxRange + p 1 entity + m (Lnet/minecraft/class_1297;FLjava/util/function/Predicate;)Lnet/minecraft/class_239; method_76733 getHitResult + p 1 entity + p 3 hitPredicate + p 2 tickProgress + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_12392; method_76734 defaultForEntity + p 0 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76738 method_76738 + p 0 instance + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_243;)Z method_76736 isWithinRange + p 2 pos + p 1 entity + m (Lnet/minecraft/class_1297;)F method_76732 getEffectiveMinRange + p 1 entity + m ()F comp_5260 minRange + m ()F comp_5263 mobFactor + m ()F comp_5262 hitboxMargin + m ()F comp_5261 maxRange + m ()F comp_5266 maxCreativeRange + m ()F comp_5265 minCreativeRange + m (FFFFFF)V + p 1 minRange + p 2 maxRange + p 3 minCreativeRange + p 4 maxCreativeRange + p 5 hitboxMargin + p 6 mobFactor +c net/minecraft/class_12399 net/minecraft/unused/packageinfo/PackageInfo12399 +c net/minecraft/class_12398 net/minecraft/unused/packageinfo/PackageInfo12398 +c net/minecraft/class_12397 net/minecraft/unused/packageinfo/PackageInfo12397 +c net/minecraft/class_12396 net/minecraft/unused/packageinfo/PackageInfo12396 +c net/minecraft/class_8209 net/minecraft/client/gui/widget/TabButtonWidget + f Lnet/minecraft/class_8088; field_43068 tabManager + f Lnet/minecraft/class_8087; field_43069 tab + f Lnet/minecraft/class_8666; field_45391 TAB_BUTTON_TEXTURES + m (Lnet/minecraft/class_12225;)V method_49608 drawMessage + p 1 textConsumer + m (Lnet/minecraft/class_332;Lnet/minecraft/class_327;I)V method_49610 drawCurrentTabLine + p 2 textRenderer + p 1 context + p 3 color + m ()Lnet/minecraft/class_8087; method_49609 getTab + m ()Z method_49611 isCurrentTab + m (Lnet/minecraft/class_332;IIII)V method_58230 renderBackgroundTexture + p 2 left + p 3 top + p 4 right + p 5 bottom + p 1 context + m (Lnet/minecraft/class_8088;Lnet/minecraft/class_8087;II)V + p 3 width + p 4 height + p 1 tabManager + p 2 tab +c net/minecraft/class_8208 net/minecraft/client/gui/widget/IconWidget + m (Lnet/minecraft/class_2960;)V method_71281 setTexture + p 1 texture + m (IILnet/minecraft/class_2960;)Lnet/minecraft/class_8208; method_52720 create + p 0 width + p 1 height + p 2 texture + m (IIII)V + p 3 width + p 4 height + p 1 x + p 2 y + m (IILnet/minecraft/class_2960;II)Lnet/minecraft/class_8208; method_52721 create + p 4 textureHeight + p 3 textureWidth + p 2 texture + p 1 height + p 0 width +c net/minecraft/class_8208$class_8659 net/minecraft/client/gui/widget/IconWidget$Simple + f Lnet/minecraft/class_2960; field_45357 texture + m (IIIILnet/minecraft/class_2960;)V + p 5 texture + p 4 height + p 3 width + p 2 y + p 1 x +c net/minecraft/class_8208$class_8660 net/minecraft/client/gui/widget/IconWidget$Texture + f Lnet/minecraft/class_2960; field_45358 texture + f I field_45359 textureWidth + f I field_45360 textureHeight + m (IIIILnet/minecraft/class_2960;II)V + p 4 height + p 3 width + p 6 textureWidth + p 5 texture + p 2 y + p 1 x + p 7 textureHeight +c net/minecraft/class_12380 net/minecraft/unused/packageinfo/PackageInfo12380 +c com/mojang/blaze3d/systems/CommandEncoder com/mojang/blaze3d/systems/CommandEncoder + m (Lcom/mojang/blaze3d/textures/GpuTexture;D)V clearDepthTexture clearDepthTexture + p 2 depth + p 1 texture + m (Lcom/mojang/blaze3d/textures/GpuTexture;Lcom/mojang/blaze3d/buffers/GpuBuffer;JLjava/lang/Runnable;I)V copyTextureToBuffer copyTextureToBuffer + p 5 dataUploadedCallback + p 6 mipLevel + p 1 source + p 2 target + p 3 offset + m (Lcom/mojang/blaze3d/textures/GpuTexture;ILcom/mojang/blaze3d/textures/GpuTexture;D)V clearColorAndDepthTextures clearColorAndDepthTextures + p 4 depth + p 3 depthAttachment + p 2 color + p 1 colorAttachment + m (Lcom/mojang/blaze3d/textures/GpuTexture;Lcom/mojang/blaze3d/buffers/GpuBuffer;JLjava/lang/Runnable;IIIII)V copyTextureToBuffer copyTextureToBuffer + p 3 offset + p 2 target + p 1 source + p 8 intoY + p 7 intoX + p 6 mipLevel + p 5 dataUploadedCallback + p 10 height + p 9 width + m (Ljava/util/function/Supplier;Lcom/mojang/blaze3d/textures/GpuTextureView;Ljava/util/OptionalInt;Lcom/mojang/blaze3d/textures/GpuTextureView;Ljava/util/OptionalDouble;)Lcom/mojang/blaze3d/systems/RenderPass; createRenderPass createRenderPass + p 4 depthAttachment + p 5 clearDepth + p 2 colorAttachment + p 3 clearColor + p 1 labelGetter + m (Lcom/mojang/blaze3d/buffers/GpuBufferSlice;ZZ)Lcom/mojang/blaze3d/buffers/GpuBuffer$MappedView; mapBuffer mapBuffer + p 2 read + p 1 slice + p 3 write + m (Lcom/mojang/blaze3d/textures/GpuTexture;Ljava/nio/ByteBuffer;Lnet/minecraft/class_1011$class_1012;IIIIII)V writeToTexture writeToTexture + p 9 height + p 2 buf + p 1 target + p 4 mipLevel + p 3 format + p 6 offsetX + p 5 depth + p 8 width + p 7 offsetY + m (Lcom/mojang/blaze3d/buffers/GpuBufferSlice;Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V copyToBuffer copyToBuffer + p 2 to + p 1 from + m (Lcom/mojang/blaze3d/textures/GpuTextureView;)V presentTexture presentTexture + p 1 texture + m (Lcom/mojang/blaze3d/buffers/GpuBufferSlice;Ljava/nio/ByteBuffer;)V writeToBuffer writeToBuffer + p 2 source + p 1 slice + m (Lcom/mojang/blaze3d/textures/GpuTexture;Lnet/minecraft/class_1011;)V writeToTexture writeToTexture + p 2 source + p 1 target + m (Lcom/mojang/blaze3d/buffers/GpuBuffer;ZZ)Lcom/mojang/blaze3d/buffers/GpuBuffer$MappedView; mapBuffer mapBuffer + p 3 write + p 2 read + p 1 buffer + m (Lcom/mojang/blaze3d/textures/GpuTexture;Lcom/mojang/blaze3d/textures/GpuTexture;IIIIIII)V copyTextureToTexture copyTextureToTexture + p 1 source + p 6 sourceX + p 7 sourceY + p 8 width + p 9 height + p 2 target + p 3 mipLevel + p 4 intoX + p 5 intoY + m (Ljava/util/function/Supplier;Lcom/mojang/blaze3d/textures/GpuTextureView;Ljava/util/OptionalInt;)Lcom/mojang/blaze3d/systems/RenderPass; createRenderPass createRenderPass + p 1 labelGetter + p 2 colorAttachment + p 3 clearColor + m (Lcom/mojang/blaze3d/textures/GpuTexture;ILcom/mojang/blaze3d/textures/GpuTexture;DIIII)V clearColorAndDepthTextures clearColorAndDepthTextures + p 1 colorAttachment + p 2 color + p 3 depthAttachment + p 4 depth + p 6 scissorX + p 7 scissorY + p 8 scissorWidth + p 9 scissorHeight + m (Lcom/mojang/blaze3d/textures/GpuTexture;Lnet/minecraft/class_1011;IIIIIIII)V writeToTexture writeToTexture + p 10 skipRows + p 9 skipPixels + p 6 offsetY + p 5 offsetX + p 8 height + p 7 width + p 2 source + p 1 target + p 4 depth + p 3 mipLevel + m (Lcom/mojang/blaze3d/textures/GpuTexture;I)V clearColorTexture clearColorTexture + p 1 texture + p 2 color +c net/minecraft/class_8206 net/minecraft/client/realms/dto/RealmsText + f Ljava/lang/String; field_43033 translationKey + f Ljava/lang/String; field_43032 ARGS_KEY + f Ljava/lang/String; field_43031 TRANSLATION_KEY_KEY + f [Ljava/lang/String; field_43034 args + m (Ljava/lang/String;[Ljava/lang/String;)V + p 1 translationKey + p 2 args + m ()Lnet/minecraft/class_2561; method_54114 toText + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_8206; method_49582 fromJson + p 0 json + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_49583 toText + p 1 fallback +c net/minecraft/class_8204 net/minecraft/client/realms/dto/RealmsNotification + f Ljava/lang/String; field_43019 TYPE_KEY + f Ljava/lang/String; field_43018 SEEN_KEY + f Ljava/util/UUID; field_43021 uuid + f Lnet/minecraft/class_2561; field_46539 OPEN_LINK_TEXT + f Lorg/slf4j/Logger; field_43015 LOGGER + f Ljava/lang/String; field_43020 VISIT_URL_TYPE + f Z field_43023 seen + f Z field_43022 dismissable + f Ljava/lang/String; field_46538 INFO_POPUP_TYPE + f Ljava/lang/String; field_43024 type + f Ljava/lang/String; field_43017 DISMISSABLE_KEY + f Ljava/lang/String; field_43016 NOTIFICATION_UUID_KEY + m ()Ljava/util/UUID; method_49578 getUuid + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_8204; method_49575 fromJson + p 0 json + m (Ljava/util/UUID;ZZLjava/lang/String;)V + p 3 seen + p 4 type + p 1 uuid + p 2 dismissable + m (Ljava/lang/String;)Ljava/util/List; method_49576 parse + p 0 json + m ()Z method_49577 isDismissable + m ()Z method_49574 isSeen +c net/minecraft/class_8204$class_8205 net/minecraft/client/realms/dto/RealmsNotification$VisitUrl + f Ljava/lang/String; field_43026 BUTTON_TEXT_KEY + f Ljava/lang/String; field_43025 URL_KEY + f Ljava/lang/String; field_43028 url + f Lnet/minecraft/class_8206; field_43030 message + f Ljava/lang/String; field_43027 MESSAGE_KEY + f Lnet/minecraft/class_8206; field_43029 buttonText + m (Lnet/minecraft/class_437;)Lnet/minecraft/class_4185; method_49580 createButton + p 1 currentScreen + m ()Lnet/minecraft/class_2561; method_49581 getDefaultMessage + m (Lnet/minecraft/class_8204;Lcom/google/gson/JsonObject;)Lnet/minecraft/class_8204$class_8205; method_49579 fromJson + p 1 json + p 0 parent + m (Lnet/minecraft/class_8204;Ljava/lang/String;Lnet/minecraft/class_8206;Lnet/minecraft/class_8206;)V + p 2 url + p 1 parent + p 4 message + p 3 buttonText +c net/minecraft/class_8204$class_8815 net/minecraft/client/realms/dto/RealmsNotification$UrlButton + f Ljava/lang/String; field_46549 URL_TEXT_KEY + f Ljava/lang/String; field_46548 URL_KEY + f Ljava/lang/String; comp_1974 url + f Lnet/minecraft/class_8206; comp_1975 urlText + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_8204$class_8815; method_54113 fromJson + p 0 json + m ()Lnet/minecraft/class_8206; comp_1975 urlText + m ()Ljava/lang/String; comp_1974 url + m (Ljava/lang/String;Lnet/minecraft/class_8206;)V + p 1 url + p 2 urlText +c net/minecraft/class_8204$class_8814 net/minecraft/client/realms/dto/RealmsNotification$InfoPopup + f Ljava/lang/String; field_46540 TITLE_KEY + f Ljava/lang/String; field_46543 URL_BUTTON_KEY + f Ljava/lang/String; field_46542 IMAGE_KEY + f Lnet/minecraft/class_2960; field_46546 image + f Ljava/lang/String; field_46541 MESSAGE_KEY + f Lnet/minecraft/class_8206; field_46544 title + f Lnet/minecraft/class_8206; field_46545 message + f Lnet/minecraft/class_8204$class_8815; field_46547 urlButton + m (Lnet/minecraft/class_437;Ljava/util/function/Consumer;)Lnet/minecraft/class_8816; method_54109 createScreen + p 2 dismissCallback + p 1 backgroundScreen + m (Ljava/util/function/Consumer;Lnet/minecraft/class_8816;)V method_54112 method_54112 + p 2 screen + m (Lnet/minecraft/class_8204;Lcom/google/gson/JsonObject;)Lnet/minecraft/class_8204$class_8814; method_54107 fromJson + p 1 json + p 0 parent + m (Lnet/minecraft/class_8204;Lnet/minecraft/class_8206;Lnet/minecraft/class_8206;Lnet/minecraft/class_2960;Lnet/minecraft/class_8204$class_8815;)V + p 1 parent + p 2 title + p 3 message + p 4 image + p 5 urlButton + m (Lnet/minecraft/class_310;Lnet/minecraft/class_437;Lnet/minecraft/class_8816;Z)V method_54108 method_54108 + p 4 confirmed + m (Lnet/minecraft/class_437;Ljava/util/function/Consumer;Lnet/minecraft/class_8816;)V method_54110 method_54110 + p 3 screen +c net/minecraft/class_12384 net/minecraft/unused/packageinfo/PackageInfo12384 +c net/minecraft/class_12383 net/minecraft/unused/packageinfo/PackageInfo12383 +c net/minecraft/class_12382 net/minecraft/unused/packageinfo/PackageInfo12382 +c net/minecraft/class_12381 net/minecraft/unused/packageinfo/PackageInfo12381 +c net/minecraft/class_12388 net/minecraft/unused/packageinfo/PackageInfo12388 +c net/minecraft/class_12387 net/minecraft/unused/packageinfo/PackageInfo12387 +c net/minecraft/class_12386 net/minecraft/unused/packageinfo/PackageInfo12386 +c net/minecraft/class_12385 net/minecraft/unused/packageinfo/PackageInfo12385 +c net/minecraft/class_12389 net/minecraft/unused/packageinfo/PackageInfo12389 +c net/minecraft/class_687 net/minecraft/client/particle/FlameParticle +c net/minecraft/class_687$class_5613 net/minecraft/client/particle/FlameParticle$SmallFactory + f Lnet/minecraft/class_4002; field_27736 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_32131 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_687$class_688 net/minecraft/client/particle/FlameParticle$Factory + f Lnet/minecraft/class_4002; field_17812 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3036 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_689 net/minecraft/client/particle/ExplosionEmitterParticle +c net/minecraft/class_689$class_690 net/minecraft/client/particle/ExplosionEmitterParticle$Factory + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3037 createParticle +c net/minecraft/class_684 net/minecraft/client/particle/EmotionParticle +c net/minecraft/class_684$class_685 net/minecraft/client/particle/EmotionParticle$AngryVillagerFactory + f Lnet/minecraft/class_4002; field_17813 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3034 createParticle +c net/minecraft/class_684$class_686 net/minecraft/client/particle/EmotionParticle$HeartFactory + f Lnet/minecraft/class_4002; field_17814 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3035 createParticle +c net/minecraft/class_682 net/minecraft/client/particle/BlockFallingDustParticle + f Lnet/minecraft/class_4002; field_17808 spriteProvider + f F field_3809 rotationSpeed + m (Lnet/minecraft/class_638;DDDFFFLnet/minecraft/class_4002;)V + p 10 blue + p 11 spriteProvider + p 1 world + p 2 x + p 4 y + p 6 z + p 8 red + p 9 green +c net/minecraft/class_682$class_683 net/minecraft/client/particle/BlockFallingDustParticle$Factory + f Lnet/minecraft/class_4002; field_17809 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2388;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3033 createParticle +c net/minecraft/class_12332 net/minecraft/unused/packageinfo/PackageInfo12332 +c net/minecraft/class_12331 net/minecraft/world/attribute/timeline/Timelines + f I field_64414 NIGHT_FOG_COLOR + f I field_64411 NIGHT_SKY_LIGHT_COLOR + f I field_64415 NIGHT_CLOUD_COLOR + f Lnet/minecraft/class_5321; field_64408 EARLY_GAME + f Lnet/minecraft/class_5321; field_64407 VILLAGER_SCHEDULE + f Lnet/minecraft/class_5321; field_64406 MOON + f Lnet/minecraft/class_5321; field_64405 DAY + m (Lnet/minecraft/class_12301;Lnet/minecraft/class_12306$class_12307;)V method_76498 method_76498 + p 1 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76511 method_76511 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76513 method_76513 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76501 method_76501 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76515 method_76515 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76503 method_76503 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76517 method_76517 + p 0 track + m (Lnet/minecraft/class_12301;Lnet/minecraft/class_12306$class_12307;)V method_76494 method_76494 + p 1 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76505 method_76505 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76507 method_76507 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76509 method_76509 + p 0 track + m (Lnet/minecraft/class_7891;)V method_76497 bootstrap + p 0 registry + m (Lnet/minecraft/class_12306$class_12307;)V method_76495 method_76495 + p 0 track + m (Lnet/minecraft/class_12301;Lnet/minecraft/class_12306$class_12307;)V method_76500 method_76500 + p 1 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76499 method_76499 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76510 method_76510 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76502 method_76502 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76512 method_76512 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76504 method_76504 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76514 method_76514 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76506 method_76506 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76516 method_76516 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76508 method_76508 + p 0 track + m (Lnet/minecraft/class_12306$class_12307;)V method_76518 method_76518 + p 0 track + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_76496 key + p 0 path +c net/minecraft/class_12336 net/minecraft/client/render/entity/ZombieNautilusEntityRenderer + f Ljava/util/Map; field_64457 models + m (Lnet/minecraft/class_12158;)Lnet/minecraft/class_1799; method_76555 method_76555 + p 0 state + m (Lnet/minecraft/class_12158;)Lnet/minecraft/class_1799; method_76554 method_76554 + p 0 state + m (Lnet/minecraft/class_12158;)Lnet/minecraft/class_2960; method_76551 getTexture + m (Lnet/minecraft/class_12119;Lnet/minecraft/class_12158;F)V method_76549 updateRenderState + m (Lnet/minecraft/class_5617$class_5618;)Ljava/util/Map; method_76550 createModels + p 0 context + m (Lnet/minecraft/class_12158;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_76552 render + m ()Lnet/minecraft/class_12158; method_76553 createRenderState +c net/minecraft/class_12335 net/minecraft/client/render/CameraOverride + f Lorg/joml/Vector3fc; comp_5225 forwardVector + m ()Lorg/joml/Vector3fc; comp_5225 forwardVector + m (Lorg/joml/Vector3fc;)V + p 1 forwardVector +c net/minecraft/class_12334 net/minecraft/client/render/entity/model/ZombieNautilusCoralEntityModel + f Lnet/minecraft/class_630; field_64431 corals + m ()Lnet/minecraft/class_5607; method_76539 getTexturedModelData + m (Lnet/minecraft/class_12158;)V method_75385 setAngles +c net/minecraft/class_12339 net/minecraft/data/tag/vanilla/VanillaTimelineTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registriesFuture +c net/minecraft/class_698 net/minecraft/client/particle/NoteParticle + m (Lnet/minecraft/class_638;DDDDLnet/minecraft/class_1058;)V + p 2 x + p 1 world + p 4 y + p 6 z + p 8 velocityX + p 10 sprite +c net/minecraft/class_698$class_699 net/minecraft/client/particle/NoteParticle$Factory + f Lnet/minecraft/class_4002; field_17819 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3041 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_696 net/minecraft/client/particle/LargeFireSmokeParticle + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_4002;)V + p 4 y + p 6 z + p 8 velocityX + p 10 velocityY + p 12 velocityZ + p 14 spriteProvider + p 2 x + p 1 world +c net/minecraft/class_696$class_697 net/minecraft/client/particle/LargeFireSmokeParticle$Factory + f Lnet/minecraft/class_4002; field_17817 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3040 createParticle +c net/minecraft/class_691 net/minecraft/client/particle/ExplosionLargeParticle + f Lnet/minecraft/class_4002; field_17815 spriteProvider + m (Lnet/minecraft/class_638;DDDDLnet/minecraft/class_4002;)V + p 10 spriteProvider + p 8 velocityX + p 6 z + p 4 y + p 2 x + p 1 world +c net/minecraft/class_691$class_692 net/minecraft/client/particle/ExplosionLargeParticle$Factory + f Lnet/minecraft/class_4002; field_17816 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3038 createParticle +c net/minecraft/class_694 net/minecraft/client/particle/LavaEmberParticle +c net/minecraft/class_694$class_695 net/minecraft/client/particle/LavaEmberParticle$Factory + f Lnet/minecraft/class_4002; field_17818 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3039 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_693 net/minecraft/client/particle/ItemPickupParticle + f Lnet/minecraft/class_1297; field_3821 interactingEntity + f I field_32656 TIME_TO_LIVE + f I field_3826 ticksExisted + f D field_47685 targetY + f D field_47686 targetZ + f D field_47684 targetX + f D field_47689 lastTargetZ + f D field_47687 lastTargetX + f D field_47688 lastTargetY + f Lnet/minecraft/class_10017; field_62616 renderState + m ()V method_55618 updateLastTargetPos + m ()V method_55617 updateTargetPos + m (Lnet/minecraft/class_638;Lnet/minecraft/class_10017;Lnet/minecraft/class_1297;Lnet/minecraft/class_243;)V + p 1 world + p 2 renderState + p 3 entity + p 4 velocity +c net/minecraft/class_12322 net/minecraft/advancement/criterion/SpearMobsCriterion + m (ILnet/minecraft/class_12322$class_12323;)Z method_76460 method_76460 + p 1 conditions + m (Lnet/minecraft/class_3222;I)V method_76461 trigger + p 2 count + p 1 player +c net/minecraft/class_12322$class_12323 net/minecraft/advancement/criterion/SpearMobsCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_5218 count + f Lcom/mojang/serialization/Codec; field_64376 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76463 method_76463 + p 0 instance + m (I)Z method_76464 test + p 1 count + m ()Ljava/util/Optional; comp_5218 count + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 count +c net/minecraft/class_12321 net/minecraft/entity/mob/ZombieNautilusVariants + f Lnet/minecraft/class_5321; field_64372 DEFAULT + f Lnet/minecraft/class_5321; field_64370 TEMPERATE + f Lnet/minecraft/class_5321; field_64371 WARM + m (Lnet/minecraft/class_7891;)V method_76449 bootstrap + p 0 registry + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_12319$class_12320;Ljava/lang/String;Lnet/minecraft/class_10702;)V method_76451 register + p 4 spawnConditions + p 2 model + p 3 textureName + p 0 registry + p 1 key + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_76448 of + p 0 id + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_12319$class_12320;Ljava/lang/String;Lnet/minecraft/class_6862;)V method_76450 register + p 1 key + p 2 model + p 0 registry + p 3 textureName + p 4 biomes +c net/minecraft/class_12324 net/minecraft/unused/packageinfo/PackageInfo12324 +c net/minecraft/class_12329 net/minecraft/world/attribute/timeline/Timeline + f Ljava/util/Map; field_64402 tracks + f Lcom/mojang/serialization/Codec; field_64400 TRACKS_BY_ATTRIBUTE_CODEC + f Lcom/mojang/serialization/Codec; field_64399 NETWORK_CODEC + f Lcom/mojang/serialization/Codec; field_64398 CODEC + f Lcom/mojang/serialization/Codec; field_64397 REGISTRY_CODEC + f Ljava/util/Optional; field_64401 periodTicks + m (Lnet/minecraft/class_1937;)J method_76481 getEffectiveTimeOfDay + p 1 world + m (Ljava/util/Optional;Ljava/util/Map;)V + p 2 entries + p 1 periodTicks + m (Lnet/minecraft/class_12197;Ljava/util/function/LongSupplier;)Lnet/minecraft/class_12328; method_76479 getModification + p 1 attribute + p 2 timeSupplier + m ()Lnet/minecraft/class_12329$class_12330; method_76478 builder + m (Lnet/minecraft/class_12329;)Ljava/util/Map; method_76488 method_76488 + p 0 timeline + m (Lnet/minecraft/class_12329;)Lnet/minecraft/class_12329; method_76482 retainSyncedAttributes + p 0 timeline + m ()Ljava/util/Set; method_76487 getAttributes + m ()Ljava/util/Optional; method_76484 getPeriod + m (Lnet/minecraft/class_12329;)Ljava/util/Optional; method_76489 method_76489 + p 0 timeline + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76480 method_76480 + p 0 instance + m (Lnet/minecraft/class_12329;)Lcom/mojang/serialization/DataResult; method_76486 validate + p 0 timeline + m (Lnet/minecraft/class_1937;)J method_76485 getRawTimeOfDay + p 1 world +c net/minecraft/class_12329$class_12330 net/minecraft/world/attribute/timeline/Timeline$Builder + f Lcom/google/common/collect/ImmutableMap$Builder; field_64404 entries + f Ljava/util/Optional; field_64403 periodTicks + m (I)Lnet/minecraft/class_12329$class_12330; method_76491 period + p 1 periodTicks + m ()Lnet/minecraft/class_12329; method_76490 build + m (Lnet/minecraft/class_12197;Ljava/util/function/Consumer;)Lnet/minecraft/class_12329$class_12330; method_76493 entry + p 1 attribute + p 2 builderCallback + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_12212;Ljava/util/function/Consumer;)Lnet/minecraft/class_12329$class_12330; method_76492 entry + p 2 modifier + p 1 attribute + p 3 builderCallback +c net/minecraft/class_12328 net/minecraft/world/attribute/timeline/TrackAttributeModification + f Lnet/minecraft/class_12308; field_64393 evaluator + f I field_64395 lastComputedTime + f Lnet/minecraft/class_12212; field_64392 modifiers + f Ljava/util/function/LongSupplier; field_64394 timeSupplier + f Ljava/lang/Object; field_64396 lastComputedValue + m (Ljava/util/Optional;Lnet/minecraft/class_12212;Lnet/minecraft/class_12306;Lnet/minecraft/class_12210;Ljava/util/function/LongSupplier;)V + p 5 timeSupplier + p 4 interpolator + p 3 track + p 2 modifiers + p 1 period +c net/minecraft/class_12327 net/minecraft/world/attribute/timeline/TimelineEntry + f Lnet/minecraft/class_12306; comp_5224 argumentTrack + f Lnet/minecraft/class_12212; comp_5223 modifier + m (Lnet/minecraft/class_12327;I)Lcom/mojang/serialization/DataResult; method_76475 validateKeyframesInPeriod + p 1 period + p 0 entry + m (Lnet/minecraft/class_12327;Lnet/minecraft/class_12306;)Lnet/minecraft/class_12327; method_76476 method_76476 + p 1 track + m (Lnet/minecraft/class_12197;)Lcom/mojang/serialization/Codec; method_76471 createCodec + p 0 attribute + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_12212;)Lcom/mojang/serialization/MapCodec; method_76472 createMapCodec + p 0 attribute + p 1 modifier + m (Lnet/minecraft/class_12197;Ljava/util/Optional;Ljava/util/function/LongSupplier;)Lnet/minecraft/class_12328; method_76473 toModification + p 1 attribute + p 2 period + p 3 timeSupplier + m (Lnet/minecraft/class_12212;Lnet/minecraft/class_12306;)Lnet/minecraft/class_12327; method_76474 method_76474 + p 1 argumentTrack + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_12212;)Lcom/mojang/serialization/MapCodec; method_76477 method_76477 + p 1 modifier + m ()Lnet/minecraft/class_12306; comp_5224 argumentTrack + m ()Lnet/minecraft/class_12212; comp_5223 modifier + m (Lnet/minecraft/class_12212;Lnet/minecraft/class_12306;)V + p 1 modifier + p 2 argumentTrack +c net/minecraft/class_2096 net/minecraft/predicate/NumberRange + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9701 EXCEPTION_SWAPPED + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9700 EXCEPTION_EMPTY + m ()Ljava/util/Optional; method_74106 getMin + m ()Z method_9041 isDummy + m ()Ljava/util/Optional; method_74107 getMax + m ()Lnet/minecraft/class_2096$class_11893; comp_4771 bounds +c net/minecraft/class_2096$class_11893 net/minecraft/predicate/NumberRange$Bounds + f Ljava/util/Optional; comp_4769 min + f Ljava/util/Optional; comp_4770 max + m (Ljava/util/function/Function;)Lnet/minecraft/class_2096$class_11893; method_74119 map + p 1 mappingFunction + m (Lnet/minecraft/class_2096$class_11893;)Lcom/mojang/datafixers/util/Either; method_74115 method_74115 + p 0 bounds + m ()Z method_74124 isSwapped + m (Ljava/lang/Number;Ljava/lang/Number;)Lnet/minecraft/class_2096$class_11893; method_74117 between + p 1 max + p 0 min + m ()Z method_74108 isAny + m (Lcom/mojang/brigadier/StringReader;Ljava/util/function/Function;Ljava/util/function/Supplier;)Ljava/util/Optional; method_74121 parseNumber + p 2 exceptionSupplier + p 1 parsingFunction + p 0 reader + m (Lnet/minecraft/class_2096$class_11893;)Lnet/minecraft/class_2096$class_11893; method_74122 method_74122 + p 0 bounds + m ()Lnet/minecraft/class_2096$class_11893; method_74127 any + m (Ljava/lang/Object;)Lnet/minecraft/class_2096$class_11893; method_74118 method_74118 + p 0 value + m (Ljava/lang/Number;)Lnet/minecraft/class_2096$class_11893; method_74116 exactly + p 0 value + m (Ljava/lang/Number;)Lnet/minecraft/class_2096$class_11893; method_74125 atMost + p 0 value + m (Ljava/lang/Number;)Lnet/minecraft/class_2096$class_11893; method_74123 atLeast + p 0 value + m (Lcom/mojang/brigadier/StringReader;Ljava/util/function/Function;Ljava/util/function/Supplier;)Lnet/minecraft/class_2096$class_11893; method_74111 parse + p 0 reader + p 1 parsingFunction + p 2 exceptionSupplier + m (Lcom/mojang/brigadier/StringReader;)Z method_74110 shouldSkip + p 0 reader + m ()Lcom/mojang/serialization/DataResult; method_74120 validate + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_74109 createPacketCodec + p 0 valuePacketCodec + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_74113 createCodec + p 0 valueCodec + m ()Ljava/util/Optional; method_74126 getPoint + m ()Ljava/util/Optional; comp_4770 max + m ()Ljava/util/Optional; comp_4769 min + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 min + p 2 max +c net/minecraft/class_2096$class_11893$1 net/minecraft/predicate/NumberRange$Bounds$1 + f I field_56289 MAX_PRESENT_FLAG + f I field_56292 MIN_PRESENT_FLAG + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_2096$class_11893; method_67181 decode + m (Lnet/minecraft/class_9139;Lio/netty/buffer/ByteBuf;Ljava/lang/Number;)V method_67183 method_67183 + p 2 max + m (Lnet/minecraft/class_9139;Lio/netty/buffer/ByteBuf;Ljava/lang/Number;)V method_67184 method_67184 + p 2 min + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_2096$class_11893;)V method_67182 encode +c net/minecraft/class_2096$class_2100 net/minecraft/predicate/NumberRange$IntRange + f Lnet/minecraft/class_2096$class_2100; field_9708 ANY + f Lcom/mojang/serialization/Codec; field_45763 CODEC + f Lnet/minecraft/class_9139; field_56294 PACKET_CODEC + f Lnet/minecraft/class_2096$class_11893; comp_4773 boundsSqr + f Lnet/minecraft/class_2096$class_11893; comp_4771 bounds + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2096$class_2100; method_9060 parse + p 0 reader + m (I)Lnet/minecraft/class_2096$class_2100; method_35289 atMost + p 0 value + m (I)Lnet/minecraft/class_2096$class_2100; method_9058 exactly + p 0 value + m (J)Z method_35288 testSqrt + p 1 value + m (Lnet/minecraft/class_2096$class_11893;)V + p 1 bounds + m (Ljava/lang/Integer;)Ljava/lang/Long; method_53197 method_53197 + p 0 i + m (I)Lnet/minecraft/class_2096$class_2100; method_9053 atLeast + p 0 value + m (I)Z method_9054 test + p 1 value + m (II)Lnet/minecraft/class_2096$class_2100; method_35287 between + p 0 min + p 1 max + m ()Lnet/minecraft/class_2096$class_11893; comp_4773 boundsSqr + m (Lnet/minecraft/class_2096$class_11893;Lnet/minecraft/class_2096$class_11893;)V + p 1 bounds + p 2 boundsSqr +c net/minecraft/class_2096$class_11894 net/minecraft/predicate/NumberRange$AngleRange + f Lnet/minecraft/class_9139; field_62529 PACKET_CODEC + f Lnet/minecraft/class_2096$class_11894; field_62527 ANY + f Lcom/mojang/serialization/Codec; field_62528 CODEC + f Lnet/minecraft/class_2096$class_11893; comp_4771 bounds + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2096$class_11894; method_74129 parse + p 0 reader + m (Lnet/minecraft/class_2096$class_11893;)V + p 1 bounds +c net/minecraft/class_2096$class_2099 net/minecraft/predicate/NumberRange$DoubleRange + f Lnet/minecraft/class_9139; field_56293 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_45762 CODEC + f Lnet/minecraft/class_2096$class_2099; field_9705 ANY + f Lnet/minecraft/class_2096$class_11893; comp_4772 boundsSqr + f Lnet/minecraft/class_2096$class_11893; comp_4771 bounds + m (D)Z method_9047 test + p 1 value + m (D)Lnet/minecraft/class_2096$class_2099; method_9050 atLeast + p 0 value + m (Lnet/minecraft/class_2096$class_11893;)V + p 1 bounds + m (D)Z method_9045 testSqrt + p 1 value + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2096$class_2099; method_9049 parse + p 0 reader + m (DD)Lnet/minecraft/class_2096$class_2099; method_35285 between + p 2 max + p 0 min + m (D)Lnet/minecraft/class_2096$class_2099; method_35284 exactly + p 0 value + m (D)Lnet/minecraft/class_2096$class_2099; method_35286 atMost + p 0 value + m ()Lnet/minecraft/class_2096$class_11893; comp_4772 boundsSqr + m (Lnet/minecraft/class_2096$class_11893;Lnet/minecraft/class_2096$class_11893;)V + p 1 bounds + p 2 boundsSqr +c net/minecraft/class_2090 net/minecraft/predicate/entity/LocationPredicate + f Lcom/mojang/serialization/Codec; field_45760 CODEC + f Ljava/util/Optional; comp_1801 fluid + f Ljava/util/Optional; comp_1800 block + f Ljava/util/Optional; comp_2375 biomes + f Ljava/util/Optional; comp_2376 structures + f Ljava/util/Optional; comp_2771 canSeeSky + f Ljava/util/Optional; comp_1799 light + f Ljava/util/Optional; comp_1798 smokey + f Ljava/util/Optional; comp_1797 dimension + f Ljava/util/Optional; comp_1794 position + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53178 method_53178 + p 0 instance + m (Lnet/minecraft/class_3218;DDD)Z method_9018 test + p 1 world + p 4 y + p 2 x + p 6 z + m ()Ljava/util/Optional; comp_1794 position + m ()Ljava/util/Optional; comp_1797 dimension + m ()Ljava/util/Optional; comp_1798 smokey + m ()Ljava/util/Optional; comp_2376 structures + m ()Ljava/util/Optional; comp_2375 biomes + m ()Ljava/util/Optional; comp_1799 light + m ()Ljava/util/Optional; comp_2771 canSeeSky + m ()Ljava/util/Optional; comp_1800 block + m ()Ljava/util/Optional; comp_1801 fluid + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 position + p 2 biomes + p 3 structures + p 4 dimension + p 5 smokey + p 6 light + p 7 block + p 8 fluid + p 9 canSeeSky +c net/minecraft/class_2090$class_2091 net/minecraft/predicate/entity/LocationPredicate$Builder + f Ljava/util/Optional; field_9688 feature + f Ljava/util/Optional; field_9691 dimension + f Lnet/minecraft/class_2096$class_2099; field_9692 z + f Ljava/util/Optional; field_20718 block + f Ljava/util/Optional; field_51778 canSeeSky + f Ljava/util/Optional; field_20719 fluid + f Ljava/util/Optional; field_9690 biome + f Ljava/util/Optional; field_20717 light + f Lnet/minecraft/class_2096$class_2099; field_9693 x + f Ljava/util/Optional; field_24501 smokey + f Lnet/minecraft/class_2096$class_2099; field_9689 y + m (Lnet/minecraft/class_6885;)Lnet/minecraft/class_2090$class_2091; method_9024 biome + p 1 biome + m (Lnet/minecraft/class_2096$class_2099;)Lnet/minecraft/class_2090$class_2091; method_35280 z + p 1 z + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_2090$class_2091; method_53182 createDimension + p 0 dimension + m (Lnet/minecraft/class_4551$class_6079;)Lnet/minecraft/class_2090$class_2091; method_35274 fluid + p 1 fluid + m ()Lnet/minecraft/class_2090$class_2091; method_22484 create + m (Lnet/minecraft/class_4550$class_4710;)Lnet/minecraft/class_2090$class_2091; method_27989 block + p 1 block + m (Lnet/minecraft/class_2096$class_2099;)Lnet/minecraft/class_2090$class_2091; method_35278 y + p 1 y + m (Lnet/minecraft/class_2096$class_2099;)Lnet/minecraft/class_2090$class_2091; method_35276 x + p 1 x + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_2090$class_2091; method_35279 dimension + p 1 dimension + m (Lnet/minecraft/class_2096$class_2099;)Lnet/minecraft/class_2090$class_2091; method_53181 createY + p 0 y + m (Lnet/minecraft/class_6885;)Lnet/minecraft/class_2090$class_2091; method_35277 structure + p 1 structure + m ()Lnet/minecraft/class_2090; method_9023 build + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_2090$class_2091; method_53180 createBiome + p 0 biome + m (Z)Lnet/minecraft/class_2090$class_2091; method_27990 smokey + p 1 smokey + m (Z)Lnet/minecraft/class_2090$class_2091; method_60275 canSeeSky + p 1 canSeeSky + m (Lnet/minecraft/class_4552$class_6087;)Lnet/minecraft/class_2090$class_2091; method_35275 light + p 1 light + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_2090$class_2091; method_53183 createStructure + p 0 structure +c net/minecraft/class_2090$class_8747 net/minecraft/predicate/entity/LocationPredicate$PositionRange + f Lcom/mojang/serialization/Codec; field_45761 CODEC + f Lnet/minecraft/class_2096$class_2099; comp_1802 x + f Lnet/minecraft/class_2096$class_2099; comp_1803 y + f Lnet/minecraft/class_2096$class_2099; comp_1804 z + m (DDD)Z method_53184 test + p 5 z + p 3 y + p 1 x + m (Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;)Ljava/util/Optional; method_53185 create + p 2 z + p 0 x + p 1 y + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53186 method_53186 + p 0 instance + m ()Lnet/minecraft/class_2096$class_2099; comp_1802 x + m ()Lnet/minecraft/class_2096$class_2099; comp_1804 z + m ()Lnet/minecraft/class_2096$class_2099; comp_1803 y + m (Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;)V + p 1 x + p 2 y + p 3 z +c net/minecraft/class_12359 net/minecraft/entity/ai/brain/task/SpearChargeTask + f D field_64625 chargeStartSpeed + f D field_64626 chargeSpeed + f F field_64628 squaredChargeRange + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_76712 finishRunning + m (Lnet/minecraft/class_1314;)I method_76711 getSpearUseTicks + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_76708 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_76706 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;)Z method_76705 shouldRun + m (DDFF)V + p 6 chargeRange + p 1 chargeStartSpeed + p 3 chargeSpeed + m (Lnet/minecraft/class_1314;)Z method_76709 shouldAttack + p 1 entity + m (Lnet/minecraft/class_1314;)Lnet/minecraft/class_1309; method_76707 getTarget + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_76710 keepRunning +c net/minecraft/class_12359$class_12360 net/minecraft/entity/ai/brain/task/SpearChargeTask$AdvanceState + f Lnet/minecraft/class_12359$class_12360; field_64629 APPROACH + f Lnet/minecraft/class_12359$class_12360; field_64630 CHARGING + f Lnet/minecraft/class_12359$class_12360; field_64631 RETREAT +c net/minecraft/class_12358 net/minecraft/entity/ai/brain/task/SpearAttackTask + f F field_64622 squaredAttackRange + f D field_64621 speed + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_76702 keepRunning + m (Lnet/minecraft/class_1314;)Z method_76699 canRun + p 1 entity + m (Lnet/minecraft/class_1314;)Lnet/minecraft/class_1309; method_76701 getAttackTarget + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_76704 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;)Z method_76697 shouldRun + m (Lnet/minecraft/class_1314;)Z method_76703 isTargetWithinRange + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_76700 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_76698 run + m (DF)V + p 3 attackRange + p 1 speed +c net/minecraft/class_12340 net/minecraft/command/permission/OrPermissionPredicate + f Lit/unimi/dsi/fastutil/objects/ReferenceSet; field_64478 predicates + m (Lit/unimi/dsi/fastutil/objects/ReferenceSet;Lnet/minecraft/class_12096;)V + p 2 predicate + p 1 predicates + m ()Lit/unimi/dsi/fastutil/objects/ReferenceSet; method_76576 getPredicates + m ()V method_76577 validate + m (Lnet/minecraft/class_12096;Lnet/minecraft/class_12096;)V + p 1 a + p 2 b + m (Lit/unimi/dsi/fastutil/objects/ReferenceSet;Lit/unimi/dsi/fastutil/objects/ReferenceSet;)V + p 2 b + p 1 a +c net/minecraft/class_12344 net/minecraft/screen/NautilusScreenHandler + f Lnet/minecraft/class_2960; field_64491 EMPTY_SADDLE_SLOT_TEXTURE + f Lnet/minecraft/class_2960; field_64492 EMPTY_NAUTILUS_ARMOR_SLOT_TEXTURE + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;Lnet/minecraft/class_12116;I)V + p 2 playerInventory + p 3 inventory + p 1 syncId + p 4 nautilus + p 5 slotColumnCount +c net/minecraft/class_12343 net/minecraft/screen/MountScreenHandler + f Lnet/minecraft/class_1263; field_64485 inventory + f Lnet/minecraft/class_1309; field_64486 mount + m (Lnet/minecraft/class_1263;)Z method_76588 areInventoriesDifferent + p 1 inventory + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;Lnet/minecraft/class_1309;)V + p 1 syncId + p 2 playerInventory + p 3 inventory + p 4 mount + m (I)I method_76589 getSlotCount + p 0 columns +c net/minecraft/class_12341 net/minecraft/datafixer/fix/OptionsMusicToastFix + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_76581 method_76581 + p 1 value + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_76579 method_76579 + p 0 typed + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_76580 method_76580 + p 0 options + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/class_12348 net/minecraft/client/gui/screen/ingame/MountScreen + f F field_64546 mouseY + f F field_64545 mouseX + f Lnet/minecraft/class_1309; field_64547 mount + f I field_64544 slotColumnCount + m ()Z method_76626 canEquipSaddle + m ()Z method_76627 canEquipArmor + m (Lnet/minecraft/class_332;II)V method_76628 drawSlot + p 2 x + p 3 y + p 1 context + m (Lnet/minecraft/class_12343;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;ILnet/minecraft/class_1309;)V + p 5 mount + p 4 slotColumnCount + p 1 handler + p 3 title + p 2 inventory + m ()Lnet/minecraft/class_2960; method_76624 getSlotTexture + m ()Lnet/minecraft/class_2960; method_76623 getTexture + m ()Lnet/minecraft/class_2960; method_76625 getChestSlotsTexture +c net/minecraft/class_12345 net/minecraft/client/option/MusicToastMode + f Ljava/lang/String; field_64529 id + f Lnet/minecraft/class_2561; field_64531 tooltipText + f Lnet/minecraft/class_2561; field_64530 text + f Lnet/minecraft/class_12345; field_64525 NEVER + f Lnet/minecraft/class_12345; field_64527 PAUSE_AND_TOAST + f Lnet/minecraft/class_12345; field_64526 PAUSE + f Lcom/mojang/serialization/Codec; field_64528 CODEC + m ()Lnet/minecraft/class_2561; method_76605 getTooltipText + m ()Z method_76607 canShowAsToast + m ()Z method_76606 canShow + m ()Lnet/minecraft/class_2561; method_76604 getText + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V + p 3 id + p 4 translationKey +c net/minecraft/class_12349 net/minecraft/client/gui/screen/ingame/NautilusScreen + f Lnet/minecraft/class_2960; field_64549 TEXTURE + f Lnet/minecraft/class_2960; field_64548 SLOT_TEXTURE + m (Lnet/minecraft/class_12344;Lnet/minecraft/class_1661;Lnet/minecraft/class_12116;I)V + p 1 handler + p 4 slotColumnCount + p 3 nautilus + p 2 inventory +c net/minecraft/class_9389 net/minecraft/util/packrat/ParsingRules + f Ljava/util/Map; field_49960 rules + m (Ljava/util/Map$Entry;)Z method_68208 method_68208 + p 0 entry + m ()V method_68205 ensureBound + m (Lnet/minecraft/class_9387;)Lnet/minecraft/class_9402; method_68210 term + p 1 symbol + m (Lnet/minecraft/class_9387;)Lnet/minecraft/class_10842; method_58300 get + p 1 symbol + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;)Lnet/minecraft/class_9402; method_68206 term + p 1 symbol + p 2 nameToStore + m (Lnet/minecraft/class_9387;)Lnet/minecraft/class_9389$class_10838; method_68211 getOrCreateInternal + p 1 symbol + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9396;)Lnet/minecraft/class_10842; method_58301 set + p 2 rule + p 1 symbol + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9402;Lnet/minecraft/class_9396$class_9398;)Lnet/minecraft/class_10842; method_58302 set + p 2 term + p 3 action + p 1 symbol + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9402;Lnet/minecraft/class_9396$class_9397;)Lnet/minecraft/class_10842; method_68207 set + p 1 symbol + p 3 action + p 2 term + m (Lnet/minecraft/class_9387;)Lnet/minecraft/class_10842; method_68209 getOrCreate + p 1 symbol +c net/minecraft/class_9389$class_10839 net/minecraft/util/packrat/ParsingRules$RuleTerm + f Lnet/minecraft/class_9389$class_10838; comp_3789 ruleToParse + f Lnet/minecraft/class_9387; comp_3790 nameToStore + m ()Lnet/minecraft/class_9389$class_10838; comp_3789 ruleToParse + m ()Lnet/minecraft/class_9387; comp_3790 nameToStore + m (Lnet/minecraft/class_9389$class_10838;Lnet/minecraft/class_9387;)V + p 1 ruleToParse + p 2 nameToStore +c net/minecraft/class_9389$class_10838 net/minecraft/util/packrat/ParsingRules$RuleEntryImpl + f Lnet/minecraft/class_9396; field_57524 rule + f Lnet/minecraft/class_9387; field_57523 symbol + m ()Ljava/lang/String; method_68215 get + m (Lnet/minecraft/class_9387;)V + p 1 symbol +c net/minecraft/class_8059 net/minecraft/recipe/SmithingRecipe + m (Lnet/minecraft/class_9697;Lnet/minecraft/class_1937;)Z method_61702 matches + m ()Lnet/minecraft/class_1856; method_64723 base + m ()Ljava/util/Optional; method_64724 addition + m ()Ljava/util/Optional; method_64722 template +c net/minecraft/class_9388 net/minecraft/util/packrat/Cut + f Lnet/minecraft/class_9388; field_49959 NOOP + m ()Z method_68199 isCut + m ()V method_68198 cut +c net/minecraft/class_8056 net/minecraft/item/equipment/trim/ArmorTrimPattern + f Lnet/minecraft/class_9139; field_49283 ENTRY_PACKET_CODEC + f Lnet/minecraft/class_9139; field_49282 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_42015 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_42014 CODEC + f Lnet/minecraft/class_2960; comp_1213 assetId + f Z comp_1905 decal + f Lnet/minecraft/class_2561; comp_1215 description + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_2561; method_48446 getDescription + p 1 material + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48445 method_48445 + p 0 instance + m ()Z comp_1905 decal + m ()Lnet/minecraft/class_2960; comp_1213 assetId + m ()Lnet/minecraft/class_2561; comp_1215 description + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2561;Z)V + p 1 assetId + p 2 description + p 3 decal +c net/minecraft/class_9387 net/minecraft/util/packrat/Symbol + f Ljava/lang/String; comp_2468 name + m (Ljava/lang/String;)Lnet/minecraft/class_9387; method_58298 of + p 0 name + m ()Ljava/lang/String; comp_2468 name + m (Ljava/lang/String;)V + p 1 name +c net/minecraft/class_8057 net/minecraft/item/equipment/trim/ArmorTrimPatterns + f Lnet/minecraft/class_5321; field_43221 WAYFINDER + f Lnet/minecraft/class_5321; field_42023 TIDE + f Lnet/minecraft/class_5321; field_42021 EYE + f Lnet/minecraft/class_5321; field_42022 VEX + f Lnet/minecraft/class_5321; field_42020 WARD + f Lnet/minecraft/class_5321; field_43225 HOST + f Lnet/minecraft/class_5321; field_43224 RAISER + f Lnet/minecraft/class_5321; field_42026 SPIRE + f Lnet/minecraft/class_5321; field_43223 SILENCE + f Lnet/minecraft/class_5321; field_42025 RIB + f Lnet/minecraft/class_5321; field_43222 SHAPER + f Lnet/minecraft/class_5321; field_42024 SNOUT + f Lnet/minecraft/class_5321; field_42019 WILD + f Lnet/minecraft/class_5321; field_42018 COAST + f Lnet/minecraft/class_5321; field_42017 DUNE + f Lnet/minecraft/class_5321; field_42016 SENTRY + f Lnet/minecraft/class_5321; field_49828 BOLT + f Lnet/minecraft/class_5321; field_49827 FLOW + m (Lnet/minecraft/class_7891;)V method_48450 bootstrap + p 0 registry + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;)V method_48451 register + p 0 registry + p 1 key + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_2960; method_67232 getId + p 0 key + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_48449 of + p 0 id +c net/minecraft/class_9386 net/minecraft/unused/packageinfo/PackageInfo9386 +c net/minecraft/class_8054 net/minecraft/item/equipment/trim/ArmorTrimMaterial + f Lnet/minecraft/class_9139; field_49281 ENTRY_PACKET_CODEC + f Lnet/minecraft/class_9139; field_49280 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_42003 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_42002 CODEC + f Lnet/minecraft/class_2561; comp_1212 description + f Lnet/minecraft/class_10714; comp_3606 assets + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67231 method_67231 + p 0 instance + m ()Lnet/minecraft/class_10714; comp_3606 assets + m ()Lnet/minecraft/class_2561; comp_1212 description + m (Lnet/minecraft/class_10714;Lnet/minecraft/class_2561;)V + p 1 assets + p 2 description +c net/minecraft/class_8055 net/minecraft/item/equipment/trim/ArmorTrimMaterials + f Lnet/minecraft/class_5321; field_55049 RESIN + f Lnet/minecraft/class_5321; field_42013 AMETHYST + f Lnet/minecraft/class_5321; field_42012 LAPIS + f Lnet/minecraft/class_5321; field_42011 DIAMOND + f Lnet/minecraft/class_5321; field_42010 EMERALD + f Lnet/minecraft/class_5321; field_42007 REDSTONE + f Lnet/minecraft/class_5321; field_42006 NETHERITE + f Lnet/minecraft/class_5321; field_42005 IRON + f Lnet/minecraft/class_5321; field_42004 QUARTZ + f Lnet/minecraft/class_5321; field_42009 GOLD + f Lnet/minecraft/class_5321; field_42008 COPPER + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_1799;)Ljava/util/Optional; method_48440 get + p 0 registries + p 1 stack + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_48441 of + p 0 id + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_2583;Lnet/minecraft/class_10714;)V method_48443 register + p 3 assets + p 2 style + p 1 key + p 0 registry + m (Lnet/minecraft/class_7891;)V method_48442 bootstrap + p 0 registry +c net/minecraft/class_8052 net/minecraft/item/SmithingTemplateItem + f Lnet/minecraft/class_2561; field_52584 SMITHING_TEMPLATE_TEXT + f Lnet/minecraft/class_2561; field_41971 additionsSlotDescriptionText + f Lnet/minecraft/class_124; field_41974 TITLE_FORMATTING + f Lnet/minecraft/class_2561; field_41981 ARMOR_TRIM_INGREDIENTS_TEXT + f Lnet/minecraft/class_2561; field_41983 ARMOR_TRIM_ADDITIONS_SLOT_DESCRIPTION_TEXT + f Lnet/minecraft/class_2561; field_41985 NETHERITE_UPGRADE_INGREDIENTS_TEXT + f Ljava/util/List; field_41973 emptyAdditionsSlotTextures + f Lnet/minecraft/class_2960; field_41960 EMPTY_SLOT_PICKAXE_TEXTURE + f Lnet/minecraft/class_2960; field_41992 EMPTY_SLOT_HOE_TEXTURE + f Lnet/minecraft/class_2960; field_41990 EMPTY_ARMOR_SLOT_LEGGINGS_TEXTURE + f Lnet/minecraft/class_2960; field_63396 EMPTY_SLOT_SPEAR_TEXTURE + f Lnet/minecraft/class_2960; field_41958 EMPTY_SLOT_SWORD_TEXTURE + f Lnet/minecraft/class_2960; field_42472 EMPTY_SLOT_AMETHYST_SHARD_TEXTURE + f Lnet/minecraft/class_2960; field_41966 EMPTY_SLOT_LAPIS_LAZULI_TEXTURE + f Lnet/minecraft/class_2960; field_41988 EMPTY_ARMOR_SLOT_HELMET_TEXTURE + f Lnet/minecraft/class_2960; field_41964 EMPTY_SLOT_EMERALD_TEXTURE + f Lnet/minecraft/class_2960; field_41962 EMPTY_SLOT_REDSTONE_DUST_TEXTURE + f Lnet/minecraft/class_2561; field_41977 INGREDIENTS_TEXT + f Lnet/minecraft/class_2561; field_41987 NETHERITE_UPGRADE_ADDITIONS_SLOT_DESCRIPTION_TEXT + f Lnet/minecraft/class_2561; field_41967 appliesToText + f Lnet/minecraft/class_124; field_41975 DESCRIPTION_FORMATTING + f Lnet/minecraft/class_2561; field_41980 ARMOR_TRIM_APPLIES_TO_TEXT + f Lnet/minecraft/class_2561; field_41982 ARMOR_TRIM_BASE_SLOT_DESCRIPTION_TEXT + f Lnet/minecraft/class_2561; field_41970 baseSlotDescriptionText + f Lnet/minecraft/class_2561; field_41984 NETHERITE_UPGRADE_APPLIES_TO_TEXT + f Lnet/minecraft/class_2561; field_41986 NETHERITE_UPGRADE_BASE_SLOT_DESCRIPTION_TEXT + f Lnet/minecraft/class_2960; field_41961 EMPTY_SLOT_INGOT_TEXTURE + f Lnet/minecraft/class_2960; field_63397 EMPTY_SLOT_NAUTILUS_ARMOR_TEXTURE + f Lnet/minecraft/class_2960; field_41993 EMPTY_SLOT_AXE_TEXTURE + f Ljava/util/List; field_41972 emptyBaseSlotTextures + f Lnet/minecraft/class_2960; field_41991 EMPTY_ARMOR_SLOT_BOOTS_TEXTURE + f Lnet/minecraft/class_2960; field_41989 EMPTY_ARMOR_SLOT_CHESTPLATE_TEXTURE + f Lnet/minecraft/class_2960; field_41965 EMPTY_SLOT_DIAMOND_TEXTURE + f Lnet/minecraft/class_2960; field_41963 EMPTY_SLOT_QUARTZ_TEXTURE + f Lnet/minecraft/class_2561; field_41968 ingredientsText + f Lnet/minecraft/class_2561; field_41978 APPLIES_TO_TEXT + f Lnet/minecraft/class_2960; field_41959 EMPTY_SLOT_SHOVEL_TEXTURE + m ()Ljava/util/List; method_48414 getArmorTrimEmptyBaseSlotTextures + m ()Ljava/util/List; method_48416 getNetheriteUpgradeEmptyBaseSlotTextures + m ()Lnet/minecraft/class_2561; method_48421 getBaseSlotDescription + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_1792$class_1793;)V + p 6 emptyAdditionsSlotTextures + p 7 settings + p 1 appliesToText + p 2 ingredientsText + p 3 baseSlotDescriptionText + p 4 additionsSlotDescriptionText + p 5 emptyBaseSlotTextures + m ()Ljava/util/List; method_48415 getArmorTrimEmptyAdditionsSlotTextures + m ()Ljava/util/List; method_48417 getNetheriteUpgradeEmptyAdditionsSlotTextures + m ()Ljava/util/List; method_48413 getEmptyAdditionsSlotTextures + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_8052; method_48418 of + p 0 settings + m ()Ljava/util/List; method_48423 getEmptyBaseSlotTextures + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_8052; method_48420 createNetheriteUpgrade + p 0 settings + m ()Lnet/minecraft/class_2561; method_48422 getAdditionsSlotDescription +c net/minecraft/class_9383 net/minecraft/registry/ReloadableRegistries + f Lnet/minecraft/class_9248; field_49918 DEFAULT_REGISTRY_ENTRY_INFO + f Lorg/slf4j/Logger; field_49916 LOGGER + m (Lnet/minecraft/class_7225$class_7874;)V method_61243 validate + p 0 registries + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_7225$class_7874; method_61244 concat + p 0 first + p 1 second + m (Lnet/minecraft/class_58;Lnet/minecraft/class_8490;Lnet/minecraft/class_7225$class_7874;)V method_58281 validateLootData + p 0 reporter + p 1 lootDataType + p 2 registries + m (Lnet/minecraft/class_8490;Lnet/minecraft/class_58;Lnet/minecraft/class_6880$class_6883;)V method_58280 method_58280 + p 2 entry + m (Lnet/minecraft/class_7780;Ljava/util/List;)Lnet/minecraft/class_7780; method_58287 with + p 1 registries + p 0 dynamicRegistries + m (Ljava/lang/String;Lnet/minecraft/class_8942$class_11337;)V method_61242 method_61242 + p 0 id + m (Lnet/minecraft/class_7780;Ljava/util/List;Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_58284 reload + p 3 prepareExecutor + p 2 resourceManager + p 1 pendingTagLoads + p 0 dynamicRegistries + m (Lnet/minecraft/class_7780;Lnet/minecraft/class_7225$class_7874;Ljava/util/List;)Lnet/minecraft/class_9383$class_9842; method_61245 toResult + p 0 dynamicRegistries + p 2 registries + p 1 nonReloadables + m (Lnet/minecraft/class_7780;Lnet/minecraft/class_7225$class_7874;Ljava/util/List;)Lnet/minecraft/class_9383$class_9842; method_61247 method_61247 + p 2 registries + m (Lnet/minecraft/class_2385;Lnet/minecraft/class_8490;Lnet/minecraft/class_2960;Ljava/lang/Object;)V method_61246 method_61246 + p 3 value + p 2 id + m (Lnet/minecraft/class_58;Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_8490;)V method_61241 method_61241 + p 2 type + m (Lnet/minecraft/class_8490;Lnet/minecraft/class_6903;Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_58277 prepare + p 3 prepareExecutor + p 2 resourceManager + p 1 ops + p 0 type + m (Lnet/minecraft/class_6903;Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;Lnet/minecraft/class_8490;)Ljava/util/concurrent/CompletableFuture; method_58276 method_58276 + p 3 type +c net/minecraft/class_9383$class_9385 net/minecraft/registry/ReloadableRegistries$Lookup + f Lnet/minecraft/class_7225$class_7874; field_49920 registries + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_7225$class_7226;)Ljava/util/Optional; method_58291 method_58291 + p 1 registryEntryLookup + m ()Lnet/minecraft/class_7225$class_7874; method_58294 createRegistryLookup + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_52; method_58295 getLootTable + p 1 key + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries +c net/minecraft/class_9383$class_9842 net/minecraft/registry/ReloadableRegistries$ReloadResult + f Lnet/minecraft/class_7780; comp_2898 layers + f Lnet/minecraft/class_7225$class_7874; comp_2899 lookupWithUpdatedTags + m ()Lnet/minecraft/class_7780; comp_2898 layers + m ()Lnet/minecraft/class_7225$class_7874; comp_2899 lookupWithUpdatedTags + m (Lnet/minecraft/class_7780;Lnet/minecraft/class_7225$class_7874;)V + p 1 layers + p 2 lookupWithUpdatedTags +c net/minecraft/class_8053 net/minecraft/item/equipment/trim/ArmorTrim + f Lnet/minecraft/class_6880; comp_3180 pattern + f Lcom/mojang/serialization/Codec; field_41994 CODEC + f Lnet/minecraft/class_2561; field_41997 UPGRADE_TEXT + f Lnet/minecraft/class_6880; comp_3179 material + f Lnet/minecraft/class_9139; field_49278 PACKET_CODEC + m (Ljava/lang/String;Lnet/minecraft/class_5321;)Lnet/minecraft/class_2960; method_67225 getTextureId + p 1 trimsDirectory + p 2 equipmentAsset + m ()Lnet/minecraft/class_6880; comp_3180 pattern + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67224 method_67224 + p 0 instance + m ()Lnet/minecraft/class_6880; comp_3179 material + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;)V + p 1 material + p 2 pattern + m (Ljava/lang/String;Lnet/minecraft/class_10714$class_10715;Ljava/lang/String;)Ljava/lang/String; method_67226 method_67226 + p 2 patternId +c net/minecraft/class_9381 net/minecraft/particle/TintedParticleEffect + f I field_49910 color + f Lnet/minecraft/class_2396; field_49909 type + m (Lnet/minecraft/class_2396;)Lnet/minecraft/class_9139; method_58261 createPacketCodec + p 0 type + m (Lnet/minecraft/class_2396;Ljava/lang/Integer;)Lnet/minecraft/class_9381; method_58258 method_58258 + p 1 color + m (Lnet/minecraft/class_9381;)Ljava/lang/Integer; method_58253 method_58253 + p 0 particleEffect + m (Lnet/minecraft/class_2396;I)Lnet/minecraft/class_9381; method_58256 create + p 1 color + p 0 type + m (Lnet/minecraft/class_2396;)Lcom/mojang/serialization/MapCodec; method_58254 createCodec + p 0 type + m ()F method_58265 getAlpha + m (Lnet/minecraft/class_2396;Ljava/lang/Integer;)Lnet/minecraft/class_9381; method_58262 method_58262 + p 1 color + m ()F method_58263 getGreen + m ()F method_58264 getBlue + m ()F method_58259 getRed + m (Lnet/minecraft/class_2396;FFF)Lnet/minecraft/class_9381; method_58255 create + p 2 g + p 3 b + p 0 type + p 1 r + m (Lnet/minecraft/class_9381;)Ljava/lang/Integer; method_58260 method_58260 + p 0 effect + m (Lnet/minecraft/class_2396;I)V + p 2 color + p 1 type +c net/minecraft/class_8051 net/minecraft/item/equipment/EquipmentType + f Ljava/lang/String; field_41939 name + f I field_49257 baseMaxDamage + f Lcom/mojang/serialization/Codec; field_48839 CODEC + f Lnet/minecraft/class_1304; field_41938 equipmentSlot + f Lnet/minecraft/class_8051; field_48838 BODY + f Lnet/minecraft/class_8051; field_41936 LEGGINGS + f Lnet/minecraft/class_8051; field_41937 BOOTS + f Lnet/minecraft/class_8051; field_41934 HELMET + f Lnet/minecraft/class_8051; field_41935 CHESTPLATE + m ()Ljava/lang/String; method_48400 getName + m ()Lnet/minecraft/class_1304; method_48399 getEquipmentSlot + m (Ljava/lang/String;ILnet/minecraft/class_1304;ILjava/lang/String;)V + p 5 name + p 3 equipmentSlot + p 4 baseMaxDamage + m (I)I method_56690 getMaxDamage + p 1 multiplier +c net/minecraft/class_9380 net/minecraft/util/math/ImmutableBlockBox + f Lnet/minecraft/class_9139; field_49907 PACKET_CODEC + f Lnet/minecraft/class_2338; comp_2466 min + f Lnet/minecraft/class_2338; comp_2467 max + m (Lnet/minecraft/class_2338;)Z method_58244 includes + p 1 pos + m (Lnet/minecraft/class_2350;I)Lnet/minecraft/class_9380; method_58238 expand + p 2 offset + p 1 direction + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_9380; method_58239 move + p 1 offset + m ()I method_58246 getBlockCountZ + m (Lnet/minecraft/class_2350;I)Lnet/minecraft/class_9380; method_58242 move + p 1 direction + p 2 offset + m ()I method_58245 getBlockCountY + m ()I method_58243 getBlockCountX + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_9380; method_58236 of + p 0 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Lnet/minecraft/class_9380; method_58237 of + p 0 first + p 1 second + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_9380; method_58241 encompass + p 1 pos + m ()Z method_58235 isSingleBlock + m ()Lnet/minecraft/class_238; method_58240 enclosingBox + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)V + p 2 second + p 1 first + m ()Lnet/minecraft/class_2338; comp_2466 min + m ()Lnet/minecraft/class_2338; comp_2467 max +c net/minecraft/class_9380$1 net/minecraft/util/math/ImmutableBlockBox$1 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_9380;)V method_58248 encode + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_9380; method_58247 decode +c net/minecraft/class_9396 net/minecraft/util/packrat/ParsingRule + m (Lnet/minecraft/class_9393;)Ljava/lang/Object; method_58318 parse + p 1 state + m (Lnet/minecraft/class_9402;Lnet/minecraft/class_9396$class_9397;)Lnet/minecraft/class_9396; method_58320 of + p 1 action + p 0 term + m (Lnet/minecraft/class_9402;Lnet/minecraft/class_9396$class_9398;)Lnet/minecraft/class_9396; method_58321 of + p 0 term + p 1 action +c net/minecraft/class_9396$class_9399 net/minecraft/util/packrat/ParsingRule$SimpleRule + f Lnet/minecraft/class_9396$class_9397; comp_2476 action + f Lnet/minecraft/class_9402; comp_2477 child + m ()Lnet/minecraft/class_9396$class_9397; comp_2476 action + m ()Lnet/minecraft/class_9402; comp_2477 child + m (Lnet/minecraft/class_9396$class_9397;Lnet/minecraft/class_9402;)V + p 1 action + p 2 child +c net/minecraft/class_9396$class_9398 net/minecraft/util/packrat/ParsingRule$StatelessAction +c net/minecraft/class_9396$class_9397 net/minecraft/util/packrat/ParsingRule$RuleAction +c net/minecraft/class_8066 net/minecraft/client/texture/atlas/PalettedPermutationsAtlasSource + f Lcom/mojang/serialization/MapCodec; field_42077 CODEC + f Lorg/slf4j/Logger; field_42078 LOGGER + f Ljava/lang/String; field_56378 DEFAULT_SEPARATOR + f Ljava/util/List; comp_3615 textures + f Lnet/minecraft/class_2960; comp_3616 paletteKey + f Ljava/util/Map; comp_3617 permutations + f Ljava/lang/String; comp_3618 separator + m ([I[I)Ljava/util/function/IntUnaryOperator; method_48492 toMapper + p 1 to + p 0 from + m (Ljava/util/List;Lnet/minecraft/class_2960;Ljava/util/Map;Ljava/lang/String;)V + p 3 permutations + p 1 textures + p 2 paletteKey + p 4 separator + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67291 method_67291 + p 0 instance + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_2960;)[I method_48486 open + p 0 resourceManager + p 1 texture + m (Lit/unimi/dsi/fastutil/ints/Int2IntMap;I)I method_48489 method_48489 + p 1 color + m (Ljava/util/List;Lnet/minecraft/class_2960;Ljava/util/Map;)V + p 2 paletteKey + p 3 permutations + p 1 textures + m (Ljava/util/Map;Ljava/util/function/Supplier;Lnet/minecraft/class_3300;Ljava/lang/String;Lnet/minecraft/class_2960;)V method_48490 method_48490 + p 3 key + p 4 texture + m ()Ljava/util/Map; comp_3617 permutations + m ()Ljava/lang/String; comp_3618 separator + m ()Ljava/util/List; comp_3615 textures + m ()Lnet/minecraft/class_2960; comp_3616 paletteKey +c net/minecraft/class_8066$class_8067 net/minecraft/client/texture/atlas/PalettedPermutationsAtlasSource$PalettedSpriteRegion + f Ljava/util/function/Supplier; comp_1217 palette + f Lnet/minecraft/class_2960; comp_1218 permutationLocation + f Lnet/minecraft/class_7958; comp_1216 baseImage + m ()Lnet/minecraft/class_7958; comp_1216 baseImage + m ()Ljava/util/function/Supplier; comp_1217 palette + m ()Lnet/minecraft/class_2960; comp_1218 permutationLocation + m (Lnet/minecraft/class_7958;Ljava/util/function/Supplier;Lnet/minecraft/class_2960;)V + p 1 baseImage + p 2 palette + p 3 permutationLocation +c net/minecraft/class_8064 net/minecraft/client/gui/screen/ingame/CyclingSlotIcon + f I field_42045 currentIndex + f I field_42044 timer + f I field_42042 slotId + f Ljava/util/List; field_42043 textures + m (Ljava/util/List;)V method_48471 updateTexture + p 1 textures + m (Lnet/minecraft/class_1703;Lnet/minecraft/class_332;FII)V method_48469 render + p 3 deltaTicks + p 4 x + p 1 screenHandler + p 2 context + p 5 y + m (I)V + p 1 slotId + m (F)F method_48468 computeAlpha + p 1 deltaTicks + m (Lnet/minecraft/class_1735;Lnet/minecraft/class_2960;FLnet/minecraft/class_332;II)V method_48470 drawIcon + p 1 slot + p 2 texture + p 3 alpha + p 4 context + p 5 x + p 6 y +c net/minecraft/class_9393 net/minecraft/util/packrat/ParsingState + m ()Lnet/minecraft/class_9400; method_68187 getResults + m (Lnet/minecraft/class_10842;)Ljava/lang/Object; method_68188 parse + p 1 rule + m (I)V method_58311 setCursor + p 1 cursor + m ()Lnet/minecraft/class_9390; method_58310 getErrors + m ()Lnet/minecraft/class_9393; method_68192 getErrorSuppressingState + m ()Ljava/lang/Object; method_58315 getReader + m ()I method_58317 getCursor + m ()V method_68191 popCutter + m ()Lnet/minecraft/class_9388; method_68190 pushCutter + m (Lnet/minecraft/class_10842;)Ljava/util/Optional; method_58312 startParsing + p 1 rule +c net/minecraft/class_9392 net/minecraft/util/packrat/ParseError + f I comp_2469 cursor + f Ljava/lang/Object; comp_2471 reason + f Lnet/minecraft/class_9401; comp_2470 suggestions + m ()I comp_2469 cursor + m ()Lnet/minecraft/class_9401; comp_2470 suggestions + m ()Ljava/lang/Object; comp_2471 reason + m (ILnet/minecraft/class_9401;Ljava/lang/Object;)V + p 1 cursor + p 2 suggestions + p 3 reason +c net/minecraft/class_8062 net/minecraft/recipe/SmithingTrimRecipe + f Lnet/minecraft/class_6880; field_56321 pattern + f Lnet/minecraft/class_9887; field_52606 ingredientPlacement + f Lnet/minecraft/class_1856; field_42037 addition + f Lnet/minecraft/class_1856; field_42036 base + f Lnet/minecraft/class_1856; field_42035 template + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Lnet/minecraft/class_6880;)Lnet/minecraft/class_1799; method_64996 craft + p 1 base + p 0 registries + p 3 pattern + p 2 addition + m (Lnet/minecraft/class_1856;Lnet/minecraft/class_1856;Lnet/minecraft/class_1856;Lnet/minecraft/class_6880;)V + p 1 template + p 2 base + p 3 addition + p 4 pattern + m (Lnet/minecraft/class_9697;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_60002 craft +c net/minecraft/class_8062$class_8063 net/minecraft/recipe/SmithingTrimRecipe$Serializer + f Lcom/mojang/serialization/MapCodec; field_46109 CODEC + f Lnet/minecraft/class_9139; field_48365 PACKET_CODEC + m (Lnet/minecraft/class_8062;)Lnet/minecraft/class_1856; method_53784 method_53784 + p 0 recipe + m (Lnet/minecraft/class_8062;)Lnet/minecraft/class_1856; method_53787 method_53787 + p 0 recipe + m (Lnet/minecraft/class_8062;)Lnet/minecraft/class_1856; method_67219 method_67219 + p 0 recipe + m (Lnet/minecraft/class_8062;)Lnet/minecraft/class_1856; method_53786 method_53786 + p 0 recipe + m (Lnet/minecraft/class_8062;)Lnet/minecraft/class_6880; method_67217 method_67217 + p 0 recipe + m (Lnet/minecraft/class_8062;)Lnet/minecraft/class_1856; method_67218 method_67218 + p 0 recipe + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67216 method_67216 + p 0 instance + m (Lnet/minecraft/class_8062;)Lnet/minecraft/class_1856; method_67220 method_67220 + p 0 recipe + m (Lnet/minecraft/class_8062;)Lnet/minecraft/class_6880; method_67221 method_67221 + p 0 recipe +c net/minecraft/class_9390 net/minecraft/util/packrat/ParseErrorList + m (ILnet/minecraft/class_9401;Ljava/lang/Object;)V method_58305 add + p 2 suggestions + p 3 reason + p 1 cursor + m (ILjava/lang/Object;)V method_58306 add + p 2 reason + p 1 cursor + m (I)V method_58304 setCursor + p 1 cursor +c net/minecraft/class_9390$class_9391 net/minecraft/util/packrat/ParseErrorList$Impl + f [Lnet/minecraft/class_9390$class_9391$class_10840; field_49961 errors + f I field_49962 cursor + f I field_57525 topIndex + m ()Ljava/util/List; method_58307 getErrors + m (Lnet/minecraft/class_9401;Ljava/lang/Object;)V method_68216 add + p 1 suggestions + p 2 reason + m (I)V method_58309 moveCursor + p 1 cursor + m ()I method_58308 getCursor +c net/minecraft/class_9390$class_9391$class_10840 net/minecraft/util/packrat/ParseErrorList$Impl$Entry + f Lnet/minecraft/class_9401; field_57526 suggestions + f Ljava/lang/Object; field_57527 reason +c net/minecraft/class_9390$class_10841 net/minecraft/util/packrat/ParseErrorList$Noop +c net/minecraft/class_8060 net/minecraft/recipe/SmithingTransformRecipe + f Ljava/util/Optional; field_42030 template + f Lnet/minecraft/class_9887; field_52605 ingredientPlacement + f Lnet/minecraft/class_1856; field_42031 base + f Lnet/minecraft/class_10591; field_42033 result + f Ljava/util/Optional; field_42032 addition + m (Lnet/minecraft/class_9697;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_60000 craft + m (Ljava/util/Optional;Lnet/minecraft/class_1856;Ljava/util/Optional;Lnet/minecraft/class_10591;)V + p 4 result + p 3 addition + p 2 base + p 1 template +c net/minecraft/class_8060$class_8061 net/minecraft/recipe/SmithingTransformRecipe$Serializer + f Lnet/minecraft/class_9139; field_48364 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_46108 CODEC + m (Lnet/minecraft/class_8060;)Ljava/util/Optional; method_53783 method_53783 + p 0 recipe + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53780 method_53780 + p 0 instance + m (Lnet/minecraft/class_8060;)Ljava/util/Optional; method_53781 method_53781 + p 0 recipe + m (Lnet/minecraft/class_8060;)Lnet/minecraft/class_10591; method_53779 method_53779 + p 0 recipe + m (Lnet/minecraft/class_8060;)Ljava/util/Optional; method_61706 method_61706 + p 0 recipe + m (Lnet/minecraft/class_8060;)Lnet/minecraft/class_10591; method_61703 method_61703 + p 0 recipe + m (Lnet/minecraft/class_8060;)Lnet/minecraft/class_1856; method_61705 method_61705 + p 0 recipe + m (Lnet/minecraft/class_8060;)Lnet/minecraft/class_1856; method_53782 method_53782 + p 0 recipe + m (Lnet/minecraft/class_8060;)Ljava/util/Optional; method_61704 method_61704 + p 0 recipe +c net/minecraft/class_8036 net/minecraft/network/handler/PacketUnbundler + f Lnet/minecraft/class_8039; field_48535 bundleHandler + m (Lnet/minecraft/class_8039;)V + p 1 bundleHandler + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/class_2596;Ljava/util/List;)V method_48319 encode + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Ljava/util/List;)V encode encode + p 2 packet + p 3 packets + p 1 context +c net/minecraft/class_9368 net/minecraft/util/collection/ListOperation + f Lcom/mojang/serialization/MapCodec; field_51424 UNLIMITED_SIZE_CODEC + m ()Lnet/minecraft/class_9368$class_9373; method_58191 getMode + m (ILnet/minecraft/class_9368;)Lcom/mojang/serialization/DataResult; method_58458 method_58458 + p 1 operation + m (Lnet/minecraft/class_9368$class_9373;)Lcom/mojang/serialization/MapCodec; method_58459 method_58459 + p 0 mode + m (Ljava/util/List;Ljava/util/List;I)Ljava/util/List; method_58192 apply + p 2 values + p 3 maxSize + p 1 current + m (Ljava/util/List;Ljava/util/List;)Ljava/util/List; method_59742 apply + p 1 current + p 2 values + m (I)Lcom/mojang/serialization/MapCodec; method_58456 createCodec + p 0 maxSize +c net/minecraft/class_9368$class_9369 net/minecraft/util/collection/ListOperation$Append + f Lcom/mojang/serialization/MapCodec; field_49848 CODEC + f Lorg/slf4j/Logger; field_49849 LOGGER + f Lnet/minecraft/class_9368$class_9369; field_49847 INSTANCE +c net/minecraft/class_9368$class_9677 net/minecraft/util/collection/ListOperation$Values + f Lnet/minecraft/class_9368; comp_2652 operation + f Ljava/util/List; comp_2651 value + m (Lcom/mojang/serialization/Codec;I)Lcom/mojang/serialization/Codec; method_59828 createCodec + p 0 codec + p 1 maxSize + m (Ljava/util/List;)Ljava/util/List; method_59831 apply + p 1 current + m (Lnet/minecraft/class_9368$class_9677;)Lnet/minecraft/class_9368; method_59830 method_59830 + p 0 values + m (Lcom/mojang/serialization/Codec;ILcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59829 method_59829 + p 2 instance + m (Lnet/minecraft/class_9368$class_9677;)Ljava/util/List; method_59832 method_59832 + p 0 values + m ()Ljava/util/List; comp_2651 value + m ()Lnet/minecraft/class_9368; comp_2652 operation + m (Ljava/util/List;Lnet/minecraft/class_9368;)V + p 1 value + p 2 operation +c net/minecraft/class_9368$class_9370 net/minecraft/util/collection/ListOperation$Insert + f Lcom/mojang/serialization/MapCodec; field_49850 CODEC + f Lorg/slf4j/Logger; field_49851 LOGGER + f I comp_2463 offset + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58194 method_58194 + p 0 instance + m ()I comp_2463 offset + m (I)V + p 1 offset +c net/minecraft/class_9368$class_9372 net/minecraft/util/collection/ListOperation$ReplaceSection + f Lcom/mojang/serialization/MapCodec; field_49854 CODEC + f Lorg/slf4j/Logger; field_49855 LOGGER + f Ljava/util/Optional; comp_2465 size + f I comp_2464 offset + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58196 method_58196 + p 0 instance + m (I)V + p 1 offset + m ()Ljava/util/Optional; comp_2465 size + m ()I comp_2464 offset + m (ILjava/util/Optional;)V + p 1 offset + p 2 size +c net/minecraft/class_9368$class_9371 net/minecraft/util/collection/ListOperation$ReplaceAll + f Lcom/mojang/serialization/MapCodec; field_49853 CODEC + f Lnet/minecraft/class_9368$class_9371; field_49852 INSTANCE +c net/minecraft/class_9368$class_9373 net/minecraft/util/collection/ListOperation$Mode + f Lcom/mojang/serialization/Codec; field_49860 CODEC + f Lcom/mojang/serialization/MapCodec; field_49863 codec + f Ljava/lang/String; field_49862 id + f Lnet/minecraft/class_9368$class_9373; field_49859 APPEND + f Lnet/minecraft/class_9368$class_9373; field_49857 REPLACE_SECTION + f Lnet/minecraft/class_9368$class_9373; field_49858 INSERT + f Lnet/minecraft/class_9368$class_9373; field_49856 REPLACE_ALL + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/serialization/MapCodec;)V + p 4 codec + p 3 id + m ()Lcom/mojang/serialization/MapCodec; method_58197 getCodec +c net/minecraft/class_8037 net/minecraft/network/packet/BundleSplitterPacket +c net/minecraft/class_9366 net/minecraft/block/HeavyCoreBlock + f Lcom/mojang/serialization/MapCodec; field_49831 CODEC + f Lnet/minecraft/class_2746; field_52631 WATERLOGGED + f Lnet/minecraft/class_265; field_49833 OUTLINE_SHAPE +c net/minecraft/class_8035 net/minecraft/network/handler/PacketBundler + f Lnet/minecraft/class_8039$class_8040; field_41869 currentBundler + f Lnet/minecraft/class_8039; field_48534 handler + m (Lnet/minecraft/class_8039;)V + p 1 handler + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/class_2596;Ljava/util/List;)V method_48318 decode + m (Lnet/minecraft/class_2596;)V method_56346 ensureNotTransitioning + p 0 packet + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Ljava/util/List;)V decode decode + p 3 packets + p 1 context + p 2 packet +c net/minecraft/class_9365 net/minecraft/predicate/component/ComponentSubPredicate + m (Ljava/lang/Object;)Z method_58167 test + p 1 component + m ()Lnet/minecraft/class_9331; method_58163 getComponentType +c net/minecraft/class_9364 net/minecraft/component/type/BookContent + m (Ljava/util/List;)Ljava/lang/Object; method_58186 withPages + p 1 pages + m ()Ljava/util/List; comp_2422 pages +c net/minecraft/class_8032 net/minecraft/client/gui/screen/AccessibilityOnboardingScreen + f Lnet/minecraft/class_315; field_41842 gameOptions + f Lnet/minecraft/class_2561; field_49490 TITLE_TEXT + f Z field_60457 fading + f F field_60458 closeTime + f Z field_41843 narratorPrompted + f F field_60456 fadeTime + f Lnet/minecraft/class_2561; field_41837 NARRATOR_PROMPT + f Lnet/minecraft/class_8020; field_41841 logoDrawer + f F field_41844 narratorPromptTimer + f Lnet/minecraft/class_8132; field_49491 layout + f Z field_42038 isNarratorUsable + f Ljava/lang/Runnable; field_46008 onClose + m (Lnet/minecraft/class_437;)V method_49296 setScreen + p 1 screen + m (Lnet/minecraft/class_4185;)V method_49297 method_49297 + p 1 button + m (Lnet/minecraft/class_4185;)V method_49298 method_49298 + p 1 button + m ()V method_48260 tickNarratorPrompt + m (Lnet/minecraft/class_315;Ljava/lang/Runnable;)V + p 2 onClose + p 1 gameOptions + m ()I method_48259 yMargin + m (ZLjava/lang/Runnable;)V method_53552 saveAndRun + p 1 dontShowAgain + p 2 callback + m (Lnet/minecraft/class_4185;)V method_48639 method_48639 + p 1 button + m (Lnet/minecraft/class_7847;)V method_52746 method_52746 + p 0 positioner +c net/minecraft/class_8030 net/minecraft/client/gui/ScreenRect + c A rectangle on the screen. + f Lnet/minecraft/class_8030; field_41835 EMPTY + f I comp_1197 height + f I comp_1196 width + f Lnet/minecraft/class_8029; comp_1195 position + m (Lnet/minecraft/class_8028;)Lnet/minecraft/class_8030; method_48251 add + c {@return a new rect of the same dimensions with the position incremented} + p 1 direction + m (Lnet/minecraft/class_8030;)Lnet/minecraft/class_8030; method_49701 intersection + c {@return the rect that intersects with {@code other}, or {@code null} if they do not\nintersect} + p 1 other + m (Lnet/minecraft/class_8027;IIII)Lnet/minecraft/class_8030; method_48250 of + c {@return a new rect} + p 2 otherAxisCoord + c the coordinate of the {@code axis}'s other axis + p 1 sameAxisCoord + c the coordinate of the {@code axis} axis + p 4 otherAxisLength + c the length of the edge whose axis is different from {@code axis} + p 3 sameAxisLength + c the length of the edge whose axis is the same as {@code axis} + p 0 axis + m ()I method_49621 getRight + m ()I method_49620 getLeft + m ()Lnet/minecraft/class_8030; method_48248 empty + c {@return an empty rect} + m (Lnet/minecraft/class_8028;)Lnet/minecraft/class_8030; method_48256 getBorder + c {@return a rect representing the border of this rect in the given {@code direction}}\n\n

Borders are one pixel thick. + p 1 direction + m (Lorg/joml/Matrix3x2fc;)Lnet/minecraft/class_8030; method_71523 transformEachVertex + p 1 matrix + m (Lnet/minecraft/class_8027;)I method_48249 getLength + c {@return the length of the rect in the given {@code axis}} + p 1 axis + m (IIII)V + p 4 height + p 3 width + p 2 otherAxis + p 1 sameAxis + m (Lnet/minecraft/class_8030;)Z method_71524 intersects + p 1 other + m (Lnet/minecraft/class_8030;)Z method_71525 contains + p 1 other + m (Lnet/minecraft/class_8027;)I method_48254 getCenter + c {@return the center of this rect in the given {@code axis}} + p 1 axis + m (Lnet/minecraft/class_8028;)I method_48255 getBoundingCoordinate + c {@return the coordinate of the bounding box in the given {@code direction}} + p 1 direction + m (Lnet/minecraft/class_8030;Lnet/minecraft/class_8027;)Z method_48253 overlaps + c {@return whether this rect overlaps with {@code rect} in {@code axis}} + p 1 other + p 2 axis + m (Lnet/minecraft/class_8030;)Z method_48252 overlaps + c {@return whether this rect overlaps with {@code rect} in both axes} + p 1 other + m ()I method_49618 getTop + m (II)Z method_58137 contains + p 1 x + p 2 y + m (Lorg/joml/Matrix3x2fc;)Lnet/minecraft/class_8030; method_65185 transform + p 1 matrix + m ()I method_49619 getBottom + m ()I comp_1196 width + m ()I comp_1197 height + m ()Lnet/minecraft/class_8029; comp_1195 position + m (Lnet/minecraft/class_8029;II)V + p 1 position + p 2 width + p 3 height +c net/minecraft/class_9362 net/minecraft/item/MaceItem + f F field_50000 KNOCKBACK_POWER + f I field_49824 ATTACK_DAMAGE_MODIFIER_VALUE + f F field_49999 KNOCKBACK_RANGE + f F field_49823 MINING_SPEED_MULTIPLIER + f F field_50141 HEAVY_SMASH_SOUND_FALL_DISTANCE_THRESHOLD + f F field_49825 ATTACK_SPEED_MODIFIER_VALUE + m (Lnet/minecraft/class_3222;)Lnet/minecraft/class_243; method_61658 getCurrentExplosionImpactPos + p 1 player + m ()Lnet/minecraft/class_9285; method_59532 createAttributeModifiers + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;Lnet/minecraft/class_1309;)V method_58409 method_58409 + p 2 entity + m ()Lnet/minecraft/class_9424; method_58412 createToolComponent + m (Lnet/minecraft/class_1309;)Z method_58659 shouldDealAdditionalDamage + p 0 attacker + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;Lnet/minecraft/class_1309;)Z method_58661 method_58661 + p 2 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1309;Lnet/minecraft/class_243;)D method_58662 getKnockback + p 2 distance + p 1 attacked + p 0 attacker + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)V method_58411 knockbackNearbyEntities + p 2 attacked + p 1 attacker + p 0 world + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)Ljava/util/function/Predicate; method_58660 getKnockbackPredicate + p 0 attacker + p 1 attacked +c net/minecraft/class_8031 net/minecraft/unused/packageinfo/PackageInfo8031 +c net/minecraft/class_9361 net/minecraft/predicate/component/ComponentPredicateTypes + f Lnet/minecraft/class_9360$class_8745; field_51391 WRITTEN_BOOK_CONTENT + f Lnet/minecraft/class_9360$class_8745; field_51392 ATTRIBUTE_MODIFIERS + f Lnet/minecraft/class_9360$class_8745; field_51393 TRIM + f Lnet/minecraft/class_9360$class_8745; field_51390 WRITABLE_BOOK_CONTENT + f Lnet/minecraft/class_9360$class_8745; field_51387 BUNDLE_CONTENTS + f Lnet/minecraft/class_9360$class_8745; field_51388 FIREWORK_EXPLOSION + f Lnet/minecraft/class_9360$class_8745; field_51389 FIREWORKS + f Lnet/minecraft/class_9360$class_8745; field_51386 CONTAINER + f Lnet/minecraft/class_9360$class_8745; field_52024 JUKEBOX_PLAYABLE + f Lnet/minecraft/class_9360$class_8745; field_49807 ENCHANTMENTS + f Lnet/minecraft/class_9360$class_8745; field_49808 STORED_ENCHANTMENTS + f Lnet/minecraft/class_9360$class_8745; field_49806 DAMAGE + f Lnet/minecraft/class_9360$class_8745; field_49809 POTION_CONTENTS + f Lnet/minecraft/class_9360$class_8745; field_49810 CUSTOM_DATA + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_9360$class_8745; method_58180 register + p 1 codec + p 0 id + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_9360$class_8745; method_58181 getDefault + p 0 registry +c net/minecraft/class_8038 net/minecraft/network/packet/BundlePacket + f Ljava/lang/Iterable; field_41876 packets + m (Ljava/lang/Iterable;)V + p 1 packets + m ()Ljava/lang/Iterable; method_48324 getPackets +c net/minecraft/class_8039 net/minecraft/network/handler/PacketBundleHandler + f I field_41878 MAX_PACKETS + m (Lnet/minecraft/class_2596;Ljava/util/function/Consumer;)V method_48327 forEachPacket + p 2 consumer + p 1 packet + m (Lnet/minecraft/class_9145;Ljava/util/function/Function;Lnet/minecraft/class_8037;)Lnet/minecraft/class_8039; method_48325 create + p 2 splitter + p 0 id + p 1 bundleFunction + m (Lnet/minecraft/class_2596;)Lnet/minecraft/class_8039$class_8040; method_48326 createBundler + p 1 splitter +c net/minecraft/class_8039$1 net/minecraft/network/handler/PacketBundleHandler$1 +c net/minecraft/class_8039$1$1 net/minecraft/network/handler/PacketBundleHandler$1$1 + f Ljava/util/List; field_41884 packets +c net/minecraft/class_8039$class_8040 net/minecraft/network/handler/PacketBundleHandler$Bundler + m (Lnet/minecraft/class_2596;)Lnet/minecraft/class_2596; method_48328 add + p 1 packet +c net/minecraft/class_9360 net/minecraft/predicate/component/ComponentPredicate + f Lcom/mojang/serialization/Codec; field_49805 PREDICATES_MAP_CODEC + f Lnet/minecraft/class_9139; field_58055 PREDICATES_MAP_PACKET_CODEC + f Lnet/minecraft/class_9139; field_58054 SINGLE_PREDICATE_PACKET_CODEC + m (Ljava/lang/String;)Lcom/mojang/serialization/MapCodec; method_67301 createCodec + p 0 predicateFieldName + m (Ljava/util/List;)Ljava/util/Map; method_68712 method_68712 + p 0 list + m (Lnet/minecraft/class_9473;)Z method_58161 test + p 1 components + m (Ljava/util/Map;)Ljava/util/List; method_68713 method_68713 + p 0 map +c net/minecraft/class_9360$class_12170 net/minecraft/predicate/component/ComponentPredicate$TypeImpl + f Lcom/mojang/serialization/MapCodec; field_63641 typedCodec + f Lcom/mojang/serialization/Codec; field_63640 predicateCodec + f Lnet/minecraft/class_9139; field_63642 packetCodec + m (Lnet/minecraft/class_9360;)Lnet/minecraft/class_9360$class_10727; method_75523 method_75523 + p 1 predicate + m (Lcom/mojang/serialization/Codec;)V + p 1 predicateCodec +c net/minecraft/class_9360$class_10727 net/minecraft/predicate/component/ComponentPredicate$Typed + f Lnet/minecraft/class_9360; comp_3629 predicate + f Lnet/minecraft/class_9360$class_8745; comp_3628 type + m (Lnet/minecraft/class_9360$class_8745;Lnet/minecraft/class_9360;)Lnet/minecraft/class_9360$class_10727; method_75519 method_75519 + p 1 predicate + m (Lnet/minecraft/class_9360$class_8745;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/MapCodec; method_75518 getCodec + p 1 valueCodec + p 0 type + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_9360$class_8745;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75517 method_75517 + p 2 instance + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_9360$class_10727; method_68714 fromEntry + p 0 entry + m ()Lnet/minecraft/class_9360; comp_3629 predicate + m ()Lnet/minecraft/class_9360$class_8745; comp_3628 type + m (Lnet/minecraft/class_9360$class_8745;Lnet/minecraft/class_9360;)V + p 1 type + p 2 predicate +c net/minecraft/class_9360$class_8745 net/minecraft/predicate/component/ComponentPredicate$Type + f Lnet/minecraft/class_9139; field_63639 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_63638 CODEC + m (Lnet/minecraft/class_9360$class_8745;)Lnet/minecraft/class_9360$class_8745; method_75522 method_75522 + p 0 type + m ()Lcom/mojang/serialization/Codec; method_67302 getPredicateCodec + m ()Lcom/mojang/serialization/MapCodec; method_67305 getTypedCodec + m ()Lnet/minecraft/class_9139; method_68716 getTypedPacketCodec + m (Lnet/minecraft/class_9360$class_8745;)Lcom/mojang/datafixers/util/Either; method_75521 fromType + p 0 type + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_9360$class_8745; method_75520 toType + p 0 either +c net/minecraft/class_9360$class_12168 net/minecraft/predicate/component/ComponentPredicate$OfExistence + f Lnet/minecraft/class_12167; field_63637 predicate + m ()Lnet/minecraft/class_9331; method_75516 getComponentType + m (Lnet/minecraft/class_9331;)Lnet/minecraft/class_9360$class_12168; method_75515 toPredicateType + p 0 type + m ()Lnet/minecraft/class_12167; method_75514 getPredicate + m (Lnet/minecraft/class_12167;)V + p 1 predicate +c net/minecraft/class_9360$class_12169 net/minecraft/predicate/component/ComponentPredicate$OfValue +c net/minecraft/class_8047 net/minecraft/screen/slot/ForgingSlotsManager + f Lnet/minecraft/class_8047$class_8049; field_41908 resultSlot + f Ljava/util/List; field_41907 inputSlots + m (I)Lnet/minecraft/class_8047$class_8049; method_48367 getInputSlot + p 1 index + m ()I method_48370 getResultSlotIndex + m ()Ljava/util/List; method_48368 getInputSlots + m ()I method_48369 getInputSlotCount + m ()Lnet/minecraft/class_8047$class_8048; method_48364 builder + m (Ljava/util/List;Lnet/minecraft/class_8047$class_8049;)V + p 1 inputSlots + p 2 resultSlot + m ()Lnet/minecraft/class_8047$class_8049; method_48366 getResultSlot +c net/minecraft/class_8047$class_8048 net/minecraft/screen/slot/ForgingSlotsManager$Builder + f Ljava/util/List; field_54596 inputs + f Lnet/minecraft/class_8047$class_8049; field_41910 resultSlot + m ()Lnet/minecraft/class_8047; method_48372 build + m (III)Lnet/minecraft/class_8047$class_8048; method_48373 output + p 3 y + p 2 x + p 1 slotId + m (Lnet/minecraft/class_1799;)Z method_48375 method_48375 + p 0 stack + m (IIILjava/util/function/Predicate;)Lnet/minecraft/class_8047$class_8048; method_48374 input + p 1 slotId + p 2 x + p 3 y + p 4 mayPlace +c net/minecraft/class_8047$class_8049 net/minecraft/screen/slot/ForgingSlotsManager$ForgingSlot + f I comp_1204 slotId + f Lnet/minecraft/class_8047$class_8049; field_41911 DEFAULT + f I comp_1206 y + f I comp_1205 x + f Ljava/util/function/Predicate; comp_1207 mayPlace + m ()I comp_1204 slotId + m (Lnet/minecraft/class_1799;)Z method_48376 method_48376 + p 0 stack + m ()Ljava/util/function/Predicate; comp_1207 mayPlace + m ()I comp_1205 x + m ()I comp_1206 y + m (IIILjava/util/function/Predicate;)V + p 1 slotId + p 2 x + p 3 y + p 4 mayPlace +c net/minecraft/class_9378 net/minecraft/loot/function/SetWrittenBookPagesLootFunction + f Lcom/mojang/serialization/MapCodec; field_49889 CODEC + f Ljava/util/List; field_49890 pages + f Lnet/minecraft/class_9368; field_49891 operation + m (Lnet/minecraft/class_9378;)Lnet/minecraft/class_9368; method_58222 method_58222 + p 0 function + m (Lnet/minecraft/class_9302;)Lnet/minecraft/class_9302; method_58221 apply + p 1 current + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58223 method_58223 + p 0 instance + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_9368;)V + p 1 conditions + p 3 operation + p 2 pages + m (Lnet/minecraft/class_9378;)Ljava/util/List; method_58224 method_58224 + p 0 function +c net/minecraft/class_9377 net/minecraft/loot/function/SetWritableBookPagesLootFunction + f Lcom/mojang/serialization/MapCodec; field_49886 CODEC + f Lnet/minecraft/class_9368; field_49888 operation + f Ljava/util/List; field_49887 pages + m (Lnet/minecraft/class_9377;)Lnet/minecraft/class_9368; method_58218 method_58218 + p 0 function + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_9368;)V + p 3 operation + p 2 pages + p 1 conditions + m (Lnet/minecraft/class_9301;)Lnet/minecraft/class_9301; method_58217 apply + p 1 current + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58219 method_58219 + p 0 instance + m (Lnet/minecraft/class_9377;)Ljava/util/List; method_58220 method_58220 + p 0 function +c net/minecraft/class_8046 net/minecraft/entity/Ownable + m ()Lnet/minecraft/class_1297; method_24921 getOwner +c net/minecraft/class_9376 net/minecraft/loot/function/SetFireworksLootFunction + f Ljava/util/Optional; field_49883 explosions + f Lnet/minecraft/class_9284; field_49882 DEFAULT_FIREWORKS + f Lcom/mojang/serialization/MapCodec; field_49881 CODEC + f Ljava/util/Optional; field_49885 flightDuration + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 conditions + p 2 explosions + p 3 flightDuration + m (Lnet/minecraft/class_9376;)Ljava/util/Optional; method_58215 method_58215 + p 0 function + m (Lnet/minecraft/class_9284;)Lnet/minecraft/class_9284; method_58212 apply + p 1 fireworksComponent + m (Lnet/minecraft/class_9376;)Ljava/util/Optional; method_58216 method_58216 + p 0 function + m (Lnet/minecraft/class_9284;Lnet/minecraft/class_9368$class_9677;)Ljava/util/List; method_59833 method_59833 + p 1 values + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58214 method_58214 + p 0 instance +c net/minecraft/class_8043 net/minecraft/network/packet/s2c/play/DamageTiltS2CPacket + f Lnet/minecraft/class_9139; field_47929 CODEC + f F comp_1203 yaw + f I comp_1202 id + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_1309;)V + p 1 entity + m (Lnet/minecraft/class_2602;)V method_48330 apply + m (Lnet/minecraft/class_2540;)V method_55881 write + p 1 buf + m ()F comp_1203 yaw + m ()I comp_1202 id + m (IF)V + p 1 id + p 2 yaw +c net/minecraft/class_9375 net/minecraft/loot/function/SetFireworkExplosionLootFunction + f Lcom/mojang/serialization/MapCodec; field_49874 CODEC + f Lnet/minecraft/class_9283; field_49875 DEFAULT_EXPLOSION + f Ljava/util/Optional; field_49880 twinkle + f Ljava/util/Optional; field_49879 trail + f Ljava/util/Optional; field_49877 colors + f Ljava/util/Optional; field_49878 fadeColors + f Ljava/util/Optional; field_49876 shape + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58207 method_58207 + p 0 instance + m (Lnet/minecraft/class_9375;)Ljava/util/Optional; method_58210 method_58210 + p 0 function + m (Lnet/minecraft/class_9375;)Ljava/util/Optional; method_58211 method_58211 + p 0 function + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 conditions + p 2 shape + p 3 colors + p 4 fadeColors + p 5 trail + p 6 twinkle + m (Lnet/minecraft/class_9375;)Ljava/util/Optional; method_58206 method_58206 + p 0 function + m (Lnet/minecraft/class_9283;)Lnet/minecraft/class_9283; method_58205 apply + p 1 current + m (Lnet/minecraft/class_9375;)Ljava/util/Optional; method_58209 method_58209 + p 0 function + m (Lnet/minecraft/class_9375;)Ljava/util/Optional; method_58208 method_58208 + p 0 function +c net/minecraft/class_8044 net/minecraft/server/command/SpawnArmorTrimsCommand + f Ljava/util/function/ToIntFunction; field_41889 MATERIAL_INDEX_GETTER + f Ljava/util/function/ToIntFunction; field_41888 PATTERN_INDEX_GETTER + f Ljava/util/List; field_41887 MATERIALS + f Ljava/util/List; field_41886 PATTERNS + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_56241 INVALID_PATTERN_EXCEPTION + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_48333 register + p 0 dispatcher + m (Lnet/minecraft/class_6880$class_6883;)Ljava/lang/Integer; method_67085 method_67085 + p 0 material + m (Lnet/minecraft/class_6880$class_6883;)Ljava/lang/Integer; method_67087 method_67087 + p 0 pattern + m (Lnet/minecraft/class_7225;)Ljava/util/List; method_67086 getArmorItems + p 0 itemRegistry + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_67083 method_67083 + p 0 pattern + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67080 method_67080 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1657;)I method_67081 execute + p 1 player + p 0 source + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1657;Lnet/minecraft/class_5321;)I method_67082 execute + p 0 source + p 1 player + p 2 pattern + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48334 method_48334 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1657;Ljava/util/stream/Stream;)I method_48336 execute + p 1 player + p 0 source + p 2 patterns + m (Ljava/util/List;Lnet/minecraft/class_6880$class_6883;)V method_67084 method_67084 + p 1 entry +c net/minecraft/class_9374 net/minecraft/loot/function/SetBookCoverLootFunction + f Ljava/util/Optional; field_49871 author + f Ljava/util/Optional; field_49872 title + f Lcom/mojang/serialization/MapCodec; field_49870 CODEC + f Ljava/util/Optional; field_49873 generation + m (Lnet/minecraft/class_9302;)Lnet/minecraft/class_9302; method_58200 apply + p 1 current + m (Lnet/minecraft/class_9374;)Ljava/util/Optional; method_58203 method_58203 + p 0 function + m (Lnet/minecraft/class_9374;)Ljava/util/Optional; method_58204 method_58204 + p 0 function + m (Lnet/minecraft/class_9374;)Ljava/util/Optional; method_58201 method_58201 + p 0 function + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58202 method_58202 + p 0 instance + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 conditions + p 4 generation + p 2 title + p 3 author +c net/minecraft/class_8042 net/minecraft/network/packet/s2c/play/BundleS2CPacket + m (Lnet/minecraft/class_2602;)V method_48329 apply +c net/minecraft/class_8014 net/minecraft/datafixer/fix/OptionsAccessibilityOnboardFix + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_48133 method_48133 + p 0 typed + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_48134 method_48134 + p 0 options +c net/minecraft/class_9346 net/minecraft/entity/passive/WolfVariant + f Lcom/mojang/serialization/Codec; field_49980 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_56274 NETWORK_CODEC + f Lnet/minecraft/class_9139; field_51944 ENTRY_PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_49724 CODEC + f Lnet/minecraft/class_10702; comp_3565 spawnConditions + f Lnet/minecraft/class_9346$class_10688; comp_3564 assetInfo + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67137 method_67137 + p 0 instance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67136 method_67136 + p 0 instance + m (Lnet/minecraft/class_9346$class_10688;)V + p 1 assetInfo + m ()Lnet/minecraft/class_9346$class_10688; comp_3564 assetInfo + m ()Lnet/minecraft/class_10702; comp_3565 spawnConditions + m (Lnet/minecraft/class_9346$class_10688;Lnet/minecraft/class_10702;)V + p 1 assetInfo + p 2 spawnConditions +c net/minecraft/class_9346$class_10688 net/minecraft/entity/passive/WolfVariant$WolfAssetInfo + f Lcom/mojang/serialization/Codec; field_56275 CODEC + f Lnet/minecraft/class_12079$class_10726; comp_3568 angry + f Lnet/minecraft/class_12079$class_10726; comp_3567 tame + f Lnet/minecraft/class_12079$class_10726; comp_3566 wild + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67138 method_67138 + p 0 instance + m ()Lnet/minecraft/class_12079$class_10726; comp_3567 tame + m ()Lnet/minecraft/class_12079$class_10726; comp_3566 wild + m ()Lnet/minecraft/class_12079$class_10726; comp_3568 angry + m (Lnet/minecraft/class_12079$class_10726;Lnet/minecraft/class_12079$class_10726;Lnet/minecraft/class_12079$class_10726;)V + p 1 wild + p 2 tame + p 3 angry +c net/minecraft/class_8015 net/minecraft/client/gui/navigation/GuiNavigationType + c An enum representing the type of navigation input method. + f Lnet/minecraft/class_8015; field_43097 KEYBOARD_ARROW + f Lnet/minecraft/class_8015; field_41780 KEYBOARD_TAB + f Lnet/minecraft/class_8015; field_41777 NONE + f Lnet/minecraft/class_8015; field_41778 MOUSE + m ()Z method_48182 isMouse + m ()Z method_48183 isKeyboard +c net/minecraft/class_9344 net/minecraft/datafixer/fix/PlayerHeadBlockProfileFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_58055 fixProfile + p 1 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_8012 net/minecraft/util/Colors + c Contains constants for commonly used colors in {@code 0xAARRGGBB} format. + f I field_42973 WHITE + c Represents the color white, {@code 0xFFFFFFFF}. + f I field_42974 BLACK + c Represents the color black, {@code 0xFF000000}. + f I field_49788 ALTERNATE_WHITE + c Represents a variant of the color white, used so that the two alternate with\neach other, {@code 0xFFBABABA}. + f I field_45073 LIGHT_GRAY + c Represents the color light gray, {@code 0xFFA0A0A0}. + f I field_46768 LIGHT_YELLOW + c Represents the color light yellow, {@code 0xFFFFFF55}. + f I field_46767 YELLOW + c Represents the color yellow, {@code 0xFFFFFF00}. + f I field_44941 GRAY + c Represents the color gray, {@code 0xFF808080}. + f I field_52393 PURPLE + c Represents the color purple, {@code 0xFF500050}. + f I field_60347 DARK_GRAY + c Represents the color dark gray, {@code FF404040}. + f I field_63680 LIGHTER_GRAY + c Represents the color lighter gray, {@code 0xFFE0E0E0}. + f I field_46652 LIGHT_RED + c Represents the color light red, {@code 0xFFDF5050}. + f I field_54557 CYAN + c Represents the color cyan, {@code 0xFF57FFE1}. + f I field_52313 BLUE + c Represents the color blue, {@code 0xFF0000FF}. + f I field_52312 GREEN + c Represents the color green, {@code 0xFF00FF00}. + f I field_41758 RED + c Represents the color red, {@code 0xFFFF0000}. + f I field_60979 LIGHT_PINK + c Represents the color light pink, {@code 0xFFFFCCCC}. +c net/minecraft/class_9343 net/minecraft/datafixer/fix/LodestoneCompassComponentFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_8013 net/minecraft/util/math/RotationCalculator + f I field_41761 precision + f I field_41760 max + f F field_41763 degreesPerRotation + f F field_41762 rotationPerDegrees + m ()I method_48120 getMax + m (Lnet/minecraft/class_2350;)I method_48124 toRotation + p 1 direction + m (II)Z method_48123 areRotationsParallel + p 2 beta + p 1 alpha + m (I)F method_48126 toWrappedDegrees + p 1 rotation + m (I)V + p 1 precision + m (I)I method_48127 clamp + p 1 rotationBits + m (I)F method_48122 toDegrees + p 1 rotation + m (F)I method_48125 toClampedRotation + p 1 degrees + m (F)I method_48121 toRotation + p 1 degrees +c net/minecraft/class_9342 net/minecraft/datafixer/fix/ComponentFix + f Ljava/lang/String; field_49715 oldComponentId + f Ljava/lang/String; field_49716 newComponentId + f Ljava/lang/String; field_49714 name + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_58045 fixComponent + p 1 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;)V + p 1 outputSchema + p 2 name + p 3 componentId + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 2 name + p 1 outputSchema + p 4 newComponentId + p 3 oldComponentId +c net/minecraft/class_8011 net/minecraft/server/command/RideCommand + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_41742 NOT_RIDING_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_41745 CANT_RIDE_PLAYERS_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_41746 RIDE_LOOP_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_41744 GENERIC_FAILURE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_42239 WRONG_DIMENSION_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_41743 ALREADY_RIDING_EXCEPTION + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_48084 method_48084 + p 1 vehicle + p 0 rider + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;)I method_48081 executeDismount + p 1 rider + p 0 source + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_48083 method_48083 + p 0 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)Z method_48077 method_48077 + p 1 passenger + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_48086 method_48086 + p 1 vehicle + p 0 rider + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)I method_48082 executeMount + p 1 rider + p 2 vehicle + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48079 method_48079 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_48078 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48085 method_48085 + p 0 context +c net/minecraft/class_9340 net/minecraft/data/loottable/vanilla/VanillaShearingLootTableGenerator + f Lnet/minecraft/class_7225$class_7874; comp_2792 registries + m (Ljava/util/function/BiConsumer;Lnet/minecraft/class_1767;Lnet/minecraft/class_1935;)V method_62737 method_62737 + p 2 wool + p 1 color + m ()Lnet/minecraft/class_7225$class_7874; comp_2792 registries + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries +c net/minecraft/class_8019 net/minecraft/client/gui/widget/NarratedMultilineTextWidget + f Lnet/minecraft/class_8019$class_11763; field_62116 backgroundRendering + f Z field_45355 alwaysShowBorders + f I field_41802 DEFAULT_MARGIN + f I field_63507 customWidth + f I field_49480 margin + m ()V method_75358 updateHeight + m ()V method_75357 updateWidth + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_327;)Lnet/minecraft/class_8019$class_12141; method_75352 builder + p 1 textRenderer + p 0 text + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_327;I)Lnet/minecraft/class_8019$class_12141; method_75353 builder + p 0 text + p 1 textRenderer + p 2 margin + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_327;IILnet/minecraft/class_8019$class_11763;Z)V + p 2 textRenderer + p 3 margin + p 4 customWidth + p 5 backgroundRendering + p 6 alwaysShowBorders + p 1 text + m ()I method_75356 getMargin +c net/minecraft/class_8019$class_12141 net/minecraft/client/gui/widget/NarratedMultilineTextWidget$Builder + f Lnet/minecraft/class_2561; field_63508 text + f Lnet/minecraft/class_327; field_63509 textRenderer + f I field_63510 margin + f Z field_63512 alwaysShowBorders + f I field_63511 customWidth + f Lnet/minecraft/class_8019$class_11763; field_63513 backgroundRendering + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_327;)V + p 2 textRenderer + p 1 text + m (Lnet/minecraft/class_8019$class_11763;)Lnet/minecraft/class_8019$class_12141; method_75361 backgroundRendering + p 1 backgroundRendering + m ()Lnet/minecraft/class_8019; method_75359 build + m (I)Lnet/minecraft/class_8019$class_12141; method_75360 width + p 1 width + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_327;I)V + p 2 textRenderer + p 3 margin + p 1 text + m (I)Lnet/minecraft/class_8019$class_12141; method_75363 innerWidth + p 1 width + m (Z)Lnet/minecraft/class_8019$class_12141; method_75362 alwaysShowBorders + p 1 alwaysShowBorders +c net/minecraft/class_8019$class_11763 net/minecraft/client/gui/widget/NarratedMultilineTextWidget$BackgroundRendering + f Lnet/minecraft/class_8019$class_11763; field_62119 NEVER + f Lnet/minecraft/class_8019$class_11763; field_62117 ALWAYS + f Lnet/minecraft/class_8019$class_11763; field_62118 ON_FOCUS +c net/minecraft/class_9349 net/minecraft/inventory/SlotRanges + f Ljava/util/List; field_49745 SLOT_RANGES + f Lcom/mojang/serialization/Codec; field_49744 CODEC + f Ljava/util/function/Function; field_49746 FROM_NAME + m (Ljava/lang/String;)Lnet/minecraft/class_9348; method_58080 fromName + p 0 name + m ()Ljava/util/stream/Stream; method_58088 streamSingleSlotNames + m (Ljava/lang/String;I)Lnet/minecraft/class_9348; method_58081 create + p 0 name + p 1 slotId + m (Ljava/util/List;Ljava/lang/String;II)V method_58086 createAndAdd + p 3 slotCount + p 2 firstSlotId + p 1 baseName + p 0 list + m ()Ljava/util/stream/Stream; method_58078 streamNames + m (Ljava/lang/String;[I)Lnet/minecraft/class_9348; method_58083 create + p 0 name + p 1 slotIds + m (Ljava/lang/String;Lit/unimi/dsi/fastutil/ints/IntList;)Lnet/minecraft/class_9348; method_58082 create + p 0 name + p 1 slotIds + m (Ljava/util/ArrayList;)V method_58084 method_58084 + p 0 list + m (Lnet/minecraft/class_9348;)Z method_58079 method_58079 + p 0 slotRange + m (Ljava/util/List;Ljava/lang/String;I)V method_58085 createAndAdd + p 1 name + p 0 list + p 2 slotId + m (Ljava/util/List;Ljava/lang/String;[I)V method_58087 createAndAdd + p 1 name + p 2 slots + p 0 list +c net/minecraft/class_8016 net/minecraft/client/gui/navigation/GuiNavigationPath + c Represents a path of currently navigating elements from the root element\nto the leaf. + m (Lnet/minecraft/class_4069;Lnet/minecraft/class_8016;)Lnet/minecraft/class_8016; method_48192 of + p 1 childPath + p 0 element + m (Lnet/minecraft/class_364;)Lnet/minecraft/class_8016; method_48193 of + p 0 leaf + m (Z)V method_48195 setFocused + c Sets whether the path is focused. This propagates to children. + p 1 focused + m (Lnet/minecraft/class_364;[Lnet/minecraft/class_4069;)Lnet/minecraft/class_8016; method_48194 of + p 1 elements + p 0 leaf + m ()Lnet/minecraft/class_364; comp_1188 component +c net/minecraft/class_8016$class_8017 net/minecraft/client/gui/navigation/GuiNavigationPath$Leaf + f Lnet/minecraft/class_364; comp_1188 component + m (Lnet/minecraft/class_364;)V + p 1 component +c net/minecraft/class_8016$class_8018 net/minecraft/client/gui/navigation/GuiNavigationPath$IntermediaryNode + f Lnet/minecraft/class_4069; comp_1189 component + f Lnet/minecraft/class_8016; comp_1190 childPath + m ()Lnet/minecraft/class_4069; comp_1189 component + m ()Lnet/minecraft/class_8016; comp_1190 childPath + m (Lnet/minecraft/class_4069;Lnet/minecraft/class_8016;)V + p 1 component + p 2 childPath +c net/minecraft/class_9348 net/minecraft/inventory/SlotRange + m ()I method_58077 getSlotCount + m (Ljava/lang/String;Lit/unimi/dsi/fastutil/ints/IntList;)Lnet/minecraft/class_9348; method_58076 create + p 1 slotIds + p 0 name + m ()Lit/unimi/dsi/fastutil/ints/IntList; method_58075 getSlotIds +c net/minecraft/class_9347 net/minecraft/entity/passive/WolfVariants + f Lnet/minecraft/class_5321; field_51588 DEFAULT + f Lnet/minecraft/class_5321; field_49726 SPOTTED + f Lnet/minecraft/class_5321; field_49725 PALE + f Lnet/minecraft/class_5321; field_49728 BLACK + f Lnet/minecraft/class_5321; field_49727 SNOWY + f Lnet/minecraft/class_5321; field_49729 ASHEN + f Lnet/minecraft/class_5321; field_49731 WOODS + f Lnet/minecraft/class_5321; field_49730 RUSTY + f Lnet/minecraft/class_5321; field_49733 STRIPED + f Lnet/minecraft/class_5321; field_49732 CHESTNUT + m (Lnet/minecraft/class_7891;)V method_58068 bootstrap + p 0 registry + m (Lnet/minecraft/class_6885;)Lnet/minecraft/class_10702; method_67140 createSpawnConditions + p 0 requiredBiomes + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Ljava/lang/String;Lnet/minecraft/class_5321;)V method_58069 register + p 0 registry + p 3 biome + p 2 textureName + p 1 key + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Ljava/lang/String;Lnet/minecraft/class_10702;)V method_58171 register + p 0 registry + p 1 key + p 2 textureName + p 3 spawnConditions + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_58066 of + p 0 id + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Ljava/lang/String;Lnet/minecraft/class_6862;)V method_58170 register + p 0 registry + p 2 textureName + p 1 key + p 3 biomeTag +c net/minecraft/class_9356 net/minecraft/predicate/item/EnchantmentsPredicate + f Ljava/util/List; field_49799 enchantments + m (Ljava/util/List;)Lnet/minecraft/class_9356$class_9358; method_58176 storedEnchantments + p 0 storedEnchantments + m (Ljava/util/List;)V + p 1 enchantments + m ()Ljava/util/List; method_58175 getEnchantments + m (Lnet/minecraft/class_9304;)Z method_58172 test + m (Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; method_58174 createCodec + p 0 predicateFunction + m (Ljava/util/List;)Lnet/minecraft/class_9356$class_9357; method_58173 enchantments + p 0 enchantments +c net/minecraft/class_9356$class_9358 net/minecraft/predicate/item/EnchantmentsPredicate$StoredEnchantments + f Lcom/mojang/serialization/Codec; field_49801 CODEC +c net/minecraft/class_9356$class_9357 net/minecraft/predicate/item/EnchantmentsPredicate$Enchantments + f Lcom/mojang/serialization/Codec; field_49800 CODEC +c net/minecraft/class_9355 net/minecraft/predicate/item/DamagePredicate + f Lcom/mojang/serialization/Codec; field_49798 CODEC + f Lnet/minecraft/class_2096$class_2100; comp_2460 damage + f Lnet/minecraft/class_2096$class_2100; comp_2459 durability + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58164 method_58164 + p 0 instance + m (Lnet/minecraft/class_2096$class_2100;)Lnet/minecraft/class_9355; method_58165 durability + p 0 durability + m ()Lnet/minecraft/class_2096$class_2100; comp_2460 damage + m ()Lnet/minecraft/class_2096$class_2100; comp_2459 durability + m (Lnet/minecraft/class_2096$class_2100;Lnet/minecraft/class_2096$class_2100;)V + p 1 durability + p 2 damage +c net/minecraft/class_8023 net/minecraft/client/gui/navigation/GuiNavigation + c Represents a directional navigation initiated by keyboard. + m ()Lnet/minecraft/class_8028; method_48231 getDirection +c net/minecraft/class_8023$class_8026 net/minecraft/client/gui/navigation/GuiNavigation$Tab + f Z comp_1192 forward + m ()Z comp_1192 forward + m (Z)V + p 1 forward +c net/minecraft/class_8023$class_8025 net/minecraft/client/gui/navigation/GuiNavigation$Down +c net/minecraft/class_8023$class_8024 net/minecraft/client/gui/navigation/GuiNavigation$Arrow + f Lnet/minecraft/class_8028; comp_1191 direction + m ()Lnet/minecraft/class_8028; comp_1191 direction + m (Lnet/minecraft/class_8028;)V + p 1 direction +c net/minecraft/class_9354 net/minecraft/predicate/component/CustomDataPredicate + f Lcom/mojang/serialization/Codec; field_49797 CODEC + f Lnet/minecraft/class_2105; comp_2458 value + m (Lnet/minecraft/class_2105;)Lnet/minecraft/class_9354; method_58162 customData + p 0 value + m ()Lnet/minecraft/class_2105; comp_2458 value + m (Lnet/minecraft/class_2105;)V + p 1 value +c net/minecraft/class_8021 net/minecraft/client/gui/widget/Widget + m ()Lnet/minecraft/class_8030; method_48202 getNavigationFocus + m (I)V method_46419 setY + p 1 y + m (II)V method_48229 setPosition + p 1 x + p 2 y + m ()I method_25364 getHeight + m ()I method_46426 getX + m (Ljava/util/function/Consumer;)V method_48206 forEachChild + p 1 consumer + m ()I method_46427 getY + m ()I method_25368 getWidth + m (I)V method_46421 setX + p 1 x +c net/minecraft/class_8022 net/minecraft/unused/packageinfo/PackageInfo8022 +c net/minecraft/class_9351 net/minecraft/command/argument/SlotRangeArgumentType + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_49768 UNKNOWN_SLOT_EXCEPTION + f Ljava/util/Collection; field_49767 EXAMPLES + m ()Lnet/minecraft/class_9351; method_58130 slotRange + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 stringReader + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_9348; method_58132 parse + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58134 method_58134 + p 0 slotRange + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 2 suggestionsBuilder + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_9348; method_58133 getSlotRange + p 0 context + p 1 name +c net/minecraft/class_9350 net/minecraft/predicate/entity/SlotsPredicate + f Lcom/mojang/serialization/Codec; field_49755 CODEC + f Ljava/util/Map; comp_2455 slots + m (Lnet/minecraft/class_12260;Lnet/minecraft/class_2073;Lit/unimi/dsi/fastutil/ints/IntList;)Z method_58120 matches + p 1 itemPredicate + p 2 slotIds + m (Lnet/minecraft/class_12260;)Z method_58119 matches + m ()Ljava/util/Map; comp_2455 slots + m (Ljava/util/Map;)V + p 1 slots +c net/minecraft/class_8020 net/minecraft/client/gui/LogoDrawer + f I field_41807 LOGO_REGION_WIDTH + f I field_44546 EDITION_TEXTURE_HEIGHT + f I field_44547 LOGO_AND_EDITION_OVERLAP + f I field_41809 LOGO_BASE_Y + f I field_41808 LOGO_REGION_HEIGHT + f Z field_41811 ignoreAlpha + f Lnet/minecraft/class_2960; field_44540 MINCERAFT_TEXTURE + f Z field_41810 minceraft + f I field_44541 LOGO_TEXTURE_WIDTH + f I field_44544 EDITION_REGION_HEIGHT + f I field_44545 EDITION_TEXTURE_WIDTH + f I field_44542 LOGO_TEXTURE_HEIGHT + f I field_44543 EDITION_REGION_WIDTH + f Lnet/minecraft/class_2960; field_41806 EDITION_TEXTURE + f Lnet/minecraft/class_2960; field_41805 LOGO_TEXTURE + m (Lnet/minecraft/class_332;IF)V method_48209 draw + p 3 alpha + p 1 context + p 2 screenWidth + m (Lnet/minecraft/class_332;IFI)V method_48210 draw + p 4 y + p 3 alpha + p 2 screenWidth + p 1 context + m ()Z method_71053 shouldIgnoreAlpha + m (Z)V + p 1 ignoreAlpha +c net/minecraft/class_8029 net/minecraft/client/gui/ScreenPos + c Represents the position of a {@link ScreenRect}. + f I comp_1194 y + f I comp_1193 x + m (Lnet/minecraft/class_8027;II)Lnet/minecraft/class_8029; method_48246 of + p 0 axis + p 1 sameAxis + p 2 otherAxis + m (Lnet/minecraft/class_8027;)I method_48245 getComponent + p 1 axis + m (Lnet/minecraft/class_8028;)Lnet/minecraft/class_8029; method_48247 add + p 1 direction + m ()I comp_1193 x + m ()I comp_1194 y + m (II)V + p 1 x + p 2 y +c net/minecraft/class_9359 net/minecraft/predicate/item/PotionContentsPredicate + f Lcom/mojang/serialization/Codec; field_49802 CODEC + f Lnet/minecraft/class_6885; comp_2461 potions + m (Lnet/minecraft/class_6885;)Lnet/minecraft/class_9360; method_58178 potionContents + p 0 potions + m (Lnet/minecraft/class_1844;)Z method_58177 test + m ()Lnet/minecraft/class_6885; comp_2461 potions + m (Lnet/minecraft/class_6885;)V + p 1 potions +c net/minecraft/class_8027 net/minecraft/client/gui/navigation/NavigationAxis + f Lnet/minecraft/class_8027; field_41822 HORIZONTAL + f Lnet/minecraft/class_8027; field_41823 VERTICAL + m ()Lnet/minecraft/class_8028; method_48234 getPositiveDirection + m ()Lnet/minecraft/class_8027; method_48232 getOther + m ()Lnet/minecraft/class_8028; method_48235 getNegativeDirection + m (Z)Lnet/minecraft/class_8028; method_48233 getDirection + p 1 positive +c net/minecraft/class_8028 net/minecraft/client/gui/navigation/NavigationDirection + f Lit/unimi/dsi/fastutil/ints/IntComparator; field_41830 comparator + f Lnet/minecraft/class_8028; field_41829 RIGHT + f Lnet/minecraft/class_8028; field_41826 UP + f Lnet/minecraft/class_8028; field_41827 DOWN + f Lnet/minecraft/class_8028; field_41828 LEFT + m (II)I method_48242 method_48242 + p 1 a + p 2 b + m ()Lit/unimi/dsi/fastutil/ints/IntComparator; method_48243 getComparator + c {@return the comparator that sorts the coordinates in ascending order} + m ()Lnet/minecraft/class_8028; method_48239 getOpposite + m (II)Z method_48240 isBefore + c {@return whether the coordinate {@code a} comes before {@code b}}\n\n

For example, if navigating downwards, {@code 1} comes before {@code 2},\nwhile the opposite is true if navigating upwards. This always returns\n{@code false} if two arguments are equal.\n\n@see #isAfter + p 1 a + p 2 b + m ()Lnet/minecraft/class_8027; method_48237 getAxis + m ()Z method_48241 isPositive + m (II)Z method_48238 isAfter + c {@return whether the coordinate {@code a} comes after {@code b}}\n\n

For example, if navigating downwards, {@code 2} comes after {@code 1},\nwhile the opposite is true if navigating upwards. This always returns\n{@code false} if two arguments are equal.\n\n@see #isBefore + p 2 b + p 1 a +c net/minecraft/class_9323 net/minecraft/component/ComponentMap + f Lnet/minecraft/class_9323; field_49584 EMPTY + f Lcom/mojang/serialization/Codec; field_50234 CODEC + m ()Ljava/util/Set; method_57831 getTypes + m ()Z method_57837 isEmpty + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_60388 createCodecFromValueMap + p 0 typeToValueMapCodec + m ()Ljava/util/stream/Stream; method_57833 stream + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_60386 createCodec + p 0 componentTypeCodec + m (Lnet/minecraft/class_9331;)Z method_57832 contains + p 1 type + m (Lnet/minecraft/class_9331;)Lnet/minecraft/class_9336; method_57836 method_57836 + p 1 type + m ()Lnet/minecraft/class_9323$class_9324; method_57827 builder + m (Lnet/minecraft/class_9323;Lnet/minecraft/class_9323;)Lnet/minecraft/class_9323; method_59771 of + p 0 base + p 1 overrides + m (Ljava/util/function/Predicate;)Lnet/minecraft/class_9323; method_57828 filtered + p 1 predicate + m ()I method_57835 size + m (Lnet/minecraft/class_9323;)Lcom/mojang/serialization/DataResult; method_60387 method_60387 + p 0 componentMap +c net/minecraft/class_9323$class_9324 net/minecraft/component/ComponentMap$Builder + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; field_49587 components + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Lnet/minecraft/class_9323$class_9324; method_57840 add + p 2 value + p 1 type + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)V method_58756 put + p 1 type + p 2 value + m ()Lnet/minecraft/class_9323; method_57838 build + m (Lnet/minecraft/class_9323;)Lnet/minecraft/class_9323$class_9324; method_57839 addAll + p 1 componentSet + m (Ljava/util/Map;)Lnet/minecraft/class_9323; method_58755 build + p 0 components +c net/minecraft/class_9323$class_9324$class_9325 net/minecraft/component/ComponentMap$Builder$SimpleComponentMap + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; comp_2440 map + m ()Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; comp_2440 map + m (Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;)V + p 1 map +c net/minecraft/class_9322 net/minecraft/component/ComponentHolder + c An object that holds components. Note that this interface does not expose\nmethods to modify the held components.\n\n

Component holders usually have "base" components and the overrides to the base\n(usually referred to as "changes"). The overrides may set additional components,\nmodify the values from the base-provided default, or "unset"/remove base values.\nMethods in this interface expose the final value, after applying the changes.\n\n@see ComponentMap\n@see ComponentChanges + m (Ljava/lang/Class;)Ljava/util/stream/Stream; method_62984 streamAll + p 1 valueClass + m (Ljava/lang/Class;Ljava/lang/Object;)Z method_62985 method_62985 + p 1 value + m (Ljava/lang/Object;)Ljava/lang/Object; method_62986 method_62986 + p 0 value + m (Lnet/minecraft/class_9331;)Z method_57826 contains + c {@return whether the held components include {@code type}}\n\n@implNote This is implemented as {@code get(type) != null}. + p 1 type + m ()Lnet/minecraft/class_9323; method_57353 getComponents +c net/minecraft/class_9321 net/minecraft/client/render/entity/model/BoggedEntityModel + f Lnet/minecraft/class_630; field_49563 mushrooms + m ()Lnet/minecraft/class_5607; method_57793 getTexturedModelData + m (Lnet/minecraft/class_10005;)V method_62068 setAngles +c net/minecraft/class_9320 net/minecraft/loot/function/SetComponentsLootFunction + f Lcom/mojang/serialization/MapCodec; field_49444 CODEC + f Lnet/minecraft/class_9326; field_49445 changes + m (Lnet/minecraft/class_9320;)Lnet/minecraft/class_9326; method_57649 method_57649 + p 0 function + m (Lnet/minecraft/class_9331;Ljava/lang/Object;Ljava/util/List;)Lnet/minecraft/class_117; method_57651 method_57651 + p 2 conditions + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Lnet/minecraft/class_120$class_121; method_57650 builder + p 1 value + p 0 componentType + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57652 method_57652 + p 0 instance + m (Ljava/util/List;Lnet/minecraft/class_9326;)V + p 2 changes + p 1 conditions +c net/minecraft/class_9329 net/minecraft/predicate/component/ComponentMapPredicate + f Lnet/minecraft/class_9329; field_49597 EMPTY + f Lcom/mojang/serialization/Codec; field_49595 CODEC + f Lnet/minecraft/class_9139; field_49596 PACKET_CODEC + f Ljava/util/List; field_49598 components + m ()Lnet/minecraft/class_9329$class_9330; method_57862 builder + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Lnet/minecraft/class_9329; method_66877 of + p 1 value + p 0 type + m ()Z method_68711 isEmpty + m (Lnet/minecraft/class_9323;)Lnet/minecraft/class_9329; method_57865 of + p 0 components + m (Lnet/minecraft/class_9329;)Ljava/util/Map; method_57869 method_57869 + p 0 predicate + m (Lnet/minecraft/class_9336;)Z method_58760 method_58760 + p 0 component + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_9329;)Ljava/util/List; method_57866 method_57866 + p 0 predicate + m (Ljava/lang/Object;)Z test test + p 1 components + m ()Lnet/minecraft/class_9326; method_57870 toChanges + m (Ljava/util/Map;)Lnet/minecraft/class_9329; method_57863 method_57863 + p 0 map + m (Ljava/util/List;)V + p 1 components + m (Lnet/minecraft/class_9473;)Z method_57868 test + m (Lnet/minecraft/class_9323;[Lnet/minecraft/class_9331;)Lnet/minecraft/class_9329; method_64096 ofFiltered + p 0 components + p 1 types +c net/minecraft/class_9329$class_9330 net/minecraft/predicate/component/ComponentMapPredicate$Builder + f Ljava/util/List; field_49599 components + m (Lnet/minecraft/class_9336;)Lnet/minecraft/class_9329$class_9330; method_64097 add + p 1 component + m ()Lnet/minecraft/class_9329; method_57871 build + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Lnet/minecraft/class_9329$class_9330; method_57872 add + p 1 type + p 2 value +c net/minecraft/class_9326 net/minecraft/component/ComponentChanges + f Lnet/minecraft/class_9139; field_58172 LENGTH_PREPENDED_PACKET_CODEC + f Lnet/minecraft/class_9139; field_49590 PACKET_CODEC + f Ljava/lang/String; field_49592 REMOVE_PREFIX + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; field_49591 changedComponents + f Lnet/minecraft/class_9326; field_49588 EMPTY + f Lcom/mojang/serialization/Codec; field_49589 CODEC + m (Ljava/util/function/Predicate;)Lnet/minecraft/class_9326; method_58757 withRemovedIf + p 1 removedTypePredicate + m (Lnet/minecraft/class_9326$class_10935;)Lnet/minecraft/class_9139; method_68840 createPacketCodec + p 0 packetCodecFunction + m ()Ljava/util/Set; method_57846 entrySet + m (Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;)Ljava/lang/String; method_57842 toString + p 0 changes + m (Ljava/util/Map;)Lnet/minecraft/class_9326; method_57843 method_57843 + p 0 changes + m ()Z method_57848 isEmpty + m (Lnet/minecraft/class_9323$class_9324;Ljava/util/Set;Lnet/minecraft/class_9331;Ljava/util/Optional;)V method_58758 method_58758 + p 2 type + p 3 value + m ()Lnet/minecraft/class_9326$class_9327; method_57841 builder + m (Lnet/minecraft/class_9326;)Ljava/util/Map; method_57844 method_57844 + p 0 changes + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;)V + p 1 changedComponents + m ()Lnet/minecraft/class_9326$class_9484; method_58759 toAddedRemovedPair + m (Lnet/minecraft/class_9331;)Ljava/util/Optional; method_57845 get + p 1 type + m ()I method_57847 size +c net/minecraft/class_9326$class_9484 net/minecraft/component/ComponentChanges$AddedRemovedPair + f Lnet/minecraft/class_9326$class_9484; field_50235 EMPTY + f Lnet/minecraft/class_9323; comp_2554 added + f Ljava/util/Set; comp_2555 removed + m ()Lnet/minecraft/class_9323; comp_2554 added + m ()Ljava/util/Set; comp_2555 removed + m (Lnet/minecraft/class_9323;Ljava/util/Set;)V + p 1 added + p 2 removed +c net/minecraft/class_9326$class_9327 net/minecraft/component/ComponentChanges$Builder + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; field_49593 changes + m ()Lnet/minecraft/class_9326; method_57852 build + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Lnet/minecraft/class_9326$class_9327; method_57854 add + p 1 type + p 2 value + m (Lnet/minecraft/class_9336;)Lnet/minecraft/class_9326$class_9327; method_57855 add + p 1 component + m (Lnet/minecraft/class_9331;)Lnet/minecraft/class_9326$class_9327; method_57853 remove + p 1 type +c net/minecraft/class_9326$3 net/minecraft/component/ComponentChanges$3 + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_9326;)V method_68842 encode + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_9326; method_68841 decode + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_9331;Ljava/lang/Object;)V method_68843 encode + p 1 buf + p 3 value + p 2 type +c net/minecraft/class_9326$class_9328 net/minecraft/component/ComponentChanges$Type + f Lcom/mojang/serialization/Codec; field_49594 CODEC + f Lnet/minecraft/class_9331; comp_2441 type + f Z comp_2442 removed + m (Lnet/minecraft/class_9326$class_9328;)Lcom/mojang/serialization/DataResult; method_57859 method_57859 + p 0 type + m ()Lcom/mojang/serialization/Codec; method_57856 getValueCodec + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_57858 method_57858 + p 0 id + m ()Z comp_2442 removed + m ()Lnet/minecraft/class_9331; comp_2441 type + m (Lnet/minecraft/class_9331;Z)V + p 1 type + p 2 removed +c net/minecraft/class_9326$class_10935 net/minecraft/component/ComponentChanges$PacketCodecFunction + m (Lnet/minecraft/class_9331;)Lnet/minecraft/class_9139; apply apply + p 1 type +c net/minecraft/class_9335 net/minecraft/component/MergedComponentMap + c A {@link Component Map} that has a base map and changes to be applied on top of it. + f Lnet/minecraft/class_9323; field_49654 baseComponents + f Z field_49656 copyOnWrite + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; field_49655 changedComponents + m (Lnet/minecraft/class_9331;)Z method_65890 hasChanged + p 1 type + m ()Lnet/minecraft/class_9326; method_57940 getChanges + m (Lnet/minecraft/class_9323;Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;Z)V + p 1 baseComponents + p 2 changedComponents + p 3 copyOnWrite + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Ljava/lang/Object; method_57938 set + p 1 type + p 2 value + m (Lnet/minecraft/class_9336;)Ljava/lang/Object; method_74942 set + p 1 component + m ()V method_62714 clearChanges + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_9331;Ljava/util/Optional;)V method_57937 applyChange + p 2 optional + p 1 type + m ()Lnet/minecraft/class_9335; method_57941 copy + m ()V method_57942 onWrite + m (Lnet/minecraft/class_9326;)V method_59772 setChanges + p 1 changes + m (Lnet/minecraft/class_9323;)V + p 1 baseComponents + m (Lnet/minecraft/class_9323;)V method_57933 setAll + p 1 components + m (Lnet/minecraft/class_9326;)V method_57936 applyChanges + p 1 changes + m (Lnet/minecraft/class_9323;Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;)Z method_57934 shouldReuseChangesMap + p 0 baseComponents + p 1 changedComponents + m (Lnet/minecraft/class_9323;Lnet/minecraft/class_9326;)Lnet/minecraft/class_9335; method_57935 create + p 1 changes + p 0 baseComponents + m ()Lnet/minecraft/class_9323; method_65769 immutableCopy + m (Lnet/minecraft/class_9331;)Ljava/lang/Object; method_57939 remove + p 1 type +c net/minecraft/class_8004 net/minecraft/datafixer/fix/OptionsAmbientOcclusionFix + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_47997 method_47997 + p 1 setting + m (Ljava/lang/String;)Ljava/lang/String; method_47998 fixValue + p 0 oldValue + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_47996 method_47996 + p 0 options + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_47995 method_47995 + p 0 optionsTyped +c net/minecraft/class_9334 net/minecraft/component/DataComponentTypes + f Lnet/minecraft/class_9331; field_57109 WOLF_SOUND_VARIANT + f Lnet/minecraft/class_9331; field_56132 TROPICAL_FISH_PATTERN_COLOR + f Lnet/minecraft/class_9331; field_56144 SHULKER_COLOR + f Lnet/minecraft/class_9331; field_56143 SHEEP_COLOR + f Lnet/minecraft/class_9331; field_56139 LLAMA_VARIANT + f Lnet/minecraft/class_9331; field_56508 COW_VARIANT + f Lnet/minecraft/class_9331; field_56142 CAT_COLLAR + f Lnet/minecraft/class_9331; field_56138 PAINTING_VARIANT + f Lnet/minecraft/class_9331; field_56141 CAT_VARIANT + f Lnet/minecraft/class_9331; field_64474 ZOMBIE_NAUTILUS_VARIANT + f Lnet/minecraft/class_9331; field_56137 HORSE_VARIANT + f Lnet/minecraft/class_9331; field_56149 SALMON_SIZE + f Lnet/minecraft/class_9331; field_56140 AXOLOTL_VARIANT + f Lnet/minecraft/class_9331; field_56152 TROPICAL_FISH_BASE_COLOR + f Lnet/minecraft/class_9331; field_56136 FROG_VARIANT + f Lnet/minecraft/class_9331; field_56148 FOX_VARIANT + f Lnet/minecraft/class_9323; field_49627 DEFAULT_ITEM_COMPONENTS + f Lnet/minecraft/class_9331; field_56151 TROPICAL_FISH_PATTERN + f Lnet/minecraft/class_9331; field_56135 PIG_VARIANT + f Lnet/minecraft/class_9331; field_56595 CHICKEN_VARIANT + f Lnet/minecraft/class_9331; field_56147 WOLF_COLLAR + f Lnet/minecraft/class_9331; field_56150 PARROT_VARIANT + f Lnet/minecraft/class_9331; field_56134 RABBIT_VARIANT + f Lnet/minecraft/class_9331; field_56146 WOLF_VARIANT + f Lnet/minecraft/class_9331; field_56145 VILLAGER_VARIANT + f Lnet/minecraft/class_9331; field_56133 MOOSHROOM_VARIANT + f Lnet/minecraft/class_9684; field_51518 CACHE + f Lnet/minecraft/class_9331; field_53964 CONSUMABLE + f Lnet/minecraft/class_9331; field_50238 OMINOUS_BOTTLE_AMPLIFIER + f Lnet/minecraft/class_9331; field_54198 TOOLTIP_STYLE + f Lnet/minecraft/class_9331; field_50239 ITEM_NAME + f Lnet/minecraft/class_9331; field_54199 ITEM_MODEL + f Lnet/minecraft/class_9331; field_54196 EQUIPPABLE + f Lnet/minecraft/class_9331; field_53965 USE_REMAINDER + f Lnet/minecraft/class_9331; field_54197 GLIDER + f Lnet/minecraft/class_9331; field_53966 USE_COOLDOWN + f Lnet/minecraft/class_9331; field_54273 DAMAGE_RESISTANT + f Lnet/minecraft/class_9331; field_54274 DEATH_PROTECTION + f Lnet/minecraft/class_9331; field_56400 TOOLTIP_DISPLAY + f Lnet/minecraft/class_9331; field_63636 DAMAGE_TYPE + f Lnet/minecraft/class_9331; field_63635 MINIMUM_ATTACK_CHARGE + f Lnet/minecraft/class_9331; field_63634 USE_EFFECTS + f Lnet/minecraft/class_9331; field_63633 SWING_ANIMATION + f Lnet/minecraft/class_9331; field_63632 KINETIC_WEAPON + f Lnet/minecraft/class_9331; field_63631 PIERCING_WEAPON + f Lnet/minecraft/class_9331; field_49653 WRITABLE_BOOK_CONTENT + f Lnet/minecraft/class_9331; field_49652 SUSPICIOUS_STEW_EFFECTS + f Lnet/minecraft/class_9331; field_49651 POTION_CONTENTS + f Lnet/minecraft/class_9331; field_49650 BUNDLE_CONTENTS + f Lnet/minecraft/class_9331; field_49609 ENTITY_DATA + f Lnet/minecraft/class_9331; field_49608 DEBUG_STICK_STATE + f Lnet/minecraft/class_9331; field_49606 WRITTEN_BOOK_CONTENT + f Lnet/minecraft/class_9331; field_49607 TRIM + f Lnet/minecraft/class_9331; field_49617 PROFILE + f Lnet/minecraft/class_9331; field_49618 NOTE_BLOCK_SOUND + f Lnet/minecraft/class_9331; field_49616 FIREWORKS + f Lnet/minecraft/class_9331; field_49615 FIREWORK_EXPLOSION + f Lnet/minecraft/class_9331; field_49614 LODESTONE_TRACKER + f Lnet/minecraft/class_9331; field_49613 RECIPES + f Lnet/minecraft/class_9331; field_49612 INSTRUMENT + f Lnet/minecraft/class_9331; field_49611 BLOCK_ENTITY_DATA + f Lnet/minecraft/class_9331; field_49610 BUCKET_ENTITY_DATA + f Lnet/minecraft/class_9331; field_49619 BANNER_PATTERNS + f Lnet/minecraft/class_9331; field_49621 POT_DECORATIONS + f Lnet/minecraft/class_9331; field_49620 BASE_COLOR + f Lnet/minecraft/class_9331; field_49628 CUSTOM_DATA + f Lnet/minecraft/class_9331; field_49629 DAMAGE + f Lnet/minecraft/class_9331; field_49626 CONTAINER_LOOT + f Lnet/minecraft/class_9331; field_49625 LOCK + f Lnet/minecraft/class_9331; field_49624 BEES + f Lnet/minecraft/class_9331; field_49623 BLOCK_STATE + f Lnet/minecraft/class_9331; field_49622 CONTAINER + f Lnet/minecraft/class_9331; field_49633 ENCHANTMENTS + f Lnet/minecraft/class_9331; field_49632 LORE + f Lnet/minecraft/class_9331; field_49631 CUSTOM_NAME + f Lnet/minecraft/class_9331; field_52175 JUKEBOX_PLAYABLE + f Lnet/minecraft/class_9331; field_49630 UNBREAKABLE + f Lnet/minecraft/class_9331; field_49639 REPAIR_COST + f Lnet/minecraft/class_9331; field_49637 CUSTOM_MODEL_DATA + f Lnet/minecraft/class_9331; field_49636 ATTRIBUTE_MODIFIERS + f Lnet/minecraft/class_9331; field_49635 CAN_BREAK + f Lnet/minecraft/class_9331; field_49634 CAN_PLACE_ON + f Lnet/minecraft/class_9331; field_49645 MAP_COLOR + f Lnet/minecraft/class_9331; field_49644 DYED_COLOR + f Lnet/minecraft/class_9331; field_49643 STORED_ENCHANTMENTS + f Lnet/minecraft/class_9331; field_49642 INTANGIBLE_PROJECTILE + f Lnet/minecraft/class_9331; field_49641 ENCHANTMENT_GLINT_OVERRIDE + f Lnet/minecraft/class_9331; field_49640 CREATIVE_SLOT_LOCK + f Lnet/minecraft/class_9331; field_49649 CHARGED_PROJECTILES + f Lnet/minecraft/class_9331; field_49648 MAP_POST_PROCESSING + f Lnet/minecraft/class_9331; field_49647 MAP_DECORATIONS + f Lnet/minecraft/class_9331; field_49646 MAP_ID + f Lnet/minecraft/class_9331; field_55879 POTION_DURATION_SCALE + f Lnet/minecraft/class_9331; field_55878 WEAPON + f Lnet/minecraft/class_9331; field_50071 MAX_STACK_SIZE + f Lnet/minecraft/class_9331; field_50072 MAX_DAMAGE + f Lnet/minecraft/class_9331; field_50073 RARITY + f Lnet/minecraft/class_9331; field_50075 FOOD + f Lnet/minecraft/class_9331; field_50077 TOOL + f Lnet/minecraft/class_9331; field_53695 ENCHANTABLE + f Lnet/minecraft/class_9331; field_53696 REPAIRABLE + f Lnet/minecraft/class_9331; field_56397 PROVIDES_TRIM_MATERIAL + f Lnet/minecraft/class_9331; field_56396 BLOCKS_ATTACKS + f Lnet/minecraft/class_9331; field_56399 BREAK_SOUND + f Lnet/minecraft/class_9331; field_56398 PROVIDES_BANNER_PATTERNS + f Lnet/minecraft/class_9331; field_64680 ATTACK_RANGE + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_58564 method_58564 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66891 method_66891 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57900 method_57900 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_64098 method_64098 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57912 method_57912 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57924 method_57924 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_76767 method_76767 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_67297 method_67297 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57908 method_57908 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_62713 method_62713 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66888 method_66888 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60914 method_60914 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_64099 method_64099 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_58565 method_58565 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66551 method_66551 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57911 method_57911 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57923 method_57923 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66890 method_66890 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_67296 method_67296 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57907 method_57907 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57919 method_57919 + p 0 builder + m (Ljava/lang/String;Ljava/util/function/UnaryOperator;)Lnet/minecraft/class_9331; method_57906 register + p 0 id + p 1 builderOperator + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_62712 method_62712 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_68171 method_68171 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_75510 method_75510 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57893 method_57893 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66887 method_66887 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57914 method_57914 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57926 method_57926 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66885 method_66885 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_64101 method_64101 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_67295 method_67295 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66550 method_66550 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57902 method_57902 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_67554 method_67554 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_67300 method_67300 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57896 method_57896 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_75511 method_75511 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57884 method_57884 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66886 method_66886 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66898 method_66898 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57925 method_57925 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66884 method_66884 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66896 method_66896 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57901 method_57901 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57913 method_57913 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_75508 method_75508 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_76571 method_76571 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57895 method_57895 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_75512 method_75512 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66897 method_66897 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66895 method_66895 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57904 method_57904 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57916 method_57916 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57928 method_57928 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66883 method_66883 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57932 method_57932 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57899 method_57899 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_64260 method_64260 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_58568 method_58568 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_62990 method_62990 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_62987 method_62987 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57890 method_57890 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_75509 method_75509 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57898 method_57898 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_75513 method_75513 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57886 method_57886 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57931 method_57931 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57903 method_57903 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_64100 method_64100 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57915 method_57915 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57927 method_57927 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66882 method_66882 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66894 method_66894 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_58569 method_58569 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_58763 method_58763 + p 0 builder + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_9331; method_57905 getDefault + p 0 registry + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57885 method_57885 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57930 method_57930 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66879 method_66879 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57897 method_57897 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66893 method_66893 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57889 method_57889 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57910 method_57910 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_58566 method_58566 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57922 method_57922 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66881 method_66881 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_67299 method_67299 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57918 method_57918 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_58570 method_58570 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57892 method_57892 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66878 method_66878 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_62989 method_62989 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57917 method_57917 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57921 method_57921 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66880 method_66880 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57888 method_57888 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66892 method_66892 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_67298 method_67298 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57929 method_57929 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_67476 method_67476 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_62988 method_62988 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57887 method_57887 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57920 method_57920 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_57891 method_57891 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_66889 method_66889 + p 0 builder +c net/minecraft/class_8001 net/minecraft/client/gui/tooltip/HoveredTooltipPositioner + f Lnet/minecraft/class_8000; field_41687 INSTANCE + m (IILorg/joml/Vector2i;II)V method_47945 preventOverflow + p 1 screenWidth + p 2 screenHeight + p 3 pos + p 4 width + p 5 height +c net/minecraft/class_8002 net/minecraft/client/gui/tooltip/TooltipBackgroundRenderer + c A class for rendering a background box for a tooltip. + f Lnet/minecraft/class_2960; field_54152 DEFAULT_FRAME_TEXTURE + f Lnet/minecraft/class_2960; field_54151 DEFAULT_BACKGROUND_TEXTURE + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_64051 getFrameTexture + p 0 texture + m (Ljava/lang/String;)Ljava/lang/String; method_64050 method_64050 + p 0 name + m (Ljava/lang/String;)Ljava/lang/String; method_64052 method_64052 + p 0 name + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_64049 getBackgroundTexture + p 0 texture + m (Lnet/minecraft/class_332;IIIILnet/minecraft/class_2960;)V method_47946 render + p 0 context + p 1 x + p 2 y + p 3 width + p 4 height + p 5 texture +c net/minecraft/class_9331 net/minecraft/component/ComponentType + f Lcom/mojang/serialization/Codec; field_50236 PERSISTENT_CODEC + f Lcom/mojang/serialization/Codec; field_50237 TYPE_TO_VALUE_MAP_CODEC + f Lcom/mojang/serialization/Codec; field_49600 CODEC + f Lnet/minecraft/class_9139; field_49601 PACKET_CODEC + m (Lnet/minecraft/class_9331;)Lcom/mojang/serialization/DataResult; method_58761 method_58761 + p 0 componentType + m ()Lnet/minecraft/class_9331$class_9332; method_57873 builder + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_57874 method_57874 + p 0 packetCodec + m ()Z method_75506 skipsHandAnimation + m ()Lnet/minecraft/class_9139; method_57878 getPacketCodec + m ()Lcom/mojang/serialization/Codec; method_57875 getCodec + m ()Lcom/mojang/serialization/Codec; method_57876 getCodecOrThrow + m ()Z method_57877 shouldSkipSerialization +c net/minecraft/class_9331$class_9332 net/minecraft/component/ComponentType$Builder + f Lnet/minecraft/class_9139; field_49603 packetCodec + f Z field_51517 cache + f Lcom/mojang/serialization/Codec; field_49602 codec + f Z field_63629 skipsHandAnimation + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_9331$class_9332; method_57881 codec + p 1 codec + m ()Lnet/minecraft/class_9331$class_9332; method_59871 cache + m ()Lnet/minecraft/class_9331$class_9332; method_75507 skipsHandAnimation + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_9331$class_9332; method_57882 packetCodec + p 1 packetCodec + m ()Lnet/minecraft/class_9331; method_57880 build +c net/minecraft/class_9331$class_9332$class_9333 net/minecraft/component/ComponentType$Builder$SimpleDataComponentType + f Lnet/minecraft/class_9139; field_49605 packetCodec + f Z field_63630 skipsHandAnimation + f Lcom/mojang/serialization/Codec; field_49604 codec + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_9139;Z)V + p 1 codec + p 2 packetCodec + p 3 skipsHandAnimation +c net/minecraft/class_8000 net/minecraft/client/gui/tooltip/TooltipPositioner + m (IIIIII)Lorg/joml/Vector2ic; method_47944 getPosition + p 5 width + p 6 height + p 3 x + p 4 y + p 1 screenWidth + p 2 screenHeight +c net/minecraft/class_8008 net/minecraft/unused/packageinfo/PackageInfo8008 +c net/minecraft/class_9338 net/minecraft/data/report/ItemListProvider + f Lnet/minecraft/class_7784; field_49661 output + f Ljava/util/concurrent/CompletableFuture; field_49662 registriesFuture + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registriesFuture + m (Lnet/minecraft/class_6903;Lcom/google/gson/JsonObject;Lnet/minecraft/class_6880$class_6883;)V method_57955 method_57955 + p 2 entry + m (Lnet/minecraft/class_7403;Ljava/nio/file/Path;Lnet/minecraft/class_7225$class_7874;)Ljava/util/concurrent/CompletionStage; method_57959 method_57959 + p 2 registries + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_60581 method_60581 + p 0 components +c net/minecraft/class_9337 net/minecraft/unused/packageinfo/PackageInfo9337 +c net/minecraft/class_8005 net/minecraft/advancement/AdvancementDisplays + f I field_41737 DISPLAY_DEPTH + m (Lnet/minecraft/class_8781;Lit/unimi/dsi/fastutil/Stack;Ljava/util/function/Predicate;Lnet/minecraft/class_8005$class_8006;)Z method_48030 shouldDisplay + p 0 advancement + p 1 statuses + p 2 donePredicate + p 3 consumer + m (Lnet/minecraft/class_161;Z)Lnet/minecraft/class_8005$class_8007; method_48032 getStatus + p 0 advancement + p 1 force + m (Lit/unimi/dsi/fastutil/Stack;)Z method_48033 shouldDisplay + p 0 statuses + m (Lnet/minecraft/class_8781;Ljava/util/function/Predicate;Lnet/minecraft/class_8005$class_8006;)V method_48031 calculateDisplay + p 0 advancement + p 2 consumer + p 1 donePredicate +c net/minecraft/class_8005$class_8006 net/minecraft/advancement/AdvancementDisplays$ResultConsumer + m (Lnet/minecraft/class_8781;Z)V accept accept + p 1 advancement + p 2 shouldDisplay +c net/minecraft/class_8005$class_8007 net/minecraft/advancement/AdvancementDisplays$Status + f Lnet/minecraft/class_8005$class_8007; field_41740 NO_CHANGE + f Lnet/minecraft/class_8005$class_8007; field_41739 HIDE + f Lnet/minecraft/class_8005$class_8007; field_41738 SHOW +c net/minecraft/class_9336 net/minecraft/component/Component + f Lnet/minecraft/class_9139; field_49657 PACKET_CODEC + f Ljava/lang/Object; comp_2444 value + f Lnet/minecraft/class_9331; comp_2443 type + m (Lnet/minecraft/class_9335;)V method_57946 apply + p 1 components + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Lnet/minecraft/class_9336; method_57945 of + p 0 type + p 1 value + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; method_57943 encode + p 1 ops + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_9336; method_57944 of + p 0 entry + m ()Lnet/minecraft/class_9331; comp_2443 type + m ()Ljava/lang/Object; comp_2444 value + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)V + p 1 type + p 2 value +c net/minecraft/class_9336$1 net/minecraft/component/Component$1 + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_9331;)Lnet/minecraft/class_9336; method_57949 read + p 0 buf + p 1 type + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_9336;)V method_57951 write + p 1 component + p 0 buf + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_9336; method_57948 decode + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_9336;)V method_57950 encode +c net/minecraft/class_5865 net/minecraft/util/math/floatprovider/TrapezoidFloatProvider + f F field_29013 min + f Lcom/mojang/serialization/MapCodec; field_29012 CODEC + f F field_29015 plateau + f F field_29014 max + m (Lnet/minecraft/class_5865;)Ljava/lang/Float; method_33931 method_33931 + p 0 provider + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33928 method_33928 + p 0 instance + m (Lnet/minecraft/class_5865;)Ljava/lang/Float; method_33930 method_33930 + p 0 provider + m (FFF)V + p 2 max + p 1 min + p 3 plateau + m (FFF)Lnet/minecraft/class_5865; method_33926 create + p 2 plateau + p 0 min + p 1 max + m (Lnet/minecraft/class_5865;)Lcom/mojang/serialization/DataResult; method_33927 method_33927 + p 0 provider + m (Lnet/minecraft/class_5865;)Ljava/lang/Float; method_33929 method_33929 + p 0 provider +c net/minecraft/class_5864 net/minecraft/util/math/floatprovider/FloatProviderType + f Lnet/minecraft/class_5864; field_29010 CLAMPED_NORMAL + f Lnet/minecraft/class_5864; field_29011 TRAPEZOID + f Lnet/minecraft/class_5864; field_29009 UNIFORM + f Lnet/minecraft/class_5864; field_29008 CONSTANT + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_5864; method_33925 register + p 1 codec + p 0 id +c net/minecraft/class_5867 net/minecraft/world/ChunkSectionCache + f Lnet/minecraft/class_1936; field_29037 world + f Lnet/minecraft/class_2826; field_29039 cachedSection + f J field_29040 sectionPos + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_29038 cache + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2826; method_33944 getSection + p 1 pos + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_33946 getBlockState + p 1 pos + m (Lnet/minecraft/class_1936;)V + p 1 world +c net/minecraft/class_3204 net/minecraft/server/world/ChunkLevelManager + f Ljava/util/Set; field_16210 chunkHoldersWithPendingUpdates + f Lnet/minecraft/class_4077; field_55589 ticketDistanceLevelPropagator + f Lnet/minecraft/class_6609; field_55590 simulationDistanceLevelPropagator + f Lnet/minecraft/class_3204$class_3948; field_17455 nearbyChunkTicketUpdater + f Lnet/minecraft/class_10592; field_55591 ticketManager + f Lorg/slf4j/Logger; field_16211 LOGGER + f I field_17452 NEARBY_PLAYER_TICKET_LEVEL + f Lnet/minecraft/class_3204$class_3205; field_17454 distanceFromNearestPlayerTracker + f Lit/unimi/dsi/fastutil/longs/LongSet; field_17459 freshPlayerTicketPositions + f Lnet/minecraft/class_10173; field_54044 scheduler + f I field_34887 simulationDistance + f Ljava/util/concurrent/Executor; field_17460 mainThreadExecutor + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_17453 playersByChunkPos + m (I)V method_38629 setSimulationDistance + p 1 simulationDistance + m ()I method_38633 getPlayerSimulationLevel + m ()Lit/unimi/dsi/fastutil/longs/LongIterator; method_61262 iterateChunkPosToTick + m ()Z method_39996 shouldDelayShutdown + m ()Ljava/lang/String; method_21683 toDumpString + m (Lnet/minecraft/class_3898;)Z method_15892 update + c Update the states related to chunk tickets and chunk loading levels, which mainly involves three kind of updates:\n

    \n
  • Add or remove PLAYER tickets when necessary.
  • \n
  • Update the expected loading states of chunks depending on their new levels.
  • \n
  • Special updates of chunks with PLAYER tickets added recently.
  • \n
+ p 1 chunkLoadingManager + m (Lnet/minecraft/class_4076;Lnet/minecraft/class_3222;)V method_14048 handleChunkEnter + p 2 player + p 1 pos + m (Lit/unimi/dsi/fastutil/longs/LongConsumer;)V method_67500 forEachBlockTickingChunk + p 1 chunkPosConsumer + m (Lnet/minecraft/class_3228;)Z method_14040 method_14040 + p 0 ticket + m (J)Z method_38630 shouldTickEntities + p 1 chunkPos + m (JZ)I method_66007 getLevel + p 1 pos + p 3 forSimulation + m (J)Z method_38632 shouldTickBlocks + p 1 chunkPos + m (J)Z method_14035 isUnloaded + p 1 pos + m (JLnet/minecraft/class_9259;)V method_17642 method_17642 + p 3 optionalChunk + m ()I method_14052 getTickedChunkCount + m (Lnet/minecraft/class_10592;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)V + p 3 mainThreadExecutor + p 1 ticketManager + p 2 executor + m (J)Lnet/minecraft/class_9851; method_20800 shouldTick + p 1 chunkPos + m (J)Lnet/minecraft/class_3193; method_14038 getChunkHolder + p 1 pos + m (Lnet/minecraft/class_4076;Lnet/minecraft/class_3222;)V method_14051 handleChunkLeave + p 2 player + p 1 pos + m (JILnet/minecraft/class_3193;I)Lnet/minecraft/class_3193; method_14053 setLevel + p 1 pos + p 3 level + p 4 holder + m (I)V method_14049 setWatchDistance + p 1 viewDistance + m (J)Lit/unimi/dsi/fastutil/objects/ObjectSet; method_17655 method_17655 + p 0 sectionPos +c net/minecraft/class_3204$class_3948 net/minecraft/server/world/ChunkLevelManager$NearbyChunkTicketUpdater + f Lit/unimi/dsi/fastutil/longs/Long2IntMap; field_17465 distances + f Lit/unimi/dsi/fastutil/longs/LongSet; field_17466 positionsAffected + f I field_17464 watchDistance + m (JI)V method_17662 method_17662 + p 3 level + m (I)Z method_17664 isWithinViewDistance + p 1 distance + m (JIZZ)V method_17660 updateTicket + p 1 pos + p 3 distance + p 5 withinViewDistance + p 4 oldWithinViewDistance + m (I)V method_17658 setWatchDistance + p 1 watchDistance +c net/minecraft/class_3204$class_3205 net/minecraft/server/world/ChunkLevelManager$DistanceFromNearestPlayerTracker + f I field_17461 maxDistance + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; field_13896 distanceFromNearestPlayer + m (JII)V method_17657 onDistanceChange + p 4 distance + p 3 oldDistance + p 1 pos + m (J)Z method_14056 isPlayerInChunk + p 1 chunkPos + m (Lnet/minecraft/class_3204;I)V + p 2 maxDistance + m ()V method_14057 updateLevels +c net/minecraft/class_5866 net/minecraft/util/math/floatprovider/UniformFloatProvider + f Lcom/mojang/serialization/MapCodec; field_29016 CODEC + f F field_29018 max + f F field_29017 min + m (FF)Lnet/minecraft/class_5866; method_33934 create + p 0 min + p 1 max + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33933 method_33933 + p 0 instance + m (Lnet/minecraft/class_5866;)Ljava/lang/Float; method_33935 method_33935 + p 0 provider + m (Lnet/minecraft/class_5866;)Lcom/mojang/serialization/DataResult; method_33932 method_33932 + p 0 provider + m (FF)V + p 1 min + p 2 max + m (Lnet/minecraft/class_5866;)Ljava/lang/Float; method_33936 method_33936 + p 0 provider +c net/minecraft/class_5861 net/minecraft/util/math/floatprovider/ClampedNormalFloatProvider + f Lcom/mojang/serialization/MapCodec; field_28998 CODEC + f F field_29002 max + f F field_29001 min + f F field_29000 deviation + f F field_28999 mean + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33902 method_33902 + p 0 instance + m (FFFF)Lnet/minecraft/class_5861; method_33900 create + p 1 deviation + p 0 mean + p 3 max + p 2 min + m (Lnet/minecraft/class_5861;)Ljava/lang/Float; method_33904 method_33904 + p 0 provider + m (Lnet/minecraft/class_5861;)Ljava/lang/Float; method_33906 method_33906 + p 0 provider + m (Lnet/minecraft/class_5861;)Ljava/lang/Float; method_33905 method_33905 + p 0 provider + m (Lnet/minecraft/class_5861;)Ljava/lang/Float; method_33907 method_33907 + p 0 provider + m (FFFF)V + p 2 deviation + p 1 mean + p 4 max + p 3 min + m (Lnet/minecraft/class_5861;)Lcom/mojang/serialization/DataResult; method_33901 method_33901 + p 0 provider + m (Lnet/minecraft/class_5819;FFFF)F method_33903 get + p 4 max + p 1 mean + p 0 random + p 3 min + p 2 deviation +c net/minecraft/class_5863 net/minecraft/util/math/floatprovider/FloatProvider + f Lcom/mojang/serialization/Codec; field_29007 VALUE_CODEC + f Lcom/mojang/serialization/Codec; field_29006 FLOAT_CODEC + m ()Lnet/minecraft/class_5864; method_33923 getType + m (FF)Lcom/mojang/serialization/Codec; method_33916 createValidatedCodec + p 1 max + p 0 min + m (Lnet/minecraft/class_5863;)Lnet/minecraft/class_5863; method_33922 method_33922 + p 0 provider + m ()F method_33921 getMax + m (FFLnet/minecraft/class_5863;)Lcom/mojang/serialization/DataResult; method_33917 method_33917 + p 2 provider + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_5863; method_33919 method_33919 + p 0 either + m (Lnet/minecraft/class_5863;)Lcom/mojang/datafixers/util/Either; method_33918 method_33918 + p 0 provider + m ()F method_33915 getMin +c net/minecraft/class_4531 net/minecraft/test/TestCompletionListener + m (Lnet/minecraft/class_4517;)V method_33322 onTestPassed + p 1 test + m ()V method_36109 onStopped + m (Lnet/minecraft/class_4517;)V method_22304 onTestFailed + p 1 test +c net/minecraft/class_3201 net/minecraft/server/network/DemoServerPlayerInteractionManager + f Z field_13890 sentHelp + f I field_29762 DEMO_DAYS + f I field_29763 DEMO_TIME + f I field_13887 tick + f I field_13888 reminderTicks + f Z field_13889 demoEnded + m ()V method_14031 sendDemoReminder +c net/minecraft/class_5862 net/minecraft/util/math/floatprovider/ConstantFloatProvider + f Lnet/minecraft/class_5862; field_29003 ZERO + f F field_29005 value + f Lcom/mojang/serialization/MapCodec; field_29004 CODEC + m (F)Lnet/minecraft/class_5862; method_33908 create + p 0 value + m (F)V + p 1 value + m ()F method_33914 getValue +c net/minecraft/class_4527 net/minecraft/server/command/TestCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_56408 NO_TESTS_TO_RESET_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_56196 EXPORT_STRUCTURES_NOT_FOUND_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_56195 TEST_INSTANCE_NOT_FOUND_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_56409 TOO_LARGE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_56194 NO_TESTS_TO_CLEAR_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; field_56198 NO_TEST_CONTAINING_POS_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_56197 NO_TEST_INSTANCES_EXCEPTION + m (Lnet/minecraft/class_9123;Lnet/minecraft/class_2338;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/class_2338;)V method_67010 method_67010 + p 3 pos + m (Lnet/minecraft/class_10618;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_66999 method_66999 + p 1 builder2 + m (Lnet/minecraft/class_9123;Lnet/minecraft/class_4517;)Ljava/lang/Integer; method_67011 method_67011 + p 1 state + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67037 method_67037 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67025 method_67025 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_71944 method_71944 + p 0 context + m (Lnet/minecraft/class_9123;)I method_67023 export + p 0 finder + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67001 method_67001 + p 0 context + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/class_10618;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_56268 testAttemptAndPlacementConfig + p 1 finderGetter + p 0 builder + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56274 method_56274 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67033 method_67033 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_4517;)I method_56267 reset + p 1 state + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_71945 method_71945 + p 0 context + m (Lnet/minecraft/class_2168;)Lnet/minecraft/class_2338; method_54850 getStructurePos + p 0 source + m (ILnet/minecraft/class_2168;Lnet/minecraft/class_9118;Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_4517; method_56255 method_56255 + p 3 instance + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_9123; method_67044 method_67044 + p 0 context + m (Lnet/minecraft/class_10618;Lcom/mojang/brigadier/context/CommandContext;)I method_67027 method_67027 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67036 method_67036 + p 0 context + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_67004 method_67004 + p 0 x + p 2 z + p 1 y + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67028 method_67028 + p 0 context + m (Lnet/minecraft/class_9123;)I method_67026 start + p 0 finder + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_9123; method_71948 method_71948 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67032 method_67032 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_71946 method_71946 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_6880;)I method_22282 executeExport + p 1 instance + p 0 source + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Ljava/util/stream/Stream; method_67017 method_67017 + p 1 pos + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2960;)Z method_54904 checkStructure + p 1 templateId + p 0 source + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_9118;Lnet/minecraft/class_10675;)Ljava/util/stream/Stream; method_56261 stream + p 1 config + p 0 source + p 2 finder + m (Lnet/minecraft/class_9123;)I method_67009 reset + p 0 finder + m (Lnet/minecraft/class_10618;Lcom/mojang/brigadier/context/CommandContext;)I method_67016 method_67016 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22288 method_22288 + p 0 context + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_56256 method_56256 + p 0 extraConfigAdder + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67035 method_67035 + p 0 context + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_57105 method_57105 + p 1 pos + m (Lnet/minecraft/class_9123;)I method_67029 locate + p 0 finder + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2960;III)I method_22268 executeCreate + p 0 source + p 2 x + p 1 id + p 4 z + p 3 y + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_9118;Lnet/minecraft/class_2338;)Ljava/util/Optional; method_56260 method_56260 + p 2 pos + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_22270 register + p 1 registryAccess + p 0 dispatcher + m (Lnet/minecraft/class_2168;Ljava/lang/String;)I method_22264 executePos + p 0 source + p 1 variableName + m (Lcom/mojang/brigadier/context/CommandContext;)I method_71947 method_71947 + p 0 context + m (Lnet/minecraft/class_9123;)I method_67020 clear + p 0 finder + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67031 method_67031 + p 0 context + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2168;Lnet/minecraft/class_9118;)Ljava/util/Optional; method_56264 find + p 0 pos + p 2 config + p 1 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23648 method_23648 + p 0 context + m (Lnet/minecraft/class_10618;Lcom/mojang/brigadier/context/CommandContext;)I method_67000 method_67000 + p 1 context + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/class_10618;Ljava/util/function/Function;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_56258 testAttemptConfig + p 0 builder + p 1 finderGetter + p 2 extraConfigAdder + m (Lnet/minecraft/class_10618;Lcom/mojang/brigadier/context/CommandContext;)I method_67024 method_67024 + p 1 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_67307 method_67307 + p 0 maxSize + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_6880$class_6883;)Z method_67003 method_67003 + p 1 instance + m (Lnet/minecraft/class_9123;Lnet/minecraft/class_9118;II)I method_67012 start + p 1 config + p 0 finder + p 3 testsPerRow + p 2 rotationSteps + m ()I method_56254 stop + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67034 method_67034 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67018 method_67018 + p 0 context + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/class_10618;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_56257 testAttemptConfig + p 1 finderGetter + p 0 builder + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67038 method_67038 + p 0 context + m (Ljava/lang/String;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_67007 method_67007 + p 1 style + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67022 method_67022 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_67002 suggestTestFunctions + p 0 context + p 1 builder + m (Lcom/mojang/brigadier/context/CommandContext;)I method_67030 method_67030 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_9118;Lnet/minecraft/class_10674;I)Ljava/util/stream/Stream; method_56262 stream + p 3 rotationSteps + p 1 config + p 2 finder + p 0 source + m (Lnet/minecraft/class_10618;Lcom/mojang/brigadier/context/CommandContext;)I method_67021 method_67021 + p 1 context + m (Lnet/minecraft/class_4517;)V method_56270 method_56270 + p 0 state + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_4520;)I method_56259 start + p 0 source + p 1 context +c net/minecraft/class_4527$class_9122 net/minecraft/server/command/TestCommand$ReportingBatchListener + f Lnet/minecraft/class_2168; comp_2215 source + m ()Lnet/minecraft/class_2168; comp_2215 source + m (Lnet/minecraft/class_2168;)V + p 1 source +c net/minecraft/class_4527$class_4528 net/minecraft/server/command/TestCommand$Listener + f Lnet/minecraft/class_4524; comp_2217 tests + f Lnet/minecraft/class_2168; comp_3538 source + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_4524;)V + p 2 tests + p 1 source + m ()V method_56304 onFinished + m ()Lnet/minecraft/class_4524; comp_2217 tests + m ()Lnet/minecraft/class_2168; comp_3538 source +c net/minecraft/class_5857 net/minecraft/world/gen/placementmodifier/AbstractCountPlacementModifier + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)I method_14452 getCount + p 2 pos + p 1 random +c net/minecraft/class_5870 net/minecraft/world/gen/carver/RavineCarver + m (Lnet/minecraft/class_5873;Lnet/minecraft/class_5869;Lnet/minecraft/class_2791;Ljava/util/function/Function;Lnet/minecraft/class_5819;Lnet/minecraft/class_6350;Lnet/minecraft/class_1923;Lnet/minecraft/class_6643;)Z method_33962 carve + m ([FLnet/minecraft/class_5873;DDDI)Z method_33965 method_33965 + p 9 yx + p 7 scaledRelativeZ + p 5 scaledRelativeY + p 3 scaledRelativeX + p 2 contextx + m (Lnet/minecraft/class_5869;Lnet/minecraft/class_5819;DFF)D method_33960 getVerticalScale + p 6 branchIndex + p 5 branchCount + p 3 pitch + p 2 random + p 1 config + m (Lnet/minecraft/class_5869;Lnet/minecraft/class_5819;)Z method_33959 shouldCarve + m (Lnet/minecraft/class_5873;Lnet/minecraft/class_5869;Lnet/minecraft/class_5819;)[F method_33966 createHorizontalStretchFactors + p 3 random + p 2 config + p 1 context + m (Lnet/minecraft/class_5873;Lnet/minecraft/class_5869;Lnet/minecraft/class_2791;Ljava/util/function/Function;JLnet/minecraft/class_6350;DDDFFFIIDLnet/minecraft/class_6643;)V method_33961 carveRavine + p 1 context + p 5 seed + p 4 posToBiome + p 3 chunk + p 2 config + p 17 branchStartIndex + p 16 pitch + p 15 yaw + p 14 width + p 21 mask + p 19 yawPitchRatio + p 18 branchCount + p 8 x + p 7 aquiferSampler + p 12 z + p 10 y + m (Lnet/minecraft/class_5873;[FDDDI)Z method_33964 isPositionExcluded + p 5 scaledRelativeY + p 3 scaledRelativeX + p 9 y + p 7 scaledRelativeZ + p 2 horizontalStretchFactors + p 1 context +c net/minecraft/class_3213 net/minecraft/entity/boss/ServerBossBar + f Ljava/util/Set; field_13914 unmodifiablePlayers + f Ljava/util/Set; field_13913 players + f Z field_13912 visible + m ()Ljava/util/Collection; method_14092 getPlayers + m ()Z method_14093 isVisible + m (Ljava/util/function/Function;)V method_14090 sendPacket + p 1 bossBarToPacketFunction + m ()V method_14094 clearPlayers + m (Lnet/minecraft/class_3222;)V method_14088 addPlayer + p 1 player + m (Z)V method_14091 setVisible + p 1 visible + m (Lnet/minecraft/class_3222;)V method_14089 removePlayer + p 1 player + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_1259$class_1260;Lnet/minecraft/class_1259$class_1261;)V + p 3 style + p 2 color + p 1 displayName +c net/minecraft/class_5875 net/minecraft/world/gen/feature/ScatteredOreFeature + f I field_31515 MAX_SPREAD + m (Lnet/minecraft/class_5819;I)I method_33986 getSpread + p 1 random + p 2 spread + m (Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;I)V method_33985 setPos + p 1 mutable + p 2 random + p 3 origin + p 4 spread +c net/minecraft/class_3215 net/minecraft/server/world/ServerChunkManager + f Lnet/minecraft/class_3898; field_17254 chunkLoadingManager + f Lnet/minecraft/class_3227; field_13921 lightingProvider + f Lnet/minecraft/class_26; field_17708 persistentStateManager + f Lorg/slf4j/Logger; field_52354 LOGGER + f Lnet/minecraft/class_10592; field_55594 ticketManager + f Ljava/lang/Thread; field_17253 serverThread + f Ljava/util/Set; field_52356 chunksToBroadcastUpdate + f Ljava/util/List; field_56524 spawningChunks + f J field_13928 lastTickTime + f Lnet/minecraft/class_3204; field_17252 levelManager + f [Lnet/minecraft/class_2791; field_19337 chunkCache + f [Lnet/minecraft/class_2806; field_19336 chunkStatusCache + f [J field_19335 chunkPosCache + f Lnet/minecraft/class_3218; field_13945 world + f I field_29766 CACHE_SIZE + f Lnet/minecraft/class_3215$class_4212; field_18809 mainThreadExecutor + f Lnet/minecraft/class_1948$class_5262; field_24455 spawnInfo + f Z field_13929 spawnMonsters + m ()V method_14161 tickChunks + m (Lnet/minecraft/class_3695;)V method_61264 broadcastUpdates + p 1 profiler + m ()Lnet/minecraft/class_7138; method_41248 getNoiseConfig + m ()I method_21694 getPendingTasks + m (I)V method_38634 applySimulationDistance + p 1 simulationDistance + m (I)Lnet/minecraft/class_2806; method_72268 method_72268 + p 0 distance + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2596;)V method_18751 sendToNearbyPlayers + p 2 packet + p 1 entity + m ()V method_66012 shutdown + m (IILnet/minecraft/class_2806;Z)Ljava/util/concurrent/CompletableFuture; method_17299 getChunkFutureSyncOnMainThread + p 1 chunkX + p 4 create + p 2 chunkZ + p 3 leastStatus + m (JLjava/util/function/Consumer;)V method_27907 ifChunkLoaded + p 3 chunkConsumer + p 1 pos + m ()Z method_16155 updateChunks + c Update expected chunk loading states by updating {@code PLAYER} tickets and {@code Future}s. + m (Lnet/minecraft/class_1297;)V method_18755 loadEntity + p 1 entity + m (Lnet/minecraft/class_3222;)V method_14096 updatePosition + c Updates the chunk section position of the {@code player}. This can either be a\nresult of the player's movement or its camera entity's movement.\n\n

This updates the section position player's client is currently watching and\nthe player's position in its entity tracker. + p 1 player + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2596;)V method_18754 sendToOtherNearbyPlayers + p 1 entity + p 2 packet + m (J)Lnet/minecraft/class_3193; method_14131 getChunkHolder + p 1 pos + m ()Lnet/minecraft/class_26; method_17981 getPersistentStateManager + m ()Lnet/minecraft/class_7869; method_46642 getStructurePlacementCalculator + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_32$class_5143;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/class_3485;Ljava/util/concurrent/Executor;Lnet/minecraft/class_2794;IIZLnet/minecraft/class_5567;Ljava/util/function/Supplier;)V + p 1 world + p 2 session + p 3 dataFixer + p 4 structureTemplateManager + p 5 workerExecutor + p 6 chunkGenerator + p 7 viewDistance + p 8 simulationDistance + p 9 dsync + m (Lnet/minecraft/class_2338;)V method_14128 markForUpdate + p 1 pos + m (JLnet/minecraft/class_2791;Lnet/minecraft/class_2806;)V method_21738 putInCache + p 1 pos + p 4 status + p 3 chunk + m ()Z method_19492 executeQueuedTasks + m ()Lnet/minecraft/class_4153; method_19493 getPointOfInterestStorage + m ()Lnet/minecraft/class_6830; method_39777 getChunkIoWorker + m (IILnet/minecraft/class_2806;Z)Ljava/util/concurrent/CompletableFuture; method_14134 getChunkFuture + p 4 create + p 3 leastStatus + p 2 chunkZ + p 1 chunkX + m (Lnet/minecraft/class_3230;Lnet/minecraft/class_1923;I)Ljava/util/concurrent/CompletableFuture; method_72267 addChunkLoadingTicket + p 1 ticketType + p 2 pos + p 3 radius + m (Lnet/minecraft/class_3230;Lnet/minecraft/class_1923;I)V method_66010 removeTicket + p 2 pos + p 1 type + p 3 radius + m (I)V method_14144 applyViewDistance + p 1 watchDistance + m ()V method_20587 initChunkCaches + m (ILnet/minecraft/class_2818;)V method_67501 method_67501 + p 2 chunk + m (Lnet/minecraft/class_1923;)Ljava/lang/String; method_23273 getChunkLoadingDebugInfo + p 1 pos + m ()Lnet/minecraft/class_1948$class_5262; method_27908 getSpawnInfo + m (J)Z method_37114 isTickingFutureReady + p 1 pos + m (Lnet/minecraft/class_3228;Lnet/minecraft/class_1923;)V method_66008 addTicket + p 2 pos + p 1 ticket + m ()Lnet/minecraft/class_1937; method_16434 getWorld + m (Lnet/minecraft/class_3695;J)V method_61265 tickChunks + p 2 timeDelta + p 1 profiler + m ()Lnet/minecraft/class_2794; method_12129 getChunkGenerator + m ()Z method_72269 shouldResetIdleTimeout + m (Z)V method_17298 save + p 1 flush + m ()Lnet/minecraft/class_3227; method_17293 getLightingProvider + m (Lnet/minecraft/class_3193;I)Z method_18752 isMissingForLevel + p 1 holder + p 2 maxLevel + m (Lnet/minecraft/class_1297;)V method_18753 unloadEntity + p 1 entity + m (Lnet/minecraft/class_3193;)V method_65078 markForUpdate + p 1 chunkHolder + m (Lnet/minecraft/class_3230;Lnet/minecraft/class_1923;I)V method_66009 addTicket + p 2 pos + p 1 type + p 3 radius + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_14159 method_14159 + p 0 future + m (Lnet/minecraft/class_2818;JLjava/util/List;Lnet/minecraft/class_1948$class_5262;)V method_67502 tickSpawningChunk + p 1 chunk + p 4 spawnableGroups + p 5 info + p 2 timeDelta +c net/minecraft/class_3215$class_4212 net/minecraft/server/world/ServerChunkManager$MainThreadExecutor + m (Lnet/minecraft/class_3215;Lnet/minecraft/class_1937;)V + p 2 world +c net/minecraft/class_5878 net/minecraft/particle/ParticleGroup + c A group for particles. This group imposes a limit on the numbers of\nparticles from this group rendered in a particle manager. Additional\nparticles will be discarded when attempted to be rendered.\n\n@see net.minecraft.client.particle.Particle#getGroup() + f I comp_4820 maxCount + f Lnet/minecraft/class_5878; field_29077 SPORE_BLOSSOM_AIR + c The group for the {@linkplain net.minecraft.particle.ParticleTypes#SPORE_BLOSSOM_AIR\nminecraft:spore_blossom_air} particle type. It has a count limit of 1000. + m ()I comp_4820 maxCount + c {@return the maximum count of particles from this group that can be\nrendered in a particle manager} + m (I)V + c Creates a particle group with a custom {@code max} particle count. + p 1 maxCount + c the maximum number of a type of particle allowed +c net/minecraft/class_5872 net/minecraft/world/gen/carver/CarverDebugConfig + f Lnet/minecraft/class_2680; field_29058 airState + f Lnet/minecraft/class_2680; field_33611 waterState + f Lnet/minecraft/class_2680; field_33612 lavaState + f Lnet/minecraft/class_5872; field_29055 DEFAULT + f Lnet/minecraft/class_2680; field_33613 barrierState + f Lcom/mojang/serialization/Codec; field_29056 CODEC + f Z field_29057 debugMode + m (ZLnet/minecraft/class_2680;)Lnet/minecraft/class_5872; method_33972 create + p 0 debugMode + p 1 debugState + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)Lnet/minecraft/class_5872; method_36412 create + p 0 airState + p 1 waterState + p 2 lavaState + p 3 barrierState + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33971 method_33971 + p 0 instance + m ()Z method_33970 isDebugMode + m ()Lnet/minecraft/class_2680; method_36414 getWaterState + m ()Lnet/minecraft/class_2680; method_36416 getBarrierState + m (ZLnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)V + p 2 airState + p 1 debugMode + p 5 barrierState + p 4 lavaState + p 3 waterState + m (ZLnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)Lnet/minecraft/class_5872; method_36413 create + p 4 barrierState + p 0 debugMode + p 1 airState + p 2 waterState + p 3 lavaState + m ()Lnet/minecraft/class_2680; method_36415 getLavaState + m ()Lnet/minecraft/class_2680; method_33973 getAirState +c net/minecraft/class_4541 net/minecraft/datafixer/fix/BiomeFormatFix +c net/minecraft/class_4540 net/minecraft/world/biome/source/SeedMixer + m (JJ)J method_22372 mixSeed + p 0 seed + p 2 salt +c net/minecraft/class_5871 net/minecraft/world/gen/carver/CarverConfig + f Lnet/minecraft/class_5863; field_31489 yScale + f Lnet/minecraft/class_6885; field_38864 replaceable + f Lnet/minecraft/class_5872; field_29053 debugConfig + f Lnet/minecraft/class_6122; field_31488 y + f Lcom/mojang/serialization/MapCodec; field_29054 CONFIG_CODEC + f Lnet/minecraft/class_5843; field_31490 lavaLevel + m (Lnet/minecraft/class_5871;)Ljava/lang/Float; method_35351 method_35351 + p 0 config + m (FLnet/minecraft/class_6122;Lnet/minecraft/class_5863;Lnet/minecraft/class_5843;Lnet/minecraft/class_5872;Lnet/minecraft/class_6885;)V + p 6 replaceable + p 3 yScale + p 2 y + p 5 debugConfig + p 4 lavaLevel + p 1 probability + m (Lnet/minecraft/class_5871;)Lnet/minecraft/class_5843; method_35348 method_35348 + p 0 config + m (Lnet/minecraft/class_5871;)Lnet/minecraft/class_5863; method_35349 method_35349 + p 0 config + m (Lnet/minecraft/class_5871;)Lnet/minecraft/class_6122; method_35350 method_35350 + p 0 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33968 method_33968 + p 0 instance + m (Lnet/minecraft/class_5871;)Lnet/minecraft/class_5872; method_36411 method_36411 + p 0 config + m (Lnet/minecraft/class_5871;)Lnet/minecraft/class_6885; method_43292 method_43292 + p 0 config +c net/minecraft/class_3210 net/minecraft/server/world/PlayerChunkWatchingManager + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; field_13910 watchingPlayers + m (Lnet/minecraft/class_3222;)Z method_21715 isWatchInactive + p 1 player + m (Lnet/minecraft/class_3222;)V method_14084 remove + p 1 player + m (Lnet/minecraft/class_3222;Z)V method_14085 add + p 2 inactive + p 1 player + m (Lnet/minecraft/class_3222;)Z method_14082 isWatchDisabled + p 1 player + m ()Ljava/util/Set; method_14083 getPlayersWatchingChunk + m (Lnet/minecraft/class_3222;)V method_14086 disableWatch + p 1 player + m (Lnet/minecraft/class_3222;)V method_14087 enableWatch + p 1 player +c net/minecraft/class_4543 net/minecraft/world/biome/source/BiomeAccess + f I field_28106 CHUNK_CENTER_OFFSET + f Lnet/minecraft/class_4543$class_4544; field_20640 storage + f J field_20641 seed + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_6880; method_22393 getBiome + p 1 pos + m (DDD)Lnet/minecraft/class_6880; method_24938 getBiomeForNoiseGen + p 3 y + p 5 z + p 1 x + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_6880; method_27344 getBiomeForNoiseGen + p 1 pos + m (J)J method_27984 hashSeed + p 0 seed + m (Lnet/minecraft/class_4543$class_4544;J)V + p 2 seed + p 1 storage + m (III)Lnet/minecraft/class_6880; method_24854 getBiomeForNoiseGen + p 3 biomeZ + p 2 biomeY + p 1 biomeX + m (Lnet/minecraft/class_4543$class_4544;)Lnet/minecraft/class_4543; method_38107 withSource + p 1 storage +c net/minecraft/class_4543$class_4544 net/minecraft/world/biome/source/BiomeAccess$Storage + m (III)Lnet/minecraft/class_6880; method_16359 getBiomeForNoiseGen + p 1 biomeX + p 3 biomeZ + p 2 biomeY +c net/minecraft/class_5873 net/minecraft/world/gen/carver/CarverContext + f Lnet/minecraft/class_5455; field_35299 registryManager + f Lnet/minecraft/class_7138; field_37706 noiseConfig + f Lnet/minecraft/class_6568; field_35703 chunkNoiseSampler + f Lnet/minecraft/class_6686$class_6708; field_37707 materialRule + m (Ljava/util/function/Function;Lnet/minecraft/class_2791;Lnet/minecraft/class_2338;Z)Ljava/util/Optional; method_39114 applyMaterialRule + p 4 hasFluid + p 1 posToBiome + p 2 chunk + p 3 pos + m (Lnet/minecraft/class_3754;Lnet/minecraft/class_5455;Lnet/minecraft/class_5539;Lnet/minecraft/class_6568;Lnet/minecraft/class_7138;Lnet/minecraft/class_6686$class_6708;)V + p 5 noiseConfig + p 4 chunkNoiseSampler + p 6 materialRule + p 1 noiseChunkGenerator + p 3 heightLimitView + p 2 registryManager + m ()Lnet/minecraft/class_7138; method_41570 getNoiseConfig + m ()Lnet/minecraft/class_5455; method_39115 getRegistryManager +c net/minecraft/class_5869 net/minecraft/world/gen/carver/RavineCarverConfig + f Lnet/minecraft/class_5869$class_6107; field_31480 shape + f Lnet/minecraft/class_5863; field_31479 verticalRotation + f Lcom/mojang/serialization/Codec; field_29041 RAVINE_CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35336 method_35336 + p 0 instance + m (Lnet/minecraft/class_5869;)Lnet/minecraft/class_5863; method_35338 method_35338 + p 0 config + m (FLnet/minecraft/class_6122;Lnet/minecraft/class_5863;Lnet/minecraft/class_5843;Lnet/minecraft/class_5872;Lnet/minecraft/class_6885;Lnet/minecraft/class_5863;Lnet/minecraft/class_5869$class_6107;)V + p 1 probability + p 3 yScale + p 2 y + p 5 debugConfig + p 4 lavaLevel + p 7 verticalRotation + p 6 replaceable + p 8 shape + m (Lnet/minecraft/class_5871;Lnet/minecraft/class_5863;Lnet/minecraft/class_5869$class_6107;)V + p 2 verticalRotation + p 1 config + p 3 shape + m (Lnet/minecraft/class_5869;)Lnet/minecraft/class_5869$class_6107; method_35337 method_35337 + p 0 config +c net/minecraft/class_5869$class_6107 net/minecraft/world/gen/carver/RavineCarverConfig$Shape + f Lnet/minecraft/class_5863; field_31483 thickness + f Lnet/minecraft/class_5863; field_31485 horizontalRadiusFactor + f Lnet/minecraft/class_5863; field_31482 distanceFactor + f I field_31484 widthSmoothness + f Lcom/mojang/serialization/Codec; field_31481 CODEC + f F field_31486 verticalRadiusDefaultFactor + f F field_31487 verticalRadiusCenterFactor + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35340 method_35340 + p 0 instance + m (Lnet/minecraft/class_5869$class_6107;)Ljava/lang/Float; method_35342 method_35342 + p 0 shape + m (Lnet/minecraft/class_5869$class_6107;)Ljava/lang/Float; method_35341 method_35341 + p 0 shape + m (Lnet/minecraft/class_5869$class_6107;)Ljava/lang/Integer; method_35344 method_35344 + p 0 shape + m (Lnet/minecraft/class_5863;Lnet/minecraft/class_5863;ILnet/minecraft/class_5863;FF)V + p 2 thickness + p 1 distanceFactor + p 6 verticalRadiusCenterFactor + p 5 verticalRadiusDefaultFactor + p 4 horizontalRadiusFactor + p 3 widthSmoothness + m (Lnet/minecraft/class_5869$class_6107;)Lnet/minecraft/class_5863; method_35343 method_35343 + p 0 shape + m (Lnet/minecraft/class_5869$class_6107;)Lnet/minecraft/class_5863; method_35345 method_35345 + p 0 shape + m (Lnet/minecraft/class_5869$class_6107;)Lnet/minecraft/class_5863; method_35346 method_35346 + p 0 shape +c net/minecraft/class_4538 net/minecraft/world/WorldView + c Represents a scoped, read-only view of a world like structure that contains biomes, chunks and is bound to a dimension. + m (IIII)Z method_33597 isRegionLoaded + p 4 maxZ + p 1 minX + p 2 minZ + p 3 maxX + m ()Lnet/minecraft/class_12204; method_75598 getEnvironmentAttributes + m ()Lnet/minecraft/class_2874; method_8597 getDimension + m (Lnet/minecraft/class_2338;I)I method_22346 getLightLevel + p 2 ambientDarkness + p 1 pos + m (Lnet/minecraft/class_2338;)I method_22339 getLightLevel + p 1 pos + m (Lnet/minecraft/class_238;)Z method_22345 containsFluid + c {@return {@code true} if any of the blocks inside {@code box} contain fluid} + p 1 box + m (Lnet/minecraft/class_2338;)F method_22349 getBrightness + p 1 pos + m ()I method_8615 getSeaLevel + m (IILnet/minecraft/class_2806;)Lnet/minecraft/class_2791; method_22342 getChunk + p 1 chunkX + p 2 chunkZ + p 3 status + m (Lnet/minecraft/class_2338;)F method_42309 getPhototaxisFavor + p 1 pos + m ()I method_8594 getAmbientDarkness + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_6880; method_23753 getBiome + p 1 pos + m (Lnet/minecraft/class_2338;)Z method_22347 isAir + p 1 pos + m ()Lnet/minecraft/class_4543; method_22385 getBiomeAccess + m (Lnet/minecraft/class_2338;)Z method_22351 isWater + p 1 pos + m ()Lnet/minecraft/class_7699; method_45162 getEnabledFeatures + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_7225; method_45448 createCommandRegistryWrapper + p 1 registryRef + m (IIIIII)Z method_22341 isRegionLoaded + p 4 maxX + p 3 minZ + p 6 maxZ + p 5 maxY + p 2 minY + p 1 minX + m (II)Z method_8393 isChunkLoaded + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/class_2902$class_2903;II)I method_8624 getTopY + c {@return the Y coordinate of the topmost block at the coordinates\n{@code x} and {@code z} using {@code heightmap}} + p 1 heightmap + p 3 z + p 2 x + m (II)Z method_33598 isPosLoaded + p 1 x + p 2 z + m (Lnet/minecraft/class_2902$class_2903;Lnet/minecraft/class_2338;)I method_67393 getTopY + p 2 pos + p 1 heightmap + m (Lnet/minecraft/class_2338;)Z method_22348 isSkyVisibleAllowingSea + c {@return whether the sky is visible at {@code pos}}\n\n

In addition to the normal logic that checks the sky light level, this method\nalso returns {@code true} if {@code pos} is below the sea level, and every block\nbetween the sea level and {@code pos} is either transparent or liquid.\n\n@see BlockRenderView#isSkyVisible + p 1 pos + m (IILnet/minecraft/class_2806;Z)Lnet/minecraft/class_2791; method_8402 getChunk + p 3 leastStatus + p 2 chunkZ + p 1 chunkX + p 4 create + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Z method_22343 isRegionLoaded + p 2 max + p 1 min + m ()Z method_8608 isClient + c Checks if this world view is on the logical client.\n\n

If the value returned is false, it is expected that this world is present on a logical server. + m (III)Lnet/minecraft/class_6880; method_22387 getGeneratorStoredBiome + p 3 biomeZ + p 2 biomeY + p 1 biomeX + m (II)Lnet/minecraft/class_2791; method_8392 getChunk + c {@return the chunk with position {@code chunkX} and {@code chunkZ}} + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/class_2902$class_2903;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_8598 getTopPosition + c {@return the position of the topmost block in the column\ncontaining {@code pos} using {@code heightmap} heightmap} + p 2 pos + p 1 heightmap + m (Lnet/minecraft/class_2338;)Z method_22340 isChunkLoaded + p 1 pos + m ()Lnet/minecraft/class_5455; method_30349 getRegistryManager + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2791; method_22350 getChunk + c {@return the chunk that contains {@code pos}} + p 1 pos + m (Lnet/minecraft/class_238;)Ljava/util/stream/Stream; method_29556 getStatesInBoxIfLoaded + p 1 box +c net/minecraft/class_5868 net/minecraft/world/gen/HeightContext + f I field_34031 height + f I field_34030 minY + m ()I method_30462 getMinY + m (Lnet/minecraft/class_2794;Lnet/minecraft/class_5539;)V + p 1 generator + p 2 world + m ()I method_30458 getHeight +c net/minecraft/class_4537 net/minecraft/item/ThrowablePotionItem + f F field_55046 POWER + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2374;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1686; method_67196 createEntity + p 1 world + p 2 pos + p 3 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1686; method_67195 createEntity + p 1 world + p 2 user + p 3 stack +c net/minecraft/class_4512 net/minecraft/test/GameTestException + f I field_56169 tick + f Lnet/minecraft/class_2561; field_56168 message + m (Lnet/minecraft/class_2561;I)V + p 2 tick + p 1 message +c net/minecraft/class_5843 net/minecraft/world/gen/YOffset + f Lcom/mojang/serialization/Codec; field_28915 OFFSET_CODEC + f Lnet/minecraft/class_5843; field_28917 TOP + f Lnet/minecraft/class_5843; field_28916 BOTTOM + m (I)Lnet/minecraft/class_5843; method_33841 fixed + p 0 offset + m ()Lnet/minecraft/class_5843; method_33845 getTop + m ()Lnet/minecraft/class_5843; method_33840 getBottom + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_5843; method_33843 fromEither + p 0 either + m (Lnet/minecraft/class_5868;)I method_33844 getY + p 1 context + m (Lnet/minecraft/class_5843;)Lcom/mojang/datafixers/util/Either; method_33842 map + p 0 yOffset + m (I)Lnet/minecraft/class_5843; method_33849 belowTop + p 0 offset + m (I)Lnet/minecraft/class_5843; method_33846 aboveBottom + p 0 offset +c net/minecraft/class_5843$class_5844 net/minecraft/world/gen/YOffset$AboveBottom + f Lcom/mojang/serialization/Codec; field_28919 CODEC + f I comp_507 offset + m ()I comp_507 offset + m (I)V + p 1 offset +c net/minecraft/class_5843$class_5845 net/minecraft/world/gen/YOffset$Fixed + f Lcom/mojang/serialization/Codec; field_28920 CODEC + f I comp_508 y + m ()I comp_508 y + m (I)V + p 1 y +c net/minecraft/class_5843$class_5846 net/minecraft/world/gen/YOffset$BelowTop + f Lcom/mojang/serialization/Codec; field_28921 CODEC + f I comp_509 offset + m ()I comp_509 offset + m (I)V + p 1 offset +c net/minecraft/class_4514 net/minecraft/test/GameTestBatch + f Ljava/util/Collection; comp_2210 states + f I comp_3533 index + f Lnet/minecraft/class_6880; comp_3534 environment + m (ILjava/util/Collection;Lnet/minecraft/class_6880;)V + p 2 testFunctions + p 1 index + p 3 environment + m ()Ljava/util/Collection; comp_2210 states + m ()I comp_3533 index + m ()Lnet/minecraft/class_6880; comp_3534 environment +c net/minecraft/class_4513 net/minecraft/test/PositionedException + f Lnet/minecraft/class_2338; field_20541 pos + f Lnet/minecraft/class_2338; field_20542 relativePos + m ()Lnet/minecraft/class_2338; method_22151 getPos + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;I)V + p 2 pos + p 1 message + p 4 tick + p 3 relativePos + m ()Lnet/minecraft/class_2561; method_22150 getDebugMessage + m ()Lnet/minecraft/class_2338; method_35940 getRelativePos +c net/minecraft/class_4510 net/minecraft/client/sound/AbstractBeeSoundInstance + f Z field_20531 replaced + f Lnet/minecraft/class_4466; field_20530 bee + m ()Lnet/minecraft/class_1101; method_22135 getReplacement + m ()Z method_22136 shouldReplace + m (Lnet/minecraft/class_4466;Lnet/minecraft/class_3414;Lnet/minecraft/class_3419;)V + p 2 sound + p 3 soundCategory + p 1 entity + m ()F method_22138 getMaxPitch + m ()F method_22137 getMinPitch +c net/minecraft/class_4509 net/minecraft/client/sound/PassiveBeeSoundInstance + m (Lnet/minecraft/class_4466;)V + p 1 entity +c net/minecraft/class_4508 net/minecraft/client/sound/AggressiveBeeSoundInstance + m (Lnet/minecraft/class_4466;)V + p 1 entity +c net/minecraft/class_5836 net/minecraft/world/gen/noise/NoiseHelper + m (Ljava/lang/StringBuilder;DDD[B)V method_39119 appendDebugInfo + p 1 originX + p 0 builder + p 3 originY + p 5 originZ + p 7 permutation + m (Ljava/lang/StringBuilder;DDD[I)V method_39120 appendDebugInfo + p 1 originX + p 3 originY + p 5 originZ + p 7 permutation + p 0 builder +c net/minecraft/class_4505 net/minecraft/client/render/entity/BeeEntityRenderer + f Lnet/minecraft/class_2960; field_20524 ANGRY_TEXTURE + f Lnet/minecraft/class_2960; field_20525 ANGRY_NECTAR_TEXTURE + f Lnet/minecraft/class_2960; field_20526 PASSIVE_TEXTURE + f Lnet/minecraft/class_2960; field_20527 NECTAR_TEXTURE + m ()Lnet/minecraft/class_10002; method_62382 createRenderState + m (Lnet/minecraft/class_10002;)Lnet/minecraft/class_2960; method_22129 getTexture + m (Lnet/minecraft/class_4466;Lnet/minecraft/class_10002;F)V method_62383 updateRenderState +c net/minecraft/class_5835 net/minecraft/world/gen/feature/UnderwaterMagmaFeatureConfig + f I field_28855 placementRadiusAroundFloor + f I field_28854 floorSearchRange + f Lcom/mojang/serialization/Codec; field_28853 CODEC + f F field_28856 placementProbabilityPerValidPosition + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33771 method_33771 + p 0 instance + m (Lnet/minecraft/class_5835;)Ljava/lang/Integer; method_33773 method_33773 + p 0 config + m (Lnet/minecraft/class_5835;)Ljava/lang/Integer; method_33774 method_33774 + p 0 config + m (IIF)V + p 2 floorSearchRange + p 3 placementProbabilityPerValidPosition + p 1 minDistanceBelowSurface + m (Lnet/minecraft/class_5835;)Ljava/lang/Float; method_33772 method_33772 + p 0 config +c net/minecraft/class_5838 net/minecraft/server/world/SleepManager + c A sleep manager allows easy tracking of whether nights should be skipped\non a {@linkplain ServerWorld server world}. + f I field_28867 sleeping + c The number of players sleeping in a server world. + f I field_28866 total + c The total number of players in a server world. + m (Ljava/util/List;)Z method_33814 update + c Updates the sleeping player and total player counts.\n\n@return {@code true} if the sleeping players or total players have\nchanged + p 1 players + c the list of all players in a server world + m ()I method_33815 getSleeping + c Returns the number of sleeping players. + m ()V method_33811 clearSleeping + c Resets the number of sleeping players to 0. + m (I)Z method_33812 canSkipNight + c Returns if the number of sleeping players has reached a {@code percentage}\nout of all players.\n\n

This allows initiating the night sleeping process,\nbut still needs players to have slept long enough (checked in {@linkplain\n#canResetTime(int, List) canResetTime}) to actually skip the night. + p 1 percentage + c the percentage of players required, as obtained from the game rule + m (I)I method_33816 getNightSkippingRequirement + c Returns {@linkplain #sleeping the number of sleepers} needed to skip\na night with the given {@code percentage}. + p 1 percentage + c the percentage of players required, as obtained from the game rule + m (ILjava/util/List;)Z method_33813 canResetTime + c Returns if the night can actually be skipped at the tick this is called.\n\n

This is usually tested after {@linkplain #canSkipNight(int) canSkipNight},\nwhich is less performance intensive to check. + p 1 percentage + c the percentage of players required, as obtained from the game rule + p 2 players + c the list of all players in a world where the night would be skipped +c net/minecraft/class_4507 net/minecraft/client/render/entity/feature/StuckObjectsFeatureRenderer + f Lnet/minecraft/class_4507$class_9995; field_53231 renderPosition + f Lnet/minecraft/class_3879; field_53229 model + f Lnet/minecraft/class_2960; field_53230 texture + f Ljava/lang/Object; field_61808 stuckObjectState + m (Lnet/minecraft/class_922;Lnet/minecraft/class_3879;Ljava/lang/Object;Lnet/minecraft/class_2960;Lnet/minecraft/class_4507$class_9995;)V + p 4 texture + p 3 stuckObjectState + p 5 renderPosition + p 2 model + p 1 entityRenderer + m (Lnet/minecraft/class_10055;)I method_22134 getObjectCount + p 1 playerRenderState + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10055;FF)V method_22132 render + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IFFFI)V method_22130 renderObject + p 1 matrices + p 2 queue + p 3 light + p 5 directionX + p 6 directionY + p 7 color +c net/minecraft/class_4507$class_9995 net/minecraft/client/render/entity/feature/StuckObjectsFeatureRenderer$RenderPosition + f Lnet/minecraft/class_4507$class_9995; field_53232 IN_CUBE + f Lnet/minecraft/class_4507$class_9995; field_53233 ON_SURFACE +c net/minecraft/class_5837 net/minecraft/server/filter/FilteredMessage + c A message from the {@link AbstractTextFilterer}. + f Ljava/lang/String; comp_841 raw + c the raw (or "original") message + f Lnet/minecraft/class_5837; field_28863 EMPTY + f Lnet/minecraft/class_7649; comp_978 mask + m ()Ljava/lang/String; comp_841 raw + m ()Ljava/lang/String; method_45059 filter + m ()Z method_45063 isFiltered + m (Ljava/lang/String;)Lnet/minecraft/class_5837; method_45060 permitted + p 0 raw + m (Ljava/lang/String;)Lnet/minecraft/class_5837; method_45062 censored + p 0 raw + m ()Ljava/lang/String; method_45061 getString + m ()Lnet/minecraft/class_7649; comp_978 mask + m (Ljava/lang/String;Lnet/minecraft/class_7649;)V + p 1 raw + p 2 mask +c net/minecraft/class_4506 net/minecraft/client/render/entity/feature/StuckStingersFeatureRenderer + f Lnet/minecraft/class_2960; field_20529 TEXTURE + m (Lnet/minecraft/class_922;Lnet/minecraft/class_5617$class_5618;)V + p 2 context + p 1 entityRenderer +c net/minecraft/class_4523 net/minecraft/test/FailureLoggingTestCompletionListener + f Lorg/slf4j/Logger; field_20576 LOGGER +c net/minecraft/class_4522 net/minecraft/test/TickLimitExceededException + f Lnet/minecraft/class_2561; field_56520 message + m (Lnet/minecraft/class_2561;)V + p 1 message +c net/minecraft/class_4525 net/minecraft/test/TestInstanceUtil + f Ljava/nio/file/Path; field_20579 testStructuresDirectoryName + f Ljava/lang/String; field_33173 TEST_STRUCTURES_DIRECTORY_NAME + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_10638;)Z method_66994 method_66994 + p 2 testInstanceBlockEntity + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2338;Lnet/minecraft/class_2382;Lnet/minecraft/class_2470;Lnet/minecraft/class_3218;)Lnet/minecraft/class_10638; method_66992 createTestInstanceBlockEntity + p 2 size + p 3 rotation + p 4 world + p 0 testInstanceId + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2382;Lnet/minecraft/class_2470;)Lnet/minecraft/class_2338; method_54847 getTestInstanceBlockBoxCornerPos + p 0 pos + p 2 rotation + p 1 size + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2382;Lnet/minecraft/class_2470;)Lnet/minecraft/class_3341; method_29409 getTestInstanceBlockBox + p 0 pos + p 1 relativePos + p 2 rotation + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_3218;)V method_22246 clearArea + p 0 area + p 1 world + m (ILnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_22254 method_22254 + p 2 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)I method_66996 method_66996 + p 1 blockPos + m (Lnet/minecraft/class_2338;ILnet/minecraft/class_3218;)Ljava/util/Optional; method_22244 findContainingTestInstanceBlock + p 0 pos + p 1 radius + p 2 world + m (Lnet/minecraft/class_2338;ILnet/minecraft/class_3218;)Ljava/util/Optional; method_22255 findNearestTestInstanceBlock + p 0 pos + p 2 world + p 1 radius + m (Lnet/minecraft/class_2338;ILnet/minecraft/class_3218;)Ljava/util/stream/Stream; method_22258 findTestInstanceBlocks + p 2 world + p 1 radius + p 0 pos + m (ILnet/minecraft/class_2338;Lnet/minecraft/class_3218;)V method_22368 resetBlock + p 0 altitude + p 2 world + p 1 pos + m (Lnet/minecraft/class_1297;)Z method_22241 method_22241 + p 0 entity + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_3218;)Z method_22247 isInBounds + p 2 world + p 1 pos + p 0 testInstanceBlockPos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_66995 method_66995 + p 2 blockPos + m (Lnet/minecraft/class_2338;)Z method_71143 method_71143 + p 0 poiPos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;Lnet/minecraft/class_3218;)Ljava/util/stream/Stream; method_56252 findTargetedTestInstanceBlock + p 2 world + p 1 entity + p 0 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Ljava/util/Optional; method_66993 method_66993 + p 1 blockPos + m (I)Lnet/minecraft/class_2470; method_29408 getRotation + p 0 steps + m (Lnet/minecraft/class_2470;)I method_36105 getRotationSteps + p 0 rotation + m (Lnet/minecraft/class_6880;)Z method_71144 method_71144 + p 0 poiType +c net/minecraft/class_4524 net/minecraft/test/TestSet + f C field_33169 RUNNING + f C field_33168 NOT_STARTED + f C field_33172 REQUIRED_FAIL + f C field_33171 OPTIONAL_FAIL + f C field_33170 PASS + f Ljava/util/Collection; field_20577 tests + f Ljava/util/Collection; field_25303 listeners + m ()Z method_22236 failed + m ()I method_22238 getTestCount + m ()I method_22229 getFailedRequiredTestCount + m (Ljava/util/Collection;)V + p 1 tests + m (Lnet/minecraft/class_4518;Lnet/minecraft/class_4517;)V method_22232 method_22232 + p 1 test + m (Ljava/util/function/Consumer;)V method_29407 addListener + p 1 onFailed + m ()Ljava/util/Collection; method_36104 getOptionalTests + m ()Ljava/util/Collection; method_36103 getRequiredTests + m (Ljava/lang/StringBuffer;Lnet/minecraft/class_4517;)V method_22233 method_22233 + p 1 test + m ()Ljava/lang/String; method_22240 getResultString + m (Lnet/minecraft/class_4517;)V method_56243 remove + p 1 state + m ()I method_22234 getFailedOptionalTestCount + m ()I method_22235 getCompletedTestCount + m ()Z method_22237 hasFailedOptionalTests + m ()Z method_22239 isDone + m (Lnet/minecraft/class_4517;)V method_22230 add + p 1 test + m (Lnet/minecraft/class_4518;)V method_22231 addListener + p 1 listener +c net/minecraft/class_4521 net/minecraft/test/TestManager + f Lnet/minecraft/class_4521; field_20574 INSTANCE + f Ljava/util/Collection; field_20575 tests + f Lnet/minecraft/class_4520; field_48495 runContext + f Lnet/minecraft/class_4521$class_10822; field_57041 state + m ()V method_22228 tick + m (Lnet/minecraft/class_4517;)V method_56242 method_56242 + p 1 test + m (Lnet/minecraft/class_4517;)V method_22227 start + p 1 test + m ()V method_22226 clear + m (Lnet/minecraft/class_4520;)V method_56241 setRunContext + p 1 runContext +c net/minecraft/class_4521$class_10822 net/minecraft/test/TestManager$State + f Lnet/minecraft/class_4521$class_10822; field_57042 IDLE + f Lnet/minecraft/class_4521$class_10822; field_57043 RUNNING + f Lnet/minecraft/class_4521$class_10822; field_57044 HALTING +c net/minecraft/class_4520 net/minecraft/test/TestRunContext + f Lnet/minecraft/class_4521; field_48472 manager + f Lnet/minecraft/class_4520$class_9117; field_48481 initialSpawner + f Z field_52279 stopAfterFailure + f Lnet/minecraft/class_3218; field_48471 world + f Lcom/google/common/collect/ImmutableList; field_48474 batches + f Ljava/util/List; field_48476 toBeRetried + f Z field_61881 clearBetweenBatches + f Lorg/slf4j/Logger; field_48470 LOGGER + f Lnet/minecraft/class_4520$class_9116; field_48477 batcher + f Lnet/minecraft/class_6880; field_56190 environment + f Lnet/minecraft/class_4520$class_9117; field_48480 reuseSpawner + f I field_33151 DEFAULT_TESTS_PER_ROW + f Ljava/util/List; field_48473 states + f Ljava/util/List; field_48475 batchListeners + f Z field_48478 stopped + m ()V method_56231 onFinish + m (Lnet/minecraft/class_4520$class_9116;Ljava/util/Collection;Lnet/minecraft/class_3218;Lnet/minecraft/class_4521;Lnet/minecraft/class_4520$class_9117;Lnet/minecraft/class_4520$class_9117;ZZ)V + p 8 clearBetweenBatches + p 7 stopAfterFailure + p 6 initialSpawner + p 1 batcher + p 5 reuseSpawner + p 4 manager + p 3 world + p 2 batches + m ()V method_56229 clear + m ()Ljava/util/List; method_56219 getStates + m (Lnet/minecraft/class_4517;)V method_73075 method_73075 + p 1 state + m (Lnet/minecraft/class_4514;Lnet/minecraft/class_9114;)V method_56227 method_56227 + p 1 listener + m (Lnet/minecraft/class_4517;Lnet/minecraft/class_4517;Lnet/minecraft/class_4518;)V method_56225 method_56225 + p 3 listener + m ()V method_56226 start + m (Lnet/minecraft/class_4517;)Ljava/lang/String; method_57072 method_57072 + p 0 state + m (I)V method_56220 runBatch + p 1 batchIndex + m ()V method_66982 clearEnvironment + m (Lnet/minecraft/class_4517;)V method_56224 retry + p 1 state + m (Ljava/util/Collection;)Ljava/util/Collection; method_56221 prepareStructures + p 1 oldStates + m (Lnet/minecraft/class_4514;)Ljava/util/stream/Stream; method_56222 method_56222 + p 0 batch + m (Lnet/minecraft/class_9114;)V method_56223 addBatchListener + p 1 batchListener + m (Lnet/minecraft/class_4517;)V method_56230 method_56230 + p 0 state + m (Lnet/minecraft/class_4517;)Ljava/util/Optional; method_56228 prepareStructure + p 1 oldState +c net/minecraft/class_4520$1 net/minecraft/test/TestRunContext$1 + m (J)V method_61094 method_61094 + p 1 chunkPos + m (Lnet/minecraft/class_4514;Lnet/minecraft/class_9114;)V method_56234 method_56234 + p 1 listener + m (J)V method_56233 method_56233 + p 1 chunkPos + m (Lnet/minecraft/class_4517;)V method_56232 onFinished + p 1 state +c net/minecraft/class_4520$class_9116 net/minecraft/test/TestRunContext$Batcher + m (Ljava/util/Collection;)Ljava/util/Collection; batch batch + p 1 states +c net/minecraft/class_4520$class_9117 net/minecraft/test/TestRunContext$TestStructureSpawner + f Lnet/minecraft/class_4520$class_9117; field_48491 REUSE + f Lnet/minecraft/class_4520$class_9117; field_48492 NOOP + m (Lnet/minecraft/class_4517;)Ljava/util/Optional; method_56240 method_56240 + p 0 oldState + m (Lnet/minecraft/class_4517;)Ljava/util/Optional; spawnStructure spawnStructure + p 1 oldState + m (Lnet/minecraft/class_4517;)Ljava/util/Optional; method_56239 method_56239 + p 0 oldState + m (Lnet/minecraft/class_3218;)V method_61098 onBatch + p 1 world +c net/minecraft/class_4520$class_9115 net/minecraft/test/TestRunContext$Builder + f Z field_52280 stopAfterFailure + f Ljava/util/Collection; field_48490 batches + f Z field_61882 clearBetweenBatches + f Lnet/minecraft/class_3218; field_48485 world + f Lnet/minecraft/class_4520$class_9117; field_48488 reuseSpawner + f Lnet/minecraft/class_4520$class_9117; field_48489 initialSpawner + f Lnet/minecraft/class_4520$class_9116; field_48487 batcher + f Lnet/minecraft/class_4521; field_48486 manager + m (Ljava/util/Collection;Lnet/minecraft/class_3218;)Lnet/minecraft/class_4520$class_9115; method_56238 ofStates + p 0 states + p 1 world + m (Ljava/util/Collection;Lnet/minecraft/class_3218;)Lnet/minecraft/class_4520$class_9115; method_56236 of + p 0 batches + p 1 world + m (Ljava/util/Collection;Lnet/minecraft/class_3218;)V + p 2 world + p 1 batches + m ()Lnet/minecraft/class_4520$class_9115; method_73076 clearBetweenBatches + m (Lnet/minecraft/class_9120;)Lnet/minecraft/class_4520$class_9115; method_61096 reuseSpawner + p 1 reuseSpawner + m ()Lnet/minecraft/class_4520; method_56235 build + m (Lnet/minecraft/class_4520$class_9116;)Lnet/minecraft/class_4520$class_9115; method_61095 batcher + p 1 batcher + m (Lnet/minecraft/class_4520$class_9117;)Lnet/minecraft/class_4520$class_9115; method_56237 initialSpawner + p 1 initialSpawner + m ()Lnet/minecraft/class_4520$class_9115; method_61097 stopAfterFailure +c net/minecraft/class_4516 net/minecraft/test/TestContext + f Lnet/minecraft/class_4517; field_20558 test + f Z field_33146 hasFinalClause + m (Lnet/minecraft/class_2338;Ljava/util/function/Predicate;Ljava/util/function/Function;)V method_35992 checkBlock + p 2 predicate + p 3 messageGetter + p 1 pos + m (Lnet/minecraft/class_1308;FFF)V method_57099 setEntityPos + p 3 y + p 4 z + p 1 entity + p 2 x + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_2338;)V method_35977 expectSameStates + p 1 checkedBlockBox + p 2 correctStatePos + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_4512; method_66943 createError + p 1 message + m (Lnet/minecraft/class_1299;IIID)Lnet/minecraft/class_1297; method_56202 expectEntity + p 1 type + p 2 x + p 5 margin + p 3 y + p 4 z + m (Lnet/minecraft/class_238;Lnet/minecraft/class_1297;)Z method_56204 method_56204 + p 1 entity + m (Lnet/minecraft/class_2561;)V method_35995 throwGameTestException + p 1 message + m (Lnet/minecraft/class_2248;III)V method_35971 expectBlock + p 4 z + p 3 y + p 2 x + p 1 block + m (Lnet/minecraft/class_1299;III)V method_36042 dontExpectEntityAtEnd + p 1 type + p 4 z + p 3 y + p 2 x + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_2338;DI)V method_35970 expectItemsAt + p 3 radius + p 1 item + p 2 pos + p 5 amount + m (Lnet/minecraft/class_1299;IIILnet/minecraft/class_3730;)Lnet/minecraft/class_1308; method_75527 spawnEntity + p 2 x + p 3 y + p 1 type + p 4 z + p 5 reason + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_243;)Lnet/minecraft/class_1542; method_57100 spawnItem + p 1 item + p 2 pos + m (JLjava/lang/Runnable;)V method_35951 runAtTick + p 1 tick + p 3 runnable + m (Ljava/util/function/Consumer;)V method_35998 forEachRelativePos + p 1 posConsumer + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)V method_36034 useBlock + p 2 player + p 1 pos + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_6880;I)V method_52889 expectEntityHasEffect + p 2 effect + p 1 entity + p 3 amplifier + m (Lnet/minecraft/class_2338;)V method_55453 forceTickIceAndSnow + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;)V method_35984 setBlockState + p 2 block + p 1 pos + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_2338;)V method_36043 dontExpectEntityAtEnd + p 1 type + p 2 pos + m (Lnet/minecraft/class_1299;IIID)Ljava/util/List; method_56207 getEntitiesAround + p 1 type + p 2 x + p 3 y + p 4 z + p 5 margin + m (ZLjava/lang/String;)V method_75529 assertTrue + p 1 condition + p 2 message + m (Ljava/lang/Runnable;J)V method_36019 method_36019 + p 2 tick + m (Lnet/minecraft/class_1299;DDD)V method_35960 expectEntityToTouch + p 6 z + p 2 x + p 1 type + p 4 y + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_2338;D)Ljava/util/List; method_44335 getEntitiesAround + p 1 type + p 2 pos + p 3 radius + m (Lnet/minecraft/class_5321;)V method_55451 setBiome + p 1 biome + m (ZLnet/minecraft/class_2561;)V method_46226 assertTrue + p 1 condition + p 2 message + m (Lnet/minecraft/class_6862;Lnet/minecraft/class_2338;)V method_66935 expectBlockIn + p 1 tag + p 2 pos + m (Lnet/minecraft/class_2338;)V method_36047 expectEmptyContainer + p 1 pos + m (III)V method_35945 pushButton + p 1 x + p 2 y + p 3 z + m (Ljava/util/function/Predicate;Lnet/minecraft/class_2680;)Z method_35999 method_35999 + p 1 state + m (Lnet/minecraft/class_1934;)Lnet/minecraft/class_1657; method_36021 createMockPlayer + p 1 gameMode + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)I method_56205 method_56205 + p 2 b + p 1 a + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_2338;)V method_36038 expectEntityAtEnd + p 2 pos + p 1 type + m (Lnet/minecraft/class_1299;III)V method_36037 expectEntityAtEnd + p 4 z + p 2 x + p 3 y + p 1 type + m (Lnet/minecraft/class_2338;)V method_36050 forceRandomTick + p 1 pos + m (Lnet/minecraft/class_1297;Ljava/util/function/Function;Ljava/lang/Object;Lnet/minecraft/class_2561;)V method_35957 testEntityProperty + p 3 value + p 4 message + p 1 entity + p 2 propertyGetter + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)Z method_35985 method_35985 + p 3 block1 + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_238;Lnet/minecraft/class_2561;)V method_61173 expectEntityIn + p 3 message + p 2 box + p 1 type + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)V method_47816 useStackOnBlock + p 1 player + p 2 stack + p 3 pos + p 4 direction + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1542;)Z method_74443 method_74443 + p 1 entity + m (IIILnet/minecraft/class_2680;)V method_35947 setBlockState + p 1 x + p 4 state + p 2 y + p 3 z + m (Ljava/lang/Object;)Z method_48002 method_48002 + p 0 entity + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Ljava/util/function/IntPredicate;Ljava/util/function/Supplier;)V method_52225 expectRedstonePower + p 2 direction + p 1 pos + p 4 messageGetter + p 3 powerPredicate + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1542; method_46225 spawnItem + p 1 item + p 2 pos + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1799;)Z method_48000 method_48000 + p 1 stack + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_2350;)V method_73072 setBlockFacing + p 1 pos + p 2 block + p 3 facing + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_46227 getRelative + p 1 pos + m (Lnet/minecraft/class_2338;)V method_36026 pushButton + p 1 pos + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_2338;F)Lnet/minecraft/class_4693; method_35967 startMovingTowards + p 3 speed + p 1 entity + p 2 pos + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2338;)V method_35972 expectBlock + p 2 pos + p 1 block + m (Ljava/lang/Runnable;)V method_36040 forEachRemainingTick + p 1 runnable + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_243;I)Ljava/util/List; method_73069 spawnEntities + p 1 type + p 2 pos + p 3 count + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_1309; method_51821 setHealthLow + p 1 entity + m ()V method_36048 markFinalCause + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_1297; method_56201 expectEntityInWorld + p 1 type + m (Lnet/minecraft/class_2338;Ljava/util/function/Predicate;Ljava/util/function/Function;)V method_36017 checkBlockState + p 3 messageGetter + p 2 predicate + p 1 pos + m (Lnet/minecraft/class_1792;)V method_54143 expectItem + p 1 item + m ()V method_36036 complete + m (Lnet/minecraft/class_238;)Lnet/minecraft/class_238; method_62773 getRelative + p 1 box + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_2338;I)Ljava/util/List; method_73070 spawnEntities + p 2 pos + p 1 type + p 3 count + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2769;Ljava/util/function/Predicate;Lnet/minecraft/class_2561;)V method_35988 checkBlockProperty + p 3 predicate + p 4 message + p 1 pos + p 2 property + m (Lnet/minecraft/class_2248;III)V method_36024 expectBlockAtEnd + p 2 x + p 1 block + p 4 z + p 3 y + m (Lnet/minecraft/class_1297;Ljava/util/function/Predicate;Lnet/minecraft/class_2561;)V method_35958 testEntity + p 1 entity + p 2 predicate + p 3 message + m ()Lnet/minecraft/class_238; method_36051 getTestBox + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_2338;D)V method_35965 expectEntityAround + p 3 radius + p 2 pos + p 1 type + m ()Lnet/minecraft/class_3222; method_51891 createMockCreativeServerPlayerInWorld + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1792;)V method_35983 expectContainerWith + p 1 pos + p 2 item + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_1297;)V method_35996 throwPositionedException + p 2 entity + p 1 message + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_66947 expectBlockState + p 1 pos + p 2 state + m (Lnet/minecraft/class_4517;)V + p 1 test + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_243;)Lnet/minecraft/class_1297; method_75528 spawnEntity + p 2 pos + p 1 type + m (Lnet/minecraft/class_1297;III)V method_35953 expectEntityAt + p 2 x + p 3 y + p 4 z + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;)V method_35955 expectEntityAt + p 1 entity + p 2 pos + m (Lnet/minecraft/class_1792;)V method_54144 dontExpectItem + p 1 item + m ()Lnet/minecraft/class_4693; method_36041 createTimedTaskRunner + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_238;)V method_59872 dontExpectEntityBetween + p 2 box + p 1 type + m (Lnet/minecraft/class_1299;DDD)V method_36005 dontExpectEntityToTouch + p 1 type + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/class_1299;III)V method_36031 dontExpectEntityAt + p 1 type + p 4 z + p 2 x + p 3 y + m (Ljava/lang/Runnable;)V method_36035 runAtEveryTick + p 1 task + m (Lnet/minecraft/class_2338;Ljava/lang/Class;Ljava/util/function/Predicate;Ljava/util/function/Supplier;)V method_60651 checkBlockEntity + p 2 clazz + p 1 pos + p 4 messageGetter + p 3 predicate + m ()V method_36001 killAllEntities + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;Ljava/util/function/Function;Ljava/lang/Object;)V method_35982 expectEntityWithData + p 2 type + p 1 pos + p 4 data + p 3 entityDataGetter + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)Z method_35974 method_35974 + p 2 block1 + m (Lnet/minecraft/class_2338;Ljava/lang/String;[Ljava/lang/Object;)Lnet/minecraft/class_4513; method_66941 createError + p 2 translationKey + p 1 pos + p 3 args + m (Ljava/lang/Runnable;)V method_35993 addFinalTask + p 1 runnable + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_2338;)V method_36032 dontExpectEntityAt + p 1 type + p 2 pos + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_36054 getRelativePos + p 1 pos + m (ZLnet/minecraft/class_2561;)V method_49994 assertFalse + p 2 message + p 1 condition + m (Lnet/minecraft/class_1299;I)V method_55323 expectEntities + p 2 amount + p 1 type + m (Ljava/lang/String;[Ljava/lang/Object;)Lnet/minecraft/class_4512; method_66937 createError + p 2 args + p 1 translationKey + m (IIILnet/minecraft/class_2248;)V method_35946 setBlockState + p 2 y + p 1 x + p 4 block + p 3 z + m (Ljava/lang/Runnable;)V method_36018 addInstantFinalTask + p 1 runnable + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;Ljava/util/function/Predicate;)V method_64113 expectEntity + p 1 pos + p 2 type + p 3 predicate + m (Ljava/lang/String;)V method_73071 throwGameTestException + p 1 message + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;Lnet/minecraft/class_1792;)V method_48001 expectEntityHoldingItem + p 2 entityType + p 3 item + p 1 pos + m (Lnet/minecraft/class_1299;)Ljava/util/List; method_56208 getEntities + p 1 type + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2769;Ljava/lang/Comparable;)V method_35987 expectBlockProperty + p 1 pos + p 2 property + p 3 value + m (Lnet/minecraft/class_2338;)V method_36044 removeBlock + p 1 pos + m (Lnet/minecraft/class_1299;III)V method_36022 expectEntityAt + p 2 x + p 3 y + p 1 type + p 4 z + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2338;)V method_36025 expectBlockAtEnd + p 2 pos + p 1 block + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_2350; method_76680 rotate + p 1 direction + m (Lnet/minecraft/class_1299;FFF)Lnet/minecraft/class_1297; method_35961 spawnEntity + p 2 x + p 1 type + p 4 z + p 3 y + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)V method_35990 expectSameStates + p 1 checkedPos + p 2 correctStatePos + m (Lnet/minecraft/class_238;Lnet/minecraft/class_1299;Ljava/util/function/Function;Ljava/lang/Object;)V method_75849 expectEntityWithData + p 4 data + p 1 box + p 3 entityDataGetter + p 2 type + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1297; method_35964 spawnEntity + p 2 pos + p 1 type + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_3965;)V method_47817 useBlock + p 1 pos + p 3 result + p 2 player + m (JLjava/lang/Runnable;)V method_36003 waitAndRun + p 1 ticks + p 3 runnable + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2561; method_66946 method_66946 + p 1 actualBlock + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_2338;)V method_36023 expectEntityAt + p 2 pos + p 1 type + m (Ljava/lang/Class;)V method_52207 killAllEntities + p 1 entityClass + m (III)V method_36002 toggleLever + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1542;)Z method_74446 method_74446 + p 1 entity + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_2338;ID)V method_44606 expectEntitiesAround + p 3 amount + p 4 radius + p 1 type + p 2 pos + m (Lnet/minecraft/class_1299;)V method_35959 expectEntity + p 1 type + m ()Lnet/minecraft/class_238; method_36053 getRelativeTestBox + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_35978 getAbsolute + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;Ljava/util/function/Function;Ljava/lang/Object;)V method_36015 expectEntityWithDataEnd + p 1 pos + p 2 type + p 3 entityDataGetter + p 4 data + m (Lnet/minecraft/class_1299;FFF)Lnet/minecraft/class_1308; method_36006 spawnMob + p 3 y + p 4 z + p 1 type + p 2 x + m (Lnet/minecraft/class_2338;)V method_36039 toggleLever + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_35986 setBlockState + p 2 state + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3341;Lnet/minecraft/class_2338;)V method_35989 method_35989 + p 3 checkedPos + m (Lnet/minecraft/class_2769;Ljava/util/function/Predicate;Lnet/minecraft/class_2680;)Z method_36000 method_36000 + p 2 state + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2561; method_66944 method_66944 + p 1 state + m (ZLjava/lang/String;)V method_75530 assertFalse + p 1 condition + p 2 message + m (Lnet/minecraft/class_2902$class_2903;II)I method_42063 getRelativeTopY + p 1 heightmap + p 2 x + p 3 z + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_238;)V method_46224 expectEntityInside + p 1 type + p 2 box + m (Lnet/minecraft/class_2338;Ljava/lang/Class;)Lnet/minecraft/class_2586; method_36014 getBlockEntity + p 1 pos + p 2 clazz + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_243;D)Ljava/util/List; method_56203 getEntitiesAround + p 3 margin + p 2 pos + p 1 type + m (Lnet/minecraft/class_238;)Lnet/minecraft/class_238; method_62772 getAbsolute + p 1 box + m (Lnet/minecraft/class_1792;FFF)Lnet/minecraft/class_1542; method_35968 spawnItem + p 4 z + p 3 y + p 2 x + p 1 item + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V method_75850 assertEquals + p 3 message + p 2 value + p 1 expected + m (JLnet/minecraft/class_2338;Lnet/minecraft/class_1792;)V method_35950 expectContainerWith + p 1 delay + p 3 pos + p 4 item + m (Lnet/minecraft/class_2338;J)V method_35981 putAndRemoveRedstoneBlock + p 1 pos + p 2 delay + m (Lnet/minecraft/class_1297;)V method_64544 method_64544 + p 1 entity + m (JLnet/minecraft/class_2338;)V method_35949 expectEmptyContainer + p 3 pos + p 1 delay + m (Lnet/minecraft/class_2248;III)V method_36011 dontExpectBlock + p 3 y + p 4 z + p 1 block + p 2 x + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1792;)V method_66940 expectContainerWithSingle + p 1 pos + p 2 item + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_36052 getAbsolutePos + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2561;)Lnet/minecraft/class_4513; method_66942 createError + p 1 pos + p 2 message + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_243;)Lnet/minecraft/class_1308; method_36008 spawnMob + p 1 type + p 2 pos + m (Ljava/lang/Runnable;)V method_36028 addTask + p 1 task + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;Lnet/minecraft/class_1792;)V method_48003 expectEntityWithItem + p 1 pos + p 2 entityType + p 3 item + m (Ljava/lang/Object;Ljava/lang/Object;Lnet/minecraft/class_2561;)V method_56606 assertEquals + p 1 expected + p 3 message + p 2 value + m (Lnet/minecraft/class_6862;Lnet/minecraft/class_2680;)Z method_66945 method_66945 + p 1 state + m ()J method_36045 getTick + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_243;Lnet/minecraft/class_3730;)Lnet/minecraft/class_1297; method_35963 spawnEntity + p 1 type + p 2 pos + p 3 reason + m (Ljava/util/function/Function;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2561; method_66938 method_66938 + p 1 state + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1297;)Z method_35979 method_35979 + p 1 entity + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_1309; method_35966 drown + p 1 entity + m (Ljava/lang/Runnable;J)V method_35994 method_35994 + p 2 tick + m ()Lnet/minecraft/class_2350; method_73074 getDirection + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1542;)Z method_74444 method_74444 + p 1 entity + m (Lnet/minecraft/class_2338;)V method_46229 useBlock + p 1 pos + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1297;)Z method_36013 method_36013 + p 1 entity + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2561; method_66936 method_66936 + p 1 actualBlock + m (Lnet/minecraft/class_1299;)V method_36004 dontExpectEntity + p 1 type + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)V method_73073 setBlockFacing + p 1 pos + p 2 block + p 3 facing + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2338;)V method_35997 throwPositionedException + p 2 pos + p 1 message + m (Lnet/minecraft/class_2338;)V method_66562 forceScheduledTick + p 1 pos + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1308; method_36009 spawnMob + p 2 pos + p 1 type + m ()Lnet/minecraft/class_2470; method_61093 getRotation + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)Z method_35954 method_35954 + p 1 e + m (Lnet/minecraft/class_1297;)Z method_52206 method_52206 + p 0 entity + m ()V method_55452 forceTickIceAndSnow + m (Lnet/minecraft/class_1299;III)Lnet/minecraft/class_1297; method_35962 spawnEntity + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_2338;D)V method_35969 expectItemAt + p 3 radius + p 2 pos + p 1 item + m (Lnet/minecraft/class_6862;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2561; method_66934 method_66934 + p 1 state + m (Lnet/minecraft/class_1299;III)Lnet/minecraft/class_1308; method_36007 spawnMob + p 3 y + p 4 z + p 1 type + p 2 x + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_2338;D)V method_42762 dontExpectItemAt + p 3 radius + p 2 pos + p 1 item + m (Lnet/minecraft/class_1297;)V method_64542 killEntity + p 1 entity + m ()Lnet/minecraft/class_3218; method_35943 getWorld + m (ILjava/lang/Runnable;)V method_35948 addFinalTaskWithDuration + p 2 runnable + p 1 duration + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_35980 getBlockState + p 1 pos + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;F)V method_64543 damage + p 3 amount + p 2 damageSource + p 1 entity + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2338;)V method_36012 dontExpectBlock + p 2 pos + p 1 block + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1542;)Z method_74445 method_74445 + p 1 entity +c net/minecraft/class_5847 net/minecraft/world/gen/StructureTerrainAdaptation + f Ljava/lang/String; field_38434 name + f Lcom/mojang/serialization/Codec; field_38433 CODEC + f Lnet/minecraft/class_5847; field_38431 BEARD_THIN + f Lnet/minecraft/class_5847; field_38432 BEARD_BOX + f Lnet/minecraft/class_5847; field_51413 ENCAPSULATE + f Lnet/minecraft/class_5847; field_28923 BURY + f Lnet/minecraft/class_5847; field_28922 NONE + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_4518 net/minecraft/test/TestListener + m (Lnet/minecraft/class_4517;)V method_22188 onStarted + p 1 test + m (Lnet/minecraft/class_4517;Lnet/minecraft/class_4517;Lnet/minecraft/class_4520;)V method_56216 onRetry + p 3 context + p 2 nextState + p 1 lastState + m (Lnet/minecraft/class_4517;Lnet/minecraft/class_4520;)V method_33317 onPassed + p 1 test + p 2 context + m (Lnet/minecraft/class_4517;Lnet/minecraft/class_4520;)V method_22190 onFailed + p 2 context + p 1 test +c net/minecraft/class_4517 net/minecraft/test/GameTestState + f I field_20563 tickLimit + f Lit/unimi/dsi/fastutil/objects/Object2LongMap; field_21453 ticksByRunnables + f Lnet/minecraft/class_6880$class_6883; field_56173 instanceEntry + f Ljava/util/Collection; field_21452 timedTaskRunners + f I field_21455 tick + f Lcom/google/common/base/Stopwatch; field_21456 stopwatch + f Lnet/minecraft/class_10638; field_56176 blockEntity + f Lnet/minecraft/class_3218; field_20561 world + f Z field_20565 started + f Z field_47173 initialized + f Lnet/minecraft/class_9118; field_48469 testAttemptConfig + f Lnet/minecraft/class_10751; field_20569 exception + f Ljava/util/Collection; field_20562 listeners + f Lnet/minecraft/class_2470; field_56175 rotation + f Z field_47174 tickedOnce + f Lnet/minecraft/class_2338; field_56174 testBlockPos + f Z field_20567 completed + m ()Z method_22179 isStarted + m ()Lnet/minecraft/class_10660; method_66955 getInstance + m (I)Lnet/minecraft/class_4517; method_23634 startCountdown + p 1 additionalExpectedStopTime + m (Lnet/minecraft/class_4693;)V method_23637 method_23637 + p 1 runner + m ()Z method_22183 isRequired + m ()Lnet/minecraft/class_4693; method_36066 createTimedTaskRunner + m (Lnet/minecraft/class_1297;)V method_54434 method_54434 + p 0 entity + m ()I method_36065 getTick + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_3218;)Lnet/minecraft/class_10638; method_66950 placeTestInstance + p 3 world + p 2 rotation + p 1 pos + m ()V method_23640 complete + m (Lnet/minecraft/class_10751;)V method_22168 fail + p 1 exception + m ()V method_33315 tickTests + m ()Lnet/minecraft/class_3218; method_22176 getWorld + m ()V method_36064 completeIfSuccessful + m ()Lnet/minecraft/class_10638; method_66953 getTestInstanceBlockEntity + m (Lnet/minecraft/class_4520;Lnet/minecraft/class_4518;)V method_33316 method_33316 + p 2 listener + m (Lnet/minecraft/class_2338;)V method_66949 setTestBlockPos + p 1 testBlockPos + m ()Z method_22178 isFailed + m ()Lnet/minecraft/class_9118; method_56215 getTestAttemptConfig + m (Lnet/minecraft/class_4693;)V method_23636 method_23636 + p 1 runner + m ()I method_32242 getMaxAttempts + m ()Lnet/minecraft/class_4517; method_56210 copy + m (Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_2470;Lnet/minecraft/class_3218;Lnet/minecraft/class_9118;)V + p 4 testAttemptConfig + p 1 instanceEntry + p 2 rotation + p 3 world + m (Lnet/minecraft/class_1297;)Z method_54435 method_54435 + p 0 entity + m (Lnet/minecraft/class_2561;)V method_67485 fail + p 1 message + m ()Z method_32241 isFlaky + m (JLjava/lang/Runnable;)V method_36060 runAtTick + p 3 runnable + p 1 tick + m ()Lnet/minecraft/class_2338; method_22172 getPos + m ()Lnet/minecraft/class_238; method_36062 getBoundingBox + m ()Lnet/minecraft/class_4517; method_22166 init + m ()I method_36067 getTickLimit + m (Lnet/minecraft/class_4520;Lnet/minecraft/class_4518;)V method_22171 method_22171 + p 2 listener + m ()Lnet/minecraft/class_10751; method_22182 getThrowable + m ()V method_23639 start + m ()J method_36063 getElapsedMilliseconds + m ()I method_32243 getRequiredSuccesses + m ()Z method_22177 isPassed + m ()Lnet/minecraft/class_2960; method_66951 getId + m (Lnet/minecraft/class_4518;)V method_22167 addListener + p 1 listener + m ()V method_56213 initializeImmediately + m ()Ljava/util/stream/Stream; method_56209 streamListeners + m ()Lnet/minecraft/class_2470; method_29402 getRotation + m ()Z method_22184 isOptional + m (Lnet/minecraft/class_4518;)V method_66952 method_66952 + p 1 listener + m ()Lnet/minecraft/class_6880$class_6883; method_66956 getInstanceEntry + m ()Lnet/minecraft/class_2960; method_66954 getStructure + m ()Z method_22180 isCompleted + m ()Lnet/minecraft/class_2338; method_64385 getOrigin + m (Lnet/minecraft/class_4520;)V method_22165 tick + p 1 context +c net/minecraft/class_8096 net/minecraft/client/gui/screen/world/WorldScreenOptionGrid + f Ljava/util/List; field_42197 options + f I field_42196 BUTTON_WIDTH + f Lnet/minecraft/class_8133; field_55266 layout + m ()V method_48683 refresh + m ()Lnet/minecraft/class_8133; method_65521 getLayout + m (I)Lnet/minecraft/class_8096$class_8097; method_48684 builder + p 0 width + m (Ljava/util/List;Lnet/minecraft/class_8133;)V + p 2 layout + p 1 options +c net/minecraft/class_8096$class_8135 net/minecraft/client/gui/screen/world/WorldScreenOptionGrid$TooltipBoxDisplay + f Z comp_1260 alwaysMaxHeight + f I comp_1259 maxInfoRows + m ()I comp_1259 maxInfoRows + m ()Z comp_1260 alwaysMaxHeight + m (IZ)V + p 1 maxInfoRows + p 2 alwaysMaxHeight +c net/minecraft/class_8096$class_8097 net/minecraft/client/gui/screen/world/WorldScreenOptionGrid$Builder + f I field_42510 rows + f I field_42200 marginLeft + f I field_42509 rowSpacing + f I field_42198 width + f Ljava/util/List; field_42199 options + f Ljava/util/Optional; field_42511 tooltipBoxDisplay + m ()Lnet/minecraft/class_8096; method_48686 build + m (IZ)Lnet/minecraft/class_8096$class_8097; method_49026 withTooltipBox + p 1 maxInfoRows + p 2 alwaysMaxHeight + m (I)Lnet/minecraft/class_8096$class_8097; method_48685 marginLeft + p 1 marginLeft + m ()V method_49025 incrementRows + m (Lnet/minecraft/class_2561;Ljava/util/function/BooleanSupplier;Ljava/util/function/Consumer;)Lnet/minecraft/class_8096$class_8099; method_48687 add + p 2 getter + p 3 setter + p 1 text + m (I)V + p 1 width + m (I)Lnet/minecraft/class_8096$class_8097; method_49027 setRowSpacing + p 1 rowSpacing +c net/minecraft/class_8096$class_8099 net/minecraft/client/gui/screen/world/WorldScreenOptionGrid$OptionBuilder + f Ljava/util/function/Consumer; field_42206 setter + f Lnet/minecraft/class_2561; field_42204 text + f Ljava/util/function/BooleanSupplier; field_42205 getter + f I field_42209 buttonWidth + f Lnet/minecraft/class_2561; field_42207 tooltip + f Ljava/util/function/BooleanSupplier; field_42208 toggleable + m (Lnet/minecraft/class_5676;)Lnet/minecraft/class_5250; method_49028 method_49028 + p 1 button + m (Lnet/minecraft/class_8096$class_8097;Lnet/minecraft/class_7845;I)Lnet/minecraft/class_8096$class_8098; method_48691 build + p 2 gridWidget + p 1 gridBuilder + p 3 row + m (Ljava/util/function/BooleanSupplier;)Lnet/minecraft/class_8096$class_8099; method_48693 toggleable + p 1 toggleable + m (Lnet/minecraft/class_8096$class_8097;Lnet/minecraft/class_7845;ILnet/minecraft/class_8096$class_8135;)V method_49030 method_49030 + p 4 tooltipBoxDisplay + m (Lnet/minecraft/class_7919;Ljava/lang/Boolean;)Lnet/minecraft/class_7919; method_49029 method_49029 + p 1 value + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_48690 method_48690 + p 1 button + p 2 value + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_8096$class_8099; method_48694 tooltip + p 1 tooltip + m (Lnet/minecraft/class_5676;)Lnet/minecraft/class_5250; method_49031 method_49031 + p 1 button + m (Lnet/minecraft/class_2561;Ljava/util/function/BooleanSupplier;Ljava/util/function/Consumer;I)V + p 3 setter + p 2 getter + p 4 buttonWidth + p 1 text +c net/minecraft/class_8096$class_8098 net/minecraft/client/gui/screen/world/WorldScreenOptionGrid$Option + f Ljava/util/function/BooleanSupplier; comp_1262 getter + f Ljava/util/function/BooleanSupplier; comp_1263 toggleable + f Lnet/minecraft/class_5676; comp_1261 button + m ()Ljava/util/function/BooleanSupplier; comp_1262 getter + m ()Ljava/util/function/BooleanSupplier; comp_1263 toggleable + m ()V method_48688 refresh + m (Lnet/minecraft/class_5676;Ljava/util/function/BooleanSupplier;Ljava/util/function/BooleanSupplier;)V + p 1 button + p 3 toggleable + p 2 getter + m ()Lnet/minecraft/class_5676; comp_1261 button +c net/minecraft/class_5821 net/minecraft/world/gen/feature/util/FeatureContext + f Ljava/util/Optional; field_34697 feature + f Lnet/minecraft/class_5281; field_28769 world + f Lnet/minecraft/class_5819; field_28771 random + f Lnet/minecraft/class_2794; field_28770 generator + f Lnet/minecraft/class_3037; field_28773 config + f Lnet/minecraft/class_2338; field_28772 origin + m ()Lnet/minecraft/class_5819; method_33654 getRandom + m ()Lnet/minecraft/class_2338; method_33655 getOrigin + m ()Lnet/minecraft/class_3037; method_33656 getConfig + m ()Lnet/minecraft/class_2794; method_33653 getGenerator + m (Ljava/util/Optional;Lnet/minecraft/class_5281;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_3037;)V + p 3 generator + p 2 world + p 5 origin + p 4 random + p 1 feature + p 6 config + m ()Lnet/minecraft/class_5281; method_33652 getWorld + m ()Ljava/util/Optional; method_38427 getFeature +c net/minecraft/class_5820 net/minecraft/util/math/random/CheckedRandom + c A checked random that fails fast when it detects concurrent usage. + f J field_31473 MULTIPLIER + f I field_31471 INT_BITS + f J field_31472 SEED_MASK + f Ljava/util/concurrent/atomic/AtomicLong; field_28766 seed + f Lnet/minecraft/class_6672; field_35124 gaussianGenerator + f J field_31474 INCREMENT + m (J)V + p 1 seed +c net/minecraft/class_5820$class_6671 net/minecraft/util/math/random/CheckedRandom$Splitter + f J field_35125 seed + m (J)V + p 1 seed +c net/minecraft/class_5822 net/minecraft/util/math/noise/InterpolatedNoiseSampler + f Lnet/minecraft/class_7243; field_37206 CODEC + f D field_38275 smearScaleMultiplier + f D field_38272 scaledYScale + f D field_38271 scaledXzScale + f D field_38274 yFactor + f D field_38273 xzFactor + f D field_36630 maxValue + f Lcom/mojang/serialization/MapCodec; field_38270 MAP_CODEC + f Lnet/minecraft/class_3537; field_28775 upperInterpolatedNoise + f Lnet/minecraft/class_3537; field_28776 interpolationNoise + f Lnet/minecraft/class_3537; field_28774 lowerInterpolatedNoise + f D field_34753 yScale + f D field_34752 xzScale + f Lcom/mojang/serialization/Codec; field_38269 SCALE_AND_FACTOR_RANGE + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_5822; method_42386 copyWithRandom + p 1 random + m (Ljava/lang/StringBuilder;)V method_39117 addDebugInfo + p 1 info + m (Lnet/minecraft/class_5819;DDDDD)V + p 4 yScale + p 2 xzScale + p 1 random + p 8 yFactor + p 6 xzFactor + p 10 smearScaleMultiplier + m (Lnet/minecraft/class_3537;Lnet/minecraft/class_3537;Lnet/minecraft/class_3537;DDDDD)V + p 6 yScale + p 8 xzFactor + p 2 upperInterpolatedNoise + p 3 interpolationNoise + p 4 xzScale + p 1 lowerInterpolatedNoise + p 10 yFactor + p 12 smearScaleMultiplier + m (DDDDD)Lnet/minecraft/class_5822; method_42384 createBase3dNoiseFunction + p 8 smearScaleMultiplier + p 2 yScale + p 0 xzScale + p 6 yFactor + p 4 xzFactor +c net/minecraft/class_5817 net/minecraft/world/gen/StructureWeightSampler + c Applies weights to noise values if they are near structures, placing terrain under them and hollowing out the space above them. + f [F field_28741 STRUCTURE_WEIGHT_TABLE + f I field_31462 EDGE_LENGTH + f I field_31461 INDEX_OFFSET + m ([F)V method_33640 method_33640 + p 0 array + m (III)D method_33642 calculateStructureWeight + c Calculates the structure weight for the given position.\n

The weight increases as x and z approach {@code (0, 0)}, and positive y values make the weight negative while negative y values make the weight positive. + p 0 x + p 2 z + p 1 y + m (I)Z method_42692 indexInBounds + p 0 i + m (Lnet/minecraft/class_3195;)Z method_42696 method_42696 + p 0 structure + m (IIII)D method_33641 getStructureWeight + c Gets the structure weight from the array from the given position, or 0 if the position is out of bounds. + p 0 x + p 1 y + p 2 z + p 3 yy + m (DDD)D method_33832 getMagnitudeWeight + p 4 z + p 0 x + p 2 y + m (IDI)D method_42693 structureWeight + p 3 z + p 0 x + p 1 y + m (Lnet/minecraft/class_5138;Lnet/minecraft/class_1923;)Lnet/minecraft/class_5817; method_42695 createStructureWeightSampler +c net/minecraft/class_5817$class_7301 net/minecraft/world/gen/StructureWeightSampler$Piece + f Lnet/minecraft/class_3341; comp_682 box + f I comp_684 groundLevelDelta + f Lnet/minecraft/class_5847; comp_683 terrainAdjustment + m ()Lnet/minecraft/class_5847; comp_683 terrainAdjustment + m ()I comp_684 groundLevelDelta + m ()Lnet/minecraft/class_3341; comp_682 box + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_5847;I)V + p 1 box + p 2 terrainAdjustment + p 3 groundLevelDelta +c net/minecraft/class_5819 net/minecraft/util/math/random/Random + c A reimplementation of {@link java.util.Random}.\n\n

There are four built-in implementations, three based on the classic Java algorithm\nand one using Xoroshiro128++ algorithm.\n\n

    \n
  • {@link LocalRandom}: Silently breaks when used concurrently. Based on\n{@link java.util.Random}.
  • \n
  • {@link CheckedRandom}: Throws when used concurrently. Based on\n{@link java.util.Random}.
  • \n
  • {@link ThreadSafeRandom}: Blocks the thread when used concurrently. Based on\n{@link java.util.Random}.
  • \n
  • {@link Xoroshiro128PlusPlusRandom}: Silently breaks when used concurrently.\nImplements the Xoroshiro128++ algorithm.
  • \n
\n\n@implNote Note that due to MC-239059, this is not an exact reimplementation of\nthe Java random number generator algorithm.\n\n@see java.util.random + m ()I method_43054 nextInt + m ()J method_43055 nextLong + m (II)I method_43051 nextBetweenExclusive + p 2 max + p 1 min + m ()Lnet/minecraft/class_5819; method_43053 createLocal + c {@return a random split from the thread local random} Users must ensure\nthis random is not used concurrently. + m ()Lnet/minecraft/class_5819; method_43047 create + c {@return a random} The returned random actively detects concurrent usage\nand fails on detection. + m (DD)D method_43385 nextTriangular + c {@return a random {@code double} between {@code mode - deviation} and\n{@code mode + deviation} (both inclusive) with mode {@code mode}}\n\n

Because the return value follows a symmetric triangular distribution,\nthe distribution's mean and median are equal to {@code mode}. + p 3 deviation + p 1 mode + m ()F method_43057 nextFloat + m (I)V method_33650 skip + p 1 count + m ()Lnet/minecraft/class_5819; method_38420 split + m (I)I method_43048 nextInt + p 1 bound + m ()Lnet/minecraft/class_6574; method_38421 nextSplitter + m (J)Lnet/minecraft/class_5819; method_43049 create + c {@return a random with the given {@code seed}} The returned random\nactively detects concurrent usage and fails on detection. + p 0 seed + m ()D method_43059 nextGaussian + m ()D method_43058 nextDouble + m (FF)F method_62816 nextTriangular + p 1 mode + p 2 deviation + m ()Z method_43056 nextBoolean + m (II)I method_39332 nextBetween + p 2 max + p 1 min + m ()Lnet/minecraft/class_5819; method_43050 createThreadSafe + c {@return a random, suitable for multithreaded scenarios}\n\n@deprecated This one is hard to ensure deterministic behavior compared\nto the non-thread-safe one. + m (J)V method_43052 setSeed + p 1 seed +c net/minecraft/class_5814 net/minecraft/block/OxidizableStairsBlock + f Lnet/minecraft/class_5955$class_5811; field_28713 oxidationLevel + f Lcom/mojang/serialization/MapCodec; field_46497 CODEC + m ()Lnet/minecraft/class_5955$class_5811; method_33634 getDegradationLevel + m (Lnet/minecraft/class_5955$class_5811;Lnet/minecraft/class_2680;Lnet/minecraft/class_4970$class_2251;)V + p 1 oxidationLevel + p 2 baseBlockState + p 3 settings + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54070 method_54070 + p 0 instance +c net/minecraft/class_5813 net/minecraft/block/OxidizableSlabBlock + f Lnet/minecraft/class_5955$class_5811; field_28711 oxidationLevel + f Lcom/mojang/serialization/MapCodec; field_46496 CODEC + m ()Lnet/minecraft/class_5955$class_5811; method_33633 getDegradationLevel + m (Lnet/minecraft/class_5955$class_5811;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 oxidationLevel + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54069 method_54069 + p 0 instance +c net/minecraft/class_5816 net/minecraft/block/enums/Tilt + f Ljava/lang/String; field_28722 name + f Z field_28723 stable + f Lnet/minecraft/class_5816; field_28720 PARTIAL + f Lnet/minecraft/class_5816; field_28721 FULL + f Lnet/minecraft/class_5816; field_28719 UNSTABLE + f Lnet/minecraft/class_5816; field_28718 NONE + m (Ljava/lang/String;ILjava/lang/String;Z)V + p 4 stable + p 3 name + m ()Z method_33636 isStable +c net/minecraft/class_5815 net/minecraft/block/DyedCarpetBlock + c A carpet that has an associated carpet color for {@linkplain net.minecraft.entity.passive.LlamaEntity llamas}. + f Lcom/mojang/serialization/MapCodec; field_46506 CODEC + f Lnet/minecraft/class_1767; field_28715 dyeColor + m ()Lnet/minecraft/class_1767; method_33635 getDyeColor + c {@return the color of this carpet when worn by a {@linkplain net.minecraft.entity.passive.LlamaEntity llama}}\n\n

If {@code null}, the llama will not appear to be wearing the carpet.\nHowever, the carpet will remain wearable by the llama. + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54076 method_54076 + p 0 instance + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_4970$class_2251;)V + p 1 dyeColor + c the color of this carpet when worn by a {@linkplain net.minecraft.entity.passive.LlamaEntity llama} + p 2 settings +c net/minecraft/class_8092 net/minecraft/client/gui/tooltip/WidgetTooltipPositioner + f Lnet/minecraft/class_8030; field_46723 focus + m (Lnet/minecraft/class_8030;)V + p 1 focus + m (III)I method_48642 getOffsetY + p 2 widgetHeight + p 0 tooltipY + p 1 widgetY +c net/minecraft/class_8091 net/minecraft/unused/packageinfo/PackageInfo8091 +c net/minecraft/class_5834 net/minecraft/world/gen/feature/UnderwaterMagmaFeature + m (Lnet/minecraft/class_2680;)Z method_33769 method_33769 + p 0 state + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)Z method_33764 isValidPosition + p 1 world + p 2 pos + m (Lnet/minecraft/class_2680;)Z method_33770 method_33770 + p 0 state + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;Lnet/minecraft/class_5835;)Ljava/util/OptionalInt; method_33765 getFloorHeight + p 2 config + p 1 pos + p 0 world + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)I method_33767 method_33767 + p 1 pos + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)Z method_33768 method_33768 + p 2 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_76201 isFaceNotFull + p 2 pos + p 3 direction + p 1 world + m (Lnet/minecraft/class_2680;)Z method_33763 cannotReplace + p 0 state + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_5835;Lnet/minecraft/class_2338;)Z method_33766 method_33766 + p 2 pos +c net/minecraft/class_4503 net/minecraft/client/render/debug/GameTestDebugRenderer + f I field_62972 MARKER_LIFESPAN_MS + f Ljava/util/Map; field_20520 markers + f F field_32901 MARKER_BOX_SIZE + m ()V method_20414 clear + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_4503$class_4504;)V method_75438 render + p 1 blockPos + p 2 marker + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_4503$class_4504;)V method_75440 method_75440 + p 2 marker + p 1 pos + m (JLjava/util/Map$Entry;)Z method_75437 method_75437 + p 2 marker + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)V method_74792 addMarker + p 2 relativePos + p 1 absolutePos + m ()V method_75439 render +c net/minecraft/class_4503$class_4504 net/minecraft/client/render/debug/GameTestDebugRenderer$Marker + f J comp_4931 removalTime + f Ljava/lang/String; comp_4930 message + f I comp_4929 color + m ()J comp_4931 removalTime + m ()Ljava/lang/String; comp_4930 message + m (ILjava/lang/String;J)V + p 3 removalTime + p 2 message + p 1 color + m ()I comp_4929 color +c net/minecraft/class_8079 net/minecraft/datafixer/fix/StatusEffectDurationFix + f Ljava/util/Set; field_42105 POTION_ITEM_IDS + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_48554 fixPotionEffects + p 1 effectsDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_48551 fixPotionEffect + p 1 effectDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_48552 method_48552 + p 1 factorCalculationDataDynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_48550 method_48550 + p 1 playerTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_48555 fixEntityStatusEffects + p 1 entityDynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_48553 method_48553 + p 1 entityTyped + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_48549 method_48549 + p 3 itemStackTyped +c net/minecraft/class_8076 net/minecraft/data/recipe/SmithingTrimRecipeJsonBuilder + f Lnet/minecraft/class_7800; field_42097 category + f Lnet/minecraft/class_1856; field_42099 base + f Lnet/minecraft/class_1856; field_42098 template + f Lnet/minecraft/class_1856; field_42100 addition + f Lnet/minecraft/class_6880; field_56407 pattern + f Ljava/util/Map; field_46153 criteria + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1856;Lnet/minecraft/class_1856;Lnet/minecraft/class_1856;Lnet/minecraft/class_6880;)V + p 1 category + p 2 template + p 3 base + p 4 addition + p 5 pattern + m (Lnet/minecraft/class_5321;)V method_48539 validate + p 1 recipeKey + m (Lnet/minecraft/class_8790;Lnet/minecraft/class_5321;)V method_48542 offerTo + p 2 recipeKey + p 1 exporter + m (Lnet/minecraft/class_1856;Lnet/minecraft/class_1856;Lnet/minecraft/class_1856;Lnet/minecraft/class_6880;Lnet/minecraft/class_7800;)Lnet/minecraft/class_8076; method_48540 create + p 3 pattern + p 4 category + p 0 template + p 1 base + p 2 addition + m (Ljava/lang/String;Lnet/minecraft/class_175;)Lnet/minecraft/class_8076; method_48541 criterion + p 1 name + p 2 criterion +c net/minecraft/class_8074 net/minecraft/data/recipe/SmithingTransformRecipeJsonBuilder + f Lnet/minecraft/class_1856; field_42092 addition + f Lnet/minecraft/class_1856; field_42091 base + f Lnet/minecraft/class_7800; field_42093 category + f Lnet/minecraft/class_1856; field_42090 template + f Lnet/minecraft/class_1792; field_42094 result + f Ljava/util/Map; field_46152 criteria + m (Lnet/minecraft/class_8790;Lnet/minecraft/class_5321;)V method_48537 offerTo + p 2 recipeKey + p 1 exporter + m (Ljava/lang/String;Lnet/minecraft/class_175;)Lnet/minecraft/class_8074; method_48536 criterion + p 1 name + p 2 criterion + m (Lnet/minecraft/class_8790;Ljava/lang/String;)V method_48538 offerTo + p 2 recipeId + p 1 exporter + m (Lnet/minecraft/class_1856;Lnet/minecraft/class_1856;Lnet/minecraft/class_1856;Lnet/minecraft/class_7800;Lnet/minecraft/class_1792;)Lnet/minecraft/class_8074; method_48535 create + p 4 result + p 3 category + p 2 addition + p 1 base + p 0 template + m (Lnet/minecraft/class_1856;Lnet/minecraft/class_1856;Lnet/minecraft/class_1856;Lnet/minecraft/class_7800;Lnet/minecraft/class_1792;)V + p 3 addition + p 2 base + p 5 result + p 4 category + p 1 template + m (Lnet/minecraft/class_5321;)V method_48534 validate + p 1 recipeKey +c net/minecraft/class_5801 net/minecraft/block/BigDripleafBlock + f Ljava/util/function/Function; field_55737 shapeFunction + f Lnet/minecraft/class_2754; field_28661 TILT + f Ljava/util/Map; field_55736 SHAPES_BY_TILT + f Lnet/minecraft/class_2746; field_28660 WATERLOGGED + f Lcom/mojang/serialization/MapCodec; field_46277 CODEC + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_28662 NEXT_TILT_DELAYS + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;)Z method_33606 isEntityAbove + p 1 entity + p 0 pos + m (Lit/unimi/dsi/fastutil/objects/Object2IntArrayMap;)V method_33609 method_33609 + p 0 delays + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)V method_33603 grow + p 2 pos + p 3 direction + p 0 world + p 1 random + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_33610 resetTilt + p 0 state + p 1 world + p 2 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5816;)V method_33604 changeTilt + p 1 world + p 2 pos + p 3 tilt + p 0 state + m (Lnet/minecraft/class_5539;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_33725 canGrowInto + p 2 state + p 1 pos + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_3414;)V method_33601 playTiltSound + p 2 soundEvent + p 1 pos + p 0 world + m (Lnet/minecraft/class_2680;)Z method_33727 canGrowInto + p 0 state + m ()Ljava/util/function/Function; method_66392 createShapeFunction + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5816;Lnet/minecraft/class_3414;)V method_33605 changeTilt + p 5 sound + p 4 tilt + p 3 pos + p 2 world + p 1 state + m (Ljava/util/Map;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66391 method_66391 + p 1 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_3610;Lnet/minecraft/class_2350;)Z method_33726 placeDripleafAt + p 0 world + p 2 fluidState + p 1 pos + p 3 direction +c net/minecraft/class_5800 net/minecraft/block/AzaleaBlock + f Lnet/minecraft/class_265; field_30996 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46261 CODEC +c net/minecraft/class_8089 net/minecraft/client/gui/widget/TabNavigationWidget + f Lcom/google/common/collect/ImmutableList; field_42148 tabButtons + f Lnet/minecraft/class_8667; field_43080 grid + f Lcom/google/common/collect/ImmutableList; field_42147 tabs + f I field_42145 tabNavWidth + f Lnet/minecraft/class_8088; field_42146 tabManager + f Lnet/minecraft/class_2561; field_43079 USAGE_NARRATION_TEXT + m ()Lnet/minecraft/class_8209; method_49615 getCurrentTabButton + m (ILnet/minecraft/class_7919;)V method_71521 setTabTooltip + p 2 tooltip + p 1 index + m (Lnet/minecraft/class_6382;Lnet/minecraft/class_8209;)V method_49614 method_49614 + p 2 button + m (IZ)V method_71522 setTabActive + p 2 active + p 1 index + m (Lnet/minecraft/class_8088;I)Lnet/minecraft/class_8089$class_8090; method_48623 builder + p 0 tabManager + p 1 width + m (Lnet/minecraft/class_11908;)I method_48990 getTabForKey + p 1 keyInput + m (I)V method_48618 setWidth + p 1 width + m ()V method_49613 init + m (ILnet/minecraft/class_8088;Ljava/lang/Iterable;)V + p 1 x + p 3 tabs + p 2 tabManager + m (ILnet/minecraft/class_11908;)I method_71520 getTabForKey + p 1 index + p 2 keyInput + m (Lnet/minecraft/class_6382;Lnet/minecraft/class_8209;)V method_49612 appendNarrations + p 1 builder + p 2 button + m ()Ljava/util/List; method_71284 getTabs + m (IZ)V method_48987 selectTab + p 1 index + p 2 clickSound + m ()I method_48989 getCurrentTabIndex +c net/minecraft/class_8089$class_8090 net/minecraft/client/gui/widget/TabNavigationWidget$Builder + f I field_42151 width + f Ljava/util/List; field_42153 tabs + f Lnet/minecraft/class_8088; field_42152 tabManager + m (Lnet/minecraft/class_8088;I)V + p 1 tabManager + p 2 width + m ()Lnet/minecraft/class_8089; method_48627 build + m ([Lnet/minecraft/class_8087;)Lnet/minecraft/class_8089$class_8090; method_48631 tabs + p 1 tabs +c net/minecraft/class_8087 net/minecraft/client/gui/tab/Tab + m ()Lnet/minecraft/class_2561; method_71245 getNarratedHint + m (Ljava/util/function/Consumer;)V method_48612 forEachChild + p 1 consumer + m ()Lnet/minecraft/class_2561; method_48610 getTitle + m (Lnet/minecraft/class_8030;)V method_48611 refreshGrid + p 1 tabArea +c net/minecraft/class_8088 net/minecraft/client/gui/tab/TabManager + f Ljava/util/function/Consumer; field_42142 tabUnloadWidgetConsumer + f Ljava/util/function/Consumer; field_42141 tabLoadWidgetConsumer + f Lnet/minecraft/class_8087; field_42143 currentTab + f Lnet/minecraft/class_8030; field_42144 tabArea + f Ljava/util/function/Consumer; field_60307 tabLoadTabConsumer + f Ljava/util/function/Consumer; field_60308 tabUnloadTabConsumer + m (Ljava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V + p 3 tabLoadTabConsumer + p 4 tabUnloadTabConsumer + p 1 tabLoadWidgetConsumer + p 2 tabUnloadWidgetConsumer + m ()Lnet/minecraft/class_8087; method_48614 getCurrentTab + m (Lnet/minecraft/class_8030;)V method_48616 setTabArea + p 1 tabArea + m (Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V + p 1 tabLoadWidgetConsumer + p 2 tabUnloadWidgetConsumer + m (Lnet/minecraft/class_8087;)V method_71282 method_71282 + p 0 unloadedTab + m (Lnet/minecraft/class_8087;Z)V method_48615 setCurrentTab + p 2 clickSound + p 1 tab + m (Lnet/minecraft/class_8087;)V method_71283 method_71283 + p 0 loadedTab +c net/minecraft/class_8086 net/minecraft/client/gui/tab/GridScreenTab + f Lnet/minecraft/class_7845; field_42139 grid + f Lnet/minecraft/class_2561; field_42140 title + m (Lnet/minecraft/class_2561;)V + p 1 title +c net/minecraft/class_5812 net/minecraft/block/OxidizableBlock + f Lnet/minecraft/class_5955$class_5811; field_28709 oxidationLevel + f Lcom/mojang/serialization/MapCodec; field_46495 CODEC + m ()Lnet/minecraft/class_5955$class_5811; method_33632 getDegradationLevel + m (Lnet/minecraft/class_5955$class_5811;Lnet/minecraft/class_4970$class_2251;)V + p 1 oxidationLevel + p 2 settings + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54068 method_54068 + p 0 instance +c net/minecraft/class_5806 net/minecraft/block/HangingRootsBlock + f Lnet/minecraft/class_265; field_28689 SHAPE + f Lnet/minecraft/class_2746; field_33642 WATERLOGGED + f Lcom/mojang/serialization/MapCodec; field_46367 CODEC +c net/minecraft/class_5809 net/minecraft/block/SporeBlossomBlock + f Lnet/minecraft/class_265; field_28703 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46457 CODEC +c net/minecraft/class_5808 net/minecraft/block/SmallDripleafBlock + f Lnet/minecraft/class_2746; field_28691 WATERLOGGED + f Lnet/minecraft/class_2754; field_29563 FACING + f Lnet/minecraft/class_265; field_28690 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46447 CODEC +c net/minecraft/class_5803 net/minecraft/block/CaveVines + f Lnet/minecraft/class_265; field_28687 SHAPE + f Lnet/minecraft/class_2746; field_28688 BERRIES + m (Lnet/minecraft/class_2680;)Z method_33618 hasBerries + p 0 state + m (ILnet/minecraft/class_2680;)I method_37361 method_37361 + p 1 state + m (I)Ljava/util/function/ToIntFunction; method_37362 getLuminanceSupplier + c {@return a function that receives a {@link BlockState} and returns the luminance for the state}\nIf there are no berries, it supplies the value 0.\n\n@apiNote The return value is meant to be passed to\n{@link AbstractBlock.Settings#luminance} builder method. + p 0 luminance + c luminance supplied when the block has berries + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1269; method_33619 pickBerries + p 3 pos + p 2 world + p 1 state + p 0 picker + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_72578 method_72578 + p 2 stack + p 1 worldx +c net/minecraft/class_5802 net/minecraft/block/BigDripleafStemBlock + f Ljava/util/Map; field_55738 SHAPES_BY_DIRECTION + f Lcom/mojang/serialization/MapCodec; field_46278 CODEC + f Lnet/minecraft/class_2746; field_28667 WATERLOGGED + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_3610;Lnet/minecraft/class_2350;)Z method_33728 placeStemAt + p 0 world + p 1 pos + p 2 fluidState + p 3 direction +c net/minecraft/class_5805 net/minecraft/block/CaveVinesHeadBlock + f Lcom/mojang/serialization/MapCodec; field_46306 CODEC + f F field_31053 GROW_CHANCE +c net/minecraft/class_5804 net/minecraft/block/CaveVinesBodyBlock + f Lcom/mojang/serialization/MapCodec; field_46307 CODEC +c net/minecraft/class_8083 net/minecraft/client/gui/navigation/Navigable + m ()I method_48590 getNavigationOrder +c net/minecraft/class_8082 net/minecraft/client/gui/screen/AccessibilityOnboardingButtons + m (ILnet/minecraft/class_4185$class_4241;Z)Lnet/minecraft/class_8662; method_48592 createLanguageButton + p 2 hideText + p 1 onPress + p 0 width + m (ILnet/minecraft/class_4185$class_4241;Z)Lnet/minecraft/class_8662; method_48594 createAccessibilityButton + p 2 hideText + p 1 onPress + p 0 width +c net/minecraft/class_8080 net/minecraft/entity/LimbAnimator + f F field_42109 lastSpeed + f F field_42111 animationProgress + c How far the limbs have progressed in swinging over time.\n\n

This value is uncapped. It's in arbitrary units and is scaled differently by different entity models\n(shorter legs need to swing faster to make the entity appear to be running at the same speed). + f F field_42110 speed + c The speed of the limb movement, also affects the amplitude of their swing. + f F field_52449 timeScale + c Like {@link #speed}, affects the speed of the limb movement, but without affecting the amplitude of the limb swings.\nUsed by baby zombies etc. + m ()Z method_48571 isLimbMoving + m (FFF)V method_48568 updateLimbs + c Called every tick to update limbs. + p 2 speedChangeRate + c the rate that the current speed will be updated to the target speed, from 0 to 1.\nA value of 1 means the target speed will be reached immediately.\nA value of 0.5 means that the speed will be updated half way towards the target speed each time this method is called.\nUsed to smooth out changes in amplitude + p 3 timeScale + c affects the speed of the limb movement, but without affecting the amplitude of the limb swings + p 1 targetSpeed + c the target limb speed, that may be reached over multiple ticks.\nLimb speed affects the amplitude of the limb swings as well as how fast they move + m (F)F method_48570 getAmplitude + p 1 tickProgress + m (F)F method_48572 getAnimationProgress + p 1 tickProgress + m ()V method_61433 reset + m ()F method_48566 getSpeed + m ()F method_48569 getAnimationProgress + m (F)V method_48567 setSpeed + p 1 speed +c net/minecraft/class_3283 net/minecraft/resource/ResourcePackManager + c A resource pack manager manages a list of {@link ResourcePackProfile}s and\nbuilds {@linkplain #createResourcePacks() a list of resource packs} when the\nresource manager reloads. + f Ljava/util/Set; field_14227 providers + f Ljava/util/Map; field_14226 profiles + f Ljava/util/List; field_14225 enabled + m (Ljava/util/Collection;)Ljava/lang/String; method_59809 listPacks + p 0 profiles + m ()Ljava/util/Map; method_29212 providePackProfiles + m ()V method_14445 scanPacks + m ([Lnet/minecraft/class_3285;)V + p 1 providers + m ()Lnet/minecraft/class_7699; method_45278 getRequestedFeatures + m (Ljava/lang/String;)Z method_49427 enable + p 1 profile + m ()Ljava/util/List; method_29211 createResourcePacks + m (Ljava/util/Map;Lnet/minecraft/class_3288;)V method_29484 method_29484 + p 1 profile + m (Ljava/lang/String;)Lnet/minecraft/class_3288; method_14449 getProfile + p 1 id + m (Ljava/util/Collection;)Ljava/util/stream/Stream; method_29209 streamProfilesById + p 1 ids + m ()Ljava/util/Collection; method_29206 getIds + m (Ljava/lang/String;)Z method_49428 disable + p 1 profile + m ()Z method_63566 hasOptionalProfilesEnabled + m ()Ljava/util/Collection; method_14444 getEnabledProfiles + m (Ljava/util/Collection;)Ljava/util/List; method_29208 buildEnabledProfiles + p 1 enabledNames + m ()Ljava/util/Collection; method_14441 getProfiles + m (Ljava/util/Collection;)V method_14447 setEnabledProfiles + p 1 enabled + m (Ljava/lang/String;)Z method_29207 hasProfile + p 1 id + m ()Ljava/util/Collection; method_29210 getEnabledIds + m (Lnet/minecraft/class_3288;)Ljava/lang/String; method_59808 method_59808 + p 0 profile +c net/minecraft/class_521 net/minecraft/client/gui/screen/pack/PackListWidget + f Lnet/minecraft/class_5375; field_41715 screen + f Lnet/minecraft/class_2960; field_45537 MOVE_UP_TEXTURE + f Lnet/minecraft/class_2960; field_45536 MOVE_UP_HIGHLIGHTED_TEXTURE + f Lnet/minecraft/class_2960; field_45535 UNSELECT_TEXTURE + f Lnet/minecraft/class_2960; field_45534 UNSELECT_HIGHLIGHTED_TEXTURE + f Lnet/minecraft/class_2561; field_18978 title + f Lnet/minecraft/class_2960; field_45533 SELECT_TEXTURE + f Lnet/minecraft/class_2960; field_45532 SELECT_HIGHLIGHTED_TEXTURE + f Lnet/minecraft/class_2561; field_19126 INCOMPATIBLE + f Lnet/minecraft/class_2561; field_19127 INCOMPATIBLE_CONFIRM + f Lnet/minecraft/class_2960; field_45539 MOVE_DOWN_TEXTURE + f Lnet/minecraft/class_2960; field_45538 MOVE_DOWN_HIGHLIGHTED_TEXTURE + m (Lnet/minecraft/class_310;Lnet/minecraft/class_5375;IILnet/minecraft/class_2561;)V + p 4 height + p 3 width + p 5 title + p 2 screen + p 1 client + m (Lnet/minecraft/class_5369$class_5372;Lnet/minecraft/class_5369$class_5371;)V method_73444 method_73444 + p 2 pack + m (Ljava/util/stream/Stream;Lnet/minecraft/class_5369$class_5372;)V method_73445 set + p 2 focused + p 1 packs +c net/minecraft/class_521$class_4271 net/minecraft/client/gui/screen/pack/PackListWidget$ResourcePackEntry + f Lnet/minecraft/class_5369$class_5371; field_19129 pack + f Lnet/minecraft/class_310; field_19128 client + f Lnet/minecraft/class_521; field_19130 widget + f Lnet/minecraft/class_7842; field_64205 nameWidget + f Lnet/minecraft/class_7940; field_64206 descriptionWidget + m (Z)V method_48477 method_48477 + p 1 confirmed + m ()V method_48280 toggle + m ()V method_48281 moveTowardStart + m ()V method_48282 moveTowardEnd + m ()V method_48478 enable + m ()Z method_20152 isSelectable + m (Lnet/minecraft/class_521$class_11778;)Z method_73446 method_73446 + p 1 entry + m (Lnet/minecraft/class_521;Lnet/minecraft/class_310;Lnet/minecraft/class_521;Lnet/minecraft/class_5369$class_5371;)V + p 4 pack + p 2 client + p 3 widget +c net/minecraft/class_521$class_11778 net/minecraft/client/gui/screen/pack/PackListWidget$Entry + m ()Ljava/lang/String; method_48279 getName +c net/minecraft/class_521$class_11779 net/minecraft/client/gui/screen/pack/PackListWidget$HeaderEntry + f Lnet/minecraft/class_2561; field_62183 text + f Lnet/minecraft/class_327; field_62182 textRenderer + m (Lnet/minecraft/class_521;Lnet/minecraft/class_327;Lnet/minecraft/class_2561;)V + p 2 textRenderer + p 3 text +c net/minecraft/class_3285 net/minecraft/resource/ResourcePackProvider + c A resource pack provider provides {@link ResourcePackProfile}s, usually to\n{@link ResourcePackManager}s. + m (Ljava/util/function/Consumer;)V method_14453 register + c Register resource pack profiles created with the {@code factory} to the\n{@code profileAdder}.\n\n@see ResourcePackProfile + p 1 profileAdder + c the profile adder that accepts created resource pack profiles +c net/minecraft/class_527 net/minecraft/client/gui/screen/world/OptimizeWorldScreen + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; field_3233 callback + f Lorg/slf4j/Logger; field_25482 LOGGER + f Ljava/util/function/ToIntFunction; field_3232 DIMENSION_COLORS + f Lnet/minecraft/class_1257; field_3234 updater + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_5219;ZLnet/minecraft/class_5455;)V + p 6 registries + p 3 storageSession + p 2 dataFixer + p 5 eraseCache + p 4 saveProperties + p 1 callback + m (Lnet/minecraft/class_4185;)V method_19938 method_19938 + p 1 button + m (Lnet/minecraft/class_310;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/class_32$class_5143;Z)Lnet/minecraft/class_527; method_27031 create + p 0 client + p 1 callback + p 2 dataFixer + p 3 storageSession + p 4 eraseCache + m (Lit/unimi/dsi/fastutil/objects/Reference2IntOpenHashMap;)V method_2747 method_2747 + p 0 map +c net/minecraft/class_526 net/minecraft/client/gui/screen/world/SelectWorldScreen + f Lnet/minecraft/class_5285; field_40457 DEBUG_GENERATOR_OPTIONS + f Lnet/minecraft/class_4185; field_3224 selectButton + f Lnet/minecraft/class_528; field_3218 levelList + f Lnet/minecraft/class_4185; field_3215 editButton + f Lnet/minecraft/class_4185; field_3216 recreateButton + f Lnet/minecraft/class_437; field_3221 parent + f Lnet/minecraft/class_4185; field_3219 deleteButton + f Lnet/minecraft/class_342; field_3220 searchBox + f Lnet/minecraft/class_8132; field_62187 layout + f Lorg/slf4j/Logger; field_28783 LOGGER + m (Ljava/util/function/Consumer;Lnet/minecraft/class_528;)V method_74221 addButtons + p 1 playAction + p 2 levelList + m (Lnet/minecraft/class_528;Ljava/util/function/Consumer;Lnet/minecraft/class_4185;)V method_74220 method_74220 + p 2 button + m (Lnet/minecraft/class_4185;)V method_74222 method_74222 + p 1 button + m (Lnet/minecraft/class_437;)V + p 1 parent + m (Lnet/minecraft/class_4185;)V method_73448 method_73448 + p 1 button + m (Ljava/lang/String;)V method_2744 method_2744 + p 1 search + m (Lnet/minecraft/class_526;Lnet/minecraft/class_364;)V method_73449 method_73449 + p 1 child + m (Lnet/minecraft/class_528;Lnet/minecraft/class_4185;)V method_74224 method_74224 + p 1 button + m (Lnet/minecraft/class_528;Lnet/minecraft/class_4185;)V method_74225 method_74225 + p 2 button + m (Lnet/minecraft/class_528;Lnet/minecraft/class_4185;)V method_74219 method_74219 + p 1 button + m (Lnet/minecraft/class_34;)V method_19940 worldSelected + p 1 levelSummary + m ()Lnet/minecraft/class_4185; method_73450 createDebugRecreateButton + m (Lnet/minecraft/class_528;Lnet/minecraft/class_4185;)V method_74223 method_74223 + p 1 button +c net/minecraft/class_525 net/minecraft/client/gui/screen/world/CreateWorldScreen + f Lnet/minecraft/class_8100; field_42172 worldCreator + f Lnet/minecraft/class_2561; field_42501 EXPERIMENTS_TEXT + f Ljava/nio/file/Path; field_25477 dataPackTempDir + f Lnet/minecraft/class_2960; field_49902 TAB_HEADER_BACKGROUND_TEXTURE + f Lnet/minecraft/class_10241; field_54390 callback + f Ljava/lang/Runnable; field_62186 onClosed + f Z field_42502 recreated + f Lnet/minecraft/class_2561; field_37911 PREPARING_TEXT + f Lnet/minecraft/class_8580; field_45568 symlinkFinder + f Lorg/slf4j/Logger; field_25480 LOGGER + f Lnet/minecraft/class_2561; field_25898 GAME_MODE_TEXT + f Lnet/minecraft/class_8088; field_42173 tabManager + f Lnet/minecraft/class_3283; field_25792 packManager + f Lnet/minecraft/class_8089; field_42164 tabNavigation + f Lnet/minecraft/class_2561; field_26600 ENTER_NAME_TEXT + f Lnet/minecraft/class_8132; field_49557 layout + f Ljava/lang/String; field_32434 TEMP_DIR_PREFIX + f Lnet/minecraft/class_2561; field_42169 ALLOW_COMMANDS_INFO_TEXT + m (Lnet/minecraft/class_7237$class_7660;)Lnet/minecraft/class_7726; method_45686 method_45686 + p 0 context + m (Lnet/minecraft/class_3283;Lnet/minecraft/class_7712;Ljava/util/function/Consumer;)V method_45679 validateDataPacks + p 3 configurationSetter + p 2 dataConfiguration + p 1 dataPackManager + m (Lnet/minecraft/class_10221;Lnet/minecraft/class_6860;Lnet/minecraft/class_5350;Lnet/minecraft/class_7780;Lnet/minecraft/class_7749;)Lnet/minecraft/class_7193; method_64245 method_64245 + p 2 dataPackContents + p 3 dynamicRegistries + p 1 resourceManager + p 4 settings + m (Ljava/nio/file/Path;)V method_29689 method_29689 + p 0 path + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_29687 copyDataPack + p 2 dataPackFile + p 0 srcFolder + p 1 destFolder + m (Lnet/minecraft/class_7237$class_7660;)Lnet/minecraft/class_7726; method_64247 method_64247 + p 0 context + m (Lnet/minecraft/class_5350;Lnet/minecraft/class_7780;Lnet/minecraft/class_7749;)Lnet/minecraft/class_7193; method_64243 method_64243 + p 2 settings + p 1 dynamicRegistries + p 0 dataPackContents + m ()V method_30297 onCloseScreen + m ()V method_29695 clearDataPackTempDir + m (Lnet/minecraft/class_7193;)Lnet/minecraft/class_7193; method_59841 method_59841 + p 0 generatorOptionsHolder + m ()Ljava/nio/file/Path; method_29693 getOrCreateDataPackTempDir + m (Lnet/minecraft/class_525;Lnet/minecraft/class_7780;Lnet/minecraft/class_31;Ljava/nio/file/Path;)Z method_64369 method_64369 + p 1 combinedDynamicRegistries + p 0 screen + p 3 dataPackTempDir + p 2 levelProperties + m (Lnet/minecraft/class_3283;Lnet/minecraft/class_7712;)Lnet/minecraft/class_7237$class_6906; method_41849 createServerConfig + p 1 dataConfiguration + p 0 dataPackManager + m (Lnet/minecraft/class_310;Ljava/lang/Runnable;)V method_64248 showTestWorld + p 0 client + p 1 onClosed + m (Lnet/minecraft/class_339;)V method_48644 method_48644 + p 1 child + m (Lnet/minecraft/class_3283;)V method_49009 method_49009 + p 1 resourcePackManager + m (Lnet/minecraft/class_7237$class_7660;)Lnet/minecraft/class_7237$class_7661; method_45678 method_45678 + p 1 context + m (Lnet/minecraft/class_310;Ljava/lang/Runnable;Ljava/util/function/Function;Lnet/minecraft/class_10221;Lnet/minecraft/class_5321;Lnet/minecraft/class_10241;)V method_64244 show + p 0 client + p 1 onClosed + p 4 presetKey + p 5 callback + p 2 settingsSupplier + p 3 generatorOptionsFactory + m (Z)Lnet/minecraft/class_1940; method_40213 createLevelInfo + p 1 debugWorld + m (Ljava/util/function/Consumer;Z)V method_48654 method_48654 + p 2 confirmed + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_64373 method_64373 + p 2 path + m (Ljava/util/function/Consumer;Ljava/lang/Void;Ljava/lang/Throwable;)Ljava/lang/Object; method_49629 method_49629 + p 3 throwable + m (Lnet/minecraft/class_525;Lnet/minecraft/class_364;)V method_48650 method_48650 + p 1 child + m (Ljava/util/List;Ljava/lang/String;)Z method_29983 method_29983 + p 1 name + m (Lnet/minecraft/class_7780;Lnet/minecraft/class_5219;)Z method_41847 startServer + p 1 combinedDynamicRegistries + p 2 saveProperties + m (Lnet/minecraft/class_7712;)Lcom/mojang/datafixers/util/Pair; method_30296 getScannedPack + p 1 dataConfiguration + m (Lnet/minecraft/class_3283;ZLjava/util/function/Consumer;)V method_29682 applyDataPacks + p 1 dataPackManager + p 3 configurationSetter + p 2 fromPackScreen + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Z method_64372 method_64372 + p 1 path + m (Lnet/minecraft/class_4185;)V method_19921 method_19921 + p 1 button + m (Lnet/minecraft/class_7712;)V method_29694 openPackScreen + p 1 dataConfiguration + m (Lnet/minecraft/class_310;Ljava/lang/Runnable;Lnet/minecraft/class_1940;Lnet/minecraft/class_7193;Ljava/nio/file/Path;)Lnet/minecraft/class_525; method_40212 create + p 1 onClosed + p 2 levelInfo + p 3 generatorOptionsHolder + p 4 dataPackTempDir + p 0 client + m (Lnet/minecraft/class_310;Ljava/lang/Runnable;Lnet/minecraft/class_7193;Ljava/util/Optional;Ljava/util/OptionalLong;Lnet/minecraft/class_10241;)V + p 2 onClosed + p 1 client + p 6 callback + p 5 seed + p 4 defaultWorldType + p 3 generatorOptionsHolder + m (Lnet/minecraft/class_310;Ljava/lang/String;Ljava/nio/file/Path;)Ljava/util/Optional; method_41848 createSession + p 2 dataPackTempDir + p 0 client + p 1 worldDirectoryName + m (Lnet/minecraft/class_525;Lnet/minecraft/class_7780;Lnet/minecraft/class_31;Ljava/nio/file/Path;)Z method_64371 method_64371 + p 3 dataPackTempDir + p 1 combinedDynamicRegistries + p 2 levelProperties + p 0 screen + m ()Lnet/minecraft/class_8100; method_48657 getWorldCreator + m (Lnet/minecraft/class_525;Lnet/minecraft/class_7780;Lnet/minecraft/class_31;Ljava/nio/file/Path;)Z method_64375 method_64375 + p 3 dataPackTempDir + p 1 combinedDynamicRegistries + p 2 levelProperties + p 0 screen + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Z method_29686 method_29686 + p 1 dataPackFile + m (Lnet/minecraft/class_5350;Lnet/minecraft/class_7780;Lnet/minecraft/class_7749;)Lnet/minecraft/class_7193; method_41851 method_41851 + p 1 dynamicRegistries + p 0 dataPackContents + p 2 settings + m (Lnet/minecraft/class_7780;Lnet/minecraft/class_31;)V method_64370 createAndClearTempDir + p 1 combinedDynamicRegistries + p 2 levelProperties + m (Lorg/apache/commons/lang3/mutable/MutableObject;Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_29688 method_29688 + p 2 dataPackFile + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_58746 method_58746 + p 0 error + m (Lnet/minecraft/class_4185;)V method_19922 method_19922 + p 1 button + m (Lnet/minecraft/class_310;Ljava/lang/Runnable;Lnet/minecraft/class_10241;)V method_64368 show + p 2 callback + p 0 client + p 1 onClosed + m (Lnet/minecraft/class_6860;Lnet/minecraft/class_5350;Lnet/minecraft/class_7780;Lnet/minecraft/class_7749;)Lnet/minecraft/class_7193; method_45681 method_45681 + p 0 resourceManager + p 3 context + p 2 combinedDynamicRegistries + p 1 dataPackContents + m (Lnet/minecraft/class_7712;)V method_49010 openExperimentsScreen + p 1 dataConfiguration + m (Lnet/minecraft/class_525;Lnet/minecraft/class_364;)V method_65519 method_65519 + p 1 clickableWidget + m (Lnet/minecraft/class_3283;)V method_49011 method_49011 + p 1 resourcePackManager + m (Lnet/minecraft/class_310;Ljava/lang/Runnable;)V method_31130 show + p 1 onClosed + p 0 client + m (Lnet/minecraft/class_310;Lnet/minecraft/class_2561;)V method_41852 showMessage + p 0 client + p 1 text + m (Lcom/mojang/serialization/DynamicOps;Lcom/google/gson/JsonElement;)Lcom/mojang/serialization/DataResult; method_45682 method_45682 + p 1 json + m (Lnet/minecraft/class_3283;Lnet/minecraft/class_7712;Ljava/util/function/Consumer;Z)V method_48643 method_48643 + p 4 confirmed + m ()V method_2736 createLevel + m (Ljava/util/function/Function;Lnet/minecraft/class_7237$class_7660;)Lnet/minecraft/class_7237$class_7661; method_64246 method_64246 + p 1 context + m (Ljava/nio/file/Path;Lnet/minecraft/class_310;)Ljava/nio/file/Path; method_29685 copyDataPack + p 1 client + p 0 srcFolder +c net/minecraft/class_525$class_8094 net/minecraft/client/gui/screen/world/CreateWorldScreen$MoreTab + f Lnet/minecraft/class_2561; field_42179 MORE_TAB_TITLE_TEXT + f Lnet/minecraft/class_2561; field_42180 GAME_RULES_TEXT + f Lnet/minecraft/class_2561; field_42181 DATA_PACKS_TEXT + m (Ljava/util/Optional;)V method_48667 method_48667 + p 1 gameRules + m (Lnet/minecraft/class_4185;)V method_48668 method_48668 + p 1 button + m ()V method_48669 openGameRulesScreen + m (Lnet/minecraft/class_4185;)V method_49014 method_49014 + p 1 button + m (Lnet/minecraft/class_4185;)V method_49013 method_49013 + p 1 button +c net/minecraft/class_525$class_8093 net/minecraft/client/gui/screen/world/CreateWorldScreen$GameTab + f Lnet/minecraft/class_342; field_42177 worldNameField + f Lnet/minecraft/class_2561; field_42175 GAME_TAB_TITLE_TEXT + f Lnet/minecraft/class_2561; field_42176 ALLOW_COMMANDS_TEXT + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_48661 method_48661 + p 1 button + p 2 value + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_8100;)V method_48664 method_48664 + p 2 creator + m (Ljava/lang/Boolean;)Lnet/minecraft/class_7919; method_48663 method_48663 + p 0 value + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_8100;)V method_48665 method_48665 + p 1 creator + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_8100$class_4539;)V method_48659 method_48659 + p 2 value + p 1 button + m (Lnet/minecraft/class_4185;)V method_49012 method_49012 + p 1 button + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_1267;)V method_48658 method_48658 + p 2 value + p 1 button + m (Lnet/minecraft/class_8100$class_4539;)Lnet/minecraft/class_2561; method_48662 method_48662 + p 0 value + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_8100;)V method_48660 method_48660 + p 2 creator + m (Lnet/minecraft/class_8100;)V method_49702 method_49702 + p 1 creator +c net/minecraft/class_525$class_8095 net/minecraft/client/gui/screen/world/CreateWorldScreen$WorldTab + f Lnet/minecraft/class_4185; field_42192 customizeButton + f Lnet/minecraft/class_342; field_42191 seedField + f Lnet/minecraft/class_2561; field_42183 WORLD_TAB_TITLE_TEXT + f Lnet/minecraft/class_2561; field_42184 AMPLIFIED_GENERATOR_INFO_TEXT + f Lnet/minecraft/class_2561; field_42185 MAP_FEATURES_TEXT + f Lnet/minecraft/class_2561; field_42186 MAP_FEATURES_INFO_TEXT + f Lnet/minecraft/class_2561; field_42187 BONUS_ITEMS_TEXT + f Lnet/minecraft/class_2561; field_42188 ENTER_SEED_TEXT + f Lnet/minecraft/class_2561; field_42189 SEED_INFO_TEXT + m (Lnet/minecraft/class_8100;)V method_48676 method_48676 + p 1 creator + m (Lnet/minecraft/class_4185;)V method_48670 method_48670 + p 1 button + m (Lnet/minecraft/class_5676;)Lnet/minecraft/class_5250; method_48671 getWorldTypeNarrationMessage + p 0 worldTypeButton + m ()V method_48678 openCustomizeScreen + m ()Lnet/minecraft/class_5676$class_5680; method_48679 getWorldTypes + m (Ljava/lang/String;)V method_48677 method_48677 + p 1 seed + m (Lnet/minecraft/class_8096;Lnet/minecraft/class_8100;)V method_48675 method_48675 + p 1 creator + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_8100;)V method_48673 method_48673 + p 2 creator + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_8100$class_8101;)V method_48672 method_48672 + p 1 button + p 2 worldType +c net/minecraft/class_3281 net/minecraft/resource/ResourcePackCompatibility + f Lnet/minecraft/class_2561; field_14219 notification + f Lnet/minecraft/class_2561; field_14222 confirmMessage + f Lnet/minecraft/class_3281; field_14220 TOO_NEW + f Lnet/minecraft/class_3281; field_14224 COMPATIBLE + f Lnet/minecraft/class_3281; field_14223 TOO_OLD + f Lnet/minecraft/class_3281; field_61159 UNKNOWN + m ()Lnet/minecraft/class_2561; method_14439 getNotification + m ()Z method_14437 isCompatible + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 translationSuffix + m (Lnet/minecraft/class_6497;Lnet/minecraft/class_11555;)Lnet/minecraft/class_3281; method_14436 from + p 0 range + m ()Lnet/minecraft/class_2561; method_14438 getConfirmMessage +c net/minecraft/class_524 net/minecraft/client/gui/screen/world/EditWorldScreen + f Lorg/slf4j/Logger; field_23776 LOGGER + f Lnet/minecraft/class_2561; field_52853 CONFIRM_PROCEED_TEXT + f Lnet/minecraft/class_2561; field_46885 RESET_ICON_TEXT + f Lnet/minecraft/class_2561; field_46887 BACKUP_TEXT + f Lnet/minecraft/class_2561; field_46891 CONFIRM_DESCRIPTION_TEXT + f Lnet/minecraft/class_342; field_48397 nameFieldWidget + f Lnet/minecraft/class_2561; field_46889 OPTIMIZE_TEXT + f Lnet/minecraft/class_8667; field_46896 layout + f Lnet/minecraft/class_2561; field_26603 ENTER_NAME_TEXT + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; field_3169 callback + f Lnet/minecraft/class_2561; field_46892 SAVE_TEXT + f Lnet/minecraft/class_2561; field_46886 OPEN_FOLDER_TEXT + f Lnet/minecraft/class_2561; field_46888 BACKUP_FOLDER_TEXT + f Lnet/minecraft/class_32$class_5143; field_23777 storageSession + f Lnet/minecraft/class_2561; field_46890 CONFIRM_TITLE_TEXT + m (Lnet/minecraft/class_310;Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_4185;)V method_54598 method_54598 + p 3 button + m (Lnet/minecraft/class_4185;)V method_54601 method_54601 + p 1 button + m (Lnet/minecraft/class_4185;)V method_54603 method_54603 + p 1 button + m (Lnet/minecraft/class_310;Lnet/minecraft/class_32$class_5143;Ljava/lang/String;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;)V + p 4 callback + p 3 levelName + p 2 session + p 1 client + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_4185;)V method_54606 method_54606 + p 1 button + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_4185;)V method_54608 method_54608 + p 1 button + m (Ljava/lang/String;)V method_2691 commit + p 1 levelName + m (Lnet/minecraft/class_310;Lnet/minecraft/class_4185;)V method_54600 method_54600 + p 1 button + m (Lnet/minecraft/class_4185;Ljava/lang/String;)V method_54602 method_54602 + p 1 name + m (Lnet/minecraft/class_524;Lnet/minecraft/class_364;)V method_54604 method_54604 + p 1 child + m (Lnet/minecraft/class_310;Lnet/minecraft/class_32$class_5143;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;)Lnet/minecraft/class_524; method_54599 create + p 1 session + p 0 client + p 2 callback + m (Ljava/nio/file/Path;)V method_54607 method_54607 + p 0 iconFile + m (Lnet/minecraft/class_32$class_5143;)Z method_2701 backupLevel + p 0 storageSession + m (Ljava/nio/file/Path;)Z method_54605 method_54605 + p 0 iconFile + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_310;ZZ)V method_54595 method_54595 + p 4 eraseCache + p 3 backup + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_4185;)V method_54596 method_54596 + p 2 button +c net/minecraft/class_3286 net/minecraft/resource/VanillaDataPackProvider + f Lnet/minecraft/class_3272; field_40051 METADATA + f Lnet/minecraft/class_7663; field_40052 FEATURE_FLAGS + f Lnet/minecraft/class_2960; field_40053 ID + f Lnet/minecraft/class_9225; field_49042 TOP_POSITION + f Lnet/minecraft/class_7662; field_26939 METADATA_MAP + f Lnet/minecraft/class_9225; field_49041 BOTTOM_POSITION + f Lnet/minecraft/class_9224; field_49040 INFO + m (Ljava/lang/String;Lnet/minecraft/class_2561;)Lnet/minecraft/class_9224; method_56935 createInfo + p 1 title + p 0 id + m (Ljava/nio/file/Path;)Z method_52442 method_52442 + p 0 path + m (Lnet/minecraft/class_8580;)V + p 1 symlinkFinder + m (Ljava/nio/file/Path;Lnet/minecraft/class_8580;)Lnet/minecraft/class_3283; method_45286 createManager + p 0 dataPacksPath + p 1 symlinkFinder + m (Lnet/minecraft/class_32$class_5143;)Lnet/minecraft/class_3283; method_45285 createManager + p 0 session + m ()Lnet/minecraft/class_3283; method_52443 createClientManager + m ()Lnet/minecraft/class_3268; method_45287 createDefaultPack +c net/minecraft/class_3288 net/minecraft/resource/ResourcePackProfile + c Represents a resource pack in a {@link ResourcePackManager}.\n\n

Compared to a single-use {@link ResourcePack}, a profile is persistent\nand serves as {@linkplain #createResourcePack a factory} for the single-use\npacks. It also contains user-friendly information about resource packs.\n\n

The profiles are registered by {@link ResourcePackProvider}s.\n\n

Closing the profile doesn't have any effect. + f Lnet/minecraft/class_9225; field_49039 position + f Lnet/minecraft/class_3288$class_7680; field_14273 packFactory + f Lnet/minecraft/class_9224; field_49037 info + f Lorg/slf4j/Logger; field_14279 LOGGER + f Lnet/minecraft/class_3288$class_7679; field_49038 metaData + m (Z)Lnet/minecraft/class_2561; method_14461 getInformationText + p 1 enabled + m ()Lnet/minecraft/class_9224; method_56933 getInfo + m ()Lnet/minecraft/class_3262; method_14458 createResourcePack + m ()Lnet/minecraft/class_3288$class_3289; method_14466 getInitialPosition + m ()Lnet/minecraft/class_9225; method_56934 getPosition + m ()Z method_14465 isPinned + m (Lnet/minecraft/class_9224;Lnet/minecraft/class_3288$class_7680;Lnet/minecraft/class_11555;Lnet/minecraft/class_3264;)Lnet/minecraft/class_3288$class_7679; method_45274 loadMetadata + p 1 packFactory + p 2 version + p 3 type + p 0 info + m ()Lnet/minecraft/class_3281; method_14460 getCompatibility + m ()Lnet/minecraft/class_7699; method_45276 getRequestedFeatures + m ()Lnet/minecraft/class_5352; method_29483 getSource + m ()Lnet/minecraft/class_2561; method_14457 getDisplayName + m ()Z method_14464 isRequired + m (Lnet/minecraft/class_9224;Lnet/minecraft/class_3288$class_7680;Lnet/minecraft/class_3264;Lnet/minecraft/class_9225;)Lnet/minecraft/class_3288; method_45275 create + p 3 position + p 2 type + p 1 packFactory + p 0 info + m ()Lnet/minecraft/class_2561; method_14459 getDescription + m ()Ljava/lang/String; method_14463 getId + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_9224;Lnet/minecraft/class_3288$class_7680;Lnet/minecraft/class_3288$class_7679;Lnet/minecraft/class_9225;)V + p 1 info + p 2 packFactory + p 3 metaData + p 4 position +c net/minecraft/class_3288$class_3289 net/minecraft/resource/ResourcePackProfile$InsertionPosition + f Lnet/minecraft/class_3288$class_3289; field_14281 BOTTOM + f Lnet/minecraft/class_3288$class_3289; field_14280 TOP + m ()Lnet/minecraft/class_3288$class_3289; method_14467 inverse + m (Ljava/util/List;Ljava/lang/Object;Ljava/util/function/Function;Z)I method_14468 insert + p 1 items + p 4 listInverted + p 2 item + p 3 profileGetter +c net/minecraft/class_3288$class_7680 net/minecraft/resource/ResourcePackProfile$PackFactory + m (Lnet/minecraft/class_9224;)Lnet/minecraft/class_3262; method_52424 open + p 1 info + m (Lnet/minecraft/class_9224;Lnet/minecraft/class_3288$class_7679;)Lnet/minecraft/class_3262; method_52425 openWithOverlays + p 2 metadata + p 1 info +c net/minecraft/class_3288$class_7679 net/minecraft/resource/ResourcePackProfile$Metadata + f Ljava/util/List; comp_1584 overlays + f Lnet/minecraft/class_3281; comp_1583 compatibility + f Lnet/minecraft/class_7699; comp_1001 requestedFeatures + f Lnet/minecraft/class_2561; comp_999 description + m ()Lnet/minecraft/class_3281; comp_1583 compatibility + m ()Lnet/minecraft/class_2561; comp_999 description + m ()Ljava/util/List; comp_1584 overlays + m ()Lnet/minecraft/class_7699; comp_1001 requestedFeatures + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_3281;Lnet/minecraft/class_7699;Ljava/util/List;)V + p 1 description + p 2 compatibility + p 3 requestedFeatures + p 4 overlays +c net/minecraft/class_518 net/minecraft/client/gui/screen/recipebook/RecipeBookProvider + m (Lnet/minecraft/class_10295;)V method_64862 onCraftFailed + p 1 display + m ()V method_16891 refreshRecipeBook +c net/minecraft/class_517 net/minecraft/client/gui/screen/recipebook/FurnaceRecipeBookWidget + f Lnet/minecraft/class_8666; field_45540 FILTER_BUTTON_TEXTURES + f Lnet/minecraft/class_2561; field_52826 toggleCraftableButtonText + m (Lnet/minecraft/class_1720;Lnet/minecraft/class_2561;Ljava/util/List;)V + p 1 screenHandler + p 2 toggleCraftableButtonText + p 3 tabs + m (Lnet/minecraft/class_10295;)Z method_64871 method_64871 + p 0 display +c net/minecraft/class_534 net/minecraft/client/gui/hud/spectator/RootSpectatorCommandGroup + f Ljava/util/List; field_3266 elements + f Lnet/minecraft/class_2561; field_26612 PROMPT_TEXT +c net/minecraft/class_3294 net/minecraft/resource/NamespaceResourceManager + c A resource manager that only loads resources for a specific namespace.\nThis is an implementation detail for {@link LifecycledResourceManagerImpl}, based\non the heuristic that most namespaces are only defined in few resource\npacks, making loading in those namespaces faster.\n\n@see LifecycledResourceManagerImpl + f Lorg/slf4j/Logger; field_14285 LOGGER + f Ljava/util/List; field_14283 packList + f Lnet/minecraft/class_3264; field_14284 type + f Ljava/lang/String; field_21561 namespace + m (Ljava/util/Map;Ljava/util/Map;Lnet/minecraft/class_2960;Lnet/minecraft/class_3294$class_7681;)V method_45293 method_45293 + p 3 result + p 2 id + m (Ljava/util/function/Predicate;Ljava/util/Map;Lnet/minecraft/class_3262;ILjava/util/Map;Lnet/minecraft/class_2960;Lnet/minecraft/class_7367;)V method_45294 method_45294 + p 5 id + p 6 supplier + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_14473 getMetadataPath + p 0 id + m (Ljava/lang/String;Lnet/minecraft/class_3262;Ljava/util/function/Predicate;)V method_41260 addPack + p 2 underlyingPack + p 3 filter + p 1 id + m (Lnet/minecraft/class_3294$class_7082;)Lnet/minecraft/class_3262; method_41257 method_41257 + p 0 pack + m (Lnet/minecraft/class_2960;I)Lnet/minecraft/class_7367; method_43035 createMetadataSupplier + p 2 index + p 1 id + m (Ljava/lang/String;Ljava/util/function/Predicate;)V method_41261 addPack + p 1 id + p 2 filter + m (Lnet/minecraft/class_7367;)Lnet/minecraft/class_7367; method_45291 getMetadataSupplier + p 0 supplier + m (Ljava/util/function/Predicate;Ljava/util/Map;Lnet/minecraft/class_3262;Lnet/minecraft/class_2960;Lnet/minecraft/class_7367;)V method_45295 method_45295 + p 3 id + p 4 supplier + m (Lnet/minecraft/class_2960;)Z method_45296 isMcmeta + p 0 id + m (Lnet/minecraft/class_3294$class_7082;Ljava/util/Map;)V method_41259 applyFilter + p 1 idToEntryList + p 0 pack + m (Lnet/minecraft/class_7367;)Lnet/minecraft/class_7368; method_45297 loadMetadata + p 0 supplier + m (Lnet/minecraft/class_3262;Lnet/minecraft/class_2960;Lnet/minecraft/class_7367;Lnet/minecraft/class_7367;)Lnet/minecraft/class_3298; method_45290 createResource + p 1 id + p 2 supplier + p 3 metadataSupplier + p 0 pack + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3262;Lnet/minecraft/class_7367;)Lnet/minecraft/class_7367; method_45288 wrapForDebug + p 2 supplier + p 0 id + p 1 pack + m (Lnet/minecraft/class_3264;Ljava/lang/String;)V + p 1 type + p 2 namespace + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_45298 getMetadataFileName + p 0 id + m (Lnet/minecraft/class_3262;)V method_24233 addPack + p 1 pack + m (Lnet/minecraft/class_3262;Ljava/util/function/Predicate;)V method_41256 addPack + p 2 filter + p 1 pack + m (Lnet/minecraft/class_3294$class_7082;Ljava/lang/String;Ljava/util/function/Predicate;Ljava/util/Map;)V method_41258 findAndAdd + p 4 idToEntryList + p 3 allowedPathPredicate + p 2 startingPath + p 1 pack +c net/minecraft/class_3294$class_7681 net/minecraft/resource/NamespaceResourceManager$Result + f Lnet/minecraft/class_7367; comp_1003 supplier + f Lnet/minecraft/class_3262; comp_1002 pack + f I comp_1004 packIndex + m ()Lnet/minecraft/class_7367; comp_1003 supplier + m ()Lnet/minecraft/class_3262; comp_1002 pack + m ()I comp_1004 packIndex + m (Lnet/minecraft/class_3262;Lnet/minecraft/class_7367;I)V + p 1 pack + p 2 supplier + p 3 packIndex +c net/minecraft/class_3294$class_7682 net/minecraft/resource/NamespaceResourceManager$FileSource + f Lnet/minecraft/class_7367; comp_1009 supplier + f Lnet/minecraft/class_3262; comp_1008 sourcePack + m ()Lnet/minecraft/class_7367; comp_1009 supplier + m ()Lnet/minecraft/class_3262; comp_1008 sourcePack + m (Lnet/minecraft/class_3262;Lnet/minecraft/class_7367;)V + p 1 sourcePack + p 2 supplier +c net/minecraft/class_3294$class_7081 net/minecraft/resource/NamespaceResourceManager$EntryList + f Lnet/minecraft/class_2960; comp_1005 id + f Lnet/minecraft/class_2960; comp_527 metadataId + f Ljava/util/Map; comp_1007 metaSources + f Ljava/util/List; comp_1006 fileSources + m (Lnet/minecraft/class_2960;)V + p 1 id + m ()Lnet/minecraft/class_2960; comp_1005 id + m ()Lnet/minecraft/class_2960; comp_527 metadataId + m ()Ljava/util/List; comp_1006 fileSources + m ()Ljava/util/Map; comp_1007 metaSources + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Ljava/util/List;Ljava/util/Map;)V + p 1 id + p 2 metadataId + p 3 fileSources + p 4 metaSources +c net/minecraft/class_3294$class_7082 net/minecraft/resource/NamespaceResourceManager$FilterablePack + f Lnet/minecraft/class_3262; comp_530 underlying + f Ljava/util/function/Predicate; comp_531 filter + f Ljava/lang/String; comp_529 name + m (Ljava/util/Collection;)V method_41268 removeFiltered + p 1 ids + m (Lnet/minecraft/class_2960;)Z method_41269 isFiltered + p 1 id + m ()Lnet/minecraft/class_3262; comp_530 underlying + m ()Ljava/util/function/Predicate; comp_531 filter + m ()Ljava/lang/String; comp_529 name + m (Ljava/lang/String;Lnet/minecraft/class_3262;Ljava/util/function/Predicate;)V + p 1 name + p 2 underlying + p 3 filter +c net/minecraft/class_3294$class_3295 net/minecraft/resource/NamespaceResourceManager$DebugInputStream + f Z field_14287 closed + f Ljava/util/function/Supplier; field_14288 leakMessage + m (Ljava/io/InputStream;Lnet/minecraft/class_2960;Ljava/lang/String;)V + p 1 parent + p 2 id + p 3 packId +c net/minecraft/class_531 net/minecraft/client/gui/hud/spectator/SpectatorMenu + f Lnet/minecraft/class_537; field_3259 DISABLED_NEXT_PAGE_COMMAND + f I field_32443 CLOSE_SLOT + f Lnet/minecraft/class_2960; field_45580 SCROLL_LEFT_TEXTURE + f Lnet/minecraft/class_2960; field_45579 CLOSE_TEXTURE + f Lnet/minecraft/class_2561; field_26614 PREVIOUS_PAGE_TEXT + f I field_3254 selectedSlot + f Lnet/minecraft/class_537; field_3262 PREVIOUS_PAGE_COMMAND + f Lnet/minecraft/class_537; field_3260 BLANK_COMMAND + f Lnet/minecraft/class_537; field_3256 NEXT_PAGE_COMMAND + f Lnet/minecraft/class_535; field_3258 currentGroup + f Lnet/minecraft/class_536; field_3255 closeCallback + f Lnet/minecraft/class_2960; field_45581 SCROLL_RIGHT_TEXTURE + f Lnet/minecraft/class_2561; field_26615 NEXT_PAGE_TEXT + f Lnet/minecraft/class_2561; field_26613 CLOSE_TEXT + f I field_3263 page + f Lnet/minecraft/class_537; field_3261 CLOSE_COMMAND + m ()Lnet/minecraft/class_539; method_2772 getCurrentState + m ()Lnet/minecraft/class_537; method_2774 getSelectedCommand + m ()Lnet/minecraft/class_535; method_2776 getCurrentGroup + m (I)Lnet/minecraft/class_537; method_2777 getCommand + p 1 slot + m ()Ljava/util/List; method_2770 getCommands + m (Lnet/minecraft/class_536;)V + p 1 closeCallback + m ()I method_2773 getSelectedSlot + m (Lnet/minecraft/class_535;)V method_2778 selectElement + p 1 group + m (I)V method_2771 useCommand + p 1 slot + m ()V method_2779 close +c net/minecraft/class_531$class_533 net/minecraft/client/gui/hud/spectator/SpectatorMenu$ChangePageSpectatorMenuCommand + f I field_3264 direction + f Z field_3265 enabled + m (IZ)V + p 2 enabled + p 1 direction +c net/minecraft/class_531$class_532 net/minecraft/client/gui/hud/spectator/SpectatorMenu$CloseSpectatorMenuCommand +c net/minecraft/class_538 net/minecraft/client/gui/hud/spectator/TeleportSpectatorMenu + f Lnet/minecraft/class_2960; field_45582 TELEPORT_TO_PLAYER_TEXTURE + f Ljava/util/Comparator; field_3267 ORDERING + f Ljava/util/List; field_3268 elements + f Lnet/minecraft/class_2561; field_26617 PROMPT_TEXT + f Lnet/minecraft/class_2561; field_26616 TELEPORT_TEXT + m (Lnet/minecraft/class_640;)Z method_46521 method_46521 + p 0 entry + m (Ljava/util/Collection;)V + p 1 entries + m (Lnet/minecraft/class_640;)Ljava/util/UUID; method_2785 method_2785 + p 0 a +c net/minecraft/class_537 net/minecraft/client/gui/hud/spectator/SpectatorMenuCommand + m (Lnet/minecraft/class_531;)V method_2783 use + p 1 menu + m ()Lnet/minecraft/class_2561; method_16892 getName + m ()Z method_16893 isEnabled + m (Lnet/minecraft/class_332;FF)V method_2784 renderIcon + p 2 brightness + p 1 context + p 3 alpha +c net/minecraft/class_536 net/minecraft/client/gui/hud/spectator/SpectatorMenuCloseCallback + m (Lnet/minecraft/class_531;)V method_2782 close + p 1 menu +c net/minecraft/class_535 net/minecraft/client/gui/hud/spectator/SpectatorMenuCommandGroup + m ()Lnet/minecraft/class_2561; method_2781 getPrompt + m ()Ljava/util/List; method_2780 getCommands +c net/minecraft/class_530 net/minecraft/client/gui/hud/spectator/TeleportToSpecificPlayerSpectatorCommand + f Lnet/minecraft/class_2561; field_26611 name + f Lnet/minecraft/class_640; field_62209 player + m (Lnet/minecraft/class_640;)V + p 1 player +c net/minecraft/class_3298 net/minecraft/resource/Resource + c A resource of binary data.\n\n

The resource must be closed before disposal to avoid resource leaks.\n\n@see ResourceFactory#getResource(Identifier)\n@see ResourceManager#getAllResources(Identifier) + f Lnet/minecraft/class_3262; field_40054 pack + f Lnet/minecraft/class_7367; field_38685 inputSupplier + f Lnet/minecraft/class_7367; field_38686 metadataSupplier + f Lnet/minecraft/class_7368; field_38687 metadata + m ()Lnet/minecraft/class_7368; method_14481 getMetadata + c {@return the metadata for the resource}\n\n

The metadata must then be decoded using\n{@link ResourceMetadata#decode(ResourceMetadataReader)} before using. + m ()Ljava/util/Optional; method_56936 getKnownPackInfo + m ()Ljava/io/InputStream; method_14482 getInputStream + c {@return the input stream of this resource}\n\n

This input stream is closed when this resource is closed. + m ()Ljava/lang/String; method_14480 getPackId + c {@return the ID of the pack this resource is from} + m (Lnet/minecraft/class_3262;Lnet/minecraft/class_7367;)V + p 1 pack + p 2 inputSupplier + m (Lnet/minecraft/class_3262;Lnet/minecraft/class_7367;Lnet/minecraft/class_7367;)V + p 2 inputSupplier + p 3 metadataSupplier + p 1 pack + m ()Ljava/io/BufferedReader; method_43039 getReader + m ()Lnet/minecraft/class_3262; method_45304 getPack +c net/minecraft/class_528 net/minecraft/client/gui/screen/world/WorldListWidget + f Lnet/minecraft/class_2561; field_26608 SNAPSHOT_FIRST_LINE + f Lnet/minecraft/class_2960; field_45577 JOIN_TEXTURE + f Lnet/minecraft/class_2960; field_45573 MARKED_JOIN_TEXTURE + f Ljava/util/List; field_39740 levels + f Ljava/util/function/Consumer; field_62191 confirmationCallback + f Lnet/minecraft/class_2561; field_26609 SNAPSHOT_SECOND_LINE + f Lnet/minecraft/class_528$class_11781; field_62188 worldListType + f Lnet/minecraft/class_2960; field_45572 MARKED_JOIN_HIGHLIGHTED_TEXTURE + f Lnet/minecraft/class_2960; field_45576 JOIN_HIGHLIGHTED_TEXTURE + f Ljava/util/function/Consumer; field_62190 selectionCallback + f Ljava/util/concurrent/CompletableFuture; field_39739 levelsFuture + f Lnet/minecraft/class_437; field_3237 parent + f Lnet/minecraft/class_528$class_7415; field_38994 loadingEntry + f Lnet/minecraft/class_2960; field_45571 ERROR_TEXTURE + f Lnet/minecraft/class_2561; field_26610 LOCKED_TEXT + f Lorg/slf4j/Logger; field_3238 LOGGER + f Lnet/minecraft/class_2561; field_26606 FROM_NEWER_VERSION_FIRST_LINE + f Lnet/minecraft/class_2960; field_45575 WARNING_TEXTURE + f Lnet/minecraft/class_2561; field_46897 INCOMPATIBLE_TOOLTIP + f Ljava/time/format/DateTimeFormatter; field_19132 DATE_FORMAT + f Ljava/lang/String; field_39738 search + f Lnet/minecraft/class_2960; field_45570 ERROR_HIGHLIGHTED_TEXTURE + f Z field_62189 failedToGetLevels + f Lnet/minecraft/class_2561; field_34803 CONVERSION_TOOLTIP + f Lnet/minecraft/class_2561; field_45569 EXPERIMENTAL_TEXT + f Lnet/minecraft/class_2561; field_26607 FROM_NEWER_VERSION_SECOND_LINE + f Lnet/minecraft/class_2960; field_45574 WARNING_HIGHLIGHTED_TEXTURE + m (Ljava/lang/String;Ljava/util/List;)V method_43454 showSummaries + p 2 summaries + p 1 search + m (Ljava/util/List;)V method_44678 show + p 1 summaries + m ()V method_44680 load + m (Ljava/lang/Throwable;)Ljava/util/List; method_43455 method_43455 + p 1 throwable + m ()Ljava/util/concurrent/CompletableFuture; method_43462 loadLevels + m (Lnet/minecraft/class_437;Lnet/minecraft/class_310;IILjava/lang/String;Lnet/minecraft/class_528;Ljava/util/function/Consumer;Ljava/util/function/Consumer;Lnet/minecraft/class_528$class_11781;)V + p 5 search + p 6 predecessor + p 7 selectionCallback + p 8 confirmationCallback + p 9 worldListType + p 1 parent + p 2 client + p 3 width + p 4 height + m (Ljava/util/List;Lnet/minecraft/class_528$class_7414;)Z method_73452 method_73452 + p 1 child + m ()V method_43464 narrateScreenIfNarrationEnabled + m (Ljava/lang/String;Lnet/minecraft/class_34;)Z method_73454 method_73454 + p 2 summary + m ()Lnet/minecraft/class_437; method_2752 getParent + m (Lnet/minecraft/class_2561;)V method_43460 showUnableToLoadScreen + p 1 message + m ()V method_73451 refresh + m (Ljava/lang/String;Lnet/minecraft/class_34;)Z method_43453 shouldShow + p 2 summary + p 1 search + m (Lnet/minecraft/class_528$class_7414;)V method_20157 setSelected + m ()Ljava/util/List; method_44679 tryGet + m (Ljava/lang/String;)V method_44677 setSearch + p 1 search + m (Lnet/minecraft/class_528$class_7414;)V method_73453 method_73453 + p 1 entry + m ()Ljava/util/Optional; method_20159 getSelectedAsOptional +c net/minecraft/class_528$class_11782 net/minecraft/client/gui/screen/world/WorldListWidget$EmptyListEntry + f Lnet/minecraft/class_7842; field_62204 widget + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_327;)V + p 1 text + p 2 textRenderer +c net/minecraft/class_528$class_11781 net/minecraft/client/gui/screen/world/WorldListWidget$WorldListType + f Lnet/minecraft/class_528$class_11781; field_62202 UPLOAD_WORLD + f Lnet/minecraft/class_528$class_11781; field_62201 SINGLEPLAYER +c net/minecraft/class_528$class_11780 net/minecraft/client/gui/screen/world/WorldListWidget$Builder + f Ljava/util/function/Consumer; field_62200 confirmationCallback + f Lnet/minecraft/class_528; field_62198 predecessor + f Lnet/minecraft/class_528$class_11781; field_62197 worldListType + f Ljava/util/function/Consumer; field_62199 selectionCallback + f Ljava/lang/String; field_62196 search + f I field_62194 width + f I field_62195 height + f Lnet/minecraft/class_310; field_62192 client + f Lnet/minecraft/class_437; field_62193 parent + m (Lnet/minecraft/class_310;Lnet/minecraft/class_437;)V + p 1 client + p 2 parent + m ()Lnet/minecraft/class_528; method_73460 toWidget + m (I)Lnet/minecraft/class_528$class_11780; method_73461 height + p 1 height + m (Ljava/util/function/Consumer;)Lnet/minecraft/class_528$class_11780; method_73459 selectionCallback + p 1 selectionCallback + m ()Lnet/minecraft/class_528$class_11780; method_73455 uploadWorld + m (Lnet/minecraft/class_528;)Lnet/minecraft/class_528$class_11780; method_73457 predecessor + p 1 predecessor + m (Ljava/lang/String;)Lnet/minecraft/class_528$class_11780; method_73458 search + p 1 search + m (Ljava/util/function/Consumer;)Lnet/minecraft/class_528$class_11780; method_73462 confirmationCallback + p 1 confirmationCallback + m (I)Lnet/minecraft/class_528$class_11780; method_73456 width + p 1 width +c net/minecraft/class_528$class_7415 net/minecraft/client/gui/screen/world/WorldListWidget$LoadingEntry + f Lnet/minecraft/class_2561; field_38997 LOADING_LIST_TEXT + f Lnet/minecraft/class_310; field_38998 client + m (Lnet/minecraft/class_310;)V + p 1 client +c net/minecraft/class_528$class_7414 net/minecraft/client/gui/screen/world/WorldListWidget$Entry + m ()Lnet/minecraft/class_34; method_73463 getLevel +c net/minecraft/class_528$class_4272 net/minecraft/client/gui/screen/world/WorldListWidget$WorldEntry + f Lnet/minecraft/class_528; field_62205 parent + f Lnet/minecraft/class_7842; field_62207 nameWidget + f Lnet/minecraft/class_7842; field_62206 displayNameWidget + f Lnet/minecraft/class_8573; field_19141 icon + f Lnet/minecraft/class_437; field_19137 screen + f Lnet/minecraft/class_7842; field_62208 detailsWidget + f Lnet/minecraft/class_34; field_19138 level + f Lnet/minecraft/class_310; field_19136 client + f Ljava/nio/file/Path; field_19140 iconPath + m ()Z method_73465 allowConfirmationByKeyboard + m (Lnet/minecraft/class_528;Lnet/minecraft/class_528;Lnet/minecraft/class_34;)V + p 2 parent + p 3 level + m (Z)V method_20170 method_20170 + p 1 confirmed + m (Lnet/minecraft/class_32$class_5143;Z)V method_54628 method_54628 + p 2 edited + m ()V method_52265 validateIconPath + m ()Ljava/lang/String; method_35740 getLevelDisplayName + m ()V method_20169 deleteIfConfirmed + m (Lnet/minecraft/class_1940;Lnet/minecraft/class_7193;Ljava/nio/file/Path;Z)V method_20165 method_20165 + p 4 confirmed + m ()V method_20164 play + m ()V method_33685 delete + m ()V method_52205 loadIcon + m ()I method_73466 getTextX + m ()V method_20173 recreate + m ()V method_20171 edit + m ()V method_29990 openReadingWorldScreen +c net/minecraft/class_3262 net/minecraft/resource/ResourcePack + c A resource pack, providing resources to resource managers.\n\n

They are single-use in the lifecycle of a {@linkplain LifecycledResourceManagerImpl\nlifecycled resource manager}. A {@link ResourcePackProfile} is a persistent\nrepresentation of the resource packs, and can be used to recreate the packs\non demand. + f Ljava/lang/String; field_29780 METADATA_PATH_SUFFIX + f Ljava/lang/String; field_29781 PACK_METADATA_NAME + m (Lnet/minecraft/class_3264;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_3262$class_7664;)V method_14408 findResources + p 3 prefix + p 4 consumer + p 1 type + p 2 namespace + m ([Ljava/lang/String;)Lnet/minecraft/class_7367; method_14410 openRoot + p 1 segments + m (Lnet/minecraft/class_3264;Lnet/minecraft/class_2960;)Lnet/minecraft/class_7367; method_14405 open + p 2 id + p 1 type + m (Lnet/minecraft/class_7677;)Ljava/lang/Object; method_14407 parseMetadata + p 1 metadataSerializer + m ()Lnet/minecraft/class_9224; method_56926 getInfo + m ()Ljava/lang/String; method_14409 getId + m ()Ljava/util/Optional; method_56929 getKnownPackInfo + m (Lnet/minecraft/class_3264;)Ljava/util/Set; method_14406 getNamespaces + p 1 type +c net/minecraft/class_3262$class_7664 net/minecraft/resource/ResourcePack$ResultConsumer +c net/minecraft/class_543 net/minecraft/client/WindowSettings + f Ljava/util/OptionalInt; comp_3497 fullscreenHeight + f Ljava/util/OptionalInt; comp_3496 fullscreenWidth + f Z comp_3498 fullscreen + f I comp_3494 width + f I comp_3495 height + m (IILjava/util/OptionalInt;Ljava/util/OptionalInt;Z)V + p 5 fullscreen + p 3 fullscreenWidth + p 4 fullscreenHeight + p 1 width + p 2 height + m (II)Lnet/minecraft/class_543; method_66512 withDimensions + p 2 height + p 1 width + m ()Ljava/util/OptionalInt; comp_3497 fullscreenHeight + m ()Ljava/util/OptionalInt; comp_3496 fullscreenWidth + m ()Z comp_3498 fullscreen + m ()I comp_3494 width + m ()I comp_3495 height + m (Z)Lnet/minecraft/class_543; method_66513 withFullscreen + p 1 fullscreen +c net/minecraft/class_542 net/minecraft/client/RunArgs + f Lnet/minecraft/class_543; field_3279 windowSettings + f Lnet/minecraft/class_542$class_547; field_3278 network + f Lnet/minecraft/class_542$class_545; field_3280 game + f Lnet/minecraft/class_542$class_8495; field_44553 quickPlay + f Lnet/minecraft/class_542$class_544; field_3277 directories + m (Lnet/minecraft/class_542$class_547;Lnet/minecraft/class_543;Lnet/minecraft/class_542$class_544;Lnet/minecraft/class_542$class_545;Lnet/minecraft/class_542$class_8495;)V + p 5 quickPlay + p 3 dirs + p 4 game + p 1 network + p 2 windowSettings +c net/minecraft/class_542$class_547 net/minecraft/client/RunArgs$Network + f Ljava/net/Proxy; field_3296 netProxy + f Lnet/minecraft/class_320; field_3299 session + m (Lnet/minecraft/class_320;Ljava/net/Proxy;)V + p 1 session +c net/minecraft/class_542$class_8495 net/minecraft/client/RunArgs$QuickPlay + f Lnet/minecraft/class_542$class_11396; comp_4277 variant + f Ljava/lang/String; comp_4276 logPath + m ()Z method_51257 isEnabled + m ()Ljava/lang/String; comp_4276 logPath + m ()Lnet/minecraft/class_542$class_11396; comp_4277 variant + m (Ljava/lang/String;Lnet/minecraft/class_542$class_11396;)V + p 1 logPath + p 2 variant +c net/minecraft/class_542$class_544 net/minecraft/client/RunArgs$Directories + f Ljava/lang/String; field_3288 assetIndex + f Ljava/io/File; field_3290 resourcePackDir + f Ljava/io/File; field_3289 assetDir + f Ljava/io/File; field_3287 runDir + m (Ljava/io/File;Ljava/io/File;Ljava/io/File;Ljava/lang/String;)V + p 1 runDir + p 2 resPackDir + p 3 assetDir + p 4 assetIndex + m ()Ljava/nio/file/Path; method_45701 getAssetDir +c net/minecraft/class_542$class_545 net/minecraft/client/RunArgs$Game + f Ljava/lang/String; field_3291 versionType + f Z field_57923 renderDebugLabels + f Z field_25062 onlineChatDisabled + f Z field_25061 multiplayerDisabled + f Z field_61660 offlineDeveloperMode + f Z field_3292 demo + f Ljava/lang/String; field_3293 version + f Z field_54272 tracyEnabled + m (ZLjava/lang/String;Ljava/lang/String;ZZZZZ)V + p 4 multiplayerDisabled + p 3 versionType + p 2 version + p 1 demo + p 8 offlineDeveloperMode + p 7 renderDebugLabels + p 6 tracyEnabled + p 5 onlineChatDisabled +c net/minecraft/class_542$class_11395 net/minecraft/client/RunArgs$SingleplayerQuickPlay + f Ljava/lang/String; comp_4280 worldId + m ()Ljava/lang/String; comp_4280 worldId + m (Ljava/lang/String;)V + p 1 worldId +c net/minecraft/class_542$class_11396 net/minecraft/client/RunArgs$QuickPlayVariant + f Lnet/minecraft/class_542$class_11396; field_60574 DEFAULT + m ()Z method_71645 isEnabled +c net/minecraft/class_542$class_11392 net/minecraft/client/RunArgs$DisabledQuickPlay +c net/minecraft/class_542$class_11393 net/minecraft/client/RunArgs$MultiplayerQuickPlay + f Ljava/lang/String; comp_4278 serverAddress + m ()Ljava/lang/String; comp_4278 serverAddress + m (Ljava/lang/String;)V + p 1 serverAddress +c net/minecraft/class_542$class_11394 net/minecraft/client/RunArgs$RealmsQuickPlay + f Ljava/lang/String; comp_4279 realmId + m ()Ljava/lang/String; comp_4279 realmId + m (Ljava/lang/String;)V + p 1 realmId +c net/minecraft/class_549 net/minecraft/client/render/entity/model/AbstractHorseEntityModel + f F field_32489 ANGRY_ANIMATION_BODY_PITCH_MULTIPLIER + f F field_32488 ANGRY_ANIMATION_FRONT_LEG_PITCH_MULTIPLIER + f F field_32487 EATING_GRASS_ANIMATION_HEAD_BASE_PITCH + f Lnet/minecraft/class_9953; field_52854 BABY_TRANSFORMER + f F field_32491 ANGRY_ANIMATION_HIND_LEG_PITCH_MULTIPLIER + f F field_32490 HEAD_TAIL_BASE_PITCH + f Lnet/minecraft/class_630; field_27425 rightHindLeg + f Lnet/minecraft/class_630; field_27426 leftHindLeg + f Lnet/minecraft/class_630; field_3300 tail + f Lnet/minecraft/class_630; field_27427 rightFrontLeg + f Lnet/minecraft/class_630; field_27428 leftFrontLeg + f Ljava/lang/String; field_32486 HEAD_PARTS + c The key of the model part containing the head model parts, whose value is {@value}. + f Lnet/minecraft/class_630; field_3307 head + f Lnet/minecraft/class_630; field_3305 body + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5609; method_62053 getBabyHorseModelData + p 0 dilation + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5609; method_32010 getModelData + p 0 dilation + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5609; method_62054 getBabyModelData + p 0 dilation + m (Lnet/minecraft/class_10019;)V method_17085 setAngles +c net/minecraft/class_548 net/minecraft/client/render/entity/model/ArmorStandArmorEntityModel + c Represents the armor model of an {@linkplain ArmorStandEntity}. + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5609; method_32686 getTexturedModelData + p 0 dilation + m (Lnet/minecraft/class_9998;)V method_17066 setAngles + m (Lnet/minecraft/class_5605;Lnet/minecraft/class_5605;)Lnet/minecraft/class_11677; method_72830 getEquipmentModelData + p 0 hatDilation + p 1 armorDilation +c net/minecraft/class_4590 net/minecraft/util/math/AffineTransformation + c An affine transformation is a decomposition of a 4×4 real matrix into\na {@linkplain #leftRotation left rotation} quaternion, a {@linkplain #scale scale}\n3-vector, a second {@linkplain #rightRotation right rotation} quaternion, and a\n{@linkplain #translation translation} 3-vector. It is also known as "TRSR"\ntransformation, meaning "translation rotation scale rotation".\n\n

This class is immutable; its matrix is lazily decomposed upon demand. + f Lorg/joml/Quaternionfc; field_20905 rightRotation + f Z field_20901 initialized + f Lorg/joml/Quaternionfc; field_20903 leftRotation + f Lcom/mojang/serialization/Codec; field_42532 CODEC + f Lorg/joml/Matrix4fc; field_20900 matrix + f Lorg/joml/Vector3fc; field_20902 translation + f Lorg/joml/Vector3fc; field_20904 scale + f Lcom/mojang/serialization/Codec; field_42533 ANY_CODEC + f Lnet/minecraft/class_4590; field_20906 IDENTITY + m (Lorg/joml/Vector3fc;Lorg/joml/Quaternionfc;Lorg/joml/Vector3fc;Lorg/joml/Quaternionfc;)V + p 2 leftRotation + p 1 translation + p 4 rightRotation + p 3 scale + m ()V method_22938 init + m (Lorg/joml/Matrix4fc;)V + p 1 matrix + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49059 method_49059 + p 0 instance + m ()Lorg/joml/Matrix4fc; method_22936 getMatrix + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lorg/joml/Vector3fc; method_35865 getTranslation + m ()Lorg/joml/Quaternionfc; method_22937 getLeftRotation + m (Lorg/joml/Vector3fc;Lorg/joml/Quaternionfc;Lorg/joml/Vector3fc;Lorg/joml/Quaternionfc;)Lorg/joml/Matrix4f; method_22934 setup + p 0 translation + p 3 rightRotation + p 1 leftRotation + p 2 scale + m (Lnet/minecraft/class_4590;)Lorg/joml/Vector3fc; method_49063 method_49063 + p 0 affineTransformation + m (Lnet/minecraft/class_4590;)Lnet/minecraft/class_4590; method_22933 multiply + p 1 other + m ()Lnet/minecraft/class_4590; method_22935 invert + m ()Lorg/joml/Matrix4f; method_68076 copyMatrix + m ()Lnet/minecraft/class_4590; method_22931 identity + m (Lnet/minecraft/class_4590;)Lorg/joml/Quaternionfc; method_49064 method_49064 + p 0 affineTransformation + m (Lnet/minecraft/class_4590;)Lorg/joml/Quaternionfc; method_49062 method_49062 + p 0 affineTransformation + m (Lnet/minecraft/class_4590;)Lorg/joml/Vector3fc; method_49065 method_49065 + p 0 affineTransformation + m ()Lorg/joml/Vector3fc; method_35866 getScale + m (Lnet/minecraft/class_4590;F)Lnet/minecraft/class_4590; method_35864 interpolate + p 1 target + p 2 factor + m ()Lorg/joml/Quaternionfc; method_35867 getRightRotation +c net/minecraft/class_3268 net/minecraft/resource/DefaultResourcePack + f Lnet/minecraft/class_7662; field_26938 metadata + f Lorg/slf4j/Logger; field_14195 LOGGER + f Lnet/minecraft/class_9224; field_49032 info + f Ljava/util/Set; field_14193 namespaces + f Ljava/util/List; field_40002 rootPaths + f Ljava/util/Map; field_40003 namespacePaths + m (Lnet/minecraft/class_3264;Lnet/minecraft/class_2960;Ljava/util/function/Consumer;)V method_45192 forEachNamespacedPath + p 1 type + p 2 path + p 3 consumer + m (Lnet/minecraft/class_7367;)Lnet/minecraft/class_3298; method_45194 method_45194 + p 1 stream + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3264;Ljava/util/function/Consumer;Ljava/util/List;)V method_45190 method_45190 + p 4 segments + m (Lnet/minecraft/class_9224;Lnet/minecraft/class_7662;Ljava/util/Set;Ljava/util/List;Ljava/util/Map;)V + p 3 namespaces + p 4 rootPaths + p 1 info + p 2 metadata + p 5 namespacePaths + m (Lnet/minecraft/class_2960;)Ljava/util/Optional; method_45188 method_45188 + p 1 id + m (Lnet/minecraft/class_3262$class_7664;Ljava/lang/String;Ljava/nio/file/Path;Ljava/util/List;)V method_14418 collectIdentifiers + p 1 namespace + p 2 root + p 0 consumer + p 3 prefixSegments + m (Lnet/minecraft/class_3264;Lnet/minecraft/class_3262$class_7664;Ljava/lang/String;Ljava/util/List;)V method_45193 method_45193 + p 4 segments + m ()Lnet/minecraft/class_5912; method_43032 getFactory + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3264;Ljava/util/List;)Lnet/minecraft/class_7367; method_45189 method_45189 + p 3 segments +c net/minecraft/class_4599 net/minecraft/client/render/BufferBuilderStorage + f Lnet/minecraft/class_4618; field_20961 outlineVertexConsumers + f Lnet/minecraft/class_8901; field_46900 blockBufferBuildersPool + f Lnet/minecraft/class_4597$class_4598; field_46901 entityVertexConsumers + f Lnet/minecraft/class_4597$class_4598; field_20959 effectVertexConsumers + f Lnet/minecraft/class_750; field_20956 blockBufferBuilders + m (I)V + p 1 maxBlockBuildersPoolSize + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectLinkedOpenHashMap;Lnet/minecraft/class_1921;)V method_54641 method_54641 + p 1 renderLayer + m ()Lnet/minecraft/class_750; method_22997 getBlockBufferBuilders + m ()Lnet/minecraft/class_4597$class_4598; method_23000 getEntityVertexConsumers + m ()Lnet/minecraft/class_8901; method_54640 getBlockBufferBuildersPool + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectLinkedOpenHashMap;)V method_62263 method_62263 + p 0 objectMap + m ()Lnet/minecraft/class_4597$class_4598; method_23001 getEffectVertexConsumers + m ()Lnet/minecraft/class_4618; method_23003 getOutlineVertexConsumers + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectLinkedOpenHashMap;Lnet/minecraft/class_1921;)V method_23798 assignBufferBuilder + p 1 layer + p 0 builderStorage + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectLinkedOpenHashMap;)V method_54639 method_54639 + p 1 map +c net/minecraft/class_3264 net/minecraft/resource/ResourceType + f Ljava/lang/String; field_14189 directory + f Lnet/minecraft/class_3264; field_14188 CLIENT_RESOURCES + f Lnet/minecraft/class_3264; field_14190 SERVER_DATA + m ()Ljava/lang/String; method_14413 getDirectory + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 directory +c net/minecraft/class_540 net/minecraft/client/gui/hud/spectator/TeamTeleportSpectatorMenu + f Ljava/util/List; field_3272 commands + f Lnet/minecraft/class_2960; field_45583 TEXTURE + f Lnet/minecraft/class_2561; field_26619 PROMPT_TEXT + f Lnet/minecraft/class_2561; field_26618 TEAM_TELEPORT_TEXT + m (Lnet/minecraft/class_310;Lnet/minecraft/class_269;)Ljava/util/List; method_47432 getCommands + p 0 client + p 1 scoreboard + m (Lnet/minecraft/class_310;Lnet/minecraft/class_268;)Ljava/util/stream/Stream; method_47431 method_47431 + p 1 team +c net/minecraft/class_540$class_541 net/minecraft/client/gui/hud/spectator/TeamTeleportSpectatorMenu$TeleportToSpecificTeamCommand + f Lnet/minecraft/class_268; field_3275 team + f Ljava/util/function/Supplier; field_41115 skinTexturesSupplier + f Ljava/util/List; field_3274 scoreboardEntries + m (Lnet/minecraft/class_310;Lnet/minecraft/class_268;)Ljava/util/Optional; method_47433 create + p 1 team + p 0 client + m (Lnet/minecraft/class_268;Ljava/util/List;Ljava/util/function/Supplier;)V + p 3 skinTexturesSupplier + p 2 scoreboardEntries + p 1 team +c net/minecraft/class_4597 net/minecraft/client/render/VertexConsumerProvider + c Manages rendering with multiple {@linkplain RenderLayer render layers}. + m (Ljava/util/SequencedMap;Lnet/minecraft/class_9799;)Lnet/minecraft/class_4597$class_4598; method_22992 immediate + c {@return a vertex consumer provider that immediately draws the current\nbuffer builder when a different render layer is requested except {@code\nlayerBuffers}}.\n\n

{@code layerBuffers} will not be drawn immediately after switching\nthe current render layer. The caller of this method can control when to\ndraw these render layers. For example, {@linkplain\nRenderLayer#TRANSLUCENT the translucent render layer} should be drawn in\na later stage so the other things behind translucent objects are\nvisible. + p 0 layerBuffers + p 1 fallbackBuffer + m (Lnet/minecraft/class_9799;)Lnet/minecraft/class_4597$class_4598; method_22991 immediate + c {@return a vertex consumer provider that immediately draws the current\nbuffer builder when a different render layer is requested}. + p 0 buffer + m (Lnet/minecraft/class_1921;)Lnet/minecraft/class_4588; method_73477 getBuffer + c Starts building a buffer that will be drawn with {@code layer}.\n\n

The returned vertex consumer can only be safely used until this\nmethod is called with a different render layer.\n\n

Note that the user of this method cannot modify states controlled\nby the render layer. Those states will be overridden by the render layer\nbefore drawing them. If you need to set states yourself, consider using\n{@link Tessellator} or making a custom render layer. + p 1 layer +c net/minecraft/class_4597$class_4598 net/minecraft/client/render/VertexConsumerProvider$Immediate + c A vertex consumer provider that immediately draws the current buffer\nbuilder when a different render layer is requested except for render\nlayers specified in the constructor.\n\n@see VertexConsumerProvider#immediate(BufferAllocator)\n@see VertexConsumerProvider#immediate(SequencedMap, BufferAllocator) + f Lnet/minecraft/class_1921; field_52158 currentLayer + f Ljava/util/SequencedMap; field_20953 layerBuffers + f Lnet/minecraft/class_9799; field_52156 allocator + f Ljava/util/Map; field_52157 pending + m (Lnet/minecraft/class_9799;Ljava/util/SequencedMap;)V + p 1 allocator + p 2 layerBuffers + m ()V method_37104 drawCurrentLayer + c Draws the current render layer if it's not in {@code layerBuffers}\nspecified in the constructor. + m (Lnet/minecraft/class_1921;Lnet/minecraft/class_287;)V method_60893 draw + p 2 builder + p 1 layer + m ()V method_22993 draw + c Draws all remaining render layers including {@code layerBuffers}\nspecified in the constructor. + m (Lnet/minecraft/class_1921;)V method_22994 draw + c Draws the contents in the {@code layer}'s buffer. + p 1 layer +c net/minecraft/class_539 net/minecraft/client/gui/hud/spectator/SpectatorMenuState + f Ljava/util/List; field_3271 commands + f I field_3269 selectedSlot + m (Ljava/util/List;I)V + p 1 commands + p 2 selectedSlot + m ()I method_2787 getSelectedSlot + m (I)Lnet/minecraft/class_537; method_2786 getCommand + p 1 slot +c net/minecraft/class_3272 net/minecraft/resource/metadata/PackResourceMetadata + f Lnet/minecraft/class_7677; field_61155 CLIENT_RESOURCES_SERIALIZER + f Lcom/mojang/serialization/Codec; field_45051 DESCRIPTION_CODEC + f Lnet/minecraft/class_7677; field_61157 DESCRIPTION_SERIALIZER + f Lnet/minecraft/class_7677; field_61156 SERVER_DATA_SERIALIZER + f Lnet/minecraft/class_6497; comp_1582 supportedFormats + f Lnet/minecraft/class_2561; comp_1580 description + m (Lnet/minecraft/class_3264;)Lnet/minecraft/class_7677; method_72356 getSerializerFor + p 0 type + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_72358 method_72358 + p 0 instance + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_3272; method_72359 method_72359 + p 0 description + m (Lnet/minecraft/class_3264;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_72357 method_72357 + p 1 instance + m (Lnet/minecraft/class_3264;)Lcom/mojang/serialization/Codec; method_72360 createCodec + p 0 type + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_6497;)V + p 1 description + p 2 supportedFormats + m ()Lnet/minecraft/class_2561; comp_1580 description + m ()Lnet/minecraft/class_6497; comp_1582 supportedFormats +c net/minecraft/class_555 net/minecraft/client/render/entity/model/BlazeEntityModel + c Represents the model of a blaze-like entity.\nThis model is not tied to a specific entity.\n\n

\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}{@linkplain #root Root part}{@link #head}
{@code part0}{@linkplain #root Root part}{@link #rods rods[0]}
{@code part1}{@linkplain #root Root part}{@link #rods rods[1]}
{@code part2}{@linkplain #root Root part}{@link #rods rods[2]}
{@code part3}{@linkplain #root Root part}{@link #rods rods[3]}
{@code part4}{@linkplain #root Root part}{@link #rods rods[4]}
{@code part5}{@linkplain #root Root part}{@link #rods rods[5]}
{@code part6}{@linkplain #root Root part}{@link #rods rods[6]}
{@code part7}{@linkplain #root Root part}{@link #rods rods[7]}
{@code part8}{@linkplain #root Root part}{@link #rods rods[8]}
{@code part9}{@linkplain #root Root part}{@link #rods rods[9]}
{@code part10}{@linkplain #root Root part}{@link #rods rods[10]}
{@code part11}{@linkplain #root Root part}{@link #rods rods[11]}
\n
+ f [Lnet/minecraft/class_630; field_3328 rods + f Lnet/minecraft/class_630; field_27395 head + m ()Lnet/minecraft/class_5607; method_31982 getTexturedModelData + m (I)Ljava/lang/String; method_31983 getRodName + p 0 index + m (Lnet/minecraft/class_10042;)V method_62065 setAngles +c net/minecraft/class_554 net/minecraft/client/render/entity/model/BoatEntityModel + c Represents the model of a {@linkplain BoatEntity}.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value #BOTTOM}Root part
{@value #BACK}Root part
{@value #FRONT}Root part
{@value #RIGHT}Root part
{@value #LEFT}Root part
{@value #LEFT_PADDLE}Root part{@link #leftPaddle}
{@value #RIGHT_PADDLE}Root part{@link #rightPaddle}
{@value #WATER_PATCH}Root part{@link #waterPatch}
\n
+ f Ljava/lang/String; field_32460 WATER_PATCH + c The key of the water patch model part, whose value is {@value}. + f Ljava/lang/String; field_32464 RIGHT + c The key of the right model part, whose value is {@value}. + f Ljava/lang/String; field_32463 FRONT + c The key of the front model part, whose value is {@value}. + f Ljava/lang/String; field_32462 BACK + c The key of the back model part, whose value is {@value}. + f Ljava/lang/String; field_32465 LEFT + c The key of the left model part, whose value is {@value}. + m ()Lnet/minecraft/class_5607; method_31985 getTexturedModelData + m ()Lnet/minecraft/class_5607; method_62067 getBaseTexturedModelData + m ()Lnet/minecraft/class_5607; method_62066 getChestTexturedModelData + m (Lnet/minecraft/class_5610;)V method_45703 addParts + p 0 modelPartData +c net/minecraft/class_553 net/minecraft/client/render/entity/model/BatEntityModel + c Represents the model of a {@linkplain BatEntity}.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}{@linkplain #root Root part}{@link #head}
{@value EntityModelPartNames#RIGHT_EAR}{@value EntityModelPartNames#HEAD}
{@value EntityModelPartNames#LEFT_EAR}{@value EntityModelPartNames#HEAD}
{@value EntityModelPartNames#BODY}{@linkplain #root Root part}{@link #body}
{@value EntityModelPartNames#RIGHT_WING}{@value EntityModelPartNames#BODY}{@link #rightWing}
{@value EntityModelPartNames#RIGHT_WING_TIP}{@value EntityModelPartNames#RIGHT_WING}{@link #rightWingTip}
{@value EntityModelPartNames#LEFT_WING}{@value EntityModelPartNames#BODY}{@link #leftWing}
{@value EntityModelPartNames#LEFT_WING_TIP}{@value EntityModelPartNames#LEFT_WING}{@link #leftWingTip}
\n
+ f Lnet/minecraft/class_630; field_3319 rightWingTip + f Lnet/minecraft/class_630; field_3324 leftWingTip + f Lnet/minecraft/class_630; field_3322 rightWing + f Lnet/minecraft/class_630; field_3323 body + f Lnet/minecraft/class_630; field_3320 leftWing + f Lnet/minecraft/class_630; field_3321 head + f Lnet/minecraft/class_11509; field_60881 roostingAnimation + f Lnet/minecraft/class_11509; field_60880 flyingAnimation + f Lnet/minecraft/class_630; field_47127 feet + m ()Lnet/minecraft/class_5607; method_31980 getTexturedModelData + m (F)V method_54805 setRoostingHeadAngles + p 1 yaw + m (Lnet/minecraft/class_10001;)V method_17069 setAngles +c net/minecraft/class_558 net/minecraft/client/render/entity/model/ChickenEntityModel + c Represents the model of a chicken-like entity.\nThis model is not tied to a specific entity.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}Root part{@link #head}
{@value EntityModelPartNames#BEAK}Root part{@link #beak}
{@value #RED_THING}Root part{@link #wattle}
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value EntityModelPartNames#RIGHT_LEG}Root part{@link #rightLeg}
{@value EntityModelPartNames#LEFT_LEG}Root part{@link #leftLeg}
{@value EntityModelPartNames#RIGHT_WING}Root part{@link #rightWing}
{@value EntityModelPartNames#LEFT_WING}Root part{@link #leftWing}
\n
+ f Lnet/minecraft/class_630; field_27402 leftLeg + f Lnet/minecraft/class_630; field_27403 rightWing + f Ljava/lang/String; field_32471 RED_THING + c The key of the wattle model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_27404 leftWing + f Lnet/minecraft/class_630; field_3344 head + f Lnet/minecraft/class_9953; field_52891 BABY_TRANSFORMER + f Lnet/minecraft/class_630; field_27401 rightLeg + m ()Lnet/minecraft/class_5609; method_67546 getModelData + m (Lnet/minecraft/class_10009;)V method_62073 setAngles + m ()Lnet/minecraft/class_5607; method_31988 getTexturedModelData +c net/minecraft/class_557 net/minecraft/client/render/entity/model/BookModel + c Represents the model of the enchanting table's book.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#LEFT_LID}{@linkplain #root Root part}{@link #leftCover}
{@value EntityModelPartNames#RIGHT_LID}{@linkplain #root Root part}{@link #rightCover}
{@code seam}{@linkplain #root Root part}
{@value #LEFT_PAGES}{@linkplain #root Root part}{@link #leftPages}
{@value #RIGHT_PAGES}{@linkplain #root Root part}{@link #rightPages}
{@value #FLIP_PAGE1}{@linkplain #root Root part}{@link #leftFlippingPage}
{@value #FLIP_PAGE2}{@linkplain #root Root part}{@link #rightFlippingPage}
\n
+ f Lnet/minecraft/class_630; field_3339 rightFlippingPage + f Lnet/minecraft/class_630; field_3336 leftCover + f Ljava/lang/String; field_32467 RIGHT_PAGES + c The key of the right pages model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_3335 rightPages + f Ljava/lang/String; field_32466 LEFT_PAGES + c The key of the left pages model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_3338 rightCover + f Lnet/minecraft/class_630; field_3337 leftPages + f Lnet/minecraft/class_630; field_3334 leftFlippingPage + f Ljava/lang/String; field_32469 FLIP_PAGE2 + c The key of the right flipping page model part, whose value is {@value}. + f Ljava/lang/String; field_32468 FLIP_PAGE1 + c The key of the left flipping page model part, whose value is {@value}. + m ()Lnet/minecraft/class_5607; method_31986 getTexturedModelData + m (Lnet/minecraft/class_557$class_11650;)V method_17073 setAngles + m (Lnet/minecraft/class_630;)V + p 1 root +c net/minecraft/class_557$class_11650 net/minecraft/client/render/entity/model/BookModel$BookModelState + f F comp_4756 pageTurnAmount + f F comp_4757 leftFlipAmount + f F comp_4758 rightFlipAmount + f F comp_4759 pageTurnSpeed + m ()F comp_4756 pageTurnAmount + m ()F comp_4757 leftFlipAmount + m ()F comp_4758 rightFlipAmount + m ()F comp_4759 pageTurnSpeed + m (FFFF)V + p 1 pageTurnAmount + p 2 leftFlipAmount + p 3 rightFlipAmount + p 4 pageTurnSpeed +c net/minecraft/class_3279 net/minecraft/resource/FileResourcePackProvider + f Lorg/slf4j/Logger; field_40044 LOGGER + f Lnet/minecraft/class_8580; field_45054 symlinkFinder + f Lnet/minecraft/class_9225; field_49034 POSITION + f Lnet/minecraft/class_3264; field_40045 type + f Lnet/minecraft/class_5352; field_25345 source + f Ljava/nio/file/Path; field_14218 packsDir + m (Ljava/nio/file/Path;Lnet/minecraft/class_3264;Lnet/minecraft/class_5352;Lnet/minecraft/class_8580;)V + p 4 symlinkFinder + p 1 packsDir + p 2 type + p 3 source + m (Ljava/util/function/Consumer;Ljava/nio/file/Path;Lnet/minecraft/class_3288$class_7680;)V method_45272 method_45272 + p 2 path + p 3 packFactory + m (Ljava/nio/file/Path;)Lnet/minecraft/class_9224; method_56930 createPackInfo + p 1 path + m (Ljava/nio/file/Path;Lnet/minecraft/class_8580;Ljava/util/function/BiConsumer;)V method_45271 forEachProfile + p 2 callback + p 0 path + p 1 symlinkFinder + m (Ljava/nio/file/Path;)Ljava/lang/String; method_45273 getFileName + p 0 path +c net/minecraft/class_3279$class_8620 net/minecraft/resource/FileResourcePackProvider$PackOpenerImpl + m (Ljava/nio/file/Path;)Lnet/minecraft/class_3288$class_7680; method_52437 openDirectory + m (Ljava/nio/file/Path;)Lnet/minecraft/class_3288$class_7680; method_52436 openZip +c net/minecraft/class_3275 net/minecraft/world/gen/placementmodifier/NoiseBasedCountPlacementModifier + f D field_14205 noiseOffset + f I field_14208 noiseToCountRatio + f D field_14206 noiseFactor + f Lcom/mojang/serialization/MapCodec; field_24987 MODIFIER_CODEC + m (IDD)Lnet/minecraft/class_3275; method_39641 of + p 0 noiseToCountRatio + p 1 noiseFactor + p 3 noiseOffset + m (Lnet/minecraft/class_3275;)Ljava/lang/Integer; method_28943 method_28943 + p 0 placementModifier + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28939 method_28939 + p 0 instance + m (IDD)V + p 4 noiseOffset + p 1 noiseToCountRatio + p 2 noiseFactor + m (Lnet/minecraft/class_3275;)Ljava/lang/Double; method_28941 method_28941 + p 0 placementModifier + m (Lnet/minecraft/class_3275;)Ljava/lang/Double; method_28942 method_28942 + p 0 placementModifier +c net/minecraft/class_551 net/minecraft/client/render/entity/model/ArmorStandEntityModel + c Represents the model of an {@linkplain ArmorStandEntity}. + f Ljava/lang/String; field_32447 SHOULDER_STICK + f Ljava/lang/String; field_32446 LEFT_BODY_STICK + f Ljava/lang/String; field_32445 RIGHT_BODY_STICK + f Lnet/minecraft/class_630; field_3313 shoulderStick + f Lnet/minecraft/class_630; field_3312 basePlate + f Ljava/lang/String; field_32448 BASE_PLATE + f Lnet/minecraft/class_630; field_27391 rightBodyStick + f Lnet/minecraft/class_630; field_27392 leftBodyStick + m (Lnet/minecraft/class_9998;Lnet/minecraft/class_1306;Lnet/minecraft/class_4587;)V method_72832 setArmAngle + m (Lnet/minecraft/class_9998;)V method_17066 setAngles + m ()Lnet/minecraft/class_5607; method_31979 getTexturedModelData +c net/minecraft/class_3240 net/minecraft/server/network/LocalServerHandshakeNetworkHandler + c A server handshake network handler that exclusively handles local\nconnections.\n\n

A local connection is one between a Minecraft client and the\nIntegrated Server it is running.\n\n@see net.minecraft.server.ServerNetworkIo#bindLocal() + f Lnet/minecraft/server/MinecraftServer; field_14104 server + f Lnet/minecraft/class_2535; field_14103 connection + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_2535;)V + p 1 server + p 2 connection +c net/minecraft/class_4571 net/minecraft/loot/condition/TimeCheckLootCondition + f Lcom/mojang/serialization/MapCodec; field_45876 CODEC + f Ljava/util/Optional; comp_1885 period + f Lnet/minecraft/class_42; comp_1886 value + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53427 method_53427 + p 0 instance + m (Ljava/util/Optional;Lnet/minecraft/class_42;)V + p 2 value + p 1 period + m (Lnet/minecraft/class_42;)Lnet/minecraft/class_4571$class_6164; method_35559 create + p 0 value + m (Lnet/minecraft/class_47;)Z method_22587 test + m ()Lnet/minecraft/class_42; comp_1886 value + m ()Ljava/util/Optional; comp_1885 period +c net/minecraft/class_4571$class_6164 net/minecraft/loot/condition/TimeCheckLootCondition$Builder + f Lnet/minecraft/class_42; field_31872 value + f Ljava/util/Optional; field_31871 period + m (J)Lnet/minecraft/class_4571$class_6164; method_35560 period + p 1 period + m (Lnet/minecraft/class_42;)V + p 1 value + m ()Lnet/minecraft/class_4571; method_35561 build +c net/minecraft/class_3246 net/minecraft/server/network/ServerHandshakeNetworkHandler + f Lnet/minecraft/class_2535; field_14153 connection + f Lnet/minecraft/server/MinecraftServer; field_14154 server + f Lnet/minecraft/class_2561; field_24457 IGNORING_STATUS_REQUEST_MESSAGE + m (Lnet/minecraft/class_2889;Z)V method_56048 login + p 1 packet + p 2 transfer + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_2535;)V + p 1 server + p 2 connection +c net/minecraft/class_3248 net/minecraft/server/network/ServerLoginNetworkHandler + c The server login network handler.\n\n

It listens to packets on the netty event loop and is ticked on the\nserver thread simultaneously.\n\n@implSpec The vanilla implementation is created by a handshake network\nhandler. It first receives a hello packet from the client. If it is in\n{@linkplain MinecraftServer#isOnlineMode() online mode}, it goes through\nan additional authentication process. Then it optionally sends a network\ncompression packet. Finally, when it can accept the player (no player\nUUID conflicts), it will accept the player by sending a login success\npacket and then transitions the connection's packet listener to a {@link\nServerPlayNetworkHandler}. + f [B field_14167 nonce + f I field_29779 TIMEOUT_TICKS + f Lcom/mojang/authlib/GameProfile; field_45029 profile + f Z field_48275 transferred + f I field_14156 loginTicks + f Ljava/util/concurrent/atomic/AtomicInteger; field_14157 NEXT_AUTHENTICATOR_THREAD_ID + f Ljava/lang/String; field_14165 serverId + f Lnet/minecraft/class_3248$class_3249; field_14163 state + f Lnet/minecraft/class_12085; field_63176 activityNotifier + f Lnet/minecraft/server/MinecraftServer; field_14162 server + f Lnet/minecraft/class_2535; field_14158 connection + f Lorg/slf4j/Logger; field_14166 LOGGER + f Ljava/lang/String; field_45028 profileName + m (Lcom/mojang/authlib/GameProfile;)V method_52417 startVerify + p 1 profile + m (Lcom/mojang/authlib/GameProfile;)V method_52419 tickVerify + p 1 profile + m (Lcom/mojang/authlib/GameProfile;)V method_52420 sendSuccessPacket + p 1 profile + m (Lcom/mojang/authlib/GameProfile;)Z method_52416 hasPlayerWithId + p 1 profile + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_2535;Z)V + p 2 connection + p 3 transferred + p 1 server + m ()Ljava/lang/String; method_14383 getConnectionInfo + m (Lnet/minecraft/class_2561;)V method_14380 disconnect + p 1 reason +c net/minecraft/class_3248$class_3249 net/minecraft/server/network/ServerLoginNetworkHandler$State + f Lnet/minecraft/class_3248$class_3249; field_45032 PROTOCOL_SWITCHING + f Lnet/minecraft/class_3248$class_3249; field_45031 WAITING_FOR_DUPE_DISCONNECT + f Lnet/minecraft/class_3248$class_3249; field_45030 VERIFYING + f Lnet/minecraft/class_3248$class_3249; field_14175 KEY + f Lnet/minecraft/class_3248$class_3249; field_14172 ACCEPTED + f Lnet/minecraft/class_3248$class_3249; field_14173 NEGOTIATING + f Lnet/minecraft/class_3248$class_3249; field_14170 HELLO + f Lnet/minecraft/class_3248$class_3249; field_14169 AUTHENTICATING +c net/minecraft/class_3248$1 net/minecraft/server/network/ServerLoginNetworkHandler$1 + m ()Ljava/net/InetAddress; method_14386 getClientAddress +c net/minecraft/class_3242 net/minecraft/server/ServerNetworkIo + f Lnet/minecraft/server/MinecraftServer; field_14109 server + f Ljava/util/List; field_14107 connections + f Ljava/util/List; field_14106 channels + f Z field_14108 active + f Lorg/slf4j/Logger; field_14110 LOGGER + m ()Ljava/util/List; method_37909 getConnections + m ()V method_14357 tick + m ()V method_14356 stop + m (Ljava/net/InetAddress;I)V method_14354 bind + p 1 address + p 2 port + m ()Lnet/minecraft/server/MinecraftServer; method_14351 getServer + m ()Ljava/net/SocketAddress; method_14353 bindLocal + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server +c net/minecraft/class_3242$class_5980 net/minecraft/server/ServerNetworkIo$DelayingChannelInboundHandler + c A channel in-bound handler that only forwards received messages to the next\nchannel in-bound handler in the channel pipeline after a random delay between\n{@link #baseDelay} and {@code baseDelay + }{@link #extraDelay} milliseconds.\n\n@apiNote This may be used to simulate a laggy network environment. + f I field_29773 baseDelay + f I field_29774 extraDelay + f Lio/netty/util/Timer; field_29772 TIMER + f Ljava/util/List; field_29775 packets + m (II)V + p 2 extraDelay + p 1 baseDelay + m (Lio/netty/util/Timeout;)V method_34881 forward + p 1 timeout + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V channelRead channelRead + p 2 msg + p 1 ctx + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V method_34880 delay + p 1 ctx + p 2 msg +c net/minecraft/class_3242$class_5980$class_5981 net/minecraft/server/ServerNetworkIo$DelayingChannelInboundHandler$Packet + f Ljava/lang/Object; field_29777 message + f Lio/netty/channel/ChannelHandlerContext; field_29776 context + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V + p 1 context + p 2 message +c net/minecraft/class_3242$1 net/minecraft/server/ServerNetworkIo$1 + m (Lio/netty/channel/Channel;)V initChannel initChannel + p 1 channel +c net/minecraft/class_3242$2 net/minecraft/server/ServerNetworkIo$2 + m (Lio/netty/channel/Channel;)V initChannel initChannel + p 1 channel +c net/minecraft/class_3244 net/minecraft/server/network/ServerPlayNetworkHandler + f I field_14139 lastTeleportCheckTicks + f D field_14143 lastTickRiddenX + f Lnet/minecraft/class_2561; field_39990 CHAT_VALIDATION_FAILED_TEXT + f I field_58079 globalChatMessageIndex + f D field_14120 updatedRiddenZ + f D field_14144 updatedZ + f D field_14128 lastTickZ + f Lnet/minecraft/class_7638; field_39825 acknowledgmentValidator + f Z field_14131 floating + f I field_14117 movePacketsCount + f D field_14145 updatedX + f I field_64602 remainingLoadingTicks + f Lorg/slf4j/Logger; field_14121 LOGGER + f Lnet/minecraft/class_2561; field_50089 INVALID_COMMAND_SIGNATURE_TEXT + f Lnet/minecraft/class_3222; field_14140 player + f Lnet/minecraft/class_7822; field_40720 session + f I field_39989 MAX_PENDING_ACKNOWLEDGMENTS + f I field_14118 ticks + f D field_14146 lastTickY + f D field_14122 updatedRiddenX + f Z field_14129 vehicleFloating + f Lnet/minecraft/class_7619; field_39826 messageChainTaskQueue + f Z field_64601 dead + f Lnet/minecraft/class_1297; field_14147 topmostRiddenEntity + f I field_14123 requestedTeleportId + f Lnet/minecraft/class_7610$class_7611; field_39805 messageUnpacker + f I field_14135 lastTickMovePacketsCount + f Lnet/minecraft/class_10222; field_54291 messageCooldown + f Z field_45025 requestedReconfiguration + f D field_14124 lastTickRiddenY + f Lnet/minecraft/class_8608; field_45026 chunkDataSender + f I field_37281 DEFAULT_SEQUENCE + f I field_37282 sequence + f Lnet/minecraft/class_243; field_14119 requestedTeleportPos + f D field_14141 updatedRiddenY + f I field_14137 vehicleFloatingTicks + f Z field_52364 movedThisTick + f D field_14126 updatedY + f Lnet/minecraft/class_7561; field_39987 signatureStorage + f D field_14142 lastTickRiddenZ + f Lnet/minecraft/class_10222; field_54292 creativeItemDropCooldown + f D field_14130 lastTickX + f I field_14138 floatingTicks + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_1297;Lnet/minecraft/class_238;DDD)Z method_20630 isEntityNotCollidingWithBlocks + p 8 newZ + p 6 newY + p 3 box + p 4 newX + p 1 world + p 2 entity + m (Ljava/util/List;I)V method_31278 updateBookContent + p 2 slotId + p 1 pages + m ()Z method_76685 canInteractWithGame + m (Lnet/minecraft/class_7448;Lnet/minecraft/class_2168;)Lnet/minecraft/class_2168; method_45002 method_45002 + p 2 source + m (Lnet/minecraft/class_7471;Lnet/minecraft/class_2556$class_7602;)V method_45170 sendChatMessage + p 2 params + p 1 message + m (Ljava/lang/String;ZLjava/lang/Runnable;)V method_44337 validateMessage + c {@return the validated acknowledgment if the message is valid, or an empty optional\nif it is not}\n\n

This disconnects the player if the message arrives in\nimproper order or if chat is disabled. + p 1 message + m ()V method_76686 tickLoading + m (Lnet/minecraft/class_5837;)Lnet/minecraft/class_9262; method_57142 toRawFilteredPair + p 1 message + m (Lnet/minecraft/class_7610$class_7825;)V method_45171 handleMessageChainException + p 1 exception + m (Lnet/minecraft/class_7635$class_7636;)Ljava/util/Optional; method_45169 validateAcknowledgment + p 1 acknowledgment + m (Lnet/minecraft/class_9449;Lnet/minecraft/class_7635;)V method_45010 handleCommandExecution + p 1 packet + p 2 lastSeenMessages + m (Lnet/minecraft/class_10182;Ljava/util/Set;)V method_14360 requestTeleport + p 1 pos + p 2 flags + m (Lnet/minecraft/class_2805;Lcom/mojang/brigadier/suggestion/Suggestions;)V method_14365 method_14365 + p 2 suggestions + m (Lnet/minecraft/class_9449;Lnet/minecraft/class_7644;Lnet/minecraft/class_7635;)Ljava/util/Map; method_45006 collectArgumentMessages + c {@return a map of argument name and value as signed messages} + p 3 lastSeenMessages + p 2 arguments + p 1 packet + m (Lnet/minecraft/class_1297;)I method_56922 getMaxAllowedFloatingTicks + p 1 vehicle + m (Ljava/lang/Object;)Ljava/lang/Object; method_31284 method_31284 + p 1 filtered + m (DDDFF)Z method_14371 isMovementInvalid + c {@return whether this movement is invalid}\n\n@implNote This method is used to determine\nwhether players sending {@linkplain PlayerMoveC2SPacket player}\nand {@linkplain VehicleMoveC2SPacket vehicle} movement packets\nto the server should be kicked. + p 0 x + p 2 y + p 4 z + p 7 pitch + p 6 yaw + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2556$class_7602;)V method_45168 sendProfilelessChatMessage + p 1 message + p 2 params + m ()V method_76687 markAsDead + c {@return marks the player as dead}\n\n

This is not the correct method for killing the player. Use methods in\n{@link ServerPlayerEntity}, like {@link ServerPlayerEntity#kill}. + m (Ljava/util/List;)Ljava/util/Map; method_58591 toUnsignedSignatures + p 1 arguments + m (Lnet/minecraft/class_7471;)V method_44155 handleDecoratedMessage + p 1 message + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; method_31279 filterTexts + p 1 texts + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; method_31277 filterText + p 1 text + m ()V method_43669 checkForSpam + m (Z)Z method_64962 shouldCheckMovement + p 1 elytra + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)V method_65099 copyBlockDataToStack + p 0 state + p 3 stack + p 1 world + p 2 pos + m ()V method_76688 markLoaded + m (Lnet/minecraft/class_2797;Lnet/minecraft/class_7635;)Lnet/minecraft/class_7471; method_45011 getSignedMessage + p 1 packet + p 2 lastSeenMessages + m (Ljava/lang/String;)V method_58590 executeCommand + p 1 command + m (Ljava/lang/String;)Z method_43508 hasIllegalCharacter + c {@return whether {@code message} contains an illegal character}\n\n@see net.minecraft.util.StringHelper#isValidChar(char) + p 0 message + m ()V method_14372 syncWithPlayerPosition + m (Lnet/minecraft/class_7822;)V method_46365 setSession + p 1 session + m (Lnet/minecraft/class_1297;)Z method_29780 isEntityOnAir + p 1 entity + m ()V method_76689 markRespawned + m (ILjava/util/List;)V method_31283 method_31283 + p 2 texts + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_2535;Lnet/minecraft/class_3222;Lnet/minecraft/class_8792;)V + p 1 server + p 2 connection + p 3 player + p 4 clientData + m ()Z method_73086 tickMovement + c Ticks player position updating.\n\n@return {@code true} if the player is kicked for illegal movement + m (Lnet/minecraft/class_2877;Ljava/util/List;)V method_31282 onSignUpdate + p 1 packet + p 2 signText + m (Lnet/minecraft/class_5837;Ljava/util/List;I)V method_31276 addBook + p 1 title + p 3 slotId + p 2 pages + m ()Ljava/net/SocketAddress; method_48107 getConnectionAddress + m (Lnet/minecraft/class_7471;Lnet/minecraft/class_2561;Lnet/minecraft/class_5837;)V method_45064 method_45064 + p 3 filtered + m ()V method_75005 resetFloatingTicks + m (Ljava/lang/String;Ljava/util/List;Ljava/util/List;)Lnet/minecraft/class_7610$class_7825; method_58589 createInvalidCommandSignatureException + p 2 expected + p 0 command + p 1 actual + m ()V method_52415 cleanUp + m (Lnet/minecraft/class_5837;)Lnet/minecraft/class_9262; method_33799 method_33799 + p 1 page + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1799;)Z method_27913 canPlace + c Checks if a player can place a block or fluid from a bucket.\n\n

For this to return true, the player must not be actively cooling down. + p 0 player + p 1 stack + m (ILjava/util/List;)V method_31274 method_31274 + p 2 texts + m (Lnet/minecraft/class_2877;Ljava/util/List;)V method_31285 method_31285 + p 2 texts + m ()Z method_60947 handlePendingTeleport + m (D)D method_34882 clampHorizontal + p 0 d + m (I)V method_41255 updateSequence + p 1 sequence + m (Lnet/minecraft/class_1799;)V method_65098 onPickItem + p 1 stack + m ()V method_52414 reconfigure + m (DDDFF)V method_14363 requestTeleport + p 5 z + p 8 pitch + p 7 yaw + p 1 x + p 3 y + m (Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/util/concurrent/CompletableFuture; method_31275 filterText + p 2 filterer + p 1 text + m (Ljava/lang/String;)Lcom/mojang/brigadier/ParseResults; method_45003 parse + c {@return the result of parsing {@code command}} + p 1 command + c the command to parse (without the leading slash) + m (Lnet/minecraft/class_243;)V method_61290 handleMovement + p 1 movement + m (D)D method_34883 clampVertical + p 0 d +c net/minecraft/class_3244$class_5860 net/minecraft/server/network/ServerPlayNetworkHandler$Interaction + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; run run + p 3 hand + p 2 entity + p 1 player +c net/minecraft/class_3244$1 net/minecraft/server/network/ServerPlayNetworkHandler$1 + m (Lnet/minecraft/class_243;Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_33898 method_33898 + p 3 handx + p 2 entity + p 1 player + m (Lnet/minecraft/class_1268;Lnet/minecraft/class_3244$class_5860;)V method_33897 processInteract + p 2 action + p 1 hand +c net/minecraft/class_12296 net/minecraft/client/render/entity/CamelHuskEntityRenderer + f Lnet/minecraft/class_2960; field_64232 TEXTURE + m (Lnet/minecraft/class_10007;)Lnet/minecraft/class_1799; method_76300 method_76300 + p 0 state + m (Lnet/minecraft/class_10007;)Lnet/minecraft/class_2960; method_45801 getTexture +c net/minecraft/class_12293 net/minecraft/client/gui/widget/SquareWidgetEntry + m (III)Z method_76262 isInside + p 1 x + p 3 sideLength + p 2 y + m (III)Z method_76263 isLeft + p 3 sideLength + p 2 y + p 1 x + m (III)Z method_76264 isRight + p 3 sideLength + p 2 y + p 1 x + m (III)Z method_76265 isBottomRight + p 2 y + p 1 x + p 3 sideLength + m (III)Z method_76266 isTopRight + p 1 x + p 3 sideLength + p 2 y + m (III)Z method_76267 isBottomLeft + p 2 y + p 1 x + p 3 sideLength + m (III)Z method_76268 isTopLeft + p 1 x + p 3 sideLength + p 2 y +c net/minecraft/class_12297 net/minecraft/client/render/entity/ParchedEntityRenderer + f Lnet/minecraft/class_2960; field_64233 TEXTURE + m (Lnet/minecraft/class_10066;)Lnet/minecraft/class_2960; method_76303 getTexture + m ()Lnet/minecraft/class_10066; method_76302 createRenderState +c net/minecraft/class_4580 net/minecraft/command/StorageDataObject + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; field_20856 SUGGESTION_PROVIDER + f Lnet/minecraft/class_2960; field_20858 id + f Ljava/util/function/Function; field_20855 TYPE_FACTORY + f Lnet/minecraft/class_4565; field_20857 storage + m (Lnet/minecraft/class_4565;Lnet/minecraft/class_2960;)V + p 1 storage + p 2 id + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_4565; method_22842 of + p 0 context + m (Ljava/lang/String;)Lnet/minecraft/class_3164$class_3167; method_22841 method_22841 + p 0 argumentName + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_22840 method_22840 + p 0 context + p 1 builder +c net/minecraft/class_4580$1 net/minecraft/command/StorageDataObject$1 + f Ljava/lang/String; field_20859 argumentName +c net/minecraft/class_3251 net/minecraft/server/network/ServerQueryNetworkHandler + f Lnet/minecraft/class_2561; field_14179 REQUEST_HANDLED + f Lnet/minecraft/class_2926; field_42544 metadata + f Lnet/minecraft/class_2535; field_14178 connection + f Z field_14177 responseSent + m (Lnet/minecraft/class_2926;Lnet/minecraft/class_2535;)V + p 2 connection + p 1 metadata +c net/minecraft/class_4583 net/minecraft/client/render/OverlayVertexConsumer + f Lorg/joml/Matrix3f; field_21054 inverseNormalMatrix + f F field_20870 x + f F field_20871 y + f F field_20872 z + f F field_41091 textureScale + f Lorg/joml/Vector3f; field_52096 normal + f Lnet/minecraft/class_4588; field_20866 delegate + f Lorg/joml/Matrix4f; field_21053 inverseTextureMatrix + f Lorg/joml/Vector3f; field_52097 pos + m (Lnet/minecraft/class_4588;Lnet/minecraft/class_4587$class_4665;F)V + p 3 textureScale + p 2 matrix + p 1 delegate +c net/minecraft/class_3258 net/minecraft/resource/ZipResourcePack + f Ljava/lang/String; field_45039 overlay + f Lorg/slf4j/Logger; field_39096 LOGGER + f Lnet/minecraft/class_3258$class_8616; field_45038 zipFile + m (Ljava/lang/String;)Ljava/lang/String; method_52422 appendOverlayPrefix + p 1 path + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_52423 getNamespace + p 0 prefix + p 1 entryName + m (Lnet/minecraft/class_9224;Lnet/minecraft/class_3258$class_8616;Ljava/lang/String;)V + p 3 overlay + p 2 zipFile + p 1 info + m (Lnet/minecraft/class_3264;Lnet/minecraft/class_2960;)Ljava/lang/String; method_45177 toPath + p 0 type + p 1 id + m (Ljava/lang/String;)Lnet/minecraft/class_7367; method_14391 openFile + p 1 path +c net/minecraft/class_3258$class_8616 net/minecraft/resource/ZipResourcePack$ZipFileWrapper + f Z field_45044 closed + f Ljava/io/File; field_45042 file + f Ljava/util/zip/ZipFile; field_45043 zip + m (Ljava/io/File;)V + p 1 file + m ()Ljava/util/zip/ZipFile; method_52426 open +c net/minecraft/class_3258$class_8615 net/minecraft/resource/ZipResourcePack$ZipBackedFactory + f Ljava/io/File; field_45040 file + m (Ljava/io/File;)V + p 1 file + m (Ljava/nio/file/Path;)V + p 1 path +c net/minecraft/class_4588 net/minecraft/client/render/VertexConsumer + c An interface that consumes vertices in a certain {@linkplain\nVertexFormat vertex format}.\n\n

The vertex elements must be specified in the same order as defined in\nthe format the vertices being consumed are in. + m (Lorg/joml/Vector3fc;)Lnet/minecraft/class_4588; method_60830 vertex + p 1 vec + m (FFF)Lnet/minecraft/class_4588; method_22912 vertex + c Specifies the {@linkplain VertexFormats#POSITION_ELEMENT\nposition element} of the current vertex.\n\n

This is typically the first element in a vertex, hence the name.\n\n@throws IllegalStateException if this consumer is not currently\naccepting a position element.\n\n@return this consumer, for chaining + p 2 y + p 1 x + p 3 z + m (FFF)Lnet/minecraft/class_4588; method_22914 normal + c Specifies the {@linkplain VertexFormats#NORMAL_ELEMENT\nnormal element} of the current vertex.\n\n@throws IllegalStateException if this consumer is not currently\naccepting a normal element.\n\n@return this consumer, for chaining + p 3 z + p 2 y + p 1 x + m (I)Lnet/minecraft/class_4588; method_39415 color + c Specifies the {@linkplain VertexFormats#COLOR_ELEMENT\ncolor element} of the current vertex.\n\n@throws IllegalStateException if this consumer is not currently\naccepting a color element or if a color has been set in {@link\n#fixedColor}.\n\n@return this consumer, for chaining + p 1 argb + m (F)Lnet/minecraft/class_4588; method_75298 lineWidth + p 1 width + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_777;[FFFFF[II)V method_22920 quad + c Specifies the vertex elements from {@code quad} and starts consuming\nthe next vertex.\n\n@throws IllegalStateException if a color has been set in {@link\n#fixedColor}. + p 5 green + p 4 red + p 7 alpha + p 6 blue + p 1 matrixEntry + p 3 brightnesses + p 2 quad + p 9 overlay + p 8 lights + m (II)Lnet/minecraft/class_4588; method_60796 overlay + c Specifies the {@linkplain VertexFormats#OVERLAY_ELEMENT\noverlay element} of the current vertex.\n\n@throws IllegalStateException if this consumer is not currently\naccepting an overlay element.\n\n@return this consumer, for chaining + p 1 u + p 2 v + m (Lnet/minecraft/class_4587$class_4665;Lorg/joml/Vector3f;)Lnet/minecraft/class_4588; method_61959 normal + p 2 vec + p 1 matrix + m (I)Lnet/minecraft/class_4588; method_22922 overlay + c Specifies the {@linkplain VertexFormats#OVERLAY_ELEMENT\noverlay element} of the current vertex.\n\n@throws IllegalStateException if this consumer is not currently\naccepting an overlay element.\n\n@return this consumer, for chaining + p 1 uv + m (Lnet/minecraft/class_4587$class_4665;FFF)Lnet/minecraft/class_4588; method_56824 vertex + p 1 matrix + p 3 y + p 2 x + p 4 z + m (Lnet/minecraft/class_4587$class_4665;FFF)Lnet/minecraft/class_4588; method_60831 normal + p 4 z + p 3 y + p 2 x + p 1 matrix + m (Lorg/joml/Matrix3x2fc;FF)Lnet/minecraft/class_4588; method_70815 vertex + p 3 y + p 2 x + p 1 matrix + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_777;FFFFII)V method_22919 quad + c Specifies the vertex elements from {@code quad} and starts consuming\nthe next vertex.\n\n@throws IllegalStateException if a color has been set in {@link\n#fixedColor}. + p 4 green + p 5 blue + p 6 alpha + p 7 light + p 1 matrixEntry + p 2 quad + p 3 red + p 8 overlay + m (FF)Lnet/minecraft/class_4588; method_22913 texture + c Specifies the {@linkplain VertexFormats#TEXTURE_ELEMENT\ntexture element} of the current vertex.\n\n@throws IllegalStateException if this consumer is not currently\naccepting a texture element.\n\n@return this consumer, for chaining + p 1 u + p 2 v + m (I)Lnet/minecraft/class_4588; method_60803 light + c Specifies the {@linkplain VertexFormats#LIGHT_ELEMENT\nlight element} of the current vertex.\n\n@throws IllegalStateException if this consumer is not currently\naccepting a light element.\n\n@return this consumer, for chaining + p 1 uv + m (II)Lnet/minecraft/class_4588; method_22921 light + c Specifies the {@linkplain VertexFormats#LIGHT_ELEMENT\nlight element} of the current vertex.\n\n@throws IllegalStateException if this consumer is not currently\naccepting a light element.\n\n@return this consumer, for chaining + p 2 v + p 1 u + m (Lorg/joml/Matrix4fc;FFF)Lnet/minecraft/class_4588; method_22918 vertex + c Specifies the {@linkplain VertexFormats#POSITION_ELEMENT\nposition element} of the current vertex.\n\n@throws IllegalStateException if this consumer is not currently\naccepting a position element.\n\n@return this consumer, for chaining + p 4 z + p 1 matrix + p 2 x + p 3 y + m (IIII)Lnet/minecraft/class_4588; method_1336 color + c Specifies the {@linkplain VertexFormats#COLOR_ELEMENT\ncolor element} of the current vertex.\n\n@throws IllegalStateException if this consumer is not currently\naccepting a color element or if a color has been set in {@link\n#fixedColor}.\n\n@return this consumer, for chaining + p 3 blue + p 2 green + p 4 alpha + p 1 red + m (Lnet/minecraft/class_4587$class_4665;Lorg/joml/Vector3f;)Lnet/minecraft/class_4588; method_61032 vertex + p 1 matrix + p 2 vec + m (FFFF)Lnet/minecraft/class_4588; method_22915 color + c Specifies the {@linkplain VertexFormats#COLOR_ELEMENT\ncolor element} of the current vertex.\n\n@throws IllegalStateException if this consumer is not currently\naccepting a color element or if a color has been set in {@link\n#fixedColor}.\n\n@return this consumer, for chaining + p 1 red + p 3 blue + p 2 green + p 4 alpha + m (FFFIFFIIFFF)V method_23919 vertex + c Specifies the\n{@linkplain VertexFormats#POSITION_ELEMENT position},\n{@linkplain VertexFormats#COLOR_ELEMENT color},\n{@linkplain VertexFormats#TEXTURE_ELEMENT texture},\n{@linkplain VertexFormats#OVERLAY_ELEMENT overlay},\n{@linkplain VertexFormats#LIGHT_ELEMENT light}, and\n{@linkplain VertexFormats#NORMAL_ELEMENT normal} elements of the\ncurrent vertex and starts consuming the next vertex.\n\n@throws IllegalStateException if a color has been set in {@link\n#fixedColor}. + p 3 z + p 4 color + p 1 x + p 2 y + p 11 normalZ + p 9 normalX + p 10 normalY + p 7 overlay + p 8 light + p 5 u + p 6 v +c net/minecraft/class_3259 net/minecraft/resource/DirectoryResourcePack + f Ljava/nio/file/Path; field_40001 root + f Lorg/slf4j/Logger; field_14187 LOGGER + f Lcom/google/common/base/Joiner; field_40000 SEPARATOR_JOINER + m (Ljava/nio/file/Path;)Z method_14402 isValidPath + p 0 path + m (Ljava/nio/file/Path;Ljava/util/List;)Lnet/minecraft/class_7367; method_45186 method_45186 + p 1 segments + m (Lnet/minecraft/class_2960;Ljava/nio/file/Path;)Lnet/minecraft/class_7367; method_45180 open + p 1 path + p 0 id + m (Lnet/minecraft/class_9224;Ljava/nio/file/Path;)V + p 1 info + p 2 root + m (Ljava/lang/String;Ljava/nio/file/Path;Ljava/util/List;Lnet/minecraft/class_3262$class_7664;)V method_45183 findResources + p 2 prefixSegments + p 3 consumer + p 0 namespace + p 1 path + m (Ljava/nio/file/Path;)Lnet/minecraft/class_7367; method_45187 open + p 0 path + m (Ljava/nio/file/Path;Ljava/lang/String;Lnet/minecraft/class_3262$class_7664;Ljava/nio/file/Path;)V method_45184 method_45184 + p 3 foundPath + m (Lnet/minecraft/class_3264;Ljava/lang/String;Lnet/minecraft/class_3262$class_7664;Ljava/util/List;)V method_45181 method_45181 + p 4 prefixSegments + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Z method_72082 isRegularFile + p 0 path + p 1 fileAttributes +c net/minecraft/class_3259$class_8619 net/minecraft/resource/DirectoryResourcePack$DirectoryBackedFactory + f Ljava/nio/file/Path; field_45049 path + m (Ljava/nio/file/Path;)V + p 1 path +c net/minecraft/class_12280 net/minecraft/world/rule/ServerGameRules + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; field_64177 ruleValues + f Lcom/mojang/serialization/Codec; field_64176 CODEC + m ()I method_76175 size + m (Lnet/minecraft/class_12279;)Z method_76178 method_76178 + p 0 rule + m (Ljava/util/Map;)Lnet/minecraft/class_12280; method_76170 of + p 0 ruleValues + m (Lnet/minecraft/class_12280;Ljava/util/function/Predicate;)V method_76168 copyFrom + p 2 predicate + p 1 rules + m (Lit/unimi/dsi/fastutil/objects/Reference2ObjectOpenHashMap;Lnet/minecraft/class_12279;)V method_76169 method_76169 + p 1 gameRule + m (Ljava/util/stream/Stream;)Lnet/minecraft/class_12280; method_76171 ofDefault + p 0 rules + m ()Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; method_76177 getRuleValues + m (Lnet/minecraft/class_12279;)Ljava/lang/Object; method_76176 remove + p 1 rule + m (Lnet/minecraft/class_12279;Ljava/lang/Object;)V method_76165 put + p 2 value + p 1 rule + m (Lnet/minecraft/class_12279;)Ljava/lang/Object; method_76173 get + p 1 rule + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_12280;Lnet/minecraft/class_12279;Lnet/minecraft/class_12280;)V method_76167 setFrom + p 1 rule + p 0 oldRules + p 2 newRules + m (Lnet/minecraft/class_12279;)Z method_76164 contains + p 1 rule + m ()Ljava/util/Set; method_76172 keySet + m ()Lnet/minecraft/class_12280; method_76163 of + m (Lnet/minecraft/class_12280;)Lnet/minecraft/class_12280; method_76166 copyOf + p 0 rules + m (Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;)V + p 1 ruleValues + m (Lnet/minecraft/class_12280;)Lnet/minecraft/class_12280; method_76174 withOverride + p 1 override +c net/minecraft/class_12280$class_12281 net/minecraft/world/rule/ServerGameRules$Builder + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; field_64178 ruleValues + m ()Lnet/minecraft/class_12280; method_76179 build + m (Lnet/minecraft/class_12279;Ljava/lang/Object;)Lnet/minecraft/class_12280$class_12281; method_76180 put + p 2 value + p 1 rule +c net/minecraft/class_3255 net/minecraft/resource/AbstractFileResourcePack + f Lorg/slf4j/Logger; field_14182 LOGGER + f Lnet/minecraft/class_9224; field_49031 info + m (Lnet/minecraft/class_7677;Ljava/io/InputStream;Lnet/minecraft/class_9224;)Ljava/lang/Object; method_14392 parseMetadata + p 1 inputStream + m (Lnet/minecraft/class_9224;)V + p 1 info +c net/minecraft/class_4587 net/minecraft/client/util/math/MatrixStack + c A stack of transformation matrices used to specify how 3D objects are\n{@linkplain #translate translated}, {@linkplain #scale scaled} or\n{@linkplain #multiply rotated} in 3D space. Each entry consists of a\n{@linkplain Entry#getPositionMatrix position matrix} and its\ncorresponding {@linkplain Entry#getNormalMatrix normal matrix}.\n\n

By putting matrices in a stack, a transformation can be expressed\nrelative to another. You can {@linkplain #push push}, transform,\nrender and {@linkplain #pop pop}, which allows you to restore the\noriginal matrix after rendering.\n\n

An entry of identity matrix is pushed when a stack is created. This\nmeans that a stack is {@linkplain #isEmpty empty} if and only if the\nstack contains exactly one entry. + f Ljava/util/List; field_55849 stack + f I field_55850 stackDepth + m ()V method_22909 pop + c Removes the entry at the top of this stack. + m ()Z method_67795 isEmpty + m (FFF)V method_46416 translate + p 1 x + p 2 y + p 3 z + m (Lorg/joml/Quaternionfc;FFF)V method_49278 multiply + p 4 originZ + p 3 originY + p 2 originX + p 1 quaternion + m ()V method_34426 loadIdentity + c Sets the top entry to be the identity matrix. + m (Lorg/joml/Matrix4fc;)V method_34425 multiplyPositionMatrix + c Multiplies the top position matrix with the given matrix.\n\n

This does not update the normal matrix unlike other transformation\nmethods. + p 1 matrix + m (FFF)V method_22905 scale + c Applies the scale transformation to the top entry.\n\n@implNote This does not scale the normal matrix correctly when the\nscaling is uniform and the scaling factor is negative. + p 1 x + p 2 y + p 3 z + m ()Lnet/minecraft/class_4587$class_4665; method_23760 peek + c {@return the entry at the top of this stack} + m (DDD)V method_22904 translate + c Applies the translation transformation to the top entry. + p 5 z + p 3 y + p 1 x + m (Lorg/joml/Quaternionfc;)V method_22907 multiply + c Applies the rotation transformation to the top entry. + p 1 quaternion + m (Lnet/minecraft/class_243;)V method_61958 translate + p 1 vec + m ()V method_22903 push + c Pushes a copy of the top entry onto this stack. +c net/minecraft/class_4587$class_4665 net/minecraft/client/util/math/MatrixStack$Entry + f Lorg/joml/Matrix4f; field_21327 positionMatrix + f Z field_48930 canSkipNormalization + f Lorg/joml/Matrix3f; field_21328 normalMatrix + m ()Lorg/joml/Matrix3f; method_23762 getNormalMatrix + c {@return the matrix used to transform normal vectors} + m (Lorg/joml/Quaternionfc;)V method_67798 rotate + p 1 quaternion + m (FFF)Lorg/joml/Matrix4f; method_67796 translate + p 1 x + p 2 y + p 3 z + m ()V method_67801 loadIdentity + m (Lorg/joml/Quaternionfc;FFF)V method_67799 rotateAround + p 2 originX + p 1 quaternion + p 4 originZ + p 3 originY + m ()V method_56823 computeNormal + m (Lorg/joml/Matrix4fc;)V method_67797 multiplyPositionMatrix + p 1 matrix + m (Lorg/joml/Vector3fc;Lorg/joml/Vector3f;)Lorg/joml/Vector3f; method_56821 transformNormal + p 1 vec + p 2 dest + m (Lnet/minecraft/class_4587$class_4665;)V method_66521 copy + p 1 entry + m ()Lnet/minecraft/class_4587$class_4665; method_56822 copy + m (FFF)V method_67800 scale + p 1 x + p 3 z + p 2 y + m ()Lorg/joml/Matrix4f; method_23761 getPositionMatrix + c {@return the matrix used to transform positions} + m (FFFLorg/joml/Vector3f;)Lorg/joml/Vector3f; method_56820 transformNormal + p 4 dest + p 3 z + p 2 y + p 1 x +c net/minecraft/class_12283 net/minecraft/loot/context/LootEntityValueSource + f Lcom/mojang/serialization/Codec; field_64179 ENTITY_OR_BLOCK_ENTITY_CODEC + m (Lnet/minecraft/class_12283$class_12284;)Lnet/minecraft/class_12283$class_12284; method_76209 method_76209 + p 0 builder + m ()Lnet/minecraft/class_169; comp_4920 contextParam + m (Lnet/minecraft/class_12283;)Lnet/minecraft/class_12283; method_76210 cast + p 0 source + m (Lnet/minecraft/class_47;)Ljava/lang/Object; method_76208 get + p 1 context + m (Ljava/util/function/UnaryOperator;)Lcom/mojang/serialization/Codec; method_76211 createCodec + p 0 factory +c net/minecraft/class_12283$class_12284 net/minecraft/loot/context/LootEntityValueSource$Builder + f Lnet/minecraft/class_5699$class_10388; field_64180 ID_MAPPER + m ([Lnet/minecraft/class_3542;Ljava/util/function/Function;)Lnet/minecraft/class_12283$class_12284; method_76219 addEnum + p 2 sourceGetter + p 1 values + m ([Lnet/minecraft/class_3542;)Lnet/minecraft/class_12283$class_12284; method_76218 addEntityReferences + p 1 values + m ()Lcom/mojang/serialization/Codec; method_76212 getCodec + m (Ljava/util/function/Function;Lnet/minecraft/class_47$class_9319;)Lnet/minecraft/class_12283; method_76215 method_76215 + p 1 reference + m (Ljava/util/function/Function;)Lnet/minecraft/class_12283$class_12284; method_76221 forBlockEntities + p 1 sourceFactory + m (Ljava/util/function/Function;Lnet/minecraft/class_47$class_50;)Lnet/minecraft/class_12283; method_76216 method_76216 + p 1 reference + m ([Ljava/lang/Object;Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/class_12283$class_12284; method_76220 addAll + p 3 sourceGetter + p 1 values + p 2 idGetter + m (Ljava/util/function/Function;)Lnet/minecraft/class_12283$class_12284; method_76222 forItemStacks + p 1 sourceFactory + m (Ljava/util/function/Function;)Lnet/minecraft/class_12283$class_12284; method_76214 forEntities + p 1 sourceFactory + m (Ljava/lang/Object;)Lnet/minecraft/class_12283; method_76213 method_76213 + p 0 value + m (Ljava/util/function/Function;Lnet/minecraft/class_47$class_12065;)Lnet/minecraft/class_12283; method_76217 method_76217 + p 1 reference +c net/minecraft/class_12283$class_12285 net/minecraft/loot/context/LootEntityValueSource$ContextComponentBased + m (Ljava/lang/Object;)Ljava/lang/Object; method_74905 get + p 1 contextValue +c net/minecraft/class_12283$class_12286 net/minecraft/loot/context/LootEntityValueSource$ContextBased +c net/minecraft/class_12282 net/minecraft/unused/packageinfo/PackageInfo12282 +c net/minecraft/class_12289 net/minecraft/client/gl/ShaderSourceGetter + m (Lnet/minecraft/class_2960;Lcom/mojang/blaze3d/shaders/ShaderType;)Ljava/lang/String; get get + p 2 type + p 1 id +c net/minecraft/class_12287 net/minecraft/loot/entry/SlotsEntry + f Lnet/minecraft/class_12275; field_64183 slotSource + f Lcom/mojang/serialization/MapCodec; field_64182 CODEC + m (Lnet/minecraft/class_1799;)Z method_76223 method_76223 + p 0 stack + m (Lnet/minecraft/class_12287;)Lnet/minecraft/class_12275; method_76224 method_76224 + p 0 entry + m (Lnet/minecraft/class_12275;IILjava/util/List;Ljava/util/List;)V + p 5 functions + p 4 conditions + p 3 quality + p 2 weight + p 1 slotSource + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76225 method_76225 + p 0 instance +c net/minecraft/class_500 net/minecraft/client/gui/screen/multiplayer/MultiplayerScreen + f I field_41850 FIRST_ROW_BUTTON_WIDTH + f Lorg/slf4j/Logger; field_3044 LOGGER + f Lnet/minecraft/class_437; field_3049 parent + f Lnet/minecraft/class_4185; field_3050 buttonJoin + f Lnet/minecraft/class_4267; field_3043 serverListWidget + f Lnet/minecraft/class_641; field_3040 serverList + f Lnet/minecraft/class_642; field_3051 selectedEntry + f I field_41851 SECOND_ROW_BUTTON_WIDTH + f Lnet/minecraft/class_644; field_3037 serverListPinger + f Lnet/minecraft/class_4185; field_3041 buttonEdit + f Lnet/minecraft/class_8132; field_62178 layout + f Lnet/minecraft/class_4185; field_3047 buttonDelete + f Lnet/minecraft/class_1134$class_1136; field_3046 lanServers + f Lnet/minecraft/class_1134$class_1135; field_3045 lanServerDetector + m ()V method_20121 updateButtonActivationStates + m (Lnet/minecraft/class_4185;)V method_19913 method_19913 + p 1 button + m (Z)V method_20379 addEntry + p 1 confirmedAction + m (Lnet/minecraft/class_4185;)V method_19915 method_19915 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19916 method_19916 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19918 method_19918 + p 1 button + m (Z)V method_20380 directConnect + p 1 confirmedAction + m ()Lnet/minecraft/class_644; method_2538 getServerListPinger + m ()Lnet/minecraft/class_641; method_2529 getServerList + m (Lnet/minecraft/class_437;)V + p 1 parent + m (Lnet/minecraft/class_4185;)V method_19912 method_19912 + p 1 button + m (Z)V method_20378 editEntry + p 1 confirmedAction + m (Lnet/minecraft/class_4185;)V method_19914 method_19914 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19917 method_19917 + p 1 button + m (Z)V method_20377 removeEntry + p 1 confirmedAction + m ()V method_2534 refresh + m (Lnet/minecraft/class_642;)V method_2548 connect + p 1 entry +c net/minecraft/class_4550 net/minecraft/predicate/BlockPredicate + f Lcom/mojang/serialization/Codec; field_45723 CODEC + f Ljava/util/Optional; comp_1733 state + f Lnet/minecraft/class_9139; field_49181 PACKET_CODEC + f Lnet/minecraft/class_10914; comp_3832 components + f Ljava/util/Optional; comp_1732 blocks + f Ljava/util/Optional; comp_1734 nbt + m (Lnet/minecraft/class_2694;)Z method_57147 test + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_22454 test + p 1 world + p 2 pos + m ()Ljava/util/Optional; comp_1733 state + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_10914;)Z method_68677 testComponents + p 1 components + p 0 blockEntity + m ()Z method_57143 hasNbt + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2586;Lnet/minecraft/class_2105;)Z method_57145 testNbt + p 1 blockEntity + p 0 world + p 2 nbtPredicate + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57144 method_57144 + p 0 instance + m (Lnet/minecraft/class_2680;)Z method_57146 testState + p 1 state + m ()Ljava/util/Optional; comp_1734 nbt + m ()Ljava/util/Optional; comp_1732 blocks + m ()Lnet/minecraft/class_10914; comp_3832 components + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_10914;)V + p 1 blocks + p 2 state + p 3 nbt + p 4 components +c net/minecraft/class_4550$class_4710 net/minecraft/predicate/BlockPredicate$Builder + f Ljava/util/Optional; field_21572 blocks + f Lnet/minecraft/class_10914; field_58043 components + f Ljava/util/Optional; field_21575 nbt + f Ljava/util/Optional; field_21574 state + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_6862;)Lnet/minecraft/class_4550$class_4710; method_29233 tag + p 2 tag + p 1 blockRegistry + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_4550$class_4710; method_35042 nbt + p 1 nbt + m (Lnet/minecraft/class_10914;)Lnet/minecraft/class_4550$class_4710; method_68678 components + p 1 components + m (Lnet/minecraft/class_7871;[Lnet/minecraft/class_2248;)Lnet/minecraft/class_4550$class_4710; method_27962 blocks + p 1 blockRegistry + p 2 blocks + m (Lnet/minecraft/class_7871;Ljava/util/Collection;)Lnet/minecraft/class_4550$class_4710; method_37214 blocks + p 2 blocks + p 1 blockRegistry + m ()Lnet/minecraft/class_4550$class_4710; method_23880 create + m (Lnet/minecraft/class_4559$class_4560;)Lnet/minecraft/class_4550$class_4710; method_27963 state + p 1 state + m ()Lnet/minecraft/class_4550; method_23882 build +c net/minecraft/class_3225 net/minecraft/server/network/ServerPlayerInteractionManager + f I field_14000 tickCounter + f I field_20326 startMiningTime + f I field_20330 failedStartMiningTime + f Z field_14003 mining + f Lnet/minecraft/class_2338; field_20327 miningPos + f Lnet/minecraft/class_1934; field_14005 gameMode + f Lnet/minecraft/class_2338; field_20329 failedMiningPos + f Lnet/minecraft/class_1934; field_25715 previousGameMode + f I field_20331 blockBreakingProgress + f Lnet/minecraft/class_3218; field_14007 world + f Z field_20328 failedToMine + f Lorg/slf4j/Logger; field_20325 LOGGER + f Lnet/minecraft/class_3222; field_14008 player + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2846$class_2847;Lnet/minecraft/class_2350;II)V method_14263 processBlockBreakingAction + p 2 action + p 1 pos + p 4 worldHeight + p 3 direction + p 5 sequence + m ()Lnet/minecraft/class_1934; method_30119 getPreviousGameMode + m (Lnet/minecraft/class_3218;)V method_14259 setWorld + p 1 world + m (Lnet/minecraft/class_1934;Lnet/minecraft/class_1934;)V method_14261 setGameMode + p 1 gameMode + p 2 previousGameMode + m (Lnet/minecraft/class_2338;ILjava/lang/String;)V method_21717 finishMining + p 2 sequence + p 3 reason + p 1 pos + m ()Z method_14267 isSurvivalLike + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;I)F method_21716 continueMining + p 1 state + p 2 pos + p 3 failedStartMiningTime + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_14256 interactItem + p 1 player + p 2 world + p 3 stack + p 4 hand + m (Lnet/minecraft/class_1792;)V method_59904 method_59904 + p 1 item + m (Lnet/minecraft/class_2338;ZILjava/lang/String;)V method_41250 onBlockBreakingAction + p 1 pos + p 4 reason + p 2 success + p 3 sequence + m ()Z method_74539 isHoveringOnGround + c {@return whether the player is hovering on the ground without collisions, up to 1m}\n\n

If so, the player stops flying upon switching from spectator mode. + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_1268;Lnet/minecraft/class_3965;)Lnet/minecraft/class_1269; method_14262 interactBlock + p 5 hitResult + p 3 stack + p 4 hand + p 1 player + p 2 world + m ()V method_14264 update + m ()Z method_14268 isCreative + m ()Lnet/minecraft/class_1934; method_14257 getGameMode + m (Lnet/minecraft/class_1934;)Z method_30118 changeGameMode + c Checks if current game mode is different to {@code gameMode}, and change it if so.\n\n@return whether the current game mode has been changed + p 1 gameMode + m (Lnet/minecraft/class_3222;)V + p 1 player + m (Lnet/minecraft/class_2338;)Z method_14266 tryBreakBlock + p 1 pos +c net/minecraft/class_3226 net/minecraft/world/gen/feature/RandomFeatureEntry + f Lcom/mojang/serialization/Codec; field_24864 CODEC + f F field_14011 chance + f Lnet/minecraft/class_6880; field_14013 feature + m (Lnet/minecraft/class_6880;F)V + p 1 feature + p 2 chance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28669 method_28669 + p 0 instance + m (Lnet/minecraft/class_3226;)Lnet/minecraft/class_6880; method_28670 method_28670 + p 0 config + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Z method_14271 generate + p 3 random + p 2 chunkGenerator + p 1 world + p 4 pos + m (Lnet/minecraft/class_3226;)Ljava/lang/Float; method_28668 method_28668 + p 0 config +c net/minecraft/class_5889 net/minecraft/network/packet/s2c/play/WorldBorderInitializeS2CPacket + f D field_29123 centerX + f I field_29128 maxRadius + f J field_29127 sizeLerpTime + f D field_29126 sizeLerpTarget + f D field_29124 centerZ + f I field_29129 warningBlocks + f D field_29125 size + f I field_29130 warningTime + f Lnet/minecraft/class_9139; field_47930 CODEC + m ()I method_34130 getWarningTime + m (Lnet/minecraft/class_2784;)V + p 1 worldBorder + m ()J method_34128 getSizeLerpTime + m ()I method_34131 getWarningBlocks + m ()D method_34127 getSize + m (Lnet/minecraft/class_2602;)V method_34123 apply + m ()D method_34125 getCenterZ + m ()D method_34126 getSizeLerpTarget + m ()D method_34124 getCenterX + m ()I method_34129 getMaxRadius + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_55882 write + p 1 buf +c net/minecraft/class_4558 net/minecraft/advancement/criterion/AbstractCriterion + f Ljava/util/Map; field_20735 progressions + m (Lnet/minecraft/class_2985;)Ljava/util/Set; method_22512 method_22512 + p 0 managerx + m (Lnet/minecraft/class_3222;Ljava/util/function/Predicate;)V method_22510 trigger + p 2 predicate + p 1 player +c net/minecraft/class_4558$class_8788 net/minecraft/advancement/criterion/AbstractCriterion$Conditions + m ()Ljava/util/Optional; comp_2029 player +c net/minecraft/class_3227 net/minecraft/server/world/ServerLightingProvider + f Ljava/util/concurrent/atomic/AtomicBoolean; field_18812 ticking + f I field_17260 taskBatchSize + f Lnet/minecraft/class_10171; field_54050 executor + f Lorg/slf4j/Logger; field_14020 LOGGER + f Lit/unimi/dsi/fastutil/objects/ObjectList; field_17256 pendingTasks + f Lnet/minecraft/class_3898; field_17257 chunkLoadingManager + f Lnet/minecraft/class_10176; field_54049 processor + m (Lnet/minecraft/class_2823;Lnet/minecraft/class_3898;ZLnet/minecraft/class_10176;Lnet/minecraft/class_10171;)V + p 5 executor + p 4 processor + p 3 hasBlockLight + p 2 chunkLoadingManager + p 1 chunkProvider + m (IILnet/minecraft/class_3227$class_3901;Ljava/lang/Runnable;)V method_17308 enqueue + p 1 x + p 3 stage + p 2 z + p 4 task + m (Lnet/minecraft/class_2791;Z)Ljava/util/concurrent/CompletableFuture; method_51285 initializeLight + p 1 chunk + m ()V method_14277 runTasks + m (IILjava/util/function/IntSupplier;Lnet/minecraft/class_3227$class_3901;Ljava/lang/Runnable;)V method_17307 enqueue + p 4 stage + p 5 task + p 2 z + p 3 completedLevelSupplier + p 1 x + m (Lnet/minecraft/class_1923;Ljava/lang/Runnable;)V method_17306 method_17306 + p 2 task + m (Lnet/minecraft/class_1923;Ljava/lang/Runnable;)V method_51287 method_51287 + p 2 task + m ()V method_17303 tick + m (II)Ljava/util/concurrent/CompletableFuture; method_53694 enqueue + p 2 z + p 1 x + m (IILjava/lang/Runnable;)V method_53695 method_53695 + p 3 callback + m (Lnet/minecraft/class_2791;Z)Ljava/util/concurrent/CompletableFuture; method_17310 light + p 1 chunk + p 2 excludeBlocks + m (Lnet/minecraft/class_1923;)V method_20386 updateChunkStatus + p 1 pos +c net/minecraft/class_3227$class_3901 net/minecraft/server/world/ServerLightingProvider$Stage + f Lnet/minecraft/class_3227$class_3901; field_17261 PRE_UPDATE + f Lnet/minecraft/class_3227$class_3901; field_17262 POST_UPDATE +c net/minecraft/class_5888 net/minecraft/network/packet/s2c/play/ClearTitleS2CPacket + f Z field_29122 reset + f Lnet/minecraft/class_9139; field_47912 CODEC + m (Lnet/minecraft/class_2602;)V method_34115 apply + m (Z)V + p 1 reset + m (Lnet/minecraft/class_2540;)V method_55865 write + p 1 buf + m ()Z method_34116 shouldReset + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_4552 net/minecraft/predicate/LightPredicate + f Lcom/mojang/serialization/Codec; field_45757 CODEC + f Lnet/minecraft/class_2096$class_2100; comp_1791 range + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53172 method_53172 + p 0 instance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_22483 test + p 2 pos + p 1 world + m (Lnet/minecraft/class_2096$class_2100;)V + p 1 range + m ()Lnet/minecraft/class_2096$class_2100; comp_1791 range +c net/minecraft/class_4552$class_6087 net/minecraft/predicate/LightPredicate$Builder + f Lnet/minecraft/class_2096$class_2100; field_31078 light + m ()Lnet/minecraft/class_4552$class_6087; method_35271 create + m ()Lnet/minecraft/class_4552; method_35273 build + m (Lnet/minecraft/class_2096$class_2100;)Lnet/minecraft/class_4552$class_6087; method_35272 light + p 1 light +c net/minecraft/class_4551 net/minecraft/predicate/FluidPredicate + f Lcom/mojang/serialization/Codec; field_45753 CODEC + f Ljava/util/Optional; comp_1782 state + f Ljava/util/Optional; comp_2372 fluids + m ()Ljava/util/Optional; comp_1782 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_22475 test + p 1 world + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53156 method_53156 + p 0 instance + m ()Ljava/util/Optional; comp_2372 fluids + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 fluids + p 2 state +c net/minecraft/class_4551$class_6079 net/minecraft/predicate/FluidPredicate$Builder + f Ljava/util/Optional; field_30914 state + f Ljava/util/Optional; field_30913 tag + m (Lnet/minecraft/class_6885;)Lnet/minecraft/class_4551$class_6079; method_35222 tag + p 1 tag + m (Lnet/minecraft/class_4559;)Lnet/minecraft/class_4551$class_6079; method_35223 state + p 1 state + m (Lnet/minecraft/class_3611;)Lnet/minecraft/class_4551$class_6079; method_35224 fluid + p 1 fluid + m ()Lnet/minecraft/class_4551; method_35225 build + m ()Lnet/minecraft/class_4551$class_6079; method_35221 create +c net/minecraft/class_3222 net/minecraft/server/network/ServerPlayerEntity + f Ljava/lang/String; field_54209 ENDER_PEARLS_KEY + f Ljava/lang/String; field_46156 language + f Z field_13964 disconnected + f Lnet/minecraft/class_3225; field_13974 interactionManager + f Lnet/minecraft/class_1712; field_29181 screenHandlerListener + f Lnet/minecraft/class_10185; field_54048 playerInput + f Ljava/util/Set; field_62842 subscribedTypes + f Lnet/minecraft/class_2561; field_56606 SET_SPAWN_TEXT + f I field_13965 lastLevelScore + f I field_13978 syncedExperience + f Ljava/lang/String; field_60522 DIMENSION_KEY + f I field_44990 viewDistance + f Z field_13989 notInAnyWorld + f Lnet/minecraft/class_2985; field_13970 advancementTracker + f I field_13982 lastArmorScore + f Lnet/minecraft/class_2165; field_54402 commandOutput + f Lnet/minecraft/class_1322; field_59631 WAYPOINT_TRANSMIT_RANGE_CROUCH_MODIFIER + f Lnet/minecraft/class_5916; field_29180 screenHandlerSyncHandler + f I field_13979 syncedFoodLevel + f Z field_28860 filterText + f Lnet/minecraft/server/MinecraftServer; field_13995 server + f Lnet/minecraft/class_5513; field_26821 textStream + f I field_13983 lastFoodScore + f Lnet/minecraft/class_1322; field_47709 CREATIVE_BLOCK_INTERACTION_RANGE_MODIFIER + f I field_13968 lastAirScore + f Lnet/minecraft/class_7262; field_39985 sculkShriekerWarningManager + f Lnet/minecraft/class_243; field_13992 levitationStartPos + f Z field_13971 clientChatColorsEnabled + f Lnet/minecraft/class_4076; field_13990 watchedSection + c A chunk section position indicating where the player's client is currently\nwatching chunks from. Used referentially for the game to update the chunks\nwatched by this player.\n\n@see #getWatchedSection()\n@see #setWatchedSection(ChunkSectionPos) + f Lnet/minecraft/class_3222$class_10766; field_56607 respawn + f F field_13997 syncedHealth + f Lnet/minecraft/class_243; field_35008 vehicleInLavaRidingPos + f Z field_13972 syncedSaturationIsZero + f Lnet/minecraft/class_2487; field_62504 leftShoulderNbt + f Lnet/minecraft/class_3244; field_13987 networkHandler + f Z field_13969 seenCredits + f Z field_35566 allowServerListing + f Lnet/minecraft/class_1297; field_13984 cameraEntity + f I field_13973 levitationStartTick + f Ljava/util/Set; field_54208 enderPearls + f Z field_57112 DEFAULT_SEEN_CREDITS + f Lnet/minecraft/class_243; field_35007 fallStartPos + f Lnet/minecraft/class_243; field_51875 movement + f Z field_49776 spawnExtraParticlesOnFall + f Lnet/minecraft/class_243; field_13994 enteredNetherPos + f Z field_13985 inTeleportationState + f Z field_57113 DEFAULT_SPAWN_EXTRA_PARTICLES_ON_FALL + f Lnet/minecraft/class_3441; field_13996 recipeBook + f I field_13986 screenHandlerSyncId + f Lnet/minecraft/class_1659; field_13993 clientChatVisibility + f Lnet/minecraft/class_7822; field_39986 session + f Lnet/minecraft/class_2338; field_50088 startRaidPos + f Lnet/minecraft/class_4066; field_52358 particlesMode + f F field_13963 lastHealthScore + f Lnet/minecraft/class_3442; field_13966 statHandler + f Lnet/minecraft/class_8603; field_44991 chunkFilter + f J field_62503 shoulderMountTime + f Lnet/minecraft/class_2487; field_62505 rightShoulderNbt + f Lorg/slf4j/Logger; field_13975 LOGGER + f Lnet/minecraft/class_1322; field_47710 CREATIVE_ENTITY_INTERACTION_RANGE_MODIFIER + f I field_13980 lastExperienceScore + f J field_13976 lastActionTime + f Ljava/lang/String; field_54210 ENDER_PEARLS_DIMENSION_KEY + m ()Ljava/util/Set; method_64128 getEnderPearls + m (Lnet/minecraft/class_1703;)V method_14235 onScreenHandlerOpened + p 1 screenHandler + m ()I method_61272 getPlayerListOrder + m ()Lnet/minecraft/class_7822; method_45163 getSession + m (Lnet/minecraft/class_3902;)V method_19504 method_19504 + p 1 unit + m (Lnet/minecraft/class_1799;)V method_64134 sendMapPacket + p 1 stack + m ()V method_14234 updateLastActionTime + m (Lnet/minecraft/class_1934;)Lnet/minecraft/class_1934; method_32746 getServerGameMode + c Returns the server game mode the player should be set to, namely the forced game mode.\n\n

If the forced game mode is not set, returns the {@code backupGameMode} if not {@code null},\nor the server's default game mode otherwise.\n\n@see MinecraftServer#getForcedGameMode + p 1 backupGameMode + m ()Lnet/minecraft/class_3218; method_51469 getEntityWorld + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_26285 isBedWithinRange + p 2 direction + p 1 pos + m (Lnet/minecraft/class_11372;)V method_64135 writeRootVehicle + p 1 view + m (Lnet/minecraft/class_4076;)V method_17668 setWatchedSection + c Sets the chunk section position the player's client is currently watching\nfrom. This is usually called when the player moves to a new chunk section.\n\n@see #watchedSection\n@see #getWatchedSection() + p 1 section + c the updated section position + m (Lnet/minecraft/class_5321;)Z method_64580 method_64580 + p 1 recipeKey + m (Lnet/minecraft/class_243;)V method_52208 setMovement + p 1 movement + m ()Ljava/lang/String; method_14209 getIp + m ()Lnet/minecraft/class_2338; method_58585 getStartRaidPos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1923;)J method_64123 addEnderPearlTicket + p 1 chunkPos + p 0 world + m (Lnet/minecraft/class_8603;)V method_52373 setChunkFilter + p 1 chunkFilter + m ()Ljava/util/Set; method_74538 getSubscribedTypes + m (Lnet/minecraft/class_1657;)V method_76789 copyInventoryAndExperienceFrom + p 1 other + m (Lnet/minecraft/class_2487;)Z method_74073 mountOntoShoulder + p 1 shoulderNbt + m (Lnet/minecraft/class_1588;)Z method_26283 method_26283 + p 1 entity + m (Lnet/minecraft/class_1684;)J method_64133 handleThrownEnderPearl + p 1 enderPearl + m (Lnet/minecraft/class_7822;)V method_46364 setSession + p 1 session + m ()V method_14217 markHealthDirty + m (Lnet/minecraft/class_3218;)V method_18783 worldChanged + p 1 origin + m (Lnet/minecraft/class_5321;)Ljava/util/stream/Stream; method_54934 method_54934 + p 1 recipeKey + m (Lnet/minecraft/class_11368;)V method_68175 readEnderPearl + p 1 view + m (Lnet/minecraft/class_3222$class_10766;Z)V method_26284 setSpawnPoint + c Sets the player's spawn point. + p 2 sendMessage + p 1 respawn + m ()V method_34225 onSpawn + m (Lnet/minecraft/class_1308;)V method_29777 method_29777 + p 1 entity + m (DDD)V method_54720 increaseTravelMotionStats + p 1 deltaX + p 3 deltaY + p 5 deltaZ + m (Lnet/minecraft/class_1297;)V method_14224 setCameraEntity + p 1 entity + m (Lnet/minecraft/class_11372;)V method_32749 writeGameModeData + p 1 view + m ()Lnet/minecraft/class_5513; method_31273 getTextStream + m (Lnet/minecraft/class_7604;ZLnet/minecraft/class_2556$class_7602;)V method_43505 sendChatMessage + c Sends a chat message to the player.\n\n

Chat messages have signatures. It is possible to use a bogus signature - such as\n{@link net.minecraft.network.message.SignedMessage#ofUnsigned} - to send a chat\nmessage; however if the signature is invalid (e.g. because the text's content differs\nfrom the one sent by the client, or because the passed signature is invalid) the client\nwill show a warning and can discard it depending on the client's options.\n\n@see #sendMessage(Text)\n@see #sendMessage(Text, boolean) + p 2 filterMaskEnabled + p 3 params + p 1 message + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1297; method_64132 method_64132 + p 1 entity + m ()Z method_14208 isInTeleportationState + m ()I method_52371 getViewDistance + m ()Lnet/minecraft/class_2487; method_74075 getRightShoulderNbt + m (Lnet/minecraft/class_5454;)Lnet/minecraft/class_3222; method_61275 teleportTo + m (I)V method_14228 setExperiencePoints + p 1 points + m (Lnet/minecraft/class_1684;)V method_64130 removeEnderPearl + p 1 enderPearl + m ()J method_14219 getLastActionTime + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_5321;Ljava/util/function/Consumer;)V method_64579 method_64579 + p 1 key + p 2 adder + m (Z)V method_37413 dropSelectedItem + p 1 entireStack + m (Lnet/minecraft/class_1661;I)V method_37412 method_37412 + p 2 index + m (Lnet/minecraft/class_1308;)Z method_29778 method_29778 + p 0 entity + m (Lnet/minecraft/class_2561;)V method_64398 sendMessage + p 1 message + m ()Lnet/minecraft/class_3441; method_14253 getRecipeBook + m (Lnet/minecraft/class_11372;)V method_64136 writeEnderPearls + p 1 view + m ()Lnet/minecraft/class_2168; method_64396 getCommandSource + m ()V method_60594 detachForDimensionChange + m ()Lnet/minecraft/class_2487; method_74074 getLeftShoulderNbt + m (Lnet/minecraft/class_2926;)V method_43930 sendServerMetadata + p 1 metadata + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_3218;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_8791;)V + p 3 profile + p 4 clientOptions + p 1 server + p 2 world + m ()Lnet/minecraft/class_10185; method_63562 getPlayerInput + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_14210 method_14210 + p 1 style + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_243;)Lnet/minecraft/class_3222$class_9773; method_60593 method_60593 + p 1 respawnPos + m (DDD)Z method_54722 isZero + p 2 deltaY + p 4 deltaZ + p 0 deltaX + m ()V method_55633 updateCreativeInteractionRangeModifiers + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_3222$class_10766;Z)Ljava/util/Optional; method_60588 findRespawnPosition + p 1 respawn + p 0 world + m (Lnet/minecraft/class_8791;)V method_14213 setClientOptions + p 1 clientOptions + m ()Lnet/minecraft/class_1297; method_14242 getCameraEntity + m (Lnet/minecraft/class_2338;)V method_58586 setStartRaidPos + p 1 startRaidPos + m (Lnet/minecraft/class_2487;)V method_74080 spawnShoulderEntity + p 1 nbt + m ()Lnet/minecraft/class_3442; method_14248 getStatHandler + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_243;)Lnet/minecraft/class_3222$class_9773; method_60589 method_60589 + p 1 respawnPos + m ()V method_38786 tickFallStartPos + m (Lnet/minecraft/class_2487;)V method_74076 setLeftShoulderNbt + p 1 leftShoulderNbt + m ()V method_14226 playerTick + m (Lnet/minecraft/class_3218;)Lnet/minecraft/class_8589; method_52374 createCommonPlayerSpawnInfo + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)V method_74078 method_74078 + p 2 entity + m (Lnet/minecraft/class_3218;)V method_51468 setServerWorld + p 1 world + m ()Lnet/minecraft/class_2561; method_14206 getPlayerListName + m (Lnet/minecraft/class_3222;)V method_60592 setSpawnPointFrom + p 1 player + m ()V method_58584 clearStartRaidPos + m ()Z method_44706 acceptsChatMessage + m ()Lnet/minecraft/class_243; method_63563 getInputVelocityForMinecart + m (Lnet/minecraft/class_3441$class_11328;)V method_71330 method_71330 + p 1 recipeBook + m (DDD)V method_54721 increaseRidingMotionStats + p 1 deltaX + p 3 deltaY + p 5 deltaZ + m (Lnet/minecraft/class_1684;)V method_64124 addEnderPearl + p 1 enderPearl + m ()V method_14240 onTeleportationDone + m ()V method_38787 tickVehicleInLavaRiding + m (Z)V method_58143 setSpawnExtraParticlesOnFall + p 1 spawnExtraParticlesOnFall + m (Lnet/minecraft/class_2487;)V method_74077 setRightShoulderNbt + p 1 rightShoulderNbt + m ()V method_14237 incrementScreenHandlerSyncId + m (Ljava/util/Set;)V method_74537 setSubscribedTypes + p 1 subscribedTypes + m (Lnet/minecraft/class_11368;)V method_64125 readRootVehicle + p 1 view + m (Lnet/minecraft/class_10185;)V method_63561 setPlayerInput + p 1 playerInput + m ()Lnet/minecraft/class_4076; method_14232 getWatchedSection + c Returns the chunk section position the player's client is currently watching\nfrom. This may differ from the chunk section the player is currently in.\n\n

This is only for chunk loading (watching) purpose. This is updated together\nwith entity tracking, but they are separate mechanisms.\n\n@see #watchedSection\n@see #setWatchedSection(ChunkSectionPos) + m ()Z method_34879 areClientChatColorsEnabled + m (Lnet/minecraft/class_9015;Lnet/minecraft/class_9015;[Lnet/minecraft/class_274;)V method_14227 updateScoreboardScore + p 1 targetScoreHolder + p 3 criterions + p 2 aboutScoreHolder + m ()Lnet/minecraft/class_8603; method_52372 getChunkFilter + m (Z)Z method_44707 acceptsMessage + p 1 overlay + m (Lnet/minecraft/class_3222;Z)V method_14203 copyFrom + p 1 oldPlayer + p 2 alive + m ()V method_14231 onDisconnect + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1297; method_68174 method_68174 + p 1 enderPearl + m (Lnet/minecraft/class_2183$class_2184;Lnet/minecraft/class_1297;Lnet/minecraft/class_2183$class_2184;)V method_14222 lookAtEntity + p 1 anchorPoint + p 3 targetAnchor + p 2 targetEntity + m (I)V method_14252 setExperienceLevel + p 1 level + m ()Lnet/minecraft/class_1659; method_14238 getClientChatVisibility + m (ILnet/minecraft/class_9014;)V method_14221 method_14221 + p 1 score + m ()Lnet/minecraft/class_2165; method_64401 getCommandOutput + m ()Lnet/minecraft/class_2985; method_14236 getAdvancementTracker + m ()Lnet/minecraft/class_8791; method_53823 getClientOptions + m ()Z method_39426 allowsServerListing + m ()Lnet/minecraft/class_3222$class_10766; method_67564 getRespawn + m (Lnet/minecraft/class_274;I)V method_14212 updateScores + p 2 score + p 1 criterion + m (Lnet/minecraft/class_11368;)V method_64131 readEnderPearls + p 1 view + m (ILnet/minecraft/class_9014;)V method_14250 method_14250 + p 1 innerScore + m ()Z method_70637 canReceiveWaypoints + m (Lnet/minecraft/class_2338;)Z method_26287 isBedWithinRange + p 1 pos + m (Lnet/minecraft/class_11368;Ljava/lang/String;)Lnet/minecraft/class_1934; method_32745 gameModeFromData + p 0 view + p 1 key + m ()Z method_14230 isPvpEnabled + m (Lnet/minecraft/class_2561;Z)V method_43502 sendMessageToClient + p 1 message + p 2 overlay + m (ZLnet/minecraft/class_5454$class_9823;)Lnet/minecraft/class_5454; method_60590 getRespawnTarget + p 2 postDimensionTransition + p 1 alive + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_26286 isBedObstructed + p 1 pos + p 2 direction + m ()Z method_14239 isDisconnected + m ()V method_29779 forgiveMobAnger + m (Lnet/minecraft/class_3222;)Z method_33795 shouldFilterMessagesSentTo + p 1 player + m (Lnet/minecraft/class_2487;)V method_74079 playShoulderEntitySound + p 1 nbt + m (Lnet/minecraft/class_1934;)Z method_7336 changeGameMode + p 1 gameMode +c net/minecraft/class_3222$1 net/minecraft/server/network/ServerPlayerEntity$1 + f Lcom/google/common/cache/LoadingCache; field_58076 componentHashCache + m (Lnet/minecraft/class_1703;II)V method_68736 sendPropertyUpdate + p 2 property + p 3 value + p 1 handler +c net/minecraft/class_3222$1$1 net/minecraft/server/network/ServerPlayerEntity$1$1 + f Lcom/mojang/serialization/DynamicOps; field_58078 hashOps + m (Ljava/lang/Object;)Ljava/lang/Object; load load + p 1 component + m (Lnet/minecraft/class_9336;)Ljava/lang/Integer; method_68737 load + m (Lnet/minecraft/class_9336;Ljava/lang/String;)Ljava/lang/IllegalArgumentException; method_68738 method_68738 + p 1 error +c net/minecraft/class_3222$class_11543 net/minecraft/server/network/ServerPlayerEntity$SavePos + f Lcom/mojang/serialization/MapCodec; field_61094 CODEC + f Lnet/minecraft/class_3222$class_11543; field_61095 EMPTY + f Ljava/util/Optional; comp_4408 dimension + f Ljava/util/Optional; comp_4409 position + f Ljava/util/Optional; comp_4410 rotation + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_72272 method_72272 + p 0 instance + m ()Ljava/util/Optional; comp_4409 position + m ()Ljava/util/Optional; comp_4408 dimension + m ()Ljava/util/Optional; comp_4410 rotation + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 dimension + p 2 position + p 3 rotation +c net/minecraft/class_3222$class_10766 net/minecraft/server/network/ServerPlayerEntity$Respawn + f Lcom/mojang/serialization/Codec; field_56608 CODEC + f Z comp_3686 forced + f Lnet/minecraft/class_5217$class_12064; comp_4913 respawnData + m (Lnet/minecraft/class_3222$class_10766;)Lnet/minecraft/class_5321; method_67567 getDimension + p 0 respawn + m (Lnet/minecraft/class_3222$class_10766;)Z method_67565 posEquals + p 1 respawn + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67566 method_67566 + p 0 instance + m ()Z comp_3686 forced + m ()Lnet/minecraft/class_5217$class_12064; comp_4913 respawnData + m (Lnet/minecraft/class_5217$class_12064;Z)V + p 1 respawnData + p 2 forced +c net/minecraft/class_3222$class_9773 net/minecraft/server/network/ServerPlayerEntity$RespawnPos + f Lnet/minecraft/class_243; comp_2811 pos + f F comp_2812 yaw + f F comp_4914 pitch + m (Lnet/minecraft/class_243;Lnet/minecraft/class_2338;)F method_60596 getYaw + p 1 currentPos + p 0 respawnPos + m ()Lnet/minecraft/class_243; comp_2811 pos + m (Lnet/minecraft/class_243;Lnet/minecraft/class_2338;F)Lnet/minecraft/class_3222$class_9773; method_60595 fromCurrentPos + p 0 respawnPos + p 1 currentPos + m ()F comp_2812 yaw + m ()F comp_4914 pitch + m (Lnet/minecraft/class_243;FF)V + p 1 pos + p 2 yaw + p 3 pitch +c net/minecraft/class_3223 net/minecraft/world/gen/structure/WoodlandMansionStructure + f Lcom/mojang/serialization/MapCodec; field_37819 CODEC + m (Lnet/minecraft/class_6626;Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;)V method_41696 addPieces + p 4 rotation + p 3 pos + p 2 context + p 1 collector + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_6626;)V method_41695 method_41695 + p 4 collector +c net/minecraft/class_4553 net/minecraft/predicate/entity/PlayerPredicate + f Lcom/mojang/serialization/MapCodec; field_45770 CODEC + f I field_33928 LOOKING_AT_DISTANCE + f Lnet/minecraft/class_9789; comp_1818 gameMode + f Lnet/minecraft/class_2096$class_2100; comp_1817 experienceLevel + f Ljava/util/Optional; comp_3182 input + f Ljava/util/Map; comp_1821 advancements + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; comp_1820 recipes + f Ljava/util/Optional; comp_1822 lookingAt + f Ljava/util/List; comp_1819 stats + m (Lnet/minecraft/class_2096$class_2100;Lnet/minecraft/class_9789;Ljava/util/List;Lit/unimi/dsi/fastutil/objects/Object2BooleanMap;Ljava/util/Map;Ljava/util/Optional;Ljava/util/Optional;)V + p 4 recipes + p 5 advancements + p 1 experienceLevel + p 2 gameMode + p 3 stats + p 6 lookingAt + p 7 input + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53219 method_53219 + p 0 instance + m ()Lnet/minecraft/class_9789; comp_1818 gameMode + m (Lnet/minecraft/class_1297;)Z method_37250 method_37250 + p 0 hitEntity + m ()Lnet/minecraft/class_2096$class_2100; comp_1817 experienceLevel + m ()Ljava/util/Optional; comp_3182 input + m ()Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; comp_1820 recipes + m ()Ljava/util/Optional; comp_1822 lookingAt + m ()Ljava/util/Map; comp_1821 advancements + m ()Ljava/util/List; comp_1819 stats +c net/minecraft/class_4553$class_4555 net/minecraft/predicate/entity/PlayerPredicate$CompletedAdvancementPredicate + f Z comp_1824 done + f Lcom/mojang/serialization/Codec; field_45772 CODEC + m ()Z comp_1824 done + m (Z)V + p 1 done + m (Ljava/lang/Object;)Z test test + p 1 progress + m (Lnet/minecraft/class_167;)Z method_22505 test +c net/minecraft/class_4553$class_4556 net/minecraft/predicate/entity/PlayerPredicate$AdvancementPredicate + f Lcom/mojang/serialization/Codec; field_45773 CODEC + m (Lnet/minecraft/class_4553$class_4556;)Lcom/mojang/datafixers/util/Either; method_53223 method_53223 + p 0 predicate +c net/minecraft/class_4553$class_8749 net/minecraft/predicate/entity/PlayerPredicate$StatMatcher + f Lcom/mojang/serialization/Codec; field_45774 CODEC + f Ljava/util/function/Supplier; comp_1828 stat + f Lnet/minecraft/class_3448; comp_1825 type + f Lnet/minecraft/class_2096$class_2100; comp_1827 range + f Lnet/minecraft/class_6880; comp_1826 value + m (Lnet/minecraft/class_3448;Lnet/minecraft/class_6880;Lnet/minecraft/class_2096$class_2100;)V + p 1 type + p 2 value + p 3 range + m (Lnet/minecraft/class_3448;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53225 method_53225 + p 1 instance + m (Lnet/minecraft/class_3448;)Lcom/mojang/serialization/MapCodec; method_53224 createCodec + p 0 type + m (Lnet/minecraft/class_3469;)Z method_53228 test + p 1 statHandler + m (Lnet/minecraft/class_3448;Lnet/minecraft/class_6880;Lnet/minecraft/class_2096$class_2100;)Lnet/minecraft/class_4553$class_8749; method_53227 method_53227 + p 1 value + p 2 range + m ()Lnet/minecraft/class_6880; comp_1826 value + m ()Ljava/util/function/Supplier; comp_1828 stat + m ()Lnet/minecraft/class_2096$class_2100; comp_1827 range + m ()Lnet/minecraft/class_3448; comp_1825 type + m (Lnet/minecraft/class_3448;Lnet/minecraft/class_6880;Lnet/minecraft/class_2096$class_2100;Ljava/util/function/Supplier;)V + p 1 type + p 2 value + p 3 range + p 4 stat +c net/minecraft/class_4553$class_4554 net/minecraft/predicate/entity/PlayerPredicate$AdvancementCriteriaPredicate + f Lcom/mojang/serialization/Codec; field_45771 CODEC + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; comp_1823 criteria + m (Lit/unimi/dsi/fastutil/objects/Object2BooleanMap;)V + p 1 criteria + m (Ljava/lang/Object;)Z test test + p 1 progress + m (Lnet/minecraft/class_167;)Z method_22504 test + m ()Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; comp_1823 criteria +c net/minecraft/class_4553$class_4557 net/minecraft/predicate/entity/PlayerPredicate$Builder + f Ljava/util/Map; field_20734 advancements + f Ljava/util/Optional; field_33930 lookingAt + f Lnet/minecraft/class_9789; field_20731 gameMode + f Lnet/minecraft/class_2096$class_2100; field_20730 experienceLevel + f Lcom/google/common/collect/ImmutableList$Builder; field_20732 stats + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; field_20733 recipes + f Ljava/util/Optional; field_54148 input + m (Lnet/minecraft/class_2960;Ljava/util/Map;)Lnet/minecraft/class_4553$class_4557; method_35314 advancement + p 1 id + p 2 criteria + m (Lnet/minecraft/class_5321;Z)Lnet/minecraft/class_4553$class_4557; method_35315 recipe + p 2 unlocked + p 1 recipeKey + m (Lnet/minecraft/class_10184;)Lnet/minecraft/class_4553$class_4557; method_64023 input + p 1 input + m (Lnet/minecraft/class_2960;Z)Lnet/minecraft/class_4553$class_4557; method_35316 advancement + p 1 id + p 2 done + m ()Lnet/minecraft/class_4553$class_4557; method_35310 create + m ()Lnet/minecraft/class_4553; method_22507 build + m (Lnet/minecraft/class_9789;)Lnet/minecraft/class_4553$class_4557; method_35312 gameMode + p 1 gameMode + m (Lnet/minecraft/class_2096$class_2100;)Lnet/minecraft/class_4553$class_4557; method_35313 experienceLevel + p 1 experienceLevel + m (Lnet/minecraft/class_3448;Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_2096$class_2100;)Lnet/minecraft/class_4553$class_4557; method_35311 stat + p 1 statType + p 3 range + p 2 value + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_4553$class_4557; method_37251 lookingAt + p 1 lookingAt +c net/minecraft/class_3217 net/minecraft/world/gen/feature/VoidStartPlatformFeature + f I field_31520 MAX_RADIUS + f Lnet/minecraft/class_1923; field_19242 START_CHUNK + f Lnet/minecraft/class_2338; field_19241 START_BLOCK + m (IIII)I method_20403 getDistance + p 0 x1 + p 1 z1 + p 2 x2 + p 3 z2 +c net/minecraft/class_3218 net/minecraft/server/world/ServerWorld + f I field_35441 MAX_TICKS + f Lnet/minecraft/class_6832; field_36208 structureLocator + f Lnet/minecraft/class_3215; field_24624 chunkManager + f I field_13948 idleTimeout + f Lorg/slf4j/Logger; field_13952 LOGGER + f Lnet/minecraft/class_11179; field_59630 waypointHandler + f Lnet/minecraft/class_5574; field_26934 entityList + f Lit/unimi/dsi/fastutil/objects/ObjectLinkedOpenHashSet; field_13950 syncedBlockEventQueue + f Lnet/minecraft/class_12205; field_64261 environmentAttributeAccess + f Z field_13953 inBlockTick + f Lnet/minecraft/class_6017; field_41749 CLEAR_WEATHER_DURATION_PROVIDER + f Ljava/util/List; field_18261 players + f Lnet/minecraft/class_1946; field_13956 portalForcer + f Lnet/minecraft/class_5138; field_23787 structureAccessor + f Lnet/minecraft/class_6017; field_41748 CLEAR_THUNDER_WEATHER_DURATION_PROVIDER + f Lnet/minecraft/class_7719; field_39984 gameEventDispatchManager + f I field_29768 SERVER_IDLE_COOLDOWN + c The number of ticks ({@value}) the world will continue to tick entities after\nall players have left and the world does not contain any forced chunks. + f Ljava/util/Set; field_26932 loadedMobs + f Lnet/minecraft/class_5579; field_26935 entityManager + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_26933 enderDragonParts + f Lnet/minecraft/class_3767; field_18811 raidManager + f Lnet/minecraft/class_2881; field_25142 enderDragonFight + f Lnet/minecraft/class_6017; field_41751 THUNDER_WEATHER_DURATION_PROVIDER + f Lnet/minecraft/class_6017; field_41750 RAIN_WEATHER_DURATION_PROVIDER + f Ljava/util/List; field_25141 spawners + f Lnet/minecraft/class_12026; field_62841 subscriptionTracker + f Lnet/minecraft/class_9315; field_49172 pathNodeTypeCache + f Lnet/minecraft/class_8565; field_44857 randomSequences + f Lnet/minecraft/class_6757; field_13949 blockTickScheduler + f Z field_13957 savingDisabled + f Lnet/minecraft/class_5268; field_24456 worldProperties + f Z field_36317 duringListenerUpdate + f Lnet/minecraft/class_5838; field_28859 sleepManager + f Z field_25143 shouldTickTime + f Lnet/minecraft/server/MinecraftServer; field_13959 server + f Lnet/minecraft/class_2338; field_25144 END_SPAWN_POS + f Lnet/minecraft/class_6757; field_13951 fluidTickScheduler + f Ljava/util/List; field_35565 blockEventQueue + m (Lnet/minecraft/class_4076;)Z method_20588 isNearOccupiedPointOfInterest + p 1 sectionPos + m (Lnet/minecraft/class_2338;)Z method_19503 hasRaidAt + c {@return {@code true} if a raid exists within 96 block radius of {@code pos}} + p 1 pos + m (Ljava/io/Writer;Ljava/lang/Iterable;)V method_21624 dumpEntities + p 0 writer + p 1 entities + m ()J method_75003 getDay + m (Lnet/minecraft/class_3341;)V method_23658 clearUpdatesInArea + p 1 box + m (Lnet/minecraft/class_5575;Ljava/util/function/Predicate;Ljava/util/List;I)V method_47539 collectEntitiesByType + c Collects entities of the given type, up to {@code limit}. Using this can improve\nperformance, especially if {@code limit} is small.\n\n@see #getEntitiesByType + p 1 filter + p 4 limit + p 3 result + p 2 predicate + m ()V method_29203 tickTime + m ()Z method_33144 isSleepingEnabled + c {@return whether sleeping can cause the night to skip} + m (Lnet/minecraft/class_2338;)Z method_67506 shouldTickBlockAt + p 1 pos + m ()Z method_28125 isFlat + m ()Lnet/minecraft/class_3215; method_14178 getChunkManager + m ()V method_23660 wakeSleepingPlayers + m (Lnet/minecraft/class_8921;Lnet/minecraft/class_3695;Lnet/minecraft/class_1297;)V method_31420 method_31420 + p 3 entity + m (Lnet/minecraft/class_3222;)V method_18215 onPlayerRespawned + c Called on the world that has the player's respawn point when the player respawned. + p 1 player + m (Lnet/minecraft/class_6880;)Z method_31421 method_31421 + p 0 poiType + m (I)Lnet/minecraft/class_1297; method_31424 getEntityOrDragonPart + p 1 id + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_3765; method_19502 getRaidAt + c {@return the raid occurring within 96 block radius, or {@code null} if there is none} + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;)V method_66017 method_66017 + p 2 newPoiType + m ()Lnet/minecraft/class_11179; method_70636 getWaypointHandler + m (Ljava/util/stream/Stream;)V method_31423 loadEntities + p 1 entities + m (Lnet/minecraft/class_3222;)V method_18771 addPlayer + p 1 player + m ()Lnet/minecraft/class_4153; method_19494 getPointOfInterestStorage + m ()Ljava/lang/String; method_31268 getDebugString + m (Ljava/util/function/Predicate;Lnet/minecraft/class_2338;III)Lcom/mojang/datafixers/util/Pair; method_42108 locateBiome + p 2 pos + p 1 predicate + p 5 verticalBlockCheckInterval + p 4 horizontalBlockCheckInterval + p 3 radius + m ()Z method_75001 areSpawnerBlocksEnabled + m (Lnet/minecraft/class_2818;)V method_67503 tickThunder + p 1 chunk + m (Lnet/minecraft/class_12279;)Lnet/minecraft/class_1927$class_4179; method_61270 getDestructionType + p 1 decayRule + m (Lnet/minecraft/class_2818;)V method_39223 disableTickSchedulers + p 1 chunk + m (Lnet/minecraft/class_2881;)V method_51837 setEnderDragonFight + p 1 enderDragonFight + m ()Z method_14177 isInBlockTick + m ()V method_39501 tickWeather + m (Lnet/minecraft/class_2394;DDDIDDDD)I method_65096 spawnParticles + p 9 offsetX + p 11 offsetY + p 6 z + p 8 count + p 1 parameters + p 2 x + p 4 y + p 13 offsetZ + p 15 speed + m ()Lit/unimi/dsi/fastutil/longs/LongSet; method_17984 getForcedChunks + c {@return the set that contains {@link ChunkPos} of forced chunks serialized as a long} + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_18210 getLightningPos + p 1 pos + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)V method_18763 tickPassenger + p 2 passenger + p 1 vehicle + m (Ljava/util/function/Predicate;)Ljava/util/List; method_18766 getPlayers + c {@return the list of players filtered using {@code predicate}} + p 1 predicate + m (Ljava/util/stream/Stream;)V method_31426 addEntities + p 1 entities + m (Lnet/minecraft/class_2791;)V method_39778 cacheStructures + p 1 chunk + m (Lnet/minecraft/class_2338;)Z method_37118 shouldTickEntityAt + c {@return whether to tick entities at {@code pos}} + p 1 pos + m (Lnet/minecraft/class_1297;)V method_18762 tickEntity + p 1 entity + m ()Z method_75000 areCommandBlocksEnabled + m ()V method_14192 processSyncedBlockEvents + m (Lnet/minecraft/class_4151;Lnet/minecraft/class_1297;Lnet/minecraft/class_4094;)V method_19496 handleInteraction + p 3 observer + p 2 entity + p 1 interaction + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_1919;)Z method_23659 method_23659 + p 1 event + m (Ljava/lang/Iterable;Ljava/util/function/Function;)Ljava/lang/String; method_31270 getTopFive + c Categories {@code items} with the {@code classifier} and reports a message\nindicating the top five biggest categories. + p 0 items + c the items to classify + p 1 classifier + c the classifier that determines the category of any item + m (Lnet/minecraft/class_2338;)Ljava/util/Optional; method_31418 getLightningRodPos + p 1 pos + m (Lnet/minecraft/class_3222;ZDDDLnet/minecraft/class_2596;)Z method_14191 sendToPlayerIfNearby + c Sends the {@code packet} to {@code player} if the player\nis near the provided coordinates.\n\n@return whether the packet was sent\n\n@implNote The threshold is 32 blocks if {@code force} is {@code false}, and\n512 blocks if {@code force} is {@code true}. + p 9 packet + p 7 z + p 5 y + p 3 x + p 2 force + p 1 player + m ()Lnet/minecraft/class_1863; method_64577 getRecipeManager + m (Lnet/minecraft/class_3222;)V method_18773 method_18773 + p 0 player + m (Ljava/util/function/Predicate;Ljava/util/List;ILnet/minecraft/class_1297;)Lnet/minecraft/class_7927$class_7928; method_47541 method_47541 + p 3 entity + m ()Lnet/minecraft/class_6757; method_14179 getFluidTickScheduler + m ()V method_14195 resetWeather + m (Lnet/minecraft/class_1919;)Z method_14174 processBlockEvent + p 1 event + m ()Lnet/minecraft/class_5138; method_27056 getStructureAccessor + m (Lnet/minecraft/class_1923;)Z method_66588 shouldTickTestAt + p 1 pos + m (Ljava/io/Writer;)V method_21626 dumpBlockEntities + p 1 writer + m (Lnet/minecraft/class_1297;)Ljava/lang/String; method_31431 method_31431 + p 0 entity + m ()Lnet/minecraft/class_3222; method_18779 getRandomAlivePlayer + c {@return a randomly selected alive player, or {@code null} if there is none} + m (Lnet/minecraft/class_2338;)F method_76332 getMoonSize + p 1 pos + m ()Lnet/minecraft/class_26; method_17983 getPersistentStateManager + m (Lnet/minecraft/class_2818;)V method_18764 unloadEntities + p 1 chunk + m ()Ljava/util/List; method_18776 getAliveEnderDragons + c {@return the list of alive ender dragons in the world} + m (Lnet/minecraft/class_4076;)I method_19498 getOccupiedPointOfInterestDistance + p 1 pos + m (Lnet/minecraft/class_1923;)Z method_67505 canSpawnEntitiesAt + p 1 pos + m ()I method_32819 getLogicalHeight + m (Lnet/minecraft/class_1297;)Z method_18768 tryLoadEntity + p 1 entity + m (IIZ)Z method_17988 setChunkForced + c Sets the forced status of the chunk.\n\n

Forced chunks are created in-game using the\n{@linkplain net.minecraft.server.command.ForceLoadCommand {@code /forceload} command}. + p 3 forced + c whether to mark the chunk as forced + p 2 z + c the chunk's Z coordinate + p 1 x + c the chunk's X coordinate + m (Lnet/minecraft/class_2338;)V method_74534 method_74534 + p 1 pos + m (Z)V method_29202 tickSpawners + p 1 spawnMonsters + m (Lnet/minecraft/class_1297;)V method_18769 onDimensionChanged + c Called on the destination world when an entity changed the dimension.\n\n@see Entity#teleportTo + p 1 entity + m (Lnet/minecraft/class_1923;I)V method_72270 loadChunks + p 1 center + p 2 radius + m (Lnet/minecraft/class_2338;)Z method_19500 isNearOccupiedPointOfInterest + p 1 pos + m (Ljava/util/function/BooleanSupplier;)V method_18765 tick + p 1 shouldKeepTicking + m (IIZZ)V method_27910 setWeather + c Sets the current weather, as well as how long it should last.\n\n@see ServerWorldProperties#setClearWeatherTime\n@see ServerWorldProperties#setRainTime\n@see ServerWorldProperties#setThunderTime\n@see ServerWorldProperties#setRaining\n@see ServerWorldProperties#setThundering + p 4 thundering + c whether a thunderstorm is ongoing + p 1 clearDuration + c how long the clear weather should last, in seconds + p 3 raining + c whether a rain is ongoing + p 2 rainDuration + c how long the rain or the thunderstorm should last, in seconds + m ()Ljava/lang/Iterable; method_27909 iterateEntities + m ()Z method_74962 shouldSpawnMonsters + m ()Z method_74999 isPvpEnabled + m (Lnet/minecraft/class_1923;)Z method_67504 shouldTickChunkAt + p 1 pos + m ()Lnet/minecraft/class_3767; method_19495 getRaidManager + m (Lnet/minecraft/class_5575;Ljava/util/function/Predicate;)Ljava/util/List; method_18198 getEntitiesByType + c Computes a list of entities of the given type.\n\nWarning: If {@code null} is passed as the entity type filter, care should be\ntaken that the type argument {@code T} is set to {@link Entity}, otherwise heap pollution\nin the returned list or {@link ClassCastException} can occur.\n\n@return a list of entities of the given type + p 2 predicate + c a predicate which returned entities must satisfy + p 1 filter + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_34679 method_34679 + p 0 innerPos + m (Lnet/minecraft/class_2818;I)V method_18203 tickChunk + p 2 randomTickSpeed + p 1 chunk + m (Lnet/minecraft/class_2394;ZZDDDIDDDD)I method_14199 spawnParticles + c Spawns a particle visible to nearby players.\n\n@return the number of players the particle packet was sent to\n\n@implNote If {@code count} is {@code 0}, a single particle will be spawned with its\nvelocity being {@code deltaX},{@code deltaY},{@code deltaZ} multiplied by {@code speed}. + p 13 offsetY + p 15 offsetZ + p 2 force + p 1 parameters + p 17 speed + p 4 x + p 3 important + p 6 y + p 8 z + p 10 count + p 11 offsetX + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3611;)V method_14171 tickFluid + p 1 pos + p 2 fluid + m (Lnet/minecraft/class_2338;)V method_52370 tickIceAndSnow + p 1 pos + m (Lnet/minecraft/class_5575;Ljava/util/function/Predicate;Ljava/util/List;)V method_47538 collectEntitiesByType + p 1 filter + p 3 result + p 2 predicate + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_2394;ZZDDDIDDDD)Z method_14166 spawnParticles + c Spawns a particle visible to {@code viewer}, if the viewer is near the provided\ncoordinates.\n\n@return whether the particle packet was sent\n\n@implNote If {@code count} is {@code 0}, a single particle will be spawned with its\nvelocity being {@code deltaX},{@code deltaY},{@code deltaZ} multiplied by {@code speed}. + p 16 offsetZ + p 14 offsetY + p 11 count + p 12 offsetX + p 9 z + p 7 y + p 5 x + p 3 force + p 4 important + p 1 viewer + p 2 parameters + p 18 speed + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5819; method_51836 getOrCreateRandom + p 1 id + m ()V method_14197 resetIdleTimeout + m (Lnet/minecraft/class_1937;)Z method_75002 isEnterableWithPortal + p 1 destination + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_70635 onStateReplacedWithCommands + p 1 pos + p 2 oldState + m (Lnet/minecraft/class_3536;ZZ)V method_14176 save + c Saves the world. + p 2 flush + c if it should immediately write all data to storage device + p 1 progressListener + c the listener for the saving process, or {@code null} to specify none + p 3 savingDisabled + c whether to return early without doing anything + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;)V method_14189 tickBlock + p 1 pos + p 2 block + m (Lnet/minecraft/class_1297;)Z method_30736 spawnNewEntityAndPassengers + c Checks whether any of the entity and its passengers already exist\nin the world, and if not, spawns the entity with its passengers.\n\n@return {@code true} if the spawning was successful, otherwise {@code false}\n\n@see net.minecraft.world.ServerWorldAccess#spawnEntityAndPassengers + p 1 entity + m (J)V method_29199 setTimeOfDay + c Sets the time of day.\n\n

Time of day is different to "time", which is incremented on every tick and\ncannot be modified; Time of day affects the day-night cycle, can be changed using\n{@link net.minecraft.server.command.TimeCommand /time command}, and can be frozen\nif {@link net.minecraft.world.GameRules#DO_DAYLIGHT_CYCLE doDaylightCycle} gamerule is turned off.\nTime is used to track scheduled ticks and cannot be modified or frozen.\n\n@see net.minecraft.world.level.ServerWorldProperties#setTimeOfDay + p 1 timeOfDay + m (Lnet/minecraft/class_6862;Lnet/minecraft/class_2338;IZ)Lnet/minecraft/class_2338; method_8487 locateStructure + c Tries to find the closest structure of a given type near a given block.\n

\nNew chunks will only be generated up to the {@link net.minecraft.world.chunk.ChunkStatus#STRUCTURE_STARTS} phase by this method.\n

\nThe radius is ignored for strongholds.\n\n@return the position of the structure, or {@code null} if no structure could be found within the given search radius\n\n@see net.minecraft.world.gen.chunk.ChunkGenerator#locateStructure(ServerWorld, RegistryEntryList, BlockPos, int, boolean) + p 2 pos + c the position to start the searching at + p 1 structureTag + p 4 skipReferencedStructures + c whether to exclude structures that were previously located (has positive\n{@link net.minecraft.structure.StructureStart#references}) + p 3 radius + c the search radius in chunks around the chunk the given block position is in; a radius of 0 will only search in the given chunk + m (Lnet/minecraft/class_2338;I)Z method_19497 isNearOccupiedPointOfInterest + p 1 pos + p 2 maxDistance + m (Lnet/minecraft/class_3222;)V method_18213 onPlayerConnected + c Called on the player's world when the player connected to the server and spawned. + p 1 player + m (Ljava/util/function/Predicate;I)Ljava/util/List; method_47540 getPlayers + c {@return the list of players filtered using {@code predicate}, up to {@code limit}} + p 1 predicate + p 2 limit + m ()Lnet/minecraft/class_6757; method_14196 getBlockTickScheduler + m (J)Z method_37116 isChunkLoaded + c {@return {@code true} if the chunk {@code chunkPos} is loaded} + p 1 chunkPos + m ()Lnet/minecraft/class_2995; method_14170 getScoreboard + m (Z)V method_14188 savePersistentState + p 1 flush + m ()Lnet/minecraft/class_9315; method_57133 getPathNodeTypeCache + m (Lnet/minecraft/class_2338;)Z method_34680 method_34680 + p 1 innerPos + m ()Lnet/minecraft/class_1946; method_14173 getPortalForcer + m ()Lnet/minecraft/class_2881; method_29198 getEnderDragonFight + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;)V method_66019 method_66019 + p 2 oldPoiType + m ()Lnet/minecraft/class_9209; method_17889 increaseAndGetMapId + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297$class_5529;)V method_18770 removePlayer + p 2 reason + p 1 player + m ()V method_33143 sendSleepingStatus + c Sends sleeping status action bar messages to players in this world. + m ()Lnet/minecraft/class_1928; method_64395 getGameRules + m ()Lnet/minecraft/class_8565; method_52168 getRandomSequences + m (Ljava/nio/file/Path;)V method_21625 dump + p 1 path + m ()Lnet/minecraft/class_12205; method_75728 getEnvironmentAttributes + m (Lnet/minecraft/class_1297;)Z method_14175 addEntity + p 1 entity + m (Lnet/minecraft/server/MinecraftServer;Ljava/util/concurrent/Executor;Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_5268;Lnet/minecraft/class_5321;Lnet/minecraft/class_5363;ZJLjava/util/List;ZLnet/minecraft/class_8565;)V + p 8 seed + p 7 debugWorld + p 10 spawners + p 12 randomSequenceState + p 11 shouldTickTime + p 2 workerExecutor + p 1 server + p 4 properties + p 3 session + p 6 dimensionOptions + p 5 worldKey + m (Lnet/minecraft/class_9209;Lnet/minecraft/class_22;)V method_17890 putMapState + p 2 state + p 1 id + m (Lnet/minecraft/class_1309;)Z method_18199 method_18199 + p 1 entity + m ()Lnet/minecraft/class_3485; method_14183 getStructureTemplateManager + m (Lnet/minecraft/class_2338;IILnet/minecraft/class_3222;)V method_65057 method_65057 + p 4 player + m ()V method_8448 updateSleepingPlayers + m ()Lnet/minecraft/class_12026; method_74535 getSubscriptionTracker + m (Lnet/minecraft/class_2338;)Z method_76058 canFireSpread + p 1 pos + m (J)Z method_37117 isTickingFutureReady + p 1 chunkPos +c net/minecraft/class_3218$class_5526 net/minecraft/server/world/ServerWorld$ServerEntityHandler + m (Lnet/minecraft/class_1297;)V method_43030 updateLoadStatus + m (Lnet/minecraft/class_1297;)V method_31435 stopTicking + m (Lnet/minecraft/class_1297;)V method_31434 startTicking + m (Lnet/minecraft/class_1297;)V method_31437 stopTracking + m (Lnet/minecraft/class_1297;)V method_31436 startTracking + m (Lnet/minecraft/class_1297;)V method_31433 destroy + m (Lnet/minecraft/class_1297;)V method_31432 create +c net/minecraft/class_3219 net/minecraft/world/gen/feature/VinesFeature +c net/minecraft/class_5890 net/minecraft/network/packet/s2c/play/EndCombatS2CPacket + f Lnet/minecraft/class_9139; field_47950 CODEC + f I field_29132 timeSinceLastAttack + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_1283;)V + p 1 damageTracker + m (I)V + p 1 timeSinceLastAttack + m (Lnet/minecraft/class_2602;)V method_34141 apply + m (Lnet/minecraft/class_2540;)V method_55899 write + p 1 buf +c net/minecraft/class_512 net/minecraft/client/gui/screen/recipebook/RecipeGroupButtonWidget + f F field_3122 bounce + f Lnet/minecraft/class_8666; field_45554 TEXTURES + f Z field_64556 groupFocused + f Lnet/minecraft/class_507$class_10329; field_54833 tab + m ()Lnet/minecraft/class_10287; method_2623 getCategory + m ()V method_76637 focus + m ()V method_76638 unfocus + m (IILnet/minecraft/class_507$class_10329;Lnet/minecraft/class_4185$class_4241;)V + p 4 onPress + p 3 tab + p 2 y + p 1 x + m (Lnet/minecraft/class_299;Z)V method_2622 checkForNewRecipes + p 2 filteringCraftable + p 1 recipeBook + m (Lnet/minecraft/class_332;)V method_2621 renderIcons + p 1 context + m (Lnet/minecraft/class_299;)Z method_2624 hasKnownRecipes + p 1 recipeBook +c net/minecraft/class_5892 net/minecraft/network/packet/s2c/play/DeathMessageS2CPacket + f Lnet/minecraft/class_9139; field_47953 CODEC + f Lnet/minecraft/class_2561; comp_2276 message + f I comp_2275 playerId + m (Lnet/minecraft/class_2602;)V method_34143 apply + m ()I comp_2275 playerId + m ()Lnet/minecraft/class_2561; comp_2276 message + m (ILnet/minecraft/class_2561;)V + p 1 playerId + p 2 message +c net/minecraft/class_3230 net/minecraft/server/world/ChunkTicketType + f Lnet/minecraft/class_3230; field_17264 DRAGON + c Used by the ender dragon to load the central end island during the boss battle. + f I field_61096 SERIALIZE + f I field_61097 FOR_LOADING + f I field_61098 FOR_SIMULATION + f J field_55598 NO_EXPIRATION + f Lnet/minecraft/class_3230; field_19280 PORTAL + c Used by a nether portal to load chunks in the other dimension. + f Lnet/minecraft/class_3230; field_14031 FORCED + c Used to force load chunks. + f J comp_3474 expiryTicks + f I field_61099 RESETS_IDLE_TIMEOUT + f I field_61100 CAN_EXPIRE_BEFORE_LOAD + f Lnet/minecraft/class_3230; field_14032 UNKNOWN + c Represents a type of ticket that has an unknown cause for loading chunks. + f Lnet/minecraft/class_3230; field_55600 PLAYER_SIMULATION + f Lnet/minecraft/class_3230; field_61102 SPAWN_SEARCH + f Lnet/minecraft/class_3230; field_61101 PLAYER_SPAWN + f Lnet/minecraft/class_3230; field_54211 ENDER_PEARL + f I comp_4411 flags + f Lnet/minecraft/class_3230; field_55599 PLAYER_LOADING + m ()Z method_66025 isForLoading + m ()Z method_72275 canExpireBeforeLoad + m ()Z method_66027 isForSimulation + m ()Z method_72274 resetsIdleTimeout + m ()Z method_66028 canExpire + m ()Z method_72273 shouldSerialize + m (Ljava/lang/String;JI)Lnet/minecraft/class_3230; method_66026 register + p 1 expiryTicks + p 0 id + p 3 flags + m ()J comp_3474 expiryTicks + m ()I comp_4411 flags + m (JI)V + p 1 expiryTicks + p 3 flags +c net/minecraft/class_3230$class_12084 net/minecraft/server/world/ChunkTicketType$Flags +c net/minecraft/class_5891 net/minecraft/network/packet/s2c/play/EnterCombatS2CPacket + f Lnet/minecraft/class_9139; field_47952 CODEC + f Lnet/minecraft/class_5891; field_47951 INSTANCE + m (Lnet/minecraft/class_2602;)V method_34142 apply +c net/minecraft/class_516 net/minecraft/client/gui/screen/recipebook/RecipeResultCollection + f Ljava/util/List; field_54835 entries + f Ljava/util/Set; field_3146 craftableRecipes + f Ljava/util/Set; field_54836 displayableRecipes + f Lnet/minecraft/class_516; field_55504 EMPTY + m ()Z method_2655 hasCraftableRecipes + m (Lnet/minecraft/class_10298;)Z method_2653 isCraftable + p 1 recipeId + m (Lnet/minecraft/class_9875;Ljava/util/function/Predicate;)V method_64884 populateRecipes + p 2 displayablePredicate + p 1 finder + m ()Ljava/util/List; method_2650 getAllRecipes + m (Ljava/util/List;)V + p 1 entries + m (Lnet/minecraft/class_10298;)Z method_64887 method_64887 + p 1 recipeId + m (Lnet/minecraft/class_516$class_9937;)Ljava/util/List; method_64885 filter + p 1 filterMode + m ()Z method_64886 hasDisplayableRecipes +c net/minecraft/class_516$class_9937 net/minecraft/client/gui/screen/recipebook/RecipeResultCollection$RecipeFilterMode + f Lnet/minecraft/class_516$class_9937; field_52849 NOT_CRAFTABLE + f Lnet/minecraft/class_516$class_9937; field_52848 CRAFTABLE + f Lnet/minecraft/class_516$class_9937; field_52847 ANY +c net/minecraft/class_514 net/minecraft/client/gui/screen/recipebook/AnimatedResultButton + f Lnet/minecraft/class_2561; field_26595 MORE_RECIPES_TEXT + f Z field_55503 allResultsEqual + f Lnet/minecraft/class_9938; field_52846 currentIndexProvider + f Ljava/util/List; field_54834 results + f Lnet/minecraft/class_2960; field_45555 SLOT_MANY_CRAFTABLE_TEXTURE + f F field_3139 bounce + f Lnet/minecraft/class_516; field_3142 resultCollection + f Lnet/minecraft/class_2960; field_45558 SLOT_UNCRAFTABLE_TEXTURE + f Lnet/minecraft/class_2960; field_45557 SLOT_MANY_UNCRAFTABLE_TEXTURE + f Lnet/minecraft/class_2960; field_45556 SLOT_CRAFTABLE_TEXTURE + m ()Z method_2642 hasSingleResult + m ()Lnet/minecraft/class_516; method_2645 getResultCollection + m (Lnet/minecraft/class_9938;)V + p 1 currentIndexProvider + m (Lnet/minecraft/class_514$class_10330;)Ljava/util/stream/Stream; method_65811 method_65811 + p 0 result + m (Lnet/minecraft/class_10352;Lnet/minecraft/class_10297;)Lnet/minecraft/class_514$class_10330; method_64880 method_64880 + p 1 entry + m ()Lnet/minecraft/class_10298; method_64881 getCurrentId + m (Lnet/minecraft/class_516;ZLnet/minecraft/class_513;Lnet/minecraft/class_10352;)V method_2640 showResultCollection + p 4 context + p 3 results + p 2 filteringCraftable + p 1 resultCollection + m ()Z method_62048 hasMultipleResults + m (Lnet/minecraft/class_1799;)Ljava/util/List; method_2644 getTooltip + p 1 stack + m ()Lnet/minecraft/class_1799; method_64882 getDisplayStack + m (Ljava/util/List;)Z method_65812 areAllResultsEqual + p 0 results +c net/minecraft/class_514$class_10330 net/minecraft/client/gui/screen/recipebook/AnimatedResultButton$Result + f Ljava/util/List; comp_3291 displayItems + f Lnet/minecraft/class_10298; comp_3290 id + m (I)Lnet/minecraft/class_1799; method_64883 getDisplayStack + p 1 currentIndex + m ()Ljava/util/List; comp_3291 displayItems + m ()Lnet/minecraft/class_10298; comp_3290 id + m (Lnet/minecraft/class_10298;Ljava/util/List;)V + p 1 id + p 2 displayItems +c net/minecraft/class_513 net/minecraft/client/gui/screen/recipebook/RecipeBookResults + f Z field_52844 filteringCraftable + f Lnet/minecraft/class_2561; field_64550 NEXT_PAGE_TOOLTIP + f Lnet/minecraft/class_514; field_3129 hoveredResultButton + f Lnet/minecraft/class_10298; field_3125 lastClickedRecipe + f Lnet/minecraft/class_299; field_3136 recipeBook + f Lnet/minecraft/class_310; field_3126 client + f Ljava/util/List; field_3127 resultCollections + f Lnet/minecraft/class_344; field_3128 nextPageButton + f I field_3135 currentPage + f Ljava/util/List; field_3131 resultButtons + f Lnet/minecraft/class_344; field_3130 prevPageButton + f Lnet/minecraft/class_8666; field_45553 PAGE_BACKWARD_TEXTURES + f Lnet/minecraft/class_2561; field_64551 PREVIOUS_PAGE_TOOLTIP + f Lnet/minecraft/class_508; field_3132 alternatesWidget + f Lnet/minecraft/class_507; field_54832 recipeBookWidget + f I field_3124 pageCount + f Lnet/minecraft/class_516; field_3133 resultCollection + f Lnet/minecraft/class_8666; field_45552 PAGE_FORWARD_TEXTURES + m (Ljava/util/function/Consumer;)V method_37083 forEachButton + p 1 action + m (Lnet/minecraft/class_332;IIIIF)V method_2634 draw + p 3 y + p 4 mouseX + p 5 mouseY + p 6 deltaTicks + p 1 context + p 2 x + m (Ljava/util/List;ZZ)V method_2627 setResults + p 2 resetCurrentPage + p 3 filteringCraftable + p 1 resultCollections + m ()V method_2625 refreshResultButtons + m (Lnet/minecraft/class_10298;)V method_64879 onRecipeDisplayed + p 1 recipeId + m ()Lnet/minecraft/class_516; method_2635 getLastClickedResults + m (Lnet/minecraft/class_11909;IIIIZ)Z method_2632 mouseClicked + p 5 height + p 6 doubled + p 1 click + p 2 left + p 3 top + p 4 width + m (Lnet/minecraft/class_507;Lnet/minecraft/class_9938;Z)V + p 2 currentIndexProvider + p 1 recipeBookWidget + p 3 furnace + m ()Lnet/minecraft/class_299; method_2633 getRecipeBook + m ()Lnet/minecraft/class_10298; method_64878 getLastClickedRecipe + m (Lnet/minecraft/class_332;II)V method_2628 drawTooltip + p 3 y + p 2 x + p 1 context + m (Lnet/minecraft/class_310;II)V method_2636 initialize + p 3 parentTop + p 1 client + p 2 parentLeft + m ()V method_2638 hideAlternates + m ()V method_2626 hideShowPageButtons +c net/minecraft/class_3235 net/minecraft/world/tick/MultiTickScheduler + f Ljava/util/function/Function; field_35552 mapper + m (Ljava/util/function/Function;)V + p 1 mapper +c net/minecraft/class_5898 net/minecraft/network/packet/s2c/play/WorldBorderWarningTimeChangedS2CPacket + f Lnet/minecraft/class_9139; field_47971 CODEC + f I field_29149 warningTime + m (Lnet/minecraft/class_2602;)V method_34165 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()I method_34166 getWarningTime + m (Lnet/minecraft/class_2540;)V method_55918 write + p 1 buf + m (Lnet/minecraft/class_2784;)V + p 1 worldBorder +c net/minecraft/class_5897 net/minecraft/network/packet/s2c/play/WorldBorderSizeChangedS2CPacket + f D field_29148 sizeLerpTarget + f Lnet/minecraft/class_9139; field_47970 CODEC + m (Lnet/minecraft/class_2602;)V method_34163 apply + m ()D method_34164 getSizeLerpTarget + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2784;)V + p 1 worldBorder + m (Lnet/minecraft/class_2540;)V method_55917 write + p 1 buf +c net/minecraft/class_5899 net/minecraft/network/packet/s2c/play/WorldBorderWarningBlocksChangedS2CPacket + f I field_29150 warningBlocks + f Lnet/minecraft/class_9139; field_47972 CODEC + m (Lnet/minecraft/class_2784;)V + p 1 worldBorder + m (Lnet/minecraft/class_2602;)V method_34167 apply + m ()I method_34168 getWarningBlocks + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_55919 write + p 1 buf +c net/minecraft/class_3238 net/minecraft/network/handler/LegacyQueryHandler + f Lorg/slf4j/Logger; field_14101 LOGGER + f Lnet/minecraft/class_8599; field_44998 server + m (Lio/netty/buffer/ByteBuf;)Z method_52380 isLegacyQuery + p 0 buf + m (Lnet/minecraft/class_8599;)Ljava/lang/String; method_52379 getResponseFor1_2 + p 0 server + m (Lio/netty/buffer/ByteBufAllocator;Ljava/lang/String;)Lio/netty/buffer/ByteBuf; method_52381 createBuf + p 0 allocator + p 1 string + m (Lnet/minecraft/class_8599;)V + p 1 server + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V channelRead channelRead + p 1 ctx + p 2 msg + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;)V method_14344 reply + p 1 buf + p 0 context + m (Lnet/minecraft/class_8599;)Ljava/lang/String; method_52382 getResponse + p 0 server +c net/minecraft/class_4568 net/minecraft/loot/condition/ReferenceLootCondition + f Lnet/minecraft/class_5321; comp_1869 id + f Lorg/slf4j/Logger; field_20763 LOGGER + f Lcom/mojang/serialization/MapCodec; field_45861 CODEC + m ()Lnet/minecraft/class_5321; comp_1869 id + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53411 method_53411 + p 0 instance + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_5341$class_210; method_35555 builder + p 0 key + m (Lnet/minecraft/class_47;)Z method_22579 test + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lnet/minecraft/class_58;Lnet/minecraft/class_6880$class_6883;)V method_51230 method_51230 + p 2 entry + m (Lnet/minecraft/class_5321;)V + p 1 id +c net/minecraft/class_3231 net/minecraft/server/network/EntityTrackerEntry + f I field_14043 updatesWithoutVehicle + f Ljava/util/List; field_41697 changedEntries + f I field_14037 tickInterval + f Lorg/slf4j/Logger; field_14041 LOGGER + f B field_14059 lastHeadYaw + f B field_14047 lastPitch + f Lnet/minecraft/class_243; field_18278 velocity + f Z field_14036 lastOnGround + f Ljava/util/List; field_14045 lastPassengers + f I field_14040 trackingTick + f Lnet/minecraft/class_7422; field_39019 trackedPos + f Lnet/minecraft/class_3218; field_18258 world + f B field_14060 lastYaw + f Z field_14051 hadVehicle + f Z field_14039 alwaysUpdateVelocity + f Lnet/minecraft/class_3231$class_12004; field_62840 packetSender + f Lnet/minecraft/class_1297; field_14049 entity + m (Lnet/minecraft/class_3222;)V method_18760 startTracking + p 1 player + m ()Lnet/minecraft/class_243; method_60942 getPos + m ()V method_14306 syncEntityData + c Synchronizes tracked data and attributes + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;IZLnet/minecraft/class_3231$class_12004;)V + p 5 packetSender + p 2 entity + p 1 world + p 4 alwaysUpdateVelocity + p 3 tickInterval + m ()V method_18756 tick + m (Lnet/minecraft/class_3222;)V method_14302 stopTracking + p 1 player + m (Lnet/minecraft/class_3222;Ljava/util/function/Consumer;)V method_18757 sendPackets + p 1 player + p 2 sender + m ()F method_60945 getYaw + m (Lnet/minecraft/class_9879;BBZ)V method_61268 tickExperimentalMinecart + p 1 controller + p 4 changedAngles + p 2 yaw + p 3 pitch + m (Ljava/util/List;Lnet/minecraft/class_3222;)Z method_74532 method_74532 + p 2 player + m ()Lnet/minecraft/class_243; method_60943 getVelocity + m ()F method_60946 getHeadYaw + m ()F method_60944 getPitch +c net/minecraft/class_3231$class_12004 net/minecraft/server/network/EntityTrackerEntry$TrackerPacketSender + m (Lnet/minecraft/class_2596;)V method_18734 sendToSelfAndListeners + p 1 packet + m (Lnet/minecraft/class_2596;)V method_18730 sendToListeners + p 1 packet + m (Lnet/minecraft/class_2596;Ljava/util/function/Predicate;)V method_74531 sendToListenersIf + p 1 packet + p 2 predicate +c net/minecraft/class_5894 net/minecraft/network/packet/s2c/play/OverlayMessageS2CPacket + f Lnet/minecraft/class_9139; field_47967 CODEC + f Lnet/minecraft/class_2561; comp_2279 text + m (Lnet/minecraft/class_2602;)V method_34154 apply + m ()Lnet/minecraft/class_2561; comp_2279 text + m (Lnet/minecraft/class_2561;)V + p 1 text +c net/minecraft/class_3232 net/minecraft/world/gen/chunk/FlatChunkGeneratorConfig + f Ljava/util/List; field_40918 features + f Z field_24976 hasFeatures + f Lcom/mojang/serialization/Codec; field_24975 CODEC + f Lorg/slf4j/Logger; field_14064 LOGGER + f Z field_24977 hasLakes + f Z field_14077 hasNoTerrain + f Ljava/util/List; field_14082 layerBlocks + f Ljava/util/List; field_14072 layers + f Ljava/util/Optional; field_37145 structureOverrides + f Lnet/minecraft/class_6880; field_14081 biome + m (Lnet/minecraft/class_2680;)Z method_34741 method_34741 + p 0 state + m (Ljava/util/List;Ljava/util/Optional;Lnet/minecraft/class_6880;)Lnet/minecraft/class_3232; method_46727 with + p 2 structureOverrides + p 1 layers + p 3 biome + m (Lnet/minecraft/class_3232;)Ljava/lang/Boolean; method_30047 method_30047 + p 0 config + m ()Ljava/util/List; method_14327 getLayers + m (Lnet/minecraft/class_3232;)Ljava/util/Optional; method_31182 method_31182 + p 0 config + m ()V method_14330 updateLayerBlocks + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28913 method_28913 + p 0 instance + m ()Ljava/util/Optional; method_41139 getStructureOverrides + m ()V method_28911 enableFeatures + m (Lnet/minecraft/class_3232;)Ljava/lang/Boolean; method_30046 method_30046 + p 0 config + m ()Lnet/minecraft/class_6880; method_14326 getBiome + m ()Ljava/util/List; method_14312 getLayerBlocks + m (Ljava/util/Optional;Lnet/minecraft/class_6880;)Lnet/minecraft/class_6880; method_46728 getBiome + p 0 biome + p 1 fallback + m (Lnet/minecraft/class_3232;)Ljava/util/Optional; method_41140 method_41140 + p 0 config + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_5485; method_44225 createGenerationSettings + p 1 biomeEntry + m (Lnet/minecraft/class_7871;)Lnet/minecraft/class_6880; method_46726 getPlains + p 0 biomeLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_3232; method_14309 getDefaultConfig + p 0 biomeLookup + p 2 featureLookup + p 1 structureSetLookup + m (Ljava/util/Optional;Lnet/minecraft/class_6880;Ljava/util/List;)V + p 3 features + p 1 structureOverrides + p 2 biome + m ()V method_28916 enableLakes + m (Ljava/util/Optional;Ljava/util/List;ZZLjava/util/Optional;Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;)V + p 8 surfaceLavaLakeFeature + p 5 biome + p 4 features + p 7 undergroundLavaLakeFeature + p 6 fallback + p 1 structureOverrides + p 3 lakes + p 2 layers + m (Lnet/minecraft/class_7871;)Ljava/util/List; method_46729 getLavaLakes + p 0 featureLookup + m (Lnet/minecraft/class_3232;)Lcom/mojang/serialization/DataResult; method_33067 checkHeight + p 0 config +c net/minecraft/class_3233 net/minecraft/world/ChunkRegion + f Ljava/util/concurrent/atomic/AtomicLong; field_35442 tickOrder + f Lnet/minecraft/class_9770; field_51876 generationStep + f Ljava/util/function/Supplier; field_33756 currentlyGeneratingStructureName + f J field_14087 seed + f Lnet/minecraft/class_2791; field_28557 centerPos + f Lorg/slf4j/Logger; field_14092 LOGGER + f Lnet/minecraft/class_2960; field_38683 WORLDGEN_REGION_RANDOM_ID + f Lnet/minecraft/class_3235; field_14094 fluidTickScheduler + f Lnet/minecraft/class_4543; field_20668 biomeAccess + f Lnet/minecraft/class_2874; field_14096 dimension + f Lnet/minecraft/class_3218; field_14093 world + f Lnet/minecraft/class_9762; field_14098 chunks + f Lnet/minecraft/class_3235; field_14099 blockTickScheduler + f Lnet/minecraft/class_5819; field_14091 random + f Lnet/minecraft/class_5217; field_14097 levelProperties + m (Lnet/minecraft/class_2338;)V method_14338 markBlockForPostProcessing + p 1 pos + m ()Lnet/minecraft/class_1923; method_33561 getCenterPos + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_6763; method_14337 method_14337 + p 1 pos + m (Lnet/minecraft/class_1923;I)Z method_42109 needsBlending + p 2 checkRadius + p 1 chunkPos + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_6763; method_14340 method_14340 + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9762;Lnet/minecraft/class_9770;Lnet/minecraft/class_2791;)V + p 1 world + p 3 generationStep + p 2 chunks + p 4 centerPos +c net/minecraft/class_5896 net/minecraft/network/packet/s2c/play/WorldBorderInterpolateSizeS2CPacket + f D field_29146 sizeLerpTarget + f Lnet/minecraft/class_9139; field_47969 CODEC + f J field_29147 sizeLerpTime + f D field_29145 size + m ()D method_34160 getSize + m ()D method_34161 getSizeLerpTarget + m (Lnet/minecraft/class_2602;)V method_34159 apply + m ()J method_34162 getSizeLerpTime + m (Lnet/minecraft/class_2540;)V method_55916 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2784;)V + p 1 worldBorder +c net/minecraft/class_4565 net/minecraft/command/DataCommandStorage + f Ljava/lang/String; field_31834 COMMAND_STORAGE_PREFIX + f Lnet/minecraft/class_26; field_20748 stateManager + f Ljava/util/Map; field_20747 storages + m (Ljava/lang/String;)Ljava/lang/String; method_22543 getSaveKey + p 0 namespace + m (Lnet/minecraft/class_26;)V + p 1 stateManager + m (Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_22545 method_22545 + p 0 entry + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2487; method_22546 get + p 1 id + m (Ljava/lang/String;)Lnet/minecraft/class_4565$class_4566; method_67438 getOrCreateStorage + p 1 namespace + m ()Ljava/util/stream/Stream; method_22542 getIds + m (Ljava/lang/String;)Lnet/minecraft/class_4565$class_4566; method_67437 getStorage + p 1 namespace + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2487;)V method_22547 set + p 1 id + p 2 nbt +c net/minecraft/class_4565$class_4566 net/minecraft/command/DataCommandStorage$PersistentState + f Lcom/mojang/serialization/Codec; field_56479 CODEC + f Ljava/util/Map; field_20749 map + m (Ljava/lang/String;)Ljava/util/stream/Stream; method_22554 getIds + p 1 namespace + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_2960; method_22551 method_22551 + p 1 key + m (Lnet/minecraft/class_4565$class_4566;)Ljava/util/Map; method_67440 method_67440 + p 0 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67439 method_67439 + p 0 instance + m (Ljava/lang/String;)Lnet/minecraft/class_10741; method_67441 createStateType + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_2487; method_22550 get + p 1 name + m (Ljava/util/Map;)V + p 1 map + m (Ljava/lang/String;Lnet/minecraft/class_2487;)V method_22552 set + p 1 name + p 2 nbt +c net/minecraft/class_5895 net/minecraft/network/packet/s2c/play/WorldBorderCenterChangedS2CPacket + f Lnet/minecraft/class_9139; field_47968 CODEC + f D field_29144 centerZ + f D field_29143 centerX + m (Lnet/minecraft/class_2602;)V method_34156 apply + m ()D method_34158 getCenterX + m ()D method_34157 getCenterZ + m (Lnet/minecraft/class_2540;)V method_55915 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2784;)V + p 1 worldBorder +c net/minecraft/class_3228 net/minecraft/server/world/ChunkTicket + c Represents a chunk ticket, which specifies the reason a chunk has been loaded. + f I field_14025 level + f J field_55597 ticksLeft + f Lcom/mojang/serialization/MapCodec; field_56415 CODEC + f Lnet/minecraft/class_3230; field_14023 type + m (Lnet/minecraft/class_3230;I)V + p 1 type + p 2 level + m ()V method_66023 tick + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67329 method_67329 + p 0 instance + m ()V method_66022 refreshExpiry + m ()I method_14283 getLevel + m ()Z method_66024 isExpired + m (Lnet/minecraft/class_3228;)Ljava/lang/Long; method_67328 method_67328 + p 0 ticket + m ()Lnet/minecraft/class_3230; method_14281 getType + m (Lnet/minecraft/class_3230;IJ)V + p 3 ticksLeft + p 2 level + p 1 type +c net/minecraft/class_3229 net/minecraft/world/gen/chunk/FlatChunkGeneratorLayer + f I field_14028 thickness + f Lnet/minecraft/class_2248; field_29566 block + f Lcom/mojang/serialization/Codec; field_24974 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28909 method_28909 + p 0 instance + m (ILnet/minecraft/class_2248;)V + p 2 block + p 1 thickness + m ()I method_14289 getThickness + m (Lnet/minecraft/class_3229;)Lnet/minecraft/class_2248; method_28910 method_28910 + p 0 layer + m ()Lnet/minecraft/class_2680; method_14286 getBlockState + m (I)Lnet/minecraft/class_3229; method_71778 withMaxThickness + p 1 maxThickness +c net/minecraft/class_4559 net/minecraft/predicate/StatePredicate + f Lcom/mojang/serialization/Codec; field_45777 CODEC + f Lcom/mojang/serialization/Codec; field_45778 CONDITION_LIST_CODEC + f Ljava/util/List; comp_1830 conditions + f Lnet/minecraft/class_9139; field_49396 PACKET_CODEC + m (Ljava/util/List;)Ljava/util/Map; method_53236 method_53236 + p 0 conditions + m (Ljava/util/Map;)Ljava/util/List; method_53238 method_53238 + p 0 states + m (Ljava/util/List;)V + p 1 conditions + m (Lnet/minecraft/class_3610;)Z method_22518 test + p 1 state + m ()Ljava/util/List; comp_1830 conditions + m (Lnet/minecraft/class_2689;)Ljava/util/Optional; method_53235 findMissing + p 1 stateManager + m (Lnet/minecraft/class_2689;Lnet/minecraft/class_2688;)Z method_22515 test + p 1 stateManager + p 2 container + m (Lnet/minecraft/class_2680;)Z method_22514 test + p 1 state + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_4559$class_4562; method_53237 method_53237 + p 0 state +c net/minecraft/class_4559$class_8750 net/minecraft/predicate/StatePredicate$ValueMatcher + f Lnet/minecraft/class_9139; field_49400 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_45781 CODEC + m (Lnet/minecraft/class_2688;Lnet/minecraft/class_2769;)Z method_22532 test + p 1 state + p 2 property + m (Lnet/minecraft/class_4559$class_8750;)Lcom/mojang/datafixers/util/Either; method_53243 method_53243 + p 0 valueMatcher + m (Lnet/minecraft/class_4559$class_8750;)Lcom/mojang/datafixers/util/Either; method_57564 method_57564 + p 0 valueMatcher +c net/minecraft/class_4559$class_4560 net/minecraft/predicate/StatePredicate$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_20738 conditions + m (Lnet/minecraft/class_2769;Z)Lnet/minecraft/class_4559$class_4560; method_22527 exactMatch + p 2 value + p 1 property + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Lnet/minecraft/class_4559$class_4560; method_22525 exactMatch + p 1 property + p 2 value + m ()Lnet/minecraft/class_4559$class_4560; method_22523 create + m ()Ljava/util/Optional; method_22528 build + m (Lnet/minecraft/class_2769;Ljava/lang/String;)Lnet/minecraft/class_4559$class_4560; method_22526 exactMatch + p 2 valueName + p 1 property + m (Lnet/minecraft/class_2769;I)Lnet/minecraft/class_4559$class_4560; method_22524 exactMatch + p 2 value + p 1 property +c net/minecraft/class_4559$class_4561 net/minecraft/predicate/StatePredicate$ExactValueMatcher + f Lcom/mojang/serialization/Codec; field_45779 CODEC + f Lnet/minecraft/class_9139; field_49397 PACKET_CODEC + f Ljava/lang/String; comp_1831 value + m (Ljava/lang/String;)V + p 1 key + m ()Ljava/lang/String; comp_1831 value +c net/minecraft/class_4559$class_4562 net/minecraft/predicate/StatePredicate$Condition + f Lnet/minecraft/class_9139; field_49398 PACKET_CODEC + f Ljava/lang/String; comp_1832 key + f Lnet/minecraft/class_4559$class_8750; comp_1833 valueMatcher + m (Ljava/lang/String;Lnet/minecraft/class_4559$class_8750;)V + p 1 key + p 2 valueMatcher + m ()Ljava/lang/String; comp_1832 key + m (Lnet/minecraft/class_2689;Lnet/minecraft/class_2688;)Z method_22530 test + p 1 stateManager + p 2 state + m (Lnet/minecraft/class_2689;)Ljava/util/Optional; method_22531 reportMissing + p 1 factory + m ()Lnet/minecraft/class_4559$class_8750; comp_1833 valueMatcher +c net/minecraft/class_4559$class_4563 net/minecraft/predicate/StatePredicate$RangedValueMatcher + f Lnet/minecraft/class_9139; field_49399 PACKET_CODEC + f Ljava/util/Optional; comp_1835 max + f Lcom/mojang/serialization/Codec; field_45780 CODEC + f Ljava/util/Optional; comp_1834 min + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53239 method_53239 + p 0 instance + m ()Ljava/util/Optional; comp_1835 max + m ()Ljava/util/Optional; comp_1834 min + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 min + p 2 max +c net/minecraft/class_508 net/minecraft/client/gui/screen/recipebook/RecipeAlternativesWidget + f Lnet/minecraft/class_10298; field_3104 lastClickedRecipe + f Lnet/minecraft/class_9938; field_52829 currentIndexProvider + f I field_3105 buttonX + f I field_3103 buttonY + f Lnet/minecraft/class_2960; field_45541 OVERLAY_RECIPE_TEXTURE + f Lnet/minecraft/class_516; field_3111 resultCollection + f Z field_3107 visible + f Ljava/util/List; field_3106 alternativeButtons + f Z field_3112 furnace + m ()Z method_2616 isVisible + m ()Lnet/minecraft/class_516; method_2614 getResults + m (Lnet/minecraft/class_9938;Z)V + p 2 furnace + p 1 currentIndexProvider + m (Z)V method_2613 setVisible + p 1 visible + m (Lnet/minecraft/class_516;Lnet/minecraft/class_10352;ZIIIIF)V method_2617 showAlternativesForResult + p 7 areaCenterY + p 8 delta + p 5 buttonY + p 6 areaCenterX + p 3 filteringCraftable + p 4 buttonX + p 1 resultCollection + p 2 context + m ()Lnet/minecraft/class_10298; method_2615 getLastClickedRecipe +c net/minecraft/class_508$class_9936 net/minecraft/client/gui/screen/recipebook/RecipeAlternativesWidget$CraftingAlternativeButtonWidget + f Lnet/minecraft/class_2960; field_52832 CRAFTING_OVERLAY_DISABLED + f Lnet/minecraft/class_2960; field_52833 CRAFTING_OVERLAY_DISABLED_HIGHLIGHTED + f Lnet/minecraft/class_2960; field_52830 CRAFTING_OVERLAY + f Lnet/minecraft/class_2960; field_52831 CRAFTING_OVERLAY_HIGHLIGHTED + m (Lnet/minecraft/class_10352;Ljava/util/List;Lnet/minecraft/class_10302;III)V method_62037 method_62037 + p 5 y + p 2 slot + p 4 x + p 3 index + m (Lnet/minecraft/class_10295;Lnet/minecraft/class_10352;)Ljava/util/List; method_62036 collectInputSlots + p 1 context + p 0 display + m (Lnet/minecraft/class_508;IILnet/minecraft/class_10298;Lnet/minecraft/class_10295;Lnet/minecraft/class_10352;Z)V + p 4 recipeId + p 3 y + p 6 context + p 5 display + p 2 x + p 7 craftable +c net/minecraft/class_508$class_511 net/minecraft/client/gui/screen/recipebook/RecipeAlternativesWidget$FurnaceAlternativeButtonWidget + f Lnet/minecraft/class_2960; field_52838 FURNACE_OVERLAY_DISABLED_HIGHLIGHTED + f Lnet/minecraft/class_2960; field_52837 FURNACE_OVERLAY_DISABLED + f Lnet/minecraft/class_2960; field_52836 FURNACE_OVERLAY_HIGHLIGHTED + f Lnet/minecraft/class_2960; field_52835 FURNACE_OVERLAY + m (Lnet/minecraft/class_10295;Lnet/minecraft/class_10352;)Ljava/util/List; method_2619 alignRecipe + p 1 context + p 0 display + m (Lnet/minecraft/class_508;IILnet/minecraft/class_10298;Lnet/minecraft/class_10295;Lnet/minecraft/class_10352;Z)V + p 2 x + p 3 y + p 4 recipeId + p 5 display + p 6 context + p 7 craftable +c net/minecraft/class_508$class_509 net/minecraft/client/gui/screen/recipebook/RecipeAlternativesWidget$AlternativeButtonWidget + f Lnet/minecraft/class_10298; field_3114 recipeId + f Z field_3115 craftable + f Ljava/util/List; field_52834 inputSlots + m (Lnet/minecraft/class_508;IILnet/minecraft/class_10298;ZLjava/util/List;)V + p 6 inputSlots + p 5 craftable + p 2 x + p 4 recipeId + p 3 y + m (IILjava/util/List;)Lnet/minecraft/class_508$class_509$class_510; method_62040 slot + p 2 stacks + p 1 y + p 0 x + m (Z)Lnet/minecraft/class_2960; method_62039 getOverlayTexture + p 1 enabled +c net/minecraft/class_508$class_509$class_510 net/minecraft/client/gui/screen/recipebook/RecipeAlternativesWidget$AlternativeButtonWidget$InputSlot + f I comp_2985 y + f Ljava/util/List; comp_2987 stacks + f I comp_2986 x + m ()I comp_2985 y + m ()Ljava/util/List; comp_2987 stacks + m ()I comp_2986 x + m (IILjava/util/List;)V + p 2 y + p 1 y + p 3 stacks + m (I)Lnet/minecraft/class_1799; method_62041 get + p 1 index +c net/minecraft/class_507 net/minecraft/client/gui/screen/recipebook/RecipeBookWidget + f Lnet/minecraft/class_299; field_3096 recipeBook + f Lnet/minecraft/class_8666; field_45550 BUTTON_TEXTURES + f Z field_33679 open + f Lnet/minecraft/class_9875; field_3090 recipeFinder + f Lnet/minecraft/class_1729; field_3095 craftingScreenHandler + f Lnet/minecraft/class_512; field_3098 currentTab + f Z field_34001 narrow + f F field_52842 displayTime + f Lnet/minecraft/class_10298; field_54830 selectedRecipeId + f Ljava/lang/String; field_3099 searchText + f I field_3100 parentHeight + f Z field_3087 searching + f Lnet/minecraft/class_2561; field_25711 SEARCH_HINT_TEXT + f Lnet/minecraft/class_342; field_3089 searchField + f Lnet/minecraft/class_5676; field_3088 toggleCraftableButton + f Ljava/util/List; field_54831 tabs + f Lnet/minecraft/class_9934; field_52843 ghostRecipe + f I field_3101 parentWidth + f Lnet/minecraft/class_8030; field_54388 searchFieldRect + f Lnet/minecraft/class_2960; field_3097 TEXTURE + f Lnet/minecraft/class_310; field_3091 client + f I field_3093 cachedInvChangeCount + f Ljava/util/List; field_3094 tabButtons + f Lnet/minecraft/class_2561; field_26594 TOGGLE_ALL_RECIPES_TEXT + f Lnet/minecraft/class_516; field_53833 selectedRecipeResults + f I field_3102 leftOffset + f Lnet/minecraft/class_10298; field_53832 selectedRecipe + f Lnet/minecraft/class_513; field_3086 recipesArea + m (Lnet/minecraft/class_512;)Z method_2582 method_2582 + p 1 button + m ()V method_2589 toggleFilteringCraftable + m (Z)V method_2606 refreshTabButtons + p 1 filteringCraftable + m ()V method_65072 populateAllRecipes + m ()I method_64367 getLeft + m (Lnet/minecraft/class_516;Lnet/minecraft/class_10298;Z)Z method_62889 select + p 1 results + p 2 recipeId + p 3 craftAll + m (Lnet/minecraft/class_1735;)V method_62044 onMouseClick + p 1 slot + m (Lnet/minecraft/class_10298;)V method_64876 onRecipeDisplayed + p 1 recipeId + m (Lnet/minecraft/class_1729;Ljava/util/List;)V + p 2 tabs + p 1 craftingScreenHandler + m (Ljava/lang/Boolean;)Lnet/minecraft/class_7919; method_76633 method_76633 + p 1 value + m (Ljava/lang/String;)V method_2576 triggerPirateSpeakEasterEgg + p 1 search + m (Lnet/minecraft/class_332;Z)V method_2581 drawGhostSlots + p 1 context + p 2 resultHasPadding + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)Lnet/minecraft/class_2960; method_76634 method_76634 + p 2 value + p 1 button + m ()V method_2586 refreshSearchResults + m (ZZ)V method_2603 refreshResults + p 1 resetCurrentPage + p 2 filteringCraftable + m ()V method_2590 update + m ()Lnet/minecraft/class_8666; method_76629 getBookButtonTextures + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_76631 method_76631 + p 1 button + p 2 value + m (Lnet/minecraft/class_10295;)V method_64875 onCraftFailed + p 1 display + m (Z)V method_2593 setOpen + p 1 opened + m ()Lnet/minecraft/class_2561; method_17064 getToggleCraftableButtonText + m (Lnet/minecraft/class_1735;)Z method_62023 isCraftingSlot + c {@return whether a slot is involved in crafting for this recipe book widget's recipes} + p 1 slot + m ()Z method_2604 isWide + m (Lnet/minecraft/class_516;)Z method_2584 method_2584 + p 0 resultCollection + m ()V method_2587 refreshInputs + m ()Z method_62045 isFilteringCraftable + m ()V method_2579 reset + m ()V method_2591 toggleOpen + m (Lnet/minecraft/class_516;Lnet/minecraft/class_9875;)V method_62024 populateRecipes + p 2 recipeFinder + p 1 recipeResultCollection + m (Lit/unimi/dsi/fastutil/objects/ObjectSet;Lnet/minecraft/class_516;)Z method_53871 method_53871 + p 1 resultCollection + m (Lnet/minecraft/class_4185;)V method_76630 onTabSelected + p 1 button + m (Lnet/minecraft/class_9934;Lnet/minecraft/class_10295;Lnet/minecraft/class_10352;)V method_64868 showGhostRecipe + p 1 ghostRecipe + p 2 display + p 3 context + m ()V method_2588 sendBookDataPacket + m (Lnet/minecraft/class_512;)V method_76632 setCurrentTab + p 1 currentTab + m ()Z method_2605 isOpen + m ()V method_2592 refresh + m (IILnet/minecraft/class_310;Z)V method_2597 initialize + p 4 narrow + p 1 parentWidth + p 3 client + p 2 parentHeight + m ()I method_64366 getTop + m (Ljava/util/List;Lnet/minecraft/class_339;)V method_37308 method_37308 + p 1 button + m (DDIIII)Z method_2598 isClickOutsideBounds + p 8 backgroundHeight + p 7 backgroundWidth + p 6 y + p 5 x + p 3 mouseY + p 1 mouseX + m ()Z method_36485 isGuiOpen + m (Lnet/minecraft/class_516;)Z method_64877 method_64877 + p 0 resultCollection + m (Lnet/minecraft/class_332;IILnet/minecraft/class_1735;)V method_2601 drawTooltip + p 3 y + p 2 x + p 4 slot + p 1 context + m (II)I method_2595 findLeftEdge + p 1 width + p 2 backgroundWidth +c net/minecraft/class_507$class_10329 net/minecraft/client/gui/screen/recipebook/RecipeBookWidget$Tab + f Ljava/util/Optional; comp_3288 secondaryIcon + f Lnet/minecraft/class_10287; comp_3289 category + f Lnet/minecraft/class_1799; comp_3287 primaryIcon + m (Lnet/minecraft/class_10331;)V + p 1 type + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_10355;)V + p 2 category + p 1 primaryIcon + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;Lnet/minecraft/class_10355;)V + p 3 category + p 2 secondaryIcon + p 1 primaryIcon + m ()Lnet/minecraft/class_10287; comp_3289 category + m ()Lnet/minecraft/class_1799; comp_3287 primaryIcon + m ()Ljava/util/Optional; comp_3288 secondaryIcon + m (Lnet/minecraft/class_1799;Ljava/util/Optional;Lnet/minecraft/class_10287;)V + p 1 primaryIcon + p 2 secondaryIcon + p 3 category +c net/minecraft/class_9421 net/minecraft/advancement/criterion/FallAfterExplosionCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_47;Lnet/minecraft/class_9421$class_9422;)Z method_58359 method_58359 + p 4 conditions + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_243;Lnet/minecraft/class_1297;)V method_58358 trigger + p 3 cause + p 1 player + p 2 startPosition +c net/minecraft/class_9421$class_9422 net/minecraft/advancement/criterion/FallAfterExplosionCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_49978 CODEC + f Ljava/util/Optional; comp_2489 distance + f Ljava/util/Optional; comp_2488 startPosition + f Ljava/util/Optional; comp_2490 cause + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58362 method_58362 + p 0 instance + m (Lnet/minecraft/class_2025;Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_175; method_58361 create + p 0 distance + p 1 cause + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_47;)Z method_58360 matches + p 1 world + p 4 cause + p 2 startPosition + p 3 endPosition + m ()Ljava/util/Optional; comp_2489 distance + m ()Ljava/util/Optional; comp_2488 startPosition + m ()Ljava/util/Optional; comp_2490 cause + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 startPosition + p 3 distance + p 4 cause +c net/minecraft/class_9429 net/minecraft/loot/function/ToggleTooltipsLootFunction + f Lcom/mojang/serialization/MapCodec; field_50027 CODEC + f Ljava/util/Map; field_50030 toggles + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58467 method_58467 + p 0 instance + m (Ljava/util/List;Ljava/util/Map;)V + p 2 toggles + p 1 conditions + m (Lnet/minecraft/class_9429;)Ljava/util/Map; method_58465 method_58465 + p 0 lootFunction +c net/minecraft/class_9428 net/minecraft/item/map/MapDecorationType + f I field_50016 NO_MAP_COLOR + f Lcom/mojang/serialization/Codec; field_50017 CODEC + f Lnet/minecraft/class_9139; field_50018 PACKET_CODEC + f Lnet/minecraft/class_2960; comp_2514 assetId + f Z comp_2515 showOnItemFrame + f Z comp_2517 explorationMapElement + f I comp_2516 mapColor + f Z comp_2518 trackCount + m ()Z method_58452 hasMapColor + m ()I comp_2516 mapColor + m ()Z comp_2515 showOnItemFrame + m ()Z comp_2518 trackCount + m ()Z comp_2517 explorationMapElement + m ()Lnet/minecraft/class_2960; comp_2514 assetId + m (Lnet/minecraft/class_2960;ZIZZ)V + p 1 assetId + p 2 showOnItemFrame + p 3 mapColor + p 4 explorationMapElement + p 5 trackCount +c net/minecraft/class_9424 net/minecraft/component/type/ToolComponent + f Lcom/mojang/serialization/Codec; field_50009 CODEC + f Lnet/minecraft/class_9139; field_50010 PACKET_CODEC + f F comp_2499 defaultMiningSpeed + f Ljava/util/List; comp_2498 rules + f I comp_2500 damagePerBlock + f Z comp_3480 canDestroyBlocksInCreative + m (Lnet/minecraft/class_2680;)F method_58425 getSpeed + p 1 state + m (Lnet/minecraft/class_2680;)Z method_58426 isCorrectForDrops + p 1 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58424 method_58424 + p 0 instance + m ()Ljava/util/List; comp_2498 rules + m ()F comp_2499 defaultMiningSpeed + m ()Z comp_3480 canDestroyBlocksInCreative + m ()I comp_2500 damagePerBlock + m (Ljava/util/List;FIZ)V + p 1 rules + p 2 defaultMiningSpeed + p 3 damagePerBlock + p 4 canDestroyBlocksInCreative +c net/minecraft/class_9424$class_9425 net/minecraft/component/type/ToolComponent$Rule + f Lcom/mojang/serialization/Codec; field_50011 CODEC + f Lnet/minecraft/class_9139; field_50012 PACKET_CODEC + f Ljava/util/Optional; comp_2503 correctForDrops + f Ljava/util/Optional; comp_2502 speed + f Lnet/minecraft/class_6885; comp_2501 blocks + m (Lnet/minecraft/class_6885;F)Lnet/minecraft/class_9424$class_9425; method_58431 ofAlwaysDropping + p 1 speed + p 0 blocks + m (Lnet/minecraft/class_6885;F)Lnet/minecraft/class_9424$class_9425; method_58434 of + p 1 speed + p 0 blocks + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58430 method_58430 + p 0 instance + m (Lnet/minecraft/class_6885;)Lnet/minecraft/class_9424$class_9425; method_58427 ofNeverDropping + p 0 blocks + m ()Ljava/util/Optional; comp_2503 correctForDrops + m ()Ljava/util/Optional; comp_2502 speed + m ()Lnet/minecraft/class_6885; comp_2501 blocks + m (Lnet/minecraft/class_6885;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 blocks + p 2 speed + p 3 correctForDrops +c net/minecraft/class_12252 net/minecraft/unused/packageinfo/PackageInfo12252 +c net/minecraft/class_12250 net/minecraft/client/render/TextureTransform + f Ljava/util/function/Supplier; field_64073 transformSupplier + f Ljava/lang/String; field_64072 name + f Lnet/minecraft/class_12250; field_64068 DEFAULT_TEXTURING + f Lnet/minecraft/class_12250; field_64069 GLINT_TEXTURING + f Lnet/minecraft/class_12250; field_64071 ARMOR_ENTITY_GLINT_TEXTURING + f Lnet/minecraft/class_12250; field_64070 ENTITY_GLINT_TEXTURING + m (Ljava/lang/String;Ljava/util/function/Supplier;)V + p 2 transformSupplier + p 1 name + m (F)Lorg/joml/Matrix4f; method_76031 getGlintTransformation + p 0 scale + m ()Lorg/joml/Matrix4f; method_76030 getTransformSupplier +c net/minecraft/class_12250$class_12251 net/minecraft/client/render/TextureTransform$OffsetTexturing + m (FF)V + p 2 dv + p 1 du +c net/minecraft/class_12256 net/minecraft/datafixer/fix/WorldBorderWarningTimeFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_12255 net/minecraft/datafixer/fix/GameRuleRegistryFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_76068 isTrue + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_76069 isFalse + m (Lcom/mojang/serialization/Dynamic;II)Lcom/mojang/serialization/Dynamic; method_76067 clamp + p 2 max + p 1 min + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_76065 clamp + m (Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; method_76066 clamp + p 1 min +c net/minecraft/class_12253 net/minecraft/client/texture/MipmapStrategy + f Ljava/lang/String; field_64082 name + f Lcom/mojang/serialization/Codec; field_64081 CODEC + f Lnet/minecraft/class_12253; field_64080 DARK_CUTOUT + f Lnet/minecraft/class_12253; field_64076 AUTO + f Lnet/minecraft/class_12253; field_64079 STRICT_CUTOUT + f Lnet/minecraft/class_12253; field_64077 MEAN + f Lnet/minecraft/class_12253; field_64078 CUTOUT + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_12259 net/minecraft/entity/LoadedEntityProcessor + f Lnet/minecraft/class_12259; field_64130 NOOP + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1297; method_76085 method_76085 + p 0 entity + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1297; process process + p 1 entity +c net/minecraft/class_12257 net/minecraft/datafixer/schema/Schema4656 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_8102 net/minecraft/server/command/DamageCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_42238 INVULNERABLE_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48752 method_48752 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48754 method_48754 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48753 method_48753 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48755 method_48755 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48749 method_48749 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;FLnet/minecraft/class_1282;)I method_48751 execute + p 3 damageSource + p 1 target + p 2 amount + p 0 source + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_48748 register + p 1 registryAccess + p 0 dispatcher +c net/minecraft/class_8103 net/minecraft/registry/tag/DamageTypeTags + f Lnet/minecraft/class_6862; field_42252 IS_FREEZING + f Lnet/minecraft/class_6862; field_42253 IS_LIGHTNING + f Lnet/minecraft/class_6862; field_42254 NO_ANGER + f Lnet/minecraft/class_6862; field_42255 NO_IMPACT + f Lnet/minecraft/class_6862; field_42256 ALWAYS_MOST_SIGNIFICANT_FALL + f Lnet/minecraft/class_6862; field_42250 IS_FALL + f Lnet/minecraft/class_6862; field_42251 IS_DROWNING + f Lnet/minecraft/class_6862; field_42257 WITHER_IMMUNE_TO + f Lnet/minecraft/class_6862; field_42258 IGNITES_ARMOR_STANDS + f Lnet/minecraft/class_6862; field_42259 BURNS_ARMOR_STANDS + f Lnet/minecraft/class_6862; field_42240 DAMAGES_HELMET + f Lnet/minecraft/class_6862; field_42241 BYPASSES_ARMOR + f Lnet/minecraft/class_6862; field_42242 BYPASSES_INVULNERABILITY + f Lnet/minecraft/class_6862; field_42243 BYPASSES_EFFECTS + f Lnet/minecraft/class_6862; field_42244 BYPASSES_RESISTANCE + f Lnet/minecraft/class_6862; field_42249 IS_EXPLOSION + f Lnet/minecraft/class_6862; field_42245 BYPASSES_ENCHANTMENTS + f Lnet/minecraft/class_6862; field_42246 IS_FIRE + f Lnet/minecraft/class_6862; field_42247 IS_PROJECTILE + f Lnet/minecraft/class_6862; field_42248 WITCH_RESISTANT_TO + f Lnet/minecraft/class_6862; field_42260 AVOIDS_GUARDIAN_THORNS + f Lnet/minecraft/class_6862; field_42261 ALWAYS_TRIGGERS_SILVERFISH + f Lnet/minecraft/class_6862; field_51990 PANIC_CAUSES + f Lnet/minecraft/class_6862; field_51991 PANIC_ENVIRONMENTAL_CAUSES + f Lnet/minecraft/class_6862; field_46230 CAN_BREAK_ARMOR_STAND + f Lnet/minecraft/class_6862; field_52380 MACE_SMASH + f Lnet/minecraft/class_6862; field_45065 NO_KNOCKBACK + f Lnet/minecraft/class_6862; field_49182 BYPASSES_WOLF_ARMOR + f Lnet/minecraft/class_6862; field_42970 ALWAYS_HURTS_ENDER_DRAGONS + f Lnet/minecraft/class_6862; field_42969 BYPASSES_COOLDOWN + f Lnet/minecraft/class_6862; field_56242 BYPASSES_SHIELD + f Lnet/minecraft/class_6862; field_46211 ALWAYS_KILLS_ARMOR_STANDS + f Lnet/minecraft/class_6862; field_50104 IS_PLAYER_ATTACK + f Lnet/minecraft/class_6862; field_51527 BURN_FROM_STEPPING + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_48762 of + p 0 id +c net/minecraft/class_9433 net/minecraft/command/argument/RegistryEntryArgumentType + f Ljava/util/Optional; field_60430 registry + f Lcom/mojang/serialization/Codec; field_50042 entryCodec + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_50037 FAILED_TO_PARSE_EXCEPTION + f Ljava/util/Collection; field_50038 EXAMPLES + f Lnet/minecraft/class_5321; field_60673 registryRef + f Lnet/minecraft/class_9408; field_60431 parser + f Lnet/minecraft/class_7225$class_7874; field_50040 registries + f Lcom/mojang/serialization/DynamicOps; field_60429 OPS + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_60428 NO_SUCH_ELEMENT_EXCEPTION + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_6880; method_58479 parse + m (Lnet/minecraft/class_7157;Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;)V + p 1 registryAccess + p 2 registry + p 3 entryCodec + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880; method_58485 getLootFunction + p 1 argument + p 0 context + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_71497 method_71497 + p 0 key + p 1 registryRef + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58483 method_58483 + p 0 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880; method_58490 getArgument + p 1 argument + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 2 suggestionsBuilder + p 1 context + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/class_9408;Lcom/mojang/serialization/DynamicOps;)Lnet/minecraft/class_6880; method_68814 parse + p 2 parser + p 3 ops + p 1 reader + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_9433$class_9435; method_58489 lootCondition + p 0 registryAccess + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_9433$class_9434; method_58486 lootFunction + p 0 registryAccess + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_9433$class_9436; method_58482 lootTable + p 0 registryAccess + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/DynamicOps;)Lnet/minecraft/class_9408; method_71495 createParser + p 1 ops + p 0 key + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_5321;Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Lnet/minecraft/class_9433$class_11382; method_71496 method_71496 + p 3 results + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880; method_58488 getLootCondition + p 0 context + p 1 argument + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_9433$class_11458; method_71780 dialog + p 0 registryAccess + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880; method_71779 getDialog + p 1 argument + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880; method_58481 getLootTable + p 0 context + p 1 argument +c net/minecraft/class_9433$class_11381 net/minecraft/command/argument/RegistryEntryArgumentType$ReferenceParser + f Lnet/minecraft/class_5321; comp_4273 key + m ()Lnet/minecraft/class_5321; comp_4273 key + m (Lnet/minecraft/class_5321;)V + p 1 key +c net/minecraft/class_9433$class_11380 net/minecraft/command/argument/RegistryEntryArgumentType$DirectParser + f Ljava/lang/Object; comp_4272 value + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_71498 method_71498 + p 1 error + m ()Ljava/lang/Object; comp_4272 value + m (Ljava/lang/Object;)V + p 1 value +c net/minecraft/class_9433$class_11382 net/minecraft/command/argument/RegistryEntryArgumentType$EntryParser + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/class_7225$class_7874;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Lnet/minecraft/class_7225$class_7226;)Lnet/minecraft/class_6880; method_71499 parse + p 4 codec + p 5 registryAccess + p 2 registries + p 3 ops + p 1 reader +c net/minecraft/class_9433$class_11458 net/minecraft/command/argument/RegistryEntryArgumentType$DialogArgumentType + m (Lnet/minecraft/class_7157;)V + p 1 registryAccess +c net/minecraft/class_9433$class_9434 net/minecraft/command/argument/RegistryEntryArgumentType$LootFunctionArgumentType + m (Lnet/minecraft/class_7157;)V + p 1 registryAccess +c net/minecraft/class_9433$class_9436 net/minecraft/command/argument/RegistryEntryArgumentType$LootTableArgumentType + m (Lnet/minecraft/class_7157;)V + p 1 registryAccess +c net/minecraft/class_9433$class_9435 net/minecraft/command/argument/RegistryEntryArgumentType$LootConditionArgumentType + m (Lnet/minecraft/class_7157;)V + p 1 registryAccess +c net/minecraft/class_9432 net/minecraft/loot/provider/number/StorageLootNumberProvider + f Lcom/mojang/serialization/MapCodec; field_50033 CODEC + f Lnet/minecraft/class_2203$class_2209; comp_2526 path + f Lnet/minecraft/class_2960; comp_2525 storage + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58470 method_58470 + p 0 instance + m (Lnet/minecraft/class_47;Ljava/lang/Number;)Ljava/lang/Number; method_58471 getNumber + p 2 fallback + p 1 context + m ()Lnet/minecraft/class_2960; comp_2525 storage + m ()Lnet/minecraft/class_2203$class_2209; comp_2526 path + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2203$class_2209;)V + p 1 storage + p 2 path +c net/minecraft/class_8100 net/minecraft/client/gui/screen/world/WorldCreator + f Lnet/minecraft/class_8100$class_4539; field_42213 gameMode + f Lnet/minecraft/class_8100$class_8101; field_42220 worldType + f Ljava/util/List; field_42221 normalWorldTypes + f Lnet/minecraft/class_1267; field_42214 difficulty + f Ljava/lang/Boolean; field_42215 cheatsEnabled + f Ljava/lang/String; field_42216 seed + f Lnet/minecraft/class_2561; field_43104 NEW_WORLD_NAME + f Ljava/util/List; field_42210 listeners + f Z field_42217 generateStructures + f Lnet/minecraft/class_7193; field_42219 generatorOptionsHolder + f Ljava/util/List; field_42222 extendedWorldTypes + f Ljava/nio/file/Path; field_43105 savesDirectory + f Z field_42218 bonusChestEnabled + f Lnet/minecraft/class_1928; field_42223 gameRules + f Ljava/lang/String; field_43106 worldDirectoryName + f Ljava/lang/String; field_42211 worldName + m (Lnet/minecraft/class_8100$class_8101;)V method_48705 setWorldType + p 1 worldType + m (Lnet/minecraft/class_6885$class_6888;)Ljava/util/List; method_48707 method_48707 + p 0 entryList + m ()Ljava/util/List; method_48733 getExtendedWorldTypes + m (Lnet/minecraft/class_7193;Lnet/minecraft/class_5321;)Ljava/util/Optional; method_64253 method_64253 + p 1 presetKey + m (Ljava/lang/String;)Ljava/lang/String; method_49704 toDirectoryName + p 1 worldName + m (Ljava/nio/file/Path;Lnet/minecraft/class_7193;Ljava/util/Optional;Ljava/util/OptionalLong;)V + p 1 savesDirectory + p 2 generatorOptionsHolder + p 3 defaultWorldType + p 4 seed + m (Lnet/minecraft/class_3232;)V method_64251 method_64251 + p 1 config + m ()Z method_48724 areCheatsEnabled + m ()V method_48695 update + m ()Ljava/lang/String; method_48715 getWorldName + m ()Lnet/minecraft/class_1267; method_48722 getDifficulty + m (Z)V method_48720 setBonusChestEnabled + p 1 bonusChestEnabled + m (Ljava/lang/String;)V method_48716 setSeed + p 1 seed + m ()Lnet/minecraft/class_8100$class_4539; method_48721 getGameMode + m ()Lnet/minecraft/class_7193; method_48728 getGeneratorOptionsHolder + m (Lnet/minecraft/class_7712;)Z method_48698 updateDataConfiguration + p 1 dataConfiguration + m (Lnet/minecraft/class_7193;Ljava/util/Optional;)Ljava/util/Optional; method_48703 getWorldPreset + p 1 key + p 0 generatorOptionsHolder + m ()Z method_48729 isDebug + m (Lnet/minecraft/class_7193$class_7195;)V method_48700 applyModifier + p 1 modifier + m (Lnet/minecraft/class_5285;)Lnet/minecraft/class_5285; method_48699 method_48699 + p 1 options + m (Lnet/minecraft/class_1267;)V method_48696 setDifficulty + p 1 difficulty + m (Ljava/util/function/Consumer;)V method_48712 addListener + p 1 listener + m (Z)V method_48717 setGenerateStructures + p 1 generateStructures + m (Lnet/minecraft/class_7193;)V method_48701 setGeneratorOptionsHolder + p 1 generatorOptionsHolder + m (Z)V method_48713 setCheatsEnabled + p 1 cheatsEnabled + m (Lnet/minecraft/class_7193;Lnet/minecraft/class_5321;)Ljava/util/Optional; method_48702 method_48702 + p 1 key2 + m (ZLnet/minecraft/class_5285;)Lnet/minecraft/class_5285; method_48714 method_48714 + p 1 options + m (ZLnet/minecraft/class_5285;)Lnet/minecraft/class_5285; method_48718 method_48718 + p 1 options + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_3232; method_64252 method_64252 + p 0 preset + m ()Lnet/minecraft/class_1928; method_48734 getGameRules + m (Ljava/util/List;)Z method_48711 method_48711 + p 0 worldTypeList + m ()Lnet/minecraft/class_8100$class_8101; method_48730 getWorldType + m ()Z method_48726 shouldGenerateStructures + m ()Ljava/lang/String; method_48725 getSeed + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_6862;)Ljava/util/Optional; method_48709 getWorldPresetList + p 1 tag + p 0 registry + m (Lnet/minecraft/class_8100$class_4539;)V method_48704 setGameMode + p 1 gameMode + m (Lnet/minecraft/class_1928;)V method_48697 setGameRules + p 1 gameRules + m ()Ljava/lang/String; method_49703 getWorldDirectoryName + m (Ljava/lang/String;)V method_48710 setWorldName + p 1 worldName + m ()Z method_48727 isBonusChestEnabled + m ()V method_48735 updateWorldTypeLists + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_5455$class_6890;Lnet/minecraft/class_7723;)Lnet/minecraft/class_7723; method_48706 method_48706 + p 2 registryHolder + p 1 registryManager + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2378;)Ljava/util/Optional; method_64249 method_64249 + p 1 registry + m ()Z method_48723 isHardcore + m ()Ljava/util/List; method_48732 getNormalWorldTypes + m ()Lnet/minecraft/class_5293; method_48731 getLevelScreenProvider +c net/minecraft/class_8100$class_4539 net/minecraft/client/gui/screen/world/WorldCreator$Mode + f Lnet/minecraft/class_1934; field_20629 defaultGameMode + f Lnet/minecraft/class_2561; field_42225 info + f Lnet/minecraft/class_2561; field_42224 name + f Lnet/minecraft/class_8100$class_4539; field_20624 SURVIVAL + f Lnet/minecraft/class_8100$class_4539; field_20627 DEBUG + f Lnet/minecraft/class_8100$class_4539; field_20625 HARDCORE + f Lnet/minecraft/class_8100$class_4539; field_20626 CREATIVE + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_1934;)V + p 3 name + p 4 defaultGameMode + m ()Lnet/minecraft/class_2561; method_48736 getInfo +c net/minecraft/class_8100$class_8101 net/minecraft/client/gui/screen/world/WorldCreator$WorldType + f Lnet/minecraft/class_2561; field_42226 CUSTOM_GENERATOR_TEXT + f Lnet/minecraft/class_6880; comp_1238 preset + m ()Lnet/minecraft/class_2561; method_48737 getName + m ()Z method_48739 isAmplified + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_2561; method_48740 method_48740 + p 0 key + m (Lnet/minecraft/class_5321;)Z method_48738 method_48738 + p 0 key + m ()Lnet/minecraft/class_6880; comp_1238 preset + m (Lnet/minecraft/class_6880;)V + p 1 preset +c net/minecraft/class_8108 net/minecraft/entity/damage/DamageScaling + f Ljava/lang/String; field_42289 id + f Lcom/mojang/serialization/Codec; field_42288 CODEC + f Lnet/minecraft/class_8108; field_42285 NEVER + f Lnet/minecraft/class_8108; field_42286 WHEN_CAUSED_BY_LIVING_NON_PLAYER + f Lnet/minecraft/class_8108; field_42287 ALWAYS + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_8109 net/minecraft/entity/damage/DamageSources + f Lnet/minecraft/class_1282; field_42306 cactus + f Lnet/minecraft/class_1282; field_51564 campfire + f Lnet/minecraft/class_1282; field_42301 hotFloor + f Lnet/minecraft/class_1282; field_42313 dragonBreath + f Lnet/minecraft/class_1282; field_44867 genericKill + f Lnet/minecraft/class_1282; field_42305 starve + f Lnet/minecraft/class_1282; field_42317 stalagmite + f Lnet/minecraft/class_1282; field_42309 outOfWorld + f Lnet/minecraft/class_1282; field_52430 enderPearl + f Lnet/minecraft/class_1282; field_42312 wither + f Lnet/minecraft/class_1282; field_42299 onFire + f Lnet/minecraft/class_1282; field_42300 lava + f Lnet/minecraft/class_1282; field_42316 freeze + f Lnet/minecraft/class_1282; field_42304 drown + f Lnet/minecraft/class_1282; field_42308 flyIntoWall + f Lnet/minecraft/class_2378; field_42296 registry + f Lnet/minecraft/class_1282; field_42298 lightningBolt + f Lnet/minecraft/class_1282; field_42311 magic + f Lnet/minecraft/class_1282; field_42303 cramming + f Lnet/minecraft/class_1282; field_42315 sweetBerryBush + f Lnet/minecraft/class_1282; field_42307 fall + f Lnet/minecraft/class_1282; field_42297 inFire + f Lnet/minecraft/class_1282; field_42310 generic + f Lnet/minecraft/class_1282; field_42314 dryOut + f Lnet/minecraft/class_1282; field_42302 inWall + f Lnet/minecraft/class_1282; field_44866 outsideBorder + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48814 fallingStalactite + p 1 attacker + m (Lnet/minecraft/class_1665;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48803 arrow + p 2 attacker + p 1 source + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_1282; method_48801 sting + p 1 attacker + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48810 fallingAnvil + p 1 attacker + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1309;)Lnet/minecraft/class_1282; method_55648 windCharge + p 1 source + p 2 attacker + m (Lnet/minecraft/class_1687;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48806 witherSkull + p 1 source + p 2 attacker + m ()Lnet/minecraft/class_1282; method_51847 genericKill + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48818 thorns + p 1 attacker + m ()Lnet/minecraft/class_1282; method_48826 cactus + m ()Lnet/minecraft/class_1282; method_48834 dryOut + m ()Lnet/minecraft/class_1282; method_61399 enderPearl + m ()Lnet/minecraft/class_1282; method_48822 inWall + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48798 fallingBlock + p 1 attacker + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1309;)Lnet/minecraft/class_1282; method_55647 spit + p 2 attacker + p 1 source + m ()Lnet/minecraft/class_1282; method_51846 outsideBorder + m ()Lnet/minecraft/class_1282; method_48832 wither + m ()Lnet/minecraft/class_1282; method_48820 hotFloor + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48799 trident + p 1 source + p 2 attacker + m (Lnet/minecraft/class_5455;)V + p 1 registryManager + m ()Lnet/minecraft/class_1282; method_48837 stalagmite + m ()Lnet/minecraft/class_1282; method_48829 outOfWorld + m ()Lnet/minecraft/class_1282; method_48817 lava + m ()Lnet/minecraft/class_1282; method_48833 dragonBreath + m ()Lnet/minecraft/class_1282; method_48825 starve + m ()Lnet/minecraft/class_1282; method_48813 onFire + m (Lnet/minecraft/class_1671;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48805 fireworks + p 2 attacker + p 1 source + m ()Lnet/minecraft/class_1282; method_48809 lightningBolt + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_1282; method_48795 create + p 1 key + m (Lnet/minecraft/class_3855;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48804 fireball + p 1 source + p 2 attacker + m ()Lnet/minecraft/class_1282; method_48831 magic + m ()Lnet/minecraft/class_1282; method_48794 inFire + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48796 create + p 2 attacker + p 1 key + m (Lnet/minecraft/class_1657;)Lnet/minecraft/class_1282; method_48802 playerAttack + p 1 attacker + m ()Lnet/minecraft/class_1282; method_48828 flyIntoWall + m ()Lnet/minecraft/class_1282; method_48836 freeze + m ()Lnet/minecraft/class_1282; method_48824 drown + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1309;)Lnet/minecraft/class_1282; method_48800 mobProjectile + p 1 source + p 2 attacker + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_1282; method_48816 mobAttackNoAggro + p 1 attacker + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48797 create + p 3 attacker + p 2 source + p 1 key + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_1282; method_48812 mobAttack + p 1 attacker + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48821 sonicBoom + p 1 attacker + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_61398 maceSmash + p 1 attacker + m ()Lnet/minecraft/class_1282; method_48830 generic + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_1282; method_48808 badRespawnPoint + p 1 position + m ()Lnet/minecraft/class_1282; method_48827 fall + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48811 thrown + p 1 source + p 2 attacker + m ()Lnet/minecraft/class_1282; method_48823 cramming + m ()Lnet/minecraft/class_1282; method_59917 campfire + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48815 indirectMagic + p 1 source + p 2 attacker + m ()Lnet/minecraft/class_1282; method_48835 sweetBerryBush + m (Lnet/minecraft/class_1927;)Lnet/minecraft/class_1282; method_48807 explosion + p 1 explosion + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_48819 explosion + p 1 source + p 2 attacker +c net/minecraft/class_8106 net/minecraft/datafixer/schema/Schema3325 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_9437 net/minecraft/command/argument/ItemPredicateParsing + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/util/Optional; method_58501 method_58501 + p 2 results + m (Lnet/minecraft/class_9437$class_9439;)Lnet/minecraft/class_9408; method_58495 createParser + p 0 callbacks + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/util/List; method_58499 method_58499 + p 2 results + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/lang/Object; method_58492 method_58492 + p 2 results + m (Ljava/lang/Object;Ljava/util/List;)Ljava/util/List; method_58498 method_58498 + p 1 predicates + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9437$class_9439;Lnet/minecraft/class_9387;Lnet/minecraft/class_9393;)Ljava/lang/Object; method_58493 method_58493 + p 4 state + m (Ljava/lang/Object;Ljava/util/List;)Ljava/util/List; method_58500 method_58500 + p 1 predicates + m (Lnet/minecraft/class_9437$class_9439;Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/lang/Object; method_58497 method_58497 + p 2 results + m (Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/util/List; method_58502 method_58502 + p 2 results + m (Lnet/minecraft/class_9400;)Lnet/minecraft/class_3902; method_58494 method_58494 + p 0 results + m (Lnet/minecraft/class_9437$class_9439;Lnet/minecraft/class_9387;Lnet/minecraft/class_9387;Lnet/minecraft/class_9400;)Ljava/util/List; method_58496 method_58496 + p 3 results +c net/minecraft/class_9437$class_9438 net/minecraft/command/argument/ItemPredicateParsing$ComponentParsingRule + m (Lnet/minecraft/class_10842;Lnet/minecraft/class_9437$class_9439;)V + p 2 callbacks + p 1 idParsingRule +c net/minecraft/class_9437$class_9439 net/minecraft/command/argument/ItemPredicateParsing$Callbacks + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/Object;Lcom/mojang/serialization/Dynamic;)Ljava/lang/Object; method_58511 subPredicatePredicate + p 2 check + p 3 dynamic + p 1 reader + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/class_2960;)Ljava/lang/Object; method_58510 tagMatchPredicate + p 2 id + p 1 reader + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/Object;)Ljava/lang/Object; method_58505 componentPresencePredicate + p 1 reader + p 2 check + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/Object;Lcom/mojang/serialization/Dynamic;)Ljava/lang/Object; method_58506 componentMatchPredicate + p 2 check + p 3 dynamic + p 1 reader + m (Ljava/lang/Object;)Ljava/lang/Object; method_58507 negate + p 1 predicate + m ()Ljava/util/stream/Stream; method_58512 streamComponentIds + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/class_2960;)Ljava/lang/Object; method_58513 componentCheck + p 1 reader + p 2 id + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/class_2960;)Ljava/lang/Object; method_58504 itemMatchPredicate + p 1 reader + p 2 id + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/class_2960;)Ljava/lang/Object; method_58515 subPredicateCheck + p 1 reader + p 2 id + m ()Ljava/util/stream/Stream; method_58503 streamItemIds + m ()Ljava/util/stream/Stream; method_58514 streamSubPredicateIds + m ()Ljava/util/stream/Stream; method_58509 streamTags + m (Ljava/util/List;)Ljava/lang/Object; method_58508 anyOf + p 1 predicates +c net/minecraft/class_9437$class_9440 net/minecraft/command/argument/ItemPredicateParsing$ItemParsingRule + m (Lnet/minecraft/class_10842;Lnet/minecraft/class_9437$class_9439;)V + p 1 idParsingRule + p 2 callbacks +c net/minecraft/class_9437$class_9441 net/minecraft/command/argument/ItemPredicateParsing$SubPredicateParsingRule + m (Lnet/minecraft/class_10842;Lnet/minecraft/class_9437$class_9439;)V + p 1 idParsingRule + p 2 callbacks +c net/minecraft/class_9437$class_9442 net/minecraft/command/argument/ItemPredicateParsing$TagParsingRule + m (Lnet/minecraft/class_10842;Lnet/minecraft/class_9437$class_9439;)V + p 2 callbacks + p 1 idParsingRule +c net/minecraft/class_8107 net/minecraft/entity/damage/DamageEffects + f Lcom/mojang/serialization/Codec; field_42281 CODEC + f Ljava/lang/String; field_42282 id + f Lnet/minecraft/class_3414; field_42283 sound + f Lnet/minecraft/class_8107; field_42275 HURT + f Lnet/minecraft/class_8107; field_42280 FREEZING + f Lnet/minecraft/class_8107; field_42276 THORNS + f Lnet/minecraft/class_8107; field_42278 BURNING + f Lnet/minecraft/class_8107; field_42277 DROWNING + f Lnet/minecraft/class_8107; field_42279 POKING + m ()Lnet/minecraft/class_3414; method_48786 getSound + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_3414;)V + p 3 id + p 4 sound +c net/minecraft/class_8104 net/minecraft/entity/decoration/Brightness + f Lcom/mojang/serialization/Codec; field_42262 LIGHT_LEVEL_CODEC + f Lcom/mojang/serialization/Codec; field_42263 CODEC + f Lnet/minecraft/class_8104; field_42264 FULL + f I comp_1240 block + f I comp_1241 sky + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48765 method_48765 + p 0 instance + m (II)I method_68888 pack + p 0 block + p 1 sky + m (I)Lnet/minecraft/class_8104; method_48764 unpack + p 0 packed + m (I)I method_68889 unpackSky + p 0 packed + m (I)I method_68887 unpackBlock + p 0 packed + m ()I method_48763 pack + m ()I comp_1240 block + m ()I comp_1241 sky + m (II)V + p 1 block + p 2 sky +c net/minecraft/class_8105 net/minecraft/util/CachedMapper + c A mapper that caches the latest input-output pair, so that repeated calls with\nthe same argument do not call the expensive mapper function.\n\n@see Util#cachedMapper + f Ljava/lang/Object; field_42270 cachedInput + f Ljava/lang/Object; field_42271 cachedOutput + f Ljava/util/function/Function; field_42269 mapper + m (Ljava/util/function/Function;)V + p 1 mapper + m (Ljava/lang/Object;)Ljava/lang/Object; method_48782 map + c {@return the mapped {@code input}} + p 1 input +c net/minecraft/class_12241 net/minecraft/enchantment/effect/entity/ApplyExhaustionEnchantmentEffect + f Lnet/minecraft/class_9704; comp_5159 amount + f Lcom/mojang/serialization/MapCodec; field_63952 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75883 method_75883 + p 0 instance + m ()Lnet/minecraft/class_9704; comp_5159 amount + m (Lnet/minecraft/class_9704;)V + p 1 amount +c net/minecraft/class_12240 net/minecraft/util/Holidays + f Ljava/util/List; field_63944 CHRISTMAS_PERIOD + f Ljava/time/MonthDay; field_63946 NEW_YEARS_DAY + f Ljava/time/MonthDay; field_63945 CHRISTMAS_EVE + f Ljava/time/MonthDay; field_63943 HALLOWEEN + m ()Z method_75877 isAroundChristmas + m ()Z method_75876 isHalloween + m ()Ljava/time/MonthDay; method_75874 now +c net/minecraft/class_12245 net/minecraft/client/render/LayeringTransform + f Ljava/lang/String; field_63978 name + f Ljava/util/function/Consumer; field_63979 transform + f Lnet/minecraft/class_12245; field_63975 NO_LAYERING + f Lnet/minecraft/class_12245; field_63976 VIEW_OFFSET_Z_LAYERING + f Lnet/minecraft/class_12245; field_63977 VIEW_OFFSET_Z_LAYERING_FORWARD + m (Ljava/lang/String;Ljava/util/function/Consumer;)V + p 1 name + p 2 transform + m (Lorg/joml/Matrix4fStack;)V method_75920 method_75920 + p 0 matrices + m ()Ljava/util/function/Consumer; method_75918 getTransform + m (Lorg/joml/Matrix4fStack;)V method_75919 method_75919 + p 0 matrices +c net/minecraft/class_12243 net/minecraft/loot/function/DiscardLootFunction + f Lcom/mojang/serialization/MapCodec; field_63965 CODEC + m ()Lnet/minecraft/class_120$class_121; method_75901 builder + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75900 method_75900 + p 0 instance +c net/minecraft/class_12242 net/minecraft/world/updater/ChunkUpdater + f Ljava/util/function/Supplier; field_63959 PASSTHROUGH_FACTORY + m (Lnet/minecraft/class_1923;)V markChunkDone markChunkDone + p 1 chunkPos + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; applyFix applyFix + p 1 chunkNbt + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_75893 method_75893 + p 0 nbt +c net/minecraft/class_12249 net/minecraft/client/render/RenderLayers + f Ljava/util/function/Function; field_64037 WEATHER_DEPTH + f Ljava/util/function/Function; field_64049 ENTITY_SOLID + f Lnet/minecraft/class_1921; field_64064 LEASH + f Lnet/minecraft/class_1921; field_64036 DEBUG_TRIANGLE_FAN + f Ljava/util/function/Function; field_64040 FIRE_SCREEN_EFFECT + f Ljava/util/function/Function; field_64024 TEXT_SEE_THROUGH + f Ljava/util/function/Function; field_64048 ARMOR_TRANSLUCENT + f Lnet/minecraft/class_1921; field_64035 DEBUG_QUADS + f Lnet/minecraft/class_1921; field_64592 LINES_TRANSLUCENT + f Ljava/util/function/BiFunction; field_64052 ENTITY_CUTOUT_NO_CULL + f Lnet/minecraft/class_1921; field_64066 ARMOR_ENTITY_GLINT + f Lnet/minecraft/class_1921; field_64030 TRIPWIRE + f Lnet/minecraft/class_1921; field_64042 LINES + f Ljava/util/function/BiFunction; field_64041 OUTLINE + f Ljava/util/function/BiFunction; field_64053 ENTITY_CUTOUT_NO_CULL_Z_OFFSET + f Ljava/util/function/Function; field_64026 TEXT_INTENSITY_SEE_THROUGH + f Ljava/util/function/Function; field_64038 WEATHER_NO_DEPTH + f Ljava/util/function/Function; field_64054 ITEM_ENTITY_TRANSLUCENT_CULL + f Lnet/minecraft/class_1921; field_64065 WATER_MASK + f Ljava/util/function/Function; field_64039 BLOCK_SCREEN_EFFECT + f Lnet/minecraft/class_1921; field_64025 TEXT_BACKGROUND_SEE_THROUGH + f Ljava/util/function/Function; field_64061 ENTITY_SHADOW + f Ljava/util/function/Function; field_64057 ENTITY_SMOOTH_CUTOUT + f Ljava/util/function/Function; field_64021 TEXT_INTENSITY + f Lnet/minecraft/class_1921; field_64032 END_GATEWAY + f Lnet/minecraft/class_1921; field_64044 SOLID + f Ljava/util/function/Function; field_64018 CRUMBLING + f Lnet/minecraft/class_1921; field_64020 TEXT_BACKGROUND + f Lnet/minecraft/class_1921; field_64016 GLINT + f Lnet/minecraft/class_1921; field_64028 DRAGON_RAYS + f Ljava/util/function/BiFunction; field_64055 ENTITY_TRANSLUCENT + f Ljava/util/function/Function; field_64060 ENTITY_NO_OUTLINE + f Lnet/minecraft/class_1921; field_64043 SECONDARY_BLOCK_OUTLINE + f Lnet/minecraft/class_1921; field_64031 END_PORTAL + f Lnet/minecraft/class_1921; field_64027 LIGHTNING + f Ljava/util/function/BiFunction; field_64056 ENTITY_TRANSLUCENT_EMISSIVE + f Lnet/minecraft/class_1921; field_64015 GLINT_TRANSLUCENT + f Ljava/util/function/Function; field_64051 ENTITY_CUTOUT + f Ljava/util/function/Function; field_64063 EYES + f Ljava/util/function/Function; field_64047 ARMOR_CUTOUT_NO_CULL + f Ljava/util/function/Function; field_64059 ENTITY_DECAL + f Ljava/util/function/Function; field_64023 TEXT_INTENSITY_POLYGON_OFFSET + f Lnet/minecraft/class_1921; field_64034 DEBUG_POINT + f Lnet/minecraft/class_1921; field_64046 TRANSLUCENT_MOVING_BLOCK + f Ljava/util/function/Supplier; field_64462 BLOCK_SAMPLER + f Ljava/util/function/Function; field_64050 ENTITY_SOLID_Z_OFFSET_FORWARD + f Ljava/util/function/Function; field_64062 ENTITY_ALPHA + f Ljava/util/function/Function; field_64022 TEXT_POLYGON_OFFSET + f Lnet/minecraft/class_1921; field_64045 CUTOUT + f Lnet/minecraft/class_1921; field_64033 DEBUG_FILLED_BOX + f Ljava/util/function/Function; field_64019 TEXT + f Lnet/minecraft/class_1921; field_64029 DRAGON_RAYS_DEPTH + f Ljava/util/function/BiFunction; field_64058 BEACON_BEAM + f Lnet/minecraft/class_1921; field_64017 ENTITY_GLINT + m ()Lnet/minecraft/class_1921; method_76005 dragonRays + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75953 method_75953 + p 0 texture + m ()Lnet/minecraft/class_1921; method_76017 secondaryBlockOutline + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76024 textIntensity + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76012 entityAlpha + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76000 entityTranslucent + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75949 method_75949 + p 0 texture + m (Lnet/minecraft/class_2960;Z)Lnet/minecraft/class_1921; method_75984 entityTranslucentEmissive + p 0 texture + p 1 affectsOutline + m ()Lnet/minecraft/class_1921; method_76021 debugPoint + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75964 method_75964 + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75952 method_75952 + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75948 method_75948 + p 0 texture + m ()Lnet/minecraft/class_1921; method_75999 textBackground + m (Lnet/minecraft/class_2960;Ljava/lang/Boolean;)Lnet/minecraft/class_1921; method_75979 method_75979 + p 1 affectsOutline + p 0 texture + m (Lnet/minecraft/class_2960;Ljava/lang/Boolean;)Lnet/minecraft/class_1921; method_75983 method_75983 + p 0 texture + p 1 affectsOutline + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76026 textPolygonOffset + p 0 texture + m ()Lnet/minecraft/class_1921; method_76668 linesTranslucent + m ()Lnet/minecraft/class_1921; method_76007 dragonRaysDepth + m ()Lnet/minecraft/class_1921; method_76019 debugFilledBox + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76014 eyes + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76002 entityTranslucentEmissive + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75963 method_75963 + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75951 method_75951 + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75947 method_75947 + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75959 method_75959 + p 0 texture + m (Lnet/minecraft/class_2960;Ljava/lang/Boolean;)Lnet/minecraft/class_1921; method_75968 method_75968 + p 1 translucent + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75990 entityCutout + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76027 textIntensityPolygonOffset + p 0 texture + m ()Lnet/minecraft/class_1921; method_76011 endPortal + m ()Lnet/minecraft/class_1921; method_76023 debugQuads + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75998 itemEntityTranslucentCull + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75986 entitySolidZOffsetForward + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75950 method_75950 + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75962 method_75962 + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75958 method_75958 + p 0 texture + m ()Lnet/minecraft/class_1921; method_75989 armorEntityGlint + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75946 method_75946 + p 0 texture + m ()Lnet/minecraft/class_1921; method_75965 solid + m ()Lnet/minecraft/class_1921; method_75977 translucentMovingBlock + m (Lnet/minecraft/class_2960;Z)Lnet/minecraft/class_1921; method_75969 entityCutoutNoCull + p 1 affectsOutline + p 0 texture + m ()Lnet/minecraft/class_1921; method_75981 leash + m ()Lnet/minecraft/class_1921; method_75993 glintTranslucent + m (Lnet/minecraft/class_2960;FF)Lnet/minecraft/class_1921; method_75974 energySwirl + p 0 texture + p 1 du + p 2 dv + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76028 textSeeThrough + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76016 entityTranslucentEmissiveNoOutline + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76004 entitySmoothCutout + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76020 crumbling + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75945 method_75945 + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75961 method_75961 + p 0 texture + m ()Lnet/minecraft/class_1921; method_76009 tripwire + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;)Ljava/util/function/Function; method_75970 createWeatherFactory + p 0 pipeline + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75973 armorDecalCutoutNoCull + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75957 method_75957 + p 0 texture + m (Lnet/minecraft/class_2960;Z)Lnet/minecraft/class_1921; method_75976 entityCutoutNoCullZOffset + p 0 texture + p 1 affectsOutline + m (Lnet/minecraft/class_2960;Z)Lnet/minecraft/class_1921; method_75988 beaconBeam + p 0 texture + p 1 translucent + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76029 textIntensitySeeThrough + p 0 texture + m ()Lnet/minecraft/class_1921; method_76001 textBackgroundSeeThrough + m ()Lnet/minecraft/class_1921; method_76013 endGateway + m (Lnet/minecraft/class_2960;Z)Lnet/minecraft/class_1921; method_75992 weather + p 1 depth + p 0 texture + m ()Lnet/minecraft/class_1921; method_76025 debugTriangleFan + m (Lnet/minecraft/class_2960;Z)Lnet/minecraft/class_1921; method_75980 entityTranslucent + p 0 texture + p 1 affectsOutline + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75956 method_75956 + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75944 method_75944 + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75960 method_75960 + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75996 entityCutoutNoCullZOffset + p 0 texture + m (Lnet/minecraft/class_2960;Ljava/lang/Boolean;)Lnet/minecraft/class_1921; method_75991 method_75991 + p 1 cull + p 0 texture + m ()Lnet/minecraft/class_1921; method_75995 glint + m (Lnet/minecraft/class_2960;Ljava/lang/Boolean;)Lnet/minecraft/class_1921; method_75987 method_75987 + p 0 texture + p 1 affectsOutline + m (Lnet/minecraft/class_2960;Ljava/lang/Boolean;)Lnet/minecraft/class_1921; method_75975 method_75975 + p 1 affectsOutline + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76018 outlineNoCull + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76006 entityDecal + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75943 fireScreenEffect + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76010 entityShadow + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75955 method_75955 + p 0 texture + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75971 method_75971 + p 1 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76022 text + p 0 texture + m ()Lnet/minecraft/class_1921; method_75972 cutout + m (Lnet/minecraft/class_2960;FF)Lnet/minecraft/class_1921; method_75967 breezeWind + p 2 dv + p 1 du + p 0 texture + m ()Lnet/minecraft/class_1921; method_76003 lightning + m ()Lnet/minecraft/class_1921; method_76015 lines + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75954 method_75954 + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75942 blockScreenEffect + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75978 armorTranslucent + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75966 armorCutoutNoCull + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75994 entityCutoutNoCull + p 0 texture + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_75982 entitySolid + p 0 texture + m ()Lnet/minecraft/class_1921; method_75985 waterMask + m ()Lnet/minecraft/class_1921; method_75997 entityGlint + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1921; method_76008 entityNoOutline + p 0 texture +c net/minecraft/class_12247 net/minecraft/client/render/RenderSetup + f Lnet/minecraft/class_12246; field_63989 outputTarget + f Lnet/minecraft/class_12247$class_4750; field_63990 outlineMode + f Z field_63991 useLightmap + f Z field_63992 useOverlay + f Z field_63993 hasCrumbling + f Z field_63994 translucent + f Ljava/util/Map; field_63987 textures + f Lnet/minecraft/class_12250; field_63988 textureTransform + f Lnet/minecraft/class_12245; field_63996 layeringTransform + f I field_63995 expectedBufferSize + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_63986 pipeline + m ()Ljava/util/Map; method_75926 resolveTextures + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Ljava/util/Map;ZZLnet/minecraft/class_12245;Lnet/minecraft/class_12246;Lnet/minecraft/class_12250;Lnet/minecraft/class_12247$class_4750;ZZI)V + p 1 pipeline + p 11 expectedBufferSize + p 10 translucent + p 7 textureTransform + p 6 outputTarget + p 9 hasCrumbling + p 8 outlineMode + p 3 useLightmap + p 2 textures + p 5 layeringTransform + p 4 useOverlay + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;)Lnet/minecraft/class_12247$class_12248; method_75927 builder +c net/minecraft/class_12247$class_12338 net/minecraft/client/render/RenderSetup$TextureSpec + f Lnet/minecraft/class_2960; comp_5228 location + f Ljava/util/function/Supplier; comp_5229 sampler + m ()Ljava/util/function/Supplier; comp_5229 sampler + m ()Lnet/minecraft/class_2960; comp_5228 location + m (Lnet/minecraft/class_2960;Ljava/util/function/Supplier;)V + p 1 location + p 2 sampler +c net/minecraft/class_12247$class_12337 net/minecraft/client/render/RenderSetup$Texture + f Lnet/minecraft/class_12137; comp_5227 sampler + f Lcom/mojang/blaze3d/textures/GpuTextureView; comp_5226 textureView + m ()Lcom/mojang/blaze3d/textures/GpuTextureView; comp_5226 textureView + m ()Lnet/minecraft/class_12137; comp_5227 sampler + m (Lcom/mojang/blaze3d/textures/GpuTextureView;Lnet/minecraft/class_12137;)V + p 1 textureView + p 2 sampler +c net/minecraft/class_12247$class_12248 net/minecraft/client/render/RenderSetup$Builder + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_63997 pipeline + f Z field_64004 translucent + f Z field_64003 hasCrumbling + f Z field_63998 useLightmap + f Ljava/util/Map; field_64007 textures + f Z field_63999 useOverlay + f Lnet/minecraft/class_12250; field_64002 textureTransform + f Lnet/minecraft/class_12247$class_4750; field_64006 outlineMode + f Lnet/minecraft/class_12245; field_64000 layeringTransform + f I field_64005 expectedBufferSize + f Lnet/minecraft/class_12246; field_64001 outputTarget + m (Lnet/minecraft/class_12250;)Lnet/minecraft/class_12247$class_12248; method_75933 textureTransform + p 1 textureTransform + m (I)Lnet/minecraft/class_12247$class_12248; method_75929 expectedBufferSize + p 1 expectedBufferSize + m (Ljava/lang/String;Lnet/minecraft/class_2960;)Lnet/minecraft/class_12247$class_12248; method_75934 texture + p 1 name + p 2 id + m (Ljava/lang/String;Lnet/minecraft/class_2960;Ljava/util/function/Supplier;)Lnet/minecraft/class_12247$class_12248; method_76560 texture + p 2 id + p 3 samplerSupplier + p 1 name + m (Lnet/minecraft/class_12245;)Lnet/minecraft/class_12247$class_12248; method_75930 layeringTransform + p 1 layeringTransform + m (Lnet/minecraft/class_12246;)Lnet/minecraft/class_12247$class_12248; method_75931 outputTarget + p 1 outputTarget + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;)V + p 1 pipeline + m ()Lnet/minecraft/class_12247$class_12248; method_75928 useLightmap + m ()Lnet/minecraft/class_12247$class_12248; method_75935 useOverlay + m ()Lnet/minecraft/class_12247$class_12248; method_75936 crumbling + m ()Lnet/minecraft/class_12247$class_12248; method_75937 translucent + m ()Lnet/minecraft/class_12247; method_75938 build + m (Lnet/minecraft/class_12247$class_4750;)Lnet/minecraft/class_12247$class_12248; method_75932 outlineMode + p 1 outlineMode +c net/minecraft/class_12247$class_4750 net/minecraft/client/render/RenderSetup$OutlineMode + f Ljava/lang/String; field_22243 name + f Lnet/minecraft/class_12247$class_4750; field_21854 IS_OUTLINE + f Lnet/minecraft/class_12247$class_4750; field_21855 AFFECTS_OUTLINE + f Lnet/minecraft/class_12247$class_4750; field_21853 NONE + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_12246 net/minecraft/client/render/OutputTarget + f Ljava/lang/String; field_63984 name + f Ljava/util/function/Supplier; field_63985 framebuffer + f Lnet/minecraft/class_12246; field_63980 MAIN_TARGET + f Lnet/minecraft/class_12246; field_63981 OUTLINE_TARGET + f Lnet/minecraft/class_12246; field_63982 WEATHER_TARGET + f Lnet/minecraft/class_12246; field_63983 ITEM_ENTITY_TARGET + m ()Lnet/minecraft/class_276; method_75921 getFramebuffer + m (Ljava/lang/String;Ljava/util/function/Supplier;)V + p 2 framebuffer + p 1 name +c net/minecraft/class_9401 net/minecraft/util/packrat/Suggestable + m (Lnet/minecraft/class_9393;)Ljava/util/stream/Stream; method_58330 method_58330 + p 0 state + m (Lnet/minecraft/class_9393;)Ljava/util/stream/Stream; possibleValues possibleValues + p 1 state + m ()Lnet/minecraft/class_9401; method_58329 empty +c net/minecraft/class_9400 net/minecraft/util/packrat/ParseResults + f I field_57533 stackTop + f I field_57531 ENTRY_SIZE + f [Ljava/lang/Object; field_57532 stack + f Ljava/lang/Object; field_57530 FRAME + f I field_57529 MISSING + f I field_57534 stackBottom + m (Lnet/minecraft/class_9387;)Ljava/lang/Object; method_58326 getOrThrow + p 1 symbol + m (I)V method_68218 expandIfNeeded + p 1 amount + m (Lnet/minecraft/class_9387;)Ljava/lang/Object; method_58322 get + p 1 symbol + m ([Lnet/minecraft/class_9387;)Ljava/lang/Object; method_58325 getAny + p 1 symbols + m (Lnet/minecraft/class_9387;)I method_68223 indexOf + p 1 symbol + m (Lnet/minecraft/class_9387;Ljava/lang/Object;)Ljava/lang/Object; method_58327 getOrDefault + p 2 fallback + p 1 symbol + m ([Lnet/minecraft/class_9387;)Ljava/lang/Object; method_58328 getAnyOrThrow + p 1 symbols + m (Lnet/minecraft/class_9387;Ljava/lang/Object;)V method_58323 put + p 2 value + p 1 symbol + m (I)I method_68221 getPreviousStackBottom + p 1 current + m ()Z method_68227 areFramesPlacedCorrectly + m ()V method_68222 duplicateFrames + m ()V method_68220 popFrame + m ([Lnet/minecraft/class_9387;)I method_68219 indexOf + p 1 symbols + m ()Ljava/util/Map; method_68226 toSymbolKeyedMap + m ()V method_68217 pushFrame + m ()V method_68228 addFrame + m ()V method_68225 chooseCurrentFrame + m ()Z method_68229 isValid + m ()V method_68224 clearFrameValues +c net/minecraft/class_9409 net/minecraft/util/packrat/AnyIdParsingRule + f Lnet/minecraft/class_9396; field_49967 INSTANCE + m (Lnet/minecraft/class_9393;)Lnet/minecraft/class_2960; method_68247 parse +c net/minecraft/class_9408 net/minecraft/util/packrat/PackratParser + f Lnet/minecraft/class_9389; comp_2484 rules + f Lnet/minecraft/class_10842; comp_2485 top + m (Lnet/minecraft/class_9393;)Ljava/util/Optional; method_58340 startParsing + p 1 state + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/class_9392;Ljava/util/function/Consumer;)V method_58339 method_58339 + p 2 callback + p 1 error + m ()Lnet/minecraft/class_10842; comp_2485 top + m ()Lnet/minecraft/class_9389; comp_2484 rules + m (Lnet/minecraft/class_9389;Lnet/minecraft/class_10842;)V + p 1 rules + p 2 top +c net/minecraft/class_12270 net/minecraft/loot/slot/SlotRangeSlotSource + f Lcom/mojang/serialization/MapCodec; field_64158 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76120 method_76120 + p 0 instance +c net/minecraft/class_9402 net/minecraft/util/packrat/Term + m (Lnet/minecraft/class_10842;Lnet/minecraft/class_9387;Lnet/minecraft/class_9402;I)Lnet/minecraft/class_9402; method_68236 repeatWithSeparator + p 3 minRepetitions + p 2 separator + p 1 listName + p 0 element + m (Lnet/minecraft/class_9387;Ljava/lang/Object;)Lnet/minecraft/class_9402; method_58333 always + p 0 symbol + p 1 value + m (Lnet/minecraft/class_10842;Lnet/minecraft/class_9387;I)Lnet/minecraft/class_9402; method_68231 repeated + p 2 minRepetitions + p 0 element + p 1 listName + m (Lnet/minecraft/class_9393;Lnet/minecraft/class_9400;Lnet/minecraft/class_9388;)Z method_58334 matches + p 1 state + p 3 cut + p 2 results + m (Ljava/lang/Object;)Lnet/minecraft/class_9402; method_68234 fail + p 0 reason + m (Lnet/minecraft/class_9402;)Lnet/minecraft/class_9402; method_58335 optional + p 0 term + m (Lnet/minecraft/class_10842;Lnet/minecraft/class_9387;Lnet/minecraft/class_9402;I)Lnet/minecraft/class_9402; method_68233 repeatWithPossiblyTrailingSeparator + p 0 element + p 3 minRepetitions + p 2 separator + p 1 listName + m ([Lnet/minecraft/class_9402;)Lnet/minecraft/class_9402; method_58336 sequence + p 0 terms + m (Lnet/minecraft/class_10842;Lnet/minecraft/class_9387;Lnet/minecraft/class_9402;)Lnet/minecraft/class_9402; method_68232 repeatWithPossiblyTrailingSeparator + p 0 element + p 1 listName + p 2 separator + m ()Lnet/minecraft/class_9402; method_58331 cutting + m ()Lnet/minecraft/class_9402; method_58337 epsilon + m (Lnet/minecraft/class_9402;)Lnet/minecraft/class_9402; method_68237 positiveLookahead + p 0 term + m (Lnet/minecraft/class_9402;)Lnet/minecraft/class_9402; method_68238 negativeLookahead + p 0 term + m ([Lnet/minecraft/class_9402;)Lnet/minecraft/class_9402; method_58338 anyOf + p 0 terms + m (Lnet/minecraft/class_10842;Lnet/minecraft/class_9387;)Lnet/minecraft/class_9402; method_68230 repeated + p 1 listName + p 0 element + m (Lnet/minecraft/class_10842;Lnet/minecraft/class_9387;Lnet/minecraft/class_9402;)Lnet/minecraft/class_9402; method_68235 repeatWithSeparator + p 1 listName + p 0 element + p 2 separator +c net/minecraft/class_9402$class_9407 net/minecraft/util/packrat/Term$SequenceTerm + f [Lnet/minecraft/class_9402; comp_2483 elements + m ()[Lnet/minecraft/class_9402; comp_2483 elements + m ([Lnet/minecraft/class_9402;)V + p 1 elements +c net/minecraft/class_9402$class_9404 net/minecraft/util/packrat/Term$AlwaysTerm + f Ljava/lang/Object; comp_2480 value + f Lnet/minecraft/class_9387; comp_2479 name + m ()Lnet/minecraft/class_9387; comp_2479 name + m ()Ljava/lang/Object; comp_2480 value + m (Lnet/minecraft/class_9387;Ljava/lang/Object;)V + p 1 name + p 2 value +c net/minecraft/class_9402$class_9405 net/minecraft/util/packrat/Term$OptionalTerm + f Lnet/minecraft/class_9402; comp_2481 term + m ()Lnet/minecraft/class_9402; comp_2481 term + m (Lnet/minecraft/class_9402;)V + p 1 term +c net/minecraft/class_9402$class_9403 net/minecraft/util/packrat/Term$AnyOfTerm + f [Lnet/minecraft/class_9402; comp_2478 elements + m ()[Lnet/minecraft/class_9402; comp_2478 elements + m ([Lnet/minecraft/class_9402;)V + p 1 elements +c net/minecraft/class_9402$class_10844 net/minecraft/util/packrat/Term$RepeatedTerm + f I comp_3795 minRepetitions + f Lnet/minecraft/class_9387; comp_3794 listName + f Lnet/minecraft/class_10842; comp_3793 element + m ()Lnet/minecraft/class_10842; comp_3793 element + m ()Lnet/minecraft/class_9387; comp_3794 listName + m ()I comp_3795 minRepetitions + m (Lnet/minecraft/class_10842;Lnet/minecraft/class_9387;I)V + p 1 element + p 2 listName + p 3 minRepetitions +c net/minecraft/class_9402$class_10845 net/minecraft/util/packrat/Term$RepeatWithSeparatorTerm + f I comp_3799 minRepetitions + f Lnet/minecraft/class_9387; comp_3797 listName + f Lnet/minecraft/class_9402; comp_3798 separator + f Lnet/minecraft/class_10842; comp_3796 element + f Z comp_3800 allowTrailingSeparator + m ()Lnet/minecraft/class_10842; comp_3796 element + m ()I comp_3799 minRepetitions + m ()Lnet/minecraft/class_9387; comp_3797 listName + m ()Lnet/minecraft/class_9402; comp_3798 separator + m ()Z comp_3800 allowTrailingSeparator + m (Lnet/minecraft/class_10842;Lnet/minecraft/class_9387;Lnet/minecraft/class_9402;IZ)V + p 1 element + p 2 listName + p 3 separator + p 4 minRepetitions + p 5 allowTrailingSeparator +c net/minecraft/class_9402$class_10843 net/minecraft/util/packrat/Term$LookaheadTerm + f Lnet/minecraft/class_9402; comp_3791 term + f Z comp_3792 positive + m ()Z comp_3792 positive + m ()Lnet/minecraft/class_9402; comp_3791 term + m (Lnet/minecraft/class_9402;Z)V + p 1 term + p 2 positive +c net/minecraft/class_12271 net/minecraft/loot/slot/ItemStream + f Lnet/minecraft/class_12271; field_64161 EMPTY + m (Ljava/util/function/Function;)Lnet/minecraft/class_12271; method_76128 map + p 1 function + m (Lnet/minecraft/class_5630;)Lnet/minecraft/class_12271; method_76124 of + p 0 stackReference + m (Ljava/util/function/Predicate;)Lnet/minecraft/class_12271; method_76129 filter + p 1 predicate + m (Lnet/minecraft/class_12271;Lnet/minecraft/class_12271;)Lnet/minecraft/class_12271; method_76125 concat + p 0 first + p 1 second + m (Ljava/util/Collection;)Lnet/minecraft/class_12271; method_76126 of + p 0 stackReferences + m (I)Lnet/minecraft/class_12271; method_76123 limit + p 1 count + m (Ljava/util/List;)Lnet/minecraft/class_12271; method_76127 concat + p 0 streams +c net/minecraft/class_12271$class_12273 net/minecraft/loot/slot/ItemStream$Map + f Ljava/util/function/Function; comp_5166 mapper + f Lnet/minecraft/class_12271; comp_5165 slots + m ()Lnet/minecraft/class_12271; comp_5165 slots + m ()Ljava/util/function/Function; comp_5166 mapper + m (Lnet/minecraft/class_12271;Ljava/util/function/Function;)V + p 1 slots + p 2 mapper +c net/minecraft/class_12271$class_12274 net/minecraft/loot/slot/ItemStream$Limit + f I comp_5168 limit + f Lnet/minecraft/class_12271; comp_5167 slots + m ()Lnet/minecraft/class_12271; comp_5167 slots + m ()I comp_5168 limit + m (Lnet/minecraft/class_12271;I)V + p 1 slots + p 2 limit +c net/minecraft/class_12271$class_12272 net/minecraft/loot/slot/ItemStream$Filter + f Lnet/minecraft/class_12271; comp_5163 slots + f Ljava/util/function/Predicate; comp_5164 filter + m ()Lnet/minecraft/class_12271; comp_5163 slots + m ()Ljava/util/function/Predicate; comp_5164 filter + m (Lnet/minecraft/class_12271;Ljava/util/function/Predicate;)V + p 1 slots + p 2 filter +c net/minecraft/class_12278 net/minecraft/unused/packageinfo/PackageInfo12278 +c net/minecraft/class_12277 net/minecraft/loot/slot/TransformSlotSource + f Lnet/minecraft/class_12275; field_64164 slotSource + m (Lnet/minecraft/class_12271;)Lnet/minecraft/class_12271; method_76114 transform + p 1 stream + m (Lnet/minecraft/class_12277;)Lnet/minecraft/class_12275; method_76142 method_76142 + p 0 source + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P1; method_76141 addSlotSourceField + p 0 instance + m (Lnet/minecraft/class_12275;)V + p 1 slotSource +c net/minecraft/class_12276 net/minecraft/loot/slot/SlotSources + f Lcom/mojang/serialization/Codec; field_64162 BASE_CODEC + f Lcom/mojang/serialization/Codec; field_64163 CODEC + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_76135 method_76135 + p 0 codec + m (Lnet/minecraft/class_47;)Lnet/minecraft/class_12271; method_76137 method_76137 + p 0 context + m (Ljava/util/List;Lnet/minecraft/class_47;)Lnet/minecraft/class_12271; method_76139 method_76139 + p 1 context + m (Lnet/minecraft/class_12275;Lnet/minecraft/class_12275;Lnet/minecraft/class_47;)Lnet/minecraft/class_12271; method_76136 method_76136 + p 2 context + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_76140 registerAndGetDefault + p 0 registry + m (Ljava/util/Collection;)Ljava/util/function/Function; method_76138 concat + p 0 sources +c net/minecraft/class_12275 net/minecraft/loot/slot/SlotSource + m (Lnet/minecraft/class_47;)Lnet/minecraft/class_12271; method_76108 stream + p 1 context + m ()Lcom/mojang/serialization/MapCodec; method_76106 getCodec +c net/minecraft/class_12279 net/minecraft/world/rule/GameRule + f Lnet/minecraft/class_11845; field_64168 type + f Lcom/mojang/brigadier/arguments/ArgumentType; field_64169 argumentType + f Lcom/mojang/serialization/Codec; field_64171 codec + f Lnet/minecraft/class_1928$class_5199; field_64170 acceptor + f Ljava/lang/Object; field_64173 defaultValue + f Ljava/util/function/ToIntFunction; field_64172 commandResultSupplier + f Lnet/minecraft/class_5198; field_64167 category + f Lnet/minecraft/class_7699; field_64174 requiredFeatures + m ()Ljava/lang/Object; method_76156 getDefaultValue + m (Ljava/lang/Object;)I method_76149 getCommandResult + p 1 value + m ()Lcom/mojang/brigadier/arguments/ArgumentType; method_76154 getArgumentType + m (Lnet/minecraft/class_4311;)V method_76145 accept + p 1 visitor + m (Lnet/minecraft/class_5198;Lnet/minecraft/class_11845;Lcom/mojang/brigadier/arguments/ArgumentType;Lnet/minecraft/class_1928$class_5199;Lcom/mojang/serialization/Codec;Ljava/util/function/ToIntFunction;Ljava/lang/Object;Lnet/minecraft/class_7699;)V + p 6 commandResultSupplier + p 5 codec + p 4 acceptor + p 3 argumentType + p 8 requiredFeatures + p 7 defaultValue + p 2 type + p 1 category + m ()Lnet/minecraft/class_2960; method_76148 getId + m ()Ljava/lang/Class; method_76151 getValueClass + m ()Ljava/lang/String; method_76144 toShortString + m ()Ljava/lang/String; method_76150 getTranslationKey + m ()Lcom/mojang/serialization/Codec; method_76155 getCodec + m ()Lnet/minecraft/class_11845; method_76153 getType + m ()Lnet/minecraft/class_5198; method_76152 getCategory + m (Ljava/lang/Object;)Ljava/lang/String; method_76146 getValueName + p 1 value + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_76147 deserialize + p 1 value +c net/minecraft/class_9412 net/minecraft/util/packrat/ReaderBackedParsingState + f Lcom/mojang/brigadier/StringReader; field_49970 reader + m (Lnet/minecraft/class_9390;Lcom/mojang/brigadier/StringReader;)V + p 1 errors + p 2 reader + m ()Lcom/mojang/brigadier/StringReader; method_58345 getReader +c net/minecraft/class_9411 net/minecraft/util/packrat/IdentifierSuggestable + m ()Ljava/util/stream/Stream; method_58344 possibleIds +c net/minecraft/class_9410 net/minecraft/util/packrat/IdentifiableParsingRule + f Lnet/minecraft/class_10842; field_49969 idParsingRule + f Lnet/minecraft/class_10837; field_57550 exception + f Ljava/lang/Object; field_49968 callbacks + m (Lnet/minecraft/class_10842;Ljava/lang/Object;)V + p 2 callbacks + p 1 idParsingRule + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/class_2960;)Ljava/lang/Object; method_58343 parse + p 2 id + p 1 reader +c net/minecraft/class_9418 net/minecraft/unused/packageinfo/PackageInfo9418 +c net/minecraft/class_9417 net/minecraft/unused/packageinfo/PackageInfo9417 +c net/minecraft/class_9416 net/minecraft/nbt/NbtParsingRule + f Lnet/minecraft/class_2522; field_57559 nbtReader + m (Lcom/mojang/serialization/DynamicOps;)V + p 1 ops + m (Lnet/minecraft/class_9393;)Lcom/mojang/serialization/Dynamic; method_68253 parse +c net/minecraft/class_9413 net/minecraft/util/packrat/Literals + m (C)Lnet/minecraft/class_9402; method_58346 character + p 0 c + m (CC)Lnet/minecraft/class_9402; method_68248 character + p 1 c2 + p 0 c1 + m (Ljava/lang/String;I)Lcom/mojang/brigadier/StringReader; method_68249 createReader + p 0 string + p 1 cursor + m (Ljava/lang/String;)Lnet/minecraft/class_9402; method_58347 string + p 0 string +c net/minecraft/class_9413$class_10851 net/minecraft/util/packrat/Literals$CharacterLiteral + f Lnet/minecraft/class_9401; field_57555 suggestions + f Lnet/minecraft/class_10837; field_57554 exception + m (Lit/unimi/dsi/fastutil/chars/CharList;)V + p 1 values + m (Lit/unimi/dsi/fastutil/chars/CharList;Lnet/minecraft/class_9393;)Ljava/util/stream/Stream; method_68251 method_68251 + p 1 state + m (C)Z method_68250 accepts + p 1 c +c net/minecraft/class_9413$class_9415 net/minecraft/util/packrat/Literals$StringLiteral + f Ljava/lang/String; field_57556 value + f Lnet/minecraft/class_10837; field_57557 exception + f Lnet/minecraft/class_9401; field_57558 suggestions + m (Ljava/lang/String;)V + p 1 value + m (Ljava/lang/String;Lnet/minecraft/class_9393;)Ljava/util/stream/Stream; method_68252 method_68252 + p 1 state +c net/minecraft/class_12263 net/minecraft/entity/mob/ParchedEntity + m ()Lnet/minecraft/class_5132$class_5133; method_76105 createParchedAttributes +c net/minecraft/class_12261 net/minecraft/entity/mob/CamelHuskEntity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_7689; method_45347 createChild +c net/minecraft/class_12260 net/minecraft/inventory/StackReferenceGetter + m (I)Lnet/minecraft/class_5630; method_32318 getStackReference + p 1 slot + m (Lit/unimi/dsi/fastutil/ints/IntList;)Lnet/minecraft/class_12271; method_76093 getStackReferences + p 1 slots +c net/minecraft/class_12267 net/minecraft/loot/slot/FilteredSlotSource + f Lnet/minecraft/class_2073; field_64153 itemFilter + f Lcom/mojang/serialization/MapCodec; field_64152 CODEC + m (Lnet/minecraft/class_12275;Lnet/minecraft/class_2073;)V + p 1 slotSource + p 2 itemFilter + m (Lnet/minecraft/class_12267;)Lnet/minecraft/class_2073; method_76116 method_76116 + p 0 source + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76117 method_76117 + p 0 instance +c net/minecraft/class_12266 net/minecraft/loot/slot/EmptySlotSourceType + f Lcom/mojang/serialization/MapCodec; field_64151 CODEC +c net/minecraft/class_12265 net/minecraft/loot/slot/ContentsSlotSource + f Lnet/minecraft/class_9666; field_64150 component + f Lcom/mojang/serialization/MapCodec; field_64149 CODEC + m (Lnet/minecraft/class_12265;)Lnet/minecraft/class_9666; method_76113 method_76113 + p 0 source + m (Lnet/minecraft/class_12275;Lnet/minecraft/class_9666;)V + p 1 slotSource + p 2 component + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76115 method_76115 + p 0 instance +c net/minecraft/class_12264 net/minecraft/loot/slot/CombinedSlotSource + f Ljava/util/function/Function; field_64148 source + f Ljava/util/List; field_64147 terms + m (Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; method_76112 createInlineCodec + p 0 termsToSource + m (Ljava/util/List;)V + p 1 terms + m (Lnet/minecraft/class_12264;)Ljava/util/List; method_76111 method_76111 + p 0 source + m (Lnet/minecraft/class_12264;)Ljava/util/List; method_76107 method_76107 + p 0 source + m (Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76110 method_76110 + p 1 instance + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; method_76109 createCodec + p 0 termsToSource +c net/minecraft/class_12269 net/minecraft/loot/slot/LimitSlotsSlotSource + f I field_64157 limit + f Lcom/mojang/serialization/MapCodec; field_64156 CODEC + m (Lnet/minecraft/class_12275;I)V + p 2 limit + p 1 slotSource + m (Lnet/minecraft/class_12269;)Ljava/lang/Integer; method_76118 method_76118 + p 0 source + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76119 method_76119 + p 0 instance +c net/minecraft/class_12268 net/minecraft/loot/slot/GroupSlotSource + f Lcom/mojang/serialization/Codec; field_64155 INLINE_CODEC + f Lcom/mojang/serialization/MapCodec; field_64154 CODEC + m (Ljava/util/List;)V + p 1 sources +c net/minecraft/class_567 net/minecraft/client/render/entity/model/GhastEntityModel + c Represents the model of a ghast-like entity.\n\n

\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#BODY}{@linkplain #root Root part}
{@code tentacle0}{@linkplain #root Root part}{@link #tentacles tentacles[0]}
{@code tentacle1}{@linkplain #root Root part}{@link #tentacles tentacles[1]}
{@code tentacle2}{@linkplain #root Root part}{@link #tentacles tentacles[2]}
{@code tentacle3}{@linkplain #root Root part}{@link #tentacles tentacles[3]}
{@code tentacle4}{@linkplain #root Root part}{@link #tentacles tentacles[4]}
{@code tentacle5}{@linkplain #root Root part}{@link #tentacles tentacles[5]}
{@code tentacle6}{@linkplain #root Root part}{@link #tentacles tentacles[6]}
{@code tentacle7}{@linkplain #root Root part}{@link #tentacles tentacles[7]}
{@code tentacle8}{@linkplain #root Root part}{@link #tentacles tentacles[8]}
\n
+ f [Lnet/minecraft/class_630; field_3372 tentacles + m (Lnet/minecraft/class_10017;[Lnet/minecraft/class_630;)V method_70929 setTentacleAngles + p 1 tentacles + p 0 state + m ()Lnet/minecraft/class_5607; method_32000 getTexturedModelData + m (Lnet/minecraft/class_10029;)V method_62088 setAngles +c net/minecraft/class_566 net/minecraft/client/render/entity/model/EndermanEntityModel + c Represents the model of an enderman-like living entity.\n\n

The model parts are the same as a {@link BipedEntityModel} but with different proportions.\n\n

\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HAT}Root part{@link #hat}
{@value EntityModelPartNames#HEAD}Root part{@link #head}
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value EntityModelPartNames#RIGHT_ARM}Root part{@link #rightArm}
{@value EntityModelPartNames#LEFT_ARM}Root part{@link #leftArm}
{@value EntityModelPartNames#RIGHT_LEG}Root part{@link #rightLeg}
{@value EntityModelPartNames#LEFT_LEG}Root part{@link #leftLeg}
\n
+ m ()Lnet/minecraft/class_5607; method_31995 getTexturedModelData + m (Lnet/minecraft/class_10016;)V method_62085 setAngles +c net/minecraft/class_565 net/minecraft/client/render/entity/model/EndermiteEntityModel + c Represents the model of an endermite-like entity.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@code segment0}{@linkplain #root Root part}{@link #bodySegments bodySegments[0]}
{@code segment1}{@linkplain #root Root part}{@link #bodySegments bodySegments[1]}
{@code segment2}{@linkplain #root Root part}{@link #bodySegments bodySegments[2]}
{@code segment3}{@linkplain #root Root part}{@link #bodySegments bodySegments[3]}
\n
+ f [[I field_3366 SEGMENT_DIMENSIONS + f I field_32473 BODY_SEGMENTS_COUNT + f [[I field_3369 SEGMENT_UVS + f [Lnet/minecraft/class_630; field_3368 bodySegments + m ()Lnet/minecraft/class_5607; method_31996 getTexturedModelData + m (I)Ljava/lang/String; method_31997 getSegmentName + p 0 index + m (Lnet/minecraft/class_10017;)V method_72850 setAngles +c net/minecraft/class_564 net/minecraft/client/render/entity/model/DrownedEntityModel + m (Lnet/minecraft/class_10086;)V method_17791 setAngles + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5607; method_31993 getTexturedModelData + p 0 dilation +c net/minecraft/class_568 net/minecraft/client/render/entity/model/EvokerFangsEntityModel + c Represents the model of an evoker-fangs-like entity.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value #BASE}{@linkplain #root Root part}{@link #base}
{@value #UPPER_JAW}{@linkplain #root Root part}{@link #upperJaw}
{@value #LOWER_JAW}{@linkplain #root Root part}{@link #lowerJaw}
\n
+ f Lnet/minecraft/class_630; field_3374 base + f Ljava/lang/String; field_32474 BASE + c The key of the base model part, whose value is {@value}. + f Ljava/lang/String; field_32475 UPPER_JAW + c The key of the upper jaw model part, whose value is {@value}. + f Ljava/lang/String; field_32476 LOWER_JAW + c The key of the lower jaw model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_3376 upperJaw + f Lnet/minecraft/class_630; field_3375 lowerJaw + m (Lnet/minecraft/class_10020;)V method_62086 setAngles + m ()Lnet/minecraft/class_5607; method_31998 getTexturedModelData +c net/minecraft/class_563 net/minecraft/client/render/entity/model/ElytraEntityModel + c Represents the model of a worn elytra.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#LEFT_WING}Root part{@link #leftWing}
{@value EntityModelPartNames#RIGHT_WING}Root part{@link #rightWing}
\n
+ f Lnet/minecraft/class_9953; field_52897 BABY_TRANSFORMER + f Lnet/minecraft/class_630; field_27412 rightWing + f Lnet/minecraft/class_630; field_3365 leftWing + m ()Lnet/minecraft/class_5607; method_31994 getTexturedModelData + m (Lnet/minecraft/class_10034;)V method_17079 setAngles +c net/minecraft/class_562 net/minecraft/client/render/entity/model/CreeperEntityModel + c Represents the model of a creeper-like entity.\nThis model is not tied to a specific entity.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}{@linkplain #root Root part}{@link #head}
{@value EntityModelPartNames#BODY}{@linkplain #root Root part}
{@value EntityModelPartNames#RIGHT_HIND_LEG}{@linkplain #root Root part}{@link #rightHindLeg}
{@value EntityModelPartNames#LEFT_HIND_LEG}{@linkplain #root Root part}{@link #leftHindLeg}
{@value EntityModelPartNames#RIGHT_FRONT_LEG}{@linkplain #root Root part}{@link #rightFrontLeg}
{@value EntityModelPartNames#LEFT_FRONT_LEG}{@linkplain #root Root part}{@link #leftFrontLeg}
\n
+ f I field_32472 HEAD_AND_BODY_Y_PIVOT + f Lnet/minecraft/class_630; field_27410 rightFrontLeg + f Lnet/minecraft/class_630; field_27407 leftHindLeg + f Lnet/minecraft/class_630; field_27408 rightHindLeg + f Lnet/minecraft/class_630; field_27409 leftFrontLeg + f Lnet/minecraft/class_630; field_3360 head + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5607; method_31991 getTexturedModelData + p 0 dilation + m (Lnet/minecraft/class_10010;)V method_62075 setAngles +c net/minecraft/class_561 net/minecraft/client/render/entity/model/CodEntityModel + c Represents the model of a cod-like entity.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#BODY}{@linkplain #root Root part}
{@value EntityModelPartNames#HEAD}{@linkplain #root Root part}
{@value EntityModelPartNames#NOSE}{@linkplain #root Root part}
{@value EntityModelPartNames#RIGHT_FIN}{@linkplain #root Root part}
{@value EntityModelPartNames#LEFT_FIN}{@linkplain #root Root part}
{@value EntityModelPartNames#TAIL_FIN}{@linkplain #root Root part}{@link #tailFin}
{@value EntityModelPartNames#TOP_FIN}{@linkplain #root Root part}
\n
+ f Lnet/minecraft/class_630; field_3350 tailFin + m (Lnet/minecraft/class_10042;)V method_62074 setAngles + m ()Lnet/minecraft/class_5607; method_31989 getTexturedModelData +c net/minecraft/class_560 net/minecraft/client/render/entity/model/CowEntityModel + c Represents the model of a cow-like entity.\nThis model is not tied to a specific entity.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}Root part{@link #head}
{@value EntityModelPartNames#RIGHT_HORN}{@value EntityModelPartNames#HEAD}
{@value EntityModelPartNames#LEFT_HORN}{@value EntityModelPartNames#HEAD}
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value EntityModelPartNames#RIGHT_HIND_LEG}Root part{@link #rightHindLeg}
{@value EntityModelPartNames#LEFT_HIND_LEG}Root part{@link #leftHindLeg}
{@value EntityModelPartNames#RIGHT_FRONT_LEG}Root part{@link #rightFrontLeg}
{@value EntityModelPartNames#LEFT_FRONT_LEG}Root part{@link #leftFrontLeg}
\n
+ f Lnet/minecraft/class_9953; field_52893 BABY_TRANSFORMER + m ()Lnet/minecraft/class_5607; method_31990 getTexturedModelData + m ()Lnet/minecraft/class_630; method_2800 getHead + m ()Lnet/minecraft/class_5609; method_67469 getModelData +c net/minecraft/class_12212 net/minecraft/world/attribute/EnvironmentAttributeModifier + f Ljava/util/Map; field_63769 FLOAT_MODIFIERS + f Ljava/util/Map; field_63768 BOOLEAN_MODIFIERS + f Ljava/util/Map; field_64128 ARGB + f Ljava/util/Map; field_64127 RGB + m (Lnet/minecraft/class_12197;)Lcom/mojang/serialization/Codec; argumentCodec argumentCodec + p 1 attribute + m (Lnet/minecraft/class_12197;)Lnet/minecraft/class_12210; argumentKeyframeLerp argumentKeyframeLerp + p 1 attribute + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 value + p 2 argument + m ()Lnet/minecraft/class_12212; method_75713 override +c net/minecraft/class_12212$class_12213 net/minecraft/world/attribute/EnvironmentAttributeModifier$Type + f Ljava/lang/String; field_63785 name + f Lnet/minecraft/class_12212$class_12213; field_64353 BLEND_TO_GRAY + f Lcom/mojang/serialization/Codec; field_63784 CODEC + f Lnet/minecraft/class_12212$class_12213; field_63779 NAND + f Lnet/minecraft/class_12212$class_12213; field_63778 AND + f Lnet/minecraft/class_12212$class_12213; field_63777 MAXIMUM + f Lnet/minecraft/class_12212$class_12213; field_63776 MINIMUM + f Lnet/minecraft/class_12212$class_12213; field_63775 MULTIPLY + f Lnet/minecraft/class_12212$class_12213; field_63783 XNOR + f Lnet/minecraft/class_12212$class_12213; field_63782 XOR + f Lnet/minecraft/class_12212$class_12213; field_63781 NOR + f Lnet/minecraft/class_12212$class_12213; field_63780 OR + f Lnet/minecraft/class_12212$class_12213; field_63774 SUBTRACT + f Lnet/minecraft/class_12212$class_12213; field_63773 ADD + f Lnet/minecraft/class_12212$class_12213; field_63772 ALPHA_BLEND + f Lnet/minecraft/class_12212$class_12213; field_63771 OVERRIDE + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_12212$class_12214 net/minecraft/world/attribute/EnvironmentAttributeModifier$OverrideModifier + f Lnet/minecraft/class_12212$class_12214; field_63787 INSTANCE +c net/minecraft/class_12211 net/minecraft/world/attribute/WeightedAttributeList + f Lit/unimi/dsi/fastutil/objects/Reference2DoubleArrayMap; field_63767 entries + m (Lnet/minecraft/class_12197;Ljava/lang/Object;)Ljava/lang/Object; method_75712 interpolate + p 1 attribute + p 2 defaultValue + m (DLnet/minecraft/class_12199;)Lnet/minecraft/class_12211; method_75711 add + p 3 attributes + p 1 weight + m ()V method_75710 clear +c net/minecraft/class_12210 net/minecraft/util/math/Interpolator + m ()Lnet/minecraft/class_12210; method_75709 ofColor + m (F)Lnet/minecraft/class_12210; method_75707 threshold + p 0 threshold + m ()Lnet/minecraft/class_12210; method_75706 ofFloat + m (F)Lnet/minecraft/class_12210; method_76426 angle + p 0 maxDeviation + m (FFLjava/lang/Float;Ljava/lang/Float;)Ljava/lang/Float; method_76427 method_76427 + p 3 b + p 2 a + p 1 t + m ()Lnet/minecraft/class_12210; method_76429 first + m (FFLjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; method_75708 method_75708 + p 1 t + p 3 b + p 2 a + m (FLjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 2 a + p 1 t + p 3 b + m (FLjava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; method_76428 method_76428 + p 2 b + p 0 t + p 1 a +c net/minecraft/class_12216 net/minecraft/world/attribute/ColorModifier + f Lnet/minecraft/class_12216; field_63795 ALPHA_BLEND + f Lnet/minecraft/class_12216; field_63796 ADD + f Lnet/minecraft/class_12216; field_64129 MULTIPLY_ARGB + f Lnet/minecraft/class_12216; field_63797 SUBTRACT + f Lnet/minecraft/class_12216; field_64354 BLEND_TO_GRAY + f Lnet/minecraft/class_12216; field_63798 MULTIPLY_RGB +c net/minecraft/class_12216$class_12318 net/minecraft/world/attribute/ColorModifier$BlendToGrayArg + f Lcom/mojang/serialization/Codec; field_64355 CODEC + f F comp_5214 factor + f F comp_5213 brightness + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76438 method_76438 + p 0 instance + m ()F comp_5213 brightness + m ()F comp_5214 factor + m (FF)V + p 1 brightness + p 2 factor +c net/minecraft/class_12216$2 net/minecraft/world/attribute/ColorModifier$2 + m (Ljava/lang/Integer;Lnet/minecraft/class_12216$class_12318;)Ljava/lang/Integer; method_76437 apply + m (FLnet/minecraft/class_12216$class_12318;Lnet/minecraft/class_12216$class_12318;)Lnet/minecraft/class_12216$class_12318; method_76436 method_76436 + p 2 b + p 1 a + p 0 t +c net/minecraft/class_12216$1 net/minecraft/world/attribute/ColorModifier$1 + m (Ljava/lang/Integer;Ljava/lang/Integer;)Ljava/lang/Integer; method_75717 apply +c net/minecraft/class_12216$class_12217 net/minecraft/world/attribute/ColorModifier$Rgb +c net/minecraft/class_12216$class_12258 net/minecraft/world/attribute/ColorModifier$Argb + m (Ljava/lang/Integer;)Lcom/mojang/datafixers/util/Either; method_76084 method_76084 + p 0 argb +c net/minecraft/class_12215 net/minecraft/world/attribute/BooleanModifier + f Lnet/minecraft/class_12215; field_63788 AND + f Lnet/minecraft/class_12215; field_63789 NAND + f Lnet/minecraft/class_12215; field_63792 XOR + f Lnet/minecraft/class_12215; field_63793 XNOR + f Lnet/minecraft/class_12215; field_63790 OR + f Lnet/minecraft/class_12215; field_63791 NOR + m (Ljava/lang/Boolean;Ljava/lang/Boolean;)Ljava/lang/Boolean; method_75715 apply +c net/minecraft/class_12218 net/minecraft/world/attribute/FloatModifier + f Lnet/minecraft/class_12218; field_63803 MINIMUM + f Lnet/minecraft/class_12218; field_63804 MAXIMUM + f Lnet/minecraft/class_12218; field_63801 SUBTRACT + f Lnet/minecraft/class_12218; field_63802 MULTIPLY + f Lnet/minecraft/class_12218; field_63799 ALPHA_BLEND + f Lnet/minecraft/class_12218; field_63800 ADD + m (Ljava/lang/Float;Ljava/lang/Float;)Ljava/lang/Float; method_75719 method_75719 + p 1 b + p 0 a + m (Ljava/lang/Float;Ljava/lang/Float;)Ljava/lang/Float; method_75718 method_75718 + p 0 a + p 1 b +c net/minecraft/class_12218$1 net/minecraft/world/attribute/FloatModifier$1 + m (FLnet/minecraft/class_12220;Lnet/minecraft/class_12220;)Lnet/minecraft/class_12220; method_76439 method_76439 + p 2 b + p 1 a + p 0 t + m (Ljava/lang/Float;Lnet/minecraft/class_12220;)Ljava/lang/Float; method_75720 apply +c net/minecraft/class_12218$class_12219 net/minecraft/world/attribute/FloatModifier$Binary +c net/minecraft/class_578 net/minecraft/client/render/entity/model/LlamaEntityModel + c Represents the model of a llama-like entity.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}Root part{@link #head}
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value EntityModelPartNames#RIGHT_CHEST}Root part{@link #rightChest}
{@value EntityModelPartNames#LEFT_CHEST}Root part{@link #leftChest}
{@value EntityModelPartNames#RIGHT_HIND_LEG}Root part{@link #rightHindLeg}
{@value EntityModelPartNames#LEFT_HIND_LEG}Root part{@link #leftHindLeg}
{@value EntityModelPartNames#RIGHT_FRONT_LEG}Root part{@link #rightFrontLeg}
{@value EntityModelPartNames#LEFT_FRONT_LEG}Root part{@link #leftFrontLeg}
\n
+ f Lnet/minecraft/class_630; field_27443 head + f Lnet/minecraft/class_9953; field_52920 BABY_TRANSFORMER + f Lnet/minecraft/class_630; field_27450 leftChest + f Lnet/minecraft/class_630; field_27449 rightChest + f Lnet/minecraft/class_630; field_27448 leftFrontLeg + f Lnet/minecraft/class_630; field_27447 rightFrontLeg + f Lnet/minecraft/class_630; field_27446 leftHindLeg + f Lnet/minecraft/class_630; field_27445 rightHindLeg + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5609; method_62094 transformBaby + p 0 modelData + m (Lnet/minecraft/class_10043;)V method_22962 setAngles + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5607; method_32018 getTexturedModelData + p 0 dilation +c net/minecraft/class_576 net/minecraft/client/render/entity/model/MagmaCubeEntityModel + f [Lnet/minecraft/class_630; field_3427 slices + f I field_32508 SLICES_COUNT + m (I)Ljava/lang/String; method_32015 getSliceName + p 0 index + m ()Lnet/minecraft/class_5607; method_32014 getTexturedModelData + m (Lnet/minecraft/class_10067;)V method_22958 setAngles +c net/minecraft/class_575 net/minecraft/client/render/entity/model/IllagerEntityModel + f Lnet/minecraft/class_630; field_3417 leftArm + f Lnet/minecraft/class_630; field_3418 rightLeg + f Lnet/minecraft/class_630; field_3419 hat + f Lnet/minecraft/class_630; field_3423 arms + f Lnet/minecraft/class_630; field_3426 rightArm + f Lnet/minecraft/class_630; field_3420 leftLeg + f Lnet/minecraft/class_630; field_3422 head + m (Lnet/minecraft/class_10035;)V method_17094 setAngles + m (Lnet/minecraft/class_10035;Lnet/minecraft/class_1306;Lnet/minecraft/class_4587;)V method_72855 setArmAngle + m ()Lnet/minecraft/class_630; method_2812 getHat + m ()Lnet/minecraft/class_5607; method_32012 getTexturedModelData + m (Lnet/minecraft/class_1306;)Lnet/minecraft/class_630; method_2813 getAttackingArm + p 1 arm +c net/minecraft/class_579 net/minecraft/client/render/entity/model/LeashKnotEntityModel + c Represents the model of a leash-knot-like entity.\n\n
\n\n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value KNOT}{@linkplain #root Root part}{@link #knot}
\n
+ f Ljava/lang/String; field_32509 KNOT + c The key of the knot model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_3431 knot + m ()Lnet/minecraft/class_5607; method_32017 getTexturedModelData +c net/minecraft/class_570 net/minecraft/client/render/entity/model/GuardianEntityModel + f Lnet/minecraft/class_630; field_3379 head + f [Lnet/minecraft/class_630; field_3380 spikes + f [F field_17131 SPIKE_PITCHES + f Lnet/minecraft/class_9953; field_52915 ELDER_TRANSFORMER + f [F field_17132 SPIKE_YAWS + f [F field_17135 SPIKE_PIVOTS_Y + f Lnet/minecraft/class_630; field_3381 eye + f [F field_17136 SPIKE_PIVOTS_Z + f Ljava/lang/String; field_32480 EYE + c The key of the eye model part, whose value is {@value}. + f [F field_17133 SPIKE_ROLLS + f [Lnet/minecraft/class_630; field_3378 tail + f [F field_17134 SPIKE_PIVOTS_X + f Ljava/lang/String; field_32483 TAIL2 + c The key of the tail2 model part, whose value is {@value}. + f Ljava/lang/String; field_32481 TAIL0 + c The key of the tail0 model part, whose value is {@value}. + f Ljava/lang/String; field_32482 TAIL1 + c The key of the tail1 model part, whose value is {@value}. + m (IFF)F method_32007 getSpikePivotZ + p 0 index + p 1 animationProgress + p 2 extension + m (Lnet/minecraft/class_10031;)V method_17083 setAngles + m (IFF)F method_32005 getSpikePivotX + p 2 extension + p 0 index + p 1 animationProgress + m (IFF)F method_32006 getSpikePivotY + p 1 animationProgress + p 2 extension + p 0 index + m ()Lnet/minecraft/class_5607; method_32002 getTexturedModelData + m (IFF)F method_32004 getAngle + p 0 index + p 1 animationProgress + p 2 magnitude + m (FF)V method_24185 updateSpikeExtensions + p 2 extension + p 1 animationProgress + m ()Lnet/minecraft/class_5607; method_62090 getElderTexturedModelData + m (I)Ljava/lang/String; method_32003 getSpikeName + p 0 index +c net/minecraft/class_574 net/minecraft/client/render/entity/model/IronGolemEntityModel + f Lnet/minecraft/class_630; field_3415 head + f Lnet/minecraft/class_630; field_27439 rightLeg + f Lnet/minecraft/class_630; field_27438 leftArm + f Lnet/minecraft/class_630; field_27437 rightArm + f Lnet/minecraft/class_630; field_27440 leftLeg + m ()Lnet/minecraft/class_5607; method_32013 getTexturedModelData + m (Lnet/minecraft/class_10037;)V method_17097 setAngles + m ()Lnet/minecraft/class_630; method_2809 getRightArm +c net/minecraft/class_572 net/minecraft/client/render/entity/model/BipedEntityModel + c Represents the model of a biped living entity.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HAT}Root part{@link #hat}
{@value EntityModelPartNames#HEAD}Root part{@link #head}
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value EntityModelPartNames#RIGHT_ARM}Root part{@link #rightArm}
{@value EntityModelPartNames#LEFT_ARM}Root part{@link #leftArm}
{@value EntityModelPartNames#RIGHT_LEG}Root part{@link #rightLeg}
{@value EntityModelPartNames#LEFT_LEG}Root part{@link #leftLeg}
\n
+ f Lnet/minecraft/class_630; field_3398 head + f Lnet/minecraft/class_630; field_3401 rightArm + f Lnet/minecraft/class_630; field_27433 leftArm + f F field_32507 SPYGLASS_SNEAKING_ARM_PITCH_OFFSET + f F field_32503 SPYGLASS_ARM_YAW_OFFSET + f Lnet/minecraft/class_9953; field_52918 BABY_TRANSFORMER + f F field_32504 SPYGLASS_ARM_PITCH_OFFSET + f Lnet/minecraft/class_630; field_3394 hat + f Lnet/minecraft/class_630; field_3397 leftLeg + f Lnet/minecraft/class_630; field_3391 body + f Lnet/minecraft/class_630; field_3392 rightLeg + m (Ljava/util/function/Function;Lnet/minecraft/class_5605;Lnet/minecraft/class_5605;)Lnet/minecraft/class_11677; method_72853 createEquipmentModelData + p 0 toModelData + p 1 hatDilation + p 2 armorDilation + m (Lnet/minecraft/class_5605;Lnet/minecraft/class_5605;)Lnet/minecraft/class_11677; method_72854 createEquipmentModelData + p 1 armorDilation + p 0 hatDilation + m (Lnet/minecraft/class_1306;)Lnet/minecraft/class_630; method_2808 getArm + p 1 arm + m (Lnet/minecraft/class_10034;)V method_30155 positionLeftArm + p 1 state + m (Lnet/minecraft/class_10034;)V method_30154 positionRightArm + p 1 state + m (Lnet/minecraft/class_10034;)V method_17087 setAngles + m (Lnet/minecraft/class_5605;F)Lnet/minecraft/class_5609; method_32011 getModelData + p 1 pivotOffsetY + p 0 dilation + m (Z)V method_2805 setVisible + p 1 visible + m (Lnet/minecraft/class_630;Z)V method_54131 positionBlockingArm + p 2 rightArm + p 1 arm + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5609; method_72851 createEquipmentModelData + p 0 dilation + m (Lnet/minecraft/class_10034;Lnet/minecraft/class_1306;Lnet/minecraft/class_4587;)V method_72852 setArmAngle + m (Lnet/minecraft/class_10034;)V method_29353 animateArms + p 1 state +c net/minecraft/class_572$class_573 net/minecraft/client/render/entity/model/BipedEntityModel$ArmPose + f Z field_25722 twoHanded + f Lnet/minecraft/class_572$class_573; field_39071 TOOT_HORN + f Lnet/minecraft/class_572$class_573; field_42877 BRUSH + f Lnet/minecraft/class_572$class_573; field_27434 SPYGLASS + f Lnet/minecraft/class_572$class_573; field_63542 THROW_TRIDENT + f Lnet/minecraft/class_572$class_573; field_63543 SPEAR + f Lnet/minecraft/class_572$class_573; field_3410 ITEM + f Lnet/minecraft/class_572$class_573; field_3408 CROSSBOW_HOLD + f Lnet/minecraft/class_572$class_573; field_3409 EMPTY + f Lnet/minecraft/class_572$class_573; field_3406 BLOCK + f Lnet/minecraft/class_572$class_573; field_3405 CROSSBOW_CHARGE + f Lnet/minecraft/class_572$class_573; field_3403 BOW_AND_ARROW + m ()Z method_30156 isTwoHanded + m (Ljava/lang/String;IZZ)V + p 1 name + p 3 twoHanded + p 2 id +c net/minecraft/class_571 net/minecraft/client/render/entity/model/RavagerEntityModel + f Lnet/minecraft/class_630; field_27491 leftHindLeg + f Lnet/minecraft/class_630; field_27490 rightHindLeg + f Lnet/minecraft/class_630; field_3386 head + f Lnet/minecraft/class_630; field_3388 jaw + f Lnet/minecraft/class_630; field_3384 neck + f Lnet/minecraft/class_630; field_27493 leftFrontLeg + f Lnet/minecraft/class_630; field_27492 rightFrontLeg + m (Lnet/minecraft/class_10060;)V method_17091 setAngles + m ()Lnet/minecraft/class_5607; method_32035 getTexturedModelData +c net/minecraft/class_12205 net/minecraft/world/attribute/WorldEnvironmentAttributeAccess + f Ljava/util/Map; field_64321 entries + m (Lnet/minecraft/class_12205$class_12314;Lnet/minecraft/class_7225;Lnet/minecraft/class_4543;)V method_76403 addModifiersFromBiomes + p 2 biomeAccess + p 1 biome + p 0 builder + m (Lnet/minecraft/class_12310;)Z method_76397 method_76397 + p 0 function + m (Lnet/minecraft/class_12205$class_12314;Lnet/minecraft/class_1937;)V method_76399 addModifiersFromWorld + p 0 builder + p 1 world + m (Lnet/minecraft/class_12205$class_12314;Lnet/minecraft/class_12197;Lnet/minecraft/class_4543;)V method_76398 addModifiersFromBiomes + p 1 attribute + p 0 builder + p 2 biomeAccess + m (Lnet/minecraft/class_12205$class_12314;Ljava/util/function/LongSupplier;Lnet/minecraft/class_6880;)V method_76402 method_76402 + p 2 attribute + m (Lnet/minecraft/class_12197;)Lnet/minecraft/class_12205$class_12315; method_76409 getEntry + p 1 attribute + m ()V method_76405 tick + m (Lnet/minecraft/class_12205$class_12314;Lnet/minecraft/class_4543;Lnet/minecraft/class_12197;)V method_76400 method_76400 + p 2 attribute + m (Lnet/minecraft/class_12197;)Z method_76408 isPositional + p 1 attribute + m (Ljava/util/Map;)V + p 1 modificationsByAttribute + m (Lnet/minecraft/class_12205$class_12314;Lnet/minecraft/class_2874;)V method_76401 addModifiersFromDimension + p 1 dimensionType + p 0 builder + m (Lnet/minecraft/class_12197;)Ljava/lang/Object; method_76406 getDefaultValue + p 1 attribute + m ()Lnet/minecraft/class_12205$class_12314; method_76394 builder + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_4543;Ljava/lang/Object;Lnet/minecraft/class_243;Lnet/minecraft/class_12211;)Ljava/lang/Object; method_76395 method_76395 + p 2 value + p 3 pos + p 4 weightedAttributeList + m (Lnet/minecraft/class_6880$class_6883;)Ljava/util/stream/Stream; method_76404 method_76404 + p 0 biome + m (Lnet/minecraft/class_12197;Ljava/util/List;)Lnet/minecraft/class_12205$class_12315; method_76396 computeEntry + p 1 attribute + p 2 mods + m (Lnet/minecraft/class_12197;Ljava/util/List;)V method_76407 method_76407 + p 1 attribute + p 2 mods +c net/minecraft/class_12205$class_12315 net/minecraft/world/attribute/WorldEnvironmentAttributeAccess$Entry + f Lnet/minecraft/class_12197; field_64323 attribute + f Ljava/util/List; field_64325 modifications + f Ljava/lang/Object; field_64327 cachedValue + f Ljava/lang/Object; field_64324 defaultValue + f I field_64328 age + f Z field_64326 positional + m ()V method_76421 tick + m (Lnet/minecraft/class_243;Lnet/minecraft/class_12211;)Ljava/lang/Object; method_76424 computeAt + p 1 pos + p 2 weightedAttributeList + m (Lnet/minecraft/class_243;Lnet/minecraft/class_12211;)Ljava/lang/Object; method_76422 getAt + p 1 pos + p 2 weightedAttributeList + m (Lnet/minecraft/class_12197;Ljava/lang/Object;Ljava/util/List;Z)V + p 2 defaultValue + p 1 attribute + p 4 positional + p 3 modifications + m ()Ljava/lang/Object; method_76425 compute + m ()Ljava/lang/Object; method_76423 get +c net/minecraft/class_12205$class_12314 net/minecraft/world/attribute/WorldEnvironmentAttributeAccess$Builder + f Ljava/util/Map; field_64322 modifications + m (Lnet/minecraft/class_12199;)Lnet/minecraft/class_12205$class_12314; method_76417 addFromMap + p 1 attributes + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_12205$class_12314; method_76418 world + p 1 world + m (Lnet/minecraft/class_6880;Ljava/util/function/LongSupplier;)Lnet/minecraft/class_12205$class_12314; method_76420 addFromTimeline + p 2 timeSupplier + p 1 timeline + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_12310$class_12311;)Lnet/minecraft/class_12205$class_12314; method_76412 constant + p 1 attribute + p 2 mod + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_12310$class_12312;)Lnet/minecraft/class_12205$class_12314; method_76413 positional + p 1 attribute + p 2 mod + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_12310$class_12313;)Lnet/minecraft/class_12205$class_12314; method_76414 timeBased + p 2 mod + p 1 attribute + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_12199;)Lnet/minecraft/class_12205$class_12314; method_76416 addFromMap + p 1 attribute + p 2 attributeMap + m ()Lnet/minecraft/class_12205; method_76410 build + m (Lnet/minecraft/class_12197;)Ljava/util/List; method_76411 method_76411 + p 0 attr + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_12310;)Lnet/minecraft/class_12205$class_12314; method_76415 addModification + p 2 mod + p 1 attribute + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_12197;Ljava/util/function/LongSupplier;)V method_76419 addModificationFromTimeline + p 1 timeline + p 3 timeSupplier + p 2 attribute +c net/minecraft/class_12204 net/minecraft/world/attribute/EnvironmentAttributeAccess + f Lnet/minecraft/class_12204; field_63738 DEFAULT + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_243;Lnet/minecraft/class_12211;)Ljava/lang/Object; method_75696 getAttributeValue + p 3 pool + p 2 pos + p 1 attribute + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_243;)Ljava/lang/Object; method_75695 getAttributeValue + p 1 attribute + p 2 pos + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_2338;)Ljava/lang/Object; method_75697 getAttributeValue + p 2 pos + p 1 attribute + m (Lnet/minecraft/class_12197;)Ljava/lang/Object; method_75694 getAttributeValue + p 1 attribute +c net/minecraft/class_12202 net/minecraft/world/attribute/EnvironmentAttributeInterpolator + f Ljava/util/function/Function; field_63731 entryFactory + f Lnet/minecraft/class_1937; field_63732 world + f Ljava/util/Map; field_63730 entries + f Lnet/minecraft/class_12211; field_63734 pool + f Lnet/minecraft/class_243; field_63733 pos + m ()V method_75686 clear + m (Lnet/minecraft/class_12197;F)Ljava/lang/Object; method_75689 get + p 1 attribute + p 2 tickProgress + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_243;)V method_75690 update + p 2 pos + p 1 world + m (DLnet/minecraft/class_6880;)V method_75687 method_75687 + p 3 biome + p 1 weight + m (Lnet/minecraft/class_12197;)Lnet/minecraft/class_12202$class_12203; method_75688 method_75688 + p 1 value +c net/minecraft/class_12202$class_12203 net/minecraft/world/attribute/EnvironmentAttributeInterpolator$Entry + f Ljava/lang/Object; field_63736 last + f Ljava/lang/Object; field_63737 current + m ()Z method_75691 update + c {@return whether this entry should subsequently be removed} + m (Lnet/minecraft/class_12197;)Ljava/lang/Object; method_75692 compute + p 1 attribute + m (Lnet/minecraft/class_12202;Lnet/minecraft/class_12197;)V + p 2 attribute + m (Lnet/minecraft/class_12197;F)Ljava/lang/Object; method_75693 get + p 1 attribute + p 2 tickProgress +c net/minecraft/class_12207 net/minecraft/util/math/WeightedInterpolation + f I field_63765 NUM_SEGMENTS + f [D field_63766 ENDPOINT_WEIGHTS + f I field_63764 FIRST_SEGMENT_OFFSET + m (Lnet/minecraft/class_243;Lnet/minecraft/class_12207$class_12209;Lnet/minecraft/class_12207$class_12208;)V method_75705 interpolate + p 0 pos + p 1 f + p 2 accum +c net/minecraft/class_12207$class_12208 net/minecraft/util/math/WeightedInterpolation$Accumulator + m (DLjava/lang/Object;)V accumulate accumulate + p 3 value + p 1 weight +c net/minecraft/class_12207$class_12209 net/minecraft/util/math/WeightedInterpolation$PositionalFunction + m (III)Ljava/lang/Object; get get + p 2 y + p 1 x + p 3 z +c net/minecraft/class_12206 net/minecraft/world/attribute/EnvironmentAttributes + f Lcom/mojang/serialization/Codec; field_63763 CODEC + f Lnet/minecraft/class_12197; field_64123 CLOUD_FOG_END_DISTANCE_VISUAL + f Lnet/minecraft/class_12197; field_64125 WATER_FOG_END_DISTANCE_VISUAL + f Lnet/minecraft/class_12197; field_64124 WATER_FOG_START_DISTANCE_VISUAL + f Lnet/minecraft/class_12197; field_64121 FOG_END_DISTANCE_VISUAL + f Lnet/minecraft/class_12197; field_64122 SKY_FOG_END_DISTANCE_VISUAL + f Lnet/minecraft/class_12197; field_64126 CLOUD_COLOR_VISUAL + f Lnet/minecraft/class_12197; field_64120 FOG_START_DISTANCE_VISUAL + f Lnet/minecraft/class_12197; field_63750 AMBIENT_PARTICLES_VISUAL + f Lnet/minecraft/class_12197; field_63751 BACKGROUND_MUSIC_AUDIO + f Lnet/minecraft/class_12197; field_63742 FOG_COLOR_VISUAL + f Lnet/minecraft/class_12197; field_63746 SKY_COLOR_VISUAL + f Lnet/minecraft/class_12197; field_63744 WATER_FOG_COLOR_VISUAL + f Lnet/minecraft/class_12197; field_63748 CLOUD_HEIGHT_VISUAL + f Lnet/minecraft/class_12197; field_63749 DEFAULT_DRIPSTONE_PARTICLE_VISUAL + f Lnet/minecraft/class_12197; field_63761 PIGLINS_ZOMBIFY_GAMEPLAY + f Lnet/minecraft/class_12197; field_63762 SNOW_GOLEM_MELTS_GAMEPLAY + f Lnet/minecraft/class_12197; field_63760 INCREASED_FIRE_BURNOUT_GAMEPLAY + f Lnet/minecraft/class_12197; field_63754 CAN_START_RAID_GAMEPLAY + f Lnet/minecraft/class_12197; field_63755 WATER_EVAPORATES_GAMEPLAY + f Lnet/minecraft/class_12197; field_63752 MUSIC_VOLUME_AUDIO + f Lnet/minecraft/class_12197; field_63753 AMBIENT_SOUNDS_AUDIO + f Lnet/minecraft/class_12197; field_63758 NETHER_PORTAL_SPAWNS_PIGLIN_GAMEPLAY + f Lnet/minecraft/class_12197; field_63759 FAST_LAVA_GAMEPLAY + f Lnet/minecraft/class_12197; field_63756 BED_RULE_GAMEPLAY + f Lnet/minecraft/class_12197; field_63757 RESPAWN_ANCHOR_WORKS_GAMEPLAY + f Lnet/minecraft/class_12197; field_64329 EYEBLOSSOM_OPEN_GAMEPLAY + f Lnet/minecraft/class_12197; field_64330 TURTLE_EGG_HATCH_CHANCE_GAMEPLAY + f Lnet/minecraft/class_12197; field_64334 BEES_STAY_IN_HIVE_GAMEPLAY + f Lnet/minecraft/class_12197; field_64333 CAT_WAKING_UP_GIFT_CHANCE_GAMEPLAY + f Lnet/minecraft/class_12197; field_64335 MONSTERS_BURN_GAMEPLAY + f Lnet/minecraft/class_12197; field_64331 CREAKING_ACTIVE_GAMEPLAY + f Lnet/minecraft/class_12197; field_64332 SURFACE_SLIME_SPAWN_CHANCE_GAMEPLAY + f Lnet/minecraft/class_12197; field_64338 BABY_VILLAGER_ACTIVITY_GAMEPLAY + f Lnet/minecraft/class_12197; field_64339 SUNRISE_SUNSET_COLOR_VISUAL + f Lnet/minecraft/class_12197; field_64336 CAN_PILLAGER_PATROL_SPAWN_GAMEPLAY + f Lnet/minecraft/class_12197; field_64337 VILLAGER_ACTIVITY_GAMEPLAY + f Lnet/minecraft/class_12197; field_64341 MOON_ANGLE_VISUAL + f Lnet/minecraft/class_12197; field_64342 STAR_ANGLE_VISUAL + f Lnet/minecraft/class_12197; field_64340 SUN_ANGLE_VISUAL + f Lnet/minecraft/class_12197; field_64346 SKY_LIGHT_FACTOR_VISUAL + f Lnet/minecraft/class_12197; field_64347 FIREFLY_BUSH_SOUNDS_AUDIO + f Lnet/minecraft/class_12197; field_64343 MOON_PHASE_VISUAL + f Lnet/minecraft/class_12197; field_64345 SKY_LIGHT_COLOR_VISUAL + f Lnet/minecraft/class_12197; field_64344 STAR_BRIGHTNESS_VISUAL + f Lnet/minecraft/class_12197; field_64348 SKY_LIGHT_LEVEL_GAMEPLAY + m (Ljava/lang/String;Lnet/minecraft/class_12197$class_12198;)Lnet/minecraft/class_12197; method_75703 register + p 1 builder + p 0 path + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_12197; method_75704 registerAndGetDefault + p 0 registry +c net/minecraft/class_588 net/minecraft/client/render/entity/model/PhantomEntityModel + f Lnet/minecraft/class_630; field_3471 tailBase + f Lnet/minecraft/class_630; field_3476 leftWingTip + f Lnet/minecraft/class_630; field_3477 leftWingBase + f Lnet/minecraft/class_630; field_3472 rightWingTip + f Lnet/minecraft/class_630; field_3473 tailTip + f Lnet/minecraft/class_630; field_3474 rightWingBase + f Ljava/lang/String; field_32535 TAIL_TIP + c The key of the tail tip model part, whose value is {@value}. + f Ljava/lang/String; field_32534 TAIL_BASE + c The key of the tail base model part, whose value is {@value}. + m (Lnet/minecraft/class_10052;)V method_33686 setAngles + m ()Lnet/minecraft/class_5607; method_32024 getTexturedModelData +c net/minecraft/class_587 net/minecraft/client/render/entity/model/PigEntityModel + c Represents the model of a pig-like entity. + f Lnet/minecraft/class_9953; field_52925 BABY_TRANSFORMER + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5609; method_66536 getModelData + p 0 dilation + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5607; method_32025 getTexturedModelData + p 0 dilation +c net/minecraft/class_586 net/minecraft/client/render/entity/model/PandaEntityModel + f Lnet/minecraft/class_9953; field_52924 BABY_TRANSFORMER + m (Lnet/minecraft/class_10050;)V method_17103 setAngles + m ()Lnet/minecraft/class_5607; method_32022 getTexturedModelData +c net/minecraft/class_581 net/minecraft/client/render/entity/model/LlamaSpitEntityModel + c Represents the model of llama-spit-like entity.\n\n
\n\n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value #MAIN}{@linkplain #root Root part}
\n
+ f Ljava/lang/String; field_32510 MAIN + c The key of the main model part, whose value is {@value}. + m ()Lnet/minecraft/class_5607; method_32019 getTexturedModelData +c net/minecraft/class_580 net/minecraft/client/render/entity/model/MinecartEntityModel + c Represents the model of a minecart-like entity.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@code bottom}{@linkplain #root Root part}
{@code front}{@linkplain #root Root part}
{@code back}{@linkplain #root Root part}
{@code left}{@linkplain #root Root part}
{@code right}{@linkplain #root Root part}
\n
+ m ()Lnet/minecraft/class_5607; method_32020 getTexturedModelData +c net/minecraft/class_584 net/minecraft/client/render/entity/model/ParrotEntityModel + f Lnet/minecraft/class_630; field_3458 body + f Lnet/minecraft/class_630; field_27460 rightWing + f Ljava/lang/String; field_32533 FEATHER + c The key of the feather model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_27459 leftWing + f Lnet/minecraft/class_630; field_3452 head + f Lnet/minecraft/class_630; field_27462 rightLeg + f Lnet/minecraft/class_630; field_3460 tail + f Lnet/minecraft/class_630; field_27461 leftLeg + m ()Lnet/minecraft/class_5607; method_32023 getTexturedModelData + m (Lnet/minecraft/class_10051;)V method_17112 setAngles + m (Lnet/minecraft/class_584$class_585;)V method_17110 animateModel + p 1 pose + m (Lnet/minecraft/class_1453;)Lnet/minecraft/class_584$class_585; method_17107 getPose + p 0 parrot +c net/minecraft/class_584$class_585 net/minecraft/client/render/entity/model/ParrotEntityModel$Pose + f Lnet/minecraft/class_584$class_585; field_3465 STANDING + f Lnet/minecraft/class_584$class_585; field_3466 SITTING + f Lnet/minecraft/class_584$class_585; field_3462 FLYING + f Lnet/minecraft/class_584$class_585; field_3463 PARTY + f Lnet/minecraft/class_584$class_585; field_3464 ON_SHOULDER +c net/minecraft/class_583 net/minecraft/client/render/entity/model/EntityModel + c Represents the model of an {@linkplain Entity}.\n\n

An instance of an entity model will not define the model data,\nbut will animate it.\nModel data may be defined in a static method, most of the children classes will\nhave a {@code getTexturedModelData} method.\nThe model data is usually passed in the constructor of the entity model.\n\n

Some children classes contain a model parts table, those tables contains\nthe model parts for the base model. In a modded context the tables may be\ninaccurate. Model parts with an associated field are required. + m (Lnet/minecraft/class_630;)V + p 1 root +c net/minecraft/class_582 net/minecraft/client/render/entity/model/FelineEntityModel + c Represents the model of an ocelot-like entity.\n\n

\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}Root part{@link #head}
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value #TAIL1}Root part{@link #upperTail}
{@value #TAIL2}Root part{@link #lowerTail}
{@value EntityModelPartNames#RIGHT_HIND_LEG}Root part{@link #rightHindLeg}
{@value EntityModelPartNames#LEFT_HIND_LEG}Root part{@link #leftHindLeg}
{@value EntityModelPartNames#RIGHT_FRONT_LEG}Root part{@link #rightFrontLeg}
{@value EntityModelPartNames#LEFT_FRONT_LEG}Root part{@link #leftFrontLeg}
\n
+ f Lnet/minecraft/class_630; field_3435 head + f Lnet/minecraft/class_630; field_3436 upperTail + f Lnet/minecraft/class_630; field_3437 body + f Lnet/minecraft/class_630; field_3442 lowerTail + f Lnet/minecraft/class_630; field_27457 rightFrontLeg + f Lnet/minecraft/class_630; field_27456 leftFrontLeg + f Lnet/minecraft/class_630; field_27455 rightHindLeg + f Lnet/minecraft/class_630; field_27454 leftHindLeg + f Ljava/lang/String; field_32519 TAIL2 + c The key of the lower tail model part, whose value is {@value}. + f Ljava/lang/String; field_32518 TAIL1 + c The key of the upper tail model part, whose value is {@value}. + f F field_32517 FRONT_LEG_PIVOT_Z + f F field_32528 BODY_SIZE_Y + f Lnet/minecraft/class_9953; field_52909 BABY_TRANSFORMER + f F field_32523 FRONT_LEG_PIVOT_Y + f F field_32522 HIND_LEG_PIVOT_Z + f F field_32521 HIND_LEG_PIVOT_Y + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5609; method_32021 getModelData + p 0 dilation + m (Lnet/minecraft/class_10024;)V method_62087 setAngles +c net/minecraft/class_12237 net/minecraft/client/font/EmptyGlyphRect + f F field_63886 DEFAULT_HEIGHT + f F field_63887 DEFAULT_ASCENT + f Lnet/minecraft/class_2583; comp_3317 style + f F comp_5155 y + f F comp_5156 advance + f F comp_5154 x + f F comp_5157 ascent + f F comp_5158 height + m ()F comp_5154 x + m ()F comp_5155 y + m ()F comp_5158 height + m ()F comp_5156 advance + m ()F comp_5157 ascent + m (FFFFFLnet/minecraft/class_2583;)V + p 1 x + p 2 y + p 3 advance + p 4 ascent + p 5 height + p 6 style +c net/minecraft/class_12236 net/minecraft/client/font/GlyphRect + m ()F method_75818 getLeft + m ()F method_75819 getTop + m ()F method_75821 getBottom + m ()F method_75820 getRight + m ()Lnet/minecraft/class_2583; comp_3317 style +c net/minecraft/class_12239 net/minecraft/network/NetworkingBackend + f Lnet/minecraft/class_12239; field_63934 NIO + f Lnet/minecraft/class_12239; field_63935 EPOLL + f Lnet/minecraft/class_12239; field_63936 LOCAL + f Ljava/lang/String; field_63937 name + f Lio/netty/channel/EventLoopGroup; field_63940 eventLoopGroup + f Ljava/lang/Class; field_63939 serverChannelClass + f Ljava/lang/Class; field_63938 channelClass + f Lnet/minecraft/class_12239; field_64090 KQUEUE + m ()Lio/netty/channel/EventLoopGroup; method_75873 createEventLoopGroup + m (Z)Lnet/minecraft/class_12239; method_75867 remote + p 0 useEpoll + m ()Lio/netty/channel/IoHandlerFactory; method_75868 newFactory + m ()Lio/netty/channel/EventLoopGroup; method_75869 getEventLoopGroup + m ()Ljava/util/concurrent/ThreadFactory; method_75872 createThreadFactory + m (Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Class;)V + p 1 name + p 3 serverChannelClass + p 2 channelClass + m ()Ljava/lang/Class; method_75870 getChannelClass + m ()Lnet/minecraft/class_12239; method_75866 local + m ()Ljava/lang/Class; method_75871 getServerChannelClass +c net/minecraft/class_599 net/minecraft/client/render/entity/model/SalmonEntityModel + f Ljava/lang/String; field_32547 BODY_FRONT + c The key of the body front model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_3548 tail + f Ljava/lang/String; field_32548 BODY_BACK + c The key of the body back model part, whose value is {@value}. + f Lnet/minecraft/class_9953; field_52935 LARGE_TRANSFORMER + f Lnet/minecraft/class_9953; field_52934 SMALL_TRANSFORMER + m ()Lnet/minecraft/class_5607; method_32036 getTexturedModelData + m (Lnet/minecraft/class_10062;)V method_62113 setAngles +c net/minecraft/class_598 net/minecraft/client/render/entity/model/SheepWoolEntityModel + m ()Lnet/minecraft/class_5607; method_32037 getTexturedModelData + m (Lnet/minecraft/class_10063;)V method_17119 setAngles + m (Lnet/minecraft/class_630;)V + p 1 root +c net/minecraft/class_597 net/minecraft/client/render/entity/model/QuadrupedEntityModel + c Represents the model of a quadruped entity.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}Root part{@link #head}
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value EntityModelPartNames#RIGHT_HIND_LEG}Root part{@link #rightHindLeg}
{@value EntityModelPartNames#LEFT_HIND_LEG}Root part{@link #leftHindLeg}
{@value EntityModelPartNames#RIGHT_FRONT_LEG}Root part{@link #rightFrontLeg}
{@value EntityModelPartNames#LEFT_FRONT_LEG}Root part{@link #leftFrontLeg}
\n
+ f Lnet/minecraft/class_630; field_3535 head + f Lnet/minecraft/class_630; field_3538 body + f Lnet/minecraft/class_630; field_27478 rightFrontLeg + f Lnet/minecraft/class_630; field_27479 leftFrontLeg + f Lnet/minecraft/class_630; field_27476 rightHindLeg + f Lnet/minecraft/class_630; field_27477 leftHindLeg + m (Lnet/minecraft/class_5610;ZZILnet/minecraft/class_5605;)V method_70934 addLegs + p 0 root + p 1 leftMirrored + p 2 rightMirrored + p 3 stanceWidth + p 4 dilation + m (IZZLnet/minecraft/class_5605;)Lnet/minecraft/class_5609; method_32033 getModelData + p 0 stanceWidth + p 1 leftMirrored + p 2 rightMirrored + p 3 dilation + m (Lnet/minecraft/class_10042;)V method_62089 setAngles + m (Lnet/minecraft/class_630;)V + p 1 root +c net/minecraft/class_592 net/minecraft/client/render/entity/model/LargePufferfishEntityModel + f Lnet/minecraft/class_630; field_27468 leftBlueFin + f Lnet/minecraft/class_630; field_27469 rightBlueFin + m (Lnet/minecraft/class_10017;)V method_72860 setAngles + m ()Lnet/minecraft/class_5607; method_32030 getTexturedModelData +c net/minecraft/class_591 net/minecraft/client/render/entity/model/PlayerEntityModel + c Represents the model of a player-like entity.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HAT}Root part{@link #hat}
{@value EntityModelPartNames#HEAD}Root part{@link #head}
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value EntityModelPartNames#RIGHT_ARM}Root part{@link #rightArm}
{@value EntityModelPartNames#LEFT_ARM}Root part{@link #leftArm}
{@value EntityModelPartNames#RIGHT_LEG}Root part{@link #rightLeg}
{@value EntityModelPartNames#LEFT_LEG}Root part{@link #leftLeg}
{@value #EAR}Root part{@link #ear}
{@value #CLOAK}Root part{@link #cloak}
{@value #LEFT_SLEEVE}Root part{@link #leftSleeve}
{@value #RIGHT_SLEEVE}Root part{@link #rightSleeve}
{@value #LEFT_PANTS}Root part{@link #leftPants}
{@value #RIGHT_PANTS}Root part{@link #rightPants}
{@value EntityModelPartNames#JACKET}Root part{@link #jacket}
\n
+ f Lnet/minecraft/class_630; field_3486 rightSleeve + f Ljava/lang/String; field_32540 LEFT_SLEEVE + c The key of the left sleeve model part, whose value is {@value}. + f Z field_3480 thinArms + f Lnet/minecraft/class_630; field_3484 leftSleeve + f Ljava/lang/String; field_32541 RIGHT_SLEEVE + c The key of the right sleeve model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_3483 jacket + f Lnet/minecraft/class_630; field_3479 rightPants + f Ljava/lang/String; field_32536 LEFT_PANTS + c The key of the left pants model part, whose value is {@value}. + f Ljava/lang/String; field_32537 RIGHT_PANTS + c The key of the right pants model part, whose value is {@value}. + f Ljava/util/List; field_27466 parts + c All the parts. Used when picking a part to render stuck arrows. + f Lnet/minecraft/class_630; field_3482 leftPants + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_630; method_22697 getRandomPart + p 1 random + m (Lnet/minecraft/class_5605;Z)Lnet/minecraft/class_5609; method_32028 getTexturedModelData + p 1 slim + p 0 dilation + m (Lnet/minecraft/class_10055;Lnet/minecraft/class_1306;Lnet/minecraft/class_4587;)V method_72859 setArmAngle + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5609; method_72858 method_72858 + p 0 modelData + m (Lnet/minecraft/class_5605;Lnet/minecraft/class_5605;)Lnet/minecraft/class_11677; method_72857 createEquipmentModelData + p 1 armorDilation + p 0 hatDilation + m (Lnet/minecraft/class_630;Z)V + p 1 root + p 2 thinArms + m (Lnet/minecraft/class_10055;)V method_62110 setAngles +c net/minecraft/class_590 net/minecraft/client/render/entity/model/PolarBearEntityModel + f Lnet/minecraft/class_9953; field_52928 BABY_TRANSFORMER + m (Z)Lnet/minecraft/class_5607; method_32029 getTexturedModelData + m (Lnet/minecraft/class_10057;)V method_17114 setAngles +c net/minecraft/class_596 net/minecraft/client/render/entity/model/RabbitEntityModel + c Represents the model of a {@linkplain RabbitEntity}.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#LEFT_HIND_FOOT}Root part{@link #leftHindLeg}
{@value EntityModelPartNames#RIGHT_HIND_FOOT}Root part{@link #rightHindLeg}
{@value #LEFT_HAUNCH}Root part{@link #leftHaunch}
{@value #RIGHT_HAUNCH}Root part{@link #rightHaunch}
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value EntityModelPartNames#LEFT_FRONT_LEG}Root part{@link #leftFrontLeg}
{@value EntityModelPartNames#RIGHT_FRONT_LEG}Root part{@link #rightFrontLeg}
{@value EntityModelPartNames#HEAD}Root part{@link #head}
{@value EntityModelPartNames#RIGHT_EAR}Root part{@link #rightEar}
{@value EntityModelPartNames#LEFT_EAR}Root part{@link #leftEar}
{@value EntityModelPartNames#TAIL}Root part{@link #tail}
{@value EntityModelPartNames#NOSE}Root part{@link #nose}
\n
+ f Ljava/lang/String; field_32544 LEFT_HAUNCH + c The key of the left haunch model part, whose value is {@value}. + f Ljava/lang/String; field_32545 RIGHT_HAUNCH + c The key of the right haunch model part, whose value is {@value}. + f Lnet/minecraft/class_9953; field_52930 ADULT_TRANSFORMER + f Lnet/minecraft/class_630; field_27486 head + f Lnet/minecraft/class_9953; field_52931 BABY_TRANSFORMER + f Lnet/minecraft/class_630; field_27484 leftFrontLeg + f Lnet/minecraft/class_630; field_27485 rightFrontLeg + f Lnet/minecraft/class_630; field_27482 leftHaunch + f Lnet/minecraft/class_630; field_27483 rightHaunch + f F field_32546 SCALE + f F field_32542 HAUNCH_JUMP_PITCH_MULTIPLIER + f F field_32543 FRONT_LEGS_JUMP_PITCH_MULTIPLIER + m (Lnet/minecraft/class_10059;)V method_17117 setAngles + m (Z)Lnet/minecraft/class_5607; method_32034 getTexturedModelData + p 0 baby +c net/minecraft/class_595 net/minecraft/client/render/entity/model/MediumPufferfishEntityModel + f Lnet/minecraft/class_630; field_27471 leftBlueFin + f Lnet/minecraft/class_630; field_27472 rightBlueFin + m ()Lnet/minecraft/class_5607; method_32031 getTexturedModelData + m (Lnet/minecraft/class_10017;)V method_72861 setAngles +c net/minecraft/class_594 net/minecraft/client/render/entity/model/SmallPufferfishEntityModel + f Lnet/minecraft/class_630; field_27475 rightFin + f Lnet/minecraft/class_630; field_27474 leftFin + m (Lnet/minecraft/class_10017;)V method_72862 setAngles + m ()Lnet/minecraft/class_5607; method_32032 getTexturedModelData +c net/minecraft/class_12222 net/minecraft/unused/packageinfo/PackageInfo12222 +c net/minecraft/class_12221 net/minecraft/unused/packageinfo/PackageInfo12221 +c net/minecraft/class_12220 net/minecraft/world/attribute/BlendArgument + f Lcom/mojang/serialization/Codec; field_63806 INTERNAL_CODEC + f Lcom/mojang/serialization/Codec; field_63805 CODEC + f F comp_5142 value + f F comp_5143 alpha + m (F)V + p 1 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75723 method_75723 + p 0 instance + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_12220; method_75722 method_75722 + p 0 either + m (Lnet/minecraft/class_12220;)Lnet/minecraft/class_12220; method_75724 method_75724 + p 0 blend + m (Lnet/minecraft/class_12220;)Lcom/mojang/datafixers/util/Either; method_75721 method_75721 + p 0 blend + m ()F comp_5143 alpha + m ()F comp_5142 value + m (FF)V + p 1 value + p 2 alpha +c net/minecraft/class_12225 net/minecraft/client/font/DrawnTextConsumer + f D field_63833 MARQUEE_MIN_PERIOD + f D field_63832 MARQUEE_PERIOD_PER_EXCESS_WIDTH + m (FFFFFF)Z method_75761 isWithinBounds + p 1 y + p 2 left + p 0 x + p 5 bottom + p 3 top + p 4 right + m (Lnet/minecraft/class_12225$class_12227;)V method_75764 setTransformation + p 1 transformation + m (Lnet/minecraft/class_2561;IIII)V method_75770 text + p 3 right + p 4 top + p 1 text + p 2 left + p 5 bottom + m (Lnet/minecraft/class_11735;IILnet/minecraft/class_12225$class_12227;Lnet/minecraft/class_5481;)V method_75766 text + p 1 alignment + p 3 y + p 2 x + p 5 text + p 4 transformation + m (Lnet/minecraft/class_2561;IIIIILnet/minecraft/class_12225$class_12227;)V method_75773 marqueedText + p 6 bottom + p 7 transformation + p 4 right + p 5 top + p 2 x + p 3 left + p 1 text + m (Lnet/minecraft/class_11735;IILnet/minecraft/class_2561;)V method_75768 text + p 3 y + p 4 text + p 1 alignment + p 2 x + m (IILnet/minecraft/class_2561;)V method_75763 text + p 3 text + p 2 y + p 1 x + m (IILnet/minecraft/class_5481;)V method_75762 text + p 1 x + p 3 text + p 2 y + m (Lnet/minecraft/class_2561;IIIII)V method_75771 marqueedText + p 5 top + p 6 bottom + p 3 left + p 4 right + p 1 text + p 2 x + m (Lnet/minecraft/class_11735;IILnet/minecraft/class_5481;)V method_75765 text + p 2 x + p 3 y + p 1 alignment + p 4 text + m (Lnet/minecraft/class_11735;IILnet/minecraft/class_12225$class_12227;Lnet/minecraft/class_2561;)V method_75767 text + p 5 text + p 4 transformation + p 3 y + p 2 x + p 1 alignment + m ()Lnet/minecraft/class_12225$class_12227; method_75760 getTransformation + m (Lnet/minecraft/class_11247;FFLjava/util/function/Consumer;)V method_75769 handleHover + c If the cursor is hovering over a piece of text, calls {@code styleCallback} on its style. + p 0 renderState + c the text to check the cursor against + p 1 mouseX + c the X-coordinate of the cursor, in scaled units + p 2 mouseY + c the Y-coordinate of the cursor, in scaled units + p 3 styleCallback + c a callback to call on the style that the cursor is hovering over + m (Lnet/minecraft/class_2561;IIIIIIILnet/minecraft/class_12225$class_12227;)V method_75772 marqueedText + p 9 transformation + p 5 top + p 6 bottom + p 7 width + p 8 lineHeight + p 1 text + p 2 x + p 3 left + p 4 right +c net/minecraft/class_12225$class_12227 net/minecraft/client/font/DrawnTextConsumer$Transformation + f Lnet/minecraft/class_8030; comp_5153 scissor + f Lorg/joml/Matrix3x2fc; comp_5151 pose + f F comp_5152 opacity + m (Lnet/minecraft/class_8030;)Lnet/minecraft/class_12225$class_12227; method_75780 withScissor + p 1 scissor + m (F)Lnet/minecraft/class_12225$class_12227; method_75778 scaled + p 1 scale + m (Lorg/joml/Matrix3x2fc;)V + p 1 pose + m (IIII)Lnet/minecraft/class_12225$class_12227; method_75779 withScissor + p 1 left + p 2 right + p 3 top + p 4 bottom + m (F)Lnet/minecraft/class_12225$class_12227; method_75782 withOpacity + p 1 opacity + m (Lorg/joml/Matrix3x2fc;)Lnet/minecraft/class_12225$class_12227; method_75781 withPose + p 1 pose + m ()Lnet/minecraft/class_8030; comp_5153 scissor + m ()Lorg/joml/Matrix3x2fc; comp_5151 pose + m ()F comp_5152 opacity + m (Lorg/joml/Matrix3x2fc;FLnet/minecraft/class_8030;)V + p 1 pose + p 2 opacity + p 3 scissor +c net/minecraft/class_12225$class_12226 net/minecraft/client/font/DrawnTextConsumer$ClickHandler + f I field_63840 clickY + f Lnet/minecraft/class_12225$class_12227; field_63837 DEFAULT_TRANSFORMATION + f I field_63839 clickX + f Lnet/minecraft/class_2583; field_63842 style + f Lnet/minecraft/class_327; field_63838 textRenderer + f Ljava/util/function/Consumer; field_63843 setStyleCallback + f Z field_64671 insert + f Lnet/minecraft/class_12225$class_12227; field_63841 transformation + m (Lnet/minecraft/class_327;II)V + p 1 textRenderer + p 2 clickX + p 3 clickY + m (Z)Lnet/minecraft/class_12225$class_12226; method_76756 insert + p 1 insert + m (Lnet/minecraft/class_2583;)V method_75776 method_75776 + p 1 style + m ()Lnet/minecraft/class_2583; method_75777 getStyle +c net/minecraft/class_12225$1 net/minecraft/client/font/DrawnTextConsumer$1 + m (Lnet/minecraft/class_12236;)V method_75774 addGlyphInternal + p 1 glyph +c net/minecraft/class_12224 net/minecraft/client/gl/GlTimerQuery + f I field_63815 id + f Z field_63816 closed + f Ljava/util/OptionalLong; field_63817 value + m (I)V + p 1 id +c net/minecraft/class_7088 net/minecraft/registry/tag/FlatLevelGeneratorPresetTags + f Lnet/minecraft/class_6862; field_37402 VISIBLE + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_41292 of + p 0 id +c net/minecraft/class_7089 net/minecraft/registry/tag/WorldPresetTags + f Lnet/minecraft/class_6862; field_37407 EXTENDED + f Lnet/minecraft/class_6862; field_37406 NORMAL + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_41293 of + p 0 id +c net/minecraft/class_7084 net/minecraft/resource/metadata/ResourceFilter + f Ljava/util/List; field_37292 blocks + c The list of block rules, named {@code block} in the JSON format. + f Lnet/minecraft/class_7677; field_40055 SERIALIZER + f Lcom/mojang/serialization/Codec; field_37291 CODEC + m (Ljava/util/List;)V + p 1 blocks + m (Ljava/lang/String;)Z method_41279 isNamespaceBlocked + p 1 namespace + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41278 method_41278 + p 0 instance + m (Ljava/lang/String;Lnet/minecraft/class_7085;)Z method_41280 method_41280 + p 1 block + m (Ljava/lang/String;)Z method_41281 isPathBlocked + p 1 namespace + m (Ljava/lang/String;Lnet/minecraft/class_7085;)Z method_41282 method_41282 + p 1 block + m (Lnet/minecraft/class_7084;)Ljava/util/List; method_41277 method_41277 + p 0 filter +c net/minecraft/class_7085 net/minecraft/resource/metadata/BlockEntry + f Lcom/mojang/serialization/Codec; field_37293 CODEC + f Ljava/util/function/Predicate; field_37295 namespacePredicate + f Ljava/util/function/Predicate; field_37297 pathPredicate + f Ljava/util/Optional; field_37296 path + f Ljava/util/Optional; field_37294 namespace + f Ljava/util/function/Predicate; field_41286 identifierPredicate + m (Lnet/minecraft/class_7085;)Ljava/util/Optional; method_41284 method_41284 + p 0 entry + m (Lnet/minecraft/class_2960;)Z method_47546 method_47546 + p 1 id + m (Ljava/lang/String;)Z method_41286 method_41286 + p 0 path_ + m ()Ljava/util/function/Predicate; method_47548 getIdentifierPredicate + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41285 method_41285 + p 0 instance + m (Ljava/lang/String;)Z method_41289 method_41289 + p 0 namespace_ + m (Lnet/minecraft/class_7085;)Ljava/util/Optional; method_41288 method_41288 + p 0 entry + m ()Ljava/util/function/Predicate; method_47547 getPathPredicate + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 namespace + p 2 path + m ()Ljava/util/function/Predicate; method_47545 getNamespacePredicate +c net/minecraft/class_4810 net/minecraft/entity/ai/brain/task/CrossbowAttackTask + f I field_22293 chargingCooldown + f Lnet/minecraft/class_4810$class_4811; field_22294 state + f I field_30114 RUN_TIME + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1309;)V method_24572 setLookTarget + p 2 target + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)Z method_24571 shouldKeepRunning + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_1309; method_24568 getAttackTarget + p 0 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)Z method_24570 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_24573 keepRunning + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1309;)V method_24569 tickState + p 2 target + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_24574 finishRunning +c net/minecraft/class_4810$class_4811 net/minecraft/entity/ai/brain/task/CrossbowAttackTask$CrossbowState + f Lnet/minecraft/class_4810$class_4811; field_22298 READY_TO_ATTACK + f Lnet/minecraft/class_4810$class_4811; field_22296 CHARGING + f Lnet/minecraft/class_4810$class_4811; field_22297 CHARGED + f Lnet/minecraft/class_4810$class_4811; field_22295 UNCHARGED +c net/minecraft/class_4806 net/minecraft/entity/ai/brain/task/BreedTask + f I field_48328 DEFAULT_APPROACH_DISTANCE + f I field_48327 approachDistance + f I field_30104 MAX_RANGE + f I field_30105 MIN_BREED_TIME + f I field_30106 RUN_TIME + f Lnet/minecraft/class_1299; field_22283 targetType + f F field_23129 speed + f J field_22284 breedTime + m (Lnet/minecraft/class_1299;FI)V + p 3 approachDistance + p 1 targetType + p 2 speed + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;J)V method_24550 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;J)V method_24544 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;J)Z method_24547 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;J)V method_24549 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;)Z method_24543 shouldRun + m (Lnet/minecraft/class_1299;)V + p 1 targetType + m (Lnet/minecraft/class_1429;Lnet/minecraft/class_1309;)Z method_24545 method_24545 + p 2 entity + m (Lnet/minecraft/class_1429;)Ljava/util/Optional; method_24548 findBreedTarget + p 1 animal + m (Lnet/minecraft/class_1429;)Z method_24546 hasBreedTarget + p 1 animal + m (Lnet/minecraft/class_1429;)Lnet/minecraft/class_1429; method_24542 getBreedTarget + p 1 animal +c net/minecraft/class_4808 net/minecraft/entity/ai/brain/task/PacifyTask + m (Lnet/minecraft/class_7906;ILnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_46906 method_46906 + p 3 world + p 4 entity + p 5 time + m (Lnet/minecraft/class_4140;I)Lnet/minecraft/class_7893; method_46908 create + p 1 duration + p 0 requiredMemory + m (ILnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46905 method_46905 + p 3 requiredMemoryResult + p 2 pacified + p 1 attackTarget + m (Lnet/minecraft/class_4140;ILnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46909 method_46909 + p 2 context +c net/minecraft/class_4807 net/minecraft/entity/ai/brain/task/LookTowardsAttackTargetTask + m (IF)Lnet/minecraft/class_7894; method_46901 create + p 0 distance + p 1 forwardMovement + m (Lnet/minecraft/class_7898$class_7900;IFLnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46903 method_46903 + p 3 walkTarget + p 4 lookTarget + p 5 attackTarget + p 6 visibleMobs + m (IFLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46902 method_46902 + p 2 context + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;ILnet/minecraft/class_7906;Lnet/minecraft/class_7906;FLnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)Z method_46904 method_46904 + p 8 time + p 7 entity + p 6 world +c net/minecraft/class_4802 net/minecraft/util/TimeHelper + c A class holding utility methods related to time and durations. + f J field_33869 MILLI_IN_NANOS + c The equivalent of 1 millisecond, in nanoseconds. Is {@code 1000000}. + f J field_33868 SECOND_IN_NANOS + c The equivalent of 1 second, in nanoseconds. Is {@code 1000000000}. + f J field_46958 HOUR_IN_SECONDS + c The equivalent of 1 hour, in seconds. Is {@code 3600}. + f J field_46957 SECOND_IN_MILLIS + c The equivalent of 1 second, in milliseconds. Is {@code 1000}. + f I field_47726 MINUTE_IN_SECONDS + c The equivalent of 1 minute, in seconds. Is {@code 60}. + m (II)Lnet/minecraft/class_6019; method_24505 betweenSeconds + c {@return an int provider that provides a time in ticks, between {@code min * 20} and\n{@code max * 20} (both inclusive)} + p 0 min + p 1 max +c net/minecraft/class_11200 net/minecraft/world/waypoint/TrackedWaypoint + f Lcom/mojang/datafixers/util/Either; field_59772 source + f Lnet/minecraft/class_11200$class_11205; field_59775 type + f Lnet/minecraft/class_11208$class_11209; field_59774 config + f Lnet/minecraft/class_9139; field_59771 PACKET_CODEC + f Lorg/slf4j/Logger; field_59773 LOGGER + m (Ljava/util/UUID;)Lnet/minecraft/class_11200; method_70768 empty + p 0 uuid + m (Lnet/minecraft/class_11200;)V method_70766 handleUpdate + p 1 waypoint + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_11200$class_11204;Lnet/minecraft/class_11728;)Lnet/minecraft/class_11200$class_11379; method_71154 getPitch + p 3 tickProgress + p 2 cameraProvider + p 1 world + m (Lio/netty/buffer/ByteBuf;)V method_70767 writeBuf + p 1 buf + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_11200; method_70775 fromBuf + p 0 buf + m (Ljava/util/UUID;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_2382;)Lnet/minecraft/class_11200; method_70771 ofPos + p 2 pos + p 0 source + p 1 config + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_11200$class_11297;Lnet/minecraft/class_11728;)D method_71153 getRelativeYaw + p 3 tickProgress + p 2 yawProvider + p 1 world + m (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_11200$class_11205;)V + p 3 type + p 2 config + p 1 source + m (Lnet/minecraft/class_1297;)D method_70773 squaredDistanceTo + p 1 receiver + m (Ljava/util/UUID;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_1923;)Lnet/minecraft/class_11200; method_70770 ofChunk + p 0 source + p 2 chunkPos + p 1 config + m ()Lcom/mojang/datafixers/util/Either; method_70763 getSource + m (Ljava/util/UUID;Lnet/minecraft/class_11208$class_11209;F)Lnet/minecraft/class_11200; method_70769 ofAzimuth + p 2 azimuth + p 1 config + p 0 source + m ()Lnet/minecraft/class_11208$class_11209; method_70772 getConfig + m (Lio/netty/buffer/ByteBuf;)V method_70774 writeAdditionalDataToBuf + p 1 buf +c net/minecraft/class_11200$class_11379 net/minecraft/world/waypoint/TrackedWaypoint$Pitch + f Lnet/minecraft/class_11200$class_11379; field_60425 DOWN + f Lnet/minecraft/class_11200$class_11379; field_60424 UP + f Lnet/minecraft/class_11200$class_11379; field_60423 NONE +c net/minecraft/class_11200$class_11201 net/minecraft/world/waypoint/TrackedWaypoint$Azimuth + f F field_59776 azimuth + m (Ljava/util/UUID;Lnet/minecraft/class_11208$class_11209;F)V + p 1 source + p 2 config + p 3 azimuth + m (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_2540;)V + p 3 buf + p 2 config + p 1 source +c net/minecraft/class_11200$class_11202 net/minecraft/world/waypoint/TrackedWaypoint$ChunkBased + f Lnet/minecraft/class_1923; field_59777 chunkPos + m (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_2540;)V + p 1 source + p 2 config + p 3 buf + m (Ljava/util/UUID;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_1923;)V + p 1 source + p 2 config + p 3 chunkPos + m (D)Lnet/minecraft/class_243; method_70776 getChunkCenterPos + p 1 y +c net/minecraft/class_11200$class_11203 net/minecraft/world/waypoint/TrackedWaypoint$Empty + m (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_2540;)V + p 2 config + p 3 buf + p 1 source + m (Ljava/util/UUID;)V + p 1 source +c net/minecraft/class_11200$class_11204 net/minecraft/world/waypoint/TrackedWaypoint$PitchProvider + m ()D method_70777 getPitch + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_70778 project + p 1 sourcePos +c net/minecraft/class_11200$class_11205 net/minecraft/world/waypoint/TrackedWaypoint$Type + f Lorg/apache/commons/lang3/function/TriFunction; field_59782 factory + f Lnet/minecraft/class_11200$class_11205; field_59780 CHUNK + f Lnet/minecraft/class_11200$class_11205; field_59781 AZIMUTH + f Lnet/minecraft/class_11200$class_11205; field_59779 VEC3I + f Lnet/minecraft/class_11200$class_11205; field_59778 EMPTY + m (Ljava/lang/String;ILorg/apache/commons/lang3/function/TriFunction;)V + p 3 factory +c net/minecraft/class_11200$class_11206 net/minecraft/world/waypoint/TrackedWaypoint$Positional + f Lnet/minecraft/class_2382; field_59784 pos + m (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_2540;)V + p 3 buf + p 1 source + p 2 config + m (Ljava/util/UUID;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_2382;)V + p 3 pos + p 2 config + p 1 uuid + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_11728;)Lnet/minecraft/class_243; method_70780 getSourcePos + p 2 tickProgress + p 1 world + m (Lnet/minecraft/class_11728;Lnet/minecraft/class_1297;)Lnet/minecraft/class_243; method_70782 method_70782 + p 2 entity +c net/minecraft/class_11200$class_11297 net/minecraft/world/waypoint/TrackedWaypoint$YawProvider + m ()Lnet/minecraft/class_243; method_71156 getCameraPos + m ()F method_71155 getCameraYaw +c net/minecraft/class_4804 net/minecraft/datafixer/schema/Schema2505 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_4803 net/minecraft/datafixer/fix/MemoryExpiryDataFix + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_24507 updateMemoryMapValues + p 1 memoryKv + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 2 choiceName + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24510 updateMemoryMapValueEntry + p 1 memoryValue + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24506 updateBrain + p 1 entityDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24509 updateMemoryMap + p 1 memoriesDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24508 updateMemories + p 1 brainDynamic +c net/minecraft/class_11207 net/minecraft/world/waypoint/TrackedWaypointHandler +c net/minecraft/class_11208 net/minecraft/world/waypoint/Waypoint + f I field_59785 DEFAULT_PLAYER_RANGE + f Lnet/minecraft/class_1322; field_59786 DISABLE_TRACKING + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_70783 disableTracking + p 0 settings +c net/minecraft/class_11208$class_11209 net/minecraft/world/waypoint/Waypoint$Config + f Lnet/minecraft/class_5321; field_60166 style + f Ljava/util/Optional; field_59791 color + f Lnet/minecraft/class_9139; field_59788 PACKET_CODEC + f Lnet/minecraft/class_11208$class_11209; field_59789 DEFAULT + f Lcom/mojang/serialization/Codec; field_59787 CODEC + m ()Z method_71157 hasCustomStyle + m (Lnet/minecraft/class_268;)Ljava/lang/Integer; method_71159 method_71159 + p 0 team + m (Lnet/minecraft/class_11208$class_11209;)V method_76794 copyFrom + p 1 other + m (Ljava/lang/Integer;)Ljava/lang/Integer; method_71160 method_71160 + p 0 color + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_11208$class_11209; method_71158 withTeamColorOf + p 1 entity + m (Lnet/minecraft/class_11208$class_11209;)Lnet/minecraft/class_5321; method_70789 method_70789 + p 0 config + m (Lnet/minecraft/class_5321;Ljava/util/Optional;)V + p 2 color + p 1 style + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_70785 method_70785 + p 0 instance + m (Lnet/minecraft/class_11208$class_11209;)Ljava/util/Optional; method_70790 method_70790 + p 0 config + m (Lnet/minecraft/class_11208$class_11209;)Lnet/minecraft/class_5321; method_70791 method_70791 + p 0 config + m (Lnet/minecraft/class_11208$class_11209;)Ljava/util/Optional; method_70787 method_70787 + p 0 config + m ()Lnet/minecraft/class_5321; method_71161 getStyle +c net/minecraft/class_4809 net/minecraft/entity/ai/brain/task/MemoryTransferTask + m (Ljava/util/function/Predicate;Lnet/minecraft/class_4140;Lnet/minecraft/class_4140;Lnet/minecraft/class_6019;)Lnet/minecraft/class_7893; method_46914 create + p 0 runPredicate + p 1 sourceType + p 2 targetType + p 3 expiry + m (Ljava/util/function/Predicate;Lnet/minecraft/class_7906;Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_6019;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_46913 method_46913 + p 5 world + p 7 time + p 6 entity + m (Lnet/minecraft/class_4140;Lnet/minecraft/class_4140;Ljava/util/function/Predicate;Lnet/minecraft/class_6019;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46911 method_46911 + p 4 context + m (Ljava/util/function/Predicate;Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_6019;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46912 method_46912 + p 4 target + p 3 source +c net/minecraft/class_7099 net/minecraft/entity/ai/brain/task/LayFrogSpawnTask + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_7893; method_47180 create + p 0 frogSpawn + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47182 method_47182 + p 2 world + p 3 entity + p 4 time + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47181 method_47181 + p 1 context + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47183 method_47183 + p 2 walkTarget + p 1 attackTarget + p 3 isPregnant +c net/minecraft/class_7097 net/minecraft/entity/ai/brain/task/WalkTowardsLandTask + f I field_37433 TASK_COOLDOWN + m (Lorg/apache/commons/lang3/mutable/MutableLong;ILnet/minecraft/class_7906;Lnet/minecraft/class_7906;FLnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_47171 method_47171 + p 6 entity + p 5 world + p 7 time + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47169 method_47169 + p 3 context + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47170 method_47170 + p 5 lookTarget + p 3 attackTarget + p 4 walkTarget + m (IF)Lnet/minecraft/class_7893; method_47168 create + p 1 speed + p 0 range +c net/minecraft/class_7098 net/minecraft/entity/ai/brain/task/WalkTowardsWaterTask + m (IF)Lnet/minecraft/class_7893; method_47172 create + p 1 speed + p 0 range + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47174 method_47174 + p 3 attackTarget + p 5 lookTarget + p 4 walkTarget + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47173 method_47173 + p 3 context + m (Lorg/apache/commons/lang3/mutable/MutableLong;ILnet/minecraft/class_7906;Lnet/minecraft/class_7906;FLnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_47175 method_47175 + p 5 world + p 7 time + p 6 entity +c net/minecraft/class_7095 net/minecraft/entity/ai/brain/task/CroakTask + f I field_37426 runningTicks + f I field_37424 MAX_RUN_TICK + f I field_37425 RUN_TIME + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;)Z method_42648 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;J)Z method_41332 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;J)V method_41333 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;J)V method_41334 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;J)V method_41335 keepRunning +c net/minecraft/gametest/Main net/minecraft/gametest/Main + m ([Ljava/lang/String;)V main main + p 0 args +c net/minecraft/class_7096 net/minecraft/entity/ai/brain/task/BiasedLongJumpTask + f Ljava/util/List; field_37429 unfavoredTargets + f Z field_37430 useBias + f Lnet/minecraft/class_6862; field_37427 favoredBlocks + f F field_37428 biasChance + m (Lnet/minecraft/class_6019;IIFLjava/util/function/Function;Lnet/minecraft/class_6862;FLjava/util/function/BiPredicate;)V + p 5 entityToSound + p 6 favoredBlocks + p 7 biasChance + p 8 jumpToPredicate + p 1 cooldownRange + p 2 verticalRange + p 3 horizontalRange + p 4 maxRange + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_35082 run +c net/minecraft/class_4822 net/minecraft/entity/ai/brain/task/RangedApproachTask + f I field_30166 WEAPON_REACH_REDUCTION + m (Lnet/minecraft/class_7898$class_7900;Ljava/util/function/Function;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47097 method_47097 + p 4 attackTarget + p 3 lookTarget + p 5 visibleMobs + p 2 walkTarget + m (FLnet/minecraft/class_1309;)Ljava/lang/Float; method_47095 method_47095 + p 1 entity + m (Ljava/util/function/Function;)Lnet/minecraft/class_7893; method_47098 create + p 0 speed + m (F)Lnet/minecraft/class_7893; method_47094 create + p 0 speed + m (Ljava/util/function/Function;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47099 method_47099 + p 1 context + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Ljava/util/function/Function;Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)Z method_47096 method_47096 + p 8 time + p 7 entity + p 6 world +c net/minecraft/class_4817 net/minecraft/entity/ai/brain/task/StartRidingTask + f I field_30149 COMPLETION_RANGE + m (FLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46992 method_46992 + p 1 context + m (F)Lnet/minecraft/class_7893; method_46991 create + p 0 speed + m (Lnet/minecraft/class_7898$class_7900;FLnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46993 method_46993 + p 2 lookTarget + p 3 walkTarget + p 4 rideTarget + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;FLnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_46994 method_46994 + p 5 world + p 6 entity + p 7 time +c net/minecraft/class_4816 net/minecraft/entity/ai/brain/task/MeleeAttackTask + m (Lnet/minecraft/class_1308;)Z method_64623 method_64623 + p 0 target + m (Lnet/minecraft/class_1308;)Z method_76696 isHoldingUsableRangedWeapon + p 0 mob + m (Lnet/minecraft/class_7898$class_7900;Ljava/util/function/Predicate;ILnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46989 method_46989 + p 5 attackCoolingDown + p 6 visibleMobs + p 3 lookTarget + p 4 attackTarget + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Ljava/util/function/Predicate;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;ILnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)Z method_46990 method_46990 + p 9 time + p 8 entity + p 7 world + m (Ljava/util/function/Predicate;I)Lnet/minecraft/class_7894; method_64622 create + p 0 targetPredicate + p 1 cooldown + m (I)Lnet/minecraft/class_7894; method_46987 create + p 0 cooldown + m (Ljava/util/function/Predicate;ILnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46988 method_46988 + p 2 context +c net/minecraft/class_4819 net/minecraft/entity/ai/brain/task/HuntFinishTask + m ()Lnet/minecraft/class_7893; method_47275 create + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47278 method_47278 + p 5 time + p 3 world + p 4 entity + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47277 method_47277 + p 1 attackTarget + p 2 huntedRecently + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47276 method_47276 + p 0 context +c net/minecraft/class_4818 net/minecraft/entity/ai/brain/task/StrollTask + f I field_30157 DEFAULT_HORIZONTAL_RADIUS + f I field_30158 DEFAULT_VERTICAL_RADIUS + f [[I field_40995 RADII + m (Lnet/minecraft/class_1314;)Lnet/minecraft/class_243; method_47028 method_47028 + p 0 entity + m (Lnet/minecraft/class_1314;II)Lnet/minecraft/class_243; method_47021 findTargetPos + p 0 entity + p 1 horizontalRadius + p 2 verticalRadius + m (Lnet/minecraft/class_1314;)Lnet/minecraft/class_243; method_47020 findTargetPos + p 0 entity + m (FII)Lnet/minecraft/class_7893; method_47015 create + p 1 horizontalRadius + p 0 speed + p 2 verticalRadius + m (Lnet/minecraft/class_1314;)Z method_47031 method_47031 + p 0 entity + m (Lnet/minecraft/class_1314;)Z method_47030 method_47030 + p 0 entity + m (Lnet/minecraft/class_1314;)Lnet/minecraft/class_243; method_47032 method_47032 + p 0 entity + m (FZ)Lnet/minecraft/class_7894; method_47018 create + p 1 strollInsideWater + p 0 speed + m (Ljava/util/function/Predicate;Ljava/util/function/Function;FLnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47023 method_47023 + p 3 walkTarget + m (Ljava/util/function/Predicate;Ljava/util/function/Function;Lnet/minecraft/class_7906;FLnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_47024 method_47024 + p 6 time + p 5 entity + p 4 world + m (FLnet/minecraft/class_243;)Lnet/minecraft/class_4142; method_47016 method_47016 + p 1 pos + m (Lnet/minecraft/class_1314;)Z method_47029 method_47029 + p 0 entity + m (Lnet/minecraft/class_1314;)Z method_47026 method_47026 + p 0 entity + m (IILnet/minecraft/class_1314;)Lnet/minecraft/class_243; method_47019 method_47019 + p 2 entity + m (F)Lnet/minecraft/class_7893; method_47025 createSolidTargeting + p 0 speed + m (F)Lnet/minecraft/class_7894; method_47014 create + p 0 speed + m (F)Lnet/minecraft/class_7893; method_47027 createDynamicRadius + p 0 speed + m (FLjava/util/function/Function;Ljava/util/function/Predicate;)Lnet/minecraft/class_7894; method_47017 create + p 1 targetGetter + p 0 speed + p 2 shouldRun + m (Ljava/util/function/Predicate;Ljava/util/function/Function;FLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47022 method_47022 + p 3 context +c net/minecraft/class_4813 net/minecraft/entity/ai/brain/task/ForgetTask + m (Ljava/util/function/Predicate;Lnet/minecraft/class_4140;)Lnet/minecraft/class_7893; method_46922 create + p 0 condition + p 1 memory + m (Ljava/util/function/Predicate;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_46921 method_46921 + p 4 time + p 3 entity + p 2 world + m (Lnet/minecraft/class_4140;Ljava/util/function/Predicate;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46919 method_46919 + p 2 context + m (Ljava/util/function/Predicate;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46920 method_46920 + p 1 queryResult +c net/minecraft/class_4812 net/minecraft/entity/ai/brain/task/RidingTask + m (ILjava/util/function/BiPredicate;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46916 method_46916 + p 2 context + m (ILjava/util/function/BiPredicate;)Lnet/minecraft/class_7893; method_46915 create + p 1 alternativeRideCondition + p 0 range + m (Lnet/minecraft/class_7898$class_7900;ILjava/util/function/BiPredicate;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46917 method_46917 + p 3 rideTarget + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1297;I)Z method_24575 canRideTarget + p 0 entity + p 1 vehicle + p 2 range + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;ILjava/util/function/BiPredicate;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_46918 method_46918 + p 4 world + p 6 time + p 5 entity +c net/minecraft/class_4815 net/minecraft/entity/ai/brain/task/WalkTowardsNearestVisibleWantedItemTask + m (Ljava/util/function/Predicate;FZI)Lnet/minecraft/class_7893; method_46947 create + p 1 speed + p 0 startCondition + p 3 radius + p 2 requiresWalkTarget + m (Lnet/minecraft/class_1309;)Z method_46944 method_46944 + p 0 entity + m (Lnet/minecraft/class_7898$class_7900;Ljava/util/function/Predicate;IFLnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46946 method_46946 + p 4 lookTarget + p 5 walkTarget + p 6 nearestVisibleWantedItem + p 7 itemPickupCooldownTicks + m (FZI)Lnet/minecraft/class_7893; method_46943 create + p 2 radius + p 1 requiresWalkTarget + p 0 speed + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Ljava/util/function/Predicate;IFLnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_46945 method_46945 + p 10 time + p 9 entity + p 8 world + m (ZLjava/util/function/Predicate;IFLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46948 method_46948 + p 4 context +c net/minecraft/class_4814 net/minecraft/entity/ai/brain/task/WalkTowardsFuzzyPosTask + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_24577 fuzz + p 1 pos + p 0 mob + m (Lnet/minecraft/class_7898$class_7900;IFLnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46939 method_46939 + p 5 walkTarget + p 6 lookTarget + p 3 pos + p 4 attackTarget + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;IFLnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)Z method_46940 method_46940 + p 4 world + p 5 entity + p 6 time + m (Lnet/minecraft/class_4140;IFLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46942 method_46942 + p 3 context + m (Lnet/minecraft/class_5819;)I method_24578 fuzz + p 0 random + m (Lnet/minecraft/class_4140;IF)Lnet/minecraft/class_7894; method_46941 create + p 2 speed + p 1 completionRange + p 0 posModule +c net/minecraft/class_7093 net/minecraft/datafixer/schema/Schema3078 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_41318 targetEntityItems + p 1 map + p 0 schema + p 2 entityId + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_7094 net/minecraft/entity/AnimationState + f I field_52433 startTick + f I field_37417 STOPPED + m (F)J method_61400 getTimeInMilliseconds + p 1 age + m (Lnet/minecraft/class_7094;)V method_61401 copyFrom + p 1 state + m (ZI)V method_45317 setRunning + p 2 tick + p 1 running + m (IF)V method_56988 skip + p 2 speedMultiplier + p 1 ticks + m ()Z method_41327 isRunning + m ()V method_41325 stop + m (Ljava/util/function/Consumer;)V method_41323 run + p 1 consumer + m (I)V method_41322 start + p 1 tick + m (I)V method_41324 startIfNotRunning + p 1 tick +c net/minecraft/class_7091 net/minecraft/datafixer/fix/ChunkDeleteIgnoredLightDataFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_7092 net/minecraft/datafixer/schema/Schema3076 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_7090 net/minecraft/datafixer/fix/BlendingDataFix + f Ljava/lang/String; field_37414 name + f Ljava/util/Set; field_37415 SKIP_BLENDING_STATUSES + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/OptionalDynamic;)Lcom/mojang/serialization/Dynamic; method_41312 update + p 1 context + p 0 chunk + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_41311 method_41311 + p 0 typed + m (Lcom/mojang/serialization/Dynamic;II)Lcom/mojang/serialization/Dynamic; method_41313 setSections + p 0 dynamic + p 1 height + p 2 minY + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44685 method_44685 + p 0 chunk +c net/minecraft/class_7066 net/minecraft/command/argument/RegistryPredicateArgumentType + f Ljava/util/Collection; field_37223 EXAMPLES + f Lnet/minecraft/class_5321; field_37226 registryRef + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 2 builder + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/class_5321;Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;)Lnet/minecraft/class_7066$class_7068; method_41166 getPredicate + p 0 context + p 1 name + p 2 registryRef + p 3 invalidException + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_7066$class_7068; method_41164 parse + m (Lnet/minecraft/class_5321;)V + p 1 registryRef + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_7066; method_41170 registryPredicate + p 0 registryRef +c net/minecraft/class_7066$class_7067 net/minecraft/command/argument/RegistryPredicateArgumentType$RegistryKeyBased + f Lnet/minecraft/class_5321; comp_522 key + m (Lnet/minecraft/class_6880;)Z method_41174 test + m (Ljava/lang/Object;)Z test test + p 1 entry + m ()Lnet/minecraft/class_5321; comp_522 key + m (Lnet/minecraft/class_5321;)V + p 1 key +c net/minecraft/class_7066$class_7068 net/minecraft/command/argument/RegistryPredicateArgumentType$RegistryPredicate + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_41175 tryCast + p 1 registryRef + m ()Lcom/mojang/datafixers/util/Either; method_41173 getKey + m ()Ljava/lang/String; method_41176 asString +c net/minecraft/class_7066$class_7069 net/minecraft/command/argument/RegistryPredicateArgumentType$Serializer + m (Lnet/minecraft/class_7066$class_7069$class_7199;Lnet/minecraft/class_2540;)V method_41178 writePacket + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_7066$class_7069$class_7199; method_41179 fromPacket + m (Lnet/minecraft/class_7066$class_7069$class_7199;Lcom/google/gson/JsonObject;)V method_41177 writeJson + m (Lnet/minecraft/class_7066;)Lnet/minecraft/class_7066$class_7069$class_7199; method_41912 getArgumentTypeProperties +c net/minecraft/class_7066$class_7069$class_7199 net/minecraft/command/argument/RegistryPredicateArgumentType$Serializer$Properties + f Lnet/minecraft/class_5321; field_37929 registryRef + m (Lnet/minecraft/class_7066$class_7069;Lnet/minecraft/class_5321;)V + p 2 registryRef + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_7066; method_41913 createType +c net/minecraft/class_7066$class_7070 net/minecraft/command/argument/RegistryPredicateArgumentType$TagBased + f Lnet/minecraft/class_6862; comp_523 key + m (Lnet/minecraft/class_6880;)Z method_41180 test + m (Ljava/lang/Object;)Z test test + p 1 entry + m ()Lnet/minecraft/class_6862; comp_523 key + m (Lnet/minecraft/class_6862;)V + p 1 key +c net/minecraft/class_7065 net/minecraft/client/gui/screen/WarningScreen + f Lnet/minecraft/class_2561; field_37222 messageText + f Lnet/minecraft/class_4286; field_37217 checkbox + f Lnet/minecraft/class_7843; field_49540 positioningWidget + f Lnet/minecraft/class_8577; field_49539 textWidget + f Lnet/minecraft/class_2561; field_37221 narratedText + f Lnet/minecraft/class_2561; field_37220 checkMessage + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 3 narratedText + p 1 header + p 2 message + m (Lnet/minecraft/class_7847;)V method_57753 method_57753 + p 0 positioner + m ()Lnet/minecraft/class_8133; method_57750 getLayout + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 1 header + p 2 messageText + p 3 checkMessage + p 4 narratedText + m (Lnet/minecraft/class_7065;Lnet/minecraft/class_364;)V method_57754 method_57754 + p 1 child +c net/minecraft/class_11225 net/minecraft/client/gui/hud/bar/JumpBar + f Lnet/minecraft/class_1316; field_59848 jumpingMount + f Lnet/minecraft/class_2960; field_59845 COOLDOWN + f Lnet/minecraft/class_2960; field_59844 BACKGROUND + f Lnet/minecraft/class_2960; field_59846 PROGRESS + f Lnet/minecraft/class_310; field_59847 client + m (Lnet/minecraft/class_310;)V + p 1 client +c net/minecraft/class_7061 net/minecraft/world/StructureSpawns + f Lcom/mojang/serialization/Codec; field_37198 CODEC + f Lnet/minecraft/class_7061$class_7062; comp_514 boundingBox + f Lnet/minecraft/class_6012; comp_515 spawns + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41149 method_41149 + p 0 instance + m ()Lnet/minecraft/class_6012; comp_515 spawns + m ()Lnet/minecraft/class_7061$class_7062; comp_514 boundingBox + m (Lnet/minecraft/class_7061$class_7062;Lnet/minecraft/class_6012;)V + p 1 boundingBox + p 2 spawns +c net/minecraft/class_7061$class_7062 net/minecraft/world/StructureSpawns$BoundingBox + f Ljava/lang/String; field_37203 name + f Lcom/mojang/serialization/Codec; field_37202 CODEC + f Lnet/minecraft/class_7061$class_7062; field_37200 STRUCTURE + f Lnet/minecraft/class_7061$class_7062; field_37199 PIECE + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_11226 net/minecraft/client/gui/hud/bar/LocatorBar + f Lnet/minecraft/class_2960; field_60452 ARROW_DOWN + f Lnet/minecraft/class_2960; field_60451 ARROW_UP + f Lnet/minecraft/class_310; field_59860 client + f Lnet/minecraft/class_2960; field_59849 BACKGROUND + m (Lnet/minecraft/class_310;)V + p 1 client + m (Lnet/minecraft/class_9779;Lnet/minecraft/class_8921;Lnet/minecraft/class_1297;)F method_73215 method_73215 + p 2 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1937;Lnet/minecraft/class_11728;Lnet/minecraft/class_332;ILnet/minecraft/class_11200;)V method_70870 method_70870 + p 6 waypoint + m (Ljava/util/UUID;)Ljava/lang/Integer; method_70872 method_70872 + p 0 uuid + m (Ljava/lang/String;)Ljava/lang/Integer; method_70871 method_70871 + p 0 name + m (Lnet/minecraft/class_1297;Ljava/util/UUID;)Ljava/lang/Boolean; method_70873 method_70873 + p 1 uuid +c net/minecraft/class_11223 net/minecraft/client/gui/hud/bar/Bar + f I field_59837 WIDTH + f Lnet/minecraft/class_11223; field_59840 EMPTY + f I field_59838 HEIGHT + f I field_59839 VERTICAL_OFFSET + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_70865 renderBar + p 2 tickCounter + p 1 context + m (Lnet/minecraft/class_1041;)I method_70864 getCenterX + p 1 window + m (Lnet/minecraft/class_1041;)I method_70867 getCenterY + p 1 window + m (Lnet/minecraft/class_332;Lnet/minecraft/class_327;I)V method_70866 drawExperienceLevel + p 1 textRenderer + p 0 context + p 2 level + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_70868 renderAddons + p 2 tickCounter + p 1 context +c net/minecraft/class_11224 net/minecraft/client/gui/hud/bar/ExperienceBar + f Lnet/minecraft/class_310; field_59843 client + f Lnet/minecraft/class_2960; field_59842 PROGRESS + f Lnet/minecraft/class_2960; field_59841 BACKGROUND + m (Lnet/minecraft/class_310;)V + p 1 client +c net/minecraft/class_11228 net/minecraft/client/gui/render/GuiRenderer + f I field_59922 itemAtlasX + f I field_59910 MAX_TEXTURE_SIZE + f Ljava/util/List; field_60310 preparations + f Ljava/util/Comparator; field_59912 SIMPLE_ELEMENT_COMPARATOR + f Lcom/mojang/blaze3d/textures/GpuTexture; field_59919 itemAtlasTexture + f Ljava/util/Map; field_60988 oversizedItems + f Lorg/slf4j/Logger; field_59905 LOGGER + f Lnet/minecraft/class_11278; field_60040 guiProjectionMatrix + f Lnet/minecraft/class_9799; field_59916 allocator + f I field_59923 itemAtlasY + f Lnet/minecraft/class_11659; field_62147 commandQueue + f Ljava/util/Map; field_59913 renderedItems + f Lnet/minecraft/class_8030; field_60034 scissorArea + f Ljava/util/Comparator; field_60038 SCISSOR_AREA_COMPARATOR + f Ljava/util/List; field_59915 draws + f Lnet/minecraft/class_11278; field_60041 itemsProjectionMatrix + f Lnet/minecraft/class_11231; field_60036 textureSetup + f Lnet/minecraft/class_4597$class_4598; field_59917 vertexConsumers + f I field_59924 windowScaleFactor + f Lcom/mojang/blaze3d/textures/GpuTextureView; field_60570 itemAtlasDepthTextureView + f Lcom/mojang/blaze3d/textures/GpuTexture; field_59920 itemAtlasDepthTexture + f Ljava/util/Map; field_59918 specialElementRenderers + f Ljava/util/Comparator; field_60039 TEXTURE_SETUP_COMPARATOR + f Lnet/minecraft/class_11246; field_59914 state + f I field_60312 blurLayer + f Lnet/minecraft/class_287; field_60037 buffer + f Lnet/minecraft/class_11684; field_62148 dispatcher + f Lcom/mojang/blaze3d/textures/GpuTextureView; field_60571 itemAtlasTextureView + f Ljava/util/Map; field_60311 bufferByVertexFormat + f I field_59925 frame + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_60035 pipeline + m (Lnet/minecraft/class_8030;Lnet/minecraft/class_8030;)Z method_70885 scissorChanged + p 2 newScissorArea + p 1 oldScissorArea + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; method_71294 collectVertexSizes + m (Lnet/minecraft/class_287;Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_11231;Lnet/minecraft/class_8030;)V method_71286 endBuffer + p 2 pipeline + p 3 textureSetup + p 1 builder + p 4 scissorArea + m ()V method_71293 initVertexBuffers + m (Lnet/minecraft/class_11540;Lnet/minecraft/class_4587;III)V method_70889 prepareItemInitially + p 2 matrices + p 1 state + p 4 y + p 3 x + p 5 scale + m (Lnet/minecraft/class_11228$class_11230;Lcom/mojang/blaze3d/systems/RenderPass;Lcom/mojang/blaze3d/buffers/GpuBuffer;Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595;)V method_70886 render + p 1 draw + p 2 pass + p 3 indexBuffer + p 4 indexType + m ()V method_70891 prepareTextElements + m ()V method_70879 incrementFrame + m ()I method_70895 getWindowScaleFactor + m ()V method_71292 finishPreparation + m (Lnet/minecraft/class_11246;Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_11659;Lnet/minecraft/class_11684;Ljava/util/List;)V + p 3 queue + p 2 vertexConsumers + p 1 state + p 5 specialElementRenderers + p 4 dispatcher + m (Lnet/minecraft/class_8030;Lcom/mojang/blaze3d/systems/RenderPass;)V method_70884 enableScissor + p 2 pass + p 1 scissorArea + m (Lnet/minecraft/class_11256;I)V method_70888 prepareSpecialElement + p 2 windowScaleFactor + p 1 elementState + m ()V method_70892 prepareItemElements + m (ILnet/minecraft/class_11256;)V method_71056 method_71056 + p 2 state + m ()V method_71290 prepare + m ()V method_70896 onItemAtlasChanged + m (Lnet/minecraft/class_11245;FFII)V method_70887 prepareItem + p 1 state + p 2 u + p 3 v + p 4 pixelsPerItem + p 5 itemAtlasSideLength + m (I)V method_70880 createItemAtlas + p 1 sideLength + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;)Lnet/minecraft/class_287; method_70882 startBuffer + p 1 pipeline + m (ILnet/minecraft/class_11245;)V method_72107 method_72107 + p 2 elem + m (Ljava/util/function/Supplier;Lnet/minecraft/class_276;Lcom/mojang/blaze3d/buffers/GpuBufferSlice;Lcom/mojang/blaze3d/buffers/GpuBufferSlice;Lcom/mojang/blaze3d/buffers/GpuBuffer;Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595;II)V method_71289 render + p 8 to + p 4 dynamicTransformsBuffer + p 5 buffer + p 6 indexType + p 7 from + p 1 nameSupplier + p 2 framebuffer + p 3 fogBuffer + m (Lnet/minecraft/class_11247;)V method_71058 method_71058 + p 1 state + m ()V method_72109 clearOversizedItems + m (Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V method_71291 renderPreparedDraws + p 1 fogBuffer + m ()V method_70893 prepareSpecialElements + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;IILorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/class_4587;Lnet/minecraft/class_11245;)V method_71055 method_71055 + p 6 elem + m (Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V method_70890 render + p 1 fogBuffer + m (Lnet/minecraft/class_11244;)V method_71287 prepareSimpleElement + p 1 state + m (I)I method_70881 calcItemAtlasSideLength + p 1 itemCount + m (Lnet/minecraft/class_11246$class_11325;)V method_71288 prepareSimpleElements + p 1 filter +c net/minecraft/class_11228$1 net/minecraft/client/gui/render/GuiRenderer$1 + m (Lnet/minecraft/class_11767;)V method_73409 draw + p 1 drawable +c net/minecraft/class_11228$class_11230 net/minecraft/client/gui/render/GuiRenderer$Draw + f Lnet/minecraft/class_11231; comp_4050 textureSetup + f Lnet/minecraft/class_8030; comp_4051 scissorArea + f I comp_4048 indexCount + f I comp_4186 baseVertex + f Lcom/mojang/blaze3d/buffers/GpuBuffer; comp_4044 vertexBuffer + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; comp_4049 pipeline + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596; comp_4045 mode + m ()Lnet/minecraft/class_11231; comp_4050 textureSetup + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596; comp_4045 mode + m ()Lnet/minecraft/class_8030; comp_4051 scissorArea + m ()I comp_4048 indexCount + m ()I comp_4186 baseVertex + m ()Lcom/mojang/blaze3d/buffers/GpuBuffer; comp_4044 vertexBuffer + m ()Lcom/mojang/blaze3d/pipeline/RenderPipeline; comp_4049 pipeline + m (Lcom/mojang/blaze3d/buffers/GpuBuffer;ILcom/mojang/blaze3d/vertex/VertexFormat$class_5596;ILcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_11231;Lnet/minecraft/class_8030;)V + p 1 vertexBuffer + p 2 baseVertex + p 3 mode + p 4 indexCount + p 5 pipeline + p 6 textureSetup + p 7 scissorArea +c net/minecraft/class_11228$class_11324 net/minecraft/client/gui/render/GuiRenderer$Preparation + f Lnet/minecraft/class_8030; comp_4190 scissorArea + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; comp_4188 pipeline + f Lnet/minecraft/class_9801; comp_4187 mesh + f Lnet/minecraft/class_11231; comp_4189 textureSetup + m ()Lnet/minecraft/class_8030; comp_4190 scissorArea + m ()Lcom/mojang/blaze3d/pipeline/RenderPipeline; comp_4188 pipeline + m ()Lnet/minecraft/class_9801; comp_4187 mesh + m ()Lnet/minecraft/class_11231; comp_4189 textureSetup + m (Lnet/minecraft/class_9801;Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_11231;Lnet/minecraft/class_8030;)V + p 1 mesh + p 2 pipeline + p 3 textureSetup + p 4 scissorArea +c net/minecraft/class_11228$class_11229 net/minecraft/client/gui/render/GuiRenderer$RenderedItem + f I field_59930 frame + f I field_59927 y + f I field_59926 x + f F field_59928 u + f F field_59929 v + m (IIFFI)V + p 1 x + p 5 frame + p 4 v + p 3 u + p 2 y +c net/minecraft/class_7079 net/minecraft/command/argument/RegistryKeyArgumentType + f Lnet/minecraft/class_5321; field_37272 registryRef + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_37271 INVALID_FEATURE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_54826 ADVANCEMENT_NOT_FOUND_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_39191 INVALID_STRUCTURE_EXCEPTION + f Ljava/util/Collection; field_37269 EXAMPLES + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_54825 RECIPE_NOT_FOUND_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_39192 INVALID_JIGSAW_EXCEPTION + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43776 method_43776 + p 0 id + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43778 method_43778 + p 0 id + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_41226 method_41226 + p 0 id + m (Lnet/minecraft/class_5321;)V + p 1 registryRef + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_5321; method_41218 parse + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/class_5321;Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;)Lnet/minecraft/class_5321; method_41220 getKey + p 0 context + p 1 name + p 2 registryRef + p 3 invalidException + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880$class_6883; method_43779 getStructureEntry + p 0 context + p 1 name + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_7079; method_41224 registryKey + p 0 registryRef + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/class_5321;Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;)Lnet/minecraft/class_6880$class_6883; method_43777 getRegistryEntry + p 1 name + p 2 registryRef + p 3 invalidException + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_8786; method_64866 getRecipeEntry + p 1 name + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880$class_6883; method_43780 getStructurePoolEntry + p 1 name + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880$class_6883; method_41225 getConfiguredFeatureEntry + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 2 builder + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_5321;)Lnet/minecraft/class_2378; method_41221 getRegistry + p 0 context + p 1 registryRef + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_8779; method_64867 getAdvancementEntry + p 1 name + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_64863 method_64863 + p 0 id + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_64865 method_64865 + p 0 id +c net/minecraft/class_7079$class_7080 net/minecraft/command/argument/RegistryKeyArgumentType$Serializer + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_7079$class_7080$class_7197; method_41231 fromPacket + m (Lnet/minecraft/class_7079$class_7080$class_7197;Lcom/google/gson/JsonObject;)V method_41229 writeJson + m (Lnet/minecraft/class_7079;)Lnet/minecraft/class_7079$class_7080$class_7197; method_41903 getArgumentTypeProperties + m (Lnet/minecraft/class_7079$class_7080$class_7197;Lnet/minecraft/class_2540;)V method_41230 writePacket +c net/minecraft/class_7079$class_7080$class_7197 net/minecraft/command/argument/RegistryKeyArgumentType$Serializer$Properties + f Lnet/minecraft/class_5321; field_37917 registryRef + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_7079; method_41904 createType + m (Lnet/minecraft/class_7079$class_7080;Lnet/minecraft/class_5321;)V + p 2 registryRef +c net/minecraft/class_7077 net/minecraft/client/gui/widget/PressableTextWidget + f Lnet/minecraft/class_327; field_37257 textRenderer + f Lnet/minecraft/class_2561; field_37258 text + f Lnet/minecraft/class_2561; field_37259 hoverText + m (IIIILnet/minecraft/class_2561;Lnet/minecraft/class_4185$class_4241;Lnet/minecraft/class_327;)V + p 3 width + p 2 y + p 5 text + p 4 height + p 1 x + p 7 textRenderer + p 6 onPress +c net/minecraft/class_11211 net/minecraft/world/waypoint/WaypointHandler + m (Lnet/minecraft/class_11208;)V method_70655 onTrack + p 1 waypoint + m (Lnet/minecraft/class_11208;)V method_70643 onUntrack + p 1 waypoint + m (Lnet/minecraft/class_11208;)V method_70651 onUpdate + p 1 waypoint +c net/minecraft/class_7071 net/minecraft/data/tag/vanilla/VanillaStructureTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 2 registriesFuture + p 1 output +c net/minecraft/class_7072 net/minecraft/structure/StructureSets + m (Lnet/minecraft/class_7891;)V method_41182 bootstrap + p 0 structureSetRegisterable +c net/minecraft/class_11212 net/minecraft/world/waypoint/ServerWaypoint + f I field_60169 AZIMUTH_THRESHOLD + m (Lnet/minecraft/class_3222;)Ljava/util/Optional; method_70672 createTracker + p 1 receiver + m ()Z method_70674 hasWaypoint + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3222;)Z method_70796 cannotReceive + p 1 receiver + p 0 source + m ()Lnet/minecraft/class_11208$class_11209; method_70675 getWaypointConfig + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_3222;)Z method_70797 canReceive + p 1 receiver + p 0 source + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3222;)Z method_70798 shouldUseAzimuth + p 1 receiver + p 0 source +c net/minecraft/class_11212$class_11216 net/minecraft/world/waypoint/ServerWaypoint$AzimuthWaypointTracker + f Lnet/minecraft/class_11208$class_11209; field_59798 config + f F field_59800 azimuth + f Lnet/minecraft/class_1309; field_59797 source + f Lnet/minecraft/class_3222; field_59799 receiver + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_3222;)V + p 1 source + p 3 receiver + p 2 config +c net/minecraft/class_11212$class_11217 net/minecraft/world/waypoint/ServerWaypoint$PositionalWaypointTracker + f Lnet/minecraft/class_3222; field_59803 receiver + f Lnet/minecraft/class_11208$class_11209; field_59802 config + f Lnet/minecraft/class_1309; field_59801 source + f Lnet/minecraft/class_2338; field_59804 pos + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_3222;)V + p 1 source + p 2 config + p 3 receiver +c net/minecraft/class_11212$class_11218 net/minecraft/world/waypoint/ServerWaypoint$ChunkWaypointTracker + f Lnet/minecraft/class_1923; field_59808 chunkPos + f Lnet/minecraft/class_11208$class_11209; field_59806 config + f Lnet/minecraft/class_3222; field_59807 receiver + f Lnet/minecraft/class_1309; field_59805 source + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_3222;)V + p 2 config + p 3 receiver + p 1 source +c net/minecraft/class_11212$class_11213 net/minecraft/world/waypoint/ServerWaypoint$ManhattanDistanceValidatedTracker + m ()I method_70799 getDistanceToOriginalPos +c net/minecraft/class_11212$class_11214 net/minecraft/world/waypoint/ServerWaypoint$ChebyshevDistanceValidatedTracker + m ()I method_70801 getDistanceToOriginalPos +c net/minecraft/class_11212$class_11215 net/minecraft/world/waypoint/ServerWaypoint$WaypointTracker + m ()Z method_70800 isInvalid + m ()V method_70802 track + m ()V method_70803 untrack + m ()V method_70804 update +c net/minecraft/class_11219 net/minecraft/client/gl/ScissorState + f I field_59811 y + f I field_59810 x + f I field_59813 height + f I field_59812 width + f Z field_59809 enabled + m ()I method_72094 getWidth + m ()I method_72095 getHeight + m ()I method_72092 getX + m ()I method_72093 getY + m (IIII)V method_70814 enable + p 2 y + p 1 x + p 4 height + p 3 width + m ()V method_70813 disable + m ()Z method_72091 isEnabled +c net/minecraft/class_7046 net/minecraft/datafixer/fix/StructuresToConfiguredStructuresFix + f Lorg/slf4j/Logger; field_51349 LOGGER + f Ljava/util/Map; field_37050 STRUCTURE_TO_CONFIGURED_STRUCTURES_MAPPING + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41025 method_41025 + p 2 startsDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41015 fixStructureStarts + p 1 startsDynamic + p 2 chunkDynamic + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/class_7046$class_7047;)Ljava/util/Optional; method_41013 getBiomeRepresentativeStructure + p 1 chunkDynamic + p 2 mappingForStructure + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41023 method_41023 + p 2 structuresDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41024 method_41024 + p 2 referencesDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59521 method_59521 + p 2 configuredStructureId + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41022 mapStructureToConfiguredStructure + p 1 structureIdDynamic + p 2 chunkDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lnet/minecraft/class_7046$class_7047;Lit/unimi/dsi/fastutil/objects/Object2IntArrayMap;Lcom/mojang/serialization/Dynamic;)V method_41009 method_41009 + p 2 sectionDynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/util/HashMap;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_59520 method_59520 + p 3 structureId + p 4 referenceDynamic + m (Lnet/minecraft/class_7046$class_7047;Lit/unimi/dsi/fastutil/objects/Object2IntArrayMap;Lcom/mojang/serialization/Dynamic;)V method_41017 method_41017 + p 2 biomePaletteDynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/util/HashMap;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_59522 method_59522 + p 4 startDynamic + p 3 structureId + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41012 fixChunk + p 1 chunkDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41020 fixStructureReferences + p 1 referencesDynamic + p 2 chunkDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59519 method_59519 + p 2 referenceDynamic + p 1 configuredStructureId +c net/minecraft/class_7046$class_7047 net/minecraft/datafixer/fix/StructuresToConfiguredStructuresFix$Mapping + f Ljava/lang/String; comp_463 fallback + f Ljava/util/Map; comp_462 biomeMapping + m (Ljava/lang/String;)Lnet/minecraft/class_7046$class_7047; method_41027 create + p 0 mapping + m (Ljava/util/Map;Ljava/lang/String;)Lnet/minecraft/class_7046$class_7047; method_41029 create + p 1 fallback + p 0 biomeMapping + m (Lcom/google/common/collect/ImmutableMap$Builder;Ljava/util/Map$Entry;Ljava/lang/String;)V method_41026 method_41026 + p 2 key + m (Ljava/util/Map;)Ljava/util/Map; method_41028 flattenBiomeMapping + p 0 biomeMapping + m ()Ljava/lang/String; comp_463 fallback + m ()Ljava/util/Map; comp_462 biomeMapping + m (Ljava/util/Map;Ljava/lang/String;)V + p 1 biomeMapping + p 2 fallback +c net/minecraft/class_7045 net/minecraft/registry/tag/StructureTags + f Lnet/minecraft/class_6862; field_37404 CATS_SPAWN_IN + f Lnet/minecraft/class_6862; field_37405 CATS_SPAWN_AS_BLACK + f Lnet/minecraft/class_6862; field_46163 ON_JUNGLE_EXPLORER_MAPS + f Lnet/minecraft/class_6862; field_46162 ON_SNOWY_VILLAGE_MAPS + f Lnet/minecraft/class_6862; field_46161 ON_TAIGA_VILLAGE_MAPS + f Lnet/minecraft/class_6862; field_46160 ON_PLAINS_VILLAGE_MAPS + f Lnet/minecraft/class_6862; field_46164 ON_SWAMP_EXPLORER_MAPS + f Lnet/minecraft/class_6862; field_46159 ON_DESERT_VILLAGE_MAPS + f Lnet/minecraft/class_6862; field_46158 ON_SAVANNA_VILLAGE_MAPS + f Lnet/minecraft/class_6862; field_49958 ON_TRIAL_CHAMBERS_MAPS + f Lnet/minecraft/class_6862; field_37046 MINESHAFT + f Lnet/minecraft/class_6862; field_37047 SHIPWRECK + f Lnet/minecraft/class_6862; field_37044 ON_TREASURE_MAPS + f Lnet/minecraft/class_6862; field_37045 VILLAGE + f Lnet/minecraft/class_6862; field_37049 OCEAN_RUIN + f Lnet/minecraft/class_6862; field_37048 RUINED_PORTAL + f Lnet/minecraft/class_6862; field_37042 ON_WOODLAND_EXPLORER_MAPS + f Lnet/minecraft/class_6862; field_37043 ON_OCEAN_EXPLORER_MAPS + f Lnet/minecraft/class_6862; field_37040 EYE_OF_ENDER_LOCATED + f Lnet/minecraft/class_6862; field_37041 DOLPHIN_LOCATED + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_41006 of + p 0 id +c net/minecraft/class_7057 net/minecraft/structure/StructureSetKeys + f Lnet/minecraft/class_5321; field_43325 TRAIL_RUINS + f Lnet/minecraft/class_5321; field_38427 ANCIENT_CITIES + f Lnet/minecraft/class_5321; field_47410 TRIAL_CHAMBERS + f Lnet/minecraft/class_5321; field_37152 OCEAN_MONUMENTS + f Lnet/minecraft/class_5321; field_37153 WOODLAND_MANSIONS + f Lnet/minecraft/class_5321; field_37150 SWAMP_HUTS + f Lnet/minecraft/class_5321; field_37151 PILLAGER_OUTPOSTS + f Lnet/minecraft/class_5321; field_37156 RUINED_PORTALS + f Lnet/minecraft/class_5321; field_37157 SHIPWRECKS + f Lnet/minecraft/class_5321; field_37154 BURIED_TREASURES + f Lnet/minecraft/class_5321; field_37155 MINESHAFTS + f Lnet/minecraft/class_5321; field_37148 IGLOOS + f Lnet/minecraft/class_5321; field_37149 JUNGLE_TEMPLES + f Lnet/minecraft/class_5321; field_37146 VILLAGES + f Lnet/minecraft/class_5321; field_37147 DESERT_PYRAMIDS + f Lnet/minecraft/class_5321; field_37162 STRONGHOLDS + f Lnet/minecraft/class_5321; field_37160 NETHER_FOSSILS + f Lnet/minecraft/class_5321; field_37161 END_CITIES + f Lnet/minecraft/class_5321; field_37158 OCEAN_RUINS + f Lnet/minecraft/class_5321; field_37159 NETHER_COMPLEXES + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_41141 of + p 0 id +c net/minecraft/class_7058 net/minecraft/world/gen/structure/StructureKeys + f Lnet/minecraft/class_5321; field_43326 TRAIL_RUINS + f Lnet/minecraft/class_5321; field_38428 ANCIENT_CITY + f Lnet/minecraft/class_5321; field_37192 RUINED_PORTAL + f Lnet/minecraft/class_5321; field_37193 RUINED_PORTAL_DESERT + f Lnet/minecraft/class_5321; field_37190 VILLAGE_SNOWY + f Lnet/minecraft/class_5321; field_37191 VILLAGE_TAIGA + f Lnet/minecraft/class_5321; field_47411 TRIAL_CHAMBERS + f Lnet/minecraft/class_5321; field_37178 STRONGHOLD + f Lnet/minecraft/class_5321; field_37179 MONUMENT + f Lnet/minecraft/class_5321; field_37176 SHIPWRECK_BEACHED + f Lnet/minecraft/class_5321; field_37177 SWAMP_HUT + f Lnet/minecraft/class_5321; field_37170 MINESHAFT_MESA + f Lnet/minecraft/class_5321; field_37171 MANSION + f Lnet/minecraft/class_5321; field_37174 IGLOO + f Lnet/minecraft/class_5321; field_37175 SHIPWRECK + f Lnet/minecraft/class_5321; field_37172 JUNGLE_PYRAMID + f Lnet/minecraft/class_5321; field_37173 DESERT_PYRAMID + f Lnet/minecraft/class_5321; field_37188 VILLAGE_DESERT + f Lnet/minecraft/class_5321; field_37189 VILLAGE_SAVANNA + f Lnet/minecraft/class_5321; field_37182 FORTRESS + f Lnet/minecraft/class_5321; field_37183 NETHER_FOSSIL + f Lnet/minecraft/class_5321; field_37180 OCEAN_RUIN_COLD + f Lnet/minecraft/class_5321; field_37181 OCEAN_RUIN_WARM + f Lnet/minecraft/class_5321; field_37186 BASTION_REMNANT + f Lnet/minecraft/class_5321; field_37187 VILLAGE_PLAINS + f Lnet/minecraft/class_5321; field_37184 END_CITY + f Lnet/minecraft/class_5321; field_37185 BURIED_TREASURE + f Lnet/minecraft/class_5321; field_37166 RUINED_PORTAL_OCEAN + f Lnet/minecraft/class_5321; field_37167 RUINED_PORTAL_NETHER + f Lnet/minecraft/class_5321; field_37164 RUINED_PORTAL_SWAMP + f Lnet/minecraft/class_5321; field_37165 RUINED_PORTAL_MOUNTAIN + f Lnet/minecraft/class_5321; field_37168 PILLAGER_OUTPOST + f Lnet/minecraft/class_5321; field_37169 MINESHAFT + f Lnet/minecraft/class_5321; field_37163 RUINED_PORTAL_JUNGLE + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_41142 of + p 0 id +c net/minecraft/class_7059 net/minecraft/structure/StructureSet + f Lcom/mojang/serialization/Codec; field_37195 CODEC + f Lcom/mojang/serialization/Codec; field_37196 REGISTRY_CODEC + f Ljava/util/List; comp_510 structures + f Lnet/minecraft/class_6874; comp_511 placement + m (Lnet/minecraft/class_6880;I)Lnet/minecraft/class_7059$class_7060; method_41146 createEntry + p 0 structure + p 1 weight + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_7059$class_7060; method_41145 createEntry + p 0 structure + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41144 method_41144 + p 0 instance + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_6874;)V + p 2 placement + p 1 structure + m ()Lnet/minecraft/class_6874; comp_511 placement + m ()Ljava/util/List; comp_510 structures + m (Ljava/util/List;Lnet/minecraft/class_6874;)V + p 1 structures + p 2 placement +c net/minecraft/class_7059$class_7060 net/minecraft/structure/StructureSet$WeightedEntry + f Lcom/mojang/serialization/Codec; field_37197 CODEC + f Lnet/minecraft/class_6880; comp_512 structure + f I comp_513 weight + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41147 method_41147 + p 0 instance + m ()I comp_513 weight + m ()Lnet/minecraft/class_6880; comp_512 structure + m (Lnet/minecraft/class_6880;I)V + p 1 structure + p 2 weight +c net/minecraft/class_7 net/minecraft/entity/ai/pathing/PathNodeType + f F field_13 defaultPenalty + f Lnet/minecraft/class_7; field_21326 STICKY_HONEY + f Lnet/minecraft/class_7; field_18 WATER + f Lnet/minecraft/class_7; field_17 DAMAGE_OTHER + f Lnet/minecraft/class_7; field_16 BREACH + f Lnet/minecraft/class_7; field_15 DOOR_OPEN + f Lnet/minecraft/class_7; field_14 LAVA + f Lnet/minecraft/class_7; field_12 WALKABLE + f Lnet/minecraft/class_7; field_10 FENCE + f Lnet/minecraft/class_7; field_19 TRAPDOOR + f Lnet/minecraft/class_7; field_23 DOOR_WOOD_CLOSED + f Lnet/minecraft/class_7; field_22 BLOCKED + f Lnet/minecraft/class_7; field_21 RAIL + f Lnet/minecraft/class_7; field_3 DAMAGE_FIRE + f Lnet/minecraft/class_7; field_4 WATER_BORDER + f Lnet/minecraft/class_7; field_5 DANGER_OTHER + f Lnet/minecraft/class_7; field_6 LEAVES + f Lnet/minecraft/class_7; field_7 OPEN + f Lnet/minecraft/class_7; field_8 DOOR_IRON_CLOSED + f Lnet/minecraft/class_7; field_9 DANGER_FIRE + f Lnet/minecraft/class_7; field_47413 DANGER_TRAPDOOR + f Lnet/minecraft/class_7; field_36432 DANGER_POWDER_SNOW + f Lnet/minecraft/class_7; field_25418 UNPASSABLE_RAIL + f Lnet/minecraft/class_7; field_43351 DAMAGE_CAUTIOUS + f Lnet/minecraft/class_7; field_21516 COCOA + f Lnet/minecraft/class_7; field_33534 POWDER_SNOW + f Lnet/minecraft/class_7; field_26446 WALKABLE_DOOR + m (Ljava/lang/String;IF)V + p 3 defaultPenalty + m ()F method_11 getDefaultPenalty +c net/minecraft/class_8 net/minecraft/entity/ai/pathing/PathNodeMaker + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_32 pathNodeCache + f I field_30 entityBlockYSize + f Z field_40927 canWalkOverFences + f Lnet/minecraft/class_9316; field_49416 context + f Z field_29 canEnterOpenDoors + f Z field_27 canOpenDoors + f Z field_25 canSwim + f I field_31 entityBlockXSize + f I field_28 entityBlockZSize + f Lnet/minecraft/class_1308; field_33 entity + m (Lnet/minecraft/class_2680;)Z method_57082 isFireDamaging + p 0 state + m (DDD)Lnet/minecraft/class_4459; method_57083 createNode + p 5 z + p 3 y + p 1 x + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_9; method_27137 getNode + p 1 pos + m (Z)V method_46737 setCanWalkOverFences + p 1 canWalkOverFences + m (III)Lnet/minecraft/class_9; method_13 getNode + p 3 z + p 1 x + p 2 y + m (DDD)Lnet/minecraft/class_4459; method_16 getNode + p 1 x + p 3 y + p 5 z + m ()Z method_22 canSwim + m (Z)V method_14 setCanSwim + p 1 canSwim + m (Z)V method_20 setCanOpenDoors + p 1 canOpenDoors + m ()Lnet/minecraft/class_9; method_21 getStart + m (Lnet/minecraft/class_9316;IIILnet/minecraft/class_1308;)Lnet/minecraft/class_7; method_25 getNodeType + c Gets the path node type at the given position without adjusting the node type according to whether the entity can enter or open doors + p 3 y + p 4 z + p 1 context + p 2 x + p 5 mob + m ()Z method_24 canOpenDoors + m ()V method_19 clear + m ()Z method_46738 canWalkOverFences + m ([Lnet/minecraft/class_9;Lnet/minecraft/class_9;)I method_18 getSuccessors + p 2 node + p 1 successors + m (Lnet/minecraft/class_9316;III)Lnet/minecraft/class_7; method_17 getDefaultNodeType + c Gets the path node type at the given position without adjusting the node type according to whether the entity can enter or open doors + p 4 z + p 3 y + p 2 x + p 1 context + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_2338;)Lnet/minecraft/class_7; method_57615 getDefaultNodeType + p 2 pos + p 1 entity + m (Z)V method_15 setCanEnterOpenDoors + p 1 canEnterOpenDoors + m (Lnet/minecraft/class_1950;Lnet/minecraft/class_1308;)V method_12 init + p 2 entity + p 1 cachedWorld + m ()Z method_23 canEnterOpenDoors +c net/minecraft/class_9 net/minecraft/entity/ai/pathing/PathNode + f I field_44 hashCode + f I field_40 x + f I field_39 y + f F field_47 heapWeight + f I field_37 heapIndex + f F field_43 penalty + f Z field_42 visited + f Lnet/minecraft/class_9; field_35 previous + f Lnet/minecraft/class_7; field_41 type + f F field_36 penalizedPathLength + f F field_34 distanceToNearestTarget + f I field_38 z + f F field_46 pathLength + m (Lnet/minecraft/class_9;)F method_32 getSquaredDistance + p 1 node + m (Lnet/minecraft/class_2338;)F method_35494 getDistance + p 1 pos + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_9;)F method_31 getDistance + p 1 node + m (III)I method_30 hash + p 1 y + p 2 z + p 0 x + m ()Lnet/minecraft/class_2338; method_22879 getBlockPos + m ()Lnet/minecraft/class_243; method_35496 getPos + m (Lnet/minecraft/class_2338;)F method_35497 getSquaredDistance + p 1 pos + m (Lnet/minecraft/class_9;)F method_44022 getHorizontalDistance + p 1 node + m (III)Lnet/minecraft/class_9; method_26 copyWithNewPosition + p 3 z + p 2 y + p 1 x + m (Lnet/minecraft/class_9;)F method_21653 getManhattanDistance + p 1 node + m (III)V + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_9; method_28 fromBuf + p 0 buf + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_9;)V method_47935 readFromBuf + p 0 buf + p 1 target + m (Lnet/minecraft/class_2540;)V method_35495 write + p 1 buf + m ()Z method_27 isInHeap + m (Lnet/minecraft/class_2338;)F method_21654 getManhattanDistance + p 1 pos +c net/minecraft/class_5 net/minecraft/entity/ai/pathing/PathMinHeap + f I field_2 count + f [Lnet/minecraft/class_9; field_1 pathNodes + m (I)V method_7 shiftDown + p 1 index + m (Lnet/minecraft/class_9;F)V method_3 setNodeWeight + p 2 weight + p 1 node + m ()Lnet/minecraft/class_9; method_6 pop + m ()[Lnet/minecraft/class_9; method_35493 getNodes + m ()Lnet/minecraft/class_9; method_35490 getStart + m (Lnet/minecraft/class_9;)Lnet/minecraft/class_9; method_2 push + p 1 node + m ()Z method_8 isEmpty + m ()V method_5 clear + m (I)V method_4 shiftUp + p 1 index + m ()I method_35492 getCount + m (Lnet/minecraft/class_9;)V method_35491 popNode + p 1 node +c net/minecraft/class_6 net/minecraft/entity/ai/pathing/BirdPathNodeMaker + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_27341 pathNodes + m (Lnet/minecraft/class_9;)Z method_22877 isPassable + p 1 node + m (Lnet/minecraft/class_9;)Z method_22878 unvisited + p 1 node + m (IIIJ)Lnet/minecraft/class_7; method_9 getNodeType + p 4 pos + m (Lnet/minecraft/class_1308;)Ljava/lang/Iterable; method_47934 getPotentialEscapePositions + c {@return the iterable of positions that the entity should try to pathfind to when escaping}\n\n@apiNote This is used when the entity {@linkplain #canPathThrough cannot path through}\nthe current position (e.g. because it is dangerous). + p 1 entity + m (III)Lnet/minecraft/class_9; method_47933 getPassableNode + p 3 z + p 1 x + p 2 y +c net/minecraft/class_9687 net/minecraft/datafixer/fix/RemoveEmptyItemInSuspiciousBlockFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Z method_59889 shouldRemoveItem + p 0 dynamic +c net/minecraft/class_9684 net/minecraft/util/dynamic/CodecCache + f Lcom/google/common/cache/LoadingCache; field_51504 cache + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_59856 wrap + p 1 codec + m (I)V + p 1 size +c net/minecraft/class_9684$1 net/minecraft/util/dynamic/CodecCache$1 + m (Ljava/lang/Object;)Ljava/lang/Object; load load + p 1 key + m (Lnet/minecraft/class_9684$class_9685;)Lcom/mojang/serialization/DataResult; method_59857 load +c net/minecraft/class_9684$2 net/minecraft/util/dynamic/CodecCache$2 + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode encode + p 3 prefix + p 2 ops + p 1 value + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decode decode + p 2 input + p 1 ops +c net/minecraft/class_9684$class_9685 net/minecraft/util/dynamic/CodecCache$Key + f Lcom/mojang/serialization/Codec; comp_2658 codec + f Lcom/mojang/serialization/DynamicOps; comp_2660 ops + f Ljava/lang/Object; comp_2659 value + m ()Lcom/mojang/serialization/DataResult; method_59858 encode + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lcom/mojang/serialization/DynamicOps; comp_2660 ops + m ()Ljava/lang/Object; comp_2659 value + m ()Lcom/mojang/serialization/Codec; comp_2658 codec + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;)V + p 1 codec + p 2 value + p 3 ops +c net/minecraft/class_9680 net/minecraft/network/handler/PacketSizeLogHandler + f Lnet/minecraft/class_8762; field_51500 logger + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V channelRead channelRead + p 2 value + p 1 context + m (Lnet/minecraft/class_8762;)V + p 1 logger +c net/minecraft/class_9689 net/minecraft/datafixer/fix/ArrowStoredWeaponFix + m (Ljava/lang/String;)Ljava/util/function/Function; method_59911 fixFor + p 1 entityId + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Ljava/lang/String;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Ljava/util/function/Function; method_59912 method_59912 + p 0 name +c net/minecraft/class_9688 net/minecraft/datafixer/schema/Schema3808_2 +c net/minecraft/class_9698 net/minecraft/enchantment/effect/EnchantmentEffectEntry + f Ljava/lang/Object; comp_2680 effect + f Ljava/util/Optional; comp_2681 requirements + m (Lnet/minecraft/class_47;)Z method_60006 test + p 1 context + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_176;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60005 method_60005 + p 2 instance + m (Lnet/minecraft/class_176;Lnet/minecraft/class_5341;)Lcom/mojang/serialization/DataResult; method_60008 method_60008 + p 1 condition + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_176;)Lcom/mojang/serialization/Codec; method_60004 createCodec + p 1 lootContextType + p 0 effectCodec + m (Lnet/minecraft/class_176;)Lcom/mojang/serialization/Codec; method_60007 createRequirementsCodec + p 0 lootContextType + m ()Ljava/lang/Object; comp_2680 effect + m ()Ljava/util/Optional; comp_2681 requirements + m (Ljava/lang/Object;Ljava/util/Optional;)V + p 1 effect + p 2 requirements +c net/minecraft/class_9697 net/minecraft/recipe/input/SmithingRecipeInput + f Lnet/minecraft/class_1799; comp_2677 template + f Lnet/minecraft/class_1799; comp_2679 addition + f Lnet/minecraft/class_1799; comp_2678 base + m ()Lnet/minecraft/class_1799; comp_2677 template + m ()Lnet/minecraft/class_1799; comp_2678 base + m ()Lnet/minecraft/class_1799; comp_2679 addition + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V + p 1 template + p 2 base + p 3 addition +c net/minecraft/class_9696 net/minecraft/recipe/input/SingleStackRecipeInput + f Lnet/minecraft/class_1799; comp_2676 item + m ()Lnet/minecraft/class_1799; comp_2676 item + m (Lnet/minecraft/class_1799;)V + p 1 item +c net/minecraft/class_9695 net/minecraft/recipe/input/RecipeInput + m ()Z method_59987 isEmpty + m (I)Lnet/minecraft/class_1799; method_59984 getStackInSlot + p 1 slot + m ()I method_59983 size +c net/minecraft/class_9694 net/minecraft/recipe/input/CraftingRecipeInput + f Lnet/minecraft/class_9694; field_51631 EMPTY + f Lnet/minecraft/class_9875; field_51635 matcher + f Ljava/util/List; field_51634 stacks + f I field_51632 width + f I field_51633 height + f I field_51636 stackCount + m ()Ljava/util/List; method_59989 getStacks + m (IILjava/util/List;)V + p 3 stacks + p 2 height + p 1 width + m (IILjava/util/List;)Lnet/minecraft/class_9694$class_9765; method_60505 createPositioned + p 0 width + p 1 height + p 2 stacks + m ()I method_59990 getStackCount + m ()I method_59991 getWidth + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()I method_59992 getHeight + m ()Lnet/minecraft/class_9875; method_59988 getRecipeMatcher + m (II)Lnet/minecraft/class_1799; method_59985 getStackInSlot + p 2 y + p 1 x + m (IILjava/util/List;)Lnet/minecraft/class_9694; method_59986 create + p 0 width + p 2 stacks + p 1 height +c net/minecraft/class_9694$class_9765 net/minecraft/recipe/input/CraftingRecipeInput$Positioned + f Lnet/minecraft/class_9694$class_9765; field_51896 EMPTY + f I comp_2796 left + f I comp_2797 top + f Lnet/minecraft/class_9694; comp_2795 input + m ()Lnet/minecraft/class_9694; comp_2795 input + m ()I comp_2796 left + m ()I comp_2797 top + m (Lnet/minecraft/class_9694;II)V + p 1 input + p 2 left + p 3 top +c net/minecraft/class_9692 net/minecraft/screen/slot/ArmorSlot + f Lnet/minecraft/class_1309; field_51622 entity + f Lnet/minecraft/class_2960; field_51624 backgroundSprite + f Lnet/minecraft/class_1304; field_51623 equipmentSlot + m (Lnet/minecraft/class_1263;Lnet/minecraft/class_1309;Lnet/minecraft/class_1304;IIILnet/minecraft/class_2960;)V + p 5 x + p 4 index + p 7 backgroundSprite + p 6 y + p 1 inventory + p 3 equipmentSlot + p 2 entity +c net/minecraft/class_9691 net/minecraft/entity/decoration/BlockAttachedEntity + f Lorg/slf4j/Logger; field_51590 LOGGER + f I field_51591 attachCheckTimer + f Lnet/minecraft/class_2338; field_51589 attachedBlockPos + m ()Lnet/minecraft/class_2338; method_59940 getAttachedBlockPos + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V + p 3 attachedBlockPos + p 1 type + p 2 world + m ()Z method_6888 canStayAttached + m ()V method_6895 updateAttachmentPosition + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)V method_6889 onBreak + p 1 world + p 2 breaker +c net/minecraft/class_9699 net/minecraft/enchantment/EnchantmentEffectContext + f Ljava/util/function/Consumer; comp_2685 breakCallback + f Lnet/minecraft/class_1799; comp_2682 stack + f Lnet/minecraft/class_1304; comp_2683 slot + f Lnet/minecraft/class_1309; comp_2684 owner + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1304;Lnet/minecraft/class_1309;)V + p 3 owner + p 1 stack + p 2 slot + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1304;Lnet/minecraft/class_1792;)V method_60012 method_60012 + p 2 item + m ()Ljava/util/function/Consumer; comp_2685 breakCallback + m ()Lnet/minecraft/class_1799; comp_2682 stack + m ()Lnet/minecraft/class_1304; comp_2683 slot + m ()Lnet/minecraft/class_1309; comp_2684 owner + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1304;Lnet/minecraft/class_1309;Ljava/util/function/Consumer;)V + p 1 stack + p 2 slot + p 3 owner + p 4 breakCallback +c net/minecraft/class_9690 net/minecraft/datafixer/schema/Schema3938 +c net/minecraft/class_4891 net/minecraft/client/realms/dto/WorldTemplatePaginatedList + f I comp_5049 page + f I comp_5051 total + f I comp_5050 size + f Lorg/slf4j/Logger; field_22680 LOGGER + f Ljava/util/List; comp_5048 templates + m (I)V + p 1 size + m ()I comp_5049 page + m ()I comp_5051 total + m ()I comp_5050 size + m ()Ljava/util/List; comp_5048 templates + m (Ljava/lang/String;)Lnet/minecraft/class_4891; method_25097 parse + p 0 json + m ()Z method_35688 isLastPage + m (Ljava/util/List;III)V + p 1 templates + p 2 page + p 3 size + p 4 total +c net/minecraft/class_3560 net/minecraft/world/chunk/light/LightStorage + c LightStorage handles the access, storage and propagation of a specific kind of light within the world.\nFor example, separate instances will be used to store block light as opposed to sky light.\n\n

The smallest unit within LightStorage is the section. Sections represent a cube of 16x16x16 blocks and their lighting data.\nIn turn, 16 sections stacked on top of each other form a column, which are analogous to the standard 16x256x16 world chunks.\n\n

To avoid allocations, LightStorage packs all the coordinate arguments into single long values. Extra care should be taken\nto ensure that the relevant types are being used where appropriate.\n\n@see SkyLightStorage\n@see BlockLightStorage + f Lnet/minecraft/class_3556; field_15796 storage + f Lnet/minecraft/class_1944; field_15805 lightType + f Lit/unimi/dsi/fastutil/longs/LongSet; field_15798 sectionsToRemove + f Lnet/minecraft/class_2823; field_15803 chunkProvider + f Z field_44717 hasLightUpdates + f Lit/unimi/dsi/fastutil/longs/LongSet; field_19342 columnsToRetain + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; field_44716 sectionPropagations + f Lit/unimi/dsi/fastutil/longs/LongSet; field_16448 notifySections + f Lnet/minecraft/class_3556; field_15806 uncachedStorage + f Lit/unimi/dsi/fastutil/longs/LongSet; field_44718 enabledColumns + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_15807 queuedSections + f Lit/unimi/dsi/fastutil/longs/LongSet; field_15802 dirtySections + m (Lnet/minecraft/class_1944;Lnet/minecraft/class_2823;Lnet/minecraft/class_3556;)V + p 3 lightData + p 2 chunkProvider + p 1 lightType + m (J)Lnet/minecraft/class_2804; method_51547 method_51547 + p 1 sectionPos + m (J)Z method_62873 isColumnEnabled + p 1 columnPos + m (J)V method_51551 queueForRemoval + p 1 sectionPos + m (JLnet/minecraft/class_2804;)V method_15532 enqueueSectionData + p 3 array + p 1 sectionPos + m (JZ)V method_15535 setColumnEnabled + p 1 columnPos + p 3 enabled + m (Lnet/minecraft/class_3556;J)Lnet/minecraft/class_2804; method_15533 getLightSection + p 1 storage + p 2 sectionPos + m (J)Lnet/minecraft/class_2804; method_20533 getLightSection + p 1 sectionPos + m (JB)V method_51546 setSectionPropagation + p 3 flags + p 1 sectionPos + m (J)Lnet/minecraft/class_3560$class_8530; method_51549 getStatus + p 1 sectionPos + m (JZ)Lnet/minecraft/class_2804; method_15522 getLightSection + p 1 sectionPos + p 3 cached + m (J)Z method_15524 hasSection + p 1 sectionPos + m (JZ)V method_20600 setRetainColumn + p 1 sectionPos + p 3 retain + m (J)V method_15534 onUnloadSection + p 1 sectionPos + m (Lnet/minecraft/class_3558;)V method_15527 updateLight + p 1 lightProvider + m (J)Lnet/minecraft/class_2804; method_15529 createSection + p 1 sectionPos + m (J)V method_51415 addNotifySections + p 1 id + m (JZ)V method_15526 setSectionStatus + p 1 sectionPos + p 3 notReady + m (J)I method_15537 get + p 1 blockPos + m (J)V method_51550 queueForUpdate + p 1 sectionPos + m (J)Z method_51548 isSectionInEnabledColumn + p 1 sectionPos + m (J)I method_15538 getLight + p 1 blockPos + m ()V method_15530 notifyChanges + m (J)V method_15523 onLoadSection + p 1 sectionPos + m (JI)V method_15525 set + p 1 blockPos + p 3 value + m ()Z method_15528 hasLightUpdates +c net/minecraft/class_3560$class_8529 net/minecraft/world/chunk/light/LightStorage$PropagationFlags + f I field_44721 MAX_NEIGHBOR_COUNT + f B field_44723 NEIGHBOR_COUNT_MASK + f I field_44720 MIN_NEIGHBOR_COUNT + m (B)Lnet/minecraft/class_3560$class_8530; method_51556 getStatus + p 0 packed + m (BI)B method_51553 withNeighborCount + p 1 neighborCount + p 0 packed + m (B)Z method_51552 isReady + p 0 packed + m (B)I method_51555 getNeighborCount + p 0 packed + m (BZ)B method_51554 setReady + p 1 ready + p 0 packed +c net/minecraft/class_3560$class_8530 net/minecraft/world/chunk/light/LightStorage$Status + f Ljava/lang/String; field_44727 sigil + f Lnet/minecraft/class_3560$class_8530; field_44726 LIGHT_AND_DATA + f Lnet/minecraft/class_3560$class_8530; field_44724 EMPTY + f Lnet/minecraft/class_3560$class_8530; field_44725 LIGHT_ONLY + m ()Ljava/lang/String; method_51557 getSigil + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 sigil +c net/minecraft/class_4890 net/minecraft/client/realms/dto/WorldTemplate + f Lnet/minecraft/class_4890$class_4323; comp_5047 type + f Ljava/lang/String; comp_5039 id + f Ljava/lang/String; comp_5040 name + f Ljava/lang/String; comp_5046 recommendedPlayers + f Ljava/lang/String; comp_5045 trailer + f Ljava/lang/String; comp_5044 image + f Ljava/lang/String; comp_5043 link + f Ljava/lang/String; comp_5042 author + f Lorg/slf4j/Logger; field_22675 LOGGER + f Ljava/lang/String; comp_5041 version + m ()Lnet/minecraft/class_4890$class_4323; comp_5047 type + m ()Ljava/lang/String; comp_5039 id + m ()Ljava/lang/String; comp_5040 name + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_4890; method_25096 parse + p 0 node + m ()Ljava/lang/String; comp_5046 recommendedPlayers + m ()Ljava/lang/String; comp_5045 trailer + m ()Ljava/lang/String; comp_5044 image + m ()Ljava/lang/String; comp_5043 link + m ()Ljava/lang/String; comp_5042 author + m ()Ljava/lang/String; comp_5041 version + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_4890$class_4323;)V + p 1 id + p 2 name + p 3 version + p 4 author + p 5 link + p 6 image + p 7 trailer + p 8 recommendedPlayers + p 9 type +c net/minecraft/class_4890$class_4323 net/minecraft/client/realms/dto/WorldTemplate$WorldTemplateType + f Lnet/minecraft/class_4890$class_4323; field_19450 EXPERIENCE + f Lnet/minecraft/class_4890$class_4323; field_19451 INSPIRATION + f Lnet/minecraft/class_4890$class_4323; field_19447 WORLD_TEMPLATE + f Lnet/minecraft/class_4890$class_4323; field_19449 ADVENTUREMAP + f Lnet/minecraft/class_4890$class_4323; field_19448 MINIGAME + m (Ljava/lang/String;)Lnet/minecraft/class_4890$class_4323; valueOf valueOf + p 0 name +c net/minecraft/class_3565 net/minecraft/world/chunk/light/LightingView + m (Lnet/minecraft/class_2338;Z)V method_15552 setSectionStatus + p 2 notReady + p 1 pos + m (Lnet/minecraft/class_1923;)V method_51471 propagateLight + p 1 chunkPos + m ()Z method_15518 hasUpdates + m (Lnet/minecraft/class_1923;Z)V method_15512 setColumnEnabled + p 2 retainData + p 1 pos + m ()I method_15516 doLightUpdates + m (Lnet/minecraft/class_2338;)V method_15513 checkBlock + p 1 pos + m (Lnet/minecraft/class_4076;Z)V method_15551 setSectionStatus + p 1 pos + p 2 notReady +c net/minecraft/class_4897 net/minecraft/client/sound/BiomeEffectSoundPlayer + f I field_32994 MAX_STRENGTH + f Lit/unimi/dsi/fastutil/objects/Object2ObjectArrayMap; field_22800 soundLoops + f Lnet/minecraft/class_5819; field_22799 random + f Lnet/minecraft/class_746; field_22796 player + f Lnet/minecraft/class_1144; field_22797 soundManager + f F field_23189 moodPercentage + m ()F method_26272 getMoodPercentage + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;Lnet/minecraft/class_4897$class_4898;)Lnet/minecraft/class_4897$class_4898; method_25459 method_25459 + p 3 loop + m (Lnet/minecraft/class_746;Lnet/minecraft/class_1144;)V + p 1 player + p 2 soundManager +c net/minecraft/class_4897$class_4898 net/minecraft/client/sound/BiomeEffectSoundPlayer$MusicLoop + f I field_22805 delta + f I field_22806 strength + m (Lnet/minecraft/class_3414;)V + p 1 sound + m ()V method_25464 fadeOut + m ()V method_25465 fadeIn +c net/minecraft/class_3566 net/minecraft/datafixer/fix/BlockEntityBlockStateFix +c net/minecraft/class_4896 net/minecraft/client/render/entity/model/ArmPosing + c Utility class to help posing arms. + m (Lnet/minecraft/class_630;Lnet/minecraft/class_630;ZLnet/minecraft/class_12159;)V method_29352 zombieArms + p 0 leftArm + p 2 attacking + p 1 rightArm + m (Lnet/minecraft/class_630;Lnet/minecraft/class_630;Lnet/minecraft/class_1306;FF)V method_29351 meleeAttack + p 4 animationProgress + p 1 leftArm + p 0 rightArm + p 3 swingProgress + p 2 mainArm + m (Lnet/minecraft/class_630;Lnet/minecraft/class_630;F)V method_32789 swingArms + p 1 leftArm + p 2 animationProgress + p 0 rightArm + m (Lnet/minecraft/class_630;Lnet/minecraft/class_630;Lnet/minecraft/class_630;Z)V method_25447 hold + p 3 rightArm + p 0 holdingArm + p 1 otherArm + p 2 head + m (Lnet/minecraft/class_630;Lnet/minecraft/class_630;FFZ)V method_25446 charge + p 0 holdingArm + p 2 crossbowPullTime + p 1 pullingArm + p 4 rightArm + m (Lnet/minecraft/class_630;FF)V method_29350 swingArm + p 2 sigma + p 1 animationProgress + p 0 arm +c net/minecraft/class_3567 net/minecraft/datafixer/fix/BlockEntityCustomNameToTextFix + f Ljava/util/Set; field_55628 NAMEABLE_BLOCK_ENTITY_IDS + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66051 fixCustomName + p 0 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_3568 net/minecraft/world/chunk/light/LightingProvider + f Lnet/minecraft/class_3558; field_15813 skyLightProvider + f Lnet/minecraft/class_3558; field_15814 blockLightProvider + f Lnet/minecraft/class_3568; field_52658 DEFAULT + f Lnet/minecraft/class_5539; field_27339 world + m (Lnet/minecraft/class_1923;Z)V method_20601 setRetainData + p 1 pos + p 2 retainData + m (Lnet/minecraft/class_1944;Lnet/minecraft/class_4076;)Ljava/lang/String; method_22876 displaySectionLevel + p 2 pos + p 1 lightType + m (Lnet/minecraft/class_2338;I)I method_22363 getLight + p 2 ambientDarkness + p 1 pos + m (Lnet/minecraft/class_1944;Lnet/minecraft/class_4076;)Lnet/minecraft/class_3560$class_8530; method_51560 getStatus + p 2 pos + p 1 lightType + m (Lnet/minecraft/class_1944;)Lnet/minecraft/class_3562; method_15562 get + p 1 lightType + m (Lnet/minecraft/class_2823;ZZ)V + p 1 chunkProvider + p 2 hasBlockLight + p 3 hasSkyLight + m (Lnet/minecraft/class_1944;Lnet/minecraft/class_4076;Lnet/minecraft/class_2804;)V method_15558 enqueueSectionData + p 3 nibbles + p 2 pos + p 1 lightType + m ()I method_31930 getTopY + m ()I method_31928 getHeight + m ()I method_31929 getBottomY + m (J)Z method_62874 isLightingEnabled + p 1 sectionPos +c net/minecraft/class_2237 net/minecraft/block/BlockWithEntity + c A convenience class for a block with a {@link net.minecraft.block.entity.BlockEntity}.\nWhile blocks with block entity only have to implement {@link BlockEntityProvider}\nand do not have to subclass this, it overrides several methods to delegate its logic\nto the block entity. However, it is generally easier to just implement\n{@link BlockEntityProvider}.\n\n@see net.minecraft.block.entity.BlockEntity\n@see BlockEntityProvider + m (Lnet/minecraft/class_2591;Lnet/minecraft/class_2591;Lnet/minecraft/class_5558;)Lnet/minecraft/class_5558; method_31618 validateTicker + c {@return the ticker if the given type and expected type are the same, or {@code null} if they are different} + p 2 ticker + p 0 givenType + p 1 expectedType +c net/minecraft/class_3561 net/minecraft/datafixer/mapping/FlatteningBiomeMapping + f Ljava/util/Map; field_15810 RENAMED_BIOMES +c net/minecraft/class_2230 net/minecraft/block/AbstractCoralBlock + f Lnet/minecraft/class_2746; field_9940 WATERLOGGED + f Lnet/minecraft/class_265; field_9939 SHAPE + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_10225;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)V method_9430 checkLivingConditions + p 1 state + p 2 world + p 3 tickView + p 4 random + p 5 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_9431 isInWater + p 0 state + p 2 pos + p 1 world +c net/minecraft/class_3562 net/minecraft/world/chunk/light/ChunkLightingView + m (Lnet/minecraft/class_2338;)I method_15543 getLightLevel + p 1 pos + m (Lnet/minecraft/class_4076;)Lnet/minecraft/class_2804; method_15544 getLightSection + p 1 pos +c net/minecraft/class_3562$class_3563 net/minecraft/world/chunk/light/ChunkLightingView$Empty + f Lnet/minecraft/class_3562$class_3563; field_15812 INSTANCE +c net/minecraft/class_4892 net/minecraft/client/gui/widget/OptionSliderWidget + f Lnet/minecraft/class_315; field_22738 options + m (Lnet/minecraft/class_315;IIIID)V + p 5 height + p 6 value + p 1 options + p 2 x + p 3 y + p 4 width +c net/minecraft/class_2231 net/minecraft/block/AbstractPressurePlateBlock + f Lnet/minecraft/class_8177; field_42726 blockSetType + f Lnet/minecraft/class_238; field_9941 BOX + f Lnet/minecraft/class_265; field_9942 PRESSED_SHAPE + f Lnet/minecraft/class_265; field_9943 DEFAULT_SHAPE + m (Lnet/minecraft/class_2680;I)Lnet/minecraft/class_2680; method_9432 setRedstoneOutput + p 1 state + p 2 rsOut + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_238;Ljava/lang/Class;)I method_52210 getEntityCount + p 2 entityClass + p 1 box + p 0 world + m (Lnet/minecraft/class_1297;)Z method_52209 method_52209 + p 0 entity + m (Lnet/minecraft/class_4970$class_2251;Lnet/minecraft/class_8177;)V + p 2 blockSetType + p 1 settings + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_9437 updateNeighbors + p 1 world + p 2 pos + m ()I method_9563 getTickRate + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;I)V method_9433 updatePlateState + p 2 world + p 3 pos + p 4 state + p 5 output + p 1 entity + m (Lnet/minecraft/class_2680;)I method_9435 getRedstoneOutput + p 1 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)I method_9434 getRedstoneOutput + p 1 world + p 2 pos +c net/minecraft/class_2232 net/minecraft/command/argument/IdentifierArgumentType + f Ljava/util/Collection; field_9946 EXAMPLES + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2960; method_9443 getIdentifier + p 1 name + p 0 context + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2960; method_9446 parse + m ()Lnet/minecraft/class_2232; method_9441 identifier +c net/minecraft/class_4895 net/minecraft/client/gui/screen/ingame/SmithingScreen + f Lnet/minecraft/class_2960; field_42052 EMPTY_SLOT_SMITHING_TEMPLATE_ARMOR_TRIM_TEXTURE + f Lnet/minecraft/class_2960; field_42053 EMPTY_SLOT_SMITHING_TEMPLATE_NETHERITE_UPGRADE_TEXTURE + f Lorg/joml/Quaternionf; field_42048 ARMOR_STAND_ROTATION + f Lnet/minecraft/class_9998; field_42067 armorStand + f Lnet/minecraft/class_2960; field_45498 ERROR_TEXTURE + f Ljava/util/List; field_42056 EMPTY_SLOT_TEXTURES + f Lorg/joml/Vector3f; field_45497 ARMOR_STAND_TRANSLATION + f Lnet/minecraft/class_8064; field_42066 additionsSlotIcon + f Lnet/minecraft/class_2561; field_42054 MISSING_TEMPLATE_TOOLTIP + f Lnet/minecraft/class_2561; field_42055 ERROR_TOOLTIP + f Lnet/minecraft/class_8064; field_42064 templateSlotIcon + f Lnet/minecraft/class_8064; field_42065 baseSlotIcon + m (Lnet/minecraft/class_1799;)V method_48641 equipArmorStand + p 1 stack + m (Lnet/minecraft/class_4862;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 3 title + p 2 playerInventory + p 1 handler + m ()Ljava/util/Optional; method_48473 getSmithingTemplate + m ()Z method_48474 hasInvalidRecipe + m (Lnet/minecraft/class_332;II)V method_48476 renderSlotTooltip + p 1 context + p 2 mouseX + p 3 mouseY + m (Lnet/minecraft/class_332;IILnet/minecraft/class_2561;)V method_48475 method_48475 + p 4 text +c net/minecraft/class_3564 net/minecraft/datafixer/fix/BlockEntityBannerColorFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28176 method_28176 + p 0 patternsDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28178 method_28178 + p 0 colorDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28177 method_28177 + p 0 patternDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28179 method_28179 + p 0 baseDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15546 fixBannerColor + p 1 bannerDynamic +c net/minecraft/class_2233 net/minecraft/command/argument/ScoreHolderArgumentType + f Z field_9949 multiple + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; field_9951 SUGGESTION_PROVIDER + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9950 EMPTY_SCORE_HOLDER_EXCEPTION + f Ljava/util/Collection; field_9948 EXAMPLES + m ()Lnet/minecraft/class_2233; method_9447 scoreHolder + m (Ljava/util/List;Lnet/minecraft/class_2168;Ljava/util/function/Supplier;)Ljava/util/Collection; method_9456 method_9456 + p 2 players + p 1 source + m (Lnet/minecraft/class_2168;Ljava/util/function/Supplier;)Ljava/util/Collection; method_9457 method_9457 + p 0 source + p 1 players + m ()Lnet/minecraft/class_2233; method_9451 scoreHolders + m (Ljava/lang/String;Ljava/util/List;Lnet/minecraft/class_2168;Ljava/util/function/Supplier;)Ljava/util/Collection; method_55587 method_55587 + p 2 source + p 3 holders + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; method_9449 getScoreboardScoreHolders + p 1 name + p 0 context + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2233$class_2234; method_61183 parse + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Ljava/lang/Object; parse parse + p 1 reader + p 2 source + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_9015; method_9452 getScoreHolder + p 1 name + p 0 context + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/class_2233$class_2234; method_9453 parse + p 2 allowAtSelectors + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Ljava/util/function/Supplier;)Ljava/util/Collection; method_9450 getScoreHolders + p 0 context + p 1 name + p 2 players + m (Z)V + p 1 multiple + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V method_9448 method_9448 + p 1 builderx + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; method_9458 getScoreHolders + p 0 context + p 1 name + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Lnet/minecraft/class_2233$class_2234; method_61184 parse + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9455 method_9455 + p 0 context + p 1 builder + m (Ljava/util/UUID;Ljava/util/List;Lnet/minecraft/class_2168;Ljava/util/function/Supplier;)Ljava/util/Collection; method_55588 method_55588 + p 2 source + p 3 holders +c net/minecraft/class_2233$class_2236 net/minecraft/command/argument/ScoreHolderArgumentType$Serializer + f B field_37930 MULTIPLE_FLAG + m (Lnet/minecraft/class_2233$class_2236$class_7200;Lcom/google/gson/JsonObject;)V method_9459 writeJson + m (Lnet/minecraft/class_2233$class_2236$class_7200;Lnet/minecraft/class_2540;)V method_9461 writePacket + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2233$class_2236$class_7200; method_9460 fromPacket + m (Lnet/minecraft/class_2233;)Lnet/minecraft/class_2233$class_2236$class_7200; method_41914 getArgumentTypeProperties +c net/minecraft/class_2233$class_2236$class_7200 net/minecraft/command/argument/ScoreHolderArgumentType$Serializer$Properties + f Z field_37932 multiple + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_2233; method_41915 createType + m (Lnet/minecraft/class_2233$class_2236;Z)V + p 2 multiple +c net/minecraft/class_2233$class_2235 net/minecraft/command/argument/ScoreHolderArgumentType$SelectorScoreHolders + f Lnet/minecraft/class_2300; field_9952 selector + m (Lnet/minecraft/class_2300;)V + p 1 selector +c net/minecraft/class_2233$class_2234 net/minecraft/command/argument/ScoreHolderArgumentType$ScoreHolders + m (Lnet/minecraft/class_2168;Ljava/util/function/Supplier;)Ljava/util/Collection; getNames getNames + p 1 source + p 2 holders +c net/minecraft/class_4894 net/minecraft/client/gui/screen/ingame/ForgingScreen + f Lnet/minecraft/class_2960; field_22794 texture + m ()V method_25445 setup + m (Lnet/minecraft/class_332;II)V method_48467 drawInvalidRecipeArrow + p 3 y + p 2 x + p 1 context + m (Lnet/minecraft/class_4861;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;Lnet/minecraft/class_2960;)V + p 2 playerInventory + p 3 title + p 1 handler + p 4 texture +c net/minecraft/class_3558 net/minecraft/world/chunk/light/ChunkLightProvider + f [Lnet/minecraft/class_8527; field_17398 cachedChunks + f Lnet/minecraft/class_2823; field_15795 chunkProvider + f [Lnet/minecraft/class_2350; field_16513 DIRECTIONS + f Lit/unimi/dsi/fastutil/longs/LongOpenHashSet; field_44733 blockPositionsToCheck + f Lnet/minecraft/class_3560; field_15793 lightStorage + f [J field_17397 cachedChunkPositions + m ()V method_17530 clearChunkCache + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_50018 getStateForLighting + p 1 pos + m (J)Lnet/minecraft/class_3560$class_8530; method_51568 getStatus + p 1 sectionPos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Lnet/minecraft/class_265; method_51562 getOpaqueShape + p 1 direction + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;I)I method_20049 getRealisticOpacity + p 3 opacity2 + p 2 direction + p 1 state2 + p 0 state1 + m (Lnet/minecraft/class_1923;Z)V method_20599 setRetainColumn + p 2 retainData + p 1 pos + m (JLnet/minecraft/class_2804;)V method_15515 enqueueSectionData + p 3 lightArray + p 1 sectionPos + m (J)Ljava/lang/String; method_22875 displaySectionLevel + p 1 sectionPos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_50016 shapesCoverFullCube + p 1 source + p 3 direction + p 2 target + m (JJ)V method_51565 queueLightDecrease + p 3 flags + p 1 blockPos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)Z method_51561 needsLightUpdate + p 0 oldState + p 1 newState + m (JJI)V method_51531 propagateLightIncrease + p 5 lightLevel + p 1 blockPos + p 3 packed + m (II)Lnet/minecraft/class_8527; method_17529 getChunk + p 2 chunkZ + p 1 chunkX + m (J)V method_51529 checkForLightUpdate + p 1 blockPos + m (Lnet/minecraft/class_2823;Lnet/minecraft/class_3560;)V + p 2 lightStorage + p 1 chunkProvider + m (Lnet/minecraft/class_2680;)I method_50017 getOpacity + p 1 state + m (JJ)V method_51530 propagateLightDecrease + p 1 blockPos + p 3 packed + m (Lnet/minecraft/class_2680;)Z method_51563 isTrivialForLighting + p 0 blockState + m (JJ)V method_51566 queueLightIncrease + p 1 blockPos + p 3 flags +c net/minecraft/class_3558$class_8531 net/minecraft/world/chunk/light/ChunkLightProvider$PackedInfo + c Methods for manipulating a set of bitflags with yet unknown functionality.\n\n

    \n
  • Bits 0 – 3 stores the light level.
  • \n
  • Bits 4 – 9 store a flag for each of the six directions.
  • \n
  • Bit 10 stores whether the block at this position is trivial for lighting — if its opacity is not directionally dependent.
  • \n
  • Bit 11 stores a flag for forcibly setting the light level.
  • \n
+ f J field_44741 TRIVIAL_FLAG + f J field_44740 DIRECTION_BIT_MASK + f J field_44739 LIGHT_LEVEL_MASK + f I field_44737 DIRECTION_BIT_OFFSET + f J field_44742 FORCE_SET_FLAG + m (IZLnet/minecraft/class_2350;)J method_51574 packWithOneDirectionCleared + p 1 trivial + p 2 direction + p 0 lightLevel + m (ZZZZZ)J method_51578 packSkyLightPropagation + p 4 east + p 3 west + p 2 south + p 1 north + p 0 down + m (IZ)J method_51573 packWithForce + p 1 trivial + p 0 lightLevel + m (ILnet/minecraft/class_2350;)J method_51572 packWithOneDirectionCleared + p 1 direction + p 0 lightLevel + m (JLnet/minecraft/class_2350;)J method_51583 clearDirectionBit + p 2 direction + p 0 packed + m (I)J method_51571 packWithAllDirectionsSet + p 0 lightLevel + m (JLnet/minecraft/class_2350;)J method_51581 setDirectionBit + p 2 direction + p 0 packed + m (J)I method_51575 getLightLevel + p 0 packed + m (JI)J method_51576 withLightLevel + p 0 packed + p 2 lightLevel + m (JLnet/minecraft/class_2350;)Z method_51577 isDirectionBitSet + p 2 direction + p 0 packed + m (J)Z method_51580 isTrivial + p 0 packed + m (IZLnet/minecraft/class_2350;)J method_51579 packWithRepropagate + p 0 lightLevel + p 1 trivial + p 2 direction + m (J)Z method_51582 forceSet + p 0 packed +c net/minecraft/class_3559 net/minecraft/datafixer/fix/BedItemColorFix +c net/minecraft/class_4889 net/minecraft/client/realms/dto/WorldDownload + f Lorg/slf4j/Logger; field_22665 LOGGER + f Ljava/lang/String; comp_5036 downloadLink + f Ljava/lang/String; comp_5037 resourcePackUrl + f Ljava/lang/String; comp_5038 resourcePackHash + m ()Ljava/lang/String; comp_5036 downloadLink + m ()Ljava/lang/String; comp_5037 resourcePackUrl + m ()Ljava/lang/String; comp_5038 resourcePackHash + m (Ljava/lang/String;)Lnet/minecraft/class_4889; method_25095 parse + p 0 json + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 downloadLink + p 2 resourcePackUrl + p 3 resourcePackHash +c net/minecraft/class_3571 net/minecraft/datafixer/fix/BlockEntityIdFix + f Ljava/util/Map; field_15824 RENAMED_BLOCK_ENTITIES + m (Ljava/util/HashMap;)V method_15575 method_15575 + p 0 map + m (Ljava/lang/String;)Ljava/lang/String; method_15577 method_15577 + p 0 oldName +c net/minecraft/class_2240 net/minecraft/command/argument/ItemSlotArgumentType + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9955 UNKNOWN_SLOT_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_49766 ONLY_SINGLE_ALLOWED_EXCEPTION + f Ljava/util/Collection; field_9956 EXAMPLES + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9472 method_9472 + p 0 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9471 method_9471 + p 0 name + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m ()Lnet/minecraft/class_2240; method_9473 itemSlot + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m (C)Z method_58129 method_58129 + p 0 c + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Integer; method_9470 parse + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)I method_9469 getItemSlot + p 0 context + p 1 name +c net/minecraft/class_2245 net/minecraft/command/argument/TimeArgumentType + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_9972 UNITS + f I field_41858 minimum + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9970 INVALID_UNIT_EXCEPTION + f Ljava/util/Collection; field_9969 EXAMPLES + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_41857 TICK_COUNT_TOO_LOW_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Integer; method_9490 parse + m ()Lnet/minecraft/class_2245; method_9489 time + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (I)Lnet/minecraft/class_2245; method_48287 time + p 0 minimum + m (I)V + p 1 minimum + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9491 method_9491 + p 1 minimum + p 0 value +c net/minecraft/class_2245$class_8033 net/minecraft/command/argument/TimeArgumentType$Serializer + m (Lnet/minecraft/class_2245$class_8033$class_8034;Lnet/minecraft/class_2540;)V method_48289 writePacket + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2245$class_8033$class_8034; method_48291 fromPacket + m (Lnet/minecraft/class_2245$class_8033$class_8034;Lcom/google/gson/JsonObject;)V method_48288 writeJson + m (Lnet/minecraft/class_2245;)Lnet/minecraft/class_2245$class_8033$class_8034; method_48290 getArgumentTypeProperties +c net/minecraft/class_2245$class_8033$class_8034 net/minecraft/command/argument/TimeArgumentType$Serializer$Properties + f I field_41860 minimum + m (Lnet/minecraft/class_2245$class_8033;I)V + p 2 minimum + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_2245; method_48292 createType +c net/minecraft/class_3576 net/minecraft/fluid/EmptyFluid +c net/minecraft/class_2246 net/minecraft/block/Blocks + c Contains all the minecraft blocks. + f Lnet/minecraft/class_2248; field_23985 IRON_CHAIN + f Lnet/minecraft/class_2248; field_46283 MELON + f Lnet/minecraft/class_2248; field_46284 ATTACHED_PUMPKIN_STEM + f Lnet/minecraft/class_2248; field_46282 PUMPKIN + f Lnet/minecraft/class_4970$class_4973; field_53979 PISTON_SUFFOCATES_PREDICATE + f Lnet/minecraft/class_2248; field_46287 MELON_STEM + f Lnet/minecraft/class_2248; field_46285 ATTACHED_MELON_STEM + f Lnet/minecraft/class_2248; field_46286 PUMPKIN_STEM + f Lnet/minecraft/class_11710; field_61904 COPPER_BARS + f Lnet/minecraft/class_4970$class_4973; field_46288 SHULKER_BOX_SUFFOCATES_PREDICATE + f Lnet/minecraft/class_11710; field_61905 COPPER_CHAINS + f Lnet/minecraft/class_11710; field_61906 COPPER_LANTERNS + f Lnet/minecraft/class_2248; field_10452 LIGHT_BLUE_BANNER + f Lnet/minecraft/class_2248; field_10586 POTTED_BAMBOO + f Lnet/minecraft/class_2248; field_10453 IRON_TRAPDOOR + f Lnet/minecraft/class_2248; field_10584 TUBE_CORAL_WALL_FAN + f Lnet/minecraft/class_2248; field_10451 QUARTZ_STAIRS + f Lnet/minecraft/class_2248; field_10585 MAGENTA_CONCRETE + f Lnet/minecraft/class_2248; field_10583 SUNFLOWER + f Lnet/minecraft/class_2248; field_10450 REPEATER + f Lnet/minecraft/class_2248; field_10582 HEAVY_WEIGHTED_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_10581 ZOMBIE_WALL_HEAD + f Lnet/minecraft/class_2248; field_10580 BROWN_MUSHROOM_BLOCK + f Lnet/minecraft/class_2248; field_10316 NETHER_PORTAL + f Lnet/minecraft/class_2248; field_10449 POPPY + f Lnet/minecraft/class_2248; field_10315 PINK_TULIP + f Lnet/minecraft/class_2248; field_10448 DEAD_TUBE_CORAL_FAN + f Lnet/minecraft/class_2248; field_10314 RED_WOOL + f Lnet/minecraft/class_2248; field_16541 LANTERN + f Lnet/minecraft/class_2248; field_10447 BUBBLE_CORAL_WALL_FAN + f Lnet/minecraft/class_2248; field_10579 DEAD_FIRE_CORAL + f Lnet/minecraft/class_2248; field_10446 WHITE_WOOL + f Lnet/minecraft/class_2248; field_10313 LARGE_FERN + f Lnet/minecraft/class_2248; field_16540 JIGSAW + f Lnet/minecraft/class_2248; field_10445 COBBLESTONE + f Lnet/minecraft/class_2248; field_10312 HOPPER + f Lnet/minecraft/class_2248; field_10578 YELLOW_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_10577 POTTED_BIRCH_SAPLING + f Lnet/minecraft/class_2248; field_10444 PINK_TERRACOTTA + f Lnet/minecraft/class_2248; field_10311 RED_NETHER_BRICK_WALL + f Lnet/minecraft/class_2248; field_55059 RESIN_CLUMP + f Lnet/minecraft/class_2248; field_61903 COPPER_WALL_TORCH + f Lnet/minecraft/class_2248; field_10576 IRON_BARS + f Lnet/minecraft/class_2248; field_10443 ENDER_CHEST + f Lnet/minecraft/class_2248; field_10310 POLISHED_DIORITE_STAIRS + f Lnet/minecraft/class_2248; field_55058 CHISELED_RESIN_BRICKS + f Lnet/minecraft/class_2248; field_10441 LAPIS_BLOCK + f Lnet/minecraft/class_2248; field_61902 COPPER_TORCH + f Lnet/minecraft/class_2248; field_10575 BIRCH_SAPLING + f Lnet/minecraft/class_2248; field_10442 DIAMOND_ORE + f Lnet/minecraft/class_2248; field_55057 RESIN_BRICK_WALL + f Lnet/minecraft/class_2248; field_55056 RESIN_BRICK_SLAB + f Lnet/minecraft/class_2248; field_55055 RESIN_BRICK_STAIRS + f Lnet/minecraft/class_2248; field_55054 RESIN_BRICKS + f Lnet/minecraft/class_2248; field_55053 RESIN_BLOCK + f Lnet/minecraft/class_2248; field_10319 JUNGLE_FENCE + f Lnet/minecraft/class_2248; field_10318 LIME_WALL_BANNER + f Lnet/minecraft/class_2248; field_10317 PINK_STAINED_GLASS + f Lnet/minecraft/class_2248; field_28674 FLOWERING_AZALEA_LEAVES + f Lnet/minecraft/class_2248; field_28675 CAVE_VINES + f Lnet/minecraft/class_2248; field_28676 CAVE_VINES_PLANT + f Lnet/minecraft/class_2248; field_28677 SPORE_BLOSSOM + f Lnet/minecraft/class_2248; field_28411 GLOW_LICHEN + f Lnet/minecraft/class_2248; field_28678 AZALEA + f Lnet/minecraft/class_2248; field_28679 FLOWERING_AZALEA + f Lnet/minecraft/class_2248; field_10573 AZURE_BLUET + f Lnet/minecraft/class_2248; field_10440 STONE_STAIRS + f Lnet/minecraft/class_2248; field_10574 MAGENTA_STAINED_GLASS + f Lnet/minecraft/class_2248; field_10572 DEAD_BRAIN_CORAL + f Lnet/minecraft/class_2248; field_10571 GOLD_ORE + f Lnet/minecraft/class_2248; field_10570 PURPLE_TERRACOTTA + f Lnet/minecraft/class_2248; field_28673 AZALEA_LEAVES + f Lnet/minecraft/class_2248; field_10304 POTTED_JUNGLE_SAPLING + f Lnet/minecraft/class_2248; field_10437 QUARTZ_PILLAR + f Lnet/minecraft/class_2248; field_10303 JUNGLE_WOOD + f Lnet/minecraft/class_2248; field_10569 SPRUCE_STAIRS + f Lnet/minecraft/class_2248; field_10436 STRIPPED_SPRUCE_LOG + f Lnet/minecraft/class_2248; field_10568 DEAD_FIRE_CORAL_FAN + f Lnet/minecraft/class_2248; field_10302 COCOA + f Lnet/minecraft/class_2248; field_10435 POLISHED_GRANITE_STAIRS + f Lnet/minecraft/class_2248; field_10434 PINK_CONCRETE + f Lnet/minecraft/class_2248; field_10301 REDSTONE_WALL_TORCH + f Lnet/minecraft/class_2248; field_10567 PINK_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_10566 DIRT + f Lnet/minecraft/class_2248; field_10433 CYAN_CARPET + f Lnet/minecraft/class_2248; field_10300 MAGENTA_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_10565 PINK_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_10432 PLAYER_HEAD + f Lnet/minecraft/class_2248; field_10430 ROSE_BUSH + f Lnet/minecraft/class_2248; field_10564 POTTED_ACACIA_SAPLING + f Lnet/minecraft/class_2248; field_10431 OAK_LOG + f Lnet/minecraft/class_2248; field_10562 WET_SPONGE + f Lnet/minecraft/class_2248; field_10563 OAK_STAIRS + f Lnet/minecraft/class_2248; field_46797 CRAFTER + f Lnet/minecraft/class_2248; field_10309 TUBE_CORAL_BLOCK + f Lnet/minecraft/class_2248; field_10308 CYAN_CONCRETE + f Lnet/minecraft/class_2248; field_10307 BIRCH_WOOD + f Lnet/minecraft/class_2248; field_10439 BROWN_CONCRETE + f Lnet/minecraft/class_2248; field_10306 JUNGLE_LOG + f Lnet/minecraft/class_2248; field_10305 LIME_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_10438 MAGENTA_BANNER + f Lnet/minecraft/class_2248; field_28686 HANGING_ROOTS + f Lnet/minecraft/class_2248; field_10561 GREEN_BED + f Lnet/minecraft/class_2248; field_10560 PISTON + f Lnet/minecraft/class_2248; field_28680 MOSS_CARPET + f Lnet/minecraft/class_2248; field_28681 MOSS_BLOCK + f Lnet/minecraft/class_2248; field_28682 BIG_DRIPLEAF + f Lnet/minecraft/class_2248; field_28683 BIG_DRIPLEAF_STEM + f Lnet/minecraft/class_2248; field_28684 SMALL_DRIPLEAF + f Lnet/minecraft/class_2248; field_28685 ROOTED_DIRT + f Lnet/minecraft/class_2248; field_42731 CHERRY_LEAVES + f Lnet/minecraft/class_2248; field_10558 STRIPPED_SPRUCE_WOOD + f Lnet/minecraft/class_2248; field_10425 POWERED_RAIL + f Lnet/minecraft/class_2248; field_42730 STRIPPED_CHERRY_WOOD + f Lnet/minecraft/class_2248; field_10557 DEAD_FIRE_CORAL_WALL_FAN + f Lnet/minecraft/class_2248; field_10424 SUGAR_CANE + f Lnet/minecraft/class_2248; field_10423 GRAY_WOOL + f Lnet/minecraft/class_2248; field_42733 CHERRY_WOOD + f Lnet/minecraft/class_2248; field_10556 MUSHROOM_STEM + f Lnet/minecraft/class_2248; field_10555 GRAY_STAINED_GLASS + f Lnet/minecraft/class_2248; field_10422 BUBBLE_COLUMN + f Lnet/minecraft/class_2248; field_42732 STRIPPED_CHERRY_LOG + f Lnet/minecraft/class_2248; field_42735 CHERRY_SIGN + f Lnet/minecraft/class_2248; field_10554 OXEYE_DAISY + f Lnet/minecraft/class_2248; field_10421 LIME_CONCRETE + f Lnet/minecraft/class_2248; field_54719 PALE_OAK_WALL_HANGING_SIGN + f Lnet/minecraft/class_2248; field_42734 TORCHFLOWER + f Lnet/minecraft/class_2248; field_10553 JUNGLE_BUTTON + f Lnet/minecraft/class_2248; field_10420 RED_SANDSTONE_STAIRS + f Lnet/minecraft/class_2248; field_54718 PALE_OAK_SIGN + f Lnet/minecraft/class_2248; field_10551 FIRE_CORAL_FAN + f Lnet/minecraft/class_2248; field_42737 CHERRY_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_10552 CHISELED_STONE_BRICKS + f Lnet/minecraft/class_2248; field_54717 CREAKING_HEART + f Lnet/minecraft/class_2248; field_10550 BLUE_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_42736 CHERRY_WALL_SIGN + f Lnet/minecraft/class_2248; field_54716 STRIPPED_PALE_OAK_LOG + f Lnet/minecraft/class_2248; field_42739 CHERRY_WALL_HANGING_SIGN + f Lnet/minecraft/class_2248; field_54715 PALE_OAK_LOG + f Lnet/minecraft/class_2248; field_42738 CHERRY_HANGING_SIGN + f Lnet/minecraft/class_2248; field_54714 PALE_OAK_LEAVES + f Lnet/minecraft/class_2248; field_54713 STRIPPED_PALE_OAK_WOOD + f Lnet/minecraft/class_2248; field_54712 PALE_OAK_SAPLING + f Lnet/minecraft/class_2248; field_10429 DAYLIGHT_DETECTOR + f Lnet/minecraft/class_2248; field_10428 DEAD_BUSH + f Lnet/minecraft/class_2248; field_10427 BUBBLE_CORAL_FAN + f Lnet/minecraft/class_2248; field_10559 RED_MUSHROOM + f Lnet/minecraft/class_2248; field_10426 PURPLE_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_55060 OPEN_EYEBLOSSOM + f Lnet/minecraft/class_2248; field_27100 WHITE_CANDLE + f Lnet/minecraft/class_2248; field_27109 CYAN_CANDLE + f Lnet/minecraft/class_2248; field_27108 LIGHT_GRAY_CANDLE + f Lnet/minecraft/class_2248; field_27107 GRAY_CANDLE + f Lnet/minecraft/class_2248; field_27106 PINK_CANDLE + f Lnet/minecraft/class_2248; field_27105 LIME_CANDLE + f Lnet/minecraft/class_2248; field_27104 YELLOW_CANDLE + f Lnet/minecraft/class_2248; field_27103 LIGHT_BLUE_CANDLE + f Lnet/minecraft/class_2248; field_27102 MAGENTA_CANDLE + f Lnet/minecraft/class_2248; field_27101 ORANGE_CANDLE + f Lnet/minecraft/class_2248; field_10546 ACTIVATOR_RAIL + f Lnet/minecraft/class_2248; field_10413 RED_SANDSTONE_WALL + f Lnet/minecraft/class_2248; field_10412 POLISHED_DIORITE_SLAB + f Lnet/minecraft/class_2248; field_10544 JUNGLE_SIGN + f Lnet/minecraft/class_2248; field_10411 SPRUCE_SIGN + f Lnet/minecraft/class_2248; field_10543 CAVE_AIR + f Lnet/minecraft/class_2248; field_10410 ORANGE_BED + f Lnet/minecraft/class_2248; field_10542 YELLOW_CONCRETE + f Lnet/minecraft/class_2248; field_10540 OBSIDIAN + f Lnet/minecraft/class_2248; field_10541 NETHER_WART_BLOCK + f Lnet/minecraft/class_2248; field_42727 CHERRY_SAPLING + f Lnet/minecraft/class_2248; field_10419 GREEN_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_42729 CHERRY_LOG + f Lnet/minecraft/class_2248; field_10418 COAL_ORE + f Lnet/minecraft/class_2248; field_42728 SUSPICIOUS_SAND + f Lnet/minecraft/class_2248; field_10417 BIRCH_BUTTON + f Lnet/minecraft/class_2248; field_10549 SMOOTH_SANDSTONE_STAIRS + f Lnet/minecraft/class_2248; field_55063 POTTED_CLOSED_EYEBLOSSOM + f Lnet/minecraft/class_2248; field_10416 CRACKED_STONE_BRICKS + f Lnet/minecraft/class_2248; field_55062 POTTED_OPEN_EYEBLOSSOM + f Lnet/minecraft/class_2248; field_10548 LILY_OF_THE_VALLEY + f Lnet/minecraft/class_2248; field_10415 TERRACOTTA + f Lnet/minecraft/class_2248; field_55061 CLOSED_EYEBLOSSOM + f Lnet/minecraft/class_2248; field_10547 YELLOW_BANNER + f Lnet/minecraft/class_2248; field_10414 DAMAGED_ANVIL + f Lnet/minecraft/class_2248; field_54732 PALE_MOSS_CARPET + f Lnet/minecraft/class_2248; field_27112 BROWN_CANDLE + f Lnet/minecraft/class_2248; field_54731 PALE_MOSS_BLOCK + f Lnet/minecraft/class_2248; field_27111 BLUE_CANDLE + f Lnet/minecraft/class_2248; field_54730 PALE_OAK_FENCE_GATE + f Lnet/minecraft/class_2248; field_27110 PURPLE_CANDLE + f Lnet/minecraft/class_2248; field_27119 COPPER_BLOCK + f Lnet/minecraft/class_2248; field_27118 EXPOSED_COPPER + f Lnet/minecraft/class_2248; field_27117 WEATHERED_COPPER + f Lnet/minecraft/class_2248; field_27116 OXIDIZED_COPPER + f Lnet/minecraft/class_2248; field_42751 CHERRY_PLANKS + f Lnet/minecraft/class_2248; field_27115 TINTED_GLASS + f Lnet/minecraft/class_2248; field_42750 PINK_PETALS + f Lnet/minecraft/class_2248; field_27114 CALCITE + f Lnet/minecraft/class_2248; field_42752 DECORATED_POT + f Lnet/minecraft/class_2248; field_27113 GREEN_CANDLE + f Lnet/minecraft/class_2248; field_10401 ACACIA_WALL_SIGN + f Lnet/minecraft/class_2248; field_10534 RED_SAND + f Lnet/minecraft/class_2248; field_10533 ACACIA_LOG + f Lnet/minecraft/class_2248; field_10400 POTTED_WHITE_TULIP + f Lnet/minecraft/class_2248; field_10532 CYAN_SHULKER_BOX + f Lnet/minecraft/class_2248; field_10531 PINK_WALL_BANNER + f Lnet/minecraft/class_2248; field_10530 PRISMARINE_WALL + f Lnet/minecraft/class_2248; field_10409 BLUE_TERRACOTTA + f Lnet/minecraft/class_2248; field_10408 BIRCH_STAIRS + f Lnet/minecraft/class_2248; field_10407 ORANGE_SHULKER_BOX + f Lnet/minecraft/class_2248; field_48851 VAULT + f Lnet/minecraft/class_2248; field_10539 BIRCH_LEAVES + f Lnet/minecraft/class_2248; field_10406 RED_BANNER + f Lnet/minecraft/class_2248; field_10538 MAGENTA_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_10405 MOSSY_COBBLESTONE_SLAB + f Lnet/minecraft/class_2248; field_54735 PALE_OAK_PLANKS + f Lnet/minecraft/class_2248; field_10537 BLACK_WALL_BANNER + f Lnet/minecraft/class_2248; field_10404 PURPLE_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_54734 PALE_OAK_WOOD + f Lnet/minecraft/class_2248; field_10536 RED_CARPET + f Lnet/minecraft/class_2248; field_10403 DARK_OAK_DOOR + f Lnet/minecraft/class_2248; field_54733 PALE_HANGING_MOSS + f Lnet/minecraft/class_2248; field_10535 ANVIL + f Lnet/minecraft/class_2248; field_10402 MYCELIUM + f Lnet/minecraft/class_2248; field_54720 PALE_OAK_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_27124 CUT_COPPER + f Lnet/minecraft/class_2248; field_27123 EXPOSED_CUT_COPPER + f Lnet/minecraft/class_2248; field_27122 WEATHERED_CUT_COPPER + f Lnet/minecraft/class_2248; field_27121 OXIDIZED_CUT_COPPER + f Lnet/minecraft/class_2248; field_27120 COPPER_ORE + f Lnet/minecraft/class_2248; field_59752 DRIED_GHAST + f Lnet/minecraft/class_2248; field_27129 OXIDIZED_CUT_COPPER_SLAB + f Lnet/minecraft/class_2248; field_27128 CUT_COPPER_STAIRS + f Lnet/minecraft/class_2248; field_27127 EXPOSED_CUT_COPPER_STAIRS + f Lnet/minecraft/class_2248; field_27126 WEATHERED_CUT_COPPER_STAIRS + f Lnet/minecraft/class_2248; field_42741 POTTED_TORCHFLOWER + f Lnet/minecraft/class_2248; field_27125 OXIDIZED_CUT_COPPER_STAIRS + f Lnet/minecraft/class_2248; field_42740 CHERRY_TRAPDOOR + f Lnet/minecraft/class_2248; field_10522 PINK_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_42743 CHERRY_BUTTON + f Lnet/minecraft/class_2248; field_10521 SPRUCE_DOOR + f Lnet/minecraft/class_2248; field_42742 POTTED_CHERRY_SAPLING + f Lnet/minecraft/class_2248; field_42745 CHERRY_FENCE_GATE + f Lnet/minecraft/class_2248; field_10520 PODZOL + f Lnet/minecraft/class_2248; field_42744 CHERRY_STAIRS + f Lnet/minecraft/class_2248; field_42747 CHERRY_FENCE + f Lnet/minecraft/class_2248; field_42746 CHERRY_SLAB + f Lnet/minecraft/class_2248; field_42749 TORCHFLOWER_CROP + f Lnet/minecraft/class_2248; field_54729 PALE_OAK_DOOR + f Lnet/minecraft/class_2248; field_42748 CHERRY_DOOR + f Lnet/minecraft/class_2248; field_54728 PALE_OAK_FENCE + f Lnet/minecraft/class_2248; field_22103 WARPED_DOOR + f Lnet/minecraft/class_2248; field_54727 PALE_OAK_SLAB + f Lnet/minecraft/class_2248; field_22102 CRIMSON_DOOR + f Lnet/minecraft/class_2248; field_10529 GREEN_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_22101 WARPED_BUTTON + f Lnet/minecraft/class_2248; field_54726 PALE_OAK_STAIRS + f Lnet/minecraft/class_2248; field_22105 WARPED_SIGN + f Lnet/minecraft/class_2248; field_10528 CHORUS_FLOWER + f Lnet/minecraft/class_2248; field_54725 POTTED_PALE_OAK_SAPLING + f Lnet/minecraft/class_2248; field_22104 CRIMSON_SIGN + f Lnet/minecraft/class_2248; field_10527 BLUE_BED + f Lnet/minecraft/class_2248; field_54724 PALE_OAK_BUTTON + f Lnet/minecraft/class_2248; field_10526 GREEN_TERRACOTTA + f Lnet/minecraft/class_2248; field_54723 PALE_OAK_TRAPDOOR + f Lnet/minecraft/class_2248; field_10525 COMMAND_BLOCK + f Lnet/minecraft/class_2248; field_54722 PALE_OAK_HANGING_SIGN + f Lnet/minecraft/class_2248; field_22100 CRIMSON_BUTTON + f Lnet/minecraft/class_2248; field_10524 REDSTONE_LAMP + f Lnet/minecraft/class_2248; field_54721 PALE_OAK_WALL_SIGN + f Lnet/minecraft/class_2248; field_10523 REDSTONE_TORCH + f Lnet/minecraft/class_2248; field_27136 WAXED_WEATHERED_CUT_COPPER + f Lnet/minecraft/class_2248; field_27135 WAXED_EXPOSED_COPPER + f Lnet/minecraft/class_2248; field_27134 WAXED_WEATHERED_COPPER + f Lnet/minecraft/class_2248; field_27133 WAXED_COPPER_BLOCK + f Lnet/minecraft/class_2248; field_22107 WARPED_WALL_SIGN + f Lnet/minecraft/class_2248; field_27132 CUT_COPPER_SLAB + f Lnet/minecraft/class_2248; field_22106 CRIMSON_WALL_SIGN + f Lnet/minecraft/class_2248; field_27131 EXPOSED_CUT_COPPER_SLAB + f Lnet/minecraft/class_2248; field_22109 ANCIENT_DEBRIS + f Lnet/minecraft/class_2248; field_27130 WEATHERED_CUT_COPPER_SLAB + f Lnet/minecraft/class_2248; field_22108 NETHERITE_BLOCK + f Lnet/minecraft/class_2248; field_10519 STRIPPED_OAK_LOG + f Lnet/minecraft/class_2248; field_27139 WAXED_WEATHERED_CUT_COPPER_STAIRS + f Lnet/minecraft/class_2248; field_27138 WAXED_CUT_COPPER + f Lnet/minecraft/class_2248; field_27137 WAXED_EXPOSED_CUT_COPPER + f Lnet/minecraft/class_2248; field_10510 PURPLE_CARPET + f Lnet/minecraft/class_2248; field_22115 WARPED_WART_BLOCK + f Lnet/minecraft/class_2248; field_27140 RED_CANDLE + f Lnet/minecraft/class_2248; field_10518 CUT_RED_SANDSTONE + f Lnet/minecraft/class_2248; field_22114 WARPED_FUNGUS + f Lnet/minecraft/class_2248; field_10517 DIORITE_WALL + f Lnet/minecraft/class_2248; field_22117 NETHER_SPROUTS + f Lnet/minecraft/class_2248; field_10516 FIRE_CORAL_BLOCK + f Lnet/minecraft/class_2248; field_22116 WARPED_ROOTS + f Lnet/minecraft/class_2248; field_10515 NETHERRACK + f Lnet/minecraft/class_2248; field_22110 SOUL_LANTERN + f Lnet/minecraft/class_2248; field_10514 BLUE_WOOL + f Lnet/minecraft/class_2248; field_10513 BIRCH_FENCE_GATE + f Lnet/minecraft/class_2248; field_22113 WARPED_NYLIUM + f Lnet/minecraft/class_2248; field_22112 STRIPPED_WARPED_STEM + f Lnet/minecraft/class_2248; field_10512 YELLOW_CARPET + f Lnet/minecraft/class_2248; field_22111 WARPED_STEM + f Lnet/minecraft/class_2248; field_10511 BIRCH_LOG + f Lnet/minecraft/class_2248; field_27148 LIME_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_27147 YELLOW_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_27146 LIGHT_BLUE_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_27145 MAGENTA_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_22119 STRIPPED_CRIMSON_STEM + f Lnet/minecraft/class_2248; field_27144 ORANGE_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_22118 CRIMSON_STEM + f Lnet/minecraft/class_2248; field_10509 CREEPER_WALL_HEAD + f Lnet/minecraft/class_2248; field_27143 WHITE_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_10508 DIORITE + f Lnet/minecraft/class_2248; field_27142 CANDLE_CAKE + f Lnet/minecraft/class_2248; field_10507 DIORITE_SLAB + f Lnet/minecraft/class_2248; field_27141 BLACK_CANDLE + f Lnet/minecraft/class_2248; field_16999 SWEET_BERRY_BUSH + f Lnet/minecraft/class_2248; field_27149 PINK_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_10630 SANDSTONE_WALL + f Lnet/minecraft/class_2248; field_22120 CRIMSON_NYLIUM + f Lnet/minecraft/class_2248; field_41305 PIGLIN_HEAD + f Lnet/minecraft/class_2248; field_41306 PIGLIN_WALL_HEAD + f Lnet/minecraft/class_2248; field_22127 WARPED_PLANKS + f Lnet/minecraft/class_2248; field_10506 BLACK_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_27152 CYAN_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_22126 CRIMSON_PLANKS + f Lnet/minecraft/class_2248; field_27151 LIGHT_GRAY_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_10505 PURPUR_PILLAR + f Lnet/minecraft/class_2248; field_22129 WARPED_SLAB + f Lnet/minecraft/class_2248; field_27150 GRAY_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_10504 BOOKSHELF + f Lnet/minecraft/class_2248; field_22128 CRIMSON_SLAB + f Lnet/minecraft/class_2248; field_10503 OAK_LEAVES + f Lnet/minecraft/class_2248; field_22122 SHROOMLIGHT + f Lnet/minecraft/class_2248; field_10502 CONDUIT + f Lnet/minecraft/class_2248; field_22121 CRIMSON_FUNGUS + f Lnet/minecraft/class_2248; field_10501 BLACK_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_22125 CRIMSON_ROOTS + f Lnet/minecraft/class_2248; field_10500 DARK_OAK_SLAB + f Lnet/minecraft/class_2248; field_22124 WEEPING_VINES_PLANT + f Lnet/minecraft/class_2248; field_22123 WEEPING_VINES + f Lnet/minecraft/class_2248; field_10141 GRAY_BED + f Lnet/minecraft/class_2248; field_10274 MAGENTA_WALL_BANNER + f Lnet/minecraft/class_2248; field_47073 EXPOSED_COPPER_BULB + f Lnet/minecraft/class_2248; field_10273 POTTED_LILY_OF_THE_VALLEY + f Lnet/minecraft/class_2248; field_10140 GRAY_SHULKER_BOX + f Lnet/minecraft/class_2248; field_47072 COPPER_BULB + f Lnet/minecraft/class_2248; field_10272 RED_STAINED_GLASS + f Lnet/minecraft/class_2248; field_47071 WAXED_OXIDIZED_COPPER_GRATE + f Lnet/minecraft/class_2248; field_10271 LIGHT_BLUE_STAINED_GLASS + f Lnet/minecraft/class_2248; field_47070 WAXED_WEATHERED_COPPER_GRATE + f Lnet/minecraft/class_2248; field_10270 RED_TULIP + f Lnet/minecraft/class_2248; field_47077 WAXED_EXPOSED_COPPER_BULB + f Lnet/minecraft/class_2248; field_47076 WAXED_COPPER_BULB + f Lnet/minecraft/class_2248; field_47075 OXIDIZED_COPPER_BULB + f Lnet/minecraft/class_2248; field_47074 WEATHERED_COPPER_BULB + f Lnet/minecraft/class_2248; field_61379 WAXED_WEATHERED_COPPER_GOLEM_STATUE + f Lnet/minecraft/class_2248; field_10017 JUNGLE_TRAPDOOR + f Lnet/minecraft/class_2248; field_61378 WAXED_EXPOSED_COPPER_GOLEM_STATUE + f Lnet/minecraft/class_2248; field_10149 OAK_DOOR + f Lnet/minecraft/class_2248; field_10016 ANDESITE_SLAB + f Lnet/minecraft/class_2248; field_61377 BIRCH_SHELF + f Lnet/minecraft/class_2248; field_47079 WAXED_OXIDIZED_COPPER_BULB + f Lnet/minecraft/class_2248; field_10148 BIRCH_PLANKS + f Lnet/minecraft/class_2248; field_10015 MAGENTA_TERRACOTTA + f Lnet/minecraft/class_2248; field_61376 BAMBOO_SHELF + f Lnet/minecraft/class_2248; field_47078 WAXED_WEATHERED_COPPER_BULB + f Lnet/minecraft/class_2248; field_10014 LIME_TERRACOTTA + f Lnet/minecraft/class_2248; field_10147 CARVED_PUMPKIN + f Lnet/minecraft/class_2248; field_10012 END_STONE_BRICK_STAIRS + f Lnet/minecraft/class_2248; field_56562 SHORT_DRY_GRASS + f Lnet/minecraft/class_2248; field_10146 BLACK_WOOL + f Lnet/minecraft/class_2248; field_10013 EMERALD_ORE + f Lnet/minecraft/class_2248; field_10279 RED_WALL_BANNER + f Lnet/minecraft/class_2248; field_10144 ACACIA_FENCE + f Lnet/minecraft/class_2248; field_10011 BLUE_CONCRETE + f Lnet/minecraft/class_2248; field_56563 TALL_DRY_GRASS + f Lnet/minecraft/class_2248; field_10278 ACACIA_BUTTON + f Lnet/minecraft/class_2248; field_10145 YELLOW_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_10010 DARK_OAK_LOG + f Lnet/minecraft/class_2248; field_10276 JUNGLE_SAPLING + f Lnet/minecraft/class_2248; field_10143 YELLOW_TERRACOTTA + f Lnet/minecraft/class_2248; field_56564 CACTUS_FLOWER + f Lnet/minecraft/class_2248; field_10277 INFESTED_STONE + f Lnet/minecraft/class_2248; field_10142 SANDSTONE_STAIRS + f Lnet/minecraft/class_2248; field_10275 LIME_SHULKER_BOX + f Lnet/minecraft/class_2248; field_61370 MANGROVE_SHELF + f Lnet/minecraft/class_2248; field_61375 ACACIA_SHELF + f Lnet/minecraft/class_2248; field_10009 JACK_O_LANTERN + f Lnet/minecraft/class_2248; field_61374 WARPED_SHELF + f Lnet/minecraft/class_2248; field_10008 MOVING_PISTON + f Lnet/minecraft/class_2248; field_61373 SPRUCE_SHELF + f Lnet/minecraft/class_2248; field_10007 SANDSTONE_SLAB + f Lnet/minecraft/class_2248; field_61372 PALE_OAK_SHELF + f Lnet/minecraft/class_2248; field_10139 YELLOW_WALL_BANNER + f Lnet/minecraft/class_2248; field_10006 PRISMARINE_BRICKS + f Lnet/minecraft/class_2248; field_61371 OAK_SHELF + f Lnet/minecraft/class_2248; field_38420 REINFORCED_DEEPSLATE + f Lnet/minecraft/class_2248; field_18891 CUT_RED_SANDSTONE_SLAB + f Lnet/minecraft/class_2248; field_18890 CUT_SANDSTONE_SLAB + f Lnet/minecraft/class_2248; field_17563 COMPOSTER + f Lnet/minecraft/class_2248; field_10262 SMOOTH_SANDSTONE_SLAB + f Lnet/minecraft/class_2248; field_10395 CHAIN_COMMAND_BLOCK + f Lnet/minecraft/class_2248; field_47061 WAXED_CHISELED_COPPER + f Lnet/minecraft/class_2248; field_10394 OAK_SAPLING + f Lnet/minecraft/class_2248; field_47060 WAXED_EXPOSED_CHISELED_COPPER + f Lnet/minecraft/class_2248; field_10260 SPAWNER + f Lnet/minecraft/class_2248; field_10393 PINK_CARPET + f Lnet/minecraft/class_2248; field_10392 STONE_BRICK_STAIRS + f Lnet/minecraft/class_2248; field_10391 BIRCH_WALL_SIGN + f Lnet/minecraft/class_2248; field_47065 EXPOSED_COPPER_GRATE + f Lnet/minecraft/class_2248; field_10390 NETHER_BRICK_SLAB + f Lnet/minecraft/class_2248; field_47064 COPPER_GRATE + f Lnet/minecraft/class_2248; field_47063 WAXED_WEATHERED_COPPER_TRAPDOOR + f Lnet/minecraft/class_2248; field_16492 SCAFFOLDING + f Lnet/minecraft/class_2248; field_47062 WAXED_OXIDIZED_COPPER_TRAPDOOR + f Lnet/minecraft/class_2248; field_47069 WAXED_EXPOSED_COPPER_GRATE + f Lnet/minecraft/class_2248; field_61367 CRIMSON_SHELF + f Lnet/minecraft/class_2248; field_10138 POTTED_RED_MUSHROOM + f Lnet/minecraft/class_2248; field_10005 HORN_CORAL_FAN + f Lnet/minecraft/class_2248; field_61366 CHERRY_SHELF + f Lnet/minecraft/class_2248; field_47068 WAXED_COPPER_GRATE + f Lnet/minecraft/class_2248; field_10137 OAK_TRAPDOOR + f Lnet/minecraft/class_2248; field_10004 BROWN_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_47067 OXIDIZED_COPPER_GRATE + f Lnet/minecraft/class_2248; field_10003 PEONY + f Lnet/minecraft/class_2248; field_10136 SMOOTH_STONE_SLAB + f Lnet/minecraft/class_2248; field_10269 BRICK_WALL + f Lnet/minecraft/class_2248; field_10001 END_STONE_BRICK_WALL + f Lnet/minecraft/class_2248; field_47066 WEATHERED_COPPER_GRATE + f Lnet/minecraft/class_2248; field_10135 PRISMARINE + f Lnet/minecraft/class_2248; field_10002 REDSTONE_BLOCK + f Lnet/minecraft/class_2248; field_10268 PURPLE_SHULKER_BOX + f Lnet/minecraft/class_2248; field_10133 LIME_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_10000 BUBBLE_CORAL_BLOCK + f Lnet/minecraft/class_2248; field_10267 GRAY_WALL_BANNER + f Lnet/minecraft/class_2248; field_10134 BUBBLE_CORAL + f Lnet/minecraft/class_2248; field_10265 DARK_OAK_WALL_SIGN + f Lnet/minecraft/class_2248; field_10132 DARK_OAK_FENCE + f Lnet/minecraft/class_2248; field_10266 NETHER_BRICKS + f Lnet/minecraft/class_2248; field_10399 PURPLE_STAINED_GLASS + f Lnet/minecraft/class_2248; field_10131 STONE_BRICK_SLAB + f Lnet/minecraft/class_2248; field_10264 DEAD_BRAIN_CORAL_BLOCK + f Lnet/minecraft/class_2248; field_10397 ACACIA_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_61369 JUNGLE_SHELF + f Lnet/minecraft/class_2248; field_10398 END_PORTAL_FRAME + f Lnet/minecraft/class_2248; field_10130 DARK_PRISMARINE_STAIRS + f Lnet/minecraft/class_2248; field_10263 REPEATING_COMMAND_BLOCK + f Lnet/minecraft/class_2248; field_61368 DARK_OAK_SHELF + f Lnet/minecraft/class_2248; field_10396 DEAD_BUBBLE_CORAL_BLOCK + f Lnet/minecraft/class_2248; field_10129 LIGHT_GRAY_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_10128 POTTED_FERN + f Lnet/minecraft/class_2248; field_10127 NETHER_BRICK_WALL + f Lnet/minecraft/class_2248; field_33407 WAXED_OXIDIZED_COPPER + f Lnet/minecraft/class_2248; field_33409 WAXED_OXIDIZED_CUT_COPPER_STAIRS + f Lnet/minecraft/class_2248; field_33408 WAXED_OXIDIZED_CUT_COPPER + f Lnet/minecraft/class_2248; field_10383 RED_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_10250 STRIPPED_OAK_WOOD + f Lnet/minecraft/class_2248; field_10382 WATER + f Lnet/minecraft/class_2248; field_10381 COAL_BLOCK + f Lnet/minecraft/class_2248; field_10380 TRAPPED_CHEST + f Lnet/minecraft/class_2248; field_9986 RED_NETHER_BRICKS + f Lnet/minecraft/class_2248; field_10259 PURPLE_WOOL + f Lnet/minecraft/class_2248; field_10126 OAK_WOOD + f Lnet/minecraft/class_2248; field_22506 STRIPPED_CRIMSON_HYPHAE + f Lnet/minecraft/class_2248; field_9985 LIGHT_GRAY_BANNER + f Lnet/minecraft/class_2248; field_10258 SPONGE + f Lnet/minecraft/class_2248; field_10125 TUBE_CORAL + f Lnet/minecraft/class_2248; field_9988 SPRUCE_LEAVES + f Lnet/minecraft/class_2248; field_10124 AIR + f Lnet/minecraft/class_2248; field_10257 BIRCH_SLAB + f Lnet/minecraft/class_2248; field_10122 JUNGLE_STAIRS + f Lnet/minecraft/class_2248; field_9987 BEDROCK + f Lnet/minecraft/class_2248; field_10123 BROWN_TERRACOTTA + f Lnet/minecraft/class_2248; field_10256 ACACIA_STAIRS + f Lnet/minecraft/class_2248; field_10389 PRISMARINE_SLAB + f Lnet/minecraft/class_2248; field_10254 STRIPPED_JUNGLE_LOG + f Lnet/minecraft/class_2248; field_10121 OAK_SIGN + f Lnet/minecraft/class_2248; field_22503 WARPED_HYPHAE + f Lnet/minecraft/class_2248; field_10255 GRAVEL + f Lnet/minecraft/class_2248; field_10388 SKELETON_WALL_SKULL + f Lnet/minecraft/class_2248; field_10120 WHITE_BED + f Lnet/minecraft/class_2248; field_10253 COARSE_DIRT + f Lnet/minecraft/class_2248; field_10386 ANDESITE_STAIRS + f Lnet/minecraft/class_2248; field_56454 BUSH + f Lnet/minecraft/class_2248; field_56455 FIREFLY_BUSH + f Lnet/minecraft/class_2248; field_9989 MOSSY_COBBLESTONE + f Lnet/minecraft/class_2248; field_10387 INFESTED_STONE_BRICKS + f Lnet/minecraft/class_2248; field_10252 STONE_BRICK_WALL + f Lnet/minecraft/class_2248; field_10385 ACACIA_SAPLING + f Lnet/minecraft/class_2248; field_22505 CRIMSON_HYPHAE + f Lnet/minecraft/class_2248; field_10251 BROWN_MUSHROOM + f Lnet/minecraft/class_2248; field_10384 BLUE_ICE + f Lnet/minecraft/class_2248; field_22504 STRIPPED_WARPED_HYPHAE + f Lnet/minecraft/class_2248; field_61395 WAXED_OXIDIZED_COPPER_CHEST + f Lnet/minecraft/class_2248; field_9990 MOSSY_COBBLESTONE_WALL + f Lnet/minecraft/class_2248; field_61394 WAXED_WEATHERED_COPPER_CHEST + f Lnet/minecraft/class_2248; field_33410 WAXED_OXIDIZED_CUT_COPPER_SLAB + f Lnet/minecraft/class_2248; field_61393 WAXED_EXPOSED_COPPER_CHEST + f Lnet/minecraft/class_2248; field_9992 PURPUR_STAIRS + f Lnet/minecraft/class_2248; field_61392 WAXED_COPPER_CHEST + f Lnet/minecraft/class_2248; field_9991 WHITE_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_61391 OXIDIZED_COPPER_CHEST + f Lnet/minecraft/class_2248; field_10119 OAK_SLAB + f Lnet/minecraft/class_2248; field_61399 OXIDIZED_COPPER_GOLEM_STATUE + f Lnet/minecraft/class_2248; field_9994 POLISHED_ANDESITE_STAIRS + f Lnet/minecraft/class_2248; field_10118 RED_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_61398 WEATHERED_COPPER_GOLEM_STATUE + f Lnet/minecraft/class_2248; field_9993 KELP + f Lnet/minecraft/class_2248; field_10117 CHISELED_RED_SANDSTONE + f Lnet/minecraft/class_2248; field_61397 EXPOSED_COPPER_GOLEM_STATUE + f Lnet/minecraft/class_2248; field_9996 LIGHT_GRAY_STAINED_GLASS + f Lnet/minecraft/class_2248; field_10249 POTTED_ORANGE_TULIP + f Lnet/minecraft/class_2248; field_10116 DEAD_BRAIN_CORAL_WALL_FAN + f Lnet/minecraft/class_2248; field_61396 COPPER_GOLEM_STATUE + f Lnet/minecraft/class_2248; field_9995 CORNFLOWER + f Lnet/minecraft/class_2248; field_10248 CYAN_STAINED_GLASS + f Lnet/minecraft/class_2248; field_10115 ANDESITE + f Lnet/minecraft/class_2248; field_61390 WEATHERED_COPPER_CHEST + f Lnet/minecraft/class_2248; field_10371 BLACK_SHULKER_BOX + f Lnet/minecraft/class_2248; field_10370 BROWN_WALL_BANNER + f Lnet/minecraft/class_2248; field_9998 POTTED_WITHER_ROSE + f Lnet/minecraft/class_2248; field_10114 SOUL_SAND + f Lnet/minecraft/class_2248; field_10247 POTATOES + f Lnet/minecraft/class_2248; field_9997 BLACK_STAINED_GLASS + f Lnet/minecraft/class_2248; field_10113 BROWN_WOOL + f Lnet/minecraft/class_2248; field_10246 DARK_OAK_TRAPDOOR + f Lnet/minecraft/class_2248; field_10379 PISTON_HEAD + f Lnet/minecraft/class_2248; field_10111 DEAD_FIRE_CORAL_BLOCK + f Lnet/minecraft/class_2248; field_61389 EXPOSED_COPPER_CHEST + f Lnet/minecraft/class_2248; field_10112 FERN + f Lnet/minecraft/class_2248; field_10245 SMOOTH_QUARTZ_STAIRS + f Lnet/minecraft/class_2248; field_10378 LILAC + f Lnet/minecraft/class_2248; field_61388 COPPER_CHEST + f Lnet/minecraft/class_2248; field_10110 FROSTED_ICE + f Lnet/minecraft/class_2248; field_10243 VOID_AIR + f Lnet/minecraft/class_2248; field_9999 ACACIA_WOOD + f Lnet/minecraft/class_2248; field_10244 STRIPPED_DARK_OAK_LOG + f Lnet/minecraft/class_2248; field_10377 COMPARATOR + f Lnet/minecraft/class_2248; field_10242 LIGHT_BLUE_CONCRETE + f Lnet/minecraft/class_2248; field_10375 TNT + f Lnet/minecraft/class_2248; field_10376 SEAGRASS + f Lnet/minecraft/class_2248; field_10241 ZOMBIE_HEAD + f Lnet/minecraft/class_2248; field_10374 STRIPPED_DARK_OAK_WOOD + f Lnet/minecraft/class_2248; field_10240 RED_MUSHROOM_BLOCK + f Lnet/minecraft/class_2248; field_10373 BROWN_SHULKER_BOX + f Lnet/minecraft/class_2248; field_10372 CYAN_WALL_BANNER + f Lnet/minecraft/class_2248; field_61383 OXIDIZED_LIGHTNING_ROD + f Lnet/minecraft/class_2248; field_61382 WEATHERED_LIGHTNING_ROD + f Lnet/minecraft/class_2248; field_16333 BLAST_FURNACE + f Lnet/minecraft/class_2248; field_10109 CYAN_BED + f Lnet/minecraft/class_2248; field_61381 EXPOSED_LIGHTNING_ROD + f Lnet/minecraft/class_2248; field_16332 BELL + f Lnet/minecraft/class_2248; field_61380 WAXED_OXIDIZED_COPPER_GOLEM_STATUE + f Lnet/minecraft/class_2248; field_10108 BAMBOO_SAPLING + f Lnet/minecraft/class_2248; field_16335 STONECUTTER + f Lnet/minecraft/class_2248; field_10107 WHITE_CONCRETE + f Lnet/minecraft/class_2248; field_16334 SMOKER + f Lnet/minecraft/class_2248; field_61387 WAXED_OXIDIZED_LIGHTNING_ROD + f Lnet/minecraft/class_2248; field_10106 BLACK_CARPET + f Lnet/minecraft/class_2248; field_16337 GRINDSTONE + f Lnet/minecraft/class_2248; field_10239 DEAD_HORN_CORAL_WALL_FAN + f Lnet/minecraft/class_2248; field_61386 WAXED_WEATHERED_LIGHTNING_ROD + f Lnet/minecraft/class_2248; field_10238 TALL_SEAGRASS + f Lnet/minecraft/class_2248; field_10105 CHIPPED_ANVIL + f Lnet/minecraft/class_2248; field_16336 CARTOGRAPHY_TABLE + f Lnet/minecraft/class_2248; field_61385 WAXED_EXPOSED_LIGHTNING_ROD + f Lnet/minecraft/class_2248; field_10237 QUARTZ_SLAB + f Lnet/minecraft/class_2248; field_10104 BRICKS + f Lnet/minecraft/class_2248; field_61384 WAXED_LIGHTNING_ROD + f Lnet/minecraft/class_2248; field_10369 STRUCTURE_VOID + f Lnet/minecraft/class_2248; field_10103 STRIPPED_ACACIA_WOOD + f Lnet/minecraft/class_2248; field_10236 PRISMARINE_BRICK_SLAB + f Lnet/minecraft/class_2248; field_16331 FLETCHING_TABLE + f Lnet/minecraft/class_2248; field_16330 LECTERN + f Lnet/minecraft/class_2248; field_10492 INFESTED_COBBLESTONE + f Lnet/minecraft/class_2248; field_10491 SNOW_BLOCK + f Lnet/minecraft/class_2248; field_10490 YELLOW_WOOL + f Lnet/minecraft/class_2248; field_10102 SAND + f Lnet/minecraft/class_2248; field_10235 CYAN_TERRACOTTA + f Lnet/minecraft/class_2248; field_10368 PURPLE_BANNER + f Lnet/minecraft/class_2248; field_10100 INFESTED_CRACKED_STONE_BRICKS + f Lnet/minecraft/class_2248; field_16329 SMITHING_TABLE + f Lnet/minecraft/class_2248; field_10234 EMERALD_BLOCK + f Lnet/minecraft/class_2248; field_10101 WITHER_SKELETON_WALL_SKULL + f Lnet/minecraft/class_2248; field_10367 GREEN_CONCRETE + f Lnet/minecraft/class_2248; field_10232 ACACIA_DOOR + f Lnet/minecraft/class_2248; field_10499 BARRIER + f Lnet/minecraft/class_2248; field_10233 CYAN_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_10366 STRIPPED_BIRCH_LOG + f Lnet/minecraft/class_2248; field_10231 BIRCH_SIGN + f Lnet/minecraft/class_2248; field_10364 NETHER_BRICK_FENCE + f Lnet/minecraft/class_2248; field_10498 FIRE_CORAL_WALL_FAN + f Lnet/minecraft/class_2248; field_10365 POTTED_AZURE_BLUET + f Lnet/minecraft/class_2248; field_10230 MAGENTA_BED + f Lnet/minecraft/class_2248; field_10363 LEVER + f Lnet/minecraft/class_2248; field_10496 ORANGE_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_10497 RED_NETHER_BRICK_STAIRS + f Lnet/minecraft/class_2248; field_10362 FARMLAND + f Lnet/minecraft/class_2248; field_10495 FLOWER_POT + f Lnet/minecraft/class_2248; field_10361 CUT_SANDSTONE + f Lnet/minecraft/class_2248; field_10494 STONE_BUTTON + f Lnet/minecraft/class_2248; field_10493 DARK_OAK_BUTTON + f Lnet/minecraft/class_2248; field_10360 SMOOTH_STONE + f Lnet/minecraft/class_2248; field_10229 LIME_BANNER + f Lnet/minecraft/class_2248; field_31037 LIGHT + f Lnet/minecraft/class_2248; field_10228 DROPPER + f Lnet/minecraft/class_2248; field_10227 ORANGE_STAINED_GLASS + f Lnet/minecraft/class_2248; field_10226 ALLIUM + f Lnet/minecraft/class_2248; field_10359 HAY_BLOCK + f Lnet/minecraft/class_2248; field_16328 BARREL + f Lnet/minecraft/class_2248; field_10358 POTTED_CORNFLOWER + f Lnet/minecraft/class_2248; field_10225 PACKED_ICE + f Lnet/minecraft/class_2248; field_10224 LIGHT_WEIGHTED_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_10357 GREEN_STAINED_GLASS + f Lnet/minecraft/class_2248; field_28888 DEEPSLATE + f Lnet/minecraft/class_2248; field_28889 COBBLED_DEEPSLATE_STAIRS + f Lnet/minecraft/class_2248; field_10480 INFESTED_MOSSY_STONE_BRICKS + f Lnet/minecraft/class_2248; field_28892 POLISHED_DEEPSLATE + f Lnet/minecraft/class_2248; field_23867 CRACKED_NETHER_BRICKS + f Lnet/minecraft/class_2248; field_28893 POLISHED_DEEPSLATE_STAIRS + f Lnet/minecraft/class_2248; field_23868 QUARTZ_BRICKS + f Lnet/minecraft/class_2248; field_28894 POLISHED_DEEPSLATE_SLAB + f Lnet/minecraft/class_2248; field_23865 POLISHED_BLACKSTONE_WALL + f Lnet/minecraft/class_2248; field_28895 POLISHED_DEEPSLATE_WALL + f Lnet/minecraft/class_2248; field_23866 CHISELED_NETHER_BRICKS + f Lnet/minecraft/class_2248; field_28896 DEEPSLATE_TILES + f Lnet/minecraft/class_2248; field_23863 POLISHED_BLACKSTONE_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_28897 DEEPSLATE_TILE_STAIRS + f Lnet/minecraft/class_2248; field_23864 POLISHED_BLACKSTONE_BUTTON + f Lnet/minecraft/class_2248; field_23860 SOUL_CAMPFIRE + f Lnet/minecraft/class_2248; field_28898 DEEPSLATE_TILE_SLAB + f Lnet/minecraft/class_2248; field_23861 POLISHED_BLACKSTONE_STAIRS + f Lnet/minecraft/class_2248; field_28899 DEEPSLATE_TILE_WALL + f Lnet/minecraft/class_2248; field_23862 POLISHED_BLACKSTONE_SLAB + f Lnet/minecraft/class_2248; field_10489 ANDESITE_WALL + f Lnet/minecraft/class_2248; field_10223 JUKEBOX + f Lnet/minecraft/class_2248; field_10356 YELLOW_BED + f Lnet/minecraft/class_2248; field_10221 DEAD_HORN_CORAL_FAN + f Lnet/minecraft/class_2248; field_10488 DEAD_HORN_CORAL_BLOCK + f Lnet/minecraft/class_2248; field_10222 LIGHT_GRAY_WOOL + f Lnet/minecraft/class_2248; field_10355 CYAN_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_10220 GRAY_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_10353 GRAY_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_10487 POTTED_DEAD_BUSH + f Lnet/minecraft/class_2248; field_10354 POTTED_DANDELION + f Lnet/minecraft/class_2248; field_10352 BIRCH_DOOR + f Lnet/minecraft/class_2248; field_10485 ENCHANTING_TABLE + f Lnet/minecraft/class_2248; field_10486 BIRCH_TRAPDOOR + f Lnet/minecraft/class_2248; field_10351 COBBLESTONE_SLAB + f Lnet/minecraft/class_2248; field_10484 OAK_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_10350 PRISMARINE_STAIRS + f Lnet/minecraft/class_2248; field_10483 SMOOTH_RED_SANDSTONE + f Lnet/minecraft/class_2248; field_28890 COBBLED_DEEPSLATE_SLAB + f Lnet/minecraft/class_2248; field_10482 MAGENTA_CARPET + f Lnet/minecraft/class_2248; field_23869 BLACKSTONE + f Lnet/minecraft/class_2248; field_10481 SKELETON_SKULL + f Lnet/minecraft/class_2248; field_28891 COBBLED_DEEPSLATE_WALL + f Lnet/minecraft/class_2248; field_10219 GRASS_BLOCK + f Lnet/minecraft/class_2248; field_10218 ACACIA_PLANKS + f Lnet/minecraft/class_2248; field_10217 SPRUCE_SAPLING + f Lnet/minecraft/class_2248; field_10216 DIORITE_STAIRS + f Lnet/minecraft/class_2248; field_10349 GRAY_TERRACOTTA + f Lnet/minecraft/class_2248; field_10215 MAGENTA_WOOL + f Lnet/minecraft/class_2248; field_10348 TRIPWIRE_HOOK + f Lnet/minecraft/class_2248; field_10347 DEAD_TUBE_CORAL_WALL_FAN + f Lnet/minecraft/class_2248; field_10214 TALL_GRASS + f Lnet/minecraft/class_2248; field_10213 NETHER_QUARTZ_ORE + f Lnet/minecraft/class_2248; field_10346 POLISHED_DIORITE + f Lnet/minecraft/class_2248; field_10479 SHORT_GRASS + f Lnet/minecraft/class_2248; field_10478 RED_NETHER_BRICK_SLAB + f Lnet/minecraft/class_2248; field_10212 IRON_ORE + f Lnet/minecraft/class_2248; field_10345 LIGHT_BLUE_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_23870 BLACKSTONE_STAIRS + f Lnet/minecraft/class_2248; field_23871 BLACKSTONE_WALL + f Lnet/minecraft/class_2248; field_23879 POLISHED_BLACKSTONE_BRICK_WALL + f Lnet/minecraft/class_2248; field_23877 POLISHED_BLACKSTONE_BRICK_SLAB + f Lnet/minecraft/class_2248; field_23878 POLISHED_BLACKSTONE_BRICK_STAIRS + f Lnet/minecraft/class_2248; field_21212 HONEYCOMB_BLOCK + f Lnet/minecraft/class_2248; field_23875 CRACKED_POLISHED_BLACKSTONE_BRICKS + f Lnet/minecraft/class_2248; field_21211 HONEY_BLOCK + f Lnet/minecraft/class_2248; field_23876 CHISELED_POLISHED_BLACKSTONE + f Lnet/minecraft/class_2248; field_23872 BLACKSTONE_SLAB + f Lnet/minecraft/class_2248; field_23873 POLISHED_BLACKSTONE + f Lnet/minecraft/class_2248; field_23874 POLISHED_BLACKSTONE_BRICKS + f Lnet/minecraft/class_2248; field_10210 ORANGE_CONCRETE + f Lnet/minecraft/class_2248; field_10477 SNOW + f Lnet/minecraft/class_2248; field_10211 BAMBOO + f Lnet/minecraft/class_2248; field_10344 RED_SANDSTONE + f Lnet/minecraft/class_2248; field_10342 DRIED_KELP_BLOCK + f Lnet/minecraft/class_2248; field_10476 SEA_PICKLE + f Lnet/minecraft/class_2248; field_10343 COBWEB + f Lnet/minecraft/class_2248; field_10341 BEETROOTS + f Lnet/minecraft/class_2248; field_10474 GRANITE + f Lnet/minecraft/class_2248; field_10475 GREEN_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_10340 STONE + f Lnet/minecraft/class_2248; field_10473 BROWN_CARPET + f Lnet/minecraft/class_2248; field_10472 DRAGON_WALL_HEAD + f Lnet/minecraft/class_2248; field_10471 END_STONE + f Lnet/minecraft/class_2248; field_10470 DARK_OAK_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_10207 MOSSY_COBBLESTONE_STAIRS + f Lnet/minecraft/class_2248; field_10206 PURPLE_CONCRETE + f Lnet/minecraft/class_2248; field_10339 BRAIN_CORAL + f Lnet/minecraft/class_2248; field_10205 GOLD_BLOCK + f Lnet/minecraft/class_2248; field_10338 GREEN_CARPET + f Lnet/minecraft/class_2248; field_10204 STRIPPED_BIRCH_WOOD + f Lnet/minecraft/class_2248; field_10337 DRAGON_HEAD + f Lnet/minecraft/class_2248; field_10336 TORCH + f Lnet/minecraft/class_2248; field_10469 MAGENTA_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_10203 LIGHT_BLUE_SHULKER_BOX + f Lnet/minecraft/class_2248; field_10202 WHITE_WALL_BANNER + f Lnet/minecraft/class_2248; field_10335 JUNGLE_LEAVES + f Lnet/minecraft/class_2248; field_10468 POTTED_OAK_SAPLING + f Lnet/minecraft/class_2248; field_10467 SMOOTH_SANDSTONE + f Lnet/minecraft/class_2248; field_10201 DIAMOND_BLOCK + f Lnet/minecraft/class_2248; field_10334 JUNGLE_PLANKS + f Lnet/minecraft/class_2248; field_10599 ORANGE_WALL_BANNER + f Lnet/minecraft/class_2248; field_10466 WHITE_CARPET + f Lnet/minecraft/class_2248; field_10200 DISPENSER + f Lnet/minecraft/class_2248; field_10333 BREWING_STAND + f Lnet/minecraft/class_2248; field_23880 GILDED_BLACKSTONE + f Lnet/minecraft/class_2248; field_10209 LIGHT_GRAY_CARPET + f Lnet/minecraft/class_2248; field_10208 PLAYER_WALL_HEAD + f Lnet/minecraft/class_2248; field_22426 POTTED_CRIMSON_ROOTS + f Lnet/minecraft/class_2248; field_22425 POTTED_WARPED_FUNGUS + f Lnet/minecraft/class_2248; field_22427 POTTED_WARPED_ROOTS + f Lnet/minecraft/class_2248; field_22422 TARGET + f Lnet/minecraft/class_2248; field_22424 POTTED_CRIMSON_FUNGUS + f Lnet/minecraft/class_2248; field_22423 CRYING_OBSIDIAN + f Lnet/minecraft/class_2248; field_10598 POTTED_RED_TULIP + f Lnet/minecraft/class_2248; field_10465 STRUCTURE_BLOCK + f Lnet/minecraft/class_2248; field_10332 SPRUCE_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_10330 DARK_OAK_SIGN + f Lnet/minecraft/class_2248; field_10463 KELP_PLANT + f Lnet/minecraft/class_2248; field_10597 VINE + f Lnet/minecraft/class_2248; field_10464 HORN_CORAL_BLOCK + f Lnet/minecraft/class_2248; field_10595 WHITE_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_10462 END_STONE_BRICKS + f Lnet/minecraft/class_2248; field_10596 COBBLESTONE_STAIRS + f Lnet/minecraft/class_2248; field_10594 GREEN_WALL_BANNER + f Lnet/minecraft/class_2248; field_10461 BLACK_BED + f Lnet/minecraft/class_2248; field_10593 CAULDRON + f Lnet/minecraft/class_2248; field_10460 CLAY + f Lnet/minecraft/class_2248; field_10592 BIRCH_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_10591 GRAY_CARPET + f Lnet/minecraft/class_2248; field_10590 LIGHT_GRAY_TERRACOTTA + f Lnet/minecraft/class_2248; field_10328 RED_TERRACOTTA + f Lnet/minecraft/class_2248; field_10327 BEACON + f Lnet/minecraft/class_2248; field_10326 LIGHT_GRAY_BED + f Lnet/minecraft/class_2248; field_10459 PINK_WOOL + f Lnet/minecraft/class_2248; field_10325 LIGHT_BLUE_TERRACOTTA + f Lnet/minecraft/class_2248; field_10458 BLACK_CONCRETE + f Lnet/minecraft/class_2248; field_10324 POTTED_BROWN_MUSHROOM + f Lnet/minecraft/class_2248; field_10457 ACACIA_FENCE_GATE + f Lnet/minecraft/class_2248; field_10456 BLUE_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_10323 SPRUCE_TRAPDOOR + f Lnet/minecraft/class_2248; field_10589 TRIPWIRE + f Lnet/minecraft/class_2248; field_10588 LILY_PAD + f Lnet/minecraft/class_2248; field_10455 END_ROD + f Lnet/minecraft/class_2248; field_10322 POLISHED_ANDESITE_SLAB + f Lnet/minecraft/class_2248; field_10320 LIGHT_GRAY_SHULKER_BOX + f Lnet/minecraft/class_2248; field_10587 JUNGLE_WALL_SIGN + f Lnet/minecraft/class_2248; field_10454 STONE_SLAB + f Lnet/minecraft/class_2248; field_10321 LIGHT_BLUE_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_10329 POLISHED_GRANITE_SLAB + f Lnet/minecraft/class_2248; field_10099 WALL_TORCH + f Lnet/minecraft/class_2248; field_10098 ACACIA_LEAVES + f Lnet/minecraft/class_2248; field_10097 DEAD_BRAIN_CORAL_FAN + f Lnet/minecraft/class_2248; field_23151 POLISHED_BASALT + f Lnet/minecraft/class_2248; field_28048 POINTED_DRIPSTONE + f Lnet/minecraft/class_2248; field_23152 RESPAWN_ANCHOR + f Lnet/minecraft/class_2248; field_28049 DRIPSTONE_BLOCK + f Lnet/minecraft/class_2248; field_22089 SOUL_FIRE + f Lnet/minecraft/class_2248; field_10096 YELLOW_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_10095 ORANGE_WOOL + f Lnet/minecraft/class_2248; field_10094 DEAD_BUBBLE_CORAL_WALL_FAN + f Lnet/minecraft/class_2248; field_10093 POLISHED_ANDESITE + f Lnet/minecraft/class_2248; field_10092 MAGMA_BLOCK + f Lnet/minecraft/class_2248; field_10091 REDSTONE_WIRE + f Lnet/minecraft/class_2248; field_10090 LAPIS_ORE + f Lnet/minecraft/class_2248; field_37546 MANGROVE_ROOTS + f Lnet/minecraft/class_2248; field_37545 MANGROVE_LOG + f Lnet/minecraft/class_2248; field_37544 MANGROVE_PROPAGULE + f Lnet/minecraft/class_2248; field_37548 STRIPPED_MANGROVE_LOG + f Lnet/minecraft/class_2248; field_22091 BASALT + f Lnet/minecraft/class_2248; field_10089 BRICK_STAIRS + f Lnet/minecraft/class_2248; field_37547 MUDDY_MANGROVE_ROOTS + f Lnet/minecraft/class_2248; field_22090 SOUL_SOIL + f Lnet/minecraft/class_2248; field_10088 SPRUCE_WALL_SIGN + f Lnet/minecraft/class_2248; field_10087 WHITE_STAINED_GLASS + f Lnet/minecraft/class_2248; field_10086 BLUE_ORCHID + f Lnet/minecraft/class_2248; field_10085 IRON_BLOCK + f Lnet/minecraft/class_2248; field_22097 WARPED_FENCE_GATE + f Lnet/minecraft/class_2248; field_22096 CRIMSON_FENCE_GATE + f Lnet/minecraft/class_2248; field_22099 WARPED_STAIRS + f Lnet/minecraft/class_2248; field_22098 CRIMSON_STAIRS + f Lnet/minecraft/class_2248; field_22093 SOUL_WALL_TORCH + f Lnet/minecraft/class_2248; field_37549 MANGROVE_WOOD + f Lnet/minecraft/class_2248; field_22092 SOUL_TORCH + f Lnet/minecraft/class_2248; field_22095 WARPED_TRAPDOOR + f Lnet/minecraft/class_2248; field_22094 CRIMSON_TRAPDOOR + f Lnet/minecraft/class_2248; field_28900 DEEPSLATE_BRICKS + f Lnet/minecraft/class_2248; field_28901 DEEPSLATE_BRICK_STAIRS + f Lnet/minecraft/class_2248; field_28902 DEEPSLATE_BRICK_SLAB + f Lnet/minecraft/class_2248; field_28903 DEEPSLATE_BRICK_WALL + f Lnet/minecraft/class_2248; field_28904 CHISELED_DEEPSLATE + f Lnet/minecraft/class_2248; field_10084 STRIPPED_JUNGLE_WOOD + f Lnet/minecraft/class_2248; field_10083 LOOM + f Lnet/minecraft/class_2248; field_10082 DEAD_TUBE_CORAL + f Lnet/minecraft/class_2248; field_10081 DRAGON_EGG + f Lnet/minecraft/class_2248; field_10080 REDSTONE_ORE + f Lnet/minecraft/class_2248; field_37558 MUD_BRICK_STAIRS + f Lnet/minecraft/class_2248; field_37557 MUD_BRICKS + f Lnet/minecraft/class_2248; field_37556 PACKED_MUD + f Lnet/minecraft/class_2248; field_10078 CYAN_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_10079 BRAIN_CORAL_FAN + f Lnet/minecraft/class_2248; field_10077 GRAY_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_37559 MANGROVE_BUTTON + f Lnet/minecraft/class_2248; field_10076 POTTED_DARK_OAK_SAPLING + f Lnet/minecraft/class_2248; field_37553 MANGROVE_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_10075 DARK_OAK_PLANKS + f Lnet/minecraft/class_2248; field_37552 MANGROVE_WALL_SIGN + f Lnet/minecraft/class_2248; field_10074 POTTED_OXEYE_DAISY + f Lnet/minecraft/class_2248; field_37555 MANGROVE_TRAPDOOR + f Lnet/minecraft/class_2248; field_10073 BROWN_STAINED_GLASS + f Lnet/minecraft/class_2248; field_37554 MANGROVE_SIGN + f Lnet/minecraft/class_2248; field_10072 GRANITE_WALL + f Lnet/minecraft/class_2248; field_10071 SPRUCE_SLAB + f Lnet/minecraft/class_2248; field_10070 BLACK_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_37551 MANGROVE_LEAVES + f Lnet/minecraft/class_2248; field_37550 STRIPPED_MANGROVE_WOOD + f Lnet/minecraft/class_2248; field_10069 RED_BED + f Lnet/minecraft/class_2248; field_10067 BLUE_WALL_BANNER + f Lnet/minecraft/class_2248; field_37569 SCULK_VEIN + f Lnet/minecraft/class_2248; field_10068 RED_SHULKER_BOX + f Lnet/minecraft/class_2248; field_10066 SPRUCE_BUTTON + f Lnet/minecraft/class_2248; field_10199 WHITE_SHULKER_BOX + f Lnet/minecraft/class_2248; field_10065 MOSSY_STONE_BRICKS + f Lnet/minecraft/class_2248; field_10198 GREEN_BANNER + f Lnet/minecraft/class_2248; field_10197 WHITE_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_10064 END_STONE_BRICK_SLAB + f Lnet/minecraft/class_2248; field_37565 MANGROVE_FENCE + f Lnet/minecraft/class_2248; field_10196 DARK_OAK_FENCE_GATE + f Lnet/minecraft/class_2248; field_10063 MAGENTA_SHULKER_BOX + f Lnet/minecraft/class_2248; field_37564 MANGROVE_SLAB + f Lnet/minecraft/class_2248; field_10062 BLACK_BANNER + f Lnet/minecraft/class_2248; field_10195 TURTLE_EGG + f Lnet/minecraft/class_2248; field_37568 SCULK + f Lnet/minecraft/class_2248; field_37567 MUD_BRICK_WALL + f Lnet/minecraft/class_2248; field_10061 POTTED_PINK_TULIP + f Lnet/minecraft/class_2248; field_10194 DIRT_PATH + f Lnet/minecraft/class_2248; field_37566 MANGROVE_DOOR + f Lnet/minecraft/class_2248; field_20421 BEE_NEST + f Lnet/minecraft/class_2248; field_20422 BEEHIVE + f Lnet/minecraft/class_2248; field_29026 DEEPSLATE_GOLD_ORE + f Lnet/minecraft/class_2248; field_29027 DEEPSLATE_IRON_ORE + f Lnet/minecraft/class_2248; field_10060 BLUE_STAINED_GLASS + f Lnet/minecraft/class_2248; field_10193 LIGHT_BLUE_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_37561 MANGROVE_STAIRS + f Lnet/minecraft/class_2248; field_10192 POTTED_SPRUCE_SAPLING + f Lnet/minecraft/class_2248; field_37560 POTTED_MANGROVE_PROPAGULE + f Lnet/minecraft/class_2248; field_10191 BRICK_SLAB + f Lnet/minecraft/class_2248; field_37563 MANGROVE_FENCE_GATE + f Lnet/minecraft/class_2248; field_10190 PRISMARINE_BRICK_STAIRS + f Lnet/minecraft/class_2248; field_37562 MUD_BRICK_SLAB + f Lnet/minecraft/class_2248; field_10056 STONE_BRICKS + f Lnet/minecraft/class_2248; field_10057 OAK_BUTTON + f Lnet/minecraft/class_2248; field_10188 OAK_FENCE_GATE + f Lnet/minecraft/class_2248; field_10055 GREEN_SHULKER_BOX + f Lnet/minecraft/class_2248; field_10189 GRANITE_SLAB + f Lnet/minecraft/class_2248; field_10054 PURPLE_WALL_BANNER + f Lnet/minecraft/class_2248; field_10187 OAK_WALL_SIGN + f Lnet/minecraft/class_2248; field_10053 TUBE_CORAL_FAN + f Lnet/minecraft/class_2248; field_10186 BRAIN_CORAL_WALL_FAN + f Lnet/minecraft/class_2248; field_10185 GRAY_BANNER + f Lnet/minecraft/class_2248; field_10052 LIGHT_GRAY_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_17350 CAMPFIRE + f Lnet/minecraft/class_2248; field_37577 MANGROVE_PLANKS + f Lnet/minecraft/class_2248; field_10184 ORANGE_TERRACOTTA + f Lnet/minecraft/class_2248; field_10051 PINK_SHULKER_BOX + f Lnet/minecraft/class_2248; field_37576 MUD + f Lnet/minecraft/class_2248; field_10050 LIGHT_BLUE_WALL_BANNER + f Lnet/minecraft/class_2248; field_10183 CAKE + f Lnet/minecraft/class_2248; field_10182 DANDELION + f Lnet/minecraft/class_2248; field_47033 POLISHED_TUFF_WALL + f Lnet/minecraft/class_2248; field_29028 DEEPSLATE_LAPIS_ORE + f Lnet/minecraft/class_2248; field_47032 POLISHED_TUFF_STAIRS + f Lnet/minecraft/class_2248; field_29029 DEEPSLATE_DIAMOND_ORE + f Lnet/minecraft/class_2248; field_47031 POLISHED_TUFF_SLAB + f Lnet/minecraft/class_2248; field_47030 POLISHED_TUFF + f Lnet/minecraft/class_2248; field_47037 TUFF_BRICK_STAIRS + f Lnet/minecraft/class_2248; field_47036 TUFF_BRICK_SLAB + f Lnet/minecraft/class_2248; field_47035 TUFF_BRICKS + f Lnet/minecraft/class_2248; field_10059 MOSSY_STONE_BRICK_WALL + f Lnet/minecraft/class_2248; field_47034 CHISELED_TUFF + f Lnet/minecraft/class_2248; field_10058 RED_CONCRETE + f Lnet/minecraft/class_2248; field_29032 SMOOTH_BASALT + f Lnet/minecraft/class_2248; field_47038 TUFF_BRICK_WALL + f Lnet/minecraft/class_2248; field_47039 CHISELED_TUFF_BRICKS + f Lnet/minecraft/class_2248; field_10181 FURNACE + f Lnet/minecraft/class_2248; field_37573 VERDANT_FROGLIGHT + f Lnet/minecraft/class_2248; field_10180 LIME_BED + f Lnet/minecraft/class_2248; field_37572 OCHRE_FROGLIGHT + f Lnet/minecraft/class_2248; field_41072 BAMBOO_BLOCK + f Lnet/minecraft/class_2248; field_37575 FROGSPAWN + f Lnet/minecraft/class_2248; field_41073 STRIPPED_BAMBOO_BLOCK + f Lnet/minecraft/class_2248; field_37574 PEARLESCENT_FROGLIGHT + f Lnet/minecraft/class_2248; field_37571 SCULK_SHRIEKER + f Lnet/minecraft/class_2248; field_29030 DEEPSLATE_REDSTONE_ORE + f Lnet/minecraft/class_2248; field_37570 SCULK_CATALYST + f Lnet/minecraft/class_2248; field_29031 COBBLED_DEEPSLATE + f Lnet/minecraft/class_2248; field_10177 WITHER_SKELETON_SKULL + f Lnet/minecraft/class_2248; field_10044 CHISELED_QUARTZ_BLOCK + f Lnet/minecraft/class_2248; field_10178 DARK_OAK_WOOD + f Lnet/minecraft/class_2248; field_10043 BLUE_CARPET + f Lnet/minecraft/class_2248; field_10176 INFESTED_CHISELED_STONE_BRICKS + f Lnet/minecraft/class_2248; field_10042 CREEPER_HEAD + f Lnet/minecraft/class_2248; field_10175 PURPUR_SLAB + f Lnet/minecraft/class_2248; field_10174 SEA_LANTERN + f Lnet/minecraft/class_2248; field_10041 JUNGLE_FENCE_GATE + f Lnet/minecraft/class_2248; field_10040 LIME_CARPET + f Lnet/minecraft/class_2248; field_10173 MOSSY_STONE_BRICK_STAIRS + f Lnet/minecraft/class_2248; field_10172 LIGHT_GRAY_CONCRETE + f Lnet/minecraft/class_2248; field_10171 GLOWSTONE + f Lnet/minecraft/class_2248; field_10170 GREEN_WOOL + f Lnet/minecraft/class_2248; field_23078 TWISTING_VINES + f Lnet/minecraft/class_2248; field_9974 NETHER_WART + f Lnet/minecraft/class_2248; field_23079 TWISTING_VINES_PLANT + f Lnet/minecraft/class_2248; field_9973 IRON_DOOR + f Lnet/minecraft/class_2248; field_9976 HORN_CORAL_WALL_FAN + f Lnet/minecraft/class_2248; field_23077 NETHER_GOLD_ORE + f Lnet/minecraft/class_2248; field_9975 SPRUCE_PLANKS + f Lnet/minecraft/class_2248; field_9978 SMOOTH_QUARTZ + f Lnet/minecraft/class_2248; field_10049 YELLOW_STAINED_GLASS + f Lnet/minecraft/class_2248; field_9977 ORANGE_CARPET + f Lnet/minecraft/class_2248; field_10048 ORANGE_TULIP + f Lnet/minecraft/class_2248; field_10047 DEAD_BUBBLE_CORAL_FAN + f Lnet/minecraft/class_2248; field_10045 ORANGE_BANNER + f Lnet/minecraft/class_2248; field_9979 SANDSTONE + f Lnet/minecraft/class_2248; field_10179 NOTE_BLOCK + f Lnet/minecraft/class_2248; field_10046 LIME_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_27879 POWDER_SNOW + f Lnet/minecraft/class_2248; field_47029 TUFF_WALL + f Lnet/minecraft/class_2248; field_27878 POWDER_SNOW_CAULDRON + f Lnet/minecraft/class_2248; field_47027 TUFF_SLAB + f Lnet/minecraft/class_2248; field_9980 CRAFTING_TABLE + f Lnet/minecraft/class_2248; field_47028 TUFF_STAIRS + f Lnet/minecraft/class_2248; field_9982 BLUE_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_9981 POTTED_BLUE_ORCHID + f Lnet/minecraft/class_2248; field_9983 LADDER + f Lnet/minecraft/class_2248; field_10032 DEAD_HORN_CORAL + f Lnet/minecraft/class_2248; field_10165 CYAN_BANNER + f Lnet/minecraft/class_2248; field_10298 PETRIFIED_OAK_SLAB + f Lnet/minecraft/class_2248; field_10299 BIRCH_FENCE + f Lnet/minecraft/class_2248; field_10164 LAVA + f Lnet/minecraft/class_2248; field_10031 ACACIA_SLAB + f Lnet/minecraft/class_2248; field_10297 DARK_PRISMARINE + f Lnet/minecraft/class_2248; field_10163 BROWN_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_10296 DEAD_BUBBLE_CORAL + f Lnet/minecraft/class_2248; field_10030 SLIME_BLOCK + f Lnet/minecraft/class_2248; field_10295 ICE + f Lnet/minecraft/class_2248; field_10162 POTTED_ALLIUM + f Lnet/minecraft/class_2248; field_33509 RAW_COPPER_BLOCK + f Lnet/minecraft/class_2248; field_47053 WAXED_EXPOSED_COPPER_TRAPDOOR + f Lnet/minecraft/class_2248; field_10161 OAK_PLANKS + f Lnet/minecraft/class_2248; field_10294 LIGHT_BLUE_WOOL + f Lnet/minecraft/class_2248; field_10160 DARK_OAK_SAPLING + f Lnet/minecraft/class_2248; field_10293 WHEAT + f Lnet/minecraft/class_2248; field_47052 WAXED_COPPER_TRAPDOOR + f Lnet/minecraft/class_2248; field_10292 CHISELED_SANDSTONE + f Lnet/minecraft/class_2248; field_47051 WEATHERED_COPPER_TRAPDOOR + f Lnet/minecraft/class_2248; field_43228 PITCHER_CROP + f Lnet/minecraft/class_2248; field_10291 SPRUCE_FENCE_GATE + f Lnet/minecraft/class_2248; field_47050 OXIDIZED_COPPER_TRAPDOOR + f Lnet/minecraft/class_2248; field_43227 SUSPICIOUS_GRAVEL + f Lnet/minecraft/class_2248; field_47057 CHISELED_COPPER + f Lnet/minecraft/class_2248; field_47056 EXPOSED_CHISELED_COPPER + f Lnet/minecraft/class_2248; field_43229 PITCHER_PLANT + f Lnet/minecraft/class_2248; field_47055 WEATHERED_CHISELED_COPPER + f Lnet/minecraft/class_2248; field_10039 SMOOTH_RED_SANDSTONE_STAIRS + f Lnet/minecraft/class_2248; field_47054 OXIDIZED_CHISELED_COPPER + f Lnet/minecraft/class_2248; field_10038 GRAY_CONCRETE + f Lnet/minecraft/class_2248; field_10037 SPRUCE_LOG + f Lnet/minecraft/class_2248; field_10036 FIRE + f Lnet/minecraft/class_2248; field_10169 HORN_CORAL + f Lnet/minecraft/class_2248; field_10034 CHEST + f Lnet/minecraft/class_2248; field_47059 WAXED_WEATHERED_CHISELED_COPPER + f Lnet/minecraft/class_2248; field_10035 DARK_OAK_LEAVES + f Lnet/minecraft/class_2248; field_47058 WAXED_OXIDIZED_CHISELED_COPPER + f Lnet/minecraft/class_2248; field_10033 GLASS + f Lnet/minecraft/class_2248; field_10166 BONE_BLOCK + f Lnet/minecraft/class_2248; field_10167 RAIL + f Lnet/minecraft/class_2248; field_10290 LIGHT_BLUE_CARPET + f Lnet/minecraft/class_2248; field_33508 RAW_IRON_BLOCK + f Lnet/minecraft/class_2248; field_43231 CALIBRATED_SCULK_SENSOR + f Lnet/minecraft/class_2248; field_43230 SNIFFER_EGG + f Lnet/minecraft/class_2248; field_10153 QUARTZ_BLOCK + f Lnet/minecraft/class_2248; field_10020 SPRUCE_FENCE + f Lnet/minecraft/class_2248; field_10286 PURPUR_BLOCK + f Lnet/minecraft/class_2248; field_10152 PURPLE_STAINED_GLASS_PANE + f Lnet/minecraft/class_2248; field_10285 GLASS_PANE + f Lnet/minecraft/class_2248; field_10284 ACACIA_SIGN + f Lnet/minecraft/class_2248; field_10151 POTTED_POPPY + f Lnet/minecraft/class_2248; field_10283 SMOOTH_RED_SANDSTONE_SLAB + f Lnet/minecraft/class_2248; field_10282 OBSERVER + f Lnet/minecraft/class_2248; field_47041 EXPOSED_COPPER_DOOR + f Lnet/minecraft/class_2248; field_10281 BLUE_BANNER + f Lnet/minecraft/class_2248; field_47040 COPPER_DOOR + f Lnet/minecraft/class_2248; field_10280 ORANGE_GLAZED_TERRACOTTA + f Lnet/minecraft/class_2248; field_47045 WAXED_EXPOSED_COPPER_DOOR + f Lnet/minecraft/class_2248; field_10029 CACTUS + f Lnet/minecraft/class_2248; field_47044 WAXED_COPPER_DOOR + f Lnet/minecraft/class_2248; field_10028 LIME_WOOL + f Lnet/minecraft/class_2248; field_47043 WEATHERED_COPPER_DOOR + f Lnet/minecraft/class_2248; field_10027 END_PORTAL + f Lnet/minecraft/class_2248; field_47042 OXIDIZED_COPPER_DOOR + f Lnet/minecraft/class_2248; field_10026 JUNGLE_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_10159 NETHER_BRICK_STAIRS + f Lnet/minecraft/class_2248; field_47049 EXPOSED_COPPER_TRAPDOOR + f Lnet/minecraft/class_2248; field_10025 DETECTOR_RAIL + f Lnet/minecraft/class_2248; field_10158 STONE_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_10023 BROWN_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_47048 COPPER_TRAPDOOR + f Lnet/minecraft/class_2248; field_10157 LIME_STAINED_GLASS + f Lnet/minecraft/class_2248; field_10024 MOSSY_STONE_BRICK_SLAB + f Lnet/minecraft/class_2248; field_47047 WAXED_WEATHERED_COPPER_DOOR + f Lnet/minecraft/class_2248; field_10155 SPRUCE_WOOD + f Lnet/minecraft/class_2248; field_10022 ORANGE_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_10156 WHITE_TULIP + f Lnet/minecraft/class_2248; field_10289 POLISHED_GRANITE + f Lnet/minecraft/class_2248; field_10021 CHORUS_PLANT + f Lnet/minecraft/class_2248; field_47046 WAXED_OXIDIZED_COPPER_DOOR + f Lnet/minecraft/class_2248; field_10154 WHITE_BANNER + f Lnet/minecraft/class_2248; field_10287 RED_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_10288 BROWN_BED + f Lnet/minecraft/class_2248; field_33510 RAW_GOLD_BLOCK + f Lnet/minecraft/class_2248; field_10019 PURPLE_BED + f Lnet/minecraft/class_2248; field_10018 POTTED_CACTUS + f Lnet/minecraft/class_2248; field_27159 AMETHYST_BLOCK + f Lnet/minecraft/class_2248; field_27158 BLACK_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_27157 RED_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_27156 GREEN_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_40261 BAMBOO_WALL_SIGN + f Lnet/minecraft/class_2248; field_27155 BROWN_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_40262 OAK_HANGING_SIGN + f Lnet/minecraft/class_2248; field_10629 BRAIN_CORAL_BLOCK + f Lnet/minecraft/class_2248; field_40263 SPRUCE_HANGING_SIGN + f Lnet/minecraft/class_2248; field_27154 BLUE_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_10628 LIGHT_GRAY_CONCRETE_POWDER + f Lnet/minecraft/class_2248; field_27153 PURPLE_CANDLE_CAKE + f Lnet/minecraft/class_2248; field_40264 BIRCH_HANGING_SIGN + f Lnet/minecraft/class_2248; field_40265 ACACIA_HANGING_SIGN + f Lnet/minecraft/class_2248; field_40266 JUNGLE_HANGING_SIGN + f Lnet/minecraft/class_2248; field_40267 DARK_OAK_HANGING_SIGN + f Lnet/minecraft/class_2248; field_40268 CRIMSON_HANGING_SIGN + f Lnet/minecraft/class_2248; field_40269 WARPED_HANGING_SIGN + f Lnet/minecraft/class_2248; field_22130 CRIMSON_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_22132 CRIMSON_FENCE + f Lnet/minecraft/class_2248; field_22131 WARPED_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_27164 SMALL_AMETHYST_BUD + f Lnet/minecraft/class_2248; field_10627 JUNGLE_DOOR + f Lnet/minecraft/class_2248; field_10626 BLACK_TERRACOTTA + f Lnet/minecraft/class_2248; field_27163 MEDIUM_AMETHYST_BUD + f Lnet/minecraft/class_2248; field_27162 LARGE_AMETHYST_BUD + f Lnet/minecraft/class_2248; field_10625 COBBLESTONE_WALL + f Lnet/minecraft/class_2248; field_27161 AMETHYST_CLUSTER + f Lnet/minecraft/class_2248; field_10624 RED_SANDSTONE_SLAB + f Lnet/minecraft/class_2248; field_49830 HEAVY_CORE + f Lnet/minecraft/class_2248; field_27160 BUDDING_AMETHYST + f Lnet/minecraft/class_2248; field_10623 DARK_PRISMARINE_SLAB + f Lnet/minecraft/class_2248; field_22133 WARPED_FENCE + f Lnet/minecraft/class_2248; field_10622 STRIPPED_ACACIA_LOG + f Lnet/minecraft/class_2248; field_10621 LIGHT_BLUE_BED + f Lnet/minecraft/class_2248; field_10620 OAK_FENCE + f Lnet/minecraft/class_2248; field_28108 SCULK_SENSOR + f Lnet/minecraft/class_2248; field_27169 WAXED_EXPOSED_CUT_COPPER_SLAB + f Lnet/minecraft/class_2248; field_10619 CYAN_WOOL + f Lnet/minecraft/class_2248; field_27168 WAXED_WEATHERED_CUT_COPPER_SLAB + f Lnet/minecraft/class_2248; field_10618 FIRE_CORAL + f Lnet/minecraft/class_2248; field_27167 WAXED_CUT_COPPER_STAIRS + f Lnet/minecraft/class_2248; field_10617 JUNGLE_SLAB + f Lnet/minecraft/class_2248; field_27166 WAXED_EXPOSED_CUT_COPPER_STAIRS + f Lnet/minecraft/class_2248; field_10616 DARK_OAK_STAIRS + f Lnet/minecraft/class_2248; field_27165 TUFF + f Lnet/minecraft/class_2248; field_10615 STICKY_PISTON + f Lnet/minecraft/class_2248; field_10614 DEAD_TUBE_CORAL_BLOCK + f Lnet/minecraft/class_2248; field_10613 END_GATEWAY + f Lnet/minecraft/class_2248; field_10612 PINK_BANNER + f Lnet/minecraft/class_2248; field_10611 WHITE_TERRACOTTA + f Lnet/minecraft/class_2248; field_27171 LIGHTNING_ROD + f Lnet/minecraft/class_2248; field_10610 PINK_BED + f Lnet/minecraft/class_2248; field_27170 WAXED_CUT_COPPER_SLAB + f Lnet/minecraft/class_2248; field_40280 MANGROVE_WALL_HANGING_SIGN + f Lnet/minecraft/class_2248; field_40281 CRIMSON_WALL_HANGING_SIGN + f Lnet/minecraft/class_2248; field_40282 WARPED_WALL_HANGING_SIGN + f Lnet/minecraft/class_2248; field_10609 CARROTS + f Lnet/minecraft/class_2248; field_40283 BAMBOO_WALL_HANGING_SIGN + f Lnet/minecraft/class_2248; field_10608 ACACIA_TRAPDOOR + f Lnet/minecraft/class_2248; field_40284 BAMBOO_PRESSURE_PLATE + f Lnet/minecraft/class_2248; field_10607 GRANITE_STAIRS + f Lnet/minecraft/class_2248; field_40285 BAMBOO_TRAPDOOR + f Lnet/minecraft/class_2248; field_10606 WITHER_ROSE + f Lnet/minecraft/class_2248; field_40286 BAMBOO_BUTTON + f Lnet/minecraft/class_2248; field_10605 BLUE_SHULKER_BOX + f Lnet/minecraft/class_2248; field_40287 BAMBOO_STAIRS + f Lnet/minecraft/class_2248; field_10604 LIGHT_GRAY_WALL_BANNER + f Lnet/minecraft/class_2248; field_40288 BAMBOO_MOSAIC_STAIRS + f Lnet/minecraft/class_2248; field_40289 BAMBOO_FENCE_GATE + f Lnet/minecraft/class_2248; field_10603 SHULKER_BOX + f Lnet/minecraft/class_2248; field_10602 BROWN_BANNER + f Lnet/minecraft/class_2248; field_10601 SMOOTH_QUARTZ_SLAB + f Lnet/minecraft/class_2248; field_10600 YELLOW_SHULKER_BOX + f Lnet/minecraft/class_2248; field_40290 BAMBOO_FENCE + f Lnet/minecraft/class_2248; field_40291 BAMBOO_DOOR + f Lnet/minecraft/class_2248; field_40270 MANGROVE_HANGING_SIGN + f Lnet/minecraft/class_2248; field_40271 BAMBOO_HANGING_SIGN + f Lnet/minecraft/class_2248; field_40272 OAK_WALL_HANGING_SIGN + f Lnet/minecraft/class_2248; field_40273 SPRUCE_WALL_HANGING_SIGN + f Lnet/minecraft/class_2248; field_40274 BIRCH_WALL_HANGING_SIGN + f Lnet/minecraft/class_2248; field_40275 ACACIA_WALL_HANGING_SIGN + f Lnet/minecraft/class_2248; field_40276 CHISELED_BOOKSHELF + f Lnet/minecraft/class_2248; field_40277 BAMBOO_SIGN + f Lnet/minecraft/class_2248; field_33919 POTTED_FLOWERING_AZALEA_BUSH + f Lnet/minecraft/class_2248; field_40278 JUNGLE_WALL_HANGING_SIGN + f Lnet/minecraft/class_2248; field_33918 POTTED_AZALEA_BUSH + f Lnet/minecraft/class_2248; field_40279 DARK_OAK_WALL_HANGING_SIGN + f Lnet/minecraft/class_2248; field_55984 TEST_BLOCK + f Lnet/minecraft/class_2248; field_55985 TEST_INSTANCE_BLOCK + f Lnet/minecraft/class_2248; field_40292 BAMBOO_SLAB + f Lnet/minecraft/class_2248; field_29219 DEEPSLATE_COAL_ORE + f Lnet/minecraft/class_2248; field_40293 BAMBOO_MOSAIC_SLAB + f Lnet/minecraft/class_2248; field_40294 BAMBOO_PLANKS + f Lnet/minecraft/class_2248; field_40295 BAMBOO_MOSAIC + f Lnet/minecraft/class_2248; field_55742 LEAF_LITTER + f Lnet/minecraft/class_2248; field_55741 WILDFLOWERS + f Lnet/minecraft/class_2248; field_47336 TRIAL_SPAWNER + f Lnet/minecraft/class_2248; field_29220 DEEPSLATE_EMERALD_ORE + f Lnet/minecraft/class_2248; field_29221 DEEPSLATE_COPPER_ORE + f Lnet/minecraft/class_2248; field_61400 WAXED_COPPER_GOLEM_STATUE + f Lnet/minecraft/class_2248; field_29222 CRACKED_DEEPSLATE_BRICKS + f Lnet/minecraft/class_2248; field_23261 LODESTONE + f Lnet/minecraft/class_2248; field_29223 CRACKED_DEEPSLATE_TILES + f Lnet/minecraft/class_2248; field_29224 INFESTED_DEEPSLATE + f Lnet/minecraft/class_2248; field_27099 CANDLE + f Lnet/minecraft/class_2248; field_27098 LAVA_CAULDRON + f Lnet/minecraft/class_2248; field_27097 WATER_CAULDRON + m (Lnet/minecraft/class_2680;)I method_26104 method_26104 + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_39537 method_39537 + p 0 state + p 1 world + p 2 pos + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63419 method_63419 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63407 method_63407 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63190 method_63190 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63093 method_63093 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_63287 method_63287 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63081 method_63081 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_67401 method_67401 + p 0 state + m (Lnet/minecraft/class_2680;)I method_26105 method_26105 + p 0 state + m (Lnet/minecraft/class_2680;)I method_26129 method_26129 + p 0 state + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_63063 keyOf + p 0 id + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63309 method_63309 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63418 method_63418 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63406 method_63406 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63082 method_63082 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63191 method_63191 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63070 method_63070 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_63022 method_63022 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63094 method_63094 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_73112 method_73112 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63409 method_63409 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_55132 method_55132 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63071 method_63071 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63180 method_63180 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63192 method_63192 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63095 method_63095 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63083 method_63083 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_65141 method_65141 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_73111 method_73111 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63408 method_63408 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63290 method_63290 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63181 method_63181 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63084 method_63084 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63193 method_63193 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63072 method_63072 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63096 method_63096 + p 0 settings + m (Ljava/lang/String;Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_9492 register + p 0 id + p 1 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_65140 method_65140 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_73118 method_73118 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63208 method_63208 + p 0 settings + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63052 register + p 1 settings + p 0 key + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63318 method_63318 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63439 method_63439 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63306 method_63306 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63427 method_63427 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63415 method_63415 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63403 method_63403 + p 0 settings + m (Lnet/minecraft/class_2498;)Lnet/minecraft/class_4970$class_2251; method_63058 createLeavesSettings + p 0 sounds + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_53981 method_53981 + p 1 world + p 2 pos + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_64769 method_64769 + p 0 settings + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;)Z method_26132 method_26132 + p 2 pos + p 3 entityType + p 0 state + p 1 world + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63209 method_63209 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63329 method_63329 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63090 method_63090 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63317 method_63317 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63438 method_63438 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63305 method_63305 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63426 method_63426 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63414 method_63414 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63402 method_63402 + p 0 settings + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_32895 method_32895 + p 2 pos + p 1 world + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63308 method_63308 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63429 method_63429 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63091 method_63091 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63417 method_63417 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_36458 method_36458 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63405 method_63405 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63319 method_63319 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63080 method_63080 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63307 method_63307 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63428 method_63428 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63416 method_63416 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63404 method_63404 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63092 method_63092 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_63040 method_63040 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63204 method_63204 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63216 method_63216 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63107 method_63107 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63228 method_63228 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_38230 method_38230 + p 0 state + m (Lnet/minecraft/class_2680;)I method_41422 method_41422 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_64766 method_64766 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_26131 method_26131 + p 0 state + m (Lnet/minecraft/class_2680;)I method_26143 method_26143 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63338 method_63338 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63326 method_63326 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63447 method_63447 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63314 method_63314 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63435 method_63435 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63302 method_63302 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63423 method_63423 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63411 method_63411 + p 0 settings + m ()Lnet/minecraft/class_4970$class_2251; method_63051 createPistonSettings + m (ILnet/minecraft/class_2680;)I method_26108 method_26108 + p 1 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63205 method_63205 + p 0 settings + m (I)Ljava/util/function/ToIntFunction; method_26107 createLightLevelFromLitBlockState + p 0 litLevel + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63217 method_63217 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63108 method_63108 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63229 method_63229 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_41421 method_41421 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_64765 method_64765 + p 0 settings + m (Lnet/minecraft/class_3620;)Ljava/util/function/Function; method_59823 createMapColorFromWaterloggedBlockState + p 0 mapColor + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63349 method_63349 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63337 method_63337 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63458 method_63458 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63325 method_63325 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63446 method_63446 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63313 method_63313 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63434 method_63434 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63301 method_63301 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63422 method_63422 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63410 method_63410 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63206 method_63206 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_26134 method_26134 + p 0 state + m (Lnet/minecraft/class_2680;)I method_41424 method_41424 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63218 method_63218 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_64768 method_64768 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_26146 method_26146 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63109 method_63109 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72558 method_72558 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_26121 method_26121 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63328 method_63328 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63449 method_63449 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63316 method_63316 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63437 method_63437 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63304 method_63304 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63425 method_63425 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63413 method_63413 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63401 method_63401 + p 0 settings + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_3620; method_63033 method_63033 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63207 method_63207 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_26135 method_26135 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63219 method_63219 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_64767 method_64767 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_26147 method_26147 + p 0 state + m (Lnet/minecraft/class_3620;Lnet/minecraft/class_3620;Lnet/minecraft/class_2680;)Lnet/minecraft/class_3620; method_63062 method_63062 + p 2 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72559 method_72559 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63339 method_63339 + p 0 settings + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_26122 never + c A shortcut to always return {@code false} a context predicate, used as\n{@code settings.solidBlock(Blocks::never)}. + p 2 pos + p 0 state + p 1 world + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63327 method_63327 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63448 method_63448 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63315 method_63315 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63436 method_63436 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63303 method_63303 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63424 method_63424 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63412 method_63412 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63400 method_63400 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63200 method_63200 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63212 method_63212 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63103 method_63103 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63224 method_63224 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63115 method_63115 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63236 method_63236 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63127 method_63127 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63248 method_63248 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63139 method_63139 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_26112 method_26112 + p 0 state + m (Lnet/minecraft/class_2680;)I method_26124 method_26124 + p 0 state + m (Lnet/minecraft/class_2680;)I method_26136 method_26136 + p 0 state + m (Lnet/minecraft/class_2680;)I method_26148 method_26148 + p 0 state + m (Lnet/minecraft/class_5955$class_5811;)Lnet/minecraft/class_4970$class_2251; method_73114 method_73114 + p 0 oxidationLevel + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_64774 method_64774 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63056 method_63056 + p 1 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63358 method_63358 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63346 method_63346 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63334 method_63334 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63455 method_63455 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63322 method_63322 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63443 method_63443 + p 0 settings + m (Lnet/minecraft/class_5321;Ljava/util/function/Function;Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63053 register + p 2 settings + p 1 factory + p 0 key + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63310 method_63310 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63431 method_63431 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63201 method_63201 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63213 method_63213 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63104 method_63104 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63225 method_63225 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63116 method_63116 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63237 method_63237 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63128 method_63128 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63249 method_63249 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_26137 method_26137 + p 0 state + m (Lnet/minecraft/class_2680;)I method_26149 method_26149 + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;)Z method_26128 method_26128 + p 3 entityType + p 0 state + p 1 world + p 2 pos + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_64773 method_64773 + p 0 settings + m (Lnet/minecraft/class_5955$class_5811;)Lnet/minecraft/class_4970$class_2251; method_73113 method_73113 + p 0 oxidationLevel + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63369 method_63369 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_33357 method_33357 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63357 method_63357 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63345 method_63345 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_66409 method_66409 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63333 method_63333 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63454 method_63454 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63321 method_63321 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63442 method_63442 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63430 method_63430 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63202 method_63202 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63214 method_63214 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63105 method_63105 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63226 method_63226 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63238 method_63238 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63129 method_63129 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_64776 method_64776 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_26138 method_26138 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_64764 method_64764 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63348 method_63348 + p 0 settings + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_26113 always + c A shortcut to always return {@code true} a context predicate, used as\n{@code settings.solidBlock(Blocks::always)}. + p 2 pos + p 0 state + p 1 world + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63336 method_63336 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63457 method_63457 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63324 method_63324 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63445 method_63445 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63312 method_63312 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63433 method_63433 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63300 method_63300 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63421 method_63421 + p 0 settings + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63118 method_63118 + p 1 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63203 method_63203 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63215 method_63215 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63106 method_63106 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63227 method_63227 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63239 method_63239 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_26127 method_26127 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_64775 method_64775 + p 0 settings + m (Lnet/minecraft/class_5955$class_5811;)Lnet/minecraft/class_4970$class_2251; method_73115 method_73115 + p 0 oxidationLevel + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63359 method_63359 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63347 method_63347 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63335 method_63335 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63456 method_63456 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63323 method_63323 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63444 method_63444 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63311 method_63311 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63432 method_63432 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63420 method_63420 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63111 method_63111 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63232 method_63232 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63341 method_63341 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63462 method_63462 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63244 method_63244 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63450 method_63450 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63026 method_63026 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63135 method_63135 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63256 method_63256 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63147 method_63147 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63268 method_63268 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63159 method_63159 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63038 method_63038 + p 0 settings + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63054 method_63054 + p 1 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_66416 method_66416 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72552 method_72552 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63378 method_63378 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72564 method_72564 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63366 method_63366 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63354 method_63354 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63110 method_63110 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63342 method_63342 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63100 method_63100 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63221 method_63221 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63352 method_63352 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63112 method_63112 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63340 method_63340 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63461 method_63461 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63124 method_63124 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63245 method_63245 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63136 method_63136 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63257 method_63257 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63039 method_63039 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63148 method_63148 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63269 method_63269 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_36460 method_36460 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_66417 method_66417 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63389 method_63389 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72553 method_72553 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63377 method_63377 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72565 method_72565 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63365 method_63365 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63220 method_63220 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63353 method_63353 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63210 method_63210 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63440 method_63440 + p 0 settings + m (Ljava/lang/String;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2248; method_55133 registerOldStairsBlock + p 1 base + p 0 id + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63101 method_63101 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63222 method_63222 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63113 method_63113 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63234 method_63234 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63125 method_63125 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63246 method_63246 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63028 method_63028 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63137 method_63137 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63258 method_63258 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63149 method_63149 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_64772 method_64772 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_63459 method_63459 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_64771 method_64771 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_66414 method_66414 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72550 method_72550 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72562 method_72562 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63368 method_63368 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63356 method_63356 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63344 method_63344 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63332 method_63332 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63453 method_63453 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63320 method_63320 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63441 method_63441 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63330 method_63330 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63451 method_63451 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63211 method_63211 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63102 method_63102 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63223 method_63223 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63114 method_63114 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63235 method_63235 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63126 method_63126 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63247 method_63247 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63138 method_63138 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63259 method_63259 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63029 method_63029 + p 0 settings + m (Lnet/minecraft/class_3620;)Lnet/minecraft/class_4970$class_2251; method_63121 createNetherStemSettings + p 0 mapColor + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_64770 method_64770 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_66415 method_66415 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_26150 method_26150 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72551 method_72551 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63379 method_63379 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72563 method_72563 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63367 method_63367 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63355 method_63355 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63343 method_63343 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63331 method_63331 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63452 method_63452 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63046 method_63046 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63155 method_63155 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63276 method_63276 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63385 method_63385 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63034 method_63034 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63167 method_63167 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63373 method_63373 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63179 method_63179 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63361 method_63361 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_32894 method_32894 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72568 method_72568 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_26151 method_26151 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_66412 method_66412 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63130 method_63130 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63251 method_63251 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63142 method_63142 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63263 method_63263 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63398 method_63398 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63021 method_63021 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63154 method_63154 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63275 method_63275 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63386 method_63386 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72556 method_72556 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63035 method_63035 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63144 method_63144 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63265 method_63265 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63396 method_63396 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_65139 method_65139 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63023 method_63023 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63156 method_63156 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63277 method_63277 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63384 method_63384 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63059 method_63059 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63168 method_63168 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63289 method_63289 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63372 method_63372 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63047 method_63047 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63360 method_63360 + p 0 settings + m ()Lnet/minecraft/class_4970$class_2251; method_63176 createFlowerPotSettings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72557 method_72557 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72569 method_72569 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_26140 method_26140 + p 0 state + m (Lnet/minecraft/class_2680;)I method_26152 method_26152 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_66413 method_66413 + p 0 settings + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;)Ljava/lang/Boolean; method_26126 canSpawnOnLeaves + p 1 world + p 0 state + p 3 type + p 2 pos + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63240 method_63240 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63131 method_63131 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63252 method_63252 + p 0 settings + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;)Ljava/lang/Boolean; method_26114 never + c A shortcut to always return {@code false} in a typed context predicate with an\n{@link EntityType}, used like {@code settings.allowSpawning(Blocks::never)}. + p 1 world + p 2 pos + p 0 state + p 3 type + m (Lnet/minecraft/class_3620;Lnet/minecraft/class_2680;)Lnet/minecraft/class_3620; method_63060 method_63060 + p 1 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63143 method_63143 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63264 method_63264 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63397 method_63397 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63024 method_63024 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63133 method_63133 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63254 method_63254 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63363 method_63363 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63145 method_63145 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63266 method_63266 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63351 method_63351 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63048 method_63048 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63157 method_63157 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63278 method_63278 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63460 method_63460 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63036 method_63036 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63169 method_63169 + p 0 settings + m (Ljava/lang/String;Lnet/minecraft/class_1767;)Lnet/minecraft/class_2248; method_26109 registerBedBlock + p 1 color + p 0 id + m (Lnet/minecraft/class_3620;)Lnet/minecraft/class_4970$class_2251; method_63233 createCandleSettings + p 0 mapColor + m (Lnet/minecraft/class_2680;)I method_26141 method_26141 + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;)Ljava/lang/Boolean; method_26123 always + c A shortcut to always return {@code true} in a typed context predicate with an\n{@link EntityType}, used like {@code settings.allowSpawning(Blocks::always)}. + p 0 state + p 3 type + p 2 pos + p 1 world + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63388 method_63388 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72554 method_72554 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63120 method_63120 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63241 method_63241 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63376 method_63376 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72566 method_72566 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63132 method_63132 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63253 method_63253 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63364 method_63364 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63243 method_63243 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63374 method_63374 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63134 method_63134 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63255 method_63255 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63362 method_63362 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63037 method_63037 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63146 method_63146 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63267 method_63267 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63350 method_63350 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63025 method_63025 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63158 method_63158 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63279 method_63279 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63049 method_63049 + p 0 settings + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_2680;)Lnet/minecraft/class_3620; method_63055 method_63055 + p 1 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_66410 method_66410 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_26142 method_26142 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_66411 method_66411 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63399 method_63399 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63230 method_63230 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63387 method_63387 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72555 method_72555 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63242 method_63242 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63375 method_63375 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72567 method_72567 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63199 method_63199 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63078 method_63078 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63393 method_63393 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63381 method_63381 + p 0 settings + m (Ljava/lang/String;Ljava/util/function/Function;Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63064 register + p 0 id + p 2 settings + p 1 factory + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63150 method_63150 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63271 method_63271 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63162 method_63162 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63283 method_63283 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63041 method_63041 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63174 method_63174 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63295 method_63295 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63077 method_63077 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63186 method_63186 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63065 method_63065 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63198 method_63198 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63079 method_63079 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63188 method_63188 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63067 method_63067 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63392 method_63392 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63380 method_63380 + p 0 settings + m (Lnet/minecraft/class_3620;Lnet/minecraft/class_2680;)Lnet/minecraft/class_3620; method_59824 method_59824 + p 1 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63260 method_63260 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63042 method_63042 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63151 method_63151 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63272 method_63272 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63030 method_63030 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63163 method_63163 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63284 method_63284 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63066 method_63066 + p 0 settings + m ()Lnet/minecraft/class_4970$class_2251; method_63117 createButtonSettings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63175 method_63175 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63296 method_63296 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63187 method_63187 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63068 method_63068 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63177 method_63177 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63298 method_63298 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63189 method_63189 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63395 method_63395 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63383 method_63383 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63371 method_63371 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_63027 method_63027 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63031 method_63031 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63140 method_63140 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63261 method_63261 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63152 method_63152 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63273 method_63273 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63164 method_63164 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63285 method_63285 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63043 method_63043 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63297 method_63297 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63166 method_63166 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63045 method_63045 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63299 method_63299 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63394 method_63394 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63069 method_63069 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63382 method_63382 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63370 method_63370 + p 0 settings + m (Lnet/minecraft/class_2680;)I method_56717 method_56717 + p 0 state + m (Lnet/minecraft/class_2680;)I method_24419 method_24419 + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;)Z method_26130 method_26130 + p 0 state + p 1 world + p 2 pos + p 3 entityType + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63250 method_63250 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63141 method_63141 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63262 method_63262 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63044 method_63044 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63153 method_63153 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63274 method_63274 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63032 method_63032 + p 0 settings + m (Lnet/minecraft/class_2248;Z)Lnet/minecraft/class_4970$class_2251; method_63057 copyLootTable + p 1 copyTranslationKey + p 0 block + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63165 method_63165 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63286 method_63286 + p 0 settings + m (Ljava/lang/String;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2248; method_63123 registerStairsBlock + p 1 base + p 0 id + m (Lnet/minecraft/class_3620;)Lnet/minecraft/class_4970$class_2251; method_63178 createShulkerBoxSettings + p 0 mapColor + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_73116 method_73116 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72560 method_72560 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63170 method_63170 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63291 method_63291 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_65143 method_65143 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63073 method_63073 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63182 method_63182 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63194 method_63194 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63097 method_63097 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63085 method_63085 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_73117 method_73117 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_65142 method_65142 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63280 method_63280 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_72561 method_72561 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63171 method_63171 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63292 method_63292 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63050 method_63050 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63183 method_63183 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63086 method_63086 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63195 method_63195 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63074 method_63074 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63098 method_63098 + p 0 settings + m (Lnet/minecraft/class_3620;Lnet/minecraft/class_3620;Lnet/minecraft/class_2498;)Lnet/minecraft/class_4970$class_2251; method_63061 createLogSettings + p 0 topMapColor + p 1 sideMapColor + p 2 sounds + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_65146 method_65146 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63391 method_63391 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63119 method_63119 + p 1 settings + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_63288 method_63288 + p 0 state + p 1 world + p 2 pos + m (Ljava/lang/String;Lnet/minecraft/class_1767;)Lnet/minecraft/class_2248; method_63122 registerStainedGlassBlock + p 0 id + p 1 color + m (Lnet/minecraft/class_2680;)I method_36461 method_36461 + p 0 state + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63160 method_63160 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63281 method_63281 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63172 method_63172 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63293 method_63293 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_65145 method_65145 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63075 method_63075 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63184 method_63184 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63196 method_63196 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63099 method_63099 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63087 method_63087 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63089 method_63089 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63390 method_63390 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63270 method_63270 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_65144 method_65144 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63161 method_63161 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63282 method_63282 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63173 method_63173 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63294 method_63294 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63185 method_63185 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63088 method_63088 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63197 method_63197 + p 0 settings + m (Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_63076 method_63076 + p 0 settings +c net/minecraft/class_3578 net/minecraft/datafixer/fix/BlockNameFlatteningFix +c net/minecraft/class_2247 net/minecraft/command/argument/BlockStateArgument + f Lnet/minecraft/class_2680; field_10632 state + f Lorg/slf4j/Logger; field_60477 LOGGER + f Ljava/util/Set; field_10631 properties + f Lnet/minecraft/class_2487; field_10633 data + m (Lnet/minecraft/class_2680;Ljava/util/Set;Lnet/minecraft/class_2487;)V + p 1 state + p 2 properties + p 3 data + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;I)Z method_9495 setBlockState + p 1 world + p 3 flags + p 2 pos + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_65237 copyPropertiesTo + p 1 state + m ()Lnet/minecraft/class_2680; method_9494 getBlockState + m ()Ljava/util/Set; method_35759 getProperties + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lnet/minecraft/class_2694;)Z method_9493 test + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_35758 test + p 1 world + p 2 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2769;)Lnet/minecraft/class_2680; method_65238 copyProperty + p 2 property + p 1 from + p 0 to +c net/minecraft/class_3579 net/minecraft/datafixer/fix/BlockNameFix + f Ljava/lang/String; field_15828 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/DataFix; method_15589 create + p 2 rename + p 1 name + p 0 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15588 fixBlockState + p 1 blockStateDynamic + m (Ljava/lang/String;)Ljava/lang/String; method_15593 rename + p 1 oldName + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 name + m (Ljava/lang/String;)Ljava/lang/String; method_55639 fixFlatBlockState + c @implNote Replaces the part of {@code flatBlockState} before the first [ or {. + p 1 flatBlockState +c net/minecraft/class_2248 net/minecraft/block/Block + c A block is a voxel in a {@linkplain World world}. {@link AbstractBlock},\nthis class, and its subclasses define all logic for those voxels.\nSee the documentation on {@link AbstractBlock} for instructions on overriding\nmethods.\n\n

There is exactly one instance for every type of block. Every stone\nblock for example in a world shares the same block instance. Each block\ninstance is registered under {@link net.minecraft.registry.Registries#BLOCK}.\nSee {@link Blocks} for examples of block instances.\n\n

An item corresponding to a block is not automatically created. You\nmay create your own {@link net.minecraft.item.BlockItem} and register it\nunder {@link net.minecraft.registry.Registries#ITEM}.\n\n

The translation key for the block name is determined by {@link\n#getTranslationKey}.\n\n

In the world, the actual voxels are not stored as blocks, but as\n{@linkplain BlockState block states}. The possible states of the block\nare defined by {@link #appendProperties}.\n\n@see AbstractBlock\n@see BlockState + f I field_55740 FORCE_STATE_AND_SKIP_CALLBACKS_AND_DROPS + c Used for 'strict' block placement by commands and structures.\n@see #SKIP_BLOCK_ADDED_CALLBACK\n@see #SKIP_BLOCK_ENTITY_REPLACED_CALLBACK\n@see #SKIP_DROPS\n@see #FORCE_STATE + f I field_31026 FACE_CULL_MAP_SIZE + f I field_31030 REDRAW_ON_MAIN_THREAD + c Forces a synchronous redraw on clients. + f Lnet/minecraft/class_2689; field_10647 stateManager + f Lnet/minecraft/class_2680; field_10646 defaultState + f Ljava/lang/ThreadLocal; field_10649 FACE_CULL_MAP + f Lnet/minecraft/class_6880$class_6883; field_36404 registryEntry + f I field_31028 NOTIFY_LISTENERS + c Notifies listeners and clients who need to react when the block changes. + f I field_53822 SKIP_REDSTONE_WIRE_STATE_REPLACEMENT + c Skips {@link AbstractBlock#getStateForNeighborUpdate} call for redstone wire. + f I field_31032 SKIP_DROPS + c Prevents the previous block (container) from dropping items when destroyed. + f Lorg/slf4j/Logger; field_10638 LOGGER + f I field_31027 NOTIFY_NEIGHBORS + c Sends a neighbor update event to surrounding blocks. + f I field_31031 FORCE_STATE + c Bypass virtual block state changes and forces the passed state to be stored as-is. + f Lcom/mojang/serialization/MapCodec; field_46280 CODEC + f Lnet/minecraft/class_2361; field_10651 STATE_IDS + f I field_31022 NOTIFY_ALL_AND_REDRAW + c Notifies neighbors and listeners, and forces a redraw on clients. Same as {@code NOTIFY_ALL | REDRAW_ON_MAIN_THREAD} + f I field_31029 NO_REDRAW + c Used in conjunction with {@link #NOTIFY_LISTENERS} to suppress the render pass on clients. + f I field_31033 MOVED + c Signals that the current block is being moved to a different location, usually because of a piston. + f I field_31036 NOTIFY_ALL + c The default setBlockState behavior. Same as {@code NOTIFY_NEIGHBORS | NOTIFY_LISTENERS}. + f I field_55739 SKIP_BLOCK_ENTITY_REPLACED_CALLBACK + c Skips {@link BlockEntity#onBlockReplaced}.\nUsed when placing structures. + f I field_56561 SKIP_BLOCK_ADDED_CALLBACK + c Skips {@link AbstractBlock#onBlockAdded}.\nUsed when placing structures. + f Lcom/google/common/cache/LoadingCache; field_19312 FULL_CUBE_SHAPE_CACHE + f Lnet/minecraft/class_1792; field_17562 cachedItem + f I field_31035 SKIP_REDRAW_AND_BLOCK_ENTITY_REPLACED_CALLBACK + c @see #NO_REDRAW\n@see #SKIP_BLOCK_ENTITY_REPLACED_CALLBACK + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)V method_9544 method_9544 + p 2 stack + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_9585 onBroken + c Called after a player breaks a block and the block is removed from the world.\nExplosions do not trigger this.\n\n

In most cases, {@link AbstractBlock#onStateReplaced} or {@link\nAbstractBlock#onStacksDropped} should be used instead. Note that they are called\nwhen blocks are broken by explosions as well as players breaking them.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}.\n\n@see AbstractBlock#onStateReplaced\n@see AbstractBlock#onStacksDropped\n@see #onBreak + p 1 world + p 2 pos + p 3 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_9607 shouldDrawSide + p 0 state + p 2 side + p 1 otherState + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2586;)V method_9610 dropStacks + p 1 world + p 2 pos + p 0 state + p 3 blockEntity + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2586;Lnet/minecraft/class_1297;Lnet/minecraft/class_1799;)V method_9511 dropStacks + p 2 pos + p 1 world + p 0 state + p 5 tool + p 4 entity + p 3 blockEntity + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;II)V method_9611 replace + c Replaces the {@code state} with the {@code newState} at the {@code pos}.\n\n

If the two state objects are identical, this method does nothing.\n\n

If the new state {@linkplain BlockState#isAir() is air},\nbreaks the block at the position instead. + p 3 pos + c the position of the replaced block state + p 4 flags + c the bitwise flags for {@link net.minecraft.world.ModifiableWorld#setBlockState(BlockPos, BlockState, int, int)} + p 5 maxUpdateDepth + c the limit for the cascading block updates + p 0 state + c the existing block state + p 1 newState + c the new block state + p 2 world + c the world + m (I)Lnet/minecraft/class_2680; method_9531 getStateFromRawId + p 0 stateId + m (Lnet/minecraft/class_1927;)Z method_9533 shouldDropItemsOnExplosion + c {@return whether an explosion can drop the block as an item}\n\n

This should be overridden if an explosion affects the block in other ways,\nlike {@link TntBlock} that triggers the chain reaction. This should not consider\nthe randomness, since it is defined in the loot table.\n\n@see net.minecraft.loot.condition.SurvivesExplosionLootCondition + p 1 explosion + m (Lnet/minecraft/class_2689$class_2690;)V method_9515 appendProperties + c Appends block state properties to this block. To use this, override and call {@link\nStateManager.Builder#add} inside the method. See {@link\nnet.minecraft.state.property.Properties} for the list of pre-defined properties. + p 1 builder + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1927;)V method_9586 onDestroyedByExplosion + c Called when this block is destroyed by an explosion.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}. + p 3 explosion + p 2 pos + p 1 world + m (DDDD)Lnet/minecraft/class_265; method_66395 createColumnShape + p 0 sizeX + p 4 minY + p 2 sizeZ + p 6 maxY + m (ILjava/util/function/IntFunction;)[Lnet/minecraft/class_265; method_66397 createShapeArray + p 1 indexToShape + p 0 size + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_9496 randomDisplayTick + c Called randomly on the client. Blocks may override this to spawn particles.\nUnlike {@link AbstractBlock#randomTick} this is not affected by a game rule. + p 1 state + p 4 random + p 2 world + p 3 pos + m (Lnet/minecraft/class_2680;)Z method_9538 canMobSpawnInside + p 1 state + m ()Lnet/minecraft/class_2680; method_9564 getDefaultState + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2586;Lnet/minecraft/class_1297;Lnet/minecraft/class_1799;)Ljava/util/List; method_9609 getDroppedStacks + p 4 entity + p 5 stack + p 2 pos + p 3 blockEntity + p 0 state + p 1 world + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_34725 getStateWithProperties + c Gets a block state with all properties that both this block and the source block state have. + p 1 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;I)V method_9583 dropExperience + c Drops experience orbs. This should be called inside {@link AbstractBlock#onStacksDropped}\nafter {@code dropExperience} check. This does not drop experience orbs if {@link\nnet.minecraft.world.GameRules#DO_TILE_DROPS doTileDrops} is turned off. For blocks that do\nnot drop experience when mined with Silk Touch, consider calling {@link\n#dropExperienceWhenMined} instead.\n\n@see AbstractBlock#onStacksDropped\n@see #dropExperienceWhenMined + p 3 size + p 1 world + p 2 pos + m (Ljava/util/Map;Lcom/google/common/collect/ImmutableMap;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66401 method_66401 + p 2 state + m (DDD)Lnet/minecraft/class_265; method_66408 createCuboidZShape + p 0 sizeXy + p 4 maxZ + p 2 minZ + m (Lnet/minecraft/class_1937;Ljava/util/function/Supplier;Lnet/minecraft/class_1799;)V method_36993 dropStack + p 0 world + p 2 stack + p 1 itemEntitySupplier + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)V method_9567 onPlaced + c Called when the player placed the block.\n\n

Tall or wide blocks (such as doors or beds) should override this to place\nthe other half of the block. Blocks with block entities can use this to copy the\ndata from the item stack, such as the custom name.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}.\n\n@see AbstractBlock#onBlockAdded + p 4 placer + p 3 state + p 5 itemStack + p 2 pos + p 1 world + m (DDD)Lnet/minecraft/class_265; method_66394 createCuboidShape + p 4 sizeZ + p 0 sizeX + p 2 sizeY + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5321;Ljava/util/function/Function;Ljava/util/function/BiConsumer;)Z method_72547 generateLoot + p 0 world + p 1 lootTable + p 2 contextFactory + p 3 lootConsumer + m (Lnet/minecraft/class_2680;)Z method_9581 cannotConnect + p 0 state + m ()F method_23350 getJumpVelocityMultiplier + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1657;)Lnet/minecraft/class_2680; method_9576 onBreak + c Called when a player breaks a block before the block is removed from the world.\nExplosions do not trigger this.\n\n

Default implementation spawns block breaking particles, angers piglins, and\nemits game events. Tall or wide blocks such as doors or beds should override this\nto break the other part (along with {@link AbstractBlock#getStateForNeighborUpdate}.)\n\n

In most cases, {@link AbstractBlock#onStateReplaced} or {@link\nAbstractBlock#onStacksDropped} should be used instead. Note that they are called\nwhen blocks are broken by explosions as well as players breaking them.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}.\n\n@see AbstractBlock#onStateReplaced\n@see AbstractBlock#onStacksDropped\n@see #onBroken + p 3 state + p 4 player + p 1 world + p 2 pos + m (Ljava/util/function/Function;)Ljava/util/function/Function; method_33615 createShapeFunction + p 1 stateToShape + m (Ljava/util/Map;Lnet/minecraft/class_2680;)Z method_66402 method_66402 + p 1 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;D)V method_9554 onLandedUpon + c Called when the entity lands on the block.\n\n

Default implementation deals fall damage to the entity. Blocks that increase or\nreduce fall damage (like {@link HayBlock}) should override this. {@link FarmlandBlock}\noverrides this method to convert the block to dirt.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}. + p 1 world + p 2 state + p 3 pos + p 4 entity + p 5 fallDistance + m (DDDDD)Lnet/minecraft/class_265; method_66396 createCuboidZShape + p 0 sizeX + p 8 maxZ + p 6 minZ + p 4 maxY + p 2 minY + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;Lnet/minecraft/class_6017;)V method_41420 dropExperienceWhenMined + c Drops experience orbs. This should be called inside {@link AbstractBlock#onStacksDropped}\nafter {@code dropExperience} check. This does not drop experience orbs if {@code tool}\nis enchanted with silk touch or if {@link net.minecraft.world.GameRules#DO_TILE_DROPS doTileDrops}\nis turned off.\n\n@see AbstractBlock#onStacksDropped\n@see #dropExperience + p 2 pos + p 3 tool + c the tool used to break the block, or {@link ItemStack#EMPTY} for explosions + p 4 experience + p 1 world + m (Lnet/minecraft/class_1792;)Lnet/minecraft/class_2248; method_9503 getBlockFromItem + p 0 item + m ()F method_23349 getVelocityMultiplier + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2586;)Ljava/util/List; method_9562 getDroppedStacks + p 2 pos + p 1 world + p 3 blockEntity + p 0 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)V method_9596 method_9596 + p 2 stack + m ()F method_9520 getBlastResistance + m (Lnet/minecraft/class_2769;)Lnet/minecraft/class_2769; method_66407 method_66407 + p 0 property + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_9510 postProcessState + p 1 world + p 2 pos + p 0 state + m ()F method_9499 getSlipperiness + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)V method_9577 dropStack + p 0 world + p 1 pos + p 2 stack + m (DDDDDD)Lnet/minecraft/class_265; method_9541 createCuboidShape + p 6 maxX + p 4 minZ + p 2 minY + p 0 minX + p 10 maxZ + p 8 maxY + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_16361 hasTopRim + p 1 pos + p 0 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;I)V method_30094 replace + c Replaces the {@code state} with the {@code newState} at the {@code pos}.\n\n

If the two state objects are identical, this method does nothing.\n\n

If the new state {@linkplain BlockState#isAir() is air},\nbreaks the block at the position instead. + p 1 newState + c the new block state + p 2 world + c the world + p 3 pos + c the position of the replaced block state + p 4 flags + c the bitwise flags for {@link net.minecraft.world.ModifiableWorld#setBlockState(BlockPos, BlockState, int, int)} + p 0 state + c the existing block state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_33614 spawnBreakParticles + p 4 state + p 3 pos + p 2 player + p 1 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_9582 pushEntitiesUpBeforeBlockChange + c Pushes entities standing on a block up before changing the block to taller ones.\nWithout calling this, entities can fall through the block. This only needs to be called\nif the original block's height is smaller than 1 block.\n\n@return the passed new block state + p 2 world + p 3 pos + p 0 from + p 1 to + m ()Lnet/minecraft/class_6880$class_6883; method_40142 getRegistryEntry + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2769;)Lnet/minecraft/class_2680; method_34724 copyProperty + p 0 source + p 2 property + p 1 target + m (Lnet/minecraft/class_2688;Lnet/minecraft/class_2769;Ljava/lang/Object;)Lnet/minecraft/class_2688; method_66399 applyValueToState + p 1 property + p 0 state + p 2 value + m (Ljava/util/function/BiConsumer;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_72549 method_72549 + p 2 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5321;Lnet/minecraft/class_2680;Lnet/minecraft/class_2586;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;Ljava/util/function/BiConsumer;)Z method_72546 generateBlockInteractLoot + p 0 world + p 2 state + p 1 lootTable + p 4 tool + p 3 blockEntity + p 6 lootConsumer + p 5 interactingEntity + m (Lnet/minecraft/class_265;Lnet/minecraft/class_2350;)Z method_9501 isFaceFullSquare + p 0 shape + p 1 side + m ()Lnet/minecraft/class_2689; method_9595 getStateManager + m (Lnet/minecraft/class_2680;)V method_9590 setDefaultState + c Sets the default state of the block. This should be called inside\nthe block's constructor to override the default state chosen by the\nstate manager. + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2586;Lnet/minecraft/class_1297;Lnet/minecraft/class_1799;Lnet/minecraft/class_8567$class_8568;)Lnet/minecraft/class_8567; method_72548 method_72548 + p 4 context + m (DDD)Lnet/minecraft/class_265; method_66404 createColumnShape + p 4 maxY + p 2 minY + p 0 sizeXz + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1297;)V method_9591 onSteppedOn + c Called when an entity steps on this block.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}. + p 1 world + p 2 pos + p 3 state + p 4 entity + m (Lnet/minecraft/class_2680;)I method_9507 getRawIdFromState + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1959$class_1963;)V method_9504 precipitationTick + c Called randomly server-side on blocks with unobstructed sky access when it is\nraining or snowing. Like random ticks, only blocks within 128-block cylinder\n(i.e. ignoring Y coordinates) around players receive precipitation ticks. However,\nprecipitation ticks are unaffected by the {@link\nnet.minecraft.world.GameRules#RANDOM_TICK_SPEED randomTickSpeed} game rule, and {@link\nAbstractBlock.Settings#ticksRandomly} block setting is not required.\n\n

{@link LeveledCauldronBlock} uses this to fill the cauldron. + p 1 state + p 2 world + p 3 pos + p 4 precipitation + c the precipitation (snow or rain), including snow\nobservable on high altitude + m (Ljava/util/function/Function;[Lnet/minecraft/class_2769;)Ljava/util/function/Function; method_66403 createShapeFunction + p 2 properties + p 1 stateToShape + m (Lnet/minecraft/class_1750;)Lnet/minecraft/class_2680; method_9605 getPlacementState + p 1 ctx + m (Lnet/minecraft/class_265;)Z method_9614 isShapeFullCube + p 0 shape + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)V method_9587 method_9587 + p 2 stack + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_1297;)V method_9502 onEntityLand + c Called after the entity lands on the block.\n\n

Default implementation resets the entity's vertical velocity. Blocks that cause\nentities to jump (such as {@link SlimeBlock}) should override this.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}. + p 1 world + p 2 entity + m ()Z method_9543 hasDynamicBounds + m ()Lnet/minecraft/class_5250; method_9518 getName + m (Lnet/minecraft/class_2769;)Ljava/lang/Object; method_66400 method_66400 + p 0 property + m (DDDD)Lnet/minecraft/class_265; method_66405 createCuboidZShape + p 0 sizeX + p 2 sizeY + p 4 minZ + p 6 maxZ + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2586;Lnet/minecraft/class_1799;)V method_9556 afterBreak + c Called server-side when the block is broken by the player using correct tool.\nThis is called after {@link #onBroken} but has the tool requirement.\nBy default, this increments {@link net.minecraft.stat.Stats#MINED}, adds exhaustion\nto the player, and drops the block's item stacks.\n\n

Subclasses should override this if breaking the block causes another block to\nbe placed (like {@link IceBlock}) or if the block can break multiple times\n(like {@link TurtleEggBlock}). {@link BeehiveBlock} uses this to anger the bees if\nthe hive is mined without silk touch.\n\n@see #onBreak\n@see #onBroken\n@see AbstractBlock#onStacksDropped\n@see AbstractBlock#onStateReplaced + p 1 world + p 5 blockEntity + p 4 state + p 3 pos + p 2 player + p 6 tool + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_20044 sideCoversSmallSquare + p 0 world + p 1 pos + p 2 side + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_1799;)V method_36992 dropStack + p 0 world + p 1 pos + p 2 direction + p 3 stack + m (D)Lnet/minecraft/class_265; method_66393 createCubeShape + p 0 size + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_9497 dropStacks + p 1 world + p 0 state + p 2 pos +c net/minecraft/class_2248$1 net/minecraft/block/Block$1 + m (Lnet/minecraft/class_265;)Ljava/lang/Boolean; method_20516 load + m (Ljava/lang/Object;)Ljava/lang/Object; load load + p 1 shape +c net/minecraft/class_2248$2 net/minecraft/block/Block$2 + m (I)V rehash rehash + p 1 newN +c net/minecraft/class_2248$class_12132 net/minecraft/block/Block$SetBlockStateFlag +c net/minecraft/class_2248$class_9894 net/minecraft/block/Block$VoxelShapePair + f Lnet/minecraft/class_265; comp_2940 first + f Lnet/minecraft/class_265; comp_2941 second + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_265; comp_2941 second + m ()Lnet/minecraft/class_265; comp_2940 first + m (Lnet/minecraft/class_265;Lnet/minecraft/class_265;)V + p 1 first + p 2 second +c net/minecraft/class_3572 net/minecraft/world/chunk/light/ChunkSkyLightProvider + f Lnet/minecraft/class_8528; field_44747 defaultSkyLight + m (Lnet/minecraft/class_2823;Lnet/minecraft/class_3569;)V + p 1 chunkProvider + p 2 lightStorage + m (Lnet/minecraft/class_2350;II)Z method_51588 exitsChunkXZ + p 0 direction + p 2 localZ + p 1 localX + m (J)I method_51592 getNumberOfSectionsBelowPos + p 1 blockPos + m (I)Z method_51584 isMaxLightLevel + p 0 lightLevel + m (IIII)V method_51586 method_51586 + p 1 x + p 2 z + m (III)I method_51585 getSkyLightOrDefault + p 3 defaultValue + p 2 z + p 1 x + m (JLnet/minecraft/class_2350;IZI)V method_51587 method_51587 + p 1 blockPos + p 3 direction + p 4 lightLevel + m (II)Lnet/minecraft/class_8528; method_51589 getSkyLight + p 2 chunkZ + p 1 chunkX + m (IIII)V method_51591 method_51591 + p 1 x + p 2 z + m (Lnet/minecraft/class_2823;)V + p 1 chunkProvider +c net/minecraft/class_2241 net/minecraft/block/AbstractRailBlock + f Z field_9959 forbidCurves + f Lnet/minecraft/class_265; field_9958 STRAIGHT_SHAPE + f Lnet/minecraft/class_265; field_9960 ASCENDING_SHAPE + f Lnet/minecraft/class_2746; field_27096 WATERLOGGED + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1937;Lnet/minecraft/class_2768;)Z method_27935 shouldDropRail + c Checks if this rail should be dropped.\n\n

This method will return true if:\n

  • The rail block is ascending.
  • \n
  • The block in the direction of ascent does not have a top rim.
+ p 2 shape + p 1 world + p 0 pos + m (Lnet/minecraft/class_2768;Lnet/minecraft/class_2470;)Lnet/minecraft/class_2768; method_71014 rotateShape + p 1 shape + p 2 rotation + m (ZLnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 forbidCurves + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;)V method_9477 updateBlockState + p 1 state + p 2 world + p 3 pos + p 4 neighbor + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Z)Lnet/minecraft/class_2680; method_24417 updateCurves + p 1 state + p 3 pos + p 2 world + p 4 notify + m ()Z method_9478 cannotMakeCurves + m (Lnet/minecraft/class_2680;)Z method_9476 isRail + p 0 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_9479 isRail + p 0 world + p 1 pos + m (Lnet/minecraft/class_2768;Lnet/minecraft/class_2415;)Lnet/minecraft/class_2768; method_71013 mirrorShape + p 2 mirror + p 1 shape + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Z)Lnet/minecraft/class_2680; method_9475 updateBlockState + p 1 world + p 2 pos + p 3 state + p 4 forceUpdate + m ()Lnet/minecraft/class_2769; method_9474 getShapeProperty +c net/minecraft/class_3573 net/minecraft/datafixer/fix/BlockEntityJukeboxFix +c net/minecraft/class_2242 net/minecraft/block/BeetrootsBlock + f Lnet/minecraft/class_2758; field_9962 AGE + f I field_31013 BEETROOTS_MAX_AGE + f Lcom/mojang/serialization/MapCodec; field_46275 CODEC + f [Lnet/minecraft/class_265; field_9961 SHAPES_BY_AGE + m (I)Lnet/minecraft/class_265; method_66390 method_66390 + p 0 age +c net/minecraft/class_3574 net/minecraft/datafixer/fix/BlockEntityKeepPackedFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15579 keepPacked +c net/minecraft/class_2243 net/minecraft/command/argument/TeamArgumentType + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9963 UNKNOWN_TEAM_EXCEPTION + f Ljava/util/Collection; field_9964 EXAMPLES + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_268; method_9480 getTeam + p 1 name + p 0 context + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; method_9483 parse + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9481 method_9481 + p 0 name + m ()Lnet/minecraft/class_2243; method_9482 team + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder +c net/minecraft/class_3575 net/minecraft/datafixer/fix/BlockEntityShulkerBoxColorFix +c net/minecraft/class_2244 net/minecraft/block/BedBlock + f Lnet/minecraft/class_2746; field_9968 OCCUPIED + f Lnet/minecraft/class_2754; field_9967 PART + f Ljava/util/Map; field_55732 SHAPES_BY_DIRECTION + f Lcom/mojang/serialization/MapCodec; field_46273 CODEC + f Lnet/minecraft/class_1767; field_9966 color + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_22357 wakeVillager + c Wakes up a sleeping villager at {@code pos}, if any.\n\n@return whether a villager was found + p 2 pos + p 1 world + m ()Lnet/minecraft/class_1767; method_9487 getColor + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_2561;)V method_75743 method_75743 + p 1 message + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 color + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1941;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;F)Ljava/util/Optional; method_9484 findWakeUpPosition + p 0 type + p 4 spawnAngle + p 3 bedDirection + p 2 pos + p 1 world + m (Lnet/minecraft/class_2742;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2350; method_9488 getDirectionTowardsOtherPart + p 1 direction + p 0 part + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_4732$class_4733; method_24164 getBedPart + p 0 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_30839 isBedBelow + p 0 world + p 1 pos + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1657$class_1658;)V method_55767 method_55767 + p 1 reason + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;)[[I method_30838 getAroundAndOnBedOffsets + p 1 respawnDirection + p 0 bedDirection + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1941;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;)Ljava/util/Optional; method_30835 findWakeUpPosition + p 4 respawnDirection + p 3 bedDirection + p 2 pos + p 1 world + p 0 type + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2350; method_18476 getDirection + p 0 world + p 1 pos + m (Lnet/minecraft/class_1297;)V method_21838 bounceEntity + p 1 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53978 method_53978 + p 0 instance + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2350; method_24163 getOppositePartDirection + p 0 state + m (Lnet/minecraft/class_2350;)[[I method_30837 getOnBedOffsets + p 0 bedDirection + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;)[[I method_30840 getAroundBedOffsets + p 1 respawnDirection + p 0 bedDirection + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1941;Lnet/minecraft/class_2338;[[IZ)Ljava/util/Optional; method_30836 findWakeUpPosition + p 3 possibleOffsets + p 4 ignoreInvalidPos + p 1 world + p 2 pos + p 0 type +c net/minecraft/class_3569 net/minecraft/world/chunk/light/SkyLightStorage + m (Lnet/minecraft/class_2823;)V + p 1 chunkProvider + m (JZ)I method_31931 getLight + p 3 cached + p 1 blockPos + m (I)Z method_15567 isAboveMinHeight + p 1 sectionY + m ()I method_51593 getMinSectionY + m (J)Z method_15568 isAtOrAboveTopmostSection + p 1 sectionPos + m (Lnet/minecraft/class_2804;)Lnet/minecraft/class_2804; method_37460 copy + p 0 source + m (J)I method_51594 getTopSectionForColumn + p 1 columnPos +c net/minecraft/class_3569$class_3570 net/minecraft/world/chunk/light/SkyLightStorage$Data + f Lit/unimi/dsi/fastutil/longs/Long2IntOpenHashMap; field_15821 columnToTopSection + f I field_15822 minSectionY + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;Lit/unimi/dsi/fastutil/longs/Long2IntOpenHashMap;I)V + p 3 minSectionY + p 2 columnToTopSection + p 1 arrays + m ()Lnet/minecraft/class_3569$class_3570; method_15572 copy +c net/minecraft/class_2238 net/minecraft/block/BeaconBlock + f Lcom/mojang/serialization/MapCodec; field_46272 CODEC +c net/minecraft/class_2239 net/minecraft/command/argument/ScoreboardSlotArgumentType + f Ljava/util/Collection; field_9953 EXAMPLES + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9954 INVALID_SLOT_EXCEPTION + m ()Lnet/minecraft/class_2239; method_9468 scoreboardSlot + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_8646; method_9465 getScoreboardSlot + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9467 method_9467 + p 0 name + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_8646; method_9466 parse + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder +c net/minecraft/util/profiling/jfr/event/ChunkGenerationEvent net/minecraft/util/profiling/jfr/event/ChunkGenerationEvent + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_5321;Ljava/lang/String;)V + p 3 targetStatus + p 2 world + p 1 chunkPos +c net/minecraft/util/profiling/jfr/event/ChunkGenerationEvent$class_6602 net/minecraft/util/profiling/jfr/event/ChunkGenerationEvent$Names + f Ljava/lang/String; field_34859 STATUS + f Ljava/lang/String; field_34856 WORLD_POS_Z + f Ljava/lang/String; field_34855 WORLD_POS_X + f Ljava/lang/String; field_34858 CHUNK_POS_Z + f Ljava/lang/String; field_34857 CHUNK_POS_X + f Ljava/lang/String; field_34861 LEVEL +c net/minecraft/class_2212 net/minecraft/command/argument/NbtElementArgumentType + f Lnet/minecraft/class_10846; field_57831 PARSER + f Ljava/util/Collection; field_9918 EXAMPLES + m ()Lnet/minecraft/class_2212; method_9389 nbtElement + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2520; method_9390 getNbtElement + p 1 name + p 0 context +c net/minecraft/class_3543 net/minecraft/util/math/noise/OctaveSimplexNoiseSampler + f D field_20661 persistence + f D field_20662 lacunarity + f [Lnet/minecraft/class_3541; field_15770 octaveSamplers + m (Lnet/minecraft/class_5819;Ljava/util/List;)V + p 1 random + p 2 octaves + m (Lnet/minecraft/class_5819;Lit/unimi/dsi/fastutil/ints/IntSortedSet;)V + p 2 octaves + p 1 random + m (DDZ)D method_16451 sample + p 1 x + p 3 y + p 5 useOrigin +c net/minecraft/class_4875 net/minecraft/client/realms/dto/RealmsDescriptionDto + f Ljava/lang/String; comp_5007 name + f Ljava/lang/String; comp_5008 description + m (Ljava/lang/String;Ljava/lang/String;)V + p 2 description + p 1 name + m ()Ljava/lang/String; comp_5007 name + m ()Ljava/lang/String; comp_5008 description +c net/minecraft/class_3544 net/minecraft/util/StringHelper + c Contains string-related helper methods. + f Ljava/util/regex/Pattern; field_29204 LINE_BREAK + f Ljava/util/regex/Pattern; field_33559 ENDS_WITH_LINE_BREAK + f Ljava/util/regex/Pattern; field_15771 FORMATTING_CODE + m (Ljava/lang/String;)I method_34238 countLines + c {@return the number of linebreaks in {@code text}}\n\n

A linebreak is either a CRLF sequence or a vertical tab (U+000B). + p 0 text + m (Ljava/lang/String;)Ljava/lang/String; method_57180 stripInvalidChars + c {@return {@code string} with all {@linkplain #isValidChar invalid characters},\nincluding linebreak ({@code \\n}), removed} + p 0 string + m (Ljava/lang/String;)Z method_57179 isValidPlayerName + p 0 name + m (Ljava/lang/String;Z)Ljava/lang/String; method_57177 stripInvalidChars + c {@return {@code string} with all {@linkplain #isValidChar invalid characters}\nremoved} + p 1 allowLinebreak + p 0 string + m (Ljava/lang/String;)Ljava/lang/String; method_43681 truncateChat + c {@return {@code text} truncated to at most 256 characters without ellipsis}\n\n@apiNote This is used when sending chat messages. + p 0 text + m (I)Z method_57176 isWhitespace + p 0 c + m (I)Z method_57178 method_57178 + p 0 c + m (IF)Ljava/lang/String; method_15439 formatTicks + c {@return the length of the {@code tick} in the MM:SS format, where\nthe MM is the minutes and SS is the seconds (optionally zero-padded)} + p 1 tickRate + p 0 ticks + m (Ljava/lang/String;)Ljava/lang/String; method_15440 stripTextFormat + c {@return the {@code text} with all formatting codes removed}\n\n

A formatting code is the character {@code §} followed by\na numeric character or a letter A to F, K to O, or R.\n\n@see Formatting#strip + p 0 text + m (I)Z method_57175 isValidChar + c {@return whether {@code c} is a valid character}\n\n

Characters are valid if they are not an ASCII control code or {@code §}. + p 0 c + m (Ljava/lang/String;IZ)Ljava/lang/String; method_34963 truncate + c {@return {@code text} truncated to at most {@code maxLength} characters,\noptionally with ellipsis} + p 0 text + p 2 addEllipsis + p 1 maxLength + m (Ljava/lang/String;)Z method_36358 endsWithLineBreak + c {@return true if {@code text} ends with a linebreak, false otherwise}\n\n

A linebreak is either a CRLF sequence or a vertical tab (U+000B). + p 0 text + m (Ljava/lang/String;)Z method_15438 isEmpty + c {@return true if {@code text} is {@code null} or empty, false otherwise} + p 0 text + m (Ljava/lang/String;)Z method_57181 isBlank + p 0 string +c net/minecraft/class_4874 net/minecraft/client/realms/dto/PlayerInfo + f Z field_22592 operator + f Z field_22593 accepted + f Ljava/lang/String; field_22590 name + f Z field_22594 online + f Ljava/util/UUID; field_22591 uuid +c net/minecraft/class_2213 net/minecraft/block/BarrierBlock + f Lcom/mojang/serialization/MapCodec; field_46266 CODEC + f Lnet/minecraft/class_2746; field_45144 WATERLOGGED +c net/minecraft/class_2214 net/minecraft/command/argument/ScoreboardObjectiveArgumentType + f Ljava/util/Collection; field_9919 EXAMPLES + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9922 UNKNOWN_OBJECTIVE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9921 READONLY_OBJECTIVE_EXCEPTION + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9392 method_9392 + p 0 name + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; method_9396 parse + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9397 method_9397 + p 0 name + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_266; method_9393 getWritableObjective + p 1 name + p 0 context + m ()Lnet/minecraft/class_2214; method_9391 scoreboardObjective + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_266; method_9395 getObjective + p 1 name + p 0 context +c net/minecraft/class_3545 net/minecraft/util/Pair + f Ljava/lang/Object; field_15773 right + f Ljava/lang/Object; field_15772 left + m (Ljava/lang/Object;)V method_34965 setRight + p 1 right + m (Ljava/lang/Object;)V method_34964 setLeft + p 1 left + m (Ljava/lang/Object;Ljava/lang/Object;)V + p 2 right + p 1 left + m ()Ljava/lang/Object; method_15441 getRight + m ()Ljava/lang/Object; method_15442 getLeft +c net/minecraft/class_4877 net/minecraft/client/realms/dto/RealmsServer + f Lnet/minecraft/class_4877$class_4320; field_22603 state + f Ljava/util/List; field_60203 emptySlots + f J field_22599 id + f Ljava/lang/String; field_22604 owner + f Ljava/lang/String; field_22600 remoteSubscriptionId + f Lnet/minecraft/class_4877$class_8842; field_46695 compatibility + f I field_46696 NO_PARENT + f Ljava/util/List; field_22606 players + f Z field_22609 expiredTrial + f Lorg/slf4j/Logger; field_22617 LOGGER + f Ljava/lang/String; field_22615 minigameImage + f I field_54808 gameMode + f I field_22614 minigameId + f I field_22610 daysLeft + f Ljava/lang/String; field_46693 parentWorldName + f Z field_54807 hardcore + f Ljava/lang/String; field_22602 description + f Ljava/lang/String; field_46694 activeVersion + f Lnet/minecraft/class_4877$class_4321; field_22611 worldType + f J field_46692 parentWorldId + f Ljava/util/UUID; field_22605 ownerUUID + f Ljava/lang/String; field_22613 minigameName + f Ljava/lang/String; field_22601 name + f Lnet/minecraft/class_2561; field_60860 REALM_CLOSED_TEXT + f Lnet/minecraft/class_11310; field_60204 regionSelectionPreference + f I field_22612 activeSlot + f Ljava/util/Map; field_22607 slots + f Z field_22608 expired + m (Ljava/util/Map;)Ljava/util/Map; method_25061 cloneSlots + p 1 slots + m ()Z method_54363 isCompatible + m ()Lnet/minecraft/class_4877; method_25067 copy + m ()Z method_54367 isPrerelease + m (Lnet/minecraft/class_4877;)V method_71176 replaceNullsWithDefaults + p 0 server + m ()Z method_60315 isMinigame + m (Lnet/minecraft/class_4877;Lnet/minecraft/class_11306;)V method_71177 method_71177 + p 1 slot + m (Lnet/minecraft/class_4877;)V method_25058 sortInvited + p 0 server + m ()Ljava/util/List; method_25069 getEmptySlots + m ()Ljava/lang/String; method_25062 getName + m (I)Ljava/lang/String; method_25054 getWorldName + p 1 slotId + m ()Z method_54364 needsUpgrade + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_4874;Lnet/minecraft/class_4874;)I method_25057 method_25057 + p 0 a + p 1 b + m (Ljava/lang/String;)V method_25060 setName + p 1 name + m (Ljava/lang/String;)Lnet/minecraft/class_642; method_31403 createServerInfo + p 1 address + m (Ljava/lang/String;)V method_25064 setDescription + p 1 description + m ()Ljava/lang/String; method_25053 getDescription + m ()Ljava/lang/String; method_25065 getMinigameName + m ()Z method_54365 needsDowngrade + m ()Z method_71972 shouldAllowPlay + m (Lnet/minecraft/class_4877;)V method_71178 populateSlots + p 0 server + m ()Z method_71973 isPlayerOwner + m (Lnet/minecraft/class_4869;Ljava/lang/String;)Lnet/minecraft/class_4877; method_25066 parse + p 1 json + p 0 gson +c net/minecraft/class_4877$class_8842 net/minecraft/client/realms/dto/RealmsServer$Compatibility + f Lnet/minecraft/class_4877$class_8842; field_51817 RELEASE_TYPE_INCOMPATIBLE + f Lnet/minecraft/class_4877$class_8842; field_46699 NEEDS_DOWNGRADE + f Lnet/minecraft/class_4877$class_8842; field_46697 UNVERIFIABLE + f Lnet/minecraft/class_4877$class_8842; field_46698 INCOMPATIBLE + f Lnet/minecraft/class_4877$class_8842; field_46700 NEEDS_UPGRADE + f Lnet/minecraft/class_4877$class_8842; field_46701 COMPATIBLE + m ()Z method_54569 needsUpgrade + m ()Z method_54568 isCompatible + m ()Z method_54570 needsDowngrade +c net/minecraft/class_4877$class_4320 net/minecraft/client/realms/dto/RealmsServer$State + f Lnet/minecraft/class_4877$class_4320; field_19433 CLOSED + f Lnet/minecraft/class_4877$class_4320; field_19434 OPEN + f Lnet/minecraft/class_4877$class_4320; field_19435 UNINITIALIZED + m (Ljava/lang/String;)Lnet/minecraft/class_4877$class_4320; valueOf valueOf + p 0 name +c net/minecraft/class_4877$class_4321 net/minecraft/client/realms/dto/RealmsServer$WorldType + f Lnet/minecraft/class_4877$class_4321; field_19440 EXPERIENCE + f Lnet/minecraft/class_4877$class_4321; field_19441 INSPIRATION + f Lnet/minecraft/class_2561; field_63824 text + f Lnet/minecraft/class_4877$class_4321; field_19437 NORMAL + f Ljava/lang/String; field_63823 TRANSLATION_KEY_PREFIX + f Lnet/minecraft/class_4877$class_4321; field_19438 MINIGAME + f Lnet/minecraft/class_4877$class_4321; field_19439 ADVENTUREMAP + f Lnet/minecraft/class_4877$class_4321; field_63822 UNKNOWN + m ()Lnet/minecraft/class_2561; method_75753 getText + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m (Ljava/lang/String;)Lnet/minecraft/class_4877$class_4321; valueOf valueOf + p 0 name +c net/minecraft/class_4877$class_4319 net/minecraft/client/realms/dto/RealmsServer$McoServerComparator + f Ljava/lang/String; field_19432 refOwner + m (Lnet/minecraft/class_4877;Lnet/minecraft/class_4877;)I method_20830 compare + m (Ljava/lang/String;)V + p 1 owner + m (Ljava/lang/Object;Ljava/lang/Object;)I compare compare + p 1 one + p 2 two +c net/minecraft/class_4876 net/minecraft/client/realms/dto/RealmsNews + f Ljava/lang/String; comp_5009 newsLink + f Lorg/slf4j/Logger; field_22598 LOGGER + m ()Ljava/lang/String; comp_5009 newsLink + m (Ljava/lang/String;)Lnet/minecraft/class_4876; method_25052 parse + p 0 json + m (Ljava/lang/String;)V + p 1 newsLink +c net/minecraft/class_2215 net/minecraft/block/BannerBlock + f Lcom/mojang/serialization/MapCodec; field_46264 CODEC + f Lnet/minecraft/class_265; field_9923 SHAPE + f Lnet/minecraft/class_2758; field_9924 ROTATION + f Ljava/util/Map; field_9925 COLORED_BANNERS + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_2248; method_9398 getForColor + p 0 color + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53977 method_53977 + p 0 instance +c net/minecraft/class_4871 net/minecraft/client/realms/dto/PendingInvite + f Ljava/lang/String; comp_4999 invitationId + f Ljava/lang/String; comp_5000 worldName + f Ljava/lang/String; comp_5001 worldOwnerName + f Ljava/time/Instant; comp_5003 date + f Ljava/util/UUID; comp_5002 worldOwnerUuid + f Lorg/slf4j/Logger; field_22585 LOGGER + m ()Ljava/lang/String; comp_4999 invitationId + m ()Ljava/lang/String; comp_5000 worldName + m ()Ljava/lang/String; comp_5001 worldOwnerName + m ()Ljava/time/Instant; comp_5003 date + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_4871; method_25040 parse + p 0 json + m ()Ljava/util/UUID; comp_5002 worldOwnerUuid + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/UUID;Ljava/time/Instant;)V + p 1 invitationId + p 2 worldName + p 3 worldOwnerName + p 4 worldOwnerUuid + p 5 date +c net/minecraft/class_3540 net/minecraft/util/math/Smoother + f D field_15760 actualSum + f D field_15758 movementLatency + f D field_15759 smoothedSum + m (DD)D method_15429 smooth + p 3 smoother + p 1 original + m ()V method_15428 clear +c net/minecraft/class_4870 net/minecraft/client/realms/dto/Ops + f Ljava/util/Set; comp_4998 ops + m (Ljava/lang/String;)Lnet/minecraft/class_4870; method_25039 parse + p 0 json + m ()Ljava/util/Set; comp_4998 ops + m (Ljava/util/Set;)V + p 1 ops +c net/minecraft/class_3541 net/minecraft/util/math/noise/SimplexNoiseSampler + f D field_15761 originZ + f [[I field_15766 GRADIENTS + f D field_15764 SQRT_3 + f D field_15762 originY + f D field_15763 originX + f [I field_15765 permutation + f D field_15768 SKEW_FACTOR_2D + f D field_15767 UNSKEW_FACTOR_2D + m (DD)D method_15433 sample + p 1 x + p 3 y + m (DDD)D method_22416 sample + p 1 x + p 3 y + p 5 z + m (IDDDD)D method_16455 grad + p 1 hash + p 2 x + p 8 distance + p 4 y + p 6 z + m (Lnet/minecraft/class_5819;)V + p 1 random + m ([IDDD)D method_15431 dot + p 1 x + p 0 gradient + p 5 z + p 3 y + m (I)I method_16456 map + p 1 input +c net/minecraft/class_4873 net/minecraft/client/realms/dto/PingResult + f Ljava/util/List; comp_5005 pingResults + f Ljava/util/List; comp_5006 worldIds + m ()Ljava/util/List; comp_5005 pingResults + m ()Ljava/util/List; comp_5006 worldIds + m (Ljava/util/List;Ljava/util/List;)V + p 1 pingResults + p 2 worldIds +c net/minecraft/class_3542 net/minecraft/util/StringIdentifiable + c An interface, usually implemented by enums, that allows the object to be serialized\nby codecs. An instance is identified using a string.\n\n@apiNote To make an enum serializable with codecs, implement this on the enum class,\nimplement {@link #asString} to return a unique ID, and add a {@code static final}\nfield that holds {@linkplain #createCodec the codec for the enum}. + f I field_38377 CACHED_MAP_THRESHOLD + m ([Ljava/lang/Object;Ljava/util/function/Function;)Ljava/util/function/Function; method_53953 createMapper + p 0 values + p 1 valueNameTransformer + m (Ljava/util/function/Function;Ljava/lang/Enum;)Ljava/lang/String; method_74544 method_74544 + p 1 enum_ + m (Ljava/util/function/Supplier;Ljava/util/function/Function;)Lnet/minecraft/class_3542$class_7292; method_49454 createCodec + c Creates a codec that serializes an enum implementing this interface either\nusing its ordinals (when compressed) or using its {@link #asString()} method\nand a given decode function. + p 0 enumValues + p 1 valueNameTransformer + m (Ljava/util/function/Supplier;)Lcom/mojang/serialization/Codec; method_53955 createBasicCodec + p 0 values + m ([Lnet/minecraft/class_3542;)Ljava/util/function/Function; method_74545 createMapper + p 0 values + m ([Ljava/lang/Object;Ljava/util/function/Function;Ljava/lang/String;)Ljava/lang/Object; method_74546 method_74546 + p 2 name + m (Ljava/lang/String;)Ljava/lang/String; method_49451 method_49451 + p 0 id + m ()Ljava/lang/String; method_15434 asString + c {@return the unique string representation of the enum, used for serialization} + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_3542$class_7292; method_28140 createCodec + c Creates a codec that serializes an enum implementing this interface either\nusing its ordinals (when compressed) or using its {@link #asString()} method. + p 0 enumValues + m ([Lnet/minecraft/class_3542;)Lcom/mojang/serialization/Keyable; method_28142 toKeyable + p 0 values +c net/minecraft/class_3542$class_8808 net/minecraft/util/StringIdentifiable$BasicCodec + f Lcom/mojang/serialization/Codec; field_46245 codec + m (Lnet/minecraft/class_3542;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_53956 encode + m ([Lnet/minecraft/class_3542;Ljava/util/function/Function;Ljava/util/function/ToIntFunction;)V + p 3 identifiableToOrdinal + p 1 values + p 2 idToIdentifiable + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decode decode + p 2 input + p 1 ops + m ([Lnet/minecraft/class_3542;I)Lnet/minecraft/class_3542; method_53957 method_53957 + p 1 ordinal + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode encode + p 1 input + p 3 prefix + p 2 ops +c net/minecraft/class_3542$1 net/minecraft/util/StringIdentifiable$1 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/stream/Stream; keys keys + p 1 ops +c net/minecraft/class_3542$class_7292 net/minecraft/util/StringIdentifiable$EnumCodec + f Ljava/util/function/Function; field_38379 idToIdentifiable + m (Ljava/lang/String;Ljava/lang/Enum;)Ljava/lang/Enum; method_47920 byId + p 2 fallback + p 1 id + m ([Ljava/lang/Enum;Ljava/util/function/Function;)V + p 1 values + p 2 idToIdentifiable + m (Ljava/lang/String;)Ljava/lang/Enum; method_42633 byId + p 1 id + m (Ljava/lang/String;Ljava/util/function/Supplier;)Ljava/lang/Enum; method_64604 byId + p 1 id + p 2 fallbackSupplier + m (Ljava/lang/Object;)I method_42632 method_42632 + p 0 enum_ +c net/minecraft/class_4872 net/minecraft/client/realms/dto/PendingInvitesList + f Ljava/util/List; comp_5004 pendingInvites + f Lorg/slf4j/Logger; field_22587 LOGGER + m (Ljava/lang/String;)Lnet/minecraft/class_4872; method_25041 parse + p 0 json + m ()Ljava/util/List; comp_5004 pendingInvites + m (Ljava/util/List;)V + p 1 pendingInvites +c net/minecraft/class_2211 net/minecraft/block/BambooBlock + f Lnet/minecraft/class_2758; field_9914 AGE + f Lnet/minecraft/class_2754; field_9917 LEAVES + f Lnet/minecraft/class_2758; field_9916 STAGE + f Lnet/minecraft/class_265; field_9915 LARGE_LEAVES_SHAPE + f Lnet/minecraft/class_265; field_9912 SMALL_LEAVES_SHAPE + f Lnet/minecraft/class_265; field_9913 NO_LEAVES_SHAPE + f Lcom/mojang/serialization/MapCodec; field_46263 CODEC + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)I method_9386 countBambooBelow + p 1 world + p 2 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;I)V method_9385 updateLeaves + p 5 height + p 4 random + p 3 pos + p 2 world + p 1 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)I method_9387 countBambooAbove + p 1 world + p 2 pos +c net/minecraft/class_3536 net/minecraft/util/ProgressListener + m (I)V method_15410 progressStagePercentage + p 1 percentage + m (Lnet/minecraft/class_2561;)V method_15413 setTitleAndTask + p 1 title + m (Lnet/minecraft/class_2561;)V method_15414 setTask + p 1 task + m ()V method_15411 setDone + m (Lnet/minecraft/class_2561;)V method_15412 setTitle + p 1 title +c net/minecraft/class_4868 net/minecraft/client/realms/dto/BackupList + f Lorg/slf4j/Logger; field_22577 LOGGER + f Ljava/util/List; comp_4997 backups + m (Ljava/lang/String;)Lnet/minecraft/class_4868; method_25036 parse + p 0 json + m ()Ljava/util/List; comp_4997 backups + m (Ljava/util/List;)V + p 1 backups +c net/minecraft/class_3537 net/minecraft/util/math/noise/OctavePerlinNoiseSampler + f D field_20660 lacunarity + f I field_34758 firstOctave + f Lit/unimi/dsi/fastutil/doubles/DoubleList; field_26445 amplitudes + f D field_20659 persistence + f [Lnet/minecraft/class_3756; field_15744 octaveSamplers + f D field_36632 maxValue + m (Lnet/minecraft/class_5819;Lcom/mojang/datafixers/util/Pair;Z)V + p 3 xoroshiro + p 2 firstOctaveAndAmplitudes + p 1 random + m (Lit/unimi/dsi/fastutil/ints/IntSortedSet;)Lcom/mojang/datafixers/util/Pair; method_30848 calculateAmplitudes + p 0 octaves + m (D)D method_16452 maintainPrecision + p 0 value + m (D)D method_40557 getTotalAmplitude + p 1 scale + m ()I method_38477 getFirstOctave + m ()Lit/unimi/dsi/fastutil/doubles/DoubleList; method_38478 getAmplitudes + m (Lnet/minecraft/class_5819;Ljava/util/List;)Lnet/minecraft/class_3537; method_39127 create + p 0 random + p 1 octaves + m (I)Lnet/minecraft/class_3756; method_16668 getOctave + p 1 octave + m (Lnet/minecraft/class_5819;ILit/unimi/dsi/fastutil/doubles/DoubleList;)Lnet/minecraft/class_3537; method_30847 create + p 0 random + p 1 offset + p 2 amplitudes + m (Lnet/minecraft/class_5819;ID[D)Lnet/minecraft/class_3537; method_35480 create + p 0 random + p 1 offset + p 2 firstAmplitude + p 4 amplitudes + m (Lnet/minecraft/class_5819;)V method_34401 skipCalls + p 0 random + m (Ljava/lang/Double;)Z method_39131 method_39131 + p 0 amplitude + m (Lnet/minecraft/class_5819;Ljava/util/stream/IntStream;)Lnet/minecraft/class_3537; method_39128 create + p 1 octaves + p 0 random + m (Ljava/lang/StringBuilder;)V method_39130 addDebugInfo + p 1 info + m ()D method_40555 getMaxValue + m (DDDDDZ)D method_16453 sample + p 3 y + p 5 z + p 1 x + p 11 useOrigin + p 7 yScale + p 9 yMax + m (Lnet/minecraft/class_5819;ILit/unimi/dsi/fastutil/doubles/DoubleList;)Lnet/minecraft/class_3537; method_39126 createLegacy + p 2 amplitudes + p 0 random + p 1 offset + m (DDD)D method_15416 sample + p 3 y + p 5 z + p 1 x + m (Lnet/minecraft/class_5819;Ljava/util/stream/IntStream;)Lnet/minecraft/class_3537; method_39187 createLegacy + p 1 octaves + p 0 random +c net/minecraft/class_4867 net/minecraft/client/realms/dto/Backup + f J field_22571 size + f Lorg/slf4j/Logger; field_22574 LOGGER + f Z field_22575 uploadedVersion + f Ljava/time/Instant; field_22570 lastModifiedDate + f Ljava/util/Map; field_22572 metadata + f Ljava/util/Map; field_22573 changeList + f Ljava/lang/String; field_22569 backupId + m (Lcom/google/gson/JsonElement;)Lnet/minecraft/class_4867; method_25033 parse + p 0 node + m ()Ljava/time/ZonedDateTime; method_75912 getLastModifiedTime + m (Ljava/lang/String;Ljava/time/Instant;JLjava/util/Map;)V + p 1 backupId + p 3 size + p 2 lastModifiedDate + p 5 metadata +c net/minecraft/class_4869 net/minecraft/client/realms/CheckedGson + c Checks so that only intended pojos are passed to the GSON (handles\nserialization after obfuscation). + f Lcom/google/gson/ExclusionStrategy; field_60174 EXCLUSION_STRATEGY + f Lcom/google/gson/Gson; field_22578 GSON + m (Ljava/lang/String;Ljava/lang/Class;)Lnet/minecraft/class_4885; method_25038 fromJson + p 2 type + p 1 json + m (Lcom/google/gson/JsonElement;)Ljava/lang/String; method_49573 toJson + p 1 json + m (Lnet/minecraft/class_4885;)Ljava/lang/String; method_25037 toJson + p 1 serializable +c net/minecraft/class_4869$1 net/minecraft/client/realms/CheckedGson$1 + m (Lcom/google/gson/FieldAttributes;)Z shouldSkipField shouldSkipField + p 1 fieldAttributes + m (Ljava/lang/Class;)Z shouldSkipClass shouldSkipClass + p 1 clazz +c net/minecraft/class_3554 net/minecraft/world/chunk/light/LevelPropagator + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; field_15784 pendingUpdates + f Lnet/minecraft/class_8257; field_43396 pendingUpdateQueue + f I field_31706 MAX_LEVEL + f I field_15783 levelCount + f Z field_15782 hasPendingUpdates + m ()I method_24208 getPendingUpdateCount + m (JJIZ)V method_15484 propagateLevel + p 3 targetId + p 1 sourceId + p 5 level + p 6 decrease + m (JI)V method_15485 setLevel + p 1 id + p 3 level + m ()Z method_15489 hasPendingUpdates + m (J)Z method_15494 isMarker + p 1 id + m (III)V + p 3 expectedTotalSize + p 2 expectedLevelSize + p 1 levelCount + m (Ljava/util/function/LongPredicate;)V method_24206 removePendingUpdateIf + p 1 predicate + m (JJIIIZ)V method_15482 updateLevel + p 1 sourceId + p 3 id + p 6 currentLevel + p 5 level + p 8 decrease + m (JJI)I method_15488 getPropagatedLevel + p 1 sourceId + p 5 level + p 3 targetId + m (J)V method_15491 resetLevel + p 1 id + m (J)V method_15483 removePendingUpdate + p 1 id + m (JJI)I method_15486 recalculateLevel + p 3 excludedId + p 1 id + p 5 maxLevel + m (J)I method_15480 getLevel + p 1 id + m (I)I method_15492 applyPendingUpdates + p 1 maxSteps + m (JJIZ)V method_15478 updateLevel + p 6 decrease + p 5 level + p 3 id + p 1 sourceId + m (II)I method_50014 calculateLevel + p 2 b + p 1 a + m (JIZ)V method_15487 propagateLevel + p 1 id + p 4 decrease + p 3 level +c net/minecraft/class_3554$1 net/minecraft/world/chunk/light/LevelPropagator$1 + m (I)V rehash rehash + p 1 newN +c net/minecraft/class_2223 net/minecraft/command/argument/ParticleEffectArgumentType + f Lnet/minecraft/class_2522; field_58144 SNBT_READER + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9936 UNKNOWN_PARTICLE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_51438 INVALID_OPTIONS_EXCEPTION + f Lnet/minecraft/class_7225$class_7874; field_48929 registries + f Ljava/util/Collection; field_9935 EXAMPLES + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_2394; method_9418 readParameters + p 0 reader + p 1 registries + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9419 method_9419 + p 0 id + m (Lnet/minecraft/class_7157;)V + p 1 registryAccess + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_2223; method_9417 particleEffect + p 0 registryAccess + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2394; method_9416 parse + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_59751 method_59751 + p 0 error + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lnet/minecraft/class_2522;Lcom/mojang/brigadier/StringReader;Lnet/minecraft/class_2396;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_2394; method_9420 readParameters + p 2 particleType + p 1 reader + p 3 registries + p 0 snbtReader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2394; method_9421 getParticle + p 1 name + p 0 context + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/class_7225;)Lnet/minecraft/class_2396; method_45583 getType + p 1 registryWrapper + p 0 reader + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder +c net/minecraft/class_4886 net/minecraft/client/realms/dto/RegionPingResult + f Ljava/lang/String; comp_5028 regionName + f I comp_5029 ping + m (Ljava/lang/String;I)V + p 2 ping + p 1 regionName + m ()Ljava/lang/String; comp_5028 regionName + m ()I comp_5029 ping +c net/minecraft/class_3555 net/minecraft/datafixer/fix/AdvancementsFix + f Ljava/util/Map; field_15788 RENAMED_ADVANCEMENTS +c net/minecraft/class_2224 net/minecraft/command/argument/NumberRangeArgumentType + m ()Lnet/minecraft/class_2224$class_2227; method_9422 intRange + m ()Lnet/minecraft/class_2224$class_2225; method_30918 floatRange +c net/minecraft/class_2224$class_2225 net/minecraft/command/argument/NumberRangeArgumentType$FloatRangeArgumentType + f Ljava/util/Collection; field_9937 EXAMPLES + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2096$class_2099; method_9423 parse + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2096$class_2099; method_35738 getRangeArgument + p 1 name + p 0 context +c net/minecraft/class_2224$class_2227 net/minecraft/command/argument/NumberRangeArgumentType$IntRangeArgumentType + f Ljava/util/Collection; field_9938 EXAMPLES + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2096$class_2100; method_9425 getRangeArgument + p 1 name + p 0 context + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2096$class_2100; method_9426 parse + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader +c net/minecraft/class_4885 net/minecraft/client/realms/RealmsSerializable + c A marker interface for Gson serializable pojos; the implementers make\nsure that they have {@code SerializedName} annotation on all their\ndata fields so serialization works after obfuscation, and save/load of\nsuch objects are controlled through another serializer. +c net/minecraft/class_3556 net/minecraft/world/chunk/ChunkToNibbleArrayMap + f [Lnet/minecraft/class_2804; field_15790 cacheArrays + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; field_15791 arrays + f Z field_16447 cacheEnabled + f [J field_15789 cachePositions + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;)V + p 1 arrays + m ()Lnet/minecraft/class_3556; method_15504 copy + m (J)Lnet/minecraft/class_2804; method_15501 get + p 1 chunkPos + m (J)Lnet/minecraft/class_2804; method_15502 replaceWithCopy + p 1 pos + m (J)Lnet/minecraft/class_2804; method_15500 removeChunk + p 1 chunkPos + m (JLnet/minecraft/class_2804;)V method_15499 put + p 1 pos + p 3 data + m ()V method_15505 clearCache + m (J)Z method_15503 containsKey + p 1 chunkPos + m ()V method_16188 disableCache +c net/minecraft/class_4888 net/minecraft/client/realms/dto/UploadInfo + f Z comp_5033 worldClosed + f I field_32117 PORT + f Ljava/lang/String; field_32116 HTTP_PROTOCOL + f Ljava/net/URI; comp_5035 uploadEndpoint + f Ljava/util/regex/Pattern; field_26467 PROTOCOL_PATTERN + f Ljava/lang/String; comp_5034 token + f Lorg/slf4j/Logger; field_22657 LOGGER + m (Ljava/lang/String;)Lnet/minecraft/class_4888; method_25088 parse + p 0 json + m ()Z comp_5033 worldClosed + m (Ljava/lang/String;)Ljava/lang/String; method_30864 createRequestContent + p 0 token + m (Ljava/lang/String;Ljava/util/regex/Matcher;)Ljava/lang/String; method_30863 getUrlWithProtocol + p 0 url + p 1 matcher + m (Ljava/lang/String;I)Ljava/net/URI; method_30862 getUrl + p 1 port + p 0 url + m (ZLjava/lang/String;Ljava/net/URI;)V + p 3 uploadEndpoint + p 1 worldClosed + p 2 token + m ()Ljava/net/URI; comp_5035 uploadEndpoint + m ()Ljava/lang/String; comp_5034 token + m (II)I method_30861 getPort + p 1 urlPort + p 0 port +c net/minecraft/class_3557 net/minecraft/datafixer/fix/BedBlockEntityFix + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/templates/List$ListType;)Lcom/mojang/datafixers/TypeRewriteRule; method_15506 fix + p 2 blockEntities + p 1 level + m (Lcom/mojang/serialization/Dynamic;IIIIJ)Ljava/util/Map; method_49456 method_49456 + p 4 blockData + p 5 index +c net/minecraft/class_4887 net/minecraft/client/realms/dto/Subscription + f Ljava/time/Instant; comp_5030 startDate + f I comp_5031 daysLeft + f Lnet/minecraft/class_4887$class_4322; comp_5032 type + f Lorg/slf4j/Logger; field_22656 LOGGER + m ()Ljava/time/Instant; comp_5030 startDate + m ()I comp_5031 daysLeft + m (Ljava/lang/String;)Lnet/minecraft/class_4887$class_4322; method_25086 typeFrom + p 0 subscriptionType + m ()Lnet/minecraft/class_4887$class_4322; comp_5032 type + m (Ljava/lang/String;)Lnet/minecraft/class_4887; method_25085 parse + p 0 json + m (Ljava/time/Instant;ILnet/minecraft/class_4887$class_4322;)V + p 1 startDate + p 2 daysLeft + p 3 type +c net/minecraft/class_4887$class_4322 net/minecraft/client/realms/dto/Subscription$SubscriptionType + f Lnet/minecraft/class_4887$class_4322; field_19444 RECURRING + f Lnet/minecraft/class_4887$class_4322; field_19443 NORMAL + m (Ljava/lang/String;)Lnet/minecraft/class_4887$class_4322; valueOf valueOf + p 0 name +c net/minecraft/class_3551 net/minecraft/datafixer/Schemas + f Ljava/util/function/BiFunction; field_15776 EMPTY + f Ljava/util/function/BiFunction; field_15775 EMPTY_IDENTIFIER_NORMALIZE + f Lcom/mojang/datafixers/DataFixerBuilder$Result; field_15777 FIXER + m (Ljava/lang/String;)Ljava/lang/String; method_51289 method_51289 + p 0 id + m (Lcom/mojang/datafixers/DataFixerBuilder;)V method_15451 build + p 0 builder + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_30069 method_30069 + p 2 string + m (Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String; method_57076 method_57076 + p 1 string + m (D)D method_65957 method_65957 + p 0 followRange + m (D)D method_65955 method_65955 + p 0 followRange + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_43062 method_43062 + p 0 catVariants + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_74011 method_74011 + p 0 dynamic + m (D)D method_65952 method_65952 + p 0 followRange + m ()Lcom/mojang/datafixers/DataFixerBuilder$Result; method_15471 create + m (Ljava/util/Map;)Ljava/util/function/UnaryOperator; method_30070 replacing + p 0 replacements + m (Ljava/util/Set;)Ljava/util/concurrent/CompletableFuture; method_60487 optimize + p 0 requiredTypes + m (Ljava/lang/String;)Ljava/lang/String; method_67100 method_67100 + p 0 value + m (Ljava/lang/String;)Ljava/lang/String; method_15459 method_15459 + p 0 id + m (Ljava/lang/String;)Ljava/lang/String; method_15449 method_15449 + p 0 id + m (Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String; method_30071 method_30071 + p 1 string + m (D)D method_65956 method_65956 + p 0 followRange + m (D)D method_65954 method_65954 + p 0 followRange + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_43061 method_43061 + p 0 frogVariants + m (Ljava/lang/String;)Ljava/lang/String; method_15455 method_15455 + p 0 id + m (Ljava/util/Map;)Ljava/util/function/UnaryOperator; method_57075 replacingRaw + p 0 replacements + m ()Lcom/mojang/datafixers/DataFixer; method_15450 getFixer + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_74012 method_74012 + p 0 dynamic + m (D)D method_65953 method_65953 + p 0 followRange + m (Ljava/lang/String;Ljava/lang/String;)Ljava/util/function/UnaryOperator; method_30068 replacing + p 1 current + p 0 old + m (Ljava/lang/String;)Ljava/lang/String; method_66036 method_66036 + p 0 value +c net/minecraft/class_4881 net/minecraft/client/realms/dto/RealmsServerPlayerList + f Ljava/util/Map; comp_5011 serverIdToPlayers + f Lorg/slf4j/Logger; field_22628 LOGGER + m (Lcom/google/gson/JsonArray;)Ljava/util/List; method_25073 parsePlayers + p 0 jsonArray + m ()Ljava/util/Map; comp_5011 serverIdToPlayers + m (J)Ljava/util/List; method_60863 get + p 1 serverId + m (Ljava/lang/String;)Lnet/minecraft/class_4881; method_25074 parse + p 0 json + m (Ljava/util/Map;)V + p 1 serverIdToPlayers +c net/minecraft/class_3552 net/minecraft/world/chunk/light/ChunkBlockLightProvider + f Lnet/minecraft/class_2338$class_2339; field_16511 mutablePos + m (JLnet/minecraft/class_2680;)I method_15474 getLightSourceLuminance + p 3 blockState + p 1 blockPos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_51532 method_51532 + p 1 blockPos + p 2 blockState + m (Lnet/minecraft/class_2823;)V + p 1 chunkProvider + m (Lnet/minecraft/class_2823;Lnet/minecraft/class_3547;)V + p 1 chunkProvider + p 2 blockLightStorage +c net/minecraft/class_4884 net/minecraft/client/realms/dto/RealmsWorldResetDto + f Ljava/util/Set; comp_5027 experiments + f J comp_5024 worldTemplateId + f I comp_5025 levelType + f Z comp_5026 generateStructures + f Ljava/lang/String; comp_5023 seed + m (Ljava/lang/String;JIZLjava/util/Set;)V + p 4 levelType + p 5 generateStructures + p 6 experiments + p 1 seed + p 2 worldTemplateId + m ()Ljava/util/Set; comp_5027 experiments + m ()J comp_5024 worldTemplateId + m ()I comp_5025 levelType + m ()Z comp_5026 generateStructures + m ()Ljava/lang/String; comp_5023 seed +c net/minecraft/class_2221 net/minecraft/block/DeadCoralFanBlock + f Lnet/minecraft/class_265; field_9932 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46267 CODEC +c net/minecraft/class_3553 net/minecraft/datafixer/fix/ChoiceTypesFix + f Ljava/lang/String; field_15779 name + f Lcom/mojang/datafixers/DSL$TypeReference; field_15780 types + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;)V + p 3 types + p 2 name + p 1 outputSchema + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;)Lcom/mojang/datafixers/TypeRewriteRule; method_15476 fixChoiceTypes + p 2 outputChoiceType + p 1 inputChoiceType +c net/minecraft/class_4883 net/minecraft/client/realms/dto/RealmsWorldOptions + f Z field_22645 empty + f Lnet/minecraft/class_4877$class_8842; field_46844 compatibility + f Ljava/lang/String; field_22641 slotName + f I field_22639 difficulty + f Ljava/lang/String; field_46843 version + f I field_22636 spawnProtection + f Ljava/lang/String; field_22643 templateImage + f J field_22642 templateId + f I field_22640 gameMode + f Z field_22638 forceGameMode + m (Lnet/minecraft/class_1934;Lnet/minecraft/class_1267;ZLjava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_4883; method_64352 create + p 4 slotName + p 0 gameMode + p 1 difficulty + p 2 hardcore + p 3 version + m (IIIZLjava/lang/String;Ljava/lang/String;Lnet/minecraft/class_4877$class_8842;)V + p 6 version + p 7 compatibility + p 2 difficulty + p 3 gameMode + p 4 forceGameMode + p 5 slotName + p 1 spawnProtection + m (I)Ljava/lang/String; method_25081 getDefaultSlotName + p 1 index + m ()Lnet/minecraft/class_4883; method_25076 getDefaults + m (I)Ljava/lang/String; method_25077 getSlotName + p 1 index + m (Lnet/minecraft/class_4869;Ljava/lang/String;)Lnet/minecraft/class_4883; method_71186 fromJson + p 1 json + p 0 gson + m ()Lnet/minecraft/class_4883; method_25080 getEmptyDefaults + m ()Lnet/minecraft/class_4883; method_25083 copy + m (Lnet/minecraft/class_1940;Ljava/lang/String;)Lnet/minecraft/class_4883; method_64353 create + p 0 levelInfo + p 1 slotName + m (Z)V method_25079 setEmpty + p 1 empty + m (Lnet/minecraft/class_4883;)V method_71187 replaceNullsWithDefaults + p 0 options +c net/minecraft/class_2222 net/minecraft/block/DeadCoralWallFanBlock + f Ljava/util/Map; field_9934 SHAPES_BY_DIRECTION + f Lnet/minecraft/class_2754; field_9933 FACING + f Lcom/mojang/serialization/MapCodec; field_46269 CODEC +c net/minecraft/class_3547 net/minecraft/world/chunk/light/BlockLightStorage + m (Lnet/minecraft/class_2823;)V + p 1 chunkProvider +c net/minecraft/class_3547$class_3548 net/minecraft/world/chunk/light/BlockLightStorage$Data + m ()Lnet/minecraft/class_3547$class_3548; method_15443 copy +c net/minecraft/class_2216 net/minecraft/command/argument/ScoreboardCriterionArgumentType + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9927 INVALID_CRITERION_EXCEPTION + f Ljava/util/Collection; field_9926 EXAMPLES + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_274; method_9402 getCriterion + p 0 context + p 1 name + m ()Lnet/minecraft/class_2216; method_9399 scoreboardCriterion + m (Lnet/minecraft/class_3448;Ljava/lang/Object;)Ljava/lang/String; method_9400 getStatName + p 2 value + p 1 stat + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 2 builder + p 1 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9401 method_9401 + p 0 name + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_274; method_9403 parse + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader +c net/minecraft/class_4879 net/minecraft/client/realms/dto/RealmsServerList + f Ljava/util/List; comp_5010 servers + f Lorg/slf4j/Logger; field_22623 LOGGER + m ()Ljava/util/List; comp_5010 servers + m (Lnet/minecraft/class_4869;Ljava/lang/String;)Lnet/minecraft/class_4879; method_25072 parse + p 0 gson + p 1 json + m (Ljava/util/List;)V + p 1 servers +c net/minecraft/class_2217 net/minecraft/block/DeadCoralBlock + f Lcom/mojang/serialization/MapCodec; field_46268 CODEC + f Lnet/minecraft/class_265; field_9928 SHAPE +c net/minecraft/class_2218 net/minecraft/command/argument/OperationArgumentType + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9931 INVALID_OPERATION + f Ljava/util/Collection; field_9929 EXAMPLES + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9930 DIVISION_ZERO_EXCEPTION + m ()Lnet/minecraft/class_2218; method_9404 operation + m (Lnet/minecraft/class_9014;Lnet/minecraft/class_9014;)V method_9410 method_9410 + p 1 b + p 0 a + m (Ljava/lang/String;)Lnet/minecraft/class_2218$class_2219; method_9413 getOperator + p 0 operator + m (Ljava/lang/String;)Lnet/minecraft/class_2218$class_2220; method_9407 getIntOperator + p 0 operator + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2218$class_2219; method_9409 getOperation + p 0 context + p 1 name + m (II)I method_9411 method_9411 + p 1 b + p 0 a + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2218$class_2219; method_9412 parse + m (II)I method_9415 method_9415 + p 1 b + p 0 a + m (II)I method_9414 method_9414 + p 0 a + p 1 b + m (II)I method_9408 method_9408 + p 1 b + p 0 a + m (II)I method_9406 method_9406 + p 1 b + p 0 a + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder +c net/minecraft/class_2218$class_2220 net/minecraft/command/argument/OperationArgumentType$IntOperator + m (II)I apply apply + p 2 b + p 1 a +c net/minecraft/class_2218$class_2219 net/minecraft/command/argument/OperationArgumentType$Operation + m (Lnet/minecraft/class_9014;Lnet/minecraft/class_9014;)V apply apply + p 1 a + p 2 b +c net/minecraft/class_3521 net/minecraft/util/NetworkUtils + c A few networking utilities. + f Lorg/slf4j/Logger; field_15665 LOGGER + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashFunction;)Lcom/google/common/hash/HashCode; method_55494 hash + p 0 path + p 1 hashFunction + m (Ljava/nio/file/Path;)V method_55603 updateModificationTime + p 0 path + m ()I method_15302 findLocalPort + m (Ljava/nio/file/Path;Ljava/net/URL;Ljava/util/Map;Lcom/google/common/hash/HashFunction;Lcom/google/common/hash/HashCode;ILjava/net/Proxy;Lnet/minecraft/class_3521$class_9034;)Ljava/nio/file/Path; method_55496 download + p 7 listener + p 6 proxy + p 5 maxBytes + p 4 hashCode + p 3 hashFunction + p 2 headers + p 1 url + p 0 path + m (I)Z method_46872 isPortAvailable + p 0 port + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashFunction;Lcom/google/common/hash/HashCode;)Z method_55495 validateHash + p 2 hashCode + p 1 hashFunction + p 0 path + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashCode;)Ljava/nio/file/Path; method_55493 resolve + p 0 path + p 1 hashCode + m (Lcom/google/common/hash/HashFunction;ILnet/minecraft/class_3521$class_9034;Ljava/io/InputStream;Ljava/nio/file/Path;)Lcom/google/common/hash/HashCode; method_55492 write + p 0 hashFunction + p 2 listener + p 1 maxBytes + p 4 path + p 3 stream +c net/minecraft/class_3521$class_9034 net/minecraft/util/NetworkUtils$DownloadListener + m (Ljava/util/OptionalLong;)V method_55499 onContentLength + p 1 contentLength + m ()V method_55497 onStart + m (J)V method_55498 onProgress + p 1 writtenBytes + m (Z)V method_55500 onFinish + p 1 success +c net/minecraft/class_4851 net/minecraft/advancement/criterion/TargetHitCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;Lnet/minecraft/class_243;I)V method_24861 trigger + p 4 signalStrength + p 2 projectile + p 3 hitPos + p 1 player + m (Lnet/minecraft/class_47;Lnet/minecraft/class_243;ILnet/minecraft/class_4851$class_4852;)Z method_24951 method_24951 + p 3 conditions +c net/minecraft/class_4851$class_4852 net/minecraft/advancement/criterion/TargetHitCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47345 CODEC + f Ljava/util/Optional; comp_2096 projectile + f Lnet/minecraft/class_2096$class_2100; comp_2095 signalStrength + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55137 method_55137 + p 0 instance + m (Ljava/util/Optional;Lnet/minecraft/class_2096$class_2100;Ljava/util/Optional;)V + p 1 playerPredicate + p 2 signalStrength + p 3 projectile + m (Lnet/minecraft/class_47;Lnet/minecraft/class_243;I)Z method_24952 test + p 2 hitPos + p 3 signalStrength + p 1 projectile + m (Lnet/minecraft/class_2096$class_2100;Ljava/util/Optional;)Lnet/minecraft/class_175; method_24865 create + p 1 projectile + p 0 signalStrength + m ()Ljava/util/Optional; comp_2096 projectile + m ()Lnet/minecraft/class_2096$class_2100; comp_2095 signalStrength +c net/minecraft/class_4850 net/minecraft/block/TargetBlock + f I field_31264 REGULAR_POWER_DELAY + f I field_31263 RECOVERABLE_POWER_DELAY + f Lnet/minecraft/class_2758; field_22428 POWER + f Lcom/mojang/serialization/MapCodec; field_46472 CODEC + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2680;Lnet/minecraft/class_3965;Lnet/minecraft/class_1297;)I method_24858 trigger + p 0 world + p 2 hitResult + p 1 state + p 3 entity + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2680;ILnet/minecraft/class_2338;I)V method_24857 setPower + p 4 delay + p 3 pos + p 2 power + p 1 state + p 0 world + m (Lnet/minecraft/class_3965;Lnet/minecraft/class_243;)I method_24859 calculatePower + p 0 hitResult + p 1 pos +c net/minecraft/class_3518 net/minecraft/util/JsonHelper + c Provides methods for validating and deserializing JSON elements. + f Lcom/google/gson/Gson; field_15657 GSON + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Ljava/math/BigInteger; method_34932 getBigInteger + p 0 object + p 1 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lnet/minecraft/class_6880;)Lnet/minecraft/class_6880; method_34916 getItem + p 1 key + p 2 defaultValue + p 0 object + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Lcom/google/gson/JsonArray; method_15252 asArray + p 0 element + p 1 name + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Ljava/lang/String; method_15287 asString + p 1 name + p 0 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lcom/google/gson/JsonObject;)Lcom/google/gson/JsonObject; method_15281 getObject + p 1 element + p 2 defaultObject + p 0 object + m (Lcom/google/gson/Gson;Ljava/io/Reader;Lcom/google/gson/reflect/TypeToken;)Ljava/lang/Object; method_15297 deserialize + p 1 reader + p 0 gson + p 2 typeToken + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)C method_34924 asChar + p 1 name + p 0 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Z)Z method_15258 getBoolean + p 0 object + p 2 defaultBoolean + p 1 element + m (Lcom/google/gson/JsonElement;)Z method_34921 isBoolean + p 0 object + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Ljava/math/BigDecimal; method_34931 getBigDecimal + p 0 object + p 1 element + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Lnet/minecraft/class_6880; method_15256 asItem + p 1 name + p 0 element + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)J method_15263 asLong + p 0 element + p 1 name + m (Ljava/io/Reader;)Lcom/google/gson/JsonObject; method_15255 deserialize + p 0 reader + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)S method_34928 asShort + p 1 name + p 0 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lcom/google/gson/JsonElement; method_52226 getElement + p 0 object + p 1 name + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z method_34923 hasJsonObject + p 0 object + p 1 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)S method_34933 getShort + p 0 object + p 1 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;B)B method_15271 getByte + p 2 defaultByte + p 0 object + p 1 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)F method_15259 getFloat + p 1 element + p 0 object + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z method_15270 getBoolean + p 0 object + p 1 element + m (Lcom/google/gson/JsonElement;)Ljava/lang/String; method_15266 getType + p 0 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z method_15294 hasElement + p 0 object + p 1 element + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Ljava/math/BigInteger; method_34926 asBigInteger + p 1 name + p 0 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z method_15254 hasBoolean + p 1 element + p 0 object + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z method_15278 hasPrimitive + p 0 object + p 1 element + m (Ljava/lang/String;)Lcom/google/gson/JsonObject; method_15285 deserialize + p 0 content + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)B method_34929 getByte + p 0 object + p 1 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lcom/google/gson/JsonArray;)Lcom/google/gson/JsonArray; method_15292 getArray + p 1 name + p 2 defaultArray + p 0 object + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z method_34920 hasNumber + p 0 object + p 1 element + m (Ljava/lang/String;)Lcom/google/gson/JsonArray; method_43679 deserializeArray + p 0 content + m (Lcom/google/gson/JsonObject;Ljava/lang/String;D)D method_34915 getDouble + p 2 defaultDouble + p 0 object + p 1 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lnet/minecraft/class_6880; method_15288 getItem + p 0 object + p 1 key + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lcom/google/gson/JsonObject; method_15296 getObject + p 1 element + p 0 object + m (Lcom/google/gson/JsonObject;Ljava/lang/String;J)J method_15280 getLong + p 2 defaultLong + p 0 object + p 1 element + m (Lcom/google/gson/Gson;Ljava/lang/String;Lcom/google/gson/reflect/TypeToken;)Ljava/lang/Object; method_15290 deserialize + p 1 content + p 2 typeToken + p 0 gson + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Ljava/math/BigDecimal; method_34925 asBigDecimal + p 0 element + p 1 name + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)B method_15293 asByte + p 0 element + p 1 name + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)C method_34930 getChar + p 0 object + p 1 element + m (Lcom/google/gson/Gson;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; method_15284 deserialize + p 0 gson + p 2 type + p 1 content + m (Lcom/google/gson/JsonElement;)Ljava/lang/String; method_43680 toSortedString + p 0 json + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z method_15289 hasString + p 0 object + p 1 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/math/BigDecimal;)Ljava/math/BigDecimal; method_34917 getBigDecimal + p 2 defaultBigDecimal + p 1 element + p 0 object + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lcom/google/gson/JsonDeserializationContext;Ljava/lang/Class;)Ljava/lang/Object; method_15272 deserialize + p 1 element + p 2 context + p 3 type + p 0 object + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Lcom/google/gson/JsonObject; method_15295 asObject + p 0 element + p 1 name + m (Lcom/google/gson/JsonObject;Ljava/lang/String;S)S method_34919 getShort + p 2 defaultShort + p 0 object + p 1 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Ljava/lang/String; method_15265 getString + p 0 object + p 1 element + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)D method_34922 asDouble + p 0 object + p 1 name + m (Ljava/io/Reader;)Lcom/google/gson/JsonArray; method_37165 deserializeArray + p 0 reader + m (Lcom/google/gson/JsonElement;)Z method_15286 isString + p 0 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_15253 getString + p 2 defaultStr + p 1 element + p 0 object + m (Lcom/google/gson/JsonObject;Ljava/lang/String;I)I method_15282 getInt + p 2 defaultInt + p 0 object + p 1 element + m (Lcom/google/gson/JsonElement;Ljava/lang/String;Lcom/google/gson/JsonDeserializationContext;Ljava/lang/Class;)Ljava/lang/Object; method_15291 deserialize + p 2 context + p 1 name + p 0 element + p 3 type + m (Lcom/google/gson/Gson;Ljava/io/Reader;Lcom/google/gson/reflect/TypeToken;)Ljava/lang/Object; method_47992 deserializeNullable + p 0 gson + p 1 reader + p 2 typeToken + m (Lcom/google/gson/JsonObject;Ljava/lang/String;F)F method_15277 getFloat + p 0 object + p 1 element + p 2 defaultFloat + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z method_15264 hasArray + p 0 object + p 1 element + m (Lcom/google/gson/JsonElement;I)Z method_66034 isTooLarge + p 0 json + p 1 maxLength + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)F method_15269 asFloat + p 0 element + p 1 name + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lcom/google/gson/JsonArray; method_15261 getArray + p 1 element + p 0 object + m (Lcom/google/gson/Gson;Ljava/io/Reader;Ljava/lang/Class;)Ljava/lang/Object; method_15276 deserialize + p 2 type + p 0 gson + p 1 reader + m (Ljava/util/Collection;Ljava/util/Comparator;)Ljava/util/Collection; method_43678 sort + p 0 entries + p 1 comparator + m (Lcom/google/gson/stream/JsonWriter;Lcom/google/gson/JsonElement;Ljava/util/Comparator;)V method_43677 writeSorted + p 2 comparator + p 0 writer + p 1 json + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)D method_34927 getDouble + p 0 object + p 1 element + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)I method_15257 asInt + p 0 element + p 1 name + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/math/BigInteger;)Ljava/math/BigInteger; method_34918 getBigInteger + p 0 object + p 1 element + p 2 defaultBigInteger + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Z method_15268 asBoolean + p 1 name + p 0 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/lang/Object;Lcom/google/gson/JsonDeserializationContext;Ljava/lang/Class;)Ljava/lang/Object; method_15283 deserialize + p 3 context + p 4 type + p 1 element + p 2 defaultValue + p 0 object + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)I method_15260 getInt + p 1 element + p 0 object + m (Lcom/google/gson/JsonElement;)Z method_15275 isNumber + p 0 element + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)J method_22449 getLong + p 1 name + p 0 object + m (Lcom/google/gson/JsonObject;Ljava/lang/String;C)C method_34914 getChar + p 0 object + p 2 defaultChar + p 1 element +c net/minecraft/class_3518$class_10559 net/minecraft/util/JsonHelper$CharacterCounter + f I field_55625 maxLength + f I field_55624 length + m (Ljava/lang/CharSequence;)Ljava/lang/Appendable; append append + p 1 charSequence + m (I)V + p 1 maxLength + m (Ljava/lang/CharSequence;II)Ljava/lang/Appendable; append append + p 1 charSequence + p 2 from + p 3 to + m (C)Ljava/lang/Appendable; append append + p 1 c + m (I)Ljava/lang/Appendable; method_66035 addCharacters + p 1 count +c net/minecraft/class_4849 net/minecraft/block/NyliumBlock + f Lcom/mojang/serialization/MapCodec; field_46406 CODEC + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_24856 stayAlive + p 0 state + p 1 world + p 2 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880$class_6883;)V method_46686 method_46686 + p 4 entry + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_5321;Lnet/minecraft/class_3218;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)V method_46687 generate + p 3 world + p 4 chunkGenerator + p 5 random + p 6 pos + p 1 registry + p 2 key +c net/minecraft/class_4846 net/minecraft/datafixer/fix/EntityZombifiedPiglinRenameFix + f Ljava/util/Map; field_22416 RENAMES + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_3515 net/minecraft/network/encryption/NetworkEncryptionUtils + c Utilities for encryption, decryption, signing, and hashing of data.\n\n@apiNote Methods in this class usually throw {@link NetworkEncryptionException}\nwhen the operation fails. This is a checked exception and thus must be caught\nwhen using the methods. + f Ljava/lang/String; field_29835 SHA1 + f Ljava/util/Base64$Encoder; field_39272 BASE64_ENCODER + f Ljava/lang/String; field_39033 RSA_PUBLIC_KEY_PREFIX + f Ljava/lang/String; field_39037 RSA_PRIVATE_KEY_PREFIX + f Ljava/lang/String; field_39109 SHA256_WITH_RSA + f Ljava/lang/String; field_29830 AES + f Ljava/lang/String; field_29834 ISO_8859_1 + f Ljava/lang/String; field_29832 RSA + f Lcom/mojang/serialization/Codec; field_39035 RSA_PUBLIC_KEY_CODEC + c The codec for RSA public keys.\n\n@implNote The key is encoded using the PEM format.\n\n@see #encodeRsaPublicKey(PublicKey)\n@see #decodeRsaPublicKeyPem(String) + f Ljava/lang/String; field_39034 LINEBREAK + f Ljava/lang/String; field_39038 RSA_PRIVATE_KEY_SUFFIX + f I field_40111 SHA256_BITS + f Ljava/lang/String; field_39039 RSA_PUBLIC_KEY_SUFFIX + f Lcom/mojang/serialization/Codec; field_39036 RSA_PRIVATE_KEY_CODEC + c The codec for RSA private keys.\n\n@implNote The key is encoded using the PEM format.\n\n@see #encodeRsaPrivateKey(PrivateKey)\n@see #decodeRsaPrivateKeyPem(String) + f I field_29833 RSA_KEY_LENGTH + f I field_29831 AES_KEY_LENGTH + m (ILjava/security/Key;[B)[B method_15244 crypt + c Low-level API to perform encryption or decryption operation.\n\n@throws NetworkEncryptionException when the operation fails + p 2 data + p 1 key + p 0 opMode + m ()Ljavax/crypto/SecretKey; method_15239 generateSecretKey + c {@return a new {@value AES_KEY_LENGTH} bit AES secret key}\n\n@throws NetworkEncryptionException when generation fails + m ([B)Ljava/security/PublicKey; method_15242 decodeEncodedRsaPublicKey + c Decodes a X.509-encoded RSA public key.\n\n@throws NetworkEncryptionException when the key is malformed\n\n@see #decodeRsaPublicKeyPem(String) + p 0 key + m ([[B)[B method_15236 hash + c {@return the SHA-1 hash of {@code bytes}} + p 0 bytes + m (Ljava/lang/String;Ljava/security/PublicKey;Ljavax/crypto/SecretKey;)[B method_15240 computeServerId + c {@return the computed server ID}\n\n@implNote The server ID is a SHA-1 hash of ISO-8859-1 encoded {@code baseServerId},\n{@code publicKey}, and {@code secretKey}.\n\n@throws NetworkEncryptionException when computation fails + p 2 secretKey + p 0 baseServerId + p 1 publicKey + m (Ljava/security/PrivateKey;)Ljava/lang/String; method_43521 encodeRsaPrivateKey + c Encodes an RSA private {@code key} to a PEM-formatted key string.\n\n

A PEM-formatted RSA private key is {@value #RSA_PRIVATE_KEY_PREFIX}, followed\nby Base64 encoded PCKS #8 encoded key, followed by {@value #RSA_PRIVATE_KEY_SUFFIX}.\n\n@throws IllegalArgumentException when non-RSA key is passed\n\n@see #encodeRsaPublicKey(PublicKey)\n@see #decodeRsaPrivateKeyPem(String)\n@see #decodeRsaPublicKeyPem(String) + p 0 key + m (ILjava/security/Key;)Ljavax/crypto/Cipher; method_15235 cipherFromKey + c Creates an AES cipher from the key.\n\n@throws NetworkEncryptionException when creation fails, e.g. due to invalid key + p 0 opMode + p 1 key + c the AES secret key + m ([B)Ljava/security/PrivateKey; method_43525 decodeEncodedRsaPrivateKey + c Decodes a PCKS #8-encoded RSA private key.\n\n@throws NetworkEncryptionException when the key is malformed\n\n@see #decodeRsaPrivateKeyPem(String) + p 0 key + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_43527 method_43527 + p 0 key + m (Ljava/security/Key;[B)[B method_15243 decrypt + c Decrypts an encrypted data. The algorithm is determined from the key used.\n\n@throws NetworkEncryptionException when decryption fails, e.g. due to invalid key\n\n@see #encrypt(Key, byte[]) + p 0 key + c decryption key (e.g. AES secret key or RSA private key) + p 1 data + m (Ljava/security/PrivateKey;[B)Ljavax/crypto/SecretKey; method_15234 decryptSecretKey + c Decrypts RSA-encrypted AES secret key.\n\n@throws NetworkEncryptionException when the secret key is malformed + p 1 encryptedSecretKey + p 0 privateKey + m (Ljava/lang/String;)Ljava/security/PublicKey; method_43524 decodeRsaPublicKeyPem + c Decodes a PEM-formatted RSA public key.\n\n

A PEM-formatted RSA public key is {@value #RSA_PUBLIC_KEY_PREFIX}, followed\nby Base64 encoded X.509 encoded key, followed by {@value #RSA_PUBLIC_KEY_SUFFIX}.\nNote that this method also allows Base64 encoded keys that have neither the prefix\nor the suffix.\n\n@throws NetworkEncryptionException when the key is malformed\n\n@see #encodeRsaPrivateKey(PrivateKey)\n@see #encodeRsaPublicKey(PublicKey)\n@see #decodeRsaPrivateKeyPem(String) + p 0 key + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_3515$class_7424;)Ljava/security/Key; method_43520 decodePem + c Decodes a PEM-formatted string key.\n\n

A PEM-formatted key is {@code prefix}, followed by Base64 encoded key,\nfollowed by {@code suffix}. Note that this method also allows Base64 encoded\nkeys that have neither the prefix or the suffix.\n\n@throws NetworkEncryptionException when the {@code decoder} throws, e.g. due to\ninvalid key content + p 0 key + p 2 suffix + p 1 prefix + p 3 decoder + m (Ljava/security/PublicKey;)Ljava/lang/String; method_43522 encodeRsaPublicKey + c Encodes an RSA public {@code key} to a PEM-formatted key string.\n\n

A PEM-formatted RSA public key is {@value #RSA_PUBLIC_KEY_PREFIX}, followed\nby Base64 encoded X.509 encoded key, followed by {@value #RSA_PUBLIC_KEY_SUFFIX}.\n\n@throws IllegalArgumentException when non-RSA key is passed\n\n@see #encodeRsaPrivateKey(PrivateKey)\n@see #decodeRsaPrivateKeyPem(String)\n@see #decodeRsaPublicKeyPem(String) + p 0 key + m ()Ljava/security/KeyPair; method_15237 generateServerKeyPair + c {@return a new {@value RSA_KEY_LENGTH} bit RSA public/private key pair}\n\n@throws NetworkEncryptionException when generation fails + m (Ljava/lang/String;)Ljava/security/PrivateKey; method_43519 decodeRsaPrivateKeyPem + c Decodes a PEM-formatted RSA private key.\n\n

A PEM-formatted RSA private key is {@value #RSA_PRIVATE_KEY_PREFIX}, followed\nby Base64 encoded PCKS #8 encoded key, followed by {@value #RSA_PRIVATE_KEY_SUFFIX}.\nNote that this method also allows Base64 encoded keys that have neither the prefix\nor the suffix.\n\n@throws NetworkEncryptionException when the key is malformed\n\n@see #encodeRsaPrivateKey(PrivateKey)\n@see #encodeRsaPublicKey(PublicKey)\n@see #decodeRsaPublicKeyPem(String) + p 0 key + m (ILjava/lang/String;Ljava/security/Key;)Ljavax/crypto/Cipher; method_15241 createCipher + c Creates a cipher to perform encryption or decryption operation. + p 0 opMode + p 1 algorithm + p 2 key + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_43526 method_43526 + p 0 key + m (Ljava/security/Key;[B)[B method_15238 encrypt + c Encrypts a data. The algorithm is determined from the key used.\n\n@throws NetworkEncryptionException when encryption fails, e.g. due to invalid key\n\n@see #decrypt(Key, byte[]) + p 1 data + p 0 key + c encryption key (e.g. AES secret key or RSA public key) +c net/minecraft/class_3515$class_7426 net/minecraft/network/encryption/NetworkEncryptionUtils$SecureRandomUtil + c Utilities for working with a secure random number generator. + f Ljava/security/SecureRandom; field_39041 SECURE_RANDOM + m ()J method_43531 nextLong + c {@return a random number generated with a cryptographically secure\nrandom number generator} +c net/minecraft/class_3515$class_7425 net/minecraft/network/encryption/NetworkEncryptionUtils$SignatureData + c A record holding a signature of a data and the salt added while signing. Note that\nthe signature might not be actually present. + f Lnet/minecraft/class_3515$class_7425; field_39040 NONE + c The signature data for data without signatures. + f J comp_739 salt + f [B comp_740 signature + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()[B method_43530 getSalt + m ()Z method_43528 isSignaturePresent + c {@return whether the signature data has a signature}\n\n@apiNote This does not validate the signature itself. + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_3515$class_7425;)V method_43529 write + p 1 signatureData + p 0 buf + m ()[B comp_740 signature + m ()J comp_739 salt + m (J[B)V + p 1 salt + p 3 signature +c net/minecraft/class_3515$class_7424 net/minecraft/network/encryption/NetworkEncryptionUtils$KeyDecoder + c A functional interface that decodes an encoded key.\n\n@apiNote Implementations should throw {@link NetworkEncryptionException}\nwhen the key is malformed.\n\n@see NetworkEncryptionUtils#decodeEncodedRsaPrivateKey(byte[])\n@see NetworkEncryptionUtils#decodeEncodedRsaPublicKey(byte[]) + m ([B)Ljava/security/Key; apply apply + p 1 key +c net/minecraft/class_4845 net/minecraft/data/loottable/vanilla/VanillaBarterLootTableGenerator + f Lnet/minecraft/class_7225$class_7874; comp_2791 registries + m ()Lnet/minecraft/class_7225$class_7874; comp_2791 registries + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries +c net/minecraft/class_4848 net/minecraft/block/CryingObsidianBlock + f Lcom/mojang/serialization/MapCodec; field_46330 CODEC +c net/minecraft/class_4847 net/minecraft/datafixer/schema/Schema2509 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_3532 net/minecraft/util/math/MathHelper + c Contains math-related helper methods. This includes {@code float}-specific extensions\nto {@link Math}, linear interpolation (lerp), and color-related methods.\n\n

Trigonometric functions defined in this class use the "sine table", a pre-calculated\ntable of {@code sin(N)} ({@code 0 <= N < pi * 2}). + f [D field_15727 ARCSINE_TABLE + c Holds values of arcsin(x): {@code ARCSINE_TABLE[i]} is equal to\n{@code Math.arcsin(i / 256.0)}.\n\n

This is used by {@link MathHelper#atan2} to approximate the inverse\ntangent function. + f F field_15724 SQUARE_ROOT_OF_TWO + f Lnet/minecraft/class_5819; field_15726 RANDOM + f F field_29848 DEGREES_PER_RADIAN + f [F field_15725 SINE_TABLE + f F field_29849 EPSILON + f J field_29853 HALF_PI_RADIANS_SINE_TABLE_INDEX + f [D field_15722 COSINE_OF_ARCSINE_TABLE + c Holds values of cos(arcsin(x)): {@code COSINE_OF_ARCSINE_TABLE[i]} is equal to\n{@code Math.cos(Math.arcsin(i / 256.0))}.\n\n

This is used by {@link MathHelper#atan2} to approximate the inverse\ntangent function. + f F field_29846 TAU + c Tau is equal to {@code 2 * PI}. + f Lorg/joml/Vector3f; field_46244 Z_AXIS + f [I field_15723 MULTIPLY_DE_BRUIJN_BIT_POSITION + f F field_29847 RADIANS_PER_DEGREE + f I field_29859 ARCSINE_TABLE_LENGTH + c The total number of entries in {@link MathHelper#ARCSINE_TABLE} and\n{@link MathHelper#COSINE_OF_ARCSINE_TABLE}.\n\n

These tables have 257 elements because they store values for multiples of\n1/256 from 0 to 1, inclusive. + f D field_29856 DEGREES_TO_SINE_TABLE_INDEX + f Lorg/joml/Vector3f; field_46242 Y_AXIS + f F field_29844 PI + f D field_15728 ROUNDER_256THS + c A constant for rounding a double to the nearest multiple of 1/256.\n\n

When this constant is added to a double that is not too large, then the\nbits of the result's mantissa reflect the original number times 256.\nConsequently, adding this constant and then subtracting it rounds such\ndoubles to the nearest multiple of 1/256.\n\n

This is used by {@link MathHelper#atan2} to produce an index into\n{@link MathHelper#ARCSINE_TABLE} and {@link MathHelper#COSINE_OF_ARCSINE_TABLE}. + f Lorg/joml/Vector3f; field_46243 X_AXIS + f D field_29857 ARCSINE_MACLAURIN_3 + c Used for the third-order Maclaurin series approximation of the arcsin function,\nx + x^3/6. + f F field_29845 HALF_PI + m (DDD)D method_15370 getLerpProgress + c Gets the fraction of the way that {@code value} is between {@code start} and {@code end}.\nThis is the delta value needed to lerp between {@code start} and {@code end} to get {@code value}.\nIn other words, {@code getLerpProgress(lerp(delta, start, end), start, end) == delta}. + p 0 value + c the result of the lerp function + p 4 end + c the value interpolated to + p 2 start + c the value interpolated from + m (F)F method_27285 square + p 0 n + m (III)I method_15340 clamp + p 2 max + p 1 min + p 0 value + m (DDDDDD)D method_16437 lerp2 + c A two-dimensional lerp between values on the 4 corners of the unit square. Arbitrary values are specified for the corners and the output is interpolated between them. + p 10 x1y1 + c the output if {@code deltaX} is 1 and {@code deltaY} is 1 + p 0 deltaX + c the x-coordinate on the unit square + p 2 deltaY + c the y-coordinate on the unit square + p 4 x0y0 + c the output if {@code deltaX} is 0 and {@code deltaY} is 0 + p 6 x1y0 + c the output if {@code deltaX} is 1 and {@code deltaY} is 0 + p 8 x0y1 + c the output if {@code deltaX} is 0 and {@code deltaY} is 1 + m (Lnet/minecraft/class_5819;II)I method_15395 nextInt + c {@return a random, uniformly distributed integer value in {@code\n[min, max]}} If the range is empty (i.e. {@code max < min}), it\nreturns {@code min}. + p 0 random + p 2 max + c the maximum value, inclusive + p 1 min + c the minimum value, inclusive + m (II)Z method_48117 isMultipleOf + p 1 b + p 0 a + m (IILjava/util/function/IntPredicate;)I method_15360 binarySearch + c Finds the minimum value in {@code [min, max)} that satisfies the\nmonotonic {@code predicate}.\n\n

The {@code predicate} must be monotonic, i.e. if for any {@code a},\n{@code predicate.test(a)} is {@code true}, then for all {@code b > a},\n{@code predicate.test(b)} must also be {@code true}.\n\n

Examples:\n

    \n
  • {@code binarySearch(3, 7, x -> true)} returns {@code 3}.\n
  • {@code binarySearch(3, 7, x -> x >= 5)} returns {@code 5}.\n
  • {@code binarySearch(3, 7, x -> false)} returns {@code 7}.\n
\n\n@return the minimum value if such value is found, otherwise {@code max} + p 1 max + c the maximum value (exclusive) to be tested + p 0 min + c the minimum value (inclusive) to be tested + p 2 predicate + c the predicate that returns {@code true} for integers greater than or\nequal to the value to be searched for + m (D)D method_33723 square + p 0 n + m (Lnet/minecraft/class_2382;)J method_15389 hashCode + p 0 vec + m (FF)F method_24504 wrap + p 1 maxDeviation + p 0 value + m (F)F method_15393 wrapDegrees + c Wraps an angle in degrees to the interval {@code [-180, 180)}. + p 0 degrees + m (DDDDD)D method_32854 clampedMap + c Linearly maps a value from one number range to another\nand clamps the result.\n\n@return the mapped value, clamped between {@code newStart} and {@code newEnd}\n@see #map(double, double, double, double, double) the unclamped variant + p 2 oldStart + c the starting value of the original range + p 4 oldEnd + p 6 newStart + p 8 newEnd + c the end value of the new range + p 0 value + m (DDDDDDDDDDD)D method_16438 lerp3 + c A three-dimensional lerp between values on the 8 corners of the unit cube. Arbitrary values are specified for the corners and the output is interpolated between them. + p 12 x1y1z0 + c the output if {@code deltaX} is 1, {@code deltaY} is 1 and {@code deltaZ} is 0 + p 10 x0y1z0 + c the output if {@code deltaX} is 0, {@code deltaY} is 1 and {@code deltaZ} is 0 + p 8 x1y0z0 + c the output if {@code deltaX} is 1, {@code deltaY} is 0 and {@code deltaZ} is 0 + p 6 x0y0z0 + c the output if {@code deltaX} is 0, {@code deltaY} is 0 and {@code deltaZ} is 0 + p 4 deltaZ + c the z-coordinate on the unit cube + p 20 x1y1z1 + c the output if {@code deltaX} is 1, {@code deltaY} is 1 and {@code deltaZ} is 1 + p 2 deltaY + c the y-coordinate on the unit cube + p 18 x0y1z1 + c the output if {@code deltaX} is 0, {@code deltaY} is 1 and {@code deltaZ} is 1 + p 0 deltaX + c the x-coordinate on the unit cube + p 16 x1y0z1 + c the output if {@code deltaX} is 1, {@code deltaY} is 0 and {@code deltaZ} is 1 + p 14 x0y0z1 + c the output if {@code deltaX} is 0, {@code deltaY} is 0 and {@code deltaZ} is 1 + m (FFFFF)F method_41303 catmullRom + c Interpolates a point on a Catmull-Rom Spline. This spline has a property that if there are two\nsplines with arguments {@code p0, p1, p2, p3} and {@code p1, p2, p3, p4}, the resulting curve\nwill have a continuous first derivative at {@code p2}, where the two input curves connect. For\nhigher-dimensional curves, the interpolation on the curve is done component-wise: for\ninputs {@code delta, (p0x, p0y), (p1x, p1y), (p2x, p2y), (p3x, p3y)}, the output is\n{@code (catmullRom(delta, p0x, p1x, p2x, p3x), catmullRom(delta, p0y, p1y, p2y, p3y))}.\n\n@see Cubic Hermite spline (Catmull–Rom spline) + p 0 delta + c the progress along the interpolation + p 1 p0 + c the previous data point to assist in curve-smoothing + p 2 p1 + c the output if {@code delta} is 0 + p 3 p2 + c the output if {@code delta} is 1 + p 4 p3 + c the next data point to assist in curve-smoothing + m (I)I method_34954 square + p 0 n + m (Lorg/joml/Vector3f;Lorg/joml/Quaternionf;Lorg/joml/Quaternionf;)Lorg/joml/Quaternionf; method_53948 rotateAround + p 1 rotation + p 2 result + p 0 axis + m (DD)D method_15367 floorMod + p 2 divisor + p 0 dividend + m (D)I method_17822 sign + p 0 value + m (DI)I method_38961 roundDownToMultiple + c {@return {@code a} rounded down to the nearest multiple of {@code b}} + p 0 a + p 2 b + m (B)F method_62994 unpackDegrees + p 0 packedDegrees + m (D)D method_15338 wrapDegrees + c Wraps an angle in degrees to the interval {@code [-180, 180)}. + p 0 degrees + m (FFF)F method_15363 clamp + p 2 max + p 0 value + p 1 min + m (IIII)I method_76801 getChebyshevDistance + p 0 x1 + p 2 x2 + p 1 y1 + p 3 y2 + m (IIIII)I method_42118 method_42118 + p 4 i + m (DD)Z method_20390 approximatelyEquals + p 0 a + p 2 b + m (FF)F method_15356 angleBetween + p 0 first + p 1 second + m (D)D method_34956 perlinFadeDerivative + p 0 value + m (FFF)F method_60677 magnitude + p 2 c + p 0 a + p 1 b + m (DDD)D method_41190 squaredMagnitude + p 2 b + p 0 a + p 4 c + m (J)J method_38652 square + p 0 n + m (F)I method_15375 floor + p 0 value + m (II)I method_28139 roundUpToMultiple + c Returns a value farther than or as far as {@code value} from zero that\nis a multiple of {@code divisor}. + p 0 value + p 1 divisor + m (FFF)F method_15388 stepUnwrappedAngleTowards + c Steps from {@code from} degrees towards {@code to} degrees, changing the value by at most {@code step} degrees. + p 0 from + p 2 step + p 1 to + m (II)I method_15387 floorMod + p 0 dividend + p 1 divisor + m (FFF)F method_15348 stepTowards + c Steps from {@code from} towards {@code to}, changing the value by at most {@code step}. + p 2 step + p 1 to + p 0 from + m (DDD)D method_52468 lerpAngleDegrees + p 4 end + p 2 start + p 0 delta + m (Ljava/lang/String;I)I method_15343 parseInt + p 1 fallback + p 0 string + m (DD)D method_15349 atan2 + c {@return an approximation of {@code Math.atan2(y, x)}}\n\n@implNote This implementation transforms the arguments such that they\nlie in the first quadrant. If {@code y > x}, then {@code x} and {@code y}\nare swapped to minimize the error of the initial approximation.\n{@code x} and {@code y} are normalized, and an initial approximation\nof the result and the sine of the deviation from the true value are\nobtained using the {@link MathHelper#ARCSINE_TABLE} and\n{@link MathHelper#COSINE_OF_ARCSINE_TABLE} lookup tables. The error\nitself is approximated using the third-order Maclaurin series polynomial\nfor arcsin. Finally, the implementation undoes any transformations that\nwere performed initially. + p 0 y + p 2 x + m (FFF)F method_61345 lerpAngleRadians + p 2 end + p 1 start + p 0 delta + m (DDD)D method_33825 magnitude + p 4 c + p 2 b + p 0 a + m ()Ljava/util/UUID; method_15394 randomUuid + m (DD)D method_41189 squaredHypot + p 2 b + p 0 a + m (D)J method_73296 ceilLong + p 0 value + m (III)J method_15371 hashCode + p 0 x + p 1 y + p 2 z + m (I)I method_15339 smallestEncompassingPowerOfTwo + p 0 value + m (III)Ljava/util/stream/IntStream; method_42120 stream + p 0 seed + p 2 upperBound + p 1 lowerBound + m (F)F method_48119 inverseSqrt + p 0 x + m (F)I method_15386 ceil + p 0 value + m (F)F method_22450 fractionalPart + p 0 value + m (DDDDD)D method_33722 map + c Linearly maps a value from one number range to another, unclamped.\n\n

For the return value {@code result}, {@code getLerpProgress(value, oldStart, oldEnd)}\nis approximately equal to {@code getLerpProgress(result, newStart, newEnd)}\n(accounting for floating point errors).\n\n@return the mapped value + p 8 newEnd + c the end value of the new range + p 6 newStart + c the starting value of the new range + p 4 oldEnd + c the end value of the original range + p 2 oldStart + c the starting value of the original range + p 0 value + c the input value + m (DDD)D method_15390 clampedLerp + p 4 end + p 0 delta + p 2 start + m (Lnet/minecraft/class_5819;II)I method_32751 nextBetween + c {@return a random, uniformly distributed integer value in {@code\n[min, max]}}\n\n@throws IllegalArgumentException if the range is empty (i.e. {@code\nmax < min}) + p 2 max + c the maximum value, inclusive + p 1 min + c the minimum value, inclusive + p 0 random + m (I)I method_15354 idealHash + p 0 value + m (I)I method_15342 ceilLog2 + c {@return ceil(log2({@code value}))}\n\n

The vanilla implementation uses the de Bruijn sequence.\n\n@see Integer#numberOfLeadingZeros(int) + p 0 value + c the input value + m (Lnet/minecraft/class_5819;DD)D method_15366 nextDouble + p 3 max + p 1 min + p 0 random + m (DDD)D method_15350 clamp + p 4 max + p 2 min + p 0 value + m (DLnet/minecraft/class_243;Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_61342 lerp + p 0 delta + p 3 end + p 2 start + m (Lnet/minecraft/class_5819;FF)F method_15344 nextFloat + p 1 min + p 0 random + p 2 max + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_238;)Z method_34945 method_34945 + p 2 box + p 0 origin + p 1 direction + m (DDD)D method_16436 lerp + p 0 delta + p 2 start + p 4 end + m (Lorg/apache/commons/lang3/math/Fraction;I)I method_59515 multiplyFraction + p 1 multiplier + p 0 fraction + m (II)I method_38788 ceilDiv + p 0 a + p 1 b + m (FII)I method_48781 lerp + p 0 delta + p 1 start + p 2 end + m ([F)V method_15376 method_15376 + p 0 sineTable + m (FFF)F method_37166 clampedLerp + p 1 start + p 2 end + p 0 delta + m (I)I method_15382 abs + p 0 value + m (FFFI)I method_60599 hsvToArgb + p 3 alpha + p 0 hue + p 2 value + p 1 saturation + m (FFF)F method_16439 lerp + p 1 start + p 2 end + p 0 delta + m (JJJ)J method_53062 clamp + p 4 max + p 2 min + p 0 value + m (FFF)F method_20306 clampAngle + c Clamps {@code value}, as an angle, between {@code mean - delta} and {@code\nmean + delta} degrees.\n\n@return the clamped {@code value} + p 2 delta + c the maximum difference allowed from the mean, must not be negative + p 1 mean + c the mean value of the clamp angle range + p 0 value + c the value to clamp + m (I)Z method_15352 isPowerOfTwo + p 0 value + m (Lnet/minecraft/class_5819;)Ljava/util/UUID; method_15378 randomUuid + p 0 random + m (F)B method_62995 packDegrees + p 0 degrees + m (FF)F method_15341 floorMod + p 0 dividend + p 1 divisor + m (D)F method_15374 sin + p 0 value + m (D)F method_15362 cos + p 0 value + m (I)I method_70659 smallestEncompassingSquareSideLength + p 0 value + m (DD)D method_15391 absMax + p 0 a + p 2 b + m (Lnet/minecraft/class_5819;FF)F method_32855 nextGaussian + p 0 random + p 1 mean + p 2 deviation + m (FF)F method_15381 subtractAngles + p 0 start + p 1 end + m (D)D method_16435 perlinFade + p 0 value + m (IIII)Ljava/util/stream/IntStream; method_42117 stream + p 3 steps + p 2 upperBound + p 1 lowerBound + p 0 seed + m (F)F method_15379 abs + p 0 value + m (II)I method_48116 floorDiv + p 1 divisor + p 0 dividend + m (D)D method_15345 fastInverseSqrt + c {@return an approximation of {@code 1 / Math.sqrt(x)}} + p 0 x + m (F)F method_15355 sqrt + p 0 value + m (FFFFF)F method_37958 clampedMap + c Linearly maps a value from one number range to another\nand clamps the result.\n\n@return the mapped value, clamped between {@code newStart} and {@code newEnd}\n@see #map(float, float, float, float, float) the unclamped variant + p 0 value + p 1 oldStart + c the starting value of the original range + p 4 newEnd + c the end value of the new range + p 2 oldEnd + p 3 newStart + m (Lnet/minecraft/class_5819;FF)F method_32750 nextBetween + p 0 random + p 1 min + p 2 max + m (D)I method_15357 floor + p 0 value + m (D)D method_15385 fractionalPart + p 0 value + m (F)F method_23278 fastInverseCbrt + c {@return an approximation of {@code 1 / Math.cbrt(x)}} + p 0 x + m (FF)Z method_15347 approximatelyEquals + p 0 a + p 1 b + m (IIII)Z method_42119 method_42119 + p 3 i + m (D)D method_48118 inverseSqrt + p 0 x + m (I)I method_15392 wrapDegrees + c Wraps an angle in degrees to the interval {@code [-180, 180)}. + p 0 degrees + m (II)I method_76800 absMax + p 0 a + p 1 b + m (FII)I method_53063 lerpPositive + c {@return linear interpolation of {@code delta} between {@code start} and {@code end},\nexcept that for any positive {@code delta} the value is positive}\n\n

Like {@link #lerp(float, int, int)}, {@code lerpPositive(0, 0, 10)} returns {@code 0}.\nHowever, if the delta is {@code 0.01f}, the {@code lerp} method would return {@code 0}\nsince {@code 0.01 * 10} floored is {@code 0}. This method returns {@code 1} in this\nsituation.\n\n@apiNote This is used to calculate redstone comparator output and boss bar percentage.\n\n@see #lerp(float, int, int) + p 0 delta + p 1 start + p 2 end + m (FFFFF)F method_37959 map + c Linearly maps a value from one number range to another, unclamped.\n\n

For the return value {@code result}, {@code getLerpProgress(value, oldStart, oldEnd)}\nis approximately equal to {@code getLerpProgress(result, newStart, newEnd)}\n(accounting for floating point errors).\n\n@return the mapped value + p 0 value + c the input value + p 3 newStart + c the starting value of the new range + p 4 newEnd + c the end value of the new range + p 1 oldStart + c the starting value of the original range + p 2 oldEnd + c the end value of the original range + m (FFF)F method_37960 getLerpProgress + p 2 end + p 1 start + p 0 value + m (F)F method_75067 cube + p 0 n + m (FF)F method_76799 absMax + p 1 b + p 0 a + m (I)I method_15351 floorLog2 + c {@return floor(log2({@code value}))}\n\n

The vanilla implementation uses the de Bruijn sequence.\n\n@see Integer#numberOfLeadingZeros(int) + p 0 value + c the input value + m (J)F method_61343 wrapDegrees + p 0 degrees + m (FFF)I method_15369 hsvToRgb + p 0 hue + p 1 saturation + p 2 value + m (FFF)F method_17821 lerpAngleDegrees + p 1 start + p 2 end + p 0 delta + m (D)I method_15384 ceil + p 0 value + m (FF)F method_61344 hypot + p 0 a + p 1 b + m (D)J method_15372 lfloor + p 0 value + m (DD)D method_39241 hypot + p 2 b + p 0 a +c net/minecraft/class_4864 net/minecraft/block/AbstractPlantBlock + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_33624 copyState + p 1 from + p 2 to + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;)Ljava/util/Optional; method_25960 getStemHeadPos + p 2 pos + p 3 block + p 1 world +c net/minecraft/class_3533 net/minecraft/util/profiler/ProfilerSystem + f Lnet/minecraft/class_3533$class_4746; field_21819 currentInfo + f Ljava/util/function/IntSupplier; field_16266 endTickGetter + f I field_15729 startTick + f Ljava/util/function/BooleanSupplier; field_55643 timeoutDisabled + f Ljava/lang/String; field_15734 fullPath + f Ljava/util/List; field_15736 path + f J field_15732 startTime + f Ljava/util/function/LongSupplier; field_21961 timeGetter + f Lorg/slf4j/Logger; field_15735 LOGGER + f Lit/unimi/dsi/fastutil/longs/LongList; field_15730 timeList + f Ljava/util/Map; field_21818 locationInfos + f Z field_15733 tickStarted + f J field_16267 TIMEOUT_NANOSECONDS + f Ljava/util/Set; field_33873 sampleTypes + m (Ljava/util/function/LongSupplier;Ljava/util/function/IntSupplier;Ljava/util/function/BooleanSupplier;)V + p 1 timeGetter + p 2 tickGetter + p 3 timeoutDisabled + m (Ljava/lang/String;)Lnet/minecraft/class_3533$class_4746; method_24245 method_24245 + p 0 k + m ()Lnet/minecraft/class_3533$class_4746; method_24246 getCurrentInfo +c net/minecraft/class_3533$class_4746 net/minecraft/util/profiler/ProfilerSystem$LocatedInfo + f J field_21820 totalTime + f J field_33875 minTime + f J field_21821 visits + f Lit/unimi/dsi/fastutil/objects/Object2LongOpenHashMap; field_21822 counts + f J field_33874 maxTime +c net/minecraft/class_4863 net/minecraft/block/AbstractPlantPartBlock + f Z field_22508 tickWater + f Lnet/minecraft/class_2350; field_22507 growthDirection + f Lnet/minecraft/class_265; field_23080 outlineShape + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_2680; method_24948 getRandomGrowthState + p 1 random + m ()Lnet/minecraft/class_4865; method_24945 getStem + m ()Lnet/minecraft/class_2248; method_24946 getPlant + m (Lnet/minecraft/class_4970$class_2251;Lnet/minecraft/class_2350;Lnet/minecraft/class_265;Z)V + p 1 settings + p 3 outlineShape + p 2 growthDirection + p 4 tickWater + m (Lnet/minecraft/class_2680;)Z method_24947 canAttachTo + p 1 state +c net/minecraft/class_2202 net/minecraft/block/BambooShootBlock + f Lcom/mojang/serialization/MapCodec; field_46262 CODEC + f Lnet/minecraft/class_265; field_9897 SHAPE + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_9351 grow + p 1 world + p 2 pos +c net/minecraft/class_2203 net/minecraft/command/argument/NbtPathArgumentType + f C field_32185 RIGHT_CURLY_BRACKET + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_41709 INVALID_INDEX_EXCEPTION + f C field_32183 RIGHT_SQUARE_BRACKET + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_41706 TOO_DEEP_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9899 NOTHING_FOUND_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9900 INVALID_PATH_NODE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_41708 EXPECTED_LIST_EXCEPTION + f C field_32186 DOUBLE_QUOTE + f C field_32184 LEFT_CURLY_BRACKET + f C field_32182 LEFT_SQUARE_BRACKET + f C field_44920 SINGLE_QUOTE + f Ljava/util/Collection; field_9898 EXAMPLES + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2203$class_2209; method_9358 getNbtPath + p 1 name + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_47970 method_47970 + p 0 nbt + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lnet/minecraft/class_2487;)Ljava/util/function/Predicate; method_9359 getPredicate + p 0 filter + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/String;)Lnet/minecraft/class_2203$class_2210; method_9352 readCompoundChildNode + p 0 reader + p 1 name + m (C)Z method_9355 isNameCharacter + p 0 c + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; method_9357 readName + p 0 reader + m ()Lnet/minecraft/class_2203; method_9360 nbtPath + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9356 method_9356 + p 0 path + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/class_2203$class_2210; method_9361 parseNode + p 1 root + p 0 reader + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_47969 method_47969 + p 0 index + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_2520;)Z method_9353 method_9353 + p 1 nbt + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2203$class_2209; method_9362 parse +c net/minecraft/class_2203$class_2210 net/minecraft/command/argument/NbtPathArgumentType$PathNode + m (Lnet/minecraft/class_2520;Ljava/util/List;)V method_9378 get + p 2 results + p 1 current + m (Lnet/minecraft/class_2520;Ljava/util/function/Supplier;Ljava/util/List;)V method_9380 getOrInit + p 1 current + p 2 source + p 3 results + m (Ljava/util/function/Supplier;Lnet/minecraft/class_2520;Ljava/util/List;)V method_9379 method_9379 + p 3 results + p 2 current + m (Lnet/minecraft/class_2520;Ljava/util/function/Supplier;)I method_9376 set + p 2 source + p 1 current + m (Ljava/util/List;)Ljava/util/List; method_9381 get + p 1 elements + m (Ljava/util/List;Ljava/util/function/Supplier;)Ljava/util/List; method_9377 getOrInit + p 1 elements + p 2 supplier + m ()Lnet/minecraft/class_2520; method_9382 init + m (Lnet/minecraft/class_2520;)I method_9383 clear + p 1 current + m (Ljava/util/List;Ljava/util/function/BiConsumer;)Ljava/util/List; method_9384 process + p 2 action + p 1 elements +c net/minecraft/class_2203$class_3707 net/minecraft/command/argument/NbtPathArgumentType$FilteredRootNode + f Ljava/util/function/Predicate; field_16319 matcher + m (Lnet/minecraft/class_2487;)V + p 1 filter +c net/minecraft/class_2203$class_2204 net/minecraft/command/argument/NbtPathArgumentType$AllListElementNode + f Lnet/minecraft/class_2203$class_2204; field_9901 INSTANCE +c net/minecraft/class_2203$class_2206 net/minecraft/command/argument/NbtPathArgumentType$IndexedListElementNode + f I field_9903 index + m (I)V + p 1 index +c net/minecraft/class_2203$class_2205 net/minecraft/command/argument/NbtPathArgumentType$NamedNode + f Ljava/lang/String; field_9902 name + m (Ljava/lang/String;)V + p 1 name +c net/minecraft/class_2203$class_2208 net/minecraft/command/argument/NbtPathArgumentType$FilteredNamedNode + f Ljava/lang/String; field_9906 name + f Lnet/minecraft/class_2487; field_9907 filter + f Ljava/util/function/Predicate; field_9908 predicate + m (Ljava/lang/String;Lnet/minecraft/class_2487;)V + p 2 filter + p 1 name +c net/minecraft/class_2203$class_2207 net/minecraft/command/argument/NbtPathArgumentType$FilteredListElementNode + f Ljava/util/function/Predicate; field_9905 predicate + f Lnet/minecraft/class_2487; field_9904 filter + m (Lnet/minecraft/class_2487;)V + p 1 filter + m (Ljava/util/List;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/class_2520;)V method_9365 method_9365 + p 2 nbt +c net/minecraft/class_2203$class_2209 net/minecraft/command/argument/NbtPathArgumentType$NbtPath + f Ljava/lang/String; field_9909 string + f Lcom/mojang/serialization/Codec; field_50034 CODEC + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_9910 nodeEndIndices + f [Lnet/minecraft/class_2203$class_2210; field_9911 nodes + m (Lnet/minecraft/class_2203$class_2210;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_9375 createNothingFoundException + p 1 node + m (Lnet/minecraft/class_2520;Lnet/minecraft/class_2520;)I method_35722 put + p 1 element + p 2 source + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_58474 method_58474 + p 0 path + m (Lnet/minecraft/class_2203$class_2210;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/class_2520;Lnet/minecraft/class_2520;)Ljava/lang/Integer; method_47973 method_47973 + p 3 nbt + m (Ljava/util/List;Ljava/util/function/Function;)I method_9371 forEach + p 1 operation + p 0 elements + m (Lnet/minecraft/class_2520;)Ljava/util/List; method_9369 getTerminals + p 1 start + m (Lnet/minecraft/class_2520;)Ljava/util/List; method_9366 get + p 1 element + m (Lnet/minecraft/class_2520;Ljava/util/function/Supplier;)Ljava/util/List; method_9367 getOrInit + p 1 element + p 2 source + m (Lnet/minecraft/class_2520;)I method_9372 remove + p 1 element + m (Lnet/minecraft/class_2520;)I method_9374 count + p 1 element + m (ILnet/minecraft/class_2487;Ljava/util/List;)I method_47972 insert + p 3 elements + p 2 compound + p 1 index + m (Ljava/lang/String;)Lnet/minecraft/class_2203$class_2209; method_58472 parse + p 0 path + m ()I method_47971 getDepth + m ()Ljava/lang/String; method_54100 getString + m (Ljava/lang/Integer;Ljava/lang/Integer;)Ljava/lang/Integer; method_9370 method_9370 + p 0 a + p 1 b + m (Ljava/lang/String;[Lnet/minecraft/class_2203$class_2210;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)V + p 2 nodes + p 1 string + p 3 nodeEndIndices + m (Lnet/minecraft/class_2520;I)Z method_47975 isTooDeep + p 1 depth + p 0 element +c net/minecraft/class_3534 net/minecraft/util/profiler/ProfilerTiming + f Ljava/lang/String; field_15738 name + f D field_15739 parentSectionUsagePercentage + f D field_15737 totalUsagePercentage + f J field_19384 visitCount + m ()I method_15409 getColor + m (Ljava/lang/String;DDJ)V + p 2 parentUsagePercentage + p 1 name + p 6 visitCount + p 4 totalUsagePercentage + m (Lnet/minecraft/class_3534;)I method_15408 compareTo + m (Ljava/lang/Object;)I compareTo compareTo + p 1 other +c net/minecraft/class_4865 net/minecraft/block/AbstractPlantStemBlock + f Lnet/minecraft/class_2758; field_22509 AGE + f I field_31100 MAX_AGE + f D field_22510 growthChance + m (Lnet/minecraft/class_5819;)I method_26376 getGrowthLength + p 1 random + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_38232 withMaxAge + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_33625 copyState + p 1 from + p 2 to + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_5819;)Lnet/minecraft/class_2680; method_33626 age + p 1 state + p 2 random + m (Lnet/minecraft/class_4970$class_2251;Lnet/minecraft/class_2350;Lnet/minecraft/class_265;ZD)V + p 5 growthChance + p 4 tickWater + p 3 outlineShape + p 2 growthDirection + p 1 settings + m (Lnet/minecraft/class_2680;)Z method_38233 hasMaxAge + p 1 state + m (Lnet/minecraft/class_2680;)Z method_24949 chooseStemState + p 1 state +c net/minecraft/class_4860 net/minecraft/datafixer/fix/EntityProjectileOwnerFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24899 moveFlatOwnerMostLeastToArray + p 1 entityDynamic + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; method_24902 update + p 1 entityTyped + p 3 fixer + p 2 matchId + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24906 moveOwnerToArray + p 1 entityDynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24901 fixEntities + p 1 entityTyped + m (JJ)[I method_24898 makeUuidArray + p 2 least + p 0 most + m (Lcom/mojang/serialization/Dynamic;JJ)Lcom/mojang/serialization/Dynamic; method_24900 insertOwnerUuidArray + p 2 most + p 1 entityDynamic + p 4 least + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24904 moveNestedOwnerMostLeastToArray + p 1 entityDynamic +c net/minecraft/class_4862 net/minecraft/screen/SmithingScreenHandler + f Lnet/minecraft/class_1937; field_25385 world + f I field_41932 OUTPUT_X + f I field_41931 SLOT_Y + f I field_41930 MATERIAL_X + f I field_41926 MATERIAL_ID + f I field_41925 EQUIPMENT_ID + f Lnet/minecraft/class_3915; field_54970 invalidRecipe + f I field_41924 TEMPLATE_ID + f Lnet/minecraft/class_10290; field_54599 additionPropertySet + f I field_41929 EQUIPMENT_X + f I field_41928 TEMPLATE_X + f Lnet/minecraft/class_10290; field_54597 basePropertySet + f I field_41927 OUTPUT_ID + f Lnet/minecraft/class_10290; field_54598 templatePropertySet + m ()Ljava/util/List; method_51307 getInputStacks + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;)V + p 3 context + p 2 playerInventory + p 1 syncId + m (I)V method_29539 decrementStack + p 1 slot + m (ILnet/minecraft/class_1661;)V + p 2 playerInventory + p 1 syncId + m (Lnet/minecraft/class_10286;)Lnet/minecraft/class_8047; method_64652 createForgingSlotsManager + p 0 recipeManager + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;Lnet/minecraft/class_1937;)V + p 3 context + p 4 world + p 1 syncId + p 2 playerInventory + m ()Lnet/minecraft/class_9697; method_59965 createRecipeInput + m ()Z method_65060 hasInvalidRecipe + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_24929 method_24929 + p 0 world + p 1 pos + m (Lnet/minecraft/class_9697;Lnet/minecraft/class_8786;)V method_64653 method_64653 + p 2 recipe +c net/minecraft/class_4861 net/minecraft/screen/ForgingScreenHandler + f Lnet/minecraft/class_1263; field_22480 input + f Lnet/minecraft/class_1731; field_22479 output + f Lnet/minecraft/class_1657; field_22482 player + f Lnet/minecraft/class_3914; field_22481 context + f I field_41904 resultSlotIndex + m ()V method_24928 updateResult + m (Lnet/minecraft/class_1799;)Z method_48356 isValidIngredient + p 1 stack + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V method_24923 onTakeOutput + p 2 stack + p 1 player + m (Lnet/minecraft/class_8047;)V method_48355 addResultSlot + p 1 forgingSlotsManager + m ()I method_48362 getPlayerHotbarStartIndex + m (Lnet/minecraft/class_3917;ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;Lnet/minecraft/class_8047;)V + p 5 forgingSlotsManager + p 2 syncId + p 1 type + p 4 context + p 3 playerInventory + m ()I method_48363 getPlayerHotbarEndIndex + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Ljava/lang/Boolean; method_24924 method_24924 + p 3 pos + p 2 world + m ()I method_48360 getResultSlotIndex + m ()I method_48361 getPlayerInventoryEndIndex + m (I)Lnet/minecraft/class_1277; method_48358 createInputInventory + p 1 size + m (Lnet/minecraft/class_8047;)V method_48354 addInputSlots + p 1 forgingSlotsManager + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_24926 method_24926 + p 3 pos + p 2 world + m (Lnet/minecraft/class_1657;Z)Z method_24927 canTakeOutput + p 1 player + p 2 present + m ()I method_48359 getPlayerInventoryStartIndex + m (Lnet/minecraft/class_2680;)Z method_24925 canUse + p 1 state +c net/minecraft/class_4856 net/minecraft/client/sound/RepeatingAudioStream + f Lnet/minecraft/class_4234; field_22444 delegate + f Lnet/minecraft/class_4856$class_4857; field_22443 delegateFactory + f Ljava/io/BufferedInputStream; field_22445 inputStream + m (Lnet/minecraft/class_4856$class_4857;Ljava/io/InputStream;)V + p 2 inputStream + p 1 delegateFactory +c net/minecraft/class_4856$class_4857 net/minecraft/client/sound/RepeatingAudioStream$DelegateFactory + m (Ljava/io/InputStream;)Lnet/minecraft/class_4234; create create + p 1 stream +c net/minecraft/class_4856$class_4858 net/minecraft/client/sound/RepeatingAudioStream$ReusableInputStream + m (Ljava/io/InputStream;)V + p 1 stream +c net/minecraft/class_4831 net/minecraft/entity/ai/brain/Memory + f J field_22331 expiry + f Ljava/lang/Object; field_22330 value + m ()J method_35127 getExpiry + m (Ljava/lang/Object;)Lnet/minecraft/class_4831; method_28355 permanent + c Creates a memory without an expiry time. + p 0 value + m ()V method_24913 tick + m ()Z method_24914 isTimed + m ()Z method_24634 isExpired + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28354 method_28354 + p 1 instance + m (Ljava/lang/Object;J)Lnet/minecraft/class_4831; method_24636 timed + c Creates a memory that has an expiry time. + p 0 value + p 1 expiry + m ()Ljava/lang/Object; method_24637 getValue + m (Lnet/minecraft/class_4831;)Ljava/lang/Object; method_28357 method_28357 + p 0 memory + m (Ljava/lang/Object;Ljava/util/Optional;)Lnet/minecraft/class_4831; method_28356 method_28356 + p 0 value + p 1 expiry + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_28353 createCodec + p 0 codec + m (Ljava/lang/Object;J)V + p 1 value + p 2 expiry + m (Lnet/minecraft/class_4831;)Ljava/util/Optional; method_28352 method_28352 + p 0 memory +c net/minecraft/class_4830 net/minecraft/entity/ai/brain/task/RemoveOffHandItemTask + m ()Lnet/minecraft/class_7893; method_47298 create + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47300 method_47300 + p 0 context + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4836;J)Z method_47299 method_47299 + p 0 world + p 1 entity + p 2 time + m (Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47301 method_47301 + p 0 admiringItem +c net/minecraft/class_4833 net/minecraft/entity/ai/brain/sensor/NearestItemsSensor + f J field_30256 VERTICAL_RANGE + f I field_30254 MAX_RANGE + f J field_30255 HORIZONTAL_RANGE + m (Lnet/minecraft/class_1542;)Z method_24644 method_24644 + p 0 itemEntity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)V method_24645 sense + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1542;)Z method_24643 method_24643 + p 1 itemEntityx + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_3218;Lnet/minecraft/class_1542;)Z method_24646 method_24646 + p 2 itemEntity +c net/minecraft/class_4832 net/minecraft/entity/ai/brain/sensor/HoglinSpecificSensor + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_24640 method_24640 + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4760;)V method_24639 sense + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4760;)Ljava/util/Optional; method_24641 findNearestWarpedFungus + p 1 world + p 2 hoglin +c net/minecraft/class_4828 net/minecraft/entity/ai/brain/task/ForgetAttackTargetTask + f I field_30177 REMEMBER_TIME + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;ZLnet/minecraft/class_7906;Lnet/minecraft/class_4828$class_10252;Lnet/minecraft/class_4828$class_10253;Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)Z method_47135 method_47135 + p 6 world + p 7 entity + p 8 time + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;Lnet/minecraft/class_1309;)V method_47142 method_47142 + p 2 target + p 1 entity + p 0 world + m (Lnet/minecraft/class_4828$class_10252;)Lnet/minecraft/class_7893; method_47138 create + p 0 condition + m ()Lnet/minecraft/class_7893; method_47132 create + m (Lnet/minecraft/class_4828$class_10253;)Lnet/minecraft/class_7893; method_47137 create + p 0 callback + m (Lnet/minecraft/class_1309;Ljava/util/Optional;)Z method_24621 cannotReachTarget + p 0 target + p 1 lastReachTime + m (ZLnet/minecraft/class_4828$class_10252;Lnet/minecraft/class_4828$class_10253;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47140 method_47140 + p 3 context + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;Lnet/minecraft/class_1309;)V method_47134 method_47134 + p 2 target + p 1 entity + p 0 world + m (Lnet/minecraft/class_7898$class_7900;ZLnet/minecraft/class_4828$class_10252;Lnet/minecraft/class_4828$class_10253;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47136 method_47136 + p 5 cantReachWalkTargetSince + p 4 attackTarget + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Z method_47133 method_47133 + p 1 target + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Z method_47141 method_47141 + p 0 world + p 1 target + m (Lnet/minecraft/class_4828$class_10252;Lnet/minecraft/class_4828$class_10253;Z)Lnet/minecraft/class_7893; method_47139 create + p 1 callback + p 2 shouldForgetIfTargetUnreachable + p 0 condition +c net/minecraft/class_4828$class_10252 net/minecraft/entity/ai/brain/task/ForgetAttackTargetTask$AlternativeCondition + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Z test test + p 2 target + p 1 world +c net/minecraft/class_4828$class_10253 net/minecraft/entity/ai/brain/task/ForgetAttackTargetTask$ForgetCallback + m (Lnet/minecraft/class_3218;Ljava/lang/Object;Lnet/minecraft/class_1309;)V accept accept + p 2 entity + p 3 target + p 1 world +c net/minecraft/class_4827 net/minecraft/entity/ai/brain/task/WantNewItemTask + m (Lnet/minecraft/class_7898$class_7900;ILnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47292 method_47292 + p 2 admiringItem + p 3 nearestVisibleWantedItem + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;ILnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47293 method_47293 + p 6 time + p 5 entity + p 4 world + m (I)Lnet/minecraft/class_7893; method_47290 create + p 0 range + m (ILnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47291 method_47291 + p 1 context +c net/minecraft/class_4829 net/minecraft/entity/ai/brain/task/ForgetAngryAtTargetTask + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1309; method_47145 method_47145 + p 0 target + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47147 method_47147 + p 1 angryAt + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47146 method_47146 + p 0 context + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47148 method_47148 + p 4 time + p 2 world + p 3 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Z method_47144 method_47144 + p 1 target + m ()Lnet/minecraft/class_7893; method_47143 create + m (Lnet/minecraft/class_7906;Lnet/minecraft/class_1309;)V method_47149 method_47149 + p 1 target +c net/minecraft/class_4824 net/minecraft/entity/ai/brain/task/UpdateAttackTargetTask + m (Lnet/minecraft/class_4824$class_10250;Lnet/minecraft/class_4824$class_10251;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47121 method_47121 + p 2 context + m (Lnet/minecraft/class_4824$class_10251;)Lnet/minecraft/class_7893; method_47119 create + p 0 targetGetter + m (Lnet/minecraft/class_4824$class_10250;Lnet/minecraft/class_4824$class_10251;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)Z method_47123 method_47123 + p 6 time + p 5 entity + p 4 world + m (Lnet/minecraft/class_4824$class_10250;Lnet/minecraft/class_4824$class_10251;)Lnet/minecraft/class_7893; method_47120 create + p 0 condition + p 1 targetGetter + m (Lnet/minecraft/class_4824$class_10250;Lnet/minecraft/class_4824$class_10251;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47122 method_47122 + p 2 attackTarget + p 3 cantReachWalkTargetSince + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)Z method_47118 method_47118 + p 0 world + p 1 entity +c net/minecraft/class_4824$class_10250 net/minecraft/entity/ai/brain/task/UpdateAttackTargetTask$StartCondition + m (Lnet/minecraft/class_3218;Ljava/lang/Object;)Z test test + p 2 entity + p 1 world +c net/minecraft/class_4824$class_10251 net/minecraft/entity/ai/brain/task/UpdateAttackTargetTask$TargetGetter + m (Lnet/minecraft/class_3218;Ljava/lang/Object;)Ljava/util/Optional; get get + p 1 world + p 2 entity +c net/minecraft/class_4823 net/minecraft/entity/ai/brain/task/AdmireItemTask + m (ILnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47280 method_47280 + p 1 context + m (Lnet/minecraft/class_7898$class_7900;ILnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47281 method_47281 + p 5 disableWalkToAdmireItem + p 4 admiringDisabled + p 3 admiringItem + p 2 nearestVisibleWantedItem + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;ILnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47282 method_47282 + p 4 world + p 5 entity + p 6 time + m (I)Lnet/minecraft/class_7893; method_47279 create + p 0 duration +c net/minecraft/class_4826 net/minecraft/entity/ai/brain/task/HuntHoglinTask + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_4836;J)Z method_47285 method_47285 + p 5 time + p 3 world + p 4 entity + m (Ljava/util/List;)Ljava/lang/Boolean; method_47289 method_47289 + p 0 piglin + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47286 method_47286 + p 3 huntedRecently + p 4 nearestVisibleAdultPiglins + p 1 nearestVisibleHuntableHoglin + p 2 angryAt + m (Lnet/minecraft/class_5418;)Z method_47287 hasHuntedRecently + p 0 piglin + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47284 method_47284 + p 0 context + m (Ljava/util/List;)V method_47288 method_47288 + p 0 piglin + m ()Lnet/minecraft/class_7894; method_47283 create +c net/minecraft/class_4825 net/minecraft/entity/ai/brain/task/DefeatTargetTask + m (Ljava/util/function/BiPredicate;ILnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47127 method_47127 + p 2 context + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Ljava/util/function/BiPredicate;Lnet/minecraft/class_7906;ILnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47125 method_47125 + p 9 time + p 8 entity + p 7 world + m (Lnet/minecraft/class_7898$class_7900;Ljava/util/function/BiPredicate;ILnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47126 method_47126 + p 3 attackTarget + p 6 dancing + p 4 angryAt + p 5 celebrateLocation + m (ILjava/util/function/BiPredicate;)Lnet/minecraft/class_7893; method_47124 create + p 1 predicate + p 0 celebrationDuration +c net/minecraft/class_4842 net/minecraft/client/render/entity/PiglinEntityRenderer + f Lnet/minecraft/class_2960; field_53197 PIGLIN_BRUTE_TEXTURE + f Lnet/minecraft/class_2960; field_53196 PIGLIN_TEXTURE + f Lnet/minecraft/class_976$class_9994; field_53195 HEAD_TRANSFORMATION + m (Lnet/minecraft/class_10054;)Z method_25451 isShaking + m (Lnet/minecraft/class_5418;Lnet/minecraft/class_10054;F)V method_62508 updateRenderState + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_5601;Lnet/minecraft/class_5601;Lnet/minecraft/class_11677;Lnet/minecraft/class_11677;)V + p 1 ctx + p 2 mainLayer + p 5 babyModel + p 3 babyMainLayer + p 4 adultModel + m (Lnet/minecraft/class_10054;)Lnet/minecraft/class_2960; method_3982 getTexture + m ()Lnet/minecraft/class_10054; method_62509 createRenderState +c net/minecraft/class_4841 net/minecraft/client/render/debug/VillageSectionsDebugRenderer + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3902;)V method_75455 method_75455 + p 1 sections + p 0 pos +c net/minecraft/class_4844 net/minecraft/util/Uuids + f Lcom/mojang/serialization/Codec; field_41525 STRING_CODEC + f Lcom/mojang/serialization/Codec; field_46588 STRICT_CODEC + f Lcom/mojang/serialization/Codec; field_47491 SET_CODEC + f Lcom/mojang/serialization/Codec; field_25122 INT_STREAM_CODEC + f Lcom/mojang/serialization/Codec; field_40825 CODEC + f Lcom/mojang/serialization/Codec; field_48974 LINKED_SET_CODEC + f I field_39211 BYTE_ARRAY_SIZE + f Ljava/lang/String; field_38907 OFFLINE_PLAYER_UUID_PREFIX + f Lnet/minecraft/class_9139; field_48453 PACKET_CODEC + m (Ljava/util/UUID;)Ljava/util/stream/IntStream; method_29727 method_29727 + p 0 uuid + m ([I)Ljava/util/UUID; method_26276 toUuid + p 0 array + m (Ljava/util/UUID;)[I method_26275 toIntArray + p 0 uuid + m (JJ)[I method_26274 toIntArray + p 2 uuidLeast + p 0 uuidMost + m (Ljava/lang/String;)Ljava/util/UUID; method_43344 getOfflinePlayerUuid + p 0 nickname + m (Ljava/lang/String;)Lcom/mojang/authlib/GameProfile; method_54140 getOfflinePlayerProfile + p 0 nickname + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_47804 method_47804 + p 0 string + m (Ljava/util/UUID;)[B method_44827 toByteArray + p 0 uuid + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/UUID; method_35848 toUuid + p 0 dynamic + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_46560 method_46560 + p 0 string + m (Ljava/util/stream/IntStream;)Lcom/mojang/serialization/DataResult; method_29122 method_29122 + p 0 uuidStream +c net/minecraft/class_4844$1 net/minecraft/util/Uuids$1 + m (Lio/netty/buffer/ByteBuf;Ljava/util/UUID;)V method_56164 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/util/UUID; method_56163 decode +c net/minecraft/class_3513 net/minecraft/util/collection/Int2ObjectBiMap + f I field_15648 size + f I field_15649 nextId + f [I field_15646 ids + f F field_29829 LOAD_FACTOR + f [Ljava/lang/Object; field_15651 values + f I field_29828 ABSENT + f [Ljava/lang/Object; field_15647 idToValues + f Ljava/lang/Object; field_15650 EMPTY + m (I)I method_15223 findFree + p 1 size + m (Ljava/lang/Object;I)V method_15230 put + p 2 id + p 1 value + m (Ljava/lang/Object;)Z method_34904 contains + p 1 value + m ()Lnet/minecraft/class_3513; method_39940 copy + m (I)Z method_34903 containsKey + p 1 index + m ()I method_15226 nextId + m (Ljava/lang/Object;)I method_15225 add + p 1 value + m (I)I method_15222 getIdFromIndex + p 1 index + m (Ljava/lang/Object;)I method_15228 getIdealIndex + p 1 value + m (Ljava/lang/Object;I)I method_15232 findIndex + p 1 value + p 2 id + m (I)V + p 1 size + m ()V method_15229 clear + m ([Ljava/lang/Object;[I[Ljava/lang/Object;II)V + p 3 idToValues + p 4 nextId + p 5 size + p 1 values + p 2 ids + m (I)Lnet/minecraft/class_3513; method_37913 create + p 0 expectedSize + m (I)V method_15224 resize + p 1 newSize +c net/minecraft/class_4840 net/minecraft/client/render/entity/model/PiglinEntityModel + c Represents the model of a piglin-like entity.\n\n

\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HAT} (note: is by default empty)Root part{@link #hat}
{@value EntityModelPartNames#HEAD}Root part{@link #head}
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value EntityModelPartNames#RIGHT_ARM}Root part{@link #rightArm}
{@value EntityModelPartNames#LEFT_ARM}Root part{@link #leftArm}
{@value EntityModelPartNames#RIGHT_LEG}Root part{@link #rightLeg}
{@value EntityModelPartNames#LEFT_LEG}Root part{@link #leftLeg}
{@value #EAR}Root part{@link #ear}
{@value #CLOAK}Root part{@link #cloak}
{@value #LEFT_SLEEVE}Root part{@link #leftSleeve}
{@value #RIGHT_SLEEVE}Root part{@link #rightSleeve}
{@value #LEFT_PANTS}Root part{@link #leftPants}
{@value #RIGHT_PANTS}Root part{@link #rightPants}
{@value EntityModelPartNames#JACKET}Root part{@link #jacket}
{@value EntityModelPartNames#LEFT_EAR}{@value EntityModelPartNames#HEAD}{@link #leftEar}
{@value EntityModelPartNames#RIGHT_EAR}{@value EntityModelPartNames#HEAD}{@link #rightEar}
\n
+ m (Lnet/minecraft/class_10054;)V method_29354 rotateMainArm + p 1 state + m (Lnet/minecraft/class_10054;)V method_29355 animateArms + m (Lnet/minecraft/class_10054;)V method_24803 setAngles +c net/minecraft/class_3508 net/minecraft/util/collection/PackedIntegerArray + f I field_15632 size + f I field_15633 elementBits + f J field_15634 maxValue + f I field_24079 elementsPerLong + f [J field_15631 data + f I field_24080 indexScale + f I field_24081 indexOffset + f I field_24082 indexShift + f [I field_24078 INDEX_PARAMETERS + c Magic constants for faster integer division by a constant.\n\n

This is computed as {@code (n * scale + offset) >> (32 + shift)}. For a divisor n,\nthe constants are stored as such:\n\n

    \n
  • scale at 3 * (n - 1)
  • \n
  • offset at 3 * (n - 1) + 1
  • \n
  • shift at 3 * (n - 1) + 2
  • \n
+ m (I)I method_27284 getStorageIndex + p 1 index + m (II[J)V + p 3 data + p 2 size + p 1 elementBits + m (II)V + p 2 size + p 1 elementBits + m (II[I)V + p 3 data + p 2 size + p 1 elementBits +c net/minecraft/class_3508$class_6685 net/minecraft/util/collection/PackedIntegerArray$InvalidLengthException + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/class_4838 net/minecraft/entity/mob/PiglinBrain + f I field_30574 AVOID_TARGET_EXPIRY + f Lnet/minecraft/class_6019; field_22391 AVOID_MEMORY_DURATION + f F field_30560 START_RIDING_SPEED + f F field_30584 CROSSBOW_ATTACK_FORWARD_MOVEMENT + f Lnet/minecraft/class_6019; field_22390 RIDE_TARGET_MEMORY_DURATION + f Lnet/minecraft/class_6019; field_22389 MEMORY_TRANSFER_TASK_DURATION + f Lnet/minecraft/class_1792; field_23826 BARTERING_ITEM + f Lnet/minecraft/class_6019; field_22388 HUNT_MEMORY_DURATION + f Lnet/minecraft/class_6019; field_25698 GO_TO_NEMESIS_MEMORY_DURATION + f I field_30575 ADMIRING_DISABLED_EXPIRY + f Lnet/minecraft/class_6019; field_25384 GO_TO_ZOMBIFIED_MEMORY_DURATION + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4836;Lnet/minecraft/class_1309;)Z method_24755 isPreferredAttackTarget + p 1 piglin + p 2 target + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5418;Lnet/minecraft/class_1309;)V method_24759 tryRevenge + p 2 target + p 1 piglin + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4836;)Ljava/util/Optional; method_24777 getPreferredTarget + p 1 piglin + p 0 world + m (Lnet/minecraft/class_4836;Lnet/minecraft/class_4095;)V method_24751 addFightActivities + p 1 brain + p 0 piglin + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_29276 isHuntingTarget + p 1 target + p 0 piglin + m (Lnet/minecraft/class_4836;)Ljava/util/Optional; method_30091 getCurrentActivitySound + p 0 piglin + m (Lnet/minecraft/class_1799;)Z method_24746 acceptsForBarter + p 0 stack + m (Lnet/minecraft/class_4836;Lnet/minecraft/class_1799;)V method_24849 barterItem + p 0 piglin + p 1 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5418;Lnet/minecraft/class_1309;)V method_24763 angerAtIfCloser + p 2 target + p 1 piglin + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5418;Lnet/minecraft/class_1309;)V method_24750 becomeAngryWith + p 2 target + p 1 piglin + p 0 world + m (Lnet/minecraft/class_4095;)V method_24725 addCoreActivities + p 0 brain + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4836;Lnet/minecraft/class_1542;)V method_24726 loot + p 2 itemEntity + p 0 world + p 1 piglin + m (Lnet/minecraft/class_4836;Ljava/util/List;)V method_24774 dropBarteredItem + p 0 piglin + p 1 items + m (Lnet/minecraft/class_7895$class_7896;Lnet/minecraft/class_1309;)Z method_47273 method_47273 + p 1 entity + m (Lnet/minecraft/class_4836;)Z method_24791 hasSoulFireNearby + p 0 piglin + m (Lnet/minecraft/class_4836;)Z method_24850 doesNotHaveGoldInOffHand + p 0 piglin + m (Lnet/minecraft/class_1309;)Z method_24748 isHoldingCrossbow + p 0 piglin + m (Lnet/minecraft/class_1309;)Z method_63665 isWearingPiglinSafeArmor + p 0 entity + m (Lnet/minecraft/class_4836;Lnet/minecraft/class_1657;Ljava/util/List;)V method_24727 dropBarteredItem + p 0 piglin + p 2 items + p 1 player + m (Lnet/minecraft/class_4836;)V method_24787 setEatenRecently + p 0 piglin + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_5418;)V method_24721 method_24721 + p 1 piglinx + m (Lnet/minecraft/class_4836;Lnet/minecraft/class_1799;)Z method_27086 isWillingToTrade + p 1 nearbyItems + p 0 piglin + m (Lnet/minecraft/class_1799;)Z method_24735 isGoldenItem + p 0 stack + m ()Lnet/minecraft/class_7893; method_24747 makeFleeFromZombifiedPiglinTask + m ()Lnet/minecraft/class_4118; method_24717 makeRandomFollowTask + m (Lnet/minecraft/class_4836;Lnet/minecraft/class_1309;)V method_24771 runAwayFromClosestTarget + p 1 target + p 0 piglin + m (Lnet/minecraft/class_4836;)Z method_47274 method_47274 + p 0 piglin + m (Lnet/minecraft/class_4836;)Z method_24790 isAdmiringItem + p 0 entity + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_24720 method_24720 + p 1 preferredTarget + m (Lnet/minecraft/class_4836;Lnet/minecraft/class_1799;)Z method_24730 canGather + p 1 stack + p 0 piglin + m (Lnet/minecraft/class_4836;Lnet/minecraft/class_1309;)V method_24767 groupRunAwayFrom + p 0 piglin + p 1 target + m (Lnet/minecraft/class_5418;)Ljava/util/Optional; method_24782 getAngryAt + p 0 piglin + m (Lnet/minecraft/class_4836;Ljava/util/List;Lnet/minecraft/class_243;)V method_24731 drop + p 2 pos + p 0 piglin + p 1 items + m (Lnet/minecraft/class_4836;)Z method_29275 method_29275 + p 0 piglin + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;Lnet/minecraft/class_5418;)V method_24740 method_24740 + p 2 nearbyPiglin + m (Lnet/minecraft/class_1309;)Z method_24769 hasBeenHurt + p 0 piglin + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5418;)V method_29945 angerNearbyPiglins + p 0 world + p 1 piglin + m (Lnet/minecraft/class_4836;)Z method_24714 hasBeenHitByPlayer + p 0 piglin + m (Lnet/minecraft/class_5418;)Z method_30241 method_30241 + p 0 nearbyVisiblePiglin + m (Lnet/minecraft/class_1799;)Z method_24752 isFood + p 0 stack + m (Lnet/minecraft/class_1299;)Z method_29534 isZombified + p 0 entityType + m (Lnet/minecraft/class_4836;Ljava/util/List;)V method_24772 doBarter + p 0 piglin + p 1 items + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5418;Lnet/minecraft/class_1657;)V method_29944 method_29944 + p 2 player + m (Lnet/minecraft/class_5418;)Z method_24766 hasIdleActivity + p 0 piglin + m (Lnet/minecraft/class_4836;)V method_24781 stopWalking + p 0 piglin + m (Lnet/minecraft/class_4836;)Z method_24789 hasAteRecently + p 0 piglin + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5418;Lnet/minecraft/class_1309;)V method_29946 becomeAngryWithPlayer + p 2 target + p 1 piglin + p 0 world + m (Lnet/minecraft/class_4836;)Ljava/util/Optional; method_29536 getAvoiding + p 0 piglin + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5418;Lnet/minecraft/class_1309;)V method_24742 angerAtCloserTargets + p 2 target + p 0 world + p 1 piglin + m (Lnet/minecraft/class_4836;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Z method_24775 method_24775 + p 2 target + p 1 world + m (Lnet/minecraft/class_4836;Lnet/minecraft/class_1297;)Z method_24723 canRide + p 1 ridden + p 0 piglin + m (Lnet/minecraft/class_4836;Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_24732 create + p 1 brain + p 0 piglin + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4836;)Z method_64474 method_64474 + p 1 target + p 0 world + m (Lnet/minecraft/class_4095;)V method_24764 addAvoidActivities + p 0 brain + m (Lnet/minecraft/class_1309;)Z method_24761 hasPlayerHoldingWantedItemNearby + p 0 entity + m (Lnet/minecraft/class_1309;)Z method_24739 isGoldHoldingPlayer + p 0 target + m (Lnet/minecraft/class_4836;)Z method_24784 hasNoAdvantageAgainstHoglins + p 0 piglin + m (Lnet/minecraft/class_4836;)Z method_29277 canRideHoglin + p 0 piglin + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5418;)V method_29943 method_29943 + p 1 nearbyPiglin + m (Lnet/minecraft/class_4836;Lnet/minecraft/class_4168;)Lnet/minecraft/class_3414; method_30088 method_30088 + p 1 activity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1657;Lnet/minecraft/class_4836;)V method_24734 method_24734 + p 2 nearbyPiglin + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4836;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_24728 playerInteract + p 2 player + p 3 hand + p 0 world + p 1 piglin + m (Lnet/minecraft/class_4836;)Z method_29537 getNearestZombifiedPiglin + p 0 piglin + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4836;)Z method_64473 method_64473 + p 1 target + p 0 world + m (Lnet/minecraft/class_4836;)Z method_24783 shouldRunAwayFromHoglins + p 0 piglin + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4836;Lnet/minecraft/class_1309;)V method_24724 onAttacked + p 2 attacker + p 1 piglin + p 0 world + m (Lnet/minecraft/class_4836;Lnet/minecraft/class_4168;)Lnet/minecraft/class_3414; method_30087 getSound + p 0 piglin + p 1 activity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4836;)V method_25948 pickupItemWithOffHand + p 1 piglin + p 0 world + m (Lnet/minecraft/class_5418;)Ljava/util/Optional; method_29947 getNearestDetectedPlayer + p 0 piglin + m (ZLnet/minecraft/class_1657;Lnet/minecraft/class_4836;)Z method_24745 method_24745 + p 2 piglin + m (Lnet/minecraft/class_4836;)Z method_29538 hasTargetToAvoid + p 0 piglin + m (Lnet/minecraft/class_1309;)V method_24753 setAdmiringItem + p 0 entity + m (Lnet/minecraft/class_4836;)V method_24722 tickActivities + p 0 piglin + m ()Lnet/minecraft/class_7893; method_24738 makeGoToSoulFireTask + m (Lnet/minecraft/class_4836;Lnet/minecraft/class_5819;)V method_24736 setHuntedRecently + p 0 piglin + p 1 random + m (Lnet/minecraft/class_4836;)Z method_24917 hasItemInOffHand + p 0 piglin + m (Lnet/minecraft/class_4836;)Ljava/util/List; method_24776 getBarteredItem + p 0 piglin + m ()Lnet/minecraft/class_4118; method_24718 makeRandomWanderTask + m (Lnet/minecraft/class_4095;)V method_24743 addIdleActivities + p 0 brain + m ()Lnet/minecraft/class_7893; method_30090 goToNemesisTask + m (Lnet/minecraft/class_4836;)Ljava/util/List; method_24780 getNearbyVisiblePiglins + p 0 piglin + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4836;Z)V method_24741 consumeOffHandItem + p 2 barter + p 1 piglin + p 0 world + m (Lnet/minecraft/class_5418;)Ljava/util/List; method_26350 getNearbyPiglins + p 0 piglin + m ()Lcom/google/common/collect/ImmutableList; method_47272 makeFollowTasks + m (Lnet/minecraft/class_5418;)V method_24762 rememberHunting + p 0 piglin + m (Lnet/minecraft/class_4836;)Z method_24785 hasOutnumberedHoglins + p 0 piglins + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4836;Lnet/minecraft/class_1799;)V method_30089 swapItemWithOffHand + p 0 world + p 1 piglin + p 2 stack + m (Lnet/minecraft/class_1542;)Lnet/minecraft/class_1799; method_24848 getItemFromStack + p 0 stack + m ()Lnet/minecraft/class_7893; method_24737 makeRememberRideableHoglinTask + m (Lnet/minecraft/class_4836;Lnet/minecraft/class_1309;)V method_24773 runAwayFrom + p 1 target + p 0 piglin + m (Lnet/minecraft/class_4095;)V method_24756 addCelebrateActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_24768 addRideActivities + p 0 brain + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1657;Z)V method_24733 onGuardedBlockInteracted + p 2 blockOpen + p 0 world + p 1 player + m (Lnet/minecraft/class_4836;)Lnet/minecraft/class_243; method_24788 findGround + p 0 piglin + m (Lnet/minecraft/class_1309;)Z method_24765 canWander + p 0 piglin + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_4095;Lnet/minecraft/class_1309;)V method_29535 method_29535 + p 2 avoiding + m (Lnet/minecraft/class_4095;)V method_24760 addAdmireItemActivities + p 0 brain +c net/minecraft/class_3509 net/minecraft/util/collection/TypeFilterableList + c A collection allowing getting all elements of a specific type. Backed\nby {@link java.util.ArrayList}s.\n\n

This implementation is not efficient for frequent modifications. You\nshouldn't use this if you don't call {@link #getAllOfType(Class)}.\n\n@see #getAllOfType(Class)\n@param the {@link #elementType common element type} + f Ljava/lang/Class; field_15637 elementType + f Ljava/util/Map; field_15636 elementsByType + f Ljava/util/List; field_15635 allElements + m (Ljava/lang/Object;)Z add add + p 1 e + m (Ljava/lang/Class;)Ljava/util/Collection; method_15216 getAllOfType + c Returns all elements in this collection that are instances of {@code type}.\nThe result is unmodifiable.\n\n

The {@code type}, or {@code S}, must extend the class' type parameter {@code T}.\n\n@param the specialized type, effectively {@code S extends T}\n@throws IllegalArgumentException when {@code type} does not extend\n{@link #elementType}\n@return this collection's elements that are instances of {@code type} + p 1 type + c the specialized type, must extend {@link #elementType} + m ()Ljava/util/List; method_34897 copy + m (Ljava/lang/Object;)Z remove remove + p 1 o + m (Ljava/lang/Class;)Ljava/util/List; method_15217 method_15217 + p 1 typeClass + m (Ljava/lang/Object;)Z contains contains + c {@inheritDoc}\n\n@throws IllegalArgumentException if {@code o} is not an instance of\n{@link #elementType} + p 1 o + m (Ljava/lang/Class;)V + p 1 elementType +c net/minecraft/class_3503 net/minecraft/registry/tag/TagGroupLoader + f Lnet/minecraft/class_3503$class_10272; field_54556 entrySupplier + f Lorg/slf4j/Logger; field_15607 LOGGER + f Ljava/lang/String; field_15605 dataType + m (Lnet/minecraft/class_5455$class_6890;Ljava/util/List;)Ljava/util/List; method_61313 collectRegistries + p 1 tagLoads + p 0 registryManager + m (Lnet/minecraft/class_2960;Ljava/util/List;)V method_33175 method_33175 + p 1 missingReferences + m (Lnet/minecraft/class_3497$class_7474;Ljava/util/List;)Lcom/mojang/datafixers/util/Either; method_43952 resolveAll + p 1 valueGetter + p 2 entries + m (Lnet/minecraft/class_5321;Ljava/util/Map;)Ljava/util/Map; method_61304 toTagKeyedMap + p 0 registryRef + p 1 tags + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_5455;)Ljava/util/List; method_61307 startReload + p 0 resourceManager + p 1 registryManager + m (Ljava/util/List;Lnet/minecraft/class_5321;)Lnet/minecraft/class_2378$class_10106; method_61310 find + p 0 pendingTags + p 1 registryRef + m (Lnet/minecraft/class_6864$class_5748;Lnet/minecraft/class_2385;)V method_61309 loadFromNetwork + p 0 tags + p 1 registry + m (Lnet/minecraft/class_5321;Ljava/util/Map$Entry;)Lnet/minecraft/class_6862; method_61303 method_61303 + p 1 entry + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_5455$class_6892;)Ljava/util/Optional; method_61306 method_61306 + p 1 registry + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_2385;)V method_61308 loadInitial + p 0 resourceManager + p 1 registry + m (Lnet/minecraft/class_3503$class_10272;Ljava/lang/String;)V + p 1 entrySupplier + p 2 dataType + m (Lnet/minecraft/class_8523;Lnet/minecraft/class_2960;Ljava/util/List;)V method_51477 method_51477 + p 1 id + p 2 entries + m (Lnet/minecraft/class_2385;Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;Ljava/util/List;)V method_61314 method_61314 + p 2 id + p 3 entries + m (Ljava/util/Map;Lnet/minecraft/class_2960;Ljava/util/List;)V method_32840 method_32840 + p 2 values + m (Lnet/minecraft/class_2960;)Ljava/util/List; method_43951 method_43951 + p 0 id + m (Lnet/minecraft/class_3497$class_7474;Ljava/util/Map;Lnet/minecraft/class_2960;Lnet/minecraft/class_3503$class_8522;)V method_51476 method_51476 + p 4 dependencies + p 3 id + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_2378;)Ljava/util/Optional; method_61305 startReload + p 1 registry + p 0 resourceManager + m (Lnet/minecraft/class_3300;)Ljava/util/Map; method_33174 loadTags + p 1 resourceManager + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_5455$class_6892;)V method_61311 method_61311 + p 2 registry + m (Ljava/util/List;Ljava/lang/String;Lnet/minecraft/class_3497;)V method_43954 method_43954 + p 2 entry + m (Ljava/util/Map;)Ljava/util/Map; method_18242 buildGroup + p 1 tags +c net/minecraft/class_3503$class_8522 net/minecraft/registry/tag/TagGroupLoader$TagDependencies + f Ljava/util/List; comp_1486 entries + m (Ljava/util/function/Consumer;Lnet/minecraft/class_3503$class_5145;)V method_51479 method_51479 + p 1 entry + m (Ljava/util/function/Consumer;Lnet/minecraft/class_3503$class_5145;)V method_51481 method_51481 + p 1 entry + m ()Ljava/util/List; comp_1486 entries + m (Ljava/util/List;)V + p 1 entries +c net/minecraft/class_3503$class_6863 net/minecraft/registry/tag/TagGroupLoader$RegistryTags + f Lnet/minecraft/class_5321; comp_328 key + f Ljava/util/Map; comp_329 tags + m ()Ljava/util/Map; comp_329 tags + m ()Lnet/minecraft/class_5321; comp_328 key + m (Lnet/minecraft/class_5321;Ljava/util/Map;)V + p 1 key + p 2 tags +c net/minecraft/class_3503$class_5145 net/minecraft/registry/tag/TagGroupLoader$TrackedEntry + f Ljava/lang/String; comp_325 source + f Lnet/minecraft/class_3497; comp_324 entry + m (Lnet/minecraft/class_3497;Ljava/lang/String;)V + p 2 source + p 1 entry + m ()Lnet/minecraft/class_3497; comp_324 entry + m ()Ljava/lang/String; comp_325 source +c net/minecraft/class_3503$class_10272 net/minecraft/registry/tag/TagGroupLoader$EntrySupplier + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_2960;Z)Ljava/util/Optional; method_64599 method_64599 + p 2 required + p 1 id + m (Lnet/minecraft/class_2385;)Lnet/minecraft/class_3503$class_10272; method_64600 forInitial + p 0 registry + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_3503$class_10272; method_64598 forReload + p 0 registry + m (Lnet/minecraft/class_2960;Z)Ljava/util/Optional; get get + p 1 id + p 2 required + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_2385;Lnet/minecraft/class_2960;Z)Ljava/util/Optional; method_64597 method_64597 + p 3 required + p 2 id +c net/minecraft/class_4835 net/minecraft/entity/mob/HoglinBrain + f I field_30539 BABY_MELEE_ATTACK_COOLDOWN + f Lnet/minecraft/class_6019; field_22369 AVOID_MEMORY_DURATION + f F field_30542 AVOID_TARGET_SPEED + f I field_30538 ADULT_MELEE_ATTACK_COOLDOWN + f Lnet/minecraft/class_6019; field_25383 WALK_TOWARD_CLOSEST_ADULT_RANGE + m (Lnet/minecraft/class_4760;)Z method_24686 hasMoreHoglinsAround + p 0 hoglin + m (Lnet/minecraft/class_4760;Lnet/minecraft/class_1309;)V method_24678 avoidEnemy + p 1 target + p 0 hoglin + m (Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_24668 create + p 0 brain + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4760;Lnet/minecraft/class_1309;)V method_24672 onAttacked + p 1 hoglin + p 0 world + p 2 attacker + m (Lnet/minecraft/class_4760;Lnet/minecraft/class_4168;)Lnet/minecraft/class_3414; method_30082 getSoundEvent + p 0 hoglin + p 1 activity + m (Lnet/minecraft/class_4760;Lnet/minecraft/class_4168;)Lnet/minecraft/class_3414; method_30084 method_30084 + p 1 activity + m (Lnet/minecraft/class_4095;)V method_24676 addFightTasks + p 0 brain + m (Lnet/minecraft/class_4095;)V method_24666 addCoreTasks + p 0 brain + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_4760;)V method_24663 method_24663 + p 1 hoglinx + m (Lnet/minecraft/class_4760;)V method_24664 refreshActivities + p 0 hoglin + m (Lnet/minecraft/class_4760;)Z method_30085 hasNearestRepellent + p 0 hoglin + m (Lnet/minecraft/class_4760;Lnet/minecraft/class_1309;)V method_24665 onAttacking + p 0 hoglin + p 1 target + m (Lnet/minecraft/class_4760;Lnet/minecraft/class_1309;)V method_24687 askAdultsForHelp + p 1 target + p 0 hoglin + m (Lnet/minecraft/class_4760;)Z method_24691 hasBreedTarget + p 0 hoglin + m (Lnet/minecraft/class_4760;Lnet/minecraft/class_1309;)V method_24689 setAttackTargetIfCloser + p 1 targetCandidate + p 0 hoglin + m (Lnet/minecraft/class_4760;Lnet/minecraft/class_2338;)Z method_24669 isWarpedFungusAround + p 0 hoglin + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4760;Lnet/minecraft/class_1309;)V method_24683 targetEnemy + p 0 world + p 1 hoglin + p 2 target + m (Lnet/minecraft/class_4760;)Z method_25947 isLoneAdult + p 0 hoglin + m (Lnet/minecraft/class_4760;)Ljava/util/Optional; method_30083 getSoundEvent + p 0 hoglin + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_4760;)V method_24670 method_24670 + p 1 hoglinx + m (Lnet/minecraft/class_4095;)V method_24679 addAvoidTasks + p 0 brain + m (Lnet/minecraft/class_4760;)Ljava/util/List; method_24690 getAdultHoglinsAround + p 0 hoglin + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4760;)Ljava/util/Optional; method_24684 getNearestVisibleTargetablePlayer + p 1 hoglin + p 0 world + m (Lnet/minecraft/class_4760;Lnet/minecraft/class_1309;)V method_24675 askAdultsToAvoid + p 1 target + p 0 hoglin + m (Lnet/minecraft/class_4095;)V method_24673 addIdleTasks + p 0 brain + m (Lnet/minecraft/class_4760;Lnet/minecraft/class_1309;)V method_24685 setAttackTarget + p 1 target + p 0 hoglin + m (Lnet/minecraft/class_4760;)Z method_24677 isNearPlayer + p 0 hoglin + m ()Lnet/minecraft/class_4118; method_24662 makeRandomWalkTask + m (Lnet/minecraft/class_4760;Lnet/minecraft/class_1309;)V method_24681 avoid + p 1 target + p 0 hoglin +c net/minecraft/class_4834 net/minecraft/entity/ai/brain/sensor/PiglinSpecificSensor + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_24648 isPiglinRepellent + p 1 pos + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Ljava/util/Optional; method_24649 findPiglinRepellent + p 0 world + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_30077 method_30077 + p 1 pos +c net/minecraft/class_4837 net/minecraft/entity/mob/PiglinActivity + f Lnet/minecraft/class_4837; field_22383 CROSSBOW_HOLD + f Lnet/minecraft/class_4837; field_22384 CROSSBOW_CHARGE + f Lnet/minecraft/class_4837; field_22385 ADMIRING_ITEM + f Lnet/minecraft/class_4837; field_22386 DEFAULT + f Lnet/minecraft/class_4837; field_25166 DANCING + f Lnet/minecraft/class_4837; field_25165 ATTACKING_WITH_MELEE_WEAPON +c net/minecraft/class_4836 net/minecraft/entity/mob/PiglinEntity + f Z field_57707 DEFAULT_IS_BABY + f Lnet/minecraft/class_1277; field_22371 inventory + f Lnet/minecraft/class_2940; field_22377 BABY + f Lnet/minecraft/class_2960; field_22379 BABY_SPEED_BOOST_ID + f Lnet/minecraft/class_2940; field_25164 DANCING + f Z field_57708 DEFAULT_CANNOT_HUNT + f Lcom/google/common/collect/ImmutableList; field_22376 SENSOR_TYPES + f Lnet/minecraft/class_1322; field_22380 BABY_SPEED_BOOST + f Z field_23738 cannotHunt + f Lnet/minecraft/class_2940; field_22378 CHARGING + f Lcom/google/common/collect/ImmutableList; field_22381 MEMORY_MODULE_TYPES + f Lnet/minecraft/class_4048; field_47818 BABY_BASE_DIMENSIONS + m (Z)V method_29274 setDancing + p 1 dancing + m (Lnet/minecraft/class_1304;Lnet/minecraft/class_1799;Lnet/minecraft/class_5819;)V method_24696 equipAtChance + p 3 random + p 2 stack + p 1 slot + m (Lnet/minecraft/class_1799;)V method_24845 equipToOffHand + p 1 stack + m (Z)V method_26954 setCannotHunt + p 1 cannotHunt + m (Lnet/minecraft/class_1297;I)Lnet/minecraft/class_1297; method_26089 getTopMostPassenger + c Returns the passenger entity at {@code maxLevel} in a stacked riding (riding on\nan entity that is riding on another entity, etc).\n\n

If the number of stacked entities is less than {@code maxLevel}, returns the\ntop most passenger entity. + p 1 entity + p 2 maxLevel + m ()Z method_29272 isDancing + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_64471 method_64471 + p 2 stack + m ()Z method_24703 isCharging + m (Lnet/minecraft/class_1799;)Z method_27085 canInsertIntoInventory + p 1 stack + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_24695 canSpawn + p 4 random + p 2 spawnReason + p 3 pos + p 0 type + p 1 world + m (Lnet/minecraft/class_1799;)Z method_24846 canEquipStack + c Returns whether this piglin can equip into or replace current equipment slot. + p 1 stack + m (Lnet/minecraft/class_1799;)V method_24844 equipToMainHand + p 1 stack + m ()Lnet/minecraft/class_1799; method_24702 makeInitialWeapon + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_24711 addItem + p 1 stack + m ()Lnet/minecraft/class_5132$class_5133; method_26953 createPiglinAttributes + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_64472 method_64472 + p 2 stack +c net/minecraft/class_405 net/minecraft/client/gui/screen/world/BackupPromptScreen + f Lnet/minecraft/class_2561; field_52794 CONFIRM_BUTTON_TEXT + f Lnet/minecraft/class_2561; field_52795 firstButtonText + f Lnet/minecraft/class_2561; field_52796 SKIP_BUTTON_TEXT + f Lnet/minecraft/class_4286; field_19234 eraseCacheCheckbox + f Lnet/minecraft/class_2561; field_2364 subtitle + f Z field_19232 showEraseCacheCheckbox + f Lnet/minecraft/class_405$class_406; field_46857 callback + f Ljava/lang/Runnable; field_46858 onCancel + f Lnet/minecraft/class_5489; field_2365 wrappedText + m (Lnet/minecraft/class_4185;)V method_19791 method_19791 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19792 method_19792 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19793 method_19793 + p 1 button + m (Ljava/lang/Runnable;Lnet/minecraft/class_405$class_406;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Z)V + p 5 firstButtonText + p 4 subtitle + p 6 showEraseCacheCheckbox + p 1 onCancel + p 3 title + p 2 callback + m (Ljava/lang/Runnable;Lnet/minecraft/class_405$class_406;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Z)V + p 2 callback + p 3 title + p 1 onCancel + p 4 subtitle + p 5 showEraseCacheCheckbox +c net/minecraft/class_405$class_406 net/minecraft/client/gui/screen/world/BackupPromptScreen$Callback + m (ZZ)V proceed proceed + p 1 backup + p 2 eraseCache +c net/minecraft/class_404 net/minecraft/client/gui/screen/option/ChatOptionsScreen + f Lnet/minecraft/class_2561; field_49493 TITLE_TEXT + m (Lnet/minecraft/class_437;Lnet/minecraft/class_315;)V + p 1 parent + p 2 options + m (Lnet/minecraft/class_315;)[Lnet/minecraft/class_7172; method_60327 getOptions + p 0 gameOptions +c net/minecraft/class_403 net/minecraft/client/gui/screen/NoticeScreen + f Lnet/minecraft/class_2561; field_2349 buttonText + f Lnet/minecraft/class_5489; field_2348 noticeLines + f I field_39539 NOTICE_TEXT_Y + f Z field_39540 shouldCloseOnEsc + f Ljava/lang/Runnable; field_2345 actionHandler + f Lnet/minecraft/class_2561; field_2346 notice + m (Ljava/lang/Runnable;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 3 notice + p 2 title + p 1 actionHandler + m (Ljava/lang/Runnable;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Z)V + p 2 title + p 3 notice + p 4 buttonText + p 5 shouldCloseOnEsc + p 1 actionHandler + m (Lnet/minecraft/class_4185;)V method_19790 method_19790 + p 1 button +c net/minecraft/class_9704 net/minecraft/enchantment/EnchantmentLevelBasedValue + f Lcom/mojang/serialization/Codec; field_51690 CODEC + f Lcom/mojang/serialization/Codec; field_51689 BASE_CODEC + m (F)Lnet/minecraft/class_9704$class_9706; method_60186 constant + p 0 value + m (F)Lnet/minecraft/class_9704$class_9709; method_60194 linear + p 0 base + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_60190 method_60190 + p 0 codec + m (Lnet/minecraft/class_9704$class_9706;)Lnet/minecraft/class_9704; method_60191 method_60191 + p 0 type + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_60193 registerAndGetDefault + p 0 registry + m (I)F method_60188 getValue + p 1 level + m (Lnet/minecraft/class_9704;)Lcom/mojang/datafixers/util/Either; method_60192 method_60192 + p 0 type + m (Lnet/minecraft/class_9704;)Lnet/minecraft/class_9704; method_60195 method_60195 + p 0 type + m (FF)Lnet/minecraft/class_9704$class_9709; method_60187 linear + p 0 base + p 1 perLevelAboveFirst + m (Ljava/util/List;Lnet/minecraft/class_9704;)Lnet/minecraft/class_9704$class_9819; method_60987 lookup + p 1 fallback + p 0 values + m ()Lcom/mojang/serialization/MapCodec; method_60185 getCodec + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_9704; method_60189 method_60189 + p 0 either +c net/minecraft/class_9704$class_9707 net/minecraft/enchantment/EnchantmentLevelBasedValue$Fraction + f Lcom/mojang/serialization/MapCodec; field_51694 CODEC + f Lnet/minecraft/class_9704; comp_2695 numerator + f Lnet/minecraft/class_9704; comp_2696 denominator + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60200 method_60200 + p 0 instance + m ()Lnet/minecraft/class_9704; comp_2696 denominator + m ()Lnet/minecraft/class_9704; comp_2695 numerator + m (Lnet/minecraft/class_9704;Lnet/minecraft/class_9704;)V + p 1 numerator + p 2 denominator +c net/minecraft/class_9704$class_9706 net/minecraft/enchantment/EnchantmentLevelBasedValue$Constant + f Lcom/mojang/serialization/MapCodec; field_51693 TYPE_CODEC + f Lcom/mojang/serialization/Codec; field_51692 CODEC + f F comp_2694 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60199 method_60199 + p 0 instance + m ()F comp_2694 value + m (F)V + p 1 value +c net/minecraft/class_9704$class_9705 net/minecraft/enchantment/EnchantmentLevelBasedValue$Clamped + f Lcom/mojang/serialization/MapCodec; field_51691 CODEC + f Lnet/minecraft/class_9704; comp_2691 value + f F comp_2693 max + f F comp_2692 min + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60196 method_60196 + p 0 instance + m (Lnet/minecraft/class_9704$class_9705;)Lcom/mojang/serialization/DataResult; method_60197 method_60197 + p 0 type + m ()Lnet/minecraft/class_9704; comp_2691 value + m ()F comp_2692 min + m ()F comp_2693 max + m (Lnet/minecraft/class_9704;FF)V + p 1 value + p 2 min + p 3 max +c net/minecraft/class_9704$class_9709 net/minecraft/enchantment/EnchantmentLevelBasedValue$Linear + f Lcom/mojang/serialization/MapCodec; field_51696 CODEC + f F comp_2699 perLevelAboveFirst + f F comp_2698 base + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60202 method_60202 + p 0 instance + m ()F comp_2699 perLevelAboveFirst + m ()F comp_2698 base + m (FF)V + p 1 base + p 2 perLevelAboveFirst +c net/minecraft/class_9704$class_9819 net/minecraft/enchantment/EnchantmentLevelBasedValue$Lookup + f Lcom/mojang/serialization/MapCodec; field_52226 CODEC + f Lnet/minecraft/class_9704; comp_2863 fallback + f Ljava/util/List; comp_2862 values + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60988 method_60988 + p 0 instance + m ()Ljava/util/List; comp_2862 values + m ()Lnet/minecraft/class_9704; comp_2863 fallback + m (Ljava/util/List;Lnet/minecraft/class_9704;)V + p 1 values + p 2 fallback +c net/minecraft/class_9704$class_9708 net/minecraft/enchantment/EnchantmentLevelBasedValue$LevelsSquared + f Lcom/mojang/serialization/MapCodec; field_51695 CODEC + f F comp_2697 added + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60201 method_60201 + p 0 instance + m ()F comp_2697 added + m (F)V + p 1 added +c net/minecraft/class_9704$class_12128 net/minecraft/enchantment/EnchantmentLevelBasedValue$Exponent + f Lcom/mojang/serialization/MapCodec; field_63421 CODEC + f Lnet/minecraft/class_9704; comp_4980 power + f Lnet/minecraft/class_9704; comp_4979 base + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75257 method_75257 + p 0 instance + m ()Lnet/minecraft/class_9704; comp_4979 base + m ()Lnet/minecraft/class_9704; comp_4980 power + m (Lnet/minecraft/class_9704;Lnet/minecraft/class_9704;)V + p 1 base + p 2 power +c net/minecraft/class_9703 net/minecraft/enchantment/effect/EnchantmentEffectTarget + f Ljava/lang/String; field_51687 id + f Lcom/mojang/serialization/Codec; field_51686 CODEC + f Lnet/minecraft/class_9703; field_51685 VICTIM + f Lnet/minecraft/class_9703; field_51684 DAMAGING_ENTITY + f Lnet/minecraft/class_9703; field_51683 ATTACKER + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_9701 net/minecraft/component/EnchantmentEffectComponentTypes + f Lcom/mojang/serialization/Codec; field_51658 COMPONENT_MAP_CODEC + f Lcom/mojang/serialization/Codec; field_51657 COMPONENT_TYPE_CODEC + f Lnet/minecraft/class_9331; field_63419 POST_PIERCING_ATTACK + f Lnet/minecraft/class_9331; field_51651 TRIDENT_SPIN_ATTACK_STRENGTH + f Lnet/minecraft/class_9331; field_51655 PREVENT_EQUIPMENT_DROP + f Lnet/minecraft/class_9331; field_51654 TRIDENT_SOUND + f Lnet/minecraft/class_9331; field_51653 CROSSBOW_CHARGING_SOUNDS + f Lnet/minecraft/class_9331; field_51652 REPAIR_WITH_XP + f Lnet/minecraft/class_9331; field_51659 DAMAGE_PROTECTION + f Lnet/minecraft/class_9331; field_51656 PREVENT_ARMOR_CHANGE + f Lnet/minecraft/class_9331; field_51671 TICK + f Lnet/minecraft/class_9331; field_51670 LOCATION_CHANGED + f Lnet/minecraft/class_9331; field_51663 KNOCKBACK + f Lnet/minecraft/class_9331; field_51662 SMASH_DAMAGE_PER_FALLEN_BLOCK + f Lnet/minecraft/class_9331; field_51661 DAMAGE + f Lnet/minecraft/class_9331; field_51660 DAMAGE_IMMUNITY + f Lnet/minecraft/class_9331; field_51667 ITEM_DAMAGE + f Lnet/minecraft/class_9331; field_51668 ATTRIBUTES + f Lnet/minecraft/class_9331; field_51666 HIT_BLOCK + f Lnet/minecraft/class_9331; field_51665 POST_ATTACK + f Lnet/minecraft/class_9331; field_51664 ARMOR_EFFECTIVENESS + f Lnet/minecraft/class_9331; field_51669 EQUIPMENT_DROPS + f Lnet/minecraft/class_9331; field_51682 MOB_EXPERIENCE + f Lnet/minecraft/class_9331; field_51681 BLOCK_EXPERIENCE + f Lnet/minecraft/class_9331; field_51680 FISHING_LUCK_BONUS + f Lnet/minecraft/class_9331; field_51675 PROJECTILE_SPREAD + f Lnet/minecraft/class_9331; field_51674 PROJECTILE_SPAWNED + f Lnet/minecraft/class_9331; field_51673 PROJECTILE_PIERCING + f Lnet/minecraft/class_9331; field_51672 AMMO_USE + f Lnet/minecraft/class_9331; field_51678 TRIDENT_RETURN_ACCELERATION + f Lnet/minecraft/class_9331; field_51679 FISHING_TIME_REDUCTION + f Lnet/minecraft/class_9331; field_51677 CROSSBOW_CHARGE_TIME + f Lnet/minecraft/class_9331; field_51676 PROJECTILE_COUNT + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60089 method_60089 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60100 method_60100 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60099 method_60099 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60087 method_60087 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60075 method_60075 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60097 method_60097 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60085 method_60085 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60073 method_60073 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60095 method_60095 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60083 method_60083 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60093 method_60093 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60081 method_60081 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60091 method_60091 + p 0 builder + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_9331; method_60079 getDefault + p 0 registry + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60105 method_60105 + p 0 builder + m (Ljava/lang/String;Ljava/util/function/UnaryOperator;)Lnet/minecraft/class_9331; method_60078 register + p 1 builderOperator + p 0 id + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60103 method_60103 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60101 method_60101 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60088 method_60088 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60076 method_60076 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60098 method_60098 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60086 method_60086 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60074 method_60074 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60096 method_60096 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60084 method_60084 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60094 method_60094 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60082 method_60082 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60092 method_60092 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60080 method_60080 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60090 method_60090 + p 0 builder + m (Lnet/minecraft/class_9331$class_9332;)Lnet/minecraft/class_9331$class_9332; method_60104 method_60104 + p 0 builder +c net/minecraft/class_413 net/minecraft/client/gui/screen/world/CustomizeFlatLevelScreen + f Lnet/minecraft/class_2960; field_45406 SLOT_TEXTURE + f Lnet/minecraft/class_413$class_4192; field_2424 layers + f Lnet/minecraft/class_525; field_2422 parent + f Lnet/minecraft/class_4185; field_2421 widgetButtonRemoveLayer + f Lnet/minecraft/class_2561; field_55099 TITLE + f Lnet/minecraft/class_3232; field_2419 config + f I field_32245 ICON_OFFSET_Y + f I field_32244 ICON_OFFSET_X + f I field_32243 ICON_BACKGROUND_OFFSET_Y + f I field_32242 ICON_BACKGROUND_OFFSET_X + f Lnet/minecraft/class_8132; field_55100 layout + f I field_32241 BUTTON_HEIGHT + f Ljava/util/function/Consumer; field_24565 configConsumer + f I field_32240 ICON_SIZE + m (Lnet/minecraft/class_4185;)V method_19806 method_19806 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19805 method_19805 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19804 method_19804 + p 1 button + m ()Lnet/minecraft/class_3232; method_29055 getConfig + m ()Z method_2147 hasLayerSelected + m ()V method_2145 updateRemoveLayerButton + m (Lnet/minecraft/class_4185;)V method_20093 method_20093 + p 1 button + m (Lnet/minecraft/class_3232;)V method_29054 setConfig + p 1 config + m (Lnet/minecraft/class_525;Ljava/util/function/Consumer;Lnet/minecraft/class_3232;)V + p 3 config + p 2 configConsumer + p 1 parent +c net/minecraft/class_413$class_4192 net/minecraft/client/gui/screen/world/CustomizeFlatLevelScreen$SuperflatLayersListWidget + f Lnet/minecraft/class_2561; field_55102 HEIGHT_TEXT + f Lnet/minecraft/class_2561; field_55101 LAYER_MATERIAL_TEXT + m ()V method_73410 refreshLayers + m (Lnet/minecraft/class_413$class_4192$class_4193;)V method_73411 removeLayer + p 1 layer + m (Lnet/minecraft/class_413$class_4192$class_11770;)V method_20094 setSelected + m ()V method_19372 updateLayers +c net/minecraft/class_413$class_4192$class_11770 net/minecraft/client/gui/screen/world/CustomizeFlatLevelScreen$SuperflatLayersListWidget$Entry +c net/minecraft/class_413$class_4192$class_4193 net/minecraft/client/gui/screen/world/CustomizeFlatLevelScreen$SuperflatLayersListWidget$SuperflatLayerEntry + f Lnet/minecraft/class_3229; field_62150 layer + f I field_62151 index + m (Lnet/minecraft/class_413$class_4192;Lnet/minecraft/class_3229;I)V + p 3 index + p 2 layer + m (Lnet/minecraft/class_332;IILnet/minecraft/class_1799;)V method_19375 renderIcon + p 4 iconItem + p 3 y + p 2 x + p 1 context + m (Lnet/minecraft/class_332;II)V method_19373 renderIconBackgroundTexture + p 3 y + p 1 context + p 2 x + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_1799; method_37055 createItemStackFor + p 1 state +c net/minecraft/class_413$class_4192$class_11771 net/minecraft/client/gui/screen/world/CustomizeFlatLevelScreen$SuperflatLayersListWidget$HeaderEntry + f Lnet/minecraft/class_327; field_62149 textRenderer + m (Lnet/minecraft/class_327;)V + p 1 textRenderer +c net/minecraft/class_412 net/minecraft/client/gui/screen/multiplayer/ConnectScreen + c The connection screen is used to initiate a connection to a remote server.\nThis is only used when connecting over LAN or to a remote dedicated server. + f Ljava/util/concurrent/atomic/AtomicInteger; field_2408 CONNECTOR_THREADS_COUNT + f Lnet/minecraft/class_437; field_2412 parent + f Lnet/minecraft/class_2561; field_2413 status + f Lorg/slf4j/Logger; field_2410 LOGGER + f Lnet/minecraft/class_2535; field_2411 connection + c The client connection to the remote server.\nThis is not used when connecting to the client's own integrated server.\n\n@see net.minecraft.client.MinecraftClient#integratedServerConnection + f Lio/netty/channel/ChannelFuture; field_44971 future + f Z field_2409 connectingCancelled + f Lnet/minecraft/class_2561; field_44970 ABORTED_TEXT + f J field_32238 NARRATOR_INTERVAL + f Lnet/minecraft/class_2561; field_44548 failureErrorMessage + f Lnet/minecraft/class_2561; field_33736 UNKNOWN_HOST_TEXT + f J field_19097 lastNarrationTime + m (Lnet/minecraft/class_310;Lnet/minecraft/class_639;Lnet/minecraft/class_642;Lnet/minecraft/class_9112;)V method_2130 connect + p 1 client + p 2 address + p 3 info + p 4 cookieStorage + m (Lnet/minecraft/class_2561;)V method_2131 setStatus + p 1 status + m (Lnet/minecraft/class_4185;)V method_19800 method_19800 + p 1 button + m (Lnet/minecraft/class_437;Lnet/minecraft/class_2561;)V + p 1 parent + p 2 failureErrorMessage + m (Lnet/minecraft/class_437;Lnet/minecraft/class_310;Lnet/minecraft/class_639;Lnet/minecraft/class_642;ZLnet/minecraft/class_9112;)V method_36877 connect + p 4 quickPlay + p 5 cookieStorage + p 0 screen + p 1 client + p 2 address + p 3 info +c net/minecraft/class_412$1 net/minecraft/client/gui/screen/multiplayer/ConnectScreen$1 + m (Lnet/minecraft/class_642$class_643;)Lnet/minecraft/class_9044$class_9047; method_55509 toAcceptanceStatus + p 0 policy +c net/minecraft/class_410 net/minecraft/client/gui/screen/ConfirmScreen + f Lnet/minecraft/class_2561; field_2399 noText + f Lnet/minecraft/class_2561; field_2401 message + f Lnet/minecraft/class_2561; field_2402 yesText + f Lnet/minecraft/class_8667; field_61001 layout + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; field_2403 callback + f I field_2400 buttonEnableTimer + f Lnet/minecraft/class_4185; field_61002 yesButton + f Lnet/minecraft/class_4185; field_61003 noButton + m (Lnet/minecraft/class_4185;)V method_37054 method_37054 + p 1 button + m (I)V method_2125 disableButtons + p 1 ticks + m (Lnet/minecraft/class_4185;)V method_37053 method_37053 + p 1 button + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 2 title + p 3 message + p 1 callback + p 4 yesText + p 5 noText + m ()V method_72128 initExtras + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 1 callback + p 2 title + p 3 message + m (Lnet/minecraft/class_8667;)V method_37051 addButtons + p 1 layout +c net/minecraft/class_417 net/minecraft/client/gui/screen/DemoScreen + f Lnet/minecraft/class_5489; field_26539 fullWrappedText + f Lnet/minecraft/class_5489; field_26538 movementText + f I field_52797 DEMO_BG_WIDTH + f Lnet/minecraft/class_2960; field_2447 DEMO_BG + f I field_52798 DEMO_BG_HEIGHT + m (Lnet/minecraft/class_5250;)Lnet/minecraft/class_2561; method_75827 styleHelp + p 1 text + m (Lnet/minecraft/class_4185;)V method_19811 method_19811 + p 0 button + m (Lnet/minecraft/class_4185;)V method_19810 method_19810 + p 1 button +c net/minecraft/class_415 net/minecraft/client/gui/screen/world/CustomizeBuffetLevelScreen + f Lnet/minecraft/class_437; field_24562 parent + f Lnet/minecraft/class_4185; field_2438 confirmButton + f Lnet/minecraft/class_8132; field_49495 layout + f Lnet/minecraft/class_2378; field_25888 biomeRegistry + f Lnet/minecraft/class_6880; field_25040 biome + f Ljava/util/function/Consumer; field_24563 onDone + f Lnet/minecraft/class_2561; field_64198 SEARCH_TEXT + f Lnet/minecraft/class_415$class_4190; field_2441 biomeSelectionList + m (Lnet/minecraft/class_4185;)V method_19801 method_19801 + p 1 button + m (Lnet/minecraft/class_4185;)V method_28059 method_28059 + p 1 button + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7193;Ljava/util/function/Consumer;)V + p 2 generatorOptionsHolder + p 1 parent + p 3 onDone + m (Lnet/minecraft/class_415$class_4190$class_4191;)Z method_29051 method_29051 + p 1 entry + m ()V method_2151 refreshConfirmButton +c net/minecraft/class_415$class_4190 net/minecraft/client/gui/screen/world/CustomizeBuffetLevelScreen$BuffetBiomesListWidget + f Lnet/minecraft/class_415; field_18736 screen + m (Lnet/minecraft/class_415$class_4190$class_4191;)Ljava/lang/String; method_76272 method_76272 + p 0 biome + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_415$class_4190$class_4191;)Z method_76270 method_76270 + p 2 biome + m (Lnet/minecraft/class_415$class_4190$class_4191;)V method_20089 setSelected + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_415$class_4190$class_4191; method_76271 method_76271 + p 1 entry + m (Ljava/lang/String;)V method_76269 onSearch + p 1 search +c net/minecraft/class_415$class_4190$class_4191 net/minecraft/client/gui/screen/world/CustomizeBuffetLevelScreen$BuffetBiomesListWidget$BuffetBiomeItem + f Lnet/minecraft/class_6880$class_6883; field_24564 biome + f Lnet/minecraft/class_2561; field_26536 text + m (Lnet/minecraft/class_415$class_4190;Lnet/minecraft/class_6880$class_6883;)V + p 2 biome +c net/minecraft/class_9717 net/minecraft/enchantment/effect/entity/DamageEntityEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51702 CODEC + f Lnet/minecraft/class_6880; comp_2715 damageType + f Lnet/minecraft/class_9704; comp_2713 minDamage + f Lnet/minecraft/class_9704; comp_2714 maxDamage + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60224 method_60224 + p 0 instance + m ()Lnet/minecraft/class_6880; comp_2715 damageType + m ()Lnet/minecraft/class_9704; comp_2713 minDamage + m ()Lnet/minecraft/class_9704; comp_2714 maxDamage + m (Lnet/minecraft/class_9704;Lnet/minecraft/class_9704;Lnet/minecraft/class_6880;)V + p 1 minDamage + p 2 maxDamage + p 3 damageType +c net/minecraft/class_9716 net/minecraft/enchantment/effect/entity/ApplyMobEffectEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51701 CODEC + f Lnet/minecraft/class_6885; comp_2708 toApply + f Lnet/minecraft/class_9704; comp_2709 minDuration + f Lnet/minecraft/class_9704; comp_2711 minAmplifier + f Lnet/minecraft/class_9704; comp_2710 maxDuration + f Lnet/minecraft/class_9704; comp_2712 maxAmplifier + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60223 method_60223 + p 0 instance + m ()Lnet/minecraft/class_6885; comp_2708 toApply + m ()Lnet/minecraft/class_9704; comp_2709 minDuration + m ()Lnet/minecraft/class_9704; comp_2710 maxDuration + m ()Lnet/minecraft/class_9704; comp_2711 minAmplifier + m ()Lnet/minecraft/class_9704; comp_2712 maxAmplifier + m (Lnet/minecraft/class_6885;Lnet/minecraft/class_9704;Lnet/minecraft/class_9704;Lnet/minecraft/class_9704;Lnet/minecraft/class_9704;)V + p 1 toApply + p 2 minDuration + p 3 maxDuration + p 4 minAmplifier + p 5 maxAmplifier +c net/minecraft/class_9712 net/minecraft/enchantment/effect/AllOfEnchantmentEffects + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; method_60214 buildCodec + p 2 toList + p 1 fromList + p 0 baseCodec + m ([Lnet/minecraft/class_9721;)Lnet/minecraft/class_9712$class_9713; method_60216 allOf + p 0 entityEffects + m ([Lnet/minecraft/class_9722;)Lnet/minecraft/class_9712$class_9714; method_60217 allOf + p 0 locationBasedEffects + m ([Lnet/minecraft/class_9723;)Lnet/minecraft/class_9712$class_9715; method_60218 allOf + p 0 valueEffects + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60215 method_60215 + p 3 instance +c net/minecraft/class_9712$class_9715 net/minecraft/enchantment/effect/AllOfEnchantmentEffects$ValueEffects + f Lcom/mojang/serialization/MapCodec; field_51700 CODEC + f Ljava/util/List; comp_2707 effects + m ()Ljava/util/List; comp_2707 effects + m (Ljava/util/List;)V + p 1 effects +c net/minecraft/class_9712$class_9714 net/minecraft/enchantment/effect/AllOfEnchantmentEffects$LocationBasedEffects + f Lcom/mojang/serialization/MapCodec; field_51699 CODEC + f Ljava/util/List; comp_2706 effects + m ()Ljava/util/List; comp_2706 effects + m (Ljava/util/List;)V + p 1 effects +c net/minecraft/class_9712$class_9713 net/minecraft/enchantment/effect/AllOfEnchantmentEffects$EntityEffects + f Lcom/mojang/serialization/MapCodec; field_51698 CODEC + f Ljava/util/List; comp_2705 effects + m ()Ljava/util/List; comp_2705 effects + m (Ljava/util/List;)V + p 1 effects +c net/minecraft/class_9711 net/minecraft/enchantment/effect/value/AddEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51697 CODEC + f Lnet/minecraft/class_9704; comp_2704 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60212 method_60212 + p 0 instance + m ()Lnet/minecraft/class_9704; comp_2704 value + m (Lnet/minecraft/class_9704;)V + p 1 value +c net/minecraft/class_9710 net/minecraft/enchantment/effect/TargetedEnchantmentEffect + f Ljava/util/Optional; comp_2703 requirements + f Ljava/lang/Object; comp_2702 effect + f Lnet/minecraft/class_9703; comp_2701 affected + f Lnet/minecraft/class_9703; comp_2700 enchanted + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_176;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60209 method_60209 + p 2 instance + m (Lnet/minecraft/class_9703;)Lcom/mojang/serialization/DataResult; method_60205 method_60205 + p 0 enchanted + m (Lnet/minecraft/class_9703;Ljava/lang/Object;Ljava/util/Optional;)Lnet/minecraft/class_9710; method_60206 method_60206 + p 0 enchantedx + p 2 requirements + p 1 effect + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_176;)Lcom/mojang/serialization/Codec; method_60203 createPostAttackCodec + p 0 effectCodec + p 1 lootContextType + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_176;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60204 method_60204 + p 2 instance + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_176;)Lcom/mojang/serialization/Codec; method_60208 createEquipmentDropsCodec + p 0 effectCodec + p 1 lootContextType + m (Lnet/minecraft/class_47;)Z method_60207 test + p 1 lootContext + m ()Ljava/lang/Object; comp_2702 effect + m ()Ljava/util/Optional; comp_2703 requirements + m ()Lnet/minecraft/class_9703; comp_2700 enchanted + m ()Lnet/minecraft/class_9703; comp_2701 affected + m (Lnet/minecraft/class_9703;Lnet/minecraft/class_9703;Ljava/lang/Object;Ljava/util/Optional;)V + p 1 enchanted + p 2 affected + p 3 effect + p 4 requirements +c net/minecraft/class_408 net/minecraft/client/gui/screen/ChatScreen + c A screen that allows player to input a chat message. It can be opened by\npressing {@linkplain net.minecraft.client.option.GameOptions#chatKey the\nchat key} or {@linkplain net.minecraft.client.option.GameOptions#commandKey\nthe command key}.\n\n@see net.minecraft.client.gui.hud.ChatHud + f Lnet/minecraft/class_4717; field_21616 chatInputSuggestor + f Ljava/lang/String; field_18973 originalChatText + f Ljava/lang/String; field_2389 chatLastMessage + f I field_2387 messageHistoryIndex + f Lnet/minecraft/class_342; field_2382 chatField + f Lnet/minecraft/class_2561; field_33953 USAGE_TEXT + f D field_32237 SHIFT_SCROLL_AMOUNT + f Z field_62013 draft + f Lnet/minecraft/class_408$class_11739; field_62014 closeReason + m (Ljava/lang/String;)V method_23945 onChatFieldUpdate + p 1 chatText + m (Ljava/lang/String;Z)V method_44056 sendMessage + p 2 addToHistory + p 1 chatText + m (Ljava/lang/String;I)Lnet/minecraft/class_5481; method_73216 format + p 1 string + p 2 firstCharacterIndex + m (Ljava/lang/String;Z)V + p 2 draft + p 1 text + m (I)V method_2114 setChatFromHistory + p 1 offset + m ()Z method_73218 shouldNotSaveDraft + m (Ljava/lang/String;)Ljava/lang/String; method_44054 normalize + c {@return the {@code message} normalized by trimming it and then normalizing spaces} + p 1 chatText + m (Lnet/minecraft/class_2583;Z)Z method_75825 handleClickEvent + p 2 insert + p 1 style + m ()Z method_76757 shouldInsert +c net/minecraft/class_408$class_11738 net/minecraft/client/gui/screen/ChatScreen$Factory + m (Ljava/lang/String;Z)Lnet/minecraft/class_408; create create + p 2 draft + p 1 string +c net/minecraft/class_408$class_11739 net/minecraft/client/gui/screen/ChatScreen$CloseReason + f Lnet/minecraft/class_408$class_11739; field_62015 INTENTIONAL + f Lnet/minecraft/class_408$class_11739; field_62017 DONE + f Lnet/minecraft/class_408$class_11739; field_62016 INTERRUPTED +c net/minecraft/class_407 net/minecraft/client/gui/screen/ConfirmLinkScreen + f Lnet/minecraft/class_2561; field_2372 WARNING + f Z field_2370 drawWarning + f Ljava/lang/String; field_2371 link + m (Lnet/minecraft/class_437;Ljava/lang/String;)Lnet/minecraft/class_4185$class_4241; method_49625 opening + c {@return the button press action that opens the confirmation screen to open {@code url}}\n\n

The link is always trusted.\n\n@see #open + p 0 parent + p 1 url + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/class_2561;Ljava/lang/String;Z)V + p 4 linkTrusted + p 1 callback + p 2 title + p 3 link + m (Lnet/minecraft/class_437;Ljava/net/URI;Z)Lnet/minecraft/class_4185$class_4241; method_61038 opening + p 2 linkTrusted + p 1 uri + p 0 parent + m (Z)Lnet/minecraft/class_5250; method_44659 getConfirmText + p 0 linkTrusted + m (Lnet/minecraft/class_437;Ljava/net/URI;)Lnet/minecraft/class_4185$class_4241; method_61037 opening + p 0 parent + p 1 uri + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Ljava/lang/String;Z)V + p 1 callback + p 3 linkTrusted + p 2 link + m (Lnet/minecraft/class_4185;)V method_19796 method_19796 + p 1 button + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Ljava/lang/String;Lnet/minecraft/class_2561;Z)V + p 2 title + p 3 message + p 1 callback + p 6 linkTrusted + p 4 link + p 5 noText + m (Lnet/minecraft/class_437;Ljava/lang/String;Z)V method_60866 open + p 2 linkTrusted + p 1 url + p 0 parent + m (Lnet/minecraft/class_437;Ljava/lang/String;Z)Lnet/minecraft/class_4185$class_4241; method_60867 opening + p 0 parent + p 2 linkTrusted + p 1 url + m (Lnet/minecraft/class_437;Ljava/lang/String;)V method_49623 open + c Opens the confirmation screen to open {@code url}.\nThe link is always trusted.\n\n@see #opening + p 0 parent + p 1 url + m (Ljava/lang/String;Lnet/minecraft/class_310;Lnet/minecraft/class_437;Z)V method_49622 method_49622 + p 3 confirmed + m (Lnet/minecraft/class_437;Ljava/net/URI;)V method_61033 open + p 0 parent + p 1 uri + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/class_2561;Ljava/net/URI;Z)V + p 4 linkTrusted + p 3 link + p 2 title + p 1 callback + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Ljava/net/URI;Lnet/minecraft/class_2561;Z)V + p 3 message + p 2 title + p 1 callback + p 6 linkTrusted + p 5 noText + p 4 link + m (Lnet/minecraft/class_4185;)V method_19795 method_19795 + p 1 button + m (Lnet/minecraft/class_437;Ljava/net/URI;Z)V method_61034 open + p 0 parent + p 1 uri + p 2 linkTrusted + m (Lnet/minecraft/class_4185;)V method_19797 method_19797 + p 1 button + m (Lnet/minecraft/class_437;Ljava/lang/String;ZLnet/minecraft/class_4185;)V method_49624 method_49624 + p 3 button + m (Lnet/minecraft/class_437;Ljava/net/URI;ZLnet/minecraft/class_4185;)V method_61035 method_61035 + p 3 button + m (ZLjava/lang/String;)Lnet/minecraft/class_5250; method_44658 getConfirmText + p 1 link + p 0 linkTrusted + m (Ljava/net/URI;Lnet/minecraft/class_310;Lnet/minecraft/class_437;Z)V method_61036 method_61036 + p 3 confirmed + m ()V method_2100 copyToClipboard +c net/minecraft/class_424 net/minecraft/client/gui/screen/MessageScreen + f Lnet/minecraft/class_8019; field_49496 textWidget +c net/minecraft/class_2292 net/minecraft/block/ConcretePowderBlock + f Lnet/minecraft/class_2248; field_10810 hardenedState + f Lcom/mojang/serialization/MapCodec; field_46321 CODEC + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_9798 hardensOnAnySide + p 0 world + p 1 pos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_24279 shouldHarden + p 0 world + p 1 pos + p 2 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54000 method_54000 + p 0 instance + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 hardened + m (Lnet/minecraft/class_2680;)Z method_9799 hardensIn + p 0 state + m (Lnet/minecraft/class_2292;)Lnet/minecraft/class_2248; method_54001 method_54001 + p 0 block +c net/minecraft/class_2293 net/minecraft/command/argument/ItemPredicateArgumentType + f Lnet/minecraft/class_2960; field_50062 COUNT_ID + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_50061 MALFORMED_ITEM_PREDICATE_EXCEPTION + f Ljava/util/Map; field_50063 SPECIAL_COMPONENT_CHECKS + f Ljava/util/Collection; field_10812 EXAMPLES + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_50058 UNKNOWN_ITEM_COMPONENT_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_50059 MALFORMED_ITEM_COMPONENT_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_50056 INVALID_ITEM_ID_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_50060 UNKNOWN_ITEM_PREDICATE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_50057 UNKNOWN_ITEM_TAG_EXCEPTION + f Ljava/util/Map; field_50064 SPECIAL_SUB_PREDICATE_CHECKS + m (Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_1799;)Z method_75380 method_75380 + p 1 holder + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58532 method_58532 + p 1 component + p 0 componentId + m (Lnet/minecraft/class_2096$class_2100;Lnet/minecraft/class_1799;)Z method_58530 method_58530 + p 1 stack + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2293$class_2295; method_9804 getItemStackPredicate + p 1 name + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58534 method_58534 + p 0 id + m (Lnet/minecraft/class_2096$class_2100;)Ljava/util/function/Predicate; method_58529 method_58529 + p 0 range + m (Lnet/minecraft/class_2096$class_2100;)Ljava/util/function/Predicate; method_58523 method_58523 + p 0 range + m (Lnet/minecraft/class_2293$class_9444;)Lnet/minecraft/class_2293$class_9444; method_58525 method_58525 + p 0 check + m (Lnet/minecraft/class_1799;)Z method_58522 method_58522 + p 0 stack + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_2293$class_9446; method_75379 hasComponentCheck + p 0 type + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58533 method_58533 + p 0 tag + m (Lnet/minecraft/class_7157;)V + p 1 commandRegistryAccess + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58527 method_58527 + p 0 predicate + m (Ljava/util/List;)Lnet/minecraft/class_2293$class_2295; method_68548 method_68548 + p 0 predicates + m (Lnet/minecraft/class_2096$class_2100;Lnet/minecraft/class_1799;)Z method_58524 method_58524 + p 1 stack + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58528 method_58528 + p 1 predicate + p 0 predicateId + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_2293; method_9801 itemPredicate + p 0 commandRegistryAccess + m (Lnet/minecraft/class_2293$class_9446;)Lnet/minecraft/class_2293$class_9446; method_58526 method_58526 + p 0 check + m (Ljava/util/function/Predicate;Lnet/minecraft/class_3902;)Ljava/util/function/Predicate; method_75378 method_75378 + p 1 v + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58531 method_58531 + p 0 component +c net/minecraft/class_2293$class_2295 net/minecraft/command/argument/ItemPredicateArgumentType$ItemStackPredicateArgument +c net/minecraft/class_2293$class_9444 net/minecraft/command/argument/ItemPredicateArgumentType$ComponentCheck + f Ljava/util/function/Predicate; comp_2528 presenceChecker + f Lcom/mojang/serialization/Decoder; comp_2529 valueChecker + f Lnet/minecraft/class_2960; comp_2527 id + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/class_2960;Lnet/minecraft/class_9331;)Lnet/minecraft/class_2293$class_9444; method_58536 read + p 0 reader + p 2 type + p 1 id + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_1799;)Z method_58538 method_58538 + p 1 stack + m (Lnet/minecraft/class_9331;Ljava/lang/Object;Lnet/minecraft/class_1799;)Z method_58540 method_58540 + p 2 stack + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Ljava/util/function/Predicate; method_58539 method_58539 + p 1 expected + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58537 method_58537 + p 2 error + m (Lcom/mojang/brigadier/ImmutableStringReader;Lcom/mojang/serialization/Dynamic;)Ljava/util/function/Predicate; method_58535 createPredicate + p 2 value + p 1 reader + m ()Lcom/mojang/serialization/Decoder; comp_2529 valueChecker + m ()Lnet/minecraft/class_2960; comp_2527 id + m ()Ljava/util/function/Predicate; comp_2528 presenceChecker + m (Lnet/minecraft/class_2960;Ljava/util/function/Predicate;Lcom/mojang/serialization/Decoder;)V + p 1 id + p 2 presenceChecker + p 3 valueChecker +c net/minecraft/class_2293$class_9445 net/minecraft/command/argument/ItemPredicateArgumentType$Context + f Lnet/minecraft/class_7225$class_7874; field_56366 registries + f Lnet/minecraft/class_7225$class_7226; field_50067 dataComponentTypeRegistryWrapper + f Lnet/minecraft/class_7225$class_7226; field_50066 itemRegistryWrapper + f Lnet/minecraft/class_7225$class_7226; field_50068 itemSubPredicateTypeRegistryWrapper + m (Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_1799;)Z method_58545 method_58545 + p 1 stack + m (Lnet/minecraft/class_6885;Lnet/minecraft/class_1799;)Z method_58546 method_58546 + p 1 stack + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/class_2960;)Ljava/util/function/Predicate; method_58551 tagMatchPredicate + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/class_2960;)Lnet/minecraft/class_2293$class_9444; method_58552 componentCheck + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_2960; method_58544 method_58544 + p 0 entry + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/class_2960;)Lnet/minecraft/class_2293$class_9446; method_58553 subPredicateCheck + m (Ljava/util/List;)Ljava/util/function/Predicate; method_58549 anyOf + m (Ljava/util/function/Predicate;)Ljava/util/function/Predicate; method_58547 negate + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/class_2960;)Ljava/util/function/Predicate; method_58550 itemMatchPredicate + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/class_2293$class_9446;Lcom/mojang/serialization/Dynamic;)Ljava/util/function/Predicate; method_58543 subPredicatePredicate + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries + m (Lnet/minecraft/class_6880$class_6883;)Z method_58548 method_58548 + p 0 entry + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/class_2293$class_9444;)Ljava/util/function/Predicate; method_58541 componentPresencePredicate + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/class_2293$class_9444;Lcom/mojang/serialization/Dynamic;)Ljava/util/function/Predicate; method_58542 componentMatchPredicate +c net/minecraft/class_2293$class_9446 net/minecraft/command/argument/ItemPredicateArgumentType$SubPredicateCheck + f Lnet/minecraft/class_2960; comp_2530 id + f Lcom/mojang/serialization/Decoder; comp_2531 type + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58560 method_58560 + p 2 error + m (Lnet/minecraft/class_6880$class_6883;)V + p 1 type + m (Lcom/mojang/brigadier/ImmutableStringReader;Lcom/mojang/serialization/Dynamic;)Ljava/util/function/Predicate; method_58559 createPredicate + p 1 reader + p 2 value + m (Lnet/minecraft/class_9360;)Ljava/util/function/Predicate; method_58558 method_58558 + p 0 predicate + m ()Lnet/minecraft/class_2960; comp_2530 id + m ()Lcom/mojang/serialization/Decoder; comp_2531 type + m (Lnet/minecraft/class_2960;Lcom/mojang/serialization/Decoder;)V + p 1 id + p 2 type +c net/minecraft/class_423 net/minecraft/client/gui/screen/SleepingChatScreen + f Lnet/minecraft/class_4185; field_41710 stopSleepingButton + m ()V method_38530 closeChatIfEmpty + m ()V method_2180 stopSleeping + m (Lnet/minecraft/class_4185;)V method_19819 method_19819 + p 1 button +c net/minecraft/class_422 net/minecraft/client/gui/screen/multiplayer/AddServerScreen + f Lnet/minecraft/class_642; field_2469 server + f Lnet/minecraft/class_4185; field_2472 addButton + f Lnet/minecraft/class_342; field_2471 serverNameField + f Lnet/minecraft/class_2561; field_26541 ENTER_NAME_TEXT + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; field_19236 callback + f Lnet/minecraft/class_2561; field_26542 ENTER_IP_TEXT + f Lnet/minecraft/class_437; field_21791 parent + f Lnet/minecraft/class_342; field_2474 addressField + m (Lnet/minecraft/class_437;Lnet/minecraft/class_2561;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/class_642;)V + p 1 parent + m (Lnet/minecraft/class_4185;)V method_36218 method_36218 + p 1 button + m ()V method_2172 addAndClose + m ()V method_36223 updateAddButton + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_642$class_643;)V method_36219 method_36219 + p 2 resourcePackPolicy + p 1 button + m (Ljava/lang/String;)V method_36221 method_36221 + p 1 address + m (Lnet/minecraft/class_4185;)V method_36220 method_36220 + p 1 button + m (Ljava/lang/String;)V method_36222 method_36222 + p 1 serverName +c net/minecraft/class_421 net/minecraft/client/gui/screen/FatalErrorScreen + f Lnet/minecraft/class_2561; field_2467 message + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 1 title + p 2 message + m (Lnet/minecraft/class_4185;)V method_19818 method_19818 + p 1 button +c net/minecraft/class_428 net/minecraft/client/gui/screen/OutOfMemoryScreen + f Lnet/minecraft/class_2561; field_49504 TITLE + f Lnet/minecraft/class_2561; field_49505 MESSAGE + f Lnet/minecraft/class_8132; field_49507 layout + f I field_49506 MAX_TEXT_WIDTH + m (Lnet/minecraft/class_4185;)V method_19835 method_19835 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19834 method_19834 + p 1 button +c net/minecraft/class_2290 net/minecraft/command/argument/ItemStackArgument + f Lnet/minecraft/class_9326; field_49570 components + f Lnet/minecraft/class_6880; field_10796 item + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_10797 OVERSTACKED_EXCEPTION + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9784 method_9784 + p 0 item + p 1 maxCount + m (IZ)Lnet/minecraft/class_1799; method_9781 createStack + p 2 checkOverstack + p 1 amount + m ()Lnet/minecraft/class_1792; method_9785 getItem + m (Lnet/minecraft/class_7225$class_7874;)Ljava/lang/String; method_9782 asString + p 1 registries + m (Lnet/minecraft/class_7225$class_7874;)Ljava/lang/String; method_57801 componentsAsString + p 1 registries + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_9326;)V + p 1 item + p 2 components + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2520;)Ljava/lang/String; method_60378 method_60378 + p 1 value + m ()Ljava/lang/String; method_41967 getIdString + m (Lcom/mojang/serialization/DynamicOps;Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_57800 method_57800 + p 1 entry +c net/minecraft/class_426 net/minecraft/client/gui/screen/option/LanguageOptionsScreen + f Lnet/minecraft/class_2561; field_64201 SEARCH_TEXT + f Lnet/minecraft/class_342; field_64430 searchBox + f Lnet/minecraft/class_2561; field_26543 LANGUAGE_WARNING_TEXT + f Lnet/minecraft/class_1076; field_2488 languageManager + f Lnet/minecraft/class_426$class_4195; field_2486 languageSelectionList + m (Lnet/minecraft/class_4185;)V method_57730 method_57730 + p 1 button + m (Lnet/minecraft/class_437;Lnet/minecraft/class_315;Lnet/minecraft/class_1076;)V + p 2 options + p 3 languageManager + p 1 parent + m (Lnet/minecraft/class_4185;)V method_57729 method_57729 + p 1 button + m (Ljava/lang/String;)V method_76280 method_76280 + p 1 search + m ()V method_52184 onDone +c net/minecraft/class_426$class_4195 net/minecraft/client/gui/screen/option/LanguageOptionsScreen$LanguageSelectionListWidget + m (Ljava/lang/String;)V method_76281 setSearch + p 1 search + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_1077;)V method_48261 method_48261 + p 3 languageDefinition + p 2 languageCode + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_426$class_4195$class_4194; method_76283 method_76283 + p 1 entry + m (Lnet/minecraft/class_426;Lnet/minecraft/class_310;)V + p 2 client + m (Ljava/lang/String;Ljava/util/Map$Entry;)Z method_76282 method_76282 + p 1 entry +c net/minecraft/class_426$class_4195$class_4194 net/minecraft/client/gui/screen/option/LanguageOptionsScreen$LanguageSelectionListWidget$LanguageEntry + f Ljava/lang/String; field_41846 languageCode + f Lnet/minecraft/class_2561; field_18743 languageDefinition + m ()V method_19381 onPressed + m (Lnet/minecraft/class_426$class_4195;Ljava/lang/String;Lnet/minecraft/class_1077;)V + p 3 languageDefinition + p 2 languageCode +c net/minecraft/class_2291 net/minecraft/command/argument/ItemStringReader + f C field_50046 COMMA + f Lnet/minecraft/class_6903; field_50055 ops + f C field_50044 OPEN_SQUARE_BRACKET + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_51458 MALFORMED_ITEM_EXCEPTION + f Ljava/util/function/Function; field_50053 SUGGEST_DEFAULT + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_50048 INVALID_ITEM_ID_EXCEPTION + f C field_50047 EQUAL_SIGN + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_50050 MALFORMED_COMPONENT_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_50052 REPEATED_COMPONENT_EXCEPTION + f C field_50045 CLOSED_SQUARE_BRACKET + f Lnet/minecraft/class_2522; field_57954 snbtReader + f Lnet/minecraft/class_7225$class_7226; field_50054 itemRegistry + f C field_51831 EXCLAMATION_MARK + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_50049 UNKNOWN_COMPONENT_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_50051 COMPONENT_EXPECTED_EXCEPTION + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2291$class_7215; method_9789 consume + p 1 reader + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9793 getSuggestions + p 1 builder + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58520 method_58520 + p 0 id + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/class_6880;Lnet/minecraft/class_9326;)V method_59769 validate + p 0 reader + p 1 item + p 2 components + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58519 method_58519 + p 0 type + p 1 error + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_59768 method_59768 + p 1 error + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/class_2291$class_9219;)V method_58517 consume + p 2 callbacks + p 1 reader + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58518 method_58518 + p 0 type + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_59770 method_59770 + p 0 error + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58521 method_58521 + p 0 id +c net/minecraft/class_2291$class_9217 net/minecraft/command/argument/ItemStringReader$Reader + f Lcom/mojang/brigadier/StringReader; field_48971 reader + f Lnet/minecraft/class_2291$class_9219; field_48972 callbacks + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;Ljava/util/Map$Entry;)V method_60381 method_60381 + p 2 entry + m (Lnet/minecraft/class_2522;Lnet/minecraft/class_6903;Lnet/minecraft/class_9331;)V method_57811 readComponentValue + p 3 type + p 2 ops + p 1 snbtReader + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_57808 suggestBracket + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; method_60380 suggestComponents + p 2 suffix + p 1 builder + m (ILnet/minecraft/class_9331;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_57806 method_57806 + p 3 error + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_9331; method_57807 readComponentType + p 0 reader + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_57813 suggestEqual + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_57812 suggestEndOfComponent + p 1 builder + m ()V method_57814 readComponents + m ()V method_56872 readItem + m (Lnet/minecraft/class_2291;Lcom/mojang/brigadier/StringReader;Lnet/minecraft/class_2291$class_9219;)V + p 2 reader + p 3 callbacks + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_56874 suggestItems + p 1 builder + m ()V method_56869 read + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_2960; method_60382 method_60382 + p 0 entry + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_60384 suggestComponentsToRemove + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_60383 suggestComponents + p 1 builder +c net/minecraft/class_2291$class_7215 net/minecraft/command/argument/ItemStringReader$ItemResult + f Lnet/minecraft/class_6880; comp_628 item + f Lnet/minecraft/class_9326; comp_2439 components + m ()Lnet/minecraft/class_6880; comp_628 item + m ()Lnet/minecraft/class_9326; comp_2439 components + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_9326;)V + p 1 item + p 2 components +c net/minecraft/class_2291$class_9219 net/minecraft/command/argument/ItemStringReader$Callbacks + m (Ljava/util/function/Function;)V method_56880 setSuggestor + p 1 suggestor + m (Lnet/minecraft/class_6880;)V method_56853 onItem + p 1 item + m (Lnet/minecraft/class_9331;)V method_60379 onComponentRemoved + p 1 type + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)V method_57802 onComponentAdded + p 2 value + p 1 type +c net/minecraft/class_2291$class_9218 net/minecraft/command/argument/ItemStringReader$SuggestionCallbacks + f Ljava/util/function/Function; field_48973 suggestor + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lcom/mojang/brigadier/StringReader;)Ljava/util/concurrent/CompletableFuture; method_56879 getSuggestions + p 1 builder + p 2 reader +c net/minecraft/class_425 net/minecraft/client/gui/screen/SplashOverlay + f J field_17771 reloadCompleteTime + f F field_17770 progress + f Lnet/minecraft/class_2960; field_2483 LOGO + f Lnet/minecraft/class_310; field_18217 client + f Ljava/util/function/Consumer; field_18218 exceptionHandler + f J field_18220 reloadStartTime + f Z field_18219 reloading + f Ljava/util/function/IntSupplier; field_25041 BRAND_ARGB + f I field_32249 MOJANG_RED + f F field_32256 PROGRESS_LERP_DELTA + f J field_32248 RELOAD_START_FADE_DURATION + f F field_32255 LOGO_OVERLAP + f J field_32247 RELOAD_COMPLETE_FADE_DURATION + f F field_32252 LOGO_RIGHT_HALF_V + f Lnet/minecraft/class_4011; field_17767 reload + f I field_32250 MONOCHROME_BLACK + m (Lnet/minecraft/class_310;Lnet/minecraft/class_4011;Ljava/util/function/Consumer;Z)V + p 1 client + p 3 exceptionHandler + p 2 monitor + p 4 reloading + m (II)I method_35732 withAlpha + p 0 color + p 1 alpha + m (Lnet/minecraft/class_332;IIIIF)V method_18103 renderProgressBar + p 3 minY + p 4 maxX + p 5 maxY + p 6 opacity + p 1 context + p 2 minX + m ()Z method_74218 isInGracePeriod + m (Lnet/minecraft/class_1060;)V method_18819 init + p 0 textureManager +c net/minecraft/class_425$class_4070 net/minecraft/client/gui/screen/SplashOverlay$LogoTexture +c net/minecraft/class_420 net/minecraft/client/gui/screen/multiplayer/DirectConnectScreen + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; field_19235 callback + f Lnet/minecraft/class_342; field_2463 addressField + f Lnet/minecraft/class_2561; field_26540 ENTER_IP_TEXT + f Lnet/minecraft/class_437; field_21790 parent + f Lnet/minecraft/class_642; field_2460 serverEntry + f Lnet/minecraft/class_4185; field_2462 selectServerButton + m (Lnet/minecraft/class_4185;)V method_19813 method_19813 + p 1 button + m (Lnet/minecraft/class_437;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/class_642;)V + p 3 server + p 2 callback + p 1 parent + m (Lnet/minecraft/class_4185;)V method_19812 method_19812 + p 1 button + m ()V method_2167 saveAndClose + m (Ljava/lang/String;)V method_19376 method_19376 + p 1 text + m ()V method_2169 onAddressFieldChanged +c net/minecraft/class_2297 net/minecraft/block/CoralFanBlock + f Lcom/mojang/serialization/MapCodec; field_46325 CODEC + f Lnet/minecraft/class_2248; field_10817 deadCoralBlock + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54004 method_54004 + p 0 instance + m (Lnet/minecraft/class_2297;)Lnet/minecraft/class_2248; method_54005 method_54005 + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4970$class_2251;)V + p 1 deadCoralBlock + p 2 settings +c net/minecraft/class_2298 net/minecraft/block/CoralBlockBlock + f Lcom/mojang/serialization/MapCodec; field_46324 CODEC + f Lcom/mojang/serialization/MapCodec; field_46323 DEAD_FIELD + f Lnet/minecraft/class_2248; field_10818 deadCoralBlock + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4970$class_2251;)V + p 1 deadCoralBlock + p 2 settings + m (Lnet/minecraft/class_2298;)Lnet/minecraft/class_2248; method_54003 method_54003 + p 0 block + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_9808 isInWater + p 1 world + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54002 method_54002 + p 0 instance +c net/minecraft/class_2299 net/minecraft/block/CoralWallFanBlock + f Lcom/mojang/serialization/MapCodec; field_46327 CODEC + f Lnet/minecraft/class_2248; field_10819 deadCoralBlock + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54008 method_54008 + p 0 instance + m (Lnet/minecraft/class_2299;)Lnet/minecraft/class_2248; method_54009 method_54009 + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 deadCoralBlock +c net/minecraft/class_419 net/minecraft/client/gui/screen/DisconnectedScreen + f Lnet/minecraft/class_2561; field_44551 buttonLabel + f Lnet/minecraft/class_2561; field_44550 TO_TITLE_TEXT + f Lnet/minecraft/class_2561; field_52129 REPORT_TO_SERVER_TEXT + f Lnet/minecraft/class_9812; field_52131 info + f Lnet/minecraft/class_2561; field_44549 TO_MENU_TEXT + f Lnet/minecraft/class_2561; field_52130 OPEN_REPORT_DIR_TEXT + f Lnet/minecraft/class_8667; field_44552 grid + f Lnet/minecraft/class_437; field_2456 parent + m (Lnet/minecraft/class_437;Lnet/minecraft/class_2561;Lnet/minecraft/class_9812;)V + p 3 info + p 2 title + p 1 parent + m (Lnet/minecraft/class_437;Lnet/minecraft/class_2561;Lnet/minecraft/class_9812;Lnet/minecraft/class_2561;)V + p 4 buttonLabel + p 3 info + p 2 title + p 1 parent + m (Ljava/nio/file/Path;Lnet/minecraft/class_4185;)V method_60869 method_60869 + p 1 button + m (Lnet/minecraft/class_4185;)V method_51256 method_51256 + p 1 button + m (Lnet/minecraft/class_437;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 3 reason + p 4 buttonLabel + p 1 parent + p 2 title + m (Lnet/minecraft/class_4185;)V method_19814 method_19814 + p 1 button + m (Ljava/net/URI;)V method_60868 method_60868 + p 1 uri + m (Ljava/nio/file/Path;)V method_60870 method_60870 + p 1 path + m (Lnet/minecraft/class_437;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 2 title + p 1 parent + p 3 reason +c net/minecraft/class_418 net/minecraft/client/gui/screen/DeathScreen + f Z field_18974 isHardcore + f Ljava/util/List; field_33809 buttons + f Lnet/minecraft/class_2561; field_63894 scoreText + f Lnet/minecraft/class_2960; field_45407 DRAFT_REPORT_ICON_TEXTURE + f Lnet/minecraft/class_746; field_63893 decedent + f I field_2451 ticksSinceDeath + f Lnet/minecraft/class_4185; field_41684 titleScreenButton + f Lnet/minecraft/class_2561; field_2450 message + m (Lnet/minecraft/class_4185;)V method_19809 method_19809 + p 1 button + m ()V method_22364 quitLevel + m (Lnet/minecraft/class_4185;)V method_47938 method_47938 + p 1 button + m (Z)V method_49299 setButtonsActive + p 1 active + m (Lnet/minecraft/class_332;II)V method_59546 fillBackgroundGradient + p 0 context + p 1 width + p 2 height + m (Lnet/minecraft/class_2561;ZLnet/minecraft/class_746;)V + p 2 isHardcore + p 1 message + p 3 decedent + m (Z)V method_47939 method_47939 + p 1 confirmed + m ()V method_47940 onTitleScreenButtonClicked + m (Lnet/minecraft/class_12225;)V method_75826 drawTitles + p 1 drawer +c net/minecraft/class_418$class_8183 net/minecraft/client/gui/screen/DeathScreen$TitleScreenConfirmScreen +c net/minecraft/class_435 net/minecraft/client/gui/screen/ProgressScreen + f Lnet/minecraft/class_2561; field_2544 task + f Z field_33625 closeAfterFinished + f Lnet/minecraft/class_2561; field_2541 title + f I field_2542 progress + f Z field_2543 done + m (Z)V + p 1 closeAfterFinished +c net/minecraft/class_433 net/minecraft/client/gui/screen/GameMenuScreen + f Lnet/minecraft/class_7919; field_60753 CUSTOM_OPTIONS_TOOLTIP + f I field_41619 WIDE_BUTTON_WIDTH + f I field_41617 BUTTONS_TOP_MARGIN + f Lnet/minecraft/class_2561; field_41627 SHARE_TO_LAN_TEXT + f Lnet/minecraft/class_2561; field_41625 REPORT_BUGS_TEXT + f Lnet/minecraft/class_2561; field_41615 PAUSED_TEXT + f Lnet/minecraft/class_2561; field_41623 STATS_TEXT + f Lnet/minecraft/class_2561; field_41621 RETURN_TO_GAME_TEXT + f Lnet/minecraft/class_2561; field_52133 FEEDBACK_TEXT + f I field_41616 GRID_COLUMNS + f Lnet/minecraft/class_2960; field_45416 DRAFT_REPORT_ICON_TEXTURE + f I field_41620 NORMAL_BUTTON_WIDTH + f Lnet/minecraft/class_4185; field_40792 exitButton + f I field_41618 GRID_MARGIN + f Lnet/minecraft/class_2561; field_41628 PLAYER_REPORTING_TEXT + f Lnet/minecraft/class_2561; field_41614 GAME_TEXT + f Lnet/minecraft/class_2561; field_41626 OPTIONS_TEXT + f Lnet/minecraft/class_2561; field_41624 SEND_FEEDBACK_TEXT + f Lnet/minecraft/class_2561; field_41622 ADVANCEMENTS_TEXT + f Z field_19319 showMenu + m (Lnet/minecraft/class_4185;)V method_19845 method_19845 + p 1 button + m ()Z method_71842 shouldShowNowPlayingToast + m (Z)V + p 1 showMenu + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7845$class_7939;)V method_60873 addFeedbackAndBugsButtons + p 1 gridAdder + p 0 parentScreen + m (Lnet/minecraft/class_437;Lnet/minecraft/class_2561;Ljava/net/URI;)Lnet/minecraft/class_4185; method_47899 createUrlButton + p 2 uri + p 0 parent + p 1 text + m (Ljava/util/function/Supplier;Lnet/minecraft/class_4185;)V method_47898 method_47898 + p 2 button + m (Lnet/minecraft/class_4185;)V method_19836 method_19836 + p 1 button + m (Lnet/minecraft/class_310;Lnet/minecraft/class_6880;Lnet/minecraft/class_4185;)V method_71840 method_71840 + p 3 button + m (Lnet/minecraft/class_310;Lnet/minecraft/class_6880;Lnet/minecraft/class_7845$class_7939;)V method_71841 addFeedbackAndCustomOptionsButtons + p 3 gridAdder + p 2 dialog + p 1 client + m ()V method_20543 initWidgets + m (Lnet/minecraft/class_2561;Ljava/util/function/Supplier;)Lnet/minecraft/class_4185; method_47900 createButton + p 1 text + p 2 screenSupplier + m ()Z method_53558 shouldShowMenu + m ()Ljava/util/Optional; method_71838 getCustomOptionsDialog +c net/minecraft/class_433$class_9804 net/minecraft/client/gui/screen/GameMenuScreen$FeedbackScreen + f Lnet/minecraft/class_8132; field_52136 layoutWidget + f Lnet/minecraft/class_2561; field_52135 TITLE + f Lnet/minecraft/class_437; field_52134 parent + m (Lnet/minecraft/class_4185;)V method_60874 method_60874 + p 1 button + m (Lnet/minecraft/class_437;)V + p 1 parent +c net/minecraft/class_437 net/minecraft/client/gui/screen/Screen + f Lnet/minecraft/class_310; field_22787 client + f Lorg/slf4j/Logger; field_22782 LOGGER + f J field_33821 KEY_PRESS_NARRATION_DELAY + f Lnet/minecraft/class_2960; field_49896 FOOTER_SEPARATOR_TEXTURE + f J field_33817 SCREEN_INIT_NARRATION_DELAY + f Lnet/minecraft/class_327; field_22793 textRenderer + f Ljava/util/List; field_33815 selectables + f Z field_42156 screenInitialized + f Lnet/minecraft/class_2561; field_33814 SCREEN_USAGE_TEXT + f Lnet/minecraft/class_2960; field_49897 INWORLD_HEADER_SEPARATOR_TEXTURE + f J field_33818 NARRATOR_MODE_CHANGE_DELAY + f Lnet/minecraft/class_6385; field_33822 narrator + f J field_33823 elementNarrationStartTime + f Ljava/util/List; field_22786 children + f Ljava/util/List; field_33816 drawables + f Lnet/minecraft/class_5676; field_52252 narratorToggleButton + f Ljava/util/concurrent/Executor; field_44944 executor + f Lnet/minecraft/class_2960; field_49894 INWORLD_MENU_BACKGROUND_TEXTURE + f Lnet/minecraft/class_2960; field_49898 INWORLD_FOOTER_SEPARATOR_TEXTURE + f Lnet/minecraft/class_2960; field_49511 MENU_BACKGROUND_TEXTURE + f J field_33819 MOUSE_MOVE_NARRATION_DELAY + f I field_22789 width + f Lnet/minecraft/class_6379; field_33813 selected + f J field_33824 screenNarrationStartTime + f J field_33820 MOUSE_PRESS_SCROLL_NARRATION_DELAY + f Lnet/minecraft/class_2561; field_22785 title + f Lnet/minecraft/class_2960; field_49895 HEADER_SEPARATOR_TEXTURE + f I field_22790 height + m ()Z method_73217 keepOpenThroughPortal + m (Lnet/minecraft/class_2561;)V + p 1 title + m (Lnet/minecraft/class_8016;)V method_48263 switchFocus + c Switches focus from the currently focused element, if any, to {@code path}. + p 1 path + m (Z)Lnet/minecraft/class_8023$class_8026; method_48266 getTabNavigation + m (J)V method_72802 setElementNarrationStartTime + p 1 startTimeMs + m (Ljava/util/List;)V method_29638 onFilesDropped + p 1 paths + m ()Lnet/minecraft/class_2561; method_25440 getTitle + m ()V method_25432 removed + m (Lnet/minecraft/class_332;IIF)V method_47413 renderWithTooltip + p 1 context + p 2 mouseX + p 3 mouseY + p 4 deltaTicks + m ()Z method_37073 isNarratorActive + m ()V method_49589 onDisplayed + c Called when the screen is displayed using {@link MinecraftClient#setScreen}\nbefore {@link #init()} or {@link #refreshWidgetPositions()} is called. + m (Z)V method_37065 narrateScreen + p 1 onlyChangedNarrations + m ()Lnet/minecraft/class_2561; method_53870 getUsageNarrationText + m ()Z method_72798 allowRotatingPanorama + m ()V method_56131 setInitialFocus + c This should be overridden with a call to {@link #setInitialFocus(Element)} to set the element that is initially focused. + m ()Lnet/minecraft/class_5195; method_50024 getMusic + m ()V method_37069 applyMousePressScrollNarratorDelay + m (Ljava/util/List;Lnet/minecraft/class_6379;)Lnet/minecraft/class_437$class_6390; method_37061 findSelectedElementData + p 1 selectable + p 0 selectables + m (Lnet/minecraft/class_332;)V method_57734 applyBlur + p 1 context + m (Z)V method_61040 refreshNarrator + p 1 previouslyDisabled + m ()V method_48640 refreshWidgetPositions + m (J)V method_37058 setElementNarrationDelay + p 1 delayMs + m ()Z method_25421 shouldPause + m (Lnet/minecraft/class_332;)V method_52752 renderInGameBackground + c Renders the translucent background gradient used as the in-game screen background. + p 1 context + m (JZ)V method_37059 setScreenNarrationDelay + p 1 delayMs + p 3 restartElementNarration + m ()Z method_73150 deferSubtitles + m (Lnet/minecraft/class_332;Lnet/minecraft/class_2960;IIFFII)V method_57737 renderBackgroundTexture + p 7 height + p 6 width + p 5 v + p 4 u + p 3 y + p 2 x + p 1 texture + p 0 context + m ()V method_37070 applyKeyPressNarratorDelay + m ()V method_25426 init + c Called when a screen should be initialized.\n\n

This method is called when this screen is {@linkplain net.minecraft.client.MinecraftClient#setScreen(Screen) opened} or resized. + m (Lnet/minecraft/class_6382;)V method_37056 addElementNarrations + p 1 builder + m ()Lnet/minecraft/class_327; method_64506 getTextRenderer + m (Lnet/minecraft/class_4068;)Lnet/minecraft/class_4068; method_37060 addDrawable + p 1 drawable + m (Lnet/minecraft/class_364;)Lnet/minecraft/class_364; method_37063 addDrawableChild + p 1 drawableElement + m (Lnet/minecraft/class_332;F)V method_57728 renderPanoramaBackground + p 1 context + p 2 deltaTicks + m (Lnet/minecraft/class_332;)V method_57735 renderDarkening + p 1 context + m (Lnet/minecraft/class_2558;Lnet/minecraft/class_310;Lnet/minecraft/class_437;)V method_71847 handleBasicClickEvent + p 1 client + p 0 clickEvent + p 2 screenAfterRun + m ()V method_25393 tick + m ()Z method_25422 shouldCloseOnEsc + c Checks whether this screen should be closed when the escape key is pressed. + m (Lnet/minecraft/class_364;)V method_48265 setInitialFocus + c Sets the initial focus of this screen. This should be called inside the overridden\n{@link #setInitialFocus()} method by screen implementations. + p 1 element + m (F)V method_71536 setWidgetAlpha + p 1 alpha + m ()Z method_48262 hasUsageText + m ()V method_37071 updateNarrator + m ()V method_41843 clearAndInit + m (Lnet/minecraft/class_364;)V method_37066 remove + p 1 child + m ()Lnet/minecraft/class_2561; method_25435 getNarratedTitle + m ()V method_25419 close + m (Lnet/minecraft/class_310;Lnet/minecraft/class_1799;)Ljava/util/List; method_25408 getTooltipFromItem + p 1 stack + p 0 client + m (Lnet/minecraft/class_746;Ljava/lang/String;Lnet/minecraft/class_437;)V method_71844 handleRunCommand + p 2 screenAfterRun + p 0 player + p 1 command + m (Lnet/minecraft/class_332;IIII)V method_57736 renderDarkening + p 5 height + p 2 x + p 1 context + p 4 width + p 3 y + m ()V method_37067 clearChildren + m (Ljava/lang/String;II)Z method_25414 isValidCharacterForName + p 2 codepoint + p 1 name + p 3 cursorPos + m (Lnet/minecraft/class_310;Lnet/minecraft/class_437;Ljava/net/URI;)Z method_71843 handleOpenUri + p 1 screen + p 0 client + p 2 uri + m ()Z method_64507 showsStatusEffects + m (Ljava/net/URI;Lnet/minecraft/class_310;Lnet/minecraft/class_437;Z)V method_71845 method_71845 + p 3 confirmed + m (Lnet/minecraft/class_332;IIF)V method_25420 renderBackground + c Renders the background of this screen.\n\n

If the client is in a world, {@linkplain #renderInGameBackground\nrenders the translucent background gradient}.\nOtherwise {@linkplain #renderBackgroundTexture renders the background texture}. + p 4 deltaTicks + p 2 mouseX + p 3 mouseY + p 1 context + m (Lnet/minecraft/class_8028;)Lnet/minecraft/class_8023$class_8024; method_48264 getArrowNavigation + p 1 direction + m (II)V method_25410 resize + p 2 height + p 1 width + m ()Z method_73339 canInterruptOtherScreen + m (II)V method_25423 init + p 2 height + p 1 width + m (Ljava/lang/String;Z)V method_25415 insertText + p 2 override + p 1 text + m (Z)V method_37064 narrateScreenIfNarrationEnabled + c If narration is enabled, narrates the elements of this screen. + p 1 onlyChangedNarrations + c if {@code true}, the text will not include unchanged narrations that have\nalready been narrated previously + m (Lnet/minecraft/class_6379;)Ljava/util/stream/Stream; method_65517 method_65517 + p 0 selectable + m (Lnet/minecraft/class_128;)V method_65027 addCrashReportSection + p 1 report + m (Lnet/minecraft/class_364;)Lnet/minecraft/class_364; method_25429 addSelectableChild + p 1 child + m (Lnet/minecraft/class_2558;Lnet/minecraft/class_310;Lnet/minecraft/class_437;)V method_71999 handleClickEvent + p 1 client + p 0 clickEvent + p 2 screenAfterRun + m (Lnet/minecraft/class_6382;)V method_37062 addScreenNarrations + p 1 messageBuilder + m ()V method_48267 blur + m ()V method_37068 applyMouseMoveNarratorDelay +c net/minecraft/class_437$class_6390 net/minecraft/client/gui/screen/Screen$SelectedElementNarrationData + f I comp_4464 index + f Lnet/minecraft/class_6379$class_6380; comp_4465 selectType + f Lnet/minecraft/class_6379; comp_4463 selectable + m ()I comp_4464 index + m ()Lnet/minecraft/class_6379$class_6380; comp_4465 selectType + m ()Lnet/minecraft/class_6379; comp_4463 selectable + m (Lnet/minecraft/class_6379;ILnet/minecraft/class_6379$class_6380;)V + p 3 selectType + p 1 selectable + p 2 index +c net/minecraft/class_436 net/minecraft/client/gui/screen/OpenToLanScreen + f I field_41629 MIN_PORT + f Lnet/minecraft/class_1934; field_2545 gameMode + f Lnet/minecraft/class_2561; field_41106 UNAVAILABLE_PORT_TEXT + f Lnet/minecraft/class_2561; field_41108 PORT_TEXT + f Lnet/minecraft/class_437; field_2548 parent + f Lnet/minecraft/class_2561; field_41109 INVALID_PORT_TEXT + f Lnet/minecraft/class_342; field_41111 portField + f Lnet/minecraft/class_2561; field_25889 ALLOW_COMMANDS_TEXT + f I field_41110 port + f Lnet/minecraft/class_2561; field_26545 OTHER_PLAYERS_TEXT + f Z field_2546 allowCommands + f Lnet/minecraft/class_2561; field_25890 GAME_MODE_TEXT + f I field_41630 MAX_PORT + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_32639 method_32639 + p 1 button + p 2 allowCommands + m (Lnet/minecraft/class_1132;Lnet/minecraft/class_4185;)V method_19851 method_19851 + p 2 button + m (Lnet/minecraft/class_4185;)V method_19850 method_19850 + p 1 button + m (Lnet/minecraft/class_4185;Ljava/lang/String;)V method_47416 method_47416 + p 2 portText + m (Lnet/minecraft/class_437;)V + p 1 screen + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_1934;)V method_32638 method_32638 + p 2 gameMode + p 1 button + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_47417 updatePort + p 1 portText +c net/minecraft/class_430 net/minecraft/client/gui/screen/world/PresetsScreen + f I field_32269 ICON_OFFSET_Y + f I field_32267 ICON_BACKGROUND_OFFSET_Y + f Lnet/minecraft/class_2960; field_45417 SLOT_TEXTURE + f I field_32265 BUTTON_HEIGHT + f Lnet/minecraft/class_2561; field_37908 UNKNOWN_PRESET_TEXT + f Lorg/slf4j/Logger; field_25043 LOGGER + f Lnet/minecraft/class_5321; field_27985 BIOME_KEY + f Lnet/minecraft/class_3232; field_25044 config + f Lnet/minecraft/class_342; field_2523 customPresetField + f Lnet/minecraft/class_430$class_4196; field_2521 listWidget + f Lnet/minecraft/class_4185; field_2525 selectPresetButton + f Lnet/minecraft/class_2561; field_2524 listText + f Lnet/minecraft/class_413; field_2519 parent + f Lnet/minecraft/class_2561; field_2520 shareText + f I field_32268 ICON_OFFSET_X + f I field_32266 ICON_BACKGROUND_OFFSET_X + f I field_32264 ICON_SIZE + m (Lnet/minecraft/class_3232;)Ljava/lang/String; method_29062 getGeneratorConfigString + p 0 config + m (Lnet/minecraft/class_7871;Ljava/lang/String;I)Lnet/minecraft/class_3229; method_29059 parseLayerString + c Parse a string like {@code "60*minecraft:stone"} to a {@link FlatChunkGeneratorLayer}. + p 1 layer + p 2 layerStartHeight + p 0 blockLookup + m (Lnet/minecraft/class_413;)V + p 1 parent + m (Lnet/minecraft/class_7871;Ljava/lang/String;)Ljava/util/List; method_29058 parsePresetLayersString + c Parse a string like {@code "minecraft:bedrock,3*minecraft:dirt,minecraft:grass_block"}\nto a list of {@link FlatChunkGeneratorLayer}. + p 1 layers + p 0 blockLookup + m (Z)V method_20102 updateSelectButton + p 1 hasSelected + m (Lnet/minecraft/class_4185;)V method_19846 method_19846 + p 1 button + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_29061 method_29061 + p 0 biomeId + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Ljava/lang/String;Lnet/minecraft/class_3232;)Lnet/minecraft/class_3232; method_29060 parsePresetString + p 0 blockLookup + p 4 preset + p 3 placedFeatureLookup + p 2 structureSetLookup + p 1 biomeLookup + p 5 config +c net/minecraft/class_430$class_4196 net/minecraft/client/gui/screen/world/PresetsScreen$SuperflatPresetsListWidget + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_2248;)Z method_47410 method_47410 + p 1 block + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_47409 method_47409 + p 0 key + m (Lnet/minecraft/class_430;Lnet/minecraft/class_5455;Lnet/minecraft/class_7699;)V + p 3 featureSet + p 2 dynamicRegistryManager + m (Lnet/minecraft/class_3229;)Lnet/minecraft/class_2248; method_47411 method_47411 + p 0 layer + m (Lnet/minecraft/class_430$class_4196$class_432;)V method_20103 setSelected +c net/minecraft/class_430$class_4196$class_432 net/minecraft/client/gui/screen/world/PresetsScreen$SuperflatPresetsListWidget$SuperflatPresetEntry + f Lnet/minecraft/class_2960; field_44668 STATS_ICONS_TEXTURE + f Lnet/minecraft/class_7142; field_33812 preset + f Lnet/minecraft/class_2561; field_37909 text + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_2561; method_41842 method_41842 + p 0 key + m (Lnet/minecraft/class_332;II)V method_2198 drawIconBackground + p 2 x + p 1 context + p 3 y + m (Lnet/minecraft/class_332;IILnet/minecraft/class_1792;)V method_2200 renderIcon + p 1 context + p 3 y + p 2 x + p 4 iconItem + m (Lnet/minecraft/class_430$class_4196;Lnet/minecraft/class_6880;)V + p 2 preset + m ()V method_19389 setPreset +c net/minecraft/class_429 net/minecraft/client/gui/screen/option/OptionsScreen + f Lnet/minecraft/class_2561; field_41351 RESOURCE_PACK_TEXT + f Lnet/minecraft/class_2561; field_49501 TITLE_TEXT + f Lnet/minecraft/class_2561; field_41353 TELEMETRY_TEXT + f Lnet/minecraft/class_347; field_2503 lockDifficultyButton + f Lnet/minecraft/class_2561; field_41345 SKIN_CUSTOMIZATION_TEXT + f Lnet/minecraft/class_2561; field_41347 VIDEO_TEXT + f Lnet/minecraft/class_2561; field_41349 LANGUAGE_TEXT + f Lnet/minecraft/class_8132; field_49502 layout + f Lnet/minecraft/class_2561; field_41350 CHAT_TEXT + f Lnet/minecraft/class_7919; field_50221 TELEMETRY_DISABLED_TOOLTIP + f Lnet/minecraft/class_2561; field_41352 ACCESSIBILITY_TEXT + f Lnet/minecraft/class_5676; field_2500 difficultyButton + f Lnet/minecraft/class_437; field_2501 parent + f Lnet/minecraft/class_315; field_2502 settings + f Lnet/minecraft/class_2561; field_41346 SOUNDS_TEXT + f Lnet/minecraft/class_2561; field_43145 CREDITS_AND_ATTRIBUTION_TEXT + f Lnet/minecraft/class_2561; field_41348 CONTROL_TEXT + f I field_41354 COLUMNS + m (Lnet/minecraft/class_4185;)V method_47627 method_47627 + p 1 button + m (Lnet/minecraft/class_4185;)V method_47623 method_47623 + p 1 button + m (Lnet/minecraft/class_2561;Ljava/util/function/Supplier;)Lnet/minecraft/class_4185; method_47625 createButton + p 2 screenSupplier + p 1 message + m (Z)V method_20374 lockDifficulty + p 1 difficultyLocked + m (IILjava/lang/String;Lnet/minecraft/class_310;)Lnet/minecraft/class_5676; method_39486 createDifficultyButtonWidget + p 0 x + p 1 y + p 2 translationKey + p 3 client + m ()Lnet/minecraft/class_8021; method_47628 createTopRightButton + m (Lnet/minecraft/class_4185;)V method_47626 method_47626 + p 1 button + m (Lnet/minecraft/class_310;Lnet/minecraft/class_5676;Lnet/minecraft/class_1267;)V method_39487 method_39487 + p 2 difficulty + p 1 button + m (Lnet/minecraft/class_3283;)V method_49626 refreshResourcePacks + p 1 resourcePackManager + m (Ljava/util/function/Supplier;Lnet/minecraft/class_4185;)V method_47624 method_47624 + p 2 button + m (Lnet/minecraft/class_429;Lnet/minecraft/class_364;)V method_60335 method_60335 + p 1 child + m (Lnet/minecraft/class_437;Lnet/minecraft/class_315;)V + p 1 parent + p 2 gameOptions +c net/minecraft/class_2270 net/minecraft/command/argument/RotationArgumentType + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10736 INCOMPLETE_ROTATION_EXCEPTION + f Ljava/util/Collection; field_10735 EXAMPLES + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2267; method_9716 getRotation + p 1 name + p 0 context + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m ()Lnet/minecraft/class_2270; method_9717 rotation + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2267; method_9718 parse +c net/minecraft/class_2271 net/minecraft/block/CarrotsBlock + f Lcom/mojang/serialization/MapCodec; field_46302 CODEC + f [Lnet/minecraft/class_265; field_10737 SHAPES_BY_AGE + m (I)Lnet/minecraft/class_265; method_66422 method_66422 + p 0 age +c net/minecraft/class_2272 net/minecraft/block/CakeBlock + f Lnet/minecraft/class_2758; field_10739 BITES + f Lcom/mojang/serialization/MapCodec; field_46295 CODEC + f I field_31046 MAX_BITES + f I field_27173 DEFAULT_COMPARATOR_OUTPUT + f [Lnet/minecraft/class_265; field_10738 SHAPES_BY_BITES + m (I)I method_31627 getComparatorOutput + p 0 bites + m (I)Lnet/minecraft/class_265; method_66420 method_66420 + p 0 bites + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1269; method_9719 tryEat + p 1 pos + p 0 world + p 3 player + p 2 state +c net/minecraft/class_2273 net/minecraft/command/argument/SwizzleArgumentType + f Ljava/util/Collection; field_10740 EXAMPLES + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10741 INVALID_SWIZZLE_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/EnumSet; method_9720 getSwizzle + p 1 name + p 0 context + m ()Lnet/minecraft/class_2273; method_9721 swizzle + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/StringReader;)Ljava/util/EnumSet; method_9722 parse +c net/minecraft/class_2278 net/minecraft/command/argument/CoordinateArgument + f D comp_4925 value + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10761 MISSING_BLOCK_POSITION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10759 MISSING_COORDINATE + f C field_32972 TILDE + f Z comp_4924 relative + m ()Z method_9741 isRelative + m ()D comp_4925 value + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2278; method_9739 parse + p 0 reader + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/class_2278; method_9743 parse + p 1 centerIntegers + p 0 reader + m (ZD)V + p 1 relative + p 2 value + m (Lcom/mojang/brigadier/StringReader;)Z method_9742 isRelative + p 0 reader + m (D)D method_9740 toAbsoluteCoordinate + p 1 offset + m ()Z comp_4924 relative +c net/minecraft/class_2279 net/minecraft/block/ChorusFlowerBlock + f Lnet/minecraft/class_2758; field_10762 AGE + f Lcom/mojang/serialization/MapCodec; field_46313 CODEC + f Lnet/minecraft/class_2248; field_10763 plantBlock + f I field_31060 MAX_AGE + f Lnet/minecraft/class_265; field_45145 SHAPE + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53994 method_53994 + p 0 instance + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;I)V method_9745 grow + p 3 age + p 1 world + p 2 pos + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_9746 isSurroundedByAir + p 2 exceptDirection + p 1 pos + p 0 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;I)V method_9744 generate + p 1 pos + p 0 world + p 3 size + p 2 random + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 plantBlock + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_9747 die + p 1 world + p 2 pos + m (Lnet/minecraft/class_2279;)Lnet/minecraft/class_2248; method_53995 method_53995 + p 0 block + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;II)V method_9748 generate + p 1 pos + p 2 random + p 0 world + p 5 layer + p 3 rootPos + p 4 size +c net/minecraft/class_2274 net/minecraft/command/argument/Vec2ArgumentType + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10743 INCOMPLETE_EXCEPTION + f Ljava/util/Collection; field_10742 EXAMPLES + f Z field_10744 centerIntegers + m (Z)Lnet/minecraft/class_2274; method_35802 vec2 + p 0 centerIntegers + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2267; method_9725 parse + m ()Lnet/minecraft/class_2274; method_9723 vec2 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_241; method_9724 getVec2 + p 0 context + p 1 name + m (Z)V + p 1 centerIntegers + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 2 builder + p 1 context +c net/minecraft/class_2275 net/minecraft/block/AbstractCauldronBlock + c The base class for all cauldrons.\n\n

Interaction with cauldrons is controlled by {@linkplain CauldronBehavior\ncauldron behaviors}.\n\n@see CauldronBlock empty cauldrons\n@see LavaCauldronBlock cauldrons filled with lava\n@see LeveledCauldronBlock cauldrons with varying levels of contents + f Lnet/minecraft/class_5620$class_8821; field_27084 behaviorMap + f Lnet/minecraft/class_265; field_10746 OUTLINE_SHAPE + f Lnet/minecraft/class_265; field_10747 RAYCAST_SHAPE + m (Lnet/minecraft/class_3611;)Z method_32765 canBeFilledByDripstone + c Checks if this cauldron block can be filled with the specified fluid by dripstone.\n\n@return {@code true} if this block can be filled, {@code false} otherwise + p 1 fluid + c the fluid to check + m (Lnet/minecraft/class_2680;)D method_31615 getFluidHeight + p 1 state + m (Lnet/minecraft/class_4970$class_2251;Lnet/minecraft/class_5620$class_8821;)V + c Constructs a cauldron block.\n\n

The behavior map must match {@link CauldronBehavior#createMap} by providing\na nonnull value for all items. + p 1 settings + p 2 behaviorMap + m (Lnet/minecraft/class_2680;)Z method_32766 isFull + c {@return {@code true} if the specified cauldron state is completely full,\n{@code false} otherwise} + p 1 state + c the cauldron state to check + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_3611;)V method_32764 fillFromDripstone + c Fills a cauldron with one level of the specified fluid if possible. + p 3 pos + c the cauldron's position + p 2 world + c the world where the cauldron is located + p 4 fluid + c the fluid to fill the cauldron with + p 1 state + c the current cauldron state +c net/minecraft/class_2276 net/minecraft/block/CarvedPumpkinBlock + f Ljava/util/function/Predicate; field_10751 IS_GOLEM_HEAD_PREDICATE + f Lnet/minecraft/class_2700; field_61401 copperGolemDispenserPattern + f Lcom/mojang/serialization/MapCodec; field_46304 CODEC + f Lnet/minecraft/class_2700; field_10749 snowGolemDispenserPattern + f Lnet/minecraft/class_2700; field_10753 ironGolemPattern + f Lnet/minecraft/class_2700; field_61402 copperGolemPattern + f Lnet/minecraft/class_2700; field_10752 ironGolemDispenserPattern + f Lnet/minecraft/class_2700; field_10750 snowGolemPattern + f Lnet/minecraft/class_2754; field_10748 FACING + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2700$class_2702;)V method_45456 updatePatternBlocks + p 0 world + p 1 patternResult + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2700$class_2702;)V method_45454 breakPatternBlocks + p 0 world + p 1 patternResult + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2700$class_2702;Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;)V method_45455 spawnEntity + p 1 patternResult + p 2 entity + p 0 world + p 3 pos + m (Lnet/minecraft/class_2680;)Z method_72574 method_72574 + p 0 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_9731 trySpawnEntity + p 1 world + p 2 pos + m (Lnet/minecraft/class_2680;)Z method_9728 method_9728 + p 0 state + m ()Lnet/minecraft/class_2700; method_9732 getSnowGolemDispenserPattern + m ()Lnet/minecraft/class_2700; method_9730 getIronGolemPattern + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_9733 canDispense + p 1 world + p 2 pos + m ()Lnet/minecraft/class_2700; method_72577 getCopperGolemPattern + m (Lnet/minecraft/class_2248;)Z method_72572 method_72572 + p 0 block + m (Lnet/minecraft/class_2680;)Z method_72575 method_72575 + p 0 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2700$class_2702;)V method_72573 replaceCopperBlockWithChest + p 2 patternResult + p 1 world + m (Lnet/minecraft/class_2700$class_2702;)Lnet/minecraft/class_5955$class_5811; method_72571 getOxidationLevel + p 1 patternResult + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5955; method_72570 method_72570 + p 0 block + m ()Lnet/minecraft/class_2700; method_72576 getCopperGolemDispenserPattern + m ()Lnet/minecraft/class_2700; method_9729 getSnowGolemPattern + m ()Lnet/minecraft/class_2700; method_9727 getIronGolemDispenserPattern +c net/minecraft/class_2277 net/minecraft/command/argument/Vec3ArgumentType + f Ljava/util/Collection; field_10754 EXAMPLES + f Z field_10756 centerIntegers + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10755 INCOMPLETE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10757 MIXED_COORDINATE_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m (Z)V + p 1 centerIntegers + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2267; method_9738 parse + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2267; method_9734 getPosArgument + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_243; method_9736 getVec3 + p 0 context + p 1 name + m ()Lnet/minecraft/class_2277; method_9737 vec3 + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Z)Lnet/minecraft/class_2277; method_9735 vec3 + p 0 centerIntegers +c net/minecraft/class_2281 net/minecraft/block/ChestBlock + f Lnet/minecraft/class_3414; field_61404 openSound + f Lnet/minecraft/class_2754; field_10768 FACING + f Lnet/minecraft/class_4732$class_3923; field_17357 NAME_RETRIEVER + f Lnet/minecraft/class_2746; field_10772 WATERLOGGED + f Lcom/mojang/serialization/MapCodec; field_46311 CODEC + f Lnet/minecraft/class_2754; field_10770 CHEST_TYPE + f Lnet/minecraft/class_3414; field_61403 closeSound + f Lnet/minecraft/class_4732$class_3923; field_17356 INVENTORY_RETRIEVER + f Lnet/minecraft/class_265; field_55747 SINGLE_SHAPE + f Ljava/util/Map; field_55748 DOUBLE_SHAPES_BY_DIRECTION + m ()Lnet/minecraft/class_2591; method_31641 getExpectedEntityType + m (Lnet/minecraft/class_2281;Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Z)Lnet/minecraft/class_1263; method_17458 getInventory + p 4 ignoreBlocked + p 3 pos + p 2 world + p 1 state + p 0 block + m ()Lnet/minecraft/class_3414; method_72584 getCloseSound + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_72580 method_72580 + p 0 instance + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2350; method_9758 getFacing + p 0 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2745; method_74027 getChestType + p 1 world + p 3 facing + p 2 pos + m (Lnet/minecraft/class_2618;)Lnet/minecraft/class_4732$class_3923; method_24166 getAnimationProgressRetriever + p 0 progress + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_4732$class_4733; method_24169 getDoubleBlockType + p 0 state + m (Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2281; method_72579 method_72579 + p 2 settings + p 0 openSound + p 1 closeSound + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_24168 method_24168 + p 0 worldx + p 1 posx + m (Ljava/util/function/Supplier;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_4970$class_2251;)V + p 3 closeSound + p 4 settings + p 1 blockEntityTypeSupplier + p 2 openSound + m ()Lnet/minecraft/class_3414; method_72583 getOpenSound + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2350; method_9753 getNeighborChestDirection + p 2 pos + p 3 neighborOffset + p 1 world + m (Lnet/minecraft/class_2680;)Z method_72582 canMergeWith + p 1 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_9756 isChestBlocked + p 0 world + p 1 pos + m ()Lnet/minecraft/class_3445; method_9755 getOpenStat + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_9754 hasCatOnTop + p 0 world + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2338; method_72581 getPosInFrontOf + p 0 pos + p 1 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_9757 hasBlockOnTop + p 1 pos + p 0 world +c net/minecraft/class_2281$2 net/minecraft/block/ChestBlock$2 + m (Lnet/minecraft/class_2595;Lnet/minecraft/class_2595;)Ljava/util/Optional; method_17463 getFromBoth + m (Lnet/minecraft/class_2595;)Ljava/util/Optional; method_17462 getFrom + m ()Ljava/util/Optional; method_24171 getFallback +c net/minecraft/class_2281$3 net/minecraft/block/ChestBlock$3 + m (Lnet/minecraft/class_2595;)Lit/unimi/dsi/fastutil/floats/Float2FloatFunction; method_23898 getFrom + m (Lnet/minecraft/class_2595;Lnet/minecraft/class_2595;F)F method_23900 method_23900 + p 2 tickProgress + m (Lnet/minecraft/class_2595;Lnet/minecraft/class_2595;)Lit/unimi/dsi/fastutil/floats/Float2FloatFunction; method_23899 getFromBoth + m ()Lit/unimi/dsi/fastutil/floats/Float2FloatFunction; method_24172 getFallback +c net/minecraft/class_2281$1 net/minecraft/block/ChestBlock$1 + m (Lnet/minecraft/class_2595;Lnet/minecraft/class_2595;)Ljava/util/Optional; method_17461 getFromBoth + m (Lnet/minecraft/class_2595;)Ljava/util/Optional; method_17460 getFrom + m ()Ljava/util/Optional; method_24170 getFallback +c net/minecraft/class_2282 net/minecraft/block/CocoaBlock + f Lnet/minecraft/class_2758; field_10779 AGE + f I field_31061 MAX_AGE + f Lcom/mojang/serialization/MapCodec; field_46315 CODEC + f Ljava/util/List; field_55749 SHAPES + m (I)Ljava/util/Map; method_66424 method_66424 + p 0 age +c net/minecraft/class_2283 net/minecraft/block/ChorusPlantBlock + f Lcom/mojang/serialization/MapCodec; field_46314 CODEC + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_9759 withConnectionProperties + p 1 pos + p 0 world + p 2 state +c net/minecraft/class_2284 net/minecraft/command/argument/CommandFunctionArgumentType + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_10782 UNKNOWN_FUNCTION_TAG_EXCEPTION + f Ljava/util/Collection; field_10783 EXAMPLES + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_10784 UNKNOWN_FUNCTION_EXCEPTION + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lcom/mojang/datafixers/util/Pair; method_55590 getIdentifiedFunctions + p 0 context + p 1 name + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2284$class_2285; method_9764 parse + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9765 method_9765 + p 0 id + m ()Lnet/minecraft/class_2284; method_9760 commandFunction + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9762 method_9762 + p 0 id + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; method_9769 getFunctions + p 1 name + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_2960;)Lnet/minecraft/class_2158; method_9761 getFunction + p 0 context + p 1 id + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lcom/mojang/datafixers/util/Pair; method_9768 getFunctionOrTag + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_2960;)Ljava/util/Collection; method_9767 getFunctionTag + p 0 context + p 1 id +c net/minecraft/class_2284$class_2285 net/minecraft/command/argument/CommandFunctionArgumentType$FunctionArgument + m (Lcom/mojang/brigadier/context/CommandContext;)Lcom/mojang/datafixers/util/Pair; method_9770 getFunctionOrTag + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lcom/mojang/datafixers/util/Pair; method_55591 getIdentifiedFunctions + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_9771 getFunctions + p 1 context +c net/minecraft/class_2280 net/minecraft/command/argument/DefaultPosArgument + f Lnet/minecraft/class_2278; comp_4927 y + f Lnet/minecraft/class_2278; comp_4928 z + f Lnet/minecraft/class_2278; comp_4926 x + f Lnet/minecraft/class_2280; field_63064 DEFAULT_ROTATION + m (Lnet/minecraft/class_241;)Lnet/minecraft/class_2280; method_35811 absolute + p 0 vec + m (Lnet/minecraft/class_2278;Lnet/minecraft/class_2278;Lnet/minecraft/class_2278;)V + p 2 y + p 3 z + p 1 x + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_2278; comp_4927 y + m ()Lnet/minecraft/class_2278; comp_4928 z + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2280; method_9749 parse + p 0 reader + m ()Lnet/minecraft/class_2278; comp_4926 x + m (DDD)Lnet/minecraft/class_2280; method_35810 absolute + p 4 z + p 0 x + p 2 y + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/class_2280; method_9750 parse + p 1 centerIntegers + p 0 reader +c net/minecraft/class_2289 net/minecraft/block/ConduitBlock + f Lnet/minecraft/class_2746; field_10794 WATERLOGGED + f Lnet/minecraft/class_265; field_10795 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46322 CODEC +c net/minecraft/class_2286 net/minecraft/block/ComparatorBlock + f Lcom/mojang/serialization/MapCodec; field_46319 CODEC + f Lnet/minecraft/class_2754; field_10789 MODE + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1533; method_9774 getAttachedItemFrame + p 1 world + p 3 pos + p 2 facing + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)I method_9773 calculateOutputSignal + p 2 pos + p 3 state + p 1 world + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_1533;)Z method_9772 method_9772 + p 1 itemFrame + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_9775 update + p 1 world + p 2 pos + p 3 state +c net/minecraft/class_2287 net/minecraft/command/argument/ItemStackArgumentType + f Ljava/util/Collection; field_10790 EXAMPLES + f Lnet/minecraft/class_2291; field_48954 reader + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2290; method_9778 parse + m (Lnet/minecraft/class_7157;)V + p 1 commandRegistryAccess + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2290; method_9777 getItemStackArgument + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_2287; method_9776 itemStack + p 0 commandRegistryAccess +c net/minecraft/class_2288 net/minecraft/block/CommandBlock + f Lnet/minecraft/class_2746; field_10793 CONDITIONAL + f Z field_27192 auto + f Lnet/minecraft/class_2754; field_10791 FACING + f Lorg/slf4j/Logger; field_10792 LOGGER + f Lcom/mojang/serialization/MapCodec; field_46318 CODEC + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)V method_9779 executeCommandChain + p 0 world + p 1 pos + p 2 facing + m (Lnet/minecraft/class_2288;)Ljava/lang/Boolean; method_53999 method_53999 + p 0 block + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2593;Z)V method_61744 update + p 4 powered + p 1 world + p 3 blockEntity + p 2 pos + m (ZLnet/minecraft/class_4970$class_2251;)V + p 1 auto + p 2 settings + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1918;Z)V method_9780 execute + p 1 state + p 3 pos + p 2 world + p 5 hasCommand + p 4 executor + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53998 method_53998 + p 0 instance +c net/minecraft/class_3580 net/minecraft/datafixer/fix/BlockStateFlattening + f Ljava/util/Map; field_57219 FACING_EAST_POWERED_FALSE + f Ljava/util/Map; field_57449 POWER_7 + f Ljava/util/Map; field_57207 FACING_SOUTH_HALF_LOWER_HINGE_RIGHT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57328 FACING_SOUTH_HALF_TOP_OPEN_FALSE + f Ljava/util/Map; field_57316 LEVEL_7 + f Ljava/util/Map; field_57425 POWERED_TRUE_SHAPE_EAST_WEST + f Ljava/util/Map; field_57304 LEVEL_1 + f Ljava/util/Map; field_57437 POWER_1 + f Ljava/util/Map; field_57401 ROTATION_1 + f Ljava/util/Map; field_57413 ROTATION_7 + f Ljava/util/Map; field_57218 FACING_EAST_HALF_UPPER_HINGE_RIGHT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57339 FACING_NORTH_HALF_TOP_SHAPE_INNER_RIGHT + f Ljava/util/Map; field_57206 FACING_SOUTH_HALF_UPPER_HINGE_LEFT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57327 FACING_NORTH_HALF_TOP_OPEN_FALSE + f Ljava/util/Map; field_57436 POWER_0 + f Ljava/util/Map; field_57315 LEVEL_6 + f Ljava/util/Map; field_57448 POWER_6 + f Ljava/util/Map; field_57303 LEVEL_0 + f Ljava/util/Map; field_57412 ROTATION_6 + f Ljava/util/Map; field_57424 POWERED_FALSE_SHAPE_EAST_WEST + f Ljava/util/Map; field_57318 LEVEL_9 + f Ljava/util/Map; field_57427 FACING_WEST_IN_WALL_TRUE_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57306 LEVEL_11 + f Ljava/util/Map; field_57439 POWER_11 + f Ljava/util/Map; field_57403 ROTATION_11 + f Ljava/util/Map; field_57415 ROTATION_9 + f Ljava/util/Map; field_57209 FACING_SOUTH_HALF_LOWER_HINGE_LEFT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57500 AGE_14 + f Ljava/util/Map; field_57208 FACING_SOUTH_HALF_UPPER_HINGE_RIGHT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57329 FACING_WEST_HALF_TOP_OPEN_FALSE + f Ljava/util/Map; field_57438 POWER_10 + f Ljava/util/Map; field_57317 LEVEL_8 + f Ljava/util/Map; field_57305 LEVEL_10 + f Ljava/util/Map; field_57414 ROTATION_8 + f Ljava/util/Map; field_57426 POWERED_FALSE_SHAPE_NORTH_SOUTH + f Ljava/util/Map; field_57402 ROTATION_10 + f Ljava/util/Map; field_57405 ROTATION_13 + f Ljava/util/Map; field_57417 POWERED_TRUE_SHAPE_ASCENDING_EAST + f Ljava/util/Map; field_57502 AGE_1_FACING_EAST + f Ljava/util/Map; field_57429 FACING_NORTH_MODE_COMPARE_POWERED_TRUE + f Ljava/util/Map; field_57308 LEVEL_13 + f Ljava/util/Map; field_57190 FACE_WALL_FACING_WEST_POWERED_TRUE + f Ljava/util/Map; field_57307 LEVEL_12 + f Ljava/util/Map; field_57416 POWERED_FALSE_SHAPE_ASCENDING_EAST + f Ljava/util/Map; field_57428 FACING_EAST_MODE_COMPARE_POWERED_TRUE + f Ljava/util/Map; field_57404 ROTATION_12 + f Ljava/util/Map; field_57319 LIT_FALSE + f Ljava/util/Map; field_57501 AGE_15 + f Ljava/util/Map; field_57504 AGE_1_FACING_SOUTH + f Ljava/util/Map; field_57407 ROTATION_15 + f Ljava/util/Map; field_57419 POWERED_TRUE_SHAPE_ASCENDING_NORTH + f Ljava/util/Map; field_57180 FACE_CEILING_FACING_NORTH_POWERED_TRUE + f Ljava/util/Map; field_57192 FACING_SOUTH + f Ljava/util/Map; field_57406 ROTATION_14 + f Ljava/util/Map; field_57503 AGE_1_FACING_NORTH + f Ljava/util/Map; field_57309 LEVEL_14 + f Ljava/util/Map; field_57418 POWERED_FALSE_SHAPE_ASCENDING_NORTH + f Ljava/util/Map; field_57191 FACING_DOWN + f Ljava/util/Map; field_57211 FACING_SOUTH_HALF_LOWER_HINGE_RIGHT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57332 FACING_SOUTH_HALF_TOP_OPEN_TRUE + f Ljava/util/Map; field_57441 POWER_13 + f Ljava/util/Map; field_57114 AGE_2_FACING_SOUTH + f Ljava/util/Map; field_57320 LIT_TRUE + f Ljava/util/Map; field_57126 CHECK_DECAY_FALSE_DECAYABLE_FALSE + f Ljava/util/Map; field_57138 COLOR_MAGENTA + f Ljava/util/Map; field_57259 FACING_SOUTH_HALF_BOTTOM_SHAPE_INNER_RIGHT + f Ljava/util/Map; field_57489 EAST_TRUE_NORTH_TRUE_SOUTH_FALSE_WEST_FALSE + f Ljava/util/Map; field_57247 FACING_SOUTH_HALF_BOTTOM_OPEN_FALSE + f Ljava/util/Map; field_57368 FACING_NORTH_IN_WALL_TRUE_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57235 FACING_NORTH_HALF_UPPER_HINGE_LEFT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57356 FACING_SOUTH_MODE_SUBTRACT_POWERED_FALSE + f Ljava/util/Map; field_57465 SNOWY_FALSE + f Ljava/util/Map; field_57223 CONDITIONAL_TRUE_FACING_NORTH + f Ljava/util/Map; field_57344 FACING_SOUTH_HALF_TOP_SHAPE_OUTER_LEFT + f Ljava/util/Map; field_57477 FACING_SOUTH_TRIGGERED_TRUE + f Ljava/lang/String; field_57453 PROPERTIES_KEY + f Ljava/util/Map; field_57222 CONDITIONAL_FALSE_FACING_NORTH + f Ljava/util/Map; field_57343 FACING_NORTH_HALF_TOP_SHAPE_OUTER_LEFT + f Ljava/util/Map; field_57452 ROTATION_0 + f Ljava/util/Map; field_57125 AXIS_Z + f Ljava/util/Map; field_57210 FACING_SOUTH_HALF_UPPER_HINGE_LEFT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57331 FACING_NORTH_HALF_TOP_OPEN_TRUE + f Ljava/util/Map; field_57464 POWERED_TRUE_SHAPE_NORTH_SOUTH + f Ljava/util/Map; field_57137 COLOR_LIME + f Ljava/util/Map; field_57149 EXTENDED_FALSE_FACING_EAST + f Ljava/util/Map; field_57440 POWER_12 + f Ljava/util/Map; field_57258 FACING_NORTH_HALF_BOTTOM_SHAPE_INNER_RIGHT + f Ljava/util/Map; field_57379 DOWN_FALSE_EAST_TRUE_NORTH_FALSE_SOUTH_TRUE_UP_TRUE_WEST_FALSE + f Ljava/util/Map; field_57246 FACING_NORTH_HALF_BOTTOM_OPEN_FALSE + f Ljava/util/Map; field_57367 FACING_EAST_IN_WALL_TRUE_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57476 FACING_NORTH_TRIGGERED_TRUE + f Ljava/util/Map; field_57234 FACING_NORTH_HALF_LOWER_HINGE_LEFT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57355 FACING_NORTH_MODE_SUBTRACT_POWERED_FALSE + f Ljava/util/Map; field_57488 EAST_FALSE_NORTH_TRUE_SOUTH_FALSE_WEST_FALSE + f Ljava/util/Map; field_57249 FACING_EAST_HALF_BOTTOM_OPEN_TRUE + f Ljava/util/Map; field_57128 CHECK_DECAY_TRUE_DECAYABLE_FALSE + f Ljava/util/Map; field_57310 LEVEL_15 + f Ljava/util/Map; field_57431 FACING_WEST_MODE_COMPARE_POWERED_TRUE + f Ljava/util/Map; field_57116 AGE_3 + f Ljava/util/Map; field_57237 FACING_NORTH_HALF_UPPER_HINGE_RIGHT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57358 POWERED_TRUE + f Ljava/util/Map; field_57467 STAGE_1 + f Ljava/util/Map; field_57225 EXTENDED_TRUE_FACING_NORTH + f Ljava/util/Map; field_57346 FACING_EAST_HALF_TOP_SHAPE_OUTER_RIGHT + f Ljava/util/Map; field_57479 FACING_WEST_TRIGGERED_TRUE + f Ljava/util/Map; field_57213 FACING_SOUTH_POWERED_FALSE + f Ljava/util/Map; field_57334 FACING_EAST_HALF_TOP_SHAPE_INNER_LEFT + f Ljava/util/Map; field_57443 POWER_15 + f Ljava/util/Map; field_57201 FACING_SOUTH_HALF_LOWER_HINGE_LEFT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57322 FACING_NORTH_HALF_BOTTOM_SHAPE_STRAIGHT + f Ljava/util/Map; field_57455 EAST_TRUE_NORTH_TRUE_SOUTH_TRUE_WEST_FALSE + f Ljava/util/Map; field_57139 COLOR_ORANGE + f Ljava/util/Map; field_57200 FACING_SOUTH_HALF_UPPER_HINGE_RIGHT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57321 DOWN_FALSE_EAST_FALSE_NORTH_FALSE_SOUTH_FALSE_UP_FALSE_WEST_FALSE + f Ljava/util/Map; field_57430 FACING_SOUTH_MODE_COMPARE_POWERED_TRUE + f Ljava/util/Map; field_57442 POWER_14 + f Ljava/util/Map; field_57115 AGE_2_FACING_WEST + f Ljava/util/Map; field_57127 CHECK_DECAY_FALSE_DECAYABLE_TRUE + f Ljava/util/Map; field_57248 FACING_WEST_HALF_BOTTOM_OPEN_FALSE + f Ljava/util/Map; field_57369 FACING_SOUTH_IN_WALL_TRUE_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57478 FACING_UP_TRIGGERED_TRUE + f Ljava/util/Map; field_57236 FACING_NORTH_HALF_LOWER_HINGE_RIGHT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57357 FACING_WEST_MODE_SUBTRACT_POWERED_FALSE + f Ljava/util/Map; field_57224 EXTENDED_FALSE_FACING_NORTH + f Ljava/util/Map; field_57345 FACING_WEST_HALF_TOP_SHAPE_OUTER_LEFT + f Ljava/util/Map; field_57454 EAST_FALSE_NORTH_TRUE_SOUTH_TRUE_WEST_FALSE + f Ljava/util/Map; field_57212 FACING_SOUTH_HALF_UPPER_HINGE_RIGHT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57333 FACING_WEST_HALF_TOP_OPEN_TRUE + f Ljava/util/Map; field_57466 STAGE_0 + f Ljava/util/Map; field_57239 FACING_NORTH_HALF_UPPER_HINGE_LEFT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57469 FACING_EAST_TRIGGERED_FALSE + f Ljava/util/Map; field_57227 FACING_NORTH_HALF_UPPER_HINGE_LEFT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57348 FACING_SOUTH_IN_WALL_TRUE_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57118 AGE_5 + f Ljava/util/Map; field_57215 FACING_UP + f Ljava/util/Map; field_57336 FACING_SOUTH_HALF_TOP_SHAPE_INNER_LEFT + f Ljava/util/Map; field_57445 POWER_3 + f Ljava/util/Map; field_57203 FACING_SOUTH_HALF_LOWER_HINGE_RIGHT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57324 FACING_WEST_HALF_BOTTOM_SHAPE_STRAIGHT + f Ljava/util/Map; field_57457 EAST_TRUE_NORTH_FALSE_SOUTH_FALSE_WEST_TRUE + f Ljava/util/Map; field_57312 LEVEL_3 + f Ljava/util/Map; field_57421 POWERED_TRUE_SHAPE_ASCENDING_SOUTH + f Ljava/util/Map; field_57300 FACING_SOUTH_HALF_TOP_SHAPE_STRAIGHT + f Ljava/util/Map; field_57433 FACING_NORTH_MODE_SUBTRACT_POWERED_TRUE + f Ljava/util/Map; field_57238 FACING_NORTH_HALF_LOWER_HINGE_LEFT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57359 FACING_EAST_IN_WALL_FALSE_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57117 AGE_4 + f Ljava/util/Map; field_57129 CHECK_DECAY_TRUE_DECAYABLE_TRUE + f Ljava/util/Map; field_57420 POWERED_FALSE_SHAPE_ASCENDING_SOUTH + f Ljava/util/Map; field_57226 FACING_NORTH_HALF_LOWER_HINGE_LEFT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57347 FACING_NORTH_HALF_TOP_SHAPE_OUTER_RIGHT + f Ljava/util/Map; field_57456 EAST_FALSE_NORTH_FALSE_SOUTH_FALSE_WEST_TRUE + f Ljava/util/Map; field_57214 FACING_SOUTH_POWERED_TRUE + f Ljava/util/Map; field_57335 FACING_NORTH_HALF_TOP_SHAPE_INNER_LEFT + f Ljava/util/Map; field_57468 FACING_DOWN_TRIGGERED_FALSE + f Ljava/util/Map; field_57202 FACING_SOUTH_HALF_UPPER_HINGE_LEFT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57323 FACING_SOUTH_HALF_BOTTOM_SHAPE_STRAIGHT + f Ljava/util/Map; field_57432 FACING_EAST_MODE_SUBTRACT_POWERED_TRUE + f Ljava/util/Map; field_57311 LEVEL_2 + f Ljava/util/Map; field_57444 POWER_2 + f Ljava/util/Map; field_57229 FACING_NORTH_HALF_UPPER_HINGE_RIGHT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57217 CONDITIONAL_TRUE_FACING_UP + f Ljava/util/Map; field_57338 FACING_EAST_HALF_TOP_SHAPE_INNER_RIGHT + f Ljava/util/Map; field_57447 POWER_5 + f Ljava/util/Map; field_57205 FACING_SOUTH_HALF_LOWER_HINGE_LEFT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57326 FACING_EAST_HALF_TOP_OPEN_FALSE + f Ljava/util/Map; field_57459 EAST_TRUE_NORTH_FALSE_SOUTH_TRUE_WEST_TRUE + f Ljava/util/Map; field_57314 LEVEL_5 + f Ljava/util/Map; field_57423 POWERED_TRUE_SHAPE_ASCENDING_WEST + f Ljava/util/Map; field_57302 HALF_UPPER + f Ljava/util/Map; field_57435 FACING_WEST_MODE_SUBTRACT_POWERED_TRUE + f Ljava/util/Map; field_57411 ROTATION_5 + f Ljava/util/Map; field_57228 FACING_NORTH_HALF_LOWER_HINGE_RIGHT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57349 FACING_WEST_IN_WALL_TRUE_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57458 EAST_FALSE_NORTH_FALSE_SOUTH_TRUE_WEST_TRUE + f Ljava/util/Map; field_57216 CONDITIONAL_FALSE_FACING_UP + f Ljava/util/Map; field_57337 FACING_WEST_HALF_TOP_SHAPE_INNER_LEFT + f Ljava/util/Map; field_57119 AGE_6 + f Ljava/util/Map; field_57204 FACING_SOUTH_HALF_UPPER_HINGE_RIGHT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57325 HALF_LOWER + f Ljava/util/Map; field_57434 FACING_SOUTH_MODE_SUBTRACT_POWERED_TRUE + f Ljava/util/Map; field_57313 LEVEL_4 + f Ljava/util/Map; field_57446 POWER_4 + f Ljava/util/Map; field_57301 FACING_WEST_HALF_TOP_SHAPE_STRAIGHT + f Ljava/util/Map; field_57410 ROTATION_4 + f Ljava/util/Map; field_57422 POWERED_FALSE_SHAPE_ASCENDING_WEST + f Ljava/lang/String; field_57400 NAME_KEY + f Ljava/util/Map; field_57130 COLOR_BLACK + f Ljava/util/Map; field_57251 FACING_SOUTH_HALF_BOTTOM_OPEN_TRUE + f Ljava/util/Map; field_57372 FACING_NORTH_IN_WALL_TRUE_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57481 TYPE_DOUBLE + f Ljava/util/Map; field_57360 FACING_NORTH_IN_WALL_FALSE_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57493 AGE_0_FACING_SOUTH + f Ljava/util/Map; field_57299 FACING_NORTH_HALF_TOP_SHAPE_STRAIGHT + f Ljava/util/Map; field_57287 FACING_WEST_HALF_LOWER_HINGE_LEFT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57275 CONDITIONAL_FALSE_FACING_WEST + f Ljava/util/Map; field_57396 FACING_SOUTH_IN_WALL_TRUE_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57263 FACING_SOUTH_HALF_BOTTOM_SHAPE_OUTER_LEFT + f Ljava/util/Map; field_57384 DOWN_TRUE_EAST_TRUE_NORTH_TRUE_SOUTH_TRUE_UP_TRUE_WEST_TRUE + f Ljava/util/Map; field_57142 EXTENDED_FALSE_FACING_DOWN + f Ljava/util/Map; field_57154 FACING_EAST_HALF_UPPER_HINGE_RIGHT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57166 COLOR_PINK + f Ljava/util/Map; field_57178 ATTACHED_TRUE_DISARMED_TRUE_EAST_FALSE_NORTH_FALSE_POWERED_FALSE_SOUTH_FALSE_WEST_FALSE + f Ljava/util/Map; field_57141 CONDITIONAL_TRUE_FACING_DOWN + f Ljava/util/Map; field_57262 FACING_NORTH_HALF_BOTTOM_SHAPE_OUTER_LEFT + f Ljava/util/Map; field_57383 DOWN_FALSE_EAST_TRUE_NORTH_TRUE_SOUTH_FALSE_UP_TRUE_WEST_FALSE + f Ljava/util/Map; field_57492 AGE_0_FACING_NORTH + f Ljava/util/Map; field_57250 FACING_NORTH_HALF_BOTTOM_OPEN_TRUE + f Ljava/util/Map; field_57371 FACING_EAST_IN_WALL_TRUE_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57480 TYPE_BOTTOM + f Ljava/util/Map; field_57298 FACING_EAST_HALF_TOP_SHAPE_STRAIGHT + f Ljava/util/Map; field_57286 FACING_WEST_HALF_UPPER_HINGE_RIGHT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57274 FACING_WEST + f Ljava/util/Map; field_57395 FACING_NORTH_IN_WALL_TRUE_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57153 FACING_EAST_HALF_LOWER_HINGE_RIGHT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57165 FACING_EAST_HALF_LOWER_HINGE_RIGHT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57177 ATTACHED_TRUE_DISARMED_FALSE_EAST_FALSE_NORTH_FALSE_POWERED_TRUE_SOUTH_FALSE_WEST_FALSE + f Ljava/util/Map; field_57189 FACE_WALL_FACING_SOUTH_POWERED_TRUE + f Ljava/util/Map; field_57350 FACING_EAST_MODE_COMPARE_POWERED_FALSE + f Ljava/util/Map; field_57471 FACING_SOUTH_TRIGGERED_FALSE + f Ljava/util/Map; field_57168 COLOR_RED + f Ljava/util/Map; field_57277 EXTENDED_FALSE_FACING_WEST + f Ljava/util/Map; field_57398 FACING_EAST_IN_WALL_TRUE_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57265 FACING_EAST_HALF_BOTTOM_SHAPE_OUTER_RIGHT + f Ljava/util/Map; field_57386 FACING_EAST_IN_WALL_FALSE_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57253 FACING_EAST_HALF_BOTTOM_SHAPE_INNER_LEFT + f Ljava/util/Map; field_57374 DOWN_FALSE_EAST_FALSE_NORTH_FALSE_SOUTH_FALSE_UP_TRUE_WEST_FALSE + f Ljava/util/Map; field_57483 EAST_FALSE_NORTH_FALSE_SOUTH_FALSE_UP_FALSE_WEST_FALSE + f Ljava/util/Map; field_57241 FACING_NORTH_HALF_UPPER_HINGE_RIGHT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57362 FACING_WEST_IN_WALL_FALSE_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57495 AGE_1 + f Ljava/util/Map; field_57120 AGE_7 + f Ljava/util/Map; field_57132 COLOR_BROWN + f Ljava/util/Map; field_57144 FACING_DOWN_POWERED_FALSE + f Ljava/util/Map; field_57156 FACING_EAST_HALF_UPPER_HINGE_LEFT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57289 FACING_WEST_HALF_LOWER_HINGE_RIGHT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57240 FACING_NORTH_HALF_LOWER_HINGE_RIGHT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57361 FACING_SOUTH_IN_WALL_FALSE_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57470 FACING_NORTH_TRIGGERED_FALSE + f Ljava/util/Map; field_57482 TYPE_TOP + f Ljava/util/Map; field_57179 FACE_CEILING_FACING_NORTH_POWERED_FALSE + f Ljava/util/Map; field_57288 FACING_WEST_HALF_UPPER_HINGE_LEFT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57276 CONDITIONAL_TRUE_FACING_WEST + f Ljava/util/Map; field_57397 FACING_WEST_IN_WALL_TRUE_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57264 FACING_WEST_HALF_BOTTOM_SHAPE_OUTER_LEFT + f Ljava/util/Map; field_57385 POWERED_FALSE + f Ljava/util/Map; field_57494 AGE_0_FACING_WEST + f Ljava/util/Map; field_57252 FACING_WEST_HALF_BOTTOM_OPEN_TRUE + f Ljava/util/Map; field_57373 FACING_SOUTH_IN_WALL_TRUE_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57131 COLOR_BLUE + f Ljava/util/Map; field_57143 EXTENDED_TRUE_FACING_DOWN + f Ljava/util/Map; field_57155 FACING_EAST_HALF_LOWER_HINGE_LEFT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57167 COLOR_PURPLE + f [Lcom/mojang/serialization/Dynamic; field_24645 OLD_STATE_TO_DYNAMIC + f Ljava/util/Map; field_57146 FACING_EAST + f Ljava/util/Map; field_57255 FACING_SOUTH_HALF_BOTTOM_SHAPE_INNER_LEFT + f Ljava/util/Map; field_57376 DOWN_FALSE_EAST_FALSE_NORTH_FALSE_SOUTH_FALSE_UP_TRUE_WEST_TRUE + f Ljava/util/Map; field_57485 EAST_TRUE_NORTH_FALSE_SOUTH_FALSE_WEST_FALSE + f Ljava/util/Map; field_57158 FACING_EAST_HALF_UPPER_HINGE_RIGHT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57243 FACING_NORTH_POWERED_TRUE + f Ljava/util/Map; field_57364 FACING_NORTH_IN_WALL_FALSE_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57497 AGE_11 + f Ljava/util/Map; field_57231 FACING_NORTH_HALF_UPPER_HINGE_LEFT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57352 FACING_SOUTH_MODE_COMPARE_POWERED_FALSE + f Ljava/util/Map; field_57461 EAST_TRUE_NORTH_TRUE_SOUTH_FALSE_WEST_TRUE + f Ljava/util/Map; field_57340 FACING_SOUTH_HALF_TOP_SHAPE_INNER_RIGHT + f Ljava/util/Map; field_57473 FACING_WEST_TRIGGERED_FALSE + f Ljava/util/Map; field_57122 AGE_9 + f Ljava/util/Map; field_57279 FACING_WEST_HALF_LOWER_HINGE_LEFT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57134 COLOR_GRAY + f Ljava/util/Map; field_57267 FACING_SOUTH_HALF_BOTTOM_SHAPE_OUTER_RIGHT + f Ljava/util/Map; field_57388 FACING_SOUTH_IN_WALL_FALSE_OPEN_FALSE_POWERED_FALSE + f [Lcom/mojang/serialization/Dynamic; field_24646 OLD_BLOCK_TO_DYNAMIC + f Ljava/util/Map; field_57460 EAST_FALSE_NORTH_TRUE_SOUTH_FALSE_WEST_TRUE + f Ljava/util/Map; field_57157 FACING_EAST_HALF_LOWER_HINGE_RIGHT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57266 FACING_NORTH_HALF_BOTTOM_SHAPE_OUTER_RIGHT + f Ljava/util/Map; field_57387 FACING_NORTH_IN_WALL_FALSE_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57496 AGE_10 + f Ljava/util/Map; field_57169 COLOR_SILVER + f Ljava/util/Map; field_57254 FACING_NORTH_HALF_BOTTOM_SHAPE_INNER_LEFT + f Ljava/util/Map; field_57375 DOWN_FALSE_EAST_FALSE_NORTH_FALSE_SOUTH_TRUE_UP_TRUE_WEST_FALSE + f Ljava/util/Map; field_57242 FACING_NORTH_POWERED_FALSE + f Ljava/util/Map; field_57363 FACING_EAST_IN_WALL_FALSE_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57472 FACING_UP_TRIGGERED_FALSE + f Ljava/util/Map; field_57230 FACING_NORTH_HALF_LOWER_HINGE_LEFT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57351 FACING_NORTH_MODE_COMPARE_POWERED_FALSE + f Ljava/util/Map; field_57484 EAST_FALSE_NORTH_FALSE_SOUTH_FALSE_WEST_FALSE + f Ljava/util/Map; field_57121 AGE_8 + f Ljava/util/Map; field_57133 COLOR_CYAN + f Ljava/util/Map; field_57145 FACING_DOWN_POWERED_TRUE + f Ljava/util/Map; field_57278 EXTENDED_TRUE_FACING_WEST + f Ljava/util/Map; field_57399 FACING_NORTH_IN_WALL_TRUE_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57124 AXIS_Y + f Ljava/util/Map; field_57233 FACING_NORTH_HALF_UPPER_HINGE_RIGHT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57354 FACING_EAST_MODE_SUBTRACT_POWERED_FALSE + f Ljava/util/Map; field_57463 EAST_TRUE_NORTH_TRUE_SOUTH_TRUE_WEST_TRUE + f Ljava/util/Map; field_57136 COLOR_LIGHT_BLUE + f Ljava/util/Map; field_57221 FACING_NORTH + f Ljava/util/Map; field_57342 FACING_EAST_HALF_TOP_SHAPE_OUTER_LEFT + f Ljava/util/Map; field_57475 FACING_EAST_TRIGGERED_TRUE + f Ljava/util/Map; field_57148 CONDITIONAL_TRUE_FACING_EAST + f Ljava/util/Map; field_57330 FACING_EAST_HALF_TOP_OPEN_TRUE + f Ljava/util/Map; field_57451 POWER_9 + f Ljava/util/Map; field_57269 FACING_EAST_HALF_BOTTOM_SHAPE_STRAIGHT + f Ljava/util/Map; field_57257 FACING_EAST_HALF_BOTTOM_SHAPE_INNER_RIGHT + f Ljava/util/Map; field_57378 DOWN_FALSE_EAST_TRUE_NORTH_FALSE_SOUTH_FALSE_UP_TRUE_WEST_FALSE + f Ljava/util/Map; field_57487 EAST_TRUE_NORTH_FALSE_SOUTH_TRUE_WEST_FALSE + f Ljava/util/Map; field_57245 FACING_EAST_HALF_BOTTOM_OPEN_FALSE + f Ljava/util/Map; field_57366 FACING_WEST_IN_WALL_FALSE_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57499 AGE_13 + f Ljava/util/Map; field_57135 COLOR_GREEN + f Ljava/util/Map; field_57244 FACING_WEST_POWERED_TRUE + f Ljava/util/Map; field_57365 FACING_SOUTH_IN_WALL_FALSE_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57474 FACING_DOWN_TRIGGERED_TRUE + f Ljava/util/Map; field_57147 CONDITIONAL_FALSE_FACING_EAST + f Ljava/util/Map; field_57232 FACING_NORTH_HALF_LOWER_HINGE_RIGHT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57353 FACING_WEST_MODE_COMPARE_POWERED_FALSE + f Ljava/util/Map; field_57486 EAST_FALSE_NORTH_FALSE_SOUTH_TRUE_WEST_FALSE + f Ljava/util/Map; field_57159 FACING_EAST_HALF_LOWER_HINGE_LEFT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57220 FACING_EAST_POWERED_TRUE + f Ljava/util/Map; field_57341 FACING_WEST_HALF_TOP_SHAPE_INNER_RIGHT + f Ljava/util/Map; field_57450 POWER_8 + f Ljava/util/Map; field_57462 EAST_FALSE_NORTH_TRUE_SOUTH_TRUE_WEST_TRUE + f Ljava/util/Map; field_57268 FACING_WEST_HALF_BOTTOM_SHAPE_OUTER_RIGHT + f Ljava/util/Map; field_57389 FACING_WEST_IN_WALL_FALSE_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57498 AGE_12 + f Ljava/util/Map; field_57123 AXIS_X + f Ljava/util/Map; field_57256 FACING_WEST_HALF_BOTTOM_SHAPE_INNER_LEFT + f Ljava/util/Map; field_57377 DOWN_FALSE_EAST_FALSE_NORTH_FALSE_SOUTH_TRUE_UP_TRUE_WEST_TRUE + f Ljava/util/Map; field_57409 ROTATION_3 + f Ljava/util/Map; field_57506 AGE_2 + f Ljava/util/Map; field_57182 FACE_FLOOR_FACING_NORTH_POWERED_TRUE + f Ljava/util/Map; field_57291 FACING_WEST_HALF_LOWER_HINGE_LEFT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57194 CONDITIONAL_TRUE_FACING_SOUTH + f Ljava/util/Map; field_57170 COLOR_WHITE + f Ljava/util/Map; field_57505 AGE_1_FACING_WEST + f Ljava/util/Map; field_57408 ROTATION_2 + f Ljava/util/Map; field_57193 CONDITIONAL_FALSE_FACING_SOUTH + f Ljava/util/Map; field_57290 FACING_WEST_HALF_UPPER_HINGE_RIGHT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57181 FACE_FLOOR_FACING_NORTH_POWERED_FALSE + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_15833 OLD_BLOCK_TO_ID + f Ljava/util/Map; field_57508 AGE_2_FACING_NORTH + f Ljava/lang/String; field_29869 FILTER_ME + f Ljava/util/Map; field_57160 FACING_EAST_HALF_UPPER_HINGE_LEFT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57390 FACING_EAST_IN_WALL_FALSE_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57172 ATTACHED_FALSE_DISARMED_FALSE_EAST_FALSE_NORTH_FALSE_POWERED_FALSE_SOUTH_FALSE_WEST_FALSE + f Ljava/util/Map; field_57184 FACE_WALL_FACING_NORTH_POWERED_FALSE + f Ljava/util/Map; field_57196 EXTENDED_TRUE_FACING_SOUTH + f Ljava/util/Map; field_57293 FACING_WEST_HALF_LOWER_HINGE_RIGHT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57281 FACING_WEST_HALF_LOWER_HINGE_RIGHT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57507 AGE_2_FACING_EAST + f Ljava/util/Map; field_57171 COLOR_YELLOW + f Ljava/util/Map; field_57280 FACING_WEST_HALF_UPPER_HINGE_LEFT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57183 FACE_WALL_FACING_EAST_POWERED_FALSE + f Ljava/util/Map; field_57195 EXTENDED_FALSE_FACING_SOUTH + f Ljava/util/Map; field_57292 FACING_WEST_HALF_UPPER_HINGE_LEFT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57150 EXTENDED_TRUE_FACING_EAST + f Ljava/util/Map; field_57162 FACING_EAST_HALF_UPPER_HINGE_RIGHT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57174 ATTACHED_FALSE_DISARMED_TRUE_EAST_FALSE_NORTH_FALSE_POWERED_FALSE_SOUTH_FALSE_WEST_FALSE + f Ljava/util/Map; field_57295 FACING_WEST_POWERED_FALSE + f Ljava/util/Map; field_57283 FACING_WEST_HALF_LOWER_HINGE_LEFT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57271 EXTENDED_TRUE_FACING_UP + f Ljava/util/Map; field_57392 FACING_SOUTH_IN_WALL_FALSE_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57380 DOWN_FALSE_EAST_FALSE_NORTH_TRUE_SOUTH_FALSE_UP_TRUE_WEST_FALSE + f Ljava/util/Map; field_57186 FACE_WALL_FACING_WEST_POWERED_FALSE + f Ljava/util/Map; field_57198 FACING_SOUTH_HALF_UPPER_HINGE_LEFT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57161 FACING_EAST_HALF_LOWER_HINGE_RIGHT_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57173 ATTACHED_FALSE_DISARMED_FALSE_EAST_FALSE_NORTH_FALSE_POWERED_TRUE_SOUTH_FALSE_WEST_FALSE + f Ljava/util/Map; field_57185 FACE_WALL_FACING_SOUTH_POWERED_FALSE + f Ljava/util/Map; field_57294 FACING_WEST_HALF_UPPER_HINGE_RIGHT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57282 FACING_WEST_HALF_UPPER_HINGE_RIGHT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57270 EXTENDED_FALSE_FACING_UP + f Ljava/util/Map; field_57391 FACING_NORTH_IN_WALL_FALSE_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57197 FACING_SOUTH_HALF_LOWER_HINGE_LEFT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57140 CONDITIONAL_FALSE_FACING_DOWN + f Ljava/util/Map; field_57152 FACING_EAST_HALF_UPPER_HINGE_LEFT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57273 FACING_UP_POWERED_TRUE + f Ljava/util/Map; field_57394 FACING_EAST_IN_WALL_TRUE_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57261 FACING_EAST_HALF_BOTTOM_SHAPE_OUTER_LEFT + f Ljava/util/Map; field_57382 DOWN_FALSE_EAST_TRUE_NORTH_TRUE_SOUTH_TRUE_UP_FALSE_WEST_TRUE + f Ljava/util/Map; field_57370 FACING_WEST_IN_WALL_TRUE_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57491 AGE_0_FACING_EAST + f Ljava/util/Map; field_57297 FACING_WEST_HALF_TOP_SHAPE_OUTER_RIGHT + f Ljava/util/Map; field_57285 FACING_WEST_HALF_LOWER_HINGE_RIGHT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57164 FACING_EAST_HALF_UPPER_HINGE_LEFT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57176 ATTACHED_TRUE_DISARMED_FALSE_EAST_FALSE_NORTH_FALSE_POWERED_FALSE_SOUTH_FALSE_WEST_FALSE + f Ljava/util/Map; field_57188 FACE_WALL_FACING_NORTH_POWERED_TRUE + f Ljava/util/Map; field_57151 FACING_EAST_HALF_LOWER_HINGE_LEFT_OPEN_FALSE_POWERED_FALSE + f Ljava/util/Map; field_57163 FACING_EAST_HALF_LOWER_HINGE_LEFT_OPEN_TRUE_POWERED_TRUE + f Ljava/util/Map; field_57284 FACING_WEST_HALF_UPPER_HINGE_LEFT_OPEN_FALSE_POWERED_TRUE + f Ljava/util/Map; field_57272 FACING_UP_POWERED_FALSE + f Ljava/util/Map; field_57393 FACING_WEST_IN_WALL_FALSE_OPEN_TRUE_POWERED_FALSE + f Ljava/util/Map; field_57260 FACING_WEST_HALF_BOTTOM_SHAPE_INNER_RIGHT + f Ljava/util/Map; field_57381 DOWN_FALSE_EAST_FALSE_NORTH_TRUE_SOUTH_FALSE_UP_TRUE_WEST_TRUE + f Ljava/util/Map; field_57490 AGE_0 + f Ljava/util/Map; field_57296 FACING_SOUTH_HALF_TOP_SHAPE_OUTER_RIGHT + f Ljava/util/Map; field_57175 ATTACHED_FALSE_DISARMED_TRUE_EAST_FALSE_NORTH_FALSE_POWERED_TRUE_SOUTH_FALSE_WEST_FALSE + f Ljava/util/Map; field_57187 FACE_WALL_FACING_EAST_POWERED_TRUE + f Ljava/util/Map; field_57199 FACING_SOUTH_HALF_LOWER_HINGE_RIGHT_OPEN_FALSE_POWERED_FALSE + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_15831 OLD_STATE_TO_ID + m (Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_68178 createStateDynamic + p 0 name + m ()V method_31448 putStatesFromBlocks0To15 + c Adds states to flatten from the blocks which had numeric IDs between 0 and 15 before 1.13. + m (I)Ljava/lang/String; method_15599 lookupStateBlock + p 0 stateId + m ()V method_31449 putStatesFromBlocks16To31 + c Adds states to flatten from the blocks which had numeric IDs between 16 and 31 before 1.13. + m ()V method_31455 putStatesFromBlocks112To127 + c Adds states to flatten from the blocks which had numeric IDs between 112 and 127 before 1.13. + m ()V method_31456 putStatesFromBlocks128To143 + c Adds states to flatten from the blocks which had numeric IDs between 128 and 143 before 1.13. + m ()V method_31457 putStatesFromBlocks144To159 + c Adds states to flatten from the blocks which had numeric IDs between 144 and 159 before 1.13. + m ()V method_31452 putStatesFromBlocks64To79 + c Adds states to flatten from the blocks which had numeric IDs between 64 and 79 before 1.13. + m (Ljava/lang/String;Ljava/util/Map;)Lcom/mojang/serialization/Dynamic; method_68177 createStateDynamic + p 0 name + p 1 properties + m ()V method_31453 putStatesFromBlocks80To95 + c Adds states to flatten from the blocks which had numeric IDs between 80 and 95 before 1.13. + m ()V method_31454 putStatesFromBlocks96To111 + c Adds states to flatten from the blocks which had numeric IDs between 96 and 111 before 1.13. + m ()V method_68185 putStatesFromBlocks224To239 + c Adds states to flatten from the blocks which had numeric IDs between 224 and 239 before 1.13. + m ()V method_68186 putStatesFromBlocks240To255 + c Adds states to flatten from the blocks which had numeric IDs between 240 and 255 before 1.13. + m ()V method_31450 putStatesFromBlocks32To47 + c Adds states to flatten from the blocks which had numeric IDs between 32 and 47 before 1.13. + m (Ljava/lang/String;)Ljava/lang/String; method_15600 lookupBlock + p 0 oldBlockName + m (ILcom/mojang/serialization/Dynamic;[Lcom/mojang/serialization/Dynamic;)V method_15596 putStates + p 0 oldIdAndMeta + c {@code (id << 4) | metadata} + p 1 newStateDynamic + p 2 oldStateDynamics + m ()V method_68179 putStatesFromBlocks48To51 + c Adds states to flatten from the blocks which had numeric IDs between 48 and 51 before 1.13. + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15597 lookupState + m ()V method_68180 putStatesFromBlocks52To63 + c Adds states to flatten from the blocks which had numeric IDs between 52 and 63 before 1.13. + m ()V method_68182 putStatesFromBlocks176To191 + c Adds states to flatten from the blocks which had numeric IDs between 176 and 191 before 1.13. + m ()V method_22426 fillEmptyStates + m ()V method_68181 putStatesFromBlocks160To175 + c Adds states to flatten from the blocks which had numeric IDs between 160 and 175 before 1.13. + m ()V method_68183 putStatesFromBlocks192To207 + c Adds states to flatten from the blocks which had numeric IDs between 192 and 207 before 1.13. + m (I)Lcom/mojang/serialization/Dynamic; method_15594 lookupState + p 0 stateId + m ()V method_68184 putStatesFromBlocks208To223 + c Adds states to flatten from the blocks which had numeric IDs between 208 and 223 before 1.13. +c net/minecraft/class_3581 net/minecraft/datafixer/fix/BlockStateStructureTemplateFix +c net/minecraft/class_3582 net/minecraft/datafixer/fix/ChunkPalettedStorageFix + f Lorg/slf4j/Logger; field_15844 LOGGER + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_15637 getName + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/lang/String; method_15638 getProperty + p 1 propertyKey + m (Lnet/minecraft/class_3513;Lcom/mojang/serialization/Dynamic;)I method_15616 addTo + m (ZZZZ)I method_15615 getSideToUpgradeFlag + p 1 east + p 0 west + p 3 south + p 2 north + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15633 fixChunk + p 1 chunkDynamic +c net/minecraft/class_3582$class_3587 net/minecraft/datafixer/fix/ChunkPalettedStorageFix$Section + f I field_15879 y + f Z field_15876 hasBlocks + f Ljava/util/List; field_15880 paletteData + f Lit/unimi/dsi/fastutil/ints/IntList; field_15874 innerPositions + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_15881 inPlaceUpdates + f Lcom/mojang/serialization/Dynamic; field_15878 section + f Lnet/minecraft/class_3513; field_15882 paletteMap + f Ljava/util/Set; field_15875 seenStates + f [I field_15877 states + m (II)V method_15650 addInPlaceUpdate + p 2 index + p 1 section + m ()Lcom/mojang/serialization/Dynamic; method_15651 transform + m (ILcom/mojang/serialization/Dynamic;)V method_15647 setBlock + p 1 pos + m (Lcom/mojang/serialization/Dynamic;)V + p 1 section + m (I)Lcom/mojang/serialization/Dynamic; method_15649 getBlock + p 1 index + m (I)I method_15652 visit + p 1 sidesToUpgrade +c net/minecraft/class_3582$class_3588 net/minecraft/datafixer/fix/ChunkPalettedStorageFix$Level + f [Lnet/minecraft/class_3582$class_3587; field_15888 sections + f Lcom/mojang/serialization/Dynamic; field_15886 level + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_15887 blockEntities + f I field_15884 x + f I field_15885 sidesToUpgrade + f I field_15883 z + m ()Lcom/mojang/serialization/Dynamic; method_15664 transform + m (Lcom/mojang/serialization/Dynamic;)V method_15665 method_15665 + p 1 blockEntityTag + m (I)Lnet/minecraft/class_3582$class_3587; method_15658 getSection + p 1 packedLocalPos + m (Lcom/mojang/serialization/Dynamic;)V method_15656 method_15656 + p 1 sectionTag + m (Lcom/mojang/serialization/Dynamic;)V + p 1 chunkTag + m (ILcom/mojang/serialization/Dynamic;)V method_15657 setBlock + p 1 packedLocalPos + m (I)Lcom/mojang/serialization/Dynamic; method_15660 removeBlockEntity + p 1 packedLocalPos + m (I)Lcom/mojang/serialization/Dynamic; method_15662 getBlock + p 1 packedLocalPos + m (ILnet/minecraft/class_3582$class_3584;)I method_15663 adjacentTo + p 1 direction + p 0 packedLocalPos + m (I)Lcom/mojang/serialization/Dynamic; method_15655 getBlockEntity + p 1 packedLocalPos +c net/minecraft/class_3582$class_3583 net/minecraft/datafixer/fix/ChunkPalettedStorageFix$ChunkNibbleArray + f [B field_15855 contents + f I field_29879 CONTENTS_LENGTH + m ([B)V + p 1 contents + m (III)I method_15640 get + p 3 z + p 2 y + p 1 x + m (I)Z method_15641 usesLowNibble + p 1 index + m (I)I method_15642 getRawIndex + p 1 index +c net/minecraft/class_3582$class_3584 net/minecraft/datafixer/fix/ChunkPalettedStorageFix$Facing + f Lnet/minecraft/class_3582$class_3584$class_3586; field_15861 direction + f Lnet/minecraft/class_3582$class_3584$class_3585; field_15864 axis + f Lnet/minecraft/class_3582$class_3584; field_15857 WEST + f Lnet/minecraft/class_3582$class_3584; field_15859 NORTH + f Lnet/minecraft/class_3582$class_3584; field_15858 DOWN + f Lnet/minecraft/class_3582$class_3584; field_15860 EAST + f Lnet/minecraft/class_3582$class_3584; field_15863 UP + f Lnet/minecraft/class_3582$class_3584; field_15862 SOUTH + m (Ljava/lang/String;ILnet/minecraft/class_3582$class_3584$class_3586;Lnet/minecraft/class_3582$class_3584$class_3585;)V + p 4 axis + p 3 direction + m ()Lnet/minecraft/class_3582$class_3584$class_3586; method_15643 getDirection + m ()Lnet/minecraft/class_3582$class_3584$class_3585; method_15644 getAxis +c net/minecraft/class_3582$class_3584$class_3586 net/minecraft/datafixer/fix/ChunkPalettedStorageFix$Facing$Direction + f I field_15872 offset + f Lnet/minecraft/class_3582$class_3584$class_3586; field_15870 NEGATIVE + f Lnet/minecraft/class_3582$class_3584$class_3586; field_15873 POSITIVE + m ()I method_15645 getOffset + m (Ljava/lang/String;II)V + p 3 offset +c net/minecraft/class_3582$class_3584$class_3585 net/minecraft/datafixer/fix/ChunkPalettedStorageFix$Facing$Axis + f Lnet/minecraft/class_3582$class_3584$class_3585; field_15869 X + f Lnet/minecraft/class_3582$class_3584$class_3585; field_15866 Y + f Lnet/minecraft/class_3582$class_3584$class_3585; field_15867 Z +c net/minecraft/class_3582$class_9855 net/minecraft/datafixer/fix/ChunkPalettedStorageFix$Mapping + f Lcom/mojang/serialization/Dynamic; field_52410 UPPER_HALF_LARGE_FERN_STATE + f Lcom/mojang/serialization/Dynamic; field_52412 UPPER_HALF_PEONY_STATE + f Lcom/mojang/serialization/Dynamic; field_52404 SNOWY_PODZOL_STATE + f Lcom/mojang/serialization/Dynamic; field_52406 SNOWY_MYCELIUM_STATE + f Lcom/mojang/serialization/Dynamic; field_52408 UPPER_HALF_LILAC_STATE + f Ljava/util/Map; field_52414 SKULL_IDS_TO_STATES + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_52417 COLORS_BY_IDS + f Ljava/util/Map; field_52416 NOTE_BLOCK_IDS_TO_STATES + f Ljava/util/Map; field_52418 BED_IDS_TO_STATES + f Lcom/mojang/serialization/Dynamic; field_52411 UPPER_HALF_ROSE_BUSH_STATE + f Lcom/mojang/serialization/Dynamic; field_52403 PUMPKIN_STATE + f Lcom/mojang/serialization/Dynamic; field_52405 SNOWY_GRASS_BLOCK_STATE + f Lcom/mojang/serialization/Dynamic; field_52407 UPPER_HALF_SUNFLOWER_STATE + f Lcom/mojang/serialization/Dynamic; field_52409 UPPER_HALF_TALL_GRASS_STATE + f Ljava/util/Map; field_52413 PLANT_TO_FLOWER_POT_STATES + f Ljava/util/Map; field_52415 DOOR_IDS_TO_STATES + f Ljava/util/Map; field_52419 BANNER_IDS_TO_STATES + f Lcom/mojang/serialization/Dynamic; field_52420 AIR_STATE + m (Ljava/util/HashMap;)V method_61383 method_61383 + p 0 map + m (Ljava/util/HashMap;)V method_61381 method_61381 + p 0 map + m (Ljava/util/Map;ILjava/lang/String;)V method_61379 banner + p 0 map + p 2 color + p 1 id + m (Ljava/util/Map;ILjava/lang/String;)V method_61375 bed + p 2 color + p 1 id + p 0 map + m (Ljava/util/HashMap;)V method_61382 method_61382 + p 0 map + m (Ljava/util/HashMap;)V method_61380 method_61380 + p 0 map + m (Ljava/util/HashMap;)V method_61374 method_61374 + p 0 map + m (Ljava/util/Map;ILjava/lang/String;Ljava/lang/String;)V method_61376 skull + p 2 entity + p 3 type + p 0 map + p 1 id + m (Ljava/util/HashMap;)V method_61378 method_61378 + p 0 map + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_61373 method_61373 + p 0 map + m (Ljava/util/Map;Ljava/lang/String;)V method_61377 door + p 1 id + p 0 map +c net/minecraft/class_2256 net/minecraft/block/Fertilizable + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_55769 getFertilizeParticlePos + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_9650 canGrow + p 2 random + p 1 world + p 4 state + p 3 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Ljava/util/Optional; method_67539 findPosToSpreadTo + p 0 world + p 2 state + p 1 pos + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_67541 canSpread + p 0 world + p 2 state + p 1 pos + m (Ljava/util/List;Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Ljava/util/Optional; method_67540 findPosToSpreadTo + p 2 pos + p 3 state + p 0 directions + p 1 world + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_9651 isFertilizable + p 3 state + p 2 pos + p 1 world + m ()Lnet/minecraft/class_2256$class_9077; method_55770 getFertilizableType + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_9652 grow + p 4 state + p 3 pos + p 2 random + p 1 world +c net/minecraft/class_2256$class_9077 net/minecraft/block/Fertilizable$FertilizableType + f Lnet/minecraft/class_2256$class_9077; field_47834 NEIGHBOR_SPREADER + f Lnet/minecraft/class_2256$class_9077; field_47835 GROWER +c net/minecraft/class_2257 net/minecraft/command/argument/BlockStateArgumentType + f Lnet/minecraft/class_7225; field_37964 registryWrapper + f Ljava/util/Collection; field_10679 EXAMPLES + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2247; method_9654 parse + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2247; method_9655 getBlockState + p 0 context + p 1 name + m (Lnet/minecraft/class_7157;)V + p 1 commandRegistryAccess + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_2257; method_9653 blockState + p 0 commandRegistryAccess +c net/minecraft/class_3589 net/minecraft/datafixer/fix/ChunkStatusFix +c net/minecraft/class_2258 net/minecraft/block/BubbleColumnBlock + f I field_31038 SCHEDULED_TICK_DELAY + f Lcom/mojang/serialization/MapCodec; field_46291 CODEC + f Lnet/minecraft/class_2746; field_10680 DRAG + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_34269 getBubbleState + p 0 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)V method_34267 update + p 0 world + p 2 water + p 1 pos + p 3 bubbleSource + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_34268 update + p 1 pos + p 0 world + p 2 state + m (Lnet/minecraft/class_2680;)Z method_9658 isStillWater + p 0 state +c net/minecraft/class_2259 net/minecraft/command/argument/BlockArgumentParser + f Lnet/minecraft/class_2487; field_10693 data + f Lnet/minecraft/class_2960; field_10697 blockId + f Lnet/minecraft/class_6885; field_10681 tagId + f Lnet/minecraft/class_2680; field_10686 blockState + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_10695 UNKNOWN_PROPERTY_EXCEPTION + f C field_32801 NBT_OPENING + f Z field_37967 allowSnbt + f C field_32805 TAG_PREFIX + f Lnet/minecraft/class_7225; field_37966 registryWrapper + f Ljava/util/Map; field_10699 blockProperties + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10684 UNCLOSED_PROPERTIES_EXCEPTION + f Lnet/minecraft/class_2689; field_10689 stateFactory + f Ljava/util/function/Function; field_10682 SUGGEST_DEFAULT + f Z field_10687 allowTag + f Lcom/mojang/brigadier/StringReader; field_10698 reader + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10691 DISALLOWED_TAG_EXCEPTION + f C field_32800 PROPERTIES_OPENING + f C field_32804 PROPERTY_SEPARATOR + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_10690 INVALID_BLOCK_ID_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_37965 UNKNOWN_BLOCK_TAG_EXCEPTION + f C field_32803 PROPERTY_DEFINER + f Ljava/util/Map; field_10685 tagProperties + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; field_10683 INVALID_PROPERTY_EXCEPTION + f Ljava/util/function/Function; field_10696 suggestions + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_10692 DUPLICATE_PROPERTY_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_10688 EMPTY_PROPERTY_EXCEPTION + f C field_32802 PROPERTIES_CLOSING + m ()V method_9672 parseSnbt + m ()Z method_9676 hasBlockEntity + m (Ljava/lang/StringBuilder;Lnet/minecraft/class_2769;Ljava/lang/Comparable;)V method_9663 stringifyProperty + p 2 value + p 1 property + p 0 builder + m (Lnet/minecraft/class_7225;Lcom/mojang/brigadier/StringReader;ZZ)V + p 3 allowTag + p 4 allowSnbt + p 1 registryWrapper + p 2 reader + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; method_9690 suggestTagPropertyValues + p 1 builder + p 2 name + m (Lnet/minecraft/class_2680;)Ljava/lang/String; method_9685 stringifyBlockState + p 0 state + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_41959 method_41959 + p 0 key + m ()V method_9677 parseTagId + m (Lnet/minecraft/class_7225;Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/class_2259$class_7211; method_41955 block + p 0 registryWrapper + p 1 reader + p 2 allowSnbt + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9689 suggestCommaOrEnd + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9665 suggestBlockProperties + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9673 suggestBlockOrTagId + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9681 suggestSnbtOrBlockProperties + p 1 builder + m (Lnet/minecraft/class_7225;Lcom/mojang/brigadier/StringReader;Z)Lcom/mojang/datafixers/util/Either; method_41960 blockOrTag + p 0 registryWrapper + p 1 reader + p 2 allowSnbt + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9693 suggestEqualsCharacter + p 1 builder + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9691 method_9691 + p 1 property + p 0 block + m (Lnet/minecraft/class_7225;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;ZZ)Ljava/util/concurrent/CompletableFuture; method_9666 getSuggestions + p 3 allowSnbt + p 1 builder + p 2 allowTag + p 0 registryWrapper + m ()V method_9680 parseTagProperties + m (Lnet/minecraft/class_7225;Ljava/lang/String;Z)Lcom/mojang/datafixers/util/Either; method_41962 blockOrTag + p 0 registryWrapper + p 2 allowSnbt + p 1 string + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_41963 suggestBlockId + p 1 builder + m ()V method_9678 parse + m (Lnet/minecraft/class_2769;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9684 method_9684 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9674 suggestTagPropertiesOrEnd + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9670 suggestIdentifiers + p 1 builder + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_41958 method_41958 + p 0 tag + m (Lnet/minecraft/class_7225;Ljava/lang/String;Z)Lnet/minecraft/class_2259$class_7211; method_41957 block + p 2 allowSnbt + p 1 string + p 0 registryWrapper + m ()V method_9675 parseBlockId + m ()V method_9659 parseBlockProperties + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9660 method_9660 + p 0 block + p 2 value + p 1 property + m (Lnet/minecraft/class_2769;Ljava/lang/String;I)V method_9668 parsePropertyValue + p 1 property + p 2 value + p 3 cursor + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9667 suggestTagProperties + p 1 builder + m (Ljava/lang/String;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9683 method_9683 + p 2 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9679 suggestSnbtOrTagProperties + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9687 suggestSnbt + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lnet/minecraft/class_2769;)Lcom/mojang/brigadier/suggestion/SuggestionsBuilder; method_9662 suggestPropertyValues + p 0 builder + p 1 property + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9671 suggestBlockPropertiesOrEnd + p 1 builder + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9682 method_9682 + p 0 block + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9661 method_9661 + p 0 block + p 1 property +c net/minecraft/class_2259$class_7211 net/minecraft/command/argument/BlockArgumentParser$BlockResult + f Lnet/minecraft/class_2680; comp_622 blockState + f Ljava/util/Map; comp_623 properties + f Lnet/minecraft/class_2487; comp_624 nbt + m ()Ljava/util/Map; comp_623 properties + m ()Lnet/minecraft/class_2680; comp_622 blockState + m ()Lnet/minecraft/class_2487; comp_624 nbt + m (Lnet/minecraft/class_2680;Ljava/util/Map;Lnet/minecraft/class_2487;)V + p 1 blockState + p 2 properties + p 3 nbt +c net/minecraft/class_2259$class_7212 net/minecraft/command/argument/BlockArgumentParser$TagResult + f Ljava/util/Map; comp_626 vagueProperties + f Lnet/minecraft/class_2487; comp_627 nbt + f Lnet/minecraft/class_6885; comp_625 tag + m ()Ljava/util/Map; comp_626 vagueProperties + m ()Lnet/minecraft/class_6885; comp_625 tag + m ()Lnet/minecraft/class_2487; comp_627 nbt + m (Lnet/minecraft/class_6885;Ljava/util/Map;Lnet/minecraft/class_2487;)V + p 1 tag + p 2 vagueProperties + p 3 nbt +c net/minecraft/class_2252 net/minecraft/command/argument/BlockPredicateArgumentType + f Lnet/minecraft/class_7225; field_37963 registryWrapper + f Ljava/util/Collection; field_10672 EXAMPLES + m (Lnet/minecraft/class_7225;Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2252$class_2254; method_41953 parse + p 1 reader + p 0 registryWrapper + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2252$class_2254; method_9642 parse + m (Lnet/minecraft/class_7157;)V + p 1 commandRegistryAccess + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/function/Predicate; method_9644 getBlockPredicate + p 1 name + p 0 context + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_2252; method_9645 blockPredicate + p 0 commandRegistryAccess + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m (Lnet/minecraft/class_2259$class_7211;)Lnet/minecraft/class_2252$class_2254; method_41951 method_41951 + p 0 result + m (Lnet/minecraft/class_2259$class_7212;)Lnet/minecraft/class_2252$class_2254; method_41952 method_41952 + p 0 result +c net/minecraft/class_2252$class_2255 net/minecraft/command/argument/BlockPredicateArgumentType$TagPredicate + f Ljava/util/Map; field_10678 properties + f Lnet/minecraft/class_2487; field_10677 nbt + f Lnet/minecraft/class_6885; field_10676 tag + m (Lnet/minecraft/class_2694;)Z method_9649 test + m (Lnet/minecraft/class_6885;Ljava/util/Map;Lnet/minecraft/class_2487;)V + p 3 nbt + p 2 properties + p 1 tag + m (Ljava/lang/Object;)Z test test + p 1 context +c net/minecraft/class_2252$class_2254 net/minecraft/command/argument/BlockPredicateArgumentType$BlockPredicate + m ()Z method_38559 hasNbt +c net/minecraft/class_2252$class_2253 net/minecraft/command/argument/BlockPredicateArgumentType$StatePredicate + f Lnet/minecraft/class_2680; field_10674 state + f Lnet/minecraft/class_2487; field_10675 nbt + f Ljava/util/Set; field_10673 properties + m (Lnet/minecraft/class_2694;)Z method_9648 test + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lnet/minecraft/class_2680;Ljava/util/Set;Lnet/minecraft/class_2487;)V + p 3 nbt + p 1 state + p 2 properties +c net/minecraft/class_3590 net/minecraft/datafixer/fix/ChunkStructuresTemplateRenameFix + f Lcom/google/common/collect/ImmutableMap; field_15889 STRUCTURES + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_49459 fixChildren + p 1 structureFeatureDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_49461 method_49461 + p 2 childDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_49460 method_49460 + p 2 childrenDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15671 fix + p 2 childDynamic + p 1 structureFeatureDynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_49458 method_49458 + p 1 structureFeatureTyped +c net/minecraft/class_3591 net/minecraft/datafixer/fix/ChunkToProtoChunkFix + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;)V method_39949 method_39949 + p 1 tickTag + m (Lcom/mojang/serialization/Dynamic;Lit/unimi/dsi/fastutil/shorts/ShortList;)Lcom/mojang/serialization/Dynamic; method_39946 method_39946 + p 1 section + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39945 method_39945 + p 1 biomesDynamic + m (III)S method_15675 packChunkSectionPos + p 2 z + p 1 y + p 0 x + m (Lcom/mojang/serialization/Dynamic;Ljava/nio/ByteBuffer;)Lcom/mojang/serialization/Dynamic; method_39947 method_39947 + p 1 biomes + m (Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Lcom/mojang/serialization/Dynamic; method_39948 method_39948 + p 1 tileTicksDynamic + m (I)Lit/unimi/dsi/fastutil/shorts/ShortArrayList; method_39941 method_39941 + p 0 sectionY + m (Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; method_39944 method_39944 + p 1 packedLocalPos + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39952 fixTileTicks + p 0 levelDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39951 fixBiomes + p 0 levelDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39943 fixLevel + p 0 levelDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39954 method_39954 + p 0 chunkDynamic +c net/minecraft/class_2260 net/minecraft/block/BrewingStandBlock + f [Lnet/minecraft/class_2746; field_10700 BOTTLE_PROPERTIES + f Lnet/minecraft/class_265; field_10701 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46289 CODEC +c net/minecraft/class_3592 net/minecraft/datafixer/fix/ColorlessShulkerEntityFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15678 method_15678 + p 0 shulkerDynamic +c net/minecraft/class_2261 net/minecraft/block/PlantBlock + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_9695 canPlantOnTop + p 3 pos + p 1 floor + p 2 world +c net/minecraft/class_3593 net/minecraft/datafixer/mapping/LegacyDyeItemMapping + f Ljava/util/Map; field_15890 MAP +c net/minecraft/class_2262 net/minecraft/command/argument/BlockPosArgumentType + f Ljava/util/Collection; field_10702 EXAMPLES + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_29499 OUT_OF_BOUNDS_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10703 UNLOADED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10704 OUT_OF_WORLD_EXCEPTION + m ()Lnet/minecraft/class_2262; method_9698 blockPos + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2267; method_9699 parse + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_3218;Ljava/lang/String;)Lnet/minecraft/class_2338; method_48298 getLoadedBlockPos + p 1 world + p 0 context + p 2 name + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2338; method_9696 getLoadedBlockPos + p 1 name + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2338; method_48299 getBlockPos + p 1 name + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2338; method_9697 getValidBlockPos + p 0 context + p 1 name +c net/minecraft/class_3598 net/minecraft/datafixer/fix/EntityElderGuardianSplitFix +c net/minecraft/class_2267 net/minecraft/command/argument/PosArgument + m (Lnet/minecraft/class_2168;)Lnet/minecraft/class_2338; method_9704 toAbsoluteBlockPos + p 1 source + m (Lnet/minecraft/class_2168;)Lnet/minecraft/class_241; method_9709 getRotation + p 1 source + m (Lnet/minecraft/class_2168;)Lnet/minecraft/class_243; method_9708 getPos + p 1 source + m ()Z method_9705 isXRelative + m ()Z method_9706 isYRelative + m ()Z method_9707 isZRelative +c net/minecraft/class_3599 net/minecraft/datafixer/fix/EntityEquipmentToArmorAndHandFix + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/TypeRewriteRule; method_15703 fixEquipment +c net/minecraft/class_2268 net/minecraft/command/argument/LocalPosArgument + f D comp_4923 z + f D comp_4922 y + f C field_32941 CARET + f D comp_4921 x + m (Lcom/mojang/brigadier/StringReader;I)D method_9710 readCoordinate + p 0 reader + p 1 startingCursorPos + m ()D comp_4923 z + m ()D comp_4922 y + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2268; method_9711 parse + p 0 reader + m (DDD)V + p 5 z + p 1 x + p 3 y + m ()D comp_4921 x + m (Ljava/lang/Object;)Z equals equals + p 1 o +c net/minecraft/class_2269 net/minecraft/block/ButtonBlock + f Lcom/mojang/serialization/MapCodec; field_46293 CODEC + f Lnet/minecraft/class_8177; field_42753 blockSetType + f Ljava/util/function/Function; field_55743 shapeFunction + f Lnet/minecraft/class_2746; field_10729 POWERED + f I field_40298 pressTicks + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_9713 updateNeighbors + p 1 state + p 2 world + p 3 pos + m (Lnet/minecraft/class_2269;)Ljava/lang/Integer; method_53984 method_53984 + p 0 block + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Z)V method_9714 playClickSound + p 4 powered + p 3 pos + p 2 world + p 1 player + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_9715 tryPowerWithProjectiles + p 1 state + p 2 world + p 3 pos + m (Lnet/minecraft/class_2269;)Lnet/minecraft/class_8177; method_53985 method_53985 + p 0 block + m (Lnet/minecraft/class_8177;ILnet/minecraft/class_4970$class_2251;)V + p 2 pressTicks + p 1 blockSetType + p 3 settings + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53983 method_53983 + p 0 instance + m ()Ljava/util/function/Function; method_66419 createShapeFunction + m (Ljava/util/Map;Lnet/minecraft/class_265;Lnet/minecraft/class_265;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66418 method_66418 + p 3 state + m (Z)Lnet/minecraft/class_3414; method_9712 getClickSound + p 1 powered + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)V method_21845 powerOn + p 4 player + p 3 pos + p 2 world + p 1 state +c net/minecraft/class_3594 net/minecraft/datafixer/fix/EntityArmorStandSilentFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15679 fixSilent + p 1 armorStandDynamic +c net/minecraft/class_2263 net/minecraft/block/FluidDrainable + m ()Ljava/util/Optional; method_32351 getBucketFillSound + c {@return the sound played when filling a bucket with the fluid contained in this block}\n\n@see net.minecraft.fluid.Fluid#getBucketFillSound() + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_1799; method_9700 tryDrainFluid + p 3 pos + p 2 world + p 4 state + p 1 drainer +c net/minecraft/class_3595 net/minecraft/datafixer/fix/EntityBlockStateFix + f Ljava/util/Map; field_15891 BLOCK_NAME_TO_ID + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15684 method_15684 + p 2 state + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Unit;)Ljava/lang/Integer; method_15694 method_15694 + p 1 unit + m (Ljava/lang/String;)I method_15686 getNumericalBlockId + p 0 blockId + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; method_15682 useFunction + p 1 entity + p 2 entityId + p 3 function + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15691 method_15691 + p 4 entity + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Either;)Lcom/mojang/datafixers/util/Either; method_15690 method_15690 + p 1 state + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15680 method_15680 + p 1 arrow + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15685 method_15685 + p 1 enderman + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15692 method_15692 + p 1 projectile + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15696 method_15696 + p 1 minecart + m (Ljava/lang/Integer;)Ljava/lang/Integer; method_15688 method_15688 + p 0 id + m (Ljava/util/HashMap;)V method_15683 method_15683 + p 0 map + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/datafixers/Typed; method_15687 mergeIdAndData + p 2 oldIdKey + p 3 oldDataKey + p 4 newStateKey + p 1 entity + m (Ljava/lang/Integer;)Ljava/lang/Integer; method_15689 method_15689 + p 0 id + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15695 fixFallingBlock + p 1 fallingBlock +c net/minecraft/class_2264 net/minecraft/command/argument/ColumnPosArgumentType + f Ljava/util/Collection; field_10705 EXAMPLES + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_10706 INCOMPLETE_EXCEPTION + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2267; method_9703 parse + m ()Lnet/minecraft/class_2264; method_9701 columnPos + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2265; method_9702 getColumnPos + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder +c net/minecraft/class_3596 net/minecraft/datafixer/fix/EntityCodSalmonFix + f Ljava/util/Map; field_15893 SPAWN_EGGS + f Ljava/util/Map; field_15892 ENTITIES +c net/minecraft/class_2265 net/minecraft/util/math/ColumnPos + f I comp_638 x + f I comp_639 z + m (J)I method_42107 getZ + p 0 packed + m (J)I method_42106 getX + p 0 packed + m ()I comp_638 x + m ()I comp_639 z + m ()J method_34875 pack + m (II)J method_34874 pack + p 0 x + p 1 z + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_1923; method_34873 toChunkPos + m (II)V + p 1 x + p 2 z +c net/minecraft/class_3597 net/minecraft/datafixer/fix/EntityCustomNameToTextFix +c net/minecraft/class_2266 net/minecraft/block/CactusBlock + f Lnet/minecraft/class_265; field_10710 OUTLINE_SHAPE + f I field_56565 TALL_THRESHOLD + f Lnet/minecraft/class_2758; field_10709 AGE + f Lnet/minecraft/class_265; field_10711 COLLISION_SHAPE + f I field_31044 MAX_AGE + f I field_56566 FLOWER_GROWTH_AGE + f D field_56567 FLOWER_CHANCE_WHEN_SHORT + f Lcom/mojang/serialization/MapCodec; field_46294 CODEC + f D field_56568 FLOWER_CHANCE_WHEN_TALL +c net/minecraft/class_9786 net/minecraft/datafixer/fix/JukeboxTicksSinceSongStartedFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60696 fixTicksSinceSongStarted + p 1 dynamic +c net/minecraft/class_9785 net/minecraft/datafixer/fix/AttributeIdFix + f Ljava/util/Map; field_51993 NAME_TO_ID + f Ljava/util/Map; field_51992 UUID_TO_ID + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60690 method_60690 + p 0 remainder + m (Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)V method_60682 method_60682 + p 1 modifierDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60692 method_60692 + p 0 attributesDynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_60679 fixEntity + p 0 entityTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60680 renameOtherFields + p 0 attributeDynamic + m ([I)Ljava/util/UUID; method_60684 getUuidFromIntArray + p 0 uuidArray + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_60687 fixModifiers + p 0 dynamicStream + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60694 method_60694 + p 0 modifiersDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60693 method_60693 + p 0 attributeModifiersDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60681 method_60681 + p 1 modifiersDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60695 method_60695 + p 0 operationDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60686 fixItemStack + p 0 stackDataDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60688 fixAttribute + p 0 attributeDynamic +c net/minecraft/class_489 net/minecraft/client/gui/screen/ingame/AbstractFurnaceScreen + f Lnet/minecraft/class_2960; field_45435 burnProgressTexture + f Lnet/minecraft/class_2960; field_45434 litProgressTexture + f Lnet/minecraft/class_2960; field_18975 background + m (Lnet/minecraft/class_1720;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Ljava/util/List;)V + p 8 recipeBookTabs + p 6 litProgressTexture + p 7 burnProgressTexture + p 4 toggleCraftableButtonText + p 5 background + p 2 playerInventory + p 3 title + p 1 handler +c net/minecraft/class_7124 net/minecraft/block/SculkSpreadable + f Lnet/minecraft/class_7124; field_37602 VEIN_ONLY_SPREADER + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_41468 spreadAtSamePosition + p 4 random + p 2 state + p 3 pos + p 1 world + m ()Z method_41472 shouldConvertToSpreadable + m ()B method_41467 getUpdate + m (Lnet/minecraft/class_7128$class_7129;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Lnet/minecraft/class_7128;Z)I method_41471 spread + p 2 world + p 1 cursor + p 6 shouldConvertToBlock + p 5 spreadManager + p 4 random + p 3 catalystPos + m (I)I method_41473 getDecay + p 1 oldDecay + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_41470 method_41470 + p 3 random + p 1 world + p 2 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Ljava/util/Collection;Z)Z method_41469 spread + p 5 markForPostProcessing + p 3 state + p 4 directions + p 1 world + p 2 pos +c net/minecraft/class_488 net/minecraft/client/gui/screen/ingame/HopperScreen + f Lnet/minecraft/class_2960; field_2919 TEXTURE + m (Lnet/minecraft/class_1722;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 1 handler + p 2 inventory + p 3 title +c net/minecraft/class_487 net/minecraft/client/gui/screen/ingame/EnchantingPhrases + f Lnet/minecraft/class_2583; field_24284 STYLE + f Lnet/minecraft/class_487; field_2917 INSTANCE + f Lnet/minecraft/class_5819; field_2918 random + f [Ljava/lang/String; field_2916 phrases + f Lnet/minecraft/class_11719; field_24283 FONT_ID + m (J)V method_2480 setSeed + p 1 seed + m (Lnet/minecraft/class_327;I)Lnet/minecraft/class_5348; method_2479 generatePhrase + p 2 width + p 1 textRenderer + m ()Lnet/minecraft/class_487; method_2481 getInstance +c net/minecraft/class_9782 net/minecraft/server/ServerLinks + f Lnet/minecraft/class_9782; field_51977 EMPTY + f Lnet/minecraft/class_9139; field_52203 TYPE_CODEC + f Lnet/minecraft/class_9139; field_52204 LIST_CODEC + f Ljava/util/List; comp_2826 entries + m (Lnet/minecraft/class_2561;)Ljava/lang/Boolean; method_60661 method_60661 + p 0 text + m (Lnet/minecraft/class_9782$class_9784;Lnet/minecraft/class_9782$class_9784;)Ljava/lang/Boolean; method_60660 method_60660 + p 1 type + m ()Z method_60657 isEmpty + m ()Ljava/util/List; method_60938 getLinks + m (Lnet/minecraft/class_9782$class_9784;Lnet/minecraft/class_9782$class_9783;)Z method_60659 method_60659 + p 1 entry + m (Lnet/minecraft/class_9782$class_9783;)Lnet/minecraft/class_9782$class_9816; method_60937 method_60937 + p 0 entry + m (Lnet/minecraft/class_9782$class_9784;)Ljava/util/Optional; method_60658 getEntryFor + p 1 known + m ()Ljava/util/List; comp_2826 entries + m (Ljava/util/List;)V + p 1 entries +c net/minecraft/class_9782$class_9816 net/minecraft/server/ServerLinks$StringifiedEntry + f Lnet/minecraft/class_9139; field_52214 CODEC + f Lcom/mojang/datafixers/util/Either; comp_2860 type + f Ljava/lang/String; comp_2861 link + m ()Lcom/mojang/datafixers/util/Either; comp_2860 type + m ()Ljava/lang/String; comp_2861 link + m (Lcom/mojang/datafixers/util/Either;Ljava/lang/String;)V + p 1 type + p 2 link +c net/minecraft/class_9782$class_9783 net/minecraft/server/ServerLinks$Entry + f Lcom/mojang/datafixers/util/Either; comp_2827 type + f Ljava/net/URI; comp_2828 link + m ()Lnet/minecraft/class_2561; method_60662 getText + m (Lnet/minecraft/class_2561;Ljava/net/URI;)Lnet/minecraft/class_9782$class_9783; method_60665 create + p 1 link + p 0 name + m (Lnet/minecraft/class_9782$class_9784;Ljava/net/URI;)Lnet/minecraft/class_9782$class_9783; method_60663 create + p 0 known + p 1 link + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_60664 method_60664 + p 0 text + m ()Lcom/mojang/datafixers/util/Either; comp_2827 type + m ()Ljava/net/URI; comp_2828 link + m (Lcom/mojang/datafixers/util/Either;Ljava/net/URI;)V + p 1 type + p 2 link +c net/minecraft/class_9782$class_9784 net/minecraft/server/ServerLinks$Known + f Lnet/minecraft/class_9139; field_51982 CODEC + f Ljava/util/function/IntFunction; field_51983 FROM_ID + f I field_51984 id + f Ljava/lang/String; field_51985 name + f Lnet/minecraft/class_9782$class_9784; field_51981 BUG_REPORT + f Lnet/minecraft/class_9782$class_9784; field_52212 NEWS + f Lnet/minecraft/class_9782$class_9784; field_52213 ANNOUNCEMENTS + f Lnet/minecraft/class_9782$class_9784; field_52210 WEBSITE + f Lnet/minecraft/class_9782$class_9784; field_52211 FORUMS + f Lnet/minecraft/class_9782$class_9784; field_52205 COMMUNITY_GUIDELINES + f Lnet/minecraft/class_9782$class_9784; field_52208 FEEDBACK + f Lnet/minecraft/class_9782$class_9784; field_52209 COMMUNITY + f Lnet/minecraft/class_9782$class_9784; field_52206 SUPPORT + f Lnet/minecraft/class_9782$class_9784; field_52207 STATUS + m (Lnet/minecraft/class_9782$class_9784;)I method_60667 method_60667 + p 0 known + m (Ljava/net/URI;)Lnet/minecraft/class_9782$class_9783; method_60668 createEntry + p 1 link + m ()Lnet/minecraft/class_2561; method_60666 getText + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m (Lnet/minecraft/class_9782$class_9784;)I method_60670 method_60670 + p 0 known +c net/minecraft/class_481 net/minecraft/client/gui/screen/ingame/CreativeInventoryScreen + f Lnet/minecraft/class_2960; field_45460 SCROLLER_DISABLED_TEXTURE + f F field_2890 scrollPosition + f Lnet/minecraft/class_2561; field_26563 DELETE_ITEM_SLOT_TEXT + f [Lnet/minecraft/class_2960; field_45458 TAB_BOTTOM_SELECTED_TEXTURES + f I field_32337 ROWS_COUNT + f I field_32341 SCROLLBAR_WIDTH + f Lnet/minecraft/class_1735; field_2889 deleteItemSlot + f Lnet/minecraft/class_1277; field_2895 INVENTORY + f [Lnet/minecraft/class_2960; field_45457 TAB_BOTTOM_UNSELECTED_TEXTURES + f Ljava/util/List; field_2886 slots + f Lnet/minecraft/class_1761; field_2896 selectedTab + f I field_32338 COLUMNS_COUNT + f I field_32342 SCROLLBAR_HEIGHT + f Z field_2892 scrolling + f Z field_2888 ignoreTypedCharacter + f Lnet/minecraft/class_478; field_2891 listener + f [Lnet/minecraft/class_2960; field_45461 TAB_TOP_UNSELECTED_TEXTURES + f Lnet/minecraft/class_342; field_2894 searchBox + f Lnet/minecraft/class_485; field_54476 statusEffectsDisplay + f I field_32339 TAB_WIDTH + f Ljava/util/Set; field_16201 searchResultTags + f Z field_2887 lastClickOutsideBounds + f [Lnet/minecraft/class_2960; field_45456 TAB_TOP_SELECTED_TEXTURES + f I field_32340 TAB_HEIGHT + f Lnet/minecraft/class_2960; field_45459 SCROLLER_TEXTURE + f Z field_41112 operatorTabEnabled + m ()Z method_47424 isInventoryTabSelected + m ()V method_2464 search + m (Ljava/util/function/Predicate;Lnet/minecraft/class_6862;)Z method_15873 method_15873 + p 1 tag + m (Lnet/minecraft/class_1761;DD)Z method_2463 isClickInTab + p 2 mouseX + p 1 group + p 4 mouseY + m (Lnet/minecraft/class_746;Lnet/minecraft/class_7699;Z)V + p 1 player + p 2 enabledFeatures + p 3 operatorTabEnabled + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_2960;)Z method_15874 method_15874 + p 2 id + m (DD)Z method_2467 isClickInScrollbar + p 3 mouseY + p 1 mouseX + m ()Z method_2465 hasScrollbar + m (Lnet/minecraft/class_332;IILnet/minecraft/class_1761;)V method_2468 renderTabIcon + p 2 mouseX + p 1 context + p 4 tab + p 3 mouseY + m (Lnet/minecraft/class_1761;)I method_47423 getTabY + p 1 group + m (Lnet/minecraft/class_1124;Lnet/minecraft/class_7699;ZLnet/minecraft/class_7225$class_7874;)Z method_60324 populateDisplay + p 1 searchManager + p 2 enabledFeatures + p 3 showOperatorTab + p 4 registries + m (Lnet/minecraft/class_332;Lnet/minecraft/class_1761;II)Z method_2471 renderTabTooltipIfHovered + p 2 group + p 1 context + p 4 mouseY + p 3 mouseX + m (Lnet/minecraft/class_1735;)Z method_2470 isCreativeInventorySlot + p 1 slot + m (Lnet/minecraft/class_7699;ZLnet/minecraft/class_7225$class_7874;)V method_47420 updateDisplayParameters + p 3 registries + p 2 showOperatorTab + p 1 enabledFeatures + m (Lnet/minecraft/class_1761;)I method_47422 getTabX + p 1 group + m (Lnet/minecraft/class_1761;)V method_2466 setSelectedTab + p 1 group + m (Lnet/minecraft/class_1799;Ljava/util/List;Lnet/minecraft/class_6862;)V method_51455 method_51455 + p 2 tagKey + m (Lnet/minecraft/class_1657;)Z method_47419 shouldShowOperatorTab + p 1 player + m (Ljava/lang/String;Lnet/minecraft/class_2960;)Z method_15875 method_15875 + p 1 id + m (Ljava/lang/String;)V method_15871 searchForTags + p 1 id + m (Lnet/minecraft/class_310;IZZ)V method_2462 onHotbarKeyPress + p 2 restore + p 1 index + p 3 save + p 0 client + m (Ljava/util/Collection;)V method_47421 refreshSelectedTab + p 1 displayStacks +c net/minecraft/class_481$class_484 net/minecraft/client/gui/screen/ingame/CreativeInventoryScreen$CreativeSlot + f Lnet/minecraft/class_1735; field_2898 slot + m (Lnet/minecraft/class_1735;III)V + p 3 x + p 2 invSlot + p 1 slot + p 4 y +c net/minecraft/class_481$class_483 net/minecraft/client/gui/screen/ingame/CreativeInventoryScreen$CreativeScreenHandler + f Lnet/minecraft/class_1703; field_29349 parent + f Lnet/minecraft/class_2371; field_2897 itemList + m ()I method_47428 getOverflowRows + m (F)I method_47425 getRow + p 1 scroll + m (Lnet/minecraft/class_1657;)V + p 1 player + m (F)V method_2473 scrollItems + p 1 position + m (I)F method_47427 getScrollPosition + p 1 row + m ()Z method_2474 shouldShowScrollbar + m (FD)F method_47426 getScrollPosition + p 2 amount + p 1 current +c net/minecraft/class_481$class_482 net/minecraft/client/gui/screen/ingame/CreativeInventoryScreen$LockableSlot +c net/minecraft/class_480 net/minecraft/client/gui/screen/ingame/Generic3x3ContainerScreen + f Lnet/minecraft/class_2960; field_2885 TEXTURE + m (Lnet/minecraft/class_1716;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 3 title + p 2 inventory + p 1 handler +c net/minecraft/class_486 net/minecraft/client/gui/screen/ingame/EnchantmentScreen + f Lnet/minecraft/class_2960; field_45468 ENCHANTMENT_SLOT_TEXTURE + f Lnet/minecraft/class_2960; field_45467 ENCHANTMENT_SLOT_HIGHLIGHTED_TEXTURE + f Lnet/minecraft/class_2960; field_45466 ENCHANTMENT_SLOT_DISABLED_TEXTURE + f Lnet/minecraft/class_1799; field_2913 stack + f Lnet/minecraft/class_5819; field_2911 random + f Lnet/minecraft/class_557; field_2908 BOOK_MODEL + f Lnet/minecraft/class_2960; field_2910 TEXTURE + f Lnet/minecraft/class_2960; field_2901 BOOK_TEXTURE + f F field_2909 approximatePageAngle + f [Lnet/minecraft/class_2960; field_45464 LEVEL_TEXTURES + f F field_2914 pageAngle + f F field_2904 pageTurningSpeed + f F field_2912 nextPageAngle + f [Lnet/minecraft/class_2960; field_45465 LEVEL_DISABLED_TEXTURES + f F field_2905 nextPageTurningSpeed + f F field_2906 pageRotationSpeed + m ()V method_2478 doTick + m (Lnet/minecraft/class_1718;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 1 handler + p 2 inventory + p 3 title + m (Lnet/minecraft/class_332;II)V method_52223 drawBook + p 3 y + p 2 x + p 1 context +c net/minecraft/class_9789 net/minecraft/world/GameModeList + f Lcom/mojang/serialization/Codec; field_52014 CODEC + f Ljava/util/List; comp_2829 gameModes + f Lnet/minecraft/class_9789; field_52012 ALL + f Lnet/minecraft/class_9789; field_52013 SURVIVAL_LIKE + m ([Lnet/minecraft/class_1934;)Lnet/minecraft/class_9789; method_60724 of + p 0 gameModes + m ()Ljava/util/List; comp_2829 gameModes + m (Lnet/minecraft/class_1934;)Z method_60723 contains + p 1 gameMode + m (Ljava/util/List;)V + p 1 gameModes +c net/minecraft/class_485 net/minecraft/client/gui/screen/ingame/StatusEffectsDisplay + f Lnet/minecraft/class_310; field_54478 client + f Lnet/minecraft/class_465; field_54477 parent + f Lnet/minecraft/class_2960; field_63532 BACKGROUND_TEXTURE + f Lnet/minecraft/class_2960; field_63533 AMBIENT_BACKGROUND_TEXTURE + m (Lnet/minecraft/class_332;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_327;IIIIII)V method_75369 drawTexts + p 10 mouseY + p 8 height + p 9 mouseX + p 6 y + p 7 width + p 4 textRenderer + p 5 x + p 2 description + p 3 duration + p 1 context + m (Lnet/minecraft/class_332;Lnet/minecraft/class_327;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;IIZI)I method_18642 drawStatusEffectBackgrounds + p 8 width + p 7 ambient + p 6 y + p 5 x + p 4 duration + p 3 description + p 2 textRenderer + p 1 context + m ()Z method_38934 shouldHideStatusEffectHud + m (Lnet/minecraft/class_1293;)Lnet/minecraft/class_2561; method_38933 getStatusEffectDescription + p 1 statusEffect + m (Lnet/minecraft/class_465;)V + p 1 parent + m (Lnet/minecraft/class_332;II)V method_75368 render + p 2 mouseX + p 1 context + p 3 mouseY + m (Lnet/minecraft/class_332;Ljava/util/Collection;IIIII)V method_2477 drawStatusEffects + p 4 height + p 5 mouseX + p 6 mouseY + p 7 width + p 1 context + p 2 effects + p 3 x +c net/minecraft/class_11280 net/minecraft/client/gl/DynamicUniformStorage + f Ljava/lang/String; field_60092 name + f Ljava/util/List; field_60086 oldBuffers + f Lorg/slf4j/Logger; field_60085 LOGGER + f Lnet/minecraft/class_11285; field_60088 buffer + f Lnet/minecraft/class_11280$class_11281; field_60091 lastWrittenValue + f I field_60087 blockSize + f I field_60089 size + f I field_60090 capacity + m ()V method_71100 clear + m (Ljava/lang/String;II)V + p 1 name + p 2 blockSize + p 3 capacity + m ([Lnet/minecraft/class_11280$class_11281;)[Lcom/mojang/blaze3d/buffers/GpuBufferSlice; method_71103 writeAll + p 1 values + m (I)V method_71101 growBuffer + p 1 capacity + m (Lnet/minecraft/class_11280$class_11281;)Lcom/mojang/blaze3d/buffers/GpuBufferSlice; method_71102 write + p 1 value +c net/minecraft/class_11280$class_11281 net/minecraft/client/gl/DynamicUniformStorage$Uploadable + m (Ljava/nio/ByteBuffer;)V method_71104 write + p 1 buffer +c net/minecraft/class_7128 net/minecraft/block/entity/SculkSpreadManager + f I field_37613 MAX_CURSORS + f I field_37617 maxDistance + f Z field_37614 worldGen + f Lnet/minecraft/class_6862; field_37615 replaceableTag + f I field_37619 decayChance + f I field_37610 MAX_CHARGE + f I field_37616 extraBlockChance + f I field_37618 spreadChance + f Ljava/util/List; field_37620 cursors + f I field_54977 MAX_CURSOR_DISTANCE + m ()I method_41489 getMaxDistance + m (Lnet/minecraft/class_11372;)V method_41486 writeData + p 1 view + m ()Z method_41492 isWorldGen + m (ZLnet/minecraft/class_6862;IIII)V + p 3 extraBlockChance + p 4 maxDistance + p 1 worldGen + p 2 replaceableTag + p 5 spreadChance + p 6 decayChance + m (Lnet/minecraft/class_7128$class_7129;Lnet/minecraft/class_2338;Ljava/lang/Integer;)Ljava/lang/Integer; method_41481 method_41481 + p 2 charge + p 1 posx + m ()Lnet/minecraft/class_7128; method_41478 create + m (Lnet/minecraft/class_11368;)V method_41483 readData + p 1 view + m (Lnet/minecraft/class_2338;I)V method_41482 spread + p 2 charge + p 1 pos + m (Lnet/minecraft/class_7128$class_7129;)Ljava/lang/Integer; method_51355 method_51355 + p 0 cursor + m ()I method_41491 getDecayChance + m (Lnet/minecraft/class_7128$class_7129;)V method_41480 addCursor + p 1 cursor + m ()Lnet/minecraft/class_6862; method_41487 getReplaceableTag + m ()I method_41488 getExtraBlockChance + m ()Ljava/util/List; method_41493 getCursors + m ()V method_41494 clearCursors + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Z)V method_41479 tick + p 2 pos + p 3 random + p 4 shouldConvertToBlock + p 1 world + m ()I method_41490 getSpreadChance + m ()Lnet/minecraft/class_7128; method_41485 createWorldGen +c net/minecraft/class_7128$class_7129 net/minecraft/block/entity/SculkSpreadManager$Cursor + f Lcom/mojang/serialization/Codec; field_37623 CODEC + f Lnet/minecraft/class_2338; field_37625 pos + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; field_37624 OFFSETS + f I field_37628 decay + f I field_37626 charge + f Ljava/util/Set; field_37629 faces + f Lcom/mojang/serialization/Codec; field_37630 DIRECTION_SET_CODEC + f I field_37627 update + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Z method_41496 canSpread + p 2 targetPos + p 0 world + p 1 sourcePos + m (Lnet/minecraft/class_2338;)Z method_65074 isTooFarFrom + p 1 pos + m ()Lnet/minecraft/class_2338; method_41495 getPos + m (Lnet/minecraft/class_2338;)Z method_41504 method_41504 + p 0 pos + m (Lnet/minecraft/class_7128$class_7129;)Ljava/util/Optional; method_41509 method_41509 + p 0 cursor + m (Lnet/minecraft/class_2338;IIILjava/util/Optional;)V + p 5 faces + p 2 charge + p 1 pos + p 4 update + p 3 decay + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Z)Z method_41500 canSpread + p 3 worldGen + p 2 pos + p 1 world + m (Lnet/minecraft/class_7128$class_7129;)Ljava/lang/Integer; method_41511 method_41511 + p 0 cursor + m (Ljava/util/List;)Ljava/util/Set; method_41506 method_41506 + p 0 directions + m ()I method_41508 getCharge + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_7124; method_41503 getSpreadable + p 0 state + m ()I method_41510 getDecay + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_41497 canSpread + p 1 pos + p 2 direction + p 0 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Lnet/minecraft/class_2338; method_41498 getSpreadPos + p 0 world + p 1 pos + p 2 random + m (Lnet/minecraft/class_5819;)Ljava/util/List; method_41507 shuffleOffsets + p 0 random + m ()Ljava/util/Set; method_41512 getFaces + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Lnet/minecraft/class_7128;Z)V method_41499 spread + p 1 world + p 3 random + p 2 pos + p 5 shouldConvertToBlock + p 4 spreadManager + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41502 method_41502 + p 0 instance + m (Lit/unimi/dsi/fastutil/objects/ObjectArrayList;)V method_41505 method_41505 + p 0 list + m (Lnet/minecraft/class_7128$class_7129;)V method_41501 merge + p 1 cursor + m (Lnet/minecraft/class_2338;I)V + p 2 charge + p 1 pos +c net/minecraft/class_7125 net/minecraft/block/SculkBlock + f Lcom/mojang/serialization/MapCodec; field_46433 CODEC + m (Lnet/minecraft/class_7128;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;I)I method_41476 getDecay + p 3 charge + p 2 catalystPos + p 1 cursorPos + p 0 spreadManager + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_41474 shouldNotDecay + p 1 pos + p 0 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Z)Lnet/minecraft/class_2680; method_41475 getExtraBlockState + p 3 random + p 4 allowShrieker + p 1 world + p 2 pos +c net/minecraft/class_9787 net/minecraft/world/dimension/PortalManager + f I field_52000 ticksInPortal + f Lnet/minecraft/class_2338; field_51999 pos + f Z field_52001 inPortal + f Lnet/minecraft/class_9797; field_51998 portal + m ()Lnet/minecraft/class_2338; method_60707 getPortalPos + m ()V method_60710 decayTicksInPortal + m ()Z method_60706 hasExpired + m (Lnet/minecraft/class_9797;)Z method_60703 portalMatches + p 1 portal + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)Lnet/minecraft/class_5454; method_60701 createTeleportTarget + p 2 entity + p 1 world + m ()Z method_60709 isInPortal + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Z)Z method_60702 tick + p 1 world + p 3 canUsePortals + p 2 entity + m (Z)V method_60705 setInPortal + p 1 inPortal + m (Lnet/minecraft/class_2338;)V method_60704 setPortalPos + p 1 pos + m ()Lnet/minecraft/class_9797$class_9798; method_60700 getEffect + m ()I method_60708 getTicksInPortal + m (Lnet/minecraft/class_9797;Lnet/minecraft/class_2338;)V + p 1 portal + p 2 pos +c net/minecraft/class_7126 net/minecraft/block/SculkCatalystBlock + f Lnet/minecraft/class_6017; field_37605 experience + f Lnet/minecraft/class_2746; field_37604 BLOOM + f Lcom/mojang/serialization/MapCodec; field_46434 CODEC +c net/minecraft/class_11284 net/minecraft/client/gl/GlobalSettings + f I field_60108 SIZE + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_60109 buffer + m (IIDJLnet/minecraft/class_9779;ILnet/minecraft/class_4184;Z)V method_71116 set + p 2 height + p 1 width + p 3 glintStrength + p 5 time + p 8 menuBackgroundBlurriness + p 7 tickCounter + p 9 camera +c net/minecraft/class_11282 net/minecraft/client/gl/DynamicUniforms + f Lnet/minecraft/class_11280; field_64217 chunkSectionsStorage + f Lnet/minecraft/class_11280; field_60095 transformsStorage + f I field_60093 TRANSFORMS_SIZE + f I field_64216 CHUNK_SECTIONS_SIZE + f I field_60094 DEFAULT_CAPACITY + m (Lorg/joml/Matrix4fc;Lorg/joml/Vector4fc;Lorg/joml/Vector3fc;Lorg/joml/Matrix4fc;)Lcom/mojang/blaze3d/buffers/GpuBufferSlice; method_71106 write + p 1 modelView + p 2 colorModulator + p 3 modelOffset + p 4 textureMatrix + m ([Lnet/minecraft/class_11282$class_11283;)[Lcom/mojang/blaze3d/buffers/GpuBufferSlice; method_71107 writeTransforms + p 1 values + m ()V method_71105 clear + m ([Lnet/minecraft/class_11282$class_12294;)[Lcom/mojang/blaze3d/buffers/GpuBufferSlice; method_76294 writeChunkSections + p 1 values +c net/minecraft/class_11282$class_11283 net/minecraft/client/gl/DynamicUniforms$TransformsValue + f Lorg/joml/Vector3fc; comp_4161 modelOffset + f Lorg/joml/Vector4fc; comp_4160 colorModulator + f Lorg/joml/Matrix4fc; comp_4162 textureMatrix + f Lorg/joml/Matrix4fc; comp_4159 modelView + m ()Lorg/joml/Vector4fc; comp_4160 colorModulator + m ()Lorg/joml/Matrix4fc; comp_4162 textureMatrix + m ()Lorg/joml/Vector3fc; comp_4161 modelOffset + m ()Lorg/joml/Matrix4fc; comp_4159 modelView + m (Lorg/joml/Matrix4fc;Lorg/joml/Vector4fc;Lorg/joml/Vector3fc;Lorg/joml/Matrix4fc;)V + p 1 modelView + p 2 colorModulator + p 3 modelOffset + p 4 textureMatrix +c net/minecraft/class_11282$class_12294 net/minecraft/client/gl/DynamicUniforms$ChunkSectionsValue + f Lorg/joml/Matrix4fc; comp_5182 modelView + f I comp_5184 y + f I comp_5185 z + f F comp_5186 visibility + f I comp_5187 textureAtlasWidth + f I comp_5188 textureAtlasHeight + f I comp_5183 x + m ()Lorg/joml/Matrix4fc; comp_5182 modelView + m ()I comp_5183 x + m ()I comp_5184 y + m ()I comp_5185 z + m ()F comp_5186 visibility + m ()I comp_5187 textureAtlasWidth + m ()I comp_5188 textureAtlasHeight + m (Lorg/joml/Matrix4fc;IIIFII)V + p 1 modelView + p 2 x + p 3 y + p 4 z + p 5 visibility + p 6 textureAtlasWidth + p 7 textureAtlasHeight +c net/minecraft/class_11287 net/minecraft/client/gl/UniformValue + f Lcom/mojang/serialization/Codec; field_60130 CODEC + m ()Lnet/minecraft/class_11287$class_11292; method_71130 getType + m (Lnet/minecraft/class_11287$class_11292;)Lcom/mojang/serialization/MapCodec; method_71133 method_71133 + p 0 val + m (Lcom/mojang/blaze3d/buffers/Std140SizeCalculator;)V method_71132 addSize + p 1 calculator + m (Lcom/mojang/blaze3d/buffers/Std140Builder;)V method_71131 write + p 1 builder +c net/minecraft/class_11287$class_11288 net/minecraft/client/gl/UniformValue$FloatValue + f Lcom/mojang/serialization/Codec; field_60131 CODEC + f F comp_4168 value + m ()F comp_4168 value + m (F)V + p 1 value +c net/minecraft/class_11287$class_11289 net/minecraft/client/gl/UniformValue$Vec3iValue + f Lcom/mojang/serialization/Codec; field_60132 CODEC + f Lorg/joml/Vector3ic; comp_4169 value + m ()Lorg/joml/Vector3ic; comp_4169 value + m (Lorg/joml/Vector3ic;)V + p 1 value +c net/minecraft/class_11287$class_11294 net/minecraft/client/gl/UniformValue$Vec3fValue + f Lcom/mojang/serialization/Codec; field_60147 CODEC + f Lorg/joml/Vector3fc; comp_4173 value + m ()Lorg/joml/Vector3fc; comp_4173 value + m (Lorg/joml/Vector3fc;)V + p 1 value +c net/minecraft/class_11287$class_11295 net/minecraft/client/gl/UniformValue$Vec4fValue + f Lcom/mojang/serialization/Codec; field_60148 CODEC + f Lorg/joml/Vector4fc; comp_4174 value + m ()Lorg/joml/Vector4fc; comp_4174 value + m (Lorg/joml/Vector4fc;)V + p 1 value +c net/minecraft/class_11287$class_11290 net/minecraft/client/gl/UniformValue$IntValue + f Lcom/mojang/serialization/Codec; field_60133 CODEC + f I comp_4170 value + m ()I comp_4170 value + m (I)V + p 1 value +c net/minecraft/class_11287$class_11291 net/minecraft/client/gl/UniformValue$Matrix4fValue + f Lcom/mojang/serialization/Codec; field_60134 CODEC + f Lorg/joml/Matrix4fc; comp_4171 value + m ()Lorg/joml/Matrix4fc; comp_4171 value + m (Lorg/joml/Matrix4fc;)V + p 1 value +c net/minecraft/class_11287$class_11292 net/minecraft/client/gl/UniformValue$Type + f Lcom/mojang/serialization/MapCodec; field_60144 mapCodec + f Lnet/minecraft/class_3542$class_7292; field_60142 CODEC + f Ljava/lang/String; field_60143 name + f Lnet/minecraft/class_11287$class_11292; field_60135 INT + f Lnet/minecraft/class_11287$class_11292; field_60138 VEC2 + f Lnet/minecraft/class_11287$class_11292; field_60139 VEC3 + f Lnet/minecraft/class_11287$class_11292; field_60136 IVEC3 + f Lnet/minecraft/class_11287$class_11292; field_60137 FLOAT + f Lnet/minecraft/class_11287$class_11292; field_60140 VEC4 + f Lnet/minecraft/class_11287$class_11292; field_60141 MATRIX4X4 + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/serialization/Codec;)V + p 4 codec + p 3 name +c net/minecraft/class_11287$class_11293 net/minecraft/client/gl/UniformValue$Vec2fValue + f Lcom/mojang/serialization/Codec; field_60146 CODEC + f Lorg/joml/Vector2fc; comp_4172 value + m ()Lorg/joml/Vector2fc; comp_4172 value + m (Lorg/joml/Vector2fc;)V + p 1 value +c net/minecraft/class_11285 net/minecraft/client/gl/MappableRingBuffer + f [Lcom/mojang/blaze3d/buffers/GpuFence; field_60115 fences + f [Lcom/mojang/blaze3d/buffers/GpuBuffer; field_60114 buffers + f I field_60116 current + f I field_60320 size + f I field_60113 BUFFER_COUNT + m ()V method_71121 rotate + m ()Lcom/mojang/blaze3d/buffers/GpuBuffer; method_71119 getBlocking + m ()I method_71312 size + m (Ljava/util/function/Supplier;II)V + p 2 usage + p 3 size + p 1 nameSupplier +c net/minecraft/class_11286 net/minecraft/client/render/RawProjectionMatrix + f Lcom/mojang/blaze3d/buffers/GpuBufferSlice; field_60118 slice + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_60117 buffer + m (Lorg/joml/Matrix4f;)Lcom/mojang/blaze3d/buffers/GpuBufferSlice; method_71123 set + p 1 projectionMatrix + m (Ljava/lang/String;)V + p 1 name +c net/minecraft/class_7134 net/minecraft/world/dimension/DimensionTypes + f Lnet/minecraft/class_5321; field_37668 THE_END + f Lnet/minecraft/class_5321; field_37669 OVERWORLD_CAVES + f Lnet/minecraft/class_5321; field_37667 THE_NETHER + f Lnet/minecraft/class_5321; field_37666 OVERWORLD + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_41524 of + p 0 id +c net/minecraft/class_9797 net/minecraft/block/Portal + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;)Lnet/minecraft/class_5454; method_60770 createTeleportTarget + p 1 world + p 2 entity + p 3 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)I method_60772 getPortalDelay + p 2 entity + p 1 world + m ()Lnet/minecraft/class_9797$class_9798; method_60778 getPortalEffect +c net/minecraft/class_9797$class_9798 net/minecraft/block/Portal$Effect + f Lnet/minecraft/class_9797$class_9798; field_52062 NONE + f Lnet/minecraft/class_9797$class_9798; field_52061 CONFUSION +c net/minecraft/class_9796 net/minecraft/block/jukebox/JukeboxSongs + f Lnet/minecraft/class_5321; field_52051 FIVE + f Lnet/minecraft/class_5321; field_52047 ELEVEN + f Lnet/minecraft/class_5321; field_52037 THIRTEEN + f Lnet/minecraft/class_5321; field_52039 BLOCKS + f Lnet/minecraft/class_5321; field_52038 CAT + f Lnet/minecraft/class_5321; field_52040 CHIRP + f Lnet/minecraft/class_5321; field_52042 MALL + f Lnet/minecraft/class_5321; field_52041 FAR + f Lnet/minecraft/class_5321; field_52045 STRAD + f Lnet/minecraft/class_5321; field_52044 STAL + f Lnet/minecraft/class_5321; field_52043 MELLOHI + f Lnet/minecraft/class_5321; field_52046 WARD + f Lnet/minecraft/class_5321; field_52049 PIGSTEP + f Lnet/minecraft/class_5321; field_52048 WAIT + f Lnet/minecraft/class_5321; field_52052 RELIC + f Lnet/minecraft/class_5321; field_52055 CREATOR_MUSIC_BOX + f Lnet/minecraft/class_5321; field_52054 CREATOR + f Lnet/minecraft/class_5321; field_52053 PRECIPICE + f Lnet/minecraft/class_5321; field_52050 OTHERSIDE + f Lnet/minecraft/class_5321; field_60668 TEARS + f Lnet/minecraft/class_5321; field_61067 LAVA_CHICKEN + m (Lnet/minecraft/class_7891;)V method_60765 bootstrap + p 0 registry + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_6880$class_6883;II)V method_60766 register + p 1 key + p 2 soundEvent + p 3 lengthInSeconds + p 4 comparatorOutput + p 0 registry + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_60764 of + p 0 id +c net/minecraft/class_7132 net/minecraft/block/entity/SculkCatalystBlockEntity + f Lnet/minecraft/class_7132$class_8510; field_44610 eventListener + m ()Lnet/minecraft/class_7132$class_8510; method_51357 getEventListener + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_7132;)V method_41517 tick + p 3 blockEntity + p 2 state + p 1 pos + p 0 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state +c net/minecraft/class_7132$class_8510 net/minecraft/block/entity/SculkCatalystBlockEntity$Listener + f Lnet/minecraft/class_7128; field_44612 spreadManager + f Lnet/minecraft/class_2680; field_44613 state + f Lnet/minecraft/class_5716; field_44614 positionSource + f I field_44611 RANGE + m ()Lnet/minecraft/class_7128; method_51362 getSpreadManager + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_5716;)V + p 1 state + p 2 positionSource + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;)V method_51359 method_51359 + p 2 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_5819;)V method_51360 bloom + p 1 world + p 2 pos + p 3 state + p 4 random + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;)V method_51361 triggerCriteria + p 1 world + p 2 deadEntity +c net/minecraft/class_498 net/minecraft/client/gui/screen/ingame/SignEditScreen + f Lorg/joml/Vector3f; field_40438 TEXT_SCALE + f Lnet/minecraft/class_3879$class_9948; field_21525 model + f F field_40436 BACKGROUND_SCALE + f F field_40437 TEXT_SCALE_MULTIPLIER + m (Lnet/minecraft/class_2625;ZZ)V + p 1 sign + p 2 filtered +c net/minecraft/class_9794 net/minecraft/block/jukebox/JukeboxManager + f Lnet/minecraft/class_9794$class_9795; field_52036 changeNotifier + f Lnet/minecraft/class_6880; field_52034 song + f I field_52032 TICKS_PER_SECOND + f J field_52033 ticksSinceSongStarted + f Lnet/minecraft/class_2338; field_52035 pos + m (Lnet/minecraft/class_6880;J)V method_60758 setValues + p 2 ticksPlaying + p 1 song + m ()Z method_60754 isPlaying + m ()J method_60761 getTicksSinceSongStarted + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)V method_60756 spawnNoteParticles + p 1 pos + p 0 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2680;)V method_60755 stopPlaying + p 1 world + p 2 state + m ()Lnet/minecraft/class_9793; method_60759 getSong + m (Lnet/minecraft/class_9794$class_9795;Lnet/minecraft/class_2338;)V + p 2 pos + p 1 changeNotifier + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_6880;)V method_60757 startPlaying + p 2 song + p 1 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2680;)V method_60760 tick + p 1 world + p 2 state + m ()Z method_60763 hasSecondPassed +c net/minecraft/class_9794$class_9795 net/minecraft/block/jukebox/JukeboxManager$ChangeNotifier +c net/minecraft/class_7133 net/minecraft/block/entity/SculkShriekerBlockEntity + f Lnet/minecraft/class_8514$class_8515; field_44620 vibrationListenerData + f Lnet/minecraft/class_8514$class_8516; field_38239 vibrationListener + f I field_38757 warningLevel + f I field_38756 SHRIEK_DELAY + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_38755 WARNING_SOUNDS + f I field_57785 DEFAULT_WARNING_LEVEL + f I field_38751 WARDEN_SPAWN_TRIES + f I field_38754 DARKNESS_RANGE + f I field_38753 WARDEN_SPAWN_VERTICAL_RANGE + f I field_38752 WARDEN_SPAWN_HORIZONTAL_RANGE + f Lnet/minecraft/class_8514$class_5719; field_44619 vibrationCallback + m (Lnet/minecraft/class_3218;)Z method_43148 trySpawnWarden + p 1 world + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_3222; method_44018 findResponsiblePlayerFromEntity + p 0 entity + m (Lnet/minecraft/class_3218;)V method_43147 warn + p 1 world + m (Lnet/minecraft/class_1937;)V method_43151 playWarningSound + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_3222;)V method_43141 shriek + p 2 player + p 1 world + m (Lnet/minecraft/class_3218;)Z method_43150 canWarn + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)V method_44017 shriek + p 2 entity + p 1 world + m ()Lnet/minecraft/class_8514$class_8516; method_42325 getEventListener + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_43146 method_43146 + p 0 warningSounds + m (I)V method_44016 method_44016 + p 1 warningLevel + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_3222;)Z method_43142 trySyncWarningLevel + p 2 player + p 1 world +c net/minecraft/class_7133$class_8511 net/minecraft/block/entity/SculkShriekerBlockEntity$VibrationCallback + f Lnet/minecraft/class_5716; field_44623 positionSource + f I field_44622 RANGE +c net/minecraft/class_9793 net/minecraft/block/jukebox/JukeboxSong + f Lnet/minecraft/class_9139; field_52030 ENTRY_PACKET_CODEC + f I field_52031 TICKS_PER_SECOND + f Lnet/minecraft/class_9139; field_52028 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_52027 CODEC + f Lcom/mojang/serialization/Codec; field_52029 ENTRY_CODEC + f Lnet/minecraft/class_6880; comp_2835 soundEvent + f Lnet/minecraft/class_2561; comp_2836 description + f F comp_2837 lengthInSeconds + f I comp_2838 comparatorOutput + m (J)Z method_60751 shouldStopPlaying + p 1 ticksSinceSongStarted + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60752 method_60752 + p 0 instance + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_1799;)Ljava/util/Optional; method_60753 getSongEntryFromStack + p 1 stack + p 0 registries + m ()I method_60750 getLengthInTicks + m ()Lnet/minecraft/class_2561; comp_2836 description + m ()Lnet/minecraft/class_6880; comp_2835 soundEvent + m ()F comp_2837 lengthInSeconds + m ()I comp_2838 comparatorOutput + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2561;FI)V + p 1 soundEvent + p 2 description + p 3 lengthInSeconds + p 4 comparatorOutput +c net/minecraft/class_7130 net/minecraft/block/SculkVeinBlock + f Lnet/minecraft/class_7118; field_37633 samePositionOnlyGrower + f Lnet/minecraft/class_7118; field_37632 allGrowTypeGrower + f Lcom/mojang/serialization/MapCodec; field_46437 CODEC + m ()Lnet/minecraft/class_7118; method_41516 getSamePositionOnlyGrower + m (Lnet/minecraft/class_7128;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_41515 convertToBlock + p 4 random + p 1 spreadManager + p 2 world + p 3 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)Z method_41513 veinCoversSculkReplaceable + p 1 state + p 2 pos + p 0 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Ljava/util/Collection;)Z method_41514 place + p 3 directions + p 2 state + p 1 pos + p 0 world +c net/minecraft/class_7130$class_7131 net/minecraft/block/SculkVeinBlock$SculkVeinGrowChecker + f [Lnet/minecraft/class_7118$class_7123; field_37635 growTypes + m (Lnet/minecraft/class_7130;[Lnet/minecraft/class_7118$class_7123;)V + p 1 block + p 2 growTypes +c net/minecraft/class_9792 net/minecraft/component/type/JukeboxPlayableComponent + f Lnet/minecraft/class_9139; field_52026 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_52025 CODEC + f Lnet/minecraft/class_9791; comp_2833 song + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1269; method_60747 tryPlayStack + p 0 world + p 3 player + p 1 pos + p 2 stack + m (Ljava/util/function/Consumer;Lnet/minecraft/class_6880;)V method_60748 method_60748 + p 1 entry + m ()Lnet/minecraft/class_9791; comp_2833 song + m (Lnet/minecraft/class_9791;)V + p 1 song +c net/minecraft/class_9791 net/minecraft/registry/entry/LazyRegistryEntryReference + f Lcom/mojang/datafixers/util/Either; comp_3636 contents + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_6880; method_67386 method_67386 + p 0 entry + m (Lnet/minecraft/class_5321;)V + p 1 key + m (Lnet/minecraft/class_6880;)V + p 1 entry + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_60737 createPacketCodec + p 0 registryRef + p 1 entryPacketCodec + m (Lnet/minecraft/class_7225$class_7874;)Ljava/util/Optional; method_60739 resolveEntry + p 1 registries + m (Lnet/minecraft/class_2378;)Ljava/util/Optional; method_60740 resolveValue + p 1 registry + m (Lnet/minecraft/class_6880;)Ljava/util/Optional; method_67387 method_67387 + p 0 entry + m ()Ljava/util/Optional; method_67385 getKey + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_60736 createCodec + p 1 entryCodec + p 0 registryRef + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_5321;)Ljava/util/Optional; method_67388 method_67388 + p 1 key + m ()Lcom/mojang/datafixers/util/Either; comp_3636 contents + m (Lcom/mojang/datafixers/util/Either;)V + p 1 contents +c net/minecraft/class_9790 net/minecraft/predicate/item/JukeboxPlayablePredicate + f Lcom/mojang/serialization/Codec; field_52020 CODEC + f Ljava/util/Optional; comp_2830 song + m ()Lnet/minecraft/class_9790; method_60732 empty + m (Lnet/minecraft/class_9792;)Z method_60731 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60730 method_60730 + p 0 instance + m ()Ljava/util/Optional; comp_2830 song + m (Ljava/util/Optional;)V + p 1 song +c net/minecraft/class_492 net/minecraft/client/gui/screen/ingame/MerchantScreen + f Lnet/minecraft/class_2960; field_45491 EXPERIENCE_BAR_BACKGROUND_TEXTURE + f Lnet/minecraft/class_2960; field_45485 SCROLLER_TEXTURE + f I field_19163 indexStartOffset + f I field_19161 selectedIndex + f I field_32354 TEXTURE_WIDTH + f Lnet/minecraft/class_2960; field_45489 DISCOUNT_STRIKETHROUGH_TEXTURE + f Lnet/minecraft/class_2960; field_45487 TRADE_ARROW_OUT_OF_STOCK_TEXTURE + f I field_32358 TRADE_LIST_AREA_Y_OFFSET + f I field_32368 SCROLLBAR_WIDTH + f I field_32366 TRADE_OFFER_BUTTON_WIDTH + f Z field_19164 scrolling + f I field_32360 SECOND_BUY_ITEM_X_OFFSET + f I field_32370 SCROLLBAR_OFFSET_Y + f Lnet/minecraft/class_2561; field_26569 TRADES_TEXT + f Lnet/minecraft/class_2960; field_45492 EXPERIENCE_BAR_CURRENT_TEXTURE + f Lnet/minecraft/class_2561; field_26571 DEPRECATED_TEXT + f Lnet/minecraft/class_2960; field_45490 OUT_OF_STOCK_TEXTURE + f I field_32359 FIRST_BUY_ITEM_X_OFFSET + f Lnet/minecraft/class_2960; field_45486 SCROLLER_DISABLED_TEXTURE + f Lnet/minecraft/class_2960; field_45484 EXPERIENCE_BAR_RESULT_TEXTURE + f [Lnet/minecraft/class_492$class_493; field_19162 offers + f I field_32365 TRADE_OFFER_BUTTON_HEIGHT + f I field_32363 MAX_TRADE_OFFERS + f Lnet/minecraft/class_2960; field_45488 TRADE_ARROW_TEXTURE + f I field_32369 SCROLLBAR_AREA_HEIGHT + f I field_32357 EXPERIENCE_BAR_X_OFFSET + f I field_32367 SCROLLBAR_HEIGHT + f I field_32355 TEXTURE_HEIGHT + f Lnet/minecraft/class_2960; field_2950 TEXTURE + f I field_32361 SOLD_ITEM_X_OFFSET + f I field_32371 SCROLLBAR_OFFSET_X + m (Lnet/minecraft/class_1728;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 1 handler + p 2 inventory + p 3 title + m (Lnet/minecraft/class_332;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;II)V method_20222 renderFirstBuyItem + p 1 context + p 4 x + p 5 y + p 2 adjustedFirstBuyItem + p 3 originalFirstBuyItem + m (Lnet/minecraft/class_332;IILnet/minecraft/class_1914;)V method_19413 drawLevelInfo + p 1 context + p 2 x + p 3 y + p 4 tradeOffer + m ()V method_2496 syncRecipeIndex + m (Lnet/minecraft/class_4185;)V method_19896 method_19896 + p 1 button + m (Lnet/minecraft/class_332;Lnet/minecraft/class_1914;II)V method_20223 renderArrow + p 4 y + p 3 x + p 2 tradeOffer + p 1 context + m (Lnet/minecraft/class_332;IIIILnet/minecraft/class_1916;)V method_20221 renderScrollbar + p 4 mouseX + p 5 mouseY + p 2 x + p 3 y + p 6 tradeOffers + p 1 context + m (I)Z method_20220 canScroll + p 1 listSize +c net/minecraft/class_492$class_493 net/minecraft/client/gui/screen/ingame/MerchantScreen$WidgetButtonPage + f I field_19165 index + m (Lnet/minecraft/class_492;IIILnet/minecraft/class_4185$class_4241;)V + p 2 x + p 3 y + p 4 index + p 5 onPress + m (Lnet/minecraft/class_332;II)V method_25352 renderTooltip + p 1 context + p 2 x + p 3 y + m ()I method_20228 getIndex +c net/minecraft/class_491 net/minecraft/client/gui/screen/ingame/HorseScreen + f Lnet/minecraft/class_2960; field_55106 SLOT_TEXTURE + f Lnet/minecraft/class_2960; field_45473 CHEST_SLOTS_TEXTURE + f Lnet/minecraft/class_2960; field_2937 TEXTURE + m (Lnet/minecraft/class_1724;Lnet/minecraft/class_1661;Lnet/minecraft/class_1496;I)V + p 1 handler + p 2 inventory + p 3 entity + p 4 slotColumnCount +c net/minecraft/class_490 net/minecraft/client/gui/screen/ingame/InventoryScreen + f F field_2935 mouseX + f Z field_2930 mouseDown + f Lnet/minecraft/class_485; field_54479 statusEffectsDisplay + f F field_2934 mouseY + m (Lnet/minecraft/class_1657;)V + p 1 player + m (Lnet/minecraft/class_332;IIIIIFFFLnet/minecraft/class_1309;)V method_2486 drawEntity + p 6 scale + p 7 mouseX + p 8 mouseY + p 9 entity + p 2 y1 + p 3 x2 + p 4 y2 + p 5 size + p 0 context + p 1 x1 + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_10017; method_48472 drawEntity + p 0 entity +c net/minecraft/class_7138 net/minecraft/world/gen/noise/NoiseConfig + f Lnet/minecraft/class_7871; field_38256 noiseParametersRegistry + f Ljava/util/Map; field_38262 noises + f Lnet/minecraft/class_6724; field_38259 surfaceBuilder + f Lnet/minecraft/class_6953; field_38257 noiseRouter + f Ljava/util/Map; field_38263 randomDerivers + f Lnet/minecraft/class_6574; field_38254 randomDeriver + f Lnet/minecraft/class_6544$class_6552; field_38258 multiNoiseSampler + f Lnet/minecraft/class_6574; field_38260 aquiferRandomDeriver + f Lnet/minecraft/class_6574; field_38261 oreRandomDeriver + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)Lnet/minecraft/class_6574; method_41561 method_41561 + p 2 id2 + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_6574; method_41560 getOrCreateRandomDeriver + p 1 id + m (Lnet/minecraft/class_5284;Lnet/minecraft/class_7871;J)Lnet/minecraft/class_7138; method_41556 create + p 2 legacyWorldSeed + p 0 chunkGeneratorSettings + p 1 noiseParametersLookup + m (Lnet/minecraft/class_7871$class_7872;Lnet/minecraft/class_5321;J)Lnet/minecraft/class_7138; method_41557 create + p 2 legacyWorldSeed + p 1 chunkGeneratorSettingsKey + p 0 registryLookup + m ()Lnet/minecraft/class_6544$class_6552; method_42371 getMultiNoiseSampler + m ()Lnet/minecraft/class_6724; method_42372 getSurfaceBuilder + m (Lnet/minecraft/class_5284;Lnet/minecraft/class_7871;J)V + p 1 chunkGeneratorSettings + p 2 noiseParametersLookup + p 3 seed + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_5216; method_41558 getOrCreateSampler + p 1 noiseParametersKey + m ()Lnet/minecraft/class_6953; method_42370 getNoiseRouter + m ()Lnet/minecraft/class_6574; method_42374 getOreRandomDeriver + m ()Lnet/minecraft/class_6574; method_42373 getAquiferRandomDeriver + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;)Lnet/minecraft/class_5216; method_41559 method_41559 + p 2 key +c net/minecraft/class_7138$1 net/minecraft/world/gen/noise/NoiseConfig$1 + f Ljava/util/Map; field_40362 unwrapped + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_45512 unwrap + p 1 densityFunction +c net/minecraft/class_7138$class_7271 net/minecraft/world/gen/noise/NoiseConfig$LegacyNoiseDensityFunctionVisitor + f Ljava/util/Map; field_38267 cache + m (J)Lnet/minecraft/class_5819; method_42375 createRandom + p 1 seed + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_42376 applyNotCached + p 1 densityFunction +c net/minecraft/class_497 net/minecraft/client/gui/screen/ingame/StructureBlockScreen + f Lnet/minecraft/class_2561; field_26576 CUSTOM_DATA_TEXT + f Lnet/minecraft/class_342; field_2992 inputSeed + f Lnet/minecraft/class_5676; field_2979 mirrorButton + f Lnet/minecraft/class_2561; field_26572 STRUCTURE_NAME_TEXT + f Lnet/minecraft/class_2561; field_26580 SHOW_BOUNDING_BOX_TEXT + f Lnet/minecraft/class_2633; field_2980 structureBlock + f Lnet/minecraft/class_4185; field_3007 buttonRotate180 + f Z field_2983 showBoundingBox + f Lnet/minecraft/class_5676; field_2990 ignoreEntitiesButton + f Lnet/minecraft/class_2561; field_26577 INCLUDE_ENTITIES_TEXT + f Lnet/minecraft/class_2561; field_26573 POSITION_TEXT + f Lnet/minecraft/class_5676; field_3001 showBoundingBoxButton + f Lnet/minecraft/class_4185; field_2981 buttonRotate90 + f Lnet/minecraft/class_4185; field_2993 buttonRotate270 + f Lnet/minecraft/class_342; field_3010 inputPosZ + f Ljava/text/DecimalFormat; field_2991 decimalFormat + f Lnet/minecraft/class_2415; field_2996 mirror + f Lnet/minecraft/class_2776; field_3004 mode + f Z field_55861 strict + f Lnet/minecraft/class_342; field_2988 inputSizeX + f Lnet/minecraft/class_2470; field_3003 rotation + f Lnet/minecraft/class_2561; field_26578 DETECT_SIZE_TEXT + f Lnet/minecraft/class_342; field_2982 inputPosX + f Lnet/minecraft/class_5676; field_3008 showAirButton + f Lnet/minecraft/class_2561; field_26574 SIZE_TEXT + f Lcom/google/common/collect/ImmutableList; field_27993 MODES + f Lnet/minecraft/class_5676; field_55862 strictButton + f Lnet/minecraft/class_342; field_3005 inputName + f Lnet/minecraft/class_2561; field_55863 STRICT_TEXT + f Z field_2985 ignoreEntities + f Z field_2997 showAir + f Lnet/minecraft/class_4185; field_3009 buttonDetect + f Lnet/minecraft/class_342; field_2999 inputPosY + f Lnet/minecraft/class_2561; field_26579 SHOW_AIR_TEXT + f Lnet/minecraft/class_4185; field_2987 buttonSave + f Lnet/minecraft/class_2561; field_26575 INTEGRITY_TEXT + f Lcom/google/common/collect/ImmutableList; field_27994 MODES_EXCEPT_DATA + f Lnet/minecraft/class_342; field_3000 inputIntegrity + f Lnet/minecraft/class_4185; field_2995 buttonRotate0 + f Lnet/minecraft/class_4185; field_3006 buttonLoad + f Lnet/minecraft/class_342; field_2978 inputSizeZ + f Lnet/minecraft/class_342; field_2986 inputMetadata + f Lnet/minecraft/class_342; field_2998 inputSizeY + m ()V method_2514 cancel + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_32653 method_32653 + p 1 button + p 2 showBoundingBox + m (Lnet/minecraft/class_4185;)V method_19910 method_19910 + p 1 button + m ()V method_2510 updateRotationButton + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_32657 method_32657 + p 1 button + p 2 includeEntities + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_66532 method_66532 + p 1 button + p 2 strict + m (Lnet/minecraft/class_4185;)V method_19911 method_19911 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19898 method_19898 + p 1 button + m (Lnet/minecraft/class_2776;)Lnet/minecraft/class_2561; method_32654 method_32654 + p 0 value + m ()V method_2515 done + m (Lnet/minecraft/class_2633$class_2634;)Z method_2516 updateStructureBlock + p 1 action + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_2776;)V method_32652 method_32652 + p 1 button + p 2 mode + m (Lnet/minecraft/class_4185;)V method_19908 method_19908 + p 1 button + m (Lnet/minecraft/class_2776;)V method_32650 updateWidgets + p 1 mode + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_32655 method_32655 + p 1 button + p 2 showAir + m (Lnet/minecraft/class_4185;)V method_19900 method_19900 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19899 method_19899 + p 1 button + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_2415;)V method_32651 method_32651 + p 1 button + p 2 mirror + m (Lnet/minecraft/class_4185;)V method_19909 method_19909 + p 1 button + m (Ljava/lang/String;)F method_2500 parseFloat + p 1 string + m (Ljava/lang/String;)J method_2504 parseLong + p 1 string + m (Lnet/minecraft/class_4185;)V method_19901 method_19901 + p 1 button + m (Lnet/minecraft/class_2633;)V + p 1 structureBlock + m (Ljava/lang/String;)I method_2517 parseInt + p 1 string + m (Lnet/minecraft/class_2776;)Z method_32656 method_32656 + p 0 mode + m (Lnet/minecraft/class_4185;)V method_19906 method_19906 + p 1 button +c net/minecraft/class_496 net/minecraft/client/gui/screen/ingame/MinecartCommandBlockScreen +c net/minecraft/class_495 net/minecraft/client/gui/screen/ingame/ShulkerBoxScreen + f Lnet/minecraft/class_2960; field_2973 TEXTURE + m (Lnet/minecraft/class_1733;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 1 handler + p 2 inventory + p 3 title +c net/minecraft/class_9799 net/minecraft/client/util/BufferAllocator + f J field_52085 lastOffset + f I field_52087 clearCount + f Lorg/lwjgl/system/MemoryUtil$MemoryAllocator; field_52079 ALLOCATOR + f J field_61053 maxSize + f I field_52081 CLOSED + f J field_52083 size + f I field_52086 refCount + f Lcom/mojang/jtracy/MemoryPool; field_54266 MEMORY_POOL + f J field_61052 MAX_SIZE + f I field_52080 MIN_GROWTH + f J field_52082 pointer + f J field_52084 offset + f Lorg/slf4j/Logger; field_52078 LOGGER + m ()V method_60815 forceClear + m (IJ)V + p 1 size + p 2 maxSize + m ()V method_60813 clearIfUnreferenced + m ()V method_60811 reset + m (I)V + p 1 size + m ()V method_60809 clear + m (J)V method_60812 grow + p 1 newSize + m (J)V method_60810 growIfNecessary + p 1 newSize + m (I)J method_60808 allocate + p 1 size + m (I)Lnet/minecraft/class_9799; method_72201 fixedSized + p 0 size + m (I)Z method_60814 clearCountEquals + p 1 clearCount + m ()V method_60816 ensureNotFreed + m ()Lnet/minecraft/class_9799$class_9800; method_60807 getAllocated +c net/minecraft/class_9799$class_9800 net/minecraft/client/util/BufferAllocator$CloseableBuffer + f J field_52089 offset + f I field_52090 size + f I field_52091 clearCount + f Z field_52092 closed + m (Lnet/minecraft/class_9799;JII)V + p 2 offset + p 5 clearCount + p 4 size + m ()Ljava/nio/ByteBuffer; method_60817 getBuffer +c net/minecraft/class_494 net/minecraft/client/gui/screen/ingame/LoomScreen + f Lnet/minecraft/class_2960; field_45483 PATTERN_SLOT_TEXTURE + f Lnet/minecraft/class_2960; field_45481 BANNER_SLOT_TEXTURE + f Lnet/minecraft/class_2960; field_45477 SCROLLER_DISABLED_TEXTURE + f Z field_2958 scrollbarClicked + f Lnet/minecraft/class_2960; field_45479 PATTERN_HIGHLIGHTED_TEXTURE + f I field_32348 SCROLLBAR_WIDTH + f I field_32346 PATTERN_LIST_COLUMNS + f Z field_2961 hasTooManyPatterns + f I field_32352 PATTERN_LIST_OFFSET_X + f Lnet/minecraft/class_1799; field_2954 dye + f I field_32350 PATTERN_ENTRY_SIZE + f Z field_2965 canApplyDyePattern + f Lnet/minecraft/class_2960; field_45480 PATTERN_TEXTURE + f F field_2968 scrollPosition + f Lnet/minecraft/class_2960; field_45482 DYE_SLOT_TEXTURE + f Lnet/minecraft/class_2960; field_45476 SCROLLER_TEXTURE + f Lnet/minecraft/class_9307; field_21841 bannerPatterns + f Lnet/minecraft/class_2960; field_45478 PATTERN_SELECTED_TEXTURE + f I field_32353 PATTERN_LIST_OFFSET_Y + f I field_32349 SCROLLBAR_HEIGHT + f I field_32347 PATTERN_LIST_ROWS + f Lnet/minecraft/class_1799; field_2967 pattern + f Lnet/minecraft/class_2960; field_46186 ERROR_TEXTURE + f Lnet/minecraft/class_1799; field_2955 banner + f Lnet/minecraft/class_2960; field_2966 TEXTURE + f I field_32351 SCROLLBAR_AREA_HEIGHT + f Lnet/minecraft/class_10377; field_21694 bannerField + f I field_39190 visibleTopRow + m (Lnet/minecraft/class_332;IILnet/minecraft/class_1058;)V method_22692 drawBanner + p 4 sprite + p 3 y + p 2 x + p 1 context + m ()V method_17576 onInventoryChanged + m ()I method_43774 getRows + m (Lnet/minecraft/class_1726;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 3 title + p 2 inventory + p 1 screenHandler +c net/minecraft/class_11270 net/minecraft/client/gl/GlGpuFence + f J field_60019 handle +c net/minecraft/class_11278 net/minecraft/client/render/ProjectionMatrix2 + f Z field_60063 invertY + f F field_60062 farZ + f Lcom/mojang/blaze3d/buffers/GpuBufferSlice; field_60060 slice + f F field_60061 nearZ + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_60059 buffer + f F field_60064 width + f F field_60065 height + m (FF)Lorg/joml/Matrix4f; method_71094 getMatrix + p 2 height + p 1 width + m (Ljava/lang/String;FFZ)V + p 1 name + p 2 nearZ + p 3 farZ + p 4 invertY + m (FF)Lcom/mojang/blaze3d/buffers/GpuBufferSlice; method_71092 set + p 2 height + p 1 width +c net/minecraft/class_11279 net/minecraft/client/render/ProjectionMatrix3 + f F field_60072 fov + f I field_60071 height + f Lcom/mojang/blaze3d/buffers/GpuBufferSlice; field_60067 slice + f I field_60070 width + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_60066 buffer + f F field_60069 farZ + f F field_60068 nearZ + m (IIF)Lorg/joml/Matrix4f; method_71097 getMatrix + p 3 fov + p 1 width + p 2 height + m (IIF)Lcom/mojang/blaze3d/buffers/GpuBufferSlice; method_71095 set + p 3 fov + p 1 width + p 2 height + m (Ljava/lang/String;FF)V + p 3 farZ + p 1 name + p 2 nearZ +c net/minecraft/class_7101 net/minecraft/entity/ai/brain/sensor/IsInWaterSensor +c net/minecraft/class_7102 net/minecraft/entity/passive/FrogEntity + f Lnet/minecraft/class_7094; field_37451 longJumpingAnimationState + f Lnet/minecraft/class_7094; field_37452 croakingAnimationState + f Lnet/minecraft/class_7094; field_37453 usingTongueAnimationState + f Lnet/minecraft/class_7094; field_37456 idlingInWaterAnimationState + f Lcom/google/common/collect/ImmutableList; field_37450 MEMORY_MODULES + f Lnet/minecraft/class_2940; field_37458 TARGET + f Lnet/minecraft/class_2940; field_37457 VARIANT + f Lnet/minecraft/class_5321; field_49988 DEFAULT_VARIANT_KEY + f Lcom/google/common/collect/ImmutableList; field_37449 SENSORS + m ()Lnet/minecraft/class_6880; method_41354 getVariant + m (Lnet/minecraft/class_1297;)V method_41352 setFrogTarget + p 1 entity + m ()Ljava/util/Optional; method_41360 getFrogTarget + m ()V method_41359 clearFrogTarget + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_43398 canSpawn + p 0 type + p 1 world + p 2 reason + p 3 pos + p 4 random + m (Lnet/minecraft/class_6880;)V method_41353 setVariant + p 1 variant + m ()Lnet/minecraft/class_5132$class_5133; method_41355 createFrogAttributes + m (Lnet/minecraft/class_1309;)Z method_41358 isValidFrogFood + p 0 entity +c net/minecraft/class_7102$class_7103 net/minecraft/entity/passive/FrogEntity$FrogLookControl + m (Lnet/minecraft/class_7102;Lnet/minecraft/class_1308;)V + p 2 entity +c net/minecraft/class_7102$class_7105 net/minecraft/entity/passive/FrogEntity$FrogSwimNavigation + m (Lnet/minecraft/class_7102;Lnet/minecraft/class_1937;)V + p 2 world + p 1 frog +c net/minecraft/class_7102$class_7104 net/minecraft/entity/passive/FrogEntity$FrogSwimPathNodeMaker + f Lnet/minecraft/class_2338$class_2339; field_37461 pos +c net/minecraft/class_9762 net/minecraft/util/collection/BoundedRegionArray + f I field_51880 maxX + f I field_51881 maxZ + f I field_51878 minX + f [Ljava/lang/Object; field_51882 array + f I field_51879 minZ + m (IIIILnet/minecraft/class_9762$class_9763;)V + p 1 minX + p 2 minZ + p 5 getter + p 3 maxX + p 4 maxZ + m (II)Z method_60485 isWithinBounds + p 1 x + p 2 z + m (II)I method_60486 toIndex + p 1 x + p 2 z + m (II)Ljava/lang/Object; method_60482 get + p 1 x + p 2 z + m (Ljava/util/function/Consumer;)V method_60484 forEach + p 1 callback + m (IIILnet/minecraft/class_9762$class_9763;)Lnet/minecraft/class_9762; method_60483 create + p 3 getter + p 2 radius + p 1 centerZ + p 0 centerX +c net/minecraft/class_9762$class_9763 net/minecraft/util/collection/BoundedRegionArray$Getter + m (II)Ljava/lang/Object; get get + p 2 z + p 1 x +c net/minecraft/class_9761 net/minecraft/world/chunk/AbstractChunkHolder + f Ljava/util/concurrent/CompletableFuture; field_51867 UNLOADED_FUTURE + f Ljava/util/concurrent/atomic/AtomicReferenceArray; field_51872 chunkFuturesByStatus + f Lnet/minecraft/class_2806; field_51870 status + f Lnet/minecraft/class_9259; field_51866 UNLOADED + f Ljava/util/concurrent/atomic/AtomicInteger; field_51874 refCount + f Ljava/util/concurrent/CompletableFuture; field_54045 referenceFuture + f Ljava/util/List; field_51865 STATUSES + f Ljava/util/concurrent/atomic/AtomicReference; field_51873 chunkLoader + f Ljava/util/concurrent/atomic/AtomicReference; field_51871 currentStatus + f Lnet/minecraft/class_1923; field_51868 pos + f Lnet/minecraft/class_9259; field_51869 NOT_DONE + m ()Ljava/util/List; method_60475 enumerateFutures + m (Lnet/minecraft/class_3898;)V method_60454 updateStatus + p 1 chunkLoadingManager + m (Lnet/minecraft/class_3898;Lnet/minecraft/class_2806;)V method_60455 createLoader + p 2 requestedStatus + p 1 chunkLoadingManager + m (Lnet/minecraft/class_2806;Lnet/minecraft/class_2806;)V method_60460 unload + p 2 to + p 1 from + m (Lnet/minecraft/class_2806;)Z method_60466 progressStatus + c Progresses to {@code nextStatus} if that is actually the next status\nfor the current status. Does nothing if {@code nextStatus} is the same as the\ncurrent status (or earlier).\n\n@return whether the progress was made\n@throws IllegalStateException when skipping intermediate statuses between the\ncurrent and {@code nextStatus} + p 1 nextStatus + m (ILjava/util/concurrent/CompletableFuture;)V method_60452 unload + p 2 previousFuture + p 1 statusIndex + m ()Lnet/minecraft/class_2791; method_60471 getLatest + m ()V method_60468 incrementRefCount + m ()Lnet/minecraft/class_1923; method_60473 getPos + m (Lnet/minecraft/class_2806;)Lnet/minecraft/class_2806; method_60465 getMaxPendingStatus + p 1 checkUpperBound + m (Lnet/minecraft/class_2806;)Ljava/util/concurrent/CompletableFuture; method_60464 getOrCreateFuture + p 1 status + m (Lnet/minecraft/class_2806;)Z method_60467 cannotBeLoaded + p 1 status + m (Lnet/minecraft/class_2806;)Lnet/minecraft/class_2791; method_60457 getUncheckedOrNull + p 1 requestedStatus + m (Lnet/minecraft/class_2806;)Lnet/minecraft/class_2791; method_60463 getOrNull + p 1 requestedStatus + m (Ljava/util/concurrent/CompletableFuture;)V method_39967 combineSavingFuture + p 1 savingFuture + m (Lnet/minecraft/class_9759;)V method_60453 clearLoader + p 1 loader + m ()V method_60469 decrementRefCount + m (Lnet/minecraft/class_1923;)V + p 1 pos + m (Lnet/minecraft/class_2821;)V method_60456 replaceWith + p 1 chunk + m ()I method_17208 getCompletedLevel + m (Lnet/minecraft/class_9770;Lnet/minecraft/class_2791;Ljava/lang/Throwable;)Lnet/minecraft/class_9259; method_60462 method_60462 + p 2 chunk + p 3 throwable + m ()Lnet/minecraft/class_2806; method_60472 getActualStatus + m ()I method_14005 getLevel + m (Lnet/minecraft/class_2806;Lnet/minecraft/class_3898;)Ljava/util/concurrent/CompletableFuture; method_60458 load + p 1 requestedStatus + p 2 chunkLoadingManager + m ()Lnet/minecraft/class_3194; method_60474 getLevelType + m (Lnet/minecraft/class_2806;Lnet/minecraft/class_2791;)V method_60459 completeChunkFuture + p 1 status + p 2 chunk + m (Lnet/minecraft/class_9770;Lnet/minecraft/class_9760;Lnet/minecraft/class_9762;)Ljava/util/concurrent/CompletableFuture; method_60461 generate + p 2 chunkLoadingManager + p 3 chunks + p 1 step + m ()Lnet/minecraft/class_2806; method_60476 getLatestStatus +c net/minecraft/class_7100 net/minecraft/entity/ai/brain/sensor/FrogAttackablesSensor + f F field_37444 RANGE + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_44331 isTargetUnreachable + p 2 target + p 1 entity +c net/minecraft/class_9760 net/minecraft/world/ChunkLoadingManager + m (Lnet/minecraft/class_2806;Lnet/minecraft/class_1923;)Lnet/minecraft/class_9759; method_60443 createLoader + p 2 pos + p 1 requestedStatus + m (Lnet/minecraft/class_9761;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;)Ljava/util/concurrent/CompletableFuture; method_60442 generate + p 3 chunks + p 1 chunkHolder + p 2 step + m ()V method_60450 updateChunks + m (J)Lnet/minecraft/class_9761; method_60448 acquire + p 1 pos + m (Lnet/minecraft/class_9761;)V method_60441 release + p 1 chunkHolder +c net/minecraft/class_7107 net/minecraft/entity/passive/FrogBrain + f F field_37469 FLEE_SPEED + f Lnet/minecraft/class_6019; field_37474 LONG_JUMP_COOLDOWN_RANGE + f F field_37478 TEMPT_SPEED + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;)Ljava/util/Optional; method_41383 method_41383 + p 1 frog + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;)Ljava/util/Optional; method_41381 method_41381 + p 1 frog + p 0 world + m (Lnet/minecraft/class_7102;)Lnet/minecraft/class_3414; method_41377 method_41377 + p 0 frog + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;)Ljava/util/Optional; method_41379 method_41379 + p 1 frog + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;)Z method_64456 method_64456 + p 1 frog + p 0 world + m (Lnet/minecraft/class_1309;)Ljava/lang/Float; method_41371 method_41371 + p 0 frog + m (Lnet/minecraft/class_4095;)V method_41378 addLaySpawnActivities + p 0 brain + m (Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_41368 create + p 0 brain + m (Lnet/minecraft/class_7102;Lnet/minecraft/class_5819;)V method_41369 coolDownLongJump + p 0 frog + p 1 random + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_2338;)Z method_45373 shouldJumpTo + p 0 frog + p 1 pos + m (Lnet/minecraft/class_1799;)Z method_58390 method_58390 + p 0 stack + m (Lnet/minecraft/class_4095;)V method_41376 addSwimActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_41374 addIdleActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_41372 addCoreActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_41380 addLongJumpActivities + p 0 brain + m (Lnet/minecraft/class_1309;)Ljava/lang/Float; method_41367 method_41367 + p 0 frog + m (Lnet/minecraft/class_4095;)V method_41382 addTongueActivities + p 0 brain + m (Lnet/minecraft/class_7102;)V method_41373 updateActivities + p 0 frog + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;)Z method_64455 method_64455 + p 1 frog + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;)Z method_64457 method_64457 + p 1 frog + p 0 world + m ()Ljava/util/function/Predicate; method_41366 getTemptItemPredicate + m (Lnet/minecraft/class_7102;)Z method_41375 isNotBreeding + p 0 frog +c net/minecraft/class_7108 net/minecraft/entity/ai/brain/task/FrogEatEntityTask + f I field_37479 RUN_TIME + f Lnet/minecraft/class_7108$class_7109; field_37489 phase + f I field_37483 eatTick + f F field_37481 MAX_DISTANCE + f I field_37484 moveToTargetTick + f F field_37482 VELOCITY_MULTIPLIER + f I field_39452 UNREACHABLE_TONGUE_TARGETS_START_TIME + f I field_37480 EAT_DURATION + f I field_39453 MAX_UNREACHABLE_TONGUE_TARGETS + f I field_38414 CATCH_DURATION + f Lnet/minecraft/class_3414; field_37486 eatSound + f Lnet/minecraft/class_3414; field_37485 tongueSound + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;J)V method_41387 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;J)V method_41388 finishRunning + m (Lnet/minecraft/class_7102;Lnet/minecraft/class_1309;)V method_44333 markTargetAsUnreachable + p 1 entity + p 2 target + m (Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;)V + p 1 tongueSound + p 2 eatSound + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;J)V method_41389 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;)Z method_41384 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;)V method_42667 eat + p 2 frog + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;J)Z method_41385 shouldKeepRunning + m (Lnet/minecraft/class_7102;Lnet/minecraft/class_1309;)Z method_44332 isTargetReachable + p 1 entity + p 2 target +c net/minecraft/class_7108$class_7109 net/minecraft/entity/ai/brain/task/FrogEatEntityTask$Phase + f Lnet/minecraft/class_7108$class_7109; field_37493 EAT_ANIMATION + f Lnet/minecraft/class_7108$class_7109; field_37492 MOVE_TO_TARGET + f Lnet/minecraft/class_7108$class_7109; field_37494 DONE + f Lnet/minecraft/class_7108$class_7109; field_38415 CATCH_ANIMATION +c net/minecraft/class_9768 net/minecraft/world/chunk/ChunkGenerationSteps + f Lnet/minecraft/class_9768; field_51901 LOADING + f Lnet/minecraft/class_9768; field_51900 GENERATION + f Lcom/google/common/collect/ImmutableList; comp_2802 steps + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60538 method_60538 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60526 method_60526 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60528 method_60528 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60534 method_60534 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60522 method_60522 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60536 method_60536 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60524 method_60524 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60541 method_60541 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60521 method_60521 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60531 method_60531 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60527 method_60527 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60537 method_60537 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60529 method_60529 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60539 method_60539 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60523 method_60523 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60533 method_60533 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60525 method_60525 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60535 method_60535 + p 0 builder + m (Lnet/minecraft/class_2806;)Lnet/minecraft/class_9770; method_60518 get + p 1 status + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60519 method_60519 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60530 method_60530 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60540 method_60540 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60532 method_60532 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60520 method_60520 + p 0 builder + m (Lnet/minecraft/class_9770$class_9771;)Lnet/minecraft/class_9770$class_9771; method_60542 method_60542 + p 0 builder + m ()Lcom/google/common/collect/ImmutableList; comp_2802 steps + m (Lcom/google/common/collect/ImmutableList;)V + p 1 steps +c net/minecraft/class_9768$class_9769 net/minecraft/world/chunk/ChunkGenerationSteps$Builder + f Ljava/util/List; field_51902 steps + m ()Lnet/minecraft/class_9768; method_60543 build + m (Lnet/minecraft/class_2806;Ljava/util/function/UnaryOperator;)Lnet/minecraft/class_9768$class_9769; method_60544 then + p 1 status + p 2 stepFactory +c net/minecraft/class_9767 net/minecraft/world/chunk/GenerationDependencies + f Lcom/google/common/collect/ImmutableList; field_51898 dependencies + f [I field_51899 additionalLevelsByStatus + m ()Lcom/google/common/collect/ImmutableList; method_60513 getDependencies + m (Lnet/minecraft/class_2806;)I method_60515 getAdditionalLevel + p 1 status + m (I)Lnet/minecraft/class_2806; method_60514 get + p 1 index + m ()I method_60516 size + m ()I method_60517 getMaxLevel + m (Lcom/google/common/collect/ImmutableList;)V + p 1 dependencies +c net/minecraft/class_7106 net/minecraft/entity/passive/FrogVariant + f Lcom/mojang/serialization/Codec; field_56276 CODEC + f Lcom/mojang/serialization/Codec; field_55961 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_56277 NETWORK_CODEC + f Lnet/minecraft/class_9139; field_51942 PACKET_CODEC + f Lnet/minecraft/class_12079$class_10726; comp_3569 assetInfo + f Lnet/minecraft/class_10702; comp_3570 spawnConditions + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67142 method_67142 + p 0 instance + m (Lnet/minecraft/class_12079$class_10726;)V + p 1 assetInfo + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67141 method_67141 + p 0 instance + m ()Lnet/minecraft/class_10702; comp_3570 spawnConditions + m ()Lnet/minecraft/class_12079$class_10726; comp_3569 assetInfo + m (Lnet/minecraft/class_12079$class_10726;Lnet/minecraft/class_10702;)V + p 1 assetInfo + p 2 spawnConditions +c net/minecraft/class_9766 net/minecraft/block/DecoratedPotPattern + f Lnet/minecraft/class_2960; comp_2801 assetId + m ()Lnet/minecraft/class_2960; comp_2801 assetId + m (Lnet/minecraft/class_2960;)V + p 1 assetId +c net/minecraft/class_7112 net/minecraft/unused/packageinfo/PackageInfo7112 +c net/minecraft/class_9774 net/minecraft/datafixer/fix/OptionsMenuBlurrinessFix + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_60600 method_60600 + p 1 optionsTyped + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60601 method_60601 + p 1 optionsDynamic + m (Ljava/lang/String;)I method_60602 update + p 1 value +c net/minecraft/class_7113 net/minecraft/block/FrogspawnBlock + f I field_37584 maxHatchTime + f Lnet/minecraft/class_265; field_37578 SHAPE + f I field_37579 MIN_TADPOLES + f I field_37583 minHatchTime + f I field_37582 MAX_HATCH_TIME + f I field_37581 MIN_HATCH_TIME + f I field_37580 MAX_TADPOLES + f Lcom/mojang/serialization/MapCodec; field_46357 CODEC + m (Lnet/minecraft/class_5819;)D method_44015 getSpawnOffset + p 1 random + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_41427 canLayAt + p 0 world + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_41428 breakWithoutDrop + p 1 world + p 2 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_41426 hatch + p 2 pos + p 1 world + p 3 random + m (Lnet/minecraft/class_5819;)I method_41429 getHatchTime + p 0 random + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_41430 spawnTadpoles + p 1 world + p 3 random + p 2 pos + m (II)V method_41425 setHatchTimeRange + p 1 max + p 0 min + m ()V method_41431 resetHatchTimeRange +c net/minecraft/class_7110 net/minecraft/entity/passive/TadpoleEntity + f Lcom/google/common/collect/ImmutableList; field_37498 MEMORY_MODULES + f F field_39302 WIDTH + f F field_39303 HEIGHT + f I field_37499 tadpoleAge + f Lcom/google/common/collect/ImmutableList; field_37497 SENSORS + f I field_37496 MAX_TADPOLE_AGE + f I field_57625 DEFAULT_TADPOLE_AGE + m (I)V method_41394 setTadpoleAge + p 1 tadpoleAge + m (Lnet/minecraft/class_1799;)Z method_41399 isFrogFood + p 1 stack + m ()I method_41398 getTicksUntilGrowth + m ()I method_41396 getTadpoleAge + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7102;)V method_63651 method_63651 + p 2 frog + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V method_41391 eatSlimeBall + p 1 player + p 2 stack + m (I)V method_41392 increaseAge + p 1 seconds + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V method_41393 decrementItem + p 1 player + p 2 stack + m ()V method_41397 growUp + m ()Lnet/minecraft/class_5132$class_5133; method_41395 createTadpoleAttributes +c net/minecraft/class_7111 net/minecraft/entity/passive/TadpoleBrain + f F field_39409 TEMPT_SPEED + f F field_37500 FLEE_SPEED + m (Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_41400 create + p 0 brain + m (Lnet/minecraft/class_7110;)V method_41401 updateActivities + p 0 tadpole + m (Lnet/minecraft/class_4095;)V method_41403 addIdleActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_41402 addCoreActivities + p 0 brain +c net/minecraft/class_9770 net/minecraft/world/chunk/ChunkGenerationStep + f Lnet/minecraft/class_9767; comp_2805 accumulatedDependencies + f Lnet/minecraft/class_9767; comp_2804 directDependencies + f Lnet/minecraft/class_2807; comp_2807 task + f Lnet/minecraft/class_2806; comp_2803 targetStatus + f I comp_2806 blockStateWriteRadius + m (Lnet/minecraft/class_2791;Lnet/minecraft/class_6613;)Lnet/minecraft/class_2791; method_60558 finalizeGeneration + p 2 finishCallback + p 1 chunk + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_60560 run + p 1 context + p 3 chunk + m (Lnet/minecraft/class_6613;Lnet/minecraft/class_2791;)Lnet/minecraft/class_2791; method_60557 method_60557 + p 2 generated + m (Lnet/minecraft/class_2806;)I method_60559 getAdditionalLevel + p 1 status + m ()Lnet/minecraft/class_9767; comp_2804 directDependencies + m ()Lnet/minecraft/class_9767; comp_2805 accumulatedDependencies + m ()Lnet/minecraft/class_2806; comp_2803 targetStatus + m ()Lnet/minecraft/class_2807; comp_2807 task + m ()I comp_2806 blockStateWriteRadius + m (Lnet/minecraft/class_2806;Lnet/minecraft/class_9767;Lnet/minecraft/class_9767;ILnet/minecraft/class_2807;)V + p 1 targetStatus + p 2 directDependencies + p 3 accumulatedDependencies + p 4 blockStateWriteRadius + p 5 task +c net/minecraft/class_9770$class_9771 net/minecraft/world/chunk/ChunkGenerationStep$Builder + f Lnet/minecraft/class_2806; field_51905 targetStatus + f Lnet/minecraft/class_2807; field_51909 task + f [Lnet/minecraft/class_2806; field_51907 directDependencies + f I field_51908 blockStateWriteRadius + f Lnet/minecraft/class_9770; field_51906 previousStep + m (Lnet/minecraft/class_2806;)V + p 1 targetStatus + m (Lnet/minecraft/class_2806;Lnet/minecraft/class_9770;)V + p 2 previousStep + p 1 blockStateWriteRadius + m (Lnet/minecraft/class_2806;I)Lnet/minecraft/class_9770$class_9771; method_60564 dependsOn + p 2 level + p 1 status + m (Lnet/minecraft/class_2807;)Lnet/minecraft/class_9770$class_9771; method_60565 task + p 1 task + m (I)Lnet/minecraft/class_9770$class_9771; method_60562 blockStateWriteRadius + p 1 blockStateWriteRadius + m ()[Lnet/minecraft/class_2806; method_60566 accumulateDependencies + m (Lnet/minecraft/class_2806;)I method_60563 getParentStatus + p 1 status + m ()Lnet/minecraft/class_9770; method_60561 build +c net/minecraft/class_7118 net/minecraft/block/MultifaceGrower + f [Lnet/minecraft/class_7118$class_7123; field_37595 GROW_TYPES + f Lnet/minecraft/class_7118$class_7120; field_37596 growChecker + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;ZLnet/minecraft/class_2350;)Ljava/util/Optional; method_41449 method_41449 + p 6 direction2 + m (Lnet/minecraft/class_7118$class_7120;)V + p 1 growChecker + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Z)J method_41452 grow + p 4 markForPostProcessing + p 3 pos + p 2 world + p 1 state + m (Lnet/minecraft/class_5778;)V + p 1 lichen + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Ljava/util/Optional; method_41450 grow + p 4 random + p 3 pos + p 2 world + p 1 state + m (Lnet/minecraft/class_1936;ZLnet/minecraft/class_7118$class_7121;)Ljava/util/Optional; method_41442 method_41442 + p 3 growPos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;Z)Ljava/util/Optional; method_41446 grow + p 2 world + p 1 state + p 4 oldDirection + p 3 pos + p 6 markForPostProcessing + p 5 newDirection + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_41454 method_41454 + p 2 direction + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;ZLnet/minecraft/class_2350;)Ljava/util/Optional; method_41455 method_41455 + p 6 direction2 + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;Lnet/minecraft/class_7118$class_7122;)Ljava/util/Optional; method_41445 getGrowPos + p 2 world + p 1 state + p 6 predicate + p 5 newDirection + p 4 oldDirection + p 3 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_41456 method_41456 + p 2 direction + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_7118$class_7121;Z)Ljava/util/Optional; method_41441 place + p 1 world + p 2 pos + p 3 markForPostProcessing + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;)Z method_41444 method_41444 + p 5 direction2 + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_5819;Z)Ljava/util/Optional; method_41447 grow + p 6 markForPostProcessing + p 5 random + p 4 direction + p 3 pos + p 2 world + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Z)J method_41448 grow + p 1 state + p 3 pos + p 2 world + p 5 markForPostProcessing + p 4 direction + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Lnet/minecraft/class_2350;)Ljava/util/Optional; method_41451 method_41451 + p 5 direction + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_41443 canGrow + p 1 state + p 4 direction + p 3 pos + p 2 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;ZLnet/minecraft/class_2350;)Ljava/lang/Long; method_41453 method_41453 + p 5 direction +c net/minecraft/class_7118$class_7119 net/minecraft/block/MultifaceGrower$LichenGrowChecker + f Lnet/minecraft/class_5778; field_37597 lichen + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2680;)Z method_41458 canGrow + p 4 direction + p 3 growPos + p 5 state + p 2 pos + p 1 world + m (Lnet/minecraft/class_5778;)V + p 1 lichen +c net/minecraft/class_7118$class_7120 net/minecraft/block/MultifaceGrower$GrowChecker + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_7118$class_7121;)Z method_41457 canGrow + p 3 growPos + p 1 world + p 2 pos + m ()[Lnet/minecraft/class_7118$class_7123; method_41460 getGrowTypes + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_41463 hasDirection + p 2 direction + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2680; method_41459 getStateWithDirection + p 2 world + p 3 pos + p 4 direction + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_41464 canGrow + p 1 state + p 2 direction + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_7118$class_7121;Lnet/minecraft/class_2680;Z)Z method_41461 place + p 3 state + p 4 markForPostProcessing + p 1 world + p 2 growPos + m (Lnet/minecraft/class_2680;)Z method_41462 canGrow + p 1 state +c net/minecraft/class_7118$class_7123 net/minecraft/block/MultifaceGrower$GrowType + f Lnet/minecraft/class_7118$class_7123; field_37600 WRAP_AROUND + f Lnet/minecraft/class_7118$class_7123; field_37598 SAME_POSITION + f Lnet/minecraft/class_7118$class_7123; field_37599 SAME_PLANE + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;)Lnet/minecraft/class_7118$class_7121; method_41466 getGrowPos + p 2 newDirection + p 3 oldDirection + p 1 pos +c net/minecraft/class_7118$class_7121 net/minecraft/block/MultifaceGrower$GrowPos + f Lnet/minecraft/class_2338; comp_534 pos + f Lnet/minecraft/class_2350; comp_535 face + m ()Lnet/minecraft/class_2350; comp_535 face + m ()Lnet/minecraft/class_2338; comp_534 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)V + p 1 pos + p 2 face +c net/minecraft/class_7118$class_7122 net/minecraft/block/MultifaceGrower$GrowPosPredicate + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_7118$class_7121;)Z test test + p 1 world + p 2 pos + p 3 growPos +c net/minecraft/class_9779 net/minecraft/client/render/RenderTickCounter + f Lnet/minecraft/class_9779; field_51955 ZERO + f Lnet/minecraft/class_9779; field_51956 ONE + m (Z)F method_60637 getTickProgress + p 1 ignoreFreeze + m ()F method_60636 getDynamicDeltaTicks + m ()F method_60638 getFixedDeltaTicks +c net/minecraft/class_9779$class_9781 net/minecraft/client/render/RenderTickCounter$Dynamic + f F field_51959 tickProgress + f Lit/unimi/dsi/fastutil/floats/FloatUnaryOperator; field_51965 targetMillisPerTick + f F field_51958 dynamicDeltaTicks + f F field_51964 tickTime + f F field_51960 fixedDeltaTicks + f J field_51963 timeMillis + f F field_51961 tickProgressBeforePause + f J field_51962 lastTimeMillis + f Z field_51967 tickFrozen + f Z field_51966 paused + m (FJLit/unimi/dsi/fastutil/floats/FloatUnaryOperator;)V + p 2 timeMillis + p 4 targetMillisPerTick + p 1 tps + m (Z)V method_60642 tick + p 1 paused + m (JZ)I method_60640 beginRenderTick + p 3 tick + p 1 timeMillis + m (Z)V method_60644 setTickFrozen + p 1 tickFrozen + m (J)I method_60639 beginRenderTick + p 1 timeMillis + m ()V method_60645 tickUnpaused + m ()V method_60643 tickPaused + m (J)V method_60641 setTimeMillis + p 1 timeMillis +c net/minecraft/class_9779$class_9780 net/minecraft/client/render/RenderTickCounter$Constant + f F field_51957 value + m (F)V + p 1 value +c net/minecraft/class_7116 net/minecraft/block/MangroveRootsBlock + f Lnet/minecraft/class_2746; field_37593 WATERLOGGED + f Lcom/mojang/serialization/MapCodec; field_46396 CODEC +c net/minecraft/class_9778 net/minecraft/world/gen/structure/DimensionPadding + f Lcom/mojang/serialization/Codec; field_51954 OBJECT_CODEC + f Lcom/mojang/serialization/Codec; field_51952 CODEC + f Lnet/minecraft/class_9778; field_51953 NONE + f I comp_2818 bottom + f I comp_2819 top + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_9778; method_60630 method_60630 + p 0 either + m (Lnet/minecraft/class_9778;)Ljava/lang/Integer; method_60634 method_60634 + p 0 padding + m (Lnet/minecraft/class_9778;)Ljava/lang/Integer; method_60633 method_60633 + p 0 padding + m ()Z method_60629 paddedBySameDistance + m (Lnet/minecraft/class_9778;)Lcom/mojang/datafixers/util/Either; method_60632 method_60632 + p 0 padding + m (I)V + p 1 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60631 method_60631 + p 0 instance + m ()I comp_2819 top + m ()I comp_2818 bottom + m (II)V + p 1 bottom + p 2 top +c net/minecraft/class_7117 net/minecraft/block/MudBlock + f Lnet/minecraft/class_265; field_37594 COLLISION_SHAPE + f Lcom/mojang/serialization/MapCodec; field_46398 CODEC +c net/minecraft/class_7114 net/minecraft/block/MangroveLeavesBlock + f Lcom/mojang/serialization/MapCodec; field_46394 CODEC + m (Lnet/minecraft/class_7114;)Ljava/lang/Float; method_67236 method_67236 + p 0 block + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67235 method_67235 + p 0 instance +c net/minecraft/class_7115 net/minecraft/block/PropaguleBlock + f Lnet/minecraft/class_2758; field_37588 AGE + f [Lnet/minecraft/class_265; field_37592 SHAPES_BY_AGE + f [I field_55777 MIN_Y_BY_AGE + f Lnet/minecraft/class_2746; field_37591 HANGING + f Lcom/mojang/serialization/MapCodec; field_46395 CODEC + f Lnet/minecraft/class_2746; field_37590 WATERLOGGED + m (Lnet/minecraft/class_2680;)Z method_41435 isHanging + p 0 state + m (I)Lnet/minecraft/class_265; method_66451 method_66451 + p 0 age + m (I)Lnet/minecraft/class_2680; method_43130 getHangingState + p 0 age + m (Lnet/minecraft/class_2680;)Z method_41436 isFullyGrown + p 0 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54032 method_54032 + p 0 instance + m ()Lnet/minecraft/class_2680; method_41434 getDefaultHangingState + m (Lnet/minecraft/class_7115;)Lnet/minecraft/class_8813; method_54033 method_54033 + p 0 block +c net/minecraft/class_11298 net/minecraft/world/waypoint/WaypointStyle +c net/minecraft/class_11299 net/minecraft/world/waypoint/WaypointStyles + f Lnet/minecraft/class_5321; field_60167 REGISTRY + f Lnet/minecraft/class_5321; field_60427 BOWTIE + f Lnet/minecraft/class_5321; field_60168 DEFAULT + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_71163 of + p 0 id +c net/minecraft/class_11296 net/minecraft/client/render/entity/feature/HappyGhastRopesFeatureRenderer + f Lnet/minecraft/class_1921; field_60157 renderLayer + f Lnet/minecraft/class_11260; field_60159 babyModel + f Lnet/minecraft/class_11260; field_60158 model + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;Lnet/minecraft/class_2960;)V + p 2 loader + p 1 context + p 3 texture + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_11262;FF)V method_71140 render +c net/minecraft/class_9742 net/minecraft/enchantment/provider/EnchantmentProviderType + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_60267 registerAndGetDefault + p 0 registry +c net/minecraft/class_446 net/minecraft/client/gui/screen/option/VideoOptionsScreen + f Lnet/minecraft/class_5407; field_25688 warningManager + f Lnet/minecraft/class_2561; field_63540 INTERFACE_HEADER_TEXT + f I field_64203 maxAnisotropy + f Lnet/minecraft/class_2561; field_63539 QUALITY_HEADER_TEXT + f Lnet/minecraft/class_2561; field_49515 TITLE_TEXT + f Lnet/minecraft/class_2561; field_25686 GRAPHICS_WARNING_CANCEL_TEXT + f Lnet/minecraft/class_2561; field_25685 GRAPHICS_WARNING_ACCEPT_TEXT + f Lnet/minecraft/class_2561; field_25684 GRAPHICS_WARNING_TITLE_TEXT + f Lnet/minecraft/class_2561; field_25683 GRAPHICS_WARNING_MESSAGE_TEXT + f I field_19186 mipmapLevels + f Lnet/minecraft/class_2561; field_63537 IMPROVED_TRANSPARENCY_TEXT + f Lnet/minecraft/class_2561; field_63538 DISPLAY_HEADER_TEXT + m ()V method_75371 updateImprovedTransparencyButtonValue + m (Lnet/minecraft/class_4185;)V method_30053 method_30053 + p 1 button + m (Lnet/minecraft/class_4185;)V method_30052 method_30052 + p 1 button + m (Lnet/minecraft/class_313;Lnet/minecraft/class_2561;Ljava/lang/Integer;)Lnet/minecraft/class_2561; method_60339 method_60339 + p 1 optionText + p 2 value + m (Lnet/minecraft/class_313;Lnet/minecraft/class_1041;Ljava/lang/Integer;)V method_60338 method_60338 + p 2 value + m (Lnet/minecraft/class_315;)[Lnet/minecraft/class_7172; method_75374 getInterfaceOptions + p 0 options + m (Lnet/minecraft/class_437;Lnet/minecraft/class_310;Lnet/minecraft/class_315;)V + p 3 gameOptions + p 2 client + p 1 parent + m (Z)V method_67265 updateFullscreenButtonValue + p 1 fullscreen + m (Lnet/minecraft/class_315;)[Lnet/minecraft/class_7172; method_75373 getDisplayOptions + p 0 options + m (Lnet/minecraft/class_315;)[Lnet/minecraft/class_7172; method_75372 getQualityOptions + p 0 options +c net/minecraft/class_9741 net/minecraft/enchantment/provider/EnchantmentProvider + f Lcom/mojang/serialization/Codec; field_51731 CODEC + m ()Lcom/mojang/serialization/MapCodec; method_60265 getCodec + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_9304$class_9305;Lnet/minecraft/class_5819;Lnet/minecraft/class_1266;)V method_60266 provideEnchantments + p 4 localDifficulty + p 2 componentBuilder + p 3 random + p 1 stack +c net/minecraft/class_445 net/minecraft/client/gui/screen/CreditsScreen + f F field_2628 time + f Ljava/lang/Runnable; field_2630 finishAction + f Ljava/lang/String; field_32273 CENTERED_LINE_PREFIX + f F field_34012 CTRL_KEY_SPEED_MULTIPLIER + f Lnet/minecraft/class_8020; field_41848 logoDrawer + f Lit/unimi/dsi/fastutil/ints/IntSet; field_24261 centeredLines + f Lnet/minecraft/class_2561; field_33955 SEPARATOR_LINE + f Lnet/minecraft/class_2960; field_52139 POST_CREDITS_TEXT_LOCATION + f Z field_2627 endCredits + f Lorg/slf4j/Logger; field_2632 LOGGER + f Ljava/util/List; field_2634 credits + f Lit/unimi/dsi/fastutil/ints/IntSet; field_34011 pressedCtrlKeys + f Ljava/lang/String; field_24260 OBFUSCATION_PLACEHOLDER + f F field_33957 SPACE_BAR_SPEED_MULTIPLIER + f I field_44778 speedMultiplier + f Lnet/minecraft/class_2960; field_52137 END_POEM_TEXT_LOCATION + f I field_2629 creditsHeight + f F field_2635 speed + f Lnet/minecraft/class_2960; field_2633 VIGNETTE_TEXTURE + f Z field_34010 spaceKeyPressed + f Lnet/minecraft/class_2960; field_52138 CREDITS_TEXT_LOCATION + f F field_33954 baseSpeed + f Ljava/util/List; field_60754 narratedCredits + m ()V method_37306 addEmptyLine + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_445$class_6824;)V method_39775 load + p 2 reader + p 1 fileLocation + m (Lnet/minecraft/class_332;)V method_57738 renderVignette + p 1 context + m (Ljava/lang/String;)V method_37305 addText + p 1 text + m (ZLjava/lang/Runnable;)V + p 2 finishAction + p 1 endCredits + m (Lnet/minecraft/class_2561;ZZ)V method_37304 addText + p 1 text + p 2 centered + p 3 narrate + m (Ljava/io/Reader;)V method_39774 readPoem + p 1 reader + m ()V method_2257 closeScreen + m ()F method_37369 getSpeed + m (Ljava/io/Reader;)V method_39776 readCredits + p 1 reader +c net/minecraft/class_445$class_6824 net/minecraft/client/gui/screen/CreditsScreen$CreditsReader + m (Ljava/io/Reader;)V read read + p 1 reader +c net/minecraft/class_9740 net/minecraft/unused/packageinfo/PackageInfo9740 +c net/minecraft/class_443 net/minecraft/client/gui/screen/option/SoundOptionsScreen + f Lnet/minecraft/class_2561; field_49513 TITLE_TEXT + m ()[Lnet/minecraft/class_7172; method_45631 getVolumeOptions + m (Lnet/minecraft/class_437;Lnet/minecraft/class_315;)V + p 2 options + p 1 parent + m (Lnet/minecraft/class_3419;)Z method_45630 method_45630 + p 0 category +c net/minecraft/class_447 net/minecraft/client/gui/screen/StatsScreen + f Lnet/minecraft/class_8089; field_62153 tabNavigationWidget + f Lnet/minecraft/class_2960; field_45418 SLOT_TEXTURE + f Lnet/minecraft/class_8088; field_62152 tabManager + f Lnet/minecraft/class_437; field_2648 parent + f Lnet/minecraft/class_3469; field_2647 statHandler + f Lnet/minecraft/class_2561; field_49518 ITEM_BUTTON_TEXT + f Lnet/minecraft/class_8132; field_49523 layout + f Lnet/minecraft/class_2561; field_49517 GENERAL_BUTTON_TEXT + f Z field_2645 downloadingStats + f Lnet/minecraft/class_2960; field_45421 SORT_DOWN_TEXTURE + f Lnet/minecraft/class_2561; field_26546 DOWNLOADING_STATS_TEXT + f Lnet/minecraft/class_2960; field_45419 HEADER_TEXTURE + f Lnet/minecraft/class_2561; field_46185 NONE_TEXT + f Lnet/minecraft/class_2561; field_49519 MOBS_BUTTON_TEXT + f Lnet/minecraft/class_2561; field_49516 TITLE_TEXT + f Lnet/minecraft/class_2960; field_45420 SORT_UP_TEXTURE + m (Lnet/minecraft/class_8030;Lnet/minecraft/class_8087;)V method_73418 method_73418 + p 1 tab + m (Lnet/minecraft/class_8030;Lnet/minecraft/class_339;)V method_73417 method_73417 + p 1 child + m (Lnet/minecraft/class_447;Lnet/minecraft/class_364;)V method_73420 method_73420 + p 1 child + m (Lnet/minecraft/class_4185;)V method_73416 method_73416 + p 1 button + m (I)V method_73414 refreshTab + p 1 tab + m (Lnet/minecraft/class_437;Lnet/minecraft/class_3469;)V + p 2 statHandler + p 1 parent + m (Lnet/minecraft/class_3445;)Ljava/lang/String; method_27027 getStatTranslationKey + p 0 stat + m (Lnet/minecraft/class_447;Lnet/minecraft/class_364;)V method_73419 method_73419 + p 1 child + m (Lnet/minecraft/class_339;)V method_73415 method_73415 + p 1 child + m ()V method_2300 onStatsReady +c net/minecraft/class_447$class_11776 net/minecraft/client/gui/screen/StatsScreen$StatsTab + f Lnet/minecraft/class_350; field_62171 widget + m (Lnet/minecraft/class_447;Lnet/minecraft/class_2561;Lnet/minecraft/class_350;)V + p 2 title + p 3 widget +c net/minecraft/class_447$class_4198 net/minecraft/client/gui/screen/StatsScreen$GeneralStatsListWidget + m (Lnet/minecraft/class_3445;)Ljava/lang/String; method_27028 method_27028 + p 0 stat + m (Lnet/minecraft/class_447;Lnet/minecraft/class_310;)V + p 2 client +c net/minecraft/class_447$class_4198$class_4197 net/minecraft/client/gui/screen/StatsScreen$GeneralStatsListWidget$Entry + f Lnet/minecraft/class_2561; field_26547 displayName + f Lnet/minecraft/class_3445; field_18749 stat + m ()Ljava/lang/String; method_37074 getFormatted + m (Lnet/minecraft/class_447$class_4198;Lnet/minecraft/class_3445;)V + p 2 stat +c net/minecraft/class_447$class_4202 net/minecraft/client/gui/screen/StatsScreen$EntityStatsListWidget + f Lnet/minecraft/class_447; field_18763 screen + m (Lnet/minecraft/class_447;Lnet/minecraft/class_310;)V + p 2 client +c net/minecraft/class_447$class_4202$class_4201 net/minecraft/client/gui/screen/StatsScreen$EntityStatsListWidget$Entry + f Z field_26550 killedAny + f Lnet/minecraft/class_2561; field_26548 entityTypeName + f Z field_26552 killedByAny + f Lnet/minecraft/class_2561; field_26549 killedText + f Lnet/minecraft/class_2561; field_26551 killedByText + m (Lnet/minecraft/class_447$class_4202;Lnet/minecraft/class_1299;)V + p 2 entityType +c net/minecraft/class_447$class_4200 net/minecraft/client/gui/screen/StatsScreen$ItemStatsListWidget + f Ljava/util/Comparator; field_18758 comparator + f I field_18760 listOrder + f Lnet/minecraft/class_3448; field_18759 selectedStatType + f Ljava/util/List; field_18755 itemStatTypes + f Ljava/util/List; field_18754 blockStatTypes + m (I)I method_57742 getIconX + p 1 index + m (I)Lnet/minecraft/class_3448; method_19410 getStatType + p 1 headerColumn + m (Ljava/util/Comparator;)V method_73423 sortStats + p 1 comparator + m (Ljava/util/List;Lnet/minecraft/class_447$class_4200$class_11772;)V method_73422 method_73422 + p 1 child + m ()Ljava/util/List; method_73424 getStatEntries + m (Lnet/minecraft/class_3448;)I method_19409 getHeaderIndex + p 1 statType + m (Lnet/minecraft/class_447;Lnet/minecraft/class_310;)V + p 2 client + m (Lnet/minecraft/class_3448;)V method_19408 selectStatType + p 1 statType +c net/minecraft/class_447$class_4200$class_450 net/minecraft/client/gui/screen/StatsScreen$ItemStatsListWidget$ItemComparator + m (Ljava/lang/Object;Ljava/lang/Object;)I compare compare + p 2 b + p 1 a + m (Lnet/minecraft/class_447$class_4200$class_4199;Lnet/minecraft/class_447$class_4200$class_4199;)I method_2297 compare +c net/minecraft/class_447$class_4200$class_4199 net/minecraft/client/gui/screen/StatsScreen$ItemStatsListWidget$StatEntry + f Lnet/minecraft/class_1792; field_33830 item + f Lnet/minecraft/class_447$class_4200$class_4199$class_11775; field_62169 button + m (Lnet/minecraft/class_447$class_4200;Lnet/minecraft/class_1792;)V + p 2 item + m ()Lnet/minecraft/class_1792; method_37307 getItem + m (Lnet/minecraft/class_332;Lnet/minecraft/class_3445;IIZ)V method_19405 render + p 1 context + p 5 white + p 4 y + p 3 x + p 2 stat +c net/minecraft/class_447$class_4200$class_4199$class_11775 net/minecraft/client/gui/screen/StatsScreen$ItemStatsListWidget$StatEntry$ItemStackInSlotWidget + m (Lnet/minecraft/class_447$class_4200$class_4199;Lnet/minecraft/class_1799;)V + p 2 stack +c net/minecraft/class_447$class_4200$class_11773 net/minecraft/client/gui/screen/StatsScreen$ItemStatsListWidget$Header + f Lnet/minecraft/class_447$class_4200$class_11773$class_11774; field_62164 itemUsedButton + f Lnet/minecraft/class_447$class_4200$class_11773$class_11774; field_62165 itemPickedUpButton + f Lnet/minecraft/class_447$class_4200$class_11773$class_11774; field_62166 itemDroppedButton + f Lnet/minecraft/class_447$class_4200$class_11773$class_11774; field_62161 blockMinedButton + f Lnet/minecraft/class_447$class_4200$class_11773$class_11774; field_62162 itemBrokenButton + f Lnet/minecraft/class_447$class_4200$class_11773$class_11774; field_62163 itemCraftedButton + f Lnet/minecraft/class_2960; field_62159 ITEM_PICKED_UP_TEXTURE + f Lnet/minecraft/class_2960; field_62156 ITEM_BROKEN_TEXTURE + f Lnet/minecraft/class_2960; field_62155 BLOCK_MINED_TEXTURE + f Lnet/minecraft/class_2960; field_62158 ITEM_USED_TEXTURE + f Lnet/minecraft/class_2960; field_62157 ITEM_CRAFTED_TEXTURE + f Ljava/util/List; field_62167 buttons + f Lnet/minecraft/class_2960; field_62160 ITEM_DROPPED_TEXTURE +c net/minecraft/class_447$class_4200$class_11773$class_11774 net/minecraft/client/gui/screen/StatsScreen$ItemStatsListWidget$Header$HeaderButton + f Lnet/minecraft/class_2960; field_62168 texture + m (ILnet/minecraft/class_447$class_4200;Lnet/minecraft/class_4185;)V method_73425 method_73425 + p 2 button + m (Lnet/minecraft/class_447$class_4200$class_11773;ILnet/minecraft/class_2960;)V + p 2 index + p 3 texture +c net/minecraft/class_447$class_4200$class_11772 net/minecraft/client/gui/screen/StatsScreen$ItemStatsListWidget$Entry +c net/minecraft/class_9749 net/minecraft/world/explosion/AdvancedExplosionBehavior + f Ljava/util/Optional; field_51784 knockbackModifier + f Ljava/util/Optional; field_51785 immuneBlocks + f Z field_51782 destroyBlocks + f Z field_51783 damageEntities + m (ZZLjava/util/Optional;Ljava/util/Optional;)V + p 1 destroyBlocks + p 3 knockbackModifier + p 2 damageEntities + p 4 immuneBlocks +c net/minecraft/class_9748 net/minecraft/unused/packageinfo/PackageInfo9748 +c net/minecraft/class_9747 net/minecraft/enchantment/provider/EnchantmentProviders + f Lnet/minecraft/class_5321; field_51772 PILLAGER_SPAWN_CROSSBOW + f Lnet/minecraft/class_5321; field_51771 MOB_SPAWN_EQUIPMENT + f Lnet/minecraft/class_5321; field_51774 PILLAGER_POST_WAVE_5_RAID + f Lnet/minecraft/class_5321; field_51775 VINDICATOR_RAID + f Lnet/minecraft/class_5321; field_51773 PILLAGER_POST_WAVE_3_RAID + f Lnet/minecraft/class_5321; field_51777 ENDERMAN_LOOT_DROP + f Lnet/minecraft/class_5321; field_51776 VINDICATOR_POST_WAVE_5_RAID + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_60272 of + p 0 id + m (Lnet/minecraft/class_7891;)V method_60273 bootstrap + p 0 registry +c net/minecraft/class_9746 net/minecraft/enchantment/provider/TradeRebalanceEnchantmentProviders + f Lnet/minecraft/class_5321; field_51761 SAVANNA_ARMORER_CHESTPLATE_5 + f Lnet/minecraft/class_5321; field_51756 PLAINS_ARMORER_LEGGINGS_5 + f Lnet/minecraft/class_5321; field_51744 TAIGA_ARMORER_CHESTPLATE_5 + f Lnet/minecraft/class_5321; field_51766 SNOW_ARMORER_HELMET_5 + f Lnet/minecraft/class_5321; field_51736 JUNGLE_ARMORER_HELMET_5 + f Lnet/minecraft/class_5321; field_51758 SAVANNA_ARMORER_LEGGINGS_4 + f Lnet/minecraft/class_5321; field_51746 DESERT_ARMORER_LEGGINGS_4 + f Lnet/minecraft/class_5321; field_51768 JUNGLE_ARMORER_LEGGINGS_4 + f Lnet/minecraft/class_5321; field_51752 PLAINS_ARMORER_LEGGINGS_4 + f Lnet/minecraft/class_5321; field_51740 SWAMP_ARMORER_HELMET_4 + f Lnet/minecraft/class_5321; field_51762 SAVANNA_ARMORER_HELMET_5 + f Lnet/minecraft/class_5321; field_51754 PLAINS_ARMORER_HELMET_4 + f Lnet/minecraft/class_5321; field_51742 SWAMP_ARMORER_HELMET_5 + f Lnet/minecraft/class_5321; field_51764 SNOW_ARMORER_HELMET_4 + f Lnet/minecraft/class_5321; field_51738 SWAMP_ARMORER_LEGGINGS_4 + f Lnet/minecraft/class_5321; field_51748 DESERT_ARMORER_HELMET_4 + f Lnet/minecraft/class_5321; field_51770 JUNGLE_ARMORER_HELMET_4 + f Lnet/minecraft/class_5321; field_51750 DESERT_ARMORER_CHESTPLATE_5 + f Lnet/minecraft/class_5321; field_51760 SAVANNA_ARMORER_HELMET_4 + f Lnet/minecraft/class_5321; field_51745 DESERT_ARMORER_BOOTS_4 + f Lnet/minecraft/class_5321; field_51767 JUNGLE_ARMORER_BOOTS_4 + f Lnet/minecraft/class_5321; field_51755 PLAINS_ARMORER_BOOTS_5 + f Lnet/minecraft/class_5321; field_51747 DESERT_ARMORER_CHESTPLATE_4 + f Lnet/minecraft/class_5321; field_51769 JUNGLE_ARMORER_CHESTPLATE_4 + f Lnet/minecraft/class_5321; field_51735 JUNGLE_ARMORER_BOOTS_5 + f Lnet/minecraft/class_5321; field_51757 SAVANNA_ARMORER_BOOTS_4 + f Lnet/minecraft/class_5321; field_51741 SWAMP_ARMORER_BOOTS_5 + f Lnet/minecraft/class_5321; field_51763 SNOW_ARMORER_BOOTS_4 + f Lnet/minecraft/class_5321; field_51751 PLAINS_ARMORER_BOOTS_4 + f Lnet/minecraft/class_5321; field_51743 TAIGA_ARMORER_LEGGINGS_5 + f Lnet/minecraft/class_5321; field_51765 SNOW_ARMORER_BOOTS_5 + f Lnet/minecraft/class_5321; field_51753 PLAINS_ARMORER_CHESTPLATE_4 + f Lnet/minecraft/class_5321; field_51749 DESERT_ARMORER_LEGGINGS_5 + f Lnet/minecraft/class_5321; field_51737 SWAMP_ARMORER_BOOTS_4 + f Lnet/minecraft/class_5321; field_51759 SAVANNA_ARMORER_CHESTPLATE_4 + f Lnet/minecraft/class_5321; field_51739 SWAMP_ARMORER_CHESTPLATE_4 + m (Lnet/minecraft/class_7891;)V method_60271 bootstrap + p 0 registry +c net/minecraft/class_442 net/minecraft/client/gui/screen/TitleScreen + f Z field_18222 doBackgroundFade + f J field_17772 backgroundFadeStart + f Lnet/minecraft/class_8519; field_2586 splashText + f Lorg/slf4j/Logger; field_23775 LOGGER + f Ljava/lang/String; field_32272 DEMO_WORLD_NAME + f Lnet/minecraft/class_4399; field_2592 realmsNotificationGui + f Lnet/minecraft/class_8020; field_41847 logoDrawer + f Lnet/minecraft/class_2561; field_47850 NARRATOR_SCREEN_TITLE + f Lnet/minecraft/class_2561; field_32271 COPYRIGHT + m (Lnet/minecraft/class_4185;)V method_19864 method_19864 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19862 method_19862 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19860 onMultiplayerButtonPressed + p 1 button + m (II)I method_2251 addDemoWidgets + p 1 y + p 2 spacingY + m (ZLnet/minecraft/class_8020;)V + p 2 logoDrawer + p 1 doBackgroundFade + m (Lnet/minecraft/class_4185;)V method_41198 method_41198 + p 1 button + m (II)I method_64237 addDevelopmentWidgets + p 2 spacingY + p 1 y + m (Z)V method_20375 onDemoDeletionConfirmed + p 1 delete + m (Lnet/minecraft/class_4185;)V method_64238 method_64238 + p 1 button + m (Lnet/minecraft/class_1060;)V method_65810 registerTextures + p 0 textureManager + m (Lnet/minecraft/class_4185;)V method_19857 method_19857 + p 1 button + m (Lnet/minecraft/class_4185;)V method_20109 method_20109 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19863 method_19863 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19861 method_19861 + p 1 button + m (Lnet/minecraft/class_4185;)V method_55814 method_55814 + p 1 button + m (Z)V + p 1 doBackgroundFade + m ()Z method_2253 isRealmsNotificationsGuiDisplayed + m (ZLnet/minecraft/class_4185;)V method_19858 method_19858 + p 2 button + m (II)I method_2249 addNormalWidgets + p 2 spacingY + p 1 y + m ()Lnet/minecraft/class_2561; method_44692 getMultiplayerDisabledText + m ()Z method_31129 canReadDemoWorldData +c net/minecraft/class_9745 net/minecraft/enchantment/provider/SingleEnchantmentProvider + f Lcom/mojang/serialization/MapCodec; field_51734 CODEC + f Lnet/minecraft/class_6880; comp_2769 enchantment + f Lnet/minecraft/class_6017; comp_2770 level + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60270 method_60270 + p 0 instance + m ()Lnet/minecraft/class_6017; comp_2770 level + m ()Lnet/minecraft/class_6880; comp_2769 enchantment + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_6017;)V + p 1 enchantment + p 2 level +c net/minecraft/class_9744 net/minecraft/enchantment/provider/ByCostWithDifficultyEnchantmentProvider + f Lcom/mojang/serialization/MapCodec; field_51733 CODEC + f I field_52056 MAX_COST + f Lnet/minecraft/class_6885; comp_2766 enchantments + f I comp_2768 maxCostSpan + f I comp_2767 minCost + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60269 method_60269 + p 0 instance + m ()Lnet/minecraft/class_6885; comp_2766 enchantments + m ()I comp_2767 minCost + m ()I comp_2768 maxCostSpan + m (Lnet/minecraft/class_6885;II)V + p 1 enchantments + p 2 minCost + p 3 maxCostSpan +c net/minecraft/class_440 net/minecraft/client/gui/screen/option/SkinOptionsScreen + f Lnet/minecraft/class_2561; field_49512 TITLE_TEXT + m (Lnet/minecraft/class_1664;Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_60337 method_60337 + p 3 enabled + p 2 button + m (Lnet/minecraft/class_437;Lnet/minecraft/class_315;)V + p 1 parent + p 2 gameOptions +c net/minecraft/class_9743 net/minecraft/enchantment/provider/ByCostEnchantmentProvider + f Lcom/mojang/serialization/MapCodec; field_51732 CODEC + f Lnet/minecraft/class_6885; comp_2764 enchantments + f Lnet/minecraft/class_6017; comp_2765 cost + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60268 method_60268 + p 0 instance + m ()Lnet/minecraft/class_6885; comp_2764 enchantments + m ()Lnet/minecraft/class_6017; comp_2765 cost + m (Lnet/minecraft/class_6885;Lnet/minecraft/class_6017;)V + p 1 enchantments + p 2 cost +c net/minecraft/class_11240 net/minecraft/unused/packageinfo/PackageInfo11240 +c net/minecraft/class_11243 net/minecraft/client/gui/render/state/GlyphGuiElementRenderState + f Lnet/minecraft/class_11767; comp_4637 renderable + f Lnet/minecraft/class_8030; comp_4069 scissorArea + f Lorg/joml/Matrix3x2fc; comp_4077 pose + m ()Lnet/minecraft/class_11767; comp_4637 renderable + m ()Lorg/joml/Matrix3x2fc; comp_4077 pose + m (Lorg/joml/Matrix3x2fc;Lnet/minecraft/class_11767;Lnet/minecraft/class_8030;)V + p 1 pose + p 2 renderable + p 3 scissorArea +c net/minecraft/class_11244 net/minecraft/client/gui/render/state/SimpleGuiElementRenderState + m (Lnet/minecraft/class_4588;)V method_70917 setupVertices + p 1 vertices + m ()Lnet/minecraft/class_8030; comp_4069 scissorArea + m ()Lcom/mojang/blaze3d/pipeline/RenderPipeline; comp_4055 pipeline + m ()Lnet/minecraft/class_11231; comp_4056 textureSetup +c net/minecraft/class_11241 net/minecraft/client/gui/render/state/TexturedQuadGuiElementRenderState + f F comp_4063 u1 + f I comp_4061 y2 + f I comp_4060 x2 + f I comp_4058 x1 + f F comp_4066 v2 + f I comp_4059 y1 + f F comp_4064 u2 + f F comp_4065 v1 + f Lnet/minecraft/class_8030; comp_4274 bounds + f Lnet/minecraft/class_11231; comp_4056 textureSetup + f Lnet/minecraft/class_8030; comp_4069 scissorArea + f I comp_4067 color + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; comp_4055 pipeline + f Lorg/joml/Matrix3x2f; comp_4057 pose + m ()F comp_4063 u1 + m ()I comp_4061 y2 + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_11231;Lorg/joml/Matrix3x2f;IIIIFFFFILnet/minecraft/class_8030;)V + p 1 pipeline + p 12 color + p 13 scissorArea + p 10 v1 + p 11 v2 + p 8 u1 + p 9 u2 + p 6 x2 + p 7 y2 + p 4 x1 + p 5 y1 + p 2 textureSetup + p 3 pose + m (IIIILorg/joml/Matrix3x2f;Lnet/minecraft/class_8030;)Lnet/minecraft/class_8030; method_71526 createBounds + p 1 y1 + p 0 x1 + p 5 scissorArea + p 4 pose + p 3 y2 + p 2 x2 + m ()I comp_4060 x2 + m ()I comp_4058 x1 + m ()F comp_4066 v2 + m ()I comp_4059 y1 + m ()F comp_4064 u2 + m ()F comp_4065 v1 + m ()Lorg/joml/Matrix3x2f; comp_4057 pose + m ()I comp_4067 color + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_11231;Lorg/joml/Matrix3x2f;IIIIFFFFILnet/minecraft/class_8030;Lnet/minecraft/class_8030;)V + p 1 pipeline + p 2 textureSetup + p 3 pose + p 4 x1 + p 5 y1 + p 6 x2 + p 7 y2 + p 8 u1 + p 9 u2 + p 10 v1 + p 11 v2 + p 12 color + p 13 scissorArea + p 14 bounds +c net/minecraft/class_11242 net/minecraft/client/gui/render/state/ColoredQuadGuiElementRenderState + f Lnet/minecraft/class_8030; comp_4274 bounds + f Lnet/minecraft/class_11231; comp_4056 textureSetup + f Lnet/minecraft/class_8030; comp_4069 scissorArea + f I comp_4076 col2 + f I comp_4072 y0 + f I comp_4073 x1 + f I comp_4074 y1 + f I comp_4075 col1 + f I comp_4071 x0 + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; comp_4055 pipeline + f Lorg/joml/Matrix3x2fc; comp_4070 pose + m (IIIILorg/joml/Matrix3x2fc;Lnet/minecraft/class_8030;)Lnet/minecraft/class_8030; method_71527 createBounds + p 2 x1 + p 1 y0 + p 0 x0 + p 5 scissorArea + p 4 pose + p 3 y1 + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_11231;Lorg/joml/Matrix3x2fc;IIIIIILnet/minecraft/class_8030;)V + p 9 col2 + p 10 scissorArea + p 7 y1 + p 8 col1 + p 5 y0 + p 6 x1 + p 3 pose + p 4 x0 + p 1 pipeline + p 2 textureSetup + m ()I comp_4075 col1 + m ()I comp_4076 col2 + m ()I comp_4071 x0 + m ()I comp_4072 y0 + m ()I comp_4073 x1 + m ()I comp_4074 y1 + m ()Lorg/joml/Matrix3x2fc; comp_4070 pose + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_11231;Lorg/joml/Matrix3x2fc;IIIIIILnet/minecraft/class_8030;Lnet/minecraft/class_8030;)V + p 1 pipeline + p 2 textureSetup + p 3 pose + p 4 x0 + p 5 y0 + p 6 x1 + p 7 y1 + p 8 col1 + p 9 col2 + p 10 scissorArea + p 11 bounds +c net/minecraft/class_11247 net/minecraft/client/gui/render/state/TextGuiElementRenderState + f Z field_60749 shadow + f Lnet/minecraft/class_5481; field_60743 orderedText + f Lnet/minecraft/class_327; field_60742 textRenderer + f I field_60747 color + f I field_60748 backgroundColor + f Lnet/minecraft/class_327$class_11465; field_60751 preparation + f Lnet/minecraft/class_8030; field_60750 clipBounds + f I field_60745 x + f I field_60746 y + f Z field_63891 trackEmpty + f Lorg/joml/Matrix3x2fc; field_60744 matrix + f Lnet/minecraft/class_8030; field_60752 bounds + m ()Lnet/minecraft/class_327$class_11465; method_71837 prepare + m (Lnet/minecraft/class_327;Lnet/minecraft/class_5481;Lorg/joml/Matrix3x2fc;IIIIZZLnet/minecraft/class_8030;)V + p 9 trackEmpty + p 10 clipBounds + p 7 backgroundColor + p 8 shadow + p 5 y + p 6 color + p 3 matrix + p 4 x + p 1 textRenderer + p 2 orderedText +c net/minecraft/class_11245 net/minecraft/client/gui/render/state/ItemGuiElementRenderState + f Lnet/minecraft/class_8030; field_60997 oversizedBounds + f Lnet/minecraft/class_8030; field_60996 scissorArea + f Lnet/minecraft/class_8030; field_60998 bounds + f Lorg/joml/Matrix3x2f; field_60992 pose + f Lnet/minecraft/class_11540; field_60993 state + f I field_60995 y + f Ljava/lang/String; field_60991 name + f I field_60994 x + m ()Lorg/joml/Matrix3x2f; method_72120 pose + m (Lnet/minecraft/class_8030;)Lnet/minecraft/class_8030; method_72119 createBounds + p 1 rect + m ()I method_72123 y + m (Ljava/lang/String;Lorg/joml/Matrix3x2f;Lnet/minecraft/class_11540;IILnet/minecraft/class_8030;)V + p 5 y + p 6 scissor + p 1 name + p 2 pose + p 3 state + p 4 x + m ()Ljava/lang/String; method_72118 name + m ()Lnet/minecraft/class_11540; method_72121 state + m ()Lnet/minecraft/class_8030; method_72125 oversizedBounds + m ()Lnet/minecraft/class_8030; method_72126 createOversizedBounds + m ()Lnet/minecraft/class_8030; method_72124 scissorArea + m ()I method_72122 x +c net/minecraft/class_11246 net/minecraft/client/gui/render/state/GuiRenderState + f Ljava/util/List; field_60043 rootLayers + f Lnet/minecraft/class_8030; field_60455 currentLayerBounds + f Ljava/util/Set; field_60046 itemModelKeys + f I field_60314 blurLayer + f Lnet/minecraft/class_11246$class_11276; field_60044 currentLayer + m (Ljava/util/Comparator;Lnet/minecraft/class_11246$class_11276;)V method_71063 method_71063 + p 1 layer + m (Ljava/util/function/Consumer;)V method_71068 forEachTextElement + p 1 textElementStateConsumer + m (Lnet/minecraft/class_8030;)V method_71532 findAndGoToLayerIntersecting + p 1 bounds + m (Lnet/minecraft/class_11241;)V method_71996 addSimpleElementToCurrentLayer + p 1 state + m (Lnet/minecraft/class_11247;)V method_70921 addText + p 1 state + m (Ljava/util/function/Consumer;)V method_71071 forEachSpecialElement + p 1 specialElementStateConsumer + m (Ljava/util/function/Consumer;Lnet/minecraft/class_11246$class_11276;)V method_71065 method_71065 + p 2 layer + m (Lnet/minecraft/class_11244;)V method_71997 addPreparedTextElement + p 1 state + m ()Ljava/util/Set; method_71078 getItemModelKeys + m (Lnet/minecraft/class_11246$class_11276;Ljava/util/function/Consumer;)V method_71061 traverseLayers + p 2 layerConsumer + p 1 layer + m ()V method_71059 createNewRootLayer + m ()V method_71067 goUpLayer + m (Ljava/util/function/Consumer;Lnet/minecraft/class_11246$class_11276;)V method_71069 method_71069 + p 2 layer + m ()V method_71299 applyBlur + m (Lnet/minecraft/class_11384;)Z method_71531 findAndGoToLayerToAdd + p 1 state + m (Lnet/minecraft/class_11245;)V method_70920 addItem + p 1 state + m (Lnet/minecraft/class_8030;)V method_71529 onElementAdded + p 1 bounds + m (Ljava/util/Comparator;)V method_71062 sortSimpleElements + p 1 simpleElementStateComparator + m (Ljava/util/function/Consumer;Lnet/minecraft/class_11246$class_11276;)V method_71066 method_71066 + p 1 layer + m (Ljava/util/function/Consumer;Lnet/minecraft/class_11246$class_11325;)V method_71060 forEachSimpleElement + p 2 filter + p 1 consumer + m (Ljava/util/function/Consumer;)V method_71064 forEachItemElement + p 1 itemElementStateConsumer + m (Lnet/minecraft/class_11256;)V method_70922 addSpecialElement + p 1 state + m (Ljava/util/function/Consumer;Lnet/minecraft/class_11246$class_11276;)V method_71072 method_71072 + p 2 layer + m ()V method_70926 clear + m (Ljava/util/function/Consumer;Lnet/minecraft/class_11246$class_11325;)V method_71074 forEachLayer + p 1 layerConsumer + p 2 filter + m (Lnet/minecraft/class_8030;Ljava/util/List;)Z method_71530 anyIntersect + p 2 elementRenderStates + p 1 bounds + m (Lnet/minecraft/class_11244;)V method_70919 addSimpleElement + p 1 state +c net/minecraft/class_11246$class_11276 net/minecraft/client/gui/render/state/GuiRenderState$Layer + f Ljava/util/List; field_60873 preparedTextElementRenderStates + f Ljava/util/List; field_60052 textElementRenderStates + f Ljava/util/List; field_60053 specialElementRenderStates + f Ljava/util/List; field_60050 simpleElementRenderStates + f Ljava/util/List; field_60051 itemElementRenderStates + f Lnet/minecraft/class_11246$class_11276; field_60048 up + f Lnet/minecraft/class_11246$class_11276; field_60047 parent + m (Lnet/minecraft/class_11244;)V method_71079 addSimpleElement + p 1 state + m (Lnet/minecraft/class_11244;)V method_71998 addPreparedText + p 1 state + m (Lnet/minecraft/class_11246$class_11276;)V + p 1 parent + m (Lnet/minecraft/class_11247;)V method_71081 addText + p 1 state + m (Lnet/minecraft/class_11245;)V method_71080 addItem + p 1 state + m (Lnet/minecraft/class_11256;)V method_71082 addSpecialElement + p 1 state +c net/minecraft/class_11246$class_11325 net/minecraft/client/gui/render/state/GuiRenderState$LayerFilter + f Lnet/minecraft/class_11246$class_11325; field_60317 AFTER_BLUR + f Lnet/minecraft/class_11246$class_11325; field_60316 BEFORE_BLUR + f Lnet/minecraft/class_11246$class_11325; field_60315 ALL +c net/minecraft/class_11249 net/minecraft/unused/packageinfo/PackageInfo11249 +c net/minecraft/class_9753 net/minecraft/loot/provider/number/EnchantmentLevelLootNumberProvider + f Lcom/mojang/serialization/MapCodec; field_51813 CODEC + f Lnet/minecraft/class_9704; comp_2784 amount + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60312 method_60312 + p 0 instance + m (Lnet/minecraft/class_9704;)Lnet/minecraft/class_9753; method_60313 create + p 0 amount + m ()Lnet/minecraft/class_9704; comp_2784 amount + m (Lnet/minecraft/class_9704;)V + p 1 amount +c net/minecraft/class_457 net/minecraft/client/gui/screen/advancement/AdvancementsScreen + f Lnet/minecraft/class_632; field_2721 advancementHandler + f Ljava/util/Map; field_2719 tabs + f Lnet/minecraft/class_8132; field_49530 layout + f I field_32306 PAGE_OFFSET_X + f I field_32308 TITLE_OFFSET_X + f Lnet/minecraft/class_2960; field_2717 WINDOW_TEXTURE + f I field_32300 PAGE_WIDTH + f I field_32299 WINDOW_HEIGHT + f Lnet/minecraft/class_2561; field_26553 SAD_LABEL_TEXT + f Lnet/minecraft/class_2561; field_26555 ADVANCEMENTS_TEXT + f Lnet/minecraft/class_454; field_2720 selectedTab + f I field_32309 TITLE_OFFSET_Y + f I field_32307 PAGE_OFFSET_Y + f Z field_2718 movingTab + f I field_32301 PAGE_HEIGHT + f I field_32298 WINDOW_WIDTH + f Lnet/minecraft/class_2561; field_26554 EMPTY_TEXT + f Lnet/minecraft/class_437; field_49531 parent + m (Lnet/minecraft/class_332;II)V method_2337 drawAdvancementTree + p 1 context + p 3 y + p 2 x + m (Lnet/minecraft/class_8781;)Lnet/minecraft/class_454; method_2336 getTab + p 1 advancement + m (Lnet/minecraft/class_332;IIII)V method_2338 drawWidgetTooltip + p 5 y + p 1 context + p 2 mouseX + p 3 mouseY + p 4 x + m (Lnet/minecraft/class_4185;)V method_57743 method_57743 + p 1 button + m (Lnet/minecraft/class_457;Lnet/minecraft/class_364;)V method_57744 method_57744 + p 1 child + m (Lnet/minecraft/class_8781;)Lnet/minecraft/class_456; method_2335 getAdvancementWidget + p 1 advancement + m (Lnet/minecraft/class_632;)V + p 1 advancementHandler + m (Lnet/minecraft/class_632;Lnet/minecraft/class_437;)V + p 1 advancementHandler + p 2 parent + m (Lnet/minecraft/class_332;IIII)V method_2334 drawWindow + p 5 mouseY + p 1 context + p 2 x + p 3 y + p 4 mouseX +c net/minecraft/class_9752 net/minecraft/loot/condition/EnchantmentActiveCheckLootCondition + f Lcom/mojang/serialization/MapCodec; field_51807 CODEC + f Z comp_2780 active + m (Lnet/minecraft/class_47;)Z method_60304 test + m ()Lnet/minecraft/class_5341$class_210; method_60305 requireActive + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60303 method_60303 + p 0 instance + m (Ljava/lang/Object;)Z test test + p 1 context + m ()Lnet/minecraft/class_5341$class_210; method_60306 requireInactive + m ()Z comp_2780 active + m (Z)V + p 1 active +c net/minecraft/class_456 net/minecraft/client/gui/screen/advancement/AdvancementWidget + f Ljava/util/List; field_2707 children + f Lnet/minecraft/class_2960; field_45425 TITLE_BOX_TEXTURE + f Ljava/util/List; field_2705 description + f Ljava/util/List; field_55105 title + f Lnet/minecraft/class_454; field_2703 tab + f Lnet/minecraft/class_310; field_2704 client + f [I field_24262 SPLIT_OFFSET_CANDIDATES + f I field_2710 y + f I field_32297 TITLE_MAX_WIDTH + f Lnet/minecraft/class_8781; field_46143 advancement + f I field_32295 TITLE_OFFSET_X + f I field_32291 ICON_OFFSET_Y + f Lnet/minecraft/class_185; field_2712 display + f Lnet/minecraft/class_167; field_2714 progress + f I field_2715 width + f Lnet/minecraft/class_456; field_2706 parent + f I field_2711 x + f I field_32296 TITLE_OFFSET_Y + f I field_32292 ICON_SIZE + f I field_32290 ICON_OFFSET_X + m ()I method_35737 getWidth + m (Lnet/minecraft/class_332;II)V method_2325 renderWidgets + p 1 context + p 2 x + p 3 y + m (IIII)Z method_2329 shouldRender + p 3 mouseX + p 2 originY + p 1 originX + p 4 mouseY + m (Lnet/minecraft/class_8781;)Lnet/minecraft/class_456; method_2328 getParent + p 1 advancement + m (Lnet/minecraft/class_454;Lnet/minecraft/class_310;Lnet/minecraft/class_8781;Lnet/minecraft/class_185;)V + p 4 display + p 3 advancement + p 2 client + p 1 tab + m (Lnet/minecraft/class_332;IIFII)V method_2331 drawTooltip + p 2 originX + p 1 context + p 4 alpha + p 3 originY + p 6 y + p 5 x + m ()I method_2327 getX + m (Lnet/minecraft/class_456;)V method_2322 addChild + p 1 widget + m ()V method_2332 addToTree + m (Lnet/minecraft/class_5225;Ljava/util/List;)F method_27572 getMaxWidth + p 0 textHandler + p 1 lines + m ()I method_61041 getProgressWidth + m (Lnet/minecraft/class_332;Ljava/util/List;III)V method_65186 drawText + p 1 context + p 3 x + p 2 text + p 5 color + p 4 y + m (Lnet/minecraft/class_167;)V method_2333 setProgress + p 1 progress + m (Lnet/minecraft/class_2561;I)Ljava/util/List; method_2330 wrapDescription + p 1 text + p 2 width + m ()I method_2326 getY + m (Lnet/minecraft/class_332;IIZ)V method_2323 renderLines + p 4 border + p 1 context + p 2 x + p 3 y +c net/minecraft/class_9751 net/minecraft/world/gen/blockpredicate/UnobstructedBlockPredicate + f Lcom/mojang/serialization/MapCodec; field_51789 CODEC + f Lnet/minecraft/class_2382; comp_2779 offset + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)Z method_60287 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60286 method_60286 + p 0 instance + m (Ljava/lang/Object;Ljava/lang/Object;)Z test test + p 1 world + p 2 pos + m ()Lnet/minecraft/class_2382; comp_2779 offset + m (Lnet/minecraft/class_2382;)V + p 1 offset +c net/minecraft/class_455 net/minecraft/client/gui/screen/advancement/AdvancementObtainedStatus + f Lnet/minecraft/class_2960; field_45426 boxTexture + f Lnet/minecraft/class_2960; field_45427 taskFrameTexture + f Lnet/minecraft/class_2960; field_45428 challengeFrameTexture + f Lnet/minecraft/class_2960; field_45429 goalFrameTexture + f Lnet/minecraft/class_455; field_2699 UNOBTAINED + f Lnet/minecraft/class_455; field_2701 OBTAINED + m (Lnet/minecraft/class_189;)Lnet/minecraft/class_2960; method_52754 getFrameTexture + p 1 frame + m (Ljava/lang/String;ILnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V + p 6 goalFrameTexture + p 5 challengeFrameTexture + p 4 taskFrameTexture + p 3 boxTexture + m ()Lnet/minecraft/class_2960; method_52753 getBoxTexture +c net/minecraft/class_9750 net/minecraft/predicate/entity/MovementPredicate + f Lcom/mojang/serialization/Codec; field_51786 CODEC + f Lnet/minecraft/class_2096$class_2099; comp_2776 horizontalSpeed + f Lnet/minecraft/class_2096$class_2099; comp_2775 speed + f Lnet/minecraft/class_2096$class_2099; comp_2778 fallDistance + f Lnet/minecraft/class_2096$class_2099; comp_2777 verticalSpeed + f Lnet/minecraft/class_2096$class_2099; comp_2772 x + f Lnet/minecraft/class_2096$class_2099; comp_2774 z + f Lnet/minecraft/class_2096$class_2099; comp_2773 y + m (DDDD)Z method_60277 test + p 1 x + p 7 fallDistance + p 3 y + p 5 z + m (Lnet/minecraft/class_2096$class_2099;)Lnet/minecraft/class_9750; method_60280 horizontalSpeed + p 0 horizontalSpeed + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60278 method_60278 + p 0 instance + m (Lnet/minecraft/class_2096$class_2099;)Lnet/minecraft/class_9750; method_60282 fallDistance + p 0 fallDistance + m (Lnet/minecraft/class_2096$class_2099;)Lnet/minecraft/class_9750; method_60281 verticalSpeed + p 0 verticalSpeed + m (Lnet/minecraft/class_2096$class_2099;)Lnet/minecraft/class_9750; method_60279 speed + p 0 speed + m ()Lnet/minecraft/class_2096$class_2099; comp_2778 fallDistance + m ()Lnet/minecraft/class_2096$class_2099; comp_2774 z + m ()Lnet/minecraft/class_2096$class_2099; comp_2775 speed + m ()Lnet/minecraft/class_2096$class_2099; comp_2776 horizontalSpeed + m ()Lnet/minecraft/class_2096$class_2099; comp_2777 verticalSpeed + m ()Lnet/minecraft/class_2096$class_2099; comp_2772 x + m ()Lnet/minecraft/class_2096$class_2099; comp_2773 y + m (Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;Lnet/minecraft/class_2096$class_2099;)V + p 1 x + p 2 y + p 3 z + p 4 speed + p 5 horizontalSpeed + p 6 verticalSpeed + p 7 fallDistance +c net/minecraft/class_454 net/minecraft/client/gui/screen/advancement/AdvancementTab + f Lnet/minecraft/class_456; field_2696 rootWidget + f D field_2689 originY + f Lnet/minecraft/class_457; field_2687 screen + f I field_2681 index + f Lnet/minecraft/class_2561; field_2686 title + f I field_2691 maxPanY + f I field_2693 minPanY + f Lnet/minecraft/class_310; field_2680 client + f Lnet/minecraft/class_185; field_2695 display + f Lnet/minecraft/class_453; field_2684 type + f Lnet/minecraft/class_1799; field_2697 icon + f Ljava/util/Map; field_2685 widgets + f F field_2688 alpha + f D field_2690 originX + f I field_2692 maxPanX + f I field_2694 minPanX + f Lnet/minecraft/class_8781; field_46142 root + f Z field_2683 initialized + m ()I method_35735 getIndex + m (Lnet/minecraft/class_456;Lnet/minecraft/class_8779;)V method_2319 addWidget + p 1 widget + p 2 advancement + m (Lnet/minecraft/class_332;II)V method_2315 drawIcon + p 3 y + p 2 x + p 1 context + m (IIDD)Z method_2316 isClickOnTab + p 5 mouseY + p 3 mouseX + p 2 screenY + p 1 screenX + m (Lnet/minecraft/class_332;IIIIZ)V method_2311 drawBackground + p 2 x + p 1 context + p 4 mouseX + p 3 y + p 6 selected + p 5 mouseY + m (Lnet/minecraft/class_332;IIII)V method_2314 drawWidgetTooltip + p 4 x + p 5 y + p 2 mouseX + p 3 mouseY + p 1 context + m (Lnet/minecraft/class_310;Lnet/minecraft/class_457;ILnet/minecraft/class_8781;)Lnet/minecraft/class_454; method_2317 create + p 0 client + p 2 index + p 1 screen + p 3 root + m (Lnet/minecraft/class_8781;)V method_2318 addAdvancement + p 1 advancement + m ()Lnet/minecraft/class_457; method_2312 getScreen + m ()Lnet/minecraft/class_2561; method_2309 getTitle + m (Lnet/minecraft/class_332;II)V method_2310 render + p 1 context + p 3 y + p 2 x + m ()Lnet/minecraft/class_185; method_35736 getDisplay + m ()Lnet/minecraft/class_453; method_35734 getType + m (Lnet/minecraft/class_310;Lnet/minecraft/class_457;Lnet/minecraft/class_453;ILnet/minecraft/class_8781;Lnet/minecraft/class_185;)V + p 5 root + p 6 display + p 1 client + p 2 screen + p 3 type + p 4 index + m ()Z method_76273 canScrollHorizontally + m (DD)V method_2313 move + p 1 offsetX + p 3 offsetY + m (Lnet/minecraft/class_8779;)Lnet/minecraft/class_456; method_2308 getWidget + p 1 advancement + m ()Lnet/minecraft/class_8781; method_53813 getRoot + m ()Z method_76274 canScrollVertically +c net/minecraft/class_459 net/minecraft/client/gui/screen/option/ControlsListWidget + f Lnet/minecraft/class_6599; field_2735 parent + f I field_2733 maxKeyNameLength + m ()V method_49007 updateChildren + m ()V method_49006 update + m (Lnet/minecraft/class_6599;Lnet/minecraft/class_310;)V + p 1 parent + p 2 client +c net/minecraft/class_459$class_462 net/minecraft/client/gui/screen/option/ControlsListWidget$KeyBindingEntry + f Lnet/minecraft/class_4185; field_2743 resetButton + f Z field_42497 duplicate + f Lnet/minecraft/class_304; field_2740 binding + f Lnet/minecraft/class_2561; field_2741 bindingName + f Lnet/minecraft/class_4185; field_2739 editButton + f Lnet/minecraft/class_2561; field_49534 RESET_TEXT + m (Lnet/minecraft/class_304;Lnet/minecraft/class_4185;)V method_19871 method_19871 + p 2 button + m (Lnet/minecraft/class_304;Lnet/minecraft/class_4185;)V method_19870 method_19870 + p 2 button + m (Lnet/minecraft/class_304;Lnet/minecraft/class_2561;Ljava/util/function/Supplier;)Lnet/minecraft/class_5250; method_46514 method_46514 + p 2 textSupplier + m (Lnet/minecraft/class_2561;Ljava/util/function/Supplier;)Lnet/minecraft/class_5250; method_46515 method_46515 + p 1 textSupplier + m (Lnet/minecraft/class_459;Lnet/minecraft/class_304;Lnet/minecraft/class_2561;)V + p 3 bindingName + p 2 binding +c net/minecraft/class_459$class_461 net/minecraft/client/gui/screen/option/ControlsListWidget$Entry + m ()V method_48269 update +c net/minecraft/class_459$class_460 net/minecraft/client/gui/screen/option/ControlsListWidget$CategoryEntry +c net/minecraft/class_458 net/minecraft/client/gui/screen/option/ControlsOptionsScreen + f Lnet/minecraft/class_2561; field_49532 TITLE_TEXT + m (Lnet/minecraft/class_4185;)V method_60341 method_60341 + p 1 button + m (Lnet/minecraft/class_315;)[Lnet/minecraft/class_7172; method_58232 getOptions + p 0 gameOptions + m (Lnet/minecraft/class_4185;)V method_60340 method_60340 + p 1 button + m (Lnet/minecraft/class_437;Lnet/minecraft/class_315;)V + p 1 parent + p 2 options +c net/minecraft/class_9759 net/minecraft/world/chunk/ChunkLoader + f Lnet/minecraft/class_9760; field_51851 chunkLoadingManager + f Lnet/minecraft/class_1923; field_51852 pos + f Ljava/util/List; field_51855 futures + f Z field_51854 pendingDisposal + f Lnet/minecraft/class_2806; field_51853 currentlyLoadingStatus + f Lnet/minecraft/class_2806; field_51850 targetStatus + f Z field_51857 allowGeneration + f Lnet/minecraft/class_9762; field_51856 chunks + m (Lnet/minecraft/class_9760;Lnet/minecraft/class_2806;Lnet/minecraft/class_1923;Lnet/minecraft/class_9762;)V + p 4 chunks + p 1 chunkLoadingManager + p 2 targetStatus + p 3 pos + m ()V method_60429 markPendingDisposal + m (Lnet/minecraft/class_2806;ZLnet/minecraft/class_9761;)Z method_60428 load + p 2 allowGeneration + p 3 chunkHolder + p 1 targetStatus + m (Lnet/minecraft/class_2806;Z)V method_60427 loadAll + p 2 allowGeneration + p 1 targetStatus + m ()V method_60432 loadNextStatus + m ()V method_60433 dispose + m ()Ljava/util/concurrent/CompletableFuture; method_60424 run + m (Lnet/minecraft/class_9760;Lnet/minecraft/class_2806;Lnet/minecraft/class_1923;)Lnet/minecraft/class_9759; method_60426 create + p 2 pos + p 0 chunkLoadingManager + p 1 targetStatus + m (Lnet/minecraft/class_2806;Z)I method_60430 getAdditionalLevel + p 2 generate + p 1 status + m ()Ljava/util/concurrent/CompletableFuture; method_60435 getLatestPendingFuture + m ()Z method_60434 isGenerationUnnecessary + m ()Lnet/minecraft/class_9761; method_60431 getHolder + m (Lnet/minecraft/class_9760;II)Lnet/minecraft/class_9761; method_60425 method_60425 + p 1 x + p 2 z +c net/minecraft/class_9758 net/minecraft/data/tag/rebalance/TradeRebalanceEnchantmentTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registriesFuture +c net/minecraft/class_9757 net/minecraft/registry/TradeRebalanceBuiltinRegistries + f Lnet/minecraft/class_7877; field_51847 REGISTRY_BUILDER + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletableFuture; method_60420 validate + p 0 registriesFuture +c net/minecraft/class_453 net/minecraft/client/gui/screen/advancement/AdvancementTabType + f I field_2669 tabCount + f I field_2671 width + f I field_2670 height + f Lnet/minecraft/class_453$class_8670; field_45423 selectedTextures + f Lnet/minecraft/class_453$class_8670; field_45424 unselectedTextures + f Lnet/minecraft/class_453; field_2673 BELOW + f Lnet/minecraft/class_453; field_2675 LEFT + f Lnet/minecraft/class_453; field_2677 RIGHT + f Lnet/minecraft/class_453; field_2678 ABOVE + m (IIIDD)Z method_2303 isClickOnTab + p 6 mouseY + p 1 screenX + p 2 screenY + p 3 index + p 4 mouseX + m ()I method_76622 getHeight + m ()I method_76621 getWidth + m (Ljava/lang/String;ILnet/minecraft/class_453$class_8670;Lnet/minecraft/class_453$class_8670;III)V + p 7 tabCount + p 5 width + p 6 height + p 3 selectedTextures + p 4 unselectedTextures + m (Lnet/minecraft/class_332;IIILnet/minecraft/class_1799;)V method_2306 drawIcon + p 3 y + p 4 index + p 5 stack + p 1 context + p 2 x + m ()I method_2304 getTabCount + m (Lnet/minecraft/class_332;IIZI)V method_2301 drawBackground + p 1 context + p 2 x + p 3 y + p 4 selected + p 5 index + m (I)I method_2305 getTabY + p 1 index + m (I)I method_2302 getTabX + p 1 index +c net/minecraft/class_453$class_8670 net/minecraft/client/gui/screen/advancement/AdvancementTabType$Textures + f Lnet/minecraft/class_2960; comp_1610 last + f Lnet/minecraft/class_2960; comp_1608 first + f Lnet/minecraft/class_2960; comp_1609 middle + m ()Lnet/minecraft/class_2960; comp_1608 first + m ()Lnet/minecraft/class_2960; comp_1609 middle + m ()Lnet/minecraft/class_2960; comp_1610 last + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V + p 1 first + p 2 middle + p 3 last +c net/minecraft/class_9756 net/minecraft/unused/packageinfo/PackageInfo9756 +c net/minecraft/class_9755 net/minecraft/unused/packageinfo/PackageInfo9755 +c net/minecraft/class_9754 net/minecraft/client/realms/gui/RealmsPopups + f Lnet/minecraft/class_2561; field_51821 WARNING_TEXT + f Lnet/minecraft/class_2561; field_51820 INFO_TEXT + f I field_51819 INFO_TEXT_COLOR + m (Lnet/minecraft/class_437;Lnet/minecraft/class_2561;Ljava/util/function/Consumer;)Lnet/minecraft/class_8816; method_60316 createInfoPopup + p 0 parent + p 2 onContinuePressed + p 1 message + m (Lnet/minecraft/class_437;Lnet/minecraft/class_2561;Ljava/util/function/Consumer;)Lnet/minecraft/class_8816; method_60318 createNonContinuableWarningPopup + p 2 onOkPressed + p 1 message + p 0 parent + m (Lnet/minecraft/class_437;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Ljava/util/function/Consumer;)Lnet/minecraft/class_8816; method_71199 createCustomPopup + p 0 parent + p 1 title + p 2 message + p 3 onContinuePressed + m (Lnet/minecraft/class_437;Lnet/minecraft/class_2561;Ljava/util/function/Consumer;)Lnet/minecraft/class_8816; method_60317 createContinuableWarningPopup + p 2 onContinuePressed + p 1 message + p 0 parent +c net/minecraft/class_11232 net/minecraft/unused/packageinfo/PackageInfo11232 +c net/minecraft/class_11233 net/minecraft/client/gui/render/BannerResultGuiElementRenderer + f Lnet/minecraft/class_11701; field_61624 sprite + m (Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_11701;)V + p 2 sprite + p 1 immediate + m (Lnet/minecraft/class_11250;Lnet/minecraft/class_4587;)V method_70904 render +c net/minecraft/class_11231 net/minecraft/client/texture/TextureSetup + f Lnet/minecraft/class_11231; field_59931 EMPTY + f I field_60313 shuffleSeed + f Lcom/mojang/blaze3d/textures/GpuTextureView; comp_4054 texure2 + f Lnet/minecraft/class_12137; comp_5053 sampler0 + f Lnet/minecraft/class_12137; comp_5054 sampler1 + f Lnet/minecraft/class_12137; comp_5055 sampler2 + f Lcom/mojang/blaze3d/textures/GpuTextureView; comp_4052 texure0 + f Lcom/mojang/blaze3d/textures/GpuTextureView; comp_4053 texure1 + m (Lcom/mojang/blaze3d/textures/GpuTextureView;Lnet/minecraft/class_12137;)Lnet/minecraft/class_11231; method_70900 of + p 0 texture + p 1 sampler + m ()V method_71298 shuffleRenderingOrder + m (Lcom/mojang/blaze3d/textures/GpuTextureView;Lnet/minecraft/class_12137;Lcom/mojang/blaze3d/textures/GpuTextureView;Lnet/minecraft/class_12137;)Lnet/minecraft/class_11231; method_70901 of + p 2 texture1 + p 3 sampler1 + p 0 texture0 + p 1 sampler0 + m ()I method_71297 getSortKey + m ()Lnet/minecraft/class_11231; method_70899 empty + m (Lcom/mojang/blaze3d/textures/GpuTextureView;Lnet/minecraft/class_12137;)Lnet/minecraft/class_11231; method_70902 withLightmap + p 0 texture + p 1 sampler + m ()Lnet/minecraft/class_12137; comp_5055 sampler2 + m ()Lnet/minecraft/class_12137; comp_5054 sampler1 + m ()Lnet/minecraft/class_12137; comp_5053 sampler0 + m ()Lcom/mojang/blaze3d/textures/GpuTextureView; comp_4052 texure0 + m ()Lcom/mojang/blaze3d/textures/GpuTextureView; comp_4053 texure1 + m ()Lcom/mojang/blaze3d/textures/GpuTextureView; comp_4054 texure2 + m (Lcom/mojang/blaze3d/textures/GpuTextureView;Lcom/mojang/blaze3d/textures/GpuTextureView;Lcom/mojang/blaze3d/textures/GpuTextureView;Lnet/minecraft/class_12137;Lnet/minecraft/class_12137;Lnet/minecraft/class_12137;)V + p 1 texure0 + p 2 texure1 + p 3 texure2 + p 4 sampler0 + p 5 sampler1 + p 6 sampler2 +c net/minecraft/class_11236 net/minecraft/client/gui/render/ProfilerChartGuiElementRenderer + m (Lnet/minecraft/class_11253;Lnet/minecraft/class_4587;)V method_70910 render +c net/minecraft/class_11237 net/minecraft/client/gui/render/SignGuiElementRenderer + f Lnet/minecraft/class_11701; field_61627 sprite + m (Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_11701;)V + p 2 sprite + p 1 immediate + m (Lnet/minecraft/class_11254;Lnet/minecraft/class_4587;)V method_70911 render +c net/minecraft/class_11234 net/minecraft/client/gui/render/BookModelGuiElementRenderer + m (Lnet/minecraft/class_11251;Lnet/minecraft/class_4587;)V method_70908 render +c net/minecraft/class_11235 net/minecraft/client/gui/render/EntityGuiElementRenderer + f Lnet/minecraft/class_898; field_59932 entityRenderDispatcher + m (Lnet/minecraft/class_11252;Lnet/minecraft/class_4587;)V method_70909 render + m (Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_898;)V + p 2 entityRenderDispatcher + p 1 vertexConsumers +c net/minecraft/class_11238 net/minecraft/client/gui/render/PlayerSkinGuiElementRenderer + m (Lnet/minecraft/class_11255;Lnet/minecraft/class_4587;)V method_70912 render +c net/minecraft/class_11239 net/minecraft/client/gui/render/SpecialGuiElementRenderer + f Lnet/minecraft/class_11278; field_60042 projectionMatrix + f Lcom/mojang/blaze3d/textures/GpuTextureView; field_60572 textureView + f Lcom/mojang/blaze3d/textures/GpuTextureView; field_60573 depthTextureView + f Lcom/mojang/blaze3d/textures/GpuTexture; field_59935 texture + f Lnet/minecraft/class_4597$class_4598; field_59933 vertexConsumers + f Lcom/mojang/blaze3d/textures/GpuTexture; field_59936 depthTexture + m (ZII)V method_70914 prepareTextures + p 1 closePrevious + p 2 width + p 3 height + m (Lnet/minecraft/class_4597$class_4598;)V + p 1 vertexConsumers + m ()Ljava/lang/String; method_70906 getName + m ()Ljava/lang/Class; method_70903 getElementClass + m (Lnet/minecraft/class_11256;)Z method_72113 shouldBypassScaling + p 1 elementRenderer + m (Lnet/minecraft/class_11256;Lnet/minecraft/class_11246;)V method_72114 renderElement + p 1 element + p 2 state + m (II)F method_70907 getYOffset + p 1 height + p 2 windowScaleFactor + m (Lnet/minecraft/class_11256;Lnet/minecraft/class_11246;I)V method_70913 render + p 1 elementState + p 2 state + p 3 windowScaleFactor + m (Lnet/minecraft/class_11256;Lnet/minecraft/class_4587;)V method_70905 render + p 1 state + p 2 matrices +c net/minecraft/class_9720 net/minecraft/enchantment/effect/AttributeEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51706 CODEC + f Lnet/minecraft/class_2960; comp_2839 id + f Lnet/minecraft/class_6880; comp_2718 attribute + f Lnet/minecraft/class_9704; comp_2719 amount + f Lnet/minecraft/class_1322$class_1323; comp_2720 operation + m (ILnet/minecraft/class_3542;)Lnet/minecraft/class_1322; method_60228 createAttributeModifier + p 2 suffix + p 1 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60229 method_60229 + p 0 instance + m (Lnet/minecraft/class_3542;)Lnet/minecraft/class_2960; method_60769 getModifierId + p 1 suffix + m (ILnet/minecraft/class_1304;)Lcom/google/common/collect/HashMultimap; method_60230 getModifiers + p 1 level + p 2 slot + m ()Lnet/minecraft/class_6880; comp_2718 attribute + m ()Lnet/minecraft/class_1322$class_1323; comp_2720 operation + m ()Lnet/minecraft/class_2960; comp_2839 id + m ()Lnet/minecraft/class_9704; comp_2719 amount + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_6880;Lnet/minecraft/class_9704;Lnet/minecraft/class_1322$class_1323;)V + p 1 id + p 2 attribute + p 3 amount + p 4 operation +c net/minecraft/class_466 net/minecraft/client/gui/screen/ingame/BeaconScreen + f Lnet/minecraft/class_2960; field_45442 CANCEL_TEXTURE + f Lnet/minecraft/class_2960; field_45443 BUTTON_DISABLED_TEXTURE + f Lnet/minecraft/class_2960; field_45444 BUTTON_SELECTED_TEXTURE + f Lnet/minecraft/class_2960; field_45439 BUTTON_HIGHLIGHTED_TEXTURE + f Ljava/util/List; field_33832 buttons + f Lnet/minecraft/class_2960; field_2808 TEXTURE + f Lnet/minecraft/class_6880; field_17413 secondaryEffect + f Lnet/minecraft/class_2561; field_26560 PRIMARY_POWER_TEXT + f Lnet/minecraft/class_2561; field_26561 SECONDARY_POWER_TEXT + f Lnet/minecraft/class_6880; field_17412 primaryEffect + f Lnet/minecraft/class_2960; field_45440 BUTTON_TEXTURE + f Lnet/minecraft/class_2960; field_45441 CONFIRM_TEXTURE + m (ILnet/minecraft/class_466$class_6392;)V method_37075 method_37075 + p 1 button + m ()V method_37078 tickButtons + m (Lnet/minecraft/class_1704;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 1 handler + p 2 inventory + p 3 title + m (Lnet/minecraft/class_339;)V method_37076 addButton + p 1 button +c net/minecraft/class_466$class_470 net/minecraft/client/gui/screen/ingame/BeaconScreen$BaseButtonWidget + f Z field_2815 disabled + m (II)V + p 1 x + p 2 y + m (Z)V method_2401 setDisabled + p 1 disabled + m (Lnet/minecraft/class_332;)V method_18641 renderExtra + p 1 context + m ()Z method_2402 isDisabled + m (IILnet/minecraft/class_2561;)V + p 1 x + p 2 y + p 3 message +c net/minecraft/class_466$class_4072 net/minecraft/client/gui/screen/ingame/BeaconScreen$IconButtonWidget + f Lnet/minecraft/class_2960; field_45445 texture + m (IILnet/minecraft/class_2960;Lnet/minecraft/class_2561;)V + p 4 message + p 1 x + p 2 y +c net/minecraft/class_466$class_6392 net/minecraft/client/gui/screen/ingame/BeaconScreen$BeaconButtonWidget + m (I)V method_37080 tick + p 1 level +c net/minecraft/class_466$class_6393 net/minecraft/client/gui/screen/ingame/BeaconScreen$LevelTwoEffectButtonWidget + m (Lnet/minecraft/class_466;IILnet/minecraft/class_6880;)V + p 2 x + p 4 effect + p 3 y +c net/minecraft/class_466$class_469 net/minecraft/client/gui/screen/ingame/BeaconScreen$EffectButtonWidget + f I field_33833 level + f Z field_17416 primary + f Lnet/minecraft/class_6880; field_2813 effect + f Lnet/minecraft/class_2960; field_18223 sprite + m (Lnet/minecraft/class_6880;)V method_37081 init + p 1 effect + m (Lnet/minecraft/class_466;IILnet/minecraft/class_6880;ZI)V + p 6 level + p 4 effect + p 5 primary + p 2 x + p 3 y + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_5250; method_37082 getEffectName + p 1 effect +c net/minecraft/class_466$class_468 net/minecraft/client/gui/screen/ingame/BeaconScreen$DoneButtonWidget + m (Lnet/minecraft/class_466;II)V + p 3 y + p 2 x +c net/minecraft/class_466$class_467 net/minecraft/client/gui/screen/ingame/BeaconScreen$CancelButtonWidget + m (Lnet/minecraft/class_466;II)V + p 2 x + p 3 y +c net/minecraft/class_465 net/minecraft/client/gui/screen/ingame/HandledScreen + f I field_2800 y + f I field_2779 backgroundHeight + f I field_25270 playerInventoryTitleY + f Lnet/minecraft/class_2960; field_2801 BACKGROUND_TEXTURE + f Lnet/minecraft/class_2960; field_54269 SLOT_HIGHLIGHT_FRONT_TEXTURE + f Z field_2798 cancelNextRelease + f Z field_2794 cursorDragging + f I field_2803 draggedStackRemainder + f Lnet/minecraft/class_1735; field_2799 lastClickedSlot + f I field_25269 playerInventoryTitleX + f Ljava/util/List; field_52801 tooltipSubmenuHandlers + f I field_2778 heldButtonCode + f Lnet/minecraft/class_1735; field_2787 focusedSlot + f Lnet/minecraft/class_2561; field_29347 playerInventoryTitle + f I field_2790 heldButtonType + f Z field_2789 touchIsRightClickDrag + f Lnet/minecraft/class_1799; field_2782 touchDragStack + f I field_25268 titleY + f J field_2781 touchDropTimer + f Lnet/minecraft/class_1799; field_2791 quickMovingStack + f I field_25267 titleX + f I field_2776 x + f Lnet/minecraft/class_1735; field_2777 touchDragSlotStart + f Ljava/util/Set; field_2793 cursorDragSlots + f Lnet/minecraft/class_1703; field_2797 handler + f Lnet/minecraft/class_465$class_11277; field_60054 letGoTouchStack + f I field_2792 backgroundWidth + f Lnet/minecraft/class_2960; field_54268 SLOT_HIGHLIGHT_BACK_TEXTURE + f Lnet/minecraft/class_1735; field_2780 touchHoveredSlot + f Z field_2783 doubleClicking + m (Lnet/minecraft/class_1735;DD)Z method_2387 isPointOverSlot + p 4 pointY + p 1 slot + p 2 pointX + m (Lnet/minecraft/class_332;FII)V method_2389 drawBackground + p 4 mouseY + p 2 deltaTicks + p 3 mouseX + p 1 context + m (Lnet/minecraft/class_1735;)V method_61998 resetTooltipSubmenus + p 1 slot + m (Lnet/minecraft/class_332;)V method_71084 renderLetGoTouchStack + p 1 context + m (Lnet/minecraft/class_1735;Lnet/minecraft/class_1713;)V method_64239 onMouseClick + p 1 slot + p 2 actionType + m (Lnet/minecraft/class_332;Lnet/minecraft/class_1735;II)V method_2385 drawSlot + p 2 slot + p 3 mouseX + p 1 context + p 4 mouseY + m (Lnet/minecraft/class_332;)V method_64242 drawSlotHighlightFront + p 1 context + m (Lnet/minecraft/class_332;II)V method_71083 renderCursorStack + p 1 context + p 2 mouseX + p 3 mouseY + m (Lnet/minecraft/class_11908;)Z method_2384 handleHotbarKeyPressed + m (Lnet/minecraft/class_332;Lnet/minecraft/class_1799;IILjava/lang/String;)V method_2382 drawItem + p 4 y + p 3 x + p 2 stack + p 1 context + p 5 amountText + m (Lnet/minecraft/class_1703;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 3 title + p 2 inventory + p 1 handler + m (DD)Lnet/minecraft/class_1735; method_64240 getSlotAt + p 3 mouseY + p 1 mouseX + m (Lnet/minecraft/class_332;II)V method_2380 drawMouseoverTooltip + p 1 context + p 2 x + p 3 y + m (Lnet/minecraft/class_1735;IILnet/minecraft/class_1713;)V method_2383 onMouseClick + c @see net.minecraft.screen.ScreenHandler#onSlotClick(int, int, net.minecraft.screen.slot.SlotActionType, net.minecraft.entity.player.PlayerEntity) + p 1 slot + p 4 actionType + p 3 button + p 2 slotId + m (Lnet/minecraft/class_332;II)V method_2388 drawForeground + p 1 context + p 2 mouseX + p 3 mouseY + m ()V method_44339 endTouchDrag + m (Lnet/minecraft/class_1799;)Ljava/util/List; method_51454 getTooltipFromItem + p 1 stack + m ()V method_2379 calculateOffset + m (IIZ)V method_54590 onSlotChangedState + p 3 newState + p 2 handlerId + p 1 slotId + m (Lnet/minecraft/class_332;IIF)V method_71085 renderMain + p 3 mouseY + p 4 deltaTicks + p 1 context + p 2 mouseX + m (Lnet/minecraft/class_1799;)Z method_62001 isItemTooltipSticky + p 1 item + m ()V method_37432 handledScreenTick + m (DDII)Z method_2381 isClickOutsideBounds + p 5 left + p 6 top + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/class_11909;)V method_30107 onMouseClick + m (IIIIDD)Z method_2378 isPointWithinBounds + p 3 width + p 2 y + p 1 x + p 7 pointY + p 5 pointX + p 4 height + m (Lnet/minecraft/class_332;II)V method_64508 drawSlots + p 1 context + p 2 mouseX + p 3 mouseY + m (Lnet/minecraft/class_9930;)V method_62000 addTooltipSubmenuHandler + p 1 handler + m (Lnet/minecraft/class_332;)V method_64241 drawSlotHighlightBack + p 1 context +c net/minecraft/class_465$class_11277 net/minecraft/client/gui/screen/ingame/HandledScreen$LetGoTouchStack + f Lnet/minecraft/class_1799; comp_4155 item + f Lorg/joml/Vector2i; comp_4156 start + f Lorg/joml/Vector2i; comp_4157 end + f J comp_4158 time + m ()Lorg/joml/Vector2i; comp_4157 end + m ()Lorg/joml/Vector2i; comp_4156 start + m ()Lnet/minecraft/class_1799; comp_4155 item + m ()J comp_4158 time + m (Lnet/minecraft/class_1799;Lorg/joml/Vector2i;Lorg/joml/Vector2i;J)V + p 1 item + p 2 start + p 3 end + p 4 time +c net/minecraft/class_9728 net/minecraft/enchantment/effect/value/RemoveBinomialEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51714 CODEC + f Lnet/minecraft/class_9704; comp_2738 chance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60241 method_60241 + p 0 instance + m ()Lnet/minecraft/class_9704; comp_2738 chance + m (Lnet/minecraft/class_9704;)V + p 1 chance +c net/minecraft/class_9727 net/minecraft/enchantment/effect/entity/PlaySoundEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51713 CODEC + f Lnet/minecraft/class_5863; comp_2737 pitch + f Lnet/minecraft/class_5863; comp_2736 volume + f Ljava/util/List; comp_4984 soundEvents + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60240 method_60240 + p 0 instance + m ()Lnet/minecraft/class_5863; comp_2737 pitch + m ()Lnet/minecraft/class_5863; comp_2736 volume + m ()Ljava/util/List; comp_4984 soundEvents + m (Ljava/util/List;Lnet/minecraft/class_5863;Lnet/minecraft/class_5863;)V + p 1 soundEvents + p 2 volume + p 3 pitch +c net/minecraft/class_9726 net/minecraft/enchantment/effect/value/MultiplyEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51712 CODEC + f Lnet/minecraft/class_9704; comp_2734 factor + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60239 method_60239 + p 0 instance + m ()Lnet/minecraft/class_9704; comp_2734 factor + m (Lnet/minecraft/class_9704;)V + p 1 factor +c net/minecraft/class_9725 net/minecraft/enchantment/effect/entity/IgniteEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51711 CODEC + f Lnet/minecraft/class_9704; comp_2733 duration + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60237 method_60237 + p 0 instance + m ()Lnet/minecraft/class_9704; comp_2733 duration + m (Lnet/minecraft/class_9704;)V + p 1 duration +c net/minecraft/class_9724 net/minecraft/enchantment/effect/entity/ExplodeEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51710 CODEC + f Lnet/minecraft/class_2394; comp_2730 smallParticle + f Lnet/minecraft/class_2394; comp_2731 largeParticle + f Z comp_2728 createFire + f Z comp_2722 attributeToUser + f Lnet/minecraft/class_6880; comp_2732 sound + f Lnet/minecraft/class_9704; comp_2727 radius + f Lnet/minecraft/class_6012; comp_4599 blockParticles + f Lnet/minecraft/class_243; comp_2726 offset + f Lnet/minecraft/class_1937$class_7867; comp_2729 blockInteraction + f Ljava/util/Optional; comp_2723 damageType + f Ljava/util/Optional; comp_2724 knockbackMultiplier + f Ljava/util/Optional; comp_2725 immuneBlocks + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60236 method_60236 + p 0 instance + m (ILnet/minecraft/class_9704;)Ljava/lang/Float; method_60234 method_60234 + p 1 knockbackMultiplier + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_243;)Lnet/minecraft/class_1282; method_60235 getDamageSource + p 2 pos + p 1 user + m ()Lnet/minecraft/class_1937$class_7867; comp_2729 blockInteraction + m ()Lnet/minecraft/class_9704; comp_2727 radius + m ()Lnet/minecraft/class_243; comp_2726 offset + m ()Z comp_2722 attributeToUser + m ()Lnet/minecraft/class_6880; comp_2732 sound + m ()Lnet/minecraft/class_2394; comp_2731 largeParticle + m ()Lnet/minecraft/class_2394; comp_2730 smallParticle + m ()Z comp_2728 createFire + m ()Lnet/minecraft/class_6012; comp_4599 blockParticles + m ()Ljava/util/Optional; comp_2725 immuneBlocks + m ()Ljava/util/Optional; comp_2724 knockbackMultiplier + m ()Ljava/util/Optional; comp_2723 damageType + m (ZLjava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_243;Lnet/minecraft/class_9704;ZLnet/minecraft/class_1937$class_7867;Lnet/minecraft/class_2394;Lnet/minecraft/class_2394;Lnet/minecraft/class_6012;Lnet/minecraft/class_6880;)V + p 1 attributeToUser + p 2 damageType + p 3 knockbackMultiplier + p 4 immuneBlocks + p 5 offset + p 6 radius + p 7 createFire + p 8 blockInteraction + p 9 smallParticle + p 10 largeParticle + p 11 blockParticles + p 12 sound +c net/minecraft/class_9723 net/minecraft/enchantment/effect/EnchantmentValueEffect + f Lcom/mojang/serialization/Codec; field_51709 CODEC + m ()Lcom/mojang/serialization/MapCodec; method_60211 getCodec + m (ILnet/minecraft/class_5819;F)F method_60213 apply + p 1 level + p 3 inputValue + p 2 random + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_60233 registerAndGetDefault + p 0 registry +c net/minecraft/class_463 net/minecraft/client/gui/screen/ingame/AbstractCommandBlockScreen + f Lnet/minecraft/class_2561; field_26556 SET_COMMAND_TEXT + f Lnet/minecraft/class_4185; field_2753 cancelButton + f Lnet/minecraft/class_342; field_2755 previousOutputTextField + f Lnet/minecraft/class_2561; field_26558 PREVIOUS_OUTPUT_TEXT + f Lnet/minecraft/class_2561; field_26557 COMMAND_TEXT + f Lnet/minecraft/class_4185; field_2762 doneButton + f Lnet/minecraft/class_5676; field_2760 toggleTrackingOutputButton + f Lnet/minecraft/class_4717; field_21617 commandSuggestor + f Lnet/minecraft/class_342; field_2751 consoleCommandTextField + m ()V method_2359 commitAndClose + m (Ljava/lang/String;)V method_2360 onCommandChanged + p 1 text + m (Lnet/minecraft/class_4185;)V method_19876 method_19876 + p 1 button + m (Lnet/minecraft/class_4185;)V method_19875 method_19875 + p 1 button + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_32641 method_32641 + p 1 button + p 2 trackOutput + m (Z)V method_32642 setPreviousOutputText + p 1 trackOutput + m ()V method_2352 syncSettingsToServer + m ()I method_2364 getTrackOutputButtonHeight + m ()Lnet/minecraft/class_1918; method_2351 getCommandExecutor + m ()V method_73426 addAdditionalButtons +c net/minecraft/class_9722 net/minecraft/enchantment/effect/EnchantmentLocationBasedEffect + f Lcom/mojang/serialization/Codec; field_51708 CODEC + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_9699;Lnet/minecraft/class_1297;Lnet/minecraft/class_243;Z)V method_60221 apply + p 3 context + p 2 level + p 5 pos + p 4 user + p 6 newlyApplied + p 1 world + m (Lnet/minecraft/class_9699;Lnet/minecraft/class_1297;Lnet/minecraft/class_243;I)V method_60222 remove + p 1 context + p 2 user + p 3 pos + p 4 level + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_60232 registerAndGetDefault + p 0 registry + m ()Lcom/mojang/serialization/MapCodec; method_60219 getCodec +c net/minecraft/class_9721 net/minecraft/enchantment/effect/EnchantmentEntityEffect + f Lcom/mojang/serialization/Codec; field_51707 CODEC + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_60231 registerAndGetDefault + p 0 registry + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_9699;Lnet/minecraft/class_1297;Lnet/minecraft/class_243;)V method_60220 apply + p 1 world + p 3 context + p 2 level + p 5 pos + p 4 user +c net/minecraft/class_11261 net/minecraft/client/render/entity/HappyGhastEntityRenderer + f Lnet/minecraft/class_2960; field_59976 TEXTURE + f Lnet/minecraft/class_2960; field_59977 BABY_TEXTURE + f Lnet/minecraft/class_2960; field_60153 ROPES_TEXTURE + m (Lnet/minecraft/class_11187;)Lnet/minecraft/class_238; method_70941 getBoundingBox + m (Lnet/minecraft/class_11262;)Lnet/minecraft/class_2960; method_70943 getTexture + m (Lnet/minecraft/class_11187;Lnet/minecraft/class_11262;F)V method_70942 updateRenderState + m ()Lnet/minecraft/class_11262; method_70944 createRenderState + m (Lnet/minecraft/class_11262;)Lnet/minecraft/class_1799; method_70945 method_70945 + p 0 state +c net/minecraft/class_11262 net/minecraft/client/render/entity/state/HappyGhastEntityRenderState + f Lnet/minecraft/class_1799; field_59978 harnessStack + f Z field_59979 hasPassengers + f Z field_60162 hasRopes +c net/minecraft/class_11260 net/minecraft/client/render/entity/model/HappyGhastEntityModel + f Lnet/minecraft/class_9953; field_59952 BABY_TRANSFORMER + f Lnet/minecraft/class_630; field_59955 body + f F field_59953 HARNESSED_SCALE + f [Lnet/minecraft/class_630; field_59954 tentacles + m (Lnet/minecraft/class_11262;)V method_70932 setAngles + m (ZLnet/minecraft/class_5605;)Lnet/minecraft/class_5607; method_70933 getTexturedModelData + p 0 baby + p 1 dilation +c net/minecraft/class_11266 net/minecraft/client/gl/GpuBufferManager + m (Lnet/minecraft/class_10874;Ljava/util/function/Supplier;IJ)Lnet/minecraft/class_10859; method_71017 createBuffer + p 3 usage + p 4 size + p 1 bufferManager + p 2 debugLabelSupplier + m (Lnet/minecraft/class_10874;Lnet/minecraft/class_10859;JJI)Lnet/minecraft/class_10859$class_11269; method_71016 mapBufferRange + p 5 length + p 7 flags + p 1 bufferManager + p 2 buffer + p 3 offset + m (Lnet/minecraft/class_10874;Ljava/util/function/Supplier;ILjava/nio/ByteBuffer;)Lnet/minecraft/class_10859; method_71018 createBuffer + p 2 debugLabelSupplier + p 1 bufferManager + p 4 data + p 3 usage + m (Lorg/lwjgl/opengl/GLCapabilities;Ljava/util/Set;)Lnet/minecraft/class_11266; method_71019 create + p 0 capabilities + p 1 usedCapabilities +c net/minecraft/class_11266$class_11267 net/minecraft/client/gl/GpuBufferManager$ARBGpuBufferManager + m (Lnet/minecraft/class_10874;IIJ)Ljava/nio/ByteBuffer; method_71021 mapBufferRange + p 2 usage + p 1 bufferManager + p 4 length + p 3 buffer +c net/minecraft/class_11266$class_11268 net/minecraft/client/gl/GpuBufferManager$DirectGpuBufferManager +c net/minecraft/class_9719 net/minecraft/enchantment/effect/entity/ChangeItemDamageEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51705 CODEC + f Lnet/minecraft/class_9704; comp_2716 amount + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60226 method_60226 + p 0 instance + m ()Lnet/minecraft/class_9704; comp_2716 amount + m (Lnet/minecraft/class_9704;)V + p 1 amount +c net/minecraft/class_11263 net/minecraft/client/sound/EntityRidingSoundInstance + f Lnet/minecraft/class_1657; field_59987 player + f Z field_63921 forUnderwater + f Lnet/minecraft/class_1297; field_63920 vehicle + f F field_63922 minVolume + f F field_63923 maxVolume + f F field_63924 multiplier + m ()Z method_75841 cannotPlayUnderwater + m ()Z method_75843 canPlaySound + m ()F method_75842 getVehicleSpeed + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1297;ZLnet/minecraft/class_3414;Lnet/minecraft/class_3419;FFF)V + p 2 vehicle + p 1 player + p 4 sound + p 3 forUnderwater + p 6 volume + p 5 category + p 8 multiplier + p 7 maxVolume +c net/minecraft/class_9718 net/minecraft/enchantment/effect/DamageImmunityEnchantmentEffect + f Lcom/mojang/serialization/Codec; field_51704 CODEC + f Lnet/minecraft/class_9718; field_51703 INSTANCE +c net/minecraft/class_11264 net/minecraft/client/world/ClientWaypointHandler + f Ljava/util/Map; field_59989 waypoints + m (Lnet/minecraft/class_11200;)V method_70957 onUntrack + m ()Z method_70952 hasWaypoint + m (Lnet/minecraft/class_11200;)V method_70956 onUpdate + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_11200;)D method_70953 method_70953 + p 1 waypoint + m (Lnet/minecraft/class_11200;)V method_70955 onTrack + m (Lnet/minecraft/class_1297;Ljava/util/function/Consumer;)V method_70954 forEachWaypoint + p 1 receiver + p 2 action +c net/minecraft/class_9731 net/minecraft/enchantment/effect/entity/RunFunctionEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51717 CODEC + f Lorg/slf4j/Logger; field_51718 LOGGER + f Lnet/minecraft/class_2960; comp_2747 function + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60246 method_60246 + p 0 instance + m ()Lnet/minecraft/class_2960; comp_2747 function + m (Lnet/minecraft/class_2960;)V + p 1 function +c net/minecraft/class_479 net/minecraft/client/gui/screen/ingame/CraftingScreen + f Lnet/minecraft/class_2960; field_2878 TEXTURE + m (Lnet/minecraft/class_1714;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 1 handler + p 2 inventory + p 3 title +c net/minecraft/class_9730 net/minecraft/enchantment/effect/entity/ReplaceDiskEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51716 CODEC + f Ljava/util/Optional; comp_2745 predicate + f Lnet/minecraft/class_9704; comp_2743 height + f Lnet/minecraft/class_9704; comp_2742 radius + f Ljava/util/Optional; comp_2799 triggerGameEvent + f Lnet/minecraft/class_2382; comp_2744 offset + f Lnet/minecraft/class_4651; comp_2746 blockState + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;)V method_60508 method_60508 + p 3 gameEvent + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60245 method_60245 + p 0 instance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_6646;)Ljava/lang/Boolean; method_60244 method_60244 + p 2 predicate + m ()Ljava/util/Optional; comp_2745 predicate + m ()Lnet/minecraft/class_9704; comp_2742 radius + m ()Lnet/minecraft/class_9704; comp_2743 height + m ()Lnet/minecraft/class_2382; comp_2744 offset + m ()Lnet/minecraft/class_4651; comp_2746 blockState + m ()Ljava/util/Optional; comp_2799 triggerGameEvent + m (Lnet/minecraft/class_9704;Lnet/minecraft/class_9704;Lnet/minecraft/class_2382;Ljava/util/Optional;Lnet/minecraft/class_4651;Ljava/util/Optional;)V + p 1 radius + p 2 height + p 3 offset + p 4 predicate + p 5 blockState + p 6 triggerGameEvent +c net/minecraft/class_478 net/minecraft/client/gui/screen/ingame/CreativeInventoryListener + f Lnet/minecraft/class_310; field_2876 client + m (Lnet/minecraft/class_310;)V + p 1 client +c net/minecraft/class_477 net/minecraft/client/gui/screen/ingame/CommandBlockScreen + f Lnet/minecraft/class_5676; field_2869 modeButton + f Lnet/minecraft/class_2593; field_2865 blockEntity + f Z field_2868 conditional + f Lnet/minecraft/class_2593$class_2594; field_2870 mode + f Lnet/minecraft/class_5676; field_2871 conditionalModeButton + f Z field_2867 autoActivate + f Lnet/minecraft/class_5676; field_2866 redstoneTriggerButton + m (Z)V method_32647 setButtonsActive + p 1 active + m ()V method_2457 updateCommandBlock + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_73430 method_73430 + p 2 conditional + p 1 button + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_2593$class_2594;)V method_73428 method_73428 + p 1 button + p 2 mode + m (Lnet/minecraft/class_2593;)V + p 1 blockEntity + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_73429 method_73429 + p 1 button + p 2 autoActivate + m (Lnet/minecraft/class_2593$class_2594;)Lnet/minecraft/class_2561; method_73427 method_73427 + p 0 type +c net/minecraft/class_476 net/minecraft/client/gui/screen/ingame/GenericContainerScreen + f I field_2864 rows + f Lnet/minecraft/class_2960; field_2861 TEXTURE + m (Lnet/minecraft/class_1707;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 3 title + p 2 inventory + p 1 handler +c net/minecraft/class_9739 net/minecraft/enchantment/effect/entity/SummonEntityEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51730 CODEC + f Lnet/minecraft/class_6885; comp_2762 entityTypes + f Z comp_2763 joinTeam + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60264 method_60264 + p 0 instance + m ()Z comp_2763 joinTeam + m ()Lnet/minecraft/class_6885; comp_2762 entityTypes + m (Lnet/minecraft/class_6885;Z)V + p 1 entityTypes + p 2 joinTeam +c net/minecraft/class_471 net/minecraft/client/gui/screen/ingame/AnvilScreen + f Lnet/minecraft/class_342; field_2821 nameField + f Lnet/minecraft/class_2561; field_26559 TOO_EXPENSIVE_TEXT + f Lnet/minecraft/class_2960; field_45436 TEXT_FIELD_TEXTURE + f Lnet/minecraft/class_2960; field_45438 ERROR_TEXTURE + f Lnet/minecraft/class_2960; field_2819 TEXTURE + f Lnet/minecraft/class_1657; field_29348 player + f Lnet/minecraft/class_2960; field_45437 TEXT_FIELD_DISABLED_TEXTURE + m (Ljava/lang/String;)V method_2403 onRenamed + p 1 name + m (Lnet/minecraft/class_1706;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 2 inventory + p 1 handler + p 3 title +c net/minecraft/class_9734 net/minecraft/enchantment/effect/entity/SpawnParticlesEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51721 CODEC + f Lnet/minecraft/class_9734$class_9735; comp_2753 verticalPosition + f Lnet/minecraft/class_9734$class_9735; comp_2752 horizontalPosition + f Lnet/minecraft/class_9734$class_9738; comp_2754 horizontalVelocity + f Lnet/minecraft/class_9734$class_9738; comp_2755 verticalVelocity + f Lnet/minecraft/class_5863; comp_2756 speed + f Lnet/minecraft/class_2394; comp_2751 particle + m (F)Lnet/minecraft/class_9734$class_9738; method_60253 scaledVelocity + p 0 movementScale + m (Lnet/minecraft/class_5863;)Lnet/minecraft/class_9734$class_9738; method_60250 fixedVelocity + p 0 base + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60251 method_60251 + p 0 instance + m ()Lnet/minecraft/class_9734$class_9735; method_60252 withinBoundingBox + m (F)Lnet/minecraft/class_9734$class_9735; method_60249 entityPosition + p 0 offset + m ()Lnet/minecraft/class_9734$class_9738; comp_2754 horizontalVelocity + m ()Lnet/minecraft/class_9734$class_9735; comp_2753 verticalPosition + m ()Lnet/minecraft/class_9734$class_9735; comp_2752 horizontalPosition + m ()Lnet/minecraft/class_9734$class_9738; comp_2755 verticalVelocity + m ()Lnet/minecraft/class_5863; comp_2756 speed + m ()Lnet/minecraft/class_2394; comp_2751 particle + m (Lnet/minecraft/class_2394;Lnet/minecraft/class_9734$class_9735;Lnet/minecraft/class_9734$class_9735;Lnet/minecraft/class_9734$class_9738;Lnet/minecraft/class_9734$class_9738;Lnet/minecraft/class_5863;)V + p 1 particle + p 2 horizontalPosition + p 3 verticalPosition + p 4 horizontalVelocity + p 5 verticalVelocity + p 6 speed +c net/minecraft/class_9734$class_9738 net/minecraft/enchantment/effect/entity/SpawnParticlesEnchantmentEffect$VelocitySource + f Lcom/mojang/serialization/MapCodec; field_51729 CODEC + f F comp_2760 movementScale + f Lnet/minecraft/class_5863; comp_2761 base + m (DLnet/minecraft/class_5819;)D method_60262 getVelocity + p 3 random + p 1 entityVelocity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60263 method_60263 + p 0 instance + m ()F comp_2760 movementScale + m ()Lnet/minecraft/class_5863; comp_2761 base + m (FLnet/minecraft/class_5863;)V + p 1 movementScale + p 2 base +c net/minecraft/class_9734$class_9735 net/minecraft/enchantment/effect/entity/SpawnParticlesEnchantmentEffect$PositionSource + f Lcom/mojang/serialization/MapCodec; field_51722 CODEC + f Lnet/minecraft/class_9734$class_9736; comp_2757 type + f F comp_2759 scale + f F comp_2758 offset + m (Lnet/minecraft/class_9734$class_9735;)Lcom/mojang/serialization/DataResult; method_60256 method_60256 + p 0 source + m (DDFLnet/minecraft/class_5819;)D method_60254 getPosition + p 1 entityPosition + p 3 boundingBoxCenter + p 5 boundingBoxSize + p 6 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60255 method_60255 + p 0 instance + m ()F comp_2758 offset + m ()F comp_2759 scale + m ()Lnet/minecraft/class_9734$class_9736; comp_2757 type + m (Lnet/minecraft/class_9734$class_9736;FF)V + p 1 type + p 2 offset + p 3 scale +c net/minecraft/class_9734$class_9736 net/minecraft/enchantment/effect/entity/SpawnParticlesEnchantmentEffect$PositionSourceType + f Ljava/lang/String; field_51726 id + f Lcom/mojang/serialization/Codec; field_51725 CODEC + f Lnet/minecraft/class_9734$class_9736$class_9737; field_51727 coordinateSource + f Lnet/minecraft/class_9734$class_9736; field_51723 ENTITY_POSITION + f Lnet/minecraft/class_9734$class_9736; field_51724 BOUNDING_BOX + m (DDFLnet/minecraft/class_5819;)D method_60261 method_60261 + p 4 boundingBoxSize + p 5 random + p 0 entityPosition + p 2 boundingBoxCenter + m (DDFLnet/minecraft/class_5819;)D method_60260 method_60260 + p 5 random + p 0 entityPosition + p 2 boundingBoxCenter + p 4 boundingBoxSize + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_9734$class_9736$class_9737;)V + p 4 coordinateSource + p 3 id + m (DDFLnet/minecraft/class_5819;)D method_60259 getCoordinate + p 1 entityPosition + p 3 boundingBoxCenter + p 5 boundingBoxSize + p 6 random +c net/minecraft/class_9734$class_9736$class_9737 net/minecraft/enchantment/effect/entity/SpawnParticlesEnchantmentEffect$PositionSourceType$CoordinateSource + m (DDFLnet/minecraft/class_5819;)D getCoordinate getCoordinate + p 1 entityPosition + p 3 boundingBoxCenter + p 5 boundingBoxSize + p 6 random +c net/minecraft/class_474 net/minecraft/client/gui/widget/PageTurnWidget + f Lnet/minecraft/class_2960; field_45496 PAGE_BACKWARD_TEXTURE + f Z field_18977 playPageTurnSound + f Lnet/minecraft/class_2960; field_45495 PAGE_BACKWARD_HIGHLIGHTED_TEXTURE + f Lnet/minecraft/class_2960; field_45494 PAGE_FORWARD_TEXTURE + f Lnet/minecraft/class_2561; field_60478 NEXT_TEXT + f Lnet/minecraft/class_2561; field_60479 PREVIOUS_TEXT + f Z field_2851 isNextPageButton + f Lnet/minecraft/class_2960; field_45493 PAGE_FORWARD_HIGHLIGHTED_TEXTURE + m (IIZLnet/minecraft/class_4185$class_4241;Z)V + p 5 playPageTurnSound + p 4 action + p 1 x + p 3 isNextPageButton + p 2 y +c net/minecraft/class_9733 net/minecraft/enchantment/effect/value/SetEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51720 CODEC + f Lnet/minecraft/class_9704; comp_2750 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60248 method_60248 + p 0 instance + m ()Lnet/minecraft/class_9704; comp_2750 value + m (Lnet/minecraft/class_9704;)V + p 1 value +c net/minecraft/class_473 net/minecraft/client/gui/screen/ingame/BookEditScreen + f Lnet/minecraft/class_2561; field_60463 TITLE_TEXT + f Lnet/minecraft/class_1268; field_2832 hand + f Lnet/minecraft/class_2561; field_60461 pageIndicatorText + f I field_32326 WIDTH + f I field_32324 MAX_TEXT_HEIGHT + f Lnet/minecraft/class_474; field_2839 previousPageButton + f Lnet/minecraft/class_7529; field_60462 editBox + f Lnet/minecraft/class_474; field_2843 nextPageButton + f Ljava/util/List; field_17116 pages + f I field_2840 currentPage + f Lnet/minecraft/class_11385; field_60464 signingScreen + f I field_32327 HEIGHT + f Lnet/minecraft/class_1799; field_2835 stack + f Lnet/minecraft/class_1657; field_2826 player + f I field_32323 MAX_TEXT_WIDTH + f Lnet/minecraft/class_2561; field_63896 SIGN_BUTTON_TEXT + m ()I method_75829 getDoneButtonY + m (Lnet/minecraft/class_4185;)V method_19881 method_19881 + p 1 button + m ()V method_2407 finalizeBook + m ()V method_2437 openPreviousPage + m ()V method_17047 removeEmptyPages + m (Lnet/minecraft/class_12225;)V method_75830 render + p 1 textConsumer + m ()V method_71537 updatePage + m (Lnet/minecraft/class_4185;)V method_19878 method_19878 + p 1 button + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;Lnet/minecraft/class_1268;Lnet/minecraft/class_9301;)V + p 1 player + p 3 hand + p 2 stack + p 4 writableBookContent + m ()V method_2444 openNextPage + m ()I method_75828 getTop + m (Lnet/minecraft/class_4185;)V method_19882 method_19882 + p 1 button + m ()V method_37433 writeNbtData + m ()Lnet/minecraft/class_2561; method_71540 getPageIndicatorText + m ()V method_2436 appendNewPage + m ()V method_71538 updatePreviousPageButtonVisibility + m ()I method_17046 countPages + m ()I method_75831 getLeft + m (Lnet/minecraft/class_4185;)V method_19879 method_19879 + p 1 button + m (Ljava/lang/String;)V method_71539 method_71539 + p 1 page +c net/minecraft/class_9732 net/minecraft/enchantment/effect/entity/SetBlockPropertiesEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51719 CODEC + f Lnet/minecraft/class_9275; comp_2748 properties + f Ljava/util/Optional; comp_2800 triggerGameEvent + f Lnet/minecraft/class_2382; comp_2749 offset + m (Lnet/minecraft/class_9275;)V + p 1 properties + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60247 method_60247 + p 0 instance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;)V method_60509 method_60509 + p 3 gameEvent + m ()Lnet/minecraft/class_2382; comp_2749 offset + m ()Ljava/util/Optional; comp_2800 triggerGameEvent + m ()Lnet/minecraft/class_9275; comp_2748 properties + m (Lnet/minecraft/class_9275;Lnet/minecraft/class_2382;Ljava/util/Optional;)V + p 1 properties + p 2 offset + p 3 triggerGameEvent +c net/minecraft/class_472 net/minecraft/client/gui/screen/ingame/BrewingStandScreen + f [I field_2824 BUBBLE_PROGRESS + f Lnet/minecraft/class_2960; field_45450 BUBBLES_TEXTURE + f Lnet/minecraft/class_2960; field_2823 TEXTURE + f Lnet/minecraft/class_2960; field_45448 FUEL_LENGTH_TEXTURE + f Lnet/minecraft/class_2960; field_45449 BREW_PROGRESS_TEXTURE + m (Lnet/minecraft/class_1708;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 1 handler + p 2 inventory + p 3 title +c net/minecraft/class_11250 net/minecraft/client/gui/render/state/special/BannerResultGuiElementRenderState + f I comp_4125 y2 + f I comp_4124 x2 + f I comp_4123 y1 + f I comp_4122 x1 + f Lnet/minecraft/class_10377; comp_4119 flag + f Lnet/minecraft/class_9307; comp_4121 resultBannerPatterns + f Lnet/minecraft/class_8030; comp_4128 scissorArea + f Lnet/minecraft/class_8030; comp_4274 bounds + f Lnet/minecraft/class_1767; comp_4120 baseColor + m (Lnet/minecraft/class_10377;Lnet/minecraft/class_1767;Lnet/minecraft/class_9307;IIIILnet/minecraft/class_8030;)V + p 3 bannerPatterns + p 4 x1 + p 1 model + p 2 color + p 7 y2 + p 8 scissorArea + p 5 y1 + p 6 x2 + m ()Lnet/minecraft/class_1767; comp_4120 baseColor + m ()Lnet/minecraft/class_9307; comp_4121 resultBannerPatterns + m ()Lnet/minecraft/class_10377; comp_4119 flag + m (Lnet/minecraft/class_10377;Lnet/minecraft/class_1767;Lnet/minecraft/class_9307;IIIILnet/minecraft/class_8030;Lnet/minecraft/class_8030;)V + p 1 flag + p 2 baseColor + p 3 resultBannerPatterns + p 4 x1 + p 5 y1 + p 6 x2 + p 7 y2 + p 8 scissorArea + p 9 bounds +c net/minecraft/class_11251 net/minecraft/client/gui/render/state/special/BookModelGuiElementRenderState + f I comp_4125 y2 + f I comp_4122 x1 + f I comp_4124 x2 + f I comp_4123 y1 + f Lnet/minecraft/class_557; comp_4129 bookModel + f Lnet/minecraft/class_2960; comp_4130 texture + f F comp_4132 flip + f F comp_4133 scale + f F comp_4131 open + f Lnet/minecraft/class_8030; comp_4128 scissorArea + f Lnet/minecraft/class_8030; comp_4274 bounds + m (Lnet/minecraft/class_557;Lnet/minecraft/class_2960;FFIIIIFLnet/minecraft/class_8030;)V + p 7 x2 + p 6 y1 + p 5 x1 + p 4 flip + p 10 scissorArea + p 9 scale + p 8 y2 + p 3 open + p 2 texture + p 1 model + m ()F comp_4131 open + m ()F comp_4132 flip + m ()Lnet/minecraft/class_2960; comp_4130 texture + m ()Lnet/minecraft/class_557; comp_4129 bookModel + m (Lnet/minecraft/class_557;Lnet/minecraft/class_2960;FFIIIIFLnet/minecraft/class_8030;Lnet/minecraft/class_8030;)V + p 1 bookModel + p 2 texture + p 3 open + p 4 flip + p 5 x1 + p 6 y1 + p 7 x2 + p 8 y2 + p 9 scale + p 10 scissorArea + p 11 bounds +c net/minecraft/class_11254 net/minecraft/client/gui/render/state/special/SignGuiElementRenderState + f I comp_4125 y2 + f I comp_4124 x2 + f I comp_4123 y1 + f I comp_4122 x1 + f Lnet/minecraft/class_8030; comp_4274 bounds + f F comp_4133 scale + f Lnet/minecraft/class_3879$class_9948; comp_4139 signModel + f Lnet/minecraft/class_4719; comp_4140 woodType + f Lnet/minecraft/class_8030; comp_4128 scissorArea + m (Lnet/minecraft/class_3879$class_9948;Lnet/minecraft/class_4719;IIIIFLnet/minecraft/class_8030;)V + p 5 x2 + p 4 y1 + p 7 scale + p 6 y2 + p 1 part + p 3 x1 + p 2 woodType + p 8 scissorArea + m ()Lnet/minecraft/class_3879$class_9948; comp_4139 signModel + m ()Lnet/minecraft/class_4719; comp_4140 woodType + m (Lnet/minecraft/class_3879$class_9948;Lnet/minecraft/class_4719;IIIIFLnet/minecraft/class_8030;Lnet/minecraft/class_8030;)V + p 1 signModel + p 2 woodType + p 3 x1 + p 4 y1 + p 5 x2 + p 6 y2 + p 7 scale + p 8 scissorArea + p 9 bounds +c net/minecraft/class_11255 net/minecraft/client/gui/render/state/special/PlayerSkinGuiElementRenderState + f F comp_4145 yPivot + f I comp_4125 y2 + f F comp_4144 yRotation + f I comp_4122 x1 + f I comp_4124 x2 + f F comp_4143 xRotation + f I comp_4123 y1 + f Lnet/minecraft/class_8030; comp_4274 bounds + f Lnet/minecraft/class_2960; comp_4142 texture + f Lnet/minecraft/class_591; comp_4141 playerModel + f F comp_4133 scale + f Lnet/minecraft/class_8030; comp_4128 scissorArea + m (Lnet/minecraft/class_591;Lnet/minecraft/class_2960;FFFIIIIFLnet/minecraft/class_8030;)V + p 5 yPivot + p 4 yRotation + p 3 xRotation + p 2 texture + p 9 y2 + p 8 x2 + p 7 y1 + p 6 x1 + p 11 scissorArea + p 10 scale + p 1 model + m ()F comp_4145 yPivot + m ()F comp_4144 yRotation + m ()F comp_4143 xRotation + m ()Lnet/minecraft/class_591; comp_4141 playerModel + m ()Lnet/minecraft/class_2960; comp_4142 texture + m (Lnet/minecraft/class_591;Lnet/minecraft/class_2960;FFFIIIIFLnet/minecraft/class_8030;Lnet/minecraft/class_8030;)V + p 1 playerModel + p 2 texture + p 3 xRotation + p 4 yRotation + p 5 yPivot + p 6 x1 + p 7 y1 + p 8 x2 + p 9 y2 + p 10 scale + p 11 scissorArea + p 12 bounds +c net/minecraft/class_11252 net/minecraft/client/gui/render/state/special/EntityGuiElementRenderState + f I comp_4123 y1 + f I comp_4122 x1 + f I comp_4125 y2 + f I comp_4124 x2 + f F comp_4133 scale + f Lnet/minecraft/class_10017; comp_4134 renderState + f Lnet/minecraft/class_8030; comp_4128 scissorArea + f Lorg/joml/Quaternionf; comp_4137 overrideCameraAngle + f Lorg/joml/Quaternionf; comp_4136 rotation + f Lnet/minecraft/class_8030; comp_4274 bounds + f Lorg/joml/Vector3f; comp_4135 translation + m (Lnet/minecraft/class_10017;Lorg/joml/Vector3f;Lorg/joml/Quaternionf;Lorg/joml/Quaternionf;IIIIFLnet/minecraft/class_8030;)V + p 9 scale + p 10 scissorArea + p 7 x2 + p 8 y2 + p 1 renderState + p 2 translation + p 5 x1 + p 6 y1 + p 3 rotation + p 4 overrideCameraAngle + m ()Lorg/joml/Vector3f; comp_4135 translation + m ()Lnet/minecraft/class_10017; comp_4134 renderState + m ()Lorg/joml/Quaternionf; comp_4136 rotation + m ()Lorg/joml/Quaternionf; comp_4137 overrideCameraAngle + m (Lnet/minecraft/class_10017;Lorg/joml/Vector3f;Lorg/joml/Quaternionf;Lorg/joml/Quaternionf;IIIIFLnet/minecraft/class_8030;Lnet/minecraft/class_8030;)V + p 1 renderState + p 2 translation + p 3 rotation + p 4 overrideCameraAngle + p 5 x1 + p 6 y1 + p 7 x2 + p 8 y2 + p 9 scale + p 10 scissorArea + p 11 bounds +c net/minecraft/class_9729 net/minecraft/enchantment/effect/entity/ReplaceBlockEnchantmentEffect + f Lcom/mojang/serialization/MapCodec; field_51715 CODEC + f Lnet/minecraft/class_4651; comp_2741 blockState + f Lnet/minecraft/class_2382; comp_2739 offset + f Ljava/util/Optional; comp_2798 triggerGameEvent + f Ljava/util/Optional; comp_2740 predicate + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60243 method_60243 + p 0 instance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_6646;)Ljava/lang/Boolean; method_60242 method_60242 + p 2 predicate + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;)V method_60507 method_60507 + p 3 gameEvent + m ()Lnet/minecraft/class_2382; comp_2739 offset + m ()Ljava/util/Optional; comp_2740 predicate + m ()Lnet/minecraft/class_4651; comp_2741 blockState + m ()Ljava/util/Optional; comp_2798 triggerGameEvent + m (Lnet/minecraft/class_2382;Ljava/util/Optional;Lnet/minecraft/class_4651;Ljava/util/Optional;)V + p 1 offset + p 2 predicate + p 3 blockState + p 4 triggerGameEvent +c net/minecraft/class_11253 net/minecraft/client/gui/render/state/special/ProfilerChartGuiElementRenderState + f I comp_4124 x2 + f I comp_4123 y1 + f I comp_4125 y2 + f I comp_4122 x1 + f Ljava/util/List; comp_4138 chartData + f Lnet/minecraft/class_8030; comp_4128 scissorArea + f Lnet/minecraft/class_8030; comp_4274 bounds + m (Ljava/util/List;IIIILnet/minecraft/class_8030;)V + p 1 chartData + p 2 x1 + p 3 y1 + p 4 x2 + p 5 y2 + p 6 scissorArea + m ()Ljava/util/List; comp_4138 chartData + m (Ljava/util/List;IIIILnet/minecraft/class_8030;Lnet/minecraft/class_8030;)V + p 1 chartData + p 2 x1 + p 3 y1 + p 4 x2 + p 5 y2 + p 6 scissorArea + p 7 bounds +c net/minecraft/class_11258 net/minecraft/command/argument/WaypointArgument + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_59942 INVALID_WAYPOINT_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_11212; method_70928 getWaypoint + p 1 argument + p 0 context +c net/minecraft/class_11259 net/minecraft/client/render/entity/model/HappyGhastHarnessEntityModel + f Lnet/minecraft/class_630; field_59951 goggles + m (Lnet/minecraft/class_11262;)V method_70930 setAngles + m (Z)Lnet/minecraft/class_5607; method_70931 getTexturedModelData + p 0 baby +c net/minecraft/class_11256 net/minecraft/client/gui/render/state/special/SpecialGuiElementRenderState + f Lorg/joml/Matrix3x2f; field_60999 pose + m ()I comp_4123 y1 + m ()I comp_4122 x1 + m ()I comp_4125 y2 + m ()I comp_4124 x2 + m (IIIILnet/minecraft/class_8030;)Lnet/minecraft/class_8030; method_71535 createBounds + p 1 y1 + p 2 x2 + p 3 y2 + p 4 scissorArea + p 0 x1 + m ()Lorg/joml/Matrix3x2f; method_72127 pose + m ()Lnet/minecraft/class_8030; comp_4128 scissorArea + m ()F comp_4133 scale +c net/minecraft/class_11257 net/minecraft/unused/packageinfo/PackageInfo11257 +c net/minecraft/class_12409 net/minecraft/unused/packageinfo/PackageInfo12409 +c net/minecraft/class_12408 net/minecraft/unused/packageinfo/PackageInfo12408 +c net/minecraft/class_12410 net/minecraft/unused/packageinfo/PackageInfo12410 +c net/minecraft/class_12414 net/minecraft/unused/packageinfo/PackageInfo12414 +c net/minecraft/class_12413 net/minecraft/unused/packageinfo/PackageInfo12413 +c net/minecraft/class_12412 net/minecraft/unused/packageinfo/PackageInfo12412 +c net/minecraft/class_12411 net/minecraft/unused/packageinfo/PackageInfo12411 +c net/minecraft/class_12418 net/minecraft/unused/packageinfo/PackageInfo12418 +c net/minecraft/class_12417 net/minecraft/unused/packageinfo/PackageInfo12417 +c net/minecraft/class_12416 net/minecraft/unused/packageinfo/PackageInfo12416 +c net/minecraft/class_12415 net/minecraft/unused/packageinfo/PackageInfo12415 +c net/minecraft/class_4700 net/minecraft/client/world/BiomeColorCache + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; field_21520 colors + f Ljava/util/concurrent/locks/ReentrantReadWriteLock; field_21521 lock + f Ljava/util/function/ToIntFunction; field_34795 colorFactory + f I field_32164 MAX_ENTRY_SIZE + f Ljava/lang/ThreadLocal; field_21519 last + m (Ljava/util/function/ToIntFunction;)V + p 1 colorFactory + m ()V method_23768 reset + m (Lnet/minecraft/class_2338;)I method_23770 getBiomeColor + p 1 pos + m (II)V method_23769 reset + p 1 chunkX + p 2 chunkZ + m (II)Lnet/minecraft/class_4700$class_6598; method_23772 getColorArray + p 1 chunkX + p 2 chunkZ +c net/minecraft/class_4700$class_4701 net/minecraft/client/world/BiomeColorCache$Last + f I field_21522 x + f Lnet/minecraft/class_4700$class_6598; field_21524 colors + f I field_21523 z +c net/minecraft/class_4700$class_6598 net/minecraft/client/world/BiomeColorCache$Colors + f Ljava/util/concurrent/locks/ReentrantReadWriteLock; field_34797 lock + f Z field_41610 needsCacheRefresh + f Lit/unimi/dsi/fastutil/ints/Int2ObjectArrayMap; field_34796 colors + f I field_34798 XZ_COLORS_SIZE + m ()V method_47895 setNeedsCacheRefresh + m ()[I method_38527 createDefault + m ()Z method_47894 needsCacheRefresh + m (I)[I method_38528 get + p 1 y + m (I)[I method_38529 method_38529 + p 1 y +c net/minecraft/class_12403 net/minecraft/unused/packageinfo/PackageInfo12403 +c net/minecraft/class_12402 net/minecraft/unused/packageinfo/PackageInfo12402 +c net/minecraft/class_12401 net/minecraft/unused/packageinfo/PackageInfo12401 +c net/minecraft/class_12400 net/minecraft/unused/packageinfo/PackageInfo12400 +c net/minecraft/class_12407 net/minecraft/unused/packageinfo/PackageInfo12407 +c net/minecraft/class_12406 net/minecraft/unused/packageinfo/PackageInfo12406 +c net/minecraft/class_12405 net/minecraft/unused/packageinfo/PackageInfo12405 +c net/minecraft/class_12404 net/minecraft/unused/packageinfo/PackageInfo12404 +c net/minecraft/class_12432 net/minecraft/unused/packageinfo/PackageInfo12432 +c net/minecraft/class_12431 net/minecraft/unused/packageinfo/PackageInfo12431 +c net/minecraft/class_12430 net/minecraft/unused/packageinfo/PackageInfo12430 +c net/minecraft/class_12436 net/minecraft/unused/packageinfo/PackageInfo12436 +c net/minecraft/class_12435 net/minecraft/unused/packageinfo/PackageInfo12435 +c net/minecraft/class_12434 net/minecraft/unused/packageinfo/PackageInfo12434 +c net/minecraft/class_12433 net/minecraft/unused/packageinfo/PackageInfo12433 +c net/minecraft/class_12439 net/minecraft/unused/packageinfo/PackageInfo12439 +c net/minecraft/class_12438 net/minecraft/unused/packageinfo/PackageInfo12438 +c net/minecraft/class_12437 net/minecraft/unused/packageinfo/PackageInfo12437 +c net/minecraft/class_12419 net/minecraft/unused/packageinfo/PackageInfo12419 +c net/minecraft/class_12421 net/minecraft/unused/packageinfo/PackageInfo12421 +c net/minecraft/class_12420 net/minecraft/unused/packageinfo/PackageInfo12420 +c net/minecraft/class_12425 net/minecraft/unused/packageinfo/PackageInfo12425 +c net/minecraft/class_12424 net/minecraft/unused/packageinfo/PackageInfo12424 +c net/minecraft/class_12423 net/minecraft/unused/packageinfo/PackageInfo12423 +c net/minecraft/class_12422 net/minecraft/unused/packageinfo/PackageInfo12422 +c net/minecraft/class_12429 net/minecraft/unused/packageinfo/PackageInfo12429 +c net/minecraft/class_12428 net/minecraft/unused/packageinfo/PackageInfo12428 +c net/minecraft/class_12427 net/minecraft/unused/packageinfo/PackageInfo12427 +c net/minecraft/class_12426 net/minecraft/unused/packageinfo/PackageInfo12426 +c net/minecraft/class_8256 net/minecraft/structure/TrailRuinsGenerator + f Lnet/minecraft/class_5321; field_43386 TOWER + m (Lnet/minecraft/class_7891;)V method_49993 bootstrap + p 0 poolRegisterable +c net/minecraft/class_8257 net/minecraft/world/chunk/light/PendingUpdateQueue + f I field_43399 levelCount + f I field_43401 minPendingLevel + f [Lit/unimi/dsi/fastutil/longs/LongLinkedOpenHashSet; field_43400 pendingIdUpdatesByLevel + m ()J method_50019 dequeue + m (I)V method_50020 increaseMinPendingLevel + p 1 maxLevel + m (JI)V method_50021 enqueue + p 1 id + p 3 level + m (II)V + p 2 expectedLevelSize + p 1 levelCount + m ()Z method_50023 isEmpty + m (JII)V method_50022 remove + p 4 levelCount + p 1 id + p 3 level +c net/minecraft/class_8257$1 net/minecraft/world/chunk/light/PendingUpdateQueue$1 + m (I)V rehash rehash + p 1 newN +c net/minecraft/class_8255 net/minecraft/data/loottable/vanilla/VanillaArchaeologyLootTableGenerator + f Lnet/minecraft/class_7225$class_7874; comp_2786 registries + m ()Lnet/minecraft/class_7225$class_7874; comp_2786 registries + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries +c net/minecraft/class_8253 net/minecraft/client/particle/LeavesParticle + f F field_43369 angularVelocity + f F field_43372 SPEED_SCALE + f F field_43371 angularAcceleration + m (Lnet/minecraft/class_638;DDDLnet/minecraft/class_1058;FFZZFF)V + p 6 z + p 8 sprite + p 9 gravity + p 2 x + p 4 y + p 14 initialYVelocity + p 1 world + p 13 size +c net/minecraft/class_8253$class_10380 net/minecraft/client/particle/LeavesParticle$PaleOakLeavesFactory + f Lnet/minecraft/class_4002; field_55134 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_65197 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_8253$class_10604 net/minecraft/client/particle/LeavesParticle$TintedLeavesFactory + f Lnet/minecraft/class_4002; field_55867 spriteProvider + m (Lnet/minecraft/class_9381;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_66537 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_8253$class_10379 net/minecraft/client/particle/LeavesParticle$CherryLeavesFactory + f Lnet/minecraft/class_4002; field_55133 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_65196 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_8250 net/minecraft/unused/packageinfo/PackageInfo8250 +c net/minecraft/class_8251 com/mojang/blaze3d/systems/VertexSorter + f Lnet/minecraft/class_8251; field_43360 BY_DISTANCE + f Lnet/minecraft/class_8251; field_43361 BY_Z + m (Lnet/minecraft/class_8251$class_8252;Lnet/minecraft/class_11899;)[I method_49908 method_49908 + p 1 vectors + m (Lnet/minecraft/class_11899;)[I sort sort + p 1 vectors + m (Lnet/minecraft/class_8251$class_8252;)Lnet/minecraft/class_8251; method_49907 of + p 0 mapper + m (FFF)Lnet/minecraft/class_8251; method_49906 byDistance + p 2 originZ + p 1 originY + p 0 originX + m ([FII)I method_49910 method_49910 + p 2 b + p 1 a + m (Lorg/joml/Vector3fc;)Lnet/minecraft/class_8251; method_49909 byDistance + p 0 origin + m (Lorg/joml/Vector3f;)F method_49911 method_49911 + p 0 vec +c net/minecraft/class_8251$class_8252 com/mojang/blaze3d/systems/VertexSorter$SortKeyMapper + m (Lorg/joml/Vector3f;)F apply apply + p 1 vec +c net/minecraft/class_8234 net/minecraft/item/SignChangingItem + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2625;ZLnet/minecraft/class_1657;)Z method_49798 useOnSign + p 3 front + p 4 player + p 1 world + p 2 signBlockEntity + m (Lnet/minecraft/class_8242;Lnet/minecraft/class_1657;)Z method_49801 canUseOnSignText + p 1 signText + p 2 player +c net/minecraft/class_8235 net/minecraft/world/RedstoneView + f [Lnet/minecraft/class_2350; field_43226 DIRECTIONS + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_49807 isEmittingRedstonePower + p 1 pos + p 2 direction + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)I method_49805 getStrongRedstonePower + p 2 direction + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)I method_49808 getEmittedRedstonePower + p 1 pos + p 2 direction + m (Lnet/minecraft/class_2338;)Z method_49803 isReceivingRedstonePower + p 1 pos + m (Lnet/minecraft/class_2338;)I method_49804 getReceivedRedstonePower + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Z)I method_49806 getEmittedRedstonePower + p 3 onlyFromGate + p 2 direction + p 1 pos + m (Lnet/minecraft/class_2338;)I method_49809 getReceivedStrongRedstonePower + p 1 pos +c net/minecraft/class_8232 net/minecraft/item/GlowInkSacItem + m (Lnet/minecraft/class_8242;)Lnet/minecraft/class_8242; method_49800 method_49800 + p 0 text +c net/minecraft/class_8233 net/minecraft/item/InkSacItem + m (Lnet/minecraft/class_8242;)Lnet/minecraft/class_8242; method_49802 method_49802 + p 0 text +c net/minecraft/class_8238 net/minecraft/block/SnifferEggBlock + f Lnet/minecraft/class_265; field_43254 SHAPE + f I field_43252 BOOSTED_HATCHING_TIME + f I field_43253 MAX_RANDOM_CRACK_TIME_OFFSET + f Lcom/mojang/serialization/MapCodec; field_46450 CODEC + f Lnet/minecraft/class_2758; field_43250 HATCH + f I field_43251 HATCHING_TIME + f I field_43249 FINAL_HATCH_STAGE + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_49826 isAboveHatchBooster + p 0 world + p 1 pos + m (Lnet/minecraft/class_2680;)I method_49827 getHatchStage + p 1 state + m (Lnet/minecraft/class_2680;)Z method_49828 isReadyToHatch + p 1 state +c net/minecraft/class_8239 net/minecraft/block/entity/CalibratedSculkSensorBlockEntity +c net/minecraft/class_8239$class_8240 net/minecraft/block/entity/CalibratedSculkSensorBlockEntity$Callback + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)I method_49832 getCalibrationFrequency + p 2 pos + p 1 world + p 3 state + m (Lnet/minecraft/class_8239;Lnet/minecraft/class_2338;)V + p 2 pos +c net/minecraft/class_8236 net/minecraft/block/CalibratedSculkSensorBlock + f Lcom/mojang/serialization/MapCodec; field_46296 CODEC + f Lnet/minecraft/class_2754; field_43235 FACING + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_8239;)V method_49813 method_49813 + p 3 blockEntity + p 0 worldx + p 1 pos + p 2 statex +c net/minecraft/class_8237 net/minecraft/block/PitcherCropBlock + f Lnet/minecraft/class_2754; field_55784 HALF + f Lnet/minecraft/class_265; field_43247 LOWER_COLLISION_SHAPE + f Lnet/minecraft/class_265; field_43246 AGE_0_SHAPE + f Ljava/util/function/Function; field_55783 shapeFunction + f Lnet/minecraft/class_2758; field_43239 AGE + f Lcom/mojang/serialization/MapCodec; field_46410 CODEC + m (Lnet/minecraft/class_2680;)Z method_49821 isFullyGrown + p 1 state + m (I)Z method_52575 isDoubleTallAtAge + p 0 age + m (Lnet/minecraft/class_2680;)Z method_51171 isLowerHalf + p 0 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;I)V method_49819 tryGrow + p 2 state + p 1 world + p 4 amount + p 3 pos + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_8237$class_8587; method_52268 getLowerHalfContext + p 2 pos + p 1 world + p 3 state + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;I)Z method_52266 canGrow + p 2 pos + p 1 world + p 4 age + p 3 state + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_52267 canPlaceAt + p 0 world + p 1 pos + m ([ILnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66458 method_66458 + p 1 state + m ()Ljava/util/function/Function; method_66459 createShapeFunction + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_49820 canGrowAt + p 0 world + p 1 pos +c net/minecraft/class_8237$class_8587 net/minecraft/block/PitcherCropBlock$LowerHalfContext + f Lnet/minecraft/class_2680; comp_1552 state + f Lnet/minecraft/class_2338; comp_1551 pos + m ()Lnet/minecraft/class_2680; comp_1552 state + m ()Lnet/minecraft/class_2338; comp_1551 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state +c net/minecraft/class_8245 net/minecraft/structure/rule/blockentity/AppendStaticRuleBlockEntityModifier + f Lcom/mojang/serialization/MapCodec; field_43339 CODEC + f Lnet/minecraft/class_2487; field_43340 nbt + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_8245;)Lnet/minecraft/class_2487; method_49897 method_49897 + p 0 modifier + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49896 method_49896 + p 0 instance +c net/minecraft/class_8246 net/minecraft/structure/rule/blockentity/ClearRuleBlockEntityModifier + f Lcom/mojang/serialization/MapCodec; field_43341 CODEC + f Lnet/minecraft/class_8246; field_43342 INSTANCE +c net/minecraft/class_8243 net/minecraft/structure/processor/CappedStructureProcessor + f Lcom/mojang/serialization/MapCodec; field_43329 CODEC + f Lnet/minecraft/class_3491; field_43330 delegate + f Lnet/minecraft/class_6017; field_43331 limit + m (Lnet/minecraft/class_3491;Lnet/minecraft/class_6017;)V + p 1 delegate + p 2 limit + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49888 method_49888 + p 0 instance + m (Lnet/minecraft/class_8243;)Lnet/minecraft/class_6017; method_49889 method_49889 + p 0 processor + m (Lnet/minecraft/class_8243;)Lnet/minecraft/class_3491; method_49890 method_49890 + p 0 processor +c net/minecraft/class_8244 net/minecraft/structure/rule/blockentity/AppendLootRuleBlockEntityModifier + f Lnet/minecraft/class_5321; field_43338 lootTable + f Lcom/mojang/serialization/MapCodec; field_43336 CODEC + m (Lnet/minecraft/class_8244;)Lnet/minecraft/class_5321; method_49894 method_49894 + p 0 modifier + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49893 method_49893 + p 0 instance + m (Lnet/minecraft/class_5321;)V + p 1 lootTable +c net/minecraft/class_8242 net/minecraft/block/entity/SignText + f Z field_43306 filtered + f Z field_43304 glowing + f Lcom/mojang/serialization/Codec; field_43298 CODEC + f [Lnet/minecraft/class_2561; field_43301 messages + f Lnet/minecraft/class_1767; field_43303 color + f Lcom/mojang/serialization/Codec; field_43300 MESSAGES_CODEC + f [Lnet/minecraft/class_2561; field_43302 filteredMessages + f [Lnet/minecraft/class_5481; field_43305 orderedMessages + m ([Lnet/minecraft/class_2561;Ljava/util/Optional;Lnet/minecraft/class_1767;Z)Lnet/minecraft/class_8242; method_49870 create + p 2 color + p 3 glowing + p 0 messages + p 1 filteredMessages + m (Lnet/minecraft/class_1657;)Z method_49861 hasText + p 1 player + m (Lnet/minecraft/class_8242;)[Lnet/minecraft/class_2561; method_49879 method_49879 + p 0 signText + m (Z)Lnet/minecraft/class_8242; method_49867 withGlowing + p 1 glowing + m (Lnet/minecraft/class_8242;)Lnet/minecraft/class_1767; method_49875 method_49875 + p 0 signText + m ([Lnet/minecraft/class_2561;)Ljava/util/List; method_49869 method_49869 + p 0 messages + m ()Ljava/util/Optional; method_49880 getFilteredMessages + m ()Z method_49856 isGlowing + m (ILnet/minecraft/class_2561;Lnet/minecraft/class_2561;)Lnet/minecraft/class_8242; method_49858 withMessage + p 2 message + p 3 filteredMessage + p 1 line + m (Lnet/minecraft/class_2561;)Z method_49866 method_49866 + p 0 text + m (Z)[Lnet/minecraft/class_2561; method_49877 getMessages + p 1 filtered + m (ILnet/minecraft/class_2561;)Lnet/minecraft/class_8242; method_49857 withMessage + p 1 line + p 2 message + m ()Lnet/minecraft/class_1767; method_49872 getColor + m ()[Lnet/minecraft/class_2561; method_49878 getDefaultText + m (IZ)Lnet/minecraft/class_2561; method_49859 getMessage + p 1 line + p 2 filtered + m ([Lnet/minecraft/class_2561;[Lnet/minecraft/class_2561;Lnet/minecraft/class_1767;Z)V + p 2 filteredMessages + p 3 color + p 1 messages + p 4 glowing + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49863 method_49863 + p 0 instance + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_49865 method_49865 + p 0 messages + m (Lnet/minecraft/class_1657;)Z method_49874 hasRunCommandClickEvent + p 1 player + m (Lnet/minecraft/class_8242;)Ljava/lang/Boolean; method_49864 method_49864 + p 0 signText + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_8242; method_49862 withColor + p 1 color + m (ZLjava/util/function/Function;)[Lnet/minecraft/class_5481; method_49868 getOrderedMessages + p 2 messageOrderer + p 1 filtered +c net/minecraft/client/ClientBrandRetriever net/minecraft/client/ClientBrandRetriever + f Ljava/lang/String; field_33204 VANILLA +c net/minecraft/class_8249 net/minecraft/structure/rule/blockentity/RuleBlockEntityModifierType + f Lnet/minecraft/class_8249; field_43346 CLEAR + f Lnet/minecraft/class_8249; field_43348 APPEND_STATIC + f Lnet/minecraft/class_8249; field_43347 PASSTHROUGH + f Lnet/minecraft/class_8249; field_43349 APPEND_LOOT + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_8249; method_49899 register + p 1 codec + p 0 id +c net/minecraft/class_8247 net/minecraft/structure/rule/blockentity/PassthroughRuleBlockEntityModifier + f Lcom/mojang/serialization/MapCodec; field_43344 CODEC + f Lnet/minecraft/class_8247; field_43343 INSTANCE +c net/minecraft/class_8248 net/minecraft/structure/rule/blockentity/RuleBlockEntityModifier + f Lcom/mojang/serialization/Codec; field_43345 TYPE_CODEC + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_49892 modifyBlockEntityNbt + p 1 random + p 2 nbt + m ()Lnet/minecraft/class_8249; method_49891 getType +c net/minecraft/class_4770 net/minecraft/block/AbstractFireBlock + f Lnet/minecraft/class_265; field_55731 BASE_SHAPE + f I field_54470 MIN_FIRE_TICK_INCREMENT + f F field_22088 damage + f I field_54471 MAX_FIRE_TICK_INCREMENT + f I field_31008 SET_ON_FIRE_SECONDS + m (Lnet/minecraft/class_1297;)V method_67678 igniteEntity + p 0 entity + m (Lnet/minecraft/class_4970$class_2251;F)V + p 2 damage + p 1 settings + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_30032 canPlaceAt + p 1 pos + p 2 direction + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_30033 shouldLightPortalAt + p 0 world + p 1 pos + p 2 direction + m (Lnet/minecraft/class_2680;)Z method_10195 isFlammable + p 1 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_24416 getState + p 1 pos + p 0 world + m (Lnet/minecraft/class_1937;)Z method_30366 isOverworldOrNether + p 0 world +c net/minecraft/class_4776 net/minecraft/block/WeepingVinesBlock + f Lcom/mojang/serialization/MapCodec; field_46499 CODEC + f Lnet/minecraft/class_265; field_22171 SHAPE +c net/minecraft/class_4775 net/minecraft/block/SoulFireBlock + f Lcom/mojang/serialization/MapCodec; field_46453 CODEC + m (Lnet/minecraft/class_2680;)Z method_26158 isSoulBase + p 0 state +c net/minecraft/class_3445 net/minecraft/stat/Stat + f Lnet/minecraft/class_3446; field_15319 formatter + f Lnet/minecraft/class_9139; field_48280 PACKET_CODEC + f Lnet/minecraft/class_3448; field_15321 type + f Ljava/lang/Object; field_15320 value + m (Lnet/minecraft/class_2960;)Ljava/lang/String; method_14952 getName + p 0 id + m (I)Ljava/lang/String; method_14953 format + p 1 value + m ()Lnet/minecraft/class_3448; method_14949 getType + m ()Ljava/lang/Object; method_14951 getValue + m (Lnet/minecraft/class_3448;Ljava/lang/Object;Lnet/minecraft/class_3446;)V + p 1 type + p 2 value + p 3 formatter + m (Lnet/minecraft/class_3448;Ljava/lang/Object;)Ljava/lang/String; method_14950 getName + p 0 type + p 1 value + m (Ljava/lang/Object;)Z equals equals + p 1 o +c net/minecraft/class_2115 net/minecraft/advancement/criterion/PlayerHurtEntityCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_47;Lnet/minecraft/class_1282;FFZLnet/minecraft/class_2115$class_2117;)Z method_22493 method_22493 + p 6 conditions + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;FFZ)V method_9097 trigger + p 4 dealt + p 5 taken + p 2 entity + p 3 damage + p 1 player + p 6 blocked +c net/minecraft/class_2115$class_2117 net/minecraft/advancement/criterion/PlayerHurtEntityCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47317 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2077 damage + f Ljava/util/Optional; comp_2078 entity + m (Lnet/minecraft/class_2019$class_2020;Ljava/util/Optional;)Lnet/minecraft/class_175; method_9103 create + p 1 entity + p 0 damage + m (Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/class_175; method_35294 create + p 1 entity + p 0 damage + m (Lnet/minecraft/class_2019$class_2020;)Lnet/minecraft/class_175; method_35297 create + p 0 damage + m (Ljava/util/Optional;)Lnet/minecraft/class_175; method_35296 createDamage + p 0 damage + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_47;Lnet/minecraft/class_1282;FFZ)Z method_9104 matches + p 2 entity + p 1 player + p 6 blocked + p 5 taken + p 4 dealt + p 3 damageSource + m (Ljava/util/Optional;)Lnet/minecraft/class_175; method_35295 createEntity + p 0 entity + m ()Lnet/minecraft/class_175; method_35298 create + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 2 damage + p 1 playerPredicate + p 3 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55069 method_55069 + p 0 instance + m ()Ljava/util/Optional; comp_2078 entity + m ()Ljava/util/Optional; comp_2077 damage +c net/minecraft/class_4778 net/minecraft/block/enums/WallShape + f Ljava/lang/String; field_22181 name + f Lnet/minecraft/class_4778; field_22180 TALL + f Lnet/minecraft/class_4778; field_22178 NONE + f Lnet/minecraft/class_4778; field_22179 LOW + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_3446 net/minecraft/stat/StatFormatter + f Lnet/minecraft/class_3446; field_16977 DISTANCE + f Lnet/minecraft/class_3446; field_16978 DIVIDE_BY_TEN + f Ljava/text/DecimalFormat; field_16976 DECIMAL_FORMAT + f Lnet/minecraft/class_3446; field_16979 TIME + f Lnet/minecraft/class_3446; field_16975 DEFAULT + m (I)Ljava/lang/String; method_16816 method_16816 + p 0 cm + m (I)Ljava/lang/String; method_16818 method_16818 + p 0 i + m (I)Ljava/lang/String; format format + p 1 value + m (I)Ljava/lang/String; method_16819 method_16819 + p 0 ticks +c net/minecraft/class_3447 net/minecraft/structure/SwampHutGenerator + f Z field_16445 hasCat + f Z field_15322 hasWitch + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_5819;II)V + p 3 z + p 2 x + p 1 random + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_3341;)V method_16181 spawnCat + p 1 world + p 2 box +c net/minecraft/class_4777 net/minecraft/block/TwistingVinesBlock + f Lnet/minecraft/class_265; field_22172 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46483 CODEC +c net/minecraft/class_3440 net/minecraft/world/ChunkUpdateState + f Lit/unimi/dsi/fastutil/longs/LongSet; field_15302 remaining + f Lit/unimi/dsi/fastutil/longs/LongSet; field_15301 all + f Lcom/mojang/serialization/Codec; field_56471 CODEC + f Lcom/mojang/serialization/Codec; field_56472 LONG_SET_CODEC + m (Lnet/minecraft/class_3440;)Lit/unimi/dsi/fastutil/longs/LongSet; method_67413 method_67413 + p 0 state + m (Lnet/minecraft/class_3440;)Lit/unimi/dsi/fastutil/longs/LongSet; method_67411 method_67411 + p 0 state + m (Ljava/lang/String;)Lnet/minecraft/class_10741; method_67412 createStateType + p 0 id + m (Lit/unimi/dsi/fastutil/longs/LongSet;Lit/unimi/dsi/fastutil/longs/LongSet;)V + p 2 remaining + p 1 all + m ()Lit/unimi/dsi/fastutil/longs/LongSet; method_14898 getAll + m (J)Z method_14894 isRemaining + p 1 pos + m (J)Z method_14897 contains + p 1 pos + m (J)V method_14895 markResolved + p 1 pos + m (J)V method_14896 add + p 1 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67410 method_67410 + p 0 instance +c net/minecraft/class_4772 net/minecraft/block/SproutsBlock + f Lnet/minecraft/class_265; field_22136 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46402 CODEC +c net/minecraft/class_3441 net/minecraft/server/network/ServerRecipeBook + f Ljava/util/Set; field_54551 highlighted + c Contains recipes that play an animation when first viewed on the recipe book.\n\n

This is saved under {@code toBeDisplayed} key in the player NBT data. + f Lorg/slf4j/Logger; field_15303 LOGGER + f Ljava/util/Set; field_54550 unlocked + f Ljava/lang/String; field_29820 RECIPE_BOOK_KEY + f Lnet/minecraft/class_3441$class_10271; field_54552 collector + m (Lnet/minecraft/class_3441$class_10271;)V + p 1 collector + m (Ljava/util/List;Lnet/minecraft/class_5321;Lnet/minecraft/class_10297;)V method_64590 method_64590 + p 3 display + m (Ljava/util/List;Lnet/minecraft/class_8786;Lnet/minecraft/class_10297;)V method_64591 method_64591 + p 2 display + m (Lnet/minecraft/class_3222;)V method_14904 sendInitRecipesPacket + p 1 player + m (Ljava/util/Collection;Lnet/minecraft/class_3222;)I method_14903 unlockRecipes + p 2 player + p 1 recipes + m (Ljava/util/Collection;Lnet/minecraft/class_3222;)I method_14900 lockRecipes + p 2 player + p 1 recipes + m (Lnet/minecraft/class_5321;)V method_64596 markHighlighted + p 1 recipeKey + m (Lnet/minecraft/class_5321;)V method_64588 unlock + p 1 recipeKey + m (Lnet/minecraft/class_3441$class_11328;Ljava/util/function/Predicate;)V method_71343 unpack + p 1 packed + p 2 validPredicate + m (Ljava/util/List;Lnet/minecraft/class_10297;)V method_64592 method_64592 + p 1 display + m (Lnet/minecraft/class_5321;)V method_64594 lock + p 1 recipeKey + m (Lnet/minecraft/class_5321;)V method_64595 unmarkHighlighted + p 1 recipeKey + m (Lnet/minecraft/class_3441;)V method_64589 copyFrom + p 1 recipeBook + m (Lnet/minecraft/class_5321;)Z method_64593 isUnlocked + p 1 recipeKey + m (Lnet/minecraft/class_3441$class_11328;)V method_71342 unpack + p 1 packed + m (Ljava/util/List;Ljava/util/function/Consumer;Ljava/util/function/Predicate;)V method_20732 handleList + p 3 validPredicate + p 1 recipes + p 2 handler + m ()Lnet/minecraft/class_3441$class_11328; method_71344 pack +c net/minecraft/class_3441$class_10271 net/minecraft/server/network/ServerRecipeBook$DisplayCollector + m (Lnet/minecraft/class_5321;Ljava/util/function/Consumer;)V displaysForRecipe displaysForRecipe + p 2 adder + p 1 recipeKey +c net/minecraft/class_3441$class_11328 net/minecraft/server/network/ServerRecipeBook$Packed + f Lcom/mojang/serialization/Codec; field_60346 CODEC + f Lnet/minecraft/class_5411; comp_4196 settings + f Ljava/util/List; comp_4197 known + f Ljava/util/List; comp_4198 highlight + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71345 method_71345 + p 0 instance + m ()Ljava/util/List; comp_4197 known + m ()Ljava/util/List; comp_4198 highlight + m ()Lnet/minecraft/class_5411; comp_4196 settings + m (Lnet/minecraft/class_5411;Ljava/util/List;Ljava/util/List;)V + p 1 settings + p 2 known + p 3 highlight +c net/minecraft/class_4771 net/minecraft/block/FungusBlock + f Lnet/minecraft/class_5321; field_22135 featureKey + f Lnet/minecraft/class_265; field_22134 SHAPE + f D field_31099 GROW_CHANCE + f Lcom/mojang/serialization/MapCodec; field_46359 CODEC + f Lnet/minecraft/class_2248; field_41074 nylium + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;)V method_46682 method_46682 + p 3 featureEntry + m (Lnet/minecraft/class_4538;)Ljava/util/Optional; method_46683 getFeatureEntry + p 1 world + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2248;Lnet/minecraft/class_4970$class_2251;)V + p 1 featureKey + p 2 nylium + p 3 settings + m (Lnet/minecraft/class_4771;)Lnet/minecraft/class_5321; method_54021 method_54021 + p 0 block + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54019 method_54019 + p 0 instance + m (Lnet/minecraft/class_4771;)Lnet/minecraft/class_2248; method_54020 method_54020 + p 0 block +c net/minecraft/class_4774 net/minecraft/block/RootsBlock + f Lnet/minecraft/class_265; field_22137 SHAPE + f Lcom/mojang/serialization/MapCodec; field_46429 CODEC +c net/minecraft/class_3442 net/minecraft/stat/ServerStatHandler + f Lcom/google/gson/Gson; field_64112 GSON + f Lcom/mojang/serialization/Codec; field_56612 CODEC + f Ljava/nio/file/Path; field_15305 path + f Lorg/slf4j/Logger; field_15309 LOGGER + f Ljava/util/Set; field_15307 pendingStats + m (Lcom/mojang/datafixers/DataFixer;Lcom/google/gson/JsonElement;)V method_14906 parse + p 1 dataFixer + p 2 json + m ()Ljava/util/Set; method_14909 takePendingStats + m (Lnet/minecraft/server/MinecraftServer;Ljava/nio/file/Path;)V + p 2 path + p 1 server + m (Lnet/minecraft/class_3222;)V method_14910 sendStats + p 1 player + m (Ljava/util/Map;Lnet/minecraft/class_3448;Ljava/util/Map;)V method_67584 method_67584 + p 2 stats + p 1 type + m (Lnet/minecraft/class_3448;)Lcom/mojang/serialization/Codec; method_67580 createCodec + p 0 statType + m (Ljava/util/Map;)Ljava/util/Map; method_67583 method_67583 + p 0 stats + m ()Lcom/google/gson/JsonElement; method_14911 asString + m ()V method_14912 save + m ()V method_14914 updateStatSet + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_3448; method_67582 method_67582 + p 0 entry + m (Lnet/minecraft/class_3448;Lnet/minecraft/class_3445;)Lcom/mojang/serialization/DataResult; method_67581 method_67581 + p 1 stat + m (Ljava/util/Map;)Ljava/util/Map; method_67586 method_67586 + p 0 statsByTypes + m (Ljava/lang/String;)V method_76061 method_76061 + p 1 error +c net/minecraft/class_3443 net/minecraft/structure/StructurePiece + f Lnet/minecraft/class_2350; field_15312 facing + f Lnet/minecraft/class_2470; field_15313 rotation + f Ljava/util/Set; field_15311 BLOCKS_NEEDING_POST_PROCESSING + f Lnet/minecraft/class_3341; field_15315 boundingBox + f Lnet/minecraft/class_3773; field_16712 type + f Lnet/minecraft/class_2415; field_15310 mirror + f I field_15316 chainLength + f Lnet/minecraft/class_2680; field_15314 AIR + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;IIIIIILnet/minecraft/class_2680;Lnet/minecraft/class_2680;Z)V method_14940 fillWithOutline + p 9 outline + p 8 maxZ + p 11 cantReplaceAir + p 10 inside + p 5 minZ + p 4 minY + p 7 maxY + p 6 maxX + p 1 world + p 3 minX + p 2 box + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5138;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_1923;Lnet/minecraft/class_2338;)V method_14931 generate + p 1 world + p 2 structureAccessor + p 3 chunkGenerator + p 4 random + p 5 chunkBox + p 6 chunkPos + p 7 pivot + m (Lnet/minecraft/class_2350;)V method_14926 setOrientation + p 1 orientation + m (Lnet/minecraft/class_4538;IIILnet/minecraft/class_3341;)Z method_14939 isUnderSeaLevel + p 2 x + p 1 world + p 5 box + p 4 y + p 3 z + m (I)V method_41620 setChainLength + p 1 chainLength + m ()Lnet/minecraft/class_2470; method_16888 getRotation + m (Lnet/minecraft/class_2680;)Z method_33881 canReplace + p 1 state + m (II)I method_14941 applyZTransform + p 2 z + p 1 x + m (Lnet/minecraft/class_1923;I)Z method_16654 intersectsChunk + p 2 offset + p 1 pos + m (Lnet/minecraft/class_3443;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;)V method_14918 fillOpenings + p 2 holder + p 1 start + p 3 random + m ()I method_14923 getChainLength + m (Lnet/minecraft/class_6625;Lnet/minecraft/class_2487;)V method_14943 writeNbt + p 1 context + p 2 nbt + m ()Lnet/minecraft/class_2338; method_35458 getCenter + m ()Lnet/minecraft/class_3773; method_16653 getType + m (Lnet/minecraft/class_4538;IIILnet/minecraft/class_3341;)Z method_33780 canAddBlock + p 5 box + p 4 z + p 1 world + p 3 y + p 2 x + m (Lnet/minecraft/class_1922;IIILnet/minecraft/class_3341;)Lnet/minecraft/class_2680; method_14929 getBlockAt + p 5 box + p 4 z + p 3 y + p 2 x + p 1 world + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2680;IIILnet/minecraft/class_3341;)V method_14936 fillDownwards + p 2 state + p 3 x + p 1 world + p 6 box + p 4 y + p 5 z + m (III)Lnet/minecraft/class_2338$class_2339; method_33781 offsetPos + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;IIIIIILnet/minecraft/class_2680;Z)V method_14919 fillHalfEllipsoid + p 1 world + p 3 minX + p 2 bounds + p 9 block + p 8 maxZ + p 10 cantReplaceAir + p 5 minZ + p 4 minY + p 7 maxY + p 6 maxX + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;Lnet/minecraft/class_5819;FIIIIIILnet/minecraft/class_2680;Lnet/minecraft/class_2680;ZZ)V method_14933 fillWithOutlineUnderSeaLevel + p 7 minZ + p 8 maxX + p 5 minX + p 6 minY + p 3 random + p 4 blockChance + p 1 world + p 2 box + p 13 cantReplaceAir + p 14 stayBelowSeaLevel + p 11 outline + p 12 inside + p 9 maxY + p 10 maxZ + m (Lnet/minecraft/class_3773;ILnet/minecraft/class_3341;)V + p 1 type + p 2 length + p 3 boundingBox + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;Lnet/minecraft/class_3341;ZLnet/minecraft/class_5819;Lnet/minecraft/class_3443$class_3444;)V method_35456 fillWithOutline + p 3 fillBox + p 4 cantReplaceAir + p 1 world + p 2 box + p 5 random + p 6 randomizer + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_14916 orientateChest + p 2 state + p 1 pos + p 0 world + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2680;IIILnet/minecraft/class_3341;)V method_14917 addBlock + p 6 box + p 5 z + p 2 block + p 1 world + p 4 y + p 3 x + m (I)I method_14924 applyYTransform + p 1 y + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;Lnet/minecraft/class_3341;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Z)V method_35455 fillWithOutline + p 2 box + p 1 world + p 4 outline + p 3 fillBox + p 6 cantReplaceAir + p 5 inside + m (III)V method_14922 translate + p 3 z + p 2 y + p 1 x + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;Lnet/minecraft/class_5321;)Z method_14930 addDispenser + p 1 world + p 4 x + p 5 y + p 2 boundingBox + p 3 random + p 8 lootTable + p 6 z + p 7 facing + m (Ljava/util/List;Lnet/minecraft/class_3341;)Lnet/minecraft/class_3443; method_38702 firstIntersecting + p 1 box + p 0 pieces + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;Lnet/minecraft/class_5819;FIIILnet/minecraft/class_2680;)V method_14945 addBlockWithRandomThreshold + p 5 x + p 6 y + p 7 z + p 8 state + p 1 world + p 2 bounds + p 3 random + p 4 threshold + m (Lnet/minecraft/class_3773;Lnet/minecraft/class_2487;)V + p 2 nbt + p 1 type + m ()Lnet/minecraft/class_3341; method_14935 getBoundingBox + m (IIILnet/minecraft/class_2350;III)Lnet/minecraft/class_3341; method_35454 createBox + p 6 depth + p 5 height + p 2 z + p 1 y + p 4 width + p 3 orientation + p 0 x + m ()Lnet/minecraft/class_2415; method_35460 getMirror + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;IIIIII)V method_14942 fill + p 8 maxZ + p 6 maxX + p 7 maxY + p 4 minY + p 5 minZ + p 2 bounds + p 3 minX + p 1 world + m (Lnet/minecraft/class_6625;)Lnet/minecraft/class_2487; method_14946 toNbt + p 1 context + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_2350; method_35457 getRandomHorizontalDirection + p 0 random + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_3341;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_5321;Lnet/minecraft/class_2680;)Z method_14921 addChest + p 6 block + p 5 lootTable + p 4 pos + p 3 random + p 2 boundingBox + p 1 world + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;IIIIIIZLnet/minecraft/class_5819;Lnet/minecraft/class_3443$class_3444;)V method_14938 fillWithOutline + p 11 randomizer + p 10 random + p 7 maxY + p 6 maxX + p 9 cantReplaceAir + p 8 maxZ + p 3 minX + p 2 box + p 5 minZ + p 4 minY + p 1 world + m (Ljava/util/stream/Stream;)Lnet/minecraft/class_3341; method_38703 boundingBox + p 0 pieces + m (II)I method_14928 applyXTransform + p 1 x + p 2 z + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;Lnet/minecraft/class_5819;IIILnet/minecraft/class_5321;)Z method_14915 addChest + p 1 world + p 2 boundingBox + p 7 lootTable + p 5 y + p 6 z + p 3 random + p 4 x + m ()Lnet/minecraft/class_2350; method_14934 getFacing +c net/minecraft/class_3443$class_3444 net/minecraft/structure/StructurePiece$BlockRandomizer + f Lnet/minecraft/class_2680; field_15317 block + m (Lnet/minecraft/class_5819;IIIZ)V method_14948 setBlock + p 1 random + p 2 x + p 3 y + p 4 z + p 5 placeBlock + m ()Lnet/minecraft/class_2680; method_14947 getBlock +c net/minecraft/class_4773 net/minecraft/block/NetherrackBlock + f Lcom/mojang/serialization/MapCodec; field_46404 CODEC +c net/minecraft/class_2108 net/minecraft/advancement/criterion/TravelCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_243;)V method_9080 trigger + p 2 startPos + p 1 player + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_2108$class_2110;)Z method_22486 method_22486 + p 3 conditions +c net/minecraft/class_2108$class_2110 net/minecraft/advancement/criterion/TravelCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47239 CODEC + f Ljava/util/Optional; comp_2044 startPosition + f Ljava/util/Optional; comp_2045 distance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54976 method_54976 + p 0 instance + m (Lnet/minecraft/class_2025;)Lnet/minecraft/class_175; method_9085 netherTravel + p 0 distance + m (Lnet/minecraft/class_2048$class_2049;Lnet/minecraft/class_2025;Lnet/minecraft/class_2090$class_2091;)Lnet/minecraft/class_175; method_38851 fallFromHeight + p 2 startPos + p 1 distance + p 0 entity + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 2 startPos + p 3 distance + m (Lnet/minecraft/class_2048$class_2049;Lnet/minecraft/class_2025;)Lnet/minecraft/class_175; method_38850 rideEntityInLava + p 0 entity + p 1 distance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_243;)Z method_9086 matches + p 1 world + p 2 pos + p 3 endPos + m ()Ljava/util/Optional; comp_2045 distance + m ()Ljava/util/Optional; comp_2044 startPosition +c net/minecraft/class_3439 net/minecraft/recipe/book/RecipeBook + f Lnet/minecraft/class_5411; field_25734 options + m (Lnet/minecraft/class_5421;Z)V method_14884 setGuiOpen + p 1 category + p 2 open + m (Lnet/minecraft/class_5421;Z)V method_30177 setFilteringCraftable + p 1 category + p 2 filteringCraftable + m (Lnet/minecraft/class_5411;)V method_30174 setOptions + p 1 options + m ()Lnet/minecraft/class_5411; method_30173 getOptions + m (Lnet/minecraft/class_5421;)Z method_30176 isFilteringCraftable + p 1 category + m (Lnet/minecraft/class_5421;)Z method_14887 isGuiOpen + p 1 category + m (Lnet/minecraft/class_5421;ZZ)V method_30175 setCategoryOptions + p 1 category + p 3 filteringCraftable + p 2 guiOpen +c net/minecraft/class_4781 net/minecraft/world/gen/feature/HugeFungusFeature + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_4780;Lnet/minecraft/class_2338;IZ)V method_24440 generateStem + p 2 random + p 3 config + p 4 pos + p 5 stemHeight + p 6 thickStem + p 1 world + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_4780;Lnet/minecraft/class_2338;IZ)V method_24443 generateHat + p 1 world + p 2 random + p 3 config + p 4 pos + p 5 hatHeight + p 6 thickStem + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;Lnet/minecraft/class_4780;Z)Z method_24866 isReplaceable + p 0 world + p 1 pos + p 2 config + p 3 checkConfig + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Z)V method_24441 placeWithOptionalVines + p 4 state + p 5 vines + p 1 world + p 2 random + p 3 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;)V method_24442 generateVines + p 0 pos + p 2 random + p 1 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_4780;Lnet/minecraft/class_2338$class_2339;FFF)V method_24439 placeHatBlock + p 6 generationChance + p 7 vineChance + p 4 pos + p 5 decorationChance + p 2 random + p 3 config + p 1 world +c net/minecraft/class_4780 net/minecraft/world/gen/feature/HugeFungusFeatureConfig + f Lnet/minecraft/class_2680; field_22192 hatState + f Lnet/minecraft/class_2680; field_22191 stemState + f Lcom/mojang/serialization/Codec; field_24838 CODEC + f Lnet/minecraft/class_6646; field_44709 replaceableBlocks + f Lnet/minecraft/class_2680; field_22193 decorationState + f Lnet/minecraft/class_2680; field_22435 validBaseBlock + f Z field_22194 planted + m (Lnet/minecraft/class_4780;)Lnet/minecraft/class_6646; method_51528 method_51528 + p 0 config + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_6646;Z)V + p 6 planted + p 4 decorationState + p 5 replaceableBlocks + p 2 stemState + p 3 hatState + p 1 validBaseBlock + m (Lnet/minecraft/class_4780;)Ljava/lang/Boolean; method_28630 method_28630 + p 0 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28631 method_28631 + p 0 instance + m (Lnet/minecraft/class_4780;)Lnet/minecraft/class_2680; method_28635 method_28635 + p 0 config + m (Lnet/minecraft/class_4780;)Lnet/minecraft/class_2680; method_28634 method_28634 + p 0 config + m (Lnet/minecraft/class_4780;)Lnet/minecraft/class_2680; method_28633 method_28633 + p 0 config + m (Lnet/minecraft/class_4780;)Lnet/minecraft/class_2680; method_28632 method_28632 + p 0 config +c net/minecraft/class_4787 net/minecraft/structure/NetherFossilGenerator + f [Lnet/minecraft/class_2960; field_22197 FOSSILS + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)V method_24453 addPieces + p 1 holder + p 0 manager + p 3 pos + p 2 random +c net/minecraft/class_4787$class_4788 net/minecraft/structure/NetherFossilGenerator$Piece + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2487;)V + p 1 manager + p 2 nbt + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2960;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;)V + p 2 template + p 1 manager + p 4 rotation + p 3 pos + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_3341;)V method_70757 generateDriedGhast + p 4 chunkBox + p 3 box + p 2 random + p 1 world + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_2960;)Lnet/minecraft/class_3492; method_35432 method_35432 + p 1 id + m (Lnet/minecraft/class_2470;)Lnet/minecraft/class_3492; method_35431 createPlacementData + p 0 rotation +c net/minecraft/class_4782 net/minecraft/world/gen/feature/NetherForestVegetationFeature +c net/minecraft/class_4785 net/minecraft/world/gen/structure/NetherFossilStructure + f Lcom/mojang/serialization/MapCodec; field_37804 CODEC + f Lnet/minecraft/class_6122; field_37805 height + m (Lnet/minecraft/class_3195$class_7302;Lnet/minecraft/class_6122;)V + p 2 height + p 1 config + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_2919;Lnet/minecraft/class_2338;Lnet/minecraft/class_6626;)V method_41672 method_41672 + p 0 collector + p 3 holder + m (Lnet/minecraft/class_4785;)Lnet/minecraft/class_6122; method_41673 method_41673 + p 0 structure +c net/minecraft/class_4784 net/minecraft/world/gen/feature/WeepingVinesFeature + f [Lnet/minecraft/class_2350; field_22196 DIRECTIONS + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338$class_2339;III)V method_24450 generateVineColumn + p 5 maxAge + p 4 minAge + p 1 random + p 0 world + p 3 length + p 2 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)V method_24451 generateNetherWartBlocksInArea + p 2 random + p 3 pos + p 1 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)V method_24452 generateVinesInArea + p 3 pos + p 1 world + p 2 random +c net/minecraft/class_2123 net/minecraft/advancement/criterion/ShotCrossbowCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1799;)V method_9115 trigger + p 1 player + p 2 stack + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_2123$class_2125;)Z method_22509 method_22509 + p 1 conditions +c net/minecraft/class_2123$class_2125 net/minecraft/advancement/criterion/ShotCrossbowCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47334 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2090 item + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 2 item + p 1 playerPredicate + m (Ljava/util/Optional;)Lnet/minecraft/class_175; method_35323 create + p 0 item + m (Lnet/minecraft/class_1799;)Z method_9121 matches + p 1 stack + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_1935;)Lnet/minecraft/class_175; method_9120 create + p 0 itemRegistry + p 1 item + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55123 method_55123 + p 0 instance + m ()Ljava/util/Optional; comp_2090 item +c net/minecraft/class_3448 net/minecraft/stat/StatType + f Lnet/minecraft/class_2561; field_26382 name + f Ljava/util/Map; field_15324 stats + f Lnet/minecraft/class_9139; field_48281 packetCodec + f Lnet/minecraft/class_2378; field_15323 registry + m (Ljava/lang/Object;Lnet/minecraft/class_3446;)Lnet/minecraft/class_3445; method_14955 getOrCreateStat + p 2 formatter + p 1 key + m (Ljava/lang/Object;)Lnet/minecraft/class_3445; method_14956 getOrCreateStat + p 1 key + m ()Lnet/minecraft/class_2378; method_14959 getRegistry + m (Lnet/minecraft/class_3446;Ljava/lang/Object;)Lnet/minecraft/class_3445; method_14961 method_14961 + p 2 value + m ()Lnet/minecraft/class_2561; method_30739 getName + m ()Lnet/minecraft/class_9139; method_56054 getPacketCodec + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_2561;)V + p 1 registry + p 2 name + m (Ljava/lang/Object;)Z method_14958 hasStat + p 1 key +c net/minecraft/class_4779 net/minecraft/world/gen/feature/BasaltPillarFeature + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)V method_24434 tryPlaceBasalt + p 2 random + p 1 world + p 3 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Z method_24435 stopOrPlaceBasalt + p 1 world + p 3 pos + p 2 random +c net/minecraft/class_3449 net/minecraft/structure/StructureStart + c A structure start is created to describe a structure that will be generated by\nchunk generation. It contains a definition of its pieces and is associated\nwith the chunk that the structure originates from. + f Lorg/slf4j/Logger; field_37751 LOGGER + f Lnet/minecraft/class_3449; field_16713 DEFAULT + f Ljava/lang/String; field_31662 INVALID + f Lnet/minecraft/class_1923; field_29070 pos + f Lnet/minecraft/class_3195; field_16714 structure + f Lnet/minecraft/class_6624; field_34940 children + f Lnet/minecraft/class_3341; field_31663 boundingBox + f I field_15326 references + c The number of chunks that intersect the structures bounding box,\nand have stored references to its starting chunk.\n

\nThis number can be lower than the number of potential\nintersecting chunks, since it is only updated when an actual reference\nis created in such chunks (when they enter the corresponding chunk generation\nphase). + m ()I method_23676 getReferences + m ()Lnet/minecraft/class_3341; method_14969 getBoundingBox + m ()Lnet/minecraft/class_3195; method_16656 getStructure + m ()Ljava/util/List; method_14963 getChildren + m ()V method_14964 incrementReferences + m ()Z method_14979 isNeverReferenced + m ()Z method_16657 hasChildren + m (Lnet/minecraft/class_3195;Lnet/minecraft/class_1923;ILnet/minecraft/class_6624;)V + p 3 references + p 4 children + p 1 structure + p 2 pos + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5138;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_1923;)V method_14974 place + p 1 world + p 6 chunkPos + p 3 chunkGenerator + p 2 structureAccessor + p 5 chunkBox + p 4 random + m ()I method_14970 getMinReferencedStructureReferenceCount + m (Lnet/minecraft/class_6625;Lnet/minecraft/class_2487;J)Lnet/minecraft/class_3449; method_41621 fromNbt + p 1 nbt + p 2 seed + p 0 context + m ()Lnet/minecraft/class_1923; method_34000 getPos + m (Lnet/minecraft/class_6625;Lnet/minecraft/class_1923;)Lnet/minecraft/class_2487; method_14972 toNbt + p 1 context + p 2 chunkPos +c net/minecraft/class_2119 net/minecraft/advancement/criterion/RecipeUnlockedCriterion + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_175; method_27847 create + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_8786;)V method_9107 trigger + p 1 player + p 2 recipe + m (Lnet/minecraft/class_8786;Lnet/minecraft/class_2119$class_2121;)Z method_22508 method_22508 + p 1 conditions +c net/minecraft/class_2119$class_2121 net/minecraft/advancement/criterion/RecipeUnlockedCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47333 CODEC + f Ljava/util/Optional; comp_2029 player + f Lnet/minecraft/class_5321; comp_2089 recipe + m (Lnet/minecraft/class_8786;)Z method_9112 matches + p 1 recipe + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55118 method_55118 + p 0 instance + m (Ljava/util/Optional;Lnet/minecraft/class_5321;)V + p 1 playerPredicate + p 2 recipe + m ()Lnet/minecraft/class_5321; comp_2089 recipe +c net/minecraft/class_4754 net/minecraft/datafixer/fix/WallPropertyFix + f Ljava/util/Set; field_21960 TARGET_BLOCK_IDS + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24325 method_24325 + p 0 blockStateTyped + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_24324 updateWallValueReference + p 1 propertyName + p 0 propertiesDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24323 updateWallProperties + p 0 blockStateDynamic + m (Ljava/lang/String;)Ljava/lang/String; method_24326 booleanToWallType + p 0 value + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24327 method_24327 + p 0 propertiesDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24328 method_24328 + p 0 propertyValue +c net/minecraft/class_4756 net/minecraft/datafixer/schema/Schema2502 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_4755 net/minecraft/datafixer/schema/Schema2501 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_24330 registerFurnace + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_4752 net/minecraft/datafixer/fix/FurnaceRecipesFix + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24312 method_24312 + p 9 blockEntityTyped + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24317 method_24317 + p 3 smokerTyped + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24318 method_24318 + p 3 blastFurnaceTyped + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24319 method_24319 + p 3 furnaceTyped + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24314 updateBlockEntityData + p 2 recipesUsedType + p 1 recipeType + p 3 smelterTyped + m (Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/TypeRewriteRule; method_24313 updateBlockEntities + p 1 recipeType +c net/minecraft/class_3421 net/minecraft/structure/StrongholdGenerator + f Lnet/minecraft/class_3421$class_3432; field_15263 STONE_BRICK_RANDOMIZER + f Ljava/lang/Class; field_15266 activePieceType + f I field_15264 totalWeight + f [Lnet/minecraft/class_3421$class_3427; field_15265 ALL_PIECES + f Ljava/util/List; field_15267 possiblePieces + m ()Z method_14852 checkRemainingPieces + m (Ljava/lang/Class;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3421$class_3437; method_14847 createPiece + p 7 chainLength + p 5 z + p 6 orientation + p 3 x + p 4 y + p 1 holder + p 2 random + p 0 pieceType + m ()V method_14855 init + m (Lnet/minecraft/class_3421$class_3434;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3421$class_3437; method_14851 pickPiece + p 0 start + p 1 holder + p 2 random + p 3 x + p 4 y + p 5 z + p 6 orientation + p 7 chainLength + m (Lnet/minecraft/class_3421$class_3434;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3443; method_14854 pieceGenerator + p 4 y + p 3 x + p 6 orientation + p 5 z + p 0 start + p 2 random + p 1 holder + p 7 chainLength +c net/minecraft/class_3421$class_3425 net/minecraft/structure/StrongholdGenerator$LeftTurn + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 2 random + p 1 chainLength + p 4 orientation + p 3 boundingBox + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3421$class_3425; method_14859 create + p 2 x + p 1 random + p 0 holder + p 6 chainLength + p 5 orientation + p 4 z + p 3 y +c net/minecraft/class_3421$class_3426 net/minecraft/structure/StrongholdGenerator$Library + f I field_31638 SIZE_Z + f I field_31637 SIZE_Y + f Z field_15274 tall + f I field_31635 SIZE_X + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3421$class_3426; method_14860 create + p 0 holder + p 5 orientation + p 6 chainLength + p 1 random + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 1 chainLength + p 3 boundingBox + p 2 random + p 4 orientation +c net/minecraft/class_3421$class_3427 net/minecraft/structure/StrongholdGenerator$PieceData + f Ljava/lang/Class; field_15276 pieceType + f I field_15275 limit + f I field_15278 weight + f I field_15277 generatedCount + m ()Z method_14861 canGenerate + m (I)Z method_14862 canGenerate + p 1 chainLength + m (Ljava/lang/Class;II)V + p 2 weight + p 1 pieceType + p 3 limit +c net/minecraft/class_3421$class_3428 net/minecraft/structure/StrongholdGenerator$PortalRoom + f I field_31639 SIZE_X + f I field_31640 SIZE_Y + f Z field_15279 spawnerPlaced + f I field_31641 SIZE_Z + m (Lnet/minecraft/class_6130;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3421$class_3428; method_14863 create + p 0 holder + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 chainLength + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (ILnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 3 orientation + p 2 boundingBox + p 1 chainLength +c net/minecraft/class_3421$class_3422 net/minecraft/structure/StrongholdGenerator$ChestCorridor + f I field_31629 SIZE_X + f I field_31630 SIZE_Y + f Z field_15268 chestGenerated + f I field_31631 SIZE_Z + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 4 orientation + p 3 boundingBox + p 2 random + p 1 chainLength + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3421$class_3422; method_14856 create + p 4 z + p 5 orientation + p 2 x + p 3 y + p 6 chainlength + p 0 holder + p 1 random +c net/minecraft/class_3421$class_3466 net/minecraft/structure/StrongholdGenerator$Turn + f I field_31657 SIZE_X + f I field_31658 SIZE_Y + f I field_31659 SIZE_Z +c net/minecraft/class_3421$class_3423 net/minecraft/structure/StrongholdGenerator$SmallCorridor + f I field_15269 length + m (ILnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 1 chainLength + p 3 orientation + p 2 boundingBox + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;)Lnet/minecraft/class_3341; method_14857 create + p 1 random + p 0 holder + p 3 y + p 2 x + p 5 orientation + p 4 z +c net/minecraft/class_3421$class_3424 net/minecraft/structure/StrongholdGenerator$FiveWayCrossing + f I field_31634 SIZE_Z + f Z field_15273 lowerLeftExists + f Z field_15270 upperRightExists + f Z field_15272 upperLeftExists + f Z field_15271 lowerRightExists + f I field_31632 SIZE_X + f I field_31633 SIZE_Y + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 1 chainLength + p 2 random + p 3 boundingBox + p 4 orientation + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3421$class_3424; method_14858 create + p 3 y + p 2 x + p 1 random + p 0 holder + p 6 chainLength + p 5 orientation + p 4 z +c net/minecraft/class_3421$class_3429 net/minecraft/structure/StrongholdGenerator$PrisonHall + f I field_31644 SIZE_Z + f I field_31642 SIZE_X + f I field_31643 SIZE_Y + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3421$class_3429; method_14864 create + p 5 orientation + p 6 chainLength + p 3 y + p 4 z + p 1 random + p 2 x + p 0 holder + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 4 orientation + p 3 boundingBox + p 2 random + p 1 chainLength + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3421$class_3430 net/minecraft/structure/StrongholdGenerator$RightTurn + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3421$class_3430; method_16652 create + p 6 chainLength + p 3 y + p 2 x + p 5 orientation + p 4 z + p 1 random + p 0 holder + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 4 orientation + p 3 boundingBox + p 2 random + p 1 chainLength + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3421$class_3431 net/minecraft/structure/StrongholdGenerator$SquareRoom + f I field_15280 roomType + f I field_31647 SIZE_Z + f I field_31645 SIZE_X + f I field_31646 SIZE_Y + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 4 orientation + p 1 chainLength + p 3 boundingBox + p 2 random + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3421$class_3431; method_14865 create + p 4 z + p 5 orientation + p 6 chainLength + p 0 holder + p 1 random + p 2 x + p 3 y +c net/minecraft/class_3421$class_3436 net/minecraft/structure/StrongholdGenerator$Stairs + f I field_31655 SIZE_Y + f I field_31656 SIZE_Z + f I field_31654 SIZE_X + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3421$class_3436; method_14868 create + p 4 z + p 3 y + p 2 x + p 1 random + p 6 chainLength + p 5 orientation + p 0 holder + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 4 orientation + p 3 boundingBox + p 2 random + p 1 chainLength + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3421$class_3437 net/minecraft/structure/StrongholdGenerator$Piece + f Lnet/minecraft/class_3421$class_3437$class_3438; field_15287 entryDoor + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_3421$class_3437$class_3438;III)V method_14872 generateEntrance + p 2 random + p 1 world + p 6 y + p 5 x + p 4 type + p 3 boundingBox + p 7 z + m (Lnet/minecraft/class_3421$class_3434;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;II)Lnet/minecraft/class_3443; method_14873 fillSEOpening + p 3 random + p 2 holder + p 1 start + p 5 leftRightOffset + p 4 heightOffset + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_3421$class_3437$class_3438; method_14869 getRandomEntrance + p 1 random + m (Lnet/minecraft/class_3421$class_3434;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;II)Lnet/minecraft/class_3443; method_14874 fillForwardOpening + p 2 holder + p 1 start + p 5 heightOffset + p 4 leftRightOffset + p 3 random + m (Lnet/minecraft/class_3341;)Z method_14871 isInBounds + p 0 boundingBox + m (Lnet/minecraft/class_3421$class_3434;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;II)Lnet/minecraft/class_3443; method_14870 fillNWOpening + p 5 leftRightOffset + p 4 heightOffset + p 3 random + p 2 holder + p 1 start +c net/minecraft/class_3421$class_3437$class_3438 net/minecraft/structure/StrongholdGenerator$Piece$EntranceType + f Lcom/mojang/serialization/Codec; field_56683 CODEC + f Lnet/minecraft/class_3421$class_3437$class_3438; field_15289 GRATES + f Lnet/minecraft/class_3421$class_3437$class_3438; field_15288 OPENING + f Lnet/minecraft/class_3421$class_3437$class_3438; field_15291 IRON_DOOR + f Lnet/minecraft/class_3421$class_3437$class_3438; field_15290 WOOD_DOOR +c net/minecraft/class_3421$class_3432 net/minecraft/structure/StrongholdGenerator$StoneBrickRandomizer +c net/minecraft/class_3421$class_3433 net/minecraft/structure/StrongholdGenerator$SpiralStaircase + f I field_31649 SIZE_Y + f I field_31648 SIZE_X + f Z field_15281 isStructureStart + f I field_31650 SIZE_Z + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 4 orientation + p 2 random + p 3 boundingBox + p 1 chainLength + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3421$class_3433; method_14866 create + p 4 z + p 3 y + p 6 chainLength + p 5 orientation + p 0 holder + p 2 x + p 1 random + m (Lnet/minecraft/class_3773;IIILnet/minecraft/class_2350;)V + p 1 structurePieceType + p 3 x + p 2 chainLength + p 5 orientation + p 4 z +c net/minecraft/class_3421$class_3434 net/minecraft/structure/StrongholdGenerator$Start + f Ljava/util/List; field_15282 pieces + f Lnet/minecraft/class_3421$class_3428; field_15283 portalRoom + f Lnet/minecraft/class_3421$class_3427; field_15284 lastPiece + m (Lnet/minecraft/class_5819;II)V + p 1 random +c net/minecraft/class_3421$class_3435 net/minecraft/structure/StrongholdGenerator$Corridor + f Z field_15285 rightExitExists + f Z field_15286 leftExitExists + f I field_31651 SIZE_X + f I field_31652 SIZE_Y + f I field_31653 SIZE_Z + m (Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;IIILnet/minecraft/class_2350;I)Lnet/minecraft/class_3421$class_3435; method_14867 create + p 4 z + p 5 orientation + p 2 x + p 3 y + p 6 chainLength + p 0 holder + p 1 random + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_2350;)V + p 4 orientation + p 3 boundingBox + p 2 random + p 1 chainLength + m (Lnet/minecraft/class_2487;)V + p 1 nbt +c net/minecraft/class_3419 net/minecraft/sound/SoundCategory + f Ljava/lang/String; field_15249 name + f Lnet/minecraft/class_3419; field_61058 UI + f Lnet/minecraft/class_3419; field_15245 BLOCKS + f Lnet/minecraft/class_3419; field_15246 VOICE + f Lnet/minecraft/class_3419; field_15247 RECORDS + f Lnet/minecraft/class_3419; field_15248 PLAYERS + f Lnet/minecraft/class_3419; field_15250 MASTER + f Lnet/minecraft/class_3419; field_15251 HOSTILE + f Lnet/minecraft/class_3419; field_15252 WEATHER + f Lnet/minecraft/class_3419; field_15253 MUSIC + f Lnet/minecraft/class_3419; field_15254 NEUTRAL + f Lnet/minecraft/class_3419; field_15256 AMBIENT + m ()Ljava/lang/String; method_14840 getName + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_3415 net/minecraft/structure/ShipwreckGenerator + f Lnet/minecraft/class_2338; field_14536 DEFAULT_POSITION + f I field_51512 LARGE_SIZE_LIMIT + f Ljava/util/Map; field_34939 LOOT_TABLES + f [Lnet/minecraft/class_2960; field_14534 BEACHED_TEMPLATES + f [Lnet/minecraft/class_2960; field_14535 REGULAR_TEMPLATES + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;Z)Lnet/minecraft/class_3415$class_3416; method_59864 addParts + p 1 pos + p 0 structureTemplateManager + p 3 holder + p 2 rotation + p 5 beached + p 4 random +c net/minecraft/class_3415$class_3416 net/minecraft/structure/ShipwreckGenerator$Piece + f Z field_14538 grounded + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2487;)V + p 2 nbt + p 1 manager + m (ILnet/minecraft/class_5819;)I method_59865 findGroundedY + p 2 random + p 1 y + m ()Z method_59867 isTooLargeForNormalGeneration + m (Lnet/minecraft/class_2470;)Lnet/minecraft/class_3492; method_35452 createPlacementData + p 0 rotation + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_2960;)Lnet/minecraft/class_3492; method_35453 method_35453 + p 1 id + m (I)V method_59866 setY + p 1 y + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2960;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Z)V + p 1 manager + p 2 identifier + p 3 pos + p 4 rotation + p 5 grounded +c net/minecraft/class_4749 net/minecraft/client/gui/screen/multiplayer/MultiplayerWarningScreen + f Lnet/minecraft/class_437; field_39354 parent + f Lnet/minecraft/class_2561; field_21845 CHECK_MESSAGE + f Lnet/minecraft/class_2561; field_21846 NARRATED_TEXT + f Lnet/minecraft/class_2561; field_21843 HEADER + f Lnet/minecraft/class_2561; field_21844 MESSAGE + m (Lnet/minecraft/class_4185;)V method_57752 method_57752 + p 1 button + m (Lnet/minecraft/class_4185;)V method_57751 method_57751 + p 1 button + m (Lnet/minecraft/class_437;)V + p 1 parent +c net/minecraft/class_3417 net/minecraft/sound/SoundEvents + f I field_39027 GOAT_HORN_SOUND_COUNT + f Lcom/google/common/collect/ImmutableList; field_39028 GOAT_HORN_SOUNDS + f Ljava/util/Map; field_57074 WOLF_SOUNDS + f Lnet/minecraft/class_3414; field_37356 BLOCK_SCULK_VEIN_STEP + f Lnet/minecraft/class_6880; field_14717 ITEM_TRIDENT_RIPTIDE_3 + f Lnet/minecraft/class_3414; field_14587 ENTITY_PARROT_IMITATE_SKELETON + f Lnet/minecraft/class_3414; field_37357 BLOCK_SCULK_SPREAD + f Lnet/minecraft/class_3414; field_14586 ENTITY_LLAMA_ANGRY + f Lnet/minecraft/class_6880$class_6883; field_41705 BLOCK_NOTE_BLOCK_IMITATE_PIGLIN + f Lnet/minecraft/class_3414; field_37358 BLOCK_SCULK_CHARGE + f Lnet/minecraft/class_3414; field_14585 ENTITY_ITEM_FRAME_BREAK + f Lnet/minecraft/class_3414; field_37359 BLOCK_SCULK_BREAK + f Lnet/minecraft/class_3414; field_14584 ENTITY_GUARDIAN_FLOP + f Lnet/minecraft/class_6880$class_6883; field_41703 BLOCK_NOTE_BLOCK_IMITATE_ENDER_DRAGON + f Lnet/minecraft/class_3414; field_37352 BLOCK_SCULK_VEIN_BREAK + f Lnet/minecraft/class_3414; field_14583 BLOCK_GLASS_HIT + f Lnet/minecraft/class_6880$class_6883; field_41704 BLOCK_NOTE_BLOCK_IMITATE_WITHER_SKELETON + f Lnet/minecraft/class_3414; field_37353 BLOCK_SCULK_VEIN_FALL + f Lnet/minecraft/class_3414; field_14582 ENTITY_ENDERMITE_HURT + f Lnet/minecraft/class_3414; field_37354 BLOCK_SCULK_VEIN_HIT + f Lnet/minecraft/class_6880$class_6883; field_41700 BLOCK_NOTE_BLOCK_IMITATE_ZOMBIE + f Lnet/minecraft/class_6880$class_6883; field_41702 BLOCK_NOTE_BLOCK_IMITATE_CREEPER + f Lnet/minecraft/class_3414; field_37355 BLOCK_SCULK_VEIN_PLACE + f Lnet/minecraft/class_3414; field_14580 ENTITY_BLAZE_DEATH + f Lnet/minecraft/class_6880$class_6883; field_41701 BLOCK_NOTE_BLOCK_IMITATE_SKELETON + f Lnet/minecraft/class_3414; field_14589 ENTITY_CAT_PURREOW + f Lnet/minecraft/class_3414; field_14588 ENTITY_WITHER_SHOOT + f Lnet/minecraft/class_3414; field_29192 ENTITY_GLOW_ITEM_FRAME_ROTATE_ITEM + f Lnet/minecraft/class_3414; field_29191 ENTITY_GLOW_ITEM_FRAME_REMOVE_ITEM + f Lnet/minecraft/class_3414; field_29190 ENTITY_GLOW_ITEM_FRAME_PLACE + f Lnet/minecraft/class_3414; field_37360 BLOCK_SCULK_FALL + f Lnet/minecraft/class_3414; field_14591 ENTITY_FISH_SWIM + f Lnet/minecraft/class_3414; field_37361 BLOCK_SCULK_HIT + f Lnet/minecraft/class_3414; field_28969 BLOCK_DEEPSLATE_BRICKS_FALL + f Lnet/minecraft/class_3414; field_14590 ENTITY_DOLPHIN_EAT + f Lnet/minecraft/class_3414; field_37362 BLOCK_SCULK_PLACE + f Lnet/minecraft/class_3414; field_28968 BLOCK_DEEPSLATE_BRICKS_BREAK + f Lnet/minecraft/class_3414; field_37363 BLOCK_SCULK_STEP + f Lnet/minecraft/class_3414; field_37344 BLOCK_PACKED_MUD_STEP + f Lnet/minecraft/class_3414; field_14599 ENTITY_EVOKER_DEATH + f Lnet/minecraft/class_3414; field_56418 BLOCK_SAND_IDLE + f Lnet/minecraft/class_3414; field_14598 ENTITY_DONKEY_CHEST + f Lnet/minecraft/class_3414; field_37346 BLOCK_PACKED_MUD_BREAK + f Lnet/minecraft/class_3414; field_14597 ENTITY_COW_HURT + f Lnet/minecraft/class_3414; field_16865 BLOCK_GRINDSTONE_USE + f Lnet/minecraft/class_3414; field_37347 BLOCK_SCULK_SHRIEKER_BREAK + f Lnet/minecraft/class_3414; field_14596 ENTITY_FISHING_BOBBER_THROW + f Lnet/minecraft/class_3414; field_56416 BLOCK_DEADBUSH_IDLE + f Lnet/minecraft/class_3414; field_37340 BLOCK_MUDDY_MANGROVE_ROOTS_FALL + f Lnet/minecraft/class_3414; field_14595 BLOCK_TRIPWIRE_DETACH + f Lnet/minecraft/class_3414; field_37341 BLOCK_PACKED_MUD_FALL + f Lnet/minecraft/class_3414; field_14594 ENTITY_SNOW_GOLEM_DEATH + f Lnet/minecraft/class_3414; field_47192 ENTITY_BREEZE_INHALE + f Lnet/minecraft/class_3414; field_37342 BLOCK_PACKED_MUD_HIT + f Lnet/minecraft/class_3414; field_14593 ENTITY_SILVERFISH_HURT + f Lnet/minecraft/class_3414; field_37343 BLOCK_PACKED_MUD_PLACE + f Lnet/minecraft/class_3414; field_47195 ENTITY_BREEZE_SHOOT + f Lnet/minecraft/class_3414; field_47196 ENTITY_BREEZE_JUMP + f Lnet/minecraft/class_3414; field_47193 ENTITY_BREEZE_IDLE_GROUND + f Lnet/minecraft/class_3414; field_47194 ENTITY_BREEZE_IDLE_AIR + f Lnet/minecraft/class_3414; field_37348 BLOCK_SCULK_SHRIEKER_FALL + f Lnet/minecraft/class_3414; field_47199 ENTITY_BREEZE_DEATH + f Lnet/minecraft/class_6880; field_15089 ITEM_CROSSBOW_QUICK_CHARGE_3 + f Lnet/minecraft/class_3414; field_37349 BLOCK_SCULK_SHRIEKER_HIT + f Lnet/minecraft/class_3414; field_47197 ENTITY_BREEZE_LAND + f Lnet/minecraft/class_3414; field_47198 ENTITY_BREEZE_SLIDE + f Lnet/minecraft/class_3414; field_28974 BLOCK_DEEPSLATE_FALL + f Lnet/minecraft/class_3414; field_28973 BLOCK_DEEPSLATE_BREAK + f Lnet/minecraft/class_3414; field_28972 BLOCK_DEEPSLATE_BRICKS_STEP + f Lnet/minecraft/class_6880; field_14860 ITEM_CROSSBOW_LOADING_MIDDLE + f Lnet/minecraft/class_3414; field_28971 BLOCK_DEEPSLATE_BRICKS_PLACE + f Lnet/minecraft/class_3414; field_28970 BLOCK_DEEPSLATE_BRICKS_HIT + f Lnet/minecraft/class_6880; field_14862 ITEM_ARMOR_EQUIP_IRON + f Lnet/minecraft/class_3414; field_37350 BLOCK_SCULK_SHRIEKER_PLACE + f Lnet/minecraft/class_3414; field_37351 BLOCK_SCULK_SHRIEKER_STEP + f Lnet/minecraft/class_3414; field_28979 BLOCK_DEEPSLATE_TILES_FALL + f Lnet/minecraft/class_3414; field_28978 BLOCK_DEEPSLATE_TILES_BREAK + f Lnet/minecraft/class_3414; field_28977 BLOCK_DEEPSLATE_STEP + f Lnet/minecraft/class_3414; field_28976 BLOCK_DEEPSLATE_PLACE + f Lnet/minecraft/class_3414; field_28975 BLOCK_DEEPSLATE_HIT + f Lnet/minecraft/class_3414; field_62421 BLOCK_SHELF_TAKE_ITEM + f Lnet/minecraft/class_3414; field_24063 BLOCK_CHAIN_PLACE + f Lnet/minecraft/class_3414; field_24062 BLOCK_CHAIN_HIT + f Lnet/minecraft/class_3414; field_24065 BLOCK_CHAIN_BREAK + f Lnet/minecraft/class_3414; field_24064 BLOCK_CHAIN_STEP + f Lnet/minecraft/class_3414; field_24061 BLOCK_CHAIN_FALL + f Lnet/minecraft/class_6880; field_14606 ITEM_TRIDENT_RIPTIDE_1 + f Lnet/minecraft/class_3414; field_28986 BLOCK_POLISHED_DEEPSLATE_PLACE + f Lnet/minecraft/class_3414; field_28985 BLOCK_POLISHED_DEEPSLATE_HIT + f Lnet/minecraft/class_3414; field_28984 BLOCK_POLISHED_DEEPSLATE_FALL + f Lnet/minecraft/class_3414; field_28983 BLOCK_POLISHED_DEEPSLATE_BREAK + f Lnet/minecraft/class_3414; field_28982 BLOCK_DEEPSLATE_TILES_STEP + f Lnet/minecraft/class_3414; field_28981 BLOCK_DEEPSLATE_TILES_PLACE + f Lnet/minecraft/class_3414; field_28980 BLOCK_DEEPSLATE_TILES_HIT + f Lnet/minecraft/class_3414; field_28987 BLOCK_POLISHED_DEEPSLATE_STEP + f Lnet/minecraft/class_3414; field_37368 BLOCK_SCULK_CATALYST_PLACE + f Lnet/minecraft/class_3414; field_37369 BLOCK_SCULK_CATALYST_STEP + f Lnet/minecraft/class_3414; field_18054 ENTITY_FOX_SPIT + f Lnet/minecraft/class_3414; field_37364 BLOCK_SCULK_CATALYST_BLOOM + f Lnet/minecraft/class_3414; field_18056 ENTITY_FOX_AMBIENT + f Lnet/minecraft/class_3414; field_29809 ENTITY_GOAT_AMBIENT + f Lnet/minecraft/class_3414; field_37365 BLOCK_SCULK_CATALYST_BREAK + f Lnet/minecraft/class_3414; field_18055 ENTITY_FOX_AGGRO + f Lnet/minecraft/class_3414; field_37366 BLOCK_SCULK_CATALYST_FALL + f Lnet/minecraft/class_3414; field_18058 ENTITY_FOX_BITE + f Lnet/minecraft/class_3414; field_37367 BLOCK_SCULK_CATALYST_HIT + f Lnet/minecraft/class_3414; field_28609 BLOCK_SPORE_BLOSSOM_HIT + f Lnet/minecraft/class_3414; field_44588 BLOCK_SNIFFER_EGG_PLOP + f Lnet/minecraft/class_3414; field_24075 BLOCK_NETHER_GOLD_ORE_STEP + f Lnet/minecraft/class_3414; field_24074 BLOCK_NETHER_GOLD_ORE_PLACE + f Lnet/minecraft/class_6880$class_6883; field_51525 MUSIC_DISC_CREATOR_MUSIC_BOX + f Lnet/minecraft/class_6880$class_6883; field_51524 MUSIC_DISC_CREATOR + f Lnet/minecraft/class_3414; field_24071 BLOCK_NETHER_GOLD_ORE_BREAK + f Lnet/minecraft/class_3414; field_24070 BLOCK_GILDED_BLACKSTONE_STEP + f Lnet/minecraft/class_3414; field_24073 BLOCK_NETHER_GOLD_ORE_HIT + f Lnet/minecraft/class_3414; field_24072 BLOCK_NETHER_GOLD_ORE_FALL + f Lnet/minecraft/class_6880; field_14883 ITEM_ARMOR_EQUIP_GENERIC + f Lnet/minecraft/class_3414; field_24067 BLOCK_GILDED_BLACKSTONE_FALL + f Lnet/minecraft/class_6880$class_6883; field_51526 MUSIC_DISC_PRECIPICE + f Lnet/minecraft/class_3414; field_24066 BLOCK_GILDED_BLACKSTONE_BREAK + f Lnet/minecraft/class_3414; field_24069 BLOCK_GILDED_BLACKSTONE_PLACE + f Lnet/minecraft/class_3414; field_24068 BLOCK_GILDED_BLACKSTONE_HIT + f Lnet/minecraft/class_3414; field_37372 ENTITY_TADPOLE_FLOP + f Lnet/minecraft/class_3414; field_28607 BLOCK_SPORE_BLOSSOM_BREAK + f Lnet/minecraft/class_3414; field_28608 BLOCK_SPORE_BLOSSOM_FALL + f Lnet/minecraft/class_3414; field_37373 ENTITY_TADPOLE_GROW_UP + f Lnet/minecraft/class_3414; field_28606 ENTITY_SKELETON_CONVERTED_TO_STRAY + f Lnet/minecraft/class_3414; field_18059 ENTITY_FOX_DEATH + f Lnet/minecraft/class_3414; field_37374 ENTITY_TADPOLE_HURT + f Lnet/minecraft/class_3414; field_28605 BLOCK_ROOTED_DIRT_STEP + f Lnet/minecraft/class_3414; field_28604 BLOCK_ROOTED_DIRT_PLACE + f Lnet/minecraft/class_3414; field_28603 BLOCK_ROOTED_DIRT_HIT + f Lnet/minecraft/class_6880$class_6883; field_23968 MUSIC_DISC_PIGSTEP + f Lnet/minecraft/class_3414; field_28602 BLOCK_ROOTED_DIRT_FALL + f Lnet/minecraft/class_3414; field_37370 ENTITY_TADPOLE_DEATH + f Lnet/minecraft/class_3414; field_28601 BLOCK_ROOTED_DIRT_BREAK + f Lnet/minecraft/class_3414; field_28600 BLOCK_MOSS_STEP + f Lnet/minecraft/class_3414; field_18063 ENTITY_FOX_SNIFF + f Lnet/minecraft/class_3414; field_43154 BLOCK_AMETHYST_BLOCK_RESONATE + f Lnet/minecraft/class_3414; field_43155 ITEM_BRUSH_BRUSHING_GENERIC + f Lnet/minecraft/class_3414; field_43156 ITEM_BRUSH_BRUSHING_SAND + f Lnet/minecraft/class_3414; field_43157 ITEM_BRUSH_BRUSHING_GRAVEL + f Lnet/minecraft/class_3414; field_43158 ITEM_BRUSH_BRUSHING_SAND_COMPLETE + f Lnet/minecraft/class_3414; field_43159 ITEM_BRUSH_BRUSHING_GRAVEL_COMPLETE + f Lnet/minecraft/class_3414; field_16506 BLOCK_SCAFFOLDING_HIT + f Lnet/minecraft/class_3414; field_29819 ENTITY_GOAT_STEP + f Lnet/minecraft/class_3414; field_16508 BLOCK_SCAFFOLDING_STEP + f Lnet/minecraft/class_3414; field_16507 BLOCK_SCAFFOLDING_PLACE + f Lnet/minecraft/class_6880; field_14626 ITEM_CROSSBOW_LOADING_END + f Lnet/minecraft/class_3414; field_18060 ENTITY_FOX_EAT + f Lnet/minecraft/class_3414; field_55002 BLOCK_RESIN_PLACE + f Lnet/minecraft/class_3414; field_18062 ENTITY_FOX_SLEEP + f Lnet/minecraft/class_3414; field_18061 ENTITY_FOX_HURT + f Lnet/minecraft/class_3414; field_55000 BLOCK_RESIN_FALL + f Lnet/minecraft/class_3414; field_28611 BLOCK_SPORE_BLOSSOM_STEP + f Lnet/minecraft/class_6880; field_14761 ITEM_ARMOR_EQUIP_GOLD + f Lnet/minecraft/class_3414; field_28610 BLOCK_SPORE_BLOSSOM_PLACE + f Lnet/minecraft/class_3414; field_33440 ENTITY_GOAT_SCREAMING_EAT + f Lnet/minecraft/class_6880; field_14896 ITEM_TRIDENT_THUNDER + f Lnet/minecraft/class_6880; field_14765 ITEM_CROSSBOW_LOADING_START + f Lnet/minecraft/class_3414; field_50100 BLOCK_TRIAL_SPAWNER_SPAWN_ITEM_BEGIN + f Lnet/minecraft/class_3414; field_50102 BLOCK_TRIAL_SPAWNER_AMBIENT_OMINOUS + f Lnet/minecraft/class_3414; field_50101 BLOCK_TRIAL_SPAWNER_OMINOUS_ACTIVATE + f Lnet/minecraft/class_3414; field_16509 BLOCK_SCAFFOLDING_BREAK + f Lnet/minecraft/class_3414; field_29817 ENTITY_GOAT_SCREAMING_MILK + f Lnet/minecraft/class_3414; field_28618 BLOCK_VINE_FALL + f Lnet/minecraft/class_3414; field_28619 BLOCK_VINE_HIT + f Lnet/minecraft/class_3414; field_29816 ENTITY_GOAT_SCREAMING_HURT + f Lnet/minecraft/class_3414; field_28617 BLOCK_VINE_BREAK + f Lnet/minecraft/class_3414; field_29815 ENTITY_GOAT_SCREAMING_DEATH + f Lnet/minecraft/class_3414; field_28616 BLOCK_SMALL_DRIPLEAF_STEP + f Lnet/minecraft/class_3414; field_29814 ENTITY_GOAT_SCREAMING_AMBIENT + f Lnet/minecraft/class_3414; field_28615 BLOCK_SMALL_DRIPLEAF_PLACE + f Lnet/minecraft/class_3414; field_29813 ENTITY_GOAT_PREPARE_RAM + f Lnet/minecraft/class_3414; field_28614 BLOCK_SMALL_DRIPLEAF_HIT + f Lnet/minecraft/class_3414; field_29812 ENTITY_GOAT_MILK + f Lnet/minecraft/class_3414; field_28613 BLOCK_SMALL_DRIPLEAF_FALL + f Lnet/minecraft/class_3414; field_29811 ENTITY_GOAT_HURT + f Lnet/minecraft/class_3414; field_28612 BLOCK_SMALL_DRIPLEAF_BREAK + f Lnet/minecraft/class_3414; field_29810 ENTITY_GOAT_DEATH + f Lnet/minecraft/class_3414; field_17711 UI_STONECUTTER_SELECT_RECIPE + f Lnet/minecraft/class_3414; field_17710 UI_STONECUTTER_TAKE_RESULT + f Lnet/minecraft/class_3414; field_19147 ENTITY_EVOKER_CELEBRATE + f Lnet/minecraft/class_3414; field_61168 BLOCK_COPPER_CHEST_OPEN + f Lnet/minecraft/class_3414; field_61167 BLOCK_COPPER_CHEST_CLOSE + f Lnet/minecraft/class_3414; field_16510 BLOCK_SCAFFOLDING_FALL + f Lnet/minecraft/class_3414; field_61169 BLOCK_COPPER_CHEST_WEATHERED_CLOSE + f Lnet/minecraft/class_3414; field_61170 BLOCK_COPPER_CHEST_WEATHERED_OPEN + f Lnet/minecraft/class_3414; field_28620 BLOCK_VINE_PLACE + f Lnet/minecraft/class_3414; field_34896 BLOCK_GROWING_PLANT_CROP + f Lnet/minecraft/class_3414; field_61173 ENTITY_COPPER_GOLEM_STEP + f Lnet/minecraft/class_3414; field_61174 ENTITY_COPPER_GOLEM_HURT + f Lnet/minecraft/class_3414; field_61171 BLOCK_COPPER_CHEST_OXIDIZED_CLOSE + f Lnet/minecraft/class_3414; field_61172 BLOCK_COPPER_CHEST_OXIDIZED_OPEN + f Lnet/minecraft/class_3414; field_33435 ENTITY_GOAT_SCREAMING_PREPARE_RAM + f Lnet/minecraft/class_3414; field_33437 ENTITY_GOAT_EAT + f Lnet/minecraft/class_3414; field_33436 ENTITY_GOAT_SCREAMING_RAM_IMPACT + f Lnet/minecraft/class_3414; field_19148 ENTITY_RAVAGER_CELEBRATE + f Lnet/minecraft/class_3414; field_33433 ITEM_BONE_MEAL_USE + f Lnet/minecraft/class_3414; field_19149 ENTITY_PLAYER_BURP + f Lnet/minecraft/class_3414; field_33434 ENTITY_GOAT_SCREAMING_LONG_JUMP + f Lnet/minecraft/class_3414; field_33438 ENTITY_GOAT_LONG_JUMP + f Lnet/minecraft/class_3414; field_33439 ENTITY_GOAT_RAM_IMPACT + f Lnet/minecraft/class_3414; field_19152 ENTITY_VILLAGER_CELEBRATE + f Lnet/minecraft/class_3414; field_19153 ENTITY_WITCH_CELEBRATE + f Lnet/minecraft/class_3414; field_64604 ENTITY_ZOMBIE_NAUTILUS_AMBIENT_LAND + f Lnet/minecraft/class_6880; field_21866 ITEM_ARMOR_EQUIP_NETHERITE + f Lnet/minecraft/class_3414; field_47713 ENTITY_ARMADILLO_AMBIENT + f Lnet/minecraft/class_3414; field_49143 ENTITY_BOGGED_DEATH + f Lnet/minecraft/class_3414; field_47714 ENTITY_ARMADILLO_STEP + f Lnet/minecraft/class_3414; field_49144 ENTITY_BOGGED_HURT + f Lnet/minecraft/class_3414; field_47715 ENTITY_ARMADILLO_DEATH + f Lnet/minecraft/class_3414; field_47711 ENTITY_ARMADILLO_EAT + f Lnet/minecraft/class_3414; field_47712 ENTITY_ARMADILLO_HURT + f Lnet/minecraft/class_3414; field_46649 BLOCK_DECORATED_POT_INSERT + f Lnet/minecraft/class_3414; field_49142 ENTITY_BOGGED_AMBIENT + f Lnet/minecraft/class_3414; field_19150 ENTITY_PILLAGER_CELEBRATE + f Lnet/minecraft/class_3414; field_47718 ENTITY_ARMADILLO_SCUTE_DROP + f Lnet/minecraft/class_3414; field_19151 ENTITY_VINDICATOR_CELEBRATE + f Lnet/minecraft/class_3414; field_49145 ENTITY_BOGGED_STEP + f Lnet/minecraft/class_3414; field_47716 ENTITY_ARMADILLO_ROLL + f Lnet/minecraft/class_3414; field_49146 ENTITY_PARROT_IMITATE_BOGGED + f Lnet/minecraft/class_3414; field_47717 ENTITY_ARMADILLO_LAND + f Lnet/minecraft/class_3414; field_64609 ENTITY_BABY_NAUTILUS_AMBIENT_LAND + f Lnet/minecraft/class_3414; field_38365 ENTITY_ALLAY_AMBIENT_WITH_ITEM + f Lnet/minecraft/class_3414; field_38366 ENTITY_ALLAY_AMBIENT_WITHOUT_ITEM + f Lnet/minecraft/class_3414; field_38367 ENTITY_ALLAY_DEATH + f Lnet/minecraft/class_3414; field_64605 ENTITY_ZOMBIE_NAUTILUS_DASH_LAND + f Lnet/minecraft/class_3414; field_64606 ENTITY_ZOMBIE_NAUTILUS_DASH_READY_LAND + f Lnet/minecraft/class_3414; field_64607 ENTITY_ZOMBIE_NAUTILUS_DEATH_LAND + f Lnet/minecraft/class_3414; field_64608 ENTITY_ZOMBIE_NAUTILUS_HURT_LAND + f Lnet/minecraft/class_3414; field_15205 ENTITY_PLAYER_HURT_DROWN + f Lnet/minecraft/class_3414; field_43165 BLOCK_SNIFFER_EGG_CRACK + f Lnet/minecraft/class_3414; field_64613 ENTITY_NAUTILUS_DASH_LAND + f Lnet/minecraft/class_3414; field_15206 BLOCK_ENDER_CHEST_CLOSE + f Lnet/minecraft/class_3414; field_19167 BLOCK_BELL_RESONATE + f Lnet/minecraft/class_3414; field_43166 BLOCK_SNIFFER_EGG_HATCH + f Lnet/minecraft/class_3414; field_64614 ENTITY_NAUTILUS_DASH_READY_LAND + f Lnet/minecraft/class_3414; field_17604 BLOCK_BARREL_OPEN + f Lnet/minecraft/class_3414; field_15207 BLOCK_WET_GRASS_FALL + f Lnet/minecraft/class_3414; field_43167 BLOCK_SIGN_WAXED_INTERACT_FAIL + f Lnet/minecraft/class_3414; field_64615 ENTITY_NAUTILUS_DEATH_LAND + f Lnet/minecraft/class_3414; field_17603 BLOCK_BARREL_CLOSE + f Lnet/minecraft/class_3414; field_15208 ENTITY_PANDA_DEATH + f Lnet/minecraft/class_3414; field_64616 ENTITY_NAUTILUS_HURT_LAND + f Lnet/minecraft/class_3414; field_17606 BLOCK_COMPOSTER_EMPTY + f Lnet/minecraft/class_3414; field_15209 ENTITY_POLAR_BEAR_DEATH + f Lnet/minecraft/class_3414; field_17605 BLOCK_BLASTFURNACE_FIRE_CRACKLE + f Lnet/minecraft/class_3414; field_64610 ENTITY_BABY_NAUTILUS_DEATH_LAND + f Lnet/minecraft/class_3414; field_46766 BLOCK_CRAFTER_FAIL + f Lnet/minecraft/class_3414; field_17609 BLOCK_COMPOSTER_READY + f Lnet/minecraft/class_3414; field_64611 ENTITY_BABY_NAUTILUS_HURT_LAND + f Lnet/minecraft/class_3414; field_17607 BLOCK_COMPOSTER_FILL + f Lnet/minecraft/class_3414; field_46765 BLOCK_CRAFTER_CRAFT + f Lnet/minecraft/class_3414; field_17608 BLOCK_COMPOSTER_FILL_SUCCESS + f Lnet/minecraft/class_3414; field_64612 ENTITY_NAUTILUS_AMBIENT_LAND + f Lnet/minecraft/class_6880$class_6883; field_15204 BLOCK_NOTE_BLOCK_HAT + f Lnet/minecraft/class_3414; field_15200 ENTITY_SKELETON_AMBIENT + f Lnet/minecraft/class_3414; field_15201 ENTITY_TROPICAL_FISH_DEATH + f Lnet/minecraft/class_3414; field_63676 ENTITY_NAUTILUS_RIDING + f Lnet/minecraft/class_3414; field_15202 ITEM_BUCKET_FILL_LAVA + f Lnet/minecraft/class_6880$class_6883; field_50103 ITEM_OMINOUS_BOTTLE_DISPOSE + f Lnet/minecraft/class_3414; field_15203 ENTITY_ELDER_GUARDIAN_CURSE + f Lnet/minecraft/class_3414; field_43160 BLOCK_SUSPICIOUS_GRAVEL_BREAK + f Lnet/minecraft/class_3414; field_43161 BLOCK_SUSPICIOUS_GRAVEL_STEP + f Lnet/minecraft/class_3414; field_43162 BLOCK_SUSPICIOUS_GRAVEL_PLACE + f Lnet/minecraft/class_3414; field_43163 BLOCK_SUSPICIOUS_GRAVEL_HIT + f Lnet/minecraft/class_3414; field_43164 BLOCK_SUSPICIOUS_GRAVEL_FALL + f Lnet/minecraft/class_3414; field_14890 ITEM_CHORUS_FRUIT_TELEPORT + f Lnet/minecraft/class_6880$class_6883; field_14656 MUSIC_DISC_STRAD + f Lnet/minecraft/class_6880$class_6883; field_14654 MUSIC_DISC_11 + f Lnet/minecraft/class_3414; field_14632 BLOCK_CONDUIT_AMBIENT + f Lnet/minecraft/class_3414; field_14898 ENTITY_VEX_CHARGE + f Lnet/minecraft/class_3414; field_14897 ENTITY_ARMOR_STAND_HIT + f Lnet/minecraft/class_3414; field_14764 ENTITY_TURTLE_SWIM + f Lnet/minecraft/class_3414; field_14763 ENTITY_SLIME_DEATH + f Lnet/minecraft/class_3414; field_14630 ENTITY_HOSTILE_SWIM + f Lnet/minecraft/class_3414; field_14762 BLOCK_COMPARATOR_CLICK + f Lnet/minecraft/class_3414; field_14895 ENTITY_SHULKER_BULLET_HIT + f Lnet/minecraft/class_3414; field_14894 ENTITY_PIG_STEP + f Lnet/minecraft/class_3414; field_14760 ENTITY_SPIDER_STEP + f Lnet/minecraft/class_3414; field_14892 ENTITY_HUSK_DEATH + f Lnet/minecraft/class_3414; field_14891 BLOCK_BEACON_POWER_SELECT + f Lnet/minecraft/class_3414; field_14639 ENTITY_RAVAGER_AMBIENT + f Lnet/minecraft/class_3414; field_14638 ENTITY_SALMON_HURT + f Lnet/minecraft/class_3414; field_14637 ENTITY_EXPERIENCE_BOTTLE_THROW + f Lnet/minecraft/class_3414; field_14769 BLOCK_GLASS_STEP + f Lnet/minecraft/class_3414; field_14636 ITEM_CROSSBOW_HIT + f Lnet/minecraft/class_3414; field_14768 ENTITY_PARROT_IMITATE_SHULKER + f Lnet/minecraft/class_3414; field_14635 BLOCK_BAMBOO_STEP + f Lnet/minecraft/class_3414; field_40088 BLOCK_NETHER_WOOD_DOOR_OPEN + f Lnet/minecraft/class_3414; field_14767 ENTITY_LINGERING_POTION_THROW + f Lnet/minecraft/class_3414; field_14634 ENTITY_TURTLE_LAY_EGG + f Lnet/minecraft/class_3414; field_14633 ENTITY_SKELETON_SHOOT + f Lnet/minecraft/class_3414; field_40089 BLOCK_NETHER_WOOD_TRAPDOOR_CLOSE + f Lnet/minecraft/class_3414; field_14766 BLOCK_FENCE_GATE_OPEN + f Lnet/minecraft/class_3414; field_14899 ENTITY_HOSTILE_DEATH + f Lnet/minecraft/class_3414; field_40086 BLOCK_HANGING_SIGN_HIT + f Lnet/minecraft/class_3414; field_40087 BLOCK_HANGING_SIGN_PLACE + f Lnet/minecraft/class_3414; field_40084 BLOCK_HANGING_SIGN_BREAK + f Lnet/minecraft/class_3414; field_40085 BLOCK_HANGING_SIGN_FALL + f Lnet/minecraft/class_3414; field_40082 ENTITY_CAMEL_STEP_SAND + f Lnet/minecraft/class_3414; field_17265 BLOCK_BELL_USE + f Lnet/minecraft/class_3414; field_40083 BLOCK_HANGING_SIGN_STEP + f Lnet/minecraft/class_3414; field_40080 ENTITY_CAMEL_STAND + f Lnet/minecraft/class_3414; field_49779 BLOCK_HEAVY_CORE_BREAK + f Lnet/minecraft/class_3414; field_40081 ENTITY_CAMEL_STEP + f Lnet/minecraft/class_6880$class_6883; field_14776 BLOCK_NOTE_BLOCK_XYLOPHONE + f Lnet/minecraft/class_6880; field_15001 ITEM_TRIDENT_THROW + f Lnet/minecraft/class_3414; field_14644 ENTITY_ILLUSIONER_AMBIENT + f Lnet/minecraft/class_3414; field_14777 ENTITY_PARROT_IMITATE_ELDER_GUARDIAN + f Lnet/minecraft/class_3414; field_14775 BLOCK_LADDER_HIT + f Lnet/minecraft/class_3414; field_14642 ENTITY_VINDICATOR_DEATH + f Lnet/minecraft/class_3414; field_14774 BLOCK_WET_GRASS_STEP + f Lnet/minecraft/class_3414; field_14641 UI_TOAST_OUT + f Lnet/minecraft/class_3414; field_14640 BLOCK_SLIME_BLOCK_HIT + f Lnet/minecraft/class_3414; field_14773 ENTITY_ENDER_DRAGON_DEATH + f Lnet/minecraft/class_3414; field_14772 ENTITY_WOLF_STEP + f Lnet/minecraft/class_3414; field_14771 ENTITY_STRAY_DEATH + f Lnet/minecraft/class_3414; field_14770 ENTITY_ITEM_FRAME_REMOVE_ITEM + f Lnet/minecraft/class_3414; field_14649 ENTITY_IRON_GOLEM_ATTACK + f Lnet/minecraft/class_3414; field_14648 ENTITY_GHAST_DEATH + f Lnet/minecraft/class_3414; field_14647 ENTITY_PARROT_IMITATE_DROWNED + f Lnet/minecraft/class_3414; field_40079 ENTITY_CAMEL_SIT + f Lnet/minecraft/class_3414; field_40076 ENTITY_CAMEL_EAT + f Lnet/minecraft/class_3414; field_14779 ITEM_BOTTLE_FILL + f Lnet/minecraft/class_3414; field_14646 BLOCK_LADDER_FALL + f Lnet/minecraft/class_3414; field_40077 ENTITY_CAMEL_HURT + f Lnet/minecraft/class_3414; field_14778 ENTITY_PLAYER_SMALL_FALL + f Lnet/minecraft/class_3414; field_14645 ENTITY_WITCH_HURT + f Lnet/minecraft/class_3414; field_40074 ENTITY_CAMEL_DASH_READY + f Lnet/minecraft/class_3414; field_40075 ENTITY_CAMEL_DEATH + f Lnet/minecraft/class_3414; field_40072 ENTITY_CAMEL_AMBIENT + f Lnet/minecraft/class_3414; field_40073 ENTITY_CAMEL_DASH + f Lnet/minecraft/class_3414; field_40070 BLOCK_BAMBOO_WOOD_FENCE_GATE_CLOSE + f Lnet/minecraft/class_3414; field_40071 BLOCK_BAMBOO_WOOD_FENCE_GATE_OPEN + f Lnet/minecraft/class_3414; field_14781 ENTITY_DONKEY_HURT + f Lnet/minecraft/class_3414; field_14780 ENTITY_COW_AMBIENT + f Lnet/minecraft/class_6880$class_6883; field_23060 PARTICLE_SOUL_ESCAPE + f Lnet/minecraft/class_6880; field_63221 ITEM_SPEAR_WOOD_ATTACK + f Lnet/minecraft/class_6880; field_15011 ITEM_CROSSBOW_QUICK_CHARGE_1 + f Lnet/minecraft/class_6880; field_63220 ITEM_SPEAR_WOOD_HIT + f Lnet/minecraft/class_6880; field_14916 ITEM_CROSSBOW_QUICK_CHARGE_2 + f Lnet/minecraft/class_3414; field_21870 BLOCK_BASALT_HIT + f Lnet/minecraft/class_3414; field_20671 ENTITY_VILLAGER_WORK_CARTOGRAPHER + f Lnet/minecraft/class_3414; field_14789 ENTITY_LLAMA_SPIT + f Lnet/minecraft/class_3414; field_21871 BLOCK_BASALT_FALL + f Lnet/minecraft/class_3414; field_14655 ENTITY_SNOW_GOLEM_AMBIENT + f Lnet/minecraft/class_3414; field_20670 ENTITY_VILLAGER_WORK_BUTCHER + f Lnet/minecraft/class_3414; field_14788 BLOCK_SLIME_BLOCK_PLACE + f Lnet/minecraft/class_3414; field_21872 BLOCK_BONE_BLOCK_BREAK + f Lnet/minecraft/class_3414; field_14787 BLOCK_TRIPWIRE_CLICK_OFF + f Lnet/minecraft/class_3414; field_21873 BLOCK_BONE_BLOCK_FALL + f Lnet/minecraft/class_3414; field_14786 ENTITY_SILVERFISH_AMBIENT + f Lnet/minecraft/class_3414; field_14653 BLOCK_GRASS_PLACE + f Lnet/minecraft/class_3414; field_20675 ENTITY_VILLAGER_WORK_FLETCHER + f Lnet/minecraft/class_3414; field_14785 BLOCK_ANVIL_PLACE + f Lnet/minecraft/class_3414; field_14652 ENTITY_ELDER_GUARDIAN_HURT_LAND + f Lnet/minecraft/class_3414; field_14651 ENTITY_DROWNED_HURT_WATER + f Lnet/minecraft/class_3414; field_20674 ENTITY_VILLAGER_WORK_FISHERMAN + f Lnet/minecraft/class_3414; field_14784 ENTITY_MINECART_RIDING + f Lnet/minecraft/class_3414; field_14783 ENTITY_HORSE_LAND + f Lnet/minecraft/class_3414; field_14650 BLOCK_BUBBLE_COLUMN_WHIRLPOOL_AMBIENT + f Lnet/minecraft/class_3414; field_20673 ENTITY_VILLAGER_WORK_FARMER + f Lnet/minecraft/class_3414; field_51988 BLOCK_VAULT_REJECT_REWARDED_PLAYER + f Lnet/minecraft/class_3414; field_14782 ENTITY_EVOKER_AMBIENT + f Lnet/minecraft/class_3414; field_20672 ENTITY_VILLAGER_WORK_CLERIC + f Lnet/minecraft/class_3414; field_45967 BLOCK_WET_SPONGE_BREAK + f Lnet/minecraft/class_3414; field_21867 BLOCK_BASALT_BREAK + f Lnet/minecraft/class_3414; field_45965 BLOCK_SPONGE_PLACE + f Lnet/minecraft/class_3414; field_45966 BLOCK_SPONGE_STEP + f Lnet/minecraft/class_3414; field_21868 BLOCK_BASALT_STEP + f Lnet/minecraft/class_3414; field_21869 BLOCK_BASALT_PLACE + f Lnet/minecraft/class_3414; field_45968 BLOCK_WET_SPONGE_FALL + f Lnet/minecraft/class_3414; field_14658 BLOCK_STONE_HIT + f Lnet/minecraft/class_3414; field_20669 ENTITY_VILLAGER_WORK_ARMORER + f Lnet/minecraft/class_3414; field_14657 ENTITY_SPIDER_HURT + f Lnet/minecraft/class_3414; field_40090 BLOCK_NETHER_WOOD_TRAPDOOR_OPEN + f Lnet/minecraft/class_3414; field_14660 ENTITY_FISHING_BOBBER_SPLASH + f Lnet/minecraft/class_3414; field_40091 BLOCK_NETHER_WOOD_BUTTON_CLICK_OFF + f Lnet/minecraft/class_3414; field_14792 ENTITY_WITHER_SPAWN + f Lnet/minecraft/class_3414; field_14791 BLOCK_STONE_BUTTON_CLICK_ON + f Lnet/minecraft/class_3414; field_14790 ENTITY_PARROT_IMITATE_VINDICATOR + f Lnet/minecraft/class_3414; field_27849 BLOCK_POWDER_SNOW_FALL + f Lnet/minecraft/class_3414; field_27848 BLOCK_POWDER_SNOW_BREAK + f Lnet/minecraft/class_3414; field_27846 ITEM_BUCKET_FILL_POWDER_SNOW + f Lnet/minecraft/class_3414; field_27847 ITEM_BUCKET_EMPTY_POWDER_SNOW + f Lnet/minecraft/class_3414; field_21882 BLOCK_NETHER_BRICKS_BREAK + f Lnet/minecraft/class_3414; field_14668 ENTITY_PANDA_HURT + f Lnet/minecraft/class_3414; field_21883 BLOCK_NETHER_BRICKS_STEP + f Lnet/minecraft/class_6880$class_6883; field_14793 BLOCK_NOTE_BLOCK_BELL + f Lnet/minecraft/class_3414; field_14667 ENTITY_ITEM_FRAME_ADD_ITEM + f Lnet/minecraft/class_3414; field_21884 BLOCK_NETHER_BRICKS_PLACE + f Lnet/minecraft/class_3414; field_45960 BLOCK_WET_SPONGE_PLACE + f Lnet/minecraft/class_3414; field_14666 BLOCK_GLASS_FALL + f Lnet/minecraft/class_3414; field_20681 ENTITY_VILLAGER_WORK_WEAPONSMITH + f Lnet/minecraft/class_3414; field_14799 ENTITY_DOLPHIN_AMBIENT + f Lnet/minecraft/class_3414; field_21885 BLOCK_NETHER_BRICKS_HIT + f Lnet/minecraft/class_3414; field_14798 BLOCK_GRAVEL_STEP + f Lnet/minecraft/class_3414; field_14665 BLOCK_ANVIL_DESTROY + f Lnet/minecraft/class_3414; field_20680 ENTITY_VILLAGER_WORK_TOOLSMITH + f Lnet/minecraft/class_3414; field_45962 BLOCK_SPONGE_BREAK + f Lnet/minecraft/class_3414; field_14797 ENTITY_ENDERMAN_HURT + f Lnet/minecraft/class_3414; field_14664 BLOCK_WOODEN_DOOR_OPEN + f Lnet/minecraft/class_3414; field_45961 BLOCK_WET_SPONGE_STEP + f Lnet/minecraft/class_3414; field_14796 ENTITY_PARROT_IMITATE_WITCH + f Lnet/minecraft/class_3414; field_14663 ENCHANT_THORNS_HIT + f Lnet/minecraft/class_3414; field_21880 BLOCK_ROOTS_HIT + f Lnet/minecraft/class_3414; field_45964 BLOCK_SPONGE_HIT + f Lnet/minecraft/class_3414; field_14662 ENTITY_MAGMA_CUBE_DEATH + f Lnet/minecraft/class_3414; field_14795 ENTITY_LLAMA_STEP + f Lnet/minecraft/class_3414; field_21881 BLOCK_ROOTS_FALL + f Lnet/minecraft/class_3414; field_45963 BLOCK_SPONGE_FALL + f Lnet/minecraft/class_3414; field_14794 ENTITY_PLAYER_BIG_FALL + f Lnet/minecraft/class_3414; field_14661 ENTITY_DONKEY_ANGRY + f Lnet/minecraft/class_3414; field_49782 BLOCK_HEAVY_CORE_PLACE + f Lnet/minecraft/class_3414; field_21879 BLOCK_ROOTS_PLACE + f Lnet/minecraft/class_3414; field_20679 ENTITY_VILLAGER_WORK_SHEPHERD + f Lnet/minecraft/class_3414; field_49781 BLOCK_HEAVY_CORE_HIT + f Lnet/minecraft/class_3414; field_20678 ENTITY_VILLAGER_WORK_MASON + f Lnet/minecraft/class_3414; field_49780 BLOCK_HEAVY_CORE_FALL + f Lnet/minecraft/class_3414; field_20677 ENTITY_VILLAGER_WORK_LIBRARIAN + f Lnet/minecraft/class_3414; field_20676 ENTITY_VILLAGER_WORK_LEATHERWORKER + f Lnet/minecraft/class_3414; field_21874 BLOCK_BONE_BLOCK_HIT + f Lnet/minecraft/class_3414; field_45959 BLOCK_WET_SPONGE_HIT + f Lnet/minecraft/class_3414; field_21875 BLOCK_BONE_BLOCK_PLACE + f Lnet/minecraft/class_3414; field_49785 ITEM_MACE_SMASH_GROUND + f Lnet/minecraft/class_3414; field_21876 BLOCK_BONE_BLOCK_STEP + f Lnet/minecraft/class_3414; field_49784 ITEM_MACE_SMASH_AIR + f Lnet/minecraft/class_3414; field_21877 BLOCK_ROOTS_BREAK + f Lnet/minecraft/class_3414; field_49783 BLOCK_HEAVY_CORE_STEP + f Lnet/minecraft/class_3414; field_21878 BLOCK_ROOTS_STEP + f Lnet/minecraft/class_3414; field_14669 BLOCK_PORTAL_TRIGGER + f Lnet/minecraft/class_6880; field_63239 ITEM_SPEAR_LUNGE_3 + f Lnet/minecraft/class_3414; field_40098 BLOCK_NETHER_WOOD_FALL + f Lnet/minecraft/class_6880; field_63238 ITEM_SPEAR_LUNGE_2 + f Lnet/minecraft/class_3414; field_40099 BLOCK_NETHER_WOOD_HIT + f Lnet/minecraft/class_3414; field_40096 BLOCK_NETHER_WOOD_FENCE_GATE_OPEN + f Lnet/minecraft/class_3414; field_40097 BLOCK_NETHER_WOOD_BREAK + f Lnet/minecraft/class_3414; field_40094 BLOCK_NETHER_WOOD_PRESSURE_PLATE_CLICK_ON + f Lnet/minecraft/class_3414; field_40095 BLOCK_NETHER_WOOD_FENCE_GATE_CLOSE + f Lnet/minecraft/class_6880; field_63237 ITEM_SPEAR_LUNGE_1 + f Lnet/minecraft/class_3414; field_40092 BLOCK_NETHER_WOOD_BUTTON_CLICK_ON + f Lnet/minecraft/class_3414; field_40093 BLOCK_NETHER_WOOD_PRESSURE_PLATE_CLICK_OFF + f Lnet/minecraft/class_3414; field_64094 ENTITY_CAMEL_HUSK_DASH + f Lnet/minecraft/class_3414; field_14672 BLOCK_CORAL_BLOCK_HIT + f Lnet/minecraft/class_3414; field_64095 ENTITY_CAMEL_HUSK_DASH_READY + f Lnet/minecraft/class_3414; field_14671 ENTITY_ENDER_DRAGON_GROWL + f Lnet/minecraft/class_3414; field_37310 BLOCK_FROGSPAWN_HATCH + f Lnet/minecraft/class_3414; field_64096 ENTITY_CAMEL_HUSK_DEATH + f Lnet/minecraft/class_3414; field_14670 ENTITY_ZOMBIE_ATTACK_IRON_DOOR + f Lnet/minecraft/class_3414; field_64097 ENTITY_CAMEL_HUSK_EAT + f Lnet/minecraft/class_3414; field_37311 BLOCK_FROGSPAWN_HIT + f Lnet/minecraft/class_3414; field_61203 BLOCK_SHELF_BREAK + f Lnet/minecraft/class_6880; field_14806 ITEM_TRIDENT_RIPTIDE_2 + f Lnet/minecraft/class_3414; field_61204 BLOCK_SHELF_DEACTIVATE + f Lnet/minecraft/class_3414; field_61201 BLOCK_SHELF_STEP + f Lnet/minecraft/class_3414; field_61200 BLOCK_SHELF_SINGLE_SWAP + f Lnet/minecraft/class_3414; field_61202 BLOCK_SHELF_ACTIVATE + f Lnet/minecraft/class_3414; field_64093 ENTITY_CAMEL_HUSK_AMBIENT + f Lnet/minecraft/class_6880$class_6883; field_14564 AMBIENT_CAVE + f Lnet/minecraft/class_3414; field_21894 BLOCK_NYLIUM_STEP + f Lnet/minecraft/class_3414; field_37316 ENTITY_FROG_HURT + f Lnet/minecraft/class_3414; field_14547 ENTITY_PARROT_IMITATE_CREEPER + f Lnet/minecraft/class_3414; field_21895 BLOCK_NYLIUM_PLACE + f Lnet/minecraft/class_3414; field_37317 ENTITY_FROG_LAY_SPAWN + f Lnet/minecraft/class_3414; field_14546 BLOCK_LADDER_BREAK + f Lnet/minecraft/class_3414; field_14679 ENTITY_GUARDIAN_HURT + f Lnet/minecraft/class_3414; field_21896 BLOCK_NYLIUM_HIT + f Lnet/minecraft/class_3414; field_23194 BLOCK_LODESTONE_BREAK + f Lnet/minecraft/class_3414; field_23061 BLOCK_VINE_STEP + f Lnet/minecraft/class_3414; field_37318 ENTITY_FROG_LONG_JUMP + f Lnet/minecraft/class_3414; field_14678 ENTITY_ENDERMITE_STEP + f Lnet/minecraft/class_3414; field_14545 ENTITY_ILLUSIONER_CAST_SPELL + f Lnet/minecraft/class_3414; field_21897 BLOCK_NYLIUM_FALL + f Lnet/minecraft/class_3414; field_37319 ENTITY_FROG_STEP + f Lnet/minecraft/class_3414; field_21898 BLOCK_NETHER_SPROUTS_BREAK + f Lnet/minecraft/class_3414; field_14677 BLOCK_SAND_STEP + f Lnet/minecraft/class_3414; field_21890 BLOCK_STEM_HIT + f Lnet/minecraft/class_3414; field_37312 BLOCK_FROGSPAWN_PLACE + f Lnet/minecraft/class_3414; field_14676 ENTITY_PARROT_IMITATE_ZOMBIE_VILLAGER + f Lnet/minecraft/class_3414; field_46930 BLOCK_COPPER_BULB_STEP + f Lnet/minecraft/class_3414; field_14543 ENTITY_ZOMBIE_HORSE_DEATH + f Lnet/minecraft/class_3414; field_21891 BLOCK_ANCIENT_DEBRIS_BREAK + f Lnet/minecraft/class_3414; field_37313 ENTITY_FROG_AMBIENT + f Lnet/minecraft/class_3414; field_14675 ITEM_AXE_STRIP + f Lnet/minecraft/class_3414; field_14542 BLOCK_ANVIL_BREAK + f Lnet/minecraft/class_3414; field_21892 BLOCK_STEM_FALL + f Lnet/minecraft/class_3414; field_37314 ENTITY_FROG_DEATH + f Lnet/minecraft/class_3414; field_14541 BLOCK_WOODEN_DOOR_CLOSE + f Lnet/minecraft/class_3414; field_46932 BLOCK_COPPER_BULB_HIT + f Lnet/minecraft/class_3414; field_14674 BLOCK_TRIPWIRE_CLICK_ON + f Lnet/minecraft/class_3414; field_21893 BLOCK_NYLIUM_BREAK + f Lnet/minecraft/class_3414; field_37315 ENTITY_FROG_EAT + f Lnet/minecraft/class_3414; field_14540 ENTITY_STRAY_STEP + f Lnet/minecraft/class_3414; field_14673 ENTITY_SILVERFISH_DEATH + f Lnet/minecraft/class_3414; field_46931 BLOCK_COPPER_BULB_PLACE + f Lnet/minecraft/class_3414; field_28081 BLOCK_SCULK_SENSOR_CLICKING + f Lnet/minecraft/class_3414; field_21886 BLOCK_NETHER_BRICKS_FALL + f Lnet/minecraft/class_3414; field_21887 BLOCK_STEM_BREAK + f Lnet/minecraft/class_3414; field_21888 BLOCK_STEM_STEP + f Lnet/minecraft/class_3414; field_46929 BLOCK_COPPER_BULB_BREAK + f Lnet/minecraft/class_3414; field_21889 BLOCK_STEM_PLACE + f Lnet/minecraft/class_3414; field_14549 ENTITY_TURTLE_SHAMBLE + f Lnet/minecraft/class_3414; field_14548 ENTITY_SKELETON_STEP + f Lnet/minecraft/class_3414; field_40969 BLOCK_CHISELED_BOOKSHELF_HIT + f Lnet/minecraft/class_3414; field_40968 BLOCK_CHISELED_BOOKSHELF_FALL + f Lnet/minecraft/class_3414; field_61205 BLOCK_SHELF_FALL + f Lnet/minecraft/class_3414; field_28087 BLOCK_SCULK_SENSOR_STEP + f Lnet/minecraft/class_3414; field_40967 BLOCK_CHISELED_BOOKSHELF_BREAK + f Lnet/minecraft/class_3414; field_28086 BLOCK_SCULK_SENSOR_PLACE + f Lnet/minecraft/class_3414; field_64098 ENTITY_CAMEL_HUSK_HURT + f Lnet/minecraft/class_3414; field_28085 BLOCK_SCULK_SENSOR_HIT + f Lnet/minecraft/class_3414; field_27852 BLOCK_POWDER_SNOW_STEP + f Lnet/minecraft/class_3414; field_28084 BLOCK_SCULK_SENSOR_FALL + f Lnet/minecraft/class_3414; field_27853 ENTITY_PLAYER_HURT_FREEZE + f Lnet/minecraft/class_3414; field_28083 BLOCK_SCULK_SENSOR_BREAK + f Lnet/minecraft/class_3414; field_27850 BLOCK_POWDER_SNOW_HIT + f Lnet/minecraft/class_3414; field_27851 BLOCK_POWDER_SNOW_PLACE + f Lnet/minecraft/class_3414; field_28082 BLOCK_SCULK_SENSOR_CLICKING_STOP + f Lnet/minecraft/class_6880$class_6883; field_44699 MUSIC_OVERWORLD_BAMBOO_JUNGLE + f Lnet/minecraft/class_3414; field_14551 BLOCK_CORAL_BLOCK_FALL + f Lnet/minecraft/class_3414; field_14550 ENTITY_ENDER_DRAGON_FLAP + f Lnet/minecraft/class_3414; field_14683 ENTITY_PARROT_IMITATE_SILVERFISH + f Lnet/minecraft/class_3414; field_14682 ENTITY_LLAMA_AMBIENT + f Lnet/minecraft/class_3414; field_14680 ENTITY_HUSK_AMBIENT + f Lnet/minecraft/class_6880$class_6883; field_14554 ENTITY_LLAMA_SWAG + f Lnet/minecraft/class_3414; field_37304 BLOCK_FROGLIGHT_HIT + f Lnet/minecraft/class_3414; field_14559 BLOCK_ANVIL_USE + f Lnet/minecraft/class_3414; field_37305 BLOCK_FROGLIGHT_PLACE + f Lnet/minecraft/class_3414; field_14558 ENTITY_VINDICATOR_HURT + f Lnet/minecraft/class_6880$class_6883; field_44693 MUSIC_OVERWORLD_FOREST + f Lnet/minecraft/class_3414; field_37306 BLOCK_FROGLIGHT_STEP + f Lnet/minecraft/class_3414; field_14557 BLOCK_METAL_HIT + f Lnet/minecraft/class_6880$class_6883; field_44694 MUSIC_OVERWORLD_FLOWER_FOREST + f Lnet/minecraft/class_3414; field_37307 BLOCK_FROGSPAWN_STEP + f Lnet/minecraft/class_3414; field_14556 ENTITY_HORSE_BREATHE + f Lnet/minecraft/class_3414; field_14689 ENTITY_PIG_DEATH + f Lnet/minecraft/class_6880$class_6883; field_44695 MUSIC_OVERWORLD_DESERT + f Lnet/minecraft/class_6880$class_6883; field_14681 MUSIC_GAME + f Lnet/minecraft/class_3414; field_37300 ITEM_BUCKET_EMPTY_TADPOLE + f Lnet/minecraft/class_3414; field_14688 ENTITY_WITHER_HURT + f Lnet/minecraft/class_3414; field_14555 ENTITY_PARROT_IMITATE_WITHER + f Lnet/minecraft/class_6880$class_6883; field_44696 MUSIC_OVERWORLD_BADLANDS + f Lnet/minecraft/class_3414; field_37301 ITEM_BUCKET_FILL_TADPOLE + f Lnet/minecraft/class_3414; field_14687 ENTITY_TURTLE_EGG_BREAK + f Lnet/minecraft/class_3414; field_37302 BLOCK_FROGLIGHT_BREAK + f Lnet/minecraft/class_6880$class_6883; field_44697 MUSIC_OVERWORLD_JUNGLE + f Lnet/minecraft/class_3414; field_14686 ENTITY_SKELETON_HORSE_AMBIENT_WATER + f Lnet/minecraft/class_3414; field_37303 BLOCK_FROGLIGHT_FALL + f Lnet/minecraft/class_6880$class_6883; field_44698 MUSIC_OVERWORLD_SPARSE_JUNGLE + f Lnet/minecraft/class_3414; field_14552 ENTITY_PANDA_BITE + f Lnet/minecraft/class_6880$class_6883; field_37345 MUSIC_OVERWORLD_DEEP_DARK + f Lnet/minecraft/class_3414; field_14685 ENTITY_CHICKEN_STEP + f Lnet/minecraft/class_3414; field_23199 ITEM_LODESTONE_COMPASS_LOCK + f Lnet/minecraft/class_3414; field_23196 BLOCK_LODESTONE_PLACE + f Lnet/minecraft/class_3414; field_37308 BLOCK_FROGSPAWN_BREAK + f Lnet/minecraft/class_3414; field_37309 BLOCK_FROGSPAWN_FALL + f Lnet/minecraft/class_3414; field_21899 BLOCK_NETHER_SPROUTS_STEP + f Lnet/minecraft/class_3414; field_23195 BLOCK_LODESTONE_STEP + f Lnet/minecraft/class_3414; field_23198 BLOCK_LODESTONE_FALL + f Lnet/minecraft/class_3414; field_23197 BLOCK_LODESTONE_HIT + f Lnet/minecraft/class_3414; field_37332 BLOCK_MUD_PLACE + f Lnet/minecraft/class_3414; field_14563 ENTITY_SALMON_FLOP + f Lnet/minecraft/class_3414; field_14696 ENTITY_ENDERMAN_AMBIENT + f Lnet/minecraft/class_3414; field_40985 BLOCK_BAMBOO_WOOD_HANGING_SIGN_PLACE + f Lnet/minecraft/class_3414; field_37333 BLOCK_MUD_STEP + f Lnet/minecraft/class_3414; field_14562 ENTITY_ZOMBIE_ATTACK_WOODEN_DOOR + f Lnet/minecraft/class_3414; field_14695 BLOCK_ANVIL_STEP + f Lnet/minecraft/class_3414; field_40984 BLOCK_BAMBOO_WOOD_HANGING_SIGN_HIT + f Lnet/minecraft/class_3414; field_40982 BLOCK_BAMBOO_WOOD_HANGING_SIGN_BREAK + f Lnet/minecraft/class_3414; field_37334 BLOCK_MUD_BRICKS_BREAK + f Lnet/minecraft/class_3414; field_14561 UI_TOAST_IN + f Lnet/minecraft/class_3414; field_14694 ENTITY_SLIME_JUMP_SMALL + f Lnet/minecraft/class_3414; field_40983 BLOCK_BAMBOO_WOOD_HANGING_SIGN_FALL + f Lnet/minecraft/class_3414; field_40981 BLOCK_BAMBOO_WOOD_HANGING_SIGN_STEP + f Lnet/minecraft/class_3414; field_37335 BLOCK_MUD_BRICKS_FALL + f Lnet/minecraft/class_3414; field_14560 BLOCK_SLIME_BLOCK_FALL + f Lnet/minecraft/class_3414; field_14693 ENTITY_RABBIT_AMBIENT + f Lnet/minecraft/class_6880$class_6883; field_64099 ENTITY_CAMEL_HUSK_SADDLE + f Lnet/minecraft/class_3414; field_40980 BLOCK_NETHER_WOOD_HANGING_SIGN_PLACE + f Lnet/minecraft/class_3414; field_14692 ENTITY_EVOKER_FANGS_ATTACK + f Lnet/minecraft/class_3414; field_14691 ENTITY_COW_MILK + f Lnet/minecraft/class_3414; field_37330 BLOCK_MUD_FALL + f Lnet/minecraft/class_3414; field_14690 ENTITY_SHULKER_AMBIENT + f Lnet/minecraft/class_3414; field_37331 BLOCK_MUD_HIT + f Lnet/minecraft/class_3414; field_46950 BLOCK_TUFF_BRICKS_STEP + f Lnet/minecraft/class_3414; field_14569 ENTITY_ELDER_GUARDIAN_AMBIENT_LAND + f Lnet/minecraft/class_3414; field_46952 BLOCK_POLISHED_TUFF_FALL + f Lnet/minecraft/class_3414; field_14568 ITEM_BUCKET_FILL_FISH + f Lnet/minecraft/class_3414; field_46951 BLOCK_POLISHED_TUFF_BREAK + f Lnet/minecraft/class_3414; field_37336 BLOCK_MUD_BRICKS_HIT + f Lnet/minecraft/class_3414; field_46954 BLOCK_POLISHED_TUFF_PLACE + f Lnet/minecraft/class_3414; field_14567 BLOCK_IRON_DOOR_OPEN + f Lnet/minecraft/class_3414; field_37337 BLOCK_MUD_BRICKS_PLACE + f Lnet/minecraft/class_3414; field_14699 BLOCK_WOODEN_BUTTON_CLICK_ON + f Lnet/minecraft/class_3414; field_46953 BLOCK_POLISHED_TUFF_HIT + f Lnet/minecraft/class_3414; field_14566 ENTITY_GHAST_AMBIENT + f Lnet/minecraft/class_3414; field_37338 BLOCK_MUD_BRICKS_STEP + f Lnet/minecraft/class_3414; field_14698 ITEM_TRIDENT_RETURN + f Lnet/minecraft/class_3414; field_14565 ENTITY_WITCH_DRINK + f Lnet/minecraft/class_3414; field_37339 BLOCK_MUDDY_MANGROVE_ROOTS_BREAK + f Lnet/minecraft/class_3414; field_46955 BLOCK_POLISHED_TUFF_STEP + f Lnet/minecraft/class_3414; field_14697 BLOCK_GRAVEL_HIT + f Lnet/minecraft/class_3414; field_46947 BLOCK_TUFF_BRICKS_FALL + f Lnet/minecraft/class_6880$class_6883; field_14592 MUSIC_DISC_13 + f Lnet/minecraft/class_3414; field_46946 BLOCK_TUFF_BRICKS_BREAK + f Lnet/minecraft/class_3414; field_46949 BLOCK_TUFF_BRICKS_PLACE + f Lnet/minecraft/class_3414; field_46948 BLOCK_TUFF_BRICKS_HIT + f Lnet/minecraft/class_6880; field_15191 ITEM_ARMOR_EQUIP_CHAIN + f Lnet/minecraft/class_3414; field_18266 ENTITY_MOOSHROOM_CONVERT + f Lnet/minecraft/class_3414; field_18265 ENTITY_FOX_SCREECH + f Lnet/minecraft/class_6880$class_6883; field_64092 ITEM_NAUTILUS_SADDLE_EQUIP + f Lnet/minecraft/class_3414; field_18268 ENTITY_MOOSHROOM_MILK + f Lnet/minecraft/class_6880$class_6883; field_64091 ITEM_NAUTILUS_SADDLE_UNDERWATER_EQUIP + f Lnet/minecraft/class_3414; field_18267 ENTITY_MOOSHROOM_EAT + f Lnet/minecraft/class_3414; field_18269 ENTITY_MOOSHROOM_SUSPICIOUS_MILK + f Lnet/minecraft/class_3414; field_37320 ENTITY_FROG_TONGUE + f Lnet/minecraft/class_3414; field_40973 BLOCK_CHISELED_BOOKSHELF_PICKUP + f Lnet/minecraft/class_3414; field_40971 BLOCK_CHISELED_BOOKSHELF_INSERT_ENCHANTED + f Lnet/minecraft/class_3414; field_37321 BLOCK_MANGROVE_ROOTS_BREAK + f Lnet/minecraft/class_3414; field_14574 BLOCK_STONE_PLACE + f Lnet/minecraft/class_3414; field_56527 BLOCK_FIREFLY_BUSH_IDLE + f Lnet/minecraft/class_3414; field_40972 BLOCK_CHISELED_BOOKSHELF_STEP + f Lnet/minecraft/class_3414; field_40970 BLOCK_CHISELED_BOOKSHELF_INSERT + f Lnet/minecraft/class_3414; field_37322 BLOCK_MANGROVE_ROOTS_FALL + f Lnet/minecraft/class_3414; field_56525 BLOCK_CACTUS_FLOWER_BREAK + f Lnet/minecraft/class_3414; field_14573 BLOCK_GRASS_STEP + f Lnet/minecraft/class_3414; field_56526 BLOCK_CACTUS_FLOWER_PLACE + f Lnet/minecraft/class_3414; field_37323 BLOCK_MANGROVE_ROOTS_HIT + f Lnet/minecraft/class_3414; field_14572 ITEM_ELYTRA_FLYING + f Lnet/minecraft/class_3414; field_14571 ENTITY_DROWNED_HURT + f Lnet/minecraft/class_6880$class_6883; field_14578 MUSIC_DISC_STAL + f Lnet/minecraft/class_3414; field_37328 BLOCK_MUDDY_MANGROVE_ROOTS_STEP + f Lnet/minecraft/class_3414; field_37329 BLOCK_MUD_BREAK + f Lnet/minecraft/class_3414; field_46940 BLOCK_COPPER_GRATE_PLACE + f Lnet/minecraft/class_3414; field_37324 BLOCK_MANGROVE_ROOTS_PLACE + f Lnet/minecraft/class_3414; field_14579 ENTITY_SPIDER_DEATH + f Lnet/minecraft/class_3414; field_46942 BLOCK_COPPER_GRATE_FALL + f Lnet/minecraft/class_6880; field_14966 ITEM_ARMOR_EQUIP_ELYTRA + f Lnet/minecraft/class_3414; field_37325 BLOCK_MANGROVE_ROOTS_STEP + f Lnet/minecraft/class_3414; field_46941 BLOCK_COPPER_GRATE_HIT + f Lnet/minecraft/class_3414; field_46945 ENTITY_PLAYER_TELEPORT + f Lnet/minecraft/class_3414; field_37326 BLOCK_MUDDY_MANGROVE_ROOTS_HIT + f Lnet/minecraft/class_3414; field_46944 BLOCK_COPPER_TRAPDOOR_OPEN + f Lnet/minecraft/class_3414; field_14577 ENTITY_PARROT_IMITATE_GHAST + f Lnet/minecraft/class_3414; field_37327 BLOCK_MUDDY_MANGROVE_ROOTS_PLACE + f Lnet/minecraft/class_3414; field_46943 BLOCK_COPPER_TRAPDOOR_CLOSE + f Lnet/minecraft/class_3414; field_14576 BLOCK_LAVA_POP + f Lnet/minecraft/class_3414; field_46935 BLOCK_COPPER_BULB_TURN_OFF + f Lnet/minecraft/class_3414; field_46934 BLOCK_COPPER_BULB_TURN_ON + f Lnet/minecraft/class_3414; field_46933 BLOCK_COPPER_BULB_FALL + f Lnet/minecraft/class_3414; field_46937 BLOCK_COPPER_DOOR_OPEN + f Lnet/minecraft/class_3414; field_46936 BLOCK_COPPER_DOOR_CLOSE + f Lnet/minecraft/class_3414; field_46939 BLOCK_COPPER_GRATE_STEP + f Lnet/minecraft/class_3414; field_46938 BLOCK_COPPER_GRATE_BREAK + f Lnet/minecraft/class_3414; field_19344 BLOCK_BEACON_DEACTIVATE + f Lnet/minecraft/class_3414; field_29189 ENTITY_GLOW_ITEM_FRAME_BREAK + f Lnet/minecraft/class_3414; field_29188 ENTITY_GLOW_ITEM_FRAME_ADD_ITEM + f Lnet/minecraft/class_3414; field_40979 BLOCK_NETHER_WOOD_HANGING_SIGN_HIT + f Lnet/minecraft/class_3414; field_40978 BLOCK_NETHER_WOOD_HANGING_SIGN_FALL + f Lnet/minecraft/class_3414; field_40977 BLOCK_NETHER_WOOD_HANGING_SIGN_BREAK + f Lnet/minecraft/class_3414; field_40976 BLOCK_NETHER_WOOD_HANGING_SIGN_STEP + f Lnet/minecraft/class_3414; field_40975 BLOCK_CHISELED_BOOKSHELF_PLACE + f Lnet/minecraft/class_3414; field_40974 BLOCK_CHISELED_BOOKSHELF_PICKUP_ENCHANTED + f Lnet/minecraft/class_3414; field_52375 BLOCK_SPAWNER_HIT + f Lnet/minecraft/class_3414; field_52374 BLOCK_SPAWNER_FALL + f Lnet/minecraft/class_3414; field_52377 BLOCK_SPAWNER_STEP + f Lnet/minecraft/class_3414; field_52376 BLOCK_SPAWNER_PLACE + f Lnet/minecraft/class_3414; field_22256 ENTITY_HOGLIN_AMBIENT + f Lnet/minecraft/class_3414; field_22257 ENTITY_HOGLIN_ANGRY + f Lnet/minecraft/class_3414; field_14809 ENTITY_PAINTING_BREAK + f Lnet/minecraft/class_3414; field_22258 ENTITY_HOGLIN_ATTACK + f Lnet/minecraft/class_3414; field_52373 BLOCK_SPAWNER_BREAK + f Lnet/minecraft/class_3414; field_14808 BLOCK_WOOD_HIT + f Lnet/minecraft/class_3414; field_22259 ENTITY_HOGLIN_DEATH + f Lnet/minecraft/class_3414; field_52372 ITEM_BUNDLE_INSERT_FAIL + f Lnet/minecraft/class_3414; field_34375 ITEM_BUNDLE_DROP_CONTENTS + f Lnet/minecraft/class_3414; field_38070 ENTITY_WARDEN_LISTENING + f Lnet/minecraft/class_3414; field_38071 ENTITY_WARDEN_LISTENING_ANGRY + f Lnet/minecraft/class_3414; field_38072 ENTITY_WARDEN_NEARBY_CLOSE + f Lnet/minecraft/class_3414; field_25727 ENTITY_PARROT_IMITATE_PIGLIN_BRUTE + f Lnet/minecraft/class_3414; field_34377 ITEM_BUNDLE_REMOVE_ONE + f Lnet/minecraft/class_3414; field_25729 ENTITY_PIGLIN_BRUTE_ANGRY + f Lnet/minecraft/class_3414; field_34376 ITEM_BUNDLE_INSERT + f Lnet/minecraft/class_3414; field_25728 ENTITY_PIGLIN_BRUTE_AMBIENT + f Lnet/minecraft/class_3414; field_15043 ENTITY_HORSE_ANGRY + f Lnet/minecraft/class_3414; field_38077 ENTITY_WARDEN_STEP + f Lnet/minecraft/class_3414; field_14810 ENTITY_PLAYER_SPLASH + f Lnet/minecraft/class_3414; field_14943 BLOCK_SAND_FALL + f Lnet/minecraft/class_3414; field_15177 BLOCK_CONDUIT_ATTACK_TARGET + f Lnet/minecraft/class_3414; field_64100 ENTITY_CAMEL_HUSK_SIT + f Lnet/minecraft/class_3414; field_15044 BLOCK_METAL_BREAK + f Lnet/minecraft/class_3414; field_38078 ENTITY_WARDEN_TENDRIL_CLICKS + f Lnet/minecraft/class_3414; field_15178 AMBIENT_UNDERWATER_LOOP_ADDITIONS_ULTRA_RARE + f Lnet/minecraft/class_3414; field_64101 ENTITY_CAMEL_HUSK_STAND + f Lnet/minecraft/class_3414; field_15045 BLOCK_BEACON_AMBIENT + f Lnet/minecraft/class_3414; field_14941 ENTITY_ILLUSIONER_MIRROR_MOVE + f Lnet/minecraft/class_3414; field_64102 ENTITY_CAMEL_HUSK_STEP + f Lnet/minecraft/class_3414; field_15179 ENTITY_ZOMBIE_HORSE_HURT + f Lnet/minecraft/class_3414; field_15046 ENTITY_HUSK_STEP + f Lnet/minecraft/class_6880$class_6883; field_14708 BLOCK_NOTE_BLOCK_SNARE + f Lnet/minecraft/class_3414; field_14940 ENTITY_GENERIC_HURT + f Lnet/minecraft/class_3414; field_38073 ENTITY_WARDEN_NEARBY_CLOSER + f Lnet/minecraft/class_3414; field_15048 BLOCK_WOOL_FALL + f Lnet/minecraft/class_6880$class_6883; field_14838 MUSIC_DISC_WARD + f Lnet/minecraft/class_3414; field_38074 ENTITY_WARDEN_NEARBY_CLOSEST + f Lnet/minecraft/class_3414; field_15049 ENTITY_PILLAGER_DEATH + f Lnet/minecraft/class_6880$class_6883; field_14704 ENTITY_HORSE_SADDLE + f Lnet/minecraft/class_6880$class_6883; field_14837 MUSIC_DRAGON + f Lnet/minecraft/class_3414; field_38075 ENTITY_WARDEN_ROAR + f Lnet/minecraft/class_3414; field_38076 ENTITY_WARDEN_SNIFF + f Lnet/minecraft/class_3414; field_14819 BLOCK_IRON_DOOR_CLOSE + f Lnet/minecraft/class_3414; field_14818 ENTITY_GENERIC_SWIM + f Lnet/minecraft/class_3414; field_14817 BLOCK_CHORUS_FLOWER_GROW + f Lnet/minecraft/class_6880$class_6883; field_15198 MUSIC_UNDER_WATER + f Lnet/minecraft/class_3414; field_15170 ENTITY_SPIDER_AMBIENT + f Lnet/minecraft/class_3414; field_14816 BLOCK_END_GATEWAY_SPAWN + f Lnet/minecraft/class_3414; field_14949 ENTITY_MAGMA_CUBE_SQUISH + f Lnet/minecraft/class_3414; field_15171 ENTITY_BOAT_PADDLE_WATER + f Lnet/minecraft/class_3414; field_14948 BLOCK_LADDER_STEP + f Lnet/minecraft/class_3414; field_14815 ENTITY_VILLAGER_YES + f Lnet/minecraft/class_3414; field_15172 ENTITY_DOLPHIN_SWIM + f Lnet/minecraft/class_3414; field_14814 ENTITY_SHEEP_DEATH + f Lnet/minecraft/class_3414; field_14947 ENTITY_HORSE_AMBIENT + f Lnet/minecraft/class_3414; field_15173 BLOCK_LILY_PAD_PLACE + f Lnet/minecraft/class_3414; field_15040 BLOCK_SNOW_HIT + f Lnet/minecraft/class_3414; field_14813 ENTITY_PHANTOM_AMBIENT + f Lnet/minecraft/class_3414; field_14946 WEATHER_RAIN + f Lnet/minecraft/class_3414; field_15174 ENTITY_ZOMBIE_AMBIENT + f Lnet/minecraft/class_3414; field_15041 ENTITY_STRAY_AMBIENT + f Lnet/minecraft/class_3414; field_14812 ENTITY_VEX_AMBIENT + f Lnet/minecraft/class_3414; field_14945 BLOCK_SNOW_PLACE + f Lnet/minecraft/class_3414; field_15175 ENTITY_VILLAGER_AMBIENT + f Lnet/minecraft/class_3414; field_15042 ENTITY_WOLF_SHAKE + f Lnet/minecraft/class_3414; field_14811 BLOCK_BAMBOO_HIT + f Lnet/minecraft/class_3414; field_23205 ENTITY_STRIDER_STEP + f Lnet/minecraft/class_6880$class_6883; field_35344 MUSIC_OVERWORLD_DRIPSTONE_CAVES + f Lnet/minecraft/class_3414; field_50099 BLOCK_TRIAL_SPAWNER_SPAWN_ITEM + f Lnet/minecraft/class_3414; field_21908 BLOCK_FUNGUS_FALL + f Lnet/minecraft/class_3414; field_23204 ENTITY_STRIDER_HURT + f Lnet/minecraft/class_6880$class_6883; field_35343 MUSIC_DISC_OTHERSIDE + f Lnet/minecraft/class_3414; field_21909 BLOCK_WEEPING_VINES_BREAK + f Lnet/minecraft/class_3414; field_25733 ENTITY_PIGLIN_BRUTE_CONVERTED_TO_ZOMBIFIED + f Lnet/minecraft/class_3414; field_54891 UI_HUD_BUBBLE_POP + f Lnet/minecraft/class_3414; field_23206 ENTITY_STRIDER_STEP_LAVA + f Lnet/minecraft/class_3414; field_23207 ENTITY_STRIDER_EAT + f Lnet/minecraft/class_3414; field_23201 ENTITY_STRIDER_HAPPY + f Lnet/minecraft/class_6880$class_6883; field_35348 MUSIC_OVERWORLD_MEADOW + f Lnet/minecraft/class_3414; field_22268 ENTITY_PIGLIN_JEALOUS + f Lnet/minecraft/class_3414; field_21904 BLOCK_FUNGUS_STEP + f Lnet/minecraft/class_3414; field_50095 BLOCK_COBWEB_PLACE + f Lnet/minecraft/class_3414; field_25730 ENTITY_PIGLIN_BRUTE_DEATH + f Lnet/minecraft/class_6880$class_6883; field_35347 MUSIC_OVERWORLD_LUSH_CAVES + f Lnet/minecraft/class_3414; field_23200 ENTITY_STRIDER_AMBIENT + f Lnet/minecraft/class_3414; field_21905 BLOCK_FUNGUS_PLACE + f Lnet/minecraft/class_3414; field_50096 BLOCK_COBWEB_HIT + f Lnet/minecraft/class_3414; field_22269 ENTITY_PIGLIN_HURT + f Lnet/minecraft/class_3414; field_23203 ENTITY_STRIDER_DEATH + f Lnet/minecraft/class_6880$class_6883; field_35346 MUSIC_OVERWORLD_JAGGED_PEAKS + f Lnet/minecraft/class_3414; field_50097 BLOCK_COBWEB_FALL + f Lnet/minecraft/class_3414; field_25732 ENTITY_PIGLIN_BRUTE_STEP + f Lnet/minecraft/class_3414; field_21906 BLOCK_ANCIENT_DEBRIS_STEP + f Lnet/minecraft/class_3414; field_23202 ENTITY_STRIDER_RETREAT + f Lnet/minecraft/class_6880$class_6883; field_35345 MUSIC_OVERWORLD_GROVE + f Lnet/minecraft/class_3414; field_50098 BLOCK_TRIAL_SPAWNER_ABOUT_TO_SPAWN_ITEM + f Lnet/minecraft/class_3414; field_25731 ENTITY_PIGLIN_BRUTE_HURT + f Lnet/minecraft/class_3414; field_21907 BLOCK_FUNGUS_HIT + f Lnet/minecraft/class_3414; field_64108 ENTITY_PARCHED_DEATH + f Lnet/minecraft/class_3414; field_50091 EVENT_MOB_EFFECT_TRIAL_OMEN + f Lnet/minecraft/class_3414; field_64109 ENTITY_PARCHED_HURT + f Lnet/minecraft/class_3414; field_50092 EVENT_MOB_EFFECT_RAID_OMEN + f Lnet/minecraft/class_3414; field_50093 BLOCK_COBWEB_BREAK + f Lnet/minecraft/class_3414; field_38060 BLOCK_SCULK_SHRIEKER_SHRIEK + f Lnet/minecraft/class_3414; field_50094 BLOCK_COBWEB_STEP + f Lnet/minecraft/class_3414; field_64103 ENTITY_CAMEL_HUSK_STEP_SAND + f Lnet/minecraft/class_3414; field_64104 ENTITY_PARROT_IMITATE_PARCHED + f Lnet/minecraft/class_3414; field_64105 ENTITY_PARROT_IMITATE_ZOMBIE_HORSE + f Lnet/minecraft/class_3414; field_64106 ENTITY_PARROT_IMITATE_ZOMBIE_NAUTILUS + f Lnet/minecraft/class_3414; field_64107 ENTITY_PARCHED_AMBIENT + f Lnet/minecraft/class_3414; field_50090 EVENT_MOB_EFFECT_BAD_OMEN + f Lnet/minecraft/class_3414; field_15188 ENTITY_FIREWORK_ROCKET_LARGE_BLAST + f Lnet/minecraft/class_3414; field_64111 ENTITY_PARROT_IMITATE_CAMEL_HUSK + f Lnet/minecraft/class_3414; field_15055 ENTITY_IRON_GOLEM_DEATH + f Lnet/minecraft/class_3414; field_38065 ENTITY_WARDEN_DEATH + f Lnet/minecraft/class_3414; field_14955 ENTITY_WITHER_SKELETON_STEP + f Lnet/minecraft/class_3414; field_14822 ENTITY_RAVAGER_STUNNED + f Lnet/minecraft/class_3414; field_15189 ENTITY_LLAMA_DEATH + f Lnet/minecraft/class_3414; field_15056 ENTITY_ZOMBIE_VILLAGER_AMBIENT + f Lnet/minecraft/class_3414; field_38066 ENTITY_WARDEN_DIG + f Lnet/minecraft/class_3414; field_14821 ENTITY_GENERIC_BURN + f Lnet/minecraft/class_3414; field_14954 BLOCK_STONE_BUTTON_CLICK_OFF + f Lnet/minecraft/class_3414; field_15057 ENTITY_CREEPER_PRIMED + f Lnet/minecraft/class_3414; field_38067 ENTITY_WARDEN_EMERGE + f Lnet/minecraft/class_3414; field_14820 ENTITY_WITCH_DEATH + f Lnet/minecraft/class_3414; field_14953 BLOCK_WET_GRASS_HIT + f Lnet/minecraft/class_3414; field_15058 ENTITY_EVOKER_PREPARE_WOLOLO + f Lnet/minecraft/class_3414; field_38068 ENTITY_WARDEN_HEARTBEAT + f Lnet/minecraft/class_6880$class_6883; field_14829 MUSIC_DISC_BLOCKS + f Lnet/minecraft/class_3414; field_14952 BLOCK_ENDER_CHEST_OPEN + f Lnet/minecraft/class_3414; field_38061 ENTITY_WARDEN_AGITATED + f Lnet/minecraft/class_3414; field_14951 AMBIENT_UNDERWATER_LOOP + f Lnet/minecraft/class_6880$class_6883; field_15059 MUSIC_DISC_MALL + f Lnet/minecraft/class_3414; field_38062 ENTITY_WARDEN_AMBIENT + f Lnet/minecraft/class_3414; field_38063 ENTITY_WARDEN_ANGRY + f Lnet/minecraft/class_3414; field_64110 ENTITY_PARCHED_STEP + f Lnet/minecraft/class_6880$class_6883; field_14824 ENTITY_PIG_SADDLE + f Lnet/minecraft/class_3414; field_38064 ENTITY_WARDEN_ATTACK_IMPACT + f Lnet/minecraft/class_3414; field_22264 ENTITY_PIGLIN_AMBIENT + f Lnet/minecraft/class_3414; field_21900 BLOCK_NETHER_SPROUTS_PLACE + f Lnet/minecraft/class_3414; field_15180 BLOCK_SLIME_BLOCK_STEP + f Lnet/minecraft/class_3414; field_21901 BLOCK_NETHER_SPROUTS_HIT + f Lnet/minecraft/class_3414; field_22265 ENTITY_PIGLIN_ANGRY + f Lnet/minecraft/class_3414; field_15181 BLOCK_WOOL_STEP + f Lnet/minecraft/class_3414; field_21902 BLOCK_NETHER_SPROUTS_FALL + f Lnet/minecraft/class_3414; field_22266 ENTITY_PIGLIN_CELEBRATE + f Lnet/minecraft/class_3414; field_15182 ENTITY_SKELETON_HORSE_STEP_WATER + f Lnet/minecraft/class_3414; field_14828 AMBIENT_UNDERWATER_EXIT + f Lnet/minecraft/class_6880$class_6883; field_35349 MUSIC_OVERWORLD_FROZEN_PEAKS + f Lnet/minecraft/class_3414; field_15183 ENTITY_TURTLE_HURT + f Lnet/minecraft/class_3414; field_21903 BLOCK_FUNGUS_BREAK + f Lnet/minecraft/class_3414; field_22267 ENTITY_PIGLIN_DEATH + f Lnet/minecraft/class_3414; field_15050 ENTITY_SHULKER_CLOSE + f Lnet/minecraft/class_3414; field_14827 ENTITY_DONKEY_DEATH + f Lnet/minecraft/class_3414; field_15051 ENTITY_CAT_AMBIENT + f Lnet/minecraft/class_3414; field_38069 ENTITY_WARDEN_HURT + f Lnet/minecraft/class_3414; field_22260 ENTITY_HOGLIN_HURT + f Lnet/minecraft/class_3414; field_14959 ENTITY_IRON_GOLEM_HURT + f Lnet/minecraft/class_3414; field_14826 ITEM_BOTTLE_EMPTY + f Lnet/minecraft/class_3414; field_15185 ENTITY_PARROT_IMITATE_HUSK + f Lnet/minecraft/class_3414; field_15052 ENTITY_ELDER_GUARDIAN_DEATH + f Lnet/minecraft/class_6880; field_61166 ITEM_ARMOR_EQUIP_COPPER + f Lnet/minecraft/class_3414; field_22261 ENTITY_HOGLIN_RETREAT + f Lnet/minecraft/class_3414; field_14825 BLOCK_SHULKER_BOX_OPEN + f Lnet/minecraft/class_3414; field_14958 ENTITY_GHAST_SCREAM + f Lnet/minecraft/class_3414; field_15186 ENTITY_ARMOR_STAND_FALL + f Lnet/minecraft/class_3414; field_15053 BLOCK_WOOD_STEP + f Lnet/minecraft/class_3414; field_22262 ENTITY_HOGLIN_STEP + f Lnet/minecraft/class_3414; field_14957 ENTITY_PARROT_IMITATE_PHANTOM + f Lnet/minecraft/class_3414; field_15187 ITEM_CROSSBOW_SHOOT + f Lnet/minecraft/class_3414; field_15054 ENTITY_GHAST_HURT + f Lnet/minecraft/class_3414; field_22263 ENTITY_PIGLIN_ADMIRING_ITEM + f Lnet/minecraft/class_3414; field_14823 BLOCK_CHEST_CLOSE + f Lnet/minecraft/class_3414; field_14956 ENTITY_LIGHTNING_BOLT_IMPACT + f Lnet/minecraft/class_3414; field_54530 ENTITY_CREAKING_ACTIVATE + f Lnet/minecraft/class_3414; field_26945 BLOCK_AMETHYST_CLUSTER_PLACE + f Lnet/minecraft/class_6880$class_6883; field_60662 MUSIC_DISC_TEARS + f Lnet/minecraft/class_3414; field_54531 ENTITY_CREAKING_DEACTIVATE + f Lnet/minecraft/class_3414; field_26946 BLOCK_AMETHYST_CLUSTER_STEP + f Lnet/minecraft/class_3414; field_26947 BLOCK_CAKE_ADD_CANDLE + f Lnet/minecraft/class_3414; field_26943 BLOCK_AMETHYST_CLUSTER_FALL + f Lnet/minecraft/class_3414; field_26944 BLOCK_AMETHYST_CLUSTER_HIT + f Lnet/minecraft/class_3414; field_26941 BLOCK_AMETHYST_BLOCK_STEP + f Lnet/minecraft/class_3414; field_21916 BLOCK_WART_BLOCK_PLACE + f Lnet/minecraft/class_3414; field_26942 BLOCK_AMETHYST_CLUSTER_BREAK + f Lnet/minecraft/class_3414; field_21917 BLOCK_WART_BLOCK_HIT + f Lnet/minecraft/class_3414; field_15190 ENTITY_PARROT_IMITATE_SPIDER + f Lnet/minecraft/class_3414; field_21918 BLOCK_WART_BLOCK_FALL + f Lnet/minecraft/class_3414; field_26940 BLOCK_AMETHYST_BLOCK_PLACE + f Lnet/minecraft/class_3414; field_21919 BLOCK_NETHERITE_BLOCK_BREAK + f Lnet/minecraft/class_3414; field_42549 BLOCK_CHERRY_WOOD_PLACE + f Lnet/minecraft/class_3414; field_42548 BLOCK_CHERRY_WOOD_HIT + f Lnet/minecraft/class_3414; field_59650 ENTITY_HAPPY_GHAST_HURT + f Lnet/minecraft/class_3414; field_42547 BLOCK_CHERRY_WOOD_FALL + f Lnet/minecraft/class_3414; field_59651 ENTITY_HAPPY_GHAST_RIDING + f Lnet/minecraft/class_3414; field_59652 ENTITY_HAPPY_GHAST_AMBIENT + f Lnet/minecraft/class_3414; field_59653 ENTITY_HAPPY_GHAST_DEATH + f Lnet/minecraft/class_3414; field_26948 BLOCK_CALCITE_BREAK + f Lnet/minecraft/class_3414; field_59655 ENTITY_HAPPY_GHAST_UNEQUIP + f Lnet/minecraft/class_3414; field_59656 ENTITY_HAPPY_GHAST_HARNESS_GOGGLES_UP + f Lnet/minecraft/class_3414; field_26949 BLOCK_CALCITE_STEP + f Lnet/minecraft/class_3414; field_14968 ENTITY_GUARDIAN_AMBIENT_LAND + f Lnet/minecraft/class_3414; field_21070 BLOCK_HONEY_BLOCK_BREAK + f Lnet/minecraft/class_3414; field_15067 ENTITY_WITCH_THROW + f Lnet/minecraft/class_3414; field_59657 ENTITY_HAPPY_GHAST_HARNESS_GOGGLES_DOWN + f Lnet/minecraft/class_3414; field_14834 ITEM_BUCKET_EMPTY + f Lnet/minecraft/class_3414; field_42552 BLOCK_CHERRY_SAPLING_FALL + f Lnet/minecraft/class_3414; field_14967 ENTITY_ENDERMAN_STARE + f Lnet/minecraft/class_3414; field_14701 BLOCK_DISPENSER_FAIL + f Lnet/minecraft/class_3414; field_21071 BLOCK_HONEY_BLOCK_FALL + f Lnet/minecraft/class_3414; field_15068 AMBIENT_UNDERWATER_LOOP_ADDITIONS_RARE + f Lnet/minecraft/class_3414; field_42551 BLOCK_CHERRY_SAPLING_BREAK + f Lnet/minecraft/class_3414; field_14833 BLOCK_ANVIL_LAND + f Lnet/minecraft/class_3414; field_14700 BLOCK_CONDUIT_ACTIVATE + f Lnet/minecraft/class_3414; field_21072 BLOCK_HONEY_BLOCK_HIT + f Lnet/minecraft/class_3414; field_15069 ENTITY_SKELETON_HURT + f Lnet/minecraft/class_3414; field_42550 BLOCK_CHERRY_WOOD_STEP + f Lnet/minecraft/class_3414; field_14832 ENTITY_MINECART_INSIDE + f Lnet/minecraft/class_3414; field_14965 BLOCK_GRASS_FALL + f Lnet/minecraft/class_3414; field_22270 ENTITY_PIGLIN_RETREAT + f Lnet/minecraft/class_3414; field_21073 BLOCK_HONEY_BLOCK_PLACE + f Lnet/minecraft/class_3414; field_22271 ENTITY_PIGLIN_STEP + f Lnet/minecraft/class_3414; field_14831 ENTITY_HORSE_JUMP + f Lnet/minecraft/class_3414; field_14964 ENTITY_VEX_DEATH + f Lnet/minecraft/class_3414; field_14830 ENTITY_SNOW_GOLEM_HURT + f Lnet/minecraft/class_3414; field_14963 ENTITY_PARROT_IMITATE_MAGMA_CUBE + f Lnet/minecraft/class_3414; field_14962 BLOCK_LEVER_CLICK + f Lnet/minecraft/class_3414; field_54529 ENTITY_CREAKING_AMBIENT + f Lnet/minecraft/class_3414; field_14961 BLOCK_WOODEN_PRESSURE_PLATE_CLICK_ON + f Lnet/minecraft/class_3414; field_14960 ENTITY_PARROT_EAT + f Lnet/minecraft/class_3414; field_21912 BLOCK_WEEPING_VINES_HIT + f Lnet/minecraft/class_3414; field_15192 ENTITY_CREEPER_HURT + f Lnet/minecraft/class_3414; field_14709 ENTITY_PLAYER_LEVELUP + f Lnet/minecraft/class_6880$class_6883; field_14725 BLOCK_NOTE_BLOCK_CHIME + f Lnet/minecraft/class_3414; field_21913 BLOCK_WEEPING_VINES_FALL + f Lnet/minecraft/class_3414; field_54528 BLOCK_CREAKING_HEART_SPAWN + f Lnet/minecraft/class_3414; field_15060 BLOCK_SNOW_STEP + f Lnet/minecraft/class_3414; field_15193 ENTITY_EVOKER_PREPARE_SUMMON + f Lnet/minecraft/class_3414; field_15194 BLOCK_SLIME_BLOCK_BREAK + f Lnet/minecraft/class_3414; field_21914 BLOCK_WART_BLOCK_BREAK + f Lnet/minecraft/class_3414; field_15061 ENTITY_HORSE_STEP_WOOD + f Lnet/minecraft/class_3414; field_14707 ENTITY_DOLPHIN_JUMP + f Lnet/minecraft/class_3414; field_15195 UI_TOAST_CHALLENGE_COMPLETE + f Lnet/minecraft/class_6880$class_6883; field_14989 BLOCK_NOTE_BLOCK_FLUTE + f Lnet/minecraft/class_3414; field_21915 BLOCK_WART_BLOCK_STEP + f Lnet/minecraft/class_3414; field_14706 ENTITY_PLAYER_ATTACK_SWEEP + f Lnet/minecraft/class_3414; field_14839 ENTITY_SPLASH_POTION_BREAK + f Lnet/minecraft/class_3414; field_15196 ENTITY_HUSK_HURT + f Lnet/minecraft/class_3414; field_15063 ENTITY_MULE_CHEST + f Lnet/minecraft/class_3414; field_21074 BLOCK_HONEY_BLOCK_SLIDE + f Lnet/minecraft/class_3414; field_22272 ENTITY_PIGLIN_CONVERTED_TO_ZOMBIFIED + f Lnet/minecraft/class_3414; field_14705 ENTITY_MOOSHROOM_SHEAR + f Lnet/minecraft/class_3414; field_15197 ENTITY_ITEM_PICKUP + f Lnet/minecraft/class_3414; field_15064 ENTITY_PARROT_IMITATE_ILLUSIONER + f Lnet/minecraft/class_3414; field_21075 BLOCK_HONEY_BLOCK_STEP + f Lnet/minecraft/class_3414; field_22273 ENTITY_SNOW_GOLEM_SHEAR + f Lnet/minecraft/class_3414; field_21076 ENTITY_IRON_GOLEM_DAMAGE + f Lnet/minecraft/class_3414; field_15065 BLOCK_BUBBLE_COLUMN_BUBBLE_POP + f Lnet/minecraft/class_3414; field_21910 BLOCK_WEEPING_VINES_STEP + f Lnet/minecraft/class_3414; field_14703 BLOCK_BEACON_ACTIVATE + f Lnet/minecraft/class_3414; field_14836 ENTITY_HOSTILE_SPLASH + f Lnet/minecraft/class_3414; field_21077 ENTITY_IRON_GOLEM_REPAIR + f Lnet/minecraft/class_3414; field_15199 ENTITY_PARROT_IMITATE_BLAZE + f Lnet/minecraft/class_3414; field_14969 ENTITY_ARMOR_STAND_PLACE + f Lnet/minecraft/class_3414; field_15066 ENTITY_DROWNED_DEATH + f Lnet/minecraft/class_3414; field_21911 BLOCK_WEEPING_VINES_PLACE + f Lnet/minecraft/class_3414; field_14835 ENTITY_DROWNED_STEP + f Lnet/minecraft/class_3414; field_14702 ENTITY_FIREWORK_ROCKET_LAUNCH + f Lnet/minecraft/class_3414; field_26957 BLOCK_CANDLE_HIT + f Lnet/minecraft/class_3414; field_26958 BLOCK_CANDLE_PLACE + f Lnet/minecraft/class_3414; field_26959 BLOCK_CANDLE_STEP + f Lnet/minecraft/class_3414; field_26955 BLOCK_CANDLE_EXTINGUISH + f Lnet/minecraft/class_3414; field_26956 BLOCK_CANDLE_FALL + f Lnet/minecraft/class_3414; field_26953 BLOCK_CANDLE_AMBIENT + f Lnet/minecraft/class_3414; field_21928 BLOCK_NETHERRACK_FALL + f Lnet/minecraft/class_3414; field_26954 BLOCK_CANDLE_BREAK + f Lnet/minecraft/class_3414; field_21929 BLOCK_ANCIENT_DEBRIS_PLACE + f Lnet/minecraft/class_3414; field_26951 BLOCK_CALCITE_HIT + f Lnet/minecraft/class_3414; field_26952 BLOCK_CALCITE_FALL + f Lnet/minecraft/class_3414; field_15070 ENTITY_TURTLE_HURT_BABY + f Lnet/minecraft/class_3414; field_14971 ENTITY_CAT_DEATH + f Lnet/minecraft/class_3414; field_14970 ENTITY_BLAZE_SHOOT + f Lnet/minecraft/class_3414; field_64479 ENTITY_ZOMBIE_HORSE_EAT + f Lnet/minecraft/class_3414; field_14847 ENTITY_MAGMA_CUBE_JUMP + f Lnet/minecraft/class_3414; field_15079 ENTITY_TNT_PRIMED + f Lnet/minecraft/class_3414; field_14713 ENTITY_ENDERMAN_SCREAM + f Lnet/minecraft/class_3414; field_14846 ITEM_HOE_TILL + f Lnet/minecraft/class_3414; field_14979 BLOCK_CONDUIT_DEACTIVATE + f Lnet/minecraft/class_3414; field_14845 ENTITY_BAT_LOOP + f Lnet/minecraft/class_3414; field_38923 ENTITY_ALLAY_ITEM_THROWN + f Lnet/minecraft/class_3414; field_14978 BLOCK_BREWING_STAND_BREW + f Lnet/minecraft/class_3414; field_14712 ENTITY_FIREWORK_ROCKET_SHOOT + f Lnet/minecraft/class_3414; field_39024 ENTITY_GOAT_HORN_BREAK + f Lnet/minecraft/class_3414; field_14977 ENTITY_SHULKER_BULLET_HURT + f Lnet/minecraft/class_3414; field_14711 BLOCK_DISPENSER_LAUNCH + f Lnet/minecraft/class_3414; field_14844 ENTITY_ITEM_FRAME_PLACE + f Lnet/minecraft/class_3414; field_14710 ENTITY_ZOMBIFIED_PIGLIN_HURT + f Lnet/minecraft/class_3414; field_14843 BLOCK_GLASS_PLACE + f Lnet/minecraft/class_3414; field_14976 ENTITY_PILLAGER_AMBIENT + f Lnet/minecraft/class_6880$class_6883; field_38927 MUSIC_OVERWORLD_OLD_GROWTH_TAIGA + f Lnet/minecraft/class_3414; field_14842 ENTITY_BLAZE_HURT + f Lnet/minecraft/class_3414; field_14975 ENTITY_SHEEP_SHEAR + f Lnet/minecraft/class_3414; field_14841 ENTITY_ZOMBIE_VILLAGER_STEP + f Lnet/minecraft/class_3414; field_14974 ENTITY_PHANTOM_DEATH + f Lnet/minecraft/class_3414; field_14973 ENTITY_ELDER_GUARDIAN_DEATH_LAND + f Lnet/minecraft/class_3414; field_14840 ENTITY_PLAYER_ATTACK_STRONG + f Lnet/minecraft/class_3414; field_14972 ENTITY_DOLPHIN_PLAY + f Lnet/minecraft/class_3414; field_21924 BLOCK_NETHERRACK_BREAK + f Lnet/minecraft/class_3414; field_15071 BLOCK_CONDUIT_AMBIENT_SHORT + f Lnet/minecraft/class_3414; field_61981 ENTITY_COPPER_GOLEM_SHEAR + f Lnet/minecraft/class_6880$class_6883; field_38924 MUSIC_DISC_5 + f Lnet/minecraft/class_3414; field_26950 BLOCK_CALCITE_PLACE + f Lnet/minecraft/class_3414; field_21925 BLOCK_NETHERRACK_STEP + f Lnet/minecraft/class_3414; field_15072 ENTITY_VEX_HURT + f Lnet/minecraft/class_3414; field_15073 ENTITY_PARROT_IMITATE_WITHER_SKELETON + f Lnet/minecraft/class_6880$class_6883; field_38925 MUSIC_OVERWORLD_SWAMP + f Lnet/minecraft/class_3414; field_21926 BLOCK_NETHERRACK_PLACE + f Lnet/minecraft/class_3414; field_14719 BLOCK_BAMBOO_PLACE + f Lnet/minecraft/class_3414; field_15074 BLOCK_SAND_BREAK + f Lnet/minecraft/class_3414; field_21927 BLOCK_NETHERRACK_HIT + f Lnet/minecraft/class_3414; field_61980 WEATHER_END_FLASH + f Lnet/minecraft/class_3414; field_14718 BLOCK_WOOD_PLACE + f Lnet/minecraft/class_6880$class_6883; field_15075 ENTITY_ITEM_BREAK + f Lnet/minecraft/class_3414; field_21920 BLOCK_NETHERITE_BLOCK_STEP + f Lnet/minecraft/class_3414; field_15076 ENTITY_PANDA_SNEEZE + f Lnet/minecraft/class_3414; field_21921 BLOCK_NETHERITE_BLOCK_PLACE + f Lnet/minecraft/class_3414; field_14849 ENTITY_SLIME_DEATH_SMALL + f Lnet/minecraft/class_3414; field_14716 BLOCK_PORTAL_TRAVEL + f Lnet/minecraft/class_3414; field_15077 ENTITY_PARROT_HURT + f Lnet/minecraft/class_3414; field_21922 BLOCK_NETHERITE_BLOCK_HIT + f Lnet/minecraft/class_3414; field_14715 ENTITY_PANDA_WORRIED_AMBIENT + f Lnet/minecraft/class_3414; field_14848 ENTITY_PUFFER_FISH_STING + f Lnet/minecraft/class_3414; field_15078 ENTITY_POLAR_BEAR_AMBIENT + f Lnet/minecraft/class_3414; field_21923 BLOCK_NETHERITE_BLOCK_FALL + f Lnet/minecraft/class_3414; field_14714 ENTITY_GUARDIAN_AMBIENT + f Lnet/minecraft/class_3414; field_47208 BLOCK_TRIAL_SPAWNER_AMBIENT + f Lnet/minecraft/class_3414; field_47209 BLOCK_TRIAL_SPAWNER_OPEN_SHUTTER + f Lnet/minecraft/class_3414; field_47206 BLOCK_TRIAL_SPAWNER_SPAWN_MOB + f Lnet/minecraft/class_3414; field_26967 BLOCK_MEDIUM_AMETHYST_BUD_BREAK + f Lnet/minecraft/class_3414; field_47207 BLOCK_TRIAL_SPAWNER_DETECT_PLAYER + f Lnet/minecraft/class_3414; field_28397 ITEM_INK_SAC_USE + f Lnet/minecraft/class_3414; field_20609 BLOCK_BEEHIVE_ENTER + f Lnet/minecraft/class_3414; field_26968 BLOCK_MEDIUM_AMETHYST_BUD_PLACE + f Lnet/minecraft/class_3414; field_26969 ENTITY_MINECART_INSIDE_UNDERWATER + f Lnet/minecraft/class_3414; field_28396 ENTITY_GLOW_SQUID_SQUIRT + f Lnet/minecraft/class_3414; field_26965 BLOCK_LARGE_AMETHYST_BUD_PLACE + f Lnet/minecraft/class_3414; field_28395 ENTITY_GLOW_SQUID_HURT + f Lnet/minecraft/class_3414; field_26966 BLOCK_LARGE_AMETHYST_BUD_BREAK + f Lnet/minecraft/class_3414; field_15080 BLOCK_WOODEN_TRAPDOOR_CLOSE + f Lnet/minecraft/class_3414; field_28394 ENTITY_GLOW_SQUID_DEATH + f Lnet/minecraft/class_3414; field_26963 BLOCK_COPPER_HIT + f Lnet/minecraft/class_6880$class_6883; field_18310 BLOCK_NOTE_BLOCK_DIDGERIDOO + f Lnet/minecraft/class_3414; field_15081 BLOCK_GLASS_BREAK + f Lnet/minecraft/class_3414; field_26964 BLOCK_COPPER_FALL + f Lnet/minecraft/class_3414; field_15082 BLOCK_IRON_TRAPDOOR_OPEN + f Lnet/minecraft/class_3414; field_28393 ENTITY_GLOW_SQUID_AMBIENT + f Lnet/minecraft/class_6880$class_6883; field_18312 BLOCK_NOTE_BLOCK_BANJO + f Lnet/minecraft/class_3414; field_14850 ENTITY_ZOMBIE_CONVERTED_TO_DROWNED + f Lnet/minecraft/class_3414; field_14983 BLOCK_WOOL_BREAK + f Lnet/minecraft/class_6880$class_6883; field_18311 BLOCK_NOTE_BLOCK_BIT + f Lnet/minecraft/class_3414; field_14982 BLOCK_CHEST_OPEN + f Lnet/minecraft/class_3414; field_14981 BLOCK_END_PORTAL_SPAWN + f Lnet/minecraft/class_3414; field_14980 ENTITY_DROWNED_AMBIENT_WATER + f Lnet/minecraft/class_3414; field_42569 BLOCK_CHERRY_WOOD_TRAPDOOR_OPEN + f Lnet/minecraft/class_3414; field_42568 BLOCK_CHERRY_WOOD_TRAPDOOR_CLOSE + f Lnet/minecraft/class_3414; field_42567 BLOCK_CHERRY_WOOD_DOOR_OPEN + f Lnet/minecraft/class_3414; field_42566 BLOCK_CHERRY_WOOD_DOOR_CLOSE + f Lnet/minecraft/class_6880$class_6883; field_42594 MUSIC_OVERWORLD_CHERRY_GROVE + f Lnet/minecraft/class_3414; field_42565 BLOCK_CHERRY_WOOD_HANGING_SIGN_PLACE + f Lnet/minecraft/class_3414; field_14726 ENTITY_PLAYER_BREATH + f Lnet/minecraft/class_3414; field_14859 BLOCK_TRIPWIRE_ATTACH + f Lnet/minecraft/class_6880$class_6883; field_18308 BLOCK_NOTE_BLOCK_IRON_XYLOPHONE + f Lnet/minecraft/class_3414; field_42576 BLOCK_CHERRY_WOOD_FENCE_GATE_OPEN + f Lnet/minecraft/class_3414; field_14858 ENTITY_EVOKER_CAST_SPELL + f Lnet/minecraft/class_3414; field_42575 BLOCK_CHERRY_WOOD_FENCE_GATE_CLOSE + f Lnet/minecraft/class_3414; field_14857 ENTITY_COW_DEATH + f Lnet/minecraft/class_3414; field_48790 BLOCK_VAULT_HIT + f Lnet/minecraft/class_3414; field_14856 ENTITY_TURTLE_DEATH + f Lnet/minecraft/class_3414; field_42574 BLOCK_CHERRY_WOOD_PRESSURE_PLATE_CLICK_ON + f Lnet/minecraft/class_3414; field_14723 BLOCK_STONE_FALL + f Lnet/minecraft/class_6880$class_6883; field_18309 BLOCK_NOTE_BLOCK_COW_BELL + f Lnet/minecraft/class_3414; field_21930 BLOCK_ANCIENT_DEBRIS_HIT + f Lnet/minecraft/class_3414; field_45062 BLOCK_SPONGE_ABSORB + f Lnet/minecraft/class_3414; field_21931 BLOCK_SHROOMLIGHT_BREAK + f Lnet/minecraft/class_3414; field_42573 BLOCK_CHERRY_WOOD_BREAK + f Lnet/minecraft/class_3414; field_14988 BLOCK_METAL_PRESSURE_PLATE_CLICK_ON + f Lnet/minecraft/class_3414; field_14855 ENTITY_SKELETON_HORSE_HURT + f Lnet/minecraft/class_3414; field_14722 ENTITY_TURTLE_AMBIENT_LAND + f Lnet/minecraft/class_3414; field_14721 ENTITY_SKELETON_HORSE_DEATH + f Lnet/minecraft/class_3414; field_48793 BLOCK_VAULT_OPEN_SHUTTER + f Lnet/minecraft/class_3414; field_42572 BLOCK_CHERRY_WOOD_PRESSURE_PLATE_CLICK_OFF + f Lnet/minecraft/class_3414; field_14854 ENTITY_PARROT_IMITATE_ENDER_DRAGON + f Lnet/minecraft/class_3414; field_14987 ENTITY_HORSE_GALLOP + f Lnet/minecraft/class_3414; field_42571 BLOCK_CHERRY_WOOD_BUTTON_CLICK_ON + f Lnet/minecraft/class_3414; field_14720 BLOCK_GRASS_HIT + f Lnet/minecraft/class_3414; field_14853 BLOCK_LADDER_PLACE + f Lnet/minecraft/class_3414; field_48794 BLOCK_VAULT_PLACE + f Lnet/minecraft/class_3414; field_14986 ENTITY_ZOMBIE_INFECT + f Lnet/minecraft/class_3414; field_14852 ENTITY_ZOMBIFIED_PIGLIN_ANGRY + f Lnet/minecraft/class_3414; field_42570 BLOCK_CHERRY_WOOD_BUTTON_CLICK_OFF + f Lnet/minecraft/class_3414; field_14985 ENTITY_TROPICAL_FISH_HURT + f Lnet/minecraft/class_3414; field_48791 BLOCK_VAULT_INSERT_ITEM + f Lnet/minecraft/class_3414; field_14984 ENTITY_SKELETON_HORSE_AMBIENT + f Lnet/minecraft/class_3414; field_48792 BLOCK_VAULT_INSERT_ITEM_FAIL + f Lnet/minecraft/class_3414; field_14851 ENTITY_COD_HURT + f Lnet/minecraft/class_6880; field_47721 ITEM_ARMOR_EQUIP_WOLF + f Lnet/minecraft/class_3414; field_20604 ENTITY_BEE_LOOP_AGGRESSIVE + f Lnet/minecraft/class_3414; field_26961 BLOCK_COPPER_STEP + f Lnet/minecraft/class_3414; field_47200 ENTITY_BREEZE_HURT + f Lnet/minecraft/class_3414; field_21936 BLOCK_ANCIENT_DEBRIS_FALL + f Lnet/minecraft/class_3414; field_48797 BLOCK_VAULT_AMBIENT + f Lnet/minecraft/class_3414; field_15083 ENTITY_COD_AMBIENT + f Lnet/minecraft/class_3414; field_28392 ITEM_GLOW_INK_SAC_USE + f Lnet/minecraft/class_3414; field_20603 ENTITY_BEE_HURT + f Lnet/minecraft/class_3414; field_47201 BLOCK_TRIAL_SPAWNER_BREAK + f Lnet/minecraft/class_3414; field_26962 BLOCK_COPPER_PLACE + f Lnet/minecraft/class_3414; field_15084 ENTITY_SILVERFISH_STEP + f Lnet/minecraft/class_3414; field_21937 BLOCK_NETHER_ORE_BREAK + f Lnet/minecraft/class_3414; field_48798 BLOCK_VAULT_BREAK + f Lnet/minecraft/class_3414; field_28391 ITEM_DYE_USE + f Lnet/minecraft/class_3414; field_55614 BLOCK_LEAF_LITTER_FALL + f Lnet/minecraft/class_3414; field_20602 ENTITY_BEE_DEATH + f Lnet/minecraft/class_3414; field_15085 ENTITY_TROPICAL_FISH_AMBIENT + f Lnet/minecraft/class_3414; field_17482 ITEM_BOOK_PUT + f Lnet/minecraft/class_3414; field_21938 BLOCK_NETHER_ORE_FALL + f Lnet/minecraft/class_3414; field_48795 BLOCK_VAULT_STEP + f Lnet/minecraft/class_3414; field_26960 BLOCK_COPPER_BREAK + f Lnet/minecraft/class_3414; field_15086 ENTITY_ENDER_DRAGON_HURT + f Lnet/minecraft/class_3414; field_48796 BLOCK_VAULT_ACTIVATE + f Lnet/minecraft/class_3414; field_17481 ITEM_BOOK_PAGE_TURN + f Lnet/minecraft/class_3414; field_21939 BLOCK_NETHER_ORE_HIT + f Lnet/minecraft/class_3414; field_47204 BLOCK_TRIAL_SPAWNER_HIT + f Lnet/minecraft/class_3414; field_17484 UI_CARTOGRAPHY_TABLE_TAKE_RESULT + f Lnet/minecraft/class_3414; field_15087 BLOCK_CORAL_BLOCK_PLACE + f Lnet/minecraft/class_3414; field_20608 BLOCK_BEEHIVE_DRIP + f Lnet/minecraft/class_3414; field_54547 ENTITY_PARROT_IMITATE_CREAKING + f Lnet/minecraft/class_3414; field_21932 BLOCK_SHROOMLIGHT_STEP + f Lnet/minecraft/class_3414; field_55611 BLOCK_LEAF_LITTER_STEP + f Lnet/minecraft/class_3414; field_20607 ENTITY_BEE_POLLINATE + f Lnet/minecraft/class_3414; field_47205 BLOCK_TRIAL_SPAWNER_FALL + f Lnet/minecraft/class_3414; field_14729 ENTITY_PHANTOM_BITE + f Lnet/minecraft/class_3414; field_55613 BLOCK_LEAF_LITTER_HIT + f Lnet/minecraft/class_3414; field_17483 BLOCK_CAMPFIRE_CRACKLE + f Lnet/minecraft/class_3414; field_15088 ENTITY_ZOMBIE_HURT + f Lnet/minecraft/class_3414; field_21933 BLOCK_SHROOMLIGHT_PLACE + f Lnet/minecraft/class_3414; field_55612 BLOCK_LEAF_LITTER_PLACE + f Lnet/minecraft/class_3414; field_20606 ENTITY_BEE_STING + f Lnet/minecraft/class_3414; field_14728 ENTITY_ZOMBIE_VILLAGER_HURT + f Lnet/minecraft/class_3414; field_47202 BLOCK_TRIAL_SPAWNER_STEP + f Lnet/minecraft/class_6880$class_6883; field_14744 MUSIC_DISC_CAT + f Lnet/minecraft/class_3414; field_54544 BLOCK_CREAKING_HEART_STEP + f Lnet/minecraft/class_3414; field_21934 BLOCK_SHROOMLIGHT_HIT + f Lnet/minecraft/class_3414; field_48799 BLOCK_VAULT_CLOSE_SHUTTER + f Lnet/minecraft/class_3414; field_14727 BLOCK_ANVIL_FALL + f Lnet/minecraft/class_3414; field_20605 ENTITY_BEE_LOOP + f Lnet/minecraft/class_3414; field_47203 BLOCK_TRIAL_SPAWNER_PLACE + f Lnet/minecraft/class_3414; field_54545 BLOCK_CREAKING_HEART_IDLE + f Lnet/minecraft/class_3414; field_54546 BLOCK_PALE_HANGING_MOSS_IDLE + f Lnet/minecraft/class_3414; field_21935 BLOCK_SHROOMLIGHT_FALL + f Lnet/minecraft/class_3414; field_55610 BLOCK_LEAF_LITTER_BREAK + f Lnet/minecraft/class_3414; field_54542 BLOCK_CREAKING_HEART_HURT + f Lnet/minecraft/class_6880$class_6883; field_14995 MUSIC_CREATIVE + f Lnet/minecraft/class_3414; field_54543 BLOCK_CREAKING_HEART_PLACE + f Lnet/minecraft/class_3414; field_54540 BLOCK_CREAKING_HEART_FALL + f Lnet/minecraft/class_3414; field_26979 BLOCK_AMETHYST_BLOCK_BREAK + f Lnet/minecraft/class_3414; field_54541 BLOCK_CREAKING_HEART_HIT + f Lnet/minecraft/class_3414; field_15090 ENTITY_FIREWORK_ROCKET_BLAST_FAR + f Lnet/minecraft/class_3414; field_23116 BLOCK_RESPAWN_ANCHOR_CHARGE + f Lnet/minecraft/class_3414; field_26977 BLOCK_TUFF_HIT + f Lnet/minecraft/class_3414; field_15091 ENTITY_RABBIT_JUMP + f Lnet/minecraft/class_3414; field_23115 BLOCK_RESPAWN_ANCHOR_AMBIENT + f Lnet/minecraft/class_3414; field_26978 BLOCK_TUFF_FALL + f Lnet/minecraft/class_3414; field_15092 BLOCK_SNOW_FALL + f Lnet/minecraft/class_3414; field_23118 BLOCK_RESPAWN_ANCHOR_SET_SPAWN + f Lnet/minecraft/class_3414; field_26975 BLOCK_TUFF_STEP + f Lnet/minecraft/class_3414; field_15093 ENTITY_FISHING_BOBBER_RETRIEVE + f Lnet/minecraft/class_3414; field_26976 BLOCK_TUFF_PLACE + f Lnet/minecraft/class_3414; field_15094 ENTITY_DONKEY_AMBIENT + f Lnet/minecraft/class_3414; field_14861 BLOCK_FENCE_GATE_CLOSE + f Lnet/minecraft/class_3414; field_14994 ENTITY_HOSTILE_HURT + f Lnet/minecraft/class_3414; field_42559 BLOCK_CHERRY_LEAVES_PLACE + f Lnet/minecraft/class_3414; field_14993 BLOCK_FIRE_AMBIENT + f Lnet/minecraft/class_3414; field_42558 BLOCK_CHERRY_LEAVES_HIT + f Lnet/minecraft/class_3414; field_14992 ENTITY_DOLPHIN_ATTACK + f Lnet/minecraft/class_3414; field_42557 BLOCK_CHERRY_LEAVES_FALL + f Lnet/minecraft/class_3414; field_14991 ENTITY_BLAZE_AMBIENT + f Lnet/minecraft/class_3414; field_42556 BLOCK_CHERRY_LEAVES_BREAK + f Lnet/minecraft/class_6880$class_6883; field_23117 BLOCK_RESPAWN_ANCHOR_DEPLETE + f Lnet/minecraft/class_3414; field_42555 BLOCK_CHERRY_SAPLING_STEP + f Lnet/minecraft/class_3414; field_42554 BLOCK_CHERRY_SAPLING_PLACE + f Lnet/minecraft/class_6880$class_6883; field_40078 ENTITY_CAMEL_SADDLE + f Lnet/minecraft/class_3414; field_42553 BLOCK_CHERRY_SAPLING_HIT + f Lnet/minecraft/class_3414; field_14738 ENTITY_ILLUSIONER_PREPARE_MIRROR + f Lnet/minecraft/class_3414; field_14605 ENTITY_POLAR_BEAR_AMBIENT_BABY + f Lnet/minecraft/class_3414; field_42564 BLOCK_CHERRY_WOOD_HANGING_SIGN_HIT + f Lnet/minecraft/class_3414; field_14604 ENTITY_PANDA_AMBIENT + f Lnet/minecraft/class_3414; field_14737 ENTITY_GENERIC_SPLASH + f Lnet/minecraft/class_3414; field_21940 BLOCK_NETHER_ORE_PLACE + f Lnet/minecraft/class_3414; field_14736 ENTITY_WITCH_AMBIENT + f Lnet/minecraft/class_3414; field_42563 BLOCK_CHERRY_WOOD_HANGING_SIGN_FALL + f Lnet/minecraft/class_3414; field_14603 ENTITY_SHEEP_AMBIENT + f Lnet/minecraft/class_3414; field_14869 ENTITY_PHANTOM_FLAP + f Lnet/minecraft/class_6880$class_6883; field_20614 ENTITY_GENERIC_EAT + f Lnet/minecraft/class_3414; field_21941 BLOCK_NETHER_ORE_STEP + f Lnet/minecraft/class_3414; field_21942 BLOCK_SOUL_SAND_HIT + f Lnet/minecraft/class_6880$class_6883; field_20615 ITEM_HONEY_BOTTLE_DRINK + f Lnet/minecraft/class_3414; field_42562 BLOCK_CHERRY_WOOD_HANGING_SIGN_BREAK + f Lnet/minecraft/class_3414; field_14868 ENTITY_ELDER_GUARDIAN_HURT + f Lnet/minecraft/class_3414; field_14735 ENTITY_VINDICATOR_AMBIENT + f Lnet/minecraft/class_3414; field_14602 ENTITY_PARROT_STEP + f Lnet/minecraft/class_6880$class_6883; field_20613 ENTITY_GENERIC_DRINK + f Lnet/minecraft/class_3414; field_21943 BLOCK_SOUL_SAND_FALL + f Lnet/minecraft/class_3414; field_42561 BLOCK_CHERRY_WOOD_HANGING_SIGN_STEP + f Lnet/minecraft/class_3414; field_14867 ENTITY_CAT_HURT + f Lnet/minecraft/class_3414; field_14734 ENTITY_BLAZE_BURN + f Lnet/minecraft/class_3414; field_14601 ENTITY_CHICKEN_HURT + f Lnet/minecraft/class_3414; field_55608 BLOCK_IRON_HIT + f Lnet/minecraft/class_6880; field_63219 ITEM_SPEAR_WOOD_USE + f Lnet/minecraft/class_3414; field_20612 BLOCK_BEEHIVE_WORK + f Lnet/minecraft/class_3414; field_14600 ENTITY_ARROW_SHOOT + f Lnet/minecraft/class_3414; field_42560 BLOCK_CHERRY_LEAVES_STEP + f Lnet/minecraft/class_3414; field_14999 ENTITY_PLAYER_ATTACK_KNOCKBACK + f Lnet/minecraft/class_3414; field_14733 ENTITY_RAVAGER_ROAR + f Lnet/minecraft/class_3414; field_55609 BLOCK_IRON_FALL + f Lnet/minecraft/class_6880; field_63218 ITEM_SPEAR_ATTACK + f Lnet/minecraft/class_3414; field_20611 BLOCK_BEEHIVE_SHEAR + f Lnet/minecraft/class_3414; field_20610 BLOCK_BEEHIVE_EXIT + f Lnet/minecraft/class_3414; field_14732 ENTITY_GENERIC_DEATH + f Lnet/minecraft/class_3414; field_14865 ENTITY_LIGHTNING_BOLT_THUNDER + f Lnet/minecraft/class_3414; field_14998 ENTITY_PLAYER_SWIM + f Lnet/minecraft/class_3414; field_55606 BLOCK_IRON_STEP + f Lnet/minecraft/class_3414; field_14731 BLOCK_CHEST_LOCKED + f Lnet/minecraft/class_3414; field_14864 ENTITY_TURTLE_SHAMBLE_BABY + f Lnet/minecraft/class_3414; field_14997 ENTITY_PANDA_PRE_SNEEZE + f Lnet/minecraft/class_3414; field_55607 BLOCK_IRON_PLACE + f Lnet/minecraft/class_3414; field_14863 ENTITY_SLIME_ATTACK + f Lnet/minecraft/class_3414; field_14996 ENTITY_ZOMBIE_VILLAGER_DEATH + f Lnet/minecraft/class_3414; field_14730 ENTITY_SHEEP_HURT + f Lnet/minecraft/class_3414; field_15095 ENTITY_SLIME_SQUISH + f Lnet/minecraft/class_3414; field_26973 ITEM_SPYGLASS_STOP_USING + f Lnet/minecraft/class_3414; field_21948 BLOCK_SOUL_SOIL_FALL + f Lnet/minecraft/class_3414; field_54539 BLOCK_CREAKING_HEART_BREAK + f Lnet/minecraft/class_3414; field_55605 BLOCK_IRON_BREAK + f Lnet/minecraft/class_3414; field_15096 UI_LOOM_TAKE_RESULT + f Lnet/minecraft/class_3414; field_26974 BLOCK_TUFF_BREAK + f Lnet/minecraft/class_3414; field_21949 BLOCK_SOUL_SAND_BREAK + f Lnet/minecraft/class_3414; field_26971 BLOCK_SMALL_AMETHYST_BUD_PLACE + f Lnet/minecraft/class_6880; field_63217 ITEM_SPEAR_HIT + f Lnet/minecraft/class_3414; field_15097 ENTITY_LLAMA_CHEST + f Lnet/minecraft/class_3414; field_54537 ENTITY_CREAKING_SPAWN + f Lnet/minecraft/class_6880; field_63216 ITEM_SPEAR_USE + f Lnet/minecraft/class_3414; field_26972 ITEM_SPYGLASS_USE + f Lnet/minecraft/class_3414; field_15098 ENTITY_PARROT_IMITATE_SLIME + f Lnet/minecraft/class_3414; field_54538 ENTITY_CREAKING_SWAY + f Lnet/minecraft/class_3414; field_14609 BLOCK_GRAVEL_PLACE + f Lnet/minecraft/class_3414; field_15099 ENTITY_HORSE_EAT + f Lnet/minecraft/class_3414; field_54534 ENTITY_CREAKING_STEP + f Lnet/minecraft/class_3414; field_54535 ENTITY_CREAKING_FREEZE + f Lnet/minecraft/class_3414; field_21944 BLOCK_SOUL_SOIL_BREAK + f Lnet/minecraft/class_3414; field_14608 ENTITY_ENDERMAN_DEATH + f Lnet/minecraft/class_3414; field_26970 BLOCK_SMALL_AMETHYST_BUD_BREAK + f Lnet/minecraft/class_3414; field_54536 ENTITY_CREAKING_UNFREEZE + f Lnet/minecraft/class_3414; field_21945 BLOCK_SOUL_SOIL_STEP + f Lnet/minecraft/class_3414; field_14607 BLOCK_WOOD_FALL + f Lnet/minecraft/class_3414; field_54532 ENTITY_CREAKING_ATTACK + f Lnet/minecraft/class_3414; field_21946 BLOCK_SOUL_SOIL_PLACE + f Lnet/minecraft/class_3414; field_14739 BLOCK_CHORUS_FLOWER_DEATH + f Lnet/minecraft/class_3414; field_54533 ENTITY_CREAKING_DEATH + f Lnet/minecraft/class_3414; field_21947 BLOCK_SOUL_SOIL_HIT + f Lnet/minecraft/class_3414; field_28025 BLOCK_DRIPSTONE_BLOCK_PLACE + f Lnet/minecraft/class_6880$class_6883; field_14631 MUSIC_END + f Lnet/minecraft/class_3414; field_28289 ENTITY_AXOLOTL_HURT + f Lnet/minecraft/class_3414; field_28288 ENTITY_AXOLOTL_DEATH + f Lnet/minecraft/class_3414; field_28287 ENTITY_AXOLOTL_ATTACK + f Lnet/minecraft/class_6880$class_6883; field_17266 EVENT_RAID_HORN + f Lnet/minecraft/class_3414; field_14741 ENTITY_CAT_PURR + f Lnet/minecraft/class_3414; field_14740 BLOCK_BAMBOO_BREAK + f Lnet/minecraft/class_3414; field_14873 ENTITY_SNOWBALL_THROW + f Lnet/minecraft/class_3414; field_14872 ENTITY_RABBIT_DEATH + f Lnet/minecraft/class_3414; field_14871 ENTITY_CHICKEN_AMBIENT + f Lnet/minecraft/class_3414; field_28029 BLOCK_POINTED_DRIPSTONE_STEP + f Lnet/minecraft/class_3414; field_14870 ENTITY_SHEEP_STEP + f Lnet/minecraft/class_3414; field_28028 BLOCK_POINTED_DRIPSTONE_BREAK + f Lnet/minecraft/class_6880$class_6883; field_35351 MUSIC_OVERWORLD_STONY_PEAKS + f Lnet/minecraft/class_3414; field_28027 BLOCK_DRIPSTONE_BLOCK_FALL + f Lnet/minecraft/class_6880$class_6883; field_35350 MUSIC_OVERWORLD_SNOWY_SLOPES + f Lnet/minecraft/class_3414; field_28026 BLOCK_DRIPSTONE_BLOCK_HIT + f Lnet/minecraft/class_3414; field_14617 ENTITY_SKELETON_HORSE_SWIM + f Lnet/minecraft/class_3414; field_21951 BLOCK_SOUL_SAND_PLACE + f Lnet/minecraft/class_3414; field_14749 ENTITY_MAGMA_CUBE_SQUISH_SMALL + f Lnet/minecraft/class_3414; field_14616 ITEM_SHOVEL_FLATTEN + f Lnet/minecraft/class_3414; field_14615 ENTITY_PIG_AMBIENT + f Lnet/minecraft/class_3414; field_42599 ENTITY_SNIFFER_DEATH + f Lnet/minecraft/class_3414; field_14748 ENTITY_PUFFER_FISH_HURT + f Lnet/minecraft/class_3414; field_18313 ENTITY_WANDERING_TRADER_DRINK_POTION + f Lnet/minecraft/class_3414; field_14747 ENTITY_MAGMA_CUBE_HURT + f Lnet/minecraft/class_3414; field_14614 ENTITY_MULE_AMBIENT + f Lnet/minecraft/class_3414; field_40068 BLOCK_BAMBOO_WOOD_PRESSURE_PLATE_CLICK_OFF + f Lnet/minecraft/class_3414; field_42598 ENTITY_SNIFFER_HURT + f Lnet/minecraft/class_3414; field_42597 ENTITY_SNIFFER_IDLE + f Lnet/minecraft/class_3414; field_14746 ENTITY_BAT_HURT + f Lnet/minecraft/class_3414; field_14879 ENTITY_ENDERMAN_TELEPORT + f Lnet/minecraft/class_3414; field_14613 ENTITY_HORSE_STEP + f Lnet/minecraft/class_3414; field_40069 BLOCK_BAMBOO_WOOD_PRESSURE_PLATE_CLICK_ON + f Lnet/minecraft/class_3414; field_18315 ENTITY_WANDERING_TRADER_DISAPPEARED + f Lnet/minecraft/class_3414; field_40066 BLOCK_BAMBOO_WOOD_BUTTON_CLICK_OFF + f Lnet/minecraft/class_3414; field_14878 ENTITY_TROPICAL_FISH_FLOP + f Lnet/minecraft/class_3414; field_42596 ENTITY_SNIFFER_EAT + f Lnet/minecraft/class_3414; field_14745 ENTITY_SNOW_GOLEM_SHOOT + f Lnet/minecraft/class_3414; field_14612 ENTITY_FIREWORK_ROCKET_LARGE_BLAST_FAR + f Lnet/minecraft/class_3414; field_14611 BLOCK_DISPENSER_DISPENSE + f Lnet/minecraft/class_3414; field_42595 ENTITY_SNIFFER_STEP + f Lnet/minecraft/class_3414; field_18314 ENTITY_WANDERING_TRADER_REAPPEARED + f Lnet/minecraft/class_3414; field_40067 BLOCK_BAMBOO_WOOD_BUTTON_CLICK_ON + f Lnet/minecraft/class_3414; field_14877 ENTITY_SKELETON_DEATH + f Lnet/minecraft/class_3414; field_14743 ENTITY_ZOMBIFIED_PIGLIN_DEATH + f Lnet/minecraft/class_3414; field_14610 ENTITY_BAT_TAKEOFF + f Lnet/minecraft/class_3414; field_40064 BLOCK_BAMBOO_WOOD_TRAPDOOR_CLOSE + f Lnet/minecraft/class_3414; field_14876 ENTITY_PLAYER_SPLASH_HIGH_SPEED + f Lnet/minecraft/class_3414; field_21950 BLOCK_SOUL_SAND_STEP + f Lnet/minecraft/class_3414; field_18316 ENTITY_WANDERING_TRADER_DRINK_MILK + f Lnet/minecraft/class_3414; field_42593 INTENTIONALLY_EMPTY + f Lnet/minecraft/class_3414; field_14875 ENTITY_PAINTING_PLACE + f Lnet/minecraft/class_3414; field_14742 ENTITY_ZOMBIE_BREAK_WOODEN_DOOR + f Lnet/minecraft/class_3414; field_40065 BLOCK_BAMBOO_WOOD_TRAPDOOR_OPEN + f Lnet/minecraft/class_6880; field_15103 ITEM_ARMOR_EQUIP_DIAMOND + f Lnet/minecraft/class_3414; field_40062 BLOCK_BAMBOO_WOOD_DOOR_CLOSE + f Lnet/minecraft/class_3414; field_42592 BLOCK_PINK_PETALS_STEP + f Lnet/minecraft/class_3414; field_42591 BLOCK_PINK_PETALS_PLACE + f Lnet/minecraft/class_3414; field_40063 BLOCK_BAMBOO_WOOD_DOOR_OPEN + f Lnet/minecraft/class_3414; field_40060 BLOCK_BAMBOO_WOOD_PLACE + f Lnet/minecraft/class_3414; field_42590 BLOCK_PINK_PETALS_HIT + f Lnet/minecraft/class_3414; field_40061 BLOCK_BAMBOO_WOOD_STEP + f Lnet/minecraft/class_3414; field_26981 BLOCK_AMETHYST_BLOCK_FALL + f Lnet/minecraft/class_6880$class_6883; field_44700 MUSIC_DISC_RELIC + f Lnet/minecraft/class_3414; field_26982 BLOCK_AMETHYST_BLOCK_HIT + f Lnet/minecraft/class_3414; field_14619 BLOCK_PUMPKIN_CARVE + f Lnet/minecraft/class_3414; field_14618 ENTITY_TURTLE_DEATH_BABY + f Lnet/minecraft/class_3414; field_26980 BLOCK_AMETHYST_BLOCK_CHIME + f Lnet/minecraft/class_3414; field_28037 BLOCK_POINTED_DRIPSTONE_DRIP_WATER_INTO_CAULDRON + f Lnet/minecraft/class_3414; field_28036 BLOCK_POINTED_DRIPSTONE_DRIP_LAVA_INTO_CAULDRON + f Lnet/minecraft/class_3414; field_28035 BLOCK_POINTED_DRIPSTONE_DRIP_WATER + f Lnet/minecraft/class_3414; field_28034 BLOCK_POINTED_DRIPSTONE_DRIP_LAVA + f Lnet/minecraft/class_3414; field_28033 BLOCK_POINTED_DRIPSTONE_LAND + f Lnet/minecraft/class_3414; field_28032 BLOCK_POINTED_DRIPSTONE_FALL + f Lnet/minecraft/class_3414; field_28031 BLOCK_POINTED_DRIPSTONE_HIT + f Lnet/minecraft/class_3414; field_28030 BLOCK_POINTED_DRIPSTONE_PLACE + f Lnet/minecraft/class_3414; field_14886 ENTITY_BOAT_PADDLE_LAND + f Lnet/minecraft/class_3414; field_14753 ENTITY_DROWNED_SHOOT + f Lnet/minecraft/class_3414; field_14620 ENTITY_SLIME_HURT_SMALL + f Lnet/minecraft/class_3414; field_14885 ENTITY_PARROT_IMITATE_STRAY + f Lnet/minecraft/class_3414; field_38830 ENTITY_WARDEN_SONIC_BOOM + f Lnet/minecraft/class_3414; field_38831 ENTITY_WARDEN_SONIC_CHARGE + f Lnet/minecraft/class_3414; field_14884 ENTITY_LLAMA_EAT + f Lnet/minecraft/class_3414; field_14751 BLOCK_SHULKER_BOX_CLOSE + f Lnet/minecraft/class_3414; field_14750 ENTITY_PIG_HURT + f Lnet/minecraft/class_3414; field_14882 ENTITY_FIREWORK_ROCKET_TWINKLE_FAR + f Lnet/minecraft/class_3414; field_14881 ENTITY_DOLPHIN_AMBIENT_WATER + f Lnet/minecraft/class_3414; field_42579 BLOCK_DECORATED_POT_HIT + f Lnet/minecraft/class_3414; field_28039 BLOCK_DRIPSTONE_BLOCK_STEP + f Lnet/minecraft/class_3414; field_14880 ENTITY_GUARDIAN_ATTACK + f Lnet/minecraft/class_3414; field_42578 BLOCK_DECORATED_POT_FALL + f Lnet/minecraft/class_3414; field_28038 BLOCK_DRIPSTONE_BLOCK_BREAK + f Lnet/minecraft/class_3414; field_42577 BLOCK_DECORATED_POT_BREAK + f Lnet/minecraft/class_3414; field_40059 BLOCK_BAMBOO_WOOD_HIT + f Lnet/minecraft/class_3414; field_14629 BLOCK_BAMBOO_SAPLING_BREAK + f Lnet/minecraft/class_3414; field_42589 BLOCK_PINK_PETALS_FALL + f Lnet/minecraft/class_3414; field_42588 BLOCK_PINK_PETALS_BREAK + f Lnet/minecraft/class_3414; field_40058 BLOCK_BAMBOO_WOOD_FALL + f Lnet/minecraft/class_3414; field_14628 BLOCK_WOOL_HIT + f Lnet/minecraft/class_3414; field_42587 BLOCK_SUSPICIOUS_SAND_FALL + f Lnet/minecraft/class_3414; field_14627 ENTITY_EXPERIENCE_ORB_PICKUP + f Lnet/minecraft/class_3414; field_42586 BLOCK_SUSPICIOUS_SAND_HIT + f Lnet/minecraft/class_3414; field_14758 ENTITY_GUARDIAN_HURT_LAND + f Lnet/minecraft/class_3414; field_42585 BLOCK_SUSPICIOUS_SAND_PLACE + f Lnet/minecraft/class_3414; field_14625 ENTITY_PLAYER_ATTACK_WEAK + f Lnet/minecraft/class_3414; field_40057 BLOCK_BAMBOO_WOOD_BREAK + f Lnet/minecraft/class_3414; field_42584 BLOCK_SUSPICIOUS_SAND_STEP + f Lnet/minecraft/class_3414; field_14757 ENTITY_ENDER_PEARL_THROW + f Lnet/minecraft/class_3414; field_42583 BLOCK_SUSPICIOUS_SAND_BREAK + f Lnet/minecraft/class_3414; field_14889 ENTITY_MAGMA_CUBE_DEATH_SMALL + f Lnet/minecraft/class_3414; field_14756 AMBIENT_UNDERWATER_ENTER + f Lnet/minecraft/class_3414; field_14623 ENTITY_PLAYER_HURT_ON_FIRE + f Lnet/minecraft/class_3414; field_42582 BLOCK_DECORATED_POT_SHATTER + f Lnet/minecraft/class_3414; field_14888 ENTITY_PUFFER_FISH_DEATH + f Lnet/minecraft/class_3414; field_14754 ENTITY_HOSTILE_SMALL_FALL + f Lnet/minecraft/class_3414; field_42581 BLOCK_DECORATED_POT_PLACE + f Lnet/minecraft/class_3414; field_14621 ENTITY_ZOMBIE_STEP + f Lnet/minecraft/class_3414; field_14887 ENTITY_DOLPHIN_SPLASH + f Lnet/minecraft/class_3414; field_47212 ENTITY_PARROT_IMITATE_BREEZE + f Lnet/minecraft/class_3414; field_28295 ITEM_BUCKET_FILL_AXOLOTL + f Lnet/minecraft/class_3414; field_42580 BLOCK_DECORATED_POT_STEP + f Lnet/minecraft/class_3414; field_28294 ITEM_BUCKET_EMPTY_AXOLOTL + f Lnet/minecraft/class_3414; field_47210 BLOCK_TRIAL_SPAWNER_CLOSE_SHUTTER + f Lnet/minecraft/class_3414; field_28293 ENTITY_AXOLOTL_SWIM + f Lnet/minecraft/class_6880$class_6883; field_14759 MUSIC_DISC_WAIT + f Lnet/minecraft/class_3414; field_47211 BLOCK_TRIAL_SPAWNER_EJECT_ITEM + f Lnet/minecraft/class_3414; field_28292 ENTITY_AXOLOTL_SPLASH + f Lnet/minecraft/class_3414; field_28291 ENTITY_AXOLOTL_IDLE_WATER + f Lnet/minecraft/class_6880$class_6883; field_14624 BLOCK_NOTE_BLOCK_BASS + f Lnet/minecraft/class_3414; field_28290 ENTITY_AXOLOTL_IDLE_AIR + f Lnet/minecraft/class_6880$class_6883; field_14622 BLOCK_NOTE_BLOCK_PLING + f Lnet/minecraft/class_6880$class_6883; field_14755 MUSIC_CREDITS + f Lnet/minecraft/class_3414; field_17614 ENTITY_PLAYER_HURT_SWEET_BERRY_BUSH + f Lnet/minecraft/class_3414; field_17747 ENTITY_WANDERING_TRADER_AMBIENT + f Lnet/minecraft/class_3414; field_15217 BLOCK_STONE_PRESSURE_PLATE_CLICK_ON + f Lnet/minecraft/class_3414; field_17746 BLOCK_LANTERN_FALL + f Lnet/minecraft/class_3414; field_17613 ITEM_NETHER_WART_PLANT + f Lnet/minecraft/class_3414; field_17616 BLOCK_SWEET_BERRY_BUSH_PLACE + f Lnet/minecraft/class_3414; field_17749 ENTITY_WANDERING_TRADER_HURT + f Lnet/minecraft/class_3414; field_15219 ENTITY_CHICKEN_EGG + f Lnet/minecraft/class_3414; field_17615 BLOCK_SWEET_BERRY_BUSH_BREAK + f Lnet/minecraft/class_3414; field_17748 ENTITY_WANDERING_TRADER_DEATH + f Lnet/minecraft/class_3414; field_18813 ENTITY_PARROT_IMITATE_GUARDIAN + f Lnet/minecraft/class_6880$class_6883; field_22459 AMBIENT_SOUL_SAND_VALLEY_MOOD + f Lnet/minecraft/class_3414; field_17618 BLOCK_SMOKER_SMOKE + f Lnet/minecraft/class_3414; field_18816 ENTITY_PARROT_IMITATE_RAVAGER + f Lnet/minecraft/class_3414; field_17617 BLOCK_SWEET_BERRY_BUSH_PICK_BERRIES + f Lnet/minecraft/class_3414; field_18815 ENTITY_PARROT_IMITATE_PILLAGER + f Lnet/minecraft/class_6880$class_6883; field_22455 AMBIENT_NETHER_WASTES_LOOP + f Lnet/minecraft/class_3414; field_48802 BLOCK_VAULT_FALL + f Lnet/minecraft/class_3414; field_15210 ENTITY_ENDER_EYE_DEATH + f Lnet/minecraft/class_6880$class_6883; field_22456 AMBIENT_NETHER_WASTES_MOOD + f Lnet/minecraft/class_3414; field_15211 BLOCK_GRAVEL_BREAK + f Lnet/minecraft/class_6880$class_6883; field_22457 AMBIENT_SOUL_SAND_VALLEY_ADDITIONS + f Lnet/minecraft/class_6880$class_6883; field_15239 ITEM_SHIELD_BREAK + f Lnet/minecraft/class_3414; field_48800 BLOCK_VAULT_DEACTIVATE + f Lnet/minecraft/class_3414; field_61199 BLOCK_SHELF_PLACE_ITEM + f Lnet/minecraft/class_3414; field_15212 ENTITY_SQUID_HURT + f Lnet/minecraft/class_6880$class_6883; field_22458 AMBIENT_SOUL_SAND_VALLEY_LOOP + f Lnet/minecraft/class_3414; field_48801 BLOCK_VAULT_EJECT_ITEM + f Lnet/minecraft/class_3414; field_17743 BLOCK_LANTERN_PLACE + f Lnet/minecraft/class_6880$class_6883; field_22451 AMBIENT_CRIMSON_FOREST_ADDITIONS + f Lnet/minecraft/class_3414; field_17610 BLOCK_CROP_BREAK + f Lnet/minecraft/class_3414; field_15213 ITEM_TRIDENT_HIT + f Lnet/minecraft/class_6880$class_6883; field_22452 AMBIENT_CRIMSON_FOREST_LOOP + f Lnet/minecraft/class_6880$class_6883; field_63231 ITEM_ARMOR_UNEQUIP_NAUTILUS + f Lnet/minecraft/class_3414; field_15214 ENTITY_WITHER_SKELETON_AMBIENT + f Lnet/minecraft/class_3414; field_17742 BLOCK_LANTERN_HIT + f Lnet/minecraft/class_3414; field_17612 BLOCK_NETHER_WART_BREAK + f Lnet/minecraft/class_3414; field_17745 BLOCK_LANTERN_BREAK + f Lnet/minecraft/class_6880$class_6883; field_22453 AMBIENT_CRIMSON_FOREST_MOOD + f Lnet/minecraft/class_6880$class_6883; field_63230 ITEM_ARMOR_EQUIP_NAUTILUS + f Lnet/minecraft/class_3414; field_15215 BLOCK_WOOD_BREAK + f Lnet/minecraft/class_3414; field_17611 ITEM_CROP_PLANT + f Lnet/minecraft/class_3414; field_17744 BLOCK_LANTERN_STEP + f Lnet/minecraft/class_6880$class_6883; field_22454 AMBIENT_NETHER_WASTES_ADDITIONS + f Lnet/minecraft/class_3414; field_15216 ENTITY_DOLPHIN_HURT + f Lnet/minecraft/class_3414; field_15220 ENTITY_PARROT_IMITATE_ZOMBIE + f Lnet/minecraft/class_3414; field_15229 ENTITY_SHULKER_HURT + f Lnet/minecraft/class_3414; field_46651 BLOCK_HANGING_SIGN_WAXED_INTERACT_FAIL + f Lnet/minecraft/class_3414; field_46650 BLOCK_DECORATED_POT_INSERT_FAIL + f Lnet/minecraft/class_3414; field_47722 ITEM_ARMOR_UNEQUIP_WOLF + f Lnet/minecraft/class_3414; field_38369 ENTITY_ALLAY_HURT + f Lnet/minecraft/class_3414; field_47720 ENTITY_ARMADILLO_BRUSH + f Lnet/minecraft/class_3414; field_15221 BLOCK_SAND_HIT + f Lnet/minecraft/class_6880$class_6883; field_60853 ITEM_HORSE_ARMOR_UNEQUIP + f Lnet/minecraft/class_3414; field_47725 ENTITY_BREEZE_DEFLECT + f Lnet/minecraft/class_3414; field_17751 ENTITY_WANDERING_TRADER_TRADE + f Lnet/minecraft/class_6880$class_6883; field_60852 ITEM_SADDLE_UNEQUIP + f Lnet/minecraft/class_3414; field_15222 ENTITY_GENERIC_EXTINGUISH_FIRE + f Lnet/minecraft/class_3414; field_17750 ENTITY_WANDERING_TRADER_NO + f Lnet/minecraft/class_3414; field_15223 ENTITY_ILLUSIONER_HURT + f Lnet/minecraft/class_3414; field_47723 ENTITY_BREEZE_WHIRL + f Lnet/minecraft/class_3414; field_47724 ENTITY_BREEZE_CHARGE + f Lnet/minecraft/class_3414; field_17752 ENTITY_WANDERING_TRADER_YES + f Lnet/minecraft/class_3414; field_15224 ENTITY_ARROW_HIT_PLAYER + f Lnet/minecraft/class_6880$class_6883; field_60857 ITEM_LLAMA_CARPET_UNEQUIP + f Lnet/minecraft/class_3414; field_15225 ENTITY_VILLAGER_DEATH + f Lnet/minecraft/class_3414; field_59992 ITEM_SHEARS_SNIP + f Lnet/minecraft/class_3414; field_15226 BLOCK_WOOL_PLACE + f Lnet/minecraft/class_3414; field_15227 BLOCK_BAMBOO_SAPLING_HIT + f Lnet/minecraft/class_3414; field_15228 BLOCK_PISTON_CONTRACT + f Lnet/minecraft/class_3414; field_60854 ITEM_LEAD_UNTIED + f Lnet/minecraft/class_3414; field_38370 ENTITY_ALLAY_ITEM_GIVEN + f Lnet/minecraft/class_3414; field_38371 ENTITY_ALLAY_ITEM_TAKEN + f Lnet/minecraft/class_3414; field_15230 ENTITY_ENDERMITE_DEATH + f Lnet/minecraft/class_3414; field_15231 ENTITY_GHAST_SHOOT + f Lnet/minecraft/class_3414; field_60855 ITEM_LEAD_TIED + f Lnet/minecraft/class_3414; field_15232 ENTITY_GUARDIAN_DEATH_LAND + f Lnet/minecraft/class_3414; field_60856 ITEM_LEAD_BREAK + f Lnet/minecraft/class_6880; field_14684 ITEM_ARMOR_EQUIP_TURTLE + f Lnet/minecraft/class_3414; field_15108 ENTITY_SKELETON_HORSE_GALLOP_WATER + f Lnet/minecraft/class_3414; field_16439 ENTITY_CAT_EAT + f Lnet/minecraft/class_3414; field_15109 ENTITY_TURTLE_EGG_CRACK + f Lnet/minecraft/class_3414; field_15233 ENTITY_IRON_GOLEM_STEP + f Lnet/minecraft/class_3414; field_15100 BLOCK_METAL_PRESSURE_PLATE_CLICK_OFF + f Lnet/minecraft/class_3414; field_61177 ENTITY_COPPER_GOLEM_WEATHERED_HURT + f Lnet/minecraft/class_3414; field_15234 ENTITY_PARROT_DEATH + f Lnet/minecraft/class_3414; field_15101 ENTITY_DOLPHIN_DEATH + f Lnet/minecraft/class_3414; field_61179 ENTITY_COPPER_GOLEM_OXIDIZED_STEP + f Lnet/minecraft/class_3414; field_19195 BLOCK_BUBBLE_COLUMN_UPWARDS_INSIDE + f Lnet/minecraft/class_3414; field_61178 ENTITY_COPPER_GOLEM_WEATHERED_DEATH + f Lnet/minecraft/class_3414; field_15102 BLOCK_FIRE_EXTINGUISH + f Lnet/minecraft/class_3414; field_15235 ENTITY_PUFFER_FISH_BLOW_UP + f Lnet/minecraft/class_3414; field_61175 ENTITY_COPPER_GOLEM_DEATH + f Lnet/minecraft/class_3414; field_15236 ENTITY_WITHER_BREAK_BLOCK + f Lnet/minecraft/class_6880$class_6883; field_15129 MUSIC_MENU + f Lnet/minecraft/class_3414; field_61176 ENTITY_COPPER_GOLEM_WEATHERED_STEP + f Lnet/minecraft/class_3414; field_15237 BLOCK_WATER_AMBIENT + f Lnet/minecraft/class_3414; field_15104 ITEM_TRIDENT_HIT_GROUND + f Lnet/minecraft/class_3414; field_19198 BLOCK_LAVA_EXTINGUISH + f Lnet/minecraft/class_3414; field_15238 ENTITY_PHANTOM_SWOOP + f Lnet/minecraft/class_3414; field_15105 BLOCK_WOODEN_BUTTON_CLICK_OFF + f Lnet/minecraft/class_3414; field_19199 BLOCK_REDSTONE_TORCH_BURNOUT + f Lnet/minecraft/class_3414; field_15106 ENTITY_PANDA_EAT + f Lnet/minecraft/class_3414; field_19196 BLOCK_BUBBLE_COLUMN_WHIRLPOOL_INSIDE + f Lnet/minecraft/class_3414; field_16437 ENTITY_OCELOT_AMBIENT + f Lnet/minecraft/class_3414; field_15107 ENTITY_POLAR_BEAR_HURT + f Lnet/minecraft/class_3414; field_19197 BLOCK_END_PORTAL_FRAME_FILL + f Lnet/minecraft/class_3414; field_16438 ENTITY_CAT_BEG_FOR_FOOD + f Lnet/minecraft/class_3414; field_61181 ENTITY_COPPER_GOLEM_OXIDIZED_DEATH + f Lnet/minecraft/class_6880$class_6883; field_14903 BLOCK_NOTE_BLOCK_GUITAR + f Lnet/minecraft/class_3414; field_61182 ENTITY_COPPER_GOLEM_SPIN + f Lnet/minecraft/class_3414; field_15240 ENTITY_RAVAGER_ATTACK + f Lnet/minecraft/class_3414; field_61180 ENTITY_COPPER_GOLEM_OXIDIZED_HURT + f Lnet/minecraft/class_3414; field_61185 ENTITY_COPPER_GOLEM_NO_ITEM_GET + f Lnet/minecraft/class_3414; field_16440 ENTITY_CAT_STRAY_AMBIENT + f Lnet/minecraft/class_3414; field_61186 ENTITY_COPPER_GOLEM_NO_ITEM_NO_GET + f Lnet/minecraft/class_3414; field_15110 ENTITY_COW_STEP + f Lnet/minecraft/class_3414; field_16441 ENTITY_OCELOT_HURT + f Lnet/minecraft/class_3414; field_61183 ENTITY_COPPER_GOLEM_WEATHERED_SPIN + f Lnet/minecraft/class_3414; field_15111 ENTITY_EVOKER_HURT + f Lnet/minecraft/class_3414; field_61184 ENTITY_COPPER_GOLEM_OXIDIZED_SPIN + f Lnet/minecraft/class_3414; field_16442 ENTITY_OCELOT_DEATH + f Lnet/minecraft/class_3414; field_49180 ENTITY_MULE_JUMP + f Lnet/minecraft/class_3414; field_49175 ITEM_WOLF_ARMOR_CRACK + f Lnet/minecraft/class_3414; field_22463 BLOCK_SMITHING_TABLE_USE + f Lnet/minecraft/class_3414; field_49176 ITEM_WOLF_ARMOR_DAMAGE + f Lnet/minecraft/class_6880$class_6883; field_49049 ENTITY_BREEZE_WIND_BURST + f Lnet/minecraft/class_3414; field_49173 BLOCK_WET_SPONGE_DRIES + f Lnet/minecraft/class_3414; field_28566 BLOCK_AZALEA_LEAVES_FALL + f Lnet/minecraft/class_3414; field_49046 ENTITY_ARMADILLO_UNROLL_FINISH + f Lnet/minecraft/class_3414; field_49179 ENTITY_DONKEY_JUMP + f Lnet/minecraft/class_6880$class_6883; field_23798 ENTITY_STRIDER_SADDLE + f Lnet/minecraft/class_3414; field_61189 ENTITY_COPPER_GOLEM_BECOME_STATUE + f Lnet/minecraft/class_3414; field_28565 BLOCK_AZALEA_LEAVES_BREAK + f Lnet/minecraft/class_3414; field_15113 ENTITY_PARROT_IMITATE_EVOKER + f Lnet/minecraft/class_3414; field_49047 ENTITY_ARMADILLO_PEEK + f Lnet/minecraft/class_3414; field_28564 BLOCK_AZALEA_STEP + f Lnet/minecraft/class_3414; field_49177 ITEM_WOLF_ARMOR_REPAIR + f Lnet/minecraft/class_3414; field_61187 ENTITY_COPPER_GOLEM_ITEM_DROP + f Lnet/minecraft/class_3414; field_28563 BLOCK_AZALEA_PLACE + f Lnet/minecraft/class_3414; field_15115 ENTITY_PLAYER_HURT + f Lnet/minecraft/class_3414; field_49178 ENTITY_BOGGED_SHEAR + f Lnet/minecraft/class_3414; field_49045 ENTITY_WIND_CHARGE_THROW + f Lnet/minecraft/class_3414; field_61188 ENTITY_COPPER_GOLEM_ITEM_NO_DROP + f Lnet/minecraft/class_3414; field_28562 BLOCK_AZALEA_HIT + f Lnet/minecraft/class_3414; field_15116 BLOCK_STONE_PRESSURE_PLATE_CLICK_OFF + f Lnet/minecraft/class_6880$class_6883; field_23794 MUSIC_NETHER_NETHER_WASTES + f Lnet/minecraft/class_3414; field_28561 BLOCK_AZALEA_FALL + f Lnet/minecraft/class_6880$class_6883; field_23795 MUSIC_NETHER_SOUL_SAND_VALLEY + f Lnet/minecraft/class_6880$class_6883; field_49044 ENTITY_WIND_CHARGE_WIND_BURST + f Lnet/minecraft/class_3414; field_28560 BLOCK_AZALEA_BREAK + f Lnet/minecraft/class_3414; field_15118 ENTITY_ARMOR_STAND_BREAK + f Lnet/minecraft/class_3414; field_49048 ENTITY_ARMADILLO_UNROLL_START + f Lnet/minecraft/class_6880$class_6883; field_23796 MUSIC_NETHER_CRIMSON_FOREST + f Lnet/minecraft/class_6880$class_6883; field_15114 BLOCK_NOTE_BLOCK_HARP + f Lnet/minecraft/class_6880$class_6883; field_49174 ITEM_WOLF_ARMOR_BREAK + f Lnet/minecraft/class_3414; field_15119 BLOCK_ENCHANTMENT_TABLE_USE + f Lnet/minecraft/class_6880$class_6883; field_61064 MUSIC_DISC_LAVA_CHICKEN + f Lnet/minecraft/class_6880$class_6883; field_23797 MUSIC_NETHER_WARPED_FOREST + f Lnet/minecraft/class_6880$class_6883; field_23790 AMBIENT_BASALT_DELTAS_ADDITIONS + f Lnet/minecraft/class_3414; field_61193 BLOCK_COPPER_GOLEM_STATUE_STEP + f Lnet/minecraft/class_6880$class_6883; field_22460 AMBIENT_WARPED_FOREST_ADDITIONS + f Lnet/minecraft/class_6880$class_6883; field_23791 AMBIENT_BASALT_DELTAS_LOOP + f Lnet/minecraft/class_3414; field_61194 BLOCK_COPPER_GOLEM_STATUE_FALL + f Lnet/minecraft/class_6880$class_6883; field_22461 AMBIENT_WARPED_FOREST_LOOP + f Lnet/minecraft/class_3414; field_61191 BLOCK_COPPER_GOLEM_STATUE_PLACE + f Lnet/minecraft/class_6880$class_6883; field_23792 AMBIENT_BASALT_DELTAS_MOOD + f Lnet/minecraft/class_6880$class_6883; field_22462 AMBIENT_WARPED_FOREST_MOOD + f Lnet/minecraft/class_3414; field_28559 BLOCK_AZALEA_LEAVES_STEP + f Lnet/minecraft/class_3414; field_61192 BLOCK_COPPER_GOLEM_STATUE_HIT + f Lnet/minecraft/class_6880$class_6883; field_23793 MUSIC_NETHER_BASALT_DELTAS + f Lnet/minecraft/class_3414; field_15120 BLOCK_WET_GRASS_BREAK + f Lnet/minecraft/class_3414; field_28558 BLOCK_AZALEA_LEAVES_PLACE + f Lnet/minecraft/class_3414; field_61197 BLOCK_SHELF_MULTI_SWAP + f Lnet/minecraft/class_3414; field_15121 ENTITY_SQUID_SQUIRT + f Lnet/minecraft/class_3414; field_61198 BLOCK_SHELF_PLACE + f Lnet/minecraft/class_3414; field_15122 ENTITY_WITHER_SKELETON_DEATH + f Lnet/minecraft/class_3414; field_61195 ENTITY_COPPER_GOLEM_SPAWN + f Lnet/minecraft/class_3414; field_15123 ENTITY_SALMON_DEATH + f Lnet/minecraft/class_3414; field_61196 BLOCK_SHELF_HIT + f Lnet/minecraft/class_3414; field_61190 BLOCK_COPPER_GOLEM_STATUE_BREAK + f Lnet/minecraft/class_3414; field_23677 ENTITY_ZOGLIN_STEP + f Lnet/minecraft/class_3414; field_28570 BLOCK_BIG_DRIPLEAF_HIT + f Lnet/minecraft/class_3414; field_54990 BLOCK_EYEBLOSSOM_CLOSE_LONG + f Lnet/minecraft/class_3414; field_23676 ENTITY_ZOGLIN_HURT + f Lnet/minecraft/class_3414; field_54991 BLOCK_EYEBLOSSOM_CLOSE + f Lnet/minecraft/class_3414; field_23673 ENTITY_ZOGLIN_ANGRY + f Lnet/minecraft/class_6880$class_6883; field_59654 ENTITY_HAPPY_GHAST_EQUIP + f Lnet/minecraft/class_3414; field_23672 ENTITY_ZOGLIN_AMBIENT + f Lnet/minecraft/class_3414; field_23675 ENTITY_ZOGLIN_DEATH + f Lnet/minecraft/class_6880; field_14581 ITEM_ARMOR_EQUIP_LEATHER + f Lnet/minecraft/class_3414; field_23674 ENTITY_ZOGLIN_ATTACK + f Lnet/minecraft/class_3414; field_48712 ENTITY_ARMADILLO_HURT_REDUCED + f Lnet/minecraft/class_3414; field_15124 ENTITY_SQUID_DEATH + f Lnet/minecraft/class_3414; field_28578 BLOCK_CAVE_VINES_HIT + f Lnet/minecraft/class_3414; field_28577 BLOCK_CAVE_VINES_FALL + f Lnet/minecraft/class_3414; field_15125 BLOCK_BAMBOO_SAPLING_PLACE + f Lnet/minecraft/class_3414; field_63246 ENTITY_NAUTILUS_SWIM + f Lnet/minecraft/class_3414; field_28576 BLOCK_CAVE_VINES_BREAK + f Lnet/minecraft/class_3414; field_15126 ITEM_BUCKET_FILL + f Lnet/minecraft/class_3414; field_63245 ENTITY_NAUTILUS_HURT + f Lnet/minecraft/class_3414; field_28575 BLOCK_CAVE_VINES_PICK_BERRIES + f Lnet/minecraft/class_3414; field_15127 ENTITY_ELDER_GUARDIAN_AMBIENT + f Lnet/minecraft/class_3414; field_63244 ENTITY_NAUTILUS_EAT + f Lnet/minecraft/class_3414; field_28574 BLOCK_CAVE_VINES_STEP + f Lnet/minecraft/class_3414; field_15128 ENTITY_HUSK_CONVERTED_TO_ZOMBIE + f Lnet/minecraft/class_3414; field_28573 BLOCK_CAVE_VINES_PLACE + f Lnet/minecraft/class_3414; field_28572 BLOCK_BIG_DRIPLEAF_STEP + f Lnet/minecraft/class_3414; field_28571 BLOCK_BIG_DRIPLEAF_PLACE + f Lnet/minecraft/class_3414; field_15130 ENTITY_GHAST_WARN + f Lnet/minecraft/class_3414; field_15131 BLOCK_IRON_TRAPDOOR_CLOSE + f Lnet/minecraft/class_3414; field_59636 BLOCK_DRIED_GHAST_BREAK + f Lnet/minecraft/class_3414; field_15132 ENTITY_PARROT_AMBIENT + f Lnet/minecraft/class_3414; field_59637 BLOCK_DRIED_GHAST_STEP + f Lnet/minecraft/class_3414; field_15133 ENTITY_PUFFER_FISH_BLOW_OUT + f Lnet/minecraft/class_3414; field_28569 BLOCK_BIG_DRIPLEAF_FALL + f Lnet/minecraft/class_3414; field_15000 ENTITY_SHULKER_SHOOT + f Lnet/minecraft/class_3414; field_59638 BLOCK_DRIED_GHAST_FALL + f Lnet/minecraft/class_3414; field_15134 BLOCK_PISTON_EXTEND + f Lnet/minecraft/class_3414; field_54989 BLOCK_EYEBLOSSOM_OPEN + f Lnet/minecraft/class_3414; field_28568 BLOCK_BIG_DRIPLEAF_BREAK + f Lnet/minecraft/class_3414; field_15135 ENTITY_SHULKER_HURT_CLOSED + f Lnet/minecraft/class_3414; field_28567 BLOCK_AZALEA_LEAVES_HIT + f Lnet/minecraft/class_3414; field_15002 BLOCK_WOODEN_PRESSURE_PLATE_CLICK_OFF + f Lnet/minecraft/class_3414; field_14904 ENTITY_PLAYER_DEATH + f Lnet/minecraft/class_6880$class_6883; field_15152 ENTITY_GENERIC_EXPLODE + f Lnet/minecraft/class_3414; field_54987 ENTITY_CREAKING_TWITCH + f Lnet/minecraft/class_3414; field_54988 BLOCK_EYEBLOSSOM_OPEN_LONG + f Lnet/minecraft/class_3414; field_14902 ENTITY_TURTLE_EGG_HATCH + f Lnet/minecraft/class_6880$class_6883; field_15150 ITEM_SHIELD_BLOCK + f Lnet/minecraft/class_3414; field_23671 ENTITY_HOGLIN_CONVERTED_TO_ZOMBIFIED + f Lnet/minecraft/class_3414; field_14901 ENTITY_SKELETON_HORSE_JUMP_WATER + f Lnet/minecraft/class_3414; field_14900 ENTITY_MULE_HURT + f Lnet/minecraft/class_3414; field_28582 BLOCK_FLOWERING_AZALEA_FALL + f Lnet/minecraft/class_3414; field_42606 ENTITY_SNIFFER_HAPPY + f Lnet/minecraft/class_3414; field_42605 ENTITY_SNIFFER_DIGGING_STOP + f Lnet/minecraft/class_3414; field_28581 BLOCK_FLOWERING_AZALEA_BREAK + f Lnet/minecraft/class_3414; field_42604 ENTITY_SNIFFER_DIGGING + f Lnet/minecraft/class_3414; field_28580 BLOCK_BIG_DRIPLEAF_TILT_UP + f Lnet/minecraft/class_3414; field_42603 ENTITY_SNIFFER_SEARCHING + f Lnet/minecraft/class_3414; field_42602 ENTITY_SNIFFER_SNIFFING + f Lnet/minecraft/class_3414; field_14908 ENTITY_EVOKER_PREPARE_ATTACK + f Lnet/minecraft/class_3414; field_42601 ENTITY_SNIFFER_SCENTING + f Lnet/minecraft/class_3414; field_14907 ENTITY_CREEPER_DEATH + f Lnet/minecraft/class_3414; field_42600 ENTITY_SNIFFER_DROP_SEED + f Lnet/minecraft/class_3414; field_14906 BLOCK_BAMBOO_FALL + f Lnet/minecraft/class_3414; field_14905 ENTITY_ZOMBIE_VILLAGER_CURE + f Lnet/minecraft/class_3414; field_15003 ENTITY_COD_DEATH + f Lnet/minecraft/class_3414; field_15136 ENTITY_WITHER_DEATH + f Lnet/minecraft/class_3414; field_15004 ENTITY_PUFFER_FISH_FLOP + f Lnet/minecraft/class_3414; field_24629 ENTITY_DONKEY_EAT + f Lnet/minecraft/class_3414; field_15137 ENTITY_ENDERMITE_AMBIENT + f Lnet/minecraft/class_3414; field_28589 BLOCK_HANGING_ROOTS_PLACE + f Lnet/minecraft/class_3414; field_28588 BLOCK_HANGING_ROOTS_HIT + f Lnet/minecraft/class_3414; field_15005 ENTITY_MAGMA_CUBE_HURT_SMALL + f Lnet/minecraft/class_3414; field_15138 ENTITY_GUARDIAN_DEATH + f Lnet/minecraft/class_3414; field_28587 BLOCK_HANGING_ROOTS_FALL + f Lnet/minecraft/class_3414; field_15006 BLOCK_FURNACE_FIRE_CRACKLE + f Lnet/minecraft/class_3414; field_15139 ENTITY_VILLAGER_HURT + f Lnet/minecraft/class_3414; field_59640 BLOCK_DRIED_GHAST_AMBIENT + f Lnet/minecraft/class_3414; field_28586 BLOCK_HANGING_ROOTS_BREAK + f Lnet/minecraft/class_3414; field_15007 ENTITY_RAVAGER_HURT + f Lnet/minecraft/class_3414; field_59641 BLOCK_DRIED_GHAST_AMBIENT_WATER + f Lnet/minecraft/class_3414; field_28585 BLOCK_FLOWERING_AZALEA_STEP + f Lnet/minecraft/class_3414; field_15008 ENTITY_VILLAGER_NO + f Lnet/minecraft/class_3414; field_59642 BLOCK_DRIED_GHAST_PLACE + f Lnet/minecraft/class_3414; field_15009 ENTITY_BAT_AMBIENT + f Lnet/minecraft/class_3414; field_28584 BLOCK_FLOWERING_AZALEA_PLACE + f Lnet/minecraft/class_3414; field_59643 BLOCK_DRIED_GHAST_PLACE_IN_WATER + f Lnet/minecraft/class_3414; field_28583 BLOCK_FLOWERING_AZALEA_HIT + f Lnet/minecraft/class_3414; field_59644 BLOCK_DRIED_GHAST_TRANSITION + f Lnet/minecraft/class_3414; field_15140 ENTITY_CHICKEN_DEATH + f Lnet/minecraft/class_3414; field_59645 BLOCK_DRY_GRASS_AMBIENT + f Lnet/minecraft/class_6880$class_6883; field_15015 UI_BUTTON_CLICK + f Lnet/minecraft/class_3414; field_59646 ENTITY_GHASTLING_AMBIENT + f Lnet/minecraft/class_3414; field_15142 BLOCK_METAL_FALL + f Lnet/minecraft/class_3414; field_59647 ENTITY_GHASTLING_DEATH + f Lnet/minecraft/class_3414; field_15010 ITEM_BUCKET_EMPTY_LAVA + f Lnet/minecraft/class_3414; field_59648 ENTITY_GHASTLING_HURT + f Lnet/minecraft/class_3414; field_15144 BLOCK_SAND_PLACE + f Lnet/minecraft/class_3414; field_59649 ENTITY_GHASTLING_SPAWN + f Lnet/minecraft/class_3414; field_15145 ITEM_FLINTANDSTEEL_USE + f Lnet/minecraft/class_3414; field_15012 ENTITY_EGG_THROW + f Lnet/minecraft/class_3414; field_15146 ENTITY_RAVAGER_DEATH + f Lnet/minecraft/class_3414; field_15013 ITEM_FIRECHARGE_USE + f Lnet/minecraft/class_6880$class_6883; field_15141 ENTITY_HORSE_ARMOR + f Lnet/minecraft/class_3414; field_28579 BLOCK_BIG_DRIPLEAF_TILT_DOWN + f Lnet/minecraft/class_3414; field_15147 ENTITY_RABBIT_ATTACK + f Lnet/minecraft/class_3414; field_15014 ENTITY_SLIME_HURT + f Lnet/minecraft/class_3414; field_14915 ENTITY_SHULKER_TELEPORT + f Lnet/minecraft/class_3414; field_14914 ENTITY_PLAYER_ATTACK_NODAMAGE + f Lnet/minecraft/class_3414; field_14913 ENTITY_DROWNED_SWIM + f Lnet/minecraft/class_3414; field_14912 ITEM_BUCKET_EMPTY_FISH + f Lnet/minecraft/class_3414; field_14911 ENTITY_BAT_DEATH + f Lnet/minecraft/class_3414; field_14910 ENTITY_SPLASH_POTION_THROW + f Lnet/minecraft/class_3414; field_28594 BLOCK_MOSS_CARPET_PLACE + f Lnet/minecraft/class_3414; field_24633 ENTITY_PARROT_IMITATE_ZOGLIN + f Lnet/minecraft/class_3414; field_28593 BLOCK_MOSS_CARPET_HIT + f Lnet/minecraft/class_3414; field_24632 ENTITY_MULE_EAT + f Lnet/minecraft/class_3414; field_28592 BLOCK_MOSS_CARPET_FALL + f Lnet/minecraft/class_3414; field_24635 ENTITY_PARROT_IMITATE_PIGLIN + f Lnet/minecraft/class_3414; field_63229 ENTITY_ZOMBIE_NAUTILUS_SWIM + f Lnet/minecraft/class_3414; field_24634 ENTITY_PARROT_IMITATE_HOGLIN + f Lnet/minecraft/class_3414; field_28591 BLOCK_MOSS_CARPET_BREAK + f Lnet/minecraft/class_3414; field_28590 BLOCK_HANGING_ROOTS_STEP + f Lnet/minecraft/class_3414; field_14919 ENTITY_SLIME_JUMP + f Lnet/minecraft/class_3414; field_14918 ENTITY_COD_FLOP + f Lnet/minecraft/class_3414; field_24631 ENTITY_MULE_ANGRY + f Lnet/minecraft/class_3414; field_14917 ENTITY_FIREWORK_ROCKET_BLAST + f Lnet/minecraft/class_3414; field_24630 ENTITY_FOX_TELEPORT + f Lnet/minecraft/class_3414; field_15148 ENTITY_SLIME_SQUISH_SMALL + f Lnet/minecraft/class_3414; field_63223 ENTITY_ZOMBIE_NAUTILUS_AMBIENT + f Lnet/minecraft/class_3414; field_15016 ENTITY_PLAYER_ATTACK_CRIT + f Lnet/minecraft/class_3414; field_15149 ENTITY_PHANTOM_HURT + f Lnet/minecraft/class_3414; field_63222 ENTITY_ZOMBIE_HORSE_ANGRY + f Lnet/minecraft/class_3414; field_40102 BLOCK_NETHER_WOOD_DOOR_CLOSE + f Lnet/minecraft/class_3414; field_15017 ENTITY_SHULKER_OPEN + f Lnet/minecraft/class_3414; field_28599 BLOCK_MOSS_PLACE + f Lnet/minecraft/class_3414; field_40101 BLOCK_NETHER_WOOD_STEP + f Lnet/minecraft/class_3414; field_15018 ENTITY_GENERIC_SMALL_FALL + f Lnet/minecraft/class_3414; field_28598 BLOCK_MOSS_HIT + f Lnet/minecraft/class_3414; field_40100 BLOCK_NETHER_WOOD_PLACE + f Lnet/minecraft/class_3414; field_15019 ENTITY_ILLUSIONER_PREPARE_BLINDNESS + f Lnet/minecraft/class_3414; field_63228 ENTITY_ZOMBIE_NAUTILUS_HURT + f Lnet/minecraft/class_3414; field_28597 BLOCK_MOSS_FALL + f Lnet/minecraft/class_3414; field_63227 ENTITY_ZOMBIE_NAUTILUS_EAT + f Lnet/minecraft/class_3414; field_28596 BLOCK_MOSS_BREAK + f Lnet/minecraft/class_3414; field_63226 ENTITY_ZOMBIE_NAUTILUS_DEATH + f Lnet/minecraft/class_3414; field_28595 BLOCK_MOSS_CARPET_STEP + f Lnet/minecraft/class_3414; field_63225 ENTITY_ZOMBIE_NAUTILUS_DASH_READY + f Lnet/minecraft/class_3414; field_63224 ENTITY_ZOMBIE_NAUTILUS_DASH + f Lnet/minecraft/class_3414; field_15153 ENTITY_ILLUSIONER_DEATH + f Lnet/minecraft/class_3414; field_15020 WEATHER_RAIN_ABOVE + f Lnet/minecraft/class_3414; field_15154 ENTITY_ZOMBIE_HORSE_AMBIENT + f Lnet/minecraft/class_3414; field_15021 BLOCK_LAVA_AMBIENT + f Lnet/minecraft/class_3414; field_15155 ENTITY_ENDER_EYE_LAUNCH + f Lnet/minecraft/class_3414; field_15022 ENTITY_PARROT_IMITATE_ENDERMITE + f Lnet/minecraft/class_3414; field_15156 BLOCK_GRAVEL_FALL + f Lnet/minecraft/class_3414; field_15023 ENTITY_ZOMBIE_DESTROY_EGG + f Lnet/minecraft/class_6880$class_6883; field_15047 BLOCK_NOTE_BLOCK_BASEDRUM + f Lnet/minecraft/class_3414; field_15157 ENTITY_HOSTILE_BIG_FALL + f Lnet/minecraft/class_3414; field_15024 ENTITY_ENDER_DRAGON_AMBIENT + f Lnet/minecraft/class_3414; field_15158 ENTITY_MULE_DEATH + f Lnet/minecraft/class_3414; field_15025 BLOCK_WET_GRASS_PLACE + f Lnet/minecraft/class_3414; field_15026 BLOCK_STONE_BREAK + f Lnet/minecraft/class_3414; field_15159 ENTITY_PILLAGER_HURT + f Lnet/minecraft/class_3414; field_14928 ENTITY_GENERIC_BIG_FALL + f Lnet/minecraft/class_6880$class_6883; field_14944 MUSIC_DISC_FAR + f Lnet/minecraft/class_3414; field_14927 BLOCK_ANVIL_HIT + f Lnet/minecraft/class_3414; field_14926 ENTITY_ZOMBIFIED_PIGLIN_AMBIENT + f Lnet/minecraft/class_3414; field_14925 ENTITY_PARROT_FLY + f Lnet/minecraft/class_3414; field_14924 BLOCK_METAL_STEP + f Lnet/minecraft/class_3414; field_14923 ENTITY_HORSE_HURT + f Lnet/minecraft/class_3414; field_38059 ENTITY_PARROT_IMITATE_WARDEN + f Lnet/minecraft/class_3414; field_14921 BLOCK_STONE_STEP + f Lnet/minecraft/class_3414; field_15151 ENTITY_ARROW_HIT + f Lnet/minecraft/class_3414; field_14920 UI_LOOM_SELECT_PATTERN + f Lnet/minecraft/class_3414; field_49924 ITEM_MACE_SMASH_GROUND_HEAVY + f Lnet/minecraft/class_3414; field_14929 ENTITY_RAVAGER_STEP + f Lnet/minecraft/class_3414; field_15027 ENTITY_WITHER_SKELETON_HURT + f Lnet/minecraft/class_3414; field_63236 ENTITY_BABY_NAUTILUS_SWIM + f Lnet/minecraft/class_3414; field_63235 ENTITY_BABY_NAUTILUS_HURT + f Lnet/minecraft/class_3414; field_15028 AMBIENT_UNDERWATER_LOOP_ADDITIONS + f Lnet/minecraft/class_3414; field_63234 ENTITY_BABY_NAUTILUS_EAT + f Lnet/minecraft/class_3414; field_15029 ITEM_BOTTLE_FILL_DRAGONBREATH + f Lnet/minecraft/class_3414; field_63233 ENTITY_BABY_NAUTILUS_DEATH + f Lnet/minecraft/class_3414; field_63232 ENTITY_BABY_NAUTILUS_AMBIENT + f Lnet/minecraft/class_3414; field_29543 ITEM_HONEYCOMB_WAX_ON + f Lnet/minecraft/class_3414; field_29542 ITEM_AXE_WAX_OFF + f Lnet/minecraft/class_3414; field_29541 ITEM_AXE_SCRAPE + f Lnet/minecraft/class_3414; field_15164 ENTITY_RABBIT_HURT + f Lnet/minecraft/class_3414; field_15031 ENTITY_LLAMA_HURT + f Lnet/minecraft/class_6880$class_6883; field_15039 MUSIC_DISC_CHIRP + f Lnet/minecraft/class_3414; field_14931 ITEM_TOTEM_USE + f Lnet/minecraft/class_3414; field_15165 BLOCK_SNOW_BREAK + f Lnet/minecraft/class_3414; field_15032 ENTITY_PARROT_IMITATE_VEX + f Lnet/minecraft/class_3414; field_14930 ENTITY_ZOMBIE_DEATH + f Lnet/minecraft/class_3414; field_15166 ENTITY_HORSE_DEATH + f Lnet/minecraft/class_3414; field_15033 ENTITY_SALMON_AMBIENT + f Lnet/minecraft/class_3414; field_15167 BLOCK_METAL_PLACE + f Lnet/minecraft/class_3414; field_15034 ENTITY_SQUID_AMBIENT + f Lnet/minecraft/class_6880$class_6883; field_15169 MUSIC_DISC_MELLOHI + f Lnet/minecraft/class_3414; field_15168 ENTITY_ZOMBIE_VILLAGER_CONVERTED + f Lnet/minecraft/class_3414; field_15035 ENTITY_PANDA_STEP + f Lnet/minecraft/class_3414; field_63243 ENTITY_NAUTILUS_DEATH + f Lnet/minecraft/class_3414; field_15036 ENTITY_POLAR_BEAR_STEP + f Lnet/minecraft/class_3414; field_63242 ENTITY_NAUTILUS_DASH_READY + f Lnet/minecraft/class_3414; field_15037 BLOCK_GRASS_BREAK + f Lnet/minecraft/class_3414; field_63241 ENTITY_NAUTILUS_DASH + f Lnet/minecraft/class_3414; field_15038 ENTITY_ITEM_FRAME_ROTATE_ITEM + f Lnet/minecraft/class_3414; field_63240 ENTITY_NAUTILUS_AMBIENT + f Lnet/minecraft/class_3414; field_54999 BLOCK_RESIN_BREAK + f Lnet/minecraft/class_3414; field_14939 ENTITY_ELDER_GUARDIAN_FLOP + f Lnet/minecraft/class_3414; field_14805 ENTITY_STRAY_HURT + f Lnet/minecraft/class_3414; field_14938 ENTITY_CAT_HISS + f Lnet/minecraft/class_3414; field_54997 BLOCK_RESIN_BRICKS_PLACE + f Lnet/minecraft/class_3414; field_54996 BLOCK_RESIN_BRICKS_HIT + f Lnet/minecraft/class_3414; field_14937 ENTITY_POLAR_BEAR_WARNING + f Lnet/minecraft/class_3414; field_14804 BLOCK_CORAL_BLOCK_BREAK + f Lnet/minecraft/class_3414; field_54998 BLOCK_RESIN_BRICKS_STEP + f Lnet/minecraft/class_3414; field_14803 ENTITY_DRAGON_FIREBALL_EXPLODE + f Lnet/minecraft/class_3414; field_14936 ENTITY_PANDA_CANT_BREED + f Lnet/minecraft/class_3414; field_54994 BLOCK_RESIN_BRICKS_BREAK + f Lnet/minecraft/class_3414; field_15160 ENTITY_SHULKER_DEATH + f Lnet/minecraft/class_3414; field_14802 BLOCK_PORTAL_AMBIENT + f Lnet/minecraft/class_3414; field_14935 BLOCK_CORAL_BLOCK_STEP + f Lnet/minecraft/class_3414; field_15161 BLOCK_BUBBLE_COLUMN_UPWARDS_AMBIENT + f Lnet/minecraft/class_3414; field_54995 BLOCK_RESIN_BRICKS_FALL + f Lnet/minecraft/class_3414; field_14801 ENTITY_PANDA_AGGRESSIVE_AMBIENT + f Lnet/minecraft/class_3414; field_14934 ENTITY_ENDER_DRAGON_SHOOT + f Lnet/minecraft/class_3414; field_15162 ENTITY_DROWNED_DEATH_WATER + f Lnet/minecraft/class_3414; field_54992 BLOCK_EYEBLOSSOM_IDLE + f Lnet/minecraft/class_3414; field_14933 ENTITY_VILLAGER_TRADE + f Lnet/minecraft/class_3414; field_14800 ENTITY_FIREWORK_ROCKET_TWINKLE + f Lnet/minecraft/class_3414; field_15163 ENTITY_WITHER_AMBIENT + f Lnet/minecraft/class_3414; field_15030 ENTITY_DROWNED_AMBIENT + f Lnet/minecraft/class_3414; field_54993 BLOCK_RESIN_STEP + f Lnet/minecraft/class_3414; field_14932 BLOCK_WOODEN_TRAPDOOR_OPEN + m (I)Lnet/minecraft/class_6880$class_6883; method_43517 method_43517 + p 0 variant + m ()Ljava/util/Map; method_68126 createWolfSoundMap + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)Lnet/minecraft/class_6880$class_6883; method_47965 registerReference + p 0 id + p 1 soundId + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_6880$class_6883; method_47964 registerReference + p 0 id + m (Lnet/minecraft/class_10824$class_10825;)Lnet/minecraft/class_10823; method_68125 method_68125 + p 0 type + m ()Lcom/google/common/collect/ImmutableList; method_43516 registerGoatHornSounds + m (Ljava/lang/String;)Lnet/minecraft/class_3414; method_14838 register + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_6880$class_6883; method_47966 registerReference + p 0 id + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)Lnet/minecraft/class_3414; method_47963 register + p 1 soundId + p 0 id + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;F)Lnet/minecraft/class_6880; method_43045 register + p 2 distanceToTravel + p 0 id + p 1 soundId + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_3414; method_47962 register + p 0 id + m (Lnet/minecraft/class_10824$class_10825;)Lnet/minecraft/class_10824$class_10825; method_68127 method_68127 + p 0 type +c net/minecraft/class_3418 net/minecraft/structure/ShiftableStructurePiece + f I field_15243 height + f I field_15244 width + f I field_15241 hPos + f I field_15242 depth + m (Lnet/minecraft/class_1936;I)Z method_38462 adjustToMinHeight + p 1 world + p 2 yOffset + m (Lnet/minecraft/class_3773;IIIIIILnet/minecraft/class_2350;)V + p 7 depth + p 8 orientation + p 5 width + p 6 height + p 3 y + p 4 z + p 1 type + p 2 x + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_3341;I)Z method_14839 adjustToAverageHeight + p 1 world + p 2 boundingBox + p 3 deltaY +c net/minecraft/class_4748 net/minecraft/util/profiler/ProfileLocationInfo + c Profiling information on a specific profiler location. + m ()Lit/unimi/dsi/fastutil/objects/Object2LongMap; method_24274 getCounts + c Returns a marker to count map indicating the times each marker has been\nvisited in the profiler location. + m ()J method_37169 getMaxTime + m ()J method_24273 getVisitCount + c Returns the number of times the profiler location has been visited. + m ()J method_24272 getTotalTime + c Returns the total time spent visiting the profiler location. +c net/minecraft/client/main/Main net/minecraft/client/main/Main + m ([Ljava/lang/String;)V main main + p 0 args + m (Ljoptsimple/OptionSet;Ljoptsimple/OptionSpec;)Ljava/lang/Object; method_11428 getOption + p 0 optionSet + p 1 optionSpec + m (Ljava/lang/String;)Ljava/lang/String; method_53858 unescape + p 0 string + m (Ljoptsimple/OptionSpec;Ljoptsimple/OptionSet;Lorg/slf4j/Logger;)Z method_62730 isUuidValid + p 0 uuidOption + p 1 optionSet + p 2 logger + m (Ljava/lang/Integer;)Ljava/util/OptionalInt; method_21612 toOptional + p 0 i + m (Ljava/lang/String;)Z method_11429 isNotNullOrEmpty + p 0 s + m (Ljoptsimple/OptionSet;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;)Lnet/minecraft/class_542$class_11396; method_71662 getQuickPlayVariant + p 1 worldIdOption + p 0 optionSet + p 3 realmIdOption + p 2 serverAddressOption + m (Ljava/lang/String;)Ljava/util/Optional; method_38752 toOptional + p 0 string + m (Ljoptsimple/OptionSpec;Ljoptsimple/OptionSet;Lorg/slf4j/Logger;)Z method_62729 isUuidSetAndValid + p 1 optionSet + p 0 uuidOption + p 2 logger +c net/minecraft/class_2102 net/minecraft/predicate/entity/EntityEffectPredicate + f Ljava/util/Map; comp_1811 effects + f Lcom/mojang/serialization/Codec; field_45764 CODEC + m ()Ljava/util/Map; comp_1811 effects + m (Ljava/util/Map;)V + p 1 effects + m (Ljava/util/Map;)Z method_9063 test + p 1 effects + m (Lnet/minecraft/class_1297;)Z method_9062 test + p 1 entity + m (Lnet/minecraft/class_1309;)Z method_9067 test + p 1 livingEntity +c net/minecraft/class_2102$class_2103 net/minecraft/predicate/entity/EntityEffectPredicate$EffectData + f Ljava/util/Optional; comp_1815 visible + f Ljava/util/Optional; comp_1814 ambient + f Lcom/mojang/serialization/Codec; field_45766 CODEC + f Lnet/minecraft/class_2096$class_2100; comp_1812 amplifier + f Lnet/minecraft/class_2096$class_2100; comp_1813 duration + m ()Ljava/util/Optional; comp_1815 visible + m ()Ljava/util/Optional; comp_1814 ambient + m (Lnet/minecraft/class_1293;)Z method_9069 test + p 1 statusEffectInstance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53204 method_53204 + p 0 instance + m ()Lnet/minecraft/class_2096$class_2100; comp_1812 amplifier + m ()Lnet/minecraft/class_2096$class_2100; comp_1813 duration + m (Lnet/minecraft/class_2096$class_2100;Lnet/minecraft/class_2096$class_2100;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 amplifier + p 2 duration + p 3 ambient + p 4 visible +c net/minecraft/class_2102$class_8748 net/minecraft/predicate/entity/EntityEffectPredicate$Builder + f Lcom/google/common/collect/ImmutableMap$Builder; field_45765 effects + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_2102$class_8748; method_53201 addEffect + p 1 effect + m ()Ljava/util/Optional; method_53203 build + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2102$class_2103;)Lnet/minecraft/class_2102$class_8748; method_53202 addEffect + p 2 effectData + p 1 effect + m ()Lnet/minecraft/class_2102$class_8748; method_53200 create +c net/minecraft/class_4766 net/minecraft/world/biome/source/MultiNoiseBiomeSource + f Lcom/mojang/serialization/MapCodec; field_24718 CUSTOM_CODEC + c Used to parse a custom biome source, when a preset hasn't been provided. + f Lcom/mojang/datafixers/util/Either; field_34498 biomeEntries + f Lcom/mojang/serialization/MapCodec; field_24719 CODEC + f Lcom/mojang/serialization/MapCodec; field_42985 PRESET_CODEC + f Lcom/mojang/serialization/MapCodec; field_42984 BIOME_CODEC + m (Lnet/minecraft/class_6544$class_6547;)Lnet/minecraft/class_4766; method_49501 create + p 0 biomeEntries + m (Lnet/minecraft/class_6544$class_6547;)Lnet/minecraft/class_6544$class_6547; method_49504 method_49504 + p 0 entries + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_6544$class_6547; method_49505 method_49505 + p 0 parameterListEntry + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_4766; method_49503 create + p 0 biomeEntries + m (Lnet/minecraft/class_4766;)Lcom/mojang/datafixers/util/Either; method_49502 method_49502 + p 0 source + m (Lcom/mojang/datafixers/util/Either;)V + p 1 biomeEntries + m (Lnet/minecraft/class_6544$class_6553;)Lnet/minecraft/class_6880; method_38167 getBiomeAtPoint + p 1 point + m (Lnet/minecraft/class_5321;)Z method_38168 matchesInstance + p 1 parameterList + m ()Lnet/minecraft/class_6544$class_6547; method_49506 getBiomeEntries +c net/minecraft/class_2105 net/minecraft/predicate/NbtPredicate + f Ljava/lang/String; field_60367 SELECTED_ITEM_KEY + f Lorg/slf4j/Logger; field_60368 LOGGER + f Lnet/minecraft/class_2487; comp_1816 nbt + f Lcom/mojang/serialization/Codec; field_45768 CODEC + f Lnet/minecraft/class_9139; field_49244 PACKET_CODEC + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_2520;)Z method_9077 test + p 1 element + m (Lnet/minecraft/class_9473;)Z method_9074 test + p 1 components + m ()Lnet/minecraft/class_2487; comp_1816 nbt + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_2487; method_9076 entityToNbt + p 0 entity + m (Lnet/minecraft/class_1297;)Z method_9072 test + p 1 entity +c net/minecraft/class_4761 net/minecraft/world/attribute/AmbientParticle + f Lcom/mojang/serialization/Codec; field_24675 CODEC + f Lnet/minecraft/class_2394; comp_4993 particle + f F comp_4994 probability + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75271 method_75271 + p 0 instance + m (Lnet/minecraft/class_5819;)Z method_24370 shouldAddParticle + p 1 random + m (Lnet/minecraft/class_4761;)Lnet/minecraft/class_2394; method_75273 method_75273 + p 0 config + m (Lnet/minecraft/class_2394;F)V + p 2 probability + p 1 particle + m (Lnet/minecraft/class_4761;)Ljava/lang/Float; method_75272 method_75272 + p 0 config + m (Lnet/minecraft/class_2394;F)Ljava/util/List; method_75621 of + p 0 particle + p 1 probability + m ()Lnet/minecraft/class_2394; comp_4993 particle + m ()F comp_4994 probability +c net/minecraft/class_4760 net/minecraft/entity/mob/HoglinEntity + f I field_22368 movementCooldownTicks + f I field_30526 MAX_HEALTH + f I field_30532 CONVERSION_TIME + f Z field_57702 DEFAULT_IS_IMMUNE_TO_ZOMBIFICATION + f Lnet/minecraft/class_2940; field_23737 BABY + f Z field_57704 DEFAULT_CANNOT_BE_HUNTED + f I field_23735 timeInOverworld + f I field_30528 ATTACK_KNOCKBACK + f I field_30530 ATTACK_DAMAGE + f Lcom/google/common/collect/ImmutableList; field_22366 MEMORY_MODULE_TYPES + f F field_30531 BABY_ATTACK_DAMAGE + f F field_30529 KNOCKBACK_RESISTANCE + f F field_30527 MOVEMENT_SPEED + f I field_57703 DEFAULT_TIME_IN_OVERWORLD + f Z field_23736 cannotBeHunted + f Lcom/google/common/collect/ImmutableList; field_22365 SENSOR_TYPES + m (I)V method_63662 setTimeInOverworld + p 1 timeInOverworld + m ()V method_26942 zombify + m ()Z method_26946 isImmuneToZombification + m ()Z method_26944 canConvert + m (Z)V method_26948 setImmuneToZombification + p 1 immuneToZombification + m ()Z method_24658 isAdult + m (Lnet/minecraft/class_5136;)V method_63661 method_63661 + p 0 zoglin + m ()Lnet/minecraft/class_5132$class_5133; method_26943 createHoglinAttributes + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_24349 canSpawn + p 0 type + p 1 world + p 2 spawnReason + p 3 pos + p 4 random + m ()Z method_26945 canBeHunted + m (Z)V method_26949 setCannotBeHunted + p 1 cannotBeHunted +c net/minecraft/class_4763 net/minecraft/world/biome/BiomeEffects + f Lnet/minecraft/class_4763$class_5486; comp_5173 grassColorModifier + f Lcom/mojang/serialization/Codec; field_24714 CODEC + f Ljava/util/Optional; comp_5170 foliageColor + f Ljava/util/Optional; comp_5171 dryFoliageColor + f Ljava/util/Optional; comp_5172 grassColor + f I comp_5169 waterColor + m ()Lnet/minecraft/class_4763$class_5486; comp_5173 grassColorModifier + m (ILjava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_4763$class_5486;)V + p 1 waterColor + p 2 foliageColor + p 5 grassColorModifier + p 3 dryFoliageColor + p 4 grassColor + m ()Ljava/util/Optional; comp_5170 foliageColor + m ()Ljava/util/Optional; comp_5171 dryFoliageColor + m ()Ljava/util/Optional; comp_5172 grassColor + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75740 method_75740 + p 0 instance + m ()I comp_5169 waterColor +c net/minecraft/class_4763$class_5486 net/minecraft/world/biome/BiomeEffects$GrassColorModifier + f Ljava/lang/String; field_26430 name + f Lcom/mojang/serialization/Codec; field_26429 CODEC + f Lnet/minecraft/class_4763$class_5486; field_26428 SWAMP + f Lnet/minecraft/class_4763$class_5486; field_26427 DARK_FOREST + f Lnet/minecraft/class_4763$class_5486; field_26426 NONE + m (DDI)I method_30823 getModifiedGrassColor + p 3 z + p 5 color + p 1 x + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()Ljava/lang/String; method_30826 getName +c net/minecraft/class_4763$class_4764 net/minecraft/world/biome/BiomeEffects$Builder + f Ljava/util/Optional; field_57100 dryFoliageColor + f Ljava/util/OptionalInt; field_22072 waterColor + f Ljava/util/Optional; field_26423 foliageColor + f Ljava/util/Optional; field_26424 grassColor + f Lnet/minecraft/class_4763$class_5486; field_26425 grassColorModifier + m (I)Lnet/minecraft/class_4763$class_4764; method_68149 dryFoliageColor + p 1 dryFoliageColor + m ()Lnet/minecraft/class_4763; method_24391 build + m (Lnet/minecraft/class_4763$class_5486;)Lnet/minecraft/class_4763$class_4764; method_30818 grassColorModifier + p 1 grassColorModifier + m (I)Lnet/minecraft/class_4763$class_4764; method_24395 waterColor + p 1 waterColor + m (I)Lnet/minecraft/class_4763$class_4764; method_30822 grassColor + p 1 grassColor + m (I)Lnet/minecraft/class_4763$class_4764; method_30821 foliageColor + p 1 foliageColor +c net/minecraft/class_4758 net/minecraft/util/TickDurationMonitor + f Lorg/slf4j/Logger; field_21967 LOGGER + f Ljava/io/File; field_21971 tickResultsDirectory + f J field_21969 overtime + f Ljava/util/function/LongSupplier; field_21968 timeGetter + f Lnet/minecraft/class_3693; field_21972 profiler + f I field_21970 tickCount + m (Ljava/util/function/LongSupplier;Ljava/lang/String;J)V + p 2 filename + p 1 timeGetter + p 3 overtime + m (Lnet/minecraft/class_3695;Lnet/minecraft/class_4758;)Lnet/minecraft/class_3695; method_24340 tickProfiler + p 1 monitor + p 0 profiler + m (Ljava/lang/String;)Lnet/minecraft/class_4758; method_24341 create + p 0 name + m ()V method_24342 endTick + m ()Lnet/minecraft/class_3695; method_24339 nextProfiler +c net/minecraft/class_4757 net/minecraft/util/profiler/TickTimeTracker + f Ljava/util/function/IntSupplier; field_21963 tickGetter + f Lnet/minecraft/class_3693; field_21964 profiler + f Ljava/util/function/LongSupplier; field_21962 timeGetter + f Ljava/util/function/BooleanSupplier; field_55644 timeoutDisabled + m ()V method_24334 disable + m ()V method_24335 enable + m (Ljava/util/function/LongSupplier;Ljava/util/function/IntSupplier;Ljava/util/function/BooleanSupplier;)V + p 3 timeoutDisabled + p 1 timeGetter + p 2 tickGetter + m ()Z method_24333 isActive + m ()Lnet/minecraft/class_3695; method_24336 getProfiler + m ()Lnet/minecraft/class_3696; method_24337 getResult +c net/minecraft/class_4732 net/minecraft/block/DoubleBlockProperties + m (Lnet/minecraft/class_2591;Ljava/util/function/Function;Ljava/util/function/Function;Lnet/minecraft/class_2769;Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Ljava/util/function/BiPredicate;)Lnet/minecraft/class_4732$class_4734; method_24173 toPropertySource + p 6 pos + p 5 world + p 4 state + p 3 facingProperty + p 2 directionMapper + p 1 typeMapper + p 0 blockEntityType + p 7 fallbackTester +c net/minecraft/class_4732$class_3923 net/minecraft/block/DoubleBlockProperties$PropertyRetriever + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; method_17465 getFromBoth + p 2 second + p 1 first + m ()Ljava/lang/Object; method_24174 getFallback + m (Ljava/lang/Object;)Ljava/lang/Object; method_17464 getFrom + p 1 single +c net/minecraft/class_4732$class_4734 net/minecraft/block/DoubleBlockProperties$PropertySource + m (Lnet/minecraft/class_4732$class_3923;)Ljava/lang/Object; apply apply + p 1 retriever +c net/minecraft/class_4732$class_4734$class_4735 net/minecraft/block/DoubleBlockProperties$PropertySource$Pair + f Ljava/lang/Object; field_21787 first + f Ljava/lang/Object; field_21788 second + m (Ljava/lang/Object;Ljava/lang/Object;)V + p 1 first + p 2 second +c net/minecraft/class_4732$class_4734$class_4736 net/minecraft/block/DoubleBlockProperties$PropertySource$Single + f Ljava/lang/Object; field_21789 single + m (Ljava/lang/Object;)V + p 1 single +c net/minecraft/class_4732$class_4733 net/minecraft/block/DoubleBlockProperties$Type + f Lnet/minecraft/class_4732$class_4733; field_21783 SINGLE + f Lnet/minecraft/class_4732$class_4733; field_21784 FIRST + f Lnet/minecraft/class_4732$class_4733; field_21785 SECOND +c net/minecraft/class_4731 net/minecraft/datafixer/fix/RemovePoiValidTagFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24157 removeValidTag +c net/minecraft/class_4730 net/minecraft/client/util/SpriteIdentifier + f Lnet/minecraft/class_1921; field_21771 layer + f Ljava/util/Comparator; field_40566 COMPARATOR + f Lnet/minecraft/class_2960; field_21770 texture + f Lnet/minecraft/class_2960; field_21769 atlas + m ()Lnet/minecraft/class_2960; method_24147 getTextureId + m ()Lnet/minecraft/class_2960; method_24144 getAtlasId + m (Lnet/minecraft/class_11701;Lnet/minecraft/class_4597;Ljava/util/function/Function;)Lnet/minecraft/class_4588; method_24145 getVertexConsumer + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V + p 2 texture + p 1 atlas + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_11701;Lnet/minecraft/class_4597;Ljava/util/function/Function;ZZ)Lnet/minecraft/class_4588; method_30001 getVertexConsumer + m (Ljava/util/function/Function;)Lnet/minecraft/class_1921; method_24146 getRenderLayer + p 1 layerFactory +c net/minecraft/class_4725 net/minecraft/client/texture/MipmapHelper + f F field_64074 DEFAULT_ALPHA_THRESHOLD + f Ljava/lang/String; field_64234 ITEM_PREFIX + f F field_64075 STRICT_CUTOUT_ALPHA_THRESHOLD + m (IIII)I method_75486 blendDarkenedCutout + p 2 sw + p 3 se + p 0 nw + p 1 ne + m (Lnet/minecraft/class_1011;FF)F method_76765 getOpacityCoverage + p 0 image + p 1 alphaThreshold + p 2 alphaMulti + m (Lnet/minecraft/class_1011;)Z method_45804 hasAlpha + p 0 image + m (Lnet/minecraft/class_1011;FFF)V method_76766 adjustAlphaForTargetCoverage + p 3 cutoffBias + p 2 alphaThreshold + p 1 targetCoverage + p 0 image + m (Lnet/minecraft/class_2960;[Lnet/minecraft/class_1011;ILnet/minecraft/class_12253;F)[Lnet/minecraft/class_1011; method_24102 getMipmapLevelsImages + p 4 cutoffBias + p 3 strategy + p 2 mipmapLevels + p 1 mipmapLevelImages + p 0 id +c com/mojang/blaze3d/textures/GpuTextureView com/mojang/blaze3d/textures/GpuTextureView + m (Lcom/mojang/blaze3d/textures/GpuTexture;II)V + p 1 texture + p 2 baseMipLevel + p 3 mipLevels + m (I)I getHeight getHeight + p 1 mipLevel + m (I)I getWidth getWidth + p 1 mipLevel +c net/minecraft/class_3411 net/minecraft/world/gen/structure/OceanRuinStructure + f F field_37809 largeProbability + f Lcom/mojang/serialization/MapCodec; field_37807 CODEC + f Lnet/minecraft/class_3411$class_3413; field_37808 biomeTemperature + f F field_37810 clusterProbability + m (Lnet/minecraft/class_3195$class_7302;Lnet/minecraft/class_3411$class_3413;FF)V + p 2 biomeTemperature + p 3 largeProbability + p 1 config + p 4 clusterProbability + m (Lnet/minecraft/class_3411;)Ljava/lang/Float; method_41680 method_41680 + p 0 structure + m (Lnet/minecraft/class_3411;)Lnet/minecraft/class_3411$class_3413; method_41681 method_41681 + p 0 structure + m (Lnet/minecraft/class_6626;Lnet/minecraft/class_3195$class_7149;)V method_38700 addPieces + p 2 context + p 1 collector + m (Lnet/minecraft/class_3411;)Ljava/lang/Float; method_41678 method_41678 + p 0 structure + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_6626;)V method_41677 method_41677 + p 2 collector +c net/minecraft/class_3411$class_3413 net/minecraft/world/gen/structure/OceanRuinStructure$BiomeTemperature + f Ljava/lang/String; field_14529 name + f Lcom/mojang/serialization/Codec; field_56682 ENUM_NAME_CODEC + f Lcom/mojang/serialization/Codec; field_24990 CODEC + f Lnet/minecraft/class_3411$class_3413; field_14528 COLD + f Lnet/minecraft/class_3411$class_3413; field_14532 WARM + m ()Ljava/lang/String; method_14831 getName + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_4744 net/minecraft/datafixer/fix/AdvancementRenameFix + f Ljava/util/function/Function; field_21815 renamer + f Ljava/lang/String; field_21814 name + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Ljava/util/function/Function;)V + p 1 outputSchema + p 3 name + p 2 changesType + p 4 renamer +c net/minecraft/class_3414 net/minecraft/sound/SoundEvent + f Lnet/minecraft/class_2960; comp_3319 id + f Lnet/minecraft/class_9139; field_48279 ENTRY_PACKET_CODEC + f Lnet/minecraft/class_9139; field_48278 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_41699 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_41698 CODEC + f Ljava/util/Optional; comp_3320 fixedRange + m ()Lnet/minecraft/class_2960; comp_3319 id + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47957 method_47957 + p 0 instance + m (Lnet/minecraft/class_2960;Ljava/lang/Float;)Lnet/minecraft/class_3414; method_47955 method_47955 + p 1 fixedRangex + m (Lnet/minecraft/class_2960;Ljava/util/Optional;)Lnet/minecraft/class_3414; method_47956 of + p 1 fixedRange + p 0 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_3414; method_47908 of + p 0 id + m (Lnet/minecraft/class_2960;Ljava/util/Optional;)V + p 1 id + p 2 fixedRange + m (Lnet/minecraft/class_2960;F)Lnet/minecraft/class_3414; method_47909 of + p 0 id + p 1 fixedRange + m (F)F method_43044 getDistanceToTravel + p 1 volume + m ()Ljava/util/Optional; comp_3320 fixedRange +c net/minecraft/class_4740 net/minecraft/client/render/FpsSmoother + f [J field_21800 times + f I field_21801 size + f I field_21802 index + m (I)V + p 1 size + m (J)J method_24214 getTargetUsedTime + p 1 time +c net/minecraft/class_3408 net/minecraft/server/rcon/RconListener + f Lorg/slf4j/Logger; field_23966 SERVER_LOGGER + f Ljava/net/ServerSocket; field_14511 listener + f Ljava/util/List; field_14514 clients + f Lnet/minecraft/class_2994; field_23967 server + f Ljava/lang/String; field_14512 password + m (Lnet/minecraft/class_2994;Ljava/net/ServerSocket;Ljava/lang/String;)V + p 1 server + p 2 listener + p 3 password + m (Lnet/minecraft/class_2994;)Lnet/minecraft/class_3408; method_30738 create + p 0 server + m ()V method_14820 removeStoppedClients + m (Ljava/net/ServerSocket;)V method_27176 closeSocket + p 1 socket + m (Lnet/minecraft/class_3389;)Z method_27175 method_27175 + p 0 client +c net/minecraft/class_3409 net/minecraft/structure/OceanRuinGenerator + f [Lnet/minecraft/class_2960; field_14515 BIG_WARM_RUINS + f Lnet/minecraft/class_3491; field_43327 SUSPICIOUS_SAND_PROCESSOR + f [Lnet/minecraft/class_2960; field_14516 BIG_BRICK_RUINS + f Lnet/minecraft/class_3491; field_43328 SUSPICIOUS_GRAVEL_PROCESSOR + f [Lnet/minecraft/class_2960; field_14522 MOSSY_RUINS + f [Lnet/minecraft/class_2960; field_14520 BIG_CRACKED_RUINS + f [Lnet/minecraft/class_2960; field_14521 WARM_RUINS + f [Lnet/minecraft/class_2960; field_14519 CRACKED_RUINS + f [Lnet/minecraft/class_2960; field_14517 BIG_MOSSY_RUINS + f [Lnet/minecraft/class_2960; field_14518 BRICK_RUINS + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_5321;)Lnet/minecraft/class_3491; method_49885 createArchaeologyStructureProcessor + p 2 lootTable + p 1 suspiciousBlock + p 0 baseBlock + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;Lnet/minecraft/class_3411;)V method_14827 addPieces + p 5 structure + p 4 random + p 3 holder + p 2 rotation + p 1 pos + p 0 manager + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Ljava/util/List; method_14821 getRoomPositions + p 0 random + p 1 pos + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_5819;Lnet/minecraft/class_2470;Lnet/minecraft/class_2338;Lnet/minecraft/class_3411;Lnet/minecraft/class_6130;)V method_14825 addCluster + p 5 pieces + p 4 structure + p 3 pos + p 2 rotation + p 1 random + p 0 manager + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_6130;Lnet/minecraft/class_5819;Lnet/minecraft/class_3411;ZF)V method_14822 addPieces + p 3 holder + p 4 random + p 1 pos + p 2 rotation + p 7 integrity + p 5 structure + p 6 large + p 0 manager + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_2960; method_14824 getRandomWarmRuin + p 0 random + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_2960; method_14826 getRandomBigWarmRuin + p 0 random +c net/minecraft/class_3409$class_3410 net/minecraft/structure/OceanRuinGenerator$Piece + f F field_14524 integrity + f Z field_14525 large + f Lnet/minecraft/class_3411$class_3413; field_14527 biomeType + m (Lnet/minecraft/class_2470;FLnet/minecraft/class_3411$class_3413;)Lnet/minecraft/class_3492; method_35446 createPlacementData + p 2 temperature + p 0 rotation + p 1 integrity + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2487;)Lnet/minecraft/class_3409$class_3410; method_49886 fromNbt + p 1 nbt + p 0 structureTemplateManager + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)I method_14829 getGenerationY + p 3 end + p 1 start + p 2 world + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2960;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;FLnet/minecraft/class_3411$class_3413;Z)V + p 7 large + p 6 biomeType + p 5 integrity + p 4 rotation + p 3 pos + p 2 template + p 1 structureTemplateManager + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2487;Lnet/minecraft/class_2470;FLnet/minecraft/class_3411$class_3413;Z)V + p 6 large + p 5 biomeType + p 2 nbt + p 1 holder + p 4 integrity + p 3 rotation +c net/minecraft/class_4739 net/minecraft/block/AbstractChestBlock + f Ljava/util/function/Supplier; field_21796 entityTypeRetriever + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Z)Lnet/minecraft/class_4732$class_4734; method_24167 getBlockEntitySource + p 1 state + p 2 world + p 3 pos + p 4 ignoreBlocked + m (Lnet/minecraft/class_4970$class_2251;Ljava/util/function/Supplier;)V + p 2 entityTypeRetriever + p 1 settings +c net/minecraft/class_4737 net/minecraft/client/render/block/entity/LightmapCoordinatesRetriever + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_2586;)Lit/unimi/dsi/fastutil/ints/Int2IntFunction; method_24192 getFromBoth + m ()Lit/unimi/dsi/fastutil/ints/Int2IntFunction; method_24189 getFallback + m (Lnet/minecraft/class_2586;)Lit/unimi/dsi/fastutil/ints/Int2IntFunction; method_24191 getFrom +c net/minecraft/class_4711 net/minecraft/advancement/criterion/ItemCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)V method_23889 trigger + p 2 pos + p 1 player + p 3 stack + m (Lnet/minecraft/class_47;Lnet/minecraft/class_4711$class_4712;)Z method_23888 method_23888 + p 1 conditions +c net/minecraft/class_4711$class_4712 net/minecraft/advancement/criterion/ItemCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47267 CODEC + f Ljava/util/Optional; comp_2065 location + m (Lnet/minecraft/class_2090$class_2091;Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_175; method_27981 createItemUsedOnBlock + p 0 location + p 1 item + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Lnet/minecraft/class_175; method_70716 createPlacedWithState + p 2 value + p 1 property + p 0 block + m (Lnet/minecraft/class_8944;Lnet/minecraft/class_5258;)V method_55003 method_55003 + p 1 location + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2769;Z)Lnet/minecraft/class_175; method_70718 createPlacedWithState + p 1 property + p 2 value + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_175; method_51710 createPlacedBlock + p 0 block + m (Lnet/minecraft/class_2090$class_2091;Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_175; method_43125 createAllayDropItemOnBlock + p 0 location + p 1 item + m ([Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_175; method_51712 createPlacedBlock + p 0 locationConditions + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2769;I)Lnet/minecraft/class_175; method_70715 createPlacedWithState + p 1 property + p 2 value + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2769;Ljava/lang/String;)Lnet/minecraft/class_175; method_70717 createPlacedWithState + p 2 value + p 0 block + p 1 property + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 2 location + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55004 method_55004 + p 0 instance + m (Lnet/minecraft/class_47;)Z method_51711 test + p 1 location + m (Lnet/minecraft/class_2090$class_2091;Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_4711$class_4712; method_51709 create + p 1 item + p 0 location + m ()Ljava/util/Optional; comp_2065 location +c net/minecraft/class_4706 net/minecraft/util/collection/SortedArraySet + f I field_21564 size + f [Ljava/lang/Object; field_21563 elements + f I field_29860 DEFAULT_CAPACITY + f Ljava/util/Comparator; field_21562 comparator + m ()Ljava/lang/Object; method_34962 last + m (Ljava/lang/Object;)Ljava/lang/Object; method_34961 getIfContains + p 1 object + m ([Ljava/lang/Object;)[Ljava/lang/Object; toArray toArray + p 1 array + m (I)Lnet/minecraft/class_4706; method_23859 create + p 0 initialCapacity + m (Ljava/util/Comparator;I)Lnet/minecraft/class_4706; method_34960 create + p 0 comparator + p 1 initialCapacity + m (I)V method_23870 remove + p 1 index + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ([Ljava/lang/Object;)[Ljava/lang/Object; method_23864 cast + p 0 array + m (I)V method_23868 ensureCapacity + p 1 minCapacity + m (Ljava/lang/Object;)Ljava/lang/Object; method_23862 addAndGet + p 1 object + m (Ljava/lang/Object;)Z add add + p 1 object + m (Ljava/lang/Object;I)V method_23863 add + p 1 object + p 2 index + m (I)Ljava/lang/Object; method_23871 get + p 1 index + m (ILjava/util/Comparator;)V + p 2 comparator + p 1 initialCapacity + m ()Ljava/lang/Object; method_23865 first + m (Ljava/util/Comparator;)Lnet/minecraft/class_4706; method_34959 create + p 0 comparator + m (Ljava/lang/Object;)I method_23869 binarySearch + p 1 object + m (Ljava/lang/Object;)Z remove remove + p 1 object + m ()Lnet/minecraft/class_4706; method_34958 create + m (Ljava/lang/Object;)Z contains contains + p 1 object + m (I)I method_23866 insertionPoint + p 0 binarySearchResult +c net/minecraft/class_4706$class_4707 net/minecraft/util/collection/SortedArraySet$SetIterator + f I field_21566 nextIndex + f I field_21567 lastIndex +c net/minecraft/class_4708 net/minecraft/advancement/criterion/BeeNestDestroyedCriterion + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1799;ILnet/minecraft/class_4708$class_4709;)Z method_23872 method_23872 + p 3 conditions + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_2680;Lnet/minecraft/class_1799;I)V method_23875 trigger + p 2 state + p 1 player + p 4 beeCount + p 3 stack +c net/minecraft/class_4708$class_4709 net/minecraft/advancement/criterion/BeeNestDestroyedCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47217 CODEC + f Ljava/util/Optional; comp_2030 block + f Ljava/util/Optional; comp_2031 item + f Lnet/minecraft/class_2096$class_2100; comp_2032 beesInside + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54940 method_54940 + p 0 instance + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1799;I)Z method_23878 test + p 1 state + p 3 count + p 2 stack + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2073$class_2074;Lnet/minecraft/class_2096$class_2100;)Lnet/minecraft/class_175; method_23879 create + p 2 beeCountRange + p 1 itemPredicateBuilder + p 0 block + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_2096$class_2100;)V + p 4 beeCount + p 3 item + p 1 playerPredicate + p 2 block + m ()Ljava/util/Optional; comp_2031 item + m ()Ljava/util/Optional; comp_2030 block + m ()Lnet/minecraft/class_2096$class_2100; comp_2032 beesInside +c net/minecraft/class_4703 net/minecraft/client/render/debug/BeeDebugRenderer + f I field_32856 BEE_RANGE + f I field_32864 GRAY + f I field_32862 ORANGE + f F field_32859 DEFAULT_DRAWN_STRING_SIZE + f Lnet/minecraft/class_310; field_21532 client + f I field_32855 HIVE_RANGE + f I field_32865 PINK + f I field_32857 TARGET_ENTITY_RANGE + f Ljava/util/UUID; field_21535 targetedEntity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;)Ljava/lang/String; method_23806 getPositionString + p 2 pos + p 1 bee + m (Lnet/minecraft/class_2338;)Ljava/util/Set; method_30110 method_30110 + p 0 flower + m (Lnet/minecraft/class_2338;Ljava/util/Set;Lnet/minecraft/class_1297;Lnet/minecraft/class_12005;)V method_74777 method_74777 + p 3 data + p 2 entity + m (Lnet/minecraft/class_310;)V + p 1 client + m (Ljava/util/Map;Lnet/minecraft/class_1297;Lnet/minecraft/class_12005;)V method_74778 method_74778 + p 2 data + p 1 entity + m (Lnet/minecraft/class_12021;)Ljava/util/Map; method_24084 getBlacklistingBees + p 1 dataStore + m (Lnet/minecraft/class_12021;)V method_23826 drawFlowers + p 1 store + m (Lnet/minecraft/class_2338;Ljava/util/Map;Lnet/minecraft/class_12021;Lnet/minecraft/class_2338;Lnet/minecraft/class_12012;)V method_74776 method_74776 + p 4 hivePos + p 5 debugData + m (Lnet/minecraft/class_2338;)Ljava/util/Set; method_74780 method_74780 + p 0 pos + m (Lnet/minecraft/class_2338;)V method_23808 drawHive + p 0 hivePos + m (Lnet/minecraft/class_2338;Ljava/util/List;)V method_23813 drawHiveBees + p 1 hivePos + p 2 names + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_12005;Lnet/minecraft/class_12011;)V method_23824 drawBee + p 3 goalSelectorDebugData + p 2 debugData + p 1 bee + m (Lnet/minecraft/class_1297;)Z method_23827 isTargeted + p 1 bee + m (Ljava/util/Map;Lnet/minecraft/class_1297;Lnet/minecraft/class_12005;)V method_74779 method_74779 + p 1 entity + p 2 data + m (Lnet/minecraft/class_2338;Ljava/util/Set;)V method_23817 method_23817 + p 1 uuids + p 0 flowerPos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_12012;Ljava/util/Collection;Lnet/minecraft/class_12021;)V method_23821 drawHiveInfo + p 4 store + p 2 debugData + p 3 blacklist + p 1 blockPos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_12021;)Ljava/util/Collection; method_23822 getBeesForHive + p 1 pos + p 2 dataStore + m (Lnet/minecraft/class_2338;)Ljava/util/List; method_30109 method_30109 + p 0 hive + m (Lnet/minecraft/class_12021;Lnet/minecraft/class_1297;Lnet/minecraft/class_12005;)V method_74774 method_74774 + p 3 debugData + p 2 bee + m (Ljava/util/Collection;)Ljava/lang/String; method_23825 toString + p 0 bees + m ()V method_23832 updateTargetedEntity + m (Ljava/lang/String;Lnet/minecraft/class_2338;II)V method_23815 drawString + p 0 string + p 1 blockPos + p 2 yOffset + p 3 color + m (Lnet/minecraft/class_1297;)V method_23804 method_23804 + p 1 entity + m ()Lnet/minecraft/class_4184; method_23828 getCameraPos + m (Lnet/minecraft/class_12021;Ljava/util/Map;Lnet/minecraft/class_1297;Lnet/minecraft/class_12005;)V method_74775 method_74775 + p 2 entity + p 3 data + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Ljava/util/List;)V method_23812 method_23812 + p 2 hivePos + p 3 names + m (Lnet/minecraft/class_12021;)Ljava/util/Map; method_23830 getBeesByHive + p 1 dataStore + m (Lnet/minecraft/class_12021;)V method_23823 render + p 1 store +c net/minecraft/class_4720 net/minecraft/client/render/VertexConsumers + c A utility for combining multiple VertexConsumers into one. + m (Lnet/minecraft/class_4588;Lnet/minecraft/class_4588;)Lnet/minecraft/class_4588; method_24037 union + p 1 second + p 0 first + m (Lnet/minecraft/class_4588;)Lnet/minecraft/class_4588; method_35669 union + p 0 first + m ()Lnet/minecraft/class_4588; method_35668 union + c Generates a union of zero VertexConsumers.\n

\nObviously this is not possible.\n\n@throws IllegalArgumentException + m ([Lnet/minecraft/class_4588;)Lnet/minecraft/class_4588; method_35670 union + p 0 delegates +c net/minecraft/class_4720$class_6189 net/minecraft/client/render/VertexConsumers$Union + f [Lnet/minecraft/class_4588; comp_2847 delegates + m (IILnet/minecraft/class_4588;)V method_60858 method_60858 + p 2 vertexConsumer + m (IILnet/minecraft/class_4588;)V method_60856 method_60856 + p 2 vertexConsumer + m (FFFIFFIIFFFLnet/minecraft/class_4588;)V method_60852 method_60852 + p 11 vertexConsumer + m (IIIILnet/minecraft/class_4588;)V method_60855 method_60855 + p 4 vertexConsumer + m (Ljava/util/function/Consumer;)V method_35677 delegate + p 1 action + m (FFFLnet/minecraft/class_4588;)V method_60853 method_60853 + p 3 vertexConsumer + m (FFLnet/minecraft/class_4588;)V method_60854 method_60854 + p 2 vertexConsumer + m (FLnet/minecraft/class_4588;)V method_75299 method_75299 + p 1 vertexConsumer + m ([Lnet/minecraft/class_4588;)V + p 1 delegates + m (FFFLnet/minecraft/class_4588;)V method_60857 method_60857 + p 3 vertexConsumer + m ()[Lnet/minecraft/class_4588; comp_2847 delegates +c net/minecraft/class_4720$class_4589 net/minecraft/client/render/VertexConsumers$Dual + f Lnet/minecraft/class_4588; field_21686 second + f Lnet/minecraft/class_4588; field_21685 first + m (Lnet/minecraft/class_4588;Lnet/minecraft/class_4588;)V + p 1 first + p 2 second +c net/minecraft/class_4723 net/minecraft/client/render/SpriteTexturedVertexConsumer + f Lnet/minecraft/class_4588; field_21730 delegate + f Lnet/minecraft/class_1058; field_21731 sprite + m (Lnet/minecraft/class_4588;Lnet/minecraft/class_1058;)V + p 1 delegate + p 2 sprite +c net/minecraft/class_4722 net/minecraft/client/render/TexturedRenderLayers + f Lnet/minecraft/class_4730; field_21719 CHRISTMAS_CHEST_RIGHT + f Lnet/minecraft/class_4730; field_51915 DECORATED_POT_SIDE + f Lnet/minecraft/class_10721; field_56360 DECORATED_POT_SPRITE_MAPPER + f Lnet/minecraft/class_4730; field_21723 ENDER_CHEST + f Lnet/minecraft/class_2960; field_21706 BANNER_PATTERNS_ATLAS_TEXTURE + f Lnet/minecraft/class_4730; field_21715 TRAPPED_CHEST_LEFT + f Ljava/util/Map; field_28252 BANNER_PATTERN_TEXTURES + f Lnet/minecraft/class_2960; field_42910 DECORATED_POT_ATLAS_TEXTURE + f [Lnet/minecraft/class_4730; field_21713 BED_TEXTURES + f Ljava/util/Map; field_42911 DECORATED_POT_PATTERN_TEXTURES + f Lnet/minecraft/class_4730; field_61754 OXIDIZED_COPPER_CHEST + f Lnet/minecraft/class_4730; field_61746 COPPER_CHEST_LEFT + f Ljava/util/List; field_21711 COLORED_SHULKER_BOXES_TEXTURES + f Lnet/minecraft/class_4730; field_61750 EXPOSED_COPPER_CHEST_RIGHT + f Lnet/minecraft/class_1921; field_21725 BEDS_RENDER_LAYER + f Lnet/minecraft/class_2960; field_61757 GUI_ATLAS_TEXTURE + f Lnet/minecraft/class_1921; field_21701 ENTITY_CUTOUT + f Lnet/minecraft/class_1921; field_21729 CHEST_RENDER_LAYER + f Lnet/minecraft/class_10721; field_56357 BANNER_PATTERN_SPRITE_MAPPER + f Lnet/minecraft/class_4730; field_21718 CHRISTMAS_CHEST_LEFT + f Lnet/minecraft/class_10721; field_56361 BED_SPRITE_MAPPER + f Lnet/minecraft/class_4730; field_21722 CHEST_RIGHT + f Lnet/minecraft/class_4730; field_21710 SHULKER_TEXTURE_ID + f Lnet/minecraft/class_2960; field_21707 SHIELD_PATTERNS_ATLAS_TEXTURE + f Lnet/minecraft/class_4730; field_21714 TRAPPED_CHEST + f Lnet/minecraft/class_4730; field_61755 OXIDIZED_COPPER_CHEST_LEFT + f Lnet/minecraft/class_4730; field_61751 WEATHERED_COPPER_CHEST + f Lnet/minecraft/class_1921; field_64451 BLOCK_TRANSLUCENT_CULL + f Lnet/minecraft/class_2960; field_63577 CELESTIALS_ATLAS_TEXTURE + f Lnet/minecraft/class_10721; field_56362 SHULKER_SPRITE_MAPPER + f Ljava/util/Map; field_21712 SIGN_TYPE_TEXTURES + f Lnet/minecraft/class_4730; field_61747 COPPER_CHEST_RIGHT + f Lnet/minecraft/class_1921; field_21726 BANNER_PATTERNS_RENDER_LAYER + f Lnet/minecraft/class_10721; field_56358 SHIELD_PATTERN_SPRITE_MAPPER + f Lnet/minecraft/class_2960; field_21704 SHULKER_BOXES_ATLAS_TEXTURE + f Lnet/minecraft/class_4730; field_21721 CHEST_LEFT + f Lnet/minecraft/class_2960; field_21708 SIGNS_ATLAS_TEXTURE + f Lnet/minecraft/class_4730; field_21717 CHRISTMAS_CHEST + f Lnet/minecraft/class_4730; field_49769 BANNER_BASE + f Lnet/minecraft/class_10721; field_56359 CHEST_SPRITE_MAPPER + f Lnet/minecraft/class_1921; field_46070 ARMOR_TRIMS_DECAL_RENDER_LAYER + f Lnet/minecraft/class_4730; field_61756 OXIDIZED_COPPER_CHEST_RIGHT + f Lnet/minecraft/class_1921; field_64452 ITEM_TRANSLUCENT_CULL + f Lnet/minecraft/class_4730; field_21720 CHEST + f Lnet/minecraft/class_4730; field_61752 WEATHERED_COPPER_CHEST_LEFT + f Lnet/minecraft/class_10721; field_56363 SIGN_SPRITE_MAPPER + f Lnet/minecraft/class_2960; field_61759 PAINTINGS_ATLAS_TEXTURE + f Lnet/minecraft/class_10721; field_56355 ITEM_SPRITE_MAPPER + f Lnet/minecraft/class_4730; field_61748 EXPOSED_COPPER_CHEST + f Lnet/minecraft/class_1921; field_21727 SHIELD_PATTERNS_RENDER_LAYER + f Lnet/minecraft/class_4730; field_51914 DECORATED_POT_BASE + f Lnet/minecraft/class_10721; field_61760 ENTITY_SPRITE_MAPPER + f Lnet/minecraft/class_2960; field_21705 BEDS_ATLAS_TEXTURE + f Lnet/minecraft/class_1921; field_42070 ARMOR_TRIMS_RENDER_LAYER + f Ljava/util/Map; field_28253 SHIELD_PATTERN_TEXTURES + f Lnet/minecraft/class_2960; field_21709 CHEST_ATLAS_TEXTURE + f Lnet/minecraft/class_4730; field_21716 TRAPPED_CHEST_RIGHT + f Lnet/minecraft/class_4730; field_61745 COPPER_CHEST + f Ljava/util/Map; field_40515 HANGING_SIGN_TYPE_TEXTURES + f Lnet/minecraft/class_4730; field_61753 WEATHERED_COPPER_CHEST_RIGHT + f Lnet/minecraft/class_1921; field_21724 SHULKER_BOXES_RENDER_LAYER + f Lnet/minecraft/class_2960; field_61758 MAP_DECORATIONS_ATLAS_TEXTURE + f Lnet/minecraft/class_2960; field_42071 ARMOR_TRIMS_ATLAS_TEXTURE + f Lnet/minecraft/class_1921; field_21700 ENTITY_SOLID + f Lnet/minecraft/class_4730; field_49770 SHIELD_BASE + f Lnet/minecraft/class_10721; field_56364 HANGING_SIGN_SPRITE_MAPPER + f Lnet/minecraft/class_1921; field_21728 SIGN_RENDER_LAYER + f Lnet/minecraft/class_10721; field_56356 BLOCK_SPRITE_MAPPER + f Lnet/minecraft/class_4730; field_61749 EXPOSED_COPPER_CHEST_LEFT + m ()Lnet/minecraft/class_1921; method_24070 getShulkerBoxes + m ()Lnet/minecraft/class_1921; method_24067 getShieldPatterns + m (Lnet/minecraft/class_11959$class_11960;Lnet/minecraft/class_2745;)Lnet/minecraft/class_4730; method_24062 getChestTextureId + p 0 variant + p 1 type + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_4730; method_65532 getShulkerBoxTextureId + p 0 color + m (Lnet/minecraft/class_4719;)Lnet/minecraft/class_4730; method_45782 createHangingSignTextureId + p 0 type + m ()Lnet/minecraft/class_1921; method_24059 getBannerPatterns + m (Lnet/minecraft/class_4719;)Lnet/minecraft/class_4730; method_33082 getSignTextureId + p 0 signType + m (Z)Lnet/minecraft/class_1921; method_48480 getArmorTrims + p 0 decal + m ()Lnet/minecraft/class_1921; method_24071 getSign + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_4730; method_65531 createBedTextureId + p 0 color + m (Lnet/minecraft/class_4719;)Lnet/minecraft/class_4730; method_24064 createSignTextureId + p 0 type + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_4730; method_65527 getBedTextureId + p 0 color + m ()Lnet/minecraft/class_1921; method_24072 getChest + m (Lnet/minecraft/class_4719;)Lnet/minecraft/class_4730; method_45781 getHangingSignTextureId + p 0 signType + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_4730; method_33081 getBannerPatternTextureId + p 0 pattern + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_2960; method_65533 createShulkerId + p 0 color + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_4730; method_65534 createShulkerBoxTextureId + p 0 color + m ()Lnet/minecraft/class_1921; method_24073 getEntitySolid + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_2960; method_65529 createColorId + p 0 color + m ()Lnet/minecraft/class_1921; method_24069 getBeds + m ()Lnet/minecraft/class_1921; method_76545 getBlockTranslucentCull + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_4730; method_60576 method_60576 + p 0 pattern + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_4730; method_49341 getDecoratedPotPatternTextureId + p 0 potPatternKey + m ()Lnet/minecraft/class_1921; method_29382 getItemTranslucentCull + m ()Lnet/minecraft/class_1921; method_45783 getHangingSign + m ()Lnet/minecraft/class_1921; method_24074 getEntityCutout + m (Lnet/minecraft/class_2745;Lnet/minecraft/class_4730;Lnet/minecraft/class_4730;Lnet/minecraft/class_4730;)Lnet/minecraft/class_4730; method_24063 getChestTextureId + p 0 type + p 2 left + p 1 single + p 3 right + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_4730; method_33083 getShieldPatternTextureId + p 0 pattern +c net/minecraft/class_4718 net/minecraft/client/util/GlException + m (Ljava/lang/String;)V + p 1 message + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 2 cause + p 1 message +c net/minecraft/class_4717 net/minecraft/client/gui/screen/ChatInputSuggestor + f Ljava/util/regex/Pattern; field_21596 WHITESPACE_PATTERN + f Lcom/mojang/brigadier/ParseResults; field_21610 parse + f Z field_21605 chatScreenSized + f Z field_21613 windowActive + f Z field_21601 slashOptional + f I field_21608 x + f Z field_46191 canLeave + f I field_21606 color + f I field_21604 maxSuggestionSize + f Lnet/minecraft/class_2583; field_25886 INFO_STYLE + f Ljava/util/List; field_21607 messages + f Ljava/util/List; field_25887 HIGHLIGHT_STYLES + f Lnet/minecraft/class_310; field_21597 client + f Z field_21602 suggestingWhenEmpty + f Ljava/util/concurrent/CompletableFuture; field_21611 pendingSuggestions + f Z field_21614 completingSuggestions + f Lnet/minecraft/class_342; field_21599 textField + f I field_21609 width + f Lnet/minecraft/class_437; field_21598 owner + f Lnet/minecraft/class_4717$class_464; field_21612 window + f I field_21603 inWindowIndexOffset + f Lnet/minecraft/class_327; field_21600 textRenderer + f Lnet/minecraft/class_2583; field_25885 ERROR_STYLE + m (Lnet/minecraft/class_310;Lnet/minecraft/class_437;Lnet/minecraft/class_342;Lnet/minecraft/class_327;ZZIIZI)V + p 2 owner + p 3 textField + p 1 client + p 10 color + p 8 maxSuggestionSize + p 9 chatScreenSized + p 6 suggestingWhenEmpty + p 7 inWindowIndexOffset + p 4 textRenderer + p 5 slashOptional + m (Lcom/mojang/brigadier/suggestion/Suggestions;)Ljava/util/List; method_30104 sortSuggestions + p 1 suggestions + m (Lnet/minecraft/class_332;II)Z method_44933 tryRenderWindow + p 2 mouseX + p 1 context + p 3 mouseY + m (Ljava/lang/String;I)Lnet/minecraft/class_5481; method_23931 provideRenderText + p 1 original + p 2 firstCharacterIndex + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_23936 getSuggestionSuffix + p 1 suggestion + p 0 original + m ()V method_23937 showCommandSuggestions + m (Z)V method_53869 setCanLeave + p 1 canLeave + m ()Z method_53867 isOpen + m ()Lnet/minecraft/class_2561; method_53868 getSuggestionUsageNarrationText + m (Lnet/minecraft/class_124;)Z method_23929 showUsages + p 1 formatting + m (D)Z method_23921 mouseScrolled + p 1 amount + m (Ljava/lang/String;)I method_23930 getStartOfCurrentWord + p 0 input + m (Lnet/minecraft/class_11909;)Z method_23922 mouseClicked + p 1 click + m (Z)V method_23920 show + p 1 narrateFirstSuggestion + m (Lnet/minecraft/class_11908;)Z method_23924 keyPressed + p 1 input + m (Lcom/mojang/brigadier/exceptions/CommandSyntaxException;)Lnet/minecraft/class_5481; method_30505 formatException + p 0 exception + m (Lnet/minecraft/class_332;)V method_44932 renderMessages + p 1 context + m (Lcom/mojang/brigadier/ParseResults;Ljava/lang/String;I)Lnet/minecraft/class_5481; method_23925 highlight + p 1 original + p 2 firstCharacterIndex + p 0 parse + m ()V method_23934 refresh + m ()V method_44931 clearWindow + m (Z)V method_23933 setWindowActive + p 1 windowActive + m (Lnet/minecraft/class_332;II)V method_23923 render + p 3 mouseY + p 2 mouseX + p 1 context + m ()Lnet/minecraft/class_2561; method_23958 getNarration +c net/minecraft/class_4717$class_464 net/minecraft/client/gui/screen/ChatInputSuggestor$SuggestionWindow + f Ljava/lang/String; field_2768 typedText + f I field_2766 selection + f Lnet/minecraft/class_241; field_2767 mouse + f I field_2769 inWindowIndex + f Lnet/minecraft/class_768; field_2771 area + f Z field_2765 completed + f Ljava/util/List; field_25709 suggestions + f I field_21630 lastNarrationIndex + m ()V method_2375 complete + m (I)V method_2371 scroll + p 1 offset + m (Lnet/minecraft/class_332;II)V method_2373 render + p 2 mouseX + p 3 mouseY + p 1 context + m (D)Z method_2370 mouseScrolled + p 1 amount + m (II)Z method_2372 mouseClicked + p 1 x + p 2 y + m ()Lnet/minecraft/class_2561; method_23960 getNarration + m (Lnet/minecraft/class_11908;)Z method_2377 keyPressed + p 1 input + m (Lnet/minecraft/class_4717;IIILjava/util/List;Z)V + p 4 width + p 5 suggestions + p 2 x + p 3 y + p 6 narrateFirstSuggestion + m (I)V method_2374 select + p 1 index +c net/minecraft/class_4719 net/minecraft/block/WoodType + f Lnet/minecraft/class_4719; field_37657 MANGROVE + f Lnet/minecraft/class_4719; field_54795 PALE_OAK + f Ljava/lang/String; comp_1299 name + f Lnet/minecraft/class_4719; field_22183 CRIMSON + f Lnet/minecraft/class_4719; field_22184 WARPED + f Ljava/util/Map; field_46536 VALUES + f Lnet/minecraft/class_4719; field_21676 OAK + f Lnet/minecraft/class_4719; field_21677 SPRUCE + f Lnet/minecraft/class_4719; field_21678 BIRCH + f Lnet/minecraft/class_4719; field_21679 ACACIA + f Lnet/minecraft/class_4719; field_21680 JUNGLE + f Lnet/minecraft/class_4719; field_40350 BAMBOO + f Lnet/minecraft/class_4719; field_21681 DARK_OAK + f Lcom/mojang/serialization/Codec; field_46535 CODEC + f Lnet/minecraft/class_4719; field_42837 CHERRY + f Lnet/minecraft/class_8177; comp_1300 setType + f Lnet/minecraft/class_3414; comp_1303 fenceGateClose + f Lnet/minecraft/class_3414; comp_1304 fenceGateOpen + f Lnet/minecraft/class_2498; comp_1302 hangingSignSoundType + f Lnet/minecraft/class_2498; comp_1301 soundType + m ()Ljava/lang/String; comp_1299 name + m (Lnet/minecraft/class_4719;)Lnet/minecraft/class_4719; method_24027 register + p 0 type + m ()Ljava/util/stream/Stream; method_24026 stream + m (Ljava/lang/String;Lnet/minecraft/class_8177;)V + p 1 name + p 2 setType + m ()Lnet/minecraft/class_2498; comp_1301 soundType + m ()Lnet/minecraft/class_2498; comp_1302 hangingSignSoundType + m ()Lnet/minecraft/class_3414; comp_1304 fenceGateOpen + m ()Lnet/minecraft/class_3414; comp_1303 fenceGateClose + m ()Lnet/minecraft/class_8177; comp_1300 setType + m (Ljava/lang/String;Lnet/minecraft/class_8177;Lnet/minecraft/class_2498;Lnet/minecraft/class_2498;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;)V + p 1 name + p 2 setType + p 3 soundType + p 4 hangingSignSoundType + p 5 fenceGateClose + p 6 fenceGateOpen +c net/minecraft/class_4713 net/minecraft/advancement/criterion/SlideDownBlockCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_2680;)V method_23909 trigger + p 2 state + p 1 player + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4713$class_4714;)Z method_23906 method_23906 + p 1 conditions +c net/minecraft/class_4713$class_4714 net/minecraft/advancement/criterion/SlideDownBlockCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47335 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2091 block + f Ljava/util/Optional; comp_2092 state + m (Lnet/minecraft/class_2680;)Z method_23913 test + p 1 state + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_4559;)Ljava/util/Optional; method_55128 method_55128 + p 1 state + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_175; method_23912 create + p 0 block + m (Lnet/minecraft/class_4713$class_4714;Lnet/minecraft/class_6880;)Ljava/util/Optional; method_55127 method_55127 + p 1 block + m (Lnet/minecraft/class_4713$class_4714;)Lcom/mojang/serialization/DataResult; method_55126 validate + p 0 conditions + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 3 state + p 2 block + m (Lnet/minecraft/class_6880;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_55129 method_55129 + p 1 property + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55125 method_55125 + p 0 instance + m ()Ljava/util/Optional; comp_2092 state + m ()Ljava/util/Optional; comp_2091 block +c net/minecraft/class_4715 net/minecraft/world/gen/feature/NoOpFeature +c net/minecraft/class_2195 net/minecraft/block/AttachedStemBlock + f Lnet/minecraft/class_2754; field_9873 FACING + f Lnet/minecraft/class_5321; field_46260 stemBlock + f Lnet/minecraft/class_5321; field_27095 pickBlockItem + f Lnet/minecraft/class_5321; field_9875 gourdBlock + f Lcom/mojang/serialization/MapCodec; field_46259 CODEC + f Ljava/util/Map; field_9874 SHAPES_BY_DIRECTION + m (Lnet/minecraft/class_2195;)Lnet/minecraft/class_5321; method_53975 method_53975 + p 0 block + m (Lnet/minecraft/class_2195;)Lnet/minecraft/class_5321; method_53974 method_53974 + p 0 block + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lnet/minecraft/class_4970$class_2251;)V + p 4 settings + p 3 pickBlockItem + p 2 gourdBlock + p 1 stemBlock + m (Lnet/minecraft/class_2195;)Lnet/minecraft/class_5321; method_53976 method_53976 + p 0 block + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53973 method_53973 + p 0 instance +c net/minecraft/class_2196 net/minecraft/command/argument/MessageArgumentType + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_51482 MESSAGE_TOO_LONG_EXCEPTION + f Ljava/util/Collection; field_9876 EXAMPLES + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Lnet/minecraft/class_2196$class_2197; method_61182 parse + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Ljava/util/function/Consumer;)V method_45562 getSignedMessage + p 1 name + p 2 callback + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_7471;)Ljava/util/concurrent/CompletableFuture; method_45563 filterText + p 0 source + p 1 message + m (Ljava/util/function/Consumer;Lnet/minecraft/class_2168;Lnet/minecraft/class_7471;)V method_45569 chainUnsigned + p 2 message + p 0 callback + p 1 source + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Ljava/lang/Object; parse parse + p 2 source + p 1 reader + m (Ljava/util/function/Consumer;Lnet/minecraft/class_2168;Lnet/minecraft/class_7471;)V method_45566 chain + p 1 source + p 2 message + p 0 callback + m (Lnet/minecraft/class_7471;Lnet/minecraft/class_2561;Ljava/util/function/Consumer;Lnet/minecraft/class_5837;)V method_45568 method_45568 + p 3 filtered + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2561; method_9339 getMessage + p 1 name + p 0 context + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_59836 method_59836 + p 0 length + p 1 maxLength + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2196$class_2197; method_9338 parse + m ()Lnet/minecraft/class_2196; method_9340 message +c net/minecraft/class_2196$class_2197 net/minecraft/command/argument/MessageArgumentType$MessageFormat + f [Lnet/minecraft/class_2196$class_2198; comp_2654 selectors + f Ljava/lang/String; comp_2653 contents + m (Lnet/minecraft/class_2168;)Lnet/minecraft/class_2561; method_44268 format + p 1 source + m (Ljava/lang/String;[Lnet/minecraft/class_2196$class_2198;)V + p 2 selectors + p 1 contents + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/class_2196$class_2197; method_9342 parse + p 1 allowAtSelectors + p 0 reader + m (Lnet/minecraft/class_2168;Z)Lnet/minecraft/class_2561; method_9341 format + p 1 source + p 2 canUseSelectors + m ()[Lnet/minecraft/class_2196$class_2198; comp_2654 selectors + m ()Ljava/lang/String; comp_2653 contents +c net/minecraft/class_2196$class_2198 net/minecraft/command/argument/MessageArgumentType$MessageSelector + f I comp_2655 start + f I comp_2656 end + f Lnet/minecraft/class_2300; comp_2657 selector + m (IILnet/minecraft/class_2300;)V + p 1 start + p 2 end + p 3 selector + m (Lnet/minecraft/class_2168;)Lnet/minecraft/class_2561; method_9345 format + p 1 source + m ()Lnet/minecraft/class_2300; comp_2657 selector + m ()I comp_2655 start + m ()I comp_2656 end +c net/minecraft/class_2190 net/minecraft/block/AbstractSkullBlock + f Lnet/minecraft/class_2746; field_46110 POWERED + f Lnet/minecraft/class_2484$class_2485; field_9867 type + m (Lnet/minecraft/class_2484$class_2485;Lnet/minecraft/class_4970$class_2251;)V + p 1 type + p 2 settings + m ()Lnet/minecraft/class_2484$class_2485; method_9327 getSkullType +c net/minecraft/class_2191 net/minecraft/command/argument/GameProfileArgumentType + f Ljava/util/Collection; field_9868 EXAMPLES + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9869 UNKNOWN_PLAYER_EXCEPTION + m (Ljava/lang/String;Lnet/minecraft/class_2168;)Ljava/util/Collection; method_9328 method_9328 + p 1 source + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2191$class_2192; method_61180 parse + m ()Lnet/minecraft/class_2191; method_9329 gameProfile + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Ljava/lang/Object; parse parse + p 1 reader + p 2 source + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/class_2191$class_2192; method_9331 parse + p 1 allowAtSelectors + p 0 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Lnet/minecraft/class_2191$class_2192; method_61181 parse + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; method_9330 getProfileArgument + p 1 name + p 0 context + m (Lnet/minecraft/class_2172;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V method_9332 method_9332 + p 1 builder +c net/minecraft/class_2191$class_2192 net/minecraft/command/argument/GameProfileArgumentType$GameProfileArgument + m (Lnet/minecraft/class_2168;)Ljava/util/Collection; getNames getNames + p 1 source +c net/minecraft/class_2191$class_2193 net/minecraft/command/argument/GameProfileArgumentType$SelectorBacked + f Lnet/minecraft/class_2300; field_9870 selector + m (Lnet/minecraft/class_2300;)V + p 1 selector +c net/minecraft/class_2199 net/minecraft/block/AnvilBlock + f F field_30993 FALLING_BLOCK_ENTITY_DAMAGE_MULTIPLIER + f Ljava/util/Map; field_55730 SHAPES_BY_AXIS + f Lcom/mojang/serialization/MapCodec; field_46258 CODEC + f Lnet/minecraft/class_2754; field_9883 FACING + f Lnet/minecraft/class_2561; field_17349 TITLE + f I field_30994 FALLING_BLOCK_ENTITY_MAX_DAMAGE + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ILnet/minecraft/class_1661;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1703; method_17453 method_17453 + p 4 player + p 3 inventory + p 2 syncId + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_9346 getLandingState + p 0 fallingState +c net/minecraft/class_303 net/minecraft/client/gui/hud/ChatHudLine + f I comp_892 creationTick + f Lnet/minecraft/class_7591; comp_894 indicator + f I field_63831 PADDING + f Lnet/minecraft/class_7469; comp_915 signature + f Lnet/minecraft/class_2561; comp_893 content + m (ILnet/minecraft/class_2561;Lnet/minecraft/class_7469;Lnet/minecraft/class_7591;)V + p 1 creationTick + p 2 content + p 3 signature + p 4 indicator + m ()I comp_892 creationTick + m ()Lnet/minecraft/class_7591; comp_894 indicator + m (Lnet/minecraft/class_327;I)Ljava/util/List; method_75757 breakLines + p 1 textRenderer + p 2 width + m ()Lnet/minecraft/class_7469; comp_915 signature + m ()Lnet/minecraft/class_2561; comp_893 content +c net/minecraft/class_303$class_7590 net/minecraft/client/gui/hud/ChatHudLine$Visible + f Lnet/minecraft/class_7591; comp_897 indicator + f Lnet/minecraft/class_5481; comp_896 content + f I comp_895 addedTime + f Z comp_898 endOfEntry + m (Lnet/minecraft/class_327;)I method_75758 getWidth + p 1 textRenderer + m ()Lnet/minecraft/class_7591; comp_897 indicator + m ()I comp_895 addedTime + m ()Z comp_898 endOfEntry + m ()Lnet/minecraft/class_5481; comp_896 content + m (ILnet/minecraft/class_5481;Lnet/minecraft/class_7591;Z)V + p 1 addedTime + p 2 content + p 3 indicator + p 4 endOfEntry +c net/minecraft/class_2172 net/minecraft/command/CommandSource + f Lcom/google/common/base/CharMatcher; field_55224 SUGGESTION_MATCH_PREFIX + m (Ljava/lang/String;Ljava/lang/String;)Z method_27136 shouldSuggest + c {@return if a candidate should be suggested}\n\n

Returns {@code true} if the {@code remaining} starts with {@code\ncandidate} or contains character matching {@link #SUGGESTION_MATCH_PREFIX}\nfollowed by {@code candidate} + p 1 candidate + p 0 remaining + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/concurrent/CompletableFuture; method_9261 getCompletions + p 1 context + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9270 suggestIdentifiers + p 1 builder + p 0 candidates + m (Ljava/util/stream/Stream;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; method_9271 suggestFromIdentifier + p 3 tooltip + p 2 identifier + p 1 builder + p 0 candidates + m ()Ljava/util/Collection; method_17771 getBlockPositionSuggestions + m ()Ljava/util/Collection; method_9267 getTeamNames + m (Ljava/lang/Iterable;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/Consumer;)V method_9250 forEachMatching + p 2 prefix + p 3 identifier + p 4 action + p 0 candidates + p 1 remaining + m (Ljava/util/stream/Stream;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9257 suggestIdentifiers + p 1 builder + p 0 candidates + m ()Ljava/util/Collection; method_9269 getEntitySuggestions + m ([Ljava/lang/String;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9253 suggestMatching + p 0 candidates + p 1 builder + m (Lnet/minecraft/class_7225;Lnet/minecraft/class_2172$class_7078;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V method_41214 suggestIdentifiers + p 2 suggestedIdType + p 1 registry + p 3 builder + m ()Ljava/util/Collection; method_44750 getChatSuggestions + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lnet/minecraft/class_5321;Lnet/minecraft/class_2172$class_7078;)Ljava/util/concurrent/CompletableFuture; method_71777 listSuggestions + p 3 suggestedIdType + p 2 registryRef + p 1 builder + p 0 context + m ()Ljava/util/stream/Stream; method_9254 getSoundIds + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2172$class_7078;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/concurrent/CompletableFuture; method_41213 listIdSuggestions + p 1 registryRef + p 2 suggestedIdType + p 3 builder + p 4 context + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; method_9258 suggestIdentifiers + p 2 prefix + p 1 builder + p 0 candidates + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_9251 method_9251 + p 0 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_9263 method_9263 + p 0 id + m (Ljava/lang/String;Ljava/util/Collection;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Predicate;)Ljava/util/concurrent/CompletableFuture; method_9252 suggestColumnPositions + p 2 builder + p 3 predicate + p 0 remaining + p 1 candidates + m (Ljava/lang/Iterable;Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/Consumer;)V method_9268 forEachMatching + p 2 identifier + p 1 remaining + p 3 action + p 0 candidates + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; method_9255 suggestFromIdentifier + p 0 candidates + p 1 builder + p 2 identifier + p 3 tooltip + m (Ljava/lang/String;Ljava/lang/String;)Z method_9272 method_9272 + p 1 candidate + m (Ljava/lang/String;Ljava/util/Collection;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Predicate;)Ljava/util/concurrent/CompletableFuture; method_9260 suggestPositions + p 2 builder + p 1 candidates + p 0 remaining + p 3 predicate + m ()Ljava/util/Collection; method_17772 getPositionSuggestions + m (Ljava/util/stream/Stream;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; method_40182 suggestIdentifiers + p 0 candidates + p 1 builder + p 2 prefix + m (Ljava/util/stream/Stream;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9264 suggestMatching + p 1 builder + p 0 candidates + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9265 suggestMatching + p 1 builder + p 0 candidates + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lnet/minecraft/class_2960;)V method_9275 method_9275 + p 1 id + m ()Lnet/minecraft/class_5455; method_30497 getRegistryManager + m ()Ljava/util/Collection; method_9262 getPlayerNames + m ()Lnet/minecraft/class_7699; method_45549 getEnabledFeatures + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;Lnet/minecraft/class_2960;)V method_9266 method_9266 + p 2 id + m ()Ljava/util/Set; method_29310 getWorldKeys + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)V method_9256 method_9256 + p 3 object + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; method_35510 suggestMatching + p 0 candidates + p 3 tooltip + p 1 builder + p 2 suggestionText +c net/minecraft/class_2172$class_2173 net/minecraft/command/CommandSource$RelativePosition + f Lnet/minecraft/class_2172$class_2173; field_9838 ZERO_WORLD + f Ljava/lang/String; field_9836 y + f Lnet/minecraft/class_2172$class_2173; field_9834 ZERO_LOCAL + f Ljava/lang/String; field_9837 z + f Ljava/lang/String; field_9835 x + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 3 z + p 2 y + p 1 x +c net/minecraft/class_2172$class_7078 net/minecraft/command/CommandSource$SuggestedIdType + f Lnet/minecraft/class_2172$class_7078; field_37263 ELEMENTS + f Lnet/minecraft/class_2172$class_7078; field_37264 ALL + f Lnet/minecraft/class_2172$class_7078; field_37262 TAGS + m ()Z method_41215 canSuggestTags + m ()Z method_41216 canSuggestElements +c net/minecraft/class_302 net/minecraft/client/option/HotbarStorage + f Ljava/nio/file/Path; field_1646 file + f I field_32135 STORAGE_ENTRY_COUNT + f Lcom/mojang/datafixers/DataFixer; field_1648 dataFixer + f Lorg/slf4j/Logger; field_1647 LOGGER + f [Lnet/minecraft/class_748; field_1644 entries + f Z field_1645 loaded + m ()V method_1411 load + m (Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;)V + p 1 directory + p 2 dataFixer + m (Ljava/lang/String;)V method_56825 method_56825 + p 0 error + m (I)Lnet/minecraft/class_748; method_1410 getSavedHotbar + p 1 i + m ()V method_1409 save +c net/minecraft/class_301 net/minecraft/client/util/Untracker + f Ljava/lang/invoke/MethodHandle; field_1643 ALLOCATOR_UNTRACK + m (Lorg/lwjgl/system/Pointer;)V method_1406 untrack + p 0 pointer + m (J)V method_1407 untrack + p 0 address +c net/minecraft/class_300 net/minecraft/client/network/DataQueryHandler + f Ljava/util/function/Consumer; field_1642 callback + f I field_1641 expectedTransactionId + f Lnet/minecraft/class_634; field_1640 networkHandler + m (Ljava/util/function/Consumer;)I method_1402 nextQuery + p 1 callback + m (ILjava/util/function/Consumer;)V method_1405 queryEntityNbt + p 2 callback + p 1 entityNetworkId + m (Lnet/minecraft/class_634;)V + p 1 networkHandler + m (ILnet/minecraft/class_2487;)Z method_1404 handleQueryResponse + p 2 nbt + p 1 transactionId + m (Lnet/minecraft/class_2338;Ljava/util/function/Consumer;)V method_1403 queryBlockNbt + p 2 callback + p 1 pos +c net/minecraft/class_2170 net/minecraft/server/command/CommandManager + f Lnet/minecraft/class_12090; field_31838 MODERATORS_CHECK + f Lnet/minecraft/class_12090; field_31840 ADMINS_CHECK + f Lcom/mojang/brigadier/CommandDispatcher; field_9832 dispatcher + f Ljava/lang/String; field_60859 PREFIX + f Ljava/lang/ThreadLocal; field_46823 CURRENT_CONTEXT + f Lnet/minecraft/class_12090; field_31837 ALWAYS_PASS_CHECK + f Lnet/minecraft/class_12090; field_31839 GAMEMASTERS_CHECK + f Lnet/minecraft/class_12090; field_31841 OWNERS_CHECK + f Lnet/minecraft/class_2641$class_11409; field_60672 INSPECTOR + f Lorg/slf4j/Logger; field_9833 LOGGER + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Z method_30853 method_30853 + p 0 type + m (Lnet/minecraft/class_2170$class_5364;Lnet/minecraft/class_7157;)V + p 1 environment + p 2 commandRegistryAccess + m (Lnet/minecraft/class_12096;)Lnet/minecraft/class_2168; method_75745 createSource + p 0 permissions + m (Lnet/minecraft/class_2170$class_2171;)Ljava/util/function/Predicate; method_9238 getCommandValidator + p 0 parser + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/tree/CommandNode;Ljava/lang/Object;Ljava/util/Map;)V method_9239 deepCopyNodes + p 0 root + p 1 newRoot + p 2 source + p 3 nodes + m (Ljava/lang/String;)Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; method_9247 literal + p 0 literal + m ()Lcom/mojang/brigadier/CommandDispatcher; method_9235 getDispatcher + m (Lnet/minecraft/class_2170$class_2171;Ljava/lang/String;)Z method_9240 method_9240 + p 1 string + m (Lcom/mojang/brigadier/ParseResults;Ljava/util/function/UnaryOperator;)Lcom/mojang/brigadier/ParseResults; method_45018 withCommandSource + c {@return {@code parseResults} with {@code sourceMapper} applied to the\ncommand source} + p 0 parseResults + p 1 sourceMapper + m ()V method_30852 checkMissing + m (Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_2168;Lnet/minecraft/class_8854;)V method_54314 method_54314 + p 3 context + m (Lcom/mojang/brigadier/ParseResults;Ljava/lang/String;Lnet/minecraft/class_2168;)Lcom/mojang/brigadier/context/ContextChain; method_54492 checkCommand + p 1 command + p 2 source + p 0 parseResults + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Ljava/lang/String; method_30851 method_30851 + p 0 type + m (Lnet/minecraft/class_12090;)Lnet/minecraft/class_12095; method_71774 requirePermissionLevel + p 0 check + m (Lnet/minecraft/class_2168;Ljava/lang/String;)V method_44252 parseAndExecute + c Parses and executes {@code command}. Unlike {@link #execute} the command can be prefixed\nwith a slash, which is removed before parsing. + p 1 source + p 2 command + m (Ljava/lang/String;Lcom/mojang/brigadier/arguments/ArgumentType;)Lcom/mojang/brigadier/builder/RequiredArgumentBuilder; method_9244 argument + p 1 type + p 0 name + m (Lcom/mojang/brigadier/ParseResults;)V method_54312 throwException + p 0 parse + m (Lcom/mojang/brigadier/ParseResults;Ljava/lang/String;)V method_9249 execute + c Executes {@code command}. The command cannot be prefixed with a slash.\n\n@see #executeWithPrefix(ServerCommandSource, String) + p 1 parseResults + p 2 command + m (Ljava/lang/String;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_54493 method_54493 + p 1 style + m (Lnet/minecraft/class_2168;Ljava/util/function/Consumer;)V method_54313 callWithContext + p 0 commandSource + p 1 callback + m (Lnet/minecraft/class_3222;)V method_9241 sendCommandTree + p 1 player + m (Lcom/mojang/brigadier/CommandDispatcher;Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/tree/CommandNode;Ljava/util/Collection;)V method_41710 method_41710 + p 2 child + p 1 parent + p 4 inputs + p 3 sibling + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_7157; method_46732 createRegistryAccess + p 0 registries + m (Ljava/lang/String;)Ljava/lang/String; method_71971 stripLeadingSlash + p 0 command + m (Lnet/minecraft/class_5250;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_9242 method_9242 + p 1 style + m (Lcom/mojang/brigadier/ParseResults;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_23917 getException + p 0 parse +c net/minecraft/class_2170$2 net/minecraft/server/command/CommandManager$2 + m (Lnet/minecraft/class_7225$class_7226;)Lnet/minecraft/class_7225$class_7226$class_7875; method_56811 createTagCreatingLookup + p 1 original +c net/minecraft/class_2170$1 net/minecraft/server/command/CommandManager$1 + f Lnet/minecraft/class_2168; field_63811 source +c net/minecraft/class_2170$class_5364 net/minecraft/server/command/CommandManager$RegistrationEnvironment + c Describes the environment in which commands are registered. + f Z field_25422 integrated + f Z field_25423 dedicated + f Lnet/minecraft/class_2170$class_5364; field_25419 ALL + f Lnet/minecraft/class_2170$class_5364; field_25420 DEDICATED + f Lnet/minecraft/class_2170$class_5364; field_25421 INTEGRATED + m (Ljava/lang/String;IZZ)V + p 4 dedicated + p 3 integrated +c net/minecraft/class_2170$class_2171 net/minecraft/server/command/CommandManager$CommandParser + m (Lcom/mojang/brigadier/StringReader;)V parse parse + p 1 reader +c net/minecraft/class_304 net/minecraft/client/option/KeyBinding + f Ljava/util/Map; field_1658 KEY_TO_BINDINGS + f Lnet/minecraft/class_304$class_11900; field_1659 category + f I field_1661 timesPressed + f Ljava/lang/String; field_1660 id + f Lnet/minecraft/class_3675$class_306; field_1654 defaultKey + f Ljava/util/Map; field_1657 KEYS_BY_ID + f Lnet/minecraft/class_3675$class_306; field_1655 boundKey + f Z field_1653 pressed + m ()Ljava/lang/String; method_1431 getId + m (Lnet/minecraft/class_304;)V method_74182 method_74182 + p 0 key + m (Lnet/minecraft/class_11909;)Z method_1433 matchesMouse + p 1 click + m ()Z method_1427 isDefault + m ()V method_1437 unpressAll + m ()V method_1425 reset + m (ZLnet/minecraft/class_304;)V method_74180 method_74180 + p 1 key + m ()Lnet/minecraft/class_304$class_11900; method_1423 getCategory + m ()Lnet/minecraft/class_2561; method_16007 getBoundKeyLocalizedText + m (Ljava/lang/String;)Ljava/util/function/Supplier; method_1419 getLocalizedName + p 0 id + m ()Ljava/lang/String; method_1428 getBoundKeyTranslationKey + m (Lnet/minecraft/class_3675$class_306;)V method_1422 setBoundKey + p 1 boundKey + m ()Z method_1415 isUnbound + m (Lnet/minecraft/class_11908;)Z method_1417 matchesKey + p 1 key + m (Ljava/lang/String;Lnet/minecraft/class_3675$class_307;ILnet/minecraft/class_304$class_11900;I)V + p 2 type + p 1 id + p 4 category + p 3 code + m (Lnet/minecraft/class_3675$class_306;)V method_1420 onKeyPressed + p 0 key + m ()Lnet/minecraft/class_3675$class_306; method_1429 getDefaultKey + m ()V method_73359 restoreToggleStates + m (Lnet/minecraft/class_3675$class_306;)V method_74181 registerBinding + p 1 key + m (Lnet/minecraft/class_3675$class_306;Ljava/util/function/Consumer;)V method_74179 forAllKeyBinds + p 0 key + p 1 keyConsumer + m (Ljava/lang/String;)Lnet/minecraft/class_304; method_65807 byId + p 0 id + m ()V method_1424 updatePressedStates + m (Lnet/minecraft/class_304;)Z method_1435 equals + p 1 other + m ()V method_1426 updateKeysByCode + m (Z)V method_23481 setPressed + p 1 pressed + m ()Z method_72701 shouldSetOnGameFocus + m (Ljava/lang/String;ILnet/minecraft/class_304$class_11900;)V + p 1 id + p 2 code + p 3 category + m ()V method_52231 untoggleStickyKeys + m (Lnet/minecraft/class_304;)I method_1430 compareTo + m ()Z method_1434 isPressed + c {@return if the key is being held down}\n\n

Note that if you are continuously calling this method (like every\ntick), it doesn't always catch all key presses. This is because the key\ncan be pressed and released before the next check.\n\n@see #wasPressed() + m (Ljava/lang/Object;)I compareTo compareTo + p 1 other + m (Lnet/minecraft/class_3675$class_306;Z)V method_1416 setKeyPressed + p 0 key + p 1 pressed + m ()Z method_1436 wasPressed + c {@return if the key was pressed}\n\n

A key binding counts the number of times the key is pressed. This\nmethod "consumes" it and returns {@code true} as many times as the key\nis pressed.\n\n

To consume all remaining key presses, while-loop idiom can be used:\n

\n{@code\nwhile(keyBinding.wasPressed()) {\n  // do your action\n}\n}\n
\n\n@see #isPressed()\n@see MC-118107 + m (Lnet/minecraft/class_3675$class_306;)Ljava/util/List; method_74183 method_74183 + p 0 keyx +c net/minecraft/class_304$class_11900 net/minecraft/client/option/KeyBinding$Category + f Ljava/util/List; field_62925 CATEGORIES + f Lnet/minecraft/class_304$class_11900; field_62557 MULTIPLAYER + f Lnet/minecraft/class_304$class_11900; field_62556 MISC + f Lnet/minecraft/class_304$class_11900; field_62559 INVENTORY + f Lnet/minecraft/class_304$class_11900; field_62558 GAMEPLAY + f Lnet/minecraft/class_304$class_11900; field_62555 MOVEMENT + f Lnet/minecraft/class_304$class_11900; field_63465 DEBUG + f Lnet/minecraft/class_304$class_11900; field_62561 CREATIVE + f Lnet/minecraft/class_304$class_11900; field_62562 SPECTATOR + f Lnet/minecraft/class_2960; comp_4879 id + m ()Lnet/minecraft/class_2561; method_74697 getLabel + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_304$class_11900; method_74698 create + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_304$class_11900; method_74699 create + p 0 name + m ()Lnet/minecraft/class_2960; comp_4879 id + m (Lnet/minecraft/class_2960;)V + p 1 id +c net/minecraft/class_2179 net/minecraft/command/argument/NbtCompoundArgumentType + f Ljava/util/Collection; field_9843 EXAMPLES + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2487; method_9286 parse + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2487; method_9285 getNbtCompound + p 1 name + p 0 context + m ()Lnet/minecraft/class_2179; method_9284 nbtCompound + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader +c net/minecraft/class_2177 net/minecraft/command/argument/ColorArgumentType + f Ljava/util/Collection; field_9839 EXAMPLES + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9840 INVALID_COLOR_EXCEPTION + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_124; method_9279 parse + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9278 method_9278 + p 0 color + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_124; method_9277 getColor + p 1 name + p 0 context + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 2 builder + p 1 context + m ()Lnet/minecraft/class_2177; method_9276 color +c net/minecraft/class_2178 net/minecraft/command/argument/TextArgumentType + f Lnet/minecraft/class_10846; field_57829 PARSER + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9842 INVALID_COMPONENT_EXCEPTION + f Ljava/util/Collection; field_9841 EXAMPLES + f Lcom/mojang/serialization/DynamicOps; field_58143 OPS + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2561; method_67414 getTextArgument + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/class_1297;)Lnet/minecraft/class_2561; method_67415 parseTextArgument + p 0 context + p 2 sender + p 1 name + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_2178; method_9281 text + p 0 registryAccess + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9282 method_9282 + p 0 text + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2561; method_67416 parseTextArgument + p 0 context + p 1 name +c net/minecraft/class_314 net/minecraft/recipe/book/RecipeBookCategories + f Lnet/minecraft/class_10355; field_17764 STONECUTTER + f Lnet/minecraft/class_10355; field_17765 CAMPFIRE + f Lnet/minecraft/class_10355; field_25624 SMITHING + f Lnet/minecraft/class_10355; field_1812 FURNACE_MISC + f Lnet/minecraft/class_10355; field_1813 CRAFTING_EQUIPMENT + f Lnet/minecraft/class_10355; field_1810 CRAFTING_MISC + f Lnet/minecraft/class_10355; field_1811 FURNACE_BLOCKS + f Lnet/minecraft/class_10355; field_1806 CRAFTING_BUILDING_BLOCKS + f Lnet/minecraft/class_10355; field_1803 CRAFTING_REDSTONE + f Lnet/minecraft/class_10355; field_1808 FURNACE_FOOD + f Lnet/minecraft/class_10355; field_17111 BLAST_FURNACE_BLOCKS + f Lnet/minecraft/class_10355; field_17112 BLAST_FURNACE_MISC + f Lnet/minecraft/class_10355; field_17114 SMOKER_FOOD + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_10355; method_64983 registerAndGetDefault + p 0 registry + m (Ljava/lang/String;)Lnet/minecraft/class_10355; method_64982 register + p 0 id +c net/minecraft/class_2183 net/minecraft/command/argument/EntityAnchorArgumentType + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9846 INVALID_ANCHOR_EXCEPTION + f Ljava/util/Collection; field_9847 EXAMPLES + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9293 method_9293 + p 0 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2183$class_2184; method_9294 getEntityAnchor + p 1 name + p 0 context + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2183$class_2184; method_9292 parse + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 2 builder + p 1 context + m ()Lnet/minecraft/class_2183; method_9295 entityAnchor +c net/minecraft/class_2183$class_2184 net/minecraft/command/argument/EntityAnchorArgumentType$EntityAnchor + f Ljava/lang/String; field_9849 id + f Ljava/util/function/BiFunction; field_9848 offset + f Ljava/util/Map; field_9852 ANCHORS + f Lnet/minecraft/class_2183$class_2184; field_9851 EYES + f Lnet/minecraft/class_2183$class_2184; field_9853 FEET + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1297;)Lnet/minecraft/class_243; method_9298 method_9298 + p 0 pos + p 1 entity + m (Ljava/lang/String;)Lnet/minecraft/class_2183$class_2184; method_9296 fromId + p 0 id + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1297;)Lnet/minecraft/class_243; method_9300 method_9300 + p 0 pos + p 1 entity + m (Lnet/minecraft/class_2168;)Lnet/minecraft/class_243; method_9299 positionAt + p 1 source + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/BiFunction;)V + p 4 offset + p 3 id + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_243; method_9302 positionAt + p 1 entity + m (Ljava/util/HashMap;)V method_9297 method_9297 + p 0 map +c net/minecraft/class_313 net/minecraft/client/util/Monitor + f J field_1800 handle + f I field_1799 x + f I field_1798 y + f Lnet/minecraft/class_319; field_1802 currentVideoMode + f Ljava/util/List; field_1797 videoModes + m ()Lnet/minecraft/class_319; method_1617 getCurrentVideoMode + m ()V method_1615 populateVideoModes + m ()I method_1621 getVideoModeCount + m ()J method_1622 getHandle + m (I)Lnet/minecraft/class_319; method_1620 getVideoMode + p 1 index + m ()I method_1616 getViewportX + m (Ljava/util/Optional;)Lnet/minecraft/class_319; method_1614 findClosestVideoMode + p 1 videoMode + m ()I method_1618 getViewportY + m (J)V + p 1 handle + m (Lnet/minecraft/class_319;)I method_1619 findClosestVideoModeIndex + p 1 videoMode +c net/minecraft/class_312 net/minecraft/client/Mouse + f D field_1795 x + f Z field_1790 middleButtonClicked + f D field_1787 cursorDeltaY + f I field_61507 lastMouseButton + f Lorg/slf4j/Logger; field_52126 LOGGER + f Lnet/minecraft/class_312$class_12291; field_64192 lastMouseClick + f Lnet/minecraft/class_11910; field_1780 activeButton + f D field_1792 glfwTime + f I field_1796 touchHoldTime + f Z field_1783 cursorLocked + f Z field_1791 leftButtonClicked + f D field_47842 lastTickTime + f D field_1789 cursorDeltaX + f I field_1781 controlLeftClicks + f Z field_1788 rightButtonClicked + f Lnet/minecraft/class_3540; field_1793 cursorXSmoother + f Z field_1784 hasResolutionChanged + f D field_1794 y + f Lnet/minecraft/class_3540; field_1782 cursorYSmoother + f Lnet/minecraft/class_9928; field_52757 scroller + f Lnet/minecraft/class_310; field_1779 client + m ()V method_1612 lockCursor + m (Lnet/minecraft/class_1041;)V method_1607 setup + p 1 window + m (JLnet/minecraft/class_11910;I)V method_1601 onMouseButton + p 3 input + p 4 action + p 1 window + m ()V method_55793 tick + m ()V method_1599 onResolutionChanged + m (JDD)V method_22688 method_22688 + p 3 x + p 1 window + p 5 y + m ()Z method_1608 wasLeftButtonClicked + m (Lnet/minecraft/class_1041;)D method_68883 getScaledY + p 1 window + m (Lnet/minecraft/class_1041;)D method_68879 getScaledX + p 1 window + m (JIJ)V method_29615 method_29615 + p 4 names + p 3 count + p 1 window + m (JLjava/util/List;I)V method_29616 onFilesDropped + p 1 window + p 4 invalidFilesCount + p 3 paths + m ()Z method_35707 wasMiddleButtonClicked + m (Lnet/minecraft/class_310;)V + p 1 client + m (JDD)V method_22685 method_22685 + p 3 offsetX + p 1 window + p 5 offsetY + m (JDD)V method_1598 onMouseScroll + c Called when a mouse is used to scroll. + p 5 vertical + c the vertical scroll distance + p 3 horizontal + c the horizontal scroll distance + p 1 window + c the window handle + m (Lnet/minecraft/class_327;Lnet/minecraft/class_332;)V method_68881 drawScaledPos + p 2 context + p 1 textRenderer + m ()D method_1604 getY + m (JIII)V method_22684 method_22684 + p 1 window + p 3 button + p 4 action + p 5 modifiers + m ()V method_1610 unlockCursor + m (Lnet/minecraft/class_1041;D)D method_68884 scaleY + p 1 y + p 0 window + m (Lnet/minecraft/class_129;Lnet/minecraft/class_1041;)V method_68882 addCrashReportSection + p 2 window + p 1 section + m (Lnet/minecraft/class_11910;Z)Lnet/minecraft/class_11910; method_74190 modifyMouseInput + p 2 pressed + p 1 input + m ()D method_1603 getX + m ()V method_30134 setResolutionChanged + m (JDD)V method_1600 onCursorPos + p 3 x + p 5 y + p 1 window + m ()Z method_1613 isCursorLocked + m (D)V method_1606 updateMouse + p 1 timeDelta + m ()Z method_1609 wasRightButtonClicked + m (Lnet/minecraft/class_1041;D)D method_68880 scaleX + p 1 x + p 0 window +c net/minecraft/class_312$class_12291 net/minecraft/client/Mouse$MouseClickTime + f Lnet/minecraft/class_437; comp_5178 screen + f J comp_5177 time + m ()J comp_5177 time + m ()Lnet/minecraft/class_437; comp_5178 screen + m (JLnet/minecraft/class_437;)V + p 1 time + p 3 screen +c net/minecraft/class_2185 net/minecraft/block/AbstractBannerBlock + f Lnet/minecraft/class_1767; field_9855 color + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 color + m ()Lnet/minecraft/class_1767; method_9303 getColor +c net/minecraft/class_318 net/minecraft/client/util/ScreenshotRecorder + c A screenshot recorder takes screenshots and saves them into tga file format. It also\nholds a few utility methods for other types of screenshots. + f Ljava/lang/String; field_41337 SCREENSHOTS_DIRECTORY + f Lorg/slf4j/Logger; field_1974 LOGGER + m (Ljava/io/File;Lnet/minecraft/class_276;Ljava/util/function/Consumer;)V method_1659 saveScreenshot + p 0 gameDirectory + p 1 framebuffer + p 2 messageReceiver + m (Ljava/io/File;)Ljava/io/File; method_1660 getScreenshotFilename + p 0 directory + m (Lnet/minecraft/class_276;ILjava/util/function/Consumer;)V method_71641 takeScreenshot + p 2 callback + p 1 downscaleFactor + p 0 framebuffer + m (Lnet/minecraft/class_276;Ljava/util/function/Consumer;)V method_1663 takeScreenshot + p 1 callback + p 0 framebuffer + m (Ljava/io/File;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_67805 method_67805 + p 1 style + m (Ljava/io/File;Ljava/lang/String;Ljava/util/function/Consumer;Lnet/minecraft/class_1011;)V method_68157 method_68157 + p 3 image + m (Ljava/io/File;Ljava/lang/String;Lnet/minecraft/class_276;ILjava/util/function/Consumer;)V method_22690 saveScreenshot + p 0 gameDirectory + p 2 framebuffer + p 1 fileName + p 4 messageReceiver + p 3 downscaleFactor +c net/minecraft/class_2181 net/minecraft/command/argument/DimensionArgumentType + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9845 INVALID_DIMENSION_EXCEPTION + f Ljava/util/Collection; field_9844 EXAMPLES + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9290 method_9290 + p 0 id + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_9291 method_9291 + p 0 key + m ()Lnet/minecraft/class_2181; method_9288 dimension + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2960; method_9287 parse + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_3218; method_9289 getDimensionArgument + p 1 name + p 0 context +c net/minecraft/class_315 net/minecraft/client/option/GameOptions + f Lnet/minecraft/class_7172; field_62462 allowCursorChanges + f Lnet/minecraft/class_7172; field_24214 entityDistanceScaling + f Ljava/util/Set; field_1892 enabledPlayerModelParts + f Lnet/minecraft/class_2561; field_39320 ONLY_SHOW_SECURE_CHAT_TOOLTIP + f Lnet/minecraft/class_304; field_26845 socialInteractionsKey + c A key binding for opening {@linkplain net.minecraft.client.gui.screen.multiplayer.SocialInteractionsScreen the social interactions screen}.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_P the P key} by default. + f Lcom/google/gson/reflect/TypeToken; field_1859 STRING_LIST_TYPE + f Ljava/util/List; field_1887 resourcePacks + f Lnet/minecraft/class_304; field_1886 attackKey + c A key binding for attacking an entity or breaking a block.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_MOUSE_BUTTON_LEFT the left mouse button} by default. + f Lnet/minecraft/class_304; field_1874 loadToolbarActivatorKey + c A key binding for loading the hotbar items in {@linkplain net.minecraft.world.GameMode#CREATIVE creative mode}.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_X the X key} by default. + f Lnet/minecraft/class_2561; field_64660 TEXTURE_FILTERING_ANISOTROPIC_TOOLTIP + f Lnet/minecraft/class_2561; field_41335 TELEMETRY_TOOLTIP + f Lnet/minecraft/class_2561; field_38299 HIDE_MATCHED_NAMES_TOOLTIP + f Lnet/minecraft/class_304; field_63469 toggleSpectatorShaderEffectsKey + f Lnet/minecraft/class_7172; field_39321 onlyShowSecureChat + f Lnet/minecraft/class_7172; field_64533 musicToast + f Lnet/minecraft/class_7172; field_1891 bobView + f Lnet/minecraft/class_2561; field_41783 NOTIFICATION_DISPLAY_TIME_TOOLTIP + f Lnet/minecraft/class_2561; field_38298 HOLD_KEY_TEXT + f Lnet/minecraft/class_2561; field_63498 VIGNETTE_TOOLTIP + f Lnet/minecraft/class_7172; field_1896 narrator + f Lnet/minecraft/class_7172; field_1884 enableVsync + f Lnet/minecraft/class_2561; field_61508 SHOW_SUBTITLES_TOOLTIP + f Lnet/minecraft/class_2561; field_38297 TOGGLE_KEY_TEXT + f Lnet/minecraft/class_304; field_63479 debugShowAdvancedTooltipsKey + f Lnet/minecraft/class_7172; field_1873 autoSuggestions + f Ljava/lang/String; field_1883 language + f Lnet/minecraft/class_2561; field_38296 DIRECTIONAL_AUDIO_OFF_TOOLTIP + f Lnet/minecraft/class_7172; field_41336 telemetryOptInExtra + f Lnet/minecraft/class_2561; field_63496 CUTOUT_LEAVES_TOOLTIP + f Lnet/minecraft/class_304; field_63468 toggleGuiKey + f Lnet/minecraft/class_7172; field_41784 notificationDisplayTime + f [Lnet/minecraft/class_304; field_1852 hotbarKeys + c Key bindings for selecting hotbar slots.\nBound to the corresponding number keys (from {@linkplain\norg.lwjgl.glfw.GLFW#GLFW_KEY_1 the 1 key} to {@linkplain\norg.lwjgl.glfw.GLFW#GLFW_KEY_9 the 9 key}) by default. + f Lnet/minecraft/class_7172; field_1870 viewDistance + f Lnet/minecraft/class_7172; field_1882 particles + f Lcom/google/common/base/Splitter; field_1853 COLON_SPLITTER + f Lnet/minecraft/class_2561; field_38295 DIRECTIONAL_AUDIO_ON_TOOLTIP + f Lnet/minecraft/class_304; field_1879 saveToolbarActivatorKey + c A key binding for saving the hotbar items in {@linkplain net.minecraft.world.GameMode#CREATIVE creative mode}.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_C the C key} by default. + f Lnet/minecraft/class_304; field_63489 debugDumpVersionKey + f Lnet/minecraft/class_304; field_1867 sprintKey + c A key binding for sprinting.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_LEFT_CONTROL the left control key} by default. + f Lnet/minecraft/class_304; field_1831 swapHandsKey + c A key binding for swapping the items in the selected slot and the off hand.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_F the F key} by default.\n\n

The selected slot is the slot the mouse is over when in a screen.\nOtherwise, it is the main hand. + f Lnet/minecraft/class_304; field_63477 debugClearChatKey + f Lnet/minecraft/class_7172; field_1895 attackIndicator + f Z field_55851 startedCleanly + f Lnet/minecraft/class_2561; field_38294 ALLOW_SERVER_LISTING_TOOLTIP + f Lnet/minecraft/class_2561; field_63494 WEATHER_RADIUS_TOOLTIP + f Lnet/minecraft/class_304; field_63478 debugShowChunkBordersKey + f Lcom/google/gson/Gson; field_1823 GSON + f Lnet/minecraft/class_304; field_1844 advancementsKey + c A key binding for opening {@linkplain net.minecraft.client.gui.screen.advancement.AdvancementsScreen the advancements screen}.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_L the L key} by default. + f Lnet/minecraft/class_304; field_1832 sneakKey + c A key binding for sneaking.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_LEFT_SHIFT the left shift key} by default. + f Ljava/lang/String; field_34785 EMPTY_STRING + f Lnet/minecraft/class_7172; field_1840 gamma + f Lnet/minecraft/class_2561; field_54812 HIGH_CONTRAST_BLOCK_OUTLINE_TOOLTIP + f Lnet/minecraft/class_2561; field_37879 HIDE_LIGHTNING_FLASHES_TOOLTIP + f Lnet/minecraft/class_2561; field_64659 TEXTURE_FILTERING_RGSS_TOOLTIP + f Lnet/minecraft/class_304; field_63475 debugReloadChunkKey + f Lnet/minecraft/class_2561; field_42114 GLINT_STRENGTH_TOOLTIP + f Lnet/minecraft/class_304; field_63487 debugProfilingKey + f Lnet/minecraft/class_7172; field_1888 entityShadows + f Lnet/minecraft/class_7172; field_1841 ao + f Lnet/minecraft/class_7172; field_32156 monochromeLogo + f Lnet/minecraft/class_7172; field_34959 simulationDistance + f Lnet/minecraft/class_2561; field_38292 DARKNESS_EFFECT_SCALE_TOOLTIP + f Lnet/minecraft/class_7172; field_63495 weatherRadius + f Lnet/minecraft/class_7172; field_54813 highContrastBlockOutline + f Lnet/minecraft/class_2561; field_37878 DARK_MOJANG_STUDIOS_BACKGROUND_COLOR_TOOLTIP + f Lnet/minecraft/class_7172; field_1889 mouseWheelSensitivity + f Lnet/minecraft/class_7172; field_61509 attackToggled + f Lnet/minecraft/class_2561; field_64658 TEXTURE_FILTERING_NONE_TOOLTIP + f Lnet/minecraft/class_7172; field_1865 invertMouseY + f Lnet/minecraft/class_304; field_63476 debugShowHitboxesKey + f Lnet/minecraft/class_7172; field_1877 chatVisibility + f Lnet/minecraft/class_304; field_63488 debugCopyLocationKey + f Lnet/minecraft/class_304; field_1890 chatKey + c A key binding for opening {@linkplain net.minecraft.client.gui.screen.ChatScreen the chat screen}.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_T the T key} by default. + f Lnet/minecraft/class_7172; field_21332 sneakToggled + f Ljava/lang/String; field_1864 lastServer + f Lnet/minecraft/class_2561; field_38291 FOV_EFFECT_SCALE_TOOLTIP + f Lnet/minecraft/class_7172; field_18726 textBackgroundOpacity + f I field_43405 GUI_SCALE_AUTO + f Lnet/minecraft/class_2561; field_42112 GLINT_SPEED_TOOLTIP + f Lnet/minecraft/class_304; field_63485 debugDumpDynamicTexturesKey + f Lnet/minecraft/class_2561; field_38290 SCREEN_EFFECT_SCALE_TOOLTIP + f Lnet/minecraft/class_7172; field_63497 cutoutLeaves + f Lnet/minecraft/class_304; field_63486 debugReloadResourcePacksKey + f Lnet/minecraft/class_7172; field_1820 chatOpacity + f Lnet/minecraft/class_7172; field_64661 textureFiltering + f Lnet/minecraft/class_2561; field_52758 INACTIVITY_FPS_LIMIT_MINIMIZED_TOOLTIP + f Z field_1914 smoothCameraEnabled + f Lnet/minecraft/class_7172; field_63474 preset + f Lnet/minecraft/class_304; field_63471 debugModifierKey + f Lnet/minecraft/class_304; field_63483 debugOptionsKey + f Lnet/minecraft/class_7172; field_26926 hideMatchedNames + f Z field_21840 skipMultiplayerWarning + f Lnet/minecraft/class_7172; field_45987 narratorHotkey + f Lnet/minecraft/class_7172; field_1856 mipmapLevels + f Lnet/minecraft/class_7172; field_1868 guiScale + f Lnet/minecraft/class_7172; field_21333 sprintToggled + f Lnet/minecraft/class_304; field_1881 backKey + c A key binding for moving backward.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_S the S key} by default. + f Lnet/minecraft/class_310; field_1863 client + f Lnet/minecraft/class_7172; field_42113 glintSpeed + f Lnet/minecraft/class_2561; field_49474 MENU_BACKGROUND_BLURRINESS_TOOLTIP + f Lnet/minecraft/class_2561; field_52759 INACTIVITY_FPS_LIMIT_AFK_TOOLTIP + f Lnet/minecraft/class_304; field_63472 debugCrashKey + f Lnet/minecraft/class_304; field_63484 debugFocusPauseKey + f Lnet/minecraft/class_7172; field_63499 vignette + f Lnet/minecraft/class_7172; field_18725 backgroundForChatOnly + f Z field_41785 onboardAccessibility + f Lnet/minecraft/class_7172; field_1857 fullscreen + f Lnet/minecraft/class_304; field_1894 forwardKey + c A key binding for moving forward.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_W the W key} by default. + f Lnet/minecraft/class_7172; field_1830 realmsNotifications + f Lnet/minecraft/class_7172; field_62000 chatDrafts + f I field_1901 glDebugVerbosity + f I field_34784 serverViewDistance + f Lnet/minecraft/class_2561; field_62461 ALLOW_CURSOR_CHANGES_TOOLTIP + f Z field_1815 hideServerAddress + f Lnet/minecraft/class_304; field_63481 debugSpectateKey + f Z field_1827 advancedItemTooltips + f Lnet/minecraft/class_7172; field_1878 biomeBlendRadius + f Lnet/minecraft/class_7172; field_1854 touchscreen + f Lnet/minecraft/class_304; field_1871 pickItemKey + c A key binding for holding an item corresponding to the {@linkplain net.minecraft.entity.Entity#getPickBlockStack() entity}\nor {@linkplain net.minecraft.block.Block#getPickStack(net.minecraft.world.WorldView,\nnet.minecraft.util.math.BlockPos, net.minecraft.block.BlockState) block} the player is looking at.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_MOUSE_BUTTON_MIDDLE the middle mouse button} by default. + f Lnet/minecraft/class_7172; field_42115 glintStrength + f Lnet/minecraft/class_304; field_63470 debugOverlayKey + f Lnet/minecraft/class_304; field_63482 debugSwitchGameModeKey + f Lnet/minecraft/class_7172; field_1843 mouseSensitivity + f Z field_1837 pauseOnLostFocus + f Lnet/minecraft/class_7172; field_52760 inactivityFpsLimit + f [Lnet/minecraft/class_304; field_63493 debugKeys + f Lnet/minecraft/class_304; field_63491 debugFpsChartsKey + f Lnet/minecraft/class_2561; field_42481 DAMAGE_TILT_STRENGTH_TOOLTIP + f Lnet/minecraft/class_7172; field_1848 autoJump + f Lnet/minecraft/class_7172; field_61512 sprintWindow + f Lnet/minecraft/class_304; field_63492 debugNetworkChartsKey + f I field_49475 DEFAULT_MENU_BACKGROUND_BLURRINESS + f Lnet/minecraft/class_304; field_1903 jumpKey + c A key binding for jumping.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_SPACE the space key} by default. + f Lnet/minecraft/class_7172; field_46855 hideSplashTexts + f Lnet/minecraft/class_304; field_63480 debugCopyRecreateCommandKey + f Lnet/minecraft/class_7172; field_1825 chatHeightUnfocused + f Lnet/minecraft/class_2561; field_37882 NEARBY_CHUNK_BUILDER_MODE_TOOLTIP + f Lnet/minecraft/class_7172; field_1910 reducedDebugInfo + f Lnet/minecraft/class_7172; field_61513 invertMouseX + f Lnet/minecraft/class_2561; field_64195 CHUNK_FADE_TOOLTIP + f Lnet/minecraft/class_304; field_60985 quickActionsKey + c A key binding for opening the quick actions dialog, if any exist.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_G the G key} by default. + f Lnet/minecraft/class_304; field_1904 useKey + c A key binding for using an item, such as placing a block.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_MOUSE_BUTTON_RIGHT the right mouse button} by default. + f Lnet/minecraft/class_2561; field_37881 BY_PLAYER_CHUNK_BUILDER_MODE_TOOLTIP + f Lnet/minecraft/class_5498; field_26677 perspective + f Lnet/minecraft/class_7172; field_40382 panoramaSpeed + f Lnet/minecraft/class_304; field_63490 debugProfilingChartKey + f Lnet/minecraft/class_2561; field_37880 NONE_CHUNK_BUILDER_MODE_TOOLTIP + f Lnet/minecraft/class_2561; field_46854 HIDE_SPLASH_TEXTS_TOOLTIP + f Lnet/minecraft/class_7172; field_23933 chatDelay + f Lnet/minecraft/class_2561; field_64193 MAX_ANISOTROPY_TOOLTIP + f Lnet/minecraft/class_304; field_1906 spectatorOutlinesKey + c A key binding for highlighting players in {@linkplain net.minecraft.world.GameMode#SPECTATOR spectator mode}.\nNot bound to any keys by default. + f Lnet/minecraft/class_7172; field_19244 discreteMouseScroll + f Lnet/minecraft/class_2561; field_52761 ROTATE_WITH_MINECART_TOOLTIP + f Lnet/minecraft/class_7172; field_49476 menuBackgroundBlurriness + f Lnet/minecraft/class_7172; field_60683 musicFrequency + f Lnet/minecraft/class_7172; field_38293 darknessEffectScale + f Lnet/minecraft/class_304; field_1907 playerListKey + c A key binding for displaying {@linkplain net.minecraft.client.gui.hud.PlayerListHud the player list}.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_TAB the tab key} by default. + f Lnet/minecraft/class_7172; field_1829 mainArm + f Lnet/minecraft/class_7172; field_1817 chatLinksPrompt + f Lnet/minecraft/class_7172; field_37877 directionalAudio + f Lnet/minecraft/class_1157; field_1875 tutorialStep + f Ljava/lang/String; field_1828 fullscreenResolution + f Lnet/minecraft/class_2561; field_60682 MUSIC_FREQUENCY_TOOLTIP + f Lnet/minecraft/class_7172; field_52762 rotateWithMinecart + f Lnet/minecraft/class_7172; field_1838 chatHeightFocused + f Lnet/minecraft/class_7172; field_1814 cloudRenderMode + f Lnet/minecraft/class_7172; field_1826 fov + f Lnet/minecraft/class_7172; field_1911 chatLinks + f Lnet/minecraft/class_7172; field_23932 chatLineSpacing + f Lnet/minecraft/class_7172; field_34783 soundDevice + f Lnet/minecraft/class_2561; field_63500 IMPROVED_TRANSPARENCY_TOOLTIP + f Lnet/minecraft/class_7172; field_42482 damageTiltStrength + f Lnet/minecraft/class_7172; field_1900 chatColors + f Ljava/util/Map; field_1916 soundVolumeLevels + f Lnet/minecraft/class_7172; field_49105 japaneseGlyphVariants + f Ljava/io/File; field_1897 optionsFile + f Lnet/minecraft/class_304; field_1869 dropKey + c A key binding for dropping the item in the selected slot.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_Q the Q key} by default.\n\n

The selected slot is the slot the mouse is over when in a screen.\nOtherwise, it is the main hand. + f Lnet/minecraft/class_304; field_1845 commandKey + c A key binding for opening {@linkplain net.minecraft.client.gui.screen.ChatScreen\nthe chat screen} with the {@code /} already typed.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_SLASH the slash key} by default. + f Lnet/minecraft/class_7172; field_26675 distortionEffectScale + f Lnet/minecraft/class_2561; field_61999 CHAT_DRAFTS_TOOLTIP + f Lnet/minecraft/class_7172; field_35426 showAutosaveIndicator + f Lnet/minecraft/class_304; field_1822 inventoryKey + c A key binding for opening {@linkplain net.minecraft.client.gui.screen.ingame.InventoryScreen the inventory screen}.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_E the E key} by default. + f Z field_1842 hudHidden + f Lnet/minecraft/class_7172; field_43044 highContrast + f Lnet/minecraft/class_7172; field_34786 hideLightningFlashes + f I field_43110 MAX_SERIALIZABLE_GUI_SCALE + f Lnet/minecraft/class_7172; field_1818 showSubtitles + f Lnet/minecraft/class_304; field_1835 screenshotKey + c A key binding for taking a screenshot.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_F2 the F2 key} by default. + f Lnet/minecraft/class_7172; field_1915 chatWidth + f Z field_63473 applyingGraphicsMode + f Lnet/minecraft/class_7172; field_64194 maxAnisotropy + f Lnet/minecraft/class_7172; field_63501 improvedTransparency + f Ljava/util/List; field_1846 incompatibleResourcePacks + f Lnet/minecraft/class_7172; field_34787 chunkBuilderMode + f Lnet/minecraft/class_7172; field_1819 forceUnicodeFont + f Lnet/minecraft/class_304; field_1836 fullscreenKey + c A key binding for toggling fullscreen.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_F11 the F11 key} by default. + f Lnet/minecraft/class_304; field_1824 togglePerspectiveKey + c A key binding for toggling perspective.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_F5 the F5 key} by default. + f Z field_1876 useNativeTransport + f Lnet/minecraft/class_7172; field_20308 rawMouseInput + f Lnet/minecraft/class_7172; field_64196 chunkFade + f Lnet/minecraft/class_304; field_62567 spectatorHotbarKey + c A key binding for opening the hotbar in {@linkplain net.minecraft.world.GameMode#SPECTATOR spectator mode}.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_MOUSE_BUTTON_MIDDLE the middle mouse button} by default. + f Lorg/slf4j/Logger; field_1834 LOGGER + f Lnet/minecraft/class_304; field_1849 rightKey + c A key binding for moving right.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_D the D key} by default. + f Lnet/minecraft/class_7172; field_1909 maxFps + f [Lnet/minecraft/class_304; field_1839 allKeys + c An array of all key bindings.\n\n

Key bindings in this array are shown and can be configured in\n{@linkplain net.minecraft.client.gui.screen.option.ControlsOptionsScreen\nthe controls options screen}. + f I field_38300 MAX_FPS_LIMIT + f Lnet/minecraft/class_2561; field_61511 SPRINT_WINDOW_TOOLTIP + f Z field_25623 syncChunkWrites + f Lnet/minecraft/class_7172; field_60303 cloudRenderDistance + f Lnet/minecraft/class_7172; field_41094 operatorItemsTab + f I field_1872 overrideWidth + f Lnet/minecraft/class_7172; field_35637 allowServerListing + f Z field_26844 joinedFirstServer + f Lnet/minecraft/class_7172; field_61510 useToggled + f Lnet/minecraft/class_2561; field_43043 HIGH_CONTRAST_TOOLTIP + f I field_1885 overrideHeight + f Lnet/minecraft/class_2561; field_52127 REALMS_NOTIFICATIONS_TOOLTIP + f Lnet/minecraft/class_7172; field_1908 chatScale + f Lnet/minecraft/class_304; field_1816 smoothCameraKey + c A key binding for toggling smooth camera.\nNot bound to any keys by default. + f Lnet/minecraft/class_304; field_1913 leftKey + c A key binding for moving left.\nBound to {@linkplain org.lwjgl.glfw.GLFW#GLFW_KEY_A the A key} by default. + f Lnet/minecraft/class_7172; field_26676 fovEffectScale + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_6597;)Lnet/minecraft/class_2561; method_76533 method_76533 + p 1 value + p 0 optionText + m ()Lnet/minecraft/class_7172; method_42449 getSneakToggled + m ()Lnet/minecraft/class_7172; method_42546 getChatLineSpacing + m ()Lnet/minecraft/class_7172; method_42425 getAutoSuggestions + m ()Lnet/minecraft/class_7172; method_42437 getForceUnicodeFont + m (Lnet/minecraft/class_2561;I)Lnet/minecraft/class_2561; method_41782 getGenericValueText + p 1 value + p 0 prefix + m (Lnet/minecraft/class_2561;Ljava/lang/Double;)Lnet/minecraft/class_2561; method_42492 method_42492 + p 0 optionText + p 1 value + m ()Lnet/minecraft/class_8791; method_53842 getSyncedOptions + m (I)D method_41793 toMouseWheelSensitivityValue + p 0 value + m (Lnet/minecraft/class_1659;)V method_42456 method_42456 + p 0 value + m (Lnet/minecraft/class_3419;)Lnet/minecraft/class_7172; method_45578 getSoundVolumeOption + p 1 category + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_1659;)Lnet/minecraft/class_2561; method_76529 method_76529 + p 1 value + p 0 optionText + m (Lnet/minecraft/class_2561;D)Lnet/minecraft/class_2561; method_59835 getPercentValueOrOffText + p 1 value + p 0 prefix + m (Lnet/minecraft/class_315$class_9242;)V method_57019 acceptProfiledOptions + p 1 visitor + m ()Lnet/minecraft/class_7172; method_42448 getBobView + m ()Ljava/lang/String; method_37295 collectProfiledOptions + m (Ljava/lang/String;)Z method_32595 isTrue + p 0 value + m ()Ljava/lang/String; method_66523 getFullscreenResolution + m ()Lnet/minecraft/class_7172; method_42423 getAutoJump + m ()Lnet/minecraft/class_7172; method_42435 getEntityShadows + m (Ljava/lang/Integer;)Ljava/lang/Double; method_42532 method_42532 + p 0 value + m (D)I method_41773 toMouseWheelSensitivitySliderProgressValue + p 0 value + m ()Lnet/minecraft/class_7172; method_42556 getChatWidth + m ()Lnet/minecraft/class_7172; method_54581 getHideSplashTexts + m ()Lnet/minecraft/class_7172; method_42427 getChatColors + m ()Lnet/minecraft/class_7172; method_42439 getDiscreteMouseScroll + m ()Lnet/minecraft/class_7172; method_42524 getMaxFps + m (Lnet/minecraft/class_3419;)F method_71978 getSoundVolume + p 1 category + m (Ljava/lang/Integer;)V method_75325 method_75325 + p 0 value + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_1306;)Lnet/minecraft/class_2561; method_76528 method_76528 + p 0 optionText + p 1 value + m ()Lnet/minecraft/class_7172; method_41798 getChunkBuilderMode + m (Ljava/lang/Double;)Ljava/lang/Integer; method_42536 method_42536 + p 0 value + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_1142$class_11504;)Lnet/minecraft/class_2561; method_76534 method_76534 + p 0 optionText + p 1 value + m ()Lnet/minecraft/class_7172; method_42438 getInvertMouseY + m (Ljava/lang/Double;)V method_75341 method_75341 + p 1 value + m ()Lnet/minecraft/class_4063; method_1632 getCloudRenderModeValue + m ()Lnet/minecraft/class_7172; method_41784 getHideLightningFlashes + m (Ljava/lang/Boolean;)V method_42530 method_42530 + p 0 value + m ()Lnet/minecraft/class_7172; method_41772 getMonochromeLogo + m (Lnet/minecraft/class_2561;Ljava/lang/Double;)Lnet/minecraft/class_2561; method_41804 method_41804 + p 0 optionText + p 1 value + m ()Lnet/minecraft/class_7172; method_42510 getSimulationDistance + m ()Lnet/minecraft/class_7172; method_42429 getChatLinks + m (Ljava/lang/Integer;)V method_76783 method_76783 + p 1 value + m (Lnet/minecraft/class_2561;Ljava/lang/Integer;)Lnet/minecraft/class_2561; method_72715 method_72715 + p 1 value + p 0 optionText + m ()Lnet/minecraft/class_7172; method_61967 getRotateWithMinecart + m (Lnet/minecraft/class_2561;Ljava/lang/String;)Lnet/minecraft/class_2561; method_42523 method_42523 + p 0 optionText + p 1 value + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_4063;)Lnet/minecraft/class_2561; method_76531 method_76531 + p 1 value + p 0 optionText + m (Ljava/lang/Integer;)V method_75330 method_75330 + p 1 value + m (Lnet/minecraft/class_12393;)Lnet/minecraft/class_7919; method_76750 method_76750 + p 0 mode + m (Ljava/lang/Double;)V method_48188 method_48188 + p 0 value + m (Ljava/lang/Integer;)V method_76782 method_76782 + p 1 value + m (Lnet/minecraft/class_2561;Ljava/lang/Boolean;)Lnet/minecraft/class_2561; method_47608 method_47608 + p 0 optionText + p 1 value + m (Lnet/minecraft/class_2561;I)Lnet/minecraft/class_2561; method_41791 getPixelValueText + p 1 value + p 0 prefix + m (Ljava/lang/Boolean;)V method_47607 method_47607 + p 0 value + m (Ljava/lang/Integer;)V method_75331 method_75331 + p 1 value + m (Lnet/minecraft/class_3419;)F method_1630 getCategorySoundVolume + p 1 category + m ()Lnet/minecraft/class_7172; method_42528 getCloudRenderMode + m (Ljava/lang/Boolean;)V method_75336 method_75336 + p 1 value + m (Lnet/minecraft/class_2561;D)Lnet/minecraft/class_2561; method_41781 getPercentValueText + p 0 prefix + p 1 value + m (Ljava/lang/String;)Z method_32596 isFalse + p 0 value + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_4066;)Lnet/minecraft/class_2561; method_76527 method_76527 + p 1 value + p 0 optionText + m ()Lnet/minecraft/class_7172; method_42539 getChatVisibility + m (Ljava/lang/Integer;)V method_76784 method_76784 + p 1 value + m ()Lnet/minecraft/class_7172; method_42503 getViewDistance + m (Ljava/lang/String;)Ljava/util/List; method_33671 parseList + p 0 content + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_4061;)Lnet/minecraft/class_2561; method_76530 method_76530 + p 1 value + p 0 optionText + m (Lnet/minecraft/class_2561;Ljava/lang/Double;)Lnet/minecraft/class_2561; method_42560 method_42560 + p 1 value + p 0 optionText + m ()Lnet/minecraft/class_7172; method_48580 getGlintSpeed + m (Ljava/lang/Boolean;)V method_57022 method_57022 + p 0 value + m (Ljava/lang/Double;)V method_41778 method_41778 + p 0 value + m ()Lnet/minecraft/class_7172; method_42476 getNarrator + m ()Lnet/minecraft/class_7172; method_42452 getShowAutosaveIndicator + m ()Lnet/minecraft/class_7172; method_42561 getChatDelay + m (Lnet/minecraft/class_12345;)Lnet/minecraft/class_7919; method_76612 method_76612 + p 0 value + m ()Lnet/minecraft/class_7172; method_42440 getRealmsNotifications + m (Lnet/minecraft/class_2561;Ljava/lang/Boolean;)Lnet/minecraft/class_2561; method_42525 method_42525 + p 0 optionText + p 1 value + m ()Lnet/minecraft/class_7172; method_48581 getGlintStrength + m (Ljava/lang/Boolean;)Lnet/minecraft/class_4063; method_52704 method_52704 + p 0 value + m (Ljava/lang/Double;)V method_76254 method_76254 + p 0 value + m (Ljava/lang/Integer;)V method_42555 method_42555 + p 0 value + m ()Lnet/minecraft/class_7172; method_41808 getFov + m ()Lnet/minecraft/class_7172; method_42475 getParticles + m (Ljava/lang/String;)Ljava/util/Optional; method_42516 method_42516 + p 0 value + m (Ljava/lang/Double;)V method_42562 method_42562 + p 0 value + m ()Lnet/minecraft/class_7172; method_42451 getHideMatchedNames + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_1626 update + p 1 nbt + m (Ljava/lang/Integer;)V method_76781 method_76781 + p 0 value + m (Ljava/lang/Double;)I method_42430 method_42430 + p 0 value + m (I)Ljava/lang/Double; method_76249 method_76249 + p 0 ticks + m ()Lnet/minecraft/class_7172; method_42454 getFovEffectScale + m ()Lnet/minecraft/class_7172; method_42442 getReducedDebugInfo + m ()Lnet/minecraft/class_7172; method_42563 getMipmapLevels + m (Ljava/lang/Integer;)V method_76780 method_76780 + p 1 value + m ()V method_61127 setAccessibilityOnboarded + m (Lnet/minecraft/class_2561;Ljava/lang/Integer;)Lnet/minecraft/class_2561; method_42508 method_42508 + p 1 value + p 0 optionText + m (Ljava/lang/Double;)V method_42467 method_42467 + p 0 value + m ()Lnet/minecraft/class_7172; method_42477 getSoundDevice + m ()Lnet/minecraft/class_7172; method_42441 getAllowServerListing + m ()Lnet/minecraft/class_7172; method_42550 getTextBackgroundOpacity + m ()Lnet/minecraft/class_7172; method_42453 getDistortionEffectScale + m (Ljava/lang/Double;)V method_42540 method_42540 + p 0 value + m (Lnet/minecraft/class_2561;Ljava/lang/Integer;)Lnet/minecraft/class_2561; method_75328 method_75328 + p 1 value + p 0 optionText + m ()Lnet/minecraft/class_7172; method_42565 getAttackIndicator + m ()I method_76248 getEffectiveAnisotropy + m ()Lnet/minecraft/class_7172; method_42444 getDirectionalAudio + m ()Lnet/minecraft/class_7172; method_57018 getJapaneseGlyphVariants + m (Lnet/minecraft/class_2561;Ljava/lang/Integer;)Lnet/minecraft/class_2561; method_42493 method_42493 + p 0 optionText + p 1 value + m (Ljava/lang/Double;)V method_42566 method_42566 + p 0 value + m ()Lnet/minecraft/class_7172; method_42443 getShowSubtitles + m ()Lnet/minecraft/class_7172; method_42431 getChatLinksPrompt + m ()Lnet/minecraft/class_7172; method_42552 getMainArm + m (Lnet/minecraft/class_2561;Ljava/lang/Integer;)Lnet/minecraft/class_2561; method_71268 method_71268 + p 1 value + p 0 optionText + m (Lnet/minecraft/class_2561;Ljava/lang/Boolean;)Lnet/minecraft/class_2561; method_72712 method_72712 + p 1 value + p 0 optionText + m (Lnet/minecraft/class_2561;I)Lnet/minecraft/class_2561; method_60648 getGenericValueOrOffText + p 1 value + p 0 prefix + m ()Lnet/minecraft/class_7172; method_42447 getFullscreen + m (Ljava/lang/Double;)V method_41796 method_41796 + p 0 value + m ()Lnet/minecraft/class_7172; method_71788 getMusicFrequency + m ()Lnet/minecraft/class_7172; method_47395 getOperatorItemsTab + m (Lcom/mojang/datafixers/util/Pair;)Ljava/lang/String; method_37293 method_37293 + p 0 option + m (Lnet/minecraft/class_9927;)Lnet/minecraft/class_7919; method_61969 method_61969 + p 0 option + m (Ljava/lang/Double;)V method_42434 method_42434 + p 0 value + m ()Lnet/minecraft/class_7172; method_42446 getTouchscreen + m (Ljava/lang/Double;)I method_76255 method_76255 + p 0 seconds + m (I)Ljava/lang/Double; method_42504 method_42504 + p 0 value + m (Ljava/lang/Integer;)I method_42557 method_42557 + p 0 value + m (Ljava/lang/Double;)V method_48582 method_48582 + p 0 value + m (I)Ljava/lang/Double; method_42518 method_42518 + p 0 sliderProgressValue + m (Ljava/lang/Double;)V method_42568 method_42568 + p 0 value + m ()Lnet/minecraft/class_7172; method_76253 getChunkFade + m ()Lnet/minecraft/class_7172; method_41792 getAo + m (Ljava/lang/Double;)I method_42544 method_42544 + p 0 value + m (Lnet/minecraft/class_1664;)Z method_32594 isPlayerModelPartEnabled + p 1 part + m ()Ljava/io/File; method_37294 getOptionsFile + m ()Lnet/minecraft/class_7172; method_42445 getBackgroundForChatOnly + m (Lnet/minecraft/class_4065;)V method_42463 method_42463 + p 1 value + m ()Lnet/minecraft/class_7172; method_42554 getChatScale + m (Lnet/minecraft/class_2561;Ljava/lang/Integer;)Lnet/minecraft/class_2561; method_41800 method_41800 + p 1 value + p 0 optionText + m ()Lnet/minecraft/class_7172; method_42542 getChatOpacity + m ()Lnet/minecraft/class_7172; method_42433 getEnableVsync + m (Lnet/minecraft/class_5365;)V method_75317 applyGraphicsMode + p 1 mode + m ()Lnet/minecraft/class_7172; method_47609 getTelemetryOptInExtra + m (Lnet/minecraft/class_2561;Ljava/lang/Boolean;)Lnet/minecraft/class_2561; method_72710 method_72710 + p 1 value + p 0 optionText + m (Lnet/minecraft/class_3283;)V method_1627 addResourcePackProfilesToManager + p 1 manager + m ()Lnet/minecraft/class_5498; method_31044 getPerspective + m (Ljava/lang/Double;)V method_42424 method_42424 + p 0 value + m ()Lnet/minecraft/class_7172; method_41801 getChatHeightUnfocused + m ()V method_57020 onFontOptionsChanged + m ()Lnet/minecraft/class_7172; method_53530 getNarratorHotkey + m (Lnet/minecraft/class_2561;Ljava/lang/Double;)Lnet/minecraft/class_2561; method_42436 method_42436 + p 0 optionText + p 1 value + m ()V method_75321 onChangeGraphicsOption + m (I)Ljava/lang/Integer; method_42511 method_42511 + p 0 value + m (Ljava/lang/Double;)V method_42558 method_42558 + p 0 value + m (Lnet/minecraft/class_2561;Ljava/lang/Integer;)Lnet/minecraft/class_2561; method_76250 method_76250 + p 0 optionText + p 1 value + m (F)F method_19343 getTextBackgroundOpacity + p 1 fallback + m ()Lnet/minecraft/class_7172; method_74034 getAllowCursorChanges + m (Ljava/lang/Integer;)V method_42515 method_42515 + p 1 value + m (Ljava/lang/String;)V method_42509 method_42509 + p 0 value + m (Lnet/minecraft/class_2561;Ljava/lang/Integer;)Lnet/minecraft/class_2561; method_41789 method_41789 + p 0 optionText + p 1 value + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_41783 getGenericValueText + p 0 prefix + p 1 value + m ()V method_1636 load + m ()Lnet/minecraft/class_7172; method_75333 getWeatherRadius + m (Lnet/minecraft/class_1664;Z)V method_1635 setPlayerModelPart + p 2 enabled + p 1 part + m ()Lnet/minecraft/class_7172; method_41803 getChatHeightFocused + m ()Lnet/minecraft/class_7172; method_64858 getHighContrastBlockOutline + m ()Lnet/minecraft/class_7172; method_73197 getChatDrafts + m ()Lnet/minecraft/class_7172; method_75334 getCutoutLeaves + m (Lnet/minecraft/class_3419;)Lnet/minecraft/class_7172; method_66524 method_66524 + p 1 category + m (I)V method_38520 setServerViewDistance + p 1 serverViewDistance + m (Ljava/lang/Boolean;)Lnet/minecraft/class_7919; method_47398 method_47398 + p 0 value + m ()Z method_57021 shouldUseJapaneseGlyphsByDefault + m (F)I method_19345 getTextBackgroundColor + p 1 fallbackOpacity + m (Ljava/lang/String;Lnet/minecraft/class_3419;)Lnet/minecraft/class_7172; method_45576 createSoundVolumeOption + p 2 category + p 1 key + m (Lnet/minecraft/class_2561;Ljava/lang/Double;)Lnet/minecraft/class_2561; method_42548 method_42548 + p 0 optionText + p 1 value + m (Ljava/lang/Double;)V method_42501 method_42501 + p 0 value + m (Lnet/minecraft/class_2561;Ljava/lang/Boolean;)Lnet/minecraft/class_2561; method_42506 method_42506 + p 1 value + p 0 optionText + m (Lnet/minecraft/class_2561;Ljava/lang/Double;)Lnet/minecraft/class_2561; method_41799 method_41799 + p 0 optionText + p 1 value + m ()Lnet/minecraft/class_7172; method_72706 getInvertMouseX + m ()Lnet/minecraft/class_7172; method_41805 getBiomeBlendRadius + m (Lnet/minecraft/class_6597;)Lnet/minecraft/class_7919; method_47396 method_47396 + p 0 value + m (Lnet/minecraft/class_4063;)V method_75316 method_75316 + p 1 value + m (Lnet/minecraft/class_2487;Ljava/lang/String;)V method_24230 method_24230 + p 1 line + m ()Lnet/minecraft/class_7172; method_42472 getDarknessEffectScale + m (Lnet/minecraft/class_3283;)V method_49598 refreshResourcePacks + p 1 resourcePackManager + m (Ljava/lang/Double;)V method_42514 method_42514 + p 0 value + m (Ljava/lang/Double;)V method_42526 method_42526 + p 0 value + m ()Lnet/minecraft/class_7172; method_72707 getAttackToggled + m ()Lnet/minecraft/class_7172; method_76247 getMaxAnisotropy + m (Lnet/minecraft/class_2561;Ljava/lang/Double;)Lnet/minecraft/class_2561; method_41788 method_41788 + p 0 optionText + p 1 value + m (I)I method_19344 getTextBackgroundColor + p 1 fallbackColor + m ()I method_57703 getMenuBackgroundBlurrinessValue + m ()Lnet/minecraft/class_7172; method_42495 getMouseSensitivity + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_5365;)Lnet/minecraft/class_2561; method_75320 method_75320 + p 0 optionText + p 1 value + m (Ljava/lang/Double;)V method_45580 method_45580 + p 0 value + m (Lnet/minecraft/class_1142$class_11504;)V method_71785 method_71785 + p 0 value + m ()Lnet/minecraft/class_7172; method_41807 getRawMouseInput + m ()Lnet/minecraft/class_7172; method_42474 getGuiScale + m ()Lnet/minecraft/class_7172; method_42450 getSprintToggled + m ()Z method_1639 shouldUseNativeTransport + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_12345;)Lnet/minecraft/class_2561; method_76610 method_76610 + p 0 optionText + p 1 value + m ()Lnet/minecraft/class_7172; method_41806 getMouseWheelSensitivity + m ()Lnet/minecraft/class_7172; method_42473 getGamma + m (Ljava/lang/Boolean;)V method_42513 method_42513 + p 1 value + m (Ljava/lang/Integer;)V method_75319 method_75319 + p 1 value + m (Ljava/lang/Boolean;)V method_42537 method_42537 + p 0 value + m (Lnet/minecraft/class_6597;)V method_75318 method_75318 + p 1 value + m (Ljava/lang/Boolean;)V method_76786 method_76786 + p 1 value + m (Lnet/minecraft/class_310;Ljava/io/File;)V + p 2 optionsFile + p 1 client + m (Lnet/minecraft/class_761;)V method_76778 method_76778 + p 0 worldRenderer + m ()Lnet/minecraft/class_7172; method_42517 getEntityDistanceScaling + m (Ljava/lang/Boolean;)V method_42500 method_42500 + p 0 value + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_4065;)Lnet/minecraft/class_2561; method_42489 method_42489 + p 1 optionText + p 2 value + m ()Lnet/minecraft/class_7172; method_76611 getMusicToast + m (Ljava/lang/Boolean;)V method_76785 method_76785 + p 1 value + m ()Lnet/minecraft/class_7172; method_75329 getPreset + m (Lnet/minecraft/class_12345;)V method_76609 method_76609 + p 1 value + m (Ljava/lang/Double;)V method_71043 method_71043 + p 0 value + m (Lnet/minecraft/class_4066;)V method_75315 method_75315 + p 1 value + m ()Lnet/minecraft/class_7172; method_72708 getUseToggled + m ()Lnet/minecraft/class_7172; method_71270 getCloudRenderDistance + m ()Lnet/minecraft/class_7172; method_45581 getPanoramaSpeed + m ()Lnet/minecraft/class_7172; method_48974 getDamageTiltStrength + m ()V method_1640 write + m (Lnet/minecraft/class_2561;Ljava/lang/Double;)Lnet/minecraft/class_2561; method_76252 method_76252 + p 1 value + p 0 optionText + m (Ljava/util/function/Consumer;)V method_76779 refreshWorldRenderer + p 0 refresher + m (Lnet/minecraft/class_2561;Ljava/lang/Double;)Lnet/minecraft/class_2561; method_48189 method_48189 + p 1 value + p 0 optionText + m (Ljava/lang/Boolean;)V method_42538 method_42538 + p 0 value + m ()Lnet/minecraft/class_7172; method_72709 getSprintWindow + m ()Lnet/minecraft/class_7172; method_76747 getTextureFiltering + m (Lnet/minecraft/class_315$class_5823;)V method_33666 accept + p 1 visitor + m (Ljava/lang/Boolean;)V method_41777 method_41777 + p 0 value + m (Ljava/lang/Boolean;)V method_72717 method_72717 + p 0 value + m (Lnet/minecraft/class_2561;Ljava/lang/Double;)Lnet/minecraft/class_2561; method_42564 method_42564 + p 0 optionText + p 1 value + m ()Lnet/minecraft/class_7172; method_48191 getNotificationDisplayTime + m ()Lnet/minecraft/class_7172; method_75335 getVignette + m (Ljava/lang/Boolean;)V method_72713 method_72713 + p 0 value + m (Lnet/minecraft/class_2561;Ljava/lang/Integer;)Lnet/minecraft/class_2561; method_42559 method_42559 + p 0 optionText + p 1 value + m (Lnet/minecraft/class_5498;)V method_31043 setPerspective + p 1 perspective + m ()I method_38521 getClampedViewDistance + m (Ljava/lang/Integer;)V method_75327 method_75327 + p 1 value + m ()Lnet/minecraft/class_7172; method_61970 getInactivityFpsLimit + m ()Lnet/minecraft/class_7172; method_57702 getMenuBackgroundBlurriness + m (Lnet/minecraft/class_2561;Ljava/lang/Double;)Lnet/minecraft/class_2561; method_42432 method_42432 + p 0 optionText + p 1 value + m (Ljava/lang/Boolean;)V method_72714 method_72714 + p 0 value + m (Lnet/minecraft/class_4061;)V method_42458 method_42458 + p 0 value + m (Lnet/minecraft/class_1306;)V method_42455 method_42455 + p 0 value + m (Ljava/lang/Boolean;)V method_42520 method_42520 + p 0 value + m (Lnet/minecraft/class_2561;Ljava/lang/Integer;)Lnet/minecraft/class_2561; method_42522 method_42522 + p 0 optionText + p 1 value + m (Lnet/minecraft/class_2561;Ljava/lang/Boolean;)Lnet/minecraft/class_2561; method_42491 method_42491 + p 0 optionText + p 1 value + m (Ljava/lang/Boolean;)V method_74035 method_74035 + p 0 value + m (Ljava/lang/Double;)V method_41802 method_41802 + p 0 value + m ()Lnet/minecraft/class_7172; method_44026 getOnlyShowSecureChat + m ()Lnet/minecraft/class_7172; method_75337 getImprovedTransparency + m (Ljava/lang/Boolean;)V method_42535 method_42535 + p 0 value + m (Ljava/lang/Boolean;)V method_72711 method_72711 + p 0 value + m (Lnet/minecraft/class_2561;Ljava/lang/Integer;)Lnet/minecraft/class_2561; method_42545 method_42545 + p 0 optionText + p 1 value + m (I)Ljava/lang/Double; method_48187 method_48187 + p 0 sliderProgressValue + m (Lnet/minecraft/class_3419;Ljava/lang/Double;)V method_45575 method_45575 + p 2 volume + m ()V method_1643 sendClientSettings + c Sends the current client settings to the server if the client is\nconnected to a server.\n\n

Called when a player joins the game or when client settings are\nchanged. + m (Ljava/lang/Boolean;)V method_49599 method_49599 + p 1 value + m (Ljava/lang/Double;)I method_48190 method_48190 + p 0 value + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_12393;)Lnet/minecraft/class_2561; method_76749 method_76749 + p 0 optionText + p 1 value + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_9927;)Lnet/minecraft/class_2561; method_76532 method_76532 + p 0 optionText + p 1 value + m ()Lnet/minecraft/class_7172; method_49600 getHighContrast +c net/minecraft/class_315$class_9242 net/minecraft/client/option/GameOptions$OptionVisitor + m (Ljava/lang/String;Lnet/minecraft/class_7172;)V method_42570 accept + p 1 key + p 2 option +c net/minecraft/class_315$class_5823 net/minecraft/client/option/GameOptions$Visitor + m (Ljava/lang/String;I)I method_33680 visitInt + p 2 current + p 1 key + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_33683 visitString + p 1 key + p 2 current + m (Ljava/lang/String;Z)Z method_33684 visitBoolean + p 1 key + p 2 current + m (Ljava/lang/String;F)F method_33679 visitFloat + p 2 current + p 1 key + m (Ljava/lang/String;Ljava/lang/Object;Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/lang/Object; method_33681 visitObject + p 1 key + p 4 encoder + p 3 decoder + p 2 current +c net/minecraft/class_315$3 net/minecraft/client/option/GameOptions$3 + m (Lnet/minecraft/class_7172;Lcom/mojang/serialization/DataResult$Error;)V method_72718 method_72718 + p 1 error + m (Ljava/lang/String;)V method_33677 print + p 1 key + m (Ljava/lang/String;Ljava/io/PrintWriter;Lcom/google/gson/JsonElement;)V method_42573 method_42573 + p 3 json +c net/minecraft/class_315$2 net/minecraft/client/option/GameOptions$2 + m (Ljava/lang/String;)Ljava/lang/String; method_33676 find + p 1 key + m (Ljava/lang/String;Lnet/minecraft/class_7172;Lcom/mojang/serialization/DataResult$Error;)V method_42571 method_42571 + p 2 error +c net/minecraft/class_2186 net/minecraft/command/argument/EntityArgumentType + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9861 PLAYER_SELECTOR_HAS_ENTITIES_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9863 ENTITY_NOT_FOUND_EXCEPTION + f Z field_9858 singleTarget + f Ljava/util/Collection; field_9859 EXAMPLES + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9856 PLAYER_NOT_FOUND_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9860 TOO_MANY_ENTITIES_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9862 NOT_ALLOWED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9864 TOO_MANY_PLAYERS_EXCEPTION + f Z field_9857 playersOnly + m (ZZ)V + p 1 singleTarget + p 2 playersOnly + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; method_9310 getOptionalPlayers + p 1 name + p 0 context + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/class_2300; method_9318 parse + p 2 allowAtSelectors + p 1 reader + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2300; method_61178 parse + m ()Lnet/minecraft/class_2186; method_9309 entity + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Ljava/lang/Object; parse parse + p 1 reader + p 2 source + m ()Lnet/minecraft/class_2186; method_9305 player + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; method_9312 getPlayers + p 1 name + p 0 context + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Lnet/minecraft/class_2300; method_61179 parse + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lnet/minecraft/class_2172;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V method_9311 method_9311 + p 2 builder + m ()Lnet/minecraft/class_2186; method_9308 players + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_3222; method_9315 getPlayer + p 1 name + p 0 context + m ()Lnet/minecraft/class_2186; method_9306 entities + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_1297; method_9313 getEntity + p 1 name + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; method_9317 getEntities + p 1 name + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; method_9307 getOptionalEntities + p 0 context + p 1 name +c net/minecraft/class_2186$class_2187 net/minecraft/command/argument/EntityArgumentType$Serializer + f B field_37850 SINGLE_FLAG + f B field_37851 PLAYERS_ONLY_FLAG + m (Lnet/minecraft/class_2186;)Lnet/minecraft/class_2186$class_2187$class_7171; method_41727 getArgumentTypeProperties + m (Lnet/minecraft/class_2186$class_2187$class_7171;Lnet/minecraft/class_2540;)V method_9320 writePacket + m (Lnet/minecraft/class_2186$class_2187$class_7171;Lcom/google/gson/JsonObject;)V method_9319 writeJson + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2186$class_2187$class_7171; method_9321 fromPacket +c net/minecraft/class_2186$class_2187$class_7171 net/minecraft/command/argument/EntityArgumentType$Serializer$Properties + f Z field_37854 playersOnly + f Z field_37853 single + m (Lnet/minecraft/class_2186$class_2187;ZZ)V + p 2 single + p 3 playersOnly + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_2186; method_41729 createType +c net/minecraft/class_310 net/minecraft/client/MinecraftClient + c Represents a logical Minecraft client.\nThe logical Minecraft client is responsible for rendering, sound playback and control input.\nThe Minecraft client also manages connections to a logical server which may be the client's {@link net.minecraft.server.integrated.IntegratedServer} or a remote server.\nThe Minecraft client instance may be obtained using {@link MinecraftClient#getInstance()}.\n\n

Rendering on a Minecraft client is split into several facilities.\nThe primary entrypoint for rendering is {@link net.minecraft.client.render.GameRenderer#render}.\n

\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Rendering facilities
Thing to render Rendering facility
World {@link net.minecraft.client.render.WorldRenderer}
Blocks and Fluids {@link net.minecraft.client.render.block.BlockRenderManager}
Entities {@link net.minecraft.client.render.entity.EntityRenderDispatcher}
Block entities {@link net.minecraft.client.render.block.entity.BlockEntityRenderDispatcher}
Items {@link net.minecraft.client.render.item.ItemRenderer}
Items held in hand {@link net.minecraft.client.render.item.HeldItemRenderer}
Text {@link net.minecraft.client.font.TextRenderer}
Game hud (health bar, hunger bar) {@link net.minecraft.client.gui.hud.InGameHud}
\n\n@see net.minecraft.server.integrated.IntegratedServer\n@see net.minecraft.client.render.GameRenderer + f Lnet/minecraft/class_918; field_1742 itemRenderer + f Lnet/minecraft/class_378; field_1708 fontManager + f Lnet/minecraft/class_11980; field_62566 packetApplyBatcher + f Z field_32144 wireFrame + f Lnet/minecraft/class_7168$class_7169; field_37857 currentGlTimerQuery + f Lnet/minecraft/class_9919; field_52753 inactivityFpsLimiter + f Z field_1730 chunkCullingEnabled + f Ljava/nio/file/Path; field_1757 resourcePackDir + f J field_41332 renderTime + f I field_22224 trackingTick + f Z field_1743 skipGameRender + f Lnet/minecraft/class_2535; field_1746 integratedServerConnection + c The client connection to the integrated server.\nThis is only used when connecting to the integrated server.\n\n@see net.minecraft.client.gui.screen.multiplayer.ConnectScreen + f Lnet/minecraft/class_6360; field_33697 resourceReloadLogger + f Ljava/util/concurrent/CompletableFuture; field_45899 gameProfileFuture + f Lnet/minecraft/class_10219; field_54267 tracyFrameCapturer + f Lnet/minecraft/class_2561; field_60984 SAVING_LEVEL_TEXT + f Lnet/minecraft/class_10151; field_53831 shaderLoader + f Lnet/minecraft/class_315; field_1690 options + f Lnet/minecraft/class_7578; field_39718 realmsPeriodicCheckers + f Lnet/minecraft/class_312; field_1729 mouse + f J field_46553 uptimeInTicks + f Lnet/minecraft/class_9779$class_9781; field_52750 renderTickCounter + f Lnet/minecraft/class_1297; field_1719 cameraEntity + f Lnet/minecraft/class_1144; field_1727 soundManager + f Lnet/minecraft/class_2960; field_24211 UNICODE_FONT_ID + f Lnet/minecraft/class_7594; field_39770 messageHandler + f Z field_61503 offlineDeveloperMode + f Lnet/minecraft/class_4071; field_18175 overlay + f I field_1752 itemUseCooldown + c The cooldown for using items when {@linkplain net.minecraft.client.option.GameOptions#useKey the item use button} is held down. + f Ljava/lang/String; field_1720 versionType + f Z field_45900 finishedLoading + f Ljava/net/Proxy; field_1739 networkProxy + f Lnet/minecraft/class_2960; field_1749 ALT_TEXT_RENDERER_ID + f Lnet/minecraft/class_327; field_1772 textRenderer + f Lnet/minecraft/class_8015; field_41782 navigationType + f Lnet/minecraft/class_324; field_1751 blockColors + f Z field_25034 onlineChatEnabled + f Lnet/minecraft/class_12185; field_63466 gizmoCollector + f Lnet/minecraft/class_276; field_1689 framebuffer + f Lnet/minecraft/class_11939; field_62565 particleSpriteManager + f D field_37856 gpuUtilizationPercentage + f Lnet/minecraft/class_10442; field_55226 itemModelManager + f Lnet/minecraft/class_374; field_1702 toastManager + f Lcom/mojang/authlib/minecraft/UserApiService; field_26902 userApiService + f Lnet/minecraft/class_1142; field_1714 musicTracker + f J field_37855 metricsSampleDuration + f Lnet/minecraft/class_11786; field_62107 playerSkinCache + f J field_1750 lastMetricsSampleTime + f Z field_25033 multiplayerEnabled + f Ljava/lang/Thread; field_1696 thread + f Lnet/minecraft/class_11633; field_61504 debugHudEntryList + f Ljava/lang/String; field_1711 gameVersion + f Lnet/minecraft/class_6877; field_36434 regionalComplianciesManager + f Lnet/minecraft/class_10093; field_52752 mapTextureManager + f Lnet/minecraft/class_239; field_1765 crosshairTarget + f Lnet/minecraft/class_329; field_1705 inGameHud + f I field_1771 attackCooldown + f Lnet/minecraft/class_746; field_1724 player + c Represents the client's own player.\nThis field is not null when in game. + f Lnet/minecraft/class_327; field_39924 advanceValidatingTextRenderer + f Lnet/minecraft/class_8657; field_45294 commandHistoryManager + f Lnet/minecraft/class_1076; field_1717 languageManager + f Lnet/minecraft/class_1041; field_1704 window + f Lnet/minecraft/class_4757; field_22225 tickTimeTracker + f Lnet/minecraft/class_1156; field_1758 tutorialManager + f Lcom/mojang/datafixers/DataFixer; field_1768 dataFixer + f Ljava/util/List; field_64524 gizmos + f Lnet/minecraft/class_8580; field_45295 symlinkFinder + f Z field_1698 running + f Lnet/minecraft/class_1060; field_1764 textureManager + f Lnet/minecraft/class_333; field_39769 narratorManager + f Lnet/minecraft/class_7853; field_39068 profileKeys + f Lnet/minecraft/class_5962; field_29569 recorder + f Ljava/util/concurrent/CompletableFuture; field_47680 userPropertiesFuture + f Lnet/minecraft/class_11697; field_61502 atlasManager + f Lnet/minecraft/class_3682; field_1686 windowProvider + f Lnet/minecraft/class_372; field_26843 socialInteractionsToast + f Lnet/minecraft/class_1066; field_40381 serverResourcePackLoader + f Lnet/minecraft/class_7497; field_62106 apiServices + f Lnet/minecraft/class_5407; field_25671 videoWarningManager + f Lnet/minecraft/class_2960; field_36433 REGIONAL_COMPLIANCIES_ID + f Z field_1695 windowFocused + f Lnet/minecraft/class_3304; field_1745 resourceManager + f Lnet/minecraft/class_5520; field_26842 socialInteractionsManager + f Ljava/util/function/Supplier; field_1747 crashReportSupplier + f Lnet/minecraft/class_8497; field_44539 quickPlayLogger + f Lnet/minecraft/class_3268; field_40380 defaultResourcePack + f I field_1738 currentFps + f Lnet/minecraft/class_1071; field_1707 skinProvider + f Lnet/minecraft/class_824; field_27388 blockEntityRenderManager + f I field_1735 fpsCounter + f Z field_46551 disconnecting + f Lnet/minecraft/class_11327; field_60302 waypointStyleAssetManager + f Z field_1734 paused + f Ljava/lang/String; field_33735 GL_ERROR_DIALOGUE + c A message, in English, displayed in a dialog when a GLFW error is encountered.\n\n@see net.minecraft.client.util.Window#throwGlError(int, long) + f J field_46552 startTime + f Lnet/minecraft/class_320; field_1726 session + f Lnet/minecraft/class_636; field_1761 interactionManager + f Lnet/minecraft/class_302; field_1732 creativeHotbarStorage + f Lnet/minecraft/class_32; field_1748 levelStorage + f Lnet/minecraft/class_761; field_1769 worldRenderer + f Lnet/minecraft/class_757; field_1773 gameRenderer + f Lnet/minecraft/class_310; field_1700 instance + f Ljava/io/File; field_1697 runDirectory + c The directory that stores options, worlds, resource packs, logs, etc. + f Lnet/minecraft/class_1132; field_1766 server + f Lnet/minecraft/class_6628; field_41331 telemetryManager + f J field_1712 nextDebugInfoUpdateTime + f Ljava/util/concurrent/CompletableFuture; field_18009 COMPLETED_UNIT_FUTURE + f Lnet/minecraft/class_2960; field_1740 DEFAULT_FONT_ID + f Ljava/util/concurrent/CompletableFuture; field_18174 resourceReloadFuture + f Lnet/minecraft/class_702; field_1713 particleManager + f Lorg/slf4j/Logger; field_1762 LOGGER + f Lnet/minecraft/class_1297; field_1692 targetedEntity + f Lnet/minecraft/class_309; field_1774 keyboard + f Lnet/minecraft/class_638; field_1687 world + c Represents the world the client is currently viewing.\nThis field is not null when in game. + f Lnet/minecraft/class_437; field_1755 currentScreen + c The Minecraft client's currently open screen.\nThis field should only be used to get the current screen.\nFor changing the screen, use {@link MinecraftClient#setScreen(Screen)}.\n\n@see MinecraftClient#setScreen(Screen) + f Z field_1759 integratedServerRunning + f Lnet/minecraft/class_4599; field_20909 bufferBuilders + f Lnet/minecraft/class_7574; field_39492 abuseReportContext + f Lnet/minecraft/class_776; field_1756 blockRenderManager + f Lnet/minecraft/class_1092; field_1763 bakedModelManager + f J field_46550 UNIVERSE + f Lnet/minecraft/class_3283; field_1715 resourcePackManager + f Lnet/minecraft/class_898; field_1731 entityRenderManager + f Lnet/minecraft/class_330; field_52751 mapRenderer + f Lnet/minecraft/class_4008; field_17763 splashTextLoader + f Lnet/minecraft/class_2561; field_26841 SOCIAL_INTERACTIONS_NOT_AVAILABLE + f Z field_1721 isDemo + m ()Lnet/minecraft/class_1041; method_22683 getWindow + m ()Lcom/mojang/authlib/minecraft/UserApiService$UserProperties; method_55607 getUserProperties + m (Ljava/util/UUID;)Z method_52701 uuidEquals + p 1 uuid + m ()V method_1519 cleanUpAfterCrash + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_3283;Lnet/minecraft/class_6904;Lnet/minecraft/class_11545;Ljava/lang/Thread;)Lnet/minecraft/class_1132; method_29603 method_29603 + p 5 thread + m (Lnet/minecraft/class_638;Z)V method_18097 setWorld + p 2 stopSounds + p 1 world + m (Ljava/util/function/Consumer;Lnet/minecraft/class_3696;)V method_34746 method_34746 + p 2 result + m ()Lnet/minecraft/class_776; method_1541 getBlockRenderManager + m ()Lnet/minecraft/class_634; method_1562 getNetworkHandler + m ()Lnet/minecraft/class_3268; method_45573 getDefaultResourcePack + m ()Z method_31321 isConnectedToServer + m (Lnet/minecraft/class_2561;)V method_73360 disconnect + p 1 reasonText + m ()V method_1574 tick + m ()Z method_29611 usesImprovedTransparency + m ()V method_38932 loadBlockList + m ()Lnet/minecraft/class_8580; method_52702 getSymlinkFinder + m (Lnet/minecraft/class_1078;)V method_60320 method_60320 + p 1 translationStorage + m ()Ljava/nio/file/Path; method_1479 getResourcePackDir + m (Ljava/util/UUID;)Z method_29042 shouldBlockMessages + c Checks if the client should block messages from the {@code sender}.\n\n

If true, messages will not be displayed in chat and narrator will not process\nthem. + p 1 sender + m ()Lnet/minecraft/class_32; method_1586 getLevelStorage + m ()Ljava/lang/String; method_1515 getGameVersion + m ()Z method_35706 isRealmsEnabled + m (Lnet/minecraft/class_6396;Lnet/minecraft/class_310;Lnet/minecraft/class_1076;Ljava/lang/String;Lnet/minecraft/class_315;)Lnet/minecraft/class_6396; method_37274 addSystemDetailsToCrashReport + p 3 version + p 4 options + p 1 client + p 2 languageManager + p 0 systemDetails + m ()V method_41733 forceStopRecorder + m ()V method_57017 onFontOptionsChanged + m (Ljava/util/function/Consumer;Ljava/nio/file/Path;)V method_37291 method_37291 + p 2 path + m ()Lnet/minecraft/class_10151; method_62887 getShaderLoader + m ()D method_41734 getGpuUtilizationPercentage + m (Ljava/util/function/Consumer;)Z method_34745 toggleDebugProfiler + p 1 chatMessageSender + m (Lnet/minecraft/class_310$class_8764;)V method_51736 collectLoadTimes + p 1 loadingContext + m (Lnet/minecraft/class_310;Ljava/io/File;Lnet/minecraft/class_128;)V method_1565 printCrashReport + p 2 crashReport + p 0 client + p 1 runDirectory + m (ZLnet/minecraft/class_4758;)V method_24460 endMonitor + p 2 monitor + p 1 active + m ()Lnet/minecraft/class_340; method_53526 getDebugHud + m ()Z method_1588 isAmbientOcclusionEnabled + m (Lnet/minecraft/class_1297;)Z method_27022 hasOutline + c Checks if the provided {@code entity} should display an outline around its model. + p 1 entity + m ()V method_1508 handleInputEvents + m ()Z method_53518 isUsernameBanned + m ()Z method_73363 canCurrentScreenInterruptOtherScreen + m ()Lnet/minecraft/class_8497; method_51253 getQuickPlayLogger + m (Lnet/minecraft/class_6880;)V method_72096 method_72096 + p 1 dialog + m (Ljava/lang/Object;)Z method_40189 isCountrySetTo + p 0 country + m ()Lnet/minecraft/class_320; method_1548 getSession + m ()Lnet/minecraft/class_7853; method_43590 getProfileKeys + m (ZLnet/minecraft/class_4758;)Lnet/minecraft/class_3695; method_24458 startMonitor + p 1 active + p 2 monitor + m ()Lnet/minecraft/class_6628; method_47601 getTelemetryManager + m ()Lnet/minecraft/class_5407; method_30049 getVideoWarningManager + m ()V method_17044 checkGameData + m ()Z method_60647 shouldTick + m ()Z method_1555 hasReducedDebugInfo + m (Lcom/mojang/authlib/GameProfile;Ljava/lang/Runnable;)Lnet/minecraft/class_437; method_53519 method_53519 + p 1 onClose + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_3283;Lnet/minecraft/class_6904;Z)V method_29610 startIntegratedServer + p 2 dataPackManager + p 1 session + p 4 newWorld + p 3 saveLoader + m ()Lnet/minecraft/class_7574; method_44377 getAbuseReportContext + m ()Lnet/minecraft/class_12180$class_12181; method_75308 newGizmoScope + m (Lnet/minecraft/class_1297;)V method_1504 setCameraEntity + p 1 entity + m ()Ljava/util/Collection; method_75309 getGizmos + m ()V method_1490 stop + m (ZLnet/minecraft/class_310$class_8764;)Ljava/util/concurrent/CompletableFuture; method_36561 reloadResources + p 1 force + p 2 loadingContext + m ()Lnet/minecraft/class_824; method_31975 getBlockEntityRenderDispatcher + m ()Lnet/minecraft/class_10093; method_61963 getMapTextureManager + m ()Lnet/minecraft/class_7594; method_44714 getMessageHandler + m (Lnet/minecraft/class_2561;)V method_1510 method_1510 + p 0 status + m (Lnet/minecraft/class_6396;Ljava/util/List;)Ljava/nio/file/Path; method_37275 saveProfilingResult + p 1 details + p 2 files + m ()Lnet/minecraft/class_1132; method_1576 getServer + c Gets this client's own integrated server.\n\n

The integrated server is only present when a local single player world is open. + m ()Z method_1530 isDemo + m ()Z method_1542 isInSingleplayer + m ()Z method_1569 isWindowFocused + m (Ljava/util/function/Consumer;Ljava/nio/file/Path;)V method_37283 method_37283 + p 1 path + m (Lnet/minecraft/class_437;Z)V method_76795 disconnect + p 2 transferring + p 1 disconnectionScreen + m (Lcom/mojang/authlib/minecraft/BanDetails;Ljava/lang/Runnable;)Lnet/minecraft/class_437; method_53520 method_53520 + p 1 onClose + m (Lnet/minecraft/class_6396;Ljava/util/function/Consumer;Ljava/util/List;)V method_37276 method_37276 + p 3 files + m (Lcom/mojang/authlib/yggdrasil/YggdrasilAuthenticationService;Lnet/minecraft/class_542;)Lcom/mojang/authlib/minecraft/UserApiService; method_31382 createUserApiService + p 1 authService + p 2 runArgs + m (Ljava/lang/Throwable;Lnet/minecraft/class_2561;Lnet/minecraft/class_310$class_8764;)V method_31186 onResourceReloadFailure + p 3 loadingContext + p 2 resourceName + p 1 exception + m ()V method_24288 updateWindowTitle + m ()Lnet/minecraft/class_11786; method_73362 getPlayerSkinCache + m ()Lnet/minecraft/class_5195; method_1544 getMusicInstance + m (Lnet/minecraft/class_437;)V method_29970 setScreenAndRender + p 1 screen + m ()V method_49294 onForcedResourceReloadFailure + m ()Ljava/util/concurrent/CompletableFuture; method_1513 reloadResourcesConcurrently + m (Ljava/io/File;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_35704 method_35704 + p 1 style + m (Lnet/minecraft/class_128;)V method_54580 printCrashReport + p 1 crashReport + m ()Lnet/minecraft/class_642; method_1558 getCurrentServerEntry + m ()Lnet/minecraft/class_1071; method_1582 getSkinProvider + m (Ljava/lang/Runnable;Z)V method_53524 method_53524 + p 1 confirmed + m ()Lnet/minecraft/class_5599; method_31974 getLoadedEntityModels + m ()J method_47600 getRenderTime + m ()Lnet/minecraft/class_374; method_1566 getToastManager + m ()Z method_72704 isOfflineDeveloperMode + m (I)V method_24041 setMipmapLevels + p 1 mipmapLevels + m ()Lnet/minecraft/class_7196; method_41735 createIntegratedServerLoader + m ()F method_75759 getMusicVolume + m ()Lnet/minecraft/class_4599; method_22940 getBufferBuilders + m ()V method_1511 doItemPick + m ()Lnet/minecraft/class_1092; method_1554 getBakedModelManager + m ()Z method_47595 isOptionalTelemetryEnabledByApi + m ()Z method_22108 isRunning + m (Lnet/minecraft/class_310;Lnet/minecraft/class_1076;Ljava/lang/String;Lnet/minecraft/class_315;Lnet/minecraft/class_128;)V method_22681 addSystemDetailsToCrashReport + p 4 report + p 1 languageManager + p 0 client + p 3 options + p 2 version + m (Lnet/minecraft/class_4071;)V method_18502 setOverlay + p 1 overlay + m (Lnet/minecraft/class_2561;)V method_49292 showResourceReloadFailureToast + p 1 description + m (Ljava/lang/Throwable;Lnet/minecraft/class_310$class_8764;)V method_24226 handleResourceReloadException + p 2 loadingContext + p 1 throwable + m (Lnet/minecraft/class_338$class_11732;)V method_29041 openChatScreen + p 1 method + m ()Lnet/minecraft/class_302; method_1571 getCreativeHotbarStorage + m (Lnet/minecraft/class_638;)V method_1481 joinWorld + p 1 world + m ()Lnet/minecraft/class_1076; method_1526 getLanguageManager + m ()Z method_47596 isTelemetryEnabledByApi + m ()Lnet/minecraft/class_310; method_1551 getInstance + m (Lnet/minecraft/class_310$class_8764;Ljava/lang/Throwable;)V method_53521 method_53521 + p 2 throwable + m (Ljava/util/List;)Z method_53525 createInitScreens + p 1 list + m (Lnet/minecraft/class_310$class_8764;)Ljava/lang/Runnable; method_53527 onInitFinished + p 1 loadingContext + m (Lnet/minecraft/class_310$class_8764;)V method_53465 onFinishedLoading + p 1 loadingContext + m (Ljava/lang/Exception;)V method_63507 onShaderResourceReloadFailure + p 1 exception + m (Lnet/minecraft/class_8015;)V method_48185 setNavigationType + p 1 navigationType + m ()V method_72099 disconnectWithSavingScreen + m ()Lnet/minecraft/class_11697; method_72703 getAtlasManager + m (Lnet/minecraft/class_638;)V method_76796 setWorld + p 1 world + m (Z)V method_44352 method_44352 + p 1 confirmed + m ()Z method_47602 isOptionalTelemetryEnabled + m ()Z method_1493 isPaused + m (Lnet/minecraft/class_437;)V method_52703 enterReconfiguration + p 1 reconfigurationScreen + m ()Lnet/minecraft/class_7578; method_44646 getRealmsPeriodicCheckers + m ()V method_55505 onDisconnected + m ()Lnet/minecraft/class_330; method_61965 getMapRenderer + m ()Z method_29043 isMultiplayerEnabled + m ()Lnet/minecraft/class_276; method_1522 getFramebuffer + m ()Lnet/minecraft/class_1156; method_1577 getTutorialManager + m ()Z method_1496 isIntegratedServerRunning + m ()Lnet/minecraft/class_7497; method_73361 getApiServices + m ()Lnet/minecraft/class_11327; method_71267 getWaypointStyleAssetManager + m ()Z method_1536 doAttack + m (Ljava/util/function/Consumer;Lnet/minecraft/class_3696;)V method_37290 method_37290 + p 2 result + m ()Ljava/util/concurrent/CompletableFuture; method_1521 reloadResources + m ()Lnet/minecraft/class_6683; method_24289 getModStatus + m ()Z method_33883 shouldFilterText + m (Ljava/io/File;Lnet/minecraft/class_128;)I method_61962 saveCrashReport + p 0 runDir + p 1 crashReport + m ()Lcom/mojang/authlib/GameProfile; method_53462 getGameProfile + m ()Lnet/minecraft/class_918; method_1480 getItemRenderer + m ()Lnet/minecraft/class_3300; method_1478 getResourceManager + m ()Lnet/minecraft/class_324; method_1505 getBlockColors + m ()Ljava/lang/String; method_54578 getLauncherBrand + m (IJ)V method_1506 handleGlErrorByDisableVsync + p 1 error + p 2 description + m ()I method_47599 getCurrentFps + m ()Z method_74189 isAltPressed + m ()V method_1592 scheduleStop + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_18507 method_18507 + p 0 future + m (Z)V method_20539 openGameMenu + c Opens the "game menu", also called "pause menu".\n\n

This is also used for menu-less pausing, which can be triggered by\npressing Esc and F3 keys at the same time.\n\n@implNote Calling this does not immediately pause the game. Instead,\nthe game is paused during {@linkplain #render the next rendering}. + p 1 pauseOnly + c whether to trigger menu-less pausing instead of opening the game menu + m ()V method_1583 doItemUse + m (ZLnet/minecraft/class_310$class_8764;Ljava/util/concurrent/CompletableFuture;Ljava/util/Optional;)V method_24228 method_24228 + p 4 error + m (Lnet/minecraft/class_3696;)V method_37277 method_37277 + p 0 result + m (Lnet/minecraft/class_310$class_8764;Ljava/util/Optional;)V method_53522 method_53522 + p 2 error + m ()Lnet/minecraft/class_5520; method_31320 getSocialInteractionsManager + m ()Z method_74188 isCtrlPressed + m (D)Ljava/lang/String; method_54116 formatSeconds + p 0 seconds + m ()Lnet/minecraft/class_8657; method_52700 getCommandHistoryManager + m (Lnet/minecraft/class_128;)V method_1494 setCrashReportSupplierAndAddDetails + p 1 crashReport + m ()Z method_73196 canSwitchGameMode + m ()Lnet/minecraft/class_1066; method_1516 getServerResourcePackProvider + m (Ljava/io/File;)Lnet/minecraft/class_2561; method_35698 takePanorama + c Takes a panorama. The panorama is stored in the given {@code directory}, in\nwhere 6 screenshots of size {@code width} and {@code height} will be taken.\n\n@return a user-oriented piece of text for screenshot result + p 1 directory + m ()Z method_53466 isFinishedLoading + m ()Z method_1498 isHudEnabled + m (Z)V method_1523 render + p 1 tick + m ()Lnet/minecraft/class_8015; method_48186 getNavigationType + m ()V method_54579 printCrashReport + m (Lnet/minecraft/class_129;)V method_54117 addUptimesToCrashReport + p 1 section + m ()Lnet/minecraft/class_10442; method_65386 getItemModelManager + m ()Lnet/minecraft/class_1060; method_1531 getTextureManager + m (Lnet/minecraft/class_437;)V method_1507 setScreen + c Sets the current screen to a new screen.\n\n

If the screen being opened is {@code null}:\n

    \n
  • if the client is not in game, the title screen will be opened
  • \n
  • if the {@linkplain #player} is dead, the death screen will be opened
  • \n
\n\n

If there is an open screen when the current screen is changed, {@link Screen#removed()}\nwill be called on it to notify it of the closing. + p 1 screen + m (Lnet/minecraft/class_128;)Lnet/minecraft/class_128; method_1587 addDetailsToCrashReport + p 1 report + m ()V method_1514 run + m ()Lcom/mojang/authlib/minecraft/BanDetails; method_44647 getMultiplayerBanDetails + m ()Z method_74187 isShiftPressed + m (F)F method_54785 getTargetMillisPerTick + p 1 millis + m ()V method_72100 disconnectWithProgressScreen + m (Z)V method_1590 handleBlockBreaking + p 1 breaking + m (ZLnet/minecraft/class_310$class_8764;Ljava/lang/Throwable;)V method_49293 method_49293 + p 3 throwable + m ()Lnet/minecraft/class_1142; method_1538 getMusicTracker + m (Ljava/nio/file/Path;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_37281 method_37281 + p 1 style + m ()Ljava/util/Optional; method_72098 getQuickActionsDialog + m ()Lnet/minecraft/class_1144; method_1483 getSoundManager + m ()Ljava/lang/String; method_1547 getVersionType + m ()Lnet/minecraft/class_1297; method_1560 getCameraEntity + m ()Lnet/minecraft/class_898; method_1561 getEntityRenderDispatcher + m ()Lnet/minecraft/class_4008; method_18095 getSplashTextLoader + m (Lnet/minecraft/class_6880$class_6883;)V method_64035 method_64035 + p 0 item + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_6885$class_6888;)Ljava/util/Optional; method_72097 method_72097 + p 1 quickActionsDialogs + m (Z)V method_76797 disconnectWithProgressScreen + p 1 stopSounds + m (Ljava/lang/Runnable;)Lnet/minecraft/class_437; method_53523 method_53523 + p 1 onClose + m (Lnet/minecraft/class_437;ZZ)V method_18096 disconnect + p 2 transferring + p 1 disconnectionScreen + p 3 stopSounds + m (Lnet/minecraft/class_2561;)V method_35701 method_35701 + p 0 message + m ()V method_37286 stopRecorder + m ()Lcom/mojang/datafixers/DataFixer; method_1543 getDataFixer + m ()Z method_1573 forcesUnicodeFont + m (Lnet/minecraft/class_7569;)V method_44376 ensureAbuseReportContext + c Recreates and resets {@link #abuseReportContext} if {@code environment} has\nchanged. + p 1 environment + m ()Lnet/minecraft/class_4071; method_18506 getOverlay + m ()Lnet/minecraft/class_3283; method_1520 getResourcePackManager + m ()Ljava/lang/String; method_24287 getWindowTitle + m (Lnet/minecraft/class_2960;Lcom/mojang/blaze3d/shaders/ShaderType;)Ljava/lang/String; method_68467 method_68467 + p 1 id + p 2 type + m ()Z method_47392 isConnectedToLocalServer + m ()Lnet/minecraft/class_333; method_44713 getNarratorManager + m (Lnet/minecraft/class_542;)V + p 1 args + m ()Ljava/net/Proxy; method_1487 getNetworkProxy + m ()Lnet/minecraft/class_9919; method_61964 getInactivityFpsLimiter + m ()Lnet/minecraft/class_11980; method_74186 getPacketApplyBatcher + m (Lnet/minecraft/class_128;)V method_43587 setCrashReportSupplier + p 1 crashReport + m ()Lnet/minecraft/class_310$class_5859; method_33884 getChatRestriction + m ()Lnet/minecraft/class_9779; method_61966 getRenderTickCounter +c net/minecraft/class_310$class_8764 net/minecraft/client/MinecraftClient$LoadingContext + f Lnet/minecraft/class_542$class_8495; comp_1907 quickPlayData + f Lnet/minecraft/class_4341; comp_1906 realmsClient + m ()Lnet/minecraft/class_4341; comp_1906 realmsClient + m ()Lnet/minecraft/class_542$class_8495; comp_1907 quickPlayData + m (Lnet/minecraft/class_4341;Lnet/minecraft/class_542$class_8495;)V + p 1 realmsClient + p 2 quickPlayData +c net/minecraft/class_310$1 net/minecraft/client/MinecraftClient$1 + f Z field_52756 closed +c net/minecraft/class_310$class_5859 net/minecraft/client/MinecraftClient$ChatRestriction + c Represents the restrictions on chat on a Minecraft client.\n\n@see MinecraftClient#getChatRestriction() + f Lnet/minecraft/class_2561; field_28944 description + f Lnet/minecraft/class_2561; field_39456 MORE_INFO_TEXT + f Lnet/minecraft/class_310$class_5859; field_28940 ENABLED + f Lnet/minecraft/class_310$class_5859; field_28943 DISABLED_BY_PROFILE + f Lnet/minecraft/class_310$class_5859; field_28942 DISABLED_BY_LAUNCHER + f Lnet/minecraft/class_310$class_5859; field_28941 DISABLED_BY_OPTIONS + m (Ljava/lang/String;ILnet/minecraft/class_2561;)V + p 3 description + m (Z)Z method_33886 allowsChat + p 1 singlePlayer + m ()Lnet/minecraft/class_2561; method_33885 getDescription +c net/minecraft/class_2189 net/minecraft/block/AirBlock + f Lcom/mojang/serialization/MapCodec; field_46253 CODEC +c net/minecraft/class_309 net/minecraft/client/Keyboard + f Lnet/minecraft/class_3674; field_16241 clipboard + f Lorg/slf4j/Logger; field_60432 LOGGER + f J field_1682 debugCrashStartTime + f Lnet/minecraft/class_310; field_1678 client + f J field_1680 debugCrashElapsedTime + f I field_32143 DEBUG_CRASH_TIME + f J field_1681 debugCrashLastLogTime + f Z field_1679 switchF3State + m (Ljava/lang/String;)V method_75915 debugLog + p 1 message + m (Lnet/minecraft/class_2561;)V method_1456 debugError + p 1 message + m (Lnet/minecraft/class_2561;)V method_70818 sendMessage + p 1 message + m (Lnet/minecraft/class_310;)V + p 1 client + m (IJ)V method_1461 method_1461 + p 1 error + p 2 description + m (ZZ)V method_1465 copyLookAt + p 2 queryServer + p 1 hasQueryPermission + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2487;)V method_1475 copyBlock + p 1 state + p 2 pos + p 3 nbt + m (Lnet/minecraft/class_124;Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_37273 getDebugMessage + p 1 message + p 0 formatting + m (Lnet/minecraft/class_2561;)V method_37272 debugLog + p 1 text + m (JIIII)V method_22676 method_22676 + p 1 handle + p 3 key + p 4 scancode + p 5 action + p 6 modifiers + m (Ljava/nio/file/Path;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_49711 method_49711 + p 1 style + m (Lnet/minecraft/class_2561;)V method_1463 method_1463 + p 1 message + m (Ljava/lang/String;)V method_1455 setClipboard + p 1 clipboard + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2487;)V method_1467 method_1467 + p 3 nbt + m ()Ljava/lang/String; method_1460 getClipboard + m (Ljava/lang/String;[Ljava/lang/Object;)V method_1459 debugLog + p 2 args + p 1 key + m (Lnet/minecraft/class_11908;)Z method_1468 processF3 + p 1 key + m (JLnet/minecraft/class_11905;)V method_1457 onChar + p 1 window + p 3 input + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_1297;Lnet/minecraft/class_2487;)V method_1471 method_1471 + p 3 nbt + m (Lnet/minecraft/class_1041;)V method_1472 setup + p 1 window + m ()V method_1474 pollDebugCrash + m (JILnet/minecraft/class_11908;)V method_1466 onKey + p 3 action + p 1 window + p 4 input + m (Ljava/lang/String;Z)V method_75914 debugLog + p 1 message + p 2 value + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_243;Lnet/minecraft/class_2487;)V method_1469 copyEntity + p 1 id + p 3 nbt + p 2 pos + m (Lnet/minecraft/class_11908;)Z method_35696 processDebugKeys + p 1 input + m (JII)V method_22675 method_22675 + p 1 window + p 3 codePoint + p 4 modifiers +c net/minecraft/class_308 net/minecraft/client/render/DiffuseLighting + f Lorg/joml/Vector3f; field_24428 DARKENED_DIFFUSION_LIGHT_0 + f Lorg/joml/Vector3f; field_24429 DARKENED_DIFFUSION_LIGHT_1 + f Lorg/joml/Vector3f; field_29568 INVENTORY_DIFFUSION_LIGHT_1 + f Lorg/joml/Vector3f; field_24426 DEFAULT_DIFFUSION_LIGHT_0 + f Lorg/joml/Vector3f; field_29567 INVENTORY_DIFFUSION_LIGHT_0 + f Lorg/joml/Vector3f; field_24427 DEFAULT_DIFFUSION_LIGHT_1 + f I field_60022 UBO_SIZE + f J field_60024 roundedUboSize + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_60023 buffer + m (Lnet/minecraft/class_308$class_11274;Lorg/joml/Vector3f;Lorg/joml/Vector3f;)V method_71035 updateBuffer + p 3 light1Diffusion + p 2 light0Diffusion + p 1 type + m (Lnet/minecraft/class_2874$class_12325;)V method_71036 updateLevelBuffer + m (Lnet/minecraft/class_308$class_11274;)V method_71034 setShaderLights + p 1 type +c net/minecraft/class_308$class_11274 net/minecraft/client/render/DiffuseLighting$Type + f Lnet/minecraft/class_308$class_11274; field_60025 LEVEL + f Lnet/minecraft/class_308$class_11274; field_60026 ITEMS_FLAT + f Lnet/minecraft/class_308$class_11274; field_60027 ITEMS_3D + f Lnet/minecraft/class_308$class_11274; field_60028 ENTITY_IN_UI + f Lnet/minecraft/class_308$class_11274; field_60029 PLAYER_SKIN +c net/minecraft/class_3481 net/minecraft/registry/tag/BlockTags + f Lnet/minecraft/class_6862; field_35567 ANIMALS_SPAWNABLE_ON + f Lnet/minecraft/class_6862; field_35569 GOATS_SPAWNABLE_ON + f Lnet/minecraft/class_6862; field_35568 AXOLOTLS_SPAWNABLE_ON + f Lnet/minecraft/class_6862; field_35570 MOOSHROOMS_SPAWNABLE_ON + f Lnet/minecraft/class_6862; field_35572 POLAR_BEARS_SPAWNABLE_ON_ALTERNATE + f Lnet/minecraft/class_6862; field_35571 PARROTS_SPAWNABLE_ON + f Lnet/minecraft/class_6862; field_49930 INCORRECT_FOR_WOODEN_TOOL + f Lnet/minecraft/class_6862; field_38928 FROGS_SPAWNABLE_ON + f Lnet/minecraft/class_6862; field_22274 WITHER_SUMMON_BASE_BLOCKS + f Lnet/minecraft/class_6862; field_39029 SNAPS_GOAT_HORN + f Lnet/minecraft/class_6862; field_25739 MUSHROOM_GROW_BLOCK + f Lnet/minecraft/class_6862; field_23209 STRIDER_WARM_BLOCKS + f Lnet/minecraft/class_6862; field_35574 FOXES_SPAWNABLE_ON + f Lnet/minecraft/class_6862; field_35575 WOLVES_SPAWNABLE_ON + f Lnet/minecraft/class_6862; field_59659 TRIGGERS_AMBIENT_DESERT_SAND_BLOCK_SOUNDS + f Lnet/minecraft/class_6862; field_35573 RABBITS_SPAWNABLE_ON + f Lnet/minecraft/class_6862; field_35443 BIG_DRIPLEAF_PLACEABLE + f Lnet/minecraft/class_6862; field_23210 LOGS_THAT_BURN + f Lnet/minecraft/class_6862; field_22275 BEACON_BASE_BLOCKS + f Lnet/minecraft/class_6862; field_22276 WALL_POST_OVERRIDE + f Lnet/minecraft/class_6862; field_59660 TRIGGERS_AMBIENT_DESERT_DRY_VEGETATION_BLOCK_SOUNDS + f Lnet/minecraft/class_6862; field_45063 CONCRETE_POWDER + f Lnet/minecraft/class_6862; field_45064 CAMEL_SAND_STEP_SOUND_BLOCKS + f Lnet/minecraft/class_6862; field_61890 BARS + f Lnet/minecraft/class_6862; field_39030 OVERWORLD_NATURAL_LOGS + f Lnet/minecraft/class_6862; field_38835 DAMPENS_VIBRATIONS + f Lnet/minecraft/class_6862; field_38833 NETHER_CARVER_REPLACEABLES + f Lnet/minecraft/class_6862; field_38834 COMPLETES_FIND_TREE_TUTORIAL + f Lnet/minecraft/class_6862; field_38832 OVERWORLD_CARVER_REPLACEABLES + f Lnet/minecraft/class_6862; field_21956 WARPED_STEMS + f Lnet/minecraft/class_6862; field_21955 CRIMSON_STEMS + f Lnet/minecraft/class_6862; field_21952 FIRE + f Lnet/minecraft/class_6862; field_21954 WART_BLOCKS + f Lnet/minecraft/class_6862; field_21953 NYLIUM + f Lnet/minecraft/class_6862; field_23119 SOUL_FIRE_BASE_BLOCKS + f Lnet/minecraft/class_6862; field_61888 CHAINS + f Lnet/minecraft/class_6862; field_61889 LANTERNS + f Lnet/minecraft/class_6862; field_54553 PALE_OAK_LOGS + f Lnet/minecraft/class_6862; field_52288 MOB_INTERACTABLE_DOORS + f Lnet/minecraft/class_6862; field_24459 PREVENT_MOB_SPAWNING_INSIDE + f Lnet/minecraft/class_6862; field_26986 CRYSTAL_SOUND_BLOCKS + f Lnet/minecraft/class_6862; field_26985 CAULDRONS + f Lnet/minecraft/class_6862; field_26984 CANDLE_CAKES + f Lnet/minecraft/class_6862; field_26983 CANDLES + f Lnet/minecraft/class_6862; field_55617 SWORD_INSTANTLY_MINES + f Lnet/minecraft/class_6862; field_55618 REPLACEABLE_BY_MUSHROOMS + f Lnet/minecraft/class_6862; field_38374 ANCIENT_CITY_REPLACEABLE + f Lnet/minecraft/class_6862; field_15479 WOOL_CARPETS + f Lnet/minecraft/class_6862; field_15471 PLANKS + f Lnet/minecraft/class_6862; field_15470 FLOWER_POTS + f Lnet/minecraft/class_6862; field_15472 STANDING_SIGNS + f Lnet/minecraft/class_6862; field_15475 LOGS + f Lnet/minecraft/class_6862; field_15474 JUNGLE_LOGS + f Lnet/minecraft/class_6862; field_15478 VALID_SPAWN + f Lnet/minecraft/class_6862; field_15477 WOODEN_PRESSURE_PLATES + f Lnet/minecraft/class_6862; field_15476 WALL_CORALS + f Lnet/minecraft/class_6862; field_15481 WOOL + f Lnet/minecraft/class_6862; field_49147 DOES_NOT_BLOCK_HOPPERS + f Lnet/minecraft/class_6862; field_15480 SMALL_FLOWERS + f Lnet/minecraft/class_6862; field_17619 WOODEN_FENCES + f Lnet/minecraft/class_6862; field_43172 TRAIL_RUINS_REPLACEABLE + f Lnet/minecraft/class_6862; field_17753 DRAGON_IMMUNE + f Lnet/minecraft/class_6862; field_17754 WITHER_IMMUNE + f Lnet/minecraft/class_6862; field_21490 SHULKER_BOXES + f Lnet/minecraft/class_6862; field_15483 CORAL_PLANTS + f Lnet/minecraft/class_6862; field_15482 OAK_LOGS + f Lnet/minecraft/class_6862; field_15485 DARK_OAK_LOGS + f Lnet/minecraft/class_6862; field_55195 BEE_ATTRACTIVE + f Lnet/minecraft/class_6862; field_15487 TRAPDOORS + f Lnet/minecraft/class_6862; field_15486 ANVIL + f Lnet/minecraft/class_6862; field_15489 SPRUCE_LOGS + f Lnet/minecraft/class_6862; field_15488 CORALS + f Lnet/minecraft/class_6862; field_15491 WOODEN_TRAPDOORS + f Lnet/minecraft/class_6862; field_15490 IMPERMEABLE + f Lnet/minecraft/class_6862; field_15493 BUTTONS + f Lnet/minecraft/class_6862; field_15492 WALL_SIGNS + f Lnet/minecraft/class_6862; field_15495 DOORS + f Lnet/minecraft/class_6862; field_15494 WOODEN_DOORS + f Lnet/minecraft/class_6862; field_15497 BAMBOO_PLANTABLE_ON + f Lnet/minecraft/class_6862; field_15496 UNDERWATER_BONEMEALS + f Lnet/minecraft/class_6862; field_15499 WOODEN_BUTTONS + f Lnet/minecraft/class_6862; field_15498 BIRCH_LOGS + f Lnet/minecraft/class_6862; field_42968 SMELTS_TO_GLASS + f Lnet/minecraft/class_6862; field_16443 BEDS + f Lnet/minecraft/class_6862; field_25807 BASE_STONE_NETHER + f Lnet/minecraft/class_6862; field_25806 BASE_STONE_OVERWORLD + f Lnet/minecraft/class_6862; field_22465 PIGLIN_REPELLENTS + f Lnet/minecraft/class_6862; field_42607 SNIFFER_DIGGABLE_BLOCK + f Lnet/minecraft/class_6862; field_42608 CHERRY_LOGS + f Lnet/minecraft/class_6862; field_63247 CAN_GLIDE_THROUGH + f Lnet/minecraft/class_6862; field_16584 FENCES + f Lnet/minecraft/class_6862; field_23799 CAMPFIRES + f Lnet/minecraft/class_6862; field_22466 HOGLIN_REPELLENTS + f Lnet/minecraft/class_6862; field_49050 BADLANDS_TERRACOTTA + f Lnet/minecraft/class_6862; field_49051 BLOCKS_WIND_CHARGE_EXPLOSIONS + f Lnet/minecraft/class_6862; field_49929 INCORRECT_FOR_GOLD_TOOL + f Lnet/minecraft/class_6862; field_40103 CEILING_HANGING_SIGNS + f Lnet/minecraft/class_6862; field_40104 WALL_HANGING_SIGNS + f Lnet/minecraft/class_6862; field_40105 ALL_HANGING_SIGNS + f Lnet/minecraft/class_6862; field_40107 INVALID_SPAWN_INSIDE + f Lnet/minecraft/class_6862; field_49925 INCORRECT_FOR_NETHERITE_TOOL + f Lnet/minecraft/class_6862; field_49926 INCORRECT_FOR_DIAMOND_TOOL + f Lnet/minecraft/class_6862; field_49927 INCORRECT_FOR_IRON_TOOL + f Lnet/minecraft/class_6862; field_49928 INCORRECT_FOR_STONE_TOOL + f Lnet/minecraft/class_6862; field_39105 SNOW_LAYER_CAN_SURVIVE_ON + f Lnet/minecraft/class_6862; field_39104 SNOW_LAYER_CANNOT_SURVIVE_ON + f Lnet/minecraft/class_6862; field_23800 GUARDED_BY_PIGLINS + f Lnet/minecraft/class_6862; field_29193 COAL_ORES + f Lnet/minecraft/class_6862; field_20339 FLOWERS + f Lnet/minecraft/class_6862; field_29195 COPPER_ORES + f Lnet/minecraft/class_6862; field_29194 EMERALD_ORES + f Lnet/minecraft/class_6862; field_29196 LUSH_GROUND_REPLACEABLE + f Lnet/minecraft/class_6862; field_33641 SMALL_DRIPLEAF_PLACEABLE + f Lnet/minecraft/class_6862; field_40986 BAMBOO_BLOCKS + f Lnet/minecraft/class_6862; field_20342 BEE_GROWABLES + f Lnet/minecraft/class_6862; field_20341 CROPS + f Lnet/minecraft/class_6862; field_20340 BEEHIVES + f Lnet/minecraft/class_6862; field_28988 IRON_ORES + f Lnet/minecraft/class_6862; field_28989 DIAMOND_ORES + f Lnet/minecraft/class_6862; field_48282 ARMADILLO_SPAWNABLE_ON + f Lnet/minecraft/class_6862; field_44589 MAINTAINS_FARMLAND + f Lnet/minecraft/class_6862; field_28990 REDSTONE_ORES + f Lnet/minecraft/class_6862; field_28991 LAPIS_ORES + f Lnet/minecraft/class_6862; field_28992 STONE_ORE_REPLACEABLES + f Lnet/minecraft/class_6862; field_28993 DEEPSLATE_ORE_REPLACEABLES + f Lnet/minecraft/class_6862; field_60164 TRIGGERS_AMBIENT_DRIED_GHAST_BLOCK_SOUNDS + f Lnet/minecraft/class_6862; field_60163 HAPPY_GHAST_AVOIDS + f Lnet/minecraft/class_6862; field_38692 MANGROVE_LOGS_CAN_GROW_THROUGH + f Lnet/minecraft/class_6862; field_38693 MANGROVE_ROOTS_CAN_GROW_THROUGH + f Lnet/minecraft/class_6862; field_24077 STONE_PRESSURE_PLATES + f Lnet/minecraft/class_6862; field_24076 PRESSURE_PLATES + f Lnet/minecraft/class_6862; field_25148 UNSTABLE_BOTTOM_CENTER + f Lnet/minecraft/class_6862; field_25147 FENCE_GATES + f Lnet/minecraft/class_6862; field_44470 REPLACEABLE_BY_TREES + f Lnet/minecraft/class_6862; field_37399 SCULK_REPLACEABLE + f Lnet/minecraft/class_6862; field_44473 ENCHANTMENT_POWER_TRANSMITTER + f Lnet/minecraft/class_6862; field_37396 DRAGON_TRANSPARENT + f Lnet/minecraft/class_6862; field_44471 REPLACEABLE + f Lnet/minecraft/class_6862; field_37398 FROG_PREFER_JUMP_TO + f Lnet/minecraft/class_6862; field_44472 ENCHANTMENT_POWER_PROVIDER + f Lnet/minecraft/class_6862; field_37397 CONVERTABLE_TO_MUD + f Lnet/minecraft/class_6862; field_54057 BATS_SPAWNABLE_ON + f Lnet/minecraft/class_6862; field_28621 CAVE_VINES + f Lnet/minecraft/class_6862; field_28622 MOSS_REPLACEABLE + f Lnet/minecraft/class_6862; field_29823 SNOW + f Lnet/minecraft/class_6862; field_29822 DIRT + f Lnet/minecraft/class_6862; field_44590 STONE_BUTTONS + f Lnet/minecraft/class_6862; field_44469 SWORD_EFFICIENT + f Lnet/minecraft/class_6862; field_43171 SNIFFER_EGG_HATCH_BOOST + f Lnet/minecraft/class_6862; field_43170 COMBINATION_STEP_SOUND_BLOCKS + f Lnet/minecraft/class_6862; field_15458 ACACIA_LOGS + f Lnet/minecraft/class_6862; field_15459 STAIRS + f Lnet/minecraft/class_6862; field_43169 VIBRATION_RESONATORS + f Lnet/minecraft/class_6862; field_22414 CLIMBABLE + f Lnet/minecraft/class_6862; field_15468 WOODEN_SLABS + f Lnet/minecraft/class_6862; field_15467 ICE + f Lnet/minecraft/class_6862; field_15466 SAND + f Lnet/minecraft/class_6862; field_15469 SLABS + f Lnet/minecraft/class_6862; field_15461 CORAL_BLOCKS + f Lnet/minecraft/class_6862; field_15460 ENDERMAN_HOLDABLE + f Lnet/minecraft/class_6862; field_15463 RAILS + f Lnet/minecraft/class_6862; field_15462 SAPLINGS + f Lnet/minecraft/class_6862; field_15465 STONE_BRICKS + f Lnet/minecraft/class_6862; field_36327 FALL_DAMAGE_RESETTING + f Lnet/minecraft/class_6862; field_56613 CAMELS_SPAWNABLE_ON + f Lnet/minecraft/class_6862; field_28040 INSIDE_STEP_SOUND_BLOCKS + f Lnet/minecraft/class_6862; field_37401 MANGROVE_LOGS + f Lnet/minecraft/class_6862; field_37400 SCULK_REPLACEABLE_WORLD_GEN + f Lnet/minecraft/class_6862; field_33716 SHOVEL_MINEABLE + f Lnet/minecraft/class_6862; field_33717 NEEDS_DIAMOND_TOOL + f Lnet/minecraft/class_6862; field_41282 ALL_SIGNS + f Lnet/minecraft/class_6862; field_33718 NEEDS_IRON_TOOL + f Lnet/minecraft/class_6862; field_33719 NEEDS_STONE_TOOL + f Lnet/minecraft/class_6862; field_33713 AXE_MINEABLE + f Lnet/minecraft/class_6862; field_33714 HOE_MINEABLE + f Lnet/minecraft/class_6862; field_33715 PICKAXE_MINEABLE + f Lnet/minecraft/class_6862; field_25589 INFINIBURN_NETHER + f Lnet/minecraft/class_6862; field_25588 INFINIBURN_OVERWORLD + f Lnet/minecraft/class_6862; field_23063 SOUL_SPEED_BLOCKS + f Lnet/minecraft/class_6862; field_25590 INFINIBURN_END + f Lnet/minecraft/class_6862; field_23062 GOLD_ORES + f Lnet/minecraft/class_6862; field_61208 COPPER + f Lnet/minecraft/class_6862; field_61209 COPPER_GOLEM_STATUES + f Lnet/minecraft/class_6862; field_61206 COPPER_CHESTS + f Lnet/minecraft/class_6862; field_61207 LIGHTNING_RODS + f Lnet/minecraft/class_6862; field_61210 INCORRECT_FOR_COPPER_TOOL + f Lnet/minecraft/class_6862; field_61211 WOODEN_SHELVES + f Lnet/minecraft/class_6862; field_56528 EDIBLE_FOR_SHEEP + f Lnet/minecraft/class_6862; field_56529 DRY_VEGETATION_MAY_PLACE_ON + f Lnet/minecraft/class_6862; field_33862 LAVA_POOL_STONE_CANNOT_REPLACE + f Lnet/minecraft/class_6862; field_33863 GEODE_INVALID_BLOCKS + f Lnet/minecraft/class_6862; field_51989 AIR + f Lnet/minecraft/class_6862; field_28088 OCCLUDES_VIBRATION_SIGNALS + f Lnet/minecraft/class_6862; field_28089 DRIPSTONE_REPLACEABLE_BLOCKS + f Lnet/minecraft/class_6862; field_36265 TERRACOTTA + f Lnet/minecraft/class_6862; field_36268 AZALEA_ROOT_REPLACEABLE + f Lnet/minecraft/class_6862; field_36266 AZALEA_GROWS_ON + f Lnet/minecraft/class_6862; field_15501 BANNERS + f Lnet/minecraft/class_6862; field_15500 SIGNS + f Lnet/minecraft/class_6862; field_15503 LEAVES + f Lnet/minecraft/class_6862; field_15502 WOODEN_STAIRS + f Lnet/minecraft/class_6862; field_15504 WALLS + f Lnet/minecraft/class_6862; field_33757 FEATURES_CANNOT_REPLACE + f Lnet/minecraft/class_6862; field_21780 PORTALS + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_15069 of + p 0 id +c net/minecraft/class_3483 net/minecraft/registry/tag/EntityTypeTags + f Lnet/minecraft/class_6862; field_48713 NO_ANGER_FROM_WIND_CHARGE + f Lnet/minecraft/class_6862; field_59662 FOLLOWABLE_FRIENDLY_MOBS + f Lnet/minecraft/class_6862; field_59661 CAN_EQUIP_HARNESS + f Lnet/minecraft/class_6862; field_55932 CAN_EQUIP_SADDLE + f Lnet/minecraft/class_6862; field_63249 CAN_WEAR_NAUTILUS_ARMOR + f Lnet/minecraft/class_6862; field_63251 BURN_IN_DAYLIGHT + f Lnet/minecraft/class_6862; field_63250 NAUTILUS_HOSTILES + f Lnet/minecraft/class_6862; field_49931 SENSITIVE_TO_SMITE + f Lnet/minecraft/class_6862; field_64114 CAN_FLOAT_WHILE_RIDDEN + f Lnet/minecraft/class_6862; field_47578 CAN_TURN_IN_BOATS + f Lnet/minecraft/class_6862; field_46232 UNDEAD + f Lnet/minecraft/class_6862; field_46231 ZOMBIES + f Lnet/minecraft/class_6862; field_46233 CAN_BREATHE_UNDER_WATER + f Lnet/minecraft/class_6862; field_45066 NON_CONTROLLING_RIDER + f Lnet/minecraft/class_6862; field_61983 ACCEPTS_IRON_GOLEM_GIFT + f Lnet/minecraft/class_6862; field_61984 CANDIDATE_FOR_IRON_GOLEM_GIFT + f Lnet/minecraft/class_6862; field_61982 CANNOT_BE_PUSHED_ONTO_BOATS + f Lnet/minecraft/class_6862; field_54404 BOAT + f Lnet/minecraft/class_6862; field_19168 RAIDERS + f Lnet/minecraft/class_6862; field_22415 IMPACT_PROJECTILES + f Lnet/minecraft/class_6862; field_56243 CAN_WEAR_HORSE_ARMOR + f Lnet/minecraft/class_6862; field_42971 FALL_DAMAGE_IMMUNE + f Lnet/minecraft/class_6862; field_43096 DISMOUNTS_UNDERWATER + f Lnet/minecraft/class_6862; field_15507 SKELETONS + f Lnet/minecraft/class_6862; field_51503 REDIRECTABLE_PROJECTILE + f Lnet/minecraft/class_6862; field_48289 ARTHROPOD + f Lnet/minecraft/class_6862; field_48285 SENSITIVE_TO_BANE_OF_ARTHROPODS + f Lnet/minecraft/class_6862; field_48286 DEFLECTS_PROJECTILES + f Lnet/minecraft/class_6862; field_48287 ILLAGER + f Lnet/minecraft/class_6862; field_48288 AQUATIC + f Lnet/minecraft/class_6862; field_48283 NOT_SCARY_FOR_PUFFERFISH + f Lnet/minecraft/class_6862; field_48284 SENSITIVE_TO_IMPALING + f Lnet/minecraft/class_6862; field_38697 FROG_FOOD + f Lnet/minecraft/class_6862; field_50106 IMMUNE_TO_INFESTED + f Lnet/minecraft/class_6862; field_50105 IMMUNE_TO_OOZING + f Lnet/minecraft/class_6862; field_29825 FREEZE_IMMUNE_ENTITY_TYPES + f Lnet/minecraft/class_6862; field_29824 AXOLOTL_HUNT_TARGETS + f Lnet/minecraft/class_6862; field_29826 FREEZE_HURTS_EXTRA_TYPES + f Lnet/minecraft/class_6862; field_48290 IGNORES_POISON_AND_REGEN + f Lnet/minecraft/class_6862; field_48291 INVERTED_HEALING_AND_HARM + f Lnet/minecraft/class_6862; field_48292 WITHER_FRIENDS + f Lnet/minecraft/class_6862; field_48293 ILLAGER_FRIENDS + f Lnet/minecraft/class_6862; field_20631 BEEHIVE_INHABITORS + f Lnet/minecraft/class_6862; field_28296 AXOLOTL_ALWAYS_HOSTILES + f Lnet/minecraft/class_6862; field_27855 POWDER_SNOW_WALKABLE_MOBS + f Lnet/minecraft/class_6862; field_21508 ARROWS + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_15077 of + p 0 id +c net/minecraft/class_3488 net/minecraft/structure/processor/BlockRotStructureProcessor + f Lcom/mojang/serialization/MapCodec; field_25000 CODEC + f Ljava/util/Optional; field_38437 rottableBlocks + f F field_15523 integrity + m (Lnet/minecraft/class_3488;)Ljava/lang/Float; method_42712 method_42712 + p 0 processor + m (Lnet/minecraft/class_6885;F)V + p 1 rottableBlocks + p 2 integrity + m (F)V + p 1 integrity + m (Lnet/minecraft/class_3488;)Ljava/util/Optional; method_42713 method_42713 + p 0 processor + m (Ljava/util/Optional;F)V + p 1 rottableBlocks + p 2 integrity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42711 method_42711 + p 0 instance +c net/minecraft/class_2158 net/minecraft/server/function/CommandFunction + m (Lnet/minecraft/class_2487;Lcom/mojang/brigadier/CommandDispatcher;)Lnet/minecraft/class_8868; method_52595 withMacroReplaced + p 1 arguments + p 2 dispatcher + m (Lnet/minecraft/class_2960;Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_8839;Ljava/util/List;)Lnet/minecraft/class_2158; method_9195 create + c Parses a function in the context of {@code source}.\n\n

Any syntax errors, such as improper comment lines or unknown commands, will be thrown at this point. + p 0 id + p 1 dispatcher + p 2 source + p 3 lines + c the raw lines (including comments) read from a function file + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_8839;Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_8856; method_54417 parse + p 2 reader + p 1 source + p 0 dispatcher + m (Ljava/lang/CharSequence;)Z method_52592 continuesToNextLine + p 0 string + m (Ljava/lang/CharSequence;)V method_57057 validateCommandLength + p 0 command + m ()Lnet/minecraft/class_2960; comp_1994 id +c net/minecraft/class_3489 net/minecraft/registry/tag/ItemTags + f Lnet/minecraft/class_6862; field_41890 TRIMMABLE_ARMOR + f Lnet/minecraft/class_6862; field_41891 TRIM_MATERIALS + f Lnet/minecraft/class_6862; field_17620 WOODEN_FENCES + f Lnet/minecraft/class_6862; field_41757 NOTEBLOCK_TOP_INSTRUMENTS + f Lnet/minecraft/class_6862; field_55196 SKELETON_PREFERRED_WEAPONS + f Lnet/minecraft/class_6862; field_55197 DROWNED_PREFERRED_WEAPONS + f Lnet/minecraft/class_6862; field_55198 PIGLIN_PREFERRED_WEAPONS + f Lnet/minecraft/class_6862; field_55199 PILLAGER_PREFERRED_WEAPONS + f Lnet/minecraft/class_6862; field_16444 BEDS + f Lnet/minecraft/class_6862; field_48803 DYEABLE + f Lnet/minecraft/class_6862; field_42972 SMELTS_TO_GLASS + f Lnet/minecraft/class_6862; field_42615 SHOVELS + f Lnet/minecraft/class_6862; field_42614 PICKAXES + f Lnet/minecraft/class_6862; field_42617 BREAKS_DECORATED_POTS + f Lnet/minecraft/class_6862; field_42618 CHERRY_LOGS + f Lnet/minecraft/class_6862; field_16585 FENCES + f Lnet/minecraft/class_6862; field_25808 STONE_CRAFTING_MATERIALS + f Lnet/minecraft/class_6862; field_42610 DECORATED_POT_SHERDS + f Lnet/minecraft/class_6862; field_28300 DAMPENS_VIBRATIONS + f Lnet/minecraft/class_6862; field_42613 HOES + f Lnet/minecraft/class_6862; field_42611 SWORDS + f Lnet/minecraft/class_6862; field_42612 AXES + f Lnet/minecraft/class_6862; field_42609 SNIFFER_FOOD + f Lnet/minecraft/class_6862; field_63256 LUNGE_ENCHANTABLE + f Lnet/minecraft/class_6862; field_63255 NAUTILUS_TAMING_ITEMS + f Lnet/minecraft/class_6862; field_63258 MELEE_WEAPON_ENCHANTABLE + f Lnet/minecraft/class_6862; field_63259 SWEEPING_ENCHANTABLE + f Lnet/minecraft/class_6862; field_63257 SPEARS + f Lnet/minecraft/class_6862; field_63252 ZOMBIE_HORSE_FOOD + f Lnet/minecraft/class_6862; field_63254 NAUTILUS_FOOD + f Lnet/minecraft/class_6862; field_63253 NAUTILUS_BUCKET_FOOD + f Lnet/minecraft/class_6862; field_41662 CREEPER_IGNITERS + f Lnet/minecraft/class_6862; field_40109 BOOKSHELF_BOOKS + f Lnet/minecraft/class_6862; field_49936 WOLF_FOOD + f Lnet/minecraft/class_6862; field_49938 HORSE_FOOD + f Lnet/minecraft/class_6862; field_49937 CAT_FOOD + f Lnet/minecraft/class_6862; field_49939 HORSE_TEMPT_ITEMS + f Lnet/minecraft/class_6862; field_49932 MEAT + f Lnet/minecraft/class_6862; field_49933 COW_FOOD + f Lnet/minecraft/class_6862; field_49934 GOAT_FOOD + f Lnet/minecraft/class_6862; field_49935 SHEEP_FOOD + f Lnet/minecraft/class_6862; field_40108 HANGING_SIGNS + f Lnet/minecraft/class_6862; field_29199 COPPER_ORES + f Lnet/minecraft/class_6862; field_29198 EMERALD_ORES + f Lnet/minecraft/class_6862; field_29197 COAL_ORES + f Lnet/minecraft/class_6862; field_15526 STAIRS + f Lnet/minecraft/class_6862; field_15525 ACACIA_LOGS + f Lnet/minecraft/class_6862; field_15528 SAPLINGS + f Lnet/minecraft/class_6862; field_15527 FISHES + f Lnet/minecraft/class_6862; field_23802 STONE_TOOL_MATERIALS + f Lnet/minecraft/class_6862; field_23801 SOUL_FIRE_BASE_BLOCKS + f Lnet/minecraft/class_6862; field_15529 RAILS + f Lnet/minecraft/class_6862; field_15532 SAND + f Lnet/minecraft/class_6862; field_15531 STONE_BRICKS + f Lnet/minecraft/class_6862; field_36270 TERRACOTTA + f Lnet/minecraft/class_6862; field_15534 WOODEN_SLABS + f Lnet/minecraft/class_6862; field_15533 SIGNS + f Lnet/minecraft/class_6862; field_15536 BOATS + f Lnet/minecraft/class_6862; field_15535 SLABS + f Lnet/minecraft/class_6862; field_15538 JUNGLE_LOGS + f Lnet/minecraft/class_6862; field_15537 PLANKS + f Lnet/minecraft/class_6862; field_15539 LOGS + f Lnet/minecraft/class_6862; field_15540 WOODEN_PRESSURE_PLATES + f Lnet/minecraft/class_6862; field_44591 VILLAGER_PLANTABLE_SEEDS + f Lnet/minecraft/class_6862; field_15542 WOOL_CARPETS + f Lnet/minecraft/class_6862; field_15544 WOOL + f Lnet/minecraft/class_6862; field_15543 SMALL_FLOWERS + f Lnet/minecraft/class_6862; field_44592 STONE_BUTTONS + f Lnet/minecraft/class_6862; field_15546 DARK_OAK_LOGS + f Lnet/minecraft/class_6862; field_15545 OAK_LOGS + f Lnet/minecraft/class_6862; field_48294 FOOT_ARMOR + f Lnet/minecraft/class_6862; field_48295 LEG_ARMOR + f Lnet/minecraft/class_6862; field_48296 CHEST_ARMOR + f Lnet/minecraft/class_6862; field_15548 TRAPDOORS + f Lnet/minecraft/class_6862; field_15547 ANVIL + f Lnet/minecraft/class_6862; field_15549 SPRUCE_LOGS + f Lnet/minecraft/class_6862; field_15552 WOODEN_DOORS + f Lnet/minecraft/class_6862; field_15551 BUTTONS + f Lnet/minecraft/class_6862; field_15554 BIRCH_LOGS + f Lnet/minecraft/class_6862; field_15553 DOORS + f Lnet/minecraft/class_6862; field_15556 BANNERS + f Lnet/minecraft/class_6862; field_15555 WOODEN_BUTTONS + f Lnet/minecraft/class_6862; field_15558 LEAVES + f Lnet/minecraft/class_6862; field_15557 WOODEN_STAIRS + f Lnet/minecraft/class_6862; field_54294 BUNDLES + f Lnet/minecraft/class_6862; field_15550 WOODEN_TRAPDOORS + f Lnet/minecraft/class_6862; field_54293 SHULKER_BOXES + f Lnet/minecraft/class_6862; field_38699 COMPASSES + f Lnet/minecraft/class_6862; field_23969 CREEPER_DROP_MUSIC_DISCS + f Lnet/minecraft/class_6862; field_28994 IRON_ORES + f Lnet/minecraft/class_6862; field_28995 DIAMOND_ORES + f Lnet/minecraft/class_6862; field_28996 REDSTONE_ORES + f Lnet/minecraft/class_6862; field_28997 LAPIS_ORES + f Lnet/minecraft/class_6862; field_55484 WITHER_SKELETON_DISLIKED_WEAPONS + f Lnet/minecraft/class_6862; field_50108 SHARP_WEAPON_ENCHANTABLE + f Lnet/minecraft/class_6862; field_54066 REPAIRS_WOLF_ARMOR + f Lnet/minecraft/class_6862; field_50109 MACE_ENCHANTABLE + f Lnet/minecraft/class_6862; field_15560 WALLS + f Lnet/minecraft/class_6862; field_54065 REPAIRS_TURTLE_HELMET + f Lnet/minecraft/class_6862; field_54064 REPAIRS_NETHERITE_ARMOR + f Lnet/minecraft/class_6862; field_50107 FIRE_ASPECT_ENCHANTABLE + f Lnet/minecraft/class_6862; field_54063 REPAIRS_DIAMOND_ARMOR + f Lnet/minecraft/class_6862; field_54062 REPAIRS_GOLD_ARMOR + f Lnet/minecraft/class_6862; field_54061 REPAIRS_IRON_ARMOR + f Lnet/minecraft/class_6862; field_54060 REPAIRS_CHAIN_ARMOR + f Lnet/minecraft/class_6862; field_54059 REPAIRS_LEATHER_ARMOR + f Lnet/minecraft/class_6862; field_54058 PIGLIN_SAFE_ARMOR + f Lnet/minecraft/class_6862; field_21465 LECTERN_BOOKS + f Lnet/minecraft/class_6862; field_48297 HEAD_ARMOR + f Lnet/minecraft/class_6862; field_48298 SKULLS + f Lnet/minecraft/class_6862; field_28624 FOX_FOOD + f Lnet/minecraft/class_6862; field_48299 FOOT_ARMOR_ENCHANTABLE + f Lnet/minecraft/class_6862; field_48314 VANISHING_ENCHANTABLE + f Lnet/minecraft/class_6862; field_28041 FREEZE_IMMUNE_WEARABLES + f Lnet/minecraft/class_6862; field_37403 MANGROVE_LOGS + f Lnet/minecraft/class_6862; field_48310 DURABILITY_ENCHANTABLE + f Lnet/minecraft/class_6862; field_48311 BOW_ENCHANTABLE + f Lnet/minecraft/class_6862; field_48312 EQUIPPABLE_ENCHANTABLE + f Lnet/minecraft/class_6862; field_48313 CROSSBOW_ENCHANTABLE + f Lnet/minecraft/class_6862; field_48306 MINING_ENCHANTABLE + f Lnet/minecraft/class_6862; field_48307 MINING_LOOT_ENCHANTABLE + f Lnet/minecraft/class_6862; field_48308 FISHING_ENCHANTABLE + f Lnet/minecraft/class_6862; field_48309 TRIDENT_ENCHANTABLE + f Lnet/minecraft/class_6862; field_48302 HEAD_ARMOR_ENCHANTABLE + f Lnet/minecraft/class_6862; field_48303 ARMOR_ENCHANTABLE + f Lnet/minecraft/class_6862; field_58042 FLOWERS + f Lnet/minecraft/class_6862; field_48305 WEAPON_ENCHANTABLE + f Lnet/minecraft/class_6862; field_48300 LEG_ARMOR_ENCHANTABLE + f Lnet/minecraft/class_6862; field_48301 CHEST_ARMOR_ENCHANTABLE + f Lnet/minecraft/class_6862; field_24481 PIGLIN_LOVED + f Lnet/minecraft/class_6862; field_54214 PANDA_EATS_FROM_GROUND + f Lnet/minecraft/class_6862; field_54213 BREWING_FUEL + f Lnet/minecraft/class_6862; field_54212 DUPLICATES_ALLAYS + f Lnet/minecraft/class_6862; field_23064 PIGLIN_REPELLENTS + f Lnet/minecraft/class_6862; field_61216 COPPER_TOOL_MATERIALS + f Lnet/minecraft/class_6862; field_61217 REPAIRS_COPPER_ARMOR + f Lnet/minecraft/class_6862; field_61218 WOODEN_SHELVES + f Lnet/minecraft/class_6862; field_56530 EGGS + f Lnet/minecraft/class_6862; field_61212 COPPER_CHESTS + f Lnet/minecraft/class_6862; field_61213 LIGHTNING_RODS + f Lnet/minecraft/class_6862; field_23065 GOLD_ORES + f Lnet/minecraft/class_6862; field_61214 COPPER_GOLEM_STATUES + f Lnet/minecraft/class_6862; field_61215 COPPER + f Lnet/minecraft/class_6862; field_40987 BAMBOO_BLOCKS + f Lnet/minecraft/class_6862; field_40858 FENCE_GATES + f Lnet/minecraft/class_6862; field_36269 DIRT + f Lnet/minecraft/class_6862; field_49952 STRIDER_FOOD + f Lnet/minecraft/class_6862; field_49953 STRIDER_TEMPT_ITEMS + f Lnet/minecraft/class_6862; field_49954 TURTLE_FOOD + f Lnet/minecraft/class_6862; field_49955 PARROT_FOOD + f Lnet/minecraft/class_6862; field_49950 PIG_FOOD + f Lnet/minecraft/class_6862; field_49951 RABBIT_FOOD + f Lnet/minecraft/class_6862; field_49956 PARROT_POISONOUS_FOOD + f Lnet/minecraft/class_6862; field_49957 AXOLOTL_FOOD + f Lnet/minecraft/class_6862; field_29544 CLUSTER_MAX_HARVESTABLES + f Lnet/minecraft/class_6862; field_49940 CAMEL_FOOD + f Lnet/minecraft/class_6862; field_49941 ARMADILLO_FOOD + f Lnet/minecraft/class_6862; field_49942 BEE_FOOD + f Lnet/minecraft/class_6862; field_49943 CHICKEN_FOOD + f Lnet/minecraft/class_6862; field_49949 PANDA_FOOD + f Lnet/minecraft/class_6862; field_49948 OCELOT_FOOD + f Lnet/minecraft/class_6862; field_49944 FROG_FOOD + f Lnet/minecraft/class_6862; field_49945 HOGLIN_FOOD + f Lnet/minecraft/class_6862; field_49946 LLAMA_FOOD + f Lnet/minecraft/class_6862; field_49947 LLAMA_TEMPT_ITEMS + f Lnet/minecraft/class_6862; field_23211 NON_FLAMMABLE_WOOD + f Lnet/minecraft/class_6862; field_23212 LOGS_THAT_BURN + f Lnet/minecraft/class_6862; field_22277 BEACON_PAYMENT_ITEMS + f Lnet/minecraft/class_6862; field_52387 NETHERITE_TOOL_MATERIALS + f Lnet/minecraft/class_6862; field_52386 DIAMOND_TOOL_MATERIALS + f Lnet/minecraft/class_6862; field_52385 GOLD_TOOL_MATERIALS + f Lnet/minecraft/class_6862; field_52384 FURNACE_MINECART_FUEL + f Lnet/minecraft/class_6862; field_52383 VILLAGER_PICKS_UP + f Lnet/minecraft/class_6862; field_52382 IRON_TOOL_MATERIALS + f Lnet/minecraft/class_6862; field_52381 WOODEN_TOOL_MATERIALS + f Lnet/minecraft/class_6862; field_59663 HARNESSES + f Lnet/minecraft/class_6862; field_59664 HAPPY_GHAST_FOOD + f Lnet/minecraft/class_6862; field_59665 HAPPY_GHAST_TEMPT_ITEMS + f Lnet/minecraft/class_6862; field_61985 SHEARABLE_FROM_COPPER_GOLEM + f Lnet/minecraft/class_6862; field_38080 CHEST_BOATS + f Lnet/minecraft/class_6862; field_17487 COALS + f Lnet/minecraft/class_6862; field_44701 DECORATED_POT_INGREDIENTS + f Lnet/minecraft/class_6862; field_54405 MAP_INVISIBILITY_EQUIPMENT + f Lnet/minecraft/class_6862; field_26989 CANDLES + f Lnet/minecraft/class_6862; field_26988 PIGLIN_FOOD + f Lnet/minecraft/class_6862; field_26987 IGNORED_BY_PIGLIN_BABIES + f Lnet/minecraft/class_6862; field_64115 CAMEL_HUSK_FOOD + f Lnet/minecraft/class_6862; field_21958 WARPED_STEMS + f Lnet/minecraft/class_6862; field_21957 CRIMSON_STEMS + f Lnet/minecraft/class_6862; field_55619 BOOK_CLONING_TARGET + f Lnet/minecraft/class_6862; field_18317 ARROWS + f Lnet/minecraft/class_6862; field_61893 BARS + f Lnet/minecraft/class_6862; field_54555 PALE_OAK_LOGS + f Lnet/minecraft/class_6862; field_54554 GAZE_DISGUISE_EQUIPMENT + f Lnet/minecraft/class_6862; field_61891 CHAINS + f Lnet/minecraft/class_6862; field_38836 COMPLETES_FIND_TREE_TUTORIAL + f Lnet/minecraft/class_6862; field_61892 LANTERNS + f Lnet/minecraft/class_6862; field_38837 WART_BLOCKS + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_15102 of + p 0 id +c net/minecraft/class_2159 net/minecraft/server/function/LazyContainer + c A lazy reference to another command function that may or may not exist.\n\n

Notice that such an instance does not refresh upon reloads and may become\ninvalid. + f Ljava/util/Optional; field_9808 function + f Lnet/minecraft/class_2960; field_9807 id + f Lcom/mojang/serialization/Codec; field_47409 CODEC + f Z field_9810 initialized + m (Lnet/minecraft/class_2991;)Ljava/util/Optional; method_9196 get + p 1 commandFunctionManager + m (Lnet/minecraft/class_2960;)V + p 1 id + m ()Lnet/minecraft/class_2960; method_9197 getId + m (Ljava/lang/Object;)Z equals equals + p 1 o +c net/minecraft/class_3485 net/minecraft/structure/StructureTemplateManager + f Lnet/minecraft/class_7871; field_40369 blockLookup + f Ljava/lang/String; field_31685 NBT_FILE_EXTENSION + f Lorg/slf4j/Logger; field_15514 LOGGER + f Ljava/nio/file/Path; field_15512 generatedPath + f Lcom/mojang/datafixers/DataFixer; field_15515 dataFixer + f Ljava/lang/String; field_52243 STRUCTURES_DIRECTORY + f Lnet/minecraft/class_3300; field_25189 resourceManager + f Ljava/util/Map; field_15513 templates + f Ljava/lang/String; field_31684 STRUCTURE_DIRECTORY + f Ljava/lang/String; field_31686 SNBT_FILE_EXTENSION + f Ljava/util/List; field_39417 providers + f Lnet/minecraft/class_7654; field_52244 STRUCTURE_NBT_RESOURCE_FINDER + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_3499; method_15091 getTemplateOrBlank + p 1 id + m (Ljava/nio/file/Path;)Z method_44242 method_44242 + p 0 path + m (ILjava/lang/String;)Ljava/lang/String; method_44227 method_44227 + p 1 filename + m (Lnet/minecraft/class_2960;Ljava/nio/file/Path;)Ljava/util/Optional; method_44230 loadTemplateFromSnbt + p 1 id + p 2 path + m (Ljava/util/function/Consumer;Ljava/lang/String;Ljava/util/function/Function;Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_61022 method_61022 + p 5 path + m (Lnet/minecraft/class_3485$class_7513;Ljava/util/function/Consumer;)Ljava/util/Optional; method_44231 loadTemplate + p 1 opener + p 2 exceptionConsumer + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_32$class_5143;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/class_7871;)V + p 4 blockLookup + p 3 dataFixer + p 2 session + p 1 resourceManager + m ()Ljava/util/stream/Stream; method_44243 streamTemplatesFromFile + m (Ljava/nio/file/Path;Ljava/lang/Throwable;)V method_44237 method_44237 + p 1 throwable + m ()Ljava/util/stream/Stream; method_44241 streamTemplatesFromGameTestFile + m (Lnet/minecraft/class_3485$class_7514;)Ljava/util/stream/Stream; method_44232 method_44232 + p 0 provider + m (Lnet/minecraft/class_2960;Ljava/lang/String;)Ljava/nio/file/Path; method_15085 getTemplatePath + p 2 extension + p 1 id + m (Ljava/io/InputStream;)Lnet/minecraft/class_3499; method_15090 readTemplate + p 1 templateIInputStream + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/lang/String; method_44238 toRelativePath + p 2 path + p 1 root + m ()Ljava/util/stream/Stream; method_44239 streamTemplatesFromResource + m (Lnet/minecraft/class_2960;)Ljava/util/Optional; method_44246 loadTemplateFromGameTestFile + p 1 id + m (Ljava/lang/String;Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Z method_44233 method_44233 + p 2 attributes + p 1 path + m (Lnet/minecraft/class_2960;)V method_15087 unloadTemplate + p 1 id + m (Lnet/minecraft/class_2960;)Ljava/util/Optional; method_15088 loadTemplateFromResource + p 1 id + m (Lnet/minecraft/class_2960;)Ljava/util/Optional; method_15092 loadTemplateFromFile + p 1 id + m (Lnet/minecraft/class_2960;)Ljava/util/Optional; method_15094 getTemplate + p 1 id + m (Lnet/minecraft/class_2960;)Z method_15093 saveTemplate + p 1 id + m (Lnet/minecraft/class_2960;Ljava/lang/Throwable;)V method_44229 method_44229 + p 1 throwable + m (Lnet/minecraft/class_3300;)V method_29300 setResourceManager + p 1 resourceManager + m ()Ljava/util/stream/Stream; method_44226 streamTemplates + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_3499; method_21891 createTemplate + p 1 nbt + m (Lnet/minecraft/class_2960;)Ljava/util/Optional; method_44245 loadTemplate + p 1 id + m (Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Consumer;)V method_44236 streamTemplates + p 1 directory + p 2 namespace + p 3 fileExtension + p 4 idConsumer +c net/minecraft/class_3485$class_7513 net/minecraft/structure/StructureTemplateManager$TemplateFileOpener +c net/minecraft/class_3485$class_7514 net/minecraft/structure/StructureTemplateManager$Provider + f Ljava/util/function/Supplier; comp_853 lister + f Ljava/util/function/Function; comp_852 loader + m ()Ljava/util/function/Supplier; comp_853 lister + m ()Ljava/util/function/Function; comp_852 loader + m (Ljava/util/function/Function;Ljava/util/function/Supplier;)V + p 1 loader + p 2 lister +c net/minecraft/class_3486 net/minecraft/registry/tag/FluidTags + f Lnet/minecraft/class_6862; field_15517 WATER + f Lnet/minecraft/class_6862; field_15518 LAVA + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_15095 of + p 0 id +c net/minecraft/class_2156 net/minecraft/command/TranslatableBuiltInExceptions + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9787 READER_EXPECTED_FLOAT + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_18140 LONG_TOO_LOW + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_18142 READER_INVALID_LONG + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9797 DISPATCHER_UNKNOWN_COMMAND + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9790 DISPATCHER_PARSE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_9784 INTEGER_TOO_LOW + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9783 READER_EXPECTED_START_QUOTE + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9796 LITERAL_INCORRECT + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9786 READER_INVALID_INT + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_9788 DOUBLE_TOO_HIGH + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9791 READER_INVALID_ESCAPE + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_18141 LONG_TOO_HIGH + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9798 READER_EXPECTED_DOUBLE + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_9793 INTEGER_TOO_HIGH + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9803 READER_EXPECTED_END_QUOTE + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9801 READER_EXPECTED_INT + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9789 READER_INVALID_BOOL + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9800 READER_INVALID_DOUBLE + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_9795 FLOAT_TOO_HIGH + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9785 READER_EXPECTED_SYMBOL + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9794 READER_EXPECTED_BOOL + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9782 DISPATCHER_EXPECTED_ARGUMENT_SEPARATOR + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_9799 DOUBLE_TOO_LOW + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_9802 FLOAT_TOO_LOW + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9792 DISPATCHER_UNKNOWN_ARGUMENT + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_9804 READER_INVALID_FLOAT + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_18143 READER_EXPECTED_LONG + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9187 method_9187 + p 1 min + p 0 found + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9191 method_9191 + p 0 character + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9181 method_9181 + p 0 value + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9183 method_9183 + p 0 found + p 1 max + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9179 method_9179 + p 0 value + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9189 method_9189 + p 0 expected + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_18479 method_18479 + p 1 max + p 0 found + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9185 method_9185 + p 0 value + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9186 method_9186 + p 0 found + p 1 max + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9178 method_9178 + p 1 max + p 0 found + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9182 method_9182 + p 0 value + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9190 method_9190 + p 1 min + p 0 found + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9180 method_9180 + p 0 found + p 1 min + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_18480 method_18480 + p 1 min + p 0 found + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_18481 method_18481 + p 0 value + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9188 method_9188 + p 0 symbol + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9184 method_9184 + p 0 message +c net/minecraft/class_3491 net/minecraft/structure/processor/StructureProcessor + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_3499$class_3501;Lnet/minecraft/class_3499$class_3501;Lnet/minecraft/class_3492;)Lnet/minecraft/class_3499$class_3501; method_15110 process + p 2 pos + p 1 world + p 4 originalBlockInfo + p 3 pivot + p 6 data + p 5 currentBlockInfo + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_3492;)Ljava/util/List; method_49887 reprocess + p 5 currentBlockInfos + p 6 data + p 3 pivot + p 4 originalBlockInfos + p 1 world + p 2 pos + m ()Lnet/minecraft/class_3828; method_16772 getType +c net/minecraft/class_3492 net/minecraft/structure/StructurePlacementData + f Z field_15571 ignoreEntities + f Lnet/minecraft/class_2470; field_15569 rotation + f Ljava/util/List; field_16446 processors + f Lnet/minecraft/class_2415; field_15564 mirror + f Lnet/minecraft/class_2338; field_15566 position + f Lnet/minecraft/class_3341; field_15565 boundingBox + f Z field_16587 updateNeighbors + f Lnet/minecraft/class_5819; field_15570 random + f Z field_24043 initializeMobs + f Lnet/minecraft/class_9822; field_52242 liquidSettings + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_5819; method_15115 getRandom + p 1 pos + m ()Lnet/minecraft/class_2338; method_15134 getPosition + m ()Z method_15135 shouldIgnoreEntities + m ()Lnet/minecraft/class_2415; method_15114 getMirror + m (Z)Lnet/minecraft/class_3492; method_15133 setIgnoreEntities + p 1 ignoreEntities + m (Z)Lnet/minecraft/class_3492; method_15131 setUpdateNeighbors + p 1 updateNeighbors + m ()Lnet/minecraft/class_3492; method_16183 clearProcessors + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_3492; method_15119 setPosition + p 1 position + m ()Z method_27265 shouldInitializeMobs + m ()Lnet/minecraft/class_2470; method_15113 getRotation + m (Lnet/minecraft/class_3341;)Lnet/minecraft/class_3492; method_15126 setBoundingBox + p 1 boundingBox + m (Lnet/minecraft/class_2470;)Lnet/minecraft/class_3492; method_15123 setRotation + p 1 rotation + m ()Lnet/minecraft/class_3492; method_15128 copy + m (Ljava/util/List;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3499$class_5162; method_15121 getRandomBlockInfos + p 1 infoLists + p 2 pos + m ()Lnet/minecraft/class_3341; method_15124 getBoundingBox + m (Lnet/minecraft/class_2415;)Lnet/minecraft/class_3492; method_15125 setMirror + p 1 mirror + m (Lnet/minecraft/class_3491;)Lnet/minecraft/class_3492; method_16184 addProcessor + p 1 processor + m ()Ljava/util/List; method_16182 getProcessors + m (Lnet/minecraft/class_9822;)Lnet/minecraft/class_3492; method_61020 setLiquidSettings + p 1 liquidSettings + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_3492; method_15112 setRandom + p 1 random + m (Lnet/minecraft/class_3491;)Lnet/minecraft/class_3492; method_16664 removeProcessor + p 1 processor + m ()Z method_61021 shouldApplyWaterlogging + m ()Z method_16444 shouldUpdateNeighbors + m (Z)Lnet/minecraft/class_3492; method_27264 setInitializeMobs + p 1 initializeMobs +c net/minecraft/class_2168 net/minecraft/server/command/ServerCommandSource + c Represents a command source used on server side.\n\n@see MinecraftServer#getCommandSource()\n@see Entity#getCommandSource + f Lnet/minecraft/class_243; field_9817 position + f Lnet/minecraft/class_7620; field_39834 messageChainTaskQueue + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9824 REQUIRES_PLAYER_EXCEPTION + f Ljava/lang/String; field_9826 name + f Lnet/minecraft/class_241; field_9822 rotation + f Lnet/minecraft/class_8935; field_47159 returnValueConsumer + f Lnet/minecraft/server/MinecraftServer; field_9818 server + f Lnet/minecraft/class_2561; field_9825 displayName + f Lnet/minecraft/class_7448; field_39183 signedArguments + f Lnet/minecraft/class_3218; field_9828 world + f Z field_9823 silent + f Lnet/minecraft/class_1297; field_9820 entity + f Lnet/minecraft/class_2165; field_9819 output + f Lnet/minecraft/class_12096; field_63437 permissions + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_9827 REQUIRES_ENTITY_EXCEPTION + f Lnet/minecraft/class_2183$class_2184; field_9816 entityAnchor + m ()Lnet/minecraft/class_3222; method_9207 getPlayerOrThrow + c {@return the player from this command source}\n\n@throws CommandSyntaxException if this command source is not a player + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_2168; method_9232 withEntity + p 1 entity + m (Lnet/minecraft/class_3218;)Lnet/minecraft/class_2168; method_9227 withWorld + p 1 world + m (Lnet/minecraft/class_241;)Lnet/minecraft/class_2168; method_9216 withRotation + p 1 rotation + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_2168; method_9208 withPosition + p 1 position + m (Lnet/minecraft/class_2561;)V method_45068 sendMessage + c Sends {@code message} as the feedback to the command's executor, or to the server's log\nif the command is not executed by a player. + p 1 message + m ()Lnet/minecraft/class_2561; method_9223 getDisplayName + m ()Lnet/minecraft/class_241; method_9210 getRotation + m (Lnet/minecraft/class_2165;)Lnet/minecraft/class_2168; method_36321 withOutput + p 1 output + m (Ljava/util/function/Supplier;Z)V method_9226 sendFeedback + p 1 feedbackSupplier + p 2 broadcastToOps + m (Lnet/minecraft/class_8935;Ljava/util/function/BinaryOperator;)Lnet/minecraft/class_2168; method_9209 mergeReturnValueConsumers + p 1 returnValueConsumer + p 2 merger + m ()Lnet/minecraft/class_2168; method_9217 withSilent + m (Lnet/minecraft/class_2172$class_7078;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lnet/minecraft/class_7225;)Ljava/util/concurrent/CompletableFuture; method_41212 method_41212 + p 3 registry + m ()Z method_43737 isExecutedByPlayer + m (Lnet/minecraft/class_12096;)Lnet/minecraft/class_2168; method_9206 withPermissions + p 1 permissions + m (Lnet/minecraft/class_7448;Lnet/minecraft/class_7620;)Lnet/minecraft/class_2168; method_43735 withSignedArguments + p 1 signedArguments + p 2 messageChainTaskQueue + m (Lnet/minecraft/class_2183$class_2184;)Lnet/minecraft/class_2168; method_9218 withEntityAnchor + p 1 anchor + m ()Lnet/minecraft/class_1297; method_9229 getEntityOrThrow + c Gets the entity from this command source or throws a command syntax exception if this command source is not an entity. + m (Lnet/minecraft/class_12096;)Lnet/minecraft/class_2168; method_9230 withAdditionalPermissions + p 1 permissions + m ()Lnet/minecraft/class_3222; method_44023 getPlayer + c {@return the player from this command source, or {@code null} if the source is not a player} + m (Lnet/minecraft/class_2561;)V method_9212 sendToOps + p 1 message + m (Lnet/minecraft/class_3222;)Z method_45067 shouldFilterText + c {@return whether to filter text sent to {@code recipient}}\n\n

This returns {@code true} if either of the command executor or the recipient\nrequires text filtering, unless {@code recipient} executed the command, where\n{@code false} is always returned. + p 1 recipient + m (Lnet/minecraft/class_2165;Lnet/minecraft/class_243;Lnet/minecraft/class_241;Lnet/minecraft/class_3218;Lnet/minecraft/class_12096;Ljava/lang/String;Lnet/minecraft/class_2561;Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_1297;)V + p 3 rot + p 2 pos + p 5 permissions + p 4 world + p 1 output + p 7 displayName + p 6 name + p 9 entity + p 8 server + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2183$class_2184;)Lnet/minecraft/class_2168; method_9220 withLookingAt + p 1 entity + p 2 anchor + m ()Lnet/minecraft/class_3218; method_9225 getWorld + m (Lnet/minecraft/class_8935;)Lnet/minecraft/class_2168; method_9231 withReturnValueConsumer + m ()Lnet/minecraft/class_7620; method_44909 getMessageChainTaskQueue + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_71773 getRegistry + p 1 registryRef + m ()Ljava/lang/String; method_9214 getName + m ()Lnet/minecraft/class_1297; method_9228 getEntity + c Gets the entity from this command source or returns null if this command source is not an entity. + m ()Lnet/minecraft/server/MinecraftServer; method_9211 getServer + m (Lnet/minecraft/class_8786;)Lnet/minecraft/class_2960; method_64830 method_64830 + p 0 recipe + m (Lnet/minecraft/class_2561;)V method_9213 sendError + p 1 message + m ()Lnet/minecraft/class_243; method_9222 getPosition + m ()Lnet/minecraft/class_7448; method_43738 getSignedArguments + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_2168; method_9221 withLookingAt + p 1 position + m (Lnet/minecraft/class_7604;ZLnet/minecraft/class_2556$class_7602;)V method_44749 sendChatMessage + c Sends {@code message} as a chat message to the command's executor, or to the server's log\nif the command is not executed by a player. + p 3 params + p 1 message + p 2 filterMaskEnabled + m (Lnet/minecraft/class_2165;Lnet/minecraft/class_243;Lnet/minecraft/class_241;Lnet/minecraft/class_3218;Lnet/minecraft/class_12096;Ljava/lang/String;Lnet/minecraft/class_2561;Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_1297;ZLnet/minecraft/class_8935;Lnet/minecraft/class_2183$class_2184;Lnet/minecraft/class_7448;Lnet/minecraft/class_7620;)V + p 5 permissions + p 6 name + p 7 displayName + p 8 server + p 9 entity + p 10 silent + p 11 resultStorer + p 12 entityAnchor + p 13 signedArguments + p 14 messageChainTaskQueue + p 1 output + p 2 pos + p 3 rot + p 4 world + m ()Lnet/minecraft/class_2183$class_2184; method_9219 getEntityAnchor +c net/minecraft/class_3499 net/minecraft/structure/StructureTemplate + f Ljava/lang/String; field_31696 ENTITIES_NBT_KEY + f Ljava/lang/String; field_31688 PALETTES_KEY + f Ljava/lang/String; field_31692 BLOCKS_STATE_KEY + f Ljava/util/List; field_15589 entities + f Lnet/minecraft/class_2382; field_15587 size + f Ljava/lang/String; field_15588 author + f Ljava/lang/String; field_31695 ENTITIES_BLOCK_POS_KEY + f Ljava/lang/String; field_31687 PALETTE_KEY + f Ljava/lang/String; field_31691 BLOCKS_POS_KEY + f Lorg/slf4j/Logger; field_60379 LOGGER + f Ljava/lang/String; field_31694 ENTITIES_POS_KEY + f Ljava/util/List; field_15586 blockInfoLists + f Ljava/lang/String; field_31690 BLOCKS_KEY + f Ljava/lang/String; field_31697 SIZE_KEY + f Ljava/lang/String; field_31689 ENTITIES_KEY + f Ljava/lang/String; field_31693 BLOCKS_NBT_KEY + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_8942;)V method_15164 addEntitiesFromWorld + p 1 world + p 2 firstCorner + p 3 secondCorner + p 4 errorReporter + m (Lnet/minecraft/class_2470;)Lnet/minecraft/class_2382; method_15166 getRotatedSize + p 1 rotation + m (Lnet/minecraft/class_1297;)Z method_15163 method_15163 + p 0 entity + m (Lnet/minecraft/class_2338$class_2339;IIILnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_1936;ILnet/minecraft/class_2350;III)V method_15173 method_15173 + p 7 direction + p 8 x + p 9 y + p 10 z + m ([D)Lnet/minecraft/class_2499; method_15184 createNbtDoubleList + p 1 doubles + m (Lnet/minecraft/class_243;Lnet/minecraft/class_2415;Lnet/minecraft/class_2470;Lnet/minecraft/class_2338;)Lnet/minecraft/class_243; method_15176 transformAround + p 3 pivot + p 2 rotation + p 1 mirror + p 0 point + m (Lnet/minecraft/class_2470;Lnet/minecraft/class_2415;Lnet/minecraft/class_243;ZLnet/minecraft/class_5425;Lnet/minecraft/class_1297;)V method_17917 method_17917 + p 5 entity + m (Lnet/minecraft/class_3499$class_3501;Ljava/util/List;Ljava/util/List;Ljava/util/List;)V method_28054 categorize + c Categorizes {@code blockInfo} based on its properties, modifying\nthe passed lists in-place.\n\n

If the block has an NBT associated with it, then it will be\nput in {@code blocksWithNbt}. If the block does not have an NBT\nassociated with it, but is always a full cube, then it will be\nput in {@code fullBlocks}. Otherwise, it will be put in\n{@code otherBlocks}.\n\n@apiNote After all blocks are categorized, {@link #combineSorted}\nshould be called with the same parameters to get the final list. + p 2 blocksWithNbt + p 1 fullBlocks + p 3 otherBlocks + p 0 blockInfo + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2415;Lnet/minecraft/class_2470;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_15168 transformAround + p 2 rotation + p 3 pivot + p 0 pos + p 1 mirror + m (Lnet/minecraft/class_3492;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3341; method_16187 calculateBoundingBox + p 1 placementData + p 2 pos + m (Lnet/minecraft/class_3499$class_3500;Ljava/util/List;Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_2487;)V method_68334 method_68334 + p 4 nbt + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;)Ljava/util/List; method_64822 getJigsawInfos + p 1 pos + p 2 rotation + m (Lnet/minecraft/class_3492;Lnet/minecraft/class_2338;Lnet/minecraft/class_3492;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_15180 transformBox + p 4 pos2 + p 3 placementData2 + p 2 pos1 + p 1 placementData1 + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3492;Lnet/minecraft/class_2248;Z)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; method_15165 getInfosForBlock + p 2 placementData + p 1 pos + p 4 transformed + p 3 block + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_3492;Lnet/minecraft/class_5819;I)Z method_15172 place + p 6 flags + p 3 pivot + p 2 pos + p 5 random + p 4 placementData + p 1 world + m (Lnet/minecraft/class_1936;ILnet/minecraft/class_251;III)V method_20532 updateCorner + p 3 startX + p 4 startY + p 5 startZ + p 0 world + p 1 flags + p 2 set + m (Lnet/minecraft/class_3499$class_3501;)I method_28056 method_28056 + p 0 blockInfo + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_3492;Ljava/util/List;)Ljava/util/List; method_16446 process + p 0 world + p 3 placementData + p 4 infos + p 1 pos + p 2 pivot + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2382;ZLjava/util/List;)V method_15174 saveFromWorld + p 2 start + p 3 dimensions + p 1 world + p 4 includeEntities + p 5 ignoredBlocks + m ()Lnet/minecraft/class_2382; method_15160 getSize + m (Lnet/minecraft/class_3499$class_3501;)I method_16185 method_16185 + p 0 blockInfo + m (Lnet/minecraft/class_243;Lnet/minecraft/class_2338;Lnet/minecraft/class_2487;)V method_68335 method_68335 + p 3 blockEntityNbt + m ()Ljava/lang/String; method_15181 getAuthor + m (Lnet/minecraft/class_3492;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_15171 transform + p 1 pos + p 0 placementData + m (Lnet/minecraft/class_3499$class_3501;)I method_28053 method_28053 + p 0 blockInfo + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_2338;Lnet/minecraft/class_2415;Lnet/minecraft/class_2382;)Lnet/minecraft/class_3341; method_34400 createBox + p 4 dimensions + p 2 pivot + p 3 mirror + p 0 pos + p 1 rotation + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_3751$class_4991; method_67693 getJointFromFacing + p 0 state + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_15175 writeNbt + p 1 nbt + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3492;Lnet/minecraft/class_2248;)Ljava/util/List; method_16445 getInfosForBlock + p 1 pos + p 2 placementData + p 3 block + m (Lnet/minecraft/class_1936;ILnet/minecraft/class_251;Lnet/minecraft/class_2338;)V method_58190 updateCorner + p 3 startPos + p 1 flags + p 2 set + p 0 world + m (Lnet/minecraft/class_2487;)V method_68336 method_68336 + p 1 nbtx + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2415;Lnet/minecraft/class_2470;)Lnet/minecraft/class_2338; method_15167 offsetByTransformedSize + p 2 mirror + p 1 pos + p 3 rotation + m ([I)Lnet/minecraft/class_2499; method_15169 createNbtIntList + p 1 ints + m (Lnet/minecraft/class_8942;Lnet/minecraft/class_5425;Lnet/minecraft/class_2487;)Ljava/util/Optional; method_17916 getEntity + p 1 world + p 2 nbt + p 0 errorReporter + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_2338;Lnet/minecraft/class_2415;)Lnet/minecraft/class_3341; method_27267 calculateBoundingBox + p 3 pivot + p 2 rotation + p 4 mirror + p 1 pos + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_2487;)V method_15183 readNbt + p 1 blockLookup + p 2 nbt + m (Ljava/lang/String;)V method_15161 setAuthor + p 1 author + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_2680;)Lnet/minecraft/class_3751$class_4991; method_64823 readJoint + p 0 nbt + p 1 state + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_2499;Lnet/minecraft/class_2499;)V method_15177 loadPalettedBlockInfo + p 1 blockLookup + p 3 blocks + p 2 palette + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;)Ljava/util/List; method_28055 combineSorted + c {@return the list that sorts and combines the passed block lists}\n\n@apiNote The parameters passed should be the same one that was passed\nto previous calls to {@link #categorize}. The returned value is meant to\nbe passed to {@link PalettedBlockInfoList}.\n\n@implNote Each list passed will be sorted in-place using the items'\nY, X, and Z coordinates. The returned list contains all items of\n{@code fullBlocks}, {@code otherBlocks}, and {@code blocksWithNbt}\nin this order. + p 0 fullBlocks + p 1 blocksWithNbt + p 2 otherBlocks + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_2338;Lnet/minecraft/class_2415;Lnet/minecraft/class_2470;Lnet/minecraft/class_2338;Lnet/minecraft/class_3341;ZLnet/minecraft/class_8942;)V method_15179 spawnEntities + p 7 initializeMobs + p 6 area + p 5 pivot + p 4 rotation + p 8 errorReporter + p 3 mirror + p 2 pos + p 1 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2415;Lnet/minecraft/class_2470;II)Lnet/minecraft/class_2338; method_15162 applyTransformedOffset + p 2 rotation + p 3 offsetX + p 4 offsetZ + p 0 pos + p 1 mirror +c net/minecraft/class_3499$class_5162 net/minecraft/structure/StructureTemplate$PalettedBlockInfoList + f Ljava/util/List; field_23913 infos + f Ljava/util/List; field_54805 jigsawBlockInfos + f Ljava/util/Map; field_23914 blockToInfos + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_3499$class_3501;)Z method_27127 method_27127 + p 1 info + m (Lnet/minecraft/class_2248;)Ljava/util/List; method_27126 getAllOf + p 1 block + m (Lnet/minecraft/class_2248;)Ljava/util/List; method_27128 method_27128 + p 1 block2 + m ()Ljava/util/List; method_27125 getAll + m ()Ljava/util/List; method_64827 getOrCreateJigsawBlockInfos + m (Ljava/util/List;)V + p 1 infos +c net/minecraft/class_3499$class_3501 net/minecraft/structure/StructureTemplate$StructureBlockInfo + f Lnet/minecraft/class_2680; comp_1342 state + f Lnet/minecraft/class_2338; comp_1341 pos + f Lnet/minecraft/class_2487; comp_1343 nbt + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2487;)V + p 3 nbt + p 1 pos + p 2 state + m ()Lnet/minecraft/class_2338; comp_1341 pos + m ()Lnet/minecraft/class_2680; comp_1342 state + m ()Lnet/minecraft/class_2487; comp_1343 nbt +c net/minecraft/class_3499$class_3502 net/minecraft/structure/StructureTemplate$StructureEntityInfo + f Lnet/minecraft/class_2338; field_15600 blockPos + f Lnet/minecraft/class_2487; field_15598 nbt + f Lnet/minecraft/class_243; field_15599 pos + m (Lnet/minecraft/class_243;Lnet/minecraft/class_2338;Lnet/minecraft/class_2487;)V + p 1 pos + p 2 blockPos + p 3 nbt +c net/minecraft/class_3499$class_3500 net/minecraft/structure/StructureTemplate$Palette + f Lnet/minecraft/class_2361; field_15591 ids + f Lnet/minecraft/class_2680; field_15590 AIR + f I field_15592 currentIndex + m (Lnet/minecraft/class_2680;I)V method_15186 set + p 2 id + p 1 state + m (Lnet/minecraft/class_2680;)I method_15187 getId + p 1 state + m (I)Lnet/minecraft/class_2680; method_15185 getState + p 1 id +c net/minecraft/class_3499$class_10326 net/minecraft/structure/StructureTemplate$JigsawBlockInfo + f I comp_3284 selectionPriority + f I comp_3283 placementPriority + f Lnet/minecraft/class_3499$class_3501; comp_3278 info + f Lnet/minecraft/class_3751$class_4991; comp_3279 jointType + f Lnet/minecraft/class_5321; comp_3281 pool + f Lnet/minecraft/class_2960; comp_3280 name + f Lnet/minecraft/class_2960; comp_3282 target + m (Lnet/minecraft/class_3499$class_3501;)Lnet/minecraft/class_3499$class_10326; method_64824 of + p 0 structureBlockInfo + m (Lnet/minecraft/class_3499$class_3501;)Lnet/minecraft/class_3499$class_10326; method_64825 withInfo + p 1 structureBlockInfo + m ()Lnet/minecraft/class_2960; comp_3282 target + m ()Lnet/minecraft/class_2960; comp_3280 name + m ()Lnet/minecraft/class_5321; comp_3281 pool + m ()Lnet/minecraft/class_3751$class_4991; comp_3279 jointType + m ()Lnet/minecraft/class_3499$class_3501; comp_3278 info + m ()I comp_3284 selectionPriority + m ()I comp_3283 placementPriority + m (Lnet/minecraft/class_3499$class_3501;Lnet/minecraft/class_3751$class_4991;Lnet/minecraft/class_2960;Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;II)V + p 1 info + p 2 jointType + p 3 name + p 4 pool + p 5 target + p 6 placementPriority + p 7 selectionPriority +c net/minecraft/class_2169 net/minecraft/world/biome/source/TheEndBiomeSource + f Lnet/minecraft/class_6880; field_26700 centerBiome + f Lnet/minecraft/class_6880; field_26703 smallIslandsBiome + f Lcom/mojang/serialization/MapCodec; field_24730 CODEC + f Lnet/minecraft/class_6880; field_26704 barrensBiome + f Lnet/minecraft/class_6880; field_26701 highlandsBiome + f Lnet/minecraft/class_6880; field_26702 midlandsBiome + m (Lnet/minecraft/class_7871;)Lnet/minecraft/class_2169; method_46680 createVanilla + p 0 biomeLookup + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46679 method_46679 + p 0 instance + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;)V + p 1 centerBiome + p 2 highlandsBiome + p 5 barrensBiome + p 3 midlandsBiome + p 4 smallIslandsBiome +c net/minecraft/class_3495 net/minecraft/registry/tag/TagBuilder + c A builder class to ease the creation of tags. It can also be used as a\nmutable form of a tag. + f Ljava/util/List; field_23688 entries + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_3495; method_26784 add + p 1 id + m ()Ljava/util/List; method_26782 build + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_3495; method_26787 addTag + p 1 id + m (Lnet/minecraft/class_3497;)Lnet/minecraft/class_3495; method_27064 add + p 1 entry + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_3495; method_34891 addOptional + p 1 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_3495; method_34892 addOptionalTag + p 1 id + m ()Lnet/minecraft/class_3495; method_26778 create +c net/minecraft/class_2165 net/minecraft/server/command/CommandOutput + c Represents a subject which can receive command feedback. + f Lnet/minecraft/class_2165; field_17395 DUMMY + m ()Z method_9201 shouldBroadcastConsoleToOps + m ()Z method_9200 shouldReceiveFeedback + m ()Z method_36320 cannotBeSilenced + m ()Z method_9202 shouldTrackOutput + m (Lnet/minecraft/class_2561;)V method_43496 sendMessage + c Sends a system message.\n\n@implNote The output location depends on the implementation; players will\nuse the in-game chat, and others will output to the log. + p 1 message +c net/minecraft/class_11192 net/minecraft/entity/passive/HappyGhastBrain + f Lcom/google/common/collect/ImmutableList; field_59700 SENSORS + f Lcom/google/common/collect/ImmutableList; field_59701 MEMORY_MODULES + f Lnet/minecraft/class_6019; field_59699 MOVE_TOWARDS_FRIENDLY_ENTITY_RANGE + f F field_59697 MOVE_TOWARDS_FRIENDLY_ENTITY_SPEED + f F field_59696 TEMPT_SPEED + m (Lnet/minecraft/class_1309;)Ljava/lang/Float; method_70709 method_70709 + p 0 player + m (Lnet/minecraft/class_1309;)Ljava/lang/Double; method_70711 method_70711 + p 0 entity + m (Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_70707 create + p 0 brain + m ()Lnet/minecraft/class_4095$class_5303; method_70705 createBrainProfile + m (Lnet/minecraft/class_4095;)V method_70714 addPanicActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_70710 addCoreActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_70712 addIdleActivities + p 0 brain + m (Lnet/minecraft/class_1309;)Ljava/lang/Float; method_70713 method_70713 + p 0 entity + m (Lnet/minecraft/class_11187;)V method_70708 updateActivities + p 0 happyGhast + m (Lnet/minecraft/class_1309;)Ljava/lang/Float; method_70706 method_70706 + p 0 adult +c net/minecraft/class_3497 net/minecraft/registry/tag/TagEntry + f Z field_39267 tag + f Z field_39268 required + f Lcom/mojang/serialization/Codec; field_39266 ENTRY_CODEC + f Lnet/minecraft/class_2960; field_15584 id + f Lcom/mojang/serialization/Codec; field_39265 CODEC + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_3497; method_43937 create + p 0 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_3497; method_43947 createOptionalTag + p 0 id + m ()Lnet/minecraft/class_5699$class_7476; method_43936 getIdForCodec + m (Lnet/minecraft/class_3497;)Ljava/lang/Boolean; method_43946 method_43946 + p 0 entry + m (Lnet/minecraft/class_5699$class_7476;Z)V + p 2 required + p 1 id + m (Lnet/minecraft/class_5699$class_7476;)Lnet/minecraft/class_3497; method_43939 method_43939 + p 0 id + m (Lnet/minecraft/class_3497;)Lnet/minecraft/class_3497; method_43943 method_43943 + p 0 entry + m (Lnet/minecraft/class_2960;ZZ)V + p 2 tag + p 1 id + p 3 required + m (Lnet/minecraft/class_3497;)Lcom/mojang/datafixers/util/Either; method_43938 method_43938 + p 0 entry + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_3497; method_43940 method_43940 + p 0 either + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;)Z method_32832 canAdd + p 2 tagEntryPredicate + p 1 directEntryPredicate + m (Ljava/util/function/Consumer;)V method_32831 forEachRequiredTagId + p 1 idConsumer + m (Ljava/util/function/Consumer;)V method_43944 forEachOptionalTagId + p 1 idConsumer + m (Lnet/minecraft/class_3497$class_7474;Ljava/util/function/Consumer;)Z method_26790 resolve + p 2 idConsumer + p 1 valueGetter + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43941 method_43941 + p 0 instance + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_3497; method_43945 createTag + p 0 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_3497; method_43942 createOptional + p 0 id +c net/minecraft/class_3497$class_7474 net/minecraft/registry/tag/TagEntry$ValueGetter + m (Lnet/minecraft/class_2960;Z)Ljava/lang/Object; method_43948 direct + p 2 required + p 1 id + m (Lnet/minecraft/class_2960;)Ljava/util/Collection; method_43949 tag + p 1 id +c net/minecraft/class_11199 net/minecraft/command/argument/HexColorArgumentType + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_59769 INVALID_HEX_COLOR_EXCEPTION + f Ljava/util/Collection; field_59770 EXAMPLES + m (I)I method_73327 expand + p 0 digit + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/Integer; method_70760 getArgbColor + p 0 context + p 1 hex + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m ()Lnet/minecraft/class_11199; method_70758 hexColor + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Integer; method_70759 parse + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_70761 method_70761 + p 0 hexColor +c net/minecraft/class_11198 net/minecraft/block/DriedGhastBlock + f I field_59754 MAX_HYDRATION + f Lnet/minecraft/class_2758; field_59755 HYDRATION + f Lnet/minecraft/class_2746; field_59756 WATERLOGGED + f Lnet/minecraft/class_265; field_59758 SHAPE + f Lcom/mojang/serialization/MapCodec; field_59753 CODEC + f I field_59757 HYDRATION_TICK_TIME + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_70747 tickHydration + p 2 world + p 1 state + p 4 random + p 3 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_70746 spawnGhastling + p 1 world + p 2 pos + p 3 state + m (Lnet/minecraft/class_2680;)I method_70748 getHydration + p 1 state + m (Lnet/minecraft/class_2680;)Z method_70749 isFullyHydrated + p 1 state +c net/minecraft/class_4792 net/minecraft/client/particle/AshParticle + m (Lnet/minecraft/class_638;DDDDDDFLnet/minecraft/class_4002;)V + p 8 velocityX + p 10 velocityY + p 4 y + p 6 z + p 1 world + p 2 x + p 12 velocityZ + p 14 scaleMultiplier + p 15 spriteProvider +c net/minecraft/class_4792$class_4793 net/minecraft/client/particle/AshParticle$Factory + f Lnet/minecraft/class_4002; field_22235 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_24463 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_4791 net/minecraft/client/render/entity/model/HoglinEntityModel + c Represents the model of a hoglin-like entity.\n\n

\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value EntityModelPartNames#MANE}{@value EntityModelPartNames#BODY}{@link #mane}
{@value EntityModelPartNames#HEAD}Root part{@link #head}
{@value EntityModelPartNames#RIGHT_EAR}{@value EntityModelPartNames#HEAD}{@link #rightEar}
{@value EntityModelPartNames#LEFT_EAR}{@value EntityModelPartNames#HEAD}{@link #leftEar}
{@value EntityModelPartNames#RIGHT_HORN}{@value EntityModelPartNames#HEAD}
{@value EntityModelPartNames#LEFT_HORN}{@value EntityModelPartNames#HEAD}
{@value EntityModelPartNames#RIGHT_FRONT_LEG}Root part{@link #rightFrontLeg}
{@value EntityModelPartNames#LEFT_FRONT_LEG}Root part{@link #leftFrontLeg}
{@value EntityModelPartNames#RIGHT_HIND_LEG}Root part{@link #rightHindLeg}
{@value EntityModelPartNames#LEFT_HIND_LEG}Root part{@link #leftHindLeg}
\n
+ f Lnet/minecraft/class_9953; field_52916 BABY_TRANSFORMER + f Lnet/minecraft/class_630; field_22230 body + f F field_32485 HEAD_PITCH_END + f F field_32484 HEAD_PITCH_START + f Lnet/minecraft/class_630; field_22228 rightEar + f Lnet/minecraft/class_630; field_22229 leftEar + f Lnet/minecraft/class_630; field_22227 head + f Lnet/minecraft/class_630; field_25484 mane + f Lnet/minecraft/class_630; field_27423 rightHindLeg + f Lnet/minecraft/class_630; field_27424 leftHindLeg + f Lnet/minecraft/class_630; field_27421 rightFrontLeg + f Lnet/minecraft/class_630; field_27422 leftFrontLeg + m ()Lnet/minecraft/class_5607; method_62091 getBabyTexturedModelData + m ()Lnet/minecraft/class_5609; method_62092 getModelData + m (Lnet/minecraft/class_10032;)V method_24461 setAngles + m ()Lnet/minecraft/class_5607; method_32009 getTexturedModelData +c net/minecraft/class_4798 net/minecraft/client/render/entity/HoglinEntityRenderer + f Lnet/minecraft/class_2960; field_22244 TEXTURE + m (Lnet/minecraft/class_4760;Lnet/minecraft/class_10032;F)V method_62458 updateRenderState + m (Lnet/minecraft/class_10032;)Z method_27038 isShaking + m (Lnet/minecraft/class_10032;)Lnet/minecraft/class_2960; method_24472 getTexture +c net/minecraft/class_2135 net/minecraft/advancement/criterion/TickCriterion + m (Lnet/minecraft/class_2135$class_2137;)Z method_29964 method_29964 + p 0 conditions + m (Lnet/minecraft/class_3222;)V method_9141 trigger + p 1 player +c net/minecraft/class_2135$class_2137 net/minecraft/advancement/criterion/TickCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47326 CODEC + m (Ljava/util/Optional;)Lnet/minecraft/class_175; method_43135 createLocation + p 0 entity + m ()Lnet/minecraft/class_175; method_43139 createHeroOfTheVillage + m ()Lnet/minecraft/class_175; method_43138 createSleptInBed + m ()Lnet/minecraft/class_175; method_43279 createAvoidVibration + m ()Lnet/minecraft/class_175; method_49195 createTick + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55105 method_55105 + p 0 instance + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_175; method_53788 createLocation + p 0 entity + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Lnet/minecraft/class_2248;Lnet/minecraft/class_1792;)Lnet/minecraft/class_175; method_43136 createLocation + p 3 boots + p 0 blockRegistry + p 2 steppingOn + p 1 itemRegistry + m (Lnet/minecraft/class_2090$class_2091;)Lnet/minecraft/class_175; method_43137 createLocation + p 0 location + m (Ljava/util/Optional;)V + p 1 player +c net/minecraft/class_3468 net/minecraft/stat/Stats + f Lnet/minecraft/class_2960; field_21779 INTERACT_WITH_GRINDSTONE + f Lnet/minecraft/class_2960; field_21778 INTERACT_WITH_ANVIL + f Lnet/minecraft/class_3448; field_15370 CRAFTED + f Lnet/minecraft/class_3448; field_15372 USED + f Lnet/minecraft/class_3448; field_15383 BROKEN + f Lnet/minecraft/class_3448; field_15392 PICKED_UP + f Lnet/minecraft/class_2960; field_15404 PLAYER_KILLS + f Lnet/minecraft/class_2960; field_15402 TRIGGER_TRAPPED_CHEST + f Lnet/minecraft/class_2960; field_15401 WALK_UNDER_WATER_ONE_CM + f Lnet/minecraft/class_2960; field_15400 TIME_SINCE_DEATH + f Lnet/minecraft/class_2960; field_15409 MINECART_ONE_CM + f Lnet/minecraft/class_2960; field_15408 DAMAGE_DEALT_ABSORBED + f Lnet/minecraft/class_2960; field_15407 INTERACT_WITH_BREWINGSTAND + f Lnet/minecraft/class_2960; field_15406 DROP + f Lnet/minecraft/class_2960; field_15416 INTERACT_WITH_BEACON + f Lnet/minecraft/class_2960; field_15415 BOAT_ONE_CM + f Lnet/minecraft/class_2960; field_15414 MOB_KILLS + f Lnet/minecraft/class_2960; field_15413 CLIMB_ONE_CM + f Lnet/minecraft/class_2960; field_15412 POT_FLOWER + f Lnet/minecraft/class_2960; field_15410 ANIMALS_BRED + f Lnet/minecraft/class_2960; field_15418 OPEN_SHULKER_BOX + f Lnet/minecraft/class_2960; field_15417 PLAY_TIME + f Lnet/minecraft/class_2960; field_15420 ENCHANT_ITEM + f Lnet/minecraft/class_2960; field_19252 INTERACT_WITH_CARTOGRAPHY_TABLE + f Lnet/minecraft/class_2960; field_19254 INTERACT_WITH_STONECUTTER + f Lnet/minecraft/class_2960; field_19253 INTERACT_WITH_LOOM + f Lnet/minecraft/class_2960; field_15429 TIME_SINCE_REST + f Lnet/minecraft/class_2960; field_15428 JUMP + f Lnet/minecraft/class_2960; field_15426 FLY_ONE_CM + f Lnet/minecraft/class_2960; field_15425 DAMAGE_RESISTED + f Lnet/minecraft/class_2960; field_15424 OPEN_ENDERCHEST + f Lnet/minecraft/class_2960; field_15423 SWIM_ONE_CM + f Lnet/minecraft/class_2960; field_15422 SNEAK_TIME + f Lnet/minecraft/class_2960; field_15421 DEATHS + f Lnet/minecraft/class_2960; field_19256 RAID_TRIGGER + f Lnet/minecraft/class_2960; field_19255 BELL_RING + f Lnet/minecraft/class_2960; field_19257 RAID_WIN + f Lnet/minecraft/class_2960; field_15430 FILL_CAULDRON + f Lnet/minecraft/class_2960; field_33558 TOTAL_WORLD_TIME + f Lnet/minecraft/class_3448; field_15427 MINED + f Lnet/minecraft/class_2960; field_24458 STRIDER_ONE_CM + f Lnet/minecraft/class_2960; field_17271 OPEN_BARREL + f Lnet/minecraft/class_2960; field_17272 INTERACT_WITH_BLAST_FURNACE + f Lnet/minecraft/class_2960; field_17273 INTERACT_WITH_SMOKER + f Lnet/minecraft/class_2960; field_59658 HAPPY_GHAST_ONE_CM + f Lnet/minecraft/class_2960; field_64113 NAUTILUS_ONE_CM + f Lnet/minecraft/class_3448; field_15405 DROPPED + f Lnet/minecraft/class_3448; field_15403 KILLED + f Lnet/minecraft/class_2960; field_17485 INTERACT_WITH_LECTERN + f Lnet/minecraft/class_2960; field_17486 INTERACT_WITH_CAMPFIRE + f Lnet/minecraft/class_3448; field_15419 CUSTOM + f Lnet/minecraft/class_3448; field_15411 KILLED_BY + f Lnet/minecraft/class_2960; field_22413 TARGET_HIT + f Lnet/minecraft/class_2960; field_15369 EAT_CAKE_SLICE + f Lnet/minecraft/class_2960; field_15368 INTERACT_WITH_CRAFTING_TABLE + f Lnet/minecraft/class_2960; field_15367 INSPECT_DROPPER + f Lnet/minecraft/class_2960; field_15366 INSPECT_HOPPER + f Lnet/minecraft/class_2960; field_15365 DAMAGE_ABSORBED + f Lnet/minecraft/class_2960; field_15364 SPRINT_ONE_CM + f Lnet/minecraft/class_2960; field_15375 PLAY_RECORD + f Lnet/minecraft/class_2960; field_15374 AVIATE_ONE_CM + f Lnet/minecraft/class_2960; field_15373 USE_CAULDRON + f Lnet/minecraft/class_2960; field_15371 INSPECT_DISPENSER + f Lnet/minecraft/class_2960; field_15379 INTERACT_WITH_FURNACE + f Lnet/minecraft/class_2960; field_15378 TRADED_WITH_VILLAGER + f Lnet/minecraft/class_2960; field_15377 WALK_ONE_CM + f Lnet/minecraft/class_2960; field_15376 CROUCH_ONE_CM + f Lnet/minecraft/class_2960; field_15387 PIG_ONE_CM + f Lnet/minecraft/class_2960; field_15386 FALL_ONE_CM + f Lnet/minecraft/class_2960; field_15385 PLAY_NOTEBLOCK + f Lnet/minecraft/class_2960; field_15384 TALKED_TO_VILLAGER + f Lnet/minecraft/class_2960; field_15382 CLEAN_ARMOR + f Lnet/minecraft/class_2960; field_15381 SLEEP_IN_BED + f Lnet/minecraft/class_2960; field_15380 DAMAGE_BLOCKED_BY_SHIELD + f Lnet/minecraft/class_2960; field_22464 INTERACT_WITH_SMITHING_TABLE + f Lnet/minecraft/class_2960; field_15389 LEAVE_GAME + f Lnet/minecraft/class_2960; field_15388 DAMAGE_TAKEN + f Lnet/minecraft/class_2960; field_15391 FISH_CAUGHT + f Lnet/minecraft/class_2960; field_15390 CLEAN_BANNER + f Lnet/minecraft/class_2960; field_15399 DAMAGE_DEALT + f Lnet/minecraft/class_2960; field_15398 CLEAN_SHULKER_BOX + f Lnet/minecraft/class_2960; field_15397 DAMAGE_DEALT_RESISTED + f Lnet/minecraft/class_2960; field_15396 HORSE_ONE_CM + f Lnet/minecraft/class_2960; field_15395 OPEN_CHEST + f Lnet/minecraft/class_2960; field_15394 WALK_ON_WATER_ONE_CM + f Lnet/minecraft/class_2960; field_15393 TUNE_NOTEBLOCK + m (Ljava/lang/String;Lnet/minecraft/class_2378;)Lnet/minecraft/class_3448; method_15020 registerType + p 0 id + p 1 registry + m (Ljava/lang/String;Lnet/minecraft/class_3446;)Lnet/minecraft/class_2960; method_15021 register + p 1 formatter + p 0 id +c net/minecraft/class_3469 net/minecraft/stat/StatHandler + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_15431 statMap + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_3445;I)V method_15023 setStat + p 1 player + p 3 value + p 2 stat + m (Lnet/minecraft/class_3445;)I method_15025 getStat + p 1 stat + m (Lnet/minecraft/class_3448;Ljava/lang/Object;)I method_15024 getStat + p 1 type + p 2 stat + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_3445;I)V method_15022 increaseStat + p 2 stat + p 1 player + p 3 value +c net/minecraft/class_4794 net/minecraft/client/particle/AscendingParticle + f Lnet/minecraft/class_4002; field_22237 spriteProvider + m (Lnet/minecraft/class_638;DDDFFFDDDFLnet/minecraft/class_4002;FIFZ)V + p 4 y + p 1 world + p 2 x + p 8 randomVelocityXMultiplier + p 6 z + p 11 velocityX + p 9 randomVelocityYMultiplier + p 10 randomVelocityZMultiplier + p 15 velocityZ + p 13 velocityY + p 19 colorMultiplier + p 20 baseMaxAge + p 17 scaleMultiplier + p 18 spriteProvider + p 21 gravityStrength + p 22 collidesWithWorld +c net/minecraft/class_2131 net/minecraft/advancement/criterion/TameAnimalCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1429;)V method_9132 trigger + p 2 entity + p 1 player + m (Lnet/minecraft/class_47;Lnet/minecraft/class_2131$class_2133;)Z method_22538 method_22538 + p 1 conditions +c net/minecraft/class_2131$class_2133 net/minecraft/advancement/criterion/TameAnimalCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47344 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2094 entity + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 2 entity + p 1 playerPredicate + m (Lnet/minecraft/class_47;)Z method_9139 matches + p 1 entity + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_175; method_16114 create + p 0 entity + m ()Lnet/minecraft/class_175; method_9138 any + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55136 method_55136 + p 0 instance + m ()Ljava/util/Optional; comp_2094 entity +c net/minecraft/class_2128 net/minecraft/advancement/criterion/SummonedEntityCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;)V method_9124 trigger + p 2 entity + p 1 player + m (Lnet/minecraft/class_47;Lnet/minecraft/class_2128$class_2130;)Z method_22537 method_22537 + p 1 conditions +c net/minecraft/class_2128$class_2130 net/minecraft/advancement/criterion/SummonedEntityCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47338 CODEC + f Ljava/util/Optional; comp_2093 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55135 method_55135 + p 0 instance + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 2 entity + m (Lnet/minecraft/class_47;)Z method_9130 matches + p 1 entity + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_175; method_9129 create + p 0 summonedEntityPredicateBuilder + m ()Ljava/util/Optional; comp_2093 entity +c net/minecraft/class_3470 net/minecraft/structure/SimpleStructurePiece + f Lnet/minecraft/class_3499; field_15433 template + f Lnet/minecraft/class_2338; field_15432 pos + f Lorg/slf4j/Logger; field_16586 LOGGER + f Ljava/lang/String; field_31664 templateIdString + f Lnet/minecraft/class_3492; field_15434 placementData + m (Ljava/lang/String;Lnet/minecraft/class_2338;Lnet/minecraft/class_5425;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;)V method_15026 handleMetadata + p 3 world + p 4 random + p 1 metadata + p 2 pos + p 5 boundingBox + m ()Lnet/minecraft/class_3499; method_41624 getTemplate + m (Lnet/minecraft/class_3773;ILnet/minecraft/class_3485;Lnet/minecraft/class_2960;Ljava/lang/String;Lnet/minecraft/class_3492;Lnet/minecraft/class_2338;)V + p 5 template + p 6 placementData + p 7 pos + p 1 type + p 2 length + p 3 structureTemplateManager + p 4 id + m ()Lnet/minecraft/class_2960; method_35470 getId + m ()Lnet/minecraft/class_3492; method_41626 getPlacementData + m (Lnet/minecraft/class_3773;Lnet/minecraft/class_2487;Lnet/minecraft/class_3485;Ljava/util/function/Function;)V + p 3 structureTemplateManager + p 2 nbt + p 4 placementDataGetter + p 1 type + m ()Lnet/minecraft/class_2338; method_41625 getPos +c net/minecraft/class_3471 net/minecraft/structure/WoodlandMansionGenerator + c The generator for the woodland mansion structure.\n\n

The cobblestones underneath the mansion are generated {@linkplain\nnet.minecraft.world.gen.structure.WoodlandMansionStructure#postPlace after\nthe mansion placement}. + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Ljava/util/List;Lnet/minecraft/class_5819;)V method_15029 addPieces + p 2 rotation + p 3 pieces + p 4 random + p 0 manager + p 1 pos +c net/minecraft/class_3471$class_3474 net/minecraft/structure/WoodlandMansionGenerator$MansionParameters + c The parameters that control how the mansion will look like. It's\ngenerated before adding structure pieces and passed to {@link\nLayoutGenerator}. + f I field_31668 ROOM + f I field_31678 CARPET_CELL_FLAG + c Whether the cell has carpet. + f [Lnet/minecraft/class_3471$class_3478; field_15443 roomFlagsByFloor + c Contains flags for each room cell on each floor.\n\n

Each element in the matrix consists of the following fields:\n

    \n
  • {@linkplain #ROOM_ID_MASK room ID} (16 bit)\n
  • {@linkplain #ROOM_SIZE_MASK room size} (4 bit)\n
  • {@link #ORIGIN_CELL_FLAG} (1 bit)\n
  • {@link #ENTRANCE_CELL_FLAG} (1 bit)\n
  • {@link #STAIRCASE_CELL_FLAG} (1 bit)\n
  • {@link #CARPET_CELL_FLAG} (1 bit)\n
+ f I field_31666 UNSET + f I field_31676 ENTRANCE_CELL_FLAG + c Whether the cell is an entrance of the room. + f I field_31674 BIG_ROOM_FLAG + c Whether the room has size 2x2. + f Lnet/minecraft/class_3471$class_3478; field_15440 baseLayout + c Determines a rough shape of the first floor and the second floor.\n\n

Each element in this matrix is one of {@link #UNSET},\n{@link #CORRIDOR}, {@link #ROOM}, {@link #STAIRCASE}, {@link #UNUSED} or\n{@link #OUTSIDE}. + f I field_31672 SMALL_ROOM_FLAG + c Whether the room has size 1x1. + f I field_31670 UNUSED + f I field_31680 ROOM_ID_MASK + c The mask for the room ID. Connected rooms share the same ID. + f Lnet/minecraft/class_5819; field_15438 random + f I field_15442 entranceI + f I field_31669 STAIRCASE + f Lnet/minecraft/class_3471$class_3478; field_15439 thirdFloorLayout + c Determines a rough shape of the third floor.\n\n

Each element in this matrix is one of {@link #UNSET},\n{@link #CORRIDOR}, {@link #ROOM}, {@link #STAIRCASE}, {@link #UNUSED} or\n{@link #OUTSIDE}. + f I field_31679 ROOM_SIZE_MASK + c The mask for the room size. The value takes one of {@link\n#SMALL_ROOM_FLAG}, {@link #MEDIUM_ROOM_FLAG} or {@link #BIG_ROOM_FLAG}. + f I field_31667 CORRIDOR + f I field_31677 STAIRCASE_CELL_FLAG + c Whether the cell is a part of a staircase room. + f I field_31665 SIZE + f I field_31675 ORIGIN_CELL_FLAG + c Whether the cell is an origin of the room. + f I field_31673 MEDIUM_ROOM_FLAG + c Whether the room has size 1x2. + f I field_31671 OUTSIDE + f I field_15441 entranceJ + m (Lnet/minecraft/class_3471$class_3478;IILnet/minecraft/class_2350;I)V method_15045 layoutCorridor + p 2 i + p 1 layout + p 4 direction + p 3 j + p 5 length + m (Lnet/minecraft/class_3471$class_3478;)Z method_15046 adjustLayoutWithRooms + p 1 layout + m (Lnet/minecraft/class_5819;)V + p 1 random + m (Lnet/minecraft/class_3471$class_3478;Lnet/minecraft/class_3471$class_3478;)V method_15042 updateRoomFlags + p 1 layout + p 2 roomFlags + m (Lnet/minecraft/class_3471$class_3478;II)Z method_15047 isInsideMansion + p 1 i + p 0 layout + p 2 j + m ()V method_15048 layoutThirdFloor + m (Lnet/minecraft/class_3471$class_3478;IIII)Z method_15039 isRoomId + p 5 roomId + p 2 i + p 1 layout + p 4 floor + p 3 j + m (Lnet/minecraft/class_3471$class_3478;IIII)Lnet/minecraft/class_2350; method_15040 findConnectedRoomDirection + p 5 roomId + p 3 j + p 4 floor + p 1 layout + p 2 i +c net/minecraft/class_3471$class_3473 net/minecraft/structure/WoodlandMansionGenerator$RoomPool + c Provides methods that sample room template identifiers. + m (Lnet/minecraft/class_5819;)Ljava/lang/String; method_15036 getBigSecretRoom + p 1 random + m (Lnet/minecraft/class_5819;)Ljava/lang/String; method_15037 getSmallRoom + p 1 random + m (Lnet/minecraft/class_5819;)Ljava/lang/String; method_15034 getBigRoom + p 1 random + m (Lnet/minecraft/class_5819;)Ljava/lang/String; method_15035 getMediumSecretRoom + p 1 random + m (Lnet/minecraft/class_5819;)Ljava/lang/String; method_15032 getSmallSecretRoom + p 1 random + m (Lnet/minecraft/class_5819;Z)Ljava/lang/String; method_15031 getMediumGenericRoom + p 2 staircase + p 1 random + m (Lnet/minecraft/class_5819;Z)Ljava/lang/String; method_15033 getMediumFunctionalRoom + p 2 staircase + p 1 random +c net/minecraft/class_3471$class_3472 net/minecraft/structure/WoodlandMansionGenerator$FirstFloorRoomPool + c The {@link RoomPool} used for the first floor. +c net/minecraft/class_3471$class_3478 net/minecraft/structure/WoodlandMansionGenerator$FlagMatrix + c A matrix used to store floor information. Each element in this matrix\ncorresponds to the cell on the floor. + f [[I field_15451 array + f I field_15453 m + f I field_15452 fallback + f I field_15454 n + m (II)I method_15066 get + p 1 i + p 2 j + m (III)Z method_15067 anyMatchAround + p 3 value + p 2 j + p 1 i + m (IIIII)V method_15062 fill + p 1 i0 + p 2 j0 + p 3 i1 + p 4 j1 + p 5 value + m (III)V method_15065 set + p 2 j + p 1 i + p 3 value + m (III)V + p 1 n + p 2 m + p 3 fallback + m (IIII)V method_15061 update + c Updates the element in {@code (i, j)} to {@code newValue} if the\ncurrent value is equal to {@code expected}. + p 1 i + p 4 newValue + p 3 expected + p 2 j +c net/minecraft/class_3471$class_3477 net/minecraft/structure/WoodlandMansionGenerator$SecondFloorRoomPool + c The {@link RoomPool} used for the second floor. +c net/minecraft/class_3471$class_3476 net/minecraft/structure/WoodlandMansionGenerator$GenerationPiece + f Lnet/minecraft/class_2470; field_15450 rotation + f Ljava/lang/String; field_15448 template + f Lnet/minecraft/class_2338; field_15449 position +c net/minecraft/class_3471$class_3475 net/minecraft/structure/WoodlandMansionGenerator$LayoutGenerator + c Populates structure pieces based on the given {@link MansionParameters\nparameters}. + f I field_15446 entranceI + f Lnet/minecraft/class_3485; field_15444 manager + f I field_15445 entranceJ + f Lnet/minecraft/class_5819; field_15447 random + m (Ljava/util/List;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;Lnet/minecraft/class_3471$class_3473;Z)V method_15059 addMediumRoom + p 2 pos + p 1 pieces + p 6 pool + p 5 entranceDirection + p 4 connectedRoomDirection + p 3 rotation + p 7 staircase + m (Ljava/util/List;Lnet/minecraft/class_3471$class_3476;)V method_15052 addWallPiece + p 2 wallPiece + p 1 pieces + m (Ljava/util/List;Lnet/minecraft/class_3471$class_3476;)V method_15054 addEntrance + p 2 wallPiece + p 1 pieces + m (Ljava/util/List;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_3471$class_3473;)V method_15053 addBigSecretRoom + p 1 pieces + p 2 pos + p 3 rotation + p 4 pool + m (Ljava/util/List;Lnet/minecraft/class_3471$class_3476;)V method_15058 turnLeft + p 1 pieces + p 2 wallPiece + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_5819;)V + p 2 random + p 1 manager + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Ljava/util/List;Lnet/minecraft/class_3471$class_3474;)V method_15050 generate + p 3 pieces + p 4 parameters + p 1 pos + p 2 rotation + m (Ljava/util/List;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_2350;Lnet/minecraft/class_3471$class_3473;)V method_15057 addSmallRoom + p 5 pool + p 3 rotation + p 4 direction + p 1 pieces + p 2 pos + m (Ljava/util/List;Lnet/minecraft/class_3471$class_3476;Lnet/minecraft/class_3471$class_3478;Lnet/minecraft/class_2350;IIII)V method_15051 addOuterWall + p 7 endI + p 8 endJ + p 5 startI + p 6 startJ + p 3 layout + p 4 direction + p 1 pieces + p 2 wallPiece + m (Ljava/util/List;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_3471$class_3478;Lnet/minecraft/class_3471$class_3478;)V method_15055 addRoof + p 4 layout + p 5 nextFloorLayout + p 2 pos + p 3 rotation + p 1 pieces + m (Ljava/util/List;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;Lnet/minecraft/class_3471$class_3473;)V method_15056 addBigRoom + p 4 connectedRoomDirection + p 5 entranceDirection + p 6 pool + p 1 pieces + p 2 pos + p 3 rotation + m (Ljava/util/List;Lnet/minecraft/class_3471$class_3476;)V method_15060 turnRight + p 1 pieces + p 2 wallPiece +c net/minecraft/class_3471$class_3479 net/minecraft/structure/WoodlandMansionGenerator$ThirdFloorRoomPool + c The {@link RoomPool} used for the third floor. +c net/minecraft/class_3471$class_3480 net/minecraft/structure/WoodlandMansionGenerator$Piece + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2487;)V + p 1 manager + p 2 nbt + m (Lnet/minecraft/class_3485;Ljava/lang/String;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_2415;)V + p 2 template + p 1 manager + p 4 rotation + p 3 pos + p 5 mirror + m (Lnet/minecraft/class_2415;Lnet/minecraft/class_2470;)Lnet/minecraft/class_3492; method_35473 createPlacementData + p 0 mirror + p 1 rotation + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_2960;)Lnet/minecraft/class_3492; method_35475 method_35475 + p 1 id + m (Lnet/minecraft/class_3485;Ljava/lang/String;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;)V + p 1 manager + p 2 template + p 3 pos + p 4 rotation + m (Ljava/lang/String;)Lnet/minecraft/class_2960; method_35474 getId + p 0 identifier +c net/minecraft/class_2140 net/minecraft/advancement/criterion/VillagerTradeCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_3988;Lnet/minecraft/class_1799;)V method_9146 trigger + p 3 stack + p 1 player + p 2 merchant + m (Lnet/minecraft/class_47;Lnet/minecraft/class_1799;Lnet/minecraft/class_2140$class_2142;)Z method_22539 method_22539 + p 2 conditions +c net/minecraft/class_2140$class_2142 net/minecraft/advancement/criterion/VillagerTradeCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47347 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2098 item + f Ljava/util/Optional; comp_2097 villager + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55138 method_55138 + p 0 instance + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_175; method_38914 create + p 0 playerPredicate + m (Lnet/minecraft/class_47;Lnet/minecraft/class_1799;)Z method_9154 matches + p 1 villager + p 2 stack + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 3 item + p 2 villager + p 1 playerPredicate + m ()Lnet/minecraft/class_175; method_9153 any + m ()Ljava/util/Optional; comp_2097 villager + m ()Ljava/util/Optional; comp_2098 item +c net/minecraft/class_2148 net/minecraft/advancement/criterion/UsedTotemCriterion + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_2148$class_2150;)Z method_22541 method_22541 + p 1 conditions + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1799;)V method_9165 trigger + p 2 stack + p 1 player +c net/minecraft/class_2148$class_2150 net/minecraft/advancement/criterion/UsedTotemCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47351 CODEC + f Ljava/util/Optional; comp_2100 item + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55143 method_55143 + p 0 instance + m (Lnet/minecraft/class_2073;)Lnet/minecraft/class_175; method_35399 create + p 0 itemPredicate + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_1935;)Lnet/minecraft/class_175; method_9170 create + p 1 item + p 0 itemRegistry + m (Lnet/minecraft/class_1799;)Z method_9171 matches + p 1 stack + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 2 item + m ()Ljava/util/Optional; comp_2100 item +c net/minecraft/class_2143 net/minecraft/advancement/criterion/UsedEnderEyeCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_2338;)V method_9157 trigger + p 1 player + p 2 strongholdPos + m (DLnet/minecraft/class_2143$class_2145;)Z method_22540 method_22540 + p 2 conditions +c net/minecraft/class_2143$class_2145 net/minecraft/advancement/criterion/UsedEnderEyeCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47350 CODEC + f Ljava/util/Optional; comp_2029 player + f Lnet/minecraft/class_2096$class_2099; comp_2099 distance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55142 method_55142 + p 0 instance + m (Ljava/util/Optional;Lnet/minecraft/class_2096$class_2099;)V + p 2 distance + p 1 playerPredicate + m (D)Z method_9162 matches + p 1 distance + m ()Lnet/minecraft/class_2096$class_2099; comp_2099 distance +c net/minecraft/class_368 net/minecraft/client/toast/Toast + f I field_52785 BASE_WIDTH + f Ljava/lang/Object; field_2208 TYPE + f I field_39928 BASE_HEIGHT + m ()V method_71995 onFinishedRendering + m (I)F method_71808 getYPos + p 1 topIndex + m ()I method_29049 getWidth + m ()I method_29050 getHeight + m (IF)F method_71809 getXPos + p 1 scaledWindowWidth + p 2 visibleWidthPortion + m ()Lnet/minecraft/class_368$class_369; method_61988 getVisibility + m ()Lnet/minecraft/class_3414; method_66530 getSoundEvent + m (Lnet/minecraft/class_332;Lnet/minecraft/class_327;J)V method_1986 draw + p 2 textRenderer + p 3 startTime + p 1 context + m ()Ljava/lang/Object; method_1987 getType + m (Lnet/minecraft/class_374;J)V method_61989 update + p 2 time + p 1 manager + m ()I method_45072 getRequiredSpaceCount +c net/minecraft/class_368$class_369 net/minecraft/client/toast/Toast$Visibility + f Lnet/minecraft/class_3414; field_2211 sound + f Lnet/minecraft/class_368$class_369; field_2210 SHOW + f Lnet/minecraft/class_368$class_369; field_2209 HIDE + m (Ljava/lang/String;ILnet/minecraft/class_3414;)V + p 3 sound + m (Lnet/minecraft/class_1144;)V method_1988 playSound + p 1 soundManager +c net/minecraft/class_9663 net/minecraft/predicate/item/WrittenBookContentPredicate + f Lcom/mojang/serialization/Codec; field_51400 CODEC + f Lnet/minecraft/class_2096$class_2100; comp_2645 generation + f Ljava/util/Optional; comp_2642 pages + f Ljava/util/Optional; comp_2643 author + f Ljava/util/Optional; comp_2644 title + f Ljava/util/Optional; comp_2646 resolved + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59696 method_59696 + p 0 instance + m (Lnet/minecraft/class_9302;)Z method_59697 test + m ()Ljava/util/Optional; comp_2644 title + m ()Ljava/util/Optional; comp_2643 author + m ()Ljava/util/Optional; comp_2642 pages + m ()Ljava/util/Optional; comp_2646 resolved + m ()Lnet/minecraft/class_2096$class_2100; comp_2645 generation + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_2096$class_2100;Ljava/util/Optional;)V + p 1 pages + p 2 author + p 3 title + p 4 generation + p 5 resolved +c net/minecraft/class_9663$class_9664 net/minecraft/predicate/item/WrittenBookContentPredicate$RawTextPredicate + f Lcom/mojang/serialization/Codec; field_51401 CODEC + f Lnet/minecraft/class_2561; comp_2647 contents + m (Ljava/lang/Object;)Z test test + p 1 text + m (Lnet/minecraft/class_9262;)Z method_59698 test + m ()Lnet/minecraft/class_2561; comp_2647 contents + m (Lnet/minecraft/class_2561;)V + p 1 contents +c net/minecraft/class_367 net/minecraft/client/toast/AdvancementToast + f Lnet/minecraft/class_368$class_369; field_52780 visibility + f I field_41812 DEFAULT_DURATION_MS + f Lnet/minecraft/class_8779; field_2205 advancement + f Lnet/minecraft/class_2960; field_45394 TEXTURE + m (Lnet/minecraft/class_8779;)V + p 1 advancement + m ()Z method_66531 isChallenge +c net/minecraft/class_366 net/minecraft/client/toast/RecipeToast + f Lnet/minecraft/class_2561; field_26534 DESCRIPTION + f I field_52783 currentItemsDisplayed + f Lnet/minecraft/class_2561; field_26533 TITLE + f Lnet/minecraft/class_368$class_369; field_52782 visibility + f J field_32217 DEFAULT_DURATION_MS + f J field_2204 startTime + f Z field_2203 justUpdated + f Lnet/minecraft/class_2960; field_45395 TEXTURE + f Ljava/util/List; field_52781 displayItems + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V method_1984 addRecipes + p 1 categoryItem + p 2 unlockedItem + m (Lnet/minecraft/class_374;Lnet/minecraft/class_10295;)V method_1985 show + p 1 display + p 0 toastManager +c net/minecraft/class_366$class_9932 net/minecraft/client/toast/RecipeToast$DisplayItems + f Lnet/minecraft/class_1799; comp_2982 unlockedItem + f Lnet/minecraft/class_1799; comp_2981 categoryItem + m ()Lnet/minecraft/class_1799; comp_2981 categoryItem + m ()Lnet/minecraft/class_1799; comp_2982 unlockedItem + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V + p 1 categoryItem + p 2 unlockedItem +c net/minecraft/class_9661 net/minecraft/predicate/item/WritableBookContentPredicate + f Lcom/mojang/serialization/Codec; field_51395 CODEC + f Ljava/util/Optional; comp_2640 pages + m (Lnet/minecraft/class_9301;)Z method_59688 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59687 method_59687 + p 0 instance + m ()Ljava/util/Optional; comp_2640 pages + m (Ljava/util/Optional;)V + p 1 pages +c net/minecraft/class_9661$class_9662 net/minecraft/predicate/item/WritableBookContentPredicate$RawStringPredicate + f Lcom/mojang/serialization/Codec; field_51396 CODEC + f Ljava/lang/String; comp_2641 contents + m (Lnet/minecraft/class_9262;)Z method_59689 test + m (Ljava/lang/Object;)Z test test + p 1 string + m ()Ljava/lang/String; comp_2641 contents + m (Ljava/lang/String;)V + p 1 contents +c net/minecraft/class_9660 net/minecraft/predicate/item/TrimPredicate + f Lcom/mojang/serialization/Codec; field_51394 CODEC + f Ljava/util/Optional; comp_2638 material + f Ljava/util/Optional; comp_2639 pattern + m (Lnet/minecraft/class_8053;)Z method_59686 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59685 method_59685 + p 0 instance + m ()Ljava/util/Optional; comp_2639 pattern + m ()Ljava/util/Optional; comp_2638 material + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 material + p 2 pattern +c net/minecraft/class_9669 net/minecraft/loot/function/ModifyContentsLootFunction + f Lnet/minecraft/class_117; field_51431 modifier + f Lnet/minecraft/class_9666; field_51430 component + f Lcom/mojang/serialization/MapCodec; field_51429 CODEC + m (Lnet/minecraft/class_9669;)Lnet/minecraft/class_9666; method_59746 method_59746 + p 0 lootFunction + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59745 method_59745 + p 0 instance + m (Lnet/minecraft/class_9669;)Lnet/minecraft/class_117; method_59744 method_59744 + p 0 lootFunction + m (Ljava/util/List;Lnet/minecraft/class_9666;Lnet/minecraft/class_117;)V + p 2 component + p 3 modifier + p 1 conditions + m (Lnet/minecraft/class_47;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_59743 method_59743 + p 2 content +c net/minecraft/class_365 net/minecraft/client/gui/hud/SpectatorHud + f Lnet/minecraft/class_310; field_2201 client + f Lnet/minecraft/class_2960; field_45392 HOTBAR_TEXTURE + f Lnet/minecraft/class_531; field_2200 spectatorMenu + f Lnet/minecraft/class_2960; field_45393 HOTBAR_SELECTION_TEXTURE + f J field_32216 FADE_OUT_DURATION + f J field_32215 FADE_OUT_DELAY + f J field_2198 lastInteractionTime + m (Lnet/minecraft/class_332;)V method_1978 renderSpectatorMenu + p 1 context + m (Lnet/minecraft/class_310;)V + p 1 client + m ()V method_1983 useSelectedCommand + m (Lnet/minecraft/class_332;IIFFLnet/minecraft/class_537;)V method_1982 renderSpectatorCommand + p 1 context + p 6 command + p 3 x + p 2 slot + p 5 height + p 4 y + m (Lnet/minecraft/class_332;FIILnet/minecraft/class_539;)V method_1975 renderSpectatorMenu + p 5 state + p 4 y + p 3 x + p 2 height + p 1 context + m (I)V method_1976 cycleSlot + p 1 offset + m (I)V method_1977 selectSlot + p 1 slot + m ()F method_1981 getSpectatorMenuHeight + m (Lnet/minecraft/class_332;)V method_71054 render + p 1 context + m ()Z method_1980 isOpen +c net/minecraft/class_9668 net/minecraft/loot/function/FilteredLootFunction + f Lnet/minecraft/class_2073; field_51422 itemFilter + f Lcom/mojang/serialization/MapCodec; field_51421 CODEC + f Ljava/util/Optional; field_63967 onFail + f Ljava/util/Optional; field_63966 onPass + m (Lnet/minecraft/class_2073;)Lnet/minecraft/class_9668$class_12244; method_75902 builder + p 0 itemFilter + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75905 method_75905 + p 0 instance + m (Lnet/minecraft/class_58;Lnet/minecraft/class_117;)V method_75906 method_75906 + p 1 lootFunction + m (Lnet/minecraft/class_58;Lnet/minecraft/class_117;)V method_75903 method_75903 + p 1 lootFunction + m (Ljava/util/List;Lnet/minecraft/class_2073;Ljava/util/Optional;Ljava/util/Optional;)V + p 4 onFail + p 3 onPass + p 2 itemFilter + p 1 conditions + m (Lnet/minecraft/class_9668;)Ljava/util/Optional; method_75907 method_75907 + p 0 lootFunction + m (Lnet/minecraft/class_9668;)Lnet/minecraft/class_2073; method_75908 method_75908 + p 0 lootFunction + m (Lnet/minecraft/class_9668;)Ljava/util/Optional; method_75904 method_75904 + p 0 lootFunction +c net/minecraft/class_9668$class_12244 net/minecraft/loot/function/FilteredLootFunction$Builder + f Ljava/util/Optional; field_63969 onPass + f Ljava/util/Optional; field_63970 onFail + f Lnet/minecraft/class_2073; field_63968 itemFilter + m ()Lnet/minecraft/class_9668$class_12244; method_75909 getThisBuilder + m (Lnet/minecraft/class_2073;)V + p 1 itemFilter + m (Ljava/util/Optional;)Lnet/minecraft/class_9668$class_12244; method_75910 onPass + p 1 onPass + m (Ljava/util/Optional;)Lnet/minecraft/class_9668$class_12244; method_75911 onFail + p 1 onFail +c net/minecraft/class_364 net/minecraft/client/gui/Element + c Base GUI interface for handling callbacks related to\nkeyboard or mouse actions.\n\nMouse coordinate is bounded by the size of the window in\npixels. + m (DD)V method_16014 mouseMoved + c Callback for when a mouse move event has been captured.\n\n@see net.minecraft.client.Mouse#onCursorPos + p 1 mouseX + c the X coordinate of the mouse + p 3 mouseY + c the Y coordinate of the mouse + m (Lnet/minecraft/class_11909;Z)Z method_25402 mouseClicked + c Callback for when a mouse button down event\nhas been captured.\n\nThe button number is identified by the constants in\n{@link org.lwjgl.glfw.GLFW GLFW} class.\n\n@return {@code true} to indicate that the event handling is successful/valid\n@see net.minecraft.client.Mouse#onMouseButton(long, int, int, int)\n@see org.lwjgl.glfw.GLFW#GLFW_MOUSE_BUTTON_1 + p 2 doubled + p 1 click + m (DDDD)Z method_25401 mouseScrolled + c Callback for when a mouse button scroll event\nhas been captured.\n\n@return {@code true} to indicate that the event handling is successful/valid\n@see net.minecraft.client.Mouse#onMouseScroll(long, double, double) + p 1 mouseX + c the X coordinate of the mouse + p 3 mouseY + c the Y coordinate of the mouse + p 5 horizontalAmount + c the horizontal scroll amount + p 7 verticalAmount + c the vertical scroll amount + m ()Lnet/minecraft/class_8016; method_48218 getFocusedPath + m ()Z method_72784 isClickable + m (Lnet/minecraft/class_8028;)Lnet/minecraft/class_8030; method_65515 getBorder + p 1 direction + m (Lnet/minecraft/class_8023;)Lnet/minecraft/class_8016; method_48205 getNavigationPath + p 1 navigation + m (Lnet/minecraft/class_11905;)Z method_25400 charTyped + c Callback for when a character input has been captured.\n\nThe key code is identified by the constants in\n{@link org.lwjgl.glfw.GLFW GLFW} class.\n\n@return {@code true} to indicate that the event handling is successful/valid\n@see net.minecraft.client.Keyboard#onChar(long, int, int)\n@see org.lwjgl.glfw.GLFW#GLFW_KEY_Q\n@see org.lwjgl.glfw.GLFWKeyCallbackI#invoke(long, int, int, int, int) + p 1 input + m (Lnet/minecraft/class_11908;)Z method_25404 keyPressed + c Callback for when a key down event has been captured.\n\nThe key code is identified by the constants in\n{@link org.lwjgl.glfw.GLFW GLFW} class.\n\n@return {@code true} to indicate that the event handling is successful/valid\n@see net.minecraft.client.Keyboard#onKey(long, int, int, int, int)\n@see org.lwjgl.glfw.GLFW#GLFW_KEY_Q\n@see org.lwjgl.glfw.GLFWKeyCallbackI#invoke(long, int, int, int, int) + p 1 input + m (Lnet/minecraft/class_11909;)Z method_25406 mouseReleased + c Callback for when a mouse button release event\nhas been captured.\n\nThe button number is identified by the constants in\n{@link org.lwjgl.glfw.GLFW GLFW} class.\n\n@return {@code true} to indicate that the event handling is successful/valid\n@see net.minecraft.client.Mouse#onMouseButton(long, int, int, int)\n@see org.lwjgl.glfw.GLFW#GLFW_MOUSE_BUTTON_1 + p 1 click + m (DD)Z method_25405 isMouseOver + c Checks if the mouse position is within the bound\nof the element.\n\n@return {@code true} if the mouse is within the bound of the element, otherwise {@code false} + p 1 mouseX + c the X coordinate of the mouse + p 3 mouseY + c the Y coordinate of the mouse + m ()Z method_25370 isFocused + m (Z)V method_25365 setFocused + p 1 focused + m (Lnet/minecraft/class_11909;DD)Z method_25403 mouseDragged + c Callback for when a mouse button drag event\nhas been captured.\n\nThe button number is identified by the constants in\n{@link org.lwjgl.glfw.GLFW GLFW} class.\n\n@return {@code true} to indicate that the event handling is successful/valid\n@see net.minecraft.client.Mouse#onCursorPos(long, double, double)\n@see org.lwjgl.glfw.GLFW#GLFW_MOUSE_BUTTON_1 + p 4 offsetY + p 2 offsetX + p 1 click + m (Lnet/minecraft/class_11908;)Z method_16803 keyReleased + c Callback for when a key down event has been captured.\n\nThe key code is identified by the constants in\n{@link org.lwjgl.glfw.GLFW GLFW} class.\n\n@return {@code true} to indicate that the event handling is successful/valid\n@see net.minecraft.client.Keyboard#onKey(long, int, int, int, int)\n@see org.lwjgl.glfw.GLFW#GLFW_KEY_Q\n@see org.lwjgl.glfw.GLFWKeyCallbackI#invoke(long, int, int, int, int) + p 1 input + m ()Lnet/minecraft/class_8030; method_48202 getNavigationFocus +c net/minecraft/class_9667 net/minecraft/loot/ContainerComponentModifiers + f Lnet/minecraft/class_9666; field_51418 CHARGED_PROJECTILES + f Lcom/mojang/serialization/Codec; field_51420 MODIFIER_CODEC + f Lnet/minecraft/class_9666; field_51416 CONTAINER + f Lnet/minecraft/class_9666; field_51417 BUNDLE_CONTENTS + f Ljava/util/Map; field_51419 TYPE_TO_MODIFIER + m (Lnet/minecraft/class_9331;)Lcom/mojang/serialization/DataResult; method_59729 method_59729 + p 0 componentType +c net/minecraft/class_9667$3 net/minecraft/loot/ContainerComponentModifiers$3 + m (Lnet/minecraft/class_9278;Ljava/util/stream/Stream;)Lnet/minecraft/class_9278; method_59737 apply + m (Lnet/minecraft/class_9278;)Ljava/util/stream/Stream; method_59736 stream + m ()Lnet/minecraft/class_9278; method_59738 getDefault +c net/minecraft/class_9667$2 net/minecraft/loot/ContainerComponentModifiers$2 + m ()Lnet/minecraft/class_9276; method_59735 getDefault + m (Lnet/minecraft/class_9276;)Ljava/util/stream/Stream; method_59733 stream + m (Lnet/minecraft/class_9276;Ljava/util/stream/Stream;)Lnet/minecraft/class_9276; method_59734 apply +c net/minecraft/class_9667$1 net/minecraft/loot/ContainerComponentModifiers$1 + m ()Lnet/minecraft/class_9288; method_59732 getDefault + m (Lnet/minecraft/class_9288;Ljava/util/stream/Stream;)Lnet/minecraft/class_9288; method_59731 apply + m (Lnet/minecraft/class_9288;)Ljava/util/stream/Stream; method_59730 stream +c net/minecraft/class_9666 net/minecraft/loot/ContainerComponentModifier + m (Lnet/minecraft/class_1799;Ljava/util/function/UnaryOperator;)V method_59721 apply + p 2 contentsOperator + p 1 stack + m ()Ljava/lang/Object; method_59726 getDefault + m (Ljava/lang/Object;)Ljava/util/stream/Stream; method_59723 stream + p 1 component + m (Lnet/minecraft/class_1799;Ljava/lang/Object;Ljava/util/stream/Stream;)V method_59720 apply + p 3 contents + p 2 component + p 1 stack + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_12271; method_76205 stream + p 1 stack + m ()Lnet/minecraft/class_9331; method_59719 getComponentType + m (Ljava/lang/Object;Ljava/util/stream/Stream;)Ljava/lang/Object; method_59724 apply + p 2 contents + p 1 component + m (Ljava/util/function/UnaryOperator;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_59725 method_59725 + p 1 contentStack + m (Lnet/minecraft/class_1799;)Z method_76207 method_76207 + p 0 s + m (Lnet/minecraft/class_1799;Ljava/util/stream/Stream;)V method_59722 apply + p 1 stack + p 2 contents +c net/minecraft/class_362 net/minecraft/client/gui/AbstractParentElement + f Z field_22781 dragging + f Lnet/minecraft/class_364; field_22780 focused +c net/minecraft/class_9676 net/minecraft/data/tag/vanilla/VanillaEnchantmentTagProvider +c net/minecraft/class_379 net/minecraft/client/font/GlyphMetrics + m ()F method_16799 getBoldOffset + m ()F method_16800 getShadowOffset + m (F)Lnet/minecraft/class_379; method_73329 empty + p 0 advance + m (Z)F method_16798 getAdvance + p 1 bold +c net/minecraft/class_378 net/minecraft/client/font/FontManager + f Ljava/lang/String; field_32226 FONTS_JSON + f Lnet/minecraft/class_11879; field_62467 playerHeadGlyphs + f Lorg/slf4j/Logger; field_2261 LOGGER + f Lnet/minecraft/class_2960; field_24254 MISSING_STORAGE_ID + f Lnet/minecraft/class_378$class_11638; field_61605 anyFonts + f Ljava/util/List; field_44758 fonts + f Ljava/util/Map; field_2259 fontStorages + f Lcom/google/gson/Gson; field_44757 GSON + f Lnet/minecraft/class_11697; field_61934 atlasManager + f Lnet/minecraft/class_378$class_11638; field_61606 advanceValidatedFonts + f Ljava/util/Map; field_61935 spriteGlyphs + f Lnet/minecraft/class_377; field_24255 missingStorage + f Lnet/minecraft/class_1060; field_2260 textureManager + f Lnet/minecraft/class_7654; field_40409 FINDER + m (Lnet/minecraft/class_390$class_9241;Ljava/util/concurrent/Executor;Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; method_51611 method_51611 + p 3 dest + m (Lnet/minecraft/class_378$class_8534;Lnet/minecraft/class_389$class_8539;Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_51613 load + p 3 resourceManager + p 2 loadable + p 1 key + p 4 executor + m (Ljava/util/concurrent/Executor;Ljava/util/List;)Ljava/util/concurrent/CompletionStage; method_51626 method_51626 + p 2 entries + m (Lnet/minecraft/class_378$class_8536;Lnet/minecraft/class_3695;)V method_51614 reload + p 1 index + p 2 profiler + m (Lnet/minecraft/class_378$class_8536;)V method_51610 method_51610 + p 1 index + m (Lnet/minecraft/class_378$class_8534;Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;Lnet/minecraft/class_378$class_8537;Lnet/minecraft/class_9243$class_9244;Lnet/minecraft/class_389$class_8539;)V method_51612 method_51612 + p 6 loadable + m (Lnet/minecraft/class_378$class_8537;Lnet/minecraft/class_378$class_8534;Lnet/minecraft/class_9243$class_9244;Lnet/minecraft/class_389$class_8540;)V method_51615 method_51615 + p 3 reference + m (Lnet/minecraft/class_2960;Ljava/util/List;Ljava/util/Set;)Lnet/minecraft/class_377; method_72785 createFontStorage + p 2 allFonts + p 3 filters + p 1 fontId + m (Ljava/util/List;I)V method_51618 method_51618 + p 1 codePoint + m (Ljava/util/List;Lnet/minecraft/class_2960;)Ljava/util/List; method_51619 loadFontProviders + p 1 id + p 0 fontResources + m (Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_51608 loadIndex + p 2 executor + p 1 resourceManager + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_377; method_57023 getStorageInternal + p 1 id + m ()Lnet/minecraft/class_327; method_27539 createTextRenderer + m (Ljava/util/List;Ljava/util/Map;Ljava/lang/Void;)Lnet/minecraft/class_378$class_8536; method_51622 method_51622 + p 2 ignored + m ()Lnet/minecraft/class_327; method_45078 createAdvanceValidatingTextRenderer + m (Ljava/util/List;)Ljava/util/Map; method_51617 getRequiredFontProviders + p 1 entries + m (Lnet/minecraft/class_1060;Lnet/minecraft/class_11697;Lnet/minecraft/class_11786;)V + p 1 textureManager + p 2 atlasManager + p 3 playerSkinCache + m (Lnet/minecraft/class_315;)Ljava/util/Set; method_57026 getActiveFilters + p 0 options + m (Lnet/minecraft/class_11719$class_11720;)Lnet/minecraft/class_11603; method_73148 getSpriteGlyphs + p 1 description + m (Ljava/util/List;Lnet/minecraft/class_390$class_9241;)V method_51620 insertFont + p 2 font + p 1 fonts + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_1059;)V method_73147 method_73147 + p 1 definitionId + p 2 atlasTexture + m (Lnet/minecraft/class_315;)V method_57024 setActiveFilters + p 1 options + m (Ljava/util/List;Lnet/minecraft/class_390$class_9241;Ljava/util/concurrent/Executor;Ljava/util/List;)Ljava/util/concurrent/CompletionStage; method_51621 method_51621 + p 4 providers + m ()Lnet/minecraft/class_390$class_9241; method_57027 createEmptyFont + m (Ljava/util/Map;Lnet/minecraft/class_2960;Lnet/minecraft/class_378$class_8537;)V method_51624 method_51624 + p 2 fontEntry + p 1 dependent + m (Ljava/util/Map;Lnet/minecraft/class_2960;Ljava/util/List;)V method_51625 method_51625 + p 2 fonts + m (Ljava/util/Set;Lnet/minecraft/class_2960;Ljava/util/List;)V method_51607 method_51607 + p 2 id + p 3 fonts + m (Lnet/minecraft/class_8523;Lnet/minecraft/class_378$class_8537;)V method_51609 method_51609 + p 1 entry +c net/minecraft/class_378$class_8536 net/minecraft/client/font/FontManager$ProviderIndex + f Ljava/util/Map; comp_2351 fontSets + f Ljava/util/List; comp_1497 allProviders + m ()Ljava/util/Map; comp_2351 fontSets + m ()Ljava/util/List; comp_1497 allProviders + m (Ljava/util/Map;Ljava/util/List;)V + p 1 fontSets + p 2 allProviders +c net/minecraft/class_378$class_11638 net/minecraft/client/font/FontManager$Fonts + f Lnet/minecraft/class_11769; field_61610 rectangle + f Lnet/minecraft/class_378$class_11638$class_11717; field_61936 cached + f Z field_61608 advanceValidating + m ()V method_72786 clear + m (Lnet/minecraft/class_378;Z)V + p 2 advanceValidating + m (Lnet/minecraft/class_11719;)Lnet/minecraft/class_11603; method_73149 getGlyphsImpl + p 1 source +c net/minecraft/class_378$class_11638$class_11717 net/minecraft/client/font/FontManager$Fonts$Cached + f Lnet/minecraft/class_11603; comp_4587 glyphs + f Lnet/minecraft/class_11719; comp_4586 source + m ()Lnet/minecraft/class_11603; comp_4587 glyphs + m ()Lnet/minecraft/class_11719; comp_4586 source + m (Lnet/minecraft/class_11719;Lnet/minecraft/class_11603;)V + p 1 source + p 2 glyphs +c net/minecraft/class_378$class_8537 net/minecraft/client/font/FontManager$FontEntry + f Ljava/util/Set; comp_1500 dependencies + f Lnet/minecraft/class_2960; comp_1498 fontId + f Ljava/util/List; comp_1499 builders + m (Lnet/minecraft/class_2960;)V + p 1 fontId + m (Lnet/minecraft/class_378$class_8534;Lnet/minecraft/class_9243$class_9244;Lnet/minecraft/class_389$class_8540;)V method_51631 addReferenceBuilder + p 1 key + p 3 reference + p 2 filters + m (Lnet/minecraft/class_378$class_8534;Lnet/minecraft/class_9243$class_9244;Ljava/util/concurrent/CompletableFuture;)V method_51632 addBuilder + p 1 key + p 2 filters + p 3 fontFuture + m (Lnet/minecraft/class_378$class_8535;)Ljava/util/stream/Stream; method_51633 method_51633 + p 0 builder + m ()Ljava/util/stream/Stream; method_51635 getImmediateProviders + m (Ljava/util/function/Function;)Ljava/util/Optional; method_51634 getRequiredFontProviders + p 1 fontRetriever + m ()Lnet/minecraft/class_2960; comp_1498 fontId + m ()Ljava/util/List; comp_1499 builders + m ()Ljava/util/Set; comp_1500 dependencies + m (Lnet/minecraft/class_2960;Ljava/util/List;Ljava/util/Set;)V + p 1 fontId + p 2 builders + p 3 dependencies +c net/minecraft/class_378$class_8534 net/minecraft/client/font/FontManager$FontKey + f Ljava/lang/String; comp_1492 pack + f I comp_1493 index + f Lnet/minecraft/class_2960; comp_1491 fontId + m ()Lnet/minecraft/class_2960; comp_1491 fontId + m ()I comp_1493 index + m ()Ljava/lang/String; comp_1492 pack + m (Lnet/minecraft/class_2960;Ljava/lang/String;I)V + p 1 fontId + p 2 pack + p 3 index +c net/minecraft/class_378$class_8556 net/minecraft/client/font/FontManager$Providers + f Lcom/mojang/serialization/Codec; field_44798 CODEC + f Ljava/util/List; comp_1518 providers + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51747 method_51747 + p 0 instance + m ()Ljava/util/List; comp_1518 providers + m (Ljava/util/List;)V + p 1 providers +c net/minecraft/class_378$class_8535 net/minecraft/client/font/FontManager$Builder + f Lcom/mojang/datafixers/util/Either; comp_1495 result + f Lnet/minecraft/class_9243$class_9244; comp_2350 filter + f Lnet/minecraft/class_378$class_8534; comp_1494 id + m (Lnet/minecraft/class_390$class_9241;)Lnet/minecraft/class_390$class_9241; method_57028 applyFilter + p 1 font + m (Lnet/minecraft/class_390;)Ljava/util/List; method_57029 method_57029 + p 1 font + m (Ljava/util/function/Function;)Ljava/util/Optional; method_51629 build + p 1 fontRetriever + m (Ljava/util/function/Function;Lnet/minecraft/class_2960;)Ljava/util/Optional; method_51630 method_51630 + p 2 referee + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/Optional; method_51628 method_51628 + p 1 future + m ()Lcom/mojang/datafixers/util/Either; comp_1495 result + m ()Lnet/minecraft/class_9243$class_9244; comp_2350 filter + m ()Lnet/minecraft/class_378$class_8534; comp_1494 id + m (Lnet/minecraft/class_378$class_8534;Lnet/minecraft/class_9243$class_9244;Lcom/mojang/datafixers/util/Either;)V + p 1 id + p 2 filter + p 3 result +c net/minecraft/class_9674 net/minecraft/data/tag/EnchantmentTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registriesFuture + m (Lnet/minecraft/class_7225$class_7874;[Lnet/minecraft/class_5321;)V method_59781 createTooltipOrderTag + p 1 registries + p 2 enchantments + m (Ljava/util/Set;Lnet/minecraft/class_6880$class_6883;)Z method_59779 method_59779 + p 1 entry +c net/minecraft/class_377 net/minecraft/client/font/FontStorage + f Lnet/minecraft/class_11759$class_11760; field_62136 abstractBaker + f Ljava/util/List; field_49121 availableFonts + f Lnet/minecraft/class_11603; field_61614 anyGlyphs + f F field_39934 MAX_ADVANCE + f Lnet/minecraft/class_11642; field_61611 glyphBaker + f Ljava/util/function/Supplier; field_62137 blankGlyphSupplier + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_2249 charactersByWidth + f Lnet/minecraft/class_11768; field_2256 blankBakedGlyph + f Lnet/minecraft/class_377$class_11640; field_61613 blankBakedGlyphPair + f Lnet/minecraft/class_8532; field_61612 bakedGlyphCache + f Lnet/minecraft/class_11768; field_62135 MISSING_GLYPH + f Lnet/minecraft/class_11603; field_61615 advanceValidatingGlyphs + f Ljava/util/List; field_49120 allFonts + f Ljava/util/function/IntFunction; field_54820 findGlyph + f Lnet/minecraft/class_11769; field_20910 whiteRectangleBakedGlyph + m (Ljava/util/List;Ljava/util/Set;)V method_2004 setFonts + p 2 activeFilters + p 1 allFonts + m (Z)Lnet/minecraft/class_11603; method_72788 getGlyphs + p 1 advanceValidating + m (Lnet/minecraft/class_11642;)V + p 1 baker + m (I)Lnet/minecraft/class_377$class_11640; method_2014 getBaked + p 1 codePoint + m (Ljava/util/List;Ljava/util/Set;I)V method_57035 method_57035 + p 3 codePoint + m ()V method_57038 clear + m (Ljava/util/List;Ljava/util/Set;)Ljava/util/List; method_57037 applyFilters + p 1 allFonts + p 2 activeFilters + m ()Lnet/minecraft/class_11769; method_22943 getRectangleBakedGlyph + m (I)[[Lnet/minecraft/class_377$class_11640; method_51638 method_51638 + p 0 rowCount + m (I)Lnet/minecraft/class_377$class_11640; method_40038 findGlyph + c {@return the glyph of {@code codePoint}}\n\n@apiNote Call {@link #getGlyph} instead, as that method provides caching. + p 1 codePoint + m (Lnet/minecraft/class_5819;I)Lnet/minecraft/class_11768; method_2013 getObfuscatedBakedGlyph + p 1 random + p 2 width + m (Ljava/util/Set;)V method_57036 setActiveFilters + p 1 activeFilters + m (Lnet/minecraft/class_379;)Z method_45079 isAdvanceInvalid + p 0 glyph +c net/minecraft/class_377$class_11640 net/minecraft/client/font/FontStorage$GlyphPair + f Ljava/util/function/Supplier; comp_4460 advanceValidating + f Ljava/util/function/Supplier; comp_4459 any + m ()Ljava/util/function/Supplier; comp_4460 advanceValidating + m (Z)Ljava/util/function/Supplier; method_72794 get + p 1 advanceValidating + m ()Ljava/util/function/Supplier; comp_4459 any + m (Ljava/util/function/Supplier;Ljava/util/function/Supplier;)V + p 1 any + p 2 advanceValidating +c net/minecraft/class_377$class_11766 net/minecraft/client/font/FontStorage$LazyBakedGlyph + f Lnet/minecraft/class_11768; field_62141 baked + f Lnet/minecraft/class_11759; field_62140 glyph + m (Lnet/minecraft/class_377;Lnet/minecraft/class_11759;)V + p 2 glyph + m ()Lnet/minecraft/class_11768; method_73405 get +c net/minecraft/class_377$class_11641 net/minecraft/client/font/FontStorage$Glyphs + f Z field_61620 advanceValidating + m (Lnet/minecraft/class_377;Z)V + p 2 advanceValidating +c net/minecraft/class_9673 net/minecraft/client/sound/BufferedAudioStream + f I field_51441 CHUNK_SIZE + m (Lit/unimi/dsi/fastutil/floats/FloatConsumer;)Z method_59758 read + p 1 consumer +c net/minecraft/class_9672 net/minecraft/client/sound/NonRepeatingAudioStream + m ()Ljava/nio/ByteBuffer; method_59757 readAll +c net/minecraft/class_9671 net/minecraft/loot/function/SetItemLootFunction + f Lcom/mojang/serialization/MapCodec; field_51436 CODEC + f Lnet/minecraft/class_6880; field_51437 item + m (Lnet/minecraft/class_9671;)Lnet/minecraft/class_6880; method_59749 method_59749 + p 0 lootFunction + m (Ljava/util/List;Lnet/minecraft/class_6880;)V + p 2 item + p 1 conditions + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59750 method_59750 + p 0 instance +c net/minecraft/class_9670 net/minecraft/loot/function/SetCustomModelDataLootFunction + f Lcom/mojang/serialization/Codec; field_55219 COLOR_CODEC + f Lcom/mojang/serialization/MapCodec; field_51434 CODEC + f Ljava/util/Optional; field_55220 floats + f Ljava/util/Optional; field_55223 colors + f Ljava/util/Optional; field_55221 flags + f Ljava/util/Optional; field_55222 strings + m (Lnet/minecraft/class_47;Lnet/minecraft/class_5658;)Ljava/lang/Integer; method_65374 method_65374 + p 1 provider + m (Lnet/minecraft/class_5658;)Ljava/util/stream/Stream; method_65377 method_65377 + p 0 value + m (Lnet/minecraft/class_9670;)Ljava/util/Optional; method_65384 method_65384 + p 0 lootFunction + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59748 method_59748 + p 0 instance + m (Lnet/minecraft/class_9670;)Ljava/util/Optional; method_65383 method_65383 + p 0 lootFunction + m (Ljava/util/Optional;Ljava/util/List;Ljava/util/function/Function;)Ljava/util/List; method_65380 apply + p 1 current + p 0 values + p 2 operationValueToAppliedValue + m (Lnet/minecraft/class_9670;)Ljava/util/Optional; method_59747 method_59747 + p 0 lootFunction + m (Ljava/util/function/Function;Ljava/util/List;Lnet/minecraft/class_9368$class_9677;)Ljava/util/List; method_65381 method_65381 + p 2 operation + m (Lnet/minecraft/class_9368$class_9677;)Ljava/util/stream/Stream; method_65375 method_65375 + p 0 operation + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 4 strings + p 5 colors + p 1 conditions + p 2 floats + p 3 flags + m (Lnet/minecraft/class_9670;)Ljava/util/Optional; method_65376 method_65376 + p 0 lootFunction + m (Ljava/util/List;Lnet/minecraft/class_9368$class_9677;)Ljava/util/List; method_65378 method_65378 + p 1 operation + m (Ljava/util/Optional;Ljava/util/List;)Ljava/util/List; method_65379 apply + p 1 current + p 0 values + m (Lnet/minecraft/class_47;Lnet/minecraft/class_5658;)Ljava/lang/Float; method_65382 method_65382 + p 1 provider +c net/minecraft/class_372 net/minecraft/client/toast/TutorialToast + f Z field_2222 hasProgressBar + f F field_52792 lastProgress + f I field_52793 displayDuration + f F field_2228 progress + f J field_52791 lastTime + f Lnet/minecraft/class_372$class_373; field_2225 type + f Ljava/util/List; field_55097 text + f Lnet/minecraft/class_2960; field_45397 TEXTURE + f I field_32223 PROGRESS_BAR_HEIGHT + f I field_32222 PROGRESS_BAR_WIDTH + f Lnet/minecraft/class_368$class_369; field_2227 visibility + f I field_32224 PROGRESS_BAR_X + m ()V method_1993 hide + m (F)V method_1992 setProgress + p 1 progress + m (Lnet/minecraft/class_327;Lnet/minecraft/class_372$class_373;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Z)V + p 3 title + p 4 description + p 5 hasProgressBar + p 1 textRenderer + p 2 type + m (Lnet/minecraft/class_327;Lnet/minecraft/class_372$class_373;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;ZI)V + p 2 type + p 3 title + p 1 textRenderer + p 6 displayDuration + p 4 description + p 5 hasProgressBar + m ()I method_65180 getTextHeight +c net/minecraft/class_372$class_373 net/minecraft/client/toast/TutorialToast$Type + f Lnet/minecraft/class_2960; field_45398 texture + f Lnet/minecraft/class_372$class_373; field_28782 RIGHT_CLICK + f Lnet/minecraft/class_372$class_373; field_2230 MOVEMENT_KEYS + f Lnet/minecraft/class_372$class_373; field_2233 RECIPE_BOOK + f Lnet/minecraft/class_372$class_373; field_2237 MOUSE + f Lnet/minecraft/class_372$class_373; field_2236 WOODEN_PLANKS + f Lnet/minecraft/class_372$class_373; field_2235 TREE + f Lnet/minecraft/class_372$class_373; field_26848 SOCIAL_INTERACTIONS + m (Lnet/minecraft/class_332;II)V method_1994 drawIcon + p 1 context + p 2 x + p 3 y + m (Ljava/lang/String;ILnet/minecraft/class_2960;)V + p 3 texture +c net/minecraft/class_370 net/minecraft/client/toast/SystemToast + f Z field_2214 justUpdated + f Lnet/minecraft/class_2960; field_45396 TEXTURE + f I field_39926 LINE_HEIGHT + f Lnet/minecraft/class_370$class_9037; field_2213 type + f I field_25038 width + f Lnet/minecraft/class_2561; field_2215 title + f Lnet/minecraft/class_368$class_369; field_52784 visibility + f Z field_47582 hidden + f J field_2216 startTime + f I field_32219 MIN_WIDTH + f Ljava/util/List; field_25037 lines + f I field_39927 PADDING_Y + m (Lnet/minecraft/class_310;)V method_57723 addLowDiskSpace + p 0 client + m (Lnet/minecraft/class_310;Lnet/minecraft/class_1923;)V method_57724 addChunkLoadFailure + p 1 pos + p 0 client + m (Lnet/minecraft/class_310;Ljava/lang/String;)V method_29627 addPackCopyFailure + p 1 directory + p 0 client + m (Lnet/minecraft/class_310;I)V method_60865 addFileDropFailure + p 1 count + p 0 client + m ()Lnet/minecraft/class_370$class_9037; method_1989 getType + m (Lnet/minecraft/class_370$class_9037;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 2 title + p 1 type + p 3 description + m (Lnet/minecraft/class_2561;)Lcom/google/common/collect/ImmutableList; method_29626 getTextAsList + p 0 text + m (Lnet/minecraft/class_374;Lnet/minecraft/class_370$class_9037;)V method_55507 hide + p 1 type + p 0 manager + m (Lnet/minecraft/class_374;Lnet/minecraft/class_370$class_9037;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V method_1990 show + p 3 description + p 2 title + p 1 type + p 0 manager + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V method_1991 setContent + p 1 title + p 2 description + m (Lnet/minecraft/class_374;Lnet/minecraft/class_370$class_9037;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V method_27024 add + p 0 manager + p 1 type + p 2 title + p 3 description + m (Lnet/minecraft/class_310;Lnet/minecraft/class_1923;)V method_57725 addChunkSaveFailure + p 0 client + p 1 pos + m (Lnet/minecraft/class_310;Ljava/lang/String;)V method_27023 addWorldAccessFailureToast + p 0 client + p 1 worldName + m (Lnet/minecraft/class_310;Ljava/lang/String;)V method_27025 addWorldDeleteFailureToast + p 0 client + p 1 worldName + m (Lnet/minecraft/class_310;Lnet/minecraft/class_370$class_9037;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)Lnet/minecraft/class_370; method_29047 create + p 0 client + p 2 title + p 1 type + p 3 description + m ()V method_55508 hide + m (Lnet/minecraft/class_370$class_9037;Lnet/minecraft/class_2561;Ljava/util/List;I)V + p 3 lines + p 4 width + p 1 type + p 2 title +c net/minecraft/class_370$class_9037 net/minecraft/client/toast/SystemToast$Type + f J field_47590 displayDuration + f Lnet/minecraft/class_370$class_9037; field_49487 LOW_DISK_SPACE + f Lnet/minecraft/class_370$class_9037; field_49488 CHUNK_LOAD_FAILURE + f Lnet/minecraft/class_370$class_9037; field_49489 CHUNK_SAVE_FAILURE + f Lnet/minecraft/class_370$class_9037; field_47588 PERIODIC_NOTIFICATION + f Lnet/minecraft/class_370$class_9037; field_47589 UNSECURE_SERVER_WARNING + f Lnet/minecraft/class_370$class_9037; field_47586 WORLD_ACCESS_FAILURE + f Lnet/minecraft/class_370$class_9037; field_47587 PACK_COPY_FAILURE + f Lnet/minecraft/class_370$class_9037; field_47584 WORLD_BACKUP + f Lnet/minecraft/class_370$class_9037; field_52128 FILE_DROP_FAILURE + f Lnet/minecraft/class_370$class_9037; field_47585 PACK_LOAD_FAILURE + f Lnet/minecraft/class_370$class_9037; field_47583 NARRATOR_TOGGLE + m (J)V + p 1 displayDuration +c net/minecraft/class_376 net/minecraft/client/font/BlankFont + f Lnet/minecraft/class_11759; field_62129 MISSING +c net/minecraft/class_9679 net/minecraft/particle/AbstractDustParticleEffect + f Lcom/mojang/serialization/Codec; field_51496 SCALE_CODEC + f F field_51493 scale + f F field_51494 MIN_SCALE + f F field_51495 MAX_SCALE + m ()F method_59846 getScale + m (F)V + p 1 scale + m (Ljava/lang/Float;)Lcom/mojang/serialization/DataResult; method_59844 method_59844 + p 0 scale +c net/minecraft/class_374 net/minecraft/client/toast/ToastManager + f Lnet/minecraft/class_374$class_375; field_60738 nowPlayingToast + f Ljava/util/Deque; field_2240 toastQueue + f I field_39929 SPACES + f Ljava/util/List; field_2239 visibleEntries + f Lnet/minecraft/class_310; field_2238 client + f Ljava/util/BitSet; field_39931 occupiedSpaces + f Ljava/util/Set; field_55860 queuedToastSounds + m (I)I method_45073 getTopIndex + p 1 requiredSpaces + m (Lnet/minecraft/class_310;Lnet/minecraft/class_315;)V + p 1 client + p 2 gameOptions + m (Lnet/minecraft/class_12345;)V method_76620 initMusicToast + p 1 toastMode + m ()I method_45076 getEmptySpaceCount + m (Ljava/lang/Class;Ljava/lang/Object;)Lnet/minecraft/class_368; method_1997 getToast + p 2 type + p 1 toastClass + m (Lnet/minecraft/class_332;)V method_1996 draw + p 1 context + m ()V method_61990 update + m (Lnet/minecraft/class_368;)Z method_61992 method_61992 + p 1 toast + m (Lnet/minecraft/class_368;)V method_1999 add + p 1 toast + m ()V method_71815 onMusicTrackStart + m ()V method_2000 clear + m ()V method_71816 onMusicTrackStop + m ()Lnet/minecraft/class_310; method_1995 getClient + m (Lnet/minecraft/class_12345;)V method_76619 onMusicToastModeUpdated + p 1 toastMode + m ()D method_48221 getNotificationDisplayTimeMultiplier + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/class_374$class_375;)Z method_61991 method_61991 + p 2 entry +c net/minecraft/class_374$class_375 net/minecraft/client/toast/ToastManager$Entry + f Lnet/minecraft/class_368; field_2241 instance + f J field_32221 DISAPPEAR_TIME + f J field_2242 showTime + f Lnet/minecraft/class_368$class_369; field_2244 visibility + f J field_2243 startTime + f I field_39933 requiredSpaceCount + f F field_52789 visibleWidthPortion + f Z field_52790 finishedRendering + f I field_52787 topIndex + f J field_52788 fullyVisibleTime + m ()V method_61995 update + m (Lnet/minecraft/class_374;Lnet/minecraft/class_368;II)V + p 2 instance + p 3 topIndex + p 4 requiredSpaceCount + m ()Z method_61994 isFinishedRendering + m ()V method_71819 init + m (Lnet/minecraft/class_332;I)V method_2002 draw + p 2 scaledWindowWidth + p 1 context + m ()Lnet/minecraft/class_368; method_2001 getInstance + m (J)V method_61993 updateVisibleWidthPortion + p 1 time +c net/minecraft/class_9643 net/minecraft/predicate/collection/CollectionCountsPredicate + m ()Ljava/util/List; method_59613 getEntries + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_59614 createCodec + p 0 predicateCodec + m (Ljava/util/List;)Lnet/minecraft/class_9643; method_59615 create + p 0 entries + m ([Lnet/minecraft/class_9643$class_9644;)Lnet/minecraft/class_9643; method_59616 create + p 0 entries +c net/minecraft/class_9643$class_9644 net/minecraft/predicate/collection/CollectionCountsPredicate$Entry + f Ljava/util/function/Predicate; comp_2613 test + f Lnet/minecraft/class_2096$class_2100; comp_2614 count + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59618 method_59618 + p 1 instance + m (Ljava/lang/Iterable;)Z method_59619 test + p 1 collection + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_59617 createCodec + p 0 predicateCodec + m ()Ljava/util/function/Predicate; comp_2613 test + m ()Lnet/minecraft/class_2096$class_2100; comp_2614 count + m (Ljava/util/function/Predicate;Lnet/minecraft/class_2096$class_2100;)V + p 1 test + p 2 count +c net/minecraft/class_9643$class_9645 net/minecraft/predicate/collection/CollectionCountsPredicate$Multiple + f Ljava/util/List; comp_2615 entries + m (Ljava/lang/Iterable;)Z method_59620 test + m (Ljava/lang/Object;)Z test test + p 1 collection + m ()Ljava/util/List; comp_2615 entries + m (Ljava/util/List;)V + p 1 entries +c net/minecraft/class_9643$class_9646 net/minecraft/predicate/collection/CollectionCountsPredicate$Single + f Lnet/minecraft/class_9643$class_9644; comp_2616 entry + m (Ljava/lang/Object;)Z test test + p 1 collection + m (Ljava/lang/Iterable;)Z method_59621 test + m ()Lnet/minecraft/class_9643$class_9644; comp_2616 entry + m (Lnet/minecraft/class_9643$class_9644;)V + p 1 entry +c net/minecraft/class_9643$class_9647 net/minecraft/predicate/collection/CollectionCountsPredicate$Empty + m (Ljava/lang/Object;)Z test test + p 1 collection + m (Ljava/lang/Iterable;)Z method_59622 test +c net/minecraft/class_389 net/minecraft/client/font/FontLoader + f Lcom/mojang/serialization/MapCodec; field_44801 CODEC + m ()Lnet/minecraft/class_394; method_51731 getType + m ()Lcom/mojang/datafixers/util/Either; method_51734 build +c net/minecraft/class_389$class_9245 net/minecraft/client/font/FontLoader$Provider + f Lcom/mojang/serialization/Codec; field_49122 CODEC + f Lnet/minecraft/class_389; comp_2352 definition + f Lnet/minecraft/class_9243$class_9244; comp_2353 filter + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57040 method_57040 + p 0 instance + m ()Lnet/minecraft/class_9243$class_9244; comp_2353 filter + m ()Lnet/minecraft/class_389; comp_2352 definition + m (Lnet/minecraft/class_389;Lnet/minecraft/class_9243$class_9244;)V + p 1 definition + p 2 filter +c net/minecraft/class_389$class_8540 net/minecraft/client/font/FontLoader$Reference + f Lnet/minecraft/class_2960; comp_1504 id + m ()Lnet/minecraft/class_2960; comp_1504 id + m (Lnet/minecraft/class_2960;)V + p 1 id +c net/minecraft/class_389$class_8539 net/minecraft/client/font/FontLoader$Loadable + m (Lnet/minecraft/class_3300;)Lnet/minecraft/class_390; load load + p 1 resourceManager +c net/minecraft/class_383 net/minecraft/client/font/UploadableGlyph + m ()F method_2035 getOversample + m ()F method_2034 getXMin + m ()F method_56129 getBearingX + m ()F method_56130 getAscent + m (IILcom/mojang/blaze3d/textures/GpuTexture;)V method_2030 upload + p 1 x + p 2 y + p 3 texture + m ()I method_2032 getHeight + m ()Z method_2033 hasColor + m ()I method_2031 getWidth + m ()F method_2028 getYMin + m ()F method_2027 getXMax + m ()F method_2029 getYMax +c net/minecraft/class_382 net/minecraft/client/font/BakedGlyphImpl + f F field_55098 Z_OFFSET + f F field_2276 minU + f F field_2278 maxY + f F field_2272 minX + f F field_2274 minV + f F field_2280 maxX + f Lnet/minecraft/class_8538; field_44760 textRenderLayers + f Lnet/minecraft/class_379; field_62142 glyph + f F field_2279 minY + f F field_2273 maxV + f F field_2275 maxU + f Lcom/mojang/blaze3d/textures/GpuTextureView; field_60569 textureView + m (Lnet/minecraft/class_382$class_10364;Lorg/joml/Matrix4f;Lnet/minecraft/class_4588;IZ)V method_65025 draw + p 1 glyph + p 3 vertexConsumer + p 2 matrix + p 5 fixedZ + p 4 light + m (Z)F method_71822 getXExpansion + p 0 bold + m (Lnet/minecraft/class_379;Lnet/minecraft/class_8538;Lcom/mojang/blaze3d/textures/GpuTextureView;FFFFFFFF)V + p 4 minU + p 5 maxU + p 6 minV + p 7 maxV + p 8 minX + p 9 maxX + p 10 minY + p 11 maxY + p 1 glyph + p 2 textRenderLayers + p 3 textureView + m (Lnet/minecraft/class_382$class_328;FFILnet/minecraft/class_4588;ILorg/joml/Matrix4f;)V method_65181 drawRectangle + p 4 color + p 3 zOffset + p 6 light + p 5 vertexConsumer + p 2 shadowOffset + p 1 rectangle + p 7 matrix + m (Lnet/minecraft/class_382$class_10364;)F method_71821 getEffectiveMinX + p 1 glyph + m ()F method_71827 getItalicOffsetAtMinY + m ()F method_71825 getItalicOffsetAtMaxY + m (Lnet/minecraft/class_382$class_328;Lorg/joml/Matrix4f;Lnet/minecraft/class_4588;IZ)V method_22944 drawRectangle + p 1 rectangle + p 2 matrix + p 3 vertexConsumer + p 4 light + p 5 fixedZ + m (Lnet/minecraft/class_382$class_10364;)F method_71824 getEffectiveMinY + p 1 glyph + m (Lnet/minecraft/class_382$class_10364;)F method_71826 getEffectiveMaxX + p 1 glyph + m (Lnet/minecraft/class_382$class_10364;)F method_71828 getEffectiveMaxY + p 1 glyph + m (ZFFFLorg/joml/Matrix4f;Lnet/minecraft/class_4588;IZI)V method_2025 draw + p 8 bold + p 9 light + p 6 vertexConsumer + p 7 color + p 4 z + p 5 matrix + p 2 x + p 3 y + p 1 italic +c net/minecraft/class_382$class_328 net/minecraft/client/font/BakedGlyphImpl$Rectangle + f F comp_3307 minX + f F comp_3309 maxX + f F comp_3308 minY + f F comp_3310 maxY + f I comp_3312 color + f F comp_3311 zIndex + f F comp_3337 shadowOffset + f I comp_3336 shadowColor + f Lnet/minecraft/class_382; comp_4636 glyph + m ()Z method_65183 hasShadow + m ()F comp_3307 minX + m ()F comp_3309 maxX + m ()F comp_3308 minY + m ()F comp_3310 maxY + m ()I comp_3312 color + m ()F comp_3311 zIndex + m ()Lnet/minecraft/class_382; comp_4636 glyph + m ()F comp_3337 shadowOffset + m ()I comp_3336 shadowColor + m (Lnet/minecraft/class_382;FFFFFIIF)V + p 1 glyph + p 2 minX + p 3 minY + p 4 maxX + p 5 maxY + p 6 zIndex + p 7 color + p 8 shadowColor + p 9 shadowOffset +c net/minecraft/class_382$class_10364 net/minecraft/client/font/BakedGlyphImpl$BakedGlyphRect + f Lnet/minecraft/class_2583; comp_3317 style + f I comp_3315 color + f F comp_3314 y + f F comp_3318 boldOffset + f F comp_3313 x + f F comp_3339 shadowOffset + f I comp_3338 shadowColor + f Lnet/minecraft/class_382; comp_3316 glyph + m ()Z method_65184 hasShadow + m ()Lnet/minecraft/class_382; comp_3316 glyph + m ()F comp_3314 y + m ()F comp_3313 x + m ()I comp_3315 color + m ()F comp_3318 boldOffset + m ()I comp_3338 shadowColor + m ()F comp_3339 shadowOffset + m (FFIILnet/minecraft/class_382;Lnet/minecraft/class_2583;FF)V + p 1 x + p 2 y + p 3 color + p 4 shadowColor + p 5 glyph + p 6 style + p 7 boldOffset + p 8 shadowOffset +c net/minecraft/class_9649 net/minecraft/datafixer/fix/EmptyItemInVillagerTradeFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59626 method_59626 + p 0 villagerTradeDynamic +c net/minecraft/class_9648 net/minecraft/predicate/collection/CollectionPredicate + f Ljava/util/Optional; comp_2618 counts + f Ljava/util/Optional; comp_2619 size + f Ljava/util/Optional; comp_2617 contains + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59624 method_59624 + p 1 instance + m (Ljava/lang/Iterable;)Z method_59625 test + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_59623 createCodec + p 0 predicateCodec + m (Ljava/lang/Object;)Z test test + p 1 collection + m ()Ljava/util/Optional; comp_2617 contains + m ()Ljava/util/Optional; comp_2619 size + m ()Ljava/util/Optional; comp_2618 counts + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 contains + p 2 counts + p 3 size +c net/minecraft/class_380 net/minecraft/client/font/GlyphAtlasTexture + f I field_32227 SLOT_LENGTH + f Z field_2263 hasColor + f Lnet/minecraft/class_380$class_381; field_2264 rootSlot + f Lnet/minecraft/class_8538; field_44759 textRenderLayers + m (Ljava/util/function/Supplier;Lnet/minecraft/class_8538;Z)V + p 1 nameSupplier + p 3 hasColor + p 2 textRenderLayers + m (I)I method_51640 method_51640 + p 0 color + m (Lnet/minecraft/class_379;Lnet/minecraft/class_383;)Lnet/minecraft/class_382; method_2022 bake + p 1 metrics + p 2 glyph +c net/minecraft/class_380$class_381 net/minecraft/client/font/GlyphAtlasTexture$Slot + f Z field_2265 occupied + f I field_2266 height + f I field_2267 width + f I field_2268 y + f I field_2269 x + f Lnet/minecraft/class_380$class_381; field_2270 subSlot1 + f Lnet/minecraft/class_380$class_381; field_2271 subSlot2 + m (IIII)V + p 2 y + p 1 x + p 4 height + p 3 width + m (Lnet/minecraft/class_383;)Lnet/minecraft/class_380$class_381; method_2024 findSlotFor + p 1 glyph +c net/minecraft/class_11181 net/minecraft/datafixer/schema/Schema3439_1 +c net/minecraft/class_386 net/minecraft/client/font/BitmapFont + f Lnet/minecraft/class_1011; field_2285 image + f Lorg/slf4j/Logger; field_2286 LOGGER + f Lnet/minecraft/class_8532; field_2284 glyphs + m (Lnet/minecraft/class_1011;Lnet/minecraft/class_8532;)V + p 2 glyphs + p 1 image +c net/minecraft/class_386$class_388 net/minecraft/client/font/BitmapFont$BitmapFontGlyph + f I comp_610 ascent + f I comp_608 height + f I comp_607 width + f F comp_603 scaleFactor + f I comp_606 y + f I comp_605 x + f Lnet/minecraft/class_1011; comp_604 image + f I comp_609 advance + m (FLnet/minecraft/class_1011;IIIIII)V + p 7 advance + p 8 ascent + p 5 width + p 6 height + p 3 x + p 4 y + p 1 scaleFactor + p 2 image + m ()I comp_610 ascent + m ()I comp_608 height + m ()I comp_607 width + m ()F comp_603 scaleFactor + m ()I comp_606 y + m ()I comp_605 x + m ()Lnet/minecraft/class_1011; comp_604 image + m ()I comp_609 advance +c net/minecraft/class_386$class_387 net/minecraft/client/font/BitmapFont$Loader + f Lcom/mojang/serialization/Codec; field_44800 CODE_POINT_GRID_CODEC + f Lcom/mojang/serialization/MapCodec; field_44799 CODEC + f [[I comp_1522 codepointGrid + f Lnet/minecraft/class_2960; comp_1519 file + f I comp_1521 ascent + f I comp_1520 height + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51748 method_51748 + p 0 instance + m (Lnet/minecraft/class_1011;IIII)I method_2038 findCharacterStartX + p 4 charPosX + p 5 charPosY + p 2 characterWidth + p 3 characterHeight + p 1 image + m ([[I)Lcom/mojang/serialization/DataResult; method_51752 validateCodePointGrid + p 0 codePointGrid + m ([[I)Ljava/util/List; method_51754 method_51754 + p 0 codePointGrid + m (Lnet/minecraft/class_2960;II[[I)V + p 2 height + p 1 id + p 3 ascent + p 4 codepointGrid + m (Ljava/util/List;)[[I method_51750 method_51750 + p 0 strings + m (Lnet/minecraft/class_3300;)Lnet/minecraft/class_390; method_2039 load + p 1 resourceManager + m (Lnet/minecraft/class_386$class_387;)Lcom/mojang/serialization/DataResult; method_51749 validate + p 0 fontLoader + m ()I comp_1521 ascent + m ()I comp_1520 height + m ()Lnet/minecraft/class_2960; comp_1519 file + m ()[[I comp_1522 codepointGrid +c net/minecraft/class_384 net/minecraft/client/font/EmptyGlyph + f Lnet/minecraft/class_379; field_62143 glyph + m (F)V + p 1 advance +c net/minecraft/class_11182 net/minecraft/datafixer/schema/Schema4420 +c net/minecraft/class_11183 net/minecraft/datafixer/schema/Schema4421 +c net/minecraft/class_11186 net/minecraft/entity/ai/brain/sensor/NearestFollowableFriendlyMobSensor + m (Lnet/minecraft/class_1309;)Z method_70688 method_70688 + p 0 potentialFriend +c net/minecraft/class_11187 net/minecraft/entity/passive/HappyGhastEntity + f I field_60008 ropeRemovalTimer + f I field_60553 stillTimeout + f Lnet/minecraft/class_2940; field_60549 STAYING_STILL + f Lnet/minecraft/class_2940; field_60009 HAS_ROPES + m ()V method_70694 initGhastling + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_1408; method_70693 createGhastlingNavigation + p 1 world + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_241; method_70698 getGhastRotation + p 1 controllingEntity + m ()Z method_71010 hasRopes + m ()Z method_71616 hasPlayerOnTop + m ()V method_70703 initAdultHappyGhast + m (Lnet/minecraft/class_1352;)Z method_70690 method_70690 + p 0 goal + m ()Lnet/minecraft/class_5132$class_5133; method_70701 createHappyGhastAttributes + m ()Z method_72227 isStill + m (Lnet/minecraft/class_1352;)Z method_70692 method_70692 + p 0 goal + m ()V method_70696 updatePositionTarget + m (I)V method_72086 setStillTimeout + p 1 stillTimeout + m (Z)V method_71011 setHasRopes + p 1 hasRopes + m (Lnet/minecraft/class_1657;)V method_70691 addPassenger + p 1 player + m ()I method_70695 getUpdatedPositionTargetRange + m (Lnet/minecraft/class_1799;)Z method_70699 method_70699 + p 1 stack + m ()Z method_71617 isStayingStill + m ()V method_71615 syncStayingStill + m ()V method_70697 tickRegeneration +c net/minecraft/class_11187$class_11191 net/minecraft/entity/passive/HappyGhastEntity$HappyGhastLookControl + m (F)F method_70704 getYawToSubtract + p 0 yaw +c net/minecraft/class_11187$class_11190 net/minecraft/entity/passive/HappyGhastEntity$HappyGhastSwimGoal +c net/minecraft/class_11187$class_11188 net/minecraft/entity/passive/HappyGhastEntity$GhastlingNavigation + m (Lnet/minecraft/class_11187;Lnet/minecraft/class_1937;)V + p 1 entity + p 2 world +c net/minecraft/class_11187$class_11189 net/minecraft/entity/passive/HappyGhastEntity$HappyGhastBodyControl +c net/minecraft/class_9653 net/minecraft/predicate/item/AttributeModifiersPredicate + f Lcom/mojang/serialization/Codec; field_51378 CODEC + f Ljava/util/Optional; comp_2623 modifiers + m (Lnet/minecraft/class_9285;)Z method_59669 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59668 method_59668 + p 0 instance + m ()Ljava/util/Optional; comp_2623 modifiers + m (Ljava/util/Optional;)V + p 1 modifiers +c net/minecraft/class_9653$class_9654 net/minecraft/predicate/item/AttributeModifiersPredicate$AttributeModifierPredicate + f Lcom/mojang/serialization/Codec; field_51379 CODEC + f Ljava/util/Optional; comp_2629 slot + f Ljava/util/Optional; comp_2628 operation + f Ljava/util/Optional; comp_2625 id + f Ljava/util/Optional; comp_2624 attribute + f Lnet/minecraft/class_2096$class_2099; comp_2627 amount + m (Lnet/minecraft/class_9285$class_9287;)Z method_59671 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59670 method_59670 + p 0 instance + m (Ljava/lang/Object;)Z test test + p 1 attributeModifier + m ()Ljava/util/Optional; comp_2628 operation + m ()Ljava/util/Optional; comp_2629 slot + m ()Ljava/util/Optional; comp_2624 attribute + m ()Ljava/util/Optional; comp_2625 id + m ()Lnet/minecraft/class_2096$class_2099; comp_2627 amount + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_2096$class_2099;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 attribute + p 2 id + p 3 amount + p 4 operation + p 5 slot +c net/minecraft/class_9652 net/minecraft/entity/EquipmentTable + f Lcom/mojang/serialization/Codec; field_51374 SLOT_DROP_CHANCES_CODEC + f Lcom/mojang/serialization/Codec; field_51375 CODEC + f Ljava/util/Map; comp_2622 slotDropChances + f Lnet/minecraft/class_5321; comp_2621 lootTable + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59660 method_59660 + p 0 instance + m (Lnet/minecraft/class_5321;F)V + p 2 slotDropChances + p 1 lootTable + m (F)Ljava/util/Map; method_59658 createSlotDropChances + p 0 dropChance + m (Ljava/util/List;F)Ljava/util/Map; method_59661 createSlotDropChances + p 1 dropChance + p 0 slots + m (Ljava/util/Map;)Lcom/mojang/datafixers/util/Either; method_59662 method_59662 + p 0 map + m (Lcom/mojang/datafixers/util/Either;)Ljava/util/Map; method_59659 method_59659 + p 0 either + m ()Lnet/minecraft/class_5321; comp_2621 lootTable + m ()Ljava/util/Map; comp_2622 slotDropChances + m (Lnet/minecraft/class_5321;Ljava/util/Map;)V + p 1 lootTable + p 2 slotDropChances +c net/minecraft/class_9651 net/minecraft/datafixer/schema/Schema3818_5 +c net/minecraft/class_9650 net/minecraft/datafixer/fix/ParticleUnflatteningFix + f Lorg/slf4j/Logger; field_51367 LOGGER + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_59629 fixItemParticle + p 1 dynamic + p 2 params + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_59634 fixDustColorTransitionParticle + p 2 params + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_59635 fixSculkChargeParticle + p 2 params + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_59636 fixVibrationParticle + p 1 dynamic + p 2 params + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_59637 fixShriekParticle + p 2 params + p 1 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/util/Map; method_59632 parseBlockProperties + p 1 propertiesStr + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_59631 fixBlockParticle + p 2 params + p 1 dynamic + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_59630 tryParse + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59627 fixParticle + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_59633 fixDustParticle + p 2 params + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/brigadier/StringReader;)Lcom/mojang/serialization/Dynamic; method_59628 parseColor + p 1 paramsReader +c net/minecraft/class_394 net/minecraft/client/font/FontType + f Ljava/lang/String; field_2314 id + f Lcom/mojang/serialization/Codec; field_44802 CODEC + f Lcom/mojang/serialization/MapCodec; field_44803 loaderCodec + f Lnet/minecraft/class_394; field_37904 SPACE + f Lnet/minecraft/class_394; field_2317 TTF + f Lnet/minecraft/class_394; field_2312 BITMAP + f Lnet/minecraft/class_394; field_2313 UNIHEX + f Lnet/minecraft/class_394; field_44761 REFERENCE + m ()Lcom/mojang/serialization/MapCodec; method_51758 getLoaderCodec + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/serialization/MapCodec;)V + p 4 loaderCodec + p 3 id +c net/minecraft/class_9659 net/minecraft/predicate/item/FireworksPredicate + f Lcom/mojang/serialization/Codec; field_51384 CODEC + f Ljava/util/Optional; comp_2636 explosions + f Lnet/minecraft/class_2096$class_2100; comp_2637 flightDuration + m (Lnet/minecraft/class_9284;)Z method_59681 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59680 method_59680 + p 0 instance + m ()Ljava/util/Optional; comp_2636 explosions + m ()Lnet/minecraft/class_2096$class_2100; comp_2637 flightDuration + m (Ljava/util/Optional;Lnet/minecraft/class_2096$class_2100;)V + p 1 explosions + p 2 flightDuration +c net/minecraft/class_391 net/minecraft/client/font/UnihexFont + f Lnet/minecraft/class_8532; field_44770 glyphs + f Lorg/slf4j/Logger; field_2303 LOGGER + m (Ljava/io/InputStream;Lit/unimi/dsi/fastutil/bytes/ByteList;I)Z method_51654 readUntilDelimiter + p 2 delimiter + p 1 data + p 0 stream + m (Lnet/minecraft/class_8532;)V + p 1 glyphs + m (IB)I method_51651 getHexDigitValue + p 1 digit + p 0 lineNum + m (Ljava/io/InputStream;Lnet/minecraft/class_391$class_8546;)V method_51653 readLines + p 0 stream + p 1 callback + m (Ljava/nio/IntBuffer;Lnet/minecraft/class_391$class_8544;II)V method_51656 addGlyphPixels + p 1 glyph + p 0 pixelsOut + p 3 right + p 2 left + m (Ljava/nio/IntBuffer;III)V method_51655 addRowPixels + p 0 pixelsOut + p 2 left + p 1 row + p 3 right + m (ILit/unimi/dsi/fastutil/bytes/ByteList;I)I method_51652 getHexDigitValue + p 2 index + p 1 bytes + p 0 lineNum +c net/minecraft/class_391$class_392 net/minecraft/client/font/UnihexFont$Loader + f Ljava/util/List; field_44772 overrides + f Lcom/mojang/serialization/MapCodec; field_44771 CODEC + f Lnet/minecraft/class_2960; field_2304 sizes + m (I)[[Lnet/minecraft/class_391$class_8544; method_51666 method_51666 + p 0 rows + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51659 method_51659 + p 0 instance + m (Lnet/minecraft/class_391$class_392;)Ljava/util/List; method_51661 method_51661 + p 0 loader + m (Ljava/io/InputStream;)Lnet/minecraft/class_391; method_51662 loadHexFile + p 1 stream + m (Lnet/minecraft/class_391$class_392;)Lnet/minecraft/class_2960; method_51665 method_51665 + p 0 loader + m (Lnet/minecraft/class_2960;Ljava/util/List;)V + p 1 sizes + p 2 overrides + m (Lnet/minecraft/class_3300;)Lnet/minecraft/class_390; method_51658 load + p 1 resourceManager + m (Lnet/minecraft/class_8532;ILnet/minecraft/class_391$class_8544;)V method_51660 method_51660 + p 1 codePoint + p 2 glyph +c net/minecraft/class_391$class_393 net/minecraft/client/font/UnihexFont$UnicodeTextureGlyph + f Lnet/minecraft/class_391$class_8544; comp_1508 contents + f I comp_1510 right + f I comp_1509 left + m ()I method_51675 width + m ()I comp_1510 right + m ()I comp_1509 left + m ()Lnet/minecraft/class_391$class_8544; comp_1508 contents + m (Lnet/minecraft/class_391$class_8544;II)V + p 1 contents + p 2 left + p 3 right +c net/minecraft/class_391$class_8542 net/minecraft/client/font/UnihexFont$Dimensions + f Lcom/mojang/serialization/Codec; field_44774 CODEC + f Lcom/mojang/serialization/MapCodec; field_44773 MAP_CODEC + f I comp_1507 right + f I comp_1506 left + m (I)I method_51671 getLeft + p 0 packed + m (I)I method_51674 getRight + p 0 packed + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51673 method_51673 + p 0 instance + m ()I method_51670 packedValue + m (II)I method_51672 pack + p 1 right + p 0 left + m ()I comp_1506 left + m ()I comp_1507 right + m (II)V + p 1 left + p 2 right +c net/minecraft/class_391$class_8543 net/minecraft/client/font/UnihexFont$FontImage32x16 + f I comp_1512 bitWidth + f [I comp_1511 contents + m (ILit/unimi/dsi/fastutil/bytes/ByteList;)Lnet/minecraft/class_391$class_8544; method_51676 read32x16 + p 1 data + p 0 lineNum + m (ILit/unimi/dsi/fastutil/bytes/ByteList;)Lnet/minecraft/class_391$class_8544; method_51677 read24x16 + p 1 data + p 0 lineNum + m ()[I comp_1511 contents + m ([II)V + p 1 contents + p 2 bitWidth +c net/minecraft/class_391$class_7736 net/minecraft/client/font/UnihexFont$FontImage8x16 + f [B comp_1505 contents + m ([B)V + p 1 sizes + m (ILit/unimi/dsi/fastutil/bytes/ByteList;)Lnet/minecraft/class_391$class_8544; method_51669 read + p 1 data + p 0 lineNum + m ()[B comp_1505 contents +c net/minecraft/class_391$class_8544 net/minecraft/client/font/UnihexFont$BitmapGlyph + m ()I method_51678 getNonemptyColumnBitmask + m ()I method_51679 getPackedDimensions + m (I)I method_51668 getPixels + p 1 y + m ()I comp_1512 bitWidth +c net/minecraft/class_391$class_8545 net/minecraft/client/font/UnihexFont$DimensionOverride + f Lcom/mojang/serialization/Codec; field_44777 NON_VALIDATED_CODEC + f Lcom/mojang/serialization/Codec; field_44776 CODEC + f Lnet/minecraft/class_391$class_8542; comp_1515 dimensions + f I comp_1513 from + f I comp_1514 to + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51680 method_51680 + p 0 instance + m (Lnet/minecraft/class_391$class_8545;)Lcom/mojang/serialization/DataResult; method_51681 method_51681 + p 0 override + m ()Lnet/minecraft/class_391$class_8542; comp_1515 dimensions + m ()I comp_1514 to + m ()I comp_1513 from + m (IILnet/minecraft/class_391$class_8542;)V + p 1 from + p 2 to + p 3 dimensions +c net/minecraft/class_391$class_8546 net/minecraft/client/font/UnihexFont$BitmapGlyphConsumer + m (ILnet/minecraft/class_391$class_8544;)V accept accept + p 1 codePoint + p 2 glyph +c net/minecraft/class_391$class_8547 net/minecraft/client/font/UnihexFont$FontImage16x16 + f [S comp_1516 contents + m (ILit/unimi/dsi/fastutil/bytes/ByteList;)Lnet/minecraft/class_391$class_8544; method_51683 read + p 1 data + p 0 lineNum + m ()[S comp_1516 contents + m ([S)V + p 1 contents +c net/minecraft/class_9657 net/minecraft/predicate/item/FireworkExplosionPredicate + f Lcom/mojang/serialization/Codec; field_51382 CODEC + f Lnet/minecraft/class_9657$class_9658; comp_2632 predicate + m (Lnet/minecraft/class_9283;)Z method_59676 test + m ()Lnet/minecraft/class_9657$class_9658; comp_2632 predicate + m (Lnet/minecraft/class_9657$class_9658;)V + p 1 predicate +c net/minecraft/class_9657$class_9658 net/minecraft/predicate/item/FireworkExplosionPredicate$Predicate + f Lcom/mojang/serialization/Codec; field_51383 CODEC + f Ljava/util/Optional; comp_2635 trail + f Ljava/util/Optional; comp_2634 twinkle + f Ljava/util/Optional; comp_2633 shape + m (Ljava/lang/Object;)Z test test + p 1 fireworkExplosionComponent + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59677 method_59677 + p 0 instance + m (Lnet/minecraft/class_9283;)Z method_59678 test + m ()Ljava/util/Optional; comp_2634 twinkle + m ()Ljava/util/Optional; comp_2635 trail + m ()Ljava/util/Optional; comp_2633 shape + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 shape + p 2 twinkle + p 3 trail +c net/minecraft/class_9656 net/minecraft/predicate/item/ContainerPredicate + f Lcom/mojang/serialization/Codec; field_51381 CODEC + f Ljava/util/Optional; comp_2631 items + m (Lnet/minecraft/class_9288;)Z method_59675 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59674 method_59674 + p 0 instance + m ()Ljava/util/Optional; comp_2631 items + m (Ljava/util/Optional;)V + p 1 items +c net/minecraft/class_9655 net/minecraft/predicate/item/BundleContentsPredicate + f Lcom/mojang/serialization/Codec; field_51380 CODEC + f Ljava/util/Optional; comp_2630 items + m (Lnet/minecraft/class_9276;)Z method_59673 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59672 method_59672 + p 0 instance + m ()Ljava/util/Optional; comp_2630 items + m (Ljava/util/Optional;)V + p 1 items +c net/minecraft/class_395 net/minecraft/client/font/TrueTypeFont + f F field_2321 oversample + f Ljava/nio/ByteBuffer; field_21839 buffer + f Lnet/minecraft/class_8532; field_52695 container + f Lorg/lwjgl/util/freetype/FT_Face; field_48383 face + m (Ljava/nio/ByteBuffer;Lorg/lwjgl/util/freetype/FT_Face;FFFFLjava/lang/String;)V + p 3 size + p 2 face + p 5 shiftX + p 4 oversample + p 7 excludedCharacters + p 6 shiftY + p 1 buffer + m (ILnet/minecraft/class_395$class_9908;)Lnet/minecraft/class_11759; method_61901 getOrLoadGlyph + p 1 codePoint + p 2 glyph + m (ILorg/lwjgl/util/freetype/FT_Face;I)Lnet/minecraft/class_11759; method_61902 loadGlyph + p 2 face + p 3 index + p 1 codePoint + m ()Lorg/lwjgl/util/freetype/FT_Face; method_51884 getInfo +c net/minecraft/class_395$class_9908 net/minecraft/client/font/TrueTypeFont$LazyGlyph + f Lnet/minecraft/class_11759; field_52697 glyph + f I field_52696 index + m (I)V + p 1 index +c net/minecraft/class_395$class_397 net/minecraft/client/font/TrueTypeFont$TtfGlyph + f I field_2338 width + f F field_2333 ascent + f F field_2334 bearingX + f I field_2337 height + f Lnet/minecraft/class_379; field_62081 metrics + f I field_2335 glyphIndex + m (Lnet/minecraft/class_395;FFIIFI)V + p 5 height + p 4 width + p 7 glyphIndex + p 6 advance + p 3 ascent + p 2 bearingX +c net/minecraft/class_11173 net/minecraft/network/packet/s2c/play/WaypointS2CPacket + f Lnet/minecraft/class_9139; field_59612 CODEC + f Lnet/minecraft/class_11173$class_11174; comp_4022 operation + f Lnet/minecraft/class_11200; comp_4023 waypoint + m (Ljava/util/UUID;Lnet/minecraft/class_11208$class_11209;F)Lnet/minecraft/class_11173; method_70585 trackAzimuth + p 2 azimuth + p 0 source + p 1 config + m (Ljava/util/UUID;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_2382;)Lnet/minecraft/class_11173; method_70587 trackPos + p 2 pos + p 1 config + p 0 source + m (Ljava/util/UUID;Lnet/minecraft/class_11208$class_11209;F)Lnet/minecraft/class_11173; method_70588 updateAzimuth + p 1 config + p 2 azimuth + p 0 source + m (Ljava/util/UUID;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_1923;)Lnet/minecraft/class_11173; method_70586 trackChunk + p 2 chunkPos + p 0 source + p 1 config + m (Ljava/util/UUID;)Lnet/minecraft/class_11173; method_70584 untrack + p 0 source + m (Lnet/minecraft/class_2602;)V method_70582 apply + m (Lnet/minecraft/class_11207;)V method_70583 apply + p 1 handler + m (Ljava/util/UUID;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_2382;)Lnet/minecraft/class_11173; method_70590 updatePos + p 2 pos + p 1 config + p 0 source + m (Ljava/util/UUID;Lnet/minecraft/class_11208$class_11209;Lnet/minecraft/class_1923;)Lnet/minecraft/class_11173; method_70589 updateChunk + p 0 source + p 1 config + p 2 chunkPos + m ()Lnet/minecraft/class_11200; comp_4023 waypoint + m ()Lnet/minecraft/class_11173$class_11174; comp_4022 operation + m (Lnet/minecraft/class_11173$class_11174;Lnet/minecraft/class_11200;)V + p 1 operation + p 2 waypoint +c net/minecraft/class_11173$class_11174 net/minecraft/network/packet/s2c/play/WaypointS2CPacket$Operation + f Lnet/minecraft/class_9139; field_59617 PACKET_CODEC + f Ljava/util/function/BiConsumer; field_59618 handler + f Ljava/util/function/IntFunction; field_59616 BY_INDEX + f Lnet/minecraft/class_11173$class_11174; field_59613 TRACK + f Lnet/minecraft/class_11173$class_11174; field_59614 UNTRACK + f Lnet/minecraft/class_11173$class_11174; field_59615 UPDATE + m (Ljava/lang/String;ILjava/util/function/BiConsumer;)V + p 3 handler +c net/minecraft/class_11177 net/minecraft/server/command/VersionCommand + f Lnet/minecraft/class_2561; field_59628 STABLE_YES_TEXT + f Lnet/minecraft/class_2561; field_59627 HEADER_TEXT + f Lnet/minecraft/class_2561; field_59629 STABLE_NO_TEXT + m (Lcom/mojang/brigadier/CommandDispatcher;Z)V method_70605 register + p 1 dedicated + p 0 dispatcher + m (Ljava/util/function/Consumer;)V method_70607 acceptInfo + p 0 sender + m (Lcom/mojang/brigadier/context/CommandContext;)I method_70606 method_70606 + p 0 context +c net/minecraft/class_390 net/minecraft/client/font/Font + f F field_48382 DEFAULT_ASCENT + m ()Lit/unimi/dsi/fastutil/ints/IntSet; method_27442 getProvidedGlyphs + c {@return the set of code points for which this font can provide glyphs} + m (I)Lnet/minecraft/class_11759; method_2040 getGlyph + p 1 codePoint +c net/minecraft/class_390$class_9241 net/minecraft/client/font/Font$FontFilterPair + f Lnet/minecraft/class_390; comp_2348 provider + f Lnet/minecraft/class_9243$class_9244; comp_2349 filter + m ()Lnet/minecraft/class_390; comp_2348 provider + m ()Lnet/minecraft/class_9243$class_9244; comp_2349 filter + m (Lnet/minecraft/class_390;Lnet/minecraft/class_9243$class_9244;)V + p 1 provider + p 2 filter +c net/minecraft/class_11178 net/minecraft/server/command/WaypointCommand + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_11212;Ljava/lang/Integer;)I method_70615 executeColor + p 2 color + p 0 source + p 1 waypoint + m (Lcom/mojang/brigadier/context/CommandContext;)I method_70634 method_70634 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_70629 method_70629 + p 0 context + m (Ljava/lang/String;Lnet/minecraft/class_11212;)Lnet/minecraft/class_5250; method_70623 method_70623 + p 1 waypoint + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_11212;)I method_70613 executeReset + p 0 source + p 1 waypoint + m (Lcom/mojang/brigadier/context/CommandContext;)I method_70632 method_70632 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_70611 method_70611 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_70633 method_70633 + p 0 context + m (Lnet/minecraft/class_124;Lnet/minecraft/class_11208$class_11209;)V method_70627 method_70627 + p 1 config + m (Lcom/mojang/brigadier/context/CommandContext;)I method_70631 method_70631 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_70610 register + p 1 registryAccess + p 0 dispatcher + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_11212;Lnet/minecraft/class_5321;)I method_71146 executeStyle + p 2 style + p 1 waypoint + p 0 source + m (Ljava/lang/String;Lnet/minecraft/class_2338;Lnet/minecraft/class_11212;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_70624 method_70624 + p 3 style + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_11212;Ljava/util/function/Consumer;)V method_70616 updateWaypointConfig + p 0 source + p 2 configConsumer + p 1 waypoint + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_11208$class_11209;)V method_71145 method_71145 + p 1 config + m (Lnet/minecraft/class_2168;)I method_70612 executeList + p 0 source + m (Lnet/minecraft/class_11208$class_11209;)V method_70619 method_70619 + p 0 config + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_11212;Lnet/minecraft/class_124;)I method_70617 executeColor + p 2 color + p 0 source + p 1 waypoint + m (Ljava/lang/Integer;Lnet/minecraft/class_11208$class_11209;)V method_70621 method_70621 + p 1 config +c net/minecraft/class_11179 net/minecraft/server/network/ServerWaypointHandler + f Lcom/google/common/collect/Table; field_59635 trackers + f Ljava/util/Set; field_59633 waypoints + f Ljava/util/Set; field_59634 players + m ()Ljava/util/Set; method_70647 getWaypoints + m (Lnet/minecraft/class_3222;)V method_70648 updatePlayerPos + p 1 player + m (Lnet/minecraft/class_3222;)V method_70639 addPlayer + p 1 player + m (Lnet/minecraft/class_11212;)V method_70646 onTrack + m (Lnet/minecraft/class_11212;)V method_70657 refreshTracking + p 1 waypoint + m (Lnet/minecraft/class_3222;)Z method_71610 isLocatorBarEnabled + p 0 player + m (Lnet/minecraft/class_3222;)V method_70653 removePlayer + p 1 player + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_11212$class_11215;)V method_70640 method_70640 + p 1 tracker + p 0 player + m (Lnet/minecraft/class_11212$class_11215;)Z method_70644 method_70644 + p 0 tracker + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_11212;)V method_70641 refreshTracking + p 2 waypoint + p 1 player + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_11212;Lnet/minecraft/class_11212$class_11215;)V method_70650 method_70650 + p 3 newTracker + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_11212;Lnet/minecraft/class_11212$class_11215;)V method_70642 refreshTracking + p 3 tracker + p 1 player + p 2 waypoint + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_11212;Lnet/minecraft/class_11212$class_11215;)V method_70654 method_70654 + p 3 tracker + m ()V method_70638 clear + m (Lnet/minecraft/class_11212;)V method_70656 onUntrack + m (Lnet/minecraft/class_11212;)V method_70652 onUpdate +c net/minecraft/class_324 net/minecraft/client/color/block/BlockColors + f Lnet/minecraft/class_2361; field_1995 providers + f I field_55228 LILY_PAD + f Ljava/util/Map; field_20271 properties + f I field_32163 NO_COLOR + f I field_55227 PLACED_LILY_PAD + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I method_1688 method_1688 + p 3 tintIndex + p 2 pos + p 1 world + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I method_68159 method_68159 + p 3 tintIndex + p 0 state + p 1 world + p 2 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)I method_1691 getParticleColor + c {@return the particle color of the block state}\n\n@implSpec If there's no color provider for the specified block,\nfalls back to its map color. + p 1 state + p 2 world + p 3 pos + m (Ljava/util/Set;[Lnet/minecraft/class_2248;)V method_21594 registerColorProperties + p 1 properties + p 2 blocks + m ()Lnet/minecraft/class_324; method_1689 create + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I method_1684 method_1684 + p 0 state + p 3 tintIndex + p 2 pos + p 1 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I method_1686 method_1686 + p 3 tintIndex + p 2 pos + p 1 world + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I method_1696 method_1696 + p 3 tintIndex + p 2 pos + p 1 world + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I method_1692 method_1692 + p 3 tintIndex + p 2 pos + p 1 world + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I method_1687 method_1687 + p 3 tintIndex + p 2 pos + p 1 world + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I method_68158 method_68158 + p 0 state + p 1 world + p 2 pos + p 3 tintIndex + m (Lnet/minecraft/class_322;[Lnet/minecraft/class_2248;)V method_1690 registerColorProvider + p 2 blocks + p 1 provider + m (Lnet/minecraft/class_2769;[Lnet/minecraft/class_2248;)V method_21593 registerColorProperty + p 2 blocks + p 1 property + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I method_67245 method_67245 + p 0 state + p 1 world + p 2 pos + p 3 tintIndex + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I method_1695 method_1695 + p 0 state + p 3 tintIndex + p 2 pos + p 1 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I method_1697 getColor + p 4 tintIndex + p 3 pos + p 2 world + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I method_1685 method_1685 + p 3 tintIndex + p 2 pos + p 1 world + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I method_49295 method_49295 + p 1 world + p 2 pos + p 3 tintIndex + p 0 state + m (Lnet/minecraft/class_2248;)Ljava/util/Set; method_21592 getProperties + p 1 block + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I method_1693 method_1693 + p 2 pos + p 1 world + p 0 state + p 3 tintIndex +c net/minecraft/class_323 net/minecraft/client/util/MonitorTracker + f Lnet/minecraft/class_3676; field_1991 monitorFactory + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_1993 pointerToMonitorMap + f Lorg/slf4j/Logger; field_37266 LOGGER + m (J)Lnet/minecraft/class_313; method_1680 getMonitor + p 1 pointer + m ()V method_15992 stop + m (III)I method_15991 clamp + p 2 max + p 1 min + p 0 value + m (Lnet/minecraft/class_1041;)Lnet/minecraft/class_313; method_1681 getMonitor + p 1 window + m (JI)V method_1683 handleMonitorEvent + p 1 monitor + p 3 event + m (Lnet/minecraft/class_3676;)V + p 1 monitorFactory +c net/minecraft/class_322 net/minecraft/client/color/block/BlockColorProvider + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;I)I getColor getColor + c {@return the color of the block state for the specified tint index,\nor -1 if not tinted} + p 3 pos + p 4 tintIndex + p 1 state + p 2 world +c net/minecraft/class_329 net/minecraft/client/gui/hud/InGameHud + c Responsible for rendering the HUD elements while the player is in game.\n\n

The current instance used by the client can be obtained by {@link\nMinecraftClient#inGameHud MinecraftClient.getInstance().inGameHud}. + f Lnet/minecraft/class_2960; field_45304 CROSSHAIR_TEXTURE + f Lnet/minecraft/class_2960; field_45299 AIR_TEXTURE + f Ljava/lang/Runnable; field_61530 deferredSubtitleRenderer + f I field_54918 SUBMERGED_IN_WATER_AIR_BUBBLE_DELAY + f Lnet/minecraft/class_2960; field_45305 CROSSHAIR_ATTACK_INDICATOR_FULL_TEXTURE + f Lnet/minecraft/class_2960; field_52771 NAUSEA_TEXTURE + f Lnet/minecraft/class_2561; field_2018 overlayMessage + f I field_2014 lastHealthValue + f Lnet/minecraft/class_340; field_2026 debugHud + f Lnet/minecraft/class_1799; field_2031 currentStack + f Lnet/minecraft/class_365; field_2025 spectatorHud + f I field_2042 ticks + f Lnet/minecraft/class_2960; field_2020 VIGNETTE_TEXTURE + f Lnet/minecraft/class_359; field_2027 subtitlesHud + f Lnet/minecraft/class_2561; field_26527 DEMO_EXPIRED_MESSAGE + f Lnet/minecraft/class_2960; field_45321 ARMOR_EMPTY_TEXTURE + f Z field_2038 overlayTinted + f Lnet/minecraft/class_2960; field_45306 CROSSHAIR_ATTACK_INDICATOR_BACKGROUND_TEXTURE + f I field_2037 titleFadeInTicks + f Lnet/minecraft/class_337; field_2030 bossBarHud + f I field_2041 overlayRemaining + f Lnet/minecraft/class_2960; field_45310 HOTBAR_TEXTURE + f Lnet/minecraft/class_2960; field_45322 ARMOR_HALF_TEXTURE + f Lnet/minecraft/class_2960; field_54913 AIR_EMPTY_TEXTURE + f Lnet/minecraft/class_2960; field_45307 CROSSHAIR_ATTACK_INDICATOR_PROGRESS_TEXTURE + f I field_2036 titleFadeOutTicks + f J field_2012 lastHealthCheckTime + f Ljava/util/Comparator; field_47550 SCOREBOARD_ENTRY_COMPARATOR + f I field_2040 heldItemTooltipFade + f Lnet/minecraft/class_2960; field_45323 ARMOR_FULL_TEXTURE + f Lnet/minecraft/class_2960; field_54912 AIR_BURSTING_TEXTURE + f Lnet/minecraft/class_2960; field_45311 HOTBAR_SELECTION_TEXTURE + f Lorg/apache/commons/lang3/tuple/Pair; field_59817 currentBar + f Lnet/minecraft/class_2960; field_45308 EFFECT_BACKGROUND_AMBIENT_TEXTURE + f Ljava/util/Map; field_59818 bars + f F field_2013 vignetteDarkness + f Lnet/minecraft/class_2561; field_35430 SAVING_LEVEL_TEXT + f Lnet/minecraft/class_310; field_2035 client + f I field_2023 titleRemainTicks + f Lnet/minecraft/class_2960; field_45312 HOTBAR_OFFHAND_LEFT_TEXTURE + f Lnet/minecraft/class_2960; field_45324 FOOD_EMPTY_HUNGER_TEXTURE + f F field_35428 autosaveIndicatorAlpha + f Ljava/lang/String; field_32171 SCOREBOARD_JOINER + f Lnet/minecraft/class_2960; field_45309 EFFECT_BACKGROUND_TEXTURE + f Lnet/minecraft/class_5819; field_2034 random + f Lnet/minecraft/class_2960; field_45301 VEHICLE_CONTAINER_HEART_TEXTURE + f Lnet/minecraft/class_2960; field_45313 HOTBAR_OFFHAND_RIGHT_TEXTURE + f Lnet/minecraft/class_2960; field_45325 FOOD_HALF_HUNGER_TEXTURE + f Lnet/minecraft/class_355; field_2015 playerListHud + f F field_35429 lastAutosaveIndicatorAlpha + f F field_27959 spyglassScale + f Z field_39458 canShowChatDisabledScreen + f Lnet/minecraft/class_2561; field_2039 subtitle + f I field_2033 renderHealthValue + f Lnet/minecraft/class_2960; field_27960 POWDER_SNOW_OUTLINE + f Lnet/minecraft/class_2960; field_45302 VEHICLE_FULL_HEART_TEXTURE + f Lnet/minecraft/class_2960; field_45314 HOTBAR_ATTACK_INDICATOR_BACKGROUND_TEXTURE + f Lnet/minecraft/class_2960; field_45326 FOOD_FULL_HUNGER_TEXTURE + f Lnet/minecraft/class_338; field_2021 chatHud + f Lnet/minecraft/class_2960; field_45327 FOOD_EMPTY_TEXTURE + f Lnet/minecraft/class_2960; field_27389 SPYGLASS_SCOPE + f Lnet/minecraft/class_2561; field_2016 title + f J field_2032 heartJumpEndTick + f Lnet/minecraft/class_2960; field_45303 VEHICLE_HALF_HEART_TEXTURE + f Lnet/minecraft/class_2960; field_45315 HOTBAR_ATTACK_INDICATOR_PROGRESS_TEXTURE + f Lnet/minecraft/class_2960; field_45298 FOOD_FULL_TEXTURE + f I field_54919 lastBurstBubble + f Lnet/minecraft/class_2960; field_45328 FOOD_HALF_TEXTURE + f I field_2017 titleStayTicks + m ()V method_1748 tick + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_1766 renderDemoTimer + p 2 tickCounter + p 1 context + m ()V method_34003 clearTitle + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_39192 renderAutosaveIndicator + p 2 tickCounter + p 1 context + m (Lnet/minecraft/class_269;Lnet/minecraft/class_9022;Lnet/minecraft/class_9011;)Lnet/minecraft/class_329$class_9016; method_55439 method_55439 + p 3 scoreboardEntry + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_55798 renderMiscOverlays + p 1 context + p 2 tickCounter + m (Lnet/minecraft/class_1309;)I method_1744 getHeartCount + p 1 entity + m (Lnet/minecraft/class_332;F)V method_61980 renderNauseaOverlay + p 1 context + p 2 nauseaStrength + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_55803 renderScoreboardSidebar + p 1 context + p 2 tickCounter + m (I)I method_1733 getHeartRows + p 1 heartCount + m (Lnet/minecraft/class_2561;)V method_1732 setRecordPlayingOverlay + p 1 description + m (Lnet/minecraft/class_332;Lnet/minecraft/class_266;)V method_1757 renderScoreboardSidebar + p 2 objective + p 1 context + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_2960; method_71644 getEffectTexture + p 0 effect + m (Lnet/minecraft/class_332;F)V method_32598 renderSpyglassOverlay + p 1 context + p 2 scale + m ()V method_1747 clear + m (Lnet/minecraft/class_332;Lnet/minecraft/class_329$class_6411;IIZZZ)V method_37299 drawHeart + p 6 blinking + p 7 half + p 4 y + p 5 hardcore + p 2 type + p 3 x + p 1 context + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_55802 renderChat + p 1 context + p 2 tickCounter + m ()Lnet/minecraft/class_327; method_1756 getTextRenderer + m (Ljava/lang/String;)Ljava/lang/String; method_65023 method_65023 + p 0 overlayTexture + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_1736 renderCrosshair + p 2 tickCounter + p 1 context + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_55805 renderMainHud + p 2 tickCounter + p 1 context + m (Lnet/minecraft/class_1297;)V method_1731 updateVignetteDarkness + p 1 entity + m (Lnet/minecraft/class_332;F)V method_1746 renderPortalOverlay + p 2 nauseaStrength + p 1 context + m (Lnet/minecraft/class_332;)V method_1760 renderStatusBars + c Renders the armor, health, air, and hunger bars. + p 1 context + m ()Lnet/minecraft/class_365; method_1739 getSpectatorHud + m (II)I method_65019 getAirBubbleY + p 2 top + p 1 heartCount + m ()V method_1742 setDefaultTitleFade + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_1765 renderStatusEffectOverlay + p 2 tickCounter + p 1 context + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_1753 render + p 1 context + p 2 tickCounter + m (III)V method_34001 setTitleTicks + p 1 fadeInTicks + p 3 fadeOutTicks + p 2 stayTicks + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_55799 renderSleepOverlay + p 1 context + p 2 tickCounter + m (Lnet/minecraft/class_2561;)V method_34004 setTitle + p 1 title + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_55804 renderPlayerList + p 1 context + p 2 tickCounter + m ()I method_1738 getTicks + m ()Z method_44353 shouldShowChatDisabledScreen + m ()Lnet/minecraft/class_338; method_1743 getChatHud + m (Z)V method_39191 tick + p 1 paused + m (I)[Lnet/minecraft/class_329$class_9016; method_55441 method_55441 + p 0 size + m (Z)V method_44354 setCanShowChatDisabledScreen + p 1 canShowChatDisabledScreen + m (Lnet/minecraft/class_310;)V + p 1 client + m ()Z method_70841 shouldShowJumpBar + m ()Lnet/minecraft/class_329$class_11220; method_70842 getCurrentBarType + m (Lnet/minecraft/class_332;IILnet/minecraft/class_9779;Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;I)V method_1762 renderHotbarItem + p 7 seed + p 5 player + p 6 stack + p 3 y + p 4 tickCounter + p 1 context + p 2 x + m (Lnet/minecraft/class_2561;Z)V method_1758 setOverlayMessage + p 2 tinted + p 1 message + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_1759 renderHotbar + p 2 tickCounter + p 1 context + m ()V method_39193 tickAutosaveIndicator + m (Lnet/minecraft/class_2561;)V method_34002 setSubtitle + p 1 subtitle + m (Lnet/minecraft/class_332;)V method_1741 renderMountHealth + p 1 context + m ()Lnet/minecraft/class_1657; method_1737 getCameraPlayer + m (IZ)I method_65021 getAirBubbleDelay + p 1 submergedInWater + p 0 air + m ()Lnet/minecraft/class_340; method_53531 getDebugHud + m ()Lnet/minecraft/class_1309; method_1734 getRiddenEntity + m (Lnet/minecraft/class_332;Lnet/minecraft/class_1657;IIIIFIIIZ)V method_37298 renderHealthBar + p 1 context + p 3 x + p 2 player + p 5 lines + p 4 y + p 7 maxHealth + p 6 regeneratingHeartIndex + p 9 health + p 8 lastHealth + p 11 blinking + p 10 absorption + m (ILnet/minecraft/class_1657;I)V method_65020 playBurstSound + p 1 bubble + p 2 player + p 3 burstBubbles + m (Lnet/minecraft/class_332;Lnet/minecraft/class_1657;IIII)V method_58478 renderArmor + p 4 healthBarLines + p 5 x + p 2 y + p 0 context + p 1 player + m (Lnet/minecraft/class_239;)Z method_17534 shouldRenderSpectatorCrosshair + p 1 hitResult + m (Lnet/minecraft/class_332;Lnet/minecraft/class_1657;II)V method_58477 renderFood + p 2 player + p 1 context + p 4 right + p 3 top + m (Lnet/minecraft/class_332;Lnet/minecraft/class_2960;F)V method_31977 renderOverlay + p 1 context + p 2 texture + p 3 opacity + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_70837 renderBossBarHud + p 1 context + p 2 tickCounter + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_55801 renderTitleAndSubtitle + p 2 tickCounter + p 1 context + m (Lnet/minecraft/class_332;)V method_1749 renderHeldItemTooltip + p 1 context + m ()V method_72738 renderDeferredSubtitles + m (Lnet/minecraft/class_9011;)Z method_1751 method_1751 + p 0 score + m ()V method_1745 resetDebugHudChunk + m (Lnet/minecraft/class_332;)V method_70838 renderDebugHud + p 1 context + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_55800 renderOverlayMessage + p 1 context + p 2 tickCounter + m (III)I method_65024 getAirBubbles + p 2 delay + p 1 maxAir + p 0 air + m ()Lnet/minecraft/class_337; method_1740 getBossBarHud + m (Lnet/minecraft/class_332;Z)V method_70839 renderSubtitlesHud + p 1 context + p 2 defer + m (Lnet/minecraft/class_332;Lnet/minecraft/class_1297;)V method_1735 renderVignetteOverlay + p 2 entity + p 1 context + m ()Lnet/minecraft/class_355; method_1750 getPlayerListHud + m (Lnet/minecraft/class_332;Lnet/minecraft/class_1657;III)V method_65022 renderAirBubbles + p 1 context + p 5 left + p 4 top + p 3 heartCount + p 2 player + m ()Z method_70840 shouldShowExperienceBar + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_71643 method_71643 + p 0 id +c net/minecraft/class_329$class_11221 net/minecraft/client/gui/hud/InGameHud$Renderable + m (Lnet/minecraft/class_332;Lnet/minecraft/class_9779;)V method_71044 render + p 2 tickCounter + p 1 context +c net/minecraft/class_329$class_11220 net/minecraft/client/gui/hud/InGameHud$BarType + f Lnet/minecraft/class_329$class_11220; field_59822 JUMPABLE_VEHICLE + f Lnet/minecraft/class_329$class_11220; field_59819 EMPTY + f Lnet/minecraft/class_329$class_11220; field_59821 LOCATOR + f Lnet/minecraft/class_329$class_11220; field_59820 EXPERIENCE +c net/minecraft/class_329$class_6411 net/minecraft/client/gui/hud/InGameHud$HeartType + f Lnet/minecraft/class_2960; field_45330 fullBlinkingTexture + f Lnet/minecraft/class_2960; field_45331 halfTexture + f Lnet/minecraft/class_2960; field_45332 halfBlinkingTexture + f Lnet/minecraft/class_2960; field_45329 fullTexture + f Lnet/minecraft/class_2960; field_45333 hardcoreFullTexture + f Lnet/minecraft/class_2960; field_45334 hardcoreFullBlinkingTexture + f Lnet/minecraft/class_2960; field_45335 hardcoreHalfTexture + f Lnet/minecraft/class_329$class_6411; field_33946 POISONED + f Lnet/minecraft/class_2960; field_45336 hardcoreHalfBlinkingTexture + f Lnet/minecraft/class_329$class_6411; field_33947 WITHERED + f Lnet/minecraft/class_329$class_6411; field_33945 NORMAL + f Lnet/minecraft/class_329$class_6411; field_33944 CONTAINER + f Lnet/minecraft/class_329$class_6411; field_33949 FROZEN + f Lnet/minecraft/class_329$class_6411; field_33948 ABSORBING + m (Ljava/lang/String;ILnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V + p 3 fullTexture + p 4 fullBlinkingTexture + p 7 hardcoreFullTexture + p 8 hardcoreFullBlinkingTexture + p 5 halfTexture + p 6 halfBlinkingTexture + p 9 hardcoreHalfTexture + p 10 hardcoreHalfBlinkingTexture + m (Lnet/minecraft/class_1657;)Lnet/minecraft/class_329$class_6411; method_37301 fromPlayerState + p 0 player + m (ZZZ)Lnet/minecraft/class_2960; method_52705 getTexture + p 1 hardcore + p 3 blinking + p 2 half +c net/minecraft/class_329$class_9016 net/minecraft/client/gui/hud/InGameHud$SidebarEntry + f I comp_2133 scoreWidth + f Lnet/minecraft/class_2561; comp_2132 score + f Lnet/minecraft/class_2561; comp_2131 name + m ()I comp_2133 scoreWidth + m ()Lnet/minecraft/class_2561; comp_2132 score + m ()Lnet/minecraft/class_2561; comp_2131 name + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;I)V + p 1 name + p 2 score + p 3 scoreWidth +c net/minecraft/class_327 net/minecraft/client/font/TextRenderer + c Manages the rendering of text.\n\n

The current instance used by the client can be obtained by\n{@code MinecraftClient.getInstance().textRenderer}.\n\n@see net.minecraft.client.MinecraftClient#textRenderer + f Lnet/minecraft/class_5819; field_2001 random + f F field_32166 Z_INDEX + f F field_24237 FORWARD_SHIFT + f Lnet/minecraft/class_5225; field_24238 handler + f Lnet/minecraft/class_327$class_11602; field_61529 fonts + f I field_2000 fontHeight + c The font height of the text that is rendered by the text renderer. + m ()Z method_1726 isRightToLeft + c Checks if the currently set language uses right to left writing. + m ()Lnet/minecraft/class_5225; method_27527 getTextHandler + m (ILnet/minecraft/class_2583;)F method_27516 method_27516 + p 2 style + p 1 codePoint + m (Lnet/minecraft/class_2561;FFIZLorg/joml/Matrix4f;Lnet/minecraft/class_4597;Lnet/minecraft/class_327$class_6415;II)V method_27522 draw + p 4 color + c the text color in the 0xAARRGGBB format + p 5 shadow + p 6 matrix + p 7 vertexConsumers + p 1 text + p 2 x + p 3 y + p 8 layerType + p 9 backgroundColor + p 10 light + m (Ljava/lang/String;FFIZI)Lnet/minecraft/class_327$class_11465; method_71796 prepare + p 1 string + p 2 x + p 5 shadow + p 6 backgroundColor + p 3 y + p 4 color + m (Lnet/minecraft/class_5348;I)Lnet/minecraft/class_5348; method_1714 trimToWidth + c Trims a string to be at most {@code maxWidth} wide.\n\n@return the text\n@see TextHandler#trimToWidth(StringVisitable, int, Style) + p 2 width + p 1 text + m (Lnet/minecraft/class_5481;FFIILorg/joml/Matrix4f;Lnet/minecraft/class_4597;I)V method_37296 drawWithOutline + p 5 outlineColor + c the outline color in 0xAARRGGBB + p 4 color + c the text color in 0xAARRGGBB + p 7 vertexConsumers + p 6 matrix + p 1 text + p 3 y + p 2 x + p 8 light + m (Lnet/minecraft/class_5348;)I method_27525 getWidth + c Gets the width of some text when rendered. + p 1 text + c the text + m (Ljava/lang/String;IZ)Ljava/lang/String; method_27524 trimToWidth + c Trims a string to be at most {@code maxWidth} wide.\n\n@return the trimmed string + p 1 text + p 2 maxWidth + p 3 backwards + m (Lnet/minecraft/class_327$class_5232;[FIFIIILnet/minecraft/class_2583;I)Z method_37297 method_37297 + p 9 codePoint + p 8 style + p 7 index + m (Lnet/minecraft/class_5348;I)I method_44378 getWrappedLinesHeight + c {@return the height of the text, after it has been wrapped, in pixels}\n@see TextRenderer#wrapLines(StringVisitable, int)\n@see #getWrappedLinesHeight(String, int) + p 1 text + p 2 maxWidth + m (Lnet/minecraft/class_5481;)I method_30880 getWidth + c Gets the width of some text when rendered. + p 1 text + m (Lnet/minecraft/class_5481;FFIZLorg/joml/Matrix4f;Lnet/minecraft/class_4597;Lnet/minecraft/class_327$class_6415;II)V method_22942 draw + p 9 backgroundColor + p 10 light + p 7 vertexConsumers + p 8 layerType + p 1 text + p 2 x + p 5 shadow + p 6 matrix + p 3 y + p 4 color + c the text color in the 0xAARRGGBB format + m (Lnet/minecraft/class_327$class_11602;)V + p 1 fonts + m (Ljava/lang/String;I)Ljava/lang/String; method_27523 trimToWidth + c Trims a string to be at most {@code maxWidth} wide.\n\n@return the trimmed string\n@see TextHandler#trimToWidth(String, int, Style) + p 2 maxWidth + p 1 text + m (ILnet/minecraft/class_2583;)Lnet/minecraft/class_11768; method_72731 getGlyph + p 2 style + p 1 codePoint + m (Ljava/lang/String;)Ljava/lang/String; method_1721 mirror + p 1 text + m (Lnet/minecraft/class_5348;I)Ljava/util/List; method_72101 wrapLinesWithoutLanguage + p 1 text + p 2 width + m (Lnet/minecraft/class_5348;I)Ljava/util/List; method_1728 wrapLines + c Wraps text when the rendered width of text exceeds the {@code width}.\n\n@return a list of ordered text which has been wrapped + p 1 text + p 2 width + m (Lnet/minecraft/class_5481;FFIZZI)Lnet/minecraft/class_327$class_11465; method_71795 prepare + p 1 text + p 3 y + p 2 x + p 5 shadow + p 4 color + p 7 backgroundColor + p 6 trackEmpty + m (Ljava/lang/String;)I method_1727 getWidth + c Gets the width of some text when rendered. + p 1 text + c the text + m (Lnet/minecraft/class_11719;)Lnet/minecraft/class_11603; method_72732 getGlyphs + p 1 source + m (Ljava/lang/String;FFIZLorg/joml/Matrix4f;Lnet/minecraft/class_4597;Lnet/minecraft/class_327$class_6415;II)V method_27521 draw + p 4 color + c the text color in the 0xAARRGGBB format + p 3 y + p 2 x + p 1 string + p 10 light + p 9 backgroundColor + p 8 layerType + p 7 vertexConsumers + p 6 matrix + p 5 shadow +c net/minecraft/class_327$class_11602 net/minecraft/client/font/TextRenderer$GlyphsProvider + m ()Lnet/minecraft/class_11769; method_73366 getRectangleGlyph + m (Lnet/minecraft/class_11719;)Lnet/minecraft/class_11603; method_72735 getGlyphs + p 1 source +c net/minecraft/class_327$class_6415 net/minecraft/client/font/TextRenderer$TextLayerType + f Lnet/minecraft/class_327$class_6415; field_33995 POLYGON_OFFSET + f Lnet/minecraft/class_327$class_6415; field_33994 SEE_THROUGH + f Lnet/minecraft/class_327$class_6415; field_33993 NORMAL +c net/minecraft/class_327$class_11465 net/minecraft/client/font/TextRenderer$GlyphDrawable + m ()Lnet/minecraft/class_8030; method_71800 getScreenRect + m (Lnet/minecraft/class_327$class_11464;)V method_71801 draw + p 1 glyphDrawer +c net/minecraft/class_327$class_11464 net/minecraft/client/font/TextRenderer$GlyphDrawer + m (Lnet/minecraft/class_12237;)V method_75775 drawEmptyGlyphRect + p 1 rect + m (Lnet/minecraft/class_11767;)V method_71798 drawRectangle + p 1 rect + m (Lnet/minecraft/class_4597;Lorg/joml/Matrix4f;Lnet/minecraft/class_327$class_6415;I)Lnet/minecraft/class_327$class_11464; method_71799 drawing + p 2 layerType + p 1 matrix + p 3 light + p 0 vertexConsumers + m (Lnet/minecraft/class_11767$class_12238;)V method_71797 drawGlyph + p 1 glyph +c net/minecraft/class_327$class_11464$1 net/minecraft/client/font/TextRenderer$GlyphDrawer$1 + m (Lnet/minecraft/class_11767;)V method_73365 draw + p 1 glyph +c net/minecraft/class_327$class_5232 net/minecraft/client/font/TextRenderer$Drawer + f Z field_63844 trackEmpty + f F field_24250 x + f F field_60705 maxBackgroundX + f F field_60701 maxX + f F field_60703 minBackgroundX + f Ljava/util/List; field_63845 emptyGlyphRects + f I field_54817 color + f F field_24251 y + f I field_54818 backgroundColor + f F field_60704 minBackgroundY + f Ljava/util/List; field_60707 drawnGlyphs + f F field_60706 maxBackgroundY + f F field_60700 minY + f F field_60702 maxY + f F field_60699 minX + f Z field_24241 shadow + f Ljava/util/List; field_24252 rectangles + m (Lnet/minecraft/class_327;FFIZZ)V + p 4 color + p 3 y + p 2 x + p 6 trackEmpty + p 5 shadow + m (ILnet/minecraft/class_2583;Lnet/minecraft/class_11768;)Z method_72733 accept + p 2 style + p 3 glyph + p 1 index + m (Lnet/minecraft/class_11767$class_12238;)V method_71804 addGlyph + p 1 glyph + m (Lnet/minecraft/class_327;FFIIZZ)V + p 6 shadow + p 7 trackEmpty + p 4 color + p 5 backgroundColor + p 2 x + p 3 y + m (Lnet/minecraft/class_5251;)I method_65178 getRenderColor + p 1 override + m (Lnet/minecraft/class_12237;)V method_75783 addEmptyGlyphRect + p 1 rect + m (FFF)V method_71802 updateBackgroundBounds + p 1 x + p 3 width + p 2 y + m (FFFF)V method_71803 updateTextBounds + p 2 minY + p 1 minX + p 4 maxY + p 3 maxX + m (Lnet/minecraft/class_11767;)V method_27532 addRectangle + p 1 rectangle + m (Lnet/minecraft/class_2583;I)I method_65177 getShadowColor + p 2 textColor + p 1 style +c net/minecraft/class_320 net/minecraft/client/session/Session + f Ljava/lang/String; field_1983 accessToken + f Ljava/lang/String; field_1982 username + f Ljava/util/Optional; field_34960 xuid + f Ljava/util/Optional; field_34961 clientId + f Ljava/util/UUID; field_1985 uuid + m ()Ljava/lang/String; method_1676 getUsername + m ()Ljava/lang/String; method_1675 getSessionId + m ()Ljava/lang/String; method_1674 getAccessToken + m (Ljava/lang/String;Ljava/util/UUID;Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;)V + p 4 xuid + p 5 clientId + p 2 uuid + p 3 accessToken + p 1 username + m ()Ljava/util/Optional; method_38741 getXuid + m ()Ljava/util/Optional; method_38740 getClientId + m ()Ljava/util/UUID; method_44717 getUuidOrNull + c {@return the UUID, or {@code null} if it is invalid} +c net/minecraft/class_12450 net/minecraft/unused/packageinfo/PackageInfo12450 +c net/minecraft/class_12454 net/minecraft/unused/packageinfo/PackageInfo12454 +c net/minecraft/class_12453 net/minecraft/unused/packageinfo/PackageInfo12453 +c net/minecraft/class_12452 net/minecraft/unused/packageinfo/PackageInfo12452 +c net/minecraft/class_12451 net/minecraft/unused/packageinfo/PackageInfo12451 +c net/minecraft/class_12458 net/minecraft/unused/packageinfo/PackageInfo12458 +c net/minecraft/class_12457 net/minecraft/unused/packageinfo/PackageInfo12457 +c net/minecraft/class_12456 net/minecraft/unused/packageinfo/PackageInfo12456 +c net/minecraft/class_12455 net/minecraft/unused/packageinfo/PackageInfo12455 +c net/minecraft/class_319 net/minecraft/client/util/VideoMode + f I field_1975 refreshRate + f I field_1976 blueBits + f I field_1979 height + f I field_1977 greenBits + f I field_1978 redBits + f Ljava/util/regex/Pattern; field_1981 PATTERN + f I field_1980 width + m ()I method_1671 getRefreshRate + m (IIIIII)V + p 1 width + p 2 height + p 3 redBits + p 4 greenBits + p 5 blueBits + p 6 refreshRate + m ()I method_1672 getBlueBits + m (Ljava/lang/String;)Ljava/util/Optional; method_1665 fromString + p 0 string + m (Lorg/lwjgl/glfw/GLFWVidMode$Buffer;)V + p 1 buffer + m ()I method_1668 getWidth + m ()I method_1669 getHeight + m ()Ljava/lang/String; method_1670 asString + m ()I method_1666 getRedBits + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()I method_1667 getGreenBits + m (Lorg/lwjgl/glfw/GLFWVidMode;)V + p 1 vidMode +c net/minecraft/class_12459 net/minecraft/unused/packageinfo/PackageInfo12459 +c net/minecraft/class_9632 net/minecraft/network/packet/s2c/play/ProjectilePowerS2CPacket + f I field_51337 entityId + f D field_51849 accelerationPower + f Lnet/minecraft/class_9139; field_51336 CODEC + m (Lnet/minecraft/class_2602;)V method_59505 apply + m (ID)V + p 1 entityId + p 2 accelerationPower + m ()I method_59507 getEntityId + m ()D method_60423 getAccelerationPower + m (Lnet/minecraft/class_2540;)V method_59506 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_333 net/minecraft/client/util/NarratorManager + c A bridge between Minecraft and {@link com.mojang.text2speech.Narrator}. + f Lnet/minecraft/class_2561; field_18967 EMPTY + c An empty text for narration. + f Lcom/mojang/text2speech/Narrator; field_2055 narrator + f Lorg/slf4j/Logger; field_18210 LOGGER + f Lnet/minecraft/class_310; field_39755 client + m (Lnet/minecraft/class_2561;)V method_44708 narrateChatMessage + c Narrates a chat message.\n\n@see NarratorMode#shouldNarrateChat + p 1 message + m (Lnet/minecraft/class_2561;)V method_47976 narrateSystemMessage + c Narrates a system message.\n\n@see NarratorMode#shouldNarrateSystem + p 1 message + m ()V method_1793 clear + m (Ljava/lang/String;Z)V method_66522 say + p 1 text + p 2 interrupt + m (Lnet/minecraft/class_310;)V + p 1 client + m ()V method_20371 destroy + m (Lnet/minecraft/class_2561;)V method_70816 narrate + p 1 message + m (Lnet/minecraft/class_2561;)V method_37015 narrateSystemImmediately + c Narrates system text.\n\n@see NarratorMode#shouldNarrateSystem + p 1 text + c the text to narrate + m (Lnet/minecraft/class_2561;)V method_70817 narrateText + p 1 message + m (Ljava/lang/String;)V method_19788 narrateSystemImmediately + c Narrates system text.\n\n@see NarratorMode#shouldNarrateSystem + p 1 text + c the text to narrate + m (Lnet/minecraft/class_4065;)V method_1792 onModeChange + c Narrates a message informing the user about a changed narration mode\nand displays it in a toast. + p 1 mode + c the new narrator mode + m (Z)V method_52183 checkNarratorLibrary + p 1 narratorEnabled + m ()Z method_1791 isActive + m (Ljava/lang/String;)V method_37016 debugPrintMessage + c If the game is {@linkplain net.minecraft.SharedConstants#isDevelopment\nin a development environment}, logs a debug message for a narrated string. + p 1 message + c the narrated message + m ()Lnet/minecraft/class_4065; method_20602 getNarratorMode + c {@return the current narrator mode of the client} +c net/minecraft/class_333$class_8571 net/minecraft/client/util/NarratorManager$InactiveNarratorLibraryException +c net/minecraft/class_339 net/minecraft/client/gui/widget/ClickableWidget + c A clickable widget is a GUI element that has many methods to handle different\nmouse actions. In addition, it allows a message to be rendered on the widget\nand narrated when the widget is selected. + f Lnet/minecraft/class_9110; field_41095 tooltip + f Z field_22756 focused + f Z field_22764 visible + f Z field_22762 hovered + f I field_22759 height + f F field_22765 alpha + f I field_42116 navigationOrder + f I field_22761 y + f Z field_22763 active + f I field_22758 width + f Lnet/minecraft/class_2561; field_22754 message + f I field_22760 x + m (II)V method_55445 setDimensions + p 2 height + p 1 width + m (Lnet/minecraft/class_11909;Z)V method_25348 onClick + p 2 doubled + p 1 click + m (Ljava/time/Duration;)V method_47402 setTooltipDelay + p 1 tooltipDelay + m (Lnet/minecraft/class_11909;)V method_25357 onRelease + p 1 click + m ()Lnet/minecraft/class_2561; method_25369 getMessage + m (Lnet/minecraft/class_6382;)V method_37021 appendDefaultNarrations + p 1 builder + m (Lnet/minecraft/class_12225;Lnet/minecraft/class_2561;I)V method_75799 drawTextWithMargin + p 3 marginX + p 2 text + p 1 drawer + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_5250; method_32602 getNarrationMessage + p 0 message + m ()I method_55442 getRight + m (I)V method_48591 setNavigationOrder + p 1 navigationOrder + m (I)V method_53533 setHeight + p 1 height + m (IIIILnet/minecraft/class_2561;)V + p 1 x + p 3 width + p 2 y + p 5 message + p 4 height + m (Lnet/minecraft/class_332;)V method_76256 setCursor + p 1 context + m (Lnet/minecraft/class_11909;DD)V method_25349 onDrag + p 4 offsetY + p 2 offsetX + p 1 click + m (Lnet/minecraft/class_1144;)V method_62888 playClickSound + p 0 soundManager + m (Lnet/minecraft/class_1144;)V method_25354 playDownSound + p 1 soundManager + m ()Z method_49606 isHovered + m (Lnet/minecraft/class_332;IIF)V method_48579 renderWidget + p 1 context + p 2 mouseX + p 3 mouseY + p 4 deltaTicks + m (DD)Z method_72102 isInBounds + p 3 y + p 1 x + m ()F method_75798 getAlpha + m (IIII)V method_55444 setDimensionsAndPosition + p 4 y + p 1 width + p 3 x + p 2 height + m (Lnet/minecraft/class_7919;)V method_47400 setTooltip + p 1 tooltip + m (I)V method_25358 setWidth + p 1 width + m (Lnet/minecraft/class_11910;)Z method_25351 isValidClickButton + p 1 input + m ()I method_55443 getBottom + m ()Lnet/minecraft/class_5250; method_25360 getNarrationMessage + m (Lnet/minecraft/class_2561;)V method_25355 setMessage + p 1 message + m ()Z method_25367 isSelected + m (F)V method_25350 setAlpha + p 1 alpha + m (Lnet/minecraft/class_6382;)V method_47399 appendClickableNarrations + p 1 builder +c net/minecraft/class_339$class_12230 net/minecraft/client/gui/widget/ClickableWidget$InactivityIndicatingWidget + f Lnet/minecraft/class_2561; field_63861 inactiveMessage + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_75800 makeInactive + p 0 text +c net/minecraft/class_338 net/minecraft/client/gui/hud/ChatHud + c Responsible for rendering various game messages such as chat messages or\njoin/leave messages.\n\n@see net.minecraft.client.gui.screen.ChatScreen + f Lnet/minecraft/class_310; field_2062 client + f I field_2066 scrolledLines + f Lnet/minecraft/class_408; field_62003 screen + f Lorg/slf4j/Logger; field_2065 LOGGER + f Lnet/minecraft/class_8623; field_2063 messageHistory + f I field_40389 OFFSET_FROM_BOTTOM + f Lnet/minecraft/class_338$class_11733; field_62002 draft + f I field_40390 REMOVAL_QUEUE_TICKS + f Lnet/minecraft/class_2960; field_63863 EXPAND_CHAT_QUEUE_ID + f Ljava/util/List; field_2061 messages + f I field_32180 MAX_MESSAGES + f Lnet/minecraft/class_2583; field_63865 CHAT_QUEUE_STYLE + f Ljava/util/List; field_2064 visibleMessages + f Lnet/minecraft/class_2561; field_40391 DELETED_MARKER_TEXT + f Ljava/util/List; field_40392 removalQueue + f Z field_2067 hasUnreadNewMessages + m (Z)V method_1808 clear + p 1 clearHistory + m ()V method_1820 resetScroll + m (Lnet/minecraft/class_338$class_12232;Lnet/minecraft/class_338$class_11511;)I method_71990 forEachVisibleLine + c {@return the number of lines accepted by {@code lineConsumer}} + p 1 opacityRule + p 2 lineConsumer + m (Lnet/minecraft/class_338$class_9477;)V method_58743 restoreChatState + p 1 state + m ()V method_45584 tickRemovalQueueIfExists + m (Ljava/lang/String;)V method_1803 addToMessageHistory + p 1 message + m ()Lnet/minecraft/class_408; method_73206 removeScreen + c @return the previous screen + m (Lnet/minecraft/class_2561;)V method_1812 addMessage + p 1 message + m ()V method_45589 tickRemovalQueue + m ()I method_1813 getVisibleLineCount + m (IILnet/minecraft/class_338$class_12233;IFLnet/minecraft/class_303$class_7590;IF)V method_75802 method_75802 + p 5 line + p 6 y + p 7 opacity + m (D)I method_1806 getWidth + p 0 widthOption + m ()Lnet/minecraft/class_8623; method_1809 getMessageHistory + m (D)I method_1818 getHeight + p 0 heightOption + m (ILnet/minecraft/class_338$class_7731;)Z method_45585 method_45585 + p 2 message + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_7469;Lnet/minecraft/class_7591;)V method_44811 addMessage + p 3 indicator + p 2 signatureData + p 1 message + m ()Z method_1819 isChatFocused + m ()I method_1811 getWidth + m (Lnet/minecraft/class_303;)Lnet/minecraft/class_303; method_45586 createRemovalMarker + p 1 original + m ()Lnet/minecraft/class_338$class_9477; method_58745 toChatState + m (I)V method_1802 scroll + p 1 scroll + m ()V method_44813 refresh + m (Lnet/minecraft/class_12225;IIZ)V method_75803 render + p 1 textConsumer + p 2 windowHeight + p 3 currentTick + p 4 expanded + m ()I method_1810 getHeight + m (Lnet/minecraft/class_332;Lnet/minecraft/class_327;IIIZZ)V method_75804 render + p 4 mouseX + p 5 mouseY + p 6 interactable + p 1 context + p 2 textRenderer + p 3 currentTick + m ()I method_44752 getLineHeight + m (Lnet/minecraft/class_338$class_12233;IIZ)V method_1805 render + p 4 expanded + p 3 currentTick + p 2 windowHeight + p 1 drawer + m (Lnet/minecraft/class_303;)V method_45027 logChatMessage + p 1 message + m ()V method_73205 setScreen + m (Lnet/minecraft/class_303;)V method_58744 addMessage + p 1 message + m (FLorg/joml/Matrix3x2f;)V method_75801 method_75801 + p 1 pose + m (Lnet/minecraft/class_338$class_11732;Lnet/minecraft/class_408$class_11738;)Lnet/minecraft/class_408; method_73201 createScreen + p 1 method + p 2 factory + m (Lnet/minecraft/class_338$class_11732;Lnet/minecraft/class_408$class_11738;)V method_73202 setClientScreen + p 1 method + p 2 factory + m (Ljava/lang/String;)V method_73203 saveDraft + p 1 text + m ()V method_1817 reset + m (Lnet/minecraft/class_303;)V method_1815 addVisibleMessage + p 1 message + m (Lnet/minecraft/class_310;)V + p 1 client + m ()D method_41831 getDefaultUnfocusedHeight + m ()D method_1814 getChatScale + m (Lnet/minecraft/class_7469;)V method_44812 removeMessage + p 1 signature + m ()Z method_23677 isChatHidden + m (Lnet/minecraft/class_7469;)Lnet/minecraft/class_338$class_7731; method_45587 queueForRemoval + p 1 signature + m ()V method_73204 discardDraft +c net/minecraft/class_338$class_7731 net/minecraft/client/gui/hud/ChatHud$RemovalQueuedMessage + f I comp_1022 deletableAfter + f Lnet/minecraft/class_7469; comp_1021 signature + m ()Lnet/minecraft/class_7469; comp_1021 signature + m ()I comp_1022 deletableAfter + m (Lnet/minecraft/class_7469;I)V + p 1 signature + p 2 deletableAfter +c net/minecraft/class_338$class_9477 net/minecraft/client/gui/hud/ChatHud$ChatState + f Ljava/util/List; field_50219 messageHistory + f Ljava/util/List; field_50220 removalQueue + f Ljava/util/List; field_50218 messages + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;)V + p 2 messageHistory + p 3 removalQueue + p 1 messages +c net/minecraft/class_338$class_12232 net/minecraft/client/gui/hud/ChatHud$OpacityRule + f Lnet/minecraft/class_338$class_12232; field_63874 CONSTANT + m (I)Lnet/minecraft/class_338$class_12232; timeBased timeBased + p 0 currentTick + m (Lnet/minecraft/class_303$class_7590;)F method_75806 method_75806 + p 0 line + m (ILnet/minecraft/class_303$class_7590;)F method_75805 method_75805 + p 1 line + m (Lnet/minecraft/class_303$class_7590;)F calculate calculate + p 1 line +c net/minecraft/class_338$class_12233 net/minecraft/client/gui/hud/ChatHud$Backend + m (IIIIFLnet/minecraft/class_7591;)V method_75808 indicator + p 3 x2 + p 4 y2 + p 5 opacity + p 6 indicator + p 1 x1 + p 2 y1 + m (Ljava/util/function/Consumer;)V method_75811 updatePose + p 1 transformer + m (IIZLnet/minecraft/class_7591;Lnet/minecraft/class_7591$class_7592;)V method_75810 indicatorIcon + p 5 icon + p 4 indicator + p 3 forceDraw + p 2 bottom + p 1 left + m (IFLnet/minecraft/class_5481;)Z method_75807 text + p 3 text + p 1 y + p 2 opacity + m (IIIII)V method_75809 fill + p 2 y1 + p 1 x1 + p 4 y2 + p 3 x2 + p 5 color +c net/minecraft/class_338$class_12234 net/minecraft/client/gui/hud/ChatHud$Forwarder + f Lnet/minecraft/class_12225; field_63875 drawer + m (Lnet/minecraft/class_12225;)V + p 1 drawer +c net/minecraft/class_338$class_12235 net/minecraft/client/gui/hud/ChatHud$Interactable + f Lnet/minecraft/class_327; field_63877 textRenderer + f Lorg/joml/Vector2f; field_63882 untransformedOffset + f Lnet/minecraft/class_332; field_63876 context + f Lnet/minecraft/class_2583; field_63883 style + f Lnet/minecraft/class_12225; field_63878 drawer + f I field_63880 mouseX + f I field_63881 mouseY + f Lnet/minecraft/class_12225$class_12227; field_63879 transformation + m (Lnet/minecraft/class_7591;)V method_75814 indicatorTooltip + p 1 indicator + m ()V method_75812 calculateUntransformedOffset + m (IIII)Z method_75813 isWithinBounds + p 1 left + p 2 top + p 3 right + p 4 bottom + m (Lnet/minecraft/class_2583;)V method_75815 accept + m (Ljava/lang/Object;)V accept accept + p 1 style + m (Lnet/minecraft/class_332;Lnet/minecraft/class_327;IIZ)V + p 4 mouseY + p 3 mouseX + p 2 textRenderer + p 1 context +c net/minecraft/class_338$class_11732 net/minecraft/client/gui/hud/ChatHud$ChatMethod + f Ljava/lang/String; field_62006 replacement + f Lnet/minecraft/class_338$class_11732; field_62004 MESSAGE + f Lnet/minecraft/class_338$class_11732; field_62005 COMMAND + m ()Ljava/lang/String; method_73207 getReplacement + m (Lnet/minecraft/class_338$class_11733;)Z method_73208 shouldKeepDraft + c {@return whether the saved draft should be shown} when opening the chat screen.\n\n

This depends on the method used to open it (represented by {@code this}).\nUsing the normal chat key, all drafts can still be used. When opening the chat screen\nusing the command key instead, only a saved command can be retained, not a\nchat message. + p 1 draft + c the saved draft + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 replacement +c net/minecraft/class_338$class_11733 net/minecraft/client/gui/hud/ChatHud$Draft + f Lnet/minecraft/class_338$class_11732; comp_4606 chatMethod + f Ljava/lang/String; comp_4605 text + m ()Lnet/minecraft/class_338$class_11732; comp_4606 chatMethod + m ()Ljava/lang/String; comp_4605 text + m (Ljava/lang/String;Lnet/minecraft/class_338$class_11732;)V + p 1 text + p 2 chatMethod +c net/minecraft/class_338$1 net/minecraft/client/gui/hud/ChatHud$1 + f Z field_63866 styledCurrentLine +c net/minecraft/class_338$class_12333 net/minecraft/client/gui/hud/ChatHud$Hud + f Lnet/minecraft/class_12225$class_12227; field_64429 transformation + f Lnet/minecraft/class_12225; field_64428 textConsumer + f Lnet/minecraft/class_332; field_64427 context + m (Lnet/minecraft/class_332;)V + p 1 context +c net/minecraft/class_338$class_11511 net/minecraft/client/gui/hud/ChatHud$LineConsumer + m (Lnet/minecraft/class_303$class_7590;IF)V accept accept + p 2 y1 + p 3 opacity + p 1 line +c net/minecraft/class_337 net/minecraft/client/gui/hud/BossBarHud + f Ljava/util/Map; field_2060 bossBars + f [Lnet/minecraft/class_2960; field_45344 BACKGROUND_TEXTURES + f I field_32178 HEIGHT + f [Lnet/minecraft/class_2960; field_45347 NOTCHED_PROGRESS_TEXTURES + f I field_32177 WIDTH + f [Lnet/minecraft/class_2960; field_45345 PROGRESS_TEXTURES + f [Lnet/minecraft/class_2960; field_45346 NOTCHED_BACKGROUND_TEXTURES + f Lnet/minecraft/class_310; field_2058 client + m ()V method_1801 clear + m (Lnet/minecraft/class_332;IILnet/minecraft/class_1259;)V method_1799 renderBossBar + p 2 x + p 1 context + p 4 bossBar + p 3 y + m (Lnet/minecraft/class_332;)V method_1796 render + p 1 context + m (Lnet/minecraft/class_332;IILnet/minecraft/class_1259;I[Lnet/minecraft/class_2960;[Lnet/minecraft/class_2960;)V method_41830 renderBossBar + p 7 notchedTextures + p 6 textures + p 1 context + p 5 width + p 4 bossBar + p 3 y + p 2 x + m (Lnet/minecraft/class_310;)V + p 1 client + m (Lnet/minecraft/class_2629;)V method_1795 handlePacket + p 1 packet + m ()Z method_1800 shouldThickenFog + m ()Z method_1797 shouldDarkenSky + m ()Z method_1798 shouldPlayDragonMusic +c net/minecraft/class_9639 net/minecraft/predicate/collection/CollectionContainsPredicate + m ([Ljava/util/function/Predicate;)Lnet/minecraft/class_9639; method_59608 create + p 0 predicates + m ()Ljava/util/List; method_59605 getPredicates + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_59606 createCodec + p 0 predicateCodec + m (Ljava/util/List;)Lnet/minecraft/class_9639; method_59607 create + p 0 predicates +c net/minecraft/class_9639$class_9641 net/minecraft/predicate/collection/CollectionContainsPredicate$Single + f Ljava/util/function/Predicate; comp_2612 test + m (Ljava/lang/Iterable;)Z method_59611 test + m (Ljava/lang/Object;)Z test test + p 1 collection + m ()Ljava/util/function/Predicate; comp_2612 test + m (Ljava/util/function/Predicate;)V + p 1 test +c net/minecraft/class_9639$class_9640 net/minecraft/predicate/collection/CollectionContainsPredicate$Multiple + f Ljava/util/List; comp_2611 tests + m (Ljava/lang/Object;Ljava/util/function/Predicate;)Z method_59610 method_59610 + p 1 predicate + m (Ljava/lang/Iterable;)Z method_59609 test + m (Ljava/lang/Object;)Z test test + p 1 collection + m ()Ljava/util/List; comp_2611 tests + m (Ljava/util/List;)V + p 1 tests +c net/minecraft/class_9639$class_9642 net/minecraft/predicate/collection/CollectionContainsPredicate$Empty + m (Ljava/lang/Iterable;)Z method_59612 test + m (Ljava/lang/Object;)Z test test + p 1 collection +c net/minecraft/class_9637 net/minecraft/util/dynamic/NullOps + f Lnet/minecraft/class_9637; field_51366 INSTANCE + m (Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_59561 getNumberValue + m (Ljava/lang/String;)Ljava/lang/Object; createString createString + p 1 string + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; mergeToMap mergeToMap + p 3 value + p 1 map + p 2 key + m (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; remove remove + p 1 input + p 2 key + m (Ljava/util/stream/IntStream;)Lnet/minecraft/class_3902; method_59573 createIntList + m (Ljava/util/stream/Stream;)Lnet/minecraft/class_3902; method_59575 createMap + m (S)Lnet/minecraft/class_3902; method_59576 createShort + m (Ljava/util/stream/Stream;)Ljava/lang/Object; createList createList + p 1 list + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getNumberValue getNumberValue + p 1 input + m ()Lnet/minecraft/class_3902; method_59578 emptyMap + m (Lnet/minecraft/class_3902;Ljava/lang/String;)Lnet/minecraft/class_3902; method_59565 remove + m (Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_59594 getByteBuffer + m (I)Lnet/minecraft/class_3902; method_59559 createInt + m (Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_59582 getStringValue + m (Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_59598 getLongStream + m (F)Lnet/minecraft/class_3902; method_59558 createFloat + m (Ljava/lang/Number;)Ljava/lang/Object; createNumeric createNumeric + p 1 number + m (S)Ljava/lang/Object; createShort createShort + p 1 s + m (Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_59586 getMapEntries + m (Lnet/minecraft/class_3902;Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_59562 mergeToList + m (Lnet/minecraft/class_3902;Lnet/minecraft/class_3902;Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_59563 mergeToMap + m (Ljava/nio/ByteBuffer;)Ljava/lang/Object; createByteList createByteList + p 1 buf + m (Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_59590 getStream + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getMap getMap + p 1 input + m (Ljava/util/stream/Stream;)Lnet/minecraft/class_3902; method_59580 createList + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/class_3902; method_59571 createByteList + m (Ljava/util/stream/LongStream;)Ljava/lang/Object; createLongList createLongList + p 1 stream + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getByteBuffer getByteBuffer + p 1 input + m (Ljava/lang/Object;Ljava/util/List;)Lcom/mojang/serialization/DataResult; mergeToList mergeToList + p 2 values + p 1 list + m (Ljava/lang/Object;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; mergeToMap mergeToMap + p 2 values + p 1 map + m (Ljava/lang/String;)Lnet/minecraft/class_3902; method_59570 createString + m ()Lnet/minecraft/class_3902; method_59555 empty + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getList getList + p 1 input + m (F)Ljava/lang/Object; createFloat createFloat + p 1 f + m (Ljava/util/Map;)Ljava/lang/Object; createMap createMap + p 1 map + m (Ljava/util/stream/LongStream;)Lnet/minecraft/class_3902; method_59574 createLongList + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getIntStream getIntStream + p 1 input + m (Ljava/util/Map;)Lnet/minecraft/class_3902; method_59572 createMap + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_3902;)Ljava/lang/Object; method_59568 convertTo + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getMapEntries getMapEntries + p 1 input + m (Lnet/minecraft/class_3902;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; method_59564 mergeToMap + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getMapValues getMapValues + p 1 input + m (D)Lnet/minecraft/class_3902; method_59557 createDouble + m (Ljava/lang/Number;)Lnet/minecraft/class_3902; method_59569 createNumeric + m (Lnet/minecraft/class_3902;Ljava/util/Map;)Lcom/mojang/serialization/DataResult; method_59567 mergeToMap + m (Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_59579 getBooleanValue + m (Ljava/util/stream/Stream;)Ljava/lang/Object; createMap createMap + p 1 map + m (Z)Ljava/lang/Object; createBoolean createBoolean + p 1 bl + m (Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_59584 getMapValues + m (Lnet/minecraft/class_3902;Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_59566 mergeToList + m (Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_59592 getList + m (Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_59588 getMap + m (Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_59596 getIntStream + m (I)Ljava/lang/Object; createInt createInt + p 1 i + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; mergeToList mergeToList + p 1 list + p 2 value + m (D)Ljava/lang/Object; createDouble createDouble + p 1 d + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getBooleanValue getBooleanValue + p 1 input + m (B)Ljava/lang/Object; createByte createByte + p 1 b + m ()Lnet/minecraft/class_3902; method_59581 emptyList + m (Z)Lnet/minecraft/class_3902; method_59577 createBoolean + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getLongStream getLongStream + p 1 input + m (J)Lnet/minecraft/class_3902; method_59560 createLong + m (Ljava/util/stream/IntStream;)Ljava/lang/Object; createIntList createIntList + p 1 stream + m (Ljava/lang/Object;Ljava/util/Map;)Lcom/mojang/serialization/DataResult; mergeToMap mergeToMap + p 1 map + p 2 values + m (B)Lnet/minecraft/class_3902; method_59556 createByte + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getStringValue getStringValue + p 1 input + m (J)Ljava/lang/Object; createLong createLong + p 1 l + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getStream getStream + p 1 input + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Ljava/lang/Object; convertTo convertTo + p 2 unit + p 1 ops +c net/minecraft/class_9637$1 net/minecraft/util/dynamic/NullOps$1 + m (Ljava/lang/String;)Lnet/minecraft/class_3902; method_72376 get + m (Lnet/minecraft/class_3902;)Lnet/minecraft/class_3902; method_72375 get +c net/minecraft/class_9637$class_10926 net/minecraft/util/dynamic/NullOps$NullListBuilder + m ()Lnet/minecraft/class_3902; method_68802 initBuilder + m (Lnet/minecraft/class_3902;Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_68803 build + m (Lnet/minecraft/class_3902;Lnet/minecraft/class_3902;)Lnet/minecraft/class_3902; method_68801 add +c net/minecraft/class_9637$class_9638 net/minecraft/util/dynamic/NullOps$NullMapBuilder + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; build build + p 1 builder + p 2 prefix + m ()Lnet/minecraft/class_3902; method_59602 initBuilder + m (Lcom/mojang/serialization/DynamicOps;)V + p 1 ops + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; append append + p 3 builder + p 1 key + p 2 value + m (Lnet/minecraft/class_3902;Lnet/minecraft/class_3902;)Lcom/mojang/serialization/DataResult; method_59603 build + m (Lnet/minecraft/class_3902;Lnet/minecraft/class_3902;Lnet/minecraft/class_3902;)Lnet/minecraft/class_3902; method_59604 append +c net/minecraft/class_9636 net/minecraft/registry/tag/EnchantmentTags + f Lnet/minecraft/class_6862; field_51362 TOOLTIP_ORDER + f Lnet/minecraft/class_6862; field_51551 CURSE + f Lnet/minecraft/class_6862; field_51550 ON_RANDOM_LOOT + f Lnet/minecraft/class_6862; field_51554 PREVENTS_DECORATED_POT_SHATTERING + f Lnet/minecraft/class_6862; field_51552 SMELTS_LOOT + f Lnet/minecraft/class_6862; field_51553 PREVENTS_BEE_SPAWNS_WHEN_MINING + f Lnet/minecraft/class_6862; field_51556 PREVENTS_INFESTED_SPAWNS + f Lnet/minecraft/class_6862; field_51555 PREVENTS_ICE_MELTING + f Lnet/minecraft/class_6862; field_51558 NON_TREASURE + f Lnet/minecraft/class_6862; field_51557 TREASURE + f Lnet/minecraft/class_6862; field_51548 ON_MOB_SPAWN_EQUIPMENT + f Lnet/minecraft/class_6862; field_51547 IN_ENCHANTING_TABLE + f Lnet/minecraft/class_6862; field_51549 ON_TRADED_EQUIPMENT + f Lnet/minecraft/class_6862; field_51561 PLAINS_COMMON_TRADE + f Lnet/minecraft/class_6862; field_51560 JUNGLE_COMMON_TRADE + f Lnet/minecraft/class_6862; field_51562 SAVANNA_COMMON_TRADE + f Lnet/minecraft/class_6862; field_51559 DESERT_COMMON_TRADE + f Lnet/minecraft/class_6862; field_51532 JUNGLE_SPECIAL_TRADE + f Lnet/minecraft/class_6862; field_51530 TAIGA_COMMON_TRADE + f Lnet/minecraft/class_6862; field_51531 DESERT_SPECIAL_TRADE + f Lnet/minecraft/class_6862; field_51534 SAVANNA_SPECIAL_TRADE + f Lnet/minecraft/class_6862; field_51533 PLAINS_SPECIAL_TRADE + f Lnet/minecraft/class_6862; field_51528 SNOW_COMMON_TRADE + f Lnet/minecraft/class_6862; field_51529 SWAMP_COMMON_TRADE + f Lnet/minecraft/class_6862; field_51541 CROSSBOW_EXCLUSIVE_SET + f Lnet/minecraft/class_6862; field_51542 DAMAGE_EXCLUSIVE_SET + f Lnet/minecraft/class_6862; field_51540 BOW_EXCLUSIVE_SET + f Lnet/minecraft/class_6862; field_51544 RIPTIDE_EXCLUSIVE_SET + f Lnet/minecraft/class_6862; field_51543 MINING_EXCLUSIVE_SET + f Lnet/minecraft/class_6862; field_51546 DOUBLE_TRADE_PRICE + f Lnet/minecraft/class_6862; field_51545 TRADEABLE + f Lnet/minecraft/class_6862; field_51536 SWAMP_SPECIAL_TRADE + f Lnet/minecraft/class_6862; field_51535 SNOW_SPECIAL_TRADE + f Lnet/minecraft/class_6862; field_51538 ARMOR_EXCLUSIVE_SET + f Lnet/minecraft/class_6862; field_51537 TAIGA_SPECIAL_TRADE + f Lnet/minecraft/class_6862; field_51539 BOOTS_EXCLUSIVE_SET + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_59548 of + p 0 id +c net/minecraft/class_332 net/minecraft/client/gui/DrawContext + f Lnet/minecraft/class_11875; field_62463 cursor + f I field_63847 mouseY + f Lnet/minecraft/class_310; field_44656 client + f Lnet/minecraft/class_2583; field_63848 hoverStyle + f Ljava/lang/Runnable; field_60305 tooltipDrawer + f I field_63846 mouseX + f Lnet/minecraft/class_2583; field_63849 clickStyle + f Lorg/joml/Matrix3x2fStack; field_44657 matrices + f I field_44655 BACKGROUND_MARGIN + f Lnet/minecraft/class_1059; field_61532 spriteAtlasTexture + f Lnet/minecraft/class_332$class_8214; field_44659 scissorStack + f Lnet/minecraft/class_11246; field_59826 state + f Lnet/minecraft/class_11701; field_61531 spriteHolder + m ()I method_51443 getScaledWindowHeight + m (Lnet/minecraft/class_2960;IIIIFFFF)V method_70845 drawTexturedQuad + p 6 u1 + p 7 u2 + p 4 x2 + p 5 y2 + p 2 x1 + p 3 y1 + p 1 sprite + p 8 v1 + p 9 v2 + m (Lnet/minecraft/class_327;Lnet/minecraft/class_2583;II)V method_51441 drawHoverEvent + p 4 mouseY + p 3 mouseX + p 2 style + p 1 textRenderer + m (Lnet/minecraft/class_1041;)V method_74036 applyCursorTo + p 1 window + m (Lnet/minecraft/class_327;Ljava/util/List;Ljava/util/Optional;IILnet/minecraft/class_2960;)V method_51437 drawTooltip + p 1 textRenderer + p 4 x + p 5 y + p 2 text + p 3 data + p 6 texture + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_2960;IIFFIIIIIII)V method_25293 drawTexture + c Draws a textured rectangle from a region in a texture. + p 4 y + p 3 x + p 6 v + p 5 u + p 2 sprite + p 1 pipeline + p 12 textureHeight + p 11 textureWidth + p 13 color + p 8 height + p 7 width + p 10 regionHeight + p 9 regionWidth + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_11231;IIII)V method_51739 fill + p 5 x2 + p 6 y2 + p 3 x1 + p 4 y1 + p 1 pipeline + p 2 textureSetup + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;III)V method_51423 drawItem + p 4 y + p 5 seed + p 2 stack + p 3 x + p 1 entity + m (Lnet/minecraft/class_327;Ljava/lang/String;III)V method_25303 drawTextWithShadow + p 5 color + p 4 y + p 3 x + p 2 text + p 1 textRenderer + m (Lnet/minecraft/class_1799;II)V method_64861 drawCooldownProgress + p 1 stack + p 3 y + p 2 x + m (Lnet/minecraft/class_327;Lnet/minecraft/class_2561;III)V method_27535 drawTextWithShadow + p 3 x + p 2 text + p 1 textRenderer + p 5 color + p 4 y + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_2960;IIFFIIIII)V method_25291 drawTexture + c Draws a textured rectangle from a region in a texture.\n\n

The width and height of the region are the same as\nthe dimensions of the rectangle. + p 8 height + p 7 width + p 6 v + p 5 u + p 4 y + p 3 x + p 2 sprite + p 1 pipeline + p 11 color + p 10 textureHeight + p 9 textureWidth + m (Lnet/minecraft/class_1799;II)V method_51427 drawItem + p 2 x + p 3 y + p 1 item + m ()V method_71048 createNewRootLayer + m ()V method_71278 applyBlur + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_1058;IIII)V method_52709 drawSpriteStretched + p 5 width + p 6 height + p 1 pipeline + p 2 sprite + p 3 x + p 4 y + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_2960;IIII)V method_52706 drawGuiTexture + p 4 y + p 3 x + p 6 height + p 5 width + p 2 sprite + p 1 pipeline + m (Lnet/minecraft/class_310;Lnet/minecraft/class_11246;II)V + p 3 mouseX + p 4 mouseY + p 1 client + p 2 state + m (Lnet/minecraft/class_327;Lnet/minecraft/class_5348;IIII)V method_65179 drawWrappedTextWithShadow + p 5 width + p 6 color + p 3 x + p 4 y + p 1 textRenderer + p 2 text + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_2960;IIIII)V method_52707 drawGuiTexture + p 7 color + p 6 height + p 5 width + p 4 y + p 3 x + p 2 sprite + p 1 pipeline + m (Lnet/minecraft/class_3879$class_9948;FLnet/minecraft/class_4719;IIII)V method_70853 addSign + p 7 y2 + p 6 x2 + p 5 y1 + p 4 x1 + p 3 woodType + p 2 scale + p 1 model + m (Lnet/minecraft/class_327;Ljava/util/List;II)V method_51434 drawTooltip + p 1 textRenderer + p 2 text + p 3 x + p 4 y + m (Ljava/util/List;Lnet/minecraft/class_5632;)V method_71275 method_71275 + p 1 datax + m ()V method_44380 disableScissor + m (Lnet/minecraft/class_327;Ljava/lang/String;IIIZ)V method_51433 drawText + p 6 shadow + p 4 y + p 5 color + p 2 text + p 3 x + p 1 textRenderer + m (Lnet/minecraft/class_327;Lnet/minecraft/class_1799;IILjava/lang/String;)V method_64859 drawStackCount + p 5 stackCountText + p 3 x + p 4 y + p 1 textRenderer + p 2 stack + m (Lnet/minecraft/class_10090;)V method_70857 drawMap + p 1 mapState + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_2960;IIFFIIII)V method_25290 drawTexture + c Draws a textured rectangle from a region in a texture.\n\n

The width and height of the region are the same as\nthe dimensions of the rectangle. + p 6 v + p 5 u + p 8 height + p 7 width + p 10 textureHeight + p 9 textureWidth + p 2 sprite + p 1 pipeline + p 4 y + p 3 x + m (Lnet/minecraft/class_1058;)Lnet/minecraft/class_8690; method_72740 getScaling + p 0 sprite + m (Lnet/minecraft/class_332$class_12228;Ljava/util/function/Consumer;)Lnet/minecraft/class_12225; method_75786 getTextConsumer + p 1 hoverType + p 2 styleCallback + m (Lnet/minecraft/class_1799;III)V method_51428 drawItem + p 2 x + p 3 y + p 1 stack + p 4 seed + m (Lnet/minecraft/class_327;Lnet/minecraft/class_2561;II)V method_51438 drawTooltip + p 1 textRenderer + p 2 text + p 3 x + p 4 y + m (Lnet/minecraft/class_327;Ljava/util/List;Ljava/util/Optional;II)V method_64038 drawTooltip + p 3 data + p 2 text + p 1 textRenderer + p 5 y + p 4 x + m (Lnet/minecraft/class_339;Lnet/minecraft/class_332$class_12228;)Lnet/minecraft/class_12225; method_75787 getHoverListener + p 2 hoverType + p 1 widget + m (Lnet/minecraft/class_327;Lnet/minecraft/class_1799;IILjava/lang/String;)V method_51432 drawStackOverlay + p 1 textRenderer + p 2 stack + p 3 x + p 4 y + p 5 stackCountText + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_1058;Lnet/minecraft/class_8690$class_8691;IIIII)V method_52713 drawSpriteNineSliced + p 5 y + p 6 width + p 7 height + p 8 color + p 1 pipeline + p 2 sprite + p 3 nineSlice + p 4 x + m (Lnet/minecraft/class_1799;II)V method_64860 drawItemBar + p 2 x + p 1 stack + p 3 y + m (F)Lnet/minecraft/class_12225$class_12227; method_75784 getTransformationForCurrentState + p 1 opacity + m (Lnet/minecraft/class_327;Lnet/minecraft/class_2561;IIIZ)V method_51439 drawText + p 1 textRenderer + p 5 color + p 4 y + p 3 x + p 2 text + p 6 shadow + m (Lnet/minecraft/class_10017;FLorg/joml/Vector3f;Lorg/joml/Quaternionf;Lorg/joml/Quaternionf;IIII)V method_70856 addEntity + p 8 x2 + p 7 y1 + p 6 x1 + p 5 overrideCameraAngle + p 9 y2 + p 4 rotation + p 3 translation + p 2 scale + p 1 entityState + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lcom/mojang/blaze3d/textures/GpuTextureView;Lnet/minecraft/class_12137;IIIIIIFFFFI)V method_74707 drawTiledTexturedQuad + p 11 v0 + p 12 u1 + p 13 v1 + p 14 color + p 3 sampler + p 4 tileWidth + p 5 tileHeight + p 6 x0 + p 7 y0 + p 8 x1 + p 9 y1 + p 10 u0 + p 1 pipeline + p 2 texture + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_11231;IIIIILjava/lang/Integer;)V method_70848 fill + p 8 color2 + p 7 color + p 6 y2 + p 5 x2 + p 4 y1 + p 3 x1 + p 2 textureSetup + p 1 pipeline + m (Lnet/minecraft/class_327;Lnet/minecraft/class_2561;III)V method_27534 drawCenteredTextWithShadow + p 4 y + p 3 centerX + p 2 text + p 1 textRenderer + p 5 color + m (Lnet/minecraft/class_332$class_12228;)Lnet/minecraft/class_12225; method_75785 getTextConsumer + p 1 hoverType + m (Lnet/minecraft/class_4730;)Lnet/minecraft/class_1058; method_72741 getSprite + p 1 id + m (IIII)V method_44379 enableScissor + p 4 y2 + p 3 x2 + p 2 y1 + p 1 x1 + m (Lnet/minecraft/class_327;Lnet/minecraft/class_5481;IIIZ)V method_51430 drawText + p 1 textRenderer + p 2 text + p 3 x + p 4 y + p 5 color + p 6 shadow + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_1058;IIIII)V method_52710 drawSpriteStretched + p 4 y + p 5 width + p 2 sprite + p 3 x + p 1 pipeline + p 6 height + p 7 color + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_2960;IIIIIIII)V method_70846 drawGuiTexture + p 10 height + p 1 pipeline + p 3 textureWidth + p 2 sprite + p 5 u + p 4 textureHeight + p 7 x + p 6 v + p 9 width + p 8 y + m (Lnet/minecraft/class_10377;Lnet/minecraft/class_1767;Lnet/minecraft/class_9307;IIII)V method_70855 addBannerResult + p 1 bannerModel + p 2 baseColor + p 3 resultBannerPatterns + p 4 x1 + p 5 y1 + p 6 x2 + p 7 y2 + m ()Lnet/minecraft/class_12225; method_75788 getTextConsumer + m (Lnet/minecraft/class_1799;III)V method_55231 drawItemWithoutEntity + p 1 stack + p 3 y + p 2 x + p 4 seed + m (Lnet/minecraft/class_327;Lnet/minecraft/class_1799;II)V method_51431 drawStackOverlay + p 1 textRenderer + p 2 stack + p 3 x + p 4 y + m (Lnet/minecraft/class_327;Lnet/minecraft/class_5481;III)V method_35720 drawTextWithShadow + p 3 x + p 4 y + p 1 textRenderer + p 2 text + p 5 color + m (Lnet/minecraft/class_2561;II)V method_71276 drawTooltip + p 3 y + p 2 x + p 1 text + m (Lnet/minecraft/class_327;Ljava/util/List;IILnet/minecraft/class_2960;)V method_64236 drawOrderedTooltip + p 4 y + p 5 texture + p 1 textRenderer + p 2 text + p 3 x + m (Lnet/minecraft/class_327;Lnet/minecraft/class_5348;IIIIZ)V method_51440 drawWrappedText + p 7 shadow + p 6 color + p 5 width + p 4 y + p 3 x + p 2 text + p 1 textRenderer + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_1058;IIIIIIIIIII)V method_52712 drawSpriteTiled + p 1 pipeline + p 3 x + p 2 sprite + p 13 color + p 12 textureHeight + p 9 tileWidth + p 8 v + p 11 textureWidth + p 10 tileHeight + p 5 width + p 4 y + p 7 u + p 6 height + m (Lnet/minecraft/class_327;Ljava/util/List;II)V method_51447 drawOrderedTooltip + p 1 textRenderer + p 2 text + p 3 x + p 4 y + m (IIIII)V method_73198 drawStrokedRectangle + p 5 color + p 4 height + p 3 width + p 2 y + p 1 x + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_1058;IIIIIIIII)V method_52711 drawSpriteRegion + p 1 pipeline + p 2 sprite + p 3 textureWidth + p 4 textureHeight + p 5 u + p 6 v + p 7 x + p 8 y + p 9 width + p 10 height + p 11 color + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_8690$class_8691;Lnet/minecraft/class_1058;IIIIIIIIIII)V method_64040 drawInnerSprite + p 9 v + p 10 tileWidth + p 7 height + p 8 u + p 5 y + p 6 width + p 3 sprite + p 4 x + p 13 textureHeight + p 14 color + p 11 tileHeight + p 12 textureWidth + p 1 pipeline + p 2 nineSlice + m (Lnet/minecraft/class_327;Ljava/lang/String;III)V method_25300 drawCenteredTextWithShadow + p 1 textRenderer + p 5 color + p 4 y + p 3 centerX + p 2 text + m (Lnet/minecraft/class_327;Lnet/minecraft/class_2561;IILnet/minecraft/class_2960;)V method_64235 drawTooltip + p 3 x + p 2 text + p 5 texture + p 4 y + p 1 textRenderer + m (Lnet/minecraft/class_591;Lnet/minecraft/class_2960;FFFFIIII)V method_70854 addPlayerSkin + p 10 y2 + p 9 x2 + p 8 y1 + p 7 x1 + p 6 yPivot + p 5 yRotation + p 4 xRotation + p 3 scale + p 2 texture + p 1 playerModel + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_2960;IIIIIIIII)V method_52708 drawGuiTexture + c Draws a textured rectangle from a region in a gui texture.\n\n

The width and height of the region are the same as\nthe dimensions of the rectangle. + p 4 textureHeight + c the height of the entire texture + p 5 u + c the x starting position of the region in the texture + p 2 sprite + p 3 textureWidth + c the width of the entire texture + p 1 pipeline + p 10 height + c the height of the drawn rectangle and of the region in the texture + p 11 color + p 8 y + p 9 width + p 6 v + c the y starting position of the region in the texture + p 7 x + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_2960;IIFFIIIIII)V method_25302 drawTexture + c Draws a textured rectangle from a region in a 256x256 texture.\n\n

The Z coordinate of the rectangle is {@code 0}.\n\n

The width and height of the region are the same as\nthe dimensions of the rectangle. + p 7 width + p 8 height + p 5 u + p 6 v + p 3 x + p 4 y + p 1 pipeline + p 2 sprite + p 11 textureWidth + p 12 textureHeight + p 9 regionWidth + p 10 regionHeight + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;III)V method_51425 drawItem + p 6 seed + p 4 x + p 5 y + p 2 world + p 3 stack + p 1 entity + m (II)Z method_58135 scissorContains + p 2 y + p 1 x + m (Lnet/minecraft/class_327;Lnet/minecraft/class_2561;IIII)V method_60649 drawTextWithBackground + p 1 textRenderer + p 3 x + p 2 text + p 5 width + p 4 y + p 6 color + m ()I method_51421 getScaledWindowWidth + m (Ljava/util/List;II)V method_71274 drawTooltip + p 1 text + p 2 x + p 3 y + m (Lnet/minecraft/class_327;Lnet/minecraft/class_5481;III)V method_35719 drawCenteredTextWithShadow + p 1 textRenderer + p 2 text + p 5 color + p 3 centerX + p 4 y + m (Lnet/minecraft/class_327;Ljava/util/List;IILnet/minecraft/class_8000;Lnet/minecraft/class_2960;Z)V method_71273 drawTooltip + p 1 textRenderer + p 2 components + p 5 positioner + p 6 texture + p 3 x + p 4 y + p 7 focused + m (Lnet/minecraft/class_1799;II)V method_51445 drawItemWithoutEntity + p 3 y + p 2 x + p 1 stack + m (IIIIII)V method_25296 fillGradient + p 6 colorEnd + p 5 colorStart + p 2 startY + p 1 startX + p 4 endY + p 3 endX + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;IIIII)V method_48196 fill + p 2 x1 + p 1 pipeline + p 6 color + p 5 y2 + p 4 x2 + p 3 y1 + m (IIIII)V method_25294 fill + p 5 color + p 4 y2 + p 3 x2 + p 2 y1 + p 1 x1 + m (Lnet/minecraft/class_327;Ljava/util/List;IILnet/minecraft/class_2960;)V method_64037 drawTooltip + p 1 textRenderer + p 2 text + p 3 x + p 4 y + p 5 texture + m (Lnet/minecraft/class_557;Lnet/minecraft/class_2960;FFFIIII)V method_70852 addBookModel + p 4 open + p 3 scale + p 2 texture + p 1 bookModel + p 8 x2 + p 7 y1 + p 6 x1 + p 5 flip + p 9 y2 + m (Lnet/minecraft/class_327;Ljava/util/List;Lnet/minecraft/class_8000;IIZ)V method_51436 drawTooltip + p 5 y + p 6 focused + p 1 textRenderer + p 2 text + p 3 positioner + p 4 x + m (IIII)V method_51738 drawHorizontalLine + p 2 x2 + p 1 x1 + p 4 color + p 3 y + m (IIIIZ)V method_72238 drawSelection + p 3 x2 + p 4 y2 + p 1 x1 + p 2 y1 + p 5 invert + m (Lnet/minecraft/class_310;Lorg/joml/Matrix3x2fStack;Lnet/minecraft/class_11246;II)V + p 1 client + p 4 mouseX + p 5 mouseY + p 2 matrices + p 3 state + m (Lnet/minecraft/class_327;Lnet/minecraft/class_1799;II)V method_51446 drawItemTooltip + p 3 x + p 4 y + p 1 textRenderer + p 2 stack + m (IIII)V method_51742 drawVerticalLine + p 1 x + p 3 y2 + p 2 y1 + p 4 color + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lcom/mojang/blaze3d/textures/GpuTextureView;Lnet/minecraft/class_12137;IIIIFFFFI)V method_70847 drawTexturedQuad + p 6 x2 + p 7 y2 + p 8 u1 + p 9 v1 + p 2 texture + p 3 sampler + p 4 x1 + p 5 y1 + p 1 pipeline + p 10 u2 + p 11 v2 + p 12 color + m (Lnet/minecraft/class_327;Ljava/util/List;IILnet/minecraft/class_8000;Lnet/minecraft/class_2960;)V method_51435 drawTooltipImmediately + p 5 positioner + p 6 texture + p 1 textRenderer + p 2 components + p 3 x + p 4 y + m ()Lorg/joml/Matrix3x2fStack; method_51448 getMatrices + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_2960;IIIIFFFFI)V method_25295 drawTexturedQuad + p 8 u2 + p 7 u1 + p 6 y2 + p 5 y1 + p 11 color + p 10 v2 + p 9 v1 + p 4 x2 + p 3 x1 + p 2 sprite + p 1 pipeline + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_2960;IIIIF)V method_71501 drawGuiTexture + p 2 sprite + p 1 pipeline + p 6 height + p 5 width + p 4 y + p 3 x + p 7 alpha + m ()V method_73199 drawDeferredElements + m (Ljava/util/List;IIII)V method_70858 addProfilerChart + p 2 x1 + p 3 y1 + p 1 chartData + p 4 x2 + p 5 y2 + m (Lnet/minecraft/class_11875;)V method_74037 setCursor + p 1 cursor +c net/minecraft/class_332$class_8214 net/minecraft/client/gui/DrawContext$ScissorStack + f Ljava/util/Deque; field_43099 stack + m (II)Z method_58136 contains + p 1 x + p 2 y + m (Lnet/minecraft/class_8030;)Lnet/minecraft/class_8030; method_49700 push + p 1 rect + m ()Lnet/minecraft/class_8030; method_49699 pop + m ()Lnet/minecraft/class_8030; method_70863 peekLast +c net/minecraft/class_332$class_12228 net/minecraft/client/gui/DrawContext$HoverType + f Z field_63853 tooltip + f Z field_63854 cursor + f Lnet/minecraft/class_332$class_12228; field_63851 TOOLTIP_ONLY + f Lnet/minecraft/class_332$class_12228; field_63850 NONE + f Lnet/minecraft/class_332$class_12228; field_63852 TOOLTIP_AND_CURSOR + m (Z)Lnet/minecraft/class_332$class_12228; method_75790 fromTooltip + p 0 tooltip + m (Ljava/lang/String;IZZ)V + p 4 cursor + p 3 tooltip +c net/minecraft/class_332$class_12229 net/minecraft/client/gui/DrawContext$TextConsumerImpl + f Lnet/minecraft/class_12225$class_12227; field_63857 transformation + f Lnet/minecraft/class_332$class_12228; field_63858 hoverType + f Ljava/util/function/Consumer; field_63859 styleCallback + m (Ljava/lang/Object;)V accept accept + p 1 style + m (Lnet/minecraft/class_332;Lnet/minecraft/class_12225$class_12227;Lnet/minecraft/class_332$class_12228;Ljava/util/function/Consumer;)V + p 2 transformation + p 3 hoverType + p 4 styleCallback + m (Lnet/minecraft/class_2583;)V method_75791 accept +c net/minecraft/class_9634 net/minecraft/util/collection/ListDeque + m ()Lnet/minecraft/class_9634; method_59513 reversed + m (Ljava/lang/Object;)V addFirst addFirst + p 1 value + m (Ljava/lang/Object;)V addLast addLast + p 1 value +c net/minecraft/class_330 net/minecraft/client/render/MapRenderer + f I field_32174 DEFAULT_IMAGE_HEIGHT + f Lnet/minecraft/class_1059; field_50036 decorationsAtlasManager + f Lnet/minecraft/class_10093; field_2043 textureManager + f I field_32173 DEFAULT_IMAGE_WIDTH + m (Lnet/minecraft/class_20;)Lnet/minecraft/class_10090$class_10091; method_62229 createDecoration + p 1 decoration + m (FLnet/minecraft/class_1058;ILnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_72918 method_72918 + p 3 matrix + p 4 vertexConsumer + m (Lnet/minecraft/class_9209;Lnet/minecraft/class_22;Lnet/minecraft/class_10090;)V method_62230 update + p 1 mapId + p 2 mapState + p 3 renderState + m (ILnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V method_72919 method_72919 + p 1 matrix + p 2 vertexConsumer + m (Lnet/minecraft/class_10090;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ZI)V method_1773 draw + p 1 state + p 4 renderDecorations + p 5 light + p 2 matrices + p 3 queue + m (Lnet/minecraft/class_11697;Lnet/minecraft/class_10093;)V + p 2 textureManager + p 1 decorationsAtlasManager +c net/minecraft/class_12443 net/minecraft/unused/packageinfo/PackageInfo12443 +c net/minecraft/class_12442 net/minecraft/unused/packageinfo/PackageInfo12442 +c net/minecraft/class_12441 net/minecraft/unused/packageinfo/PackageInfo12441 +c net/minecraft/class_12440 net/minecraft/unused/packageinfo/PackageInfo12440 +c net/minecraft/class_12447 net/minecraft/unused/packageinfo/PackageInfo12447 +c net/minecraft/class_12446 net/minecraft/unused/packageinfo/PackageInfo12446 +c net/minecraft/class_12445 net/minecraft/unused/packageinfo/PackageInfo12445 +c net/minecraft/class_12444 net/minecraft/unused/packageinfo/PackageInfo12444 +c net/minecraft/class_12449 net/minecraft/unused/packageinfo/PackageInfo12449 +c net/minecraft/class_12448 net/minecraft/unused/packageinfo/PackageInfo12448 +c net/minecraft/class_347 net/minecraft/client/gui/widget/LockButtonWidget + f Z field_2131 locked + m (IILnet/minecraft/class_4185$class_4241;)V + p 3 action + p 1 x + p 2 y + m (Z)V method_1895 setLocked + p 1 locked + m ()Z method_1896 isLocked +c net/minecraft/class_347$class_348 net/minecraft/client/gui/widget/LockButtonWidget$Icon + f Lnet/minecraft/class_2960; field_45362 texture + f Lnet/minecraft/class_347$class_348; field_2140 UNLOCKED_DISABLED + f Lnet/minecraft/class_347$class_348; field_2132 UNLOCKED + f Lnet/minecraft/class_347$class_348; field_2133 UNLOCKED_HOVER + f Lnet/minecraft/class_347$class_348; field_2137 LOCKED + f Lnet/minecraft/class_347$class_348; field_2138 LOCKED_HOVER + f Lnet/minecraft/class_347$class_348; field_2139 LOCKED_DISABLED + m (Ljava/lang/String;ILnet/minecraft/class_2960;)V + p 3 texture +c net/minecraft/class_345 net/minecraft/client/gui/hud/ClientBossBar + f F field_2129 healthLatest + f J field_32204 HEALTH_CHANGE_ANIMATION_MS + f J field_2128 timeHealthSet + m (Ljava/util/UUID;Lnet/minecraft/class_2561;FLnet/minecraft/class_1259$class_1260;Lnet/minecraft/class_1259$class_1261;ZZZ)V + p 1 uuid + p 2 name + p 3 percent + p 8 thickenFog + p 4 color + p 5 style + p 6 darkenSky + p 7 dragonMusic +c net/minecraft/class_344 net/minecraft/client/gui/widget/TexturedButtonWidget + f Lnet/minecraft/class_8666; field_45356 textures + m (IIIILnet/minecraft/class_8666;Lnet/minecraft/class_4185$class_4241;)V + p 1 x + p 3 width + p 2 y + p 5 textures + p 4 height + p 6 pressAction + m (IILnet/minecraft/class_8666;Lnet/minecraft/class_4185$class_4241;Lnet/minecraft/class_2561;)V + p 5 text + p 4 pressAction + p 3 textures + p 2 height + p 1 width + m (IIIILnet/minecraft/class_8666;Lnet/minecraft/class_4185$class_4241;Lnet/minecraft/class_2561;)V + p 1 x + p 3 width + p 2 y + p 5 textures + p 4 height + p 7 text + p 6 pressAction +c net/minecraft/class_342 net/minecraft/client/gui/widget/TextFieldWidget + f J field_45352 lastSwitchFocusTime + f I field_32196 DEFAULT_EDITABLE_COLOR + f Lnet/minecraft/class_2561; field_41100 placeholder + f I field_60436 textY + f Z field_2095 drawsBackground + f I field_2101 selectionEnd + f Z field_2094 editable + f I field_60435 textX + f I field_2108 maxLength + f Z field_63506 invertSelectionBackground + f Lnet/minecraft/class_327; field_2105 textRenderer + f I field_2100 editableColor + f Ljava/lang/String; field_32199 HORIZONTAL_CURSOR + f Z field_60438 textShadow + f Ljava/lang/String; field_2106 suggestion + f Lnet/minecraft/class_2583; field_62465 PLACEHOLDER_STYLE + f I field_2103 firstCharacterIndex + c The index of the leftmost character that is rendered on a screen. + f Ljava/util/List; field_62008 formatters + f I field_2098 uneditableColor + f Ljava/lang/String; field_2092 text + f Ljava/util/function/Predicate; field_2104 textPredicate + f Z field_60437 centered + f Z field_2096 focusUnlocked + f Lnet/minecraft/class_2583; field_62466 SEARCH_STYLE + f Lnet/minecraft/class_8666; field_45914 TEXTURES + f I field_2102 selectionStart + f Ljava/util/function/Consumer; field_2088 changedListener + m ()Z method_1885 isVisible + m (Lnet/minecraft/class_327;IIIILnet/minecraft/class_342;Lnet/minecraft/class_2561;)V + p 7 text + p 5 height + p 6 copyFrom + p 3 y + p 4 width + p 1 textRenderer + p 2 x + m ()Z method_20316 isEditable + m (Ljava/lang/String;)V method_1852 setText + p 1 text + m ()I method_1881 getCursor + m (I)V method_1878 eraseCharacters + p 1 characterOffset + m (IZ)V method_16873 erase + p 1 offset + p 2 words + m ()Ljava/lang/String; method_1866 getSelectedText + m (I)V method_52719 updateFirstCharacterIndex + p 1 cursor + m (Lnet/minecraft/class_327;IILnet/minecraft/class_2561;)V + p 4 text + p 1 textRenderer + p 3 height + p 2 width + m (II)I method_1869 getWordSkipPosition + p 2 cursorPosition + p 1 wordOffset + m (I)V method_55506 eraseCharactersTo + p 1 position + m (I)I method_27537 getCursorPosWithOffset + p 1 offset + m (Z)V method_71502 setCentered + p 1 centered + m (Z)V method_1888 setEditable + p 1 editable + m (Z)V method_1856 setFocusUnlocked + p 1 focusUnlocked + m (Lnet/minecraft/class_327;IIIILnet/minecraft/class_2561;)V + p 3 y + p 2 x + p 1 textRenderer + p 6 text + p 5 height + p 4 width + m (Ljava/util/function/Consumer;)V method_1863 setChangedListener + p 1 changedListener + m (I)V method_1880 setMaxLength + p 1 maxLength + m (I)V method_1860 setUneditableColor + p 1 uneditableColor + m ()Z method_20315 isActive + m (I)V method_1884 setSelectionEnd + p 1 index + m ()I method_1861 getMaxLength + m (I)V method_1877 eraseWords + p 1 wordOffset + m (IZ)V method_1883 setCursor + p 1 cursor + p 2 select + m (I)I method_1853 getWordSkipPosition + p 1 wordOffset + m (IZ)V method_1855 moveCursor + p 2 shiftKeyPressed + p 1 offset + m (Z)V method_71503 setTextShadow + p 1 textShadow + m (IIZ)I method_1864 getWordSkipPosition + p 1 wordOffset + p 3 skipOverSpaces + p 2 cursorPosition + m (Z)V method_1872 setCursorToEnd + p 1 shiftKeyPressed + m (I)I method_1889 getCharacterX + p 1 index + m ()Z method_1851 drawsBackground + m ()V method_71504 updateTextPosition + m (Lnet/minecraft/class_11909;)I method_74215 calculateCursorPos + p 1 click + m (Z)V method_75351 setInvertSelectionBackground + p 1 invertSelectionBackground + m (Lnet/minecraft/class_342$class_11734;)V method_73210 addFormatter + p 1 formatter + m (Ljava/lang/String;)V method_1874 onChanged + p 1 newText + m (I)V method_1875 setSelectionStart + p 1 cursor + m (Ljava/lang/String;)V method_1887 setSuggestion + p 1 suggestion + m (Ljava/lang/String;)V method_1867 write + p 1 text + m (I)V method_1868 setEditableColor + p 1 editableColor + m (Ljava/util/function/Predicate;)V method_1890 setTextPredicate + p 1 textPredicate + m (Lnet/minecraft/class_2561;)V method_47404 setPlaceholder + p 1 placeholder + m ()Z method_71505 isCentered + m (Ljava/lang/String;I)Lnet/minecraft/class_5481; method_73211 format + p 2 firstCharacterIndex + p 1 string + m (Z)V method_1858 setDrawsBackground + p 1 drawsBackground + m ()Ljava/lang/String; method_1882 getText + m (Lnet/minecraft/class_11909;)V method_74216 selectWord + p 1 click + m ()I method_1859 getInnerWidth + m (Z)V method_1870 setCursorToStart + p 1 shiftKeyPressed + m (Z)V method_1862 setVisible + p 1 visible +c net/minecraft/class_342$class_11734 net/minecraft/client/gui/widget/TextFieldWidget$Formatter + m (Ljava/lang/String;I)Lnet/minecraft/class_5481; format format + p 1 string + p 2 firstCharacterIndex +c net/minecraft/class_341 net/minecraft/client/util/ChatMessages + f Lnet/minecraft/class_5481; field_25263 SPACES + m (Lnet/minecraft/class_5222;Lnet/minecraft/class_2583;Ljava/lang/String;)Ljava/util/Optional; method_27536 method_27536 + p 2 message + p 1 style + m (Ljava/util/List;Lnet/minecraft/class_5348;Ljava/lang/Boolean;)V method_30886 method_30886 + p 2 lastLineWrapped + p 1 text + m (Ljava/lang/String;)Ljava/lang/String; method_1849 getRenderedChatMessage + p 0 message + m (Lnet/minecraft/class_5348;ILnet/minecraft/class_327;)Ljava/util/List; method_1850 breakRenderedChatMessageLines + p 0 message + p 2 textRenderer + p 1 width +c net/minecraft/class_340 net/minecraft/client/gui/hud/DebugHud + f Lnet/minecraft/class_9931; field_52772 pieChart + f Lnet/minecraft/class_9191; field_45992 frameNanosLog + f Lnet/minecraft/class_9191; field_45994 pingLog + f F field_59832 DEBUG_CROSSHAIR_SCALE + f Lnet/minecraft/class_8759; field_45913 tickChart + f Ljava/util/concurrent/CompletableFuture; field_2080 chunkFuture + f Lnet/minecraft/class_8756; field_45912 packetSizeChart + f Lnet/minecraft/class_1923; field_2085 pos + f Z field_45991 packetSizeAndPingChartsVisible + f Ljava/util/Map; field_48931 receivedDebugSamples + f Lnet/minecraft/class_2818; field_2084 chunk + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_56578 debugCrosshairBuffer + f Lnet/minecraft/class_9191; field_45993 tickNanosLog + f Lnet/minecraft/class_9191; field_45995 packetSizeLog + f Z field_45989 renderingChartVisible + f Lnet/minecraft/class_327; field_2081 textRenderer + f Lnet/minecraft/class_8758; field_45911 pingChart + f Lnet/minecraft/class_310; field_2079 client + f Lnet/minecraft/class_8757; field_45910 renderingChart + f Z field_45990 renderingAndTickChartsVisible + f Lcom/mojang/blaze3d/systems/RenderSystem$class_5590; field_57921 debugCrosshairIndexBuffer + m (Lnet/minecraft/class_332;Ljava/util/List;Z)V method_51745 drawText + p 3 left + p 2 text + p 1 context + m ()Lnet/minecraft/class_9191; method_53544 getPacketSizeLog + m ()Lnet/minecraft/class_9191; method_56577 getTickNanosLog + m (Lnet/minecraft/class_332;)V method_1846 render + p 1 context + m ([JLnet/minecraft/class_9192;)V method_56828 set + p 2 type + p 1 values + m (Lnet/minecraft/class_4184;)V method_67545 renderDebugCrosshair + p 1 camera + m (Lnet/minecraft/class_310;)V + p 1 client + m ()Z method_53538 shouldShowPacketSizeAndPingCharts + m ()Z method_53536 shouldShowDebugHud + m ()Lnet/minecraft/class_2818; method_1834 getChunk + m ()V method_53542 toggleRenderingChart + m ()Lnet/minecraft/class_2818; method_1836 getClientChunk + m ()V method_53540 togglePacketSizeAndPingCharts + m ()Lnet/minecraft/class_3218; method_20603 getServerWorld + m ()Z method_56829 shouldRenderTickCharts + m ()Lnet/minecraft/class_1937; method_1840 getWorld + m (J)V method_53534 pushToFrameLog + p 1 value + m ()Lnet/minecraft/class_9191; method_53543 getPingLog + m ()Lnet/minecraft/class_9931; method_61981 getPieChart + m ()V method_1842 resetChunk + m ()V method_53545 clear + m ()Z method_53537 shouldShowRenderingChart + m ()V method_53541 toggleRenderingAndTickCharts + m (Lnet/minecraft/class_9259;)Lnet/minecraft/class_2818; method_20541 method_20541 + p 0 chunk + m (Lnet/minecraft/class_1132;)Ljava/util/Optional; method_1841 method_1841 + p 1 server +c net/minecraft/class_340$1 net/minecraft/client/gui/hud/DebugHud$1 + m (Lnet/minecraft/class_2960;)Ljava/util/Collection; method_72742 method_72742 + p 0 sectionLines + m (Lnet/minecraft/class_2960;)Ljava/util/Collection; method_72746 method_72746 + p 0 sectionLines +c net/minecraft/class_357 net/minecraft/client/gui/widget/SliderWidget + f D field_22753 value + f Lnet/minecraft/class_2960; field_45343 HANDLE_HIGHLIGHTED_TEXTURE + f Lnet/minecraft/class_2960; field_45342 HANDLE_TEXTURE + f Lnet/minecraft/class_2960; field_45341 HIGHLIGHTED_TEXTURE + f Lnet/minecraft/class_2960; field_45340 TEXTURE + f Z field_62464 dragging + f Z field_41796 sliderFocused + m ()V method_25344 applyValue + m ()V method_25346 updateMessage + m ()Lnet/minecraft/class_2960; method_52717 getHandleTexture + m ()Lnet/minecraft/class_2960; method_52716 getTexture + m (D)V method_25347 setValue + p 1 value + c the new value; will be clamped to {@code [0, 1]} + m (IIIILnet/minecraft/class_2561;D)V + p 6 value + p 1 x + p 4 height + p 5 text + p 2 y + p 3 width + m (Lnet/minecraft/class_11909;)V method_25345 setValueFromMouse + c Sets the value from mouse position.\n\n

The value will be calculated from the position and the width of this\nslider.\n\n@see #setValue + p 1 click +c net/minecraft/class_355 net/minecraft/client/gui/hud/PlayerListHud + c Responsible for rendering the player list while the {@linkplain\nnet.minecraft.client.option.GameOptions#playerListKey player list\nkey} is pressed.\n\n

The current instance used by the client can be obtained by {@code\nMinecraftClient.getInstance().inGameHud.getPlayerListHud()}. + f Lnet/minecraft/class_2960; field_45373 FULL_HEART_BLINKING_TEXTURE + f Lnet/minecraft/class_310; field_2155 client + f Lnet/minecraft/class_2960; field_45371 CONTAINER_HEART_BLINKING_TEXTURE + f Lnet/minecraft/class_2960; field_45378 HALF_HEART_TEXTURE + f Lnet/minecraft/class_2960; field_45366 PING_1_ICON_TEXTURE + f Lnet/minecraft/class_2960; field_45376 FULL_HEART_TEXTURE + f Lnet/minecraft/class_2561; field_2154 footer + f Lnet/minecraft/class_329; field_2157 inGameHud + f Lnet/minecraft/class_2960; field_45368 PING_3_ICON_TEXTURE + f Ljava/util/Map; field_40393 hearts + f Z field_2158 visible + f Lnet/minecraft/class_2960; field_45370 PING_5_ICON_TEXTURE + f Lnet/minecraft/class_2960; field_45374 HALF_HEART_BLINKING_TEXTURE + f Lnet/minecraft/class_2960; field_45372 CONTAINER_HEART_TEXTURE + f Ljava/util/Comparator; field_2156 ENTRY_ORDERING + f Lnet/minecraft/class_2960; field_45367 PING_2_ICON_TEXTURE + f Lnet/minecraft/class_2960; field_45377 ABSORBING_HALF_HEART_BLINKING_TEXTURE + f Lnet/minecraft/class_2561; field_2153 header + f Lnet/minecraft/class_2960; field_45365 PING_UNKNOWN_ICON_TEXTURE + f Lnet/minecraft/class_2960; field_45375 ABSORBING_FULL_HEART_BLINKING_TEXTURE + f Lnet/minecraft/class_2960; field_45369 PING_4_ICON_TEXTURE + f I field_32205 MAX_ROWS + m (Lnet/minecraft/class_640;)Lnet/minecraft/class_2561; method_1918 getPlayerName + c {@return the player name rendered by this HUD} + p 1 entry + m (Lnet/minecraft/class_332;ILnet/minecraft/class_269;Lnet/minecraft/class_266;)V method_1919 render + p 2 scaledWindowWidth + p 3 scoreboard + p 4 objective + p 1 context + m (Lnet/minecraft/class_640;Lnet/minecraft/class_5250;)Lnet/minecraft/class_2561; method_27538 applyGameModeFormatting + c {@linkplain net.minecraft.util.Formatting#ITALIC Italicizes} the given text if\nthe given player is in {@linkplain net.minecraft.world.GameMode#SPECTATOR spectator mode}. + p 1 entry + p 2 name + m (IIILjava/util/UUID;Lnet/minecraft/class_332;I)V method_45590 renderHearts + p 6 score + p 5 context + p 4 uuid + p 3 right + p 2 left + p 1 y + m (Lnet/minecraft/class_640;)Ljava/lang/String; method_45595 method_45595 + p 0 entry + m (Lnet/minecraft/class_640;)I method_61982 method_61982 + p 0 entry + m (Lnet/minecraft/class_2561;)V method_1925 setHeader + p 1 header + m (Lnet/minecraft/class_310;Lnet/minecraft/class_329;)V + p 1 client + p 2 inGameHud + m (Lnet/minecraft/class_640;)Ljava/lang/String; method_46511 method_46511 + p 0 entry + m (Z)V method_1921 setVisible + p 1 visible + m ()V method_1920 clear + m (Ljava/util/Set;Ljava/util/UUID;)Z method_45593 method_45593 + p 1 uuid + m (ILjava/util/UUID;)Lnet/minecraft/class_355$class_7732; method_45591 method_45591 + p 1 uuid2 + m ()Ljava/util/List; method_48213 collectPlayerEntries + m (Lnet/minecraft/class_266;ILnet/minecraft/class_355$class_9018;IILjava/util/UUID;Lnet/minecraft/class_332;)V method_1922 renderScoreboardObjective + p 7 context + p 1 objective + p 2 y + p 5 right + p 6 uuid + p 3 scoreDisplayEntry + p 4 left + m (Lnet/minecraft/class_332;IIILnet/minecraft/class_640;)V method_1923 renderLatencyIcon + p 4 y + p 5 entry + p 1 context + p 2 width + p 3 x + m (Lnet/minecraft/class_640;)Ljava/util/UUID; method_45594 method_45594 + p 0 playerEntry + m (Lnet/minecraft/class_2561;)V method_1924 setFooter + p 1 footer + m (Lnet/minecraft/class_640;)I method_45592 method_45592 + p 0 entry +c net/minecraft/class_355$class_7732 net/minecraft/client/gui/hud/PlayerListHud$Heart + f J field_40394 COOLDOWN_TICKS + f J field_40396 SCORE_INCREASE_HIGHLIGHT_TICKS + f J field_40395 SCORE_DECREASE_HIGHLIGHT_TICKS + f I field_40397 score + f J field_40400 highlightEndTick + f I field_40398 lastScore + f J field_40399 lastScoreChangeTick + m (J)Z method_45598 useHighlighted + p 1 currentTick + m (I)V + p 1 score + m ()I method_45596 getLastScore + m (IJ)V method_45597 tick + p 2 currentTick + p 1 score +c net/minecraft/class_355$class_9018 net/minecraft/client/gui/hud/PlayerListHud$ScoreDisplayEntry + f Lnet/minecraft/class_2561; comp_2134 name + f Lnet/minecraft/class_2561; comp_2136 formattedScore + f I comp_2135 score + f I comp_2137 scoreWidth + m ()I comp_2135 score + m ()I comp_2137 scoreWidth + m ()Lnet/minecraft/class_2561; comp_2134 name + m ()Lnet/minecraft/class_2561; comp_2136 formattedScore + m (Lnet/minecraft/class_2561;ILnet/minecraft/class_2561;I)V + p 1 name + p 2 score + p 3 formattedScore + p 4 scoreWidth +c net/minecraft/class_359 net/minecraft/client/gui/hud/SubtitlesHud + f Lnet/minecraft/class_310; field_2182 client + f Ljava/util/List; field_47672 audibleEntries + f Ljava/util/List; field_2183 entries + f Z field_2184 enabled + f J field_32214 REMOVE_DELAY + m (Lnet/minecraft/class_310;)V + p 1 client + m (Lnet/minecraft/class_332;)V method_1957 render + p 1 context +c net/minecraft/class_359$class_360 net/minecraft/client/gui/hud/SubtitlesHud$SubtitleEntry + f Ljava/util/List; field_51913 sounds + f F field_47673 range + f Lnet/minecraft/class_2561; field_2188 text + m (Lnet/minecraft/class_243;Lnet/minecraft/class_359$class_9772;)Z method_60573 method_60573 + p 1 sound + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_359$class_9772; method_60572 getNearestSound + p 1 pos + m (Lnet/minecraft/class_243;)V method_1958 reset + p 1 pos + m (D)V method_60570 removeExpired + p 1 expiry + m (Lnet/minecraft/class_2561;FLnet/minecraft/class_243;)V + p 2 range + p 1 text + p 3 pos + m (JDLnet/minecraft/class_359$class_9772;)Z method_60571 method_60571 + p 4 sound + m (Lnet/minecraft/class_243;Lnet/minecraft/class_359$class_9772;)D method_60575 method_60575 + p 1 soundPos + m (Lnet/minecraft/class_243;)Z method_55589 canHearFrom + p 1 pos + m ()Lnet/minecraft/class_2561; method_1960 getText + m ()Z method_60574 hasSounds +c net/minecraft/class_359$class_9772 net/minecraft/client/gui/hud/SubtitlesHud$SoundEntry + f J comp_2810 time + f Lnet/minecraft/class_243; comp_2809 location + m ()Lnet/minecraft/class_243; comp_2809 location + m ()J comp_2810 time + m (Lnet/minecraft/class_243;J)V + p 1 location + p 2 time +c net/minecraft/class_350 net/minecraft/client/gui/widget/EntryListWidget + f Lnet/minecraft/class_350$class_351; field_33780 hoveredEntry + f Z field_22744 centerListVertically + f Lnet/minecraft/class_2960; field_49478 MENU_LIST_BACKGROUND_TEXTURE + f I field_62109 itemHeight + f Lnet/minecraft/class_350$class_351; field_22751 selected + f Ljava/util/List; field_22739 children + f Lnet/minecraft/class_310; field_22740 client + f Lnet/minecraft/class_2960; field_49892 INWORLD_MENU_LIST_BACKGROUND_TEXTURE + f I field_62110 SPACER_HEIGHT + m (Lnet/minecraft/class_332;)V method_57713 drawHeaderAndFooterSeparators + p 1 context + m (Lnet/minecraft/class_350$class_351;)V method_25330 removeEntry + p 1 entry + m (Lnet/minecraft/class_332;Lnet/minecraft/class_350$class_351;I)V method_44398 drawSelectionHighlight + p 2 entry + p 3 color + p 1 context + m (Lnet/minecraft/class_8028;Ljava/util/function/Predicate;)Lnet/minecraft/class_350$class_351; method_48198 getNeighboringEntry + p 1 direction + p 2 predicate + m ()I method_73378 getYOfNextEntry + m (Lnet/minecraft/class_332;IIFLnet/minecraft/class_350$class_351;)V method_44397 renderEntry + p 1 context + p 2 mouseX + p 3 mouseY + p 4 delta + p 5 entry + m (Lnet/minecraft/class_350$class_351;)V method_44650 removeEntryWithoutScrolling + p 1 entry + m (Lnet/minecraft/class_350$class_351;)V method_44399 addEntryToTop + p 1 entry + m (Lnet/minecraft/class_8028;Ljava/util/function/Predicate;Lnet/minecraft/class_350$class_351;)Lnet/minecraft/class_350$class_351; method_48199 getNeighboringEntry + p 2 predicate + p 1 direction + p 3 selected + m ()V method_25339 clearEntries + m (Lnet/minecraft/class_350$class_351;I)I method_73370 addEntry + p 2 entryHeight + p 1 entry + m ()Lnet/minecraft/class_350$class_351; method_37019 getHoveredEntry + m (II)V method_73368 swapEntriesOnPositions + p 1 pos1 + p 2 pos2 + m (Lnet/minecraft/class_332;)V method_49603 enableScissor + p 1 context + m (I)I method_25319 getRowBottom + p 1 index + m (Lnet/minecraft/class_350$class_351;Lnet/minecraft/class_350$class_351;)Z method_73371 method_73371 + p 1 entry + m (Lnet/minecraft/class_350$class_351;)V method_25313 setSelected + p 1 entry + m (Lnet/minecraft/class_350$class_351;)Z method_48201 method_48201 + p 0 entry + m ()Lnet/minecraft/class_350$class_351; method_25334 getSelectedOrNull + c {@return the selected entry of this entry list, or {@code null} if there is none} + m (Lnet/minecraft/class_350$class_351;I)V method_73375 addEntryToTop + p 2 entryHeight + p 1 entry + m ()I method_25342 getRowLeft + m (DD)Lnet/minecraft/class_350$class_351; method_25308 getEntryAtPosition + p 1 x + p 3 y + m ()I method_25322 getRowWidth + m (Lnet/minecraft/class_350$class_351;)V method_73377 scrollTo + p 1 entry + m (Lnet/minecraft/class_332;)V method_57715 drawMenuListBackground + p 1 context + m (Lnet/minecraft/class_8028;)Lnet/minecraft/class_350$class_351; method_48197 getNeighboringEntry + p 1 direction + m (ILnet/minecraft/class_8132;)V method_57712 position + p 1 width + p 2 layout + m (Ljava/util/Collection;)V method_25314 replaceEntries + p 1 collection + m (Lnet/minecraft/class_350$class_351;)V method_29621 setEntryParentList + p 1 entry + m (Lnet/minecraft/class_6382;Lnet/minecraft/class_350$class_351;)V method_37017 appendNarrations + p 1 builder + p 2 entry + m (Lnet/minecraft/class_310;IIII)V + p 5 itemHeight + p 3 height + p 4 y + p 1 client + p 2 width + m ()I method_73376 getYOfFirstEntry + m (Lnet/minecraft/class_350$class_351;)V method_25324 centerScrollOn + p 1 entry + m (IIII)V method_73369 position + p 4 y + p 3 x + p 2 height + p 1 width + m (Lnet/minecraft/class_350$class_351;)I method_25321 addEntry + p 1 entry + m (Ljava/util/List;)V method_73373 removeEntries + p 1 entries + m (Lnet/minecraft/class_332;IIF)V method_25311 renderList + p 1 context + p 2 mouseX + p 3 mouseY + p 4 deltaTicks + m (I)V method_25309 scroll + p 1 amount + m (Lnet/minecraft/class_350$class_351;)V method_73374 clearEntriesExcept + p 1 entryToKeep + m (I)I method_25337 getRowTop + p 1 index + m ()V method_73367 recalculateAllChildrenPositions + m (Ljava/util/Comparator;)V method_73372 sort + p 1 comparator + m (III)V method_57714 position + p 3 y + p 2 height + p 1 width + m ()Lnet/minecraft/class_350$class_351; method_25336 getFocused + m ()I method_25340 getEntryCount + m ()I method_31383 getRowRight + m ()Z method_73379 isEntrySelectionAllowed +c net/minecraft/class_350$class_352 net/minecraft/client/gui/widget/EntryListWidget$Entries + f Ljava/util/List; field_2146 entries + m (I)Ljava/lang/Object; remove remove + p 1 index + m (I)Ljava/lang/Object; get get + p 1 index + m (ILnet/minecraft/class_350$class_351;)Lnet/minecraft/class_350$class_351; method_1909 set + m (ILnet/minecraft/class_350$class_351;)V method_1910 add + m (ILjava/lang/Object;)Ljava/lang/Object; set set + p 2 entry + p 1 index + m (I)Lnet/minecraft/class_350$class_351; method_1911 remove + m (ILjava/lang/Object;)V add add + p 1 index + p 2 entry + m (I)Lnet/minecraft/class_350$class_351; method_1912 get +c net/minecraft/class_350$class_351 net/minecraft/client/gui/widget/EntryListWidget$Entry + f I field_62113 width + f I field_62111 x + f I field_62115 PADDING + f Lnet/minecraft/class_350; field_22752 parentList + f I field_62114 height + f I field_62112 y + m ()I method_25368 getWidth + m ()I method_46427 getY + m ()I method_25364 getHeight + m (Z)V method_25365 setFocused + m (I)V method_46419 setY + m ()I method_73388 getContentMiddleX + m (I)V method_46421 setX + m (DD)Z method_25405 isMouseOver + m (Lnet/minecraft/class_332;IIZF)V method_25343 render + c Renders an entry in a list. + p 3 mouseY + p 2 mouseX + p 1 context + p 5 deltaTicks + p 4 hovered + m ()I method_73380 getContentX + m ()I method_73382 getContentY + m ()I method_73384 getContentHeight + m ()I method_73386 getContentBottomEnd + m ()Lnet/minecraft/class_8030; method_48202 getNavigationFocus + m ()I method_46426 getX + m (I)V method_73381 setWidth + p 1 width + m (I)V method_73383 setHeight + p 1 height + m ()Z method_25370 isFocused + m ()I method_73387 getContentWidth + m ()I method_73389 getContentRightEnd + m (Ljava/util/function/Consumer;)V method_48206 forEachChild + m ()I method_73385 getContentMiddleY +c net/minecraft/class_353 net/minecraft/client/gui/widget/OptionListWidget + f Lnet/minecraft/class_4667; field_49483 optionsScreen + m ([Lnet/minecraft/class_7172;)V method_20408 addAll + p 1 options + m (Lnet/minecraft/class_339;Lnet/minecraft/class_7172;Lnet/minecraft/class_339;)V method_76258 addWidgetEntry + p 3 secondWidget + p 1 firstWidget + p 2 option + m (Lnet/minecraft/class_2561;)V method_75365 addHeader + p 1 title + m (Lnet/minecraft/class_310;ILnet/minecraft/class_4667;)V + p 2 width + p 3 optionsScreen + p 1 client + m (Ljava/util/List;)V method_58227 addAll + p 1 widgets + m ()V method_59869 applyAllPendingValues + m (Lnet/minecraft/class_7172;)V method_75364 update + m (Lnet/minecraft/class_7172;)V method_20406 addSingleOptionEntry + p 1 option + m (Lnet/minecraft/class_339;Lnet/minecraft/class_339;)V method_20407 addWidgetEntry + p 1 firstWidget + p 2 secondWidget + m (Lnet/minecraft/class_7172;)Lnet/minecraft/class_339; method_31046 getWidgetFor + p 1 option +c net/minecraft/class_353$class_354 net/minecraft/client/gui/widget/OptionListWidget$WidgetEntry + f Lnet/minecraft/class_437; field_49485 screen + f Ljava/util/List; field_18214 widgets + f I field_49484 WIDGET_X_SPACING + m (Ljava/util/List;Lnet/minecraft/class_437;)V + p 1 widgets + p 2 screen + m (Lnet/minecraft/class_315;Lnet/minecraft/class_7172;Lnet/minecraft/class_7172;Lnet/minecraft/class_4667;)Lnet/minecraft/class_353$class_354; method_76260 create + p 0 options + p 1 firstOption + p 2 secondOption + p 3 screen + m (Lnet/minecraft/class_315;Lnet/minecraft/class_7172;Lnet/minecraft/class_437;)Lnet/minecraft/class_353$class_354; method_20409 create + p 1 option + p 0 options + p 2 screen + m (Lnet/minecraft/class_339;Lnet/minecraft/class_7172;Lnet/minecraft/class_339;Lnet/minecraft/class_437;)Lnet/minecraft/class_353$class_354; method_76261 create + p 1 option + p 0 firstWidget + p 3 screen + p 2 secondWidget + m (Lnet/minecraft/class_339;Lnet/minecraft/class_339;Lnet/minecraft/class_437;)Lnet/minecraft/class_353$class_354; method_20410 create + p 2 screen + p 0 firstWidget + p 1 secondWidget + m (Lnet/minecraft/class_7172;)Lnet/minecraft/class_339; method_76259 getWidgetFor + p 1 option +c net/minecraft/class_353$class_12292 net/minecraft/client/gui/widget/OptionListWidget$OptionAssociatedWidget + f Lnet/minecraft/class_339; comp_5179 widget + f Lnet/minecraft/class_7172; comp_5180 optionInstance + m (Lnet/minecraft/class_339;)V + p 1 widget + m ()Lnet/minecraft/class_339; comp_5179 widget + m ()Lnet/minecraft/class_7172; comp_5180 optionInstance + m (Lnet/minecraft/class_339;Lnet/minecraft/class_7172;)V + p 1 widget + p 2 optionInstance +c net/minecraft/class_353$class_12143 net/minecraft/client/gui/widget/OptionListWidget$Header + f I field_63515 yOffset + f Lnet/minecraft/class_437; field_63514 parent + f Lnet/minecraft/class_7842; field_63516 title + m (Lnet/minecraft/class_437;Lnet/minecraft/class_2561;I)V + p 3 yOffset + p 1 parent + p 2 title +c net/minecraft/class_353$class_12142 net/minecraft/client/gui/widget/OptionListWidget$Component +c net/minecraft/class_12461 net/minecraft/unused/packageinfo/PackageInfo12461 +c net/minecraft/class_12460 net/minecraft/unused/packageinfo/PackageInfo12460 +c net/minecraft/class_12465 net/minecraft/unused/packageinfo/PackageInfo12465 +c net/minecraft/class_12464 net/minecraft/unused/packageinfo/PackageInfo12464 +c net/minecraft/class_12463 net/minecraft/unused/packageinfo/PackageInfo12463 +c net/minecraft/class_12462 net/minecraft/unused/packageinfo/PackageInfo12462 +c net/minecraft/class_9027 net/minecraft/server/command/ServerPackCommand + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55482 method_55482 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55483 method_55483 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55484 method_55484 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55475 method_55475 + p 0 context + m (Lnet/minecraft/class_2596;Lnet/minecraft/class_2535;)V method_55481 method_55481 + p 1 connection + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_55474 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;Ljava/util/UUID;)I method_55478 executePop + p 0 source + p 1 uuid + m (Lnet/minecraft/class_2168;Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;)I method_55477 executePush + p 2 uuid + p 1 url + p 3 hash + p 0 source + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2596;)V method_55479 sendToAll + p 0 source + p 1 packet +c net/minecraft/class_9026 net/minecraft/unused/packageinfo/PackageInfo9026 +c net/minecraft/class_9025 net/minecraft/scoreboard/number/StyledNumberFormat + f Lnet/minecraft/class_9025; field_47568 YELLOW + f Lnet/minecraft/class_2583; comp_5122 style + f Lnet/minecraft/class_9023; field_47565 TYPE + f Lnet/minecraft/class_9025; field_47566 EMPTY + f Lnet/minecraft/class_9025; field_47567 RED + m (Lnet/minecraft/class_2583;)V + p 1 style + m ()Lnet/minecraft/class_2583; comp_5122 style +c net/minecraft/class_9025$1 net/minecraft/scoreboard/number/StyledNumberFormat$1 + f Lcom/mojang/serialization/MapCodec; field_47570 CODEC + f Lnet/minecraft/class_9139; field_48546 PACKET_CODEC +c net/minecraft/class_9024 net/minecraft/scoreboard/number/NumberFormatTypes + f Lcom/mojang/serialization/MapCodec; field_47563 REGISTRY_CODEC + f Lcom/mojang/serialization/Codec; field_47564 CODEC + f Lnet/minecraft/class_9139; field_48544 PACKET_CODEC + f Lnet/minecraft/class_9139; field_48545 OPTIONAL_PACKET_CODEC + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_9023; method_55466 registerAndGetDefault + p 0 registry +c net/minecraft/class_9023 net/minecraft/scoreboard/number/NumberFormatType + m ()Lcom/mojang/serialization/MapCodec; method_55458 getCodec + m ()Lnet/minecraft/class_9139; method_56360 getPacketCodec +c net/minecraft/class_9022 net/minecraft/scoreboard/number/NumberFormat + m ()Lnet/minecraft/class_9023; method_55456 getType + m (I)Lnet/minecraft/class_5250; method_55457 format + p 1 number +c net/minecraft/class_9021 net/minecraft/scoreboard/number/FixedNumberFormat + f Lnet/minecraft/class_2561; comp_5121 text + f Lnet/minecraft/class_9023; field_47560 TYPE + m ()Lnet/minecraft/class_2561; comp_5121 text + m (Lnet/minecraft/class_2561;)V + p 1 text +c net/minecraft/class_9021$1 net/minecraft/scoreboard/number/FixedNumberFormat$1 + f Lcom/mojang/serialization/MapCodec; field_47562 CODEC + f Lnet/minecraft/class_9139; field_48543 PACKET_CODEC +c net/minecraft/class_9020 net/minecraft/scoreboard/number/BlankNumberFormat + f Lnet/minecraft/class_9020; field_47557 INSTANCE + f Lnet/minecraft/class_9023; field_47558 TYPE +c net/minecraft/class_9020$1 net/minecraft/scoreboard/number/BlankNumberFormat$1 + f Lcom/mojang/serialization/MapCodec; field_47559 CODEC + f Lnet/minecraft/class_9139; field_48542 PACKET_CODEC +c net/minecraft/class_9028 net/minecraft/util/Downloader + f Lorg/slf4j/Logger; field_47572 LOGGER + f Ljava/nio/file/Path; field_47573 directory + f I field_47679 MAX_RETAINED_CACHE_FILES + f Lnet/minecraft/class_7935; field_47574 logWriter + f Lnet/minecraft/class_10176; field_47575 executor + m (Lnet/minecraft/class_9028$class_9029;Ljava/util/Map;)Lnet/minecraft/class_9028$class_9030; method_55488 download + p 1 config + p 2 entries + m (Lnet/minecraft/class_9028$class_9029;Lnet/minecraft/class_9028$class_9030;Ljava/util/UUID;Lnet/minecraft/class_9028$class_9031;)V method_55485 method_55485 + p 3 id + p 4 entry + m (Ljava/nio/file/Path;)Lcom/mojang/datafixers/util/Either; method_55487 getFileInfo + p 1 path + m (Ljava/nio/file/Path;)V + p 1 directory + m (Lnet/minecraft/class_9028$class_9029;Ljava/util/Map;)Ljava/util/concurrent/CompletableFuture; method_55486 downloadAsync + p 2 entries + p 1 config +c net/minecraft/class_9028$class_9033 net/minecraft/util/Downloader$LogEntry + f Lcom/mojang/serialization/Codec; field_47577 CODEC + f Ljava/util/Optional; comp_2152 hash + f Ljava/util/UUID; comp_2149 id + f Ljava/lang/String; comp_2150 url + f Lcom/mojang/datafixers/util/Either; comp_2153 errorOrFileInfo + f Ljava/time/Instant; comp_2151 time + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55491 method_55491 + p 0 instance + m ()Ljava/time/Instant; comp_2151 time + m ()Ljava/util/Optional; comp_2152 hash + m ()Ljava/lang/String; comp_2150 url + m ()Lcom/mojang/datafixers/util/Either; comp_2153 errorOrFileInfo + m ()Ljava/util/UUID; comp_2149 id + m (Ljava/util/UUID;Ljava/lang/String;Ljava/time/Instant;Ljava/util/Optional;Lcom/mojang/datafixers/util/Either;)V + p 1 id + p 2 url + p 3 time + p 4 hash + p 5 errorOrFileInfo +c net/minecraft/class_9028$class_9032 net/minecraft/util/Downloader$FileInfo + f Lcom/mojang/serialization/Codec; field_47576 CODEC + f Ljava/lang/String; comp_2147 name + f J comp_2148 size + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55490 method_55490 + p 0 instance + m ()Ljava/lang/String; comp_2147 name + m ()J comp_2148 size + m (Ljava/lang/String;J)V + p 1 name + p 2 size +c net/minecraft/class_9028$class_9031 net/minecraft/util/Downloader$DownloadEntry + f Ljava/net/URL; comp_2145 url + f Lcom/google/common/hash/HashCode; comp_2146 hash + m ()Lcom/google/common/hash/HashCode; comp_2146 hash + m ()Ljava/net/URL; comp_2145 url + m (Ljava/net/URL;Lcom/google/common/hash/HashCode;)V + p 1 url + p 2 hash +c net/minecraft/class_9028$class_9030 net/minecraft/util/Downloader$DownloadResult + f Ljava/util/Map; comp_2143 downloaded + f Ljava/util/Set; comp_2144 failed + m ()Ljava/util/Set; comp_2144 failed + m ()Ljava/util/Map; comp_2143 downloaded + m (Ljava/util/Map;Ljava/util/Set;)V + p 1 downloaded + p 2 failed +c net/minecraft/class_9028$class_9029 net/minecraft/util/Downloader$Config + f Lnet/minecraft/class_3521$class_9034; comp_2142 listener + f Ljava/util/Map; comp_2140 headers + f Lcom/google/common/hash/HashFunction; comp_2138 hashFunction + f Ljava/net/Proxy; comp_2141 proxy + f I comp_2139 maxSize + m ()I comp_2139 maxSize + m ()Ljava/net/Proxy; comp_2141 proxy + m ()Lnet/minecraft/class_3521$class_9034; comp_2142 listener + m ()Lcom/google/common/hash/HashFunction; comp_2138 hashFunction + m ()Ljava/util/Map; comp_2140 headers + m (Lcom/google/common/hash/HashFunction;ILjava/util/Map;Ljava/net/Proxy;Lnet/minecraft/class_3521$class_9034;)V + p 1 hashFunction + p 2 maxSize + p 3 headers + p 4 proxy + p 5 listener +c net/minecraft/class_11442 net/minecraft/dialog/input/SingleOptionInputControl + f Lcom/mojang/serialization/MapCodec; field_60647 CODEC + f Ljava/util/List; comp_4345 entries + f Z comp_4347 labelVisible + f I comp_4344 width + f Lnet/minecraft/class_2561; comp_4346 label + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71730 method_71730 + p 0 instance + m (Lnet/minecraft/class_11442;)Lcom/mojang/serialization/DataResult; method_71729 method_71729 + p 0 inputControl + m ()Ljava/util/Optional; method_71731 getInitialEntry + m ()Ljava/util/List; comp_4345 entries + m ()Lnet/minecraft/class_2561; comp_4346 label + m ()Z comp_4347 labelVisible + m ()I comp_4344 width + m (ILjava/util/List;Lnet/minecraft/class_2561;Z)V + p 1 width + p 2 entries + p 3 label + p 4 labelVisible +c net/minecraft/class_11442$class_11443 net/minecraft/dialog/input/SingleOptionInputControl$Entry + f Lcom/mojang/serialization/Codec; field_60648 BASE_CODEC + f Lcom/mojang/serialization/Codec; field_60649 CODEC + f Ljava/lang/String; comp_4348 id + f Ljava/util/Optional; comp_4349 display + f Z comp_4350 initial + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71734 method_71734 + p 0 instance + m ()Lnet/minecraft/class_2561; method_71733 getDisplay + m (Ljava/lang/String;)Lnet/minecraft/class_11442$class_11443; method_71735 method_71735 + p 0 id + m ()Ljava/util/Optional; comp_4349 display + m ()Ljava/lang/String; comp_4348 id + m ()Z comp_4350 initial + m (Ljava/lang/String;Ljava/util/Optional;Z)V + p 1 id + p 2 display + p 3 initial +c net/minecraft/class_11440 net/minecraft/dialog/input/NumberRangeInputControl + f Lcom/mojang/serialization/MapCodec; field_60645 CODEC + f Lnet/minecraft/class_11440$class_11441; comp_4339 rangeInfo + f I comp_4336 width + f Lnet/minecraft/class_2561; comp_4337 label + f Ljava/lang/String; comp_4338 labelFormat + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_71722 getFormattedLabel + p 1 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71721 method_71721 + p 0 instance + m ()I comp_4336 width + m ()Ljava/lang/String; comp_4338 labelFormat + m ()Lnet/minecraft/class_2561; comp_4337 label + m ()Lnet/minecraft/class_11440$class_11441; comp_4339 rangeInfo + m (ILnet/minecraft/class_2561;Ljava/lang/String;Lnet/minecraft/class_11440$class_11441;)V + p 1 width + p 2 label + p 3 labelFormat + p 4 rangeInfo +c net/minecraft/class_11440$class_11441 net/minecraft/dialog/input/NumberRangeInputControl$RangeInfo + f Lcom/mojang/serialization/MapCodec; field_60646 CODEC + f Ljava/util/Optional; comp_4382 step + f Ljava/util/Optional; comp_4342 initial + f F comp_4341 end + f F comp_4340 start + m (Lnet/minecraft/class_11440$class_11441;)Lcom/mojang/serialization/DataResult; method_71726 method_71726 + p 0 rangeInfo + m (F)Z method_71959 isValueOutOfRange + p 1 value + m ()F method_71961 getInitialValue + m (F)F method_71728 sliderProgressToValue + p 1 sliderProgress + m ()F method_71723 getInitialSliderProgress + m (F)F method_71960 valueToSliderProgress + p 1 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71727 method_71727 + p 0 instance + m ()F comp_4340 start + m ()F comp_4341 end + m ()Ljava/util/Optional; comp_4382 step + m ()Ljava/util/Optional; comp_4342 initial + m (FFLjava/util/Optional;Ljava/util/Optional;)V + p 1 start + p 2 end + p 3 initial + p 4 step +c net/minecraft/class_11446 net/minecraft/unused/packageinfo/PackageInfo11446 +c net/minecraft/class_11445 net/minecraft/unused/packageinfo/PackageInfo11445 +c net/minecraft/class_11444 net/minecraft/dialog/input/TextInputControl + f Lcom/mojang/serialization/MapCodec; field_60650 CODEC + f Ljava/util/Optional; comp_4384 multiline + f I comp_4351 width + f Z comp_4353 labelVisible + f Ljava/lang/String; comp_4354 initial + f I comp_4383 maxLength + f Lnet/minecraft/class_2561; comp_4352 label + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71737 method_71737 + p 0 instance + m (Lnet/minecraft/class_11444;)Lcom/mojang/serialization/DataResult; method_71962 method_71962 + p 0 inputControl + m ()I comp_4383 maxLength + m ()Z comp_4353 labelVisible + m ()I comp_4351 width + m ()Lnet/minecraft/class_2561; comp_4352 label + m ()Ljava/util/Optional; comp_4384 multiline + m ()Ljava/lang/String; comp_4354 initial + m (ILnet/minecraft/class_2561;ZLjava/lang/String;ILjava/util/Optional;)V + p 1 width + p 2 label + p 3 labelVisible + p 4 initial + p 5 maxLength + p 6 multiline +c net/minecraft/class_11444$class_11508 net/minecraft/dialog/input/TextInputControl$Multiline + f I field_61049 MAX_HEIGHT + f Lcom/mojang/serialization/Codec; field_60851 CODEC + f Ljava/util/Optional; comp_4386 height + f Ljava/util/Optional; comp_4385 maxLines + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71964 method_71964 + p 0 instance + m ()Ljava/util/Optional; comp_4385 maxLines + m ()Ljava/util/Optional; comp_4386 height + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 maxLines + p 2 height +c net/minecraft/class_10112 net/minecraft/data/loottable/LootTableData + f Ljava/util/Map; field_53714 WOOL_FROM_DYE_COLOR +c net/minecraft/class_10118 net/minecraft/unused/packageinfo/PackageInfo10118 +c net/minecraft/class_10119 net/minecraft/datafixer/fix/FoodToConsumableFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 schema +c net/minecraft/class_11447 net/minecraft/dialog/action/DynamicRunCommandDialogAction + f Lcom/mojang/serialization/MapCodec; field_60651 CODEC + f Lnet/minecraft/class_11451; comp_4355 template + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71739 method_71739 + p 0 instance + m ()Lnet/minecraft/class_11451; comp_4355 template + m (Lnet/minecraft/class_11451;)V + p 1 template +c net/minecraft/class_10117 net/minecraft/util/DeprecatedLanguageData + f Lcom/mojang/serialization/Codec; field_53738 CODEC + f Lnet/minecraft/class_10117; field_53737 NONE + f Lorg/slf4j/Logger; field_53739 LOGGER + f Ljava/util/Map; comp_3077 renamed + f Ljava/util/List; comp_3076 removed + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_62782 method_62782 + p 0 error + m (Ljava/io/InputStream;)Lnet/minecraft/class_10117; method_62778 fromInputStream + p 0 stream + m (Ljava/util/Map;)V method_62780 apply + p 1 map + m (Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;)V method_62781 method_62781 + p 2 newKey + p 1 oldKey + m ()Lnet/minecraft/class_10117; method_62776 create + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62777 method_62777 + p 0 instance + m (Ljava/lang/String;)Lnet/minecraft/class_10117; method_62779 fromPath + p 0 path + m ()Ljava/util/Map; comp_3077 renamed + m ()Ljava/util/List; comp_3076 removed + m (Ljava/util/List;Ljava/util/Map;)V + p 1 removed + p 2 renamed +c net/minecraft/class_9038 net/minecraft/client/resource/server/DownloadQueuer + m (Ljava/util/Map;Ljava/util/function/Consumer;)V method_55546 enqueue + p 1 entries + p 2 callback +c net/minecraft/class_11429 net/minecraft/dialog/type/ServerLinksDialog + f Lcom/mojang/serialization/MapCodec; field_60635 CODEC + f Ljava/util/Optional; comp_4395 exitAction + f Lnet/minecraft/class_11417; comp_4305 common + f I comp_4321 buttonWidth + f I comp_4310 columns + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71709 method_71709 + p 0 instance + m ()I comp_4321 buttonWidth + m (Lnet/minecraft/class_11417;Ljava/util/Optional;II)V + p 1 common + p 2 exitAction + p 3 columns + p 4 buttonWidth +c net/minecraft/class_9035 net/minecraft/entity/ai/brain/task/BreezeShootIfStuckTask + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;)Z method_55501 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;J)V method_55503 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;J)Z method_55502 shouldKeepRunning +c net/minecraft/class_9039 net/minecraft/client/resource/server/PackStateChangeCallback + m (Ljava/util/UUID;Lnet/minecraft/class_9039$class_9060;)V method_55620 onStateChanged + p 1 id + p 2 state + m (Ljava/util/UUID;Lnet/minecraft/class_9039$class_9040;)V method_55619 onFinish + p 1 id + p 2 state +c net/minecraft/class_9039$class_9060 net/minecraft/client/resource/server/PackStateChangeCallback$State + f Lnet/minecraft/class_9039$class_9060; field_47700 DOWNLOADED + f Lnet/minecraft/class_9039$class_9060; field_47699 ACCEPTED +c net/minecraft/class_9039$class_9040 net/minecraft/client/resource/server/PackStateChangeCallback$FinishState + f Lnet/minecraft/class_9039$class_9040; field_47626 DOWNLOAD_FAILED + f Lnet/minecraft/class_9039$class_9040; field_47625 DISCARDED + f Lnet/minecraft/class_9039$class_9040; field_47624 APPLIED + f Lnet/minecraft/class_9039$class_9040; field_47623 DECLINED + f Lnet/minecraft/class_9039$class_9040; field_47627 ACTIVATION_FAILED +c net/minecraft/class_11430 net/minecraft/dialog/type/SimpleDialog + m ()Ljava/util/List; method_71698 getButtons +c net/minecraft/class_11435 net/minecraft/dialog/body/PlainMessageDialogBody + f Lcom/mojang/serialization/MapCodec; field_60641 CODEC + f I field_60640 DEFAULT_WIDTH + f Lcom/mojang/serialization/Codec; field_60642 ALTERNATIVE_CODEC + f I comp_4331 width + f Lnet/minecraft/class_2561; comp_4330 contents + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71715 method_71715 + p 0 instance + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_11435; method_71716 method_71716 + p 0 contents + m ()I comp_4331 width + m ()Lnet/minecraft/class_2561; comp_4330 contents + m (Lnet/minecraft/class_2561;I)V + p 1 contents + p 2 width +c net/minecraft/class_10104 net/minecraft/text/ParsedSelector + f Lcom/mojang/serialization/Codec; field_53684 CODEC + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_62667 parse + p 0 selector +c net/minecraft/class_11434 net/minecraft/dialog/body/ItemDialogBody + f Lcom/mojang/serialization/MapCodec; field_60639 CODEC + f Z comp_4326 showDecorations + f I comp_4329 height + f Z comp_4327 showTooltip + f I comp_4328 width + f Lnet/minecraft/class_1799; comp_4324 item + f Ljava/util/Optional; comp_4325 description + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71714 method_71714 + p 0 instance + m ()I comp_4329 height + m ()I comp_4328 width + m ()Z comp_4327 showTooltip + m ()Z comp_4326 showDecorations + m ()Lnet/minecraft/class_1799; comp_4324 item + m ()Ljava/util/Optional; comp_4325 description + m (Lnet/minecraft/class_1799;Ljava/util/Optional;ZZII)V + p 1 item + p 2 description + p 3 showDecorations + p 4 showTooltip + p 5 width + p 6 height +c net/minecraft/class_11433 net/minecraft/dialog/DialogBodyTypes + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_71713 registerAndGetDefault + p 0 registry +c net/minecraft/class_11432 net/minecraft/dialog/body/DialogBody + f Lcom/mojang/serialization/Codec; field_60637 CODEC + f Lcom/mojang/serialization/Codec; field_60638 LIST_CODEC + m ()Lcom/mojang/serialization/MapCodec; method_71711 getTypeCodec + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_71712 method_71712 + p 0 mapCodec +c net/minecraft/class_11439 net/minecraft/dialog/InputControlTypes + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_71720 registerAndGetDefault + p 0 registry +c net/minecraft/class_10107 net/minecraft/data/report/DataPackStructureProvider + f Lnet/minecraft/class_7784; field_53697 output + f Lnet/minecraft/class_10107$class_10109; field_53700 DYNAMIC_REGISTRY + f Lnet/minecraft/class_10107$class_10109; field_53699 RELOADABLE_REGISTRY_WITH_TAGS + f Lnet/minecraft/class_10107$class_10109; field_53701 STATIC_REGISTRY + f Lnet/minecraft/class_10107$class_10109; field_53698 RELOADABLE_REGISTRY + f Lcom/mojang/serialization/Codec; field_53704 REGISTRY_KEY_CODEC + f Ljava/util/Map; field_53703 FAKE_REGISTRIES + f Ljava/util/Map; field_53702 RELOADABLE_REGISTRIES + m (Ljava/util/Map;Lnet/minecraft/class_7655$class_7657;)V method_62717 method_62717 + p 2 registry + m ()Ljava/util/Map; method_62720 buildEntries + m (Ljava/util/Map;Lnet/minecraft/class_2378;)V method_62719 method_62719 + p 2 registry + m (Ljava/util/Map;Lnet/minecraft/class_7655$class_7657;)V method_62721 method_62721 + p 2 registry + m (Ljava/util/Map;Lnet/minecraft/class_5321;Lnet/minecraft/class_10107$class_10109;)V method_62722 method_62722 + p 2 key + p 3 entry + m (Lnet/minecraft/class_7784;)V + p 1 output + m (Ljava/util/Map;Lnet/minecraft/class_5321;Lnet/minecraft/class_10107$class_10109;)V method_62718 addEntry + p 1 map + p 2 key + p 3 entry +c net/minecraft/class_10107$class_10110 net/minecraft/data/report/DataPackStructureProvider$Format + f Lcom/mojang/serialization/Codec; field_53710 CODEC + f Ljava/lang/String; field_53711 id + f Lnet/minecraft/class_10107$class_10110; field_53709 MCFUNCTION + f Lnet/minecraft/class_10107$class_10110; field_53708 STRUCTURE + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_10107$class_10111 net/minecraft/data/report/DataPackStructureProvider$Registries + f Lcom/mojang/serialization/Codec; field_53713 CODEC + f Ljava/util/Map; comp_3074 registries + f Ljava/util/Map; comp_3075 others + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62726 method_62726 + p 0 instance + m ()Ljava/util/Map; comp_3074 registries + m ()Ljava/util/Map; comp_3075 others + m (Ljava/util/Map;Ljava/util/Map;)V + p 1 registries + p 2 others +c net/minecraft/class_10107$class_10108 net/minecraft/data/report/DataPackStructureProvider$FakeRegistry + f Lcom/mojang/serialization/Codec; field_53705 CODEC + f Lnet/minecraft/class_10107$class_10110; comp_3069 format + f Lnet/minecraft/class_10107$class_10109; comp_3070 entry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62723 method_62723 + p 0 instance + m ()Lnet/minecraft/class_10107$class_10110; comp_3069 format + m ()Lnet/minecraft/class_10107$class_10109; comp_3070 entry + m (Lnet/minecraft/class_10107$class_10110;Lnet/minecraft/class_10107$class_10109;)V + p 1 format + p 2 entry +c net/minecraft/class_10107$class_10109 net/minecraft/data/report/DataPackStructureProvider$Entry + f Lcom/mojang/serialization/MapCodec; field_53706 MAP_CODEC + f Lcom/mojang/serialization/Codec; field_53707 CODEC + f Z comp_3073 stable + f Z comp_3072 tags + f Z comp_3071 elements + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62724 method_62724 + p 0 instance + m ()Z comp_3073 stable + m ()Z comp_3072 tags + m ()Z comp_3071 elements + m (ZZZ)V + p 1 elements + p 2 tags + p 3 stable +c net/minecraft/class_11438 net/minecraft/dialog/input/InputControl + f Lcom/mojang/serialization/MapCodec; field_60644 CODEC + m ()Lcom/mojang/serialization/MapCodec; method_71717 getCodec + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_71719 method_71719 + p 0 mapCodec +c net/minecraft/class_11437 net/minecraft/dialog/input/BooleanInputControl + f Lcom/mojang/serialization/MapCodec; field_60643 CODEC + f Ljava/lang/String; comp_4335 onFalse + f Ljava/lang/String; comp_4334 onTrue + f Z comp_4333 initial + f Lnet/minecraft/class_2561; comp_4332 label + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71718 method_71718 + p 0 instance + m ()Lnet/minecraft/class_2561; comp_4332 label + m ()Ljava/lang/String; comp_4334 onTrue + m ()Ljava/lang/String; comp_4335 onFalse + m ()Z comp_4333 initial + m (Lnet/minecraft/class_2561;ZLjava/lang/String;Ljava/lang/String;)V + p 1 label + p 2 initial + p 3 onTrue + p 4 onFalse +c net/minecraft/class_11436 net/minecraft/unused/packageinfo/PackageInfo11436 +c net/minecraft/util/profiling/jfr/event/ServerTickTimeEvent net/minecraft/util/profiling/jfr/event/ServerTickTimeEvent + m (F)V + p 1 averageTickMilliseconds +c net/minecraft/util/profiling/jfr/event/ServerTickTimeEvent$class_6601 net/minecraft/util/profiling/jfr/event/ServerTickTimeEvent$Names + f Ljava/lang/String; field_34854 AVERAGE_TICK_DURATION +c net/minecraft/class_9009 net/minecraft/block/GrateBlock + f Lnet/minecraft/class_2746; field_47523 WATERLOGGED + f Lcom/mojang/serialization/MapCodec; field_47522 CODEC +c net/minecraft/class_9006 net/minecraft/network/packet/s2c/play/ScoreboardScoreResetS2CPacket + f Ljava/lang/String; comp_2120 scoreHolderName + f Lnet/minecraft/class_9139; field_47961 CODEC + f Ljava/lang/String; comp_2121 objectiveName + m (Lnet/minecraft/class_2602;)V method_55332 apply + m ()Ljava/lang/String; comp_2120 scoreHolderName + m (Lnet/minecraft/class_2540;)V method_55908 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Ljava/lang/String; comp_2121 objectiveName + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 scoreHolderName + p 2 objectiveName +c net/minecraft/class_1999 net/minecraft/advancement/criterion/ChangedDimensionCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;)V method_8794 trigger + p 1 player + p 2 from + p 3 to + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lnet/minecraft/class_1999$class_2001;)Z method_22457 method_22457 + p 2 conditions +c net/minecraft/class_1999$class_2001 net/minecraft/advancement/criterion/ChangedDimensionCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47230 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2038 to + f Ljava/util/Optional; comp_2037 from + m ()Lnet/minecraft/class_175; method_35070 create + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_175; method_8799 to + p 0 to + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_175; method_35069 from + p 0 from + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54954 method_54954 + p 0 instance + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 2 from + p 3 to + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;)Lnet/minecraft/class_175; method_35068 create + p 1 to + p 0 from + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;)Z method_8800 matches + p 2 to + p 1 from + m ()Ljava/util/Optional; comp_2037 from + m ()Ljava/util/Optional; comp_2038 to +c net/minecraft/class_1996 net/minecraft/advancement/criterion/BrewedPotionCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_6880;)V method_8784 trigger + p 2 potion + p 1 player + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1996$class_1998;)Z method_22456 method_22456 + p 1 conditions +c net/minecraft/class_1996$class_1998 net/minecraft/advancement/criterion/BrewedPotionCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47229 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2036 potion + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 2 potion + m (Lnet/minecraft/class_6880;)Z method_8790 matches + p 1 potion + m ()Lnet/minecraft/class_175; method_8791 any + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54953 method_54953 + p 0 instance + m ()Ljava/util/Optional; comp_2036 potion +c net/minecraft/class_10132 net/minecraft/item/consume/ApplyEffectsConsumeEffect + f Lcom/mojang/serialization/MapCodec; field_53803 CODEC + f Lnet/minecraft/class_9139; field_53804 PACKET_CODEC + f Ljava/util/List; comp_3094 effects + f F comp_3095 probability + m (Lnet/minecraft/class_1293;F)V + p 1 effect + p 2 probability + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62865 method_62865 + p 0 instance + m (Lnet/minecraft/class_1293;)V + p 1 effect + m (Ljava/util/List;)V + p 1 effects + m ()F comp_3095 probability + m ()Ljava/util/List; comp_3094 effects + m (Ljava/util/List;F)V + p 1 effects + p 2 probability +c net/minecraft/class_10133 net/minecraft/item/consume/ClearAllEffectsConsumeEffect + f Lcom/mojang/serialization/MapCodec; field_53806 CODEC + f Lnet/minecraft/class_10133; field_53805 INSTANCE + f Lnet/minecraft/class_9139; field_53807 PACKET_CODEC +c net/minecraft/class_10130 net/minecraft/component/type/UseCooldownComponent + f Lnet/minecraft/class_9139; field_53800 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_53799 CODEC + f F comp_3091 seconds + f Ljava/util/Optional; comp_3092 cooldownGroup + m ()I method_62860 getCooldownTicks + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62861 method_62861 + p 0 instance + m (F)V + p 1 seconds + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;)V method_62862 set + p 2 user + p 1 stack + m ()Ljava/util/Optional; comp_3092 cooldownGroup + m ()F comp_3091 seconds + m (FLjava/util/Optional;)V + p 1 seconds + p 2 cooldownGroup +c net/minecraft/class_11462 net/minecraft/client/util/ColorLerper + f [Lnet/minecraft/class_1767; field_60686 RAINBOW_COLORS + m (Lnet/minecraft/class_11462$class_11463;F)I method_71790 lerpColor + p 1 step + p 0 type + m (Lnet/minecraft/class_1767;F)I method_71789 getArgb + p 1 multiplier + p 0 color +c net/minecraft/class_11462$class_11463 net/minecraft/client/util/ColorLerper$Type + f Ljava/util/Map; field_60690 colorToArgb + f I field_60689 colorDuration + f [Lnet/minecraft/class_1767; field_60691 colors + f Lnet/minecraft/class_11462$class_11463; field_60688 MUSIC_NOTE + f Lnet/minecraft/class_11462$class_11463; field_60687 SHEEP + m (Lnet/minecraft/class_1767;)I method_71793 getArgb + p 1 color + m (FLnet/minecraft/class_1767;)Ljava/lang/Integer; method_71792 method_71792 + p 1 color + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_1767; method_71794 method_71794 + p 0 color + m (Ljava/lang/String;II[Lnet/minecraft/class_1767;F)V + p 4 colors + p 3 colorDuration + p 5 multiplier +c net/minecraft/class_10131 net/minecraft/component/type/UseRemainderComponent + f Lnet/minecraft/class_9139; field_53802 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_53801 CODEC + f Lnet/minecraft/class_1799; comp_3093 convertInto + m (Lnet/minecraft/class_1799;IZLnet/minecraft/class_10131$class_10259;)Lnet/minecraft/class_1799; method_62863 convert + p 4 inserter + p 3 inCreative + p 2 oldCount + p 1 stack + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_1799; comp_3093 convertInto + m (Lnet/minecraft/class_1799;)V + p 1 convertInto +c net/minecraft/class_10131$class_10259 net/minecraft/component/type/UseRemainderComponent$StackInserter + m (Lnet/minecraft/class_1799;)V apply apply + p 1 stack +c net/minecraft/class_11461 net/minecraft/client/realms/gui/screen/RealmsConnectingScreen + f Lnet/minecraft/class_8667; field_60679 footerLayout + f Lnet/minecraft/class_11459; field_60681 serverAddress + f Lnet/minecraft/class_4358; field_60680 connectTask + m (Lnet/minecraft/class_437;Lnet/minecraft/class_11459;Lnet/minecraft/class_4358;)V + p 1 parent + p 2 serverAddress + p 3 connectTask + m (Lnet/minecraft/class_7847;)V method_71784 method_71784 + p 0 positioner + m (Lnet/minecraft/class_11461;Lnet/minecraft/class_364;)V method_71783 method_71783 + p 1 child +c net/minecraft/class_10136 net/minecraft/item/consume/PlaySoundConsumeEffect + f Lcom/mojang/serialization/MapCodec; field_53815 CODEC + f Lnet/minecraft/class_9139; field_53816 PACKET_CODEC + f Lnet/minecraft/class_6880; comp_3098 sound + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62868 method_62868 + p 0 instance + m ()Lnet/minecraft/class_6880; comp_3098 sound + m (Lnet/minecraft/class_6880;)V + p 1 sound +c net/minecraft/class_11467 net/minecraft/client/gui/widget/ScrollableLayoutWidget + f I field_60719 height + f I field_60718 width + f Lnet/minecraft/class_11467$class_11468; field_60717 container + f Lnet/minecraft/class_8133; field_60716 layout + m (I)V method_71807 setHeight + p 1 height + m (Lnet/minecraft/class_310;Lnet/minecraft/class_8133;I)V + p 1 client + p 2 layout + p 3 height + m (I)V method_71806 setWidth + p 1 width +c net/minecraft/class_11467$class_11468 net/minecraft/client/gui/widget/ScrollableLayoutWidget$Container + f Ljava/util/List; field_60722 children + f Lnet/minecraft/class_310; field_60721 client + m (Lnet/minecraft/class_11467;Lnet/minecraft/class_310;II)V + p 3 width + p 2 client + p 4 height +c net/minecraft/class_10137 net/minecraft/item/consume/RemoveEffectsConsumeEffect + f Lcom/mojang/serialization/MapCodec; field_53817 CODEC + f Lnet/minecraft/class_9139; field_53818 PACKET_CODEC + f Lnet/minecraft/class_6885; comp_3099 effects + m (Lnet/minecraft/class_6880;)V + p 1 effect + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62869 method_62869 + p 0 instance + m ()Lnet/minecraft/class_6885; comp_3099 effects + m (Lnet/minecraft/class_6885;)V + p 1 effects +c net/minecraft/class_11466 net/minecraft/client/gui/widget/ItemStackWidget + f Lnet/minecraft/class_1799; field_60712 stack + f Z field_60714 hasTooltip + f Z field_60713 drawOverlay + f I field_60711 yOffset + f I field_60710 xOffset + f Lnet/minecraft/class_310; field_60709 client + m (Lnet/minecraft/class_332;II)V method_73392 renderTooltip + p 3 mouseY + p 1 context + p 2 mouseX + m (Lnet/minecraft/class_310;IIIILnet/minecraft/class_2561;Lnet/minecraft/class_1799;ZZ)V + p 1 client + p 2 x + p 3 y + p 4 width + p 9 hasTooltip + p 5 height + p 6 message + p 7 stack + p 8 drawOverlay +c net/minecraft/class_10134 net/minecraft/item/consume/ConsumeEffect + f Lnet/minecraft/class_9139; field_53809 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_53808 CODEC + m ()Lnet/minecraft/class_10134$class_10135; method_62864 getType + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;)Z method_62866 onConsume + p 3 user + p 2 stack + p 1 world +c net/minecraft/class_10134$class_10135 net/minecraft/item/consume/ConsumeEffect$Type + f Lnet/minecraft/class_10134$class_10135; field_53810 APPLY_EFFECTS + f Lnet/minecraft/class_10134$class_10135; field_53812 CLEAR_ALL_EFFECTS + f Lnet/minecraft/class_10134$class_10135; field_53811 REMOVE_EFFECTS + f Lnet/minecraft/class_10134$class_10135; field_53814 PLAY_SOUND + f Lnet/minecraft/class_10134$class_10135; field_53813 TELEPORT_RANDOMLY + f Lnet/minecraft/class_9139; comp_3097 streamCodec + f Lcom/mojang/serialization/MapCodec; comp_3096 codec + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;Lnet/minecraft/class_9139;)Lnet/minecraft/class_10134$class_10135; method_62867 register + p 0 id + p 1 codec + p 2 packetCodec + m ()Lcom/mojang/serialization/MapCodec; comp_3096 codec + m ()Lnet/minecraft/class_9139; comp_3097 streamCodec + m (Lcom/mojang/serialization/MapCodec;Lnet/minecraft/class_9139;)V + p 1 codec + p 2 streamCodec +c net/minecraft/class_10138 net/minecraft/item/consume/TeleportRandomlyConsumeEffect + f Lcom/mojang/serialization/MapCodec; field_53819 CODEC + f Lnet/minecraft/class_9139; field_53820 PACKET_CODEC + f F field_53821 DEFAULT_DIAMETER + f F comp_3100 diameter + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62870 method_62870 + p 0 instance + m ()F comp_3100 diameter + m (F)V + p 1 diameter +c net/minecraft/class_10139 net/minecraft/unused/packageinfo/PackageInfo10139 +c net/minecraft/class_11469 net/minecraft/client/toast/NowPlayingToast + f Lnet/minecraft/class_310; field_60736 client + f Z field_60871 showing + f I field_60729 VISIBILITY_DURATION + f I field_60726 MUSIC_NOTES_ICON_SIZE + f I field_60725 MARGIN + f D field_60872 displayTimeMultiplier + f I field_60734 musicNotesIconColor + f I field_60732 musicNoteColorChanges + f J field_60733 lastMusicNoteColorChangeTime + f Lnet/minecraft/class_2960; field_60724 MUSIC_NOTES_ICON + f Lnet/minecraft/class_2960; field_60723 TEXTURE + f I field_60730 TEXT_COLOR + f J field_60731 MUSIC_NOTE_COLOR_CHANGE_INTERVAL + f Lnet/minecraft/class_368$class_369; field_60737 visibility + m (Lnet/minecraft/class_368$class_369;)V method_71811 setVisibility + p 1 visibility + m (Lnet/minecraft/class_315;)V method_71994 show + p 1 options + m ()V method_71814 tick + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_71812 getMusicText + p 0 translationKey + m ()Ljava/lang/String; method_76618 getCurrentMusicTranslationKey + m (Ljava/lang/String;Lnet/minecraft/class_327;)I method_71813 getMusicTextWidth + p 1 textRenderer + p 0 translationKey + m (Lnet/minecraft/class_332;Lnet/minecraft/class_327;)V method_71810 draw + p 0 context + p 1 textRenderer +c net/minecraft/class_9015 net/minecraft/scoreboard/ScoreHolder + f Lnet/minecraft/class_9015; field_47538 WILDCARD + f Ljava/lang/String; field_47537 WILDCARD_NAME + m (Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_55421 method_55421 + p 1 style + m ()Ljava/lang/String; method_5820 getNameForScoreboard + c {@return the name uniquely identifying the score holder}\n\n

Unlike {@link net.minecraft.entity.Entity#getName}, this is guaranteed to be unique. This is the UUID\nfor all entities except players (which use the player's username).\n\n@see net.minecraft.entity.Entity#getName\n@see net.minecraft.entity.Entity#getUuidAsString + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/class_9015; method_55420 fromProfile + p 0 gameProfile + m (Ljava/lang/String;)Lnet/minecraft/class_9015; method_55422 fromName + p 0 name + m ()Lnet/minecraft/class_2561; method_55423 getStyledDisplayName + m ()Lnet/minecraft/class_2561; method_5476 getDisplayName +c net/minecraft/class_9014 net/minecraft/scoreboard/ScoreAccess + m (Lnet/minecraft/class_9022;)V method_55412 setNumberFormat + p 1 numberFormat + m ()Z method_55416 isLocked + m ()V method_55415 resetScore + m ()Lnet/minecraft/class_2561; method_55419 getDisplayText + m ()I method_55413 incrementScore + m ()I method_55409 getScore + m (I)V method_55410 setScore + p 1 score + m ()V method_55417 unlock + m (Lnet/minecraft/class_2561;)V method_55411 setDisplayText + p 1 text + m (I)I method_55414 incrementScore + p 1 amount + m ()V method_55418 lock +c net/minecraft/class_9013 net/minecraft/scoreboard/ReadableScoreboardScore + m ()Lnet/minecraft/class_9022; method_55400 getNumberFormat + m (Lnet/minecraft/class_9022;)Lnet/minecraft/class_5250; method_55399 getFormattedScore + p 1 fallbackFormat + m ()I method_55397 getScore + m (Lnet/minecraft/class_9013;Lnet/minecraft/class_9022;)Lnet/minecraft/class_5250; method_55398 getFormattedScore + p 1 fallbackFormat + p 0 score + m ()Z method_1131 isLocked +c net/minecraft/class_9012 net/minecraft/scoreboard/Scores + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectOpenHashMap; field_47529 scores + m (Ljava/util/function/Consumer;Ljava/lang/Object;)Lnet/minecraft/class_267; method_55393 method_55393 + p 1 objective2 + m ()Ljava/util/Map; method_55396 getScores + m (Lnet/minecraft/class_266;)Z method_55395 remove + p 1 objective + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; method_55394 getScoresAsIntMap + m ()Z method_55388 hasScores + m (Lnet/minecraft/class_266;Lnet/minecraft/class_267;)V method_55390 put + p 1 objective + p 2 score + m (Lnet/minecraft/class_266;)Lnet/minecraft/class_267; method_55389 get + p 1 objective + m (Lnet/minecraft/class_266;Ljava/util/function/Consumer;)Lnet/minecraft/class_267; method_55391 getOrCreate + p 1 objective + p 2 scoreConsumer + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/class_266;Lnet/minecraft/class_267;)V method_55392 method_55392 + p 2 score + p 1 objective +c net/minecraft/class_9011 net/minecraft/scoreboard/ScoreboardEntry + f Ljava/lang/String; comp_2127 owner + f Lnet/minecraft/class_9022; comp_2130 numberFormatOverride + f Lnet/minecraft/class_2561; comp_2129 display + f I comp_2128 value + m (Lnet/minecraft/class_9022;)Lnet/minecraft/class_5250; method_55386 formatted + p 1 format + m ()Z method_55385 hidden + m ()Lnet/minecraft/class_2561; method_55387 name + m ()Lnet/minecraft/class_9022; comp_2130 numberFormatOverride + m ()Lnet/minecraft/class_2561; comp_2129 display + m ()I comp_2128 value + m ()Ljava/lang/String; comp_2127 owner + m (Ljava/lang/String;ILnet/minecraft/class_2561;Lnet/minecraft/class_9022;)V + p 1 owner + p 2 value + p 3 display + p 4 numberFormatOverride +c net/minecraft/class_9010 net/minecraft/command/argument/ArgumentReaderUtils + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/class_5462;)Ljava/lang/String; method_58128 readWhileMatching + p 0 stringReader + p 1 predicate +c net/minecraft/class_9019 net/minecraft/command/argument/StyleArgumentType + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_55866 INVALID_STYLE_EXCEPTION + f Lnet/minecraft/class_10846; field_57922 PARSER + f Lcom/mojang/serialization/DynamicOps; field_58154 OPS + f Ljava/util/Collection; field_47554 EXAMPLES + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_9019; method_55446 style + p 0 registryAccess + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_55449 method_55449 + p 0 style + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_2583; method_55448 getStyle + p 0 context + p 1 style + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries +c net/minecraft/class_9017 net/minecraft/client/gui/widget/ContainerWidget + f Z field_47552 dragging + f Lnet/minecraft/class_364; field_47551 focusedElement +c net/minecraft/class_10121 net/minecraft/datafixer/schema/Schema4059 +c net/minecraft/class_10122 net/minecraft/unused/packageinfo/PackageInfo10122 +c net/minecraft/class_11451 net/minecraft/dialog/action/ParsedTemplate + f Lcom/mojang/serialization/Codec; field_60658 NAME_CODEC + f Lcom/mojang/serialization/Codec; field_60657 CODEC + f Lnet/minecraft/class_8873; field_60660 parsed + f Ljava/lang/String; field_60659 raw + m (Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String; method_71748 method_71748 + p 1 variable + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_71749 method_71749 + p 0 name + m (Ljava/lang/String;Lnet/minecraft/class_8873;)V + p 1 raw + p 2 parsed + m (Lnet/minecraft/class_11451;)Ljava/lang/String; method_71744 method_71744 + p 0 parsedTemplate + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_71745 parse + p 0 raw + m (Ljava/util/Map;)Ljava/lang/String; method_71747 apply + p 1 args +c net/minecraft/class_10120 net/minecraft/datafixer/fix/VillagerCanPickUpLootFix + f Ljava/lang/String; field_53755 FIELD_NAME + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_62819 fix + p 0 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 schema +c net/minecraft/class_11455 net/minecraft/registry/tag/DialogTags + f Lnet/minecraft/class_6862; field_60663 PAUSE_SCREEN_ADDITIONS + f Lnet/minecraft/class_6862; field_60978 QUICK_ACTIONS + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_71754 of + p 0 id +c net/minecraft/class_10124 net/minecraft/component/type/ConsumableComponent + f F field_53769 DEFAULT_CONSUME_SECONDS + f Lnet/minecraft/class_1839; comp_3086 useAction + f Lcom/mojang/serialization/Codec; field_53770 CODEC + f F field_53773 PARTICLES_AND_SOUND_TICK_THRESHOLD + f I field_53772 PARTICLES_AND_SOUND_TICK_INTERVAL + f Lnet/minecraft/class_9139; field_53771 PACKET_CODEC + f Ljava/util/List; comp_3089 onConsumeEffects + f Lnet/minecraft/class_6880; comp_3087 sound + f Z comp_3088 hasConsumeParticles + f F comp_3085 consumeSeconds + m ()I method_62841 getConsumeTicks + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62846 method_62846 + p 0 instance + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;Lnet/minecraft/class_10127;)V method_62848 method_62848 + p 4 consumable + m ()Lnet/minecraft/class_10124$class_10125; method_62850 builder + m ()Lnet/minecraft/class_1839; comp_3086 useAction + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;I)V method_62843 spawnParticlesAndPlaySound + p 3 stack + p 4 particleCount + p 1 random + p 2 user + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_62847 finishConsumption + p 3 stack + p 2 user + p 1 world + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_62845 consume + p 1 user + p 2 stack + p 3 hand + m (I)Z method_62842 shouldSpawnParticlesAndPlaySounds + p 1 remainingUseTicks + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)Z method_62844 canConsume + p 2 stack + p 1 user + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;Lnet/minecraft/class_10134;)V method_62849 method_62849 + p 3 effect + m ()Ljava/util/List; comp_3089 onConsumeEffects + m ()Lnet/minecraft/class_6880; comp_3087 sound + m ()Z comp_3088 hasConsumeParticles + m ()F comp_3085 consumeSeconds + m (FLnet/minecraft/class_1839;Lnet/minecraft/class_6880;ZLjava/util/List;)V + p 1 consumeSeconds + p 2 useAction + p 3 sound + p 4 hasConsumeParticles + p 5 onConsumeEffects +c net/minecraft/class_10124$class_10125 net/minecraft/component/type/ConsumableComponent$Builder + f F field_53774 consumeSeconds + f Ljava/util/List; field_53778 consumeEffects + f Lnet/minecraft/class_1839; field_53775 useAction + f Lnet/minecraft/class_6880; field_53776 sound + f Z field_53777 consumeParticles + m (Lnet/minecraft/class_10134;)Lnet/minecraft/class_10124$class_10125; method_62854 consumeEffect + p 1 consumeEffect + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_10124$class_10125; method_62855 sound + p 1 sound + m (F)Lnet/minecraft/class_10124$class_10125; method_62852 consumeSeconds + p 1 consumeSeconds + m (Lnet/minecraft/class_1839;)Lnet/minecraft/class_10124$class_10125; method_62853 useAction + p 1 useAction + m ()Lnet/minecraft/class_10124; method_62851 build + m (Z)Lnet/minecraft/class_10124$class_10125; method_62856 consumeParticles + p 1 consumeParticles + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_10124$class_10125; method_62857 finishSound + p 1 finishSound +c net/minecraft/class_10124$class_10126 net/minecraft/component/type/ConsumableComponent$ConsumableSoundProvider + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_3414; method_18807 getConsumeSound + p 1 stack +c net/minecraft/class_10129 net/minecraft/component/type/OminousBottleAmplifierComponent + f I field_53794 MIN_VALUE + f I field_53795 MAX_VALUE + f Lcom/mojang/serialization/Codec; field_53796 CODEC + f Lnet/minecraft/class_9139; field_53797 PACKET_CODEC + f I field_53793 DURATION + f I comp_3090 value + m ()I comp_3090 value + m (I)V + p 1 value +c net/minecraft/class_10127 net/minecraft/component/type/Consumable + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;Lnet/minecraft/class_10124;)V method_62831 onConsume + p 4 consumable + p 3 stack + p 2 user + p 1 world +c net/minecraft/class_11459 net/minecraft/client/realms/dto/RealmsServerAddress + f Lorg/slf4j/Logger; field_60676 LOGGER + f Lnet/minecraft/class_11459; field_60677 NULL + f Lnet/minecraft/class_11459$class_11460; comp_4368 regionData + f Ljava/lang/String; comp_4367 resourcePackHash + f Ljava/lang/String; comp_4366 resourcePackUrl + f Ljava/lang/String; comp_4365 address + m (Lnet/minecraft/class_4869;Ljava/lang/String;)Lnet/minecraft/class_11459; method_71782 parse + p 1 json + p 0 gson + m ()Ljava/lang/String; comp_4366 resourcePackUrl + m ()Ljava/lang/String; comp_4367 resourcePackHash + m ()Ljava/lang/String; comp_4365 address + m ()Lnet/minecraft/class_11459$class_11460; comp_4368 regionData + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_11459$class_11460;)V + p 1 address + p 2 resourcePackUrl + p 3 resourcePackHash + p 4 regionData +c net/minecraft/class_11459$class_11460 net/minecraft/client/realms/dto/RealmsServerAddress$RegionData + f Lnet/minecraft/class_11313; comp_4370 serviceQuality + f Lnet/minecraft/class_11303; comp_4369 region + m ()Lnet/minecraft/class_11303; comp_4369 region + m ()Lnet/minecraft/class_11313; comp_4370 serviceQuality + m (Lnet/minecraft/class_11303;Lnet/minecraft/class_11313;)V + p 1 region + p 2 serviceQuality +c net/minecraft/class_10128 net/minecraft/component/type/ConsumableComponents + f Lnet/minecraft/class_10124; field_53779 FOOD + f Lnet/minecraft/class_10124; field_53789 ROTTEN_FLESH + f Lnet/minecraft/class_10124; field_53788 PUFFERFISH + f Lnet/minecraft/class_10124; field_53787 POISONOUS_POTATO + f Lnet/minecraft/class_10124; field_53782 OMINOUS_BOTTLE + f Lnet/minecraft/class_10124; field_53781 HONEY_BOTTLE + f Lnet/minecraft/class_10124; field_53792 CHORUS_FRUIT + f Lnet/minecraft/class_10124; field_53780 DRINK + f Lnet/minecraft/class_10124; field_53791 MILK_BUCKET + f Lnet/minecraft/class_10124; field_53790 SPIDER_EYE + f Lnet/minecraft/class_10124; field_53786 GOLDEN_APPLE + f Lnet/minecraft/class_10124; field_53785 ENCHANTED_GOLDEN_APPLE + f Lnet/minecraft/class_10124; field_53784 RAW_CHICKEN + f Lnet/minecraft/class_10124; field_53783 DRIED_KELP + m ()Lnet/minecraft/class_10124$class_10125; method_62859 drink + m ()Lnet/minecraft/class_10124$class_10125; method_62858 food +c net/minecraft/class_289 net/minecraft/client/render/Tessellator + c Holding a single instance of {@link BufferBuilder}.\n\n

This class reuses the buffer builder so a buffer doesn't have to be\nallocated every time. + f Lnet/minecraft/class_289; field_1573 INSTANCE + f I field_46841 MAX_BUFFER_SIZE + f Lnet/minecraft/class_9799; field_52098 allocator + m (I)V + p 1 bufferCapacity + m (Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596;Lcom/mojang/blaze3d/vertex/VertexFormat;)Lnet/minecraft/class_287; method_60827 begin + p 1 drawMode + p 2 format + m ()V method_60828 clear + m ()Lnet/minecraft/class_289; method_1348 getInstance + m ()V method_54560 initialize +c net/minecraft/class_284 net/minecraft/client/gl/GlUniform + c Represents a uniform variable.\n\n@see \nUniform (GLSL) - OpenGL Wiki +c net/minecraft/class_284$class_11273 net/minecraft/client/gl/GlUniform$TexelBuffer + f I comp_4154 texture + f I comp_4152 samplerIndex + f I comp_4151 location + f Lcom/mojang/blaze3d/textures/TextureFormat; comp_4153 format + m (IILcom/mojang/blaze3d/textures/TextureFormat;)V + p 3 format + p 2 samplerIndex + p 1 location + m ()Lcom/mojang/blaze3d/textures/TextureFormat; comp_4153 format + m ()I comp_4152 samplerIndex + m ()I comp_4151 location + m ()I comp_4154 texture + m (IILcom/mojang/blaze3d/textures/TextureFormat;I)V + p 1 location + p 2 samplerIndex + p 3 format + p 4 texture +c net/minecraft/class_284$class_11272 net/minecraft/client/gl/GlUniform$UniformBuffer + f I comp_4150 blockBinding + m ()I comp_4150 blockBinding + m (I)V + p 1 blockBinding +c net/minecraft/class_284$class_11271 net/minecraft/client/gl/GlUniform$Sampler + f I comp_4149 samplerIndex + f I comp_4148 location + m ()I comp_4149 samplerIndex + m ()I comp_4148 location + m (II)V + p 1 location + p 2 samplerIndex +c net/minecraft/class_283 net/minecraft/client/gl/PostEffectPass + f Lnet/minecraft/class_2960; field_53121 outputTargetId + f I field_60122 SIZE + f Lnet/minecraft/class_11285; field_60124 samplerInfoBuffer + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56811 pipeline + f Ljava/util/List; field_53122 samplers + f Ljava/util/Map; field_60123 uniformBuffers + f Ljava/lang/String; field_53926 id + m (Ljava/util/Map;Lnet/minecraft/class_12136;Lnet/minecraft/class_283$class_9971;)Lnet/minecraft/class_283$class_12154; method_75415 method_75415 + p 2 sampler + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/class_2960;Ljava/util/Map;Ljava/util/List;)V + p 2 outputTargetId + p 3 uniforms + p 1 pipeline + p 4 samplers + m (Lnet/minecraft/class_9916;Lnet/minecraft/class_2960;Lnet/minecraft/class_9925;)Lnet/minecraft/class_9925; method_62256 method_62256 + p 1 id + p 2 handle + m (Lnet/minecraft/class_9909;Ljava/util/Map;Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V method_62255 render + p 2 handles + p 3 slice + p 1 builder +c net/minecraft/class_283$class_12154 net/minecraft/client/gl/PostEffectPass$Target + f Ljava/lang/String; comp_5066 samplerName + f Lcom/mojang/blaze3d/textures/GpuTextureView; comp_5067 view + f Lnet/minecraft/class_12137; comp_5068 sampler + m ()Ljava/lang/String; comp_5066 samplerName + m ()Lcom/mojang/blaze3d/textures/GpuTextureView; comp_5067 view + m ()Lnet/minecraft/class_12137; comp_5068 sampler + m (Ljava/lang/String;Lcom/mojang/blaze3d/textures/GpuTextureView;Lnet/minecraft/class_12137;)V + p 1 samplerName + p 2 view + p 3 sampler +c net/minecraft/class_283$class_9973 net/minecraft/client/gl/PostEffectPass$TextureSampler + f Ljava/lang/String; comp_3038 samplerName + f Lnet/minecraft/class_1044; comp_3039 texture + f I comp_3040 width + f I comp_3041 height + f Z comp_3037 bilinear + m ()Lnet/minecraft/class_1044; comp_3039 texture + m ()I comp_3040 width + m ()I comp_3041 height + m (Ljava/lang/String;Lnet/minecraft/class_1044;IIZ)V + p 1 samplerName + p 2 texture + p 3 width + p 4 height + p 5 bilinear +c net/minecraft/class_283$class_9972 net/minecraft/client/gl/PostEffectPass$TargetSampler + f Ljava/lang/String; comp_3034 samplerName + f Lnet/minecraft/class_2960; comp_3035 targetId + f Z comp_3036 depthBuffer + f Z comp_3037 bilinear + m (Ljava/util/Map;)Lnet/minecraft/class_9925; method_62262 getTarget + p 1 internalTargets + m ()Z comp_3036 depthBuffer + m ()Lnet/minecraft/class_2960; comp_3035 targetId + m (Ljava/lang/String;Lnet/minecraft/class_2960;ZZ)V + p 1 samplerName + p 2 targetId + p 3 depthBuffer + p 4 bilinear +c net/minecraft/class_283$class_9971 net/minecraft/client/gl/PostEffectPass$Sampler + m ()Ljava/lang/String; comp_3038 samplerName + m (Ljava/util/Map;)Lcom/mojang/blaze3d/textures/GpuTextureView; method_71128 getTexture + p 1 internalTargets + m (Ljava/util/Map;)V method_62261 postRender + p 1 internalTargets + m (Lnet/minecraft/class_9916;Ljava/util/Map;)V method_62259 preRender + p 2 internalTargets + p 1 pass + m ()Z comp_3037 bilinear +c net/minecraft/class_287 net/minecraft/client/render/BufferBuilder + c Builds a buffer of primitives and optionally sorts them by the distance\nfrom the camera.\n\n

This builder can sort quad primitives. It sorts them by the distance\nbetween the camera position and the center of the quad. Sorting is\nrequired when drawing translucent objects because they have to be drawn\nin back-to-front order. See\n\nTransparency Sorting - OpenGL Wiki.\n\n

For {@link VertexFormat.DrawMode#LINES LINES} and {@link\nVertexFormat.DrawMode#LINE_STRIP LINE_STRIP} draw modes, this builder\nduplicates every vertex in a line to produce a quad with zero area. See\n{@link RenderLayer#getLines}. + f I field_52077 currentMask + f I field_52075 requiredMask + f I field_52074 vertexSizeByte + f Z field_21594 canSkipElementChecks + c Whether this builder is aware of the vertex format and can skip checks\nfor the current target element while building a vertex in {@link\n#vertex(float, float, float, float, float, float, float, float, float, int, int, float, float, float)}. + f J field_52072 vertexPointer + f [I field_52076 offsetsByElementId + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_1565 vertexFormat + f Z field_21595 hasOverlay + f Lnet/minecraft/class_9799; field_52071 allocator + f Z field_1556 building + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596; field_52073 drawMode + f Z field_52070 LITTLE_ENDIAN + f I field_1554 vertexCount + m (SSLcom/mojang/blaze3d/vertex/VertexFormatElement;)Lnet/minecraft/class_4588; method_60799 uv + p 2 v + p 3 element + p 1 u + m (Lcom/mojang/blaze3d/vertex/VertexFormatElement;)J method_60798 beginElement + p 1 element + m ()V method_60806 endVertex + m (JI)V method_60801 putInt + p 0 pointer + p 2 i + m ()V method_60802 ensureBuilding + m (Lnet/minecraft/class_9799;Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596;Lcom/mojang/blaze3d/vertex/VertexFormat;)V + p 1 allocator + p 2 drawMode + p 3 vertexFormat + m (JI)V method_60797 putColor + p 0 pointer + p 2 argb + m ()Lnet/minecraft/class_9801; method_60794 endNullable + m ()Lnet/minecraft/class_9801; method_60800 end + m ()Lnet/minecraft/class_9801; method_60804 build + m (F)B method_60795 floatToByte + p 0 f + m ()J method_60805 beginVertex +c net/minecraft/class_11402 net/minecraft/client/render/fog/PowderSnowFogModifier + f I field_60591 FOG_COLOR +c net/minecraft/class_11401 net/minecraft/client/render/fog/LavaFogModifier + f I field_60590 COLOR +c net/minecraft/class_11400 net/minecraft/client/render/fog/FogModifier + m (Lnet/minecraft/class_1309;FF)F method_42592 applyDarknessModifier + p 2 darkness + p 3 tickProgress + p 1 cameraEntity + m ()Z method_71655 isColorSource + m (Lnet/minecraft/class_5636;Lnet/minecraft/class_1297;)Z method_42593 shouldApply + p 1 submersionType + p 2 cameraEntity + m ()Z method_71656 isDarknessModifier + m (Lnet/minecraft/class_638;Lnet/minecraft/class_4184;IF)I method_71654 getFogColor + p 1 world + p 3 viewDistance + p 2 camera + p 4 skyDarkness + m (Lnet/minecraft/class_7285;Lnet/minecraft/class_4184;Lnet/minecraft/class_638;FLnet/minecraft/class_9779;)V method_42591 applyStartEndModifier + p 1 data +c net/minecraft/class_11406 net/minecraft/network/packet/s2c/common/ClearDialogS2CPacket + f Lnet/minecraft/class_11406; field_60602 INSTANCE + f Lnet/minecraft/class_9139; field_60603 CODEC + m (Lnet/minecraft/class_8705;)V method_71667 apply +c net/minecraft/class_11405 net/minecraft/client/texture/CubemapTexture + f [Ljava/lang/String; field_60598 TEXTURE_SUFFIXES +c net/minecraft/class_11404 net/minecraft/unused/packageinfo/PackageInfo11404 +c net/minecraft/class_11403 net/minecraft/client/render/fog/WaterFogModifier +c net/minecraft/class_299 net/minecraft/client/recipebook/ClientRecipeBook + f Ljava/util/Map; field_1638 resultsByCategory + f Ljava/util/List; field_25778 orderedResults + f Ljava/util/Map; field_54810 recipes + f Ljava/util/Set; field_54811 highlightedRecipes + m (Lnet/minecraft/class_10287;)Ljava/util/List; method_1396 getResultsForCategory + p 1 category + m (Lnet/minecraft/class_10355;)Ljava/util/List; method_64854 method_64854 + p 0 group + m ()V method_64853 refresh + m ()Ljava/util/List; method_1393 getOrderedResults + m (Lnet/minecraft/class_10297;)V method_64849 add + p 1 entry + m (Lnet/minecraft/class_10298;)V method_64857 markHighlighted + p 1 recipeId + m (Lnet/minecraft/class_10298;)V method_64856 unmarkHighlighted + p 1 recipeId + m (Ljava/util/Map;Lnet/minecraft/class_10355;)Ljava/util/stream/Stream; method_64852 method_64852 + p 1 group + m (Lnet/minecraft/class_10298;)Z method_64855 isHighlighted + p 1 recipeId + m (Lnet/minecraft/class_10298;)V method_64850 remove + p 1 recipeId + m ()V method_65018 clear + m (Ljava/lang/Iterable;)Ljava/util/Map; method_30283 toGroupedMap + p 0 recipes + m (Ljava/util/Map;Lcom/google/common/collect/ImmutableList$Builder;Lnet/minecraft/class_10355;Ljava/util/List;)V method_64851 method_64851 + p 2 group + p 3 resultCollections + m (Lnet/minecraft/class_10355;)Ljava/util/List; method_64848 method_64848 + p 0 group +c net/minecraft/class_1992 net/minecraft/world/biome/source/FixedBiomeSource + f Lnet/minecraft/class_6880; field_9486 biome + f Lcom/mojang/serialization/MapCodec; field_24717 CODEC + m (Lnet/minecraft/class_6880;)V + p 1 biome + m (Lnet/minecraft/class_1992;)Lnet/minecraft/class_6880; method_28456 method_28456 + p 0 biomeSource +c net/minecraft/class_290 net/minecraft/client/render/VertexFormats + c Holding vertex formats and vertex format elements. + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_63454 POSITION_COLOR_LINE_WIDTH + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_29337 POSITION_COLOR_NORMAL + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_1590 POSITION_COLOR_TEXTURE_LIGHT_NORMAL + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_1580 POSITION_COLOR_TEXTURE_OVERLAY_LIGHT_NORMAL + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_21468 POSITION_COLOR_LIGHT + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_60033 EMPTY + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_1592 POSITION + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_1584 POSITION_TEXTURE_COLOR_LIGHT + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_20888 POSITION_COLOR_TEXTURE_LIGHT + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_1585 POSITION_TEXTURE + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_63455 POSITION_COLOR_NORMAL_LINE_WIDTH + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_1575 POSITION_TEXTURE_COLOR + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_1586 POSITION_TEXTURE_LIGHT_COLOR + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_1576 POSITION_COLOR + f Lcom/mojang/blaze3d/vertex/VertexFormat; field_1577 POSITION_TEXTURE_COLOR_NORMAL +c net/minecraft/class_11419 net/minecraft/dialog/type/Dialog + f Lcom/mojang/serialization/Codec; field_60620 CODEC + f Lcom/mojang/serialization/Codec; field_60850 WIDTH_CODEC + f Lcom/mojang/serialization/Codec; field_60622 ENTRY_LIST_CODEC + f Lcom/mojang/serialization/Codec; field_60621 ENTRY_CODEC + f Lnet/minecraft/class_9139; field_60623 ENTRY_PACKET_CODEC + f Lnet/minecraft/class_9139; field_60624 PACKET_CODEC + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_71699 method_71699 + p 0 mapCodec + m ()Ljava/util/Optional; method_72060 getCancelAction + m ()Lcom/mojang/serialization/MapCodec; method_71692 getCodec + m ()Lnet/minecraft/class_11417; comp_4305 common +c net/minecraft/class_11418 net/minecraft/dialog/type/ConfirmationDialog + f Lcom/mojang/serialization/MapCodec; field_60619 CODEC + f Lnet/minecraft/class_11519; comp_4306 yesButton + f Lnet/minecraft/class_11519; comp_4307 noButton + f Lnet/minecraft/class_11417; comp_4305 common + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71697 method_71697 + p 0 instance + m ()Lnet/minecraft/class_11519; comp_4307 noButton + m ()Lnet/minecraft/class_11519; comp_4306 yesButton + m (Lnet/minecraft/class_11417;Lnet/minecraft/class_11519;Lnet/minecraft/class_11519;)V + p 1 common + p 2 yesButton + p 3 noButton +c net/minecraft/class_1953 net/minecraft/world/tick/TickPriority + f Lcom/mojang/serialization/Codec; field_56697 CODEC + f I field_9308 index + f Lnet/minecraft/class_1953; field_9309 VERY_LOW + f Lnet/minecraft/class_1953; field_9315 EXTREMELY_HIGH + f Lnet/minecraft/class_1953; field_9316 LOW + f Lnet/minecraft/class_1953; field_9313 VERY_HIGH + f Lnet/minecraft/class_1953; field_9314 NORMAL + f Lnet/minecraft/class_1953; field_9311 EXTREMELY_LOW + f Lnet/minecraft/class_1953; field_9310 HIGH + m (Ljava/lang/String;II)V + p 3 index + m (I)Lnet/minecraft/class_1953; method_8680 byIndex + p 0 index + m ()I method_8681 getIndex +c net/minecraft/class_1952 net/minecraft/block/spawner/MobSpawnerEntry + f Lnet/minecraft/class_2487; comp_64 entity + f Ljava/lang/String; field_40893 ENTITY_KEY + f Lcom/mojang/serialization/Codec; field_34460 CODEC + f Lcom/mojang/serialization/Codec; field_34461 DATA_POOL_CODEC + f Ljava/util/Optional; comp_65 customSpawnRules + f Ljava/util/Optional; comp_2648 equipment + m ()Lnet/minecraft/class_2487; comp_64 entity + m ()Ljava/util/Optional; method_38097 getCustomSpawnRules + m ()Lnet/minecraft/class_2487; method_38093 getNbt + m ()Ljava/util/Optional; method_59717 getEquipment + m ()Ljava/util/Optional; comp_65 customSpawnRules + m (Lnet/minecraft/class_1952;)Lnet/minecraft/class_2487; method_38098 method_38098 + p 0 entry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38095 method_38095 + p 0 instance + m (Lnet/minecraft/class_1952;)Ljava/util/Optional; method_58679 method_58679 + p 0 entry + m (Lnet/minecraft/class_1952;)Ljava/util/Optional; method_38094 method_38094 + p 0 entry + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/util/Optional; comp_2648 equipment + m (Lnet/minecraft/class_2487;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 entity + p 2 customSpawnRules + p 3 equipment +c net/minecraft/class_1952$class_6542 net/minecraft/block/spawner/MobSpawnerEntry$CustomSpawnRules + f Lnet/minecraft/class_6497; field_34463 DEFAULT + f Lnet/minecraft/class_6497; comp_67 skyLightLimit + f Lnet/minecraft/class_6497; comp_66 blockLightLimit + f Lcom/mojang/serialization/Codec; field_34462 CODEC + m (Lnet/minecraft/class_1952$class_6542;)Lnet/minecraft/class_6497; method_38100 method_38100 + p 0 rules + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3218;)Z method_56563 canSpawn + p 1 pos + p 2 world + m (Lnet/minecraft/class_1952$class_6542;)Lnet/minecraft/class_6497; method_38102 method_38102 + p 0 rules + m (Lnet/minecraft/class_6497;)Lcom/mojang/serialization/DataResult; method_38099 validate + p 0 provider + m (Ljava/lang/String;)Lcom/mojang/serialization/MapCodec; method_51719 createLightLimitCodec + p 0 name + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_6497; comp_67 skyLightLimit + m ()Lnet/minecraft/class_6497; comp_66 blockLightLimit + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38101 method_38101 + p 0 instance + m (Lnet/minecraft/class_6497;Lnet/minecraft/class_6497;)V + p 1 blockLightLimit + p 2 skyLightLimit +c net/minecraft/class_1959 net/minecraft/world/biome/Biome + f Lnet/minecraft/class_3543; field_9335 TEMPERATURE_NOISE + f Lnet/minecraft/class_1959$class_5482; field_26393 weather + f Lnet/minecraft/class_4763; field_22039 effects + f Lcom/mojang/serialization/Codec; field_25819 CODEC + f Ljava/lang/ThreadLocal; field_20335 temperatureCache + f Lcom/mojang/serialization/Codec; field_24677 REGISTRY_CODEC + f Lnet/minecraft/class_5485; field_26635 generationSettings + f Lnet/minecraft/class_12199; field_63809 environmentAttributes + f Lnet/minecraft/class_3543; field_26392 FROZEN_OCEAN_NOISE + f Lnet/minecraft/class_5483; field_26395 spawnSettings + f I field_30978 MAX_TEMPERATURE_CACHE_SIZE + f Lnet/minecraft/class_3543; field_9324 FOLIAGE_NOISE + f Lcom/mojang/serialization/Codec; field_26633 NETWORK_CODEC + f Lcom/mojang/serialization/Codec; field_26750 REGISTRY_ENTRY_LIST_CODEC + m (Lnet/minecraft/class_2338;I)Lnet/minecraft/class_1959$class_1963; method_48162 getPrecipitation + p 2 seaLevel + p 1 pos + m ()I method_8698 getFoliageColor + m ()I method_30773 getDefaultGrassColor + m ()Lnet/minecraft/class_12199; method_75734 getEnvironmentAttributes + m ()I method_66386 getGrassColor + m ()Z method_48163 hasPrecipitation + m ()I method_68145 getDryFoliageColor + m (Lnet/minecraft/class_1959;)Lnet/minecraft/class_4763; method_75730 method_75730 + p 0 biome + m ()Lnet/minecraft/class_5485; method_30970 getGenerationSettings + m (Lnet/minecraft/class_1959$class_5482;Lnet/minecraft/class_12199;Lnet/minecraft/class_4763;Lnet/minecraft/class_5485;Lnet/minecraft/class_5483;)V + p 5 spawnSettings + p 1 weather + p 2 effects + p 3 biomeEffects + p 4 generationSettings + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_8696 canSetSnow + p 1 world + p 2 pos + m (Lnet/minecraft/class_2338;I)F method_21740 getTemperature + p 2 seaLevel + p 1 blockPos + m (Lnet/minecraft/class_1959;)Lnet/minecraft/class_5483; method_28417 method_28417 + p 0 biome + m (Lnet/minecraft/class_2338;I)F method_8707 computeTemperature + p 1 pos + p 2 seaLevel + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75729 method_75729 + p 0 instance + m ()I method_30774 getDefaultFoliageColor + m (Lnet/minecraft/class_2338;I)Z method_39928 shouldGenerateLowerFrozenOceanSurface + p 2 seaLevel + p 1 pos + m (Lnet/minecraft/class_1959;)Lnet/minecraft/class_1959$class_5482; method_28409 method_28409 + p 0 biome + m (DD)I method_8711 getGrassColorAt + p 1 x + p 3 z + m ()Lnet/minecraft/class_4763; method_24377 getEffects + m (Lnet/minecraft/class_1959;)Lnet/minecraft/class_5485; method_28418 method_28418 + p 0 biome + m (Lnet/minecraft/class_2338;I)Z method_33599 isCold + p 2 seaLevel + p 1 pos + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Z)Z method_8685 canSetIce + p 2 pos + p 3 doWaterCheck + p 1 world + m (Lnet/minecraft/class_1959$class_5482;Lnet/minecraft/class_12199;Lnet/minecraft/class_4763;)Lnet/minecraft/class_1959; method_38103 method_38103 + p 1 attributes + p 0 weather + p 2 effects + m (Lnet/minecraft/class_2338;I)Z method_39927 doesNotSnow + p 1 pos + p 2 seaLevel + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75731 method_75731 + p 0 instance + m ()Lnet/minecraft/class_5483; method_30966 getSpawnSettings + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_8705 canSetIce + p 2 blockPos + p 1 world + m (Lnet/minecraft/class_1959;)Lnet/minecraft/class_1959$class_5482; method_28423 method_28423 + p 0 biome + m ()I method_8687 getWaterColor + m ()F method_8712 getTemperature + m (Lnet/minecraft/class_1959;)Lnet/minecraft/class_4763; method_75733 method_75733 + p 0 biome + m ()I method_68146 getDefaultDryFoliageColor +c net/minecraft/class_1959$class_5482 net/minecraft/world/biome/Biome$Weather + f Lcom/mojang/serialization/MapCodec; field_26398 CODEC + f Z comp_1187 hasPrecipitation + f F comp_846 downfall + f F comp_844 temperature + f Lnet/minecraft/class_1959$class_5484; comp_845 temperatureModifier + m (Lnet/minecraft/class_1959$class_5482;)Ljava/lang/Float; method_30786 method_30786 + p 0 weather + m (Lnet/minecraft/class_1959$class_5482;)Ljava/lang/Boolean; method_30789 method_30789 + p 0 weather + m (ZFLnet/minecraft/class_1959$class_5484;F)V + p 2 temperature + p 3 temperatureModifier + p 4 downfall + p 1 hasPrecipitation + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30782 method_30782 + p 0 instance + m (Lnet/minecraft/class_1959$class_5482;)Ljava/lang/Float; method_30788 method_30788 + p 0 weather + m (Lnet/minecraft/class_1959$class_5482;)Lnet/minecraft/class_1959$class_5484; method_30787 method_30787 + p 0 weather + m ()Z comp_1187 hasPrecipitation + m ()Lnet/minecraft/class_1959$class_5484; comp_845 temperatureModifier + m ()F comp_846 downfall + m ()F comp_844 temperature +c net/minecraft/class_1959$class_5484 net/minecraft/world/biome/Biome$TemperatureModifier + f Ljava/lang/String; field_26410 name + f Lcom/mojang/serialization/Codec; field_26409 CODEC + f Lnet/minecraft/class_1959$class_5484; field_26408 FROZEN + f Lnet/minecraft/class_1959$class_5484; field_26407 NONE + m ()Ljava/lang/String; method_30800 getName + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m (Lnet/minecraft/class_2338;F)F method_30798 getModifiedTemperature + p 1 pos + p 2 temperature +c net/minecraft/class_1959$class_1960 net/minecraft/world/biome/Biome$Builder + f Lnet/minecraft/class_5485; field_26637 generationSettings + f Lnet/minecraft/class_12199$class_12200; field_63810 environmentAttributeBuilder + f Lnet/minecraft/class_5483; field_26636 spawnSettings + f Z field_41767 precipitation + f Ljava/lang/Float; field_9351 downfall + f Lnet/minecraft/class_4763; field_22042 specialEffects + f Lnet/minecraft/class_1959$class_5484; field_26396 temperatureModifier + f Ljava/lang/Float; field_9349 temperature + m (Lnet/minecraft/class_12197;Lnet/minecraft/class_12212;Ljava/lang/Object;)Lnet/minecraft/class_1959$class_1960; method_75736 setEnvironmentAttributeModifier + p 3 value + p 1 attribute + p 2 modifier + m (Lnet/minecraft/class_4763;)Lnet/minecraft/class_1959$class_1960; method_24379 effects + p 1 effects + m (Lnet/minecraft/class_12197;Ljava/lang/Object;)Lnet/minecraft/class_1959$class_1960; method_75737 setEnvironmentAttribute + p 1 attribute + p 2 value + m (Lnet/minecraft/class_5483;)Lnet/minecraft/class_1959$class_1960; method_30974 spawnSettings + p 1 spawnSettings + m (F)Lnet/minecraft/class_1959$class_1960; method_8727 downfall + p 1 downfall + m (Lnet/minecraft/class_5485;)Lnet/minecraft/class_1959$class_1960; method_30973 generationSettings + p 1 generationSettings + m (Lnet/minecraft/class_12199$class_12200;)Lnet/minecraft/class_1959$class_1960; method_75738 addEnvironmentAttributes + p 1 builder + m (Lnet/minecraft/class_12199;)Lnet/minecraft/class_1959$class_1960; method_75739 addEnvironmentAttributes + p 1 map + m (F)Lnet/minecraft/class_1959$class_1960; method_8747 temperature + p 1 temperature + m (Z)Lnet/minecraft/class_1959$class_1960; method_48164 precipitation + p 1 precipitation + m ()Lnet/minecraft/class_1959; method_30972 build + m (Lnet/minecraft/class_1959$class_5484;)Lnet/minecraft/class_1959$class_1960; method_30777 temperatureModifier + p 1 temperatureModifier +c net/minecraft/class_1959$class_1963 net/minecraft/world/biome/Biome$Precipitation + f Ljava/lang/String; field_46252 name + f Lcom/mojang/serialization/Codec; field_46251 CODEC + f Lnet/minecraft/class_1959$class_1963; field_9383 SNOW + f Lnet/minecraft/class_1959$class_1963; field_9382 RAIN + f Lnet/minecraft/class_1959$class_1963; field_9384 NONE + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_1959$1 net/minecraft/world/biome/Biome$1 + m (I)V rehash rehash + p 1 n +c net/minecraft/class_11420 net/minecraft/dialog/type/DialogListDialog + f Lcom/mojang/serialization/MapCodec; field_60625 CODEC + f Lnet/minecraft/class_6885; comp_4308 dialogs + f Lnet/minecraft/class_11417; comp_4305 common + f Ljava/util/Optional; comp_4395 exitAction + f I comp_4310 columns + f I comp_4311 buttonWidth + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71700 method_71700 + p 0 instance + m ()Lnet/minecraft/class_6885; comp_4308 dialogs + m ()I comp_4311 buttonWidth + m (Lnet/minecraft/class_11417;Lnet/minecraft/class_6885;Ljava/util/Optional;II)V + p 1 common + p 2 dialogs + p 3 exitAction + p 4 columns + p 5 buttonWidth +c net/minecraft/class_11424 net/minecraft/dialog/type/DialogInput + f Lcom/mojang/serialization/Codec; field_60629 CODEC + f Lnet/minecraft/class_11438; comp_4313 control + f Ljava/lang/String; comp_4312 key + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71704 method_71704 + p 0 instance + m ()Ljava/lang/String; comp_4312 key + m ()Lnet/minecraft/class_11438; comp_4313 control + m (Ljava/lang/String;Lnet/minecraft/class_11438;)V + p 1 key + p 2 control +c net/minecraft/class_11422 net/minecraft/dialog/Dialogs + f Lnet/minecraft/class_11519; field_60972 BACK_BUTTON + f I field_60628 BUTTON_WIDTH + f Lnet/minecraft/class_5321; field_60971 QUICK_ACTIONS + f Lnet/minecraft/class_5321; field_60626 SERVER_LINKS + f Lnet/minecraft/class_5321; field_60627 CUSTOM_OPTIONS + m (Lnet/minecraft/class_7891;)V method_71703 bootstrap + p 0 registry + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_71702 of + p 0 id +c net/minecraft/class_11421 net/minecraft/dialog/DialogTypes + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_71701 registerAndGetDefault + p 0 registry +c net/minecraft/class_11428 net/minecraft/dialog/type/NoticeDialog + f Lnet/minecraft/class_11519; field_60633 OK_BUTTON + f Lcom/mojang/serialization/MapCodec; field_60634 CODEC + f Lnet/minecraft/class_11417; comp_4305 common + f Lnet/minecraft/class_11519; comp_4396 action + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71708 method_71708 + p 0 instance + m ()Lnet/minecraft/class_11519; comp_4396 action + m (Lnet/minecraft/class_11417;Lnet/minecraft/class_11519;)V + p 1 common + p 2 action +c net/minecraft/class_11426 net/minecraft/dialog/type/MultiActionDialog + f Lcom/mojang/serialization/MapCodec; field_60631 CODEC + f Lnet/minecraft/class_11417; comp_4305 common + f Ljava/util/List; comp_4317 actions + f Ljava/util/Optional; comp_4395 exitAction + f I comp_4310 columns + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71706 method_71706 + p 0 instance + m ()Ljava/util/List; comp_4317 actions + m (Lnet/minecraft/class_11417;Ljava/util/List;Ljava/util/Optional;I)V + p 1 common + p 2 actions + p 3 exitAction + p 4 columns +c net/minecraft/class_11407 net/minecraft/network/packet/s2c/common/ShowDialogS2CPacket + f Lnet/minecraft/class_9139; field_60604 REGISTRY_CODEC + f Lnet/minecraft/class_9139; field_60605 CODEC + f Lnet/minecraft/class_6880; comp_4281 dialog + m (Lnet/minecraft/class_8705;)V method_71668 apply + m ()Lnet/minecraft/class_6880; comp_4281 dialog + m (Lnet/minecraft/class_6880;)V + p 1 dialog +c net/minecraft/class_1973 net/minecraft/world/biome/source/CheckerboardBiomeSource + f Lcom/mojang/serialization/MapCodec; field_24715 CODEC + f I field_9480 gridSize + f Lnet/minecraft/class_6885; field_9481 biomeArray + f I field_24716 scale + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28454 method_28454 + p 0 instance + m (Lnet/minecraft/class_1973;)Ljava/lang/Integer; method_28453 method_28453 + p 0 biomeSource + m (Lnet/minecraft/class_6885;I)V + p 1 biomes + p 2 size + m (Lnet/minecraft/class_1973;)Lnet/minecraft/class_6885; method_28455 method_28455 + p 0 biomeSource +c net/minecraft/class_1972 net/minecraft/world/biome/BiomeKeys + f Lnet/minecraft/class_5321; field_35115 FROZEN_PEAKS + f Lnet/minecraft/class_5321; field_35114 WINDSWEPT_SAVANNA + f Lnet/minecraft/class_5321; field_35113 OLD_GROWTH_SPRUCE_TAIGA + f Lnet/minecraft/class_5321; field_35112 OLD_GROWTH_BIRCH_FOREST + f Lnet/minecraft/class_5321; field_35119 OLD_GROWTH_PINE_TAIGA + f Lnet/minecraft/class_5321; field_35118 SPARSE_JUNGLE + f Lnet/minecraft/class_5321; field_35117 SNOWY_PLAINS + f Lnet/minecraft/class_5321; field_35116 WINDSWEPT_HILLS + f Lnet/minecraft/class_5321; field_35111 WINDSWEPT_GRAVELLY_HILLS + f Lnet/minecraft/class_5321; field_35110 WOODED_BADLANDS + f Lnet/minecraft/class_5321; field_35120 WINDSWEPT_FOREST + f Lnet/minecraft/class_5321; field_28107 DRIPSTONE_CAVES + f Lnet/minecraft/class_5321; field_38748 MANGROVE_SWAMP + f Lnet/minecraft/class_5321; field_37543 DEEP_DARK + f Lnet/minecraft/class_5321; field_34474 JAGGED_PEAKS + f Lnet/minecraft/class_5321; field_34472 SNOWY_SLOPES + f Lnet/minecraft/class_5321; field_34471 GROVE + f Lnet/minecraft/class_5321; field_34475 STONY_PEAKS + f Lnet/minecraft/class_5321; field_34470 MEADOW + f Lnet/minecraft/class_5321; field_9470 DEEP_COLD_OCEAN + f Lnet/minecraft/class_5321; field_9471 SWAMP + f Lnet/minecraft/class_5321; field_9473 THE_VOID + f Lnet/minecraft/class_5321; field_9475 DARK_FOREST + f Lnet/minecraft/class_5321; field_9478 SNOWY_BEACH + f Lnet/minecraft/class_5321; field_22076 SOUL_SAND_VALLEY + f Lnet/minecraft/class_5321; field_22077 CRIMSON_FOREST + f Lnet/minecraft/class_5321; field_22075 WARPED_FOREST + f Lnet/minecraft/class_5321; field_29218 LUSH_CAVES + f Lnet/minecraft/class_5321; field_9408 WARM_OCEAN + f Lnet/minecraft/class_5321; field_9409 FOREST + f Lnet/minecraft/class_5321; field_23859 BASALT_DELTAS + f Lnet/minecraft/class_5321; field_9411 THE_END + f Lnet/minecraft/class_5321; field_9412 BIRCH_FOREST + f Lnet/minecraft/class_5321; field_9414 FLOWER_FOREST + f Lnet/minecraft/class_5321; field_9415 BADLANDS + f Lnet/minecraft/class_5321; field_9417 JUNGLE + f Lnet/minecraft/class_5321; field_9418 DEEP_FROZEN_OCEAN + f Lnet/minecraft/class_5321; field_9419 STONY_SHORE + f Lnet/minecraft/class_5321; field_9420 TAIGA + f Lnet/minecraft/class_5321; field_9423 OCEAN + f Lnet/minecraft/class_5321; field_9449 SAVANNA + f Lnet/minecraft/class_5321; field_9451 PLAINS + f Lnet/minecraft/class_5321; field_9453 ICE_SPIKES + f Lnet/minecraft/class_5321; field_9454 SNOWY_TAIGA + f Lnet/minecraft/class_5321; field_9455 SUNFLOWER_PLAINS + f Lnet/minecraft/class_5321; field_9457 SMALL_END_ISLANDS + f Lnet/minecraft/class_5321; field_42720 CHERRY_GROVE + f Lnet/minecraft/class_5321; field_55052 PALE_GARDEN + f Lnet/minecraft/class_5321; field_9461 NETHER_WASTES + f Lnet/minecraft/class_5321; field_9462 MUSHROOM_FIELDS + f Lnet/minecraft/class_5321; field_9463 FROZEN_RIVER + f Lnet/minecraft/class_5321; field_9465 END_BARRENS + f Lnet/minecraft/class_5321; field_9467 COLD_OCEAN + f Lnet/minecraft/class_5321; field_9424 DESERT + f Lnet/minecraft/class_5321; field_9430 SAVANNA_PLATEAU + f Lnet/minecraft/class_5321; field_9434 BEACH + f Lnet/minecraft/class_5321; field_9435 FROZEN_OCEAN + f Lnet/minecraft/class_5321; field_9438 RIVER + f Lnet/minecraft/class_5321; field_9439 DEEP_LUKEWARM_OCEAN + f Lnet/minecraft/class_5321; field_9440 BAMBOO_JUNGLE + f Lnet/minecraft/class_5321; field_9441 LUKEWARM_OCEAN + f Lnet/minecraft/class_5321; field_9442 END_HIGHLANDS + f Lnet/minecraft/class_5321; field_9443 ERODED_BADLANDS + f Lnet/minecraft/class_5321; field_9446 DEEP_OCEAN + f Lnet/minecraft/class_5321; field_9447 END_MIDLANDS + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_8775 keyOf + p 0 id +c net/minecraft/class_1966 net/minecraft/world/biome/source/BiomeSource + f Ljava/util/function/Supplier; field_20643 biomes + f Lcom/mojang/serialization/Codec; field_24713 CODEC + m (Lnet/minecraft/class_2338;IIILjava/util/function/Predicate;Lnet/minecraft/class_6544$class_6552;Lnet/minecraft/class_4538;)Lcom/mojang/datafixers/util/Pair; method_42310 locateBiome + p 1 origin + p 4 verticalBlockCheckInterval + p 5 predicate + p 2 radius + p 3 horizontalBlockCheckInterval + p 6 noiseSampler + p 7 world + m (IIIILjava/util/function/Predicate;Lnet/minecraft/class_5819;Lnet/minecraft/class_6544$class_6552;)Lcom/mojang/datafixers/util/Pair; method_8762 locateBiome + p 1 x + p 2 y + p 3 z + p 4 radius + p 5 predicate + p 6 random + p 7 noiseSampler + m (Ljava/util/List;Lnet/minecraft/class_2338;Lnet/minecraft/class_6544$class_6552;)V method_38114 addDebugInfo + p 3 noiseSampler + p 1 info + p 2 pos + m ()Ljava/util/Set; method_28443 getBiomes + m (IIIIILjava/util/function/Predicate;Lnet/minecraft/class_5819;ZLnet/minecraft/class_6544$class_6552;)Lcom/mojang/datafixers/util/Pair; method_24385 locateBiome + p 7 random + p 6 predicate + p 5 blockCheckInterval + p 9 noiseSampler + p 4 radius + p 3 z + p 2 y + p 1 x + m ()Lcom/mojang/serialization/MapCodec; method_28442 getCodec + m (IIIILnet/minecraft/class_6544$class_6552;)Ljava/util/Set; method_8763 getBiomesInArea + p 3 z + p 2 y + p 1 x + p 5 sampler + p 4 radius + m ()Ljava/util/stream/Stream; method_49494 biomeStream +c net/minecraft/class_11412 net/minecraft/server/command/DialogCommand + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_71681 executeClear + p 0 source + p 1 players + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_71679 register + p 1 registryAccess + p 0 dispatcher + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_6880;)I method_71682 executeShow + p 0 source + p 2 dialog + p 1 players + m (Lcom/mojang/brigadier/context/CommandContext;)I method_71684 method_71684 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_71680 method_71680 + p 0 context +c net/minecraft/class_11411 net/minecraft/network/packet/c2s/common/CustomClickActionC2SPacket + f Lnet/minecraft/class_9139; field_60613 CODEC + f Ljava/util/Optional; comp_4295 payload + f Lnet/minecraft/class_2960; comp_4294 id + m (Lnet/minecraft/class_8706;)V method_71678 apply + m ()Ljava/util/Optional; comp_4295 payload + m ()Lnet/minecraft/class_2960; comp_4294 id + m (Lnet/minecraft/class_2960;Ljava/util/Optional;)V + p 1 id + p 2 payload +c net/minecraft/class_11410 net/minecraft/network/packet/c2s/play/ChangeGameModeC2SPacket + f Lnet/minecraft/class_9139; field_60612 CODEC + f Lnet/minecraft/class_1934; comp_4293 mode + m (Lnet/minecraft/class_2792;)V method_71677 apply + m ()Lnet/minecraft/class_1934; comp_4293 mode + m (Lnet/minecraft/class_1934;)V + p 1 mode +c net/minecraft/class_11417 net/minecraft/dialog/DialogCommonData + f Lcom/mojang/serialization/MapCodec; field_60618 CODEC + f Lnet/minecraft/class_2561; comp_4301 title + f Z comp_4392 pause + f Ljava/util/List; comp_4304 body + f Ljava/util/Optional; comp_4302 externalTitle + f Z comp_4303 canCloseWithEscape + f Ljava/util/List; comp_4394 inputs + f Lnet/minecraft/class_11520; comp_4393 afterAction + m ()Lnet/minecraft/class_2561; method_71695 getExternalTitle + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71696 method_71696 + p 0 instance + m (Lnet/minecraft/class_11417;)Lcom/mojang/serialization/DataResult; method_72061 method_72061 + p 0 data + m ()Ljava/util/Optional; comp_4302 externalTitle + m ()Lnet/minecraft/class_2561; comp_4301 title + m ()Z comp_4392 pause + m ()Z comp_4303 canCloseWithEscape + m ()Lnet/minecraft/class_11520; comp_4393 afterAction + m ()Ljava/util/List; comp_4304 body + m ()Ljava/util/List; comp_4394 inputs + m (Lnet/minecraft/class_2561;Ljava/util/Optional;ZZLnet/minecraft/class_11520;Ljava/util/List;Ljava/util/List;)V + p 1 title + p 2 externalTitle + p 3 canCloseWithEscape + p 4 pause + p 5 afterAction + p 6 body + p 7 inputs +c net/minecraft/class_11416 net/minecraft/dialog/DialogButtonData + f I field_60616 DEFAULT_WIDTH + f Lcom/mojang/serialization/MapCodec; field_60617 CODEC + f Lnet/minecraft/class_2561; comp_4298 label + f Ljava/util/Optional; comp_4299 tooltip + f I comp_4300 width + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71694 method_71694 + p 0 instance + m (Lnet/minecraft/class_2561;I)V + p 1 label + p 2 width + m ()I comp_4300 width + m ()Lnet/minecraft/class_2561; comp_4298 label + m ()Ljava/util/Optional; comp_4299 tooltip + m (Lnet/minecraft/class_2561;Ljava/util/Optional;I)V + p 1 label + p 2 tooltip + p 3 width +c net/minecraft/class_11414 net/minecraft/dialog/type/ColumnsDialog + m ()Ljava/util/Optional; comp_4395 exitAction + m ()I comp_4310 columns +c net/minecraft/class_6834 net/minecraft/structure/StructureGeneratorFactory + m (Lnet/minecraft/class_6834$class_6835;)Ljava/util/Optional; createGenerator createGenerator + p 1 context + m (Ljava/util/function/Predicate;Ljava/util/Optional;Lnet/minecraft/class_6834$class_6835;)Ljava/util/Optional; method_39845 method_39845 + p 2 context + m (Ljava/util/function/Predicate;Lnet/minecraft/class_6622;)Lnet/minecraft/class_6834; simple simple + p 1 generator + p 0 predicate + m (Lnet/minecraft/class_2902$class_2903;Lnet/minecraft/class_6834$class_6835;)Z method_39844 method_39844 + p 1 context + m (Lnet/minecraft/class_2902$class_2903;)Ljava/util/function/Predicate; checkForBiomeOnTop checkForBiomeOnTop + p 0 heightmapType +c net/minecraft/class_6834$class_6835 net/minecraft/structure/StructureGeneratorFactory$Context + f Lnet/minecraft/class_7138; comp_573 noiseConfig + f Lnet/minecraft/class_5455; comp_314 registryManager + f Lnet/minecraft/class_5539; comp_311 world + f Lnet/minecraft/class_3485; comp_313 structureTemplateManager + f Lnet/minecraft/class_1923; comp_309 chunkPos + f Lnet/minecraft/class_1966; comp_307 biomeSource + f Lnet/minecraft/class_2794; comp_306 chunkGenerator + f J comp_308 seed + f Lnet/minecraft/class_3037; comp_310 config + f Ljava/util/function/Predicate; comp_312 validBiome + m (Lnet/minecraft/class_2902$class_2903;)Z method_39848 isBiomeValid + p 1 heightmapType + m ()Lnet/minecraft/class_7138; comp_573 noiseConfig + m ()Lnet/minecraft/class_5455; comp_314 registryManager + m ()Lnet/minecraft/class_5539; comp_311 world + m ()Lnet/minecraft/class_3037; comp_310 config + m ()Lnet/minecraft/class_1923; comp_309 chunkPos + m ()J comp_308 seed + m ()Lnet/minecraft/class_1966; comp_307 biomeSource + m ()Ljava/util/function/Predicate; comp_312 validBiome + m ()Lnet/minecraft/class_2794; comp_306 chunkGenerator + m ()Lnet/minecraft/class_3485; comp_313 structureTemplateManager + m (Lnet/minecraft/class_2794;Lnet/minecraft/class_1966;Lnet/minecraft/class_7138;JLnet/minecraft/class_1923;Lnet/minecraft/class_3037;Lnet/minecraft/class_5539;Ljava/util/function/Predicate;Lnet/minecraft/class_3485;Lnet/minecraft/class_5455;)V + p 1 chunkGenerator + p 2 biomeSource + p 3 noiseConfig + p 4 seed + p 6 chunkPos + p 7 config + p 8 world + p 9 validBiome + p 10 structureTemplateManager + p 11 registryManager +c net/minecraft/class_5504 net/minecraft/world/biome/BuiltinBiomes + m (Lnet/minecraft/class_7891;)V method_40363 bootstrap + p 0 biomeRegisterable +c net/minecraft/class_6832 net/minecraft/world/StructureLocator + f Lnet/minecraft/class_1966; field_36234 biomeSource + f I field_36226 START_NOT_PRESENT_REFERENCE + f Lnet/minecraft/class_6830; field_36227 chunkIoWorker + f Lnet/minecraft/class_5539; field_36233 world + f Lnet/minecraft/class_2794; field_36232 chunkGenerator + f Lnet/minecraft/class_3485; field_36230 structureTemplateManager + f J field_36235 seed + f Ljava/util/Map; field_36238 generationPossibilityByStructure + f Lorg/slf4j/Logger; field_36225 LOGGER + f Lnet/minecraft/class_5455; field_36228 registryManager + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_36237 cachedStructuresByChunkPos + f Lnet/minecraft/class_7138; field_37750 noiseConfig + f Lcom/mojang/datafixers/DataFixer; field_36236 dataFixer + f Lnet/minecraft/class_5321; field_36231 worldKey + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/class_3195;Lnet/minecraft/class_3449;)V method_39839 method_39839 + p 1 start + p 0 structure + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_3195;ZJ)Lnet/minecraft/class_6833; method_39832 getStructurePresence + p 1 pos + p 4 posLong + p 2 structure + p 3 skipReferencedStructures + m (Lnet/minecraft/class_1923;Ljava/util/Map;)V method_39833 cache + p 2 structureStarts + p 1 pos + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_3195;)V method_39830 incrementReferences + p 2 structure + p 1 pos + m (Lnet/minecraft/class_6830;Lnet/minecraft/class_5455;Lnet/minecraft/class_3485;Lnet/minecraft/class_5321;Lnet/minecraft/class_2794;Lnet/minecraft/class_7138;Lnet/minecraft/class_5539;Lnet/minecraft/class_1966;JLcom/mojang/datafixers/DataFixer;)V + p 1 chunkIoWorker + p 2 registryManager + p 3 structureTemplateManager + p 8 biomeSource + p 9 seed + p 11 dataFixer + p 4 worldKey + p 5 chunkGenerator + p 6 noiseConfig + p 7 world + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_3195;Lnet/minecraft/class_6874;Z)Lnet/minecraft/class_6833; method_39831 getStructurePresence + p 4 skipReferencedStructures + p 3 placement + p 2 type + p 1 pos + m (Lnet/minecraft/class_2487;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; method_39842 collectStructuresAndReferences + p 1 nbt + m (Lnet/minecraft/class_3195;Ljava/lang/Integer;)Ljava/lang/Integer; method_39836 method_39836 + p 1 references + p 0 feature + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_3195;)Z method_39829 isGenerationPossible + c {@return whether {@code structure} is able to generate in {@code pos}}\n\n

This method only performs simple checks like biomes. + p 1 pos + p 2 structure + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_3195;J)Z method_41143 method_41143 + p 3 chunkPos + m (Lnet/minecraft/class_3195;)Lit/unimi/dsi/fastutil/longs/Long2BooleanMap; method_39834 method_39834 + p 0 structure2 + m (Lnet/minecraft/class_3195;Ljava/lang/Long;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; method_39837 method_39837 + p 1 posx + p 2 referencesByStructure + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/class_3195;Z)Lnet/minecraft/class_6833; method_39840 getStructurePresence + p 3 skipReferencedStructures + p 1 referencesByStructure + p 2 structure + m (JLit/unimi/dsi/fastutil/longs/Long2BooleanMap;)V method_39827 method_39827 + p 2 generationPossibilityByChunkPos + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; method_39838 createMapIfEmpty + p 0 map + m (JLit/unimi/dsi/fastutil/objects/Object2IntMap;)V method_39828 cache + p 3 referencesByStructure + p 1 pos +c net/minecraft/class_6833 net/minecraft/world/StructurePresence + c An enum holding the presence of a certain structure start in a chunk.\n\n@see StructureLocator + f Lnet/minecraft/class_6833; field_36241 CHUNK_LOAD_NEEDED + c The chunk is not loaded. + f Lnet/minecraft/class_6833; field_36239 START_PRESENT + c The structure start is present in the chunk. + f Lnet/minecraft/class_6833; field_36240 START_NOT_PRESENT + c The structure start is not present in the chunk, or the\nstart was already referenced and the {@code skipReferencedStructures}\nis set to {@code true}. +c net/minecraft/class_6830 net/minecraft/world/storage/NbtScannable + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_6836;)Ljava/util/concurrent/CompletableFuture; method_39795 scanChunk + p 1 pos + p 2 scanner +c net/minecraft/class_6825 net/minecraft/world/gen/feature/VillagePlacedFeatures + f Lnet/minecraft/class_5321; field_36195 PILE_HAY + f Lnet/minecraft/class_5321; field_36196 PILE_MELON + f Lnet/minecraft/class_5321; field_36205 FLOWER_PLAIN + f Lnet/minecraft/class_5321; field_36206 PATCH_TAIGA_GRASS + f Lnet/minecraft/class_5321; field_36207 PATCH_BERRY_BUSH + f Lnet/minecraft/class_5321; field_36201 ACACIA + f Lnet/minecraft/class_5321; field_36202 SPRUCE + f Lnet/minecraft/class_5321; field_36203 PINE + f Lnet/minecraft/class_5321; field_36204 PATCH_CACTUS + f Lnet/minecraft/class_5321; field_36197 PILE_SNOW + f Lnet/minecraft/class_5321; field_36198 PILE_ICE + f Lnet/minecraft/class_5321; field_36199 PILE_PUMPKIN + f Lnet/minecraft/class_5321; field_36200 OAK + m (Lnet/minecraft/class_7891;)V method_46868 bootstrap + p 0 featureRegisterable +c net/minecraft/class_6826 net/minecraft/util/FixedBufferInputStream + c A buffered input stream that uses a fixed-size buffer array. + f Ljava/io/InputStream; field_36210 stream + f I field_36209 DEFAULT_BUFFER_SIZE + f I field_36212 end + f [B field_36211 buf + f I field_36213 start + m ()I method_39779 getAvailableBuffer + m ([BII)I read read + p 3 length + p 2 offset + p 1 buf + m (Ljava/io/InputStream;I)V + p 1 stream + p 2 size + m (Ljava/io/InputStream;)V + p 1 stream + m (J)J skip skip + p 1 n + m ()V method_39780 fill +c net/minecraft/class_5513 net/minecraft/server/filter/TextStream + f Lnet/minecraft/class_5513; field_28862 UNFILTERED + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; method_31288 filterText + p 1 text + m ()V method_31290 onDisconnect + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; method_31289 filterTexts + p 1 texts + m ()V method_31287 onConnect +c net/minecraft/class_6845 net/minecraft/nbt/scanner/SimpleNbtScanner + c A simple NBT scanner visits all elements shallowly, allowing\nimplementations to override it and perform more actions. + f Lnet/minecraft/class_6845; field_36264 NOOP + c The simple NBT scanner that performs no action. +c net/minecraft/class_6846 net/minecraft/unused/packageinfo/PackageInfo6846 +c net/minecraft/class_6843 net/minecraft/nbt/scanner/NbtScanQuery + c A query for scanning the NBT using {@link ExclusiveNbtCollector} or\n{@link SelectiveNbtCollector}. + f Ljava/lang/String; comp_320 key + f Lnet/minecraft/class_4614; comp_319 type + f Ljava/util/List; comp_318 path + m (Lnet/minecraft/class_4614;Ljava/lang/String;)V + p 2 key + p 1 type + m ()Ljava/lang/String; comp_320 key + m (Ljava/lang/String;Lnet/minecraft/class_4614;Ljava/lang/String;)V + p 2 type + p 1 path + p 3 key + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_4614;Ljava/lang/String;)V + p 3 type + p 4 key + p 1 path1 + p 2 path2 + m ()Ljava/util/List; comp_318 path + m ()Lnet/minecraft/class_4614; comp_319 type + m (Ljava/util/List;Lnet/minecraft/class_4614;Ljava/lang/String;)V + p 1 path + p 2 type + p 3 key +c net/minecraft/class_5514 net/minecraft/server/filter/V0TextFilterer + f Ljava/lang/String; field_38055 CHAT_ENDPOINT + f Ljava/lang/String; field_26829 apiKey + f Lnet/minecraft/class_5514$class_7241; field_38058 leaveEncoder + f Lnet/minecraft/class_5514$class_7241; field_38057 joinEncoder + f Ljava/net/URL; field_26827 joinEndpoint + f Ljava/net/URL; field_26828 leaveEndpoint + m (Ljava/net/URL;Lnet/minecraft/class_9847$class_7242;Ljava/net/URL;Lnet/minecraft/class_5514$class_7241;Ljava/net/URL;Lnet/minecraft/class_5514$class_7241;Ljava/lang/String;Lnet/minecraft/class_9847$class_5515;Ljava/util/concurrent/ExecutorService;)V + p 4 joinEncoder + p 3 joinEndpoint + p 6 leaveEncoder + p 5 leaveEndpoint + p 2 messageEncoder + p 1 chatEndpoint + p 8 ignorer + p 7 apiKey + p 9 threadPool + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/authlib/GameProfile;Ljava/lang/String;)Lcom/google/gson/JsonObject; method_61283 method_61283 + p 3 profile + p 4 message + m (Lcom/google/gson/JsonObject;Ljava/net/URL;)V method_31304 sendRequest + p 2 endpoint + p 1 payload + m (ILjava/lang/String;Ljava/lang/String;Lcom/mojang/authlib/GameProfile;Ljava/lang/String;)Lcom/google/gson/JsonObject; method_61280 method_61280 + p 4 message + p 3 profile + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/authlib/GameProfile;)Lcom/google/gson/JsonObject; method_61282 method_61282 + p 2 profile + m (Lcom/mojang/authlib/GameProfile;Ljava/net/URL;Lnet/minecraft/class_5514$class_7241;Ljava/util/concurrent/Executor;)V method_31299 sendJoinOrLeaveRequest + p 4 executor + p 1 gameProfile + p 2 endpoint + p 3 profileEncoder + m (Ljava/lang/String;)Lnet/minecraft/class_9847; method_33805 load + p 0 config +c net/minecraft/class_5514$class_7241 net/minecraft/server/filter/V0TextFilterer$ProfileEncoder + m (Lcom/mojang/authlib/GameProfile;)Lcom/google/gson/JsonObject; encode encode + p 1 gameProfile +c net/minecraft/class_6844 net/minecraft/nbt/scanner/NbtCollector + c An NBT collector scans an NBT structure and builds an object\nrepresentation out of it. + f Ljava/util/Deque; field_58030 queue + m ()Lnet/minecraft/class_2520; method_39887 getRoot + m (Lnet/minecraft/class_2520;)V method_39883 append + p 1 nbt + m ()I method_39888 getDepth + m (Lnet/minecraft/class_4614;)V method_39886 pushStack + p 1 type +c net/minecraft/class_6844$class_10910 net/minecraft/nbt/scanner/NbtCollector$CompoundNode + f Lnet/minecraft/class_2487; field_58031 value + f Ljava/lang/String; field_58032 key +c net/minecraft/class_6844$class_10913 net/minecraft/nbt/scanner/NbtCollector$RootNode + f Lnet/minecraft/class_2520; field_58034 value +c net/minecraft/class_6844$class_10912 net/minecraft/nbt/scanner/NbtCollector$ListNode + f Lnet/minecraft/class_2499; field_58033 value +c net/minecraft/class_6844$class_10911 net/minecraft/nbt/scanner/NbtCollector$Node + m ()Lnet/minecraft/class_2520; method_68664 getValue + m (Lnet/minecraft/class_2520;)V method_68666 append + p 1 value + m (Ljava/lang/String;)V method_68665 setKey + p 1 key +c net/minecraft/class_6841 net/minecraft/nbt/scanner/SelectiveNbtCollector + c A selective NBT collector builds an NBT object including only the\nprescribed queries.\n\n@see ExclusiveNbtCollector + f Ljava/util/Deque; field_36260 selectionStack + f I field_36258 queriesLeft + f Ljava/util/Set; field_36259 allPossibleTypes + m ([Lnet/minecraft/class_6843;)V + p 1 queries + m ()I method_39879 getQueriesLeft +c net/minecraft/class_6842 net/minecraft/nbt/scanner/NbtTreeNode + c The tree node for representing NBT. + f Ljava/util/Map; comp_323 selectedFields + c the keys to select ("leaves") + f I comp_315 depth + c the depth of the node, starting from {@code 1} + f Ljava/util/Map; comp_317 fieldsToRecurse + c The keys to check recursively ("branches") + m (Ljava/lang/String;)Lnet/minecraft/class_6842; method_39880 method_39880 + p 1 path + m ()Lnet/minecraft/class_6842; method_40060 createRoot + c {@return the root node}\n\n@implNote The root node has the depth of {@code 1}. + m (Lnet/minecraft/class_4614;Ljava/lang/String;)Z method_40061 isTypeEqual + c {@return whether the queried type for the key {@code key} matches {@code type}} + p 2 key + p 1 type + m (I)V + p 1 depth + m (Lnet/minecraft/class_6843;)V method_39881 add + p 1 query + m ()I comp_315 depth + m ()Ljava/util/Map; comp_317 fieldsToRecurse + m ()Ljava/util/Map; comp_323 selectedFields + m (ILjava/util/Map;Ljava/util/Map;)V + p 1 depth + p 2 selectedFields + p 3 fieldsToRecurse +c net/minecraft/class_6836 net/minecraft/nbt/scanner/NbtScanner + c An NBT scanner may reduce unnecessary data parsing to allow finding\ndesired information in an NBT structure as fast as possible.\n\n

Call format: start -> VisitBody\n
\nVisitBody:
\n{ visitEnd | visitString | visitByte | visitShort | visitInt
\n| visitLong | visitFloat | visitDouble | visitByteArray
\n| visitIntArray | visitLongArray
\n| visitListMeta -> [startListItem -> VisitBody]* -> endNested
\n| [visitSubNbtType -> startSubNbt -> VisitBody]* -> endNested
\n}\n\n

The visit order is depth-first. + m ()Lnet/minecraft/class_6836$class_6838; method_39870 endNested + c Ends a nested visit.\n\n

This is guaranteed to be called once for each call to {@link #start},\n{@link #visitSubNbtType}, and {@link #startListItem} where the list or\nthe compound NBT type is passed, unless the visit is halted. + m (Lnet/minecraft/class_4614;)Lnet/minecraft/class_6836$class_6838; method_39871 start + c Starts a visit to an NBT structure.\n\n@see #startSubNbt\n@see #startListItem + p 1 rootType + m (S)Lnet/minecraft/class_6836$class_6838; method_39866 visitShort + p 1 value + m (Lnet/minecraft/class_4614;)Lnet/minecraft/class_6836$class_6837; method_39863 visitSubNbtType + p 1 type + m (Lnet/minecraft/class_4614;I)Lnet/minecraft/class_6836$class_6837; method_39872 startListItem + c Starts a visit to an NBT structure in an element of a list NBT.\n\n@see #startSubNbt\n@see #start + p 2 index + p 1 type + m ([I)Lnet/minecraft/class_6836$class_6838; method_39868 visitIntArray + p 1 value + m (Lnet/minecraft/class_4614;I)Lnet/minecraft/class_6836$class_6838; method_39864 visitListMeta + p 1 entryType + p 2 length + m ([J)Lnet/minecraft/class_6836$class_6838; method_39869 visitLongArray + p 1 value + m (B)Lnet/minecraft/class_6836$class_6838; method_39857 visitByte + p 1 value + m (Lnet/minecraft/class_4614;Ljava/lang/String;)Lnet/minecraft/class_6836$class_6837; method_39865 startSubNbt + c Starts a visit to an NBT structure in the sub NBT of a compound NBT.\n\n@see #start\n@see #startListItem + p 1 type + p 2 key + m ()Lnet/minecraft/class_6836$class_6838; method_39856 visitEnd + m (I)Lnet/minecraft/class_6836$class_6838; method_39860 visitInt + p 1 value + m (J)Lnet/minecraft/class_6836$class_6838; method_39861 visitLong + p 1 value + m (Ljava/lang/String;)Lnet/minecraft/class_6836$class_6838; method_39862 visitString + p 1 value + m (D)Lnet/minecraft/class_6836$class_6838; method_39858 visitDouble + p 1 value + m ([B)Lnet/minecraft/class_6836$class_6838; method_39867 visitByteArray + p 1 value + m (F)Lnet/minecraft/class_6836$class_6838; method_39859 visitFloat + p 1 value +c net/minecraft/class_6836$class_6838 net/minecraft/nbt/scanner/NbtScanner$Result + f Lnet/minecraft/class_6836$class_6838; field_36253 CONTINUE + c Proceed to visit more data of this element. + f Lnet/minecraft/class_6836$class_6838; field_36254 BREAK + c Skips the current element under scan. + f Lnet/minecraft/class_6836$class_6838; field_36255 HALT + c Halts the whole scanning completely. +c net/minecraft/class_6836$class_6837 net/minecraft/nbt/scanner/NbtScanner$NestedResult + f Lnet/minecraft/class_6836$class_6837; field_36249 SKIP + c Skips this element and visit the next list element or sub NBT. + f Lnet/minecraft/class_6836$class_6837; field_36250 BREAK + c Skips the whole list or compound NBT currently under scan. Will make a\ncall to {@link NbtScanner#endNested()}. + f Lnet/minecraft/class_6836$class_6837; field_36251 HALT + c Halts the whole scanning completely. + f Lnet/minecraft/class_6836$class_6837; field_36248 ENTER + c Proceeds to visit more data of this element, or to enter this element.\n(this element is a list element or a sub NBT) +c net/minecraft/class_9089 net/minecraft/network/packet/CookiePackets + f Lnet/minecraft/class_9145; field_47894 COOKIE_RESPONSE + f Lnet/minecraft/class_9145; field_47893 COOKIE_REQUEST + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_55850 c2s + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_55849 s2c + p 0 id +c net/minecraft/class_9088 net/minecraft/network/packet/s2c/common/CookieRequestS2CPacket + f Lnet/minecraft/class_9139; field_47892 CODEC + f Lnet/minecraft/class_2960; comp_2194 key + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_55848 write + p 1 buf + m (Lnet/minecraft/class_9087;)V method_55847 apply + m ()Lnet/minecraft/class_2960; comp_2194 key + m (Lnet/minecraft/class_2960;)V + p 1 key +c net/minecraft/class_9087 net/minecraft/network/listener/ClientCookieRequestPacketListener + m (Lnet/minecraft/class_9088;)V method_55845 onCookieRequest + p 1 packet +c net/minecraft/class_6812 net/minecraft/world/gen/feature/UndergroundPlacedFeatures + f Lnet/minecraft/class_5321; field_35982 FOSSIL_UPPER + f Lnet/minecraft/class_5321; field_35993 LUSH_CAVES_CEILING_VEGETATION + f Lnet/minecraft/class_5321; field_35981 MONSTER_ROOM_DEEP + f Lnet/minecraft/class_5321; field_35992 LUSH_CAVES_CLAY + f Lnet/minecraft/class_5321; field_35980 MONSTER_ROOM + f Lnet/minecraft/class_5321; field_35991 LUSH_CAVES_VEGETATION + f Lnet/minecraft/class_5321; field_35990 CAVE_VINES + f Lnet/minecraft/class_5321; field_38037 SCULK_VEIN + f Lnet/minecraft/class_5321; field_38036 SCULK_PATCH_DEEP_DARK + f Lnet/minecraft/class_5321; field_35989 ROOTED_AZALEA_TREE + f Lnet/minecraft/class_5321; field_35988 GLOW_LICHEN + f Lnet/minecraft/class_5321; field_35987 UNDERWATER_MAGMA + f Lnet/minecraft/class_5321; field_35986 POINTED_DRIPSTONE + f Lnet/minecraft/class_5321; field_35985 LARGE_DRIPSTONE + f Lnet/minecraft/class_5321; field_35996 AMETHYST_GEODE + f Lnet/minecraft/class_5321; field_35984 DRIPSTONE_CLUSTER + f Lnet/minecraft/class_5321; field_35995 CLASSIC_VINES_CAVE_FEATURE + f Lnet/minecraft/class_5321; field_35983 FOSSIL_LOWER + f Lnet/minecraft/class_5321; field_35994 SPORE_BLOSSOM + f Lnet/minecraft/class_5321; field_38478 SCULK_PATCH_ANCIENT_CITY + m (Lnet/minecraft/class_7891;)V method_46860 bootstrap + p 0 featureRegisterable +c net/minecraft/class_6813 net/minecraft/world/gen/feature/EndPlacedFeatures + f Lnet/minecraft/class_5321; field_52310 END_PLATFORM + f Lnet/minecraft/class_5321; field_35999 CHORUS_PLANT + f Lnet/minecraft/class_5321; field_35998 END_GATEWAY_RETURN + f Lnet/minecraft/class_5321; field_35997 END_SPIKE + f Lnet/minecraft/class_5321; field_36000 END_ISLAND_DECORATED + m (Lnet/minecraft/class_7891;)V method_46861 bootstrap + p 0 featureRegisterable +c net/minecraft/class_6810 net/minecraft/unused/packageinfo/PackageInfo6810 +c net/minecraft/class_6811 net/minecraft/world/gen/feature/OceanPlacedFeatures + f Lnet/minecraft/class_5321; field_35970 SEAGRASS_RIVER + f Lnet/minecraft/class_5321; field_35967 SEAGRASS_WARM + f Lnet/minecraft/class_5321; field_35978 KELP_WARM + f Lnet/minecraft/class_5321; field_35977 KELP_COLD + f Lnet/minecraft/class_5321; field_35976 SEA_PICKLE + f Lnet/minecraft/class_5321; field_35974 SEAGRASS_DEEP_COLD + f Lnet/minecraft/class_5321; field_35973 SEAGRASS_DEEP + f Lnet/minecraft/class_5321; field_35972 SEAGRASS_DEEP_WARM + f Lnet/minecraft/class_5321; field_35971 SEAGRASS_SWAMP + f Lnet/minecraft/class_5321; field_35969 SEAGRASS_COLD + f Lnet/minecraft/class_5321; field_35968 SEAGRASS_NORMAL + f Lnet/minecraft/class_5321; field_35979 WARM_OCEAN_VEGETATION + m (Lnet/minecraft/class_7891;)V method_46859 bootstrap + p 0 featureRegisterable + m (I)Ljava/util/List; method_39731 seagrassModifiers + p 0 count +c net/minecraft/class_6809 net/minecraft/world/gen/feature/VegetationConfiguredFeatures + f Lnet/minecraft/class_5321; field_35946 PATCH_SUNFLOWER + f Lnet/minecraft/class_5321; field_35934 TREES_PLAINS + f Lnet/minecraft/class_5321; field_35966 DARK_FOREST_VEGETATION + f Lnet/minecraft/class_5321; field_35954 PATCH_MELON + f Lnet/minecraft/class_5321; field_55890 WILDFLOWERS_MEADOW + f Lnet/minecraft/class_5321; field_35942 BAMBOO_SOME_PODZOL + f Lnet/minecraft/class_5321; field_35930 BIRCH_TALL + f Lnet/minecraft/class_5321; field_35962 FLOWER_SWAMP + f Lnet/minecraft/class_5321; field_57968 TREES_BIRCH + f Lnet/minecraft/class_5321; field_35950 PATCH_GRASS + f Lnet/minecraft/class_5321; field_54886 PALE_MOSS_PATCH_BONEMEAL + f Lnet/minecraft/class_5321; field_35938 TREES_JUNGLE + f Lnet/minecraft/class_5321; field_35926 MEADOW_TREES + f Lnet/minecraft/class_5321; field_35958 PATCH_CACTUS + f Lnet/minecraft/class_5321; field_42961 FLOWER_CHERRY + f Lnet/minecraft/class_5321; field_35957 PATCH_LARGE_FERN + f Lnet/minecraft/class_5321; field_55891 PATCH_GRASS_MEADOW + f Lnet/minecraft/class_5321; field_35945 PATCH_RED_MUSHROOM + f Lnet/minecraft/class_5321; field_35933 TREES_BIRCH_AND_OAK + f Lnet/minecraft/class_5321; field_35965 FOREST_FLOWERS + f Lnet/minecraft/class_5321; field_35953 PATCH_DEAD_BUSH + f Lnet/minecraft/class_5321; field_35941 BAMBOO_NO_PODZOL + f Lnet/minecraft/class_5321; field_35961 FLOWER_FLOWER_FOREST + f Lnet/minecraft/class_5321; field_57967 TREES_SNOWY + f Lnet/minecraft/class_5321; field_35929 TREES_SAVANNA + f Lnet/minecraft/class_5321; field_35949 PATCH_TAIGA_GRASS + f Lnet/minecraft/class_5321; field_35937 TREES_OLD_GROWTH_PINE_TAIGA + f Lnet/minecraft/class_5321; field_35925 TREES_FLOWER_FOREST + f Lnet/minecraft/class_5321; field_56512 PATCH_BUSH + f Lnet/minecraft/class_5321; field_55184 PALE_FOREST_FLOWERS + f Lnet/minecraft/class_5321; field_35956 PATCH_TALL_GRASS + f Lnet/minecraft/class_5321; field_55892 PATCH_LEAF_LITTER + f Lnet/minecraft/class_5321; field_35944 PATCH_BROWN_MUSHROOM + f Lnet/minecraft/class_5321; field_35932 TREES_WATER + f Lnet/minecraft/class_5321; field_35964 FLOWER_MEADOW + f Lnet/minecraft/class_5321; field_57966 TREES_BADLANDS + f Lnet/minecraft/class_5321; field_35952 SINGLE_PIECE_OF_GRASS + f Lnet/minecraft/class_5321; field_35940 MUSHROOM_ISLAND_VEGETATION + f Lnet/minecraft/class_5321; field_35928 TREES_GROVE + f Lnet/minecraft/class_5321; field_35948 PATCH_BERRY_BUSH + f Lnet/minecraft/class_5321; field_35936 TREES_OLD_GROWTH_SPRUCE_TAIGA + f Lnet/minecraft/class_5321; field_54884 PALE_GARDEN_VEGETATION + f Lnet/minecraft/class_5321; field_56597 PATCH_DRY_GRASS + f Lnet/minecraft/class_5321; field_56513 PATCH_FIREFLY_BUSH + f Lnet/minecraft/class_5321; field_35960 FLOWER_DEFAULT + f Lnet/minecraft/class_5321; field_38812 MANGROVE_VEGETATION + f Lnet/minecraft/class_5321; field_55185 PALE_MOSS_PATCH + f Lnet/minecraft/class_5321; field_35935 TREES_SPARSE_JUNGLE + f Lnet/minecraft/class_5321; field_35955 PATCH_WATERLILY + f Lnet/minecraft/class_5321; field_35943 VINES + f Lnet/minecraft/class_5321; field_35931 TREES_WINDSWEPT_HILLS + f Lnet/minecraft/class_5321; field_35963 FLOWER_PLAIN + f Lnet/minecraft/class_5321; field_35951 PATCH_GRASS_JUNGLE + f Lnet/minecraft/class_5321; field_54885 PALE_MOSS_VEGETATION + f Lnet/minecraft/class_5321; field_35939 BAMBOO_VEGETATION + f Lnet/minecraft/class_5321; field_35927 TREES_TAIGA + f Lnet/minecraft/class_5321; field_35959 PATCH_SUGAR_CANE + f Lnet/minecraft/class_5321; field_35947 PATCH_PUMPKIN + f Lnet/minecraft/class_5321; field_55889 WILDFLOWERS_BIRCH_FOREST + f F field_57969 FALLEN_TREE_RARITY + f Lnet/minecraft/class_5321; field_55186 FLOWER_PALE_GARDEN + m (Lnet/minecraft/class_7891;)V method_46858 bootstrap + p 0 featureRegisterable + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_6658; method_67480 wouldSurviveNearWaterModifier + p 0 block + m (Lnet/minecraft/class_4651;I)Lnet/minecraft/class_4638; method_39717 createRandomPatchFeatureConfig + p 1 tries + p 0 block + m (Lnet/minecraft/class_2248;IILnet/minecraft/class_2758;Lnet/minecraft/class_2754;)Lnet/minecraft/class_6012$class_6006; method_66561 segmentedBlock + p 0 block + p 1 min + p 2 max + p 3 amountProperty + p 4 facingProperty + m (II)Lnet/minecraft/class_6012$class_6006; method_66559 leafLitter + p 0 min + p 1 max + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_6012$class_6006; method_66560 flowerbed + p 0 flowerbed +c net/minecraft/class_6807 net/minecraft/world/gen/feature/PileConfiguredFeatures + f Lnet/minecraft/class_5321; field_35883 PILE_HAY + f Lnet/minecraft/class_5321; field_35884 PILE_MELON + f Lnet/minecraft/class_5321; field_35885 PILE_SNOW + f Lnet/minecraft/class_5321; field_35886 PILE_ICE + f Lnet/minecraft/class_5321; field_35887 PILE_PUMPKIN + m (Lnet/minecraft/class_7891;)V method_46856 bootstrap + p 0 featureRegisterable +c net/minecraft/class_6808 net/minecraft/world/gen/feature/TreeConfiguredFeatures + f Lnet/minecraft/class_5321; field_35912 FANCY_OAK + f Lnet/minecraft/class_5321; field_57962 FALLEN_JUNGLE_TREE + f Lnet/minecraft/class_5321; field_35900 CRIMSON_FUNGUS_PLANTED + f Lnet/minecraft/class_5321; field_35920 JUNGLE_BUSH + f Lnet/minecraft/class_5321; field_35908 ACACIA + f Lnet/minecraft/class_5321; field_35916 MEGA_PINE + f Lnet/minecraft/class_5321; field_35899 CRIMSON_FUNGUS + f Lnet/minecraft/class_5321; field_35904 HUGE_RED_MUSHROOM + f Lnet/minecraft/class_5321; field_35924 OAK_BEES_005 + f Lnet/minecraft/class_5321; field_42959 CHERRY_BEES_005 + f Lnet/minecraft/class_5321; field_35891 FANCY_OAK_BEES_0002 + f Lnet/minecraft/class_5321; field_55888 FANCY_OAK_LEAF_LITTER + f Lnet/minecraft/class_5321; field_55884 BIRCH_BEES_0002_LEAF_LITTER + f Lnet/minecraft/class_5321; field_35923 OAK_BEES_002 + f Lnet/minecraft/class_5321; field_35911 JUNGLE_TREE + f Lnet/minecraft/class_5321; field_57961 FALLEN_OAK_TREE + f Lnet/minecraft/class_5321; field_57965 FALLEN_SUPER_BIRCH_TREE + f Lnet/minecraft/class_5321; field_35894 FANCY_OAK_BEES + f Lnet/minecraft/class_5321; field_35919 SWAMP_OAK + f Lnet/minecraft/class_5321; field_35907 BIRCH + f Lnet/minecraft/class_5321; field_35915 MEGA_SPRUCE + f Lnet/minecraft/class_5321; field_35903 HUGE_BROWN_MUSHROOM + f Lnet/minecraft/class_5321; field_35890 BIRCH_BEES_005 + f Lnet/minecraft/class_5321; field_55885 OAK_LEAF_LITTER + f Lnet/minecraft/class_5321; field_35922 OAK_BEES_0002 + f Lnet/minecraft/class_5321; field_35910 PINE + f Lnet/minecraft/class_5321; field_57964 FALLEN_BIRCH_TREE + f Lnet/minecraft/class_5321; field_35918 SUPER_BIRCH_BEES + f Lnet/minecraft/class_5321; field_35906 DARK_OAK + f Lnet/minecraft/class_5321; field_35889 BIRCH_BEES_002 + f Lnet/minecraft/class_5321; field_35914 MEGA_JUNGLE_TREE + f Lnet/minecraft/class_5321; field_54882 PALE_OAK + f Lnet/minecraft/class_5321; field_35902 WARPED_FUNGUS_PLANTED + f Lnet/minecraft/class_5321; field_35893 FANCY_OAK_BEES_005 + f Lnet/minecraft/class_5321; field_55183 PALE_OAK_BONEMEAL + f Lnet/minecraft/class_5321; field_55886 DARK_OAK_LEAF_LITTER + f Lnet/minecraft/class_5321; field_38810 MANGROVE + f Lnet/minecraft/class_5321; field_35901 WARPED_FUNGUS + f Lnet/minecraft/class_5321; field_57963 FALLEN_SPRUCE_TREE + f Lnet/minecraft/class_5321; field_35921 AZALEA_TREE + f Lnet/minecraft/class_5321; field_35909 SPRUCE + f Lnet/minecraft/class_5321; field_35917 SUPER_BIRCH_BEES_0002 + f Lnet/minecraft/class_5321; field_35905 OAK + f Lnet/minecraft/class_5321; field_35888 BIRCH_BEES_0002 + f Lnet/minecraft/class_5321; field_35913 JUNGLE_TREE_NO_VINE + f Lnet/minecraft/class_5321; field_54883 PALE_OAK_CREAKING + f Lnet/minecraft/class_5321; field_35892 FANCY_OAK_BEES_002 + f Lnet/minecraft/class_5321; field_55887 BIRCH_LEAF_LITTER + f Lnet/minecraft/class_5321; field_42960 CHERRY + f Lnet/minecraft/class_5321; field_38811 TALL_MANGROVE + m ()Lnet/minecraft/class_4643$class_4644; method_39715 fancyOak + m (Lnet/minecraft/class_2248;II)Lnet/minecraft/class_10854$class_10855; method_68555 fallen + p 2 maxLength + p 0 log + p 1 minLength + m ()Lnet/minecraft/class_4643$class_4644; method_39714 jungle + m ()Lnet/minecraft/class_4643$class_4644; method_49392 cherry + m (Lnet/minecraft/class_7891;)V method_46857 bootstrap + p 0 featureRegisterable + m ()Lnet/minecraft/class_4643$class_4644; method_39710 oak + m ()Lnet/minecraft/class_10854$class_10855; method_68558 fallenSpruce + m ()Lnet/minecraft/class_4643$class_4644; method_66558 darkOak + m (I)Lnet/minecraft/class_10854$class_10855; method_68554 fallenBirch + p 0 maxLength + m ()Lnet/minecraft/class_4643$class_4644; method_39713 superBirch + m ()Lnet/minecraft/class_10854$class_10855; method_68557 fallenJungle + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;IIII)Lnet/minecraft/class_4643$class_4644; method_39711 builder + p 0 log + p 1 leaves + p 2 baseHeight + p 3 firstRandomHeight + p 4 secondRandomHeight + p 5 radius + m ()Lnet/minecraft/class_4643$class_4644; method_39712 birch + m ()Lnet/minecraft/class_10854$class_10855; method_68556 fallenOak +c net/minecraft/class_6805 net/minecraft/world/gen/feature/NetherConfiguredFeatures + f Lnet/minecraft/class_5321; field_35822 GLOWSTONE_EXTRA + f Lnet/minecraft/class_5321; field_35833 WEEPING_VINES + f Lnet/minecraft/class_5321; field_35834 PATCH_CRIMSON_ROOTS + f Lnet/minecraft/class_5321; field_35824 CRIMSON_FOREST_VEGETATION + f Lnet/minecraft/class_5321; field_35835 BASALT_PILLAR + f Lnet/minecraft/class_5321; field_35825 CRIMSON_FOREST_VEGETATION_BONEMEAL + f Lnet/minecraft/class_5321; field_35836 SPRING_LAVA_NETHER + f Lnet/minecraft/class_5321; field_35837 SPRING_NETHER_CLOSED + f Lnet/minecraft/class_5321; field_35827 WARPED_FOREST_VEGETATION + f Lnet/minecraft/class_5321; field_35838 SPRING_NETHER_OPEN + f Lnet/minecraft/class_5321; field_35817 DELTA + f Lnet/minecraft/class_5321; field_35828 WARPED_FOREST_VEGETATION_BONEMEAL + f Lnet/minecraft/class_5321; field_35839 PATCH_FIRE + f Lnet/minecraft/class_5321; field_35818 SMALL_BASALT_COLUMNS + f Lnet/minecraft/class_5321; field_35829 NETHER_SPROUTS + f Lnet/minecraft/class_5321; field_35840 PATCH_SOUL_FIRE + f Lnet/minecraft/class_5321; field_35830 NETHER_SPROUTS_BONEMEAL + f Lnet/minecraft/class_5321; field_35820 BASALT_BLOBS + f Lnet/minecraft/class_5321; field_35831 TWISTING_VINES + f Lnet/minecraft/class_5321; field_35821 BLACKSTONE_BLOBS + f Lnet/minecraft/class_5321; field_35832 TWISTING_VINES_BONEMEAL + f Lnet/minecraft/class_5321; field_35819 SMALL_BASALT_COLUMNS_TEMP + m (Lnet/minecraft/class_7891;)V method_46854 bootstrap + p 0 featureRegisterable +c net/minecraft/class_6806 net/minecraft/world/gen/feature/OreConfiguredFeatures + f Lnet/minecraft/class_5321; field_35845 ORE_DIAMOND_SMALL + f Lnet/minecraft/class_5321; field_35879 ORE_TUFF + f Lnet/minecraft/class_5321; field_35847 ORE_DIAMOND_BURIED + f Lnet/minecraft/class_5321; field_35869 ORE_SOUL_SAND + f Lnet/minecraft/class_5321; field_35849 ORE_LAPIS_BURIED + f Lnet/minecraft/class_5321; field_35881 ORE_COAL_BURIED + f Lnet/minecraft/class_5321; field_35871 ORE_QUARTZ + f Lnet/minecraft/class_5321; field_35851 ORE_EMERALD + f Lnet/minecraft/class_5321; field_35873 ORE_BLACKSTONE + f Lnet/minecraft/class_5321; field_35841 ORE_IRON_SMALL + f Lnet/minecraft/class_5321; field_35853 ORE_ANCIENT_DEBRIS_SMALL + f Lnet/minecraft/class_5321; field_35875 ORE_GRAVEL + f Lnet/minecraft/class_5321; field_35843 ORE_GOLD_BURIED + f Lnet/minecraft/class_5321; field_35855 ORE_COPPER_LARGE + f Lnet/minecraft/class_5321; field_35877 ORE_DIORITE + f Lnet/minecraft/class_5321; field_45663 ORE_DIAMOND_MEDIUM + f Lnet/minecraft/class_5321; field_35856 ORE_CLAY + f Lnet/minecraft/class_5321; field_35878 ORE_ANDESITE + f Lnet/minecraft/class_5321; field_35846 ORE_DIAMOND_LARGE + f Lnet/minecraft/class_5321; field_35868 ORE_MAGMA + f Lnet/minecraft/class_5321; field_35848 ORE_LAPIS + f Lnet/minecraft/class_5321; field_35870 ORE_NETHER_GOLD + f Lnet/minecraft/class_5321; field_35882 ORE_IRON + f Lnet/minecraft/class_5321; field_35850 ORE_INFESTED + f Lnet/minecraft/class_5321; field_35872 ORE_GRAVEL_NETHER + f Lnet/minecraft/class_5321; field_35852 ORE_ANCIENT_DEBRIS_LARGE + f Lnet/minecraft/class_5321; field_35874 ORE_DIRT + f Lnet/minecraft/class_5321; field_35842 ORE_GOLD + f Lnet/minecraft/class_5321; field_35854 ORE_COPPER_SMALL + f Lnet/minecraft/class_5321; field_35876 ORE_GRANITE + f Lnet/minecraft/class_5321; field_35844 ORE_REDSTONE + f Lnet/minecraft/class_5321; field_35880 ORE_COAL + m (Lnet/minecraft/class_7891;)V method_46855 bootstrap + p 0 featureRegisterable +c net/minecraft/class_6803 net/minecraft/world/gen/feature/ConfiguredFeatures + m (ILnet/minecraft/class_6880;)Lnet/minecraft/class_4638; method_39703 createRandomPatchFeatureConfig + p 0 tries + p 1 feature + m (Lnet/minecraft/class_7891;)V method_39702 bootstrap + p 0 featureRegisterable + m (Lnet/minecraft/class_3031;Lnet/minecraft/class_3037;Ljava/util/List;)Lnet/minecraft/class_4638; method_39705 createRandomPatchFeatureConfig + p 1 config + p 0 feature + p 2 predicateBlocks + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_3031;Lnet/minecraft/class_3037;)V method_39708 register + p 3 config + p 2 feature + p 1 key + p 0 registerable + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_46852 of + p 0 id + m (Lnet/minecraft/class_3031;Lnet/minecraft/class_3037;)Lnet/minecraft/class_4638; method_39704 createRandomPatchFeatureConfig + p 1 config + p 0 feature + m (Lnet/minecraft/class_3031;Lnet/minecraft/class_3037;Ljava/util/List;I)Lnet/minecraft/class_4638; method_39706 createRandomPatchFeatureConfig + p 3 tries + p 2 predicateBlocks + p 1 config + p 0 feature + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_3031;)V method_40364 register + p 2 feature + p 1 key + p 0 registerable + m (Ljava/util/List;)Lnet/minecraft/class_6646; method_39709 createBlockPredicate + p 0 validGround +c net/minecraft/class_6804 net/minecraft/world/gen/feature/MiscConfiguredFeatures + f Lnet/minecraft/class_5321; field_35810 FREEZE_TOP_LAYER + f Lnet/minecraft/class_5321; field_35800 ICE_SPIKE + f Lnet/minecraft/class_5321; field_35811 BONUS_CHEST + f Lnet/minecraft/class_5321; field_35801 ICE_PATCH + f Lnet/minecraft/class_5321; field_35812 VOID_START_PLATFORM + f Lnet/minecraft/class_5321; field_35802 FOREST_ROCK + f Lnet/minecraft/class_5321; field_35813 DESERT_WELL + f Lnet/minecraft/class_5321; field_35803 ICEBERG_PACKED + f Lnet/minecraft/class_5321; field_35814 SPRING_LAVA_OVERWORLD + f Lnet/minecraft/class_5321; field_35804 ICEBERG_BLUE + f Lnet/minecraft/class_5321; field_35815 SPRING_LAVA_FROZEN + f Lnet/minecraft/class_5321; field_35805 BLUE_ICE + f Lnet/minecraft/class_5321; field_35816 SPRING_WATER + f Lnet/minecraft/class_5321; field_35806 LAKE_LAVA + f Lnet/minecraft/class_5321; field_38809 DISK_GRASS + f Lnet/minecraft/class_5321; field_35807 DISK_CLAY + f Lnet/minecraft/class_5321; field_35808 DISK_GRAVEL + f Lnet/minecraft/class_5321; field_35809 DISK_SAND + m (Lnet/minecraft/class_7891;)V method_46853 bootstrap + p 0 featureRegisterable +c net/minecraft/class_9085 net/minecraft/client/render/entity/feature/WolfArmorFeatureRenderer + f Lnet/minecraft/class_624; field_53235 model + f Lnet/minecraft/class_624; field_53236 babyModel + f Lnet/minecraft/class_10197; field_54186 equipmentRenderer + f Ljava/util/Map; field_49582 CRACK_TEXTURES + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;Lnet/minecraft/class_10197;)V + p 3 equipmentRenderer + p 2 loader + p 1 context + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_1799;Lnet/minecraft/class_3879;Lnet/minecraft/class_10085;)V method_57819 renderCracks + p 5 model + p 6 state + p 3 light + p 4 stack + p 1 matrices + p 2 queue + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10085;FF)V method_55837 render +c net/minecraft/class_9084 net/minecraft/client/render/entity/ArmadilloEntityRenderer + f Lnet/minecraft/class_2960; field_47887 TEXTURE + m ()Lnet/minecraft/class_9997; method_62372 createRenderState + m (Lnet/minecraft/class_9997;)Lnet/minecraft/class_2960; method_55827 getTexture + m (Lnet/minecraft/class_9069;Lnet/minecraft/class_9997;F)V method_62373 updateRenderState +c net/minecraft/class_9082 net/minecraft/client/render/entity/model/ArmadilloEntityModel + f Ljava/lang/String; field_47866 LEFT_EAR_CUBE + f Ljava/lang/String; field_47864 HEAD_CUBE + f Ljava/lang/String; field_47865 RIGHT_EAR_CUBE + f Lnet/minecraft/class_630; field_47870 leftHindLeg + f Lnet/minecraft/class_630; field_47871 cube + f Lnet/minecraft/class_11509; field_60876 walkingAnimation + f Lnet/minecraft/class_11509; field_60877 unrollingAnimation + f Lnet/minecraft/class_11509; field_60878 rollingAnimation + f Lnet/minecraft/class_11509; field_60879 scaredAnimation + f Lnet/minecraft/class_630; field_47869 rightHindLeg + f Lnet/minecraft/class_9953; field_52867 BABY_TRANSFORMER + f Lnet/minecraft/class_630; field_47872 head + f Lnet/minecraft/class_630; field_47873 tail + f Lnet/minecraft/class_630; field_47868 body + m ()Lnet/minecraft/class_5607; method_55818 getTexturedModelData + m (Lnet/minecraft/class_9997;)V method_55817 setAngles +c net/minecraft/class_9099 net/minecraft/network/state/LoginStates + f Lnet/minecraft/class_9127; field_48247 C2S + f Lnet/minecraft/class_9127; field_48248 S2C + f Lnet/minecraft/class_10946; field_52198 C2S_FACTORY + f Lnet/minecraft/class_10946; field_52199 S2C_FACTORY + m (Lnet/minecraft/class_9147;)V method_56019 method_56019 + p 0 builder + m (Lnet/minecraft/class_9147;)V method_56018 method_56018 + p 0 builder +c net/minecraft/class_9098 net/minecraft/network/packet/LoginPackets + f Lnet/minecraft/class_9145; field_48240 HELLO_S2C + f Lnet/minecraft/class_9145; field_48244 HELLO_C2S + f Lnet/minecraft/class_9145; field_48238 CUSTOM_QUERY + f Lnet/minecraft/class_9145; field_48239 LOGIN_FINISHED + f Lnet/minecraft/class_9145; field_48241 LOGIN_COMPRESSION + f Lnet/minecraft/class_9145; field_48243 CUSTOM_QUERY_ANSWER + f Lnet/minecraft/class_9145; field_48242 LOGIN_DISCONNECT + f Lnet/minecraft/class_9145; field_48245 KEY + f Lnet/minecraft/class_9145; field_48246 LOGIN_ACKNOWLEDGED + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_56017 c2s + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_56016 s2c + p 0 id +c net/minecraft/class_9097 net/minecraft/network/state/HandshakeStates + f Lnet/minecraft/class_9127; field_48231 C2S + f Lnet/minecraft/class_10946; field_52197 C2S_FACTORY + m (Lnet/minecraft/class_9147;)V method_56009 method_56009 + p 0 builder +c net/minecraft/class_6820 net/minecraft/unused/packageinfo/PackageInfo6820 +c net/minecraft/class_6818 net/minecraft/world/gen/feature/TreePlacedFeatures + f Lnet/minecraft/class_5321; field_36088 CRIMSON_FUNGI + f Lnet/minecraft/class_5321; field_57971 FALLEN_BIRCH_TREE + f Lnet/minecraft/class_5321; field_36098 SPRUCE_ON_SNOW + f Lnet/minecraft/class_5321; field_36101 FANCY_OAK_CHECKED + f Lnet/minecraft/class_5321; field_57973 FALLEN_SPRUCE_TREE + f Lnet/minecraft/class_5321; field_36111 BIRCH_BEES_002 + f Lnet/minecraft/class_5321; field_54887 PALE_OAK_CHECKED + f Lnet/minecraft/class_5321; field_36094 SPRUCE_CHECKED + f Lnet/minecraft/class_5321; field_36090 OAK_CHECKED + f Lnet/minecraft/class_5321; field_36092 BIRCH_CHECKED + f Lnet/minecraft/class_5321; field_36107 SUPER_BIRCH_BEES + f Lnet/minecraft/class_5321; field_55897 FANCY_OAK_LEAF_LITTER + f Lnet/minecraft/class_5321; field_36109 OAK_BEES_002 + f Lnet/minecraft/class_5321; field_38815 TALL_MANGROVE_CHECKED + f Lnet/minecraft/class_5321; field_55895 DARK_OAK_LEAF_LITTER + f Lnet/minecraft/class_5321; field_42962 CHERRY_BEES_005 + f Lnet/minecraft/class_5321; field_36103 MEGA_SPRUCE_CHECKED + f Lnet/minecraft/class_5321; field_55893 BIRCH_BEES_002_LEAF_LITTER + f Lnet/minecraft/class_5321; field_36113 FANCY_OAK_BEES_002 + f Lnet/minecraft/class_5321; field_36105 JUNGLE_BUSH + f Lnet/minecraft/class_5321; field_36099 PINE_CHECKED + f Lnet/minecraft/class_5321; field_36110 BIRCH_BEES_0002 + f Lnet/minecraft/class_5321; field_36087 FANCY_OAK_BEES + f Lnet/minecraft/class_5321; field_57970 FALLEN_OAK_TREE + f Lnet/minecraft/class_5321; field_36112 FANCY_OAK_BEES_0002 + f Lnet/minecraft/class_5321; field_36089 WARPED_FUNGI + f Lnet/minecraft/class_5321; field_36100 JUNGLE_TREE + f Lnet/minecraft/class_5321; field_57972 FALLEN_SUPER_BIRCH_TREE + f Lnet/minecraft/class_5321; field_54888 PALE_OAK_CREAKING_CHECKED + f Lnet/minecraft/class_5321; field_57974 FALLEN_JUNGLE_TREE + f Lnet/minecraft/class_5321; field_36097 PINE_ON_SNOW + f Lnet/minecraft/class_5321; field_36091 DARK_OAK_CHECKED + f Lnet/minecraft/class_5321; field_36093 ACACIA_CHECKED + f Lnet/minecraft/class_5321; field_42963 CHERRY_CHECKED + f Lnet/minecraft/class_5321; field_36106 SUPER_BIRCH_BEES_0002 + f Lnet/minecraft/class_5321; field_36108 OAK_BEES_0002 + f Lnet/minecraft/class_5321; field_38814 MANGROVE_CHECKED + f Lnet/minecraft/class_5321; field_55896 BIRCH_LEAF_LITTER + f Lnet/minecraft/class_5321; field_36102 MEGA_JUNGLE_TREE_CHECKED + f Lnet/minecraft/class_5321; field_55894 OAK_LEAF_LITTER + f Lnet/minecraft/class_5321; field_36104 MEGA_PINE_CHECKED + m (Lnet/minecraft/class_7891;)V method_46866 bootstrap + p 0 featureRegisterable +c net/minecraft/class_6819 net/minecraft/world/gen/feature/VegetationPlacedFeatures + f Lnet/minecraft/class_5321; field_36143 TREES_GROVE + f Lnet/minecraft/class_5321; field_36155 TREES_SPARSE_JUNGLE + f Lnet/minecraft/class_5321; field_55188 FLOWER_PALE_GARDEN + f Lnet/minecraft/class_5321; field_36135 TREES_PLAINS + f Lnet/minecraft/class_5321; field_36167 PATCH_GRASS_BADLANDS + f Lnet/minecraft/class_5321; field_36123 RED_MUSHROOM_TAIGA + f Lnet/minecraft/class_5321; field_36179 PATCH_BERRY_RARE + f Lnet/minecraft/class_5321; field_36183 PATCH_LARGE_FERN + f Lnet/minecraft/class_5321; field_36151 TREES_WINDSWEPT_FOREST + f Lnet/minecraft/class_5321; field_36131 FLOWER_SWAMP + f Lnet/minecraft/class_5321; field_36163 PATCH_SUNFLOWER + f Lnet/minecraft/class_5321; field_36175 PATCH_DEAD_BUSH + f Lnet/minecraft/class_5321; field_36171 PATCH_GRASS_TAIGA + f Lnet/minecraft/class_5321; field_36292 PATCH_MELON_SPARSE + f Lnet/minecraft/class_5321; field_55900 WILDFLOWERS_MEADOW + f Lnet/minecraft/class_5321; field_36119 RED_MUSHROOM_NETHER + f Lnet/minecraft/class_5321; field_55899 WILDFLOWERS_BIRCH_FOREST + f Lnet/minecraft/class_5321; field_56516 PATCH_BUSH + f Lnet/minecraft/class_5321; field_36115 PATCH_SUGAR_CANE_DESERT + f Lnet/minecraft/class_5321; field_36147 TREES_WINDSWEPT_SAVANNA + f Lnet/minecraft/class_5321; field_36159 BAMBOO_VEGETATION + f Lnet/minecraft/class_5321; field_36139 TREES_FLOWER_FOREST + f Lnet/minecraft/class_5321; field_36127 RED_MUSHROOM_SWAMP + f Lnet/minecraft/class_5321; field_36122 BROWN_MUSHROOM_TAIGA + f Lnet/minecraft/class_5321; field_36154 TREES_BIRCH_AND_OAK + f Lnet/minecraft/class_5321; field_55189 PALE_GARDEN_FLOWERS + f Lnet/minecraft/class_5321; field_36166 PATCH_GRASS_FOREST + f Lnet/minecraft/class_5321; field_36178 PATCH_BERRY_COMMON + f Lnet/minecraft/class_5321; field_36146 TREES_SWAMP + f Lnet/minecraft/class_5321; field_36150 TREES_BIRCH + f Lnet/minecraft/class_5321; field_36162 VINES + f Lnet/minecraft/class_5321; field_36174 PATCH_DEAD_BUSH_2 + f Lnet/minecraft/class_5321; field_36130 FLOWER_FLOWER_FOREST + f Lnet/minecraft/class_5321; field_36142 TREES_TAIGA + f Lnet/minecraft/class_5321; field_36170 PATCH_GRASS_TAIGA_2 + f Lnet/minecraft/class_5321; field_36182 PATCH_TALL_GRASS + f Lnet/minecraft/class_5321; field_55901 PATCH_GRASS_MEADOW + f Lnet/minecraft/class_5321; field_42965 TREES_CHERRY + f Lnet/minecraft/class_5321; field_56517 PATCH_FIREFLY_BUSH + f Lnet/minecraft/class_5321; field_36118 BROWN_MUSHROOM_NETHER + f Lnet/minecraft/class_5321; field_38816 TREES_MANGROVE + f Lnet/minecraft/class_5321; field_36126 BROWN_MUSHROOM_SWAMP + f Lnet/minecraft/class_5321; field_36158 TREES_JUNGLE + f Lnet/minecraft/class_5321; field_36114 PATCH_SUGAR_CANE_SWAMP + f Lnet/minecraft/class_5321; field_36138 FOREST_FLOWERS + f Lnet/minecraft/class_5321; field_36133 FLOWER_MEADOW + f Lnet/minecraft/class_5321; field_36165 PATCH_GRASS_PLAIN + f Lnet/minecraft/class_5321; field_36121 RED_MUSHROOM_NORMAL + f Lnet/minecraft/class_5321; field_36177 PATCH_MELON + f Lnet/minecraft/class_5321; field_36145 TREES_SNOWY + f Lnet/minecraft/class_5321; field_36157 TREES_OLD_GROWTH_PINE_TAIGA + f Lnet/minecraft/class_5321; field_36161 BAMBOO + f Lnet/minecraft/class_5321; field_36173 GRASS_BONEMEAL + f Lnet/minecraft/class_5321; field_54889 PALE_GARDEN_VEGETATION + f Lnet/minecraft/class_5321; field_36141 TREES_MEADOW + f Lnet/minecraft/class_5321; field_36185 PATCH_CACTUS_DECORATED + f Lnet/minecraft/class_5321; field_36153 TREES_WATER + f Lnet/minecraft/class_5321; field_36181 PATCH_TALL_GRASS_2 + f Lnet/minecraft/class_6797; field_36134 NOT_IN_SURFACE_WATER_MODIFIER + f Lnet/minecraft/class_5321; field_56598 PATCH_DRY_GRASS_BADLANDS + f Lnet/minecraft/class_5321; field_42964 FLOWER_CHERRY + f Lnet/minecraft/class_5321; field_55190 PALE_MOSS_PATCH + f Lnet/minecraft/class_5321; field_36129 FLOWER_DEFAULT + f Lnet/minecraft/class_5321; field_56518 PATCH_FIREFLY_BUSH_NEAR_WATER + f Lnet/minecraft/class_5321; field_36137 FLOWER_FOREST_FLOWERS + f Lnet/minecraft/class_5321; field_36169 PATCH_GRASS_NORMAL + f Lnet/minecraft/class_5321; field_36125 RED_MUSHROOM_OLD_GROWTH + f Lnet/minecraft/class_5321; field_36117 PATCH_SUGAR_CANE + f Lnet/minecraft/class_5321; field_36149 BIRCH_TALL + f Lnet/minecraft/class_5321; field_36176 PATCH_DEAD_BUSH_BADLANDS + f Lnet/minecraft/class_5321; field_36132 FLOWER_PLAIN + f Lnet/minecraft/class_5321; field_36144 TREES_BADLANDS + f Lnet/minecraft/class_5321; field_36124 BROWN_MUSHROOM_OLD_GROWTH + f Lnet/minecraft/class_5321; field_36156 TREES_OLD_GROWTH_SPRUCE_TAIGA + f Lnet/minecraft/class_5321; field_36168 PATCH_GRASS_SAVANNA + f Lnet/minecraft/class_5321; field_36172 PATCH_GRASS_JUNGLE + f Lnet/minecraft/class_5321; field_36140 BAMBOO_LIGHT + f Lnet/minecraft/class_5321; field_36184 PATCH_CACTUS_DESERT + f Lnet/minecraft/class_5321; field_36120 BROWN_MUSHROOM_NORMAL + f Lnet/minecraft/class_5321; field_36152 TREES_WINDSWEPT_HILLS + f Lnet/minecraft/class_5321; field_36164 PATCH_PUMPKIN + f Lnet/minecraft/class_5321; field_36180 PATCH_WATERLILY + f Lnet/minecraft/class_5321; field_36160 MUSHROOM_ISLAND_VEGETATION + f Lnet/minecraft/class_5321; field_56599 PATCH_DRY_GRASS_DESERT + f Lnet/minecraft/class_5321; field_55898 PATCH_LEAF_LITTER + f Lnet/minecraft/class_5321; field_56519 PATCH_FIREFLY_BUSH_NEAR_WATER_SWAMP + f Lnet/minecraft/class_5321; field_36136 DARK_FOREST_VEGETATION + f Lnet/minecraft/class_5321; field_36148 TREES_SAVANNA + f Lnet/minecraft/class_5321; field_36128 FLOWER_WARM + f Lnet/minecraft/class_5321; field_36116 PATCH_SUGAR_CANE_BADLANDS + m (Lnet/minecraft/class_7891;)V method_46867 bootstrap + p 0 featureRegisterable + m (Lnet/minecraft/class_6797;Lnet/minecraft/class_2248;)Ljava/util/List; method_39741 treeModifiersWithWouldSurvive + p 0 modifier + p 1 block + m (I)Ljava/util/List; method_39738 modifiers + p 0 count + m (ILnet/minecraft/class_6797;)Ljava/util/List; method_39739 mushroomModifiers + p 1 modifier + p 0 chance + m (Lnet/minecraft/class_6797;)Ljava/util/List; method_39740 treeModifiers + p 0 modifier + m (Lnet/minecraft/class_6797;)Lcom/google/common/collect/ImmutableList$Builder; method_39742 treeModifiersBuilder + p 0 countModifier +c net/minecraft/class_6816 net/minecraft/world/gen/feature/OrePlacedFeatures + f Lnet/minecraft/class_5321; field_36042 ORE_DIAMOND_BURIED + f Lnet/minecraft/class_5321; field_36064 ORE_DIORITE_UPPER + f Lnet/minecraft/class_5321; field_36052 ORE_MAGMA + f Lnet/minecraft/class_5321; field_36074 ORE_GOLD_EXTRA + f Lnet/minecraft/class_5321; field_36044 ORE_LAPIS_BURIED + f Lnet/minecraft/class_5321; field_36066 ORE_ANDESITE_UPPER + f Lnet/minecraft/class_5321; field_36054 ORE_GOLD_DELTAS + f Lnet/minecraft/class_5321; field_36076 ORE_GOLD_LOWER + f Lnet/minecraft/class_5321; field_36060 ORE_DIRT + f Lnet/minecraft/class_5321; field_36070 ORE_COAL_LOWER + f Lnet/minecraft/class_5321; field_36040 ORE_DIAMOND + f Lnet/minecraft/class_5321; field_36062 ORE_GRANITE_UPPER + f Lnet/minecraft/class_5321; field_36050 ORE_COPPER_LARGE + f Lnet/minecraft/class_5321; field_36072 ORE_IRON_MIDDLE + f Lnet/minecraft/class_5321; field_45664 ORE_DIAMOND_MEDIUM + f Lnet/minecraft/class_5321; field_36046 ORE_EMERALD + f Lnet/minecraft/class_5321; field_36068 ORE_TUFF + f Lnet/minecraft/class_5321; field_36056 ORE_GOLD_NETHER + f Lnet/minecraft/class_5321; field_36048 ORE_DEBRIS_SMALL + f Lnet/minecraft/class_5321; field_36058 ORE_GRAVEL_NETHER + f Lnet/minecraft/class_5321; field_36053 ORE_SOUL_SAND + f Lnet/minecraft/class_5321; field_36075 ORE_GOLD + f Lnet/minecraft/class_5321; field_36041 ORE_DIAMOND_LARGE + f Lnet/minecraft/class_5321; field_36063 ORE_GRANITE_LOWER + f Lnet/minecraft/class_5321; field_36055 ORE_QUARTZ_DELTAS + f Lnet/minecraft/class_5321; field_36077 ORE_REDSTONE + f Lnet/minecraft/class_5321; field_36043 ORE_LAPIS + f Lnet/minecraft/class_5321; field_36065 ORE_DIORITE_LOWER + f Lnet/minecraft/class_5321; field_36071 ORE_IRON_UPPER + f Lnet/minecraft/class_5321; field_36051 ORE_CLAY + f Lnet/minecraft/class_5321; field_36073 ORE_IRON_SMALL + f Lnet/minecraft/class_5321; field_36061 ORE_GRAVEL + f Lnet/minecraft/class_5321; field_36039 ORE_REDSTONE_LOWER + f Lnet/minecraft/class_5321; field_36049 ORE_COPPER + f Lnet/minecraft/class_5321; field_36057 ORE_QUARTZ_NETHER + f Lnet/minecraft/class_5321; field_36045 ORE_INFESTED + f Lnet/minecraft/class_5321; field_36067 ORE_ANDESITE_LOWER + f Lnet/minecraft/class_5321; field_36059 ORE_BLACKSTONE + f Lnet/minecraft/class_5321; field_36047 ORE_ANCIENT_DEBRIS_LARGE + f Lnet/minecraft/class_5321; field_36069 ORE_COAL_UPPER + m (ILnet/minecraft/class_6797;)Ljava/util/List; method_39734 modifiersWithRarity + p 0 chance + p 1 heightModifier + m (ILnet/minecraft/class_6797;)Ljava/util/List; method_39732 modifiersWithCount + p 0 count + p 1 heightModifier + m (Lnet/minecraft/class_6797;Lnet/minecraft/class_6797;)Ljava/util/List; method_39733 modifiers + p 1 heightModifier + p 0 countModifier + m (Lnet/minecraft/class_7891;)V method_46864 bootstrap + p 0 featureRegisterable +c net/minecraft/class_6817 net/minecraft/world/gen/feature/PlacedFeatures + f Lnet/minecraft/class_6797; field_36078 MOTION_BLOCKING_HEIGHTMAP + f Lnet/minecraft/class_6797; field_36079 OCEAN_FLOOR_WG_HEIGHTMAP + f Lnet/minecraft/class_6797; field_36085 FOUR_ABOVE_AND_BELOW_RANGE + f Lnet/minecraft/class_6797; field_36084 EIGHT_ABOVE_AND_BELOW_RANGE + f Lnet/minecraft/class_6797; field_55187 MOTION_BLOCKING_NO_LEAVES_HEIGHTMAP + f Lnet/minecraft/class_6797; field_36086 BOTTOM_TO_120_RANGE + f Lnet/minecraft/class_6797; field_36081 OCEAN_FLOOR_HEIGHTMAP + f Lnet/minecraft/class_6797; field_36080 WORLD_SURFACE_WG_HEIGHTMAP + f Lnet/minecraft/class_6797; field_36083 TEN_ABOVE_AND_BELOW_RANGE + f Lnet/minecraft/class_6797; field_36082 BOTTOM_TO_TOP_RANGE + m (IFI)Lnet/minecraft/class_6797; method_39736 createCountExtraModifier + p 0 count + p 1 extraChance + p 2 extraCount + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_6658; method_40365 wouldSurvive + p 0 block + m (Lnet/minecraft/class_3031;Lnet/minecraft/class_3037;[Lnet/minecraft/class_6797;)Lnet/minecraft/class_6880; method_40368 createEntry + p 2 modifiers + p 0 feature + p 1 featureConfig + m (Lnet/minecraft/class_3031;Lnet/minecraft/class_3037;Lnet/minecraft/class_6646;)Lnet/minecraft/class_6880; method_40367 createEntry + p 0 feature + p 1 featureConfig + p 2 predicate + m (Lnet/minecraft/class_6880;[Lnet/minecraft/class_6797;)Lnet/minecraft/class_6880; method_40369 createEntry + p 0 feature + p 1 modifiers + m (Lnet/minecraft/class_7891;)V method_39735 bootstrap + p 0 featureRegisterable + m ()Lnet/minecraft/class_6661; method_40371 isAir + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_6880;Ljava/util/List;)V method_39737 register + p 0 featureRegisterable + p 3 modifiers + p 1 key + p 2 feature + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_6880;[Lnet/minecraft/class_6797;)V method_40370 register + p 2 feature + p 1 key + p 0 featureRegisterable + p 3 modifiers + m (Lnet/minecraft/class_3031;Lnet/minecraft/class_3037;)Lnet/minecraft/class_6880; method_40366 createEntry + p 0 feature + p 1 featureConfig + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_46865 of + p 0 id +c net/minecraft/class_6814 net/minecraft/world/gen/feature/MiscPlacedFeatures + f Lnet/minecraft/class_5321; field_36008 LAKE_LAVA_SURFACE + f Lnet/minecraft/class_5321; field_38813 DISK_GRASS + f Lnet/minecraft/class_5321; field_36007 LAKE_LAVA_UNDERGROUND + f Lnet/minecraft/class_5321; field_36009 DISK_CLAY + f Lnet/minecraft/class_5321; field_36004 ICEBERG_PACKED + f Lnet/minecraft/class_5321; field_36015 SPRING_LAVA + f Lnet/minecraft/class_5321; field_36003 FOREST_ROCK + f Lnet/minecraft/class_5321; field_36014 DESERT_WELL + f Lnet/minecraft/class_5321; field_36006 BLUE_ICE + f Lnet/minecraft/class_5321; field_36017 SPRING_WATER + f Lnet/minecraft/class_5321; field_36005 ICEBERG_BLUE + f Lnet/minecraft/class_5321; field_36016 SPRING_LAVA_FROZEN + f Lnet/minecraft/class_5321; field_36011 DISK_SAND + f Lnet/minecraft/class_5321; field_36010 DISK_GRAVEL + f Lnet/minecraft/class_5321; field_36002 ICE_PATCH + f Lnet/minecraft/class_5321; field_36013 VOID_START_PLATFORM + f Lnet/minecraft/class_5321; field_36001 ICE_SPIKE + f Lnet/minecraft/class_5321; field_36012 FREEZE_TOP_LAYER + m (Lnet/minecraft/class_7891;)V method_46862 bootstrap + p 0 featureRegisterable +c net/minecraft/class_6815 net/minecraft/world/gen/feature/NetherPlacedFeatures + f Lnet/minecraft/class_5321; field_36030 PATCH_CRIMSON_ROOTS + f Lnet/minecraft/class_5321; field_36021 BASALT_BLOBS + f Lnet/minecraft/class_5321; field_36032 SPRING_DELTA + f Lnet/minecraft/class_5321; field_36020 LARGE_BASALT_COLUMNS + f Lnet/minecraft/class_5321; field_36031 BASALT_PILLAR + f Lnet/minecraft/class_5321; field_36019 SMALL_BASALT_COLUMNS + f Lnet/minecraft/class_5321; field_36027 NETHER_SPROUTS + f Lnet/minecraft/class_5321; field_36038 PATCH_FIRE + f Lnet/minecraft/class_5321; field_36026 WARPED_FOREST_VEGETATION + f Lnet/minecraft/class_5321; field_36037 PATCH_SOUL_FIRE + f Lnet/minecraft/class_5321; field_36018 DELTA + f Lnet/minecraft/class_5321; field_36029 WEEPING_VINES + f Lnet/minecraft/class_5321; field_36028 TWISTING_VINES + f Lnet/minecraft/class_5321; field_36023 GLOWSTONE_EXTRA + f Lnet/minecraft/class_5321; field_36034 SPRING_CLOSED_DOUBLE + f Lnet/minecraft/class_5321; field_36022 BLACKSTONE_BLOBS + f Lnet/minecraft/class_5321; field_36033 SPRING_CLOSED + f Lnet/minecraft/class_5321; field_36025 CRIMSON_FOREST_VEGETATION + f Lnet/minecraft/class_5321; field_36024 GLOWSTONE + f Lnet/minecraft/class_5321; field_36035 SPRING_OPEN + m (Lnet/minecraft/class_7891;)V method_46863 bootstrap + p 0 featureRegisterable +c net/minecraft/class_9096 net/minecraft/network/packet/HandshakePackets + f Lnet/minecraft/class_9145; field_48230 INTENTION + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_56008 c2s + p 0 id +c net/minecraft/class_9095 net/minecraft/network/state/PlayStateFactories + f Lnet/minecraft/class_10945; field_58068 CREATIVE_INVENTORY_ACTION_C2S_MODIFIER + f Lnet/minecraft/class_10947; field_48172 C2S + f Lnet/minecraft/class_10946; field_48173 S2C + m (Lnet/minecraft/class_9147;)V method_55959 method_55959 + p 0 builder + m (Lnet/minecraft/class_9139;Lnet/minecraft/class_9095$class_10919;)Lnet/minecraft/class_9139; method_68730 method_68730 + p 0 packetCodec + p 1 context + m (Lnet/minecraft/class_9147;)V method_55958 method_55958 + p 0 builder +c net/minecraft/class_9095$1 net/minecraft/network/state/PlayStateFactories$1 + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_2873; method_68731 decode + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_2873;)V method_68732 encode +c net/minecraft/class_9095$class_10919 net/minecraft/network/state/PlayStateFactories$PacketCodecModifierContext + m ()Z method_68733 isInCreativeMode +c net/minecraft/class_9094 net/minecraft/network/packet/PlayPackets + f Lnet/minecraft/class_9145; field_48037 PLAYER_ABILITIES_S2C + f Lnet/minecraft/class_9145; field_48158 CHANGE_DIFFICULTY_S2C + f Lnet/minecraft/class_9145; field_48124 CHANGE_DIFFICULTY_C2S + f Lnet/minecraft/class_9145; field_48135 CONTAINER_CLOSE_C2S + f Lnet/minecraft/class_9145; field_48094 MOVE_VEHICLE_C2S + f Lnet/minecraft/class_9145; field_48108 SET_CARRIED_ITEM_C2S + f Lnet/minecraft/class_9145; field_48088 SET_CARRIED_ITEM_S2C + f Lnet/minecraft/class_9145; field_48165 CONTAINER_CLOSE_S2C + f Lnet/minecraft/class_9145; field_48032 MOVE_VEHICLE_S2C + f Lnet/minecraft/class_9145; field_48098 PLAYER_ABILITIES_C2S + f Lnet/minecraft/class_9145; field_48144 MOVE_PLAYER_ROT + f Lnet/minecraft/class_9145; field_48145 ADD_ENTITY + f Lnet/minecraft/class_9145; field_48143 MOVE_PLAYER_POS_ROT + f Lnet/minecraft/class_9145; field_48147 TICKING_STATE + f Lnet/minecraft/class_9145; field_48014 DISGUISED_CHAT + f Lnet/minecraft/class_9145; field_48146 RESET_SCORE + f Lnet/minecraft/class_9145; field_48013 DELETE_CHAT + f Lnet/minecraft/class_9145; field_48140 JIGSAW_GENERATE + f Lnet/minecraft/class_9145; field_48142 MOVE_PLAYER_POS + f Lnet/minecraft/class_9145; field_48141 LOCK_DIFFICULTY + f Lnet/minecraft/class_9145; field_48019 MOUNT_SCREEN_OPEN + f Lnet/minecraft/class_9145; field_48016 EXPLODE + f Lnet/minecraft/class_9145; field_48148 TICKING_STEP + f Lnet/minecraft/class_9145; field_48015 ENTITY_EVENT + f Lnet/minecraft/class_9145; field_48018 GAME_EVENT + f Lnet/minecraft/class_9145; field_48017 FORGET_LEVEL_CHUNK + f Lnet/minecraft/class_9145; field_48150 ANIMATE + f Lnet/minecraft/class_9145; field_48023 LEVEL_EVENT + f Lnet/minecraft/class_9145; field_48157 BOSS_EVENT + f Lnet/minecraft/class_9145; field_48024 LEVEL_PARTICLES + f Lnet/minecraft/class_9145; field_48022 LEVEL_CHUNK_WITH_LIGHT + f Lnet/minecraft/class_9145; field_48155 BLOCK_EVENT + f Lnet/minecraft/class_9145; field_48156 BLOCK_UPDATE + f Lnet/minecraft/class_9145; field_48159 CHUNK_BATCH_FINISHED + f Lnet/minecraft/class_9145; field_48026 LOGIN + f Lnet/minecraft/class_9145; field_48025 LIGHT_UPDATE + f Lnet/minecraft/class_9145; field_48152 BLOCK_CHANGED_ACK + f Lnet/minecraft/class_9145; field_48151 AWARD_STATS + f Lnet/minecraft/class_9145; field_48021 INITIALIZE_BORDER + f Lnet/minecraft/class_9145; field_48154 BLOCK_ENTITY_DATA + f Lnet/minecraft/class_9145; field_48020 HURT_ANIMATION + f Lnet/minecraft/class_9145; field_48153 BLOCK_DESTRUCTION + f Lnet/minecraft/class_9145; field_48028 MERCHANT_OFFERS + f Lnet/minecraft/class_9145; field_48027 MAP_ITEM_DATA + f Lnet/minecraft/class_9145; field_48029 MOVE_ENTITY_POS + f Lnet/minecraft/class_9145; field_48160 CHUNK_BATCH_START + f Lnet/minecraft/class_9145; field_48162 CLEAR_TITLES + f Lnet/minecraft/class_9145; field_48161 CHUNKS_BIOMES + f Lnet/minecraft/class_9145; field_48169 COOLDOWN + f Lnet/minecraft/class_9145; field_48036 PLACE_GHOST_RECIPE + f Lnet/minecraft/class_9145; field_48034 OPEN_SCREEN + f Lnet/minecraft/class_9145; field_48168 CONTAINER_SET_SLOT + f Lnet/minecraft/class_9145; field_48035 OPEN_SIGN_EDITOR + f Lnet/minecraft/class_9145; field_48038 PLAYER_CHAT + f Lnet/minecraft/class_9145; field_48031 MOVE_ENTITY_ROT + f Lnet/minecraft/class_9145; field_48164 COMMANDS + f Lnet/minecraft/class_9145; field_48163 COMMAND_SUGGESTIONS + f Lnet/minecraft/class_9145; field_48030 MOVE_ENTITY_POS_ROT + f Lnet/minecraft/class_9145; field_48033 OPEN_BOOK + f Lnet/minecraft/class_9145; field_48166 CONTAINER_SET_CONTENT + f Lnet/minecraft/class_9145; field_48167 CONTAINER_SET_DATA + f Lnet/minecraft/class_9145; field_48039 BUNDLE + f Lnet/minecraft/class_9145; field_48171 DAMAGE_EVENT + f Lnet/minecraft/class_9145; field_48041 SET_ENTITY_DATA + f Lnet/minecraft/class_9145; field_48040 SET_DISPLAY_OBJECTIVE + f Lnet/minecraft/class_9145; field_48170 CUSTOM_CHAT_COMPLETIONS + f Lnet/minecraft/class_9145; field_48048 SET_PASSENGERS + f Lnet/minecraft/class_9145; field_48047 SET_OBJECTIVE + f Lnet/minecraft/class_9145; field_48049 SET_PLAYER_TEAM + f Lnet/minecraft/class_9145; field_48043 SET_ENTITY_MOTION + f Lnet/minecraft/class_9145; field_48042 SET_ENTITY_LINK + f Lnet/minecraft/class_9145; field_48045 SET_EXPERIENCE + f Lnet/minecraft/class_9145; field_48046 SET_HEALTH + f Lnet/minecraft/class_9145; field_48044 SET_EQUIPMENT + f Lnet/minecraft/class_9145; field_48051 SET_SIMULATION_DISTANCE + f Lnet/minecraft/class_9145; field_48050 SET_SCORE + f Lnet/minecraft/class_9145; field_48053 SET_TIME + f Lnet/minecraft/class_9145; field_48052 SET_SUBTITLE_TEXT + f Lnet/minecraft/class_9145; field_48105 SEEN_ADVANCEMENTS + f Lnet/minecraft/class_9145; field_48104 RENAME_ITEM + f Lnet/minecraft/class_9145; field_48107 SET_BEACON + f Lnet/minecraft/class_9145; field_48106 SELECT_TRADE + f Lnet/minecraft/class_9145; field_48100 PLAYER_COMMAND + f Lnet/minecraft/class_9145; field_48101 PLAYER_INPUT + f Lnet/minecraft/class_9145; field_48103 RECIPE_BOOK_SEEN_RECIPE + f Lnet/minecraft/class_9145; field_48102 RECIPE_BOOK_CHANGE_SETTINGS + f Lnet/minecraft/class_9145; field_48109 SET_COMMAND_BLOCK + f Lnet/minecraft/class_9145; field_62790 BLOCK_VALUE_DEBUG + f Lnet/minecraft/class_9145; field_48110 SET_COMMAND_MINECART + f Lnet/minecraft/class_9145; field_48117 USE_ITEM_ON + f Lnet/minecraft/class_9145; field_48116 TELEPORT_TO_ENTITY + f Lnet/minecraft/class_9145; field_48119 UPDATE_ATTRIBUTES + f Lnet/minecraft/class_9145; field_48118 USE_ITEM + f Lnet/minecraft/class_9145; field_48113 SET_STRUCTURE_BLOCK + f Lnet/minecraft/class_9145; field_48111 SET_CREATIVE_MODE_SLOT + f Lnet/minecraft/class_9145; field_48112 SET_JIGSAW_BLOCK + f Lnet/minecraft/class_9145; field_48115 SWING + f Lnet/minecraft/class_9145; field_48114 SIGN_UPDATE + f Lnet/minecraft/class_9145; field_48120 UPDATE_MOB_EFFECT + f Lnet/minecraft/class_9145; field_48122 ACCEPT_TELEPORTATION + f Lnet/minecraft/class_9145; field_48123 BLOCK_ENTITY_TAG_QUERY + f Lnet/minecraft/class_9145; field_48121 UPDATE_RECIPES + f Lnet/minecraft/class_9145; field_48129 CHUNK_BATCH_RECEIVED + f Lnet/minecraft/class_9145; field_48128 CHAT_SESSION_UPDATE + f Lnet/minecraft/class_9145; field_48125 CHAT_ACK + f Lnet/minecraft/class_9145; field_48127 CHAT + f Lnet/minecraft/class_9145; field_48126 CHAT_COMMAND + f Lnet/minecraft/class_9145; field_48132 CONFIGURATION_ACKNOWLEDGED + f Lnet/minecraft/class_9145; field_48131 COMMAND_SUGGESTION + f Lnet/minecraft/class_9145; field_48133 CONTAINER_BUTTON_CLICK + f Lnet/minecraft/class_9145; field_48134 CONTAINER_CLICK + f Lnet/minecraft/class_9145; field_48130 CLIENT_COMMAND + f Lnet/minecraft/class_9145; field_48137 EDIT_BOOK + f Lnet/minecraft/class_9145; field_48136 CONTAINER_SLOT_STATE_CHANGED + f Lnet/minecraft/class_9145; field_48139 INTERACT + f Lnet/minecraft/class_9145; field_48138 ENTITY_TAG_QUERY + f Lnet/minecraft/class_9145; field_62788 EVENT_DEBUG + f Lnet/minecraft/class_9145; field_62789 GAME_TEST_HIGHLIGHT_POS + f Lnet/minecraft/class_9145; field_62786 CHUNK_VALUE_DEBUG + f Lnet/minecraft/class_9145; field_62787 ENTITY_VALUE_DEBUG + f Lnet/minecraft/class_9145; field_54524 RECIPE_BOOK_ADD + f Lnet/minecraft/class_9145; field_54523 PLAYER_ROTATION + f Lnet/minecraft/class_9145; field_54526 RECIPE_BOOK_SETTINGS + f Lnet/minecraft/class_9145; field_54525 RECIPE_BOOK_REMOVE + f Lnet/minecraft/class_9145; field_54527 ENTITY_POSITION_SYNC + f Lnet/minecraft/class_9145; field_48782 DEBUG_SAMPLE + f Lnet/minecraft/class_9145; field_48783 DEBUG_SUBSCRIPTION_REQUEST + f Lnet/minecraft/class_9145; field_52330 CLIENT_TICK_END + f Lnet/minecraft/class_9145; field_52331 SET_CURSOR_ITEM + f Lnet/minecraft/class_9145; field_52332 SET_PLAYER_INVENTORY + f Lnet/minecraft/class_9145; field_60611 CHANGE_GAME_MODE + f Lnet/minecraft/class_9145; field_50086 CHAT_COMMAND_SIGNED + f Lnet/minecraft/class_9145; field_55192 PLAYER_LOADED + f Lnet/minecraft/class_9145; field_55916 SET_TEST_BLOCK + f Lnet/minecraft/class_9145; field_55915 TEST_INSTANCE_BLOCK_STATUS + f Lnet/minecraft/class_9145; field_55917 TEST_INSTANCE_BLOCK_ACTION + f Lnet/minecraft/class_9145; field_52329 BUNDLE_ITEM_SELECTED + f Lnet/minecraft/class_9145; field_59621 WAYPOINT + f Lnet/minecraft/class_9145; field_54984 PICK_ITEM_FROM_ENTITY + f Lnet/minecraft/class_9145; field_54983 PICK_ITEM_FROM_BLOCK + f Lnet/minecraft/class_9145; field_52328 MOVE_MINECART_ALONG_TRACK + f Lnet/minecraft/class_9145; field_48059 STOP_SOUND + f Lnet/minecraft/class_9145; field_48055 SET_TITLES_ANIMATION + f Lnet/minecraft/class_9145; field_48054 SET_TITLE_TEXT + f Lnet/minecraft/class_9145; field_48058 START_CONFIGURATION + f Lnet/minecraft/class_9145; field_48056 SOUND_ENTITY + f Lnet/minecraft/class_9145; field_48057 SOUND + f Lnet/minecraft/class_9145; field_48063 TAKE_ITEM_ENTITY + f Lnet/minecraft/class_9145; field_48062 TAG_QUERY + f Lnet/minecraft/class_9145; field_48065 UPDATE_ADVANCEMENTS + f Lnet/minecraft/class_9145; field_48064 TELEPORT_ENTITY + f Lnet/minecraft/class_9145; field_48061 TAB_LIST + f Lnet/minecraft/class_9145; field_48060 SYSTEM_CHAT + f Lnet/minecraft/class_9145; field_48067 PLAYER_COMBAT_ENTER + f Lnet/minecraft/class_9145; field_48068 PLAYER_COMBAT_KILL + f Lnet/minecraft/class_9145; field_48066 PLAYER_COMBAT_END + f Lnet/minecraft/class_9145; field_48069 PLAYER_INFO_REMOVE + f Lnet/minecraft/class_9145; field_48075 REMOVE_MOB_EFFECT + f Lnet/minecraft/class_9145; field_48074 REMOVE_ENTITIES + f Lnet/minecraft/class_9145; field_48077 ROTATE_HEAD + f Lnet/minecraft/class_9145; field_48076 RESPAWN + f Lnet/minecraft/class_9145; field_48071 PLAYER_LOOK_AT + f Lnet/minecraft/class_9145; field_48070 PLAYER_INFO_UPDATE + f Lnet/minecraft/class_9145; field_48072 PLAYER_POSITION + f Lnet/minecraft/class_9145; field_48078 SECTION_BLOCKS_UPDATE + f Lnet/minecraft/class_9145; field_48079 SELECT_ADVANCEMENTS_TAB + f Lnet/minecraft/class_9145; field_48081 SET_ACTION_BAR_TEXT + f Lnet/minecraft/class_9145; field_48080 SERVER_DATA + f Lnet/minecraft/class_9145; field_48087 SET_CAMERA + f Lnet/minecraft/class_9145; field_48086 SET_BORDER_WARNING_DISTANCE + f Lnet/minecraft/class_9145; field_48089 SET_CHUNK_CACHE_CENTER + f Lnet/minecraft/class_9145; field_48083 SET_BORDER_LERP_SIZE + f Lnet/minecraft/class_9145; field_48082 SET_BORDER_CENTER + f Lnet/minecraft/class_9145; field_48085 SET_BORDER_WARNING_DELAY + f Lnet/minecraft/class_9145; field_48084 SET_BORDER_SIZE + f Lnet/minecraft/class_9145; field_51341 PROJECTILE_POWER + f Lnet/minecraft/class_9145; field_48091 SET_DEFAULT_SPAWN_POSITION + f Lnet/minecraft/class_9145; field_48090 SET_CHUNK_CACHE_RADIUS + f Lnet/minecraft/class_9145; field_48093 MOVE_PLAYER_STATUS_ONLY + f Lnet/minecraft/class_9145; field_48092 BUNDLE_DELIMITER + f Lnet/minecraft/class_9145; field_48099 PLAYER_ACTION + f Lnet/minecraft/class_9145; field_48095 PADDLE_BOAT + f Lnet/minecraft/class_9145; field_48097 PLACE_RECIPE + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_55957 c2s + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_55956 s2c + p 0 id +c net/minecraft/class_9093 net/minecraft/network/packet/s2c/play/BundleDelimiterS2CPacket +c net/minecraft/class_9092 net/minecraft/unused/packageinfo/PackageInfo9092 +c net/minecraft/class_9091 net/minecraft/network/packet/c2s/common/CookieResponseC2SPacket + f Lnet/minecraft/class_9139; field_47895 CODEC + f [B comp_2196 payload + f Lnet/minecraft/class_2960; comp_2195 key + m (Lnet/minecraft/class_9090;)V method_55852 apply + m (Lnet/minecraft/class_2540;)V method_55853 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Lnet/minecraft/class_2960; comp_2195 key + m ()[B comp_2196 payload + m (Lnet/minecraft/class_2960;[B)V + p 1 key + p 2 payload +c net/minecraft/class_9090 net/minecraft/network/listener/ServerCookieResponsePacketListener + m (Lnet/minecraft/class_9091;)V method_55851 onCookieResponse + p 1 packet +c net/minecraft/class_9069 net/minecraft/entity/passive/ArmadilloEntity + f I field_47787 nextScuteShedCooldown + f Lnet/minecraft/class_7094; field_49082 scaredAnimationState + f Lnet/minecraft/class_7094; field_49081 rollingAnimationState + f Lnet/minecraft/class_7094; field_49080 unrollingAnimationState + f Z field_49083 peeking + f J field_47786 currentStateTicks + f Lnet/minecraft/class_2940; field_47785 STATE + m ()Z method_55711 isRolledUp + m ()Z method_55723 isNotIdle + m ()V method_55720 updateAnimationStates + m ()Lnet/minecraft/class_5132$class_5133; method_55722 createArmadilloAttributes + m ()Z method_55714 shouldSwitchToScaredState + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1799;)Z method_55716 brushScute + p 1 interactingEntity + p 2 tool + m ()I method_55719 getNextScuteShedCooldown + m (Lnet/minecraft/class_1309;)Z method_55721 isEntityThreatening + p 1 entity + m (Lnet/minecraft/class_9069$class_9070;)V method_55713 setState + p 1 state + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_56083 canSpawn + p 0 entityType + p 2 spawnReason + p 1 world + p 4 random + p 3 pos + m ()V method_55715 startRolling + m (Ljava/lang/Integer;)V method_68268 method_68268 + p 1 scuteTime + m ()Z method_55717 canRollUp + m ()V method_55724 unroll + m ()Lnet/minecraft/class_9069$class_9070; method_55718 getState +c net/minecraft/class_9069$class_9070 net/minecraft/entity/passive/ArmadilloEntity$State + f I field_48337 index + f Z field_49085 runRollUpTask + f I field_49086 lengthInTicks + f Lnet/minecraft/class_9139; field_48335 PACKET_CODEC + f Ljava/lang/String; field_47793 name + f Lcom/mojang/serialization/Codec; field_47794 CODEC + f Ljava/util/function/IntFunction; field_48336 INDEX_TO_VALUE + f Lnet/minecraft/class_9069$class_9070; field_47791 ROLLING + f Lnet/minecraft/class_9069$class_9070; field_47792 SCARED + f Lnet/minecraft/class_9069$class_9070; field_47790 IDLE + f Lnet/minecraft/class_9069$class_9070; field_49084 UNROLLING + m ()I method_57000 getLengthInTicks + m (Ljava/lang/String;ILjava/lang/String;ZII)V + p 3 name + p 4 runRollUpTask + p 5 lengthInTicks + p 6 index + m ()Z method_56998 shouldRunRollUpTask + m ()I method_56084 getIndex + m (J)Z method_56999 isRolledUp + p 1 currentStateTicks +c net/minecraft/class_9068 net/minecraft/entity/ai/brain/sensor/ArmadilloScareDetectedSensor + f Lnet/minecraft/class_4140; field_47766 memoryModuleType + f Ljava/util/function/BiPredicate; field_47764 threateningEntityPredicate + f I field_47767 expiry + f Ljava/util/function/Predicate; field_47765 canRollUpPredicate + m (ILjava/util/function/BiPredicate;Ljava/util/function/Predicate;Lnet/minecraft/class_4140;I)V + p 1 senseInterval + p 2 threateningEntityPredicate + p 3 canRollUpPredicate + p 4 memoryModuleType + p 5 expiry + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_55703 method_55703 + p 2 threat + m (Lnet/minecraft/class_1309;)V method_55702 tryDetectThreat + p 1 entity + m (Lnet/minecraft/class_1309;)V method_55705 clear + p 1 entity + m (Lnet/minecraft/class_1309;)V method_55704 onDetected + p 1 entity +c net/minecraft/class_9066 net/minecraft/entity/EntityAttachments + f Ljava/util/Map; field_47752 points + m (Lnet/minecraft/class_9064;IF)Lnet/minecraft/class_243; method_55679 getPointOrDefault + p 3 yaw + p 2 index + p 1 type + m (Lnet/minecraft/class_9064;IF)Lnet/minecraft/class_243; method_55678 getPoint + p 1 type + p 3 yaw + p 2 index + m ()Lnet/minecraft/class_9066$class_9067; method_55673 builder + m (Ljava/util/Map;)V + p 1 points + m (Lnet/minecraft/class_243;F)Lnet/minecraft/class_243; method_55676 rotatePoint + p 1 yaw + p 0 point + m (FFF)Lnet/minecraft/class_9066; method_55674 scale + p 1 xScale + p 3 zScale + p 2 yScale + m (FF)Lnet/minecraft/class_9066; method_55844 of + p 1 height + p 0 width + m (Lnet/minecraft/class_9064;IF)Lnet/minecraft/class_243; method_55675 getPointNullable + p 3 yaw + p 2 index + p 1 type + m (FFFLnet/minecraft/class_9064;)Ljava/util/List; method_66251 method_66251 + p 4 type + m (Lnet/minecraft/class_9064;)Lnet/minecraft/class_243; method_71766 getPointOrDefault + p 1 type +c net/minecraft/class_9066$class_9067 net/minecraft/entity/EntityAttachments$Builder + f Ljava/util/Map; field_47753 points + m (Lnet/minecraft/class_9064;)Ljava/util/List; method_55681 method_55681 + p 0 list + m (Lnet/minecraft/class_9064;FFF)Lnet/minecraft/class_9066$class_9067; method_55682 add + p 4 z + p 3 y + p 2 x + p 1 type + m (FFLnet/minecraft/class_9064;)Ljava/util/List; method_66252 method_66252 + p 3 type + m (Lnet/minecraft/class_9064;Lnet/minecraft/class_243;)Lnet/minecraft/class_9066$class_9067; method_55683 add + p 1 type + p 2 point + m (FF)Lnet/minecraft/class_9066; method_55680 build + p 1 width + p 2 height +c net/minecraft/class_9064 net/minecraft/entity/EntityAttachmentType + f Lnet/minecraft/class_9064$class_9065; field_47746 point + f Lnet/minecraft/class_9064; field_47743 PASSENGER + f Lnet/minecraft/class_9064; field_47745 NAME_TAG + f Lnet/minecraft/class_9064; field_47744 VEHICLE + f Lnet/minecraft/class_9064; field_48320 WARDEN_CHEST + m (Ljava/lang/String;ILnet/minecraft/class_9064$class_9065;)V + p 3 point + m (FF)Ljava/util/List; method_55670 createPoint + p 2 height + p 1 width +c net/minecraft/class_9064$class_9065 net/minecraft/entity/EntityAttachmentType$Point + f Lnet/minecraft/class_9064$class_9065; field_47749 ZERO + f Ljava/util/List; field_47748 NONE + f Lnet/minecraft/class_9064$class_9065; field_47750 AT_HEIGHT + f Lnet/minecraft/class_9064$class_9065; field_48321 WARDEN_CHEST + m (FF)Ljava/util/List; method_56074 method_56074 + p 1 height + p 0 width + m (FF)Ljava/util/List; create create + p 1 width + p 2 height + m (FF)Ljava/util/List; method_55671 method_55671 + p 0 width + p 1 height + m (FF)Ljava/util/List; method_55672 method_55672 + p 0 width + p 1 height +c net/minecraft/class_9061 net/minecraft/datafixer/schema/Schema3799 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_9079 net/minecraft/client/render/entity/animation/ArmadilloAnimations + f Lnet/minecraft/class_7184; field_47844 WALKING + f Lnet/minecraft/class_7184; field_49110 UNROLLING + f Lnet/minecraft/class_7184; field_49109 SCARED + f Lnet/minecraft/class_7184; field_49108 ROLLING +c net/minecraft/class_9078 net/minecraft/util/DateTimeFormatters + f Ljava/time/format/DateTimeFormatter; field_63964 MINUTES +c net/minecraft/class_9075 net/minecraft/entity/ai/brain/task/BreezeMovementUtil + f D field_47817 MAX_MOVE_DISTANCE + m (Lnet/minecraft/class_8949;)D method_61493 getMaxMoveDistance + p 0 breeze + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_5819;)Lnet/minecraft/class_243; method_55751 getRandomPosBehindTarget + p 0 target + p 1 random + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_243;)Z method_55752 canMoveTo + p 1 pos + p 0 breeze +c net/minecraft/class_6801 net/minecraft/world/gen/feature/UndergroundConfiguredFeatures + f Lnet/minecraft/class_5321; field_35774 LARGE_DRIPSTONE + f Lnet/minecraft/class_5321; field_35786 CLAY_POOL_WITH_DRIPLEAVES + f Lnet/minecraft/class_5321; field_35776 UNDERWATER_MAGMA + f Lnet/minecraft/class_5321; field_35788 MOSS_PATCH_CEILING + f Lnet/minecraft/class_5321; field_38034 SCULK_VEIN + f Lnet/minecraft/class_5321; field_35778 ROOTED_AZALEA_TREE + f Lnet/minecraft/class_5321; field_35790 AMETHYST_GEODE + f Lnet/minecraft/class_5321; field_35780 CAVE_VINE_IN_MOSS + f Lnet/minecraft/class_5321; field_35770 MONSTER_ROOM + f Lnet/minecraft/class_5321; field_35782 MOSS_PATCH + f Lnet/minecraft/class_5321; field_35772 FOSSIL_DIAMONDS + f Lnet/minecraft/class_5321; field_35784 DRIPLEAF + f Lnet/minecraft/class_5321; field_35785 CLAY_WITH_DRIPLEAVES + f Lnet/minecraft/class_5321; field_38033 SCULK_PATCH_DEEP_DARK + f Lnet/minecraft/class_5321; field_35775 POINTED_DRIPSTONE + f Lnet/minecraft/class_5321; field_35787 LUSH_CAVES_CLAY + f Lnet/minecraft/class_5321; field_35777 GLOW_LICHEN + f Lnet/minecraft/class_5321; field_35789 SPORE_BLOSSOM + f Lnet/minecraft/class_5321; field_35779 CAVE_VINE + f Lnet/minecraft/class_5321; field_35781 MOSS_VEGETATION + f Lnet/minecraft/class_5321; field_35771 FOSSIL_COAL + f Lnet/minecraft/class_5321; field_35783 MOSS_PATCH_BONEMEAL + f Lnet/minecraft/class_5321; field_35773 DRIPSTONE_CLUSTER + f Lnet/minecraft/class_5321; field_38477 SCULK_PATCH_ANCIENT_CITY + m (Lnet/minecraft/class_7891;)V method_46850 bootstrap + p 0 featureRegisterable + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_6880; method_39687 createBigDripleafFeature + p 0 direction + m ()Lnet/minecraft/class_6880; method_39686 createSmallDripleafFeature +c net/minecraft/class_6802 net/minecraft/world/gen/feature/EndConfiguredFeatures + f Lnet/minecraft/class_5321; field_35797 END_GATEWAY_DELAYED + f Lnet/minecraft/class_5321; field_35798 CHORUS_PLANT + f Lnet/minecraft/class_5321; field_35799 END_ISLAND + f Lnet/minecraft/class_5321; field_35795 END_SPIKE + f Lnet/minecraft/class_5321; field_35796 END_GATEWAY_RETURN + f Lnet/minecraft/class_5321; field_52309 END_PLATFORM + m (Lnet/minecraft/class_7891;)V method_46851 bootstrap + p 0 featureRegisterable +c net/minecraft/class_6800 net/minecraft/world/gen/feature/OceanConfiguredFeatures + f Lnet/minecraft/class_5321; field_35762 SEAGRASS_SHORT + f Lnet/minecraft/class_5321; field_35763 SEAGRASS_SLIGHTLY_LESS_SHORT + f Lnet/minecraft/class_5321; field_35764 SEAGRASS_MID + f Lnet/minecraft/class_5321; field_35765 SEAGRASS_TALL + f Lnet/minecraft/class_5321; field_35766 SEA_PICKLE + f Lnet/minecraft/class_5321; field_35768 KELP + f Lnet/minecraft/class_5321; field_35769 WARM_OCEAN_VEGETATION + m (Lnet/minecraft/class_7891;)V method_46849 bootstrap + p 0 featureRegisterable +c net/minecraft/class_9074 net/minecraft/unused/packageinfo/PackageInfo9074 +c net/minecraft/class_9071 net/minecraft/entity/passive/ArmadilloBrain + f Lcom/google/common/collect/ImmutableList; field_47803 SENSOR_TYPES + f Lnet/minecraft/class_7894; field_47805 UNROLL_TASK + f Lcom/google/common/collect/ImmutableList; field_47804 MEMORY_MODULE_TYPES + f Lnet/minecraft/class_6019; field_47802 WALK_TOWARDS_CLOSEST_ADULT_RANGE + m (Lnet/minecraft/class_1309;)Ljava/lang/Double; method_55730 method_55730 + p 0 armadillo + m (Lnet/minecraft/class_1309;)Ljava/lang/Float; method_55736 method_55736 + p 0 armadillo + m (Lnet/minecraft/class_9069;)V method_55734 updateActivities + p 0 armadillo + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9069;J)Z method_55729 method_55729 + p 1 armadillo + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_55732 method_55732 + p 0 context + m ()Lnet/minecraft/class_4095$class_5303; method_55728 createBrainProfile + m (Lnet/minecraft/class_4095;)V method_55737 addCoreActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_55738 addIdleActivities + p 0 brain + m (Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_55731 create + p 0 brain + m (Lnet/minecraft/class_4095;)V method_55739 addPanicActivities + p 0 brain +c net/minecraft/class_9071$1 net/minecraft/entity/passive/ArmadilloBrain$1 + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)Z method_18978 shouldRun +c net/minecraft/class_9071$class_9073 net/minecraft/entity/passive/ArmadilloBrain$UnrollAndFleeTask + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9069;J)V method_57002 run + m (Lnet/minecraft/class_1314;)Lnet/minecraft/class_6862; method_60726 method_60726 + p 0 entity +c net/minecraft/class_9071$class_9072 net/minecraft/entity/passive/ArmadilloBrain$RollUpTask + f I field_49090 ticksUntilPeek + f Z field_49091 considerPeeking + f I field_49087 RUN_TIME_IN_TICKS + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9069;)Z method_55740 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9069;J)V method_55741 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9069;J)Z method_55742 shouldKeepRunning + m (Lnet/minecraft/class_9069;)I method_57001 calculateTicksUntilPeek + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9069;J)V method_55744 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9069;J)V method_55743 run +c net/minecraft/class_9044 net/minecraft/client/resource/server/ServerResourcePackManager + f Lnet/minecraft/class_9039; field_47630 stateChangeCallback + f Lnet/minecraft/class_9038; field_47629 queuer + f Lnet/minecraft/class_9044$class_9047; field_47633 acceptanceStatus + f Lnet/minecraft/class_9041; field_47631 reloadScheduler + f Ljava/util/List; field_47634 packs + f Ljava/lang/Runnable; field_47632 packChangeCallback + m (Ljava/util/Collection;Lnet/minecraft/class_9028$class_9030;)V method_55554 onDownload + p 2 result + p 1 packs + m (Ljava/util/UUID;)V method_55562 markReplaced + p 1 id + m ()V method_55565 resetAcceptanceStatus + m ()Z method_55569 enqueueDownloads + m ()V method_55563 declineAll + m (Ljava/util/List;Lnet/minecraft/class_9028$class_9030;)V method_55555 method_55555 + p 2 result + m (Lnet/minecraft/class_9044$class_9049;)V method_55553 accept + p 1 pack + m (Ljava/util/UUID;Ljava/net/URL;Lcom/google/common/hash/HashCode;)V method_55558 addResourcePack + p 2 url + p 3 hashCode + p 1 id + m (Lnet/minecraft/class_9044$class_9049;)Z method_55561 method_55561 + p 1 pack + m ()V method_55567 onPackChanged + m ()V method_55560 acceptAll + m ()V method_55570 applyDownloadedPacks + m ()V method_55566 update + m ()V method_55552 removeAll + m (Lnet/minecraft/class_9038;Lnet/minecraft/class_9039;Lnet/minecraft/class_9041;Ljava/lang/Runnable;Lnet/minecraft/class_9044$class_9047;)V + p 2 stateChangeCallback + p 1 queuer + p 5 acceptanceStatus + p 4 packChangeCallback + p 3 reloadScheduler + m (Ljava/util/UUID;)Lnet/minecraft/class_9044$class_9049; method_55564 get + p 1 id + m (Ljava/util/UUID;Lnet/minecraft/class_9044$class_9049;)V method_55557 onAdd + p 1 id + p 2 pack + m (Ljava/util/UUID;Ljava/nio/file/Path;)V method_55559 addResourcePack + p 2 path + p 1 id + m (Ljava/util/UUID;)V method_55556 remove + p 1 id + m ()V method_55568 removeInactivePacks +c net/minecraft/class_9044$1 net/minecraft/client/resource/server/ServerResourcePackManager$1 + m (Lnet/minecraft/class_9044$class_9049;)Lnet/minecraft/class_9041$class_9043; method_55571 method_55571 + p 0 pack +c net/minecraft/class_9044$class_9049 net/minecraft/client/resource/server/ServerResourcePackManager$PackEntry + f Lcom/google/common/hash/HashCode; field_47661 hashCode + f Ljava/util/UUID; field_47659 id + f Z field_47666 accepted + f Ljava/nio/file/Path; field_47662 path + f Lnet/minecraft/class_9044$class_9046; field_47664 loadStatus + f Lnet/minecraft/class_9044$class_9045; field_47665 status + f Ljava/net/URL; field_47660 url + f Lnet/minecraft/class_9044$class_9048; field_47663 discardReason + m (Ljava/util/UUID;Ljava/net/URL;Lcom/google/common/hash/HashCode;)V + p 3 hashCode + p 2 url + p 1 id + m (Lnet/minecraft/class_9044$class_9048;)V method_55577 discard + p 1 reason + m ()Z method_55576 isDiscarded +c net/minecraft/class_9044$class_9048 net/minecraft/client/resource/server/ServerResourcePackManager$DiscardReason + f Lnet/minecraft/class_9039$class_9040; field_47657 state + f Lnet/minecraft/class_9044$class_9048; field_47651 DOWNLOAD_FAILED + f Lnet/minecraft/class_9044$class_9048; field_47652 ACTIVATION_FAILED + f Lnet/minecraft/class_9044$class_9048; field_47655 SERVER_REMOVED + f Lnet/minecraft/class_9044$class_9048; field_47656 SERVER_REPLACED + f Lnet/minecraft/class_9044$class_9048; field_47653 DECLINED + f Lnet/minecraft/class_9044$class_9048; field_47654 DISCARDED + m (Ljava/lang/String;ILnet/minecraft/class_9039$class_9040;)V + p 3 state +c net/minecraft/class_9044$class_9047 net/minecraft/client/resource/server/ServerResourcePackManager$AcceptanceStatus + f Lnet/minecraft/class_9044$class_9047; field_47648 ALLOWED + f Lnet/minecraft/class_9044$class_9047; field_47649 DECLINED + f Lnet/minecraft/class_9044$class_9047; field_47647 PENDING +c net/minecraft/class_9044$class_9046 net/minecraft/client/resource/server/ServerResourcePackManager$LoadStatus + f Lnet/minecraft/class_9044$class_9046; field_47645 DONE + f Lnet/minecraft/class_9044$class_9046; field_47643 REQUESTED + f Lnet/minecraft/class_9044$class_9046; field_47644 PENDING +c net/minecraft/class_9044$class_9045 net/minecraft/client/resource/server/ServerResourcePackManager$Status + f Lnet/minecraft/class_9044$class_9045; field_47640 PENDING + f Lnet/minecraft/class_9044$class_9045; field_47641 ACTIVE + f Lnet/minecraft/class_9044$class_9045; field_47639 INACTIVE +c net/minecraft/class_9041 net/minecraft/client/resource/server/ReloadScheduler + m (Lnet/minecraft/class_9041$class_9042;)V scheduleReload scheduleReload + p 1 context +c net/minecraft/class_9041$class_9043 net/minecraft/client/resource/server/ReloadScheduler$PackInfo + f Ljava/nio/file/Path; comp_2155 path + f Ljava/util/UUID; comp_2154 id + m ()Ljava/util/UUID; comp_2154 id + m ()Ljava/nio/file/Path; comp_2155 path + m (Ljava/util/UUID;Ljava/nio/file/Path;)V + p 1 id + p 2 path +c net/minecraft/class_9041$class_9042 net/minecraft/client/resource/server/ReloadScheduler$ReloadContext + m (Z)V method_55550 onFailure + p 1 force + m ()V method_55549 onSuccess + m ()Ljava/util/List; method_55551 getPacks +c com/mojang/blaze3d/buffers/GpuFence com/mojang/blaze3d/buffers/GpuFence + m (J)Z awaitCompletion awaitCompletion + p 1 timeoutNanos +c net/minecraft/class_9055 net/minecraft/util/path/CacheFiles + f Lorg/slf4j/Logger; field_47674 LOGGER + m (Ljava/nio/file/Path;)Ljava/util/List; method_55599 findCacheFiles + p 0 directory + m (Ljava/util/List;)Ljava/util/List; method_55601 toCacheEntries + p 0 files + m (Ljava/nio/file/Path;I)V method_55600 clear + p 1 maxRetained + p 0 directory +c net/minecraft/class_9055$class_9057 net/minecraft/util/path/CacheFiles$CacheFile + f Ljava/util/Comparator; field_47678 COMPARATOR + f Ljava/nio/file/Path; comp_2170 path + f Ljava/nio/file/attribute/FileTime; comp_2171 modifiedTime + m ()Ljava/nio/file/attribute/FileTime; comp_2171 modifiedTime + m ()Ljava/nio/file/Path; comp_2170 path + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/FileTime;)V + p 1 path + p 2 modifiedTime +c net/minecraft/class_9055$class_9056 net/minecraft/util/path/CacheFiles$CacheEntry + f Ljava/util/Comparator; field_47677 COMPARATOR + f I comp_2169 removalPriority + f Ljava/nio/file/Path; comp_2168 path + m ()Ljava/nio/file/Path; comp_2168 path + m ()I comp_2169 removalPriority + m (Ljava/nio/file/Path;I)V + p 1 path + p 2 removalPriority +c net/minecraft/class_9055$1 net/minecraft/util/path/CacheFiles$1 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; method_55602 visitFile + m (Ljava/lang/Object;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile visitFile + p 2 attributes + p 1 path +c net/minecraft/class_9054 net/minecraft/client/sound/SoundListenerTransform + f Lnet/minecraft/class_9054; field_47671 DEFAULT + f Lnet/minecraft/class_243; comp_2165 position + f Lnet/minecraft/class_243; comp_2167 up + f Lnet/minecraft/class_243; comp_2166 forward + m ()Lnet/minecraft/class_243; method_55586 right + m ()Lnet/minecraft/class_243; comp_2165 position + m ()Lnet/minecraft/class_243; comp_2166 forward + m ()Lnet/minecraft/class_243; comp_2167 up + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_243;)V + p 1 position + p 2 forward + p 3 up +c net/minecraft/class_9053 net/minecraft/network/packet/s2c/common/ResourcePackRemoveS2CPacket + f Lnet/minecraft/class_9139; field_48625 CODEC + f Ljava/util/Optional; comp_2157 id + m (Lnet/minecraft/class_8705;)V method_55582 apply + m (Lnet/minecraft/class_2540;)V method_56465 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Ljava/util/Optional; comp_2157 id + m (Ljava/util/Optional;)V + p 1 id +c net/minecraft/class_9050 net/minecraft/unused/packageinfo/PackageInfo9050 +c net/minecraft/class_5582 net/minecraft/world/entity/ClientEntityManager + f Lorg/slf4j/Logger; field_27279 LOGGER + f Lnet/minecraft/class_5577; field_27284 lookup + f Lnet/minecraft/class_5576; field_27280 handler + f Lit/unimi/dsi/fastutil/longs/LongSet; field_27283 tickingChunkSections + f Lnet/minecraft/class_5573; field_27282 cache + f Lnet/minecraft/class_5570; field_27281 index + m (Lnet/minecraft/class_5568;)Z method_31876 method_31876 + p 0 e + m (Lnet/minecraft/class_1923;)V method_31875 stopTicking + p 1 pos + m (Lnet/minecraft/class_1923;)V method_31869 startTicking + p 1 pos + m ()Ljava/lang/String; method_31879 getDebugString + m ()Lnet/minecraft/class_5577; method_31866 getLookup + m (Lnet/minecraft/class_5568;)V method_31870 addEntity + p 1 entity + m (Lnet/minecraft/class_5568;)Z method_31880 method_31880 + p 0 e + m ()I method_31874 getEntityCount + m (J)Lnet/minecraft/class_5584; method_31867 method_31867 + p 1 pos + m (Lnet/minecraft/class_5572;)V method_31877 method_31877 + p 1 sections + m (Ljava/lang/Class;Lnet/minecraft/class_5576;)V + p 1 entityClass + p 2 handler + m (JLnet/minecraft/class_5572;)V method_31868 removeIfEmpty + p 3 entities + p 1 packedChunkSection + m (Lnet/minecraft/class_5572;)V method_31871 method_31871 + p 1 sections +c net/minecraft/class_5582$class_5583 net/minecraft/world/entity/ClientEntityManager$Listener + f Lnet/minecraft/class_5582; field_27285 manager + f J field_27287 lastSectionPos + f Lnet/minecraft/class_5572; field_27288 section + f Lnet/minecraft/class_5568; field_27286 entity + m (Lnet/minecraft/class_5582;Lnet/minecraft/class_5568;JLnet/minecraft/class_5572;)V + p 3 pos + p 2 entity + p 5 section +c net/minecraft/class_4251 net/minecraft/entity/ai/brain/task/RingBellTask + f F field_30160 RUN_CHANCE + f I field_30159 MAX_DISTANCE + m ()Lnet/minecraft/class_7893; method_47044 create + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47045 method_47045 + p 0 context + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47046 method_47046 + p 1 meetingPoint + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47047 method_47047 + p 3 entity + p 4 time + p 2 world +c net/minecraft/class_4250 net/minecraft/entity/ai/brain/task/EndRaidTask + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47043 method_47043 + p 0 context + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47042 method_47042 + p 1 entity + p 0 world + p 2 time + m ()Lnet/minecraft/class_7893; method_47041 create +c net/minecraft/class_5584 net/minecraft/world/entity/EntityTrackingStatus + c The status of entity tracking sections within entity managers.\n\n@see EntityTrackingSection + f Z field_27292 tracked + f Z field_27293 tick + f Lnet/minecraft/class_5584; field_27291 TICKING + f Lnet/minecraft/class_5584; field_27290 TRACKED + f Lnet/minecraft/class_5584; field_27289 HIDDEN + m ()Z method_31883 shouldTick + m (Lnet/minecraft/class_3194;)Lnet/minecraft/class_5584; method_31884 fromLevelType + p 0 levelType + m (Ljava/lang/String;IZZ)V + p 4 tick + p 3 tracked + m ()Z method_31885 shouldTrack +c net/minecraft/class_4253 net/minecraft/entity/ai/brain/task/StartRaidTask + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47088 method_47088 + p 0 context + m ()Lnet/minecraft/class_7893; method_47086 create + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47087 method_47087 + p 2 time + p 1 entity + p 0 world +c net/minecraft/class_4252 net/minecraft/entity/ai/brain/task/ForgetBellRingTask + f I field_30165 MIN_HEARD_BELL_TIME + m (II)Lnet/minecraft/class_7893; method_47077 create + p 1 distance + p 0 maxHiddenSeconds + m (Lnet/minecraft/class_7898$class_7900;Lorg/apache/commons/lang3/mutable/MutableInt;IILnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47079 method_47079 + p 5 heardBellTime + p 4 hidingPlace + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lorg/apache/commons/lang3/mutable/MutableInt;ILnet/minecraft/class_7906;ILnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47078 method_47078 + p 7 entity + p 6 world + p 8 time + m (Lorg/apache/commons/lang3/mutable/MutableInt;IILnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47080 method_47080 + p 3 context +c net/minecraft/class_5589 net/minecraft/world/gen/feature/GeodeFeatureConfig + f Lnet/minecraft/class_6017; field_33517 distributionPoints + f I field_27328 minGenOffset + f D field_27320 useAlternateLayer0Chance + f D field_27330 noiseMultiplier + f Lcom/mojang/serialization/Codec; field_27315 CODEC + f Lnet/minecraft/class_5585; field_27316 layerConfig + f Z field_27321 placementsRequireLayer0Alternate + f Lnet/minecraft/class_6017; field_33516 outerWallDistance + f Lnet/minecraft/class_6017; field_33518 pointOffset + f I field_27329 maxGenOffset + f I field_29062 invalidBlocksThreshold + f Lcom/mojang/serialization/Codec; field_27314 RANGE + f Lnet/minecraft/class_5587; field_27317 layerThicknessConfig + f Lnet/minecraft/class_5586; field_27318 crackConfig + f D field_27319 usePotentialPlacementsChance + m (Lnet/minecraft/class_5589;)Ljava/lang/Integer; method_31908 method_31908 + p 0 config + m (Lnet/minecraft/class_5589;)Ljava/lang/Double; method_36300 method_36300 + p 0 config + m (Lnet/minecraft/class_5585;Lnet/minecraft/class_5587;Lnet/minecraft/class_5586;DDZLnet/minecraft/class_6017;Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;IIDI)V + p 1 layerConfig + p 2 layerThicknessConfig + p 3 crackConfig + p 4 usePotentialPlacementsChance + p 6 useAlternateLayer0Chance + p 8 placementsRequireLayer0Alternate + p 9 outerWallDistance + p 10 distributionPoints + p 11 pointOffset + p 12 maxDistributionPoints + p 13 minPointOffset + p 14 noiseMultiplier + p 16 maxGenOffset + m (Lnet/minecraft/class_5589;)Ljava/lang/Integer; method_31906 method_31906 + p 0 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36299 method_36299 + p 0 instance + m (Lnet/minecraft/class_5589;)Ljava/lang/Double; method_31915 method_31915 + p 0 config + m (Lnet/minecraft/class_5589;)Lnet/minecraft/class_5586; method_31916 method_31916 + p 0 config + m (Lnet/minecraft/class_5589;)Lnet/minecraft/class_5587; method_31917 method_31917 + p 0 config + m (Lnet/minecraft/class_5589;)Lnet/minecraft/class_6017; method_36301 method_36301 + p 0 config + m (Lnet/minecraft/class_5589;)Lnet/minecraft/class_6017; method_36303 method_36303 + p 0 config + m (Lnet/minecraft/class_5589;)Ljava/lang/Integer; method_31909 method_31909 + p 0 config + m (Lnet/minecraft/class_5589;)Ljava/lang/Boolean; method_31913 method_31913 + p 0 config + m (Lnet/minecraft/class_5589;)Ljava/lang/Double; method_31914 method_31914 + p 0 config + m (Lnet/minecraft/class_5589;)Lnet/minecraft/class_5585; method_31918 method_31918 + p 0 config + m (Lnet/minecraft/class_5589;)Lnet/minecraft/class_6017; method_36302 method_36302 + p 0 config +c net/minecraft/class_5586 net/minecraft/world/gen/feature/GeodeCrackConfig + f Lcom/mojang/serialization/Codec; field_27302 CODEC + f D field_27303 generateCrackChance + f I field_27305 crackPointOffset + f D field_27304 baseCrackSize + m (Lnet/minecraft/class_5586;)Ljava/lang/Double; method_31896 method_31896 + p 0 config + m (Lnet/minecraft/class_5586;)Ljava/lang/Double; method_31895 method_31895 + p 0 config + m (Lnet/minecraft/class_5586;)Ljava/lang/Integer; method_31893 method_31893 + p 0 config + m (DDI)V + p 5 crackPointOffset + p 3 baseCrackSize + p 1 generateCrackChance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_31894 method_31894 + p 0 instance +c net/minecraft/class_4255 net/minecraft/entity/ai/goal/LongDoorInteractGoal + f I field_19005 ticksLeft + f Z field_19004 delayedClose + m (Lnet/minecraft/class_1308;Z)V + p 1 mob + p 2 delayedClose +c net/minecraft/class_5585 net/minecraft/world/gen/feature/GeodeLayerConfig + f Lnet/minecraft/class_4651; field_27299 outerLayerProvider + f Lnet/minecraft/class_4651; field_27298 middleLayerProvider + f Lnet/minecraft/class_4651; field_27297 alternateInnerLayerProvider + f Lnet/minecraft/class_6862; field_33769 cannotReplace + f Ljava/util/List; field_27300 innerBlocks + f Lnet/minecraft/class_4651; field_27296 innerLayerProvider + f Lnet/minecraft/class_4651; field_27295 fillingProvider + f Lcom/mojang/serialization/Codec; field_27301 CODEC + f Lnet/minecraft/class_6862; field_33931 invalidBlocks + m (Lnet/minecraft/class_5585;)Lnet/minecraft/class_4651; method_31889 method_31889 + p 0 config + m (Lnet/minecraft/class_5585;)Lnet/minecraft/class_4651; method_31888 method_31888 + p 0 config + m (Lnet/minecraft/class_4651;Lnet/minecraft/class_4651;Lnet/minecraft/class_4651;Lnet/minecraft/class_4651;Lnet/minecraft/class_4651;Ljava/util/List;Lnet/minecraft/class_6862;Lnet/minecraft/class_6862;)V + p 6 innerBlocks + p 5 outerLayerProvider + p 4 middleLayerProvider + p 3 alternateInnerLayerProvider + p 2 innerLayerProvider + p 1 fillingProvider + p 8 invalidBlocks + p 7 cannotReplace + m (Lnet/minecraft/class_5585;)Lnet/minecraft/class_6862; method_37255 method_37255 + p 0 config + m (Lnet/minecraft/class_5585;)Ljava/util/List; method_31886 method_31886 + p 0 config + m (Lnet/minecraft/class_5585;)Lnet/minecraft/class_6862; method_36995 method_36995 + p 0 config + m (Lnet/minecraft/class_5585;)Lnet/minecraft/class_4651; method_31892 method_31892 + p 0 config + m (Lnet/minecraft/class_5585;)Lnet/minecraft/class_4651; method_31891 method_31891 + p 0 config + m (Lnet/minecraft/class_5585;)Lnet/minecraft/class_4651; method_31890 method_31890 + p 0 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_31887 method_31887 + p 0 instance +c net/minecraft/class_5588 net/minecraft/world/gen/feature/GeodeFeature + f [Lnet/minecraft/class_2350; field_27313 DIRECTIONS +c net/minecraft/class_4257 net/minecraft/entity/ai/brain/sensor/VillagerBabiesSensor + m (Lnet/minecraft/class_1309;)Ljava/util/List; method_20000 getVisibleVillagerBabies + p 1 entities + m (Lnet/minecraft/class_1309;)Z method_20001 isVillagerBaby + p 1 entity + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_6670; method_20002 getVisibleMobs + p 1 entity +c net/minecraft/class_5587 net/minecraft/world/gen/feature/GeodeLayerThicknessConfig + f Lcom/mojang/serialization/Codec; field_27311 RANGE + f Lcom/mojang/serialization/Codec; field_27306 CODEC + f D field_27310 outerLayer + f D field_27309 middleLayer + f D field_27308 innerLayer + f D field_27307 filling + m (Lnet/minecraft/class_5587;)Ljava/lang/Double; method_31901 method_31901 + p 0 config + m (Lnet/minecraft/class_5587;)Ljava/lang/Double; method_31900 method_31900 + p 0 config + m (Lnet/minecraft/class_5587;)Ljava/lang/Double; method_31899 method_31899 + p 0 config + m (Lnet/minecraft/class_5587;)Ljava/lang/Double; method_31897 method_31897 + p 0 config + m (DDDD)V + p 1 filling + p 3 innerLayer + p 5 middleLayer + p 7 outerLayer + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_31898 method_31898 + p 0 instance +c net/minecraft/class_4256 net/minecraft/entity/ai/brain/sensor/NearestBedSensor + f I field_30252 MAX_TRIES + f I field_30253 MAX_EXPIRY_TIME + f I field_30251 REMEMBER_TIME + f I field_20296 tries + f J field_20297 expiryTime + f Lit/unimi/dsi/fastutil/longs/Long2LongMap; field_20295 positionToExpiryTime + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)V method_21646 sense + m (Lnet/minecraft/class_2338;)Z method_21644 method_21644 + p 1 pos +c net/minecraft/class_5592 net/minecraft/loot/function/SetBannerPatternLootFunction + f Z field_27344 append + f Lnet/minecraft/class_9307; field_27343 patterns + f Lcom/mojang/serialization/MapCodec; field_45839 CODEC + m (Lnet/minecraft/class_5592;)Ljava/lang/Boolean; method_53360 method_53360 + p 0 function + m (Ljava/util/List;Lnet/minecraft/class_9307;Z)V + p 3 append + p 2 patterns + p 1 conditions + m (Z)Lnet/minecraft/class_5592$class_6157; method_35531 builder + p 0 append + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53361 method_53361 + p 0 instance + m (Lnet/minecraft/class_9307;Lnet/minecraft/class_9307;)Lnet/minecraft/class_9307; method_57648 method_57648 + p 0 current + p 1 newPatterns + m (Lnet/minecraft/class_5592;)Lnet/minecraft/class_9307; method_53362 method_53362 + p 0 function +c net/minecraft/class_5592$class_6157 net/minecraft/loot/function/SetBannerPatternLootFunction$Builder + f Lnet/minecraft/class_9307$class_3750; field_31862 patterns + f Z field_31863 append + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1767;)Lnet/minecraft/class_5592$class_6157; method_35533 pattern + p 2 color + p 1 pattern + m (Z)V + p 1 append + m ()Lnet/minecraft/class_5592$class_6157; method_35532 getThisBuilder +c net/minecraft/class_4264 net/minecraft/client/gui/widget/PressableWidget + c A pressable widget has a press action. It is pressed when it is clicked. It is\nalso pressed when enter or space keys are pressed when it is selected. + f Lnet/minecraft/class_8666; field_45339 TEXTURES + f Ljava/util/function/Supplier; field_64534 focusOverride + m (Lnet/minecraft/class_11907;)V method_25306 onPress + p 1 input + m (Lnet/minecraft/class_332;)V method_75794 drawButton + p 1 context + m (Ljava/util/function/Supplier;)V method_76613 setFocusOverride + p 1 focusOverride + m (Lnet/minecraft/class_332;IIF)V method_75752 drawIcon + p 1 context + p 2 mouseX + p 3 mouseY + p 4 deltaTicks + m (Lnet/minecraft/class_12225;)V method_75793 drawLabel + p 1 drawer +c net/minecraft/class_4265 net/minecraft/client/gui/widget/ElementListWidget + m (Lnet/minecraft/class_4265$class_4266;)Z method_48207 method_48207 + p 0 element +c net/minecraft/class_4265$class_4266 net/minecraft/client/gui/widget/ElementListWidget$Entry + f Lnet/minecraft/class_364; field_19077 focused + f Z field_19078 dragging + f Lnet/minecraft/class_6379; field_33782 focusedSelectable + m (Lnet/minecraft/class_8023;I)Lnet/minecraft/class_8016; method_48208 getNavigationPath + p 2 index + p 1 navigation + m ()Ljava/util/List; method_37025 selectableChildren + m (Lnet/minecraft/class_6382;)V method_37024 appendNarrations + p 1 builder +c net/minecraft/class_5599 net/minecraft/client/render/entity/model/LoadedEntityModels + f Lnet/minecraft/class_5599; field_55267 EMPTY + f Ljava/util/Map; field_27542 modelParts + m ()Lnet/minecraft/class_5599; method_65522 copy + m (Ljava/util/Map;)V + p 1 modelParts + m (Lnet/minecraft/class_5601;)Lnet/minecraft/class_630; method_32072 getModelPart + p 1 layer +c net/minecraft/class_4267 net/minecraft/client/gui/screen/multiplayer/MultiplayerServerListWidget + f Lnet/minecraft/class_2960; field_45527 PINGING_5_TEXTURE + f Ljava/util/List; field_19109 servers + f Lnet/minecraft/class_2960; field_45515 MOVE_DOWN_TEXTURE + f Lnet/minecraft/class_2960; field_45525 PINGING_3_TEXTURE + f Lnet/minecraft/class_2960; field_45513 MOVE_UP_TEXTURE + f Lnet/minecraft/class_2561; field_41853 INCOMPATIBLE_TEXT + f Lnet/minecraft/class_2960; field_45523 PINGING_1_TEXTURE + f Lnet/minecraft/class_2561; field_41855 PINGING_TEXT + f Lnet/minecraft/class_2960; field_45521 PING_4_TEXTURE + f Lnet/minecraft/class_2960; field_45519 PING_2_TEXTURE + f Lnet/minecraft/class_2960; field_45529 JOIN_TEXTURE + f Lnet/minecraft/class_2960; field_45517 UNREACHABLE_TEXTURE + f Lnet/minecraft/class_2561; field_26582 CANNOT_RESOLVE_TEXT + f Lnet/minecraft/class_2960; field_45530 MOVE_UP_HIGHLIGHTED_TEXTURE + f Lorg/slf4j/Logger; field_19104 LOGGER + f Lnet/minecraft/class_2960; field_45516 INCOMPATIBLE_TEXTURE + f Lnet/minecraft/class_2960; field_45526 PINGING_4_TEXTURE + f Lnet/minecraft/class_2960; field_45514 MOVE_DOWN_HIGHLIGHTED_TEXTURE + f Lnet/minecraft/class_2960; field_45524 PINGING_2_TEXTURE + f Lnet/minecraft/class_2561; field_41854 NO_CONNECTION_TEXT + f Lnet/minecraft/class_2960; field_45522 PING_5_TEXTURE + f Lnet/minecraft/class_2561; field_41856 ONLINE_TEXT + f Lnet/minecraft/class_2960; field_45520 PING_3_TEXTURE + f Lnet/minecraft/class_4267$class_504; field_19110 scanningEntry + f Ljava/util/concurrent/ThreadPoolExecutor; field_19105 SERVER_PINGER_THREAD_POOL + f Lnet/minecraft/class_2960; field_45518 PING_1_TEXTURE + f Lnet/minecraft/class_2960; field_45528 JOIN_HIGHLIGHTED_TEXTURE + f Lnet/minecraft/class_2561; field_26581 LAN_SCANNING_TEXT + f Lnet/minecraft/class_2561; field_26583 CANNOT_CONNECT_TEXT + f Lnet/minecraft/class_500; field_19108 screen + f Ljava/util/List; field_19111 lanServers + m (Ljava/util/List;)V method_20126 setLanServers + p 1 lanServers + m ()V method_52204 onRemoved + m (Lnet/minecraft/class_500;Lnet/minecraft/class_310;IIII)V + p 5 top + p 6 bottom + p 1 screen + p 2 client + p 3 width + p 4 height + m (Lnet/minecraft/class_641;)V method_20125 setServers + p 1 servers + m ()V method_20131 updateEntries + m (Lnet/minecraft/class_4267$class_504;)V method_20122 setSelected +c net/minecraft/class_4267$class_504 net/minecraft/client/gui/screen/multiplayer/MultiplayerServerListWidget$Entry + m (Lnet/minecraft/class_4267$class_504;)Z method_73436 isOfSameType + p 1 entry + m ()V method_74043 connect +c net/minecraft/class_4267$class_4270 net/minecraft/client/gui/screen/multiplayer/MultiplayerServerListWidget$ServerEntry + f [B field_42874 favicon + f Lnet/minecraft/class_310; field_19119 client + f Lnet/minecraft/class_500; field_19118 screen + f Ljava/util/List; field_47855 playerListSummary + f Lnet/minecraft/class_2960; field_47856 statusIconTexture + f Lnet/minecraft/class_2561; field_47857 statusTooltipText + f Lnet/minecraft/class_8573; field_19123 icon + f Lnet/minecraft/class_642; field_19120 server + m ()V method_29978 saveFile + m (Lnet/minecraft/class_4267;Lnet/minecraft/class_500;Lnet/minecraft/class_642;)V + p 2 screen + p 3 server + m (II)V method_22110 swapEntries + p 2 j + p 1 i + m ()V method_55815 update + m ()Lnet/minecraft/class_642; method_20133 getServer + m (Lnet/minecraft/class_332;IILnet/minecraft/class_2960;)V method_20134 draw + p 2 x + p 1 context + p 4 textureId + p 3 y + m ([B)Z method_49300 uploadFavicon + p 1 bytes +c net/minecraft/class_4267$class_4269 net/minecraft/client/gui/screen/multiplayer/MultiplayerServerListWidget$LanServerEntry + f Lnet/minecraft/class_500; field_19115 screen + f Lnet/minecraft/class_1131; field_19114 server + f Lnet/minecraft/class_2561; field_26588 TITLE_TEXT + f Lnet/minecraft/class_2561; field_26589 HIDDEN_ADDRESS_TEXT + f Lnet/minecraft/class_310; field_19113 client + m ()Lnet/minecraft/class_2561; method_48273 getMotdNarration + m (Lnet/minecraft/class_500;Lnet/minecraft/class_1131;)V + p 1 screen + p 2 server +c net/minecraft/class_4267$class_4268 net/minecraft/client/gui/screen/multiplayer/MultiplayerServerListWidget$ScanningEntry + f Lnet/minecraft/class_8661; field_62477 loadingWidget + f Lnet/minecraft/class_310; field_19112 client +c net/minecraft/class_5598 net/minecraft/client/render/block/entity/SkullBlockEntityModel + m (Lnet/minecraft/class_630;)V + p 1 root +c net/minecraft/class_5598$class_11652 net/minecraft/client/render/block/entity/SkullBlockEntityModel$SkullModelState + f F field_61682 yaw + f F field_61683 pitch + f F field_61681 poweredTicks +c net/minecraft/class_5560 net/minecraft/block/entity/ChestLidAnimator + c Handles the animation for opening and closing chests and ender chests. + f F field_27214 lastProgress + f Z field_27212 open + f F field_27213 progress + m ()V method_31672 step + m (F)F method_31673 getProgress + p 1 tickProgress + m (Z)V method_31674 setOpen + p 1 open +c net/minecraft/class_5562 net/minecraft/world/chunk/BlockEntityTickInvoker + m ()Z method_31704 isRemoved + m ()V method_31703 tick + m ()Lnet/minecraft/class_2338; method_31705 getPos + m ()Ljava/lang/String; method_31706 getName +c net/minecraft/class_4231 net/minecraft/client/sound/StaticSound + f I field_18919 streamBufferPointer + f Ljava/nio/ByteBuffer; field_18916 sample + f Z field_18918 hasBuffer + f Ljavax/sound/sampled/AudioFormat; field_18917 format + m ()V method_19687 close + m ()Ljava/util/OptionalInt; method_19686 getStreamBufferPointer + m ()Ljava/util/OptionalInt; method_19688 takeStreamBufferPointer + m (Ljava/nio/ByteBuffer;Ljavax/sound/sampled/AudioFormat;)V + p 2 format + p 1 sample +c net/minecraft/class_4230 net/minecraft/client/sound/AlUtil + f Lorg/slf4j/Logger; field_18915 LOGGER + m (I)Ljava/lang/String; method_19683 getErrorMessage + p 0 errorCode + m (Ljava/lang/String;)Z method_19684 checkErrors + p 0 sectionName + m (Ljavax/sound/sampled/AudioFormat;)I method_19685 getFormatId + p 0 format + m (I)Ljava/lang/String; method_20052 getAlcErrorMessage + p 0 errorCode + m (JLjava/lang/String;)Z method_20051 checkAlcErrors + p 0 deviceHandle + p 2 sectionName +c net/minecraft/class_5561 net/minecraft/block/entity/ViewerCountManager + c Handles the viewer count for container block entities, like chests,\nender chests, and barrels. + f I field_31339 SCHEDULE_TICK_DELAY + f D field_48376 maxBlockInteractionRange + f I field_27215 viewerCount + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;II)V method_31682 onViewerCountUpdate + c Called when the viewer count updates, such as when a player interact with this container\nor when {@linkplain #updateViewerCount distance-based checks} are run. + p 2 pos + p 3 state + p 4 oldViewerCount + p 5 newViewerCount + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_31686 updateViewerCount + p 1 world + p 3 state + p 2 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_31687 scheduleBlockTick + p 0 world + p 2 state + p 1 pos + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_31685 closeContainer + p 1 user + p 2 world + p 3 pos + p 4 state + m ()I method_31678 getViewerCount + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_31683 onContainerClose + c Run when this container closes (when the viewer count reaches zero). + p 2 pos + p 1 world + p 3 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_31681 onContainerOpen + c Run when this container is opened (when the viewer count becomes nonzero). + p 2 pos + p 1 world + p 3 state + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;)Z method_72654 hasViewingUsers + p 1 entity + p 2 blockPos + m (Lnet/minecraft/class_1657;)Z method_31679 isPlayerViewing + c Determines whether the given player is currently viewing this container. + p 1 player + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Ljava/util/List; method_56121 getViewingUsers + p 1 world + p 2 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;)Z method_72655 method_72655 + p 2 entity + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;D)V method_31684 openContainer + p 1 user + p 2 world + p 3 pos + p 4 state + p 5 userInteractionRange +c net/minecraft/class_5568 net/minecraft/world/entity/EntityLike + c A prototype of entity that's suitable for entity manager to handle. + m ()Lnet/minecraft/class_2338; method_24515 getBlockPos + m ()Ljava/util/stream/Stream; method_31748 streamPassengersAndSelf + c Returns a stream consisting of this entity and its passengers in which\nthis entity's passengers are iterated before this entity.\n\n

Moreover, this stream guarantees that any entity only appears after\nall its passengers have appeared in the stream. This is useful for\ncertain actions that must be applied on passengers before applying on\nthis entity.\n\n@implNote The default implementation is very costly.\n\n@see #streamSelfAndPassengers() + m ()Lnet/minecraft/class_238; method_5829 getBoundingBox + m ()Ljava/util/stream/Stream; method_24204 streamSelfAndPassengers + c Returns a stream consisting of this entity and its passengers recursively.\nEach entity will appear before any of its passengers.\n\n

This may be less costly than {@link #streamPassengersAndSelf()} if the\nstream's iteration would terminates fast, such as finding an arbitrary\nmatch of entity in the passengers tree.\n\n@implNote The default implementation is not very efficient.\n\n@see #streamPassengersAndSelf() + m (Lnet/minecraft/class_1297$class_5529;)V method_31745 setRemoved + p 1 reason + m (Lnet/minecraft/class_5569;)V method_31744 setChangeListener + p 1 changeListener + m ()Z method_31747 isPlayer + m ()I method_5628 getId + c {@return the network ID of this entity}\n\n

Compared to the {@linkplain #getUuid() UUID}, the integer network ID is\nsignificantly smaller and more suitable for network transportation. However, it\nis not persistent across game runs. For persistent purposes such as commands\nor game data, use the UUID. + m ()Z method_31746 shouldSave +c net/minecraft/class_4237 net/minecraft/client/sound/SoundLoader + f Lnet/minecraft/class_5912; field_18943 resourceFactory + f Ljava/util/Map; field_18944 loadedSounds + m (Lnet/minecraft/class_2960;)Ljava/util/concurrent/CompletableFuture; method_19743 loadStatic + p 1 id + m (Lnet/minecraft/class_2960;Z)Ljava/util/concurrent/CompletableFuture; method_19744 loadStreamed + p 1 id + p 2 repeatInstantly + m ()V method_19738 close + m (Ljava/util/Collection;)Ljava/util/concurrent/CompletableFuture; method_19741 loadStatic + p 1 sounds + m (Ljava/util/concurrent/CompletableFuture;)V method_19742 method_19742 + p 0 soundFuture + m (Lnet/minecraft/class_1111;)Ljava/util/concurrent/CompletableFuture; method_19740 method_19740 + p 1 sound + m (Lnet/minecraft/class_5912;)V + p 1 resourceFactory + m (Lnet/minecraft/class_2960;)Ljava/util/concurrent/CompletableFuture; method_19746 method_19746 + p 1 id2 +c net/minecraft/class_5567 net/minecraft/world/chunk/ChunkStatusChangeListener + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_3194;)V onChunkStatusChange onChunkStatusChange + p 2 levelType + p 1 pos +c net/minecraft/class_6898 net/minecraft/registry/entry/RegistryEntryListCodec + f Lcom/mojang/serialization/Codec; field_36483 entryListStorageCodec + f Lnet/minecraft/class_5321; field_36480 registry + f Lcom/mojang/serialization/Codec; field_36481 entryCodec + f Lcom/mojang/serialization/Codec; field_36482 directEntryListCodec + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;Z)V + p 1 registry + p 3 alwaysSerializeAsList + c whether to always serialize the list as a list\ninstead of serializing as one entry if the length is {@code 0} + p 2 entryCodec + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decode decode + p 1 ops + p 2 input + m (Lnet/minecraft/class_6885;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_40389 encodeDirect + p 3 prefix + p 2 ops + p 1 entryList + m (Lnet/minecraft/class_6885;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_40384 encode + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_40381 method_40381 + p 0 pair + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_6862;)Lcom/mojang/serialization/DataResult; method_40385 method_40385 + p 1 tag + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode encode + p 1 entryList + p 3 prefix + p 2 ops + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;Z)Lcom/mojang/serialization/Codec; method_40388 create + p 2 alwaysSerializeAsList + c whether to always serialize the list as a list\ninstead of serializing as one entry if the length is {@code 0} + p 0 registryRef + p 1 entryCodec + m (Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/class_6885;)Lcom/mojang/datafixers/util/Pair; method_58028 method_58028 + p 1 entries + m (Lnet/minecraft/class_7871;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_40386 method_40386 + p 1 pair + m (Lcom/mojang/serialization/Codec;Z)Lcom/mojang/serialization/Codec; method_40382 createDirectEntryListCodec + p 0 entryCodec + p 1 alwaysSerializeAsList + c whether to always serialize the list as a list\ninstead of serializing as one entry if the length is {@code 0} + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_58030 method_58030 + p 0 entries + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_40383 decodeDirect + p 2 input + p 1 ops + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_6862;)Lcom/mojang/serialization/DataResult; method_58029 get + p 1 tag + p 0 registry +c net/minecraft/class_4239 net/minecraft/util/path/PathUtil + c A class holding path-related utility methods. + f Ljava/util/regex/Pattern; field_40712 VALID_FILE_NAME + f Ljava/util/regex/Pattern; field_18955 RESERVED_WINDOWS_NAMES + f Ljava/util/regex/Pattern; field_18956 FILE_NAME_WITH_COUNT + f I field_33384 MAX_NAME_LENGTH + m (Ljava/nio/file/Path;)V method_47525 createDirectories + c A symbolic-link safe version of {@link java.nio.file.Files#createDirectories}. + p 0 path + m (Ljava/lang/String;)Ljava/lang/String; method_34675 getPosixFullPath + c {@return the full path of {@code path} with directory separator normalized\nto {@code /}} + p 0 path + m (Ljava/lang/String;)Ljava/lang/String; method_34676 normalizeToPosix + c {@return the normalized path of {@code path} with directory separator normalized\nto {@code /}} + p 0 path + m (Ljava/nio/file/Path;Ljava/util/List;)Ljava/nio/file/Path; method_46344 getPath + c {@return {@code paths} resolved as a path from {@code root}}\n\n

If {@code paths} is empty, this returns {@code root}. + p 1 paths + p 0 root + m (Ljava/lang/String;)Z method_76325 isPathSegmentValid + p 0 name + m (Ljava/nio/file/Path;)Z method_20200 isNormal + c {@return whether {@code path} is already normalized} + p 0 path + m (Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;)Ljava/nio/file/Path; method_20202 getResourcePath + p 0 path + p 1 resourceName + p 2 extension + m (Ljava/nio/file/Path;)Z method_20201 isAllowedName + c {@return whether {@code path} does not contain reserved Windows file names}\n\n@apiNote This returns {@code false} for reserved names regardless of whether the platform\nthe game is running is actually Windows. Note that this does not check for\nillegal characters or file permissions. + p 0 path + m ([Ljava/lang/String;)V method_46345 validatePath + c Validates that {@code paths} is not empty and does not contain invalid segments\n(such as {@code .}, {@code ..}, or otherwise {@linkplain #isFileNameValid invalid names}).\n\n@throws IllegalArgumentException when the {@code paths} are invalid + p 0 paths + m (Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_19773 getNextUniqueName + c {@return a filename, prefixed with {@code name}, that does not currently\nexist inside {@code path}}\n\n@implNote This strips any illegal characters from {@code name}, then\nattempts to make a directory with the name and the extension. If this succeeds,\nthe directory is deleted and the name with the extension is returned. If not, it\nappends {@code (1)} to the name and tries again until it succeeds.\n\n@throws IOException if creating the temporary directory fails, e.g. due to {@code path}\nnot being a directory + p 0 path + p 1 name + p 2 extension + m (Ljava/lang/String;)Z method_72181 isNotReservedWindowsName + p 0 path + m (Ljava/lang/String;)Z method_46347 isFileNameValid + c {@return whether {@code name} is a valid file name}\n\n@apiNote A valid file name contains only ASCII lowercase alphabets, ASCII digits,\na dot, or an underscore. Unlike {@link Identifier} paths, hyphens are not allowed. + p 0 name + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_46346 split + c {@return {@code path} split by {@code /}, or an error result if the path is invalid}\n\n

All path segments must be a {@linkplain #isFileNameValid valid file name}. Additionally,\n{@code .} and {@code ..} are forbidden. + p 0 path + m (Ljava/lang/String;)Ljava/lang/String; method_61105 replaceInvalidChars + p 0 fileName +c net/minecraft/class_5569 net/minecraft/world/entity/EntityChangeListener + c A listener for an entity's changes associated to saving.\n\n

Each callback is associated with an {@link net.minecraft.entity.Entity}. + f Lnet/minecraft/class_5569; field_27243 NONE + c An empty listener. + m ()V method_31749 updateEntityPosition + m (Lnet/minecraft/class_1297$class_5529;)V method_31750 remove + p 1 reason +c net/minecraft/class_6899 net/minecraft/registry/entry/RegistryFixedCodec + f Lnet/minecraft/class_5321; field_36484 registry + m (Lnet/minecraft/class_5321;)V + p 1 registry + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lnet/minecraft/class_5321;)Lcom/mojang/serialization/DataResult; method_40395 method_40395 + p 2 registryKey + m (Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/class_6880$class_6883;)Lcom/mojang/datafixers/util/Pair; method_44141 method_44141 + p 1 value + m (Ljava/util/Optional;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_44142 method_44142 + p 2 pair + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decode decode + p 2 input + p 1 ops + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_6899; method_40400 of + p 0 registry + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode encode + p 1 entry + p 2 ops + p 3 prefix + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_40397 method_40397 + p 1 value + m (Lnet/minecraft/class_6880;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_40396 encode +c net/minecraft/class_4238 net/minecraft/client/sound/SoundExecutor + f Z field_18954 stopped + f Ljava/lang/Thread; field_18953 thread + m ()V method_74408 restart + m (Ljava/lang/Thread;Ljava/lang/Throwable;)V method_73255 method_73255 + p 1 throwable + p 0 thread + m ()V method_19763 stop + m ()Ljava/lang/Thread; method_19764 createThread + m ()V method_19765 waitForStop +c net/minecraft/class_5566 net/minecraft/world/storage/ChunkDataList + f Ljava/util/List; field_27242 backingList + f Lnet/minecraft/class_1923; field_27241 pos + m (Lnet/minecraft/class_1923;Ljava/util/List;)V + p 2 list + p 1 pos + m ()Z method_31743 isEmpty + m ()Lnet/minecraft/class_1923; method_31741 getChunkPos + m ()Ljava/util/stream/Stream; method_31742 stream +c net/minecraft/class_4235 net/minecraft/client/sound/Channel + f Lnet/minecraft/class_4225; field_18938 soundEngine + f Ljava/util/concurrent/Executor; field_18939 executor + f Ljava/util/Set; field_18937 sources + m (Lnet/minecraft/class_4225;Ljava/util/concurrent/Executor;)V + p 2 executor + p 1 soundEngine + m (Lnet/minecraft/class_4235$class_4236;)Lnet/minecraft/class_4224; method_19725 method_19725 + p 0 source + m ()V method_19722 tick + m (Lnet/minecraft/class_4225$class_4105;)Ljava/util/concurrent/CompletableFuture; method_19723 createSource + p 1 mode + m ()V method_19728 close + m (Ljava/util/function/Consumer;)V method_19727 execute + p 1 sourcesConsumer +c net/minecraft/class_4235$class_4236 net/minecraft/client/sound/Channel$SourceManager + f Lnet/minecraft/class_4224; field_18941 source + f Z field_18942 stopped + m (Ljava/util/function/Consumer;)V method_19735 run + p 1 action + m ()V method_19736 close + m (Lnet/minecraft/class_4235;Lnet/minecraft/class_4224;)V + p 2 source + m ()Z method_19732 isStopped +c net/minecraft/class_5565 net/minecraft/world/storage/EntityChunkDataAccess + f Lorg/slf4j/Logger; field_27232 LOGGER + f Ljava/lang/String; field_31414 ENTITIES_KEY + f Ljava/lang/String; field_31415 POSITION_KEY + f Lnet/minecraft/class_3977; field_48747 storage + f Lnet/minecraft/class_10176; field_34056 taskExecutor + f Lnet/minecraft/class_3218; field_27233 world + f Lit/unimi/dsi/fastutil/longs/LongSet; field_27235 emptyChunks + m (Lnet/minecraft/class_1923;)Lnet/minecraft/class_5566; method_31735 emptyDataList + p 0 pos + m (Lnet/minecraft/class_3977;Lnet/minecraft/class_3218;Ljava/util/concurrent/Executor;)V + p 1 storage + p 3 executor + p 2 world + m (Lnet/minecraft/class_1923;Ljava/util/Optional;)Lnet/minecraft/class_5566; method_31731 method_31731 + p 2 nbt + m (Lnet/minecraft/class_1923;Ljava/lang/Throwable;)Ljava/lang/Object; method_61002 method_61002 + p 2 throwable + m (Lnet/minecraft/class_1923;Ljava/lang/Throwable;)Ljava/lang/Object; method_61000 method_61000 + p 2 throwable + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/class_1923;)V method_61003 handleLoadFailure + p 2 pos + p 1 future + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/class_1923;)V method_61001 handleSaveFailure + p 2 pos + p 1 future +c net/minecraft/class_6895 net/minecraft/registry/RegistryCodecs + c A utility class for serialization of registries using codecs. + m (Lnet/minecraft/class_5321;Z)Lcom/mojang/serialization/Codec; method_40349 entryList + p 1 alwaysSerializeAsList + c whether to always serialize the list as a list\ninstead of serializing as one entry if the length is {@code 0} + p 0 registryRef + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_40341 entryList + p 1 elementCodec + p 0 registryRef + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;Z)Lcom/mojang/serialization/Codec; method_40343 entryList + p 1 elementCodec + p 0 registryRef + p 2 alwaysSerializeAsList + c whether to always serialize the list as a list\ninstead of serializing as one entry if the length is {@code 0} + m (Lnet/minecraft/class_5321;)Lcom/mojang/serialization/Codec; method_40340 entryList + p 0 registryRef +c net/minecraft/class_4234 net/minecraft/client/sound/AudioStream + m (I)Ljava/nio/ByteBuffer; method_19720 read + p 1 size + m ()Ljavax/sound/sampled/AudioFormat; method_19719 getFormat +c net/minecraft/class_4229 net/minecraft/client/sound/ChannelList + f I field_18912 size + f Ljava/util/List; field_18911 buffers + f I field_18913 currentBufferSize + f Ljava/nio/ByteBuffer; field_18914 buffer + m (I)V + p 1 size + m (F)V accept accept + p 1 value + m ()I method_59756 getCurrentBufferSize + m ()Ljava/nio/ByteBuffer; method_19679 getBuffer +c net/minecraft/class_5571 net/minecraft/world/storage/ChunkDataAccess + m (Lnet/minecraft/class_5566;)V method_31760 writeChunkData + p 1 dataList + m (Z)V method_31758 awaitAll + p 1 sync + m (Lnet/minecraft/class_1923;)Ljava/util/concurrent/CompletableFuture; method_31759 readChunkData + p 1 pos +c net/minecraft/class_5570 net/minecraft/world/entity/EntityIndex + c An index of entities by both their network IDs and UUIDs. + f Ljava/util/Map; field_27246 uuidToEntity + f Lorg/slf4j/Logger; field_27244 LOGGER + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_27245 idToEntity + m (Lnet/minecraft/class_5568;)V method_31753 add + p 1 entity + m (Ljava/util/UUID;)Lnet/minecraft/class_5568; method_31755 get + p 1 uuid + m ()I method_31756 size + m (Lnet/minecraft/class_5575;Lnet/minecraft/class_7927;)V method_31754 forEach + p 2 consumer + p 1 filter + m (Lnet/minecraft/class_5568;)V method_31757 remove + p 1 entity + m ()Ljava/lang/Iterable; method_31751 iterate + m (I)Lnet/minecraft/class_5568; method_31752 get + p 1 id +c net/minecraft/class_5573 net/minecraft/world/entity/SectionedEntityCache + c Stores entities with the chunk sections they are in.\n\n@see EntityTrackingSection + f Lit/unimi/dsi/fastutil/longs/LongSortedSet; field_27253 trackedPositions + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_27252 trackingSections + f Ljava/lang/Class; field_27250 entityClass + f Lit/unimi/dsi/fastutil/longs/Long2ObjectFunction; field_27251 posToStatus + m (J)Ljava/util/stream/LongStream; method_31772 getSections + p 1 chunkPos + m (J)Lnet/minecraft/class_5572; method_31788 addSection + p 1 sectionPos + m (J)Lnet/minecraft/class_5572; method_31785 findTrackingSection + p 1 sectionPos + m (Ljava/lang/Class;Lit/unimi/dsi/fastutil/longs/Long2ObjectFunction;)V + p 2 chunkStatusDiscriminator + p 1 entityClass + m (Lnet/minecraft/class_238;Lnet/minecraft/class_7927;)V method_31777 forEachInBox + c Runs the given action on each collection of entities in the chunk sections within the given box. + p 1 box + p 2 consumer + m (Lit/unimi/dsi/fastutil/longs/LongSet;J)V method_31780 method_31780 + p 1 sectionPos + p 0 trackingSection + m ()I method_31781 sectionCount + m (J)V method_31786 removeSection + p 1 sectionPos + m ()Lit/unimi/dsi/fastutil/longs/LongSet; method_31770 getChunkPositions + m (Lnet/minecraft/class_5575;Lnet/minecraft/class_238;Lnet/minecraft/class_7927;)V method_31773 forEachIntersects + p 2 box + p 3 consumer + p 1 filter + m (Lnet/minecraft/class_5575;Lnet/minecraft/class_238;Lnet/minecraft/class_7927;Lnet/minecraft/class_5572;)Lnet/minecraft/class_7927$class_7928; method_31778 method_31778 + p 3 section + m (Lnet/minecraft/class_238;Lnet/minecraft/class_7927;)V method_31783 forEachIntersects + p 2 consumer + p 1 box + m (Lnet/minecraft/class_238;Lnet/minecraft/class_7927;Lnet/minecraft/class_5572;)Lnet/minecraft/class_7927$class_7928; method_39465 method_39465 + p 2 section + m (II)Lit/unimi/dsi/fastutil/longs/LongSortedSet; method_31771 getSections + p 2 chunkZ + p 1 chunkX + m (J)Ljava/util/stream/Stream; method_31782 getTrackingSections + p 1 chunkPos + m (J)Lnet/minecraft/class_5572; method_31784 getTrackingSection + p 1 sectionPos + m (J)J method_31787 chunkPosFromSectionPos + p 0 sectionPos +c net/minecraft/class_4242 net/minecraft/entity/ai/brain/task/CelebrateRaidWinTask + f Lnet/minecraft/class_3765; field_18983 raid + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_19954 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)Z method_19951 shouldRun + m (Lnet/minecraft/class_1767;I)Lnet/minecraft/class_1799; method_19950 createFirework + p 2 flight + p 1 color + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_19953 finishRunning + m (II)V + p 1 minRunTime + p 2 maxRunTime + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_19952 shouldKeepRunning +c net/minecraft/class_5572 net/minecraft/world/entity/EntityTrackingSection + c A collection of entities tracked within a chunk section. + f Lnet/minecraft/class_5584; field_27249 status + f Lnet/minecraft/class_3509; field_27248 collection + f Lorg/slf4j/Logger; field_27247 LOGGER + m (Lnet/minecraft/class_5568;)V method_31764 add + p 1 entity + m (Lnet/minecraft/class_5568;)Z method_31767 remove + p 1 entity + m ()Ljava/util/stream/Stream; method_31766 stream + m (Ljava/lang/Class;Lnet/minecraft/class_5584;)V + p 2 status + p 1 entityClass + m ()I method_31769 size + m (Lnet/minecraft/class_238;Lnet/minecraft/class_7927;)Lnet/minecraft/class_7927$class_7928; method_31765 forEach + p 2 consumer + p 1 box + m ()Lnet/minecraft/class_5584; method_31768 getStatus + m (Lnet/minecraft/class_5584;)Lnet/minecraft/class_5584; method_31763 swapStatus + p 1 status + m ()Z method_31761 isEmpty + m (Lnet/minecraft/class_5575;Lnet/minecraft/class_238;Lnet/minecraft/class_7927;)Lnet/minecraft/class_7927$class_7928; method_31762 forEach + p 3 consumer + p 1 type + p 2 box +c net/minecraft/class_5579 net/minecraft/server/world/ServerEntityManager + c An entity manager for a server environment. + f Ljava/util/Set; field_27261 entityUuids + f Lnet/minecraft/class_5577; field_27266 lookup + f Lorg/slf4j/Logger; field_27260 LOGGER + f Lnet/minecraft/class_5571; field_27263 dataAccess + f Lnet/minecraft/class_5570; field_27264 index + f Ljava/util/Queue; field_27270 loadingQueue + f Lnet/minecraft/class_5576; field_27262 handler + f Lnet/minecraft/class_5573; field_27265 cache + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_27268 managedStatuses + f Lit/unimi/dsi/fastutil/longs/LongSet; field_27269 pendingUnloads + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_27267 trackingStatuses + m (JLnet/minecraft/class_5572;)V method_31811 entityLeftSection + p 3 section + p 1 sectionPos + m (Lnet/minecraft/class_5568;)V method_31857 method_31857 + p 1 entity + m (J)Z method_31837 unload + p 1 chunkPos + m (J)Z method_31849 method_31849 + p 1 pos + m (Lnet/minecraft/class_5568;)Z method_31861 method_31861 + p 0 entity + m (Lnet/minecraft/class_4456;J)V method_31813 method_31813 + p 2 chunkPos + m (Ljava/util/stream/Stream;)V method_31828 loadEntities + c Loads a few entities from disk to this manager. + p 1 entities + m (J)Z method_37252 isLoaded + p 1 chunkPos + m (Lnet/minecraft/class_5572;)Ljava/util/stream/Stream; method_31821 method_31821 + p 0 section + m (Lnet/minecraft/class_5568;)V method_31856 method_31856 + p 0 entity + m (J)V method_31810 readIfFresh + p 1 chunkPos + m (Ljava/io/Writer;)V method_31826 dump + p 1 writer + m (Lnet/minecraft/class_5568;)V method_31852 unload + p 1 entity + m (J)V method_31846 method_31846 + p 1 pos + m (Lnet/minecraft/class_5568;)V method_31864 method_31864 + p 1 entity + m (Lnet/minecraft/class_4456;Lnet/minecraft/class_5579$class_5581;J)V method_31814 method_31814 + p 3 sectionPos + m (Ljava/lang/Class;Lnet/minecraft/class_5576;Lnet/minecraft/class_5571;)V + p 3 dataAccess + p 2 handler + p 1 entityClass + m ()Lit/unimi/dsi/fastutil/longs/LongSet; method_31855 getLoadedChunks + m (Lnet/minecraft/class_1923;)Z method_40021 shouldTick + p 1 pos + m (J)Z method_31842 method_31842 + p 1 pos + m (Lnet/minecraft/class_5568;)Z method_31860 method_31860 + p 0 entity + m (J)V method_31830 scheduleRead + p 1 chunkPos + m ()V method_31851 unloadChunks + m (Lnet/minecraft/class_5568;)V method_31847 startTracking + p 1 entity + m (Lnet/minecraft/class_1923;Ljava/lang/Throwable;)Ljava/lang/Void; method_31817 method_31817 + p 1 throwable + m (Lnet/minecraft/class_5568;)V method_31843 stopTicking + p 1 entity + m (Lnet/minecraft/class_5568;)Z method_31859 method_31859 + p 0 entity + m (Lnet/minecraft/class_5568;)V method_31863 method_31863 + p 1 entity + m ()I method_54490 getIndexSize + m (Lnet/minecraft/class_5568;)Z method_31831 addEntityUuid + p 1 entity + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_5584;)V method_31816 updateTrackingStatus + c Updates the {@code trackingStatus} of tracking sections in a chunk\nat {@code chunkPos}. + p 2 trackingStatus + c the updated section tracking status + p 1 chunkPos + c the chunk to update + m ()V method_31836 flush + m (Lnet/minecraft/class_5584;Lnet/minecraft/class_5572;)V method_31825 method_31825 + p 2 group + m ()Lnet/minecraft/class_5577; method_31841 getLookup + m (Lnet/minecraft/class_5568;)Z method_31818 addEntity + c Adds a newly created entity to this manager.\n\n@return if the entity was added + p 1 entity + c the newly created entity + m (Lnet/minecraft/class_5568;)V method_31858 method_31858 + p 1 entity + m (Lnet/minecraft/class_5568;)V method_31838 startTicking + p 1 entity + m (Lnet/minecraft/class_5568;Lnet/minecraft/class_5584;)Lnet/minecraft/class_5584; method_31832 getNeededLoadStatus + p 1 current + p 0 entity + m (Lnet/minecraft/class_5568;)V method_31854 method_31854 + p 0 entity + m ()V method_31829 save + m (Lnet/minecraft/class_5568;)V method_31850 stopTracking + p 1 entity + m ()V method_31809 tick + m ()Ljava/lang/String; method_31845 getDebugString + m (Lnet/minecraft/class_5568;Z)Z method_31820 addEntity + c Loads or adds an entity to this manager.\n\n@return if the entity was loaded or added + p 2 existing + c whether this entity is loaded from the map than created anew + p 1 entity + c the entity + m (Lnet/minecraft/class_5568;)Z method_31862 method_31862 + p 0 entity + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_3194;)V method_31815 updateTrackingStatus + c Updates the tracking status of tracking sections in a chunk at {@code\nchunkPos} given the {@code levelType}.\n\n@see updateTrackingStatus(ChunkPos, EntityTrackingStatus) + p 2 levelType + c the updated level type of the chunk + p 1 chunkPos + c the chunk to update + m (Ljava/util/stream/Stream;)V method_31835 addEntities + c Adds a few newly created entities to this manager. + p 1 entities + m (Ljava/util/UUID;)Z method_31827 has + p 1 uuid + m (Lnet/minecraft/class_1923;)Z method_66786 shouldTickTest + p 1 pos + m (JLjava/util/function/Consumer;)Z method_31812 trySave + c Tries to save entities in a chunk and performs an {@code action} on each\nsaved entity if successful.\n\n

If a chunk is {@link Status#FRESH} or {@link Status#PENDING}, it\ncannot be saved.\n\n@return whether the saving is successful + p 1 chunkPos + p 3 action + c action performed on each saved entity if saving is successful + m (Lnet/minecraft/class_2338;)Z method_40022 shouldTick + p 1 pos + m ()V method_31853 loadChunks +c net/minecraft/class_5579$class_5580 net/minecraft/server/world/ServerEntityManager$Listener + f J field_27273 sectionPos + f Lnet/minecraft/class_5572; field_27274 section + f Lnet/minecraft/class_5568; field_27272 entity + f Lnet/minecraft/class_5579; field_27271 manager + m (Lnet/minecraft/class_5579;Lnet/minecraft/class_5568;JLnet/minecraft/class_5572;)V + p 2 entity + p 3 sectionPos + p 5 section + m (Lnet/minecraft/class_5584;Lnet/minecraft/class_5584;)V method_31865 updateLoadStatus + p 2 newStatus + p 1 oldStatus +c net/minecraft/class_5579$class_5581 net/minecraft/server/world/ServerEntityManager$Status + c The status of chunks within a server entity manager. + f Lnet/minecraft/class_5579$class_5581; field_27276 PENDING + f Lnet/minecraft/class_5579$class_5581; field_27277 LOADED + f Lnet/minecraft/class_5579$class_5581; field_27275 FRESH +c net/minecraft/class_4248 net/minecraft/entity/ai/brain/task/SeekSkyTask + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_2338;)Z method_20497 isSkyVisible + p 0 world + p 1 entity + p 2 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Lnet/minecraft/class_243; method_19987 findNearbySky + p 0 world + p 1 entity + m (FLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46996 method_46996 + p 1 context + m (Lnet/minecraft/class_7906;FLnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_46998 method_46998 + p 2 world + p 3 entity + p 4 time + m (F)Lnet/minecraft/class_7894; method_46995 create + p 0 speed + m (Lnet/minecraft/class_7906;FLnet/minecraft/class_243;)V method_46999 method_46999 + p 2 pos + m (FLnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46997 method_46997 + p 1 walkTarget +c net/minecraft/class_5578 net/minecraft/world/entity/SimpleEntityLookup + c An implementation of entity lookup backed by two separate {@link\nEntityIndex} and {@link SectionedEntityCache}.\n\n

It's up to the user to ensure that the index and the cache are\nconsistent with each other.\n\n@param the type of indexed entity + f Lnet/minecraft/class_5573; field_27259 cache + f Lnet/minecraft/class_5570; field_27258 index + m (Lnet/minecraft/class_5570;Lnet/minecraft/class_5573;)V + p 1 index + p 2 cache +c net/minecraft/class_4249 net/minecraft/entity/ai/brain/task/HideWhenBellRingsTask + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47034 method_47034 + p 0 world + p 2 time + p 1 entity + m (Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47036 method_47036 + p 0 heardBellTime + m ()Lnet/minecraft/class_7893; method_47033 create + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47035 method_47035 + p 0 context +c net/minecraft/class_5575 net/minecraft/util/TypeFilter + c A filter that determines if an object of some supertype {@code B} can be\ntreated as an object of some subtype {@code T}.\n\n@param the base type that's the input to the filter\n@param the desired type of this filter + m ()Ljava/lang/Class; method_31794 getBaseClass + m (Ljava/lang/Class;)Lnet/minecraft/class_5575; method_31795 instanceOf + c Creates a filter whose filtering condition is whether the object is an instance of the given class. + p 0 cls + m (Ljava/lang/Object;)Ljava/lang/Object; method_31796 downcast + c Checks if the argument can be converted to the type {@code T} and returns the argument, or {@code null} otherwise. + p 1 obj + m (Ljava/lang/Class;)Lnet/minecraft/class_5575; method_55374 equals + c Creates a filter whose filtering condition is whether the object's class is equal to the given class. + p 0 cls +c net/minecraft/class_5574 net/minecraft/world/EntityList + c A storage of entities that supports modification during iteration.\n\n

The entities are stored by their network IDs.\n\n@see EntityList#forEach(Consumer) + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_27255 temp + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_27254 entities + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_27256 iterating + m (Ljava/util/function/Consumer;)V method_31791 forEach + c Runs an {@code action} on every entity in this storage.\n\n

If this storage is updated during the iteration, the iteration will\nnot be updated to reflect updated contents. For example, if an entity\nis added by the {@code action}, the {@code action} won't run on that\nentity later.\n\n@throws UnsupportedOperationException if this is called before an iteration\nhas finished, such as within the {@code action} or from another thread + p 1 action + m (Lnet/minecraft/class_1297;)V method_31792 remove + p 1 entity + m ()V method_31789 ensureSafe + c Ensures that the modified {@code entities} map is not currently iterated.\nIf {@code entities} is iterated, this moves its value to {@code temp} so\nmodification to {@code entities} is safe. + m (Lnet/minecraft/class_1297;)V method_31790 add + p 1 entity + m (Lnet/minecraft/class_1297;)Z method_31793 has + p 1 entity +c net/minecraft/class_4243 net/minecraft/entity/ai/brain/task/GiveGiftsToHeroTask + f I field_30119 MAX_NEXT_GIFT_DELAY + f Ljava/util/Map; field_18984 GIFTS + f I field_30118 DEFAULT_DURATION + f I field_30117 MAX_DISTANCE + f Z field_18986 done + f F field_30121 WALK_SPEED + f I field_30120 RUN_TIME + f I field_18985 ticksLeft + f J field_18987 startTime + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)Z method_19962 shouldRun + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_64174 method_64174 + p 3 stack + p 2 world + m (Lnet/minecraft/class_1657;)Z method_19959 isHero + p 1 player + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_19968 finishRunning + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_1657;)Z method_19958 isCloseEnough + p 1 villager + p 2 player + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_19967 keepRunning + m (Lnet/minecraft/class_1646;)Lnet/minecraft/class_5321; method_64173 getGiftLootTable + p 0 villager + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_19963 run + m (Lnet/minecraft/class_3218;)I method_19961 getNextGiftDelay + p 0 world + m (Lnet/minecraft/class_1646;)Z method_19964 isNearestPlayerHero + p 1 villager + m (Lnet/minecraft/class_1646;)Ljava/util/Optional; method_19966 getNearestPlayerIfHero + p 1 villager + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_19965 shouldKeepRunning + m (I)V + p 1 delay + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;Lnet/minecraft/class_1309;)V method_19957 giveGifts + p 3 recipient + p 1 world + p 2 villager +c net/minecraft/class_5577 net/minecraft/world/entity/EntityLookup + c An interface for looking up entities.\n\n

It supports iteration, accessing by ID, or by intersection with boxes.\n\n@param the type of indexed entity + m (Lnet/minecraft/class_5575;Lnet/minecraft/class_238;Lnet/minecraft/class_7927;)V method_31805 forEachIntersects + p 1 filter + p 3 consumer + p 2 box + m (Lnet/minecraft/class_5575;Lnet/minecraft/class_7927;)V method_31806 forEach + c Performs an {@code action} on each entity of type {@code U} within this\nlookup.\n\n@param the type of entity to perform action on + p 1 filter + c specifies the desired type of entity + p 2 consumer + c the consumer, additionally checking whether to perform the next iteration or to stop early + m (Ljava/util/UUID;)Lnet/minecraft/class_5568; method_31808 get + c Returns an entity by its UUID, or {@code null} if none is found. + p 1 uuid + m (Lnet/minecraft/class_238;Ljava/util/function/Consumer;)V method_31807 forEachIntersects + p 2 action + p 1 box + m (I)Lnet/minecraft/class_5568; method_31804 get + c Returns an entity by its network ID, or {@code null} if none is found. + p 1 id + m ()Ljava/lang/Iterable; method_31803 iterate + c Returns an unmodifiable iterable over all entities in this lookup. +c net/minecraft/class_4246 net/minecraft/entity/ai/brain/task/HideInHomeTask + m (Lnet/minecraft/class_2338;)Z method_46985 method_46985 + p 0 pos + m (IFI)Lnet/minecraft/class_7894; method_46975 create + p 2 preferredDistance + p 1 walkSpeed + p 0 maxDistance + m (Lnet/minecraft/class_1309;ILnet/minecraft/class_2338;)Z method_46980 method_46980 + p 2 pos + m (Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;ILnet/minecraft/class_7906;FLnet/minecraft/class_2338;)V method_46982 method_46982 + p 10 pos + m (Lnet/minecraft/class_2338;)Z method_46983 method_46983 + p 0 pos + m (IILnet/minecraft/class_7898$class_7900;FLnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46977 method_46977 + p 10 interactionTarget + p 9 breedTarget + p 4 walkTarget + p 8 lookTarget + p 7 path + p 6 hidingPlace + p 5 home + m (Lnet/minecraft/class_6880;)Z method_46984 method_46984 + p 0 poiType + m (IILnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;FLnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_46978 method_46978 + p 11 world + p 12 entity + p 13 time + m (Lnet/minecraft/class_6880;)Z method_46986 method_46986 + p 0 poiType + m (IIFLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46976 method_46976 + p 3 context +c net/minecraft/class_5576 net/minecraft/world/entity/EntityHandler + c The entity handler exposes world's entity handling to entity managers.\n\n

Each handler is usually associated with a {@link net.minecraft.world.World}.\n\n@param the type of entity handled + m (Ljava/lang/Object;)V method_43029 updateLoadStatus + p 1 entity + m (Ljava/lang/Object;)V method_31802 create + c Called when an entity is newly created. + p 1 entity + c the created entity + m (Ljava/lang/Object;)V method_31801 destroy + c Called when an entity is permanently destroyed. + p 1 entity + c the destroyed entity + m (Ljava/lang/Object;)V method_31800 startTicking + c Registers an entity for ticking. + p 1 entity + c the entity to tick + m (Ljava/lang/Object;)V method_31799 stopTicking + c Unregisters an entity for ticking. + p 1 entity + c the ticked entity + m (Ljava/lang/Object;)V method_31798 startTracking + c Registers an entity for tracking. + p 1 entity + c the entity to track + m (Ljava/lang/Object;)V method_31797 stopTracking + c Unregisters an entity for tracking. + p 1 entity + c the tracked entity +c net/minecraft/class_4245 net/minecraft/entity/ai/brain/task/JumpInBedTask + f I field_30129 MIN_JUMP_TICKS + f I field_30128 MAX_TICKS_OUT_OF_BED + f I field_18990 ticksOutOfBedUntilStopped + f I field_30131 TICKS_TO_NEXT_JUMP + f I field_18991 jumpsRemaining + f I field_30130 JUMP_TIME_VARIANCE + f I field_18992 ticksToNextJump + f F field_18988 walkSpeed + f Lnet/minecraft/class_2338; field_18989 bedPos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_19974 isBedAt + p 1 world + p 2 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)Z method_19971 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)Z method_19982 isDoneJumping + p 1 world + p 2 mob + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_19980 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)Z method_19981 isBedGoneTooLong + p 2 mob + p 1 world + m (F)V + p 1 walkSpeed + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_2338;)V method_19970 setWalkTarget + p 2 pos + p 1 mob + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)Z method_19978 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_19976 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;Lnet/minecraft/class_2338;)V method_19973 method_19973 + p 3 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)Z method_19979 isOnBed + p 1 world + p 2 mob + m (Lnet/minecraft/class_1308;)Ljava/util/Optional; method_19969 getNearestBed + p 1 mob + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)Z method_19977 isAboveBed + p 1 world + p 2 mob + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_19972 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)Z method_19975 shouldStartJumping + p 1 world + p 2 mob +c net/minecraft/class_6871 net/minecraft/world/gen/chunk/placement/ConcentricRingsStructurePlacement + f Lnet/minecraft/class_6885; field_37771 preferredBiomes + f I field_37768 distance + f I field_37769 spread + f Lcom/mojang/serialization/MapCodec; field_36419 CODEC + f I field_37770 count + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40167 method_40167 + p 0 instance + m ()I method_41628 getSpread + m ()I method_41627 getDistance + m (Lnet/minecraft/class_2382;Lnet/minecraft/class_6874$class_7154;FILjava/util/Optional;IIILnet/minecraft/class_6885;)V + p 4 salt + p 3 frequency + p 6 distance + p 5 exclusionZone + p 2 generationPredicateType + p 1 locateOffset + p 8 structureCount + p 7 spread + p 9 preferredBiomes + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P9; method_41629 buildConcentricRingsCodec + p 0 instance + m (IIILnet/minecraft/class_6885;)V + p 3 structureCount + p 4 preferredBiomes + p 1 distance + p 2 spread + m ()I method_41630 getCount + m ()Lnet/minecraft/class_6885; method_41631 getPreferredBiomes +c net/minecraft/class_5540 net/minecraft/block/AbstractCandleBlock + f Lnet/minecraft/class_2746; field_27083 LIT + m (Lnet/minecraft/class_2680;)Z method_35245 isLitCandle + p 0 state + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)V method_31614 extinguish + p 3 pos + p 2 world + p 1 state + p 0 player + m (Lnet/minecraft/class_2680;)Z method_35246 isNotLit + p 1 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_243;)V method_35244 method_35244 + p 2 offset + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_243;Lnet/minecraft/class_5819;)V method_31610 spawnCandleParticles + p 0 world + p 1 vec3d + p 2 random + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Lnet/minecraft/class_243;)V method_31611 method_31611 + p 3 offset + m (Lnet/minecraft/class_2680;)Ljava/lang/Iterable; method_31613 getParticleOffsets + p 1 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Z)V method_31612 setLit + p 0 world + p 3 lit + p 2 pos + p 1 state +c net/minecraft/class_4215 net/minecraft/entity/ai/brain/task/TargetUtil + m (Lnet/minecraft/class_1309;Ljava/util/UUID;)Lnet/minecraft/class_1297; method_24563 method_24563 + p 1 uuid + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;D)Z method_24558 isNewTargetTooFar + c Checks if an entity can be a new attack target for the source entity. + p 0 source + c the source entity + p 1 target + c the attack target candidate + p 2 extraDistance + c the max distance this new target can be farther compared to the existing target + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)V method_19552 lookAtEachOther + p 0 first + p 1 second + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_4115;FI)V method_42647 walkTowards + p 2 speed + p 1 target + p 0 entity + p 3 completionRange + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)V method_19554 lookAt + p 1 target + p 0 entity + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;FI)V method_19548 lookAtAndWalkTowardsEachOther + p 2 speed + p 1 second + p 0 first + p 3 walkCompletionRange + m (Lnet/minecraft/class_1309;Ljava/util/Optional;Lnet/minecraft/class_1309;)Lnet/minecraft/class_1309; method_24562 getCloserEntity + p 2 second + p 0 source + p 1 first + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;FI)V method_19555 walkTowardsEachOther + p 3 completionRange + p 2 speed + p 1 second + p 0 first + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1309;)Z method_19547 method_19547 + p 1 entity + m (Lnet/minecraft/class_1309;)Z method_41331 hasBreedTarget + p 0 entity + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;Lnet/minecraft/class_243;Lnet/minecraft/class_243;F)V method_43392 give + p 4 yOffset + p 3 velocityFactor + p 0 entity + p 2 targetLocation + p 1 stack + m (Lnet/minecraft/class_4095;Lnet/minecraft/class_4140;Ljava/util/function/Predicate;)Z method_24564 canSee + p 1 memoryType + p 0 brain + p 2 filter + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_4076;)Z method_20418 method_20418 + p 2 sectionPos + m (Lnet/minecraft/class_4095;Lnet/minecraft/class_1309;)Z method_19550 canSee + p 0 brain + p 1 target + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;Lnet/minecraft/class_243;)V method_19949 give + p 2 targetLocation + p 1 stack + p 0 entity + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Lnet/minecraft/class_1309; method_24559 getCloserEntity + p 2 second + p 0 source + p 1 first + m (Lnet/minecraft/class_1314;II)Lnet/minecraft/class_243; method_33193 find + p 0 entity + p 1 horizontalRange + p 2 verticalRange + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_2338;FI)V method_24561 walkTowards + p 1 target + p 2 speed + p 3 completionRange + p 0 entity + m (Lnet/minecraft/class_4095;Lnet/minecraft/class_4140;Lnet/minecraft/class_1299;)Z method_19551 canSee + p 2 entityType + p 1 memoryModuleType + p 0 brain + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1309;I)Z method_25940 isTargetWithinAttackRange + p 0 mob + p 1 target + p 2 rangedWeaponReachReduction + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1297;FI)V method_24557 walkTowards + p 1 target + p 2 speed + p 0 entity + p 3 completionRange + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1309; method_31500 method_31500 + p 0 target + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_4140;)Ljava/util/Optional; method_24560 getEntity + p 0 entity + p 1 uuidMemoryModule + m (Lnet/minecraft/class_4095;Lnet/minecraft/class_1309;)Z method_19553 method_19553 + p 1 target + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4076;I)Lnet/minecraft/class_4076; method_20419 getPosClosestToOccupiedPointOfInterest + p 2 radius + p 1 center + p 0 world + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_24565 isVisibleInMemory + p 1 target + p 0 source +c net/minecraft/class_5546 net/minecraft/block/CauldronBlock + c An empty cauldron block. + f F field_34027 FILL_WITH_RAIN_CHANCE + f F field_34028 FILL_WITH_SNOW_CHANCE + f Lcom/mojang/serialization/MapCodec; field_46305 CODEC + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1959$class_1963;)Z method_31636 canFillWithPrecipitation + p 1 precipitation + p 0 world +c net/minecraft/class_4214 net/minecraft/entity/ai/brain/task/WakeUpTask + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47206 method_47206 + p 0 context + m ()Lnet/minecraft/class_7893; method_47204 create + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47205 method_47205 + p 2 time + p 1 entity + p 0 world +c net/minecraft/class_5545 net/minecraft/block/CandleCakeBlock + f Lnet/minecraft/class_2746; field_27183 LIT + f Ljava/util/Map; field_27187 CANDLES_TO_CANDLE_CAKES + f Lnet/minecraft/class_5544; field_46300 candle + f Ljava/lang/Iterable; field_27188 PARTICLE_OFFSETS + f Lcom/mojang/serialization/MapCodec; field_46299 CODEC + f Lnet/minecraft/class_265; field_27186 SHAPE + m (Lnet/minecraft/class_5544;)Lnet/minecraft/class_2680; method_31632 getCandleCakeFromCandle + p 0 candle + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 candle + m (Lnet/minecraft/class_2680;)Z method_31635 canBeLit + p 0 state + m (Lnet/minecraft/class_3965;)Z method_31634 isHittingCandle + p 0 hitResult + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53989 method_53989 + p 0 instance + m (Lnet/minecraft/class_5545;)Lnet/minecraft/class_2248; method_53990 method_53990 + p 0 block + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4970$class_4971;)Z method_31633 method_31633 + p 1 statex +c net/minecraft/class_6876 net/minecraft/unused/packageinfo/PackageInfo6876 +c net/minecraft/class_4217 net/minecraft/entity/ai/brain/task/FarmerVillagerTask + f Ljava/util/List; field_19351 targetPositions + f J field_18861 nextResponseTime + f I field_19239 ticksRan + f I field_30124 MAX_RUN_TIME + f F field_30123 WALK_SPEED + f Lnet/minecraft/class_2338; field_18858 currentTarget + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3218;)Z method_20640 isSuitableTarget + p 1 pos + p 2 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_19566 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_19565 keepRunning + m (Lnet/minecraft/class_3218;)Lnet/minecraft/class_2338; method_20641 chooseRandomTarget + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_20392 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)Z method_19564 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_20394 shouldKeepRunning +c net/minecraft/class_6877 net/minecraft/client/resource/PeriodicNotificationManager + f Lnet/minecraft/class_6877$class_6879; field_36440 task + f Lorg/slf4j/Logger; field_36436 LOGGER + f Lnet/minecraft/class_2960; field_36437 id + f Ljava/util/Timer; field_36439 timer + f Lit/unimi/dsi/fastutil/objects/Object2BooleanFunction; field_36438 countryPredicate + f Lcom/mojang/serialization/Codec; field_36435 CODEC + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)Ljava/util/Map; method_40192 prepare + m (Ljava/util/Map;Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)V method_40198 apply + m (Lnet/minecraft/class_2960;Lit/unimi/dsi/fastutil/objects/Object2BooleanFunction;)V + p 2 countryPredicate + p 1 id + m (Ljava/util/List;)J method_40195 getMinDelay + p 1 entries + m (Ljava/util/Map$Entry;)Z method_40197 method_40197 + p 1 entry + m ()V method_40190 cancelTimer + m (JLnet/minecraft/class_6877$class_6878;)J method_40191 method_40191 + p 2 entry + m (Lnet/minecraft/class_6877$class_6878;)Z method_40200 method_40200 + p 0 entry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40193 method_40193 + p 0 instance + m (Lnet/minecraft/class_6877$class_6878;)J method_40194 method_40194 + p 0 entry + m (Ljava/util/List;J)J method_40196 getPeriod + p 1 entries + p 2 minDelay +c net/minecraft/class_6877$class_6878 net/minecraft/client/resource/PeriodicNotificationManager$Entry + f J comp_345 delay + f J comp_346 period + f Ljava/lang/String; comp_348 message + f Ljava/lang/String; comp_347 title + m (JJLjava/lang/String;Ljava/lang/String;)V + p 1 delay + p 3 period + p 6 message + p 5 title + m ()Ljava/lang/String; comp_348 message + m ()Ljava/lang/String; comp_347 title + m ()J comp_346 period + m ()J comp_345 delay +c net/minecraft/class_6877$class_6879 net/minecraft/client/resource/PeriodicNotificationManager$NotifyTask + f Ljava/util/List; field_36442 entries + f J field_36443 periodMs + f Lnet/minecraft/class_310; field_36441 client + f Ljava/util/concurrent/atomic/AtomicLong; field_36444 delayMs + m (Ljava/util/List;J)Lnet/minecraft/class_6877$class_6879; method_40202 reload + p 1 entries + p 2 period + m (Ljava/util/List;JJ)V + p 4 periodMs + p 2 minDelayMs + p 1 entries +c net/minecraft/class_5547 net/minecraft/block/Degradable + f I field_31056 DEGRADING_RANGE + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_54763 method_54763 + p 2 degraded + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_54764 tickDegradation + p 2 world + p 1 state + p 4 random + p 3 pos + m ()Ljava/lang/Enum; method_33622 getDegradationLevel + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Ljava/util/Optional; method_54765 tryDegrade + p 2 world + p 1 state + p 4 random + p 3 pos + m ()F method_33620 getDegradationChanceMultiplier + m (Lnet/minecraft/class_2680;)Ljava/util/Optional; method_31639 getDegradationResult + p 1 state +c net/minecraft/class_6874 net/minecraft/world/gen/chunk/placement/StructurePlacement + f F field_37778 frequency + f Lcom/mojang/serialization/Codec; field_36428 TYPE_CODEC + f I field_37775 ARBITRARY_SALT + f I field_37779 salt + f Lnet/minecraft/class_2382; field_37776 locateOffset + f Lnet/minecraft/class_6874$class_7154; field_37777 frequencyReductionMethod + f Ljava/util/Optional; field_37780 exclusionZone + m (Lnet/minecraft/class_7869;II)Z method_56576 applyExclusionZone + p 3 centerChunkZ + p 2 centerChunkX + p 1 calculator + m (Lnet/minecraft/class_2382;Lnet/minecraft/class_6874$class_7154;FILjava/util/Optional;)V + p 2 frequencyReductionMethod + p 3 frequency + p 4 salt + p 5 exclusionZone + p 1 locateOffset + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P5; method_41637 buildCodec + p 0 instance + m (JIIIF)Z method_41641 legacyType1ShouldGenerate + p 5 frequency + p 3 chunkX + p 4 chunkZ + p 2 salt + p 0 seed + m ()F method_41644 getFrequency + m (JIIIF)Z method_41635 defaultShouldGenerate + p 4 chunkZ + p 5 frequency + p 2 salt + p 3 chunkX + p 0 seed + m (JIIIF)Z method_41638 legacyType3ShouldGenerate + p 3 chunkX + p 4 chunkZ + p 2 salt + p 0 seed + p 5 frequency + m (Lnet/minecraft/class_7869;II)Z method_40168 isStartChunk + p 1 calculator + p 2 chunkX + p 3 chunkZ + m ()Lnet/minecraft/class_2382; method_41642 getLocateOffset + m ()Lnet/minecraft/class_6875; method_40166 getType + m (Lnet/minecraft/class_1923;)Lnet/minecraft/class_2338; method_41636 getLocatePos + p 1 chunkPos + m (IIJ)Z method_56575 applyFrequencyReduction + p 3 seed + p 2 chunkZ + p 1 chunkX + m (JIIIF)Z method_41640 legacyType2ShouldGenerate + p 4 chunkZ + p 5 frequency + p 2 salt + p 3 chunkX + p 0 seed + m (Lnet/minecraft/class_7869;II)Z method_41639 shouldGenerate + p 1 calculator + p 2 chunkX + p 3 chunkZ + m ()Lnet/minecraft/class_6874$class_7154; method_41643 getFrequencyReductionMethod + m ()I method_41645 getSalt + m ()Ljava/util/Optional; method_41646 getExclusionZone +c net/minecraft/class_6874$class_7154 net/minecraft/world/gen/chunk/placement/StructurePlacement$FrequencyReductionMethod + f Lnet/minecraft/class_6874$class_7153; field_37788 generationPredicate + f Lcom/mojang/serialization/Codec; field_37786 CODEC + f Ljava/lang/String; field_37787 name + f Lnet/minecraft/class_6874$class_7154; field_37782 DEFAULT + f Lnet/minecraft/class_6874$class_7154; field_37783 LEGACY_TYPE_1 + f Lnet/minecraft/class_6874$class_7154; field_37784 LEGACY_TYPE_2 + f Lnet/minecraft/class_6874$class_7154; field_37785 LEGACY_TYPE_3 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_6874$class_7153;)V + p 4 generationPredicate + p 3 name + m (JIIIF)Z method_41650 shouldGenerate + p 5 chunkZ + p 6 chance + p 3 salt + p 4 chunkX + p 1 seed +c net/minecraft/class_6874$class_7153 net/minecraft/world/gen/chunk/placement/StructurePlacement$GenerationPredicate + m (JIIIF)Z shouldGenerate shouldGenerate + p 3 salt + p 1 seed + p 6 chance + p 5 chunkZ + p 4 chunkX +c net/minecraft/class_6874$class_7152 net/minecraft/world/gen/chunk/placement/StructurePlacement$ExclusionZone + f Lcom/mojang/serialization/Codec; field_37781 CODEC + f I comp_575 chunkCount + f Lnet/minecraft/class_6880; comp_574 otherSet + m (Lnet/minecraft/class_7869;II)Z method_41648 shouldExclude + p 2 centerChunkX + p 1 calculator + p 3 centerChunkZ + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41647 method_41647 + p 0 instance + m ()Lnet/minecraft/class_6880; comp_574 otherSet + m ()I comp_575 chunkCount + m (Lnet/minecraft/class_6880;I)V + p 1 otherSet + p 2 chunkCount +c net/minecraft/class_4211 net/minecraft/network/packet/c2s/play/UpdateDifficultyLockC2SPacket + f Lnet/minecraft/class_9139; field_48197 CODEC + f Z field_18806 difficultyLocked + m (Lnet/minecraft/class_2792;)V method_19484 apply + m (Lnet/minecraft/class_2540;)V method_55978 write + p 1 buf + m ()Z method_19485 isDifficultyLocked + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Z)V + p 1 difficultyLocked +c net/minecraft/class_5542 net/minecraft/block/AmethystClusterBlock + f Ljava/util/Map; field_55729 shapesByDirection + f Lnet/minecraft/class_2746; field_27086 WATERLOGGED + f F field_55728 width + f Lnet/minecraft/class_2754; field_27087 FACING + f F field_46256 height + f Lcom/mojang/serialization/MapCodec; field_46255 CODEC + m (Lnet/minecraft/class_5542;)Ljava/lang/Float; method_53972 method_53972 + p 0 block + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53970 method_53970 + p 0 instance + m (Lnet/minecraft/class_5542;)Ljava/lang/Float; method_53971 method_53971 + p 0 block + m (FFLnet/minecraft/class_4970$class_2251;)V + p 1 height + p 3 settings + p 2 width +c net/minecraft/class_6875 net/minecraft/world/gen/chunk/placement/StructurePlacementType + f Lnet/minecraft/class_6875; field_36429 RANDOM_SPREAD + f Lnet/minecraft/class_6875; field_36430 CONCENTRIC_RINGS + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_6875; method_40177 register + p 1 codec + p 0 id +c net/minecraft/class_4210 net/minecraft/network/packet/c2s/play/UpdateDifficultyC2SPacket + f Lnet/minecraft/class_9139; field_48176 CODEC + f Lnet/minecraft/class_1267; comp_4292 difficulty + m ()Lnet/minecraft/class_1267; comp_4292 difficulty + m (Lnet/minecraft/class_2792;)V method_19477 apply + m (Lnet/minecraft/class_1267;)V + p 1 difficulty +c net/minecraft/class_5541 net/minecraft/block/AmethystBlock + f Lcom/mojang/serialization/MapCodec; field_46254 CODEC +c net/minecraft/class_6872 net/minecraft/world/gen/chunk/placement/RandomSpreadStructurePlacement + f Lcom/mojang/serialization/MapCodec; field_36420 CODEC + f I field_37772 spacing + f I field_37773 separation + f Lnet/minecraft/class_6873; field_37774 spreadType + m (IILnet/minecraft/class_6873;I)V + p 2 separation + p 1 spacing + p 4 salt + p 3 spreadType + m (Lnet/minecraft/class_6872;)Lcom/mojang/serialization/DataResult; method_51720 validate + p 0 structurePlacement + m (JII)Lnet/minecraft/class_1923; method_40169 getStartChunk + p 3 chunkX + p 4 chunkZ + p 1 seed + m ()I method_41632 getSpacing + m (Lnet/minecraft/class_2382;Lnet/minecraft/class_6874$class_7154;FILjava/util/Optional;IILnet/minecraft/class_6873;)V + p 1 locateOffset + p 2 frequencyReductionMethod + p 3 frequency + p 4 salt + p 5 exclusionZone + p 6 spacing + p 7 separation + p 8 spreadType + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40170 method_40170 + p 0 instance + m ()Lnet/minecraft/class_6873; method_41634 getSpreadType + m ()I method_41633 getSeparation +c net/minecraft/class_5544 net/minecraft/block/CandleBlock + f [Lnet/minecraft/class_265; field_55744 SHAPES_BY_CANDLES + f Lnet/minecraft/class_2758; field_27174 CANDLES + f Lnet/minecraft/class_2746; field_27175 LIT + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_27178 CANDLES_TO_PARTICLE_OFFSETS + f Lnet/minecraft/class_2746; field_27176 WATERLOGGED + f I field_31051 MAX_CANDLE_AMOUNT + f Ljava/util/function/ToIntFunction; field_27177 STATE_TO_LUMINANCE + f Lcom/mojang/serialization/MapCodec; field_46298 CODEC + m (Lnet/minecraft/class_2680;)I method_31631 method_31631 + p 0 state + m (Lnet/minecraft/class_4970$class_4971;)Z method_31628 method_31628 + p 0 statex + m (Lnet/minecraft/class_2680;)Z method_31630 canBeLit + p 0 state +c net/minecraft/class_6873 net/minecraft/world/gen/chunk/placement/SpreadType + f Ljava/lang/String; field_36425 name + f Lcom/mojang/serialization/Codec; field_36423 CODEC + f Lnet/minecraft/class_6873; field_36421 LINEAR + f Lnet/minecraft/class_6873; field_36422 TRIANGULAR + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m (Lnet/minecraft/class_5819;I)I method_40173 get + p 1 random + p 2 bound +c net/minecraft/class_5543 net/minecraft/block/BuddingAmethystBlock + f I field_31039 GROW_CHANCE + f Lcom/mojang/serialization/MapCodec; field_46292 CODEC + f [Lnet/minecraft/class_2350; field_27172 DIRECTIONS + m (Lnet/minecraft/class_2680;)Z method_31626 canGrowIn + p 0 state +c net/minecraft/class_5539 net/minecraft/world/HeightLimitView + c A view with a height limit specification. + m (I)I method_31603 sectionCoordToIndex + c Converts a section coordinate to a zero-based section index.\n\n@return a zero-based index\n@see #sectionIndexToCoord(int) the inverse operation sectionIndexToCoord + p 1 coord + c the section coordinate + m (I)I method_31604 sectionIndexToCoord + c Converts a zero-based section index to a section coordinate.\n\n@return a section coordinate\n@see #sectionCoordToIndex(int) the inverse operation sectionCoordToIndex + p 1 index + c the zero-based section index + m ()I method_32891 getBottomSectionCoord + c Returns the bottom section coordinate, inclusive, of this view.\n\n@implNote This implementation passes the {@linkplain #getBottomY() bottom Y}\nthrough {@link net.minecraft.util.math.ChunkSectionPos#getSectionCoord(int)}.\n\n@return the bottom section coordinate\n@see #getTopSectionCoord()\n@see #getBottomY() + m (I)I method_31602 getSectionIndex + c Returns a zero-based section index to which the {@code y} level belongs.\n\n@return a zero-based index + p 1 y + m ()I method_32890 countVerticalSections + c Returns the number of sections, vertically, within this view.\n\n@return the number of sections\n@see #getTopSectionCoord()\n@see #getBottomSectionCoord() + m (I)Z method_62871 isInHeightLimit + c @see #isOutOfHeightLimit(int) + p 1 y + m ()I method_31600 getTopYInclusive + c Returns the top Y level, or height, inclusive, of this view.\n\n@implNote This implementation sums up the bottom Y and the height, then subtracts 1.\n@see #getBottomY()\n@see #getHeight() + m (Lnet/minecraft/class_2338;)Z method_31606 isOutOfHeightLimit + c Checks if {@code pos} is out of the height limit of this view.\n\n@return {@code true} if {@code pos} is out of bounds, {@code false} otherwise.\n@see #isOutOfHeightLimit(int) + p 1 pos + c the position to check + m ()I method_31607 getBottomY + c Returns the bottom Y level, or height, inclusive, of this view.\n\n@see #getTopYInclusive()\n@see #getHeight() + m ()I method_31605 getHeight + c Returns the difference in the {@linkplain #getBottomY() minimum} and\n{@linkplain #getTopYInclusive() maximum} height.\n\n

This is the number of blocks that can be modified in any vertical column\nwithin the view, or the vertical size, in blocks, of the view.\n\n@return the difference in the minimum and maximum height\n@see #getBottomY()\n@see #getTopYInclusive() + m ()I method_31597 getTopSectionCoord + c Returns the top section coordinate, exclusive, of this view.\n\n@implNote This implementation passes the {@linkplain #getTopYInclusive() top Y}\nthrough {@link net.minecraft.util.math.ChunkSectionPos#getSectionCoord(int)}.\n\n@return the top section coordinate\n@see #getBottomSectionCoord()\n@see #getTopYInclusive() + m (II)Lnet/minecraft/class_5539; method_39034 create + p 0 bottomY + p 1 height + m (I)Z method_31601 isOutOfHeightLimit + c Checks if {@code y} is out of the height limit of this view.\n\n

{@code y} is out of bounds if it's lower than the {@linkplain #getBottomY\nbottom} or higher than the {@linkplain #getTopYInclusive() top}.\n\n@return {@code true} if {@code y} is out of bounds, {@code false} otherwise. + p 1 y + c the Y level to check +c net/minecraft/class_4208 net/minecraft/util/math/GlobalPos + f Lnet/minecraft/class_9139; field_48451 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_49583 MAP_CODEC + f Lcom/mojang/serialization/Codec; field_25066 CODEC + f Lnet/minecraft/class_2338; comp_2208 pos + f Lnet/minecraft/class_5321; comp_2207 dimension + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2338;)Lnet/minecraft/class_4208; method_19443 create + p 1 pos + p 0 dimension + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_29096 method_29096 + p 0 instance + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2338;I)Z method_65075 isWithinRange + p 1 dimension + p 3 maxDistance + p 2 otherPos + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2338;)V + p 2 pos + p 1 dimension + m ()Lnet/minecraft/class_5321; comp_2207 dimension + m ()Lnet/minecraft/class_2338; comp_2208 pos +c net/minecraft/class_4207 net/minecraft/client/render/debug/BrainDebugRenderer + f Ljava/util/UUID; field_18922 targetedEntity + f I field_32871 PINK + f I field_32870 GRAY + f I field_32873 ORANGE + f I field_32894 POI_RANGE + f I field_32896 TARGET_ENTITY_RANGE + f I field_32868 AQUA + f F field_32897 DEFAULT_DRAWN_STRING_SIZE + f Lnet/minecraft/class_310; field_18786 client + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_12006;)V method_74781 method_74781 + p 2 brain + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_12006;)V method_23140 drawBrain + p 2 brain + p 1 entity + m (Lnet/minecraft/class_1297;)V method_23126 method_23126 + p 1 entity + m (Lnet/minecraft/class_12021;)V method_23135 draw + p 1 store + m ()V method_23146 updateTargetedEntity + m (Ljava/util/Map;Lnet/minecraft/class_1297;Lnet/minecraft/class_12006;)V method_74782 method_74782 + p 2 data + p 1 entity + m (Lnet/minecraft/class_2338;)Ljava/util/List; method_30112 method_30112 + p 0 pos + m (Lnet/minecraft/class_12021;)Ljava/util/Map; method_23144 getGhostPointsOfInterest + p 1 store + m (Lnet/minecraft/class_310;)V + p 1 client + m (Lnet/minecraft/class_1297;)Z method_23145 isTargeted + p 1 entity +c net/minecraft/class_5538 net/minecraft/item/SpyglassItem + f I field_30921 MAX_USE_TIME + f F field_30922 FOV_MULTIPLIER + m (Lnet/minecraft/class_1309;)V method_31582 playStopUsingSound + p 1 user +c net/minecraft/class_4220 net/minecraft/entity/ai/brain/task/GoToSecondaryPositionTask + m (Lnet/minecraft/class_4140;Lnet/minecraft/class_4140;ILorg/apache/commons/lang3/mutable/MutableLong;FILnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47162 method_47162 + p 6 context + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;ILorg/apache/commons/lang3/mutable/MutableLong;Lnet/minecraft/class_7906;FILnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_47160 method_47160 + p 10 time + p 8 world + p 9 entity + m (Lnet/minecraft/class_7898$class_7900;ILorg/apache/commons/lang3/mutable/MutableLong;FILnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47159 method_47159 + p 6 secondary + p 5 walkTarget + p 7 primary + m (Lnet/minecraft/class_4140;FIILnet/minecraft/class_4140;)Lnet/minecraft/class_7893; method_47161 create + p 0 secondaryPositions + p 4 primaryPosition + p 3 primaryPositionActivationDistance + p 2 completionRange + p 1 speed +c net/minecraft/class_5551 net/minecraft/block/EndRodBlock + f Lcom/mojang/serialization/MapCodec; field_46346 CODEC +c net/minecraft/class_6880 net/minecraft/registry/entry/RegistryEntry + c An object holding a value that can be registered in a registry. In most cases, the\nvalue is already registered in a registry ("reference entry"), hence the name;\nhowever, it is possible to create a registry entry by direct reference\n("direct entry"). This is useful for data packs, as they can define\none-time use values directly without having to register them every time.\n\n

Registry entries do not define {@code equals} method. Instead, compare the result\nof {@link #getKeyOrValue}.\n\n

Reference registry entries also hold their {@linkplain TagKey tags}. For more\ninformation on type-specific behaviors, including "intrusive" and "stand-alone"\nreference registry entries, see the respective class documentations.\n\n

A registry entry is sometimes referred to as a "holder" in error messages.\n\n@see RegistryEntry.Direct\n@see RegistryEntry.Reference\n@see net.minecraft.registry.RegistryEntryLookup#getOrThrow\n@see net.minecraft.registry.RegistryEntryLookup#getOptional + m (Lnet/minecraft/class_6862;)Z method_40220 isIn + c {@return whether this entry is in {@code tag}}\n\n

This always returns {@code false} for direct entries, since tags are managed by\na registry. + p 1 tag + m (Lnet/minecraft/class_2960;)Z method_40226 matchesId + c {@return whether the ID of this entry is {@code id}}\n\n

This always returns {@code false} for direct entries. + p 1 id + m ()Ljava/util/stream/Stream; method_40228 streamTags + c {@return a stream of the tags of this entry, or an empty stream if this is a direct entry} + m ()Ljava/util/Optional; method_40230 getKey + c {@return the registry key of this entry, or an empty optional if this is a direct entry} + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_55839 method_55839 + p 0 key + m ()Lnet/minecraft/class_6880$class_6882; method_40231 getType + c {@return the type (direct or reference) of this registry entry}\n\n

This is different from the types of reference registry entries, i.e.\nstand-alone or intrusive. + m ()Ljava/lang/String; method_55840 getIdAsString + m (Ljava/util/function/Predicate;)Z method_40224 matches + c {@return whether this entry's key matches {@code predicate}}\n\n

This always returns {@code false} for direct entries. + p 1 predicate + m (Lnet/minecraft/class_6880;)Z method_55838 matches + p 1 entry + m (Lnet/minecraft/class_7876;)Z method_46745 ownerEquals + p 1 owner + m (Lnet/minecraft/class_5321;)Z method_40225 matchesKey + c {@return whether the registry key of this entry is {@code key}}\n\n

This always returns {@code false} for direct entries. + p 1 key + m ()Z method_40227 hasKeyAndValue + m ()Lcom/mojang/datafixers/util/Either; method_40229 getKeyOrValue + c {@return the object that identifies this registry key}\n\n

For direct entries, this is the held value, and for reference entries, this is the\nkey of the entry. + m (Ljava/lang/Object;)Lnet/minecraft/class_6880; method_40223 of + c {@return a new direct registry entry of {@code value}} + p 0 value + m ()Ljava/lang/Object; comp_349 value +c net/minecraft/class_6880$class_6883 net/minecraft/registry/entry/RegistryEntry$Reference + c A reference registry entry holds the value by reference. The value is previously\nregistered in a registry, so they can be referred to by their registry keys.\nThis object also holds the entry's tags.\n\n

There are two types of reference registry entries.\n\n

    \n
  • Stand-alone registry entries are first instantiated by its key,\nand the value is set when registering the value. This is used by most of the registries.
  • \n
  • Intrusive registry entries are registry entries tied to a specific\nregisterable object at instantiation time. When instantiating those, it promises\nthat the object is later registered - which, if broken, will result in a crash.\nThis is used for {@link net.minecraft.registry.Registries#BLOCK}, {@link\nnet.minecraft.registry.Registries#ITEM}, {@link net.minecraft.registry.Registries#FLUID},\n{@link net.minecraft.registry.Registries#ENTITY_TYPE}, and {@link\nnet.minecraft.registry.Registries#GAME_EVENT} registries. This type\nexists for historical reasons and is deprecated.
  • \n
\n\n

Therefore, it is very important to construct any intrusive-entry type object\nand register at the same time. For example, a mod that conditionally registers an\n{@link net.minecraft.item.Item} has to create an instance only if the condition is met.\n(See {@link net.minecraft.registry.Registry} for a code example.)\n\n

When a reference registry entry is first instantiated, it only has either the key\nor the value (depending on the type). They are later filled when registering the\nentry. Attempting to call methods before those fields are filled\ncan cause a crash. Note that if you are just getting the entry from a registry, this\nshould not be a problem.\n\n@see net.minecraft.registry.Registry#entryOf\n@see net.minecraft.registry.Registry#getEntry + f Lnet/minecraft/class_5321; field_36452 registryKey + f Lnet/minecraft/class_6880$class_6883$class_6884; field_36451 referenceType + f Lnet/minecraft/class_7876; field_40930 owner + f Ljava/util/Set; field_36450 tags + f Ljava/lang/Object; field_36453 value + m (Ljava/util/Collection;)V method_40235 setTags + p 1 tags + m (Lnet/minecraft/class_7876;Lnet/minecraft/class_5321;)Lnet/minecraft/class_6880$class_6883; method_40234 standAlone + c {@return a new stand-alone registry entry}\n\n

This should not be called manually. Call {@link net.minecraft.registry.Registry#entryOf} or\n{@link net.minecraft.registry.Registry#getEntry} instead.\n\n

Callers are responsible for filling the value later by calling {@link\n#setValue}. + p 1 registryKey + p 0 owner + m (Lnet/minecraft/class_5321;)V method_45917 setRegistryKey + p 1 registryKey + m (Ljava/lang/Object;)V method_45918 setValue + p 1 value + m (Lnet/minecraft/class_6880$class_6883$class_6884;Lnet/minecraft/class_7876;Lnet/minecraft/class_5321;Ljava/lang/Object;)V + p 3 registryKey + p 4 value + p 1 referenceType + p 2 owner + m ()Lnet/minecraft/class_5321; method_40237 registryKey + c {@return the registry key of this entry}\n\n@throws IllegalStateException if this is an intrusive entry and it is not initialized yet + m (Lnet/minecraft/class_7876;Ljava/lang/Object;)Lnet/minecraft/class_6880$class_6883; method_40233 intrusive + c {@return a new intrusive registry entry}\n\n

This should not be called manually. Call {@link net.minecraft.registry.Registry#entryOf} or\n{@link net.minecraft.registry.Registry#getEntry} instead.\n\n

Callers are responsible for filling the key later by calling {@link\n#setRegistryKey}.\n\n@deprecated Intrusive holders exist for legacy reasons only. + p 1 value + p 0 owner + m ()Ljava/util/Set; method_62677 getTags +c net/minecraft/class_6880$class_6883$class_6884 net/minecraft/registry/entry/RegistryEntry$Reference$Type + c The types of reference registry entries.\n\n@see RegistryEntry.Reference + f Lnet/minecraft/class_6880$class_6883$class_6884; field_36454 STAND_ALONE + f Lnet/minecraft/class_6880$class_6883$class_6884; field_36455 INTRUSIVE +c net/minecraft/class_6880$class_6882 net/minecraft/registry/entry/RegistryEntry$Type + c The types of registry entries.\n\n@see RegistryEntry + f Lnet/minecraft/class_6880$class_6882; field_36446 REFERENCE + f Lnet/minecraft/class_6880$class_6882; field_36447 DIRECT +c net/minecraft/class_6880$class_6881 net/minecraft/registry/entry/RegistryEntry$Direct + c A direct registry entry holds the value directly. The value does not have to be\nregistered in a registry. Therefore, they receive no ID or registry key, and they\ncannot be tagged.\n\n

This is most often used in data packs to inline one-time use values directly. + f Ljava/lang/Object; comp_349 value + m (Ljava/lang/Object;)V + p 1 value +c net/minecraft/class_4225 net/minecraft/client/sound/SoundEngine + f Lnet/minecraft/class_4225$class_4276; field_19184 streamingSources + f J field_18899 contextPointer + f Ljava/lang/String; field_34947 deviceSpecifier + f Z field_34946 disconnectExtensionPresent + f Lorg/slf4j/Logger; field_18897 LOGGER + f Lnet/minecraft/class_4227; field_18902 listener + f Lnet/minecraft/class_4225$class_4276; field_19185 staticSources + f Lnet/minecraft/class_4225$class_4276; field_19183 EMPTY_SOURCE_SET + f J field_18898 devicePointer + m ()V method_19664 close + m (Lnet/minecraft/class_4224;)V method_19662 release + p 1 source + m (Lnet/minecraft/class_4225$class_4105;)Lnet/minecraft/class_4224; method_19663 createSource + p 1 mode + m ()Ljava/util/List; method_38502 getSoundDevices + m ()Lnet/minecraft/class_4227; method_19665 getListener + m (Ljava/lang/String;)J method_38501 openDeviceOrFallback + p 0 deviceSpecifier + m (Lorg/lwjgl/system/MemoryStack;Z)Ljava/nio/IntBuffer; method_66510 createAttributes + p 2 directionalAudio + p 1 stack + m ()Z method_38723 updateDeviceSpecifier + m (Ljava/lang/String;Z)V method_19661 init + p 2 directionalAudio + p 1 deviceSpecifier + m ()Ljava/lang/String; method_20296 getDebugString + m ()I method_20297 getMonoSourceCount + m ()Ljava/lang/String; method_38500 findAvailableDeviceSpecifier + m ()Ljava/lang/String; method_38722 getCurrentDeviceName + m ()Z method_38724 isDeviceUnavailable + m (Ljava/lang/String;)Ljava/util/OptionalLong; method_20050 openDevice + p 0 deviceSpecifier +c net/minecraft/class_4225$class_4105 net/minecraft/client/sound/SoundEngine$RunMode + f Lnet/minecraft/class_4225$class_4105; field_18352 STATIC + f Lnet/minecraft/class_4225$class_4105; field_18353 STREAMING +c net/minecraft/class_4225$class_4226 net/minecraft/client/sound/SoundEngine$SourceSetImpl + f Ljava/util/Set; field_18904 sources + f I field_18903 maxSourceCount + m (I)V + p 1 maxSourceCount +c net/minecraft/class_4225$class_4276 net/minecraft/client/sound/SoundEngine$SourceSet + m ()I method_20299 getSourceCount + m ()I method_20298 getMaxSourceCount + m ()Lnet/minecraft/class_4224; method_19666 createSource + m ()V method_19668 close + m (Lnet/minecraft/class_4224;)Z method_19667 release + p 1 source +c net/minecraft/class_5556 net/minecraft/block/LeveledCauldronBlock + c Constructs a leveled cauldron block. + f I field_31108 MAX_LEVEL + f I field_31107 MIN_LEVEL + f I field_31109 BASE_FLUID_HEIGHT + f Lnet/minecraft/class_1959$class_1963; field_46384 precipitation + f [Lnet/minecraft/class_265; field_60561 INSIDE_COLLISION_SHAPE_BY_LEVEL + f Lcom/mojang/serialization/MapCodec; field_46383 CODEC + f D field_31110 FLUID_HEIGHT_PER_LEVEL + f Lnet/minecraft/class_2758; field_27206 LEVEL + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_31650 decrementFluidLevel + p 2 pos + p 1 world + p 0 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54024 method_54024 + p 0 instance + m (I)D method_71629 getFluidHeight + p 0 level + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_36994 onFireCollision + p 3 pos + p 2 world + p 1 state + m (Lnet/minecraft/class_5556;)Lnet/minecraft/class_5620$class_8821; method_54025 method_54025 + p 0 block + m (I)Lnet/minecraft/class_265; method_71630 method_71630 + p 0 level + m (Lnet/minecraft/class_5556;)Lnet/minecraft/class_1959$class_1963; method_54026 method_54026 + p 0 block + m (Lnet/minecraft/class_1959$class_1963;Lnet/minecraft/class_5620$class_8821;Lnet/minecraft/class_4970$class_2251;)V + c Constructs a leveled cauldron block. + p 2 behaviorMap + p 3 settings + p 1 precipitation + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;)V method_71627 method_71627 + p 5 collidedEntity +c net/minecraft/class_4228 net/minecraft/client/sound/OggAudioStream + f Lcom/jcraft/jogg/StreamState; field_51451 streamState + f Lcom/jcraft/jorbis/Block; field_51455 block + f Lcom/jcraft/jogg/Page; field_51450 page + f Ljava/io/InputStream; field_18909 inputStream + f Ljavax/sound/sampled/AudioFormat; field_18908 format + f Lcom/jcraft/jorbis/Info; field_51453 info + f Lcom/jcraft/jorbis/DspState; field_51454 dspState + f Lcom/jcraft/jogg/Packet; field_51452 packet + f Lcom/jcraft/jogg/SyncState; field_51449 syncState + m (Lcom/jcraft/jogg/Page;)Lcom/jcraft/jogg/Packet; method_59759 readIdentificationPacket + p 1 page + m ()Lcom/jcraft/jogg/Packet; method_59767 readPacket + m ()Z method_59764 read + m (Ljava/io/InputStream;)V + p 1 inputStream + m ()Lcom/jcraft/jogg/Page; method_59766 readPage + m (I)Z method_59763 isError + p 0 code +c net/minecraft/class_4227 net/minecraft/client/sound/SoundListener + f Lnet/minecraft/class_9054; field_47670 transform + m ()Lnet/minecraft/class_9054; method_55585 getTransform + m (Lnet/minecraft/class_9054;)V method_55584 setTransform + p 1 transform + m ()V method_19673 init +c net/minecraft/class_5558 net/minecraft/block/entity/BlockEntityTicker + c A functional interface that ticks a block entity. This is usually implemented\nas a static method in the block entity's class.\n\n@see net.minecraft.block.BlockEntityProvider#getTicker + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2586;)V tick tick + c Ticks the block entity. + p 4 blockEntity + p 1 world + p 2 pos + p 3 state +c net/minecraft/class_6885 net/minecraft/registry/entry/RegistryEntryList + c A registry entry list is an immutable list of registry entries. This, is either a direct\nreference to each item, or a reference to a tag. A tag is a way\nto dynamically define a list of registered values. Anything registered in a registry\ncan be tagged, and each registry holds a list of tags it recognizes.\n\n

This can be iterated directly (i.e. {@code for (RegistryEntry entry : entries)}.\nNote that this does not implement {@link java.util.Collection}.\n\n@see net.minecraft.registry.Registry\n@see RegistryEntry + m (Lnet/minecraft/class_6880;)Z method_40241 contains + c {@return whether {@code entry} is in this list} + p 1 entry + m (Lnet/minecraft/class_5819;)Ljava/util/Optional; method_40243 getRandom + c {@return a random entry of the list, or an empty optional if this list is empty} + p 1 random + m (I)Lnet/minecraft/class_6880; method_40240 get + c {@return the registry entry at {@code index}}\n\n@throws IndexOutOfBoundsException if the index is out of bounds + p 1 index + m ()Lcom/mojang/datafixers/util/Either; method_40248 getStorage + c {@return the object that identifies this registry entry list}\n\n

This is the tag key for a reference list, and the backing list for a direct list. + m ()Ljava/util/Optional; method_45925 getTagKey + m (Ljava/util/function/Function;Ljava/util/Collection;)Lnet/minecraft/class_6885$class_6886; method_40244 of + c {@return a new direct list of {@code values} converted to a registry entry with {@code mapper}} + p 1 values + p 0 mapper + m (Ljava/util/function/Function;[Ljava/lang/Object;)Lnet/minecraft/class_6885$class_6886; method_40245 of + c {@return a new direct list of {@code values} converted to a registry entry with {@code mapper}} + p 0 mapper + p 1 values + m ()I method_40247 size + c {@return the number of entries in this list} + m ()Z method_62680 isBound + m ([Lnet/minecraft/class_6880;)Lnet/minecraft/class_6885$class_6886; method_40246 of + c {@return a new direct list of {@code entries}} + p 0 entries + m (Lnet/minecraft/class_7876;Lnet/minecraft/class_6862;)Lnet/minecraft/class_6885$class_6888; method_45924 of + p 0 owner + p 1 tagKey + m ()Ljava/util/stream/Stream; method_40239 stream + c {@return a stream of registry entries in this list} + m (Ljava/util/List;)Lnet/minecraft/class_6885$class_6886; method_40242 of + c {@return a new direct list of {@code entries}} + p 0 entries + m (Lnet/minecraft/class_7876;)Z method_46768 ownerEquals + p 1 owner + m ()Lnet/minecraft/class_6885; method_58563 empty +c net/minecraft/class_6885$class_6888 net/minecraft/registry/entry/RegistryEntryList$Named + c A registry entry list that references a tag from the registry. + f Ljava/util/List; field_36460 entries + f Lnet/minecraft/class_7876; field_40936 owner + f Lnet/minecraft/class_6862; field_36459 tag + m (Ljava/util/List;)V method_40250 setEntries + p 1 entries + m (Lnet/minecraft/class_7876;Lnet/minecraft/class_6862;)V + p 2 tag + p 1 owner + m ()Lnet/minecraft/class_6862; method_40251 getTag + c {@return the tag key that this list references} +c net/minecraft/class_6885$class_6887 net/minecraft/registry/entry/RegistryEntryList$ListBacked + c An internal implementation of {@link RegistryEntryList}. + m ()Ljava/util/List; method_40249 getEntries +c net/minecraft/class_6885$class_6886 net/minecraft/registry/entry/RegistryEntryList$Direct + c A direct registry entry list that holds the values directly, instead of using tags. + f Lnet/minecraft/class_6885$class_6886; field_50070 EMPTY + f Ljava/util/List; field_36457 entries + f Ljava/util/Set; field_36458 entrySet + m (Ljava/util/List;)V + p 1 entries + m (Ljava/lang/Object;)Z equals equals + p 1 o +c net/minecraft/class_5553 net/minecraft/block/LavaCauldronBlock + c A cauldron filled with lava. + f Lcom/mojang/serialization/MapCodec; field_46382 CODEC + f Lnet/minecraft/class_265; field_60560 INSIDE_COLLISION_SHAPE + f Lnet/minecraft/class_265; field_60559 LAVA_SHAPE +c net/minecraft/class_4221 net/minecraft/entity/ai/brain/sensor/SecondaryPointsOfInterestSensor + f I field_30257 RUN_TIME + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)V method_19617 sense +c net/minecraft/class_5552 net/minecraft/block/OperatorBlock +c net/minecraft/class_4224 net/minecraft/client/sound/Source + f Lorg/slf4j/Logger; field_18892 LOGGER + f I field_18895 bufferSize + f I field_18893 pointer + f Lnet/minecraft/class_4234; field_18896 stream + f Ljava/util/concurrent/atomic/AtomicBoolean; field_18894 playing + m ()I method_19659 getSourceState + m (Lnet/minecraft/class_4234;)V method_19643 setStream + p 1 stream + m ()V method_19650 play + m (F)V method_19651 setAttenuation + p 1 attenuation + m ()V method_19654 resume + m ()Z method_19656 isStopped + m ()V method_19657 disableAttenuation + m (Ljavax/sound/sampled/AudioFormat;I)I method_19644 getBufferSize + p 1 time + p 0 format + m (I)V + p 1 pointer + m ()Z method_35598 isPlaying + m ()Lnet/minecraft/class_4224; method_19638 create + m (Lnet/minecraft/class_4231;)V method_19642 setBuffer + p 1 sound + m (Z)V method_19645 setLooping + p 1 looping + m ()V method_19655 stop + m ()V method_19653 pause + m (Z)V method_19649 setRelative + p 1 relative + m (I)V method_19652 method_19652 + p 1 pointer + m (I)V method_19640 read + p 1 count + m ()V method_19658 tick + m ()V method_19646 close + m (F)V method_19647 setVolume + p 1 volume + m ()I method_19660 removeProcessedBuffers + m (Lnet/minecraft/class_243;)V method_19641 setPosition + p 1 pos + m (I)V method_19648 method_19648 + p 1 pointer + m (F)V method_19639 setPitch + p 1 pitch +c net/minecraft/class_5555 net/minecraft/block/TintedGlassBlock + f Lcom/mojang/serialization/MapCodec; field_46473 CODEC +c net/minecraft/class_5554 net/minecraft/block/LightningRodBlock + f Lnet/minecraft/class_2746; field_27193 POWERED + f I field_31190 MAX_REDIRECT_DISTANCE + c The maximum distance that lightning rods can redirect lightning from.\n\n@see net.minecraft.server.world.ServerWorld#getLightningRodPos(BlockPos) + f Lnet/minecraft/class_2746; field_29562 WATERLOGGED + f I field_31192 SCHEDULED_TICK_DELAY + f Lcom/mojang/serialization/MapCodec; field_46389 CODEC + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_31648 setPowered + p 1 state + p 3 pos + p 2 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_33627 updateNeighbors + p 3 pos + p 1 state + p 2 world +c net/minecraft/class_4219 net/minecraft/entity/ai/brain/task/GoToPosTask + m (Lnet/minecraft/class_7898$class_7900;ILorg/apache/commons/lang3/mutable/MutableLong;FILnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47155 method_47155 + p 6 pos + p 5 walkTarget + m (Lnet/minecraft/class_4140;ILorg/apache/commons/lang3/mutable/MutableLong;FILnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47158 method_47158 + p 5 context + m (Lnet/minecraft/class_4140;FII)Lnet/minecraft/class_7893; method_47157 create + p 2 completionRange + p 1 walkSpeed + p 0 posModule + p 3 maxDistance + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;ILorg/apache/commons/lang3/mutable/MutableLong;Lnet/minecraft/class_7906;FILnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_47156 method_47156 + p 8 entity + p 7 world + p 9 time +c net/minecraft/class_4218 net/minecraft/entity/ai/brain/task/PlayWithVillagerBabiesTask + f I field_30151 HORIZONTAL_RANGE + f I field_30152 VERTICAL_RANGE + f I field_30155 MAX_BABY_INTERACTION_COUNT + f F field_30153 WALK_SPEED + f I field_30156 RUN_CHANCE + f F field_30154 PLAYING_WALK_SPEED + m ()Lnet/minecraft/class_7893; method_47000 create + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_19587 method_19587 + p 1 target + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_19577 isInteractionTargetOf + p 0 entity + p 1 baby + m (Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_1309;)V method_19580 setPlayTarget + p 3 baby + p 2 walkTarget + p 1 lookTarget + p 0 interactionTarget + m (Ljava/util/List;)Ljava/util/Map; method_19592 getBabyInteractionTargetCounts + p 0 babies + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47002 method_47002 + p 0 context + m (Lnet/minecraft/class_1309;Ljava/lang/Integer;)Ljava/lang/Integer; method_19578 method_19578 + p 1 count + p 0 target + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_1309; method_19576 getInteractionTarget + p 0 baby + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47003 method_47003 + p 3 lookTarget + p 4 interactionTarget + p 1 visibleVillagerBabies + p 2 walkTarget + m (Ljava/util/Map;Lnet/minecraft/class_1309;)V method_19582 method_19582 + p 1 baby + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_47004 method_47004 + p 7 time + p 5 world + p 6 entity + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1309;)Z method_47001 method_47001 + p 1 baby + m (Ljava/util/Map$Entry;)Z method_19581 method_19581 + p 0 entry + m (Ljava/util/List;)Ljava/util/Optional; method_19588 getLeastPopularBabyInteractionTarget + p 0 babies + m (Lnet/minecraft/class_1309;)Z method_19593 hasInteractionTarget + p 0 baby + m (Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_1309;)V method_47005 method_47005 + p 3 baby +c net/minecraft/class_6856 net/minecraft/nbt/scanner/ExclusiveNbtCollector + c An exclusive NBT collector builds an NBT object including everything\nexcept the prescribed queries.\n\n@see SelectiveNbtCollector + f Ljava/util/Deque; field_36378 treeStack + m ([Lnet/minecraft/class_6843;)V + p 1 excludedQueries +c net/minecraft/class_6857 net/minecraft/network/listener/ServerCrashSafePacketListener + c The interface for serverbound packet listeners.\n\n@implNote Serverbound packet listeners log any uncaught exceptions\nwithout crashing. + f Lorg/slf4j/Logger; field_51479 LOGGER +c net/minecraft/class_5525 net/minecraft/network/encryption/NetworkEncryptionException + c A checked exception that wraps other exceptions, thrown\nwhen a cryptographic operation fails. + m (Ljava/lang/Throwable;)V + p 1 throwable +c net/minecraft/class_6852 net/minecraft/server/command/PlaceCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_39091 JIGSAW_FAILED_EXCEPTION + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; field_39393 SUGGESTION_PROVIDER + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_39092 STRUCTURE_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_36324 FEATURE_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_39256 TEMPLATE_INVALID_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_39257 TEMPLATE_FAILED_EXCEPTION + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1923;Lnet/minecraft/class_1923;)V method_43647 throwOnUnloadedPos + p 2 pos2 + p 1 pos1 + p 0 world + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43925 method_43925 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43921 method_43921 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43923 method_43923 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43648 method_43648 + p 0 context + m (Lnet/minecraft/class_3449;Lnet/minecraft/class_3218;Lnet/minecraft/class_2794;Lnet/minecraft/class_1923;)V method_43649 method_43649 + p 3 chunkPos + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_39986 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_2338;)I method_43654 executePlaceStructure + p 1 structure + p 0 source + p 2 pos + m (Lcom/mojang/brigadier/context/CommandContext;)I method_39990 method_39990 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43653 method_43653 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43655 method_43655 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2960;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_2415;FIZ)I method_43919 executePlaceTemplate + p 0 source + p 1 id + p 2 pos + p 3 rotation + p 4 mirror + p 5 integrity + p 6 seed + p 7 strict + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_6880;Lnet/minecraft/class_2960;ILnet/minecraft/class_2338;)I method_43650 executePlaceJigsaw + p 0 source + p 1 structurePool + p 4 pos + p 2 id + p 3 maxDepth + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43920 method_43920 + p 0 id + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43922 method_43922 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43924 method_43924 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43918 method_43918 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_66003 method_66003 + p 0 context + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1923;)Z method_43646 method_43646 + p 1 pos + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_44145 method_44145 + p 0 context + p 1 builder + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_2338;)I method_39989 executePlaceFeature + p 2 pos + p 1 feature + p 0 source + m (Lnet/minecraft/class_6880;)Z method_43651 method_43651 + p 0 biome + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43656 method_43656 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_39987 method_39987 + p 0 context +c net/minecraft/class_5520 net/minecraft/client/network/SocialInteractionsManager + f Ljava/util/Set; field_26866 hiddenPlayers + f Ljava/util/Map; field_26927 playerNameByUuid + f Lcom/mojang/authlib/minecraft/UserApiService; field_26912 userApiService + f Z field_35081 blockListLoaded + f Lnet/minecraft/class_310; field_26865 client + f Ljava/util/concurrent/CompletableFuture; field_35082 blockListLoader + m (Ljava/lang/String;)Ljava/util/UUID; method_31407 getUuid + p 1 playerName + m (Ljava/util/UUID;)Z method_31392 isPlayerBlocked + p 1 uuid + m (Ljava/util/UUID;)Z method_31391 isPlayerMuted + p 1 uuid + m (Ljava/util/UUID;)V method_31339 showPlayer + p 1 uuid + m ()Ljava/util/Set; method_31336 getHiddenPlayers + m (Ljava/util/UUID;)V method_31338 hidePlayer + p 1 uuid + m (Lnet/minecraft/class_640;)V method_31337 setPlayerOnline + p 1 player + m (Lnet/minecraft/class_310;Lcom/mojang/authlib/minecraft/UserApiService;)V + p 1 client + p 2 userApiService + m (Ljava/util/UUID;)Z method_31340 isPlayerHidden + p 1 uuid + m ()V method_38936 unloadBlockList + m (Ljava/util/UUID;)V method_31341 setPlayerOffline + p 1 uuid + m ()V method_38935 loadBlockList +c net/minecraft/class_5522 net/minecraft/client/gui/screen/multiplayer/SocialInteractionsScreen + f Lnet/minecraft/class_2561; field_26919 BLOCKING_TEXT + f Lnet/minecraft/class_2561; field_49551 TITLE + f Lnet/minecraft/class_2561; field_26917 EMPTY_SEARCH_TEXT + f Ljava/lang/String; field_26884 currentSearch + f Lnet/minecraft/class_2561; field_26915 BLOCKED_TAB_TITLE + f Lnet/minecraft/class_2960; field_45565 SEARCH_ICON_TEXTURE + f Lnet/minecraft/class_5522$class_5523; field_26885 currentTab + f Lnet/minecraft/class_2561; field_26881 EMPTY_HIDDEN_TEXT + f Lnet/minecraft/class_4185; field_26886 allTabButton + f Lnet/minecraft/class_2960; field_45564 BACKGROUND_TEXTURE + f Lnet/minecraft/class_4185; field_26913 blockedTabButton + f Lnet/minecraft/class_2561; field_26877 HIDDEN_TAB_TITLE + f I field_26871 playerCount + f Lnet/minecraft/class_2561; field_26918 EMPTY_BLOCKED_TEXT + f Lnet/minecraft/class_2561; field_26916 SELECTED_BLOCKED_TAB_TITLE + f Lnet/minecraft/class_5521; field_26882 playerList + f Lnet/minecraft/class_2561; field_26879 SELECTED_HIDDEN_TAB_TITLE + f Lnet/minecraft/class_342; field_26883 searchBox + f Lnet/minecraft/class_2561; field_26880 SEARCH_TEXT + f Lnet/minecraft/class_4185; field_26887 hiddenTabButton + f Lnet/minecraft/class_4185; field_26914 blockingButton + f Lnet/minecraft/class_2561; field_26888 serverLabel + f Lnet/minecraft/class_8132; field_49549 layout + f Lnet/minecraft/class_2561; field_26878 SELECTED_ALL_TAB_TITLE + f Lnet/minecraft/class_2561; field_26876 ALL_TAB_TITLE + f Lnet/minecraft/class_437; field_49550 parent + m (Lnet/minecraft/class_437;)V + p 1 parent + m (Ljava/lang/String;)V method_31357 onSearchChange + p 1 currentSearch + m (Lnet/minecraft/class_4185;)V method_31356 method_31356 + p 1 button + m ()I method_31362 getSearchBoxX + m (Lnet/minecraft/class_4185;)V method_31396 method_31396 + p 1 button + m (Lnet/minecraft/class_310;)V method_31350 updateServerLabel + p 1 client + m (Lnet/minecraft/class_5522$class_5523;)V method_31352 setCurrentTab + p 1 currentTab + m (Lnet/minecraft/class_5522;Lnet/minecraft/class_364;)V method_57766 method_57766 + p 1 child + m ()I method_31359 getScreenHeight + m (Lnet/minecraft/class_4185;)V method_57765 method_57765 + p 1 button + m (Ljava/util/UUID;)V method_31355 setPlayerOffline + p 1 uuid + m ()I method_31361 getPlayerListBottom + m (Lnet/minecraft/class_4185;)V method_31351 method_31351 + p 1 button + m (Lnet/minecraft/class_640;)V method_31353 setPlayerOnline + p 1 player +c net/minecraft/class_5522$class_5523 net/minecraft/client/gui/screen/multiplayer/SocialInteractionsScreen$Tab + f Lnet/minecraft/class_5522$class_5523; field_26921 BLOCKED + f Lnet/minecraft/class_5522$class_5523; field_26890 ALL + f Lnet/minecraft/class_5522$class_5523; field_26891 HIDDEN +c net/minecraft/class_6850 net/minecraft/client/render/chunk/ChunkRendererRegionBuilder + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_60942 renderedChunksByPos + m (Lnet/minecraft/class_1937;III)Lnet/minecraft/class_6849; method_72042 getRenderedChunk + p 3 sectionY + p 4 sectionZ + p 1 world + p 2 sectionX + m (Lnet/minecraft/class_1937;IIIJ)Lnet/minecraft/class_6849; method_72043 method_72043 + p 4 pos + m (Lnet/minecraft/class_1937;J)Lnet/minecraft/class_853; method_39969 build + p 1 world + p 2 sectionPos +c net/minecraft/class_5521 net/minecraft/client/gui/screen/multiplayer/SocialInteractionsPlayerListWidget + f Ljava/lang/String; field_26870 currentSearch + f Lnet/minecraft/class_5522; field_26867 parent + f Ljava/util/List; field_26869 players + m (Ljava/util/UUID;Lnet/minecraft/class_640;)Lnet/minecraft/class_5519; method_73222 createListEntry + p 1 uuid + p 2 playerListEntry + m (Lnet/minecraft/class_640;Lnet/minecraft/class_5522$class_5523;)V method_31345 setPlayerOnline + p 1 player + p 2 tab + m (Lnet/minecraft/class_5519;)Ljava/lang/Integer; method_44760 method_44760 + p 0 player + m ()V method_71089 updateHasDraftReport + m (Ljava/util/Map;)V method_73221 collectOfflinePlayers + p 1 entriesByUuids + m (Ljava/util/Collection;Ljava/util/Map;)V method_44699 setPlayers + p 1 playerUuids + p 2 entriesByUuids + m (Lcom/mojang/authlib/GameProfile;Ljava/util/UUID;)Lnet/minecraft/class_5519; method_44758 method_44758 + p 2 uuid + m ()Z method_31348 isEmpty + m (Ljava/util/Collection;DZ)V method_31393 update + p 4 includeOffline + p 1 uuids + p 2 scrollAmount + m (Ljava/util/Collection;D)V method_44698 refresh + p 2 scrollAmount + p 1 players + m ()V method_44762 sortPlayers + m (Lnet/minecraft/class_5519;)Ljava/lang/Integer; method_44761 method_44761 + p 1 player + m (Lnet/minecraft/class_5519;)V method_71088 method_71088 + p 1 player + m (Lnet/minecraft/class_7555;)Ljava/util/Map; method_45665 collectReportableProfiles + p 0 log + m (Lnet/minecraft/class_5519;)Z method_31342 method_31342 + p 1 player + m (Ljava/util/Map;Z)V method_44759 markOfflineMembers + p 2 includeOffline + p 1 entries + m (Ljava/lang/String;)V method_31346 setCurrentSearch + p 1 currentSearch + m ()V method_31349 filterPlayers + m (Ljava/util/UUID;)V method_31347 setPlayerOffline + p 1 uuid + m (Lnet/minecraft/class_5522;Lnet/minecraft/class_310;IIII)V + p 3 width + p 2 client + p 1 parent + p 6 itemHeight + p 5 y + p 4 height + m (Ljava/util/Map$Entry;Ljava/util/UUID;)Lnet/minecraft/class_5519; method_73220 method_73220 + p 2 uuid + m (ZLjava/util/Map;Ljava/util/UUID;Lcom/mojang/authlib/GameProfile;)V method_74044 method_74044 + p 3 uuid + p 4 profile +c net/minecraft/class_6849 net/minecraft/client/render/chunk/RenderedChunk + f Lnet/minecraft/class_5539; field_60948 heightLimitView + f Z field_36312 debugWorld + f Ljava/util/Map; field_36310 blockEntities + f Lnet/minecraft/class_2841; field_60947 blockPalette + m (Lnet/minecraft/class_2818;I)V + p 1 chunk + p 2 sectionIndex + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_39963 getBlockState + p 1 pos + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2586; method_39962 getBlockEntity + p 1 pos +c net/minecraft/class_6847 net/minecraft/world/gen/blockpredicate/HasSturdyFacePredicate + f Lcom/mojang/serialization/MapCodec; field_36284 CODEC + f Lnet/minecraft/class_2350; field_36286 face + f Lnet/minecraft/class_2382; field_36285 offset + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39912 method_39912 + p 0 instance + m (Lnet/minecraft/class_6847;)Lnet/minecraft/class_2350; method_39913 method_39913 + p 0 predicate + m (Lnet/minecraft/class_6847;)Lnet/minecraft/class_2382; method_39914 method_39914 + p 0 predicate + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)Z method_39911 test + m (Ljava/lang/Object;Ljava/lang/Object;)Z test test + p 1 world + p 2 pos + m (Lnet/minecraft/class_2382;Lnet/minecraft/class_2350;)V + p 2 face + p 1 offset +c net/minecraft/class_5519 net/minecraft/client/gui/screen/multiplayer/SocialInteractionsPlayerListEntry + f Lnet/minecraft/class_4185; field_26861 showButton + f Ljava/lang/String; field_26857 name + f Lnet/minecraft/class_8666; field_45561 REPORT_BUTTON_TEXTURES + f I field_26903 LIGHT_GRAY_COLOR + f Z field_39790 sentMessage + f Ljava/util/UUID; field_26856 uuid + f Lnet/minecraft/class_2561; field_26905 HIDDEN_TEXT + f I field_26850 BLACK_COLOR + f Lnet/minecraft/class_2561; field_33837 HIDE_TEXT + f Ljava/util/List; field_26855 buttons + f Lnet/minecraft/class_2561; field_26909 BLOCKED_OFFLINE_TEXT + f Lnet/minecraft/class_2960; field_45560 DRAFT_REPORT_ICON_TEXTURE + f Lnet/minecraft/class_2561; field_26908 HIDDEN_OFFLINE_TEXT + f I field_26851 GRAY_COLOR + f Lnet/minecraft/class_2561; field_33838 SHOW_TEXT + f Lnet/minecraft/class_8666; field_45563 UNMUTE_BUTTON_TEXTURES + f Z field_26859 offline + f Lnet/minecraft/class_2561; field_26907 OFFLINE_TEXT + f F field_26864 timeCounter + f I field_26852 DARK_GRAY_COLOR + f Z field_40796 hasDraftReport + f Lnet/minecraft/class_4185; field_26860 hideButton + f Ljava/util/function/Supplier; field_26904 skinSupplier + f Lnet/minecraft/class_4185; field_39622 reportButton + f Lnet/minecraft/class_8666; field_45562 MUTE_BUTTON_TEXTURES + f Lnet/minecraft/class_310; field_26854 client + f Z field_39937 reportable + f Ljava/time/Duration; field_32418 TOOLTIP_DELAY + f Z field_39791 canSendReports + f Lnet/minecraft/class_2561; field_26906 BLOCKED_TEXT + f Lnet/minecraft/class_2561; field_39623 REPORT_TEXT + f Lnet/minecraft/class_2561; field_39736 REPORT_DISABLED_TEXT + f I field_26853 WHITE_COLOR + m ()Ljava/util/UUID; method_31334 getUuid + m ()Z method_44756 hasSentMessage + m ()Ljava/lang/String; method_31330 getName + m (Lnet/minecraft/class_5520;Ljava/util/UUID;Ljava/lang/String;Lnet/minecraft/class_4185;)V method_31326 method_31326 + p 4 button + m (Lnet/minecraft/class_7574;)V method_71087 updateHasDraftReport + p 1 context + m (Z)V method_31335 setOffline + p 1 offline + m ()Ljava/util/function/Supplier; method_53594 getSkinSupplier + m (Lnet/minecraft/class_310;Lnet/minecraft/class_5522;Ljava/util/UUID;Ljava/lang/String;Ljava/util/function/Supplier;Z)V + p 2 parent + p 1 client + p 4 name + p 3 uuid + p 6 reportable + p 5 skinTexture + m ()Z method_53595 isReportable + m ()Lnet/minecraft/class_7919; method_47634 getReportButtonTooltip + m (Lnet/minecraft/class_5250;)Lnet/minecraft/class_5250; method_31389 getNarrationMessage + p 1 text + m ()Z method_44754 isOffline + m (Z)V method_47905 setShowButtonVisible + p 1 showButtonVisible + m (Lnet/minecraft/class_5520;Ljava/util/UUID;Ljava/lang/String;Lnet/minecraft/class_4185;)V method_31332 method_31332 + p 4 button + m (Lnet/minecraft/class_7574;Lnet/minecraft/class_310;Lnet/minecraft/class_5522;Lnet/minecraft/class_4185;)V method_44525 method_44525 + p 4 button + m (ZLnet/minecraft/class_2561;)V method_31329 onButtonClick + p 2 chatMessage + p 1 showButtonVisible + m (Z)V method_44753 setSentMessage + p 1 sentMessage + m ()Lnet/minecraft/class_2561; method_31390 getStatusText +c net/minecraft/class_6848 net/minecraft/world/gen/blockpredicate/MatchingBlockTagPredicate + f Lnet/minecraft/class_6862; field_36287 tag + f Lcom/mojang/serialization/MapCodec; field_36288 CODEC + m (Lnet/minecraft/class_6848;)Lnet/minecraft/class_6862; method_39915 method_39915 + p 0 predicate + m (Lnet/minecraft/class_2382;Lnet/minecraft/class_6862;)V + p 1 offset + p 2 tag + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39916 method_39916 + p 0 instance +c net/minecraft/class_6860 net/minecraft/resource/LifecycledResourceManager + c A lifecycled resource manager is available until it is {@linkplain #close()\nclosed}. In principle, it should not be accessed any more after closing;\nuse another resource manager instead. +c net/minecraft/class_6867 net/minecraft/datafixer/fix/StructureSettingsFlattenFix + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_40116 fixDimensionEntry + p 0 dimensionEntry + c (dimension ID, dimension data) + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40122 method_40122 + p 0 generatorSettingsDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54960 method_54960 + p 0 dimensionsDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40121 method_40121 + p 0 generatorDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40441 method_40441 + p 2 strongholdDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40119 method_40119 + p 1 structureDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_40120 method_40120 + p 1 dimensionsTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40117 fixStructures + p 0 structureSettingsDynamic + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_40115 method_40115 + p 1 worldGenSettingsTyped + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_40118 method_40118 + p 1 entry +c net/minecraft/class_5535 net/minecraft/entity/ai/FuzzyPositions + f I field_30264 GAUSS_RANGE + m (Ljava/util/function/Supplier;Ljava/util/function/ToDoubleFunction;)Lnet/minecraft/class_243; method_31543 guessBest + c Returns the {@link Vec3d#ofBottomCenter(BlockPos) bottom center} of a highest scoring\nposition, as determined by {@code scorer}, out of 10 tries on positions obtained from\n{@code factory}. + p 0 factory + p 1 scorer + m (Lnet/minecraft/class_5819;DDIIDDD)Lnet/minecraft/class_2338; method_31542 localFuzz + c Tries to create a fuzzy offset position from the direction and the angle\nrange given. It fulfills the constraints given by {@code horizontalRange}\nand {@code verticalRange} and returns {@code null} if it cannot do so. + p 11 angleRange + p 7 directionX + p 9 directionZ + p 3 maxHorizontalRange + p 6 startHeight + p 5 verticalRange + p 0 random + p 1 minHorizontalRange + m (Lnet/minecraft/class_1314;Ljava/util/function/Supplier;)Lnet/minecraft/class_243; method_31538 guessBestPathTarget + c Calls {@link #guessBest(Supplier, ToDoubleFunction)} with the {@code entity}'s\npath finding favor as the {@code scorer}. + p 1 factory + p 0 entity + m (Lnet/minecraft/class_2338;ILjava/util/function/Predicate;)Lnet/minecraft/class_2338; method_31540 upWhile + c Returns the closest position higher than the input {@code pos} that does\nnot fulfill {@code condition}, or a position with y set to {@code maxY}. + p 2 condition + p 0 pos + p 1 maxY + m (Lnet/minecraft/class_2338;IILjava/util/function/Predicate;)Lnet/minecraft/class_2338; method_31539 upWhile + c Returns the {@code extraAbove + 1}th closest position higher than the\ninput {@code pos} that does not fulfill {@code condition}, or a\nposition with y set to {@code maxY}. + p 1 extraAbove + p 2 max + p 3 condition + p 0 pos + m (Lnet/minecraft/class_1314;DLnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_31537 towardTarget + c Adjusts the input {@code fuzz} slightly toward the given {@code entity}'s\n{@link net.minecraft.entity.mob.MobEntity#getPositionTarget() position target}\nif it exists. + p 3 random + p 4 fuzz + p 1 horizontalRange + p 0 entity + m (Lnet/minecraft/class_5819;II)Lnet/minecraft/class_2338; method_31541 localFuzz + c Creates a fuzzy offset position within the given horizontal and vertical\nranges. + p 1 horizontalRange + p 0 random + p 2 verticalRange +c net/minecraft/class_6868 net/minecraft/entity/ai/goal/PowderSnowJumpGoal + f Lnet/minecraft/class_1308; field_36399 entity + f Lnet/minecraft/class_1937; field_36400 world + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1937;)V + p 1 entity + p 2 world +c net/minecraft/class_5534 net/minecraft/entity/ai/FuzzyTargeting + c Path targeting utilities using fuzzy, or approximated, positions from\n{@link FuzzyPositions}.\n

\nMethods in this class can be used to do pathing for an entity to a random position.\nPositions are chosen to stay within range of the entity's chosen {@linkplain net.minecraft.entity.mob.MobEntity#getPositionTarget() position target}\nif applicable, and will be suitably randomized within that constraint. + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_31533 validate + c Checks whether a given position is a valid pathable target.\n\n@return the input position, or null if validation failed + p 1 pos + c the candidate position + p 0 entity + c the entity doing the pathing + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_2338;)Z method_31536 method_31536 + p 1 currentPos + m (Lnet/minecraft/class_1314;IILnet/minecraft/class_243;)Lnet/minecraft/class_243; method_31528 findTo + c Paths to a random reachable position leading towards a given end-point.\n\n@return the chosen position or null if none could be found + p 3 end + c the position to path towards + p 2 verticalRange + c the vertical pathing range (how far the point can be from the entity's starting position on the Y range) + p 1 horizontalRange + c the horizontal pathing range (how far the point can be from the entity's starting position on the X or Z range) + p 0 entity + m (Lnet/minecraft/class_1314;DDILnet/minecraft/class_243;)Lnet/minecraft/class_243; method_75145 findFrom + p 0 entity + p 1 minHorizontalRange + p 3 maxHorizontalRange + p 5 verticalRange + p 6 start + m (Lnet/minecraft/class_1314;DZLnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_31532 towardTarget + c Paths to a random reachable position approaching an entity's chosen {@link net.minecraft.entity.mob.MobEntity#getPositionTarget() position target}.\n\n@return the chosen position or null if none could be found + p 0 entity + c the entity doing the pathing + p 1 horizontalRange + p 3 posTargetInRange + p 4 relativeInRangePos + m (Lnet/minecraft/class_1314;IILnet/minecraft/class_243;)Lnet/minecraft/class_243; method_31534 findFrom + c Paths to a random reachable position leading away from a given starting point.\n\n@return the chosen position or null if none could be found + p 0 entity + c the entity doing the pathing + p 2 verticalRange + c the vertical pathing range (how far the point can be from the entity's starting position on the Y range) + p 1 horizontalRange + c the horizontal pathing range (how far the point can be from the entity's starting position on the X or Z range) + p 3 start + c the position to path away from + m (Lnet/minecraft/class_1314;DDILnet/minecraft/class_243;Z)Lnet/minecraft/class_243; method_31529 findValid + p 7 posTargetInRange + p 6 direction + p 5 verticalRange + p 3 maxHorizontalRange + p 1 minHorizontalRange + p 0 entity + m (Lnet/minecraft/class_1314;IILjava/util/function/ToDoubleFunction;)Lnet/minecraft/class_243; method_31530 find + c Paths to a random reachable position with positive path-finding favorability computed by a given function.\n\n@return the chosen position or null if none could be found + p 3 scorer + c function to compute the path-finding favorability of a candidate position + p 2 verticalRange + c the vertical pathing range (how far the point can be from the entity's starting position on the Y range) + p 1 horizontalRange + c the horizontal pathing range (how far the point can be from the entity's starting position on the X or Z range) + p 0 entity + c the entity doing the pathing + m (Lnet/minecraft/class_1314;II)Lnet/minecraft/class_243; method_31527 find + c Paths to a random reachable position with positive path-finding favorability.\n\n@return chosen position or null if none could be found + p 0 entity + c the entity doing the pathing + p 1 horizontalRange + c the horizontal pathing range (how far the point can be from the entity's starting position on the X or Z range) + p 2 verticalRange + c the vertical pathing range (how far the point can be from the entity's starting position on the Y range) +c net/minecraft/class_5537 net/minecraft/item/BundleItem + f I field_27016 ITEM_BAR_COLOR + f I field_52575 TOOLTIP_STACKS_COLUMNS + f I field_52576 TOOLTIP_STACKS_ROWS + f I field_52577 MAX_TOOLTIP_STACKS_SHOWN + f I field_52578 MAX_TOOLTIP_STACKS_SHOWN_WHEN_TOO_MANY_TYPES + f I field_52579 FULL_ITEM_BAR_COLOR + f I field_54111 MAX_USE_TIME + m ()Ljava/util/List; method_64975 getBundles + m (Lnet/minecraft/class_1297;)V method_61641 playInsertFailSound + p 0 entity + m (Lnet/minecraft/class_1799;I)V method_61637 setSelectedStackIndex + p 0 stack + p 1 selectedStackIndex + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_1792; method_64277 getBundle + p 0 color + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;Lnet/minecraft/class_9276;)Ljava/util/Optional; method_63676 popFirstBundledStack + p 0 stack + p 1 player + p 2 contents + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;)Z method_32757 dropFirstBundledStack + p 2 player + p 1 stack + m (Lnet/minecraft/class_1657;)V method_64502 onContentChanged + p 1 user + m (Lnet/minecraft/class_1799;)F method_31561 getAmountFilled + p 0 stack + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_61644 getSelectedStack + p 0 stack + m (Lnet/minecraft/class_1297;)V method_38076 playInsertSound + p 0 entity + m (Lnet/minecraft/class_1297;)V method_38074 playRemoveOneSound + p 0 entity + m (Lnet/minecraft/class_1799;)I method_61645 getNumberOfStacksShown + p 0 stack + m (Lnet/minecraft/class_1799;)I method_61643 getSelectedStackIndex + p 0 stack + m (Lnet/minecraft/class_1792;)Lnet/minecraft/class_5537; method_64974 method_64974 + p 0 item + m (Lnet/minecraft/class_1799;)Z method_61642 hasSelectedStack + p 0 stack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;)V method_38077 playDropContentsSound + p 0 world + p 1 entity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V method_63675 dropContentsOnUse + p 2 player + p 1 world + p 3 stack +c net/minecraft/class_5536 net/minecraft/util/ClickType + f Lnet/minecraft/class_5536; field_27013 LEFT + f Lnet/minecraft/class_5536; field_27014 RIGHT +c net/minecraft/class_4205 net/minecraft/client/render/debug/GoalSelectorDebugRenderer + f I field_32902 RANGE + f Lnet/minecraft/class_310; field_18780 client + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;Lnet/minecraft/class_12011;)V method_75441 method_75441 + p 2 data + p 1 entity + m (Lnet/minecraft/class_310;)V + p 1 client +c net/minecraft/class_5531 net/minecraft/entity/ai/NoWaterTargeting + c Similar to {@link FuzzyTargeting}, but the positions this class' utility methods\nfind are never water. + m (Lnet/minecraft/class_1314;IIILnet/minecraft/class_243;D)Lnet/minecraft/class_243; method_31508 find + p 2 verticalRange + p 3 startHeight + p 4 direction + p 5 angleRange + p 0 entity + p 1 horizontalRange +c net/minecraft/class_6864 net/minecraft/registry/tag/TagPacketSerializer + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_6864$class_5748; method_40102 serializeTags + p 0 registry + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_6864$class_5748;)Lnet/minecraft/class_3503$class_6863; method_40106 toRegistryTags + p 0 registry + p 1 tags + m (Lcom/mojang/datafixers/util/Pair;)Z method_40101 method_40101 + p 0 pair + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2378;Ljava/util/Map;Lnet/minecraft/class_2960;Lit/unimi/dsi/fastutil/ints/IntList;)V method_40107 method_40107 + p 3 tagId + p 4 rawIds + m (Lnet/minecraft/class_5455$class_6892;)Lcom/mojang/datafixers/util/Pair; method_40104 method_40104 + p 0 registry + m (Lnet/minecraft/class_2378;Ljava/util/Map;Lnet/minecraft/class_6885$class_6888;)V method_40103 method_40103 + p 2 tag + m (Lnet/minecraft/class_7780;)Ljava/util/Map; method_40105 serializeTags + p 0 dynamicRegistryManager +c net/minecraft/class_6864$class_5748 net/minecraft/registry/tag/TagPacketSerializer$Serialized + c A serialization-friendly POJO representation of a {@linkplain\nnet.minecraft.registry.entry.RegistryEntryList registry entry list} of tags.\nThis allows easy transport of tags over Minecraft network protocol.\n\n

This stores tag entries with raw integer IDs and requires a registry\nfor raw ID access to serialize or deserialize tags. + f Lnet/minecraft/class_6864$class_5748; field_52388 NONE + f Ljava/util/Map; field_28304 contents + m (Lnet/minecraft/class_2540;)V method_33159 writeBuf + p 1 buf + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_6864$class_5748; method_33160 fromBuf + p 0 buf + m (Ljava/util/Map;)V + p 1 contents + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_3503$class_6863; method_61316 toRegistryTags + p 1 registry + m ()I method_64601 size + m ()Z method_61315 isEmpty +c net/minecraft/class_5530 net/minecraft/entity/ai/NoPenaltySolidTargeting + c Similar to {@link FuzzyTargeting}, but the positions this class' utility methods\nfind never have pathfinding penalties and are always on solid blocks. + m (Lnet/minecraft/class_1314;IIIDDDZ)Lnet/minecraft/class_2338; method_31505 tryMake + p 0 entity + p 1 horizontalRange + p 2 verticalRange + p 3 startHeight + p 4 directionX + p 6 directionZ + p 8 rangeAngle + p 10 posTargetInRange + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_2338;)Z method_31506 method_31506 + p 1 pos + m (Lnet/minecraft/class_1314;IIIDDD)Lnet/minecraft/class_243; method_31504 find + p 0 entity + p 1 horizontalRange + p 6 directionZ + p 8 rangeAngle + p 2 verticalRange + p 3 startHeight + p 4 directionX +c net/minecraft/class_6861 net/minecraft/resource/LifecycledResourceManagerImpl + c A basic implementation of resource manager with a lifecycle.\n\n

It handles resources by namespaces, hoping that most namespaces are\ndefined in only few resource packs.\n\n@see NamespaceResourceManager + f Lorg/slf4j/Logger; field_37288 LOGGER + f Ljava/util/Map; field_36389 subManagers + f Ljava/util/List; field_36390 packs + m (Lnet/minecraft/class_3262;)Lnet/minecraft/class_7084; method_41274 parseResourceFilter + p 1 pack + m (Lnet/minecraft/class_3264;Ljava/util/List;)V + p 1 type + p 2 packs + m (Lnet/minecraft/class_7084;Lnet/minecraft/class_2960;)Z method_41276 method_41276 + p 1 id + m (Lnet/minecraft/class_3264;Lnet/minecraft/class_3262;)Ljava/util/stream/Stream; method_41275 method_41275 + p 1 pack + m (Ljava/lang/String;)V method_45303 validateStartingPath + c Validates the starting path to ensure that it does not end with a slash.\n\n@throws IllegalArgumentException if {@code startingPath} has a trailing slash + p 0 startingPath +c net/minecraft/class_5533 net/minecraft/entity/ai/AboveGroundTargeting + c Similar to {@link FuzzyTargeting}, but the positions this class' utility methods\nfind never have pathfinding penalties and are always above ground or water. + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_2338;)Z method_31526 method_31526 + p 1 pos + m (Lnet/minecraft/class_1314;IIDDFII)Lnet/minecraft/class_243; method_31524 find + p 9 minAboveSolid + p 8 maxAboveSolid + p 1 horizontalRange + p 0 entity + p 3 x + p 2 verticalRange + p 5 z + p 7 angle +c net/minecraft/class_6862 net/minecraft/registry/tag/TagKey + f Lcom/google/common/collect/Interner; field_36394 INTERNER + f Lnet/minecraft/class_5321; comp_326 registryRef + f Lnet/minecraft/class_2960; comp_327 id + m (Lnet/minecraft/class_5321;)Lcom/mojang/serialization/Codec; method_40093 codec + p 0 registryRef + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;)Lnet/minecraft/class_6862; method_64142 method_64142 + p 1 id + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_9139; method_64143 packetCodec + p 0 registryRef + m (Lnet/minecraft/class_5321;)Lcom/mojang/serialization/Codec; method_40090 unprefixedCodec + p 0 registryRef + m (Lnet/minecraft/class_6862;)Ljava/lang/String; method_40089 method_40089 + p 0 string + m (Lnet/minecraft/class_5321;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_40091 method_40091 + p 1 string + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;)V + p 2 id + p 1 registryRef + m ()Lnet/minecraft/class_5321; comp_326 registryRef + m (Lnet/minecraft/class_5321;)Z method_41007 isOf + p 1 registryRef + m ()Lnet/minecraft/class_2960; comp_327 id + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_41008 tryCast + p 1 registryRef + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;)Lnet/minecraft/class_6862; method_40095 method_40095 + p 1 id + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;)Lnet/minecraft/class_6862; method_40094 method_40094 + p 1 id + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;)Lnet/minecraft/class_6862; method_40092 of + p 1 id + p 0 registryRef +c net/minecraft/class_5532 net/minecraft/entity/ai/NoPenaltyTargeting + c Similar to {@link FuzzyTargeting}, but the positions this class' utility methods\nfind never have pathfinding penalties. + m (Lnet/minecraft/class_1314;IILnet/minecraft/class_243;D)Lnet/minecraft/class_243; method_31512 findTo + c Paths to a position leading towards a given end-point.\n\n@return the chosen end position or null if no valid positions could be found + p 2 verticalRange + c the vertical pathing range (how far the point can be from the entity's starting position on the Y range) + p 1 horizontalRange + c the horizontal pathing range (how far the point can be from the entity's starting position on the X or Z range) + p 0 entity + c the entity doing the pathing + p 4 angleRange + c the minimum angle of approach + p 3 end + c the position to path towards + m (Lnet/minecraft/class_1314;IILnet/minecraft/class_243;)Lnet/minecraft/class_243; method_31511 findFrom + c Paths to a position leading away from a given starting point.\n\n@return the chosen end position or null if no valid positions could be found + p 3 start + c the position to path away from + p 2 verticalRange + c the vertical pathing range (how far the point can be from the entity's starting position on the Y range) + p 1 horizontalRange + c the horizontal pathing range (how far the point can be from the entity's starting position on the X or Z range) + p 0 entity + c the entity doing the pathing + m (Lnet/minecraft/class_1314;IZLnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_31516 tryMake + p 0 entity + p 1 horizontalRange + p 2 posTargetInRange + p 3 fuzz + m (Lnet/minecraft/class_1314;II)Lnet/minecraft/class_243; method_31510 find + c Paths to a random reachable position with no penalty.\n\n@return the chosen end position or null if no valid positions could be found + p 2 verticalRange + c the vertical pathing range (how far the point can be from the entity's starting position on the Y range) + p 0 entity + c the entity doing the pathing + p 1 horizontalRange + c the horizontal pathing range (how far the point can be from the entity's starting position on the X or Z range) +c net/minecraft/class_5528 net/minecraft/datafixer/fix/CauldronRenameFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_31465 rename + p 0 cauldronDynamic +c net/minecraft/class_6858 net/minecraft/datafixer/fix/WeaponsmithChestLootTableFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40070 method_40070 + p 0 dynamic +c net/minecraft/class_248 net/minecraft/util/shape/FractionalPairList + f Lnet/minecraft/class_246; field_1367 mergedList + f I field_1370 firstSectionCount + f I field_1368 gcd +c net/minecraft/class_247 net/minecraft/util/function/BooleanBiFunction + c A function that is provided two booleans and returns one boolean. + f Lnet/minecraft/class_247; field_16891 FIRST + c A {@link BooleanBiFunction} that returns {@code true} if the first argument is {@code true}. + f Lnet/minecraft/class_247; field_1366 OR + c A {@link BooleanBiFunction} that returns {@code true} if either argument is {@code true}. + f Lnet/minecraft/class_247; field_16898 NOT_SECOND + c A {@link BooleanBiFunction} that returns {@code true} if the second argument is {@code false}. + f Lnet/minecraft/class_247; field_16888 NOT_AND + c A {@link BooleanBiFunction} that returns {@code true} if either argument is {@code false}. + f Lnet/minecraft/class_247; field_16896 AND + c A {@link BooleanBiFunction} that returns {@code true} if both arguments are {@code true}. + f Lnet/minecraft/class_247; field_16886 ONLY_FIRST + c A {@link BooleanBiFunction} that returns {@code true} if only the first argument is {@code true}. + f Lnet/minecraft/class_247; field_16894 NOT_FIRST + c A {@link BooleanBiFunction} that returns {@code true} if the first argument is {@code false}. + f Lnet/minecraft/class_247; field_16892 NOT_SAME + c A {@link BooleanBiFunction} that returns {@code true} if one argument is {@code true} and the other is {@code false}. + f Lnet/minecraft/class_247; field_16890 SAME + c A {@link BooleanBiFunction} that returns {@code true} if both arguments are {@code true} or both arguments are {@code false}. + f Lnet/minecraft/class_247; field_16889 CAUSES + c A {@link BooleanBiFunction} that returns {@code true} if the first argument is {@code false} or the second argument is {@code true}. + f Lnet/minecraft/class_247; field_16887 SECOND + c A {@link BooleanBiFunction} that returns {@code true} if the second argument is {@code true}. + f Lnet/minecraft/class_247; field_16899 CAUSED_BY + c A {@link BooleanBiFunction} that returns {@code true} if the first argument is {@code true} or the second argument is {@code false}. + f Lnet/minecraft/class_247; field_16885 NOT_OR + c A {@link BooleanBiFunction} that returns {@code true} if neither argument is {@code true}. + f Lnet/minecraft/class_247; field_16897 FALSE + c A {@link BooleanBiFunction} that always returns {@code false}. + f Lnet/minecraft/class_247; field_16895 TRUE + c A {@link BooleanBiFunction} that always returns {@code true}. + f Lnet/minecraft/class_247; field_16893 ONLY_SECOND + c A {@link BooleanBiFunction} that returns {@code true} if only the second argument is {@code true}. + m (ZZ)Z method_16793 method_16793 + p 0 a + p 1 b + m (ZZ)Z method_16783 method_16783 + p 1 b + p 0 a + m (ZZ)Z method_16791 method_16791 + p 0 a + p 1 b + m (ZZ)Z method_16781 method_16781 + p 1 b + p 0 a + m (ZZ)Z method_16787 method_16787 + p 1 b + p 0 a + m (ZZ)Z method_16795 method_16795 + p 0 a + p 1 b + m (ZZ)Z method_16785 method_16785 + p 1 b + p 0 a + m (ZZ)Z method_16788 method_16788 + p 1 b + p 0 a + m (ZZ)Z apply apply + p 1 a + p 2 b + m (ZZ)Z method_16790 method_16790 + p 0 a + p 1 b + m (ZZ)Z method_16782 method_16782 + p 1 b + p 0 a + m (ZZ)Z method_16794 method_16794 + p 0 a + p 1 b + m (ZZ)Z method_16792 method_16792 + p 0 a + p 1 b + m (ZZ)Z method_16786 method_16786 + p 1 b + p 0 a + m (ZZ)Z method_16784 method_16784 + p 1 b + p 0 a + m (ZZ)Z method_16796 method_16796 + p 0 a + p 1 b + m (ZZ)Z method_16789 method_16789 + p 1 b + p 0 a +c net/minecraft/class_246 net/minecraft/util/shape/FractionalDoubleList + f I field_1365 sectionCount + m (I)V + p 1 sectionCount + m (I)D getDouble getDouble + p 1 position +c net/minecraft/class_245 net/minecraft/util/shape/ArrayVoxelShape + f Lit/unimi/dsi/fastutil/doubles/DoubleList; field_1362 yPoints + f Lit/unimi/dsi/fastutil/doubles/DoubleList; field_1361 xPoints + f Lit/unimi/dsi/fastutil/doubles/DoubleList; field_1363 zPoints + m (Lnet/minecraft/class_251;[D[D[D)V + p 2 xPoints + p 1 shape + p 4 zPoints + p 3 yPoints + m (Lnet/minecraft/class_251;Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;)V + p 4 zPoints + p 3 yPoints + p 2 xPoints + p 1 shape +c net/minecraft/class_249 net/minecraft/util/shape/SimpleVoxelShape +c net/minecraft/class_244 net/minecraft/util/shape/BitSetVoxelSet + f Ljava/util/BitSet; field_1359 storage + f I field_1357 minY + f I field_1356 minZ + f I field_1358 minX + f I field_1360 maxZ + f I field_1355 maxX + f I field_1354 maxY + m (Lnet/minecraft/class_255;Lnet/minecraft/class_255;Lnet/minecraft/class_247;Lnet/minecraft/class_251;Lnet/minecraft/class_251;Lnet/minecraft/class_244;[IIII)Z method_1041 method_1041 + p 8 x2 + p 7 x1 + p 9 xIndex + m (Lnet/minecraft/class_251;)V + p 1 other + m (Lnet/minecraft/class_251;Lnet/minecraft/class_251;Lnet/minecraft/class_255;Lnet/minecraft/class_255;Lnet/minecraft/class_255;Lnet/minecraft/class_247;)Lnet/minecraft/class_244; method_1040 combine + p 3 yPoints + p 4 zPoints + p 5 function + p 0 first + p 1 second + p 2 xPoints + m (IIIII)Z method_31938 isXzSquareFull + p 2 x2 + p 3 z1 + p 4 z2 + p 5 y + p 1 x1 + m (IIIZ)V method_31940 set + p 4 updateBounds + p 3 z + p 2 y + p 1 x + m (Lnet/minecraft/class_247;Lnet/minecraft/class_251;IILnet/minecraft/class_251;IILnet/minecraft/class_244;II[I[ZIII)Z method_1038 method_1038 + p 14 zIndex + p 12 z1 + p 13 z2 + m (Lnet/minecraft/class_255;Lnet/minecraft/class_247;Lnet/minecraft/class_251;ILnet/minecraft/class_251;ILnet/minecraft/class_244;I[I[ZIII)Z method_1042 method_1042 + p 12 yIndex + p 10 y1 + p 11 y2 + m (IIIIIIIII)Lnet/minecraft/class_244; method_31939 create + p 1 sizeY + p 2 sizeZ + p 0 sizeX + p 7 maxY + p 8 maxZ + p 5 minZ + p 6 maxX + p 3 minX + p 4 minY + m (IIII)Z method_1059 isColumnFull + p 3 x + p 2 z2 + p 4 y + p 1 z1 + m (III)I method_1039 getIndex + p 1 x + p 2 y + p 3 z + m (IIII)V method_31942 clearColumn + p 3 x + p 2 z2 + p 1 z1 + p 4 y + m (Lnet/minecraft/class_251;Lnet/minecraft/class_251$class_253;Z)V method_31941 forEachBox + p 1 callback + p 0 voxelSet + p 2 coalesce + m (III)Z method_58225 surrounded + p 3 z + p 2 y + p 1 x +c net/minecraft/class_243 net/minecraft/util/math/Vec3d + c An immutable vector composed of 3 doubles.\n\n

This vector class is used for representing position, velocity,\nrotation, color, etc.\n\n

This vector has proper {@link #hashCode()} and {@link #equals(Object)}\nimplementations and can be used as a map key.\n\n@see Vec3i\n@see org.joml.Vector3f + f Lnet/minecraft/class_243; field_61914 X + f Lnet/minecraft/class_243; field_1353 ZERO + c The zero vector (0, 0, 0). + f D field_1352 x + c The X coordinate of this vector. + f Lcom/mojang/serialization/Codec; field_38277 CODEC + f Lnet/minecraft/class_243; field_61916 Z + f D field_1350 z + c The Z coordinate of this vector. + f Lnet/minecraft/class_243; field_61915 Y + f D field_1351 y + c The Y coordinate of this vector. + f Lnet/minecraft/class_9139; field_52694 PACKET_CODEC + m ()Lnet/minecraft/class_243; method_22882 negate + c Creates a vector with the same length but with the opposite direction. + m (F)Lnet/minecraft/class_243; method_1024 rotateY + c Rotates this vector by the given angle counterclockwise around the Y axis. + p 1 angle + c the angle in radians + m ()Lnet/minecraft/class_243; method_1029 normalize + c Normalizes this vector.\n\n

Normalized vector is a vector with the same direction but with\nlength 1. Each coordinate of normalized vector has value between 0\nand 1.\n\n@return the normalized vector of this vector + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_243; method_24955 ofBottomCenter + c Creates a vector representing the bottom center of the given block\nposition.\n\n

The bottom center of a block position {@code pos} is\n{@code (pos.getX() + 0.5, pos.getY(), pos.getZ() + 0.5)}.\n\n@see #ofCenter(Vec3i) + p 0 vec + m (Lnet/minecraft/class_241;)Lnet/minecraft/class_243; method_1034 fromPolar + c Converts pitch and yaw into a direction vector.\n\n@see #fromPolar(float, float) + p 0 polar + c the vector composed of pitch and yaw + m ()D method_1027 lengthSquared + c {@return the squared length of this vector}\n\n

Can be used for fast comparison between lengths.\n\n@see #length() + m (DDD)Lnet/minecraft/class_243; method_18805 multiply + c Returns a vector whose coordinates are the product of each pair of\ncoordinates in this vector and the given vector.\n\n@see #multiply(Vec3d)\n@see #multiply(double) + p 5 z + p 3 y + p 1 x + m (Lnet/minecraft/class_2350$class_2351;D)Lnet/minecraft/class_243; method_38499 withAxis + p 2 value + p 1 axis + m (Lnet/minecraft/class_2382;D)Lnet/minecraft/class_243; method_26410 ofCenter + c Creates a vector representing the center of the given block position but\nwith the given offset for the Y coordinate.\n\n@return a vector of {@code (vec.getX() + 0.5, vec.getY() + deltaY,\nvec.getZ() + 0.5)} + p 0 vec + p 1 deltaY + m (Lnet/minecraft/class_2350;D)Lnet/minecraft/class_243; method_43206 offset + p 1 direction + p 2 value + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_18806 multiply + c Returns a vector whose coordinates are the product of each pair of\ncoordinates in this vector and the given vector.\n\n@see #multiply(double, double, double)\n@see #multiply(double) + p 1 vec + m (F)Lnet/minecraft/class_243; method_31033 rotateZ + c Rotates this vector by the given angle counterclockwise around the Z axis. + p 1 angle + c the angle in radians + m (Lnet/minecraft/class_243;D)Lnet/minecraft/class_243; method_35590 lerp + c Performs linear interpolation from this vector to the given vector. + p 2 delta + c the interpolation coefficient in the range between 0 and 1 + p 1 to + c the vector to interpolate to + m (Ljava/util/EnumSet;)Lnet/minecraft/class_243; method_1032 floorAlongAxes + c Applies the floor function to the coordinates chosen by the given axes. + p 1 axes + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_75277 transformLocalPos + p 1 vec + m (D)Lnet/minecraft/class_243; method_61889 add + p 1 value + m (DDD)D method_1028 squaredDistanceTo + c Returns the squared distance between this vector and the given vector.\n\n

Can be used for fast comparison between distances.\n\n@see #squaredDistanceTo(Vec3d)\n@see #distanceTo(Vec3d) + p 1 x + p 5 z + p 3 y + m (FF)Lnet/minecraft/class_243; method_1030 fromPolar + c Converts pitch and yaw into a direction vector.\n\n@see #fromPolar(Vec2f) + p 1 yaw + p 0 pitch + m (Ljava/util/List;)Lnet/minecraft/class_243; method_42395 method_42395 + p 0 coords + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_42394 method_42394 + p 0 coordinates + m (Lnet/minecraft/class_2382;DDD)Lnet/minecraft/class_243; method_49273 add + c {@return a new vector from {@code vec} with {@code deltaX}, {@code deltaY}, and\n{@code deltaZ} added to X, Y, Z values, respectively} + p 1 deltaX + p 0 vec + p 5 deltaZ + p 3 deltaY + m (F)Lnet/minecraft/class_243; method_1037 rotateX + c Rotates this vector by the given angle counterclockwise around the X axis. + p 1 angle + c the angle in radians + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_243; method_24954 of + c Copies the given vector. + p 0 vec + m ()Lnet/minecraft/class_241; method_75278 getYawAndPitch + m (Lnet/minecraft/class_5819;F)Lnet/minecraft/class_243; method_49272 addRandom + c {@return a vector with each value added by {@code random.nextFloat() - 0.5f) * multiplier}} + p 1 random + p 2 multiplier + m ()Z method_76470 isFinite + m (Lnet/minecraft/class_243;)D method_1025 squaredDistanceTo + c Returns the squared distance between this vector and the given vector.\n\n

Can be used for fast comparison between distances.\n\n@see #squaredDistanceTo(double, double, double)\n@see #distanceTo(Vec3d) + p 1 vec + m (D)Lnet/minecraft/class_243; method_61888 subtract + p 1 value + m ()D method_1033 length + c {@return the length of this vector}\n\n

The length of a vector is equivalent to the distance between that\nvector and the {@linkplain #ZERO} vector.\n\n@see #lengthSquared() + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_1020 subtract + c Subtracts the given vector from this vector.\n\n@see #subtract(double, double, double)\n@see #relativize(Vec3d)\n@return the difference between this vector and the given vector + p 1 vec + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_64316 projectOnto + p 1 vec + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_1036 crossProduct + c Returns the cross product of this vector and the given vector. + p 1 vec + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_243; method_24953 ofCenter + c Creates a vector representing the center of the given block position. + p 0 vec + m ()D method_37267 horizontalLength + c {@return the horizontal length of this vector}\n\n

This length is same as the length of a 2-vector with the {@link #x} and\n{@link #z} components of this vector, or the euclidean distance between\n{@code (x, z)} and the origin.\n\n@see #horizontalLengthSquared() + m ()Lnet/minecraft/class_243; method_61890 getHorizontal + m (Lnet/minecraft/class_2350$class_2351;)D method_18043 getComponentAlongAxis + c Returns the coordinate chosen by the given axis. + p 1 axis + m (Lnet/minecraft/class_243;)Ljava/util/List; method_42396 method_42396 + p 0 vec + m (Lnet/minecraft/class_243;DD)Z method_55230 isWithinRangeOf + p 4 verticalRange + p 2 horizontalRange + p 1 vec + m (DDD)Lnet/minecraft/class_243; method_1023 subtract + c Subtracts the given vector from this vector.\n\n@see #relativize(Vec3d)\n@return the difference between this vector and the given vector + p 5 z + p 3 y + p 1 x + m (Lnet/minecraft/class_241;Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_75275 transformLocalPos + p 0 rotation + p 1 vec + m (DDD)V + c Creates a vector of the given coordinates. + p 3 y + p 5 z + p 1 x + m (Lnet/minecraft/class_243;)D method_1026 dotProduct + c Returns the dot product of this vector and the given vector. + p 1 vec + m (DDD)Lnet/minecraft/class_243; method_1031 add + c Returns the sum of this vector and the given vector.\n\n@see #add(Vec3d) + p 5 z + p 3 y + p 1 x + m (Lnet/minecraft/class_243;)D method_1022 distanceTo + c Returns the distance between this vector and the given vector.\n\n@see #squaredDistanceTo(Vec3d) + p 1 vec + m (Lnet/minecraft/class_2374;D)Z method_24802 isInRange + c Checks if the distance between this vector and the given position is\nless than {@code radius}. + p 1 pos + p 2 radius + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_1035 relativize + c Subtracts this vector from the given vector.\n\n@see #subtract(Vec3d)\n@return the difference between the given vector and this vector + p 1 vec + m ()D method_37268 horizontalLengthSquared + c {@return the squared horizontal length of this vector}\n\n

Can be used for fast comparison between horizontal lengths.\n\n@see #horizontalLength() + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_1019 add + c Returns the sum of this vector and the given vector.\n\n@see #add(double, double, double) + p 1 vec + m (D)Lnet/minecraft/class_243; method_1021 multiply + c Return a vector whose coordinates are the coordinates of this vector\neach multiplied by the given scalar value.\n\n@see #multiply(Vec3d)\n@see #multiply(double, double, double) + p 1 value + m (Lnet/minecraft/class_2382;)V + p 1 vec + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lorg/joml/Vector3f; method_46409 toVector3f + c {@return a JOML {@link org.joml.Vector3f} representing this vector} + m ()Lnet/minecraft/class_243; method_70762 rotateYClockwise + m (Lorg/joml/Vector3fc;)V + c Copies the given vector. + p 1 vec + m (Lnet/minecraft/class_5819;F)Lnet/minecraft/class_243; method_75276 addHorizontalRandom + p 2 multiplier + p 1 random +c net/minecraft/class_243$1 net/minecraft/util/math/Vec3d$1 + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_243; method_61891 decode + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_243;)V method_61892 encode +c net/minecraft/class_10191 net/minecraft/item/equipment/EquipmentAssetKeys + f Lnet/minecraft/class_5321; field_54137 GOLD + f Lnet/minecraft/class_5321; field_54136 IRON + f Lnet/minecraft/class_5321; field_54135 CHAINMAIL + f Lnet/minecraft/class_5321; field_54134 LEATHER + f Lnet/minecraft/class_5321; field_54139 TURTLE_SCUTE + f Lnet/minecraft/class_5321; field_54138 DIAMOND + f Lnet/minecraft/class_5321; field_54140 NETHERITE + f Lnet/minecraft/class_5321; field_54144 TRADER_LLAMA + f Lnet/minecraft/class_5321; field_54142 ELYTRA + f Lnet/minecraft/class_5321; field_54141 ARMADILLO_SCUTE + f Ljava/util/Map; field_59750 HARNESS_FROM_COLOR + f Ljava/util/Map; field_54143 CARPET_FROM_COLOR + f Lnet/minecraft/class_5321; field_55214 REGISTRY_KEY + f Lnet/minecraft/class_5321; field_55981 SADDLE + f Lnet/minecraft/class_5321; field_61365 COPPER + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_5321; method_64011 method_64011 + p 0 color + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_65368 register + p 0 name + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_5321; method_70739 method_70739 + p 0 color +c net/minecraft/class_241 net/minecraft/util/math/Vec2f + c An immutable vector composed of 2 floats. + f Lnet/minecraft/class_241; field_1339 MIN_SOUTH_EAST + f Lnet/minecraft/class_241; field_1337 MAX_SOUTH_EAST + f Lnet/minecraft/class_241; field_1338 WEST_UNIT + f Lnet/minecraft/class_241; field_1335 SOUTH_EAST_UNIT + f Lnet/minecraft/class_241; field_1336 SOUTH_UNIT + f Lnet/minecraft/class_241; field_1344 NORTH_UNIT + f Lnet/minecraft/class_241; field_1340 ZERO + f F field_1342 y + f Lcom/mojang/serialization/Codec; field_56695 CODEC + f Lnet/minecraft/class_241; field_1341 EAST_UNIT + f F field_1343 x + m ()Lnet/minecraft/class_241; method_35588 negate + m (FF)V + p 2 y + p 1 x + m (F)Lnet/minecraft/class_241; method_35585 add + p 1 value + m (F)Lnet/minecraft/class_241; method_35582 multiply + p 1 value + m ()F method_35587 lengthSquared + m (Lnet/minecraft/class_241;)F method_35583 dot + p 1 vec + m (Lnet/minecraft/class_241;)Ljava/util/List; method_67712 method_67712 + p 0 vec + m (Lnet/minecraft/class_241;)Z method_1016 equals + p 1 other + m ()Lnet/minecraft/class_241; method_35581 normalize + m (Lnet/minecraft/class_241;)Lnet/minecraft/class_241; method_35586 add + p 1 vec + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_67710 method_67710 + p 0 rawList + m (Ljava/util/List;)Lnet/minecraft/class_241; method_67711 method_67711 + p 0 list + m ()F method_35584 length + m (Lnet/minecraft/class_241;)F method_35589 distanceSquared + p 1 vec +c net/minecraft/class_10194 net/minecraft/unused/packageinfo/PackageInfo10194 +c net/minecraft/class_10192 net/minecraft/component/type/EquippableComponent + f Lcom/mojang/serialization/Codec; field_54145 CODEC + f Lnet/minecraft/class_9139; field_54146 PACKET_CODEC + f Lnet/minecraft/class_1304; comp_3174 slot + f Z comp_3523 equipOnInteract + f Z comp_3214 damageOnHurt + f Z comp_3213 swappable + f Lnet/minecraft/class_6880; comp_4363 shearingSound + f Lnet/minecraft/class_6880; comp_3175 equipSound + f Ljava/util/Optional; comp_3176 assetId + f Ljava/util/Optional; comp_3177 allowedEntities + f Z comp_3178 dispensable + f Z comp_4362 canBeSheared + f Ljava/util/Optional; comp_3306 cameraOverlay + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_10192; method_64017 ofCarpet + p 0 color + m ()Lnet/minecraft/class_10192; method_66699 ofSaddle + m (Lnet/minecraft/class_1304;)Lnet/minecraft/class_10192$class_10217; method_64202 builder + p 0 slot + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_66700 equipOnInteract + p 2 entity + p 1 player + p 3 stack + m (Lnet/minecraft/class_1299;)Z method_64015 allows + p 1 entityType + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1269; method_64018 equip + p 1 stack + p 2 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64016 method_64016 + p 0 instance + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_10192; method_70740 ofHarness + p 0 color + m ()Lnet/minecraft/class_6880; comp_3175 equipSound + m ()Z comp_3523 equipOnInteract + m ()Z comp_3213 swappable + m ()Z comp_3214 damageOnHurt + m ()Z comp_3178 dispensable + m ()Lnet/minecraft/class_6880; comp_4363 shearingSound + m ()Z comp_4362 canBeSheared + m ()Ljava/util/Optional; comp_3306 cameraOverlay + m ()Ljava/util/Optional; comp_3177 allowedEntities + m ()Ljava/util/Optional; comp_3176 assetId + m ()Lnet/minecraft/class_1304; comp_3174 slot + m (Lnet/minecraft/class_1304;Lnet/minecraft/class_6880;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;ZZZZZLnet/minecraft/class_6880;)V + p 1 slot + p 2 equipSound + p 3 assetId + p 4 cameraOverlay + p 5 allowedEntities + p 6 dispensable + p 7 swappable + p 8 damageOnHurt + p 9 equipOnInteract + p 10 canBeSheared + p 11 shearingSound +c net/minecraft/class_10192$class_10217 net/minecraft/component/type/EquippableComponent$Builder + f Z field_54238 dispensable + f Ljava/util/Optional; field_54237 allowedEntities + f Ljava/util/Optional; field_54236 model + f Z field_54239 swappable + f Z field_54240 damageOnHurt + f Ljava/util/Optional; field_54908 cameraOverlay + f Lnet/minecraft/class_1304; field_54234 slot + f Lnet/minecraft/class_6880; field_54235 equipSound + f Lnet/minecraft/class_6880; field_60670 shearingSound + f Z field_55982 equipOnInteract + f Z field_60669 canBeSheared + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_10192$class_10217; method_65009 cameraOverlay + p 1 cameraOverlay + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_10192$class_10217; method_64205 equipSound + p 1 equipSound + m (Z)Lnet/minecraft/class_10192$class_10217; method_66701 equipOnInteract + p 1 equipOnInteract + m (Lnet/minecraft/class_1304;)V + p 1 slot + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_10192$class_10217; method_64204 model + p 1 model + m (Lnet/minecraft/class_6885;)Lnet/minecraft/class_10192$class_10217; method_64206 allowedEntities + p 1 allowedEntities + m (Z)Lnet/minecraft/class_10192$class_10217; method_64207 dispensable + p 1 dispensable + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_10192$class_10217; method_71771 shearingSound + p 1 shearingSound + m (Z)Lnet/minecraft/class_10192$class_10217; method_64210 damageOnHurt + p 1 damageOnHurt + m (Z)Lnet/minecraft/class_10192$class_10217; method_71772 canBeSheared + p 1 canBeSheared + m ()Lnet/minecraft/class_10192; method_64203 build + m (Z)Lnet/minecraft/class_10192$class_10217; method_64209 swappable + p 1 swappable + m ([Lnet/minecraft/class_1299;)Lnet/minecraft/class_10192$class_10217; method_64208 allowedEntities + p 1 allowedEntities +c net/minecraft/class_10193 net/minecraft/unused/packageinfo/PackageInfo10193 +c net/minecraft/class_10196 net/minecraft/client/render/chunk/NormalizedRelativePos + f I field_54172 z + f I field_54171 y + f I field_54170 x + m ()Z method_64067 isOnCameraAxis + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_243;J)Lnet/minecraft/class_10196; method_64070 with + p 1 cameraPos + p 2 sectionPos + m (Lnet/minecraft/class_243;J)Lnet/minecraft/class_10196; method_64069 of + p 1 sectionPos + p 0 cameraPos + m (DI)I method_64068 normalize + p 2 sectionCoord + p 0 cameraCoord +c net/minecraft/class_10197 net/minecraft/client/render/entity/equipment/EquipmentRenderer + f Lnet/minecraft/class_10201; field_54179 equipmentModelLoader + f Ljava/util/function/Function; field_54180 layerTextures + f Ljava/util/function/Function; field_54181 trimSprites + m (Lnet/minecraft/class_10186$class_10190;Lnet/minecraft/class_5321;Lnet/minecraft/class_3879;Ljava/lang/Object;Lnet/minecraft/class_1799;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;II)V method_64077 render + p 7 queue + p 8 light + p 9 outlineColor + p 3 model + p 4 state + p 5 stack + p 6 matrices + p 1 layerType + p 2 assetKey + m (Lnet/minecraft/class_10186$class_10190;Lnet/minecraft/class_5321;Lnet/minecraft/class_3879;Ljava/lang/Object;Lnet/minecraft/class_1799;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_2960;II)V method_64078 render + p 1 layerType + p 2 assetKey + p 3 model + p 8 light + p 9 textureId + p 10 outlineColor + p 11 initialOrder + p 4 state + p 5 stack + p 6 matrices + p 7 queue + m (Lnet/minecraft/class_10186$class_10189;I)I method_64076 getDyeColor + p 0 layer + p 1 dyeColor + m (Lnet/minecraft/class_10201;Lnet/minecraft/class_1059;)V + p 2 armorTrimsAtlas + p 1 equipmentModelLoader + m (Lnet/minecraft/class_10197$class_10198;)Lnet/minecraft/class_2960; method_64079 method_64079 + p 0 key + m (Lnet/minecraft/class_1059;Lnet/minecraft/class_10197$class_10199;)Lnet/minecraft/class_1058; method_64080 method_64080 + p 1 key +c net/minecraft/class_10197$class_10199 net/minecraft/client/render/entity/equipment/EquipmentRenderer$TrimSpriteKey + f Lnet/minecraft/class_5321; comp_3201 equipmentAssetId + f Lnet/minecraft/class_10186$class_10190; comp_3200 layerType + f Lnet/minecraft/class_8053; comp_3199 trim + m ()Lnet/minecraft/class_2960; method_65573 getTexture + m ()Lnet/minecraft/class_8053; comp_3199 trim + m ()Lnet/minecraft/class_5321; comp_3201 equipmentAssetId + m ()Lnet/minecraft/class_10186$class_10190; comp_3200 layerType + m (Lnet/minecraft/class_8053;Lnet/minecraft/class_10186$class_10190;Lnet/minecraft/class_5321;)V + p 1 trim + p 2 layerType + p 3 equipmentAssetId +c net/minecraft/class_10197$class_10198 net/minecraft/client/render/entity/equipment/EquipmentRenderer$LayerTextureKey + f Lnet/minecraft/class_10186$class_10189; comp_3198 layer + f Lnet/minecraft/class_10186$class_10190; comp_3197 layerType + m ()Lnet/minecraft/class_10186$class_10190; comp_3197 layerType + m ()Lnet/minecraft/class_10186$class_10189; comp_3198 layer + m (Lnet/minecraft/class_10186$class_10190;Lnet/minecraft/class_10186$class_10189;)V + p 1 layerType + p 2 layer +c net/minecraft/class_259 net/minecraft/util/shape/VoxelShapes + f Lnet/minecraft/class_265; field_17669 UNBOUNDED + f Lnet/minecraft/class_265; field_1384 EMPTY + f D field_31880 MIN_SIZE + f Lnet/minecraft/class_265; field_1385 FULL_CUBE + f Lnet/minecraft/class_243; field_55842 BLOCK_CENTER + m (Lnet/minecraft/class_247;Lnet/minecraft/class_251;IILnet/minecraft/class_251;IIIII)Z method_1070 method_1070 + p 7 z1 + p 8 z2 + p 9 index3 + m (Lnet/minecraft/class_265;Lnet/minecraft/class_4990;Lnet/minecraft/class_243;)Lnet/minecraft/class_265; method_66497 transform + p 2 anchor + p 0 shape + p 1 transformation + m (Lnet/minecraft/class_265;Lnet/minecraft/class_243;)Ljava/util/Map; method_76595 createFacingShapeMap + p 1 anchor + p 0 shape + m (Lnet/minecraft/class_2350$class_2351;Lnet/minecraft/class_238;Ljava/lang/Iterable;D)D method_1085 calculateMaxOffset + p 3 maxDist + p 0 axis + p 2 shapes + p 1 box + m (Lnet/minecraft/class_265;Lnet/minecraft/class_4990;Lnet/minecraft/class_243;)Ljava/util/Map; method_66505 createFacingShapeMap + p 2 anchor + p 0 shape + p 1 transformation + m (Lnet/minecraft/class_265;[Lnet/minecraft/class_265;)Lnet/minecraft/class_265; method_17786 union + p 1 others + p 0 first + m (Lnet/minecraft/class_265;Lnet/minecraft/class_265;)Z method_66503 equal + p 1 shape2 + p 0 shape1 + m (DDDDDD)Lnet/minecraft/class_265; method_1081 cuboid + p 2 minY + p 0 minX + p 6 maxX + p 4 minZ + p 10 maxZ + p 8 maxY + m (Lnet/minecraft/class_265;)Ljava/util/Map; method_66501 createHorizontalFacingShapeMap + p 0 shape + m (Lnet/minecraft/class_265;Lnet/minecraft/class_243;)Ljava/util/Map; method_66495 createHorizontalAxisShapeMap + p 1 anchor + p 0 shape + m (Lnet/minecraft/class_265;Lnet/minecraft/class_265;Lnet/minecraft/class_2350;)Z method_1080 adjacentSidesCoverSquare + p 0 one + p 1 two + p 2 direction + m (Lnet/minecraft/class_265;)Ljava/util/Map; method_66499 createAxisShapeMap + p 0 shape + m (Lnet/minecraft/class_265;Lnet/minecraft/class_243;)Ljava/util/Map; method_66500 createAxisShapeMap + p 1 anchor + p 0 shape + m (Lnet/minecraft/class_265;Lnet/minecraft/class_265;Lnet/minecraft/class_247;)Lnet/minecraft/class_265; method_1082 combine + p 0 one + p 1 two + p 2 function + m (Lnet/minecraft/class_265;Lnet/minecraft/class_265;Lnet/minecraft/class_247;)Lnet/minecraft/class_265; method_1072 combineAndSimplify + p 2 function + p 1 second + p 0 first + m (Lnet/minecraft/class_265;Lnet/minecraft/class_4990;)Ljava/util/Map; method_76593 createHorizontalFacingShapeMap + p 0 shape + p 1 transformation + m (Lnet/minecraft/class_255;Lnet/minecraft/class_247;Lnet/minecraft/class_251;ILnet/minecraft/class_251;IIII)Z method_1076 method_1076 + p 6 y1 + p 8 index2 + p 7 y2 + m (Lnet/minecraft/class_265;Lnet/minecraft/class_265;Lnet/minecraft/class_247;)Z method_1074 matchesAnywhere + p 2 predicate + p 1 shape2 + p 0 shape1 + m (DDDDDD)Lnet/minecraft/class_265; method_31943 cuboidUnchecked + p 6 maxX + p 8 maxY + p 10 maxZ + p 0 minX + p 2 minY + p 4 minZ + m (Lnet/minecraft/class_265;)Ljava/util/Map; method_66504 createFacingShapeMap + p 0 shape + m ()Lnet/minecraft/class_265; method_1077 fullCube + m (Lnet/minecraft/class_265;)Ljava/util/Map; method_66506 createBlockFaceHorizontalFacingShapeMap + p 0 shape + m (ILit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;ZZ)Lnet/minecraft/class_255; method_1069 createListPair + p 0 size + p 1 first + p 2 second + p 3 includeFirst + p 4 includeSecond + m (Lit/unimi/dsi/fastutil/doubles/DoubleList;ZDD)Lit/unimi/dsi/fastutil/doubles/DoubleList; method_66498 transform + p 1 flip + p 0 pointPositions + p 2 component + p 4 anchor + m (Lnet/minecraft/class_265;Lnet/minecraft/class_4990;Lnet/minecraft/class_243;)Ljava/util/Map; method_66502 createHorizontalFacingShapeMap + p 1 transformation + p 2 anchor + p 0 shape + m (Lnet/minecraft/class_255;Lnet/minecraft/class_255;Lnet/minecraft/class_255;Lnet/minecraft/class_251;Lnet/minecraft/class_251;Lnet/minecraft/class_247;)Z method_1071 matchesAnywhere + p 0 mergedX + p 2 mergedZ + p 1 mergedY + p 4 shape2 + p 3 shape1 + p 5 predicate + m (Lnet/minecraft/class_265;Lnet/minecraft/class_4990;)Ljava/util/Map; method_76594 createBlockFaceHorizontalFacingShapeMap + p 1 transformation + p 0 shape + m ()Lnet/minecraft/class_265; method_1073 empty + m (DD)I method_1086 findRequiredBitResolution + p 0 min + p 2 max + m (Lnet/minecraft/class_265;)Ljava/util/Map; method_66494 createHorizontalAxisShapeMap + p 0 shape + m (Lnet/minecraft/class_265;Lnet/minecraft/class_265;)Z method_20713 unionCoversFullCube + p 0 one + p 1 two + m (Lnet/minecraft/class_265;Lnet/minecraft/class_4990;)Lnet/minecraft/class_265; method_66496 transform + p 0 shape + p 1 transformation + m (Lnet/minecraft/class_265;Lnet/minecraft/class_265;)Lnet/minecraft/class_265; method_1084 union + p 1 second + p 0 first + m (Lnet/minecraft/class_238;)Lnet/minecraft/class_265; method_1078 cuboid + p 0 box + m (Lnet/minecraft/class_255;Lnet/minecraft/class_255;Lnet/minecraft/class_247;Lnet/minecraft/class_251;Lnet/minecraft/class_251;III)Z method_1075 method_1075 + p 6 x2 + p 7 index1 + p 5 x1 + m (II)J method_1079 lcm + p 1 b + p 0 a + m (Lnet/minecraft/class_265;Lnet/minecraft/class_265;Lnet/minecraft/class_2350;)Z method_1083 isSideCovered + p 1 neighbor + p 2 direction + p 0 shape +c net/minecraft/class_259$class_260 net/minecraft/util/shape/VoxelShapes$BoxConsumer + m (DDDDDD)V consume consume + p 1 minX + p 3 minY + p 5 minZ + p 7 maxX + p 9 maxY + p 11 maxZ +c net/minecraft/class_257 net/minecraft/util/shape/DisjointPairList + f Lit/unimi/dsi/fastutil/doubles/DoubleList; field_1379 second + f Z field_1380 inverted + f Lit/unimi/dsi/fastutil/doubles/DoubleList; field_1381 first + m (I)D getDouble getDouble + p 1 position + m (Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;Z)V + p 3 inverted + p 1 first + p 2 second + m (Lnet/minecraft/class_255$class_256;)Z method_1067 iterateSections + p 1 predicate + m (Lnet/minecraft/class_255$class_256;III)Z method_1068 method_1068 + p 3 index + p 1 x + p 2 y +c net/minecraft/class_251 net/minecraft/util/shape/VoxelSet + f I field_1373 sizeY + f I field_1374 sizeX + f [Lnet/minecraft/class_2350$class_2351; field_1375 AXES + f I field_1372 sizeZ + m (Lnet/minecraft/class_2350$class_2351;)I method_1045 getMax + p 1 axis + m (Lnet/minecraft/class_2350$class_2351;)I method_1055 getMin + p 1 axis + m (III)Z method_1044 inBoundsAndContains + p 3 z + p 1 x + p 2 y + m ()I method_1048 getZSize + m (Lnet/minecraft/class_2350$class_2351;)I method_1051 getSize + p 1 axis + m (Lnet/minecraft/class_2350$class_2351;II)I method_1058 getEndingAxisCoord + p 1 axis + p 3 to + p 2 from + m (Lnet/minecraft/class_251$class_253;Lnet/minecraft/class_2335;Z)V method_1052 forEachEdge + p 3 coalesce + p 2 direction + p 1 callback + m (Lnet/minecraft/class_2335;III)Z method_1062 inBoundsAndContains + p 1 cycle + p 3 y + p 2 x + p 4 z + m (III)V method_1049 set + p 2 y + p 3 z + p 1 x + m (Lnet/minecraft/class_2350$class_2351;II)I method_35592 getStartingAxisCoord + p 1 axis + p 3 to + p 2 from + m (Lnet/minecraft/class_251$class_253;Z)V method_1064 forEachEdge + p 2 coalesce + p 1 callback + m (Lnet/minecraft/class_251$class_252;Lnet/minecraft/class_2335;)V method_1061 forEachDirection + p 2 direction + p 1 consumer + m (Lnet/minecraft/class_251$class_252;)V method_1046 forEachDirection + p 1 consumer + m (Lnet/minecraft/class_2335;III)Z method_1057 contains + p 4 z + p 1 cycle + p 3 y + p 2 x + m (III)Z method_1063 contains + p 1 x + p 2 y + p 3 z + m ()I method_1047 getYSize + m (III)V + p 1 sizeX + p 2 sizeY + p 3 sizeZ + m ()Z method_1056 isEmpty + m (Lnet/minecraft/class_251$class_253;Z)V method_1053 forEachBox + p 2 coalesce + p 1 consumer + m (Lnet/minecraft/class_4990;)Lnet/minecraft/class_251; method_66493 transform + p 1 transformation + m ()I method_1050 getXSize +c net/minecraft/class_251$class_252 net/minecraft/util/shape/VoxelSet$PositionConsumer + m (Lnet/minecraft/class_2350;III)V consume consume + p 4 z + p 3 y + p 2 x + p 1 direction +c net/minecraft/class_251$class_253 net/minecraft/util/shape/VoxelSet$PositionBiConsumer + m (IIIIII)V consume consume + p 4 x2 + p 5 y2 + p 6 z2 + p 1 x1 + p 2 y1 + p 3 z1 +c net/minecraft/class_250 net/minecraft/util/shape/IdentityPairList + f Lit/unimi/dsi/fastutil/doubles/DoubleList; field_1371 merged + m (Lit/unimi/dsi/fastutil/doubles/DoubleList;)V + p 1 values +c net/minecraft/class_255 net/minecraft/util/shape/PairList + m ()Lit/unimi/dsi/fastutil/doubles/DoubleList; method_1066 getPairs + m (Lnet/minecraft/class_255$class_256;)Z method_1065 forEachPair + p 1 predicate +c net/minecraft/class_255$class_256 net/minecraft/util/shape/PairList$Consumer + m (III)Z merge merge + p 2 y + p 3 index + p 1 x +c net/minecraft/class_254 net/minecraft/util/shape/SimplePairList + f [D field_1377 valueIndices + f I field_27347 size + f Lit/unimi/dsi/fastutil/doubles/DoubleList; field_27346 ZERO + f [I field_1376 minValues + f [I field_1378 maxValues + m (Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;ZZ)V + p 4 includeSecondOnly + p 1 first + p 2 second + p 3 includeFirstOnly +c net/minecraft/class_10183 net/minecraft/entity/ai/control/Control + m (FFF)F method_63642 changeAngle + p 1 start + p 2 end + p 3 maxChange +c net/minecraft/class_10184 net/minecraft/predicate/entity/InputPredicate + f Lcom/mojang/serialization/Codec; field_54096 CODEC + f Ljava/util/Optional; comp_3155 right + f Ljava/util/Optional; comp_3156 jump + f Ljava/util/Optional; comp_3157 sneak + f Ljava/util/Optional; comp_3158 sprint + f Ljava/util/Optional; comp_3152 forward + f Ljava/util/Optional; comp_3153 backward + f Ljava/util/Optional; comp_3154 left + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_63644 method_63644 + p 0 instance + m (Ljava/util/Optional;Z)Z method_63645 keyMatches + p 2 inputPressed + p 1 keyPressed + m (Lnet/minecraft/class_10185;)Z method_63643 matches + p 1 playerInput + m (ZLjava/lang/Boolean;)Ljava/lang/Boolean; method_63646 method_63646 + p 1 pressed + m ()Ljava/util/Optional; comp_3154 left + m ()Ljava/util/Optional; comp_3153 backward + m ()Ljava/util/Optional; comp_3152 forward + m ()Ljava/util/Optional; comp_3158 sprint + m ()Ljava/util/Optional; comp_3157 sneak + m ()Ljava/util/Optional; comp_3156 jump + m ()Ljava/util/Optional; comp_3155 right + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 forward + p 2 backward + p 3 left + p 4 right + p 5 jump + p 6 sneak + p 7 sprint +c net/minecraft/class_10181 net/minecraft/entity/conversion/EntityConversionType + f Z field_54082 discardOldEntity + f Ljava/util/Set; field_60523 CUSTOM_COMPONENTS + f Lnet/minecraft/class_10181; field_54080 SINGLE + f Lnet/minecraft/class_10181; field_54081 SPLIT_ON_DEATH + m (Ljava/lang/String;IZ)V + p 3 discardOldEntity + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1308;Lnet/minecraft/class_10179;)V method_63609 setUpNewEntity + p 3 context + p 2 newEntity + p 1 oldEntity + m ()Z method_63608 shouldDiscardOldEntity + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1308;Lnet/minecraft/class_10179;)V method_63611 copyData + p 1 oldEntity + p 2 newEntity + p 3 context + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1308;Lnet/minecraft/class_9331;)V method_71611 copyComponent + p 2 type + p 1 newEntity + p 0 oldEntity +c net/minecraft/class_10182 net/minecraft/entity/EntityPosition + f F comp_3151 pitch + f F comp_3150 yaw + f Lnet/minecraft/class_9139; field_54565 PACKET_CODEC + f Lnet/minecraft/class_243; comp_3149 deltaMovement + f Lnet/minecraft/class_243; comp_3148 position + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_10182; method_63638 fromEntity + p 0 entity + m (Lnet/minecraft/class_10182;Lnet/minecraft/class_10182;Ljava/util/Set;)Lnet/minecraft/class_10182; method_63639 apply + p 0 currentPos + p 2 flags + p 1 newPos + m (Lnet/minecraft/class_5454;)Lnet/minecraft/class_10182; method_63640 fromTeleportTarget + p 0 teleportTarget + m ()F comp_3151 pitch + m ()F comp_3150 yaw + m (FF)Lnet/minecraft/class_10182; method_73096 withRotation + p 1 yaw + p 2 pitch + m (DDLjava/util/Set;Lnet/minecraft/class_2709;)D method_63636 resolve + p 5 deltaFlag + p 4 flags + p 0 delta + p 2 value + m ()Lnet/minecraft/class_243; comp_3149 deltaMovement + m ()Lnet/minecraft/class_243; comp_3148 position + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;FF)V + p 1 position + p 2 deltaMovement + p 3 yaw + p 4 pitch +c net/minecraft/class_10185 net/minecraft/util/PlayerInput + f B field_54105 SPRINT + f Lnet/minecraft/class_9139; field_54097 PACKET_CODEC + f B field_54101 LEFT + f B field_54102 RIGHT + f B field_54103 JUMP + f B field_54104 SNEAK + f Lnet/minecraft/class_10185; field_54098 DEFAULT + f B field_54099 FORWARD + f Z comp_3164 sneak + f B field_54100 BACKWARD + f Z comp_3165 sprint + f Z comp_3163 jump + f Z comp_3161 left + f Z comp_3162 right + f Z comp_3160 backward + f Z comp_3159 forward + m ()Z comp_3164 sneak + m ()Z comp_3165 sprint + m ()Z comp_3162 right + m ()Z comp_3163 jump + m ()Z comp_3160 backward + m ()Z comp_3161 left + m ()Z comp_3159 forward + m (ZZZZZZZ)V + p 1 forward + p 2 backward + p 3 left + p 4 right + p 5 jump + p 6 sneak + p 7 sprint +c net/minecraft/class_10185$1 net/minecraft/util/PlayerInput$1 + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_10185; method_63667 decode + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_10185;)V method_63668 encode +c net/minecraft/class_10186 net/minecraft/client/render/entity/equipment/EquipmentModel + f Lcom/mojang/serialization/Codec; field_54120 CODEC + f Lcom/mojang/serialization/Codec; field_54121 LAYER_LIST_CODEC + f Ljava/util/Map; comp_3169 layers + m ()Lnet/minecraft/class_10186$class_10187; method_63994 builder + m (Lnet/minecraft/class_10186$class_10190;)Ljava/util/List; method_63996 getLayers + p 1 layerType + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_63995 method_63995 + p 0 instance + m ()Ljava/util/Map; comp_3169 layers + m (Ljava/util/Map;)V + p 1 layers +c net/minecraft/class_10186$class_10187 net/minecraft/client/render/entity/equipment/EquipmentModel$Builder + f Ljava/util/Map; field_54122 layers + m (Lnet/minecraft/class_10186$class_10190;)Ljava/util/List; method_64000 method_64000 + p 0 type + m (Lnet/minecraft/class_10186$class_10190;[Lnet/minecraft/class_10186$class_10189;)Lnet/minecraft/class_10186$class_10187; method_64001 addLayers + p 1 layerType + p 2 layers + m ()Lnet/minecraft/class_10186; method_63997 build + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_10186$class_10187; method_63998 addHumanoidLayers + p 1 textureId + m (Lnet/minecraft/class_2960;Z)Lnet/minecraft/class_10186$class_10187; method_63999 addHumanoidLayers + p 1 textureId + p 2 dyeable + m (Lnet/minecraft/class_2960;Z)Lnet/minecraft/class_10186$class_10187; method_64003 addMainHumanoidLayer + p 2 dyeable + p 1 textureId +c net/minecraft/class_10186$class_10189 net/minecraft/client/render/entity/equipment/EquipmentModel$Layer + f Lcom/mojang/serialization/Codec; field_54124 CODEC + f Ljava/util/Optional; comp_3172 dyeable + f Lnet/minecraft/class_2960; comp_3171 textureId + f Z comp_3173 usePlayerTexture + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64006 method_64006 + p 0 instance + m (Lnet/minecraft/class_2960;Z)Lnet/minecraft/class_10186$class_10189; method_64009 create + p 1 dyeable + p 0 textureId + m (Lnet/minecraft/class_10186$class_10190;Ljava/lang/String;)Ljava/lang/String; method_64008 method_64008 + p 1 textureName + m (Lnet/minecraft/class_2960;Z)Lnet/minecraft/class_10186$class_10189; method_64005 createWithLeatherColor + p 1 dyeable + p 0 textureId + m (Lnet/minecraft/class_10186$class_10190;)Lnet/minecraft/class_2960; method_64007 getFullTextureId + p 1 layerType + m (Lnet/minecraft/class_2960;)V + p 1 textureId + m ()Ljava/util/Optional; comp_3172 dyeable + m ()Z comp_3173 usePlayerTexture + m ()Lnet/minecraft/class_2960; comp_3171 textureId + m (Lnet/minecraft/class_2960;Ljava/util/Optional;Z)V + p 1 textureId + p 2 dyeable + p 3 usePlayerTexture +c net/minecraft/class_10186$class_10188 net/minecraft/client/render/entity/equipment/EquipmentModel$Dyeable + f Lcom/mojang/serialization/Codec; field_54123 CODEC + f Ljava/util/Optional; comp_3170 colorWhenUndyed + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64004 method_64004 + p 0 instance + m ()Ljava/util/Optional; comp_3170 colorWhenUndyed + m (Ljava/util/Optional;)V + p 1 colorWhenUndyed +c net/minecraft/class_10186$class_10190 net/minecraft/client/render/entity/equipment/EquipmentModel$LayerType + f Ljava/lang/String; field_54132 name + f Lcom/mojang/serialization/Codec; field_54131 CODEC + f Lnet/minecraft/class_10186$class_10190; field_56129 ZOMBIE_HORSE_SADDLE + f Lnet/minecraft/class_10186$class_10190; field_56128 MULE_SADDLE + f Lnet/minecraft/class_10186$class_10190; field_56127 DONKEY_SADDLE + f Lnet/minecraft/class_10186$class_10190; field_56126 HORSE_SADDLE + f Lnet/minecraft/class_10186$class_10190; field_56125 CAMEL_SADDLE + f Lnet/minecraft/class_10186$class_10190; field_56124 STRIDER_SADDLE + f Lnet/minecraft/class_10186$class_10190; field_56123 PIG_SADDLE + f Lnet/minecraft/class_10186$class_10190; field_59984 HAPPY_GHAST_BODY + f Lnet/minecraft/class_10186$class_10190; field_56130 SKELETON_HORSE_SADDLE + f Lnet/minecraft/class_10186$class_10190; field_64249 CAMEL_HUSK_SADDLE + f Lnet/minecraft/class_10186$class_10190; field_54128 WOLF_BODY + f Lnet/minecraft/class_10186$class_10190; field_54129 HORSE_BODY + f Lnet/minecraft/class_10186$class_10190; field_54126 HUMANOID_LEGGINGS + f Lnet/minecraft/class_10186$class_10190; field_54127 WINGS + f Lnet/minecraft/class_10186$class_10190; field_54125 HUMANOID + f Lnet/minecraft/class_10186$class_10190; field_54130 LLAMA_BODY + f Lnet/minecraft/class_10186$class_10190; field_63621 NAUTILUS_SADDLE + f Lnet/minecraft/class_10186$class_10190; field_63622 NAUTILUS_BODY + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()Ljava/lang/String; method_67293 getTrimsDirectory +c net/minecraft/class_269 net/minecraft/scoreboard/Scoreboard + f Ljava/util/Map; field_1432 objectiveSlots + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; field_1428 objectives + f Ljava/util/Map; field_1431 scores + f Lorg/slf4j/Logger; field_36309 LOGGER + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; field_1427 teamsByScoreHolder + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; field_1429 objectivesByCriterion + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; field_1426 teams + m ()Ljava/util/List; method_75281 getPackedObjectives + m (Ljava/lang/String;Lnet/minecraft/class_268;)V method_1157 removeScoreHolderFromTeam + p 1 scoreHolderName + p 2 team + m (Lnet/minecraft/class_9015;Lnet/minecraft/class_266;)V method_1155 removeScore + p 1 scoreHolder + p 2 objective + m (Lnet/minecraft/class_269$class_10744;)V method_67455 addEntry + p 1 packedEntry + m (Lnet/minecraft/class_266;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/class_9012;)V method_55424 method_55424 + p 2 scoreHolderName + p 3 scores + m (Lnet/minecraft/class_268;)V method_1154 updateScoreboardTeam + p 1 team + m (Lnet/minecraft/class_9015;Lnet/minecraft/class_266;)V method_1190 onScoreRemoved + p 1 scoreHolder + p 2 objective + m (Ljava/lang/String;)Lnet/minecraft/class_9012; method_55431 getScores + p 1 scoreHolderName + m ()Ljava/util/Map; method_75282 getObjectivesBySlots + m (Lnet/minecraft/class_8646;)Lnet/minecraft/class_266; method_1189 getObjectiveForSlot + p 1 slot + m (Ljava/util/function/Consumer;Lnet/minecraft/class_9015;Lnet/minecraft/class_266;)V method_1182 method_1182 + p 3 objective + m ()Ljava/util/Collection; method_1196 getTeamNames + m (Lnet/minecraft/class_266$class_10742;)V method_67453 addObjective + p 1 packedObjective + m (Lnet/minecraft/class_266;)V method_1194 removeObjective + p 1 objective + m (Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_67457 method_67457 + p 0 entry + m ()Ljava/util/List; method_75280 getPackedTeams + m (Ljava/lang/String;)Lnet/minecraft/class_268; method_1171 addTeam + p 1 name + m (Lnet/minecraft/class_9015;)V method_55429 removeScores + p 1 scoreHolder + m (Lnet/minecraft/class_9015;Lnet/minecraft/class_266;)Lnet/minecraft/class_9014; method_1180 getOrCreateScore + p 2 objective + p 1 scoreHolder + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/class_267;)V method_55427 method_55427 + p 1 score + m (Lnet/minecraft/class_266;)V method_1175 updateExistingObjective + p 1 objective + m (Lnet/minecraft/class_9015;Lnet/minecraft/class_266;)Lnet/minecraft/class_9013; method_55430 getScore + p 2 objective + p 1 scoreHolder + m (Lnet/minecraft/class_268;)V method_1191 removeTeam + p 1 team + m (Lnet/minecraft/class_9015;Lnet/minecraft/class_266;)V method_55337 resetScore + p 1 scoreHolder + p 2 objective + m (Lnet/minecraft/class_9015;)V method_1152 onScoreHolderRemoved + p 1 scoreHolder + m (Lnet/minecraft/class_9015;Lnet/minecraft/class_266;Z)Lnet/minecraft/class_9014; method_55425 getOrCreateScore + p 1 scoreHolder + p 2 objective + p 3 forceWritable + m (Ljava/lang/String;)Lnet/minecraft/class_266; method_1170 getNullableObjective + p 1 name + m (Lnet/minecraft/class_8646;Lnet/minecraft/class_266;)V method_1158 setObjectiveSlot + p 2 objective + p 1 slot + m (Lnet/minecraft/class_268$class_10743;)V method_67454 addTeam + p 1 packedTeam + m (Ljava/lang/String;)Lnet/minecraft/class_268; method_1164 getScoreHolderTeam + p 1 scoreHolderName + m (Lnet/minecraft/class_9015;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; method_1166 getScoreHolderObjectives + p 1 scoreHolder + m (Ljava/lang/String;Lnet/minecraft/class_274;Lnet/minecraft/class_2561;Lnet/minecraft/class_274$class_275;ZLnet/minecraft/class_9022;)Lnet/minecraft/class_266; method_1168 addObjective + p 4 renderType + p 5 displayAutoUpdate + p 6 numberFormat + p 1 name + p 2 criterion + p 3 displayName + m ()Ljava/util/List; method_67458 pack + m (Lnet/minecraft/class_268;)V method_1160 updateScoreboardTeamAndPlayers + p 1 team + m (Lnet/minecraft/class_274;Lnet/minecraft/class_9015;Ljava/util/function/Consumer;)V method_1162 forEachScore + p 2 scoreHolder + p 3 action + p 1 criterion + m ()Ljava/util/Collection; method_1178 getKnownScoreHolders + m ()Ljava/util/Collection; method_1151 getObjectives + m (Ljava/lang/String;Ljava/util/Map$Entry;)Lnet/minecraft/class_269$class_10744; method_67456 method_67456 + p 1 entryx + m (Ljava/lang/String;)Lnet/minecraft/class_268; method_1153 getTeam + p 1 name + m (Lnet/minecraft/class_266;)Ljava/util/Collection; method_1184 getScoreboardEntries + p 1 objective + m (Ljava/lang/String;)Z method_1195 clearTeam + p 1 scoreHolderName + m (Lnet/minecraft/class_9015;Lnet/minecraft/class_266;Lnet/minecraft/class_267;)V method_1176 updateScore + p 1 scoreHolder + p 2 objective + p 3 score + m (Lnet/minecraft/class_266;)V method_1173 updateRemovedObjective + p 1 objective + m (Ljava/lang/String;)Lnet/minecraft/class_9012; method_55432 method_55432 + p 0 name + m (Lnet/minecraft/class_266;)V method_1185 updateObjective + p 1 objective + m (Ljava/lang/String;Lnet/minecraft/class_268;)Z method_1172 addScoreHolderToTeam + p 1 scoreHolderName + p 2 team + m ()Ljava/util/Collection; method_1163 getObjectiveNames + m ()Ljava/util/Collection; method_1159 getTeams + m (Ljava/lang/Object;)Ljava/util/List; method_1179 method_1179 + p 0 criterion2 + m (Lnet/minecraft/class_268;)V method_1193 updateRemovedTeam + p 1 team + m (Lnet/minecraft/class_1297;)V method_1150 clearDeadEntity + p 1 entity +c net/minecraft/class_269$class_10744 net/minecraft/scoreboard/Scoreboard$PackedEntry + f Lcom/mojang/serialization/Codec; field_56484 CODEC + f Lnet/minecraft/class_267$class_12223; comp_3664 score + f Ljava/lang/String; comp_3662 owner + f Ljava/lang/String; comp_3663 objective + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67459 method_67459 + p 0 instance + m ()Ljava/lang/String; comp_3663 objective + m ()Ljava/lang/String; comp_3662 owner + m ()Lnet/minecraft/class_267$class_12223; comp_3664 score + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_267$class_12223;)V + p 1 owner + p 2 objective + p 3 score +c net/minecraft/class_269$1 net/minecraft/scoreboard/Scoreboard$1 + m ()V method_55434 update + m (Z)V method_55433 setLocked + p 1 locked +c net/minecraft/class_268 net/minecraft/scoreboard/Team + f Lnet/minecraft/class_2561; field_1418 prefix + f Z field_1416 showFriendlyInvisibles + f Lnet/minecraft/class_270$class_272; field_1422 deathMessageVisibilityRule + f Lnet/minecraft/class_2583; field_24195 nameStyle + f Lnet/minecraft/class_270$class_271; field_1425 collisionRule + f Ljava/lang/String; field_1421 name + f Lnet/minecraft/class_2561; field_1419 suffix + f Ljava/util/Set; field_1415 playerList + f Z field_1417 friendlyFire + f Lnet/minecraft/class_270$class_272; field_1423 nameTagVisibilityRule + f Lnet/minecraft/class_269; field_1420 scoreboard + f Lnet/minecraft/class_124; field_1424 color + f Lnet/minecraft/class_2561; field_1414 displayName + m (Lnet/minecraft/class_2561;)V method_1137 setDisplayName + p 1 displayName + m (Z)V method_1143 setShowFriendlyInvisibles + p 1 showFriendlyInvisible + m ()Lnet/minecraft/class_268$class_10743; method_67448 pack + m (Z)V method_1135 setFriendlyFireAllowed + p 1 friendlyFire + m (Lnet/minecraft/class_2561;)V method_1139 setSuffix + p 1 suffix + m ()Lnet/minecraft/class_5250; method_1148 getFormattedName + m ()I method_1147 getFriendlyFlagsBitwise + m ()Lnet/minecraft/class_2561; method_1140 getDisplayName + m (Lnet/minecraft/class_124;)V method_1141 setColor + p 1 color + m ()Lnet/minecraft/class_2561; method_1144 getPrefix + m ()Lnet/minecraft/class_269; method_35594 getScoreboard + m (Lnet/minecraft/class_270;Lnet/minecraft/class_2561;)Lnet/minecraft/class_5250; method_1142 decorateName + c Decorates the name of an entity with the prefix, suffix and color of the team.\nIf the team is null, returns a copy of the name. + p 1 name + c the name to be decorated + p 0 team + c the team, can be null + m (Lnet/minecraft/class_2561;)V method_1138 setPrefix + p 1 prefix + m ()Lnet/minecraft/class_2561; method_1136 getSuffix + m (Lnet/minecraft/class_270$class_272;)V method_1149 setNameTagVisibilityRule + p 1 nameTagVisibilityRule + m (Lnet/minecraft/class_270$class_271;)V method_1145 setCollisionRule + p 1 collisionRule + m (I)V method_1146 setFriendlyFlagsBitwise + p 1 flags + m (Lnet/minecraft/class_269;Ljava/lang/String;)V + p 1 scoreboard + p 2 name + m (Lnet/minecraft/class_270$class_272;)V method_1133 setDeathMessageVisibilityRule + p 1 deathMessageVisibilityRule +c net/minecraft/class_268$class_10743 net/minecraft/scoreboard/Team$Packed + f Lcom/mojang/serialization/Codec; field_56482 CODEC + f Ljava/util/List; comp_3661 players + f Lnet/minecraft/class_2561; comp_3657 memberNameSuffix + f Lnet/minecraft/class_2561; comp_3656 memberNamePrefix + f Lnet/minecraft/class_270$class_271; comp_3660 collisionRule + f Z comp_3654 allowFriendlyFire + f Z comp_3655 seeFriendlyInvisibles + f Lnet/minecraft/class_270$class_272; comp_3658 nameTagVisibility + f Lnet/minecraft/class_270$class_272; comp_3659 deathMessageVisibility + f Ljava/util/Optional; comp_3653 color + f Ljava/util/Optional; comp_3652 displayName + f Ljava/lang/String; comp_3651 name + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67449 method_67449 + p 0 instance + m ()Ljava/util/Optional; comp_3653 color + m ()Ljava/util/Optional; comp_3652 displayName + m ()Lnet/minecraft/class_270$class_272; comp_3658 nameTagVisibility + m ()Lnet/minecraft/class_270$class_272; comp_3659 deathMessageVisibility + m ()Ljava/util/List; comp_3661 players + m ()Lnet/minecraft/class_270$class_271; comp_3660 collisionRule + m ()Ljava/lang/String; comp_3651 name + m ()Z comp_3655 seeFriendlyInvisibles + m ()Z comp_3654 allowFriendlyFire + m ()Lnet/minecraft/class_2561; comp_3657 memberNameSuffix + m ()Lnet/minecraft/class_2561; comp_3656 memberNamePrefix + m (Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;ZZLnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_270$class_272;Lnet/minecraft/class_270$class_272;Lnet/minecraft/class_270$class_271;Ljava/util/List;)V + p 1 name + p 2 displayName + p 3 color + p 4 allowFriendlyFire + p 5 seeFriendlyInvisibles + p 6 memberNamePrefix + p 7 memberNameSuffix + p 8 nameTagVisibility + p 9 deathMessageVisibility + p 10 collisionRule + p 11 players +c net/minecraft/class_267 net/minecraft/scoreboard/ScoreboardScore + f I field_47534 score + f Lnet/minecraft/class_2561; field_47535 displayText + f Z field_1411 locked + f Lnet/minecraft/class_9022; field_47536 numberFormat + m (Lnet/minecraft/class_9022;)V method_55406 setNumberFormat + p 1 numberFormat + m (Lnet/minecraft/class_267$class_12223;)V + p 1 packed + m (Lnet/minecraft/class_2561;)V method_55405 setDisplayText + p 1 text + m ()Lnet/minecraft/class_2561; method_55407 getDisplayText + m ()Lnet/minecraft/class_267$class_12223; method_75750 toPacked + m (Z)V method_1125 setLocked + p 1 locked + m (I)V method_55401 setScore + p 1 score +c net/minecraft/class_267$class_12223 net/minecraft/scoreboard/ScoreboardScore$Packed + f Lcom/mojang/serialization/MapCodec; field_63813 CODEC + f I comp_5147 value + f Z comp_5148 locked + f Ljava/util/Optional; comp_5149 display + f Ljava/util/Optional; comp_5150 numberFormat + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75751 method_75751 + p 0 instance + m ()Ljava/util/Optional; comp_5149 display + m ()Ljava/util/Optional; comp_5150 numberFormat + m ()I comp_5147 value + m ()Z comp_5148 locked + m (IZLjava/util/Optional;Ljava/util/Optional;)V + p 1 value + p 2 locked + p 3 display + p 4 numberFormat +c net/minecraft/class_262 net/minecraft/util/shape/CroppedVoxelSet + f I field_1388 maxY + f I field_1389 maxX + f Lnet/minecraft/class_251; field_1393 parent + f I field_1390 minZ + f I field_1391 minY + f I field_1392 minX + f I field_1394 maxZ + m (Lnet/minecraft/class_2350$class_2351;I)I method_31944 clamp + p 2 value + p 1 axis + m (Lnet/minecraft/class_251;IIIIII)V + p 1 parent + p 2 minX + p 3 minY + p 4 minZ + p 5 maxX + p 6 maxY + p 7 maxZ +c net/minecraft/class_261 net/minecraft/util/shape/OffsetDoubleList + f D field_1386 offset + f Lit/unimi/dsi/fastutil/doubles/DoubleList; field_1387 oldList + m (Lit/unimi/dsi/fastutil/doubles/DoubleList;D)V + p 1 oldList + p 2 offset + m (I)D getDouble getDouble + p 1 position +c net/minecraft/class_266 net/minecraft/scoreboard/ScoreboardObjective + f Lnet/minecraft/class_274; field_1406 criterion + f Ljava/lang/String; field_1405 name + f Lnet/minecraft/class_9022; field_47528 numberFormat + f Z field_47527 displayAutoUpdate + f Lnet/minecraft/class_2561; field_24194 bracketedDisplayName + f Lnet/minecraft/class_269; field_1404 scoreboard + f Lnet/minecraft/class_274$class_275; field_1403 renderType + f Lnet/minecraft/class_2561; field_1402 displayName + m (Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_1119 method_1119 + p 1 style + m (Lnet/minecraft/class_2561;)V method_1121 setDisplayName + p 1 name + m (Lnet/minecraft/class_9022;)Lnet/minecraft/class_9022; method_55380 getNumberFormatOr + p 1 format + m ()Lnet/minecraft/class_9022; method_55384 getNumberFormat + m ()Z method_55383 shouldDisplayAutoUpdate + m ()Lnet/minecraft/class_274$class_275; method_1118 getRenderType + m (Z)V method_55381 setDisplayAutoUpdate + p 1 displayAutoUpdate + m ()Lnet/minecraft/class_269; method_1117 getScoreboard + m ()Ljava/lang/String; method_1113 getName + m ()Lnet/minecraft/class_2561; method_1120 toHoverableText + m ()Lnet/minecraft/class_274; method_1116 getCriterion + m (Lnet/minecraft/class_269;Ljava/lang/String;Lnet/minecraft/class_274;Lnet/minecraft/class_2561;Lnet/minecraft/class_274$class_275;ZLnet/minecraft/class_9022;)V + p 1 scoreboard + p 4 displayName + p 5 renderType + p 2 name + p 3 criterion + p 6 displayAutoUpdate + p 7 numberFormat + m (Lnet/minecraft/class_274$class_275;)V method_1115 setRenderType + p 1 renderType + m (Lnet/minecraft/class_9022;)V method_55382 setNumberFormat + p 1 numberFormat + m ()Lnet/minecraft/class_266$class_10742; method_67446 pack + m ()Lnet/minecraft/class_2561; method_27441 generateBracketedDisplayName + m ()Lnet/minecraft/class_2561; method_1114 getDisplayName +c net/minecraft/class_266$class_10742 net/minecraft/scoreboard/ScoreboardObjective$Packed + f Lcom/mojang/serialization/Codec; field_56481 CODEC + f Ljava/util/Optional; comp_3650 numberFormat + f Z comp_3649 displayAutoUpdate + f Lnet/minecraft/class_274$class_275; comp_3648 renderType + f Lnet/minecraft/class_274; comp_3646 criteria + f Lnet/minecraft/class_2561; comp_3647 displayName + f Ljava/lang/String; comp_3645 name + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67447 method_67447 + p 0 instance + m ()Lnet/minecraft/class_2561; comp_3647 displayName + m ()Ljava/lang/String; comp_3645 name + m ()Lnet/minecraft/class_274$class_275; comp_3648 renderType + m ()Lnet/minecraft/class_274; comp_3646 criteria + m ()Z comp_3649 displayAutoUpdate + m ()Ljava/util/Optional; comp_3650 numberFormat + m (Ljava/lang/String;Lnet/minecraft/class_274;Lnet/minecraft/class_2561;Lnet/minecraft/class_274$class_275;ZLjava/util/Optional;)V + p 1 name + p 2 criteria + p 3 displayName + p 4 renderType + p 5 displayAutoUpdate + p 6 numberFormat +c net/minecraft/class_265 net/minecraft/util/shape/VoxelShape + f [Lnet/minecraft/class_265; field_19318 shapeCache + f Lnet/minecraft/class_251; field_1401 voxels + m ()Lnet/minecraft/class_265; method_1097 simplify + m (Lnet/minecraft/class_2350$class_2351;Lnet/minecraft/class_238;D)D method_1108 calculateMaxDistance + p 2 box + p 1 axis + p 3 maxDist + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_265; method_20538 getFace + p 1 facing + m (Lnet/minecraft/class_2350$class_2351;D)I method_1100 getCoordIndex + p 1 axis + p 2 coord + m (Lnet/minecraft/class_2350$class_2351;)D method_1105 getMax + p 1 axis + m ()Ljava/util/List; method_1090 getBoundingBoxes + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_265; method_66507 offset + p 1 vec + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_265; method_64034 offset + p 1 vec3d + m (Lnet/minecraft/class_2335;Lnet/minecraft/class_238;D)D method_1103 calculateMaxDistance + p 1 axisCycle + p 2 box + p 3 maxDist + m (Lnet/minecraft/class_259$class_260;)V method_1089 forEachBox + p 1 consumer + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3965; method_1092 raycast + p 3 pos + p 1 start + p 2 end + m ()Lnet/minecraft/class_265; method_52620 asCuboid + m (Lnet/minecraft/class_259$class_260;)V method_1104 forEachEdge + p 1 consumer + m (Lnet/minecraft/class_243;Lorg/apache/commons/lang3/mutable/MutableObject;DDDDDD)V method_33662 method_33662 + p 2 minX + p 4 minY + p 10 maxY + p 12 maxZ + p 6 minZ + p 8 maxX + m ([Lnet/minecraft/class_265;DDDDDD)V method_1094 method_1094 + p 5 minZ + p 3 minY + p 1 minX + p 11 maxZ + p 9 maxY + p 7 maxX + m (Lnet/minecraft/class_2350$class_2351;DD)D method_1102 getEndingCoord + p 4 to + p 2 from + p 1 axis + m (Lnet/minecraft/class_2350$class_2351;)Z method_61896 isSquare + p 1 axis + m (Ljava/util/List;DDDDDD)V method_1111 method_1111 + p 1 x1 + p 3 y1 + p 9 y2 + p 11 z2 + p 5 z1 + p 7 x2 + m (Lnet/minecraft/class_2350$class_2351;)Lit/unimi/dsi/fastutil/doubles/DoubleList; method_1109 getPointPositions + p 1 axis + m (Lnet/minecraft/class_251;)V + p 1 voxels + m ()Z method_1110 isEmpty + m (Lnet/minecraft/class_2350$class_2351;I)D method_1099 getPointPosition + p 1 axis + p 2 index + m ()Lnet/minecraft/class_238; method_1107 getBoundingBox + m (Lnet/minecraft/class_2350$class_2351;)D method_1091 getMin + p 1 axis + m (Lnet/minecraft/class_259$class_260;IIIIII)V method_1106 method_1106 + p 3 minY + p 4 minZ + p 2 minX + p 7 maxZ + p 5 maxX + p 6 maxY + m (Lnet/minecraft/class_259$class_260;Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;IIIIII)V method_1112 method_1112 + p 8 maxY + p 9 maxZ + p 6 minZ + p 7 maxX + p 4 minX + p 5 minY + m (DDD)Lnet/minecraft/class_265; method_1096 offset + p 5 z + p 3 y + p 1 x + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_265; method_1098 getUncachedFace + p 1 facing + m ()Z method_61897 isCube + m (Lnet/minecraft/class_2350$class_2351;DD)D method_35593 getStartingCoord + p 4 to + p 1 axis + p 2 from + m (Lnet/minecraft/class_243;)Ljava/util/Optional; method_33661 getClosestPointTo + c {@return the closest point in the shape to {@code target}} + p 1 target +c net/minecraft/class_263 net/minecraft/util/shape/SlicedVoxelShape + f Lit/unimi/dsi/fastutil/doubles/DoubleList; field_1395 POINTS + f Lnet/minecraft/class_2350$class_2351; field_1396 axis + f Lnet/minecraft/class_265; field_1397 shape + m (Lnet/minecraft/class_265;Lnet/minecraft/class_2350$class_2351;I)V + p 3 sliceWidth + p 2 axis + p 1 shape + m (Lnet/minecraft/class_251;Lnet/minecraft/class_2350$class_2351;I)Lnet/minecraft/class_251; method_1088 createVoxelSet + p 2 sliceWidth + p 0 voxelSet + p 1 axis +c net/minecraft/class_279 net/minecraft/client/gl/PostEffectProcessor + f Ljava/util/Set; field_53107 externalTargets + f Lnet/minecraft/class_11278; field_60120 projectionMatrix + f Ljava/util/Map; field_53106 internalTargets + f Ljava/util/List; field_1497 passes + f Lnet/minecraft/class_2960; field_53104 MAIN + f Ljava/util/Map; field_60119 framebuffers + m (Ljava/lang/String;)Ljava/lang/String; method_62239 method_62239 + p 0 name + m (Ljava/util/List;Ljava/util/Map;Ljava/util/Set;Lnet/minecraft/class_11278;)V + p 4 projectionMatrix + p 3 externalTargets + p 2 internalTargets + p 1 passes + m (Lnet/minecraft/class_1060;Lnet/minecraft/class_9962$class_9967;Lnet/minecraft/class_2960;)Lnet/minecraft/class_283; method_62233 parsePass + p 2 id + p 1 pass + p 0 textureManager + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_9923;)Lnet/minecraft/class_276; method_71124 createFramebuffer + p 1 id + p 2 factory + m (Lnet/minecraft/class_9962;Lnet/minecraft/class_2960;)Z method_62238 method_62238 + p 1 target + m (Lnet/minecraft/class_276;Lnet/minecraft/class_9922;)V method_1258 render + p 2 objectAllocator + p 1 framebuffer + m (Lnet/minecraft/class_9962;Lnet/minecraft/class_1060;Ljava/util/Set;Lnet/minecraft/class_2960;Lnet/minecraft/class_11278;)Lnet/minecraft/class_279; method_1256 parseEffect + p 3 id + p 4 projectionMatrix + p 1 textureManager + p 2 availableExternalTargets + p 0 pipeline + m (Lnet/minecraft/class_9909;IILnet/minecraft/class_279$class_9961;)V method_62234 render + p 3 textureHeight + p 4 framebufferSet + p 1 builder + p 2 textureWidth +c net/minecraft/class_279$class_9961 net/minecraft/client/gl/PostEffectProcessor$FramebufferSet + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_9925; method_62240 getOrThrow + p 1 id + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_9925;)V method_62225 set + p 2 framebuffer + p 1 id + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_9925;)Lnet/minecraft/class_279$class_9961; method_62241 singleton + p 0 id + p 1 framebuffer + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_9925; method_62224 get + p 1 id +c net/minecraft/class_279$class_9961$1 net/minecraft/client/gl/PostEffectProcessor$FramebufferSet$1 + f Lnet/minecraft/class_9925; field_53110 framebuffer +c net/minecraft/class_273 net/minecraft/scoreboard/ScoreboardState + f Lnet/minecraft/class_273$class_10745; field_63439 packedState + f Lnet/minecraft/class_10741; field_63438 TYPE + m (Lnet/minecraft/class_273$class_10745;)V + p 1 packedState + m ()Lnet/minecraft/class_273$class_10745; method_75284 getPackedState + m (Lnet/minecraft/class_273$class_10745;)V method_75283 set + p 1 packed +c net/minecraft/class_273$class_10745 net/minecraft/scoreboard/ScoreboardState$Packed + f Lnet/minecraft/class_273$class_10745; field_63440 EMPTY + f Lcom/mojang/serialization/Codec; field_56485 CODEC + f Ljava/util/Map; comp_3667 displaySlots + f Ljava/util/List; comp_3668 teams + f Ljava/util/List; comp_3666 scores + f Ljava/util/List; comp_3665 objectives + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67463 method_67463 + p 0 instance + m ()Ljava/util/Map; comp_3667 displaySlots + m ()Ljava/util/List; comp_3666 scores + m ()Ljava/util/List; comp_3668 teams + m ()Ljava/util/List; comp_3665 objectives + m (Ljava/util/List;Ljava/util/List;Ljava/util/Map;Ljava/util/List;)V + p 1 objectives + p 2 scores + p 3 displaySlots + p 4 teams +c net/minecraft/class_270 net/minecraft/scoreboard/AbstractTeam + m ()Lnet/minecraft/class_270$class_271; method_1203 getCollisionRule + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_5250; method_1198 decorateName + c Decorates the name of an entity with the prefix, suffix and color of this team. + p 1 name + c the name to be decorated + m ()Lnet/minecraft/class_124; method_1202 getColor + m ()Z method_1199 shouldShowFriendlyInvisibles + m ()Lnet/minecraft/class_270$class_272; method_1200 getDeathMessageVisibilityRule + m ()Ljava/lang/String; method_1197 getName + m ()Lnet/minecraft/class_270$class_272; method_1201 getNameTagVisibilityRule + m ()Ljava/util/Collection; method_1204 getPlayerList + m (Lnet/minecraft/class_270;)Z method_1206 isEqual + p 1 team + m ()Z method_1205 isFriendlyFireAllowed +c net/minecraft/class_270$class_272 net/minecraft/scoreboard/AbstractTeam$VisibilityRule + f Lcom/mojang/serialization/Codec; field_56489 CODEC + f I field_1441 index + f Ljava/util/function/IntFunction; field_56491 INDEX_MAPPER + f Ljava/lang/String; field_1445 name + f Lnet/minecraft/class_9139; field_56490 PACKET_CODEC + f Lnet/minecraft/class_270$class_272; field_1446 HIDE_FOR_OWN_TEAM + f Lnet/minecraft/class_270$class_272; field_1444 HIDE_FOR_OTHER_TEAMS + f Lnet/minecraft/class_270$class_272; field_1443 NEVER + f Lnet/minecraft/class_270$class_272; field_1442 ALWAYS + m (Lnet/minecraft/class_270$class_272;)I method_67465 method_67465 + p 0 visibilityRule + m ()Lnet/minecraft/class_2561; method_1214 getDisplayName + m (Ljava/lang/String;ILjava/lang/String;I)V + p 4 index + p 3 name + m (Lnet/minecraft/class_270$class_272;)I method_1212 method_1212 + p 0 visibilityRule +c net/minecraft/class_270$class_271 net/minecraft/scoreboard/AbstractTeam$CollisionRule + f Ljava/lang/String; field_1436 name + f I field_1433 index + f Lcom/mojang/serialization/Codec; field_56486 CODEC + f Lnet/minecraft/class_9139; field_56487 PACKET_CODEC + f Ljava/util/function/IntFunction; field_56488 INDEX_MAPPER + f Lnet/minecraft/class_270$class_271; field_1440 PUSH_OWN_TEAM + f Lnet/minecraft/class_270$class_271; field_1437 ALWAYS + f Lnet/minecraft/class_270$class_271; field_1435 NEVER + f Lnet/minecraft/class_270$class_271; field_1434 PUSH_OTHER_TEAMS + m (Lnet/minecraft/class_270$class_271;)I method_67464 method_67464 + p 0 collisionRule + m (Lnet/minecraft/class_270$class_271;)I method_1207 method_1207 + p 0 collisionRule + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 name + p 4 index + m ()Lnet/minecraft/class_2561; method_1209 getDisplayName +c net/minecraft/class_276 net/minecraft/client/gl/Framebuffer + f I field_56737 index + f Lcom/mojang/blaze3d/textures/GpuTextureView; field_60567 colorAttachmentView + f Lcom/mojang/blaze3d/textures/GpuTextureView; field_60568 depthAttachmentView + f Lcom/mojang/blaze3d/textures/GpuTexture; field_56739 depthAttachment + f Z field_1478 useDepthAttachment + f Ljava/lang/String; field_56738 name + f I field_1482 textureWidth + f I field_1481 textureHeight + f Lcom/mojang/blaze3d/textures/GpuTexture; field_1475 colorAttachment + m ()Lcom/mojang/blaze3d/textures/GpuTexture; method_30278 getDepthAttachment + m ()Lcom/mojang/blaze3d/textures/GpuTexture; method_30277 getColorAttachment + m ()Lcom/mojang/blaze3d/textures/GpuTextureView; method_71639 getColorAttachmentView + m (Lnet/minecraft/class_276;)V method_29329 copyDepthFrom + p 1 framebuffer + m (II)V method_1234 resize + p 1 width + p 2 height + m (Ljava/lang/String;Z)V + p 1 name + p 2 useDepthAttachment + m (II)V method_1231 initFbo + p 1 width + p 2 height + m ()Lcom/mojang/blaze3d/textures/GpuTextureView; method_71640 getDepthAttachmentView + m (Lcom/mojang/blaze3d/textures/GpuTextureView;)V method_68445 drawBlit + p 1 texture + m ()V method_1237 blitToScreen + m ()V method_1238 delete +c net/minecraft/class_274 net/minecraft/scoreboard/ScoreboardCriterion + f Z field_1461 readOnly + f Lnet/minecraft/class_274$class_275; field_1467 defaultRenderType + f Lcom/mojang/serialization/Codec; field_56492 CODEC + f [Lnet/minecraft/class_274; field_1466 TEAM_KILLS + f Ljava/lang/String; field_1454 name + f [Lnet/minecraft/class_274; field_1458 KILLED_BY_TEAMS + f Ljava/util/Map; field_1455 CRITERIA + c A map of all scoreboard criteria by their names.\nUpdated automatically in the constructor. + f Ljava/util/Map; field_33939 SIMPLE_CRITERIA + c A map of all scoreboard criteria that can be identified with a single\nkeyword (as opposed to combined words) by their names.\nUpdated automatically in {@link #create(String, boolean, ScoreboardCriterion.RenderType)}. + f Lnet/minecraft/class_274; field_1468 DUMMY + f Lnet/minecraft/class_274; field_1465 LEVEL + f Lnet/minecraft/class_274; field_1464 FOOD + f Lnet/minecraft/class_274; field_1463 PLAYER_KILL_COUNT + f Lnet/minecraft/class_274; field_1462 TRIGGER + f Lnet/minecraft/class_274; field_1460 XP + f Lnet/minecraft/class_274; field_1456 DEATH_COUNT + f Lnet/minecraft/class_274; field_1453 HEALTH + f Lnet/minecraft/class_274; field_1452 ARMOR + f Lnet/minecraft/class_274; field_1459 AIR + f Lnet/minecraft/class_274; field_1457 TOTAL_KILL_COUNT + m ()Ljava/lang/String; method_1225 getName + m (Ljava/lang/String;)Ljava/util/Optional; method_1224 getOrCreateStatCriterion + p 0 name + m ()Ljava/util/Set; method_37271 getAllSimpleCriteria + m (Ljava/lang/String;ZLnet/minecraft/class_274$class_275;)V + p 2 readOnly + p 3 defaultRenderType + p 1 name + m ()Z method_1226 isReadOnly + m (Ljava/lang/String;)V + p 1 name + m ()Lnet/minecraft/class_274$class_275; method_1227 getDefaultRenderType + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_67466 method_67466 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/class_274; method_37270 create + p 0 name + m (Ljava/lang/String;ZLnet/minecraft/class_274$class_275;)Lnet/minecraft/class_274; method_37269 create + p 0 name + p 1 readOnly + p 2 defaultRenderType + m (Lnet/minecraft/class_3448;Lnet/minecraft/class_2960;)Ljava/util/Optional; method_1223 getOrCreateStatCriterion + p 1 id + p 0 statType + m (Ljava/lang/String;ILnet/minecraft/class_3448;)Ljava/util/Optional; method_17948 method_17948 + p 2 type +c net/minecraft/class_274$class_275 net/minecraft/scoreboard/ScoreboardCriterion$RenderType + f Lnet/minecraft/class_3542$class_7292; field_41683 CODEC + f Ljava/lang/String; field_1469 name + f Lnet/minecraft/class_274$class_275; field_1471 HEARTS + f Lnet/minecraft/class_274$class_275; field_1472 INTEGER + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m (Ljava/lang/String;)Lnet/minecraft/class_274$class_275; method_1229 getType + p 0 name + m ()Ljava/lang/String; method_1228 getName +c net/minecraft/class_4295 net/minecraft/entity/ai/brain/task/LoseJobOnSiteLossTask + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_47038 method_47038 + p 1 entity + p 0 world + p 2 time + m ()Lnet/minecraft/class_7893; method_47037 create + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47039 method_47039 + p 0 context + m (Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47040 method_47040 + p 0 jobSite +c net/minecraft/class_4294 net/minecraft/datafixer/fix/OminousBannerItemRenameFix + m (Ljava/lang/String;)Z method_44194 method_44194 + p 0 itemId + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66116 method_66116 + p 0 name + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66114 fixBannerNbt + p 1 nbt + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66115 method_66115 + p 0 display + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_4296 net/minecraft/world/tick/SimpleTickScheduler + f Ljava/util/Set; field_35541 scheduledTicksSet + f Ljava/util/List; field_19275 scheduledTicks + m (Lnet/minecraft/class_6759;)V method_39397 scheduleTick + p 1 tick + m ()Ljava/util/List; method_39399 getTicks + m (Ljava/util/List;)Lnet/minecraft/class_4296; method_39398 tick + p 0 ticks +c net/minecraft/class_201 net/minecraft/loot/condition/SurvivesExplosionLootCondition + f Lnet/minecraft/class_201; field_1280 INSTANCE + f Lcom/mojang/serialization/MapCodec; field_45864 CODEC + m (Lnet/minecraft/class_47;)Z method_869 test + m (Ljava/lang/Object;)Z test test + p 1 context + m ()Lnet/minecraft/class_5341$class_210; method_871 builder +c net/minecraft/class_4291 net/minecraft/entity/ai/goal/WanderAroundPointOfInterestGoal + f I field_30219 HORIZONTAL_RANGE + f I field_30220 VERTICAL_RANGE + m (Lnet/minecraft/class_1314;DZ)V + p 2 speed + p 1 entity + p 4 canDespawn +c net/minecraft/class_4290 net/minecraft/entity/ai/brain/task/GoToHomeTask + f I field_30164 MAX_DISTANCE + f I field_30161 POI_EXPIRY + c Represents the number of ticks ({@value}) that this task will\nremember a point of interest after starting to move towards it. + f I field_30163 RUN_TIME + f I field_30162 MAX_TRIES + m (Lorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2LongMap;FLnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47053 method_47053 + p 4 home + p 3 walkTarget + m (Lit/unimi/dsi/fastutil/longs/Long2LongMap;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableLong;Lnet/minecraft/class_2338;)Z method_47050 method_47050 + p 3 pos + m (Lorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2LongMap;Lnet/minecraft/class_7906;FLnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_47054 method_47054 + p 6 time + p 5 entity + p 4 world + m (Lnet/minecraft/class_6880;)Z method_47049 method_47049 + p 0 poiType + m (Lnet/minecraft/class_6880;)Z method_47055 method_47055 + p 0 poiType + m (Lorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2LongMap$Entry;)Z method_47051 method_47051 + p 1 entry + m (Lorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2LongMap;FLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47052 method_47052 + p 0 context + m (F)Lnet/minecraft/class_7893; method_47048 create + p 0 speed +c net/minecraft/class_207 net/minecraft/loot/condition/InvertedLootCondition + f Lcom/mojang/serialization/MapCodec; field_45865 CODEC + f Lnet/minecraft/class_5341; comp_1873 term + m (Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_5341$class_210; method_889 builder + p 0 term + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lnet/minecraft/class_5341;)V + p 1 term + m (Lnet/minecraft/class_47;)Z method_888 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53414 method_53414 + p 0 instance + m ()Lnet/minecraft/class_5341; comp_1873 term +c net/minecraft/class_205 net/minecraft/loot/condition/LocationCheckLootCondition + f Lcom/mojang/serialization/MapCodec; field_45866 CODEC + f Lcom/mojang/serialization/MapCodec; field_45867 OFFSET_CODEC + f Lnet/minecraft/class_2338; comp_1875 offset + f Ljava/util/Optional; comp_1874 predicate + m (Lnet/minecraft/class_47;)Z method_881 test + m (Ljava/util/Optional;Lnet/minecraft/class_2338;)V + p 2 offset + p 1 predicate + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lnet/minecraft/class_2090$class_2091;Lnet/minecraft/class_2338;)Lnet/minecraft/class_5341$class_210; method_30151 builder + p 0 predicateBuilder + p 1 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53416 method_53416 + p 0 instance + m (Lnet/minecraft/class_2090$class_2091;)Lnet/minecraft/class_5341$class_210; method_884 builder + p 0 predicateBuilder + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53415 method_53415 + p 0 instance + m ()Ljava/util/Optional; comp_1874 predicate + m ()Lnet/minecraft/class_2338; comp_1875 offset +c net/minecraft/class_4299 net/minecraft/datafixer/fix/OminousBannerBlockEntityRenameFix +c net/minecraft/class_11482 net/minecraft/client/gui/screen/dialog/DialogBodyHandler + m (Lnet/minecraft/class_11473;Lnet/minecraft/class_11432;)Lnet/minecraft/class_8021; method_71894 createWidget + p 1 dialogScreen + p 2 body +c net/minecraft/class_10151 net/minecraft/client/gl/ShaderLoader + f Ljava/lang/String; field_53934 SHADERS_PATH + f Ljava/lang/String; field_53935 INCLUDE_PATH + f Lnet/minecraft/class_7654; field_53939 POST_EFFECT_FINDER + f Lnet/minecraft/class_10151$class_10170; field_54020 cache + f Lnet/minecraft/class_11278; field_60129 projectionMatrix + f Lnet/minecraft/class_1060; field_53940 textureManager + f Lorg/slf4j/Logger; field_53937 LOGGER + f Ljava/util/function/Consumer; field_54019 onError + m (Lnet/minecraft/class_2960;Lcom/mojang/blaze3d/shaders/ShaderType;)Ljava/lang/String; method_68496 getSource + p 2 type + p 1 id + m (Lnet/minecraft/class_1060;Ljava/util/function/Consumer;)V + p 1 textureManager + p 2 onError + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3298;Lcom/google/common/collect/ImmutableMap$Builder;)V method_62953 loadPostEffect + p 2 builder + p 1 resource + p 0 id + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)Lnet/minecraft/class_10151$class_10153; method_62942 prepare + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3298;Lcom/mojang/blaze3d/shaders/ShaderType;Ljava/util/Map;Lcom/google/common/collect/ImmutableMap$Builder;)V method_62939 loadShaderSource + p 4 builder + p 3 allResources + p 2 type + p 1 resource + p 0 id + m (Lnet/minecraft/class_2960;)Z method_62952 isShaderSource + p 0 id + m (Ljava/lang/Exception;)V method_65232 handleError + p 1 exception + m (Lnet/minecraft/class_10151$class_10153;Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)V method_62945 apply + m (Lnet/minecraft/class_2960;Ljava/util/Set;)Lnet/minecraft/class_279; method_62941 loadPostEffect + p 1 id + p 2 availableExternalTargets + m (Ljava/util/Map;Lnet/minecraft/class_2960;)Lnet/minecraft/class_5913; method_62950 createImportProcessor + p 0 allResources + p 1 id + m (Lnet/minecraft/class_2960;)Ljava/lang/String; method_68497 method_68497 + p 0 id +c net/minecraft/class_10151$class_10170 net/minecraft/client/gl/ShaderLoader$Cache + f Z field_55152 errorHandled + f Ljava/util/Map; field_54025 postEffectProcessors + f Lnet/minecraft/class_10151$class_10153; field_54022 definitions + m (Lnet/minecraft/class_2960;Lcom/mojang/blaze3d/shaders/ShaderType;)Ljava/lang/String; method_68498 getSource + p 2 type + p 1 id + m (Lnet/minecraft/class_2960;Ljava/util/Set;)Lnet/minecraft/class_279; method_63523 getOrLoadProcessor + p 2 availableExternalTargets + p 1 id + m (Ljava/util/Optional;)V method_71129 method_71129 + p 0 processor + m (Lnet/minecraft/class_2960;Ljava/util/Set;)Lnet/minecraft/class_279; method_63527 loadProcessor + p 1 id + p 2 availableExternalTargets + m (Lnet/minecraft/class_10151;Lnet/minecraft/class_10151$class_10153;)V + p 2 definitions +c net/minecraft/class_10151$class_10152 net/minecraft/client/gl/ShaderLoader$LoadException + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/class_10151$class_10155 net/minecraft/client/gl/ShaderLoader$ShaderSourceKey + f Lcom/mojang/blaze3d/shaders/ShaderType; comp_3112 type + f Lnet/minecraft/class_2960; comp_3111 id + m ()Lcom/mojang/blaze3d/shaders/ShaderType; comp_3112 type + m ()Lnet/minecraft/class_2960; comp_3111 id + m (Lnet/minecraft/class_2960;Lcom/mojang/blaze3d/shaders/ShaderType;)V + p 1 id + p 2 type +c net/minecraft/class_10151$class_10153 net/minecraft/client/gl/ShaderLoader$Definitions + f Lnet/minecraft/class_10151$class_10153; field_53948 EMPTY + f Ljava/util/Map; comp_3106 shaderSources + f Ljava/util/Map; comp_3107 postChains + m ()Ljava/util/Map; comp_3107 postChains + m ()Ljava/util/Map; comp_3106 shaderSources + m (Ljava/util/Map;Ljava/util/Map;)V + p 1 shaderSources + p 2 postChains +c net/minecraft/class_10151$1 net/minecraft/client/gl/ShaderLoader$1 + f Ljava/util/Set; field_53947 processed + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_62957 method_62957 + p 1 path +c net/minecraft/class_11480 net/minecraft/client/gui/screen/dialog/SimpleDialogScreen + m (Lnet/minecraft/class_8132;Lnet/minecraft/class_11529;Lnet/minecraft/class_11430;Lnet/minecraft/class_11513;)V method_71890 initHeaderAndFooter + m (Lnet/minecraft/class_437;Lnet/minecraft/class_11430;Lnet/minecraft/class_11513;)V + p 3 networkAccess + p 1 parent + p 2 dialog +c net/minecraft/class_11486 net/minecraft/unused/packageinfo/PackageInfo11486 +c net/minecraft/class_11483 net/minecraft/client/gui/screen/dialog/DialogBodyHandlers + f Ljava/util/Map; field_60775 DIALOG_BODY_HANDLERS + f Lorg/slf4j/Logger; field_60774 LOGGER + m (Lnet/minecraft/class_11473;Lnet/minecraft/class_11432;)Lnet/minecraft/class_8021; method_71898 createWidget + p 1 dialogBody + p 0 dialogScreen + m (Lnet/minecraft/class_11432;)Lnet/minecraft/class_11482; method_71896 getHandler + p 0 dialogBody + m (Lnet/minecraft/class_11473;Lnet/minecraft/class_2583;)V method_72146 runActionFromStyle + p 0 dialogScreen + p 1 style + m ()V method_71895 bootstrap + m (Lcom/mojang/serialization/MapCodec;Lnet/minecraft/class_11482;)V method_71897 register + p 0 dialogBodyCodec + p 1 dialogBodyHandler +c net/minecraft/class_11483$class_11485 net/minecraft/client/gui/screen/dialog/DialogBodyHandlers$PlainMessageDialogBodyHandler + m (Lnet/minecraft/class_11473;Lnet/minecraft/class_2583;)V method_72148 method_72148 + p 1 style + m (Lnet/minecraft/class_11473;Lnet/minecraft/class_11435;)Lnet/minecraft/class_8021; method_71900 createWidget +c net/minecraft/class_11483$class_11484 net/minecraft/client/gui/screen/dialog/DialogBodyHandlers$ItemDialogBodyHandler + m (Lnet/minecraft/class_11473;Lnet/minecraft/class_2583;)V method_72147 method_72147 + p 1 style + m (Lnet/minecraft/class_11473;Lnet/minecraft/class_11434;)Lnet/minecraft/class_8021; method_71899 createWidget +c net/minecraft/class_11489 net/minecraft/client/gui/screen/dialog/InputControlHandlers + f Ljava/util/Map; field_60777 INPUT_CONTROL_HANDLERS + f Lorg/slf4j/Logger; field_60776 LOGGER + m (Lcom/mojang/serialization/MapCodec;Lnet/minecraft/class_11487;)V method_71904 register + p 0 inputControlCodec + p 1 inputControlHandler + m ()V method_71901 bootstrap + m (Lnet/minecraft/class_11438;)Lnet/minecraft/class_11487; method_71902 getHandler + p 0 inputControl + m (Lnet/minecraft/class_11438;Lnet/minecraft/class_437;Lnet/minecraft/class_11487$class_11488;)V method_71903 addControl + p 0 inputControl + p 1 screen + p 2 output +c net/minecraft/class_11489$class_11491 net/minecraft/client/gui/screen/dialog/InputControlHandlers$NumberRangeInputControlHandler + m (Lnet/minecraft/class_11440;Lnet/minecraft/class_437;Lnet/minecraft/class_11487$class_11488;)V method_71907 addControl +c net/minecraft/class_11489$class_11491$class_11492 net/minecraft/client/gui/screen/dialog/InputControlHandlers$NumberRangeInputControlHandler$RangeSliderWidget + f Lnet/minecraft/class_11440; field_60778 inputControl + m ()Ljava/lang/String; method_71911 getLabel + m (Lnet/minecraft/class_11440;D)F method_72149 getActualValue + p 0 inputControl + p 1 sliderProgress + m (Lnet/minecraft/class_11440;D)V + p 1 inputControl + p 2 value + m (Lnet/minecraft/class_11440;D)Ljava/lang/String; method_71909 getLabel + p 1 sliderProgress + p 0 inputControl + m (F)Ljava/lang/String; method_71908 valueToString + p 0 value + m ()F method_72150 getActualValue + m (Lnet/minecraft/class_11440;D)Lnet/minecraft/class_2561; method_71910 getFormattedLabel + p 0 inputControl + p 1 sliderProgress +c net/minecraft/class_11489$class_11490 net/minecraft/client/gui/screen/dialog/InputControlHandlers$BooleanInputControlHandler + m (Lnet/minecraft/class_11437;Lnet/minecraft/class_437;Lnet/minecraft/class_11487$class_11488;)V method_71905 addControl +c net/minecraft/class_11489$class_11493 net/minecraft/client/gui/screen/dialog/InputControlHandlers$SimpleOptionInputControlHandler + m (Lnet/minecraft/class_11442;Lnet/minecraft/class_437;Lnet/minecraft/class_11487$class_11488;)V method_71912 addControl +c net/minecraft/class_11489$class_11494 net/minecraft/client/gui/screen/dialog/InputControlHandlers$TextInputControlHandler + m (Lnet/minecraft/class_11444;Lnet/minecraft/class_437;Lnet/minecraft/class_11487$class_11488;)V method_71914 addControl +c net/minecraft/class_11487 net/minecraft/client/gui/screen/dialog/InputControlHandler + m (Lnet/minecraft/class_11438;Lnet/minecraft/class_437;Lnet/minecraft/class_11487$class_11488;)V addControl addControl + p 2 screen + p 1 inputControl + p 3 output +c net/minecraft/class_11487$class_11488 net/minecraft/client/gui/screen/dialog/InputControlHandler$Output + m (Lnet/minecraft/class_8021;Lnet/minecraft/class_11521$class_11522;)V accept accept + p 1 widget + p 2 valueGetter +c net/minecraft/class_215 net/minecraft/loot/condition/EntityPropertiesLootCondition + f Lcom/mojang/serialization/MapCodec; field_45871 CODEC + f Lnet/minecraft/class_47$class_50; comp_1880 entity + f Ljava/util/Optional; comp_1879 predicate + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lnet/minecraft/class_47;)Z method_914 test + m ()Lnet/minecraft/class_47$class_50; comp_1880 entity + m (Lnet/minecraft/class_47$class_50;Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_5341$class_210; method_917 builder + p 1 predicateBuilder + p 0 entity + m (Lnet/minecraft/class_47$class_50;)Lnet/minecraft/class_5341$class_210; method_15972 create + p 0 entity + m (Lnet/minecraft/class_47$class_50;Lnet/minecraft/class_2048;)Lnet/minecraft/class_5341$class_210; method_27865 builder + p 0 entity + p 1 predicate + m (Ljava/util/Optional;Lnet/minecraft/class_47$class_50;)V + p 2 entity + p 1 predicate + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53423 method_53423 + p 0 instance + m ()Ljava/util/Optional; comp_1879 predicate +c net/minecraft/class_212 net/minecraft/loot/condition/BlockStatePropertyLootCondition + f Lcom/mojang/serialization/MapCodec; field_45868 CODEC + f Ljava/util/Optional; comp_1877 properties + f Lnet/minecraft/class_6880; comp_1876 block + m (Lnet/minecraft/class_212;Lnet/minecraft/class_4559;)Ljava/util/Optional; method_53419 method_53419 + p 1 predicate + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53417 method_53417 + p 0 instance + m (Lnet/minecraft/class_212;)Lcom/mojang/serialization/DataResult; method_53418 validateHasProperties + p 0 condition + m (Lnet/minecraft/class_47;)Z method_899 test + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_212$class_213; method_900 builder + p 0 block + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lnet/minecraft/class_212;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_53420 method_53420 + p 1 property + m ()Ljava/util/Optional; comp_1877 properties + m ()Lnet/minecraft/class_6880; comp_1876 block + m (Lnet/minecraft/class_6880;Ljava/util/Optional;)V + p 1 block + p 2 properties +c net/minecraft/class_212$class_213 net/minecraft/loot/condition/BlockStatePropertyLootCondition$Builder + f Lnet/minecraft/class_6880; field_1290 block + f Ljava/util/Optional; field_1291 propertyValues + m (Lnet/minecraft/class_4559$class_4560;)Lnet/minecraft/class_212$class_213; method_22584 properties + p 1 builder + m (Lnet/minecraft/class_2248;)V + p 1 block +c net/minecraft/class_219 net/minecraft/loot/condition/RandomChanceLootCondition + f Lcom/mojang/serialization/MapCodec; field_45873 CODEC + f Lnet/minecraft/class_5658; comp_2781 chance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53424 method_53424 + p 0 instance + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lnet/minecraft/class_5658;)Lnet/minecraft/class_5341$class_210; method_60310 builder + p 0 chance + m (Lnet/minecraft/class_47;)Z method_934 test + m (F)Lnet/minecraft/class_5341$class_210; method_932 builder + p 0 chance + m ()Lnet/minecraft/class_5658; comp_2781 chance + m (Lnet/minecraft/class_5658;)V + p 1 chance +c net/minecraft/class_217 net/minecraft/loot/condition/LootConditionTypes + f Lnet/minecraft/class_5342; field_25235 INVERTED + f Lnet/minecraft/class_5342; field_25237 RANDOM_CHANCE + f Lnet/minecraft/class_5342; field_25250 TIME_CHECK + f Lnet/minecraft/class_5342; field_25240 KILLED_BY_PLAYER + f Lnet/minecraft/class_5342; field_25242 BLOCK_STATE_PROPERTY + f Lnet/minecraft/class_5342; field_25241 ENTITY_SCORES + f Lnet/minecraft/class_5342; field_25244 TABLE_BONUS + f Lnet/minecraft/class_5342; field_25243 MATCH_TOOL + f Lnet/minecraft/class_5342; field_25246 DAMAGE_SOURCE_PROPERTIES + f Lnet/minecraft/class_5342; field_25245 SURVIVES_EXPLOSION + f Lnet/minecraft/class_5342; field_25248 WEATHER_CHECK + f Lnet/minecraft/class_5342; field_25247 LOCATION_CHECK + f Lnet/minecraft/class_5342; field_25249 REFERENCE + f Lnet/minecraft/class_5342; field_25239 ENTITY_PROPERTIES + f Lnet/minecraft/class_5342; field_44789 ANY_OF + f Lnet/minecraft/class_5342; field_44790 ALL_OF + f Lnet/minecraft/class_5342; field_51812 ENCHANTMENT_ACTIVE_CHECK + f Lnet/minecraft/class_5342; field_51811 RANDOM_CHANCE_WITH_ENCHANTED_BONUS + f Lnet/minecraft/class_5342; field_27911 VALUE_CHECK + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_5342; method_29327 register + p 0 id + p 1 codec +c net/minecraft/class_11471 net/minecraft/client/gui/screen/dialog/ColumnsDialogScreen + m (Lnet/minecraft/class_11529;Lnet/minecraft/class_11519;)Lnet/minecraft/class_4185; method_72133 method_72133 + p 1 actionButtonData + m (Lnet/minecraft/class_8132;Lnet/minecraft/class_11529;Lnet/minecraft/class_11519;)V method_72132 method_72132 + p 2 actionButtonData + m (Lnet/minecraft/class_11414;Lnet/minecraft/class_11513;)Ljava/util/stream/Stream; method_71849 streamActionButtonData + p 2 networkAccess + p 1 dialog + m (Lnet/minecraft/class_8667;Lnet/minecraft/class_11529;Lnet/minecraft/class_11414;Lnet/minecraft/class_11513;)V method_71852 initBody + m (Lnet/minecraft/class_437;Lnet/minecraft/class_11414;Lnet/minecraft/class_11513;)V + p 3 networkAccess + p 2 dialog + p 1 parent + m (Lnet/minecraft/class_8132;Lnet/minecraft/class_11529;Lnet/minecraft/class_11414;Lnet/minecraft/class_11513;)V method_71850 initHeaderAndFooter +c net/minecraft/class_10140 net/minecraft/block/ExperimentalMinecartShapeContext + f Lnet/minecraft/class_2338; field_53824 belowPos + f Lnet/minecraft/class_2338; field_53825 ascendingPos + m (Lnet/minecraft/class_1688;)V method_62879 setIgnoredPositions + p 1 minecart + m (Lnet/minecraft/class_1688;Z)V + p 1 minecart + p 2 collidesWithFluid +c net/minecraft/class_10143 net/minecraft/client/render/chunk/Octree + f Lnet/minecraft/class_10143$class_10145; field_53904 root + f Lnet/minecraft/class_2338; field_53905 centerPos + m (Lnet/minecraft/class_4076;III)V + p 2 viewDistance + p 3 sizeY + p 1 sectionPos + p 4 bottomY + m (Lnet/minecraft/class_846$class_851;)Z method_62912 add + p 1 chunk + m (DDDDDDI)Z method_64061 isCenterWithin + p 3 minY + p 1 minX + p 7 maxX + p 5 minZ + p 11 maxZ + p 9 maxY + p 13 margin + m (Lnet/minecraft/class_10143$class_10148;Lnet/minecraft/class_4604;I)V method_62911 visit + p 1 visitor + p 3 margin + p 2 frustum +c net/minecraft/class_10143$class_10146 net/minecraft/client/render/chunk/Octree$Leaf + f Lnet/minecraft/class_846$class_851; field_54166 chunk + m (Lnet/minecraft/class_10143;Lnet/minecraft/class_846$class_851;)V + p 2 chunk +c net/minecraft/class_10143$class_10145 net/minecraft/client/render/chunk/Octree$Branch + f Lnet/minecraft/class_3341; field_53918 box + f I field_53919 centerX + f Z field_53923 easternSide + f Z field_53925 southernSide + f Z field_53924 topSide + f Lnet/minecraft/class_10143$class_10144; field_53922 axisOrder + f I field_53920 centerY + f [Lnet/minecraft/class_10143$class_10147; field_53917 children + f I field_53921 centerZ + m (Lnet/minecraft/class_846$class_851;)Z method_62918 add + p 1 chunk + m (ZZZ)Lnet/minecraft/class_3341; method_62919 getChildBox + p 1 western + p 3 northern + p 2 bottom + m ()Z method_62921 areChildrenLeaves + m (Lnet/minecraft/class_10143$class_10144;ZZZ)I method_62916 getIndex + p 2 sameRelativeSideY + c whether the side of the chunk relative to this branch's center\nequals the side of the branch relative to the player, on the Y axis + p 1 sameRelativeSideX + c whether the side of the chunk relative to this branch's center\nequals the side of the branch relative to the player, on the X axis + p 3 sameRelativeSideZ + c whether the side of the chunk relative to this branch's center\nequals the side of the branch relative to the player, on the Z axis + p 0 axisOrder + m (Lnet/minecraft/class_10143;Lnet/minecraft/class_3341;)V + p 2 box +c net/minecraft/class_10143$class_10144 net/minecraft/client/render/chunk/Octree$AxisOrder + f I field_53912 x + f I field_53914 z + f I field_53913 y + f Lnet/minecraft/class_10143$class_10144; field_53909 YZX + f Lnet/minecraft/class_10143$class_10144; field_53908 YXZ + f Lnet/minecraft/class_10143$class_10144; field_53907 XZY + f Lnet/minecraft/class_10143$class_10144; field_53906 XYZ + f Lnet/minecraft/class_10143$class_10144; field_53911 ZYX + f Lnet/minecraft/class_10143$class_10144; field_53910 ZXY + m (III)Lnet/minecraft/class_10143$class_10144; method_62914 fromPos + p 0 x + p 1 y + p 2 z + m (Ljava/lang/String;IIII)V + p 5 z + p 4 y + p 3 x +c net/minecraft/class_10143$class_10148 net/minecraft/client/render/chunk/Octree$Visitor + m (Lnet/minecraft/class_10143$class_10147;ZIZ)V visit visit + p 1 node + p 2 skipVisibilityCheck + p 3 depth + p 4 nearCenter + c whether the node is near octree's {@linkplain Octree#centerPos center}, that is, camera pos +c net/minecraft/class_10143$class_10147 net/minecraft/client/render/chunk/Octree$Node + m ()Lnet/minecraft/class_238; method_62920 getBoundingBox + m (Lnet/minecraft/class_10143$class_10148;ZLnet/minecraft/class_4604;IIZ)V method_62917 visit + p 1 visitor + p 2 skipVisibilityCheck + p 5 margin + p 6 nearCenter + p 3 frustum + p 4 depth + m ()Lnet/minecraft/class_846$class_851; method_62915 getBuiltChunk +c net/minecraft/class_11474 net/minecraft/client/gui/screen/dialog/DialogScreens + f Ljava/util/Map; field_60766 DIALOG_SCREEN_FACTORIES + m ()V method_71874 bootstrap + m (Lcom/mojang/serialization/MapCodec;Lnet/minecraft/class_11474$class_11475;)V method_71876 register + p 1 factory + p 0 dialogCodec + m (Lnet/minecraft/class_11419;Lnet/minecraft/class_437;Lnet/minecraft/class_11513;)Lnet/minecraft/class_11473; method_71875 create + p 0 dialog + p 2 networkAccess + p 1 parent +c net/minecraft/class_11474$class_11475 net/minecraft/client/gui/screen/dialog/DialogScreens$Factory + m (Lnet/minecraft/class_437;Lnet/minecraft/class_11419;Lnet/minecraft/class_11513;)Lnet/minecraft/class_11473; create create + p 1 parent + p 3 networkAccess + p 2 dialog +c net/minecraft/class_11473 net/minecraft/client/gui/screen/dialog/DialogScreen + f Lnet/minecraft/class_11419; field_60761 dialog + f Lnet/minecraft/class_8132; field_60762 layout + f Lnet/minecraft/class_11513; field_60874 networkAccess + f Lnet/minecraft/class_11467; field_60764 contents + f Ljava/util/function/Supplier; field_61008 cancelAction + f Lnet/minecraft/class_8666; field_60759 WARNING_BUTTON_TEXTURES + f Lnet/minecraft/class_2561; field_60760 CUSTOM_SCREEN_REJECTED_DISCONNECT_TEXT + f Lnet/minecraft/class_437; field_60763 parent + f Lnet/minecraft/class_4185; field_60765 warningButton + m (Lnet/minecraft/class_8132;Lnet/minecraft/class_11529;Lnet/minecraft/class_11419;Lnet/minecraft/class_11513;)V method_71851 initHeaderAndFooter + p 2 controls + p 3 dialog + p 4 networkAccess + p 1 layout + m ()Lnet/minecraft/class_8021; method_71872 createHeader + m ()V method_71873 resetWarningButtonPosition + m ()Lnet/minecraft/class_4185; method_71860 createWarningButton + m (Ljava/util/List;I)Lnet/minecraft/class_8021; method_71867 createGridWidget + p 1 columns + p 0 widgets + m (Lnet/minecraft/class_8667;Lnet/minecraft/class_11529;Lnet/minecraft/class_11419;Lnet/minecraft/class_11513;)V method_71853 initBody + p 2 controls + p 1 bodyLayout + p 4 networkAccess + p 3 dialog + m (Lnet/minecraft/class_2558;Lnet/minecraft/class_437;)V method_72006 handleClickEvent + p 1 clickEvent + p 2 afterActionScreen + m (Lnet/minecraft/class_339;)V method_71865 method_71865 + p 1 child + m ()Lnet/minecraft/class_437; method_71859 getParentScreen + m (Ljava/util/Optional;Lnet/minecraft/class_11520;)V method_72142 runAction + p 2 afterAction + p 1 clickEvent + m (Ljava/util/Optional;)V method_72141 runAction + p 1 clickEvent + m (Lnet/minecraft/class_4185;)V method_72005 method_72005 + p 1 button + m (Lnet/minecraft/class_437;Lnet/minecraft/class_11419;Lnet/minecraft/class_11513;)V + p 2 dialog + p 3 networkAccess + p 1 parent +c net/minecraft/class_11473$class_11514 net/minecraft/client/gui/screen/dialog/DialogScreen$WarningScreen + f Lorg/apache/commons/lang3/mutable/MutableObject; field_60875 dialogScreen + m (Lnet/minecraft/class_310;Lnet/minecraft/class_11513;Lnet/minecraft/class_437;)Lnet/minecraft/class_437; method_72007 create + p 1 dialogNetworkAccess + p 2 dialogScreen + p 0 client + m (Lnet/minecraft/class_437;)V method_72009 setDialogScreen + p 1 screen + m (Lnet/minecraft/class_310;Lnet/minecraft/class_11513;Lorg/apache/commons/lang3/mutable/MutableObject;)V + p 2 dialogNetworkAccess + p 1 client + p 3 dialogScreen + m (Lnet/minecraft/class_11513;Lnet/minecraft/class_310;Lorg/apache/commons/lang3/mutable/MutableObject;Z)V method_72008 method_72008 + p 3 disconnect + m ()Lnet/minecraft/class_437; method_72010 getDialogScreen +c net/minecraft/class_10141 net/minecraft/client/gl/CompiledShader + f Lcom/mojang/blaze3d/shaders/ShaderType; field_57881 shaderType + f Lnet/minecraft/class_10141; field_57880 INVALID_SHADER + f I field_53827 CLOSED + f I field_53829 handle + f Lnet/minecraft/class_2960; field_53828 id + m ()I method_62883 getHandle + m ()Lnet/minecraft/class_2960; method_62881 getId + m ()Ljava/lang/String; method_68423 getDebugLabel + m (ILnet/minecraft/class_2960;Lcom/mojang/blaze3d/shaders/ShaderType;)V + p 1 handle + p 2 id + p 3 shaderType +c net/minecraft/class_11472 net/minecraft/client/gui/screen/dialog/DialogListDialogScreen + m (Lnet/minecraft/class_11420;Lnet/minecraft/class_11513;)Ljava/util/stream/Stream; method_71856 streamActionButtonData + m (Lnet/minecraft/class_11420;Lnet/minecraft/class_6880;)Lnet/minecraft/class_11519; method_71857 createButton + p 1 entry + p 0 dialog + m (Lnet/minecraft/class_437;Lnet/minecraft/class_11420;Lnet/minecraft/class_11513;)V + p 3 networkAccess + p 1 parent + p 2 dialog + m (Lnet/minecraft/class_11420;Lnet/minecraft/class_6880;)Lnet/minecraft/class_11519; method_71858 method_71858 + p 1 entry +c net/minecraft/class_11479 net/minecraft/client/gui/screen/dialog/ServerLinksDialogScreen + m (Lnet/minecraft/class_11429;Lnet/minecraft/class_9782$class_9783;)Lnet/minecraft/class_11519; method_71887 createButton + p 1 entry + p 0 dialog + m (Lnet/minecraft/class_437;Lnet/minecraft/class_11429;Lnet/minecraft/class_11513;)V + p 3 networkAccess + p 1 parent + p 2 dialog + m (Lnet/minecraft/class_11429;Lnet/minecraft/class_11513;)Ljava/util/stream/Stream; method_71888 streamActionButtonData + m (Lnet/minecraft/class_11429;Lnet/minecraft/class_9782$class_9783;)Lnet/minecraft/class_11519; method_71889 method_71889 + p 1 entry +c net/minecraft/class_11478 net/minecraft/client/gui/screen/dialog/MultiActionDialogScreen + m (Lnet/minecraft/class_11426;Lnet/minecraft/class_11513;)Ljava/util/stream/Stream; method_71885 streamActionButtonData + m (Lnet/minecraft/class_437;Lnet/minecraft/class_11426;Lnet/minecraft/class_11513;)V + p 3 networkAccess + p 2 dialog + p 1 parent +c net/minecraft/class_10149 net/minecraft/client/gl/Defines + f Lnet/minecraft/class_10149; field_53930 EMPTY + f Lcom/mojang/serialization/Codec; field_53931 CODEC + f Ljava/util/Set; comp_3104 flags + f Ljava/util/Map; comp_3103 values + m ()Ljava/lang/String; method_62929 toSource + m ()Lnet/minecraft/class_10149$class_10150; method_62926 builder + m (Lnet/minecraft/class_10149;)Lnet/minecraft/class_10149; method_62928 withMerged + p 1 other + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_62927 method_62927 + p 0 instance + m ()Z method_62930 isEmpty + m ()Ljava/util/Set; comp_3104 flags + m ()Ljava/util/Map; comp_3103 values + m (Ljava/util/Map;Ljava/util/Set;)V + p 1 values + p 2 flags +c net/minecraft/class_10149$class_10150 net/minecraft/client/gl/Defines$Builder + f Lcom/google/common/collect/ImmutableMap$Builder; field_53932 values + f Lcom/google/common/collect/ImmutableSet$Builder; field_53933 flags + m (Ljava/lang/String;)Lnet/minecraft/class_10149$class_10150; method_62932 flag + p 1 flag + m (Ljava/lang/String;)Ljava/lang/String; method_62935 escapeLinebreak + p 0 string + m ()Lnet/minecraft/class_10149; method_62931 build + m (Ljava/lang/String;F)Lnet/minecraft/class_10149$class_10150; method_62933 define + p 2 value + p 1 key + m (Ljava/lang/String;I)Lnet/minecraft/class_10149$class_10150; method_67908 define + p 1 name + p 2 value + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_10149$class_10150; method_62934 define + p 1 key + p 2 value +c net/minecraft/class_4273 net/minecraft/network/packet/s2c/play/ChunkLoadDistanceS2CPacket + f I field_19146 distance + f Lnet/minecraft/class_9139; field_47976 CODEC + m ()I method_20206 getDistance + m (Lnet/minecraft/class_2602;)V method_20205 apply + m (Lnet/minecraft/class_2540;)V method_55923 write + p 1 buf + m (I)V + p 1 distance + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_225 net/minecraft/loot/condition/RandomChanceWithEnchantedBonusLootCondition + f Lcom/mojang/serialization/MapCodec; field_45874 CODEC + f F comp_2865 unenchantedChance + f Lnet/minecraft/class_6880; comp_2783 enchantment + f Lnet/minecraft/class_9704; comp_2866 enchantedChance + m (Lnet/minecraft/class_7225$class_7874;FF)Lnet/minecraft/class_5341$class_210; method_953 builder + p 0 registries + p 1 base + p 2 perLevelAboveFirst + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53425 method_53425 + p 0 instance + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lnet/minecraft/class_47;)Z method_950 test + m ()Lnet/minecraft/class_6880; comp_2783 enchantment + m ()Lnet/minecraft/class_9704; comp_2866 enchantedChance + m ()F comp_2865 unenchantedChance + m (FLnet/minecraft/class_9704;Lnet/minecraft/class_6880;)V + p 1 unenchantedChance + p 2 enchantedChance + p 3 enchantment +c net/minecraft/class_4275 net/minecraft/block/Stainable + m ()Lnet/minecraft/class_1767; method_10622 getColor +c net/minecraft/class_4274 net/minecraft/world/spawner/CatSpawner + c A spawner for cats in villages and tagged structures.\n\n@implNote Cats in swamp huts are also spawned in\n{@link net.minecraft.structure.SwampHutGenerator#spawnCat}. + f I field_19171 cooldown + f I field_30601 SPAWN_INTERVAL + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3218;Z)V method_20262 spawn + c Spawns a cat. + p 1 pos + p 2 world + p 3 persistent + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_20260 spawnInStructure + c Tries to spawn cats in tagged structures.\n\n@implNote Cats spawn when there are no other cats nearby. + p 2 pos + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_20263 spawnInHouse + c Tries to spawn cats in villages.\n\n@implNote Cats spawn when there are more than 4 occupied beds and less than 5 existing cats. + p 1 world + p 2 pos + m (Lnet/minecraft/class_6880;)Z method_44004 method_44004 + p 0 entry +c net/minecraft/class_223 net/minecraft/loot/condition/MatchToolLootCondition + f Lcom/mojang/serialization/MapCodec; field_45875 CODEC + f Ljava/util/Optional; comp_1884 predicate + m (Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_5341$class_210; method_945 builder + p 0 predicate + m (Lnet/minecraft/class_47;)Z method_946 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53426 method_53426 + p 0 instance + m (Ljava/lang/Object;)Z test test + p 1 context + m ()Ljava/util/Optional; comp_1884 predicate + m (Ljava/util/Optional;)V + p 1 predicate +c net/minecraft/class_229 net/minecraft/world/timer/FunctionTagTimerCallback + f Lcom/mojang/serialization/MapCodec; field_56686 CODEC + f Lnet/minecraft/class_2960; comp_3694 name + m (Lnet/minecraft/class_2960;)V + p 1 name + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_236;J)V method_962 call + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67706 method_67706 + p 0 instance + m ()Lnet/minecraft/class_2960; comp_3694 name +c net/minecraft/class_227 net/minecraft/loot/condition/WeatherCheckLootCondition + f Ljava/util/Optional; comp_1889 raining + f Lcom/mojang/serialization/MapCodec; field_45878 CODEC + f Ljava/util/Optional; comp_1890 thundering + m ()Ljava/util/Optional; comp_1889 raining + m ()Lnet/minecraft/class_227$class_6165; method_35564 create + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53429 method_53429 + p 0 instance + m (Lnet/minecraft/class_47;)Z method_957 test + m ()Ljava/util/Optional; comp_1890 thundering + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 raining + p 2 thundering +c net/minecraft/class_227$class_6165 net/minecraft/loot/condition/WeatherCheckLootCondition$Builder + f Ljava/util/Optional; field_31873 raining + f Ljava/util/Optional; field_31874 thundering + m (Z)Lnet/minecraft/class_227$class_6165; method_35565 raining + p 1 raining + m ()Lnet/minecraft/class_227; method_35566 build + m (Z)Lnet/minecraft/class_227$class_6165; method_35567 thundering + p 1 thundering +c net/minecraft/class_4277 net/minecraft/client/sound/BubbleColumnSoundPlayer + f Lnet/minecraft/class_746; field_19192 player + f Z field_19193 hasPlayedForCurrentColumn + f Z field_19194 firstTick + m (Lnet/minecraft/class_2680;)Z method_29714 method_29714 + p 0 state + m (Lnet/minecraft/class_746;)V + p 1 player +c net/minecraft/class_221 net/minecraft/loot/condition/KilledByPlayerLootCondition + f Lcom/mojang/serialization/MapCodec; field_45872 CODEC + f Lnet/minecraft/class_221; field_1297 INSTANCE + m (Lnet/minecraft/class_47;)Z method_938 test + m ()Lnet/minecraft/class_5341$class_210; method_939 builder + m (Ljava/lang/Object;)Z test test + p 1 context +c net/minecraft/class_4279 net/minecraft/world/gen/feature/FillLayerFeatureConfig + f Lnet/minecraft/class_2680; field_19203 state + f I field_19202 height + f Lcom/mojang/serialization/Codec; field_24887 CODEC + m (Lnet/minecraft/class_4279;)Lnet/minecraft/class_2680; method_28725 method_28725 + p 0 config + m (ILnet/minecraft/class_2680;)V + p 2 state + p 1 height + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28726 method_28726 + p 0 instance + m (Lnet/minecraft/class_4279;)Ljava/lang/Integer; method_28727 method_28727 + p 0 config +c net/minecraft/class_4278 net/minecraft/world/gen/feature/FillLayerFeature +c net/minecraft/class_10173 net/minecraft/server/world/ThrottledChunkTaskScheduler + f I field_54052 maxConcurrentChunks + f Lit/unimi/dsi/fastutil/longs/LongSet; field_54051 chunks + f Ljava/lang/String; field_54053 name + m (Lnet/minecraft/class_10178;Ljava/util/concurrent/Executor;I)V + p 3 maxConcurrentChunks + p 2 dispatchExecutor + p 1 executor + m (J)Ljava/lang/String; method_63564 method_63564 + p 0 chunkPos + m ()Ljava/lang/String; method_63565 toDumpString +c net/minecraft/class_10171 net/minecraft/server/world/ChunkTaskScheduler + f Lorg/slf4j/Logger; field_54038 LOGGER + f Lnet/minecraft/class_10178; field_54040 executor + f Lnet/minecraft/class_10177; field_54041 dispatcher + f Z field_54037 pollOnUpdate + f Lnet/minecraft/class_3899; field_54039 queue + f I field_54036 LEVELS + m ()Lnet/minecraft/class_3899$class_10172; method_63559 poll + m (Ljava/lang/Void;)V method_63555 method_63555 + p 1 v + m (J)V method_63548 onRemove + p 1 chunkPos + m (Ljava/lang/Runnable;Ljava/util/concurrent/CompletableFuture;)V method_63554 method_63554 + p 1 future + m (Lnet/minecraft/class_3899$class_10172;)V method_63551 schedule + p 1 entry + m (Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; method_63552 method_63552 + p 1 runnable + m ()V method_63558 pollTask + m (Ljava/lang/Runnable;JLjava/util/function/IntSupplier;)V method_63553 add + p 1 runnable + p 2 pos + p 4 levelGetter + m (Lnet/minecraft/class_10178;Ljava/util/concurrent/Executor;)V + p 1 executor + p 2 dispatchExecutor + m (JLjava/lang/Runnable;Z)V method_63549 remove + p 3 callback + p 4 removeElement + p 1 pos + m ()Z method_63546 shouldDelayShutdown +c net/minecraft/class_10176 net/minecraft/util/thread/SimpleConsecutiveExecutor + m (Ljava/util/concurrent/Executor;Ljava/lang/String;)V + p 1 executor + p 2 name +c net/minecraft/class_10177 net/minecraft/util/thread/PrioritizedConsecutiveExecutor + m (ILjava/util/concurrent/Executor;Ljava/lang/String;)V + p 1 priorityCount + p 2 executor + p 3 name + m (Ljava/lang/Runnable;)Lnet/minecraft/class_3847$class_3907; method_63601 createTask + m (ILjava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_63599 executeAsync + p 1 priority + p 2 future +c net/minecraft/class_10174 net/minecraft/util/thread/ConsecutiveExecutor + f Lnet/minecraft/class_3847; field_54071 queue + f Lorg/slf4j/Logger; field_54069 LOGGER + f Ljava/util/concurrent/Executor; field_54072 executor + f Ljava/lang/String; field_54073 name + f Ljava/util/concurrent/atomic/AtomicReference; field_54070 status + m ()V method_63587 runAll + m ()V method_63595 sleep + m ()V method_63593 scheduleSelf + m ()Z method_63597 isClosed + m ()Z method_63596 isRunning + m ()Z method_63594 wakeUp + m ()Z method_63591 canRun + m ()Z method_63592 runOnce + m ()Z method_63590 hasQueuedTasks + m ()I method_63589 queueSize + m (Lnet/minecraft/class_3847;Ljava/util/concurrent/Executor;Ljava/lang/String;)V + p 1 queue + p 3 name + p 2 executor +c net/minecraft/class_10174$class_10175 net/minecraft/util/thread/ConsecutiveExecutor$Status + f Lnet/minecraft/class_10174$class_10175; field_54076 CLOSED + f Lnet/minecraft/class_10174$class_10175; field_54075 RUNNING + f Lnet/minecraft/class_10174$class_10175; field_54074 SLEEPING +c net/minecraft/class_10178 net/minecraft/util/thread/TaskExecutor + m (Ljava/lang/Runnable;)V method_63588 send + p 1 runnable + m (Ljava/lang/String;Ljava/util/concurrent/Executor;)Lnet/minecraft/class_10178; method_63602 of + p 0 name + p 1 executor + m (Ljava/lang/Runnable;)Ljava/lang/Runnable; method_16211 createTask + p 1 runnable + m (Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_63603 executeAsync + p 1 future + m ()Ljava/lang/String; method_16898 getName +c net/minecraft/class_10179 net/minecraft/entity/conversion/EntityConversionContext + f Z comp_3145 keepEquipment + f Z comp_3146 preserveCanPickUpLoot + f Lnet/minecraft/class_268; comp_3147 team + f Lnet/minecraft/class_10181; comp_3144 type + m (Lnet/minecraft/class_1308;ZZ)Lnet/minecraft/class_10179; method_63607 create + p 0 entity + p 2 preserveCanPickUpLoot + p 1 keepEquipment + m ()Lnet/minecraft/class_10181; comp_3144 type + m ()Z comp_3145 keepEquipment + m ()Lnet/minecraft/class_268; comp_3147 team + m ()Z comp_3146 preserveCanPickUpLoot + m (Lnet/minecraft/class_10181;ZZLnet/minecraft/class_268;)V + p 1 type + p 2 keepEquipment + p 3 preserveCanPickUpLoot + p 4 team +c net/minecraft/class_10179$class_10180 net/minecraft/entity/conversion/EntityConversionContext$Finalizer + m (Lnet/minecraft/class_1308;)V finalizeConversion finalizeConversion + p 1 convertedEntity +c net/minecraft/class_4284 net/minecraft/datafixer/DataFixTypes + f Ljava/util/Set; field_42975 REQUIRED_TYPES + f Lcom/mojang/datafixers/DSL$TypeReference; field_19222 typeReference + f Lnet/minecraft/class_4284; field_62507 SAVED_DATA_WORLD_BORDER + f Lnet/minecraft/class_4284; field_19220 ADVANCEMENTS + f Lnet/minecraft/class_4284; field_19216 OPTIONS + f Lnet/minecraft/class_4284; field_19215 HOTBAR + f Lnet/minecraft/class_4284; field_19214 CHUNK + f Lnet/minecraft/class_4284; field_19213 PLAYER + f Lnet/minecraft/class_4284; field_19212 LEVEL + f Lnet/minecraft/class_4284; field_19218 STATS + f Lnet/minecraft/class_4284; field_19217 STRUCTURE + f Lnet/minecraft/class_4284; field_19221 POI_CHUNK + f Lnet/minecraft/class_4284; field_45078 SAVED_DATA_FORCED_CHUNKS + f Lnet/minecraft/class_4284; field_45079 SAVED_DATA_MAP_DATA + f Lnet/minecraft/class_4284; field_45077 SAVED_DATA_COMMAND_STORAGE + f Lnet/minecraft/class_4284; field_45084 SAVED_DATA_STRUCTURE_FEATURE_INDICES + f Lnet/minecraft/class_4284; field_45082 SAVED_DATA_RANDOM_SEQUENCES + f Lnet/minecraft/class_4284; field_45083 SAVED_DATA_SCOREBOARD + f Lnet/minecraft/class_4284; field_45080 SAVED_DATA_MAP_INDEX + f Lnet/minecraft/class_4284; field_45081 SAVED_DATA_RAIDS + f Lnet/minecraft/class_4284; field_26990 ENTITY_CHUNK + f Lnet/minecraft/class_4284; field_59995 LEVEL_SUMMARY + f Lnet/minecraft/class_4284; field_24640 WORLD_GEN_SETTINGS + f Lnet/minecraft/class_4284; field_63266 DEBUG_PROFILE + f Lnet/minecraft/class_4284; field_63265 SAVED_DATA_STOPWATCHES + m ()I method_48132 getSaveVersionId + m (Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/class_2487;II)Lnet/minecraft/class_2487; method_48131 update + c {@return {@code nbt} updated from {@code oldVersion} to {@code newVersion}}\n\n@see net.minecraft.nbt.NbtHelper#getDataVersion + p 1 dataFixer + p 2 nbt + p 3 oldVersion + p 4 newVersion + m (Lcom/mojang/serialization/Codec;Lcom/mojang/datafixers/DataFixer;I)Lcom/mojang/serialization/Codec; method_53711 createDataFixingCodec + p 2 dataFixer + p 1 baseCodec + p 3 currentDataVersion + m (Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/class_2487;I)Lnet/minecraft/class_2487; method_48130 update + c {@return {@code nbt} updated from {@code oldVersion} to the current version}\n\n@see net.minecraft.nbt.NbtHelper#getDataVersion + p 2 nbt + p 3 oldVersion + p 1 dataFixer + m (Lcom/mojang/datafixers/DataFixer;Lcom/mojang/serialization/Dynamic;II)Lcom/mojang/serialization/Dynamic; method_48129 update + c {@return {@code dynamic} updated from {@code oldVersion} to {@code newVersion}} + p 2 dynamic + p 1 dataFixer + p 4 newVersion + p 3 oldVersion + m (Ljava/lang/String;ILcom/mojang/datafixers/DSL$TypeReference;)V + p 3 typeReference + m (Lcom/mojang/datafixers/DataFixer;Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; method_48128 update + c {@return {@code dynamic} updated from {@code oldVersion} to the current version} + p 2 dynamic + p 1 dataFixer + p 3 oldVersion +c net/minecraft/class_4284$1 net/minecraft/datafixer/DataFixTypes$1 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decode decode + p 1 ops + p 2 input + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode encode + p 1 input + p 2 ops + p 3 prefix + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_53712 method_53712 + p 1 encoded +c net/minecraft/class_236 net/minecraft/world/timer/Timer + f Lorg/slf4j/Logger; field_1315 LOGGER + f Lcom/google/common/primitives/UnsignedLong; field_1311 eventCounter + f Lnet/minecraft/class_233; field_1314 callback + f Ljava/util/Queue; field_1313 events + f Lcom/google/common/collect/Table; field_1312 eventsByName + f Ljava/lang/String; field_31878 TRIGGER_TIME_KEY + f Ljava/lang/String; field_31876 CALLBACK_KEY + f Ljava/lang/String; field_31877 NAME_KEY + m (Ljava/lang/String;)I method_22593 remove + p 1 name + m (Lnet/minecraft/class_233;Ljava/util/stream/Stream;)V + p 1 timerCallbackSerializer + p 2 nbts + m (Lnet/minecraft/class_2487;)V method_986 addEvent + p 1 nbt + m (Lnet/minecraft/class_233;)V + p 1 timerCallbackSerializer + m (Ljava/lang/Object;J)V method_988 processEvents + p 2 time + p 1 server + m (Lcom/mojang/serialization/Dynamic;)V method_29040 method_29040 + p 1 nbt + m (Lnet/minecraft/class_236$class_237;)Lcom/google/common/primitives/UnsignedLong; method_21904 method_21904 + p 0 event + m (Lnet/minecraft/class_236$class_237;)Lnet/minecraft/class_2487; method_980 serialize + p 1 event + m (Ljava/lang/String;JLnet/minecraft/class_234;)V method_985 setEventIfAbsent + p 1 name + p 2 triggerTime + p 4 callback + m (Lnet/minecraft/class_236$class_237;)J method_21905 method_21905 + p 0 event + m ()Ljava/util/Comparator; method_987 createEventComparator + m ()Lnet/minecraft/class_2499; method_982 toNbt + m ()Ljava/util/Set; method_22592 getEventNames +c net/minecraft/class_236$class_237 net/minecraft/world/timer/Timer$Event + f Lnet/minecraft/class_234; field_1316 callback + f Ljava/lang/String; field_1317 name + f Lcom/google/common/primitives/UnsignedLong; field_1319 id + f J field_1318 triggerTime + m (JLcom/google/common/primitives/UnsignedLong;Ljava/lang/String;Lnet/minecraft/class_234;)V + p 3 id + p 4 name + p 1 triggerTime + p 5 callback +c net/minecraft/class_4286 net/minecraft/client/gui/widget/CheckboxWidget + f Lnet/minecraft/class_2960; field_45348 SELECTED_HIGHLIGHTED_TEXTURE + f Lnet/minecraft/class_4286$class_8930; field_47107 callback + f Lnet/minecraft/class_7940; field_52293 textWidget + f Lnet/minecraft/class_2960; field_45349 SELECTED_TEXTURE + f Lnet/minecraft/class_2960; field_45351 TEXTURE + f Z field_19230 checked + f Lnet/minecraft/class_2960; field_45350 HIGHLIGHTED_TEXTURE + m (ILnet/minecraft/class_327;)I method_76257 setMaxWidth + p 2 textRenderer + p 1 max + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_327;)Lnet/minecraft/class_4286$class_8929; method_54787 builder + p 1 textRenderer + p 0 text + m (Lnet/minecraft/class_327;)I method_61129 calculateHeight + p 1 textRenderer + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_327;)I method_61130 calculateWidth + p 0 text + p 1 textRenderer + m (ILnet/minecraft/class_2561;Lnet/minecraft/class_327;)I method_61128 calculateWidth + p 3 textRenderer + p 2 text + p 1 max + m (IIILnet/minecraft/class_2561;Lnet/minecraft/class_327;ZLnet/minecraft/class_4286$class_8930;)V + p 1 x + p 2 y + p 3 maxWidth + p 4 message + p 5 textRenderer + p 6 checked + p 7 callback + m ()Z method_20372 isChecked + m (Lnet/minecraft/class_327;)I method_54786 getCheckboxSize + p 0 textRenderer +c net/minecraft/class_4286$class_8930 net/minecraft/client/gui/widget/CheckboxWidget$Callback + f Lnet/minecraft/class_4286$class_8930; field_47116 EMPTY + m (Lnet/minecraft/class_4286;Z)V method_54795 method_54795 + p 1 checked + p 0 checkbox + m (Lnet/minecraft/class_4286;Z)V onValueChange onValueChange + p 1 checkbox + p 2 checked +c net/minecraft/class_4286$class_8929 net/minecraft/client/gui/widget/CheckboxWidget$Builder + f Z field_47113 checked + f I field_52294 maxWidth + f Lnet/minecraft/class_2561; field_47108 message + f Lnet/minecraft/class_4286$class_8930; field_47112 callback + f Lnet/minecraft/class_327; field_47109 textRenderer + f Lnet/minecraft/class_7172; field_47114 option + f I field_47111 y + f Lnet/minecraft/class_7919; field_47115 tooltip + f I field_47110 x + m (II)Lnet/minecraft/class_4286$class_8929; method_54789 pos + p 1 x + p 2 y + m ()Lnet/minecraft/class_4286; method_54788 build + m (I)Lnet/minecraft/class_4286$class_8929; method_61131 maxWidth + p 1 maxWidth + m (Lnet/minecraft/class_7919;)Lnet/minecraft/class_4286$class_8929; method_54793 tooltip + p 1 tooltip + m (Lnet/minecraft/class_4286;Z)V method_54792 method_54792 + p 2 checked + p 1 checkbox + m (Lnet/minecraft/class_4286$class_8930;)Lnet/minecraft/class_4286$class_8929; method_54791 callback + p 1 callback + m (Lnet/minecraft/class_7172;)Lnet/minecraft/class_4286$class_8929; method_54790 option + p 1 option + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_327;)V + p 2 textRenderer + p 1 message + m (Z)Lnet/minecraft/class_4286$class_8929; method_54794 checked + p 1 checked +c net/minecraft/class_234 net/minecraft/world/timer/TimerCallback + m (Ljava/lang/Object;Lnet/minecraft/class_236;J)V method_974 call + p 2 events + p 1 server + p 3 time + m ()Lcom/mojang/serialization/MapCodec; method_67704 getCodec +c net/minecraft/class_4285 net/minecraft/datafixer/fix/PointOfInterestReorganizationFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_20340 reorganize +c net/minecraft/class_4280 net/minecraft/client/gui/widget/AlwaysSelectedEntryListWidget + f Lnet/minecraft/class_2561; field_33783 SELECTION_USAGE_TEXT +c net/minecraft/class_4280$class_4281 net/minecraft/client/gui/widget/AlwaysSelectedEntryListWidget$Entry + m ()Lnet/minecraft/class_2561; method_37006 getNarration +c net/minecraft/class_4282 net/minecraft/network/packet/s2c/play/ChunkRenderDistanceCenterS2CPacket + f I field_19206 chunkX + f I field_19207 chunkZ + f Lnet/minecraft/class_9139; field_47975 CODEC + m ()I method_20323 getChunkZ + m (II)V + p 1 x + p 2 z + m ()I method_20322 getChunkX + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2602;)V method_20321 apply + m (Lnet/minecraft/class_2540;)V method_55922 write + p 1 buf +c net/minecraft/class_239 net/minecraft/util/hit/HitResult + f Lnet/minecraft/class_243; field_1329 pos + m ()Lnet/minecraft/class_239$class_240; method_17783 getType + m (Lnet/minecraft/class_1297;)D method_24801 squaredDistanceTo + p 1 entity + m (Lnet/minecraft/class_243;)V + p 1 pos + m ()Lnet/minecraft/class_243; method_17784 getPos +c net/minecraft/class_239$class_240 net/minecraft/util/hit/HitResult$Type + f Lnet/minecraft/class_239$class_240; field_1333 MISS + f Lnet/minecraft/class_239$class_240; field_1331 ENTITY + f Lnet/minecraft/class_239$class_240; field_1332 BLOCK +c net/minecraft/class_238 net/minecraft/util/math/Box + c An immutable box with double-valued coordinates. The box is axis-aligned\nand the coordinates are minimum inclusive and maximum exclusive.\n\n

This box has proper {@link #hashCode()} and {@link #equals(Object)}\nimplementations and can be used as a map key.\n\n@see BlockBox + f D field_1325 maxY + f D field_1321 minZ + f D field_1322 minY + f D field_31879 EPSILON + f D field_1323 minX + f D field_1324 maxZ + f D field_1320 maxX + m (D)Lnet/minecraft/class_238; method_35576 withMinZ + c {@return a new box with the minimum Z provided and all other coordinates\nof this box} + p 1 minZ + m ()Lnet/minecraft/class_243; method_61126 getMaxPos + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;)V + c Creates a box of the given positions as corners. + p 1 pos1 + p 2 pos2 + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_238; method_997 offset + c Creates a box that is translated by {@code vec.x}, {@code vec.y}, {@code\nvec.z} on each axis from this box.\n\n@see #offset(double, double, double) + p 1 vec + m (DDD)Z method_1008 contains + c Checks if the given position is in this box. + p 3 y + p 1 x + p 5 z + m (Ljava/lang/Iterable;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3965; method_1010 raycast + p 3 pos + p 2 to + p 1 from + p 0 boxes + m (DDDDDDLnet/minecraft/class_243;Lnet/minecraft/class_243;)Ljava/util/Optional; method_61885 raycast + p 12 from + p 10 maxZ + p 8 maxY + p 6 maxX + p 4 minZ + p 2 minY + p 0 minX + p 13 to + m ([DLnet/minecraft/class_2350;DDDDDDDDLnet/minecraft/class_2350;DDD)Lnet/minecraft/class_2350; method_998 traceCollisionSide + p 23 startZ + p 21 startY + p 19 startX + p 18 resultDirection + p 16 maxZ + p 14 minZ + p 12 maxX + p 10 minX + p 8 begin + p 6 deltaZ + p 4 deltaY + p 1 approachDirection + p 2 deltaX + p 0 traceDistanceResult + m (DDDDDD)V + c Creates a box of the given positions as corners. + p 7 x2 + p 9 y2 + p 11 z2 + p 1 x1 + p 3 y1 + p 5 z1 + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;)Z method_993 intersects + c Checks if this box intersects the box of the given positions as\ncorners. + p 2 pos2 + p 1 pos1 + m (Lnet/minecraft/class_238;)Z method_994 intersects + c Checks if this box intersects the given box. + p 1 box + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()D method_17939 getLengthX + c {@return the length of this box on the X axis} + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_238; method_996 offset + c Creates a box that is translated by {@code blockPos.getX()}, {@code\nblockPos.getY()}, {@code blockPos.getZ()} on each axis from this box.\n\n@see #offset(double, double, double) + p 1 blockPos + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;)Ljava/util/Optional; method_992 raycast + p 2 to + p 1 from + m ()Lnet/minecraft/class_243; method_61125 getMinPos + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_238; method_18804 stretch + p 1 scale + m (Lnet/minecraft/class_243;DDD)Lnet/minecraft/class_238; method_30048 of + p 1 dx + p 3 dy + p 5 dz + p 0 center + m (DDD)Lnet/minecraft/class_238; method_1002 shrink + p 1 x + p 3 y + p 5 z + m ()D method_17940 getLengthY + c {@return the length of this box on the Y axis} + m (D)Lnet/minecraft/class_238; method_35577 withMaxX + c {@return a new box with the maximum X provided and all other coordinates\nof this box} + p 1 maxX + m (D)Lnet/minecraft/class_238; method_1014 expand + c @see #contract(double) + p 1 value + m (D)Lnet/minecraft/class_238; method_35574 withMinX + c {@return a new box with the minimum X provided and all other coordinates\nof this box} + p 1 minX + m (Lnet/minecraft/class_2350$class_2351;)D method_1001 getMin + c {@return the minimum coordinate for the given {@code axis} of this box} + p 1 axis + m (Lnet/minecraft/class_243;Ljava/util/List;)Z method_64032 collides + p 1 pos + p 2 boundingBoxes + m ()Z method_1013 isNaN + c Checks if any of the coordinates of this box are {@linkplain\nDouble#isNaN(double) not a number}. + m (Lnet/minecraft/class_243;)Z method_1006 contains + c Checks if the given position is in this box. + p 1 pos + m (Lnet/minecraft/class_238;)Lnet/minecraft/class_238; method_991 union + c Creates the minimum box that contains this box and the given box. + p 1 box + m ()D method_17941 getLengthZ + c {@return the length of this box on the Z axis} + m (DDDDDD)Z method_1003 intersects + c Checks if this box intersects the box of the given coordinates. + p 7 maxX + p 5 minZ + p 11 maxZ + p 9 maxY + p 3 minY + p 1 minX + m (Lnet/minecraft/class_238;)Lnet/minecraft/class_238; method_999 intersection + c Creates the maximum box that this box and the given box contain. + p 1 box + m (Lorg/joml/Vector3f;)Lnet/minecraft/class_238; method_60314 offset + p 1 offset + m (Lnet/minecraft/class_2350$class_2351;)D method_990 getMax + c {@return the maximum coordinate for the given {@code axis} of this box} + p 1 axis + m (D)Lnet/minecraft/class_238; method_35578 withMaxY + c {@return a new box with the maximum Y provided and all other coordinates\nof this box} + p 1 maxY + m (D)Lnet/minecraft/class_238; method_35575 withMinY + c {@return a new box with the minimum Y provided and all other coordinates\nof this box} + p 1 minY + m (D)Lnet/minecraft/class_238; method_1011 contract + c @see #expand(double) + p 1 value + m (Lnet/minecraft/class_2338;)V + c Creates a box that only contains the given block position. + p 1 pos + m (DDD)Lnet/minecraft/class_238; method_989 offset + c Creates a box that is translated by {@code x}, {@code y}, {@code z} on\neach axis from this box. + p 3 y + p 5 z + p 1 x + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Lnet/minecraft/class_238; method_54784 enclosing + c {@return a box whose bounds extend to the full block between {@code pos1} and\n{@code pos2}, both inclusive} + p 1 pos2 + p 0 pos1 + m ()Lnet/minecraft/class_243; method_64033 getHorizontalCenter + m (DDD)Lnet/minecraft/class_238; method_35580 contract + c @see #expand(double, double, double) + p 5 z + p 3 y + p 1 x + m (DDD)Lnet/minecraft/class_238; method_1009 expand + c @see #contract(double, double, double) + p 5 z + p 1 x + p 3 y + m ()Lnet/minecraft/class_243; method_1005 getCenter + c Returns the center position of this box. + m (Lnet/minecraft/class_3341;)Lnet/minecraft/class_238; method_19316 from + p 0 mutable + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_238; method_29968 from + p 0 pos + m (Lnet/minecraft/class_2338;)Z method_71152 contains + p 1 pos + m (Lnet/minecraft/class_243;)D method_49271 squaredMagnitude + p 1 pos + m (DDD)Lnet/minecraft/class_238; method_1012 stretch + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/class_238;)D method_71490 squaredMagnitude + p 1 other + m (Lnet/minecraft/class_238;Lnet/minecraft/class_243;[DLnet/minecraft/class_2350;DDD)Lnet/minecraft/class_2350; method_1007 traceCollisionSide + p 0 box + p 8 deltaZ + p 6 deltaY + p 4 deltaX + p 3 approachDirection + p 2 traceDistanceResult + p 1 intersectingVector + m (D)Lnet/minecraft/class_238; method_35579 withMaxZ + c {@return a new box with the maximum Z provided and all other coordinates\nof this box} + p 1 maxZ + m (DDDDDDLnet/minecraft/class_243;[DLnet/minecraft/class_2350;DDD)Lnet/minecraft/class_2350; method_61886 traceCollisionSide + p 10 maxZ + p 12 intersectingVector + p 14 approachDirection + p 13 traceDistanceResult + p 0 minX + p 15 deltaX + p 2 minY + p 17 deltaY + p 4 minZ + p 19 deltaZ + p 6 maxX + p 8 maxY + m ()D method_995 getAverageSideLength +c net/minecraft/class_238$class_10782 net/minecraft/util/math/Box$Builder + f F field_56689 minX + f F field_56691 minZ + f F field_56690 minY + f F field_56693 maxY + f F field_56692 maxX + f F field_56694 maxZ + m ()Lnet/minecraft/class_238; method_67708 build + m (Lorg/joml/Vector3fc;)V method_67709 encompass + p 1 vec +c net/minecraft/class_233 net/minecraft/world/timer/TimerCallbackSerializer + f Lcom/mojang/serialization/Codec; field_56688 codec + f Lnet/minecraft/class_5699$class_10388; field_56687 idMapper + f Lnet/minecraft/class_233; field_1306 INSTANCE + m (Lnet/minecraft/class_2960;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_233; method_971 registerSerializer + p 1 id + p 2 codec + m ()Lcom/mojang/serialization/Codec; method_67707 getCodec +c net/minecraft/class_4288 net/minecraft/client/gui/screen/option/MouseOptionsScreen + f Lnet/minecraft/class_2561; field_49498 TITLE + m (Lnet/minecraft/class_315;)[Lnet/minecraft/class_7172; method_41841 getOptions + p 0 gameOptions + m (Lnet/minecraft/class_437;Lnet/minecraft/class_315;)V + p 1 parent + p 2 gameOptions +c net/minecraft/class_231 net/minecraft/world/timer/FunctionTimerCallback + f Lcom/mojang/serialization/MapCodec; field_56685 CODEC + f Lnet/minecraft/class_2960; comp_3693 name + m (Lnet/minecraft/class_2991;Lnet/minecraft/class_2158;)V method_17938 method_17938 + p 1 function + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67705 method_67705 + p 0 instance + m ()Lnet/minecraft/class_2960; comp_3693 name + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_236;J)V method_967 call + m (Lnet/minecraft/class_2960;)V + p 1 name +c net/minecraft/class_4289 net/minecraft/entity/ai/brain/task/GoIndoorsTask + m (FLnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46951 method_46951 + p 1 walkTarget + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;Lnet/minecraft/class_2338;)Z method_46956 method_46956 + p 2 pos + m (Lnet/minecraft/class_7906;FLnet/minecraft/class_2338;)V method_46955 method_46955 + p 2 pos + m (F)Lnet/minecraft/class_7893; method_46949 create + p 0 speed + m (Lnet/minecraft/class_7906;FLnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_46954 method_46954 + p 2 world + p 4 time + p 3 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_46953 method_46953 + p 1 pos + m (FLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46950 method_46950 + p 1 context + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;Lnet/minecraft/class_2338;)Z method_46952 method_46952 + p 2 pos +c net/minecraft/class_10161 net/minecraft/client/render/debug/OctreeDebugRenderer + f Lnet/minecraft/class_310; field_53963 client + m (JF)F method_62980 getColorComponent + p 2 gradient + p 0 size + m (Lnet/minecraft/class_310;)V + p 1 client + m (Lnet/minecraft/class_10143$class_10147;IZLorg/apache/commons/lang3/mutable/MutableInt;Z)V method_62983 renderNode + p 1 node +c net/minecraft/class_10162 net/minecraft/registry/RegistryKeyedValue + m (Lnet/minecraft/class_5321;)Ljava/lang/Object; get get + p 1 registryKey + m (Ljava/lang/Object;)Lnet/minecraft/class_10162; fixed fixed + p 0 value + m (Ljava/lang/Object;Lnet/minecraft/class_5321;)Ljava/lang/Object; method_62992 method_62992 + p 1 registryKey +c net/minecraft/class_10160 net/minecraft/client/render/chunk/ChunkRenderTaskScheduler + f Ljava/util/List; field_53955 queue + f I field_53954 remainingPrioritizableTasks + m (I)Lnet/minecraft/class_846$class_851$class_4577; method_62968 remove + p 1 index + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_846$class_851$class_4577; method_62969 dequeueNearest + p 1 pos + m ()V method_62971 cancelAll + m ()I method_62967 size + m (Lnet/minecraft/class_846$class_851$class_4577;)V method_62970 enqueue + p 1 task +c net/minecraft/class_11496 net/minecraft/unused/packageinfo/PackageInfo11496 +c net/minecraft/class_10166 net/minecraft/block/spawner/TrialSpawnerConfigs + f Lnet/minecraft/class_10166$class_10167; field_53990 BREEZE + f Lnet/minecraft/class_10166$class_10167; field_54001 SMALL_MELEE_CAVE_SPIDER + f Lnet/minecraft/class_10166$class_10167; field_54003 SMALL_MELEE_SLIME + f Lnet/minecraft/class_10166$class_10167; field_53994 RANGED_POISON_SKELETON + f Lnet/minecraft/class_10166$class_10167; field_53992 MELEE_SPIDER + f Lnet/minecraft/class_10166$class_10167; field_53998 SLOW_RANGED_SKELETON + f Lnet/minecraft/class_10166$class_10167; field_53996 RANGED_STRAY + f Lnet/minecraft/class_10166$class_10167; field_53991 MELEE_HUSK + f Lnet/minecraft/class_10166$class_10167; field_54000 SMALL_MELEE_BABY_ZOMBIE + f Lnet/minecraft/class_10166$class_10167; field_54002 SMALL_MELEE_SILVERFISH + f Lnet/minecraft/class_10166$class_10167; field_53995 RANGED_SKELETON + f Lnet/minecraft/class_10166$class_10167; field_53993 MELEE_ZOMBIE + f Lnet/minecraft/class_10166$class_10167; field_53999 SLOW_RANGED_STRAY + f Lnet/minecraft/class_10166$class_10167; field_53997 SLOW_RANGED_POISON_SKELETON + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_1952; method_63479 createEntry + p 0 entityType + m (Lnet/minecraft/class_1299;Ljava/util/function/Consumer;)Lnet/minecraft/class_1952; method_63481 createEntry + p 1 nbtConsumer + p 0 entityType + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_5321;)Lnet/minecraft/class_1952; method_63480 createEntry + p 0 entityType + p 1 equipmentTable + m (Lnet/minecraft/class_2487;)V method_63490 method_63490 + p 0 nbt + m (Lnet/minecraft/class_2487;)V method_63492 method_63492 + p 0 nbt + m (Lnet/minecraft/class_2487;)V method_63494 method_63494 + p 0 nbt + m (Lnet/minecraft/class_2487;)V method_63486 method_63486 + p 0 nbt + m (Lnet/minecraft/class_2487;)V method_63488 method_63488 + p 0 nbt + m (Lnet/minecraft/class_7891;)V method_63484 bootstrap + p 0 registry + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_63483 keyOf + p 0 id + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_9652; method_63478 method_63478 + p 0 lootTable + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_10166$class_10167;Lnet/minecraft/class_8965;Lnet/minecraft/class_8965;)V method_63485 register + p 0 registry + p 1 configPair + p 2 normalConfig + p 3 ominousConfig + m (Lnet/minecraft/class_1299;Ljava/util/function/Consumer;Lnet/minecraft/class_5321;)Lnet/minecraft/class_1952; method_63482 createEntry + p 0 entityType + p 1 nbtConsumer + p 2 equipmentTable + m (Lnet/minecraft/class_2487;)V method_63491 method_63491 + p 0 nbt + m (Lnet/minecraft/class_2487;)V method_63493 method_63493 + p 0 nbt + m ()Lnet/minecraft/class_8965$class_10165; method_63489 genericBuilder + m ()Lnet/minecraft/class_8965$class_10165; method_63477 ominousMeleeBuilder + m (Lnet/minecraft/class_2487;)V method_63495 method_63495 + p 0 nbt + m ()Lnet/minecraft/class_8965$class_10165; method_63487 slowRangedBuilder +c net/minecraft/class_10166$class_10167 net/minecraft/block/spawner/TrialSpawnerConfigs$ConfigKeyPair + f Lnet/minecraft/class_5321; comp_3126 normal + f Lnet/minecraft/class_5321; comp_3127 ominous + m (Ljava/lang/String;)Lnet/minecraft/class_10166$class_10167; method_63496 of + p 0 id + m ()Lnet/minecraft/class_5321; comp_3126 normal + m ()Lnet/minecraft/class_5321; comp_3127 ominous + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;)V + p 1 normal + p 2 ominous +c net/minecraft/class_11495 net/minecraft/unused/packageinfo/PackageInfo11495 +c net/minecraft/class_10163 net/minecraft/datafixer/fix/TrialSpawnerConfigInRegistryFix + f Lorg/slf4j/Logger; field_53970 LOGGER + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_62996 fix + p 1 nbt + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_62997 method_62997 + p 1 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_10163$class_10164 net/minecraft/datafixer/fix/TrialSpawnerConfigInRegistryFix$Replacements + f Ljava/util/Map; field_53971 REPLACEMENTS + m (Lnet/minecraft/class_2487;)Lcom/mojang/serialization/Dynamic; method_63000 toDynamic + p 0 nbt + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_63001 removeDefaults + p 0 nbt + m (Ljava/lang/String;)Lnet/minecraft/class_2487; method_62999 parse + p 0 nbt + m (Lnet/minecraft/class_2960;Ljava/lang/String;Ljava/lang/String;)V method_62998 register + p 1 normal + p 0 id + p 2 ominous +c net/minecraft/class_10169 net/minecraft/client/render/entity/model/TridentRiptideEntityModel + f [Lnet/minecraft/class_630; field_54017 parts + m (Lnet/minecraft/class_10055;)V method_63519 setAngles + m ()Lnet/minecraft/class_5607; method_63517 getTexturedModelData + m (I)Ljava/lang/String; method_63518 getPartName + p 0 index +c net/minecraft/class_10168 net/minecraft/predicate/entity/SheepPredicate + f Lcom/mojang/serialization/MapCodec; field_54004 CODEC + f Ljava/util/Optional; comp_3128 sheared + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_63497 method_63497 + p 0 instance + m ()Lnet/minecraft/class_10168; method_63498 unsheared + m ()Ljava/util/Optional; comp_3128 sheared + m (Ljava/util/Optional;)V + p 1 sheared +c net/minecraft/class_11319 net/minecraft/client/realms/gui/screen/tab/RealmsSettingsTab + f Lnet/minecraft/class_11319$class_11320; field_60282 region + f Lnet/minecraft/class_8208; field_60281 serviceQualityIcon + f Lnet/minecraft/class_2561; field_60272 DESCRIPTION_TEXT + f Ljava/util/Map; field_60277 availableRegions + f Lnet/minecraft/class_7842; field_60280 regionText + f Lnet/minecraft/class_4388; field_60274 screen + f Lnet/minecraft/class_342; field_60278 descriptionTextField + f Lnet/minecraft/class_7919; field_63459 WORLD_NAME_VALIDATION_TOOLTIP + f Lnet/minecraft/class_2561; field_60270 TITLE_TEXT + f Lnet/minecraft/class_4877; field_60276 server + f Lnet/minecraft/class_2561; field_60273 REGION_PREFERENCE_TEXT + f Lnet/minecraft/class_342; field_60279 worldNameTextField + f Lnet/minecraft/class_4185; field_60266 switchStateButton + f Lnet/minecraft/class_310; field_60275 client + f Lnet/minecraft/class_2561; field_60271 WORLD_NAME_TEXT + m (Lnet/minecraft/class_4877;Lnet/minecraft/class_11303;)V method_71232 method_71232 + p 1 region + m (Ljava/lang/String;)V method_75302 method_75302 + p 1 name + m ()V method_71240 refreshRegionText + m ()Z method_75303 isWorldNameValid + m (Lnet/minecraft/class_4185;)V method_71238 method_71238 + p 1 button + m (Lnet/minecraft/class_11311;Lnet/minecraft/class_11303;)V method_71234 onRegionChanged + p 2 region + p 1 selectionMethod + m (Lnet/minecraft/class_4388;Lnet/minecraft/class_310;Lnet/minecraft/class_4877;Ljava/util/Map;)V + p 4 availableRegions + p 1 screen + p 2 client + p 3 server + m ()V method_71239 showRegionPreferenceScreen + m (Lnet/minecraft/class_4388;Lnet/minecraft/class_8816;)V method_71235 method_71235 + p 2 popup + m ()V method_71231 saveSettings + m (Lnet/minecraft/class_11319$class_11320;Ljava/util/Map;)Lnet/minecraft/class_2960; method_71237 getQualityIcon + p 0 region + p 1 qualityByRegion + m (Lnet/minecraft/class_4877;Lnet/minecraft/class_310;Lnet/minecraft/class_4388;Lnet/minecraft/class_4185;)V method_71233 method_71233 + p 4 button + m (Lnet/minecraft/class_11319$class_11320;)Lnet/minecraft/class_5250; method_71236 getRegionText + p 0 region +c net/minecraft/class_11319$class_11320 net/minecraft/client/realms/gui/screen/tab/RealmsSettingsTab$Region + f Lnet/minecraft/class_11311; comp_4184 preference + f Lnet/minecraft/class_11303; comp_4185 region + m ()Lnet/minecraft/class_11311; comp_4184 preference + m ()Lnet/minecraft/class_11303; comp_4185 region + m (Lnet/minecraft/class_11311;Lnet/minecraft/class_11303;)V + p 1 preference + p 2 region +c net/minecraft/class_11321 net/minecraft/client/realms/gui/screen/tab/RealmsWorldsTab + f Lnet/minecraft/class_4877; field_60297 server + f Lnet/minecraft/class_2561; field_60294 TITLE_TEXT + f Lnet/minecraft/class_4388; field_60295 screen + f Lnet/minecraft/class_4185; field_60299 backupButton + f Lnet/minecraft/class_4185; field_60300 resetButton + f Lnet/minecraft/class_4185; field_60298 optionsButton + f Ljava/util/List; field_60301 slotButtons + f Lnet/minecraft/class_310; field_60296 client + m (ILnet/minecraft/class_4185;)V method_71251 method_71251 + p 2 button + m (ILnet/minecraft/class_4877;)V method_71256 createWorld + p 1 slotId + p 2 server + m ()Z method_71259 isMinigame + m (Lnet/minecraft/class_4388;Lnet/minecraft/class_310;Lnet/minecraft/class_4877;)V + p 2 client + p 3 server + p 1 screen + m (Lnet/minecraft/class_310;Lnet/minecraft/class_4388;Lnet/minecraft/class_4877;Lnet/minecraft/class_4185;)V method_71257 method_71257 + p 3 button + m (Lnet/minecraft/class_310;Lnet/minecraft/class_4388;Lnet/minecraft/class_4877;Lnet/minecraft/class_4185;)V method_71254 method_71254 + p 3 button + m (ILnet/minecraft/class_4877;Lnet/minecraft/class_8816;)V method_71250 method_71250 + p 3 popup + m (I)Lnet/minecraft/class_4367; method_71248 createSlotButton + p 1 slotIndex + m (ILnet/minecraft/class_4877;)V method_71249 switchWorld + p 2 server + p 1 slotId + m ()V method_71260 showSwitchMinigameScreen + m (Lnet/minecraft/class_4877;ILnet/minecraft/class_8816;)V method_71252 method_71252 + p 3 popup + m (Lnet/minecraft/class_4890;)V method_71253 switchMinigame + p 1 template + m ()V method_71258 reset + m (Lnet/minecraft/class_4185;)V method_71255 method_71255 + p 1 button +c net/minecraft/class_11323 net/minecraft/client/data/WaypointStyleProvider + f Lnet/minecraft/class_7784$class_7489; field_60304 pathResolver + m (Ljava/util/Map;Lnet/minecraft/class_5321;Lnet/minecraft/class_11326;)V method_71271 method_71271 + p 1 key + p 2 asset + m (Ljava/util/function/BiConsumer;)V method_71272 bootstrap + p 0 waypointStyleBiConsumer + m (Lnet/minecraft/class_7784;)V + p 1 output +c net/minecraft/class_11322 net/minecraft/unused/packageinfo/PackageInfo11322 +c net/minecraft/class_11329 net/minecraft/util/LenientJsonParser + m (Ljava/io/Reader;)Lcom/google/gson/JsonElement; method_71347 parse + p 0 reader + m (Ljava/lang/String;)Lcom/google/gson/JsonElement; method_71348 parse + p 0 json +c net/minecraft/class_11327 net/minecraft/client/resource/waypoint/WaypointStyleAssetManager + f Lnet/minecraft/class_11326; field_60326 MISSING + f Lnet/minecraft/class_7654; field_60325 FINDER + f Ljava/util/Map; field_60327 registry + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_11326; method_71326 get + p 1 key + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_5321; method_71327 method_71327 + p 0 entry + m (Ljava/util/Map;Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)V method_71328 apply +c net/minecraft/class_11326 net/minecraft/client/resource/waypoint/WaypointStyleAsset + f I field_60321 DEFAULT_NEAR_DISTANCE + f Lcom/mojang/serialization/Codec; field_60323 CODEC + f I field_60322 DEFAULT_FAR_DISTANCE + f Lcom/mojang/serialization/Codec; field_60324 DISTANCE_CODEC + f Ljava/util/List; comp_4194 spriteLocations + f Ljava/util/List; comp_4193 sprites + f I comp_4191 nearDistance + f I comp_4192 farDistance + m (IILjava/util/List;)V + p 2 farDistance + p 1 nearDistance + p 3 sprites + m (F)Lnet/minecraft/class_2960; method_71321 getSpriteForDistance + p 1 distance + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_71322 method_71322 + p 0 id + m ()Lcom/mojang/serialization/DataResult; method_71324 validate + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71323 method_71323 + p 0 instance + m ()Ljava/util/List; comp_4194 spriteLocations + m ()Ljava/util/List; comp_4193 sprites + m ()I comp_4191 nearDistance + m ()I comp_4192 farDistance + m (IILjava/util/List;Ljava/util/List;)V + p 1 nearDistance + p 2 farDistance + p 3 sprites + p 4 spriteLocations +c net/minecraft/class_11309 net/minecraft/client/realms/dto/RegionData + f Lnet/minecraft/class_11313; comp_4183 serviceQuality + f Lnet/minecraft/class_11303; comp_4182 region + m ()Lnet/minecraft/class_11313; comp_4183 serviceQuality + m ()Lnet/minecraft/class_11303; comp_4182 region + m (Lnet/minecraft/class_11303;Lnet/minecraft/class_11313;)V + p 1 region + p 2 serviceQuality +c net/minecraft/class_11308 net/minecraft/client/realms/dto/RealmsOptionsDto + f I comp_5013 spawnProtection + f I comp_5015 difficulty + f I comp_5016 gameMode + f I comp_5012 slotId + f Ljava/lang/String; comp_5021 worldTemplateImage + f J comp_5020 worldTemplateId + f Ljava/lang/String; comp_5017 slotName + f Z comp_5014 forceGameMode + f Ljava/lang/String; comp_5018 version + f Z comp_5022 hardcore + f Lnet/minecraft/class_4877$class_8842; comp_5019 compatibility + m ()I comp_5013 spawnProtection + m (ILnet/minecraft/class_4883;Z)V + p 1 slotId + p 2 options + p 3 hardcore + m ()I comp_5015 difficulty + m ()I comp_5016 gameMode + m ()I comp_5012 slotId + m ()Ljava/lang/String; comp_5021 worldTemplateImage + m ()J comp_5020 worldTemplateId + m ()Ljava/lang/String; comp_5017 slotName + m ()Z comp_5014 forceGameMode + m ()Ljava/lang/String; comp_5018 version + m ()Z comp_5022 hardcore + m ()Lnet/minecraft/class_4877$class_8842; comp_5019 compatibility + m (IIZIILjava/lang/String;Ljava/lang/String;Lnet/minecraft/class_4877$class_8842;JLjava/lang/String;Z)V + p 1 slotId + p 2 spawnProtection + p 3 forceGameMode + p 4 difficulty + p 5 gameMode + p 6 slotName + p 7 version + p 8 compatibility + p 9 worldTemplateId + p 11 worldTemplateImage + p 12 hardcore +c net/minecraft/class_11310 net/minecraft/client/realms/dto/RealmsRegionSelectionPreference + f Lnet/minecraft/class_11303; field_60224 preferredRegion + f Lnet/minecraft/class_11311; field_60223 selectionMethod + f Lnet/minecraft/class_11310; field_60222 DEFAULT + m ()Lnet/minecraft/class_11310; method_71188 copy + m (Lnet/minecraft/class_11311;Lnet/minecraft/class_11303;)V + p 2 preferredRegion + p 1 selectionMethod +c net/minecraft/class_11313 net/minecraft/client/realms/ServiceQuality + f I field_60238 index + f Lnet/minecraft/class_2960; field_60239 icon + f Lnet/minecraft/class_11313; field_60236 POOR + f Lnet/minecraft/class_11313; field_60235 OKAY + f Lnet/minecraft/class_11313; field_60234 GOOD + f Lnet/minecraft/class_11313; field_60233 GREAT + f Lnet/minecraft/class_11313; field_60237 UNKNOWN + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 index + p 4 icon + m ()Lnet/minecraft/class_2960; method_71195 getIcon + m ()I method_71193 getIndex + m (I)Lnet/minecraft/class_11313; method_71194 byIndex + p 0 index +c net/minecraft/class_11313$class_11314 net/minecraft/client/realms/ServiceQuality$ServiceQualityTypeAdapter + f Lorg/slf4j/Logger; field_60241 LOGGER + m (Lcom/google/gson/stream/JsonReader;)Lnet/minecraft/class_11313; method_71197 read + m (Lcom/google/gson/stream/JsonWriter;Ljava/lang/Object;)V write write + p 2 serviceQuality + p 1 writer + m (Lcom/google/gson/stream/JsonReader;)Ljava/lang/Object; read read + p 1 reader + m (Lcom/google/gson/stream/JsonWriter;Lnet/minecraft/class_11313;)V method_71198 write +c net/minecraft/class_11311 net/minecraft/client/realms/dto/RegionSelectionMethod + f Lnet/minecraft/class_11311; field_60229 DEFAULT + f Ljava/lang/String; field_60231 translationKey + f I field_60230 index + f Lnet/minecraft/class_11311; field_60226 AUTOMATIC_OWNER + f Lnet/minecraft/class_11311; field_60228 MANUAL + f Lnet/minecraft/class_11311; field_60227 AUTOMATIC_PLAYER + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 index + p 4 translationKey +c net/minecraft/class_11311$class_11312 net/minecraft/client/realms/dto/RegionSelectionMethod$SelectionMethodTypeAdapter + f Lorg/slf4j/Logger; field_60678 LOGGER + m (Lcom/google/gson/stream/JsonReader;)Ljava/lang/Object; read read + p 1 reader + m (Lcom/google/gson/stream/JsonWriter;Ljava/lang/Object;)V write write + p 2 selectionMethod + p 1 writer + m (Lcom/google/gson/stream/JsonWriter;Lnet/minecraft/class_11311;)V method_71192 write + m (Lcom/google/gson/stream/JsonReader;)Lnet/minecraft/class_11311; method_71191 read +c net/minecraft/class_11316 net/minecraft/client/realms/gui/screen/RealmsRegionPreferenceScreen + f Lnet/minecraft/class_11319$class_11320; field_60260 currentRegion + f Lnet/minecraft/class_8132; field_60255 layout + f Ljava/util/function/BiConsumer; field_60257 onRegionChanged + f Lnet/minecraft/class_2561; field_60253 TITLE_TEXT + f Ljava/util/Map; field_60258 availableRegions + f Lnet/minecraft/class_437; field_60256 parent + f Lnet/minecraft/class_4185; field_60261 doneButton + f Lnet/minecraft/class_11316$class_11317; field_60259 regionList + m ()V method_71227 refreshDoneButton + m ()V method_76601 onDone + m (Lnet/minecraft/class_11316$class_11317$class_11318;)Z method_71221 method_71221 + p 1 region + m (Lnet/minecraft/class_4185;)V method_71226 method_71226 + p 1 button + m (Lnet/minecraft/class_437;Ljava/util/function/BiConsumer;Ljava/util/Map;Lnet/minecraft/class_11319$class_11320;)V + p 4 textSupplier + p 3 availableRegions + p 2 onRegionChanged + p 1 parent + m (Lnet/minecraft/class_4185;)V method_71224 method_71224 + p 1 button + m (Lnet/minecraft/class_11316;Lnet/minecraft/class_364;)V method_71223 method_71223 + p 1 child +c net/minecraft/class_11316$class_11317 net/minecraft/client/realms/gui/screen/RealmsRegionPreferenceScreen$RegionListWidget + m (Lnet/minecraft/class_11303;)Lnet/minecraft/class_11316$class_11317$class_11318; method_71228 method_71228 + p 1 region + m (Lnet/minecraft/class_11316$class_11317$class_11318;)V method_71229 setSelected + m (Lnet/minecraft/class_11316$class_11317;Lnet/minecraft/class_350$class_351;)V method_71230 method_71230 + p 1 entry +c net/minecraft/class_11316$class_11317$class_11318 net/minecraft/client/realms/gui/screen/RealmsRegionPreferenceScreen$RegionListWidget$RegionEntry + f Lnet/minecraft/class_2561; field_60265 name + f Lnet/minecraft/class_11319$class_11320; field_60264 region + m (Lnet/minecraft/class_11316$class_11317;Lnet/minecraft/class_11311;Lnet/minecraft/class_11303;)V + p 2 selectionMethod + p 3 region + m (Lnet/minecraft/class_11316$class_11317;Lnet/minecraft/class_11319$class_11320;)V + p 2 region +c net/minecraft/class_11315 net/minecraft/client/realms/gui/screen/tab/RealmsUpdatableTab + m (Lnet/minecraft/class_4877;)V method_71202 onUnloaded + p 1 server + m (Lnet/minecraft/class_4877;)V method_71200 update + p 1 server + m (Lnet/minecraft/class_4877;)V method_71201 onLoaded + p 1 server +c net/minecraft/class_1876 net/minecraft/recipe/TippedArrowRecipe + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_17741 matches + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_17740 craft +c net/minecraft/class_10011 net/minecraft/client/render/entity/state/DisplayEntityRenderState + f F field_53307 yaw + f F field_53306 lerpProgress + f F field_53308 pitch + f F field_63074 cameraPitch + f F field_63073 cameraYaw + f Lnet/minecraft/class_8113$class_8229; field_53305 displayRenderState + m ()Z method_62610 canRender +c net/minecraft/class_11343 net/minecraft/inventory/StackWithSlot + f Lcom/mojang/serialization/Codec; field_60354 CODEC + f I comp_4211 slot + f Lnet/minecraft/class_1799; comp_4212 stack + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71369 method_71369 + p 0 instance + m (I)Z method_71368 isValidSlot + p 1 slots + m ()I comp_4211 slot + m ()Lnet/minecraft/class_1799; comp_4212 stack + m (ILnet/minecraft/class_1799;)V + p 1 slot + p 2 stack +c net/minecraft/class_11342 net/minecraft/datafixer/fix/LegacyDimensionFix + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/Number;)Lcom/mojang/serialization/Dynamic; method_71364 method_71364 + p 1 id + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_71363 fixMap + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_71366 fixPlayer + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_71367 fix + p 1 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_10012 net/minecraft/client/render/entity/state/DolphinEntityRenderState + f Z field_53309 moving +c net/minecraft/class_11341 net/minecraft/util/StrictJsonParser + m (Ljava/lang/String;)Lcom/google/gson/JsonElement; method_71360 parse + p 0 json + m (Ljava/io/Reader;)Lcom/google/gson/JsonElement; method_71359 parse + p 0 reader +c net/minecraft/class_10010 net/minecraft/client/render/entity/state/CreeperEntityRenderState + f F field_53303 fuseTime + f Z field_53304 charged +c net/minecraft/class_10015 net/minecraft/client/render/entity/state/EnderDragonEntityRenderState + f D field_53319 squaredDistanceFromOrigin + f F field_53320 tickProgress + f Lnet/minecraft/class_243; field_53316 crystalBeamPos + f Lnet/minecraft/class_9871; field_53321 frameTracker + f F field_53313 wingPosition + f Z field_53317 inLandingOrTakeoffPhase + f F field_53314 ticksSinceDeath + f Z field_53318 sittingOrHovering + f Z field_53315 hurt + m (I)Lnet/minecraft/class_9871$class_9872; method_62611 getLerpedFrame + p 1 age + m (ILnet/minecraft/class_9871$class_9872;Lnet/minecraft/class_9871$class_9872;)F method_62612 getNeckPartPitchOffset + p 2 bodyFrame + p 3 neckFrame + p 1 id +c net/minecraft/class_10016 net/minecraft/client/render/entity/state/EndermanEntityRenderState + f Z field_53322 angry + f Lnet/minecraft/class_2680; field_53323 carriedBlock +c net/minecraft/class_10013 net/minecraft/client/render/entity/state/DonkeyEntityRenderState + f Z field_53310 hasChest +c net/minecraft/class_10014 net/minecraft/client/render/entity/state/EndCrystalEntityRenderState + f Z field_53311 baseVisible + f Lnet/minecraft/class_243; field_53312 beamOffset +c net/minecraft/class_10019 net/minecraft/client/render/entity/state/LivingHorseEntityRenderState + f Lnet/minecraft/class_1799; field_56119 saddleStack + f Z field_53347 hasPassengers + f F field_53351 eatingAnimationProgress + f Z field_53348 waggingTail + f Lnet/minecraft/class_1799; field_63605 armorStack + f F field_53349 eatingGrassAnimationProgress + f F field_53350 angryAnimationProgress +c net/minecraft/class_10017 net/minecraft/client/render/entity/state/EntityRenderState + f F field_53330 height + f I field_61820 light + f I field_61821 outlineColor + f D field_53332 squaredDistanceToCamera + f Ljava/util/List; field_60160 leashDatas + f Ljava/util/List; field_61823 shadowPieces + f I field_61824 NO_OUTLINE + f F field_53331 standingEyeHeight + f F field_61822 shadowRadius + f Lnet/minecraft/class_1299; field_58171 entityType + f Z field_53333 invisible + f Z field_53334 sneaking + f Lnet/minecraft/class_2561; field_53337 displayName + f Z field_53335 onFire + f Lnet/minecraft/class_243; field_53338 nameLabelPos + f D field_53325 x + f Lnet/minecraft/class_243; field_53336 positionOffset + f D field_53326 y + f F field_53328 age + f D field_53327 z + f F field_53329 width + m (Lnet/minecraft/class_129;)V method_68839 addCrashReportDetails + p 1 crashReportSection + m ()Z method_72997 hasOutline +c net/minecraft/class_10017$class_11680 net/minecraft/client/render/entity/state/EntityRenderState$ShadowPiece + f Lnet/minecraft/class_265; comp_4549 shapeBelow + f F comp_4548 relativeZ + f F comp_4547 relativeY + f F comp_4546 relativeX + f F comp_4550 alpha + m ()F comp_4548 relativeZ + m ()Lnet/minecraft/class_265; comp_4549 shapeBelow + m ()F comp_4547 relativeY + m ()F comp_4546 relativeX + m ()F comp_4550 alpha + m (FFFLnet/minecraft/class_265;F)V + p 1 relativeX + p 2 relativeY + p 3 relativeZ + p 4 shapeBelow + p 5 alpha +c net/minecraft/class_10017$class_10018 net/minecraft/client/render/entity/state/EntityRenderState$LeashData + f Z field_60161 slack + f Lnet/minecraft/class_243; field_53339 offset + f Lnet/minecraft/class_243; field_53340 startPos + f I field_53343 leashHolderBlockLight + f Lnet/minecraft/class_243; field_53341 endPos + f I field_53342 leashedEntityBlockLight + f I field_53345 leashHolderSkyLight + f I field_53344 leashedEntitySkyLight +c net/minecraft/class_1890 net/minecraft/enchantment/EnchantmentHelper + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;I)I method_60117 getItemDamage + p 2 baseItemDamage + p 0 world + p 1 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;I)I method_60157 getBlockExperience + p 0 world + p 1 stack + p 2 baseBlockExperience + m (Lnet/minecraft/class_1889;)Lnet/minecraft/class_1799; method_61711 getEnchantedBookWith + p 0 entry + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_9331;)Z method_60142 hasAnyEnchantmentsWith + p 0 stack + p 1 componentType + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lnet/minecraft/class_6880;ILnet/minecraft/class_9699;)V method_63017 method_63017 + p 3 enchantment + p 4 level + p 5 context + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;ILnet/minecraft/class_9699;)V method_60110 method_60110 + p 5 context + p 4 level + p 3 enchantment + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;F)F method_60118 getProjectileSpread + p 2 user + p 3 baseProjectileSpread + p 0 world + p 1 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1282;)Z method_60112 isInvulnerableTo + p 2 damageSource + p 1 user + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60181 method_60181 + p 4 level + p 3 enchantment + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60179 method_60179 + p 5 level + p 4 enchantment + m (Lnet/minecraft/class_5819;IILnet/minecraft/class_1799;)I method_8227 calculateRequiredExperienceLevel + c {@return the required experience level for an enchanting option in the\nenchanting table's screen, or the enchantment screen} + p 2 bookshelfCount + c the number of bookshelves + p 3 stack + c the item stack to enchant + p 0 random + c the random, which guarantees consistent results with the same seed + p 1 slotIndex + c the index of the enchanting option + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)I method_60128 getProjectilePiercing + p 0 world + p 1 weaponStack + p 2 projectileStack + m (Lnet/minecraft/class_47;Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/class_5819;Lnet/minecraft/class_9710;)V method_60166 method_60166 + p 4 effect + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;I)I method_60109 getMobExperience + p 1 attacker + p 2 mob + p 0 world + p 3 baseMobExperience + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;ILnet/minecraft/class_9699;)V method_75256 method_75256 + p 4 context + p 3 level + p 2 enchantment + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_6880;ILnet/minecraft/class_9699;)V method_60164 method_60164 + p 1 enchantment + p 2 level + p 3 context + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1890$class_1891;)V method_8220 forEachEnchantment + p 0 stack + p 1 consumer + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9699;Lnet/minecraft/class_1297;Lnet/minecraft/class_243;Lnet/minecraft/class_2680;Lnet/minecraft/class_6880;I)V method_60131 method_60131 + p 6 level + p 5 enchantment + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_9304;)V method_57530 set + p 0 stack + p 1 enchantments + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_6880;ILnet/minecraft/class_9699;)V method_60136 method_60136 + p 2 level + p 3 context + p 1 enchantment + m (Ljava/util/Collection;Lnet/minecraft/class_6880;)Z method_8201 isCompatible + c {@return whether the {@code candidate} enchantment is compatible with the\n{@code existing} enchantments} + p 0 existing + p 1 candidate + m (Lnet/minecraft/class_1799;ZLnet/minecraft/class_6880;)Z method_60143 method_60143 + p 2 enchantment + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60180 method_60180 + p 4 level + p 3 enchantment + m (Lnet/minecraft/class_1309;)V method_60135 removeLocationBasedEffects + p 0 user + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_6880;ILnet/minecraft/class_9699;)V method_60167 method_60167 + p 2 enchantment + p 3 level + p 4 context + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60176 method_60176 + p 5 enchantment + p 6 level + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lnet/minecraft/class_6880;ILnet/minecraft/class_9699;)V method_63019 method_63019 + p 3 enchantment + p 4 level + p 5 context + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1304;Ljava/util/function/BiConsumer;ILnet/minecraft/class_9720;)V method_60148 method_60148 + p 4 effect + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60171 method_60171 + p 5 enchantment + p 6 level + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;F)F method_60160 getSmashDamagePerFallenBlock + p 0 world + p 1 stack + p 2 target + p 3 damageSource + p 4 baseSmashDamagePerFallenBlock + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;F)F method_60120 getDamage + p 1 stack + p 0 world + p 4 baseDamage + p 3 damageSource + p 2 target + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1282;)F method_8219 getProtectionAmount + p 0 world + p 2 damageSource + p 1 user + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;Lnet/minecraft/class_1304;)V method_60125 applyLocationBasedEffects + p 1 stack + p 0 world + p 3 slot + p 2 user + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_1799;ILjava/util/stream/Stream;)Ljava/util/List; method_8230 generateEnchantments + c Generate the enchantments for enchanting the {@code stack}. + p 3 possibleEnchantments + p 1 stack + p 2 level + p 0 random + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1282;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_5819;Lnet/minecraft/class_6880;ILnet/minecraft/class_9699;)V method_60155 method_60155 + p 6 level + p 7 context + p 5 enchantment + m (Lnet/minecraft/class_9274;Ljava/util/function/BiConsumer;Lnet/minecraft/class_6880;I)V method_60621 method_60621 + p 3 level + p 2 enchantment + m (Lnet/minecraft/class_9741;Lnet/minecraft/class_1799;Lnet/minecraft/class_5819;Lnet/minecraft/class_1266;Lnet/minecraft/class_9304$class_9305;)V method_60145 method_60145 + p 4 componentBuilder + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1799;)I method_8225 getLevel + c Gets the level of an enchantment on an item stack. + p 1 stack + p 0 enchantment + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60177 method_60177 + p 4 enchantment + p 5 level + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_9274;Ljava/util/function/BiConsumer;)V method_60622 applyAttributeModifiers + p 1 slot + p 0 stack + p 2 attributeModifierConsumer + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1676;Ljava/util/function/Consumer;)V method_60127 onProjectileSpawned + p 3 onBreak + p 1 weaponStack + p 2 projectile + p 0 world + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_9274;Ljava/util/function/BiConsumer;ILnet/minecraft/class_9720;)V method_60623 method_60623 + p 4 effect + m (ILjava/util/List;Lnet/minecraft/class_6880;)V method_60106 method_60106 + p 2 enchantmentx + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1304;Lnet/minecraft/class_1309;Lnet/minecraft/class_1890$class_9702;)V method_60139 forEachEnchantment + p 0 stack + p 1 slot + p 2 entity + p 3 contextAwareConsumer + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;Lnet/minecraft/class_1297;Lnet/minecraft/class_1304;Lnet/minecraft/class_243;Lnet/minecraft/class_2680;Ljava/util/function/Consumer;)V method_60124 onHitBlock + p 0 world + p 3 enchantedEntity + p 4 slot + p 1 stack + p 2 user + p 7 onBreak + p 5 pos + p 6 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;)F method_60158 getFishingTimeReduction + p 0 world + p 1 stack + p 2 user + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_5455;Lnet/minecraft/class_5321;Lnet/minecraft/class_1266;Lnet/minecraft/class_5819;)V method_60137 applyEnchantmentProvider + p 4 random + p 2 providerKey + p 3 localDifficulty + p 0 stack + p 1 registryManager + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60178 method_60178 + p 4 level + p 3 enchantment + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60161 method_60161 + p 5 enchantment + p 6 level + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;F)F method_60170 getArmorEffectiveness + p 0 world + p 2 user + p 1 stack + p 4 baseArmorEffectiveness + p 3 damageSource + m (Lnet/minecraft/class_47;Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/class_5819;Lnet/minecraft/class_9710;)V method_60146 method_60146 + p 4 effect + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_9331;)Ljava/util/Optional; method_60165 getEffect + p 1 componentType + p 0 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1282;F)F method_60113 getEquipmentDropChance + p 0 world + p 1 attacker + p 2 damageSource + p 3 baseEquipmentDropChance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9699;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lnet/minecraft/class_6880;I)V method_63018 method_63018 + p 5 level + p 4 enchantment + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;)I method_60169 getTridentReturnAcceleration + p 2 user + p 1 stack + p 0 world + m (Lnet/minecraft/class_1889;Lnet/minecraft/class_1889;)Z method_60144 method_60144 + p 1 entry + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;I)I method_60119 getProjectileCount + p 3 baseProjectileCount + p 1 stack + p 2 user + p 0 world + m (Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/class_9331;Lnet/minecraft/class_6880;I)V method_60152 method_60152 + p 2 enchantment + p 3 level + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60173 method_60173 + p 4 level + p 3 enchantment + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_1799;ILnet/minecraft/class_5455;Ljava/util/Optional;)Lnet/minecraft/class_1799; method_60133 enchant + p 2 level + p 3 dynamicRegistryManager + p 0 random + p 1 stack + p 4 enchantments + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60121 method_60121 + p 5 enchantment + p 6 level + m (Ljava/util/List;Lnet/minecraft/class_1889;)V method_8231 removeConflicts + c Remove entries conflicting with the picked entry from the possible\nentries. + p 0 possibleEntries + c the possible entries + p 1 pickedEntry + c the picked entry + m (Lnet/minecraft/class_1304;Ljava/util/function/BiConsumer;Lnet/minecraft/class_6880;I)V method_60134 method_60134 + p 3 level + p 2 enchantment + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lnet/minecraft/class_1799;Ljava/util/function/Consumer;)V method_63016 onTargetDamaged + p 2 damageSource + p 1 target + p 0 world + p 4 breakCallback + p 3 weapon + m (Lnet/minecraft/class_1799;)Z method_57529 canHaveEnchantments + p 0 stack + m (ILnet/minecraft/class_1799;Ljava/util/stream/Stream;)Ljava/util/List; method_8229 getPossibleEntries + c Gets all the possible entries for enchanting the {@code stack} at the\ngiven {@code power}. + p 0 level + p 1 stack + p 2 possibleEnchantments + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)V method_60111 applyLocationBasedEffects + p 0 world + p 1 user + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1282;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_5819;Lnet/minecraft/class_6880;ILnet/minecraft/class_9699;)V method_60114 method_60114 + p 5 enchantment + p 6 level + p 7 context + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60162 method_60162 + p 5 level + p 4 enchantment + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60122 method_60122 + p 4 enchantment + p 5 level + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_6862;)Z method_60138 hasAnyEnchantmentsIn + p 1 tag + p 0 stack + m (Lnet/minecraft/class_1799;)Z method_58117 hasEnchantments + p 0 stack + m (Lnet/minecraft/class_1799;Ljava/util/function/Consumer;)Lnet/minecraft/class_9304; method_57531 apply + p 0 stack + p 1 applier + m (Lnet/minecraft/class_1309;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60126 method_60126 + p 2 enchantment + p 3 level + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;Lnet/minecraft/class_1304;)V method_60141 removeLocationBasedEffects + p 2 slot + p 1 user + p 0 stack + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;F)F method_60159 getCrossbowChargeTime + p 2 baseCrossbowChargeTime + p 1 user + p 0 stack + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1282;Lnet/minecraft/class_6880;ILnet/minecraft/class_9699;)V method_60151 method_60151 + p 6 context + p 5 level + p 4 enchantment + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_1799;ILjava/util/stream/Stream;)Lnet/minecraft/class_1799; method_8233 enchant + c Enchants the {@code target} item stack and returns it. + p 0 random + p 3 possibleEnchantments + p 1 stack + p 2 level + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)V method_60154 onTick + p 1 user + p 0 world + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_1309;Ljava/util/function/Predicate;)Ljava/util/Optional; method_8204 chooseEquipmentWith + c {@return a pair of an equipment slot and the item stack in the supplied\nentity's slot} It indicates the item stack has the enchantment supplied.\n\n

If multiple equipment slots' item stacks are valid, a random pair is\nreturned. + p 1 entity + p 0 componentType + p 2 stackPredicate + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;)V method_60107 onTargetDamaged + p 1 target + p 2 damageSource + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9699;Lnet/minecraft/class_1676;Lnet/minecraft/class_6880;I)V method_60132 method_60132 + p 4 level + p 3 enchantment + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60163 method_60163 + p 3 enchantment + p 4 level + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lnet/minecraft/class_1799;)V method_60619 onTargetDamaged + p 1 target + p 2 damageSource + p 0 world + p 3 weapon + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)V method_75255 onAttack + p 0 world + p 1 attacker + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_6880;ILnet/minecraft/class_9699;)V method_60116 method_60116 + p 4 context + p 3 level + p 2 enchantment + m (Lnet/minecraft/class_1309;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60130 method_60130 + p 3 level + p 2 enchantment + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_9331;)Lcom/mojang/datafixers/util/Pair; method_60174 getHighestLevelEffect + p 1 componentType + p 0 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_6880;ILnet/minecraft/class_9699;)V method_60156 method_60156 + p 4 context + p 3 level + p 2 enchantment + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1282;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;ILnet/minecraft/class_9699;)V method_60115 method_60115 + p 4 enchantment + p 6 context + p 5 level + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;I)I method_60168 getRepairWithExperience + p 0 world + p 1 stack + p 2 baseRepairWithExperience + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1304;Ljava/util/function/BiConsumer;)V method_60140 applyAttributeModifiers + p 2 attributeModifierConsumer + p 1 slot + p 0 stack + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_9331; method_57533 getEnchantmentsComponentType + p 0 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;F)F method_60175 modifyKnockback + p 3 damageSource + p 2 target + p 4 baseKnockback + p 1 stack + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;I)I method_60129 getAmmoUse + p 3 baseAmmoUse + p 1 rangedWeaponStack + p 2 projectileStack + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;)I method_8223 getFishingLuckBonus + p 2 user + p 1 stack + p 0 world + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;)F method_60123 getTridentSpinAttackStrength + p 1 user + p 0 stack + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1309;)I method_8203 getEquipmentLevel + c {@return the highest level of the passed enchantment in the enchantment's\napplicable equipment slots' item stacks} + p 0 enchantment + p 1 entity + c the entity whose equipment slots are checked + m (Lnet/minecraft/class_9331;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/class_6880;I)V method_60150 method_60150 + p 2 enchantment + p 3 level + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/class_6880;I)V method_60172 method_60172 + p 4 enchantment + p 5 level + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_9304; method_57532 getEnchantments + p 0 stack + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1890$class_9702;)V method_8209 forEachEnchantment + p 1 contextAwareConsumer + p 0 entity +c net/minecraft/class_1890$class_9702 net/minecraft/enchantment/EnchantmentHelper$ContextAwareConsumer + m (Lnet/minecraft/class_6880;ILnet/minecraft/class_9699;)V accept accept + p 2 level + p 3 context + p 1 enchantment +c net/minecraft/class_1890$class_1891 net/minecraft/enchantment/EnchantmentHelper$Consumer + m (Lnet/minecraft/class_6880;I)V accept accept + p 2 level + p 1 enchantment +c net/minecraft/class_1893 net/minecraft/enchantment/Enchantments + f Lnet/minecraft/class_5321; field_23071 SOUL_SPEED + f Lnet/minecraft/class_5321; field_63420 LUNGE + f Lnet/minecraft/class_5321; field_38223 SWIFT_SNEAK + f Lnet/minecraft/class_5321; field_9095 FIRE_PROTECTION + f Lnet/minecraft/class_5321; field_9096 PROJECTILE_PROTECTION + f Lnet/minecraft/class_5321; field_9097 THORNS + f Lnet/minecraft/class_5321; field_9098 QUICK_CHARGE + f Lnet/minecraft/class_5321; field_9099 SILK_TOUCH + f Lnet/minecraft/class_5321; field_9125 INFINITY + f Lnet/minecraft/class_5321; field_9126 FLAME + f Lnet/minecraft/class_5321; field_9127 RESPIRATION + f Lnet/minecraft/class_5321; field_9128 DEPTH_STRIDER + f Lnet/minecraft/class_5321; field_9129 FEATHER_FALLING + f Lnet/minecraft/class_5321; field_9130 FORTUNE + f Lnet/minecraft/class_5321; field_9131 EFFICIENCY + f Lnet/minecraft/class_5321; field_9132 PIERCING + f Lnet/minecraft/class_5321; field_9101 MENDING + f Lnet/minecraft/class_5321; field_9103 POWER + f Lnet/minecraft/class_5321; field_9104 RIPTIDE + f Lnet/minecraft/class_5321; field_9105 AQUA_AFFINITY + f Lnet/minecraft/class_5321; field_9106 IMPALING + f Lnet/minecraft/class_5321; field_9107 BLAST_PROTECTION + f Lnet/minecraft/class_5321; field_9108 MULTISHOT + f Lnet/minecraft/class_5321; field_9109 VANISHING_CURSE + f Lnet/minecraft/class_5321; field_9110 LOOTING + f Lnet/minecraft/class_5321; field_9111 PROTECTION + f Lnet/minecraft/class_5321; field_9112 BANE_OF_ARTHROPODS + f Lnet/minecraft/class_5321; field_9113 BINDING_CURSE + f Lnet/minecraft/class_5321; field_9114 LUCK_OF_THE_SEA + f Lnet/minecraft/class_5321; field_9115 SWEEPING_EDGE + f Lnet/minecraft/class_5321; field_9116 PUNCH + f Lnet/minecraft/class_5321; field_9117 CHANNELING + f Lnet/minecraft/class_5321; field_9118 SHARPNESS + f Lnet/minecraft/class_5321; field_9119 UNBREAKING + f Lnet/minecraft/class_5321; field_9120 LOYALTY + f Lnet/minecraft/class_5321; field_9121 KNOCKBACK + f Lnet/minecraft/class_5321; field_9122 FROST_WALKER + f Lnet/minecraft/class_5321; field_9123 SMITE + f Lnet/minecraft/class_5321; field_9124 FIRE_ASPECT + f Lnet/minecraft/class_5321; field_50159 WIND_BURST + f Lnet/minecraft/class_5321; field_50157 DENSITY + f Lnet/minecraft/class_5321; field_50158 BREACH + f Lnet/minecraft/class_5321; field_9100 LURE + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_1887$class_9700;)V method_8235 register + p 0 registry + p 2 builder + p 1 key + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_60183 of + p 0 id + m (Lnet/minecraft/class_7891;)V method_60184 bootstrap + p 0 registry +c net/minecraft/class_1889 net/minecraft/enchantment/EnchantmentLevelEntry + c Represents an entry in an enchantments array, i.e. a pair between\nenchantment and level. This is also a weighted entry and is available\nfor the weighted picker to pick from a list.\n\n

This is usually used where multiple enchantment to level mappings can\nexist, such as in enchanting logic. In other cases, vanilla prefers\n{@code Map} over {@code List}.\n\n

This class is immutable. It does not override hashCode or equals. + f I comp_3487 level + f Lnet/minecraft/class_6880; comp_3486 enchantment + m (Lnet/minecraft/class_6880;I)V + p 2 level + p 1 enchantment + m ()I method_66344 getWeight + m ()I comp_3487 level + m ()Lnet/minecraft/class_6880; comp_3486 enchantment +c net/minecraft/class_1887 net/minecraft/enchantment/Enchantment + f Lcom/mojang/serialization/Codec; field_51644 ENTRY_CODEC + f Lnet/minecraft/class_9139; field_51950 ENTRY_PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_51643 CODEC + f I field_51949 MAX_LEVEL + f Lnet/minecraft/class_2561; comp_2686 description + f Lnet/minecraft/class_9323; comp_2689 effects + f Lnet/minecraft/class_6885; comp_2688 exclusiveSet + f Lnet/minecraft/class_1887$class_9427; comp_2687 definition + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_9699;Lnet/minecraft/class_1309;)V method_60025 applyLocationBasedEffects + p 4 user + p 3 context + p 2 level + p 1 world + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60037 modifyValue + p 5 value + p 4 stack + p 3 level + p 2 world + p 1 type + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60018 modifyDamageProtection + p 1 world + p 2 level + p 3 stack + p 4 user + p 5 damageSource + p 6 damageProtection + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60042 modifyTridentReturnAcceleration + p 1 world + p 5 tridentReturnAcceleration + p 4 user + p 3 stack + p 2 level + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60056 modifyRepairWithExperience + p 1 world + p 3 stack + p 2 level + p 4 repairWithExperience + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_9699;Lnet/minecraft/class_1297;Lnet/minecraft/class_9721;)V method_75252 method_75252 + p 4 effect + m (ILnet/minecraft/class_9699;Lnet/minecraft/class_1309;)V method_60013 removeLocationBasedEffects + p 1 level + p 2 context + p 3 user + m (Lnet/minecraft/class_1309;)Ljava/util/Map; method_8185 getEquipment + p 1 entity + m (Lnet/minecraft/class_1799;)Z method_58444 isPrimaryItem + p 1 stack + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;)Z method_60033 canBeCombined + p 0 first + p 1 second + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1297;Lnet/minecraft/class_243;)Lnet/minecraft/class_47; method_60015 createEnchantedEntityLootContext + p 0 world + p 3 pos + p 2 entity + p 1 level + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60059 modifyProjectileSpread + p 4 user + p 5 projectileSpread + p 1 world + p 2 level + p 3 stack + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60020 modifyItemDamage + p 1 world + p 2 level + p 3 stack + p 4 itemDamage + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60054 modifyArmorEffectiveness + p 6 armorEffectiveness + p 4 user + p 5 damageSource + p 2 level + p 3 stack + p 1 world + m (Lnet/minecraft/class_6880;I)Lnet/minecraft/class_2561; method_8179 getName + p 0 enchantment + p 1 level + m ()I method_58446 getAnvilCost + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60019 modifyMobExperience + p 2 level + p 3 stack + p 1 world + p 4 user + p 5 mobExperience + m (Lnet/minecraft/class_6885;Lnet/minecraft/class_6885;IILnet/minecraft/class_1887$class_9426;Lnet/minecraft/class_1887$class_9426;I[Lnet/minecraft/class_9274;)Lnet/minecraft/class_1887$class_9427; method_58443 definition + p 2 weight + p 3 maxLevel + p 4 minCost + p 5 maxCost + p 6 anvilCost + p 7 slots + p 0 supportedItems + p 1 primaryItems + m (Lnet/minecraft/class_9699;Lnet/minecraft/class_1309;ILnet/minecraft/class_9722;)V method_60029 method_60029 + p 3 effect + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60036 modifyValue + p 2 world + p 1 type + p 4 stack + p 3 level + p 6 value + p 5 user + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;)Lnet/minecraft/class_47; method_60017 createEnchantedItemLootContext + p 0 world + p 1 level + p 2 stack + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_9699;Lnet/minecraft/class_1297;)V method_60021 onTick + p 1 world + p 2 level + p 3 context + p 4 user + m (Lnet/minecraft/class_1304;Lnet/minecraft/class_9274;)Z method_60027 method_60027 + p 1 slotx + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60055 modifyFishingLuckBonus + p 4 user + p 5 fishingLuckBonus + p 1 world + p 2 level + p 3 stack + m (Lnet/minecraft/class_1799;)Z method_60046 isSupportedItem + p 1 stack + m ()Lnet/minecraft/class_6885; method_56109 getApplicableItems + m (I)Lnet/minecraft/class_1887$class_9426; method_58440 constantCost + p 0 base + m (Ljava/util/List;Lnet/minecraft/class_47;Ljava/util/function/Consumer;)V method_60032 applyEffects + p 0 entries + p 1 lootContext + p 2 effectConsumer + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_5819;ILorg/apache/commons/lang3/mutable/MutableFloat;)V method_60506 modifyValue + p 1 type + p 2 random + p 3 level + p 4 value + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_9699;Lnet/minecraft/class_9703;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;)V method_8189 onTargetDamaged + p 1 world + p 6 damageSource + p 4 target + p 5 user + p 2 level + p 3 context + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_9699;Lnet/minecraft/class_1297;)V method_75251 onPiercingAttack + p 2 level + p 3 context + p 4 attacker + p 1 world + m ()I method_8183 getMaxLevel + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60041 modifyDamage + p 6 damage + p 1 world + p 4 user + p 5 damageSource + p 2 level + p 3 stack + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60043 modifyAmmoUse + p 1 world + p 3 projectileStack + p 2 level + p 4 ammoUse + m (Lnet/minecraft/class_5819;ILorg/apache/commons/lang3/mutable/MutableFloat;)V method_60058 modifyCrossbowChargeTime + p 1 random + p 2 level + p 3 crossbowChargeTime + m ()I method_8187 getMinLevel + m ()I method_58445 getWeight + m (Lnet/minecraft/class_9331;)Ljava/util/List; method_60034 getEffect + p 1 type + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60052 modifyFishingTimeReduction + p 1 world + p 2 level + p 3 stack + p 4 user + p 5 fishingTimeReduction + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60035 modifyValue + p 7 value + p 1 type + p 2 world + p 3 level + p 4 stack + p 5 user + p 6 damageSource + m (Lnet/minecraft/class_1304;)Z method_60026 slotMatches + p 1 slot + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_9699;Lnet/minecraft/class_1297;)V method_60044 onProjectileSpawned + p 1 world + p 3 context + p 2 level + p 4 user + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_9699;Lnet/minecraft/class_1297;Lnet/minecraft/class_243;Lnet/minecraft/class_2680;)V method_60023 onHitBlock + p 5 pos + p 4 enchantedEntity + p 6 state + p 1 world + p 3 context + p 2 level + m (Lnet/minecraft/class_1799;)Z method_8192 isAcceptableItem + p 1 stack + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/class_1297;Lnet/minecraft/class_9723;)V method_60039 method_60039 + p 3 effect + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_9699;Lnet/minecraft/class_1297;Lnet/minecraft/class_9721;)V method_60045 method_60045 + p 4 effect + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/class_1297;Lnet/minecraft/class_9723;)V method_60047 method_60047 + p 3 effect + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_9699;Lnet/minecraft/class_1297;Lnet/minecraft/class_243;Lnet/minecraft/class_9721;)V method_60024 method_60024 + p 5 effect + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60057 modifyProjectileCount + p 2 level + p 3 stack + p 4 user + p 5 projectileCount + p 1 world + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1297;Lnet/minecraft/class_1282;)Z method_60014 hasDamageImmunityTo + p 4 damageSource + p 3 user + p 2 level + p 1 world + m (Lnet/minecraft/class_5819;ILorg/apache/commons/lang3/mutable/MutableFloat;)V method_60049 modifyTridentSpinAttackStrength + p 1 random + p 2 level + p 3 tridentSpinAttackStrength + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60050 modifyProjectilePiercing + p 4 projectilePiercing + p 1 world + p 3 stack + p 2 level + m (I)I method_8182 getMinPower + p 1 level + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60048 modifySmashDamagePerFallenBlock + p 1 world + p 2 level + p 5 damageSource + p 6 smashDamagePerFallenBlock + p 3 stack + p 4 user + m (Lnet/minecraft/class_9710;Lnet/minecraft/class_3218;ILnet/minecraft/class_9699;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;)V method_60031 applyTargetedEffect + p 5 damageSource + p 4 user + p 3 context + p 2 level + p 1 world + p 0 effect + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1297;Lnet/minecraft/class_243;Lnet/minecraft/class_2680;)Lnet/minecraft/class_47; method_60768 createHitBlockLootContext + p 1 level + p 0 world + p 3 pos + p 2 entity + p 4 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60028 method_60028 + p 0 instance + m (II)Lnet/minecraft/class_1887$class_9426; method_58441 leveledCost + p 0 base + p 1 perLevel + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_9699;Lnet/minecraft/class_1297;Lnet/minecraft/class_9721;)V method_60022 method_60022 + p 4 effect + m (Lnet/minecraft/class_1887$class_9427;)Lnet/minecraft/class_1887$class_9700; method_60030 builder + p 0 definition + m (I)I method_20742 getMaxPower + p 1 level + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/class_3218;Lnet/minecraft/class_9723;)V method_60038 method_60038 + p 3 effect + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1297;Lnet/minecraft/class_1282;)Lnet/minecraft/class_47; method_60040 createEnchantedDamageLootContext + p 0 world + p 3 damageSource + p 1 level + p 2 entity + m (Lnet/minecraft/class_6885;IILnet/minecraft/class_1887$class_9426;Lnet/minecraft/class_1887$class_9426;I[Lnet/minecraft/class_9274;)Lnet/minecraft/class_1887$class_9427; method_58442 definition + p 6 slots + p 5 anvilCost + p 4 maxCost + p 3 minCost + p 2 maxLevel + p 1 weight + p 0 supportedItems + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60051 modifyKnockback + p 1 world + p 2 level + p 5 damageSource + p 6 knockback + p 3 stack + p 4 user + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1799;Lorg/apache/commons/lang3/mutable/MutableFloat;)V method_60053 modifyBlockExperience + p 2 level + p 1 world + p 4 blockExperience + p 3 stack + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_1297;Z)Lnet/minecraft/class_47; method_60016 createEnchantedLocationLootContext + p 3 enchantmentActive + p 2 entity + p 1 level + p 0 world + m ()Lnet/minecraft/class_9323; comp_2689 effects + m ()Lnet/minecraft/class_1887$class_9427; comp_2687 definition + m ()Lnet/minecraft/class_6885; comp_2688 exclusiveSet + m ()Lnet/minecraft/class_2561; comp_2686 description + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_1887$class_9427;Lnet/minecraft/class_6885;Lnet/minecraft/class_9323;)V + p 1 description + p 2 definition + p 3 exclusiveSet + p 4 effects +c net/minecraft/class_1887$class_9427 net/minecraft/enchantment/Enchantment$Definition + f Lcom/mojang/serialization/MapCodec; field_51650 CODEC + f Lnet/minecraft/class_1887$class_9426; comp_2510 minCost + f Lnet/minecraft/class_1887$class_9426; comp_2511 maxCost + f Ljava/util/Optional; comp_2507 primaryItems + f I comp_2512 anvilCost + f I comp_2509 maxLevel + f I comp_2508 weight + f Lnet/minecraft/class_6885; comp_2506 supportedItems + f Ljava/util/List; comp_2513 slots + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60072 method_60072 + p 0 instance + m ()Ljava/util/Optional; comp_2507 primaryItems + m ()Lnet/minecraft/class_1887$class_9426; comp_2511 maxCost + m ()Lnet/minecraft/class_1887$class_9426; comp_2510 minCost + m ()I comp_2512 anvilCost + m ()Lnet/minecraft/class_6885; comp_2506 supportedItems + m ()I comp_2509 maxLevel + m ()I comp_2508 weight + m ()Ljava/util/List; comp_2513 slots + m (Lnet/minecraft/class_6885;Ljava/util/Optional;IILnet/minecraft/class_1887$class_9426;Lnet/minecraft/class_1887$class_9426;ILjava/util/List;)V + p 1 supportedItems + p 2 primaryItems + p 3 weight + p 4 maxLevel + p 5 minCost + p 6 maxCost + p 7 anvilCost + p 8 slots +c net/minecraft/class_1887$class_9426 net/minecraft/enchantment/Enchantment$Cost + f Lcom/mojang/serialization/Codec; field_51649 CODEC + f I comp_2690 perLevelAboveFirst + f I comp_2504 base + m (I)I method_58447 forLevel + p 1 level + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60071 method_60071 + p 0 instance + m ()I comp_2690 perLevelAboveFirst + m ()I comp_2504 base + m (II)V + p 1 base + p 2 perLevelAboveFirst +c net/minecraft/class_1887$class_9700 net/minecraft/enchantment/Enchantment$Builder + f Ljava/util/Map; field_51647 effectLists + f Lnet/minecraft/class_6885; field_51646 exclusiveSet + f Lnet/minecraft/class_1887$class_9427; field_51645 definition + f Lnet/minecraft/class_9323$class_9324; field_51648 effectMap + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_9703;Lnet/minecraft/class_9703;Ljava/lang/Object;Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_1887$class_9700; method_60064 addEffect + p 1 type + p 3 affected + p 2 enchanted + p 5 requirements + p 4 effect + m (Lnet/minecraft/class_9331;)Ljava/util/List; method_60069 getEffectsList + p 1 type + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_9331;)Ljava/util/List; method_60068 method_60068 + p 2 type + m (Lnet/minecraft/class_9331;)Lnet/minecraft/class_1887$class_9700; method_60062 addEffect + p 1 type + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Lnet/minecraft/class_1887$class_9700; method_60070 addNonListEffect + p 1 type + p 2 effect + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_9720;)Lnet/minecraft/class_1887$class_9700; method_60065 addEffect + p 2 effect + p 1 type + m (Lnet/minecraft/class_1887$class_9427;)V + p 1 properties + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Lnet/minecraft/class_1887$class_9700; method_60066 addEffect + p 1 effectType + p 2 effect + m (Lnet/minecraft/class_9331;Ljava/lang/Object;Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_1887$class_9700; method_60067 addEffect + p 3 requirements + p 1 effectType + p 2 effect + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1887; method_60060 build + p 1 id + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_9703;Lnet/minecraft/class_9703;Ljava/lang/Object;)Lnet/minecraft/class_1887$class_9700; method_60063 addEffect + p 4 effect + p 3 affected + p 2 enchanted + p 1 type + m (Lnet/minecraft/class_6885;)Lnet/minecraft/class_1887$class_9700; method_60061 exclusiveSet + p 1 exclusiveSet +c net/minecraft/class_10000 net/minecraft/client/render/entity/state/AxolotlEntityRenderState + f F field_53262 isMovingValue + f F field_53261 playingDeadValue + f Lnet/minecraft/class_5762$class_5767; field_53260 variant + f F field_53264 onGroundValue + f F field_53263 inWaterValue +c net/minecraft/class_10001 net/minecraft/client/render/entity/state/BatEntityRenderState + f Z field_53265 roosting + f Lnet/minecraft/class_7094; field_53266 flyingAnimationState + f Lnet/minecraft/class_7094; field_53267 roostingAnimationState +c net/minecraft/class_10004 net/minecraft/client/render/entity/state/BoatEntityRenderState + f I field_53275 damageWobbleSide + f F field_53282 rightPaddleAngle + f F field_53281 leftPaddleAngle + f F field_53277 damageWobbleStrength + f F field_53276 damageWobbleTicks + f Z field_53279 submergedInWater + f F field_53274 yaw + f F field_53278 bubbleWobble +c net/minecraft/class_10005 net/minecraft/client/render/entity/state/BoggedEntityRenderState + f Z field_53283 sheared +c net/minecraft/class_10002 net/minecraft/client/render/entity/state/BeeEntityRenderState + f Z field_53272 hasNectar + f F field_53268 bodyPitch + f Z field_53269 hasStinger + f Z field_53271 angry + f Z field_53270 stoppedOnGround +c net/minecraft/class_10003 net/minecraft/client/render/entity/state/BlockDisplayEntityRenderState + f Lnet/minecraft/class_8113$class_8115$class_8225; field_53273 data +c net/minecraft/class_10008 net/minecraft/client/render/entity/state/CatEntityRenderState + f Lnet/minecraft/class_1767; field_53299 collarColor + f Z field_53298 nearSleepingPlayer + f Lnet/minecraft/class_2960; field_53297 texture + f Lnet/minecraft/class_2960; field_53300 DEFAULT_TEXTURE +c net/minecraft/class_10009 net/minecraft/client/render/entity/state/ChickenEntityRenderState + f F field_53302 maxWingDeviation + f F field_53301 flapProgress + f Lnet/minecraft/class_10756; field_56594 variant +c net/minecraft/class_10006 net/minecraft/client/render/entity/state/BreezeEntityRenderState + f Lnet/minecraft/class_7094; field_53284 shootingAnimationState + f Lnet/minecraft/class_7094; field_54963 idleAnimationState + f Lnet/minecraft/class_7094; field_53288 longJumpingAnimationState + f Lnet/minecraft/class_7094; field_53287 inhalingAnimationState + f Lnet/minecraft/class_7094; field_53286 slidingBackAnimationState + f Lnet/minecraft/class_7094; field_53285 slidingAnimationState +c net/minecraft/class_10007 net/minecraft/client/render/entity/state/CamelEntityRenderState + f Lnet/minecraft/class_7094; field_53296 dashingAnimationState + f Lnet/minecraft/class_1799; field_56118 saddleStack + f Lnet/minecraft/class_7094; field_53295 idlingAnimationState + f Lnet/minecraft/class_7094; field_53294 standingTransitionAnimationState + f Lnet/minecraft/class_7094; field_53293 sittingAnimationState + f Z field_53290 hasPassengers + f Lnet/minecraft/class_7094; field_53292 sittingTransitionAnimationState + f F field_53291 jumpCooldown +c net/minecraft/class_169 net/minecraft/util/context/ContextParameter + f Lnet/minecraft/class_2960; field_1162 id + m ()Lnet/minecraft/class_2960; method_746 getId + m (Ljava/lang/String;)Lnet/minecraft/class_169; method_64964 of + p 0 id + m (Lnet/minecraft/class_2960;)V + p 1 id +c net/minecraft/class_163 net/minecraft/advancement/AdvancementManager + f Ljava/util/Map; field_1157 advancements + f Lnet/minecraft/class_163$class_164; field_1155 listener + f Ljava/util/Set; field_1154 roots + f Ljava/util/Set; field_1156 dependents + f Lorg/slf4j/Logger; field_1158 LOGGER + m ()V method_714 clear + m (Ljava/util/Set;)V method_713 removeAll + p 1 advancements + m ()Ljava/lang/Iterable; method_715 getRoots + m (Lnet/minecraft/class_8779;)Lnet/minecraft/class_8781; method_53690 get + p 1 advancement + m (Ljava/util/Collection;)V method_53691 addAll + p 1 advancements + m (Lnet/minecraft/class_8781;)V method_718 remove + p 1 advancement + m ()Ljava/util/Collection; method_53693 getAdvancements + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_8781; method_716 get + p 1 id + m (Lnet/minecraft/class_8779;)Z method_53692 tryAdd + p 1 advancement + m (Lnet/minecraft/class_163$class_164;)V method_717 setListener + p 1 listener +c net/minecraft/class_163$class_164 net/minecraft/advancement/AdvancementManager$Listener + m (Lnet/minecraft/class_8781;)V method_721 onDependentAdded + p 1 dependent + m ()V method_722 onClear + m (Lnet/minecraft/class_8781;)V method_720 onRootRemoved + p 1 root + m (Lnet/minecraft/class_8781;)V method_723 onRootAdded + p 1 root + m (Lnet/minecraft/class_8781;)V method_719 onDependentRemoved + p 1 dependent +c net/minecraft/class_161 net/minecraft/advancement/Advancement + f Lcom/mojang/serialization/Codec; field_47179 CODEC + f Lcom/mojang/serialization/Codec; field_47180 CRITERIA_CODEC + f Lnet/minecraft/class_9139; field_47996 PACKET_CODEC + f Z comp_1917 sendsTelemetryEvent + f Ljava/util/Optional; comp_1918 name + f Ljava/util/Optional; comp_1913 display + f Ljava/util/Optional; comp_1912 parent + f Ljava/util/Map; comp_1915 criteria + f Lnet/minecraft/class_170; comp_1914 rewards + f Lnet/minecraft/class_8782; comp_1916 requirements + m (Lnet/minecraft/class_8942;Lnet/minecraft/class_7871$class_7872;)V method_54912 validate + p 2 lookup + p 1 errorReporter + m (Ljava/util/Map;)Lcom/mojang/serialization/DataResult; method_54918 method_54918 + p 0 criteria + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_170;Ljava/util/Map;Lnet/minecraft/class_8782;Z)V + p 5 requirements + p 6 sendsTelemetryEvent + p 1 parent + p 2 display + p 3 rewards + p 4 criteria + m (Lnet/minecraft/class_161;Lnet/minecraft/class_8782;)Lnet/minecraft/class_161; method_54911 method_54911 + p 1 validated + m (Lnet/minecraft/class_8942;Lnet/minecraft/class_7871$class_7872;Ljava/lang/String;Lnet/minecraft/class_175;)V method_54913 method_54913 + p 2 name + p 3 criterion + m (Lnet/minecraft/class_8779;)Lnet/minecraft/class_2561; method_53622 getNameFromIdentity + p 0 identifiedAdvancement + m (Lnet/minecraft/class_9129;)V method_53627 write + p 1 buf + m (Lnet/minecraft/class_185;)Lnet/minecraft/class_2561; method_53623 createNameFromDisplay + p 0 display + m (Lnet/minecraft/class_161;)Ljava/util/Optional; method_54917 method_54917 + p 0 advancement + m ()Z method_53630 isRoot + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_170;Ljava/util/Map;Ljava/util/Optional;Ljava/lang/Boolean;)Lnet/minecraft/class_161; method_54916 method_54916 + p 5 sendsTelemetryEvent + p 0 parent + p 3 criteria + p 4 requirements + p 1 display + p 2 rewards + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54914 method_54914 + p 0 instance + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_161; method_53632 read + p 0 buf + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_53629 method_53629 + p 1 style + m (Lnet/minecraft/class_161;)Lcom/mojang/serialization/DataResult; method_54910 validate + p 0 advancement + m ()Ljava/util/Map; comp_1915 criteria + m ()Z comp_1917 sendsTelemetryEvent + m ()Lnet/minecraft/class_8782; comp_1916 requirements + m ()Ljava/util/Optional; comp_1913 display + m ()Ljava/util/Optional; comp_1912 parent + m ()Ljava/util/Optional; comp_1918 name + m ()Lnet/minecraft/class_170; comp_1914 rewards + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_170;Ljava/util/Map;Lnet/minecraft/class_8782;ZLjava/util/Optional;)V + p 1 parent + p 2 display + p 3 rewards + p 4 criteria + p 5 requirements + p 6 sendsTelemetryEvent + p 7 name +c net/minecraft/class_161$class_162 net/minecraft/advancement/Advancement$Builder + f Ljava/util/Optional; field_1150 requirements + f Lnet/minecraft/class_8782$class_8797; field_1151 merger + f Lnet/minecraft/class_170; field_1153 rewards + f Ljava/util/Optional; field_1149 parentObj + f Lcom/google/common/collect/ImmutableMap$Builder; field_1148 criteria + f Ljava/util/Optional; field_1147 display + f Z field_44783 sendsTelemetryEvent + m (Ljava/util/function/Consumer;Ljava/lang/String;)Lnet/minecraft/class_8779; method_694 build + p 2 id + p 1 exporter + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2960;Lnet/minecraft/class_189;ZZZ)Lnet/minecraft/class_161$class_162; method_697 display + p 3 description + p 2 title + p 1 icon + p 8 hidden + p 7 announceToChat + p 6 showToast + p 5 frame + p 4 background + m (Lnet/minecraft/class_170;)Lnet/minecraft/class_161$class_162; method_706 rewards + p 1 rewards + m (Lnet/minecraft/class_8779;)Lnet/minecraft/class_161$class_162; method_701 parent + p 1 parent + m (Ljava/lang/String;Lnet/minecraft/class_175;)Lnet/minecraft/class_161$class_162; method_705 criterion + p 1 name + p 2 criterion + m ()Lnet/minecraft/class_161$class_162; method_707 create + m (Lnet/minecraft/class_8782;)Lnet/minecraft/class_161$class_162; method_34884 requirements + p 1 requirements + m (Lnet/minecraft/class_170$class_171;)Lnet/minecraft/class_161$class_162; method_703 rewards + p 1 builder + m ()Lnet/minecraft/class_161$class_162; method_53634 sendsTelemetryEvent + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_161$class_162; method_708 parent + p 1 parentId + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2960;Lnet/minecraft/class_189;ZZZ)Lnet/minecraft/class_161$class_162; method_20416 display + p 2 title + p 1 icon + p 4 background + p 3 description + p 6 showToast + p 5 frame + p 8 hidden + p 7 announceToChat + m ()Lnet/minecraft/class_161$class_162; method_51698 createUntelemetered + m (Lnet/minecraft/class_185;)Lnet/minecraft/class_161$class_162; method_693 display + p 1 display + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_8779; method_695 build + p 1 id + m (Lnet/minecraft/class_8782$class_8797;)Lnet/minecraft/class_161$class_162; method_704 criteriaMerger + p 1 merger +c net/minecraft/class_167 net/minecraft/advancement/AdvancementProgress + f Lcom/mojang/serialization/Codec; field_46083 MAP_CODEC + f Lcom/mojang/serialization/Codec; field_46082 TIME_CODEC + f Lcom/mojang/serialization/Codec; field_46080 CODEC + f Ljava/time/format/DateTimeFormatter; field_46081 TIME_FORMATTER + f Lnet/minecraft/class_8782; field_1161 requirements + f Ljava/util/Map; field_1160 criteriaProgresses + m (Lnet/minecraft/class_167;)I method_738 compareTo + m (Ljava/util/Map;Ljava/lang/Boolean;)Lnet/minecraft/class_167; method_53658 method_53658 + p 1 done + p 0 criteriaProgresses + m ()F method_735 getProgressBarPercentage + m (Lnet/minecraft/class_8782;)V method_727 init + p 1 requirements + m (Ljava/lang/Object;)I compareTo compareTo + p 1 other + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_167; method_732 fromPacket + p 0 buf + m (Ljava/lang/String;)Z method_53663 isCriterionObtained + p 1 name + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53654 method_53654 + p 0 instance + m (Ljava/util/Map;)Ljava/util/Map; method_53661 method_53661 + p 0 map + m ()Ljava/lang/Iterable; method_734 getObtainedCriteria + m (Ljava/lang/String;)Z method_729 reset + p 1 name + m (Ljava/util/Map;)Ljava/util/Map; method_53657 method_53657 + p 0 map + m (Lnet/minecraft/class_2540;)V method_733 toPacket + p 1 buf + m (Ljava/util/Map;)V + p 1 criteriaProgresses + m (Ljava/util/Map$Entry;)Z method_53660 method_53660 + p 0 entry + m (Ljava/util/Set;Ljava/util/Map$Entry;)Z method_730 method_730 + p 1 progress + m ()Ljava/time/Instant; method_741 getEarliestProgressObtainDate + m ()I method_736 countObtainedRequirements + m (Ljava/util/Map$Entry;)Ljava/time/Instant; method_53656 method_53656 + p 0 entry + m (Lnet/minecraft/class_167;)Ljava/util/Map; method_53659 method_53659 + p 0 advancementProgress + m ()Lnet/minecraft/class_2561; method_728 getProgressBarFraction + m ()Z method_742 isAnyObtained + m ()Ljava/lang/Iterable; method_731 getUnobtainedCriteria + m ()Z method_740 isDone + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_178;)V method_33895 method_33895 + p 0 bufx + p 1 progresses + m (Ljava/lang/String;)Lnet/minecraft/class_178; method_737 getCriterionProgress + p 1 name + m (Ljava/lang/String;)Z method_743 obtain + p 1 name + m (Ljava/time/Instant;)Ljava/time/temporal/TemporalAccessor; method_53655 method_53655 + p 0 instant +c net/minecraft/class_1863 net/minecraft/recipe/ServerRecipeManager + c A recipe manager allows easier use of recipes, such as finding matches and\nremainders. It is also integrated with a recipe loader, which loads recipes\nfrom data packs' JSON files. + f Ljava/util/List; field_54641 recipes + f Lnet/minecraft/class_10289; field_54638 preparedRecipes + f Ljava/util/Map; field_54642 recipesByKey + f Lnet/minecraft/class_10291$class_10293; field_54640 stonecutterRecipes + f Lnet/minecraft/class_7654; field_55213 FINDER + f Ljava/util/Map; field_54639 propertySets + f Ljava/util/Map; field_54897 SOLE_INGREDIENT_GETTERS + f Lorg/slf4j/Logger; field_9027 LOGGER + f Lnet/minecraft/class_7225$class_7874; field_54637 registries + m (Lnet/minecraft/class_3956;Lnet/minecraft/class_9695;Lnet/minecraft/class_1937;Lnet/minecraft/class_8786;)Ljava/util/Optional; method_59993 getFirstMatch + p 4 recipe + p 3 world + p 2 input + p 1 type + m (Lnet/minecraft/class_3956;)Lnet/minecraft/class_1863$class_7266; method_42302 createCachedMatchGetter + c Creates a cached match getter. This is optimized for getting matches of the same\nrecipe repeatedly, such as furnaces. + p 0 type + m (Lnet/minecraft/class_1863$class_10288;)Lnet/minecraft/class_5321; method_64685 method_64685 + p 0 recipe + m (Lnet/minecraft/class_3956;)Lnet/minecraft/class_1863$class_10357; method_64992 cookingIngredientGetter + p 0 expectedType + m (Ljava/util/List;Lnet/minecraft/class_7699;Ljava/util/List;Lnet/minecraft/class_8786;)V method_64989 method_64989 + p 3 recipe + m (Lnet/minecraft/class_5321;Ljava/util/function/Consumer;)V method_64679 forEachRecipeDisplay + p 2 action + p 1 key + m (Ljava/util/List;Lnet/minecraft/class_2960;Lnet/minecraft/class_1860;)V method_64689 method_64689 + p 1 id + p 2 recipe + m (Lnet/minecraft/class_3956;Lnet/minecraft/class_9695;Lnet/minecraft/class_1937;)Ljava/util/Optional; method_8132 getFirstMatch + c {@return a recipe of the given {@code type} that match the given\n{@code inventory} and {@code world}}\n\n

If there are multiple matching recipes, the result is arbitrary,\nbut this method will return the same result unless the recipes in this\nmanager are updated. + p 1 type + c the desired recipe type + p 3 world + c the input world + p 2 input + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_1863$class_10356; method_64990 method_64990 + p 0 entry + m (Lnet/minecraft/class_10298;)Lnet/minecraft/class_1863$class_10288; method_64686 get + p 1 id + m (Lnet/minecraft/class_3956;Lnet/minecraft/class_9695;Lnet/minecraft/class_1937;Lnet/minecraft/class_5321;)Ljava/util/Optional; method_42299 getFirstMatch + p 1 type + p 2 input + p 3 world + p 4 recipe + m (Lnet/minecraft/class_7699;Ljava/util/List;)Ljava/util/List; method_64683 filterIngredients + p 1 ingredients + p 0 features + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)Lnet/minecraft/class_10289; method_64680 prepare + m (Lnet/minecraft/class_3956;Lnet/minecraft/class_1860;)Ljava/util/Optional; method_64988 method_64988 + p 1 recipe + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_1856;)Z method_64682 isEnabled + p 1 ingredient + p 0 features + m ()Ljava/util/Map; method_64692 getPropertySets + m ()Lnet/minecraft/class_10291$class_10293; method_64694 getStonecutterRecipeForSync + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_8130 get + c {@return a recipe with the given {@code id}, or empty if there is no such recipe} + p 1 key + m (Ljava/util/function/Consumer;Lnet/minecraft/class_1863$class_10288;)V method_64691 method_64691 + p 1 recipe + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_6880;)Z method_64684 method_64684 + p 1 entry + m (Lnet/minecraft/class_5321;Lcom/google/gson/JsonObject;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_8786; method_17720 deserialize + c Reads a recipe from a JSON object.\n\n@implNote Even though a recipe's {@linkplain Recipe#getSerializer() serializer}\nis stored in a {@code type} field in the JSON format and referred so in this\nmethod, its registry has key {@code minecraft:root/minecraft:recipe_serializer}\nand is thus named.\n\n@throws com.google.gson.JsonParseException if the recipe JSON is invalid\n@return the read recipe + p 1 json + p 2 registries + p 0 key + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_1863$class_10356;)Lnet/minecraft/class_10290; method_64984 method_64984 + p 1 builder + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Ljava/lang/Object;)I method_64687 method_64687 + p 1 group + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries + m (Ljava/lang/Iterable;Lnet/minecraft/class_7699;)Ljava/util/List; method_64688 collectServerRecipes + c Filters recipes by {@code enabledFeatures} and assigns an integer\nID to each recipe and recipe group. + p 0 recipes + p 1 enabledFeatures + m ()Ljava/util/Collection; method_8126 values + c {@return all recipes in this manager}\n\n

The returned set does not update with the manager. Modifications to the\nreturned set does not affect this manager. + m (Lnet/minecraft/class_1860;)Ljava/util/Optional; method_64985 method_64985 + p 0 recipe + m (Lnet/minecraft/class_7699;)V method_64681 initialize + p 1 features + m (Lnet/minecraft/class_1860;)Ljava/util/Optional; method_64991 method_64991 + p 0 recipe + m (Lnet/minecraft/class_1860;)Ljava/util/Optional; method_64993 method_64993 + p 0 recipe + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_1856;)Z method_64693 method_64693 + p 1 ingredient + m (Lnet/minecraft/class_10289;Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)V method_20705 apply + m (Lnet/minecraft/class_3956;Lnet/minecraft/class_5321;)Lnet/minecraft/class_8786; method_59821 get + c {@return a recipe with the given {@code id} and {@code type}, or empty if there is no such recipe} + p 1 type + c the type of the desired recipe + p 2 key + m (Lnet/minecraft/class_1860;Lnet/minecraft/class_1863$class_10356;)V method_64986 method_64986 + p 1 builder + m (Lnet/minecraft/class_1863$class_10356;)Lnet/minecraft/class_5321; method_64987 method_64987 + p 0 builder +c net/minecraft/class_1863$class_10357 net/minecraft/recipe/ServerRecipeManager$SoleIngredientGetter + m (Lnet/minecraft/class_1860;)Ljava/util/Optional; apply apply + p 1 recipe +c net/minecraft/class_1863$class_10356 net/minecraft/recipe/ServerRecipeManager$PropertySetBuilder + f Lnet/minecraft/class_1863$class_10357; field_54899 ingredientGetter + f Ljava/util/List; field_54900 ingredients + f Lnet/minecraft/class_5321; field_54898 propertySetKey + m (Ljava/lang/Object;)V accept accept + p 1 recipe + m (Lnet/minecraft/class_7699;)Lnet/minecraft/class_10290; method_64994 build + p 1 enabledFeatures + m (Lnet/minecraft/class_1860;)V method_64995 accept + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_1863$class_10357;)V + p 1 propertySetKey + p 2 ingredientGetter +c net/minecraft/class_1863$1 net/minecraft/recipe/ServerRecipeManager$1 + f Lnet/minecraft/class_5321; field_38221 id +c net/minecraft/class_1863$class_10288 net/minecraft/recipe/ServerRecipeManager$ServerRecipe + f Lnet/minecraft/class_10297; comp_3249 display + f Lnet/minecraft/class_8786; comp_3250 parent + m ()Lnet/minecraft/class_10297; comp_3249 display + m ()Lnet/minecraft/class_8786; comp_3250 parent + m (Lnet/minecraft/class_10297;Lnet/minecraft/class_8786;)V + p 1 display + p 2 parent +c net/minecraft/class_1863$class_7266 net/minecraft/recipe/ServerRecipeManager$MatchGetter + m (Lnet/minecraft/class_9695;Lnet/minecraft/class_3218;)Ljava/util/Optional; method_42303 getFirstMatch + p 2 world + p 1 input +c net/minecraft/class_165 net/minecraft/loot/function/FurnaceSmeltLootFunction + f Lcom/mojang/serialization/MapCodec; field_45855 CODEC + f Lorg/slf4j/Logger; field_1159 LOGGER + m (Ljava/util/List;)V + p 1 conditions + m ()Lnet/minecraft/class_120$class_121; method_724 builder + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53400 method_53400 + p 0 instance +c net/minecraft/class_1861 net/minecraft/recipe/MapExtendingRecipe + m (Lnet/minecraft/class_9694;)Lnet/minecraft/class_1799; method_51165 findFilledMap + p 0 input + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_17728 matches + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_17727 craft + m (Lnet/minecraft/class_7710;)V + p 1 category +c net/minecraft/class_1860 net/minecraft/recipe/Recipe + c A recipe is an arrangement of items in an inventory that can\nyield a product item stack. Recipes are not used on the client side;\nthe server syncs to the client a {@link RecipeDisplayEntry},\nwhich is used instead.\n\n

Recipes are loaded by and stored in the {@link ServerRecipeManager}. They\nare part of the server's data packs. Hence, recipes should not be stored,\nas they may become obsolete after reloads.\n\n

{@link RecipeEntry} is a pair of the recipe and its ID ({@linkplain\nnet.minecraft.registry.RegistryKey a registry key}). The ID can be used to\nrefer to recipes in saved data. However, the client does not receive the ID of\nrecipes.\n\n

A few of the methods in this class are dedicated to crafting recipes\nor recipe books. Users can have stub implementations if they do not use\nthose functionalities. + f Lcom/mojang/serialization/Codec; field_47319 CODEC + f Lnet/minecraft/class_9139; field_48356 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_56667 KEY_CODEC + m ()Lnet/minecraft/class_3956; method_17716 getType + c {@return the type of this recipe}\n\n

The {@code type} in the recipe JSON format is the {@linkplain\n#getSerializer() serializer} instead. + m ()Ljava/lang/String; method_8112 getGroup + c {@return a group this recipe belongs in, or an empty string} This is\nonly used by the recipe book.\n\n

The group string is arbitrary, and is not rendered anywhere; in\nthe recipe book, recipes with the same group will belong to the same\ncell in the grid of recipes. If the string is empty, this recipe will\nbelong to its own cell. + m ()Z method_49188 showNotification + m ()Lnet/minecraft/class_10355; method_64668 getRecipeBookCategory + m ()Lnet/minecraft/class_9887; method_61671 getIngredientPlacement + m (Lnet/minecraft/class_9695;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_8116 craft + c Crafts this recipe.\n\n

This method does not perform side effects on the {@code inventory}.\n\n

This method should return a new item stack on each call.\n\n@return the resulting item stack + p 1 input + p 2 registries + m ()Lnet/minecraft/class_1865; method_8119 getSerializer + c {@return the serializer associated with this recipe} + m (Lnet/minecraft/class_9695;Lnet/minecraft/class_1937;)Z method_8115 matches + c {@return whether this recipe matches the contents inside the\n{@code inventory} in the given {@code world}}\n\n

The {@code world} currently is only used by the map cloning recipe to\nprevent duplication of explorer maps. + p 2 world + c the input world + p 1 input + m ()Ljava/util/List; method_64664 getDisplays + c {@link the list of recipe displays corresponding to the recipe}\n\n

Recipe displays are sent to the client and displayed in the recipe book.\nOne recipe can have multiple displays. + m ()Z method_8118 isIgnoredInRecipeBook + c {@return whether this recipe is ignored by the recipe book} If a recipe\nis ignored by the recipe book, it will be never displayed. In addition,\nit won't be restricted by the {@link net.minecraft.world.GameRules#DO_LIMITED_CRAFTING\ndoLimitedCrafting} game rule. +c net/minecraft/class_1856 net/minecraft/recipe/Ingredient + f Lcom/mojang/serialization/Codec; field_52596 ENTRIES_CODEC + f Lcom/mojang/serialization/Codec; field_46095 CODEC + f Lnet/minecraft/class_9139; field_48355 PACKET_CODEC + f Lnet/minecraft/class_9139; field_52595 OPTIONAL_PACKET_CODEC + f Lnet/minecraft/class_6885; field_9019 entries + m (Ljava/util/Optional;)Lnet/minecraft/class_10302; method_64980 toDisplay + p 0 ingredient + m (Lnet/minecraft/class_6880;)Z method_65798 acceptsItem + m (Lnet/minecraft/class_1856;)Lnet/minecraft/class_6885; method_61673 method_61673 + p 0 ingredient + m (Ljava/lang/Object;)Z test test + p 1 stack + m (Lnet/minecraft/class_6885;)V + p 1 entries + m (Lnet/minecraft/class_6885;)Lnet/minecraft/class_1856; method_8106 ofTag + p 0 tag + m (Lnet/minecraft/class_1856;)Lnet/minecraft/class_6885; method_61677 method_61677 + p 0 ingredient + m (Ljava/util/List;)V method_61674 method_61674 + p 0 list + m (Lnet/minecraft/class_6885;)Ljava/util/Optional; method_61679 method_61679 + p 0 entries + m (Lnet/minecraft/class_1799;)Z method_8093 test + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/util/stream/Stream; method_8105 getMatchingItems + m ([Lnet/minecraft/class_1935;)Lnet/minecraft/class_1856; method_8091 ofItems + p 0 items + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_1856; method_8101 ofItem + p 0 item + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_6880$class_6883; method_61678 method_61678 + p 0 item + m (Ljava/util/List;)Ljava/lang/Record; method_64672 method_64672 + p 0 items + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_10302; method_64981 createDisplayWithRemainder + p 0 displayedItem + m (Lnet/minecraft/class_1856;)Lnet/minecraft/class_6885; method_61680 method_61680 + p 0 ingredient + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1856;)Ljava/lang/Boolean; method_61672 method_61672 + p 1 ingredient2 + m (Ljava/util/Optional;Lnet/minecraft/class_1799;)Z method_61676 matches + p 0 ingredient + p 1 stack + m ()Z method_65799 isEmpty + m (Ljava/util/Optional;)Lnet/minecraft/class_6885; method_61675 method_61675 + p 0 optional + m ()Lnet/minecraft/class_10302; method_64673 toDisplay + m (Ljava/util/stream/Stream;)Lnet/minecraft/class_1856; method_26964 ofItems + p 0 stacks +c net/minecraft/class_1855 net/minecraft/recipe/MapCloningRecipe + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_17714 craft + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_17715 matches +c net/minecraft/class_1854 net/minecraft/recipe/FireworkStarFadeRecipe + f Lnet/minecraft/class_1856; field_9015 INPUT_STAR + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_17711 matches + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_17710 craft +c net/minecraft/class_1853 net/minecraft/recipe/FireworkStarRecipe + f Lnet/minecraft/class_1856; field_9012 GUNPOWDER + f Lnet/minecraft/class_1856; field_9014 FLICKER_MODIFIER + f Ljava/util/Map; field_9013 TYPE_MODIFIER_MAP + f Lnet/minecraft/class_1856; field_9010 TRAIL_MODIFIER + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_17713 matches + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_17712 craft +c net/minecraft/class_179 net/minecraft/advancement/criterion/Criterion + m (Lnet/minecraft/class_184;)Lnet/minecraft/class_175; method_53699 create + p 1 conditions + m (Lnet/minecraft/class_2985;)V method_791 endTracking + p 1 tracker + m (Lnet/minecraft/class_2985;Lnet/minecraft/class_179$class_180;)V method_793 endTrackingCondition + p 2 conditions + p 1 manager + m ()Lcom/mojang/serialization/Codec; method_54937 getConditionsCodec + m (Lnet/minecraft/class_2985;Lnet/minecraft/class_179$class_180;)V method_792 beginTrackingCondition + p 2 conditions + p 1 manager +c net/minecraft/class_179$class_180 net/minecraft/advancement/criterion/Criterion$ConditionsContainer + f Ljava/lang/String; comp_1927 id + f Lnet/minecraft/class_8779; comp_1926 advancement + f Lnet/minecraft/class_184; comp_1925 conditions + m ()Ljava/lang/String; comp_1927 id + m (Lnet/minecraft/class_184;Lnet/minecraft/class_8779;Ljava/lang/String;)V + p 3 id + p 1 conditions + p 2 advancement + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_8779; comp_1926 advancement + m ()Lnet/minecraft/class_184; comp_1925 conditions + m (Lnet/minecraft/class_2985;)V method_796 grant + p 1 tracker +c net/minecraft/class_174 net/minecraft/advancement/criterion/Criteria + f Lnet/minecraft/class_4711; field_24478 ITEM_USED_ON_BLOCK + f Lnet/minecraft/class_2135; field_19250 HERO_OF_THE_VILLAGE + f Lnet/minecraft/class_4851; field_22450 TARGET_HIT + f Lnet/minecraft/class_8508; field_44587 RECIPE_CRAFTED + f Lnet/minecraft/class_196; field_1190 BRED_ANIMALS + f Lnet/minecraft/class_2066; field_1195 INVENTORY_CHANGED + f Lnet/minecraft/class_2037; field_1180 ENTER_BLOCK + f Lnet/minecraft/class_2128; field_1182 SUMMONED_ENTITY + f Lnet/minecraft/class_2135; field_1187 TICK + f Lnet/minecraft/class_2148; field_1204 USED_TOTEM + f Lnet/minecraft/class_2135; field_38838 AVOID_VIBRATION + f Lnet/minecraft/class_2135; field_19251 VOLUNTARY_EXILE + f Lnet/minecraft/class_5279; field_24480 THROWN_ITEM_PICKED_UP_BY_ENTITY + f Lnet/minecraft/class_2108; field_35014 RIDE_ENTITY_IN_LAVA + f Lnet/minecraft/class_9104; field_48269 ANY_BLOCK_USE + f Lnet/minecraft/class_2080; field_1188 ENTITY_KILLED_PLAYER + f Lnet/minecraft/class_4713; field_21628 SLIDE_DOWN_BLOCK + f Lnet/minecraft/class_2076; field_54206 KILLED_BY_ARROW + f Lnet/minecraft/class_2010; field_1198 CONSUME_ITEM + f Lnet/minecraft/class_2027; field_1193 EFFECTS_CHANGED + f Lnet/minecraft/class_2143; field_1186 USED_ENDER_EYE + f Lnet/minecraft/class_4711; field_1191 PLACED_BLOCK + f Lnet/minecraft/class_2135; field_1194 LOCATION + f Lnet/minecraft/class_2085; field_1200 LEVITATION + f Lnet/minecraft/class_4708; field_21629 BEE_NEST_DESTROYED + f Lnet/minecraft/class_6405; field_33871 LIGHTNING_STRIKE + f Lnet/minecraft/class_2115; field_1199 PLAYER_HURT_ENTITY + f Lnet/minecraft/class_2135; field_1212 SLEPT_IN_BED + f Lnet/minecraft/class_4711; field_38701 ALLAY_DROP_ITEM_ON_BLOCK + f Lnet/minecraft/class_2054; field_1208 FILLED_BUCKET + f Lnet/minecraft/class_5279; field_38700 THROWN_ITEM_PICKED_UP_BY_PLAYER + f Lcom/mojang/serialization/Codec; field_47187 CODEC + f Lnet/minecraft/class_2108; field_1211 NETHER_TRAVEL + f Lnet/minecraft/class_1999; field_1183 CHANGED_DIMENSION + f Lnet/minecraft/class_2080; field_1192 PLAYER_KILLED_ENTITY + f Lnet/minecraft/class_12322; field_64256 SPEAR_MOBS + f Lnet/minecraft/class_2030; field_1181 ENCHANTED_ITEM + f Lnet/minecraft/class_2108; field_35013 FALL_FROM_HEIGHT + f Lnet/minecraft/class_5409; field_25694 PLAYER_INTERACTED_WITH_ENTITY + f Lnet/minecraft/class_5409; field_61057 PLAYER_SHEARED_EQUIPMENT + f Lnet/minecraft/class_6409; field_33872 USING_ITEM + f Lnet/minecraft/class_2080; field_38376 KILL_MOB_NEAR_SCULK_CATALYST + f Lnet/minecraft/class_6407; field_33870 STARTED_RIDING + f Lnet/minecraft/class_2014; field_1210 CURED_ZOMBIE_VILLAGER + f Lnet/minecraft/class_2140; field_1206 VILLAGER_TRADE + f Lnet/minecraft/class_2058; field_1203 FISHING_ROD_HOOKED + f Lnet/minecraft/class_2044; field_1209 ENTITY_HURT_PLAYER + f Lnet/minecraft/class_2119; field_1207 RECIPE_UNLOCKED + f Lnet/minecraft/class_5282; field_24479 PLAYER_GENERATES_CONTAINER_LOOT + f Lnet/minecraft/class_2062; field_1184 IMPOSSIBLE + f Lnet/minecraft/class_9107; field_48268 DEFAULT_BLOCK_USE + f Lnet/minecraft/class_2123; field_1196 SHOT_CROSSBOW + f Lnet/minecraft/class_2131; field_1201 TAME_ANIMAL + f Lnet/minecraft/class_2069; field_1185 ITEM_DURABILITY_CHANGED + f Lnet/minecraft/class_8508; field_49922 CRAFTER_RECIPE_CRAFTED + f Lnet/minecraft/class_2002; field_1202 CHANNELED_LIGHTNING + f Lnet/minecraft/class_2006; field_1189 CONSTRUCT_BEACON + f Lnet/minecraft/class_9421; field_49923 FALL_AFTER_EXPLOSION + f Lnet/minecraft/class_1996; field_1213 BREWED_POTION + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_179; method_54933 getDefault + p 0 registry + m (Ljava/lang/String;Lnet/minecraft/class_179;)Lnet/minecraft/class_179; method_767 register + p 0 id + p 1 criterion +c net/minecraft/class_173 net/minecraft/loot/context/LootContextTypes + f Lcom/mojang/serialization/Codec; field_45856 CODEC + f Lcom/google/common/collect/BiMap; field_1178 MAP + f Lnet/minecraft/class_176; field_16235 GIFT + f Lnet/minecraft/class_176; field_42858 ARCHAEOLOGY + f Lnet/minecraft/class_176; field_1179 CHEST + f Lnet/minecraft/class_176; field_1176 FISHING + f Lnet/minecraft/class_176; field_1177 GENERIC + f Lnet/minecraft/class_176; field_1175 EMPTY + f Lnet/minecraft/class_176; field_1174 ADVANCEMENT_REWARD + f Lnet/minecraft/class_176; field_48928 VAULT + f Lnet/minecraft/class_176; field_1173 ENTITY + f Lnet/minecraft/class_176; field_1172 BLOCK + f Lnet/minecraft/class_176; field_22403 BARTER + f Lnet/minecraft/class_176; field_50217 EQUIPMENT + f Lnet/minecraft/class_176; field_61497 ENTITY_INTERACT + f Lnet/minecraft/class_176; field_61498 BLOCK_INTERACT + f Lnet/minecraft/class_176; field_48381 BLOCK_USE + f Lnet/minecraft/class_176; field_49446 SHEARING + f Lnet/minecraft/class_176; field_44788 ADVANCEMENT_LOCATION + f Lnet/minecraft/class_176; field_52067 HIT_BLOCK + f Lnet/minecraft/class_176; field_20762 SELECTOR + f Lnet/minecraft/class_176; field_20761 COMMAND + f Lnet/minecraft/class_176; field_51804 ENCHANTED_ENTITY + f Lnet/minecraft/class_176; field_51803 ENCHANTED_LOCATION + f Lnet/minecraft/class_176; field_51802 ENCHANTED_ITEM + f Lnet/minecraft/class_176; field_51801 ENCHANTED_DAMAGE + f Lnet/minecraft/class_176; field_24423 ADVANCEMENT_ENTITY + m (Lnet/minecraft/class_176$class_177;)V method_24800 method_24800 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_22578 method_22578 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_27863 method_27863 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_72696 method_72696 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_764 method_764 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_15970 method_15970 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_758 method_758 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_756 method_756 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_49269 method_49269 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_60301 method_60301 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_760 method_760 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_22577 method_22577 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_57660 method_57660 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_56818 method_56818 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_49270 method_49270 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_72697 method_72697 + p 0 builder + m (Lnet/minecraft/class_2960;)Lcom/mojang/serialization/DataResult; method_53401 method_53401 + p 0 id + m (Lnet/minecraft/class_176$class_177;)V method_58741 method_58741 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_755 method_755 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_763 method_763 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_51722 method_51722 + p 0 builder + m (Ljava/lang/String;Ljava/util/function/Consumer;)Lnet/minecraft/class_176; method_759 register + p 0 name + p 1 type + m (Lnet/minecraft/class_176$class_177;)V method_60792 method_60792 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_60302 method_60302 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_56128 method_56128 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_60299 method_60299 + p 0 builder + m (Lnet/minecraft/class_176$class_177;)V method_60300 method_60300 + p 0 builder +c net/minecraft/class_178 net/minecraft/advancement/criterion/CriterionProgress + f Ljava/time/Instant; field_1219 obtainedTime + m ()Z method_784 isObtained + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_178; method_785 fromPacket + p 0 buf + m (Lnet/minecraft/class_2540;)V method_787 toPacket + p 1 buf + m ()V method_790 reset + m (Ljava/time/Instant;)V + p 1 obtainedTime + m ()Ljava/time/Instant; method_786 getObtainedTime + m ()V method_789 obtain +c net/minecraft/class_1874 net/minecraft/recipe/AbstractCookingRecipe + f F field_9057 experience + f Lnet/minecraft/class_7709; field_40241 category + f I field_9058 cookingTime + m ()I method_8167 getCookingTime + m ()Lnet/minecraft/class_7709; method_45438 getCategory + m ()F method_8171 getExperience + m ()Lnet/minecraft/class_1792; method_64663 getCookerItem + m (Ljava/lang/String;Lnet/minecraft/class_7709;Lnet/minecraft/class_1856;Lnet/minecraft/class_1799;FI)V + p 1 group + p 2 category + p 5 experience + p 6 cookingTime + p 3 ingredient + p 4 result +c net/minecraft/class_1874$class_3958 net/minecraft/recipe/AbstractCookingRecipe$RecipeFactory + m (Ljava/lang/String;Lnet/minecraft/class_7709;Lnet/minecraft/class_1856;Lnet/minecraft/class_1799;FI)Lnet/minecraft/class_1874; create create + p 4 result + p 3 ingredient + p 2 category + p 1 group + p 6 cookingTime + p 5 experience +c net/minecraft/class_1874$class_10285 net/minecraft/recipe/AbstractCookingRecipe$Serializer + f Lcom/mojang/serialization/MapCodec; field_54625 codec + f Lnet/minecraft/class_9139; field_54626 packetCodec + m (Lnet/minecraft/class_1874$class_3958;I)V + p 1 factory + p 2 defaultCookingTime + m (ILnet/minecraft/class_1874$class_3958;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64665 method_64665 + p 2 instance +c net/minecraft/class_176 net/minecraft/util/context/ContextType + f Ljava/util/Set; field_54892 allowed + f Ljava/util/Set; field_1216 required + m ()Ljava/util/Set; method_777 getAllowed + m (Ljava/util/Set;Ljava/util/Set;)V + p 1 required + p 2 allowed + m (Lnet/minecraft/class_169;)Ljava/lang/String; method_779 method_779 + p 1 parameter + m ()Ljava/util/Set; method_778 getRequired +c net/minecraft/class_176$class_177 net/minecraft/util/context/ContextType$Builder + f Ljava/util/Set; field_1217 allowed + f Ljava/util/Set; field_1218 required + m ()Lnet/minecraft/class_176; method_782 build + m (Lnet/minecraft/class_169;)Lnet/minecraft/class_176$class_177; method_781 require + p 1 parameter + m (Lnet/minecraft/class_169;)Lnet/minecraft/class_176$class_177; method_780 allow + p 1 parameter +c net/minecraft/class_1872 net/minecraft/recipe/ShieldDecorationRecipe + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_17731 craft + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_17732 matches +c net/minecraft/class_175 net/minecraft/advancement/AdvancementCriterion + f Lcom/mojang/serialization/MapCodec; field_47189 MAP_CODEC + f Lcom/mojang/serialization/Codec; field_47188 CODEC + f Lnet/minecraft/class_184; comp_1924 conditions + f Lnet/minecraft/class_179; comp_1923 trigger + m (Lnet/minecraft/class_179;Lnet/minecraft/class_184;)Lnet/minecraft/class_175; method_54936 method_54936 + p 1 conditions + m ()Lnet/minecraft/class_184; comp_1924 conditions + m (Lnet/minecraft/class_179;)Lcom/mojang/serialization/Codec; method_54935 getCodec + p 0 criterion + m ()Lnet/minecraft/class_179; comp_1923 trigger + m (Lnet/minecraft/class_179;Lnet/minecraft/class_184;)V + p 1 trigger + p 2 conditions +c net/minecraft/class_1867 net/minecraft/recipe/ShapelessRecipe + f Lnet/minecraft/class_1799; field_9050 result + f Lnet/minecraft/class_9887; field_52603 ingredientPlacement + f Ljava/lang/String; field_9049 group + f Ljava/util/List; field_9047 ingredients + f Lnet/minecraft/class_7710; field_40257 category + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_17729 craft + m (Ljava/lang/String;Lnet/minecraft/class_7710;Lnet/minecraft/class_1799;Ljava/util/List;)V + p 4 ingredients + p 3 result + p 2 category + p 1 group + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_17730 matches +c net/minecraft/class_1867$class_1868 net/minecraft/recipe/ShapelessRecipe$Serializer + f Lnet/minecraft/class_9139; field_48360 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_46104 CODEC + m (Lnet/minecraft/class_1867;)Lnet/minecraft/class_7710; method_61700 method_61700 + p 0 recipe + m (Lnet/minecraft/class_1867;)Lnet/minecraft/class_7710; method_53764 method_53764 + p 0 recipe + m (Lnet/minecraft/class_1867;)Ljava/lang/String; method_53765 method_53765 + p 0 recipe + m (Lnet/minecraft/class_1867;)Ljava/util/List; method_53758 method_53758 + p 0 recipe + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53759 method_53759 + p 0 instance + m (Lnet/minecraft/class_1867;)Ljava/util/List; method_61698 method_61698 + p 0 recipe + m (Lnet/minecraft/class_1867;)Lnet/minecraft/class_1799; method_61699 method_61699 + p 0 recipe + m (Lnet/minecraft/class_1867;)Ljava/lang/String; method_61701 method_61701 + p 0 recipe + m (Lnet/minecraft/class_1867;)Lnet/minecraft/class_1799; method_53762 method_53762 + p 0 recipe +c net/minecraft/class_1865 net/minecraft/recipe/RecipeSerializer + c The recipe serializer controls the deserialization of recipe content during\ndata pack loading.\n\n

Even though they are referred to by the {@code type} field in recipe\nJSON format, they are stored in a registry with key\n{@code minecraft:root/minecraft:recipe_serializer}, and is hence named. + f Lnet/minecraft/class_1865; field_9036 FIREWORK_STAR + f Lnet/minecraft/class_1865; field_9037 TIPPED_ARROW + f Lnet/minecraft/class_1865; field_9038 BANNER_DUPLICATE + f Lnet/minecraft/class_1865; field_9028 ARMOR_DYE + f Lnet/minecraft/class_1865; field_9039 MAP_EXTENDING + f Lnet/minecraft/class_1865; field_9029 BOOK_CLONING + f Lnet/minecraft/class_1865; field_19421 REPAIR_ITEM + f Lnet/minecraft/class_1865; field_17085 SMOKING + f Lnet/minecraft/class_1865; field_17084 BLASTING + f Lnet/minecraft/class_1865; field_9040 SHIELD_DECORATION + f Lnet/minecraft/class_1865; field_9031 SHAPELESS + f Lnet/minecraft/class_1865; field_9042 SMELTING + f Lnet/minecraft/class_1865; field_9043 FIREWORK_ROCKET + f Lnet/minecraft/class_1865; field_9044 MAP_CLONING + f Lnet/minecraft/class_1865; field_9034 FIREWORK_STAR_FADE + f Lnet/minecraft/class_1865; field_9035 SHAPED + f Lnet/minecraft/class_1865; field_17347 CAMPFIRE_COOKING + f Lnet/minecraft/class_1865; field_54318 CRAFTING_TRANSMUTE + f Lnet/minecraft/class_1865; field_42028 SMITHING_TRIM + f Lnet/minecraft/class_1865; field_42027 SMITHING_TRANSFORM + f Lnet/minecraft/class_1865; field_42718 CRAFTING_DECORATED_POT + f Lnet/minecraft/class_1865; field_17640 STONECUTTING + m ()Lnet/minecraft/class_9139; method_56104 packetCodec + c {@return the packet codec for serializing recipes over the network}\n\n@deprecated {@link Recipe} is no longer synced to the clients, making this\nobsolete.\n\n@see RecipeDisplayEntry + m (Ljava/lang/String;Lnet/minecraft/class_1865;)Lnet/minecraft/class_1865; method_17724 register + p 0 id + p 1 serializer + m ()Lcom/mojang/serialization/MapCodec; method_53736 codec +c net/minecraft/class_170 net/minecraft/advancement/AdvancementRewards + f I comp_2025 experience + f Ljava/util/List; comp_2027 recipes + f Ljava/util/List; comp_2026 loot + f Lnet/minecraft/class_170; field_1167 NONE + f Lcom/mojang/serialization/Codec; field_47185 CODEC + f Ljava/util/Optional; comp_2028 function + m ()I comp_2025 experience + m ()Ljava/util/List; comp_2027 recipes + m ()Ljava/util/List; comp_2026 loot + m ()Ljava/util/Optional; comp_2028 function + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54930 method_54930 + p 0 instance + m (ILjava/util/List;Ljava/util/List;Ljava/util/Optional;)V + p 1 experience + p 2 loot + p 3 recipes + p 4 function + m (Lnet/minecraft/class_3222;)V method_748 apply + p 1 player + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_3222;Lnet/minecraft/class_2158;)V method_17978 method_17978 + p 2 function + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_2159;)Ljava/util/Optional; method_54931 method_54931 + p 1 function +c net/minecraft/class_170$class_171 net/minecraft/advancement/AdvancementRewards$Builder + f I field_1169 experience + f Lcom/google/common/collect/ImmutableList$Builder; field_1171 loot + f Lcom/google/common/collect/ImmutableList$Builder; field_1168 recipes + f Ljava/util/Optional; field_1170 function + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_170$class_171; method_34902 setFunction + p 1 function + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_170$class_171; method_34901 function + p 0 function + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_170$class_171; method_752 addRecipe + p 1 recipeKey + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_170$class_171; method_753 recipe + p 0 recipeKey + m ()Lnet/minecraft/class_170; method_751 build + m (I)Lnet/minecraft/class_170$class_171; method_750 experience + p 0 experience + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_170$class_171; method_34900 addLoot + p 1 loot + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_170$class_171; method_34899 loot + p 0 loot + m (I)Lnet/minecraft/class_170$class_171; method_749 setExperience + p 1 experience +c net/minecraft/class_1869 net/minecraft/recipe/ShapedRecipe + f Z field_42719 showNotification + f Lnet/minecraft/class_7710; field_40256 category + f Ljava/lang/String; field_9056 group + f Lnet/minecraft/class_8957; field_47320 raw + f Lnet/minecraft/class_1799; field_9053 result + f Lnet/minecraft/class_9887; field_52601 ingredientPlacement + m (Ljava/lang/String;Lnet/minecraft/class_7710;Lnet/minecraft/class_8957;Lnet/minecraft/class_1799;Z)V + p 2 category + p 1 group + p 5 showNotification + p 4 result + p 3 raw + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_17727 craft + m (Ljava/lang/String;Lnet/minecraft/class_7710;Lnet/minecraft/class_8957;Lnet/minecraft/class_1799;)V + p 2 category + p 1 group + p 4 result + p 3 raw + m (Ljava/util/Optional;)Lnet/minecraft/class_10302; method_64718 method_64718 + p 0 ingredient + m ()I method_8150 getWidth + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_17728 matches + m ()Ljava/util/List; method_61693 getIngredients + m ()I method_8158 getHeight +c net/minecraft/class_1869$class_1870 net/minecraft/recipe/ShapedRecipe$Serializer + f Lnet/minecraft/class_9139; field_48358 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_46102 CODEC + m (Lnet/minecraft/class_1869;)Ljava/lang/Boolean; method_55072 method_55072 + p 0 recipe + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_1869; method_8163 read + p 0 buf + m (Lnet/minecraft/class_1869;)Lnet/minecraft/class_8957; method_55074 method_55074 + p 0 recipe + m (Lnet/minecraft/class_1869;)Lnet/minecraft/class_7710; method_55075 method_55075 + p 0 recipe + m (Lnet/minecraft/class_1869;)Lnet/minecraft/class_1799; method_55073 method_55073 + p 0 recipe + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_1869;)V method_8165 write + p 1 recipe + p 0 buf + m (Lnet/minecraft/class_1869;)Ljava/lang/String; method_55076 method_55076 + p 0 recipe + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55071 method_55071 + p 0 instance +c net/minecraft/class_185 net/minecraft/advancement/AdvancementDisplay + f F field_1244 y + f Ljava/util/Optional; field_1243 background + f Z field_1239 showToast + f F field_1245 x + f Lcom/mojang/serialization/Codec; field_47190 CODEC + f Lnet/minecraft/class_2561; field_1242 description + f Lnet/minecraft/class_2561; field_1240 title + f Z field_1238 announceToChat + f Lnet/minecraft/class_1799; field_1241 icon + f Z field_1236 hidden + f Lnet/minecraft/class_9139; field_48276 PACKET_CODEC + f Lnet/minecraft/class_189; field_1237 frame + m ()Z method_808 shouldAnnounceToChat + m (FF)V method_816 setPos + p 2 y + p 1 x + m ()Lnet/minecraft/class_189; method_815 getFrame + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_185; method_820 fromPacket + p 0 buf + m ()Lnet/minecraft/class_1799; method_821 getIcon + m ()Z method_824 isHidden + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54939 method_54939 + p 0 instance + m ()F method_819 getY + m ()Ljava/util/Optional; method_812 getBackground + m (Lnet/minecraft/class_9129;)V method_813 toPacket + p 1 buf + m ()Lnet/minecraft/class_2561; method_817 getDescription + m ()Lnet/minecraft/class_2561; method_811 getTitle + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Ljava/util/Optional;Lnet/minecraft/class_189;ZZZ)V + p 1 icon + p 8 hidden + p 7 announceToChat + p 6 showToast + p 5 frame + p 4 background + p 3 description + p 2 title + m ()Z method_823 shouldShowToast + m ()F method_818 getX +c net/minecraft/class_184 net/minecraft/advancement/criterion/CriterionConditions + m (Lnet/minecraft/class_8944;)V method_54938 validate + p 1 validator +c net/minecraft/class_182 net/minecraft/loot/condition/TableBonusLootCondition + f Lcom/mojang/serialization/MapCodec; field_45860 CODEC + f Ljava/util/List; comp_1868 chances + f Lnet/minecraft/class_6880; comp_1867 enchantment + m (Lnet/minecraft/class_47;)Z method_799 test + m ()Ljava/util/List; comp_1868 chances + m (Lnet/minecraft/class_6880;[F)Lnet/minecraft/class_5341$class_210; method_800 builder + p 0 enchantment + p 1 chances + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53405 method_53405 + p 0 instance + m (Ljava/lang/Object;)Z test test + p 1 context + m ()Lnet/minecraft/class_6880; comp_1867 enchantment + m (Lnet/minecraft/class_6880;Ljava/util/List;)V + p 1 enchantment + p 2 chances +c net/minecraft/class_1841 net/minecraft/item/PlaceableOnWaterItem +c net/minecraft/class_189 net/minecraft/advancement/AdvancementFrame + f Lnet/minecraft/class_2561; field_26386 toastText + f Ljava/lang/String; field_1251 id + f Lnet/minecraft/class_124; field_1255 titleFormat + f Lcom/mojang/serialization/Codec; field_47186 CODEC + f Lnet/minecraft/class_189; field_1254 TASK + f Lnet/minecraft/class_189; field_1250 CHALLENGE + f Lnet/minecraft/class_189; field_1249 GOAL + m ()Lnet/minecraft/class_2561; method_30756 getToastText + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_124;)V + p 4 titleFormat + p 3 id + m ()Lnet/minecraft/class_124; method_830 getTitleFormat + m (Lnet/minecraft/class_8779;Lnet/minecraft/class_3222;)Lnet/minecraft/class_5250; method_54932 getChatAnnouncementText + p 2 player + p 1 advancementEntry +c net/minecraft/class_1840 net/minecraft/item/WritableBookItem +c net/minecraft/class_186 net/minecraft/loot/condition/AlternativeLootCondition + f Ljava/util/function/Predicate; field_1247 predicate + f Ljava/util/List; field_1246 terms + m (Ljava/lang/Object;)Z test test + p 1 context + m (Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53408 method_53408 + p 1 instance + m (Ljava/util/List;Ljava/util/function/Predicate;)V + p 1 terms + p 2 predicate + m (Lnet/minecraft/class_47;)Z method_825 test + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; method_53407 createCodec + p 0 termsToCondition + m (Lnet/minecraft/class_186;)Ljava/util/List; method_53409 method_53409 + p 0 condition + m (Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; method_53410 createInlineCodec + p 0 termsToCondition + m (Lnet/minecraft/class_186;)Ljava/util/List; method_53406 method_53406 + p 0 condition +c net/minecraft/class_186$class_187 net/minecraft/loot/condition/AlternativeLootCondition$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_1248 terms + m (Ljava/util/List;)Lnet/minecraft/class_5341; method_51724 build + p 1 terms + m (Lnet/minecraft/class_5341$class_210;)V method_51730 add + p 1 builder + m ([Lnet/minecraft/class_5341$class_210;)V + p 1 terms +c net/minecraft/class_1833 net/minecraft/item/TippedArrowItem +c net/minecraft/class_181 net/minecraft/loot/context/LootContextParameters + f Lnet/minecraft/class_169; field_51805 ENCHANTMENT_LEVEL + f Lnet/minecraft/class_169; field_24424 ORIGIN + f Lnet/minecraft/class_169; field_1229 TOOL + f Lnet/minecraft/class_169; field_1224 BLOCK_STATE + f Lnet/minecraft/class_169; field_1233 LAST_DAMAGE_PLAYER + f Lnet/minecraft/class_169; field_61500 TARGET_ENTITY + f Lnet/minecraft/class_169; field_1228 BLOCK_ENTITY + f Lnet/minecraft/class_169; field_1227 DIRECT_ATTACKING_ENTITY + f Lnet/minecraft/class_169; field_1226 THIS_ENTITY + f Lnet/minecraft/class_169; field_1225 EXPLOSION_RADIUS + f Lnet/minecraft/class_169; field_1231 DAMAGE_SOURCE + f Lnet/minecraft/class_169; field_1230 ATTACKING_ENTITY + f Lnet/minecraft/class_169; field_61499 INTERACTING_ENTITY + f Lnet/minecraft/class_169; field_51806 ENCHANTMENT_ACTIVE +c net/minecraft/class_1838 net/minecraft/item/ItemUsageContext + f Lnet/minecraft/class_1937; field_8945 world + f Lnet/minecraft/class_1268; field_19176 hand + f Lnet/minecraft/class_1657; field_8942 player + f Lnet/minecraft/class_1799; field_8941 stack + f Lnet/minecraft/class_3965; field_17543 hit + m ()Lnet/minecraft/class_2350; method_8038 getSide + m ()Lnet/minecraft/class_1937; method_8045 getWorld + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;Lnet/minecraft/class_3965;)V + p 2 player + p 3 hand + p 4 stack + p 5 hit + p 1 world + m ()Z method_8046 shouldCancelInteraction + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_3965;)V + p 1 player + p 2 hand + p 3 hit + m ()Z method_17699 hitsInsideBlock + m ()Lnet/minecraft/class_2350; method_8042 getHorizontalPlayerFacing + c {@return the {@linkplain net.minecraft.entity.player.PlayerEntity#getHorizontalFacing\nhorizontal facing direction} of the player}\n\n@implSpec If the player is {@code null}, returns {@link Direction#NORTH}. + m ()Lnet/minecraft/class_3965; method_30344 getHitResult + m ()Lnet/minecraft/class_1657; method_8036 getPlayer + m ()Lnet/minecraft/class_1799; method_8041 getStack + m ()Lnet/minecraft/class_243; method_17698 getHitPos + m ()Lnet/minecraft/class_2338; method_8037 getBlockPos + m ()F method_8044 getPlayerYaw + m ()Lnet/minecraft/class_1268; method_20287 getHand +c net/minecraft/class_1836 net/minecraft/item/tooltip/TooltipType + f Lnet/minecraft/class_1836$class_1837; field_41070 BASIC + f Lnet/minecraft/class_1836$class_1837; field_41071 ADVANCED + m ()Z method_47370 isCreative + m ()Z method_8035 isAdvanced +c net/minecraft/class_1836$class_1837 net/minecraft/item/tooltip/TooltipType$Default + f Z comp_1153 creative + f Z comp_1152 advanced + m ()Lnet/minecraft/class_1836$class_1837; method_47371 withCreative + m ()Z comp_1152 advanced + m ()Z comp_1153 creative + m (ZZ)V + p 1 advanced + p 2 creative +c net/minecraft/class_1835 net/minecraft/item/TridentItem + f F field_30927 ATTACK_DAMAGE + f F field_30928 THROW_SPEED + f I field_30926 MIN_DRAW_DURATION + m ()Lnet/minecraft/class_9285; method_57395 createAttributeModifiers + m ()Lnet/minecraft/class_9424; method_58420 createToolComponent +c net/minecraft/class_11303 net/minecraft/client/realms/dto/RealmsRegion + f Ljava/lang/String; field_60200 name + f Ljava/lang/String; field_60201 translationKey + f Lnet/minecraft/class_11303; field_60176 AUSTRALIA_EAST + f Lnet/minecraft/class_11303; field_60179 CENTRAL_INDIA + f Lnet/minecraft/class_11303; field_60178 BRAZIL_SOUTH + f Lnet/minecraft/class_11303; field_60177 AUSTRALIA_SOUTHEAST + f Lnet/minecraft/class_11303; field_60180 CENTRAL_US + f Lnet/minecraft/class_11303; field_60184 FRANCE_CENTRAL + f Lnet/minecraft/class_11303; field_60183 EAST_US_2 + f Lnet/minecraft/class_11303; field_60182 EAST_US + f Lnet/minecraft/class_11303; field_60181 EAST_ASIA + f Lnet/minecraft/class_11303; field_60188 NORTH_CENTRAL_US + f Lnet/minecraft/class_11303; field_60187 KOREA_CENTRAL + f Lnet/minecraft/class_11303; field_60186 JAPAN_WEST + f Lnet/minecraft/class_11303; field_60185 JAPAN_EAST + f Lnet/minecraft/class_11303; field_60189 NORTH_EUROPE + f Lnet/minecraft/class_11303; field_60192 SWEDEN_CENTRAL + f Lnet/minecraft/class_11303; field_60191 SOUTHEAST_ASIA + f Lnet/minecraft/class_11303; field_60190 SOUTH_CENTRAL_US + f Lnet/minecraft/class_11303; field_60196 WEST_EUROPE + f Lnet/minecraft/class_11303; field_60195 WEST_CENTRAL_US + f Lnet/minecraft/class_11303; field_60194 UK_SOUTH + f Lnet/minecraft/class_11303; field_60193 UAE_NORTH + f Lnet/minecraft/class_11303; field_60199 INVALID_REGION + f Lnet/minecraft/class_11303; field_60198 WEST_US_2 + f Lnet/minecraft/class_11303; field_60197 WEST_US + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V + p 4 translationKey + p 3 name + m (Ljava/lang/String;)Lnet/minecraft/class_11303; method_71173 fromName + p 0 name +c net/minecraft/class_11303$class_11304 net/minecraft/client/realms/dto/RealmsRegion$RegionTypeAdapter + f Lorg/slf4j/Logger; field_60202 LOGGER + m (Lcom/google/gson/stream/JsonReader;)Ljava/lang/Object; read read + p 1 reader + m (Lcom/google/gson/stream/JsonWriter;Ljava/lang/Object;)V write write + p 2 region + p 1 writer + m (Lcom/google/gson/stream/JsonReader;)Lnet/minecraft/class_11303; method_71174 read + m (Lcom/google/gson/stream/JsonWriter;Lnet/minecraft/class_11303;)V method_71175 write +c net/minecraft/class_11302 net/minecraft/client/realms/dto/RealmsConfigurationDto + f Lnet/minecraft/class_4875; comp_4179 description + f Lnet/minecraft/class_11310; comp_4178 regionSelectionPreference + f Ljava/util/List; comp_4177 settings + f Lnet/minecraft/class_11308; comp_4176 options + m ()Lnet/minecraft/class_11308; comp_4176 options + m ()Ljava/util/List; comp_4177 settings + m ()Lnet/minecraft/class_11310; comp_4178 regionSelectionPreference + m ()Lnet/minecraft/class_4875; comp_4179 description + m (Lnet/minecraft/class_11308;Ljava/util/List;Lnet/minecraft/class_11310;Lnet/minecraft/class_4875;)V + p 1 options + p 2 settings + p 3 regionSelectionPreference + p 4 description +c net/minecraft/class_11301 net/minecraft/client/realms/dto/RealmsRegionDataList + f Ljava/util/List; comp_4175 regionData + m ()Lnet/minecraft/class_11301; method_71171 empty + m ()Ljava/util/List; comp_4175 regionData + m (Ljava/util/List;)V + p 1 regionData +c net/minecraft/class_11300 net/minecraft/client/realms/util/DontSerialize +c net/minecraft/class_1839 net/minecraft/item/consume/UseAction + f Ljava/lang/String; field_53768 name + f Ljava/util/function/IntFunction; field_53766 BY_ID + f I field_53767 id + f Z field_63381 noOffset + f Lcom/mojang/serialization/Codec; field_53764 CODEC + f Lnet/minecraft/class_9139; field_53765 PACKET_CODEC + f Lnet/minecraft/class_1839; field_63380 TRIDENT + f Lnet/minecraft/class_1839; field_39058 TOOT_HORN + f Lnet/minecraft/class_1839; field_27079 SPYGLASS + f Lnet/minecraft/class_1839; field_42717 BRUSH + f Lnet/minecraft/class_1839; field_55494 BUNDLE + f Lnet/minecraft/class_1839; field_8952 NONE + f Lnet/minecraft/class_1839; field_8953 BOW + f Lnet/minecraft/class_1839; field_8950 EAT + f Lnet/minecraft/class_1839; field_8951 SPEAR + f Lnet/minecraft/class_1839; field_8949 BLOCK + f Lnet/minecraft/class_1839; field_8946 DRINK + f Lnet/minecraft/class_1839; field_8947 CROSSBOW + m ()I method_62838 getId + m (Ljava/lang/String;IILjava/lang/String;Z)V + p 5 noOffset + p 4 name + p 3 id + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()Z method_75225 hasNoOffset +c net/minecraft/class_11306 net/minecraft/client/realms/dto/RealmsSlot + f Ljava/util/List; field_60207 settings + f I field_60205 slotId + f Lnet/minecraft/class_4883; field_60206 options + m ()Z method_71183 isHardcore + m ()Lnet/minecraft/class_11306; method_71181 copy + m (I)Lnet/minecraft/class_11306; method_71182 create + p 0 slotId + m (ILnet/minecraft/class_4883;Ljava/util/List;)V + p 1 slotId + p 2 options + p 3 settings +c net/minecraft/class_11306$class_11307 net/minecraft/client/realms/dto/RealmsSlot$OptionsTypeAdapter + m (Lcom/google/gson/stream/JsonReader;)Lnet/minecraft/class_4883; method_71184 read + m (Lcom/google/gson/stream/JsonWriter;Lnet/minecraft/class_4883;)V method_71185 write + m (Lcom/google/gson/stream/JsonWriter;Ljava/lang/Object;)V write write + p 1 writer + p 2 options + m (Lcom/google/gson/stream/JsonReader;)Ljava/lang/Object; read read + p 1 reader +c net/minecraft/class_11305 net/minecraft/client/realms/dto/RealmsSettingDto + f Ljava/lang/String; comp_4181 value + f Ljava/lang/String; comp_4180 name + m (Ljava/util/List;)Z method_71179 isHardcore + p 0 settings + m (Z)Lnet/minecraft/class_11305; method_71180 ofHardcore + p 0 hardcore + m ()Ljava/lang/String; comp_4181 value + m ()Ljava/lang/String; comp_4180 name + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 name + p 2 value +c net/minecraft/class_196 net/minecraft/advancement/criterion/BredAnimalsCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1429;Lnet/minecraft/class_1429;Lnet/minecraft/class_1296;)V method_855 trigger + p 1 player + p 3 partner + p 2 parent + p 4 child + m (Lnet/minecraft/class_47;Lnet/minecraft/class_47;Lnet/minecraft/class_47;Lnet/minecraft/class_196$class_198;)Z method_22455 method_22455 + p 3 conditions +c net/minecraft/class_196$class_198 net/minecraft/advancement/criterion/BredAnimalsCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47228 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2033 parent + f Ljava/util/Optional; comp_2035 child + f Ljava/util/Optional; comp_2034 partner + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_175; method_861 create + p 0 child + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/class_175; method_29918 create + p 1 partner + p 2 child + p 0 parent + m ()Lnet/minecraft/class_175; method_860 any + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 4 childPredicate + p 2 parentPredicate + p 3 partnerPredicate + p 1 playerPredicate + m (Lnet/minecraft/class_47;Lnet/minecraft/class_47;Lnet/minecraft/class_47;)Z method_862 matches + p 1 parentContext + p 2 partnerContext + p 3 childContext + m (Ljava/util/Optional;Lnet/minecraft/class_47;)Z method_53075 parentMatches + p 1 parentContext + p 0 parent + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54952 method_54952 + p 0 instance + m ()Ljava/util/Optional; comp_2035 child + m ()Ljava/util/Optional; comp_2034 partner + m ()Ljava/util/Optional; comp_2033 parent +c net/minecraft/class_194 net/minecraft/advancement/AdvancementPositioner + f Lnet/minecraft/class_194; field_1262 optionalLast + f Lnet/minecraft/class_194; field_1260 previousSibling + f I field_1261 childrenSize + f Lnet/minecraft/class_194; field_1264 substituteChild + f F field_1268 relativeRowInSiblings + f I field_1259 depth + f Lnet/minecraft/class_8781; field_46086 advancement + f F field_1269 row + f Lnet/minecraft/class_194; field_1258 parent + f Ljava/util/List; field_1267 children + m (F)V method_843 increaseRowRecursively + p 1 deltaRow + m ()V method_847 calculateRecursively + m (FIF)F method_842 findMinRowRecursively + p 3 minRow + p 2 depth + p 1 deltaRow + m (Lnet/minecraft/class_185;)V method_53710 method_53710 + p 1 display + m (Lnet/minecraft/class_8781;Lnet/minecraft/class_194;Lnet/minecraft/class_194;II)V + p 5 depth + p 2 parent + p 1 advancement + p 4 childrenSize + p 3 previousSibling + m (Lnet/minecraft/class_194;Lnet/minecraft/class_194;)Lnet/minecraft/class_194; method_845 getLast + m (Lnet/minecraft/class_194;F)V method_848 pushDown + p 2 extraRowDistance + p 1 positioner + m ()Lnet/minecraft/class_194; method_849 getFirstChild + m (Lnet/minecraft/class_8781;)V method_852 arrangeForTree + p 0 root + m (Lnet/minecraft/class_8781;Lnet/minecraft/class_194;)Lnet/minecraft/class_194; method_846 findChildrenRecursively + p 2 lastChild + p 1 advancement + m ()Lnet/minecraft/class_194; method_844 getLastChild + m ()V method_851 apply + m (Lnet/minecraft/class_194;)Lnet/minecraft/class_194; method_841 onFinishCalculation + p 1 last + m ()V method_850 onFinishChildrenCalculation +c net/minecraft/class_1852 net/minecraft/recipe/SpecialCraftingRecipe + f Lnet/minecraft/class_7710; field_40255 category + m (Lnet/minecraft/class_7710;)V + p 1 category +c net/minecraft/class_1852$class_1866 net/minecraft/recipe/SpecialCraftingRecipe$SpecialRecipeSerializer + c A serializer for hardcoded recipes. The recipes with this serializer don't\ntransport any extra data besides their ID when read from JSON or synchronized\nover network.\n\n

The name "special" comes from the fact that in vanilla, recipes using this\nserializer have IDs starting with {@code crafting_special_}. All of their logic and ingredients\nare also defined in code, which distinguishes them from "non-special" recipes. + f Lcom/mojang/serialization/MapCodec; field_46106 codec + f Lnet/minecraft/class_9139; field_48362 packetCodec + m (Lnet/minecraft/class_1852$class_1866$class_7711;)V + p 1 factory + m (Lnet/minecraft/class_1852$class_1866$class_7711;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53773 method_53773 + p 1 instance +c net/minecraft/class_1852$class_1866$class_7711 net/minecraft/recipe/SpecialCraftingRecipe$SpecialRecipeSerializer$Factory + m (Lnet/minecraft/class_7710;)Lnet/minecraft/class_3955; create create + p 1 category +c net/minecraft/class_199 net/minecraft/loot/condition/EntityScoresLootCondition + f Lnet/minecraft/class_47$class_50; comp_1872 entity + f Lcom/mojang/serialization/MapCodec; field_45863 CODEC + f Ljava/util/Map; comp_1871 scores + m (Ljava/lang/Object;)Z test test + p 1 context + m ()Lnet/minecraft/class_47$class_50; comp_1872 entity + m (Lnet/minecraft/class_47$class_50;)Lnet/minecraft/class_199$class_6163; method_35557 create + p 0 target + m (Ljava/util/Map;Lnet/minecraft/class_47$class_50;)V + p 2 target + p 1 scores + m (Lnet/minecraft/class_42;)Ljava/util/stream/Stream; method_32422 method_32422 + p 0 operator + m (Lnet/minecraft/class_47;Lnet/minecraft/class_1297;Lnet/minecraft/class_269;Ljava/lang/String;Lnet/minecraft/class_42;)Z method_865 entityScoreIsInRange + p 2 entity + p 3 scoreboard + p 4 objectiveName + p 5 range + p 1 context + m (Lnet/minecraft/class_47;)Z method_864 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53413 method_53413 + p 0 instance + m ()Ljava/util/Map; comp_1871 scores +c net/minecraft/class_199$class_6163 net/minecraft/loot/condition/EntityScoresLootCondition$Builder + f Lnet/minecraft/class_47$class_50; field_31870 target + f Lcom/google/common/collect/ImmutableMap$Builder; field_31869 scores + m (Ljava/lang/String;Lnet/minecraft/class_42;)Lnet/minecraft/class_199$class_6163; method_35558 score + p 2 value + p 1 name + m (Lnet/minecraft/class_47$class_50;)V + p 1 target +c net/minecraft/class_1851 net/minecraft/recipe/FireworkRocketRecipe + f Lnet/minecraft/class_1856; field_9007 PAPER + f Lnet/minecraft/class_1856; field_9006 DURATION_MODIFIER + f Lnet/minecraft/class_1856; field_9008 FIREWORK_STAR + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_17709 matches + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_17708 craft +c net/minecraft/class_1850 net/minecraft/recipe/BookCloningRecipe + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_17705 craft + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_17706 matches +c net/minecraft/class_1845 net/minecraft/recipe/BrewingRecipeRegistry + f Lnet/minecraft/class_1845; field_51402 EMPTY + f Ljava/util/List; field_51404 potionRecipes + f Ljava/util/List; field_51403 potionTypes + f Ljava/util/List; field_51405 itemRecipes + m (Lnet/minecraft/class_6880;)Z method_20361 isBrewable + p 1 potion + m (Lnet/minecraft/class_1799;)Z method_8069 isPotionRecipeIngredient + p 1 stack + m (Lnet/minecraft/class_1799;)Z method_59700 isPotionType + p 1 stack + m (Lnet/minecraft/class_1799;)Z method_8077 isValidIngredient + p 1 stack + m (Lnet/minecraft/class_7699;)Lnet/minecraft/class_1845; method_8076 create + p 0 enabledFeatures + m (Lnet/minecraft/class_1799;)Z method_8079 isItemRecipeIngredient + p 1 stack + m (Lnet/minecraft/class_1845$class_9665;)V method_59699 registerDefaults + p 0 builder + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_8078 craft + p 1 ingredient + p 2 input + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_8070 hasItemRecipe + p 2 ingredient + p 1 input + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_8072 hasRecipe + p 2 ingredient + p 1 input + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;)V + p 1 potionTypes + p 2 potionRecipes + p 3 itemRecipes + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_8075 hasPotionRecipe + p 2 ingredient + p 1 input +c net/minecraft/class_1845$class_1846 net/minecraft/recipe/BrewingRecipeRegistry$Recipe + f Lnet/minecraft/class_6880; comp_2190 from + f Lnet/minecraft/class_1856; comp_2191 ingredient + f Lnet/minecraft/class_6880; comp_2192 to + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1856;Lnet/minecraft/class_6880;)V + p 2 ingredient + p 1 from + p 3 to + m ()Lnet/minecraft/class_1856; comp_2191 ingredient + m ()Lnet/minecraft/class_6880; comp_2192 to + m ()Lnet/minecraft/class_6880; comp_2190 from +c net/minecraft/class_1845$class_9665 net/minecraft/recipe/BrewingRecipeRegistry$Builder + f Lnet/minecraft/class_7699; field_51409 enabledFeatures + f Ljava/util/List; field_51408 itemRecipes + f Ljava/util/List; field_51406 potionTypes + f Ljava/util/List; field_51407 potionRecipes + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1792;Lnet/minecraft/class_6880;)V method_59705 registerPotionRecipe + p 3 output + p 2 ingredient + p 1 input + m ()Lnet/minecraft/class_1845; method_59701 build + m (Lnet/minecraft/class_7699;)V + p 1 enabledFeatures + m (Lnet/minecraft/class_1792;)V method_59702 registerPotionType + p 1 item + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;)V method_59703 registerItemRecipe + p 3 output + p 1 input + p 2 ingredient + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_6880;)V method_59704 registerRecipes + p 1 ingredient + p 2 potion + m (Lnet/minecraft/class_1792;)V method_59706 assertPotion + p 0 potionType +c net/minecraft/class_1844 net/minecraft/component/type/PotionContentsComponent + f Lnet/minecraft/class_2561; field_25817 NONE_TEXT + f I field_49277 EFFECTLESS_COLOR + f Lnet/minecraft/class_9139; field_49276 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_49749 BASE_CODEC + f Lnet/minecraft/class_1844; field_49274 DEFAULT + f Lcom/mojang/serialization/Codec; field_49275 CODEC + f Ljava/util/List; comp_2380 customEffects + f Ljava/util/Optional; comp_3209 customName + f Ljava/util/Optional; comp_2378 potion + f Ljava/util/Optional; comp_2379 customColor + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_1844; method_57403 with + p 1 potion + m (I)I method_65361 getColor + p 1 defaultColor + m (Ljava/util/function/Consumer;F)V method_57402 forEachEffect + p 1 effectConsumer + p 2 durationMultiplier + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_64195 getName + p 1 prefix + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57399 method_57399 + p 0 instance + m (Lnet/minecraft/class_1293;)Lnet/minecraft/class_1844; method_57398 with + p 1 customEffect + m (Lnet/minecraft/class_6880;I)Lnet/minecraft/class_5250; method_66698 getEffectText + p 1 amplifier + p 0 effect + m (Ljava/util/List;Lnet/minecraft/class_6880;Lnet/minecraft/class_1322;)V method_55762 method_55762 + p 2 modifier + p 1 attribute + m (Ljava/lang/Iterable;)Ljava/util/OptionalInt; method_58111 mixColors + p 0 effects + m (Ljava/lang/Iterable;Ljava/util/function/Consumer;FF)V method_8065 buildTooltip + p 1 textConsumer + p 0 effects + p 3 tickRate + p 2 durationMultiplier + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1657;Lnet/minecraft/class_1309;Lnet/minecraft/class_1293;)V method_62840 method_62840 + p 3 effect + m (Lnet/minecraft/class_1309;F)V method_62839 apply + p 2 durationMultiplier + p 1 user + m (Lnet/minecraft/class_6880;)V + p 1 potion + m ()Ljava/lang/Iterable; method_57397 getEffects + m ()I method_8064 getColor + m (Lnet/minecraft/class_6880;)Z method_57401 matches + p 1 potion + m ()Z method_57405 hasEffects + m (Lnet/minecraft/class_6880;)Ljava/lang/String; method_64196 method_64196 + p 0 potionEntry + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_6880;)Lnet/minecraft/class_1799; method_57400 createStack + p 0 item + p 1 potion + m ()Ljava/util/List; comp_2380 customEffects + m ()Ljava/util/Optional; comp_2378 potion + m ()Ljava/util/Optional; comp_2379 customColor + m ()Ljava/util/Optional; comp_3209 customName + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/List;Ljava/util/Optional;)V + p 1 potion + p 2 customColor + p 3 customEffects + p 4 customName +c net/minecraft/class_1843 net/minecraft/item/WrittenBookItem +c net/minecraft/class_1842 net/minecraft/potion/Potion + f Ljava/lang/String; field_8954 baseName + f Lnet/minecraft/class_9139; field_51948 PACKET_CODEC + f Ljava/util/List; field_8955 effects + f Lnet/minecraft/class_7699; field_50152 requiredFeatures + f Lcom/mojang/serialization/Codec; field_51947 CODEC + m ()Ljava/lang/String; method_63990 getBaseName + m (Ljava/lang/String;[Lnet/minecraft/class_1293;)V + p 1 baseName + p 2 effects + m ()Z method_8050 hasInstantEffect + m ()Ljava/util/List; method_8049 getEffects + m ([Lnet/minecraft/class_7696;)Lnet/minecraft/class_1842; method_58671 requires + p 1 requiredFeatures +c net/minecraft/class_192 net/minecraft/loot/condition/LootConditionConsumingBuilder + m (Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_192; method_840 conditionally + p 1 condition + m (Ljava/lang/Iterable;Ljava/util/function/Function;)Lnet/minecraft/class_192; method_43744 conditionally + p 1 conditions + p 2 toBuilderFunction + m ()Lnet/minecraft/class_192; method_512 getThisConditionConsumingBuilder +c net/minecraft/class_1849 net/minecraft/recipe/ArmorDyeRecipe + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_17700 craft + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_17701 matches +c net/minecraft/class_1848 net/minecraft/recipe/BannerDuplicateRecipe + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_17703 matches + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_17702 craft +c net/minecraft/class_1847 net/minecraft/potion/Potions + f Lnet/minecraft/class_6880; field_9000 LONG_INVISIBILITY + f Lnet/minecraft/class_6880; field_9001 LONG_WATER_BREATHING + f Lnet/minecraft/class_6880; field_9002 LONG_POISON + f Lnet/minecraft/class_6880; field_9004 HARMING + f Lnet/minecraft/class_6880; field_9003 LONG_REGENERATION + f Lnet/minecraft/class_6880; field_9005 SWIFTNESS + f Lnet/minecraft/class_6880; field_8963 HEALING + f Lnet/minecraft/class_6880; field_8964 LONG_SLOW_FALLING + f Lnet/minecraft/class_6880; field_8965 LONG_STRENGTH + f Lnet/minecraft/class_6880; field_8966 STRONG_SWIFTNESS + f Lnet/minecraft/class_6880; field_8967 MUNDANE + f Lnet/minecraft/class_6880; field_8968 NIGHT_VISION + f Lnet/minecraft/class_6880; field_8969 LONG_FIRE_RESISTANCE + f Lnet/minecraft/class_6880; field_50155 OOZING + f Lnet/minecraft/class_6880; field_50156 INFESTED + f Lnet/minecraft/class_6880; field_50153 WIND_CHARGED + f Lnet/minecraft/class_6880; field_50154 WEAVING + f Lnet/minecraft/class_6880; field_8990 TURTLE_MASTER + f Lnet/minecraft/class_6880; field_8991 WATER + f Lnet/minecraft/class_6880; field_8992 STRONG_REGENERATION + f Lnet/minecraft/class_6880; field_8993 STRONG_STRENGTH + f Lnet/minecraft/class_6880; field_8994 WATER_BREATHING + f Lnet/minecraft/class_6880; field_8995 LUCK + f Lnet/minecraft/class_6880; field_8996 SLOWNESS + f Lnet/minecraft/class_6880; field_8997 INVISIBILITY + f Lnet/minecraft/class_6880; field_8998 STRONG_LEAPING + f Lnet/minecraft/class_6880; field_8999 AWKWARD + f Lnet/minecraft/class_6880; field_8970 LONG_WEAKNESS + f Lnet/minecraft/class_6880; field_8971 LONG_LEAPING + f Lnet/minecraft/class_6880; field_8972 STRONG_POISON + f Lnet/minecraft/class_6880; field_8973 STRONG_HARMING + f Lnet/minecraft/class_6880; field_8974 SLOW_FALLING + f Lnet/minecraft/class_6880; field_8975 WEAKNESS + f Lnet/minecraft/class_6880; field_8976 STRONG_SLOWNESS + f Lnet/minecraft/class_6880; field_8977 STRONG_TURTLE_MASTER + f Lnet/minecraft/class_6880; field_8978 STRENGTH + f Lnet/minecraft/class_6880; field_8979 LEAPING + f Lnet/minecraft/class_6880; field_8980 STRONG_HEALING + f Lnet/minecraft/class_6880; field_8981 LONG_NIGHT_VISION + f Lnet/minecraft/class_6880; field_8982 POISON + f Lnet/minecraft/class_6880; field_8983 LONG_SWIFTNESS + f Lnet/minecraft/class_6880; field_8985 THICK + f Lnet/minecraft/class_6880; field_8986 REGENERATION + f Lnet/minecraft/class_6880; field_8987 FIRE_RESISTANCE + f Lnet/minecraft/class_6880; field_8988 LONG_TURTLE_MASTER + f Lnet/minecraft/class_6880; field_8989 LONG_SLOWNESS + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_6880; method_55763 registerAndGetDefault + p 0 registry + m (Ljava/lang/String;Lnet/minecraft/class_1842;)Lnet/minecraft/class_6880; method_8084 register + p 0 name + p 1 potion +c net/minecraft/class_190 net/minecraft/loot/condition/DamageSourcePropertiesLootCondition + f Lcom/mojang/serialization/MapCodec; field_45862 CODEC + f Ljava/util/Optional; comp_1870 predicate + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53412 method_53412 + p 0 instance + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lnet/minecraft/class_47;)Z method_834 test + m (Lnet/minecraft/class_2022$class_2023;)Lnet/minecraft/class_5341$class_210; method_837 builder + p 0 builder + m ()Ljava/util/Optional; comp_1870 predicate + m (Ljava/util/Optional;)V + p 1 predicate +c net/minecraft/util/profiling/jfr/event/StructureGenerationEvent net/minecraft/util/profiling/jfr/event/StructureGenerationEvent + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_6880;Lnet/minecraft/class_5321;)V + p 3 dimension + p 1 chunkPos + p 2 structure +c net/minecraft/util/profiling/jfr/event/StructureGenerationEvent$class_10385 net/minecraft/util/profiling/jfr/event/StructureGenerationEvent$Names + f Ljava/lang/String; field_55171 CHUNK_POS_X + f Ljava/lang/String; field_55172 CHUNK_POS_Z + f Ljava/lang/String; field_55173 STRUCTURE + f Ljava/lang/String; field_55174 LEVEL + f Ljava/lang/String; field_55175 SUCCESS +c net/minecraft/class_6724 net/minecraft/world/gen/surfacebuilder/SurfaceBuilder + f Lnet/minecraft/class_2680; field_35283 SNOW_BLOCK + f Lnet/minecraft/class_2680; field_35275 WHITE_TERRACOTTA + f Lnet/minecraft/class_2680; field_35285 defaultState + f Lnet/minecraft/class_2680; field_35277 TERRACOTTA + f Lnet/minecraft/class_2680; field_35279 BROWN_TERRACOTTA + f I field_35286 seaLevel + f Lnet/minecraft/class_5216; field_35680 surfaceSecondaryNoise + f Lnet/minecraft/class_5216; field_35288 terracottaBandsOffsetNoise + f Lnet/minecraft/class_6574; field_35292 randomDeriver + f Lnet/minecraft/class_5216; field_35498 icebergPillarNoise + f Lnet/minecraft/class_5216; field_35496 badlandsPillarRoofNoise + f Lnet/minecraft/class_2680; field_35281 LIGHT_GRAY_TERRACOTTA + f Lnet/minecraft/class_2680; field_35276 ORANGE_TERRACOTTA + f Lnet/minecraft/class_2680; field_35278 YELLOW_TERRACOTTA + f [Lnet/minecraft/class_2680; field_35287 terracottaBands + f Lnet/minecraft/class_5216; field_35500 icebergSurfaceNoise + f Lnet/minecraft/class_5216; field_35499 icebergPillarRoofNoise + f Lnet/minecraft/class_2680; field_35280 RED_TERRACOTTA + f Lnet/minecraft/class_5216; field_35497 badlandsSurfaceNoise + f Lnet/minecraft/class_5216; field_35293 surfaceNoise + f Lnet/minecraft/class_2680; field_35282 PACKED_ICE + f Lnet/minecraft/class_5216; field_35495 badlandsPillarNoise + m (Lnet/minecraft/class_7138;Lnet/minecraft/class_2680;ILnet/minecraft/class_6574;)V + p 1 noiseConfig + p 4 randomDeriver + p 3 seaLevel + p 2 defaultState + m (III)Lnet/minecraft/class_2680; method_39103 getTerracottaBlock + p 3 z + p 2 y + p 1 x + m (Lnet/minecraft/class_5819;[Lnet/minecraft/class_2680;ILnet/minecraft/class_2680;)V method_39109 addTerracottaBands + p 3 state + p 1 terracottaBands + p 2 minBandSize + p 0 random + m (II)I method_39552 sampleRunDepth + p 2 blockZ + p 1 blockX + m (Lnet/minecraft/class_2680;)Z method_39333 isDefaultBlock + p 1 state + m (Lnet/minecraft/class_5819;)[Lnet/minecraft/class_2680; method_39108 createTerracottaBands + p 0 random + m (ILnet/minecraft/class_1959;Lnet/minecraft/class_6557;Lnet/minecraft/class_2338$class_2339;III)V method_39104 placeIceberg + p 1 minY + p 2 biome + p 3 column + p 4 mutablePos + p 5 x + p 6 z + p 7 surfaceY + m (Lnet/minecraft/class_7138;Lnet/minecraft/class_4543;Lnet/minecraft/class_2378;ZLnet/minecraft/class_5868;Lnet/minecraft/class_2791;Lnet/minecraft/class_6568;Lnet/minecraft/class_6686$class_6708;)V method_39106 buildSurface + p 8 materialRule + p 7 chunkNoiseSampler + p 4 useLegacyRandom + p 3 biomeRegistry + p 6 chunk + p 5 heightContext + p 2 biomeAccess + p 1 noiseConfig + m (Lnet/minecraft/class_6686$class_6708;Lnet/minecraft/class_5873;Ljava/util/function/Function;Lnet/minecraft/class_2791;Lnet/minecraft/class_6568;Lnet/minecraft/class_2338;Z)Ljava/util/Optional; method_39110 applyMaterialRule + p 1 rule + p 7 hasFluid + p 6 pos + p 5 chunkNoiseSampler + p 4 chunk + p 3 posToBiome + p 2 context + m (II)D method_39555 sampleSecondaryDepth + p 2 blockZ + p 1 blockX + m ()I method_61805 getSeaLevel + m (Lnet/minecraft/class_6557;IIILnet/minecraft/class_5539;)V method_39102 placeBadlandsPillar + p 5 chunk + p 1 column + p 2 x + p 3 z + p 4 surfaceY +c net/minecraft/class_6725 net/minecraft/world/gen/surfacebuilder/VanillaSurfaceRules + f Lnet/minecraft/class_6686$class_6708; field_35330 POWDER_SNOW + f Lnet/minecraft/class_6686$class_6708; field_35320 DIRT + f Lnet/minecraft/class_6686$class_6708; field_35562 SANDSTONE + f Lnet/minecraft/class_6686$class_6708; field_35329 SNOW_BLOCK + f Lnet/minecraft/class_6686$class_6708; field_35319 STONE + f Lnet/minecraft/class_6686$class_6708; field_35323 MYCELIUM + f Lnet/minecraft/class_6686$class_6708; field_35313 END_STONE + f Lnet/minecraft/class_6686$class_6708; field_35335 SOUL_SAND + f Lnet/minecraft/class_6686$class_6708; field_35640 DEEPSLATE + f Lnet/minecraft/class_6686$class_6708; field_35321 PODZOL + f Lnet/minecraft/class_6686$class_6708; field_35311 NETHER_WART_BLOCK + f Lnet/minecraft/class_6686$class_6708; field_35333 LAVA + f Lnet/minecraft/class_6686$class_6708; field_35327 SAND + f Lnet/minecraft/class_6686$class_6708; field_35317 TERRACOTTA + f Lnet/minecraft/class_6686$class_6708; field_35339 WARPED_WART_BLOCK + f Lnet/minecraft/class_6686$class_6708; field_35325 CALCITE + f Lnet/minecraft/class_6686$class_6708; field_35315 WHITE_TERRACOTTA + f Lnet/minecraft/class_6686$class_6708; field_35337 BASALT + f Lnet/minecraft/class_6686$class_6708; field_35331 ICE + f Lnet/minecraft/class_6686$class_6708; field_38808 MUD + f Lnet/minecraft/class_6686$class_6708; field_35561 RED_SANDSTONE + f Lnet/minecraft/class_6686$class_6708; field_35318 RED_SAND + f Lnet/minecraft/class_6686$class_6708; field_35639 BEDROCK + f Lnet/minecraft/class_6686$class_6708; field_35312 CRIMSON_NYLIUM + f Lnet/minecraft/class_6686$class_6708; field_35334 NETHERRACK + f Lnet/minecraft/class_6686$class_6708; field_35324 GRASS_BLOCK + f Lnet/minecraft/class_6686$class_6708; field_35310 WARPED_NYLIUM + f Lnet/minecraft/class_6686$class_6708; field_35332 WATER + f Lnet/minecraft/class_6686$class_6708; field_35322 COARSE_DIRT + f Lnet/minecraft/class_6686$class_6708; field_35316 ORANGE_TERRACOTTA + f Lnet/minecraft/class_6686$class_6708; field_35338 BLACKSTONE + f Lnet/minecraft/class_6686$class_6708; field_35328 PACKED_ICE + f Lnet/minecraft/class_6686$class_6708; field_35314 AIR + f Lnet/minecraft/class_6686$class_6708; field_35336 SOUL_SOIL + f Lnet/minecraft/class_6686$class_6708; field_35326 GRAVEL + m ()Lnet/minecraft/class_6686$class_6708; method_39138 createNetherSurfaceRule + m ()Lnet/minecraft/class_6686$class_6708; method_39134 createOverworldSurfaceRule + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_6686$class_6708; method_39136 block + p 0 block + m (ZZZ)Lnet/minecraft/class_6686$class_6708; method_39922 createDefaultRule + p 1 bedrockRoof + p 0 surface + p 2 bedrockFloor + m ()Lnet/minecraft/class_6686$class_6708; method_44325 getAirRule + m ()Lnet/minecraft/class_6686$class_6708; method_39139 getEndStoneRule + m (D)Lnet/minecraft/class_6686$class_6693; method_39135 surfaceNoiseThreshold + p 0 min +c net/minecraft/class_6793 net/minecraft/world/gen/placementmodifier/CountPlacementModifier + f Lnet/minecraft/class_6017; field_35719 count + f Lcom/mojang/serialization/MapCodec; field_35718 MODIFIER_CODEC + m (Lnet/minecraft/class_6017;)V + p 1 count + m (Lnet/minecraft/class_6017;)Lnet/minecraft/class_6793; method_39624 of + p 0 count + m (Lnet/minecraft/class_6793;)Lnet/minecraft/class_6017; method_39625 method_39625 + p 0 placementModifier + m (I)Lnet/minecraft/class_6793; method_39623 of + p 0 count +c net/minecraft/class_4130 net/minecraft/entity/ai/brain/task/HoldTradeOffersTask + f I field_18396 ticksLeft + f I field_18394 offerShownTicks + f I field_18395 offerIndex + f Ljava/util/List; field_18393 offers + f Lnet/minecraft/class_1799; field_18392 customerHeldStack + f I field_30167 RUN_INTERVAL + f I field_30168 OFFER_SHOWING_INTERVAL + m (Lnet/minecraft/class_1646;)V method_19026 refreshShownOffer + p 1 villager + m (Lnet/minecraft/class_1646;)V method_19598 holdOffer + p 1 villager + m (Lnet/minecraft/class_1646;)Lnet/minecraft/class_1309; method_19603 findPotentialCustomer + p 1 villager + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_19600 shouldKeepRunning + m (Lnet/minecraft/class_1646;)V method_37448 holdNothing + p 0 villager + m (Lnet/minecraft/class_1914;)Z method_19028 isPossible + p 1 offer + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)Z method_19599 shouldRun + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_1799;)V method_37447 holdOffer + p 0 villager + p 1 stack + m (II)V + p 1 minRunTime + p 2 maxRunTime + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1646;)V method_19027 setupOffers + p 2 villager + p 1 customer + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_19604 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_19605 finishRunning + m (Lnet/minecraft/class_1646;)V method_19601 loadPossibleOffers + p 1 villager + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_19602 run +c net/minecraft/class_6794 net/minecraft/world/gen/placementmodifier/EnvironmentScanPlacementModifier + f Lnet/minecraft/class_2350; field_35721 direction + f I field_35724 maxSteps + f Lcom/mojang/serialization/MapCodec; field_35720 MODIFIER_CODEC + f Lnet/minecraft/class_6646; field_35722 targetPredicate + f Lnet/minecraft/class_6646; field_35723 allowedSearchPredicate + m (Lnet/minecraft/class_6794;)Lnet/minecraft/class_6646; method_39630 method_39630 + p 0 placementModifier + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39626 method_39626 + p 0 instance + m (Lnet/minecraft/class_6794;)Lnet/minecraft/class_6646; method_39631 method_39631 + p 0 placementModifier + m (Lnet/minecraft/class_6794;)Lnet/minecraft/class_2350; method_39632 method_39632 + p 0 placementModifier + m (Lnet/minecraft/class_6794;)Ljava/lang/Integer; method_39627 method_39627 + p 0 placementModifier + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_6646;Lnet/minecraft/class_6646;I)V + p 4 maxSteps + p 2 targetPredicate + p 3 allowedSearchPredicate + p 1 direction + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_6646;I)Lnet/minecraft/class_6794; method_39628 of + p 0 direction + p 1 targetPredicate + p 2 maxSteps + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_6646;Lnet/minecraft/class_6646;I)Lnet/minecraft/class_6794; method_39629 of + p 3 maxSteps + p 1 targetPredicate + p 2 allowedSearchPredicate + p 0 direction +c net/minecraft/class_6791 net/minecraft/world/gen/heightprovider/WeightedListHeightProvider + f Lcom/mojang/serialization/MapCodec; field_35712 WEIGHTED_LIST_CODEC + f Lnet/minecraft/class_6012; field_35713 weightedList + m (Lnet/minecraft/class_6012;)V + p 1 weightedList +c net/minecraft/class_5463 net/minecraft/world/gen/carver/ConfiguredCarvers + f Lnet/minecraft/class_5321; field_33120 CANYON + f Lnet/minecraft/class_5321; field_33119 CAVE + f Lnet/minecraft/class_5321; field_25947 NETHER_CAVE + f Lnet/minecraft/class_5321; field_34968 CAVE_EXTRA_UNDERGROUND + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_30588 register + p 0 id + m (Lnet/minecraft/class_7891;)V method_46843 bootstrap + p 0 carverRegisterable +c net/minecraft/class_6792 net/minecraft/world/gen/placementmodifier/BiomePlacementModifier + f Lcom/mojang/serialization/MapCodec; field_35714 MODIFIER_CODEC + f Lnet/minecraft/class_6792; field_35715 INSTANCE + m ()Lnet/minecraft/class_6792; method_39614 of +c net/minecraft/class_5462 net/minecraft/util/function/CharPredicate + m ()Lnet/minecraft/class_5462; method_36123 negate + m (C)Z method_36124 method_36124 + p 1 c + m (C)Z test test + p 1 c + m (Lnet/minecraft/class_5462;C)Z method_36126 method_36126 + p 2 c + m (Lnet/minecraft/class_5462;)Lnet/minecraft/class_5462; method_36127 or + p 1 predicate + m (Lnet/minecraft/class_5462;C)Z method_36128 method_36128 + p 2 c + m (Lnet/minecraft/class_5462;)Lnet/minecraft/class_5462; method_36125 and + p 1 predicate +c net/minecraft/class_6790 net/minecraft/world/gen/feature/TwistingVinesFeatureConfig + f Lcom/mojang/serialization/Codec; field_35710 CODEC + f I comp_289 maxHeight + f I comp_288 spreadHeight + f I comp_287 spreadWidth + m ()I comp_288 spreadHeight + m ()I comp_287 spreadWidth + m ()I comp_289 maxHeight + m (III)V + p 1 spreadWidth + p 2 spreadHeight + p 3 maxHeight +c net/minecraft/class_5469 net/minecraft/structure/processor/StructureProcessorLists + f Lnet/minecraft/class_5321; field_26281 RAMPART_DEGRADATION + f Lnet/minecraft/class_5321; field_26282 ENTRANCE_REPLACEMENT + f Lnet/minecraft/class_5321; field_26280 BASTION_GENERIC_DEGRADATION + f Lnet/minecraft/class_5321; field_26283 BRIDGE + f Lnet/minecraft/class_5321; field_26284 ROOF + f Lnet/minecraft/class_5321; field_26277 HOUSING + f Lnet/minecraft/class_5321; field_26278 SIDE_WALL_DEGRADATION + f Lnet/minecraft/class_5321; field_26275 BOTTOM_RAMPART + f Lnet/minecraft/class_5321; field_26276 TREASURE_ROOMS + f Lnet/minecraft/class_5321; field_26279 STABLE_DEGRADATION + f Lnet/minecraft/class_5321; field_26270 FARM_PLAINS + f Lnet/minecraft/class_5321; field_26273 FARM_TAIGA + f Lnet/minecraft/class_5321; field_26274 FARM_DESERT + f Lnet/minecraft/class_5321; field_26271 FARM_SAVANNA + f Lnet/minecraft/class_5321; field_26272 FARM_SNOWY + f Lnet/minecraft/class_5321; field_26265 MOSSIFY_20_PERCENT + f Lnet/minecraft/class_5321; field_26266 MOSSIFY_70_PERCENT + f Lnet/minecraft/class_5321; field_26263 ZOMBIE_DESERT + f Lnet/minecraft/class_5321; field_26264 MOSSIFY_10_PERCENT + f Lnet/minecraft/class_5321; field_26269 STREET_SNOWY_OR_TAIGA + f Lnet/minecraft/class_5321; field_26267 STREET_PLAINS + f Lnet/minecraft/class_5321; field_26268 STREET_SAVANNA + f Lnet/minecraft/class_5321; field_29537 FOSSIL_ROT + f Lnet/minecraft/class_5321; field_29539 FOSSIL_DIAMONDS + f Lnet/minecraft/class_5321; field_29538 FOSSIL_COAL + f Lnet/minecraft/class_5321; field_26261 ZOMBIE_SNOWY + f Lnet/minecraft/class_5321; field_26262 ZOMBIE_TAIGA + f Lnet/minecraft/class_5321; field_26260 ZOMBIE_SAVANNA + f Lnet/minecraft/class_5321; field_26257 HIGH_RAMPART + f Lnet/minecraft/class_5321; field_26256 HIGH_WALL + f Lnet/minecraft/class_5321; field_26259 ZOMBIE_PLAINS + f Lnet/minecraft/class_5321; field_38473 ANCIENT_CITY_GENERIC_DEGRADATION + f Lnet/minecraft/class_5321; field_38472 ANCIENT_CITY_START_DEGRADATION + f Lnet/minecraft/class_5321; field_38474 ANCIENT_CITY_WALLS_DEGRADATION + f Lnet/minecraft/class_5321; field_51848 TRIAL_CHAMBERS_COPPER_BULB_DEGRADATION + f Lnet/minecraft/class_5321; field_44689 TRAIL_RUINS_HOUSES_ARCHAEOLOGY + f Lnet/minecraft/class_5321; field_44690 TRAIL_RUINS_ROADS_ARCHAEOLOGY + f Lnet/minecraft/class_5321; field_44691 TRAIL_RUINS_TOWER_TOP_ARCHAEOLOGY + f Lnet/minecraft/class_5321; field_26689 OUTPOST_ROT + f Lnet/minecraft/class_5321; field_26688 EMPTY + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_46845 of + p 0 id + m (Lnet/minecraft/class_5321;I)Lnet/minecraft/class_8243; method_51464 createTrailRuinsTowerTopProcessor + p 0 lootTable + p 1 limit + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Ljava/util/List;)V method_30601 register + p 0 processorListRegisterable + p 1 key + p 2 processors + m (Lnet/minecraft/class_7891;)V method_46846 bootstrap + p 0 processorListRegisterable +c net/minecraft/class_5468 net/minecraft/structure/pool/StructurePools + f Lnet/minecraft/class_5321; field_26254 EMPTY + m (Lnet/minecraft/class_7891;Ljava/lang/String;Lnet/minecraft/class_3785;)V method_30600 register + p 2 pool + p 1 id + p 0 structurePoolsRegisterable + m (Lnet/minecraft/class_7891;)V method_30599 bootstrap + p 0 structurePoolsRegisterable + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_60923 of + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_46844 ofVanilla + p 0 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_64955 of + p 0 id +c net/minecraft/class_6799 net/minecraft/world/gen/placementmodifier/RarityFilterPlacementModifier + f I field_35753 chance + f Lcom/mojang/serialization/MapCodec; field_35752 MODIFIER_CODEC + m (I)V + p 1 chance + m (I)Lnet/minecraft/class_6799; method_39659 of + p 0 chance + m (Lnet/minecraft/class_6799;)Ljava/lang/Integer; method_39660 method_39660 + p 0 placementModifier +c net/minecraft/class_4139 net/minecraft/village/VillagerGossipType + f Ljava/lang/String; field_18430 id + f I field_18432 maxValue + f I field_18434 shareDecrement + f I field_30240 MAX_TRADING_REPUTATION + f I field_19354 decay + f I field_18431 multiplier + f I field_30242 TRADING_GOSSIP_DECAY + f I field_30241 TRADING_GOSSIP_SHARE_DECREMENT + f Lcom/mojang/serialization/Codec; field_41672 CODEC + f Lnet/minecraft/class_4139; field_18426 MINOR_POSITIVE + f Lnet/minecraft/class_4139; field_18427 MAJOR_POSITIVE + f Lnet/minecraft/class_4139; field_18424 MAJOR_NEGATIVE + f Lnet/minecraft/class_4139; field_18425 MINOR_NEGATIVE + f Lnet/minecraft/class_4139; field_18428 TRADING + m (Ljava/lang/String;ILjava/lang/String;IIII)V + p 7 shareDecrement + p 6 decay + p 5 maxReputation + p 4 multiplier + p 3 id +c net/minecraft/class_6797 net/minecraft/world/gen/placementmodifier/PlacementModifier + c A placement modifier is a one-to-many position transformation, which\ntakes a position with some context and returns zero or more positions.\nIt's used to determine where to generate configured features.\n\n@see net.minecraft.world.gen.feature.ConfiguredFeature + f Lcom/mojang/serialization/Codec; field_35736 CODEC + m (Lnet/minecraft/class_5444;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Ljava/util/stream/Stream; method_14452 getPositions + c Applies this placement modifier to the given position. + p 2 random + p 3 pos + p 1 context + m ()Lnet/minecraft/class_6798; method_39615 getType +c net/minecraft/class_6798 net/minecraft/world/gen/placementmodifier/PlacementModifierType + f Lnet/minecraft/class_6798; field_52292 FIXED_PLACEMENT + f Lnet/minecraft/class_6798; field_35739 SURFACE_RELATIVE_THRESHOLD_FILTER + f Lnet/minecraft/class_6798; field_35738 RARITY_FILTER + f Lnet/minecraft/class_6798; field_35737 BLOCK_PREDICATE_FILTER + f Lnet/minecraft/class_6798; field_35741 BIOME + f Lnet/minecraft/class_6798; field_35740 SURFACE_WATER_DEPTH_FILTER + f Lnet/minecraft/class_6798; field_35749 IN_SQUARE + f Lnet/minecraft/class_6798; field_35748 HEIGHT_RANGE + f Lnet/minecraft/class_6798; field_35747 HEIGHTMAP + f Lnet/minecraft/class_6798; field_35746 ENVIRONMENT_SCAN + f Lnet/minecraft/class_6798; field_35745 COUNT_ON_EVERY_LAYER + f Lnet/minecraft/class_6798; field_35743 NOISE_BASED_COUNT + f Lnet/minecraft/class_6798; field_35744 NOISE_THRESHOLD_COUNT + f Lnet/minecraft/class_6798; field_35742 COUNT + f Lnet/minecraft/class_6798; field_35750 RANDOM_OFFSET + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_6798; method_39655 register + p 1 codec + p 0 id +c net/minecraft/class_4133 net/minecraft/entity/ai/brain/task/VillagerWorkTask + f D field_30193 MAX_DISTANCE + f I field_30192 RUN_TIME + f J field_19426 lastCheckedTime + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)Z method_21641 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)V method_26335 performAdditionalWork + p 2 entity + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_21642 run + m (Lnet/minecraft/class_4095;Lnet/minecraft/class_4208;)V method_19613 method_19613 + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_26336 shouldKeepRunning +c net/minecraft/class_6795 net/minecraft/world/gen/placementmodifier/HeightRangePlacementModifier + f Lcom/mojang/serialization/MapCodec; field_35725 MODIFIER_CODEC + f Lnet/minecraft/class_6122; field_35726 height + m (Lnet/minecraft/class_6122;)V + p 1 height + m (Lnet/minecraft/class_6122;)Lnet/minecraft/class_6795; method_39635 of + p 0 height + m (Lnet/minecraft/class_6795;)Lnet/minecraft/class_6122; method_39636 method_39636 + p 0 placementModifier + m (Lnet/minecraft/class_5843;Lnet/minecraft/class_5843;)Lnet/minecraft/class_6795; method_39637 trapezoid + p 0 minOffset + p 1 maxOffset + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39633 method_39633 + p 0 instance + m (Lnet/minecraft/class_5843;Lnet/minecraft/class_5843;)Lnet/minecraft/class_6795; method_39634 uniform + p 0 minOffset + p 1 maxOffset +c net/minecraft/class_4136 net/minecraft/village/VillagerGossips + f Ljava/util/Map; field_18419 entityReputation + f Lcom/mojang/serialization/Codec; field_56649 CODEC + m (Ljava/util/UUID;Lnet/minecraft/class_4139;I)V method_35126 removeGossip + p 1 target + p 3 value + p 2 type + m (Lnet/minecraft/class_4136$class_4138;)V method_67654 method_67654 + p 1 gossip + m (Lnet/minecraft/class_4139;)V method_35121 remove + p 1 type + m (Ljava/util/List;)V + p 1 gossips + m (Lnet/minecraft/class_5819;I)Ljava/util/Collection; method_19070 pickGossips + p 1 random + p 2 count + m ()Ljava/util/stream/Stream; method_19074 entries + m (Lnet/minecraft/class_4139;II)I method_19065 method_19065 + p 3 right + p 2 left + m (Lnet/minecraft/class_4139;II)I method_19063 mergeReputation + p 1 type + p 3 right + p 2 left + m ()Ljava/util/Map; method_35120 getEntityReputationAssociatedGossips + m (Ljava/util/UUID;Lnet/minecraft/class_4139;I)V method_19072 startGossip + p 1 target + p 3 value + p 2 type + m (Ljava/util/UUID;)Lnet/minecraft/class_4136$class_4137; method_19071 getReputationFor + p 1 target + m (Ljava/util/UUID;Lnet/minecraft/class_4136$class_4137;)V method_67653 method_67653 + p 2 reputation + p 1 target + m (II)I method_19059 max + p 0 left + p 1 right + m (Lnet/minecraft/class_4139;Ljava/util/function/DoublePredicate;)J method_35122 getReputationCount + p 2 predicate + p 1 type + m ()Lnet/minecraft/class_4136; method_67658 copy + m (Lnet/minecraft/class_4136;Lnet/minecraft/class_5819;I)V method_19061 shareGossipFrom + p 1 from + p 2 random + p 3 count + m (Ljava/util/UUID;Lnet/minecraft/class_4139;)V method_35124 remove + p 2 type + p 1 target + m (Ljava/util/UUID;)Lnet/minecraft/class_4136$class_4137; method_67656 method_67656 + p 0 uuid + m ()V method_20651 decay + m (Ljava/util/function/DoublePredicate;Lnet/minecraft/class_4139;Lnet/minecraft/class_4136$class_4137;)Z method_35125 method_35125 + p 2 reputation + m (Ljava/util/UUID;Ljava/util/function/Predicate;)I method_19073 getReputationFor + p 1 target + p 2 gossipTypeFilter + m (Lnet/minecraft/class_4136$class_4138;)V method_19075 method_19075 + p 1 gossip + m (Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_19069 method_19069 + p 0 entry + m (Lnet/minecraft/class_4136;)Ljava/util/List; method_67655 method_67655 + p 0 gossips + m (Ljava/util/Map;Ljava/util/UUID;)V method_35123 method_35123 + p 2 uuid + m (Lnet/minecraft/class_4136;)V method_67652 add + p 1 gossips + m ()V method_67657 clear +c net/minecraft/class_4136$class_4137 net/minecraft/village/VillagerGossips$Reputation + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_18420 associatedGossip + m (Ljava/util/function/Predicate;)I method_19081 getValueFor + p 1 gossipTypeFilter + m (Ljava/util/function/Predicate;Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)Z method_19082 method_19082 + p 1 entry + m ()Z method_20654 isObsolete + m ()V method_20652 decay + m (Lnet/minecraft/class_4139;)V method_20655 remove + p 1 gossipType + m (Ljava/util/UUID;)Ljava/util/stream/Stream; method_19079 entriesFor + p 1 target + m (Ljava/util/UUID;Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)Lnet/minecraft/class_4136$class_4138; method_19080 method_19080 + p 1 entry + m (Lnet/minecraft/class_4139;)V method_20653 clamp + p 1 gossipType + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)I method_19078 method_19078 + p 0 entry +c net/minecraft/class_4136$class_4138 net/minecraft/village/VillagerGossips$GossipEntry + f Ljava/util/UUID; comp_1180 target + f I comp_1182 value + f Lcom/mojang/serialization/Codec; field_41670 CODEC + f Lnet/minecraft/class_4139; comp_1181 type + m ()Ljava/util/UUID; comp_1180 target + m ()I comp_1182 value + m (Ljava/util/UUID;Lnet/minecraft/class_4139;I)V + p 1 target + p 2 type + p 3 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47927 method_47927 + p 0 instance + m ()Lnet/minecraft/class_4139; comp_1181 type + m ()I method_19083 getValue +c net/minecraft/class_6796 net/minecraft/world/gen/feature/PlacedFeature + f Lcom/mojang/serialization/Codec; field_35731 LIST_CODEC + f Lcom/mojang/serialization/Codec; field_35730 REGISTRY_CODEC + f Lnet/minecraft/class_6880; comp_334 feature + f Ljava/util/List; comp_335 placementModifiers + f Lcom/mojang/serialization/Codec; field_36416 LISTS_CODEC + f Lcom/mojang/serialization/Codec; field_35729 CODEC + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Z method_39644 generateUnregistered + p 1 world + p 3 random + p 2 generator + p 4 pos + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Z method_39650 generate + c Generates a configured feature at the positions obtained by applying\nplacement modifiers to the given position.\n\n

To calculate positions, it first creates a singleton stream of the\ngiven position, then it applies placement modifiers with {@linkplain\nStream#flatMap flatMap} in order they appear in the list. + p 2 generator + p 1 world + p 4 pos + p 3 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39645 method_39645 + p 0 instance + m (Lnet/minecraft/class_6797;Lnet/minecraft/class_5444;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Ljava/util/stream/Stream; method_39649 method_39649 + p 3 posx + m (Lnet/minecraft/class_5444;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Z method_39648 generate + p 3 pos + p 1 context + p 2 random + m ()Lnet/minecraft/class_6880; comp_334 feature + m ()Ljava/util/List; comp_335 placementModifiers + m (Lnet/minecraft/class_2975;Lnet/minecraft/class_5444;Lnet/minecraft/class_5819;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/class_2338;)V method_39646 method_39646 + p 4 placedPos + m (Lnet/minecraft/class_6880;Ljava/util/List;)V + p 2 placementModifiers + p 1 feature + m ()Ljava/util/stream/Stream; method_39643 getDecoratedFeatures + m (Lnet/minecraft/class_6796;)Lnet/minecraft/class_6880; method_39651 method_39651 + p 0 feature + m (Lnet/minecraft/class_6796;)Ljava/util/List; method_39647 method_39647 + p 0 feature +c net/minecraft/class_4135 net/minecraft/entity/ai/goal/PrioritizedGoal + f Lnet/minecraft/class_1352; field_18416 goal + f I field_18417 priority + f Z field_18418 running + m ()Z method_19056 isRunning + m ()Lnet/minecraft/class_1352; method_19058 getGoal + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (ILnet/minecraft/class_1352;)V + p 2 goal + p 1 priority + m ()I method_19057 getPriority + m (Lnet/minecraft/class_4135;)Z method_19055 canBeReplacedBy + p 1 goal +c net/minecraft/class_5472 net/minecraft/network/RateLimitedConnection + c A connection that disconnects from the backing netty channel if too\nmany packets are received. + f I field_26344 rateLimit + f Lorg/slf4j/Logger; field_26342 LOGGER + f Lnet/minecraft/class_2561; field_26343 RATE_LIMIT_EXCEEDED_MESSAGE + m (I)V + p 1 rateLimit +c net/minecraft/class_4141 net/minecraft/entity/ai/brain/MemoryModuleState + f Lnet/minecraft/class_4141; field_18457 VALUE_ABSENT + f Lnet/minecraft/class_4141; field_18458 REGISTERED + f Lnet/minecraft/class_4141; field_18456 VALUE_PRESENT +c net/minecraft/class_4140 net/minecraft/entity/ai/brain/MemoryModuleType + c A memory module type represents a type of data stored in a brain. The memory\ndata can be shared by different tasks once they are updated by a sensor or\ncreated by some task. This can avoid some redundant calculations.\n\n@see Brain#memories\n@see Memory + f Ljava/util/Optional; field_24668 codec + f Lnet/minecraft/class_4140; field_30245 LONG_JUMP_MID_JUMP + f Lnet/minecraft/class_4140; field_30246 HAS_HUNTING_COOLDOWN + f Lnet/minecraft/class_4140; field_30243 NEAREST_ATTACKABLE + f Lnet/minecraft/class_4140; field_30244 LONG_JUMP_COOLING_DOWN + f Lnet/minecraft/class_4140; field_47257 BREEZE_JUMP_INHALING + f Lnet/minecraft/class_4140; field_47258 BREEZE_JUMP_TARGET + f Lnet/minecraft/class_4140; field_47255 BREEZE_SHOOT_RECOVER + f Lnet/minecraft/class_4140; field_47256 BREEZE_SHOOT_COOLDOWN + f Lnet/minecraft/class_4140; field_47253 BREEZE_SHOOT + f Lnet/minecraft/class_4140; field_47254 BREEZE_SHOOT_CHARGING + f Lnet/minecraft/class_4140; field_47252 BREEZE_JUMP_COOLDOWN + f Lnet/minecraft/class_4140; field_37443 IS_PREGNANT + f Lnet/minecraft/class_4140; field_37442 IS_IN_WATER + f Lnet/minecraft/class_4140; field_25359 NEAREST_VISIBLE_ADULT + f Lnet/minecraft/class_4140; field_62429 UNREACHABLE_TRANSPORT_BLOCK_POSITIONS + f Lnet/minecraft/class_4140; field_25360 NEAREST_VISIBLE_NEMESIS + f Lnet/minecraft/class_4140; field_25361 UNIVERSAL_ANGER + f Lnet/minecraft/class_4140; field_20616 LAST_WOKEN + f Lnet/minecraft/class_4140; field_25754 GOLEM_DETECTED_RECENTLY + f Lnet/minecraft/class_4140; field_25755 NEARBY_ADULT_PIGLINS + f Lnet/minecraft/class_4140; field_18438 HOME + f Lnet/minecraft/class_4140; field_18439 JOB_SITE + f Lnet/minecraft/class_4140; field_18437 DUMMY + f Lnet/minecraft/class_4140; field_18440 MEETING_POINT + f Lnet/minecraft/class_4140; field_18441 MOBS + f Lnet/minecraft/class_4140; field_18448 BREED_TARGET + f Lnet/minecraft/class_4140; field_18449 PATH + f Lnet/minecraft/class_4140; field_18446 LOOK_TARGET + f Lnet/minecraft/class_4140; field_18447 INTERACTION_TARGET + f Lnet/minecraft/class_4140; field_18444 NEAREST_VISIBLE_PLAYER + f Lnet/minecraft/class_4140; field_18445 WALK_TARGET + f Lnet/minecraft/class_4140; field_18442 VISIBLE_MOBS + f Lnet/minecraft/class_4140; field_18443 NEAREST_PLAYERS + f Lnet/minecraft/class_4140; field_18452 HURT_BY_ENTITY + f Lnet/minecraft/class_4140; field_38858 SONIC_BOOM_SOUND_DELAY + f Lnet/minecraft/class_4140; field_18453 NEAREST_HOSTILE + f Lnet/minecraft/class_4140; field_38857 SONIC_BOOM_SOUND_COOLDOWN + f Lnet/minecraft/class_4140; field_38856 SONIC_BOOM_COOLDOWN + f Lnet/minecraft/class_4140; field_18450 INTERACTABLE_DOORS + f Lnet/minecraft/class_4140; field_18451 HURT_BY + f Lnet/minecraft/class_4140; field_38394 LIKED_PLAYER + f Lnet/minecraft/class_4140; field_38396 LIKED_NOTEBLOCK_COOLDOWN_TICKS + f Lnet/minecraft/class_4140; field_38395 LIKED_NOTEBLOCK + f Lnet/minecraft/class_4140; field_38397 ITEM_PICKUP_COOLDOWN_TICKS + f Lnet/minecraft/class_4140; field_33484 RAM_TARGET + f Lnet/minecraft/class_4140; field_39450 UNREACHABLE_TONGUE_TARGETS + f Lnet/minecraft/class_4140; field_22474 NEAREST_REPELLENT + f Lnet/minecraft/class_4140; field_22473 ADMIRING_DISABLED + f Lnet/minecraft/class_4140; field_22340 NEAREST_VISIBLE_BABY_HOGLIN + f Lnet/minecraft/class_4140; field_22343 NEAREST_VISIBLE_ADULT_PIGLINS + f Lnet/minecraft/class_4140; field_22475 ATTACK_COOLING_DOWN + f Lnet/minecraft/class_4140; field_22342 NEAREST_TARGETABLE_PLAYER_NOT_WEARING_GOLD + f Lnet/minecraft/class_4140; field_22345 NEAREST_VISIBLE_ADULT_PIGLIN + f Lnet/minecraft/class_4140; field_22346 NEAREST_VISIBLE_ZOMBIFIED + f Lnet/minecraft/class_4140; field_22344 NEAREST_VISIBLE_ADULT_HOGLINS + f Lnet/minecraft/class_4140; field_22348 VISIBLE_ADULT_HOGLIN_COUNT + f Lnet/minecraft/class_4140; field_22347 VISIBLE_ADULT_PIGLIN_COUNT + f Lnet/minecraft/class_4140; field_25813 TIME_TRYING_TO_REACH_ADMIRE_ITEM + f Lnet/minecraft/class_4140; field_22349 NEAREST_PLAYER_HOLDING_WANTED_ITEM + f Lnet/minecraft/class_4140; field_25814 DISABLE_WALK_TO_ADMIRE_ITEM + f Lnet/minecraft/class_4140; field_47762 DANGER_DETECTED_RECENTLY + f Lnet/minecraft/class_4140; field_22350 ATE_RECENTLY + f Lnet/minecraft/class_4140; field_47763 BREEZE_LEAVING_WATER + f Lnet/minecraft/class_4140; field_22333 ANGRY_AT + f Lnet/minecraft/class_4140; field_22332 NEAREST_VISIBLE_WANTED_ITEM + f Lnet/minecraft/class_4140; field_22336 HUNTED_RECENTLY + f Lnet/minecraft/class_4140; field_22334 ADMIRING_ITEM + f Lnet/minecraft/class_4140; field_22337 CELEBRATE_LOCATION + f Lnet/minecraft/class_4140; field_22339 NEAREST_VISIBLE_HUNTABLE_HOGLIN + f Lnet/minecraft/class_4140; field_42638 SNIFFER_SNIFFING_TARGET + f Lnet/minecraft/class_4140; field_42639 SNIFFER_DIGGING + f Lnet/minecraft/class_4140; field_42637 SNIFFER_EXPLORED_POSITIONS + f Lnet/minecraft/class_4140; field_55958 NEAREST_VISIBLE_TARGETABLE_PLAYERS + f Lnet/minecraft/class_4140; field_18873 SECONDARY_JOB_SITE + f Lnet/minecraft/class_4140; field_22353 PACIFIED + f Lnet/minecraft/class_4140; field_22355 ATTACK_TARGET + f Lnet/minecraft/class_4140; field_22354 NEAREST_VISIBLE_TARGETABLE_PLAYER + f Lnet/minecraft/class_4140; field_22356 RIDE_TARGET + f Lnet/minecraft/class_4140; field_22357 AVOID_TARGET + f Lnet/minecraft/class_4140; field_28324 PLAY_DEAD_TICKS + f Lnet/minecraft/class_4140; field_28325 TEMPTING_PLAYER + f Lnet/minecraft/class_4140; field_28326 TEMPTATION_COOLDOWN_TICKS + f Lnet/minecraft/class_4140; field_28327 IS_TEMPTED + f Lnet/minecraft/class_4140; field_40127 GAZE_COOLDOWN_TICKS + f Lnet/minecraft/class_4140; field_42640 SNIFFER_HAPPY + f Lnet/minecraft/class_4140; field_19385 LAST_SLEPT + f Lnet/minecraft/class_4140; field_19386 LAST_WORKED_AT_POI + f Lnet/minecraft/class_4140; field_39408 IS_PANICKING + f Lnet/minecraft/class_4140; field_25159 DANCING + f Lnet/minecraft/class_4140; field_61255 TRANSPORT_ITEMS_COOLDOWN_TICKS + f Lnet/minecraft/class_4140; field_61254 VISITED_BLOCK_POSITIONS + f Lnet/minecraft/class_4140; field_19008 HIDING_PLACE + f Lnet/minecraft/class_4140; field_19009 HEARD_BELL_TIME + f Lnet/minecraft/class_4140; field_19006 VISIBLE_VILLAGER_BABIES + f Lnet/minecraft/class_4140; field_19007 NEAREST_BED + f Lnet/minecraft/class_4140; field_64648 SPEAR_FLEEING_TIME + f Lnet/minecraft/class_4140; field_63317 CHARGE_COOLDOWN_TICKS + f Lnet/minecraft/class_4140; field_64649 SPEAR_FLEEING_POSITION + f Lnet/minecraft/class_4140; field_63318 ATTACK_TARGET_COOLDOWN + f Lnet/minecraft/class_4140; field_19293 CANT_REACH_WALK_TARGET_SINCE + f Lnet/minecraft/class_4140; field_25160 POTENTIAL_JOB_SITE + f Lnet/minecraft/class_4140; field_64650 SPEAR_CHARGE_POSITION + f Lnet/minecraft/class_4140; field_64652 SPEAR_STATUS + f Lnet/minecraft/class_4140; field_64651 SPEAR_ENGAGE_TIME + f Lnet/minecraft/class_4140; field_38113 ROAR_SOUND_DELAY + f Lnet/minecraft/class_4140; field_33483 RAM_COOLDOWN_TICKS + f Lnet/minecraft/class_4140; field_38110 RECENT_PROJECTILE + f Lnet/minecraft/class_4140; field_38112 IS_EMERGING + f Lnet/minecraft/class_4140; field_38111 IS_SNIFFING + f Lnet/minecraft/class_4140; field_38104 ROAR_SOUND_COOLDOWN + f Lnet/minecraft/class_4140; field_38103 DIG_COOLDOWN + f Lnet/minecraft/class_4140; field_38106 TOUCH_COOLDOWN + f Lnet/minecraft/class_4140; field_38105 SNIFF_COOLDOWN + f Lnet/minecraft/class_4140; field_38109 DISTURBANCE_LOCATION + f Lnet/minecraft/class_4140; field_38108 ROAR_TARGET + f Lnet/minecraft/class_4140; field_38107 VIBRATION_COOLDOWN + f Lnet/minecraft/class_4140; field_26389 DOORS_TO_CLOSE + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_4140; method_19092 register + p 0 id + p 1 codec + m ()Ljava/util/Optional; method_19093 getCodec + m (Ljava/util/Optional;)V + p 1 codec + m (Ljava/lang/String;)Lnet/minecraft/class_4140; method_20738 register + p 0 id +c net/minecraft/class_4143 net/minecraft/entity/ai/brain/sensor/DummySensor +c net/minecraft/class_5473 net/minecraft/command/argument/AngleArgumentType + f Ljava/util/Collection; field_26369 EXAMPLES + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_27345 INVALID_ANGLE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_26368 INCOMPLETE_ANGLE_EXCEPTION + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_5473$class_5474; method_30659 parse + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m ()Lnet/minecraft/class_5473; method_30658 angle + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)F method_30660 getAngle + p 1 name + p 0 context +c net/minecraft/class_5473$class_5474 net/minecraft/command/argument/AngleArgumentType$Angle + f F field_26370 angle + f Z field_26371 relative + m (FZ)V + p 1 angle + p 2 relative + m (Lnet/minecraft/class_2168;)F method_30661 getAngle + p 1 source +c net/minecraft/class_4142 net/minecraft/entity/ai/brain/WalkTarget + f I field_18462 completionRange + f F field_18461 speed + f Lnet/minecraft/class_4115; field_18460 lookTarget + m (Lnet/minecraft/class_4115;FI)V + p 1 lookTarget + p 3 completionRange + p 2 speed + m ()F method_19095 getSpeed + m (Lnet/minecraft/class_243;FI)V + p 3 completionRange + p 2 speed + p 1 pos + m (Lnet/minecraft/class_1297;FI)V + p 2 speed + p 3 completionRange + p 1 entity + m (Lnet/minecraft/class_2338;FI)V + p 3 completionRange + p 1 pos + p 2 speed + m ()I method_19096 getCompletionRange + m ()Lnet/minecraft/class_4115; method_19094 getLookTarget +c net/minecraft/class_5470 net/minecraft/world/gen/structure/Structures + m (Lnet/minecraft/class_7891;)V method_38569 bootstrap + p 0 structureRegisterable + m (Lnet/minecraft/class_1311;)Lnet/minecraft/class_1311; method_60422 method_60422 + p 0 spawnGroup + m (Lnet/minecraft/class_1311;)Lnet/minecraft/class_7061; method_60421 method_60421 + p 0 spawnGroup + m (Lnet/minecraft/class_1311;)Lnet/minecraft/class_7061; method_46847 method_46847 + p 0 spawnGroup + m (Lnet/minecraft/class_1311;)Lnet/minecraft/class_1311; method_46848 method_46848 + p 0 spawnGroup +c net/minecraft/class_4149 net/minecraft/entity/ai/brain/sensor/SensorType + f Ljava/util/function/Supplier; field_18471 factory + f Lnet/minecraft/class_4149; field_25756 GOLEM_DETECTED + f Lnet/minecraft/class_4149; field_25757 PIGLIN_BRUTE_SPECIFIC_SENSOR + f Lnet/minecraft/class_4149; field_59679 NEAREST_ADULT_ANY_TYPE + f Lnet/minecraft/class_4149; field_64141 FOOD_TEMPTATIONS + f Lnet/minecraft/class_4149; field_18465 DUMMY + f Lnet/minecraft/class_4149; field_18466 NEAREST_LIVING_ENTITIES + f Lnet/minecraft/class_4149; field_38114 WARDEN_ENTITY_SENSOR + f Lnet/minecraft/class_4149; field_47768 ARMADILLO_SCARE_DETECTED + f Lnet/minecraft/class_4149; field_22360 HOGLIN_SPECIFIC_SENSOR + f Lnet/minecraft/class_4149; field_22359 PIGLIN_SPECIFIC_SENSOR + f Lnet/minecraft/class_4149; field_22358 NEAREST_ITEMS + f Lnet/minecraft/class_4149; field_18875 SECONDARY_POIS + f Lnet/minecraft/class_4149; field_19011 VILLAGER_BABIES + f Lnet/minecraft/class_4149; field_19010 NEAREST_BED + f Lnet/minecraft/class_4149; field_63319 NAUTILUS_TEMPTATIONS + f Lnet/minecraft/class_4149; field_18470 VILLAGER_HOSTILES + f Lnet/minecraft/class_4149; field_18469 HURT_BY + f Lnet/minecraft/class_4149; field_18467 NEAREST_PLAYERS + f Lnet/minecraft/class_4149; field_30260 AXOLOTL_ATTACKABLES + f Lnet/minecraft/class_4149; field_47261 BREEZE_ATTACK_ENTITY_SENSOR + f Lnet/minecraft/class_4149; field_37446 FROG_ATTACKABLES + f Lnet/minecraft/class_4149; field_37445 FROG_TEMPTATIONS + f Lnet/minecraft/class_4149; field_37447 IS_IN_WATER + f Lnet/minecraft/class_4149; field_25362 NEAREST_ADULT + m (Ljava/lang/String;Ljava/util/function/Supplier;)Lnet/minecraft/class_4149; method_19103 register + p 1 factory + p 0 id + m (Ljava/util/function/Supplier;)V + p 1 factory + m ()Lnet/minecraft/class_4148; method_19102 create +c net/minecraft/class_4148 net/minecraft/entity/ai/brain/sensor/Sensor + c A sensor can update memories over time in a brain. The sensor's computation\nreplaces that of individual tasks, so that it is more efficient than the goal\nsystem.\n\n@see net.minecraft.entity.ai.brain.Brain#sensors + f I field_30259 DEFAULT_RUN_TIME + f I field_30258 BASE_MAX_DISTANCE + f I field_18464 senseInterval + f Lnet/minecraft/class_4051; field_34050 ATTACKABLE_TARGET_PREDICATE_IGNORE_VISIBILITY + f Lnet/minecraft/class_4051; field_26631 TARGET_PREDICATE_IGNORE_DISTANCE_SCALING + f Lnet/minecraft/class_4051; field_34051 ATTACKABLE_TARGET_PREDICATE_IGNORE_VISIBILITY_OR_DISTANCE_SCALING + f Lnet/minecraft/class_4051; field_26630 TARGET_PREDICATE + f Lnet/minecraft/class_5819; field_19294 RANDOM + f Lnet/minecraft/class_4051; field_33762 ATTACKABLE_TARGET_PREDICATE + f Lnet/minecraft/class_4051; field_33763 ATTACKABLE_TARGET_PREDICATE_IGNORE_DISTANCE_SCALING + f J field_18463 lastSenseTime + m (ILjava/util/function/BiPredicate;)Ljava/util/function/BiPredicate; method_61443 hasPredicatePassedRecently + p 1 predicate + p 0 times + m (I)V + p 1 senseInterval + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_37456 testAttackableTargetPredicateIgnoreVisibility + p 1 entity + p 2 target + p 0 world + m (Ljava/util/function/BiPredicate;Ljava/util/concurrent/atomic/AtomicInteger;ILjava/lang/Object;Ljava/lang/Object;)Z method_61447 method_61447 + p 4 target + p 3 world + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Z method_61446 method_61446 + p 2 target + p 1 world + m (Lnet/minecraft/class_1309;I)Ljava/util/function/BiPredicate; method_61445 hasTargetBeenAttackableRecently + p 1 ticks + p 0 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)V method_19101 sense + p 2 entity + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)V method_19100 tick + p 1 world + p 2 entity + m (Lnet/minecraft/class_1309;)V method_61444 updateRange + p 1 entity + m ()Ljava/util/Set; method_19099 getOutputMemoryModules + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_36982 testAttackableTargetPredicate + p 2 target + p 1 entity + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_30954 testTargetPredicate + p 0 world + p 1 entity + p 2 target +c net/minecraft/class_4144 net/minecraft/entity/ai/brain/sensor/HurtBySensor + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4095;Lnet/minecraft/class_1309;)V method_24642 method_24642 + p 2 hurtByEntity +c net/minecraft/class_5475 net/minecraft/data/DynamicRegistriesProvider + f Lnet/minecraft/class_7784; field_40665 output + f Ljava/util/concurrent/CompletableFuture; field_40952 registriesFuture + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_7225$class_7874;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_7655$class_7657;)Ljava/util/Optional; method_39678 writeRegistryEntries + p 4 registry + p 1 writer + p 3 ops + p 2 registries + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_7225$class_7874;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_7655$class_7657;)Ljava/util/stream/Stream; method_46816 method_46816 + p 4 entry + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 2 registriesFuture + p 1 output + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_7403;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_7655$class_7657;Lnet/minecraft/class_7225$class_7226;)Ljava/util/concurrent/CompletableFuture; method_46813 method_46813 + p 5 wrapper + m (Ljava/nio/file/Path;Lnet/minecraft/class_7403;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Encoder;Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture; method_39680 writeToPath + p 4 value + p 1 cache + p 0 path + p 3 encoder + p 2 json + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_7225$class_7874;)Ljava/util/concurrent/CompletionStage; method_46814 method_46814 + p 2 registries + m (Lnet/minecraft/class_7784$class_7489;Lnet/minecraft/class_7403;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_7655$class_7657;Lnet/minecraft/class_6880$class_6883;)Ljava/util/concurrent/CompletableFuture; method_46592 method_46592 + p 4 entry +c net/minecraft/class_5478 net/minecraft/world/biome/OverworldBiomeCreator + f I field_35340 DEFAULT_WATER_COLOR + f I field_51968 SWAMP_SKELETON_WEIGHT + f I field_57111 DEFAULT_DRY_FOLIAGE_COLOR + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_30683 createJungle + p 0 featureLookup + p 1 carverLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;ZZZ)Lnet/minecraft/class_1959; method_30701 createPlains + p 4 iceSpikes + p 1 carverLookup + p 0 featureLookup + p 3 snowy + p 2 sunflower + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;ZZ)Lnet/minecraft/class_1959; method_30694 createSavanna + p 0 featureLookup + p 2 windswept + p 1 carverLookup + p 3 plateau + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Z)Lnet/minecraft/class_1959; method_30702 createColdOcean + p 2 deep + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Z)Lnet/minecraft/class_1959; method_30712 createFrozenOcean + p 0 featureLookup + p 1 carverLookup + p 2 deep + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Z)Lnet/minecraft/class_1959; method_30699 createTaiga + p 0 featureLookup + p 1 carverLookup + p 2 snowy + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Z)Lnet/minecraft/class_1959; method_30706 createNormalOcean + p 0 featureLookup + p 1 carverLookup + p 2 deep + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_38577 createStonyPeaks + p 0 featureLookup + p 1 carverLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_30714 createNormalBambooJungle + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_30726 createTheVoid + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_38575 createFrozenPeaks + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_38579 createGrove + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Z)Lnet/minecraft/class_1959; method_30687 createOldGrowthTaiga + p 0 featureLookup + p 2 spruce + p 1 carverLookup + m ()Lnet/minecraft/class_1959$class_1960; method_30692 createOcean + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_5485$class_5495; method_31066 createOceanGenerationSettings + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Z)Lnet/minecraft/class_1959; method_30709 createLukewarmOcean + p 0 featureLookup + p 1 carverLookup + p 2 deep + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;ZZ)Lnet/minecraft/class_1959; method_30685 createBeach + p 0 featureLookup + p 2 snowy + p 1 carverLookup + p 3 stony + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;FZZZ)Lnet/minecraft/class_1959$class_1960; method_30695 createJungleFeatures + p 5 unmodified + p 3 bamboo + p 4 sparse + p 1 carverLookup + p 2 depth + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;ZZZ)Lnet/minecraft/class_1959; method_30704 createNormalForest + p 2 birch + p 1 carverLookup + p 4 flower + p 3 oldGrowth + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_43232 createMangroveSwamp + p 1 carverLookup + p 0 featureLookup + m (FF)Lnet/minecraft/class_1959$class_1960; method_75847 biome + p 1 downfall + p 0 temperature + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_30698 createDesert + p 0 featureLookup + p 1 carverLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_33132 createDripstoneCaves + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_30684 createMushroomFields + p 0 featureLookup + p 1 carverLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_30723 createWarmOcean + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_42061 createDeepDark + p 0 featureLookup + p 1 carverLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_34674 createLushCaves + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_38576 createJaggedPeaks + p 0 featureLookup + p 1 carverLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Z)Lnet/minecraft/class_1959; method_30705 createDenseForest + p 0 featureLookup + p 1 carverLookup + p 2 paleGarden + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_30703 createSparseJungle + p 0 featureLookup + p 1 carverLookup + m (F)I method_30932 getSkyColor + p 0 temperature + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Z)Lnet/minecraft/class_1959; method_38574 createMeadow + p 2 cherryGrove + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_38578 createSnowySlopes + p 0 featureLookup + p 1 carverLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_30708 createSwamp + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Z)Lnet/minecraft/class_1959; method_30686 createRiver + p 1 carverLookup + p 0 featureLookup + p 2 frozen + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Z)Lnet/minecraft/class_1959; method_30696 createBadlands + p 1 carverLookup + p 2 plateau + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959$class_1960; method_75848 createColdPeaks + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_5485$class_5495;)V method_39153 addBasicFeatures + p 0 generationSettings + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Z)Lnet/minecraft/class_1959; method_30690 createWindsweptHills + p 0 featureLookup + p 2 forest + p 1 carverLookup +c net/minecraft/class_4147 net/minecraft/entity/ai/brain/sensor/NearestPlayersSensor + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1657;)Z method_29268 method_29268 + p 2 player + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1657;)Z method_36981 method_36981 + p 2 player + m (Lnet/minecraft/class_1309;)D method_61442 getFollowRange + p 1 entity + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3222;)Z method_19098 method_19098 + p 2 player +c net/minecraft/class_4146 net/minecraft/entity/ai/brain/sensor/NearestLivingEntitiesSensor + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_19097 method_19097 + p 1 e +c net/minecraft/class_4110 net/minecraft/entity/ai/brain/task/UpdateLookControlTask + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)Z method_18967 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_18969 keepRunning + m (II)V + p 1 minRunTime + p 2 maxRunTime + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_4115;)Z method_19569 method_19569 + p 1 lookTarget + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_18968 finishRunning + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_4115;)V method_18966 method_18966 + p 1 lookTarget +c net/minecraft/class_4116 net/minecraft/entity/ai/brain/task/GoAroundTask + f I field_30179 UPDATE_INTERVAL + f I field_30181 VERTICAL_RANGE + f I field_30180 HORIZONTAL_RANGE + m (Lnet/minecraft/class_4140;ILorg/apache/commons/lang3/mutable/MutableLong;FLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47154 method_47154 + p 4 context + m (Lnet/minecraft/class_4140;FI)Lnet/minecraft/class_7894; method_47153 create + p 0 posModule + p 2 maxDistance + p 1 walkSpeed + m (FLnet/minecraft/class_243;)Lnet/minecraft/class_4142; method_47150 method_47150 + p 1 targetPos + m (Lnet/minecraft/class_7898$class_7900;ILorg/apache/commons/lang3/mutable/MutableLong;FLnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47151 method_47151 + p 5 pos + p 4 walkTarget + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;ILorg/apache/commons/lang3/mutable/MutableLong;Lnet/minecraft/class_7906;FLnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_47152 method_47152 + p 6 world + p 7 entity + p 8 time +c net/minecraft/class_4115 net/minecraft/entity/ai/brain/LookTarget + m ()Lnet/minecraft/class_2338; method_18989 getBlockPos + m (Lnet/minecraft/class_1309;)Z method_18990 isSeenBy + p 1 entity + m ()Lnet/minecraft/class_243; method_18991 getPos +c net/minecraft/class_4118 net/minecraft/entity/ai/brain/task/RandomTask + m (Ljava/util/List;)V + p 1 tasks + m (Ljava/util/Map;Ljava/util/List;)V + p 1 requiredMemoryState + p 2 tasks +c net/minecraft/class_6777 net/minecraft/client/gui/screen/option/OnlineOptionsScreen + f Lnet/minecraft/class_2561; field_49500 TITLE_TEXT + f Lnet/minecraft/class_7172; field_41344 difficulty + m (Lnet/minecraft/class_437;Lnet/minecraft/class_315;)V + p 1 parent + p 2 gameOptions + m (Lnet/minecraft/class_315;Lnet/minecraft/class_310;)[Lnet/minecraft/class_7172; method_60333 collectOptions + p 2 client + p 1 gameOptions + m (Lnet/minecraft/class_638;)Lnet/minecraft/class_7172; method_60334 method_60334 + p 0 world +c net/minecraft/class_4117 net/minecraft/entity/ai/brain/task/GoToPointOfInterestTask + f I field_30186 DEFAULT_HORIZONTAL_RANGE + f I field_30187 DEFAULT_VERTICAL_RANGE + m (IILnet/minecraft/class_7906;FLnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_47196 method_47196 + p 4 world + p 5 entity + p 6 time + m (F)Lnet/minecraft/class_7894; method_47191 create + p 0 walkSpeed + m (FII)Lnet/minecraft/class_7894; method_47192 create + p 0 walkSpeed + p 1 horizontalRange + p 2 verticalRange + m (IIFLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47194 method_47194 + p 3 context + m (FLnet/minecraft/class_243;)Lnet/minecraft/class_4142; method_47193 method_47193 + p 1 pos + m (IIFLnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47195 method_47195 + p 3 walkTarget +c net/minecraft/class_4112 net/minecraft/entity/ai/brain/task/MoveToTargetTask + f F field_18371 speed + f I field_30150 MAX_UPDATE_COUNTDOWN + f Lnet/minecraft/class_11; field_18369 path + f Lnet/minecraft/class_2338; field_18370 lookTargetPos + f I field_18964 pathUpdateCountdownTicks + m (II)V + p 2 maxRunTime + p 1 minRunTime + m (Lnet/minecraft/class_4142;)Z method_49793 isTargetSpectator + p 0 target + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_4142;)Z method_18980 hasReached + p 1 entity + p 2 walkTarget + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_18981 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_18982 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)Z method_18978 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)Z method_18979 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_18983 keepRunning + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_4142;J)Z method_18977 hasFinishedPath + p 3 time + p 2 walkTarget + p 1 entity +c net/minecraft/class_4111 net/minecraft/entity/ai/brain/task/VillagerBreedTask + f J field_18368 breedEndTime + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_6880;Lnet/minecraft/class_2338;)Z method_20644 method_20644 + p 3 pos + p 2 poiType + m (Lnet/minecraft/class_6880;)Z method_43972 method_43972 + p 0 poiType + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_18974 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)Ljava/util/Optional; method_19573 getReachableHome + p 1 world + p 2 villager + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_18975 keepRunning + m (Lnet/minecraft/class_1646;)Z method_18972 isReadyToBreed + p 1 villager + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_18976 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;Lnet/minecraft/class_1646;)V method_20643 goHome + p 2 first + p 1 world + p 3 second + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;)Z method_20642 canReachHome + p 1 villager + p 2 pos + p 3 poiType + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;Lnet/minecraft/class_2338;)V method_19572 setChildHome + p 3 pos + p 1 world + p 2 child + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)Z method_19571 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_18973 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;Lnet/minecraft/class_1646;)Ljava/util/Optional; method_18970 createChild + p 3 partner + p 2 parent + p 1 world +c net/minecraft/class_4114 net/minecraft/entity/ai/brain/task/UpdateJobSiteTask + m (Lnet/minecraft/class_4208;Lnet/minecraft/class_3218;)Ljava/util/Optional; method_46892 method_46892 + p 1 jobSiteWorld + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_46890 method_46890 + p 4 entity + p 5 time + p 3 world + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46889 method_46889 + p 1 potentialJobSite + p 2 jobSite + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_3218;Lnet/minecraft/class_6880$class_6883;)V method_46891 method_46891 + p 2 profession + m (Lnet/minecraft/class_6880;)Ljava/util/Optional; method_46893 method_46893 + p 0 poiType + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_6880$class_6883;)Z method_46894 method_46894 + p 1 profession + m ()Lnet/minecraft/class_7893; method_46887 create + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46888 method_46888 + p 0 context +c net/minecraft/class_5444 net/minecraft/world/gen/feature/FeaturePlacementContext + f Ljava/util/Optional; field_35735 placedFeature + f Lnet/minecraft/class_5281; field_25857 world + f Lnet/minecraft/class_2794; field_35734 generator + m ()I method_33868 getBottomY + m (Lnet/minecraft/class_2902$class_2903;II)I method_30460 getTopY + p 2 x + p 3 z + p 1 heightmap + m ()Lnet/minecraft/class_5281; method_34383 getWorld + m ()Ljava/util/Optional; method_39652 getPlacedFeature + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2794;Ljava/util/Optional;)V + p 3 placedFeature + p 1 world + p 2 generator + m ()Lnet/minecraft/class_2794; method_39653 getChunkGenerator + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_30461 getBlockState + p 1 pos + m (Lnet/minecraft/class_1923;)Lnet/minecraft/class_6643; method_30459 getOrCreateCarvingMask + p 1 chunkPos +c net/minecraft/class_4113 net/minecraft/entity/ai/brain/task/PanicTask + m (Lnet/minecraft/class_1309;)Z method_19574 isHostileNearby + p 0 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_20646 shouldKeepRunning + m (Lnet/minecraft/class_1309;)Z method_19575 wasHurt + p 0 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_20648 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_20647 run +c net/minecraft/class_4109 net/minecraft/entity/ai/brain/task/FindInteractionTargetTask + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;ILnet/minecraft/class_1299;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47085 method_47085 + p 6 world + p 7 entity + p 8 time + m (Lnet/minecraft/class_1309;ILnet/minecraft/class_1299;Lnet/minecraft/class_1309;)Z method_47083 method_47083 + p 3 target + m (ILnet/minecraft/class_1299;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47081 method_47081 + p 2 context + m (Lnet/minecraft/class_1299;I)Lnet/minecraft/class_7893; method_47082 create + p 0 type + p 1 maxDistance + m (Lnet/minecraft/class_7898$class_7900;ILnet/minecraft/class_1299;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47084 method_47084 + p 5 visibleMobs + p 3 lookTarget + p 4 interactionTarget +c net/minecraft/class_4108 net/minecraft/entity/ai/brain/task/FollowCustomerTask + f F field_18362 speed + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)Z method_18954 shouldRun + m (F)V + p 1 speed + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_18956 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_18957 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_18958 keepRunning + m (Lnet/minecraft/class_1646;)V method_18953 update + p 1 villager + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_18955 shouldKeepRunning +c net/minecraft/class_5450 net/minecraft/world/gen/placementmodifier/SquarePlacementModifier + f Lnet/minecraft/class_5450; field_35728 INSTANCE + f Lcom/mojang/serialization/MapCodec; field_35727 MODIFIER_CODEC + m ()Lnet/minecraft/class_5450; method_39639 of +c net/minecraft/class_6783 net/minecraft/world/gen/blockpredicate/InsideWorldBoundsBlockPredicate + f Lcom/mojang/serialization/MapCodec; field_35700 CODEC + f Lnet/minecraft/class_2382; field_35701 offset + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)Z method_39587 test + m (Lnet/minecraft/class_2382;)V + p 1 offset + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39588 method_39588 + p 0 instance + m (Ljava/lang/Object;Ljava/lang/Object;)Z test test + p 1 world + p 2 pos + m (Lnet/minecraft/class_6783;)Lnet/minecraft/class_2382; method_39589 method_39589 + p 0 predicate +c net/minecraft/class_6780 net/minecraft/world/biome/source/BiomeSupplier + m (IIILnet/minecraft/class_6544$class_6552;)Lnet/minecraft/class_6880; method_38109 getBiome + p 1 x + p 3 z + p 2 y + p 4 noise +c net/minecraft/class_5452 net/minecraft/world/gen/placementmodifier/CountMultilayerPlacementModifier + f Lcom/mojang/serialization/MapCodec; field_35716 MODIFIER_CODEC + f Lnet/minecraft/class_6017; field_35717 count + m (Lnet/minecraft/class_5452;)Lnet/minecraft/class_6017; method_39622 method_39622 + p 0 placementModifier + m (Lnet/minecraft/class_2680;)Z method_30472 blocksSpawn + p 0 state + m (Lnet/minecraft/class_5444;IIII)I method_30473 findPos + p 4 targetY + p 2 y + p 3 z + p 0 context + p 1 x + m (Lnet/minecraft/class_6017;)Lnet/minecraft/class_5452; method_39621 of + p 0 count + m (I)Lnet/minecraft/class_5452; method_39620 of + p 0 count + m (Lnet/minecraft/class_6017;)V + p 1 count +c net/minecraft/class_4121 net/minecraft/entity/ai/brain/task/GoToRememberedPositionTask + m (Lnet/minecraft/class_7898$class_7900;ZLjava/util/function/Function;IFLnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47090 method_47090 + p 5 walkTarget + p 6 posSourcex + m (Lnet/minecraft/class_4140;FIZ)Lnet/minecraft/class_7894; method_24603 createEntityBased + p 2 range + p 3 requiresWalkTarget + p 0 entityModule + p 1 speed + m (Lnet/minecraft/class_4140;FIZLjava/util/function/Function;)Lnet/minecraft/class_7894; method_47092 create + p 4 posGetter + p 3 requiresWalkTarget + p 2 range + p 1 speed + p 0 posSource + m (Lnet/minecraft/class_4140;FIZ)Lnet/minecraft/class_7893; method_47091 createPosBased + p 0 posModule + p 2 range + p 1 speed + p 3 requiresWalkTarget + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;ZLjava/util/function/Function;Lnet/minecraft/class_7906;IFLnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_47089 method_47089 + p 7 world + p 8 entity + p 9 time + m (Lnet/minecraft/class_4140;ZLjava/util/function/Function;IFLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47093 method_47093 + p 5 context +c net/minecraft/class_4120 net/minecraft/entity/ai/brain/task/GoToLookTargetTask + m (Ljava/util/function/Predicate;Lnet/minecraft/class_7898$class_7900;Ljava/util/function/Function;ILnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47107 method_47107 + p 4 walkTarget + p 5 lookTarget + m (Lnet/minecraft/class_1309;)Z method_47106 method_47106 + p 0 entity + m (FLnet/minecraft/class_1309;)Ljava/lang/Float; method_47105 method_47105 + p 1 entity + m (FI)Lnet/minecraft/class_7894; method_47104 create + p 1 completionRange + p 0 speed + m (Ljava/util/function/Predicate;Lnet/minecraft/class_7906;Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Ljava/util/function/Function;ILnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47108 method_47108 + p 6 world + p 7 entity + p 8 time + m (Ljava/util/function/Predicate;Ljava/util/function/Function;ILnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47110 method_47110 + p 3 context + m (Ljava/util/function/Predicate;Ljava/util/function/Function;I)Lnet/minecraft/class_7894; method_47109 create + p 1 speed + p 2 completionRange + p 0 predicate +c net/minecraft/class_4127 net/minecraft/entity/ai/brain/task/ScheduleActivityTask + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47186 method_47186 + p 0 context + m ()Lnet/minecraft/class_7893; method_47184 create + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47185 method_47185 + p 2 time + p 1 entity + p 0 world +c net/minecraft/class_4126 net/minecraft/entity/ai/brain/task/GatherItemsVillagerTask + f Ljava/util/Set; field_18389 items + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_19016 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_19017 run + m (Lcom/google/common/collect/ImmutableSet;Lnet/minecraft/class_1792;)Z method_19014 method_19014 + p 1 item + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_19019 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)Z method_19015 shouldRun + m (Lnet/minecraft/class_1646;Ljava/util/Set;Lnet/minecraft/class_1309;)V method_19013 giveHalfOfStack + p 2 target + p 1 validItems + p 0 villager + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_19018 keepRunning + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_1646;)Ljava/util/Set; method_19611 getGatherableItems + p 0 entity + p 1 target +c net/minecraft/class_4129 net/minecraft/entity/ai/brain/task/VillagerTaskListProvider + f F field_30189 JOB_WALKING_SPEED + m (Lnet/minecraft/class_6880;F)Lcom/google/common/collect/ImmutableList; method_19993 createHideTasks + p 1 speed + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Z method_47203 wonRaid + p 0 world + p 1 entity + m (Lnet/minecraft/class_6880;F)Lcom/google/common/collect/ImmutableList; method_19992 createRaidTasks + p 1 speed + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Z method_47202 hasActiveRaid + p 1 entity + p 0 world + m (Lnet/minecraft/class_6880;F)Lcom/google/common/collect/ImmutableList; method_19991 createPreRaidTasks + p 1 speed + m (Lnet/minecraft/class_6880;)Z method_43969 method_43969 + p 0 poiType + m (Lnet/minecraft/class_6880;F)Lcom/google/common/collect/ImmutableList; method_19025 createPanicTasks + p 1 speed + m (F)Lcom/google/common/collect/ImmutableList; method_19990 createPlayTasks + p 0 speed + m (Lnet/minecraft/class_6880;F)Lcom/google/common/collect/ImmutableList; method_19024 createIdleTasks + p 1 speed + m (Lnet/minecraft/class_6880;F)Lcom/google/common/collect/ImmutableList; method_19023 createMeetTasks + p 1 speed + m ()Lcom/mojang/datafixers/util/Pair; method_20242 createBusyFollowTask + m (Lnet/minecraft/class_6880;)Z method_43968 method_43968 + p 0 poiType + m (Lnet/minecraft/class_6880;)Z method_43970 method_43970 + p 0 poiType + m (Lnet/minecraft/class_6880;)Z method_43971 method_43971 + p 0 poiType + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_65947 isUnoccupiedBedAt + p 0 world + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_65948 method_65948 + p 0 world + p 1 pos + m (Lnet/minecraft/class_6880;F)Lcom/google/common/collect/ImmutableList; method_19022 createRestTasks + p 1 speed + m ()Lcom/mojang/datafixers/util/Pair; method_20241 createFreeFollowTask + m (Lnet/minecraft/class_6880;F)Lcom/google/common/collect/ImmutableList; method_19021 createWorkTasks + p 0 profession + p 1 speed + m (Lnet/minecraft/class_6880;F)Lcom/google/common/collect/ImmutableList; method_19020 createCoreTasks + p 1 speed + p 0 profession +c net/minecraft/class_5459 net/minecraft/world/BlockLocating + c A few utilities to find block positions matching certain conditions. + m (Ljava/util/function/Predicate;Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_2350;I)I method_30575 moveWhile + p 2 direction + p 1 pos + p 3 max + p 0 predicate + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_2350;Lnet/minecraft/class_2248;)Ljava/util/Optional; method_34851 findColumnEnd + c Finds an end to a block column starting from {@code pos} extending in {@code\ndirection}. Within the column, the block states must be of {@code intermediateBlock}\nand the ending block state, whose position is returned, must be of {@code endBlock}.\n\n@return the end position of the block column where a {@code endBlock} lays, or\nan empty optional if no such column exists + p 0 world + c the world the column is in + p 1 pos + c the starting position of the column + p 4 endBlock + c the ending block of the column + p 2 intermediateBlock + c the blocks that the column must be of, excluding the end + p 3 direction + c the direction which the column extends to + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350$class_2351;ILnet/minecraft/class_2350$class_2351;ILjava/util/function/Predicate;)Lnet/minecraft/class_5459$class_5460; method_30574 getLargestRectangle + c Gets the largest rectangle of blocks along two axes for which all blocks meet a predicate.\nUsed for getting rectangles of Nether portal blocks. + p 0 center + p 1 primaryAxis + p 2 primaryMaxBlocks + p 3 secondaryAxis + p 4 secondaryMaxBlocks + p 5 predicate + m ([I)Lcom/mojang/datafixers/util/Pair; method_30576 findLargestRectangle + c Finds the largest rectangle within a histogram, where the vertical bars each have\nwidth 1 and height specified in {@code heights}.\n\n@implNote This implementation solves the problem using a stack. The\nstack maintains a collection of height limits of rectangles that may grow as the\narray iteration continues. When a new height is encountered, each position {@code p}\nin the stack would be popped if the rectangle with height limit at position {@code\np} can no longer extend right. The popped rectangle becomes the return value if it\nhas a larger area than the current candidate.\n\n

When the rectangle area is calculated, the range is between {@code p0 + 1}, where\n{@code p0} is the current top of stack after popping rectangles that can no longer\nextend, and the current iterated position {@code i}.\n\n@return the base of the rectangle as an inclusive range and the height of the\nrectangle packed in a pair\n@see Largest\nRectangle in Histogram - LeetCode + p 0 heights + c the heights of bars in the histogram +c net/minecraft/class_5459$class_5460 net/minecraft/world/BlockLocating$Rectangle + f I field_25937 width + f I field_25938 height + f Lnet/minecraft/class_2338; field_25936 lowerLeft + m (Lnet/minecraft/class_2338;II)V + p 2 width + p 3 height + p 1 lowerLeft +c net/minecraft/class_5459$class_5461 net/minecraft/world/BlockLocating$IntBounds + f I field_25939 min + f I field_25940 max + m (II)V + p 2 max + p 1 min +c net/minecraft/class_6789 net/minecraft/world/gen/feature/NetherForestVegetationFeatureConfig + f Lcom/mojang/serialization/Codec; field_35707 VEGETATION_CODEC + f I field_35708 spreadWidth + f I field_35709 spreadHeight + m (Lnet/minecraft/class_4651;II)V + p 2 spreadWidth + p 1 stateProvider + p 3 spreadHeight + m (Lnet/minecraft/class_6789;)Ljava/lang/Integer; method_39609 method_39609 + p 0 config + m (Lnet/minecraft/class_6789;)Ljava/lang/Integer; method_39608 method_39608 + p 0 config + m (Lnet/minecraft/class_6789;)Lnet/minecraft/class_4651; method_39610 method_39610 + p 0 config +c net/minecraft/class_4128 net/minecraft/entity/ai/brain/task/ForgetCompletedPointOfInterestTask + f I field_30185 MAX_RANGE + m (Lnet/minecraft/class_4140;Ljava/util/function/Predicate;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47189 method_47189 + p 2 context + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_65946 isSleepingVillagerAt + p 1 pos + p 0 world + m (Ljava/util/function/Predicate;Lnet/minecraft/class_4140;)Lnet/minecraft/class_7893; method_47190 create + p 1 poiPosModule + p 0 poiTypePredicate + m (Lnet/minecraft/class_7898$class_7900;Ljava/util/function/Predicate;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47188 method_47188 + p 2 poiPos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1309;)Z method_20500 isBedOccupiedByOthers + p 2 entity + p 1 pos + p 0 world + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Ljava/util/function/Predicate;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47187 method_47187 + p 3 world + p 5 time + p 4 entity +c net/minecraft/class_5454 net/minecraft/world/TeleportTarget + c Represents the position that an entity takes after being\n{@linkplain net.minecraft.entity.Entity#teleportTo teleported}. + f F comp_2824 pitch + f F comp_2823 yaw + f Lnet/minecraft/class_5454$class_9823; field_52246 SEND_TRAVEL_THROUGH_PORTAL_PACKET + f Lnet/minecraft/class_5454$class_9823; field_52247 ADD_PORTAL_CHUNK_TICKET + f Lnet/minecraft/class_5454$class_9823; field_52245 NO_OP + f Lnet/minecraft/class_3218; comp_2820 world + f Lnet/minecraft/class_243; comp_2822 velocity + f Ljava/util/Set; comp_3183 relatives + f Z comp_3285 asPassenger + f Lnet/minecraft/class_5454$class_9823; comp_2864 postTeleportTransition + f Lnet/minecraft/class_243; comp_2821 position + f Z comp_2825 missingRespawnBlock + m ()F comp_2824 pitch + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_5454; method_64829 withPosition + p 1 position + m ()F comp_2823 yaw + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_243;FFLnet/minecraft/class_5454$class_9823;)V + p 6 postDimensionTransition + p 5 pitch + p 4 yaw + p 3 velocity + p 2 pos + p 1 world + m ()Lnet/minecraft/class_5454; method_64828 asPassenger + m (Lnet/minecraft/class_1297;)V method_61024 sendTravelThroughPortalPacket + p 0 entity + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_5454$class_9823;)Lnet/minecraft/class_5454; method_60635 missingSpawnBlock + p 0 player + p 1 postDimensionTransition + m (Lnet/minecraft/class_1297;)V method_61026 method_61026 + p 0 entity + m (Lnet/minecraft/class_1297;)V method_61025 addPortalChunkTicket + p 0 entity + m (FF)Lnet/minecraft/class_5454; method_61823 withRotation + p 2 pitch + p 1 yaw + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_5454$class_9823;)Lnet/minecraft/class_5454; method_74892 noRespawnPointSet + p 0 player + p 1 postDimensionTransition + m ()Lnet/minecraft/class_3218; comp_2820 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)Lnet/minecraft/class_243; method_61023 getWorldSpawnPos + p 1 entity + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_243;FFLjava/util/Set;Lnet/minecraft/class_5454$class_9823;)V + p 7 postDimensionTransition + p 4 yaw + p 3 velocity + p 6 flags + p 5 pitch + p 2 pos + p 1 world + m ()Lnet/minecraft/class_243; comp_2822 velocity + m ()Lnet/minecraft/class_5454$class_9823; comp_2864 postTeleportTransition + m ()Z comp_2825 missingRespawnBlock + m ()Z comp_3285 asPassenger + m ()Lnet/minecraft/class_243; comp_2821 position + m ()Ljava/util/Set; comp_3183 relatives + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_243;FFZZLjava/util/Set;Lnet/minecraft/class_5454$class_9823;)V + p 1 world + p 2 position + p 3 velocity + p 4 yaw + p 5 pitch + p 6 missingRespawnBlock + p 7 asPassenger + p 8 relatives + p 9 postTeleportTransition +c net/minecraft/class_5454$class_9823 net/minecraft/world/TeleportTarget$PostDimensionTransition + m (Lnet/minecraft/class_1297;)V onTransition onTransition + p 1 entity + m (Lnet/minecraft/class_5454$class_9823;)Lnet/minecraft/class_5454$class_9823; then then + p 1 next + m (Lnet/minecraft/class_5454$class_9823;Lnet/minecraft/class_1297;)V method_61027 method_61027 + p 2 entity +c net/minecraft/class_4123 net/minecraft/entity/ai/brain/task/SleepTask + f I field_30175 RUN_TIME + f J field_18848 startTime +c net/minecraft/class_4122 net/minecraft/entity/ai/brain/task/VillagerWalkTowardsTask + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;ILnet/minecraft/class_4140;ILnet/minecraft/class_7906;FILnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_47101 method_47101 + p 10 entity + p 9 world + p 11 time + m (Lnet/minecraft/class_4140;IIFILnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47103 method_47103 + p 5 context + m (Lnet/minecraft/class_7898$class_7900;ILnet/minecraft/class_4140;IFILnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47100 method_47100 + p 6 cantReachWalkTargetSince + p 7 walkTarget + p 8 destinationResult + m (Lnet/minecraft/class_4140;FIII)Lnet/minecraft/class_7894; method_47102 create + p 4 maxRunTime + p 2 completionRange + p 3 maxDistance + p 0 destination + p 1 speed +c net/minecraft/class_6784 net/minecraft/world/gen/blockpredicate/SolidBlockPredicate + f Lcom/mojang/serialization/MapCodec; field_35702 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39590 method_39590 + p 0 instance +c net/minecraft/class_4125 net/minecraft/entity/ai/brain/task/StayAboveWaterTask + f F field_18387 chance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_19012 keepRunning + m (Lnet/minecraft/class_1308;)Z method_55700 isUnderwater + p 0 entity + m (F)V + p 1 chance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)Z method_19011 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)Z method_19010 shouldRun +c net/minecraft/class_6785 net/minecraft/world/gen/feature/util/FeatureDebugLogger + f Lorg/slf4j/Logger; field_35704 LOGGER + f Lcom/google/common/cache/LoadingCache; field_35705 FEATURES + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2975;Ljava/util/Optional;)V method_39599 incrementFeatureCount + p 1 configuredFeature + p 0 world + p 2 placedFeature + m ()V method_39603 dump + m (Lnet/minecraft/class_6785$class_6786;Ljava/lang/Integer;)Ljava/lang/Integer; method_39601 method_39601 + p 0 featureData + p 1 count + m ()V method_39597 clear + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6785$class_6787;)V method_39600 method_39600 + p 0 world + p 1 features + m (Ljava/lang/String;ILnet/minecraft/class_2378;Lnet/minecraft/class_6785$class_6786;I)V method_39602 method_39602 + p 4 count + p 3 featureData + m (Lnet/minecraft/class_3218;)V method_39598 incrementTotalChunksCount + p 0 world +c net/minecraft/class_6785$class_6786 net/minecraft/world/gen/feature/util/FeatureDebugLogger$FeatureData + f Ljava/util/Optional; comp_282 topFeature + f Lnet/minecraft/class_2975; comp_281 feature + m ()Ljava/util/Optional; comp_282 topFeature + m ()Lnet/minecraft/class_2975; comp_281 feature + m (Lnet/minecraft/class_2975;Ljava/util/Optional;)V + p 1 feature + p 2 topFeature +c net/minecraft/class_6785$1 net/minecraft/world/gen/feature/util/FeatureDebugLogger$1 + m (Ljava/lang/Object;)Ljava/lang/Object; load load + p 1 world + m (Lnet/minecraft/class_3218;)Lnet/minecraft/class_6785$class_6787; method_39604 load +c net/minecraft/class_6785$class_6787 net/minecraft/world/gen/feature/util/FeatureDebugLogger$Features + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; comp_283 featureData + f Lorg/apache/commons/lang3/mutable/MutableInt; comp_284 chunksWithFeatures + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; comp_283 featureData + m ()Lorg/apache/commons/lang3/mutable/MutableInt; comp_284 chunksWithFeatures + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lorg/apache/commons/lang3/mutable/MutableInt;)V + p 1 featureData + p 2 chunksWithFeatures +c net/minecraft/class_5455 net/minecraft/registry/DynamicRegistryManager + c A manager of dynamic registries. It allows users to access non-hardcoded\nregistries reliably.\n\n

The {@link DynamicRegistryManager.ImmutableImpl}\nclass serves as an immutable implementation of any particular collection\nor configuration of dynamic registries. + f Lnet/minecraft/class_5455$class_6890; field_40585 EMPTY + f Lorg/slf4j/Logger; field_25918 LOGGER + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_2378; method_30530 getOrThrow + p 1 key + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_5455$class_6890; method_40302 of + p 0 registries + m ()Ljava/util/stream/Stream; method_40311 streamAllRegistries + m (Lnet/minecraft/class_5455$class_6892;)Lnet/minecraft/class_5321; method_62703 method_62703 + p 0 registry + m ()Lnet/minecraft/class_5455$class_6890; method_40316 toImmutable +c net/minecraft/class_5455$class_6892 net/minecraft/registry/DynamicRegistryManager$Entry + f Lnet/minecraft/class_5321; comp_350 key + f Lnet/minecraft/class_2378; comp_351 value + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_5455$class_6892; method_40330 of + p 0 entry + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2378;)Lnet/minecraft/class_5455$class_6892; method_40331 of + p 0 key + p 1 value + m ()Lnet/minecraft/class_5455$class_6892; method_40332 freeze + m ()Lnet/minecraft/class_2378; comp_351 value + m ()Lnet/minecraft/class_5321; comp_350 key + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2378;)V + p 1 key + p 2 value +c net/minecraft/class_5455$class_6890 net/minecraft/registry/DynamicRegistryManager$Immutable +c net/minecraft/class_5455$class_7781 net/minecraft/registry/DynamicRegistryManager$Immutablized + m (Lnet/minecraft/class_5455;Ljava/util/stream/Stream;)V + p 2 entryStream +c net/minecraft/class_5455$class_6891 net/minecraft/registry/DynamicRegistryManager$ImmutableImpl + f Ljava/util/Map; field_36471 registries + m (Ljava/util/List;)V + p 1 registries + m (Ljava/util/stream/Stream;)V + p 1 entryStream + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_2378; method_45943 method_45943 + p 0 registry + m (Ljava/util/Map;)V + p 1 registries +c net/minecraft/class_4124 net/minecraft/entity/ai/brain/task/MeetVillagerTask + f F field_30176 WALK_SPEED + m (Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_1309;)V method_47117 method_47117 + p 3 target + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_47113 method_47113 + p 1 target + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47116 method_47116 + p 6 world + p 8 time + p 7 entity + m ()Lnet/minecraft/class_7894; method_47111 create + m (Lnet/minecraft/class_1309;)Z method_47112 method_47112 + p 0 target + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47115 method_47115 + p 2 lookTarget + p 1 walkTarget + p 4 visibleMobs + p 3 meetingPoint + p 5 interactionTarget + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47114 method_47114 + p 0 context +c net/minecraft/class_4119 net/minecraft/entity/ai/brain/task/LookAtMobTask + m (Lnet/minecraft/class_1299;F)Lnet/minecraft/class_7894; method_47057 create + p 0 type + p 1 maxDistance + m (Lnet/minecraft/class_1309;FLnet/minecraft/class_1309;)Z method_47060 method_47060 + p 2 target + m (Lnet/minecraft/class_7898$class_7900;Ljava/util/function/Predicate;FLnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47064 method_47064 + p 3 lookTarget + p 4 visibleMobs + m (Ljava/util/function/Predicate;FLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47066 method_47066 + p 2 context + m (Lnet/minecraft/class_1311;F)Lnet/minecraft/class_7893; method_47061 create + p 1 maxDistance + p 0 spawnGroup + m (Lnet/minecraft/class_1309;)Z method_47059 method_47059 + p 0 entity + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1309;)Z method_47058 method_47058 + p 1 entity + m (Lnet/minecraft/class_1311;Lnet/minecraft/class_1309;)Z method_47062 method_47062 + p 1 entity + m (F)Lnet/minecraft/class_7894; method_47056 create + p 0 maxDistance + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Ljava/util/function/Predicate;FLnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47063 method_47063 + p 6 entity + p 5 world + p 7 time + m (Ljava/util/function/Predicate;F)Lnet/minecraft/class_7894; method_47065 create + p 1 maxDistance + p 0 predicate +c net/minecraft/class_6757 net/minecraft/world/tick/WorldTickScheduler + f Ljava/util/function/LongPredicate; field_35532 tickingFutureReadyPredicate + f Ljava/util/Queue; field_35536 tickableChunkTickSchedulers + f Lit/unimi/dsi/fastutil/longs/Long2LongMap; field_35535 nextTriggerTickByChunkPos + f Ljava/util/function/BiConsumer; field_35540 queuedTickConsumer + f Ljava/util/List; field_35538 tickedTicks + f Ljava/util/Queue; field_35537 tickableTicks + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_35534 chunkTickSchedulers + f Ljava/util/Set; field_35539 copiedTickableTicksList + f Ljava/util/Comparator; field_35531 COMPARATOR + m (Ljava/util/function/BiConsumer;)V method_39390 tick + p 1 ticker + m (Lnet/minecraft/class_6757;Lnet/minecraft/class_3341;Lnet/minecraft/class_2382;)V method_48167 scheduleTicks + p 1 scheduler + p 2 box + p 3 offset + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_6760;)Z method_39382 method_39382 + p 1 tick + m (I)Z method_39373 isTickableTicksCountUnder + p 1 maxTicks + m (Lnet/minecraft/class_6755;Lnet/minecraft/class_6760;)V method_39385 method_39385 + p 2 tick + p 1 chunkTickScheduler + m (JILnet/minecraft/class_3695;)V method_39376 collectTickableTicks + p 3 maxTicks + p 1 time + p 4 profiler + m (Lnet/minecraft/class_3341;)V method_39380 clearNextTicks + p 1 box + m (Ljava/util/function/Predicate;Ljava/util/List;JLnet/minecraft/class_6755;)V method_48169 method_48169 + p 2 chunkPos + p 4 chunkTickScheduler + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_6760;)Z method_48166 method_48166 + p 1 tick + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_6757$class_6758;)V method_39381 visitChunks + p 1 box + p 2 visitor + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_6755;)V method_39379 addChunkTickScheduler + p 2 scheduler + p 1 pos + m (Lnet/minecraft/class_1923;)V method_39378 removeChunkTickScheduler + p 1 pos + m (Lnet/minecraft/class_6760;)V method_39393 schedule + p 1 tick + m ()V method_39396 copyTickableTicksList + m (Lnet/minecraft/class_6760;)V method_39395 addTickableTick + p 1 tick + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_2382;)V method_39383 scheduleTicks + p 1 box + p 2 offset + m (Lit/unimi/dsi/fastutil/longs/Long2LongOpenHashMap;)V method_39387 method_39387 + p 0 map + m ()V method_39392 delayAllTicks + m (JI)V method_39375 addTickableTicks + p 1 time + p 3 maxTicks + m ()V method_39394 clear + m (Lnet/minecraft/class_2382;JJLnet/minecraft/class_6760;)V method_48168 method_48168 + p 6 tick + m (Ljava/util/function/LongPredicate;)V + p 1 tickingFutureReadyPredicate + m (J)V method_39374 collectTickableChunkTickSchedulers + p 1 time + m (Ljava/util/function/Predicate;JLnet/minecraft/class_6755;)V method_39391 method_39391 + p 4 chunkTickScheduler + p 2 chunkPos + m (Ljava/util/Queue;Lnet/minecraft/class_6755;JI)V method_39389 addTickableTicks + p 3 tick + p 2 chunkTickScheduler + p 5 maxTicks + p 1 tickableChunkTickSchedulers + m (JILjava/util/function/BiConsumer;)V method_39377 tick + p 1 time + p 3 maxTicks + p 4 ticker + m (Lnet/minecraft/class_6755;Lnet/minecraft/class_6755;)I method_39384 method_39384 + p 1 b + p 0 a +c net/minecraft/class_6757$class_6758 net/minecraft/world/tick/WorldTickScheduler$ChunkVisitor + m (JLnet/minecraft/class_6755;)V accept accept + p 3 chunkTickScheduler + p 1 chunkPos +c net/minecraft/class_5425 net/minecraft/world/ServerWorldAccess + c Represents access to a world on a logical Minecraft server. + m (Lnet/minecraft/class_1297;)V method_30771 spawnEntityAndPassengers + c Spawns an entity and all its passengers (recursively) into the world. + p 1 entity + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_1266; method_8404 getLocalDifficulty + p 1 pos + m ()Lnet/minecraft/class_3218; method_8410 toServerWorld +c net/minecraft/class_6755 net/minecraft/world/tick/ChunkTickScheduler + f Ljava/util/function/BiConsumer; field_35530 tickConsumer + f Ljava/util/Queue; field_35527 tickQueue + f Ljava/util/List; field_35528 ticks + f Ljava/util/Set; field_35529 queuedTicks + m (Lnet/minecraft/class_6760;)V method_39370 queueTick + p 1 orderedTick + m (Ljava/util/List;)V + p 1 ticks + m ()Lnet/minecraft/class_6760; method_39369 peekNextTick + m (J)V method_39364 disable + p 1 time + m (Ljava/util/function/Predicate;)V method_39367 removeTicksIf + p 1 predicate + m ()Lnet/minecraft/class_6760; method_39371 pollNextTick + m (Ljava/util/function/BiConsumer;)V method_39366 setTickConsumer + p 1 tickConsumer + m ()Ljava/util/stream/Stream; method_39372 getQueueAsStream +c net/minecraft/class_5427 net/minecraft/network/packet/c2s/play/RecipeCategoryOptionsC2SPacket + f Lnet/minecraft/class_5421; field_25798 category + f Lnet/minecraft/class_9139; field_48210 CODEC + f Z field_25799 guiOpen + f Z field_25800 filteringCraftable + m (Lnet/minecraft/class_2792;)V method_30304 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_55991 write + p 1 buf + m (Lnet/minecraft/class_5421;ZZ)V + p 1 category + p 2 guiOpen + p 3 filteringCraftable + m ()Z method_30306 isGuiOpen + m ()Z method_30307 isFilteringCraftable + m ()Lnet/minecraft/class_5421; method_30305 getCategory +c net/minecraft/class_6756 net/minecraft/world/tick/QueryableTickScheduler + m (Lnet/minecraft/class_2338;Ljava/lang/Object;)Z method_8677 isTicking + p 2 type + p 1 pos +c net/minecraft/class_6753 net/minecraft/unused/packageinfo/PackageInfo6753 +c net/minecraft/class_5421 net/minecraft/recipe/book/RecipeBookType + f Lnet/minecraft/class_5421; field_25763 CRAFTING + f Lnet/minecraft/class_5421; field_25764 FURNACE + f Lnet/minecraft/class_5421; field_25765 BLAST_FURNACE + f Lnet/minecraft/class_5421; field_25766 SMOKER +c net/minecraft/class_6754 net/minecraft/world/tick/EmptyTickSchedulers + f Lnet/minecraft/class_6756; field_35526 EMPTY_QUERYABLE_TICK_SCHEDULER + f Lnet/minecraft/class_6763; field_35525 EMPTY_BASIC_TICK_SCHEDULER + m ()Lnet/minecraft/class_6763; method_39361 getReadOnlyTickScheduler + m ()Lnet/minecraft/class_6756; method_39362 getClientTickScheduler +c net/minecraft/class_5420 net/minecraft/entity/mob/PiglinBruteBrain + f I field_30590 MELEE_ATTACK_COOLDOWN + f I field_30589 ANGRY_AT_EXPIRY + m (Lnet/minecraft/class_5419;Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_30252 create + p 1 brain + p 0 piglinBrute + m (Lnet/minecraft/class_5419;)V method_30250 setCurrentPosAsHome + p 0 piglinBrute + m (Lnet/minecraft/class_5419;)V method_30261 playSoundIfAngry + p 0 piglinBrute + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5418;)Ljava/util/Optional; method_30247 getTarget + p 1 piglin + p 0 world + m ()Lnet/minecraft/class_4118; method_30244 getFollowTasks + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5418;Lnet/minecraft/class_1309;)Z method_30248 isTarget + p 2 target + p 0 world + p 1 piglin + m ()Lnet/minecraft/class_4118; method_30254 getIdleTasks + m (Lnet/minecraft/class_5419;Lnet/minecraft/class_1309;)V method_35198 setTarget + p 0 piglinBrute + p 1 target + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_30246 method_30246 + p 1 target + m (Lnet/minecraft/class_5419;Lnet/minecraft/class_4095;)V method_30260 addIdleActivities + p 1 brain + p 0 piglinBrute + m (Lnet/minecraft/class_5419;Lnet/minecraft/class_4095;)V method_30262 addFightActivities + p 0 piglinBrute + p 1 brain + m (Lnet/minecraft/class_5419;)V method_30258 playSoundRandomly + p 0 piglinBrute + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5419;Lnet/minecraft/class_1309;)V method_30251 tryRevenge + p 1 piglinBrute + p 2 target + p 0 world + m (Lnet/minecraft/class_5419;Lnet/minecraft/class_4168;)V method_30253 method_30253 + p 1 activity + m (Lnet/minecraft/class_5419;)V method_30256 tick + p 0 piglinBrute + m (Lnet/minecraft/class_5419;Lnet/minecraft/class_4095;)V method_30257 addCoreActivities + p 1 brain + p 0 piglinBrute + m (Lnet/minecraft/class_5419;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Z method_30259 method_30259 + p 1 world + p 2 target +c net/minecraft/class_5423 net/minecraft/world/RegistryWorldView + c A world view or {@link World}'s superinterface that exposes access to\na registry manager.\n\n@see #getRegistryManager() +c net/minecraft/class_5418 net/minecraft/entity/mob/AbstractPiglinEntity + f Lnet/minecraft/class_2940; field_25758 IMMUNE_TO_ZOMBIFICATION + f I field_30547 TIME_TO_ZOMBIFY + f I field_57706 DEFAULT_TIME_IN_OVERWORLD + f I field_25759 timeInOverworld + f Z field_57705 DEFAULT_IS_IMMUNE_TO_ZOMBIFICATION + m ()Z method_30234 isImmuneToZombification + m ()Z method_30236 isAdult + m (I)V method_63664 setTimeInOverworld + p 1 timeInOverworld + m ()Z method_30235 shouldZombify + m (Lnet/minecraft/class_3218;)V method_24694 zombify + p 1 world + m (Z)V method_30240 setImmuneToZombification + p 1 immuneToZombification + m ()Z method_26952 canHunt + m ()Lnet/minecraft/class_4837; method_24705 getActivity + m ()Z method_30237 isHoldingTool + m ()V method_30238 playZombificationSound + m (Lnet/minecraft/class_1590;)V method_63663 method_63663 + p 0 zombifiedPiglin + m ()V method_30239 setCanPathThroughDoors +c net/minecraft/class_5417 net/minecraft/entity/ai/brain/sensor/PiglinBruteSpecificSensor + m (Lnet/minecraft/class_1309;)Z method_38983 method_38983 + p 0 visibleEntity +c net/minecraft/class_6748 net/minecraft/world/gen/chunk/Blender + f I field_35505 CLOSE_BLENDING_DISTANCE_THRESHOLD + f I field_35503 BLENDING_CHUNK_DISTANCE_THRESHOLD + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; field_36344 closeBlendingData + f I field_35502 BLENDING_BIOME_DISTANCE_THRESHOLD + f Lnet/minecraft/class_5216; field_35681 OFFSET_NOISE + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; field_36343 blendingData + f Lnet/minecraft/class_6748; field_35501 NO_BLENDING + m (IIILnet/minecraft/class_6748$class_6781;)D method_39562 sampleClosest + p 4 sampler + p 2 biomeY + p 3 biomeZ + p 1 biomeX + m (Lnet/minecraft/class_6748$class_6781;IIIII)D method_39565 sample + p 1 sampler + p 2 chunkX + p 5 biomeY + p 6 biomeZ + p 3 chunkZ + p 4 biomeX + m ()Z method_72689 isEmpty + m (II)Lnet/minecraft/class_6748$class_6956; method_39340 calculate + p 1 blockX + p 2 blockZ + m (Lnet/minecraft/class_6749;Ljava/util/Map;)Lnet/minecraft/class_6748$class_6831; method_39815 createClosestDistanceFunction + p 1 neighborData + p 0 data + m (Lnet/minecraft/class_3233;)Lnet/minecraft/class_6748; method_39342 getBlender + p 0 chunkRegion + m (IIILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableObject;JLnet/minecraft/class_6749;)V method_39560 method_39560 + p 5 chunkPos + p 7 data + m (Lnet/minecraft/class_6780;IIILnet/minecraft/class_6544$class_6552;)Lnet/minecraft/class_6880; method_39564 method_39564 + p 5 noise + p 4 z + p 3 y + p 2 x + m (Lnet/minecraft/class_3233;Lnet/minecraft/class_2791;)V method_39772 tickLeavesAndFluids + p 1 chunk + p 0 chunkRegion + m (Lnet/minecraft/class_2791;Lnet/minecraft/class_2338;)V method_39773 tickLeavesAndFluids + p 1 pos + p 0 chunk + m (Lnet/minecraft/class_2355;Lnet/minecraft/class_6749;)Lnet/minecraft/class_6748$class_6831; method_39812 createDistanceFunction + p 0 direction + p 1 data + m (Lnet/minecraft/class_6910$class_6912;D)D method_39338 applyBlendDensity + p 1 pos + p 2 density + m (IIILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;JLnet/minecraft/class_6749;)V method_40026 method_40026 + p 8 data + p 6 chunkPos + m (IILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;JLnet/minecraft/class_6749;)V method_40027 method_40027 + p 7 data + p 5 chunkPos + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;)V + p 2 closeBlendingData + p 1 blendingData + m (Ljava/util/List;Lnet/minecraft/class_2355;Lnet/minecraft/class_6749;)V method_39814 method_39814 + p 2 datax + p 1 direction + m (IIILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;IIID)V method_39339 method_39339 + p 6 biomeX + p 7 halfSectionY + p 8 biomeZ + p 9 collidableBlockDensity + m (IILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableObject;IILnet/minecraft/class_6880;)V method_40025 method_40025 + p 5 biomeZ + p 6 biome + p 4 biomeX + m (Lnet/minecraft/class_6748$class_6831;III)Z method_39811 method_39811 + p 3 offsetZ + p 1 offsetX + p 2 y + m ()Lnet/minecraft/class_6748; method_39336 getNoBlending + m (Ljava/util/List;DDD)D method_39813 method_39813 + p 1 offsetX + p 3 y + p 5 offsetZ + m (D)D method_39337 getBlendOffset + p 0 height + m (IILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;IID)V method_39341 method_39341 + p 6 biomeZ + p 7 height + p 5 biomeX + m (DDDDDDD)D method_39807 method_39807 + p 8 offsetX + p 12 offsetZ + p 10 y + m (III)Lnet/minecraft/class_6880; method_39561 blendBiome + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/class_6780;)Lnet/minecraft/class_6780; method_39563 getBiomeSupplier + p 1 biomeSupplier + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2839;)V method_39809 createCarvingMasks + p 1 chunk + p 0 world + m (DDDDDD)D method_39808 getDistance + p 6 x2 + p 8 y2 + p 10 z2 + p 0 x1 + p 2 y1 + p 4 z1 +c net/minecraft/class_6748$class_6831 net/minecraft/world/gen/chunk/Blender$DistanceFunction + m (DDD)D getDistance getDistance + p 5 offsetZ + p 3 y + p 1 offsetX +c net/minecraft/class_6748$class_6956 net/minecraft/world/gen/chunk/Blender$BlendResult + f D comp_435 alpha + f D comp_436 blendingOffset + m ()D comp_436 blendingOffset + m ()D comp_435 alpha + m (DD)V + p 1 alpha + p 3 blendingOffset +c net/minecraft/class_6748$class_6781 net/minecraft/world/gen/chunk/Blender$BlendingSampler + m (Lnet/minecraft/class_6749;III)D get get + p 4 biomeZ + p 2 biomeX + p 3 biomeY + p 1 data +c net/minecraft/class_6749 net/minecraft/world/gen/chunk/BlendingData + f [[D field_35693 collidableBlockDensities + f I field_35686 NORTH_WEST_END_INDEX + f I field_35684 LAST_CHUNK_BIOME_INDEX + f I field_35687 SOUTH_EAST_END_INDEX_PART + f Ljava/util/List; field_35519 SURFACE_BLOCKS + f I field_35685 CHUNK_BIOME_END_INDEX + f Lnet/minecraft/class_5539; field_35515 oldHeightLimit + f I field_35683 BIOMES_PER_CHUNK + f Ljava/util/List; field_36345 biomes + f I field_35518 HORIZONTAL_BIOME_COUNT + f Z field_35690 initializedBlendingData + f [D field_35692 surfaceHeights + m ([DI)D method_39575 getCollidableBlockDensity + p 2 halfSectionY + p 1 collidableBlockDensityColumn + m ()Lnet/minecraft/class_6749$class_9899; method_61806 toSerialized + m (Lnet/minecraft/class_3233;II)Lnet/minecraft/class_6749; method_39570 getBlendingData + p 1 chunkX + p 0 chunkRegion + p 2 chunkZ + m (Lnet/minecraft/class_2791;Lnet/minecraft/class_2338$class_2339;)D method_39905 getAboveCollidableBlockValue + c {@return {@code 1.0} if there is a collidable block below, otherwise {@code -1}} + p 0 chunk + p 1 mutablePos + c will be moved down by one block by this method + m (I)I method_39343 getX + p 0 index + m (I)I method_39355 clampPositive + p 0 value + m (Lnet/minecraft/class_2791;II)Ljava/util/List; method_41566 getVerticalBiomeSections + p 3 chunkBlockZ + p 1 chunk + p 2 chunkBlockX + m (II)I method_39582 getSouthEastIndex + c Gets the south east index for the given chunk-local biome coordinates.\nAt least one of these coordinates must be {@code CHUNK_BIOME_END_INDEX} ({@code 4})\nfor this method to work properly.\n\n@return the south east index + p 1 chunkBiomeZ + c the chunk-local biome Z coordinate + p 0 chunkBiomeX + c the chunk-local biome X coordinate + m ()I method_39581 getOneAboveBottomHalfSectionY + m (IIIILnet/minecraft/class_6749$class_6750;)V method_39346 acceptCollidableBlockDensities + p 5 consumer + p 4 maxHalfSectionY + p 3 minHalfSectionY + p 2 biomeZ + p 1 biomeX + m (IIILnet/minecraft/class_6749$class_6853;)V method_40028 acceptBiomes + p 4 consumer + p 3 biomeZ + p 2 biomeY + p 1 biomeX + m (III)D method_39345 getCollidableBlockDensity + p 1 chunkBiomeX + p 2 halfSectionY + p 3 chunkBiomeZ + m ()I method_39583 getBottomHalfSectionY + m (II)I method_39578 getNorthWestIndex + c Gets the north east index for the given chunk-local biome coordinates.\nAt least one of these coordinates must be {@code 0} for this method to work properly.\n\n@return the north west index + p 0 chunkBiomeX + c the chunk-local biome X coordinate + p 1 chunkBiomeZ + c the chunk-local biome Z coordinate + m (IILnet/minecraft/class_6749$class_6751;)V method_39351 acceptHeights + p 3 consumer + p 2 biomeZ + p 1 biomeX + m (ILnet/minecraft/class_2791;II)V method_39347 initBlockColumn + p 1 index + p 2 chunk + p 3 chunkBlockX + p 4 chunkBlockZ + m (Lnet/minecraft/class_2791;Ljava/util/Set;)V method_39572 initChunkBlendingData + p 2 newNoiseChunkDirections + p 1 chunk + m (Lnet/minecraft/class_6749$class_9899;)Lnet/minecraft/class_6749; method_61807 fromSerialized + p 0 serialized + m (IILjava/util/Optional;)V + p 3 heights + p 2 oldTopSectionY + p 1 oldBottomSectionY + m (I)I method_41565 getHalfSectionHeight + p 1 halfSectionY + m ()I method_41567 getVerticalBiomeCount + m (Lnet/minecraft/class_2791;II)I method_39349 getSurfaceBlockY + p 2 blockX + p 1 chunk + p 3 blockZ + m (Lnet/minecraft/class_2791;Lnet/minecraft/class_2338;)Z method_39350 isCollidableAndNotTreeAt + p 0 chunk + p 1 pos + m (I)I method_39352 getZ + p 0 index + m (Lnet/minecraft/class_2791;Lnet/minecraft/class_2338$class_2339;)D method_39906 getCollidableBlockDensityBelow + p 1 mutablePos + c will be moved down by seven blocks by this method + p 0 chunk + m (Lnet/minecraft/class_5281;IIZ)Ljava/util/Set; method_39579 getAdjacentChunksWithNoise + p 2 chunkZ + p 1 chunkX + p 3 oldNoise + p 0 access + m (III)D method_39344 getHeight + p 1 biomeX + p 2 biomeY + p 3 biomeZ + m ()Lnet/minecraft/class_5539; method_41564 getOldHeightLimit + m (Lnet/minecraft/class_2791;III)[D method_39354 calculateCollidableBlockDensityColumn + p 4 surfaceHeight + p 1 chunk + p 3 chunkBlockZ + p 2 chunkBlockX + m ()I method_39576 getVerticalHalfSectionCount +c net/minecraft/class_6749$class_9899 net/minecraft/world/gen/chunk/BlendingData$Serialized + f Lcom/mojang/serialization/Codec; field_52656 DOUBLE_ARRAY_CODEC + f Lcom/mojang/serialization/Codec; field_52655 CODEC + f Ljava/util/Optional; comp_2971 heights + f I comp_2970 maxSection + f I comp_2969 minSection + m (Lnet/minecraft/class_6749$class_9899;)Lcom/mojang/serialization/DataResult; method_61811 validate + p 0 serialized + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_61810 method_61810 + p 0 instance + m ()I comp_2970 maxSection + m ()I comp_2969 minSection + m ()Ljava/util/Optional; comp_2971 heights + m (IILjava/util/Optional;)V + p 1 minSection + p 2 maxSection + p 3 heights +c net/minecraft/class_6749$class_6750 net/minecraft/world/gen/chunk/BlendingData$CollidableBlockDensityConsumer + m (IIID)V consume consume + p 3 biomeZ + p 4 collidableBlockDensity + p 1 biomeX + p 2 halfSectionY +c net/minecraft/class_6749$class_6751 net/minecraft/world/gen/chunk/BlendingData$HeightConsumer + m (IID)V consume consume + p 3 height + p 2 biomeZ + p 1 biomeX +c net/minecraft/class_6749$class_6853 net/minecraft/world/gen/chunk/BlendingData$BiomeConsumer + m (IILnet/minecraft/class_6880;)V consume consume + p 1 biomeX + p 2 biomeZ + p 3 biome +c net/minecraft/class_5419 net/minecraft/entity/mob/PiglinBruteEntity + f Lcom/google/common/collect/ImmutableList; field_25760 MEMORY_MODULE_TYPES + f I field_30588 ATTACK_DAMAGE + f F field_30587 MOVEMENT_SPEED + f D field_52502 FOLLOW_RANGE + f I field_30586 MAX_HEALTH + f Lcom/google/common/collect/ImmutableList; field_25761 SENSOR_TYPES + m ()Lnet/minecraft/class_5132$class_5133; method_30242 createPiglinBruteAttributes + m ()V method_30243 playAngrySound +c net/minecraft/class_6760 net/minecraft/world/tick/OrderedTick + f Lit/unimi/dsi/fastutil/Hash$Strategy; field_35551 HASH_STRATEGY + f Ljava/util/Comparator; field_35550 BASIC_COMPARATOR + f Ljava/util/Comparator; field_35549 TRIGGER_TICK_COMPARATOR + f Ljava/lang/Object; comp_252 type + f Lnet/minecraft/class_1953; comp_255 priority + f Lnet/minecraft/class_2338; comp_253 pos + f J comp_254 triggerTick + f J comp_256 subTickOrder + m (Lnet/minecraft/class_6760;Lnet/minecraft/class_6760;)I method_39409 method_39409 + p 1 second + p 0 first + m (J)Lnet/minecraft/class_6759; method_61899 toTick + p 1 time + m (Lnet/minecraft/class_6760;Lnet/minecraft/class_6760;)I method_39412 method_39412 + p 1 second + p 0 first + m (Ljava/lang/Object;Lnet/minecraft/class_2338;)Lnet/minecraft/class_6760; method_39410 create + p 1 pos + p 0 type + m (Ljava/lang/Object;Lnet/minecraft/class_2338;JJ)V + p 1 type + p 3 triggerTick + p 2 pos + p 5 subTickOrder + m ()Ljava/lang/Object; comp_252 type + m ()J comp_254 triggerTick + m ()J comp_256 subTickOrder + m ()Lnet/minecraft/class_2338; comp_253 pos + m ()Lnet/minecraft/class_1953; comp_255 priority + m (Ljava/lang/Object;Lnet/minecraft/class_2338;JLnet/minecraft/class_1953;J)V + p 1 type + p 2 pos + p 3 triggerTick + p 5 priority + p 6 subTickOrder +c net/minecraft/class_6760$1 net/minecraft/world/tick/OrderedTick$1 + m (Lnet/minecraft/class_6760;)I method_39413 hashCode + m (Ljava/lang/Object;Ljava/lang/Object;)Z equals equals + p 1 first + p 2 second + m (Lnet/minecraft/class_6760;Lnet/minecraft/class_6760;)Z method_39414 equals + m (Ljava/lang/Object;)I hashCode hashCode + p 1 orderedTick +c net/minecraft/class_6761 net/minecraft/world/tick/SerializableTickScheduler + m (J)Ljava/util/List; method_61898 collectTicks + p 1 time +c net/minecraft/class_5430 net/minecraft/entity/ai/brain/task/AdmireItemTimeLimitTask + m (IILnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47295 method_47295 + p 2 context + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;ILnet/minecraft/class_7906;Lnet/minecraft/class_7906;ILnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47297 method_47297 + p 6 world + p 7 entity + p 8 time + m (Lnet/minecraft/class_7898$class_7900;IILnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47296 method_47296 + p 6 disableWalkToAdmireItem + p 5 timeTryingToReachAdmireItem + p 4 nearestVisibleWantedItem + p 3 admiringItem + m (II)Lnet/minecraft/class_7893; method_47294 create + p 1 timeLimit + p 0 cooldown +c net/minecraft/class_6769 net/minecraft/util/profiling/jfr/sample/PacketSample + f Ljava/lang/String; comp_259 side + f Ljava/lang/String; comp_261 packetId + f Ljava/lang/String; comp_260 protocolId + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/class_6769; method_39447 fromEvent + p 0 event + m ()Ljava/lang/String; comp_259 side + m ()Ljava/lang/String; comp_261 packetId + m ()Ljava/lang/String; comp_260 protocolId + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 side + p 2 protocolId + p 3 packetId +c net/minecraft/class_4107 net/minecraft/entity/ai/brain/task/OpenDoorsTask + f I field_30125 RUN_TIME + f D field_30127 REACH_DISTANCE + f D field_30126 PATHING_DISTANCE + m (Lorg/apache/commons/lang3/mutable/MutableObject;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46972 method_46972 + p 2 context + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_2338;Ljava/util/Optional;)Z method_30761 hasOtherMobReachedDoor + p 2 otherMobs + p 1 pos + p 0 entity + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lorg/apache/commons/lang3/mutable/MutableObject;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_46966 method_46966 + p 8 time + p 7 entity + p 6 world + m (Lnet/minecraft/class_4208;Ljava/util/Set;)Ljava/util/Set; method_46971 method_46971 + p 1 doorSet + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1309;)Z method_46970 method_46970 + p 1 mob + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_4208;)Z method_30762 cannotReachDoor + p 1 entity + p 0 world + p 2 doorPos + m (Lnet/minecraft/class_7898$class_7900;Lorg/apache/commons/lang3/mutable/MutableObject;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46967 method_46967 + p 4 doorsToClose + p 5 mobs + p 3 path + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_30764 method_30764 + p 1 mob + m ()Lnet/minecraft/class_7893; method_46964 create + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_9;Lnet/minecraft/class_9;Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Ljava/util/Set;)V method_46965 method_46965 + p 6 doors + m (Lnet/minecraft/class_4970$class_4971;)Z method_40002 method_40002 + p 0 state + m (Lnet/minecraft/class_4970$class_4971;)Z method_46974 method_46974 + p 0 state + m (Lnet/minecraft/class_7906;Ljava/util/Optional;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Ljava/util/Optional; method_46969 storePos + p 3 pos + p 2 world + p 1 doors + p 0 queryResult + m (Lnet/minecraft/class_4970$class_4971;)Z method_46973 method_46973 + p 0 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_9;Lnet/minecraft/class_9;Ljava/util/Set;Ljava/util/Optional;)V method_30760 pathToDoor + p 0 world + p 1 entity + p 2 lastNode + p 3 currentNode + p 4 doors + p 5 otherMobs + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1309;)Z method_30765 method_30765 + p 1 mob + m (Lnet/minecraft/class_4095;Lnet/minecraft/class_2338;)Z method_30766 hasReached + p 0 brain + p 1 pos +c net/minecraft/class_5437 net/minecraft/world/gen/feature/ReplaceBlobsFeatureConfig + f Lnet/minecraft/class_2680; field_25850 state + f Lnet/minecraft/class_6017; field_25851 radius + f Lcom/mojang/serialization/Codec; field_25848 CODEC + f Lnet/minecraft/class_2680; field_25849 target + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_6017;)V + p 3 radius + p 2 state + p 1 target + m (Lnet/minecraft/class_5437;)Lnet/minecraft/class_6017; method_30407 method_30407 + p 0 config + m ()Lnet/minecraft/class_6017; method_30405 getRadius + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30406 method_30406 + p 0 instance + m (Lnet/minecraft/class_5437;)Lnet/minecraft/class_2680; method_30408 method_30408 + p 0 config + m (Lnet/minecraft/class_5437;)Lnet/minecraft/class_2680; method_30409 method_30409 + p 0 config +c net/minecraft/class_6767 net/minecraft/util/profiling/jfr/sample/NetworkIoStatistics + f Lnet/minecraft/class_6767$class_6768; field_35583 combinedStatistics + f Ljava/util/List; field_35584 topContributors + f Ljava/time/Duration; field_35585 duration + m ()Ljava/util/List; method_39442 getTopContributors + m (Ljava/time/Duration;Ljava/util/List;)V + p 1 duration + p 2 packetsToStatistics + m ()D method_39438 getCountPerSecond + m ()D method_39439 getBytesPerSecond + m ()J method_39440 getTotalCount + m ()J method_39441 getTotalSize +c net/minecraft/class_6767$class_6768 net/minecraft/util/profiling/jfr/sample/NetworkIoStatistics$PacketStatistics + f Ljava/util/Comparator; field_35586 COMPARATOR + f J comp_258 totalSize + f J comp_257 totalCount + m ()F method_56986 getAverageSize + m (Lnet/minecraft/class_6767$class_6768;)Lnet/minecraft/class_6767$class_6768; method_39444 add + p 1 statistics + m ()J comp_258 totalSize + m ()J comp_257 totalCount + m (JJ)V + p 1 totalCount + p 3 totalSize +c net/minecraft/class_4106 net/minecraft/entity/ai/brain/task/FindEntityTask + m (Lnet/minecraft/class_1299;Ljava/util/function/Predicate;Lnet/minecraft/class_1309;)Z method_46958 method_46958 + p 2 entity + m (Lnet/minecraft/class_1309;ILjava/util/function/Predicate;Lnet/minecraft/class_1309;)Z method_46959 method_46959 + p 3 target + m (Lnet/minecraft/class_1309;)Z method_18948 method_18948 + p 0 entity + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Ljava/util/function/Predicate;Ljava/util/function/Predicate;ILnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;FILnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_46960 method_46960 + p 11 entity + p 12 time + p 10 world + m (Lnet/minecraft/class_1299;ILnet/minecraft/class_4140;FI)Lnet/minecraft/class_7893; method_18941 create + p 2 targetModule + p 3 speed + p 4 completionRange + p 0 type + p 1 maxDistance + m (Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;FILnet/minecraft/class_1309;)V method_46962 method_46962 + p 5 target + m (Lnet/minecraft/class_7898$class_7900;Ljava/util/function/Predicate;Ljava/util/function/Predicate;IFILnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46961 method_46961 + p 6 targetValue + p 9 visibleMobs + p 7 lookTarget + p 8 walkTarget + m (Lnet/minecraft/class_4140;Ljava/util/function/Predicate;Ljava/util/function/Predicate;IFILnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46963 method_46963 + p 6 context + m (Lnet/minecraft/class_1299;ILjava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/class_4140;FI)Lnet/minecraft/class_7893; method_46957 create + p 4 targetModule + p 5 speed + p 6 completionRange + p 0 type + p 1 maxDistance + p 2 entityPredicate + p 3 targetPredicate + m (Lnet/minecraft/class_1309;)Z method_18949 method_18949 + p 0 entity +c net/minecraft/class_6764 net/minecraft/unused/packageinfo/PackageInfo6764 +c net/minecraft/class_4101 net/minecraft/entity/ai/brain/task/WaitTask + f I field_40988 minRunTime + f I field_40989 maxRunTime + f J field_40991 waitUntil + f Lnet/minecraft/class_4097$class_4098; field_40990 status + m (II)V + p 1 minRunTime + p 2 maxRunTime +c net/minecraft/class_6765 net/minecraft/world/biome/source/util/VanillaTerrainParametersCreator + f Lnet/minecraft/class_6501; field_38029 OFFSET_AMPLIFIER + f Lnet/minecraft/class_6501; field_38028 IDENTITY + f Lnet/minecraft/class_6501; field_38030 FACTOR_AMPLIFIER + f Lnet/minecraft/class_6501; field_38031 JAGGEDNESS_AMPLIFIER + m (FFF)F method_42046 getOffsetValue + m (Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;FZLnet/minecraft/class_6501;)Lnet/minecraft/class_6492; method_42054 method_42054 + p 5 amplifier + p 0 erosion + p 2 ridgesFolded + p 1 ridges + m (Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;Z)Lnet/minecraft/class_6492; method_42056 createOffsetSpline + c Creates the spline for terrain offset.\n\nOffset roughly correlates to surface height. + p 3 amplified + p 2 ridgesFolded + p 1 erosion + p 0 continents + m (Lnet/minecraft/class_6501;FZLnet/minecraft/class_6501;)Lnet/minecraft/class_6492; method_42050 method_42050 + p 3 amplifier + p 0 ridgesFolded + m (Lnet/minecraft/class_6501;FLnet/minecraft/class_6501;)Lnet/minecraft/class_6492; method_42049 method_42049 + p 2 amplifier + p 0 ridges + m (Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;FFFFFFZZLnet/minecraft/class_6501;)Lnet/minecraft/class_6492; method_42051 createContinentalOffsetSpline + p 10 amplifier + p 2 continentalness + p 1 ridgesFolded + p 0 erosion + m (F)F method_42057 method_42057 + p 0 value + m (F)F method_42059 method_42059 + p 0 value + m (Lnet/minecraft/class_6501;FFFFFFLnet/minecraft/class_6501;)Lnet/minecraft/class_6492; method_42048 method_42048 + p 7 amplifier + p 0 ridgesFolded + p 1 continentalness + m (Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;Z)Lnet/minecraft/class_6492; method_42058 createJaggednessSpline + c Creates the spline for terrain jaggedness.\n\nThis is used for the peaks in the jagged peaks biome, for example. + p 0 continents + p 2 ridges + p 1 erosion + p 4 amplified + p 3 ridgesFolded + m (F)F method_42060 method_42060 + p 0 value + m (Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;Z)Lnet/minecraft/class_6492; method_42055 createFactorSpline + c Creates the spline for terrain factor.\n\nHigher factor values generally result in flatter terrain,\nwhile lower values generally result in more shattered terrain. + p 3 ridgesFolded + p 2 ridges + p 4 amplified + p 1 erosion + p 0 continents + m (Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;FFFFLnet/minecraft/class_6501;)Lnet/minecraft/class_6492; method_42053 method_42053 + p 0 erosion + p 1 ridges + p 2 ridgesFolded + p 7 amplifier + m (Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;FFLnet/minecraft/class_6501;)Lnet/minecraft/class_6492; method_42052 method_42052 + p 1 ridgesFolded + p 0 ridges + p 4 amplifier +c net/minecraft/class_4100 net/minecraft/entity/ai/brain/task/StopPanickingTask + f I field_30188 MAX_DISTANCE + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47199 method_47199 + p 0 context + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47200 method_47200 + p 1 hurtBy + p 2 hurtByEntity + p 3 nearestHostile + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47201 method_47201 + p 5 entity + p 4 world + p 6 time + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_47198 method_47198 + p 1 hurtByx + m ()Lnet/minecraft/class_7893; method_47197 create +c net/minecraft/class_5431 net/minecraft/block/SideShapeType + f Lnet/minecraft/class_5431; field_25824 RIGID + f Lnet/minecraft/class_5431; field_25822 FULL + f Lnet/minecraft/class_5431; field_25823 CENTER + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_30367 matches + p 2 world + p 1 state + p 4 direction + p 3 pos +c net/minecraft/class_5431$2 net/minecraft/block/SideShapeType$2 + f Lnet/minecraft/class_265; field_25827 squareCuboid +c net/minecraft/class_5431$3 net/minecraft/block/SideShapeType$3 + f Lnet/minecraft/class_265; field_25829 hollowSquareCuboid +c net/minecraft/class_6762 net/minecraft/world/tick/TickScheduler + m (Lnet/minecraft/class_2338;Ljava/lang/Object;)Z method_8674 isQueued + p 2 type + p 1 pos + m ()I method_20825 getTickCount + m (Lnet/minecraft/class_6760;)V method_39363 scheduleTick + p 1 orderedTick +c net/minecraft/class_5434 net/minecraft/world/gen/structure/JigsawStructure + f Lnet/minecraft/class_6122; field_37797 startHeight + f Ljava/util/Optional; field_39059 startJigsawName + f Lnet/minecraft/class_9822; field_52236 liquidSettings + f Z field_37798 useExpansionHack + f Lnet/minecraft/class_9778; field_51912 dimensionPadding + f I field_38435 MAX_SIZE + f Ljava/util/Optional; field_37799 projectStartToHeightmap + f Lnet/minecraft/class_6880; field_37795 startPool + f I field_37796 size + f Lnet/minecraft/class_9822; field_52235 DEFAULT_LIQUID_SETTINGS + f Lnet/minecraft/class_9778; field_51911 DEFAULT_DIMENSION_PADDING + f Lnet/minecraft/class_5434$class_11600; field_38268 maxDistanceFromCenter + f Ljava/util/List; field_46829 poolAliasBindings + f Lcom/mojang/serialization/MapCodec; field_37794 CODEC + f I field_47412 MAX_GENERATION_DEPTH + m (Lnet/minecraft/class_5434;)Lnet/minecraft/class_5434$class_11600; method_42704 method_42704 + p 0 structure + m (Lnet/minecraft/class_5434;)Ljava/lang/Boolean; method_42706 method_42706 + p 0 structure + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41662 method_41662 + p 0 instance + m (Lnet/minecraft/class_5434;)Ljava/util/Optional; method_43567 method_43567 + p 0 structure + m (Lnet/minecraft/class_5434;)Ljava/util/Optional; method_42705 method_42705 + p 0 structure + m (Lnet/minecraft/class_5434;)Lnet/minecraft/class_6880; method_42710 method_42710 + p 0 structure + m (Lnet/minecraft/class_5434;)Lcom/mojang/serialization/DataResult; method_42708 validate + p 0 structure + m (Lnet/minecraft/class_3195$class_7302;Lnet/minecraft/class_6880;ILnet/minecraft/class_6122;ZLnet/minecraft/class_2902$class_2903;)V + p 1 config + p 6 projectStartToHeightmap + p 2 startPool + p 3 size + p 4 startHeight + p 5 useExpansionHack + m (Lnet/minecraft/class_5434;)Ljava/lang/Integer; method_42709 method_42709 + p 0 structure + m (Lnet/minecraft/class_5434;)Lnet/minecraft/class_6122; method_42707 method_42707 + p 0 structure + m ()Ljava/util/List; method_67692 getPoolAliasBindings + m (Lnet/minecraft/class_3195$class_7302;Lnet/minecraft/class_6880;ILnet/minecraft/class_6122;Z)V + p 4 startHeight + p 5 useExpansionHack + p 1 config + p 2 startPool + p 3 size + m (Lnet/minecraft/class_5434;)Lnet/minecraft/class_9778; method_60567 method_60567 + p 0 structure + m (Lnet/minecraft/class_3195$class_7302;Lnet/minecraft/class_6880;Ljava/util/Optional;ILnet/minecraft/class_6122;ZLjava/util/Optional;Lnet/minecraft/class_5434$class_11600;Ljava/util/List;Lnet/minecraft/class_9778;Lnet/minecraft/class_9822;)V + p 11 liquidSettings + p 10 dimensionPadding + p 1 config + p 5 startHeight + p 4 size + p 3 startJigsawName + p 2 startPool + p 9 poolAliasBindings + p 8 maxDistanceFromCenter + p 7 projectStartToHeightmap + p 6 useExpansionHack + m ()Lnet/minecraft/class_6880; method_67691 getStartPool + m (Lnet/minecraft/class_5434;)Ljava/util/List; method_54520 method_54520 + p 0 structure +c net/minecraft/class_5434$class_11600 net/minecraft/world/gen/structure/JigsawStructure$MaxDistanceFromCenter + f Lcom/mojang/serialization/Codec; field_61483 EXPANDED_CODEC + f Lcom/mojang/serialization/Codec; field_61481 CODEC + f Lcom/mojang/serialization/Codec; field_61482 DISTANCE_CODEC + f I comp_4451 horizontal + f I comp_4452 vertical + m (Lnet/minecraft/class_5434$class_11600;)Lcom/mojang/datafixers/util/Either; method_72693 method_72693 + p 0 distance + m (I)V + p 1 distance + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_5434$class_11600; method_72691 method_72691 + p 0 either + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_72692 method_72692 + p 0 instance + m ()I comp_4451 horizontal + m ()I comp_4452 vertical + m (II)V + p 1 horizontal + p 2 vertical +c net/minecraft/class_4103 net/minecraft/entity/ai/brain/task/CompositeTask + f Lnet/minecraft/class_4103$class_4216; field_18346 runMode + f Ljava/util/Map; field_40992 requiredMemoryState + f Lnet/minecraft/class_4103$class_4104; field_18345 order + f Lnet/minecraft/class_6032; field_18347 tasks + f Lnet/minecraft/class_4097$class_4098; field_40993 status + f Ljava/util/Set; field_18344 memoriesToForgetWhenStopped + m (Lnet/minecraft/class_7893;)Z method_46925 method_46925 + p 0 task + m (Lcom/mojang/datafixers/util/Pair;)V method_18929 method_18929 + p 1 task + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;JLnet/minecraft/class_7893;)V method_46926 method_46926 + p 4 task + m (Lnet/minecraft/class_1309;)Z method_46924 shouldStart + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;JLnet/minecraft/class_7893;)V method_46923 method_46923 + p 4 task + m (Ljava/util/Map;Ljava/util/Set;Lnet/minecraft/class_4103$class_4104;Lnet/minecraft/class_4103$class_4216;Ljava/util/List;)V + p 1 requiredMemoryState + p 2 memoriesToForgetWhenStopped + p 3 order + p 4 runMode + p 5 tasks + m (Lnet/minecraft/class_7893;)Z method_46927 method_46927 + p 0 task + m (Lnet/minecraft/class_7893;)Z method_46928 method_46928 + p 0 task + m (Lnet/minecraft/class_7893;)Z method_46929 method_46929 + p 0 task +c net/minecraft/class_4103$class_4216 net/minecraft/entity/ai/brain/task/CompositeTask$RunMode + f Lnet/minecraft/class_4103$class_4216; field_18855 RUN_ONE + f Lnet/minecraft/class_4103$class_4216; field_18856 TRY_ALL + m (Ljava/util/stream/Stream;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)V method_19559 run + p 2 world + p 1 tasks + p 4 time + p 3 entity +c net/minecraft/class_4103$class_4216$2 net/minecraft/entity/ai/brain/task/CompositeTask$RunMode$2 + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;JLnet/minecraft/class_7893;)V method_46932 method_46932 + p 4 task + m (Lnet/minecraft/class_7893;)Z method_46933 method_46933 + p 0 task +c net/minecraft/class_4103$class_4216$1 net/minecraft/entity/ai/brain/task/CompositeTask$RunMode$1 + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;JLnet/minecraft/class_7893;)Z method_46930 method_46930 + p 4 task + m (Lnet/minecraft/class_7893;)Z method_46931 method_46931 + p 0 task +c net/minecraft/class_4103$class_4104 net/minecraft/entity/ai/brain/task/CompositeTask$Order + f Ljava/util/function/Consumer; field_18350 listModifier + f Lnet/minecraft/class_4103$class_4104; field_18349 SHUFFLED + f Lnet/minecraft/class_4103$class_4104; field_18348 ORDERED + m (Ljava/lang/String;ILjava/util/function/Consumer;)V + p 3 listModifier + m (Lnet/minecraft/class_6032;)V method_18939 apply + p 1 list + m (Lnet/minecraft/class_6032;)V method_18940 method_18940 + p 0 list +c net/minecraft/class_6763 net/minecraft/world/tick/BasicTickScheduler +c net/minecraft/class_4102 net/minecraft/entity/ai/brain/EntityLookTarget + f Z field_24382 useEyeHeight + f Lnet/minecraft/class_1297; field_18342 entity + f Z field_60165 blockPosAtEye + m (Lnet/minecraft/class_1297;Z)V + p 2 useEyeHeight + p 1 entity + m ()Lnet/minecraft/class_1297; method_35066 getEntity + m (Lnet/minecraft/class_1297;ZZ)V + p 2 useEyeHeight + p 1 entity + p 3 blockPosAtEye +c net/minecraft/class_5429 net/minecraft/datafixer/fix/RemoveGolemGossipFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_30326 updateGossipsList + p 0 villagerData + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_30327 method_30327 + p 1 gossipsDynamic + m (Lcom/mojang/serialization/Dynamic;)Z method_30328 method_30328 + p 0 gossipDynamic +c net/minecraft/class_6759 net/minecraft/world/tick/Tick + f Lit/unimi/dsi/fastutil/Hash$Strategy; field_35542 HASH_STRATEGY + f Lnet/minecraft/class_1953; comp_251 priority + f I comp_250 delay + f Lnet/minecraft/class_2338; comp_249 pos + f Ljava/lang/Object; comp_248 type + m (JJ)Lnet/minecraft/class_6760; method_39400 createOrderedTick + p 1 time + p 3 subTickOrder + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_67719 createCodec + p 0 typeCodec + m (Ljava/util/List;Lnet/minecraft/class_1923;)Ljava/util/List; method_67722 filter + p 0 ticks + p 1 chunkPos + m (Ljava/lang/Object;Lnet/minecraft/class_2338;)Lnet/minecraft/class_6759; method_39402 create + p 1 pos + p 0 type + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67720 method_67720 + p 2 instance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67721 method_67721 + p 0 instance + m (JLnet/minecraft/class_6759;)Z method_67718 method_67718 + p 2 tick + m ()Ljava/lang/Object; comp_248 type + m ()Lnet/minecraft/class_1953; comp_251 priority + m ()I comp_250 delay + m ()Lnet/minecraft/class_2338; comp_249 pos + m (Ljava/lang/Object;Lnet/minecraft/class_2338;ILnet/minecraft/class_1953;)V + p 1 type + p 2 pos + p 3 delay + p 4 priority +c net/minecraft/class_6759$1 net/minecraft/world/tick/Tick$1 + m (Ljava/lang/Object;Ljava/lang/Object;)Z equals equals + p 2 second + p 1 first + m (Ljava/lang/Object;)I hashCode hashCode + p 1 tick + m (Lnet/minecraft/class_6759;Lnet/minecraft/class_6759;)Z method_39408 equals + m (Lnet/minecraft/class_6759;)I method_39407 hashCode +c net/minecraft/class_6736 net/minecraft/world/gen/noise/BuiltinNoiseParameters + f Lnet/minecraft/class_5216$class_5487; field_40960 OFFSET + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;ID[D)V method_39217 register + p 3 firstAmplitude + p 5 amplitudes + p 0 noiseParametersRegisterable + p 1 key + p 2 firstOctave + m (Lnet/minecraft/class_7891;)V method_39216 bootstrap + p 0 noiseParametersRegisterable + m (Lnet/minecraft/class_7891;ILnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;)V method_39493 register + p 4 continentalnessKey + p 3 vegetationKey + p 5 erosionKey + p 0 noiseParametersRegisterable + p 2 temperatureKey + p 1 octaveOffset +c net/minecraft/class_5405 net/minecraft/client/gui/screen/GraphicsWarningScreen + f Lnet/minecraft/class_5489; field_25677 lines + f I field_32262 BUTTON_HEIGHT + f I field_32261 BUTTON_MARGIN + f I field_32260 BUTTON_PADDING + f I field_25679 buttonWidth + f Lnet/minecraft/class_2561; field_33811 narrationMessage + f Lcom/google/common/collect/ImmutableList; field_25676 choiceButtons + f Ljava/util/List; field_25675 message + f I field_25678 linesY + m (Lnet/minecraft/class_2561;Ljava/util/List;Lcom/google/common/collect/ImmutableList;)V + p 3 choiceButtons + p 2 messages + p 1 title +c net/minecraft/class_5405$class_5406 net/minecraft/client/gui/screen/GraphicsWarningScreen$ChoiceButton + f Lnet/minecraft/class_4185$class_4241; field_25681 pressAction + f Lnet/minecraft/class_2561; field_25680 message + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_4185$class_4241;)V + p 1 message + p 2 pressAction +c net/minecraft/class_5404 net/minecraft/datafixer/fix/OptionFix + f Ljava/lang/String; field_25665 name + f Ljava/lang/String; field_25666 oldName + f Ljava/lang/String; field_25667 newName + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 outputSchema + p 2 changesType + p 3 name + p 4 oldName + p 5 newName + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_30019 method_30019 + p 1 optionsTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_30020 method_30020 + p 1 optionsDynamic +c net/minecraft/class_6734 net/minecraft/client/particle/BlockMarkerParticle + f Lnet/minecraft/class_3940$class_11941; field_64445 renderType + m (Lnet/minecraft/class_638;DDDLnet/minecraft/class_2680;)V + p 4 y + p 2 x + p 1 world + p 8 state + p 6 z +c net/minecraft/class_6734$class_6735 net/minecraft/client/particle/BlockMarkerParticle$Factory + m (Lnet/minecraft/class_2388;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_39196 createParticle +c net/minecraft/class_6731 net/minecraft/world/gen/noise/NoiseParametersKeys + f Lnet/minecraft/class_5321; field_35409 SPAGHETTI_3D_THICKNESS + f Lnet/minecraft/class_5321; field_35414 CAVE_CHEESE + f Lnet/minecraft/class_5321; field_35412 CAVE_ENTRANCE + f Lnet/minecraft/class_5321; field_35413 CAVE_LAYER + f Lnet/minecraft/class_5321; field_35410 SPAGHETTI_ROUGHNESS + f Lnet/minecraft/class_5321; field_35411 SPAGHETTI_ROUGHNESS_MODULATOR + f Lnet/minecraft/class_5321; field_35675 SURFACE_SECONDARY + f Lnet/minecraft/class_5321; field_35407 SPAGHETTI_3D_2 + f Lnet/minecraft/class_5321; field_35408 SPAGHETTI_3D_RARITY + f Lnet/minecraft/class_5321; field_35405 SPAGHETTI_2D_THICKNESS + f Lnet/minecraft/class_5321; field_35404 SPAGHETTI_2D_MODULATOR + f Lnet/minecraft/class_5321; field_35406 SPAGHETTI_3D_1 + f Lnet/minecraft/class_5321; field_35402 SPAGHETTI_2D + f Lnet/minecraft/class_5321; field_35403 SPAGHETTI_2D_ELEVATION + f Lnet/minecraft/class_5321; field_35400 PILLAR_RARENESS + f Lnet/minecraft/class_5321; field_35401 PILLAR_THICKNESS + f Lnet/minecraft/class_5321; field_35389 TEMPERATURE + f Lnet/minecraft/class_5321; field_35387 NETHER_WART + f Lnet/minecraft/class_5321; field_35388 NETHER_STATE_SELECTOR + f Lnet/minecraft/class_5321; field_35385 PATCH + f Lnet/minecraft/class_5321; field_35386 NETHERRACK + f Lnet/minecraft/class_5321; field_35383 SOUL_SAND_LAYER + f Lnet/minecraft/class_5321; field_35384 GRAVEL_LAYER + f Lnet/minecraft/class_5321; field_35381 PACKED_ICE + f Lnet/minecraft/class_5321; field_35382 ICE + f Lnet/minecraft/class_5321; field_35399 PILLAR + f Lnet/minecraft/class_5321; field_35397 AQUIFER_LAVA + f Lnet/minecraft/class_5321; field_35398 AQUIFER_FLUID_LEVEL_SPREAD + f Lnet/minecraft/class_5321; field_35395 AQUIFER_BARRIER + f Lnet/minecraft/class_5321; field_35396 AQUIFER_FLUID_LEVEL_FLOODEDNESS + f Lnet/minecraft/class_5321; field_35393 RIDGE + f Lnet/minecraft/class_5321; field_35394 OFFSET + f Lnet/minecraft/class_5321; field_35391 CONTINENTALNESS + f Lnet/minecraft/class_5321; field_35392 EROSION + f Lnet/minecraft/class_5321; field_35390 VEGETATION + f Lnet/minecraft/class_5321; field_35595 VEGETATION_LARGE + f Lnet/minecraft/class_5321; field_35596 CONTINENTALNESS_LARGE + f Lnet/minecraft/class_5321; field_35593 POWDER_SNOW + f Lnet/minecraft/class_5321; field_35594 TEMPERATURE_LARGE + f Lnet/minecraft/class_5321; field_35597 EROSION_LARGE + f Lnet/minecraft/class_5321; field_35365 ORE_VEIN_B + f Lnet/minecraft/class_5321; field_35366 ORE_GAP + f Lnet/minecraft/class_5321; field_35363 ORE_VEININESS + f Lnet/minecraft/class_5321; field_35364 ORE_VEIN_A + f Lnet/minecraft/class_5321; field_35492 ICEBERG_PILLAR_ROOF + f Lnet/minecraft/class_5321; field_35493 ICEBERG_SURFACE + f Lnet/minecraft/class_5321; field_35490 BADLANDS_SURFACE + f Lnet/minecraft/class_5321; field_35491 ICEBERG_PILLAR + f Lnet/minecraft/class_5321; field_35369 NOODLE_RIDGE_A + f Lnet/minecraft/class_5321; field_35367 NOODLE + f Lnet/minecraft/class_5321; field_35368 NOODLE_THICKNESS + f Lnet/minecraft/class_5321; field_35377 CALCITE + f Lnet/minecraft/class_5321; field_35378 GRAVEL + f Lnet/minecraft/class_5321; field_35376 SURFACE_SWAMP + f Lnet/minecraft/class_5321; field_35373 SURFACE + f Lnet/minecraft/class_5321; field_35371 JAGGED + f Lnet/minecraft/class_5321; field_35372 CLAY_BANDS_OFFSET + f Lnet/minecraft/class_5321; field_35370 NOODLE_RIDGE_B + f Lnet/minecraft/class_5321; field_35488 BADLANDS_PILLAR + f Lnet/minecraft/class_5321; field_35489 BADLANDS_PILLAR_ROOF + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_39174 of + p 0 id + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_6574;Lnet/minecraft/class_5321;)Lnet/minecraft/class_5216; method_41127 createNoiseSampler + p 1 splitter + p 2 key + p 0 noiseParametersLookup +c net/minecraft/class_6732 net/minecraft/world/gen/placementmodifier/RandomOffsetPlacementModifier + f Lnet/minecraft/class_6017; field_35420 spreadXz + f Lnet/minecraft/class_6017; field_35421 spreadY + f Lcom/mojang/serialization/MapCodec; field_35419 MODIFIER_CODEC + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;)V + p 1 xzSpread + p 2 ySpread + m (Lnet/minecraft/class_6017;)Lnet/minecraft/class_6732; method_39656 vertically + p 0 spreadY + m (Lnet/minecraft/class_6017;)Lnet/minecraft/class_6732; method_39658 horizontally + p 0 spreadXz + m (Lnet/minecraft/class_6732;)Lnet/minecraft/class_6017; method_39180 method_39180 + p 0 placementModifier + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39179 method_39179 + p 0 instance + m (Lnet/minecraft/class_6732;)Lnet/minecraft/class_6017; method_39181 method_39181 + p 0 placementModifier + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;)Lnet/minecraft/class_6732; method_39657 of + p 0 spreadXz + p 1 spreadY +c net/minecraft/class_6728 net/minecraft/util/math/intprovider/ClampedNormalIntProvider + f I field_35355 min + f F field_35353 mean + f I field_35356 max + f F field_35354 deviation + f Lcom/mojang/serialization/MapCodec; field_35352 CODEC + m (Lnet/minecraft/class_6728;)Ljava/lang/Integer; method_39160 method_39160 + p 0 provider + m (FFII)Lnet/minecraft/class_6728; method_39156 of + p 0 mean + p 2 min + p 1 deviation + p 3 max + m (Lnet/minecraft/class_6728;)Lcom/mojang/serialization/DataResult; method_39157 method_39157 + p 0 provider + m (Lnet/minecraft/class_6728;)Ljava/lang/Integer; method_39161 method_39161 + p 0 provider + m (FFII)V + p 4 max + p 1 mean + p 3 min + p 2 deviation + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39158 method_39158 + p 0 instance + m (Lnet/minecraft/class_5819;FFFF)I method_39159 next + p 0 random + p 1 mean + p 2 deviation + p 3 min + p 4 max + m (Lnet/minecraft/class_6728;)Ljava/lang/Float; method_39163 method_39163 + p 0 provider + m (Lnet/minecraft/class_6728;)Ljava/lang/Float; method_39162 method_39162 + p 0 provider +c net/minecraft/class_6726 net/minecraft/world/biome/TheEndBiomeCreator + m (Lnet/minecraft/class_5485$class_5495;)Lnet/minecraft/class_1959; method_39141 createEndBiome + p 0 builder + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_39140 createEndBarrens + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_39142 createTheEnd + p 0 featureLookup + p 1 carverLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_39144 createEndHighlands + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_39143 createEndMidlands + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_39145 createSmallEndIslands + p 1 carverLookup + p 0 featureLookup +c net/minecraft/class_6727 net/minecraft/world/biome/TheNetherBiomeCreator + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_39149 createCrimsonForest + p 1 carverLookup + p 0 featureLookup + m ()Lnet/minecraft/class_1959$class_1960; method_75846 biome + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_39148 createBasaltDeltas + p 1 carverLookup + p 0 featureLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_39150 createWarpedForest + p 0 featureLookup + p 1 carverLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_39147 createSoulSandValley + p 0 featureLookup + p 1 carverLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_1959; method_39146 createNetherWastes + p 1 carverLookup + p 0 featureLookup +c net/minecraft/class_6746 net/minecraft/world/chunk/BelowZeroRetrogen + f Ljava/util/BitSet; field_35481 EMPTY_MISSING_BEDROCK_BIT_SET + f Lnet/minecraft/class_2806; field_35484 targetStatus + f Ljava/util/Set; field_36192 CAVE_BIOMES + f Lcom/mojang/serialization/Codec; field_35483 STATUS_CODEC + f Lcom/mojang/serialization/Codec; field_35482 MISSING_BEDROCK_CODEC + f Lcom/mojang/serialization/Codec; field_35480 CODEC + f Ljava/util/BitSet; field_35485 missingBedrock + f Lnet/minecraft/class_5539; field_35591 BELOW_ZERO_VIEW + m (Ljava/util/BitSet;)Ljava/util/stream/LongStream; method_39324 method_39324 + p 0 bedrockBitSet + m (Lnet/minecraft/class_2806;)Lcom/mojang/serialization/DataResult; method_39322 method_39322 + p 0 status + m (Lnet/minecraft/class_6780;Lnet/minecraft/class_2791;)Lnet/minecraft/class_6780; method_39767 getBiomeSupplier + p 1 chunk + p 0 biomeSupplier + m (Lnet/minecraft/class_6746;)Ljava/util/Optional; method_39323 method_39323 + p 0 belowZeroRetrogen + m (Lnet/minecraft/class_2839;Lnet/minecraft/class_2338;)V method_39896 method_39896 + p 1 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39321 method_39321 + p 0 instance + m ()Z method_39897 hasMissingBedrock + m (II)Z method_39895 isColumnMissingBedrock + p 1 x + p 2 z + m ()Lnet/minecraft/class_2806; method_39319 getTargetStatus + m (Lnet/minecraft/class_2839;)V method_39467 replaceOldBedrock + p 0 chunk + m (Ljava/util/stream/LongStream;)Ljava/util/BitSet; method_39325 method_39325 + p 0 serializedBedrockBitSet + m (Lnet/minecraft/class_2839;)V method_39898 fillColumnsWithAirIfMissingBedrock + p 1 chunk + m (Lnet/minecraft/class_2806;Ljava/util/Optional;)V + p 2 missingBedrock + p 1 targetStatus + m (Lnet/minecraft/class_2839;Lnet/minecraft/class_2338;)V method_39471 method_39471 + p 1 pos + m (Lnet/minecraft/class_6780;Ljava/util/function/Predicate;Lnet/minecraft/class_2791;IIILnet/minecraft/class_6544$class_6552;)Lnet/minecraft/class_6880; method_39768 method_39768 + p 6 noise + p 5 z + p 4 y + p 3 x +c net/minecraft/class_5416 net/minecraft/datafixer/schema/Schema2568 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_6742 net/minecraft/datafixer/fix/ChunkLevelTagRenameFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_39275 method_39275 + p 0 structuresTyped + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_39269 labelWithChunk + p 0 outputTyped + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39270 method_39270 + p 1 chunkDynamic + p 0 chunkTyped + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_39268 method_39268 + p 3 chunkTyped + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/datafixers/Typed; method_39271 rename + p 2 newKey + p 1 oldKey + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; method_39272 rename + p 1 oldKey + p 2 newKey +c net/minecraft/class_6743 net/minecraft/datafixer/schema/Schema2842 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 3 blockEntityTypes + p 2 entityTypes + p 1 schema +c net/minecraft/class_6740 net/minecraft/datafixer/fix/ProtoChunkTickListFix + f I field_35446 CHUNK_EDGE_LENGTH + f Lcom/google/common/collect/ImmutableSet; field_35447 ALWAYS_WATERLOGGED_BLOCK_IDS + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/List; method_39262 method_39262 + p 0 paletteDynamic + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_39252 getBlockIdToBeTicked + p 0 blockStateDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)I method_39261 method_39261 + p 0 posDynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/util/function/Supplier;IIIILjava/util/function/Function;)Lcom/mojang/serialization/Dynamic; method_39255 createTileTickObject + p 7 blockIdGetter + p 6 packedLocalPos + p 1 levelDynamic + p 5 sectionZ + p 4 sectionY + p 3 sectionX + p 2 sectionSupplier + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39260 method_39260 + p 1 liquidTicksDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39263 method_39263 + p 0 levelDynamic + m (Lcom/mojang/serialization/Dynamic;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;BIILjava/lang/String;Ljava/util/function/Function;)Lcom/mojang/serialization/Dynamic; method_39254 fixToBeTicked + p 7 blockIdGetter + p 6 key + p 1 levelDynamic + p 3 sectionY + p 2 palettedSectionsByY + p 5 localZ + p 4 localX + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_39259 getFluidBlockIdToBeTicked + p 0 blockStateDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39253 method_39253 + p 1 levelDynamic + m (BLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39258 method_39258 + p 1 yDynamic + m (BLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39244 method_39244 + p 1 levelDynamic + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_39246 method_39246 + p 8 chunkTyped + m (Lcom/mojang/datafixers/Typed;)Ljava/util/List; method_39250 method_39250 + p 0 paletteTyped + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;ILcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)V method_39257 method_39257 + p 3 blockStatesTyped + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lorg/apache/commons/lang3/mutable/MutableInt;Lcom/mojang/datafixers/OpticFinder;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)V method_39248 method_39248 + p 6 sectionsTyped + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_39247 method_39247 + p 7 levelTyped + m (Lcom/mojang/datafixers/OpticFinder;Lorg/apache/commons/lang3/mutable/MutableInt;Lcom/mojang/datafixers/OpticFinder;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)V method_39249 method_39249 + p 5 sectionTyped + m (Lcom/mojang/serialization/Dynamic;Ljava/util/function/Supplier;IIILjava/util/function/Function;I)Lcom/mojang/serialization/Dynamic; method_39256 method_39256 + p 7 packedLocalPos + m (I)Z method_39245 method_39245 + p 0 packedLocalPos +c net/minecraft/class_6740$class_6741 net/minecraft/datafixer/fix/ProtoChunkTickListFix$PalettedSection + f I field_35451 unitSize + f J field_35452 unitMask + f [J field_35450 data + f Ljava/util/List; field_35449 palette + f J field_35448 MIN_UNIT_SIZE + f I field_35453 unitsPerLong + m ()Ljava/util/List; method_39264 getPalette + m (Ljava/util/List;[J)V + p 1 palette + p 2 data + m (III)I method_39267 packLocalPos + p 1 localX + p 2 localY + p 3 localZ + m (III)Lcom/mojang/serialization/Dynamic; method_39265 get + p 1 localX + p 2 localY + p 3 localZ + m ()[J method_39266 getData +c net/minecraft/class_5411 net/minecraft/recipe/book/RecipeBookOptions + f Lnet/minecraft/class_5411$class_5412; field_60337 furnace + f Lnet/minecraft/class_5411$class_5412; field_60339 smoker + f Lnet/minecraft/class_9139; field_54548 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_60335 CODEC + f Lnet/minecraft/class_5411$class_5412; field_60338 blastFurnace + f Lnet/minecraft/class_5411$class_5412; field_60336 crafting + m (Lnet/minecraft/class_5421;)Z method_30180 isGuiOpen + p 1 category + m (Lnet/minecraft/class_5421;Ljava/util/function/UnaryOperator;)V method_64581 apply + p 2 modifier + p 1 type + m (Lnet/minecraft/class_5421;)Lnet/minecraft/class_5411$class_5412; method_64585 getOption + p 1 type + m (Lnet/minecraft/class_5411;)Lnet/minecraft/class_5411$class_5412; method_71333 method_71333 + p 0 options + m ()Lnet/minecraft/class_5411; method_30178 copy + m (Lnet/minecraft/class_5421;Z)V method_30188 setFilteringCraftable + p 1 category + p 2 filtering + m (ZLnet/minecraft/class_5411$class_5412;)Lnet/minecraft/class_5411$class_5412; method_64584 method_64584 + p 1 option + m (Lnet/minecraft/class_5411;)V method_30179 copyFrom + p 1 other + m (Lnet/minecraft/class_5411;)Lnet/minecraft/class_5411$class_5412; method_71338 method_71338 + p 0 options + m (Lnet/minecraft/class_5411;)Lnet/minecraft/class_5411$class_5412; method_71336 method_71336 + p 0 options + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71331 method_71331 + p 0 instance + m (Lnet/minecraft/class_5411$class_5412;Lnet/minecraft/class_5411$class_5412;Lnet/minecraft/class_5411$class_5412;Lnet/minecraft/class_5411$class_5412;)V + p 4 smoker + p 1 crafting + p 2 furnace + p 3 blastFurnace + m (Lnet/minecraft/class_5411;)Lnet/minecraft/class_5411$class_5412; method_71334 method_71334 + p 0 options + m (Lnet/minecraft/class_5411;)Lnet/minecraft/class_5411$class_5412; method_71332 method_71332 + p 0 options + m (ZLnet/minecraft/class_5411$class_5412;)Lnet/minecraft/class_5411$class_5412; method_64583 method_64583 + p 1 option + m (Lnet/minecraft/class_5411;)Lnet/minecraft/class_5411$class_5412; method_71339 method_71339 + p 0 options + m (Lnet/minecraft/class_5411;)Lnet/minecraft/class_5411$class_5412; method_71337 method_71337 + p 0 options + m (Lnet/minecraft/class_5411;)Lnet/minecraft/class_5411$class_5412; method_71335 method_71335 + p 0 options + m (Lnet/minecraft/class_5421;Z)V method_30181 setGuiOpen + p 2 open + p 1 category + m (Lnet/minecraft/class_5421;)Z method_30187 isFilteringCraftable + p 1 category +c net/minecraft/class_5411$class_5412 net/minecraft/recipe/book/RecipeBookOptions$CategoryOption + f Lcom/mojang/serialization/MapCodec; field_60342 FURNACE + f Lcom/mojang/serialization/MapCodec; field_60343 BLAST_FURNACE + f Lcom/mojang/serialization/MapCodec; field_60341 CRAFTING + f Lcom/mojang/serialization/MapCodec; field_60344 SMOKER + f Lnet/minecraft/class_9139; field_60345 PACKET_CODEC + f Lnet/minecraft/class_5411$class_5412; field_54549 DEFAULT + f Z comp_3248 filteringCraftable + f Z comp_3247 guiOpen + m (ZZ)V + p 1 guiOpen + p 2 filteringCraftable + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71341 method_71341 + p 2 instance + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Z comp_3248 filteringCraftable + m ()Z comp_3247 guiOpen + m (Z)Lnet/minecraft/class_5411$class_5412; method_64586 withGuiOpen + p 1 guiOpen + m (Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/serialization/MapCodec; method_71340 createCodec + p 1 filteringCraftableField + p 0 guiOpenField + m (Z)Lnet/minecraft/class_5411$class_5412; method_64587 withFilteringCraftable + p 1 filteringCraftable +c net/minecraft/class_5407 net/minecraft/client/resource/VideoWarningManager + f Lcom/google/common/collect/ImmutableMap; field_25690 warnings + f Z field_25718 warned + f Z field_25717 warningScheduled + f Lorg/slf4j/Logger; field_25716 LOGGER + f Lnet/minecraft/class_2960; field_25689 GPU_WARNLIST_ID + m ()Z method_30055 hasWarning + m ()Z method_30141 shouldWarn + m ()V method_30143 reset + m (Lnet/minecraft/class_5407$class_5408;Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)V method_30058 apply + m ()Z method_30137 canWarn + m (Ljava/util/List;Lcom/google/gson/JsonElement;)V method_30059 method_30059 + p 1 json + m ()Ljava/lang/String; method_30920 getWarningsAsString + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)Lnet/minecraft/class_5407$class_5408; method_30056 prepare + m (Lcom/google/gson/JsonArray;Ljava/util/List;)V method_30057 compilePatterns + p 0 array + p 1 patterns + m (Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V method_30919 method_30919 + p 2 value + p 1 key + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)Lcom/google/gson/JsonObject; method_30061 loadWarnlist + p 1 profiler + p 0 resourceManager + m ()Ljava/lang/String; method_30063 getVendorWarning + m ()Ljava/lang/String; method_30062 getVersionWarning + m ()Ljava/lang/String; method_30060 getRendererWarning + m ()V method_30138 scheduleWarning + m ()V method_30139 acceptAfterWarnings +c net/minecraft/class_5407$class_5408 net/minecraft/client/resource/VideoWarningManager$WarningPatternLoader + f Ljava/util/List; field_25691 rendererPatterns + f Ljava/util/List; field_25692 versionPatterns + f Ljava/util/List; field_25693 vendorPatterns + m (Ljava/util/List;Ljava/lang/String;)Ljava/lang/String; method_30066 buildWarning + p 0 warningPattern + p 1 info + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;)V + p 3 vendorPatterns + p 2 versionPatterns + p 1 rendererPatterns + m ()Lcom/google/common/collect/ImmutableMap; method_30064 buildWarnings +c net/minecraft/class_5409 net/minecraft/advancement/criterion/PlayerInteractedWithEntityCriterion + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_47;Lnet/minecraft/class_5409$class_5410;)Z method_30095 method_30095 + p 2 conditions + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;)V method_30097 trigger + p 1 player + p 3 entity + p 2 stack +c net/minecraft/class_5409$class_5410 net/minecraft/advancement/criterion/PlayerInteractedWithEntityCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47318 CODEC + f Ljava/util/Optional; comp_2080 entity + f Ljava/util/Optional; comp_2079 item + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_47;)Z method_30100 test + p 1 stack + p 2 entity + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 2 item + p 3 entity + m (Lnet/minecraft/class_2073$class_2074;Ljava/util/Optional;)Lnet/minecraft/class_175; method_72228 createPlayerShearedEquipment + p 1 entity + p 0 item + m (Ljava/util/Optional;Lnet/minecraft/class_2073$class_2074;Ljava/util/Optional;)Lnet/minecraft/class_175; method_72229 createPlayerShearedEquipment + p 2 entity + p 1 item + p 0 playerPredicate + m (Ljava/util/Optional;Lnet/minecraft/class_2073$class_2074;Ljava/util/Optional;)Lnet/minecraft/class_175; method_30099 create + p 2 entity + p 1 item + p 0 playerPredicate + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55070 method_55070 + p 0 instance + m (Lnet/minecraft/class_2073$class_2074;Ljava/util/Optional;)Lnet/minecraft/class_175; method_43278 create + p 1 entity + p 0 item + m ()Ljava/util/Optional; comp_2080 entity + m ()Ljava/util/Optional; comp_2079 item +c net/minecraft/class_125 net/minecraft/loot/function/EnchantedCountIncreaseLootFunction + f I field_31854 DEFAULT_LIMIT + f Lcom/mojang/serialization/MapCodec; field_45833 CODEC + f Lnet/minecraft/class_5658; field_1082 count + f I field_1083 limit + f Lnet/minecraft/class_6880; field_51798 enchantment + m (Lnet/minecraft/class_125;)Ljava/lang/Integer; method_53348 method_53348 + p 0 function + m (Lnet/minecraft/class_125;)Lnet/minecraft/class_5658; method_53350 method_53350 + p 0 function + m (Lnet/minecraft/class_125;)Lnet/minecraft/class_6880; method_60296 method_60296 + p 0 function + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_5658;)Lnet/minecraft/class_125$class_126; method_547 builder + p 1 count + p 0 registries + m ()Z method_549 hasLimit + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53349 method_53349 + p 0 instance + m (Ljava/util/List;Lnet/minecraft/class_6880;Lnet/minecraft/class_5658;I)V + p 1 conditions + p 2 enchantment + p 3 count + p 4 limit +c net/minecraft/class_125$class_126 net/minecraft/loot/function/EnchantedCountIncreaseLootFunction$Builder + f Lnet/minecraft/class_5658; field_1084 count + f I field_1085 limit + f Lnet/minecraft/class_6880; field_51799 enchantment + m (I)Lnet/minecraft/class_125$class_126; method_551 withLimit + p 1 limit + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_5658;)V + p 2 count + p 1 enchantment + m ()Lnet/minecraft/class_125$class_126; method_552 getThisBuilder +c net/minecraft/class_124 net/minecraft/util/Formatting + c An enum holding formattings.\n\n

There are two types of formattings, color and modifier. Color formattings\nare associated with a specific color, while modifier formattings modify the\nstyle, such as by bolding the text. {@link #RESET} is a special formatting\nand is not classified as either of these two. + f Z field_1081 modifier + f Lcom/mojang/serialization/Codec; field_56511 COLOR_CODEC + f I field_1071 colorIndex + f Ljava/util/regex/Pattern; field_1066 FORMATTING_CODE_PATTERN + f Ljava/util/Map; field_1052 BY_NAME + f Lcom/mojang/serialization/Codec; field_39218 CODEC + f Ljava/lang/Integer; field_1053 colorValue + f C field_1059 code + f Ljava/lang/String; field_1057 name + f Ljava/lang/String; field_1069 stringValue + f C field_33292 FORMATTING_CODE_PREFIX + f Lnet/minecraft/class_124; field_1080 GRAY + f Lnet/minecraft/class_124; field_1079 DARK_RED + f Lnet/minecraft/class_124; field_1078 BLUE + f Lnet/minecraft/class_124; field_1077 DARK_GREEN + f Lnet/minecraft/class_124; field_1076 LIGHT_PURPLE + f Lnet/minecraft/class_124; field_1075 AQUA + f Lnet/minecraft/class_124; field_1074 BLACK + f Lnet/minecraft/class_124; field_1073 UNDERLINE + f Lnet/minecraft/class_124; field_1070 RESET + f Lnet/minecraft/class_124; field_1067 BOLD + f Lnet/minecraft/class_124; field_1065 GOLD + f Lnet/minecraft/class_124; field_1064 DARK_PURPLE + f Lnet/minecraft/class_124; field_1063 DARK_GRAY + f Lnet/minecraft/class_124; field_1062 DARK_AQUA + f Lnet/minecraft/class_124; field_1061 RED + f Lnet/minecraft/class_124; field_1060 GREEN + f Lnet/minecraft/class_124; field_1068 WHITE + f Lnet/minecraft/class_124; field_1055 STRIKETHROUGH + f Lnet/minecraft/class_124; field_1054 YELLOW + f Lnet/minecraft/class_124; field_1051 OBFUSCATED + f Lnet/minecraft/class_124; field_1058 DARK_BLUE + f Lnet/minecraft/class_124; field_1056 ITALIC + m ()Ljava/lang/String; method_537 getName + c @return The name of this formatting in lowercase. + m (Ljava/lang/String;ILjava/lang/String;CZ)V + p 3 name + p 4 code + p 5 modifier + m ()C method_36145 getCode + c @return The code placed after the {@value FORMATTING_CODE_PREFIX} when this formatting is converted to a String. + m (Ljava/lang/String;ILjava/lang/String;CILjava/lang/Integer;)V + p 5 colorIndex + p 4 code + p 3 name + p 6 colorValue + m ()Ljava/lang/Integer; method_532 getColorValue + c @return This formatting's color value (hex code) or {@code null} if not present + m (Lnet/minecraft/class_124;)Lnet/minecraft/class_124; method_541 method_541 + p 0 f + m ()Z method_543 isColor + m (Ljava/lang/String;)Ljava/lang/String; method_539 strip + c @return {@code text} with all formatting codes removed.\n\n@see StringHelper#stripTextFormat + p 0 string + m ()I method_536 getColorIndex + c @return The color index of the formatting, or {@code -1} if none is present.\n\n@apiNote This is also used to calculate scoreboard team display slot IDs. + m (Lnet/minecraft/class_124;)Lcom/mojang/serialization/DataResult; method_67477 method_67477 + p 0 formatting + m (Ljava/lang/String;)Ljava/lang/String; method_535 sanitize + c @return The formatting's name in lowercase and with all non-letter characters removed. + p 0 name + m (Ljava/lang/String;ILjava/lang/String;CZILjava/lang/Integer;)V + p 4 code + p 5 modifier + p 3 name + p 6 colorIndex + p 7 colorValue + m (ZZ)Ljava/util/Collection; method_540 getNames + c @return The list of formattings matching the given conditions. + p 0 colors + c whether or not to include color formattings + p 1 modifiers + c whether or not to include modifier formattings + m (Lnet/minecraft/class_124;)Ljava/lang/String; method_531 method_531 + p 0 f + m (Ljava/lang/String;)Lnet/minecraft/class_124; method_533 byName + p 0 name + m (I)Lnet/minecraft/class_124; method_534 byColorIndex + c @return The formatting with the color index specified by {@code colorIndex},\notherwise {@link #RESET} if negative, or {@code null} if none exists with the given index. + p 0 colorIndex + m ()Z method_542 isModifier + m (C)Lnet/minecraft/class_124; method_544 byCode + p 0 code +c net/minecraft/class_129 net/minecraft/util/crash/CrashReportSection + f Ljava/util/List; field_1094 elements + f Ljava/lang/String; field_1096 title + f [Ljava/lang/StackTraceElement; field_1097 stackTrace + m (Lnet/minecraft/class_5539;DDD)Ljava/lang/String; method_583 createPositionString + p 0 world + p 3 y + p 1 x + p 5 z + m (I)I method_579 initStackTrace + p 1 ignoredCallCount + m (Ljava/lang/StackTraceElement;Ljava/lang/StackTraceElement;)Z method_584 shouldGenerateStackTrace + p 1 prev + p 2 next + m (Lnet/minecraft/class_129;Lnet/minecraft/class_5539;Lnet/minecraft/class_2338;)Lnet/minecraft/class_129; method_68844 addBlockLocation + p 2 pos + p 1 world + p 0 element + m (Lnet/minecraft/class_5539;III)Ljava/lang/String; method_581 createPositionString + p 3 z + p 2 y + p 1 x + p 0 world + m (Ljava/lang/StringBuilder;)V method_574 addStackTrace + p 1 crashReportBuilder + m (Ljava/lang/String;Lnet/minecraft/class_133;)Lnet/minecraft/class_129; method_577 add + p 1 name + p 2 callable + m (Ljava/lang/String;Ljava/lang/Throwable;)V method_585 add + p 2 throwable + p 1 name + m (Lnet/minecraft/class_129;Lnet/minecraft/class_5539;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_586 addBlockInfo + p 1 world + p 0 element + p 3 state + p 2 pos + m (I)V method_580 trimStackTraceEnd + p 1 callCount + m (DDD)Ljava/lang/String; method_73068 createPositionString + p 2 y + p 0 x + p 4 z + m (Ljava/lang/String;Ljava/lang/Object;)Lnet/minecraft/class_129; method_578 add + p 2 detail + p 1 name + m (Lnet/minecraft/class_5539;Lnet/minecraft/class_2338;)Ljava/lang/String; method_582 createPositionString + p 0 world + p 1 pos + m (Ljava/lang/String;)V + p 1 title + m ()[Ljava/lang/StackTraceElement; method_575 getStackTrace +c net/minecraft/class_129$class_130 net/minecraft/util/crash/CrashReportSection$Element + f Ljava/lang/String; field_1099 detail + f Ljava/lang/String; field_1098 name + m (Ljava/lang/String;Ljava/lang/Object;)V + p 1 name + p 2 detail + m ()Ljava/lang/String; method_588 getName + m ()Ljava/lang/String; method_587 getDetail +c net/minecraft/class_128 net/minecraft/util/crash/CrashReport + f Lorg/slf4j/Logger; field_1091 LOGGER + f Ljava/time/format/DateTimeFormatter; field_39880 DATE_TIME_FORMATTER + f Z field_1086 hasStackTrace + f Ljava/nio/file/Path; field_1090 file + f Ljava/lang/String; field_1087 message + f Ljava/util/List; field_1089 otherSections + f Lnet/minecraft/class_6396; field_1092 systemDetailsSection + f Ljava/lang/Throwable; field_1093 cause + f [Ljava/lang/StackTraceElement; field_1088 stackTrace + m (Ljava/nio/file/Path;Lnet/minecraft/class_9813;)Z method_60919 writeToFile + p 1 path + p 2 type + m ()Lnet/minecraft/class_6396; method_567 getSystemDetailsSection + m ()V method_24305 initCrashReport + m (Ljava/lang/StringBuilder;)V method_555 addDetails + p 1 crashReportBuilder + m ()Ljava/lang/String; method_36147 getStackTrace + m ()Ljava/lang/String; method_557 getCauseAsString + m (Ljava/lang/Throwable;Ljava/lang/String;)Lnet/minecraft/class_128; method_560 create + p 0 cause + p 1 title + m (Ljava/lang/String;I)Lnet/minecraft/class_129; method_556 addElement + p 2 ignoredStackTraceCallCount + p 1 name + m ()Ljava/lang/String; method_561 getMessage + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 2 cause + p 1 message + m (Lnet/minecraft/class_9813;Ljava/util/List;)Ljava/lang/String; method_60921 asString + p 1 type + p 2 extraInfo + m ()Ljava/nio/file/Path; method_572 getFile + m (Lnet/minecraft/class_9813;)Ljava/lang/String; method_60920 asString + p 1 type + m ()Ljava/lang/Throwable; method_564 getCause + m (Ljava/lang/String;)Lnet/minecraft/class_129; method_562 addElement + p 1 name + m (Ljava/nio/file/Path;Lnet/minecraft/class_9813;Ljava/util/List;)Z method_569 writeToFile + p 1 path + p 2 type + p 3 extraInfo +c net/minecraft/class_1940 net/minecraft/world/level/LevelInfo + f Lnet/minecraft/class_1928; field_24107 gameRules + f Z field_9262 hardcore + f Z field_9261 allowCommands + f Lnet/minecraft/class_1267; field_24106 difficulty + f Lorg/slf4j/Logger; field_64165 LOGGER + f Lnet/minecraft/class_1934; field_9257 gameMode + f Lnet/minecraft/class_7712; field_25403 dataConfiguration + f Ljava/lang/String; field_24105 name + m ()Lnet/minecraft/class_1940; method_28385 withCopiedGameRules + m ()Lnet/minecraft/class_1928; method_27341 getGameRules + m (Ljava/lang/String;Lnet/minecraft/class_1934;ZLnet/minecraft/class_1267;ZLnet/minecraft/class_1928;Lnet/minecraft/class_7712;)V + p 6 gameRules + p 5 allowCommands + p 7 dataConfiguration + p 2 gameMode + p 1 name + p 4 difficulty + p 3 hardcore + m (Ljava/lang/Number;)Lnet/minecraft/class_1267; method_28384 method_28384 + p 0 difficulty + m (Lnet/minecraft/class_1267;)Lnet/minecraft/class_1940; method_28381 withDifficulty + p 1 difficulty + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/class_7712;)Lnet/minecraft/class_1940; method_28383 fromDynamic + p 1 dataConfiguration + p 0 dynamic + m ()Lnet/minecraft/class_1267; method_27340 getDifficulty + m ()Ljava/lang/String; method_27339 getLevelName + m ()Lnet/minecraft/class_1934; method_8574 getGameMode + m ()Lnet/minecraft/class_7712; method_29558 getDataConfiguration + m (Lnet/minecraft/class_7712;)Lnet/minecraft/class_1940; method_29557 withDataConfiguration + p 1 dataConfiguration + m (Lnet/minecraft/class_1934;)Lnet/minecraft/class_1940; method_28382 withGameMode + p 1 mode + m ()Z method_8582 areCommandsAllowed + m ()Z method_8583 isHardcore +c net/minecraft/class_10070 net/minecraft/client/render/entity/state/StriderEntityRenderState + f Z field_53586 cold + f Lnet/minecraft/class_1799; field_56121 saddleStack + f Z field_53587 hasPassengers +c net/minecraft/class_120 net/minecraft/loot/function/ConditionalLootFunction + f Ljava/util/List; field_1047 conditions + f Ljava/util/function/Predicate; field_1048 predicate + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_47;)Lnet/minecraft/class_1799; method_521 apply + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P1; method_53344 addConditionsField + p 0 instance + m (Ljava/util/List;)V + p 1 conditions + m (Ljava/util/function/Function;)Lnet/minecraft/class_120$class_121; method_520 builder + p 0 joiner + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 itemStack + p 2 context + m (Lnet/minecraft/class_120;)Ljava/util/List; method_53345 method_53345 + p 0 function + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_47;)Lnet/minecraft/class_1799; method_522 process + p 1 stack + p 2 context +c net/minecraft/class_120$class_122 net/minecraft/loot/function/ConditionalLootFunction$Joiner + f Ljava/util/function/Function; field_1050 joiner + m (Ljava/util/function/Function;)V + p 1 joiner + m ()Lnet/minecraft/class_120$class_122; method_527 getThisBuilder +c net/minecraft/class_120$class_121 net/minecraft/loot/function/ConditionalLootFunction$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_1049 conditionList + m ()Lnet/minecraft/class_120$class_121; method_525 getThisConditionConsumingBuilder + m ()Lnet/minecraft/class_120$class_121; method_523 getThisBuilder + m ()Ljava/util/List; method_526 getConditions + m (Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_120$class_121; method_524 conditionally +c net/minecraft/class_1933 net/minecraft/world/biome/GrassColors + f [I field_9214 colorMap + m ()I method_49724 getDefaultColor + m ([I)V method_8376 setColorMap + p 0 map + m (DD)I method_8377 getColor + p 0 temperature + p 2 downfall +c net/minecraft/class_10073 net/minecraft/client/render/entity/state/TridentEntityRenderState + f F field_53593 yaw + f F field_53592 pitch + f Z field_53594 enchanted +c net/minecraft/class_10074 net/minecraft/client/render/entity/state/ArrowEntityRenderState + f Z field_53595 tipped +c net/minecraft/class_10071 net/minecraft/client/render/entity/state/TextDisplayEntityRenderState + f Lnet/minecraft/class_8113$class_8123$class_8230; field_53588 data + f Lnet/minecraft/class_8113$class_8123$class_8125; field_53589 textLines +c net/minecraft/class_10072 net/minecraft/client/render/entity/state/FlyingItemEntityRenderState + f Lnet/minecraft/class_10444; field_55320 itemRenderState +c net/minecraft/class_1937 net/minecraft/world/World + f Lnet/minecraft/class_6012; field_61989 EXPLOSION_BLOCK_PARTICLES + f Lnet/minecraft/class_8109; field_42476 damageSources + f Lnet/minecraft/class_5269; field_9232 properties + f Lnet/minecraft/class_5455; field_42475 registryManager + f I field_30970 MAX_Y + f Lnet/minecraft/class_5819; field_38861 threadSafeRandom + f I field_9238 lcgBlockSeedIncrement + f I field_9226 ambientDarkness + f I field_30966 MAX_UPDATE_DEPTH + f F field_9253 lastRainGradient + f Z field_9249 iteratingTickingBlockEntities + f I field_30971 MIN_Y + f I field_9256 lcgBlockSeed + f Ljava/lang/Thread; field_17086 thread + f I field_30965 HORIZONTAL_LIMIT + f Lnet/minecraft/class_5321; field_25181 END + f F field_9234 thunderGradient + f Lnet/minecraft/class_5321; field_25176 registryKey + f Lnet/minecraft/class_4543; field_20639 biomeAccess + f Lnet/minecraft/class_5321; field_25180 NETHER + f Ljava/util/List; field_27082 blockEntityTickers + f J field_35455 tickOrder + f Lnet/minecraft/class_5819; field_9229 random + f Ljava/util/List; field_27081 pendingBlockEntityTickers + f Lnet/minecraft/class_5321; field_25179 OVERWORLD + f Z field_9236 isClient + f Lnet/minecraft/class_11897; field_62535 palettesFactory + f Lnet/minecraft/class_6880; field_36402 dimensionEntry + f F field_9251 lastThunderGradient + f Lnet/minecraft/class_7159; field_38226 neighborUpdater + f Lcom/mojang/serialization/Codec; field_25178 CODEC + f F field_9235 rainGradient + f Z field_24496 debugWorld + m (Lnet/minecraft/class_2338;)Z method_8520 hasRain + c {@return whether it can rain at {@code pos}}\n\n@implNote This returns {@code true} if a rain is ongoing, the biome\nand the position allows it to rain, and there are no blocks above the position.\n\n@see #isRaining + p 1 pos + m (Lnet/minecraft/class_2338;)V method_8544 removeBlockEntity + p 1 pos + m ()Lnet/minecraft/class_8109; method_48963 getDamageSources + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_2350;Lnet/minecraft/class_9904;)V method_8508 updateNeighborsExcept + c Emits a neighbor update to neighboring blocks of {@code pos}, except\nfor the one in {@code direction} direction.\n\n@see #updateNeighborsAlways(BlockPos, Block, WireOrientation) + p 1 pos + p 3 direction + p 2 sourceBlock + p 4 orientation + m ()Z method_8530 isDay + m ()Lnet/minecraft/class_6880; method_40134 getDimensionEntry + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_1959$class_1963; method_70745 getPrecipitation + p 1 pos + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;)Z method_8505 canEntityModifyAt + c {@return whether {@code entity} can modify blocks at {@code pos}}\n\n@implNote For players, this checks the spawn protection and the world border.\nThis is always {@code true} on the client and for non-player entities.\n\n@see #isInBuildLimit\n@see #isValid + p 2 pos + p 1 entity + m (Lnet/minecraft/class_1297;)Z method_38989 shouldUpdatePostDeath + p 1 entity + m (F)V method_8496 setThunderGradient + p 1 thunderGradient + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_9904;Z)V method_41410 updateNeighbor + p 5 notify + p 3 sourceBlock + p 4 orientation + p 1 state + p 2 pos + m (Ljava/util/function/Predicate;Ljava/util/List;ILnet/minecraft/class_5575;Lnet/minecraft/class_1297;)Lnet/minecraft/class_7927$class_7928; method_47576 method_47576 + p 4 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Ljava/util/List; method_66349 getCrammedEntities + p 1 entity + p 2 box + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)V method_66016 onBlockStateChanged + p 1 pos + p 2 oldState + p 3 newState + m (Lnet/minecraft/class_2586;)V method_71970 loadBlockEntity + p 1 blockEntity + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;I)V method_8413 updateListeners + p 1 pos + p 3 newState + p 2 oldState + p 4 flags + m (Z)V method_8424 setMobSpawnOptions + c Sets whether monsters or animals can spawn. + p 1 spawnMonsters + m (Lnet/minecraft/class_1297;DDDLnet/minecraft/class_6880;Lnet/minecraft/class_3419;FFJ)V method_8465 playSound + c Plays a sound caused by a source. On the client, the sound will only play if the source is the same as the client's player.\nOn the server, sound packets will be sent to players around the source, excluding the source itself. + p 4 y + p 2 x + p 9 category + p 8 sound + p 6 z + p 12 seed + p 11 pitch + p 10 volume + p 1 source + c the player that caused this sound, or {@code null} + m (Lnet/minecraft/class_2596;)V method_8522 sendPacket + p 1 packet + m (Lnet/minecraft/class_1297;DDDLnet/minecraft/class_3414;Lnet/minecraft/class_3419;FF)V method_43128 playSound + c Plays a sound caused by a source. On the client, the sound will only play if the source is the same as the client's player.\nOn the server, sound packets will be sent to players around the source, excluding the source itself. + p 11 pitch + p 9 category + p 10 volume + p 8 sound + p 6 z + p 4 y + p 1 source + c the entity that caused this sound, or {@code null} + p 2 x + m (Lnet/minecraft/class_2338;)Z method_8477 isPosLoaded + p 1 pos + m (Lnet/minecraft/class_1297;DDDLnet/minecraft/class_3414;Lnet/minecraft/class_3419;)V method_54762 playSound + p 1 source + p 2 x + p 8 sound + p 9 category + p 4 y + p 6 z + m ()Lnet/minecraft/class_5577; method_31592 getEntityLookup + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3414;Lnet/minecraft/class_3419;FFZ)V method_45446 playSoundAtBlockCenterClient + p 1 pos + p 2 sound + p 3 category + p 4 volume + p 5 pitch + p 6 useDistance + m (Lnet/minecraft/class_2338;)Z method_8558 isValidHorizontally + p 0 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;Lnet/minecraft/class_2350;)Z method_24368 isDirectionSolid + p 3 direction + p 1 pos + p 2 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_3414;Lnet/minecraft/class_3419;FF)V method_55116 playSoundFromEntityClient + p 5 pitch + p 2 sound + p 1 entity + p 4 volume + p 3 category + m ()Lnet/minecraft/class_1845; method_59547 getBrewingRecipeRegistry + m (I)Lnet/minecraft/class_1297; method_8469 getEntityById + c {@return the entity using the entity ID, or {@code null} if none was found}\n\n

Entity ID is ephemeral and changes after server restart. Use the UUID\nfor persistent storage instead.\n\n@see net.minecraft.server.world.ServerWorld#getEntity + p 1 id + m ()Ljava/lang/String; method_31419 asString + m (Lnet/minecraft/class_1297;B)V method_8421 sendEntityStatus + c Sends the entity status to nearby players.\n\n@see net.minecraft.entity.EntityStatuses + p 1 entity + p 2 status + m (Lnet/minecraft/class_9209;)Lnet/minecraft/class_22; method_17891 getMapState + p 1 id + m (Ljava/util/UUID;)Lnet/minecraft/class_1657; method_73285 getPlayerAnyDimension + p 1 uuid + m (Lnet/minecraft/class_2338;)Z method_24794 isInBuildLimit + c {@return whether the position is inside the build limit}\n\n@implNote In addition to the height limit, the position's X and Z\ncoordinates must be greater than or equal to {@code -30_000_000}\nand less than {@code 30_000_000}.\n\n@apiNote This method should be used for block placement. If the\naction involves an entity interaction, additionally check for\n{@link #canEntityModifyAt} (which checks the spawn protection and world border).\n\n@see #isValid\n@see #canEntityModifyAt + p 1 pos + m ()Lnet/minecraft/class_9895; method_61269 getFuelRegistry + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lnet/minecraft/class_5362;DDDFZLnet/minecraft/class_1937$class_7867;Lnet/minecraft/class_2394;Lnet/minecraft/class_2394;Lnet/minecraft/class_6012;Lnet/minecraft/class_6880;)V method_8454 createExplosion + c Creates an explosion. + p 14 largeParticle + p 15 blockParticles + p 12 explosionSourceType + p 13 smallParticle + p 2 damageSource + c the custom damage source, or {@code null} to use the default\n({@link net.minecraft.entity.damage.DamageSources#explosion(Explosion)}) + p 3 behavior + c the explosion behavior, or {@code null} to use the default + p 16 soundEvent + p 1 entity + c the entity that exploded (like TNT) or {@code null} to indicate no entity exploded + p 6 y + p 4 x + p 10 power + p 11 createFire + c whether the explosion should create fire + p 8 z + m (DDDLnet/minecraft/class_3414;Lnet/minecraft/class_3419;FFZ)V method_8486 playSoundClient + p 8 category + p 9 volume + p 10 pitch + p 11 useDistance + p 5 z + p 7 sound + p 1 x + p 3 y + m (F)V method_8519 setRainGradient + p 1 rainGradient + m (Lnet/minecraft/class_5269;Lnet/minecraft/class_5321;Lnet/minecraft/class_5455;Lnet/minecraft/class_6880;ZZJI)V + p 6 debugWorld + p 7 seed + p 9 maxChainedNeighborUpdates + p 2 registryRef + p 3 registryManager + p 4 dimensionEntry + p 5 isClient + p 1 properties + m (F)F method_8430 getRainGradient + p 1 tickProgress + m (F)F method_8478 getThunderGradient + p 1 tickProgress + m ()V method_18471 tickBlockEntities + m ()Lnet/minecraft/class_269; method_8428 getScoreboard + m (IIII)Lnet/minecraft/class_2338; method_8536 getRandomPosInChunk + p 2 y + p 1 x + p 4 yMask + p 3 z + m (Lnet/minecraft/class_1297;Ljava/util/function/Predicate;Ljava/util/List;Lnet/minecraft/class_1297;)V method_31593 method_31593 + p 3 entity + m (Lnet/minecraft/class_5575;Lnet/minecraft/class_238;Ljava/util/function/Predicate;Ljava/util/List;)V method_47574 collectEntitiesByType + p 1 filter + p 2 box + p 3 predicate + p 4 result + m (Lnet/minecraft/class_1297;DDDFLnet/minecraft/class_1937$class_7867;)V method_8437 createExplosion + c Creates an explosion without creating fire.\n\n@see #createExplosion(Entity, DamageSource, ExplosionBehavior, double, double, double, float, boolean, World.ExplosionSourceType) + p 9 explosionSourceType + p 8 power + p 6 z + p 4 y + p 1 entity + p 2 x + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_31595 addBlockBreakParticles + p 1 pos + p 2 state + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;II)V method_8427 addSyncedBlockEvent + p 4 data + p 3 type + p 2 block + p 1 pos + m ()Lnet/minecraft/class_11897; method_74142 getPalettesFactory + m (Lnet/minecraft/class_2394;ZZDDDDDD)V method_8466 addParticleClient + c Adds a particle to the client's world renderer.\nDoes nothing on the server.\n\n@see net.minecraft.server.world.ServerWorld#spawnParticles + p 12 velocityY + p 14 velocityZ + p 2 force + p 1 parameters + p 4 x + p 3 canSpawnOnMinimal + p 6 y + p 8 z + p 10 velocityX + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_8501 setBlockState + p 1 pos + p 2 state + m (Lnet/minecraft/class_5575;Lnet/minecraft/class_238;Ljava/util/function/Predicate;)Z method_74143 hasEntities + c Checks if entities of the given type exist in {@code box}. This has the same\nperformance cost as {@link #collectEntitiesByType} with {@code limit} set to 1.\n\n@see #collectEntitiesByType + p 1 filter + p 3 predicate + p 2 box + m (ILnet/minecraft/class_2338;I)V method_8517 setBlockBreakingInfo + p 1 entityId + p 2 pos + p 3 progress + m (Lnet/minecraft/class_2338;)V method_8524 markDirty + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)V method_16109 scheduleBlockRerenderIfNeeded + p 2 old + p 3 updated + p 1 pos + m ()Z method_8546 isThundering + m ()Lnet/minecraft/class_12205; method_75728 getEnvironmentAttributes + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lnet/minecraft/class_5362;DDDFZLnet/minecraft/class_1937$class_7867;)V method_55117 createExplosion + p 8 z + p 6 y + p 11 createFire + p 12 explosionSourceType + p 10 power + p 3 behavior + p 4 x + p 1 entity + p 2 damageSource + m (DDDDDDLjava/util/List;)V method_8547 addFireworkParticle + p 11 velocityZ + p 13 explosions + p 7 velocityX + p 9 velocityY + p 3 y + p 5 z + p 1 x + m (Lnet/minecraft/class_1297;DDDLnet/minecraft/class_3414;Lnet/minecraft/class_3419;FFJ)V method_47967 playSound + c Plays a sound caused by a source. On the client, the sound will only play if the source is the same as the client's player.\nOn the server, sound packets will be sent to players around the source, excluding the source itself. + p 9 category + p 8 sound + p 11 pitch + p 10 volume + p 4 y + p 6 z + p 1 source + c the entity that caused this sound, or {@code null} + p 2 x + p 12 seed + m (Lnet/minecraft/class_2338;)Z method_25953 isValid + c {@return whether the position is valid}\n\n@implNote The position is considered valid if the X and Z\ncoordinates are greater than or equal to {@code -30_000_000} and less than\n{@code 30_000_000}, and the Y coordinate is greater or equal to\n{@code -20_000_000} and less than {@code 20_000_000}.\n\n@apiNote This method should be used for teleportation. To test for\nblock positions, use {@link #isInBuildLimit} (which checks the height\nlimit), and if the action involves an entity interaction, additionally\ncheck for {@link #canEntityModifyAt} (which checks the spawn protection and world border).\n\n@see #isInBuildLimit\n@see #canEntityModifyAt + p 0 pos + m ()Ljava/util/Collection; method_65097 getEnderDragonParts + m (ILnet/minecraft/class_2338;I)V method_8474 syncGlobalEvent + p 1 eventId + p 2 pos + p 3 data + m (Lnet/minecraft/class_5562;)V method_31594 addBlockEntityTicker + p 1 ticker + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;Lnet/minecraft/class_3414;Lnet/minecraft/class_3419;FF)V method_43129 playSoundFromEntity + c Plays a sound caused by a source at the provided entity's position. On the client, the sound will only play if the source is the same as the client's player.\nOn the server, sound packets will be sent to players around the source, excluding the source itself. + p 6 pitch + p 5 volume + p 2 entity + p 1 source + c the entity that caused this sound, or {@code null} + p 4 category + p 3 sound + m ()V method_8533 calculateAmbientDarkness + m ()Lnet/minecraft/class_10286; method_8433 getRecipeManager + m (II)Lnet/minecraft/class_2818; method_8497 getChunk + m (Lnet/minecraft/class_1297;DDDLnet/minecraft/class_6880;Lnet/minecraft/class_3419;FF)V method_60511 playSound + p 6 z + p 9 category + p 8 sound + p 11 pitch + p 10 volume + p 1 source + p 2 x + p 4 y + m ()Lnet/minecraft/class_5217$class_12064; method_74854 getSpawnPoint + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_9904;)V method_8492 updateNeighbor + c Triggers a neighbor update originating from {@code sourcePos} at\n{@code pos}.\n\n@see #updateNeighborsAlways(BlockPos, Block, WireOrientation) + p 2 sourceBlock + p 3 orientation + p 1 pos + m (Ljava/util/function/Predicate;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/class_5575;Lnet/minecraft/class_1297;)Lnet/minecraft/class_7927$class_7928; method_74141 method_74141 + p 3 entity + m (Lnet/minecraft/class_2394;ZDDDDDD)V method_17452 addImportantParticleClient + c Adds an important particle to the client's world renderer. Important particles get added even if the Particles graphics option is set to Minimal\nDoes nothing on the server.\n\n@see net.minecraft.server.world.ServerWorld#spawnParticles + p 9 velocityX + p 11 velocityY + p 5 y + p 7 z + p 1 parameters + p 2 force + p 3 x + p 13 velocityZ + m (Lnet/minecraft/class_5575;Lnet/minecraft/class_238;Ljava/util/function/Predicate;Ljava/util/List;I)V method_47575 collectEntitiesByType + c Collects entities of the given type in {@code box}, up to {@code limit}. Using this can\nimprove performance, especially if {@code limit} is small.\n\n@see #getEntitiesByType + p 5 limit + p 4 result + p 3 predicate + p 2 box + p 1 filter + m (Ljava/util/function/Consumer;Lnet/minecraft/class_1297;)V method_18472 tickEntity + p 2 entity + p 1 tickConsumer + m (I)Z method_25952 isInvalidVertically + p 0 y + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_9904;)V method_8452 updateNeighborsAlways + c Emits a neighbor update to all 6 neighboring blocks of {@code pos}.\n\n@see #updateNeighborsExcept(BlockPos, Block, Direction, WireOrientation) + p 1 pos + p 2 sourceBlock + p 3 orientation + m (I)V method_8509 setLightningTicksLeft + p 1 lightningTicksLeft + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;)V method_48760 sendEntityDamage + p 2 damageSource + p 1 entity + m (Lnet/minecraft/class_2338;)Z method_76805 isInLoadLimit + p 1 pos + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2818; method_8500 getWorldChunk + c {@return the chunk that contains {@code pos}} + p 1 pos + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1282;Lnet/minecraft/class_5362;Lnet/minecraft/class_243;FZLnet/minecraft/class_1937$class_7867;)V method_46407 createExplosion + c Creates an explosion.\n\n@see #createExplosion(Entity, DamageSource, ExplosionBehavior, double, double, double, float, boolean, World.ExplosionSourceType) + p 1 entity + p 2 damageSource + p 3 behavior + p 4 pos + p 5 power + p 6 createFire + p 7 explosionSourceType + m (Lnet/minecraft/class_3414;Lnet/minecraft/class_3419;FF)V method_67392 playSoundClient + p 1 sound + p 2 category + p 3 volume + p 4 pitch + m ()Lnet/minecraft/class_8921; method_54719 getTickManager + m (Lnet/minecraft/class_5217$class_12064;)V method_27873 setSpawnPoint + p 1 spawnPoint + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;)V method_8455 updateComparators + p 1 pos + p 2 block + m (Ljava/util/UUID;)Lnet/minecraft/class_1297; method_66347 getEntity + p 1 uuid + m ()Z method_23886 isNight + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;Lnet/minecraft/class_3419;FFJ)V method_8449 playSoundFromEntity + c Plays a sound caused by a source at the provided entity's position. On the client, the sound will only play if the source is the same as the client's player.\nOn the server, sound packets will be sent to players around the source, excluding the source itself. + p 7 seed + p 5 volume + p 6 pitch + p 3 sound + p 4 category + p 1 source + c the player that caused this sound, or {@code null} + p 2 entity + m ()Lnet/minecraft/class_5321; method_27983 getRegistryKey + m ()Z method_8419 isRaining + c {@return whether it is raining}\n\n@see #hasRain + m (Lnet/minecraft/class_2338;)Z method_41411 shouldTickBlockPos + p 1 pos + m (Ljava/util/UUID;)Lnet/minecraft/class_1297; method_73284 getEntityAnyDimension + p 1 uuid + m (Lnet/minecraft/class_128;)Lnet/minecraft/class_129; method_8538 addDetailsToCrashReport + p 1 report + m ()J method_8532 getTimeOfDay + c {@return the time of day}\n\n

Time of day is different to "time", which is incremented on every tick and\ncannot be modified; Time of day affects the day-night cycle, can be changed using\n{@link net.minecraft.server.command.TimeCommand /time command}, and can be frozen\nif {@link GameRules#DO_DAYLIGHT_CYCLE doDaylightCycle} gamerule is turned off.\nTime is used to track scheduled ticks and cannot be modified or frozen.\n\n@see WorldProperties#getTimeOfDay\n@see net.minecraft.server.world.ServerWorld#setTimeOfDay + m (Lnet/minecraft/class_2338;)I method_67233 getBlockColor + p 1 pos + m (Lnet/minecraft/class_5217$class_12064;)Lnet/minecraft/class_5217$class_12064; method_74891 ensureWithinBorder + p 1 spawnPoint + m ()Z method_63020 canHaveWeather + m (Lnet/minecraft/class_2338;)Z method_76804 isChunkLoadable + p 0 pos + m (Lnet/minecraft/class_2394;DDDDDD)V method_8494 addImportantParticleClient + c Adds an important particle to the client's world renderer. Important particles get added even if the Particles graphics option is set to Minimal\nDoes nothing on the server.\n\n@see net.minecraft.server.world.ServerWorld#spawnParticles + p 4 y + p 6 z + p 1 parameters + p 2 x + p 12 velocityZ + p 8 velocityX + p 10 velocityY + m (Lnet/minecraft/class_1297;DDDFZLnet/minecraft/class_1937$class_7867;)V method_8537 createExplosion + c Creates an explosion.\n\n@see #createExplosion(Entity, DamageSource, ExplosionBehavior, double, double, double, float, boolean, World.ExplosionSourceType) + p 6 z + p 4 y + p 2 x + p 1 entity + p 10 explosionSourceType + p 9 createFire + p 8 power + m (Lnet/minecraft/class_2586;)V method_8438 addBlockEntity + p 1 blockEntity + m ()Z method_27982 isDebugWorld + c Checks if this world is a debug world.\n\n

Debug worlds are not modifiable. They have a barrier layer at y=60,\nand lists all possible block states in game at y=70, helpful for finding\nblock rendering and model errors.\n\n@see net.minecraft.world.gen.chunk.DebugChunkGenerator + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;)Z method_8515 isTopSolid + p 1 pos + p 2 entity + m (J)Z method_39425 shouldTickBlocksInChunk + c {@return whether the blocks in the specified chunk should get ticked} + p 1 chunkPos + m ()V method_8543 initWeatherGradients + m ()Z method_8458 isSavingDisabled +c net/minecraft/class_1937$class_7867 net/minecraft/world/World$ExplosionSourceType + f Lcom/mojang/serialization/Codec; field_51780 CODEC + f Ljava/lang/String; field_51781 id + f Lnet/minecraft/class_1937$class_7867; field_40889 BLOCK + f Lnet/minecraft/class_1937$class_7867; field_40888 NONE + f Lnet/minecraft/class_1937$class_7867; field_51779 TRIGGER + f Lnet/minecraft/class_1937$class_7867; field_40891 TNT + f Lnet/minecraft/class_1937$class_7867; field_40890 MOB + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_10077 net/minecraft/client/render/entity/state/TurtleEntityRenderState + f Z field_53603 hasEgg + f Z field_53601 onLand + f Z field_53602 diggingSand +c net/minecraft/class_1936 net/minecraft/world/WorldAccess + m (Lnet/minecraft/class_2394;DDDDDD)V method_8406 addParticleClient + c Adds a particle to the client's world renderer.\nDoes nothing on the server.\n\n@see net.minecraft.server.world.ServerWorld#spawnParticles + p 4 y + p 6 z + p 8 velocityX + p 10 velocityY + p 12 velocityZ + p 1 parameters + p 2 x + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2338;Lnet/minecraft/class_5712$class_7397;)V method_55764 emitGameEvent + p 2 pos + p 3 emitter + p 1 event + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;II)V method_42308 replaceWithStateForNeighborUpdate + p 5 flags + p 6 maxUpdateDepth + p 3 neighborPos + p 4 neighborState + p 1 direction + p 2 pos + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2338;Lnet/minecraft/class_5712$class_7397;)V method_43276 emitGameEvent + p 3 emitter + p 2 pos + p 1 event + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_243;Lnet/minecraft/class_5712$class_7397;)V method_32888 emitGameEvent + c Emits a game event. + p 2 emitterPos + p 3 emitter + p 1 event + m ()Lnet/minecraft/class_5217; method_8401 getLevelProperties + m ()J method_39224 getTickOrder + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;Lnet/minecraft/class_243;)V method_43275 emitGameEvent + p 2 event + p 1 entity + p 3 pos + m ()J method_75260 getTime + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;Lnet/minecraft/class_2338;)V method_33596 emitGameEvent + p 3 pos + p 2 event + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;Lnet/minecraft/class_3414;Lnet/minecraft/class_3419;)V method_45447 playSound + p 1 source + p 3 sound + p 2 pos + p 4 category + m ()Lnet/minecraft/class_2802; method_8398 getChunkManager + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;)V method_8408 updateNeighbors + p 1 pos + p 2 block + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;Lnet/minecraft/class_3414;Lnet/minecraft/class_3419;FF)V method_8396 playSound + p 6 pitch + p 4 category + p 5 volume + p 2 pos + p 3 sound + p 1 source + m ()Lnet/minecraft/class_1267; method_8407 getDifficulty + m (ILnet/minecraft/class_2338;I)V method_20290 syncWorldEvent + p 1 eventId + p 2 pos + p 3 data + m ()Lnet/minecraft/class_5819; method_8409 getRandom + m (Lnet/minecraft/class_1297;ILnet/minecraft/class_2338;I)V method_8444 syncWorldEvent + p 4 data + p 3 pos + p 2 eventId + p 1 source + m ()Lnet/minecraft/server/MinecraftServer; method_8503 getServer +c net/minecraft/class_10078 net/minecraft/client/render/entity/state/VexEntityRenderState + f Z field_53604 charging +c net/minecraft/class_10075 net/minecraft/client/render/entity/state/TntEntityRenderState + f F field_53596 fuse + f Lnet/minecraft/class_2680; field_53597 blockState +c net/minecraft/class_1935 net/minecraft/item/ItemConvertible + c Represents an object that has an item form. + m ()Lnet/minecraft/class_1792; method_8389 asItem + c Gets this object in its item form. +c net/minecraft/class_1934 net/minecraft/world/GameMode + f Lnet/minecraft/class_1934; field_28045 DEFAULT + f Lnet/minecraft/class_2561; field_28046 simpleTranslatableName + f Ljava/util/function/IntFunction; field_41677 INDEX_MAPPER + f I field_30964 UNKNOWN + f Lnet/minecraft/class_3542$class_7292; field_41676 CODEC + f Lcom/mojang/serialization/Codec; field_56668 INDEX_CODEC + f Lnet/minecraft/class_2561; field_28047 translatableName + f Lnet/minecraft/class_9139; field_60671 PACKET_CODEC + f I field_9217 index + f Ljava/lang/String; field_9221 id + f Lnet/minecraft/class_1934; field_9220 CREATIVE + f Lnet/minecraft/class_1934; field_9219 SPECTATOR + f Lnet/minecraft/class_1934; field_9215 SURVIVAL + f Lnet/minecraft/class_1934; field_9216 ADVENTURE + m (Ljava/lang/String;IILjava/lang/String;)V + p 4 id + p 3 index + m ()I method_8379 getIndex + m ()Ljava/lang/String; method_8381 getId + m (ILnet/minecraft/class_1934;)Z method_64759 method_64759 + p 1 gameMode + m ()Lnet/minecraft/class_2561; method_32763 getSimpleTranslatableName + m (I)Z method_64760 isValid + p 0 index + m (I)Lnet/minecraft/class_1934; method_8384 byIndex + p 0 index + m (Ljava/lang/String;)Lnet/minecraft/class_1934; method_8385 byId + p 0 id + m (Lnet/minecraft/class_1934;)I method_32761 getId + p 0 gameMode + m ()Z method_8386 isCreative + m ()Z method_8388 isSurvivalLike + m (Ljava/lang/String;Lnet/minecraft/class_1934;)Lnet/minecraft/class_1934; method_8378 byId + p 0 id + p 1 fallback + m (Lnet/minecraft/class_1656;)V method_8382 setAbilities + p 1 abilities + m (I)Lnet/minecraft/class_1934; method_32762 getOrNull + p 0 index + m ()Lnet/minecraft/class_2561; method_8383 getTranslatableName + m ()Z method_8387 isBlockBreakingRestricted +c net/minecraft/class_10076 net/minecraft/client/render/entity/state/TropicalFishEntityRenderState + f Lnet/minecraft/class_1474$class_1475; field_53598 variety + f I field_53599 baseColor + f I field_53600 patternColor +c net/minecraft/class_10079 net/minecraft/client/render/entity/state/VillagerDataRenderState + m ()Lnet/minecraft/class_3850; method_62617 getVillagerData +c net/minecraft/class_137 net/minecraft/loot/function/SetAttributesLootFunction + f Lcom/mojang/serialization/MapCodec; field_45836 CODEC + f Z field_51360 replace + f Ljava/util/List; field_1105 attributes + m (Lnet/minecraft/class_137;)Ljava/lang/Boolean; method_59545 method_59545 + p 0 lootFunction + m (Lnet/minecraft/class_137$class_138;)Ljava/util/stream/Stream; method_32406 method_32406 + p 0 attribute + m ()Lnet/minecraft/class_137$class_6155; method_35525 builder + m (Ljava/util/List;Ljava/util/List;Z)V + p 3 replace + p 2 attributes + p 1 conditions + m (Lnet/minecraft/class_47;Lnet/minecraft/class_9285;)Lnet/minecraft/class_9285; method_59544 applyTo + p 1 context + p 2 attributeModifiersComponent + m (Lnet/minecraft/class_137;)Ljava/util/List; method_53355 method_53355 + p 0 function + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_6880;Lnet/minecraft/class_1322$class_1323;Lnet/minecraft/class_5658;)Lnet/minecraft/class_137$class_6156; method_35524 attributeBuilder + p 1 attribute + p 0 id + p 3 amountRange + p 2 operation + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53356 method_53356 + p 0 instance +c net/minecraft/class_137$class_138 net/minecraft/loot/function/SetAttributesLootFunction$Attribute + f Lnet/minecraft/class_2960; comp_1864 id + f Lnet/minecraft/class_1322$class_1323; comp_1861 operation + f Lnet/minecraft/class_5658; comp_1862 amount + f Lcom/mojang/serialization/Codec; field_45838 EQUIPMENT_SLOT_LIST_CODEC + f Ljava/util/List; comp_1863 slots + f Lcom/mojang/serialization/Codec; field_45837 CODEC + f Lnet/minecraft/class_6880; comp_1860 attribute + m ()Lnet/minecraft/class_2960; comp_1864 id + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53358 method_53358 + p 0 instance + m ()Lnet/minecraft/class_1322$class_1323; comp_1861 operation + m ()Lnet/minecraft/class_5658; comp_1862 amount + m ()Ljava/util/List; comp_1863 slots + m ()Lnet/minecraft/class_6880; comp_1860 attribute + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_6880;Lnet/minecraft/class_1322$class_1323;Lnet/minecraft/class_5658;Ljava/util/List;)V + p 4 amount + p 3 operation + p 1 id + p 2 attribute + p 5 slots +c net/minecraft/class_137$class_6156 net/minecraft/loot/function/SetAttributesLootFunction$AttributeBuilder + f Lnet/minecraft/class_1322$class_1323; field_31858 operation + f Lnet/minecraft/class_5658; field_31859 amount + f Lnet/minecraft/class_2960; field_31860 id + f Lnet/minecraft/class_6880; field_31857 attribute + f Ljava/util/Set; field_31861 slots + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_6880;Lnet/minecraft/class_1322$class_1323;Lnet/minecraft/class_5658;)V + p 4 amount + p 3 operation + p 2 attribute + p 1 id + m ()Lnet/minecraft/class_137$class_138; method_35528 build + m (Lnet/minecraft/class_9274;)Lnet/minecraft/class_137$class_6156; method_35529 slot + p 1 slot +c net/minecraft/class_137$class_6155 net/minecraft/loot/function/SetAttributesLootFunction$Builder + f Z field_51361 replace + f Ljava/util/List; field_31855 attributes + m (Z)V + p 1 replace + m (Lnet/minecraft/class_137$class_6156;)Lnet/minecraft/class_137$class_6155; method_35527 attribute + p 1 attribute + m ()Lnet/minecraft/class_137$class_6155; method_35526 getThisBuilder +c net/minecraft/class_134 net/minecraft/loot/function/SetContentsLootFunction + f Ljava/util/List; field_1103 entries + f Lnet/minecraft/class_9666; field_51432 component + f Lcom/mojang/serialization/MapCodec; field_45841 CODEC + m (Ljava/util/List;Lnet/minecraft/class_9666;Ljava/util/List;)V + p 3 entries + p 2 component + p 1 conditions + m (Lnet/minecraft/class_47;Ljava/util/stream/Stream$Builder;Lnet/minecraft/class_82;)V method_600 method_600 + p 2 choice + m (Lnet/minecraft/class_9666;)Lnet/minecraft/class_134$class_135; method_601 builder + p 0 componentModifier + m (Lnet/minecraft/class_134;)Ljava/util/List; method_53363 method_53363 + p 0 function + m (Lnet/minecraft/class_47;Ljava/util/stream/Stream$Builder;Lnet/minecraft/class_79;)V method_599 method_599 + p 2 entry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53364 method_53364 + p 0 instance + m (Lnet/minecraft/class_134;)Lnet/minecraft/class_9666; method_53365 method_53365 + p 0 function +c net/minecraft/class_134$class_135 net/minecraft/loot/function/SetContentsLootFunction$Builder + f Lnet/minecraft/class_9666; field_51433 componentModifier + f Lcom/google/common/collect/ImmutableList$Builder; field_1104 entries + m (Lnet/minecraft/class_9666;)V + p 1 componentModifier + m ()Lnet/minecraft/class_134$class_135; method_603 getThisBuilder + m (Lnet/minecraft/class_79$class_80;)Lnet/minecraft/class_134$class_135; method_602 withEntry + p 1 entryBuilder +c net/minecraft/class_1950 net/minecraft/world/chunk/ChunkCache + f I field_9304 minX + f Z field_9302 empty + f I field_9303 minZ + f [[Lnet/minecraft/class_2791; field_9305 chunks + f Lnet/minecraft/class_1937; field_9306 world + f Ljava/util/function/Supplier; field_36403 plainsEntryGetter + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)V + p 1 world + p 3 maxPos + p 2 minPos + m (II)Lnet/minecraft/class_2791; method_22353 getChunk + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2791; method_22354 getChunk + p 1 pos +c net/minecraft/class_133 net/minecraft/util/crash/CrashCallable +c net/minecraft/class_131 net/minecraft/loot/function/LootFunctionTypes + f Ljava/util/function/BiFunction; field_1102 NOOP + f Lcom/mojang/serialization/Codec; field_45832 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_45831 BASE_CODEC + f Lcom/mojang/serialization/Codec; field_50023 CODEC + f Lnet/minecraft/class_5339; field_27342 SET_BANNER_PATTERN + f Lnet/minecraft/class_5339; field_50022 TOGGLE_TOOLTIPS + f Lnet/minecraft/class_5339; field_51425 SET_CUSTOM_MODEL_DATA + f Lnet/minecraft/class_5339; field_51426 SET_ITEM + f Lnet/minecraft/class_5339; field_51427 MODIFY_CONTENTS + f Lnet/minecraft/class_5339; field_51428 FILTERED + f Lnet/minecraft/class_5339; field_50207 SET_OMINOUS_BOTTLE_AMPLIFIER + f Lnet/minecraft/class_5339; field_25214 SET_COUNT + f Lnet/minecraft/class_5339; field_25216 ENCHANT_RANDOMLY + f Lnet/minecraft/class_5339; field_25215 ENCHANT_WITH_LEVELS + f Lnet/minecraft/class_5339; field_49443 COPY_CUSTOM_DATA + f Lnet/minecraft/class_5339; field_49441 SET_CUSTOM_DATA + f Lnet/minecraft/class_5339; field_49442 SET_COMPONENTS + f Lnet/minecraft/class_5339; field_49440 COPY_COMPONENTS + f Lnet/minecraft/class_5339; field_25230 EXPLOSION_DECAY + f Lnet/minecraft/class_5339; field_25232 FILL_PLAYER_HEAD + f Lnet/minecraft/class_5339; field_25231 SET_LORE + f Lnet/minecraft/class_5339; field_25234 COPY_STATE + f Lnet/minecraft/class_5339; field_35079 SET_POTION + f Lnet/minecraft/class_5339; field_25229 SET_LOOT_TABLE + f Lnet/minecraft/class_5339; field_25220 SET_DAMAGE + f Lnet/minecraft/class_5339; field_25222 SET_NAME + f Lnet/minecraft/class_5339; field_25221 SET_ATTRIBUTES + f Lnet/minecraft/class_5339; field_25224 SET_STEW_EFFECT + f Lnet/minecraft/class_5339; field_25223 EXPLORATION_MAP + f Lnet/minecraft/class_5339; field_25226 SET_CONTENTS + f Lnet/minecraft/class_5339; field_25225 COPY_NAME + f Lnet/minecraft/class_5339; field_25228 APPLY_BONUS + f Lnet/minecraft/class_5339; field_25227 LIMIT_COUNT + f Lnet/minecraft/class_5339; field_25218 FURNACE_SMELT + f Lnet/minecraft/class_5339; field_44508 REFERENCE + f Lnet/minecraft/class_5339; field_63971 DISCARD + f Lnet/minecraft/class_5339; field_45830 SEQUENCE + f Lnet/minecraft/class_5339; field_51800 ENCHANTED_COUNT_INCREASE + f Lnet/minecraft/class_5339; field_27906 SET_ENCHANTMENTS + f Lnet/minecraft/class_5339; field_49869 SET_WRITABLE_BOOK_PAGES + f Lnet/minecraft/class_5339; field_49867 SET_BOOK_COVER + f Lnet/minecraft/class_5339; field_49868 SET_WRITTEN_BOOK_PAGES + f Lnet/minecraft/class_5339; field_49865 SET_FIREWORKS + f Lnet/minecraft/class_5339; field_49866 SET_FIREWORK_EXPLOSION + f Lnet/minecraft/class_5339; field_39060 SET_INSTRUMENT + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_5339; method_29323 register + p 0 id + p 1 codec + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_47;)Lnet/minecraft/class_1799; method_592 method_592 + p 0 stack + p 1 context + m (Ljava/util/List;Lnet/minecraft/class_1799;Lnet/minecraft/class_47;)Lnet/minecraft/class_1799; method_53347 method_53347 + p 2 context + p 1 stack + m (Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Lnet/minecraft/class_1799;Lnet/minecraft/class_47;)Lnet/minecraft/class_1799; method_591 method_591 + p 2 stack + p 3 context + m (Ljava/util/List;)Ljava/util/function/BiFunction; method_594 join + p 0 terms +c net/minecraft/class_1944 net/minecraft/world/LightType + f Lnet/minecraft/class_1944; field_9284 SKY + f Lnet/minecraft/class_1944; field_9282 BLOCK +c net/minecraft/class_10062 net/minecraft/client/render/entity/state/SalmonEntityRenderState + f Lnet/minecraft/class_1462$class_9869; field_53558 variant +c net/minecraft/class_10063 net/minecraft/client/render/entity/state/SheepEntityRenderState + f Lnet/minecraft/class_1767; field_53562 color + f F field_53560 headAngle + f Z field_53561 sheared + f F field_53559 neckAngle + f Z field_63075 rainbow + m ()I method_68166 getRgbColor +c net/minecraft/class_10060 net/minecraft/client/render/entity/state/RavagerEntityRenderState + f F field_53557 roarTick + f F field_53556 attackTick + f F field_53555 stunTick +c net/minecraft/class_1941 net/minecraft/world/CollisionView + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Ljava/lang/Iterable; method_20812 getBlockCollisions + p 2 box + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Z method_39454 canCollide + p 1 entity + p 2 box + m (Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_265;)Lnet/minecraft/class_265; method_51716 method_51716 + p 0 pos + p 1 voxelShape + m (Lnet/minecraft/class_265;)Ljava/util/stream/Stream; method_39452 method_39452 + p 0 collision + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Lnet/minecraft/class_265; method_39455 getWorldBorderCollisions + p 1 entity + p 2 box + m (Lnet/minecraft/class_3726;Lnet/minecraft/class_238;)Ljava/lang/Iterable; method_71396 getBlockOrFluidCollisions + p 1 shapeContext + p 2 box + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_3726;)Z method_8628 canPlace + p 1 state + p 2 pos + p 3 context + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Z method_76792 doesNotCollideWithEntities + p 2 box + p 1 entity + m (Lnet/minecraft/class_238;)Z method_18026 isSpaceEmpty + p 1 box + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;Z)Z method_61716 isSpaceEmpty + p 3 checkFluid + p 1 entity + p 2 box + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_265;)Z method_8611 doesNotIntersectEntities + c {@return {@code true} if {@code shape} does not intersect\nwith non-spectator entities except {@code except}}\n\n@implNote This always returns {@code true} if {@code shape} is {@linkplain VoxelShape#isEmpty empty}. + p 2 shape + p 1 except + m (Lnet/minecraft/class_3959;)Lnet/minecraft/class_3965; method_61717 getCollisionsIncludingWorldBorder + p 1 context + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Z method_52569 isBlockSpaceEmpty + p 2 box + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;Z)Z method_76791 isBlockSpaceEmpty + p 1 entity + p 2 box + p 3 blockOrFluid + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Z method_8587 isSpaceEmpty + p 2 box + p 1 entity + m (II)Lnet/minecraft/class_1922; method_22338 getChunkAsView + p 2 chunkZ + p 1 chunkX + m ()Lnet/minecraft/class_2784; method_8621 getWorldBorder + m (Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_265;)Lnet/minecraft/class_265; method_71398 method_71398 + p 0 pos + p 1 shape + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Ljava/util/List; method_20743 getEntityCollisions + p 2 box + p 1 entity + m (Lnet/minecraft/class_1297;)Z method_17892 isSpaceEmpty + p 1 entity + m (Lnet/minecraft/class_265;)Z method_39453 method_39453 + p 1 collision + m (Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_265;)Lnet/minecraft/class_2338; method_51715 method_51715 + p 1 voxelShape + p 0 pos + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Z method_76793 doesNotCollideWithWorldBorder + p 2 box + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_265;Lnet/minecraft/class_243;DDD)Ljava/util/Optional; method_33594 findClosestCollision + p 8 z + p 4 x + p 6 y + p 1 entity + p 3 target + p 2 shape + m (Lnet/minecraft/class_1297;)Z method_8606 doesNotIntersectEntities + p 1 entity + m (DDDLnet/minecraft/class_238;)Lnet/minecraft/class_238; method_39451 method_39451 + p 6 box + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;Lnet/minecraft/class_243;)Ljava/lang/Iterable; method_71395 getCollisions + p 3 pos + p 2 box + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Ljava/lang/Iterable; method_61719 getBlockOrFluidCollisions + p 1 entity + p 2 box + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Ljava/lang/Iterable; method_8600 getCollisions + p 2 box + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Ljava/util/Optional; method_51718 findSupportingBlockPos + p 1 entity + p 2 box +c net/minecraft/class_11391 net/minecraft/client/texture/GlTextureView + f Z field_60566 closed + f I field_64520 depthGlId + f I field_64518 UNINITIALIZED + f I field_64519 framebufferId + f Lit/unimi/dsi/fastutil/ints/Int2IntMap; field_64187 depthTexToFramebufferIdCache + m (Lnet/minecraft/class_10874;I)I method_76231 method_76231 + p 2 depthGlId + m (Lnet/minecraft/class_10868;II)V + p 3 mipLevels + p 2 baseMipLevel + p 1 texture + m (Lnet/minecraft/class_10874;Lcom/mojang/blaze3d/textures/GpuTexture;)I method_76232 getOrCreateFramebuffer + p 1 bufferManager + p 2 depthTexture + m (Lnet/minecraft/class_10874;I)I method_76597 createFramebuffer + p 1 bufferManager + p 2 depthGlId + m ()Lnet/minecraft/class_10868; method_71638 texture +c net/minecraft/class_1948 net/minecraft/world/SpawnHelper + f I field_24392 CHUNK_AREA + f [Lnet/minecraft/class_1311; field_24393 SPAWNABLE_GROUPS + f I field_30974 MIN_SPAWN_DISTANCE + f Lorg/slf4j/Logger; field_9292 LOGGER + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3218;Lnet/minecraft/class_1311;Lnet/minecraft/class_5138;)Z method_38091 shouldUseNetherFortressSpawns + p 2 spawnGroup + p 1 world + p 3 structureAccessor + p 0 pos + m (Lnet/minecraft/class_1311;)Z method_27816 method_27816 + p 0 spawnGroup + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5138;Lnet/minecraft/class_2794;Lnet/minecraft/class_1311;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Ljava/util/Optional; method_8664 pickRandomSpawnEntry + p 0 world + p 1 structureAccessor + p 4 random + p 5 pos + p 2 chunkGenerator + p 3 spawnGroup + m (Lnet/minecraft/class_1311;Lnet/minecraft/class_3218;Lnet/minecraft/class_2791;Lnet/minecraft/class_2338;Lnet/minecraft/class_1948$class_5261;Lnet/minecraft/class_1948$class_5259;)V method_24930 spawnEntitiesInChunk + p 2 chunk + p 1 world + p 0 group + p 5 runner + p 4 checker + p 3 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5138;Lnet/minecraft/class_2794;Lnet/minecraft/class_1311;Lnet/minecraft/class_5483$class_1964;Lnet/minecraft/class_2338;)Z method_8659 containsSpawnEntry + p 1 structureAccessor + p 2 chunkGenerator + p 3 spawnGroup + p 4 spawnEntry + p 5 pos + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1311;Lnet/minecraft/class_5138;Lnet/minecraft/class_2794;Lnet/minecraft/class_5483$class_1964;Lnet/minecraft/class_2338$class_2339;D)Z method_24934 canSpawn + p 6 squaredDistance + p 5 pos + p 4 spawnEntry + p 3 chunkGenerator + p 2 structureAccessor + p 1 group + p 0 world + m (Lnet/minecraft/class_1311;Lnet/minecraft/class_3218;Lnet/minecraft/class_2818;Lnet/minecraft/class_1948$class_5261;Lnet/minecraft/class_1948$class_5259;)V method_8663 spawnEntitiesInChunk + p 3 checker + p 2 chunk + p 4 runner + p 1 world + p 0 group + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2791;)Lnet/minecraft/class_1959; method_27822 getBiomeDirectly + p 0 pos + p 1 chunk + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2818;)Lnet/minecraft/class_2338; method_8657 getRandomPosInChunkSection + p 1 chunk + p 0 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;Lnet/minecraft/class_5263;Lnet/minecraft/class_6540;Lnet/minecraft/class_1311;Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;Lnet/minecraft/class_2818;)V method_27819 method_27819 + p 6 chunk + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_2338;Lnet/minecraft/class_2791;)Z method_35238 method_35238 + p 2 chunk + p 1 posx + p 0 type + m (Lnet/minecraft/class_1948$class_5262;ZZZ)Ljava/util/List; method_61729 collectSpawnableGroups + p 1 spawnAnimals + p 2 spawnMonsters + p 3 rare + p 0 info + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3610;Lnet/minecraft/class_1299;)Z method_8662 isClearForSpawn + p 4 entityType + p 3 fluidState + p 2 state + p 1 pos + p 0 blockView + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_2791;)V method_35239 method_35239 + p 1 chunk + p 0 entity + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_1299;II)Lnet/minecraft/class_2338; method_8658 getEntitySpawnPos + p 1 entityType + p 2 x + p 0 world + p 3 z + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_6880;Lnet/minecraft/class_1923;Lnet/minecraft/class_5819;)V method_8661 populateEntities + p 1 biomeEntry + p 0 world + p 3 random + p 2 chunkPos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2791;Lnet/minecraft/class_2338$class_2339;D)Z method_24933 isAcceptableSpawnPosition + p 1 chunk + p 2 pos + p 0 world + p 3 squaredDistance + m (ILjava/lang/Iterable;Lnet/minecraft/class_1948$class_5260;Lnet/minecraft/class_6540;)Lnet/minecraft/class_1948$class_5262; method_27815 setupSpawn + p 3 densityCapper + p 1 entities + p 2 chunkSource + p 0 spawningChunkCount + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5138;Lnet/minecraft/class_2794;Lnet/minecraft/class_1311;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;)Lnet/minecraft/class_6012; method_29950 getSpawnEntries + p 3 spawnGroup + p 2 chunkGenerator + p 1 structureAccessor + p 0 world + p 5 biomeEntry + p 4 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2818;Lnet/minecraft/class_1948$class_5262;Ljava/util/List;)V method_27821 spawn + p 2 info + p 1 chunk + p 0 world + p 3 spawnableGroups + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1299;)Lnet/minecraft/class_1308; method_24931 createMob + p 0 world + p 1 type + m (Lnet/minecraft/class_1311;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_35240 spawnEntitiesInChunk + p 0 group + p 2 pos + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;D)Z method_24932 isValidSpawn + p 0 world + p 2 squaredDistance + p 1 entity +c net/minecraft/class_1948$class_5259 net/minecraft/world/SpawnHelper$Runner + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_2791;)V run run + p 1 entity + p 2 chunk +c net/minecraft/class_1948$class_5261 net/minecraft/world/SpawnHelper$Checker + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_2338;Lnet/minecraft/class_2791;)Z test test + p 2 pos + p 3 chunk + p 1 type +c net/minecraft/class_1948$class_5262 net/minecraft/world/SpawnHelper$Info + f Lnet/minecraft/class_2338; field_24398 cachedPos + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_24397 groupToCountView + f Lnet/minecraft/class_6540; field_34459 densityCapper + f Lnet/minecraft/class_5263; field_24396 densityField + f Lnet/minecraft/class_1299; field_24399 cachedEntityType + f Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; field_24395 groupToCount + f D field_24400 cachedDensityMass + f I field_24394 spawningChunkCount + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_2338;Lnet/minecraft/class_2791;)Z method_27824 test + c @see SpawnHelper.Checker#test(EntityType, BlockPos, Chunk) + p 1 type + p 3 chunk + p 2 pos + m ()I method_27823 getSpawningChunkCount + m (Lnet/minecraft/class_1311;Lnet/minecraft/class_1923;)Z method_61730 canSpawn + p 2 chunkPos + p 1 group + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; method_27830 getGroupToCount + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_2791;)V method_27825 run + c @see SpawnHelper.Runner#run(MobEntity, Chunk) + p 1 entity + p 2 chunk + m (ILit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;Lnet/minecraft/class_5263;Lnet/minecraft/class_6540;)V + p 1 spawningChunkCount + p 3 densityField + p 2 groupToCount + p 4 densityCapper + m (Lnet/minecraft/class_1311;)Z method_27826 isBelowCap + p 1 group +c net/minecraft/class_1948$class_5260 net/minecraft/world/SpawnHelper$ChunkSource + m (JLjava/util/function/Consumer;)V query query + p 3 chunkConsumer + p 1 pos +c net/minecraft/class_10066 net/minecraft/client/render/entity/state/SkeletonEntityRenderState + f Z field_53573 shaking + f Z field_55318 holdingBow + f Z field_53572 attacking +c net/minecraft/class_11398 net/minecraft/client/render/fog/AtmosphericFogModifier + f F field_60589 fogMultiplier +c net/minecraft/class_10067 net/minecraft/client/render/entity/state/SlimeEntityRenderState + f F field_53574 stretch + f I field_53575 size +c net/minecraft/class_1946 net/minecraft/world/dimension/PortalForcer + f Lnet/minecraft/class_3218; field_9286 world + m (Lnet/minecraft/class_2338;)Z method_61028 method_61028 + p 1 portalPos + m (Lnet/minecraft/class_2338$class_2339;)Z method_45550 isBlockStateValid + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350$class_2351;)Ljava/util/Optional; method_30482 createPortal + p 1 pos + p 2 axis + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_2350;I)Z method_30481 isValidPortalPos + p 4 distanceOrthogonalToPortal + p 2 temp + p 3 portalDirection + p 1 pos + m (Lnet/minecraft/class_2338;ZLnet/minecraft/class_2784;)Ljava/util/Optional; method_30483 getPortalPos + p 3 worldBorder + p 2 destIsNether + p 1 pos + m (Lnet/minecraft/class_3218;)V + p 1 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)D method_61029 method_61029 + p 1 portalPos + m (Lnet/minecraft/class_6880;)Z method_22389 method_22389 + p 0 poiType +c net/minecraft/class_10064 net/minecraft/client/render/entity/state/ShulkerBulletEntityRenderState + f F field_53565 yaw + f F field_53564 pitch +c net/minecraft/class_1945 net/minecraft/world/ModifiableWorld + c Represents a modifiable world where block states can be changed and entities spawned. + m (Lnet/minecraft/class_2338;ZLnet/minecraft/class_1297;)Z method_8651 breakBlock + c Removes the block and replaces it with the fluid occupying the block\n(such as water inside kelp), or air if it does not exist. Additionally,\nthis emits the {@linkplain WorldEvents#BLOCK_BROKEN world event}\nand the {@linkplain net.minecraft.world.event.GameEvent#BLOCK_DESTROY game event}.\n\n@return whether the block was removed successfully\n\n@see #breakBlock(BlockPos, boolean)\n@see #breakBlock(BlockPos, boolean, Entity, int) + p 2 drop + p 1 pos + p 3 breakingEntity + m (Lnet/minecraft/class_2338;Z)Z method_8650 removeBlock + c Removes the block and replaces it with the fluid occupying the block\n(such as water inside kelp), or air if it does not exist.\n\n@implNote This does not emit the {@linkplain WorldEvents#BLOCK_BROKEN world event}\nor the {@linkplain net.minecraft.world.event.GameEvent#BLOCK_DESTROY game event}.\n\n@return whether the block was removed successfully\n\n@see #breakBlock(BlockPos, boolean) + p 2 move + c whether the block was removed as part of piston moving blocks + p 1 pos + m (Lnet/minecraft/class_2338;Z)Z method_22352 breakBlock + c Removes the block and replaces it with the fluid occupying the block\n(such as water inside kelp), or air if it does not exist. Additionally,\nthis emits the {@linkplain WorldEvents#BLOCK_BROKEN world event}\nand the {@linkplain net.minecraft.world.event.GameEvent#BLOCK_DESTROY game event}.\n\n@return whether the block was removed successfully\n\n@see #removeBlock(BlockPos, boolean)\n@see #breakBlock(BlockPos, boolean, Entity) + p 2 drop + p 1 pos + m (Lnet/minecraft/class_2338;ZLnet/minecraft/class_1297;I)Z method_30093 breakBlock + c Removes the block and replaces it with the fluid occupying the block\n(such as water inside kelp), or air if it does not exist. Additionally,\nthis emits the {@linkplain WorldEvents#BLOCK_BROKEN world event}\nand the {@linkplain net.minecraft.world.event.GameEvent#BLOCK_DESTROY game event}.\n\n@return whether the block was removed successfully\n\n@see #breakBlock(BlockPos, boolean)\n@see #breakBlock(BlockPos, boolean, Entity) + p 1 pos + p 2 drop + p 3 breakingEntity + p 4 maxUpdateDepth + m (Lnet/minecraft/class_1297;)Z method_8649 spawnEntity + c Spawns an entity.\n\n@apiNote To spawn an entity with passengers, use\n{@link net.minecraft.world.ServerWorldAccess#spawnEntityAndPassengers}.\n\n@see net.minecraft.world.ServerWorldAccess#spawnEntityAndPassengers + p 1 entity + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;II)Z method_30092 setBlockState + c Updates the block state at a position, calling appropriate callbacks.\n\n

When called on the server, the new block state is stored and propagated to clients and listeners as dictated\nby the supplied flags. Note that calling this on the client will update the world locally, but may not see the\nchange persisted across loads. It's recommended to check whether this world is client before\ninteracting with the world in this way.\n\n

See {@link #setBlockState(BlockPos, BlockState, int)} for a list of accepted flags. + p 4 maxUpdateDepth + c the limit for the cascading block updates + p 3 flags + c the bitwise flag combination, as described above + p 2 state + c the block state to set + p 1 pos + c the target position + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;I)Z method_8652 setBlockState + c Updates the block state at a position, calling appropriate callbacks.\n\n

When called on the server, the new block state is stored and propagated to clients and listeners as dictated\nby the supplied flags. Note that calling this on the client will update the world locally, but may not see the\nchange persisted across loads. It's recommended to check whether this world is client before\ninteracting with the world in this way.\n\n

The accepted values of these flags are:\n

    \n
  • {@link net.minecraft.block.Block#NOTIFY_ALL Block.NOTIFY_ALL}
  • \n
  • {@link net.minecraft.block.Block#NOTIFY_NEIGHBORS Block.NOTIFY_NEIGHBORS}
  • \n
  • {@link net.minecraft.block.Block#NOTIFY_LISTENERS Block.NOTIFY_LISTENERS}
  • \n
  • {@link net.minecraft.block.Block#NO_REDRAW Block.NO_REDRAW}
  • \n
  • {@link net.minecraft.block.Block#REDRAW_ON_MAIN_THREAD Block.REDRAW_ON_MAIN_THREAD}
  • \n
  • {@link net.minecraft.block.Block#FORCE_STATE Block.FORCE_STATE}
  • \n
  • {@link net.minecraft.block.Block#SKIP_DROPS Block.SKIP_DROPS}
  • \n
  • {@link net.minecraft.block.Block#MOVED Block.MOVED}
  • \n
\n\n@see #setBlockState(BlockPos, BlockState, int, int) + p 1 pos + c the target position + p 3 flags + c the bitwise flag combination, as described above + p 2 state + c the block state to set +c net/minecraft/class_10065 net/minecraft/client/render/entity/state/ShulkerEntityRenderState + f Lnet/minecraft/class_243; field_53566 renderPositionOffset + f F field_53570 shellYaw + f Lnet/minecraft/class_1767; field_53567 color + f F field_53569 headYaw + f F field_53568 openProgress + f Lnet/minecraft/class_2350; field_53571 facing +c net/minecraft/class_10068 net/minecraft/client/render/entity/state/SnifferEntityRenderState + f Lnet/minecraft/class_7094; field_53578 sniffingAnimationState + f Lnet/minecraft/class_7094; field_53577 diggingAnimationState + f Lnet/minecraft/class_7094; field_53579 risingAnimationState + f Z field_53576 searching + f Lnet/minecraft/class_7094; field_53581 scentingAnimationState + f Lnet/minecraft/class_7094; field_53580 feelingHappyAnimationState +c net/minecraft/class_10069 net/minecraft/client/render/entity/state/SquidEntityRenderState + f F field_53584 rollAngle + f F field_53583 tiltAngle + f F field_53582 tentacleAngle +c net/minecraft/class_149 net/minecraft/loot/function/SetDamageLootFunction + f Lcom/mojang/serialization/MapCodec; field_45846 CODEC + f Lorg/slf4j/Logger; field_1121 LOGGER + f Z field_27910 add + f Lnet/minecraft/class_5658; field_1120 durabilityRange + m (Lnet/minecraft/class_149;)Lnet/minecraft/class_5658; method_53380 method_53380 + p 0 function + m (Lnet/minecraft/class_5658;Z)Lnet/minecraft/class_120$class_121; method_35542 builder + p 0 durabilityRange + p 1 add + m (Lnet/minecraft/class_5658;Ljava/util/List;)Lnet/minecraft/class_117; method_634 method_634 + p 1 conditions + m (Lnet/minecraft/class_5658;ZLjava/util/List;)Lnet/minecraft/class_117; method_35543 method_35543 + p 2 conditions + m (Lnet/minecraft/class_5658;)Lnet/minecraft/class_120$class_121; method_633 builder + p 0 durabilityRange + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53379 method_53379 + p 0 instance + m (Ljava/util/List;Lnet/minecraft/class_5658;Z)V + p 3 add + p 2 durabilityRange + p 1 conditions + m (Lnet/minecraft/class_149;)Ljava/lang/Boolean; method_53378 method_53378 + p 0 function +c net/minecraft/class_148 net/minecraft/util/crash/CrashException + f Lnet/minecraft/class_128; field_1119 report + m (Lnet/minecraft/class_128;)V + p 1 report + m ()Lnet/minecraft/class_128; method_631 getReport +c net/minecraft/class_141 net/minecraft/loot/function/SetCountLootFunction + f Lnet/minecraft/class_5658; field_1114 countRange + f Lcom/mojang/serialization/MapCodec; field_45845 CODEC + f Z field_27909 add + m (Lnet/minecraft/class_5658;)Lnet/minecraft/class_120$class_121; method_621 builder + p 0 countRange + m (Ljava/util/List;Lnet/minecraft/class_5658;Z)V + p 1 conditions + p 2 countRange + p 3 add + m (Lnet/minecraft/class_141;)Lnet/minecraft/class_5658; method_53377 method_53377 + p 0 function + m (Lnet/minecraft/class_5658;Z)Lnet/minecraft/class_120$class_121; method_35540 builder + p 0 countRange + p 1 add + m (Lnet/minecraft/class_141;)Ljava/lang/Boolean; method_53375 method_53375 + p 0 function + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53376 method_53376 + p 0 instance +c net/minecraft/class_140 net/minecraft/util/logging/UncaughtExceptionLogger + f Lorg/slf4j/Logger; field_1113 logger + m (Ljava/lang/Thread;Ljava/lang/Throwable;)V uncaughtException uncaughtException + p 1 thread + p 2 throwable + m (Lorg/slf4j/Logger;)V + p 1 logger +c net/minecraft/class_10092 net/minecraft/unused/packageinfo/PackageInfo10092 +c net/minecraft/class_144 net/minecraft/loot/function/SetLootTableLootFunction + f J field_1117 seed + f Lnet/minecraft/class_6880; field_34773 type + f Lcom/mojang/serialization/MapCodec; field_45842 CODEC + f Lnet/minecraft/class_5321; field_1116 lootTable + m (Lnet/minecraft/class_5321;JLnet/minecraft/class_2591;Ljava/util/List;)Lnet/minecraft/class_117; method_35536 method_35536 + p 4 conditions + m (Lnet/minecraft/class_144;)Lnet/minecraft/class_5321; method_53369 method_53369 + p 0 function + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2591;Ljava/util/List;)Lnet/minecraft/class_117; method_35537 method_35537 + p 2 conditions + m (Lnet/minecraft/class_2591;Lnet/minecraft/class_5321;J)Lnet/minecraft/class_120$class_121; method_35535 builder + p 1 lootTable + p 2 seed + p 0 type + m (Lnet/minecraft/class_144;)Lnet/minecraft/class_6880; method_53366 method_53366 + p 0 function + m (Lnet/minecraft/class_144;)Ljava/lang/Long; method_53368 method_53368 + p 0 function + m (Ljava/util/List;Lnet/minecraft/class_5321;JLnet/minecraft/class_6880;)V + p 3 seed + p 2 lootTable + p 5 blockEntityType + p 1 conditions + m (Lnet/minecraft/class_2591;Lnet/minecraft/class_5321;)Lnet/minecraft/class_120$class_121; method_35534 builder + p 0 type + p 1 lootTable + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53367 method_53367 + p 0 instance +c net/minecraft/class_143 net/minecraft/util/logging/UncaughtExceptionHandler + f Lorg/slf4j/Logger; field_1115 logger + m (Lorg/slf4j/Logger;)V + p 1 logger + m (Ljava/lang/Thread;Ljava/lang/Throwable;)V uncaughtException uncaughtException + p 1 thread + p 2 throwable +c net/minecraft/class_10090 net/minecraft/client/render/MapRenderState + f Lnet/minecraft/class_2960; field_53638 texture + f Ljava/util/List; field_53639 decorations +c net/minecraft/class_10090$class_10091 net/minecraft/client/render/MapRenderState$Decoration + f B field_53641 x + f B field_53643 rotation + f B field_53642 z + f Lnet/minecraft/class_1058; field_53640 sprite + f Lnet/minecraft/class_2561; field_53645 name + f Z field_53644 alwaysRendered +c net/minecraft/class_10096 net/minecraft/client/render/model/MissingModel + f Ljava/lang/String; field_55462 TEXTURE_ID + f Lnet/minecraft/class_2960; field_53660 ID + m (Lnet/minecraft/class_783$class_10800;Lnet/minecraft/class_2350;)Lnet/minecraft/class_783; method_66546 method_66546 + p 1 direction + m ()Lnet/minecraft/class_1100; method_62629 create +c net/minecraft/class_10093 net/minecraft/client/texture/MapTextureManager + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_53646 texturesByMapId + f Lnet/minecraft/class_1060; field_53647 textureManager + m (Lnet/minecraft/class_22;Ljava/lang/Integer;Lnet/minecraft/class_10093$class_331;)Lnet/minecraft/class_10093$class_331; method_62623 method_62623 + p 2 id + p 3 mapTexture + m (Lnet/minecraft/class_9209;Lnet/minecraft/class_22;)Lnet/minecraft/class_2960; method_62624 getTextureId + p 1 mapIdComponent + p 2 mapState + m (Lnet/minecraft/class_9209;Lnet/minecraft/class_22;)Lnet/minecraft/class_10093$class_331; method_62625 getMapTexture + p 1 mapId + p 2 mapState + m (Lnet/minecraft/class_1060;)V + p 1 textureManager + m ()V method_62621 clear + m (Lnet/minecraft/class_9209;Lnet/minecraft/class_22;)V method_62622 setNeedsUpdate + p 1 mapIdComponent + p 2 mapState +c net/minecraft/class_10093$class_331 net/minecraft/client/texture/MapTextureManager$MapTexture + f Lnet/minecraft/class_22; field_2046 state + f Z field_34044 needsUpdate + f Lnet/minecraft/class_2960; field_53648 textureId + f Lnet/minecraft/class_1043; field_2048 texture + m (Lnet/minecraft/class_22;)V method_37451 setState + p 1 state + m ()V method_1776 updateTexture + m ()V method_37450 setNeedsUpdate + m (Lnet/minecraft/class_10093;ILnet/minecraft/class_22;)V + p 2 id + p 3 state +c net/minecraft/class_1915 net/minecraft/village/Merchant + m (I)V method_19271 setExperienceFromServer + p 1 experience + m (Lnet/minecraft/class_1657;)V method_8259 setCustomer + p 1 customer + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_2561;I)V method_17449 sendOffers + p 1 player + p 2 name + p 3 levelProgress + m ()Lnet/minecraft/class_3414; method_18010 getYesSound + m (Lnet/minecraft/class_1657;)Z method_65125 canInteract + p 1 player + m ()I method_19269 getExperience + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1703; method_17448 method_17448 + p 1 syncId + p 3 playerx + p 2 playerInventory + m ()Lnet/minecraft/class_1916; method_8264 getOffers + m (Lnet/minecraft/class_1799;)V method_8258 onSellingItem + p 1 stack + m ()Z method_19270 isLeveledMerchant + m (Lnet/minecraft/class_1914;)V method_8262 trade + p 1 offer + m ()Z method_38069 isClient + m ()Z method_20708 canRefreshTrades + m (Lnet/minecraft/class_1916;)V method_8261 setOffersFromServer + p 1 offers + m ()Lnet/minecraft/class_1657; method_8257 getCustomer +c net/minecraft/class_10099 net/minecraft/client/render/model/ModelGrouper + m (Lnet/minecraft/class_324;Lnet/minecraft/class_2248;)Ljava/util/List; method_62646 method_62646 + p 1 block + m (Ljava/util/Map;Lnet/minecraft/class_324;Ljava/util/Map;Lnet/minecraft/class_2680;Lnet/minecraft/class_1087$class_9979;)V method_62650 method_62650 + p 3 state + p 4 model + m (Lnet/minecraft/class_10099$class_10100;)Ljava/util/Set; method_62648 method_62648 + p 0 key + m (Lnet/minecraft/class_324;Lnet/minecraft/class_9824$class_10095;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; method_62647 group + p 0 colors + p 1 definition + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;ILnet/minecraft/class_2680;)V method_62649 method_62649 + p 2 state +c net/minecraft/class_10099$class_10100 net/minecraft/client/render/model/ModelGrouper$GroupKey + f Ljava/util/List; comp_3065 coloringValues + f Ljava/lang/Object; comp_3064 equalityGroup + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1087$class_9979;Ljava/util/List;)Lnet/minecraft/class_10099$class_10100; method_62651 of + p 0 state + p 1 model + p 2 properties + m (Lnet/minecraft/class_2680;Ljava/util/List;)Ljava/util/List; method_62652 getColoringValues + p 1 properties + p 0 state + m ()Ljava/lang/Object; comp_3064 equalityGroup + m ()Ljava/util/List; comp_3065 coloringValues + m (Ljava/lang/Object;Ljava/util/List;)V + p 1 equalityGroup + p 2 coloringValues +c net/minecraft/class_1914 net/minecraft/village/TradeOffer + f Lnet/minecraft/class_1799; field_9148 sellItem + f I field_18676 specialPrice + f I field_9144 maxUses + f I field_18677 demandBonus + f Ljava/util/Optional; field_9143 secondBuyItem + f Lnet/minecraft/class_9306; field_9146 firstBuyItem + f Lcom/mojang/serialization/Codec; field_48849 CODEC + f F field_18678 priceMultiplier + f I field_9147 uses + f I field_18679 merchantExperience + f Z field_9145 rewardingPlayerExperience + f Lnet/minecraft/class_9139; field_48371 PACKET_CODEC + m (Lnet/minecraft/class_1914;)Ljava/util/Optional; method_56715 method_56715 + p 0 tradeOffer + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_1914;)V method_56111 write + p 0 buf + p 1 offer + m ()Lnet/minecraft/class_1914; method_53881 copy + m (Lnet/minecraft/class_1914;)Lnet/minecraft/class_9306; method_56716 method_56716 + p 0 tradeOffer + m ()I method_8248 getMaxUses + c Returns the maximum number of times this trade offer can be used. + m (Lnet/minecraft/class_1914;)Ljava/lang/Integer; method_56709 method_56709 + p 0 tradeOffer + m (Lnet/minecraft/class_1914;)Ljava/lang/Boolean; method_56711 method_56711 + p 0 tradeOffer + m (Lnet/minecraft/class_1914;)Ljava/lang/Integer; method_56712 method_56712 + p 0 tradeOffer + m (Lnet/minecraft/class_9306;Lnet/minecraft/class_1799;IIF)V + p 1 buyItem + p 5 priceMultiplier + p 4 merchantExperience + p 3 maxUses + p 2 sellItem + m ()Z method_8255 isDisabled + c Returns whether this trade offer is disabled.\n\n

Checks if the number of times this trade offer has been used\nis greater or equal to its maximum uses. + m ()Ljava/util/Optional; method_57557 getSecondBuyItem + m ()V method_19276 clearSpecialPrice + c Resets the special price of this trade offer. + m (Lnet/minecraft/class_9306;Ljava/util/Optional;Lnet/minecraft/class_1799;IIZIIFI)V + p 1 firstBuyItem + p 4 uses + p 5 maxUses + p 2 secondBuyItem + p 3 sellItem + p 8 demandBonus + p 9 priceMultiplier + p 6 rewardingPlayerExperience + p 7 specialPrice + p 10 merchantExperience + m ()Lnet/minecraft/class_1799; method_8250 getSellItem + c Returns the sell item of this trade offer. + m ()I method_19279 getMerchantExperience + c Returns the amount of experience that will be given to a merchant\nafter this trade offer has been used. + m (Lnet/minecraft/class_9306;)I method_57555 getFirstBuyItemCount + p 1 firstBuyItem + m (Lnet/minecraft/class_9306;Ljava/util/Optional;Lnet/minecraft/class_1799;IIIFI)V + p 3 sellItem + p 4 uses + p 5 maxUses + p 6 merchantExperience + p 1 firstBuyItem + p 2 secondBuyItem + p 7 priceMultiplier + p 8 demandBonus + m ()Lnet/minecraft/class_1799; method_19272 getDisplayedFirstBuyItem + c Returns a copy of the first buy item of this trade offer,\nwith its price adjusted depending on the demand bonus, the\nspecial price and the price multiplier. + m ()Z method_21834 hasBeenUsed + c Returns whether this trade offer has already been used.\n\n

Checks if the number of times this trade offer has been used\nis greater than 0. + m (Lnet/minecraft/class_9306;Ljava/util/Optional;Lnet/minecraft/class_1799;IIF)V + p 2 secondBuyItem + p 1 firstBuyItem + p 4 maxUses + p 3 sellItem + p 6 priceMultiplier + p 5 merchantExperience + m (Lnet/minecraft/class_1914;)Ljava/lang/Integer; method_56713 method_56713 + p 0 tradeOffer + m ()Lnet/minecraft/class_1799; method_8247 getDisplayedSecondBuyItem + c Returns the second buy item of this trade offer.\n\n

If there is no second buy item, this returns the {@linkplain ItemStack#EMPTY empty\nitem stack}. + m ()V method_8254 disable + c Sets the number of times this trade offer has been used to\nits maximum uses, making it disabled. + m ()V method_19275 resetUses + c Resets the number of times this trade offer has been used. + m ()I method_21725 getDemandBonus + c Returns the demand bonus of this trade offer. It is used to\nadjust the price of its first buy item.\n\n

The more the demand bonus is, the more the price will be high.\n\n

It is updated when a villager restocks.\n\n@see #updateDemandBonus() + m ()Lnet/minecraft/class_1799; method_18019 copySellItem + c Returns a copy of the sell item of this trade offer. + m (Lnet/minecraft/class_1914;)Ljava/lang/Integer; method_56707 method_56707 + p 0 tradeOffer + m (Lnet/minecraft/class_1914;)V + p 1 offer + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_16953 depleteBuyItems + p 1 firstBuyStack + p 2 secondBuyStack + m (Lnet/minecraft/class_1914;)Ljava/lang/Integer; method_56710 method_56710 + p 0 tradeOffer + m (Lnet/minecraft/class_1914;)Lnet/minecraft/class_1799; method_56714 method_56714 + p 0 tradeOffer + m (Lnet/minecraft/class_9306;Ljava/util/Optional;Lnet/minecraft/class_1799;IIIF)V + p 6 merchantExperience + p 7 priceMultiplier + p 4 uses + p 5 maxUses + p 2 secondBuyItem + p 3 sellItem + p 1 firstBuyItem + m ()V method_19274 updateDemandBonus + c Updates the demand bonus of this trade offer depending on its\nprevious demand bonus, the number of times it has been used and\nits remaining uses. + m ()Lnet/minecraft/class_1799; method_8246 getOriginalFirstBuyItem + c Returns the first buy item of this trade offer. + m (I)V method_8245 increaseSpecialPrice + c Increases the special price of this trade offer by {@code increment}.\n\n

A negative {@code increment} value will decrease the special price. + p 1 increment + m (I)V method_19273 setSpecialPrice + c Sets the special price of this trade offer to {@code specialPrice}. + p 1 specialPrice + m ()Lnet/minecraft/class_9306; method_57556 getFirstBuyItem + m (Lnet/minecraft/class_1914;)Ljava/lang/Float; method_56708 method_56708 + p 0 tradeOffer + m ()I method_8249 getUses + c Returns the number of times this trade offer has been used. + m ()I method_19277 getSpecialPrice + c Returns the special price of this trade offer. It is used to\nadjust the price of its first buy item.\n\n

The less the special price is, the more the price will be low. + m ()F method_19278 getPriceMultiplier + c Returns the price multiplier of this trade offer. It is used to\nadjust the price of its first buy item. + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_16952 matchesBuyItems + p 2 buyItem + p 1 stack + m ()V method_8244 use + c Increments the number of times this trade offer has been used. + m ()Z method_8256 shouldRewardPlayerExperience + c Returns whether experience should be given to a player when\nthey use this trade offer. + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_1914; method_56110 read + p 0 buf + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56705 method_56705 + p 0 instance +c net/minecraft/class_10097 net/minecraft/client/render/model/ReferencedModelsCollector + f Lorg/slf4j/Logger; field_53664 LOGGER + f Lnet/minecraft/class_10526$class_10103; field_56992 resolver + f Ljava/util/Queue; field_56993 queue + f Lit/unimi/dsi/fastutil/objects/Object2ObjectFunction; field_56991 holder + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; field_56989 modelCache + f Lnet/minecraft/class_10097$class_10814; field_56990 missingModel + m (Ljava/util/List;)V method_68030 checkIfValid + p 0 models + m ()Ljava/util/Map; method_68028 collectModels + m (Lnet/minecraft/class_10526;)V method_65744 resolve + p 1 model + m (Ljava/util/Map;Ljava/lang/Object;)Lnet/minecraft/class_10097$class_10814; method_68027 method_68027 + p 2 id + m (Ljava/util/Map;Lnet/minecraft/class_1100;)V + p 1 unbakedModels + p 2 missingModel + m ()Lnet/minecraft/class_10819; method_68022 getMissingModel + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_2960;Lnet/minecraft/class_10097$class_10814;)V method_68025 method_68025 + p 1 id + p 2 model + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_1100;)Lnet/minecraft/class_10097$class_10814; method_68029 schedule + p 2 model + p 1 id + m (Lnet/minecraft/class_1100;)Z method_68026 isRootModel + p 0 model + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_1100;)V method_68024 addSpecialModel + p 2 model + p 1 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_10097$class_10814; method_68023 resolve + p 1 id + m (Ljava/util/List;)V method_62630 resolveAll + p 1 models +c net/minecraft/class_10097$class_10814 net/minecraft/client/render/model/ReferencedModelsCollector$Holder + f I field_57001 PROPERTY_COUNT + f Lnet/minecraft/class_1100; field_57005 model + f Ljava/util/concurrent/atomic/AtomicReferenceArray; field_57006 properties + f Lnet/minecraft/class_10097$class_10815; field_56996 GEOMETRY_PROPERTY + f Lnet/minecraft/class_10097$class_10815; field_56997 TRANSFORMATIONS_PROPERTY + f Lnet/minecraft/class_10097$class_10815; field_56994 AMBIENT_OCCLUSION_PROPERTY + f Lnet/minecraft/class_10097$class_10815; field_56995 GUI_LIGHT_PROPERTY + f Lnet/minecraft/class_10097$class_10815; field_57000 BAKED_GEOMETRY_PROPERTY + f Z field_57003 valid + f Lnet/minecraft/class_10097$class_10815; field_56998 TEXTURE_PROPERTY + f Lnet/minecraft/class_2960; field_57002 id + f Lnet/minecraft/class_10097$class_10814; field_57004 parent + f Lnet/minecraft/class_10097$class_10815; field_56999 PARTICLE_TEXTURE_PROPERTY + f Ljava/util/Map; field_57007 bakeCache + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_1100;Z)V + p 2 model + p 3 valid + p 1 id + m (I)Lnet/minecraft/class_10097$class_10815; method_68032 createProperty + m (Lnet/minecraft/class_10097$class_10815;Ljava/util/function/Function;)Ljava/lang/Object; method_68037 getProperty + p 1 property + p 2 fallback + m (Lnet/minecraft/class_10419;Lnet/minecraft/class_7775;Lnet/minecraft/class_3665;)Lnet/minecraft/class_10817; method_68041 method_68041 + p 3 settings1 + m (Lnet/minecraft/class_10097$class_10815;)Ljava/lang/Object; method_68035 getProperty + p 1 property + m (Lnet/minecraft/class_10419;Lnet/minecraft/class_7775;Lnet/minecraft/class_3665;)Lnet/minecraft/class_10817; method_68039 getBakedGeometry + p 3 settings + p 2 baker + p 1 textures + m (Lnet/minecraft/class_10097$class_10815;Ljava/lang/Object;)Ljava/lang/Object; method_68036 setProperty + p 2 value + p 1 property +c net/minecraft/class_10097$class_10815 net/minecraft/client/render/model/ReferencedModelsCollector$Property + f I comp_3773 index + m ()I comp_3773 index + m (I)V + p 1 index +c net/minecraft/class_1919 net/minecraft/server/world/BlockEvent + f I comp_63 data + f I comp_62 type + f Lnet/minecraft/class_2338; comp_60 pos + f Lnet/minecraft/class_2248; comp_61 block + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;II)V + p 3 type + p 4 data + p 1 pos + p 2 block + m ()I comp_63 data + m ()I comp_62 type + m ()Lnet/minecraft/class_2338; comp_60 pos + m ()Lnet/minecraft/class_2248; comp_61 block +c net/minecraft/class_1918 net/minecraft/world/CommandBlockExecutor + c A common logic for command-block behaviors shared by\n{@linkplain net.minecraft.block.entity.CommandBlockBlockEntity\ncommand blocks} and {@linkplain net.minecraft.entity.vehicle.CommandBlockMinecartEntity\ncommand block minecarts}. + f J field_9167 lastExecution + f I field_9163 successCount + f Lnet/minecraft/class_2561; field_9162 customName + f Z field_9166 updateLastExecution + f Z field_9164 trackOutput + f Lnet/minecraft/class_2561; field_9165 lastOutput + f I field_57756 DEFAULT_LAST_EXECUTION + f Ljava/lang/String; field_9168 command + f Lnet/minecraft/class_2561; field_21515 DEFAULT_NAME + m (Lnet/minecraft/class_3218;)V method_8295 markDirty + p 1 world + m (ZI)V method_8294 method_8294 + p 2 returnValue + p 1 successful + m (Lnet/minecraft/class_11368;)V method_8305 readData + p 1 view + m (Lnet/minecraft/class_11372;)V method_8297 writeData + p 1 view + m (Z)V method_8287 setTrackOutput + p 1 trackOutput + m (Lnet/minecraft/class_2561;)V method_8291 setLastOutput + p 1 lastOutput + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2165;)Lnet/minecraft/class_2168; method_8303 getSource + p 1 world + p 2 output + m ()Lnet/minecraft/class_2561; method_8299 getName + m (Lnet/minecraft/class_3218;)Lnet/minecraft/class_1918$class_11874; method_74026 createOutput + m ()Lnet/minecraft/class_2561; method_57558 getCustomName + m (Ljava/lang/String;)V method_8286 setCommand + p 1 command + m (Lnet/minecraft/class_3218;)Z method_8301 execute + p 1 world + m (Lnet/minecraft/class_2561;)V method_8290 setCustomName + p 1 customName + m ()Ljava/lang/String; method_8289 getCommand + m ()I method_8304 getSuccessCount + m ()Z method_52175 isEditable + m ()Z method_8296 isTrackingOutput + m (I)V method_8298 setSuccessCount + p 1 successCount + m ()Lnet/minecraft/class_2561; method_8292 getLastOutput +c net/minecraft/class_1918$class_11874 net/minecraft/world/CommandBlockExecutor$CommandBlockOutput + f Ljava/time/format/DateTimeFormatter; field_62432 TIME_FORMATTER + f Z field_62433 closed + f Lnet/minecraft/class_3218; field_63424 world + m (Lnet/minecraft/class_1918;Lnet/minecraft/class_3218;)V + p 2 world +c net/minecraft/class_1917 net/minecraft/block/spawner/MobSpawnerLogic + f I field_9157 spawnRange + f D field_9161 rotation + f Lnet/minecraft/class_1952; field_9155 spawnEntry + f I field_9151 minSpawnDelay + f Lorg/slf4j/Logger; field_60369 LOGGER + f Ljava/lang/String; field_40877 SPAWN_DATA_KEY + f I field_57758 DEFAULT_MIN_SPAWN_DELAY + f I field_57761 DEFAULT_MAX_NEARBY_ENTITIES + f I field_57763 DEFAULT_SPAWN_RANGE + f D field_9159 lastRotation + f I field_9149 spawnCount + f I field_9158 requiredPlayerRange + f I field_9154 spawnDelay + f I field_9150 maxSpawnDelay + f I field_9160 maxNearbyEntities + f I field_57759 DEFAULT_MAX_SPAWN_DELAY + f I field_57760 DEFAULT_SPAWN_COUNT + f I field_57762 DEFAULT_REQUIRED_PLAYER_RANGE + f Lnet/minecraft/class_6012; field_9152 spawnPotentials + f Lnet/minecraft/class_1297; field_9153 renderedEntity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;I)V method_8273 sendStatus + p 2 pos + p 3 status + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1297; method_8283 getRenderedEntity + p 2 pos + p 1 world + m ()D method_8278 getRotation + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_31588 serverTick + p 1 world + p 2 pos + m (Lnet/minecraft/class_1937;I)Z method_8275 handleStatus + p 2 status + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1952;)V method_8277 setSpawnEntry + p 1 world + p 2 pos + p 3 spawnEntry + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_8284 isPlayerInRange + p 1 world + p 2 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1952;)V method_33356 method_33356 + p 3 spawnPotential + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_31589 clientTick + p 2 pos + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_8282 updateSpawns + p 1 world + p 2 pos + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)V method_8274 setEntityId + p 4 pos + p 3 random + p 2 world + p 1 type + m ()D method_8279 getLastRotation + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1952; method_46404 getSpawnEntry + p 3 pos + p 1 world + p 2 random + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_11368;)V method_8280 readData + p 2 pos + p 3 view + p 1 world + m (Lnet/minecraft/class_11372;)V method_8272 writeData + p 1 view +c net/minecraft/class_1916 net/minecraft/village/TradeOfferList + f Lcom/mojang/serialization/Codec; field_48850 CODEC + f Lnet/minecraft/class_9139; field_48373 PACKET_CODEC + m ()Lnet/minecraft/class_1916; method_53882 copy + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;I)Lnet/minecraft/class_1914; method_8267 getValidOffer + p 2 secondBuyItem + p 1 firstBuyItem + p 3 index + m (Ljava/util/Collection;)V + p 1 tradeOffers + m (I)V + p 1 size +c net/minecraft/class_159 net/minecraft/loot/function/SetCustomDataLootFunction + f Lcom/mojang/serialization/MapCodec; field_45849 CODEC + f Lnet/minecraft/class_2487; field_1138 nbt + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53392 method_53392 + p 0 instance + m (Lnet/minecraft/class_159;)Lnet/minecraft/class_2487; method_53391 method_53391 + p 0 function + m (Lnet/minecraft/class_2487;)V method_57655 method_57655 + p 1 nbt + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_120$class_121; method_57654 builder + p 0 nbt + m (Lnet/minecraft/class_2487;Ljava/util/List;)Lnet/minecraft/class_117; method_675 method_675 + p 1 conditions + m (Ljava/util/List;Lnet/minecraft/class_2487;)V + p 2 nbt + p 1 conditions +c net/minecraft/class_152 net/minecraft/loot/function/SetStewEffectLootFunction + f Lcom/mojang/serialization/MapCodec; field_45851 CODEC + f Lcom/mojang/serialization/Codec; field_45852 STEW_EFFECT_LIST_CODEC + f Ljava/util/List; field_45853 stewEffects + m (Lnet/minecraft/class_152$class_8754;)Ljava/util/stream/Stream; method_32421 method_32421 + p 0 stewEffect + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_53396 method_53396 + p 0 stewEffects + m ()Lnet/minecraft/class_152$class_153; method_637 builder + m (Lnet/minecraft/class_152;)Ljava/util/List; method_53395 method_53395 + p 0 function + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53397 method_53397 + p 0 instance + m (Ljava/util/List;Ljava/util/List;)V + p 1 conditions + p 2 stewEffects +c net/minecraft/class_152$class_153 net/minecraft/loot/function/SetStewEffectLootFunction$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_1123 map + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_5658;)Lnet/minecraft/class_152$class_153; method_640 withEffect + p 2 durationRange + p 1 effect + m ()Lnet/minecraft/class_152$class_153; method_639 getThisBuilder +c net/minecraft/class_152$class_8754 net/minecraft/loot/function/SetStewEffectLootFunction$StewEffect + f Lcom/mojang/serialization/Codec; field_45854 CODEC + f Lnet/minecraft/class_6880; comp_1865 effect + f Lnet/minecraft/class_5658; comp_1866 duration + m ()Lnet/minecraft/class_6880; comp_1865 effect + m ()Lnet/minecraft/class_5658; comp_1866 duration + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_5658;)V + p 1 effect + p 2 duration +c net/minecraft/class_151 net/minecraft/util/InvalidIdentifierException + c An exception thrown when parsing or constructing an {@link Identifier}\nthat contains an invalid character. This should not be caught, instead\n{@link Identifier#tryParse} or {@link Identifier#of} should be used. + m (Ljava/lang/String;)V + p 1 message + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 1 message + p 2 throwable +c net/minecraft/class_156 net/minecraft/util/Util + c A class holding various utility methods. + f I field_34891 MAX_PARALLELISM + f Ljava/util/Set; field_52196 SUPPORTED_URI_PROTOCOLS + f Ljava/util/function/Consumer; field_34893 missingBreakpointHandler + f Lorg/slf4j/Logger; field_1129 LOGGER + f Lnet/minecraft/class_10207; field_24477 IO_WORKER_EXECUTOR + f J field_45714 NANOS_PER_MILLI + f Lcom/google/common/base/Ticker; field_37250 TICKER + f Lnet/minecraft/class_10207; field_47571 DOWNLOAD_WORKER_EXECUTOR + f Ljava/lang/String; field_34892 MAX_BG_THREADS_PROPERTY + f Ljava/util/UUID; field_25140 NIL_UUID + c The "nil UUID" that represents lack of a UUID. + f Lnet/minecraft/class_10207; field_18035 MAIN_WORKER_EXECUTOR + f Ljava/nio/file/spi/FileSystemProvider; field_33859 JAR_FILE_SYSTEM_PROVIDER + c The file system provider for handling jar and zip files. + f Lnet/minecraft/class_7576$class_7577; field_1128 nanoTimeSupplier + f Ljava/time/format/DateTimeFormatter; field_39824 DATE_TIME_FORMATTER + c A locale-independent datetime formatter that uses {@code yyyy-MM-dd_HH.mm.ss}\nas the format string. Example: {@code 2022-01-01_00.00.00} + f I field_46764 BACKUP_ATTEMPTS + m (Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/ForkJoinPool;)Ljava/util/concurrent/ForkJoinWorkerThread; method_28123 method_28123 + p 2 pool + m (Ljava/util/Map;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map; method_57109 mapWith + p 1 keyToAppend + p 2 valueToAppend + p 0 map + m (Ljava/util/List;Ljava/lang/Void;)Ljava/util/List; method_40082 method_40082 + p 1 void_ + m ()J method_659 getEpochTimeMs + c {@return the milliseconds passed since the Unix epoch}\n\n

This should be used to display or store the current time. {@link #getMeasuringTimeMs}\nshould be used for determining the duration between two calls.\n\n@see #getMeasuringTimeMs\n@see #getMeasuringTimeNano + m ()Lnet/minecraft/class_10207; method_27958 getIoWorkerExecutor + c {@return the executor for disk or network IO tasks} + m (Ljava/lang/Thread;Ljava/lang/Throwable;)V method_18347 uncaughtExceptionHandler + p 0 thread + p 1 t + m (Ljava/lang/String;)V method_38647 method_38647 + p 0 message + m (Ljava/lang/Throwable;)Ljava/lang/String; method_22321 getInnermostMessage + p 0 t + m (II)I method_68172 nextCapacity + c {@return the optimal capacity of a collection given the current capacity} + p 0 current + p 1 min + m ()Z method_72236 isOnAarch64 + m (Ljava/lang/Throwable;)Ljava/lang/Throwable; method_22320 getFatalOrPause + c Returns the provided fatal throwable, or pauses the game if\n{@link net.minecraft.SharedConstants#isDevelopment SharedConstants.isDevelopment}\nis {@code true}.\n\n

This method is usually chained with a {@code throw} statement:\n{@snippet :\nthrow Util.getFatalOrPause(theFatalException);\n}\n\n@return the provided throwable + p 0 t + c the throwable + m (Ljava/util/function/Function;Ljava/util/Map$Entry;)Ljava/lang/Object; method_65969 method_65969 + p 1 entry + m ()I method_65951 getAvailableBackgroundThreads + m ([Ljava/util/function/BooleanSupplier;)Z method_30627 attemptTasks + p 0 tasks + m ()J method_648 getMeasuringTimeNano + c {@return the current time in nanoseconds, to be used for measuring a duration}\n\n

This is not the Unix epoch time, and can only be used to determine the duration\nbetween two calls of this method.\n\n@see #getMeasuringTimeMs\n@see #getEpochTimeMs + m (Ljava/lang/String;)Lnet/minecraft/class_10207; method_28122 createWorker + p 0 name + m (Ljava/util/List;I)Lcom/mojang/serialization/DataResult; method_33141 decodeFixedLengthList + p 0 list + p 1 length + m (Ljava/lang/Object;Ljava/util/List;)Ljava/util/List; method_58272 withPrepended + p 0 valueToPrepend + p 1 list + m (Ljava/util/function/Predicate;)Ljava/util/function/Predicate; method_61199 or + p 0 a + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/datafixers/Typed; method_54908 readTyped + p 1 value + p 0 type + m (Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)Lcom/mojang/datafixers/types/Type; method_29191 getChoiceTypeInternal + p 0 typeReference + p 1 id + m ()Lnet/minecraft/class_156$class_158; method_668 getOperatingSystem + c {@return the operating system instance for the current platform}\n\n@implNote This uses the {@code os.name} system property to determine the operating system.\n@apiNote This is used for opening links. + m (Ljava/nio/file/Path;)Ljava/util/function/BooleanSupplier; method_30624 deleteTask + p 0 path + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;)Ljava/util/function/Predicate; method_61194 and + p 0 a + p 1 b + p 2 c + p 3 d + m ([ILnet/minecraft/class_5819;)I method_27172 getRandom + c {@return a random integer from {@code array}}\n\n@throws IllegalArgumentException if {@code array} is empty + p 1 random + p 0 array + m (Ljava/lang/String;Z)Lnet/minecraft/class_10207; method_27959 createIoWorker + p 1 daemon + p 0 namePrefix + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;)Ljava/util/function/Predicate; method_61190 and + p 1 b + p 0 a + m (Lit/unimi/dsi/fastutil/objects/ObjectArrayList;Lnet/minecraft/class_5819;)Ljava/util/List; method_43027 copyShuffled + c {@return the contents of {@code stream} copied to a list and then shuffled} + p 0 list + p 1 random + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;)Ljava/util/function/Predicate; method_61196 and + p 1 b + p 0 a + p 3 d + p 2 c + p 4 e + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/lang/Object;)Z method_61205 method_61205 + p 4 o + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/util/function/BooleanSupplier; method_30625 renameTask + p 1 dest + p 0 src + m (Ljava/util/List;)Ljava/util/function/ToIntFunction; method_43658 lastIndexGetter + c {@return a function that, when given a value in {@code values}, returns the last\nindex of the value in the list}\n\n@implNote Unlike {@link java.util.List#lastIndexOf}, the returned function will\nreturn {@code 0} when given values not in the passed list.\n\n@see #lastIdentityIndexGetter + p 0 values + m (Ljava/util/function/Consumer;Ljava/lang/String;Ljava/lang/String;)V method_29189 method_29189 + p 2 string + m (Ljava/util/function/Supplier;)Ljava/lang/Object; method_656 make + c {@return the value supplied from {@code factory}}\n\n

This is useful when initializing static fields:\n

{@code\nprivate static final Map MAP = Util.make(() -> {\n    Map map = new HashMap<>();\n    map.put("example", "hello");\n    return map;\n});\n}
+ p 0 factory + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; method_43373 combineCancellable + c Combines a list of {@code futures} into one future that holds a list\nof their results.\n\n

The returned future is fail-fast; if any of the input futures fails,\nthis returned future will be immediately completed exceptionally than\nwaiting for other input futures. Additionally, all other futures will\nbe canceled.\n\n@return the combined future\n@see #combine(List)\n@see #combineSafe(List) + p 0 futures + m (Ljava/util/function/BiFunction;)Ljava/util/function/BiFunction; method_34865 memoize + p 0 biFunction + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;Z)Z method_41204 backupAndReplace + c Copies {@code current} to {@code backup} and then replaces {@code current} with {@code newPath}. + p 3 noRestoreOnFail + c if {@code true}, does not restore the current file when replacing fails + p 1 newPath + p 2 backup + p 0 current + m (Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)Lcom/mojang/datafixers/types/Type; method_29187 getChoiceType + p 1 id + p 0 typeReference + m (Ljava/util/Optional;Ljava/util/function/Consumer;Ljava/lang/Runnable;)Ljava/util/Optional; method_17974 ifPresentOrElse + c If {@code optional} has value, calls {@code presentAction} with the value,\notherwise calls {@code elseAction}.\n\n@return the passed {@code optional} + p 0 optional + p 2 elseAction + p 1 presentAction + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/Type;Ljava/util/function/UnaryOperator;)Lcom/mojang/datafixers/Typed; method_54907 apply + p 0 typed + p 2 modifier + p 1 type + m ()J method_658 getMeasuringTimeMs + c {@return the current time in milliseconds, to be used for measuring a duration}\n\n

This is not the Unix epoch time, and can only be used to determine the duration\nbetween two calls of this method.\n\n@see #getMeasuringTimeNano\n@see #getEpochTimeMs + m (Ljava/util/List;)Ljava/util/function/Predicate; method_56616 anyOf + p 0 predicates + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/lang/Object;)Z method_61201 method_61201 + p 2 o + m (Ljava/lang/String;)Ljava/net/URI; method_60931 validateUri + p 0 uri + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/lang/Object;)Z method_61203 method_61203 + p 3 o + m (Ljava/util/Map;Lcom/google/common/base/Function;)Ljava/util/Map; method_65967 transformMapValuesLazy + p 0 map + p 1 transformer + m ()V method_29476 startTimerHack + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;)Ljava/util/function/Predicate; method_61192 and + p 0 a + p 1 b + p 2 c + m ([Ljava/lang/Object;Lnet/minecraft/class_5819;)Ljava/util/List; method_43253 copyShuffled + c {@return the contents of {@code array} copied to a list and then shuffled} + p 1 random + p 0 array + m (Ljava/util/function/Consumer;Lit/unimi/dsi/fastutil/objects/ObjectArrayList;ILjava/lang/Object;Ljava/lang/Throwable;)V method_43372 method_43372 + p 3 value + p 4 throwable + m (Ljava/util/function/Function;)Lnet/minecraft/class_8105; method_48746 cachedMapper + p 0 mapper + m (Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object; method_645 previous + c {@return the item preceding {@code object} in {@code iterable}}\n\n

If {@code object} is not in {@code iterable}, this returns the last item of the iterable.\n{@code object} is compared using the {@code ==} operator. + p 1 object + p 0 iterable + m (Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; method_43499 waitAndApply + c Runs tasks using the prepare-apply model, such as creation of a {@link\nnet.minecraft.server.SaveLoader}.\n\n@apiNote This method takes a function that supplies an executor to use in the\napply stage. Inside the function, callers should run the preparation,\nand use the passed executor for applying. + p 0 resultFactory + c a function that takes the apply-stage executor and returns the future + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_29775 relativeCopy + c Copies a file contained in the folder {@code src} to the folder {@code dest}.\nThis will replicate any path structure that may exist between {@code src} and {@code toCopy}. + p 1 dest + p 0 src + p 2 toCopy + m (Ljava/nio/file/spi/FileSystemProvider;)Z method_37153 method_37153 + p 0 fileSystemProvider + m (Ljava/lang/String;)V method_33560 pause + p 0 message + m ()Lnet/minecraft/class_10207; method_55473 getDownloadWorkerExecutor + c {@return the executor for download tasks} + m ([Ljava/lang/Object;Lnet/minecraft/class_5819;)Ljava/lang/Object; method_27173 getRandom + c {@return a random item from {@code array}}\n\n@throws IllegalArgumentException if {@code array} is empty + p 1 random + p 0 array + m (Ljava/util/function/Consumer;)V method_38646 setMissingBreakpointHandler + p 0 missingBreakpointHandler + m ([Ljava/util/function/Predicate;)Ljava/util/function/Predicate; method_61208 or + p 0 predicates + m (Ljava/util/concurrent/CompletableFuture;Ljava/util/List;Ljava/lang/Throwable;)V method_43369 method_43369 + p 2 throwable + m (IILjava/util/List;)Z method_59901 isSymmetrical + p 2 list + p 1 height + p 0 width + m (Lnet/minecraft/class_5462;I)Ljava/lang/String; method_30623 method_30623 + p 1 charCode + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/lang/Object;)Z method_61207 method_61207 + p 5 o + m (Ljava/util/stream/LongStream;I)Lcom/mojang/serialization/DataResult; method_51822 decodeFixedLengthArray + p 1 length + p 0 stream + m (Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object; method_660 next + c {@return the item succeeding {@code object} in {@code iterable}}\n\n@implNote If {@code object} is {@code null}, this returns the first item of the iterable.\nIf {@code object} is not in {@code iterable}, this enters into an infinite loop.\n{@code object} is compared using the {@code ==} operator. + p 1 object + p 0 iterable + m (Ljava/util/stream/IntStream;Lnet/minecraft/class_5819;)Lit/unimi/dsi/fastutil/ints/IntArrayList; method_43251 shuffle + c {@return the contents of {@code stream} copied to a list and then shuffled} + p 0 stream + p 1 random + m (ILjava/lang/String;[Ljava/util/function/BooleanSupplier;)Z method_30622 attemptTasks + p 1 taskName + p 0 retries + p 2 tasks + m ([Ljava/util/function/Predicate;Ljava/lang/Object;)Z method_61209 method_61209 + p 1 o + m ()I method_38648 getMaxBackgroundThreads + m (Ljava/util/List;Ljava/lang/Object;)Ljava/util/List; method_57108 withAppended + p 0 list + p 1 valueToAppend + m ([Ljava/util/function/Predicate;Ljava/lang/Object;)Z method_56614 method_56614 + p 1 o + m (Ljava/lang/String;Ljava/lang/Throwable;)V method_39977 logErrorOrPause + c Logs an error-level message and pauses the game if\n{@link net.minecraft.SharedConstants#isDevelopment SharedConstants.isDevelopment}\nis {@code true}. + p 1 throwable + c a throwable related to the log message + p 0 message + c the log message + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;)Ljava/util/function/Predicate; method_61204 or + p 3 d + p 1 b + p 2 c + p 0 a + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/lang/Object;)Z method_61197 method_61197 + p 5 o + m ()Ljava/util/function/Predicate; method_61211 or + m (Ljava/util/List;Lnet/minecraft/class_5819;)V method_43028 shuffle + c Shuffles {@code list}, modifying the passed list in place. + p 0 list + p 1 random + m (Ljava/lang/String;)V method_33559 logErrorOrPause + c Logs an error-level message and pauses the game if\n{@link net.minecraft.SharedConstants#isDevelopment SharedConstants.isDevelopment}\nis {@code true}. + p 0 message + c the log message + m ()V method_18350 shutdownExecutors + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; method_33791 combineSafe + c Combines a list of {@code futures} into one future that holds a list\nof their results.\n\n

This version expects all futures to complete successfully and is not\noptimized in case any of the input futures throws.\n\n@return the combined future\n@see #combine(List) + p 0 futures + c the completable futures to combine + m (Ljava/lang/Throwable;)V method_24155 throwUnchecked + c Throws {@code t} if it's a {@link RuntimeException} (or any of its subclass), otherwise\n{@code t} wrapped in a RuntimeException.\n\n

{@link Error} is wrapped as well, despite being unchecked. + p 0 t + m (Ljava/util/List;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_43370 combine + p 0 futures + p 1 exceptionHandler + m (Ljava/util/List;)Ljava/util/function/ToIntFunction; method_53909 lastIdentityIndexGetter + c {@return a function that, when given a value in {@code values}, returns the last\nindex of the value in the list using identity comparison}\n\n@implNote Unlike {@link java.util.List#lastIndexOf}, the returned function will\nreturn {@code 0} when given values not in the passed list.\n\n@see #lastIndexGetter + p 0 values + m (Ljava/lang/Object;)Z method_56612 method_56612 + p 0 o + m (Lnet/minecraft/class_2769;Ljava/lang/Object;)Ljava/lang/String; method_650 getValueAsString + p 1 value + p 0 property + m (Ljava/util/Map;Ljava/util/function/Function;)Ljava/util/Map; method_65968 transformMapValues + p 1 transformer + p 0 map + m (Ljava/util/function/Supplier;Ljava/util/function/Supplier;)Ljava/util/function/Supplier; method_41238 debugSupplier + p 1 messageSupplier + p 0 supplier + m (Ljava/lang/Runnable;Ljava/lang/String;)V method_64122 runInNamedZone + p 1 name + p 0 runnable + m (Ljava/util/stream/IntStream;I)Lcom/mojang/serialization/DataResult; method_29190 decodeFixedLengthArray + p 1 length + p 0 stream + m (Ljava/nio/file/Path;)Ljava/util/function/BooleanSupplier; method_30628 deletionVerifyTask + p 0 path + m (Ljava/util/function/Function;)Ljava/util/function/Function; method_34866 memoize + p 0 function + m (Ljava/util/List;Lnet/minecraft/class_5819;)Ljava/lang/Object; method_32309 getRandom + c {@return a random item from {@code list}}\n\n@throws IllegalArgumentException if {@code list} is empty\n\n@see #getRandomOrEmpty + p 1 random + p 0 list + m (Ljava/lang/Object;)Z method_56615 method_56615 + p 0 o + m (Ljava/util/List;Lnet/minecraft/class_5819;)Ljava/util/Optional; method_40083 getRandomOrEmpty + c {@return an {@link Optional} of a random item from {@code list}, or an empty optional\nif the list is empty}\n\n@see #getRandom(List, Random) + p 0 list + p 1 random + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;)Ljava/util/function/Predicate; method_61200 or + p 1 b + p 0 a + m (Ljava/util/List;)Ljava/util/function/Predicate; method_56613 allOf + p 0 predicates + m (Ljava/util/stream/Stream;Lnet/minecraft/class_5819;)Ljava/util/List; method_43252 copyShuffled + c {@return the contents of {@code stream} copied to a list and then shuffled} + p 1 random + p 0 stream + m ()Lnet/minecraft/class_10207; method_18349 getMainWorkerExecutor + c {@return the main worker executor for miscellaneous asynchronous tasks} + m (Ljava/nio/file/Path;)Ljava/util/function/BooleanSupplier; method_30629 existenceCheckTask + p 0 path + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/lang/Object;)Z method_61193 method_61193 + p 3 o + m (Ljava/util/function/Predicate;)Ljava/util/function/Predicate; method_61189 and + p 0 a + m (Ljava/lang/Class;Ljava/util/function/Function;)Ljava/util/Map; method_63541 mapEnum + p 1 mapper + p 0 enumClass + m (Ljava/lang/String;Lnet/minecraft/class_5462;)Ljava/lang/String; method_30309 replaceInvalidChars + p 0 string + p 1 predicate + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;)Ljava/util/function/Predicate; method_61206 or + p 4 e + p 3 d + p 2 c + p 1 b + p 0 a + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_30626 backupAndReplace + c Copies {@code current} to {@code backup} and then replaces {@code current} with {@code newPath}. + p 0 current + p 2 backup + p 1 newPath + m (Lnet/minecraft/class_2378;Ljava/lang/Object;)Ljava/lang/String; method_57107 registryValueToString + p 1 value + p 0 registry + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/lang/Object;)Z method_61195 method_61195 + p 4 o + m (Ljava/lang/String;Ljava/util/function/Consumer;)Ljava/util/function/Consumer; method_29188 addPrefix + c {@return a consumer that first prepends {@code prefix} to its input\nstring and passes the result to {@code consumer}}\n\n@apiNote This is useful in codec-based deserialization when passing the\nerror consumer to some methods, e.g. {@code\nUtil.addPrefix("Could not parse Example", LOGGER::error)}. + p 0 prefix + p 1 consumer + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; method_652 combine + c Combines a list of {@code futures} into one future that holds a list\nof their results.\n\n

The returned future is fail-fast; if any of the input futures fails,\nthis returned future will be immediately completed exceptionally than\nwaiting for other input futures.\n\n@return the combined future\n@see #combineCancellable(List)\n@see #combineSafe(List) + p 0 futures + c the completable futures to combine + m (Ljava/lang/Object;Ljava/util/function/Consumer;)Ljava/lang/Object; method_654 make + c {@return {@code object} initialized with {@code initializer}}\n\n

This is useful when initializing static fields:\n

{@code\nprivate static final Map MAP = Util.make(new HashMap<>(), (map) -> {\n    map.put("example", "hello");\n});\n}
+ p 1 initializer + p 0 object + m (Ljava/lang/Runnable;Ljava/util/function/Supplier;)Ljava/lang/Runnable; method_18839 debugRunnable + p 1 messageSupplier + p 0 runnable + m (Ljava/lang/String;II)I method_27761 moveCursor + c Moves the {@code cursor} in the {@code string} by a {@code delta} amount.\nSkips surrogate characters. + p 0 string + p 1 cursor + p 2 delta + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/Dynamic;Z)Lcom/mojang/datafixers/Typed; method_55333 readTyped + p 0 type + p 1 value + p 2 allowPartial + m ()Ljava/util/stream/Collector; method_664 toMap + m ([Ljava/util/function/Predicate;)Ljava/util/function/Predicate; method_61198 and + p 0 predicates + m ()Ljava/util/stream/Collector; method_58579 toArrayList + m ()Ljava/lang/String; method_44893 getFormattedCurrentTime + c {@return the current time formatted using {@link #DATE_TIME_FORMATTER}} + m (Ljava/util/function/Function;Ljava/util/function/Predicate;)Ljava/lang/Object; method_43498 waitAndApply + c Runs tasks using the prepare-apply model.\n\n@apiNote This method takes a function that supplies an executor to use in the\napply stage. Inside the function, callers should run the preparation,\nand use the passed executor for applying. + p 1 donePredicate + c a predicate that, given the result, checks whether applying has finished + p 0 resultFactory + c a function that takes the apply-stage executor and returns the preliminary result + m ()Ljava/util/function/Predicate; method_61210 and + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/lang/Object;)Z method_61191 method_61191 + p 2 o + m (Ljava/time/format/FormatStyle;)Ljava/time/format/DateTimeFormatter; method_75862 getDefaultLocaleFormatter + p 0 style + m (Ljava/lang/String;Lnet/minecraft/class_2960;)Ljava/lang/String; method_646 createTranslationKey + c {@return the translation key constructed from {@code type} and {@code id}}\n\n

If {@code id} is {@code null}, {@code unregistered_sadface} is used as the ID.\n\n@see Identifier#toTranslationKey(String) + p 0 type + p 1 id + m (Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicInteger;ZLjava/lang/Runnable;)Ljava/lang/Thread; method_27956 method_27956 + p 3 runnable + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Ljava/util/function/Predicate;)Ljava/util/function/Predicate; method_61202 or + p 0 a + p 1 b + p 2 c +c net/minecraft/class_156$class_158 net/minecraft/util/Util$OperatingSystem + c An enum representing the operating system of the current platform.\nThis defines the behavior for opening links.\nThe current one can be obtained via {@link Util#getOperatingSystem}. + f Ljava/lang/String; field_34894 name + f Lnet/minecraft/class_156$class_158; field_1134 SOLARIS + f Lnet/minecraft/class_156$class_158; field_1133 WINDOWS + f Lnet/minecraft/class_156$class_158; field_1137 OSX + f Lnet/minecraft/class_156$class_158; field_1135 LINUX + f Lnet/minecraft/class_156$class_158; field_1132 UNKNOWN + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m (Ljava/lang/String;)V method_670 open + c Opens {@code uri}. If this points to an HTTP(S) URI, it is usually opened using\nthe system's default browser. Otherwise, it is opened directly.\n\n

Always validate the passed URI's schema as some values can\nexecute code. + p 1 uri + m ()Ljava/lang/String; method_38649 getName + m (Ljava/io/File;)V method_672 open + c Opens {@code file}.\n\n

Do not pass untrusted file to this method as some values can\nexecute code. + p 1 file + m (Ljava/nio/file/Path;)V method_60932 open + p 1 path + m (Ljava/net/URI;)[Ljava/lang/String; method_674 getURIOpenCommand + p 1 uri + m (Ljava/net/URI;)V method_673 open + c Opens {@code uri}. If this points to an HTTP(S) URI, it is usually opened using\nthe system's default browser. Otherwise, it is opened directly.\n\n

Always validate the passed URI's schema as some values can\nexecute code. + p 1 uri +c net/minecraft/class_156$2 net/minecraft/util/Util$2 + f Ljava/util/Map; field_29655 cache + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 object +c net/minecraft/class_156$3 net/minecraft/util/Util$3 + f Ljava/util/Map; field_29657 cache + m (Ljava/util/function/BiFunction;Lcom/mojang/datafixers/util/Pair;)Ljava/lang/Object; method_34867 method_34867 + p 1 pair + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 a + p 2 b +c net/minecraft/class_156$4 net/minecraft/util/Util$4 + m (Ljava/lang/Throwable;)V onTermination onTermination + p 1 throwable +c net/minecraft/class_10080 net/minecraft/client/render/entity/state/VillagerEntityRenderState + f Z field_53605 headRolling + f Lnet/minecraft/class_3850; field_53606 villagerData +c net/minecraft/class_155 net/minecraft/SharedConstants + f Z field_62776 DEBUG_ENABLED + f [C field_1126 INVALID_CHARS_LEVEL_NAME + f Z field_62774 DEBUG_PRINT_PROPERTIES + f Ljava/lang/String; field_34373 CURRENT_SERIES + f I field_29737 SNBT_TOO_OLD_THRESHOLD + f I field_29739 DATA_PACK_VERSION + f I field_29729 CHUNK_WIDTH + f I field_29719 DEFAULT_PORT + f Z field_1125 isDevelopment + f Z field_36325 CRASH_ON_UNCAUGHT_THREAD_EXCEPTION + f I field_29731 COMMAND_MAX_LENGTH + f I field_29735 RELEASE_TARGET_PROTOCOL_VERSION + f I field_29703 TICKS_PER_MINUTE + f Z field_29709 IS_DEVELOPMENT_VERSION + f I field_49017 EXPANDED_MACRO_COMMAND_MAX_LENGTH + f Lnet/minecraft/class_6489; field_16742 gameVersion + f Z field_25135 useChoiceTypeRegistrations + c Specifies whether Minecraft should use choice type registrations from the game's schema when entity types or block entity types are created. + f I field_29704 TICKS_PER_IN_GAME_DAY + f I field_29738 RESOURCE_PACK_VERSION + f Lio/netty/util/ResourceLeakDetector$Level; field_1124 RESOURCE_LEAK_DETECTOR_DISABLED + f I field_29730 DEFAULT_WORLD_HEIGHT + f I field_29732 WORLD_VERSION + f I field_29702 TICKS_PER_SECOND + f Ljava/lang/String; field_29740 DATA_VERSION_KEY + f Z field_34371 DEBUG_BIOME_SOURCE + f Ljava/lang/String; field_62775 DEBUG_PREFIX + f Z field_60328 RENDER_UI_LAYERING_RECTANGLES + f Z field_61885 SHUFFLE_MODELS + f Z field_46154 UNLOCK_ALL_TRADES + f Z field_35006 OPEN_INCOMPATIBLE_WORLDS + f Z field_39090 BYPASS_REALMS_VERSION_CHECK + f Z field_62999 VERBOSE_COMMAND_ERRORS + f Z field_33753 UI_NARRATION + f Z field_39962 VALIDATE_RESOURCE_PATH_CASE + f Z field_44780 DONT_SEND_TELEMETRY_TO_BACKEND + f Z field_58199 CURSOR_POS + f Z field_62773 CHASE_COMMAND + f Z field_62772 PANORAMA_SCREENSHOT + f Z field_62771 POI + f Z field_47177 TRIAL_SPAWNER_DETECTS_SHEEP_AS_PLAYERS + f Z field_47178 FORCE_ONBOARDING_SCREEN + f Z field_47176 BREEZE_MOB + f Z field_33555 DISABLE_ORE_VEINS + f Z field_33554 ORE_VEINS + f Z field_37273 SCULK_CATALYST + f Z field_29710 DISABLE_LIQUID_SPREADING + f Z field_29711 ONLY_GENERATE_HALF_THE_WORLD + f Z field_29712 DISABLE_FLUID_GENERATION + f Z field_29713 DISABLE_AQUIFERS + f Z field_29715 DISABLE_SURFACE + f Z field_29716 DISABLE_CARVERS + f Z field_29717 DISABLE_STRUCTURES + f Z field_29718 DISABLE_FEATURES + f Z field_63665 ACTIVE_TEXT_AREAS + f Z field_29700 CARVERS + f Z field_59991 SHUFFLE_UI_RENDERING_ORDER + f Z field_29721 SUBTITLES + f I field_29722 FAKE_LATENCY_MS + f I field_29723 FAKE_JITTER_MS + f Z field_29724 COMMAND_STACK_TRACES + f Z field_29725 WORLD_RECREATE + f Z field_29726 SHOW_SERVER_DEBUG_VALUES + f Z field_29754 SHAPES + f Z field_29755 NEIGHBORSUPDATE + f Z field_29756 STRUCTURES + f Z field_29748 HOTKEYS + f Z field_60959 ENTITY_BLOCK_INTERSECTION + f Z field_39460 SOCIAL_INTERACTIONS + f Z field_29750 PATHFINDING + f Z field_63000 DEV_COMMANDS + f Z field_41533 FORCE_TELEMETRY + f Z field_35652 FEATURE_COUNT + f Z field_52311 SHOW_LOCAL_SERVER_ENTITY_HIT_BOXES + f Z field_52319 EXPERIMENTAL_REDSTONEWIRE_UPDATE_ORDER + f Z field_34370 JFR_PROFILING_ENABLE_LEVEL_LOADING + f Z field_29690 BRAIN + f Z field_29691 BEES + f Z field_29692 RAIDS + f Z field_29693 BLOCK_BREAK + f Z field_29695 MONITOR_TICK_TIMES + f Z field_29696 KEEP_JIGSAW_BLOCKS_DURING_STRUCTURE_GEN + f Z field_29697 DONT_SAVE_WORLD + f Z field_29698 LARGE_DRIPSTONE + f Z field_35563 ALLOW_LOW_SIM_DISTANCE + f Z field_29680 GAME_EVENT_LISTENERS + f Z field_29681 DUMP_TEXTURE_ATLAS + f Z field_29682 DUMP_INTERPOLATED_TEXTURE_FRAMES + f Z field_29683 STRUCTURE_EDIT_MODE + f Z field_29684 SAVE_STRUCTURES_AS_SNBT + f Z field_35438 DISABLE_BLENDING + f Z field_29685 SYNCHRONOUS_GL_LOGS + f Z field_35439 DISABLE_BELOW_ZERO_RETROGENERATION + f Z field_29686 VERBOSE_SERVER_EVENTS + f Z field_34369 AQUIFERS + f Z field_29687 NAMED_RUNNABLES + f Z field_34368 IGNORE_LOCAL_MOB_CAP + f Z field_29688 GOAL_SELECTOR + f Z field_29689 VILLAGE_SECTIONS + f Z field_48778 VAULT_DETECTS_SHEEP_AS_PLAYERS + f Z field_60521 DEFAULT_SKIN_OVERRIDE + m (Ljava/lang/String;)I method_74454 debugIntProperty + p 0 name + m (Ljava/lang/String;)Z method_74453 debugProperty + p 0 name + m (Ljava/lang/String;)Ljava/lang/String; method_74451 getDebugPropertyName + p 0 name + m (Lnet/minecraft/class_1923;)Z method_37896 isOutsideGenerationArea + p 0 pos + m (Lnet/minecraft/class_6489;)V method_34872 setGameVersion + p 0 gameVersion + m (Ljava/lang/String;)Z method_74452 propertyIsSet + p 0 name + m ()I method_31372 getProtocolVersion + m ()Lnet/minecraft/class_6489; method_16673 getGameVersion + m ()V method_36208 createGameVersion +c net/minecraft/class_10081 net/minecraft/client/render/entity/state/WardenEntityRenderState + f F field_53608 heartAlpha + f F field_53607 tendrilAlpha + f Lnet/minecraft/class_7094; field_53609 roaringAnimationState + f Lnet/minecraft/class_7094; field_53610 sniffingAnimationState + f Lnet/minecraft/class_7094; field_53613 attackingAnimationState + f Lnet/minecraft/class_7094; field_53614 chargingSonicBoomAnimationState + f Lnet/minecraft/class_7094; field_53611 emergingAnimationState + f Lnet/minecraft/class_7094; field_53612 diggingAnimationState +c net/minecraft/class_1922 net/minecraft/world/BlockView + c Represents a scoped, read-only view of block states, fluid states and block entities. + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2586; method_8321 getBlockEntity + c {@return the block entity at {@code pos}, or {@code null} if there is none} + p 1 pos + m (Lnet/minecraft/class_238;)Ljava/util/stream/Stream; method_29546 getStatesInBox + p 1 box + m (Lnet/minecraft/class_265;Ljava/util/function/Supplier;)D method_30346 getDismountHeight + p 1 blockCollisionShape + p 2 belowBlockCollisionShapeGetter + m (Lnet/minecraft/class_5702;)Lnet/minecraft/class_3965; method_32880 raycast + p 1 context + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_8320 getBlockState + c {@return the block state at {@code pos}}\n\n@implNote This returns the block state for {@link net.minecraft.block.Blocks#VOID_AIR}\nif the Y coordinate is outside the height limit. + p 1 pos + m (Lit/unimi/dsi/fastutil/longs/LongSet;Lnet/minecraft/class_243;Lnet/minecraft/class_238;Lnet/minecraft/class_1922$class_10781;)I method_61715 collectCollisionsBetween + p 2 box + p 3 visitor + p 0 visited + p 1 delta + m (Lnet/minecraft/class_2338;)D method_30347 getDismountHeight + p 1 pos + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_238;Lnet/minecraft/class_1922$class_10781;)Z method_67677 collectCollisionsBetween + p 3 visitor + p 2 box + p 1 to + p 0 from + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_3610; method_8316 getFluidState + c {@return the fluid state at {@code pos}}\n\n@implNote This returns the fluid state for {@link net.minecraft.fluid.Fluids#EMPTY}\nif the Y coordinate is outside the height limit. + p 1 pos + m (Lnet/minecraft/class_3959;)Lnet/minecraft/class_3965; method_17746 method_17746 + p 0 innerContext + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2591;)Ljava/util/Optional; method_35230 getBlockEntity + p 1 pos + p 2 type + m (Lnet/minecraft/class_2338;)I method_8317 getLuminance + p 1 pos + m (Lnet/minecraft/class_5702;)Lnet/minecraft/class_3965; method_32882 method_32882 + p 0 innerContext + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_2338;Lnet/minecraft/class_265;Lnet/minecraft/class_2680;)Lnet/minecraft/class_3965; method_17745 raycastBlock + p 5 state + p 3 pos + p 4 shape + p 1 start + p 2 end + m (Lnet/minecraft/class_5702;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3965; method_32881 method_32881 + p 1 innerContext + p 2 pos + m (Lnet/minecraft/class_3959;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3965; method_17743 method_17743 + p 2 pos + p 1 innerContext + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Ljava/lang/Object;Ljava/util/function/BiFunction;Ljava/util/function/Function;)Ljava/lang/Object; method_17744 raycast + p 0 start + p 4 missFactory + p 3 blockHitFactory + p 2 context + p 1 end + m (Lnet/minecraft/class_3959;)Lnet/minecraft/class_3965; method_17742 raycast + p 1 context +c net/minecraft/class_1922$class_10781 net/minecraft/world/BlockView$CollisionVisitor + m (Lnet/minecraft/class_2338;I)Z visit visit + p 2 version + p 1 pos +c net/minecraft/class_10084 net/minecraft/client/render/entity/state/WitherSkullEntityRenderState + f Z field_53621 charged + f Lnet/minecraft/class_5598$class_11652; field_61825 skullState +c net/minecraft/class_10085 net/minecraft/client/render/entity/state/WolfEntityRenderState + f Lnet/minecraft/class_2960; field_53633 DEFAULT_TEXTURE + f F field_53628 shakeProgress + f Lnet/minecraft/class_2960; field_53630 texture + f F field_53629 furWetBrightnessMultiplier + f F field_53626 tailAngle + f F field_53627 begAnimationProgress + f Lnet/minecraft/class_1767; field_53631 collarColor + f Lnet/minecraft/class_1799; field_53632 bodyArmor + f Z field_53624 angerTime + f Z field_53625 inSittingPose + m (F)F method_62618 getRoll + p 1 shakeOffset +c net/minecraft/class_1921 net/minecraft/client/render/RenderLayer + c Defines settings that should be used when rendering something.\n\n

This includes {@linkplain VertexFormat vertex format}, {@linkplain\nVertexFormat.DrawMode draw mode}, {@linkplain\nnet.minecraft.client.gl.ShaderProgram shader program}, texture,\nsome uniform variables values (such as {@code LineWidth} when using the\n{@link #getLines rendertype_lines} shader\nprogram), and some GL state values (such as whether to enable depth\ntesting).\n\n

Before drawing something, a render layer setups these states. After\ndrawing something, a render layer resets those states to default. + f Ljava/lang/String; field_64011 name + f Ljava/util/Optional; field_64014 affectedOutline + f Lnet/minecraft/class_12247; field_64013 renderSetup + m (Lnet/minecraft/class_12247;Lnet/minecraft/class_12247$class_12338;)Lnet/minecraft/class_1921; method_75939 method_75939 + p 1 texture + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596; method_23033 getDrawMode + m ()Z method_23037 hasCrumbling + m ()Lcom/mojang/blaze3d/vertex/VertexFormat; method_23031 getVertexFormat + m ()Z method_24295 isOutline + m ()I method_22722 getExpectedBufferSize + m ()Lcom/mojang/blaze3d/pipeline/RenderPipeline; method_73243 getRenderPipeline + m ()Ljava/util/Optional; method_23289 getAffectedOutline + m (Lnet/minecraft/class_9801;)V method_60895 draw + p 1 buffer + m ()Z method_60894 isTranslucent + m (Ljava/lang/String;Lnet/minecraft/class_12247;)V + p 2 renderSetup + p 1 name + m (Ljava/lang/String;Lnet/minecraft/class_12247;)Lnet/minecraft/class_1921; method_75940 of + p 0 name + p 1 renderSetup + m ()Z method_43332 areVerticesNotShared +c net/minecraft/class_1920 net/minecraft/world/BlockRenderView + m (Lnet/minecraft/class_1944;Lnet/minecraft/class_2338;)I method_8314 getLightLevel + p 2 pos + p 1 type + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_6539;)I method_23752 getColor + p 2 colorResolver + p 1 pos + m (Lnet/minecraft/class_2338;I)I method_22335 getBaseLightLevel + p 2 ambientDarkness + p 1 pos + m (Lnet/minecraft/class_2350;Z)F method_24852 getBrightness + p 2 shaded + p 1 direction + m (Lnet/minecraft/class_2338;)Z method_8311 isSkyVisible + c {@return if the sky is visible at {@code pos}}\n\n@implNote This returns {@code true} if the sky light level\nat {@code pos} is the maximum, {@code 15}.\n\n@see WorldView#isSkyVisibleAllowingSea + p 1 pos + m ()Lnet/minecraft/class_3568; method_22336 getLightingProvider +c net/minecraft/class_10082 net/minecraft/client/render/entity/state/WitchEntityRenderState + f I field_53615 id + f Z field_53616 holdingItem + f Z field_55321 holdingPotion +c net/minecraft/class_10083 net/minecraft/client/render/entity/state/WitherEntityRenderState + f Z field_53620 armored + f F field_53619 invulnerableTimer + f [F field_53618 sideHeadYaws + f [F field_53617 sideHeadPitches +c net/minecraft/class_1926 net/minecraft/world/biome/FoliageColors + f I field_55217 DEFAULT + f I field_55216 BIRCH + f I field_55215 SPRUCE + f [I field_9183 colorMap + f I field_55218 MANGROVE + m ([I)V method_8340 setColorMap + p 0 pixels + m (DD)I method_8344 getColor + p 2 downfall + p 0 temperature +c net/minecraft/class_10088 net/minecraft/client/render/entity/state/ZombifiedPiglinEntityRenderState + f Z field_53637 attacking +c net/minecraft/class_10089 net/minecraft/unused/packageinfo/PackageInfo10089 +c net/minecraft/class_1924 net/minecraft/world/EntityView + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;Ljava/util/function/Predicate;)Ljava/util/List; method_8333 getOtherEntities + c Computes a list of entities within some box, excluding the given entity, that satisfy the given predicate.\n\n@return a list of entities within a box, excluding the given entity, all satisfying the given predicate + p 2 box + c the box in which to search for entities + p 3 predicate + c a predicate which entities must satisfy in order to be included in the returned list + p 1 except + c the entity the box logically surrounds; this entity is ignored if it is inside the box + m ()Ljava/util/List; method_18456 getPlayers + m (Ljava/util/UUID;)Lnet/minecraft/class_1657; method_18470 getPlayerByUuid + p 1 uuid + m (Lnet/minecraft/class_5575;Lnet/minecraft/class_238;Ljava/util/function/Predicate;)Ljava/util/List; method_18023 getEntitiesByType + p 2 box + p 3 predicate + p 1 filter + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Ljava/util/List; method_20743 getEntityCollisions + p 2 box + p 1 entity + m (Ljava/lang/Class;Lnet/minecraft/class_238;Ljava/util/function/Predicate;)Ljava/util/List; method_8390 getEntitiesByClass + c Computes a list of entities within some box whose runtime Java class is the same as or is\na subclass of the given class.\n\n@return a list of entities within the box whose runtime class is a subclass of the given class + p 1 entityClass + c the class the list of entities must extend + p 2 box + c the box in which to search for entities + p 3 predicate + c a predicate which entities must satisfy in order to be included in the returned list + m (Ljava/lang/Class;Lnet/minecraft/class_238;)Ljava/util/List; method_18467 getNonSpectatingEntities + p 1 entityClass + p 2 box + m (Lnet/minecraft/class_1297;D)Lnet/minecraft/class_1657; method_18460 getClosestPlayer + p 2 maxDistance + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Ljava/util/List; method_8335 getOtherEntities + c Computes a list of entities within some box, excluding the given entity, that are not spectators.\n\n@return a list of entities within a box, excluding the given entity\n@see #getOtherEntities(Entity, Box, Predicate)\n@see Entity#isSpectator() + p 1 except + c the entity the box logically surrounds; this entity is ignored if it is inside the box + p 2 box + c the box in which to search for entities + m (DDDD)Z method_18458 isPlayerInRange + p 1 x + p 3 y + p 5 z + p 7 range + m (DDDDLjava/util/function/Predicate;)Lnet/minecraft/class_1657; method_8604 getClosestPlayer + p 1 x + p 7 maxDistance + p 9 targetPredicate + p 3 y + p 5 z + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_265;)Z method_8611 doesNotIntersectEntities + c {@return {@code true} if {@code shape} does not intersect\nwith non-spectator entities except {@code except}}\n\n@implNote This always returns {@code true} if {@code shape} is {@linkplain VoxelShape#isEmpty empty}. + p 1 except + p 2 shape + m (DDDDZ)Lnet/minecraft/class_1657; method_18459 getClosestPlayer + p 1 x + p 3 y + p 5 z + p 7 maxDistance + p 9 ignoreCreative +c net/minecraft/class_10086 net/minecraft/client/render/entity/state/ZombieEntityRenderState + f Z field_53634 attacking + f Z field_53635 convertingInWater +c net/minecraft/class_1923 net/minecraft/util/math/ChunkPos + c An immutable pair of two integers representing the X and Z coordinates of a chunk.\n\n

Chunk positions are usually serialized as a {@code long}. + f I field_9180 z + f Lnet/minecraft/class_1923; field_35107 ORIGIN + c The origin of the chunk position, {@code 0, 0}. + f I field_54975 MAX_COORDINATE + f Lcom/mojang/serialization/Codec; field_54241 CODEC + f Lnet/minecraft/class_9139; field_54242 PACKET_CODEC + f I field_9181 x + f J field_17348 MARKER + c A {@code long}-serialized chunk position {@code 1875066, 1875066}. This is a\nspecial value used as a marker. + m (II)I method_42307 hashCode + p 1 z + p 0 x + m ()J method_8324 toLong + c {@return the chunk position serialized as {@code long}}\n\n@see #toLong(int, int) + m (II)J method_8331 toLong + c {@return the chunk position serialized as {@code long}}\n\n

This returns {@code chunkX | (chunkZ << 32)}.\n\n@see #toLong() + p 1 chunkZ + p 0 chunkX + m ()I method_17885 getRegionX + m (J)V + p 1 pos + m ()I method_33942 getCenterZ + m ()I method_8328 getStartZ + m (Lnet/minecraft/class_1923;)I method_52566 getSquaredDistance + p 1 pos + m (III)Lnet/minecraft/class_2338; method_35231 getBlockPos + p 2 y + p 1 offsetX + p 3 offsetZ + m (I)I method_33939 getOffsetX + p 1 offset + m (II)Lnet/minecraft/class_1923; method_42305 fromRegion + p 1 z + p 0 x + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_1923;)Ljava/util/stream/Stream; method_19281 stream + p 0 pos1 + p 1 pos2 + m ()I method_17886 getRegionZ + m ()I method_8327 getEndX + m (II)V + p 2 z + p 1 x + m (Ljava/util/stream/IntStream;)Lcom/mojang/serialization/DataResult; method_64211 method_64211 + p 0 stream + m (Lnet/minecraft/class_1923;I)Ljava/util/stream/Stream; method_19280 stream + p 0 center + p 1 radius + m ()Z method_76802 isLoadable + m ()Lnet/minecraft/class_2338; method_8323 getStartPos + m (II)Lnet/minecraft/class_1923; method_42306 fromRegionCenter + p 1 z + p 0 x + m (Lnet/minecraft/class_1923;)I method_24022 getChebyshevDistance + p 1 pos + m ()I method_17887 getRegionRelativeX + m (Lnet/minecraft/class_2338;)Z method_74677 contains + p 1 pos + m ()I method_33940 getCenterX + m (II)I method_52568 getSquaredDistance + p 1 x + p 2 z + m (J)I method_8325 getPackedX + p 0 pos + m (Lnet/minecraft/class_2338;)V + p 1 pos + m ()I method_8326 getStartX + m (Lnet/minecraft/class_1923;)Ljava/util/stream/IntStream; method_64213 method_64213 + p 0 chunkPos + m (Lnet/minecraft/class_2338;)J method_37232 toLong + c {@return the chunk position of the given {@code pos} serialized as {@code long}}\n\n@see #toLong(int, int) + p 0 pos + m (J)I method_52567 getSquaredDistance + p 1 pos + m (I)I method_33941 getOffsetZ + p 1 offset + m (II)I method_60510 getChebyshevDistance + p 1 x + p 2 z + m ()I method_17888 getRegionRelativeZ + m (I)Lnet/minecraft/class_2338; method_33943 getCenterAtY + p 1 y + m ([I)Lnet/minecraft/class_1923; method_64212 method_64212 + p 0 coords + m ()I method_8329 getEndZ + m (J)I method_8332 getPackedZ + p 0 pos + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (II)Z method_76803 isLoadable + p 1 z + p 0 x +c net/minecraft/class_1923$1 net/minecraft/util/math/ChunkPos$1 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_1923;)V method_64215 encode + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_1923; method_64214 decode +c net/minecraft/class_1923$2 net/minecraft/util/math/ChunkPos$2 + f Lnet/minecraft/class_1923; field_18684 position + m (Ljava/util/function/Consumer;)Z tryAdvance tryAdvance + p 1 consumer +c net/minecraft/class_10087 net/minecraft/client/render/entity/state/ZombieVillagerRenderState + f Lnet/minecraft/class_3850; field_53636 villagerData +c net/minecraft/class_1928 net/minecraft/world/rule/GameRules + f Lnet/minecraft/class_12279; field_19389 KEEP_INVENTORY + c A {@linkplain Rule game rule} which regulates whether player inventories should be persist through respawning. + f Lnet/minecraft/class_12279; field_19422 DISABLE_RAIDS + c A {@linkplain Rule game rule} which regulates whether raids should occur.\n\n

If this rule is set to {@code true} while raids are occurring, the raids will be stopped. + f Lnet/minecraft/class_12279; field_19391 DO_MOB_LOOT + c A {@linkplain Rule game rule} which regulates whether mobs should drop loot on death. + f Lnet/minecraft/class_12279; field_20638 DO_IMMEDIATE_RESPAWN + c A {@linkplain Rule game rule} which regulates whether a player should immediately respawn upon death. + f Lnet/minecraft/class_12279; field_19388 DO_MOB_GRIEFING + c A {@linkplain Rule game rule} which regulates whether mobs can modify the world.\n\n

Generally one is expected to test this rule before an entity modifies the world.\n\n

In vanilla, this includes:\n

    \n
  • Whether creeper explosions destroy blocks\n
  • Whether a zombie can break down a door\n
  • Whether a wither killing an entity will place or drop a wither rose\n
+ f Lnet/minecraft/class_12280; field_9196 rules + f Lnet/minecraft/class_12279; field_19392 DO_TILE_DROPS + c A {@linkplain Rule game rule} which regulates whether blocks should drop their items when broken. + f Lnet/minecraft/class_12279; field_19390 DO_MOB_SPAWNING + c A {@linkplain Rule game rule} which regulates whether mobs can spawn naturally. + f Lnet/minecraft/class_12279; field_19409 ANNOUNCE_ADVANCEMENTS + c A {@linkplain Rule game rule} which regulates whether a player's advancements should be announced in chat. + f Lnet/minecraft/class_12279; field_19401 REDUCED_DEBUG_INFO + c A {@linkplain Rule game rule} which regulates whether clients' {@linkplain net.minecraft.client.gui.hud.DebugHud debug HUD}s show reduced information.\n\n

When the value of this rule is changed, all connected clients will be notified to update their display.\nIn vanilla, this includes the visibility of coordinates on the clients' debug HUDs. + f Lnet/minecraft/class_12279; field_19405 MAX_ENTITY_CRAMMING + c A {@linkplain Rule game rule} which regulates the number of entities that can be crammed into a block space before they incur cramming damage. + f Lnet/minecraft/class_12279; field_19407 LIMITED_CRAFTING + f Lnet/minecraft/class_12279; field_19406 ADVANCE_WEATHER + f Lnet/minecraft/class_12279; field_19408 MAX_COMMAND_SEQUENCE_LENGTH + f Lnet/minecraft/class_12279; field_19403 RESPAWN_RADIUS + f Lnet/minecraft/class_12279; field_19402 SPECTATORS_GENERATE_CHUNKS + f Lnet/minecraft/class_12279; field_19404 ELYTRA_MOVEMENT_CHECK + f Lnet/minecraft/class_12279; field_19400 SEND_COMMAND_FEEDBACK + f Lnet/minecraft/class_12279; field_56559 FIRE_SPREAD_RADIUS_AROUND_PLAYER + f Lnet/minecraft/class_12279; field_40881 MOB_EXPLOSION_DROP_DECAY + f Lnet/minecraft/class_12279; field_40882 TNT_EXPLOSION_DROP_DECAY + f Lnet/minecraft/class_12279; field_40880 BLOCK_EXPLOSION_DROP_DECAY + f Lnet/minecraft/class_12279; field_40885 LAVA_SOURCE_CONVERSION + f Lnet/minecraft/class_12279; field_20637 SPAWN_PHANTOMS + f Lnet/minecraft/class_12279; field_40886 GLOBAL_SOUND_EVENTS + f Lnet/minecraft/class_12279; field_20636 FIRE_DAMAGE + f Lnet/minecraft/class_12279; field_40883 MAX_SNOW_ACCUMULATION_HEIGHT + f Lnet/minecraft/class_12279; field_20635 FALL_DAMAGE + f Lnet/minecraft/class_12279; field_40884 WATER_SOURCE_CONVERSION + f Lnet/minecraft/class_12279; field_20634 DROWNING_DAMAGE + f Lnet/minecraft/class_12279; field_62435 ALLOW_ENTERING_NETHER_USING_PORTALS + f Lnet/minecraft/class_12279; field_21832 SPAWN_WANDERING_TRADERS + f Lnet/minecraft/class_12279; field_62436 SPAWN_MONSTERS + f Lnet/minecraft/class_12279; field_21831 SPAWN_PATROLS + f Lnet/minecraft/class_12279; field_62434 PVP + f Lnet/minecraft/class_12279; field_52614 MAX_MINECART_SPEED + f Lnet/minecraft/class_12279; field_54909 PLAYER_MOVEMENT_CHECK + f Lnet/minecraft/class_12279; field_41766 MAX_BLOCK_MODIFICATIONS + f Lnet/minecraft/class_12279; field_46658 MAX_COMMAND_FORKS + f Lnet/minecraft/class_12279; field_46795 PLAYERS_NETHER_PORTAL_CREATIVE_DELAY + f Lnet/minecraft/class_12279; field_46794 PLAYERS_NETHER_PORTAL_DEFAULT_DELAY + f Lnet/minecraft/class_12279; field_46796 PROJECTILES_CAN_BREAK_BLOCKS + f Lnet/minecraft/class_12279; field_59751 LOCATOR_BAR + f Lnet/minecraft/class_12279; field_28357 PLAYERS_SLEEPING_PERCENTAGE + f Lnet/minecraft/class_12279; field_62917 SPAWNER_BLOCKS_WORK + f Lnet/minecraft/class_12279; field_62916 COMMAND_BLOCKS_WORK + f Lnet/minecraft/class_12279; field_19398 SHOW_DEATH_MESSAGES + f Lnet/minecraft/class_12279; field_19397 LOG_ADMIN_COMMANDS + f Lnet/minecraft/class_12279; field_19399 RANDOM_TICK_SPEED + f Lnet/minecraft/class_12279; field_19394 COMMAND_BLOCK_OUTPUT + f Lnet/minecraft/class_12279; field_19393 ENTITY_DROPS + f Lnet/minecraft/class_12279; field_19396 ADVANCE_TIME + f Lnet/minecraft/class_12279; field_19395 NATURAL_HEALTH_REGENERATION + f Lnet/minecraft/class_12279; field_38975 SPAWN_WARDENS + f Lnet/minecraft/class_12279; field_25402 UNIVERSAL_ANGER + f Lnet/minecraft/class_12279; field_25401 FORGIVE_DEAD_PLAYERS + f Lnet/minecraft/class_12279; field_28044 FREEZE_DAMAGE + f Lnet/minecraft/class_12279; field_46176 ENDER_PEARLS_VANISH_ON_DEATH + f Lnet/minecraft/class_12279; field_42474 SPREAD_VINES + f Lnet/minecraft/class_12279; field_58052 TNT_EXPLODES + m (Lnet/minecraft/class_4311;Lnet/minecraft/class_12279;)V method_76190 method_76190 + p 1 rule + m (Lnet/minecraft/class_7699;)Lcom/mojang/serialization/Codec; method_76182 createCodec + p 0 featureSet + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_12280;)V + p 2 rules + p 1 enabledFeatures + m (Lnet/minecraft/class_12280;Lnet/minecraft/server/MinecraftServer;)V method_76188 copyFrom + p 1 rules + p 2 server + m (Ljava/lang/String;Lnet/minecraft/class_5198;Z)Lnet/minecraft/class_12279; method_76198 registerBooleanRule + p 0 name + p 1 category + p 2 defaultValue + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_12279; method_76199 registerAndGetDefault + p 0 registry + m (Lnet/minecraft/class_7699;)Lnet/minecraft/class_1928; method_27325 withEnabledFeatures + p 1 enabledFeatures + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_12280;)Lnet/minecraft/class_1928; method_76184 method_76184 + p 1 rules + m ()Ljava/util/stream/Stream; method_76181 streamRules + m (Lnet/minecraft/class_12280;Lnet/minecraft/class_12279;Lnet/minecraft/server/MinecraftServer;)V method_76187 copyFrom + p 1 rules + p 2 rule + p 3 server + m (Lnet/minecraft/class_1928;Lnet/minecraft/server/MinecraftServer;)V method_76192 copyFrom + p 1 rules + p 2 server + m (Ljava/lang/Boolean;)I method_76193 method_76193 + p 0 value + m (Lnet/minecraft/class_12280;Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_12279;)V method_76189 method_76189 + p 3 rule + m (Lnet/minecraft/class_12279;)Ljava/lang/Object; method_76185 getValue + p 1 rule + m (Ljava/lang/String;Lnet/minecraft/class_5198;II)Lnet/minecraft/class_12279; method_76195 registerIntRule + p 0 name + p 2 defaultValue + p 1 category + p 3 minValue + m (Lnet/minecraft/class_4311;)V method_20744 accept + c Make the visitor visit all registered game rules.\n\n

The visitation involves calling both {@link Visitor#visit(GameRules.Key, GameRules.Type)} and {@code visitX} for every game rule, where X is the current rule's concrete type such as a boolean. + p 1 visitor + m (Ljava/lang/String;Lnet/minecraft/class_5198;III)Lnet/minecraft/class_12279; method_76196 registerIntRule + p 0 name + p 1 category + p 2 defaultValue + p 3 minValue + p 4 maxValue + m (Lnet/minecraft/class_1928;)Lnet/minecraft/class_12280; method_76191 method_76191 + p 0 gameRules + m (Ljava/lang/String;Lnet/minecraft/class_5198;Lnet/minecraft/class_11845;Lcom/mojang/brigadier/arguments/ArgumentType;Lcom/mojang/serialization/Codec;Ljava/lang/Object;Lnet/minecraft/class_7699;Lnet/minecraft/class_1928$class_5199;Ljava/util/function/ToIntFunction;)Lnet/minecraft/class_12279; method_8359 register + p 5 defaultValue + p 4 codec + p 3 argumentType + p 2 type + p 1 category + p 0 name + p 8 commandResultSupplier + p 7 acceptor + p 6 requiredFeatures + m (Lnet/minecraft/class_12279;)Ljava/lang/String; method_76200 getRuleValueName + p 1 rule + m (Ljava/lang/Integer;)I method_76194 method_76194 + p 0 value + m (Lnet/minecraft/class_12279;Ljava/lang/Object;Lnet/minecraft/server/MinecraftServer;)V method_76186 setValue + p 2 value + p 1 rule + p 3 server + m (Ljava/lang/String;Lnet/minecraft/class_5198;IIILnet/minecraft/class_7699;)Lnet/minecraft/class_12279; method_76197 registerIntRule + p 4 maxValue + p 3 minValue + p 2 defaultValue + p 1 category + p 5 requiredFeatures + p 0 name + m (Lnet/minecraft/class_7699;)V + p 1 enabledFeatures +c net/minecraft/class_1928$class_5199 net/minecraft/world/rule/GameRules$Acceptor + m (Lnet/minecraft/class_4311;Lnet/minecraft/class_12279;)V call call + p 2 rule + p 1 consumer +c net/minecraft/class_1927 net/minecraft/world/explosion/Explosion + m ()Z method_60274 canTriggerBlocks + m ()Lnet/minecraft/class_1309; method_8347 getCausingEntity + m ()Lnet/minecraft/class_243; method_55109 getPosition + m ()Lnet/minecraft/class_1927$class_4179; method_55111 getDestructionType + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_55108 createDamageSource + p 1 source + p 0 world + m ()F method_55107 getPower + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1309; method_55110 getCausingEntity + p 0 entity + m ()Z method_61722 preservesDecorativeEntities + m ()Lnet/minecraft/class_1297; method_46406 getEntity + m ()Lnet/minecraft/class_3218; method_64504 getWorld +c net/minecraft/class_1927$class_4179 net/minecraft/world/explosion/Explosion$DestructionType + f Z field_52613 destroysBlocks + f Lnet/minecraft/class_1927$class_4179; field_18687 DESTROY + f Lnet/minecraft/class_1927$class_4179; field_47331 TRIGGER_BLOCK + f Lnet/minecraft/class_1927$class_4179; field_40879 DESTROY_WITH_DECAY + f Lnet/minecraft/class_1927$class_4179; field_40878 KEEP + m ()Z method_61723 destroysBlocks + m (Ljava/lang/String;IZ)V + p 3 destroysBlocks +c net/minecraft/class_4174 net/minecraft/component/type/FoodComponent + c Represents the components that make up the properties of a food item. + f Lnet/minecraft/class_9139; field_49993 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_49992 CODEC + f Z comp_2493 canAlwaysEat + f F comp_2492 saturation + f I comp_2491 nutrition + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58400 method_58400 + p 0 instance + m (IFZ)V + p 1 nutrition + p 3 canAlwaysEat + p 2 saturation + m ()I comp_2491 nutrition + m ()F comp_2492 saturation + m ()Z comp_2493 canAlwaysEat +c net/minecraft/class_4174$class_4175 net/minecraft/component/type/FoodComponent$Builder + f I field_18620 nutrition + f F field_18621 saturationModifier + f Z field_18623 canAlwaysEat + m (F)Lnet/minecraft/class_4174$class_4175; method_19237 saturationModifier + c Specifies the saturation modifier of a food item.\n\n

This value is typically used to determine how long a player can sustain the current hunger value before the hunger is used. + p 1 saturationModifier + c the saturation modifier + m ()Lnet/minecraft/class_4174; method_19242 build + m (I)Lnet/minecraft/class_4174$class_4175; method_19238 nutrition + c Specifies the amount of hunger a food item will fill.\n\n

One hunger is equivalent to half of a hunger bar icon. + p 1 nutrition + c the amount of hunger + m ()Lnet/minecraft/class_4174$class_4175; method_19240 alwaysEdible + c Specifies that a food item can be eaten when the current hunger bar is full. +c net/minecraft/class_4176 net/minecraft/component/type/FoodComponents + c Contains all the default food components used in vanilla food items. + f Lnet/minecraft/class_4174; field_18660 MELON_SLICE + f Lnet/minecraft/class_4174; field_18650 COOKED_COD + f Lnet/minecraft/class_4174; field_18640 BEEF + f Lnet/minecraft/class_4174; field_18662 MUTTON + f Lnet/minecraft/class_4174; field_18630 RABBIT + f Lnet/minecraft/class_4174; field_18652 COOKED_PORKCHOP + f Lnet/minecraft/class_4174; field_28647 GLOW_BERRIES + f Lnet/minecraft/class_4174; field_18642 BEETROOT_SOUP + f Lnet/minecraft/class_4174; field_18632 ROTTEN_FLESH + f Lnet/minecraft/class_4174; field_18654 COOKED_SALMON + f Lnet/minecraft/class_4174; field_18644 CARROT + f Lnet/minecraft/class_4174; field_18634 SPIDER_EYE + f Lnet/minecraft/class_4174; field_18656 DRIED_KELP + f Lnet/minecraft/class_4174; field_18646 CHORUS_FRUIT + f Lnet/minecraft/class_4174; field_18636 SWEET_BERRIES + f Lnet/minecraft/class_4174; field_18658 GOLDEN_APPLE + f Lnet/minecraft/class_4174; field_18626 PORKCHOP + f Lnet/minecraft/class_4174; field_18648 COOKED_BEEF + f Lnet/minecraft/class_4174; field_18638 APPLE + f Lnet/minecraft/class_4174; field_18628 PUFFERFISH + f Lnet/minecraft/class_4174; field_18629 PUMPKIN_PIE + f Lnet/minecraft/class_4174; field_18661 MUSHROOM_STEW + f Lnet/minecraft/class_4174; field_18651 COOKED_MUTTON + f Lnet/minecraft/class_4174; field_18641 BEETROOT + f Lnet/minecraft/class_4174; field_18663 POISONOUS_POTATO + f Lnet/minecraft/class_4174; field_18631 RABBIT_STEW + f Lnet/minecraft/class_4174; field_18653 COOKED_RABBIT + f Lnet/minecraft/class_4174; field_18643 BREAD + f Lnet/minecraft/class_4174; field_18633 SALMON + f Lnet/minecraft/class_4174; field_18655 COOKIE + f Lnet/minecraft/class_4174; field_18645 CHICKEN + f Lnet/minecraft/class_4174; field_18635 SUSPICIOUS_STEW + f Lnet/minecraft/class_4174; field_18657 ENCHANTED_GOLDEN_APPLE + f Lnet/minecraft/class_4174; field_18647 COD + f Lnet/minecraft/class_4174; field_18637 TROPICAL_FISH + f Lnet/minecraft/class_4174; field_18659 GOLDEN_CARROT + f Lnet/minecraft/class_4174; field_18627 POTATO + f Lnet/minecraft/class_4174; field_18649 COOKED_CHICKEN + f Lnet/minecraft/class_4174; field_18639 BAKED_POTATO + f Lnet/minecraft/class_4174; field_20381 HONEY_BOTTLE + m (I)Lnet/minecraft/class_4174$class_4175; method_19243 createStew + p 0 nutrition +c net/minecraft/class_10030 net/minecraft/client/render/entity/state/GoatEntityRenderState + f F field_53389 headPitch + f Z field_53387 hasLeftHorn + f Z field_53388 hasRightHorn +c net/minecraft/class_10033 net/minecraft/client/render/entity/state/HorseEntityRenderState + f Lnet/minecraft/class_5149; field_53400 color + f Lnet/minecraft/class_5148; field_53401 marking +c net/minecraft/class_10034 net/minecraft/client/render/entity/state/BipedEntityRenderState + f Z field_53412 isSwimming + f Z field_53411 isGliding + f Z field_53414 isUsingItem + f Z field_53413 hasVehicle + f Lnet/minecraft/class_1799; field_53419 equippedLegsStack + f Lnet/minecraft/class_1799; field_53418 equippedChestStack + f F field_53405 limbAmplitudeInverse + f F field_53416 leftWingYaw + f F field_53415 leftWingPitch + f Lnet/minecraft/class_1799; field_55309 equippedHeadStack + f F field_53407 itemUseTime + f F field_53406 crossbowPullTime + f Lnet/minecraft/class_1268; field_53409 activeHand + f F field_53417 leftWingRoll + f Lnet/minecraft/class_1799; field_53420 equippedFeetStack + f Z field_53410 isInSneakingPose + f Lnet/minecraft/class_1306; field_53408 preferredArm + f F field_53403 leaningPitch +c net/minecraft/class_10031 net/minecraft/client/render/entity/state/GuardianEntityRenderState + f F field_53391 tailAngle + f F field_53390 spikesExtension + f Lnet/minecraft/class_243; field_53394 lookAtPos + f Lnet/minecraft/class_243; field_53395 beamTargetPos + f F field_53396 beamTicks + f Lnet/minecraft/class_243; field_53392 cameraPosVec + f Lnet/minecraft/class_243; field_53393 rotationVec + f F field_53397 beamProgress +c net/minecraft/class_11362 net/minecraft/storage/NbtWriteView + f Lcom/mojang/serialization/DynamicOps; field_60403 ops + f Lnet/minecraft/class_2487; field_60404 nbt + f Lnet/minecraft/class_8942; field_60402 reporter + m (Lnet/minecraft/class_8942;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_2487;)V + p 1 reporter + p 2 ops + p 3 nbt + m (Ljava/lang/String;Lnet/minecraft/class_2520;)V method_71470 method_71470 + p 2 partialValue + m (Lnet/minecraft/class_2520;)V method_71474 method_71474 + p 1 partialValue + m (Ljava/lang/String;)Lnet/minecraft/class_8942; method_71479 makeChildReporter + p 1 key + m (Lnet/minecraft/class_8942;)Lnet/minecraft/class_11362; method_71458 create + p 0 reporter + m (Lnet/minecraft/class_8942;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_11362; method_71459 create + p 1 registries + p 0 reporter + m ()Lnet/minecraft/class_2487; method_71475 getNbt +c net/minecraft/class_11362$class_11367 net/minecraft/storage/NbtWriteView$NbtListAppender + f Ljava/lang/String; field_60410 key + f Lnet/minecraft/class_8942; field_60409 reporter + f Lcom/mojang/serialization/Codec; field_60412 codec + f Lcom/mojang/serialization/DynamicOps; field_60411 ops + f Lnet/minecraft/class_2499; field_60413 list + m (Lnet/minecraft/class_8942;Ljava/lang/String;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Lnet/minecraft/class_2499;)V + p 1 reporter + p 2 key + p 3 ops + p 4 codec + p 5 list +c net/minecraft/class_11362$class_11366 net/minecraft/storage/NbtWriteView$NbtListView + f Lcom/mojang/serialization/DynamicOps; field_60407 ops + f Lnet/minecraft/class_8942; field_60406 reporter + f Ljava/lang/String; field_60405 key + f Lnet/minecraft/class_2499; field_60408 list + m (Ljava/lang/String;Lnet/minecraft/class_8942;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_2499;)V + p 4 list + p 3 ops + p 2 reporter + p 1 key +c net/minecraft/class_11362$class_11363 net/minecraft/storage/NbtWriteView$EncodeFieldError + f Lcom/mojang/serialization/DataResult$Error; comp_4262 error + f Ljava/lang/Object; comp_4261 value + f Ljava/lang/String; comp_4260 name + m ()Ljava/lang/Object; comp_4261 value + m ()Lcom/mojang/serialization/DataResult$Error; comp_4262 error + m ()Ljava/lang/String; comp_4260 name + m (Ljava/lang/String;Ljava/lang/Object;Lcom/mojang/serialization/DataResult$Error;)V + p 1 name + p 2 value + p 3 error +c net/minecraft/class_11362$class_11365 net/minecraft/storage/NbtWriteView$MergeError + f Ljava/lang/Object; comp_4266 value + f Lcom/mojang/serialization/DataResult$Error; comp_4267 error + m ()Ljava/lang/Object; comp_4266 value + m ()Lcom/mojang/serialization/DataResult$Error; comp_4267 error + m (Ljava/lang/Object;Lcom/mojang/serialization/DataResult$Error;)V + p 1 value + p 2 error +c net/minecraft/class_11362$class_11364 net/minecraft/storage/NbtWriteView$AppendToListError + f Lcom/mojang/serialization/DataResult$Error; comp_4265 error + f Ljava/lang/Object; comp_4264 value + f Ljava/lang/String; comp_4263 name + m ()Ljava/lang/String; comp_4263 name + m ()Ljava/lang/Object; comp_4264 value + m ()Lcom/mojang/serialization/DataResult$Error; comp_4265 error + m (Ljava/lang/String;Ljava/lang/Object;Lcom/mojang/serialization/DataResult$Error;)V + p 1 name + p 2 value + p 3 error +c net/minecraft/class_10032 net/minecraft/client/render/entity/state/HoglinEntityRenderState + f I field_53398 movementCooldownTicks + f Z field_53399 canConvert +c net/minecraft/class_10037 net/minecraft/client/render/entity/state/IronGolemEntityRenderState + f I field_53431 lookingAtVillagerTicks + f F field_53430 attackTicksLeft + f Lnet/minecraft/class_9273$class_4621; field_53432 crackLevel +c net/minecraft/class_11368 net/minecraft/storage/ReadView + m (Ljava/lang/String;D)D method_71422 getDouble + p 2 fallback + p 1 key + m (Ljava/lang/String;Z)Z method_71433 getBoolean + p 2 fallback + p 1 key + m (Ljava/lang/String;F)F method_71423 getFloat + p 1 key + p 2 fallback + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_11368$class_11369; method_71437 getTypedListView + p 2 typeCodec + p 1 key + m (Lcom/mojang/serialization/MapCodec;)Ljava/util/Optional; method_71418 read + p 1 mapCodec + m (Ljava/lang/String;I)I method_71424 getInt + p 2 fallback + p 1 key + m (Ljava/lang/String;J)J method_71425 getLong + p 1 key + p 2 fallback + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_71428 getString + p 2 fallback + p 1 key + m (Ljava/lang/String;)Lnet/minecraft/class_11368; method_71434 getReadView + p 1 key + m (Ljava/lang/String;)Ljava/util/Optional; method_71439 getOptionalInt + p 1 key + m (Ljava/lang/String;B)B method_71421 getByte + p 2 fallback + p 1 key + m (Ljava/lang/String;)Ljava/util/Optional; method_71441 getOptionalString + p 1 key + m (Ljava/lang/String;)Ljava/util/Optional; method_71420 getOptionalReadView + p 1 key + m (Ljava/lang/String;)Ljava/util/Optional; method_71442 getOptionalIntArray + p 1 key + m ()Lnet/minecraft/class_7225$class_7874; method_71414 getRegistries + m (Ljava/lang/String;)Ljava/util/Optional; method_71436 getOptionalListReadView + p 1 key + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)Ljava/util/Optional; method_71426 read + p 2 codec + p 1 key + m (Ljava/lang/String;S)I method_71432 getShort + p 1 key + p 2 fallback + m (Ljava/lang/String;)Lnet/minecraft/class_11368$class_11370; method_71438 getListReadView + p 1 key + m (Ljava/lang/String;)Ljava/util/Optional; method_71440 getOptionalLong + p 1 key + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)Ljava/util/Optional; method_71435 getOptionalTypedListView + p 1 key + p 2 typeCodec +c net/minecraft/class_11368$class_11369 net/minecraft/storage/ReadView$TypedListReadView + m ()Z method_71453 isEmpty + m ()Ljava/util/stream/Stream; method_71456 stream +c net/minecraft/class_11368$class_11370 net/minecraft/storage/ReadView$ListReadView + m ()Ljava/util/stream/Stream; method_71447 stream + m ()Z method_71444 isEmpty +c net/minecraft/class_10038 net/minecraft/client/render/entity/state/ItemDisplayEntityRenderState + f Lnet/minecraft/class_10444; field_55313 itemRenderState +c net/minecraft/class_10035 net/minecraft/client/render/entity/state/IllagerEntityRenderState + f F field_53427 handSwingProgress + f Lnet/minecraft/class_1543$class_1544; field_53424 illagerState + f Z field_53422 attacking + f Z field_53421 hasVehicle + f I field_53425 crossbowPullTime + f F field_53426 itemUseTime + f Lnet/minecraft/class_1306; field_53423 illagerMainArm +c net/minecraft/class_10036 net/minecraft/client/render/entity/state/IllusionerEntityRenderState + f [Lnet/minecraft/class_243; field_53428 mirrorCopyOffsets + f Z field_53429 spellcasting +c net/minecraft/class_10039 net/minecraft/client/render/entity/state/ItemEntityRenderState + f F field_53435 uniqueOffset +c net/minecraft/class_4185 net/minecraft/client/gui/widget/ButtonWidget + f I field_39499 DEFAULT_WIDTH_SMALL + f I field_39501 DEFAULT_HEIGHT + f I field_39500 DEFAULT_WIDTH + f Lnet/minecraft/class_4185$class_4241; field_22767 onPress + f Lnet/minecraft/class_4185$class_7841; field_40755 narrationSupplier + f Lnet/minecraft/class_4185$class_7841; field_40754 DEFAULT_NARRATION_SUPPLIER + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_4185$class_4241;)Lnet/minecraft/class_4185$class_7840; method_46430 builder + p 0 message + p 1 onPress + m (IIIILnet/minecraft/class_2561;Lnet/minecraft/class_4185$class_4241;Lnet/minecraft/class_4185$class_7841;)V + p 6 onPress + p 7 narrationSupplier + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_5250; method_46429 method_46429 + p 0 textSupplier +c net/minecraft/class_4185$class_4241 net/minecraft/client/gui/widget/ButtonWidget$PressAction + m (Lnet/minecraft/class_4185;)V onPress onPress + p 1 button +c net/minecraft/class_4185$class_7840 net/minecraft/client/gui/widget/ButtonWidget$Builder + f Lnet/minecraft/class_2561; field_40756 message + f Lnet/minecraft/class_4185$class_4241; field_40757 onPress + f Lnet/minecraft/class_7919; field_41099 tooltip + f I field_40762 height + f I field_40761 width + f I field_40760 y + f Lnet/minecraft/class_4185$class_7841; field_40763 narrationSupplier + f I field_40759 x + m (I)Lnet/minecraft/class_4185$class_7840; method_46432 width + p 1 width + m (II)Lnet/minecraft/class_4185$class_7840; method_46433 position + p 1 x + p 2 y + m ()Lnet/minecraft/class_4185; method_46431 build + m (Lnet/minecraft/class_7919;)Lnet/minecraft/class_4185$class_7840; method_46436 tooltip + p 1 tooltip + m (IIII)Lnet/minecraft/class_4185$class_7840; method_46434 dimensions + p 1 x + p 3 width + p 2 y + p 4 height + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_4185$class_4241;)V + p 2 onPress + p 1 message + m (II)Lnet/minecraft/class_4185$class_7840; method_46437 size + p 1 width + p 2 height + m (Lnet/minecraft/class_4185$class_7841;)Lnet/minecraft/class_4185$class_7840; method_46435 narrationSupplier + p 1 narrationSupplier +c net/minecraft/class_4185$class_7841 net/minecraft/client/gui/widget/ButtonWidget$NarrationSupplier + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_5250; createNarrationMessage createNarrationMessage + p 1 textSupplier +c net/minecraft/class_4185$class_12231 net/minecraft/client/gui/widget/ButtonWidget$Text +c net/minecraft/class_4184 net/minecraft/client/render/Camera + f Lorg/joml/Vector3f; field_18715 verticalPlane + f Z field_18719 thirdPerson + f Z field_18709 ready + f F field_47549 lastTickProgress + f Lnet/minecraft/class_243; field_18712 pos + f F field_18721 cameraY + f F field_18717 pitch + f Lorg/joml/Vector3f; field_52123 HORIZONTAL + f Lorg/joml/Vector3f; field_52125 DIAGONAL + f F field_47841 BASE_CAMERA_DISTANCE + f Lorg/joml/Vector3f; field_18716 diagonalPlane + f Lorg/joml/Vector3f; field_18714 horizontalPlane + f F field_18722 lastCameraY + f Lnet/minecraft/class_12202; field_63830 environmentAttributeInterpolator + f Lnet/minecraft/class_2338$class_2339; field_18713 blockPos + f Lnet/minecraft/class_1937; field_18710 area + f F field_18718 yaw + f Lnet/minecraft/class_1297; field_18711 focusedEntity + f Lorg/joml/Quaternionf; field_21518 rotation + f Lorg/joml/Vector3f; field_52124 VERTICAL + m ()Lnet/minecraft/class_12202; method_75756 getEnvironmentAttributeInterpolator + m ()V method_19337 reset + m ()V method_19317 updateEyeHeight + m ()Lnet/minecraft/class_4184$class_6355; method_36425 getProjection + c {@return the field of vision of this camera}\n\n@see GameRenderer#CAMERA_DEPTH + m (FFF)V method_19324 moveBy + p 1 surge + p 2 heave + p 3 sway + m ()Lnet/minecraft/class_2338; method_19328 getBlockPos + m ()F method_19329 getPitch + m (Lnet/minecraft/class_243;)V method_19322 setPos + p 1 pos + m (F)F method_19318 clipToSpace + p 1 distance + m ()Z method_19332 isReady + m ()Lorg/joml/Vector3fc; method_19336 getVerticalPlane + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;ZZF)V method_19321 update + p 4 inverseView + p 3 thirdPerson + p 2 focusedEntity + p 1 area + p 5 tickProgress + m ()F method_55437 getLastTickProgress + m ()Lorg/joml/Quaternionf; method_23767 getRotation + m ()F method_19330 getYaw + m ()Lorg/joml/Vector3fc; method_35689 getDiagonalPlane + m ()Lnet/minecraft/class_5636; method_19334 getSubmersionType + m (FF)V method_19325 setRotation + p 2 pitch + p 1 yaw + m (DDD)V method_19327 setPos + p 3 y + p 1 x + p 5 z + m ()Lnet/minecraft/class_1297; method_19331 getFocusedEntity + m ()Lorg/joml/Vector3fc; method_19335 getHorizontalPlane + m ()Z method_19333 isThirdPerson +c net/minecraft/class_4184$class_6355 net/minecraft/client/render/Camera$Projection + c A projection of a camera. It is a 2-D rectangle in a 3-D volume.\n\n@see Camera#getProjection() + f Lnet/minecraft/class_243; field_33624 y + c Half of the height (y) of the rectangle. + f Lnet/minecraft/class_243; field_33623 x + c Half of the width (x) of the rectangle. + f Lnet/minecraft/class_243; field_33622 center + m ()Lnet/minecraft/class_243; method_36426 getBottomRight + m ()Lnet/minecraft/class_243; method_36429 getTopRight + m ()Lnet/minecraft/class_243; method_36430 getBottomLeft + m (FF)Lnet/minecraft/class_243; method_36427 getPosition + p 1 factorX + p 2 factorY + m ()Lnet/minecraft/class_243; method_36431 getTopLeft + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_243;)V + p 3 y + p 2 x + p 1 center +c net/minecraft/class_4180 net/minecraft/world/storage/SerializingRegionBasedStorage + f Lnet/minecraft/class_9820; field_52227 errorHandler + f Ljava/util/function/Function; field_18695 factory + f Lnet/minecraft/class_5455; field_39315 registryManager + f Ljava/util/function/BiFunction; field_52648 deserializer + f Lit/unimi/dsi/fastutil/longs/LongSet; field_52649 loadedChunks + f Lnet/minecraft/class_5539; field_27240 world + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_52650 pendingLoads + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_18692 loadedElements + f Lit/unimi/dsi/fastutil/longs/LongLinkedOpenHashSet; field_18693 unsavedElements + f Lcom/mojang/serialization/Codec; field_24750 codec + f Ljava/lang/Object; field_52651 lock + f Lnet/minecraft/class_3977; field_48759 storageAccess + f Lorg/slf4j/Logger; field_18691 LOGGER + f Ljava/util/function/Function; field_52647 serializer + f Ljava/lang/String; field_31427 SECTIONS_KEY + m (Lnet/minecraft/class_1923;J)Ljava/util/concurrent/CompletableFuture; method_61785 method_61785 + p 2 pos + m (J)Ljava/lang/Object; method_19295 getOrCreate + p 1 pos + m (J)V method_19291 onLoad + p 1 pos + m (Lnet/minecraft/class_1923;J)Ljava/util/concurrent/CompletableFuture; method_61781 method_61781 + p 2 pos + m (J)V method_61789 method_61789 + p 1 chunkPos + m (Lnet/minecraft/class_1923;Ljava/lang/Throwable;)Ljava/util/Optional; method_43412 method_43412 + p 2 throwable + m ()Z method_40020 hasUnsavedElements + m (Lnet/minecraft/class_1923;Ljava/lang/Throwable;)Ljava/lang/Void; method_61783 method_61783 + p 2 throwable + m ()V method_61775 save + m (Lnet/minecraft/class_1923;)Ljava/util/concurrent/CompletableFuture; method_61780 load + p 1 chunkPos + m (J)Ljava/util/Optional; method_19294 get + p 1 pos + m (Lnet/minecraft/class_1923;)V method_20370 save + p 1 pos + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_4180$class_9897;)V method_61782 onLoad + p 1 chunkPos + p 2 result + m (JLjava/lang/Object;)Ljava/lang/Object; method_61776 method_61776 + p 3 section + m (J)Z method_19292 isPosInvalid + p 1 pos + m (Ljava/util/function/BooleanSupplier;)V method_19290 tick + p 1 shouldKeepTicking + m (Lnet/minecraft/class_1923;)V method_61787 loadAndWait + p 1 chunkPos + m (J)Ljava/util/Optional; method_19293 getIfLoaded + p 1 pos + m (J)V method_19288 onUpdate + p 1 pos + m (Lnet/minecraft/class_6903;Lnet/minecraft/class_2487;)Lnet/minecraft/class_4180$class_9897; method_61779 method_61779 + p 2 nbt + m (Ljava/util/Map;Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;Ljava/lang/Object;)V method_61784 method_61784 + p 3 value + m ()V method_61786 tickPendingLoads + m (Lnet/minecraft/class_3977;Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/BiFunction;Ljava/util/function/Function;Lnet/minecraft/class_5455;Lnet/minecraft/class_9820;Lnet/minecraft/class_5539;)V + p 2 codec + p 3 serializer + p 1 storageAccess + p 8 world + p 6 registryManager + p 7 errorHandler + p 4 deserializer + p 5 factory + m (Lnet/minecraft/class_6903;Ljava/util/Optional;)Ljava/util/Optional; method_61778 method_61778 + p 2 chunkNbt + m (Lnet/minecraft/class_1923;)V method_20436 saveChunk + p 1 pos + m (Lnet/minecraft/class_1923;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; method_20367 serialize + p 2 ops + p 1 chunkPos + m (Lnet/minecraft/class_1923;)Ljava/util/concurrent/CompletableFuture; method_20621 loadNbt + p 1 chunkPos + m (Lnet/minecraft/class_1923;I)J method_33637 chunkSectionPosAsLong + p 1 y + p 0 chunkPos +c net/minecraft/class_4180$class_9897 net/minecraft/world/storage/SerializingRegionBasedStorage$LoadResult + f Z comp_2944 versionChanged + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; comp_2943 sectionsByY + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_61790 method_61790 + p 1 section + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_2520;Lnet/minecraft/class_3977;Lnet/minecraft/class_5539;)Lnet/minecraft/class_4180$class_9897; method_61791 fromNbt + p 0 sectionCodec + p 3 storage + p 4 world + p 1 ops + p 2 nbt + m ()Z comp_2944 versionChanged + m ()Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; comp_2943 sectionsByY + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;Z)V + p 1 sectionsByY + p 2 versionChanged +c net/minecraft/class_4189 net/minecraft/client/gui/screen/option/AccessibilityOptionsScreen + f Lnet/minecraft/class_2561; field_49492 TITLE_TEXT + m (Lnet/minecraft/class_4185;)V method_31384 method_31384 + p 1 button + m (Lnet/minecraft/class_315;)[Lnet/minecraft/class_7172; method_41839 getOptions + p 0 gameOptions + m ()Z method_62022 isMinecartImprovementsExperimentEnabled + m (Lnet/minecraft/class_437;Lnet/minecraft/class_315;)V + p 1 parent + p 2 gameOptions +c net/minecraft/class_10022 net/minecraft/client/render/entity/state/ExperienceOrbEntityRenderState + f I field_53355 size +c net/minecraft/class_10023 net/minecraft/client/render/entity/state/FallingBlockEntityRenderState + f Lnet/minecraft/class_11791; field_62257 movingBlockRenderState +c net/minecraft/class_11352 net/minecraft/storage/NbtReadView + f Lnet/minecraft/class_2487; field_60382 nbt + f Lnet/minecraft/class_11371; field_60381 context + f Lnet/minecraft/class_8942; field_60380 reporter + m (Ljava/lang/String;Lnet/minecraft/class_11371;Lnet/minecraft/class_2499;)Lnet/minecraft/class_11368$class_11370; method_71427 createChildListReadView + p 3 list + p 1 key + p 2 context + m (Lnet/minecraft/class_8942;Lnet/minecraft/class_11371;Lnet/minecraft/class_2487;)Lnet/minecraft/class_11368; method_71415 createReadView + p 2 nbt + p 1 context + p 0 reporter + m (Lnet/minecraft/class_8942;Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_2487;)Lnet/minecraft/class_11368; method_71417 create + p 0 reporter + p 1 registries + p 2 nbt + m (Ljava/lang/String;)Lnet/minecraft/class_2514; method_71443 get + p 1 key + m (Ljava/lang/String;Lnet/minecraft/class_2499;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_11368$class_11369; method_71430 createTypedListReadView + p 1 key + p 2 list + p 3 typeCodec + m (Ljava/lang/String;Lnet/minecraft/class_2487;)Lnet/minecraft/class_11368; method_71429 createChildReadView + p 2 nbt + p 1 key + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; method_71419 method_71419 + p 2 map + m (Lnet/minecraft/class_8942;Lnet/minecraft/class_7225$class_7874;Ljava/util/List;)Lnet/minecraft/class_11368$class_11370; method_71416 createList + p 1 registries + p 2 elements + p 0 reporter + m (Ljava/lang/String;Lnet/minecraft/class_4614;)Lnet/minecraft/class_2520; method_71431 get + p 1 key + p 2 type + m (Lnet/minecraft/class_8942;Lnet/minecraft/class_11371;Lnet/minecraft/class_2487;)V + p 2 context + p 3 nbt + p 1 reporter +c net/minecraft/class_11352$class_11357 net/minecraft/storage/NbtReadView$ChildListReadView + f Lnet/minecraft/class_11371; field_60390 context + f Ljava/lang/String; field_60389 name + f Lnet/minecraft/class_8942; field_60388 reporter + f Lnet/minecraft/class_2499; field_60391 list + m (I)Lnet/minecraft/class_8942; method_71449 createErrorReporter + p 1 index + m (Lnet/minecraft/class_2520;J)Lnet/minecraft/class_11368; method_71451 method_71451 + p 2 index + p 1 element + m (Lnet/minecraft/class_8942;Ljava/lang/String;Lnet/minecraft/class_11371;Lnet/minecraft/class_2499;)V + p 2 name + p 1 reporter + p 4 list + p 3 context + m (ILnet/minecraft/class_2520;)V method_71450 reportExpectedTypeAtIndexError + p 2 element + p 1 index +c net/minecraft/class_11352$class_11357$1 net/minecraft/storage/NbtReadView$ChildListReadView$1 + f I field_60394 index + m ()Lnet/minecraft/class_11368; method_71452 computeNext +c net/minecraft/class_11352$class_11356 net/minecraft/storage/NbtReadView$DecodeMapError + f Lcom/mojang/serialization/DataResult$Error; comp_4250 error + m ()Lcom/mojang/serialization/DataResult$Error; comp_4250 error + m (Lcom/mojang/serialization/DataResult$Error;)V + p 1 error +c net/minecraft/class_11352$class_11355 net/minecraft/storage/NbtReadView$DecodeAtIndexError + f Lnet/minecraft/class_2520; comp_4248 element + f Ljava/lang/String; comp_4246 name + f I comp_4247 index + f Lcom/mojang/serialization/DataResult$Error; comp_4249 error + m ()Lnet/minecraft/class_2520; comp_4248 element + m ()Lcom/mojang/serialization/DataResult$Error; comp_4249 error + m ()Ljava/lang/String; comp_4246 name + m ()I comp_4247 index + m (Ljava/lang/String;ILnet/minecraft/class_2520;Lcom/mojang/serialization/DataResult$Error;)V + p 1 name + p 2 index + p 3 element + p 4 error +c net/minecraft/class_11352$class_11354 net/minecraft/storage/NbtReadView$DecodeError + f Lnet/minecraft/class_2520; comp_4244 element + f Ljava/lang/String; comp_4243 name + f Lcom/mojang/serialization/DataResult$Error; comp_4245 error + m ()Lnet/minecraft/class_2520; comp_4244 element + m ()Ljava/lang/String; comp_4243 name + m ()Lcom/mojang/serialization/DataResult$Error; comp_4245 error + m (Ljava/lang/String;Lnet/minecraft/class_2520;Lcom/mojang/serialization/DataResult$Error;)V + p 1 name + p 2 element + p 3 error +c net/minecraft/class_11352$class_11353 net/minecraft/storage/NbtReadView$NbtListReadView + f Ljava/util/List; field_60385 nbts + f Lnet/minecraft/class_8942; field_60383 reporter + f Lnet/minecraft/class_11371; field_60384 context + m (Lnet/minecraft/class_2487;J)Lnet/minecraft/class_11368; method_71446 method_71446 + p 1 nbt + p 2 index + m (Lnet/minecraft/class_8942;Lnet/minecraft/class_11371;Ljava/util/List;)V + p 3 nbts + p 2 context + p 1 reporter + m (ILnet/minecraft/class_2487;)Lnet/minecraft/class_11368; method_71445 createReadView + p 1 index + p 2 nbt +c net/minecraft/class_11352$class_11353$1 net/minecraft/storage/NbtReadView$NbtListReadView$1 + m ()Lnet/minecraft/class_11368; method_71448 computeNext +c net/minecraft/class_11352$class_11361 net/minecraft/storage/NbtReadView$ExpectedTypeError + f Ljava/lang/String; comp_4257 name + f Lnet/minecraft/class_4614; comp_4259 actual + f Lnet/minecraft/class_4614; comp_4258 expected + m ()Lnet/minecraft/class_4614; comp_4258 expected + m ()Lnet/minecraft/class_4614; comp_4259 actual + m ()Ljava/lang/String; comp_4257 name + m (Ljava/lang/String;Lnet/minecraft/class_4614;Lnet/minecraft/class_4614;)V + p 1 name + p 2 expected + p 3 actual +c net/minecraft/class_11352$class_11360 net/minecraft/storage/NbtReadView$ExpectedNumberError + f Ljava/lang/String; comp_4255 name + f Lnet/minecraft/class_4614; comp_4256 actual + m ()Lnet/minecraft/class_4614; comp_4256 actual + m ()Ljava/lang/String; comp_4255 name + m (Ljava/lang/String;Lnet/minecraft/class_4614;)V + p 1 name + p 2 actual +c net/minecraft/class_11352$class_11359 net/minecraft/storage/NbtReadView$ExpectedTypeAtIndexError + f Ljava/lang/String; comp_4251 name + f Lnet/minecraft/class_4614; comp_4254 actual + f Lnet/minecraft/class_4614; comp_4253 expected + f I comp_4252 index + m ()Ljava/lang/String; comp_4251 name + m ()I comp_4252 index + m ()Lnet/minecraft/class_4614; comp_4254 actual + m ()Lnet/minecraft/class_4614; comp_4253 expected + m (Ljava/lang/String;ILnet/minecraft/class_4614;Lnet/minecraft/class_4614;)V + p 1 name + p 2 index + p 3 expected + p 4 actual +c net/minecraft/class_11352$class_11358 net/minecraft/storage/NbtReadView$NbtTypedListReadView + f Lnet/minecraft/class_11371; field_60397 context + f Lnet/minecraft/class_8942; field_60395 reporter + f Lnet/minecraft/class_2499; field_60399 list + f Ljava/lang/String; field_60396 name + f Lcom/mojang/serialization/Codec; field_60398 typeCodec + m (Lnet/minecraft/class_2520;J)Ljava/lang/Object; method_71455 method_71455 + p 2 index + p 1 element + m (ILnet/minecraft/class_2520;Lcom/mojang/serialization/DataResult$Error;)V method_71454 reportDecodeAtIndexError + p 2 element + p 1 index + p 3 error + m (Lnet/minecraft/class_8942;Ljava/lang/String;Lnet/minecraft/class_11371;Lcom/mojang/serialization/Codec;Lnet/minecraft/class_2499;)V + p 3 context + p 4 typeCodec + p 1 reporter + p 2 name + p 5 list +c net/minecraft/class_10020 net/minecraft/client/render/entity/state/EvokerFangsEntityRenderState + f F field_53352 yaw + f F field_53353 animationProgress +c net/minecraft/class_10021 net/minecraft/client/render/entity/state/EvokerEntityRenderState + f Z field_53354 spellcasting +c net/minecraft/class_10026 net/minecraft/client/render/entity/state/FishingBobberEntityState + f Lnet/minecraft/class_243; field_53370 pos +c net/minecraft/class_10027 net/minecraft/client/render/entity/state/FoxEntityRenderState + f F field_53372 bodyRotationHeightOffset + f Z field_53376 walking + f Z field_53377 chasing + f Z field_53374 sleeping + f F field_53371 headRoll + f Z field_53375 sitting + f Lnet/minecraft/class_4019$class_4039; field_53378 type + f Z field_53373 inSneakingPose +c net/minecraft/class_10024 net/minecraft/client/render/entity/state/FelineEntityRenderState + f Z field_53362 sprinting + f Z field_53363 inSittingPose + f Z field_53361 inSneakingPose + f F field_53366 headDownAnimationProgress + f F field_53364 sleepAnimationProgress + f F field_53365 tailCurlAnimationProgress +c net/minecraft/class_10025 net/minecraft/client/render/entity/state/FireworkRocketEntityRenderState + f Z field_53367 shotAtAngle + f Lnet/minecraft/class_10444; field_53369 stack +c net/minecraft/class_10028 net/minecraft/client/render/entity/state/FrogEntityRenderState + f Lnet/minecraft/class_7094; field_53382 usingTongueAnimationState + f Lnet/minecraft/class_7094; field_53383 idlingInWaterAnimationState + f Lnet/minecraft/class_7094; field_53380 longJumpingAnimationState + f Lnet/minecraft/class_7094; field_53381 croakingAnimationState + f Z field_53379 insideWaterOrBubbleColumn + f Lnet/minecraft/class_2960; field_53384 texture + f Lnet/minecraft/class_2960; field_53385 DEFAULT_TEXTURE +c net/minecraft/class_10029 net/minecraft/client/render/entity/state/GhastEntityRenderState + f Z field_53386 shooting +c net/minecraft/class_5483 net/minecraft/world/biome/SpawnSettings + f Lnet/minecraft/class_5483; field_26646 INSTANCE + f Lorg/slf4j/Logger; field_26645 LOGGER + f Lcom/mojang/serialization/MapCodec; field_26403 CODEC + f Ljava/util/Map; field_26406 spawnCosts + f Ljava/util/Map; field_26405 spawners + f Lnet/minecraft/class_6012; field_30982 EMPTY_ENTRY_POOL + f F field_26404 creatureSpawnProbability + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_5483$class_5265; method_31003 getSpawnDensity + p 1 entityType + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30791 method_30791 + p 0 instance + m (Lnet/minecraft/class_1311;)Lnet/minecraft/class_6012; method_31004 getSpawnEntries + p 1 spawnGroup + m (Lnet/minecraft/class_5483;)Ljava/util/Map; method_30795 method_30795 + p 0 settings + m (FLjava/util/Map;Ljava/util/Map;)V + p 2 spawners + p 1 creatureSpawnProbability + p 3 spawnCosts + m (Lnet/minecraft/class_5483;)Ljava/util/Map; method_30794 method_30794 + p 0 settings + m ()F method_31002 getCreatureSpawnProbability + m (Lnet/minecraft/class_5483;)Ljava/lang/Float; method_30796 method_30796 + p 0 settings +c net/minecraft/class_5483$class_5265 net/minecraft/world/biome/SpawnSettings$SpawnDensity + c Embodies the density limit information of a type of entity in entity\nspawning logic. The density field is generated for all entities spawned\nthan a specific type of entity. + f D comp_1307 gravityLimit + f Lcom/mojang/serialization/Codec; field_25820 CODEC + f D comp_1308 mass + m (Lnet/minecraft/class_5483$class_5265;)Ljava/lang/Double; method_31015 method_31015 + p 0 spawnDensity + m (Lnet/minecraft/class_5483$class_5265;)Ljava/lang/Double; method_31014 method_31014 + p 0 spawnDensity + m (DD)V + p 3 mass + p 1 gravityLimit + m ()D comp_1307 gravityLimit + c Represents the cap of gravity as in {@link\nnet.minecraft.util.math.GravityField#calculate(BlockPos, double)} for\nentity spawning. If the cap is exceeded, the entity spawning attempt\nwill skip. + m ()D comp_1308 mass + c Represents the mass of each entity spawned. Will affect gravity\ncalculation. + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30359 method_30359 + p 0 instance +c net/minecraft/class_5483$class_5496 net/minecraft/world/biome/SpawnSettings$Builder + f F field_26649 creatureSpawnProbability + f Ljava/util/Map; field_26647 spawners + f Ljava/util/Map; field_26648 spawnCosts + m (Lnet/minecraft/class_1311;ILnet/minecraft/class_5483$class_1964;)Lnet/minecraft/class_5483$class_5496; method_31011 spawn + p 3 entry + p 1 spawnGroup + p 2 weight + m (F)Lnet/minecraft/class_5483$class_5496; method_31008 creatureSpawnProbability + p 1 probability + m (Lnet/minecraft/class_1299;DD)Lnet/minecraft/class_5483$class_5496; method_31009 spawnCost + p 1 entityType + p 2 mass + p 4 gravityLimit + m (Lnet/minecraft/class_1311;)Lnet/minecraft/class_6012$class_6006; method_68692 method_68692 + p 0 group + m ()Lnet/minecraft/class_5483; method_31007 build + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_6012; method_31012 method_31012 + p 0 spawner +c net/minecraft/class_5483$class_1964 net/minecraft/world/biome/SpawnSettings$SpawnEntry + f I comp_3489 minGroupSize + f Lcom/mojang/serialization/MapCodec; field_24681 CODEC + f Lnet/minecraft/class_1299; comp_3488 type + f I comp_3490 maxGroupSize + m ()I comp_3489 minGroupSize + m (Lnet/minecraft/class_5483$class_1964;)Lcom/mojang/serialization/DataResult; method_49499 method_49499 + p 0 spawnEntry + m ()Lnet/minecraft/class_1299; comp_3488 type + m (Lnet/minecraft/class_5483$class_1964;)Lnet/minecraft/class_1299; method_28436 method_28436 + p 0 spawnEntry + m ()I comp_3490 maxGroupSize + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28433 method_28433 + p 0 instance + m (Lnet/minecraft/class_5483$class_1964;)Ljava/lang/Integer; method_28434 method_28434 + p 0 spawnEntry + m (Lnet/minecraft/class_5483$class_1964;)Ljava/lang/Integer; method_28435 method_28435 + p 0 spawnEntry + m (Lnet/minecraft/class_1299;II)V + p 1 type + p 3 minGroupSize + p 2 minGroupSize +c net/minecraft/class_4151 net/minecraft/entity/EntityInteraction + f Lnet/minecraft/class_4151; field_18476 VILLAGER_HURT + f Lnet/minecraft/class_4151; field_18477 VILLAGER_KILLED + f Lnet/minecraft/class_4151; field_18474 ZOMBIE_VILLAGER_CURED + f Lnet/minecraft/class_4151; field_18475 GOLEM_KILLED + f Lnet/minecraft/class_4151; field_18478 TRADE + m (Ljava/lang/String;)Lnet/minecraft/class_4151; method_19109 create + p 0 key +c net/minecraft/class_104 net/minecraft/loot/function/ExplosionDecayLootFunction + f Lcom/mojang/serialization/MapCodec; field_45815 CODEC + m (Ljava/util/List;)V + p 1 conditions + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53309 method_53309 + p 0 instance + m ()Lnet/minecraft/class_120$class_121; method_478 builder +c net/minecraft/class_5485 net/minecraft/world/biome/GenerationSettings + f Lcom/mojang/serialization/MapCodec; field_26413 CODEC + f Lorg/slf4j/Logger; field_26638 LOGGER + f Ljava/util/List; field_26416 features + f Lnet/minecraft/class_5485; field_26639 INSTANCE + f Ljava/util/function/Supplier; field_34465 allowedFeatures + f Ljava/util/function/Supplier; field_26640 flowerFeatures + f Lnet/minecraft/class_6885; field_26415 carvers + m (Lnet/minecraft/class_6885;Ljava/util/List;)V + p 2 features + p 1 carvers + m (Lnet/minecraft/class_5485;)Ljava/util/List; method_30809 method_30809 + p 0 generationSettings + m (Lnet/minecraft/class_6796;)Z method_38105 isFeatureAllowed + p 1 feature + m (Lnet/minecraft/class_2975;)Z method_40138 method_40138 + p 0 feature + m (Lnet/minecraft/class_5485;)Lnet/minecraft/class_6885; method_30808 method_30808 + p 0 generationSettings + m ()Ljava/util/List; method_30983 getFeatures + c Returns the lists of features configured for each {@link net.minecraft.world.gen.GenerationStep.Feature feature generation step}, up to the highest step that has a configured feature.\nEntries are guaranteed to not be null, but may be empty lists if an earlier step has no features, but a later step does. + m ()Ljava/lang/Iterable; method_30976 getCarversForStep + m ()Ljava/util/List; method_30982 getFlowerFeatures + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30802 method_30802 + p 0 instance +c net/minecraft/class_5485$class_7868 net/minecraft/world/biome/GenerationSettings$Builder + f Ljava/util/List; field_40897 indexedFeaturesList + f Ljava/util/List; field_40896 carverStepsToCarvers + m (ILnet/minecraft/class_6880;)Lnet/minecraft/class_5485$class_7868; method_46673 addFeature + p 1 ordinal + p 2 featureEntry + m (Lnet/minecraft/class_2893$class_2895;Lnet/minecraft/class_6880;)Lnet/minecraft/class_5485$class_7868; method_46676 feature + p 2 featureEntry + p 1 featureStep + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_5485$class_7868; method_46675 carver + p 1 carverEntry + m (I)V method_46672 fillFeaturesList + p 1 size + m ()Lnet/minecraft/class_5485; method_46671 build +c net/minecraft/class_5485$class_5495 net/minecraft/world/biome/GenerationSettings$LookupBackedBuilder + f Lnet/minecraft/class_7871; field_40895 configuredCarverLookup + f Lnet/minecraft/class_7871; field_40894 placedFeatureLookup + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_5485$class_5495; method_30991 carver + p 1 carverKey + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)V + p 1 placedFeatureLookup + p 2 configuredCarverLookup + m (Lnet/minecraft/class_2893$class_2895;Lnet/minecraft/class_5321;)Lnet/minecraft/class_5485$class_5495; method_30992 feature + p 1 featureStep + p 2 featureKey +c net/minecraft/class_4153 net/minecraft/world/poi/PointOfInterestStorage + f Lit/unimi/dsi/fastutil/longs/LongSet; field_20688 preloadedChunks + f Lnet/minecraft/class_4153$class_4154; field_18484 pointOfInterestDistanceTracker + m (Ljava/util/function/Predicate;Lnet/minecraft/class_2338;ILnet/minecraft/class_4153$class_4155;)Ljava/util/Optional; method_43985 getNearestTypeAndPosition + p 4 occupationStatus + p 3 radius + p 2 pos + p 1 typePredicate + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;)Lnet/minecraft/class_4156; method_19115 add + p 1 pos + p 2 type + m (Lnet/minecraft/class_4076;)I method_19118 getDistanceFromNearestOccupied + p 1 pos + m (Ljava/util/function/Predicate;Lnet/minecraft/class_4156;)Z method_43982 method_43982 + p 1 poi + m (Lnet/minecraft/class_2826;Ljava/util/function/BiConsumer;Lnet/minecraft/class_2338;)V method_19511 method_19511 + p 2 pos + m (Lcom/mojang/datafixers/util/Pair;)Z method_22442 method_22442 + p 0 pair + m (Lnet/minecraft/class_2338;)Z method_19129 releaseTicket + p 1 pos + m (Ljava/util/function/Predicate;Lnet/minecraft/class_2338;ILnet/minecraft/class_4153$class_4155;)J method_20252 count + p 4 occupationStatus + p 2 pos + p 3 radius + p 1 typePredicate + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_4156;)D method_43979 method_43979 + p 1 poi + m (Lnet/minecraft/class_2826;)Z method_20345 shouldScan + p 0 chunkSection + m (Ljava/util/function/Predicate;Lnet/minecraft/class_4153$class_4155;Lnet/minecraft/class_1923;)Ljava/util/stream/Stream; method_19121 method_19121 + p 3 chunkPos + m (Ljava/util/function/Predicate;Lnet/minecraft/class_2338;ILnet/minecraft/class_4153$class_4155;)Ljava/util/Optional; method_20006 getNearestPosition + p 4 occupationStatus + p 3 radius + p 2 pos + p 1 typePredicate + m (Lnet/minecraft/class_2826;Lnet/minecraft/class_4076;Ljava/util/function/BiConsumer;)V method_20349 method_20349 + p 3 populator + m (Lnet/minecraft/class_2338;)Ljava/util/Optional; method_19132 getType + p 1 pos + m (Ljava/util/function/Predicate;Lnet/minecraft/class_4153$class_4155;Ljava/util/Optional;)Ljava/util/stream/Stream; method_19120 method_19120 + p 2 poiSet + m (Lnet/minecraft/class_1923;Ljava/lang/Integer;)Ljava/util/Optional; method_19124 method_19124 + p 2 coord + m (Lnet/minecraft/class_1923;)Z method_22441 method_22441 + p 1 chunkPos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)D method_20003 method_20003 + p 1 poiPos + m (Lnet/minecraft/class_4156;)Lcom/mojang/datafixers/util/Pair; method_43981 method_43981 + p 0 poi + m (Lnet/minecraft/class_4156;)Lcom/mojang/datafixers/util/Pair; method_43984 method_43984 + p 0 poi + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_1923;)V method_22438 method_22438 + p 1 chunkPos + m (Lnet/minecraft/class_9240;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;ZLnet/minecraft/class_5455;Lnet/minecraft/class_9820;Lnet/minecraft/class_5539;)V + p 7 world + p 6 errorHandler + p 5 registryManager + p 4 dsync + p 3 dataFixer + p 2 directory + p 1 storageKey + m (Lnet/minecraft/class_4076;)Lcom/mojang/datafixers/util/Pair; method_22443 method_22443 + p 1 sectionPos + m (Ljava/util/function/Predicate;Lnet/minecraft/class_2338;ILnet/minecraft/class_4153$class_4155;)Ljava/util/stream/Stream; method_19125 getInCircle + p 3 radius + p 4 occupationStatus + p 1 typePredicate + p 2 pos + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_12014; method_74666 getDebugData + p 1 pos + m (Lnet/minecraft/class_2338;)V method_19112 remove + p 1 pos + m (Ljava/util/function/Predicate;Lnet/minecraft/class_4156;)Z method_20004 method_20004 + p 1 poi + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;I)V method_22439 preloadChunks + c Preloads chunks in a square area with the given radius. Loads the chunks with {@code ChunkStatus.EMPTY}. + p 3 radius + c the radius in blocks + p 2 pos + p 1 world + m (Lnet/minecraft/class_2826;Lnet/minecraft/class_4076;Ljava/util/function/BiConsumer;)V method_20348 scanAndPopulate + p 3 populator + p 1 chunkSection + p 2 sectionPos + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/class_2338;ILnet/minecraft/class_4153$class_4155;)Ljava/util/stream/Stream; method_30957 getSortedTypesAndPositions + p 2 posPredicate + p 3 pos + p 1 typePredicate + p 4 radius + p 5 occupationStatus + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2338;)Z method_26339 hasTypeAt + p 1 type + p 2 pos + m (Lnet/minecraft/class_2338;Lcom/mojang/datafixers/util/Pair;)D method_30956 method_30956 + p 1 pair + m (Ljava/util/function/BiPredicate;Lnet/minecraft/class_4156;)Z method_19130 method_19130 + p 1 poi + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_6880;)Z method_43978 method_43978 + p 1 entry + m (Ljava/util/function/Predicate;Lnet/minecraft/class_2338;ILnet/minecraft/class_4153$class_4155;)Ljava/util/stream/Stream; method_22383 getInSquare + p 2 pos + p 1 typePredicate + p 4 occupationStatus + p 3 radius + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_4157;)V method_33582 method_33582 + p 1 poiSet + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/class_4153$class_4155;Lnet/minecraft/class_2338;ILnet/minecraft/class_5819;)Ljava/util/Optional; method_20005 getPosition + p 1 typePredicate + p 2 positionPredicate + p 3 occupationStatus + p 4 pos + p 5 radius + p 6 random + m (J)Z method_19133 isOccupied + p 1 pos + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/class_2338;ILnet/minecraft/class_4153$class_4155;)Ljava/util/Optional; method_34712 getNearestPosition + p 3 pos + p 2 posPredicate + p 5 occupationStatus + p 4 radius + p 1 typePredicate + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_4157;)Ljava/util/Optional; method_33580 method_33580 + p 1 poiSet + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)D method_34711 method_34711 + p 1 poiPos + m (Lnet/minecraft/class_2338;Ljava/util/function/Predicate;)Z method_19116 test + p 2 predicate + p 1 pos + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/class_2338;ILnet/minecraft/class_4153$class_4155;)Ljava/util/Optional; method_19127 getPosition + p 4 radius + p 3 pos + p 5 occupationStatus + p 2 posPredicate + p 1 typePredicate + m (Lnet/minecraft/class_2338;ILnet/minecraft/class_4156;)Z method_19113 method_19113 + p 2 poi + m (Lnet/minecraft/class_4076;Lnet/minecraft/class_2826;)V method_19510 initForPalette + p 1 sectionPos + p 2 chunkSection + m (Lnet/minecraft/class_4156;)Lnet/minecraft/class_2338; method_19128 method_19128 + p 0 poi + m (Lnet/minecraft/class_2826;Lnet/minecraft/class_4076;Lnet/minecraft/class_4157;)V method_20346 method_20346 + p 3 poiSet + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/class_2338;ILnet/minecraft/class_4153$class_4155;)Ljava/util/stream/Stream; method_21647 getPositions + p 4 radius + p 5 occupationStatus + p 2 posPredicate + p 3 pos + p 1 typePredicate + m (Ljava/util/function/Predicate;Lnet/minecraft/class_1923;Lnet/minecraft/class_4153$class_4155;)Ljava/util/stream/Stream; method_19123 getInChunk + p 2 chunkPos + p 1 typePredicate + p 3 occupationStatus + m (Lnet/minecraft/class_6880;)Z method_43980 method_43980 + p 0 entry + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_4157;)Ljava/util/Optional; method_74665 method_74665 + p 1 poiSet + m (Ljava/util/function/BiConsumer;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;)V method_19512 method_19512 + p 2 poiType + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_4157;)Ljava/lang/Boolean; method_33581 method_33581 + p 1 poiSet + m (Lnet/minecraft/class_2338;Ljava/util/function/Predicate;Lnet/minecraft/class_4157;)Ljava/lang/Boolean; method_19117 method_19117 + p 2 poiSet + m (Lcom/mojang/datafixers/util/Pair;)Lnet/minecraft/class_1923; method_22440 method_22440 + p 0 pair + m (Lnet/minecraft/class_2338;ILnet/minecraft/class_4156;)Z method_30335 method_30335 + p 2 poi + m (Ljava/util/function/Predicate;Ljava/util/function/BiPredicate;Lnet/minecraft/class_2338;I)Ljava/util/Optional; method_19126 getPosition + p 1 typePredicate + p 4 radius + p 3 pos + p 2 posPredicate + m (Lnet/minecraft/class_4157;)Ljava/lang/Boolean; method_20592 method_20592 + p 0 poiSet + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/class_2338;ILnet/minecraft/class_4153$class_4155;)Ljava/util/stream/Stream; method_43983 getTypesAndPositions + p 1 typePredicate + p 2 posPredicate + p 3 pos + p 4 radius + p 5 occupationStatus +c net/minecraft/class_4153$class_4155 net/minecraft/world/poi/PointOfInterestStorage$OccupationStatus + f Ljava/util/function/Predicate; field_18490 predicate + f Lnet/minecraft/class_4153$class_4155; field_18488 IS_OCCUPIED + f Lnet/minecraft/class_4153$class_4155; field_18487 HAS_SPACE + f Lnet/minecraft/class_4153$class_4155; field_18489 ANY + m (Lnet/minecraft/class_4156;)Z method_19136 method_19136 + p 0 poi + m (Ljava/lang/String;ILjava/util/function/Predicate;)V + p 3 predicate + m ()Ljava/util/function/Predicate; method_19135 getPredicate +c net/minecraft/class_4153$class_4154 net/minecraft/world/poi/PointOfInterestStorage$PointOfInterestDistanceTracker + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; field_18486 distances + m ()V method_19134 update +c net/minecraft/class_109 net/minecraft/loot/function/EnchantRandomlyLootFunction + f Lorg/slf4j/Logger; field_1031 LOGGER + f Lcom/mojang/serialization/MapCodec; field_45823 CODEC + f Ljava/util/Optional; field_51792 options + f Z field_51793 onlyCompatible + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_109$class_4954; method_489 builder + p 0 registries + m (Lnet/minecraft/class_109;)Ljava/util/Optional; method_53324 method_53324 + p 0 function + m ()Lnet/minecraft/class_109$class_4954; method_35520 create + m (ZLnet/minecraft/class_1799;Lnet/minecraft/class_6880;)Z method_60291 method_60291 + p 2 entry + m (Lnet/minecraft/class_109;)Ljava/lang/Boolean; method_60290 method_60290 + p 0 function + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60292 method_60292 + p 0 instance + m (Ljava/util/List;Ljava/util/Optional;Z)V + p 2 options + p 1 conditions + p 3 onlyCompatible + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_6880;Lnet/minecraft/class_5819;)Lnet/minecraft/class_1799; method_26266 addEnchantmentToStack + p 2 random + p 1 enchantment + p 0 stack +c net/minecraft/class_109$class_4954 net/minecraft/loot/function/EnchantRandomlyLootFunction$Builder + f Ljava/util/Optional; field_51794 options + f Z field_51795 onlyCompatible + m ()Lnet/minecraft/class_109$class_4954; method_25991 getThisBuilder + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_109$class_4954; method_25992 option + p 1 enchantment + m (Lnet/minecraft/class_6885;)Lnet/minecraft/class_109$class_4954; method_60293 options + p 1 options + m ()Lnet/minecraft/class_109$class_4954; method_60294 allowIncompatible +c net/minecraft/class_5481 net/minecraft/text/OrderedText + c An object that can supply character code points\nto a visitor, with a style context. + f Lnet/minecraft/class_5481; field_26385 EMPTY + c An empty text that does not call the visitors. + m (Lnet/minecraft/class_5481;)Lnet/minecraft/class_5481; method_34906 of + p 0 text + m (ILnet/minecraft/class_2583;)Lnet/minecraft/class_5481; method_30741 styled + p 1 style + p 0 codePoint + m (Lnet/minecraft/class_5481;Lnet/minecraft/class_5481;)Lnet/minecraft/class_5481; method_30742 concat + p 0 first + p 1 second + m (Lnet/minecraft/class_5481;Lnet/minecraft/class_5481;)Lnet/minecraft/class_5481; method_30752 innerConcat + p 1 text2 + p 0 text1 + m (Ljava/util/List;Lnet/minecraft/class_5224;)Z method_30750 method_30750 + p 1 visitor + m (Lnet/minecraft/class_5224;)Z method_30744 method_30744 + p 0 visitor + m (Lnet/minecraft/class_5224;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;ILnet/minecraft/class_2583;I)Z method_30746 method_30746 + p 2 charIndex + p 4 charPoint + p 3 style + m (Ljava/lang/String;Lnet/minecraft/class_2583;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;Lnet/minecraft/class_5224;)Z method_30748 method_30748 + p 3 visitor + m ()Lnet/minecraft/class_5481; method_34905 empty + m (Lnet/minecraft/class_5224;)Z accept accept + p 1 visitor + m (Ljava/util/List;)Lnet/minecraft/class_5481; method_30749 concat + p 0 texts + m (Lnet/minecraft/class_5481;Lnet/minecraft/class_5481;Lnet/minecraft/class_5224;)Z method_30743 method_30743 + p 2 visitor + m (Lnet/minecraft/class_2583;ILnet/minecraft/class_5224;)Z method_30751 method_30751 + p 2 visitor + m (Ljava/util/List;)Lnet/minecraft/class_5481; method_30755 innerConcat + p 0 texts + m (Ljava/lang/String;Lnet/minecraft/class_2583;Lnet/minecraft/class_5224;)Z method_34907 method_34907 + p 2 visitor + m (Lnet/minecraft/class_5224;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)Lnet/minecraft/class_5224; method_30745 map + p 1 codePointMapper + p 0 visitor + m (Ljava/lang/String;Lnet/minecraft/class_2583;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)Lnet/minecraft/class_5481; method_30754 styledBackwardsVisitedString + p 0 string + p 1 style + p 2 codePointMapper + m (Ljava/lang/String;Lnet/minecraft/class_2583;Lnet/minecraft/class_5224;)Z method_30753 method_30753 + p 2 visitor + m (Ljava/lang/String;Lnet/minecraft/class_2583;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)Lnet/minecraft/class_5481; method_34908 styledForwardsVisitedString + p 2 codePointMapper + p 0 string + p 1 style + m (Ljava/lang/String;Lnet/minecraft/class_2583;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;Lnet/minecraft/class_5224;)Z method_34911 method_34911 + p 3 visitor + m ([Lnet/minecraft/class_5481;)Lnet/minecraft/class_5481; method_34909 concat + p 0 texts + m (Ljava/lang/String;Lnet/minecraft/class_2583;)Lnet/minecraft/class_5481; method_34910 styledBackwardsVisitedString + p 1 style + p 0 string + m (Ljava/lang/String;Lnet/minecraft/class_2583;)Lnet/minecraft/class_5481; method_30747 styledForwardsVisitedString + p 0 string + p 1 style +c net/minecraft/class_4150 net/minecraft/entity/ai/brain/sensor/VillagerHostilesSensor + f Lcom/google/common/collect/ImmutableMap; field_18473 SQUARED_DISTANCES_FOR_DANGER + m (Lnet/minecraft/class_1309;)Z method_19104 isHostile + p 1 entity + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_19105 isCloseEnoughForDanger + p 1 villager + p 2 target +c net/minecraft/class_106 net/minecraft/loot/function/EnchantWithLevelsLootFunction + f Lnet/minecraft/class_5658; field_1026 levels + f Ljava/util/Optional; field_51796 options + f Lcom/mojang/serialization/MapCodec; field_45825 CODEC + m (Ljava/util/List;Lnet/minecraft/class_5658;Ljava/util/Optional;)V + p 1 conditions + p 3 options + p 2 levels + m (Lnet/minecraft/class_106;)Lnet/minecraft/class_5658; method_53331 method_53331 + p 0 function + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53330 method_53330 + p 0 instance + m (Lnet/minecraft/class_106;)Ljava/util/Optional; method_53329 method_53329 + p 0 function + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_5658;)Lnet/minecraft/class_106$class_107; method_481 builder + p 1 levels + p 0 registries +c net/minecraft/class_106$class_107 net/minecraft/loot/function/EnchantWithLevelsLootFunction$Builder + f Lnet/minecraft/class_5658; field_1028 levels + f Ljava/util/Optional; field_51797 options + m (Lnet/minecraft/class_5658;)V + p 1 levels + m ()Lnet/minecraft/class_106$class_107; method_483 getThisBuilder + m (Lnet/minecraft/class_6885;)Lnet/minecraft/class_106$class_107; method_60295 options + p 1 options +c net/minecraft/class_4156 net/minecraft/world/poi/PointOfInterest + f I field_18494 freeTickets + f Ljava/lang/Runnable; field_18495 updateListener + f Lnet/minecraft/class_2338; field_18492 pos + f Lnet/minecraft/class_6880; field_18493 type + m ()I method_35156 getFreeTickets + m ()Lnet/minecraft/class_6880; method_19142 getType + m ()Lnet/minecraft/class_2338; method_19141 getPos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;ILjava/lang/Runnable;)V + p 1 pos + p 4 updateListener + p 3 freeTickets + p 2 type + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Z method_19140 isOccupied + m ()Lnet/minecraft/class_4156$class_9864; method_61448 toSerialized + m ()Z method_19139 hasSpace + m ()Z method_19137 reserveTicket + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;Ljava/lang/Runnable;)V + p 3 updateListener + p 2 type + p 1 pos + m ()Z method_19138 releaseTicket +c net/minecraft/class_4156$class_9864 net/minecraft/world/poi/PointOfInterest$Serialized + f Lcom/mojang/serialization/Codec; field_52452 CODEC + f Lnet/minecraft/class_6880; comp_2912 poiType + f I comp_2913 freeTickets + f Lnet/minecraft/class_2338; comp_2911 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_61449 method_61449 + p 0 instance + m (Ljava/lang/Runnable;)Lnet/minecraft/class_4156; method_61450 toPointOfInterest + p 1 updateListener + m ()Lnet/minecraft/class_2338; comp_2911 pos + m ()I comp_2913 freeTickets + m ()Lnet/minecraft/class_6880; comp_2912 poiType + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;I)V + p 1 pos + p 2 poiType + p 3 freeTickets +c net/minecraft/class_101 net/minecraft/loot/function/CopyNameLootFunction + f Lnet/minecraft/class_12283; field_1018 source + f Lcom/mojang/serialization/MapCodec; field_45817 CODEC + m (Lnet/minecraft/class_12283;)Lnet/minecraft/class_120$class_121; method_473 builder + p 0 source + m (Lnet/minecraft/class_101;)Lnet/minecraft/class_12283; method_53313 method_53313 + p 0 function + m (Ljava/util/List;Lnet/minecraft/class_12283;)V + p 2 source + p 1 conditions + m (Lnet/minecraft/class_12283;Ljava/util/List;)Lnet/minecraft/class_117; method_474 method_474 + p 1 conditions + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53314 method_53314 + p 0 instance +c net/minecraft/class_4158 net/minecraft/world/poi/PointOfInterestType + f I comp_817 searchDistance + f Ljava/util/function/Predicate; field_39277 NONE + f I comp_816 ticketCount + f Ljava/util/Set; comp_815 blockStates + m (Lnet/minecraft/class_2680;)Z method_35159 contains + p 1 state + m ()I comp_817 searchDistance + m ()I comp_816 ticketCount + m (Lnet/minecraft/class_6880;)Z method_43987 method_43987 + p 0 type + m ()Ljava/util/Set; comp_815 blockStates + m (Ljava/util/Set;II)V + p 1 blockStates + p 2 ticketCount + p 3 searchDistance +c net/minecraft/class_5489 net/minecraft/client/font/MultilineText + f Lnet/minecraft/class_5489; field_26528 EMPTY + m (Lnet/minecraft/class_327;[Lnet/minecraft/class_2561;)Lnet/minecraft/class_5489; method_30892 create + p 0 renderer + p 1 texts + m (Lnet/minecraft/class_327;I[Lnet/minecraft/class_2561;)Lnet/minecraft/class_5489; method_61133 create + p 0 renderer + p 1 maxWidth + p 2 texts + m (Lnet/minecraft/class_327;Lnet/minecraft/class_2561;I)Lnet/minecraft/class_5489; method_30890 create + p 0 renderer + p 1 text + p 2 maxWidth + m (Lnet/minecraft/class_11735;IIILnet/minecraft/class_12225;)I method_75816 draw + p 4 lineHeight + p 3 y + p 2 x + p 1 alignment + p 5 consumer + m ()I method_44048 getMaxWidth + m (Lnet/minecraft/class_327;II[Lnet/minecraft/class_2561;)Lnet/minecraft/class_5489; method_61132 create + p 2 maxLines + p 1 maxWidth + p 0 textRenderer + p 3 texts + m ()I method_30887 getLineCount +c net/minecraft/class_5489$2 net/minecraft/client/font/MultilineText$2 + f Ljava/util/List; field_52298 lines + f Lnet/minecraft/class_2477; field_52299 language + m ()Ljava/util/List; method_61134 getLines +c net/minecraft/class_5489$class_5490 net/minecraft/client/font/MultilineText$Line + f Lnet/minecraft/class_5481; comp_2877 text + f I comp_2878 width + m (Lnet/minecraft/class_5481;I)V + p 2 width + p 1 text + m ()I comp_2878 width + m ()Lnet/minecraft/class_5481; comp_2877 text +c net/minecraft/class_4157 net/minecraft/world/poi/PointOfInterestSet + f Ljava/lang/Runnable; field_18499 updateListener + f Lit/unimi/dsi/fastutil/shorts/Short2ObjectMap; field_18497 pointsOfInterestByPos + f Z field_19226 valid + f Lorg/slf4j/Logger; field_18496 LOGGER + f Ljava/util/Map; field_18498 pointsOfInterestByType + m (Lnet/minecraft/class_2338;)Z method_19153 releaseTicket + p 1 pos + m (Lnet/minecraft/class_2338;)Ljava/util/Optional; method_19154 getType + p 1 pos + m ()V method_20395 clear + m (Lnet/minecraft/class_2338;)V method_19145 remove + p 1 pos + m (Lnet/minecraft/class_2338;)I method_35157 getFreeTickets + p 1 pos + m (Lnet/minecraft/class_2338;)Ljava/util/Optional; method_74667 getDebugData + p 1 pos + m (Lnet/minecraft/class_2338;Ljava/util/function/Predicate;)Z method_19147 test + p 1 pos + p 2 predicate + m ()Lnet/minecraft/class_4157$class_9865; method_61451 toSerialized + m (Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_19149 method_19149 + p 0 entry + m (Ljava/util/function/Consumer;)V method_20353 updatePointsOfInterest + p 1 updater + m (Ljava/util/function/Predicate;Ljava/util/Map$Entry;)Z method_19151 method_19151 + p 1 entry + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;)Lnet/minecraft/class_4156; method_19146 add + p 2 type + p 1 pos + m (Lnet/minecraft/class_2338;)Ljava/util/Optional; method_33584 get + p 1 pos + m (Ljava/util/function/Predicate;Lnet/minecraft/class_4153$class_4155;)Ljava/util/stream/Stream; method_19150 get + p 2 occupationStatus + p 1 predicate + m ()Z method_22444 isValid + m (Lnet/minecraft/class_4156;)Z method_20350 add + p 1 poi + m (Lit/unimi/dsi/fastutil/shorts/Short2ObjectMap;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;)V method_20352 method_20352 + p 3 poiEntry + p 2 pos + m (Ljava/lang/Runnable;)V + p 1 updateListener + m (Ljava/lang/Runnable;ZLjava/util/List;)V + p 2 valid + p 1 updateListener + p 3 pois + m (Lnet/minecraft/class_6880;)Ljava/util/Set; method_19143 method_19143 + p 0 type +c net/minecraft/class_4157$class_9865 net/minecraft/world/poi/PointOfInterestSet$Serialized + f Lcom/mojang/serialization/Codec; field_52453 CODEC + f Z comp_2914 isValid + f Ljava/util/List; comp_2915 records + m (Ljava/lang/Runnable;)Lnet/minecraft/class_4157; method_61453 toPointOfInterestSet + p 1 updateListener + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_61452 method_61452 + p 0 instance + m ()Z comp_2914 isValid + m ()Ljava/util/List; comp_2915 records + m (ZLjava/util/List;)V + p 1 isValid + p 2 records +c net/minecraft/class_10051 net/minecraft/client/render/entity/state/ParrotEntityRenderState + f F field_53511 flapAngle + f Lnet/minecraft/class_1453$class_7989; field_53510 variant + f Lnet/minecraft/class_584$class_585; field_53512 parrotPose +c net/minecraft/class_10052 net/minecraft/client/render/entity/state/PhantomEntityRenderState + f I field_53514 size + f F field_53513 wingFlapProgress +c net/minecraft/class_10050 net/minecraft/client/render/entity/state/PandaEntityRenderState + f Z field_53501 sneezing + f I field_53502 sneezeProgress + f Z field_53503 eating + f Z field_53504 scaredByThunderstorm + f Z field_53505 sitting + f Lnet/minecraft/class_1440$class_1443; field_53499 gene + f F field_53506 sittingAnimationProgress + f F field_53507 lieOnBackAnimationProgress + f F field_53508 rollOverAnimationProgress + f F field_53509 playingTicks + f Z field_53500 askingForBamboo +c net/minecraft/class_10055 net/minecraft/client/render/entity/state/PlayerEntityRenderState + f I field_53540 stingerCount + f Z field_53531 rightSleeveVisible + f Z field_53542 spectator + f Z field_53532 capeVisible + f Z field_53543 hatVisible + f Z field_62758 extraEars + f Z field_53544 jacketVisible + f Z field_53545 leftPantsLegVisible + f Z field_53535 applyFlyingRotation + f Z field_53546 rightPantsLegVisible + f Lnet/minecraft/class_1453$class_7989; field_53527 rightShoulderParrotVariant + f I field_53528 id + f I field_53539 stuckArrowCount + f Lnet/minecraft/class_1453$class_7989; field_53526 leftShoulderParrotVariant + f Z field_53530 leftSleeveVisible + f Lnet/minecraft/class_2561; field_53525 playerName + f Lnet/minecraft/class_8685; field_53520 skinTextures + f F field_53521 flyingRotation + f Lnet/minecraft/class_10444; field_55317 spyglassState + f F field_53534 glidingTicks + m ()F method_64259 getGlidingProgress +c net/minecraft/class_11387 net/minecraft/data/tag/vanilla/VanillaBlockItemTags + m ()V method_71549 configure + m (Lnet/minecraft/class_6862;Lnet/minecraft/class_6862;)Lnet/minecraft/class_11389; method_71550 builder + p 2 itemTag + p 1 blockTag +c net/minecraft/class_11385 net/minecraft/client/gui/screen/ingame/BookSigningScreen + f Lnet/minecraft/class_2561; field_60474 bylineText + f Lnet/minecraft/class_2561; field_60469 TITLE_BOX_TEXT + f Lnet/minecraft/class_2561; field_60468 TITLE_TEXT + f Lnet/minecraft/class_2561; field_60467 FINALIZE_WARNING_TEXT + f Lnet/minecraft/class_2561; field_60466 EDIT_TITLE_TEXT + f Ljava/lang/String; field_60465 bookTitle + f Lnet/minecraft/class_473; field_60470 editScreen + f Ljava/util/List; field_60472 pages + f Lnet/minecraft/class_1657; field_60471 player + f Lnet/minecraft/class_1268; field_60473 hand + f Lnet/minecraft/class_342; field_60475 bookTitleTextField + m (Lnet/minecraft/class_4185;Ljava/lang/String;)V method_71542 method_71542 + p 1 bookTitle + m (Lnet/minecraft/class_4185;)V method_71541 method_71541 + p 1 button + m ()V method_71544 onFinalize + m (Lnet/minecraft/class_4185;)V method_71543 method_71543 + p 1 button + m (Lnet/minecraft/class_473;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Ljava/util/List;)V + p 2 player + p 3 hand + p 1 editScreen + p 4 pages +c net/minecraft/class_10053 net/minecraft/client/render/entity/state/PigEntityRenderState + f Lnet/minecraft/class_1799; field_56120 saddleStack + f Lnet/minecraft/class_10586; field_55877 variant +c net/minecraft/class_11384 net/minecraft/client/gui/render/state/GuiElementRenderState + m ()Lnet/minecraft/class_8030; comp_4274 bounds +c net/minecraft/class_10054 net/minecraft/client/render/entity/state/PiglinEntityRenderState + f Z field_53516 brute + f Z field_53517 shouldZombify + f F field_53518 piglinCrossbowPullTime + f Lnet/minecraft/class_4837; field_53519 activity +c net/minecraft/class_10059 net/minecraft/client/render/entity/state/RabbitEntityRenderState + f Z field_53553 isToast + f Lnet/minecraft/class_1463$class_7990; field_53554 type + f F field_53552 jumpProgress +c net/minecraft/class_10057 net/minecraft/client/render/entity/state/PolarBearEntityRenderState + f F field_53550 warningAnimationProgress +c net/minecraft/class_11389 net/minecraft/data/tag/ProvidedTagBuilder + m (Ljava/lang/Object;)Lnet/minecraft/class_11389; method_71554 add + p 1 value + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_11389; method_71553 addTag + p 1 tag + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_11389; method_71559 addOptionalTag + p 1 tag + m (Ljava/lang/Object;)Lnet/minecraft/class_11389; method_71560 addOptional + p 1 value + m ([Ljava/lang/Object;)Lnet/minecraft/class_11389; method_71558 add + p 1 values + m (Lnet/minecraft/class_3495;)Lnet/minecraft/class_11389; method_71552 of + p 0 builder + m (Ljava/util/Collection;)Lnet/minecraft/class_11389; method_71555 add + p 1 values + m (Ljava/util/stream/Stream;)Lnet/minecraft/class_11389; method_71557 add + p 1 values + m (Ljava/util/function/Function;)Lnet/minecraft/class_11389; method_71556 mapped + p 1 mapper +c net/minecraft/class_11389$1 net/minecraft/data/tag/ProvidedTagBuilder$1 + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_11389; method_71561 add + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_11389; method_71562 addOptional +c net/minecraft/class_10058 net/minecraft/client/render/entity/state/PufferfishEntityRenderState + f I field_53551 puffState +c net/minecraft/class_11388 net/minecraft/data/tag/SimpleTagProvider + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_11389; method_71551 builder + p 1 tag +c net/minecraft/class_116 net/minecraft/loot/function/LootFunctionConsumingBuilder + m (Ljava/lang/Iterable;Ljava/util/function/Function;)Lnet/minecraft/class_116; method_43739 apply + p 2 toBuilderFunction + p 1 functions + m ([Ljava/lang/Object;Ljava/util/function/Function;)Lnet/minecraft/class_116; method_43740 apply + p 1 functions + p 2 toBuilderFunction + m ()Lnet/minecraft/class_116; method_43732 getThisFunctionConsumingBuilder + m (Lnet/minecraft/class_117$class_118;)Lnet/minecraft/class_116; method_511 apply + p 1 function +c net/minecraft/class_5493 net/minecraft/entity/ai/NavigationConditions + m (Lnet/minecraft/class_1408;Lnet/minecraft/class_2338;)Z method_31519 isInvalidPosition + p 0 navigation + p 1 pos + m (Lnet/minecraft/class_1308;)Z method_30955 hasMobNavigation + p 0 entity + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_2338;)Z method_31518 isWaterAt + p 1 pos + p 0 entity + m (Lnet/minecraft/class_1314;D)Z method_31517 isPositionTargetInRange + p 1 extraDistance + p 0 entity + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1314;)Z method_31520 isHeightInvalid + p 1 entity + p 0 pos + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_2338;)Z method_31522 hasPathfindingPenalty + p 0 entity + p 1 pos + m (ZLnet/minecraft/class_1314;Lnet/minecraft/class_2338;)Z method_31521 isPositionTargetOutOfWalkRange + p 2 pos + p 1 entity + p 0 posTargetInRange + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_2338;)Z method_31523 isSolidAt + p 0 entity + p 1 pos + m (ZLnet/minecraft/class_1314;Lnet/minecraft/class_243;)Z method_75726 isPositionTargetOutOfWalkRange + p 2 pos + p 1 entity + p 0 posTargetInRange +c net/minecraft/class_114 net/minecraft/loot/function/LimitCountLootFunction + f Lcom/mojang/serialization/MapCodec; field_45829 CODEC + f Lnet/minecraft/class_42; field_1044 limit + m (Lnet/minecraft/class_114;)Lnet/minecraft/class_42; method_53342 method_53342 + p 0 function + m (Lnet/minecraft/class_42;Ljava/util/List;)Lnet/minecraft/class_117; method_508 method_508 + p 1 conditions + m (Ljava/util/List;Lnet/minecraft/class_42;)V + p 1 conditions + p 2 limit + m (Lnet/minecraft/class_42;)Lnet/minecraft/class_120$class_121; method_506 builder + p 0 limit + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53343 method_53343 + p 0 instance +c net/minecraft/class_5492 net/minecraft/text/TextReorderingProcessor + f Lit/unimi/dsi/fastutil/ints/Int2IntFunction; field_26628 reverser + f Ljava/lang/String; field_26626 string + f Ljava/util/List; field_26627 styles + m ()Ljava/lang/String; method_30939 getString + m (Ljava/lang/StringBuilder;Ljava/util/List;ILnet/minecraft/class_2583;I)Z method_30941 method_30941 + p 2 charIndex + p 3 stylex + p 4 codePoint + m (IIZ)Ljava/util/List; method_30940 process + p 1 start + p 3 reverse + p 2 length + m (Ljava/lang/String;Ljava/util/List;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)V + p 3 reverser + p 2 styles + p 1 string + m (Lnet/minecraft/class_5348;)Lnet/minecraft/class_5492; method_36144 create + p 0 visitable + m (Lnet/minecraft/class_5348;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;Ljava/util/function/UnaryOperator;)Lnet/minecraft/class_5492; method_30943 create + p 1 reverser + p 0 visitable + p 2 shaper + m (Ljava/lang/StringBuilder;Ljava/util/List;Lnet/minecraft/class_2583;Ljava/lang/String;)Ljava/util/Optional; method_30942 method_30942 + p 3 text + p 2 style + m (I)I method_36142 method_36142 + p 0 codePoint + m (Ljava/lang/String;)Ljava/lang/String; method_36143 method_36143 + p 0 string +c net/minecraft/class_117 net/minecraft/loot/function/LootFunction + m ()Lnet/minecraft/class_5339; method_29321 getType + m (Ljava/util/function/BiFunction;Ljava/util/function/Consumer;Lnet/minecraft/class_47;)Ljava/util/function/Consumer; method_513 apply + p 2 context + p 1 lootConsumer + p 0 itemApplier + m (Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Lnet/minecraft/class_47;Lnet/minecraft/class_1799;)V method_514 method_514 + p 3 stack +c net/minecraft/class_117$class_118 net/minecraft/loot/function/LootFunction$Builder + m ()Lnet/minecraft/class_117; method_515 build +c net/minecraft/class_5491 net/minecraft/client/resource/language/ReorderingUtil + m (Ljava/lang/String;)Ljava/lang/String; method_30921 shapeArabic + p 0 string + m (Lnet/minecraft/class_5348;Z)Lnet/minecraft/class_5481; method_30922 reorder + p 0 text + p 1 rightToLeft +c net/minecraft/class_5498 net/minecraft/client/option/Perspective + f [Lnet/minecraft/class_5498; field_26667 VALUES + f Z field_26668 firstPerson + f Z field_26669 frontView + f Lnet/minecraft/class_5498; field_26666 THIRD_PERSON_FRONT + f Lnet/minecraft/class_5498; field_26664 FIRST_PERSON + f Lnet/minecraft/class_5498; field_26665 THIRD_PERSON_BACK + m ()Z method_31035 isFrontView + m ()Z method_31034 isFirstPerson + m (Ljava/lang/String;IZZ)V + p 3 firstPerson + p 4 frontView + m ()Lnet/minecraft/class_5498; method_31036 next +c net/minecraft/class_5497 net/minecraft/structure/processor/StructureProcessorList + f Ljava/util/List; field_26662 list + m ()Ljava/util/List; method_31027 getList + m (Ljava/util/List;)V + p 1 list +c net/minecraft/class_111 net/minecraft/loot/function/ExplorationMapLootFunction + f Lnet/minecraft/class_6862; field_1035 destination + f I field_31852 DEFAULT_SEARCH_RADIUS + f Lnet/minecraft/class_6880; field_1034 DEFAULT_DECORATION + f B field_31851 DEFAULT_ZOOM + f I field_1032 searchRadius + f Lnet/minecraft/class_6880; field_1036 decoration + f Lcom/mojang/serialization/MapCodec; field_45826 CODEC + f Z field_31853 DEFAULT_SKIP_EXISTING_CHUNKS + f B field_1037 zoom + f Z field_1033 skipExistingChunks + f Lnet/minecraft/class_6862; field_25032 DEFAULT_DESTINATION + m (Lnet/minecraft/class_111;)Ljava/lang/Boolean; method_53332 method_53332 + p 0 function + m (Lnet/minecraft/class_111;)Ljava/lang/Integer; method_53334 method_53334 + p 0 function + m (Ljava/util/List;Lnet/minecraft/class_6862;Lnet/minecraft/class_6880;BIZ)V + p 5 searchRadius + p 4 zoom + p 3 decoration + p 2 destination + p 6 skipExistingChunks + p 1 conditions + m (Lnet/minecraft/class_111;)Ljava/lang/Byte; method_53335 method_53335 + p 0 function + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53333 method_53333 + p 0 instance + m (Lnet/minecraft/class_111;)Lnet/minecraft/class_6880; method_53336 method_53336 + p 0 function + m ()Lnet/minecraft/class_111$class_112; method_492 builder + m (Lnet/minecraft/class_111;)Lnet/minecraft/class_6862; method_53337 method_53337 + p 0 function +c net/minecraft/class_111$class_112 net/minecraft/loot/function/ExplorationMapLootFunction$Builder + f I field_1040 searchRadius + f Z field_1041 skipExistingChunks + f Lnet/minecraft/class_6880; field_1042 decoration + f Lnet/minecraft/class_6862; field_1039 destination + f B field_1043 zoom + m (B)Lnet/minecraft/class_111$class_112; method_500 withZoom + p 1 zoom + m ()Lnet/minecraft/class_111$class_112; method_501 getThisBuilder + m (I)Lnet/minecraft/class_111$class_112; method_35521 searchRadius + p 1 searchRadius + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_111$class_112; method_499 withDecoration + p 1 decoration + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_111$class_112; method_502 withDestination + p 1 destination + m (Z)Lnet/minecraft/class_111$class_112; method_503 withSkipExistingChunks + p 1 skipExistingChunks +c net/minecraft/class_4168 net/minecraft/entity/ai/brain/Activity + f Ljava/lang/String; field_18600 id + f I field_23827 hashCode + f Lnet/minecraft/class_4168; field_37505 LAY_SPAWN + f Lnet/minecraft/class_4168; field_37503 TONGUE + f Lnet/minecraft/class_4168; field_37504 SWIM + f Lnet/minecraft/class_4168; field_18595 IDLE + f Lnet/minecraft/class_4168; field_18596 WORK + f Lnet/minecraft/class_4168; field_18594 CORE + f Lnet/minecraft/class_4168; field_18599 PANIC + f Lnet/minecraft/class_4168; field_18597 REST + f Lnet/minecraft/class_4168; field_18598 MEET + f Lnet/minecraft/class_4168; field_18885 PLAY + f Lnet/minecraft/class_4168; field_28352 PLAY_DEAD + f Lnet/minecraft/class_4168; field_38199 SNIFF + f Lnet/minecraft/class_4168; field_22397 CELEBRATE + f Lnet/minecraft/class_4168; field_22396 FIGHT + f Lnet/minecraft/class_4168; field_22399 AVOID + f Lnet/minecraft/class_4168; field_22398 ADMIRE_ITEM + f Lnet/minecraft/class_4168; field_30691 LONG_JUMP + f Lnet/minecraft/class_4168; field_22400 RIDE + f Lnet/minecraft/class_4168; field_19042 PRE_RAID + f Lnet/minecraft/class_4168; field_19043 HIDE + f Lnet/minecraft/class_4168; field_19041 RAID + f Lnet/minecraft/class_4168; field_33504 RAM + f Lnet/minecraft/class_4168; field_38201 ROAR + f Lnet/minecraft/class_4168; field_38200 INVESTIGATE + f Lnet/minecraft/class_4168; field_38203 DIG + f Lnet/minecraft/class_4168; field_38202 EMERGE + m (Ljava/lang/String;)V + p 1 id + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/lang/String;)Lnet/minecraft/class_4168; method_19210 register + p 0 id + m ()Ljava/lang/String; method_19634 getId +c net/minecraft/class_11372 net/minecraft/storage/WriteView + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_11372$class_11373; method_71467 getListAppender + p 2 codec + p 1 key + m (Ljava/lang/String;Ljava/lang/String;)V method_71469 putString + p 2 value + p 1 key + m (Ljava/lang/String;S)V method_71471 putShort + p 2 value + p 1 key + m (Ljava/lang/String;J)V method_71466 putLong + p 2 value + p 1 key + m (Ljava/lang/String;[I)V method_71473 putIntArray + p 2 value + p 1 key + m (Ljava/lang/String;I)V method_71465 putInt + p 2 value + p 1 key + m (Ljava/lang/String;Z)V method_71472 putBoolean + p 2 value + p 1 key + m (Lcom/mojang/serialization/MapCodec;Ljava/lang/Object;)V method_71460 put + p 2 value + p 1 codec + m (Ljava/lang/String;)Lnet/minecraft/class_11372; method_71461 get + p 1 key + m (Ljava/lang/String;B)V method_71462 putByte + p 2 value + p 1 key + m ()Z method_71457 isEmpty + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;Ljava/lang/Object;)V method_71468 put + p 3 value + p 2 codec + p 1 key + m (Ljava/lang/String;)Lnet/minecraft/class_11372$class_11374; method_71476 getList + p 1 key + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;Ljava/lang/Object;)V method_71477 putNullable + p 2 codec + p 3 value + p 1 key + m (Ljava/lang/String;)V method_71478 remove + p 1 key + m (Ljava/lang/String;F)V method_71464 putFloat + p 2 value + p 1 key + m (Ljava/lang/String;D)V method_71463 putDouble + p 2 value + p 1 key +c net/minecraft/class_11372$class_11374 net/minecraft/storage/WriteView$ListView + m ()Lnet/minecraft/class_11372; method_71480 add + m ()V method_71481 removeLast + m ()Z method_71482 isEmpty +c net/minecraft/class_11372$class_11373 net/minecraft/storage/WriteView$ListAppender + m (Ljava/lang/Object;)V method_71484 add + p 1 value + m ()Z method_71483 isEmpty +c net/minecraft/class_10040 net/minecraft/client/render/entity/state/ItemFrameEntityRenderState + f I field_53440 rotation + f Z field_53441 glow + f Lnet/minecraft/class_9209; field_53443 mapId + f Lnet/minecraft/class_2350; field_53438 facing + f Lnet/minecraft/class_10444; field_55314 itemRenderState + f Lnet/minecraft/class_10090; field_53444 mapRenderState +c net/minecraft/class_11371 net/minecraft/storage/ReadContext + f Lnet/minecraft/class_11368; field_60418 emptyReadView + f Lnet/minecraft/class_11368$class_11370; field_60416 emptyListReadView + f Lnet/minecraft/class_7225$class_7874; field_60414 registries + f Lcom/mojang/serialization/DynamicOps; field_60415 ops + f Lnet/minecraft/class_11368$class_11369; field_60417 emptyTypedListReadView + m (Lnet/minecraft/class_7225$class_7874;Lcom/mojang/serialization/DynamicOps;)V + p 1 registries + p 2 ops + m ()Lcom/mojang/serialization/DynamicOps; method_71485 getOps + m ()Lnet/minecraft/class_11368$class_11369; method_71489 getEmptyTypedListReadView + m ()Lnet/minecraft/class_7225$class_7874; method_71486 getRegistries + m ()Lnet/minecraft/class_11368; method_71487 getEmptyReadView + m ()Lnet/minecraft/class_11368$class_11370; method_71488 getEmptyListReadView +c net/minecraft/class_10041 net/minecraft/client/render/entity/state/LightningEntityRenderState + f J field_53445 seed +c net/minecraft/class_10044 net/minecraft/client/render/entity/state/LlamaSpitEntityRenderState + f F field_53477 yaw + f F field_53478 pitch +c net/minecraft/class_10045 net/minecraft/client/render/entity/state/MinecartEntityRenderState + f Lnet/minecraft/class_2680; field_53487 containedBlock + f J field_53482 hash + f F field_53481 lerpedYaw + f Lnet/minecraft/class_243; field_53479 pastPos + f F field_53480 lerpedPitch + f I field_53483 damageWobbleSide + f I field_53486 blockOffset + f Lnet/minecraft/class_243; field_53489 lerpedPos + f F field_53485 damageWobbleStrength + f F field_53484 damageWobbleTicks + f Z field_53488 usesExperimentalController + f Lnet/minecraft/class_243; field_53491 futurePos + f Lnet/minecraft/class_243; field_53490 presentPos +c net/minecraft/class_10042 net/minecraft/client/render/entity/state/LivingEntityRenderState + f Lnet/minecraft/class_4050; field_53465 pose + f Z field_53455 flipUpsideDown + f Z field_53457 baby + f Z field_53456 shaking + f Z field_53459 usingRiptide + f Z field_53458 touchingWater + f F field_53446 bodyYaw + f Lnet/minecraft/class_2350; field_53463 sleepingDirection + f F field_53448 pitch + f F field_53447 relativeHeadYaw + c The entity's head yaw relative to its body yaw. For example, if the entity is facing straight ahead, this value is 0. + f Z field_53460 hurt + f F field_53449 deathTime + f Lnet/minecraft/class_2484$class_2485; field_55315 wearingSkullType + f Lnet/minecraft/class_9296; field_55316 wearingSkullProfile + f Z field_53461 invisibleToPlayer + f Lnet/minecraft/class_10444; field_53467 headItemRenderState + f F field_53451 limbSwingAmplitude + f F field_53450 limbSwingAnimationProgress + f F field_53453 baseScale + f F field_64688 timeSinceLastKineticAttack + f F field_53452 headItemAnimationProgress + f F field_53454 ageScale + m (Lnet/minecraft/class_4050;)Z method_62613 isInPose + p 1 pose +c net/minecraft/class_10043 net/minecraft/client/render/entity/state/LlamaEntityRenderState + f Lnet/minecraft/class_1501$class_7993; field_53473 variant + f Z field_53474 hasChest + f Z field_53476 trader + f Lnet/minecraft/class_1799; field_54187 bodyArmor +c net/minecraft/class_10049 net/minecraft/client/render/entity/state/PaintingEntityRenderState + f Lnet/minecraft/class_2350; field_53496 facing + f Lnet/minecraft/class_1535; field_53497 variant + f [I field_53498 lightmapCoordinates +c net/minecraft/class_10046 net/minecraft/client/render/entity/state/TntMinecartEntityRenderState + f F field_53492 fuseTicks +c net/minecraft/class_10047 net/minecraft/client/render/entity/state/MooshroomEntityRenderState + f Lnet/minecraft/class_1438$class_4053; field_53493 type +c net/minecraft/class_9269 net/minecraft/datafixer/fix/TippedArrowPotionToItemFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57274 method_57274 + p 3 itemDynamic +c net/minecraft/class_9267 net/minecraft/datafixer/fix/ItemStackComponentizationFix + f I field_49191 HIDE_CAN_DESTROY_FLAG + f I field_49195 HIDE_UPGRADE_FLAG + f I field_49190 HIDE_UNBREAKABLE_FLAG + f I field_49194 HIDE_DYED_FLAG + f Ljava/util/List; field_49198 RELEVANT_ENTITY_NBT_KEYS + f I field_49193 HIDE_ADDITIONAL_FLAG + f I field_49189 HIDE_MODIFIERS_FLAG + f Lcom/google/common/base/Splitter; field_49199 COMMA_SPLITTER + f Ljava/util/Set; field_49197 ENTITY_BUCKET_ITEM_IDS + f I field_49192 HIDE_CAN_PLACE_FLAG + f Ljava/util/Set; field_51347 BOOLEAN_BLOCK_STATE_PROPERTIES + f I field_49188 HIDE_ENCHANTMENTS_FLAG + f Ljava/util/Set; field_49196 POTION_ITEM_IDS + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;)V method_57224 fixPotionContents + p 1 dynamic + p 0 data + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57235 fixBookPages + p 0 data + p 1 dynamic + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57247 method_57247 + p 1 blockEntityTagDynamic + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57243 method_57243 + p 1 explosionDynamic + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_57215 getEnchantmentAndLevelPair + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57255 method_57255 + p 0 itemsDynamic + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Z)V method_57226 fixBlockPredicateList + p 2 nbtKey + p 1 dynamic + p 0 data + p 4 hideInTooltip + p 3 componentId + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Z)V method_57214 fixEnchantments + p 2 nbtKey + p 3 componentId + p 0 data + p 1 dynamic + p 4 hideInTooltip + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/util/Optional;)Lcom/mojang/serialization/Dynamic; method_57217 createFilterableTextDynamic + p 2 filtered + p 0 dynamic + p 1 unfiltered + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_57248 method_57248 + p 0 filteredPagesValueDynamic + m (Lnet/minecraft/class_9267$class_9268;)V method_57223 fixFireworks + p 0 data + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_57216 createBlockPredicateListDynamic + p 0 dynamic + p 1 listAsString + m (Ljava/lang/String;Ljava/lang/Number;)Lcom/mojang/datafixers/util/Pair; method_57222 method_57222 + p 0 enchantmentId + p 1 level + m (Lnet/minecraft/class_9267$class_9268;)V method_57209 fixExplosion + p 0 data + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;)V method_57239 fixLodestoneTarget + p 1 dynamic + p 0 data + m (Lcom/mojang/serialization/OptionalDynamic;)Lcom/mojang/serialization/Dynamic; method_57218 createPropertiesDynamic + p 0 propertiesDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57234 fixExplosion + p 0 dynamic + m (Ljava/lang/String;)Z method_58048 isValidUsername + p 0 username + m (I)Z method_58049 method_58049 + p 0 c + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_57213 fixBlockEntityData + p 2 blockEntityId + p 1 dynamic + p 0 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/datafixers/util/Pair; method_57232 fixMapDecorations + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57227 fixAttributeModifier + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_57249 method_57249 + p 0 filteredPagesKeyDynamic + m (I)Ljava/lang/String; method_57208 getMapDecorationName + p 0 index + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;)V method_57211 fixStack + p 1 dynamic + p 0 data + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;I)V method_57231 fixAttributeModifiers + p 1 dynamic + p 0 data + p 2 hideFlags + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lnet/minecraft/class_9267$class_9268;)Lcom/mojang/serialization/Dynamic; method_57229 method_57229 + p 0 data + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57241 method_57241 + p 1 fireworksDynamic + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_57250 method_57250 + p 0 pagesDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57253 method_57253 + p 0 predicatesDynamic + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; method_57212 fixDisplay + p 0 data + p 2 hideFlags + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57238 method_57238 + p 0 dynamic + m (Ljava/lang/String;)Z method_57221 method_57221 + p 0 potionId + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;)V method_57230 fixWritableBookContent + p 0 data + p 1 dynamic + m (Lnet/minecraft/class_9267$class_9268;ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57210 method_57210 + p 2 displayDynamic + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;)V method_57245 method_57245 + p 1 skullOwnerDynamic + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;)V method_57237 fixBucketEntityData + p 0 data + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57236 createProfileDynamic + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57252 method_57252 + p 0 operationDynamic + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;)V method_58051 method_58051 + p 1 blockStateTagDynamic + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;I)V method_57225 fixAdventureModePredicates + p 0 data + p 2 hideFlags + p 1 dynamic + m (Lnet/minecraft/class_9267$class_9268;Lcom/mojang/serialization/Dynamic;)V method_57233 fixWrittenBookContent + p 0 data + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_58050 fixBlockStateTag + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/stream/Stream; method_57254 method_57254 + p 0 enchantmentsDynamic +c net/minecraft/class_9267$class_9268 net/minecraft/datafixer/fix/ItemStackComponentizationFix$StackData + f I field_49201 count + f Lcom/mojang/serialization/Dynamic; field_49203 leftoverNbt + f Lcom/mojang/serialization/Dynamic; field_49204 nbt + f Ljava/lang/String; field_49200 itemId + f Lcom/mojang/serialization/Dynamic; field_49202 components + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)V method_57271 method_57271 + p 2 nbt + m (Ljava/lang/String;ZLjava/util/function/UnaryOperator;)V method_57268 applyFixer + p 3 fixer + p 2 removeIfEmpty + p 1 nbtKey + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)V method_57272 method_57272 + p 2 value + m (Ljava/lang/String;Ljava/lang/String;)V method_57266 moveToComponent + p 1 nbtKey + p 2 componentId + m (Ljava/lang/String;)Z method_58054 itemContains + p 1 componentId + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/Number;)Lnet/minecraft/class_9267$class_9268; method_57259 method_57259 + p 1 itemId + p 2 count + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)V method_57263 setComponent + p 2 value + p 1 key + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)V method_57267 moveToComponent + p 1 nbtKey + p 3 defaultValue + p 2 componentId + m (Ljava/lang/String;)Lcom/mojang/serialization/OptionalDynamic; method_57262 getAndRemove + p 1 key + m ()Lcom/mojang/serialization/Dynamic; method_57256 finalize + m (Ljava/lang/String;)Z method_57270 itemEquals + p 1 itemId + m (Ljava/lang/String;Lcom/mojang/serialization/OptionalDynamic;)V method_57265 setComponent + p 1 key + p 2 optionalValue + m (Ljava/lang/String;ILcom/mojang/serialization/Dynamic;)V + p 3 dynamic + p 2 count + p 1 itemId + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57258 mergeLeftoverNbt + p 0 data + p 1 leftoverNbt + m (Ljava/util/Set;)Z method_57269 itemMatches + p 1 itemIds + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_57257 fromDynamic + p 0 dynamic + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_57264 moveToComponent + p 3 componentId + p 1 nbtKey + p 2 components +c net/minecraft/class_9266 net/minecraft/datafixer/fix/EmptyItemInHotbarFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_57205 method_57205 + p 1 hotbarTyped +c net/minecraft/class_9265 net/minecraft/datafixer/fix/BeehiveFieldRenameFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57204 renameFields + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57203 removeBeesField +c net/minecraft/class_9264 net/minecraft/datafixer/fix/BannerPatternFormatFix + f Ljava/util/Map; field_49187 OLD_TO_NEW_PATTERNS + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57193 replacePatterns + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57195 replacePatternAndColor +c net/minecraft/class_9263 net/minecraft/datafixer/fix/AreaEffectCloudPotionFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57191 update + p 1 areaEffectCloudDynamic +c net/minecraft/class_9262 net/minecraft/text/RawFilteredPair + f Ljava/lang/Object; comp_2369 raw + f Ljava/util/Optional; comp_2370 filtered + m (Ljava/util/function/Function;)Ljava/util/Optional; method_57141 resolve + p 1 resolver + m (Ljava/lang/Object;)Lnet/minecraft/class_9262; method_57137 of + p 0 raw + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_57139 createPacketCodec + p 0 basePacketCodec + m (Z)Ljava/lang/Object; method_57140 get + p 1 shouldFilter + m (Ljava/util/function/Function;)Lnet/minecraft/class_9262; method_57138 map + p 1 mapper + m (Lnet/minecraft/class_5837;)Lnet/minecraft/class_9262; method_57134 of + p 0 message + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57136 method_57136 + p 1 instance + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_57135 createCodec + p 0 baseCodec + m ()Ljava/util/Optional; comp_2370 filtered + m ()Ljava/lang/Object; comp_2369 raw + m (Ljava/lang/Object;Ljava/util/Optional;)V + p 1 raw + p 2 filtered +c net/minecraft/class_10352 net/minecraft/util/context/ContextParameterMap + f Ljava/util/Map; field_54893 map + m (Lnet/minecraft/class_169;)Z method_64965 contains + p 1 parameter + m (Lnet/minecraft/class_169;Ljava/lang/Object;)Ljava/lang/Object; method_64966 getOrDefault + p 1 parameter + p 2 defaultValue + m (Lnet/minecraft/class_169;)Ljava/lang/Object; method_64967 getOrThrow + p 1 parameter + m (Ljava/util/Map;)V + p 1 map + m (Lnet/minecraft/class_169;)Ljava/lang/Object; method_64968 getNullable + p 1 parameter +c net/minecraft/class_10352$class_10353 net/minecraft/util/context/ContextParameterMap$Builder + f Ljava/util/Map; field_54894 map + m (Lnet/minecraft/class_169;Ljava/lang/Object;)Lnet/minecraft/class_10352$class_10353; method_64973 addNullable + p 1 parameter + p 2 value + m (Lnet/minecraft/class_169;)Ljava/lang/Object; method_64972 getNullable + p 1 parameter + m (Lnet/minecraft/class_169;)Ljava/lang/Object; method_64969 getOrThrow + p 1 parameter + m (Lnet/minecraft/class_176;)Lnet/minecraft/class_10352; method_64971 build + p 1 type + m (Lnet/minecraft/class_169;Ljava/lang/Object;)Lnet/minecraft/class_10352$class_10353; method_64970 add + p 2 value + p 1 parameter +c net/minecraft/class_11684 net/minecraft/client/render/command/RenderDispatcher + f Lnet/minecraft/class_327; field_61833 textRenderer + f Lnet/minecraft/class_11691; field_61838 textCommandRenderer + f Lnet/minecraft/class_11697; field_61831 atlasManager + f Lnet/minecraft/class_11688; field_61840 leashCommandRenderer + f Lnet/minecraft/class_11687; field_61841 itemCommandRenderer + f Lnet/minecraft/class_4597$class_4598; field_62258 crumblingOverlayVertexConsumers + f Lnet/minecraft/class_11793; field_62260 modelPartCommandRenderer + f Lnet/minecraft/class_11661; field_61828 queue + f Lnet/minecraft/class_11683; field_62259 modelCommandRenderer + f Lnet/minecraft/class_11685; field_61835 fireCommandRenderer + f Lnet/minecraft/class_11689; field_61837 labelCommandRenderer + f Lnet/minecraft/class_776; field_61829 blockRenderManager + f Lnet/minecraft/class_4597$class_4598; field_61830 vertexConsumers + f Lnet/minecraft/class_4618; field_61832 outlineVertexConsumers + f Lnet/minecraft/class_11690; field_61834 shadowPiecesCommandRenderer + f Lnet/minecraft/class_11682; field_61842 customCommandRenderer + f Lnet/minecraft/class_11681; field_61843 fallingBlockCommandRenderer + f Lnet/minecraft/class_11977; field_62759 layeredCustomCommandRenderer + m ()Lnet/minecraft/class_11661; method_73003 getQueue + m ()V method_73002 render + m (Lnet/minecraft/class_11661;Lnet/minecraft/class_776;Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_11697;Lnet/minecraft/class_4618;Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_327;)V + p 7 textRenderer + p 1 queue + p 2 blockRenderManager + p 5 outlineVertexConsumers + p 6 crumblingOverlayVertexConsumers + p 3 vertexConsumers + p 4 atlasManager + m ()V method_74817 endLayeredCustoms +c net/minecraft/class_11683 net/minecraft/client/render/command/ModelCommandRenderer + f Lnet/minecraft/class_4587; field_61827 matrices + m (Lnet/minecraft/class_11661$class_11670;Lnet/minecraft/class_1921;Lnet/minecraft/class_4588;Lnet/minecraft/class_4618;Lnet/minecraft/class_4597$class_4598;)V method_73000 render + p 2 renderLayer + p 3 vertexConsumer + p 1 model + p 4 outlineVertexConsumers + p 5 crumblingOverlayVertexConsumers + m (Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_4618;Ljava/util/List;Lnet/minecraft/class_4597$class_4598;)V method_73250 renderAllBlended + p 2 outlineVertexConsumers + p 1 vertexConsumers + p 4 crumblingOverlayVertexConsumers + p 3 blendedModelCommands + m (Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_4618;Ljava/util/Map;Lnet/minecraft/class_4597$class_4598;)V method_73249 renderAll + p 2 outlineVertexConsumers + p 1 vertexConsumers + p 4 crumblingOverlayVertexConsumers + p 3 modelCommands + m (Lnet/minecraft/class_11661$class_11744;)D method_73251 method_73251 + p 0 modelCommand + m (Lnet/minecraft/class_11788;Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_4618;Lnet/minecraft/class_4597$class_4598;)V method_73001 render + p 3 outlineVertexConsumers + p 4 crumblingOverlayVertexConsumers + p 1 queue + p 2 vertexConsumers +c net/minecraft/class_11683$class_12048 net/minecraft/client/render/command/ModelCommandRenderer$Commands + f Ljava/util/Map; field_62982 opaqueModelCommands + f Ljava/util/Set; field_62984 usedModelRenderLayers + f Ljava/util/List; field_62983 blendedModelCommands + m ()V method_74821 nextFrame + m (Lnet/minecraft/class_1921;)Z method_74819 method_74819 + p 1 renderLayer + m (Lnet/minecraft/class_1921;Lnet/minecraft/class_11661$class_11670;)V method_74820 add + p 2 modelCommand + p 1 renderLayer + m ()V method_74818 clear +c net/minecraft/class_11683$class_11792 net/minecraft/client/render/command/ModelCommandRenderer$CrumblingOverlayCommand + f Lnet/minecraft/class_4587$class_4665; comp_4657 cameraMatricesEntry + f I comp_4656 progress + m ()Lnet/minecraft/class_4587$class_4665; comp_4657 cameraMatricesEntry + m ()I comp_4656 progress + m (ILnet/minecraft/class_4587$class_4665;)V + p 1 progress + p 2 cameraMatricesEntry +c net/minecraft/class_11682 net/minecraft/client/render/command/CustomCommandRenderer + m (Lnet/minecraft/class_11788;Lnet/minecraft/class_4597$class_4598;)V method_72999 render + p 2 vertexConsumers + p 1 queue +c net/minecraft/class_11682$class_12047 net/minecraft/client/render/command/CustomCommandRenderer$Commands + f Ljava/util/Set; field_62981 customRenderLayers + f Ljava/util/Map; field_62980 customCommands + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_1921;Lnet/minecraft/class_11659$class_11660;)V method_74813 add + p 2 renderLayer + p 1 matrices + p 3 custom + m ()V method_74812 clear + m ()V method_74815 nextFrame + m (Lnet/minecraft/class_1921;)Z method_74814 method_74814 + p 1 renderLayer +c net/minecraft/class_11681 net/minecraft/client/render/command/FallingBlockCommandRenderer + f Lnet/minecraft/class_4587; field_61826 matrices + m (Lnet/minecraft/class_11788;Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_776;Lnet/minecraft/class_4618;)V method_72998 render + p 1 queue + p 2 vertexConsumers + p 3 blockRenderManager + p 4 outlineVertexConsumers +c net/minecraft/class_11688 net/minecraft/client/render/command/LeashCommandRenderer + f I field_61845 LEASH_SEGMENTS + f F field_61846 LEASH_WIDTH + m (Lorg/joml/Matrix4f;Lnet/minecraft/class_4597;Lnet/minecraft/class_10017$class_10018;)V method_73013 render + p 2 data + p 1 vertexConsumers + p 0 matrix + m (Lnet/minecraft/class_4588;Lorg/joml/Matrix4f;FFFFFFIZLnet/minecraft/class_10017$class_10018;)V method_73011 render + p 4 offsetZ + p 3 offsetY + p 6 sideOffset + p 5 yOffset + p 0 vertexConsumer + p 2 offsetX + p 1 matrix + p 8 segmentIndex + p 7 perpendicularOffset + p 10 data + p 9 backside + m (Lnet/minecraft/class_11788;Lnet/minecraft/class_4597$class_4598;)V method_73012 render + p 2 vertexConsumers + p 1 queue +c net/minecraft/class_11687 net/minecraft/client/render/command/ItemCommandRenderer + f Lnet/minecraft/class_4587; field_61844 matrices + m (Lnet/minecraft/class_11788;Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_4618;)V method_73010 render + p 2 vertexConsumers + p 1 queue + p 3 outlineVertexConsumers +c net/minecraft/class_10354 net/minecraft/unused/packageinfo/PackageInfo10354 +c net/minecraft/class_11685 net/minecraft/client/render/command/FireCommandRenderer + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;FFFFF)V method_73004 vertex + p 6 v + p 5 u + p 4 z + p 3 y + p 2 x + p 1 vertexConsumer + p 0 matricesEntry + m (Lnet/minecraft/class_11788;Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_11697;)V method_73006 render + p 3 atlasManager + p 1 queue + p 2 vertexConsumers + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4597;Lnet/minecraft/class_10017;Lorg/joml/Quaternionf;Lnet/minecraft/class_11697;)V method_73005 render + p 4 rotation + p 5 atlasManager + p 2 vertexConsumers + p 3 renderState + p 1 matricesEntry +c net/minecraft/class_10355 net/minecraft/recipe/book/RecipeBookCategory +c net/minecraft/class_10358 net/minecraft/recipe/display/DisplayedItemFactory +c net/minecraft/class_10358$class_10360 net/minecraft/recipe/display/DisplayedItemFactory$FromStack + m (Lnet/minecraft/class_1799;)Ljava/lang/Object; method_64999 toDisplayed + p 1 stack + m (Lnet/minecraft/class_1792;)Ljava/lang/Object; method_64998 toDisplayed + p 1 item + m (Lnet/minecraft/class_6880;)Ljava/lang/Object; method_65000 toDisplayed + p 1 item +c net/minecraft/class_10358$class_10359 net/minecraft/recipe/display/DisplayedItemFactory$FromRemainder + m (Ljava/lang/Object;Ljava/util/List;)Ljava/lang/Object; method_64997 toDisplayed + p 1 input + p 2 remainders +c net/minecraft/class_11689 net/minecraft/client/render/command/LabelCommandRenderer + m (Lnet/minecraft/class_11788;Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_327;)V method_73014 render + p 1 queue + p 3 renderer + p 2 vertexConsumers +c net/minecraft/class_11689$class_12050 net/minecraft/client/render/command/LabelCommandRenderer$Commands + f Ljava/util/List; field_62987 seethroughLabels + f Ljava/util/List; field_62988 normalLabels + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_243;ILnet/minecraft/class_2561;ZIDLnet/minecraft/class_12075;)V method_74829 add + p 9 cameraState + p 1 matrices + p 2 pos + p 3 y + p 4 label + p 5 notSneaking + p 6 light + p 7 squaredDistanceToCamera + m ()V method_74828 clear +c net/minecraft/class_9279 net/minecraft/component/type/NbtComponent + f Lcom/mojang/serialization/Codec; field_49303 CODEC + f Lcom/mojang/serialization/Codec; field_61351 COMPOUND_CODEC + f Lnet/minecraft/class_9139; field_49305 PACKET_CODEC + f Lnet/minecraft/class_2487; field_49306 nbt + f Lnet/minecraft/class_9279; field_49302 DEFAULT + m (Lnet/minecraft/class_2487;)Z method_57460 matches + p 1 nbt + m (Lnet/minecraft/class_2487;)V + p 1 nbt + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_1799;Ljava/util/function/Consumer;)V method_57452 set + p 2 nbtSetter + p 1 stack + p 0 type + m (Lnet/minecraft/class_9279;)Lnet/minecraft/class_2487; method_57448 method_57448 + p 0 component + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Z method_57458 isEmpty + m (Lnet/minecraft/class_9279;)Lnet/minecraft/class_2487; method_57464 method_57464 + p 0 component + m (Ljava/util/function/Consumer;)Lnet/minecraft/class_9279; method_57451 apply + p 1 nbtConsumer + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_1799;Lnet/minecraft/class_2487;)V method_57453 set + p 2 nbt + p 1 stack + p 0 type + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_9279; method_57456 of + p 0 nbt + m ()Lnet/minecraft/class_2487; method_57461 copyNbt +c net/minecraft/class_9278 net/minecraft/component/type/ChargedProjectilesComponent + f Lcom/mojang/serialization/Codec; field_49299 CODEC + f Lnet/minecraft/class_9278; field_49298 DEFAULT + f Lnet/minecraft/class_9139; field_49300 PACKET_CODEC + f Ljava/util/List; field_49301 projectiles + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_9278; method_57439 of + p 0 projectile + m (Lnet/minecraft/class_9278;)Ljava/util/List; method_57440 method_57440 + p 0 component + m (Ljava/util/List;)Lnet/minecraft/class_9278; method_57441 of + p 0 projectiles + m (Ljava/util/function/Consumer;Lnet/minecraft/class_2561;)V method_67536 method_67536 + p 1 tooltip + m (Lnet/minecraft/class_1792;)Z method_57438 contains + p 1 item + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Z method_57442 isEmpty + m (Ljava/util/List;)V + p 1 projectiles + m ()Ljava/util/List; method_57437 getProjectiles + m (Lnet/minecraft/class_1792$class_9635;Ljava/util/function/Consumer;Lnet/minecraft/class_1799;I)V method_67535 appendProjectileTooltip + p 3 count + p 2 projectile + p 1 textConsumer + p 0 context +c net/minecraft/class_9276 net/minecraft/component/type/BundleContentsComponent + f Ljava/util/List; field_49294 stacks + f I field_49293 ADD_TO_NEW_SLOT + f Lcom/mojang/serialization/Codec; field_49290 CODEC + f Lnet/minecraft/class_9276; field_49289 DEFAULT + f Lnet/minecraft/class_9139; field_49291 PACKET_CODEC + f I field_52592 selectedStackIndex + f Lorg/apache/commons/lang3/math/Fraction; field_49295 occupancy + f Lorg/apache/commons/lang3/math/Fraction; field_49292 NESTED_BUNDLE_OCCUPANCY + m ()Z method_61669 hasSelectedStack + m ()Ljava/util/stream/Stream; method_59707 stream + m (Lnet/minecraft/class_1799;)Lorg/apache/commons/lang3/math/Fraction; method_57423 getOccupancy + p 0 stack + m ()Ljava/lang/Iterable; method_57421 iterate + m (Lnet/minecraft/class_9276;)Ljava/util/List; method_57424 method_57424 + p 0 component + m ()I method_61666 getNumberOfStacksShown + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_65061 validateOccupancy + p 0 stacks + m (Lnet/minecraft/class_9276;)Lcom/mojang/serialization/DataResult; method_57427 method_57427 + p 0 component + m (I)Lnet/minecraft/class_1799; method_57422 get + p 1 index + m ()I method_61668 getSelectedStackIndex + m (Ljava/util/List;Lorg/apache/commons/lang3/math/Fraction;I)V + p 1 stacks + p 2 occupancy + p 3 selectedStackIndex + m ()Lorg/apache/commons/lang3/math/Fraction; method_57428 getOccupancy + m (Lnet/minecraft/class_1799;)Z method_61667 canBeBundled + p 0 stack + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Z method_57429 isEmpty + m (Ljava/util/List;)Lorg/apache/commons/lang3/math/Fraction; method_57425 calculateOccupancy + p 0 stacks + m ()Ljava/lang/Iterable; method_59708 iterateCopy + m ()I method_57426 size + m (Ljava/util/List;)V + p 1 stacks +c net/minecraft/class_9276$class_9277 net/minecraft/component/type/BundleContentsComponent$Builder + f Ljava/util/List; field_49296 stacks + f I field_52593 selectedStackIndex + f Lorg/apache/commons/lang3/math/Fraction; field_49297 occupancy + m (I)V method_64662 setSelectedStackIndex + p 1 selectedStackIndex + m ()Lnet/minecraft/class_1799; method_57430 removeSelected + m (Lnet/minecraft/class_1735;Lnet/minecraft/class_1657;)I method_57431 add + p 1 slot + p 2 player + m (I)Z method_66335 isOutOfBounds + p 1 index + m ()Lorg/apache/commons/lang3/math/Fraction; method_57433 getOccupancy + m ()Lnet/minecraft/class_9276; method_57435 build + m (Lnet/minecraft/class_1799;)I method_57436 getMaxAllowed + p 1 stack + m (Lnet/minecraft/class_9276;)V + p 1 base + m ()Lnet/minecraft/class_9276$class_9277; method_59709 clear + m (Lnet/minecraft/class_1799;)I method_57432 add + p 1 stack + m (Lnet/minecraft/class_1799;)I method_57434 getInsertionIndex + p 1 stack +c net/minecraft/class_9275 net/minecraft/component/type/BlockStateComponent + f Lcom/mojang/serialization/Codec; field_49285 CODEC + f Lnet/minecraft/class_9139; field_49287 MAP_PACKET_CODEC + f Lnet/minecraft/class_9139; field_49286 PACKET_CODEC + f Lnet/minecraft/class_9275; field_49284 DEFAULT + f Ljava/util/Map; comp_2381 properties + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2769;Ljava/lang/String;)Lnet/minecraft/class_2680; method_57417 applyToState + p 2 value + p 0 state + p 1 property + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Lnet/minecraft/class_9275; method_57420 with + p 1 property + p 2 value + m ()Z method_57414 isEmpty + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_57415 applyToState + p 1 state + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_2680;)Lnet/minecraft/class_9275; method_57419 with + p 1 property + p 2 fromState + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Lnet/minecraft/class_2680; method_57416 method_57416 + p 2 valuex + m (Lnet/minecraft/class_2769;)Ljava/lang/Comparable; method_57418 getValue + p 1 property + m ()Ljava/util/Map; comp_2381 properties + m (Ljava/util/Map;)V + p 1 properties +c net/minecraft/class_9274 net/minecraft/component/type/AttributeModifierSlot + f Ljava/util/List; field_55949 slots + f Lnet/minecraft/class_9139; field_49227 PACKET_CODEC + f Ljava/lang/String; field_49229 name + f Ljava/util/function/IntFunction; field_49225 ID_TO_VALUE + f I field_49228 id + f Lcom/mojang/serialization/Codec; field_49226 CODEC + f Ljava/util/function/Predicate; field_49230 slotPredicate + f Lnet/minecraft/class_9274; field_55948 SADDLE + f Lnet/minecraft/class_9274; field_50127 BODY + f Lnet/minecraft/class_9274; field_49219 HAND + f Lnet/minecraft/class_9274; field_49218 OFFHAND + f Lnet/minecraft/class_9274; field_49216 ANY + f Lnet/minecraft/class_9274; field_49217 MAINHAND + f Lnet/minecraft/class_9274; field_49224 ARMOR + f Lnet/minecraft/class_9274; field_49222 CHEST + f Lnet/minecraft/class_9274; field_49223 HEAD + f Lnet/minecraft/class_9274; field_49220 FEET + f Lnet/minecraft/class_9274; field_49221 LEGS + m (Ljava/lang/String;IILjava/lang/String;Lnet/minecraft/class_1304;)V + p 3 id + p 4 name + p 5 slot + m (Lnet/minecraft/class_1304;)Z method_57291 method_57291 + p 0 slot + m (Lnet/minecraft/class_9274;)I method_57290 method_57290 + p 0 id + m (Lnet/minecraft/class_1304;)Lnet/minecraft/class_9274; method_59524 forEquipmentSlot + p 0 slot + m (Ljava/lang/String;IILjava/lang/String;Ljava/util/function/Predicate;)V + p 3 id + p 4 name + p 5 slotPredicate + m ()Ljava/util/List; method_66665 getSlots + m (Lnet/minecraft/class_1304;Lnet/minecraft/class_1304;)Z method_57287 method_57287 + p 1 slotx + m (Lnet/minecraft/class_9274;)I method_57288 method_57288 + p 0 id + m (Lnet/minecraft/class_1304;)Z method_57286 matches + p 1 slot + m (Lnet/minecraft/class_1304;)Z method_57289 method_57289 + p 0 slot +c net/minecraft/class_9273 net/minecraft/entity/passive/Cracks + f Lnet/minecraft/class_9273; field_49210 IRON_GOLEM + f Lnet/minecraft/class_9273; field_49211 WOLF_ARMOR + f F field_49212 lowCrackThreshold + f F field_49214 highCrackThreshold + f F field_49213 mediumCrackThreshold + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_9273$class_4621; method_57284 getCrackLevel + p 1 stack + m (F)Lnet/minecraft/class_9273$class_4621; method_57282 getCrackLevel + p 1 health + m (FFF)V + p 2 mediumCrackThreshold + p 3 highCrackThreshold + p 1 lowCrackThreshold + m (II)Lnet/minecraft/class_9273$class_4621; method_57283 getCrackLevel + p 1 currentDamage + p 2 maxDamage +c net/minecraft/class_9273$class_4621 net/minecraft/entity/passive/Cracks$CrackLevel + f Lnet/minecraft/class_9273$class_4621; field_21081 NONE + f Lnet/minecraft/class_9273$class_4621; field_21084 HIGH + f Lnet/minecraft/class_9273$class_4621; field_21083 MEDIUM + f Lnet/minecraft/class_9273$class_4621; field_21082 LOW +c net/minecraft/class_9272 net/minecraft/datafixer/schema/Schema3818_4 +c net/minecraft/class_11677 net/minecraft/client/render/entity/model/EquipmentModelData + f Ljava/lang/Object; comp_4542 head + f Ljava/lang/Object; comp_4545 feet + f Ljava/lang/Object; comp_4543 chest + f Ljava/lang/Object; comp_4544 legs + m (Lnet/minecraft/class_1304;)Ljava/lang/Object; method_72959 getModelData + p 1 slot + m (Lnet/minecraft/class_11677;Lnet/minecraft/class_5599;Ljava/util/function/Function;)Lnet/minecraft/class_11677; method_72961 mapToEntityModel + p 2 modelPartToModel + p 0 data + p 1 models + m (Ljava/util/function/Function;Lnet/minecraft/class_5599;Lnet/minecraft/class_5601;)Lnet/minecraft/class_572; method_72963 method_72963 + p 2 layer + m (Lnet/minecraft/class_11677;Lcom/google/common/collect/ImmutableMap$Builder;)V method_72960 addTo + p 2 builder + p 1 texturedModelData + m (Ljava/util/function/Function;)Lnet/minecraft/class_11677; method_72962 map + p 1 f + m ()Ljava/lang/Object; comp_4545 feet + m ()Ljava/lang/Object; comp_4544 legs + m ()Ljava/lang/Object; comp_4543 chest + m ()Ljava/lang/Object; comp_4542 head + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V + p 1 head + p 2 chest + p 3 legs + p 4 feet +c net/minecraft/class_9271 net/minecraft/datafixer/schema/Schema3818_3 +c net/minecraft/class_11676 net/minecraft/client/render/block/entity/ShelfBlockEntityRenderer + f F field_61792 ITEM_SCALE + f Lnet/minecraft/class_10442; field_62659 itemModelManager + f F field_62046 BOTTOM_ALIGNED_OFFSET + m ()Lnet/minecraft/class_11969; method_74381 createRenderState + m (Lnet/minecraft/class_11597;Lnet/minecraft/class_11969;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74382 updateRenderState + m (Lnet/minecraft/class_11969;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_72956 render + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 context + m (Lnet/minecraft/class_11969;Lnet/minecraft/class_10444;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IF)V method_72957 renderItem + p 4 queue + p 5 overlay + p 6 rotationDegrees + p 1 state + p 2 itemRenderState + p 3 matrices +c net/minecraft/class_9270 net/minecraft/datafixer/schema/Schema3818 +c net/minecraft/class_11675 net/minecraft/client/render/block/entity/CopperGolemStatueBlockEntityRenderer + f Ljava/util/Map; field_61786 models + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 context + m (Lnet/minecraft/class_11962;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_72955 render + m ()Lnet/minecraft/class_11962; method_74371 createRenderState + m (Lnet/minecraft/class_11595;Lnet/minecraft/class_11962;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74372 updateRenderState +c net/minecraft/class_11679 net/minecraft/client/render/entity/state/CopperGolemEntityRenderState + f Lnet/minecraft/class_7094; field_61819 droppingNoItemAnimationState + f Lnet/minecraft/class_7094; field_61818 droppingItemAnimationState + f Lnet/minecraft/class_7094; field_61817 gettingNoItemAnimationState + f Lnet/minecraft/class_7094; field_61816 gettingItemAnimationState + f Ljava/util/Optional; field_62049 headBlockItemStack + f Lnet/minecraft/class_7094; field_61815 spinHeadAnimationState + f Lnet/minecraft/class_11577; field_61812 copperGolemState + f Lnet/minecraft/class_5955$class_5811; field_61811 oxidationLevel +c net/minecraft/class_11678 net/minecraft/client/render/entity/CopperGolemEntityRenderer + m (Lnet/minecraft/class_11679;)Lnet/minecraft/class_2960; method_72969 method_72969 + p 0 state + m (Lnet/minecraft/class_11573;Lnet/minecraft/class_11679;F)V method_72965 updateRenderState + m ()Lnet/minecraft/class_11679; method_72964 createRenderState + m ()Ljava/util/function/Function; method_72968 getEyeTextureGetter + m (Lnet/minecraft/class_11679;)Lnet/minecraft/class_2960; method_72966 getTexture + m (Lnet/minecraft/class_11679;)Ljava/util/Optional; method_73247 method_73247 + p 0 state + m (Lnet/minecraft/class_1799;)Ljava/util/Optional; method_73246 method_73246 + p 0 stack + m (Lnet/minecraft/class_11679;F)F method_72967 method_72967 + p 0 state + p 1 tickProgress +c net/minecraft/class_9247 net/minecraft/client/resource/ClientDataPackManager + f Ljava/util/Map; field_49125 knownPacks + f Lnet/minecraft/class_3283; field_49124 packManager + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_9224;Lnet/minecraft/class_9226;)V method_68703 method_68703 + p 2 knownPackInfo + m (Ljava/util/List;)Ljava/util/List; method_57049 getCommonKnownPacks + p 1 serverKnownPacks + m ()Lnet/minecraft/class_6860; method_57046 createResourceManager + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_3288;)V method_68704 method_68704 + p 1 resourcePackProfile +c net/minecraft/class_9246 net/minecraft/client/gui/screen/option/FontOptionsScreen + m (Lnet/minecraft/class_315;)[Lnet/minecraft/class_7172; method_57041 getOptions + p 0 gameOptions + m (Lnet/minecraft/class_437;Lnet/minecraft/class_315;)V + p 2 gameOptions + p 1 parent +c net/minecraft/class_9243 net/minecraft/client/font/FontFilterType + f Ljava/lang/String; field_49115 id + f Lcom/mojang/serialization/Codec; field_49114 CODEC + f Lnet/minecraft/class_9243; field_49113 JAPANESE_VARIANTS + f Lnet/minecraft/class_9243; field_49112 UNIFORM + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_9243$class_9244 net/minecraft/client/font/FontFilterType$FilterMap + f Lcom/mojang/serialization/Codec; field_49117 CODEC + f Ljava/util/Map; field_49119 activeFilters + f Lnet/minecraft/class_9243$class_9244; field_49118 NO_FILTER + m (Ljava/util/Set;)Z method_57032 isAllowed + p 1 activeFilters + m (Lnet/minecraft/class_9243$class_9244;)Lnet/minecraft/class_9243$class_9244; method_57031 apply + p 1 activeFilters + m (Ljava/util/Map;)V + p 1 activeFilters + m (Lnet/minecraft/class_9243$class_9244;)Ljava/util/Map; method_57033 method_57033 + p 0 filterType +c net/minecraft/class_9240 net/minecraft/world/storage/StorageKey + f Ljava/lang/String; comp_2347 type + f Ljava/lang/String; comp_2345 level + f Lnet/minecraft/class_5321; comp_2346 dimension + m (Ljava/lang/String;)Lnet/minecraft/class_9240; method_57013 withSuffix + p 1 suffix + m ()Ljava/lang/String; comp_2345 level + m ()Ljava/lang/String; comp_2347 type + m ()Lnet/minecraft/class_5321; comp_2346 dimension + m (Ljava/lang/String;Lnet/minecraft/class_5321;Ljava/lang/String;)V + p 1 level + p 2 dimension + p 3 type +c net/minecraft/class_9248 net/minecraft/registry/entry/RegistryEntryInfo + f Lnet/minecraft/class_9248; field_49136 DEFAULT + f Ljava/util/Optional; comp_2354 knownPackInfo + f Lcom/mojang/serialization/Lifecycle; comp_2355 lifecycle + m ()Ljava/util/Optional; comp_2354 knownPackInfo + m ()Lcom/mojang/serialization/Lifecycle; comp_2355 lifecycle + m (Ljava/util/Optional;Lcom/mojang/serialization/Lifecycle;)V + p 1 knownPackInfo + p 2 lifecycle +c net/minecraft/class_10370 net/minecraft/network/packet/c2s/play/PickItemFromBlockC2SPacket + f Lnet/minecraft/class_9139; field_54985 CODEC + f Z comp_3327 includeData + f Lnet/minecraft/class_2338; comp_3326 pos + m (Lnet/minecraft/class_2792;)V method_65086 apply + m ()Lnet/minecraft/class_2338; comp_3326 pos + m ()Z comp_3327 includeData + m (Lnet/minecraft/class_2338;Z)V + p 1 pos + p 2 includeData +c net/minecraft/class_10371 net/minecraft/network/packet/c2s/play/PickItemFromEntityC2SPacket + f Lnet/minecraft/class_9139; field_54986 CODEC + f Z comp_3329 includeData + f I comp_3328 id + m (Lnet/minecraft/class_2792;)V method_65087 apply + m ()Z comp_3329 includeData + m ()I comp_3328 id + m (IZ)V + p 1 id + p 2 includeData +c net/minecraft/class_10374 net/minecraft/block/EyeblossomBlock + f Lcom/mojang/serialization/MapCodec; field_55066 CODEC + f I field_55068 NOTIFY_RANGE_Y + f I field_55067 NOTIFY_RANGE_XZ + f Lnet/minecraft/class_10374$class_10375; field_55069 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)V method_65149 method_65149 + p 4 otherPos + m (Lnet/minecraft/class_10374$class_10375;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 state + m (ZLnet/minecraft/class_4970$class_2251;)V + p 1 open + p 2 settings + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65150 method_65150 + p 0 instance + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_65153 updateStateAndNotifyOthers + p 3 pos + p 4 random + p 1 state + p 2 world + m (Lnet/minecraft/class_10374;)Ljava/lang/Boolean; method_65151 method_65151 + p 0 block +c net/minecraft/class_10374$class_10375 net/minecraft/block/EyeblossomBlock$EyeblossomState + f Lnet/minecraft/class_3414; field_55076 sound + f Lnet/minecraft/class_3414; field_55075 longSound + f F field_55074 effectLengthInSeconds + f I field_55077 particleColor + f Lnet/minecraft/class_6880; field_55073 stewEffect + f Z field_55072 open + f Lnet/minecraft/class_10374$class_10375; field_55070 OPEN + f Lnet/minecraft/class_10374$class_10375; field_55071 CLOSED + m (Ljava/lang/String;IZLnet/minecraft/class_6880;FLnet/minecraft/class_3414;Lnet/minecraft/class_3414;I)V + p 4 stewEffect + p 3 open + p 6 longSound + p 5 effectLengthInSeconds + p 8 particleColor + p 7 sound + m ()Lnet/minecraft/class_2680; method_65370 getBlockState + m ()Lnet/minecraft/class_3414; method_65158 getLongSound + m ()Lnet/minecraft/class_10374$class_10375; method_65371 getOpposite + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_65155 spawnTrailParticle + p 3 random + p 2 pos + p 1 world + m ()Z method_65157 isOpen + m ()Lnet/minecraft/class_2248; method_65369 getBlock + m (Z)Lnet/minecraft/class_10374$class_10375; method_65156 of + p 0 open +c net/minecraft/class_10372 net/minecraft/datafixer/fix/RenameEntityNbtKeyFix + f Ljava/util/Map; field_55003 oldToNewKeyNames + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)V + p 1 outputSchema + p 2 name + p 3 entityId + p 4 oldToNewKeyNames + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_65104 fix + p 1 dynamic +c net/minecraft/class_10373 net/minecraft/util/profiling/jfr/sample/StructureGenerationSample + f Ljava/time/Duration; comp_16 duration + f Ljava/lang/String; comp_3332 structureName + f Ljava/lang/String; comp_3333 level + f Z comp_3334 success + f Lnet/minecraft/class_1923; comp_3331 chunkPos + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/class_10373; method_65114 fromEvent + p 0 event + m ()Z comp_3334 success + m ()Ljava/lang/String; comp_3333 level + m ()Ljava/lang/String; comp_3332 structureName + m ()Lnet/minecraft/class_1923; comp_3331 chunkPos + m (Ljava/time/Duration;Lnet/minecraft/class_1923;Ljava/lang/String;Ljava/lang/String;Z)V + p 1 duration + p 2 chunkPos + p 3 structureName + p 4 level + p 5 success +c net/minecraft/class_10378 net/minecraft/client/render/block/entity/model/BannerBlockModel + f Ljava/lang/String; field_55110 FLAG + f Ljava/lang/String; field_55111 POLE + f Ljava/lang/String; field_55112 BAR + m (Lnet/minecraft/class_630;)V + p 1 root + m (Z)Lnet/minecraft/class_5607; method_65190 getTexturedModelData + p 0 standing +c net/minecraft/class_10376 net/minecraft/block/MultifaceGrowthBlock + m ()Lnet/minecraft/class_7118; method_41432 getGrower +c net/minecraft/class_10377 net/minecraft/client/render/block/entity/model/BannerFlagBlockModel + f Lnet/minecraft/class_630; field_55107 flag + m (Ljava/lang/Float;)V method_65188 setAngles + m (Lnet/minecraft/class_630;)V + p 1 root + m (Z)Lnet/minecraft/class_5607; method_65189 getTexturedModelData + p 0 standing +c net/minecraft/class_9255 net/minecraft/client/render/entity/BoggedEntityRenderer + f Lnet/minecraft/class_2960; field_49163 TEXTURE + f Lnet/minecraft/class_2960; field_49164 OVERLAY_TEXTURE + m (Lnet/minecraft/class_10005;)Lnet/minecraft/class_2960; method_4119 getTexture + m (Lnet/minecraft/class_9254;Lnet/minecraft/class_10005;F)V method_62389 updateRenderState + m ()Lnet/minecraft/class_10005; method_62388 createRenderState +c net/minecraft/class_9254 net/minecraft/entity/mob/BoggedEntity + f Ljava/lang/String; field_49240 SHEARED_KEY + f Lnet/minecraft/class_2940; field_49241 SHEARED + f Z field_57664 DEFAULT_SHEARED + m (Z)V method_57310 setSheared + p 1 sheared + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_61491 method_61491 + p 2 stack + p 1 worldx + m ()Z method_57308 isSheared + m ()Lnet/minecraft/class_5132$class_5133; method_57080 createBoggedAttributes + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_57309 dropShearedItems + p 2 shears + p 1 world +c net/minecraft/class_9253 net/minecraft/datafixer/schema/Schema3816 +c net/minecraft/class_9259 net/minecraft/server/world/OptionalChunk + m (Lnet/minecraft/class_9259;Ljava/lang/Object;)Ljava/lang/Object; method_57123 orElse + p 1 other + p 0 optionalChunk + m (Ljava/lang/String;)Lnet/minecraft/class_9259; method_57125 of + p 0 error + m (Ljava/lang/Object;)Ljava/lang/Object; method_57130 orElse + p 1 other + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_9259; method_57128 of + p 0 error + m ()Z method_57122 isPresent + m (Ljava/util/function/Function;)Lnet/minecraft/class_9259; method_57127 map + p 1 mapper + m (Ljava/lang/Object;)Lnet/minecraft/class_9259; method_57124 of + p 0 chunk + m (Ljava/util/function/Supplier;)Ljava/lang/Object; method_57132 orElseThrow + p 1 exceptionSupplier + m (Ljava/util/function/Consumer;)Lnet/minecraft/class_9259; method_57126 ifPresent + p 1 callback + m ()Ljava/lang/String; method_57129 getError +c net/minecraft/class_9259$class_9260 net/minecraft/server/world/OptionalChunk$LoadFailure + f Ljava/util/function/Supplier; comp_2367 error + m ()Ljava/util/function/Supplier; comp_2367 error + m (Ljava/util/function/Supplier;)V + p 1 error +c net/minecraft/class_9259$class_9261 net/minecraft/server/world/OptionalChunk$ActualChunk + f Ljava/lang/Object; comp_2368 value + m ()Ljava/lang/Object; comp_2368 value + m (Ljava/lang/Object;)V + p 1 value +c net/minecraft/class_11691 net/minecraft/client/render/command/TextCommandRenderer + m (Lnet/minecraft/class_11788;Lnet/minecraft/class_4597$class_4598;)V method_73017 render + p 2 vertexConsumers + p 1 queue +c net/minecraft/class_11690 net/minecraft/client/render/command/ShadowPiecesCommandRenderer + f Lnet/minecraft/class_1921; field_61847 renderLayer + m (Lnet/minecraft/class_11788;Lnet/minecraft/class_4597$class_4598;)V method_73015 render + p 1 queue + p 2 vertexConsumers + m (Lorg/joml/Matrix4f;Lnet/minecraft/class_4588;IFFFFF)V method_73016 vertex + p 4 y + p 3 x + p 6 u + p 5 z + p 0 matrix + p 2 color + p 1 vertexConsumer + p 7 v +c net/minecraft/class_10363 net/minecraft/recipe/display/SlotDisplayContexts + f Lnet/minecraft/class_169; field_54906 REGISTRIES + f Lnet/minecraft/class_169; field_54905 FUEL_REGISTRY + f Lnet/minecraft/class_176; field_54907 CONTEXT_TYPE + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_10352; method_65008 createParameters + p 0 world +c net/minecraft/class_11693 net/minecraft/client/render/item/model/special/CopperGolemStatueModelRenderer + f Lnet/minecraft/class_11783; field_61854 model + f Lnet/minecraft/class_2960; field_61855 texture + m (Lnet/minecraft/class_11783;Lnet/minecraft/class_2960;)V + p 1 model + p 2 texture + m (Lnet/minecraft/class_4587;)V method_73018 setAngles + p 0 matrices +c net/minecraft/class_11693$class_11694 net/minecraft/client/render/item/model/special/CopperGolemStatueModelRenderer$Unbaked + f Lcom/mojang/serialization/MapCodec; field_61856 CODEC + f Lnet/minecraft/class_2960; comp_4552 texture + f Lnet/minecraft/class_11583$class_11584; comp_4819 pose + m (Lnet/minecraft/class_5955$class_5811;Lnet/minecraft/class_11583$class_11584;)V + p 1 oxidationLevel + p 2 pose + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73019 method_73019 + p 0 instance + m (Lnet/minecraft/class_11583$class_11584;)Lnet/minecraft/class_5601; method_76788 getLayer + p 0 pose + m ()Lnet/minecraft/class_11583$class_11584; comp_4819 pose + m ()Lnet/minecraft/class_2960; comp_4552 texture + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_11583$class_11584;)V + p 1 texture + p 2 pose +c net/minecraft/class_11692 net/minecraft/unused/packageinfo/PackageInfo11692 +c net/minecraft/class_9250 net/minecraft/network/packet/s2c/config/SelectKnownPacksS2CPacket + f Lnet/minecraft/class_9139; field_49141 CODEC + f Ljava/util/List; comp_2356 knownPacks + m (Lnet/minecraft/class_8732;)V method_57073 apply + m ()Ljava/util/List; comp_2356 knownPacks + m (Ljava/util/List;)V + p 1 knownPacks +c net/minecraft/class_11697 net/minecraft/client/texture/AtlasManager + f Ljava/util/Map; field_61939 entriesByTextureId + f Lorg/slf4j/Logger; field_64593 LOGGER + f Ljava/util/Map; field_61864 sprites + f Ljava/util/Map; field_61940 entriesByDefinitionId + f Ljava/util/List; field_61862 ATLAS_METADATA + f I field_61865 mipmapLevels + f Lnet/minecraft/class_3302$class_11559; field_61861 stitchKey + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1059; method_73025 getAtlasTexture + p 1 id + m (Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;Lnet/minecraft/class_11697$class_11699;)V method_73026 method_73026 + p 3 entry + m (Lnet/minecraft/class_11697$class_11700;Ljava/lang/Object;)V method_73029 method_73029 + p 2 v + m (Lnet/minecraft/class_1060;I)V + p 1 textureManager + p 2 mipmapLevels + m (Ljava/util/Map;Lnet/minecraft/class_4730;Lnet/minecraft/class_1058;)V method_76672 method_76672 + p 2 sprite + p 1 id + m (Lnet/minecraft/class_11697$class_11699;Lnet/minecraft/class_7766$class_7767;Ljava/lang/Throwable;)V method_73028 method_73028 + p 1 stitchResult + p 2 throwable + m (I)V method_73024 setMipmapLevels + p 1 mipmapLevels + m (Ljava/util/Map;Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_2960;Lnet/minecraft/class_11697$class_7772;)V method_73031 method_73031 + p 4 metadata + p 3 textureId + m (Ljava/util/function/BiConsumer;)V method_73156 acceptAtlasTextures + p 1 consumer + m (Ljava/util/function/BiConsumer;Lnet/minecraft/class_2960;Lnet/minecraft/class_11697$class_7772;)V method_73157 method_73157 + p 1 definitionId + p 2 entry + m (Lnet/minecraft/class_11697$class_11700;)V method_76671 logDuplicates + p 1 stitch +c net/minecraft/class_11697$class_11700 net/minecraft/client/texture/AtlasManager$Stitch + f Ljava/util/List; field_61866 entries + f Ljava/util/Map; field_61867 preparations + f Ljava/util/concurrent/CompletableFuture; field_61868 readyForUpload + m (Lnet/minecraft/class_2960;)Ljava/util/concurrent/CompletableFuture; method_73038 getPreparations + p 1 atlasTextureId + m ()Ljava/util/Map; method_73037 createSpriteMap + m (Ljava/util/Map;Lnet/minecraft/class_11697$class_11699;)V method_73039 method_73039 + p 1 entry + m (Ljava/util/List;Ljava/util/Map;Ljava/util/concurrent/CompletableFuture;)V + p 1 entries + p 2 preparations + p 3 readyForUpload +c net/minecraft/class_11697$class_11699 net/minecraft/client/texture/AtlasManager$CompletableEntry + f Ljava/util/concurrent/CompletableFuture; comp_4559 preparations + f Lnet/minecraft/class_11697$class_7772; comp_4558 entry + m (Ljava/util/Map;)V method_73035 fillSpriteMap + p 1 sprites + m (Ljava/util/Map;Lnet/minecraft/class_2960;Lnet/minecraft/class_1058;)V method_73036 method_73036 + p 2 id + p 3 sprite + m ()Ljava/util/concurrent/CompletableFuture; comp_4559 preparations + m ()Lnet/minecraft/class_11697$class_7772; comp_4558 entry + m (Lnet/minecraft/class_11697$class_7772;Ljava/util/concurrent/CompletableFuture;)V + p 1 entry + p 2 preparations +c net/minecraft/class_11697$class_11698 net/minecraft/client/texture/AtlasManager$Metadata + f Lnet/minecraft/class_2960; comp_4554 definitionId + f Ljava/util/Set; comp_4556 additionalMetadata + f Lnet/minecraft/class_2960; comp_4553 textureId + f Z comp_4555 createMipmaps + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Z)V + p 3 createMipmaps + p 2 definitionId + p 1 textureId + m ()Lnet/minecraft/class_2960; comp_4554 definitionId + m ()Z comp_4555 createMipmaps + m ()Lnet/minecraft/class_2960; comp_4553 textureId + m ()Ljava/util/Set; comp_4556 additionalMetadata + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;ZLjava/util/Set;)V + p 1 textureId + p 2 definitionId + p 3 createMipmaps + p 4 additionalMetadata +c net/minecraft/class_11697$class_7772 net/minecraft/client/texture/AtlasManager$Entry + f Lnet/minecraft/class_11697$class_11698; comp_4557 metadata + f Lnet/minecraft/class_1059; comp_1051 atlas + m (Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;I)Ljava/util/concurrent/CompletableFuture; method_73034 load + p 1 manager + p 2 executor + p 3 mipLevel + m ()Lnet/minecraft/class_11697$class_11698; comp_4557 metadata + m ()Lnet/minecraft/class_1059; comp_1051 atlas + m (Lnet/minecraft/class_1059;Lnet/minecraft/class_11697$class_11698;)V + p 1 atlas + p 2 metadata +c net/minecraft/class_10366 com/mojang/blaze3d/systems/ProjectionType + f Lnet/minecraft/class_10366$class_10367; field_54956 applier + f Lnet/minecraft/class_8251; field_54955 vertexSorter + f Lnet/minecraft/class_10366; field_54953 PERSPECTIVE + f Lnet/minecraft/class_10366; field_54954 ORTHOGRAPHIC + m ()Lnet/minecraft/class_8251; method_65045 getVertexSorter + m (Lorg/joml/Matrix4f;F)V method_65046 apply + p 1 matrix + p 2 direction + m (Lorg/joml/Matrix4f;F)V method_65049 method_65049 + p 0 matrix + p 1 direction + m (Lorg/joml/Matrix4f;F)V method_65048 method_65048 + p 0 matrix + p 1 direction + m (Ljava/lang/String;ILnet/minecraft/class_8251;Lnet/minecraft/class_10366$class_10367;)V + p 3 vertexSorter + p 4 applier +c net/minecraft/class_10366$class_10367 com/mojang/blaze3d/systems/ProjectionType$Applier + m (Lorg/joml/Matrix4f;F)V apply apply + p 1 matrix + p 2 direction +c net/minecraft/class_10369 net/minecraft/datafixer/fix/EntitySalmonSizeFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_65079 method_65079 + p 0 dynamic +c net/minecraft/class_9225 net/minecraft/resource/ResourcePackPosition + f Lnet/minecraft/class_3288$class_3289; comp_2334 defaultPosition + f Z comp_2333 required + f Z comp_2335 fixedPosition + m ()Lnet/minecraft/class_3288$class_3289; comp_2334 defaultPosition + m ()Z comp_2333 required + m ()Z comp_2335 fixedPosition + m (ZLnet/minecraft/class_3288$class_3289;Z)V + p 1 required + p 2 defaultPosition + p 3 fixedPosition +c net/minecraft/class_9224 net/minecraft/resource/ResourcePackInfo + f Lnet/minecraft/class_2561; comp_2330 title + f Ljava/lang/String; comp_2329 id + f Ljava/util/Optional; comp_2332 knownPackInfo + f Lnet/minecraft/class_5352; comp_2331 source + m (ZLnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_56927 getInformationText + p 2 description + p 1 enabled + m (ZLnet/minecraft/class_2561;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_56928 method_56928 + p 3 style + m ()Ljava/util/Optional; comp_2332 knownPackInfo + m ()Lnet/minecraft/class_5352; comp_2331 source + m ()Lnet/minecraft/class_2561; comp_2330 title + m ()Ljava/lang/String; comp_2329 id + m (Ljava/lang/String;Lnet/minecraft/class_2561;Lnet/minecraft/class_5352;Ljava/util/Optional;)V + p 1 id + p 2 title + p 3 source + p 4 knownPackInfo +c net/minecraft/class_9223 net/minecraft/server/network/SynchronizeRegistriesTask + f Lnet/minecraft/class_7780; field_49030 registries + f Lnet/minecraft/class_8605$class_8606; field_49028 KEY + f Ljava/util/List; field_49029 knownPacks + m (Ljava/util/function/Consumer;Ljava/util/Set;)V method_56925 syncRegistryAndTags + p 2 commonKnownPacks + p 1 sender + m (Ljava/util/List;Ljava/util/function/Consumer;)V method_56923 onSelectKnownPacks + p 2 sender + p 1 clientKnownPacks + m (Ljava/util/function/Consumer;Lnet/minecraft/class_5321;Ljava/util/List;)V method_56924 method_56924 + p 1 key + p 2 entries + m (Ljava/util/List;Lnet/minecraft/class_7780;)V + p 2 registries + p 1 knownPacks +c net/minecraft/class_9221 net/minecraft/entity/data/DataTracked + m (Ljava/util/List;)V method_48850 onDataTrackerUpdate + p 1 entries + m (Lnet/minecraft/class_2940;)V method_5674 onTrackedDataSet + c Called on the client when the tracked data is set.\n\n

This can be overridden to refresh other fields when the tracked data\nis set or changed. + p 1 data +c net/minecraft/class_9220 net/minecraft/network/packet/c2s/config/SelectKnownPacksC2SPacket + f Lnet/minecraft/class_9139; field_49020 CODEC + f Ljava/util/List; comp_2326 knownPacks + m (Lnet/minecraft/class_8735;)V method_56910 apply + m ()Ljava/util/List; comp_2326 knownPacks + m (Ljava/util/List;)V + p 1 knownPacks +c net/minecraft/class_9229 net/minecraft/datafixer/fix/WolfHealthFix + f Ljava/lang/String; field_49054 WOLF_ENTITY_ID + f Ljava/lang/String; field_49055 MAX_HEALTH_ATTRIBUTE_ID + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56952 method_56952 + p 1 baseDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56948 method_56948 + p 0 wolfDynamic + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56951 method_56951 + p 1 attributeDynamic + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56949 method_56949 + p 1 attributesDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56950 method_56950 + p 0 healthDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_9228 net/minecraft/datafixer/FixUtil + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_61353 method_61353 + p 0 ops + m (Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_61355 createBlockState + p 0 id + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/types/Type; method_61350 withTypeChanged + p 2 newType + p 1 oldType + m (I)Ljava/lang/String; method_66591 getColorName + p 0 index + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_67331 consolidateBlockPos + p 2 yKey + p 3 zKey + p 0 dynamic + p 1 xKey + p 4 newPosKey + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map$Entry;)Lcom/mojang/serialization/Dynamic; method_61358 method_61358 + p 1 entry + m (Ljava/lang/String;Ljava/util/Map;)Lcom/mojang/serialization/Dynamic; method_61356 createBlockState + p 1 properties + p 0 id + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/TypeRewriteRule; method_61349 typeChangingRule + p 1 newType + p 0 oldType + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map$Entry;)Lcom/mojang/serialization/Dynamic; method_61352 method_61352 + p 1 entry + m ([Ljava/util/function/Function;)Ljava/util/function/Function; method_59907 compose + p 0 fixes + m (Lcom/mojang/datafixers/types/Type;Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/datafixers/Typed; method_66040 withType + p 2 ops + p 0 type + p 1 value + m (Lcom/mojang/serialization/Dynamic;III)Lcom/mojang/serialization/Dynamic; method_67330 createBlockPos + p 2 y + p 3 z + p 0 dynamic + p 1 x + m (Ljava/util/function/UnaryOperator;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_61357 method_61357 + p 2 value + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/util/function/UnaryOperator;)Lcom/mojang/serialization/Dynamic; method_61351 apply + p 1 fieldName + p 2 applier + p 0 dynamic + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_57182 withType + p 1 typed + p 0 type + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56943 fixBlockPos + p 0 dynamic +c net/minecraft/class_9227 net/minecraft/util/collection/Class2IntMap + c A map with {@link Class}es as keys and an integer as values.\nIf the entry for the provided class does not exist, then it recursively checks\ntheir superclasses. + f I field_49052 MISSING + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_49053 backingMap + m (Ljava/lang/Class;)I method_56939 get + p 1 clazz + m (Ljava/lang/Class;)I method_56941 put + p 1 clazz + m (Ljava/lang/Class;)I method_56940 getNext + p 1 clazz +c net/minecraft/class_9226 net/minecraft/registry/VersionedIdentifier + f Lnet/minecraft/class_9139; field_49035 PACKET_CODEC + f Ljava/lang/String; field_49036 DEFAULT_NAMESPACE + f Ljava/lang/String; comp_2336 namespace + f Ljava/lang/String; comp_2337 id + f Ljava/lang/String; comp_2338 version + m (Ljava/lang/String;)Lnet/minecraft/class_9226; method_56932 createVanilla + p 0 path + m ()Z method_56931 isVanilla + m ()Ljava/lang/String; comp_2338 version + m ()Ljava/lang/String; comp_2337 id + m ()Ljava/lang/String; comp_2336 namespace + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 namespace + p 2 id + p 3 version +c net/minecraft/class_11644 net/minecraft/client/gui/screen/DebugOptionsScreen + f Lnet/minecraft/class_2561; field_61638 IN_F3_TEXT + f Lnet/minecraft/class_2561; field_61639 NEVER_TEXT + f Lnet/minecraft/class_2561; field_61636 WARNING_TEXT + f Lnet/minecraft/class_8132; field_61642 layout + f Lnet/minecraft/class_2561; field_61637 ALWAYS_ON_TEXT + f Lnet/minecraft/class_2561; field_61635 TITLE + f Lnet/minecraft/class_11644$class_11648; field_61643 optionsListWidget + f Lnet/minecraft/class_2561; field_61641 SEARCH_TEXT + f Lnet/minecraft/class_2561; field_61640 NOT_ALLOWED_TEXT + f Lnet/minecraft/class_342; field_61644 searchStringWidget + f Ljava/util/List; field_61645 profileButtons + m (Lnet/minecraft/class_11636;Lnet/minecraft/class_8667;)V method_72805 addProfile + p 1 profileType + p 2 widget + m (Lnet/minecraft/class_11636;Lnet/minecraft/class_4185;)V method_72804 method_72804 + p 2 button + m ()Lnet/minecraft/class_11644$class_11648; method_76275 getOptionsListWidget + m (Lnet/minecraft/class_4185;)V method_72803 method_72803 + p 1 button + m (Ljava/lang/String;)V method_72808 method_72808 + p 1 searchString + m (Lnet/minecraft/class_11644;Lnet/minecraft/class_364;)V method_72807 method_72807 + p 1 widget +c net/minecraft/class_11644$class_11647 net/minecraft/client/gui/screen/DebugOptionsScreen$Entry + f Lnet/minecraft/class_5676; field_61654 neverButton + f Ljava/lang/String; field_61655 renderedLabel + f Lnet/minecraft/class_5676; field_61653 inF3Button + f Lnet/minecraft/class_5676; field_61652 alwaysOnButton + f Lnet/minecraft/class_2960; field_61651 label + f Z field_61656 canShow + f Ljava/util/List; field_61649 widgets + m (Lnet/minecraft/class_11644;Lnet/minecraft/class_2960;)V + p 2 label + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_11635;)V method_72816 setEntryVisibility + p 1 label + p 2 visibility + m (Lnet/minecraft/class_5676;)Lnet/minecraft/class_5250; method_72817 getNarrationMessage + p 1 widget + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_72819 method_72819 + p 2 button + p 3 value + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_72815 method_72815 + p 2 button + p 3 value + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_72818 method_72818 + p 2 button + p 3 value +c net/minecraft/class_11644$class_11646 net/minecraft/client/gui/screen/DebugOptionsScreen$Category + f Lnet/minecraft/class_2561; field_61647 label + m (Lnet/minecraft/class_11644;Lnet/minecraft/class_2561;)V + p 2 label +c net/minecraft/class_11644$class_11648 net/minecraft/client/gui/screen/DebugOptionsScreen$OptionsListWidget + f Ljava/util/Comparator; field_61658 ENTRY_COMPARATOR + f I field_61659 ITEM_HEIGHT + m (Ljava/lang/String;)V method_72821 fillEntries + p 1 searchString + m ()V method_72823 init + m ()V method_72820 refreshScreen + m (Ljava/util/Map$Entry;Ljava/util/Map$Entry;)I method_72822 method_72822 + p 0 a + p 1 b +c net/minecraft/class_11644$class_11645 net/minecraft/client/gui/screen/DebugOptionsScreen$AbstractEntry + m ()V method_72814 init +c net/minecraft/class_10313 net/minecraft/recipe/display/SlotDisplays + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_10302$class_10312; method_64756 registerAndGetDefault + p 0 registries +c net/minecraft/class_11642 net/minecraft/client/font/GlyphBaker + f Ljava/util/List; field_61623 glyphAtlases + f Lnet/minecraft/class_2960; field_61622 fontId + f Lnet/minecraft/class_1060; field_61621 textureManager + m (I)Lnet/minecraft/class_2960; method_72796 getAtlasId + p 1 atlasIndex + m ()V method_72795 clear + m (Lnet/minecraft/class_1060;Lnet/minecraft/class_2960;)V + p 1 textureManager + p 2 fontId + m (Lnet/minecraft/class_379;Lnet/minecraft/class_383;)Lnet/minecraft/class_382; method_72797 bake + p 1 metrics + p 2 glyph +c net/minecraft/class_10316 net/minecraft/unused/packageinfo/PackageInfo10316 +c net/minecraft/class_10314 net/minecraft/recipe/display/SmithingRecipeDisplay + f Lnet/minecraft/class_10295$class_10296; field_54701 SERIALIZER + f Lnet/minecraft/class_9139; field_54700 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_54699 CODEC + f Lnet/minecraft/class_10302; comp_3302 template + f Lnet/minecraft/class_10302; comp_3304 addition + f Lnet/minecraft/class_10302; comp_3303 base + f Lnet/minecraft/class_10302; comp_3259 craftingStation + f Lnet/minecraft/class_10302; comp_3258 result + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64757 method_64757 + p 0 instance + m ()Lnet/minecraft/class_10302; comp_3302 template + m ()Lnet/minecraft/class_10302; comp_3303 base + m ()Lnet/minecraft/class_10302; comp_3304 addition + m (Lnet/minecraft/class_10302;Lnet/minecraft/class_10302;Lnet/minecraft/class_10302;Lnet/minecraft/class_10302;Lnet/minecraft/class_10302;)V + p 1 template + p 2 base + p 3 addition + p 4 result + p 5 craftingStation +c net/minecraft/class_10315 net/minecraft/recipe/display/StonecutterRecipeDisplay + f Lcom/mojang/serialization/MapCodec; field_54702 CODEC + f Lnet/minecraft/class_10295$class_10296; field_54704 SERIALIZER + f Lnet/minecraft/class_9139; field_54703 PACKET_CODEC + f Lnet/minecraft/class_10302; comp_3305 input + f Lnet/minecraft/class_10302; comp_3259 craftingStation + f Lnet/minecraft/class_10302; comp_3258 result + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64758 method_64758 + p 0 instance + m ()Lnet/minecraft/class_10302; comp_3305 input + m (Lnet/minecraft/class_10302;Lnet/minecraft/class_10302;Lnet/minecraft/class_10302;)V + p 1 input + p 2 result + p 3 craftingStation +c net/minecraft/class_9236 net/minecraft/entity/projectile/AbstractWindChargeEntity + f Lnet/minecraft/class_5362; field_50137 EXPLOSION_BEHAVIOR + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;DDD)V + p 8 z + p 6 y + p 3 owner + p 4 x + p 1 type + p 2 world + m (Lnet/minecraft/class_243;)V method_55055 createExplosion + p 1 pos +c net/minecraft/class_9235 net/minecraft/unused/packageinfo/PackageInfo9235 +c net/minecraft/class_11629 net/minecraft/client/gui/hud/debug/GameVersionDebugHudEntry +c net/minecraft/class_9234 net/minecraft/util/profiling/jfr/sample/ChunkRegionSample + f Ljava/lang/String; comp_2341 level + f Ljava/lang/String; comp_2342 dimension + f I comp_2343 x + f I comp_2344 z + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/class_9234; method_56985 fromEvent + p 0 event + m ()Ljava/lang/String; comp_2342 dimension + m ()Ljava/lang/String; comp_2341 level + m ()I comp_2344 z + m ()I comp_2343 x + m (Ljava/lang/String;Ljava/lang/String;II)V + p 1 level + p 2 dimension + p 3 x + p 4 z +c net/minecraft/class_11628 net/minecraft/client/gui/hud/debug/TpsDebugHudEntry +c net/minecraft/class_11627 net/minecraft/client/gui/hud/debug/SystemSpecsDebugHudEntry + f Lnet/minecraft/class_2960; field_61552 SECTION_ID +c net/minecraft/class_9232 net/minecraft/util/profiling/jfr/event/ChunkRegionEvent + f Ljava/lang/String; levelId worldId + m (Lnet/minecraft/class_9240;Lnet/minecraft/class_1923;Lnet/minecraft/class_4486;I)V + p 4 bytes + p 2 chunkPos + p 3 format + p 1 key +c net/minecraft/class_9232$class_9233 net/minecraft/util/profiling/jfr/event/ChunkRegionEvent$Names + f Ljava/lang/String; field_49064 CHUNK_POS_Z + f Ljava/lang/String; field_49063 CHUNK_POS_X + f Ljava/lang/String; field_49066 DIMENSION + f Ljava/lang/String; field_49065 LEVEL + f Ljava/lang/String; field_49068 COMPRESSION + f Ljava/lang/String; field_49067 TYPE + f Ljava/lang/String; field_49059 REGION_POS_X + f Ljava/lang/String; field_49069 BYTES + f Ljava/lang/String; field_49060 REGION_POS_Z + f Ljava/lang/String; field_49062 LOCAL_POS_Z + f Ljava/lang/String; field_49061 LOCAL_POS_X +c net/minecraft/class_9231 net/minecraft/datafixer/fix/MapBannerBlockPosFormatFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_9230 net/minecraft/datafixer/fix/BlockPosFormatFix + f Ljava/util/List; field_49057 PATROL_TARGET_ENTITY_IDS + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56962 method_56962 + p 0 entityDynamic + m (Ljava/util/List;)V method_56963 addBlockEntityFixes + p 1 rules + m (Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Ljava/util/Map;)Lcom/mojang/datafixers/TypeRewriteRule; method_56953 createFixRule + p 2 id + p 3 oldToNewKey + p 1 typeReference + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56966 method_56966 + p 0 banners + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56957 fixMapItemFrames + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56968 method_56968 + p 0 frames + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56967 method_56967 + p 0 banner + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56969 method_56969 + p 0 frame + m (Ljava/util/List;)V method_56958 addEntityFixes + p 1 rules + m (Lcom/mojang/datafixers/Typed;Ljava/util/Map;)Lcom/mojang/datafixers/Typed; method_56956 fixOldBlockPosFormat + p 2 oldToNewKey +c net/minecraft/class_9239 net/minecraft/item/WindChargeItem + f F field_55047 POWER + m (Lnet/minecraft/class_2342;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2374; method_58670 method_58670 + p 1 facing + p 0 pointer + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)Lnet/minecraft/class_8956; method_61665 method_61665 + p 2 world2 + p 3 shooter + p 4 stack +c net/minecraft/class_9238 net/minecraft/entity/projectile/BreezeWindChargeEntity + f F field_49242 EXPLOSION_POWER + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_1937;)V + p 2 world + p 1 breeze +c net/minecraft/class_11633 net/minecraft/client/gui/hud/debug/DebugHudProfile + f Z field_61588 f3Enabled + f Ljava/util/List; field_61587 visibleEntries + f Ljava/util/Map; field_61586 visibilityMap + f Lcom/mojang/serialization/Codec; field_63527 codec + f Lnet/minecraft/class_11636; field_61589 type + f J field_63063 version + f Lorg/slf4j/Logger; field_61585 LOGGER + f Ljava/io/File; field_61590 file + m ()V method_72777 updateVisibleEntries + m ()V method_72765 readProfileFile + m ()V method_72779 setToDefault + m (Lnet/minecraft/class_11636;)Z method_72773 profileTypeMatches + p 1 type + m (Ljava/io/File;)V + p 1 file + m ()J method_74914 getVersion + m (Lnet/minecraft/class_2960;)Z method_72772 isEntryVisible + p 1 entryId + m (Z)V method_72770 setF3Enabled + p 1 f3Enabled + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_11635;)V method_72767 setEntryVisibility + p 2 visibility + p 1 entryId + m (Lnet/minecraft/class_2960;)Z method_72775 toggleVisibility + p 1 entryId + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_11635; method_72766 getVisibility + p 1 entryId + m ()V method_72778 saveProfileFile + m ()Z method_72776 isF3Enabled + m ()V method_72774 toggleF3Enabled + m (Ljava/lang/String;)Ljava/io/IOException; method_72769 method_72769 + p 0 error + m ()Ljava/util/Collection; method_72771 getVisibleEntries + m (Lnet/minecraft/class_11636;)V method_72768 setProfileType + p 1 type +c net/minecraft/class_11633$class_11634 net/minecraft/client/gui/hud/debug/DebugHudProfile$Serialization + f Lcom/mojang/serialization/Codec; field_61591 CODEC + f Lcom/mojang/serialization/Codec; field_61592 VISIBILITY_MAP_CODEC + f Ljava/util/Optional; comp_4458 custom + f Ljava/util/Optional; comp_4457 profile + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_72780 method_72780 + p 0 instance + m ()Ljava/util/Optional; comp_4457 profile + m ()Ljava/util/Optional; comp_4458 custom + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 profile + p 2 custom +c net/minecraft/class_10301 net/minecraft/recipe/display/ShapelessCraftingRecipeDisplay + f Lcom/mojang/serialization/MapCodec; field_54668 CODEC + f Lnet/minecraft/class_9139; field_54669 PACKET_CODEC + f Lnet/minecraft/class_10295$class_10296; field_54670 SERIALIZER + f Ljava/util/List; comp_3271 ingredients + f Lnet/minecraft/class_10302; comp_3258 result + f Lnet/minecraft/class_10302; comp_3259 craftingStation + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64734 method_64734 + p 0 instance + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_10302;)Z method_64735 method_64735 + p 1 ingredient + m ()Ljava/util/List; comp_3271 ingredients + m (Ljava/util/List;Lnet/minecraft/class_10302;Lnet/minecraft/class_10302;)V + p 1 ingredients + p 2 result + p 3 craftingStation +c net/minecraft/class_11632 net/minecraft/client/gui/hud/debug/DebugHudEntry + m (Lnet/minecraft/class_11630;Lnet/minecraft/class_1937;Lnet/minecraft/class_2818;Lnet/minecraft/class_2818;)V method_72751 render + p 1 lines + p 2 world + p 3 clientChunk + p 4 chunk + m (Z)Z method_72753 canShow + p 1 reducedDebugInfo + m ()Lnet/minecraft/class_11605; method_72759 getCategory +c net/minecraft/class_10302 net/minecraft/recipe/display/SlotDisplay + f Lnet/minecraft/class_9139; field_54672 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_54671 CODEC + m (Lnet/minecraft/class_10352;)Lnet/minecraft/class_1799; method_64742 getFirst + p 1 context + m (Lnet/minecraft/class_10352;Lnet/minecraft/class_10358;)Ljava/util/stream/Stream; method_64739 appendStacks + p 1 parameters + p 2 factory + m (Lnet/minecraft/class_7699;)Z method_64737 isEnabled + p 1 features + m ()Lnet/minecraft/class_10302$class_10312; method_64736 serializer + m (Lnet/minecraft/class_10352;)Ljava/util/List; method_64738 getStacks + p 1 parameters +c net/minecraft/class_10302$class_10361 net/minecraft/recipe/display/SlotDisplay$NoopDisplayedItemFactory + f Lnet/minecraft/class_10302$class_10361; field_54901 INSTANCE + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_65001 toDisplayed +c net/minecraft/class_10302$class_10304 net/minecraft/recipe/display/SlotDisplay$CompositeSlotDisplay + f Lnet/minecraft/class_10302$class_10312; field_54680 SERIALIZER + f Lnet/minecraft/class_9139; field_54679 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_54678 CODEC + f Ljava/util/List; comp_3272 contents + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64746 method_64746 + p 0 instance + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_10302;)Z method_64747 method_64747 + p 1 child + m (Lnet/minecraft/class_10352;Lnet/minecraft/class_10358;Lnet/minecraft/class_10302;)Ljava/util/stream/Stream; method_64748 method_64748 + p 2 display + m ()Ljava/util/List; comp_3272 contents + m (Ljava/util/List;)V + p 1 contents +c net/minecraft/class_10302$class_10305 net/minecraft/recipe/display/SlotDisplay$EmptySlotDisplay + f Lnet/minecraft/class_10302$class_10312; field_54684 SERIALIZER + f Lcom/mojang/serialization/MapCodec; field_54682 CODEC + f Lnet/minecraft/class_10302$class_10305; field_54681 INSTANCE + f Lnet/minecraft/class_9139; field_54683 PACKET_CODEC +c net/minecraft/class_10302$class_10306 net/minecraft/recipe/display/SlotDisplay$ItemSlotDisplay + f Lnet/minecraft/class_9139; field_54686 PACKET_CODEC + f Lnet/minecraft/class_10302$class_10312; field_54687 SERIALIZER + f Lcom/mojang/serialization/MapCodec; field_54685 CODEC + f Lnet/minecraft/class_6880; comp_3273 item + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64749 method_64749 + p 0 instance + m (Lnet/minecraft/class_1792;)V + p 1 item + m ()Lnet/minecraft/class_6880; comp_3273 item + m (Lnet/minecraft/class_6880;)V + p 1 item +c net/minecraft/class_10302$class_10307 net/minecraft/recipe/display/SlotDisplay$StackSlotDisplay + f Lnet/minecraft/class_9139; field_54689 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_54688 CODEC + f Lnet/minecraft/class_10302$class_10312; field_54690 SERIALIZER + f Lnet/minecraft/class_1799; comp_3274 stack + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64750 method_64750 + p 0 instance + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_1799; comp_3274 stack + m (Lnet/minecraft/class_1799;)V + p 1 stack +c net/minecraft/class_10302$class_10362 net/minecraft/recipe/display/SlotDisplay$WithRemainderSlotDisplay + f Lcom/mojang/serialization/MapCodec; field_54902 CODEC + f Lnet/minecraft/class_10302$class_10312; field_54904 SERIALIZER + f Lnet/minecraft/class_9139; field_54903 PACKET_CODEC + f Lnet/minecraft/class_10302; comp_3300 input + f Lnet/minecraft/class_10302; comp_3301 remainder + m (Lnet/minecraft/class_10358$class_10359;Ljava/util/List;Ljava/lang/Object;)Ljava/lang/Object; method_65007 method_65007 + p 2 input + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65006 method_65006 + p 0 instance + m ()Lnet/minecraft/class_10302; comp_3301 remainder + m ()Lnet/minecraft/class_10302; comp_3300 input + m (Lnet/minecraft/class_10302;Lnet/minecraft/class_10302;)V + p 1 input + p 2 remainder +c net/minecraft/class_10302$class_10310 net/minecraft/recipe/display/SlotDisplay$SmithingTrimSlotDisplay + f Lnet/minecraft/class_9139; field_54694 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_54693 CODEC + f Lnet/minecraft/class_10302$class_10312; field_54695 SERIALIZER + f Lnet/minecraft/class_10302; comp_3297 base + f Lnet/minecraft/class_10302; comp_3298 material + f Lnet/minecraft/class_6880; comp_3299 pattern + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65002 method_65002 + p 0 instance + m (Lnet/minecraft/class_1799;)Z method_65003 method_65003 + p 0 stack + m ()Lnet/minecraft/class_10302; comp_3298 material + m ()Lnet/minecraft/class_10302; comp_3297 base + m ()Lnet/minecraft/class_6880; comp_3299 pattern + m (Lnet/minecraft/class_10302;Lnet/minecraft/class_10302;Lnet/minecraft/class_6880;)V + p 1 base + p 2 material + p 3 pattern +c net/minecraft/class_10302$class_10311 net/minecraft/recipe/display/SlotDisplay$TagSlotDisplay + f Lnet/minecraft/class_9139; field_54697 PACKET_CODEC + f Lnet/minecraft/class_10302$class_10312; field_54698 SERIALIZER + f Lcom/mojang/serialization/MapCodec; field_54696 CODEC + f Lnet/minecraft/class_6862; comp_3275 tag + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_65005 method_65005 + p 0 values + m (Lnet/minecraft/class_10358$class_10360;Lnet/minecraft/class_6885$class_6888;)Ljava/util/stream/Stream; method_64755 method_64755 + p 1 tag + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64754 method_64754 + p 0 instance + m ()Lnet/minecraft/class_6862; comp_3275 tag + m (Lnet/minecraft/class_6862;)V + p 1 tag +c net/minecraft/class_10302$class_10312 net/minecraft/recipe/display/SlotDisplay$Serializer + f Lcom/mojang/serialization/MapCodec; comp_3276 codec + f Lnet/minecraft/class_9139; comp_3277 streamCodec + m ()Lnet/minecraft/class_9139; comp_3277 streamCodec + m ()Lcom/mojang/serialization/MapCodec; comp_3276 codec + m (Lcom/mojang/serialization/MapCodec;Lnet/minecraft/class_9139;)V + p 1 codec + p 2 streamCodec +c net/minecraft/class_10302$class_10303 net/minecraft/recipe/display/SlotDisplay$AnyFuelSlotDisplay + f Lnet/minecraft/class_9139; field_54676 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_54675 CODEC + f Lnet/minecraft/class_10302$class_10312; field_54677 SERIALIZER + f Lnet/minecraft/class_10302$class_10303; field_54674 INSTANCE +c net/minecraft/class_11631 net/minecraft/client/gui/hud/debug/DebugHudEntries + f Lnet/minecraft/class_2960; field_61583 THREE_DIMENSIONAL_CROSSHAIR + f Ljava/util/Map; field_61558 ENTRIES + f Ljava/util/Map; field_61557 PROFILES + f Lnet/minecraft/class_2960; field_63517 VISUALIZE_WATER_LEVELS + f Lnet/minecraft/class_2960; field_63519 VISUALIZE_COLLISION_BOXES + f Lnet/minecraft/class_2960; field_63518 VISUALIZE_HEIGHTMAP + f Lnet/minecraft/class_2960; field_63521 VISUALIZE_BLOCK_LIGHT_LEVELS + f Lnet/minecraft/class_2960; field_63520 VISUALIZE_ENTITY_SUPPORTING_BLOCKS + f Lnet/minecraft/class_2960; field_63523 VISUALIZE_SOLID_FACES + f Lnet/minecraft/class_2960; field_63522 VISUALIZE_SKY_LIGHT_LEVELS + f Lnet/minecraft/class_2960; field_63525 VISUALIZE_SKY_LIGHT_SECTIONS + f Lnet/minecraft/class_2960; field_63524 VISUALIZE_CHUNKS_ON_SERVER + f Lnet/minecraft/class_2960; field_61553 GPU_UTILIZATION + f Lnet/minecraft/class_2960; field_61554 SIMPLE_PERFORMANCE_IMPACTORS + f Lnet/minecraft/class_2960; field_61555 CHUNK_SECTION_OCTREE + f Lnet/minecraft/class_2960; field_61556 CHUNK_SECTION_VISIBILITY + f Lnet/minecraft/class_2960; field_61559 GAME_VERSION + f Lnet/minecraft/class_2960; field_61560 FPS + f Lnet/minecraft/class_2960; field_61561 TPS + f Lnet/minecraft/class_2960; field_61562 MEMORY + f Lnet/minecraft/class_2960; field_61563 SYSTEM_SPECS + f Lnet/minecraft/class_2960; field_61564 LOOKING_AT_BLOCK + f Lnet/minecraft/class_2960; field_61565 LOOKING_AT_FLUID + f Lnet/minecraft/class_2960; field_61566 LOOKING_AT_ENTITY + f Lnet/minecraft/class_2960; field_61567 CHUNK_RENDER_STATS + f Lnet/minecraft/class_2960; field_61568 CHUNK_GENERATION_STATS + f Lnet/minecraft/class_2960; field_61569 ENTITY_RENDER_STATS + f Lnet/minecraft/class_2960; field_61570 PARTICLE_RENDER_STATS + f Lnet/minecraft/class_2960; field_61571 CHUNK_SOURCE_STATS + f Lnet/minecraft/class_2960; field_61572 PLAYER_POSITION + f Lnet/minecraft/class_2960; field_61573 PLAYER_SECTION_POSITION + f Lnet/minecraft/class_2960; field_61574 LIGHT_LEVELS + f Lnet/minecraft/class_2960; field_61575 HEIGHTMAP + f Lnet/minecraft/class_2960; field_61576 BIOME + f Lnet/minecraft/class_2960; field_61577 LOCAL_DIFFICULTY + f Lnet/minecraft/class_2960; field_61578 ENTITY_SPAWN_COUNTS + f Lnet/minecraft/class_2960; field_61579 SOUND_MOOD + f Lnet/minecraft/class_2960; field_61580 POST_EFFECT + f Lnet/minecraft/class_2960; field_61581 ENTITY_HITBOXES + f Lnet/minecraft/class_2960; field_61582 CHUNK_BORDERS + f Lnet/minecraft/class_2960; field_61584 CHUNK_SECTION_PATHS + m ()Ljava/util/Map; method_72761 getEntries + m (Ljava/lang/String;Lnet/minecraft/class_11632;)Lnet/minecraft/class_2960; method_72764 registerVanilla + p 1 entry + p 0 id + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_11632;)Lnet/minecraft/class_2960; method_72763 register + p 0 id + p 1 entry + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_11632; method_72762 get + p 0 id +c net/minecraft/class_11630 net/minecraft/client/gui/hud/debug/DebugHudLines + m (Ljava/lang/String;)V method_72745 addPriorityLine + p 1 line + m (Lnet/minecraft/class_2960;Ljava/util/Collection;)V method_72744 addLinesToSection + p 2 lines + p 1 sectionId + m (Ljava/lang/String;)V method_72747 addLine + p 1 line + m (Lnet/minecraft/class_2960;Ljava/lang/String;)V method_72743 addLineToSection + p 1 sectionId + p 2 line +c net/minecraft/class_10300 net/minecraft/recipe/display/ShapedCraftingRecipeDisplay + f Lnet/minecraft/class_10295$class_10296; field_54667 SERIALIZER + f Lcom/mojang/serialization/MapCodec; field_54665 CODEC + f Lnet/minecraft/class_9139; field_54666 PACKET_CODEC + f Lnet/minecraft/class_10302; comp_3259 craftingStation + f Lnet/minecraft/class_10302; comp_3258 result + f Ljava/util/List; comp_3270 ingredients + f I comp_3269 height + f I comp_3268 width + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64732 method_64732 + p 0 instance + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_10302;)Z method_64733 method_64733 + p 1 ingredient + m ()Ljava/util/List; comp_3270 ingredients + m ()I comp_3269 height + m ()I comp_3268 width + m (IILjava/util/List;Lnet/minecraft/class_10302;Lnet/minecraft/class_10302;)V + p 1 width + p 2 height + p 3 ingredients + p 4 result + p 5 craftingStation +c net/minecraft/class_11637 net/minecraft/unused/packageinfo/PackageInfo11637 +c net/minecraft/class_11636 net/minecraft/client/gui/hud/debug/DebugProfileType + f Lnet/minecraft/class_3542$class_7292; field_61601 CODEC + f Ljava/lang/String; field_61602 id + f Ljava/lang/String; field_61603 translationKey + f Lnet/minecraft/class_11636; field_61599 DEFAULT + f Lnet/minecraft/class_11636; field_61600 PERFORMANCE + m ()Ljava/lang/String; method_72782 getTranslationKey + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V + p 4 translationKey + p 3 id +c net/minecraft/class_11635 net/minecraft/client/gui/hud/debug/DebugHudEntryVisibility + f Lnet/minecraft/class_3542$class_7292; field_61596 CODEC + f Ljava/lang/String; field_61597 id + f Lnet/minecraft/class_11635; field_61594 IN_OVERLAY + f Lnet/minecraft/class_11635; field_61593 ALWAYS_ON + f Lnet/minecraft/class_11635; field_61595 NEVER + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_9203 net/minecraft/block/vault/VaultConfig + f Lcom/mojang/serialization/Codec; field_48883 codec + f Ljava/lang/String; field_48881 CONFIG_KEY + f Lnet/minecraft/class_9203; field_48882 DEFAULT + f Lnet/minecraft/class_8962; comp_2310 playerDetector + f Ljava/util/Optional; comp_2309 overrideLootTableToDisplay + f Lnet/minecraft/class_8962$class_9198; comp_2311 entitySelector + f D comp_2306 activationRange + f D comp_2307 deactivationRange + f Lnet/minecraft/class_1799; comp_2308 keyItem + f Lnet/minecraft/class_5321; comp_2305 lootTable + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56764 method_56764 + p 0 instance + m ()Lcom/mojang/serialization/DataResult; method_56765 validate + m (Lnet/minecraft/class_5321;DDLnet/minecraft/class_1799;Ljava/util/Optional;)V + p 2 activationRange + p 1 lootTable + p 7 overrideLootTableToDisplay + p 6 keyItem + p 4 deactivationRange + m ()Lnet/minecraft/class_5321; comp_2305 lootTable + m ()Lnet/minecraft/class_8962$class_9198; comp_2311 entitySelector + m ()Lnet/minecraft/class_1799; comp_2308 keyItem + m ()Ljava/util/Optional; comp_2309 overrideLootTableToDisplay + m ()D comp_2306 activationRange + m ()D comp_2307 deactivationRange + m ()Lnet/minecraft/class_8962; comp_2310 playerDetector + m (Lnet/minecraft/class_5321;DDLnet/minecraft/class_1799;Ljava/util/Optional;Lnet/minecraft/class_8962;Lnet/minecraft/class_8962$class_9198;)V + p 1 lootTable + p 2 activationRange + p 4 deactivationRange + p 6 keyItem + p 7 overrideLootTableToDisplay + p 8 playerDetector + p 9 entitySelector +c net/minecraft/class_9202 net/minecraft/block/vault/VaultClientData + f F field_48878 DISPLAY_ROTATION_SPEED + f F field_48879 displayRotation + f F field_48880 lastDisplayRotation + m ()F method_56761 getDisplayRotation + m ()F method_56762 getLastDisplayRotation + m ()V method_56763 rotateDisplay +c net/minecraft/class_9209 net/minecraft/component/type/MapIdComponent + f Lnet/minecraft/class_2561; field_56341 LOCKED_TOOLTIP_TEXT + f Lcom/mojang/serialization/Codec; field_49425 CODEC + f Lnet/minecraft/class_9139; field_48924 PACKET_CODEC + f I comp_2315 id + m ()Ljava/lang/String; method_56814 asString + m ()I comp_2315 id + m (I)V + p 1 id +c net/minecraft/class_9208 net/minecraft/unused/packageinfo/PackageInfo9208 +c net/minecraft/class_9206 net/minecraft/block/enums/VaultState + f Ljava/lang/String; field_48907 id + f Lnet/minecraft/class_9206$class_9207; field_48908 light + f Lnet/minecraft/class_9206; field_48899 INACTIVE + f Lnet/minecraft/class_9206; field_48901 UNLOCKING + f Lnet/minecraft/class_9206; field_48902 EJECTING + f Lnet/minecraft/class_9206; field_48900 ACTIVE + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_9203;Lnet/minecraft/class_9204;Lnet/minecraft/class_9205;D)Lnet/minecraft/class_9206; method_56804 updateActiveState + p 1 pos + p 2 config + p 0 world + p 5 radius + p 3 serverData + p 4 sharedData + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_9203;Lnet/minecraft/class_9205;)V method_56808 onChangedFrom + p 3 config + p 4 sharedData + p 1 world + p 2 pos + m ()I method_56801 getLuminance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_9206;Lnet/minecraft/class_9203;Lnet/minecraft/class_9205;Z)V method_56806 onStateChange + p 2 pos + p 3 newState + p 1 world + p 6 ominous + p 4 config + p 5 sharedData + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;F)V method_56802 ejectItem + p 4 pitchModifier + p 3 stack + p 2 pos + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_9203;Lnet/minecraft/class_9204;Lnet/minecraft/class_9205;)Lnet/minecraft/class_9206; method_56803 update + p 5 sharedData + p 4 serverData + p 3 config + p 2 pos + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_9203;Lnet/minecraft/class_9205;Z)V method_56805 onChangedTo + p 2 pos + p 3 config + p 4 sharedData + p 5 ominous + p 1 world + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_9206$class_9207;)V + p 3 id + p 4 light +c net/minecraft/class_9206$class_9207 net/minecraft/block/enums/VaultState$Light + f I field_48913 luminance + f Lnet/minecraft/class_9206$class_9207; field_48912 LIT + f Lnet/minecraft/class_9206$class_9207; field_48911 HALF_LIT + m (Ljava/lang/String;II)V + p 3 luminance +c net/minecraft/class_9205 net/minecraft/block/vault/VaultSharedData + f Lnet/minecraft/class_1799; field_48896 displayItem + f D field_48898 connectedParticlesRange + f Z field_48895 dirty + f Ljava/util/Set; field_48897 connectedPlayers + f Lcom/mojang/serialization/Codec; field_48894 codec + f Ljava/lang/String; field_48893 SHARED_DATA_KEY + m (Lnet/minecraft/class_9204;Ljava/util/UUID;)Z method_56791 method_56791 + p 1 uuid + m ()Z method_56795 hasConnectedPlayers + m (Lnet/minecraft/class_9205;)Ljava/lang/Double; method_56794 method_56794 + p 0 data + m ()Lnet/minecraft/class_1799; method_56787 getDisplayItem + m ()V method_56800 markDirty + m ()Ljava/util/Set; method_56797 getConnectedPlayers + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56789 method_56789 + p 0 instance + m (Lnet/minecraft/class_1799;)V method_56790 setDisplayItem + p 1 stack + m (Lnet/minecraft/class_9205;)Lnet/minecraft/class_1799; method_56798 method_56798 + p 0 data + m (Lnet/minecraft/class_1799;Ljava/util/Set;D)V + p 1 displayItem + p 3 connectedParticlesRange + p 2 connectedPlayers + m (Lnet/minecraft/class_9205;)V method_56792 copyFrom + p 1 data + m ()D method_56799 getConnectedParticlesRange + m ()Z method_56793 hasDisplayItem + m (Lnet/minecraft/class_9205;)Ljava/util/Set; method_56796 method_56796 + p 0 data + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_9204;Lnet/minecraft/class_9203;D)V method_56788 updateConnectedPlayers + p 5 radius + p 4 config + p 1 world + p 3 serverData + p 2 pos +c net/minecraft/class_9204 net/minecraft/block/vault/VaultServerData + f Lcom/mojang/serialization/Codec; field_48885 codec + f Ljava/util/List; field_48890 itemsToEject + f I field_48892 totalEjectionsNeeded + f Ljava/lang/String; field_48884 SERVER_DATA_KEY + f Z field_48886 dirty + f J field_48891 lastFailedUnlockTime + f Ljava/util/Set; field_48888 rewardedPlayers + f I field_48887 MAX_STORED_REWARDED_PLAYERS + f J field_48889 stateUpdatingResumesAt + m (Ljava/util/Set;JLjava/util/List;I)V + p 1 rewardedPlayers + p 2 stateUpdatingResumesAt + p 4 itemsToEject + p 5 totalEjectionsNeeded + m (Ljava/util/List;)V method_56772 setItemsToEject + p 1 itemsToEject + m ()V method_56786 markDirty + m (Lnet/minecraft/class_9204;)Ljava/lang/Long; method_56780 method_56780 + p 0 data + m ()Lnet/minecraft/class_1799; method_56784 getItemToEject + m ()V method_56781 finishEjecting + m (J)V method_56774 setStateUpdatingResumeTime + p 1 stateUpdatingResumesAt + m ()Ljava/util/List; method_56779 getItemsToEject + m ()Ljava/util/Set; method_56773 getRewardedPlayers + m ()J method_56777 getStateUpdatingResumeTime + m ()J method_56767 getLastFailedUnlockTime + m (Lnet/minecraft/class_9204;)Ljava/lang/Integer; method_56776 method_56776 + p 0 data + m ()Lnet/minecraft/class_1799; method_56783 getItemToDisplay + m ()F method_56785 getEjectSoundPitchModifier + m (J)V method_56768 setLastFailedUnlockTime + p 1 lastFailedUnlockTime + m (Lnet/minecraft/class_1657;)Z method_56769 hasRewardedPlayer + p 1 player + m (Lnet/minecraft/class_9204;)V method_56771 copyFrom + p 1 data + m (Lnet/minecraft/class_9204;)Ljava/util/Set; method_56782 method_56782 + p 0 data + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56770 method_56770 + p 0 instance + m (Lnet/minecraft/class_1657;)V method_56775 markPlayerAsRewarded + p 1 player + m (Lnet/minecraft/class_9204;)Ljava/util/List; method_56778 method_56778 + p 0 data +c net/minecraft/class_11661 net/minecraft/client/render/command/OrderedRenderCommandQueueImpl + f Lit/unimi/dsi/fastutil/ints/Int2ObjectAVLTreeMap; field_62244 batchingQueues + m (I)Lnet/minecraft/class_11788; method_73533 method_73533 + p 1 orderx + m (I)Lnet/minecraft/class_11788; method_73531 getBatchingQueue + m ()Lit/unimi/dsi/fastutil/ints/Int2ObjectAVLTreeMap; method_73532 getBatchingQueues + m ()V method_72954 onNextFrame + m ()V method_72953 clear + m (Lnet/minecraft/class_11788;)Z method_73530 method_73530 + p 0 queue +c net/minecraft/class_11661$class_11669 net/minecraft/client/render/command/OrderedRenderCommandQueueImpl$LeashCommand + f Lorg/joml/Matrix4f; comp_4502 matricesEntry + f Lnet/minecraft/class_10017$class_10018; comp_4503 leashState + m ()Lorg/joml/Matrix4f; comp_4502 matricesEntry + m ()Lnet/minecraft/class_10017$class_10018; comp_4503 leashState + m (Lorg/joml/Matrix4f;Lnet/minecraft/class_10017$class_10018;)V + p 1 matricesEntry + p 2 leashState +c net/minecraft/class_11661$class_11666 net/minecraft/client/render/command/OrderedRenderCommandQueueImpl$FireCommand + f Lnet/minecraft/class_10017; comp_4493 renderState + f Lnet/minecraft/class_4587$class_4665; comp_4492 matricesEntry + f Lorg/joml/Quaternionf; comp_4494 rotation + m ()Lnet/minecraft/class_10017; comp_4493 renderState + m ()Lnet/minecraft/class_4587$class_4665; comp_4492 matricesEntry + m ()Lorg/joml/Quaternionf; comp_4494 rotation + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_10017;Lorg/joml/Quaternionf;)V + p 1 matricesEntry + p 2 renderState + p 3 rotation +c net/minecraft/class_11661$class_11744 net/minecraft/client/render/command/OrderedRenderCommandQueueImpl$BlendedModelCommand + f Lnet/minecraft/class_11661$class_11670; comp_4615 model + f Lorg/joml/Vector3f; comp_4618 position + f Lnet/minecraft/class_1921; comp_4616 renderType + m ()Lnet/minecraft/class_11661$class_11670; comp_4615 model + m ()Lnet/minecraft/class_1921; comp_4616 renderType + m ()Lorg/joml/Vector3f; comp_4618 position + m (Lnet/minecraft/class_11661$class_11670;Lnet/minecraft/class_1921;Lorg/joml/Vector3f;)V + p 1 model + p 2 renderType + p 3 position +c net/minecraft/class_11661$class_11668 net/minecraft/client/render/command/OrderedRenderCommandQueueImpl$ItemCommand + f Lnet/minecraft/class_4587$class_4665; comp_4498 positionMatrix + f Lnet/minecraft/class_1921; comp_4641 renderLayer + f Lnet/minecraft/class_10444$class_10445; comp_4642 glintType + f Lnet/minecraft/class_811; comp_4638 displayContext + f [I comp_4639 tintLayers + f I comp_4661 outlineColor + f I comp_4501 overlayCoords + f I comp_4500 lightCoords + f Ljava/util/List; comp_4640 quads + m ()Lnet/minecraft/class_4587$class_4665; comp_4498 positionMatrix + m ()Lnet/minecraft/class_1921; comp_4641 renderLayer + m ()Lnet/minecraft/class_10444$class_10445; comp_4642 glintType + m ()I comp_4661 outlineColor + m ()Ljava/util/List; comp_4640 quads + m ()[I comp_4639 tintLayers + m ()Lnet/minecraft/class_811; comp_4638 displayContext + m ()I comp_4501 overlayCoords + m ()I comp_4500 lightCoords + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_811;III[ILjava/util/List;Lnet/minecraft/class_1921;Lnet/minecraft/class_10444$class_10445;)V + p 1 positionMatrix + p 2 displayContext + p 3 lightCoords + p 4 overlayCoords + p 5 outlineColor + p 6 tintLayers + p 7 quads + p 8 renderLayer + p 9 glintType +c net/minecraft/class_11661$class_11789 net/minecraft/client/render/command/OrderedRenderCommandQueueImpl$ModelPartCommand + f Lnet/minecraft/class_4587$class_4665; comp_4643 matricesEntry + f Z comp_4649 hasGlint + f Z comp_4648 sheeted + f I comp_4646 overlayCoords + f I comp_4645 lightCoords + f Lnet/minecraft/class_11683$class_11792; comp_4760 crumblingOverlay + f I comp_4650 tintedColor + f I comp_4940 outlineColor + f Lnet/minecraft/class_1058; comp_4647 sprite + f Lnet/minecraft/class_630; comp_4644 modelPart + m ()Lnet/minecraft/class_4587$class_4665; comp_4643 matricesEntry + m ()Z comp_4649 hasGlint + m ()I comp_4650 tintedColor + m ()Lnet/minecraft/class_11683$class_11792; comp_4760 crumblingOverlay + m ()I comp_4646 overlayCoords + m ()Z comp_4648 sheeted + m ()I comp_4645 lightCoords + m ()Lnet/minecraft/class_630; comp_4644 modelPart + m ()Lnet/minecraft/class_1058; comp_4647 sprite + m ()I comp_4940 outlineColor + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_630;IILnet/minecraft/class_1058;ZZILnet/minecraft/class_11683$class_11792;I)V + p 1 matricesEntry + p 2 modelPart + p 3 lightCoords + p 4 overlayCoords + p 5 sprite + p 6 sheeted + p 7 hasGlint + p 8 tintedColor + p 9 crumblingOverlay + p 10 outlineColor +c net/minecraft/class_11661$class_11672 net/minecraft/client/render/command/OrderedRenderCommandQueueImpl$LabelCommand + f Lorg/joml/Matrix4f; comp_4514 matricesEntry + f Lnet/minecraft/class_2561; comp_4517 text + f I comp_4520 backgroundColor + f D comp_4521 distanceToCameraSq + f F comp_4516 y + f F comp_4515 x + f I comp_4518 lightCoords + f I comp_4519 color + m ()Lorg/joml/Matrix4f; comp_4514 matricesEntry + m ()Lnet/minecraft/class_2561; comp_4517 text + m ()D comp_4521 distanceToCameraSq + m ()I comp_4520 backgroundColor + m ()F comp_4515 x + m ()F comp_4516 y + m ()I comp_4519 color + m ()I comp_4518 lightCoords + m (Lorg/joml/Matrix4f;FFLnet/minecraft/class_2561;IIID)V + p 1 matricesEntry + p 2 x + p 3 y + p 4 text + p 5 lightCoords + p 6 color + p 7 backgroundColor + p 8 distanceToCameraSq +c net/minecraft/class_11661$class_11662 net/minecraft/client/render/command/OrderedRenderCommandQueueImpl$BlockStateModelCommand + f Lnet/minecraft/class_4587$class_4665; comp_4476 matricesEntry + f Lnet/minecraft/class_1921; comp_4477 renderLayer + f F comp_4479 r + f I comp_4482 lightCoords + f F comp_4481 b + f I comp_4483 overlayCoords + f F comp_4480 g + f Lnet/minecraft/class_1087; comp_4478 model + f I comp_4659 outlineColor + m ()Lnet/minecraft/class_4587$class_4665; comp_4476 matricesEntry + m ()Lnet/minecraft/class_1921; comp_4477 renderLayer + m ()F comp_4481 b + m ()F comp_4480 g + m ()I comp_4483 overlayCoords + m ()I comp_4482 lightCoords + m ()I comp_4659 outlineColor + m ()F comp_4479 r + m ()Lnet/minecraft/class_1087; comp_4478 model + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_1921;Lnet/minecraft/class_1087;FFFIII)V + p 1 matricesEntry + p 2 renderLayer + p 3 model + p 4 r + p 5 g + p 6 b + p 7 lightCoords + p 8 overlayCoords + p 9 outlineColor +c net/minecraft/class_11661$class_11673 net/minecraft/client/render/command/OrderedRenderCommandQueueImpl$ShadowPiecesCommand + f Lorg/joml/Matrix4f; comp_4522 matricesEntry + f F comp_4523 radius + f Ljava/util/List; comp_4524 pieces + m ()Lorg/joml/Matrix4f; comp_4522 matricesEntry + m ()F comp_4523 radius + m ()Ljava/util/List; comp_4524 pieces + m (Lorg/joml/Matrix4f;FLjava/util/List;)V + p 1 matricesEntry + p 2 radius + p 3 pieces +c net/minecraft/class_11661$class_11663 net/minecraft/client/render/command/OrderedRenderCommandQueueImpl$BlockCommand + f Lnet/minecraft/class_4587$class_4665; comp_4484 matricesEntry + f Lnet/minecraft/class_2680; comp_4485 state + f I comp_4486 lightCoords + f I comp_4487 overlayCoords + f I comp_4660 outlineColor + m ()Lnet/minecraft/class_4587$class_4665; comp_4484 matricesEntry + m ()Lnet/minecraft/class_2680; comp_4485 state + m ()I comp_4660 outlineColor + m ()I comp_4487 overlayCoords + m ()I comp_4486 lightCoords + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_2680;III)V + p 1 matricesEntry + p 2 state + p 3 lightCoords + p 4 overlayCoords + p 5 outlineColor +c net/minecraft/class_11661$class_11674 net/minecraft/client/render/command/OrderedRenderCommandQueueImpl$TextCommand + f Lnet/minecraft/class_5481; comp_4528 text + f Lnet/minecraft/class_327$class_6415; comp_4530 layerType + f Lorg/joml/Matrix4f; comp_4525 matricesEntry + f I comp_4532 color + f I comp_4531 lightCoords + f I comp_4533 backgroundColor + f F comp_4526 x + f F comp_4527 y + f Z comp_4529 dropShadow + f I comp_4654 outlineColor + m ()Lnet/minecraft/class_5481; comp_4528 text + m ()Lnet/minecraft/class_327$class_6415; comp_4530 layerType + m ()Lorg/joml/Matrix4f; comp_4525 matricesEntry + m ()F comp_4527 y + m ()F comp_4526 x + m ()Z comp_4529 dropShadow + m ()I comp_4654 outlineColor + m ()I comp_4531 lightCoords + m ()I comp_4533 backgroundColor + m ()I comp_4532 color + m (Lorg/joml/Matrix4f;FFLnet/minecraft/class_5481;ZLnet/minecraft/class_327$class_6415;IIII)V + p 1 matricesEntry + p 2 x + p 3 y + p 4 text + p 5 dropShadow + p 6 layerType + p 7 lightCoords + p 8 color + p 9 backgroundColor + p 10 outlineColor +c net/minecraft/class_11661$class_11664 net/minecraft/client/render/command/OrderedRenderCommandQueueImpl$CustomCommand + f Lnet/minecraft/class_4587$class_4665; comp_4488 matricesEntry + f Lnet/minecraft/class_11659$class_11660; comp_4489 customRenderer + m ()Lnet/minecraft/class_4587$class_4665; comp_4488 matricesEntry + m ()Lnet/minecraft/class_11659$class_11660; comp_4489 customRenderer + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_11659$class_11660;)V + p 1 matricesEntry + p 2 customRenderer +c net/minecraft/class_11661$class_11790 net/minecraft/client/render/command/OrderedRenderCommandQueueImpl$MovingBlockCommand + f Lorg/joml/Matrix4f; comp_4652 matricesEntry + f Lnet/minecraft/class_11791; comp_4653 movingBlockRenderState + m ()Lorg/joml/Matrix4f; comp_4652 matricesEntry + m ()Lnet/minecraft/class_11791; comp_4653 movingBlockRenderState + m (Lorg/joml/Matrix4f;Lnet/minecraft/class_11791;)V + p 1 matricesEntry + p 2 movingBlockRenderState +c net/minecraft/class_11661$class_11670 net/minecraft/client/render/command/OrderedRenderCommandQueueImpl$ModelCommand + f Lnet/minecraft/class_4587$class_4665; comp_4504 matricesEntry + f Lnet/minecraft/class_1058; comp_4510 sprite + f Lnet/minecraft/class_11683$class_11792; comp_4651 crumblingOverlay + f Ljava/lang/Object; comp_4506 state + f Lnet/minecraft/class_3879; comp_4505 model + f I comp_4508 overlayCoords + f I comp_4507 lightCoords + f I comp_4509 tintedColor + f I comp_4511 outlineColor + m ()Lnet/minecraft/class_4587$class_4665; comp_4504 matricesEntry + m ()Ljava/lang/Object; comp_4506 state + m ()Lnet/minecraft/class_11683$class_11792; comp_4651 crumblingOverlay + m ()Lnet/minecraft/class_3879; comp_4505 model + m ()I comp_4511 outlineColor + m ()I comp_4507 lightCoords + m ()I comp_4509 tintedColor + m ()I comp_4508 overlayCoords + m ()Lnet/minecraft/class_1058; comp_4510 sprite + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_3879;Ljava/lang/Object;IIILnet/minecraft/class_1058;ILnet/minecraft/class_11683$class_11792;)V + p 1 matricesEntry + p 2 model + p 3 state + p 4 lightCoords + p 5 overlayCoords + p 6 tintedColor + p 7 sprite + p 8 outlineColor + p 9 crumblingOverlay +c net/minecraft/class_10331 net/minecraft/client/recipebook/RecipeBookType + f Ljava/util/List; field_54841 categories + f Lnet/minecraft/class_10331; field_54840 SMOKER + f Lnet/minecraft/class_10331; field_54838 FURNACE + f Lnet/minecraft/class_10331; field_54837 CRAFTING + f Lnet/minecraft/class_10331; field_54839 BLAST_FURNACE + m (Ljava/lang/String;I[Lnet/minecraft/class_10355;)V + p 3 categories + m ()Ljava/util/List; method_64888 getCategories +c net/minecraft/class_10335 net/minecraft/client/particle/TrailParticle + f Lnet/minecraft/class_243; field_54855 target + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_243;ILnet/minecraft/class_1058;)V + p 15 color + p 14 target + p 1 world + p 16 sprite + p 10 velocityY + p 12 velocityZ + p 6 z + p 8 velocityX + p 2 x + p 4 y +c net/minecraft/class_10335$class_10336 net/minecraft/client/particle/TrailParticle$Factory + f Lnet/minecraft/class_4002; field_54856 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_10339;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_64913 createParticle +c net/minecraft/class_10332 net/minecraft/client/render/entity/model/CreakingEntityModel + f Lnet/minecraft/class_11509; field_60897 crumblingAnimation + f Lnet/minecraft/class_11509; field_60896 invulnerableAnimation + f Lnet/minecraft/class_11509; field_60895 attackingAnimation + f Lnet/minecraft/class_11509; field_60894 walkingAnimation + f Lnet/minecraft/class_630; field_54844 head + m ()Lnet/minecraft/class_5609; method_64892 getModelData + m ()Lnet/minecraft/class_5607; method_72849 getEyesTexturedModelData + m (Lnet/minecraft/class_10338;)V method_64891 setAngles + m ()Lnet/minecraft/class_5607; method_64890 getTexturedModelData +c net/minecraft/class_10333 net/minecraft/client/recipebook/ClientRecipeManager + f Lnet/minecraft/class_10291$class_10293; field_54854 recipes + f Ljava/util/Map; field_54853 propertySets + m (Ljava/util/Map;Lnet/minecraft/class_10291$class_10293;)V + p 2 recipes + p 1 propertySets +c net/minecraft/class_10338 net/minecraft/client/render/entity/state/CreakingEntityRenderState + f Lnet/minecraft/class_7094; field_54863 attackAnimationState + f Lnet/minecraft/class_7094; field_54862 invulnerableAnimationState + f Lnet/minecraft/class_7094; field_55163 crumblingAnimationState + f Z field_54865 unrooted + f Z field_54864 glowingEyes +c net/minecraft/class_10339 net/minecraft/particle/TrailParticleEffect + f Lcom/mojang/serialization/MapCodec; field_54871 CODEC + f Lnet/minecraft/class_9139; field_54872 PACKET_CODEC + f Lnet/minecraft/class_243; comp_3292 target + f I comp_3346 duration + f I comp_3293 color + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64928 method_64928 + p 0 instance + m ()Lnet/minecraft/class_243; comp_3292 target + m ()I comp_3293 color + m ()I comp_3346 duration + m (Lnet/minecraft/class_243;II)V + p 1 target + p 2 color + p 3 duration +c net/minecraft/class_10337 net/minecraft/client/render/entity/CreakingEntityRenderer + f Lnet/minecraft/class_2960; field_54860 EYES_TEXTURE + f Lnet/minecraft/class_2960; field_54859 TEXTURE + m (Lnet/minecraft/class_10275;Lnet/minecraft/class_10338;F)V method_64916 updateRenderState + m (Lnet/minecraft/class_10338;F)F method_64918 method_64918 + p 0 state + p 1 tickProgress + m (Lnet/minecraft/class_10338;)Lnet/minecraft/class_2960; method_64917 getTexture + m ()Lnet/minecraft/class_10338; method_64915 createRenderState + m (Lnet/minecraft/class_10338;)Lnet/minecraft/class_2960; method_72970 method_72970 + p 0 state +c net/minecraft/class_9214 net/minecraft/client/render/block/entity/VaultBlockEntityRenderer + f Lnet/minecraft/class_5819; field_48953 random + f Lnet/minecraft/class_10442; field_55286 itemModelManager + m ()Lnet/minecraft/class_11975; method_74397 createRenderState + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 context + m (Lnet/minecraft/class_9199;Lnet/minecraft/class_11975;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74398 updateRenderState + m (Lnet/minecraft/class_11975;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_56852 render +c net/minecraft/class_10318 net/minecraft/block/MossBlock + f Lcom/mojang/serialization/MapCodec; field_54736 CODEC + f Lnet/minecraft/class_5321; field_54737 feature + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 feature + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64778 method_64778 + p 0 instance + m (Lnet/minecraft/class_10318;)Lnet/minecraft/class_5321; method_64779 method_64779 + p 0 block + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880$class_6883;)V method_64777 method_64777 + p 3 entry + m (Lnet/minecraft/class_2378;)Ljava/util/Optional; method_64780 method_64780 + p 1 registry +c net/minecraft/class_10319 net/minecraft/block/CreakingHeartBlock + f Lnet/minecraft/class_2754; field_54739 AXIS + f Lcom/mojang/serialization/MapCodec; field_54738 CODEC + f Lnet/minecraft/class_2746; field_55065 NATURAL + f Lnet/minecraft/class_2754; field_55064 ACTIVE + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_65148 dropExperienceOnBreak + p 1 player + p 2 state + p 3 world + p 4 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_64783 isSurroundedByPaleOakLogs + p 0 world + p 1 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_64784 shouldBeEnabled + p 1 world + p 0 state + p 2 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_64785 enableIfValid + p 0 state + p 2 pos +c net/minecraft/class_11651 net/minecraft/client/render/entity/model/CopperGolemEntityModel + f Lnet/minecraft/class_11509; field_61680 droppingNoItemAnimation + f Lnet/minecraft/class_630; field_62210 leftArm + f Lnet/minecraft/class_11509; field_61678 gettingNoItemAnimation + f Lnet/minecraft/class_11509; field_61679 droppingItemAnimation + f Lnet/minecraft/class_11509; field_61676 spinHeadAnimation + f Lnet/minecraft/class_11509; field_61677 gettingItemAnimation + f Lnet/minecraft/class_11509; field_61674 walkingWithoutItemAnimation + f Lnet/minecraft/class_11509; field_61675 walkingWithItemAnimation + f Lnet/minecraft/class_630; field_61671 head + f Lnet/minecraft/class_630; field_61672 body + f Lnet/minecraft/class_630; field_61673 rightArm + m (Lnet/minecraft/class_5603;)Lnet/minecraft/class_5603; method_72845 method_72845 + p 0 transform + m (Lnet/minecraft/class_5603;)Lnet/minecraft/class_5603; method_72843 method_72843 + p 0 transform + m (Lnet/minecraft/class_4587;)V method_73223 transformMatricesForBlock + p 1 matrices + m (Lnet/minecraft/class_11679;)V method_72839 setAngles + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5609; method_72838 method_72838 + p 0 transform + m (Lnet/minecraft/class_5603;)Lnet/minecraft/class_5603; method_72837 method_72837 + p 0 transform + m (Lnet/minecraft/class_5603;)Lnet/minecraft/class_5603; method_72847 method_72847 + p 0 transform + m ()Lnet/minecraft/class_5607; method_72848 getEyesTexturedModelData + m ()V method_73467 clampArmRotations + m ()Lnet/minecraft/class_5607; method_72842 getRunningTexturedModelData + m ()Lnet/minecraft/class_5607; method_72846 getStarTexturedModelData + m ()Lnet/minecraft/class_5607; method_72836 getTexturedModelData + m ()Lnet/minecraft/class_5607; method_72844 getSittingTexturedModelData + m (Lnet/minecraft/class_11679;Lnet/minecraft/class_1306;Lnet/minecraft/class_4587;)V method_72840 setArmAngle +c net/minecraft/class_10323 net/minecraft/block/entity/CreakingHeartBlockEntity + f I field_54788 trailParticlesSpawnTimer + f J field_55502 ticks + f I field_54910 comparatorOutput + f Lcom/mojang/datafixers/util/Either; field_55501 creakingPuppet + f Lnet/minecraft/class_243; field_54789 lastCreakingPuppetPos + f Ljava/util/Optional; field_55500 DEFAULT_CREAKING_PUPPET + f I field_54787 creakingUpdateTimer + m (Lnet/minecraft/class_10275;)V method_65905 setCreakingPuppet + p 1 creakingPuppet + m (Ljava/util/UUID;)V method_65906 setCreakingPuppetFromUuid + p 1 creakingPuppetUuid + m ()V method_65907 clearCreakingPuppet + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_10323;)Lnet/minecraft/class_2680; method_66475 getBlockState + p 0 world + p 3 creakingHeart + p 1 state + p 2 pos + m ()Ljava/util/Optional; method_65805 getCreakingPuppet + m (Lnet/minecraft/class_3218;IZ)V method_64800 spawnTrailParticles + p 1 world + p 2 count + p 3 towardsPuppet + m (Ljava/util/UUID;)Ljava/util/UUID; method_65803 method_65803 + p 0 uuid + m ()D method_65012 getDistanceToPuppet + m (Lnet/minecraft/class_10275;Lnet/minecraft/class_10275;)Ljava/lang/Boolean; method_65801 method_65801 + p 1 puppet + m (Lnet/minecraft/class_10275;)Z method_64803 isPuppet + p 1 creaking + m ()I method_65010 getComparatorOutput + m (Lnet/minecraft/class_10323;Lnet/minecraft/class_10275;)V method_65802 method_65802 + p 1 creaking + m ()Lnet/minecraft/class_2622; method_64805 toUpdatePacket + m (Lnet/minecraft/class_1282;)V method_64802 killPuppet + p 1 damageSource + m (Lnet/minecraft/class_10275;)Ljava/lang/Double; method_65804 method_65804 + p 1 creaking + m (Lnet/minecraft/class_2338;)V method_65167 method_65167 + p 1 pos + m ()I method_65011 calcComparatorOutput + m (Lnet/minecraft/class_3218;)Ljava/util/Optional; method_65170 findResinGenerationPos + p 1 world + m (Lnet/minecraft/class_3218;Lorg/apache/commons/lang3/mutable/Mutable;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338$class_10384; method_65169 method_65169 + p 2 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_10323;)Lnet/minecraft/class_10275; method_64801 spawnCreakingPuppet + p 0 world + p 1 blockEntity + m ()V method_64806 onPuppetDamage + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_10323;)V method_64804 tick + p 0 world + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Ljava/util/function/Consumer;)V method_65168 method_65168 + p 1 pos + p 2 consumer + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos +c net/minecraft/class_10324 net/minecraft/world/gen/treedecorator/CreakingHeartTreeDecorator + f F field_54797 probability + f Lcom/mojang/serialization/MapCodec; field_54796 CODEC + m (Lnet/minecraft/class_4662$class_7402;Lnet/minecraft/class_2338;)Z method_64809 method_64809 + p 1 pos + m (Lnet/minecraft/class_10324;)Ljava/lang/Float; method_64808 method_64808 + p 0 treeDecorator + m (F)V + p 1 probability + m (Lnet/minecraft/class_2680;)Z method_64807 method_64807 + p 0 state +c net/minecraft/class_11653 net/minecraft/client/world/ClientChunkLoadProgress + f Lnet/minecraft/class_11544; field_61728 chunkLoadMap + f Lnet/minecraft/class_11653$class_11655; field_61730 state + f Lorg/slf4j/Logger; field_61724 LOGGER + f Lnet/minecraft/class_11545$class_11546; field_61729 stage + f Lnet/minecraft/class_11547; field_61727 delegate + f J field_61725 THIRTY_SECONDS + f J field_61726 WAIT_UNTIL_READY_MILLIS + m ()Lnet/minecraft/class_11544; method_72904 getChunkLoadMap + m (Lnet/minecraft/class_746;Lnet/minecraft/class_638;Lnet/minecraft/class_761;)V method_72901 startWorldLoading + p 1 player + p 2 world + p 3 renderer + m ()Z method_72902 isDone + m ()F method_72905 getLoadProgress + m (Lnet/minecraft/class_11544;)V method_72900 setChunkLoadMap + p 1 map + m ()V method_72903 initialChunksComing + m ()V method_72899 tick + m ()Z method_72906 hasProgress +c net/minecraft/class_11653$class_11655 net/minecraft/client/world/ClientChunkLoadProgress$State + m ()Lnet/minecraft/class_11653$class_11655; method_72908 initialChunksComing + m ()Lnet/minecraft/class_11653$class_11655; method_72907 next +c net/minecraft/class_11653$class_11656 net/minecraft/client/world/ClientChunkLoadProgress$LoadChunks + f Lnet/minecraft/class_638; comp_4469 world + f Lnet/minecraft/class_761; comp_4470 worldRenderer + f Lnet/minecraft/class_746; comp_4468 player + f J comp_4471 timeoutAfter + m ()Lnet/minecraft/class_638; comp_4469 world + m ()Z method_72909 isReady + m ()Lnet/minecraft/class_761; comp_4470 worldRenderer + m ()J comp_4471 timeoutAfter + m ()Lnet/minecraft/class_746; comp_4468 player + m (Lnet/minecraft/class_746;Lnet/minecraft/class_638;Lnet/minecraft/class_761;J)V + p 1 player + p 2 world + p 3 worldRenderer + p 4 timeoutAfter +c net/minecraft/class_11653$class_11657 net/minecraft/client/world/ClientChunkLoadProgress$Start + f Lnet/minecraft/class_761; comp_4474 worldRenderer + f Lnet/minecraft/class_638; comp_4473 world + f Lnet/minecraft/class_746; comp_4472 player + f J comp_4475 timeoutAfter + m ()Lnet/minecraft/class_761; comp_4474 worldRenderer + m ()Lnet/minecraft/class_638; comp_4473 world + m ()Lnet/minecraft/class_746; comp_4472 player + m ()J comp_4475 timeoutAfter + m (Lnet/minecraft/class_746;Lnet/minecraft/class_638;Lnet/minecraft/class_761;J)V + p 1 player + p 2 world + p 3 worldRenderer + p 4 timeoutAfter +c net/minecraft/class_11653$class_11654 net/minecraft/client/world/ClientChunkLoadProgress$Wait + f J comp_4467 readyAt + m ()J comp_4467 readyAt + m (J)V + p 1 readyAt +c net/minecraft/class_10321 net/minecraft/block/HangingMossBlock + f Lnet/minecraft/class_265; field_54750 SHAPE + f Lcom/mojang/serialization/MapCodec; field_54746 CODEC + f Lnet/minecraft/class_2746; field_54747 TIP + f Lnet/minecraft/class_265; field_54749 TIP_SHAPE + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_64787 getTipPos + p 2 pos + p 1 world + m (Lnet/minecraft/class_2680;)Z method_64789 canGrowInto + p 1 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_64788 canPlaceAt + p 1 world + p 2 pos +c net/minecraft/class_10322 net/minecraft/block/PaleMossCarpetBlock + f Lcom/mojang/serialization/MapCodec; field_54755 CODEC + f Lnet/minecraft/class_2754; field_54760 WEST + f Ljava/util/Map; field_55778 WALL_SHAPE_PROPERTIES_BY_DIRECTION + f Ljava/util/function/Function; field_55779 shapeFunction + f Lnet/minecraft/class_2746; field_54756 BOTTOM + f Lnet/minecraft/class_2754; field_54759 SOUTH + f Lnet/minecraft/class_2754; field_54758 EAST + f Lnet/minecraft/class_2754; field_54757 NORTH + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;I)V method_64792 placeAt + p 1 pos + p 0 world + p 3 flags + p 2 random + m (Lnet/minecraft/class_2680;)Z method_64799 hasAnyShape + p 0 state + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_2754; method_64795 getWallShape + p 0 face + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Ljava/util/function/BooleanSupplier;)Lnet/minecraft/class_2680; method_64790 createUpperState + p 0 world + p 1 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Z)Lnet/minecraft/class_2680; method_64793 updateState + p 2 pos + p 0 state + p 1 world + m (Ljava/util/Map;Ljava/util/Map;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66452 method_66452 + p 2 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_64791 canGrowOnFace + p 1 pos + p 0 world + p 2 direction + m ()Ljava/util/function/Function; method_66453 createShapeFunction +c net/minecraft/class_11659 net/minecraft/client/render/command/OrderedRenderCommandQueue + m (I)Lnet/minecraft/class_11785; method_73529 getBatchingQueue + p 1 order +c net/minecraft/class_11659$class_11660 net/minecraft/client/render/command/OrderedRenderCommandQueue$Custom + m (Lnet/minecraft/class_4587$class_4665;Lnet/minecraft/class_4588;)V render render + p 1 matricesEntry + p 2 vertexConsumer +c net/minecraft/class_11659$class_11947 net/minecraft/client/render/command/OrderedRenderCommandQueue$LayeredCustom + m (Lnet/minecraft/class_11944$class_12041;Lnet/minecraft/class_11977$class_12051;Lcom/mojang/blaze3d/systems/RenderPass;Lnet/minecraft/class_1060;Z)V method_74324 render + p 5 translucent + p 4 manager + p 1 buffers + p 2 cache + m (Lnet/minecraft/class_11977$class_12051;)Lnet/minecraft/class_11944$class_12041; method_74755 submit + p 1 cache +c net/minecraft/class_11658 net/minecraft/client/render/state/WorldRenderState + f Ljava/util/List; field_61735 entityRenderStates + f Lnet/minecraft/class_12075; field_63082 cameraRenderState + f Lnet/minecraft/class_12074; field_63083 outlineRenderState + f Z field_61736 hasOutline + f Ljava/util/List; field_62646 blockEntityRenderStates + f Lnet/minecraft/class_12076; field_63087 skyRenderState + f J field_64463 time + f Lnet/minecraft/class_12077; field_63085 weatherRenderState + f Lnet/minecraft/class_12078; field_63086 worldBorderRenderState + f Ljava/util/List; field_63084 breakingBlockRenderStates + m ()V method_72913 clear +c net/minecraft/class_10328 net/minecraft/client/render/entity/animation/CreakingAnimations + f Lnet/minecraft/class_7184; field_55089 CRUMBLING + f Lnet/minecraft/class_7184; field_54815 ATTACKING + f Lnet/minecraft/class_7184; field_54814 WALKING + f Lnet/minecraft/class_7184; field_54816 INVULNERABLE +c net/minecraft/class_10325 net/minecraft/world/gen/treedecorator/PaleMossTreeDecorator + f F field_54799 leavesProbability + f Lcom/mojang/serialization/MapCodec; field_54798 CODEC + f F field_54801 groundProbability + f F field_54800 trunkProbability + m (Lnet/minecraft/class_10325;)Ljava/lang/Float; method_64819 method_64819 + p 0 treeDecorator + m (Lnet/minecraft/class_10325;)Ljava/lang/Float; method_64818 method_64818 + p 0 treeDecorator + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_4662$class_7402;)V method_64814 decorate + p 0 pos + p 1 generator + m (Lnet/minecraft/class_2378;)Ljava/util/Optional; method_64815 method_64815 + p 0 registry + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_4662$class_7402;Lnet/minecraft/class_2338;)V method_64810 method_64810 + p 3 pos + m (Lnet/minecraft/class_10325;)Ljava/lang/Float; method_64813 method_64813 + p 0 treeDecorator + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64811 method_64811 + p 0 instance + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_4662$class_7402;Lnet/minecraft/class_2338;)V method_64817 method_64817 + p 3 pos + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880$class_6883;)V method_64812 method_64812 + p 3 entry + m (FFF)V + p 1 leavesProbability + p 2 trunkProbability + p 3 groundProbability +c net/minecraft/class_5743 net/minecraft/particle/DustColorTransitionParticleEffect + f I field_28267 SCULK_BLUE + f I field_51491 fromColor + f I field_28271 toColor + f Lnet/minecraft/class_9139; field_48454 PACKET_CODEC + f Lnet/minecraft/class_5743; field_28268 DEFAULT + f Lcom/mojang/serialization/MapCodec; field_28269 CODEC + m (IIF)V + p 2 toColor + p 3 scale + p 1 fromColor + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33107 method_33107 + p 0 instance + m ()Lorg/joml/Vector3f; method_33110 getFromColor + m ()Lorg/joml/Vector3f; method_33112 getToColor + m (Lnet/minecraft/class_5743;)Ljava/lang/Integer; method_65031 method_65031 + p 0 particle + m (Lnet/minecraft/class_5743;)Ljava/lang/Integer; method_65030 method_65030 + p 0 particle + m (Lnet/minecraft/class_5743;)Ljava/lang/Integer; method_65033 method_65033 + p 0 particle + m (Lnet/minecraft/class_5743;)Ljava/lang/Integer; method_65032 method_65032 + p 0 particle +c net/minecraft/class_5746 net/minecraft/data/tag/vanilla/VanillaGameEventTagProvider + f Ljava/util/List; field_38363 BASIC_GAME_EVENTS + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registriesFuture +c net/minecraft/class_5745 net/minecraft/particle/VibrationParticleEffect + f Lnet/minecraft/class_5716; field_38361 destination + f Lnet/minecraft/class_9139; field_48461 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_28277 CODEC + f Lcom/mojang/serialization/Codec; field_51465 POSITION_SOURCE_CODEC + f I field_38362 arrivalInTicks + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42622 method_42622 + p 0 instance + m (Lnet/minecraft/class_5716;I)V + p 1 destination + p 2 arrivalInTicks + m ()Lnet/minecraft/class_5716; method_33125 getVibration + m (Lnet/minecraft/class_5716;)Lcom/mojang/serialization/DataResult; method_59773 method_59773 + p 0 positionSource + m ()I method_42624 getArrivalInTicks +c net/minecraft/class_5742 net/minecraft/world/biome/source/BiomeCoords + c Utility class for converting between biome coordinates and block or chunk\ncoordinates.\n\n

Modders should use this class as Mojang may change the biome coordinate to\nblock or chunk coordinate ratio in the future again.\n\n@apiNote A biome voxel comprises of 4×4×4 block voxels, as that's how biomes\nare stored in game after 19w36a. Each chunk section has 4×4×4 biome\nvoxels as a result. + m (I)I method_33100 fromBlock + c Converts a block x, y, or z to a biome x, y, or z.\n\n@implSpec This implementation returns {@code blockCoord / 4}. + p 0 blockCoord + c a block x, y, or z + m (I)I method_33101 toBlock + c Converts a biome x, y, or z to a block x, y, or z.\n\n@implSpec This implementation returns {@code blockCoord * 4}. + p 0 biomeCoord + c a biome x, y, or z + m (I)I method_33102 fromChunk + c Converts a chunk x or z to a biome x or z.\n\n@implSpec This implementation returns {@code chunkCoord * 4}. + p 0 chunkCoord + c a chunk x or z + m (I)I method_33103 toChunk + c Converts a biome x or z to a chunk x or z.\n\n@implSpec This implementation returns {@code biomeCoord / 4}. + p 0 biomeCoord + c a biome x or z +c net/minecraft/class_4410 net/minecraft/client/realms/gui/screen/RealmsCreateWorldScreen + f Lnet/minecraft/class_4877; field_20001 serverData + f Lnet/minecraft/class_2561; field_46118 RESET_WORLD_TITLE + f I field_19998 slot + f Lnet/minecraft/class_2960; field_22710 INSPIRATION_TEXTURE + f Lnet/minecraft/class_437; field_20000 parent + f Lnet/minecraft/class_2960; field_22714 UPLOAD_TEXTURE + f Lnet/minecraft/class_2960; field_22716 SURVIVAL_SPAWN_TEXTURE + f Lnet/minecraft/class_2960; field_22708 NEW_WORLD_TEXTURE + f Lnet/minecraft/class_2561; field_46123 EXPERIENCE_TEXT + f Lnet/minecraft/class_2561; field_46121 TEMPLATE_TEXT + f Lnet/minecraft/class_4891; field_20498 inspirationWorldTemplates + f Lnet/minecraft/class_2561; field_46127 CREATE_REALM_TITLE + f Lnet/minecraft/class_2561; field_46115 CREATE_REALM_SUBTITLE + f Lnet/minecraft/class_4891; field_20496 adventureWorldTemplates + f Lnet/minecraft/class_2561; field_46125 CREATING_TEXT + f Lnet/minecraft/class_2561; field_20006 subtitle + f Lnet/minecraft/class_2561; field_46119 RESET_WORLD_SUBTITLE + f Lnet/minecraft/class_2561; field_20501 taskTitle + f Ljava/lang/Runnable; field_22711 callback + f Lnet/minecraft/class_2561; field_46117 CREATE_WORLD_SUBTITLE + f Lnet/minecraft/class_2960; field_22715 ADVENTURE_TEXTURE + f Lnet/minecraft/class_8132; field_46126 layout + f Lnet/minecraft/class_4445; field_46709 creationTask + f Lnet/minecraft/class_2960; field_22709 EXPERIENCE_TEXTURE + f Lorg/slf4j/Logger; field_19999 LOGGER + f Lnet/minecraft/class_2561; field_54386 NEW_WORLD_BUTTON_TEXT + f Lnet/minecraft/class_4891; field_20495 normalWorldTemplates + f Lnet/minecraft/class_2561; field_46122 ADVENTURE_TEXT + f Lnet/minecraft/class_2561; field_46120 RESETTING_TEXT + f Lnet/minecraft/class_2561; field_46116 CREATE_WORLD_TITLE + f Lnet/minecraft/class_4891; field_20497 experienceWorldTemplates + f Lnet/minecraft/class_2561; field_46124 INSPIRATION_TEXT + m (Lnet/minecraft/class_437;Lnet/minecraft/class_4877;ILnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_4445;Ljava/lang/Runnable;)V + p 2 serverData + p 3 slot + p 4 title + p 5 subtitle + p 1 parent + m (Lnet/minecraft/class_4890;)V method_32488 onSelectWorldTemplate + p 1 template + m (Lnet/minecraft/class_437;ILnet/minecraft/class_4877;Ljava/lang/Runnable;)Lnet/minecraft/class_4410; method_53801 newWorld + p 0 parent + p 1 slot + p 2 serverData + p 3 callback + m (Lnet/minecraft/class_4185;)V method_53804 method_53804 + p 1 button + m (Lnet/minecraft/class_4410;Lnet/minecraft/class_364;)V method_53799 method_53799 + p 1 child + m (Lnet/minecraft/class_4185;)V method_53806 method_53806 + p 1 button + m (Lnet/minecraft/class_4358;)V method_54380 runTasks + p 1 task + m (Lnet/minecraft/class_4185;)V method_53800 method_53800 + p 1 button + m (Lnet/minecraft/class_437;Lnet/minecraft/class_4877;Ljava/lang/Runnable;)Lnet/minecraft/class_4410; method_53805 resetWorld + p 2 callback + p 1 serverData + p 0 parent + m (Lnet/minecraft/class_4185;)V method_25212 method_25212 + p 1 button + m (Lnet/minecraft/class_4185;)V method_53807 method_53807 + p 1 button + m (Lnet/minecraft/class_437;Lnet/minecraft/class_4877;ILnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Ljava/lang/Runnable;)V + p 2 serverData + p 1 parent + p 4 title + p 3 slot + p 5 subtitle + m (Lnet/minecraft/class_437;Lnet/minecraft/class_4877;Lnet/minecraft/class_4445;Ljava/lang/Runnable;)Lnet/minecraft/class_4410; method_53802 newRealm + p 0 parent + p 1 serverData + p 2 creationTask + p 3 callback + m (Lnet/minecraft/class_4185;)V method_25213 method_25213 + p 1 button + m (Lnet/minecraft/class_4185;)V method_25211 method_25211 + p 1 button +c net/minecraft/class_4410$class_4411 net/minecraft/client/realms/gui/screen/RealmsCreateWorldScreen$FrameButton + f I field_46130 TEXTURE_SIZE + f I field_48386 TEXTURE_MARGIN + f I field_48385 SIZE + f Lnet/minecraft/class_2960; field_48384 TEXTURE + f Lnet/minecraft/class_2960; field_20032 image + m (Lnet/minecraft/class_4410;Lnet/minecraft/class_327;Lnet/minecraft/class_2561;Lnet/minecraft/class_2960;Lnet/minecraft/class_4185$class_4241;)V + p 5 onPress + p 2 textRenderer + p 3 message + p 4 image +c net/minecraft/class_4406 net/minecraft/client/realms/gui/screen/tab/RealmsPlayerTab + f Lnet/minecraft/class_4877; field_19961 serverData + f Lnet/minecraft/class_4406$class_4407; field_60251 playerList + f Lnet/minecraft/class_310; field_60250 client + f Lnet/minecraft/class_4388; field_60249 screen + f Lnet/minecraft/class_2561; field_49461 TITLE + f Lnet/minecraft/class_327; field_62101 textRenderer + f Lnet/minecraft/class_2561; field_44908 QUESTION_TEXT + f Lorg/slf4j/Logger; field_19958 LOGGER + m (Lnet/minecraft/class_310;Lnet/minecraft/class_4388;Lnet/minecraft/class_4877;Lnet/minecraft/class_4185;)V method_71220 method_71220 + p 3 button + m ()I method_71219 getPlayerListHeight + m (Lnet/minecraft/class_4388;Lnet/minecraft/class_310;Lnet/minecraft/class_4877;)V + p 1 screen + p 3 serverData + p 2 client +c net/minecraft/class_4406$class_4408 net/minecraft/client/realms/gui/screen/tab/RealmsPlayerTab$InvitedObjectSelectionListEntry + f Lnet/minecraft/class_2561; field_49466 REMOVE_TOOLTIP_TEXT + f Lnet/minecraft/class_2561; field_49464 NORMAL_TOOLTIP_TEXT + f Lnet/minecraft/class_2960; field_49467 MAKE_OPERATOR_TEXTURE + f Lnet/minecraft/class_4185; field_44538 deopButton + f Lnet/minecraft/class_2960; field_49469 REMOVE_PLAYER_TEXTURE + f Lnet/minecraft/class_4185; field_44536 uninviteButton + f Lnet/minecraft/class_2561; field_49465 OPS_TOOLTIP_TEXT + f Lnet/minecraft/class_4185; field_44537 opButton + f Lnet/minecraft/class_2960; field_49468 REMOVE_OPERATOR_TEXTURE + f Lnet/minecraft/class_4874; field_19979 playerInfo + m (ILnet/minecraft/class_4185;)V method_51249 method_51249 + p 2 button + m (Lnet/minecraft/class_4874;Lnet/minecraft/class_4341;)V method_72206 method_72206 + p 2 client + m (Lnet/minecraft/class_4355;)V method_72210 method_72210 + p 0 error + m (I)V method_57698 uninvite + p 1 index + m (Lnet/minecraft/class_4870;)V method_72212 method_72212 + p 1 ops + m (Lnet/minecraft/class_4874;Ljava/util/function/Supplier;)Lnet/minecraft/class_5250; method_57699 method_57699 + p 1 textSupplier + m (Lnet/minecraft/class_4870;)V method_57692 setOps + p 1 ops + m (Ljava/util/UUID;Lnet/minecraft/class_4341;)Lnet/minecraft/class_4870; method_72211 method_72211 + p 2 client + m (ILnet/minecraft/class_4185;)V method_51246 method_51246 + p 2 button + m ()Lnet/minecraft/class_4185; method_57700 getOpButton + m (Lnet/minecraft/class_4355;)V method_72207 method_72207 + p 0 error + m (ILnet/minecraft/class_4185;)V method_51248 method_51248 + p 2 button + m (Lnet/minecraft/class_4874;IZ)V method_57693 method_57693 + p 3 confirmed + m (Lnet/minecraft/class_4870;)V method_72209 method_72209 + p 1 ops + m (Lnet/minecraft/class_4355;)V method_72213 method_72213 + p 0 error + m (I)V method_57695 deop + p 1 index + m (Lnet/minecraft/class_4406;Lnet/minecraft/class_4874;)V + p 2 playerInfo + m (Ljava/util/UUID;Lnet/minecraft/class_4341;)Lnet/minecraft/class_4870; method_72208 method_72208 + p 2 client + m (I)V method_57691 op + p 1 index + m ()V method_57697 refreshOpButtonsVisibility + m (Lnet/minecraft/class_4874;Ljava/util/function/Supplier;)Lnet/minecraft/class_5250; method_57696 method_57696 + p 1 textSupplier + m (Lnet/minecraft/class_4874;Ljava/util/function/Supplier;)Lnet/minecraft/class_5250; method_57694 method_57694 + p 1 textSupplier +c net/minecraft/class_4406$class_11762 net/minecraft/client/realms/gui/screen/tab/RealmsPlayerTab$HeaderEntry + f Lnet/minecraft/class_8019; field_62105 textWidget + f Ljava/lang/String; field_62104 invitedPlayerCount + m (I)I method_75301 getHeight + p 1 innerHeight +c net/minecraft/class_4406$class_11761 net/minecraft/client/realms/gui/screen/tab/RealmsPlayerTab$PlayerTabEntry +c net/minecraft/class_4406$class_4407 net/minecraft/client/realms/gui/screen/tab/RealmsPlayerTab$InvitedObjectSelectionList + m (Lnet/minecraft/class_4406;II)V + p 2 width + p 3 height + m (Lnet/minecraft/class_4877;)V method_73358 addEntries + p 1 serverData + m (Lnet/minecraft/class_4877;)V method_73357 refreshEntries + p 1 serverData +c net/minecraft/class_5737 net/minecraft/client/particle/VibrationParticle + f Lnet/minecraft/class_5716; field_28249 vibration + m (Lnet/minecraft/class_638;DDDLnet/minecraft/class_5716;ILnet/minecraft/class_1058;)V + p 9 maxAge + p 8 vibration + p 10 sprite + p 4 y + p 6 z + p 1 world + p 2 x +c net/minecraft/class_5737$class_5738 net/minecraft/client/particle/VibrationParticle$Factory + f Lnet/minecraft/class_4002; field_28251 spriteProvider + m (Lnet/minecraft/class_5745;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_33080 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_5736 net/minecraft/client/particle/AbstractDustParticle + f Lnet/minecraft/class_4002; field_28247 spriteProvider + m (FF)F method_33076 darken + p 1 colorComponent + p 2 multiplier + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_9679;Lnet/minecraft/class_4002;)V + p 2 x + p 1 world + p 15 spriteProvider + p 14 parameters + p 12 velocityZ + p 10 velocityY + p 8 velocityX + p 6 z + p 4 y +c net/minecraft/class_5739 net/minecraft/client/render/debug/GameEventDebugRenderer + m (Lnet/minecraft/class_12009;II)V method_75433 method_75433 + p 0 data + p 2 expiry + p 1 remainingTime + m (Lnet/minecraft/class_5739$class_12044;Lnet/minecraft/class_1297;Lnet/minecraft/class_12010;)V method_74789 method_74789 + p 1 entity + p 2 data + m (Lnet/minecraft/class_12021;Lnet/minecraft/class_5739$class_12044;)V method_74787 forEachEventData + p 1 dataStore + p 2 consumer + m (Lnet/minecraft/class_243;I)V method_75435 method_75435 + p 1 radius + p 0 pos + m (Lnet/minecraft/class_243;I)V method_75434 method_75434 + p 0 pos + p 1 radius + m (Lnet/minecraft/class_5739$class_12044;Lnet/minecraft/class_2338;Lnet/minecraft/class_12010;)V method_74790 method_74790 + p 2 data + p 1 pos + m (Lnet/minecraft/class_243;I)V method_75436 method_75436 + p 0 pos + p 1 radius +c net/minecraft/class_5739$class_12044 net/minecraft/client/render/debug/GameEventDebugRenderer$EventConsumer + m (Lnet/minecraft/class_243;I)V accept accept + p 1 pos + p 2 radius +c net/minecraft/class_11604 net/minecraft/client/gui/hud/debug/BiomeDebugHudEntry + f Lnet/minecraft/class_2960; field_61537 SECTION_ID + m (Lnet/minecraft/class_1959;)Ljava/lang/String; method_72750 method_72750 + p 0 value + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_72749 method_72749 + p 0 key + m (Lnet/minecraft/class_6880;)Ljava/lang/String; method_72752 getBiomeAsString + p 0 biome +c net/minecraft/class_11603 net/minecraft/client/font/GlyphProvider + m (I)Lnet/minecraft/class_11768; method_72736 get + p 1 codePoint + m (Lnet/minecraft/class_5819;I)Lnet/minecraft/class_11768; method_72737 getObfuscated + p 1 random + p 2 width +c net/minecraft/class_11601 net/minecraft/client/render/entity/animation/CopperGolemAnimations + f Lnet/minecraft/class_7184; field_61514 WALKING_WITHOUT_ITEM + f Lnet/minecraft/class_7184; field_61515 SPIN_HEAD + f Lnet/minecraft/class_7184; field_61520 GETTING_NO_ITEM + f Lnet/minecraft/class_7184; field_61516 WALKING_WITH_ITEM + f Lnet/minecraft/class_7184; field_61517 DROPPING_ITEM + f Lnet/minecraft/class_7184; field_61518 DROPPING_NO_ITEM + f Lnet/minecraft/class_7184; field_61519 GETTING_ITEM +c net/minecraft/class_5754 net/minecraft/entity/ai/brain/task/TemptTask + f Ljava/util/function/Function; field_28316 speed + f Ljava/util/function/Function; field_44704 stopDistanceGetter + f D field_45125 DEFAULT_STOP_DISTANCE + f D field_45126 LARGE_ENTITY_STOP_DISTANCE + f I field_30115 TEMPTATION_COOLDOWN_TICKS + f Z field_59676 useEyeHeight + m (Ljava/util/function/Function;Ljava/util/function/Function;)V + p 1 speed + p 2 stopDistanceGetter + m (Lnet/minecraft/class_1314;)F method_33196 getSpeed + p 1 entity + m (Lnet/minecraft/class_1309;)Ljava/lang/Double; method_52173 method_52173 + p 0 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_33200 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_33199 finishRunning + m (Ljava/util/function/Function;Ljava/util/function/Function;Z)V + p 3 useEyeHeight + p 2 stopDistanceGetter + p 1 speed + m (Lnet/minecraft/class_1314;)Ljava/util/Optional; method_33198 getTemptingPlayer + p 1 entity + m (Ljava/util/function/Function;)V + p 1 speed + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_33195 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_33197 run +c net/minecraft/class_4423 net/minecraft/client/realms/gui/screen/RealmsSlotOptionsScreen + f Lnet/minecraft/class_4388; field_20109 parent + f Lnet/minecraft/class_2561; field_27942 SPAWN_PROTECTION + f Ljava/lang/String; field_39188 slotName + f Lnet/minecraft/class_1267; field_27943 difficulty + f Ljava/util/List; field_22724 GAME_MODES + f I field_20114 column1_x + f Ljava/lang/String; field_39187 defaultSlotName + f I field_20116 column2_x + f I field_20120 spawnProtection + f Lnet/minecraft/class_4423$class_4424; field_20133 spawnProtectionButton + f Z field_20128 forceGameMode + f Lnet/minecraft/class_1934; field_20121 gameMode + f Lnet/minecraft/class_4877$class_4321; field_20118 worldType + f Lnet/minecraft/class_342; field_20113 nameEdit + f Lnet/minecraft/class_2561; field_26516 EDIT_SLOT_NAME + f Ljava/util/List; field_22723 DIFFICULTIES + f Lnet/minecraft/class_11306; field_60283 slot + m (Ljava/util/List;Ljava/lang/Object;I)I method_32499 indexOf + p 1 value + p 0 list + p 2 fallbackIndex + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_1934;)V method_32496 method_32496 + p 2 gameModeIndex + p 1 button + m (Ljava/util/function/Consumer;Lnet/minecraft/class_2561;Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_43754 method_43754 + p 4 value + p 3 button + m (Ljava/util/function/Consumer;Lnet/minecraft/class_8816;)V method_43755 method_43755 + p 1 popup + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_32500 method_32500 + p 2 forceGameMode + p 1 button + m (Ljava/util/List;II)Ljava/lang/Object; method_32498 get + p 1 index + p 2 fallbackIndex + p 0 list + m (Ljava/lang/String;)V method_43757 setSlotName + p 1 slotName + m (Lnet/minecraft/class_4185;)V method_25255 method_25255 + p 1 button + m (Lnet/minecraft/class_4185;)V method_25256 method_25256 + p 1 button + m ()V method_21486 saveSettings + m (Lnet/minecraft/class_4388;Lnet/minecraft/class_11306;Lnet/minecraft/class_4877$class_4321;I)V + p 3 worldType + p 2 slot + p 4 activeSlot + p 1 parent + m (Lnet/minecraft/class_2561;Ljava/util/function/Consumer;)Lnet/minecraft/class_5676$class_5678; method_43756 getSpawnToggleButtonCallback + p 1 text + p 2 valueSetter +c net/minecraft/class_4423$class_4424 net/minecraft/client/realms/gui/screen/RealmsSlotOptionsScreen$SettingsSlider + f D field_22725 min + f D field_22726 max + m (Lnet/minecraft/class_4423;IIIIFF)V + p 3 y + p 2 x + p 5 value + p 4 width + p 7 max + p 6 min +c net/minecraft/class_5757 net/minecraft/entity/ai/control/AquaticMoveControl + f F field_28321 speedInWater + f F field_28322 speedInAir + f Z field_28323 buoyant + f I field_28320 yawChange + f I field_28319 pitchChange + m (Lnet/minecraft/class_1308;IIFFZ)V + p 4 speedInWater + p 3 yawChange + p 2 pitchChange + p 1 entity + p 6 buoyant + p 5 speedInAir +c net/minecraft/class_4426 net/minecraft/client/realms/gui/screen/RealmsTermsScreen + f Lnet/minecraft/class_437; field_22727 parent + f Lnet/minecraft/class_2561; field_26525 SENTENCE_TWO_TEXT + f Lnet/minecraft/class_4877; field_20168 realmsServer + f Lnet/minecraft/class_2561; field_26524 SENTENCE_ONE_TEXT + f Lnet/minecraft/class_2561; field_26523 TITLE + f Z field_20170 onLink + f Lorg/slf4j/Logger; field_20165 LOGGER + m (Lnet/minecraft/class_437;Lnet/minecraft/class_4877;)V + p 1 parent + p 2 realmsServer + m ()V method_21505 agreedToTos + m (Lnet/minecraft/class_4185;)V method_25274 method_25274 + p 1 button + m (Lnet/minecraft/class_4185;)V method_25275 method_25275 + p 1 button +c net/minecraft/class_5756 net/minecraft/entity/ai/brain/task/SeekWaterTask + m (IF)Lnet/minecraft/class_7893; method_47176 create + p 0 range + p 1 speed + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47178 method_47178 + p 5 lookTarget + p 4 walkTarget + p 3 attackTarget + m (Lorg/apache/commons/lang3/mutable/MutableLong;ILnet/minecraft/class_7906;Lnet/minecraft/class_7906;FLnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_47179 method_47179 + p 6 entity + p 5 world + p 7 time + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47177 method_47177 + p 3 context +c net/minecraft/class_4425 net/minecraft/client/realms/gui/screen/tab/RealmsSubscriptionInfoTab + f Lnet/minecraft/class_8019; field_60290 subscriptionInfoTextWidget + f Lnet/minecraft/class_4185; field_60289 deleteWorldButton + f Lnet/minecraft/class_2561; field_26517 EXPIRED_TEXT + f Lnet/minecraft/class_2561; field_20154 SUBSCRIPTION_START_LABEL_TEXT + f Lnet/minecraft/class_2561; field_20156 DAYS_LEFT_LABEL_TEXT + f Lnet/minecraft/class_2561; field_20158 startDate + f Lnet/minecraft/class_310; field_60288 client + f Lnet/minecraft/class_7842; field_60292 timeLeftLabelTextWidget + f Lnet/minecraft/class_2561; field_34033 UNKNOWN_TEXT + f Lorg/slf4j/Logger; field_20146 LOGGER + f Lnet/minecraft/class_4877; field_20148 serverData + f Lnet/minecraft/class_4887$class_4322; field_20159 type + f Lnet/minecraft/class_4388; field_60287 screen + f Lnet/minecraft/class_2561; field_26518 EXPIRES_IN_LESS_THAN_A_DAY_TEXT + f Lnet/minecraft/class_2561; field_20153 SUBSCRIPTION_TITLE + f Lnet/minecraft/class_2561; field_20155 TIME_LEFT_LABEL_TEXT + f Lnet/minecraft/class_2561; field_43152 RECURRING_INFO_TEXT + f Lnet/minecraft/class_2561; field_20157 daysLeft + f Lnet/minecraft/class_7842; field_60291 startDateTextWidget + f Lnet/minecraft/class_7842; field_60293 daysLeftTextWidget + m (Lnet/minecraft/class_310;Lnet/minecraft/class_4388;Lnet/minecraft/class_4185;)V method_71243 method_71243 + p 3 button + m (I)Lnet/minecraft/class_2561; method_21499 daysLeftPresentation + p 1 daysLeft + m (Lnet/minecraft/class_4388;Lnet/minecraft/class_4877;Lnet/minecraft/class_310;Lnet/minecraft/class_4185;)V method_71242 method_71242 + p 3 button + m (Ljava/time/Instant;)Lnet/minecraft/class_2561; method_21502 localPresentation + p 0 time + m (Lnet/minecraft/class_4388;Lnet/minecraft/class_310;Lnet/minecraft/class_4877;)V + p 2 client + p 1 screen + p 3 server + m ()V method_25271 onDeletionConfirmed + m (Lnet/minecraft/class_4341;)V method_71246 method_71246 + p 1 client + m (J)V method_21500 getSubscription + p 1 worldId +c net/minecraft/class_5753 net/minecraft/entity/ai/brain/task/TickCooldownTask + f Lnet/minecraft/class_4140; field_30113 cooldownModule + m (Lnet/minecraft/class_4140;)V + p 1 cooldownModule + m (Lnet/minecraft/class_1309;)Ljava/util/Optional; method_33194 getRemainingCooldownTicks + p 1 entity +c net/minecraft/class_5752 net/minecraft/datafixer/schema/Schema2686 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_4416 net/minecraft/client/realms/gui/screen/RealmsSelectFileToUploadScreen + f Lorg/slf4j/Logger; field_20049 LOGGER + f Lnet/minecraft/class_2561; field_46131 TITLE + f Lnet/minecraft/class_4410; field_20050 parent + f Lnet/minecraft/class_528; field_20057 worldSelectionList + f J field_20051 worldId + f Lnet/minecraft/class_4185; field_20053 uploadButton + f I field_20052 slotId + f Lnet/minecraft/class_2561; field_44909 LOADING_ERROR_TEXT + f Lnet/minecraft/class_4445; field_48387 creationTask + m (Lnet/minecraft/class_34;)V method_73351 worldSelected + p 1 level + m (Lnet/minecraft/class_4445;JILnet/minecraft/class_4410;)V + p 2 worldId + p 1 creationTask + p 4 slotId + p 5 parent + m (Lnet/minecraft/class_528$class_4272;)V method_21401 upload +c net/minecraft/class_4419 net/minecraft/client/realms/gui/screen/RealmsSelectWorldTemplateScreen + f Lnet/minecraft/class_4185; field_20075 trailerButton + f Lorg/slf4j/Logger; field_20069 LOGGER + f Lnet/minecraft/class_2561; field_45979 PUBLISHER_TEXT + f Lnet/minecraft/class_2561; field_45977 SELECT_TEXT + f Lnet/minecraft/class_2960; field_22721 SLOT_FRAME_TEXTURE + f Ljava/lang/String; field_20078 currentLink + f Lnet/minecraft/class_4877$class_4321; field_20079 worldType + f Ljava/util/List; field_20085 noTemplatesMessage + f Lnet/minecraft/class_4419$class_4420; field_20071 templateList + f Lnet/minecraft/class_4890; field_20072 selectedTemplate + f Lnet/minecraft/class_4185; field_20076 publisherButton + f Lnet/minecraft/class_8132; field_45976 layout + f Lnet/minecraft/class_4185; field_20074 selectButton + f Ljava/util/function/Consumer; field_27941 callback + f Lnet/minecraft/class_2561; field_45978 TRAILER_TEXT + m (Lnet/minecraft/class_4450$class_4452;)I method_25230 method_25230 + p 1 segment + m (Lnet/minecraft/class_4891;Lnet/minecraft/class_4341;)Lcom/mojang/datafixers/util/Either; method_21416 fetchWorldTemplates + p 2 realms + p 1 templateList + m (Lnet/minecraft/class_4185;)V method_25234 method_25234 + p 1 button + m (Lnet/minecraft/class_2561;Ljava/util/function/Consumer;Lnet/minecraft/class_4877$class_4321;Lnet/minecraft/class_4891;Ljava/util/List;)V + p 4 templateList + p 3 worldType + p 2 callback + p 1 title + m (Lnet/minecraft/class_4185;)V method_25236 method_25236 + p 1 button + m (Lnet/minecraft/class_4185;)V method_25231 method_25231 + p 1 button + m ()V method_21442 onTrailer + m ()V method_21444 onPublish + m (Lnet/minecraft/class_4419;Lnet/minecraft/class_364;)V method_53515 method_53515 + p 1 child + m ()V method_21440 selectTemplate + m ()V method_21425 updateButtonStates + m (Lnet/minecraft/class_4891;)V method_21415 setPagination + p 1 templateList + m (Lnet/minecraft/class_2561;Ljava/util/function/Consumer;Lnet/minecraft/class_4877$class_4321;Lnet/minecraft/class_4891;)V + p 1 title + p 2 callback + p 3 worldType + m (Lnet/minecraft/class_332;IILjava/util/List;)V method_21414 renderMessages + p 4 messages + p 2 x + p 3 y + p 1 context + m (Lnet/minecraft/class_4185;)V method_25233 method_25233 + p 1 button +c net/minecraft/class_4419$class_4420 net/minecraft/client/realms/gui/screen/RealmsSelectWorldTemplateScreen$WorldTemplateObjectSelectionList + m (Lnet/minecraft/class_4419;Ljava/lang/Iterable;)V + p 2 templates + m ()Z method_21446 isEmpty + m (Lnet/minecraft/class_4890;)V method_21448 addEntry + p 1 template + m (Lnet/minecraft/class_4419$class_4421;)V method_25249 setSelected + m (Lnet/minecraft/class_4419;)V + p 1 screen + m ()Ljava/util/List; method_21450 getValues + m (Lnet/minecraft/class_4419$class_4421;)Lnet/minecraft/class_4890; method_25250 method_25250 + p 0 child +c net/minecraft/class_4419$class_4421 net/minecraft/client/realms/gui/screen/RealmsSelectWorldTemplateScreen$WorldTemplateObjectSelectionListEntry + f Lnet/minecraft/class_4890; field_20094 mTemplate + f Lnet/minecraft/class_8666; field_45981 VIDEO_LINK_TEXTURES + f Lnet/minecraft/class_2561; field_45982 INFO_TOOLTIP_TEXT + f Lnet/minecraft/class_8666; field_45980 LINK_TEXTURES + f Lnet/minecraft/class_2561; field_45983 TRAILER_TOOLTIP_TEXT + f Lnet/minecraft/class_344; field_45986 trailerButton + f Lnet/minecraft/class_344; field_45985 infoButton + m (Lnet/minecraft/class_4419;Lnet/minecraft/class_4890;)V + p 2 template +c net/minecraft/class_11619 net/minecraft/client/gui/hud/debug/RendererDebugHudEntry + f Z field_61549 ignoreReducedDebugInfo + m (Z)V + p 1 ignoreReducedDebugInfo +c net/minecraft/class_11618 net/minecraft/client/gui/hud/debug/MemoryDebugHudEntry + f Lnet/minecraft/class_11618$class_7412; field_61548 allocationRateCalculator + f Lnet/minecraft/class_2960; field_61547 SECTION_ID + m (J)J method_72758 toMegabytes + p 0 bytes +c net/minecraft/class_11618$class_7412 net/minecraft/client/gui/hud/debug/MemoryDebugHudEntry$AllocationRateCalculator + f J field_38991 allocationRate + f J field_38990 collectionCount + f Ljava/util/List; field_38987 GARBAGE_COLLECTORS + f J field_38988 lastCalculated + f J field_38989 allocatedBytes + f I field_38986 INTERVAL + m (J)J method_43448 get + p 1 allocatedBytes + m ()J method_43447 getCollectionCount +c net/minecraft/class_11617 net/minecraft/client/gui/hud/debug/LookingAtFluidDebugHudEntry + f Lnet/minecraft/class_2960; field_61546 SECTION_ID + m (Lnet/minecraft/class_6862;)Ljava/lang/String; method_72756 method_72756 + p 0 tag + m (Ljava/util/Map$Entry;)Ljava/lang/String; method_72757 getFluidPropertyLine + p 1 propertyAndValue +c net/minecraft/class_11616 net/minecraft/client/gui/hud/debug/LookingAtEntityDebugHudEntry + f Lnet/minecraft/class_2960; field_61545 SECTION_ID +c net/minecraft/class_5721 net/minecraft/world/gen/feature/util/CaveSurface + m (I)Lnet/minecraft/class_5721; method_32981 createHalfWithCeiling + p 0 ceiling + m (Ljava/util/OptionalInt;Ljava/util/OptionalInt;)Lnet/minecraft/class_5721; method_32984 create + p 1 floorHeight + p 0 ceilingHeight + m (Lnet/minecraft/class_3746;ILjava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/class_2338$class_2339;ILnet/minecraft/class_2350;)Ljava/util/OptionalInt; method_34280 getCaveSurface + p 4 mutablePos + p 3 canReplace + p 6 direction + p 5 y + p 0 world + p 2 canGenerate + p 1 height + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_2338;ILjava/util/function/Predicate;Ljava/util/function/Predicate;)Ljava/util/Optional; method_32982 create + p 4 canReplace + p 2 height + p 3 canGenerate + p 0 world + p 1 pos + m (Ljava/util/OptionalInt;)Lnet/minecraft/class_5721; method_35328 withCeiling + p 1 ceiling + m ()Lnet/minecraft/class_5721; method_32980 createEmpty + m (II)Lnet/minecraft/class_5721$class_5723; method_32986 createBounded + p 0 floor + p 1 ceiling + m (Ljava/util/OptionalInt;)Lnet/minecraft/class_5721; method_32983 withFloor + p 1 floor + m ()Ljava/util/OptionalInt; method_32985 getCeilingHeight + m ()Ljava/util/OptionalInt; method_32987 getFloorHeight + m ()Ljava/util/OptionalInt; method_33385 getOptionalHeight + m (I)Lnet/minecraft/class_5721; method_32988 createHalfWithFloor + p 0 floor + m (II)Lnet/minecraft/class_5721$class_5723; method_35326 method_35326 + p 1 ceiling + p 0 floor +c net/minecraft/class_5721$class_5722 net/minecraft/world/gen/feature/util/CaveSurface$Empty + f Lnet/minecraft/class_5721$class_5722; field_28197 INSTANCE +c net/minecraft/class_5721$class_5724 net/minecraft/world/gen/feature/util/CaveSurface$Half + f I field_28200 height + f Z field_28201 floor + m (IZ)V + p 2 floor + p 1 height +c net/minecraft/class_5721$class_5723 net/minecraft/world/gen/feature/util/CaveSurface$Bounded + f I field_28199 ceiling + f I field_28198 floor + m ()I method_32990 getCeiling + m ()I method_32991 getFloor + m ()I method_32992 getHeight + m (II)V + p 2 ceiling + p 1 floor +c net/minecraft/class_5715 net/minecraft/world/event/listener/EntityGameEventHandler + c A game event handler for an entity so that the listener stored can be\nmoved to the correct dispatcher or unregistered as the entity moves or\ngets removed. + f Lnet/minecraft/class_4076; field_28183 sectionPos + f Lnet/minecraft/class_5714; field_28182 listener + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4076;)V method_42336 method_42336 + p 2 sectionPos + m (Lnet/minecraft/class_5713;)V method_32951 method_32951 + p 1 dispatcher + m (Lnet/minecraft/class_3218;)V method_32952 onEntitySetPos + p 1 world + m (Lnet/minecraft/class_3218;)V method_42335 onEntitySetPosCallback + p 1 world + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_4076;Ljava/util/function/Consumer;)V method_32950 updateDispatcher + p 1 sectionPos + p 2 dispatcherConsumer + p 0 world + m (Lnet/minecraft/class_5713;)V method_32954 method_32954 + p 1 dispatcher + m (Lnet/minecraft/class_5714;)V + p 1 listener + m (Lnet/minecraft/class_5713;)V method_32953 method_32953 + p 1 dispatcher + m (Lnet/minecraft/class_3218;)V method_32949 onEntityRemoval + p 1 world + m ()Lnet/minecraft/class_5714; method_43152 getListener +c net/minecraft/class_5714 net/minecraft/world/event/listener/GameEventListener + c A game event listener listens to game events from {@link GameEventDispatcher}s. + m ()Lnet/minecraft/class_5714$class_7720; method_45472 getTriggerOrder + m ()I method_32948 getRange + c Returns the range, in blocks, of the listener. + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6880;Lnet/minecraft/class_5712$class_7397;Lnet/minecraft/class_243;)Z method_32947 listen + c Listens to an incoming game event.\n\n@return {@code true} if the game event has been accepted by this listener + p 1 world + p 3 emitter + p 2 event + p 4 emitterPos + m ()Lnet/minecraft/class_5716; method_32946 getPositionSource + c Returns the position source of this listener. +c net/minecraft/class_5714$class_7720 net/minecraft/world/event/listener/GameEventListener$TriggerOrder + f Lnet/minecraft/class_5714$class_7720; field_40354 BY_DISTANCE + f Lnet/minecraft/class_5714$class_7720; field_40353 UNSPECIFIED +c net/minecraft/class_5714$class_8513 net/minecraft/world/event/listener/GameEventListener$Holder + m ()Lnet/minecraft/class_5714; method_51358 getEventListener +c net/minecraft/class_5717 net/minecraft/world/event/PositionSourceType + f Lnet/minecraft/class_5717; field_28185 BLOCK + f Lnet/minecraft/class_5717; field_28186 ENTITY + m ()Lnet/minecraft/class_9139; method_56123 getPacketCodec + m ()Lcom/mojang/serialization/MapCodec; method_32957 getCodec + m (Ljava/lang/String;Lnet/minecraft/class_5717;)Lnet/minecraft/class_5717; method_32959 register + p 1 positionSourceType + p 0 id +c net/minecraft/class_5716 net/minecraft/world/event/PositionSource + c A position source is a property of a game event listener.\n\n@see net.minecraft.world.event.listener.GameEventListener#getPositionSource() + f Lnet/minecraft/class_9139; field_48379 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_28184 CODEC + c A codec for encoding and decoding any position source whose {@link #getType() type}\nis in the {@link net.minecraft.registry.Registries#POSITION_SOURCE_TYPE registry}. + m ()Lnet/minecraft/class_5717; method_32955 getType + c Returns the type of this position source. + m (Lnet/minecraft/class_1937;)Ljava/util/Optional; method_32956 getPos + p 1 world +c net/minecraft/class_11622 net/minecraft/client/gui/hud/debug/PostEffectDebugHudEntry +c net/minecraft/class_11621 net/minecraft/client/gui/hud/debug/PlayerPositionDebugHudEntry + f Lnet/minecraft/class_2960; field_61550 SECTION_ID +c net/minecraft/class_11620 net/minecraft/client/gui/hud/debug/ParticleRenderStatsDebugHudEntry +c net/minecraft/class_11626 net/minecraft/client/gui/hud/debug/EntitySpawnCountsDebugHudEntry + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/class_1311;)Ljava/lang/String; method_72760 method_72760 + p 1 spawnGroup +c net/minecraft/class_11625 net/minecraft/client/gui/hud/debug/SoundMoodDebugHudEntry +c net/minecraft/class_11624 net/minecraft/client/gui/hud/debug/SimplePerformanceImpactorsDebugHudEntry +c net/minecraft/class_11623 net/minecraft/client/gui/hud/debug/PlayerSectionPositionDebugHudEntry +c net/minecraft/class_11608 net/minecraft/client/gui/hud/debug/ChunkSourceStatsDebugHudEntry +c net/minecraft/class_11607 net/minecraft/client/gui/hud/debug/ChunkRenderStatsDebugHudEntry +c net/minecraft/class_11606 net/minecraft/client/gui/hud/debug/ChunkGenerationStatsDebugHudEntry + f Lnet/minecraft/class_2960; field_61540 SECTION_ID +c net/minecraft/class_11605 net/minecraft/client/gui/hud/debug/DebugHudEntryCategory + f Lnet/minecraft/class_11605; field_61538 TEXT + f Lnet/minecraft/class_11605; field_61539 RENDERER + f F comp_4456 sortKey + f Lnet/minecraft/class_2561; comp_4455 label + m ()Lnet/minecraft/class_2561; comp_4455 label + m ()F comp_4456 sortKey + m (Lnet/minecraft/class_2561;F)V + p 1 label + p 2 sortKey +c net/minecraft/class_11609 net/minecraft/client/gui/hud/debug/EntityRenderStatsDebugHudEntry +c net/minecraft/class_5733 net/minecraft/world/gen/feature/SmallDripstoneFeatureConfig + f Lcom/mojang/serialization/Codec; field_28237 CODEC + f F field_35416 chanceOfDirectionalSpread + f F field_28241 chanceOfTallerDripstone + f F field_35417 chanceOfSpreadRadius2 + f F field_35418 chanceOfSpreadRadius3 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33062 method_33062 + p 0 instance + m (Lnet/minecraft/class_5733;)Ljava/lang/Float; method_39178 method_39178 + p 0 config + m (Lnet/minecraft/class_5733;)Ljava/lang/Float; method_39177 method_39177 + p 0 config + m (Lnet/minecraft/class_5733;)Ljava/lang/Float; method_39176 method_39176 + p 0 config + m (FFFF)V + p 2 chanceOfDirectionalSpread + p 1 chanceOfTallerDripstone + p 4 chanceOfSpreadRadius3 + p 3 chanceOfSpreadRadius2 + m (Lnet/minecraft/class_5733;)Ljava/lang/Float; method_33063 method_33063 + p 0 config +c net/minecraft/class_5732 net/minecraft/world/gen/feature/LargeDripstoneFeatureConfig + f I field_28228 floorToCeilingSearchRange + f F field_28236 minBluntnessForWind + f Lnet/minecraft/class_6017; field_28229 columnRadius + f F field_28231 maxColumnRadiusToCaveHeightRatio + f I field_28235 minRadiusForWind + f Lnet/minecraft/class_5863; field_28230 heightScale + f Lnet/minecraft/class_5863; field_28233 stalagmiteBluntness + f Lnet/minecraft/class_5863; field_28232 stalactiteBluntness + f Lcom/mojang/serialization/Codec; field_28227 CODEC + f Lnet/minecraft/class_5863; field_28234 windSpeed + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33052 method_33052 + p 0 instance + m (Lnet/minecraft/class_5732;)Ljava/lang/Float; method_33058 method_33058 + p 0 config + m (Lnet/minecraft/class_5732;)Ljava/lang/Float; method_33053 method_33053 + p 0 config + m (Lnet/minecraft/class_5732;)Lnet/minecraft/class_6017; method_33060 method_33060 + p 0 config + m (ILnet/minecraft/class_6017;Lnet/minecraft/class_5863;FLnet/minecraft/class_5863;Lnet/minecraft/class_5863;Lnet/minecraft/class_5863;IF)V + p 1 floorToCeilingSearchRange + p 2 columnRadius + p 3 heightScale + p 4 maxColumnRadiusToCaveHeightRatio + p 5 stalactiteBluntness + p 6 stalagmiteBluntness + p 7 windSpeed + p 8 minRadiusForWind + p 9 minBluntnessForWind + m (Lnet/minecraft/class_5732;)Ljava/lang/Integer; method_33061 method_33061 + p 0 config + m (Lnet/minecraft/class_5732;)Lnet/minecraft/class_5863; method_33055 method_33055 + p 0 config + m (Lnet/minecraft/class_5732;)Ljava/lang/Integer; method_33054 method_33054 + p 0 config + m (Lnet/minecraft/class_5732;)Lnet/minecraft/class_5863; method_33059 method_33059 + p 0 config + m (Lnet/minecraft/class_5732;)Lnet/minecraft/class_5863; method_33057 method_33057 + p 0 config + m (Lnet/minecraft/class_5732;)Lnet/minecraft/class_5863; method_33056 method_33056 + p 0 config +c net/minecraft/class_4401 net/minecraft/client/realms/gui/screen/RealmsPendingInvitesScreen + f Lnet/minecraft/class_4401$class_4402; field_19939 pendingInvitationSelectionList + f Lnet/minecraft/class_8132; field_62085 layout + f Ljava/util/concurrent/CompletableFuture; field_45249 pendingInvites + f Lorg/slf4j/Logger; field_19935 LOGGER + f Lnet/minecraft/class_437; field_19936 parent + f Lnet/minecraft/class_2561; field_26493 NO_PENDING_TEXT + m (Lnet/minecraft/class_4871;)Lnet/minecraft/class_4401$class_4403; method_52674 method_52674 + p 1 invite + m (Ljava/util/List;)V method_52679 method_52679 + p 1 pendingInvites + m (Lnet/minecraft/class_437;Lnet/minecraft/class_2561;)V + p 1 parent + p 2 title + m (Lnet/minecraft/class_4401;Lnet/minecraft/class_364;)V method_73340 method_73340 + p 1 child + m (Lnet/minecraft/class_4185;)V method_73341 method_73341 + p 1 button +c net/minecraft/class_4401$class_4402 net/minecraft/client/realms/gui/screen/RealmsPendingInvitesScreen$PendingInvitationSelectionList + m ()Z method_64846 isEmpty + m (Lnet/minecraft/class_4401$class_4403;)V method_65017 remove + p 1 invitation + m (Lnet/minecraft/class_4401;Lnet/minecraft/class_310;)V + p 2 client +c net/minecraft/class_4401$class_4403 net/minecraft/client/realms/gui/screen/RealmsPendingInvitesScreen$PendingInvitationSelectionListEntry + f Lnet/minecraft/class_4871; field_19953 pendingInvite + f Lnet/minecraft/class_2561; field_62087 REJECT_TEXT + f Lnet/minecraft/class_8666; field_62089 REJECT_TEXTURE + f Lnet/minecraft/class_2561; field_62086 ACCEPT_TEXT + f Lnet/minecraft/class_8666; field_62088 ACCEPT_TEXTURE + f Lnet/minecraft/class_8662; field_62093 acceptButton + f Lnet/minecraft/class_8662; field_62094 rejectButton + f Ljava/util/List; field_62092 buttons + f Lnet/minecraft/class_7842; field_62097 dateText + f Lnet/minecraft/class_7842; field_62095 worldNameText + f Lnet/minecraft/class_7842; field_62096 worldOwnerNameText + m (Z)V method_73350 handle + p 1 accepted + m (Lnet/minecraft/class_4871;Ljava/util/function/Supplier;)Lnet/minecraft/class_5250; method_73345 method_73345 + p 1 textSupplier + m (Lnet/minecraft/class_4871;)Lnet/minecraft/class_4185$class_7841; method_73344 getNarration + p 1 invite + m (Lnet/minecraft/class_4401;Lnet/minecraft/class_4871;)V + p 2 pendingInvite + m (Lnet/minecraft/class_4185;)V method_73346 method_73346 + p 1 button + m (ZLjava/lang/Boolean;)V method_73347 method_73347 + p 2 processed + m (Lnet/minecraft/class_4185;)V method_73349 method_73349 + p 1 button +c net/minecraft/class_5734 net/minecraft/client/particle/DustColorTransitionParticle + f Lorg/joml/Vector3f; field_28244 startColor + f Lorg/joml/Vector3f; field_28245 endColor + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5743;Lnet/minecraft/class_4002;)V + p 12 velocityZ + p 15 spriteProvider + p 14 parameters + p 8 velocityX + p 10 velocityY + p 4 y + p 6 z + p 1 world + p 2 x + m (F)V method_33074 updateColor + p 1 tickProgress + m (Lorg/joml/Vector3f;F)Lorg/joml/Vector3f; method_33073 darken + p 2 multiplier + p 1 color +c net/minecraft/class_5734$class_5735 net/minecraft/client/particle/DustColorTransitionParticle$Factory + f Lnet/minecraft/class_4002; field_28246 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_5743;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_33075 createParticle +c net/minecraft/class_5731 net/minecraft/world/gen/feature/DripstoneClusterFeatureConfig + f I field_28217 maxStalagmiteStalactiteHeightDiff + f Lnet/minecraft/class_6017; field_28215 height + f I field_28225 maxDistanceFromCenterAffectingChanceOfDripstoneColumn + f Lnet/minecraft/class_5863; field_28220 density + f F field_28224 chanceOfDripstoneColumnAtMaxDistanceFromCenter + f I field_28218 heightDeviation + f Lnet/minecraft/class_6017; field_28216 radius + f I field_28214 floorToCeilingSearchRange + f I field_28226 maxDistanceFromCenterAffectingHeightBias + f Lnet/minecraft/class_5863; field_28221 wetness + f Lcom/mojang/serialization/Codec; field_28213 CODEC + f Lnet/minecraft/class_6017; field_28219 dripstoneBlockLayerThickness + m (Lnet/minecraft/class_5731;)Ljava/lang/Float; method_33043 method_33043 + p 0 config + m (Lnet/minecraft/class_5731;)Lnet/minecraft/class_6017; method_33050 method_33050 + p 0 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33987 method_33987 + p 0 instance + m (Lnet/minecraft/class_5731;)Lnet/minecraft/class_6017; method_33046 method_33046 + p 0 config + m (Lnet/minecraft/class_5731;)Ljava/lang/Integer; method_33051 method_33051 + p 0 config + m (Lnet/minecraft/class_5731;)Ljava/lang/Integer; method_33988 method_33988 + p 0 config + m (Lnet/minecraft/class_5731;)Lnet/minecraft/class_5863; method_33044 method_33044 + p 0 config + m (Lnet/minecraft/class_5731;)Ljava/lang/Integer; method_33047 method_33047 + p 0 config + m (Lnet/minecraft/class_5731;)Ljava/lang/Integer; method_33048 method_33048 + p 0 config + m (ILnet/minecraft/class_6017;Lnet/minecraft/class_6017;IILnet/minecraft/class_6017;Lnet/minecraft/class_5863;Lnet/minecraft/class_5863;FII)V + p 8 wetness + p 9 wetnessMean + p 10 maxDistanceFromCenterAffectingChanceOfDripstoneColumn + p 11 maxDistanceFromCenterAffectingHeightBias + p 4 maxStalagmiteStalactiteHeightDiff + p 5 heightDeviation + p 6 dripstoneBlockLayerThickness + p 7 density + p 1 floorToCeilingSearchRange + p 2 height + p 3 radius + m (Lnet/minecraft/class_5731;)Ljava/lang/Integer; method_33989 method_33989 + p 0 config + m (Lnet/minecraft/class_5731;)Lnet/minecraft/class_6017; method_33049 method_33049 + p 0 config + m (Lnet/minecraft/class_5731;)Lnet/minecraft/class_5863; method_33045 method_33045 + p 0 config +c net/minecraft/class_4400 net/minecraft/client/realms/gui/screen/RealmsParentalConsentScreen + f Lnet/minecraft/class_437; field_46852 parent + f Lnet/minecraft/class_8667; field_46851 layout + f Lnet/minecraft/class_7940; field_46853 privacyInfoWidget + f Lnet/minecraft/class_2561; field_26491 PRIVACY_INFO_TEXT + m (Lnet/minecraft/class_4185;)V method_54574 method_54574 + p 1 button + m (Lnet/minecraft/class_4400;Lnet/minecraft/class_364;)V method_54573 method_54573 + p 1 child + m (Lnet/minecraft/class_437;)V + p 1 parent +c net/minecraft/class_5730 net/minecraft/world/gen/feature/SmallDripstoneFeature + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Ljava/util/Optional; method_39175 getDirection + p 2 random + p 1 pos + p 0 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_5733;)V method_33034 generateDripstoneBlocks + p 0 world + p 2 pos + p 1 random + p 3 config +c net/minecraft/class_5726 net/minecraft/world/gen/feature/util/DripstoneHelper + m (DDDD)D method_33005 scaleHeightFromRadius + p 4 heightScale + p 6 bluntness + p 0 radius + p 2 scale + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;IZ)V method_33010 generatePointedDripstone + p 1 pos + p 0 world + p 4 merge + p 3 height + p 2 direction + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_33008 generateDripstoneBlock + p 1 pos + p 0 world + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_5691;)Lnet/minecraft/class_2680; method_33013 getState + p 1 thickness + p 0 direction + m (Lnet/minecraft/class_2680;)Z method_40074 cannotGenerate + p 0 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_33006 canGenerate + p 1 pos + p 0 world + m (Lnet/minecraft/class_2680;)Z method_33389 canGenerateOrLava + p 0 state + m (Lnet/minecraft/class_2680;)Z method_33014 canGenerate + p 0 state + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;I)Z method_33009 canGenerateBase + p 2 height + p 1 pos + p 0 world + m (Lnet/minecraft/class_2350;IZLjava/util/function/Consumer;)V method_33012 getDripstoneThickness + p 0 direction + p 1 height + p 2 merge + p 3 callback + m (Lnet/minecraft/class_2680;)Z method_33011 canReplace + p 0 state + m (Lnet/minecraft/class_2680;)Z method_33387 canReplaceOrLava + p 0 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_33388 canGenerateOrLava + p 0 world + p 1 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_2350;Lnet/minecraft/class_2680;)V method_33007 method_33007 + p 3 state +c net/minecraft/class_5725 net/minecraft/world/gen/feature/DripstoneClusterFeature + m (IIIILnet/minecraft/class_5731;)D method_32997 dripstoneChance + p 4 localZ + p 5 config + p 2 radiusZ + p 3 localX + p 1 radiusX + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)Z method_33000 canWaterSpawn + p 1 world + p 2 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_32998 isStoneOrWater + p 1 world + p 2 pos + m (Lnet/minecraft/class_5819;IIFILnet/minecraft/class_5731;)I method_33004 getHeight + p 6 config + p 5 height + p 2 localX + p 1 random + p 4 density + p 3 localZ + m (Lnet/minecraft/class_5819;FFFF)F method_33003 clampedGaussian + p 3 mean + p 2 max + p 1 min + p 0 random + p 4 deviation + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;IIFDIFLnet/minecraft/class_5731;)V method_33002 generate + p 7 dripstoneChance + p 6 wetness + p 9 height + p 3 pos + p 2 random + p 5 localZ + p 4 localX + p 1 world + p 11 config + p 10 density + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_33386 isLava + p 2 pos + p 1 world + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;ILnet/minecraft/class_2350;)V method_33001 placeDripstoneBlocks + p 1 world + p 3 height + p 2 pos + p 4 direction +c net/minecraft/class_5727 net/minecraft/world/gen/feature/LargeDripstoneFeature + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;Lnet/minecraft/class_5721$class_5723;Lnet/minecraft/class_5727$class_5729;)V method_35360 testGeneration + p 1 world + p 2 pos + p 3 surface + p 4 wind + m (Lnet/minecraft/class_2338;ZLnet/minecraft/class_5819;ILnet/minecraft/class_5863;Lnet/minecraft/class_5863;)Lnet/minecraft/class_5727$class_5728; method_33016 createGenerator + p 1 isStalagmite + p 0 pos + p 5 heightScale + p 4 bluntness + p 3 scale +c net/minecraft/class_5727$class_5729 net/minecraft/world/gen/feature/LargeDripstoneFeature$WindModifier + f I field_28211 y + f Lnet/minecraft/class_243; field_28212 wind + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_33031 modify + p 1 pos + m ()Lnet/minecraft/class_5727$class_5729; method_33032 create + m (ILnet/minecraft/class_5819;Lnet/minecraft/class_5863;)V + p 1 y + p 3 wind + p 2 random +c net/minecraft/class_5727$class_5728 net/minecraft/world/gen/feature/LargeDripstoneFeature$DripstoneGenerator + f D field_28209 bluntness + f Lnet/minecraft/class_2338; field_28206 pos + f I field_28208 scale + f Z field_28207 isStalagmite + f D field_28210 heightScale + m ()I method_33017 getBaseScale + m (Lnet/minecraft/class_2338;ZIDD)V + p 1 pos + p 3 scale + p 2 isStalagmite + p 4 bluntness + p 6 heightScale + m (F)I method_33018 scale + p 1 height + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_5727$class_5729;)V method_33020 generate + p 2 random + p 1 world + p 3 wind + m ()I method_35361 getBottomY + m ()I method_35362 getTopY + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5727$class_5729;)Z method_33019 canGenerate + p 1 world + p 2 wind + m (Lnet/minecraft/class_5732;)Z method_33025 generateWind + p 1 config +c net/minecraft/class_11611 net/minecraft/client/gui/hud/debug/GpuUtilizationDebugHudEntry +c net/minecraft/class_11610 net/minecraft/client/gui/hud/debug/FpsDebugHudEntry +c net/minecraft/class_11615 net/minecraft/client/gui/hud/debug/LookingAtBlockDebugHudEntry + f Lnet/minecraft/class_2960; field_61544 SECTION_ID + m (Lnet/minecraft/class_6862;)Ljava/lang/String; method_72754 method_72754 + p 0 tag + m (Ljava/util/Map$Entry;)Ljava/lang/String; method_72755 getBlockPropertyLine + p 1 propertyAndValue +c net/minecraft/class_11614 net/minecraft/client/gui/hud/debug/LocalDifficultyDebugHudEntry +c net/minecraft/class_11613 net/minecraft/client/gui/hud/debug/LightLevelsDebugHudEntry + f Lnet/minecraft/class_2960; field_61543 SECTION_ID +c net/minecraft/class_11612 net/minecraft/client/gui/hud/debug/HeightmapDebugHudEntry + f Lnet/minecraft/class_2960; field_61542 SECTION_ID + f Ljava/util/Map; field_61541 HEIGHTMAP_TYPE_TO_STRING +c net/minecraft/class_5702 net/minecraft/world/BlockStateRaycastContext + f Lnet/minecraft/class_243; field_28103 end + f Lnet/minecraft/class_243; field_28102 start + f Ljava/util/function/Predicate; field_28104 statePredicate + m ()Lnet/minecraft/class_243; method_32883 getEnd + m ()Lnet/minecraft/class_243; method_32884 getStart + m ()Ljava/util/function/Predicate; method_32885 getStatePredicate + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Ljava/util/function/Predicate;)V + p 2 end + p 3 statePredicate + p 1 start +c net/minecraft/class_5701 net/minecraft/datafixer/schema/Schema2684 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 1 schema + p 2 entityTypes + p 3 blockEntityTypes + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_5711 net/minecraft/world/event/listener/SimpleGameEventDispatcher + c A simple game event dispatcher implementation that has hooks to\ndebug info senders.\n\n@apiNote Vanilla Minecraft creates it on a per-chunk-section basis. + f Ljava/util/Set; field_37673 toRemove + f Z field_37675 dispatching + f Ljava/util/List; field_28142 listeners + f Ljava/util/List; field_37674 toAdd + f I field_44636 ySectionCoord + f Lnet/minecraft/class_3218; field_28143 world + f Lnet/minecraft/class_5711$class_8512; field_44637 disposalCallback + m (Lnet/minecraft/class_3218;ILnet/minecraft/class_5711$class_8512;)V + p 2 ySectionCoord + p 1 world + p 3 disposalCallback + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5714;)V method_74686 sendDebugData + p 1 listener + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_5714;)Ljava/util/Optional; method_32936 dispatchTo + p 0 world + p 2 listener + p 1 listenerPos +c net/minecraft/class_5711$class_8512 net/minecraft/world/event/listener/SimpleGameEventDispatcher$DisposalCallback + m (I)V apply apply + p 1 ySectionCoord +c net/minecraft/class_5713 net/minecraft/world/event/listener/GameEventDispatcher + c A game event dispatcher dispatches game events to its listeners. + f Lnet/minecraft/class_5713; field_28181 EMPTY + c An unmodifiable, empty (non-operative) dispatcher. + m ()Z method_32942 isEmpty + c Returns whether this dispatcher has no listeners. + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_243;Lnet/minecraft/class_5712$class_7397;Lnet/minecraft/class_5713$class_7721;)Z method_32943 dispatch + c Dispatches an event to all the listeners in this dispatcher. + p 1 event + c the event + p 2 pos + p 3 emitter + p 4 callback + m (Lnet/minecraft/class_5714;)V method_32944 addListener + c Adds a listener to this dispatcher. + p 1 listener + c the listener to add + m (Lnet/minecraft/class_5714;)V method_32945 removeListener + c Removes a listener from this dispatcher if it is present. + p 1 listener + c the listener to remove +c net/minecraft/class_5713$class_7721 net/minecraft/world/event/listener/GameEventDispatcher$DispatchCallback + m (Lnet/minecraft/class_5714;Lnet/minecraft/class_243;)V visit visit + p 1 listener + p 2 listenerPos +c net/minecraft/class_5712 net/minecraft/world/event/GameEvent + f Lcom/mojang/serialization/Codec; field_51910 CODEC + f I field_31449 DEFAULT_RANGE + f Lnet/minecraft/class_6880$class_6883; field_39446 TELEPORT + f Lnet/minecraft/class_6880$class_6883; field_38243 SCULK_SENSOR_TENDRILS_CLICKING + f Lnet/minecraft/class_6880$class_6883; field_38244 SHRIEK + f Lnet/minecraft/class_6880$class_6883; field_39486 JUKEBOX_STOP_PLAY + f Lnet/minecraft/class_6880$class_6883; field_39485 JUKEBOX_PLAY + f Lnet/minecraft/class_6880$class_6883; field_28725 ENTITY_INTERACT + f Lnet/minecraft/class_6880$class_6883; field_28727 PRIME_FUSE + f Lnet/minecraft/class_6880$class_6883; field_28736 ENTITY_DAMAGE + f Lnet/minecraft/class_6880$class_6883; field_28735 EAT + f Lnet/minecraft/class_6880$class_6883; field_45787 UNEQUIP + f Lnet/minecraft/class_6880$class_6883; field_28734 DRINK + f Lnet/minecraft/class_6880$class_6883; field_28739 EQUIP + f Lnet/minecraft/class_6880$class_6883; field_28738 ENTITY_PLACE + f I comp_2193 notificationRadius + f Lnet/minecraft/class_6880$class_6883; field_28733 BLOCK_CHANGE + f Lnet/minecraft/class_6880$class_6883; field_28730 SHEAR + f Lnet/minecraft/class_6880$class_6883; field_38425 NOTE_BLOCK_PLAY + f Lnet/minecraft/class_6880$class_6883; field_39415 INSTRUMENT_PLAY + f Lnet/minecraft/class_6880$class_6883; field_43309 RESONATE_2 + f Lnet/minecraft/class_6880$class_6883; field_43308 RESONATE_1 + f Lnet/minecraft/class_6880$class_6883; field_37676 ENTITY_DIE + f Lnet/minecraft/class_6880$class_6883; field_28178 EXPLODE + f Lnet/minecraft/class_6880$class_6883; field_28177 CONTAINER_CLOSE + f Lnet/minecraft/class_6880$class_6883; field_28176 CONTAINER_OPEN + f Lnet/minecraft/class_6880$class_6883; field_42480 ENTITY_MOUNT + f Lnet/minecraft/class_6880$class_6883; field_28175 BLOCK_DEACTIVATE + f Lnet/minecraft/class_6880$class_6883; field_28174 BLOCK_ACTIVATE + f Lnet/minecraft/class_6880$class_6883; field_28173 BLOCK_DETACH + f Lnet/minecraft/class_6880$class_6883; field_28172 BLOCK_ATTACH + f Lnet/minecraft/class_6880$class_6883; field_42479 ENTITY_DISMOUNT + f Lnet/minecraft/class_6880$class_6883; field_43320 RESONATE_13 + f Lnet/minecraft/class_6880$class_6883; field_43321 RESONATE_14 + f Lnet/minecraft/class_6880$class_6883; field_43322 RESONATE_15 + f Lnet/minecraft/class_6880$class_6883; field_43312 RESONATE_5 + f Lnet/minecraft/class_6880$class_6883; field_43313 RESONATE_6 + f Lnet/minecraft/class_6880$class_6883; field_43314 RESONATE_7 + f Lnet/minecraft/class_6880$class_6883; field_43315 RESONATE_8 + f Lnet/minecraft/class_6880$class_6883; field_43316 RESONATE_9 + f Lnet/minecraft/class_6880$class_6883; field_43310 RESONATE_3 + f Lnet/minecraft/class_6880$class_6883; field_43311 RESONATE_4 + f Lnet/minecraft/class_6880$class_6883; field_43317 RESONATE_10 + f Lnet/minecraft/class_6880$class_6883; field_43318 RESONATE_11 + f Lnet/minecraft/class_6880$class_6883; field_43319 RESONATE_12 + f Lnet/minecraft/class_6880$class_6883; field_45148 ENTITY_ACTION + f Lnet/minecraft/class_6880$class_6883; field_28155 STEP + f Lnet/minecraft/class_6880$class_6883; field_28152 LIGHTNING_STRIKE + f Lnet/minecraft/class_6880$class_6883; field_28159 HIT_GROUND + f Lnet/minecraft/class_6880$class_6883; field_28158 ELYTRA_GLIDE + f Lnet/minecraft/class_6880$class_6883; field_28157 FLAP + f Lnet/minecraft/class_6880$class_6883; field_28156 SWIM + f Lnet/minecraft/class_6880$class_6883; field_28167 FLUID_PICKUP + f Lnet/minecraft/class_6880$class_6883; field_28166 FLUID_PLACE + f Lnet/minecraft/class_6880$class_6883; field_28165 BLOCK_DESTROY + f Lnet/minecraft/class_6880$class_6883; field_28164 BLOCK_PLACE + f Lnet/minecraft/class_6880$class_6883; field_28169 BLOCK_CLOSE + f Lnet/minecraft/class_6880$class_6883; field_28168 BLOCK_OPEN + f Lnet/minecraft/class_6880$class_6883; field_28162 PROJECTILE_LAND + f Lnet/minecraft/class_6880$class_6883; field_28161 PROJECTILE_SHOOT + f Lnet/minecraft/class_6880$class_6883; field_28160 SPLASH + f Lnet/minecraft/class_6880$class_6883; field_28146 ITEM_INTERACT_FINISH + f Lnet/minecraft/class_6880$class_6883; field_28145 ITEM_INTERACT_START + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_6880; method_55782 registerAndGetDefault + p 0 registry + m (Ljava/lang/String;)Lnet/minecraft/class_6880$class_6883; method_32939 register + p 0 id + m (Ljava/lang/String;I)Lnet/minecraft/class_6880$class_6883; method_32940 register + p 1 range + p 0 id + m (I)V + p 1 range + m ()I comp_2193 notificationRadius +c net/minecraft/class_5712$class_7397 net/minecraft/world/event/GameEvent$Emitter + f Lnet/minecraft/class_2680; comp_714 affectedState + f Lnet/minecraft/class_1297; comp_713 sourceEntity + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_5712$class_7397; method_43285 of + p 0 sourceEntity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2680;)Lnet/minecraft/class_5712$class_7397; method_43286 of + p 0 sourceEntity + p 1 affectedState + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_5712$class_7397; method_43287 of + p 0 affectedState + m ()Lnet/minecraft/class_2680; comp_714 affectedState + m ()Lnet/minecraft/class_1297; comp_713 sourceEntity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2680;)V + p 1 sourceEntity + p 2 affectedState +c net/minecraft/class_5712$class_7447 net/minecraft/world/event/GameEvent$Message + f D field_39181 distanceTraveled + f Lnet/minecraft/class_6880; field_39177 event + f Lnet/minecraft/class_243; field_39178 emitterPos + f Lnet/minecraft/class_5714; field_39180 listener + f Lnet/minecraft/class_5712$class_7397; field_39179 emitter + m (Lnet/minecraft/class_5712$class_7447;)I method_43725 compareTo + m ()Lnet/minecraft/class_5714; method_43728 getListener + m ()Lnet/minecraft/class_6880; method_43724 getEvent + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_243;Lnet/minecraft/class_5712$class_7397;Lnet/minecraft/class_5714;Lnet/minecraft/class_243;)V + p 1 event + p 3 emitter + p 2 emitterPos + p 5 listenerPos + p 4 listener + m ()Lnet/minecraft/class_243; method_43726 getEmitterPos + m (Ljava/lang/Object;)I compareTo compareTo + p 1 other + m ()Lnet/minecraft/class_5712$class_7397; method_43727 getEmitter +c net/minecraft/class_5707 net/minecraft/world/event/BlockPositionSource + f Lcom/mojang/serialization/MapCodec; field_28137 CODEC + f Lnet/minecraft/class_9139; field_48377 PACKET_CODEC + f Lnet/minecraft/class_2338; comp_4878 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_32927 method_32927 + p 0 instance + m ()Lnet/minecraft/class_2338; comp_4878 pos + m (Lnet/minecraft/class_2338;)V + p 1 pos +c net/minecraft/class_5707$class_5708 net/minecraft/world/event/BlockPositionSource$Type +c net/minecraft/class_5709 net/minecraft/world/event/EntityPositionSource + f Lcom/mojang/datafixers/util/Either; field_38424 source + f Lnet/minecraft/class_9139; field_48378 PACKET_CODEC + f F field_38242 yOffset + f Lcom/mojang/serialization/MapCodec; field_28139 CODEC + m (Ljava/util/UUID;)Ljava/lang/Integer; method_42678 method_42678 + p 0 uuid + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_243; method_42337 method_42337 + p 1 entity + m (Lnet/minecraft/class_1937;)V method_42681 findEntityInWorld + p 1 world + m (Lcom/mojang/datafixers/util/Either;)Ljava/util/UUID; method_42682 method_42682 + p 0 entityId + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_32932 method_32932 + p 0 instance + m (Lnet/minecraft/class_1937;Ljava/util/UUID;)Lnet/minecraft/class_1297; method_42675 method_42675 + p 1 uuid + m (Lcom/mojang/datafixers/util/Either;F)V + p 1 source + p 2 yOffset + m (Ljava/lang/Integer;)Ljava/util/UUID; method_42677 method_42677 + p 0 entityIdx + m (Lnet/minecraft/class_5709;)Ljava/lang/Float; method_56124 method_56124 + p 0 source + m (Ljava/util/UUID;Ljava/lang/Float;)Lnet/minecraft/class_5709; method_42679 method_42679 + p 0 uuid + p 1 yOffset + m (Lnet/minecraft/class_1937;Lcom/mojang/datafixers/util/Either;)Ljava/util/Optional; method_42674 method_42674 + p 1 entityId + m (Lnet/minecraft/class_1297;)V method_42673 method_42673 + p 1 entity + m (Lnet/minecraft/class_1297;F)V + p 2 yOffset + p 1 entity + m (Ljava/lang/Integer;Ljava/lang/Float;)Lnet/minecraft/class_5709; method_56125 method_56125 + p 1 yOffset + p 0 entityId + m (Lnet/minecraft/class_5709;)Ljava/lang/Float; method_42338 method_42338 + p 0 entityPositionSource + m (Lcom/mojang/datafixers/util/Either;)Ljava/lang/Integer; method_42676 method_42676 + p 0 entityId + m ()Ljava/util/UUID; method_42680 getUuid + m ()I method_42683 getEntityId +c net/minecraft/class_5709$class_5710 net/minecraft/world/event/EntityPositionSource$Type +c net/minecraft/class_5704 net/minecraft/block/entity/SculkSensorBlockEntity + f I field_57784 DEFAULT_LAST_VIBRATION_FREQUENCY + f Lnet/minecraft/class_8514$class_8515; field_44615 listenerData + f Lnet/minecraft/class_8514$class_8516; field_28118 listener + f Lnet/minecraft/class_8514$class_5719; field_43291 callback + f I field_28119 lastVibrationFrequency + m ()Lnet/minecraft/class_8514$class_5719; method_49831 createCallback + m ()Lnet/minecraft/class_8514$class_8516; method_32911 getEventListener + m ()I method_32912 getLastVibrationFrequency + m (I)V method_44213 setLastVibrationFrequency + p 1 lastVibrationFrequency + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state +c net/minecraft/class_5704$class_8241 net/minecraft/block/entity/SculkSensorBlockEntity$VibrationCallback + f Lnet/minecraft/class_2338; field_44617 pos + f Lnet/minecraft/class_5716; field_44616 positionSource + f I field_43292 RANGE + m (Lnet/minecraft/class_5704;Lnet/minecraft/class_2338;)V + p 2 pos +c net/minecraft/class_5703 net/minecraft/block/SculkSensorBlock + f [F field_43248 RESONATION_NOTE_PITCHES + f Lnet/minecraft/class_2754; field_28111 SCULK_SENSOR_PHASE + f Lnet/minecraft/class_265; field_28114 OUTLINE_SHAPE + f Lnet/minecraft/class_2758; field_28112 POWER + f Lnet/minecraft/class_2746; field_28113 WATERLOGGED + f Lcom/mojang/serialization/MapCodec; field_46435 CODEC + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;II)V method_32904 setActive + p 4 state + p 3 pos + p 6 frequency + p 5 power + p 2 world + p 1 sourceEntity + m (Lnet/minecraft/class_2680;)Z method_32909 isInactive + p 0 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_32903 setCooldown + p 0 world + p 2 state + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_32902 updateNeighbors + p 0 world + p 1 pos + p 2 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_5704;)V method_32905 method_32905 + p 3 blockEntity + p 0 worldx + p 1 pos + p 2 statex + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_5705; method_32908 getPhase + p 0 state + m ([F)V method_49823 method_49823 + p 0 frequency + m ()I method_51166 getCooldownTime + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;I)V method_49822 tryResonate + p 0 sourceEntity + p 3 frequency + p 2 pos + p 1 world +c net/minecraft/class_5705 net/minecraft/block/enums/SculkSensorPhase + f Ljava/lang/String; field_28124 name + f Lnet/minecraft/class_5705; field_44631 COOLDOWN + f Lnet/minecraft/class_5705; field_28121 INACTIVE + f Lnet/minecraft/class_5705; field_28122 ACTIVE + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_9288 net/minecraft/component/type/ContainerComponent + c A component that stores a list of item stacks. + f I field_51410 ALL_SLOTS_EMPTY + f Lnet/minecraft/class_9139; field_49336 PACKET_CODEC + f Lnet/minecraft/class_2371; field_49338 stacks + f I field_51511 hashCode + f I field_49337 MAX_SLOTS + f Lnet/minecraft/class_9288; field_49334 DEFAULT + c An empty container component. + f Lcom/mojang/serialization/Codec; field_49335 CODEC + m ()Ljava/util/List; method_57494 collectSlots + m (Ljava/util/List;)Lnet/minecraft/class_9288; method_57496 fromSlots + p 0 slots + m (Lnet/minecraft/class_9288;)Ljava/util/List; method_57491 method_57491 + p 0 component + m (Ljava/util/List;)I method_59713 findLastNonEmptyIndex + p 0 stacks + m (I)V + p 1 size + m ()Lnet/minecraft/class_1799; method_58114 copyFirstStack + c {@return a copy of the first contained stack in this component}\n\n

If this component is empty, returns an empty stack. + m (Lnet/minecraft/class_2371;)V method_57492 copyTo + c Copies the contents of this component to a list of item stacks.\n\n

If the list has a larger size than this component, the remaining slots\nwill be filled with empty stacks. + p 1 stacks + c the target list of item stacks + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/util/List;)V + p 1 stacks + m (Lnet/minecraft/class_2371;)V + p 1 stacks + m (Ljava/util/List;)Lnet/minecraft/class_9288; method_57493 fromStacks + c Creates a container component from a list of item stacks.\nThe stacks are copied into the component, which will contain copies of all stacks\nup to the last non-empty stack.\n\n@return the created component + p 0 stacks + c the list of stacks to copy + m ()Ljava/lang/Iterable; method_59714 iterateNonEmpty + c {@return an iterable over this component's non-empty item stacks}\n\n

The stacks should not be modified to keep this component immutable.\nUse {@link #iterateNonEmptyCopy} or the stream methods for getting freely modifiable\ncopies of the stacks. + m ()Ljava/util/stream/Stream; method_57489 stream + c {@return a stream over copies of this component's stored item stacks} + m (Lnet/minecraft/class_1799;)Z method_59711 method_59711 + p 0 stack + m (Lnet/minecraft/class_1799;)Z method_59710 method_59710 + p 0 stack + m ()Ljava/lang/Iterable; method_59715 iterateNonEmptyCopy + c {@return an iterable over copies of this component's non-empty item stacks} + m ()Ljava/util/stream/Stream; method_59712 streamNonEmpty + c {@return a stream over copies of this component's non-empty item stacks} +c net/minecraft/class_9288$class_9289 net/minecraft/component/type/ContainerComponent$Slot + f Lcom/mojang/serialization/Codec; field_49339 CODEC + f Lnet/minecraft/class_1799; comp_2399 item + f I comp_2398 index + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57498 method_57498 + p 0 instance + m ()Lnet/minecraft/class_1799; comp_2399 item + m ()I comp_2398 index + m (ILnet/minecraft/class_1799;)V + p 1 index + p 2 item +c net/minecraft/class_9285 net/minecraft/component/type/AttributeModifiersComponent + f Lnet/minecraft/class_9139; field_49328 PACKET_CODEC + f Ljava/text/DecimalFormat; field_49329 DECIMAL_FORMAT + f Lnet/minecraft/class_9285; field_49326 DEFAULT + f Lcom/mojang/serialization/Codec; field_49327 CODEC + f Ljava/util/List; comp_2393 modifiers + m (Lnet/minecraft/class_6880;DLnet/minecraft/class_1304;)D method_57481 applyOperations + p 1 attribute + p 2 base + p 4 slot + m (Lnet/minecraft/class_9274;Ljava/util/function/BiConsumer;)V method_60618 applyModifiers + p 1 slot + p 2 attributeConsumer + m (Lnet/minecraft/class_1304;Ljava/util/function/BiConsumer;)V method_57482 applyModifiers + p 1 slot + p 2 attributeConsumer + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1322;Lnet/minecraft/class_9274;)Lnet/minecraft/class_9285; method_57484 with + p 1 attribute + p 2 modifier + p 3 slot + m ()Lnet/minecraft/class_9285$class_9286; method_57480 builder + m (Lnet/minecraft/class_9274;Lorg/apache/commons/lang3/function/TriConsumer;)V method_70727 applyModifiers + p 2 attributeConsumer + p 1 slot + m ()Ljava/util/List; comp_2393 modifiers + m (Ljava/util/List;)V + p 1 modifiers +c net/minecraft/class_9285$class_11193 net/minecraft/component/type/AttributeModifiersComponent$Display + f Lnet/minecraft/class_9139; field_59730 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_59729 CODEC + m ()Lnet/minecraft/class_9285$class_11193$class_11197; method_70734 getType + m ()Lnet/minecraft/class_9285$class_11193; method_70729 getDefault + m (Ljava/util/function/Consumer;Lnet/minecraft/class_1657;Lnet/minecraft/class_6880;Lnet/minecraft/class_1322;)V method_70731 addTooltip + p 2 player + p 3 attribute + p 1 textConsumer + p 4 modifier + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_9285$class_11193; method_70732 createOverride + p 0 text + m ()Lnet/minecraft/class_9285$class_11193; method_70733 getHidden + m (Lnet/minecraft/class_9285$class_11193$class_11197;)Lcom/mojang/serialization/MapCodec; method_70730 method_70730 + p 0 type +c net/minecraft/class_9285$class_11193$class_11196 net/minecraft/component/type/AttributeModifiersComponent$Display$Override + f Lcom/mojang/serialization/MapCodec; field_59737 CODEC + f Lnet/minecraft/class_2561; comp_4035 value + f Lnet/minecraft/class_9139; field_59738 PACKET_CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_70735 method_70735 + p 0 instance + m ()Lnet/minecraft/class_2561; comp_4035 value + m (Lnet/minecraft/class_2561;)V + p 1 value +c net/minecraft/class_9285$class_11193$class_11197 net/minecraft/component/type/AttributeModifiersComponent$Display$Type + f Ljava/lang/String; field_59745 id + f Lnet/minecraft/class_9139; field_59748 packetCodec + f Lnet/minecraft/class_9139; field_59744 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_59742 CODEC + f Lcom/mojang/serialization/MapCodec; field_59747 codec + f Ljava/util/function/IntFunction; field_59743 INDEX_MAPPER + f I field_59746 index + f Lnet/minecraft/class_9285$class_11193$class_11197; field_59739 DEFAULT + f Lnet/minecraft/class_9285$class_11193$class_11197; field_59740 HIDDEN + f Lnet/minecraft/class_9285$class_11193$class_11197; field_59741 OVERRIDE + m (Ljava/lang/String;ILjava/lang/String;ILcom/mojang/serialization/MapCodec;Lnet/minecraft/class_9139;)V + p 6 packetCodec + p 5 codec + p 4 index + p 3 id + m ()I method_70736 getIndex + m ()Lnet/minecraft/class_9139; method_70737 getPacketCodec +c net/minecraft/class_9285$class_11193$class_11194 net/minecraft/component/type/AttributeModifiersComponent$Display$Default + f Lnet/minecraft/class_9139; field_59733 PACKET_CODEC + f Lnet/minecraft/class_9285$class_11193$class_11194; field_59731 INSTANCE + f Lcom/mojang/serialization/MapCodec; field_59732 CODEC +c net/minecraft/class_9285$class_11193$class_11195 net/minecraft/component/type/AttributeModifiersComponent$Display$Hidden + f Lnet/minecraft/class_9285$class_11193$class_11195; field_59734 INSTANCE + f Lcom/mojang/serialization/MapCodec; field_59735 CODEC + f Lnet/minecraft/class_9139; field_59736 PACKET_CODEC +c net/minecraft/class_9285$class_9286 net/minecraft/component/type/AttributeModifiersComponent$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_49331 entries + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1322;Lnet/minecraft/class_9274;)Lnet/minecraft/class_9285$class_9286; method_57487 add + p 2 modifier + p 3 slot + p 1 attribute + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1322;Lnet/minecraft/class_9274;Lnet/minecraft/class_9285$class_11193;)Lnet/minecraft/class_9285$class_9286; method_70728 add + p 2 modifier + p 1 attribute + p 4 display + p 3 slot + m ()Lnet/minecraft/class_9285; method_57486 build +c net/minecraft/class_9285$class_9287 net/minecraft/component/type/AttributeModifiersComponent$Entry + f Lcom/mojang/serialization/Codec; field_49332 CODEC + f Lnet/minecraft/class_9139; field_49333 PACKET_CODEC + f Lnet/minecraft/class_9285$class_11193; comp_4036 display + f Lnet/minecraft/class_9274; comp_2397 slot + f Lnet/minecraft/class_6880; comp_2395 attribute + f Lnet/minecraft/class_1322; comp_2396 modifier + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57488 method_57488 + p 0 instance + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2960;)Z method_60767 matches + p 1 attribute + p 2 modifierId + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1322;Lnet/minecraft/class_9274;)V + p 2 modifier + p 3 slot + p 1 attribute + m ()Lnet/minecraft/class_6880; comp_2395 attribute + m ()Lnet/minecraft/class_9285$class_11193; comp_4036 display + m ()Lnet/minecraft/class_1322; comp_2396 modifier + m ()Lnet/minecraft/class_9274; comp_2397 slot + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1322;Lnet/minecraft/class_9274;Lnet/minecraft/class_9285$class_11193;)V + p 1 attribute + p 2 modifier + p 3 slot + p 4 display +c net/minecraft/class_9284 net/minecraft/component/type/FireworksComponent + f I field_49325 MAX_EXPLOSIONS + f Lnet/minecraft/class_9139; field_49324 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_49323 CODEC + f Ljava/util/List; comp_2392 explosions + f I comp_2391 flightDuration + m (Ljava/util/function/Consumer;Lnet/minecraft/class_9283;I)V method_67537 appendExplosionTooltip + p 0 textConsumer + p 2 stars + p 1 explosionComponent + m (Ljava/util/function/Consumer;Lnet/minecraft/class_2561;)V method_67538 method_67538 + p 1 tooltip + m (ILjava/util/List;)V + p 2 explosions + p 1 flightDuration + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57478 method_57478 + p 0 instance + m ()I comp_2391 flightDuration + m ()Ljava/util/List; comp_2392 explosions +c net/minecraft/class_9283 net/minecraft/component/type/FireworkExplosionComponent + f Lnet/minecraft/class_9139; field_49317 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_49316 CODEC + f Lnet/minecraft/class_9139; field_49319 COLORS_PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_49318 COLORS_CODEC + f Lnet/minecraft/class_9283; field_49315 DEFAULT + f Lnet/minecraft/class_2561; field_49320 CUSTOM_COLOR_TEXT + f Z comp_2389 hasTrail + f Lnet/minecraft/class_9283$class_1782; comp_2386 shape + f Z comp_2390 hasTwinkle + f Lit/unimi/dsi/fastutil/ints/IntList; comp_2387 colors + f Lit/unimi/dsi/fastutil/ints/IntList; comp_2388 fadeColors + m (Ljava/util/function/Consumer;)V method_57477 appendOptionalTooltip + p 1 textConsumer + m (Lit/unimi/dsi/fastutil/ints/IntList;)Lnet/minecraft/class_9283; method_57474 withFadeColors + p 1 fadeColors + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57473 method_57473 + p 0 instance + m (Lnet/minecraft/class_5250;Lit/unimi/dsi/fastutil/ints/IntList;)Lnet/minecraft/class_2561; method_57476 appendColorsTooltipText + p 1 colors + p 0 text + m (I)Lnet/minecraft/class_2561; method_57472 getColorText + p 0 color + m ()Lnet/minecraft/class_9283$class_1782; comp_2386 shape + m ()Lit/unimi/dsi/fastutil/ints/IntList; comp_2387 colors + m ()Lit/unimi/dsi/fastutil/ints/IntList; comp_2388 fadeColors + m ()Z comp_2389 hasTrail + m ()Z comp_2390 hasTwinkle + m (Lnet/minecraft/class_9283$class_1782;Lit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V + p 1 shape + p 2 colors + p 3 fadeColors + p 4 hasTrail + p 5 hasTwinkle +c net/minecraft/class_9283$class_1782 net/minecraft/component/type/FireworkExplosionComponent$Type + f Lcom/mojang/serialization/Codec; field_49322 CODEC + f Ljava/lang/String; field_7971 name + f Lnet/minecraft/class_9139; field_49321 PACKET_CODEC + f I field_7972 id + f Ljava/util/function/IntFunction; field_7975 BY_ID + f Lnet/minecraft/class_9283$class_1782; field_7977 LARGE_BALL + f Lnet/minecraft/class_9283$class_1782; field_7974 CREEPER + f Lnet/minecraft/class_9283$class_1782; field_7973 STAR + f Lnet/minecraft/class_9283$class_1782; field_7976 SMALL_BALL + f Lnet/minecraft/class_9283$class_1782; field_7970 BURST + m ()I method_7816 getId + m ()Lnet/minecraft/class_5250; method_7812 getName + m (I)Lnet/minecraft/class_9283$class_1782; method_7813 byId + p 0 id + m (Ljava/lang/String;IILjava/lang/String;)V + p 4 name + p 3 id +c net/minecraft/class_9282 net/minecraft/component/type/DyedColorComponent + f I field_49314 DEFAULT_COLOR + f Lcom/mojang/serialization/Codec; field_49312 CODEC + f Lnet/minecraft/class_9139; field_49313 PACKET_CODEC + f I comp_2384 rgb + m (Lnet/minecraft/class_1799;Ljava/util/List;)Lnet/minecraft/class_1799; method_57471 setColor + p 0 stack + p 1 dyes + m (Lnet/minecraft/class_1799;I)I method_57470 getColor + p 1 defaultColor + p 0 stack + m ()I comp_2384 rgb + m (I)V + p 1 rgb +c net/minecraft/class_9281 net/minecraft/component/type/DebugStickStateComponent + f Lcom/mojang/serialization/Codec; field_49311 CODEC + f Lnet/minecraft/class_9281; field_49310 DEFAULT + f Ljava/util/Map; comp_2383 properties + m (Lnet/minecraft/class_6880;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_57467 method_57467 + p 1 property + m (Lnet/minecraft/class_6880;)Lcom/mojang/serialization/Codec; method_57465 method_57465 + p 0 block + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2769;)Lnet/minecraft/class_9281; method_57466 with + p 1 block + p 2 property + m ()Ljava/util/Map; comp_2383 properties + m (Ljava/util/Map;)V + p 1 properties +c net/minecraft/class_9280 net/minecraft/component/type/CustomModelDataComponent + f Lcom/mojang/serialization/Codec; field_49308 CODEC + f Lnet/minecraft/class_9280; field_55212 DEFAULT + f Lnet/minecraft/class_9139; field_49309 PACKET_CODEC + f Ljava/util/List; comp_3354 floats + f Ljava/util/List; comp_3356 strings + f Ljava/util/List; comp_3355 flags + f Ljava/util/List; comp_3357 colors + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65363 method_65363 + p 0 instance + m (Ljava/util/List;I)Ljava/lang/Object; method_65364 getValue + p 1 index + p 0 values + m (I)Ljava/lang/Float; method_65362 getFloat + p 1 index + m (I)Ljava/lang/Boolean; method_65365 getFlag + p 1 index + m (I)Ljava/lang/String; method_65366 getString + p 1 index + m (I)Ljava/lang/Integer; method_65367 getColor + p 1 index + m ()Ljava/util/List; comp_3354 floats + m ()Ljava/util/List; comp_3356 strings + m ()Ljava/util/List; comp_3355 flags + m ()Ljava/util/List; comp_3357 colors + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;)V + p 1 floats + p 2 flags + p 3 strings + p 4 colors +c net/minecraft/class_9299 net/minecraft/item/tooltip/TooltipAppender + m (Lnet/minecraft/class_1792$class_9635;Ljava/util/function/Consumer;Lnet/minecraft/class_1836;Lnet/minecraft/class_9473;)V method_57409 appendTooltip + p 2 textConsumer + p 1 context + p 4 components + p 3 type +c net/minecraft/class_9298 net/minecraft/component/type/SuspiciousStewEffectsComponent + f Lcom/mojang/serialization/Codec; field_49363 CODEC + f Lnet/minecraft/class_9298; field_49362 DEFAULT + f Lnet/minecraft/class_9139; field_49364 PACKET_CODEC + f I field_53798 DEFAULT_DURATION + f Ljava/util/List; comp_2416 effects + m (Lnet/minecraft/class_9298$class_8751;)Lnet/minecraft/class_9298; method_57514 with + p 1 stewEffect + m ()Ljava/util/List; comp_2416 effects + m (Ljava/util/List;)V + p 1 effects +c net/minecraft/class_9298$class_8751 net/minecraft/component/type/SuspiciousStewEffectsComponent$StewEffect + f Lcom/mojang/serialization/Codec; field_45782 CODEC + f Lnet/minecraft/class_9139; field_49365 PACKET_CODEC + f Lnet/minecraft/class_6880; comp_1838 effect + f I comp_1839 duration + m ()Lnet/minecraft/class_1293; method_53247 createStatusEffectInstance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53248 method_53248 + p 0 instance + m ()I comp_1839 duration + m ()Lnet/minecraft/class_6880; comp_1838 effect + m (Lnet/minecraft/class_6880;I)V + p 1 effect + p 2 duration +c net/minecraft/class_9297 net/minecraft/component/type/ContainerLootComponent + f Lcom/mojang/serialization/Codec; field_49361 CODEC + f Lnet/minecraft/class_2561; field_56315 UNKNOWN_LOOT_TABLE_TOOLTIP_TEXT + f Lnet/minecraft/class_5321; comp_2414 lootTable + f J comp_2415 seed + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57513 method_57513 + p 0 instance + m ()Lnet/minecraft/class_5321; comp_2414 lootTable + m ()J comp_2415 seed + m (Lnet/minecraft/class_5321;J)V + p 1 lootTable + p 2 seed +c net/minecraft/class_9296 net/minecraft/component/type/ProfileComponent + f Lcom/mojang/authlib/GameProfile; field_62071 profile + f Lcom/mojang/serialization/Codec; field_63031 COMPONENT_CODEC + f Lnet/minecraft/class_8685$class_11892; field_63030 override + f Lcom/mojang/serialization/Codec; field_49359 CODEC + f Lnet/minecraft/class_9139; field_49360 PACKET_CODEC + m (Ljava/lang/String;)Lnet/minecraft/class_9296; method_74889 ofDynamic + p 0 name + m (Lnet/minecraft/class_8685$class_11892;Ljava/lang/String;)Lnet/minecraft/class_9296$class_11756; method_73316 method_73316 + p 1 name + m (Lnet/minecraft/class_8685$class_11892;Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/class_9296; method_73314 method_73314 + p 1 profile + m (Ljava/util/UUID;)Lnet/minecraft/class_9296; method_73312 ofDynamic + p 0 id + m ()Lcom/mojang/datafixers/util/Either; method_73305 get + m ()Lnet/minecraft/class_8685$class_11892; method_74890 getOverride + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_8685$class_11892;)V + p 1 profile + p 2 override + m (Lnet/minecraft/class_8685$class_11892;Lnet/minecraft/class_9296$class_11757;)Lnet/minecraft/class_9296; method_73309 method_73309 + p 1 data + m (Ljava/util/Optional;Ljava/util/Optional;Lcom/mojang/authlib/properties/PropertyMap;)Lcom/mojang/authlib/GameProfile; method_73311 createGameProfile + p 1 id + p 0 name + p 2 properties + m (Lnet/minecraft/class_11755;)Ljava/util/concurrent/CompletableFuture; method_73306 resolve + p 1 resolver + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/class_9296; method_73307 ofStatic + p 0 profile + m ()Lcom/mojang/authlib/GameProfile; method_73313 getGameProfile + m ()Ljava/util/Optional; method_73317 getName + m (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/class_8685$class_11892;)Lnet/minecraft/class_9296; method_73308 ofDispatched + p 0 profileOrData + p 1 override + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_74888 method_74888 + p 0 instance +c net/minecraft/class_9296$class_11756 net/minecraft/component/type/ProfileComponent$Dynamic + f Lcom/mojang/datafixers/util/Either; field_62073 nameOrId + f Lnet/minecraft/class_2561; field_62072 TEXT + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/class_8685$class_11892;)V + p 2 override + p 1 nameOrId +c net/minecraft/class_9296$class_11757 net/minecraft/component/type/ProfileComponent$Data + f Lnet/minecraft/class_9296$class_11757; field_63032 EMPTY + f Lnet/minecraft/class_9139; field_62075 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_63033 CODEC + f Lcom/mojang/authlib/properties/PropertyMap; comp_4627 properties + f Ljava/util/Optional; comp_4626 id + f Ljava/util/Optional; comp_4625 name + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73319 method_73319 + p 0 instance + m ()Lcom/mojang/authlib/GameProfile; method_73321 createGameProfile + m ()Ljava/util/Optional; comp_4625 name + m ()Ljava/util/Optional; comp_4626 id + m ()Lcom/mojang/authlib/properties/PropertyMap; comp_4627 properties + m (Ljava/util/Optional;Ljava/util/Optional;Lcom/mojang/authlib/properties/PropertyMap;)V + p 1 name + p 2 id + p 3 properties +c net/minecraft/class_9296$class_11758 net/minecraft/component/type/ProfileComponent$Static + f Lcom/mojang/datafixers/util/Either; field_62077 profileOrData + f Lnet/minecraft/class_9296$class_11758; field_63034 EMPTY + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lcom/mojang/authlib/GameProfile;)Lcom/mojang/authlib/GameProfile; method_73324 method_73324 + p 0 profile + m (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/class_8685$class_11892;)V + p 1 profileOrData + p 2 override + m (Lnet/minecraft/class_9296$class_11757;)Ljava/util/Optional; method_73322 method_73322 + p 0 data + m (Lcom/mojang/authlib/GameProfile;)Ljava/util/Optional; method_73323 method_73323 + p 0 profile +c net/minecraft/class_9295 net/minecraft/component/type/MapPostProcessingComponent + f I field_49357 id + f Lnet/minecraft/class_9139; field_49356 PACKET_CODEC + f Ljava/util/function/IntFunction; field_49355 ID_TO_VALUE + f Lnet/minecraft/class_9295; field_49354 SCALE + f Lnet/minecraft/class_9295; field_49353 LOCK + m ()I method_57505 getId + m (Ljava/lang/String;II)V + p 3 id +c net/minecraft/class_9294 net/minecraft/component/type/MapColorComponent + f Lnet/minecraft/class_9294; field_49352 DEFAULT + f Lcom/mojang/serialization/Codec; field_49350 CODEC + f Lnet/minecraft/class_9139; field_49351 PACKET_CODEC + f I comp_2409 rgb + m ()I comp_2409 rgb + m (I)V + p 1 rgb +c net/minecraft/class_9292 net/minecraft/component/type/MapDecorationsComponent + f Lcom/mojang/serialization/Codec; field_49348 CODEC + f Lnet/minecraft/class_9292; field_49347 DEFAULT + f Ljava/util/Map; comp_2404 decorations + m (Ljava/lang/String;Lnet/minecraft/class_9292$class_9293;)Lnet/minecraft/class_9292; method_57503 with + p 2 decoration + p 1 id + m ()Ljava/util/Map; comp_2404 decorations + m (Ljava/util/Map;)V + p 1 decorations +c net/minecraft/class_9292$class_9293 net/minecraft/component/type/MapDecorationsComponent$Decoration + f Lcom/mojang/serialization/Codec; field_49349 CODEC + f Lnet/minecraft/class_6880; comp_2405 type + f D comp_2407 z + f F comp_2408 rotation + f D comp_2406 x + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57504 method_57504 + p 0 instance + m ()Lnet/minecraft/class_6880; comp_2405 type + m ()D comp_2406 x + m ()D comp_2407 z + m ()F comp_2408 rotation + m (Lnet/minecraft/class_6880;DDF)V + p 1 type + p 2 x + p 4 z + p 6 rotation +c net/minecraft/class_9291 net/minecraft/component/type/LodestoneTrackerComponent + f Lcom/mojang/serialization/Codec; field_49345 CODEC + f Lnet/minecraft/class_9139; field_49346 PACKET_CODEC + f Z comp_2403 tracked + f Ljava/util/Optional; comp_2402 target + m (Lnet/minecraft/class_3218;)Lnet/minecraft/class_9291; method_58115 forWorld + p 1 world + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57502 method_57502 + p 0 instance + m ()Ljava/util/Optional; comp_2402 target + m ()Z comp_2403 tracked + m (Ljava/util/Optional;Z)V + p 1 target + p 2 tracked +c net/minecraft/class_9290 net/minecraft/component/type/LoreComponent + f Lnet/minecraft/class_2583; field_49344 STYLE + f Lnet/minecraft/class_9290; field_49340 DEFAULT + f Lnet/minecraft/class_9139; field_49342 PACKET_CODEC + f I field_49343 MAX_LORES + f Lcom/mojang/serialization/Codec; field_49341 CODEC + f Ljava/util/List; comp_2400 lines + f Ljava/util/List; comp_2401 styledLines + m (Ljava/util/List;)V + p 1 lines + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_9290; method_57499 with + p 1 line + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_57500 method_57500 + p 0 style + m (Ljava/util/List;Ljava/util/List;)V + p 2 styledLines + p 1 lines + m ()Ljava/util/List; comp_2401 styledLines + m ()Ljava/util/List; comp_2400 lines +c net/minecraft/class_3161 net/minecraft/command/BlockDataObject + f Lnet/minecraft/class_2586; field_13784 blockEntity + f Ljava/util/function/Function; field_13786 TYPE_FACTORY + f Lorg/slf4j/Logger; field_60333 LOGGER + f Lnet/minecraft/class_2338; field_13783 pos + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13785 INVALID_BLOCK_EXCEPTION + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_2338;)V + p 1 blockEntity + p 2 pos + m (Ljava/lang/String;)Lnet/minecraft/class_3164$class_3167; method_13878 method_13878 + p 0 argumentName +c net/minecraft/class_3161$1 net/minecraft/command/BlockDataObject$1 + f Ljava/lang/String; field_13787 argumentName +c net/minecraft/class_3162 net/minecraft/command/DataCommandObject + m (Lnet/minecraft/class_2203$class_2209;DI)Lnet/minecraft/class_2561; method_13879 feedbackGet + p 4 result + p 2 scale + p 1 path + m ()Lnet/minecraft/class_2487; method_13881 getNbt + m ()Lnet/minecraft/class_2561; method_13883 feedbackModify + m (Lnet/minecraft/class_2520;)Lnet/minecraft/class_2561; method_13882 feedbackQuery + p 1 element + m (Lnet/minecraft/class_2487;)V method_13880 setNbt + p 1 nbt +c net/minecraft/class_4495 net/minecraft/client/render/entity/model/BeeEntityModel + c Represents the model of a {@linkplain BeeEntity}.\n\n

\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value #BONE}Root part{@link #bone}
{@value EntityModelPartNames#BODY}{@value #BONE}
{@value #STINGER}{@value EntityModelPartNames#BODY}{@link #stinger}
{@value #LEFT_ANTENNA}{@value EntityModelPartNames#BODY}{@link #leftAntenna}
{@value #RIGHT_ANTENNA}{@value EntityModelPartNames#BODY}{@link #rightAntenna}
{@value EntityModelPartNames#RIGHT_WING}{@value #BONE}{@link #rightWing}
{@value EntityModelPartNames#LEFT_WING}{@value #BONE}{@link #leftWing}
{@value #FRONT_LEGS}{@value #BONE}{@link #frontLegs}
{@value #MIDDLE_LEGS}{@value #BONE}{@link #middleLegs}
{@value #BACK_LEGS}{@value #BONE}{@link #backLegs}
\n
+ f Ljava/lang/String; field_32455 FRONT_LEGS + c The key of the front legs model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_20513 rightAntenna + f Ljava/lang/String; field_32454 RIGHT_ANTENNA + c The key of the right antenna model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_20512 leftAntenna + f Ljava/lang/String; field_32453 LEFT_ANTENNA + c The key of the left antenna model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_20511 stinger + f Ljava/lang/String; field_32452 STINGER + c The key of the stinger model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_20510 backLegs + f F field_20514 bodyPitch + f Ljava/lang/String; field_32451 BONE + c The key of the bone model part, whose value is {@value}.\n\n

The bone is an invisible model part which is used to globally control the model. + f Lnet/minecraft/class_630; field_20509 middleLegs + f Lnet/minecraft/class_630; field_20508 frontLegs + f Lnet/minecraft/class_630; field_20507 leftWing + f Lnet/minecraft/class_630; field_20506 rightWing + f Ljava/lang/String; field_32457 BACK_LEGS + c The key of the back legs model part, whose value is {@value}. + f Lnet/minecraft/class_630; field_20504 bone + f Ljava/lang/String; field_32456 MIDDLE_LEGS + c The key of the middle legs model part, whose value is {@value}. + f Lnet/minecraft/class_9953; field_52871 BABY_TRANSFORMER + m ()Lnet/minecraft/class_5607; method_31981 getTexturedModelData + m (Lnet/minecraft/class_10002;)V method_22112 setAngles +c net/minecraft/class_3164 net/minecraft/server/command/DataCommand + f Ljava/util/List; field_13792 SOURCE_OBJECT_TYPES + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_44916 MODIFY_INVALID_SUBSTRING_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13791 GET_INVALID_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13796 MERGE_FAILED_EXCEPTION + f Ljava/util/List; field_13798 TARGET_OBJECT_TYPES + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13797 MODIFY_EXPECTED_OBJECT_EXCEPTION + f Ljava/util/List; field_13790 OBJECT_TYPE_FACTORIES + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13793 GET_UNKNOWN_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13794 GET_MULTIPLE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_41747 MODIFY_EXPECTED_VALUE_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_2487;Lnet/minecraft/class_2203$class_2209;Ljava/util/List;)I method_47953 method_47953 + p 3 elements + p 0 context + p 2 path + p 1 sourceNbt + m (Ljava/lang/String;II)Ljava/lang/String; method_52165 substringInternal + p 2 endIndex + p 0 string + p 1 startIndex + m (Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3165;Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/context/CommandContext;)I method_48104 method_48104 + p 3 context + m (Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/context/CommandContext;)I method_13886 method_13886 + p 1 context + m (Lnet/minecraft/class_2203$class_2209;Lnet/minecraft/class_3162;)Lnet/minecraft/class_2520; method_13921 getNbt + p 1 object + p 0 path + m (Lnet/minecraft/class_2520;)Ljava/lang/String; method_48096 asString + p 0 nbt + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/String; method_48099 method_48099 + p 1 value + m (Ljava/lang/String;)Ljava/lang/String; method_48094 method_48094 + p 0 value + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3162;Lnet/minecraft/class_2203$class_2209;D)I method_13903 executeGet + p 0 source + p 1 object + p 2 path + p 3 scale + m (Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13923 method_13923 + p 1 builder + m (Ljava/util/function/Function;)Lnet/minecraft/class_3164$class_3167; method_13906 method_13906 + p 0 factory + m (Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3165;Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_48088 method_48088 + p 3 builderx + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_3164$class_3167;)Ljava/util/List; method_48091 getValues + p 0 context + p 1 objectType + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3162;Lnet/minecraft/class_2203$class_2209;)I method_13916 executeGet + p 2 path + p 1 object + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_2487;Lnet/minecraft/class_2203$class_2209;Ljava/util/List;)I method_47954 method_47954 + p 3 elements + p 2 path + p 1 sourceNbt + p 0 context + m (Ljava/util/List;Lnet/minecraft/class_3164$class_8569;)Ljava/util/List; method_48095 mapValues + p 1 processor + p 0 list + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_2487;Lnet/minecraft/class_2203$class_2209;Ljava/util/List;)I method_47952 method_47952 + p 1 element + p 0 context + p 3 elements + p 2 path + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3162;Lnet/minecraft/class_2203$class_2209;)I method_13885 executeRemove + p 0 source + p 1 object + p 2 path + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3162;)I method_13908 executeGet + p 0 source + p 1 object + m (Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/context/CommandContext;)I method_13912 method_13912 + p 1 context + m (Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3165;Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/context/CommandContext;)I method_48101 method_48101 + p 3 context + m (Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/context/CommandContext;)I method_13904 method_13904 + p 1 context + m (Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/context/CommandContext;)I method_13887 method_13887 + p 1 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_48093 method_48093 + p 0 nbt + m (Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3165;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13911 method_13911 + p 2 operation + m (Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3165;Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13893 method_13893 + p 3 builderx + m (Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3165;Lcom/mojang/brigadier/context/CommandContext;)I method_13900 method_13900 + p 2 context + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_3164$class_3167;)Ljava/util/List; method_48098 getValuesByPath + p 0 context + p 1 objectType + m (Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3165;Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/context/CommandContext;)I method_48097 method_48097 + p 3 context + m (Ljava/lang/String;II)Ljava/lang/String; method_51826 substring + p 0 string + p 1 startIndex + p 2 endIndex + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3162;Lnet/minecraft/class_2487;)I method_13901 executeMerge + p 2 nbt + p 1 object + p 0 source + m (Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3165;Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/context/CommandContext;)I method_48089 method_48089 + p 3 context + m (Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/context/CommandContext;)I method_13909 method_13909 + p 1 context + m (Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3165;Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/context/CommandContext;)I method_48102 method_48102 + p 3 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13892 method_13892 + p 0 path + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_52164 method_52164 + p 1 endIndex + p 0 startIndex + m (Ljava/lang/String;I)Ljava/lang/String; method_51825 substring + p 1 startIndex + p 0 string + m (Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13896 method_13896 + p 1 builder + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13905 register + p 0 dispatcher + m (Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3165;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13899 method_13899 + p 1 modifier + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3165;Ljava/util/List;)I method_13920 executeModify + p 1 objectType + p 0 context + p 3 elements + p 2 modifier + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13902 method_13902 + p 0 path + m (Ljava/util/function/BiConsumer;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13898 addModifyArgument + p 0 subArgumentAdder + m (Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3165;Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/context/CommandContext;)I method_48103 method_48103 + p 3 context + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_2487;Lnet/minecraft/class_2203$class_2209;Ljava/util/List;)I method_13891 method_13891 + p 0 context + p 3 elements + p 1 sourceNbt + p 2 path + m (Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3167;Lnet/minecraft/class_3164$class_3165;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_48090 method_48090 + p 2 operation + m (II)I method_51824 getSubstringIndex + p 0 index + p 1 length + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_2487;Lnet/minecraft/class_2203$class_2209;Ljava/util/List;)I method_13888 method_13888 + p 0 context + p 3 elements + p 1 sourceNbt + p 2 path + m (Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13889 method_13889 + p 1 builder + m (Ljava/util/function/BiConsumer;Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13922 method_13922 + p 2 builder + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/class_3164$class_3166;)V method_13895 method_13895 + p 1 modifier + p 0 builder + m (Ljava/util/function/Function;)Lnet/minecraft/class_3164$class_3167; method_13919 method_13919 + p 0 factory + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/String; method_48092 method_48092 + p 1 value + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13907 method_13907 + p 0 nbt + m (Ljava/lang/String;)Ljava/lang/String; method_48100 method_48100 + p 0 value +c net/minecraft/class_3164$class_3167 net/minecraft/server/command/DataCommand$ObjectType + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Ljava/util/function/Function;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13925 addArgumentsToBuilder + p 1 argument + p 2 argumentAdder + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_3162; method_13924 getObject + p 1 context +c net/minecraft/class_3164$class_3166 net/minecraft/server/command/DataCommand$ModifyArgumentCreator + m (Lnet/minecraft/class_3164$class_3165;)Lcom/mojang/brigadier/builder/ArgumentBuilder; create create + p 1 modifier +c net/minecraft/class_3164$class_3165 net/minecraft/server/command/DataCommand$ModifyOperation + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_2487;Lnet/minecraft/class_2203$class_2209;Ljava/util/List;)I modify modify + p 3 path + p 4 elements + p 1 context + p 2 sourceNbt +c net/minecraft/class_3164$class_8569 net/minecraft/server/command/DataCommand$Processor + m (Ljava/lang/String;)Ljava/lang/String; process process + p 1 string +c net/minecraft/class_3160 net/minecraft/world/gen/feature/SeaPickleFeature +c net/minecraft/class_3169 net/minecraft/command/EntityDataObject + f Lorg/slf4j/Logger; field_60334 LOGGER + f Lnet/minecraft/class_1297; field_13801 entity + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13799 INVALID_ENTITY_EXCEPTION + f Ljava/util/function/Function; field_13800 TYPE_FACTORY + m (Ljava/lang/String;)Lnet/minecraft/class_3164$class_3167; method_13927 method_13927 + p 0 argumentName + m (Lnet/minecraft/class_1297;)V + p 1 entity +c net/minecraft/class_3169$1 net/minecraft/command/EntityDataObject$1 + f Ljava/lang/String; field_13802 argumentName +c net/minecraft/class_3168 net/minecraft/world/gen/feature/SeagrassFeature +c net/minecraft/class_3173 net/minecraft/world/gen/feature/SimpleBlockFeature +c net/minecraft/class_3174 net/minecraft/server/dedicated/DedicatedPlayerManager + f Lorg/slf4j/Logger; field_13804 LOGGER + m (Lnet/minecraft/class_3176;Lnet/minecraft/class_7780;Lnet/minecraft/class_29;)V + p 2 tracker + p 3 saveHandler + m ()Lnet/minecraft/class_3176; method_13938 getServer + m ()V method_13937 saveWhitelist + m ()V method_13936 loadWhitelist + m ()V method_13935 saveOpList + m ()V method_13934 loadOpList + m ()V method_13933 loadUserBanList + m ()V method_13932 saveIpBanList + m ()V method_13931 loadIpBanList + m ()V method_13930 saveUserBanList +c net/minecraft/class_3175 net/minecraft/world/gen/feature/SimpleBlockFeatureConfig + f Lnet/minecraft/class_4651; comp_156 toPlace + f Lcom/mojang/serialization/Codec; field_24909 CODEC + f Z comp_3335 scheduleTick + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38913 method_38913 + p 0 instance + m ()Lnet/minecraft/class_4651; comp_156 toPlace + m (Lnet/minecraft/class_3175;)Lnet/minecraft/class_4651; method_28787 method_28787 + p 0 config + m (Lnet/minecraft/class_4651;)V + p 1 toPlace + m (Lnet/minecraft/class_3175;)Ljava/lang/Boolean; method_65172 method_65172 + p 0 config + m ()Z comp_3335 scheduleTick + m (Lnet/minecraft/class_4651;Z)V + p 1 toPlace + p 2 scheduleTick +c net/minecraft/class_3170 net/minecraft/world/gen/structure/ShipwreckStructure + f Lcom/mojang/serialization/MapCodec; field_37815 CODEC + f Z field_37816 beached + m (Lnet/minecraft/class_3195$class_7302;Z)V + p 2 beached + p 1 config + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_6626;)V method_41687 method_41687 + p 2 collector + m (Lnet/minecraft/class_6626;Lnet/minecraft/class_3195$class_7149;)V method_38685 addPieces + p 2 context + p 1 collector +c net/minecraft/class_3176 net/minecraft/server/dedicated/MinecraftDedicatedServer + f Lnet/minecraft/class_3364; field_13816 queryResponseHandler + f Lnet/minecraft/class_3182; field_16800 gui + f Lnet/minecraft/class_9847; field_52350 filterer + f Lnet/minecraft/class_9193; field_48788 debugSampleLog + f Lnet/minecraft/class_3350; field_13811 rconCommandOutput + f Ljava/util/List; field_13815 commandQueue + f Z field_62792 shouldPushTickTimeLog + f Lnet/minecraft/class_3408; field_13819 rconServer + f Lorg/slf4j/Logger; field_13814 LOGGER + f Lnet/minecraft/class_9782; field_52215 serverLinks + f Lnet/minecraft/class_3807; field_16799 propertiesLoader + f Lnet/minecraft/class_11807; field_62279 managementServer + f J field_62278 lastManagementHeartbeatTime + f Ljava/util/Map; field_62062 codeOfConductLanguages + m (Ljava/lang/String;Lnet/minecraft/class_2168;)V method_13947 enqueueCommand + p 2 commandSource + p 1 command + m (Z)V method_73602 setAcceptTransfers + p 1 acceptTransfers + m (I)V method_73581 setViewDistance + p 1 viewDistance + m (Z)V method_73597 setStatusReplies + p 1 statusReplies + m ()Z method_73573 getForceGameMode + m ()V method_13941 executeQueuedCommands + m ()Ljava/util/Map; method_73283 loadCodeOfConductLanguages + m (Lnet/minecraft/class_1934;Lnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73565 method_73565 + p 2 handler + m (Ljava/lang/String;Lnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73566 method_73566 + p 2 handler + m (ZLnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73580 method_73580 + p 2 handler + m ()Lnet/minecraft/class_3174; method_13949 getPlayerManager + m ()V method_13942 sleepFiveSeconds + m (ILnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_16710 method_16710 + p 2 serverPropertiesHandler + m (Lnet/minecraft/class_12086;Lnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_74993 method_74993 + p 2 handler + m ()Lnet/minecraft/class_1934; method_73574 getGameMode + m (I)V method_73598 setEntityBroadcastRange + p 1 entityBroadcastRange + m (ILnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73562 method_73562 + p 2 handler + m (Lnet/minecraft/class_12086;)V method_73593 setOperatorUserPermissionLevel + p 1 operatorUserPermissionLevel + m (ILnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73594 method_73594 + p 2 handler + m (ZLnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73567 method_73567 + p 2 handler + m (ZLnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73579 method_73579 + p 2 handler + m ()Z method_13951 convertData + m (I)V method_73591 setSpawnProtectionRadius + p 1 spawnProtectionRadius + m (Z)V method_73595 setAllowFlight + p 1 allowFlight + m (ZLnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73583 method_73583 + p 2 handler + m (Z)V method_73599 setHideOnlinePlayers + p 1 hideOnlinePlayers + m (ILnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73577 method_73577 + p 2 handler + m ()Lio/netty/handler/ssl/SslContext; method_74470 createManagementSslContext + m ()I method_73575 getViewDistance + m (ILnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73569 method_73569 + p 2 handler + m ()I method_73571 getStatusHeartbeatInterval + m (I)V method_73587 setMaxPlayers + p 1 maxPlayers + m (Ljava/net/URI;)Lnet/minecraft/class_9782; method_60941 method_60941 + p 0 uri + m (Lnet/minecraft/class_1934;)V method_73578 setGameMode + p 1 gameMode + m (Lnet/minecraft/class_3807;)Lnet/minecraft/class_9782; method_60940 loadServerLinks + p 0 propertiesLoader + m (ILnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73585 method_73585 + p 2 handler + m (I)V method_73600 setPauseWhenEmptySeconds + p 1 pauseWhenEmptySeconds + m ()V method_13948 createGui + m (ZLnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73570 method_73570 + p 2 handler + m (ZLnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73590 method_73590 + p 2 handler + m (Z)V method_73601 setForceGameMode + p 1 forceGameMode + m (Ljava/lang/Thread;Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_3283;Lnet/minecraft/class_6904;Lnet/minecraft/class_3807;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/class_7497;)V + p 2 session + p 3 dataPackManager + p 1 serverThread + p 6 dataFixer + p 7 apiServices + p 4 saveLoader + p 5 propertiesLoader + m (ZLnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73586 method_73586 + p 2 handler + m ()J method_13944 getMaxTickTime + m (ILnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73588 method_73588 + p 2 handler + m (Lnet/minecraft/class_3806;)Ljava/util/Optional; method_60939 parseBugReportLink + p 0 propertiesHandler + m ()I method_3841 getSpawnProtectionRadius + m (Lnet/minecraft/class_1267;)V method_73563 setDifficulty + p 1 difficulty + m ()I method_73576 getSimulationDistance + m ()I method_73572 getEntityBroadcastRange + m (ILnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73592 method_73592 + p 2 handler + m (I)V method_73596 setStatusHeartbeatInterval + p 1 statusHeartbeatInterval + m (I)V method_73584 setSimulationDistance + p 1 simulationDistance + m (Lnet/minecraft/class_1267;Lnet/minecraft/class_3806;)Lnet/minecraft/class_3806; method_73564 method_73564 + p 2 handler +c net/minecraft/obfuscate/DontObfuscate net/minecraft/obfuscate/DontObfuscate + c This annotation applies to some unobfuscated elements within the Minecraft\nsource code.\n\n

Its behavior appears as follows:\n

    \n
  • The annotation itself is not obfuscated.
  • \n
  • If a class is annotated, it is not obfuscated. It's not yet clear if its\nmembers will always become deobfuscated as well.
  • \n
  • If a member is annotated, it and its containing class is not obfuscated,\nbut other members in the same class may stay obfuscated.
  • \n
\n\n

Visit the use page for the usage of this annotation.\n\n

In addition, single-abstract-method interfaces used as lambda expressions\nalways have their single abstract method unobfuscated per proguard behavior.\n\n

This annotation is not {@link java.lang.annotation.Documented}, and hence\nwill not appear in the generated javadoc for annotated elements. +c net/minecraft/class_3177 net/minecraft/world/gen/feature/SimpleRandomFeature +c net/minecraft/class_3178 net/minecraft/server/dedicated/DedicatedServerWatchdog + f J field_46927 maxTickTime + f Lnet/minecraft/class_3176; field_13823 server + f Lorg/slf4j/Logger; field_13825 LOGGER + m (Ljava/lang/String;J)Lnet/minecraft/class_128; method_61256 createCrashReport + p 0 message + p 1 threadId + m (Lnet/minecraft/class_3218;)Ljava/lang/String; method_31376 method_31376 + p 0 world + m (Lnet/minecraft/class_3176;)V + p 1 server + m ()V method_13954 shutdown +c net/minecraft/class_3179 net/minecraft/world/gen/feature/SimpleRandomFeatureConfig + f Lcom/mojang/serialization/Codec; field_24910 CODEC + f Lnet/minecraft/class_6885; field_13827 features + m (Lnet/minecraft/class_6880;)Ljava/util/stream/Stream; method_30651 method_30651 + p 0 feature + m (Lnet/minecraft/class_3179;)Lnet/minecraft/class_6885; method_28788 method_28788 + p 0 config + m (Lnet/minecraft/class_6885;)V + p 1 features +c net/minecraft/class_3140 net/minecraft/server/command/TagCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13743 REMOVE_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13742 ADD_FAILED_EXCEPTION + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_13700 executeList + p 0 source + p 1 targets + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13704 method_13704 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13703 method_13703 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13698 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Ljava/lang/String;)I method_13699 executeRemove + p 0 source + p 1 targets + p 2 tag + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Ljava/lang/String;)I method_13702 executeAdd + p 0 source + p 1 targets + p 2 tag + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13697 method_13697 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13701 method_13701 + p 1 builder + p 0 context + m (Ljava/util/Collection;)Ljava/util/Collection; method_13706 getTags + p 0 entities +c net/minecraft/class_3141 net/minecraft/world/gen/feature/RandomFeatureConfig + f Ljava/util/List; field_13744 features + f Lcom/mojang/serialization/Codec; field_24901 CODEC + f Lnet/minecraft/class_6880; field_13745 defaultFeature + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28753 method_28753 + p 0 instance + m (Ljava/util/List;Lnet/minecraft/class_6880;)V + p 2 defaultFeature + p 1 features + m (Lnet/minecraft/class_3226;)Ljava/util/stream/Stream; method_30650 method_30650 + p 0 entry + m (Lnet/minecraft/class_3141;)Lnet/minecraft/class_6880; method_28752 method_28752 + p 0 config + m (Lnet/minecraft/class_3141;)Ljava/util/List; method_28754 method_28754 + p 0 config +c net/minecraft/class_3142 net/minecraft/server/command/TeamCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13749 ADD_DUPLICATE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13753 OPTION_FRIENDLY_FIRE_ALREADY_ENABLED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13757 OPTION_DEATH_MESSAGE_VISIBILITY_UNCHANGED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13750 OPTION_COLLISION_RULE_UNCHANGED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13754 OPTION_FRIENDLY_FIRE_ALREADY_DISABLED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13746 OPTION_COLOR_UNCHANGED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13751 EMPTY_UNCHANGED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13747 OPTION_SEE_FRIENDLY_INVISIBLES_ALREADY_ENABLED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13755 OPTION_NAME_UNCHANGED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13752 OPTION_NAMETAG_VISIBILITY_UNCHANGED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13756 OPTION_SEE_FRIENDLY_INVISIBLES_ALREADY_DISABLED_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13717 method_13717 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13749 method_13749 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13729 method_13729 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/lang/String;Lnet/minecraft/class_2561;)I method_13715 executeAdd + p 1 team + p 0 source + p 2 displayName + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13737 method_13737 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13725 method_13725 + p 0 context + m (Lnet/minecraft/class_2168;)I method_13728 executeListTeams + p 0 source + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_268;Lnet/minecraft/class_2561;)I method_13756 executeModifySuffix + p 1 team + p 2 suffix + p 0 source + m (Ljava/util/Collection;)Lnet/minecraft/class_2561; method_55372 getMemberName + p 0 members + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13736 register + p 0 dispatcher + p 1 registryAccess + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_268;)I method_13747 executeRemove + p 0 source + p 1 team + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_268;)I method_13723 executeEmpty + p 1 team + p 0 source + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_268;Lnet/minecraft/class_124;)I method_13745 executeModifyColor + p 2 color + p 1 team + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13752 method_13752 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13744 method_13744 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13740 method_13740 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13716 method_13716 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13724 method_13724 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13712 method_13712 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_268;Lnet/minecraft/class_270$class_271;)I method_13713 executeModifyCollisionRule + p 1 team + p 0 source + p 2 collisionRule + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_268;Lnet/minecraft/class_270$class_272;)I method_13735 executeModifyDeathMessageVisibility + p 2 visibility + p 1 team + p 0 source + m (Lnet/minecraft/class_2168;Ljava/lang/String;)I method_13757 executeAdd + p 1 team + p 0 source + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_268;)I method_13748 executeListMembers + p 0 source + p 1 team + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13731 method_13731 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_268;Ljava/util/Collection;)I method_13720 executeJoin + p 1 team + p 2 members + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13755 method_13755 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13739 method_13739 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13727 method_13727 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_268;Z)I method_13754 executeModifyFriendlyFire + p 0 source + p 1 team + p 2 allowed + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_268;Lnet/minecraft/class_270$class_272;)I method_13732 executeModifyNametagVisibility + p 2 visibility + p 1 team + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13742 method_13742 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13730 method_13730 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13722 method_13722 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13750 method_13750 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13738 method_13738 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13718 method_13718 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13746 method_13746 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13734 method_13734 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13726 method_13726 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_268;Z)I method_13751 executeModifySeeFriendlyInvisibles + p 2 allowed + p 0 source + p 1 team + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_268;Lnet/minecraft/class_2561;)I method_13711 executeModifyDisplayName + p 2 displayName + p 0 source + p 1 team + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_13714 executeLeave + p 0 source + p 1 members + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_268;Lnet/minecraft/class_2561;)I method_13743 executeModifyPrefix + p 1 team + p 2 prefix + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13753 method_13753 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13733 method_13733 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13721 method_13721 + p 0 context +c net/minecraft/class_3149 net/minecraft/server/command/TimeCommand + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13786 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13790 method_13790 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13795 method_13795 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13785 method_13785 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13797 method_13797 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13792 method_13792 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13793 method_13793 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13783 method_13783 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13794 method_13794 + p 0 context + m (Lnet/minecraft/class_2168;I)I method_13788 executeAdd + p 0 source + p 1 time + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13789 method_13789 + p 0 context + m (Lnet/minecraft/class_2168;I)I method_13796 executeQuery + p 1 time + p 0 source + m (Lnet/minecraft/class_2168;I)I method_13784 executeSet + p 0 source + p 1 time + m (Lnet/minecraft/class_3218;)I method_13787 getDayTime + p 0 world +c net/minecraft/class_3143 net/minecraft/server/command/TeleportCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_22255 INVALID_POSITION_EXCEPTION + m (Lnet/minecraft/class_2267;Lnet/minecraft/class_2267;Z)Ljava/util/Set; method_64266 getFlags + p 1 rotation + p 2 sameDimension + p 0 pos + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13758 method_13758 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13769 method_13769 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13768 method_13768 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13759 method_13759 + p 0 context + m (D)Ljava/lang/String; method_36970 formatFloat + p 0 d + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13760 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13770 method_13770 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_1297;)I method_13771 execute + p 0 source + p 1 targets + p 2 destination + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_3218;Lnet/minecraft/class_2267;Lnet/minecraft/class_2267;Lnet/minecraft/class_3144;)I method_13765 execute + p 1 targets + p 2 world + p 0 source + p 5 facingLocation + p 3 location + p 4 rotation + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13767 method_13767 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13761 method_13761 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13762 method_13762 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_3218;DDDLjava/util/Set;FFLnet/minecraft/class_3144;)V method_13766 teleport + p 2 world + p 3 x + p 0 source + p 1 target + p 12 facingLocation + p 10 yaw + p 11 pitch + p 9 movementFlags + p 7 z + p 5 y +c net/minecraft/class_3144 net/minecraft/server/command/LookTarget + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;)V method_13772 look + p 2 entity + p 1 source +c net/minecraft/class_3144$class_9252 net/minecraft/server/command/LookTarget$LookAtPosition + f Lnet/minecraft/class_243; comp_2359 position + m ()Lnet/minecraft/class_243; comp_2359 position + m (Lnet/minecraft/class_243;)V + p 1 position +c net/minecraft/class_3144$class_9251 net/minecraft/server/command/LookTarget$LookAtEntity + f Lnet/minecraft/class_1297; comp_2357 entity + f Lnet/minecraft/class_2183$class_2184; comp_2358 anchor + m ()Lnet/minecraft/class_1297; comp_2357 entity + m ()Lnet/minecraft/class_2183$class_2184; comp_2358 anchor + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2183$class_2184;)V + p 1 entity + p 2 anchor +c net/minecraft/class_3146 net/minecraft/server/command/TellRawCommand + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13776 register + p 0 dispatcher + p 1 registryAccess + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13777 method_13777 + p 0 context +c net/minecraft/class_3150 net/minecraft/world/gen/feature/RandomFeature +c net/minecraft/class_4482 net/minecraft/block/entity/BeehiveBlockEntity + f Lorg/slf4j/Logger; field_60370 LOGGER + f I field_31315 MIN_OCCUPATION_TICKS_WITH_NECTAR + f I field_31313 MIN_OCCUPATION_TICKS_WITHOUT_NECTAR + f Ljava/lang/String; field_31311 BEES_KEY + f Lnet/minecraft/class_2338; field_20424 flowerPos + f Ljava/lang/String; field_31306 FLOWER_POS_KEY + f I field_31312 MAX_BEE_COUNT + f Ljava/util/List; field_20423 bees + f I field_31314 ANGERED_CANNOT_ENTER_HIVE_TICKS + f Ljava/util/List; field_33570 IRRELEVANT_BEE_NBT_KEYS + m ()Z method_21857 hasFlowerPos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_4482$class_9309;Ljava/util/List;Lnet/minecraft/class_4482$class_4484;Lnet/minecraft/class_2338;)Z method_21855 releaseBee + p 5 beeState + p 4 entities + p 3 bee + p 2 state + p 1 pos + p 0 world + p 6 flowerPos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4482$class_4484;)Ljava/util/List; method_21852 tryReleaseBee + p 2 beeState + p 1 state + m ()I method_23903 getBeeCount + m ()Ljava/util/List; method_57580 createBeesData + m (Lnet/minecraft/class_4466;)V method_21848 tryEnterHive + p 1 entity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Ljava/util/List;Lnet/minecraft/class_2338;)V method_21858 tickBees + p 1 pos + p 0 world + p 3 bees + p 2 state + p 4 flowerPos + m (Lnet/minecraft/class_4970$class_4971;)Z method_40019 method_40019 + p 0 statex + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_4482;)V method_31656 serverTick + p 2 state + p 3 blockEntity + p 0 world + p 1 pos + m (Lnet/minecraft/class_4482$class_9309;)V method_35292 addBee + p 1 bee + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_2680;Lnet/minecraft/class_4482$class_4484;)V method_21850 angerBees + p 3 beeState + p 2 state + p 1 player + m ()Z method_21856 isFullOfBees + m ()Z method_22400 hasNoBees + m ()Z method_23280 isNearFire + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m (Lnet/minecraft/class_2680;Ljava/util/List;Lnet/minecraft/class_4482$class_4484;Lnet/minecraft/class_4482$class_4483;)Z method_21854 method_21854 + p 4 bee + m (Lnet/minecraft/class_2680;)I method_23902 getHoneyLevel + p 0 state + m ()Z method_23904 isSmoked +c net/minecraft/class_4482$class_9309 net/minecraft/block/entity/BeehiveBlockEntity$BeeData + f Lcom/mojang/serialization/Codec; field_49412 LIST_CODEC + f Lcom/mojang/serialization/Codec; field_49411 CODEC + f Lnet/minecraft/class_9139; field_49413 PACKET_CODEC + f I comp_2433 minTicksInHive + f I comp_2432 ticksInHive + f Lnet/minecraft/class_11580; comp_2431 entityData + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_4482$class_9309; method_57586 of + p 0 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57587 method_57587 + p 0 instance + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1297; method_57588 loadEntity + p 1 world + p 2 pos + m (I)Lnet/minecraft/class_4482$class_9309; method_57584 create + p 0 ticksInHive + m (ILnet/minecraft/class_4466;)V method_57585 tickEntity + p 0 ticksInHive + p 1 beeEntity + m ()Lnet/minecraft/class_11580; comp_2431 entityData + m ()I comp_2432 ticksInHive + m ()I comp_2433 minTicksInHive + m (Lnet/minecraft/class_11580;II)V + p 1 entityData + p 2 ticksInHive + p 3 minTicksInHive +c net/minecraft/class_4482$class_4484 net/minecraft/block/entity/BeehiveBlockEntity$BeeState + f Lnet/minecraft/class_4482$class_4484; field_20428 HONEY_DELIVERED + f Lnet/minecraft/class_4482$class_4484; field_20429 BEE_RELEASED + f Lnet/minecraft/class_4482$class_4484; field_21052 EMERGENCY +c net/minecraft/class_4482$class_4483 net/minecraft/block/entity/BeehiveBlockEntity$Bee + f I field_20426 ticksInHive + f Lnet/minecraft/class_4482$class_9309; field_49410 data + m ()Z method_57581 canExitHive + m ()Lnet/minecraft/class_4482$class_9309; method_57582 createData + m ()Z method_57583 hasNectar + m (Lnet/minecraft/class_4482$class_9309;)V + p 1 data +c net/minecraft/class_3151 net/minecraft/server/command/TitleCommand + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_13799 executeReset + p 0 source + p 1 targets + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13803 method_13803 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13800 method_13800 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_2561;Ljava/lang/String;Ljava/util/function/Function;)I method_13802 executeTitle + p 1 targets + p 0 source + p 3 titleType + p 2 title + p 4 constructor + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13801 method_13801 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13804 register + p 1 registryAccess + p 0 dispatcher + m (Lnet/minecraft/class_2168;Ljava/util/Collection;III)I method_13806 executeTimes + p 4 fadeOut + p 3 stay + p 2 fadeIn + p 1 targets + p 0 source + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_13805 executeClear + p 1 targets + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13807 method_13807 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13808 method_13808 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13809 method_13809 + p 0 context +c net/minecraft/class_4481 net/minecraft/block/BeehiveBlock + f I field_31011 FULL_HONEY_LEVEL + f Lnet/minecraft/class_2754; field_20419 FACING + f Lnet/minecraft/class_2758; field_20420 HONEY_LEVEL + f Lcom/mojang/serialization/MapCodec; field_46274 CODEC + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)V method_23754 takeHoney + p 3 pos + p 2 state + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_2680;Lnet/minecraft/class_2586;Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;)V method_21842 dropHoneycomb + p 2 state + p 1 tool + p 0 world + p 5 pos + p 4 interactingEntity + p 3 blockEntity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_21843 spawnHoneyParticles + p 2 pos + p 3 state + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_4482$class_4484;)V method_21841 takeHoney + p 3 pos + p 2 state + p 1 world + p 5 beeState + p 4 player + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_265;D)V method_21844 addHoneyParticle + p 4 height + p 1 world + p 3 shape + p 2 pos + m (Lnet/minecraft/class_1937;DDDDD)V method_21840 addHoneyParticle + p 10 height + p 6 minZ + p 8 maxZ + p 1 world + p 2 minX + p 4 maxX + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_72545 method_72545 + p 1 worldx + p 2 stack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_23893 angerNearbyBees + p 2 pos + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_23894 hasBees + p 1 world + p 2 pos +c net/minecraft/class_3152 net/minecraft/world/gen/feature/EmeraldOreFeature +c net/minecraft/class_3153 net/minecraft/server/command/TriggerCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13764 FAILED_INVALID_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13763 FAILED_UNPRIMED_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13815 method_13815 + p 0 context + m (Lnet/minecraft/class_2168;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13819 suggestObjectives + p 1 builder + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13816 method_13816 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3222;Lnet/minecraft/class_266;I)I method_13820 executeSet + p 3 value + p 2 objective + p 1 player + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13812 method_13812 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3222;Lnet/minecraft/class_266;)I method_13818 executeSimple + p 1 player + p 2 objective + p 0 source + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13813 register + p 0 dispatcher + m (Lnet/minecraft/class_269;Lnet/minecraft/class_9015;Lnet/minecraft/class_266;)Lnet/minecraft/class_9014; method_13821 getScore + p 2 objective + p 1 scoreHolder + p 0 scoreboard + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13814 method_13814 + p 1 builder + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3222;Lnet/minecraft/class_266;I)I method_13817 executeAdd + p 3 amount + p 1 player + p 2 objective + p 0 source +c net/minecraft/class_3158 net/minecraft/server/command/WorldBorderCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_36188 SET_FAILED_FAR_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13776 SET_FAILED_SMALL_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13774 DAMAGE_AMOUNT_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13778 DAMAGE_BUFFER_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13780 SET_FAILED_NO_CHANGE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13773 WARNING_TIME_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13777 WARNING_DISTANCE_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13775 CENTER_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13779 SET_FAILED_BIG_EXCEPTION + m (Lnet/minecraft/class_2168;)I method_13868 executeGet + p 0 source + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13858 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;I)I method_13859 executeWarningDistance + p 0 source + p 1 distance + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_241;)I method_13869 executeCenter + p 0 source + p 1 pos + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13870 method_13870 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13860 method_13860 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13872 method_13872 + p 0 context + m (J)Ljava/lang/String; method_76042 toSeconds + p 0 ticks + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13864 method_13864 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13866 method_13866 + p 0 context + m (Lnet/minecraft/class_2168;DJ)I method_13854 executeSet + p 0 source + p 3 time + p 1 distance + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13871 method_13871 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13861 method_13861 + p 0 context + m (Lnet/minecraft/class_2168;I)I method_13856 executeWarningTime + p 0 source + p 1 time + m (Lnet/minecraft/class_2168;F)I method_13865 executeBuffer + p 1 distance + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13867 method_13867 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13857 method_13857 + p 0 context + m (Lnet/minecraft/class_2168;F)I method_13863 executeDamage + p 0 source + p 1 damagePerBlock + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13855 method_13855 + p 0 context +c net/minecraft/class_4486 net/minecraft/world/storage/ChunkCompressionFormat + f Lnet/minecraft/class_4486; field_20443 DEFLATE + f Lnet/minecraft/class_4486; field_48757 currentFormat + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; field_48756 FORMAT_BY_NAME + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_20445 FORMATS + f Lnet/minecraft/class_4486$class_4487; field_20447 inputStreamWrapper + f Lnet/minecraft/class_4486; field_48754 DEFAULT_FORMAT + f Lnet/minecraft/class_4486; field_20442 GZIP + f Lnet/minecraft/class_4486; field_48916 CUSTOM + f Lnet/minecraft/class_4486; field_20444 UNCOMPRESSED + f Lorg/slf4j/Logger; field_48755 LOGGER + f I field_20446 id + f Ljava/lang/String; field_48758 name + f Lnet/minecraft/class_4486$class_4487; field_20448 outputStreamWrapper + f Lnet/minecraft/class_4486; field_48753 LZ4 + m (I)Z method_21887 exists + p 0 id + m (Ljava/io/InputStream;)Ljava/io/InputStream; method_21885 wrap + p 1 inputStream + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; method_21889 method_21889 + p 0 stream + m (Ljava/io/InputStream;)Ljava/io/InputStream; method_39805 method_39805 + p 0 stream + m (Ljava/io/InputStream;)Ljava/io/InputStream; method_39803 method_39803 + p 0 stream + m ()Lnet/minecraft/class_4486; method_56567 getCurrentFormat + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; method_21886 wrap + p 1 outputStream + m (Ljava/io/InputStream;)Ljava/io/InputStream; method_21888 method_21888 + p 0 stream + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; method_39806 method_39806 + p 0 stream + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; method_39804 method_39804 + p 0 stream + m (Ljava/io/InputStream;)Ljava/io/InputStream; method_56569 method_56569 + p 0 stream + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; method_56570 method_56570 + p 0 stream + m (I)Lnet/minecraft/class_4486; method_21883 get + p 0 id + m (ILjava/lang/String;Lnet/minecraft/class_4486$class_4487;Lnet/minecraft/class_4486$class_4487;)V + p 2 name + p 3 inputStreamWrapper + p 4 outputStreamWrapper + p 1 id + m (Ljava/lang/String;)V method_56568 setCurrentFormat + p 0 name + m ()I method_21882 getId + m (Lnet/minecraft/class_4486;)Lnet/minecraft/class_4486; method_21884 add + p 0 version +c net/minecraft/class_4486$class_4487 net/minecraft/world/storage/ChunkCompressionFormat$Wrapper + m (Ljava/lang/Object;)Ljava/lang/Object; wrap wrap + p 1 object +c net/minecraft/class_3154 net/minecraft/world/gen/feature/EmeraldOreFeatureConfig + f Lcom/mojang/serialization/Codec; field_24904 CODEC + f Ljava/util/List; field_13765 targets + m (Ljava/util/List;)V + p 1 targets + m (Lnet/minecraft/class_3154;)Ljava/util/List; method_28772 method_28772 + p 0 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28771 method_28771 + p 0 instance + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)V + p 2 state + p 1 target +c net/minecraft/class_4485 net/minecraft/world/storage/SectorMap + f Ljava/util/BitSet; field_20433 bitSet + m (II)V method_21868 allocate + p 2 size + p 1 start + m ()Lit/unimi/dsi/fastutil/ints/IntSet; method_35322 getAllocatedBits + m (I)I method_21867 allocate + p 1 size + m (II)V method_21869 free + p 2 size + p 1 start +c net/minecraft/class_3155 net/minecraft/server/command/WeatherCommand + f I field_33398 DEFAULT_DURATION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13829 method_13829 + p 0 context + m (Lnet/minecraft/class_2168;I)I method_13833 executeThunder + p 0 source + p 1 duration + m (Lnet/minecraft/class_2168;I)I method_13824 executeClear + p 1 duration + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13825 method_13825 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13826 method_13826 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13831 method_13831 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13827 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13823 method_13823 + p 0 context + m (Lnet/minecraft/class_2168;ILnet/minecraft/class_6017;)I method_48087 processDuration + p 1 duration + p 2 provider + p 0 source + m (Lnet/minecraft/class_2168;I)I method_13828 executeRain + p 1 duration + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13830 method_13830 + p 0 context +c net/minecraft/class_3156 net/minecraft/server/dedicated/command/WhitelistCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13770 ALREADY_OFF_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13768 ADD_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13767 ALREADY_ON_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13769 REMOVE_FAILED_EXCEPTION + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_13845 executeRemove + p 0 source + p 1 targets + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13836 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;)I method_13850 executeReload + p 0 source + m (Lnet/minecraft/class_2168;)I method_13840 executeList + p 0 source + m (Lnet/minecraft/class_2168;)I method_13839 executeOn + p 0 source + m (Lnet/minecraft/class_2168;)I method_13837 executeOff + p 0 source + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_13838 executeAdd + p 1 targets + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13843 method_13843 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13834 method_13834 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13849 method_13849 + p 1 builder + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13835 method_13835 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13846 method_13846 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13848 method_13848 + p 0 context + p 1 builder + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13851 method_13851 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13842 method_13842 + p 0 context +c net/minecraft/class_4488 net/minecraft/loot/function/CopyStateLootFunction + f Lnet/minecraft/class_6880; field_20449 block + f Ljava/util/Set; field_20450 properties + f Lcom/mojang/serialization/MapCodec; field_45816 CODEC + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_4488$class_4489; method_21892 builder + p 0 block + m (Ljava/util/List;Lnet/minecraft/class_6880;Ljava/util/List;)V + p 2 block + p 1 conditions + p 3 properties + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_9275;)Lnet/minecraft/class_9275; method_57636 method_57636 + p 2 component + m (Ljava/util/List;Lnet/minecraft/class_6880;Ljava/util/Set;)V + p 2 block + p 1 conditions + p 3 properties + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53311 method_53311 + p 0 instance + m (Lnet/minecraft/class_4488;)Lnet/minecraft/class_6880; method_53312 method_53312 + p 0 function + m (Lnet/minecraft/class_4488;)Ljava/util/List; method_53310 method_53310 + p 0 function +c net/minecraft/class_4488$class_4489 net/minecraft/loot/function/CopyStateLootFunction$Builder + f Lcom/google/common/collect/ImmutableSet$Builder; field_20452 properties + f Lnet/minecraft/class_6880; field_20451 block + m (Lnet/minecraft/class_2769;)Lnet/minecraft/class_4488$class_4489; method_21898 addProperty + p 1 property + m ()Lnet/minecraft/class_4488$class_4489; method_21897 getThisBuilder + m (Lnet/minecraft/class_2248;)V + p 1 block +c net/minecraft/class_5780 net/minecraft/world/gen/feature/MultifaceGrowthFeatureConfig + f Lcom/mojang/serialization/Codec; field_28429 CODEC + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; field_28436 directions + f F field_28434 spreadChance + f I field_28430 searchRange + f Lnet/minecraft/class_10376; field_37709 block + f Lnet/minecraft/class_6885; field_28435 canPlaceOn + f Z field_28432 placeOnCeiling + f Z field_28431 placeOnFloor + f Z field_28433 placeOnWalls + m (Lnet/minecraft/class_5780;)Lnet/minecraft/class_10376; method_41574 method_41574 + p 0 config + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_2350;)Ljava/util/List; method_43296 shuffleDirections + p 1 random + p 2 excluded + m (Lnet/minecraft/class_5780;)Ljava/lang/Integer; method_33404 method_33404 + p 0 config + m (Lnet/minecraft/class_10376;IZZZFLnet/minecraft/class_6885;)V + p 1 block + p 5 placeOnWalls + p 4 placeOnCeiling + p 3 placeOnFloor + p 2 searchRange + p 7 canPlaceOn + p 6 spreadChance + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;)Z method_43297 method_43297 + p 1 direction + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33398 method_33398 + p 0 instance + m (Lnet/minecraft/class_5819;)Ljava/util/List; method_43295 shuffleDirections + p 1 random + m (Lnet/minecraft/class_5780;)Lnet/minecraft/class_6885; method_33399 method_33399 + p 0 config + m (Lnet/minecraft/class_5780;)Ljava/lang/Boolean; method_33401 method_33401 + p 0 config + m (Lnet/minecraft/class_2248;)Lcom/mojang/serialization/DataResult; method_41573 validateBlock + p 0 block + m (Lnet/minecraft/class_5780;)Ljava/lang/Boolean; method_33403 method_33403 + p 0 config + m (Lnet/minecraft/class_5780;)Ljava/lang/Boolean; method_33402 method_33402 + p 0 config + m (Lnet/minecraft/class_5780;)Ljava/lang/Float; method_33400 method_33400 + p 0 config +c net/minecraft/class_4450 net/minecraft/client/realms/util/TextRenderingUtils + m (Ljava/lang/String;Ljava/util/List;)Ljava/util/List; method_21577 decompose + p 0 text + p 1 links + m (Ljava/util/List;Ljava/util/List;)Ljava/util/List; method_21579 insertLinks + p 1 links + p 0 lines + m (Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; method_21576 split + p 1 delimiter + p 0 line + m (Ljava/lang/String;)Ljava/util/List; method_21575 lineBreak + p 0 text + m (Ljava/lang/String;[Lnet/minecraft/class_4450$class_4452;)Ljava/util/List; method_21578 decompose + p 1 links + p 0 text +c net/minecraft/class_4450$class_4452 net/minecraft/client/realms/util/TextRenderingUtils$LineSegment + f Ljava/lang/String; field_20269 linkUrl + f Ljava/lang/String; field_20268 linkTitle + f Ljava/lang/String; field_20267 fullText + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Z method_21583 isLink + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 fullText + p 2 linkTitle + p 3 linkUrl + m ()Ljava/lang/String; method_21584 getLinkUrl + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_4450$class_4452; method_21582 link + p 1 linkUrl + p 0 linkTitle + m (Ljava/lang/String;)V + p 1 fullText + m (Ljava/lang/String;)Lnet/minecraft/class_4450$class_4452; method_21581 text + p 0 fullText + m ()Ljava/lang/String; method_21580 renderedText +c net/minecraft/class_4450$class_4451 net/minecraft/client/realms/util/TextRenderingUtils$Line + f Ljava/util/List; field_20266 segments + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ([Lnet/minecraft/class_4450$class_4452;)V + p 1 segments + m (Ljava/util/List;)V + p 1 segments +c net/minecraft/class_4456 net/minecraft/util/CsvWriter + f I field_20285 column + f Ljava/lang/String; field_29836 CRLF + f Ljava/io/Writer; field_20284 writer + f Ljava/lang/String; field_29837 COMMA + m ([Ljava/lang/Object;)V method_21630 printRow + p 1 columns + m ()Lnet/minecraft/class_4456$class_4457; method_21627 makeHeader + m (Ljava/util/stream/Stream;)V method_21629 printRow + p 1 columns + m (Ljava/io/Writer;Ljava/util/List;)V + p 1 writer + p 2 columns + m (Ljava/lang/Object;)Ljava/lang/String; method_21628 escape + p 0 o +c net/minecraft/class_4456$class_4457 net/minecraft/util/CsvWriter$Header + f Ljava/util/List; field_20286 columns + m (Ljava/io/Writer;)Lnet/minecraft/class_4456; method_21631 startBody + p 1 writer + m (Ljava/lang/String;)Lnet/minecraft/class_4456$class_4457; method_21632 addColumn + p 1 name +c net/minecraft/class_3127 net/minecraft/server/command/SpawnPointCommand + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13643 method_13643 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13642 method_13642 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_2338;Lnet/minecraft/class_2267;)I method_13645 execute + p 1 targets + p 2 pos + p 0 source + p 3 rotation + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13640 method_13640 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_30733 method_30733 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13641 register + p 0 dispatcher +c net/minecraft/class_4459 net/minecraft/entity/ai/pathing/TargetPathNode + f Lnet/minecraft/class_9; field_20305 nearestNode + f F field_20304 nearestNodeDistance + f Z field_20306 reached + m (Lnet/minecraft/class_9;)V + p 1 node + m ()V method_21665 markReached + m ()Lnet/minecraft/class_9; method_21664 getNearestNode + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_4459; method_21663 fromBuffer + p 0 buffer + m ()Z method_35501 isReached + m (FLnet/minecraft/class_9;)V method_21662 updateNearestNode + p 1 distance + p 2 node +c net/minecraft/class_3128 net/minecraft/server/command/SetWorldSpawnCommand + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13647 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;Lnet/minecraft/class_2267;)I method_13650 execute + p 1 pos + p 2 rotation + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_30734 method_30734 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13648 method_13648 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13646 method_13646 + p 0 context +c net/minecraft/class_4458 net/minecraft/entity/ai/brain/task/GoToCloserPointOfInterestTask + m (FILnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46936 method_46936 + p 2 walkTarget + m (Lnet/minecraft/class_4153;Lnet/minecraft/class_2338;)D method_46938 method_46938 + p 1 pos + m (FI)Lnet/minecraft/class_7893; method_46934 create + p 0 speed + p 1 completionRange + m (FILnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46935 method_46935 + p 2 context + m (Lnet/minecraft/class_7906;FILnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_46937 method_46937 + p 4 entity + p 3 world + p 5 time +c net/minecraft/class_5789 net/minecraft/client/render/entity/GlowSquidEntityRenderer + f Lnet/minecraft/class_2960; field_28461 TEXTURE + m (Lnet/minecraft/class_5776;Lnet/minecraft/class_2338;)I method_33432 getBlockLight + m (Lnet/minecraft/class_10069;)Lnet/minecraft/class_2960; method_33431 getTexture +c net/minecraft/class_4453 net/minecraft/client/realms/util/UploadTokenCache + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_20270 TOKEN_CACHE + m (J)V method_21587 invalidate + p 0 world + m (JLjava/lang/String;)V method_21586 put + p 2 token + p 0 wid + m (J)Ljava/lang/String; method_21585 get + p 0 worldId +c net/minecraft/class_3122 net/minecraft/world/gen/feature/OreFeature + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_3124;DDDDDDIIIII)Z method_13629 generateVeinPart + p 2 random + p 3 config + p 1 world + p 20 verticalSize + p 14 endY + p 12 startY + p 18 z + p 19 horizontalSize + p 16 x + p 17 y + p 6 endX + p 4 startX + p 10 endZ + p 8 startZ + m (Lnet/minecraft/class_5819;F)Z method_33984 shouldNotDiscard + p 1 chance + p 0 random + m (Lnet/minecraft/class_2680;Ljava/util/function/Function;Lnet/minecraft/class_5819;Lnet/minecraft/class_3124;Lnet/minecraft/class_3124$class_5876;Lnet/minecraft/class_2338$class_2339;)Z method_33983 shouldPlace + p 2 random + p 1 posToState + p 0 state + p 5 pos + p 4 target + p 3 config +c net/minecraft/class_3123 net/minecraft/server/dedicated/command/SetIdleTimeoutCommand + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13631 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;I)I method_13630 execute + p 0 source + p 1 minutes + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13632 method_13632 + p 0 context +c net/minecraft/class_5786 net/minecraft/client/particle/GlowParticle + f Lnet/minecraft/class_4002; field_28458 spriteProvider + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_4002;)V + p 6 z + p 8 velocityX + p 10 velocityY + p 12 velocityZ + p 14 spriteProvider + p 1 world + p 2 x + p 4 y +c net/minecraft/class_5786$class_5960 net/minecraft/client/particle/GlowParticle$WaxOnFactory + f D field_29577 velocityMultiplier + f Lnet/minecraft/class_4002; field_29578 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_34752 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_5786$class_5959 net/minecraft/client/particle/GlowParticle$WaxOffFactory + f D field_29575 velocityMultiplier + f Lnet/minecraft/class_4002; field_29576 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_34751 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_5786$class_5958 net/minecraft/client/particle/GlowParticle$ScrapeFactory + f D field_29573 velocityMultiplier + f Lnet/minecraft/class_4002; field_29574 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_34750 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_5786$class_5957 net/minecraft/client/particle/GlowParticle$GlowFactory + f Lnet/minecraft/class_4002; field_29572 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_34749 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_5786$class_5956 net/minecraft/client/particle/GlowParticle$ElectricSparkFactory + f Lnet/minecraft/class_4002; field_29571 spriteProvider + f D field_29570 velocityMultiplier + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_34748 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_3124 net/minecraft/world/gen/feature/OreFeatureConfig + f Lcom/mojang/serialization/Codec; field_24896 CODEC + f Ljava/util/List; field_29063 targets + f I field_13723 size + f F field_29064 discardOnAirChance + m (Ljava/util/List;I)V + p 1 targets + p 2 size + m (Lnet/minecraft/class_3825;Lnet/minecraft/class_2680;I)V + p 3 size + p 2 state + p 1 test + m (Lnet/minecraft/class_3825;Lnet/minecraft/class_2680;IF)V + p 2 state + p 3 size + p 1 test + p 4 discardOnAirChance + m (Lnet/minecraft/class_3124;)Ljava/lang/Float; method_33993 method_33993 + p 0 config + m (Lnet/minecraft/class_3124;)Ljava/util/List; method_28745 method_28745 + p 0 config + m (Lnet/minecraft/class_3825;Lnet/minecraft/class_2680;)Lnet/minecraft/class_3124$class_5876; method_33994 createTarget + p 1 state + p 0 test + m (Ljava/util/List;IF)V + p 1 targets + p 2 size + p 3 discardOnAirChance + m (Lnet/minecraft/class_3124;)Ljava/lang/Integer; method_33995 method_33995 + p 0 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33992 method_33992 + p 0 instance +c net/minecraft/class_3124$class_5876 net/minecraft/world/gen/feature/OreFeatureConfig$Target + f Lcom/mojang/serialization/Codec; field_29067 CODEC + f Lnet/minecraft/class_3825; field_29068 target + f Lnet/minecraft/class_2680; field_29069 state + m (Lnet/minecraft/class_3124$class_5876;)Lnet/minecraft/class_3825; method_33998 method_33998 + p 0 target + m (Lnet/minecraft/class_3825;Lnet/minecraft/class_2680;)V + p 1 target + p 2 state + m (Lnet/minecraft/class_3124$class_5876;)Lnet/minecraft/class_2680; method_33997 method_33997 + p 0 target + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33996 method_33996 + p 0 instance +c net/minecraft/class_3118 net/minecraft/server/command/SeedCommand + m (Lcom/mojang/brigadier/CommandDispatcher;Z)V method_13616 register + p 1 dedicated + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13617 method_13617 + p 0 context +c net/minecraft/class_3119 net/minecraft/server/command/SetBlockCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13719 FAILED_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13625 method_13625 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13622 method_13622 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_66004 method_66004 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;Lnet/minecraft/class_2247;Lnet/minecraft/class_3119$class_3121;Ljava/util/function/Predicate;Z)I method_13620 execute + p 5 strict + p 4 condition + p 3 mode + p 2 block + p 1 pos + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13626 method_13626 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13623 register + p 1 commandRegistryAccess + p 0 dispatcher + m (Lnet/minecraft/class_2694;)Z method_13624 method_13624 + p 0 pos + m (Ljava/util/function/Predicate;Lcom/mojang/brigadier/context/CommandContext;)I method_66005 method_66005 + p 1 context +c net/minecraft/class_3119$class_3121 net/minecraft/server/command/SetBlockCommand$Mode + f Lnet/minecraft/class_3119$class_3121; field_13721 DESTROY + f Lnet/minecraft/class_3119$class_3121; field_13722 REPLACE +c net/minecraft/class_5793 net/minecraft/data/family/BlockFamilies + f Lnet/minecraft/class_5794; field_28518 EXPOSED_CUT_COPPER + f Lnet/minecraft/class_5794; field_28506 SPRUCE + f Lnet/minecraft/class_5794; field_33681 WAXED_WEATHERED_COPPER + f Lnet/minecraft/class_5794; field_28480 POLISHED_DIORITE + f Lnet/minecraft/class_5794; field_33686 EXPOSED_COPPER + f Lnet/minecraft/class_5794; field_28492 CUT_SANDSTONE + f Lnet/minecraft/class_5794; field_28484 RED_NETHER_BRICK + f Lnet/minecraft/class_5794; field_28496 SMOOTH_RED_SANDSTONE + f Lnet/minecraft/class_5794; field_55170 RESIN_BRICK + f Lnet/minecraft/class_5794; field_28488 DARK_PRISMARINE + f Lnet/minecraft/class_5794; field_28521 WAXED_WEATHERED_CUT_COPPER + f Lnet/minecraft/class_5794; field_28501 BIRCH + f Lnet/minecraft/class_5794; field_28947 POLISHED_DEEPSLATE + f Lnet/minecraft/class_5794; field_28525 DIORITE + f Lnet/minecraft/class_5794; field_28513 BRICK + f Lnet/minecraft/class_5794; field_28515 MOSSY_STONE_BRICK + f Lnet/minecraft/class_5794; field_28507 WARPED + f Lnet/minecraft/class_5794; field_28519 WAXED_EXPOSED_CUT_COPPER + f Ljava/lang/String; field_33118 WOODEN_UNLOCK_CRITERION_NAME + c The name of the criterion used for the recipe unlock advancements of wooden block families. + f Lnet/minecraft/class_5794; field_33682 OXIDIZED_COPPER + f Lnet/minecraft/class_5794; field_40589 BAMBOO + f Lnet/minecraft/class_5794; field_33687 WAXED_EXPOSED_COPPER + f Lnet/minecraft/class_5794; field_28493 SMOOTH_SANDSTONE + f Lnet/minecraft/class_5794; field_28481 GRANITE + f Lnet/minecraft/class_5794; field_28497 STONE + f Lnet/minecraft/class_5794; field_28485 PRISMARINE + f Lnet/minecraft/class_5794; field_28510 BLACKSTONE + f Lnet/minecraft/class_5794; field_47133 TUFF_BRICK + f Lnet/minecraft/class_5794; field_28489 QUARTZ_BLOCK + f Lnet/minecraft/class_5794; field_28522 OXIDIZED_CUT_COPPER + f Lnet/minecraft/class_5794; field_28946 DEEPSLATE + f Lnet/minecraft/class_5794; field_28514 END_STONE_BRICK + f Lnet/minecraft/class_5794; field_28502 CRIMSON + f Lnet/minecraft/class_5794; field_28516 CUT_COPPER + f Lnet/minecraft/class_5794; field_28504 OAK + f Lnet/minecraft/class_5794; field_28508 ANDESITE + f Ljava/lang/String; field_33117 WOODEN_GROUP + c The group used for the recipes of wooden block families. + f Lnet/minecraft/class_5794; field_33683 WAXED_OXIDIZED_COPPER + f Lnet/minecraft/class_5794; field_29079 COBBLED_DEEPSLATE + f Lnet/minecraft/class_5794; field_38008 MUD_BRICK + f Lnet/minecraft/class_5794; field_33688 WEATHERED_COPPER + f Lnet/minecraft/class_5794; field_38007 MANGROVE + f Lnet/minecraft/class_5794; field_28490 SMOOTH_QUARTZ + f Lnet/minecraft/class_5794; field_28482 POLISHED_GRANITE + f Lnet/minecraft/class_5794; field_28494 RED_SANDSTONE + f Lnet/minecraft/class_5794; field_28486 PURPUR + f Lnet/minecraft/class_5794; field_28949 DEEPSLATE_BRICK + f Lnet/minecraft/class_5794; field_28498 STONE_BRICK + f Ljava/util/Map; field_28499 BASE_BLOCKS_TO_FAMILIES + f Lnet/minecraft/class_5794; field_28523 COBBLESTONE + f Lnet/minecraft/class_5794; field_28511 POLISHED_BLACKSTONE + f Lnet/minecraft/class_5794; field_47132 POLISHED_TUFF + f Lnet/minecraft/class_5794; field_28503 JUNGLE + f Lnet/minecraft/class_5794; field_28505 DARK_OAK + f Lnet/minecraft/class_5794; field_28517 WAXED_CUT_COPPER + f Lnet/minecraft/class_5794; field_28509 POLISHED_ANDESITE + f Lnet/minecraft/class_5794; field_42942 CHERRY + f Lnet/minecraft/class_5794; field_33684 COPPER_BLOCK + f Lnet/minecraft/class_5794; field_28491 SANDSTONE + f Lnet/minecraft/class_5794; field_33685 WAXED_COPPER_BLOCK + f Lnet/minecraft/class_5794; field_40590 BAMBOO_MOSAIC + f Lnet/minecraft/class_5794; field_28495 CUT_RED_SANDSTONE + f Lnet/minecraft/class_5794; field_28483 NETHER_BRICK + f Lnet/minecraft/class_5794; field_33419 WAXED_OXIDIZED_CUT_COPPER + f Lnet/minecraft/class_5794; field_28487 PRISMARINE_BRICK + f Lnet/minecraft/class_5794; field_28520 WEATHERED_CUT_COPPER + f Lnet/minecraft/class_5794; field_28948 DEEPSLATE_TILE + f Lnet/minecraft/class_5794; field_28512 POLISHED_BLACKSTONE_BRICK + f Lnet/minecraft/class_5794; field_28500 ACACIA + f Lnet/minecraft/class_5794; field_47131 TUFF + f Lnet/minecraft/class_5794; field_28524 MOSSY_COBBLESTONE + f Lnet/minecraft/class_5794; field_54877 PALE_OAK + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_33468 register + p 0 baseBlock + m ()Ljava/util/stream/Stream; method_33467 getFamilies +c net/minecraft/class_3131 net/minecraft/server/command/SpreadPlayersCommand + f Lcom/mojang/brigadier/exceptions/Dynamic4CommandExceptionType; field_13735 FAILED_ENTITIES_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic4CommandExceptionType; field_13734 FAILED_TEAMS_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_36326 INVALID_HEIGHT_EXCEPTION + f I field_33397 MAX_ATTEMPTS + m (Ljava/util/Collection;)I method_13652 getPileCountRespectingTeams + p 0 entities + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13654 register + p 0 dispatcher + m (Lnet/minecraft/class_241;DLnet/minecraft/class_3218;Lnet/minecraft/class_5819;DDDDI[Lnet/minecraft/class_3131$class_3132;Z)V method_13661 spread + p 15 respectTeams + p 14 piles + p 13 maxY + p 11 maxZ + p 9 maxX + p 7 minZ + p 5 minX + p 4 random + p 3 world + p 1 spreadDistance + p 0 center + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13658 method_13658 + p 0 context + m (Lnet/minecraft/class_5819;IDDDD)[Lnet/minecraft/class_3131$class_3132; method_13653 makePiles + p 0 random + p 1 count + p 2 minX + p 4 minZ + p 6 maxX + p 8 maxZ + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_39991 method_39991 + p 1 worldBottomY + p 0 maxY + m (Lcom/mojang/brigadier/context/CommandContext;)I method_29193 method_29193 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_241;FFIZLjava/util/Collection;)I method_13656 execute + p 0 source + p 4 maxY + p 3 maxRange + p 2 spreadDistance + p 1 center + p 6 targets + p 5 respectTeams + m (Ljava/util/Collection;Lnet/minecraft/class_3218;[Lnet/minecraft/class_3131$class_3132;IZ)D method_13657 teleport + p 3 maxY + p 2 piles + p 1 world + p 0 entities + p 4 respectTeams + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13655 method_13655 + p 2 z + p 3 maxSpreadDistance + p 0 pilesCount + p 1 x + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13660 method_13660 + p 2 z + p 3 maxSpreadDistance + p 0 pilesCount + p 1 x +c net/minecraft/class_3131$class_3132 net/minecraft/server/command/SpreadPlayersCommand$Pile + f D field_13737 x + f D field_13736 z + m (Lnet/minecraft/class_1922;I)Z method_13662 isSafe + p 2 maxY + p 1 world + m (Lnet/minecraft/class_3131$class_3132;)D method_13665 getDistance + p 1 other + m ()D method_13668 absolute + m (DDDD)Z method_13666 clamp + p 1 minX + p 5 maxX + p 3 minZ + p 7 maxZ + m (Lnet/minecraft/class_1922;I)I method_13669 getY + p 1 blockView + p 2 maxY + m (Lnet/minecraft/class_3131$class_3132;)V method_13670 subtract + p 1 other + m (Lnet/minecraft/class_5819;DDDD)V method_13667 setPileLocation + p 4 minZ + p 6 maxX + p 2 minX + p 1 random + p 8 maxZ + m ()V method_13671 normalize +c net/minecraft/class_4461 net/minecraft/command/argument/serialize/LongArgumentSerializer + m (Lcom/mojang/brigadier/arguments/LongArgumentType;)Lnet/minecraft/class_4461$class_7223; method_42009 getArgumentTypeProperties + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_4461$class_7223; method_21691 fromPacket + m (Lnet/minecraft/class_4461$class_7223;Lcom/google/gson/JsonObject;)V method_21689 writeJson + m (Lnet/minecraft/class_4461$class_7223;Lnet/minecraft/class_2540;)V method_21690 writePacket +c net/minecraft/class_4461$class_7223 net/minecraft/command/argument/serialize/LongArgumentSerializer$Properties + f J field_37992 max + f J field_37991 min + m (Lnet/minecraft/class_7157;)Lcom/mojang/brigadier/arguments/LongArgumentType; method_42010 createType + m (Lnet/minecraft/class_4461;JJ)V + p 2 min + p 4 max +c net/minecraft/class_3136 net/minecraft/server/command/StopSoundCommand + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_3419;Lnet/minecraft/class_2960;)I method_13685 execute + p 2 category + p 3 sound + p 0 source + p 1 targets + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13683 method_13683 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13680 method_13680 + p 0 context + m (Lnet/minecraft/class_3419;Lcom/mojang/brigadier/context/CommandContext;)I method_13686 method_13686 + p 1 context + m (Lnet/minecraft/class_3419;Lcom/mojang/brigadier/context/CommandContext;)I method_13684 method_13684 + p 1 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13681 register + p 0 dispatcher +c net/minecraft/class_3137 net/minecraft/world/gen/feature/RandomBooleanFeatureConfig + f Lnet/minecraft/class_6880; field_13739 featureFalse + f Lcom/mojang/serialization/Codec; field_24900 CODEC + f Lnet/minecraft/class_6880; field_13740 featureTrue + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;)V + p 1 featureTrue + p 2 featureFalse + m (Lnet/minecraft/class_3137;)Lnet/minecraft/class_6880; method_28749 method_28749 + p 0 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28750 method_28750 + p 0 instance + m (Lnet/minecraft/class_3137;)Lnet/minecraft/class_6880; method_28751 method_28751 + p 0 config +c net/minecraft/class_5798 net/minecraft/util/thread/LockHelper + f Lnet/minecraft/class_148; field_36298 crashException + f Ljava/util/concurrent/locks/Lock; field_36296 lock + f Ljava/util/concurrent/Semaphore; field_36295 semaphore + f Lorg/slf4j/Logger; field_36293 LOGGER + f Ljava/lang/Thread; field_36297 thread + f Ljava/lang/String; field_36294 name + m (Ljava/lang/Thread;)Ljava/lang/String; method_39936 formatStackTraceForThread + p 0 thread + m (Ljava/lang/String;)V + p 1 name + m ()V method_39935 lock + m (Ljava/lang/String;Ljava/lang/Thread;)Lnet/minecraft/class_148; method_33564 crash + p 0 message + p 1 thread + m ()V method_39937 unlock +c net/minecraft/class_3138 net/minecraft/server/command/SummonCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_61081 FAILED_PEACEFUL_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13741 FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_26629 FAILED_UUID_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_22254 INVALID_POSITION_EXCEPTION + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_243;Lnet/minecraft/class_2487;Z)Lnet/minecraft/class_1297; method_48758 summon + p 4 initialize + p 1 entityType + p 0 source + p 3 nbt + p 2 pos + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13692 method_13692 + p 0 context + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1297; method_48759 method_48759 + p 1 entity + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13690 register + p 1 registryAccess + p 0 dispatcher + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_243;Lnet/minecraft/class_2487;Z)I method_13694 execute + p 2 pos + p 1 entityType + p 0 source + p 4 initialize + p 3 nbt + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13691 method_13691 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13689 method_13689 + p 0 context +c net/minecraft/class_3133 net/minecraft/world/gen/ProbabilityConfig + f Lcom/mojang/serialization/Codec; field_24899 CODEC + f F field_13738 probability + m (F)V + p 1 probability + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28748 method_28748 + p 0 instance +c net/minecraft/class_4463 net/minecraft/network/packet/s2c/play/PlayerActionResponseS2CPacket + f Lnet/minecraft/class_9139; field_47901 CODEC + f I comp_633 sequence + m (Lnet/minecraft/class_2602;)V method_21708 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_55858 write + p 1 buf + m ()I comp_633 sequence + m (I)V + p 1 sequence +c net/minecraft/class_5794 net/minecraft/data/family/BlockFamily + f Lnet/minecraft/class_2248; field_28526 baseBlock + f Ljava/lang/String; field_28530 group + f Ljava/lang/String; field_28531 unlockCriterionName + f Ljava/util/Map; field_28527 variants + f Z field_28528 generateModels + f Z field_28529 generateRecipes + m (Lnet/minecraft/class_5794$class_5796;)Lnet/minecraft/class_2248; method_33470 getVariant + p 1 variant + m ()Ljava/util/Optional; method_33480 getUnlockCriterionName + m ()Z method_33477 shouldGenerateModels + m ()Z method_33478 shouldGenerateRecipes + m ()Ljava/util/Map; method_33474 getVariants + m (Lnet/minecraft/class_2248;)V + p 1 baseBlock + m ()Ljava/util/Optional; method_33479 getGroup + m ()Lnet/minecraft/class_2248; method_33469 getBaseBlock +c net/minecraft/class_5794$class_5796 net/minecraft/data/family/BlockFamily$Variant + f Ljava/lang/String; field_28546 name + f Lnet/minecraft/class_5794$class_5796; field_40594 MOSAIC + f Lnet/minecraft/class_5794$class_5796; field_40593 CUSTOM_FENCE_GATE + f Lnet/minecraft/class_5794$class_5796; field_40592 CUSTOM_FENCE + f Lnet/minecraft/class_5794$class_5796; field_28539 SLAB + f Lnet/minecraft/class_5794$class_5796; field_28538 SIGN + f Lnet/minecraft/class_5794$class_5796; field_28537 FENCE_GATE + f Lnet/minecraft/class_5794$class_5796; field_28536 FENCE + f Lnet/minecraft/class_5794$class_5796; field_28545 WALL_SIGN + f Lnet/minecraft/class_5794$class_5796; field_28544 WALL + f Lnet/minecraft/class_5794$class_5796; field_28543 TRAPDOOR + f Lnet/minecraft/class_5794$class_5796; field_28542 POLISHED + f Lnet/minecraft/class_5794$class_5796; field_28541 PRESSURE_PLATE + f Lnet/minecraft/class_5794$class_5796; field_28540 STAIRS + f Lnet/minecraft/class_5794$class_5796; field_28535 DOOR + f Lnet/minecraft/class_5794$class_5796; field_28534 CHISELED + f Lnet/minecraft/class_5794$class_5796; field_28533 BUTTON + f Lnet/minecraft/class_5794$class_5796; field_29503 CRACKED + f Lnet/minecraft/class_5794$class_5796; field_33689 CUT + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()Ljava/lang/String; method_33498 getName +c net/minecraft/class_5794$class_5795 net/minecraft/data/family/BlockFamily$Builder + f Lnet/minecraft/class_5794; field_28532 family + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_33483 sign + p 2 wallBlock + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_34593 cracked + p 1 block + m (Ljava/lang/String;)Lnet/minecraft/class_5794$class_5795; method_33487 unlockCriterionName + p 1 unlockCriterionName + m (Ljava/lang/String;)Lnet/minecraft/class_5794$class_5795; method_33484 group + p 1 group + m ()Lnet/minecraft/class_5794$class_5795; method_33488 noGenerateRecipes + m ()Lnet/minecraft/class_5794$class_5795; method_33485 noGenerateModels + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_33489 door + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_33495 polished + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_33494 pressurePlate + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_33486 chiseled + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_33497 wall + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_33496 trapdoor + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_33491 fenceGate + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_45966 customFence + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_33490 fence + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_36544 cut + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_45965 mosaic + p 1 block + m (Lnet/minecraft/class_2248;)V + p 1 baseBlock + m ()Lnet/minecraft/class_5794; method_33481 build + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_33482 button + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_33493 stairs + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_33492 slab + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_5794$class_5795; method_45967 customFenceGate + p 1 block +c net/minecraft/class_3134 net/minecraft/server/dedicated/command/StopCommand + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13675 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13676 method_13676 + p 0 context +c net/minecraft/class_4466 net/minecraft/entity/passive/BeeEntity + f I field_30291 TOO_FAR_DISTANCE + c The minimum distance that bees lose their hive or flower position at. + f F field_20356 currentPitch + f I field_30283 HAS_NECTAR_FLAG + f Ljava/lang/String; field_30279 FLOWER_POS_KEY + f I field_21643 ticksLeftToFindHive + f I field_20360 cannotEnterHiveTicks + f Lnet/minecraft/class_4466$class_4472; field_21645 moveToHiveGoal + f Lnet/minecraft/class_10583; field_25364 angryAt + f Lnet/minecraft/class_6019; field_25363 ANGER_TIME_RANGE + f I field_57604 DEFAULT_CROPS_GROWN_SINCE_POLLINATION + f Lnet/minecraft/class_2940; field_20353 BEE_FLAGS + f Ljava/lang/String; field_30272 CROPS_GROWN_SINCE_POLLINATION_KEY + f I field_20359 ticksSincePollination + f Ljava/lang/String; field_30280 HIVE_POS_KEY + f I field_30284 MAX_LIFETIME_AFTER_STINGING + f I field_30288 MAX_POLLINATED_CROPS + f Ljava/lang/String; field_30276 TICKS_SINCE_POLLINATION_KEY + f I field_21509 ticksInsideWater + f Lnet/minecraft/class_2940; field_63320 ANGER_END_TIME + f I field_57603 DEFAULT_CANNOT_ENTER_HIVE_TICKS + f Ljava/lang/String; field_30273 CANNOT_ENTER_HIVE_TICKS_KEY + f I field_30281 NEAR_TARGET_FLAG + f I field_30293 MIN_HIVE_RETURN_DISTANCE + c The minimum distance that bees will immediately return to their hive at. + f I field_30285 FLOWER_NAVIGATION_START_TICKS + c A bee will start moving to a flower once this time in ticks has passed from a pollination. + f Z field_57601 DEFAULT_HAS_STUNG + f I field_30289 NORMAL_DIFFICULTY_STING_POISON_DURATION + f Ljava/lang/String; field_30277 HAS_STUNG_KEY + f Lnet/minecraft/class_4466$class_4473; field_21646 moveToFlowerGoal + f Lnet/minecraft/class_4466$class_4478; field_21079 pollinateGoal + f I field_20358 ticksSinceSting + f Lnet/minecraft/class_2338; field_20363 hivePos + f I field_57602 DEFAULT_TICKS_SINCE_POLLINATION + f I field_30290 HARD_DIFFICULTY_STING_POISON_DURATION + f F field_20357 lastPitch + f I field_30282 HAS_STUNG_FLAG + f I field_21644 ticksUntilCanPollinate + f Ljava/lang/String; field_30278 HAS_NECTAR_KEY + f Z field_57600 DEFAULT_HAS_NECTAR + f I field_30286 POLLINATION_FAIL_TICKS + c The duration in ticks when a bee's pollination is considered failed. + f I field_20361 cropsGrownSincePollination + f Lnet/minecraft/class_2338; field_20362 flowerPos + m (Lnet/minecraft/class_2680;)Z method_65348 isAttractive + p 0 state + m (Lnet/minecraft/class_2338;)V method_21797 setFlowerPos + p 1 flowerPos + m (Lnet/minecraft/class_2338;)Z method_23988 doesHiveHaveSpace + p 1 pos + m ()Z method_21791 hasHivePos + m (Lnet/minecraft/class_1799;)Z method_58363 method_58363 + p 0 stack + m (Lnet/minecraft/class_2338;)V method_57301 setHivePos + p 1 pos + m ()V method_21780 resetPollinationTicks + m ()Z method_21784 hasNectar + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_4466; method_21771 createChild + m ()Z method_23983 failedPollinatingTooLong + m ()V method_61464 clearFlowerPos + m (Z)V method_21805 setHasNectar + p 1 hasNectar + m ()V method_21788 onHoneyDelivered + m ()I method_21792 getCropsGrownSincePollination + m (Lnet/minecraft/class_1937;DDDDDLnet/minecraft/class_2394;)V method_21769 addParticle + p 6 lastZ + p 4 x + p 2 lastX + p 1 world + p 12 effect + p 10 y + p 8 z + m ()Lnet/minecraft/class_2338; method_21778 getFlowerPos + m ()Z method_21785 hasStung + m ()V method_21793 addCropCounter + m ()Z method_21789 canEnterHive + m (IZ)V method_21775 setBeeFlag + p 2 value + p 1 bit + m (Z)V method_21806 setHasStung + p 1 hasStung + m ()V method_61463 clearHivePos + m ()Lnet/minecraft/class_1355; method_35163 getGoalSelector + m (I)V method_21807 setCannotEnterHiveTicks + p 1 cannotEnterHiveTicks + m (Lnet/minecraft/class_2338;I)Z method_23979 isWithinDistance + p 1 pos + p 2 distance + m ()Lnet/minecraft/class_4482; method_65073 getHive + m ()V method_21790 updateBodyPitch + m ()Z method_21794 hasValidHive + m ()Z method_21786 isNearTarget + m ()Lnet/minecraft/class_5132$class_5133; method_26880 createBeeAttributes + m (Lnet/minecraft/class_2338;)Z method_23990 isTooFar + p 1 pos + m (Lnet/minecraft/class_2338;)V method_23987 startMovingTo + p 1 pos + m ()Ljava/util/List; method_35162 getPossibleHives + m (F)F method_21811 getBodyPitch + p 1 tickProgress + m ()I method_35161 getMoveGoalTicks + m ()Lnet/minecraft/class_2338; method_23884 getHivePos + m ()Z method_23984 isHiveNearFire + m ()V method_21783 resetCropCounter + m ()Z method_21779 hasFlower + m (Z)V method_21808 setNearTarget + p 1 nearTarget + m (I)Z method_21812 getBeeFlag + p 1 location +c net/minecraft/class_4466$class_4473 net/minecraft/entity/passive/BeeEntity$MoveToFlowerGoal + f I field_21650 ticks + f I field_30298 MAX_FLOWER_NAVIGATION_TICKS + m ()Z method_24013 shouldMoveToFlower +c net/minecraft/class_4466$class_4474 net/minecraft/entity/passive/BeeEntity$GrowCropsGoal +c net/minecraft/class_4466$class_4475 net/minecraft/entity/passive/BeeEntity$BeeRevengeGoal + m (Lnet/minecraft/class_4466;Lnet/minecraft/class_4466;)V + p 2 bee +c net/minecraft/class_4466$class_4476 net/minecraft/entity/passive/BeeEntity$FindHiveGoal + m ()Ljava/util/List; method_23742 getNearbyFreeHives + m (Lnet/minecraft/class_6880;)Z method_23743 method_23743 + p 0 poiType +c net/minecraft/class_4466$class_4470 net/minecraft/entity/passive/BeeEntity$EnterHiveGoal +c net/minecraft/class_4466$class_4472 net/minecraft/entity/passive/BeeEntity$MoveToHiveGoal + f Lnet/minecraft/class_11; field_21649 path + f I field_23133 ticksUntilLost + f I field_21647 ticks + f Ljava/util/List; field_21648 possibleHives + m ()V method_24011 clearPossibleHives + m (Lnet/minecraft/class_2338;)Z method_24007 isPossibleHive + p 1 pos + m (Lnet/minecraft/class_2338;)Z method_24006 startMovingToFar + p 1 pos + m (Lnet/minecraft/class_2338;)Z method_24010 isCloseEnough + p 1 pos + m (Lnet/minecraft/class_2338;)V method_24009 addPossibleHive + p 1 pos + m ()V method_24012 makeChosenHivePossibleHive +c net/minecraft/class_4466$class_4477 net/minecraft/entity/passive/BeeEntity$BeeLookControl + m (Lnet/minecraft/class_4466;Lnet/minecraft/class_1308;)V + p 2 entity +c net/minecraft/class_4466$class_4478 net/minecraft/entity/passive/BeeEntity$PollinateGoal + f I field_20379 lastPollinationTick + f Lit/unimi/dsi/fastutil/longs/Long2LongOpenHashMap; field_52459 unreachableFlowerPosCache + f Z field_21080 running + f I field_20378 pollinationTicks + f Lnet/minecraft/class_243; field_21511 nextTarget + f I field_21651 ticks + m ()Z method_23346 isRunning + m ()Ljava/util/Optional; method_21821 getFlower + m ()F method_23750 getRandomOffset + m ()Z method_21820 completedPollination + m ()V method_23748 cancel + m ()V method_23749 moveToNextTarget +c net/minecraft/class_4466$class_4479 net/minecraft/entity/passive/BeeEntity$BeeWanderAroundGoal + m ()Lnet/minecraft/class_243; method_21822 getRandomLocation + m ()I method_61465 getMaxWanderDistance +c net/minecraft/class_4466$class_9867 net/minecraft/entity/passive/BeeEntity$ValidateFlowerGoal + f I field_52461 ticksUntilNextValidate + f J field_52462 lastValidateTime + m (Lnet/minecraft/class_2338;)Z method_61466 isFlower + p 1 pos +c net/minecraft/class_4466$class_9868 net/minecraft/entity/passive/BeeEntity$ValidateHiveGoal + f I field_52464 ticksUntilNextValidate + f J field_52465 lastValidateTime +c net/minecraft/class_4466$class_4467 net/minecraft/entity/passive/BeeEntity$NotAngryGoal + m ()Z method_6264 canStart + m ()Z method_21815 canBeeContinue + m ()Z method_6266 shouldContinue + m ()Z method_21814 canBeeStart +c net/minecraft/class_4466$class_4468 net/minecraft/entity/passive/BeeEntity$StingGoal + m (Lnet/minecraft/class_4466;Lnet/minecraft/class_1314;DZ)V + p 2 mob + p 5 pauseWhenMobIdle + p 3 speed +c net/minecraft/class_4466$class_4469 net/minecraft/entity/passive/BeeEntity$StingTargetGoal + m ()Z method_21816 canSting + m (Lnet/minecraft/class_4466;)V + p 1 bee +c net/minecraft/class_5797 net/minecraft/data/recipe/CraftingRecipeJsonBuilder + f Lnet/minecraft/class_2960; field_39377 ROOT + m (Lnet/minecraft/class_7800;)Lnet/minecraft/class_7710; method_55308 toCraftingCategory + p 0 category + m (Lnet/minecraft/class_8790;Lnet/minecraft/class_5321;)V method_17972 offerTo + p 1 exporter + p 2 recipeKey + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_2960; method_36442 getItemId + p 0 item + m (Ljava/lang/String;Lnet/minecraft/class_175;)Lnet/minecraft/class_5797; method_33530 criterion + p 2 criterion + p 1 name + m ()Lnet/minecraft/class_1792; method_36441 getOutputItem + m (Ljava/lang/String;)Lnet/minecraft/class_5797; method_33529 group + p 1 group + m (Lnet/minecraft/class_8790;)V method_10431 offerTo + p 1 exporter + m (Lnet/minecraft/class_8790;Ljava/lang/String;)V method_36443 offerTo + p 1 exporter + p 2 recipePath +c net/minecraft/class_3135 net/minecraft/world/gen/feature/RandomBooleanFeature +c net/minecraft/class_4465 net/minecraft/datafixer/schema/Schema2100 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V method_21746 registerEntity + p 1 entityTypes + p 2 name + p 0 schema + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_5760 net/minecraft/entity/ai/brain/sensor/TemptationsSensor + f Ljava/util/function/BiPredicate; field_28331 predicate + f Lnet/minecraft/class_4051; field_28330 TEMPTER_PREDICATE + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1799;)Z method_33216 test + p 1 entity + p 2 stack + m ()Lnet/minecraft/class_5760; method_76096 breedingItem + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;)V method_33213 sense + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1657;)Z method_33215 test + p 1 entity + p 2 player + m (Ljava/util/function/BiPredicate;)V + p 1 predicate + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_3222;)Z method_45339 method_45339 + p 1 playerx + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1799;)Z method_76098 method_76098 + p 1 stack + p 0 entity + m (Ljava/util/function/Predicate;Lnet/minecraft/class_1314;Lnet/minecraft/class_1799;)Z method_76095 method_76095 + p 1 entity + p 2 stack + m (Lnet/minecraft/class_4051;Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;Lnet/minecraft/class_3222;)Z method_33217 method_33217 + p 3 player + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_3222;)Z method_76097 method_76097 + p 2 player + m (Ljava/util/function/Predicate;)V + p 1 predicate +c net/minecraft/class_3103 net/minecraft/world/gen/feature/DungeonFeature + f Lnet/minecraft/class_2680; field_13698 AIR + f [Lnet/minecraft/class_1299; field_13699 MOB_SPAWNER_ENTITIES + f Lorg/slf4j/Logger; field_13700 LOGGER + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_1299; method_13547 getMobSpawnerEntity + p 1 random +c net/minecraft/class_5766 net/minecraft/entity/ai/pathing/AmphibiousSwimNavigation + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1937;)V + p 2 world +c net/minecraft/class_4435 net/minecraft/client/realms/task/CloseServerTask + f Lnet/minecraft/class_4877; field_20212 serverData + f Lnet/minecraft/class_2561; field_46132 TITLE + f Lnet/minecraft/class_4388; field_20213 configureScreen + f Lorg/slf4j/Logger; field_36354 LOGGER + m (Lnet/minecraft/class_4877;Lnet/minecraft/class_4388;)V + p 1 realmsServer + p 2 configureWorldScreen +c net/minecraft/class_3104 net/minecraft/server/dedicated/command/SaveAllCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13701 FAILED_EXCEPTION + m (Lnet/minecraft/class_2168;Z)I method_13550 saveAll + p 1 flush + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13553 method_13553 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13549 method_13549 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13551 register + p 0 dispatcher +c net/minecraft/class_5768 net/minecraft/entity/passive/AxolotlBrain + c Represents the definition of an {@linkplain AxolotlEntity axolotl entity} brain.\n\n

\n\n\n\n \n\n\n \n \n\n\n \n \n\n\n \n \n\n\n \n \n\n
Activities associated to the {@linkplain AxolotlEntity axolotl entity} brain
ActivityTasks
{@link net.minecraft.entity.ai.brain.Activity#CORE}
    \n
  • {@link net.minecraft.entity.ai.brain.task.UpdateLookControlTask}
  • \n
  • {@link net.minecraft.entity.ai.brain.task.MoveToTargetTask}
  • \n
  • {@link net.minecraft.entity.ai.brain.task.PlayDeadTimerTask}
  • \n
  • {@link net.minecraft.entity.ai.brain.task.TickCooldownTask}
  • \n
{@link net.minecraft.entity.ai.brain.Activity#IDLE}
    \n
  • {@link net.minecraft.entity.ai.brain.task.LookAtMobTask LookAtMobTask(PLAYER)} (time limited)
  • \n
  • {@link net.minecraft.entity.ai.brain.task.BreedTask}
  • \n
  • {@link net.minecraft.entity.ai.brain.task.TemptTask} (random)
  • \n
  • {@link net.minecraft.entity.ai.brain.task.WalkTowardsClosestAdultTask}
  • \n
  • {@link net.minecraft.entity.ai.brain.task.UpdateAttackTargetTask}
  • \n
  • {@link net.minecraft.entity.ai.brain.task.SeekWaterTask}
  • \n
  • {@link net.minecraft.entity.ai.brain.task.CompositeTask}
  • \n
{@link net.minecraft.entity.ai.brain.Activity#FIGHT}
    \n
  • {@link net.minecraft.entity.ai.brain.task.ForgetAttackTargetTask}
  • \n
  • {@link net.minecraft.entity.ai.brain.task.RangedApproachTask}
  • \n
  • {@link net.minecraft.entity.ai.brain.task.MeleeAttackTask}
  • \n
  • {@link net.minecraft.entity.ai.brain.task.ForgetTask}
  • \n
{@link net.minecraft.entity.ai.brain.Activity#PLAY_DEAD}
    \n
  • {@link net.minecraft.entity.ai.brain.task.PlayDeadTask}
  • \n
  • {@link net.minecraft.entity.ai.brain.task.ForgetTask}
  • \n
\n
+ f F field_30394 BREEDING_SPEED + f F field_30397 TARGET_APPROACHING_SPEED + f F field_30398 ADULT_FOLLOWING_SPEED + f F field_30395 ON_LAND_SPEED + f Lnet/minecraft/class_6019; field_28351 WALK_TOWARD_ADULT_RANGE + f F field_30396 IDLE_SPEED + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5762;)Ljava/util/Optional; method_33247 getAttackTarget + p 1 axolotl + p 0 world + m (Lnet/minecraft/class_1309;)Z method_37457 canGoToLookTarget + p 0 entity + m (Lnet/minecraft/class_1309;)F method_33248 getTemptedSpeed + c {@return the axolotl's speed when the axolotl is being tempted} + p 0 entity + m (Lnet/minecraft/class_1309;)F method_33242 getTargetApproachingSpeed + c {@return the axolotl's speed when approaching the attack target} + p 0 entity + m (Lnet/minecraft/class_1309;)F method_33245 getAdultFollowingSpeed + c {@return the axolotl's speed when a baby axolotl is following an adult} + p 0 entity + m (Lnet/minecraft/class_4095;)V method_33251 addCoreActivities + p 0 brain + m (Lnet/minecraft/class_4095;)V method_33252 addIdleActivities + p 0 brain + m (Lnet/minecraft/class_5762;)V method_33244 updateActivities + p 0 axolotl + m (Lnet/minecraft/class_4095;)V method_33246 addPlayDeadActivities + p 0 brain + m (Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_33243 create + p 0 brain + m (Lnet/minecraft/class_4095;)V method_33249 addFightActivities + p 0 brain +c net/minecraft/class_4437 net/minecraft/client/realms/task/OpenServerTask + f Lnet/minecraft/class_310; field_34016 client + f Lnet/minecraft/class_437; field_20219 returnScreen + f Lnet/minecraft/class_4877; field_20218 serverData + f Lorg/slf4j/Logger; field_36357 LOGGER + f Lnet/minecraft/class_2561; field_46137 TITLE + f Z field_20220 join + m (Lnet/minecraft/class_4877;Lnet/minecraft/class_437;ZLnet/minecraft/class_310;)V + p 4 client + p 3 join + p 2 returnScreen + p 1 realmsServer +c net/minecraft/class_3106 net/minecraft/server/dedicated/command/SaveOffCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13703 ALREADY_OFF_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13557 method_13557 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13556 register + p 0 dispatcher +c net/minecraft/class_4436 net/minecraft/client/realms/task/DownloadTask + f Lnet/minecraft/class_437; field_20216 lastScreen + f Ljava/lang/String; field_20217 downloadName + f J field_20214 worldId + f I field_20215 slot + f Lnet/minecraft/class_2561; field_46134 TITLE + f Lorg/slf4j/Logger; field_36355 LOGGER + m (JILjava/lang/String;Lnet/minecraft/class_437;)V + p 3 slot + p 4 downloadName + p 1 worldId + p 5 lastScreen +c net/minecraft/class_5762 net/minecraft/entity/passive/AxolotlEntity + c Represents an axolotl, the cutest predator.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Relations of this entity class with the codebase
RelationClass
Brain{@link AxolotlBrain}
EntityData{@link AxolotlData}
Look Control{@link AxolotlLookControl}
Model{@link net.minecraft.client.render.entity.model.AxolotlEntityModel}
Move Control{@link AxolotlMoveControl}
Renderer{@link net.minecraft.client.render.entity.AxolotlEntityRenderer}
Variants{@link Variant}
\n
+ f Lnet/minecraft/class_9849; field_52481 isMovingFf + f I field_30390 BLUE_BABY_CHANCE + f I field_34005 MAX_REGENERATION_BUFF_DURATION + f I field_30392 MAX_AIR + f Lnet/minecraft/class_9849; field_52479 inWaterFf + f Lnet/minecraft/class_2940; field_28336 PLAYING_DEAD + f I field_30388 PLAY_DEAD_TICKS + f Lcom/google/common/collect/ImmutableList; field_28333 SENSORS + f I field_33485 HYDRATION_BY_POTION + f Lcom/google/common/collect/ImmutableList; field_28334 MEMORY_MODULES + f Ljava/lang/String; field_30391 VARIANT_KEY + f Lnet/minecraft/class_9849; field_52480 onGroundFf + f Z field_57622 DEFAULT_FROM_BUCKET + f Lnet/minecraft/class_9849; field_52478 playingDeadFf + f I field_30393 BUFF_DURATION + f Lnet/minecraft/class_2940; field_28335 VARIANT + f Lnet/minecraft/class_2940; field_28337 FROM_BUCKET + f D field_30389 BUFF_RANGE + m ()Z method_33226 isPlayingDead + m (Lnet/minecraft/class_2487;)V method_57305 method_57305 + p 1 nbt + m ()Lnet/minecraft/class_5762$class_5767; method_33225 getVariant + m (Z)V method_33231 setPlayingDead + p 1 playingDead + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_5425;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_38987 canSpawn + p 2 reason + p 1 world + p 0 type + p 4 random + p 3 pos + m ()V method_36282 hydrateFromPotion + m ()Lnet/minecraft/class_5132$class_5133; method_33227 createAxolotlAttributes + m ()V method_61479 tickClient + m (Lnet/minecraft/class_5819;)Z method_33221 shouldBabyBeDifferent + p 0 random + m (Lnet/minecraft/class_1657;)V method_33223 buffPlayer + p 1 player + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5762;Lnet/minecraft/class_1309;)V method_35175 appreciatePlayer + p 1 axolotl + p 2 target + p 0 world + m (Lnet/minecraft/class_2487;Ljava/lang/Long;)V method_68269 method_68269 + p 2 huntingCooldown + m (Lnet/minecraft/class_5762$class_5767;)V method_33219 setVariant + p 1 variant + m (Lnet/minecraft/class_3218;I)V method_33230 tickAir + p 2 air + p 1 world +c net/minecraft/class_5762$class_5765 net/minecraft/entity/passive/AxolotlEntity$AxolotlMoveControl + f Lnet/minecraft/class_5762; field_28340 axolotl + m (Lnet/minecraft/class_5762;)V + p 1 axolotl +c net/minecraft/class_5762$class_5764 net/minecraft/entity/passive/AxolotlEntity$AxolotlLookControl + m (Lnet/minecraft/class_5762;Lnet/minecraft/class_5762;I)V + p 3 yawAdjustThreshold + p 2 axolotl +c net/minecraft/class_5762$class_5763 net/minecraft/entity/passive/AxolotlEntity$AxolotlData + f [Lnet/minecraft/class_5762$class_5767; field_28338 variants + m ([Lnet/minecraft/class_5762$class_5767;)V + p 1 variants + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_5762$class_5767; method_33232 getRandomVariant + p 1 random +c net/minecraft/class_5762$class_5767 net/minecraft/entity/passive/AxolotlEntity$Variant + f Lcom/mojang/serialization/Codec; field_41585 CODEC + f Lcom/mojang/serialization/Codec; field_56659 INDEX_CODEC + f Lnet/minecraft/class_9139; field_55970 PACKET_CODEC + f Ljava/util/function/IntFunction; field_28346 INDEX_MAPPER + f Z field_28349 natural + f Lnet/minecraft/class_5762$class_5767; field_57623 DEFAULT + f Ljava/lang/String; field_28348 id + f I field_28347 index + f Lnet/minecraft/class_5762$class_5767; field_28341 LUCY + f Lnet/minecraft/class_5762$class_5767; field_28342 WILD + f Lnet/minecraft/class_5762$class_5767; field_28343 GOLD + f Lnet/minecraft/class_5762$class_5767; field_28344 CYAN + f Lnet/minecraft/class_5762$class_5767; field_28345 BLUE + m (I)Lnet/minecraft/class_5762$class_5767; method_47928 byIndex + p 0 index + m (Ljava/lang/String;IILjava/lang/String;Z)V + p 5 natural + p 4 id + p 3 index + m (Lnet/minecraft/class_5819;Z)Lnet/minecraft/class_5762$class_5767; method_33236 getRandom + p 1 natural + p 0 random + m ()I method_33233 getIndex + m ()Ljava/lang/String; method_33238 getId + m (ZLnet/minecraft/class_5762$class_5767;)Z method_33237 method_33237 + p 1 variant + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_5762$class_5767; method_33240 getRandomUnnatural + p 0 random + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_5762$class_5767; method_33235 getRandomNatural + p 0 random +c net/minecraft/class_5762$class_9870 net/minecraft/entity/passive/AxolotlEntity$State + f Lnet/minecraft/class_5762$class_9870; field_52486 IN_AIR + f Lnet/minecraft/class_5762$class_9870; field_52485 ON_GROUND + f Lnet/minecraft/class_5762$class_9870; field_52484 IN_WATER + f Lnet/minecraft/class_5762$class_9870; field_52483 PLAYING_DEAD +c net/minecraft/class_4431 net/minecraft/client/realms/util/JsonUtils + m (Ljava/lang/String;Lcom/google/gson/JsonObject;)Ljava/time/Instant; method_21544 getInstantOr + p 0 key + p 1 node + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Ljava/util/function/Function;)Ljava/lang/Object; method_49596 get + p 2 deserializer + p 0 key + p 1 node + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Ljava/util/UUID;)Ljava/util/UUID; method_49595 getUuidOr + p 0 key + p 2 defaultValue + p 1 node + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Ljava/lang/String;)Ljava/lang/String; method_21547 getNullableStringOr + p 2 defaultValue + p 0 key + p 1 node + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Ljava/util/function/Function;)Ljava/lang/Object; method_54115 getNullable + p 0 key + p 1 node + p 2 deserializer + m (Ljava/lang/String;Lcom/google/gson/JsonObject;J)J method_21546 getLongOr + p 1 node + p 2 defaultValue + p 0 key + m (Ljava/lang/String;Lcom/google/gson/JsonObject;I)I method_21545 getIntOr + p 2 defaultValue + p 0 key + p 1 node + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Z)Z method_21548 getBooleanOr + p 0 key + p 1 node + p 2 defaultValue + m (Ljava/lang/String;Lcom/google/gson/JsonObject;)Ljava/lang/String; method_49594 getString + p 1 node + p 0 key +c net/minecraft/class_5761 net/minecraft/entity/Bucketable + m ()Lnet/minecraft/class_3414; method_35171 getBucketFillSound + m (Z)V method_6454 setFromBucket + p 1 fromBucket + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_2487;)V method_35168 copyDataFromNbt + p 1 nbt + p 0 entity + m (Lnet/minecraft/class_2487;)V method_35170 copyDataFromNbt + p 1 nbt + m (Lnet/minecraft/class_1799;)V method_6455 copyDataToStack + p 1 stack + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1309;)Ljava/util/Optional; method_35169 tryBucket + p 2 entity + p 1 hand + p 0 player + m ()Lnet/minecraft/class_1799; method_6452 getBucketItem + m ()Z method_6453 isFromBucket + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1799;)V method_35167 copyDataToStack + p 0 entity + p 1 stack +c net/minecraft/class_4432 net/minecraft/client/realms/util/RealmsPersistence + f Ljava/lang/String; field_32128 FILE_NAME + f Lnet/minecraft/class_4869; field_22729 CHECKED_GSON + f Lorg/slf4j/Logger; field_39744 LOGGER + m (Lnet/minecraft/class_4432$class_4433;)V method_21550 writeFile + p 0 data + m ()Lnet/minecraft/class_4432$class_4433; method_21549 readFile + m ()Ljava/nio/file/Path; method_25279 getFile + m (Lnet/minecraft/class_4432$class_4433;)V method_33424 save + p 1 data + m ()Lnet/minecraft/class_4432$class_4433; method_33423 load +c net/minecraft/class_4432$class_4433 net/minecraft/client/realms/util/RealmsPersistence$RealmsPersistenceData + f Z field_20210 hasUnreadNews + f Ljava/lang/String; field_20209 newsLink +c net/minecraft/class_4428 net/minecraft/client/realms/SizeUnit + c Moved from RealmsUploadScreen.Unit in 20w10a. + f I field_32055 BASE + f Lnet/minecraft/class_4428; field_20202 MB + f Lnet/minecraft/class_4428; field_20201 KB + f Lnet/minecraft/class_4428; field_20200 B + f Lnet/minecraft/class_4428; field_20203 GB + m (JLnet/minecraft/class_4428;)D method_25028 convertToUnit + p 2 unit + p 0 bytes + m (J)Ljava/lang/String; method_25029 getUserFriendlyString + p 0 bytes + m (Ljava/lang/String;)Lnet/minecraft/class_4428; valueOf valueOf + p 0 name + m (J)Lnet/minecraft/class_4428; method_25027 getLargestUnit + p 0 bytes + m (JLnet/minecraft/class_4428;)Ljava/lang/String; method_25030 humanReadableSize + p 2 unit + p 0 bytes +c net/minecraft/class_4427 net/minecraft/client/realms/gui/screen/RealmsUploadScreen + f Ljava/lang/String; field_20183 progress + f Z field_20185 uploadFinished + f [Lnet/minecraft/class_2561; field_20503 statusTexts + f Z field_20187 uploadStarted + f [Ljava/lang/String; field_20191 DOTS + f Ljava/util/concurrent/atomic/AtomicReference; field_54387 uploader + f Lnet/minecraft/class_4351; field_20179 uploadProgress + f Lnet/minecraft/class_4410; field_20175 parent + f Lnet/minecraft/class_2561; field_20182 status + f Lnet/minecraft/class_4185; field_20189 cancelButton + f Lcom/google/common/util/concurrent/RateLimiter; field_20180 narrationRateLimiter + f Lnet/minecraft/class_8132; field_48389 layout + f I field_20178 slotId + f I field_20190 animTick + f Z field_20184 cancelled + f Z field_20186 showDots + f Lnet/minecraft/class_2561; field_26526 VERIFYING_TEXT + f Lnet/minecraft/class_4185; field_20188 backButton + f J field_20177 worldId + f Lnet/minecraft/class_34; field_20176 selectedLevel + f Lnet/minecraft/class_4445; field_48388 creationTask + m (Lnet/minecraft/class_332;)V method_21532 drawProgressBar + p 1 context + m (Ljava/lang/Object;Ljava/lang/Throwable;)Ljava/lang/Object; method_64364 method_64364 + p 2 throwable + p 1 v + m ()V method_21536 upload + m ()V method_21528 onCancel + m (Lnet/minecraft/class_4185;)V method_25277 method_25277 + p 1 button + m (Lnet/minecraft/class_332;J)V method_21526 drawUploadSpeed0 + p 1 context + p 2 bytesPerSecond + m (Lnet/minecraft/class_332;)V method_21534 drawUploadSpeed + p 1 context + m (Lnet/minecraft/class_4445;JILnet/minecraft/class_4410;Lnet/minecraft/class_34;)V + p 1 creationTask + p 2 worldId + p 5 parent + p 4 slotId + p 6 selectedLevel + m ()Lnet/minecraft/class_2561; method_37014 getNarration + m ([Lnet/minecraft/class_2561;)V method_27460 setStatusTexts + p 1 statusTexts + m (Lnet/minecraft/class_4427;Lnet/minecraft/class_364;)V method_56133 method_56133 + p 1 child + m ()V method_21525 onBack + m (Lnet/minecraft/class_4185;)V method_25276 method_25276 + p 1 button +c net/minecraft/class_4429 net/minecraft/client/realms/util/UploadResult + f Ljava/lang/String; comp_5176 errorMessage + f I comp_5175 statusCode + m ()Ljava/lang/String; method_64365 getErrorMessage + m (ILjava/lang/String;)V + p 2 errorMessage + p 1 statusCode + m ()Ljava/lang/String; comp_5176 errorMessage + m ()I comp_5175 statusCode +c net/minecraft/class_4429$class_4430 net/minecraft/client/realms/util/UploadResult$Builder + f Ljava/lang/String; field_20208 errorMessage + f I field_20207 statusCode + m (I)Lnet/minecraft/class_4429$class_4430; method_21542 withStatusCode + p 1 statusCode + m (Ljava/lang/String;)Lnet/minecraft/class_4429$class_4430; method_21543 withErrorMessage + p 1 errorMessage + m ()Lnet/minecraft/class_4429; method_21541 build +c net/minecraft/class_4440 net/minecraft/client/realms/task/ResettingWorldTask + f Lorg/slf4j/Logger; field_36358 LOGGER + f Lnet/minecraft/class_2561; field_20235 title + f Ljava/lang/Runnable; field_22732 callback + f J field_20232 serverId + m (JLnet/minecraft/class_2561;Ljava/lang/Runnable;)V + p 1 serverId + p 3 title + p 4 callback + m (Lnet/minecraft/class_4341;J)V method_32517 resetWorld + p 2 worldId + p 1 client +c net/minecraft/class_5770 net/minecraft/entity/ai/brain/task/PlayDeadTimerTask + m ()Lnet/minecraft/class_7893; method_47268 create + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47269 method_47269 + p 0 context + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47270 method_47270 + p 1 playDeadTicks + p 2 hurtByEntity + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47271 method_47271 + p 3 world + p 4 entity + p 5 time +c net/minecraft/class_4446 net/minecraft/client/realms/util/RealmsTextureManager + f Lnet/minecraft/class_2960; field_22730 ISLES + f Lorg/slf4j/Logger; field_20256 LOGGER + f Ljava/util/Map; field_20253 TEXTURES + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_2960; method_48971 getTextureId + p 0 id + p 1 image + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_2960; method_21564 getTextureIdInternal + p 1 image + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_1011; method_48970 loadImage + p 0 image +c net/minecraft/class_4446$class_4447 net/minecraft/client/realms/util/RealmsTextureManager$RealmsTexture + f Ljava/lang/String; comp_1254 image + f Lnet/minecraft/class_2960; comp_1255 textureId + m ()Ljava/lang/String; comp_1254 image + m (Ljava/lang/String;Lnet/minecraft/class_2960;)V + p 1 image + p 2 textureId + m ()Lnet/minecraft/class_2960; comp_1255 textureId +c net/minecraft/class_5777 net/minecraft/block/GlowLichenBlock + f Lnet/minecraft/class_7118; field_37585 grower + f Lcom/mojang/serialization/MapCodec; field_46363 CODEC + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_34727 method_34727 + p 4 direction + m (I)Ljava/util/function/ToIntFunction; method_37364 getLuminanceSupplier + c {@return a function that receives a {@link BlockState} and returns the luminance for the state}\nIf the lichen has no visible sides, it supplies 0.\n\n@apiNote The return value is meant to be passed to\n{@link AbstractBlock.Settings#luminance} builder method. + p 0 luminance + c luminance supplied when the lichen has at least one visible side + m (ILnet/minecraft/class_2680;)I method_37363 method_37363 + p 1 state +c net/minecraft/class_3115 net/minecraft/server/command/ScoreboardCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13712 OBJECTIVES_ADD_DUPLICATE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13713 OBJECTIVES_DISPLAY_ALREADY_SET_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_13711 PLAYERS_GET_NULL_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13710 PLAYERS_ENABLE_INVALID_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13714 PLAYERS_ENABLE_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13715 OBJECTIVES_DISPLAY_ALREADY_EMPTY_EXCEPTION + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_266;Z)I method_55348 executeModifyDisplayAutoUpdate + p 1 objective + p 0 source + p 2 enable + m (Lnet/minecraft/class_2168;)I method_13589 executeListPlayers + p 0 source + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_266;I)I method_13578 executeAdd + p 0 source + p 2 objective + p 1 targets + p 3 score + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_8646;Lnet/minecraft/class_266;)I method_13596 executeSetDisplay + p 0 source + p 1 slot + p 2 objective + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13577 method_13577 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13610 method_13610 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13593 method_13593 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_9015;)I method_13614 executeListScores + p 0 source + p 1 scoreHolder + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13580 method_13580 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_266;)I method_13602 executeRemoveObjective + p 1 objective + p 0 source + m (Lnet/minecraft/class_3115$class_9008;Lcom/mojang/brigadier/context/CommandContext;)I method_55355 method_55355 + p 1 context + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13605 method_13605 + p 0 objective + p 1 target + m (Lnet/minecraft/class_3115$class_9008;Lcom/mojang/brigadier/context/CommandContext;)I method_55363 method_55363 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13588 method_13588 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_266;)I method_13609 executeEnable + p 2 objective + p 1 targets + p 0 source + m (Lnet/minecraft/class_2168;)I method_13597 executeListObjectives + p 0 source + m (Lnet/minecraft/class_2168;Ljava/lang/String;Lnet/minecraft/class_274;Lnet/minecraft/class_2561;)I method_13611 executeAddObjective + p 0 source + p 1 objective + p 2 criteria + p 3 displayName + m (Lnet/minecraft/class_7157;Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/class_3115$class_9008;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_55345 makeNumberFormatArguments + p 2 executor + p 1 argumentBuilder + p 0 registryAccess + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_266;Lnet/minecraft/class_2218$class_2219;Ljava/util/Collection;Lnet/minecraft/class_266;)I method_13584 executeOperation + p 0 source + p 1 targets + p 2 targetObjective + p 3 operation + p 4 sources + p 5 sourceObjectives + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_266;)I method_13586 executeReset + p 2 objective + p 1 targets + p 0 source + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_266;Lnet/minecraft/class_2561;)I method_13576 executeModifyObjective + p 0 source + p 1 objective + p 2 displayName + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_266;Lnet/minecraft/class_2561;)I method_55349 executeSetDisplayName + p 0 source + p 1 targets + p 2 objective + p 3 displayName + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13591 method_13591 + p 0 context + m ()Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; method_13606 makeRenderTypeArguments + m (Lnet/minecraft/class_3115$class_9008;Lcom/mojang/brigadier/context/CommandContext;)I method_55360 method_55360 + p 1 context + m (Lnet/minecraft/class_3115$class_9008;Lcom/mojang/brigadier/context/CommandContext;)I method_55344 method_55344 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13599 method_13599 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13583 method_13583 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13587 method_13587 + p 0 context + p 1 builder + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13579 method_13579 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13595 register + p 0 dispatcher + p 1 registryAccess + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13613 suggestDisabled + p 1 targets + p 0 source + p 2 builder + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13612 method_13612 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_266;Lnet/minecraft/class_9022;)I method_55350 executeSetNumberFormat + p 0 source + p 1 targets + p 2 objective + p 3 numberFormat + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_266;I)I method_13604 executeSet + p 3 score + p 0 source + p 1 targets + p 2 objective + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13608 method_13608 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13590 method_13590 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_9015;Lnet/minecraft/class_266;)I method_13607 executeGet + p 0 source + p 2 objective + p 1 scoreHolder + m (Lnet/minecraft/class_274$class_275;Lcom/mojang/brigadier/context/CommandContext;)I method_13601 method_13601 + p 1 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_266;I)I method_13600 executeRemove + p 3 score + p 0 source + p 1 targets + p 2 objective + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_8646;)I method_13592 executeClearDisplay + p 0 source + p 1 slot + m (Ljava/util/Collection;)Lnet/minecraft/class_2561; method_55352 getNextDisplayName + p 0 targets + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13598 method_13598 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_13575 executeReset + p 0 source + p 1 targets + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13574 method_13574 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13594 method_13594 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13582 method_13582 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_266;Lnet/minecraft/class_9022;)I method_55347 executeModifyObjectiveFormat + p 2 format + p 0 source + p 1 objective + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_266;Lnet/minecraft/class_274$class_275;)I method_13581 executeModifyRenderType + p 0 source + p 1 objective + p 2 type + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13603 method_13603 + p 0 context +c net/minecraft/class_3115$class_9008 net/minecraft/server/command/ScoreboardCommand$NumberFormatCommandExecutor + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_9022;)I run run + p 1 context + p 2 numberFormat +c net/minecraft/class_5776 net/minecraft/entity/passive/GlowSquidEntity + f Lnet/minecraft/class_2940; field_28403 DARK_TICKS_REMAINING + f I field_57587 DEFAULT_DARK_TICKS_REMAINING + m ()I method_33334 getDarkTicksRemaining + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_5425;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_38962 canSpawn + p 0 type + p 3 pos + p 4 random + p 1 world + p 2 reason + m (I)V method_33333 setDarkTicksRemaining + p 1 ticks +c net/minecraft/class_4445 net/minecraft/client/realms/task/WorldCreationTask + f J field_20251 worldId + f Ljava/lang/String; field_20249 name + f Lnet/minecraft/class_2561; field_46141 TITLE + f Lorg/slf4j/Logger; field_36362 LOGGER + f Ljava/lang/String; field_20250 motd + m (JLjava/lang/String;Ljava/lang/String;)V + p 1 worldId + p 3 name + p 4 motd +c net/minecraft/class_3116 net/minecraft/world/gen/structure/OceanMonumentStructure + f Lcom/mojang/serialization/MapCodec; field_37806 CODEC + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_2919;)Lnet/minecraft/class_3443; method_38681 createBasePiece + p 1 random + p 0 pos + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_6626;)V method_41675 method_41675 + p 1 collector + m (Lnet/minecraft/class_6626;Lnet/minecraft/class_3195$class_7149;)V method_38683 addPieces + p 1 context + p 0 collector + m (Lnet/minecraft/class_1923;JLnet/minecraft/class_6624;)Lnet/minecraft/class_6624; method_38680 modifyPiecesOnRead + p 0 pos + p 1 worldSeed + p 3 pieces +c net/minecraft/class_5779 net/minecraft/world/gen/feature/MultifaceGrowthFeature + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_5780;Lnet/minecraft/class_5819;Ljava/util/List;)Z method_33391 generate + p 3 config + p 2 state + p 1 pos + p 0 world + p 5 directions + p 4 random + m (Lnet/minecraft/class_2680;)Z method_33395 isAirOrWater + p 0 state +c net/minecraft/class_4448 net/minecraft/client/realms/util/RealmsUtil + f I field_32131 SECONDS_PER_DAY + f Lnet/minecraft/class_2561; field_44910 NOW_TEXT + f I field_32130 SECONDS_PER_HOUR + f I field_32129 SECONDS_PER_MINUTE + f Lorg/slf4j/Logger; field_61054 LOGGER + m (Lnet/minecraft/class_4448$class_11539;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_72217 runAsync + p 1 errorCallback + p 0 supplier + m (Lnet/minecraft/class_4448$class_11538;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_72216 runAsync + p 1 errorCallback + p 0 runnable + m (Ljava/util/function/Function;)Ljava/util/function/Consumer; method_72220 openingScreen + p 0 screenCreator + m (Ljava/time/Instant;)Lnet/minecraft/class_2561; method_25282 convertToAgePresentation + m (Lnet/minecraft/class_310;Ljava/util/function/Function;Lnet/minecraft/class_4355;)V method_72218 method_72218 + p 2 error + m (Ljava/lang/String;Lnet/minecraft/class_4355;)V method_72219 method_72219 + p 1 error + m (Lnet/minecraft/class_332;IIILjava/util/UUID;)V method_48972 drawPlayerHead + p 0 context + p 1 x + p 2 y + p 3 size + p 4 playerUuid + m (Ljava/util/function/Function;Ljava/lang/String;)Ljava/util/function/Consumer; method_72221 openingScreenAndLogging + p 1 errorPrefix + p 0 screenCreator + m (J)Lnet/minecraft/class_2561; method_21567 convertToAgePresentation + p 0 milliseconds +c net/minecraft/class_4448$class_11538 net/minecraft/client/realms/util/RealmsUtil$RealmsRunnable + m (Lnet/minecraft/class_4341;)V accept accept + p 1 client + m (Lnet/minecraft/class_4341;)Ljava/lang/Void; apply apply +c net/minecraft/class_4448$class_11539 net/minecraft/client/realms/util/RealmsUtil$RealmsSupplier + m (Lnet/minecraft/class_4341;)Ljava/lang/Object; apply apply + p 1 client +c net/minecraft/class_5778 net/minecraft/block/MultifaceBlock + f [Lnet/minecraft/class_2350; field_28421 DIRECTIONS + f Ljava/util/Map; field_28419 FACING_PROPERTIES + f Z field_28424 canMirrorX + f Lnet/minecraft/class_2746; field_55497 WATERLOGGED + f Lcom/mojang/serialization/MapCodec; field_55079 CODEC + f Z field_28425 canMirrorZ + f Ljava/util/function/Function; field_55780 shapeFunction + f Z field_28423 hasAllHorizontalDirections + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2680; method_33361 method_33361 + p 4 direction + m (Lnet/minecraft/class_2680;Ljava/util/function/Function;)Lnet/minecraft/class_2680; method_33367 mirror + p 1 state + p 2 mirror + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_41438 canGrowWithDirection + p 1 world + p 3 pos + p 2 state + p 4 direction + m (Ljava/util/Map;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66454 method_66454 + p 1 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_33358 canGrowOn + p 2 pos + p 3 state + p 0 world + p 1 direction + m (Lnet/minecraft/class_2689;)Lnet/minecraft/class_2680; method_33368 withAllDirections + p 0 stateManager + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_2746; method_33374 getProperty + p 0 direction + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2680; method_33362 withDirection + p 3 pos + p 4 direction + p 1 state + p 2 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2746;)Lnet/minecraft/class_2680; method_33365 disableDirection + p 1 direction + p 0 state + m (Lnet/minecraft/class_2350;)Z method_33369 canHaveDirection + p 1 direction + m (Lnet/minecraft/class_2680;)Z method_33382 isNotFullBlock + p 0 state + m (B)Ljava/util/Set; method_41437 flagToDirections + p 0 flag + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_33366 hasDirection + p 0 state + p 1 direction + m ()Ljava/util/function/Function; method_66455 createShapeFunction + m (Ljava/util/Collection;)B method_41439 directionsToFlag + p 0 directions + m (Lnet/minecraft/class_2680;)Z method_33381 hasAnyDirection + p 0 state + m (Lnet/minecraft/class_2680;)Ljava/util/Set; method_41440 collectDirections + p 0 state + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_65162 canGrowOn + p 1 pos + p 0 world + p 2 direction +c net/minecraft/class_3110 net/minecraft/server/command/SayCommand + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_7471;)V method_43657 method_43657 + p 1 message + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13562 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13563 method_13563 + p 0 context +c net/minecraft/class_4442 net/minecraft/client/realms/task/SwitchMinigameTask + f Lnet/minecraft/class_2561; field_46139 TITLE + f J field_20239 worldId + f Lorg/slf4j/Logger; field_36360 LOGGER + f Lnet/minecraft/class_4890; field_20240 worldTemplate + m (JLnet/minecraft/class_4890;Lnet/minecraft/class_4388;)V + p 1 worldId + p 4 lastScreen + p 3 worldTemplate +c net/minecraft/class_3111 net/minecraft/world/gen/feature/DefaultFeatureConfig + f Lcom/mojang/serialization/Codec; field_24893 CODEC + f Lnet/minecraft/class_3111; field_24894 INSTANCE +c net/minecraft/class_5772 net/minecraft/client/render/entity/model/AxolotlEntityModel + c Represents the model of an {@linkplain AxolotlEntity}.\n\n
\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value EntityModelPartNames#HEAD}{@value EntityModelPartNames#BODY}{@link #head}
{@value EntityModelPartNames#TOP_GILLS}{@value EntityModelPartNames#HEAD}{@link #topGills}
{@value EntityModelPartNames#LEFT_GILLS}{@value EntityModelPartNames#HEAD}{@link #leftGills}
{@value EntityModelPartNames#RIGHT_GILLS}{@value EntityModelPartNames#HEAD}{@link #rightGills}
{@value EntityModelPartNames#RIGHT_HIND_LEG}{@value EntityModelPartNames#BODY}{@link #rightHindLeg}
{@value EntityModelPartNames#LEFT_HIND_LEG}{@value EntityModelPartNames#BODY}{@link #leftHindLeg}
{@value EntityModelPartNames#RIGHT_FRONT_LEG}{@value EntityModelPartNames#BODY}{@link #rightFrontLeg}
{@value EntityModelPartNames#LEFT_FRONT_LEG}{@value EntityModelPartNames#BODY}{@link #leftFrontLeg}
{@value EntityModelPartNames#TAIL}{@value EntityModelPartNames#BODY}{@link #tail}
\n
+ f Lnet/minecraft/class_630; field_28380 topGills + f Lnet/minecraft/class_630; field_28382 rightGills + f Lnet/minecraft/class_630; field_28381 leftGills + f Lnet/minecraft/class_630; field_28373 tail + f Lnet/minecraft/class_630; field_28375 rightHindLeg + f Lnet/minecraft/class_630; field_28374 leftHindLeg + f F field_32449 MOVING_IN_WATER_LEG_PITCH + c Represents the pitch value {@value} used for the legs of the axolotl when it is moving in water. + f Lnet/minecraft/class_9953; field_52869 BABY_TRANSFORMER + f Lnet/minecraft/class_630; field_28377 rightFrontLeg + f Lnet/minecraft/class_630; field_28376 leftFrontLeg + f Lnet/minecraft/class_630; field_28379 head + f Lnet/minecraft/class_630; field_28378 body + m (FF)V method_33294 setMovingOnGroundAngles + p 2 headYaw + p 1 animationProgress + m (Lnet/minecraft/class_10000;)V method_33293 setAngles + m (FF)V method_33297 setStandingInWaterAngles + m (F)V method_33299 copyLegAngles + c Copies and mirrors the left leg angles to the right leg angles. + m (F)V method_33298 setPlayingDeadAngles + p 1 headYaw + m ()Lnet/minecraft/class_5607; method_33296 getTexturedModelData + m (FFF)V method_33295 setMovingInWaterAngles + p 2 headPitch + m (FF)V method_33291 setStandingOnGroundAngles + p 2 headYaw + p 1 animationProgress +c net/minecraft/class_4441 net/minecraft/client/realms/task/RestoreTask + f Lorg/slf4j/Logger; field_36359 LOGGER + f Lnet/minecraft/class_4388; field_20238 lastScreen + f Lnet/minecraft/class_2561; field_46138 TITLE + f Lnet/minecraft/class_4867; field_20236 backup + m (Lnet/minecraft/class_4867;JLnet/minecraft/class_4388;)V + p 1 backup +c net/minecraft/class_3112 net/minecraft/server/command/ScheduleCommand + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_20853 CLEARED_FAILURE_EXCEPTION + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; field_20854 SUGGESTION_PROVIDER + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13706 SAME_TICK_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_52349 MACRO_EXCEPTION + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13567 register + p 0 dispatcher + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_22836 method_22836 + p 0 eventName + m (Lnet/minecraft/class_2168;Ljava/lang/String;)I method_22833 clearEvent + p 0 source + p 1 eventName + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_22835 method_22835 + p 0 context + p 1 builder + m (Lnet/minecraft/class_2168;Lcom/mojang/datafixers/util/Pair;IZ)I method_13566 execute + p 0 source + p 2 time + p 1 function + p 3 replace + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13568 method_13568 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_71691 method_71691 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22834 method_22834 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_71690 method_71690 + p 0 context +c net/minecraft/class_5775 net/minecraft/datafixer/schema/Schema2688 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_5774 net/minecraft/client/render/entity/AxolotlEntityRenderer + f Ljava/util/Map; field_28390 TEXTURES + m (Lnet/minecraft/class_5762;Lnet/minecraft/class_10000;F)V method_62379 updateRenderState + m (Ljava/util/HashMap;)V method_33307 method_33307 + p 0 variants + m (Lnet/minecraft/class_10000;)Lnet/minecraft/class_2960; method_33306 getTexture + m ()Lnet/minecraft/class_10000; method_62378 createRenderState +c net/minecraft/class_4443 net/minecraft/client/realms/task/SwitchSlotTask + f Ljava/lang/Runnable; field_22733 callback + f Lnet/minecraft/class_2561; field_46140 TITLE + f Lorg/slf4j/Logger; field_36361 LOGGER + f I field_20243 slot + f J field_20242 worldId + m (JILjava/lang/Runnable;)V + p 1 worldId + p 4 callback + p 3 slot +c net/minecraft/class_3107 net/minecraft/server/dedicated/command/SaveOnCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13704 ALREADY_ON_EXCEPTION + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13559 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13560 method_13560 + p 0 context +c net/minecraft/class_4439 net/minecraft/client/realms/task/RealmsPrepareConnectionTask + f Lnet/minecraft/class_4877; field_20224 server + f Lnet/minecraft/class_437; field_20225 lastScreen + f Lnet/minecraft/class_2561; field_46135 TITLE + f Lnet/minecraft/class_2561; field_47580 APPLYING_PACK_TEXT + f Lorg/slf4j/Logger; field_36356 LOGGER + m (Lnet/minecraft/class_11459;Ljava/util/UUID;Ljava/util/function/Function;)Lnet/minecraft/class_8816; method_32512 createResourcePackConfirmationScreen + p 3 connectingScreenCreator + p 1 address + p 2 id + m (Lnet/minecraft/class_11459;Ljava/lang/Throwable;)Ljava/lang/Void; method_25286 method_25286 + p 2 throwable + m (Lnet/minecraft/class_11459;Ljava/util/UUID;)Ljava/util/concurrent/CompletableFuture; method_32515 downloadResourcePack + p 1 address + p 2 id + m ()Lnet/minecraft/class_11459; method_32516 join + m (Lnet/minecraft/class_4877;)Ljava/util/UUID; method_55605 getResourcePackId + p 0 server + m (Lnet/minecraft/class_437;Lnet/minecraft/class_4877;)V + p 2 server + p 1 lastScreen + m (Lnet/minecraft/class_11459;Ljava/util/UUID;Ljava/util/function/Function;Lnet/minecraft/class_8816;)V method_32513 method_32513 + p 4 popup + m (Lnet/minecraft/class_11459;)Lnet/minecraft/class_4398; method_32511 createConnectingScreen + p 1 address +c net/minecraft/class_3108 net/minecraft/world/gen/structure/NetherFortressStructure + f Lcom/mojang/serialization/MapCodec; field_37803 CODEC + f Lnet/minecraft/class_6012; field_13705 MONSTER_SPAWNS + m (Lnet/minecraft/class_6626;Lnet/minecraft/class_3195$class_7149;)V method_38679 addPieces + p 0 collector + p 1 context + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_6626;)V method_41670 method_41670 + p 1 collector +c net/minecraft/class_5769 net/minecraft/entity/ai/brain/task/PlayDeadTask + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5762;J)Z method_33254 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5762;J)V method_33255 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5762;)Z method_33253 shouldRun +c net/minecraft/class_4438 net/minecraft/client/realms/task/RealmsConnectTask + f Lnet/minecraft/class_4902; field_20222 realmsConnection + f Lnet/minecraft/class_2561; field_46133 TITLE + f Lnet/minecraft/class_4877; field_26922 server + f Lnet/minecraft/class_11459; field_20223 address + m (Lnet/minecraft/class_437;Lnet/minecraft/class_4877;Lnet/minecraft/class_11459;)V + p 1 lastScreen + p 3 address + p 2 server +c net/minecraft/class_9302 net/minecraft/component/type/WrittenBookContentComponent + f Lcom/mojang/serialization/Codec; field_49383 PAGE_CODEC + f Lcom/mojang/serialization/Codec; field_49384 PAGES_CODEC + f Lcom/mojang/serialization/Codec; field_49381 CODEC + f Lnet/minecraft/class_9139; field_49382 PACKET_CODEC + f I field_49375 MAX_SERIALIZED_PAGE_LENGTH + f Ljava/util/List; comp_2422 pages + f I field_49380 UNCOPIABLE_GENERATION + f I field_49378 MAX_TITLE_LENGTH + f Lnet/minecraft/class_9302; field_49829 DEFAULT + f I field_49379 MAX_GENERATION + f Ljava/lang/String; comp_2420 author + f I comp_2421 generation + f Z comp_2423 resolved + f Lnet/minecraft/class_9262; comp_2419 title + m ()Lnet/minecraft/class_9302; method_57519 copy + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_2168;Lnet/minecraft/class_1657;)Z method_66337 resolveInStack + p 0 stack + p 1 commandSource + p 2 player + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1657;Lnet/minecraft/class_2561;)Ljava/util/Optional; method_57523 method_57523 + p 2 text + m ()Lnet/minecraft/class_9302; method_57527 asResolved + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57520 method_57520 + p 0 instance + m (Z)Ljava/util/List; method_57525 getPages + p 1 shouldFilter + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_7225$class_7874;)Z method_57524 exceedsSerializedLengthLimit + p 1 registries + p 0 text + m (Ljava/util/List;)Lnet/minecraft/class_9302; method_58188 withPages + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_58437 createPageCodec + p 0 textCodec + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_58436 createPagesCodec + p 0 textCodec + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1657;)Lnet/minecraft/class_9302; method_57521 resolve + p 1 source + p 2 player + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1657;Lnet/minecraft/class_9262;)Ljava/util/Optional; method_57522 resolve + p 1 player + p 0 source + p 2 page + m (ZLnet/minecraft/class_9262;)Lnet/minecraft/class_2561; method_57526 method_57526 + p 1 page + m ()Ljava/lang/String; comp_2420 author + m ()I comp_2421 generation + m ()Z comp_2423 resolved + m ()Lnet/minecraft/class_9262; comp_2419 title + m (Lnet/minecraft/class_9262;Ljava/lang/String;ILjava/util/List;Z)V + p 1 title + p 2 author + p 3 generation + p 4 pages + p 5 resolved +c net/minecraft/class_9301 net/minecraft/component/type/WritableBookContentComponent + f Lnet/minecraft/class_9301; field_49369 DEFAULT + f Lcom/mojang/serialization/Codec; field_49371 CODEC + f Lnet/minecraft/class_9139; field_49372 PACKET_CODEC + f I field_51411 MAX_PAGE_COUNT + f Ljava/util/List; comp_2418 pages + f Lcom/mojang/serialization/Codec; field_49373 PAGE_CODEC + f Lcom/mojang/serialization/Codec; field_49374 PAGES_CODEC + f I field_49370 MAX_PAGE_LENGTH + m (Z)Ljava/util/stream/Stream; method_57517 stream + p 1 shouldFilter + m (ZLnet/minecraft/class_9262;)Ljava/lang/String; method_57518 method_57518 + p 1 page + m (Ljava/util/List;)V + p 1 pages + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57516 method_57516 + p 0 instance + m (Ljava/util/List;)Lnet/minecraft/class_9301; method_58187 withPages + m (Ljava/lang/Object;)Z equals equals + p 1 o +c net/minecraft/class_9307 net/minecraft/component/type/BannerPatternsComponent + f Lorg/slf4j/Logger; field_49761 LOGGER + f Lnet/minecraft/class_9307; field_49404 DEFAULT + f Lnet/minecraft/class_9139; field_49406 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_49405 CODEC + f Ljava/util/List; comp_2428 layers + m ()Lnet/minecraft/class_9307; method_57571 withoutTopLayer + m ()Ljava/util/List; comp_2428 layers + m (Ljava/util/List;)V + p 1 layers +c net/minecraft/class_9307$class_3750 net/minecraft/component/type/BannerPatternsComponent$Builder + f Lcom/google/common/collect/ImmutableList$Builder; field_16548 entries + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1767;)Lnet/minecraft/class_9307$class_3750; method_16376 add + p 2 color + p 1 pattern + m (Lnet/minecraft/class_9307;)Lnet/minecraft/class_9307$class_3750; method_57575 addAll + p 1 patterns + m ()Lnet/minecraft/class_9307; method_57573 build + m (Lnet/minecraft/class_9307$class_9308;)Lnet/minecraft/class_9307$class_3750; method_57574 add + p 1 layer + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_5321;Lnet/minecraft/class_1767;)Lnet/minecraft/class_9307$class_3750; method_58124 add + p 1 patternLookup + p 2 pattern + p 3 color +c net/minecraft/class_9307$class_9308 net/minecraft/component/type/BannerPatternsComponent$Layer + f Lnet/minecraft/class_9139; field_49408 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_49407 CODEC + f Lnet/minecraft/class_1767; comp_2430 color + f Lnet/minecraft/class_6880; comp_2429 pattern + m ()Lnet/minecraft/class_5250; method_58125 getTooltipText + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57576 method_57576 + p 0 instance + m ()Lnet/minecraft/class_6880; comp_2429 pattern + m ()Lnet/minecraft/class_1767; comp_2430 color + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1767;)V + p 1 pattern + p 2 color +c net/minecraft/class_9306 net/minecraft/village/TradedItem + f Lcom/mojang/serialization/Codec; field_49393 CODEC + f Lnet/minecraft/class_9139; field_49395 OPTIONAL_PACKET_CODEC + f Lnet/minecraft/class_9139; field_49394 PACKET_CODEC + f Lnet/minecraft/class_1799; comp_2427 itemStack + f Lnet/minecraft/class_6880; comp_2424 item + f I comp_2425 count + f Lnet/minecraft/class_9329; comp_2426 components + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57551 method_57551 + p 0 instance + m (Lnet/minecraft/class_6880;ILnet/minecraft/class_9329;)Lnet/minecraft/class_1799; method_57553 createDisplayStack + p 2 components + p 0 item + p 1 count + m (Lnet/minecraft/class_1935;)V + p 1 item + m (Lnet/minecraft/class_1799;)Z method_57552 matches + p 1 stack + m (Lnet/minecraft/class_6880;ILnet/minecraft/class_9329;)V + p 2 count + p 1 item + p 3 components + m (Lnet/minecraft/class_1935;I)V + p 2 count + p 1 item + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/class_9306; method_57554 withComponents + p 1 builderCallback + m ()Lnet/minecraft/class_9329; comp_2426 components + m ()Lnet/minecraft/class_1799; comp_2427 itemStack + m ()Lnet/minecraft/class_6880; comp_2424 item + m ()I comp_2425 count + m (Lnet/minecraft/class_6880;ILnet/minecraft/class_9329;Lnet/minecraft/class_1799;)V + p 1 item + p 2 count + p 3 components + p 4 itemStack +c net/minecraft/class_9304 net/minecraft/component/type/ItemEnchantmentsComponent + f Lnet/minecraft/class_9139; field_49387 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_49386 CODEC + f Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; field_49389 enchantments + f Lnet/minecraft/class_9304; field_49385 DEFAULT + f Lcom/mojang/serialization/Codec; field_49388 ENCHANTMENT_LEVEL_CODEC + m ()Ljava/util/Set; method_57539 getEnchantmentEntries + m (Lnet/minecraft/class_6880;)I method_57536 getLevel + p 1 enchantment + m ()Ljava/util/Set; method_57534 getEnchantments + m ()Z method_57543 isEmpty + m (Lnet/minecraft/class_9304;)Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; method_57540 method_57540 + p 0 component + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()I method_57541 getSize + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_5321;Lnet/minecraft/class_6862;)Lnet/minecraft/class_6885; method_59716 getTooltipOrderList + p 2 tooltipOrderTag + p 0 registries + p 1 registryRef + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V + p 1 enchantments +c net/minecraft/class_9304$class_9305 net/minecraft/component/type/ItemEnchantmentsComponent$Builder + f Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; field_49391 enchantments + m ()Ljava/util/Set; method_57545 getEnchantments + m (Lnet/minecraft/class_6880;I)V method_57550 add + p 1 enchantment + p 2 level + m (Lnet/minecraft/class_6880;)I method_57546 getLevel + p 1 enchantment + m ()Lnet/minecraft/class_9304; method_57549 build + m (Lnet/minecraft/class_9304;)V + p 1 enchantmentsComponent + m (Ljava/util/function/Predicate;)V method_57548 remove + p 1 predicate + m (Lnet/minecraft/class_6880;I)V method_57547 set + p 1 enchantment + p 2 level +c net/minecraft/class_9303 net/minecraft/unused/packageinfo/PackageInfo9303 +c net/minecraft/class_9313 net/minecraft/unused/packageinfo/PackageInfo9313 +c net/minecraft/class_9312 net/minecraft/world/chunk/ChunkGenerationContext + f Lnet/minecraft/class_3218; comp_2434 world + f Lnet/minecraft/class_3227; comp_2437 lightingProvider + f Lnet/minecraft/class_2794; comp_2435 generator + f Ljava/util/concurrent/Executor; comp_2942 mainThreadExecutor + f Lnet/minecraft/class_2818$class_10368; comp_3323 unsavedListener + f Lnet/minecraft/class_3485; comp_2436 structureManager + m ()Lnet/minecraft/class_3218; comp_2434 world + m ()Lnet/minecraft/class_3227; comp_2437 lightingProvider + m ()Lnet/minecraft/class_2818$class_10368; comp_3323 unsavedListener + m ()Lnet/minecraft/class_3485; comp_2436 structureManager + m ()Lnet/minecraft/class_2794; comp_2435 generator + m ()Ljava/util/concurrent/Executor; comp_2942 mainThreadExecutor + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2794;Lnet/minecraft/class_3485;Lnet/minecraft/class_3227;Ljava/util/concurrent/Executor;Lnet/minecraft/class_2818$class_10368;)V + p 1 world + p 2 generator + p 3 structureManager + p 4 lightingProvider + p 5 mainThreadExecutor + p 6 unsavedListener +c net/minecraft/class_9310 net/minecraft/world/chunk/ChunkGenerating + f Lorg/slf4j/Logger; field_60378 LOGGER + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_57596 noop + p 0 context + p 2 chunks + p 1 step + p 3 chunk + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_57601 generateStructures + p 3 chunk + p 2 chunks + p 1 step + p 0 context + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_57613 generateEntities + p 2 chunks + p 1 step + p 0 context + p 3 chunk + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_11368$class_11370;)V method_60552 addEntities + p 1 entities + p 0 world + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_57610 generateFeatures + p 3 chunk + p 2 chunks + p 1 step + p 0 context + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_57600 loadStructures + p 3 chunk + p 2 chunks + p 1 step + p 0 context + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_57605 populateBiomes + p 3 chunk + p 2 chunks + p 1 step + p 0 context + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_57603 generateStructureReferences + p 1 step + p 0 context + p 3 chunk + p 2 chunks + m (Lnet/minecraft/class_2791;)Lnet/minecraft/class_2791; method_57599 method_57599 + p 0 populated + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_57609 carve + p 3 chunk + p 2 chunks + p 1 step + p 0 context + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_57607 populateNoise + p 1 step + p 0 context + p 3 chunk + p 2 chunks + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_57608 buildSurface + p 0 context + p 3 chunk + p 2 chunks + p 1 step + m (Lnet/minecraft/class_2791;)Z method_57595 isLightOn + p 0 chunk + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_60555 light + p 3 chunk + p 2 chunks + p 1 step + p 0 context + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_57594 initializeLight + p 0 context + p 2 chunks + p 1 step + p 3 chunk + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_60556 convertToFullChunk + p 3 chunk + p 2 chunks + p 1 step + p 0 context + m (Lnet/minecraft/class_2791;Lnet/minecraft/class_3218;Lnet/minecraft/class_2839;Lnet/minecraft/class_2818;)V method_60551 method_60551 + p 3 worldChunk +c net/minecraft/class_9317 net/minecraft/loot/function/CopyComponentsLootFunction + f Ljava/util/Optional; field_50202 include + f Ljava/util/Optional; field_50203 exclude + f Lnet/minecraft/class_12283; field_49431 source + f Lcom/mojang/serialization/MapCodec; field_49430 CODEC + f Ljava/util/function/Predicate; field_50204 filter + f Lcom/mojang/serialization/Codec; field_64184 CODEC + m (Lnet/minecraft/class_9317;)Lnet/minecraft/class_12283; method_57640 method_57640 + p 0 function + m (Lnet/minecraft/class_9317;)Ljava/util/Optional; method_58726 method_58726 + p 0 function + m (Lnet/minecraft/class_12283$class_12284;)Lnet/minecraft/class_12283$class_12284; method_76226 method_76226 + p 0 builder + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57639 method_57639 + p 0 instance + m (Lnet/minecraft/class_169;)Lnet/minecraft/class_9317$class_9318; method_74903 blockEntity + p 0 parameter + m (Lnet/minecraft/class_169;)Lnet/minecraft/class_9317$class_9318; method_74901 entity + p 0 parameter + m (Ljava/util/List;Ljava/util/List;)V method_58729 method_58729 + p 1 excludedTypes + m (Ljava/util/List;Lnet/minecraft/class_12283;Ljava/util/Optional;Ljava/util/Optional;)V + p 3 include + p 2 source + p 1 conditions + p 4 exclude + m (Ljava/util/List;Lnet/minecraft/class_9331;)Z method_58728 method_58728 + p 1 type + m (Ljava/util/Collection;Lnet/minecraft/class_9473;Lnet/minecraft/class_1799;Lnet/minecraft/class_9331;)V method_74902 method_74902 + p 3 type + m (Ljava/util/List;Ljava/util/List;)V method_58727 method_58727 + p 1 includedTypes + m (Lnet/minecraft/class_9317;)Ljava/util/Optional; method_57638 method_57638 + p 0 function +c net/minecraft/class_9317$class_9318 net/minecraft/loot/function/CopyComponentsLootFunction$Builder + f Ljava/util/Optional; field_50205 include + f Lnet/minecraft/class_12283; field_49434 source + f Ljava/util/Optional; field_50206 exclude + m (Lnet/minecraft/class_12283;)V + p 1 source + m ()Lnet/minecraft/class_9317$class_9318; method_57641 getThisBuilder + m (Lnet/minecraft/class_9331;)Lnet/minecraft/class_9317$class_9318; method_58731 exclude + p 1 type + m (Lnet/minecraft/class_9331;)Lnet/minecraft/class_9317$class_9318; method_58730 include + p 1 type +c net/minecraft/class_9317$class_12288 net/minecraft/loot/function/CopyComponentsLootFunction$ComponentAccessSource + f Lnet/minecraft/class_169; comp_4918 contextParam + m (Lnet/minecraft/class_9473;)Lnet/minecraft/class_9473; method_76227 get + m (Lnet/minecraft/class_169;)V + p 1 contextParam +c net/minecraft/class_9317$class_12066 net/minecraft/loot/function/CopyComponentsLootFunction$BlockEntityComponentsSource + f Lnet/minecraft/class_169; comp_4918 contextParam + m (Lnet/minecraft/class_2586;)Lnet/minecraft/class_9473; method_74904 get + m (Lnet/minecraft/class_169;)V + p 1 contextParam +c net/minecraft/class_9316 net/minecraft/entity/ai/pathing/PathContext + f Lnet/minecraft/class_2338$class_2339; field_49424 lastNodePos + f Lnet/minecraft/class_9315; field_49422 nodeTypeCache + f Lnet/minecraft/class_1941; field_49421 world + f Lnet/minecraft/class_2338; field_49423 entityPos + m (Lnet/minecraft/class_1941;Lnet/minecraft/class_1308;)V + p 2 entity + p 1 world + m (III)Lnet/minecraft/class_7; method_57622 getNodeType + p 2 y + p 3 z + p 1 x + m ()Lnet/minecraft/class_1941; method_57621 getWorld + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_57623 getBlockState + p 1 pos + m ()Lnet/minecraft/class_2338; method_57624 getEntityPos +c net/minecraft/class_9315 net/minecraft/entity/ai/pathing/PathNodeTypeCache + f [J field_49419 positions + f [Lnet/minecraft/class_7; field_49420 cache + m (J)I method_57617 hash + p 0 pos + m (IJ)Lnet/minecraft/class_7; method_57616 get + p 1 index + p 2 pos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_7; method_57618 add + p 1 world + p 2 pos + m (Lnet/minecraft/class_2338;)V method_57620 invalidate + p 1 pos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;IJ)Lnet/minecraft/class_7; method_57619 compute + p 3 index + p 4 longPos + p 1 world + p 2 pos +c net/minecraft/class_10392 net/minecraft/datafixer/fix/InvalidLockComponentPredicateFix + f Ljava/util/Optional; field_55201 DOUBLE_QUOTES + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_65337 validateLock + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/util/function/Predicate;)Z method_65336 hasMatchingKey + p 2 predicate + p 1 key + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Z method_65339 method_65339 + p 0 componentsDynamic + m (Lcom/mojang/serialization/Dynamic;)Z method_65338 isLockInvalid + p 0 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Z method_65340 method_65340 + p 0 customNameDynamic +c net/minecraft/class_10390 net/minecraft/datafixer/fix/EquippableAssetRenameFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_65333 method_65333 + p 0 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_10391 net/minecraft/datafixer/fix/BlockEntityLockToComponentFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_65335 method_65335 + p 0 dynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_65334 method_65334 + p 0 typed + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_10396 net/minecraft/client/render/item/tint/ConstantTintSource + f Lcom/mojang/serialization/MapCodec; field_55229 CODEC + f I comp_3358 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65388 method_65388 + p 0 instance + m (I)V + p 1 value + m ()I comp_3358 value +c net/minecraft/class_10397 net/minecraft/client/render/item/tint/CustomModelDataTintSource + f Lcom/mojang/serialization/MapCodec; field_55230 CODEC + f I comp_3360 defaultColor + f I comp_3359 index + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65390 method_65390 + p 0 instance + m ()I comp_3359 index + m ()I comp_3360 defaultColor + m (II)V + p 1 index + p 2 defaultColor +c net/minecraft/class_10394 net/minecraft/item/equipment/EquipmentAsset +c net/minecraft/class_10395 net/minecraft/client/ClientBootstrap + f Z field_55225 initialized + m ()V method_65385 initialize +c net/minecraft/class_10398 net/minecraft/client/render/item/tint/DyeTintSource + f Lcom/mojang/serialization/MapCodec; field_55231 CODEC + f I comp_3361 defaultColor + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65391 method_65391 + p 0 instance + m ()I comp_3361 defaultColor + m (I)V + p 1 defaultColor +c net/minecraft/class_10399 net/minecraft/client/render/item/tint/FireworkTintSource + f Lcom/mojang/serialization/MapCodec; field_55232 CODEC + f I comp_3362 defaultColor + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65392 method_65392 + p 0 instance + m ()I comp_3362 defaultColor + m (I)V + p 1 defaultColor +c net/minecraft/class_10386 net/minecraft/util/annotation/SuppressLinter + m ()Ljava/lang/String; method_65304 reason +c net/minecraft/class_10389 net/minecraft/datafixer/fix/CustomModelDataExpansionFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_65328 method_65328 + p 0 customModelDataDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_10387 net/minecraft/network/packet/c2s/play/PlayerLoadedC2SPacket + f Lnet/minecraft/class_9139; field_55193 CODEC + m (Lnet/minecraft/class_2792;)V method_65308 apply +c net/minecraft/class_3183 net/minecraft/world/gen/feature/FreezeTopLayerFeature +c net/minecraft/class_3184 net/minecraft/server/dedicated/gui/PlayerListGui + f Lnet/minecraft/server/MinecraftServer; field_13844 server + f I field_13843 tick + m ()V method_18700 tick + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server +c net/minecraft/class_3185 net/minecraft/world/gen/feature/SpringFeature +c net/minecraft/class_3186 net/minecraft/server/dedicated/gui/PlayerStatsGui + f Lnet/minecraft/server/MinecraftServer; field_13849 server + f [I field_13845 memoryUsePercentage + f Ljava/text/DecimalFormat; field_13846 AVG_TICK_FORMAT + f [Ljava/lang/String; field_13847 lines + f I field_13848 memoryUsePercentagePos + f Ljavax/swing/Timer; field_16858 timer + m ()V method_13982 update + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server + m (Ljava/awt/Graphics;)V paint paint + p 1 graphics + m (Ljava/awt/event/ActionEvent;)V method_13983 method_13983 + p 1 event + m ()V method_16751 stop +c net/minecraft/class_3182 net/minecraft/server/dedicated/gui/DedicatedServerGui + f Ljava/awt/Font; field_13837 FONT_MONOSPACE + f Ljava/lang/Thread; field_13838 consoleUpdateThread + f Ljava/util/Collection; field_16855 stopTasks + f Lnet/minecraft/class_3176; field_13839 server + f Ljava/lang/String; field_29666 TITLE + f Ljava/lang/String; field_29667 SHUTTING_DOWN_TITLE + f Ljava/util/concurrent/atomic/AtomicBoolean; field_16854 stopped + f Lorg/slf4j/Logger; field_13840 LOGGER + m (Ljava/lang/Runnable;)V method_16746 addStopTask + p 1 task + m (Lnet/minecraft/class_3176;)V + p 1 server + m (Lnet/minecraft/class_3176;)Lnet/minecraft/class_3182; method_13969 create + p 0 server + m ()V method_13974 start + m (Ljavax/swing/JTextArea;Ljavax/swing/JScrollPane;Ljava/lang/String;)V method_13970 appendToConsole + p 1 textArea + p 3 message + p 2 scrollPane + m ()Ljavax/swing/JComponent; method_13975 createPlaysPanel + m ()Ljavax/swing/JComponent; method_13976 createStatsPanel + m ()Ljavax/swing/JComponent; method_13973 createLogPanel + m (Ljavax/swing/JTextField;Ljava/awt/event/ActionEvent;)V method_13977 method_13977 + p 2 event + m ()V method_16747 runStopTasks + m ()V method_16750 stop +c net/minecraft/class_3182$2 net/minecraft/server/dedicated/gui/DedicatedServerGui$2 + m (Ljava/awt/event/FocusEvent;)V focusGained focusGained + p 1 event +c net/minecraft/class_3182$1 net/minecraft/server/dedicated/gui/DedicatedServerGui$1 + m (Ljava/awt/event/WindowEvent;)V windowClosing windowClosing + p 1 event +c net/minecraft/class_3188 net/minecraft/world/gen/structure/StrongholdStructure + f Lcom/mojang/serialization/MapCodec; field_37817 CODEC + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_6626;)V method_41690 method_41690 + p 1 collector + m (Lnet/minecraft/class_6626;Lnet/minecraft/class_3195$class_7149;)V method_41691 addPieces + p 1 context + p 0 collector +c net/minecraft/class_3194 net/minecraft/server/world/ChunkLevelType + f Lnet/minecraft/class_3194; field_19334 INACCESSIBLE + f Lnet/minecraft/class_3194; field_44856 BLOCK_TICKING + f Lnet/minecraft/class_3194; field_44855 FULL + f Lnet/minecraft/class_3194; field_13877 ENTITY_TICKING + m (Lnet/minecraft/class_3194;)Z method_14014 isAfter + p 1 levelType +c net/minecraft/class_3195 net/minecraft/world/gen/structure/Structure + f Lcom/mojang/serialization/Codec; field_37745 ENTRY_CODEC + f Lnet/minecraft/class_3195$class_7302; field_38429 config + f Lcom/mojang/serialization/Codec; field_37744 STRUCTURE_CODEC + m (Lnet/minecraft/class_3195$class_7302;)V + p 1 config + m (Lnet/minecraft/class_3341;)Lnet/minecraft/class_3341; method_41609 expandBoxIfShouldAdaptNoise + p 1 box + m (Lnet/minecraft/class_3195$class_7150;Lnet/minecraft/class_3195$class_7149;)Z method_41613 isBiomeValid + p 1 context + p 0 result + m (Lnet/minecraft/class_3195$class_7149;)Ljava/util/Optional; method_38676 getStructurePosition + p 1 context + m ()Ljava/util/Map; method_41615 getStructureSpawns + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_3195$class_7150;)Z method_47931 method_47931 + p 1 position + m ()Lnet/minecraft/class_5847; method_42701 getTerrainAdaptation + m (Lnet/minecraft/class_3195;)Lnet/minecraft/class_3195$class_7302; method_42698 method_42698 + p 0 feature + m (Lnet/minecraft/class_3195$class_7149;IIII)[I method_41611 getCornerHeights + p 3 z + p 2 width + p 4 height + p 1 x + p 0 context + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; method_42699 createCodec + p 0 featureCreator + m (Lnet/minecraft/class_3195$class_7149;)Ljava/util/Optional; method_47932 getValidStructurePosition + p 1 context + m ()Lnet/minecraft/class_2893$class_2895; method_41616 getFeatureGenerationStep + m (Lnet/minecraft/class_3195$class_7149;IIII)I method_59863 getAverageCornerHeights + p 4 height + p 3 z + p 2 width + p 1 x + p 0 context + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_5321;Lnet/minecraft/class_5455;Lnet/minecraft/class_2794;Lnet/minecraft/class_1966;Lnet/minecraft/class_7138;Lnet/minecraft/class_3485;JLnet/minecraft/class_1923;ILnet/minecraft/class_5539;Ljava/util/function/Predicate;)Lnet/minecraft/class_3449; method_41614 createStructureStart + p 10 chunkPos + p 8 seed + p 7 structureTemplateManager + p 6 noiseConfig + p 5 biomeSource + p 4 chunkGenerator + p 3 dynamicRegistryManager + p 2 dimension + p 1 structure + p 13 validBiomes + p 12 world + p 11 references + m ()Lnet/minecraft/class_7151; method_41618 getType + m (Lnet/minecraft/class_3195$class_7149;II)I method_41610 getMinCornerHeight + p 1 width + p 0 context + p 2 height + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_2470;)Lnet/minecraft/class_2338; method_42382 getShiftedPos + p 1 context + p 2 rotation + m ()Lnet/minecraft/class_6885; method_41607 getValidBiomes + m (Lnet/minecraft/class_3195$class_7149;IIII)I method_42381 getMinCornerHeight + p 1 x + p 0 context + p 3 width + p 2 z + p 4 height + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/serialization/codecs/RecordCodecBuilder; method_42697 configCodecBuilder + p 0 instance + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5138;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_1923;Lnet/minecraft/class_6624;)V method_38694 postPlace + p 1 world + p 2 structureAccessor + p 3 chunkGenerator + p 4 random + p 5 box + p 6 chunkPos + p 7 pieces + m (Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42700 method_42700 + p 1 instance + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_2902$class_2903;Ljava/util/function/Consumer;)Ljava/util/Optional; method_41612 getStructurePosition + p 0 context + p 1 heightmap + p 2 generator +c net/minecraft/class_3195$class_7150 net/minecraft/world/gen/structure/Structure$StructurePosition + f Lcom/mojang/datafixers/util/Either; comp_572 generator + f Lnet/minecraft/class_2338; comp_571 position + m (Lnet/minecraft/class_2338;Ljava/util/function/Consumer;)V + p 2 generator + p 1 pos + m ()Lnet/minecraft/class_6626; method_44019 generate + m (Lnet/minecraft/class_6626;)Lnet/minecraft/class_6626; method_44020 method_44020 + p 0 collector + m (Ljava/util/function/Consumer;)Lnet/minecraft/class_6626; method_44021 method_44021 + p 0 generator + m ()Lcom/mojang/datafixers/util/Either; comp_572 generator + m ()Lnet/minecraft/class_2338; comp_571 position + m (Lnet/minecraft/class_2338;Lcom/mojang/datafixers/util/Either;)V + p 1 position + p 2 generator +c net/minecraft/class_3195$class_7302 net/minecraft/world/gen/structure/Structure$Config + f Lnet/minecraft/class_3195$class_7302; field_52229 DEFAULT + f Lcom/mojang/serialization/MapCodec; field_38430 CODEC + f Lnet/minecraft/class_2893$class_2895; comp_688 step + f Lnet/minecraft/class_5847; comp_689 terrainAdaptation + f Lnet/minecraft/class_6885; comp_686 biomes + f Ljava/util/Map; comp_687 spawnOverrides + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42702 method_42702 + p 0 instance + m (Lnet/minecraft/class_6885;)V + p 1 biomes + m ()Lnet/minecraft/class_2893$class_2895; comp_688 step + m ()Lnet/minecraft/class_6885; comp_686 biomes + m ()Ljava/util/Map; comp_687 spawnOverrides + m ()Lnet/minecraft/class_5847; comp_689 terrainAdaptation + m (Lnet/minecraft/class_6885;Ljava/util/Map;Lnet/minecraft/class_2893$class_2895;Lnet/minecraft/class_5847;)V + p 1 biomes + p 2 spawnOverrides + p 3 step + p 4 terrainAdaptation +c net/minecraft/class_3195$class_7302$class_9821 net/minecraft/world/gen/structure/Structure$Config$Builder + f Lnet/minecraft/class_2893$class_2895; field_52232 step + f Lnet/minecraft/class_5847; field_52233 terrainAdaptation + f Ljava/util/Map; field_52231 spawnOverrides + f Lnet/minecraft/class_6885; field_52230 biomes + m (Lnet/minecraft/class_6885;)V + p 1 biomes + m (Lnet/minecraft/class_2893$class_2895;)Lnet/minecraft/class_3195$class_7302$class_9821; method_61009 step + p 1 step + m (Lnet/minecraft/class_5847;)Lnet/minecraft/class_3195$class_7302$class_9821; method_61010 terrainAdaptation + p 1 terrainAdaptation + m (Ljava/util/Map;)Lnet/minecraft/class_3195$class_7302$class_9821; method_61011 spawnOverrides + p 1 spawnOverrides + m ()Lnet/minecraft/class_3195$class_7302; method_61008 build +c net/minecraft/class_3195$class_7149 net/minecraft/world/gen/structure/Structure$Context + f Lnet/minecraft/class_5539; comp_569 world + f Ljava/util/function/Predicate; comp_570 biomePredicate + f Lnet/minecraft/class_5455; comp_561 dynamicRegistryManager + f Lnet/minecraft/class_7138; comp_564 noiseConfig + f Lnet/minecraft/class_1966; comp_563 biomeSource + f Lnet/minecraft/class_2919; comp_566 random + f J comp_567 seed + f Lnet/minecraft/class_2794; comp_562 chunkGenerator + f Lnet/minecraft/class_3485; comp_565 structureTemplateManager + f Lnet/minecraft/class_1923; comp_568 chunkPos + m (JLnet/minecraft/class_1923;)Lnet/minecraft/class_2919; method_41619 createChunkRandom + p 0 seed + p 2 chunkPos + m ()Lnet/minecraft/class_5539; comp_569 world + m ()Ljava/util/function/Predicate; comp_570 biomePredicate + m ()Lnet/minecraft/class_5455; comp_561 dynamicRegistryManager + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_2794;Lnet/minecraft/class_1966;Lnet/minecraft/class_7138;Lnet/minecraft/class_3485;JLnet/minecraft/class_1923;Lnet/minecraft/class_5539;Ljava/util/function/Predicate;)V + p 10 biomePredicate + p 9 world + p 8 chunkPos + p 6 seed + p 5 structureTemplateManager + p 4 noiseConfig + p 3 biomeSource + p 2 chunkGenerator + p 1 dynamicRegistryManager + m ()Lnet/minecraft/class_7138; comp_564 noiseConfig + m ()Lnet/minecraft/class_2794; comp_562 chunkGenerator + m ()Lnet/minecraft/class_3485; comp_565 structureTemplateManager + m ()Lnet/minecraft/class_1923; comp_568 chunkPos + m ()J comp_567 seed + m ()Lnet/minecraft/class_2919; comp_566 random + m ()Lnet/minecraft/class_1966; comp_563 biomeSource + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_2794;Lnet/minecraft/class_1966;Lnet/minecraft/class_7138;Lnet/minecraft/class_3485;Lnet/minecraft/class_2919;JLnet/minecraft/class_1923;Lnet/minecraft/class_5539;Ljava/util/function/Predicate;)V + p 1 dynamicRegistryManager + p 2 chunkGenerator + p 3 biomeSource + p 4 noiseConfig + p 5 structureTemplateManager + p 6 random + p 7 seed + p 9 chunkPos + p 10 world + p 11 biomePredicate +c net/minecraft/class_3196 net/minecraft/server/world/ChunkPosDistanceLevelPropagator + m (J)I method_14028 getInitialLevel + p 1 id + m (JIZ)V method_14027 updateLevel + p 1 chunkPos + p 3 distance + p 4 decrease +c net/minecraft/class_3197 net/minecraft/world/gen/structure/SwampHutStructure + f Lcom/mojang/serialization/MapCodec; field_37818 CODEC + m (Lnet/minecraft/class_6626;Lnet/minecraft/class_3195$class_7149;)V method_38693 addPieces + p 1 context + p 0 collector + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_6626;)V method_41693 method_41693 + p 1 collector +c net/minecraft/class_3191 net/minecraft/entity/player/BlockBreakingInfo + f I field_13857 lastUpdateTick + f I field_13858 stage + f I field_13859 actorNetworkId + f Lnet/minecraft/class_2338; field_13860 pos + m (Lnet/minecraft/class_3191;)I method_23269 compareTo + m (ILnet/minecraft/class_2338;)V + p 1 breakingEntityId + p 2 pos + m (Ljava/lang/Object;)I compareTo compareTo + p 1 other + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()I method_34868 getActorId + m ()I method_13990 getLastUpdateTick + m ()I method_13988 getStage + m (I)V method_13989 setLastUpdateTick + p 1 lastUpdateTick + m ()Lnet/minecraft/class_2338; method_13991 getPos + m (I)V method_13987 setStage + p 1 stage +c net/minecraft/class_3193 net/minecraft/server/world/ChunkHolder + f Ljava/util/concurrent/CompletableFuture; field_26930 levelIncreaseFuture + f Ljava/util/concurrent/CompletableFuture; field_16429 UNLOADED_WORLD_CHUNK_FUTURE + f I field_17208 completedLevel + f Ljava/util/concurrent/CompletableFuture; field_51858 savingFuture + f Ljava/util/concurrent/CompletableFuture; field_46085 postProcessingFuture + f Lnet/minecraft/class_3193$class_3897; field_17210 playersWatchingChunkProvider + f I field_13862 level + f Z field_25803 pendingBlockUpdates + c Indicates that {@link #blockUpdatesBySection} contains at least one entry. + f Lnet/minecraft/class_3568; field_13863 lightingProvider + f Ljava/util/BitSet; field_13871 blockLightUpdateBits + f Ljava/util/concurrent/CompletableFuture; field_13865 entityTickingFuture + f Lnet/minecraft/class_5539; field_26929 world + f Z field_19238 accessible + f [Lit/unimi/dsi/fastutil/shorts/ShortSet; field_25804 blockUpdatesBySection + c Contains the packed chunk-local positions that have been marked for update\nby {@link #markForBlockUpdate}, grouped by their vertical chunk section.\n

\nEntries for a section are null if the section has no positions marked for update. + f I field_16432 lastTickLevel + f Ljava/util/BitSet; field_13870 skyLightUpdateBits + f Ljava/util/concurrent/CompletableFuture; field_19333 tickingFuture + f Ljava/util/concurrent/CompletableFuture; field_16431 accessibleFuture + f Lnet/minecraft/class_3193$class_3896; field_17209 levelUpdateListener + f Lnet/minecraft/class_9259; field_16427 UNLOADED_WORLD_CHUNK + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/class_9259;)V method_57117 method_57117 + p 1 optionalChunk + m (Ljava/util/List;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_30312 method_30312 + p 4 state + p 3 pos + m (Ljava/util/List;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_14009 sendBlockEntityUpdatePacket + p 2 world + p 3 pos + p 1 players + m (Lnet/minecraft/class_2818;)V method_14006 flushUpdates + p 1 chunk + m (Ljava/util/concurrent/CompletableFuture;)V method_53680 combinePostProcessingFuture + p 1 postProcessingFuture + m (Ljava/util/List;Lnet/minecraft/class_2596;)V method_13992 sendPacketToPlayers + p 1 players + p 2 packet + m ()Ljava/util/concurrent/CompletableFuture; method_16145 getTickingFuture + m (Lnet/minecraft/class_2338;)Z method_14002 markForBlockUpdate + p 1 pos + m ()Lnet/minecraft/class_2818; method_16144 getWorldChunk + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; method_39966 method_39966 + p 1 thenResult + m ()Lnet/minecraft/class_2818; method_53682 getPostProcessedChunk + m (Ljava/util/List;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_30311 tryUpdateBlockEntityAt + p 1 players + p 4 state + p 3 pos + p 2 world + m ()Ljava/util/concurrent/CompletableFuture; method_14000 getSavingFuture + m ()Ljava/util/concurrent/CompletableFuture; method_53681 getPostProcessingFuture + m (Lnet/minecraft/class_3898;Ljava/util/concurrent/Executor;)V method_14007 updateFutures + c Updates {@code Futures} indicating the expected loading state of the underlying chunk of this {@code ChunkHolder}.\nNote that the method merely makes actual loading process possible, but do not perform these actions. + p 1 chunkLoadingManager + p 2 executor + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/class_2818;)V method_31410 method_31410 + p 1 chunk + m (Lnet/minecraft/class_1923;ILnet/minecraft/class_5539;Lnet/minecraft/class_3568;Lnet/minecraft/class_3193$class_3896;Lnet/minecraft/class_3193$class_3897;)V + p 1 pos + p 4 lightingProvider + p 5 levelUpdateListener + p 2 level + p 3 world + p 6 playersWatchingChunkProvider + m (Lnet/minecraft/class_1944;I)Z method_14012 markForLightUpdate + p 2 y + c chunk section y coordinate + p 1 lightType + m (Lnet/minecraft/class_3898;Lnet/minecraft/class_3194;)V method_31408 decreaseLevel + p 2 target + p 1 chunkLoadingManager + m ()V method_20385 updateAccessibleStatus + m (Lnet/minecraft/class_2596;Lnet/minecraft/class_3222;)V method_13996 method_13996 + p 1 player + m ()Z method_60436 isSavable + m ()Z method_65077 hasPendingUpdates + m (I)V method_15890 setLevel + p 1 level + m (I)V method_17207 setCompletedLevel + p 1 level + m ()Ljava/util/concurrent/CompletableFuture; method_14003 getEntityTickingFuture + m ()Z method_20384 isAccessible + m ()Ljava/util/concurrent/CompletableFuture; method_20725 getAccessibleFuture + m (Lnet/minecraft/class_3898;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/Executor;Lnet/minecraft/class_3194;)V method_31409 increaseLevel + p 4 target + p 3 executor + p 2 chunkFuture + p 1 chunkLoadingManager +c net/minecraft/class_3193$class_3897 net/minecraft/server/world/ChunkHolder$PlayersWatchingChunkProvider + m (Lnet/minecraft/class_1923;Z)Ljava/util/List; method_17210 getPlayersWatchingChunk + p 1 chunkPos + p 2 onlyOnWatchDistanceEdge +c net/minecraft/class_3193$class_3896 net/minecraft/server/world/ChunkHolder$LevelUpdateListener + m (Lnet/minecraft/class_1923;Ljava/util/function/IntSupplier;ILjava/util/function/IntConsumer;)V method_17209 updateLevel + p 2 levelGetter + p 1 pos + p 4 levelSetter + p 3 targetLevel +c net/minecraft/class_9147 net/minecraft/network/state/NetworkStateBuilder + f Lnet/minecraft/class_2598; field_48617 side + f Lnet/minecraft/class_2539; field_48616 phase + f Ljava/util/List; field_48618 packetTypes + f Lnet/minecraft/class_8039; field_48619 bundleHandler + m (Lnet/minecraft/class_9145;Lnet/minecraft/class_9139;Lnet/minecraft/class_10945;)Lnet/minecraft/class_9147; method_68870 add + p 2 codec + p 3 modifier + p 1 type + m (Lnet/minecraft/class_2539;Ljava/util/function/Consumer;)Lnet/minecraft/class_10946; method_56455 s2c + p 1 registrar + p 0 type + m (Lnet/minecraft/class_2539;Lnet/minecraft/class_2598;Ljava/util/List;)Lnet/minecraft/class_9127$class_9128; method_68869 createState + p 0 phase + p 2 types + p 1 side + m (Lnet/minecraft/class_2539;Lnet/minecraft/class_2598;)V + p 2 side + p 1 phase + m (Lnet/minecraft/class_2539;Ljava/util/function/Consumer;)Lnet/minecraft/class_10946; method_56451 c2s + p 1 registrar + p 0 type + m (Lnet/minecraft/class_9145;Lnet/minecraft/class_9139;)Lnet/minecraft/class_9147; method_56454 add + p 1 type + p 2 codec + m (Ljava/lang/Object;)Lnet/minecraft/class_10946; method_68868 buildFactory + p 1 context + m (Lnet/minecraft/class_2539;Lnet/minecraft/class_2598;Ljava/util/function/Consumer;)Lnet/minecraft/class_10946; method_56452 build + p 2 registrar + p 1 side + p 0 type + m (Ljava/util/function/Function;Ljava/util/List;Ljava/lang/Object;)Lnet/minecraft/class_9139; method_56450 createCodec + p 1 bufUpgrader + p 2 packetTypes + p 3 context + m ()Lnet/minecraft/class_10947; method_56447 buildContextAwareFactory + m (Lnet/minecraft/class_9145;Ljava/util/function/Function;Lnet/minecraft/class_8037;)Lnet/minecraft/class_9147; method_56453 addBundle + p 2 bundler + p 1 id + p 3 splitter + m (Lnet/minecraft/class_2539;Lnet/minecraft/class_2598;Ljava/util/function/Consumer;)Lnet/minecraft/class_10947; method_68871 buildContextAware + p 0 type + p 1 side + p 2 registrar + m (Lnet/minecraft/class_2539;Ljava/util/function/Consumer;)Lnet/minecraft/class_10947; method_68873 contextAwareS2C + p 0 type + p 1 registrar + m (Lnet/minecraft/class_2539;Ljava/util/function/Consumer;)Lnet/minecraft/class_10947; method_68872 contextAwareC2S + p 1 registrar + p 0 type +c net/minecraft/class_9147$class_9148 net/minecraft/network/state/NetworkStateBuilder$PacketType + f Lnet/minecraft/class_9139; comp_2233 codec + f Lnet/minecraft/class_9145; comp_2232 type + f Lnet/minecraft/class_10945; comp_3880 modifier + m ()Lnet/minecraft/class_9139; comp_2233 codec + m (Lnet/minecraft/class_9146;Ljava/util/function/Function;Ljava/lang/Object;)V method_56459 add + p 1 builder + p 3 context + p 2 bufUpgrader + m ()Lnet/minecraft/class_9145; comp_2232 type + m ()Lnet/minecraft/class_10945; comp_3880 modifier + m (Lnet/minecraft/class_9145;Lnet/minecraft/class_9139;Lnet/minecraft/class_10945;)V + p 1 type + p 2 codec + p 3 modifier +c net/minecraft/class_9147$class_9149 net/minecraft/network/state/NetworkStateBuilder$NetworkStateImpl + f Lnet/minecraft/class_2598; comp_2235 side + f Lnet/minecraft/class_8039; comp_2237 bundleHandler + f Lnet/minecraft/class_2539; comp_2234 id + f Lnet/minecraft/class_9139; comp_2236 codec + m (Lnet/minecraft/class_2539;Lnet/minecraft/class_2598;Lnet/minecraft/class_9139;Lnet/minecraft/class_8039;)V + p 1 id + p 2 side + p 3 codec + p 4 bundleHandler +c net/minecraft/class_9146 net/minecraft/network/handler/SideValidatingDispatchingCodecBuilder + f Lnet/minecraft/class_9136$class_9137; field_48614 backingBuilder + f Lnet/minecraft/class_2598; field_48615 side + m (Lnet/minecraft/class_9145;Lnet/minecraft/class_9139;)Lnet/minecraft/class_9146; method_56446 add + p 2 codec + p 1 id + m ()Lnet/minecraft/class_9139; method_56445 build + m (Lnet/minecraft/class_2598;)V + p 1 side +c net/minecraft/class_9145 net/minecraft/network/packet/PacketType + f Lnet/minecraft/class_2598; comp_2230 side + f Lnet/minecraft/class_2960; comp_2231 id + m ()Lnet/minecraft/class_2598; comp_2230 side + m ()Lnet/minecraft/class_2960; comp_2231 id + m (Lnet/minecraft/class_2598;Lnet/minecraft/class_2960;)V + p 1 side + p 2 id +c net/minecraft/class_9144 net/minecraft/unused/packageinfo/PackageInfo9144 +c net/minecraft/class_9143 net/minecraft/network/codec/ValueFirstEncoder + c A functional interface that, given a value and a buffer, encodes it.\n\n

An instance method taking {@link net.minecraft.network.PacketByteBuf} as an\nargument can be used as a value-first encoder.\n\n@see PacketDecoder\n@see PacketEncoder + m (Ljava/lang/Object;Ljava/lang/Object;)V encode encode + p 2 buf + p 1 value +c net/minecraft/class_9142 net/minecraft/network/codec/PacketEncoder + c A functional interface that, given a buffer and a value, encodes it.\n\n

A static method taking {@link net.minecraft.network.PacketByteBuf} and the\nvalue as the arguments can be used as an encoder.\n\n@see PacketDecoder\n@see ValueFirstEncoder + m (Ljava/lang/Object;Ljava/lang/Object;)V encode encode + p 2 value + p 1 buf +c net/minecraft/class_9141 net/minecraft/network/codec/PacketDecoder + c A functional interface that, given a buffer, decodes a value.\n\n

A constructor taking {@link net.minecraft.network.PacketByteBuf} as an\nargument can be used as a decoder.\n\n@see PacketEncoder\n@see ValueFirstEncoder + m (Ljava/lang/Object;)Ljava/lang/Object; decode decode + p 1 buf +c net/minecraft/class_11563 net/minecraft/datafixer/schema/Schema4532 +c net/minecraft/class_10231 net/minecraft/client/realms/gui/screen/RealmsWorldCreating + f Lorg/slf4j/Logger; field_54364 LOGGER + m (Lnet/minecraft/class_310;Lnet/minecraft/class_437;Lnet/minecraft/class_437;ILnet/minecraft/class_4877;Lnet/minecraft/class_4445;)V method_64335 showCreateWorldScreen + p 0 client + p 2 realmsScreen + p 1 parent + p 4 server + p 3 slotId + p 5 creationTask + m (Lnet/minecraft/class_7780;Lnet/minecraft/class_31;Ljava/nio/file/Path;)Ljava/nio/file/Path; method_64337 saveTempWorld + p 2 dataPackTempDir + p 1 levelProperties + p 0 dynamicRegistries + m (Lnet/minecraft/class_310;Lnet/minecraft/class_437;Lnet/minecraft/class_437;Lnet/minecraft/class_4877;Lnet/minecraft/class_4445;Ljava/lang/Object;Ljava/lang/Throwable;)Ljava/lang/Object; method_64336 method_64336 + p 5 v + p 6 throwable + m (Lnet/minecraft/class_310;Lnet/minecraft/class_437;ILnet/minecraft/class_4877;Lnet/minecraft/class_4445;Lnet/minecraft/class_437;Lnet/minecraft/class_525;Lnet/minecraft/class_7780;Lnet/minecraft/class_31;Ljava/nio/file/Path;)Z method_64334 method_64334 + p 8 levelProperties + p 7 dynamicRegistries + p 9 dataPackTempDir + p 6 screen +c net/minecraft/class_11562 net/minecraft/datafixer/schema/Schema4531 +c net/minecraft/class_10232 net/minecraft/client/realms/exception/upload/CancelledRealmsUploadException + f Lnet/minecraft/class_2561; field_54365 STATUS_TEXT +c net/minecraft/class_11561 net/minecraft/util/NameToIdCache + m (Lnet/minecraft/class_11560;)V method_14508 add + p 1 player + m (Z)V method_72367 setOfflineMode + p 1 offlineMode + m (Ljava/util/UUID;)Ljava/util/Optional; method_14512 getByUuid + p 1 uuid + m (Ljava/lang/String;)Ljava/util/Optional; method_14515 findByName + p 1 name + m ()V method_14518 save +c net/minecraft/class_11560 net/minecraft/server/PlayerConfigEntry + f Ljava/util/UUID; comp_4422 id + f Lcom/mojang/serialization/Codec; field_62419 CODEC + f Ljava/lang/String; comp_4423 name + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_11560; method_72370 read + p 0 object + m (Lcom/mojang/authlib/yggdrasil/response/NameAndId;)V + p 1 nameAndId + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_74001 method_74001 + p 0 instance + m (Lcom/mojang/authlib/GameProfile;)V + p 1 profile + m (Lcom/google/gson/JsonObject;)V method_72372 write + p 1 object + m (Ljava/lang/String;)Lnet/minecraft/class_11560; method_72371 fromNickname + p 0 nickname + m ()Ljava/util/UUID; comp_4422 id + m ()Ljava/lang/String; comp_4423 name + m (Ljava/util/UUID;Ljava/lang/String;)V + p 1 id + p 2 name +c net/minecraft/class_10230 net/minecraft/unused/packageinfo/PackageInfo10230 +c net/minecraft/class_10235 net/minecraft/client/realms/exception/upload/TooBigRealmsUploadException + f J field_54367 maxSizeInBytes + m (J)V + p 1 maxSizeInBytes +c net/minecraft/class_11566 net/minecraft/util/HeldItemContext + m ()Lnet/minecraft/class_1309; method_72393 getEntity + m ()Lnet/minecraft/class_1937; method_73183 getEntityWorld + m ()F method_73188 getBodyYaw + m (Lnet/minecraft/class_11566;Lnet/minecraft/class_243;)Lnet/minecraft/class_11566; method_73190 offseted + p 0 context + p 1 offset + m ()Lnet/minecraft/class_243; method_73189 getEntityPos +c net/minecraft/class_11566$class_11726 net/minecraft/util/HeldItemContext$Offset + f Lnet/minecraft/class_243; comp_4598 offset + f Lnet/minecraft/class_11566; comp_4597 owner + m ()Lnet/minecraft/class_11566; comp_4597 owner + m ()Lnet/minecraft/class_243; comp_4598 offset + m (Lnet/minecraft/class_11566;Lnet/minecraft/class_243;)V + p 1 owner + p 2 offset +c net/minecraft/class_10236 net/minecraft/client/realms/exception/upload/CloseFailureRealmsUploadException +c net/minecraft/class_11565 net/minecraft/entity/ContainerUser + m ()Lnet/minecraft/class_1309; method_72382 asLivingEntity + m (Lnet/minecraft/class_5561;Lnet/minecraft/class_2338;)Z method_72380 isViewingContainerAt + p 2 pos + p 1 viewerCountManager + m ()D method_72381 getContainerInteractionRange +c net/minecraft/class_10233 net/minecraft/client/realms/exception/RealmsUploadException + m ()Lnet/minecraft/class_2561; method_64338 getStatus + m ()[Lnet/minecraft/class_2561; method_64339 getStatusTexts +c net/minecraft/class_11564 net/minecraft/datafixer/schema/Schema4533 +c net/minecraft/class_10234 net/minecraft/client/realms/exception/upload/FailedRealmsUploadException + f Lnet/minecraft/class_2561; field_54366 errorMessage + m (Lnet/minecraft/class_2561;)V + p 1 errorMessage + m (Ljava/lang/String;)V + p 1 errorMessage +c net/minecraft/class_10239 net/minecraft/client/realms/util/UploadProgressTracker + m ()Lnet/minecraft/class_4351; method_64349 getUploadProgress + m ()Lnet/minecraft/class_10239; method_64351 create + m ()V method_64350 updateProgressDisplay +c net/minecraft/class_10239$1 net/minecraft/client/realms/util/UploadProgressTracker$1 + f Lnet/minecraft/class_4351; field_54383 progress +c net/minecraft/class_10237 net/minecraft/client/realms/util/UploadCompressor + f J field_54368 MAX_SIZE + f Ljava/util/function/BooleanSupplier; field_54370 cancellationSupplier + f Ljava/nio/file/Path; field_54371 directory + m (Ljava/nio/file/Path;Ljava/util/function/BooleanSupplier;)Ljava/io/File; method_64342 compress + p 0 directory + p 1 cancellationSupplier + m (Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;Ljava/nio/file/Path;Ljava/lang/String;Z)V method_64343 compress + p 4 root + p 3 prefix + p 2 directory + p 1 stream + m (Ljava/nio/file/Path;Ljava/util/function/BooleanSupplier;)V + p 2 cancellationSupplier + p 1 directory + m ()Ljava/io/File; method_64340 run + m (J)V method_64341 validateSize + p 1 size +c net/minecraft/class_11568 net/minecraft/entity/ai/brain/task/MoveItemsTask + f I field_61226 VISITED_POSITION_EXPIRY + f D field_61230 QUEUING_RANGE + f I field_61234 horizontalRange + f D field_61231 INTERACTION_RANGE + f Lnet/minecraft/class_11568$class_11572; field_61241 targetStorage + f Lnet/minecraft/class_11568$class_11571; field_61242 navigationState + f I field_61227 MAX_STACK_SIZE_AT_ONCE + f I field_61235 verticalRange + f Ljava/util/function/Predicate; field_61238 storagePredicate + f I field_61228 VISITS_UNTIL_COOLDOWN + f I field_61244 interactionTicks + f Ljava/util/function/Predicate; field_61237 outputContainerPredicate + f Lnet/minecraft/class_11568$class_11569; field_61243 interactionState + f Ljava/util/function/Consumer; field_61239 travellingCallback + f I field_61229 COOLDOWN_EXPIRY + f I field_61225 INTERACTION_TICKS + f F field_61233 speed + f Ljava/util/Map; field_61240 interactionCallbacks + f Ljava/util/function/Predicate; field_61236 inputContainerPredicate + m (Ljava/util/Set;Ljava/util/Set;Lnet/minecraft/class_11568$class_11572;Lnet/minecraft/class_1937;)Z method_72422 hasVisited + p 2 checkedPositions + p 1 visitedPositions + p 4 visited + p 3 storage + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_11568$class_11572;)Z method_72421 isUnchanged + p 1 world + p 2 storage + m (Lnet/minecraft/class_1263;)Z method_72402 hasItem + p 0 inventory + m (Lnet/minecraft/class_11568$class_11572;Lnet/minecraft/class_1937;)Ljava/util/stream/Stream; method_72418 getContainerStorages + p 2 world + p 1 storage + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_72408 markVisited + p 1 entity + p 3 pos + p 2 world + m (Lnet/minecraft/class_1314;)V method_72427 transitionToQueuing + p 1 entity + m (Lnet/minecraft/class_1314;)V method_72403 resetVisitedPositions + p 1 entity + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_11568$class_11572;Lnet/minecraft/class_11568$class_11570;)V method_72407 method_72407 + p 3 consumer + m (Lnet/minecraft/class_11568$class_11572;)Z method_74093 isLocked + p 1 storage + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_74863 run + m (Lnet/minecraft/class_1263;)Lnet/minecraft/class_1799; method_72426 extractStack + p 0 inventory + m (Lnet/minecraft/class_1314;)Lnet/minecraft/class_243; method_74870 atCenterY + p 1 entity + m (Lnet/minecraft/class_11568$class_11569;Lnet/minecraft/class_1314;Lnet/minecraft/class_1263;)V method_72413 method_72413 + p 3 inventory + p 2 entity + m (Lnet/minecraft/class_1314;)V method_72440 walkTowardsTargetStorage + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_72435 finishRunning + m (Lnet/minecraft/class_1314;)Z method_72448 canPickUpItem + p 0 entity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_11568$class_11572;)Z method_74663 isChestBlocked + p 2 storage + p 1 world + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_74864 atCenterY + p 2 pos + p 1 entity + m (Lnet/minecraft/class_11568$class_11572;Lnet/minecraft/class_1937;Lnet/minecraft/class_1314;)V method_72432 tickQueuing + p 1 storage + p 2 world + p 3 entity + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_74021 markUnreachable + p 3 blockPos + p 2 world + p 1 entity + m (Lnet/minecraft/class_1314;)V method_72436 onCannotUseStorage + p 1 entity + m (Lnet/minecraft/class_1314;)I method_74871 getHorizontalRange + p 1 entity + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1937;Lnet/minecraft/class_2586;Ljava/util/Set;Ljava/util/Set;Lnet/minecraft/class_238;)Lnet/minecraft/class_11568$class_11572; method_72409 getStorageFor + p 5 unreachablePositions + p 6 box + p 3 blockEntity + p 4 visitedPositions + p 1 entity + p 2 world + m (Lnet/minecraft/class_11;Lnet/minecraft/class_1314;)Lnet/minecraft/class_243; method_74868 getTargetPos + p 2 entity + p 1 path + m (Lnet/minecraft/class_1314;)Ljava/util/Set; method_72446 getVisitedPositions + p 0 entity + m (Lnet/minecraft/class_11568$class_11572;Lnet/minecraft/class_1937;Lnet/minecraft/class_1314;)V method_72416 tickInteracting + p 1 storage + p 2 world + p 3 entity + m (Lnet/minecraft/class_11568$class_11569;)V method_72429 setInteractionState + p 1 state + m (Lnet/minecraft/class_11568$class_11571;)V method_72414 setNavigationState + p 1 state + m (Lnet/minecraft/class_1314;)D method_74024 getSightRange + p 0 entity + m (Lnet/minecraft/class_1314;)I method_74872 getVerticalRange + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;)Z method_72399 tick + p 1 world + p 2 entity + m (Lnet/minecraft/class_1314;)Z method_74023 hasFinishedNavigation + p 0 entity + m (Lnet/minecraft/class_11568$class_11572;Lnet/minecraft/class_3965;)Z method_74866 method_74866 + p 1 hitResult + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1263;Ljava/util/function/BiConsumer;Ljava/util/function/BiConsumer;Ljava/util/function/BiConsumer;Ljava/util/function/BiConsumer;)V method_72406 selectInteractionState + p 2 inventory + p 3 pickupItemCallback + p 1 entity + p 6 placeNoItemCallback + p 4 pickupNoItemCallback + p 5 placeItemCallback + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_2680;)Z method_72410 testContainer + p 2 state + p 1 entity + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1263;)Z method_72428 hasExistingStack + p 0 entity + p 1 inventory + m (Lnet/minecraft/class_1314;)V method_72449 cooldown + p 1 entity + m (Lnet/minecraft/class_11568$class_11572;Lnet/minecraft/class_1937;Lnet/minecraft/class_1314;)V method_72419 tickTravelling + p 2 world + p 3 entity + p 1 storage + m (Lnet/minecraft/class_1314;)Ljava/util/Set; method_74022 getUnreachablePositions + p 0 entity + m (DLnet/minecraft/class_11568$class_11572;Lnet/minecraft/class_1937;Lnet/minecraft/class_1314;Lnet/minecraft/class_243;)Z method_72398 isWithinRange + p 3 storage + p 4 world + p 1 range + p 5 entity + p 6 pos + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1314;Lnet/minecraft/class_1263;)V method_72445 method_72445 + p 2 entityx + p 3 inventory + p 1 entity + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1263;)Lnet/minecraft/class_1799; method_72443 insertStack + c {@return the {@link ItemStack} that should remain in the entity's inventory\nafter the operation}. + p 0 entity + p 1 inventory + m (FLjava/util/function/Predicate;Ljava/util/function/Predicate;IILjava/util/Map;Ljava/util/function/Consumer;Ljava/util/function/Predicate;)V + p 1 speed + p 3 outputChestPredicate + p 2 inputContainerPredicate + p 5 verticalRange + p 4 horizontalRange + p 7 travellingCallback + p 6 interactionCallbacks + p 8 storagePredicate + m (Lnet/minecraft/class_11568$class_11572;Lnet/minecraft/class_1937;Lnet/minecraft/class_1314;Lnet/minecraft/class_243;)Z method_74865 isVisible + p 2 world + p 3 entity + p 1 storage + p 4 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_11568$class_11572;Lnet/minecraft/class_1314;)Z method_74958 canNavigateTo + p 1 world + p 3 entity + p 2 storage + m (Lnet/minecraft/class_11568$class_11569;)Ljava/util/function/BiConsumer; method_72412 createSetInteractionStateCallback + p 1 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_72400 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_72425 keepRunning + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_11568$class_11572;)Lnet/minecraft/class_4208; method_72433 method_72433 + p 1 checkedStorage + m (Ljava/util/Set;Ljava/util/Set;Lnet/minecraft/class_4208;)Z method_74019 method_74019 + p 2 pos + m (Lnet/minecraft/class_1937;ZLnet/minecraft/class_243;Lnet/minecraft/class_11568$class_11572;Lnet/minecraft/class_1314;)Z method_74018 isVisible + p 1 world + p 2 nextToStorage + p 3 pos + p 4 storage + p 5 entity + m (Lnet/minecraft/class_11568$class_11572;Lnet/minecraft/class_1314;)V method_72430 transitionToInteracting + p 1 storage + p 2 entity + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1263;)V method_72437 takeStack + p 1 entity + p 2 inventory + m (Lnet/minecraft/class_1314;)V method_72450 resetNavigation + p 1 entity + m (Lnet/minecraft/class_1314;)V method_72434 invalidateTargetStorage + p 1 entity + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1263;)Z method_72405 canInsert + p 1 inventory + p 0 entity + m (Lnet/minecraft/class_1314;)V method_72442 transitionToTravelling + p 1 entity + m (Lnet/minecraft/class_1314;)Lnet/minecraft/class_238; method_72444 getSearchBoundingBox + p 1 entity + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1314;Lnet/minecraft/class_1263;)V method_72447 method_72447 + p 1 entity + p 2 entityx + p 3 inventory + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_243;Lnet/minecraft/class_1314;Lnet/minecraft/class_243;)Lnet/minecraft/class_3965; method_74867 method_74867 + p 3 storagePos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;)Ljava/util/Optional; method_74957 findStorage + p 2 entity + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;)Z method_74017 shouldRun + m (Lnet/minecraft/class_11568$class_11572;Lnet/minecraft/class_1937;)Z method_72431 matchesStoragePredicate + p 2 world + p 1 storage + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1263;)V method_72441 placeStack + p 1 entity + p 2 inventory + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1314;)Z method_72420 hasValidTargetStorage + p 2 entity + p 1 world + m (Lnet/minecraft/class_11568$class_11572;Lnet/minecraft/class_1314;)V method_72438 setLookTarget + p 1 storage + p 2 entity + m (Lnet/minecraft/class_243;Lnet/minecraft/class_2350;)Lnet/minecraft/class_243; method_74869 method_74869 + p 1 direction +c net/minecraft/class_11568$class_11571 net/minecraft/entity/ai/brain/task/MoveItemsTask$NavigationState + f Lnet/minecraft/class_11568$class_11571; field_61252 INTERACTING + f Lnet/minecraft/class_11568$class_11571; field_61251 QUEUING + f Lnet/minecraft/class_11568$class_11571; field_61250 TRAVELLING +c net/minecraft/class_11568$class_11572 net/minecraft/entity/ai/brain/task/MoveItemsTask$Storage + f Lnet/minecraft/class_1263; comp_4428 inventory + f Lnet/minecraft/class_2338; comp_4427 pos + f Lnet/minecraft/class_2586; comp_4429 blockEntity + f Lnet/minecraft/class_2680; comp_4430 state + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_1937;)Lnet/minecraft/class_11568$class_11572; method_72455 forContainer + p 0 blockEntity + p 1 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1937;)Lnet/minecraft/class_11568$class_11572; method_72454 forContainer + p 0 pos + p 1 world + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1263; method_72453 getInventory + p 3 pos + p 2 world + p 1 state + p 0 blockEntity + m ()Lnet/minecraft/class_1263; comp_4428 inventory + m ()Lnet/minecraft/class_2338; comp_4427 pos + m ()Lnet/minecraft/class_2586; comp_4429 blockEntity + m ()Lnet/minecraft/class_2680; comp_4430 state + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1263;Lnet/minecraft/class_2586;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 inventory + p 3 blockEntity + p 4 state +c net/minecraft/class_11568$class_11569 net/minecraft/entity/ai/brain/task/MoveItemsTask$InteractionState + f Lnet/minecraft/class_11568$class_11569; field_61248 PLACE_NO_ITEM + f Lnet/minecraft/class_11568$class_11569; field_61245 PICKUP_ITEM + f Lnet/minecraft/class_11568$class_11569; field_61247 PLACE_ITEM + f Lnet/minecraft/class_11568$class_11569; field_61246 PICKUP_NO_ITEM +c net/minecraft/class_11568$class_11570 net/minecraft/entity/ai/brain/task/MoveItemsTask$InteractionCallback +c net/minecraft/class_10238 net/minecraft/client/realms/util/RealmsUploader + f Lnet/minecraft/class_10239; field_54380 progressTracker + f Z field_54381 cancelled + f Lnet/minecraft/class_320; field_54377 session + f Lorg/slf4j/Logger; field_54373 LOGGER + f Ljava/nio/file/Path; field_54375 directory + f J field_54378 worldId + f Ljava/util/concurrent/CompletableFuture; field_54382 upload + f I field_54372 MAX_ATTEMPTS + f Lnet/minecraft/class_4341; field_54374 client + f Lnet/minecraft/class_11306; field_60173 options + m (Ljava/nio/file/Path;Lnet/minecraft/class_11306;Lnet/minecraft/class_320;JLnet/minecraft/class_10239;)V + p 2 options + p 1 directory + p 4 worldId + p 3 session + p 6 progressTracker + m ()Lnet/minecraft/class_4888; method_64346 uploadSync + m ()V method_64345 cancel + m ()Ljava/util/concurrent/CompletableFuture; method_64344 upload +c net/minecraft/class_9159 net/minecraft/server/dedicated/command/TransferCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_48710 NO_PLAYERS_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56523 method_56523 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56527 method_56527 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_56522 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;Ljava/lang/String;ILjava/util/Collection;)I method_56525 executeTransfer + p 3 players + p 2 port + p 1 host + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56529 method_56529 + p 0 context +c net/minecraft/class_9157 net/minecraft/network/state/ConfigurationStates + f Lnet/minecraft/class_10946; field_52194 C2S_FACTORY + f Lnet/minecraft/class_9127; field_48698 C2S + f Lnet/minecraft/class_9127; field_48699 S2C + f Lnet/minecraft/class_10946; field_52195 S2C_FACTORY + m (Lnet/minecraft/class_9147;)V method_56512 method_56512 + p 0 builder + m (Lnet/minecraft/class_9147;)V method_56513 method_56513 + p 0 builder +c net/minecraft/class_10219 net/minecraft/client/util/tracy/TracyFrameCapturer + f I field_54253 MAX_HEIGHT + f I field_54252 MAX_WIDTH + f I field_54263 offset + f I field_54255 framebufferWidth + f I field_54257 width + f I field_54256 framebufferHeight + f Lcom/mojang/blaze3d/textures/GpuTextureView; field_60564 textureView + f I field_54258 height + f Lcom/mojang/blaze3d/textures/GpuTexture; field_54259 texture + f Z field_54264 captured + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_54260 buffer + f Lnet/minecraft/class_10219$class_10857; field_57833 status + m ()V method_64230 upload + m (II)V method_64231 resize + p 1 framebufferWidth + p 2 framebufferHeight + m (Lnet/minecraft/class_276;)V method_64232 capture + p 1 framebuffer + m ()V method_64233 markFrame +c net/minecraft/class_10219$class_10857 net/minecraft/client/util/tracy/TracyFrameCapturer$Status + f Lnet/minecraft/class_10219$class_10857; field_57836 WAITING_FOR_UPLOAD + f Lnet/minecraft/class_10219$class_10857; field_57834 WAITING_FOR_CAPTURE + f Lnet/minecraft/class_10219$class_10857; field_57835 WAITING_FOR_COPY +c net/minecraft/class_9156 net/minecraft/network/packet/ConfigPackets + f Lnet/minecraft/class_9145; field_49019 SELECT_KNOWN_PACKS_C2S + f Lnet/minecraft/class_9145; field_49018 SELECT_KNOWN_PACKS_S2C + f Lnet/minecraft/class_9145; field_48697 FINISH_CONFIGURATION_C2S + f Lnet/minecraft/class_9145; field_48694 FINISH_CONFIGURATION_S2C + f Lnet/minecraft/class_9145; field_62059 ACCEPT_CODE_OF_CONDUCT + f Lnet/minecraft/class_9145; field_62058 CODE_OF_CONDUCT + f Lnet/minecraft/class_9145; field_50085 RESET_CHAT + f Lnet/minecraft/class_9145; field_48695 REGISTRY_DATA + f Lnet/minecraft/class_9145; field_48696 UPDATE_ENABLED_FEATURES + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_56511 c2s + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_56510 s2c + p 0 id +c net/minecraft/class_9152 net/minecraft/network/packet/CommonPackets + f Lnet/minecraft/class_9145; field_48631 CUSTOM_PAYLOAD_S2C + f Lnet/minecraft/class_9145; field_48642 KEEP_ALIVE_C2S + f Lnet/minecraft/class_9145; field_48633 KEEP_ALIVE_S2C + f Lnet/minecraft/class_9145; field_48641 CUSTOM_PAYLOAD_C2S + f Lnet/minecraft/class_9145; field_48632 DISCONNECT + f Lnet/minecraft/class_9145; field_48638 TRANSFER + f Lnet/minecraft/class_9145; field_48637 STORE_COOKIE + f Lnet/minecraft/class_9145; field_48639 UPDATE_TAGS + f Lnet/minecraft/class_9145; field_48634 PING + f Lnet/minecraft/class_9145; field_48636 RESOURCE_PACK_PUSH + f Lnet/minecraft/class_9145; field_48635 RESOURCE_PACK_POP + f Lnet/minecraft/class_9145; field_48640 CLIENT_INFORMATION + f Lnet/minecraft/class_9145; field_48644 RESOURCE_PACK + f Lnet/minecraft/class_9145; field_48643 PONG + f Lnet/minecraft/class_9145; field_60849 CUSTOM_CLICK_ACTION + f Lnet/minecraft/class_9145; field_60607 SHOW_DIALOG + f Lnet/minecraft/class_9145; field_60606 CLEAR_DIALOG + f Lnet/minecraft/class_9145; field_52191 CUSTOM_REPORT_DETAILS + f Lnet/minecraft/class_9145; field_52192 SERVER_LINKS + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_56472 s2c + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_56473 c2s + p 0 id +c net/minecraft/class_10220 net/minecraft/client/gui/screen/world/InitialWorldOptions + f Lnet/minecraft/class_8100$class_4539; comp_3215 selectedGameMode + f Lnet/minecraft/class_12280; comp_5181 gameRuleOverwrites + f Lnet/minecraft/class_5321; comp_3217 flatLevelPreset + m ()Lnet/minecraft/class_12280; comp_5181 gameRuleOverwrites + m ()Lnet/minecraft/class_5321; comp_3217 flatLevelPreset + m ()Lnet/minecraft/class_8100$class_4539; comp_3215 selectedGameMode + m (Lnet/minecraft/class_8100$class_4539;Lnet/minecraft/class_12280;Lnet/minecraft/class_5321;)V + p 1 selectedGameMode + p 2 gameRuleOverwrites + p 3 flatLevelPreset +c net/minecraft/class_10221 net/minecraft/client/world/GeneratorOptionsFactory + m (Lnet/minecraft/class_5350;Lnet/minecraft/class_7780;Lnet/minecraft/class_7749;)Lnet/minecraft/class_7193; apply apply + p 3 settings + p 1 dataPackContents + p 2 dynamicRegistries +c net/minecraft/class_9151 net/minecraft/network/packet/s2c/common/ServerTransferS2CPacket + f Lnet/minecraft/class_9139; field_48629 CODEC + f I comp_2241 port + f Ljava/lang/String; comp_2240 host + m (Lnet/minecraft/class_2540;)V method_56469 write + p 1 buf + m (Lnet/minecraft/class_8705;)V method_56470 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Ljava/lang/String; comp_2240 host + m ()I comp_2241 port + m (Ljava/lang/String;I)V + p 1 host + p 2 port +c net/minecraft/class_11555 net/minecraft/resource/PackVersion + f Lcom/mojang/serialization/Codec; field_61150 ANY_CODEC + f Lorg/slf4j/Logger; field_61151 LOGGER + f Lcom/mojang/serialization/Codec; field_61149 CODEC + f I comp_4417 minor + f I comp_4416 major + m (Lnet/minecraft/class_3264;)Lcom/mojang/serialization/MapCodec; method_72329 createRangeCodec + p 0 type + m (Lnet/minecraft/class_11555;)I method_72326 compareTo + m ()Lnet/minecraft/class_6497; method_72318 majorRange + m (ILnet/minecraft/class_11555;)Ljava/util/List; method_72322 method_72322 + p 1 version + m (I)Lcom/mojang/serialization/Codec; method_72328 createCodec + p 0 impliedMinorVersion + m (I)Lnet/minecraft/class_11555; method_72319 of + p 0 major + m (Ljava/lang/Object;)I compareTo compareTo + p 1 o + m (ILnet/minecraft/class_6497;)Lcom/mojang/serialization/DataResult; method_72323 method_72323 + p 1 range + m (ILjava/util/List;)Lnet/minecraft/class_11555; method_72324 method_72324 + p 1 list + m (Lnet/minecraft/class_3264;)I method_72325 getLastOldPackVersion + p 0 type + m (Ljava/util/List;ILjava/util/function/BiFunction;)Lcom/mojang/serialization/DataResult; method_72327 validate + p 1 lastOldPackVersion + p 0 holders + p 2 toResult + m (II)Lnet/minecraft/class_11555; method_72320 of + p 0 major + p 1 minor + m (ILnet/minecraft/class_11555$class_11556;)Lcom/mojang/serialization/DataResult; method_72321 method_72321 + p 1 format + m ()I comp_4416 major + m ()I comp_4417 minor + m (II)V + p 1 major + p 2 minor +c net/minecraft/class_11555$class_11557 net/minecraft/resource/PackVersion$FormatHolder + m ()Lnet/minecraft/class_11555$class_11556; comp_4412 format +c net/minecraft/class_11555$class_11556 net/minecraft/resource/PackVersion$Format + f Lcom/mojang/serialization/MapCodec; field_61154 PACK_CODEC + f Lcom/mojang/serialization/MapCodec; field_61153 OVERLAY_CODEC + f Ljava/util/Optional; comp_4420 format + f Ljava/util/Optional; comp_4421 supported + f Ljava/util/Optional; comp_4418 min + f Ljava/util/Optional; comp_4419 max + m (Lnet/minecraft/class_6497;I)Lnet/minecraft/class_11555$class_11556; method_72334 ofRange + p 0 range + p 1 lastOldPackVersion + m (IZLjava/lang/String;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_72332 validateSupportedFormats + p 4 supportedFormatsKey + p 3 packDescriptor + p 2 pack + p 1 lastOldPackVersion + m ()I method_72330 minMajor + m (IZZLjava/lang/String;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_72333 validate + p 5 supportedFormatsKey + p 4 packDescriptor + p 1 lastOldPackVersion + p 3 supportsOld + p 2 pack + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/class_11555$class_11556; method_72343 method_72343 + p 0 min + p 2 supported + p 1 max + m (IZZLjava/lang/String;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_72344 validateVersions + p 4 packDescriptor + p 5 supportedFormatsKey + p 2 pack + p 3 supportsOld + p 1 lastOldPackVersion + m (II)Ljava/lang/String; method_72331 validateMainFormat + p 2 max + p 1 min + m ()Ljava/util/Optional; comp_4419 max + m ()Ljava/util/Optional; comp_4418 min + m ()Ljava/util/Optional; comp_4421 supported + m ()Ljava/util/Optional; comp_4420 format + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 min + p 2 max + p 3 format + p 4 supported +c net/minecraft/class_10225 net/minecraft/world/tick/ScheduledTickView + m ()Lnet/minecraft/class_6756; method_8397 getBlockTickScheduler + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;ILnet/minecraft/class_1953;)V method_64311 scheduleBlockTick + p 4 priority + p 3 delay + p 2 block + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3611;ILnet/minecraft/class_1953;)V method_64313 scheduleFluidTick + p 2 fluid + p 3 delay + p 4 priority + p 1 pos + m (Lnet/minecraft/class_2338;Ljava/lang/Object;ILnet/minecraft/class_1953;)Lnet/minecraft/class_6760; method_39284 createOrderedTick + p 2 type + p 1 pos + p 4 priority + p 3 delay + m ()Lnet/minecraft/class_6756; method_8405 getFluidTickScheduler + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;I)V method_64310 scheduleBlockTick + p 3 delay + p 2 block + p 1 pos + m (Lnet/minecraft/class_2338;Ljava/lang/Object;I)Lnet/minecraft/class_6760; method_39283 createOrderedTick + p 3 delay + p 2 type + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3611;I)V method_64312 scheduleFluidTick + p 1 pos + p 2 fluid + p 3 delay +c net/minecraft/class_9150 net/minecraft/network/packet/s2c/common/StoreCookieS2CPacket + f I field_48628 MAX_COOKIE_LENGTH + f Lnet/minecraft/class_9139; field_48627 CODEC + f Lnet/minecraft/class_9139; field_49011 COOKIE_PACKET_CODEC + f Lnet/minecraft/class_2960; comp_2238 key + f [B comp_2239 payload + m (Lnet/minecraft/class_2540;)V method_56467 write + p 1 buf + m (Lnet/minecraft/class_8705;)V method_56468 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Lnet/minecraft/class_2960; comp_2238 key + m ()[B comp_2239 payload + m (Lnet/minecraft/class_2960;[B)V + p 1 key + p 2 payload +c net/minecraft/class_10222 net/minecraft/util/Cooldown + f I field_54295 increment + f I field_54296 threshold + f I field_54297 current + m (II)V + p 1 increment + p 2 threshold + m ()Z method_64269 canUse + m ()V method_64268 tick + m ()V method_64267 increment +c net/minecraft/class_10223 net/minecraft/recipe/TransmuteRecipe + f Ljava/lang/String; field_54319 group + f Lnet/minecraft/class_9887; field_54324 ingredientPlacement + f Lnet/minecraft/class_1856; field_54321 input + f Lnet/minecraft/class_10591; field_54323 result + f Lnet/minecraft/class_7710; field_54320 category + f Lnet/minecraft/class_1856; field_54322 material + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_64297 matches + m (Ljava/lang/String;Lnet/minecraft/class_7710;Lnet/minecraft/class_1856;Lnet/minecraft/class_1856;Lnet/minecraft/class_10591;)V + p 5 result + p 4 material + p 3 input + p 2 category + p 1 group + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_64298 craft +c net/minecraft/class_10223$class_10224 net/minecraft/recipe/TransmuteRecipe$Serializer + f Lnet/minecraft/class_9139; field_54325 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_54326 CODEC + m (Lnet/minecraft/class_10223;)Lnet/minecraft/class_10591; method_64305 method_64305 + p 0 recipe + m (Lnet/minecraft/class_10223;)Lnet/minecraft/class_7710; method_64308 method_64308 + p 0 recipe + m (Lnet/minecraft/class_10223;)Ljava/lang/String; method_64309 method_64309 + p 0 recipe + m (Lnet/minecraft/class_10223;)Ljava/lang/String; method_64304 method_64304 + p 0 recipe + m (Lnet/minecraft/class_10223;)Lnet/minecraft/class_1856; method_64306 method_64306 + p 0 recipe + m (Lnet/minecraft/class_10223;)Lnet/minecraft/class_1856; method_64307 method_64307 + p 0 recipe + m (Lnet/minecraft/class_10223;)Lnet/minecraft/class_7710; method_64303 method_64303 + p 0 recipe + m (Lnet/minecraft/class_10223;)Lnet/minecraft/class_1856; method_64301 method_64301 + p 0 recipe + m (Lnet/minecraft/class_10223;)Lnet/minecraft/class_10591; method_64300 method_64300 + p 0 recipe + m (Lnet/minecraft/class_10223;)Lnet/minecraft/class_1856; method_64302 method_64302 + p 0 recipe + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64299 method_64299 + p 0 instance +c net/minecraft/class_9126 net/minecraft/network/handler/HandlerNames + f Ljava/lang/String; field_48521 ENCODER + f Ljava/lang/String; field_48532 LEGACY_QUERY + f Ljava/lang/String; field_48522 INBOUND_CONFIG + f Ljava/lang/String; field_48533 LATENCY + f Ljava/lang/String; field_48530 PACKET_HANDLER + f Ljava/lang/String; field_48520 DECODER + f Ljava/lang/String; field_48531 TIMEOUT + f Ljava/lang/String; field_48525 PREPENDER + f Ljava/lang/String; field_48526 DECRYPT + f Ljava/lang/String; field_48523 OUTBOUND_CONFIG + f Ljava/lang/String; field_48524 SPLITTER + f Ljava/lang/String; field_48518 DECOMPRESS + f Ljava/lang/String; field_48529 BUNDLER + f Ljava/lang/String; field_48519 COMPRESS + f Ljava/lang/String; field_48527 ENCRYPT + f Ljava/lang/String; field_48528 UNBUNDLER +c net/minecraft/class_9123 net/minecraft/server/command/TestFinder + f Lnet/minecraft/class_10675; field_56219 blockFinder + f Lnet/minecraft/class_10674; field_56218 instanceFinder + f Lnet/minecraft/class_10674; field_48507 NOOP_TEST_FUNCTION_FINDER + f Lnet/minecraft/class_2168; field_48511 commandSource + f Lnet/minecraft/class_10675; field_48508 NOOP_TEST_INSTANCE_BLOCK_FINDER + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_10674;Lnet/minecraft/class_10675;)V + p 3 blockFinder + p 2 instanceFinder + p 1 commandSource + m ()Lnet/minecraft/class_2168; method_56305 getCommandSource + m ()Lnet/minecraft/class_9123$class_9124; method_67070 builder +c net/minecraft/class_9123$class_9124 net/minecraft/server/command/TestFinder$Builder + f Ljava/util/function/UnaryOperator; field_56220 testInstanceFinderMapper + f Ljava/util/function/UnaryOperator; field_49664 testInstanceBlockFinderMapper + m (Ljava/util/function/UnaryOperator;Ljava/util/function/UnaryOperator;)V + p 1 testInstanceFinderMapper + p 2 testInstanceBlockFinderMapper + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_9123; method_56318 allStructures + p 1 context + m (I)Lnet/minecraft/class_9123$class_9124; method_57965 repeat + p 1 count + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/Collection;)Lnet/minecraft/class_9123; method_67071 selector + p 1 context + p 2 selected + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_9123; method_56324 failed + p 1 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_10674;Lnet/minecraft/class_10675;)Lnet/minecraft/class_9123; method_57967 build + p 3 blockFinder + p 2 instanceFinder + p 1 source + m (ZLnet/minecraft/class_6880$class_6883;)Z method_67073 method_67073 + p 1 instance + m (ILjava/util/function/Supplier;)Ljava/util/function/Supplier; method_57966 method_57966 + p 1 supplier + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_9123; method_56309 nearest + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/class_9123; method_56310 surface + p 1 context + p 2 radius + m (Lcom/mojang/brigadier/context/CommandContext;Z)Lnet/minecraft/class_9123; method_56312 failed + p 1 context + p 2 onlyRequired + m (Ljava/util/function/Supplier;)Ljava/util/function/Supplier; method_68720 method_68720 + p 0 finder + m (Ljava/util/function/Supplier;)Ljava/util/function/Supplier; method_68719 method_68719 + p 0 finder + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_9123; method_56321 targeted + p 1 context + m (I)Ljava/util/function/UnaryOperator; method_57970 repeating + p 0 count +c net/minecraft/class_9120 net/minecraft/test/TestStructurePlacer + f I field_48497 MARGIN_X + f Z field_52281 clearBeforeBatch + f Ljava/util/Collection; field_52283 statesToClear + f Lnet/minecraft/class_238; field_48501 box + f Lnet/minecraft/class_2338$class_2339; field_48502 mutablePos + f Lnet/minecraft/class_2338; field_48503 origin + f I field_48500 testsInCurrentRow + f F field_52282 maxX + f I field_48499 testsPerRow + f I field_48498 MARGIN_Z + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4517;)V method_61101 method_61101 + p 1 state + m (Lnet/minecraft/class_2338;IZ)V + p 1 origin + p 3 clearBeforeBatch + p 2 testsPerRow +c net/minecraft/class_9129 net/minecraft/network/RegistryByteBuf + c A packet byte buffer bound to a particular {@link DynamicRegistryManager} instance.\n\n

This is used during the {@link NetworkPhase#PLAY} phase only. + f Lnet/minecraft/class_5455; field_48538 registryManager + m (Lnet/minecraft/class_5455;Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_9129; method_56351 method_56351 + p 1 buf + m (Lnet/minecraft/class_5455;)Ljava/util/function/Function; method_56350 makeFactory + p 0 registryManager + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_5455;)V + p 2 registryManager + p 1 buf + m ()Lnet/minecraft/class_5455; method_56349 getRegistryManager +c net/minecraft/class_9127 net/minecraft/network/state/NetworkState + m ()Lnet/minecraft/class_8039; comp_2237 bundleHandler + m ()Lnet/minecraft/class_2598; comp_2235 side + m ()Lnet/minecraft/class_2539; comp_2234 id + m ()Lnet/minecraft/class_9139; comp_2236 codec +c net/minecraft/class_9127$class_9128 net/minecraft/network/state/NetworkState$Unbound + m ()Lnet/minecraft/class_2539; method_61106 phase + m (Lnet/minecraft/class_9127$class_9128$class_9828;)V method_61108 forEachPacketType + p 1 callback + m ()Lnet/minecraft/class_2598; method_61109 side +c net/minecraft/class_9127$class_9128$class_9828 net/minecraft/network/state/NetworkState$Unbound$PacketTypeConsumer + m (Lnet/minecraft/class_9145;I)V accept accept + p 1 type + p 2 protocolId +c net/minecraft/class_9127$class_10940 net/minecraft/network/state/NetworkState$Factory + m ()Lnet/minecraft/class_9127$class_9128; method_68854 buildUnbound +c net/minecraft/class_11580 net/minecraft/entity/TypedEntityData + f Ljava/lang/String; field_61361 ID_KEY + f Lorg/slf4j/Logger; field_61360 LOGGER + f Lnet/minecraft/class_2487; field_61363 nbt + f Ljava/lang/Object; field_61362 type + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_72538 createPacketCodec + p 0 typePacketCodec + m (Ljava/lang/Object;Lnet/minecraft/class_2487;)Lnet/minecraft/class_11580; method_72535 create + p 0 type + p 1 nbt + m (Ljava/lang/String;)Z method_72536 contains + p 1 key + m (Ljava/lang/Object;)Z equals equals + p 1 other + m ()Ljava/lang/Object; method_72530 getType + m ()Lnet/minecraft/class_2487; method_72540 copyNbtWithoutId + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_72532 createCodec + p 0 typeCodec + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_7225$class_7874;)Z method_72534 applyToBlockEntity + p 2 registryLookup + p 1 blockEntity + m ()Lnet/minecraft/class_2487; method_72541 getNbtWithoutIdInternal + m (Ljava/lang/Object;Lnet/minecraft/class_2487;)V + p 1 type + p 2 nbt + m (Lnet/minecraft/class_1297;)V method_72531 applyToEntity + p 1 entity + m ()Lnet/minecraft/class_2487; method_72539 getNbtWithoutId + c @deprecated Use {@link #copyNbtWithoutId} instead.j + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_72537 stripId + p 0 nbt +c net/minecraft/class_11580$1 net/minecraft/entity/TypedEntityData$1 + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode encode + p 2 ops + p 1 prefix + p 3 value + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decode decode + p 1 ops + p 2 value + m (Lnet/minecraft/class_11580;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lnet/minecraft/class_2520;)Lcom/mojang/serialization/DataResult; method_73107 method_73107 + p 3 id + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DynamicOps; method_73105 toNbtOps + p 0 ops + m (Lnet/minecraft/class_11580;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_73106 encode +c net/minecraft/class_11585 net/minecraft/block/InteractibleSlotContainer + m ()I method_72586 getRows + m ()I method_72587 getColumns + m (FI)I method_72610 getSlotAlongAxis + p 1 max + p 0 pos + m (Lnet/minecraft/class_241;)Ljava/util/OptionalInt; method_72612 method_72612 + p 1 vec2f + m (Lnet/minecraft/class_3965;Lnet/minecraft/class_2350;)Ljava/util/Optional; method_72613 getHitPosOnFront + p 0 hitResult + p 1 facing + m (Lnet/minecraft/class_3965;Lnet/minecraft/class_2350;)Ljava/util/OptionalInt; method_72611 getHitSlot + p 1 hitResult + p 2 facing +c net/minecraft/class_11583 net/minecraft/block/CopperGolemStatueBlock + f Lnet/minecraft/class_2754; field_61409 FACING + f Lcom/mojang/serialization/MapCodec; field_61408 CODEC + f Lnet/minecraft/class_2754; field_61410 POSE + f Lnet/minecraft/class_265; field_61412 SHAPE + f Lnet/minecraft/class_5955$class_5811; field_61413 oxidationLevel + f Lnet/minecraft/class_2746; field_61411 WATERLOGGED + m (Lnet/minecraft/class_5955$class_5811;Lnet/minecraft/class_4970$class_2251;)V + p 1 oxidationLevel + p 2 settings + m ()Lnet/minecraft/class_5955$class_5811; method_72606 getOxidationLevel + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_72604 method_72604 + p 0 instance + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)V method_72605 changePose + p 4 player + p 1 world + p 3 pos + p 2 state +c net/minecraft/class_11583$class_11584 net/minecraft/block/CopperGolemStatueBlock$Pose + f Ljava/lang/String; field_61420 id + f Ljava/util/function/IntFunction; field_61418 INDEX_MAPPER + f Lcom/mojang/serialization/Codec; field_61419 CODEC + f Lnet/minecraft/class_11583$class_11584; field_61415 SITTING + f Lnet/minecraft/class_11583$class_11584; field_61414 STANDING + f Lnet/minecraft/class_11583$class_11584; field_61417 STAR + f Lnet/minecraft/class_11583$class_11584; field_61416 RUNNING + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()Lnet/minecraft/class_11583$class_11584; method_72607 getNext +c net/minecraft/class_11582 net/minecraft/block/CopperChestBlock + f Ljava/util/Map; field_61406 FROM_COPPER_BLOCK + f Lnet/minecraft/class_5955$class_5811; field_61407 oxidationLevel + f Lcom/mojang/serialization/MapCodec; field_61405 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_72596 method_72596 + p 0 instance + m (Lnet/minecraft/class_11582;Lnet/minecraft/class_2680;)Ljava/util/Optional; method_72598 getUnwaxed + p 0 block + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_74028 getNewState + c Explanation for connecting two copper chests:\n\n

    \n
  • If either one is unwaxed, then unwax the other.
  • \n
  • Set the oxidation level of the more oxidized one to the same level as the less\noxidized one.
  • \n
+ p 0 state + p 1 world + p 2 pos + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2350;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_72597 fromCopperBlock + p 2 world + p 3 pos + p 0 block + p 1 facing + m ()Lnet/minecraft/class_5955$class_5811; method_72601 getOxidationLevel + m ()Z method_72602 isWaxed + m (Lnet/minecraft/class_5955$class_5811;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_4970$class_2251;)V + p 4 settings + p 3 closeSound + p 2 openSound + p 1 oxidationLevel + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2680; method_72599 method_72599 + p 1 waxedState +c net/minecraft/class_10257 net/minecraft/entity/vehicle/ChestRaftEntity +c net/minecraft/class_10258 net/minecraft/entity/vehicle/RaftEntity +c net/minecraft/class_10255 net/minecraft/entity/vehicle/AbstractBoatEntity + f Lnet/minecraft/class_10255$class_1691; field_54434 lastLocation + f F field_54456 yawVelocity + f F field_54432 nearbySlipperiness + f Lnet/minecraft/class_2940; field_54448 LEFT_PADDLE_MOVING + f F field_54440 lastBubbleWobble + f F field_54452 NEXT_PADDLE_PHASE + f Z field_54428 pressingRight + f Z field_54436 onBubbleColumnSurface + f Z field_54430 pressingBack + f F field_54439 bubbleWobble + f D field_54435 fallVelocity + f Lnet/minecraft/class_2940; field_54449 RIGHT_PADDLE_MOVING + f D field_54431 waterLevel + f F field_54455 ticksUnderwater + f Lnet/minecraft/class_2940; field_54450 BUBBLE_WOBBLE_TICKS + f D field_54446 EMIT_SOUND_EVENT_PADDLE_ROTATION + c A boat will emit a sound event every time a paddle is near this rotation. + f F field_54438 bubbleWobbleStrength + f Lnet/minecraft/class_9817$class_9818; field_54441 leashData + f Ljava/util/function/Supplier; field_54442 itemSupplier + f Z field_54444 pressingLeft + f Lnet/minecraft/class_10255$class_1691; field_54433 location + f [F field_54453 paddlePhases + f Z field_54429 pressingForward + f Z field_54437 bubbleColumnIsDrag + f Lnet/minecraft/class_10584; field_55706 interpolator + m (Lnet/minecraft/class_1297;)V method_64492 clampPassengerYaw + p 1 passenger + m ()Lnet/minecraft/class_3414; method_64494 getPaddleSound + m (Lnet/minecraft/class_1297;)Z method_64488 isSmallerThanBoat + p 1 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)Z method_64486 canCollide + p 0 entity + p 1 other + m ()V method_64476 handleBubbleColumn + m (I)V method_64496 setBubbleWobbleTicks + p 1 bubbleWobbleTicks + m ()F method_64495 getWaterHeightBelow + m ()I method_64483 getBubbleWobbleTicks + m (IF)F method_64485 lerpPaddlePhase + p 1 paddle + p 2 tickProgress + m (Lnet/minecraft/class_1297;)Z method_64493 method_64493 + p 0 passenger + m ()I method_64500 getMaxPassengers + m ()F method_64499 getPassengerHorizontalOffset + m (I)Z method_64491 isPaddleMoving + p 1 paddle + m ()Z method_64479 checkBoatInWater + m (DDD)V method_64498 initPosition + p 5 z + p 3 y + p 1 x + m ()V method_64482 updatePaddles + m (ZZ)V method_64490 setPaddlesMoving + p 2 right + p 1 left + m ()Lnet/minecraft/class_10255$class_1691; method_64480 getUnderWaterLocation + m (Lnet/minecraft/class_4048;)D method_64489 getPassengerAttachmentY + p 1 dimensions + m (F)F method_64484 lerpBubbleWobble + p 1 tickProgress + m (ZZZZ)V method_64487 setInputs + p 4 pressingBack + p 3 pressingForward + p 2 pressingRight + p 1 pressingLeft + m ()F method_64497 getNearbySlipperiness + m ()Lnet/minecraft/class_10255$class_1691; method_64478 checkLocation + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;Ljava/util/function/Supplier;)V + p 1 type + p 2 world + p 3 itemSupplier + m ()V method_64481 updateVelocity +c net/minecraft/class_10255$class_1691 net/minecraft/entity/vehicle/AbstractBoatEntity$Location + f Lnet/minecraft/class_10255$class_1691; field_7720 IN_AIR + f Lnet/minecraft/class_10255$class_1691; field_7717 UNDER_WATER + f Lnet/minecraft/class_10255$class_1691; field_7716 UNDER_FLOWING_WATER + f Lnet/minecraft/class_10255$class_1691; field_7719 ON_LAND + f Lnet/minecraft/class_10255$class_1691; field_7718 IN_WATER +c net/minecraft/class_11587 net/minecraft/block/SideChaining + m (Ljava/util/function/IntFunction;Lnet/minecraft/class_11598;Ljava/util/function/Consumer;)V method_72628 forEachNeighborTowards + p 1 neighborGetter + p 2 part + p 3 posConsumer + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)V method_72624 connectNeighbors + p 2 pos + p 1 world + p 4 oldState + p 3 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_11598;)V method_72625 setSideChainPart + p 3 part + p 2 pos + p 1 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Ljava/util/List; method_72623 getPositionsInChain + p 2 pos + p 1 world + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_11598; method_72619 getSideChainPart + p 1 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_72629 disconnectNeighbors + p 2 pos + p 3 state + p 1 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)Z method_72627 isAlreadyConnected + p 2 oldState + p 1 state + m (Lnet/minecraft/class_2680;)Z method_72621 canChainWith + p 1 state + m (II)Z method_72622 canAddChainLength + p 1 chainLength + p 2 toAdd + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_11598;)Lnet/minecraft/class_2680; method_72617 withSideChainPart + p 2 sideChainPart + p 1 state + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2350; method_72620 getFacing + p 1 state + m ()I method_72618 getMaxSideChainLength + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Lnet/minecraft/class_11587$class_11590; method_72626 getNeighbors + p 1 world + p 3 facing + p 2 pos +c net/minecraft/class_11587$class_11590 net/minecraft/block/SideChaining$Neighbors + f Lnet/minecraft/class_1936; comp_4439 world + f Ljava/util/Map; comp_4442 cache + f Lnet/minecraft/class_11587; comp_4438 block + f Lnet/minecraft/class_2338; comp_4441 center + f Lnet/minecraft/class_2350; comp_4440 facing + m ()Lnet/minecraft/class_11587$class_11589; method_72636 getLeftNeighbor + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_11587$class_11589; method_72639 createNeighbor + p 1 pos + m ()Lnet/minecraft/class_1936; comp_4439 world + m (I)Lnet/minecraft/class_11587$class_11589; method_72642 getRightNeighbor + p 1 distance + m (I)Lnet/minecraft/class_11587$class_11589; method_72637 getLeftNeighbor + p 1 distance + m (Lnet/minecraft/class_2680;)Z method_72638 canChainWith + p 1 state + m (Lnet/minecraft/class_2350;Ljava/lang/Integer;)Lnet/minecraft/class_11587$class_11589; method_72640 getOrCreateNeighbor + p 2 distance + p 1 direction + m ()Lnet/minecraft/class_11587$class_11589; method_72641 getRightNeighbor + m ()Lnet/minecraft/class_11587; comp_4438 block + m ()Ljava/util/Map; comp_4442 cache + m ()Lnet/minecraft/class_2350; comp_4440 facing + m ()Lnet/minecraft/class_2338; comp_4441 center + m (Lnet/minecraft/class_11587;Lnet/minecraft/class_1936;Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;Ljava/util/Map;)V + p 1 block + p 2 world + p 3 facing + p 4 center + p 5 cache +c net/minecraft/class_11587$class_11591 net/minecraft/block/SideChaining$SideChainNeighbor + f Lnet/minecraft/class_11587; comp_4444 block + f Lnet/minecraft/class_11598; comp_4445 part + f Lnet/minecraft/class_1936; comp_4443 level + f Lnet/minecraft/class_2338; comp_4437 pos + m ()Lnet/minecraft/class_1936; comp_4443 level + m ()Lnet/minecraft/class_11598; comp_4445 part + m ()Lnet/minecraft/class_11587; comp_4444 block + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_11587;Lnet/minecraft/class_2338;Lnet/minecraft/class_11598;)V + p 1 level + p 2 block + p 3 pos + p 4 part +c net/minecraft/class_11587$class_11589 net/minecraft/block/SideChaining$Neighbor + m ()V method_72634 disconnectFromRight + m ()V method_72635 disconnectFromLeft + m ()Z method_74144 isChained + m (Lnet/minecraft/class_11598;)Z method_72631 isCenterOr + p 1 part + m ()V method_72632 connectToRight + m ()V method_72633 connectToLeft + m ()Z method_72630 isNotCenter + m ()Lnet/minecraft/class_2338; comp_4437 pos +c net/minecraft/class_11587$class_11588 net/minecraft/block/SideChaining$EmptyNeighbor + f Lnet/minecraft/class_2338; comp_4437 pos + m (Lnet/minecraft/class_2338;)V + p 1 pos +c net/minecraft/class_10256 net/minecraft/entity/vehicle/AbstractChestBoatEntity + f J field_54465 lootTableSeed + f Lnet/minecraft/class_5321; field_54464 lootTable + f I field_54462 INVENTORY_SIZE + f Lnet/minecraft/class_2371; field_54463 inventory + m (Lnet/minecraft/class_1657;)V method_64501 generateLoot + p 1 player +c net/minecraft/class_11586 net/minecraft/block/ShelfBlock + f Lcom/mojang/serialization/MapCodec; field_61423 CODEC + f Lnet/minecraft/class_2754; field_61425 FACING + f Lnet/minecraft/class_2754; field_61426 SIDE_CHAIN + f Lnet/minecraft/class_2746; field_61424 POWERED + f Ljava/util/Map; field_61428 SHAPES + f Lnet/minecraft/class_2746; field_61427 WATERLOGGED + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;Lnet/minecraft/class_11597;ILnet/minecraft/class_1661;)Z method_72614 swapSingleStack + p 4 playerInventory + p 3 hitSlot + p 0 stack + p 2 blockEntity + p 1 player + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_3414;)V method_72616 playSound + p 2 pos + p 1 world + p 3 sound + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1661;)Z method_72615 swapAllStacks + p 1 world + p 2 pos + p 3 playerInventory +c net/minecraft/class_9136 net/minecraft/network/handler/PacketCodecDispatcher + f Ljava/util/List; field_48578 packetTypes + f I field_48576 UNKNOWN_PACKET_INDEX + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_48579 typeToIndex + f Ljava/util/function/Function; field_48577 packetIdGetter + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Object;)V method_56426 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Object; method_56425 decode + m (Ljava/util/function/Function;Ljava/util/List;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)V + p 3 typeToIndex + p 2 packetTypes + p 1 packetIdGetter + m (Ljava/util/function/Function;)Lnet/minecraft/class_9136$class_9137; method_56427 builder + p 0 packetIdGetter +c net/minecraft/class_9136$class_9137 net/minecraft/network/handler/PacketCodecDispatcher$Builder + f Ljava/util/function/Function; field_48581 packetIdGetter + f Ljava/util/List; field_48580 packetTypes + m (Ljava/lang/Object;Lnet/minecraft/class_9139;)Lnet/minecraft/class_9136$class_9137; method_56429 add + p 2 codec + p 1 id + m ()Lnet/minecraft/class_9136; method_56428 build + m (Ljava/util/function/Function;)V + p 1 packetIdGetter +c net/minecraft/class_9136$class_10944 net/minecraft/network/handler/PacketCodecDispatcher$UndecoratedException +c net/minecraft/class_9136$class_9138 net/minecraft/network/handler/PacketCodecDispatcher$PacketType + f Lnet/minecraft/class_9139; comp_2228 codec + f Ljava/lang/Object; comp_2229 id + m ()Lnet/minecraft/class_9139; comp_2228 codec + m ()Ljava/lang/Object; comp_2229 id + m (Lnet/minecraft/class_9139;Ljava/lang/Object;)V + p 1 codec + p 2 id +c net/minecraft/class_9135 net/minecraft/network/codec/PacketCodecs + c A set of pre-defined packet codecs.\n\n@see PacketCodec + f Lnet/minecraft/class_9139; field_48548 BYTE + c A codec for a byte value.\n\n@see io.netty.buffer.ByteBuf#readByte\n@see io.netty.buffer.ByteBuf#writeByte + f Lnet/minecraft/class_9139; field_54890 OPTIONAL_INT + f Lnet/minecraft/class_9139; field_49678 PROPERTY_MAP + f Lnet/minecraft/class_9139; field_62276 PLAYER_NAME + f Lnet/minecraft/class_9139; field_48551 VAR_LONG + c A codec for a variable-length long (var long) value.\n\n@see net.minecraft.network.PacketByteBuf#readVarLong\n@see net.minecraft.network.PacketByteBuf#writeVarLong + f Lnet/minecraft/class_9139; field_48559 QUATERNION_F + c A codec for a {@link org.joml.Quaternionf}.\n\n@see net.minecraft.network.PacketByteBuf#readQuaternionf()\n@see net.minecraft.network.PacketByteBuf#writeQuaternionf(Quaternionf) + f Lnet/minecraft/class_9139; field_48547 BOOLEAN + c A codec for a boolean value.\n\n@see io.netty.buffer.ByteBuf#readBoolean\n@see io.netty.buffer.ByteBuf#writeBoolean + f Lnet/minecraft/class_9139; field_54033 DEGREES + f Lnet/minecraft/class_9139; field_49679 GAME_PROFILE + f Lnet/minecraft/class_9139; field_48550 VAR_INT + c A codec for a variable-length integer (var int) value.\n\n@see net.minecraft.network.PacketByteBuf#readVarInt\n@see net.minecraft.network.PacketByteBuf#writeVarInt + f Lnet/minecraft/class_9139; field_48554 STRING + c A codec for a string value with maximum length {@value Short#MAX_VALUE}.\n\n@see #string\n@see net.minecraft.network.PacketByteBuf#readString()\n@see net.minecraft.network.PacketByteBuf#writeString(String) + f Lnet/minecraft/class_9139; field_49675 INTEGER + c A codec for an integer value.\n\n@see io.netty.buffer.ByteBuf#readInt\n@see io.netty.buffer.ByteBuf#writeInt + f Lnet/minecraft/class_9139; field_49676 UNLIMITED_NBT_ELEMENT + c A codec for an NBT element of unlimited size.\n\n@see #nbt\n@see net.minecraft.network.PacketByteBuf#readNbt(NbtSizeTracker)\n@see net.minecraft.network.PacketByteBuf#writeNbt(NbtElement) + f Lnet/minecraft/class_9139; field_48553 DOUBLE + c A codec for a double value.\n\n@see io.netty.buffer.ByteBuf#readDouble\n@see io.netty.buffer.ByteBuf#writeDouble + f Lnet/minecraft/class_9139; field_59990 RGB + f Lnet/minecraft/class_9139; field_48549 SHORT + c A codec for a short value.\n\n@see io.netty.buffer.ByteBuf#readShort\n@see io.netty.buffer.ByteBuf#writeShort + f Lnet/minecraft/class_9139; field_49677 UNLIMITED_NBT_COMPOUND + c A codec for an NBT compound of unlimited size.\n\n@see #nbt\n@see net.minecraft.network.PacketByteBuf#readNbt(NbtSizeTracker)\n@see net.minecraft.network.PacketByteBuf#writeNbt(NbtElement) + f Lnet/minecraft/class_9139; field_48552 FLOAT + c A codec for a float value.\n\n@see io.netty.buffer.ByteBuf#readFloat\n@see io.netty.buffer.ByteBuf#writeFloat + f Lnet/minecraft/class_9139; field_48556 NBT_COMPOUND + c A codec for an NBT compound of up to {@code 0x200000L} bytes.\n\n@see #nbt\n@see net.minecraft.network.PacketByteBuf#readNbt(NbtSizeTracker)\n@see net.minecraft.network.PacketByteBuf#writeNbt(NbtElement) + f Lnet/minecraft/class_9139; field_48987 BYTE_ARRAY + c A codec for a byte array.\n\n@see net.minecraft.network.PacketByteBuf#readByteArray()\n@see net.minecraft.network.PacketByteBuf#writeByteArray(byte[]) + f Lnet/minecraft/class_9139; field_48555 NBT_ELEMENT + c A codec for an NBT element of up to {@code 0x200000L} bytes.\n\n@see #nbt\n@see net.minecraft.network.PacketByteBuf#readNbt(NbtSizeTracker)\n@see net.minecraft.network.PacketByteBuf#writeNbt(NbtElement) + f Lnet/minecraft/class_9139; field_53740 SYNC_ID + f Lnet/minecraft/class_9139; field_51470 UNSIGNED_SHORT + c A codec for an unsigned short value.\n\n@see io.netty.buffer.ByteBuf#readUnsignedShort\n@see io.netty.buffer.ByteBuf#writeShort + f Lnet/minecraft/class_9139; field_48558 VECTOR_3F + c A codec for a {@link org.joml.Vector3f}.\n\n@see net.minecraft.network.PacketByteBuf#readVector3f()\n@see net.minecraft.network.PacketByteBuf#writeVector3f(Vector3f) + f Lnet/minecraft/class_9139; field_54505 LONG + c A codec for a long value.\n\n@see io.netty.buffer.ByteBuf#readLong\n@see io.netty.buffer.ByteBuf#writeLong + f Lnet/minecraft/class_9139; field_57046 LONG_ARRAY + c A codec for a long array.\n\n@see net.minecraft.network.PacketByteBuf#readLongArray()\n@see net.minecraft.network.PacketByteBuf#writeLongArray(long[]) + f Lnet/minecraft/class_9139; field_48557 OPTIONAL_NBT + c A codec for an optional NBT compound of up to {@value\nnet.minecraft.network.PacketByteBuf#MAX_READ_NBT_SIZE} bytes.\n\n@see #nbt\n@see net.minecraft.network.PacketByteBuf#readNbt(PacketByteBuf)\n@see net.minecraft.network.PacketByteBuf#writeNbt(io.netty.buffer.ByteBuf, NbtElement) + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_9139; method_57998 nbtCompound + p 0 sizeTracker + m (ILjava/util/function/BiFunction;)Lnet/minecraft/class_9139$class_9140; method_68861 lengthPrepended + p 1 bufWrapper + p 0 maxSize + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_71570 method_71570 + p 2 codec + m (Ljava/lang/Integer;)Ljava/util/OptionalInt; method_64959 method_64959 + p 0 value + m (ILnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_57986 method_57986 + p 1 codec + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_56367 registryEntry + c {@return a codec for a {@link net.minecraft.registry.entry.RegistryEntry}}\n\n

This codec only works with {@link net.minecraft.network.RegistryByteBuf}, used\nduring the play phase. Consider using {@link #entryOf} for encoding a value of a\nstatic registry during login or configuration phases.\n\n@implNote If the entry is a reference entry, the value is serialized as the\ncorresponding raw ID (as {@link #VAR_INT a var int}). If it is a direct entry,\nit is encoded using {@code directCodec}.\n\n@see #registryValue\n@see #registryEntry(RegistryKey) + p 1 directCodec + p 0 registry + m (I)Lnet/minecraft/class_9139$class_9140; method_68864 lengthPrepended + p 0 maxSize + m (I)Lnet/minecraft/class_9139; method_71572 lenientJson + p 0 maxLength + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_9139; method_56365 registryValue + c {@return a codec for a {@link net.minecraft.registry.Registry}-registered value}\n\n

This codec only works with {@link net.minecraft.network.RegistryByteBuf}, used\nduring the play phase. Consider using {@link #entryOf} for encoding a value of a\nstatic registry during login or configuration phases.\n\n@implNote The value is serialized as the corresponding raw ID (as {@link #VAR_INT\na var int}).\n\n@see #entryOf + p 0 registry + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_9139; method_57987 unlimitedCodec + c {@return a codec from DataFixerUpper codec {@code codec}}\n\n

Internally, the data is serialized as an NBT element of unlimited size. + p 0 codec + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Supplier;)Lnet/minecraft/class_9139; method_57988 codec + p 0 codec + p 1 sizeTracker + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_9139$class_9140; method_71571 fromCodec + p 0 ops + p 1 codec + m (Ljava/util/function/IntFunction;Ljava/util/function/ToIntFunction;)Lnet/minecraft/class_9139; method_56375 indexed + c {@return a codec for an indexed value}\n\n

An example of an indexed value is an enum.\n\n@see net.minecraft.util.function.ValueLists\n@see net.minecraft.network.PacketByteBuf#encode(ToIntFunction, Object)\n@see net.minecraft.network.PacketByteBuf#decode(IntFunction) + p 1 valueToIndex + c a function that gets a value's index + p 0 indexToValue + c a function that gets a value from its index + m (ILjava/util/function/BiFunction;Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_68862 method_68862 + p 2 codec + m (Lnet/minecraft/class_5321;Ljava/util/function/Function;)Lnet/minecraft/class_9139; method_56366 registry + p 0 registry + p 1 registryTransformer + m (Ljava/util/OptionalInt;)Ljava/lang/Integer; method_64960 method_64960 + p 0 value + m (Ljava/util/function/IntFunction;Lnet/minecraft/class_9139;I)Lnet/minecraft/class_9139; method_57991 collection + p 2 maxSize + p 1 elementCodec + p 0 factory + m (Ljava/util/function/IntFunction;Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_56376 collection + c {@return a codec for a collection of values}\n\n@see net.minecraft.network.PacketByteBuf#readCollection\n@see net.minecraft.network.PacketByteBuf#writeCollection + p 1 elementCodec + c the codec of the collection's elements + p 0 factory + c a function that, given the collection's size, returns a new empty collection + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_9139; method_56383 registryEntry + c {@return a codec for a reference {@link net.minecraft.registry.entry.RegistryEntry}}\n\n

This codec only works with {@link net.minecraft.network.RegistryByteBuf}, used\nduring the play phase. Consider using {@link #entryOf} for encoding a value of a\nstatic registry during login or configuration phases.\n\n@implNote The value is serialized as the corresponding raw ID (as {@link #VAR_INT\na var int}). This does not handle direct (unregistered) entries.\n\n@see #registryValue\n@see #registryEntry(RegistryKey, PacketCodec) + p 0 registry + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_9139; method_56378 nbt + c {@return a codec for an NBT element}\n\n@see #NBT_ELEMENT\n@see net.minecraft.network.PacketByteBuf#readNbt(NbtSizeTracker)\n@see net.minecraft.network.PacketByteBuf#writeNbt(NbtElement) + p 0 sizeTracker + m (Ljava/util/function/IntFunction;Lnet/minecraft/class_9139;Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_56377 map + c {@return a codec for a map}\n\n@see net.minecraft.network.PacketByteBuf#readMap(IntFunction, PacketDecoder, PacketDecoder)\n@see net.minecraft.network.PacketByteBuf#writeMap(java.util.Map, PacketEncoder, PacketEncoder) + p 0 factory + c a function that, given the map's size, returns a new empty map + p 1 keyCodec + c the codec for the map's keys + p 2 valueCodec + c the codec for the map's values + m (I)Lnet/minecraft/class_9139$class_9140; method_58000 toList + p 0 maxLength + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_9139; method_72185 nbtElement + p 0 sizeTrackerSupplier + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2520; method_57993 method_57993 + p 0 nbt + m (I)Lnet/minecraft/class_9139; method_56895 byteArray + c {@return a codec for a byte array with maximum length {@code maxLength}}\n\n@see #BYTE_ARRAY\n@see net.minecraft.network.PacketByteBuf#readByteArray(ByteBuf, int)\n@see net.minecraft.network.PacketByteBuf#writeByteArray(ByteBuf, byte[]) + p 0 maxLength + m (Lnet/minecraft/class_2359;)Lnet/minecraft/class_9139; method_56371 entryOf + c {@return a codec for an entry of {@code iterable}}\n\n@see #indexed + p 0 iterable + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Supplier;)Lnet/minecraft/class_9139; method_57997 registryCodec + p 1 sizeTracker + p 0 codec + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_9139; method_58002 unlimitedRegistryCodec + p 0 codec + m (Lio/netty/buffer/ByteBuf;I)I method_57989 readCollectionSize + p 1 maxSize + p 0 buf + m (Lnet/minecraft/class_2520;)Lnet/minecraft/class_2487; method_57994 method_57994 + p 0 nbt + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_56385 method_56385 + p 0 codec + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_2359; method_56372 method_56372 + p 0 registry + m (Ljava/util/function/IntFunction;)Lnet/minecraft/class_9139$class_9140; method_56374 toCollection + c Used to make a codec for a collection of values using {@link PacketCodec#collect}.\n\n

For example, to make a codec for a set of values, write {@code\ncodec.collect(PacketCodecs.toCollection(HashSet::new))}.\n\n@see #toList + p 0 collectionFactory + c a function that, given the collection's size, returns a new empty collection + m (Lnet/minecraft/class_9139;Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_57995 either + p 1 right + p 0 left + m (Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)Lio/netty/buffer/ByteBuf; method_68863 method_68863 + p 1 bufToWrap + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_56382 optional + c {@return a codec wrapping another codec, the value of which is optional}\n\n

This can be used with {@link PacketCodec#collect} like\n{@code codec.collect(PacketCodecs::optional)}.\n\n@see net.minecraft.network.PacketByteBuf#readOptional\n@see net.minecraft.network.PacketByteBuf#writeOptional + p 0 codec + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_9139; method_56896 registryCodec + p 0 codec + m (I)Lnet/minecraft/class_9139; method_56364 string + c {@return a codec for a string value with maximum length {@code maxLength}}\n\n@see #STRING\n@see net.minecraft.network.PacketByteBuf#readString(int)\n@see net.minecraft.network.PacketByteBuf#writeString(String, int) + p 0 maxLength + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_9139; method_58001 registryEntryList + p 0 registryRef + m ()Lnet/minecraft/class_9139$class_9140; method_56363 toList + c Used to make a codec for a list of values using {@link PacketCodec#collect}.\nThis creates an {@link java.util.ArrayList}, so the decoded result can be modified.\n\n

For example, to make a codec for a list of values, write {@code\ncodec.collect(PacketCodecs.toList())}.\n\n@see #toCollection + m (Ljava/util/function/IntFunction;Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_56384 method_56384 + p 1 codec + m (I)Lnet/minecraft/class_9139$class_9140; method_72187 lengthPrependedRegistry + p 0 maxSize + m (Ljava/util/function/IntFunction;Lnet/minecraft/class_9139;Lnet/minecraft/class_9139;I)Lnet/minecraft/class_9139; method_57992 map + p 0 factory + p 3 maxSize + p 2 valueCodec + p 1 keyCodec + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_9139; method_56368 codec + c {@return a codec from DataFixerUpper codec {@code codec}}\n\n

Internally, the data is serialized as an NBT element of up to {@code 200000L}\nbytes. + p 0 codec + m (Lio/netty/buffer/ByteBuf;II)V method_57990 writeCollectionSize + p 0 buf + p 1 size + p 2 maxSize +c net/minecraft/class_9135$3 net/minecraft/network/codec/PacketCodecs$3 + m (Lio/netty/buffer/ByteBuf;)[B method_59799 decode + p 1 buf + m (Lio/netty/buffer/ByteBuf;[B)V method_59800 encode + p 2 value + p 1 buf +c net/minecraft/class_9135$4 net/minecraft/network/codec/PacketCodecs$4 + m (Lio/netty/buffer/ByteBuf;)[B method_56403 decode + p 1 buf + m (Lio/netty/buffer/ByteBuf;[B)V method_56404 encode + p 1 buf + p 2 value +c net/minecraft/class_9135$5 net/minecraft/network/codec/PacketCodecs$5 + m (Lio/netty/buffer/ByteBuf;)[J method_68115 decode + p 1 buf + m (Lio/netty/buffer/ByteBuf;[J)V method_68116 encode + p 2 values + p 1 buf +c net/minecraft/class_9135$6 net/minecraft/network/codec/PacketCodecs$6 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/String; method_68117 decode + m (Lio/netty/buffer/ByteBuf;Ljava/lang/String;)V method_68118 encode +c net/minecraft/class_9135$1 net/minecraft/network/codec/PacketCodecs$1 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Boolean; method_56386 decode + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Boolean;)V method_56387 encode +c net/minecraft/class_9135$2 net/minecraft/network/codec/PacketCodecs$2 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Double;)V method_64550 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Double; method_64549 decode +c net/minecraft/class_9135$16 net/minecraft/network/codec/PacketCodecs$16 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Optional;)V method_71576 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Optional; method_71575 decode +c net/minecraft/class_9135$17 net/minecraft/network/codec/PacketCodecs$17 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Collection; method_71577 decode + m (Lio/netty/buffer/ByteBuf;Ljava/util/Collection;)V method_71578 encode +c net/minecraft/class_9135$18 net/minecraft/network/codec/PacketCodecs$18 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Map;)V method_68095 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Map; method_68094 decode +c net/minecraft/class_9135$19 net/minecraft/network/codec/PacketCodecs$19 + m (Lio/netty/buffer/ByteBuf;Lcom/mojang/datafixers/util/Either;)V method_71581 encode + m (Lio/netty/buffer/ByteBuf;)Lcom/mojang/datafixers/util/Either; method_71580 decode + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_9139;Ljava/lang/Object;)V method_71583 method_71583 + p 2 value + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_9139;Ljava/lang/Object;)V method_71582 method_71582 + p 2 value +c net/minecraft/class_9135$12 net/minecraft/network/codec/PacketCodecs$12 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Byte; method_56391 decode + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Byte;)V method_56392 encode +c net/minecraft/class_9135$7 net/minecraft/network/codec/PacketCodecs$7 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Optional;)V method_68120 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Optional; method_68119 decode +c net/minecraft/class_9135$8 net/minecraft/network/codec/PacketCodecs$8 + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_2520; method_72194 decode + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_2520;)V method_72195 encode +c net/minecraft/class_9135$13 net/minecraft/network/codec/PacketCodecs$13 + m (Lio/netty/buffer/ByteBuf;Lorg/joml/Vector3fc;)V method_68091 encode + m (Lio/netty/buffer/ByteBuf;)Lorg/joml/Vector3fc; method_68090 decode +c net/minecraft/class_9135$14 net/minecraft/network/codec/PacketCodecs$14 + m (Lio/netty/buffer/ByteBuf;Lorg/joml/Quaternionfc;)V method_71574 encode + m (Lio/netty/buffer/ByteBuf;)Lorg/joml/Quaternionfc; method_71573 decode +c net/minecraft/class_9135$9 net/minecraft/network/codec/PacketCodecs$9 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Object; method_71602 decode + m (Ljava/lang/Object;Ljava/lang/String;)Lio/netty/handler/codec/DecoderException; method_71605 method_71605 + p 1 error + m (Ljava/lang/Object;Ljava/lang/String;)Lio/netty/handler/codec/EncoderException; method_71604 method_71604 + p 1 error + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Object;)V method_71603 encode +c net/minecraft/class_9135$15 net/minecraft/network/codec/PacketCodecs$15 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Integer; method_72188 decode + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Integer;)V method_72189 encode +c net/minecraft/class_9135$10 net/minecraft/network/codec/PacketCodecs$10 + m (Lnet/minecraft/class_2520;Ljava/lang/String;)Lio/netty/handler/codec/DecoderException; method_71607 method_71607 + p 1 error + m (Lnet/minecraft/class_9129;Ljava/lang/Object;)V method_71609 encode + m (Ljava/lang/Object;Ljava/lang/String;)Lio/netty/handler/codec/EncoderException; method_71606 method_71606 + p 1 error + m (Lnet/minecraft/class_9129;)Ljava/lang/Object; method_71608 decode +c net/minecraft/class_9135$11 net/minecraft/network/codec/PacketCodecs$11 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Optional;)V method_64546 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Optional; method_64545 decode +c net/minecraft/class_9135$27 net/minecraft/network/codec/PacketCodecs$27 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Integer;)V method_71599 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Integer; method_71598 decode +c net/minecraft/class_9135$28 net/minecraft/network/codec/PacketCodecs$28 + f Lcom/google/gson/Gson; field_60514 GSON + m (Lio/netty/buffer/ByteBuf;)Lcom/google/gson/JsonElement; method_71600 decode + m (Lio/netty/buffer/ByteBuf;Lcom/google/gson/JsonElement;)V method_71601 encode +c net/minecraft/class_9135$23 net/minecraft/network/codec/PacketCodecs$23 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Short; method_56393 decode + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Short;)V method_56394 encode +c net/minecraft/class_9135$24 net/minecraft/network/codec/PacketCodecs$24 + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_6880;)V method_71593 encode + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_6880; method_71592 decode + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_2359; method_72191 getIndexedEntries + p 1 buf +c net/minecraft/class_9135$25 net/minecraft/network/codec/PacketCodecs$25 + f Lnet/minecraft/class_9139; field_61047 entryCodec + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_6885; method_64551 decode + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_6885;)V method_64552 encode +c net/minecraft/class_9135$26 net/minecraft/network/codec/PacketCodecs$26 + m (Lio/netty/buffer/ByteBuf;Lcom/mojang/authlib/properties/PropertyMap;)V method_71595 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/String; method_71597 method_71597 + p 0 bufx + m (Lio/netty/buffer/ByteBuf;Ljava/lang/String;)V method_71596 method_71596 + p 0 bufx + p 1 signature + m (Lio/netty/buffer/ByteBuf;)Lcom/mojang/authlib/properties/PropertyMap; method_71594 decode +c net/minecraft/class_9135$20 net/minecraft/network/codec/PacketCodecs$20 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Object;)V method_71585 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Object; method_71584 decode +c net/minecraft/class_9135$21 net/minecraft/network/codec/PacketCodecs$21 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Object; method_71586 decode + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Object;)V method_71587 encode +c net/minecraft/class_9135$22 net/minecraft/network/codec/PacketCodecs$22 + m (Lnet/minecraft/class_9129;)Ljava/lang/Object; method_71588 decode + m (Lnet/minecraft/class_9129;Ljava/lang/Object;)V method_71589 encode + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_2359; method_71590 getRegistryOrThrow + p 1 buf +c net/minecraft/class_9135$34 net/minecraft/network/codec/PacketCodecs$34 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Long; method_58020 decode + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Long;)V method_58021 encode +c net/minecraft/class_9135$35 net/minecraft/network/codec/PacketCodecs$35 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Float;)V method_59798 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Float; method_59797 decode +c net/minecraft/class_9135$30 net/minecraft/network/codec/PacketCodecs$30 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Integer; method_56395 decode + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Integer;)V method_56396 encode +c net/minecraft/class_9135$31 net/minecraft/network/codec/PacketCodecs$31 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Integer; method_56397 decode + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Integer;)V method_56398 encode +c net/minecraft/class_9135$32 net/minecraft/network/codec/PacketCodecs$32 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Integer; method_56399 decode + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Integer;)V method_56400 encode +c net/minecraft/class_9135$33 net/minecraft/network/codec/PacketCodecs$33 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Long;)V method_56402 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Long; method_56401 decode +c net/minecraft/class_9130 net/minecraft/network/handler/NetworkStateTransitions + m (Lnet/minecraft/class_9127;)Lnet/minecraft/class_9130$class_9132; method_56356 decoderTransitioner + p 0 newState + m (Lio/netty/channel/ChannelInboundHandler;)Lnet/minecraft/class_9130$class_9132; method_56352 decoderSwapper + p 0 newDecoder + m (Lio/netty/channel/ChannelInboundHandler;Lio/netty/channel/ChannelHandlerContext;)V method_56353 method_56353 + p 1 context + m (Lio/netty/channel/ChannelOutboundHandler;Lio/netty/channel/ChannelHandlerContext;)V method_56355 method_56355 + p 1 context + m (Lnet/minecraft/class_9127;)Lnet/minecraft/class_9130$class_9134; method_56357 encoderTransitioner + p 0 newState + m (Lio/netty/channel/ChannelOutboundHandler;)Lnet/minecraft/class_9130$class_9134; method_56354 encoderSwapper + p 0 newEncoder +c net/minecraft/class_9130$class_9133 net/minecraft/network/handler/NetworkStateTransitions$OutboundConfigurer + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V write write + p 3 promise + p 2 received + p 1 context +c net/minecraft/class_9130$class_9132 net/minecraft/network/handler/NetworkStateTransitions$DecoderTransitioner + m (Lio/netty/channel/ChannelHandlerContext;)V run run + p 1 context + m (Lnet/minecraft/class_9130$class_9132;Lio/netty/channel/ChannelHandlerContext;)V method_56358 method_56358 + p 2 context +c net/minecraft/class_9130$class_9131 net/minecraft/network/handler/NetworkStateTransitions$InboundConfigurer + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V write write + p 1 context + p 2 received + p 3 promise + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V channelRead channelRead + p 1 context + p 2 received +c net/minecraft/class_9130$class_9134 net/minecraft/network/handler/NetworkStateTransitions$EncoderTransitioner + m (Lio/netty/channel/ChannelHandlerContext;)V run run + p 1 context + m (Lnet/minecraft/class_9130$class_9134;Lio/netty/channel/ChannelHandlerContext;)V method_56359 method_56359 + p 2 context +c net/minecraft/class_9139 net/minecraft/network/codec/PacketCodec + c A codec that is used for serializing a packet.\n\n

Packet codecs serialize to, and deserialize from, {@link net.minecraft.network.PacketByteBuf},\nwhich is a stream of data. To integrate the classic {@link net.minecraft.network.PacketByteBuf}-based\ncode, use {@link #of(ValueFirstEncoder, PacketDecoder)}\nlike this:\n\n

{@code\npublic static final PacketCodec CODEC = PacketCodec.of(MyPacket::write, MyPacket::new);\n\nprivate MyPacket(PacketByteBuf buf) {\n\tthis.text = buf.readString();\n}\n\nprivate void write(PacketByteBuf buf) {\n\tbuf.writeString(this.text);\n}\n}
\n\n

While this serves similar functions as codecs in the DataFixerUpper library,\nthe two are wholly separate and DataFixerUpper methods cannot be used with this.\nHowever, a packet codec may reference a regular codec by using {@link\nPacketCodecs#codec}, which serializes the data to NBT.\n\n

See {@link PacketCodecs} for codecs to serialize various objects.\n\n@param the type of the buffer; {@link net.minecraft.network.RegistryByteBuf}\nfor play-phase packets, {@link net.minecraft.network.PacketByteBuf} for other\nphases (like configuration)\n@param the type of the value to be encoded/decoded + m (Ljava/util/function/Function;)Lnet/minecraft/class_9139; method_56439 mapBuf + p 1 function + m (Lnet/minecraft/class_9142;Lnet/minecraft/class_9141;)Lnet/minecraft/class_9139; method_56437 ofStatic + c {@return a packet codec from the {@code encoder} and {@code decoder}}\n\n@apiNote This is useful for integrating with code that uses static methods for\npacket writing, where the buffer is the first argument, like\n{@code static void write(PacketByteBuf buf, Data data)}.\nFor code that uses instance methods like {@code void write(PacketByteBuf buf)},\nuse {@link #of(ValueFirstEncoder, PacketDecoder)}. + p 0 encoder + p 1 decoder + m (Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/class_9139; method_56440 dispatch + c {@return a codec that dispatches one of the sub-codecs based on the type}\n\n

For example, subtypes of {@link net.minecraft.stat.Stat} requires different values\nto be serialized, yet it makes sense to use the same codec for all stats.\nThis method should be called on the codec for the "type" - like {@link\nnet.minecraft.stat.StatType}. An example:\n\n

{@code\npublic static final PacketCodec> PACKET_CODEC = PacketCodecs.registryValue(RegistryKeys.THING_TYPE).dispatch(Thing::getType, ThingType::getPacketCodec);\n}
+ p 2 codec + c a function that, given a "type", returns the codec for encoding/decoding the value + p 1 type + c a function that, given a value, returns its "type" + m (Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/class_9139; method_56432 xmap + c {@return a codec that maps its encode input and decode output with {@code from}\nand {@code to}, respectively}\n\n

This can be used to transform a codec for a simple value (like a string)\ninto a corresponding, more complex value (like an identifier). An example:\n\n

{@code\npublic static final PacketCodec PACKET_CODEC = PacketCodecs.STRING.xmap(Identifier::new, Identifier::toString);\n}
+ p 2 from + p 1 to + m (Lnet/minecraft/class_9139$class_9140;)Lnet/minecraft/class_9139; method_56433 collect + c {@return the result mapped with {@code function}}\n\n

For example, passing {@code PacketCodecs::optional} makes the value\noptional. Additionally, this method can be used like Stream {@link\njava.util.stream.Collectors} - hence its name. For example, to make a codec\nfor a list of something, write {@code parentCodec.collect(PacketCodecs.toList())}.\n\n@see PacketCodecs#optional\n@see PacketCodecs#toCollection\n@see PacketCodecs#toList + p 1 function + m (Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function12;)Lnet/minecraft/class_9139; method_74965 tuple + p 14 codec8 + p 15 from8 + p 12 codec7 + p 13 from7 + p 18 codec10 + p 19 from10 + p 16 codec9 + p 17 from9 + p 6 codec4 + p 7 from4 + p 4 codec3 + p 5 from3 + p 10 codec6 + p 11 from6 + p 8 codec5 + p 9 from5 + p 2 codec2 + p 3 from2 + p 0 codec1 + p 1 from1 + p 22 codec12 + p 23 from12 + p 20 codec11 + p 21 from11 + p 24 to + m (Lnet/minecraft/class_9143;Lnet/minecraft/class_9141;)Lnet/minecraft/class_9139; method_56438 of + c {@return a packet codec from the {@code encoder} and {@code decoder}}\n\n@apiNote This is useful for integrating with code that uses instance methods for\npacket writing, like {@code void write(PacketByteBuf buf)}.\nFor code that uses static methods like {@code static void write(PacketByteBuf buf, Data data)},\nwhere the buffer is the first argument, use {@link #ofStatic(PacketEncoder, PacketDecoder)}. + p 1 decoder + p 0 encoder + m (Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function7;)Lnet/minecraft/class_9139; method_64265 tuple + c {@return a codec for encoding seven values} + p 12 codec7 + p 13 from7 + p 14 to + p 8 codec5 + p 9 from5 + p 10 codec6 + p 11 from6 + p 4 codec3 + p 5 from3 + p 6 codec4 + p 7 from4 + p 0 codec1 + p 1 from1 + p 2 codec2 + p 3 from2 + m (Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function10;)Lnet/minecraft/class_9139; method_74966 tuple + p 3 from2 + p 4 codec3 + p 1 from1 + p 2 codec2 + p 0 codec1 + p 11 from6 + p 12 codec7 + p 9 from5 + p 10 codec6 + p 7 from4 + p 8 codec5 + p 5 from3 + p 6 codec4 + p 19 from10 + p 20 to + p 17 from9 + p 18 codec10 + p 15 from8 + p 16 codec9 + p 13 from7 + p 14 codec8 + m (Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Ljava/util/function/BiFunction;)Lnet/minecraft/class_9139; method_56435 tuple + c {@return a codec for encoding two values} + p 3 from2 + p 4 to + p 1 from1 + p 2 codec2 + p 0 codec1 + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/class_9139; method_58024 recursive + p 0 codecGetter + m (Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function6;)Lnet/minecraft/class_9139; method_58025 tuple + c {@return a codec for encoding six values} + p 0 codec1 + p 1 from1 + p 2 codec2 + p 3 from2 + p 4 codec3 + p 5 from3 + p 6 codec4 + p 7 from4 + p 8 codec5 + p 9 from5 + p 10 codec6 + p 11 from6 + p 12 to + m (Ljava/lang/Object;)Lnet/minecraft/class_9139; method_56431 unit + c {@return a codec that always returns {@code value}}\n\n

This does not encode anything. Instead, it throws {@link\nIllegalStateException} when the value does not\nequal {@code value}. This comparison is made with {@code equals()}, not\nreference equality ({@code ==}). + p 0 value + m (Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function3;)Lnet/minecraft/class_9139; method_56436 tuple + c {@return a codec for encoding three values} + p 0 codec1 + p 5 from3 + p 6 to + p 3 from2 + p 4 codec3 + p 1 from1 + p 2 codec2 + m (Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function5;)Lnet/minecraft/class_9139; method_56906 tuple + c {@return a codec for encoding five values} + p 0 codec1 + p 1 from1 + p 2 codec2 + p 3 from2 + p 4 codec3 + p 5 from3 + p 6 codec4 + p 7 from4 + p 8 codec5 + p 9 from5 + p 10 to + m (Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function4;)Lnet/minecraft/class_9139; method_56905 tuple + c {@return a codec for encoding four values} + p 0 codec1 + p 3 from2 + p 4 codec3 + p 1 from1 + p 2 codec2 + p 7 from4 + p 8 to + p 5 from3 + p 6 codec4 + m (Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function8;)Lnet/minecraft/class_9139; method_65036 tuple + c {@return a codec for encoding eight values} + p 1 from1 + p 0 codec1 + p 15 from8 + p 14 codec8 + p 16 to + p 11 from6 + p 10 codec6 + p 13 from7 + p 12 codec7 + p 7 from4 + p 6 codec4 + p 9 from5 + p 8 codec5 + p 3 from2 + p 2 codec2 + p 5 from3 + p 4 codec3 + m ()Lnet/minecraft/class_9139; method_56430 cast + c {@return the same codec, casted to work with buffers of type {@code S}}\n\n@apiNote For example, {@link net.minecraft.util.math.BlockPos#PACKET_CODEC}\nis defined as {@code PacketCodec}. To use this codec\nwhere {@link net.minecraft.network.PacketByteBuf} is expected, you can call\nthis method for easy casting, like: {@code PACKET_CODEC.cast()}.\nDoing this is generally safe and will not result in exceptions. + m (Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function9;)Lnet/minecraft/class_9139; method_67079 tuple + c {@return a codec for encoding nine values} + p 7 from4 + p 6 codec4 + p 5 from3 + p 4 codec3 + p 3 from2 + p 2 codec2 + p 1 from1 + p 0 codec1 + p 18 to + p 17 from9 + p 16 codec9 + p 15 from8 + p 14 codec8 + p 13 from7 + p 12 codec7 + p 11 from6 + p 10 codec6 + p 9 from5 + p 8 codec5 + m (Lnet/minecraft/class_9139;Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/class_9139; method_56434 tuple + c {@return a codec for encoding one value} + p 0 codec + p 1 from + p 2 to + m (Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lnet/minecraft/class_9139;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function11;)Lnet/minecraft/class_9139; method_71952 tuple + c {@return a codec for encoding eleven values} + p 10 codec6 + p 11 from6 + p 8 codec5 + p 9 from5 + p 14 codec8 + p 15 from8 + p 12 codec7 + p 13 from7 + p 2 codec2 + p 3 from2 + p 0 codec1 + p 1 from1 + p 6 codec4 + p 7 from4 + p 4 codec3 + p 5 from3 + p 18 codec10 + p 19 from10 + p 16 codec9 + p 17 from9 + p 22 to + p 20 codec11 + p 21 from11 +c net/minecraft/class_9139$class_9140 net/minecraft/network/codec/PacketCodec$ResultFunction + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; apply apply + p 1 codec +c net/minecraft/class_9139$15 net/minecraft/network/codec/PacketCodec$15 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Object;)V method_56442 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Object; method_56441 decode +c net/minecraft/class_9139$11 net/minecraft/network/codec/PacketCodec$11 + f Ljava/util/function/Supplier; field_49712 codecSupplier +c net/minecraft/class_11574 net/minecraft/entity/passive/CopperGolemBrain + f I field_61279 HORIZONTAL_RANGE + f F field_61277 FLEEING_SPEED + f F field_61278 WALKING_SPEED + f Lcom/google/common/collect/ImmutableList; field_61285 SENSORS + f Lcom/google/common/collect/ImmutableList; field_61286 MEMORY_MODULES + f Ljava/util/function/Predicate; field_61283 INPUT_CHEST_PREDICATE + f I field_61282 PLAY_SOUND_INTERACTION_TICKS + f Ljava/util/function/Predicate; field_61284 OUTPUT_CHEST_PREDICATE + f I field_61280 VERTICAL_RANGE + f I field_61281 OPEN_INTERACTION_TICKS + m (Lnet/minecraft/class_1314;)V method_72480 method_72480 + p 0 entity + m (Lnet/minecraft/class_11577;Lnet/minecraft/class_3414;)Lnet/minecraft/class_11568$class_11570; method_72484 createInteractionCallback + p 1 soundEvent + p 0 state + m ()Ljava/util/function/Consumer; method_72490 createResetToIdleCallback + m (Lnet/minecraft/class_11568$class_11572;)Z method_72482 method_72482 + p 0 storage + m ()Ljava/util/Map; method_72487 createInteractionCallbacks + m (Lnet/minecraft/class_2680;)Z method_72489 method_72489 + p 0 state + m (Lnet/minecraft/class_2680;)Z method_72486 method_72486 + p 0 state + m (Lnet/minecraft/class_4095;)V method_72488 addCoreActivities + p 0 brain + m ()Lnet/minecraft/class_4095$class_5303; method_72479 createBrainProfile + m (Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_72481 create + p 0 brain + m ()Ljava/util/function/Predicate; method_72492 createStoragePredicate + m (Lnet/minecraft/class_4095;)V method_72491 addIdleActivities + p 0 brain + m (Lnet/minecraft/class_11577;Lnet/minecraft/class_3414;Lnet/minecraft/class_1314;Lnet/minecraft/class_11568$class_11572;Ljava/lang/Integer;)V method_72485 method_72485 + p 4 interactionTicks + m (Lnet/minecraft/class_11573;)V method_72483 updateActivity + p 0 entity +c net/minecraft/class_10242 net/minecraft/block/dispenser/MinecartDispenserBehavior + f Lnet/minecraft/class_1299; field_54393 minecartEntityType + f Lnet/minecraft/class_2347; field_54392 fallbackBehavior + m (Lnet/minecraft/class_1299;)V + p 1 minecartEntityType + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2768; method_64377 getRailShape + p 0 state +c net/minecraft/class_11573 net/minecraft/entity/passive/CopperGolemEntity + f I field_61265 spinHeadTimer + f Lnet/minecraft/class_7094; field_61268 spinHeadAnimationState + f Lnet/minecraft/class_7094; field_61270 gettingNoItemAnimationState + f Lnet/minecraft/class_7094; field_61272 droppingNoItemAnimationState + f Lnet/minecraft/class_1304; field_62430 POPPY_SLOT + f Ljava/util/UUID; field_63016 lastStruckLightning + f Lnet/minecraft/class_2940; field_61262 COPPER_GOLEM_STATE + f J field_61264 nextOxidationAge + f Lnet/minecraft/class_7094; field_61269 gettingItemAnimationState + f Lnet/minecraft/class_7094; field_61271 droppingItemAnimationState + f Lnet/minecraft/class_2338; field_61263 targetContainer + f Lnet/minecraft/class_2940; field_61261 OXIDATION_LEVEL + m (Lnet/minecraft/class_3218;)V method_72473 turnIntoStatue + p 1 world + m ()Lnet/minecraft/class_3414; method_72472 getSpinHeadSound + m ()V method_72478 resetTargetContainerPos + m ()V method_72470 clientTick + m ()Lnet/minecraft/class_7094; method_72468 getDroppingItemAnimationState + m ()Lnet/minecraft/class_7094; method_72466 getGettingItemAnimationState + m (Lnet/minecraft/class_2338;)V method_72474 setTargetContainerPos + p 1 pos + m ()V method_72459 playSpawnSound + m (Lnet/minecraft/class_5955$class_5811;)V method_72461 setOxidationLevel + p 1 oxidationLevel + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5819;J)V method_72457 serverTick + p 1 world + p 3 timeOfDay + p 2 random + m (Lnet/minecraft/class_5955$class_5811;)V method_72460 onSpawn + p 1 oxidationLevel + m (Lnet/minecraft/class_1937;)Z method_72462 canTurnIntoStatue + p 1 world + m ()V method_72471 playSpinHeadSound + m ()Lnet/minecraft/class_5132$class_5133; method_72475 createCopperGolemAttributes + m ()Lnet/minecraft/class_7094; method_72469 getDroppingNoItemAnimationState + m (Lnet/minecraft/class_11577;)V method_72458 setState + p 1 state + m ()Lnet/minecraft/class_7094; method_72467 getGettingNoItemAnimationState + m ()Lnet/minecraft/class_11577; method_72476 getState + m ()Lnet/minecraft/class_5955$class_5811; method_72477 getOxidationLevel + m ()Lnet/minecraft/class_7094; method_72463 getSpinHeadAnimationState +c net/minecraft/class_10243 net/minecraft/data/recipe/TransmuteRecipeJsonBuilder + f Lnet/minecraft/class_6880; field_54397 result + f Ljava/lang/String; field_54401 group + f Lnet/minecraft/class_1856; field_54399 material + f Ljava/util/Map; field_54400 criteria + f Lnet/minecraft/class_7800; field_54396 category + f Lnet/minecraft/class_1856; field_54398 input + m (Ljava/lang/String;)Lnet/minecraft/class_10243; method_64381 group + m (Lnet/minecraft/class_5321;)V method_64379 validate + p 1 recipeKey + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_6880;Lnet/minecraft/class_1856;Lnet/minecraft/class_1856;)V + p 1 category + p 4 material + p 2 result + p 3 input + m (Lnet/minecraft/class_7800;Lnet/minecraft/class_1856;Lnet/minecraft/class_1856;Lnet/minecraft/class_1792;)Lnet/minecraft/class_10243; method_64380 create + p 2 material + p 3 result + p 0 category + p 1 input + m (Ljava/lang/String;Lnet/minecraft/class_175;)Lnet/minecraft/class_10243; method_64382 criterion +c net/minecraft/class_10240 net/minecraft/unused/packageinfo/PackageInfo10240 +c net/minecraft/class_10241 net/minecraft/client/gui/screen/world/CreateWorldCallback + m (Lnet/minecraft/class_525;Lnet/minecraft/class_7780;Lnet/minecraft/class_31;Ljava/nio/file/Path;)Z create create + p 4 dataPackTempDir + p 2 dynamicRegistries + p 3 levelProperties + p 1 screen +c net/minecraft/class_11578 net/minecraft/unused/packageinfo/PackageInfo11578 +c net/minecraft/class_10246 net/minecraft/datafixer/fix/BoatSplitFix + m (Ljava/lang/String;)Z method_64406 isBoatOrChestBoat + p 0 id + m (Ljava/lang/String;)Z method_64405 isChestBoat + p 0 id + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Ljava/lang/String;)Z method_64404 isBoat + p 0 id + m (Ljava/lang/String;)Ljava/lang/String; method_64408 getNewChestBoatIdFromOldType + p 0 type + m (Ljava/lang/String;)Ljava/lang/String; method_64407 getNewBoatIdFromOldType + p 0 type + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_64402 method_64402 + p 2 typed +c net/minecraft/class_10247 net/minecraft/datafixer/fix/ContainerBlockEntityLockPredicateFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_64409 fixLock + p 0 typed + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_64410 method_64410 + p 0 dynamic +c net/minecraft/class_11577 net/minecraft/entity/passive/CopperGolemState + f Ljava/util/function/IntFunction; field_61299 INDEX_MAPPER + f I field_61301 index + f Ljava/lang/String; field_61300 id + f Lnet/minecraft/class_9139; field_61298 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_61297 CODEC + f Lnet/minecraft/class_11577; field_61292 IDLE + f Lnet/minecraft/class_11577; field_61293 GETTING_ITEM + f Lnet/minecraft/class_11577; field_61294 GETTING_NO_ITEM + f Lnet/minecraft/class_11577; field_61295 DROPPING_ITEM + f Lnet/minecraft/class_11577; field_61296 DROPPING_NO_ITEM + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 id + p 4 index + m ()I method_72494 getIndex +c net/minecraft/class_11576 net/minecraft/entity/passive/CopperGolemOxidationLevels + f Lnet/minecraft/class_11575; field_61290 OXIDIZED + f Ljava/util/Map; field_61291 LEVELS + f Lnet/minecraft/class_11575; field_61287 UNAFFECTED + f Lnet/minecraft/class_11575; field_61289 WEATHERED + f Lnet/minecraft/class_11575; field_61288 EXPOSED + m (Lnet/minecraft/class_5955$class_5811;)Lnet/minecraft/class_11575; method_72493 get + p 0 oxidationLevel +c net/minecraft/class_10245 net/minecraft/world/EntityLookupView + m (Ljava/lang/Class;Lnet/minecraft/class_4051;Lnet/minecraft/class_1309;Lnet/minecraft/class_238;)Ljava/util/List; method_64392 getTargets + p 2 targetPredicate + p 1 clazz + p 4 box + p 3 entity + m (Lnet/minecraft/class_1309;)Z method_64386 method_64386 + p 0 entity + m (Lnet/minecraft/class_6862;Lnet/minecraft/class_1309;)Z method_73181 method_73181 + p 1 predicate + m (Lnet/minecraft/class_6862;Lnet/minecraft/class_4051;Lnet/minecraft/class_1309;DDDLnet/minecraft/class_238;)Lnet/minecraft/class_1309; method_73182 getClosestEntity + p 8 z + p 10 box + p 1 type + p 2 predicate + p 3 target + p 4 x + p 6 y + m (Lnet/minecraft/class_4051;Lnet/minecraft/class_1309;Lnet/minecraft/class_238;)Ljava/util/List; method_64390 getPlayers + p 2 entity + p 3 box + p 1 targetPredicate + m (Ljava/lang/Class;Lnet/minecraft/class_4051;Lnet/minecraft/class_1309;DDDLnet/minecraft/class_238;)Lnet/minecraft/class_1309; method_64391 getClosestEntity + p 1 clazz + p 3 entity + p 2 targetPredicate + p 4 x + p 6 y + p 8 z + p 10 box + m ()Lnet/minecraft/class_3218; method_8410 toServerWorld + m (Lnet/minecraft/class_4051;DDD)Lnet/minecraft/class_1657; method_64387 getClosestPlayer + p 2 x + p 4 y + p 1 targetPredicate + p 6 z + m (Ljava/util/List;Lnet/minecraft/class_4051;Lnet/minecraft/class_1309;DDD)Lnet/minecraft/class_1309; method_64393 getClosestEntity + p 4 x + p 3 entity + p 2 targetPredicate + p 1 entities + p 8 z + p 6 y + m (Lnet/minecraft/class_1309;)Z method_64394 method_64394 + p 0 potentialEntity + m (Lnet/minecraft/class_4051;Lnet/minecraft/class_1309;)Lnet/minecraft/class_1657; method_64388 getClosestPlayer + p 2 entity + p 1 targetPredicate + m (Lnet/minecraft/class_4051;Lnet/minecraft/class_1309;DDD)Lnet/minecraft/class_1657; method_64389 getClosestPlayer + p 7 z + p 3 x + p 5 y + p 2 entity + p 1 targetPredicate +c net/minecraft/class_11575 net/minecraft/entity/passive/CopperGolemOxidationLevel + f Lnet/minecraft/class_2960; comp_4436 eyeTexture + f Lnet/minecraft/class_2960; comp_4435 texture + f Lnet/minecraft/class_3414; comp_4431 spinHeadSound + f Lnet/minecraft/class_3414; comp_4432 hurtSound + f Lnet/minecraft/class_3414; comp_4433 deathSound + f Lnet/minecraft/class_3414; comp_4434 stepSound + m ()Lnet/minecraft/class_3414; comp_4432 hurtSound + m ()Lnet/minecraft/class_3414; comp_4431 spinHeadSound + m ()Lnet/minecraft/class_3414; comp_4434 stepSound + m ()Lnet/minecraft/class_3414; comp_4433 deathSound + m ()Lnet/minecraft/class_2960; comp_4435 texture + m ()Lnet/minecraft/class_2960; comp_4436 eyeTexture + m (Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_3414;Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V + p 1 spinHeadSound + p 2 hurtSound + p 3 deathSound + p 4 stepSound + p 5 texture + p 6 eyeTexture +c net/minecraft/class_10248 net/minecraft/datafixer/fix/LockComponentPredicateFix + f Lcom/google/common/escape/Escaper; field_54895 ESCAPER + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_64411 fixLock + p 0 dynamic +c net/minecraft/class_10249 net/minecraft/datafixer/schema/Schema4067 + m (Ljava/util/Map;Ljava/lang/String;)V method_64412 registerChestBoatFix + p 2 entityId +c net/minecraft/class_9104 net/minecraft/advancement/criterion/AnyBlockUseCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)V method_56049 trigger + p 1 player + p 3 stack + p 2 pos + m (Lnet/minecraft/class_47;Lnet/minecraft/class_9104$class_9105;)Z method_56050 method_56050 + p 1 conditions +c net/minecraft/class_9104$class_9105 net/minecraft/advancement/criterion/AnyBlockUseCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_48277 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2203 location + m (Lnet/minecraft/class_47;)Z method_56053 test + p 1 location + m (Lnet/minecraft/class_8944;Lnet/minecraft/class_5258;)V method_56051 method_56051 + p 1 location + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56052 method_56052 + p 0 instance + m ()Ljava/util/Optional; comp_2203 location + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 location +c net/minecraft/class_9103 net/minecraft/network/state/QueryStates + f Lnet/minecraft/class_9127; field_48263 C2S + f Lnet/minecraft/class_9127; field_48264 S2C + f Lnet/minecraft/class_10946; field_52200 C2S_FACTORY + f Lnet/minecraft/class_10946; field_52201 S2C_FACTORY + m (Lio/netty/buffer/ByteBuf;)Lio/netty/buffer/ByteBuf; method_60934 method_60934 + p 0 buf + m (Lnet/minecraft/class_9147;)V method_56030 method_56030 + p 0 builder + m (Lnet/minecraft/class_9147;)V method_56029 method_56029 + p 0 builder +c net/minecraft/class_11519 net/minecraft/dialog/DialogActionButtonData + f Lcom/mojang/serialization/Codec; field_60961 CODEC + f Lnet/minecraft/class_11416; comp_4390 data + f Ljava/util/Optional; comp_4391 action + m ()Lnet/minecraft/class_11416; comp_4390 data + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_72059 method_72059 + p 0 instance + m ()Ljava/util/Optional; comp_4391 action + m (Lnet/minecraft/class_11416;Ljava/util/Optional;)V + p 1 data + p 2 action +c net/minecraft/class_9102 net/minecraft/network/packet/StatusPackets + f Lnet/minecraft/class_9145; field_48262 STATUS_REQUEST + f Lnet/minecraft/class_9145; field_48261 STATUS_RESPONSE + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_56027 s2c + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_56028 c2s + p 0 id +c net/minecraft/class_9101 net/minecraft/unused/packageinfo/PackageInfo9101 +c net/minecraft/class_11517 net/minecraft/client/render/chunk/AbstractChunkRenderData + m (Lnet/minecraft/class_11515;)Z method_72028 containsLayer + p 1 layer + m (Lnet/minecraft/class_10196;)Z method_72036 hasPosition + p 1 pos + m (Lnet/minecraft/class_11515;)Lnet/minecraft/class_10896; method_72034 getBuffersForLayer + p 1 layer + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;)Z method_3650 isVisibleThrough + p 1 from + p 2 to + m ()Z method_72027 hasData + m ()Z method_72037 hasTranslucentLayers + m ()Ljava/util/List; method_72033 getBlockEntities +c net/minecraft/class_9100 net/minecraft/network/packet/PingPackets + f Lnet/minecraft/class_9145; field_48256 PING_REQUEST + f Lnet/minecraft/class_9145; field_48255 PONG_RESPONSE + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_56023 s2c + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_9145; method_56024 c2s + p 0 id +c net/minecraft/class_9109 net/minecraft/entity/ProjectileDeflection + f Lnet/minecraft/class_9109; field_51510 TRANSFER_VELOCITY_DIRECTION + f Lnet/minecraft/class_9109; field_48347 NONE + f Lnet/minecraft/class_9109; field_48348 SIMPLE + f Lnet/minecraft/class_9109; field_51509 REDIRECTED + m (Lnet/minecraft/class_1676;Lnet/minecraft/class_1297;Lnet/minecraft/class_5819;)V method_59861 method_59861 + p 0 projectile + p 1 hitEntity + p 2 random + m (Lnet/minecraft/class_1676;Lnet/minecraft/class_1297;Lnet/minecraft/class_5819;)V method_59862 method_59862 + p 2 random + p 0 projectile + p 1 hitEntity + m (Lnet/minecraft/class_1676;Lnet/minecraft/class_1297;Lnet/minecraft/class_5819;)V method_56096 method_56096 + p 0 projectile + p 1 hitEntity + p 2 random + m (Lnet/minecraft/class_1676;Lnet/minecraft/class_1297;Lnet/minecraft/class_5819;)V deflect deflect + p 2 hitEntity + p 1 projectile + p 3 random + m (Lnet/minecraft/class_1676;Lnet/minecraft/class_1297;Lnet/minecraft/class_5819;)V method_56095 method_56095 + p 1 hitEntity + p 2 random + p 0 projectile +c net/minecraft/class_9107 net/minecraft/advancement/criterion/DefaultBlockUseCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_2338;)V method_56066 trigger + p 2 pos + p 1 player + m (Lnet/minecraft/class_47;Lnet/minecraft/class_9107$class_9108;)Z method_56067 method_56067 + p 1 conditions +c net/minecraft/class_9107$class_9108 net/minecraft/advancement/criterion/DefaultBlockUseCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_48317 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2204 location + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56069 method_56069 + p 0 instance + m (Lnet/minecraft/class_47;)Z method_56070 test + p 1 location + m (Lnet/minecraft/class_8944;Lnet/minecraft/class_5258;)V method_56068 method_56068 + p 1 location + m ()Ljava/util/Optional; comp_2204 location + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 location +c net/minecraft/class_9106 net/minecraft/datafixer/fix/RenameEnchantmentFix + f Ljava/util/Map; field_48316 oldToNewIds + f Ljava/lang/String; field_48315 name + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_56061 method_56061 + p 1 enchantments + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56065 method_56065 + p 1 enchantmentDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56062 method_56062 + p 1 enchantmentsDynamic + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56055 method_56055 + p 2 itemStackTyped + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_56060 fixIds + p 2 enchantmentsKey + p 1 itemTagDynamic + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/Map;)V + p 1 outputSchema + p 2 name + p 3 oldToNewIds + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56059 method_56059 + p 2 idDynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56056 method_56056 + p 1 itemTagTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56057 fixIds + p 1 itemTagDynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_56064 method_56064 + p 2 oldId +c net/minecraft/class_11523 net/minecraft/dialog/DialogActionTypes + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_2558$class_2559;Lcom/mojang/serialization/MapCodec;)V method_72075 method_72075 + p 1 clickEventAction + p 2 codec + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_72074 registerAndGetDefault + p 0 registry +c net/minecraft/class_11521 net/minecraft/dialog/action/DialogAction + f Lcom/mojang/serialization/Codec; field_60973 CODEC + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_72067 method_72067 + p 0 codec + m (Ljava/util/Map;)Ljava/util/Optional; method_72068 createClickEvent + p 1 valueGetters + m ()Lcom/mojang/serialization/MapCodec; method_71738 getCodec +c net/minecraft/class_11521$class_11522 net/minecraft/dialog/action/DialogAction$ValueGetter + m ()Ljava/lang/String; method_72069 get + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_11521$class_11522; method_72072 of + p 0 valueSupplier + m (Ljava/util/Map;)Ljava/util/Map; method_72071 resolveAll + p 0 valueGetters + m ()Lnet/minecraft/class_2520; method_72073 getAsNbt + m (Ljava/lang/String;)Lnet/minecraft/class_11521$class_11522; method_72070 of + p 0 value +c net/minecraft/class_11520 net/minecraft/dialog/AfterAction + f Lnet/minecraft/class_3542$class_7292; field_60966 CODEC + f Lnet/minecraft/class_9139; field_60967 PACKET_CODEC + f I field_60968 index + f Ljava/util/function/IntFunction; field_60965 INDEX_MAPPER + f Ljava/lang/String; field_60969 id + f Lnet/minecraft/class_11520; field_60962 CLOSE + f Lnet/minecraft/class_11520; field_60963 NONE + f Lnet/minecraft/class_11520; field_60964 WAIT_FOR_RESPONSE + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 index + p 4 id + m (Lnet/minecraft/class_11520;)I method_72066 method_72066 + p 0 afterAction + m (Lnet/minecraft/class_11520;)I method_72064 method_72064 + p 0 afterAction + m ()Z method_72063 canUnpause +c net/minecraft/class_11527 net/minecraft/client/gui/render/OversizedItemGuiElementRenderer + f Z field_60989 oversized + f Ljava/lang/Object; field_60990 modelKey + m (Lnet/minecraft/class_11528;Lnet/minecraft/class_11246;)V method_72112 renderElement + m ()V method_72117 clearModel + m ()V method_72116 clearOversized + m (Lnet/minecraft/class_11528;)Z method_72110 shouldBypassScaling + m ()Z method_72115 isOversized + m (Lnet/minecraft/class_11528;Lnet/minecraft/class_4587;)V method_72111 render +c net/minecraft/class_11526 net/minecraft/unused/packageinfo/PackageInfo11526 +c net/minecraft/class_11525 net/minecraft/dialog/action/SimpleDialogAction + f Ljava/util/Map; field_60977 CODECS + f Lnet/minecraft/class_2558; comp_4399 value + m ()Lnet/minecraft/class_2558; comp_4399 value + m (Lnet/minecraft/class_2558;)V + p 1 value +c net/minecraft/class_11524 net/minecraft/dialog/action/DynamicCustomDialogAction + f Lcom/mojang/serialization/MapCodec; field_60976 CODEC + f Ljava/util/Optional; comp_4398 additions + f Lnet/minecraft/class_2960; comp_4397 id + m (Lnet/minecraft/class_2487;Ljava/lang/String;Lnet/minecraft/class_11521$class_11522;)V method_72077 method_72077 + p 2 valueGetter + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_72076 method_72076 + p 0 instance + m ()Lnet/minecraft/class_2960; comp_4397 id + m ()Ljava/util/Optional; comp_4398 additions + m (Lnet/minecraft/class_2960;Ljava/util/Optional;)V + p 1 id + p 2 additions +c net/minecraft/class_11509 net/minecraft/client/render/entity/animation/Animation + f Lnet/minecraft/class_7184; field_60864 definition + f Ljava/util/List; field_60865 entries + m (J)F method_71983 getRunningSeconds + p 1 timeInMilliseconds + m (Lnet/minecraft/class_7184;Ljava/util/List;)V + p 2 entries + p 1 definition + m (Lnet/minecraft/class_630;Lnet/minecraft/class_7184;)Lnet/minecraft/class_11509; method_71987 of + p 0 root + p 1 definition + m (Lnet/minecraft/class_7094;FF)V method_71986 apply + p 2 age + p 3 speedMultiplier + p 1 animationState + m (Lnet/minecraft/class_7094;F)V method_71985 apply + p 2 age + p 1 animationState + m (JF)V method_71984 apply + p 1 timeInMilliseconds + p 3 scale + m ()V method_71980 applyStatic + m (FFFF)V method_71981 applyWalking + p 2 limbSwingAmplitude + p 1 limbSwingAnimationProgress + m (FFLnet/minecraft/class_7094;)V method_71982 method_71982 + p 3 state +c net/minecraft/class_11509$class_11510 net/minecraft/client/render/entity/animation/Animation$TransformationEntry + f [Lnet/minecraft/class_7186; comp_4389 keyframes + f Lnet/minecraft/class_630; comp_4387 part + f Lnet/minecraft/class_7179$class_7182; comp_4388 target + m (FI)Z method_71989 method_71989 + p 2 index + m (FFLorg/joml/Vector3f;)V method_71988 apply + p 1 runningSeconds + p 2 scale + p 3 vec + m ()Lnet/minecraft/class_630; comp_4387 part + m ()[Lnet/minecraft/class_7186; comp_4389 keyframes + m ()Lnet/minecraft/class_7179$class_7182; comp_4388 target + m (Lnet/minecraft/class_630;Lnet/minecraft/class_7179$class_7182;[Lnet/minecraft/class_7186;)V + p 1 part + p 2 target + p 3 keyframes +c net/minecraft/class_9114 net/minecraft/test/BatchListener + m (Lnet/minecraft/class_4514;)V method_56199 onStarted + p 1 batch + m (Lnet/minecraft/class_4514;)V method_56200 onFinished + p 1 batch +c net/minecraft/class_9113 net/minecraft/test/Batches + f Lnet/minecraft/class_9113$class_10658; field_56170 DEFAULT_DECORATOR + f I field_48467 BATCH_SIZE + m (Lnet/minecraft/class_6880;Ljava/util/List;J)Lnet/minecraft/class_4514; method_56192 method_56192 + p 1 states + p 2 index + m ()Lnet/minecraft/class_4520$class_9116; method_56188 defaultBatcher + m (Ljava/util/Collection;Lnet/minecraft/class_9113$class_10658;Lnet/minecraft/class_3218;)Ljava/util/List; method_66925 batch + p 1 decorator + p 0 instances + p 2 world + m (ILjava/util/Map$Entry;)Ljava/util/stream/Stream; method_56196 method_56196 + p 1 entry + m (Lnet/minecraft/class_4517;)Lnet/minecraft/class_6880; method_66931 method_66931 + p 0 state + m (Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_3218;)Ljava/util/stream/Stream; method_66927 method_66927 + p 0 instance + p 1 world + m (Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_66926 method_66926 + p 0 entry + m (Ljava/util/Collection;Lnet/minecraft/class_6880;I)Lnet/minecraft/class_4514; method_56195 create + p 0 states + p 1 environment + p 2 index + m (Lnet/minecraft/class_9113$class_10658;Lnet/minecraft/class_3218;Lnet/minecraft/class_6880$class_6883;)Ljava/util/stream/Stream; method_66928 method_66928 + p 2 instance + m (Lnet/minecraft/class_6880;Ljava/util/List;J)Lnet/minecraft/class_4514; method_66930 method_66930 + p 1 states + p 2 index + m (I)Lnet/minecraft/class_4520$class_9116; method_61092 batcher + p 0 batchSize + m (Lnet/minecraft/class_4517;)Lnet/minecraft/class_6880; method_66929 method_66929 + p 0 state + m (ILjava/util/Collection;)Ljava/util/Collection; method_56193 method_56193 + p 1 states +c net/minecraft/class_9113$class_10658 net/minecraft/test/Batches$Decorator + m (Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_3218;)Ljava/util/stream/Stream; decorate decorate + p 1 instance + p 2 world +c net/minecraft/class_9112 net/minecraft/client/network/CookieStorage + f Z comp_4614 seenInsecureChatWarning + f Ljava/util/Map; comp_4613 seenPlayers + f Ljava/util/Map; comp_2206 cookies + m ()Ljava/util/Map; comp_4613 seenPlayers + m ()Z comp_4614 seenInsecureChatWarning + m ()Ljava/util/Map; comp_2206 cookies + m (Ljava/util/Map;Ljava/util/Map;Z)V + p 1 cookies + p 2 seenPlayers + p 3 seenInsecureChatWarning +c net/minecraft/class_9111 net/minecraft/client/font/FreeTypeUtil + f J field_48394 freeType + f Lorg/slf4j/Logger; field_51484 LOGGER + f Ljava/lang/Object; field_51483 LOCK + m (ILjava/lang/String;)V method_59837 checkFatalError + p 1 description + p 0 code + m (Lorg/lwjgl/util/freetype/FT_Vector;)F method_56146 getX + p 0 vec + m (Lorg/lwjgl/util/freetype/FT_Vector;FF)Lorg/lwjgl/util/freetype/FT_Vector; method_56147 set + p 0 vec + p 1 x + p 2 y + m ()J method_56143 initialize + m (ILjava/lang/String;)Z method_56145 checkError + p 1 description + p 0 code + m (I)Ljava/lang/String; method_56144 getErrorMessage + p 0 code + m ()V method_56148 release +c net/minecraft/class_9110 net/minecraft/client/gui/tooltip/TooltipState + f Ljava/time/Duration; field_48391 delay + f Lnet/minecraft/class_7919; field_48390 tooltip + f J field_48392 renderCheckTime + f Z field_48393 lastShouldRender + m (Lnet/minecraft/class_7919;)V method_56138 setTooltip + p 1 tooltip + m (Ljava/time/Duration;)V method_56141 setDelay + p 1 delay + m (Lnet/minecraft/class_6382;)V method_56139 appendNarrations + p 1 builder + m (Lnet/minecraft/class_332;IIZZLnet/minecraft/class_8030;)V method_56142 render + p 1 context + p 2 mouseX + p 3 mouseY + p 4 hovered + p 5 focused + p 6 navigationFocus + m ()Lnet/minecraft/class_7919; method_56137 getTooltip + m (Lnet/minecraft/class_8030;ZZ)Lnet/minecraft/class_8000; method_56140 createPositioner + p 3 focused + p 1 focus + p 2 hovered +c net/minecraft/class_9118 net/minecraft/test/TestAttemptConfig + f Lnet/minecraft/class_9118; field_48496 ONCE + f Z comp_2214 haltOnFailure + f I comp_2213 numberOfTries + m ()Z method_56247 isDisabled + m (II)Z method_56246 shouldTestAgain + p 1 attempt + p 2 successes + m ()Z method_56248 needsMultipleAttempts + m ()Lnet/minecraft/class_9118; method_56245 once + m ()I comp_2213 numberOfTries + m ()Z comp_2214 haltOnFailure + m (IZ)V + p 1 numberOfTries + p 2 haltOnFailure +c net/minecraft/class_11512 net/minecraft/client/gui/tab/LoadingTab + f Lnet/minecraft/class_2561; field_60869 title + f Lnet/minecraft/class_2561; field_60870 narratedHint + f Lnet/minecraft/class_8667; field_60868 layout + m (Lnet/minecraft/class_7847;)V method_71993 method_71993 + p 0 positioner + m (Lnet/minecraft/class_327;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 3 narratedHint + p 1 textRenderer + p 2 title +c net/minecraft/class_11516 net/minecraft/client/render/chunk/ChunkRenderData + f Lnet/minecraft/class_854; field_60938 chunkOcclusionData + f Lnet/minecraft/class_9801$class_9802; field_60939 translucencySortingData + f Lnet/minecraft/class_11517; field_60936 READY + f Lnet/minecraft/class_11517; field_60935 HIDDEN + f Ljava/util/List; field_60937 blockEntities + f Lnet/minecraft/class_10196; field_60940 pos + f Ljava/util/Map; field_60941 buffersByLayer + m ()Lnet/minecraft/class_9801$class_9802; method_72039 getTranslucencySortingData + m (Lnet/minecraft/class_10196;Lnet/minecraft/class_9810$class_9811;)V + p 1 pos + p 2 renderData + m (Lnet/minecraft/class_11515;Lnet/minecraft/class_9799$class_9800;J)V method_72030 uploadIndexBuffer + p 1 layer + p 2 buffer + p 3 sectionPos + m (Lnet/minecraft/class_10196;)V method_72032 setPos + p 1 pos + m (Lnet/minecraft/class_11515;Lnet/minecraft/class_9801;J)V method_72031 upload + p 3 sectionPos + p 2 builtBuffer + p 1 layer +c net/minecraft/class_11515 net/minecraft/client/render/BlockRenderLayer + f Z field_60931 translucent + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_60928 pipeline + f Ljava/lang/String; field_60932 name + f I field_60929 size + f Lnet/minecraft/class_11515; field_60925 CUTOUT + f Lnet/minecraft/class_11515; field_60926 TRANSLUCENT + f Lnet/minecraft/class_11515; field_60927 TRIPWIRE + f Lnet/minecraft/class_11515; field_60923 SOLID + m ()I method_72021 getBufferSize + m (Ljava/lang/String;ILcom/mojang/blaze3d/pipeline/RenderPipeline;IZ)V + p 4 size + p 3 pipeline + p 5 mipmap + m ()Ljava/lang/String; method_72022 getName + m ()Lcom/mojang/blaze3d/pipeline/RenderPipeline; method_72020 getPipeline + m ()Z method_72023 isTranslucent +c net/minecraft/class_11513 net/minecraft/client/gui/screen/dialog/DialogNetworkAccess + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_437;)V method_72003 showDialog + p 2 afterActionScreen + p 1 dialog + m (Lnet/minecraft/class_2561;)V method_74915 disconnect + p 1 reason + m (Ljava/lang/String;Lnet/minecraft/class_437;)V method_72002 runClickEventCommand + p 1 command + p 2 afterActionScreen + m ()Lnet/minecraft/class_9782; method_72000 getServerLinks + m (Lnet/minecraft/class_2960;Ljava/util/Optional;)V method_72001 sendCustomClickActionPacket + p 1 id + p 2 payload +c net/minecraft/class_10208 net/minecraft/datafixer/fix/FireResistantToDamageResistantComponentFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_10209 net/minecraft/util/profiler/Profilers + f Ljava/util/concurrent/atomic/AtomicInteger; field_54217 ACTIVE_BUILTIN_PROFILER_COUNT + f Ljava/lang/ThreadLocal; field_54216 BUILTIN_PROFILER + f Ljava/lang/ThreadLocal; field_54215 TRACY_PROFILER + m ()Lnet/minecraft/class_3695; method_64146 get + m (Lnet/minecraft/class_3695;)V method_64149 activate + p 0 profiler + m ()V method_64148 deactivate + m (Lnet/minecraft/class_3695;)Lnet/minecraft/class_10209$class_10210; method_64147 using + p 0 profiler + m ()Lnet/minecraft/class_3695; method_64150 getDefault + m (Lnet/minecraft/class_3695;)Lnet/minecraft/class_3695; method_64151 union + p 0 builtinProfiler +c net/minecraft/class_10209$class_10210 net/minecraft/util/profiler/Profilers$Scoped +c net/minecraft/class_11541 net/minecraft/client/gl/GpuDeviceInfo + f Z field_63062 shouldDisableArbDirectAccess + f Lnet/minecraft/class_11541; field_61070 instance + f Ljava/lang/ref/WeakReference; field_61071 device + f Z field_61072 requiresRecreateOnUploadToBuffer + f Z field_64657 useRgssOnFabulous + f Ljava/util/List; field_61073 OTHER_INTEL_DEVICES + f Ljava/util/List; field_61074 ATOM_DEVICES + f Ljava/util/List; field_61075 CELERON_DEVICES + f Ljava/util/List; field_61076 PENTIUM_DEVICES + m (Lcom/mojang/blaze3d/systems/GpuDevice;)Z method_74913 shouldDisableArbDirectAccess + p 0 device + m (Lcom/mojang/blaze3d/systems/GpuDevice;)V + p 1 device + m ()Z method_76745 shouldUseRgssOnFabulous + m ()Z method_74912 shouldDisableArbDirectAccess + m (Lcom/mojang/blaze3d/systems/GpuDevice;)Lnet/minecraft/class_11541; method_72243 get + p 0 device + m (Lcom/mojang/blaze3d/systems/GpuDevice;)Z method_76746 shouldUseRgssOnFabulous + p 0 device + m ()Z method_72242 requiresRecreateOnUploadToBuffer + m (Lcom/mojang/blaze3d/systems/GpuDevice;)Z method_72244 requiresRecreateOnUploadToBuffer + p 0 device +c net/minecraft/class_11540 net/minecraft/client/render/item/KeyedItemRenderState + f Ljava/util/List; field_61069 modelKey + m ()Ljava/lang/Object; method_72239 getModelKey +c net/minecraft/class_11545 net/minecraft/world/chunk/ChunkLoadProgress + m (Lnet/minecraft/class_11545$class_11546;I)V method_72281 init + p 2 chunks + p 1 stage + m (Lnet/minecraft/class_11545$class_11546;)V method_72280 finish + p 1 stage + m (Lnet/minecraft/class_11545$class_11546;II)V method_72282 progress + p 1 stage + p 2 fullChunks + p 3 totalChunks + m (Lnet/minecraft/class_11545;Lnet/minecraft/class_11545;)Lnet/minecraft/class_11545; method_72283 compose + p 0 first + p 1 second + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_1923;)V method_72279 initSpawnPos + p 2 spawnChunk + p 1 worldKey +c net/minecraft/class_11545$class_11546 net/minecraft/world/chunk/ChunkLoadProgress$Stage + f Lnet/minecraft/class_11545$class_11546; field_61105 START_SERVER + f Lnet/minecraft/class_11545$class_11546; field_61106 PREPARE_GLOBAL_SPAWN + f Lnet/minecraft/class_11545$class_11546; field_61107 LOAD_INITIAL_CHUNKS + f Lnet/minecraft/class_11545$class_11546; field_61108 LOAD_PLAYER_CHUNKS +c net/minecraft/class_11544 net/minecraft/world/chunk/ChunkLoadMap + m (II)Lnet/minecraft/class_2806; method_72277 getStatus + p 2 z + p 1 x + m ()I method_72276 getRadius + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_1923;)V method_72278 initSpawnPos + p 2 spawnPos + p 1 world +c net/minecraft/class_10214 net/minecraft/util/profiler/ScopedProfiler + f Lnet/minecraft/class_3695; field_54226 wrapped + f Lnet/minecraft/class_10214; field_54225 DUMMY + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_10214; method_64165 addLabel + p 1 labelSupplier + m (Lnet/minecraft/class_3695;)V + p 1 wrapped + m (Ljava/lang/String;)Lnet/minecraft/class_10214; method_64164 addLabel + p 1 label + m (J)Lnet/minecraft/class_10214; method_64163 addValue + p 1 value + m (I)Lnet/minecraft/class_10214; method_64162 setColor + p 1 color +c net/minecraft/class_11542 net/minecraft/world/chunk/ChunkLoadingCounter + f Ljava/util/List; field_61082 nonFullChunks + f I field_61083 totalChunks + m (Lnet/minecraft/class_3193;)Z method_72246 method_72246 + p 0 holder + m ()I method_72249 getNonFullChunks + m ()I method_72245 getFullChunks + m (Lnet/minecraft/class_3218;Ljava/lang/Runnable;)V method_72247 load + p 1 world + m (Lit/unimi/dsi/fastutil/longs/LongSet;Lnet/minecraft/class_3193;)V method_72250 method_72250 + p 1 holder + m ()I method_72251 getTotalChunks + m (Lit/unimi/dsi/fastutil/longs/LongSet;Lnet/minecraft/class_3193;)V method_72248 method_72248 + p 2 holder +c net/minecraft/class_10212 net/minecraft/util/profiler/TracyProfiler + f Ljava/util/Map; field_54221 markers + f Lorg/slf4j/Logger; field_54218 LOGGER + f Ljava/lang/StackWalker; field_54219 STACK_WALKER + f Ljava/util/List; field_54220 zones + f Ljava/lang/String; field_54222 threadName + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_10212$class_10213; method_64157 method_64157 + p 2 markerName + m (Ljava/lang/StackWalker$StackFrame;)Z method_64156 method_64156 + p 0 frame + m (Ljava/util/stream/Stream;)Ljava/util/Optional; method_64158 method_64158 + p 0 stream + m ()Lcom/mojang/jtracy/Zone; method_64159 getCurrentZone +c net/minecraft/class_10212$class_10213 net/minecraft/util/profiler/TracyProfiler$Marker + f I field_54224 count + f Lcom/mojang/jtracy/Plot; field_54223 plot + m (Ljava/lang/String;)V + p 1 name + m (I)V method_64161 increment + p 1 count + m (I)V method_64160 setCount + p 1 count +c net/minecraft/class_11549 net/minecraft/server/network/PrepareSpawnTask + f Lorg/slf4j/Logger; field_61130 LOGGER + f Lnet/minecraft/class_11545; field_61133 chunkLoadProgress + f I field_61129 CHUNK_LOAD_RADIUS + f Lnet/minecraft/server/MinecraftServer; field_61131 server + f Lnet/minecraft/class_11549$class_11552; field_61134 stage + f Lnet/minecraft/class_8605$class_8606; field_61128 KEY + f Lnet/minecraft/class_11560; field_61132 player + m (Lnet/minecraft/class_2535;Lnet/minecraft/class_8792;)Lnet/minecraft/class_3222; method_72296 onReady + p 2 clientData + p 1 connection + m (Lnet/minecraft/class_8942$class_11340;Lnet/minecraft/class_2487;)Lnet/minecraft/class_11368; method_72294 method_72294 + p 2 nbt + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_11560;)V + p 2 player + p 1 server + m (Lnet/minecraft/class_11368;)Ljava/util/Optional; method_72295 method_72295 + p 0 view + m ()V method_72298 onDisconnected + m ()V method_72297 tick +c net/minecraft/class_11549$class_11551 net/minecraft/server/network/PrepareSpawnTask$PlayerSpawn + f Lnet/minecraft/class_3218; field_61142 world + f Lnet/minecraft/class_241; field_61144 rotation + f Lnet/minecraft/class_243; field_61143 spawnPos + m ()V method_72302 tick + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_11368;)V method_72303 method_72303 + p 1 playerData + m (Lnet/minecraft/class_11549;Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_241;)V + p 2 world + p 3 spawnPos + p 4 rotation + m (Lnet/minecraft/class_2535;Lnet/minecraft/class_8792;)Lnet/minecraft/class_3222; method_72305 onReady + p 2 clientData + p 1 connection + m (Lnet/minecraft/class_8942$class_11340;Lnet/minecraft/class_2487;)Lnet/minecraft/class_11368; method_72304 method_72304 + p 2 playerData +c net/minecraft/class_11549$class_11550 net/minecraft/server/network/PrepareSpawnTask$LoadPlayerChunks + f Ljava/util/concurrent/CompletableFuture; field_61137 spawnPos + f Lnet/minecraft/class_241; field_61138 rotation + f Lnet/minecraft/class_11542; field_61140 chunkCounter + f Lnet/minecraft/class_3218; field_61136 world + f Ljava/util/concurrent/CompletableFuture; field_61139 chunkLoadingFuture + m ()Lnet/minecraft/class_11549$class_11551; method_72301 tryFinish + m ()V method_72299 cancel + m (Lnet/minecraft/class_11549;Lnet/minecraft/class_3218;Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/class_241;)V + p 2 world + p 4 rotation + p 3 spawnPos +c net/minecraft/class_11549$class_11552 net/minecraft/server/network/PrepareSpawnTask$Stage +c net/minecraft/class_11548 net/minecraft/world/chunk/LoggingChunkLoadProgress + f Z field_61120 player + f Lorg/slf4j/Logger; field_61119 LOGGER + f J field_61123 startTimeMs + f J field_61124 nextLogTimeMs + f Lnet/minecraft/class_11547; field_61121 delegate + f Z field_61122 done + m (Z)V + p 1 player + m ()Lnet/minecraft/class_11548; method_72291 withPlayer + m ()Lnet/minecraft/class_11548; method_72290 withoutPlayer +c net/minecraft/class_10218 net/minecraft/client/util/tracy/TracyLoader + f Z field_54250 loaded + m ()V method_64227 load + m (Lorg/slf4j/event/Level;)I method_64229 getColor + p 0 level + m (Ljava/lang/String;Lorg/slf4j/event/Level;)V method_64228 method_64228 + p 1 level + p 0 message +c net/minecraft/class_11547 net/minecraft/world/chunk/DeltaChunkLoadProgress + f F field_61117 loadProgress + f F field_61116 fullyLoadedChunksRatio + f Z field_61112 player + f I field_61114 previousLoadedChunks + f I field_61115 chunks + f I field_61113 totalChunks + f I field_61110 INITIAL_CHUNKS + f I field_61111 PLAYER_CHUNKS + m (Z)V + p 1 player + m ()F method_72285 getLoadProgress + m (I)V method_72286 init + p 1 chunks + m ()V method_72287 finish + m ()V method_72289 recalculateLoadProgress + m (Lnet/minecraft/class_11545$class_11546;)Z method_72288 shouldLoad + p 1 stage +c net/minecraft/class_10215 net/minecraft/component/type/DamageResistantComponent + f Lnet/minecraft/class_9139; field_54230 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_54229 CODEC + f Lnet/minecraft/class_6862; comp_3210 types + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64199 method_64199 + p 0 instance + m (Lnet/minecraft/class_1282;)Z method_64198 resists + p 1 damageSource + m ()Lnet/minecraft/class_6862; comp_3210 types + m (Lnet/minecraft/class_6862;)V + p 1 types +c net/minecraft/class_10216 net/minecraft/component/type/DeathProtectionComponent + f Lnet/minecraft/class_9139; field_54232 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_54231 CODEC + f Lnet/minecraft/class_10216; field_54233 TOTEM_OF_UNDYING + f Ljava/util/List; comp_3211 deathEffects + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64200 method_64200 + p 0 instance + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;)V method_64201 applyDeathEffects + p 2 entity + p 1 stack + m ()Ljava/util/List; comp_3211 deathEffects + m (Ljava/util/List;)V + p 1 deathEffects +c net/minecraft/class_11529 net/minecraft/client/gui/screen/dialog/DialogControls + f Ljava/util/function/Supplier; field_61005 EMPTY_ACTION_CLICK_EVENT + f Lnet/minecraft/class_11473; field_61006 screen + f Ljava/util/Map; field_61007 valueGetters + m (Ljava/lang/String;Ljava/util/function/Consumer;Lnet/minecraft/class_8021;Lnet/minecraft/class_11521$class_11522;)V method_72138 method_72138 + p 4 valueGetter + p 3 widget + m (Ljava/util/Optional;)Ljava/util/function/Supplier; method_72139 createClickEvent + p 1 action + m (Lnet/minecraft/class_11473;)V + p 1 screen + m (Ljava/util/function/Supplier;Lnet/minecraft/class_4185;)V method_72140 method_72140 + p 2 button + m (Lnet/minecraft/class_11519;)Lnet/minecraft/class_4185$class_7840; method_72134 createButton + p 1 actionButtonData + m (Lnet/minecraft/class_11424;Ljava/util/function/Consumer;)V method_72136 addInput + p 1 input + p 2 widgetConsumer + m (Lnet/minecraft/class_11416;Lnet/minecraft/class_4185$class_4241;)Lnet/minecraft/class_4185$class_7840; method_72135 createButton + p 1 pressAction + p 0 data +c net/minecraft/class_11528 net/minecraft/client/gui/render/state/special/OversizedItemGuiElementRenderState + f I comp_4122 x1 + f I comp_4123 y1 + f I comp_4124 x2 + f I comp_4125 y2 + f Lnet/minecraft/class_11245; comp_4401 guiItemRenderState + m ()Lnet/minecraft/class_11245; comp_4401 guiItemRenderState + m (Lnet/minecraft/class_11245;IIII)V + p 1 guiItemRenderState + p 2 x1 + p 3 y1 + p 4 x2 + p 5 y2 +c net/minecraft/class_11530 net/minecraft/client/gui/screen/dialog/WaitingForResponseScreen + f Lnet/minecraft/class_4185; field_61016 backButton + f I field_61017 inactiveTicks + f I field_61013 SECONDS_BEFORE_BACK_BUTTON_ACTIVATES + f [Lnet/minecraft/class_2561; field_61011 BUTTON_TEXTS + f I field_61012 SECONDS_BEFORE_BACK_BUTTON_APPEARS + f Lnet/minecraft/class_437; field_61014 parent + f Lnet/minecraft/class_8132; field_61015 layout + f Lnet/minecraft/class_2561; field_61010 TITLE + m (Lnet/minecraft/class_437;)V + p 1 parent + m ()Lnet/minecraft/class_437; method_72145 getParentScreen + m (Lnet/minecraft/class_4185;)V method_72143 method_72143 + p 1 button + m (Lnet/minecraft/class_11530;Lnet/minecraft/class_364;)V method_72144 method_72144 + p 1 child +c net/minecraft/class_11533 net/minecraft/client/render/item/model/special/PlayerHeadModelRenderer + f Lnet/minecraft/class_5598; field_61034 model + f Lnet/minecraft/class_11786; field_62262 playerSkinCache + m (Lnet/minecraft/class_11786$class_11787;Lnet/minecraft/class_811;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IIZI)V method_72178 render + m (Lnet/minecraft/class_11786;Lnet/minecraft/class_5598;)V + p 1 playerSkinCache + p 2 model + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_11786$class_11787; method_72176 getData +c net/minecraft/class_11533$class_11535 net/minecraft/client/render/item/model/special/PlayerHeadModelRenderer$Unbaked + f Lcom/mojang/serialization/MapCodec; field_61036 CODEC +c net/minecraft/class_11532 net/minecraft/client/render/SectionRenderState + f Ljava/util/EnumMap; comp_4402 drawsPerLayer + f I comp_4403 maxIndicesRequired + f [Lcom/mojang/blaze3d/buffers/GpuBufferSlice; comp_5193 chunkSectionInfos + f Lcom/mojang/blaze3d/textures/GpuTextureView; comp_5192 textureView + m (Lnet/minecraft/class_11531;Lnet/minecraft/class_12137;)V method_72170 renderSection + p 1 group + p 2 sampler + m ()Ljava/util/EnumMap; comp_4402 drawsPerLayer + m ()Lcom/mojang/blaze3d/textures/GpuTextureView; comp_5192 textureView + m ()[Lcom/mojang/blaze3d/buffers/GpuBufferSlice; comp_5193 chunkSectionInfos + m ()I comp_4403 maxIndicesRequired + m (Lcom/mojang/blaze3d/textures/GpuTextureView;Ljava/util/EnumMap;I[Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V + p 1 textureView + p 2 drawsPerLayer + p 3 maxIndicesRequired + p 4 chunkSectionInfos +c net/minecraft/class_11531 net/minecraft/client/render/BlockRenderLayerGroup + f [Lnet/minecraft/class_11515; field_61026 layers + f Ljava/lang/String; field_61025 name + f Lnet/minecraft/class_11531; field_61022 OPAQUE + f Lnet/minecraft/class_11531; field_61023 TRANSLUCENT + f Lnet/minecraft/class_11531; field_61024 TRIPWIRE + m (Ljava/lang/String;I[Lnet/minecraft/class_11515;)V + p 3 layers + m ()[Lnet/minecraft/class_11515; method_72167 getLayers + m ()Lnet/minecraft/class_276; method_72168 getFramebuffer + m ()Ljava/lang/String; method_72166 getName +c net/minecraft/class_10201 net/minecraft/client/render/entity/equipment/EquipmentModelLoader + f Lnet/minecraft/class_7654; field_55459 FINDER + f Lnet/minecraft/class_10186; field_54189 EMPTY + f Ljava/util/Map; field_54190 models + m (Ljava/util/Map;Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)V method_64088 apply + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_5321; method_65724 method_65724 + p 0 entry + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_10186; method_64087 get + p 1 assetKey +c net/minecraft/class_10206 net/minecraft/client/data/EquipmentAssetProvider + f Lnet/minecraft/class_7784$class_7489; field_54202 pathResolver + m (Lnet/minecraft/class_7784;)V + p 1 output + m (Ljava/lang/String;)Lnet/minecraft/class_10186; method_65425 createHumanoidAndHorseModel + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_10186; method_65423 createHumanoidOnlyModel + p 0 id + m (Ljava/util/function/BiConsumer;)V method_65424 bootstrap + p 0 equipmentBiConsumer + m (Ljava/util/Map;Lnet/minecraft/class_5321;Lnet/minecraft/class_10186;)V method_64112 method_64112 + p 1 key + p 2 model +c net/minecraft/class_11537 net/minecraft/datafixer/fix/WrittenBookPagesStrictJsonFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_10207 net/minecraft/util/thread/NameableExecutor + f Ljava/util/concurrent/ExecutorService; comp_3205 service + m (Ljava/lang/String;)Ljava/util/concurrent/Executor; method_64116 named + p 1 name + m (Ljava/lang/Runnable;)V execute execute + p 1 runnable + m (JLjava/util/concurrent/TimeUnit;)V method_64114 shutdown + p 3 unit + p 1 time + m (Ljava/lang/String;Ljava/lang/Runnable;)V method_64120 method_64120 + p 2 runnable + m (Ljava/lang/Runnable;)Ljava/lang/Runnable; method_64115 wrapForTracy + p 0 runnable + m (Ljava/lang/String;Ljava/lang/Runnable;)V method_64117 method_64117 + p 2 runnable + m ()Ljava/util/concurrent/ExecutorService; comp_3205 service + m (Ljava/util/concurrent/ExecutorService;)V + p 1 service +c net/minecraft/class_11536 net/minecraft/datafixer/fix/SignTextStrictJsonFix + f Ljava/util/List; field_61050 TEXT_KEYS + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_10205 net/minecraft/block/dispenser/EquippableDispenserBehavior + f Lnet/minecraft/class_10205; field_54201 INSTANCE + m (Lnet/minecraft/class_2342;Lnet/minecraft/class_1799;)Z method_64106 dispense + p 0 pointer + p 1 stack + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;)Z method_64105 method_64105 + p 1 entity +c net/minecraft/class_5623 net/minecraft/test/TestFailureLogger + f Lnet/minecraft/class_4531; field_27807 completionListener + m (Lnet/minecraft/class_4517;)V method_32245 failTest + p 0 test + m (Lnet/minecraft/class_4531;)V method_36100 setCompletionListener + p 0 listener + m ()V method_36099 stop + m (Lnet/minecraft/class_4517;)V method_33319 passTest + p 0 test +c net/minecraft/class_6955 net/minecraft/world/gen/OreVeinSampler + f F field_36623 BLOCK_GENERATION_CHANCE + c The probability that a given block will be replaced by an ore vein,\ngiven that the density check has passed. + f F field_36620 DENSITY_THRESHOLD + c The density threshold required to generate any blocks as part of an ore vein. + f F field_36627 RAW_ORE_BLOCK_CHANCE + f F field_36626 DENSITY_FOR_MAX_ORE_CHANCE + f F field_36625 MAX_ORE_CHANCE + f D field_36622 LIMINAL_DENSITY_REDUCTION + c The decrease in density at the minimum or maximum height compared to the\nmaximum density. + f F field_36624 MIN_ORE_CHANCE + f F field_36628 VEIN_GAP_THRESHOLD + f I field_36621 MAX_DENSITY_INTRUSION + c The number of blocks away from the minimum or maximum height at which\nores in an ore vein generates at the maximum density. + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_2680;Lnet/minecraft/class_6574;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910$class_6912;)Lnet/minecraft/class_2680; method_40547 method_40547 + p 5 pos + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6574;)Lnet/minecraft/class_6568$class_6569; method_40548 create + p 3 randomDeriver + p 1 veinRidged + p 2 veinGap + p 0 veinToggle +c net/minecraft/class_6955$class_6354 net/minecraft/world/gen/OreVeinSampler$VeinType + f Lnet/minecraft/class_2680; field_33605 ore + f Lnet/minecraft/class_2680; field_33606 stone + f Lnet/minecraft/class_2680; field_33668 rawOreBlock + f I field_33607 minY + f I field_33608 maxY + f Lnet/minecraft/class_6955$class_6354; field_33603 COPPER + f Lnet/minecraft/class_6955$class_6354; field_33604 IRON + m (Ljava/lang/String;ILnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;II)V + p 5 stone + p 4 rawOreBlock + p 7 maxY + p 6 minY + p 3 ore +c net/minecraft/class_5622 net/minecraft/test/NotEnoughSuccessesError + m (IILnet/minecraft/class_4517;)V + p 3 test + p 1 attempts + p 2 successes +c net/minecraft/class_6953 net/minecraft/world/gen/noise/NoiseRouter + f Lcom/mojang/serialization/Codec; field_37683 CODEC + f Lnet/minecraft/class_6910; comp_485 ridges + f Lnet/minecraft/class_6910; comp_484 continents + f Lnet/minecraft/class_6910; comp_487 finalDensity + f Lnet/minecraft/class_6910; comp_430 veinGap + f Lnet/minecraft/class_6910; comp_429 veinRidged + f Lnet/minecraft/class_6910; comp_428 veinToggle + f Lnet/minecraft/class_6910; comp_424 depth + f Lnet/minecraft/class_6910; comp_420 temperature + f Lnet/minecraft/class_6910; comp_423 erosion + f Lnet/minecraft/class_6910; comp_417 lavaNoise + f Lnet/minecraft/class_6910; comp_416 fluidLevelSpreadNoise + f Lnet/minecraft/class_6910; comp_415 fluidLevelFloodednessNoise + f Lnet/minecraft/class_6910; comp_414 barrierNoise + f Lnet/minecraft/class_6910; comp_539 vegetation + f Lnet/minecraft/class_6910; comp_4450 preliminarySurfaceLevel + m (Lnet/minecraft/class_6910$class_6915;)Lnet/minecraft/class_6953; method_41544 apply + p 1 visitor + m (Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/serialization/codecs/RecordCodecBuilder; method_41545 field + p 0 name + p 1 getter + m ()Lnet/minecraft/class_6910; comp_417 lavaNoise + m ()Lnet/minecraft/class_6910; comp_416 fluidLevelSpreadNoise + m ()Lnet/minecraft/class_6910; comp_415 fluidLevelFloodednessNoise + m ()Lnet/minecraft/class_6910; comp_414 barrierNoise + m ()Lnet/minecraft/class_6910; comp_539 vegetation + m ()Lnet/minecraft/class_6910; comp_430 veinGap + m ()Lnet/minecraft/class_6910; comp_420 temperature + m ()Lnet/minecraft/class_6910; comp_424 depth + m ()Lnet/minecraft/class_6910; comp_423 erosion + m ()Lnet/minecraft/class_6910; comp_429 veinRidged + m ()Lnet/minecraft/class_6910; comp_428 veinToggle + m ()Lnet/minecraft/class_6910; comp_4450 preliminarySurfaceLevel + m ()Lnet/minecraft/class_6910; comp_485 ridges + m ()Lnet/minecraft/class_6910; comp_484 continents + m ()Lnet/minecraft/class_6910; comp_487 finalDensity + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;)V + p 1 barrierNoise + p 2 fluidLevelFloodednessNoise + p 3 fluidLevelSpreadNoise + p 4 lavaNoise + p 5 temperature + p 6 vegetation + p 7 continents + p 8 erosion + p 9 depth + p 10 ridges + p 11 preliminarySurfaceLevel + p 12 finalDensity + p 13 veinToggle + p 14 veinRidged + p 15 veinGap +c net/minecraft/class_5625 net/minecraft/nbt/visitor/NbtOrderedStringFormatter + c Formats an NBT element as a multiline string where named elements inside of compound objects\nare sorted according to a defined ordering. + f Ljava/lang/String; field_27823 KEY_VALUE_SEPARATOR + f Ljava/lang/String; field_27824 ENTRY_SEPARATOR + f Ljava/lang/String; field_33237 SPACE + f Ljava/lang/String; field_33238 CURLY_OPEN_BRACKET + f Ljava/lang/String; field_33239 CURLY_CLOSE_BRACKET + f I field_27826 indentationLevel + f Ljava/lang/String; field_33234 SQUARE_OPEN_BRACKET + f Ljava/lang/String; field_33235 SQUARE_CLOSE_BRACKET + f Ljava/lang/String; field_33236 SEMICOLON + f Ljava/lang/String; field_33240 NEW_LINE + f Ljava/lang/String; field_27828 result + f Ljava/lang/String; field_27825 prefix + f Ljava/util/Map; field_27820 ENTRY_ORDER_OVERRIDES + c Contains the names of elements which should appear before any other element in a compound object, even\nwhen they would otherwise appear later lexicographically. The list of elements which should be\nprioritized differs depending on the path of the compound object. + f Ljava/util/List; field_27827 pathParts + f Ljava/util/Set; field_27821 IGNORED_PATHS + c Contains paths for which the indentation prefix should not be prepended to the result. + f Ljava/util/regex/Pattern; field_27822 SIMPLE_NAME + m ()Ljava/lang/String; method_32280 joinPath + m (Ljava/util/HashMap;)V method_32282 method_32282 + p 0 map + m (Ljava/lang/String;)Ljava/lang/String; method_32281 escapeName + p 0 name + m (Lnet/minecraft/class_2520;)Ljava/lang/String; method_32283 apply + c {@return the stringified NBT {@code element}} + p 1 element + m (Ljava/lang/String;ILjava/util/List;)V + p 1 prefix + p 2 indentationLevel + p 3 pathParts + m (Ljava/lang/String;)V method_32285 pushPathPart + p 1 part + m ()V method_32284 popPathPart + m (Lnet/minecraft/class_2487;)Ljava/util/List; method_32286 getSortedNames + p 1 compound +c net/minecraft/class_5624 net/minecraft/test/StructureTestListener + f I field_27808 attempt + f I field_27809 successes + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Ljava/util/Optional; method_66988 method_66988 + p 1 pos + m (Lnet/minecraft/class_4517;Lnet/minecraft/class_4520;Z)V method_56244 retry + p 3 lastPassed + p 1 state + p 2 context + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_124;Ljava/lang/String;)V method_32248 sendMessageToAllPlayers + p 2 message + p 1 formatting + p 0 world + m (Lnet/minecraft/class_3222;)Z method_32249 method_32249 + p 0 player + m (Lnet/minecraft/class_4517;Ljava/lang/String;)V method_33320 passTest + p 0 test + p 1 output + m (Lnet/minecraft/class_4517;Ljava/lang/String;)V method_33321 finishPassedTest + p 1 output + p 0 test + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_10638;)V method_66990 method_66990 + p 1 testInstanceBlockEntity + m (Lnet/minecraft/class_10638;)V method_66989 method_66989 + p 0 testInstanceBlockEntity + m (Ljava/lang/String;Lnet/minecraft/class_124;Lnet/minecraft/class_3222;)V method_32250 method_32250 + p 2 player + m (Lnet/minecraft/class_4517;)Ljava/util/Optional; method_66991 getTestInstanceBlockEntity + p 0 state + m (Lnet/minecraft/class_4517;Ljava/lang/Throwable;)V method_32255 finishFailedTest + p 1 output + p 0 test + m (Lnet/minecraft/class_4517;Ljava/lang/Throwable;)V method_32254 failTest + p 0 test + p 1 output +c net/minecraft/class_6954 net/minecraft/world/gen/densityfunction/DensityFunctions + f I field_61476 WORLD_TOP_HEIGHT + f Lnet/minecraft/class_6910; field_36619 ZERO_FUNCTION + f D field_61478 WORLD_TOP_OFFSET + f I field_61475 WORLD_BOTTOM_Y + f Lnet/minecraft/class_6910; field_36618 TEN_FUNCTION + f I field_61479 BOTTOM_RELATIVE_SLIDE_MAX_Y + f D field_61477 WORLD_BOTTOM_OFFSET + f Lnet/minecraft/class_5321; field_37120 SHIFT_Z + f Lnet/minecraft/class_5321; field_37122 CONTINENTS_OVERWORLD + f Lnet/minecraft/class_5321; field_37123 EROSION_OVERWORLD + f Lnet/minecraft/class_5321; field_37124 RIDGES_OVERWORLD + f Lnet/minecraft/class_5321; field_37114 CAVES_PILLARS_OVERWORLD + f Lnet/minecraft/class_5321; field_37115 CAVES_SPAGHETTI_2D_THICKNESS_MODULATOR_OVERWORLD + f Lnet/minecraft/class_5321; field_37116 CAVES_SPAGHETTI_2D_OVERWORLD + f Lnet/minecraft/class_5321; field_37117 ZERO + f Lnet/minecraft/class_5321; field_37118 Y + f Lnet/minecraft/class_5321; field_37119 SHIFT_X + f Lnet/minecraft/class_5321; field_37130 FACTOR_OVERWORLD_LARGE_BIOME + f Lnet/minecraft/class_5321; field_37131 DEPTH_OVERWORLD_LARGE_BIOME + f Lnet/minecraft/class_5321; field_37132 SLOPED_CHEESE_OVERWORLD_LARGE_BIOME + f Lnet/minecraft/class_5321; field_37133 SLOPED_CHEESE_END + f Lnet/minecraft/class_5321; field_37134 CAVES_SPAGHETTI_ROUGHNESS_FUNCTION_OVERWORLD + f Lnet/minecraft/class_5321; field_37135 CAVES_ENTRANCES_OVERWORLD + f Lnet/minecraft/class_5321; field_37136 CAVES_NOODLE_OVERWORLD + f Lnet/minecraft/class_5321; field_37125 FACTOR_OVERWORLD + f Lnet/minecraft/class_5321; field_37126 DEPTH_OVERWORLD + f Lnet/minecraft/class_5321; field_37127 SLOPED_CHEESE_OVERWORLD + f Lnet/minecraft/class_5321; field_37128 CONTINENTS_OVERWORLD_LARGE_BIOME + f Lnet/minecraft/class_5321; field_37129 EROSION_OVERWORLD_LARGE_BIOME + f Lnet/minecraft/class_5321; field_37693 RIDGES_FOLDED_OVERWORLD + f Lnet/minecraft/class_5321; field_37684 JAGGEDNESS_OVERWORLD_LARGE_BIOME + f Lnet/minecraft/class_5321; field_37685 OFFSET_OVERWORLD_AMPLIFIED + f Lnet/minecraft/class_5321; field_37686 FACTOR_OVERWORLD_AMPLIFIED + f Lnet/minecraft/class_5321; field_37687 JAGGEDNESS_OVERWORLD_AMPLIFIED + f Lnet/minecraft/class_5321; field_37688 DEPTH_OVERWORLD_AMPLIFIED + f Lnet/minecraft/class_5321; field_37689 SLOPED_CHEESE_OVERWORLD_AMPLIFIED + f Lnet/minecraft/class_5321; field_37694 OFFSET_OVERWORLD + f Lnet/minecraft/class_5321; field_37695 JAGGEDNESS_OVERWORLD + f Lnet/minecraft/class_5321; field_37696 OFFSET_OVERWORLD_LARGE_BIOME + f Lnet/minecraft/class_5321; field_38251 BASE_3D_NOISE_OVERWORLD + f Lnet/minecraft/class_5321; field_38252 BASE_3D_NOISE_NETHER + f Lnet/minecraft/class_5321; field_38249 BASE_3D_NOISE_END + m (Lnet/minecraft/class_7891;)Lnet/minecraft/class_6880; method_41100 bootstrap + p 0 densityFunctionRegisterable + m (Lnet/minecraft/class_7871;)Lnet/minecraft/class_6953; method_41120 createEndNoiseRouter + c Creates the {@link NoiseRouter} for The End.\n\n@return the created {@code NoiseRouter} + p 0 densityFunctionLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Lnet/minecraft/class_6910;)Lnet/minecraft/class_6953; method_41211 createMultiNoiseDependentNoiseRouter + p 0 densityFunctionLookup + p 1 noiseParametersLookup + p 2 density + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40540 createInitialDensityFunction + p 0 factor + p 1 depth + m (Lnet/minecraft/class_7871;)Lnet/minecraft/class_6910; method_41121 createCavePillarsOverworldFunction + p 0 noiseParametersLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_6953; method_41552 createFloatingIslandsNoiseRouter + c Creates the {@link NoiseRouter} for the floating islands world type.\n\n@return the created {@code NoiseRouter} + p 0 densityFunctionLookup + p 1 noiseParametersLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_5321;)Lnet/minecraft/class_6910; method_41116 entryHolder + p 1 key + p 0 densityFunctionRegisterable + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_42367 applyEndSlides + c Applies the slides for The End.\n\n@return the created density function + p 0 slopedCheese + c the base density function + m (Lnet/minecraft/class_6910;IIIIDIID)Lnet/minecraft/class_6910; method_42365 applySlides + c Interpolates the density at the top and bottom of the world.\n\n@return the created density function + p 7 bottomRelativeMinY + c the minimum block Y of the bottom slide, added to the bottom height + p 8 bottomRelativeMaxY + c the maximum block Y of the bottom slide, added to the bottom height + p 9 bottomDensity + c the density at the bottom of the world. For height levels between the bottom-relative minimum and maximum heights, this is interpolated with the actual density + p 0 density + c the base density function + p 1 minY + c the minimum block Y coordinate of the world + p 2 maxY + c the maximum block Y coordinate of the world + p 3 topRelativeMinY + c the minimum block Y of the top slide, subtracted from the top height + p 4 topRelativeMaxY + c the maximum block Y of the top slide, subtracted from the top height + p 5 topDensity + c the density at the top of the world. For height levels between the top-relative minimum and maximum heights, this is interpolated with the actual density + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_41101 createCavesFunction + p 0 densityFunctionLookup + p 1 noiseParametersLookup + p 2 slopedCheese + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_72686 applyHeightGradient + p 0 function + m (ZLnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_42366 applySurfaceSlides + c Applies the slides for the overworld and the surface world type.\n\n@return the created density function + p 1 density + c the base density function + p 0 amplified + c whether the amplified world type is used + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_7871;Lnet/minecraft/class_6910;Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Z)V method_41548 registerSlopedCheeseFunction + c Creates and registers the {@code sloped_cheese} density function.\nThis is used for the normal, large biomes and amplified world types. + p 10 amplified + p 8 depthKey + p 9 slopedCheeseKey + p 6 factorKey + p 7 jaggednessKey + p 4 erosion + p 5 offsetKey + p 2 jaggedNoise + p 3 continents + p 0 densityFunctionRegisterable + p 1 densityFunctionLookup + m (Lnet/minecraft/class_6955$class_6354;)I method_41550 method_41550 + p 0 veinType + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;ZZ)Lnet/minecraft/class_6953; method_41103 createSurfaceNoiseRouter + c Creates the {@link NoiseRouter} for the overworld and the surface world type.\n\n@return the created {@code NoiseRouter} + p 0 densityFunctionLookup + p 3 amplified + p 2 largeBiomes + p 1 noiseParametersLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_6910; method_41117 createCavesEntrancesOverworldFunction + p 1 noiseParametersLookup + p 0 densityFunctionLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_6953; method_41118 createNetherNoiseRouter + c Creates the {@link NoiseRouter} for the nether.\n\n@return the created {@code NoiseRouter} + p 1 noiseParametersLookup + p 0 densityFunctionLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_6910; method_41119 createCavesNoodleOverworldFunction + p 0 densityFunctionLookup + p 1 noiseParametersLookup + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_41207 applyBlendDensity + p 0 density + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;III)Lnet/minecraft/class_6910; method_40539 verticalRangeChoice + p 0 y + p 4 whenOutOfRange + p 3 maxInclusive + p 2 minInclusive + p 1 whenInRange + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_6953; method_41549 createCavesNoiseRouter + c Creates the {@link NoiseRouter} for the caves world type.\n\n@return the created {@code NoiseRouter} + p 0 densityFunctionLookup + p 1 noiseParametersLookup + m (Lnet/minecraft/class_6910;II)Lnet/minecraft/class_6910; method_42364 applyFloatingIslandsSlides + c Applies the slides for The End or the floating islands world type.\n\n@return the created density function + p 2 maxY + c the maximum block Y coordinate of the world + p 1 minY + c the minimum block Y coordinate of the world + p 0 function + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40541 applyBlending + p 1 blendOffset + p 0 function + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_41109 of + p 0 id + m (F)F method_41546 getPeaksValleysNoise + p 0 weirdness + m (Lnet/minecraft/class_7871;II)Lnet/minecraft/class_6910; method_42363 applyCavesSlides + c Applies the slides for the nether and the caves world type.\n\n@return the created density function + p 2 maxY + c the maximum block Y coordinate of the world + p 1 minY + c the minimum block Y coordinate of the world + p 0 densityFunctionLookup + m (Lnet/minecraft/class_6910;DDDD)Lnet/minecraft/class_6910; method_72687 estimateUpperBound + p 0 density + p 5 bottomY + p 7 topY + p 1 bottomDensity + p 3 topDensity + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;)Lnet/minecraft/class_6910; method_41122 createCavesSpaghetti2dOverworldFunction + p 0 densityFunctionLookup + p 1 noiseParametersLookup + m (Lnet/minecraft/class_7871;)Lnet/minecraft/class_6910; method_41113 createCavesSpaghettiRoughnessOverworldFunction + p 0 noiseParametersLookup + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_41551 registerAndGetHolder + p 0 densityFunctionRegisterable + p 2 densityFunction + p 1 key + m ()Lnet/minecraft/class_6953; method_44324 createMissingNoiseRouter + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_41547 createRidgesFoldedOverworldFunction + p 0 input + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Z)Lnet/minecraft/class_6910; method_72688 findTopSurface + p 2 amplified + p 1 factor + p 0 offset + m (Lnet/minecraft/class_6955$class_6354;)I method_41553 method_41553 + p 0 veinType +c net/minecraft/class_6954$class_5841 net/minecraft/world/gen/densityfunction/DensityFunctions$CaveScaler + m (D)D method_33835 scaleCaves + p 0 value + m (D)D method_33836 scaleTunnels + p 0 value +c net/minecraft/class_5620 net/minecraft/block/cauldron/CauldronBehavior + c Cauldron behaviors control what happens when a player interacts with\ncauldrons using a specific item.\n\n

To register new cauldron behaviors, you can add them to the corresponding\nmaps based on the cauldron type.\n

\n\n\n \n \n \n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n
Behavior maps by cauldron type
TypeBlockBehavior map
Empty{@link net.minecraft.block.Blocks#CAULDRON minecraft:cauldron}{@link #EMPTY_CAULDRON_BEHAVIOR}
Water{@link net.minecraft.block.Blocks#WATER_CAULDRON minecraft:water_cauldron}{@link #WATER_CAULDRON_BEHAVIOR}
Lava{@link net.minecraft.block.Blocks#LAVA_CAULDRON minecraft:lava_cauldron}{@link #LAVA_CAULDRON_BEHAVIOR}
Powder snow{@link net.minecraft.block.Blocks#POWDER_SNOW_CAULDRON minecraft:powder_snow_cauldron}{@link #POWDER_SNOW_CAULDRON_BEHAVIOR}
+ f Lnet/minecraft/class_5620$class_8821; field_27776 WATER_CAULDRON_BEHAVIOR + c The cauldron behaviors for water cauldrons.\n\n@see #createMap + f Lnet/minecraft/class_5620$class_8821; field_28011 POWDER_SNOW_CAULDRON_BEHAVIOR + c The cauldron behaviors for powder snow cauldrons.\n\n@see #createMap + f Lcom/mojang/serialization/Codec; field_46590 CODEC + f Ljava/util/Map; field_46589 BEHAVIOR_MAPS + f Lnet/minecraft/class_5620$class_8821; field_27777 LAVA_CAULDRON_BEHAVIOR + c The cauldron behaviors for lava cauldrons.\n\n@see #createMap + f Lnet/minecraft/class_5620$class_8821; field_27775 EMPTY_CAULDRON_BEHAVIOR + c The cauldron behaviors for empty cauldrons.\n\n@see #createMap + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_32220 method_32220 + p 3 player + p 4 hand + p 1 world + p 2 pos + p 5 stack + p 0 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_32222 method_32222 + p 1 world + p 2 pos + p 0 state + p 5 stack + p 3 player + p 4 hand + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_62708 tryFillWithPowderSnow + p 2 pos + p 1 world + p 0 state + p 5 stack + p 4 hand + p 3 player + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_62706 tryFillWithWater + p 0 state + p 4 hand + p 3 player + p 2 pos + p 1 world + p 5 stack + m (Lnet/minecraft/class_2680;)Z method_32213 method_32213 + p 0 statex + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_32218 method_32218 + p 2 pos + p 3 player + p 0 state + p 1 world + p 4 hand + p 5 stack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;Lnet/minecraft/class_2680;Lnet/minecraft/class_3414;)Lnet/minecraft/class_1269; method_32207 fillCauldron + c Fills a cauldron from a bucket stack.\n\n

The filled bucket stack will be replaced by an empty bucket in the player's\ninventory.\n\n@return a {@linkplain ActionResult#isAccepted successful} action result + p 1 pos + c the cauldron's position + p 0 world + c the world where the cauldron is located + p 6 soundEvent + c the sound produced by filling + p 3 hand + c the hand interacting with the cauldron + p 2 player + c the interacting player + p 5 state + c the filled cauldron state + p 4 stack + c the filled bucket stack in the player's hand + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_62711 cleanArmor + p 2 pos + p 1 world + p 0 state + p 5 stack + p 4 hand + p 3 player + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_32698 method_32698 + p 4 hand + p 5 stack + p 2 pos + p 3 player + p 0 state + p 1 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Ljava/util/function/Predicate;Lnet/minecraft/class_3414;)Lnet/minecraft/class_1269; method_32210 emptyCauldron + c Empties a cauldron if it's full.\n\n@return a {@linkplain ActionResult#isAccepted successful} action result if emptied, {@link ActionResult#PASS_TO_DEFAULT_BLOCK_ACTION} otherwise + p 8 soundEvent + c the sound produced by emptying + p 7 fullPredicate + c a predicate used to check if the cauldron can be emptied into the output stack + p 6 output + c the item stack that replaces the interaction stack when the cauldron is emptied + p 5 stack + c the stack in the player's hand + p 4 hand + c the hand interacting with the cauldron + p 3 player + c the interacting player + p 2 pos + c the cauldron's position + p 1 world + c the world where the cauldron is located + p 0 state + c the cauldron block state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_32221 method_32221 + p 2 pos + p 3 player + p 0 state + p 1 world + p 4 hand + p 5 stack + m ()V method_32212 registerBehavior + c Registers the vanilla cauldron behaviors. + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_62709 cleanShulkerBox + p 1 world + p 0 state + p 5 stack + p 4 hand + p 3 player + p 2 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_32223 method_32223 + p 0 state + p 1 world + p 4 hand + p 5 stack + p 2 pos + p 3 player + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_62707 tryFillWithLava + p 3 player + p 2 pos + p 1 world + p 0 state + p 5 stack + p 4 hand + m (Lnet/minecraft/class_2680;)Z method_32208 method_32208 + p 0 statex + m (Lnet/minecraft/class_2680;)Z method_32696 method_32696 + p 0 statex + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_62705 isUnderwater + p 0 world + p 1 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_32219 method_32219 + p 1 world + p 2 pos + p 0 state + p 5 stack + p 3 player + p 4 hand + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_62710 cleanBanner + p 3 player + p 2 pos + p 1 world + p 0 state + p 5 stack + p 4 hand + m (Ljava/lang/String;)Lnet/minecraft/class_5620$class_8821; method_32206 createMap + c Creates a mutable map from {@linkplain Item items} to their\ncorresponding cauldron behaviors.\n\n

The default return value in the map is a cauldron behavior\nthat returns {@link ActionResult#PASS_TO_DEFAULT_BLOCK_ACTION} for all items.\n\n@return the created map + p 0 name + m (Ljava/util/Map;)V method_34850 registerBucketBehavior + c Registers the behavior for filled buckets in the specified behavior map. + p 0 behavior + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; interact interact + c Called when a player interacts with a cauldron.\n\n@return a {@linkplain ActionResult#isAccepted successful} action result if this behavior succeeds,\n{@link ActionResult#PASS_TO_DEFAULT_BLOCK_ACTION} otherwise + p 1 state + c the current cauldron block state + p 4 player + c the interacting player + p 5 hand + c the hand interacting with the cauldron + p 2 world + c the world where the cauldron is located + p 3 pos + c the cauldron's position + p 6 stack + c the stack in the player's hand +c net/minecraft/class_5620$class_8821 net/minecraft/block/cauldron/CauldronBehavior$CauldronBehaviorMap + f Ljava/util/Map; comp_1982 map + f Ljava/lang/String; comp_1981 name + m ()Ljava/util/Map; comp_1982 map + m ()Ljava/lang/String; comp_1981 name + m (Ljava/lang/String;Ljava/util/Map;)V + p 1 name + p 2 map +c net/minecraft/class_5619 net/minecraft/client/render/entity/EntityRendererFactories + f Lorg/slf4j/Logger; field_27767 LOGGER + f Ljava/util/Map; field_27768 RENDERER_FACTORIES + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_5617;)V method_32173 register + p 0 type + p 1 factory + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32190 method_32190 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Ljava/util/Map; method_32177 reloadPlayerRenderers + p 0 ctx + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_33430 method_33430 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64538 method_64538 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64528 method_64528 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64536 method_64536 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64526 method_64526 + p 0 context + m ()Z method_32172 isMissingRendererFactories + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_42605 method_42605 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64535 method_64535 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32188 method_32188 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32178 method_32178 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64533 method_64533 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64531 method_64531 + p 0 context + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_1299;Lnet/minecraft/class_5617;)V method_32174 method_32174 + p 2 entityType + p 3 factory + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32182 method_32182 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32194 method_32194 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32180 method_32180 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_33429 method_33429 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32192 method_32192 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32186 method_32186 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32184 method_32184 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32196 method_32196 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64919 method_64919 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Ljava/util/Map; method_32176 reloadEntityRenderers + p 0 ctx + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64529 method_64529 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64527 method_64527 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64539 method_64539 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64525 method_64525 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64537 method_64537 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32179 method_32179 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64534 method_64534 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_42604 method_42604 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64524 method_64524 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64532 method_64532 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32189 method_32189 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64920 method_64920 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_64530 method_64530 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32193 method_32193 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32183 method_32183 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32191 method_32191 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32181 method_32181 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32187 method_32187 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32195 method_32195 + p 0 context + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; method_32185 method_32185 + p 0 context +c net/minecraft/class_5616 net/minecraft/client/render/block/entity/BlockEntityRendererFactories + f Ljava/util/Map; field_27752 FACTORIES + m (Lnet/minecraft/class_2591;Lnet/minecraft/class_5614;)V method_32144 register + p 1 factory + p 0 type + m (Lnet/minecraft/class_5614$class_5615;)Lnet/minecraft/class_827; method_74352 method_74352 + p 0 context + m (Lnet/minecraft/class_5614$class_5615;)Lnet/minecraft/class_827; method_74351 method_74351 + p 0 context + m (Lnet/minecraft/class_5614$class_5615;)Ljava/util/Map; method_32146 reload + p 0 args + m (Lnet/minecraft/class_5614$class_5615;)Lnet/minecraft/class_827; method_74355 method_74355 + p 0 context + m (Lnet/minecraft/class_5614$class_5615;)Lnet/minecraft/class_827; method_74354 method_74354 + p 0 context + m (Lnet/minecraft/class_5614$class_5615;)Lnet/minecraft/class_827; method_74353 method_74353 + p 0 context + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_5614$class_5615;Lnet/minecraft/class_2591;Lnet/minecraft/class_5614;)V method_32145 method_32145 + p 3 factory + p 2 type +c net/minecraft/class_5617 net/minecraft/client/render/entity/EntityRendererFactory + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_897; create create + p 1 ctx +c net/minecraft/class_5617$class_5618 net/minecraft/client/render/entity/EntityRendererFactory$Context + f Lnet/minecraft/class_898; field_27762 renderDispatcher + f Lnet/minecraft/class_330; field_53190 mapRenderer + f Lnet/minecraft/class_11786; field_62255 playerSkinCache + f Lnet/minecraft/class_10197; field_54175 equipmentRenderer + f Lnet/minecraft/class_10201; field_54174 equipmentModelLoader + f Lnet/minecraft/class_10442; field_55291 itemModelManager + f Lnet/minecraft/class_5599; field_27765 entityModels + f Lnet/minecraft/class_776; field_38888 blockRenderManager + f Lnet/minecraft/class_3300; field_27764 resourceManager + f Lnet/minecraft/class_327; field_27766 textRenderer + f Lnet/minecraft/class_11697; field_61799 spriteHolder + m ()Lnet/minecraft/class_3300; method_32169 getResourceManager + m (Lnet/minecraft/class_5601;)Lnet/minecraft/class_630; method_32167 getPart + p 1 layer + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1059; method_72980 getSpriteAtlasTexture + p 1 id + m (Lnet/minecraft/class_898;Lnet/minecraft/class_10442;Lnet/minecraft/class_330;Lnet/minecraft/class_776;Lnet/minecraft/class_3300;Lnet/minecraft/class_5599;Lnet/minecraft/class_10201;Lnet/minecraft/class_11697;Lnet/minecraft/class_327;Lnet/minecraft/class_11786;)V + p 3 mapRenderer + p 2 itemRenderer + p 5 resourceManager + p 4 blockRenderManager + p 7 equipmentModelLoader + p 6 entityModels + p 9 textRenderer + p 8 atlasManager + p 10 playerSkinCache + p 1 renderDispatcher + m ()Lnet/minecraft/class_11701; method_72981 getSpriteHolder + m ()Lnet/minecraft/class_10442; method_65566 getItemModelManager + m ()Lnet/minecraft/class_10201; method_64071 getEquipmentModelLoader + m ()Lnet/minecraft/class_330; method_62427 getMapRenderer + m ()Lnet/minecraft/class_10197; method_64072 getEquipmentRenderer + m ()Lnet/minecraft/class_11786; method_73540 getPlayerSkinCache + m ()Lnet/minecraft/class_776; method_43337 getBlockRenderManager + m ()Lnet/minecraft/class_327; method_32171 getTextRenderer + m ()Lnet/minecraft/class_5599; method_32170 getEntityModels + m ()Lnet/minecraft/class_898; method_32166 getRenderDispatcher +c net/minecraft/class_5634 net/minecraft/item/PowderSnowBucketItem + f Lnet/minecraft/class_3414; field_27877 placeSound + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_3414;Lnet/minecraft/class_1792$class_1793;)V + p 3 settings + p 2 placeSound + p 1 block +c net/minecraft/class_5633 net/minecraft/item/FluidModificationItem + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_3965;)Z method_7731 placeFluid + p 3 pos + p 2 world + p 1 user + p 4 hitResult + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_2338;)V method_7728 onEmptied + p 2 world + p 1 user + p 4 pos + p 3 stack +c net/minecraft/class_5636 net/minecraft/block/enums/CameraSubmersionType + c This class contains the various "fluids" and is used for camera rendering.\n\n@see net.minecraft.client.render.Camera#getSubmersionType() + f Lnet/minecraft/class_5636; field_27888 NONE + f Lnet/minecraft/class_5636; field_27885 LAVA + f Lnet/minecraft/class_5636; field_27886 WATER + f Lnet/minecraft/class_5636; field_27887 POWDER_SNOW + f Lnet/minecraft/class_5636; field_60563 ATMOSPHERIC +c net/minecraft/class_4304 net/minecraft/client/render/debug/RaidCenterDebugRenderer + f I field_32914 RANGE + f F field_32915 DRAWN_STRING_SIZE + f Lnet/minecraft/class_310; field_19326 client + m (Ljava/lang/String;Lnet/minecraft/class_2338;I)V method_23123 drawString + p 2 color + p 0 text + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1923;Ljava/util/List;)V method_75448 method_75448 + p 1 chunkPos + p 2 positions + m (Lnet/minecraft/class_2338;)V method_23122 drawRaidCenter + p 0 pos + m ()Lnet/minecraft/class_4184; method_23125 getCamera + m (Lnet/minecraft/class_310;)V + p 1 client +c net/minecraft/class_5635 net/minecraft/block/PowderSnowBlock + f D field_36190 SMALL_FALL_SOUND_MAX_DISTANCE + f Lcom/mojang/serialization/MapCodec; field_46415 CODEC + f F field_31217 HORIZONTAL_MOVEMENT_MULTIPLIER + f F field_31218 VERTICAL_MOVEMENT_MULTIPLIER + f Lnet/minecraft/class_265; field_31220 FALLING_SHAPE + m (Lnet/minecraft/class_1297;)Z method_32355 canWalkOnPowderSnow + p 0 entity +c net/minecraft/class_5630 net/minecraft/inventory/StackReference + c Represents a reference to a stack that supports getting and setting.\nOften for command access. Usually obtained from entities.\n\n

Screen handlers also use stack references to pass a mutable cursor\nstack to some methods.\n\n@see net.minecraft.entity.Entity#getStackReference(int) + m (Ljava/util/function/Supplier;Ljava/util/function/Consumer;)Lnet/minecraft/class_5630; method_59666 of + p 0 getter + p 1 setter + m ()Lnet/minecraft/class_1799; method_32327 get + c Gets the current item stack. + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1304;Ljava/util/function/Predicate;)Lnet/minecraft/class_5630; method_32331 of + c Creates a stack reference backed by an equipment slot of a living entity and\nguarded by a condition for setting stacks into the inventory. + p 0 entity + p 2 filter + c the condition to guard stack setting + p 1 slot + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1304;)Lnet/minecraft/class_5630; method_32330 of + c Creates a stack reference backed by an equipment slot of a living entity with\nno filter, allowing direct manipulation of the equipment slot. + p 0 entity + p 1 slot + m (Ljava/util/List;I)Lnet/minecraft/class_5630; method_76092 of + c Creates a stack reference that points to a specific index of the passed list. + p 0 stacks + p 1 index + m (Lnet/minecraft/class_1799;)Z method_32332 set + c Sets the {@code stack}.\n\n@return {@code true} if the setting is successful, {@code false} if rejected + p 1 stack + c the item stack to set + m (Lnet/minecraft/class_1799;)Z method_32333 method_32333 + p 0 stack +c net/minecraft/class_4301 net/minecraft/datafixer/fix/ZombieVillagerXpRebuildFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_20492 method_20492 + p 0 zombieVillagerDynamic +c net/minecraft/class_5632 net/minecraft/item/tooltip/TooltipData +c net/minecraft/class_4300 net/minecraft/datafixer/fix/VillagerExperienceRebuildFix + f [I field_19285 LEVEL_TO_EXPERIENCE + f I field_29914 TRADES_PER_LEVEL + m (Lcom/mojang/datafixers/Typed;I)Lcom/mojang/datafixers/Typed; method_20487 fixLevel + p 0 villagerTyped + p 1 level + m (I)I method_20482 levelToExperience + p 0 level + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/lang/Integer; method_20485 method_20485 + p 1 recipesTyped + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/util/Optional; method_20489 method_20489 + p 1 offersTyped + m (Lcom/mojang/datafixers/Typed;I)Lcom/mojang/datafixers/Typed; method_20490 fixExperience + p 0 villagerTyped + p 1 level + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28266 method_28266 + p 1 villager + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28265 method_28265 + p 1 villager + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_20486 method_20486 + p 5 entityTyped + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28267 method_28267 + p 1 villagerDataDynamic + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_20484 method_20484 + p 3 villagerTyped +c net/minecraft/class_5631 net/minecraft/item/tooltip/BundleTooltipData + f Lnet/minecraft/class_9276; comp_2377 contents + m ()Lnet/minecraft/class_9276; comp_2377 contents + m (Lnet/minecraft/class_9276;)V + p 1 contents +c net/minecraft/class_5627 net/minecraft/nbt/visitor/NbtElementVisitor + c A visitor interface for NBT elements. + m (Lnet/minecraft/class_2491;)V method_32294 visitEnd + p 1 element + m (Lnet/minecraft/class_2501;)V method_32299 visitLongArray + p 1 element + m (Lnet/minecraft/class_2516;)V method_32301 visitShort + p 1 element + m (Lnet/minecraft/class_2503;)V method_32300 visitLong + p 1 element + m (Lnet/minecraft/class_2519;)V method_32302 visitString + p 1 element + m (Lnet/minecraft/class_2479;)V method_32290 visitByteArray + p 1 element + m (Lnet/minecraft/class_2489;)V method_32293 visitDouble + p 1 element + m (Lnet/minecraft/class_2487;)V method_32292 visitCompound + p 1 compound + m (Lnet/minecraft/class_2481;)V method_32291 visitByte + p 1 element + m (Lnet/minecraft/class_2499;)V method_32298 visitList + p 1 element + m (Lnet/minecraft/class_2497;)V method_32297 visitInt + p 1 element + m (Lnet/minecraft/class_2494;)V method_32295 visitFloat + p 1 element + m (Lnet/minecraft/class_2495;)V method_32296 visitIntArray + p 1 element +c net/minecraft/class_5626 net/minecraft/nbt/visitor/StringNbtWriter + c A simple converter to turn NBT into single-line SNBT. The output may be parsed back into binary NBT. + f Ljava/lang/StringBuilder; field_27830 result + f Ljava/util/regex/Pattern; field_58027 QUOTATION_UNNECESSARY_PATTERN + m ()Ljava/lang/String; method_68659 getString + m (Ljava/lang/String;)V method_68660 append + p 1 string +c net/minecraft/class_5629 net/minecraft/server/network/PlayerAssociatedNetworkHandler + m ()Lnet/minecraft/class_3222; method_32311 getPlayer + m (Lnet/minecraft/class_2596;)V method_14364 sendPacket + p 1 packet +c net/minecraft/class_6957 net/minecraft/data/tag/vanilla/VanillaBiomeTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 2 registriesFuture + p 1 output +c net/minecraft/class_5628 net/minecraft/nbt/visitor/NbtTextFormatter + c Formats an NBT element into a colored, multiline {@link Text} representation suitable for human-readable\ndisplays. + f I field_27841 depth + f Lnet/minecraft/class_2561; field_51925 ELLIPSIS + f Lnet/minecraft/class_2561; field_51927 SHORT_TYPE_SUFFIX + f Lnet/minecraft/class_2561; field_51929 LONG_TYPE_SUFFIX + f Lnet/minecraft/class_124; field_27835 NUMBER_COLOR + f Lnet/minecraft/class_2561; field_51919 DOUBLE_TYPE_SUFFIX + f Lnet/minecraft/class_124; field_27833 NAME_COLOR + f Ljava/lang/String; field_33276 CURLY_OPEN_BRACKET + f Ljava/lang/String; field_27839 ENTRY_SEPARATOR + f Ljava/lang/String; field_33278 NEW_LINE + f Lorg/slf4j/Logger; field_27831 LOGGER + f Ljava/lang/String; field_33273 SQUARE_CLOSE_BRACKET + f I field_51499 indentationLevel + f Ljava/lang/String; field_33275 SPACE + f Ljava/lang/String; field_51924 ENTRY_SEPARATOR_WITH_SPACE + f Lnet/minecraft/class_124; field_27836 TYPE_SUFFIX_COLOR + f Ljava/lang/String; field_51922 COLON_WITH_SPACE + f Ljava/lang/String; field_27840 prefix + f Lnet/minecraft/class_2561; field_51920 ARRAY_BYTE_TYPE_SUFFIX + f Ljava/util/regex/Pattern; field_27837 SIMPLE_NAME + f Lnet/minecraft/class_2561; field_51926 BYTE_TYPE_SUFFIX + f Lnet/minecraft/class_2561; field_51928 INT_TYPE_SUFFIX + f Lnet/minecraft/class_2561; field_51918 FLOAT_TYPE_SUFFIX + f Lnet/minecraft/class_124; field_27834 STRING_COLOR + f Ljava/lang/String; field_33277 CURLY_CLOSE_BRACKET + f Lnet/minecraft/class_5250; field_27842 result + f Ljava/lang/String; field_33272 SQUARE_OPEN_BRACKET + f Ljava/lang/String; field_33274 SEMICOLON + f Ljava/lang/String; field_51923 ENTRY_SEPARATOR_WITH_NEW_LINE + m (Lnet/minecraft/class_2520;)Lnet/minecraft/class_2561; method_32305 apply + c {@return the textified NBT {@code element}} + p 1 element + m (Ljava/lang/String;)V + p 1 prefix + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_32304 escapeName + p 0 name + m (Lnet/minecraft/class_2520;Z)V method_60585 formatSubElement + p 2 indent + p 1 element + m (Lnet/minecraft/class_2499;)Z method_68663 shouldIndent + p 0 list +c net/minecraft/class_5601 net/minecraft/client/render/entity/model/EntityModelLayer + f Ljava/lang/String; comp_2996 name + f Lnet/minecraft/class_2960; comp_2995 id + m (Lnet/minecraft/class_2960;Ljava/lang/String;)V + p 2 name + p 1 id + m ()Ljava/lang/String; comp_2996 name + m ()Lnet/minecraft/class_2960; comp_2995 id + m (Ljava/lang/Object;)Z equals equals + p 1 o +c net/minecraft/class_5600 net/minecraft/client/render/entity/model/EntityModels + f Lnet/minecraft/class_5605; field_27545 HAT_DILATION + f Lnet/minecraft/class_5605; field_27543 FISH_PATTERN_DILATION + f Lnet/minecraft/class_5605; field_27544 ARMOR_DILATION + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5607; method_72889 method_72889 + p 0 data + m (Lnet/minecraft/class_5607;)Lnet/minecraft/class_5607; method_72888 method_72888 + p 0 modelData + m (Lcom/google/common/collect/ImmutableMap;Lnet/minecraft/class_5601;)Z method_32075 method_32075 + p 1 layer + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_5607;Lnet/minecraft/class_5607;Lnet/minecraft/class_4719;)V method_32074 method_32074 + p 3 woodType + m (Lnet/minecraft/class_9953;Lnet/minecraft/class_5607;)Lnet/minecraft/class_5607; method_72890 method_72890 + p 1 modelData + m (Lnet/minecraft/class_9953;Lnet/minecraft/class_5607;)Lnet/minecraft/class_5607; method_74248 method_74248 + p 1 modelData + m ()Ljava/util/Map; method_32073 getModels + m (Lnet/minecraft/class_9953;Lnet/minecraft/class_5607;)Lnet/minecraft/class_5607; method_74247 method_74247 + p 1 modelData + m (Lnet/minecraft/class_5607;)Lnet/minecraft/class_5607; method_72893 method_72893 + p 0 modelData + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5607; method_72892 method_72892 + p 0 data + m (Lnet/minecraft/class_5607;)Lnet/minecraft/class_5607; method_72891 method_72891 + p 0 modelData + m (Lnet/minecraft/class_5607;)Lnet/minecraft/class_5607; method_72885 method_72885 + p 0 modelData + m (Lnet/minecraft/class_9953;Lnet/minecraft/class_5607;)Lnet/minecraft/class_5607; method_74246 method_74246 + p 1 modelData + m (Lnet/minecraft/class_5609;)Lnet/minecraft/class_5607; method_72886 method_72886 + p 0 data +c net/minecraft/class_5603 net/minecraft/client/model/ModelTransform + f F comp_3002 roll + f F comp_3001 yaw + f F comp_3000 pitch + f Lnet/minecraft/class_5603; field_27701 NONE + f F comp_3005 zScale + f F comp_3003 xScale + f F comp_3004 yScale + f F comp_2997 x + f F comp_2999 z + f F comp_2998 y + m (FFFFFF)Lnet/minecraft/class_5603; method_32091 of + p 0 originX + p 1 originY + p 2 originZ + p 3 pitch + p 4 yaw + p 5 roll + m (FFFFFFFFF)V + p 1 pivotX + p 2 pivotY + p 3 pivotZ + p 4 pitch + p 5 yaw + p 6 roll + p 7 xScale + p 8 yScale + p 9 zScale + m (F)Lnet/minecraft/class_5603; method_62134 scaled + p 1 scale + m (F)Lnet/minecraft/class_5603; method_62133 withScale + p 1 scale + m (FFF)Lnet/minecraft/class_5603; method_32090 origin + p 2 z + p 1 y + p 0 x + m (FFF)Lnet/minecraft/class_5603; method_32092 rotation + p 2 roll + p 1 yaw + p 0 pitch + m ()F comp_3002 roll + m ()F comp_3001 yaw + m ()F comp_3000 pitch + m (FFF)Lnet/minecraft/class_5603; method_62135 moveOrigin + p 1 x + p 3 z + p 2 y + m (FFF)Lnet/minecraft/class_5603; method_62136 scaled + p 3 zScale + p 2 yScale + p 1 xScale + m ()F comp_2999 z + m ()F comp_2998 y + m ()F comp_2997 x + m ()F comp_3003 xScale + m ()F comp_3004 yScale + m ()F comp_3005 zScale +c net/minecraft/class_5602 net/minecraft/client/render/entity/model/EntityModelLayers + f Lnet/minecraft/class_5601; field_56090 ZOMBIE_HORSE_BABY_SADDLE + f Lnet/minecraft/class_11677; field_61709 STRAY_EQUIPMENT + f Lnet/minecraft/class_11677; field_61717 ZOMBIE_VILLAGER_BABY_EQUIPMENT + f Lnet/minecraft/class_5601; field_56082 DONKEY_BABY_SADDLE + f Lnet/minecraft/class_5601; field_61704 WARDEN_BIOLUMINESCENT + f Lnet/minecraft/class_5601; field_56086 HORSE_BABY_SADDLE + f Lnet/minecraft/class_5601; field_52974 DROWNED_BABY_OUTER + f Lnet/minecraft/class_5601; field_27670 TROPICAL_FISH_LARGE_PATTERN + f Lnet/minecraft/class_5601; field_52153 BREEZE_WIND + f Lnet/minecraft/class_5601; field_27630 WITHER_ARMOR + f Lnet/minecraft/class_5601; field_57103 SHEEP_BABY_WOOL_UNDERCOAT + f Lnet/minecraft/class_11677; field_61713 ZOMBIE_BABY_EQUIPMENT + f Lnet/minecraft/class_11677; field_61701 PLAYER_EQUIPMENT + f Lnet/minecraft/class_11677; field_61696 GIANT_EQUIPMENT + f Lnet/minecraft/class_5601; field_55122 STANDING_BANNER_FLAG + f Lnet/minecraft/class_11677; field_61684 BOGGED_EQUIPMENT + f Lnet/minecraft/class_5601; field_27557 DROWNED_OUTER + f Lnet/minecraft/class_11677; field_61708 SKELETON_EQUIPMENT + f Lnet/minecraft/class_5601; field_52979 PLAYER_EARS + f Lnet/minecraft/class_11677; field_64214 PARCHED_EQUIPMENT + f Lnet/minecraft/class_5601; field_56083 MULE_SADDLE + f Lnet/minecraft/class_5601; field_56087 SKELETON_HORSE_SADDLE + f Lnet/minecraft/class_5601; field_61707 WARDEN_HEART + f Lnet/minecraft/class_5601; field_56079 CAMEL_SADDLE + f Lnet/minecraft/class_11677; field_61700 PIGLIN_EQUIPMENT + f Lnet/minecraft/class_11677; field_61699 PIGLIN_BRUTE_EQUIPMENT + f Lnet/minecraft/class_5601; field_27665 STRIDER_SADDLE + f Lnet/minecraft/class_5601; field_27697 CONDUIT_WIND + f Lnet/minecraft/class_11677; field_61712 WITHER_SKELETON_EQUIPMENT + f Ljava/util/Set; field_27650 LAYERS + f Lnet/minecraft/class_11677; field_61695 HUSK_EQUIPMENT + f Lnet/minecraft/class_11677; field_61687 DROWNED_EQUIPMENT + f Lnet/minecraft/class_11677; field_61720 SMALL_ARMOR_STAND_EQUIPMENT + f Lnet/minecraft/class_5601; field_52956 CAT_BABY_COLLAR + f Lnet/minecraft/class_11677; field_61719 ARMOR_STAND_EQUIPMENT + f Lnet/minecraft/class_5601; field_56080 CAMEL_BABY_SADDLE + f Lnet/minecraft/class_5601; field_61685 BREEZE_EYES + f Lnet/minecraft/class_5601; field_61693 CREAKING_EYES + f Lnet/minecraft/class_5601; field_63557 NAUTILUS_SADDLE + f Lnet/minecraft/class_5601; field_56084 MULE_BABY_SADDLE + f Lnet/minecraft/class_5601; field_61689 COPPER_GOLEM_EYES + f Lnet/minecraft/class_5601; field_56088 SKELETON_HORSE_BABY_SADDLE + f Lnet/minecraft/class_5601; field_52984 LLAMA_BABY_DECOR + f Lnet/minecraft/class_5601; field_52996 SHEEP_BABY_WOOL + f Lnet/minecraft/class_5601; field_49162 BOGGED_OUTER + f Lnet/minecraft/class_5601; field_61706 WARDEN_TENDRILS + f Lnet/minecraft/class_11677; field_61694 HUSK_BABY_EQUIPMENT + f Lnet/minecraft/class_5601; field_27672 TROPICAL_FISH_SMALL_PATTERN + f Lnet/minecraft/class_5601; field_27696 CONDUIT_SHELL + f Lnet/minecraft/class_11677; field_61711 ZOMBIFIED_PIGLIN_EQUIPMENT + f Lnet/minecraft/class_5601; field_64215 PARCHED_OUTER + f Lnet/minecraft/class_5601; field_27575 PIG_SADDLE + f Lnet/minecraft/class_5601; field_55120 STRIDER_BABY_SADDLE + f Lnet/minecraft/class_11677; field_61698 PIGLIN_BABY_EQUIPMENT + f Lnet/minecraft/class_5601; field_55124 WALL_BANNER_FLAG + f Lnet/minecraft/class_11677; field_61686 DROWNED_BABY_EQUIPMENT + f Lnet/minecraft/class_5601; field_52989 PIG_BABY_SADDLE + f Lnet/minecraft/class_5601; field_56081 DONKEY_SADDLE + f Lnet/minecraft/class_11677; field_61718 ZOMBIE_VILLAGER_EQUIPMENT + f Lnet/minecraft/class_5601; field_56085 HORSE_SADDLE + f Lnet/minecraft/class_11677; field_61714 ZOMBIE_EQUIPMENT + f Lnet/minecraft/class_5601; field_56089 ZOMBIE_HORSE_SADDLE + f Lnet/minecraft/class_5601; field_61705 WARDEN_PULSATING_SPOTS + f Lnet/minecraft/class_5601; field_27594 SHEEP_WOOL + f Lnet/minecraft/class_5601; field_52980 PLAYER_CAPE + f Lnet/minecraft/class_5601; field_27663 STRAY_OUTER + f Lnet/minecraft/class_5601; field_27695 CONDUIT_EYE + f Ljava/lang/String; field_32582 MAIN + f Lnet/minecraft/class_5601; field_57102 SHEEP_WOOL_UNDERCOAT + f Lnet/minecraft/class_11677; field_61710 ZOMBIFIED_PIGLIN_BABY_EQUIPMENT + f Lnet/minecraft/class_5601; field_27687 CAT_COLLAR + f Lnet/minecraft/class_5601; field_27700 CREEPER_ARMOR + f Lnet/minecraft/class_5601; field_27611 LLAMA_DECOR + f Lnet/minecraft/class_5601; field_27655 SLIME_OUTER + f Lnet/minecraft/class_11677; field_61697 PLAYER_SLIM + f Lnet/minecraft/class_5601; field_59956 HAPPY_GHAST + f Lnet/minecraft/class_5601; field_59958 HAPPY_GHAST_HARNESS + f Lnet/minecraft/class_5601; field_59957 HAPPY_GHAST_BABY + f Lnet/minecraft/class_5601; field_27560 ENDERMAN + f Lnet/minecraft/class_5601; field_27693 COMMAND_BLOCK_MINECART + f Lnet/minecraft/class_5601; field_27692 COD + f Lnet/minecraft/class_5601; field_27691 CHICKEN + f Lnet/minecraft/class_5601; field_27690 CHEST_MINECART + f Lnet/minecraft/class_5601; field_27564 EVOKER + f Lnet/minecraft/class_5601; field_27563 END_CRYSTAL + f Lnet/minecraft/class_5601; field_27562 ENDER_DRAGON + f Lnet/minecraft/class_5601; field_27694 CONDUIT + f Lnet/minecraft/class_5601; field_27561 ENDERMITE + f Lnet/minecraft/class_5601; field_27568 GHAST + f Lnet/minecraft/class_5601; field_27567 FURNACE_MINECART + f Lnet/minecraft/class_5601; field_27566 FOX + f Lnet/minecraft/class_5601; field_27699 CREEPER + f Lnet/minecraft/class_5601; field_27698 COW + f Lnet/minecraft/class_5601; field_27565 EVOKER_FANGS + f Lnet/minecraft/class_5601; field_27569 GIANT + f Lnet/minecraft/class_5601; field_63561 ZOMBIE_NAUTILUS + f Lnet/minecraft/class_5601; field_56497 WARM_COW_BABY + f Lnet/minecraft/class_5601; field_56494 COLD_COW + f Lnet/minecraft/class_5601; field_56495 COLD_COW_BABY + f Lnet/minecraft/class_5601; field_56496 WARM_COW + f Lnet/minecraft/class_5601; field_63560 UNDEAD_HORSE_BABY_ARMOR + f Lnet/minecraft/class_5601; field_27681 BED_HEAD + f Lnet/minecraft/class_5601; field_27680 BED_FOOT + f Lnet/minecraft/class_5601; field_27552 DOUBLE_CHEST_RIGHT + f Lnet/minecraft/class_5601; field_27685 BOOK + f Lnet/minecraft/class_5601; field_27551 DOUBLE_CHEST_LEFT + f Lnet/minecraft/class_5601; field_27684 BLAZE + f Lnet/minecraft/class_5601; field_27683 BELL + f Lnet/minecraft/class_5601; field_27550 DONKEY + f Lnet/minecraft/class_5601; field_27682 BEE + f Lnet/minecraft/class_5601; field_27689 CHEST + f Lnet/minecraft/class_5601; field_27688 CAVE_SPIDER + f Lnet/minecraft/class_5601; field_27554 DROWNED + f Lnet/minecraft/class_5601; field_27553 DRAGON_SKULL + f Lnet/minecraft/class_5601; field_27686 CAT + f Lnet/minecraft/class_5601; field_59959 HAPPY_GHAST_BABY_HARNESS + f Lnet/minecraft/class_5601; field_27559 ELYTRA + f Lnet/minecraft/class_5601; field_27558 ELDER_GUARDIAN + f Lnet/minecraft/class_5601; field_63555 NAUTILUS + f Lnet/minecraft/class_5601; field_63556 NAUTILUS_BABY + f Lnet/minecraft/class_5601; field_27592 SALMON + f Lnet/minecraft/class_5601; field_27591 RAVAGER + f Lnet/minecraft/class_5601; field_27590 RABBIT + f Lnet/minecraft/class_5601; field_53835 MOOSHROOM_BABY + f Lnet/minecraft/class_5601; field_27584 SPIN_ATTACK + f Lnet/minecraft/class_5601; field_27581 PLAYER_SLIM + f Lnet/minecraft/class_5601; field_27588 PUFFERFISH_MEDIUM + f Lnet/minecraft/class_5601; field_27587 PUFFERFISH_BIG + f Lnet/minecraft/class_5601; field_27586 ARMOR_STAND + f Lnet/minecraft/class_5601; field_27585 POLAR_BEAR + f Lnet/minecraft/class_5601; field_63558 NAUTILUS_ARMOR + f Lnet/minecraft/class_5601; field_63559 UNDEAD_HORSE_ARMOR + f Lnet/minecraft/class_5601; field_27589 PUFFERFISH_SMALL + f Lnet/minecraft/class_5601; field_27572 GUARDIAN + f Lnet/minecraft/class_5601; field_27576 PILLAGER + f Lnet/minecraft/class_5601; field_27573 HOGLIN + f Lnet/minecraft/class_5601; field_27578 PLAYER_HEAD + f Lnet/minecraft/class_5601; field_27577 PLAYER + f Lnet/minecraft/class_5601; field_54848 PALE_OAK_CHEST_BOAT + f Lnet/minecraft/class_5601; field_54847 PALE_OAK_BOAT + f Lnet/minecraft/class_5601; field_54846 CREAKING + f Lnet/minecraft/class_5601; field_27596 SHULKER + f Lnet/minecraft/class_5601; field_27595 SHIELD + f Lnet/minecraft/class_5601; field_27593 SHEEP + f Lnet/minecraft/class_5601; field_27599 SKELETON + f Lnet/minecraft/class_5601; field_27598 SILVERFISH + f Lnet/minecraft/class_5601; field_27597 SHULKER_BULLET + f Lnet/minecraft/class_5601; field_49159 BOGGED + f Lnet/minecraft/class_5601; field_47877 WOLF_ARMOR + f Lnet/minecraft/class_5601; field_47876 ARMADILLO + f Lnet/minecraft/class_5601; field_52969 DOLPHIN_BABY + f Lnet/minecraft/class_5601; field_27613 MAGMA_CUBE + f Lnet/minecraft/class_5601; field_27612 LLAMA_SPIT + f Lnet/minecraft/class_5601; field_27610 LLAMA + f Lnet/minecraft/class_5601; field_27618 PANDA + f Lnet/minecraft/class_5601; field_27617 OCELOT + f Lnet/minecraft/class_5601; field_27616 MULE + f Lnet/minecraft/class_5601; field_27615 MOOSHROOM + f Lnet/minecraft/class_5601; field_27614 MINECART + f Lnet/minecraft/class_5601; field_52961 GLOW_SQUID_BABY + f Lnet/minecraft/class_5601; field_52962 GOAT_BABY + f Lnet/minecraft/class_5601; field_27619 PARROT + f Lnet/minecraft/class_5601; field_52960 FOX_BABY + f Lnet/minecraft/class_5601; field_52965 HORSE_ARMOR_BABY + f Lnet/minecraft/class_5601; field_52966 HUSK_BABY + f Lnet/minecraft/class_5601; field_52963 HOGLIN_BABY + f Lnet/minecraft/class_5601; field_52964 HORSE_BABY + f Lnet/minecraft/class_5601; field_27601 HOPPER_MINECART + f Lnet/minecraft/class_5601; field_27600 SKELETON_HORSE + f Lnet/minecraft/class_5601; field_27604 HUSK + f Lnet/minecraft/class_5601; field_27603 HORSE_ARMOR + f Lnet/minecraft/class_5601; field_27602 HORSE + f Lnet/minecraft/class_5601; field_27609 LEASH_KNOT + f Lnet/minecraft/class_5601; field_27608 IRON_GOLEM + f Lnet/minecraft/class_5601; field_52971 DROWNED_BABY + f Lnet/minecraft/class_5601; field_52970 DONKEY_BABY + f Lnet/minecraft/class_5601; field_27607 ILLUSIONER + f Lnet/minecraft/class_5601; field_52975 ELYTRA_BABY + f Lnet/minecraft/class_5601; field_52976 PIGLIN_BABY + f Lnet/minecraft/class_5601; field_27638 ZOMBIE + f Lnet/minecraft/class_5601; field_27637 ZOGLIN + f Lnet/minecraft/class_5601; field_27636 WOLF + f Lnet/minecraft/class_5601; field_27635 WITHER_SKULL + f Lnet/minecraft/class_5601; field_27634 WITHER_SKELETON_SKULL + f Lnet/minecraft/class_5601; field_32581 GOAT + f Lnet/minecraft/class_5601; field_27631 WITHER_SKELETON + f Lnet/minecraft/class_5601; field_52957 CAMEL_BABY + f Lnet/minecraft/class_5601; field_52958 CHICKEN_BABY + f Lnet/minecraft/class_5601; field_52955 CAT_BABY + f Lnet/minecraft/class_5601; field_27623 PIGLIN_BRUTE + f Lnet/minecraft/class_5601; field_27622 PIGLIN + f Lnet/minecraft/class_5601; field_27629 WITHER + f Lnet/minecraft/class_5601; field_52959 COW_BABY + f Lnet/minecraft/class_5601; field_27628 WITCH + f Lnet/minecraft/class_5601; field_27627 WANDERING_TRADER + f Lnet/minecraft/class_5601; field_27621 PIG + f Lnet/minecraft/class_5601; field_27620 PHANTOM + f Lnet/minecraft/class_5601; field_27659 SQUID + f Lnet/minecraft/class_5601; field_27658 SPIDER + f Lnet/minecraft/class_5601; field_27653 SKELETON_SKULL + f Lnet/minecraft/class_5601; field_27657 SPAWNER_MINECART + f Lnet/minecraft/class_5601; field_27656 SNOW_GOLEM + f Lnet/minecraft/class_5601; field_27654 SLIME + f Lnet/minecraft/class_5601; field_27647 ZOMBIFIED_PIGLIN + f Lnet/minecraft/class_5601; field_55123 WALL_BANNER + f Lnet/minecraft/class_5601; field_38455 ALLAY + f Lnet/minecraft/class_5601; field_60058 HAPPY_GHAST_BABY_ROPES + f Lnet/minecraft/class_5601; field_60057 HAPPY_GHAST_ROPES + f Lnet/minecraft/class_5601; field_55121 VILLAGER_BABY + f Lnet/minecraft/class_5601; field_56580 COLD_CHICKEN + f Lnet/minecraft/class_5601; field_56581 COLD_CHICKEN_BABY + f Lnet/minecraft/class_5601; field_38328 WARDEN + f Lnet/minecraft/class_5601; field_27641 ZOMBIE_HORSE + f Lnet/minecraft/class_5601; field_27640 ZOMBIE_HEAD + f Lnet/minecraft/class_5601; field_55119 STRIDER_BABY + f Lnet/minecraft/class_5601; field_27644 ZOMBIE_VILLAGER + f Lnet/minecraft/class_5601; field_27549 DOLPHIN + f Lnet/minecraft/class_5601; field_52985 MULE_BABY + f Lnet/minecraft/class_5601; field_52986 OCELOT_BABY + f Lnet/minecraft/class_5601; field_52983 LLAMA_BABY + f Lnet/minecraft/class_5601; field_52987 PANDA_BABY + f Lnet/minecraft/class_5601; field_52988 PIG_BABY + f Lnet/minecraft/class_5601; field_27673 TURTLE + f Lnet/minecraft/class_5601; field_52982 RABBIT_BABY + f Lnet/minecraft/class_5601; field_52981 POLAR_BEAR_BABY + f Lnet/minecraft/class_5601; field_27671 TROPICAL_FISH_SMALL + f Lnet/minecraft/class_5601; field_27676 VINDICATOR + f Lnet/minecraft/class_5601; field_27675 VILLAGER + f Lnet/minecraft/class_5601; field_27674 VEX + f Lnet/minecraft/class_5601; field_27548 CREEPER_HEAD + f Lnet/minecraft/class_5601; field_27679 BAT + f Lnet/minecraft/class_5601; field_27678 STANDING_BANNER + f Lnet/minecraft/class_5601; field_52997 SHULKER_BOX + f Lnet/minecraft/class_5601; field_52998 SKELETON_HORSE_BABY + f Lnet/minecraft/class_5601; field_52995 SHEEP_BABY + f Lnet/minecraft/class_5601; field_52999 SNIFFER_BABY + f Lnet/minecraft/class_5601; field_52993 SALMON_SMALL + f Lnet/minecraft/class_5601; field_52992 TURTLE_BABY + f Lnet/minecraft/class_5601; field_52994 SALMON_LARGE + f Lnet/minecraft/class_5601; field_27660 STRAY + f Lnet/minecraft/class_5601; field_52990 ARMADILLO_BABY + f Lnet/minecraft/class_5601; field_52991 TRADER_LLAMA_BABY + f Lnet/minecraft/class_5601; field_27664 STRIDER + f Lnet/minecraft/class_5601; field_27669 TROPICAL_FISH_LARGE + f Lnet/minecraft/class_5601; field_27668 TRIDENT + f Lnet/minecraft/class_5601; field_27667 TRADER_LLAMA + f Lnet/minecraft/class_5601; field_27666 TNT_MINECART + f Lnet/minecraft/class_5601; field_41382 PIGLIN_HEAD + f Lnet/minecraft/class_5601; field_53020 BEE_STINGER + f Lnet/minecraft/class_5601; field_54484 ACACIA_BOAT + f Lnet/minecraft/class_5601; field_54483 CHERRY_CHEST_BOAT + f Lnet/minecraft/class_5601; field_54482 CHERRY_BOAT + f Lnet/minecraft/class_5601; field_54489 OAK_CHEST_BOAT + f Lnet/minecraft/class_5601; field_54488 OAK_BOAT + f Lnet/minecraft/class_5601; field_54487 ACACIA_CHEST_BOAT + f Lnet/minecraft/class_5601; field_54486 DARK_OAK_CHEST_BOAT + f Lnet/minecraft/class_5601; field_53021 BOAT + f Lnet/minecraft/class_5601; field_54485 DARK_OAK_BOAT + f Lnet/minecraft/class_5601; field_53017 ARROW + f Lnet/minecraft/class_5601; field_53014 ARMOR_STAND_SMALL + f Lnet/minecraft/class_5601; field_53019 BEE_BABY + f Lnet/minecraft/class_5601; field_53018 AXOLOTL_BABY + f Lnet/minecraft/class_5601; field_54496 BAMBOO_CHEST_BOAT + f Lnet/minecraft/class_5601; field_54495 SPRUCE_CHEST_BOAT + f Lnet/minecraft/class_5601; field_54494 SPRUCE_BOAT + f Lnet/minecraft/class_5601; field_54493 MANGROVE_CHEST_BOAT + f Lnet/minecraft/class_5601; field_54499 BIRCH_CHEST_BOAT + f Lnet/minecraft/class_5601; field_54498 BIRCH_BOAT + f Lnet/minecraft/class_5601; field_54497 BAMBOO_BOAT + f Lnet/minecraft/class_5601; field_61692 COPPER_GOLEM_STAR + f Lnet/minecraft/class_5601; field_61691 COPPER_GOLEM_SITTING + f Lnet/minecraft/class_5601; field_61690 COPPER_GOLEM_RUNNING + f Lnet/minecraft/class_5601; field_54492 MANGROVE_BOAT + f Lnet/minecraft/class_5601; field_54491 JUNGLE_CHEST_BOAT + f Lnet/minecraft/class_5601; field_54490 JUNGLE_BOAT + f Lnet/minecraft/class_5601; field_53000 SQUID_BABY + f Lnet/minecraft/class_5601; field_61688 COPPER_GOLEM + f Lnet/minecraft/class_5601; field_53011 ZOMBIE_VILLAGER_BABY + f Lnet/minecraft/class_5601; field_53005 WOLF_BABY_ARMOR + f Lnet/minecraft/class_5601; field_53004 WOLF_BABY + f Lnet/minecraft/class_5601; field_53001 ZOMBIFIED_PIGLIN_BABY + f Lnet/minecraft/class_5601; field_53008 ZOMBIE_BABY + f Lnet/minecraft/class_5601; field_53007 ZOMBIE_HORSE_BABY + f Lnet/minecraft/class_5601; field_53006 ZOGLIN_BABY + f Lnet/minecraft/class_5601; field_61703 VILLAGER_BABY_NO_HAT + f Lnet/minecraft/class_5601; field_61702 VILLAGER_NO_HAT + f Lnet/minecraft/class_5601; field_28456 GLOW_SQUID + f Lnet/minecraft/class_5601; field_40479 CAMEL + f Lnet/minecraft/class_5601; field_37936 TADPOLE + f Lnet/minecraft/class_5601; field_37935 FROG + f Lnet/minecraft/class_5601; field_64432 ZOMBIE_NAUTILUS_CORAL + f Lnet/minecraft/class_5601; field_42883 DECORATED_POT_SIDES + f Lnet/minecraft/class_5601; field_42884 SNIFFER + f Lnet/minecraft/class_5601; field_42882 DECORATED_POT_BASE + f Lnet/minecraft/class_5601; field_47443 BREEZE + f Lnet/minecraft/class_5601; field_47442 WIND_CHARGE + f Lnet/minecraft/class_5601; field_55864 COLD_PIG + f Lnet/minecraft/class_5601; field_55865 COLD_PIG_BABY + f Lnet/minecraft/class_5601; field_61716 ZOMBIE_VILLAGER_BABY_NO_HAT + f Lnet/minecraft/class_5601; field_61715 ZOMBIE_VILLAGER_NO_HAT + f Lnet/minecraft/class_5601; field_64211 CAMEL_HUSK + f Lnet/minecraft/class_5601; field_28383 AXOLOTL + f Lnet/minecraft/class_5601; field_64212 CAMEL_HUSK_BABY + f Lnet/minecraft/class_5601; field_64213 PARCHED + m (Ljava/lang/String;)Lnet/minecraft/class_11677; method_72894 registerEquipment + p 0 id + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_5601; method_32080 register + p 1 layer + p 0 id + m (Lnet/minecraft/class_4719;)Lnet/minecraft/class_5601; method_62130 createStandingSign + p 0 type + m (Ljava/lang/String;)Lnet/minecraft/class_5601; method_32079 registerMain + p 0 id + m ()Ljava/util/stream/Stream; method_32076 getLayers + m (Lnet/minecraft/class_4719;)Lnet/minecraft/class_5601; method_62131 createWallSign + p 0 type + m (Lnet/minecraft/class_4719;Lnet/minecraft/class_7761$class_10381;)Lnet/minecraft/class_5601; method_45719 createHangingSign + p 1 attachmentType + p 0 type + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_5601; method_32082 create + p 1 layer + p 0 id +c net/minecraft/class_11505 net/minecraft/data/tag/vanilla/VanillaDialogTagProvider + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)V + p 2 registriesFuture + p 1 output +c net/minecraft/class_5611 net/minecraft/client/util/math/Vector2f + f F comp_5231 x + f F comp_5232 y + m ()F comp_5231 x + m (FF)V + p 1 x + p 2 y + m ()F comp_5232 y + m (FF)J method_76640 toLong + p 1 y + p 0 x + m (J)F method_76642 getY + p 0 y + m (J)F method_76641 getX + p 0 x +c net/minecraft/class_5614 net/minecraft/client/render/block/entity/BlockEntityRendererFactory + m (Lnet/minecraft/class_5614$class_5615;)Lnet/minecraft/class_827; create create + p 1 ctx +c net/minecraft/class_5614$class_5615 net/minecraft/client/render/block/entity/BlockEntityRendererFactory$Context + f Lnet/minecraft/class_10442; comp_4536 itemModelManager + f Lnet/minecraft/class_5599; comp_4539 loadedEntityModels + f Lnet/minecraft/class_918; comp_4537 itemRenderer + f Lnet/minecraft/class_824; comp_4534 renderDispatcher + f Lnet/minecraft/class_898; comp_4538 entityRenderDispatcher + f Lnet/minecraft/class_11701; comp_4541 spriteHolder + f Lnet/minecraft/class_327; comp_4540 textRenderer + f Lnet/minecraft/class_776; comp_4535 renderManager + f Lnet/minecraft/class_11786; comp_4655 playerSkinRenderCache + m (Lnet/minecraft/class_824;Lnet/minecraft/class_776;Lnet/minecraft/class_10442;Lnet/minecraft/class_918;Lnet/minecraft/class_898;Lnet/minecraft/class_5599;Lnet/minecraft/class_327;Lnet/minecraft/class_11701;Lnet/minecraft/class_11786;)V + p 1 renderDispatcher + p 3 itemModelManager + p 2 renderManager + p 5 entityRenderDispatcher + p 4 itemRenderer + p 7 textRenderer + p 6 layerRenderDispatcher + p 8 spriteHolder + p 9 playerSkinRenderCache + m ()Lnet/minecraft/class_10442; comp_4536 itemModelManager + m ()Lnet/minecraft/class_5599; comp_4539 loadedEntityModels + m ()Lnet/minecraft/class_918; comp_4537 itemRenderer + m ()Lnet/minecraft/class_824; comp_4534 renderDispatcher + m ()Lnet/minecraft/class_898; comp_4538 entityRenderDispatcher + m ()Lnet/minecraft/class_11701; comp_4541 spriteHolder + m ()Lnet/minecraft/class_327; comp_4540 textRenderer + m (Lnet/minecraft/class_5601;)Lnet/minecraft/class_630; method_32140 getLayerModelPart + p 1 modelLayer + m ()Lnet/minecraft/class_776; comp_4535 renderManager + m ()Lnet/minecraft/class_11786; comp_4655 playerSkinRenderCache +c net/minecraft/class_5610 net/minecraft/client/model/ModelPartData + f Lnet/minecraft/class_5603; field_27729 transform + f Ljava/util/List; field_27728 cuboidData + f Ljava/util/Map; field_27730 children + m (Ljava/util/List;Lnet/minecraft/class_5603;)V + p 2 transform + p 1 cuboidData + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/class_5610; method_62144 applyTransformer + p 1 transformer + m ()Lnet/minecraft/class_5610; method_72895 resetChildrenParts + m (Ljava/util/Set;)V method_72896 resetChildrenExcept + p 1 names + m (IILjava/util/Map$Entry;)Lnet/minecraft/class_630; method_32114 method_32114 + p 2 entry + m (Ljava/lang/String;Lnet/minecraft/class_5606;Lnet/minecraft/class_5603;)Lnet/minecraft/class_5610; method_32117 addChild + p 1 name + p 3 transform + p 2 builder + m (Ljava/util/Set;)V method_72897 resetChildrenExceptExact + p 1 names + m (Ljava/lang/String;)Lnet/minecraft/class_5610; method_32116 getChild + p 1 name + m ()Ljava/util/Set; method_62141 getChildren + m (Ljava/lang/String;)Lnet/minecraft/class_5610; method_62142 resetChildrenParts + p 1 name + m (IILnet/minecraft/class_5604;)Lnet/minecraft/class_630$class_628; method_32113 method_32113 + p 2 data + m (II)Lnet/minecraft/class_630; method_32112 createPart + p 2 textureHeight + p 1 textureWidth + m (Lnet/minecraft/class_630;Lnet/minecraft/class_630;)Lnet/minecraft/class_630; method_32115 method_32115 + p 0 name + p 1 partData + m (Ljava/lang/String;Lnet/minecraft/class_5610;)Lnet/minecraft/class_5610; method_62143 addChild + p 2 data + p 1 name +c net/minecraft/class_5609 net/minecraft/client/model/ModelData + f Lnet/minecraft/class_5610; field_27727 data + m (Lnet/minecraft/class_9953;)Lnet/minecraft/class_5609; method_66842 transform + p 1 transformer + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/class_5609; method_62138 transform + p 1 transformer + m (Lnet/minecraft/class_5610;)V + p 1 data + m ()Lnet/minecraft/class_5610; method_32111 getRoot +c net/minecraft/class_5608 net/minecraft/client/model/TextureDimensions + c Internal class used by {@link TexturedModelData}. + f I field_27725 width + f I field_27726 height + m (II)V + p 1 width + p 2 height +c net/minecraft/class_5605 net/minecraft/client/model/Dilation + c @implNote This should be in same package as {@link ModelCuboidData} as\nits package private static fields are accessed by it. + f Lnet/minecraft/class_5605; field_27715 NONE + f F field_27716 radiusX + f F field_27718 radiusZ + f F field_27717 radiusY + m (F)Lnet/minecraft/class_5605; method_32094 add + p 1 radius + m (FFF)Lnet/minecraft/class_5605; method_32095 add + p 1 radiusX + p 2 radiusY + p 3 radiusZ + m (FFF)V + p 3 radiusZ + p 1 radiusX + p 2 radiusY + m (F)V + p 1 radius +c net/minecraft/class_5604 net/minecraft/client/model/ModelCuboidData + f Lorg/joml/Vector3fc; field_27709 offset + f Z field_27712 mirror + f Ljava/util/Set; field_42887 directions + f Ljava/lang/String; field_27708 name + f Lnet/minecraft/class_5611; field_27714 textureScale + f Lorg/joml/Vector3fc; field_27710 dimensions + f Lnet/minecraft/class_5611; field_27713 textureUV + f Lnet/minecraft/class_5605; field_27711 extraSize + m (II)Lnet/minecraft/class_630$class_628; method_32093 createCuboid + p 2 textureHeight + p 1 textureWidth + m (Ljava/lang/String;FFFFFFFFLnet/minecraft/class_5605;ZFFLjava/util/Set;)V + p 12 textureScaleX + p 11 mirror + p 14 directions + p 13 textureScaleY + p 8 sizeY + p 7 sizeX + p 10 extra + p 9 sizeZ + p 4 offsetX + p 3 textureY + p 6 offsetZ + p 5 offsetY + p 2 textureX + p 1 name +c net/minecraft/class_5607 net/minecraft/client/model/TexturedModelData + f Lnet/minecraft/class_5609; field_27723 data + f Lnet/minecraft/class_5608; field_27724 dimensions + m (Lnet/minecraft/class_5609;Lnet/minecraft/class_5608;)V + p 1 data + p 2 dimensions + m (Lnet/minecraft/class_5609;II)Lnet/minecraft/class_5607; method_32110 of + p 2 textureHeight + p 0 partData + p 1 textureWidth + m (Lnet/minecraft/class_9953;)Lnet/minecraft/class_5607; method_62137 transform + p 1 transformer + m ()Lnet/minecraft/class_630; method_32109 createModel +c net/minecraft/class_5606 net/minecraft/client/model/ModelPartBuilder + f I field_27721 textureY + f I field_27720 textureX + f Z field_27722 mirror + f Ljava/util/Set; field_42888 ALL_DIRECTIONS + f Ljava/util/List; field_27719 cuboidData + m ()Lnet/minecraft/class_5606; method_32096 mirrored + m (Ljava/lang/String;FFFFFFLnet/minecraft/class_5605;)Lnet/minecraft/class_5606; method_32103 cuboid + p 6 sizeY + p 7 sizeZ + p 8 extra + p 2 offsetX + p 3 offsetY + p 4 offsetZ + p 5 sizeX + p 1 name + m (Z)Lnet/minecraft/class_5606; method_32106 mirrored + p 1 mirror + m (Ljava/lang/String;FFFIIILnet/minecraft/class_5605;II)Lnet/minecraft/class_5606; method_32105 cuboid + p 10 textureY + p 9 textureX + p 8 extra + p 7 sizeZ + p 6 sizeY + p 5 sizeX + p 4 offsetZ + p 3 offsetY + p 2 offsetX + p 1 name + m ()Lnet/minecraft/class_5606; method_32108 create + m (FFFFFFLnet/minecraft/class_5605;)Lnet/minecraft/class_5606; method_32098 cuboid + p 3 offsetZ + p 4 sizeX + p 5 sizeY + p 6 sizeZ + p 1 offsetX + p 2 offsetY + p 7 extra + m (FFFFFFLjava/util/Set;)Lnet/minecraft/class_5606; method_49304 cuboid + p 7 directions + p 6 sizeZ + p 1 offsetX + p 3 offsetZ + p 2 offsetY + p 5 sizeY + p 4 sizeX + m ()Ljava/util/List; method_32107 build + m (II)Lnet/minecraft/class_5606; method_32101 uv + p 2 textureY + p 1 textureX + m (Ljava/lang/String;FFFFFF)Lnet/minecraft/class_5606; method_32102 cuboid + p 5 sizeX + p 6 sizeY + p 3 offsetY + p 4 offsetZ + p 1 name + p 2 offsetX + p 7 sizeZ + m (FFFFFFLnet/minecraft/class_5605;FF)Lnet/minecraft/class_5606; method_32099 cuboid + p 1 offsetX + p 3 offsetZ + p 2 offsetY + p 5 sizeY + p 4 sizeX + p 7 extra + p 6 sizeZ + p 9 textureScaleY + p 8 textureScaleX + m (FFFFFFZ)Lnet/minecraft/class_5606; method_32100 cuboid + p 7 mirror + p 6 sizeZ + p 5 sizeY + p 4 sizeX + p 3 offsetZ + p 2 offsetY + p 1 offsetX + m (FFFFFF)Lnet/minecraft/class_5606; method_32097 cuboid + p 6 sizeZ + p 4 sizeX + p 5 sizeY + p 2 offsetY + p 3 offsetZ + p 1 offsetX + m (Ljava/lang/String;FFFIIIII)Lnet/minecraft/class_5606; method_32104 cuboid + p 4 offsetZ + p 5 sizeX + p 2 offsetX + p 3 offsetY + p 8 textureX + p 9 textureY + p 6 sizeY + p 7 sizeZ + p 1 name +c net/minecraft/class_9187 net/minecraft/util/profiler/log/ArrayDebugSampleLog + f [J field_48806 defaults + f [J field_48807 values + m (I[J)V + p 1 size + p 2 defaults + m ()V method_56651 clearValues + m ()V method_56649 onPush +c net/minecraft/class_9186 net/minecraft/datafixer/schema/Schema3808_1 +c net/minecraft/class_9185 net/minecraft/datafixer/schema/Schema3808 +c net/minecraft/class_6910 net/minecraft/world/gen/densityfunction/DensityFunction + c Represents a function that maps from a block position to a density value.\n\n

It can be defined in code or in data packs by using pre-defined function types\nlike constant values or {@code add}, which in turn use other density functions\nto define their operands. + f Lcom/mojang/serialization/Codec; field_37058 REGISTRY_ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_37059 FUNCTION_CODEC + f Lcom/mojang/serialization/Codec; field_37057 CODEC + m (Lnet/minecraft/class_6910$class_6915;)Lnet/minecraft/class_6910; method_40469 apply + c Applies the visitor to every child density function and {@code this}.\n\n@return the resulting density function + p 1 visitor + c the visitor that should be applied to this density function + m ()Lnet/minecraft/class_7243; method_41062 getCodecHolder + m ([DLnet/minecraft/class_6910$class_6911;)V method_40470 fill + c Fills an array of densities using {@code this} density function and\nthe {@link EachApplier}. + p 1 densities + c the array of densities to fill, like a buffer or a cache + p 2 applier + c the {@code EachApplier} to use. It has a method for filling the array, as well as to get a block position for an index + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6880; method_41061 method_41061 + p 0 function + m ()Lnet/minecraft/class_6910; method_40473 cube + m ()Lnet/minecraft/class_6910; method_40472 square + m ()Lnet/minecraft/class_6910; method_40471 abs + m ()Lnet/minecraft/class_6910; method_72682 invert + m (DD)Lnet/minecraft/class_6910; method_40468 clamp + p 3 max + p 1 min + m (Lnet/minecraft/class_6910$class_6912;)D method_40464 sample + c {@return the density value for the given block position} + p 1 pos + c the block position + m ()Lnet/minecraft/class_6910; method_40476 squeeze + m ()Lnet/minecraft/class_6910; method_40475 quarterNegative + m ()Lnet/minecraft/class_6910; method_40474 halfNegative + m ()D comp_378 maxValue + m ()D comp_377 minValue +c net/minecraft/class_6910$class_6911 net/minecraft/world/gen/densityfunction/DensityFunction$EachApplier + c {@code EachApplier} is used to fill an array of densities, like a density buffer\nor cache, with values from a density function.\n\n

This exists because {@link net.minecraft.world.gen.chunk.ChunkNoiseSampler ChunkNoiseSampler}\nuses itself as the block position passed to density functions and needs to set the\nposition fields correctly before calling {@code sample}, as well as setting fields\nfor the implementation of caches. + m ([DLnet/minecraft/class_6910;)V method_40478 fill + c Fills the density array using a density function.\n\n@implNote This can have side effects. + p 1 densities + p 2 densityFunction + m (I)Lnet/minecraft/class_6910$class_6912; method_40477 at + c {@return the block position at a specific index of the density array}\n\n

If you want to manually iterate the array and call {@link DensityFunction#sample}\nto set the individual elements in an implementation of {@link DensityFunction#fill},\nthis method can be used to get the block position required for that.\n\n@implNote This can have side effects. + p 1 index +c net/minecraft/class_6910$class_6912 net/minecraft/world/gen/densityfunction/DensityFunction$NoisePos + c {@code NoisePos} represents the absolute block position that is passed\nto density functions.\n\n

It also has a way to get the currently active {@link Blender}. + m ()Lnet/minecraft/class_6748; method_39327 getBlender + m ()I comp_373 blockZ + m ()I comp_372 blockY + m ()I comp_371 blockX +c net/minecraft/class_6910$class_6913 net/minecraft/world/gen/densityfunction/DensityFunction$Base + c Represents a density function that has no other density functions as an argument,\nand provides default implementations of {@link #fill} and\n{@link #apply(DensityFunctionVisitor)} for this case. +c net/minecraft/class_6910$class_6914 net/minecraft/world/gen/densityfunction/DensityFunction$UnblendedNoisePos + f I comp_373 blockZ + f I comp_371 blockX + f I comp_372 blockY + m (III)V + p 1 blockX + p 2 blockY + p 3 blockZ +c net/minecraft/class_6910$class_6915 net/minecraft/world/gen/densityfunction/DensityFunction$DensityFunctionVisitor + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; apply apply + p 1 densityFunction + m (Lnet/minecraft/class_6910$class_7270;)Lnet/minecraft/class_6910$class_7270; method_42358 apply + p 1 noiseDensityFunction +c net/minecraft/class_6910$class_7270 net/minecraft/world/gen/densityfunction/DensityFunction$Noise + f Lcom/mojang/serialization/Codec; field_38248 CODEC + f Lnet/minecraft/class_5216; comp_663 noise + f Lnet/minecraft/class_6880; comp_662 noiseData + m (DDD)D method_42356 sample + p 3 y + p 5 z + p 1 x + m ()D method_42355 getMaxValue + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_6910$class_7270; method_42357 method_42357 + p 0 noiseData + m (Lnet/minecraft/class_6880;)V + p 1 noiseData + m ()Lnet/minecraft/class_5216; comp_663 noise + m ()Lnet/minecraft/class_6880; comp_662 noiseData + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_5216;)V + p 1 noiseData + p 2 noise +c net/minecraft/class_6908 net/minecraft/registry/tag/BiomeTags + f Lnet/minecraft/class_6862; field_55616 SPAWNS_WARM_VARIANT_FARM_ANIMALS + f Lnet/minecraft/class_6862; field_55615 SPAWNS_COLD_VARIANT_FARM_ANIMALS + f Lnet/minecraft/class_6862; field_36520 DESERT_PYRAMID_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36521 IGLOO_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36522 JUNGLE_TEMPLE_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36523 MINESHAFT_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36524 MINESHAFT_MESA_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36525 OCEAN_MONUMENT_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36526 OCEAN_RUIN_COLD_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36527 OCEAN_RUIN_WARM_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36516 IS_JUNGLE + f Lnet/minecraft/class_6862; field_36517 IS_FOREST + f Lnet/minecraft/class_6862; field_36518 IS_NETHER + f Lnet/minecraft/class_6862; field_36519 BURIED_TREASURE_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36530 RUINED_PORTAL_JUNGLE_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36531 RUINED_PORTAL_OCEAN_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36532 RUINED_PORTAL_SWAMP_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36533 RUINED_PORTAL_MOUNTAIN_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36528 PILLAGER_OUTPOST_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36529 RUINED_PORTAL_DESERT_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_47213 TRIAL_CHAMBERS_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_64262 SPAWNS_CORAL_VARIANT_ZOMBIE_NAUTILUS + f Lnet/minecraft/class_6862; field_36500 VILLAGE_TAIGA_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36501 WOODLAND_MANSION_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36502 STRONGHOLD_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36503 NETHER_FORTRESS_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36510 IS_BEACH + f Lnet/minecraft/class_6862; field_36511 IS_RIVER + f Lnet/minecraft/class_6862; field_36512 IS_MOUNTAIN + f Lnet/minecraft/class_6862; field_36513 IS_BADLANDS + f Lnet/minecraft/class_6862; field_36514 IS_HILL + f Lnet/minecraft/class_6862; field_36515 IS_TAIGA + f Lnet/minecraft/class_6862; field_36504 NETHER_FOSSIL_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36505 BASTION_REMNANT_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36506 RUINED_PORTAL_NETHER_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36507 END_CITY_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36508 IS_DEEP_OCEAN + f Lnet/minecraft/class_6862; field_36509 IS_OCEAN + f Lnet/minecraft/class_6862; field_37380 PRODUCES_CORALS_FROM_BONEMEAL + f Lnet/minecraft/class_6862; field_37381 WITHOUT_ZOMBIE_SIEGES + f Lnet/minecraft/class_6862; field_37383 WITHOUT_WANDERING_TRADER_SPAWNS + f Lnet/minecraft/class_6862; field_37384 SPAWNS_COLD_VARIANT_FROGS + f Lnet/minecraft/class_6862; field_37385 SPAWNS_WARM_VARIANT_FROGS + f Lnet/minecraft/class_6862; field_37387 REDUCE_WATER_AMBIENT_SPAWNS + f Lnet/minecraft/class_6862; field_37388 ALLOWS_TROPICAL_FISH_SPAWNS_AT_ANY_HEIGHT + f Lnet/minecraft/class_6862; field_37389 POLAR_BEARS_SPAWN_ON_ALTERNATE_BLOCKS + f Lnet/minecraft/class_6862; field_37390 MORE_FREQUENT_DROWNED_SPAWNS + f Lnet/minecraft/class_6862; field_37391 ALLOWS_SURFACE_SLIME_SPAWNS + f Lnet/minecraft/class_6862; field_37392 IS_SAVANNA + f Lnet/minecraft/class_6862; field_37393 IS_OVERWORLD + f Lnet/minecraft/class_6862; field_37394 IS_END + f Lnet/minecraft/class_6862; field_37395 STRONGHOLD_BIASED_TO + f Lnet/minecraft/class_6862; field_37376 REQUIRED_OCEAN_MONUMENT_SURROUNDING + f Lnet/minecraft/class_6862; field_37379 WATER_ON_MAP_OUTLINES + f Lnet/minecraft/class_6862; field_41754 SPAWNS_GOLD_RABBITS + f Lnet/minecraft/class_6862; field_41755 SPAWNS_WHITE_RABBITS + f Lnet/minecraft/class_6862; field_41756 SPAWNS_SNOW_FOXES + f Lnet/minecraft/class_6862; field_38372 ANCIENT_CITY_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_39444 MINESHAFT_BLOCKING + f Lnet/minecraft/class_6862; field_43168 TRAIL_RUINS_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36499 VILLAGE_SNOWY_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36492 RUINED_PORTAL_STANDARD_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36493 SHIPWRECK_BEACHED_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36494 SHIPWRECK_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36495 SWAMP_HUT_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36496 VILLAGE_DESERT_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36497 VILLAGE_PLAINS_HAS_STRUCTURE + f Lnet/minecraft/class_6862; field_36498 VILLAGE_SAVANNA_HAS_STRUCTURE + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_40434 of + p 0 id +c net/minecraft/class_6909 net/minecraft/datafixer/fix/TicksInWrongChunkFix + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_40438 method_40438 + p 1 chunkTyped + m (Ljava/util/Optional;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40440 method_40440 + p 1 chunkTag + m (IILcom/mojang/serialization/Dynamic;)Z method_40437 method_40437 + p 2 tickDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;IILjava/util/Optional;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_40439 putNeighborTicks + p 4 upgradeDataKey + p 3 ticks + p 2 chunkZ + p 1 chunkX + p 0 chunkTag +c net/minecraft/class_6904 net/minecraft/server/SaveLoader + f Lnet/minecraft/class_7780; comp_358 combinedDynamicRegistries + f Lnet/minecraft/class_5219; comp_359 saveProperties + f Lnet/minecraft/class_5350; comp_357 dataPackContents + f Lnet/minecraft/class_6860; comp_356 resourceManager + m ()Lnet/minecraft/class_7780; comp_358 combinedDynamicRegistries + m ()Lnet/minecraft/class_5219; comp_359 saveProperties + m ()Lnet/minecraft/class_5350; comp_357 dataPackContents + m ()Lnet/minecraft/class_6860; comp_356 resourceManager + m (Lnet/minecraft/class_6860;Lnet/minecraft/class_5350;Lnet/minecraft/class_7780;Lnet/minecraft/class_5219;)V + p 1 resourceManager + p 2 dataPackContents + p 3 combinedDynamicRegistries + p 4 saveProperties +c net/minecraft/class_6903 net/minecraft/registry/RegistryOps + f Lnet/minecraft/class_6903$class_7863; field_40852 registryInfoGetter + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_46634 getEntryLookup + p 1 registryRef + m (Lnet/minecraft/class_6903$class_7862;)Lcom/mojang/serialization/DataResult; method_46626 method_46626 + p 0 info + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_6903$class_7863;)Lnet/minecraft/class_6903; method_40414 of + p 0 delegate + p 1 registryInfoGetter + m (Lcom/mojang/serialization/DynamicOps;)Lnet/minecraft/class_6903; method_57110 withDelegate + p 1 delegate + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_6903$class_7863;)V + p 2 registryInfoGetter + p 1 delegate + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/class_7225$class_7874;)Lcom/mojang/serialization/Dynamic; method_56622 withRegistry + p 0 dynamic + p 1 registries + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; method_46631 method_46631 + p 1 ops + m (Ljava/lang/Object;)Lnet/minecraft/class_6880$class_6883; method_46633 method_46633 + p 0 object + m (Ljava/lang/Object;)Lnet/minecraft/class_7871; method_46635 method_46635 + p 0 object + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_6903$class_7862;)Ljava/util/Optional; method_46629 method_46629 + p 1 info + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_6903; method_46632 of + p 0 delegate + p 1 registries + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; method_46630 method_46630 + p 2 ops + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_46628 getOwner + p 1 registryRef + m (Lnet/minecraft/class_5321;)Lcom/mojang/serialization/codecs/RecordCodecBuilder; method_46637 getEntryCodec + p 0 key + m (Lnet/minecraft/class_5321;)Lcom/mojang/serialization/codecs/RecordCodecBuilder; method_46636 getEntryLookupCodec + p 0 registryRef +c net/minecraft/class_6903$class_7863 net/minecraft/registry/RegistryOps$RegistryInfoGetter + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_46623 getRegistryInfo + p 1 registryRef +c net/minecraft/class_6903$class_9683 net/minecraft/registry/RegistryOps$CachedRegistryInfoGetter + f Lnet/minecraft/class_7225$class_7874; field_51501 registries + f Ljava/util/Map; field_51502 cache + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_59855 compute + p 1 registryRef + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries +c net/minecraft/class_6903$class_7862 net/minecraft/registry/RegistryOps$RegistryInfo + f Lnet/minecraft/class_7871; comp_1131 entryLookup + f Lcom/mojang/serialization/Lifecycle; comp_1132 elementsLifecycle + f Lnet/minecraft/class_7876; comp_1130 owner + m ()Lnet/minecraft/class_7871; comp_1131 entryLookup + m (Lnet/minecraft/class_7225$class_7226;)Lnet/minecraft/class_6903$class_7862; method_57074 fromWrapper + p 0 wrapper + m ()Lcom/mojang/serialization/Lifecycle; comp_1132 elementsLifecycle + m ()Lnet/minecraft/class_7876; comp_1130 owner + m (Lnet/minecraft/class_7876;Lnet/minecraft/class_7871;Lcom/mojang/serialization/Lifecycle;)V + p 1 owner + p 2 entryLookup + p 3 elementsLifecycle +c net/minecraft/class_9184 net/minecraft/datafixer/schema/Schema3807 +c net/minecraft/class_9183 net/minecraft/datafixer/fix/HorseArmorFix + f Ljava/lang/String; field_48805 oldNbtKey + f Z field_51519 removeOldArmor + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;Z)V + p 1 outputSchema + p 4 removeOldArmor + p 2 entityId + p 3 oldNbtKey + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59888 method_59888 + p 0 armorItemsDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59886 method_59886 + p 0 armorDropChancesDynamic + m (Lcom/mojang/serialization/Dynamic;J)Lcom/mojang/serialization/Dynamic; method_59885 method_59885 + p 1 slot + p 0 dropChanceDynamic + m (Lcom/mojang/serialization/Dynamic;J)Lcom/mojang/serialization/Dynamic; method_59887 method_59887 + p 0 itemDynamic + p 1 slot +c net/minecraft/class_9182 net/minecraft/datafixer/fix/HorseChestIndexingFix + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56632 method_56632 + p 1 entityItemsTyped + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Ljava/lang/String;)Lcom/mojang/datafixers/TypeRewriteRule; method_56633 fixIndexing + p 1 itemStackOpticFinder + p 2 entityType + p 3 entityId + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56637 method_56637 + p 0 slotDynamic + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56631 method_56631 + p 2 specificEntityTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56635 method_56635 + p 0 itemStackDynamic + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56630 method_56630 + p 3 entityTyped + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_56634 method_56634 + p 0 itemStackEntry +c net/minecraft/class_9199 net/minecraft/block/entity/VaultBlockEntity + f Lnet/minecraft/class_9204; field_48866 serverData + f Lnet/minecraft/class_9202; field_48868 clientData + f Lnet/minecraft/class_9205; field_48867 sharedData + f Lnet/minecraft/class_9203; field_48869 config + m ()Lnet/minecraft/class_9205; method_56735 getSharedData + m ()Lnet/minecraft/class_9203; method_56737 getConfig + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_2487;)V method_56734 method_56734 + p 2 nbt + m (Lnet/minecraft/class_9203;)V method_56730 setConfig + p 1 config + m ()Lnet/minecraft/class_9202; method_56736 getClientData + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m ()Lnet/minecraft/class_9204; method_56731 getServerData +c net/minecraft/class_9199$class_9200 net/minecraft/block/entity/VaultBlockEntity$Client + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_9202;Lnet/minecraft/class_9205;)V method_56741 tick + p 0 world + p 1 pos + p 2 state + p 3 clientData + p 4 sharedData + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Lnet/minecraft/class_243; method_56749 getRegularParticlesPos + p 1 random + p 0 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_9205;Lnet/minecraft/class_1657;)Z method_56745 isPlayerWithinConnectedParticlesRange + p 0 pos + p 1 sharedData + p 2 player + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_9205;)V method_56748 spawnConnectedParticles + p 3 sharedData + p 2 state + p 1 pos + p 0 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Lnet/minecraft/class_243; method_56744 getDeactivateParticlesPos + p 0 pos + p 1 random + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_9205;Lnet/minecraft/class_2394;)V method_56740 spawnAmbientParticles + p 2 sharedData + p 1 pos + p 3 particle + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_9205;Lnet/minecraft/class_2394;)V method_56742 spawnActivateParticles + p 3 sharedData + p 4 particle + p 1 pos + p 2 state + p 0 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Lnet/minecraft/class_243; method_56746 getConnectedParticlesOrigin + p 1 direction + p 0 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2394;)V method_56739 spawnDeactivateParticles + p 0 world + p 2 particle + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_243;Lnet/minecraft/class_1657;)V method_56738 spawnConnectedParticlesFor + p 1 pos + p 0 world + p 2 player + m (Lnet/minecraft/class_9205;)Z method_56743 hasDisplayItem + p 0 sharedData + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_9205;)V method_56747 playAmbientSound + p 2 sharedData + p 0 world + p 1 pos +c net/minecraft/class_9199$class_9201 net/minecraft/block/entity/VaultBlockEntity$Server + f I field_48877 FAILED_UNLOCK_COOLDOWN + f I field_48875 UNLOCK_TIME + f I field_48876 DISPLAY_UPDATE_INTERVAL + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_9203;Lnet/minecraft/class_9204;Lnet/minecraft/class_9205;Ljava/util/List;)V method_56754 unlock + p 5 sharedData + p 6 itemsToEject + p 3 config + p 4 serverData + p 1 state + p 2 pos + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9203;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)Ljava/util/List; method_56751 generateLoot + p 0 world + p 1 config + p 4 key + p 2 pos + p 3 player + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9206;Lnet/minecraft/class_9203;Lnet/minecraft/class_9205;Lnet/minecraft/class_2338;)V method_56753 updateDisplayItem + p 0 world + p 2 config + p 1 state + p 4 pos + p 3 sharedData + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_9203;Lnet/minecraft/class_9204;Lnet/minecraft/class_9205;Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V method_56757 tryUnlock + p 1 pos + p 0 world + p 3 config + p 2 state + p 5 sharedData + p 4 serverData + p 7 stack + p 6 player + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_9203;Lnet/minecraft/class_9205;)V method_56758 changeVaultState + p 2 oldState + p 1 pos + p 4 config + p 3 newState + p 0 world + p 5 sharedData + m (Lnet/minecraft/class_9203;Lnet/minecraft/class_1799;)Z method_56759 isValidKey + p 1 stack + p 0 config + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5321;)Lnet/minecraft/class_1799; method_56755 generateDisplayItem + p 2 lootTable + p 1 pos + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_9204;Lnet/minecraft/class_2338;Lnet/minecraft/class_3414;)V method_56752 playFailedUnlockSound + p 3 sound + p 2 pos + p 1 serverData + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_9203;Lnet/minecraft/class_9204;Lnet/minecraft/class_9205;)V method_56756 tick + p 1 pos + p 0 world + p 5 sharedData + p 4 serverData + p 3 config + p 2 state + m (Lnet/minecraft/class_9203;Lnet/minecraft/class_9206;)Z method_56760 canBeUnlocked + p 1 state + p 0 config + m (JLnet/minecraft/class_9206;)Z method_56750 shouldUpdateDisplayItem + p 0 time + p 2 state +c net/minecraft/class_9197 net/minecraft/block/VaultBlock + f Lnet/minecraft/class_2754; field_48858 FACING + f Lcom/mojang/serialization/MapCodec; field_48856 CODEC + f Lnet/minecraft/class_2769; field_48857 VAULT_STATE + f Lnet/minecraft/class_2746; field_50171 OMINOUS + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_9199;)V method_56718 method_56718 + p 1 worldx + p 3 statex + p 2 pos + p 4 blockEntity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_9199;)V method_56719 method_56719 + p 3 blockEntity + p 1 pos + p 2 statex + p 0 worldx +c net/minecraft/class_6916 net/minecraft/world/gen/densityfunction/DensityFunctionTypes + f Lcom/mojang/serialization/Codec; field_37061 CODEC + f Lcom/mojang/serialization/Codec; field_37062 DYNAMIC_RANGE + f Lcom/mojang/serialization/Codec; field_37063 CONSTANT_RANGE + f D field_37060 MAX_CONSTANT_VALUE + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40508 max + p 1 b + p 0 a + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_6910; method_40501 shiftA + p 0 noiseParameters + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40510 cacheAllInCell + p 0 inputFunction + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40500 mul + p 1 b + p 0 a + m (Lnet/minecraft/class_6910;)Lcom/mojang/datafixers/util/Either; method_41071 method_41071 + p 0 densityFunction + m (Lnet/minecraft/class_6910;DDLnet/minecraft/class_6910;Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40485 rangeChoice + p 6 whenOutOfRange + p 5 whenInRange + p 3 maxExclusive + p 1 minInclusive + p 0 input + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/BiFunction;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41070 method_41070 + p 3 instance + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_6910; method_40506 shiftB + p 0 noiseParameters + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40505 min + p 1 b + p 0 a + m (Lnet/minecraft/class_6880;DD)Lnet/minecraft/class_6910; method_40502 noise + p 3 scaleY + p 1 scaleXz + p 0 noiseParameters + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_6910; method_40493 noise + p 0 noiseParameters + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40507 cacheOnce + p 0 inputFunction + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6880;Lnet/minecraft/class_6916$class_6944$class_7048;)Lnet/minecraft/class_6910; method_40491 weirdScaledSampler + p 0 input + p 2 mapper + p 1 parameters + m ()Lnet/minecraft/class_6910; method_40498 blendAlpha + m (Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/class_7243; method_41069 holderOf + p 0 creator + p 1 argumentGetter + m (Lnet/minecraft/class_6910;DLnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_42359 lerp + c Creates a new density function which interpolates between the values of\n{@code start} and {@code end}, based on {@code delta}.\n\n@return the created density function + p 3 end + c the function used for the end value, for the {@code delta} value {@code 1.0} + p 0 delta + p 1 start + c the start value, for the {@code delta} value {@code 0.0} + m (Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_7243; method_41065 holderOf + p 0 mapCodec + m ()Lnet/minecraft/class_6910; method_40503 blendOffset + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40483 interpolated + p 0 inputFunction + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_41066 registerAndGetDefault + p 0 registry + m (Lnet/minecraft/class_6910;DD)Lnet/minecraft/class_6910; method_40484 mapRange + c Creates a new density function based on {@code function}, but with a different range.\n{@code function} is assumed to be in the range {@code -1.0} to {@code 1.0},\nwhile the new function will be in the range {@code min} to {@code max}.\n\n@return the created density function + p 0 function + p 3 max + c the new maximum value + p 1 min + c the new minimum value + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40499 flatCache + p 0 inputFunction + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40512 blendDensity + p 0 input + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40504 cache2d + p 0 inputFunction + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;II)Lnet/minecraft/class_6910; method_72683 findTopSurface + p 3 cellHeight + p 2 lowerBound + p 1 upperBound + p 0 density + m (Lnet/minecraft/class_6880;DD)Lnet/minecraft/class_6910; method_40495 noiseInRange + p 1 min + p 3 max + p 0 noiseParameters + m (Lnet/minecraft/class_6910;)Lcom/mojang/serialization/MapCodec; method_42360 method_42360 + p 0 densityFunction + m ()Lnet/minecraft/class_6910; method_40479 zero + m (J)Lnet/minecraft/class_6910; method_40482 endIslands + p 0 seed + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;DLnet/minecraft/class_6880;)Lnet/minecraft/class_6910; method_40487 shiftedNoise + p 2 xzScale + p 0 shiftX + p 1 shiftZ + p 4 noiseParameters + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40488 lerp + c Creates a new density function which interpolates between the values of\n{@code start} and {@code end}, based on {@code delta}.\n\n@return the created density function + p 0 delta + c the function used for the delta value + p 1 start + c the function used for the start value, for the {@code delta} value {@code 0.0} + p 2 end + c the function used for the end value, for the {@code delta} value {@code 1.0} + m (Lnet/minecraft/class_6880;D)Lnet/minecraft/class_6910; method_40494 noise + p 1 scaleY + p 0 noiseParameters + m (Lnet/minecraft/class_6492;)Lnet/minecraft/class_6910; method_41528 spline + p 0 spline + m (IIDD)Lnet/minecraft/class_6910; method_40481 yClampedGradient + p 4 toValue + p 0 fromY + p 1 toY + p 2 fromValue + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6916$class_6925$class_6926;)Lnet/minecraft/class_6910; method_40490 unary + p 1 type + p 0 input + m (D)Lnet/minecraft/class_6910; method_40480 constant + p 0 density + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40486 add + p 0 a + p 1 b + m (Lnet/minecraft/class_2378;Ljava/lang/String;Lnet/minecraft/class_7243;)Lcom/mojang/serialization/MapCodec; method_41067 register + p 2 codecHolder + p 1 id + p 0 registry + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_6910; method_41063 method_41063 + p 0 either + m (Lnet/minecraft/class_6880;DDDD)Lnet/minecraft/class_6910; method_40496 noiseInRange + p 7 max + p 5 min + p 3 scaleY + p 0 noiseParameters + p 1 scaleXz + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/class_7243; method_41064 holderOf + p 0 codec + p 1 creator + p 2 argumentGetter + m (Ljava/util/function/BiFunction;Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/class_7243; method_41068 holderOf + p 1 argument1Getter + p 2 argument2Getter + p 0 creator + m (Lnet/minecraft/class_6880;DDD)Lnet/minecraft/class_6910; method_40497 noiseInRange + p 0 noiseParameters + p 5 max + p 1 scaleY + p 3 min + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_6910; method_40509 shift + p 0 noiseParameters +c net/minecraft/class_6916$class_7055 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$BinaryOperationLike + f Lorg/slf4j/Logger; field_37110 LOGGER + m (Lnet/minecraft/class_6916$class_7055$class_6918;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;)Lnet/minecraft/class_6916$class_7055; method_41097 create + p 2 argument2 + p 1 argument1 + p 0 type + m ()Lnet/minecraft/class_6910; comp_376 argument2 + m ()Lnet/minecraft/class_6910; comp_375 argument1 + m ()Lnet/minecraft/class_6916$class_7055$class_6918; comp_374 type +c net/minecraft/class_6916$class_7055$class_6918 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$BinaryOperationLike$Type + f Ljava/lang/String; field_37112 name + f Lnet/minecraft/class_7243; field_37111 codecHolder + f Lnet/minecraft/class_6916$class_7055$class_6918; field_36545 MUL + f Lnet/minecraft/class_6916$class_7055$class_6918; field_36547 MAX + f Lnet/minecraft/class_6916$class_7055$class_6918; field_36546 MIN + f Lnet/minecraft/class_6916$class_7055$class_6918; field_36544 ADD + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_6916$class_6921 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$BlendOffset + f Lnet/minecraft/class_7243; field_37081 CODEC + f Lnet/minecraft/class_6916$class_6921; field_36551 INSTANCE +c net/minecraft/class_6916$class_6922 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Clamp + f Lcom/mojang/serialization/MapCodec; field_37083 CLAMP_CODEC + f Lnet/minecraft/class_7243; field_37082 CODEC_HOLDER + f D comp_377 minValue + f D comp_378 maxValue + f Lnet/minecraft/class_6910; comp_380 input + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41078 method_41078 + p 0 instance + m (Lnet/minecraft/class_6910;DD)V + p 1 input + p 2 minValue + p 4 maxValue +c net/minecraft/class_6916$class_6920 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$BlendDensity + f Lnet/minecraft/class_7243; field_37080 CODEC_HOLDER + f Lnet/minecraft/class_6910; comp_379 input + m (Lnet/minecraft/class_6910;)V + p 1 input +c net/minecraft/class_6916$class_6925 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$UnaryOperation + f D comp_377 minValue + f D comp_378 maxValue + f Lnet/minecraft/class_6916$class_6925$class_6926; comp_382 type + f Lnet/minecraft/class_6910; comp_380 input + m (Lnet/minecraft/class_6910$class_6915;)Lnet/minecraft/class_6916$class_6925; method_41080 apply + m (Lnet/minecraft/class_6916$class_6925$class_6926;D)D method_40521 apply + p 0 type + p 1 density + m (Lnet/minecraft/class_6916$class_6925$class_6926;Lnet/minecraft/class_6910;)Lnet/minecraft/class_6916$class_6925; method_41079 create + p 1 input + p 0 type + m ()Lnet/minecraft/class_6916$class_6925$class_6926; comp_382 type + m (Lnet/minecraft/class_6916$class_6925$class_6926;Lnet/minecraft/class_6910;DD)V + p 1 type + p 2 input + p 3 minValue + p 5 maxValue +c net/minecraft/class_6916$class_6925$class_6926 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$UnaryOperation$Type + f Ljava/lang/String; field_37086 name + f Lnet/minecraft/class_7243; field_37087 codecHolder + f Lnet/minecraft/class_6916$class_6925$class_6926; field_36557 CUBE + f Lnet/minecraft/class_6916$class_6925$class_6926; field_36558 HALF_NEGATIVE + f Lnet/minecraft/class_6916$class_6925$class_6926; field_36559 QUARTER_NEGATIVE + f Lnet/minecraft/class_6916$class_6925$class_6926; field_36555 ABS + f Lnet/minecraft/class_6916$class_6925$class_6926; field_36556 SQUARE + f Lnet/minecraft/class_6916$class_6925$class_6926; field_36560 SQUEEZE + f Lnet/minecraft/class_6916$class_6925$class_6926; field_61470 INVERT + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6916$class_6925; method_41081 method_41081 + p 1 input + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_6916$class_6923 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Constant + f Lnet/minecraft/class_6916$class_6923; field_36553 ZERO + f Lnet/minecraft/class_7243; field_37084 CODEC_HOLDER + f D comp_381 value + m ()D comp_381 value + m (D)V + p 1 value +c net/minecraft/class_6916$class_6924 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$EndIslands + f Lnet/minecraft/class_3541; field_36554 sampler + f Lnet/minecraft/class_7243; field_37085 CODEC_HOLDER + m (Lnet/minecraft/class_3541;II)F method_41529 sample + p 1 x + p 2 z + p 0 sampler + m (J)V + p 1 seed +c net/minecraft/class_6916$class_6929 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$LinearOperation + f Lnet/minecraft/class_6916$class_6929$class_6930; comp_385 specificType + f Lnet/minecraft/class_6910; comp_380 input + f D comp_386 argument + f D comp_377 minValue + f D comp_378 maxValue + m ()D comp_386 argument + m ()Lnet/minecraft/class_6916$class_6929$class_6930; comp_385 specificType + m (Lnet/minecraft/class_6916$class_6929$class_6930;Lnet/minecraft/class_6910;DDD)V + p 1 specificType + p 2 input + p 3 minValue + p 5 maxValue + p 7 argument +c net/minecraft/class_6916$class_6929$class_6930 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$LinearOperation$SpecificType + f Lnet/minecraft/class_6916$class_6929$class_6930; field_36568 MUL + f Lnet/minecraft/class_6916$class_6929$class_6930; field_36569 ADD +c net/minecraft/class_6916$class_6927 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Wrapping + f Lnet/minecraft/class_6916$class_6927$class_6928; comp_383 type + f Lnet/minecraft/class_6910; comp_469 wrapped + m (Lnet/minecraft/class_6916$class_6927$class_6928;Lnet/minecraft/class_6910;)V + p 1 type + p 2 wrapped +c net/minecraft/class_6916$class_6927$class_6928 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Wrapping$Type + f Lnet/minecraft/class_7243; field_37089 codec + f Ljava/lang/String; field_37088 name + f Lnet/minecraft/class_6916$class_6927$class_6928; field_36562 INTERPOLATED + f Lnet/minecraft/class_6916$class_6927$class_6928; field_36563 FLAT_CACHE + f Lnet/minecraft/class_6916$class_6927$class_6928; field_36564 CACHE2D + f Lnet/minecraft/class_6916$class_6927$class_6928; field_36565 CACHE_ONCE + f Lnet/minecraft/class_6916$class_6927$class_6928; field_36566 CACHE_ALL_IN_CELL + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_6916$class_6932 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Unary + m (D)D method_40520 apply + p 1 density + m ()Lnet/minecraft/class_6910; comp_380 input +c net/minecraft/class_6916$class_6933 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$RangeChoice + f Lnet/minecraft/class_7243; field_37093 CODEC_HOLDER + f Lcom/mojang/serialization/MapCodec; field_37092 RANGE_CHOICE_CODEC + f D comp_391 minInclusive + f D comp_392 maxExclusive + f Lnet/minecraft/class_6910; comp_390 input + f Lnet/minecraft/class_6910; comp_393 whenInRange + f Lnet/minecraft/class_6910; comp_394 whenOutOfRange + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41085 method_41085 + p 0 instance + m ()D comp_391 minInclusive + m ()D comp_392 maxExclusive + m ()Lnet/minecraft/class_6910; comp_390 input + m ()Lnet/minecraft/class_6910; comp_393 whenInRange + m ()Lnet/minecraft/class_6910; comp_394 whenOutOfRange + m (Lnet/minecraft/class_6910;DDLnet/minecraft/class_6910;Lnet/minecraft/class_6910;)V + p 1 input + p 2 minInclusive + p 4 maxExclusive + p 6 whenInRange + p 7 whenOutOfRange +c net/minecraft/class_6916$class_6931 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Noise + f Lnet/minecraft/class_7243; field_37091 CODEC_HOLDER + f Lcom/mojang/serialization/MapCodec; field_37090 NOISE_CODEC + f D comp_388 xzScale + f D comp_389 yScale + f Lnet/minecraft/class_6910$class_7270; comp_387 noise + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41083 method_41083 + p 0 instance + m ()Lnet/minecraft/class_6910$class_7270; comp_387 noise + m ()D comp_388 xzScale + m ()D comp_389 yScale + m (Lnet/minecraft/class_6910$class_7270;DD)V + p 1 noise + p 2 xzScale + p 4 yScale +c net/minecraft/class_6916$class_6937 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$ShiftA + f Lnet/minecraft/class_7243; field_37095 CODEC_HOLDER + f Lnet/minecraft/class_6910$class_7270; comp_395 offsetNoise + m (Lnet/minecraft/class_6910$class_7270;)V + p 1 offsetNoise +c net/minecraft/class_6916$class_6934 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Shift + f Lnet/minecraft/class_7243; field_37094 CODEC_HOLDER + f Lnet/minecraft/class_6910$class_7270; comp_395 offsetNoise + m (Lnet/minecraft/class_6910$class_7270;)V + p 1 offsetNoise +c net/minecraft/class_6916$class_6938 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$ShiftB + f Lnet/minecraft/class_7243; field_37096 CODEC_HOLDER + f Lnet/minecraft/class_6910$class_7270; comp_395 offsetNoise + m (Lnet/minecraft/class_6910$class_7270;)V + p 1 offsetNoise +c net/minecraft/class_6916$class_6939 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Offset + m (DDD)D method_40525 sample + p 1 x + p 5 z + p 3 y + m ()Lnet/minecraft/class_6910$class_7270; comp_395 offsetNoise +c net/minecraft/class_6916$class_7076 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Spline + f Lnet/minecraft/class_7243; field_37255 CODEC_HOLDER + f Lcom/mojang/serialization/Codec; field_37678 SPLINE_CODEC + f Lcom/mojang/serialization/MapCodec; field_37256 SPLINE_FUNCTION_CODEC + f Lnet/minecraft/class_6492; comp_526 spline + m (Lnet/minecraft/class_6910$class_6915;Lnet/minecraft/class_6916$class_7076$class_7135;)Lnet/minecraft/class_6916$class_7076$class_7135; method_41197 method_41197 + p 1 densityFunctionWrapper + m ()Lnet/minecraft/class_6492; comp_526 spline + m (Lnet/minecraft/class_6492;)V + p 1 spline +c net/minecraft/class_6916$class_7076$class_7135 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Spline$DensityFunctionWrapper + f Lcom/mojang/serialization/Codec; field_37679 CODEC + f Lnet/minecraft/class_6880; comp_536 function + m (Lnet/minecraft/class_6910$class_6915;)Lnet/minecraft/class_6916$class_7076$class_7135; method_41530 apply + p 1 visitor + m (Lnet/minecraft/class_6916$class_7076$class_7136;)F method_41531 apply + m ()Lnet/minecraft/class_6880; comp_536 function + m (Lnet/minecraft/class_6880;)V + p 1 function +c net/minecraft/class_6916$class_7076$class_7136 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Spline$SplinePos + f Lnet/minecraft/class_6910$class_6912; comp_537 context + m ()Lnet/minecraft/class_6910$class_6912; comp_537 context + m (Lnet/minecraft/class_6910$class_6912;)V + p 1 context +c net/minecraft/class_6916$class_6940 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$ShiftedNoise + f Lnet/minecraft/class_7243; field_37097 CODEC_HOLDER + f Lcom/mojang/serialization/MapCodec; field_37098 SHIFTED_NOISE_CODEC + f Lnet/minecraft/class_6910$class_7270; comp_664 noise + f D comp_399 xzScale + f D comp_400 yScale + f Lnet/minecraft/class_6910; comp_398 shiftZ + f Lnet/minecraft/class_6910; comp_396 shiftX + f Lnet/minecraft/class_6910; comp_397 shiftY + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41090 method_41090 + p 0 instance + m ()D comp_399 xzScale + m ()Lnet/minecraft/class_6910; comp_397 shiftY + m ()Lnet/minecraft/class_6910; comp_396 shiftX + m ()Lnet/minecraft/class_6910; comp_398 shiftZ + m ()D comp_400 yScale + m ()Lnet/minecraft/class_6910$class_7270; comp_664 noise + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;DDLnet/minecraft/class_6910$class_7270;)V + p 1 shiftX + p 2 shiftY + p 3 shiftZ + p 4 xzScale + p 6 yScale + p 8 noise +c net/minecraft/class_6916$class_6943 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Positional + m (Lnet/minecraft/class_6910$class_6912;D)D method_40518 apply + p 1 pos + p 2 density + m ()Lnet/minecraft/class_6910; comp_379 input +c net/minecraft/class_6916$class_6944 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$WeirdScaledSampler + f Lnet/minecraft/class_7243; field_37064 CODEC_HOLDER + f Lcom/mojang/serialization/MapCodec; field_37065 WEIRD_SCALED_SAMPLER_CODEC + f Lnet/minecraft/class_6916$class_6944$class_7048; comp_408 rarityValueMapper + f Lnet/minecraft/class_6910$class_7270; comp_665 noise + f Lnet/minecraft/class_6910; comp_379 input + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41072 method_41072 + p 0 instance + m ()Lnet/minecraft/class_6910$class_7270; comp_665 noise + m ()Lnet/minecraft/class_6916$class_6944$class_7048; comp_408 rarityValueMapper + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910$class_7270;Lnet/minecraft/class_6916$class_6944$class_7048;)V + p 1 input + p 2 noise + p 3 rarityValueMapper +c net/minecraft/class_6916$class_6944$class_7048 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$WeirdScaledSampler$RarityValueMapper + f Lit/unimi/dsi/fastutil/doubles/Double2DoubleFunction; field_37071 scaleFunction + f Ljava/lang/String; field_37070 name + f D field_37072 maxValueMultiplier + f Lcom/mojang/serialization/Codec; field_37068 CODEC + f Lnet/minecraft/class_6916$class_6944$class_7048; field_37066 TYPE1 + f Lnet/minecraft/class_6916$class_6944$class_7048; field_37067 TYPE2 + m (Ljava/lang/String;ILjava/lang/String;Lit/unimi/dsi/fastutil/doubles/Double2DoubleFunction;D)V + p 3 name + p 4 scaleFunction + p 5 maxValueMultiplier +c net/minecraft/class_6916$class_6945 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$YClampedGradient + f Lcom/mojang/serialization/MapCodec; field_37075 Y_CLAMPED_GRADIENT_CODEC + f Lnet/minecraft/class_7243; field_37074 CODEC_HOLDER + f I comp_410 fromY + f I comp_411 toY + f D comp_412 fromValue + f D comp_413 toValue + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41076 method_41076 + p 0 instance + m ()I comp_410 fromY + m ()I comp_411 toY + m ()D comp_412 fromValue + m ()D comp_413 toValue + m (IIDD)V + p 1 fromY + p 2 toY + p 3 fromValue + p 5 toValue +c net/minecraft/class_6916$class_11599 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$FindTopSurface + f Lcom/mojang/serialization/MapCodec; field_61469 FIND_TOP_SURFACE_CODEC + f Lnet/minecraft/class_7243; field_61468 CODEC_HOLDER + f Lnet/minecraft/class_6910; comp_4446 density + f Lnet/minecraft/class_6910; comp_4447 upperBound + f I comp_4448 lowerBound + f I comp_4449 cellHeight + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_72684 method_72684 + p 0 instance + m ()I comp_4449 cellHeight + m ()I comp_4448 lowerBound + m ()Lnet/minecraft/class_6910; comp_4447 upperBound + m ()Lnet/minecraft/class_6910; comp_4446 density + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;II)V + p 1 density + p 2 upperBound + p 3 lowerBound + p 4 cellHeight +c net/minecraft/class_6916$class_7049 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Beardifier + f Lnet/minecraft/class_6916$class_7049; field_37076 INSTANCE +c net/minecraft/class_6916$class_6919 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$BlendAlpha + f Lnet/minecraft/class_7243; field_37079 CODEC + f Lnet/minecraft/class_6916$class_6919; field_36549 INSTANCE +c net/minecraft/class_6916$class_6917 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$BinaryOperation + f Lnet/minecraft/class_6916$class_7055$class_6918; comp_374 type + f Lnet/minecraft/class_6910; comp_375 argument1 + f Lnet/minecraft/class_6910; comp_376 argument2 + f D comp_377 minValue + f D comp_378 maxValue + m (Lnet/minecraft/class_6916$class_7055$class_6918;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;DD)V + p 1 type + p 2 argument1 + p 3 argument2 + p 4 minValue + p 6 maxValue +c net/minecraft/class_6916$class_7052 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Wrapper + m ()Lnet/minecraft/class_6910; comp_469 wrapped + m ()Lnet/minecraft/class_6916$class_6927$class_6928; comp_383 type +c net/minecraft/class_6916$class_7050 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$Beardifying + f Lnet/minecraft/class_7243; field_37078 CODEC_HOLDER +c net/minecraft/class_6916$class_7051 net/minecraft/world/gen/densityfunction/DensityFunctionTypes$RegistryEntryHolder + f Lnet/minecraft/class_6880; comp_468 function + m ()Lnet/minecraft/class_6880; comp_468 function + m (Lnet/minecraft/class_6880;)V + p 1 function +c net/minecraft/class_9194 net/minecraft/util/profiler/log/MultiValueDebugSampleLog + m ()I method_56663 getLength + m ()I method_56662 getDimension + m (II)J method_56660 get + p 1 index + p 2 dimension + m (I)J method_56659 get + p 1 index + m ()V method_56664 clear +c net/minecraft/class_9193 net/minecraft/util/profiler/log/SubscribableDebugSampleLog + f Lnet/minecraft/class_9192; field_48820 type + f Lnet/minecraft/class_12027; field_62908 tracker + m (ILnet/minecraft/class_12027;Lnet/minecraft/class_9192;)V + p 2 tracker + p 1 size + p 3 type + m (ILnet/minecraft/class_12027;Lnet/minecraft/class_9192;[J)V + p 2 tracker + p 3 type + p 4 defaults + p 1 size +c net/minecraft/class_9192 net/minecraft/util/profiler/log/DebugSampleType + f Lnet/minecraft/class_12017; field_62907 subscriptionType + f Lnet/minecraft/class_9192; field_48817 TICK_TIME + m (Ljava/lang/String;ILnet/minecraft/class_12017;)V + p 3 subscriptionType + m ()Lnet/minecraft/class_12017; method_74655 getSubscriptionType +c net/minecraft/class_9191 net/minecraft/util/profiler/MultiValueDebugSampleLogImpl + f [[J field_48814 multiValues + f I field_48815 start + f I field_48813 LOG_SIZE + f I field_48816 length + m (I)I method_56661 wrap + p 1 index + m (I)V + p 1 dimensions +c net/minecraft/class_9169 net/minecraft/entity/SpawnLocationTypes + f Lnet/minecraft/class_9168; field_48745 ON_GROUND + f Lnet/minecraft/class_9168; field_48744 IN_LAVA + f Lnet/minecraft/class_9168; field_48743 IN_WATER + f Lnet/minecraft/class_9168; field_48742 UNRESTRICTED + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;)Z method_56555 method_56555 + p 0 world + p 2 entityType + p 1 pos + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;)Z method_56554 method_56554 + p 1 pos + p 0 world + p 2 entityType + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;)Z method_56556 method_56556 + p 2 entityType + p 1 pos + p 0 world +c net/minecraft/class_9169$1 net/minecraft/entity/SpawnLocationTypes$1 + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;)Z method_56557 isClearForSpawn + p 1 world + p 2 pos + p 3 entityType +c net/minecraft/class_9168 net/minecraft/entity/SpawnLocation + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_56553 adjustPosition + p 1 world + p 2 pos + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_1299;)Z isSpawnPositionOk isSpawnPositionOk + p 2 pos + p 3 entityType + p 1 world +c net/minecraft/class_9160 net/minecraft/util/profiler/ServerTickType + f Lnet/minecraft/class_9160; field_48719 TICK_SERVER_METHOD + f Lnet/minecraft/class_9160; field_48718 FULL_TICK + f Lnet/minecraft/class_9160; field_48720 SCHEDULED_TASKS + f Lnet/minecraft/class_9160; field_48721 IDLE +c net/minecraft/class_9179 net/minecraft/network/packet/c2s/play/DebugSubscriptionRequestC2SPacket + f Lnet/minecraft/class_9139; field_48784 CODEC + f Lnet/minecraft/class_9139; field_62791 TYPE_SET_CODEC + f Ljava/util/Set; comp_4832 subscriptions + m (Lnet/minecraft/class_2792;)V method_56620 apply + m ()Ljava/util/Set; comp_4832 subscriptions + m (Ljava/util/Set;)V + p 1 subscriptions +c net/minecraft/class_9178 net/minecraft/network/packet/s2c/play/DebugSampleS2CPacket + f Lnet/minecraft/class_9139; field_48780 CODEC + f Lnet/minecraft/class_9192; comp_2269 debugSampleType + f [J comp_2268 sample + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_56611 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_56610 apply + m ()Lnet/minecraft/class_9192; comp_2269 debugSampleType + m ()[J comp_2268 sample + m ([JLnet/minecraft/class_9192;)V + p 1 sample + p 2 debugSampleType +c net/minecraft/class_9173 net/minecraft/client/network/ClientRegistries + f Lnet/minecraft/class_9173$class_9954; field_48768 tags + f Lnet/minecraft/class_9173$class_9174; field_48767 dynamicRegistries + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_2960; method_64904 method_64904 + p 0 entry + m (Ljava/util/Map;)V method_56586 putTags + p 1 tags + m (Ljava/util/Map;Lnet/minecraft/class_5321;Ljava/util/List;)V method_62158 method_62158 + p 2 entries + p 1 registryRef + m (Lnet/minecraft/class_128;Ljava/util/Map;Ljava/util/List;)V method_64903 addCrashReportSection + p 2 tags + p 0 crashReport + p 1 data + m (ZLnet/minecraft/class_5455$class_6890;Lnet/minecraft/class_5321;Lnet/minecraft/class_6864$class_5748;)V method_62161 method_62161 + p 2 registryRef + p 3 serialized + m (Lnet/minecraft/class_2378$class_10106;)Ljava/lang/String; method_64902 method_64902 + p 0 tag + m (Lnet/minecraft/class_6864$class_5748;Lnet/minecraft/class_5321;Lnet/minecraft/class_7655$class_9841;)Lnet/minecraft/class_7655$class_9841; method_62156 method_62156 + p 1 key + p 2 value + m (Lnet/minecraft/class_9173$class_9954;Lnet/minecraft/class_5455$class_6890;Z)V method_62157 loadTags + p 2 registryManager + p 1 tags + p 3 local + m (Ljava/util/Map$Entry;)Ljava/lang/String; method_64901 method_64901 + p 0 entry + m (Lnet/minecraft/class_5455$class_6890;Lnet/minecraft/class_5321;Lnet/minecraft/class_6864$class_5748;)Lnet/minecraft/class_2378$class_10106; method_62160 startTagReload + p 0 registryManager + p 1 registryRef + p 2 tags + m (Lnet/minecraft/class_2378$class_10106;)Lnet/minecraft/class_2960; method_64906 method_64906 + p 0 tag + m (Lnet/minecraft/class_5912;Lnet/minecraft/class_5455$class_6890;Z)Lnet/minecraft/class_5455$class_6890; method_56585 createRegistryManager + p 1 resourceFactory + p 2 registryManager + p 3 local + m (Lnet/minecraft/class_5321;Ljava/util/List;)V method_56583 putDynamicRegistry + p 2 entries + p 1 registryRef + m (Ljava/util/Map;ZLjava/util/List;Lnet/minecraft/class_5455$class_6890;Lnet/minecraft/class_5321;Lnet/minecraft/class_6864$class_5748;)V method_62159 method_62159 + p 5 tags + p 4 registryRef + m (Lnet/minecraft/class_5912;Lnet/minecraft/class_9173$class_9174;Z)Lnet/minecraft/class_5455; method_62155 createRegistryManager + p 2 dynamicRegistries + p 3 local + p 1 resourceFactory +c net/minecraft/class_9173$class_9174 net/minecraft/client/network/ClientRegistries$DynamicRegistries + f Ljava/util/Map; field_48769 dynamicRegistries + m (Lnet/minecraft/class_5321;)Ljava/util/List; method_56587 method_56587 + p 0 registries + m (Lnet/minecraft/class_5321;Ljava/util/List;)V method_56588 put + p 1 registryRef + p 2 entries +c net/minecraft/class_9173$class_9954 net/minecraft/client/network/ClientRegistries$Tags + f Ljava/util/Map; field_53034 tags + m (Ljava/util/function/BiConsumer;)V method_62163 forEach + p 1 consumer + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_6864$class_5748;)V method_62162 put + p 1 registryRef + p 2 tags +c net/minecraft/class_9171 net/minecraft/world/storage/RecreationStorage + f Ljava/nio/file/Path; field_48751 outputDirectory + f Lnet/minecraft/class_4698; field_48750 recreationWorker + m (Lnet/minecraft/class_9240;Ljava/nio/file/Path;Lnet/minecraft/class_9240;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;ZLnet/minecraft/class_4284;Ljava/util/function/Supplier;)V + p 7 dataFixTypes + p 8 updaterFactory + p 3 outputStorageKey + p 4 outputDirectory + p 5 dataFixer + p 6 dsync + p 1 storageKey + p 2 directory +c net/minecraft/class_3043 net/minecraft/server/command/EffectCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13607 GIVE_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13608 CLEAR_SPECIFIC_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13609 CLEAR_EVERYTHING_FAILED_EXCEPTION + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13229 register + p 0 dispatcher + p 1 registryAccess + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23650 method_23650 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13225 method_13225 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_13230 executeClear + p 1 targets + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13226 method_13226 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13232 method_13232 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_6880;)I method_13231 executeClear + p 2 statusEffect + p 0 source + p 1 targets + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13234 method_13234 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13233 method_13233 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48547 method_48547 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48546 method_48546 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_6880;Ljava/lang/Integer;IZ)I method_13227 executeGive + p 0 source + p 1 targets + p 2 statusEffect + p 3 seconds + p 4 amplifier + p 5 showParticles + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48545 method_48545 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13228 method_13228 + p 0 context +c net/minecraft/class_3048 net/minecraft/server/command/EnchantCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13630 FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13629 FAILED_ENTITY_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13633 FAILED_INCOMPATIBLE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13631 FAILED_ITEMLESS_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_13632 FAILED_LEVEL_EXCEPTION + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13244 method_13244 + p 0 itemName + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_6880;I)I method_13241 execute + p 3 level + p 2 enchantment + p 1 targets + p 0 source + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13242 method_13242 + p 0 entityName + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13245 method_13245 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13240 method_13240 + p 0 context + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13248 method_13248 + p 1 maxLevel + p 0 level + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13247 method_13247 + p 0 entityName + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13243 register + p 1 registryAccess + p 0 dispatcher +c net/minecraft/class_4379 net/minecraft/client/realms/gui/screen/RealmsBackupInfoScreen + f Lnet/minecraft/class_4867; field_19736 backup + f Lnet/minecraft/class_4379$class_4380; field_19738 backupInfoList + f Lnet/minecraft/class_2561; field_45972 TITLE + f Lnet/minecraft/class_2561; field_27937 UNKNOWN + f Lnet/minecraft/class_437; field_19734 parent + f Lnet/minecraft/class_8132; field_45973 layout + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_21143 getGameModeText + p 1 value + m (Lnet/minecraft/class_437;Lnet/minecraft/class_4867;)V + p 2 backup + p 1 parent + m (Lnet/minecraft/class_4185;)V method_25105 method_25105 + p 1 button + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_2561; method_21141 getValueText + p 2 value + p 1 key + m (Lnet/minecraft/class_4379;Lnet/minecraft/class_364;)V method_53513 method_53513 + p 1 child + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_21140 getDifficultyText + p 1 value + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_75755 getWorldTypeText + p 1 type +c net/minecraft/class_4379$class_5344 net/minecraft/client/realms/gui/screen/RealmsBackupInfoScreen$BackupInfoListEntry + f Lnet/minecraft/class_2561; field_44898 GAME_SERVER_VERSION_TEXT + f Lnet/minecraft/class_2561; field_44897 NAME_TEXT + f Lnet/minecraft/class_2561; field_44896 GAME_DIFFICULTY_TEXT + f Lnet/minecraft/class_2561; field_44895 TEMPLATE_NAME_TEXT + f Lnet/minecraft/class_2561; field_44905 UNDEFINED_TEXT + f Lnet/minecraft/class_2561; field_63829 valueText + f Lnet/minecraft/class_2561; field_44903 SEED_TEXT + f Lnet/minecraft/class_2561; field_63828 keyLabelText + f Lnet/minecraft/class_2561; field_44904 WORLD_TYPE_TEXT + f Lnet/minecraft/class_2561; field_44901 DESCRIPTION_TEXT + f Lnet/minecraft/class_2561; field_44902 GAME_MODE_TEXT + f Ljava/lang/String; field_25259 value + f Ljava/lang/String; field_25258 key + f Lnet/minecraft/class_2561; field_44899 UPLOADED_TEXT + f Lnet/minecraft/class_2561; field_44900 ENABLED_PACK_TEXT + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_51886 getKeyLabel + p 1 key + m (Lnet/minecraft/class_4379;Ljava/lang/String;Ljava/lang/String;)V + p 3 value + p 2 key +c net/minecraft/class_4379$class_4380 net/minecraft/client/realms/gui/screen/RealmsBackupInfoScreen$BackupInfoList + m (Lnet/minecraft/class_4379;Lnet/minecraft/class_310;)V + p 2 client + m (Ljava/lang/String;Ljava/lang/String;)V method_29336 method_29336 + p 1 key + p 2 value +c net/minecraft/class_3044 net/minecraft/world/gen/feature/FossilFeature + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_3341;)I method_34295 getEmptyCorners + p 0 world + p 1 box + m (Lnet/minecraft/class_5281;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/class_2338;)V method_34296 method_34296 + p 2 pos +c net/minecraft/class_3045 net/minecraft/server/command/MeCommand + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13237 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13238 method_13238 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_7471;)V method_43645 method_43645 + p 1 message +c net/minecraft/class_3047 net/minecraft/world/gen/feature/GlowstoneBlobFeature +c net/minecraft/class_3054 net/minecraft/server/command/ExperienceCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13638 SET_POINT_INVALID_EXCEPTION + m (Lnet/minecraft/class_2168;Ljava/util/Collection;ILnet/minecraft/class_3054$class_3055;)I method_13333 executeSet + p 1 targets + p 0 source + p 3 component + p 2 amount + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3222;Lnet/minecraft/class_3054$class_3055;)I method_13328 executeQuery + p 2 component + p 1 player + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13336 method_13336 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13337 method_13337 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13331 method_13331 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13332 method_13332 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13327 method_13327 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13338 method_13338 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13339 method_13339 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13329 method_13329 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;ILnet/minecraft/class_3054$class_3055;)I method_13326 executeAdd + p 1 targets + p 0 source + p 3 component + p 2 amount + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13330 register + p 0 dispatcher +c net/minecraft/class_3054$class_3055 net/minecraft/server/command/ExperienceCommand$Component + f Ljava/util/function/BiPredicate; field_13642 setter + f Ljava/lang/String; field_13643 name + f Ljava/util/function/ToIntFunction; field_13645 getter + f Ljava/util/function/BiConsumer; field_13639 adder + f Lnet/minecraft/class_3054$class_3055; field_13641 LEVELS + f Lnet/minecraft/class_3054$class_3055; field_13644 POINTS + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/BiConsumer;Ljava/util/function/BiPredicate;Ljava/util/function/ToIntFunction;)V + p 6 getter + p 5 setter + p 4 adder + p 3 name + m (Lnet/minecraft/class_3222;Ljava/lang/Integer;)Z method_13343 method_13343 + p 0 player + p 1 experience + m (Lnet/minecraft/class_3222;Ljava/lang/Integer;)Z method_13342 method_13342 + p 1 level + p 0 player + m (Lnet/minecraft/class_3222;)I method_13341 method_13341 + p 0 player + m (Lnet/minecraft/class_3222;)I method_13340 method_13340 + p 0 player +c net/minecraft/class_4384 net/minecraft/client/realms/gui/screen/RealmsBrokenWorldScreen + f Lorg/slf4j/Logger; field_19763 LOGGER + f Lnet/minecraft/class_437; field_19764 parent + f [Lnet/minecraft/class_2561; field_19769 message + f Lnet/minecraft/class_4877; field_20492 serverData + f I field_19770 left_x + f Lnet/minecraft/class_2960; field_45239 SLOT_FRAME_TEXTURE + f Ljava/util/List; field_19778 slotsThatHasBeenDownloaded + f I field_19779 animTick + f J field_19767 serverId + m (ILnet/minecraft/class_4185;)V method_25124 method_25124 + p 2 button + m ()Z method_21196 isMinigame + m (ILnet/minecraft/class_4185;)V method_25120 method_25120 + p 2 button + m (Lnet/minecraft/class_4185;)V method_25122 method_25122 + p 1 button + m (Lnet/minecraft/class_332;IIIIZLjava/lang/String;IJLjava/lang/String;Z)V method_21180 drawSlotFrame + p 12 empty + p 11 templateImage + p 8 slotId + p 7 slotName + p 9 templateId + p 4 mouseX + p 3 y + p 6 activeSlot + p 5 mouseY + p 2 x + p 1 context + m ()V method_21178 addButtons + m (J)V method_21181 fetchServerData + p 1 worldId + m (JLnet/minecraft/class_4341;)Lnet/minecraft/class_4877; method_72202 method_72202 + p 2 client + m ()V method_25123 play + m (I)V method_21187 downloadWorld + p 1 slotId + m (IZ)V method_25121 method_25121 + p 2 successful + m (Lnet/minecraft/class_4877;)V method_22101 method_22101 + p 1 serverData + m (Lnet/minecraft/class_437;JZ)V + p 2 serverId + p 1 parent + p 4 minigame + m (Lnet/minecraft/class_4355;)Lnet/minecraft/class_437; method_72203 createErrorScreen + p 1 error + m (I)I method_21179 getFramePositionX + p 1 i +c net/minecraft/class_4381 net/minecraft/client/realms/gui/screen/RealmsBackupScreen + f Lnet/minecraft/class_4185; field_19749 downloadButton + f Lnet/minecraft/class_2561; field_26474 NO_BACKUPS_TEXT + f Lnet/minecraft/class_4381$class_4382; field_49448 selectionList + f Lnet/minecraft/class_2561; field_26472 CHANGES_TOOLTIP + f Z field_19752 noBackups + f Ljava/lang/String; field_32119 UPLOADED + f Lnet/minecraft/class_8132; field_49449 layout + f Ljava/util/List; field_19744 backups + f Ljava/time/format/DateTimeFormatter; field_63972 FORMATTER + f Lorg/slf4j/Logger; field_19741 LOGGER + f Lnet/minecraft/class_4388; field_19743 parent + f I field_19748 slotId + f Lnet/minecraft/class_4877; field_19753 serverData + f Lnet/minecraft/class_2561; field_26473 BACKUPS_TEXT + f Lnet/minecraft/class_2561; field_51818 DOWNLOAD_TEXT + f Lnet/minecraft/class_2561; field_26471 RESTORE_TEXT + m ()V method_57661 startBackupFetcher + m (Lnet/minecraft/class_4185;)V method_25110 method_25110 + p 1 button + m (Lnet/minecraft/class_4185;)V method_25113 method_25113 + p 1 button + m (Lnet/minecraft/class_4388;Lnet/minecraft/class_4877;I)V + p 2 serverData + p 1 parent + p 3 slotId + m ()V method_21166 downloadClicked + m (Lnet/minecraft/class_8816;)V method_25111 method_25111 + p 1 button +c net/minecraft/class_4381$class_4382 net/minecraft/client/realms/gui/screen/RealmsBackupScreen$BackupObjectSelectionList +c net/minecraft/class_4381$class_4383 net/minecraft/client/realms/gui/screen/RealmsBackupScreen$BackupObjectSelectionListEntry + f Lnet/minecraft/class_4185; field_49451 changesButton + f Lnet/minecraft/class_4185; field_49452 restoreButton + f Lnet/minecraft/class_4867; field_19761 mBackup + f Ljava/util/List; field_44527 buttons + m (Lnet/minecraft/class_4381;Lnet/minecraft/class_4867;)V + p 2 backup + m (Ljava/lang/String;)V method_51241 addChange + p 1 metadataKey + m (Lnet/minecraft/class_4867;)V method_51239 updateChangeList + p 1 backup + m (Lnet/minecraft/class_8816;)V method_57673 method_57673 + p 1 popup + m (Lnet/minecraft/class_4185;)V method_57668 method_57668 + p 1 button + m ()V method_57674 restore + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_5250; method_75913 getNarration + p 1 messageSupplier + m (Lnet/minecraft/class_4185;)V method_57670 method_57670 + p 1 button +c net/minecraft/class_4381$1 net/minecraft/client/realms/gui/screen/RealmsBackupScreen$1 + m (Lnet/minecraft/class_4867;)Lnet/minecraft/class_4381$class_4383; method_64845 method_64845 + p 1 backup +c net/minecraft/class_3050 net/minecraft/server/command/ExecuteCommand + f I field_33390 MAX_BLOCKS + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13636 CONDITIONAL_FAIL_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13637 CONDITIONAL_FAIL_COUNT_EXCEPTION + f Lorg/slf4j/Logger; field_60332 LOGGER + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_13635 BLOCKS_TOOBIG_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_46642 INSTANTIATION_FAILURE_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/class_2520; method_13318 method_13318 + p 1 result + m (ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13322 method_13322 + p 1 context + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54263 method_54263 + p 0 function + p 1 message + m (ZLcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_58038 method_58038 + p 1 context + m (ZLcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13300 method_13300 + p 1 context + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_48067 method_48067 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13314 method_13314 + p 0 context + m (Lnet/minecraft/class_1297;)Ljava/util/Optional; method_48073 method_48073 + p 0 entity + m (Lnet/minecraft/class_3164$class_3167;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13264 method_13264 + p 2 context + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13271 register + p 1 commandRegistryAccess + p 0 dispatcher + m (Ljava/util/function/Function;)Lcom/mojang/brigadier/RedirectModifier; method_48066 createMultiEntityModifier + p 0 function + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3002;ZZ)Lnet/minecraft/class_2168; method_13297 executeStoreBossbar + p 0 source + p 1 bossBar + p 2 storeInValue + p 3 requestResult + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_48070 method_48070 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13291 method_13291 + p 0 context + m (ZLnet/minecraft/class_3050$class_3052;Lcom/mojang/brigadier/context/CommandContext;)I method_13270 method_13270 + p 2 context + m (ZLcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_58037 method_58037 + p 1 context + m (Lnet/minecraft/class_3162;Lnet/minecraft/class_2203$class_2209;)I method_13303 countPathMatches + p 1 path + p 0 object + m (Lcom/mojang/brigadier/tree/LiteralCommandNode;Lcom/mojang/brigadier/builder/LiteralArgumentBuilder;Z)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13289 addStoreArguments + p 1 builder + p 0 node + p 2 requestResult + m (II)Z method_55338 method_55338 + p 1 sourceScore + p 0 targetScore + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13268 method_13268 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;)Ljava/util/List; method_48062 method_48062 + p 1 entity + m (Lnet/minecraft/class_3164$class_3167;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13251 method_13251 + p 2 context + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_74974 method_74974 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/class_2520; method_13276 method_13276 + p 1 result + m (Ljava/util/Collection;Lnet/minecraft/class_269;Lnet/minecraft/class_266;ZZI)V method_13260 method_13260 + p 4 successful + p 5 returnValue + m (Lnet/minecraft/class_1297;)Ljava/util/stream/Stream; method_48060 method_48060 + p 0 entity + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13259 method_13259 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_58033 method_58033 + p 0 context + m (Lnet/minecraft/class_3164$class_3167;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13311 method_13311 + p 2 context + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_3050$class_9007;)Z method_13263 testScoreCondition + p 1 predicate + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13293 method_13293 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13281 method_13281 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_6880;)Z method_22829 testLootCondition + p 0 source + p 1 lootCondition + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13282 method_13282 + p 0 context + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_48059 isLoaded + p 0 world + p 1 pos + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_48076 method_48076 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13266 method_13266 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/class_2520; method_13275 method_13275 + p 1 result + m (II)Z method_13257 method_13257 + p 1 sourceScore + p 0 targetScore + m (II)Z method_13302 method_13302 + p 1 sourceScore + p 0 targetScore + m (ZZLnet/minecraft/class_3002;ZI)V method_13277 method_13277 + p 3 successful + p 4 returnValue + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/builder/ArgumentBuilder;ZLnet/minecraft/class_3050$class_3052;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13310 addConditionLogic + p 3 condition + p 2 positive + p 1 builder + p 0 root + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13316 method_13316 + p 0 maxCount + p 1 count + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13249 method_13249 + p 0 context + m (Lnet/minecraft/class_3050$class_3051;Lcom/mojang/brigadier/context/CommandContext;)I method_13305 method_13305 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13286 method_13286 + p 0 context + m (Lnet/minecraft/class_3162;ZLnet/minecraft/class_2203$class_2209;Ljava/util/function/IntFunction;ZI)V method_13294 method_13294 + p 5 returnValue + p 4 successful + m (ZZLcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13287 method_13287 + p 2 context + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13292 method_13292 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3162;Lnet/minecraft/class_2203$class_2209;Ljava/util/function/IntFunction;Z)Lnet/minecraft/class_2168; method_13265 executeStoreData + p 4 requestResult + p 2 path + p 3 nbtSetter + p 0 source + p 1 object + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13312 method_13312 + p 0 count + m (II)Z method_13250 method_13250 + p 1 sourceScore + p 0 targetScore + m (ZLcom/mojang/brigadier/context/CommandContext;)I method_13315 method_13315 + p 1 context + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Z)Ljava/util/OptionalInt; method_13261 testBlocksCondition + p 4 masked + p 1 start + p 0 world + p 3 destination + p 2 end + m (ZLnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13301 method_13301 + p 2 context + m (ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13269 method_13269 + p 1 context + m (Lnet/minecraft/class_1297;)Ljava/util/Optional; method_48065 method_48065 + p 0 entity + m (ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13285 method_13285 + p 1 context + m (Lnet/minecraft/class_1297;)Z method_48074 method_48074 + p 0 entity + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_47527 method_47527 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13321 method_13321 + p 0 context + m (Lnet/minecraft/class_3164$class_3167;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13256 method_13256 + p 2 context + m (Lnet/minecraft/class_3164$class_3167;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13284 method_13284 + p 2 context + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13295 method_13295 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_49419 method_49419 + p 0 context + m (ZLcom/mojang/brigadier/context/CommandContext;)I method_13273 method_13273 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13280 method_13280 + p 0 context + m (II)Z method_13299 method_13299 + p 1 sourceScore + p 0 targetScore + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_2096$class_2099;)Z method_74975 testStopwatchRange + p 0 context + p 1 range + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13288 method_13288 + p 0 context + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/builder/ArgumentBuilder;ZZ)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13320 addBlocksConditionLogic + p 3 masked + p 2 positive + p 1 builder + p 0 root + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_22830 method_22830 + p 0 context + m (Lnet/minecraft/class_3164$class_3167;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13309 method_13309 + p 2 context + m (Lnet/minecraft/class_8839;Ljava/util/List;Ljava/util/function/Function;Ljava/util/function/IntPredicate;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_2487;Lnet/minecraft/class_8855;Lnet/minecraft/class_10618;Lnet/minecraft/class_8936;)V method_54264 enqueueExecutions + p 3 predicate + p 2 functionSourceGetter + p 1 sources + p 0 baseSource + p 7 functionNamesGetter + p 6 control + p 5 args + p 4 contextChain + p 8 flags + m (Lcom/mojang/brigadier/context/CommandContext;Z)I method_13304 executeNegativeBlockCondition + p 0 context + p 1 masked + m (Lcom/mojang/brigadier/context/CommandContext;Z)Ljava/util/OptionalInt; method_13272 testBlocksCondition + p 0 context + p 1 masked + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_48064 method_48064 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_58036 method_58036 + p 0 context + m (Lnet/minecraft/class_1297;)Z method_48075 method_48075 + p 0 entity + m (Ljava/util/function/Function;)Lcom/mojang/brigadier/RedirectModifier; method_48063 createEntityModifier + p 0 function + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13252 method_13252 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_13308 method_13308 + p 0 context + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/builder/LiteralArgumentBuilder;)Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; method_48061 addOnArguments + p 1 builder + p 0 node + m (Lnet/minecraft/class_1297;)Ljava/util/Optional; method_48071 method_48071 + p 0 entity + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/builder/LiteralArgumentBuilder;ZLnet/minecraft/class_7157;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13298 addConditionArguments + p 3 commandRegistryAccess + p 0 root + p 1 argumentBuilder + p 2 positive + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_2168; method_48756 summon + p 1 entityType + p 0 source + m (ZLnet/minecraft/class_3050$class_3051;)Lcom/mojang/brigadier/Command; method_13323 getExistsConditionExecute + p 0 positive + p 1 condition + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_266;Z)Lnet/minecraft/class_2168; method_13290 executeStoreScore + p 3 requestResult + p 0 source + p 2 objective + p 1 targets + m (Ljava/lang/Iterable;Lnet/minecraft/class_9348;Ljava/util/function/Predicate;)I method_58035 countMatchingItems + p 0 entities + p 2 predicate + p 1 slotRange + m (ZLnet/minecraft/class_3050$class_3052;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13267 method_13267 + p 2 context + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/class_2520; method_13283 method_13283 + p 1 result + m (Ljava/util/List;Lnet/minecraft/class_8839;Lnet/minecraft/class_8855;)V method_54852 method_54852 + p 2 newControl + m (Lcom/mojang/brigadier/context/CommandContext;ZZ)Ljava/util/Collection; method_13319 getSourceOrEmptyForConditionFork + p 1 positive + p 2 value + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13262 method_13262 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/class_2520; method_13324 method_13324 + p 1 result + m (Lnet/minecraft/class_1297;)Ljava/util/Optional; method_48068 method_48068 + p 0 entity + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13274 method_13274 + p 0 context + m (Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/context/CommandContext;)I method_13317 method_13317 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/class_2520; method_13307 method_13307 + p 1 result + m (Lcom/mojang/brigadier/tree/CommandNode;ZLnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13258 method_13258 + p 3 builder + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;Lnet/minecraft/class_9348;Ljava/util/function/Predicate;)I method_58034 countMatchingItems + p 2 slotRange + p 3 predicate + p 0 source + p 1 pos + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_2096$class_2100;)Z method_13313 testScoreMatch + p 0 context + p 1 range + m (Lnet/minecraft/class_1297;)Ljava/util/Optional; method_48072 method_48072 + p 0 entity + m (Lcom/mojang/brigadier/context/CommandContext;Z)I method_13306 executePositiveBlockCondition + p 1 masked + p 0 context + m (Lcom/mojang/brigadier/tree/LiteralCommandNode;Lnet/minecraft/class_3164$class_3167;ZLcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13253 method_13253 + p 3 builderx + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2168; method_48757 method_48757 + p 0 context + m (Ljava/util/function/IntPredicate;Ljava/util/List;Lnet/minecraft/class_8839;ZI)V method_54853 method_54853 + p 3 successful + p 4 returnValue + m (Lnet/minecraft/class_1297;)Ljava/util/Optional; method_48332 method_48332 + p 0 entity + m (Lnet/minecraft/class_3050$class_3051;Lcom/mojang/brigadier/context/CommandContext;)I method_13296 method_13296 + p 1 context + m (Lnet/minecraft/class_1297;)Ljava/util/Optional; method_48069 method_48069 + p 0 entity +c net/minecraft/class_3050$class_8831 net/minecraft/server/command/ExecuteCommand$IfUnlessRedirector + f Ljava/util/function/IntPredicate; field_46643 predicate + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_54269 method_54269 + p 0 context + m (I)Z method_54271 method_54271 + p 0 result + m (Lnet/minecraft/class_2168;Ljava/util/List;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_8936;Lnet/minecraft/class_8855;)V method_54854 execute + m (I)Z method_54268 method_54268 + p 0 result + m (Z)V + p 1 success +c net/minecraft/class_3050$class_9007 net/minecraft/server/command/ExecuteCommand$ScoreComparisonPredicate + m (II)Z test test + p 1 targetScore + p 2 sourceScore +c net/minecraft/class_3050$class_3051 net/minecraft/server/command/ExecuteCommand$ExistsCondition + m (Lcom/mojang/brigadier/context/CommandContext;)I test test + p 1 context +c net/minecraft/class_3050$class_3052 net/minecraft/server/command/ExecuteCommand$Condition + m (Lcom/mojang/brigadier/context/CommandContext;)Z test test + p 1 context +c net/minecraft/class_3059 net/minecraft/world/gen/feature/HugeBrownMushroomFeature +c net/minecraft/class_4387 net/minecraft/client/realms/gui/screen/RealmsClientIncompatibleScreen + f Lnet/minecraft/class_8132; field_49453 layout + f Lnet/minecraft/class_2561; field_49454 GAME_VERSION + f Lnet/minecraft/class_2561; field_49455 UNSUPPORTED_SNAPSHOT_VERSION + f Lnet/minecraft/class_2561; field_26477 INCOMPATIBLE_TITLE + f Lnet/minecraft/class_437; field_19787 parent + f Lnet/minecraft/class_2561; field_49456 OUTDATED_STABLE_VERSION + m ()Lnet/minecraft/class_2561; method_57675 getErrorText + m (Lnet/minecraft/class_437;)V + p 1 parent +c net/minecraft/class_3057 net/minecraft/server/command/FillCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13650 FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_13649 TOO_BIG_EXCEPTION + f Lnet/minecraft/class_2247; field_13648 AIR_BLOCK_ARGUMENT + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2338; method_65998 method_65998 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3341;Lnet/minecraft/class_2247;Lnet/minecraft/class_3057$class_3058;Ljava/util/function/Predicate;Z)I method_13354 execute + p 1 range + p 2 block + p 0 source + p 5 strict + p 3 mode + p 4 filter + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/function/Predicate; method_65996 method_65996 + p 0 context + m (Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_3057$class_10557;Lcom/mojang/brigadier/context/CommandContext;)I method_65988 method_65988 + p 4 context + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13352 method_13352 + p 1 count + p 0 maxCount + m (Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_3057$class_10557;Lcom/mojang/brigadier/context/CommandContext;)I method_65994 method_65994 + p 4 context + m (Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_3057$class_10557;Lcom/mojang/brigadier/context/CommandContext;)I method_65992 method_65992 + p 4 context + m (Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_3057$class_10557;Lcom/mojang/brigadier/context/CommandContext;)I method_65990 method_65990 + p 4 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2338; method_65993 method_65993 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2247; method_65997 method_65997 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13347 register + p 0 dispatcher + p 1 commandRegistryAccess + m (Lnet/minecraft/class_7157;Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_3057$class_10557;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_65987 buildModeTree + p 0 registries + p 1 argumentBuilder + p 2 from + p 3 to + p 4 state + p 5 filter + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2247; method_65991 method_65991 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2338; method_65999 method_65999 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13346 method_13346 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2338; method_65995 method_65995 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_65986 method_65986 + p 0 context + m (Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_3057$class_10557;Lcom/mojang/brigadier/context/CommandContext;)I method_65985 method_65985 + p 4 context + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/function/Predicate; method_65989 method_65989 + p 0 context + m (Lnet/minecraft/class_2694;)Z method_13348 method_13348 + p 0 pos +c net/minecraft/class_3057$class_3058 net/minecraft/server/command/FillCommand$Mode + f Lnet/minecraft/class_3057$class_3120; field_13654 filter + f Lnet/minecraft/class_3057$class_10555; field_55587 postProcessor + f Lnet/minecraft/class_3057$class_3058; field_13655 REPLACE + f Lnet/minecraft/class_3057$class_3058; field_13656 HOLLOW + f Lnet/minecraft/class_3057$class_3058; field_13651 DESTROY + f Lnet/minecraft/class_3057$class_3058; field_13652 OUTLINE + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_66002 method_66002 + p 1 pos + p 0 world + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_2338;Lnet/minecraft/class_2247;Lnet/minecraft/class_3218;)Lnet/minecraft/class_2247; method_13358 method_13358 + p 3 world + p 2 block + p 1 pos + p 0 range + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_2338;Lnet/minecraft/class_2247;Lnet/minecraft/class_3218;)Lnet/minecraft/class_2247; method_13361 method_13361 + p 3 world + p 2 block + p 1 pos + p 0 range + m (Ljava/lang/String;ILnet/minecraft/class_3057$class_10555;Lnet/minecraft/class_3057$class_3120;)V + p 4 filter + p 3 postProcessor +c net/minecraft/class_3057$class_10555 net/minecraft/server/command/FillCommand$PostProcessor + f Lnet/minecraft/class_3057$class_10555; field_55585 EMPTY + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z affect affect + p 2 pos + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_66000 method_66000 + p 0 world + p 1 pos +c net/minecraft/class_3057$class_10557 net/minecraft/server/command/FillCommand$OptionalArgumentResolver +c net/minecraft/class_3057$class_3120 net/minecraft/server/command/FillCommand$Filter + f Lnet/minecraft/class_3057$class_3120; field_55586 IDENTITY + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_2338;Lnet/minecraft/class_2247;Lnet/minecraft/class_3218;)Lnet/minecraft/class_2247; filter filter + p 4 world + p 1 box + p 2 pos + p 3 block + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_2338;Lnet/minecraft/class_2247;Lnet/minecraft/class_3218;)Lnet/minecraft/class_2247; method_66001 method_66001 + p 2 block + p 1 pos + p 3 world + p 0 box +c net/minecraft/class_3057$class_11176 net/minecraft/server/command/FillCommand$Replaced + f Lnet/minecraft/class_2338; comp_4033 pos + f Lnet/minecraft/class_2680; comp_4034 oldState + m ()Lnet/minecraft/class_2338; comp_4033 pos + m ()Lnet/minecraft/class_2680; comp_4034 oldState + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 oldState +c net/minecraft/class_4389 net/minecraft/client/realms/gui/screen/RealmsConfirmScreen + f Lnet/minecraft/class_2561; field_19825 title2 + f Lnet/minecraft/class_2561; field_19821 title1 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; field_22692 callback + m (Lnet/minecraft/class_4185;)V method_25153 method_25153 + p 1 button + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 2 title1 + p 1 callback + p 3 title2 + m (Lnet/minecraft/class_4185;)V method_25152 method_25152 + p 1 button +c net/minecraft/class_4388 net/minecraft/client/realms/gui/screen/RealmsConfigureWorldScreen + f Ljava/util/Map; field_60244 regions + f Lnet/minecraft/class_8089; field_60246 tabNavigation + f Lnet/minecraft/class_4325; field_19792 parent + f Lnet/minecraft/class_8132; field_60247 layout + f Lnet/minecraft/class_11301; field_60243 regionDataList + f Z field_19806 stateChanged + f Lnet/minecraft/class_4877; field_20493 server + f J field_19794 serverId + f Lorg/slf4j/Logger; field_19790 LOGGER + f Lnet/minecraft/class_8088; field_60245 tabManager + f Lnet/minecraft/class_4185; field_60861 playButton + f Lnet/minecraft/class_2561; field_60248 PLAY_BUTTON_TEXT + m (Lnet/minecraft/class_4325;J)V + p 1 parent + p 2 serverId + m (Lnet/minecraft/class_4325;JLnet/minecraft/class_4877;Lnet/minecraft/class_11301;)V + p 5 regionDataList + p 4 server + p 2 serverId + p 1 parent + m ()I method_71214 getContentHeight + m (Lnet/minecraft/class_4185;)V method_25146 method_25146 + p 1 button + m (Z)V method_21218 openTheWorld + p 1 join + m (Lnet/minecraft/class_8087;)V method_71213 onTabUnloaded + p 1 tab + m (Lnet/minecraft/class_4185;)V method_25140 method_25140 + p 1 button + m (Lnet/minecraft/class_4877;)Lnet/minecraft/class_4388; method_71975 withServer + p 1 server + m (Lnet/minecraft/class_4388;Lnet/minecraft/class_364;)V method_71212 method_71212 + p 1 loadedWidget + m ()Lnet/minecraft/class_437; method_71216 getParent + m (Lnet/minecraft/class_4388;Lnet/minecraft/class_364;)V method_71208 method_71208 + p 1 unloadedWidget + m (Lnet/minecraft/class_11306;)V method_21208 saveSlotSettings + p 1 slot + m ()V method_21198 stateChanged + m ()Lnet/minecraft/class_4388; method_21219 getNewScreen + m ()I method_71215 getHeaderHeight + m (Lnet/minecraft/class_8087;)V method_71210 onTabLoaded + p 1 tab + m ()V method_71217 fetchRegionDataList + m (JLnet/minecraft/class_4341;)Lnet/minecraft/class_4877; method_72204 method_72204 + p 2 client + m (Lnet/minecraft/class_339;)V method_71209 method_71209 + p 1 child + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_11311;Lnet/minecraft/class_11303;)V method_21215 saveSettings + p 4 region + p 1 name + p 3 regionSelectionMethod + p 2 description + m ()V method_21217 closeTheWorld + m (J)V method_21204 fetchServerData + p 1 worldId + m ()V method_71203 refresh + m (Lnet/minecraft/class_4877;)V method_71207 method_71207 + p 1 server + m (Lnet/minecraft/class_4355;)Lnet/minecraft/class_437; method_72205 createErrorScreen + p 1 error + m ()V method_71974 updatePlayButton + m (Lnet/minecraft/class_11301;)V method_71206 method_71206 + p 1 regionDataList + m (JLjava/lang/String;)Z method_71205 invite + p 3 profileName + p 1 worldId +c net/minecraft/class_3020 net/minecraft/server/command/ClearCommand + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13488 FAILED_MULTIPLE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13487 FAILED_SINGLE_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13074 method_13074 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13075 method_13075 + p 0 playerName + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13073 method_13073 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13079 method_13079 + p 0 playerCount + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13080 method_13080 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13076 register + p 0 dispatcher + p 1 commandRegistryAccess + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Ljava/util/function/Predicate;I)I method_13077 execute + p 0 source + p 2 item + p 1 targets + p 3 maxCount + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13078 method_13078 + p 0 context + m (Lnet/minecraft/class_1799;)Z method_13083 method_13083 + p 0 stack + m (Lnet/minecraft/class_1799;)Z method_13081 method_13081 + p 0 stack + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Ljava/util/function/Predicate;)I method_58032 execute + p 2 item + p 1 targets + p 0 source +c net/minecraft/class_5683 net/minecraft/client/gui/tooltip/OrderedTextTooltipComponent + f Lnet/minecraft/class_5481; field_27997 text + m (Lnet/minecraft/class_5481;)V + p 1 text +c net/minecraft/class_4352 net/minecraft/client/realms/dto/ValueObject + m (Ljava/lang/reflect/Field;)Z method_25094 isStatic + p 0 f + m (Ljava/lang/reflect/Field;)Ljava/lang/String; method_25093 getName + p 0 f +c net/minecraft/class_3021 net/minecraft/world/gen/structure/EndCityStructure + f Lcom/mojang/serialization/MapCodec; field_37792 CODEC + m (Lnet/minecraft/class_6626;Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_3195$class_7149;)V method_39817 addPieces + p 1 collector + p 4 context + p 3 rotation + p 2 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2470;Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_6626;)V method_41655 method_41655 + p 4 collector +c net/minecraft/class_5682 net/minecraft/client/gui/tooltip/BundleTooltipComponent + f Lnet/minecraft/class_2960; field_52812 BUNDLE_PROGRESS_BAR_BORDER_TEXTURE + f Lnet/minecraft/class_2561; field_52823 BUNDLE_EMPTY_DESCRIPTION + f Lnet/minecraft/class_2561; field_52821 BUNDLE_FULL + f Lnet/minecraft/class_2960; field_54270 BUNDLE_SLOT_HIGHLIGHT_BACK_TEXTURE + f Lnet/minecraft/class_2960; field_54011 BUNDLE_PROGRESS_BAR_FILL_TEXTURE + f Lnet/minecraft/class_2960; field_54972 BUNDLE_SLOT_BACKGROUND_TEXTURE + f I field_52819 PROGRESS_BAR_WIDTH + f I field_52815 ROW_WIDTH + f I field_52813 SLOTS_PER_ROW + f Lnet/minecraft/class_2561; field_52822 BUNDLE_EMPTY + f Lnet/minecraft/class_2960; field_54271 BUNDLE_SLOT_HIGHLIGHT_FRONT_TEXTURE + f Lnet/minecraft/class_2960; field_54012 BUNDLE_PROGRESS_BAR_FULL_TEXTURE + f I field_52814 SLOT_DIMENSION + f Lnet/minecraft/class_9276; field_49537 bundleContents + m (Lnet/minecraft/class_327;IIIILnet/minecraft/class_332;)V method_62014 drawEmptyTooltip + p 1 textRenderer + p 2 x + p 5 height + p 6 context + p 3 y + p 4 width + m ()Lnet/minecraft/class_2561; method_62021 getProgressBarLabel + m (IIILnet/minecraft/class_327;Lnet/minecraft/class_332;)V method_62005 drawExtraItemsCount + p 0 x + p 1 y + p 4 drawContext + p 2 numExtra + p 3 textRenderer + m (IILnet/minecraft/class_327;Lnet/minecraft/class_332;)V method_62013 drawEmptyDescription + p 1 y + p 0 x + p 3 drawContext + p 2 textRenderer + m ()I method_52756 getHeightOfNonEmpty + m (IILnet/minecraft/class_327;Lnet/minecraft/class_332;)V method_62007 drawProgressBar + p 3 textRenderer + p 4 drawContext + p 1 x + p 2 y + m (Lnet/minecraft/class_327;)I method_62016 getHeightOfEmpty + p 0 textRenderer + m (Lnet/minecraft/class_327;)I method_62018 getDescriptionHeight + p 0 textRenderer + m (I)I method_63508 getXMargin + p 1 width + m ()I method_62015 getRowsHeight + m ()I method_33290 getRows + m (Ljava/util/List;I)Z method_62011 shouldDrawItem + p 1 itemIndex + p 0 items + m (Ljava/util/List;)I method_62010 numContentItemsAfter + p 1 items + m ()I method_62019 getNumVisibleSlots + m (I)Ljava/util/List; method_62004 firstStacksInContents + p 1 numberOfStacksShown + m (Lnet/minecraft/class_327;IIIILnet/minecraft/class_332;)V method_62017 drawNonEmptyTooltip + p 2 x + p 3 y + p 1 textRenderer + p 6 context + p 4 width + p 5 height + m (Lnet/minecraft/class_327;Lnet/minecraft/class_332;III)V method_62009 drawSelectedItemTooltip + p 2 drawContext + p 3 x + p 4 y + p 5 width + p 1 textRenderer + m ()Lnet/minecraft/class_2960; method_63509 getProgressBarFillTexture + m ()I method_62020 getProgressBarFill + m (ZII)Z method_62012 shouldDrawExtraItemsCount + p 2 row + p 1 column + p 0 hasMoreItems + m (IIILjava/util/List;ILnet/minecraft/class_327;Lnet/minecraft/class_332;)V method_62006 drawItem + p 7 drawContext + p 5 seed + p 6 textRenderer + p 3 y + p 4 stacks + p 1 index + p 2 x + m (Lnet/minecraft/class_9276;)V + p 1 bundleContents +c net/minecraft/class_4351 net/minecraft/client/realms/util/UploadProgress + f J field_54363 bytesPerSecond + f J field_54362 lastBytesWritten + f J field_54361 startTimeMs + f J field_19602 totalBytes + f J field_19601 bytesWritten + m ()Z method_64330 hasWrittenAllBytes + m ()V method_64332 tick + m ()Z method_64329 hasWrittenBytes + m (J)V method_64326 setTotalBytes + p 1 totalBytes + m ()J method_64333 getBytesPerSecond + m ()D method_64331 getFractionBytesWritten + m ()V method_76246 clear + m ()J method_64325 getTotalBytes + m (J)V method_64328 addBytesWritten + p 1 bytesWritten + m ()J method_64327 getBytesWritten +c net/minecraft/class_3026 net/minecraft/world/gen/feature/EndIslandFeature +c net/minecraft/class_4358 net/minecraft/client/realms/task/LongRunningTask + f Z field_46136 aborted + f I field_32132 MAX_RETRIES + f Lorg/slf4j/Logger; field_22731 LOGGER + m ()V method_21068 tick + m (Ljava/lang/Exception;)V method_53811 error + p 1 exception + m (J)V method_25287 pause + c Moved from RealmsTasks in 20w10a. + p 0 seconds + m (Lnet/minecraft/class_2561;)V method_21067 error + p 1 message + m (Lnet/minecraft/class_437;)V method_25289 setScreen + c Moved from Realms in 20w10a. + p 0 screen + m ()V method_21071 abortTask + m ()Z method_21065 aborted + m ()V method_21070 init + m ()Lnet/minecraft/class_2561; method_53808 getTitle + m (Lnet/minecraft/class_4355;)V method_53809 error + p 1 exception +c net/minecraft/class_5689 net/minecraft/block/PointedDripstoneBlock + f I field_33569 STALACTITE_FLOOR_SEARCH_RANGE + f Lnet/minecraft/class_2754; field_28050 VERTICAL_DIRECTION + f Lnet/minecraft/class_265; field_28057 BASE_SHAPE + f Lnet/minecraft/class_265; field_36340 DRIP_COLLISION_SHAPE + f Lnet/minecraft/class_265; field_28053 TIP_MERGE_SHAPE + f F field_31212 LAVA_DRIP_CHANCE + f F field_31204 MAX_HORIZONTAL_MODEL_OFFSET + f Lnet/minecraft/class_265; field_28058 FRUSTUM_SHAPE + f Lnet/minecraft/class_265; field_28054 UP_TIP_SHAPE + f Lnet/minecraft/class_2746; field_28052 WATERLOGGED + f F field_31211 WATER_DRIP_CHANCE + f D field_31203 DOWN_TIP_Y + f Lnet/minecraft/class_265; field_28055 DOWN_TIP_SHAPE + f Lnet/minecraft/class_2754; field_28051 THICKNESS + f I field_33568 MAX_STALACTITE_GROWTH + f Lnet/minecraft/class_265; field_28056 MIDDLE_SHAPE + f Lcom/mojang/serialization/MapCodec; field_46413 CODEC + m (Lnet/minecraft/class_2680;)Z method_33281 method_33281 + p 0 statex + m (Lnet/minecraft/class_5689$class_7381;)Lnet/minecraft/class_3611; method_43131 method_43131 + p 0 fluid + m (Lnet/minecraft/class_2680;Z)Z method_32784 isTip + p 0 state + p 1 allowMerged + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_33278 method_33278 + p 2 statex + p 1 posx + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)V method_36376 growMerged + p 0 state + p 1 world + p 2 pos + m (Lnet/minecraft/class_3611;)Z method_33273 isFluidLiquid + c {@return whether the provided {@code fluid} is liquid, namely lava or water} + p 0 fluid + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_5689$class_7381;)V method_33280 method_33280 + p 3 fluid + m (Lnet/minecraft/class_2680;)Z method_35283 isPointingUp + p 0 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_5691;)V method_36370 place + p 2 direction + p 3 thickness + p 0 world + p 1 pos + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_36374 canGrow + p 1 world + p 0 state + p 2 pos + m (Lnet/minecraft/class_2680;)Z method_32785 isPointingDown + p 0 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_36368 tryGrowStalagmite + p 1 pos + p 0 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;IZ)Lnet/minecraft/class_2338; method_32782 getTipPos + p 0 state + p 3 range + p 4 allowMerged + p 1 world + p 2 pos + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Z)Lnet/minecraft/class_5691; method_32770 getThickness + p 0 world + p 2 direction + p 1 pos + p 3 tryMerge + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_36372 isTip + p 1 direction + p 0 state + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_33275 method_33275 + p 1 posx + p 2 statex + m (Lnet/minecraft/class_3611;Lnet/minecraft/class_2680;)Z method_33274 method_33274 + p 1 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_3611;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2394; method_75744 getParticleEffect + p 1 fluid + p 2 pos + p 0 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_32778 isHeldByPointedDripstone + p 0 state + p 1 world + p 2 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_40017 method_40017 + p 2 state + p 1 posx + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_36375 tryGrow + p 1 world + p 0 state + p 3 random + p 2 pos + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_32781 canPlaceAtWithDirection + p 1 pos + p 0 world + p 2 direction + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_32899 createParticle + p 2 state + p 1 pos + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;I)Ljava/util/Optional; method_32776 getSupportingPos + p 0 world + p 1 pos + p 2 state + p 3 range + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;)Z method_32774 isPointedDripstoneFacingDirection + p 0 state + p 1 direction + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Ljava/util/Optional; method_33276 getFluid + p 1 pos + p 2 state + p 0 world + m (FLnet/minecraft/class_5689$class_7381;)Z method_33270 method_33270 + p 1 fluid + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_32771 spawnFallingBlock + p 1 world + p 2 pos + p 0 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350$class_2352;Ljava/util/function/BiPredicate;Ljava/util/function/Predicate;I)Ljava/util/Optional; method_33272 searchInDirection + p 5 range + p 4 stopPredicate + p 3 continuePredicate + p 2 direction + p 1 pos + p 0 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)Z method_36371 canGrow + p 0 dripstoneBlockState + p 1 waterState + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;F)V method_32772 dripTick + p 1 world + p 0 state + p 3 dripChance + p 2 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3611; method_32775 getDripFluid + p 0 world + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_40018 method_40018 + p 2 state + p 1 posx + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)V method_36369 tryGrow + p 1 pos + p 0 world + p 2 direction + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2350; method_32777 getDirectionToPlaceAt + p 0 world + p 2 direction + p 1 pos + m (ZLnet/minecraft/class_2680;)Z method_36373 method_36373 + p 1 statex + m (Lnet/minecraft/class_2680;)Z method_32783 canDrip + p 0 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_5689$class_7381;)V method_33277 method_33277 + p 3 fluid + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_5689$class_7381; method_33279 method_33279 + p 1 posx + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_3611;)Lnet/minecraft/class_2338; method_32769 getCauldronPos + p 2 fluid + p 1 pos + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_32767 getDripPos + p 0 world + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3611;Lnet/minecraft/class_2338;)V method_32768 createParticle + p 4 fluidPos + p 2 state + p 3 fluid + p 0 world + p 1 pos + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_40016 canDripThrough + c {@return whether it can drip through the block {@code block} at {@code pos}}\n\n@apiNote This is used for checking which block can obstruct the stalagmites\ngrowing or the cauldrons filling with liquids. + p 1 pos + p 0 world + p 2 state +c net/minecraft/class_5689$class_7381 net/minecraft/block/PointedDripstoneBlock$DrippingFluid + f Lnet/minecraft/class_3611; comp_710 fluid + f Lnet/minecraft/class_2680; comp_711 sourceState + f Lnet/minecraft/class_2338; comp_709 pos + m ()Lnet/minecraft/class_2338; comp_709 pos + m ()Lnet/minecraft/class_3611; comp_710 fluid + m ()Lnet/minecraft/class_2680; comp_711 sourceState + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3611;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 fluid + p 3 sourceState +c net/minecraft/class_3027 net/minecraft/server/command/DatapackCommand + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_59623 INVALID_NAME_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13505 ALREADY_DISABLED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_49775 CANNOT_DISABLE_FEATURE_EXCEPTION + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; field_13502 DISABLED_CONTAINERS_SUGGESTION_PROVIDER + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_59624 ALREADY_EXISTS_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13504 ALREADY_ENABLED_EXCEPTION + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; field_13506 ENABLED_CONTAINERS_SUGGESTION_PROVIDER + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_60960 INVALID_FULL_NAME_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13503 UNKNOWN_DATAPACK_EXCEPTION + f Lorg/slf4j/Logger; field_59622 LOGGER + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_39980 NO_FLAGS_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_59625 METADATA_ENCODE_FAILURE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_59626 IO_FAILURE_EXCEPTION + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_70599 method_70599 + p 0 name + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13130 method_13130 + p 0 context + m (Lnet/minecraft/class_3288;)Lnet/minecraft/class_2561; method_13132 method_13132 + p 0 profile + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13118 method_13118 + p 0 context + m (Lnet/minecraft/class_2168;)I method_13121 executeList + p 0 source + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13125 register + p 0 dispatcher + p 1 registryAccess + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13138 method_13138 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Z)Lnet/minecraft/class_3288; method_13127 getPackContainer + p 1 name + p 0 context + p 2 enable + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/class_3288;)V method_13133 method_13133 + p 2 profile + p 1 profiles + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13120 method_13120 + p 1 builder + p 0 context + m (Lnet/minecraft/class_2168;)I method_13126 executeListEnabled + p 0 source + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_72058 method_72058 + p 0 name + m (Ljava/util/List;Lnet/minecraft/class_3288;)V method_13139 method_13139 + p 1 profile + p 0 profiles + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13135 method_13135 + p 0 name + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13137 method_13137 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13131 method_13131 + p 0 name + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13141 method_13141 + p 0 context + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_3288;)Z method_45145 method_45145 + p 1 profile + m (Ljava/util/Collection;Ljava/lang/String;)Z method_29776 method_29776 + p 1 name + m (Lnet/minecraft/class_2168;Ljava/lang/String;Lnet/minecraft/class_2561;)I method_70598 executeCreate + p 1 id + p 0 source + p 2 description + m (Ljava/util/List;Lnet/minecraft/class_3288;)V method_13122 method_13122 + p 1 profile + p 0 profiles + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58142 method_58142 + p 0 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_70602 method_70602 + p 0 name + m (Lnet/minecraft/class_3288;)Lnet/minecraft/class_2561; method_13134 method_13134 + p 0 profile + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_70600 method_70600 + p 1 message + p 0 name + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3288;Lnet/minecraft/class_3027$class_3028;)I method_13114 executeEnable + p 2 packAdder + p 1 container + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13116 method_13116 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3288;)I method_13140 executeDisable + p 1 container + p 0 source + m (Lnet/minecraft/class_2168;)I method_13128 executeListAvailable + p 0 source + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45146 method_45146 + p 1 flags + p 0 name + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13115 method_13115 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13123 method_13123 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_70603 method_70603 + p 0 name + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13111 method_13111 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13136 method_13136 + p 0 context + p 1 builder + m (Ljava/util/Collection;Lnet/minecraft/class_7699;Lnet/minecraft/class_3288;)Z method_29477 method_29477 + p 2 profile + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/class_3288;)V method_13112 method_13112 + p 1 profiles + p 2 profile + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13117 method_13117 + p 0 name + m (Lcom/mojang/brigadier/context/CommandContext;)I method_70597 method_70597 + p 0 context +c net/minecraft/class_3027$class_3028 net/minecraft/server/command/DatapackCommand$PackAdder + m (Ljava/util/List;Lnet/minecraft/class_3288;)V apply apply + p 2 profile + p 1 profiles +c net/minecraft/class_5688 net/minecraft/block/Falling + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_1540;)V method_10127 onLanding + p 4 currentStateInPos + p 3 fallingBlockState + p 5 fallingBlockEntity + p 2 pos + p 1 world + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1282; method_32898 getDamageSource + p 1 attacker + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1540;)V method_10129 onDestroyedOnLanding + p 3 fallingBlockEntity + p 2 pos + p 1 world +c net/minecraft/class_3029 net/minecraft/world/gen/feature/EndGatewayFeature + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;Lnet/minecraft/class_3018;Lnet/minecraft/class_2338;)V method_18037 method_18037 + p 3 pos +c net/minecraft/class_4354 net/minecraft/client/realms/exception/RealmsHttpException + m (Ljava/lang/String;Ljava/lang/Exception;)V + p 2 e + p 1 s +c net/minecraft/class_5685 net/minecraft/client/particle/SnowflakeParticle + f Lnet/minecraft/class_4002; field_28003 spriteProvider + m (Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_4002;)V + p 1 world + p 2 x + p 12 velocityZ + p 14 spriteProvider + p 8 velocityX + p 10 velocityY + p 4 y + p 6 z +c net/minecraft/class_5685$class_5686 net/minecraft/client/particle/SnowflakeParticle$Factory + f Lnet/minecraft/class_4002; field_28004 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_32690 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_3023 net/minecraft/server/command/CloneCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13493 OVERLAP_EXCEPTION + f Lorg/slf4j/Logger; field_60331 LOGGER + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_13491 TOO_BIG_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13492 FAILED_EXCEPTION + f Ljava/util/function/Predicate; field_13490 IS_AIR_PREDICATE + m (Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;ZLcom/mojang/brigadier/context/CommandContext;)I method_65984 method_65984 + p 5 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_3218; method_48055 method_48055 + p 0 context + m (Lnet/minecraft/class_7157;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_65977 createDestinationArgs + p 1 currentWorldGetter + p 2 targetWorldGetter + p 0 registries + m (Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;ZLcom/mojang/brigadier/context/CommandContext;)I method_48049 method_48049 + p 5 context + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_3218;Ljava/lang/String;)Lnet/minecraft/class_3023$class_8010; method_48040 createDimensionalPos + p 0 context + p 1 world + p 2 name + m (Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;ZLcom/mojang/brigadier/context/CommandContext;)I method_48044 method_48044 + p 5 context + m (Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;ZLcom/mojang/brigadier/context/CommandContext;)I method_48036 method_48036 + p 5 context + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/function/Predicate; method_65975 method_65975 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/function/Predicate; method_65983 method_65983 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_3218; method_48057 method_48057 + p 0 context + m (Lnet/minecraft/class_2694;)Z method_65976 method_65976 + p 0 pos + m (Lnet/minecraft/class_7157;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;ZLcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_65978 appendMode + p 0 registries + p 1 beginPosGetter + p 2 endPosGetter + p 3 destinationPosGetter + p 4 strict + p 5 builder + m (Lnet/minecraft/class_10618;Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_3023$class_8010; method_65979 method_65979 + p 1 context + m (Lnet/minecraft/class_2694;)Z method_13096 method_13096 + p 0 pos + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13089 register + p 0 dispatcher + p 1 commandRegistryAccess + m (Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;ZLcom/mojang/brigadier/context/CommandContext;)I method_65973 method_65973 + p 4 context + m (Lnet/minecraft/class_7157;Lnet/minecraft/class_10618;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_48042 createSourceArgs + p 0 commandRegistryAccess + p 1 worldGetter + m (Lnet/minecraft/class_2694;)Z method_65981 method_65981 + p 0 pos + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13099 method_13099 + p 1 count + p 0 maxCount + m (Lnet/minecraft/class_10618;Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_3023$class_8010; method_65982 method_65982 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/function/Predicate; method_65980 method_65980 + p 0 context + m (Lnet/minecraft/class_10618;Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_3023$class_8010; method_65974 method_65974 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_3218; method_48056 method_48056 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3023$class_8010;Lnet/minecraft/class_3023$class_8010;Lnet/minecraft/class_3023$class_8010;Ljava/util/function/Predicate;Lnet/minecraft/class_3023$class_3025;Z)I method_13090 execute + p 1 begin + p 0 source + p 5 mode + p 4 filter + p 3 destination + p 2 end + p 6 strict + m (Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;Lnet/minecraft/class_10618;ZLcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_48035 createModeArgs + p 0 beginPosGetter + p 2 destinationPosGetter + p 1 endPosGetter + p 4 strict + p 3 filterGetter + p 5 builder + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_3218; method_48058 method_48058 + p 0 context +c net/minecraft/class_3023$class_9450 net/minecraft/server/command/CloneCommand$BlockEntityInfo + f Lnet/minecraft/class_2487; comp_2537 nbt + f Lnet/minecraft/class_9323; comp_2538 components + m ()Lnet/minecraft/class_2487; comp_2537 nbt + m ()Lnet/minecraft/class_9323; comp_2538 components + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_9323;)V + p 1 nbt + p 2 components +c net/minecraft/class_3023$class_3024 net/minecraft/server/command/CloneCommand$BlockInfo + f Lnet/minecraft/class_2338; comp_2539 pos + f Lnet/minecraft/class_2680; comp_2540 state + f Lnet/minecraft/class_2680; comp_4032 previousStateAtDestination + f Lnet/minecraft/class_3023$class_9450; comp_2541 blockEntityInfo + m ()Lnet/minecraft/class_2338; comp_2539 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3023$class_9450;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + p 3 blockEntityInfo + p 4 previousStateAtDestination + m ()Lnet/minecraft/class_2680; comp_2540 state + m ()Lnet/minecraft/class_3023$class_9450; comp_2541 blockEntityInfo + m ()Lnet/minecraft/class_2680; comp_4032 previousStateAtDestination +c net/minecraft/class_3023$class_3025 net/minecraft/server/command/CloneCommand$Mode + f Z field_13498 allowsOverlap + f Lnet/minecraft/class_3023$class_3025; field_13497 FORCE + f Lnet/minecraft/class_3023$class_3025; field_13499 NORMAL + f Lnet/minecraft/class_3023$class_3025; field_13500 MOVE + m (Ljava/lang/String;IZ)V + p 3 allowsOverlap + m ()Z method_13109 allowsOverlap +c net/minecraft/class_3023$class_8010 net/minecraft/server/command/CloneCommand$DimensionalPos + f Lnet/minecraft/class_2338; comp_1186 position + f Lnet/minecraft/class_3218; comp_1185 dimension + m ()Lnet/minecraft/class_2338; comp_1186 position + m ()Lnet/minecraft/class_3218; comp_1185 dimension + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V + p 1 dimension + p 2 position +c net/minecraft/class_5684 net/minecraft/client/gui/tooltip/TooltipComponent + m (Lnet/minecraft/class_327;)I method_32661 getHeight + p 1 textRenderer + m (Lnet/minecraft/class_327;)I method_32664 getWidth + p 1 textRenderer + m (Lnet/minecraft/class_332;Lnet/minecraft/class_327;II)V method_32665 drawText + p 1 context + p 3 x + p 2 textRenderer + p 4 y + m ()Z method_62003 isSticky + c Returns whether this tooltip component should be visible when the item that\nit is on is focused, regardless of whether the cursor is hovering over\nanother item. + m (Lnet/minecraft/class_5481;)Lnet/minecraft/class_5684; method_32662 of + p 0 text + m (Lnet/minecraft/class_5632;)Lnet/minecraft/class_5684; method_32663 of + p 0 tooltipData + m (Lnet/minecraft/class_327;IIIILnet/minecraft/class_332;)V method_32666 drawItems + p 4 width + p 3 y + p 2 x + p 1 textRenderer + p 6 context + p 5 height +c net/minecraft/class_4353 net/minecraft/client/realms/exception/RealmsDefaultUncaughtExceptionHandler + f Lorg/slf4j/Logger; field_19603 logger + m (Ljava/lang/Thread;Ljava/lang/Throwable;)V uncaughtException uncaughtException + p 2 e + p 1 t + m (Lorg/slf4j/Logger;)V + p 1 logger +c net/minecraft/class_5687 net/minecraft/server/command/ItemCommand + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_28019 NO_SUCH_SLOT_TARGET_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; field_28020 NOT_A_CONTAINER_SOURCE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_28021 NO_SUCH_SLOT_SOURCE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; field_28018 NOT_A_CONTAINER_TARGET_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_28022 NO_CHANGES_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_28023 KNOWN_ITEM_EXCEPTION + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_6880;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_32715 getStackWithModifier + p 1 lootFunction + p 0 source + p 2 stack + m (Lnet/minecraft/class_2168;Ljava/util/Collection;ILnet/minecraft/class_6880;)I method_32725 executeEntityModify + p 3 lootFunction + p 2 slot + p 1 targets + p 0 source + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32727 method_32727 + p 0 itemName + p 1 slot + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32728 method_32728 + p 2 z + p 1 y + p 0 x + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType;)Lnet/minecraft/class_1263; method_32723 getInventoryAtPos + p 2 exception + p 0 source + p 1 pos + m (Lnet/minecraft/class_2168;Ljava/util/Collection;ILnet/minecraft/class_1799;)I method_32724 executeEntityReplace + p 0 source + p 1 targets + p 2 slot + p 3 stack + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32733 method_32733 + p 0 slot + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32743 method_32743 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;ILnet/minecraft/class_2338;I)I method_32719 executeBlockCopyBlock + p 0 source + p 2 sourceSlot + p 1 sourcePos + p 4 slot + p 3 pos + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32741 method_32741 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32708 method_32708 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32738 method_32738 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32736 method_32736 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;ILnet/minecraft/class_2338;ILnet/minecraft/class_6880;)I method_32720 executeBlockCopyBlock + p 0 source + p 5 lootFunction + p 2 sourceSlot + p 1 sourcePos + p 4 slot + p 3 pos + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;ILjava/util/Collection;I)I method_32721 executeEntityCopyBlock + p 4 slot + p 3 targets + p 2 sourceSlot + p 1 sourcePos + p 0 source + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;ILnet/minecraft/class_6880;)I method_32718 executeBlockModify + p 1 pos + p 2 slot + p 3 lootFunction + p 0 source + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;I)Lnet/minecraft/class_1799; method_32716 getStackInSlotFromInventoryAt + p 2 slotId + p 0 source + p 1 pos + m (Lnet/minecraft/class_12260;I)Lnet/minecraft/class_1799; method_32706 getStackInSlot + p 1 slotId + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32730 method_32730 + p 0 slot + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;ILjava/util/Collection;ILnet/minecraft/class_6880;)I method_32722 executeEntityCopyBlock + p 4 slot + p 5 lootFunction + p 2 sourceSlot + p 3 targets + p 0 source + p 1 sourcePos + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32734 method_32734 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;ILnet/minecraft/class_2338;ILnet/minecraft/class_6880;)I method_32712 executeBlockCopyEntity + p 0 source + p 1 sourceEntity + p 2 sourceSlot + p 3 pos + p 4 slot + p 5 lootFunction + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32731 method_32731 + p 0 x + p 1 y + p 2 z + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32744 method_32744 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32732 method_32732 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32742 method_32742 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;ILjava/util/Collection;I)I method_32713 executeEntityCopyEntity + p 0 source + p 2 sourceSlot + p 1 sourceEntity + p 4 slot + p 3 targets + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32726 method_32726 + p 0 slot + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;ILjava/util/Collection;ILnet/minecraft/class_6880;)I method_32714 executeEntityCopyEntity + p 1 sourceEntity + p 0 source + p 3 targets + p 2 sourceSlot + p 5 lootFunction + p 4 slot + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32740 method_32740 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;ILnet/minecraft/class_1799;)I method_32717 executeBlockReplace + p 0 source + p 1 pos + p 2 slot + p 3 stack + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32729 method_32729 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32739 method_32739 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;ILnet/minecraft/class_2338;I)I method_32711 executeBlockCopyEntity + p 4 slot + p 0 source + p 1 sourceEntity + p 2 sourceSlot + p 3 pos + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32737 method_32737 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32735 method_32735 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_32707 register + p 0 dispatcher + p 1 commandRegistryAccess +c net/minecraft/class_4356 net/minecraft/client/realms/exception/RetryCallException + f I field_19608 delaySeconds + f I field_32118 DEFAULT_DELAY_SECONDS + m (II)V + p 2 httpResultCode + p 1 delaySeconds +c net/minecraft/class_4355 net/minecraft/client/realms/exception/RealmsServiceException + f Lnet/minecraft/class_4345; field_36320 error + m (Lnet/minecraft/class_4345;)V + p 1 error +c net/minecraft/class_3019 net/minecraft/server/command/BossBarCommand + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; field_13482 SUGGESTION_PROVIDER + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13483 SET_PLAYERS_UNCHANGED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13486 UNKNOWN_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13479 SET_VISIBILITY_UNCHANGED_HIDDEN_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13478 CREATE_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13485 SET_VISIBILITY_UNCHANGED_VISIBLE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13481 SET_STYLE_UNCHANGED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13477 SET_VALUE_UNCHANGED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13484 SET_MAX_UNCHANGED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13476 SET_NAME_UNCHANGED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13480 SET_COLOR_UNCHANGED_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13048 method_13048 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_3002; method_13054 getBossBar + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13032 method_13032 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13064 method_13064 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13052 method_13052 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13040 method_13040 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13072 method_13072 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13060 method_13060 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3002;I)I method_13066 setMaxValue + p 1 bossBar + p 0 source + p 2 value + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13039 method_13039 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13047 method_13047 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3002;Lnet/minecraft/class_1259$class_1261;)I method_13050 setStyle + p 0 source + p 1 bossBar + p 2 style + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13067 method_13067 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3002;)I method_13030 getPlayers + p 0 source + p 1 bossBar + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13055 method_13055 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13043 method_13043 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13051 method_13051 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3002;)I method_13065 getValue + p 1 bossBar + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13038 method_13038 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3002;)I method_13069 removeBossBar + p 1 bossBar + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13058 method_13058 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3002;Lnet/minecraft/class_2561;)I method_13071 setName + p 2 name + p 1 bossBar + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13046 method_13046 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13034 method_13034 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2960;Lnet/minecraft/class_2561;)I method_13049 addBossBar + p 2 displayName + p 0 source + p 1 name + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3002;)I method_13041 isVisible + p 0 source + p 1 bossBar + m (Lnet/minecraft/class_2168;)I method_13045 listBossBars + p 0 source + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3002;Lnet/minecraft/class_1259$class_1260;)I method_13028 setColor + p 2 color + p 1 bossBar + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13044 method_13044 + p 1 builder + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13042 method_13042 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3002;I)I method_13036 setValue + p 2 value + p 1 bossBar + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13062 method_13062 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13070 method_13070 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13029 method_13029 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3002;)I method_13056 getMaxValue + p 1 bossBar + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13037 method_13037 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13057 method_13057 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3002;Z)I method_13068 setVisible + p 0 source + p 2 visible + p 1 bossBar + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13053 register + p 1 registryAccess + p 0 dispatcher + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13063 method_13063 + p 0 name + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13033 method_13033 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13059 method_13059 + p 0 name + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13061 method_13061 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3002;Ljava/util/Collection;)I method_13031 setPlayers + p 2 players + p 0 source + p 1 bossBar +c net/minecraft/class_3030 net/minecraft/server/dedicated/command/DeOpCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13507 ALREADY_DEOPPED_EXCEPTION + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13143 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_13144 deop + p 0 source + p 1 targets + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13146 method_13146 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13145 method_13145 + p 1 builder + p 0 context +c net/minecraft/class_5691 net/minecraft/block/enums/Thickness + f Ljava/lang/String; field_28069 name + f Lnet/minecraft/class_5691; field_28065 TIP + f Lnet/minecraft/class_5691; field_28066 FRUSTUM + f Lnet/minecraft/class_5691; field_28067 MIDDLE + f Lnet/minecraft/class_5691; field_28068 BASE + f Lnet/minecraft/class_5691; field_28064 TIP_MERGE + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_3031 net/minecraft/world/gen/feature/Feature + f Lnet/minecraft/class_3168; field_13567 SEAGRASS + f Lcom/mojang/serialization/MapCodec; field_24837 codec + f Lnet/minecraft/class_3031; field_21219 FLOWER + f Lnet/minecraft/class_2953; field_13526 BONUS_CHEST + f Lnet/minecraft/class_3031; field_26361 NO_BONEMEAL_FLOWER + f Lnet/minecraft/class_3031; field_13539 FREEZE_TOP_LAYER + f Lnet/minecraft/class_3031; field_13535 KELP + f Lnet/minecraft/class_3031; field_22186 NETHER_FOREST_VEGETATION + f Lnet/minecraft/class_3031; field_22187 WEEPING_VINES + f Lnet/minecraft/class_3031; field_22185 HUGE_FUNGUS + f Lnet/minecraft/class_3031; field_22188 BASALT_PILLAR + f Lnet/minecraft/class_3031; field_13544 ICEBERG + f Lnet/minecraft/class_3031; field_13540 BAMBOO + f Lnet/minecraft/class_3031; field_13546 CORAL_CLAW + f Lnet/minecraft/class_3031; field_52289 END_PLATFORM + f Lnet/minecraft/class_3031; field_13555 SIMPLE_RANDOM_SELECTOR + f Lnet/minecraft/class_3031; field_13550 RANDOM_BOOLEAN_SELECTOR + f Lnet/minecraft/class_3031; field_13552 CHORUS_PLANT + f Lnet/minecraft/class_3031; field_13559 VINES + f Lnet/minecraft/class_3031; field_13560 BLUE_ICE + f Lnet/minecraft/class_3031; field_13568 GLOWSTONE_BLOB + f Lnet/minecraft/class_3031; field_13562 ICE_SPIKE + f Lnet/minecraft/class_3031; field_13564 END_GATEWAY + f Lnet/minecraft/class_3031; field_29250 VEGETATION_PATCH + f Lnet/minecraft/class_3031; field_29252 ROOT_SYSTEM + f Lnet/minecraft/class_3031; field_29251 WATERLOGGED_VEGETATION_PATCH + f Lnet/minecraft/class_3031; field_13571 HUGE_RED_MUSHROOM + f Lnet/minecraft/class_3031; field_13579 MONSTER_ROOM + f Lnet/minecraft/class_3031; field_13574 END_ISLAND + f Lnet/minecraft/class_3031; field_13573 LAKE + f Lnet/minecraft/class_3031; field_13575 SEA_PICKLE + f Lnet/minecraft/class_3031; field_57814 FALLEN_TREE + f Lnet/minecraft/class_3031; field_13584 FOREST_ROCK + f Lnet/minecraft/class_3031; field_13585 CORAL_MUSHROOM + f Lnet/minecraft/class_3031; field_13593 RANDOM_SELECTOR + f Lnet/minecraft/class_3031; field_13592 DESERT_WELL + f Lnet/minecraft/class_3031; field_13591 VOID_START_PLATFORM + f Lnet/minecraft/class_3031; field_33615 REPLACE_SINGLE_BLOCK + f Lnet/minecraft/class_3031; field_24134 TREE + f Lnet/minecraft/class_3031; field_28205 POINTED_DRIPSTONE + f Lnet/minecraft/class_3031; field_28204 LARGE_DRIPSTONE + f Lnet/minecraft/class_3031; field_28203 DRIPSTONE_CLUSTER + f Lnet/minecraft/class_3031; field_37708 SCULK_PATCH + f Lnet/minecraft/class_3031; field_13509 DISK + f Lnet/minecraft/class_3031; field_13517 ORE + f Lnet/minecraft/class_3031; field_13516 FOSSIL + f Lnet/minecraft/class_3031; field_13513 SPRING_FEATURE + f Lnet/minecraft/class_3031; field_13518 SIMPLE_BLOCK + f Lnet/minecraft/class_3031; field_13522 END_SPIKE + f Lnet/minecraft/class_3031; field_13525 CORAL_TREE + f Lnet/minecraft/class_3031; field_13531 HUGE_BROWN_MUSHROOM + f Lnet/minecraft/class_3031; field_27312 GEODE + f Lnet/minecraft/class_3031; field_21220 RANDOM_PATCH + f Lnet/minecraft/class_3031; field_23885 DELTA_FEATURE + f Lnet/minecraft/class_3031; field_23886 NETHERRACK_REPLACE_BLOBS + f Lnet/minecraft/class_3031; field_21221 BLOCK_PILE + f Lnet/minecraft/class_3031; field_23884 BASALT_COLUMNS + f Lnet/minecraft/class_3031; field_28428 MULTIFACE_GROWTH + f Lnet/minecraft/class_3031; field_23088 TWISTING_VINES + f Lnet/minecraft/class_3031; field_19201 FILL_LAYER + f Lnet/minecraft/class_3031; field_29061 SCATTERED_ORE + f Lnet/minecraft/class_3031; field_28849 UNDERWATER_MAGMA + f Lnet/minecraft/class_3031; field_35072 BLOCK_COLUMN + f Lnet/minecraft/class_3031; field_21590 NO_OP + m (Lnet/minecraft/class_6862;)Ljava/util/function/Predicate; method_36999 notInBlockTagPredicate + p 0 tag + m ()Lcom/mojang/serialization/MapCodec; method_28627 getCodec + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Ljava/util/function/Predicate;)V method_36998 setBlockStateIf + p 1 world + p 3 state + p 2 pos + p 4 predicate + m (Lnet/minecraft/class_6862;Lnet/minecraft/class_2680;)Z method_36997 method_36997 + p 1 state + m (Ljava/util/function/Function;Lnet/minecraft/class_2338;Ljava/util/function/Predicate;)Z method_33982 testAdjacentStates + p 1 pos + p 0 posToState + p 2 predicate + m (Lnet/minecraft/class_2680;)Z method_23396 isSoil + p 0 state + m (Lnet/minecraft/class_2680;)Z method_23395 isStone + p 0 state + m (Lnet/minecraft/class_1945;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_13153 setBlockState + p 1 world + p 2 pos + p 3 state + m (Ljava/lang/String;Lnet/minecraft/class_3031;)Lnet/minecraft/class_3031; method_13150 register + p 0 name + p 1 feature + m (Ljava/util/function/Function;Lnet/minecraft/class_2338;)Z method_33981 isExposedToAir + p 1 pos + p 0 posToState + m (Lnet/minecraft/class_3037;Lnet/minecraft/class_5281;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Z method_40163 generateIfValid + p 1 config + p 5 pos + p 4 random + p 3 chunkGenerator + p 2 world + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)V method_37256 markBlocksAboveForPostProcessing + p 2 pos + p 1 world + m (Lcom/mojang/serialization/Codec;)V + p 1 configCodec + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_2338;)Z method_27368 isSoil + p 0 world + p 1 pos + m (Lnet/minecraft/class_5821;)Z method_13151 generate + p 1 context + m (Lnet/minecraft/class_3037;)Lnet/minecraft/class_2975; method_28629 method_28629 + p 1 config +c net/minecraft/class_3032 net/minecraft/server/command/DebugCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13596 ALREADY_RUNNING_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_46638 NO_RECURSION_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13597 NOT_RUNNING_EXCEPTION + f Lorg/slf4j/Logger; field_20283 LOGGER + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_47151 NO_RETURN_RUN_EXCEPTION + m (Lnet/minecraft/class_2168;)I method_13159 executeStart + p 0 source + m (Lnet/minecraft/class_2168;)I method_13158 executeStop + p 0 source + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13156 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36353 method_36353 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13154 method_13154 + p 0 context +c net/minecraft/class_3032$class_6347 net/minecraft/server/command/DebugCommand$Tracer + f Ljava/io/PrintWriter; field_33551 writer + f I field_33550 MARGIN + f I field_33552 lastIndentWidth + f Z field_33553 expectsCommandResult + m (Ljava/io/PrintWriter;)V + p 1 writer + m (I)V method_36355 writeIndent + p 1 width + m ()V method_36357 writeNewLine + m (I)V method_36356 writeIndentWithoutRememberingWidth + p 1 width +c net/minecraft/class_3032$class_8829 net/minecraft/server/command/DebugCommand$Command + m (Lnet/minecraft/class_2168;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_8936;Lnet/minecraft/class_8855;)V method_54256 executeInner + m (Ljava/util/Collection;Lnet/minecraft/class_2168;ILjava/lang/String;Lnet/minecraft/class_8854;Lnet/minecraft/class_8937;)V method_54257 method_54257 + p 4 context + p 5 frame +c net/minecraft/class_3032$class_8829$1 net/minecraft/server/command/DebugCommand$Command$1 + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_8854;Lnet/minecraft/class_8937;)V method_54260 execute +c net/minecraft/class_3037 net/minecraft/world/gen/feature/FeatureConfig + f Lnet/minecraft/class_3111; field_13603 DEFAULT + m ()Ljava/util/stream/Stream; method_30649 getDecoratedFeatures +c net/minecraft/class_5699 net/minecraft/util/dynamic/Codecs + c A few extensions for {@link Codec} or {@link DynamicOps}.\n\n

It has a few methods to create checkers for {@code Codec.flatXmap} to add\nextra value validation to encoding and decoding. See the implementation of\n{@link #nonEmptyList(Codec)}. + f I field_64618 MAX_PROFILE_PROPERTY_VALUE_LENGTH + f Lcom/mojang/serialization/Codec; field_59993 VECTOR_2F + f Lcom/mojang/serialization/Codec; field_62069 GAME_PROFILE_CODEC + f Lcom/mojang/serialization/Codec; field_46236 BASIC_OBJECT + c A passthrough codec for a basic object. See {@link RuntimeOps} for\ntypes of objects this can "serialize".\n\n@see RuntimeOps + f Lcom/mojang/serialization/Codec; field_39273 BASE_64 + f I field_64619 MAX_PROFILE_PROPERTY_SIGNATURE_LENGTH + f Lcom/mojang/serialization/Codec; field_55623 CHAT_TEXT + f Lcom/mojang/serialization/Codec; field_40721 JSON_ELEMENT + f Lcom/mojang/serialization/Codec; field_39274 TAG_ENTRY_ID + f Lcom/mojang/serialization/Codec; field_37408 REGULAR_EXPRESSION + f Lcom/mojang/serialization/Codec; field_55622 URI + f Lcom/mojang/serialization/Codec; field_51365 ARGB + f Lcom/mojang/serialization/Codec; field_46165 ESCAPED_STRING + f Lcom/mojang/serialization/Codec; field_53754 NON_NEGATIVE_FLOAT + f Lcom/mojang/serialization/Codec; field_60980 NBT_ELEMENT + f Lcom/mojang/serialization/Codec; field_33442 POSITIVE_INT + f I field_64620 MAX_PROFILE_PROPERTIES_LENGTH + f Lcom/mojang/serialization/Codec; field_63682 HEX_RGB + f Lcom/mojang/serialization/Codec; field_42265 QUATERNION_F + f I field_64617 MAX_PROFILE_PROPERTY_NAME_LENGTH + f Lcom/mojang/serialization/Codec; field_59994 VECTOR_3I + f Lcom/mojang/serialization/Codec; field_49012 UNSIGNED_BYTE + f Lcom/mojang/serialization/Codec; field_51364 VECTOR_4F + f Lcom/mojang/serialization/Codec; field_54067 RGB + f Lcom/mojang/serialization/Codec; field_63263 NON_NEGATIVE_LONG + f Lcom/mojang/serialization/Codec; field_33441 NON_NEGATIVE_INT + f Lcom/mojang/serialization/Codec; field_40727 GAME_PROFILE_PROPERTY + f Lcom/mojang/serialization/Codec; field_63683 HEX_ARGB + f Lcom/mojang/serialization/Codec; field_39042 INSTANT + f Lcom/mojang/serialization/Codec; field_41759 NON_EMPTY_STRING + f Lcom/mojang/serialization/Codec; field_42266 AXIS_ANGLE_4F + f Lcom/mojang/serialization/Codec; field_34387 POSITIVE_FLOAT + f Ljava/lang/String; field_63681 HEX_PREFIX + f Ljava/util/function/Function; field_39395 OPTIONAL_OF_LONG_TO_OPTIONAL_LONG + f Lcom/mojang/serialization/Codec; field_49183 PLAYER_NAME + f Lcom/mojang/serialization/Codec; field_63264 POSITIVE_LONG + f Lcom/mojang/serialization/Codec; field_42267 ROTATION + f Lcom/mojang/serialization/Codec; field_40725 GAME_PROFILE_PROPERTY_MAP + f Ljava/util/function/Function; field_39396 OPTIONAL_LONG_TO_OPTIONAL_OF_LONG + f Lcom/mojang/serialization/Codec; field_44703 CODEPOINT + f Lcom/mojang/serialization/Codec; field_42268 MATRIX_4F + f Lcom/mojang/serialization/Codec; field_45075 IDENTIFIER_PATH + f Lcom/mojang/serialization/Codec; field_40724 BIT_SET + f Lcom/mojang/serialization/Codec; field_40723 VECTOR_3F + f Lcom/mojang/serialization/MapCodec; field_62070 INT_STREAM_UUID_GAME_PROFILE_CODEC + m (Ljava/util/function/BiFunction;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_37937 method_37937 + p 1 object + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_46389 method_46389 + p 0 list + m (I)Lcom/mojang/serialization/Codec; method_75614 hexColor + p 0 hexDigits + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/Dynamic; method_53920 method_53920 + p 1 object + m (FFLjava/util/function/Function;Ljava/lang/Float;)Lcom/mojang/serialization/DataResult; method_48108 method_48108 + p 3 value + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_43959 method_43959 + p 0 tagEntry + m (FFLjava/util/function/Function;Ljava/lang/Float;)Lcom/mojang/serialization/DataResult; method_62814 method_62814 + p 3 value + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_65320 listOrSingle + p 1 listCodec + p 0 entryCodec + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_65313 listOrSingle + p 0 entryCodec + m (Ljava/lang/String;Ljava/lang/String;Ljava/util/Optional;)Lcom/mojang/authlib/properties/Property; method_46381 method_46381 + p 1 value + p 0 key + p 2 signature + m (Ljava/util/List;)Lorg/joml/Vector2f; method_46391 method_46391 + p 0 listx + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Dynamic;)Ljava/lang/Object; method_53919 method_53919 + p 1 dynamic + m (Lorg/joml/Quaternionfc;)Ljava/util/List; method_75058 method_75058 + p 0 quaternion + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_40113 nonEmptyEntryList + p 0 originalCodec + m (Lcom/google/common/collect/ImmutableMultimap$Builder;Ljava/util/Map;)V method_46376 method_46376 + p 1 map + m (Ljava/util/function/Function;Ljava/util/Collection;)Lcom/mojang/serialization/DataResult; method_40111 method_40111 + p 1 collection + m (Ljava/util/stream/LongStream;)Ljava/util/BitSet; method_46384 method_46384 + p 0 stream + m ([B)Ljava/lang/String; method_43960 method_43960 + p 0 data + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_70976 method_70976 + p 0 list + m (Ljava/lang/Long;)Ljava/lang/String; method_75064 method_75064 + p 0 v + m (Lorg/joml/Matrix4fc;)Ljava/util/List; method_48769 method_48769 + p 0 matrix + m (Ljava/time/format/DateTimeFormatter;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_53701 method_53701 + p 1 string + m (Ljava/lang/Integer;)Ljava/lang/String; method_36242 method_36242 + p 0 v + m (FFLjava/lang/Float;)Ljava/lang/String; method_65312 method_65312 + p 2 value + m (Lcom/mojang/datafixers/util/Either;)Ljava/util/List; method_65316 method_65316 + p 0 either + m (Ljava/util/List;)Lorg/joml/Quaternionf; method_59552 method_59552 + p 0 listx + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Lcom/mojang/datafixers/util/Pair; method_37943 method_37943 + p 2 pair + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; method_56942 withLifecycle + p 1 lifecycleGetter + p 0 originalCodec + m (Ljava/util/function/ToIntFunction;Ljava/util/function/IntFunction;I)Lcom/mojang/serialization/Codec; method_39511 rawIdChecked + p 2 errorRawId + p 1 rawIdToElement + p 0 elementToRawId + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_39512 orCompressed + p 1 compressedCodec + p 0 uncompressedCodec + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_44167 optionalLong + p 0 codec + m (IILjava/util/function/Function;)Lcom/mojang/serialization/Codec; method_36241 rangedInt + p 2 messageFactory + p 1 max + p 0 min + m (FFLjava/util/function/Function;)Lcom/mojang/serialization/Codec; method_37928 rangedFloat + p 0 minExclusive + p 1 maxInclusive + p 2 messageFactory + m (Ljava/util/List;)Lorg/joml/Vector4f; method_70975 method_70975 + p 0 listx + m (Ljava/lang/Float;)Ljava/lang/String; method_37932 method_37932 + p 0 v + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_52460 method_52460 + p 0 path + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_57156 method_57156 + p 0 name + m (Ljava/util/function/BiFunction;Lcom/mojang/datafixers/util/Either;)Lcom/mojang/serialization/DataResult; method_37935 method_37935 + p 1 either + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; method_65314 idChecked + p 0 idCodec + p 2 elementToId + p 1 idToElement + m (IILjava/util/function/Function;Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_48111 method_48111 + p 3 value + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/util/List; method_37944 method_37944 + p 2 pair + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; method_39504 withLifecycle + p 0 originalCodec + p 2 lifecycleGetter + p 1 entryLifecycleGetter + m (Ljava/util/function/IntFunction;Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_39509 method_39509 + p 1 rawId + m (Ljava/time/format/DateTimeFormatter;)Lcom/mojang/serialization/Codec; method_53700 formattedTime + p 0 formatter + m (Lcom/mojang/datafixers/util/Either;)Lcom/mojang/authlib/properties/PropertyMap; method_46377 method_46377 + p 0 either + m (Ljava/util/function/Function;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_65319 method_65319 + p 1 id + m (Lorg/joml/AxisAngle4f;)Ljava/lang/Float; method_48772 method_48772 + p 0 axisAngle + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_53826 method_53826 + p 0 string + m (Ljava/util/Map;)Lcom/mojang/serialization/DataResult; method_63569 method_63569 + p 0 map + m (IJLjava/lang/String;)Lcom/mojang/serialization/DataResult; method_75615 method_75615 + p 3 value + m (Ljava/util/List;)Lorg/joml/Vector3i; method_70977 method_70977 + p 0 listx + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_48771 method_48771 + p 0 list + m (JJLjava/util/function/Function;Ljava/lang/Long;)Lcom/mojang/serialization/DataResult; method_75055 method_75055 + p 5 value + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_70978 method_70978 + p 0 list + m (Ljava/util/OptionalLong;)Ljava/util/Optional; method_44169 method_44169 + p 0 optionalLong + m (Lcom/google/common/collect/ImmutableMultimap$Builder;Ljava/lang/String;Ljava/util/List;)V method_46374 method_46374 + p 2 values + p 1 key + m (JJLjava/util/function/Function;)Lcom/mojang/serialization/Codec; method_75054 rangedLong + p 4 messageFactory + p 0 min + p 2 max + m (Lorg/joml/Vector2fc;)Ljava/util/List; method_75059 method_75059 + p 0 vec + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48775 method_48775 + p 0 instance + m (Ljava/util/List;)Lorg/joml/Vector3f; method_70979 method_70979 + p 0 listx + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/MapCodec; method_73295 createGameProfileCodec + p 0 uuidCodec + m (FFLjava/util/function/Function;)Lcom/mojang/serialization/Codec; method_62812 rangedInclusiveFloat + p 0 minInclusive + p 1 maxInclusive + p 2 messageFactory + m (Ljava/util/List;)Lcom/mojang/datafixers/util/Either; method_65318 method_65318 + p 0 list + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_57155 optional + p 0 codec + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_66033 method_66033 + p 0 value + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_48115 method_48115 + p 0 list + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Lcom/mojang/datafixers/util/Either; method_37939 method_37939 + p 2 pair + m (Ljava/util/function/Function;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_67588 method_67588 + p 1 id + m (Ljava/lang/Float;)Ljava/lang/String; method_62813 method_62813 + p 0 v + m (ILjava/lang/Integer;)Ljava/lang/String; method_75616 method_75616 + p 1 value + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_51494 method_51494 + p 0 string + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_5699$class_8783; method_53703 strictUnboundedMap + p 1 elementCodec + p 0 keyCodec + m (Lcom/mojang/serialization/Codec;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_37930 method_37930 + p 3 instance + m (Ljava/util/function/BiFunction;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_37936 method_37936 + p 1 pair + m (Ljava/util/function/BiFunction;Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_37942 method_37942 + p 1 listx + m (Lcom/google/common/collect/ImmutableMultimap$Builder;Ljava/util/List;)V method_46375 method_46375 + p 1 properties + m (Ljava/lang/Object;)Lcom/mojang/serialization/Codec$ResultFunction; method_39028 orElsePartial + p 0 object + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_48114 method_48114 + p 0 string + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_36973 nonEmptyList + p 0 originalCodec + m (Ljava/util/function/BiFunction;Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_37938 method_37938 + p 1 list + m (FF)Lcom/mojang/serialization/Codec; method_65311 rangedInclusiveFloat + p 1 maxInclusive + p 0 minInclusive + m (II)Lcom/mojang/serialization/Codec; method_48766 rangedInt + p 1 max + p 0 min + m (Ljava/lang/Integer;)Ljava/lang/String; method_36246 method_36246 + p 0 v + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_66032 method_66032 + p 0 s + m (Lcom/mojang/serialization/Codec;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/BiFunction;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; method_37931 createCodecForPairObject + p 0 codec + p 1 leftFieldName + p 2 rightFieldName + p 3 combineFunction + p 4 leftFunction + p 5 rightFunction + m (Ljava/lang/Long;)Ljava/lang/String; method_75056 method_75056 + p 0 v + m (IILjava/lang/Integer;)Ljava/lang/String; method_48767 method_48767 + p 2 value + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_53921 orCompressed + p 1 compressedCodec + p 0 uncompressedCodec + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; method_54941 parameters + p 3 typeGetter + p 4 parametersCodecGetter + p 1 parametersKey + p 2 typeCodec + p 0 typeKey + m (Lcom/mojang/authlib/properties/Property;)Ljava/util/Optional; method_46372 method_46372 + p 0 property + m (Lcom/mojang/serialization/Codec;I)Lcom/mojang/serialization/Codec; method_57153 map + p 0 codec + p 1 maxLength + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5699$class_7476; method_43961 method_43961 + p 0 id + m (IILjava/lang/Long;)Ljava/lang/String; method_75053 method_75053 + p 2 value + m (Lorg/joml/Vector3fc;)Ljava/util/List; method_75065 method_75065 + p 0 vec + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46388 method_46388 + p 0 instance + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_59551 method_59551 + p 0 list + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_41302 method_41302 + p 0 pattern + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Codec; method_53918 fromOps + p 0 ops + m (Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_56907 method_56907 + p 0 value + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73294 method_73294 + p 1 instance + m (Lorg/joml/Vector4fc;)Ljava/util/List; method_75066 method_75066 + p 0 vec + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_42114 exceptionCatching + p 0 codec + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_53058 object2BooleanMap + p 0 keyCodec + m (Lorg/joml/Vector3ic;)Ljava/util/List; method_75061 method_75061 + p 0 vec + m (Lcom/mojang/authlib/properties/PropertyMap;)Lcom/mojang/datafixers/util/Either; method_46373 method_46373 + p 0 properties + m (Lnet/minecraft/class_6885;)Lcom/mojang/serialization/DataResult; method_48113 method_48113 + p 0 entryList + m (Lorg/joml/Vector3fc;)Ljava/lang/Integer; method_75060 method_75060 + p 0 vec + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_63572 nonEmptyMap + p 0 originalCodec + m (Ljava/util/List;)Lorg/joml/Matrix4f; method_48776 method_48776 + p 0 listx + m (II)Lcom/mojang/serialization/Codec; method_75063 rangedLong + p 0 min + p 1 max + m (ILjava/util/Map;)Lcom/mojang/serialization/DataResult; method_57149 method_57149 + p 1 map + m (Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; method_67589 enumByName + p 0 valueOf + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; method_40110 createContextRetrievalCodec + p 0 retriever + m (Ljava/util/BitSet;)Ljava/util/stream/LongStream; method_46382 method_46382 + p 0 set + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5699$class_7476; method_43958 method_43958 + p 0 id + m (Ljava/util/function/Function;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_65315 method_65315 + p 1 element + m (Lorg/joml/Vector4fc;)Ljava/lang/Integer; method_75062 method_75062 + p 0 vec + m (Ljava/util/Optional;)Ljava/util/OptionalLong; method_44168 method_44168 + p 0 optional + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_70974 method_70974 + p 0 list + m (Ljava/util/List;)Ljava/util/List; method_65322 method_65322 + p 0 list + m (Ljava/util/function/ToIntFunction;ILjava/lang/Object;)Lcom/mojang/serialization/DataResult; method_39510 method_39510 + p 2 element + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_43962 method_43962 + p 0 encoded + m (Ljava/util/Map;)Lcom/mojang/serialization/DataResult; method_76690 method_76690 + p 0 map + m (Lorg/joml/AxisAngle4f;)Lorg/joml/Vector3fc; method_48768 method_48768 + p 0 axisAngle + m (Ljava/util/function/Function;)Ljava/util/function/Function; method_40114 createEqualTypeChecker + p 0 typeGetter +c net/minecraft/class_5699$class_8783 net/minecraft/util/dynamic/Codecs$StrictUnboundedMapCodec + f Lcom/mojang/serialization/Codec; a keyCodec + f Lcom/mojang/serialization/Codec; b elementCodec + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decode decode + p 1 ops + p 2 input + m (Ljava/lang/Object;Ljava/util/Map;)Lcom/mojang/datafixers/util/Pair; method_53707 method_53707 + p 1 map + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; method_53706 method_53706 + p 2 map + m (Ljava/util/Map;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_53708 encode + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)V + p 2 elementCodec + p 1 keyCodec + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; decode decode + p 2 input + p 1 ops + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode encode + p 2 ops + p 1 input + p 3 prefix +c net/minecraft/class_5699$class_7476 net/minecraft/util/dynamic/Codecs$TagEntryId + f Lnet/minecraft/class_2960; comp_813 id + f Z comp_814 tag + m ()Ljava/lang/String; method_43963 asString + m ()Z comp_814 tag + m ()Lnet/minecraft/class_2960; comp_813 id + m (Lnet/minecraft/class_2960;Z)V + p 1 id + p 2 tag +c net/minecraft/class_5699$1 net/minecraft/util/dynamic/Codecs$1 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/DataResult; coApply coApply + p 3 result + p 2 input + p 1 ops + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/DataResult; apply apply + p 2 input + p 1 ops + p 3 result +c net/minecraft/class_5699$3 net/minecraft/util/dynamic/Codecs$3 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; decode decode + p 2 input + p 1 ops + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)Lcom/mojang/serialization/RecordBuilder; encode encode + p 1 input + p 2 ops + p 3 prefix + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/stream/Stream; keys keys + p 1 ops +c net/minecraft/class_5699$2 net/minecraft/util/dynamic/Codecs$2 + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode encode + p 1 input + p 2 ops + p 3 prefix + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decode decode + p 1 ops + p 2 input +c net/minecraft/class_5699$5 net/minecraft/util/dynamic/Codecs$5 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decode decode + p 2 input + p 1 ops +c net/minecraft/class_5699$4 net/minecraft/util/dynamic/Codecs$4 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/DataResult; coApply coApply + p 1 ops + p 2 input + p 3 result + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/DataResult; apply apply + p 2 input + p 3 result + p 1 ops + m (Lcom/mojang/serialization/DataResult;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_39515 method_39515 + p 2 pair +c net/minecraft/class_5699$7 net/minecraft/util/dynamic/Codecs$7 + m (Ljava/util/Optional;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_58594 encode + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decode decode + p 2 input + p 1 ops + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode encode + p 3 prefix + p 1 input + p 2 ops + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Z method_58593 isEmpty + p 1 input + p 0 ops +c net/minecraft/class_5699$6 net/minecraft/util/dynamic/Codecs$6 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; decode decode + p 1 ops + p 2 input + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; method_54942 encode + p 3 ops + p 2 value + p 1 codec + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)Lcom/mojang/serialization/RecordBuilder; encode encode + p 3 prefix + p 2 ops + p 1 input + m (Lcom/mojang/serialization/MapLike;Ljava/lang/String;Lcom/mojang/serialization/DynamicOps;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_54943 method_54943 + p 4 pair + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/stream/Stream; keys keys + p 1 ops +c net/minecraft/class_5699$class_10388 net/minecraft/util/dynamic/Codecs$IdMapper + f Lcom/google/common/collect/BiMap; field_55200 values + m (Ljava/lang/Object;Ljava/lang/Object;)Lnet/minecraft/class_5699$class_10388; method_65325 put + p 2 value + p 1 id + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_65323 getCodec + p 1 idCodec + m ()Ljava/util/Set; method_74010 values +c net/minecraft/class_5699$class_6866 net/minecraft/util/dynamic/Codecs$ContextRetrievalCodec + f Ljava/util/function/Function; field_36397 retriever + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; decode decode + p 2 input + p 1 ops + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)Lcom/mojang/serialization/RecordBuilder; encode encode + p 1 input + p 2 ops + p 3 prefix + m (Ljava/util/function/Function;)V + p 1 retriever + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/stream/Stream; keys keys + p 1 ops +c net/minecraft/class_3039 net/minecraft/server/command/LootCommand + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_53969 NO_LOOT_TABLE_BLOCK_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13606 NO_LOOT_TABLE_ENTITY_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13604 NO_HELD_ITEMS_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/class_3039$class_3040;)I method_13220 method_13220 + p 2 messageSender + p 1 stacks + p 0 context + m (Lnet/minecraft/class_3039$class_3041;Lcom/mojang/brigadier/context/CommandContext;)I method_13204 method_13204 + p 1 context + m (Lnet/minecraft/class_3039$class_3041;Lcom/mojang/brigadier/context/CommandContext;)I method_13216 method_13216 + p 1 context + m (Lnet/minecraft/class_7157;Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/class_3039$class_3041;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13203 method_13203 + p 1 builder + p 2 constructor + m (Lnet/minecraft/class_3039$class_3041;Lcom/mojang/brigadier/context/CommandContext;)I method_13208 method_13208 + p 1 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;IILjava/util/List;Lnet/minecraft/class_3039$class_3040;)I method_13209 executeBlock + p 4 stacks + p 3 stackCount + p 5 messageSender + p 0 source + p 2 slot + p 1 targetPos + m (Lnet/minecraft/class_1297;Ljava/util/List;IILjava/util/List;)V method_16139 replace + p 2 slot + p 1 stacks + p 0 entity + p 4 addedStacks + p 3 stackCount + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/class_3039$class_3040;)I method_16339 method_16339 + p 1 stacks + p 2 messageSender + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Optional;Ljava/util/List;)V method_13224 method_13224 + p 2 stacks + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13193 register + p 0 dispatcher + p 1 commandRegistryAccess + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_6880;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;Lnet/minecraft/class_3039$class_3041;)I method_13199 executeFish + p 0 context + p 1 lootTable + p 2 pos + p 3 stack + p 4 constructor + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1304;)Lnet/minecraft/class_1799; method_13178 getHeldItem + p 0 source + p 1 slot + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/class_3039$class_3040;)I method_13182 method_13182 + p 2 messageSender + p 0 context + p 1 stacks + m (Lnet/minecraft/class_3039$class_3041;Lcom/mojang/brigadier/context/CommandContext;)I method_13205 method_13205 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/class_3039$class_3040;)I method_13221 method_13221 + p 1 stacks + p 0 context + p 2 messageSender + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_1297;Lnet/minecraft/class_3039$class_3041;)I method_13189 executeKill + p 2 constructor + p 1 entity + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_243;Ljava/util/List;Lnet/minecraft/class_3039$class_3040;)I method_13183 executeSpawn + p 1 pos + p 2 stacks + p 0 source + p 3 messageSender + m (Lnet/minecraft/class_2168;Ljava/util/List;Lnet/minecraft/class_5321;)V method_13212 sendDroppedFeedback + p 1 stacks + p 0 source + p 2 lootTable + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_1799;)V method_13179 method_13179 + p 2 stack + m (Lnet/minecraft/class_3039$class_3041;Lcom/mojang/brigadier/context/CommandContext;)I method_13188 method_13188 + p 1 context + m (Lnet/minecraft/class_1263;Lnet/minecraft/class_1799;)Z method_13223 insert + p 0 inventory + p 1 stack + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_6880;Lnet/minecraft/class_3039$class_3041;)I method_13197 executeLoot + p 2 constructor + p 1 lootTable + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/class_3039$class_3040;)I method_13191 method_13191 + p 2 messageSender + p 0 context + p 1 stacks + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13217 method_13217 + p 0 entityName + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;Lnet/minecraft/class_3039$class_3041;)I method_13219 executeMine + p 3 constructor + p 1 pos + p 2 stack + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/class_3039$class_3040;)I method_13202 method_13202 + p 1 stacks + p 2 messageSender + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13195 method_13195 + p 0 entityName + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1263; method_13207 getBlockInventory + p 0 source + p 1 pos + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/class_3039$class_3040;)I method_13214 method_13214 + p 1 stacks + p 0 context + p 2 messageSender + m (Lnet/minecraft/class_2168;Ljava/util/Optional;Ljava/util/List;)V method_13185 method_13185 + p 2 stacks + m (Lnet/minecraft/class_3039$class_3041;Lcom/mojang/brigadier/context/CommandContext;)I method_13177 method_13177 + p 1 context + m (Lnet/minecraft/class_3039$class_3041;Lcom/mojang/brigadier/context/CommandContext;)I method_13222 method_13222 + p 1 context + m (Ljava/util/Collection;Ljava/util/List;Lnet/minecraft/class_3039$class_3040;)I method_13201 executeGive + p 1 stacks + p 2 messageSender + p 0 players + m (Lnet/minecraft/class_3039$class_3041;Lcom/mojang/brigadier/context/CommandContext;)I method_13215 method_13215 + p 1 context + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/class_3039$class_3042;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13206 addTargetArguments + p 1 sourceConstructor + p 0 rootArgument + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_62993 method_62993 + p 0 blockName + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_13218 itemsMatch + p 1 second + p 0 first + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;Ljava/util/List;Lnet/minecraft/class_3039$class_3040;)I method_13196 executeInsert + p 2 stacks + p 3 messageSender + p 0 source + p 1 targetPos + m (Lnet/minecraft/class_3039$class_3041;Lcom/mojang/brigadier/context/CommandContext;)I method_13198 method_13198 + p 1 context + m (Lnet/minecraft/class_3039$class_3041;Lcom/mojang/brigadier/context/CommandContext;)I method_13211 method_13211 + p 1 context + m (Ljava/util/Collection;IILjava/util/List;Lnet/minecraft/class_3039$class_3040;)I method_13187 executeReplace + p 1 slot + p 0 targets + p 3 stacks + p 2 stackCount + p 4 messageSender + m (Lnet/minecraft/class_2168;Ljava/util/List;)V method_13213 sendDroppedFeedback + p 0 source + p 1 stacks + m (Lnet/minecraft/class_2168;Ljava/util/List;)V method_13184 method_13184 + p 1 stacks + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_6880;Lnet/minecraft/class_8567;Lnet/minecraft/class_3039$class_3041;)I method_13180 getFeedbackMessageSingle + p 2 lootContextParameters + p 3 constructor + p 0 context + p 1 lootTable +c net/minecraft/class_3039$class_3042 net/minecraft/server/command/LootCommand$SourceConstructor + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/class_3039$class_3041;)Lcom/mojang/brigadier/builder/ArgumentBuilder; construct construct + p 1 builder + p 2 target +c net/minecraft/class_3039$class_3041 net/minecraft/server/command/LootCommand$Target + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/class_3039$class_3040;)I accept accept + p 3 messageSender + p 2 items + p 1 context +c net/minecraft/class_3039$class_3040 net/minecraft/server/command/LootCommand$FeedbackMessage + m (Ljava/util/List;)V accept accept + p 1 items +c net/minecraft/class_3033 net/minecraft/world/gen/feature/EndPortalFeature + f Z field_13599 open + f Lnet/minecraft/class_2338; field_13600 ORIGIN + m (Z)V + p 1 open + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_51862 offsetOrigin + p 0 pos + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;)V method_66787 place + p 3 block + p 2 pos + p 1 world +c net/minecraft/class_3035 net/minecraft/server/command/DefaultGameModeCommand + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1934;)I method_13167 execute + p 1 defaultGameMode + p 0 source + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13166 register + p 0 dispatcher +c net/minecraft/class_5698 net/minecraft/registry/tag/GameEventTags + f Lnet/minecraft/class_6862; field_38079 WARDEN_CAN_LISTEN + f Lnet/minecraft/class_6862; field_39031 ALLAY_CAN_LISTEN + f Lnet/minecraft/class_6862; field_28090 VIBRATIONS + f Lnet/minecraft/class_6862; field_28091 IGNORE_VIBRATIONS_SNEAKING + f Lnet/minecraft/class_6862; field_38698 SHRIEKER_CAN_LISTEN + m (Ljava/lang/String;)Lnet/minecraft/class_6862; method_32823 of + p 0 id +c net/minecraft/class_4367 net/minecraft/client/realms/gui/RealmsWorldSlotButton + f Lnet/minecraft/class_2561; field_26470 TOOLTIP + f Lnet/minecraft/class_2561; field_26469 MINIGAME_TOOLTIP + f I field_54472 MAX_DISPLAYED_SLOT_NAME_LENGTH + f Lnet/minecraft/class_2960; field_22685 PANORAMA_3 + f Lnet/minecraft/class_2960; field_22682 EMPTY_FRAME + f Lnet/minecraft/class_2960; field_22681 SLOT_FRAME + f Lnet/minecraft/class_2960; field_22684 PANORAMA_2 + f Lnet/minecraft/class_2960; field_22683 PANORAMA_0 + f Lnet/minecraft/class_2561; field_44894 MINIGAME_SLOT_NAME + f Ljava/lang/String; field_54473 ELLIPSIS + f Lnet/minecraft/class_4367$class_4370; field_19677 state + f I field_19675 slotIndex + m (Lnet/minecraft/class_4877;)Lnet/minecraft/class_4367$class_4370; method_54571 setServer + p 1 server + m (ZZZ)Lnet/minecraft/class_4367$class_4368; method_27455 getAction + p 1 active + m ()Lnet/minecraft/class_4367$class_4370; method_25099 getState + m (Lnet/minecraft/class_4367$class_4370;Ljava/lang/String;)V method_54572 updateTooltip + p 1 state + p 2 minigameName + m (IIIIILnet/minecraft/class_4877;Lnet/minecraft/class_4185$class_4241;)V + p 5 slotIndex + p 4 height + p 7 onPress + p 6 server + p 1 x + p 3 width + p 2 y +c net/minecraft/class_4367$class_4368 net/minecraft/client/realms/gui/RealmsWorldSlotButton$Action + f Lnet/minecraft/class_4367$class_4368; field_19678 NOTHING + f Lnet/minecraft/class_4367$class_4368; field_19679 SWITCH_SLOT + m (Ljava/lang/String;)Lnet/minecraft/class_4367$class_4368; valueOf valueOf + p 0 name +c net/minecraft/class_4367$class_4370 net/minecraft/client/realms/gui/RealmsWorldSlotButton$State + f J field_19684 imageId + f Ljava/lang/String; field_19685 image + f Ljava/lang/String; field_46848 version + f Ljava/lang/String; field_19683 slotName + f Z field_19687 minigame + f Z field_60242 active + f Z field_19686 empty + f Lnet/minecraft/class_4877$class_8842; field_46849 compatibility + f Lnet/minecraft/class_4367$class_4368; field_19688 action + f Z field_54809 hardcore + m (Lnet/minecraft/class_4877;I)V + p 2 slot + p 1 server +c net/minecraft/class_3036 net/minecraft/server/command/DifficultyCommand + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13602 FAILURE_EXCEPTION + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13170 method_13170 + p 0 difficulty + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13171 method_13171 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1267;)I method_13173 execute + p 0 source + p 1 difficulty + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13169 register + p 0 dispatcher + m (Lnet/minecraft/class_1267;Lcom/mojang/brigadier/context/CommandContext;)I method_13174 method_13174 + p 1 context +c net/minecraft/class_5697 net/minecraft/client/render/entity/feature/PlayerHeldItemFeatureRenderer + f F field_32944 HEAD_YAW + f F field_32945 HEAD_ROLL + m (Lnet/minecraft/class_10055;Lnet/minecraft/class_1306;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;I)V method_65576 renderSpyglass + p 1 state + p 2 arm + p 5 light + p 3 matrices + p 4 queue + m (Lnet/minecraft/class_10055;Lnet/minecraft/class_10444;Lnet/minecraft/class_1799;Lnet/minecraft/class_1306;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;I)V method_62594 renderItem +c net/minecraft/class_5660 net/minecraft/loot/provider/number/ScoreLootNumberProvider + f Lcom/mojang/serialization/MapCodec; field_45890 CODEC + f Ljava/lang/String; comp_1898 score + f Lnet/minecraft/class_5670; comp_1897 target + f F comp_1899 scale + m (Lnet/minecraft/class_47$class_50;Ljava/lang/String;F)Lnet/minecraft/class_5660; method_35570 create + p 2 scale + p 0 target + p 1 score + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53443 method_53443 + p 0 instance + m (Lnet/minecraft/class_47$class_50;Ljava/lang/String;)Lnet/minecraft/class_5660; method_35569 create + p 1 score + p 0 target + m (Lnet/minecraft/class_5670;Ljava/lang/String;F)V + p 3 scale + p 2 score + p 1 target + m ()F comp_1899 scale + m ()Lnet/minecraft/class_5670; comp_1897 target + m ()Ljava/lang/String; comp_1898 score +c net/minecraft/class_3004 net/minecraft/entity/boss/BossBarManager + f Ljava/util/Map; field_13447 commandBossBars + f Lcom/mojang/serialization/Codec; field_56605 CODEC + f Lorg/slf4j/Logger; field_56604 LOGGER + m ()Ljava/util/Collection; method_12968 getIds + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_7225$class_7874;)V method_12972 readNbt + p 1 nbt + p 2 registries + m (Lnet/minecraft/class_3002;)V method_12973 remove + p 1 bossBar + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_2487; method_12974 toNbt + p 1 registries + m (Ljava/lang/String;)V method_67563 method_67563 + p 0 error + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2561;)Lnet/minecraft/class_3002; method_12970 add + p 2 displayName + p 1 id + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3002$class_10765;)V method_67562 method_67562 + p 2 serialized + p 1 id + m (Lnet/minecraft/class_3222;)V method_12975 onPlayerConnect + p 1 player + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_3002; method_12971 get + p 1 id + m (Lnet/minecraft/class_3222;)V method_12976 onPlayerDisconnect + p 1 player + m ()Ljava/util/Collection; method_12969 getAll +c net/minecraft/class_5667 net/minecraft/loot/provider/score/FixedLootScoreProvider + f Lcom/mojang/serialization/MapCodec; field_45894 CODEC + f Ljava/lang/String; comp_1903 name + m (Ljava/lang/String;)V + p 1 name + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53446 method_53446 + p 0 instance + m (Ljava/lang/String;)Lnet/minecraft/class_5670; method_35572 create + p 0 name + m ()Ljava/lang/String; comp_1903 name +c net/minecraft/class_3005 net/minecraft/world/gen/feature/DesertWellFeature + f Lnet/minecraft/class_2680; field_13449 fluidInside + f Lnet/minecraft/class_2680; field_43324 sand + f Lnet/minecraft/class_2715; field_13450 CAN_GENERATE + f Lnet/minecraft/class_2680; field_13451 wall + f Lnet/minecraft/class_2680; field_13452 slab + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_8174;)V method_49235 method_49235 + p 1 blockEntity + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)V method_49883 generateSuspiciousSand + p 1 pos + p 0 world +c net/minecraft/class_3006 net/minecraft/world/gen/structure/DesertPyramidStructure + f Lcom/mojang/serialization/MapCodec; field_37791 CODEC + m (Lnet/minecraft/class_3341;Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)V method_51181 placeSuspiciousSand + p 1 world + p 2 pos + p 0 box + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_8174;)V method_51182 method_51182 + p 1 blockEntity +c net/minecraft/class_5669 net/minecraft/loot/provider/score/LootScoreProviderType + f Lcom/mojang/serialization/MapCodec; comp_1904 codec + m ()Lcom/mojang/serialization/MapCodec; comp_1904 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec +c net/minecraft/class_4337 net/minecraft/client/realms/FileUpload + f Ljava/net/http/HttpClient; field_64190 httpClient + f Ljava/lang/String; field_49104 worldVersion + f I field_19553 slotId + f J field_19552 worldId + f I field_32056 MAX_ATTEMPTS + f Lnet/minecraft/class_4351; field_19558 uploadStatus + f Lorg/slf4j/Logger; field_19550 LOGGER + f Ljava/io/File; field_19551 file + f Lnet/minecraft/class_4888; field_19554 uploadInfo + f Ljava/lang/String; field_19557 clientVersion + f Ljava/lang/String; field_32057 UPLOAD_ENDPOINT + f Ljava/lang/String; field_19555 sessionId + f Ljava/lang/String; field_19556 username + m (Ljava/net/http/HttpResponse;)Lnet/minecraft/class_4429; method_20975 handleResponse + p 1 response + m (IJLjava/net/http/HttpResponse;)Ljava/util/concurrent/CompletionStage; method_76242 method_76242 + p 4 response + m (JI)Z method_20972 shouldRetry + p 3 currentAttempt + p 1 retryDelaySeconds + m ()Ljava/lang/String; method_76244 getCookie + m (Ljava/io/File;JILnet/minecraft/class_4888;Lnet/minecraft/class_320;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_4351;)V + p 5 uploadInfo + p 4 slotId + p 2 worldId + p 1 file + p 9 uploadStatus + p 8 worldVersion + p 7 clientVersion + p 6 session + m (IJ)Ljava/util/concurrent/CompletableFuture; method_20971 requestUpload + p 1 currentAttempt + p 2 size + m (Ljava/util/function/Supplier;J)Ljava/net/http/HttpRequest$BodyPublisher; method_76243 getPublisher + p 1 size + p 0 inputSupplier + m ()Ljava/util/concurrent/CompletableFuture; method_76241 upload + m (Ljava/net/http/HttpResponse;)J method_20974 getRetryDelaySeconds + p 1 response +c net/minecraft/class_4337$class_12290 net/minecraft/client/realms/FileUpload$ProgressInputStream + f Lnet/minecraft/class_4351; field_64191 progress + m (I)V afterRead afterRead + p 1 n + m (Ljava/io/InputStream;Lnet/minecraft/class_4351;)V + p 2 progress + p 1 stream +c net/minecraft/class_5662 net/minecraft/loot/provider/number/UniformLootNumberProvider + f Lcom/mojang/serialization/MapCodec; field_45891 CODEC + f Lnet/minecraft/class_5658; comp_1900 min + f Lnet/minecraft/class_5658; comp_1901 max + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53444 method_53444 + p 0 instance + m (Lnet/minecraft/class_5658;Lnet/minecraft/class_5658;)V + p 1 min + p 2 max + m (FF)Lnet/minecraft/class_5662; method_32462 create + p 0 min + p 1 max + m ()Lnet/minecraft/class_5658; comp_1901 max + m ()Lnet/minecraft/class_5658; comp_1900 min +c net/minecraft/class_3002 net/minecraft/entity/boss/CommandBossBar + f Lnet/minecraft/class_2960; field_13441 id + f Ljava/util/Set; field_13440 playerUuids + f I field_13442 maxValue + f I field_13443 value + f I field_56602 DEFAULT_MAX_VALUE + m ()Lnet/minecraft/class_2561; method_12965 toHoverableText + m (Ljava/util/UUID;)V method_12964 addPlayer + p 1 uuid + m ()Lnet/minecraft/class_3002$class_10765; method_67560 toSerialized + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3002$class_10765;)Lnet/minecraft/class_3002; method_12966 fromSerialized + p 0 id + p 1 serialized + m (Ljava/util/Collection;)Z method_12962 addPlayers + p 1 players + m (Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_12958 method_12958 + p 1 style + m ()I method_12955 getValue + m (I)V method_12956 setMaxValue + p 1 maxValue + m (I)V method_12954 setValue + p 1 value + m ()I method_12960 getMaxValue + m (Lnet/minecraft/class_3222;)V method_12961 onPlayerDisconnect + p 1 player + m ()Lnet/minecraft/class_2960; method_12959 getId + m (Lnet/minecraft/class_3222;)V method_12957 onPlayerConnect + p 1 player + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2561;)V + p 2 displayName + p 1 id +c net/minecraft/class_3002$class_10765 net/minecraft/entity/boss/CommandBossBar$Serialized + f Lcom/mojang/serialization/Codec; field_56603 CODEC + f Lnet/minecraft/class_1259$class_1260; comp_3677 color + f Lnet/minecraft/class_1259$class_1261; comp_3678 overlay + f I comp_3676 max + f I comp_3675 value + f Z comp_3674 visible + f Z comp_3679 darkenScreen + f Z comp_3681 createWorldFog + f Z comp_3680 playBossMusic + f Ljava/util/Set; comp_3682 players + f Lnet/minecraft/class_2561; comp_3673 name + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67561 method_67561 + p 0 instance + m ()I comp_3676 max + m ()Z comp_3674 visible + m ()I comp_3675 value + m ()Z comp_3679 darkenScreen + m ()Z comp_3680 playBossMusic + m ()Z comp_3681 createWorldFog + m ()Lnet/minecraft/class_1259$class_1260; comp_3677 color + m ()Lnet/minecraft/class_1259$class_1261; comp_3678 overlay + m ()Ljava/util/Set; comp_3682 players + m ()Lnet/minecraft/class_2561; comp_3673 name + m (Lnet/minecraft/class_2561;ZIILnet/minecraft/class_1259$class_1260;Lnet/minecraft/class_1259$class_1261;ZZZLjava/util/Set;)V + p 1 name + p 2 visible + p 3 value + p 4 max + p 5 color + p 6 overlay + p 7 darkenScreen + p 8 playBossMusic + p 9 createWorldFog + p 10 players +c net/minecraft/class_3003 net/minecraft/world/gen/placementmodifier/NoiseThresholdCountPlacementModifier + f I field_13445 aboveNoise + f Lcom/mojang/serialization/MapCodec; field_24890 MODIFIER_CODEC + f I field_13446 belowNoise + f D field_13444 noiseLevel + m (DII)V + p 1 noiseLevel + p 4 aboveNoise + p 3 belowNoise + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28733 method_28733 + p 0 instance + m (Lnet/minecraft/class_3003;)Ljava/lang/Integer; method_28734 method_28734 + p 0 placementModifier + m (DII)Lnet/minecraft/class_3003; method_39642 of + p 0 noiseLevel + p 2 belowNoise + p 3 aboveNoise + m (Lnet/minecraft/class_3003;)Ljava/lang/Double; method_28735 method_28735 + p 0 placementModifier + m (Lnet/minecraft/class_3003;)Ljava/lang/Integer; method_28732 method_28732 + p 0 placementModifier +c net/minecraft/class_5664 net/minecraft/loot/provider/score/ContextLootScoreProvider + f Lcom/mojang/serialization/Codec; field_45893 INLINE_CODEC + f Lcom/mojang/serialization/MapCodec; field_45892 CODEC + f Lnet/minecraft/class_47$class_50; comp_1902 target + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53445 method_53445 + p 0 instance + m (Lnet/minecraft/class_47$class_50;)V + p 1 target + m (Lnet/minecraft/class_47$class_50;)Lnet/minecraft/class_5670; method_35571 create + p 0 target + m ()Lnet/minecraft/class_47$class_50; comp_1902 target +c net/minecraft/class_4333 net/minecraft/client/realms/FileDownload + f Z field_19525 error + f Z field_19523 cancelled + f Z field_19526 extracting + f Ljava/util/concurrent/CompletableFuture; field_64188 future + f [Ljava/lang/String; field_19532 INVALID_FILE_NAMES + f Ljava/io/File; field_19528 resourcePackPath + f Ljava/io/File; field_20490 backupFile + f Z field_19524 finished + f Lorg/slf4j/Logger; field_19522 LOGGER + f Ljava/lang/Thread; field_19530 currentThread + m (Ljava/lang/String;)Ljava/net/http/HttpRequest$Builder; method_76239 createRequestBuilder + p 0 uri + m (Ljava/util/concurrent/CompletableFuture;)Ljava/lang/Object; method_76238 submit + p 1 future + m ()Z method_20964 isExtracting + m ()Ljava/net/http/HttpClient; method_76240 createClient + m (Lnet/minecraft/class_4392$class_4393;Ljava/io/File;Lnet/minecraft/class_4889;)V method_76235 validateAndCopy + p 2 file + p 1 status + p 3 download + m (Ljava/lang/String;)Ljava/util/OptionalLong; method_20955 contentLength + p 0 uri + m ()V method_20948 cancel + m (Ljava/lang/String;Ljava/io/File;Lnet/minecraft/class_32;Lnet/minecraft/class_4392$class_4393;)V method_76237 extract + p 1 name + p 2 archive + p 3 storage + p 4 status + m (Lnet/minecraft/class_4392$class_4393;Ljava/net/http/HttpClient;Ljava/lang/String;Ljava/io/File;)V method_76236 download + p 2 client + p 1 status + p 4 output + p 3 uri + m ()Z method_20957 isFinished + m ()Z method_20961 isError + m (Ljava/lang/String;)Ljava/lang/String; method_20960 findAvailableFolderName + p 0 folder + m (Lnet/minecraft/class_4889;Ljava/lang/String;Lnet/minecraft/class_4392$class_4393;Lnet/minecraft/class_32;)V method_22100 downloadWorld + p 1 download + p 2 message + p 3 status + p 4 storage + m (Ljava/lang/String;Ljava/io/File;Lnet/minecraft/class_32;)V method_20956 untarGzipArchive + p 1 name + p 2 archive + p 3 storage +c net/minecraft/class_4333$class_4334 net/minecraft/client/realms/FileDownload$DownloadCountingOutputStream + f Lnet/minecraft/class_4392$class_4393; field_64189 status + m (Ljava/io/OutputStream;Lnet/minecraft/class_4392$class_4393;)V + p 1 stream + p 2 status + m (I)V afterWrite afterWrite + p 1 n +c net/minecraft/class_5659 net/minecraft/loot/provider/number/LootNumberProviderTypes + f Lcom/mojang/serialization/Codec; field_45889 BASE_CODEC + f Lcom/mojang/serialization/Codec; field_45888 CODEC + f Lnet/minecraft/class_5657; field_50032 STORAGE + f Lnet/minecraft/class_5657; field_51814 ENCHANTMENT_LEVEL + f Lnet/minecraft/class_5657; field_27921 CONSTANT + f Lnet/minecraft/class_5657; field_27922 UNIFORM + f Lnet/minecraft/class_5657; field_27923 BINOMIAL + f Lnet/minecraft/class_5657; field_27924 SCORE + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_5657; method_32456 register + p 1 codec + p 0 id + m (Lnet/minecraft/class_5658;)Lcom/mojang/datafixers/util/Either; method_53442 method_53442 + p 0 provider +c net/minecraft/class_5670 net/minecraft/loot/provider/score/LootScoreProvider + m ()Lnet/minecraft/class_5669; method_32475 getType + m ()Ljava/util/Set; method_32477 getRequiredParameters + m (Lnet/minecraft/class_47;)Lnet/minecraft/class_9015; method_55379 getScoreHolder + p 1 context +c net/minecraft/class_4341 net/minecraft/client/realms/RealmsClient + f Ljava/lang/String; field_19580 username + f Ljava/lang/String; field_32066 WORLD_CLOSE_ENDPOINT + f Ljava/lang/String; field_32078 MCO_ENDPOINT + f Ljava/lang/String; field_32082 PING_STAT_ENDPOINT + f Ljava/lang/String; field_32070 WORLD_SLOT_DOWNLOAD_ENDPOINT + f Ljava/lang/String; field_57918 FEATURE_ENDPOINT + f Ljava/lang/String; field_32094 WORLD_ENDPOINT_3 + f Ljava/lang/String; field_32077 INVITES_ENDPOINT + f Ljava/lang/String; field_32065 WORLD_OPEN_ENDPOINT + f Ljava/lang/String; field_32089 MINIGAMES_ENDPOINT + f Ljava/lang/String; field_32093 ID_ENDPOINT + f Ljava/lang/String; field_32081 OPS_ENDPOINT + f Ljava/lang/String; field_46688 CREATE_PRERELEASE_REALM_ENDPOINT + f Ljava/lang/String; field_32064 WORLD_SLOT_ENDPOINT + f Ljava/lang/String; field_32088 WORLD_PROFILE_ENDPOINT + f Ljava/lang/String; field_32076 WORLDS_ENDPOINT + f Ljava/lang/String; field_32080 ACTIVITIES_ENDPOINT + f Ljava/lang/String; field_43013 DISMISS_ENDPOINT + f Ljava/lang/String; field_32092 JOIN_PC_ENDPOINT + f Ljava/lang/String; field_46689 LIST_PRERELEASE_ELIGIBLE_WORLDS_ENDPOINT + f Ljava/lang/String; field_32087 WORLD_ENDPOINT_2 + f Ljava/lang/String; field_32059 PENDING_ENDPOINT + f Ljava/util/concurrent/CompletableFuture; field_57917 featureFlagsFuture + f Ljava/lang/String; field_32091 TEMPLATES_ENDPOINT + f Ljava/lang/String; field_43012 SEEN_ENDPOINT + f Ljava/lang/String; field_32086 LIVEPLAYERLIST_ENDPOINT + f Ljava/lang/String; field_32074 NEWS_ENDPOINT + f Ljava/lang/String; field_60172 PREFERRED_REGIONS_ENDPOINT + f Ljava/lang/String; field_32090 AVAILABLE_ENDPOINT + f Ljava/lang/String; field_32062 WORLD_ENDPOINT_4 + f Ljava/lang/String; field_46687 LIST_USER_WORLDS_OF_TYPE_ANY_ENDPOINT + f Lnet/minecraft/class_4341; field_57916 instance + f Lnet/minecraft/class_310; field_26901 client + f Ljava/lang/String; field_32069 WORLD_BACKUPS_ENDPOINT + f Ljava/lang/String; field_43014 NOTIFICATIONS_ENDPOINT + f Ljava/lang/String; field_60171 WORLD_CONFIGURATION_ENDPOINT + f Ljava/lang/String; field_32073 TOS_AGREED_ENDPOINT + f Ljava/lang/String; field_32061 REJECT_INVITATION_ENDPOINT + f Lorg/slf4j/Logger; field_19578 LOGGER + f Ljava/lang/String; field_32068 WORLD_ENDPOINT_6 + f Ljava/lang/String; field_19579 sessionId + f Ljava/lang/String; field_32060 ACCEPT_INVITATION_ENDPOINT + f Lnet/minecraft/class_4869; field_22568 JSON + f Ljava/lang/String; field_32084 WORLD_INITIALIZE_ENDPOINT + f Lnet/minecraft/class_4341$class_4343; field_45232 ENVIRONMENT + f Ljava/lang/String; field_32072 CLIENT_COMPATIBLE_ENDPOINT + f Ljava/lang/String; field_32079 SUBSCRIPTIONS_ENDPOINT + f Ljava/lang/String; field_32067 WORLD_RESET_ENDPOINT + f Ljava/lang/String; field_32071 WORLD_BACKUPS_UPLOAD_ENDPOINT + f Ljava/lang/String; field_32095 INVITE_ENDPOINT + f Ljava/lang/String; field_32083 TRIAL_ENDPOINT + m (J)Lnet/minecraft/class_4868; method_21016 backupsFor + p 1 worldId + m ()Ljava/util/Set; method_68465 getFeatureFlags + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_310;)V + p 3 client + p 1 sessionId + p 2 username + m (J)Lnet/minecraft/class_4887; method_21025 subscriptionFor + p 1 worldId + m (J)Ljava/lang/Boolean; method_21022 close + p 1 worldId + m (JLjava/lang/String;Ljava/lang/String;Lnet/minecraft/class_11310;ILnet/minecraft/class_4883;Ljava/util/List;)V method_71168 configure + p 3 name + p 4 description + p 5 regionSelectionPreference + p 6 slotId + p 7 options + p 8 settings + p 1 worldId + m ()V method_21031 agreeToTos + m ()Lnet/minecraft/class_4872; method_21030 pendingInvites + m (JLjava/util/UUID;)V method_20994 uninvite + p 1 worldId + p 3 profileUuid + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_68464 url + p 2 queryString + p 1 path + m (Ljava/lang/String;)V method_20999 acceptInvitation + p 1 invitationId + m (J)Ljava/lang/Boolean; method_21019 open + p 1 worldId + m (Ljava/lang/String;)V method_21006 rejectInvitation + p 1 invitationId + m ()Ljava/util/Set; method_68466 fetchFeatureFlags + m (JLjava/lang/String;Ljava/lang/String;)V method_20996 initializeWorld + p 1 worldId + p 3 name + p 4 motd + m ()Lnet/minecraft/class_11301; method_71169 getRegionDataList + m ()Lnet/minecraft/class_4879; method_21015 listWorlds + m (JI)Lnet/minecraft/class_4889; method_21003 download + p 3 slotId + p 1 worldId + m (JLjava/lang/String;)V method_21010 restoreWorld + p 1 worldId + p 3 backupId + m ()Z method_52655 mcoEnabled + m (J)Lnet/minecraft/class_4877; method_20991 getOwnWorld + p 1 worldId + m ()Lnet/minecraft/class_4876; method_21032 getNews + m (Lnet/minecraft/class_4346;)Ljava/lang/String; method_20998 execute + p 1 r + m (Ljava/util/List;)V method_49570 dismissNotifications + p 1 notifications + m (J)V method_21028 deleteWorld + p 1 worldId + m (Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/String; method_21007 url + p 1 queryString + p 2 aks + p 0 path + m (JLjava/lang/String;)Ljava/lang/Boolean; method_21023 resetWorldWithTemplate + p 1 worldId + p 3 worldTemplateId + m ()Lnet/minecraft/class_4341$class_4342; method_21027 clientCompatible + m (JLjava/util/UUID;)Lnet/minecraft/class_4870; method_21017 op + p 3 profileUuid + p 1 worldId + m ()Lnet/minecraft/class_4341; method_44616 create + m (Lnet/minecraft/class_4873;)V method_20997 sendPingResults + p 1 pingResult + m (Ljava/lang/String;)Ljava/lang/String; method_21011 url + p 1 path + m ()Ljava/util/List; method_49572 listNotifications + m (Lnet/minecraft/class_310;)Lnet/minecraft/class_4341; method_20989 createRealmsClient + p 0 client + m ()Ljava/util/List; method_54361 getPrereleaseEligibleServers + m ()Lnet/minecraft/class_4881; method_21018 getLiveStats + m ()Ljava/lang/Boolean; method_21033 trialAvailable + m (Lnet/minecraft/class_4871;)Z method_31381 isOwnerBlocked + p 1 invite + m (JI)Z method_20992 switchSlot + p 3 slot + p 1 worldId + m (J)V method_21013 uninviteMyselfFrom + p 1 worldId + m (J)Lnet/minecraft/class_4888; method_21026 upload + p 1 worldId + m (JLjava/lang/String;)Ljava/util/List; method_21004 invite + p 3 profileName + p 1 worldId + m (Ljava/util/List;)V method_49569 markNotificationsAsSeen + p 1 notifications + m (J)Lnet/minecraft/class_11459; method_21009 join + p 1 worldId + m (JLjava/lang/String;)Ljava/lang/Boolean; method_21014 putIntoMinigameMode + p 3 minigameId + p 1 worldId + m (Ljava/util/List;)Lcom/google/gson/JsonArray; method_49571 toJsonArray + p 0 uuids + m (JLjava/util/UUID;)Lnet/minecraft/class_4870; method_21020 deop + p 3 profileUuid + p 1 worldId + m ()I method_21029 pendingInvitesCount + m (IILnet/minecraft/class_4877$class_4321;)Lnet/minecraft/class_4891; method_20990 fetchWorldTemplates + p 3 type + p 2 pageSize + p 1 page + m (JILnet/minecraft/class_4883;Ljava/util/List;)V method_20993 updateSlot + p 5 settings + p 3 slot + p 4 options + p 1 worldId + m (Ljava/lang/Long;)Lnet/minecraft/class_4877; method_54360 createPrereleaseServer + p 1 parentWorldId +c net/minecraft/class_4341$class_4342 net/minecraft/client/realms/RealmsClient$CompatibleVersionResponse + f Lnet/minecraft/class_4341$class_4342; field_19582 COMPATIBLE + f Lnet/minecraft/class_4341$class_4342; field_19584 OTHER + f Lnet/minecraft/class_4341$class_4342; field_19583 OUTDATED + m (Ljava/lang/String;)Lnet/minecraft/class_4341$class_4342; valueOf valueOf + p 0 name +c net/minecraft/class_4341$class_4343 net/minecraft/client/realms/RealmsClient$Environment + f Ljava/lang/String; field_19590 protocol + f Lnet/minecraft/class_4341$class_4343; field_19586 PRODUCTION + f Ljava/lang/String; field_57919 aksUrl + f Lnet/minecraft/class_4341$class_4343; field_19588 LOCAL + f Lnet/minecraft/class_4341$class_4343; field_19587 STAGE + f Ljava/lang/String; field_19589 baseUrl + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 4 aksUrl + p 3 baseUrl + p 5 protocol + m (Ljava/lang/String;)Lnet/minecraft/class_4341$class_4343; valueOf valueOf + p 0 name + m (Ljava/lang/String;)Ljava/util/Optional; method_52215 fromName + p 0 name +c net/minecraft/class_5671 net/minecraft/loot/provider/score/LootScoreProviderTypes + f Lcom/mojang/serialization/Codec; field_45896 BASE_CODEC + f Lcom/mojang/serialization/Codec; field_45895 CODEC + f Lnet/minecraft/class_5669; field_27932 FIXED + f Lnet/minecraft/class_5669; field_27933 CONTEXT + m (Lnet/minecraft/class_5670;)Lcom/mojang/datafixers/util/Either; method_53449 method_53449 + p 0 provider + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_5669; method_32479 register + p 1 codec + p 0 id +c net/minecraft/class_3016 net/minecraft/server/dedicated/command/BanCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13473 ALREADY_BANNED_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13023 method_13023 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13020 method_13020 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_2561;)I method_13022 ban + p 2 reason + p 1 targets + p 0 source + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13021 register + p 0 dispatcher +c net/minecraft/class_4346 net/minecraft/client/realms/Request + f Ljava/lang/String; field_46690 IS_PRERELEASE_HEADER + f Z field_19598 connected + f I field_32096 READ_TIMEOUT + f Ljava/net/HttpURLConnection; field_19596 connection + f Ljava/lang/String; field_19597 url + f Ljava/lang/String; field_46691 COOKIE_HEADER + f I field_32097 CONNECT_TIMEOUT + m (Z)V method_54362 prerelease + p 1 prerelease + m (Ljava/lang/String;Ljava/lang/String;II)Lnet/minecraft/class_4346; method_21043 post + p 3 readTimeoutMillis + p 0 uri + p 2 connectTimeoutMillis + p 1 content + m ()V method_21056 dispose + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_4346; method_21053 put + p 0 url + p 1 content + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_4346; method_21049 post + p 0 uri + p 1 content + m (Ljava/net/HttpURLConnection;Ljava/lang/String;)Ljava/lang/String; method_21045 getHeader + p 0 connection + p 1 header + m ()I method_21038 getRetryAfterHeader + m (Ljava/net/HttpURLConnection;)I method_21044 getRetryAfterHeader + p 0 connection + m ()Lnet/minecraft/class_4346; method_21054 connect + m (Ljava/io/InputStream;)Ljava/lang/String; method_21039 read + p 1 in + m (Ljava/lang/String;Ljava/lang/String;II)Lnet/minecraft/class_4346; method_21050 put + p 3 readTimeoutMillis + p 0 url + p 2 connectTimeoutMillis + p 1 content + m (Ljava/net/HttpURLConnection;Ljava/lang/String;Ljava/lang/String;)V method_21046 cookie + p 2 value + p 0 connection + p 1 key + m (Ljava/lang/String;)Lnet/minecraft/class_4346; method_21040 get + p 0 url + m (Ljava/lang/String;Ljava/lang/String;)V method_21042 cookie + p 1 key + p 2 value + m (Ljava/lang/String;II)Lnet/minecraft/class_4346; method_21041 get + p 1 connectTimeoutMillis + p 2 readTimeoutMillis + p 0 url + m ()Ljava/lang/String; method_21051 text + m (Ljava/lang/String;II)V + p 3 readTimeout + p 2 connectTimeout + p 1 url + m ()I method_21047 responseCode + m ()Lnet/minecraft/class_4346; method_21055 doConnect + m (Ljava/lang/String;)Ljava/lang/String; method_21052 getHeader + p 1 header + m (Ljava/lang/String;)Lnet/minecraft/class_4346; method_21048 delete + p 0 url +c net/minecraft/class_4346$class_4350 net/minecraft/client/realms/Request$Put + f Ljava/lang/String; field_19600 content + m (Ljava/lang/String;Ljava/lang/String;II)V + p 3 connectTimeout + p 4 readTimeout + p 1 uri + p 2 content + m ()Lnet/minecraft/class_4346$class_4350; method_21060 doConnect +c net/minecraft/class_4346$class_4347 net/minecraft/client/realms/Request$Delete + m ()Lnet/minecraft/class_4346$class_4347; method_21057 doConnect +c net/minecraft/class_4346$class_4348 net/minecraft/client/realms/Request$Get + m ()Lnet/minecraft/class_4346$class_4348; method_21058 doConnect +c net/minecraft/class_4346$class_4349 net/minecraft/client/realms/Request$Post + f Ljava/lang/String; field_19599 content + m (Ljava/lang/String;Ljava/lang/String;II)V + p 3 connectTimeout + p 4 readTimeout + p 1 uri + p 2 content + m ()Lnet/minecraft/class_4346$class_4349; method_21059 doConnect +c net/minecraft/class_3018 net/minecraft/world/gen/feature/EndGatewayFeatureConfig + f Lcom/mojang/serialization/Codec; field_24883 CODEC + f Ljava/util/Optional; field_17735 exitPos + f Z field_13475 exact + m (Lnet/minecraft/class_3018;)Ljava/util/Optional; method_28718 method_28718 + p 0 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28717 method_28717 + p 0 instance + m ()Z method_13026 isExact + m (Lnet/minecraft/class_3018;)Ljava/lang/Boolean; method_28716 method_28716 + p 0 config + m (Ljava/util/Optional;Z)V + p 2 exact + p 1 exitPos + m ()Lnet/minecraft/class_3018; method_18030 createConfig + m ()Ljava/util/Optional; method_18036 getExitPos + m (Lnet/minecraft/class_2338;Z)Lnet/minecraft/class_3018; method_18034 createConfig + p 0 exitPortalPosition + p 1 exitsAtSpawn +c net/minecraft/class_3011 net/minecraft/world/gen/feature/DiskFeature + m (Lnet/minecraft/class_6577;Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;IILnet/minecraft/class_2338$class_2339;)Z method_43160 placeBlock + p 1 config + p 2 world + p 3 random + p 4 topY + p 5 bottomY + p 6 pos +c net/minecraft/class_5674 net/minecraft/client/realms/task/ResettingWorldTemplateTask + f Lnet/minecraft/class_4890; field_27952 template + m (Lnet/minecraft/class_4890;JLnet/minecraft/class_2561;Ljava/lang/Runnable;)V + p 1 template + p 2 serverId + p 4 title + p 5 callback +c net/minecraft/class_3012 net/minecraft/server/dedicated/command/BanIpCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13467 ALREADY_BANNED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13468 INVALID_IP_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13010 method_13010 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13008 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;Ljava/lang/String;Lnet/minecraft/class_2561;)I method_13009 checkIp + p 2 reason + p 1 target + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13006 method_13006 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/lang/String;Lnet/minecraft/class_2561;)I method_13007 banIp + p 2 reason + p 1 targetIp + p 0 source +c net/minecraft/class_5676 net/minecraft/client/gui/widget/CyclingButtonWidget + f Lnet/minecraft/class_5676$class_12347; field_64536 icon + f Ljava/util/List; field_27962 BOOLEAN_VALUES + f Ljava/util/function/Function; field_27968 narrationMessageFactory + f I field_27964 index + f Lnet/minecraft/class_5676$class_12346; field_64535 labelType + f Ljava/util/function/Supplier; field_63504 valueSupplier + f Lnet/minecraft/class_5676$class_5678; field_27969 callback + f Ljava/util/function/Function; field_27967 valueToText + f Ljava/util/function/BooleanSupplier; field_27961 HAS_ALT_DOWN + f Ljava/lang/Object; field_27965 value + f Lnet/minecraft/class_5676$class_5680; field_27966 values + f Lnet/minecraft/class_7172$class_7277; field_27970 tooltipFactory + f Lnet/minecraft/class_2561; field_27963 optionText + m (Ljava/util/function/Function;Ljava/util/function/Supplier;)Lnet/minecraft/class_5676$class_5677; method_75345 builder + p 0 valueToText + p 1 valueSupplier + m ()V method_47403 refreshTooltip + m (Ljava/lang/Object;)Lnet/minecraft/class_5250; method_32610 composeGenericOptionText + p 1 value + m (Z)Lnet/minecraft/class_5676$class_5677; method_32614 onOffBuilder + c Creates a builder for a cycling button widget that only has {@linkplain Boolean#TRUE}\nand {@linkplain Boolean#FALSE} values. It displays\n{@link net.minecraft.screen.ScreenTexts#ON} for {@code true} and\n{@link net.minecraft.screen.ScreenTexts#OFF} for {@code false}.\nIts current initial value is {@code true}. + p 0 defaultValue + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Ljava/lang/Boolean;)Lnet/minecraft/class_2561; method_75346 method_75346 + p 2 value + m (Ljava/lang/Boolean;)Lnet/minecraft/class_2561; method_75344 method_75344 + p 0 value + m (IIIILnet/minecraft/class_2561;Lnet/minecraft/class_2561;ILjava/lang/Object;Ljava/util/function/Supplier;Lnet/minecraft/class_5676$class_5680;Ljava/util/function/Function;Ljava/util/function/Function;Lnet/minecraft/class_5676$class_5678;Lnet/minecraft/class_7172$class_7277;Lnet/minecraft/class_5676$class_12346;Lnet/minecraft/class_5676$class_12347;)V + p 14 tooltipFactory + p 13 callback + p 16 icon + p 15 labelType + p 6 optionText + p 5 message + p 8 value + p 7 index + p 10 values + p 9 valueSupplier + p 12 narrationMessageFactory + p 11 valueToText + p 2 y + p 1 x + p 4 height + p 3 width + m (Ljava/lang/Object;)Lnet/minecraft/class_2561; method_37026 composeText + p 1 value + m (I)Ljava/lang/Object; method_37027 getValue + p 1 offset + m ()Ljava/lang/Object; method_32603 getValue + m (I)V method_32612 cycle + p 1 amount + m (Ljava/util/function/Function;Ljava/lang/Object;)Lnet/minecraft/class_5676$class_5677; method_32606 builder + c Creates a new builder for a cycling button widget. + p 1 value + p 0 valueToText + m (Ljava/lang/Object;)V method_32605 setValue + p 1 value + m ()Lnet/minecraft/class_5250; method_32611 getGenericNarrationMessage + c {@return a generic narration message for this button}\n\n

If the button omits the option text in rendering, such as showing only\n"Value", this narration message will still read out the option like\n"Option: Value". + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Z)Lnet/minecraft/class_5676$class_5677; method_32607 onOffBuilder + c Creates a builder for a cycling button widget that only has {@linkplain Boolean#TRUE}\nand {@linkplain Boolean#FALSE} values. It displays\n{@code on} for {@code true} and {@code off} for {@code false}.\nIts current initial value is {@code true}. + p 0 on + p 2 defaultValue + p 1 off + m (Ljava/lang/Object;)V method_32609 internalSetValue + p 1 value +c net/minecraft/class_5676$class_12347 net/minecraft/client/gui/widget/CyclingButtonWidget$IconGetter + m (Lnet/minecraft/class_5676;Ljava/lang/Object;)Lnet/minecraft/class_2960; apply apply + p 2 value + p 1 button +c net/minecraft/class_5676$class_12346 net/minecraft/client/gui/widget/CyclingButtonWidget$LabelType + f Lnet/minecraft/class_5676$class_12346; field_64540 VALUE + f Lnet/minecraft/class_5676$class_12346; field_64541 HIDE + f Lnet/minecraft/class_5676$class_12346; field_64539 NAME_AND_VALUE +c net/minecraft/class_5676$class_5680 net/minecraft/client/gui/widget/CyclingButtonWidget$Values + m ()Ljava/util/List; method_32626 getCurrent + m (Ljava/util/function/BooleanSupplier;Ljava/util/List;Ljava/util/List;)Lnet/minecraft/class_5676$class_5680; method_32628 of + p 1 defaults + p 0 alternativeToggle + p 2 alternatives + m (Ljava/util/Collection;)Lnet/minecraft/class_5676$class_5680; method_32627 of + p 0 values + m ()Ljava/util/List; method_32629 getDefaults +c net/minecraft/class_5676$class_5678 net/minecraft/client/gui/widget/CyclingButtonWidget$UpdateCallback + m (Lnet/minecraft/class_5676;Ljava/lang/Object;)V onValueChange onValueChange + p 1 button + p 2 value +c net/minecraft/class_5676$class_5677 net/minecraft/client/gui/widget/CyclingButtonWidget$Builder + c A builder to easily create cycling button widgets.\n\nEach builder must have at least one of its {@code values} methods called\nwith at least one default (non-alternative) value in the list before\nbuilding.\n\n@see CyclingButtonWidget#builder(Function) + f Ljava/util/function/Supplier; field_63505 valueSupplier + f Lnet/minecraft/class_5676$class_12347; field_64537 icon + f Lnet/minecraft/class_5676$class_12346; field_64538 labelType + f Lnet/minecraft/class_7172$class_7277; field_27975 tooltipFactory + f Ljava/util/function/Function; field_27976 narrationMessageFactory + f Lnet/minecraft/class_5676$class_5680; field_27977 values + f Ljava/util/function/Function; field_27974 valueToText + m (Ljava/util/function/Function;Ljava/util/function/Supplier;)V + c Creates a builder.\n\n@see CyclingButtonWidget#builder(Function) + p 2 valueSupplier + p 1 valueToText + m (IIIILnet/minecraft/class_2561;Lnet/minecraft/class_5676$class_5678;)Lnet/minecraft/class_5676; method_32617 build + c Builds a cycling button widget.\n\n@throws IllegalStateException if no {@code values} call is made, or the\n{@code values} has no default values available + p 4 height + p 3 width + p 2 y + p 1 x + p 6 callback + p 5 optionText + m ([Ljava/lang/Object;)Lnet/minecraft/class_5676$class_5677; method_32624 values + c Sets the option values for this button. + p 1 values + m (Ljava/util/List;Ljava/util/List;)Lnet/minecraft/class_5676$class_5677; method_32621 values + c Sets the option values for this button.\n\n

When the user presses the ALT key, the {@code alternatives} values\nwill be iterated; otherwise the {@code defaults} values will be iterated\nwhen clicking the built button. + p 1 defaults + p 2 alternatives + m (Lnet/minecraft/class_5676$class_5680;)Lnet/minecraft/class_5676$class_5677; method_42729 values + p 1 values + m (IIIILnet/minecraft/class_2561;)Lnet/minecraft/class_5676; method_35723 build + p 1 x + p 2 y + p 3 width + p 4 height + p 5 optionText + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_5676$class_5678;)Lnet/minecraft/class_5676; method_57720 build + p 1 optionText + p 2 callback + m (Ljava/util/function/BooleanSupplier;Ljava/util/List;Ljava/util/List;)Lnet/minecraft/class_5676$class_5677; method_32622 values + c Sets the option values for this button.\n\n

When {@code alternativeToggle} {@linkplain BooleanSupplier#getAsBoolean()\ngetAsBoolean} returns {@code true}, the {@code alternatives} values\nwill be iterated; otherwise the {@code defaults} values will be iterated\nwhen clicking the built button. + p 3 alternatives + p 2 defaults + p 1 alternativeToggle + m (Ljava/util/function/Function;)Lnet/minecraft/class_5676$class_5677; method_32623 narration + c Overrides the narration message of the button to build.\n\n

If this is not called, the button will use\n{@link CyclingButtonWidget#getGenericNarrationMessage()} for narration\nmessages. + p 1 narrationMessageFactory + m (Lnet/minecraft/class_5676;Ljava/lang/Object;)Lnet/minecraft/class_2960; method_76616 method_76616 + p 0 button + p 1 value + m (Ljava/util/Collection;)Lnet/minecraft/class_5676$class_5677; method_32620 values + c Sets the option values for this button. + p 1 values + m ()Lnet/minecraft/class_5676$class_5677; method_32616 omitKeyText + c Makes the built button omit the option and only display the current value\nfor its text, such as showing "Jump Mode" than "Mode: Jump Mode". + m (Lnet/minecraft/class_5676$class_12346;)Lnet/minecraft/class_5676$class_5677; method_76614 labelType + p 1 labelType + m (Lnet/minecraft/class_5676$class_12347;)Lnet/minecraft/class_5676$class_5677; method_76615 icon + p 1 icon + m (Lnet/minecraft/class_5676;Ljava/lang/Object;)V method_35724 method_35724 + p 0 button + p 1 value + m (Lnet/minecraft/class_7172$class_7277;)Lnet/minecraft/class_5676$class_5677; method_32618 tooltip + c Sets the tooltip factory that provides tooltips for any of the values.\n\n

If this is not called, the values simply won't have tooltips. + p 1 tooltipFactory + m (Ljava/lang/Object;)Lnet/minecraft/class_7919; method_32625 method_32625 + p 0 value +c net/minecraft/class_4345 net/minecraft/client/realms/RealmsError + f Lorg/slf4j/Logger; field_19593 LOGGER + f Lnet/minecraft/class_2561; field_45233 NO_DETAILS_TEXT + m ()I method_21037 getErrorCode + m ()Lnet/minecraft/class_2561; method_52657 getText + m (ILjava/lang/String;)Lnet/minecraft/class_4345; method_30162 ofHttp + p 0 statusCode + p 1 response + m ()Ljava/lang/String; method_21036 getErrorMessage +c net/minecraft/class_4345$class_8652 net/minecraft/client/realms/RealmsError$AuthenticationError + f I field_45234 ERROR_CODE + f Ljava/lang/String; comp_1595 message + m ()Ljava/lang/String; comp_1595 message + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/class_4345$class_8653 net/minecraft/client/realms/RealmsError$SimpleHttpError + f Lnet/minecraft/class_2561; field_45236 RETRY_TEXT + f Ljava/lang/String; field_60674 BODY_HTML_OPENING_TAG + f Ljava/lang/String; field_60675 BODY_HTML_CLOSING_TAG + f Lnet/minecraft/class_4345$class_8653; field_45235 SERVICE_BUSY + f I comp_1596 httpCode + f Lnet/minecraft/class_2561; comp_1597 payload + m (Ljava/lang/String;)Lnet/minecraft/class_4345$class_8653; method_52660 unknownCompatibility + p 0 response + m (I)Lnet/minecraft/class_4345$class_8653; method_52661 statusCodeOnly + p 0 statusCode + m (Lnet/minecraft/class_4354;)Lnet/minecraft/class_4345$class_8653; method_52659 connectivity + p 0 exception + m ()Lnet/minecraft/class_4345$class_8653; method_71170 configurationError + m (I)Lnet/minecraft/class_4345$class_8653; method_52658 retryable + p 0 statusCode + m (ILjava/lang/String;)Lnet/minecraft/class_4345$class_8653; method_71781 unreadableHtmlBody + p 1 html + p 0 statusCode + m ()I comp_1596 httpCode + m ()Lnet/minecraft/class_2561; comp_1597 payload + m (ILnet/minecraft/class_2561;)V + p 1 httpCode + p 2 payload +c net/minecraft/class_4345$class_8654 net/minecraft/client/realms/RealmsError$DetailedHttpError + f Ljava/lang/String; comp_1600 reason + f Ljava/lang/String; comp_1601 message + f I comp_1598 httpCode + f I comp_1599 code + m ()Ljava/lang/String; comp_1600 reason + m ()Ljava/lang/String; comp_1601 message + m ()I comp_1598 httpCode + m ()I comp_1599 code + m (IILjava/lang/String;Ljava/lang/String;)V + p 1 httpCode + p 2 code + p 3 reason + p 4 message +c net/minecraft/class_4345$class_8655 net/minecraft/client/realms/RealmsError$RawHttpPayloadError + f Ljava/lang/String; comp_1603 payload + f I comp_1602 httpCode + m ()I comp_1602 httpCode + m ()Ljava/lang/String; comp_1603 payload + m (ILjava/lang/String;)V + p 1 httpCode + p 2 payload +c net/minecraft/class_3014 net/minecraft/server/dedicated/command/BanListCommand + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13013 method_13013 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_13015 execute + p 0 source + p 1 targets + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13014 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13017 method_13017 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13016 method_13016 + p 0 context +c net/minecraft/class_4344 net/minecraft/client/realms/RealmsClientConfig + f Ljava/net/Proxy; field_19592 proxy + m (Ljava/net/Proxy;)V method_21035 setProxy + p 0 proxy + m ()Ljava/net/Proxy; method_21034 getProxy +c net/minecraft/class_3008 net/minecraft/server/command/AdvancementCommand + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_47183 CRITERION_NOT_FOUND_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_47182 GENERIC_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_12992 method_12992 + p 0 context + p 1 builder + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_3008$class_3009;Lnet/minecraft/class_8779;Ljava/lang/String;)I method_12981 executeCriterion + p 4 criterion + p 3 advancement + p 2 operation + p 1 targets + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12993 method_12993 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12985 method_12985 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12995 method_12995 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12983 method_12983 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12997 method_12997 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12989 method_12989 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_3008$class_3009;Ljava/util/Collection;)I method_65972 executeAdvancement + p 3 selection + p 1 targets + p 2 operation + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12979 method_12979 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54923 method_54923 + p 0 message + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_3008$class_3009;Ljava/util/Collection;Z)I method_12988 executeAdvancement + p 4 skipSync + p 3 selection + p 2 operation + p 1 targets + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_8779;Lnet/minecraft/class_3008$class_3010;)Ljava/util/List; method_12996 select + p 0 context + p 1 advancement + p 2 selection + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54924 method_54924 + p 1 criterion + p 0 advancement + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_12980 register + p 0 dispatcher + m (Lnet/minecraft/class_8781;Ljava/util/List;)V method_12990 addChildrenRecursivelyToList + p 1 childList + p 0 parent + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_12991 method_12991 + p 1 builder + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12982 method_12982 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12986 method_12986 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12994 method_12994 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12978 method_12978 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12998 method_12998 + p 0 context +c net/minecraft/class_3008$class_3009 net/minecraft/server/command/AdvancementCommand$Operation + f Ljava/lang/String; field_13454 commandPrefix + f Lnet/minecraft/class_3008$class_3009; field_13456 REVOKE + f Lnet/minecraft/class_3008$class_3009; field_13457 GRANT + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_8779;Ljava/lang/String;)Z method_13000 processEachCriterion + p 2 advancement + p 1 player + p 3 criterion + m ()Ljava/lang/String; method_13001 getCommandPrefix + m (Lnet/minecraft/class_3222;Ljava/lang/Iterable;Z)I method_12999 processAll + p 1 player + p 2 advancements + p 3 skipSync + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_8779;)Z method_13002 processEach + p 1 player + p 2 advancement +c net/minecraft/class_3008$class_3010 net/minecraft/server/command/AdvancementCommand$Selection + f Z field_13460 before + f Z field_13459 after + f Lnet/minecraft/class_3008$class_3010; field_13458 FROM + f Lnet/minecraft/class_3008$class_3010; field_13465 UNTIL + f Lnet/minecraft/class_3008$class_3010; field_13461 EVERYTHING + f Lnet/minecraft/class_3008$class_3010; field_13462 THROUGH + f Lnet/minecraft/class_3008$class_3010; field_13464 ONLY + m (Ljava/lang/String;IZZ)V + p 3 before + p 4 after +c net/minecraft/class_4339 net/minecraft/client/realms/Ping + m ()Ljava/util/List; method_20981 pingAllRegions + m ([Lnet/minecraft/class_4339$class_4340;)Ljava/util/List; method_20984 ping + p 0 regions + m (Ljava/lang/String;)I method_20982 ping + p 0 host + m ()J method_20985 now +c net/minecraft/class_4339$class_4340 net/minecraft/client/realms/Ping$Region + f Lnet/minecraft/class_4339$class_4340; field_19572 SA_EAST_1 + f Lnet/minecraft/class_4339$class_4340; field_19570 AP_SOUTHEAST_2 + f Lnet/minecraft/class_4339$class_4340; field_19571 AP_NORTHEAST_1 + f Lnet/minecraft/class_4339$class_4340; field_19569 AP_SOUTHEAST_1 + f Ljava/lang/String; field_19573 name + f Ljava/lang/String; field_19574 endpoint + f Lnet/minecraft/class_4339$class_4340; field_19565 US_EAST_1 + f Lnet/minecraft/class_4339$class_4340; field_19566 US_WEST_2 + f Lnet/minecraft/class_4339$class_4340; field_19567 US_WEST_1 + f Lnet/minecraft/class_4339$class_4340; field_19568 EU_WEST_1 + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V + p 3 name + p 4 endpoint + m (Ljava/lang/String;)Lnet/minecraft/class_4339$class_4340; valueOf valueOf + p 0 name +c net/minecraft/class_5644 net/minecraft/loot/condition/ValueCheckLootCondition + f Lnet/minecraft/class_5658; comp_1887 value + f Lcom/mojang/serialization/MapCodec; field_45877 CODEC + f Lnet/minecraft/class_42; comp_1888 range + m (Lnet/minecraft/class_5658;Lnet/minecraft/class_42;)Lnet/minecraft/class_5341$class_210; method_35562 builder + p 1 range + p 0 value + m (Lnet/minecraft/class_47;)Z method_32423 test + m ()Lnet/minecraft/class_5658; comp_1887 value + m (Lnet/minecraft/class_5658;Lnet/minecraft/class_42;)V + p 2 range + p 1 value + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53428 method_53428 + p 0 instance + m ()Lnet/minecraft/class_42; comp_1888 range +c net/minecraft/class_5646 net/minecraft/loot/provider/nbt/ContextLootNbtProvider + f Lnet/minecraft/class_12283; field_63061 target + f Lcom/mojang/serialization/Codec; field_45881 TARGET_CODEC + f Lcom/mojang/serialization/Codec; field_45880 INLINE_CODEC + f Lcom/mojang/serialization/MapCodec; field_45879 CODEC + m (Lnet/minecraft/class_5646;)Lnet/minecraft/class_12283; method_53433 method_53433 + p 0 provider + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53430 method_53430 + p 0 instance + m (Lnet/minecraft/class_5646;)Lnet/minecraft/class_12283; method_53431 method_53431 + p 0 provider + m (Lnet/minecraft/class_12283;)V + p 1 target + m (Lnet/minecraft/class_47$class_50;)Lnet/minecraft/class_5651; method_35568 fromTarget + p 0 target + m (Lnet/minecraft/class_12283$class_12284;)Lnet/minecraft/class_12283$class_12284; method_76228 method_76228 + p 0 builder +c net/minecraft/class_5646$class_12072 net/minecraft/loot/provider/nbt/ContextLootNbtProvider$EntityTarget + f Lnet/minecraft/class_169; comp_4920 contextParam + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_2520; method_74911 get + m (Lnet/minecraft/class_169;)V + p 1 contextParam +c net/minecraft/class_5646$class_12071 net/minecraft/loot/provider/nbt/ContextLootNbtProvider$BlockEntityTarget + f Lnet/minecraft/class_169; comp_4920 contextParam + m (Lnet/minecraft/class_2586;)Lnet/minecraft/class_2520; method_74909 get + m (Lnet/minecraft/class_169;)V + p 1 contextParam +c net/minecraft/class_5641 net/minecraft/loot/function/AndLootFunction + f Ljava/util/List; field_27904 terms + f Ljava/util/function/BiFunction; field_27905 applier + f Lcom/mojang/serialization/MapCodec; field_45834 CODEC + f Lcom/mojang/serialization/Codec; field_45835 INLINE_CODEC + m (Ljava/util/List;)V + p 1 terms + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_47;)Lnet/minecraft/class_1799; method_32405 apply + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53351 method_53351 + p 0 instance + m (Ljava/util/List;)Lnet/minecraft/class_5641; method_53353 create + p 0 terms + m (Lnet/minecraft/class_5641;)Ljava/util/List; method_53352 method_53352 + p 0 function + m (Lnet/minecraft/class_5641;)Ljava/util/List; method_53354 method_53354 + p 0 function + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 stack + p 2 context +c net/minecraft/class_4311 net/minecraft/world/rule/GameRuleVisitor + c A visitor used to visit all game rules. + m (Lnet/minecraft/class_12279;)V method_27330 visitInt + c Visit an integer rule.\n\n

Note {@link #visit(GameRule)} will be called before this method. + p 1 rule + m (Lnet/minecraft/class_12279;)V method_27329 visitBoolean + c Visit a boolean rule.\n\n

Note {@link #visit(GameRule)} will be called before this method. + p 1 rule + m (Lnet/minecraft/class_12279;)V method_20762 visit + c Visit a game rule.\n\n

It is expected all game rules regardless of type will be visited using this method. + p 1 rule +c net/minecraft/class_5642 net/minecraft/loot/function/SetEnchantmentsLootFunction + f Z field_27908 add + f Lcom/mojang/serialization/MapCodec; field_45843 CODEC + f Ljava/util/Map; field_27907 enchantments + m (Lnet/minecraft/class_9304$class_9305;Lnet/minecraft/class_47;Lnet/minecraft/class_6880;Lnet/minecraft/class_5658;)V method_57656 method_57656 + p 3 level + p 2 enchantment + m (Ljava/util/List;Ljava/util/Map;Z)V + p 2 enchantments + p 3 add + p 1 conditions + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53371 method_53371 + p 0 instance + m (Lnet/minecraft/class_47;Lnet/minecraft/class_9304$class_9305;)V method_57657 method_57657 + p 2 builder + m (Lnet/minecraft/class_5642;)Ljava/util/Map; method_53372 method_53372 + p 0 function + m (Lnet/minecraft/class_5658;)Ljava/util/stream/Stream; method_32409 method_32409 + p 0 numberProvider + m (Lnet/minecraft/class_9304$class_9305;Lnet/minecraft/class_47;Lnet/minecraft/class_6880;Lnet/minecraft/class_5658;)V method_60297 method_60297 + p 2 enchantment + p 3 level + m (Lnet/minecraft/class_5642;)Ljava/lang/Boolean; method_53370 method_53370 + p 0 function +c net/minecraft/class_5642$class_6158 net/minecraft/loot/function/SetEnchantmentsLootFunction$Builder + f Lcom/google/common/collect/ImmutableMap$Builder; field_31864 enchantments + f Z field_31865 add + m ()Lnet/minecraft/class_5642$class_6158; method_35538 getThisBuilder + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_5658;)Lnet/minecraft/class_5642$class_6158; method_35539 enchantment + p 2 level + p 1 enchantment + m (Z)V + p 1 add +c net/minecraft/class_4307 net/minecraft/entity/ai/brain/sensor/GolemLastSeenSensor + f I field_30250 GOLEM_DETECTED_WARMUP + f I field_30249 RUN_TIME + m (Lnet/minecraft/class_1309;)V method_30233 rememberIronGolem + p 0 entity + m (Lnet/minecraft/class_1309;)V method_20656 senseIronGolem + p 0 entity + m (Lnet/minecraft/class_1309;)Z method_20657 method_20657 + p 0 seenEntity +c net/minecraft/class_4309 net/minecraft/resource/JsonDataLoader + c An abstract implementation of resource reloader that reads JSON files\ninto values in the prepare stage. + f Lcom/mojang/serialization/DynamicOps; field_54055 ops + f Lorg/slf4j/Logger; field_19377 LOGGER + f Lnet/minecraft/class_7654; field_55194 finder + f Lcom/mojang/serialization/Codec; field_54056 codec + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_7654;)V + p 2 finder + p 1 codec + m (Ljava/util/Map;Lnet/minecraft/class_2960;Ljava/lang/Object;)V method_63568 method_63568 + p 2 value + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_5321;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Ljava/util/Map;)V method_65310 load + p 0 manager + p 1 registryRef + p 2 ops + p 3 codec + p 4 results + m (Lnet/minecraft/class_7225$class_7874;Lcom/mojang/serialization/Codec;Lnet/minecraft/class_5321;)V + p 1 registries + p 3 registryRef + p 2 codec + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_7654;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Ljava/util/Map;)V method_51148 load + p 0 manager + p 1 finder + p 4 results + p 2 ops + p 3 codec + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Lnet/minecraft/class_7654;)V + p 2 codec + p 3 finder + p 1 ops + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)Ljava/util/Map; method_20731 prepare + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;Lcom/mojang/serialization/DataResult$Error;)V method_63567 method_63567 + p 2 error +c net/minecraft/class_5650 net/minecraft/loot/provider/nbt/LootNbtProviderType + f Lcom/mojang/serialization/MapCodec; comp_1891 codec + m ()Lcom/mojang/serialization/MapCodec; comp_1891 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec +c net/minecraft/class_4325 net/minecraft/client/realms/gui/screen/RealmsMainScreen + f Lnet/minecraft/class_2561; field_26460 OPEN_TEXT + f Lnet/minecraft/class_2960; field_45191 CLOSED_STATUS_TEXTURE + f Lnet/minecraft/class_4325$class_8651; field_45206 newsButton + f Lnet/minecraft/class_4325$class_8650; field_45207 loadStatus + f Lnet/minecraft/class_4185; field_45215 playButton + f Lnet/minecraft/class_2960; field_45217 EXPIRED_STATUS_TEXTURE + f Lnet/minecraft/class_2561; field_45200 PENDING_TOOLTIP + f Lnet/minecraft/class_2960; field_45192 INVITE_ICON_TEXTURE + f Z field_46672 GAME_ON_SNAPSHOT + f Lnet/minecraft/class_2960; field_54806 HARDCORE_ICON_TEXTURE + f Lnet/minecraft/class_4185; field_45204 purchaseButton + f Lcom/google/common/util/concurrent/RateLimiter; field_19477 rateLimiter + f Lnet/minecraft/class_2960; field_45218 EXPIRES_SOON_STATUS_TEXTURE + f Lnet/minecraft/class_4325$class_4329; field_19483 realmSelectionList + f Lorg/slf4j/Logger; field_19475 LOGGER + f Ljava/util/List; field_42997 notifications + f Z field_46673 showingSnapshotRealms + f Lnet/minecraft/class_8132; field_45208 layout + f Lnet/minecraft/class_2561; field_51815 INCOMPATIBLE_POPUP_TITLE + f Lnet/minecraft/class_7580; field_39681 serverFilterer + f Lnet/minecraft/class_4325$class_8651; field_45205 inviteButton + f Lnet/minecraft/class_2561; field_26453 EXPIRED_TRIAL_TEXT + f Lnet/minecraft/class_2561; field_51816 INCOMPATIBLE_RELEASE_TYPE_MESSAGE + f Lnet/minecraft/class_2960; field_45216 NEW_REALM_ICON_TEXTURE + f Ljava/util/List; field_46669 availableSnapshotServers + f Lnet/minecraft/class_2561; field_45198 NO_REALMS_TEXT + f Lnet/minecraft/class_2960; field_45195 NO_REALMS_TEXTURE + f Lnet/minecraft/class_2561; field_26452 EXPIRED_RENEW_TEXT + f Lnet/minecraft/class_4185; field_19489 leaveButton + f Lnet/minecraft/class_2960; field_45201 INFO_ICON_TEXTURE + f Lnet/minecraft/class_2561; field_26459 EXPIRES_IN_A_DAY_TEXT + f Lnet/minecraft/class_2561; field_45199 NO_PENDING_TOOLTIP + f Lnet/minecraft/class_2561; field_26451 EXPIRED_LIST_TEXT + f Lnet/minecraft/class_7581$class_7584; field_45214 periodicRunnersManager + f Z field_19464 regionsPinged + f Lnet/minecraft/class_4185; field_19488 configureButton + f Lnet/minecraft/class_2561; field_42860 LEAVE_TEXT + f Ljava/util/concurrent/CompletableFuture; field_45213 availabilityInfo + f Lnet/minecraft/class_2561; field_26458 EXPIRES_SOON_TEXT + f Lnet/minecraft/class_4185; field_19487 renewButton + f Lnet/minecraft/class_2960; field_45193 NEWS_ICON_TEXTURE + f Z field_19500 trialAvailable + f Lnet/minecraft/class_2561; field_26450 UNINITIALIZED_TEXT + f Lnet/minecraft/class_2561; field_45196 MENU_TEXT + f Lnet/minecraft/class_2561; field_33776 UNINITIALIZED_BUTTON_NARRATION + f Lnet/minecraft/class_4881; field_52116 onlinePlayers + f Lnet/minecraft/class_2960; field_45219 OPEN_STATUS_TEXTURE + f Lnet/minecraft/class_2561; field_42861 CONFIGURE_TEXT + f Lnet/minecraft/class_2561; field_42859 PLAY_TEXT + f Lnet/minecraft/class_2561; field_26457 EXPIRED_TEXT + f Ljava/util/Set; field_42996 seenNotifications + f Lnet/minecraft/class_4185; field_19486 backButton + f Lnet/minecraft/class_2561; field_45197 LOADING_TEXT + f Lnet/minecraft/class_2561; field_26461 CLOSED_TEXT + f Ljava/lang/String; field_45203 newsLink + f Lnet/minecraft/class_437; field_19482 parent + m (Lnet/minecraft/class_4877;)V method_20906 leaveClicked + p 1 selectedServer + m (Lnet/minecraft/class_4325$class_8650;)V method_52635 onLoadStatusChange + p 1 loadStatus + m ()V method_53792 resetPendingInvitesCount + m (Ljava/util/List;Ljava/lang/Object;)V method_54106 method_54106 + p 2 result + m (Lnet/minecraft/class_4877;)V method_24991 leaveServer + p 1 server + m (Ljava/util/List;)V method_49561 method_49561 + p 1 notifications + m (Lnet/minecraft/class_4881;)V method_60860 method_60860 + p 1 onlinePlayers + m ()Ljava/util/List; method_20924 getOwnedNonExpiredWorldIds + m (Lnet/minecraft/class_4185;)V method_52643 method_52643 + p 1 button + m ()Lnet/minecraft/class_4877; method_38503 getSelectedServer + m (Lnet/minecraft/class_4325$class_8650;)Lnet/minecraft/class_8132; method_52641 makeLayoutFor + p 1 loadStatus + m (Ljava/lang/Integer;)V method_44614 method_44614 + p 1 pendingInvitesCount + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_4185;)V method_52640 method_52640 + p 2 button + m (Lnet/minecraft/class_4185;)V method_52645 method_52645 + p 1 button + m (Lnet/minecraft/class_8647$class_8648;)V method_52634 method_52634 + p 1 availabilityInfo + m ()V method_53791 showBuyRealmsScreen + m (Lnet/minecraft/class_4325;Lnet/minecraft/class_364;)V method_52636 method_52636 + p 1 child + m (Ljava/util/UUID;Lnet/minecraft/class_8204;)Z method_49559 method_49559 + p 1 notificationId + m ()Lnet/minecraft/class_8667; method_52631 makeNoRealmsLayout + m (Ljava/util/UUID;Ljava/lang/Object;)V method_49560 method_49560 + p 2 void_ + m (Lnet/minecraft/class_7578;Lnet/minecraft/class_4876;)V method_44612 method_44612 + p 2 news + m (Lnet/minecraft/class_4877;Lnet/minecraft/class_437;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V method_54326 showCompatibilityScreen + p 0 server + p 1 parent + p 2 title + p 3 description + p 4 confirmText + m (Lnet/minecraft/class_4877;)V method_20928 onRenew + p 1 realmsServer + m (Ljava/lang/String;Z)Lnet/minecraft/class_2561; method_54562 getVersionText + p 1 compatible + p 0 version + m (Lnet/minecraft/class_4877;Lnet/minecraft/class_437;)V method_20853 play + p 0 serverData + p 1 parent + m (Lnet/minecraft/class_4185;)V method_52646 method_52646 + p 1 button + m ()V method_38505 removeSelection + m (Lnet/minecraft/class_332;Ljava/lang/String;I)V method_52637 drawEnvironmentText + p 2 text + p 1 context + p 3 color + m (IZ)Lnet/minecraft/class_2561; method_64834 getGameModeText + p 0 id + p 1 hardcore + m (Ljava/util/UUID;Lnet/minecraft/class_4341;)Ljava/lang/Object; method_49558 method_49558 + p 1 client + m (Lnet/minecraft/class_4877;)Z method_25001 isOwnedNotExpired + p 1 serverData + m (Lnet/minecraft/class_7578$class_8843;)V method_44615 method_44615 + p 1 availableServers + m ()V method_53793 resetServerList + m (Lnet/minecraft/class_4185;)V method_52647 method_52647 + p 1 button + m (Ljava/util/Collection;)V method_54104 markAsSeen + p 1 notifications + m ()Lnet/minecraft/class_8133; method_52630 makeHeader + m (Ljava/lang/String;I)Lnet/minecraft/class_2561; method_54561 getVersionText + p 0 version + p 1 color + m (Ljava/lang/Boolean;)V method_52639 method_52639 + p 1 trialAvailable + m (Lnet/minecraft/class_4877;)Z method_49285 shouldConfigureButtonBeActive + p 1 server + m ()V method_54324 resetPeriodicCheckers + m ()V method_49550 refresh + m (Lnet/minecraft/class_4185;)V method_52648 method_52648 + p 1 button + m (Lnet/minecraft/class_4325$class_8203;Ljava/util/function/Consumer;)V method_49553 request + p 0 request + p 1 resultConsumer + m (Ljava/util/UUID;)V method_49557 dismissNotification + p 1 notification + m (Ljava/lang/Throwable;)Ljava/lang/Void; method_49554 method_49554 + p 0 throwable + m (Lnet/minecraft/class_4877;)Z method_49288 shouldLeaveButtonBeActive + p 1 server + m (Ljava/util/List;Lnet/minecraft/class_4341;)Ljava/lang/Object; method_54105 method_54105 + p 1 client + m (Lnet/minecraft/class_4185;)V method_52649 method_52649 + p 1 button + m (Lnet/minecraft/class_4325$class_8650;)Lnet/minecraft/class_8133; method_52644 makeInnerLayout + p 1 loadStatus + m ()V method_20922 pingRegions + m (Lnet/minecraft/class_4877;)V method_20903 configureClicked + p 1 serverData + m (Lnet/minecraft/class_4877;Lnet/minecraft/class_437;Z)V method_54327 play + p 0 server + p 1 parent + p 2 needsPreparation + m (Lnet/minecraft/class_4877;Lnet/minecraft/class_437;)V method_60861 showNeedsUpgradeScreen + p 0 serverData + p 1 parent + m (Lnet/minecraft/class_437;)V + p 1 parent + m (Lnet/minecraft/class_7578;)Lnet/minecraft/class_7581$class_7584; method_44611 createPeriodicRunnersManager + p 1 periodicCheckers + m (Lnet/minecraft/class_4185;)V method_52638 method_52638 + p 1 button + m ()Z method_54330 isSnapshotRealmsEligible + m (Lnet/minecraft/class_437;Lnet/minecraft/class_4877;Lnet/minecraft/class_8816;)V method_54329 method_54329 + p 2 popup + m (Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_54328 method_54328 + p 1 button + p 2 snapshot + m (Lnet/minecraft/class_4877;)Z method_20909 isSelfOwnedServer + p 0 server + m (Lnet/minecraft/class_4325;Lnet/minecraft/class_364;)V method_52642 method_52642 + p 1 child + m (Lnet/minecraft/class_4877;)Z method_20884 shouldRenewButtonBeActive + p 1 server + m (Lnet/minecraft/class_4877;Lnet/minecraft/class_8816;)V method_38504 method_38504 + p 2 popup + m ()V method_52632 refreshButtons + m ()V method_54320 updateLoadStatus +c net/minecraft/class_4325$class_8202 net/minecraft/client/realms/gui/screen/RealmsMainScreen$VisitUrlNotification + f Ljava/util/List; field_43006 gridChildren + f Lnet/minecraft/class_4325$class_8201; field_43007 dismissButton + f Lnet/minecraft/class_7843; field_43010 textGrid + f Lnet/minecraft/class_4185; field_62083 urlButton + f Lnet/minecraft/class_7940; field_43008 textWidget + f Lnet/minecraft/class_2561; field_43005 message + f Lnet/minecraft/class_7845; field_43009 grid + f I field_43011 width + m (Lnet/minecraft/class_4325;Lnet/minecraft/class_4325;ILnet/minecraft/class_2561;Lnet/minecraft/class_8204$class_8205;)V + p 3 lines + p 4 message + p 2 parent + p 5 url + m ()V method_49564 setWidth + m (I)V method_49567 updateWidth + p 1 width + m ()Lnet/minecraft/class_2561; method_74177 getMessage + m (I)I method_74178 getTextWidth + p 0 width + m (Lnet/minecraft/class_332;IIFLnet/minecraft/class_339;)V method_76233 method_76233 + p 4 child + m (Lnet/minecraft/class_8204$class_8205;Lnet/minecraft/class_4185;)V method_49566 method_49566 + p 2 button +c net/minecraft/class_4325$class_8840 net/minecraft/client/realms/gui/screen/RealmsMainScreen$SnapshotEntry + f Lnet/minecraft/class_2561; field_46676 START_TEXT + f Lnet/minecraft/class_4877; field_46679 server + f Lnet/minecraft/class_9110; field_46678 tooltip + m (Lnet/minecraft/class_8816;)V method_54343 method_54343 + p 1 screen + m (Lnet/minecraft/class_4325;Lnet/minecraft/class_4877;)V + p 2 server + m ()V method_54344 showPopup +c net/minecraft/class_4325$class_8203 net/minecraft/client/realms/gui/screen/RealmsMainScreen$Request + m (Lnet/minecraft/class_4341;)Ljava/lang/Object; request request + p 1 client +c net/minecraft/class_4325$class_8841 net/minecraft/client/realms/gui/screen/RealmsMainScreen$ParentRealmSelectionListEntry + f Lnet/minecraft/class_9110; field_46685 tooltip + f Lnet/minecraft/class_4877; field_46684 server + m (Lnet/minecraft/class_4325;Lnet/minecraft/class_4877;)V + p 2 server +c net/minecraft/class_4325$class_8201 net/minecraft/client/realms/gui/screen/RealmsMainScreen$CrossButton + f Lnet/minecraft/class_8666; field_45222 TEXTURES + m (Lnet/minecraft/class_4185$class_4241;Lnet/minecraft/class_2561;)V + p 2 tooltip + p 1 onPress +c net/minecraft/class_4325$class_4866 net/minecraft/client/realms/gui/screen/RealmsMainScreen$Entry + m (I)I method_54357 getStatusY + p 1 y + m (Lnet/minecraft/class_332;IIIILnet/minecraft/class_4877;)V method_71040 drawServerNameAndVersion + p 1 context + p 2 y + p 3 x + p 4 width + p 5 color + p 6 server + m (I)I method_54354 getNameX + p 1 x + m (IILnet/minecraft/class_2561;)I method_54346 getVersionRight + p 3 version + p 1 x + p 2 width + m (I)I method_54345 getNameY + p 1 y + m (I)I method_54356 getDescriptionY + p 1 y + m (Lnet/minecraft/class_332;IIILnet/minecraft/class_4877;)V method_71041 drawDescription + p 1 context + p 3 x + p 2 y + p 5 server + p 4 width + m (Lnet/minecraft/class_332;IIIILnet/minecraft/class_2960;Ljava/util/function/Supplier;)V method_54351 drawTextureWithTooltip + p 4 mouseX + p 3 y + p 2 x + p 1 context + p 7 tooltip + p 6 texture + p 5 mouseY + m (Lnet/minecraft/class_332;IILnet/minecraft/class_4877;)V method_54565 drawOwnerOrExpiredText + p 2 y + p 1 context + p 4 server + p 3 x + m (Lnet/minecraft/class_4877;Lnet/minecraft/class_332;III)I method_64838 drawGameMode + p 3 x + p 4 entryWidth + p 1 server + p 2 context + p 5 y + m (Lnet/minecraft/class_332;Ljava/lang/String;IIII)V method_54352 drawTrimmedText + p 5 right + p 6 color + p 3 left + p 4 y + p 1 context + p 2 string + m (Lnet/minecraft/class_4877;Lnet/minecraft/class_332;IIII)V method_54350 renderStatusIcon + p 2 context + p 1 server + p 4 y + p 3 x + p 6 mouseY + p 5 mouseX + m (IILnet/minecraft/class_2561;)I method_64839 getGameModeRight + p 3 gameMode + p 1 x + p 2 width + m ()I method_54353 getTextHeight +c net/minecraft/class_4325$class_4330 net/minecraft/client/realms/gui/screen/RealmsMainScreen$RealmSelectionListEntry + f Lnet/minecraft/class_2561; field_52119 ONLINE_PLAYERS_TEXT + f Lnet/minecraft/class_9110; field_46686 tooltip + f Lnet/minecraft/class_4877; field_19518 server + m ()Lnet/minecraft/class_4877; method_38506 getRealmsServer + m ()V method_52654 createRealm + m ()V method_52653 play + m (Lnet/minecraft/class_332;IIIIIIF)Z method_60862 drawPlayers + p 3 left + p 2 top + p 1 context + p 7 mouseY + p 6 mouseX + p 5 height + p 4 width + p 8 tickProgress + m (Lnet/minecraft/class_4325;Lnet/minecraft/class_4877;)V + p 2 server +c net/minecraft/class_4325$class_8651 net/minecraft/client/realms/gui/screen/RealmsMainScreen$NotificationButtonWidget + f I field_45230 TEXTURE_SIZE + f I field_45231 notificationCount + f I field_45229 SIZE + f [Lnet/minecraft/class_2960; field_45227 TEXTURES + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2960;Lnet/minecraft/class_4185$class_4241;Lnet/minecraft/class_2561;)V + p 1 message + p 2 texture + p 3 onPress + p 4 tooltip + m (I)V method_52651 setNotificationCount + p 1 notificationCount + m (Lnet/minecraft/class_332;)V method_52652 render + p 1 context + m ()I method_53794 getNotificationCount +c net/minecraft/class_4325$class_8650 net/minecraft/client/realms/gui/screen/RealmsMainScreen$LoadStatus + f Lnet/minecraft/class_4325$class_8650; field_45223 LOADING + f Lnet/minecraft/class_4325$class_8650; field_45224 NO_REALMS + f Lnet/minecraft/class_4325$class_8650; field_45225 LIST +c net/minecraft/class_4325$class_4329 net/minecraft/client/realms/gui/screen/RealmsMainScreen$RealmSelectionList + m (Lnet/minecraft/class_4325$class_4866;)V method_25024 setSelected + m (Lnet/minecraft/class_4325$class_4866;)V method_64842 addServerEntries + p 1 selectedEntry + m (Lnet/minecraft/class_8204$class_8205;Lnet/minecraft/class_4325;Lnet/minecraft/class_4325$class_4866;)V method_64841 addVisitEntries + p 1 url + p 2 mainScreen + p 3 selectedEntry + m (Lnet/minecraft/class_4325;)V method_64840 refresh + p 1 mainScreen +c net/minecraft/class_5658 net/minecraft/loot/provider/number/LootNumberProvider + m (Lnet/minecraft/class_47;)F method_32454 nextFloat + p 1 context + m (Lnet/minecraft/class_47;)I method_366 nextInt + p 1 context + m ()Lnet/minecraft/class_5657; method_365 getType +c net/minecraft/class_5657 net/minecraft/loot/provider/number/LootNumberProviderType + f Lcom/mojang/serialization/MapCodec; comp_1896 codec + m ()Lcom/mojang/serialization/MapCodec; comp_1896 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec +c net/minecraft/class_5652 net/minecraft/loot/provider/nbt/LootNbtProviderTypes + f Lcom/mojang/serialization/Codec; field_45883 BASE_CODEC + f Lcom/mojang/serialization/Codec; field_45882 CODEC + f Lnet/minecraft/class_5650; field_27918 STORAGE + f Lnet/minecraft/class_5650; field_27919 CONTEXT + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_5650; method_32443 register + p 1 codec + p 0 id + m (Lnet/minecraft/class_5651;)Lcom/mojang/datafixers/util/Either; method_53436 method_53436 + p 0 provider +c net/minecraft/class_5651 net/minecraft/loot/provider/nbt/LootNbtProvider + m ()Lnet/minecraft/class_5650; method_32439 getType + m ()Ljava/util/Set; method_32441 getRequiredParameters + m (Lnet/minecraft/class_47;)Lnet/minecraft/class_2520; method_32440 getNbt + p 1 context +c net/minecraft/class_5653 net/minecraft/loot/provider/nbt/StorageLootNbtProvider + f Lnet/minecraft/class_2960; comp_1892 source + f Lcom/mojang/serialization/MapCodec; field_45884 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53437 method_53437 + p 0 instance + m (Lnet/minecraft/class_2960;)V + p 1 source + m ()Lnet/minecraft/class_2960; comp_1892 source +c net/minecraft/class_4317 net/minecraft/recipe/RepairItemRecipe + m (Lnet/minecraft/class_9694;)Lcom/mojang/datafixers/util/Pair; method_58438 findPair + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_58439 canCombineStacks + p 1 second + p 0 first + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_9304;Lnet/minecraft/class_9304;Lnet/minecraft/class_9304$class_9305;)V method_57528 method_57528 + p 3 builder + m (Lnet/minecraft/class_6880$class_6883;)Z method_59994 method_59994 + p 0 enchantment + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1799; method_20807 craft + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Z method_20808 matches + m (Lnet/minecraft/class_9304;Lnet/minecraft/class_9304;Lnet/minecraft/class_9304$class_9305;Lnet/minecraft/class_6880$class_6883;)V method_24364 method_24364 + p 3 enchantment +c net/minecraft/class_3085 net/minecraft/world/gen/feature/LakeFeature + f Lnet/minecraft/class_2680; field_13668 CAVE_AIR + m (Lnet/minecraft/class_2680;)Z method_39605 canReplace + p 1 state +c net/minecraft/class_3085$class_6788 net/minecraft/world/gen/feature/LakeFeature$Config + f Lcom/mojang/serialization/Codec; field_35706 CODEC + f Lnet/minecraft/class_4651; comp_285 fluid + f Lnet/minecraft/class_4651; comp_286 barrier + m ()Lnet/minecraft/class_4651; comp_286 barrier + m ()Lnet/minecraft/class_4651; comp_285 fluid + m (Lnet/minecraft/class_4651;Lnet/minecraft/class_4651;)V + p 1 fluid + p 2 barrier +c net/minecraft/class_3086 net/minecraft/server/dedicated/command/PardonCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13669 ALREADY_UNBANNED_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13474 method_13474 + p 0 context + p 1 builder + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13475 method_13475 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_13473 pardon + p 0 source + p 1 targets + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13472 register + p 0 dispatcher +c net/minecraft/class_3081 net/minecraft/world/gen/feature/KelpFeature +c net/minecraft/class_3082 net/minecraft/server/command/MessageCommand + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13461 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/Collection;Lnet/minecraft/class_7471;)V method_45153 method_45153 + p 2 message + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13463 method_13463 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_7471;)V method_13462 execute + p 2 message + p 1 targets + p 0 source +c net/minecraft/class_3083 net/minecraft/server/dedicated/command/OpCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13667 ALREADY_OPPED_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13468 method_13468 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_13465 op + p 0 source + p 1 targets + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13464 register + p 0 dispatcher + m (Lnet/minecraft/class_3222;)Ljava/lang/String; method_13469 method_13469 + p 0 player + m (Lnet/minecraft/class_3324;Lnet/minecraft/class_3222;)Z method_13466 method_13466 + p 1 player + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13467 method_13467 + p 1 builder + p 0 context +c net/minecraft/class_3088 net/minecraft/server/dedicated/command/PardonIpCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13671 INVALID_IP_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13672 ALREADY_UNBANNED_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13480 method_13480 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13478 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13479 method_13479 + p 0 context + p 1 builder + m (Lnet/minecraft/class_2168;Ljava/lang/String;)I method_13482 pardonIp + p 1 target + p 0 source +c net/minecraft/class_3089 net/minecraft/server/command/ParticleCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13673 FAILED_EXCEPTION + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2394;Lnet/minecraft/class_243;Lnet/minecraft/class_243;FIZLjava/util/Collection;)I method_13491 execute + p 7 viewers + p 6 force + p 5 count + p 4 speed + p 3 delta + p 2 pos + p 1 parameters + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13492 method_13492 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13484 method_13484 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13485 method_13485 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13483 method_13483 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13488 method_13488 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13489 method_13489 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13487 method_13487 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13486 register + p 0 dispatcher + p 1 registryAccess +c net/minecraft/class_10270 net/minecraft/server/command/RotateCommand + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_2267;)I method_64572 rotateToPos + p 0 source + p 1 entity + p 2 pos + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_3144;)I method_64571 rotateFacingLookTarget + p 1 entity + p 2 lookTarget + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_64576 method_64576 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_64574 method_64574 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_64575 method_64575 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_64569 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_64570 method_64570 + p 0 context +c net/minecraft/class_10275 net/minecraft/entity/mob/CreakingEntity + f Lnet/minecraft/class_2940; field_54571 UNROOTED + f I field_54579 attackAnimationTimer + f F field_54575 ATTACK_DAMAGE + f Lnet/minecraft/class_2940; field_55487 CRUMBLING + f Lnet/minecraft/class_7094; field_55010 crumblingAnimationState + f I field_55493 playerIntersectionTimer + f Lnet/minecraft/class_2940; field_54572 ACTIVE + f I field_55491 nextEyeFlickerTime + f Lnet/minecraft/class_7094; field_54570 invulnerableAnimationState + f Z field_55490 glowingEyesWhileCrumbling + f Lnet/minecraft/class_7094; field_54568 attackAnimationState + f I field_55489 invulnerableAnimationTimer + f Lnet/minecraft/class_2940; field_55545 HOME_POS + m ()V method_64624 tickAttackAnimation + m ()Z method_64628 isUnrooted + m ()V method_65785 setCrumbling + m (Lnet/minecraft/class_1657;)V method_65117 activate + p 1 player + m ()Z method_65787 hasGlowingEyesWhileCrumbling + m ()V method_65793 finishCrumbling + m ()Lnet/minecraft/class_2338; method_65900 getHomePos + m ()Z method_64630 isActive + m (Lnet/minecraft/class_1282;)Lnet/minecraft/class_1657; method_65790 becomeAngryAndGetPlayer + p 1 damageSource + m ()Lnet/minecraft/class_5132$class_5133; method_64627 createCreakingAttributes + m ()Z method_64629 shouldBeUnrooted + m ()Z method_65784 isStuckWithPlayer + m ()V method_65118 deactivate + m ()Z method_65786 isCrumbling + m ()Z method_65902 isTransient + m ()V method_65788 updateCrumblingEyeFlicker + m (Z)V method_64631 setActive + p 1 active + m (Lnet/minecraft/class_1282;)V method_65791 killFromHeart + p 1 damageSource + m (Lnet/minecraft/class_2338;)V method_65901 setHomePos + p 1 pos + m (Lnet/minecraft/class_2338;)V method_65789 initHomePos + p 1 homePos +c net/minecraft/class_10275$class_10277 net/minecraft/entity/mob/CreakingEntity$CreakingJumpControl + m (Lnet/minecraft/class_10275;Lnet/minecraft/class_10275;)V + p 2 creaking +c net/minecraft/class_10275$class_10278 net/minecraft/entity/mob/CreakingEntity$CreakingLookControl + m (Lnet/minecraft/class_10275;Lnet/minecraft/class_10275;)V + p 2 creaking +c net/minecraft/class_10275$class_10276 net/minecraft/entity/mob/CreakingEntity$CreakingBodyControl + m (Lnet/minecraft/class_10275;Lnet/minecraft/class_10275;)V + p 2 creaking +c net/minecraft/class_10275$class_10282 net/minecraft/entity/mob/CreakingEntity$CreakingNavigation + m (Lnet/minecraft/class_10275;Lnet/minecraft/class_10275;Lnet/minecraft/class_1937;)V + p 3 world + p 2 creaking +c net/minecraft/class_10275$class_10283 net/minecraft/entity/mob/CreakingEntity$CreakingLandPathNodeMaker +c net/minecraft/class_10275$class_10279 net/minecraft/entity/mob/CreakingEntity$CreakingMoveControl + m (Lnet/minecraft/class_10275;Lnet/minecraft/class_10275;)V + p 2 creaking +c net/minecraft/class_10273 net/minecraft/datafixer/schema/Schema4070 +c net/minecraft/class_10274 net/minecraft/datafixer/schema/Schema4071 +c net/minecraft/class_3095 net/minecraft/server/command/RecipeCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13681 GIVE_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13682 TAKE_FAILED_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13516 method_13516 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13515 method_13515 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Ljava/util/Collection;)I method_13518 executeTake + p 2 recipes + p 1 targets + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13519 method_13519 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13517 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13521 method_13521 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Ljava/util/Collection;)I method_13520 executeGive + p 0 source + p 2 recipes + p 1 targets +c net/minecraft/class_3097 net/minecraft/server/command/ReloadCommand + f Lorg/slf4j/Logger; field_25343 LOGGER + m (Lnet/minecraft/class_3283;Lnet/minecraft/class_5219;Ljava/util/Collection;)Ljava/util/Collection; method_29478 findNewDataPacks + p 2 enabledDataPacks + p 1 saveProperties + p 0 dataPackManager + m (Lnet/minecraft/class_2168;Ljava/lang/Throwable;)Ljava/lang/Void; method_29479 method_29479 + p 1 throwable + m (Ljava/util/Collection;Lnet/minecraft/class_2168;)V method_29480 tryReloadDataPacks + p 0 dataPacks + p 1 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13530 method_13530 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13529 register + p 0 dispatcher +c net/minecraft/class_3098 net/minecraft/world/gen/structure/MineshaftStructure + f Lnet/minecraft/class_3098$class_3100; field_37802 type + f Lcom/mojang/serialization/MapCodec; field_37801 CODEC + m (Lnet/minecraft/class_6626;Lnet/minecraft/class_3195$class_7149;)I method_38678 addPieces + p 2 context + p 1 collector + m (Lnet/minecraft/class_3195$class_7302;Lnet/minecraft/class_3098$class_3100;)V + p 2 type + p 1 config + m (Lnet/minecraft/class_3098;)Lnet/minecraft/class_3098$class_3100; method_41667 method_41667 + p 0 mineshaftStructure +c net/minecraft/class_3098$class_3100 net/minecraft/world/gen/structure/MineshaftStructure$Type + f Ljava/util/function/IntFunction; field_41680 BY_ID + f Lnet/minecraft/class_2680; field_28852 fence + f Lnet/minecraft/class_2680; field_28850 log + f Lnet/minecraft/class_2680; field_28851 planks + f Ljava/lang/String; field_13689 name + f Lcom/mojang/serialization/Codec; field_24839 CODEC + f Lnet/minecraft/class_3098$class_3100; field_13691 MESA + f Lnet/minecraft/class_3098$class_3100; field_13692 NORMAL + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V + p 6 fence + p 5 planks + p 4 log + p 3 name + m ()Ljava/lang/String; method_13534 getName + m ()Lnet/minecraft/class_2680; method_33761 getPlanks + m ()Lnet/minecraft/class_2680; method_33762 getFence + m ()Lnet/minecraft/class_2680; method_33760 getLog + m (I)Lnet/minecraft/class_3098$class_3100; method_13535 byId + p 0 id +c net/minecraft/class_3091 net/minecraft/server/command/PlaySoundCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13678 FAILED_EXCEPTION + m (Lnet/minecraft/class_3222;)Ljava/util/Collection; method_57111 toList + p 0 player + m (Lnet/minecraft/class_3419;Lcom/mojang/brigadier/context/CommandContext;)I method_57113 method_57113 + p 1 context + m (Lnet/minecraft/class_3419;)Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; method_13497 makeArgumentsForCategory + p 0 category + m (Lcom/mojang/brigadier/context/CommandContext;)I method_57112 method_57112 + p 0 context + m (Lnet/minecraft/class_3419;Lcom/mojang/brigadier/context/CommandContext;)I method_13505 method_13505 + p 1 context + m (Lnet/minecraft/class_3419;Lcom/mojang/brigadier/context/CommandContext;)I method_13503 method_13503 + p 1 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13500 register + p 0 dispatcher + m (Lnet/minecraft/class_3419;Lcom/mojang/brigadier/context/CommandContext;)I method_13501 method_13501 + p 1 context + m (Lnet/minecraft/class_3419;Lcom/mojang/brigadier/context/CommandContext;)I method_13499 method_13499 + p 1 context + m (Lnet/minecraft/class_3419;Lcom/mojang/brigadier/context/CommandContext;)I method_13498 method_13498 + p 1 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_2960;Lnet/minecraft/class_3419;Lnet/minecraft/class_243;FFF)I method_13504 execute + p 2 sound + p 1 targets + p 0 source + p 6 pitch + p 5 volume + p 4 pos + p 3 category + p 7 minVolume +c net/minecraft/class_3093 net/minecraft/server/command/PublishCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13680 FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_13679 ALREADY_PUBLISHED_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13512 method_13512 + p 0 context + m (Lnet/minecraft/class_2168;IZLnet/minecraft/class_1934;)I method_13509 execute + p 3 gameMode + p 2 allowCommands + p 1 port + p 0 source + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13511 method_13511 + p 0 port + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13510 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_46871 method_46871 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_46870 method_46870 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13508 method_13508 + p 0 context + m (I)Lnet/minecraft/class_5250; method_46869 getStartedText + p 0 port +c net/minecraft/class_10260 net/minecraft/client/gui/screen/ingame/RecipeBookScreen + f Lnet/minecraft/class_507; field_54474 recipeBook + f Z field_54475 narrow + m ()V method_64512 addRecipeBook + m ()Lnet/minecraft/class_8029; method_64509 getRecipeBookButtonPos + m ()V method_64510 onRecipeBookToggled + m (Lnet/minecraft/class_1729;Lnet/minecraft/class_507;Lnet/minecraft/class_1661;Lnet/minecraft/class_2561;)V + p 2 recipeBook + p 1 handler + p 4 title + p 3 inventory + m ()Z method_64511 shouldAddPaddingToGhostResult + m (Lnet/minecraft/class_4185;)V method_64513 method_64513 + p 1 button +c net/minecraft/class_11592 net/minecraft/block/OxidizableCopperChestBlock + f Lcom/mojang/serialization/MapCodec; field_61433 CODEC + m ()Lnet/minecraft/class_5955$class_5811; method_72646 getDegradationLevel + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_72645 method_72645 + p 0 instance +c net/minecraft/class_10261 net/minecraft/client/render/entity/model/AbstractBoatEntityModel + f Lnet/minecraft/class_630; field_54481 rightPaddle + f Lnet/minecraft/class_630; field_54480 leftPaddle + m (Lnet/minecraft/class_10004;)V method_64516 setAngles + m (FILnet/minecraft/class_630;)V method_64515 setPaddleAngles + p 2 modelPart + p 1 paddle + p 0 angle +c net/minecraft/class_10264 net/minecraft/network/packet/s2c/play/EntityPositionSyncS2CPacket + f Lnet/minecraft/class_9139; field_54515 CODEC + f Z comp_3225 onGround + f I comp_3223 id + f Lnet/minecraft/class_10182; comp_3224 values + m (Lnet/minecraft/class_2602;)V method_64557 apply + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_10264; method_64558 create + p 0 entity + m ()I comp_3223 id + m ()Z comp_3225 onGround + m ()Lnet/minecraft/class_10182; comp_3224 values + m (ILnet/minecraft/class_10182;Z)V + p 1 id + p 2 values + p 3 onGround +c net/minecraft/class_11596 net/minecraft/inventory/ListInventory + m (ILnet/minecraft/class_1799;)V method_72664 setStackNoMarkDirty + p 2 stack + p 1 slot + m ()I method_72663 getFilledSlotCount + m (Lnet/minecraft/class_1799;)Z method_72651 canAccept + p 1 stack + m ()Lnet/minecraft/class_2371; method_72652 getHeldStacks +c net/minecraft/class_10265 net/minecraft/network/packet/s2c/play/PlayerRotationS2CPacket + f F comp_3231 pitch + f F comp_3230 yaw + f Z comp_4566 relativeYaw + f Z comp_4567 relativePitch + f Lnet/minecraft/class_9139; field_54516 CODEC + m (Lnet/minecraft/class_2602;)V method_64559 apply + m ()F comp_3231 pitch + m ()F comp_3230 yaw + m ()Z comp_4566 relativeYaw + m ()Z comp_4567 relativePitch + m (FZFZ)V + p 1 yaw + p 2 relativeYaw + p 3 pitch + p 4 relativePitch +c net/minecraft/class_11595 net/minecraft/block/entity/CopperGolemStatueBlockEntity + m (Lnet/minecraft/class_11573;)V method_72657 copyDataFrom + p 1 copperGolemEntity + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_11573; method_72658 createCopperGolem + p 1 state + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_11583$class_11584;)Lnet/minecraft/class_1799; method_74146 withComponents + p 2 pose + p 1 stack + m ()Lnet/minecraft/class_2622; method_72656 toUpdatePacket + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_11573;)Lnet/minecraft/class_11573; method_72659 setupEntity + p 2 entity + p 1 state + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos +c net/minecraft/class_10262 net/minecraft/client/render/entity/AbstractBoatEntityRenderer + m (Lnet/minecraft/class_10255;Lnet/minecraft/class_10004;F)V method_64518 updateRenderState + m ()Lnet/minecraft/class_1921; method_64520 getRenderLayer + m (Lnet/minecraft/class_10004;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;I)V method_64521 renderWaterMask + p 2 matrices + p 3 queue + p 1 state + p 4 light + m (Lnet/minecraft/class_10004;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_64519 render + m ()Lnet/minecraft/class_10004; method_64522 createRenderState + m ()Lnet/minecraft/class_583; method_64517 getModel +c net/minecraft/class_11594 net/minecraft/block/OxidizableLightningRodBlock + f Lnet/minecraft/class_5955$class_5811; field_61436 oxidationLevel + f Lcom/mojang/serialization/MapCodec; field_61435 CODEC + m (Lnet/minecraft/class_5955$class_5811;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 oxidationLevel + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_72649 method_72649 + p 0 instance + m ()Lnet/minecraft/class_5955$class_5811; method_72650 getDegradationLevel +c net/minecraft/class_10263 net/minecraft/client/render/entity/RaftEntityRenderer + f Lnet/minecraft/class_2960; field_54504 texture + f Lnet/minecraft/class_583; field_54503 model + m (Lnet/minecraft/class_5617$class_5618;Lnet/minecraft/class_5601;)V + p 2 layer + p 1 context + m (Ljava/lang/String;)Ljava/lang/String; method_64540 method_64540 + p 0 path +c net/minecraft/class_11593 net/minecraft/block/OxidizableCopperGolemStatueBlock + f Lcom/mojang/serialization/MapCodec; field_61434 CODEC + m ()Lnet/minecraft/class_5955$class_5811; method_72648 getDegradationLevel + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_72647 method_72647 + p 0 instance +c net/minecraft/class_10268 net/minecraft/network/packet/s2c/play/RecipeBookRemoveS2CPacket + f Lnet/minecraft/class_9139; field_54521 CODEC + f Ljava/util/List; comp_3235 recipes + m (Lnet/minecraft/class_2602;)V method_64563 apply + m ()Ljava/util/List; comp_3235 recipes + m (Ljava/util/List;)V + p 1 recipes +c net/minecraft/class_10269 net/minecraft/network/packet/s2c/play/RecipeBookSettingsS2CPacket + f Lnet/minecraft/class_9139; field_54522 CODEC + f Lnet/minecraft/class_5411; comp_3236 bookSettings + m (Lnet/minecraft/class_2602;)V method_64564 apply + m ()Lnet/minecraft/class_5411; comp_3236 bookSettings + m (Lnet/minecraft/class_5411;)V + p 1 bookSettings +c net/minecraft/class_10266 net/minecraft/network/packet/s2c/play/RecipeBookAddS2CPacket + f Lnet/minecraft/class_9139; field_54517 CODEC + f Z comp_3294 replace + f Ljava/util/List; comp_3232 entries + m (Lnet/minecraft/class_2602;)V method_64560 apply + m ()Z comp_3294 replace + m ()Ljava/util/List; comp_3232 entries + m (Ljava/util/List;Z)V + p 1 entries + p 2 replace +c net/minecraft/class_10266$class_10267 net/minecraft/network/packet/s2c/play/RecipeBookAddS2CPacket$Entry + f B field_54519 HIGHLIGHTED + c If set, plays an animation when the recipe is first viewed on the\nrecipe book. Has value {@value}. + f B field_54518 SHOW_NOTIFICATION + c If set, shows a toast for the unlocked recipe. Has value {@value}. + f Lnet/minecraft/class_9139; field_54520 PACKET_CODEC + f B comp_3234 flags + f Lnet/minecraft/class_10297; comp_3233 contents + m ()Z method_64562 isHighlighted + m ()Z method_64561 shouldShowNotification + m (Lnet/minecraft/class_10297;ZZ)V + p 2 showNotification + p 3 highlighted + p 1 display + m ()Lnet/minecraft/class_10297; comp_3233 contents + m ()B comp_3234 flags + m (Lnet/minecraft/class_10297;B)V + p 1 contents + p 2 flags +c net/minecraft/class_11598 net/minecraft/block/enums/SideChainPart + f Ljava/lang/String; field_61450 id + f Lnet/minecraft/class_11598; field_61446 UNCONNECTED + f Lnet/minecraft/class_11598; field_61447 RIGHT + f Lnet/minecraft/class_11598; field_61448 CENTER + f Lnet/minecraft/class_11598; field_61449 LEFT + m ()Z method_72669 isConnected + m ()Lnet/minecraft/class_11598; method_72673 connectToLeft + m ()Lnet/minecraft/class_11598; method_72674 disconnectFromRight + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()Lnet/minecraft/class_11598; method_72672 connectToRight + m (Lnet/minecraft/class_11598;)Z method_72670 isCenterOr + p 1 sideChainPart + m ()Z method_72671 isNotCenter + m ()Lnet/minecraft/class_11598; method_72675 disconnectFromLeft +c net/minecraft/class_11597 net/minecraft/block/entity/ShelfBlockEntity + f Lorg/slf4j/Logger; field_61442 LOGGER + f I field_61441 SLOT_COUNT + f Ljava/lang/String; field_62078 ALIGN_ITEMS_TO_BOTTOM_KEY + f Z field_62079 alignItemsToBottom + f Lnet/minecraft/class_2371; field_61443 heldStacks + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m ()Lnet/minecraft/class_2622; method_72667 toUpdatePacket + m ()Z method_73326 shouldAlignItemsToBottom + m (ILnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_72666 swapStackNoMarkDirty + p 1 slot + p 2 stack + m (Lnet/minecraft/class_6880$class_6883;)V method_72665 markDirty + p 1 gameEvent +c net/minecraft/class_3062 net/minecraft/server/command/FunctionCommand + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_44982 ARGUMENT_NOT_COMPOUND_EXCEPTION + f Lnet/minecraft/class_3062$class_8832; field_46646 RESULT_REPORTER + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; field_13662 SUGGESTION_PROVIDER + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_46644 NO_FUNCTIONS_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_46645 INSTANTIATION_FAILURE_EXCEPTION + m (Lnet/minecraft/class_8839;Lnet/minecraft/class_3062$class_8832;Lnet/minecraft/class_2960;Lnet/minecraft/class_8935;)Lnet/minecraft/class_8935; method_54858 wrapReturnValueConsumer + p 3 wrapped + p 2 id + p 1 resultConsumer + p 0 flags + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54274 method_54274 + p 1 argument2 + p 0 argument + m (Ljava/util/Collection;Lnet/minecraft/class_2487;Lnet/minecraft/class_8839;Lnet/minecraft/class_8839;Lnet/minecraft/class_8855;Lnet/minecraft/class_3062$class_8832;)V method_54859 enqueueInReturnRun + p 1 args + p 0 functions + p 5 resultConsumer + p 4 control + p 3 functionSource + p 2 parentSource + m (Lnet/minecraft/class_2168;)Lnet/minecraft/class_2168; method_54272 createFunctionCommandSource + p 0 source + m (Lnet/minecraft/class_3062$class_8832;Lnet/minecraft/class_8839;Lnet/minecraft/class_2960;Lnet/minecraft/class_8935;ZI)V method_54857 method_54857 + p 4 successful + p 5 returnValue + m (Lnet/minecraft/class_2203$class_2209;Lnet/minecraft/class_3162;)Lnet/minecraft/class_2487; method_52313 getArgument + p 0 path + p 1 object + m (Ljava/util/Collection;Lnet/minecraft/class_2487;Lnet/minecraft/class_8839;Lnet/minecraft/class_8839;Lnet/minecraft/class_8855;Lnet/minecraft/class_3062$class_8832;)V method_54861 enqueueOutsideReturnRun + p 5 resultConsumer + p 4 control + p 3 functionSource + p 2 parentSource + p 1 args + p 0 functions + m (Ljava/util/Collection;Lnet/minecraft/class_2487;Lnet/minecraft/class_8839;Lnet/minecraft/class_8839;Lnet/minecraft/class_8855;Lnet/minecraft/class_3062$class_8832;Lnet/minecraft/class_8936;)V method_54275 enqueueAction + p 5 resultConsumer + p 4 control + p 3 functionSource + p 2 parentSource + p 1 args + p 0 commandFunctions + p 6 flags + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_8855;Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_8839;Lnet/minecraft/class_2158;Lnet/minecraft/class_2960;Lnet/minecraft/class_8935;Z)V method_54860 enqueueFunction + p 3 source + p 2 dispatcher + p 1 control + p 0 args + p 7 propagateReturn + p 6 returnValueConsumer + p 5 id + p 4 function + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13382 method_13382 + p 0 context + p 1 builder + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_52314 method_52314 + p 0 argument + m (Lnet/minecraft/class_3062$class_8932;Lnet/minecraft/class_8935;Lnet/minecraft/class_8854;Lnet/minecraft/class_8937;)V method_54855 method_54855 + p 2 context + p 3 frame + m (Lnet/minecraft/class_3062$class_8932;ZI)V method_54856 method_54856 + p 2 returnValue + p 1 successful + m (Lnet/minecraft/class_3164$class_3167;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_52309 method_52309 + p 1 builder + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54273 method_54273 + p 0 argument + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13380 register + p 0 dispatcher +c net/minecraft/class_3062$class_8833 net/minecraft/server/command/FunctionCommand$Command + m (Lnet/minecraft/class_2168;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/class_8936;Lnet/minecraft/class_8855;)V method_54283 executeInner + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/class_2487; method_54277 getArguments + p 1 context +c net/minecraft/class_3062$class_8932 net/minecraft/server/command/FunctionCommand$ReturnValueAdder + f Z field_47152 successful + f I field_47153 returnValue + m (I)V method_54862 onSuccess + p 1 returnValue +c net/minecraft/class_3062$class_8832 net/minecraft/server/command/FunctionCommand$ResultConsumer + m (Ljava/lang/Object;Lnet/minecraft/class_2960;I)V method_54280 accept + p 3 result + p 2 id + p 1 source +c net/minecraft/class_3062$5 net/minecraft/server/command/FunctionCommand$5 + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2960;I)V method_54279 accept +c net/minecraft/class_4394 net/minecraft/client/realms/gui/screen/RealmsGenericErrorScreen + f Lnet/minecraft/class_5489; field_63825 text + f Lnet/minecraft/class_2561; field_63826 GENERIC_ERROR_TEXT + f Lnet/minecraft/class_437; field_22695 parent + f Lnet/minecraft/class_2561; field_63827 detail + m (Lnet/minecraft/class_4355;Lnet/minecraft/class_437;)V + p 1 realmsServiceException + p 2 parent + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_437;)V + p 3 parent + p 2 description + p 1 title + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_437;)V + p 1 description + p 2 parent + m (Lnet/minecraft/class_4394$class_8570;Lnet/minecraft/class_437;)V + p 1 messages + p 2 parent + m (Lnet/minecraft/class_4185;)V method_25160 method_25160 + p 1 button +c net/minecraft/class_4394$class_8570 net/minecraft/client/realms/gui/screen/RealmsGenericErrorScreen$ErrorMessages + f Lnet/minecraft/class_2561; comp_1534 detail + f Lnet/minecraft/class_2561; comp_1533 title + m (Lnet/minecraft/class_4355;)Lnet/minecraft/class_4394$class_8570; method_75754 of + p 0 exception + m ()Lnet/minecraft/class_2561; comp_1533 title + m ()Lnet/minecraft/class_2561; comp_1534 detail + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 1 title + p 2 detail +c net/minecraft/class_3064 net/minecraft/server/command/GameModeCommand + f Lnet/minecraft/class_12090; field_63167 PERMISSION_CHECK + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13388 register + p 0 dispatcher + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1934;)V method_71688 execute + p 0 target + p 1 gameMode + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13391 method_13391 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13386 method_13386 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/Collection;Lnet/minecraft/class_1934;)I method_13387 execute + p 1 targets + p 2 gameMode + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3222;Lnet/minecraft/class_1934;)V method_13390 sendFeedback + p 0 source + p 2 gameMode + p 1 player + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3222;Lnet/minecraft/class_1934;)Z method_71689 execute + p 2 gameMode + p 0 source + p 1 target +c net/minecraft/class_3065 net/minecraft/server/command/GameRuleCommand + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_12279;)I method_13397 executeQuery + p 1 key + p 0 source + m (Lnet/minecraft/class_12279;Lcom/mojang/brigadier/context/CommandContext;)I method_76684 method_76684 + p 1 context + m (Lnet/minecraft/class_12279;Lcom/mojang/brigadier/builder/LiteralArgumentBuilder;)Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; method_76682 appendRule + p 1 builder + p 0 rule + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13392 register + p 0 dispatcher + p 1 commandRegistryAccess + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/class_12279;)I method_13394 executeSet + p 0 context + p 1 key + m (Lnet/minecraft/class_12279;Lcom/mojang/brigadier/context/CommandContext;)I method_76683 method_76683 + p 1 context +c net/minecraft/class_4395 net/minecraft/client/realms/gui/screen/RealmsInviteScreen + f Lnet/minecraft/class_2561; field_26490 PLAYER_ERROR_TEXT + f Lnet/minecraft/class_2561; field_49459 INVITE_TEXT + f Lnet/minecraft/class_2561; field_19887 errorMessage + f Lnet/minecraft/class_2561; field_44943 INVITING_TEXT + f Lnet/minecraft/class_8132; field_49457 layout + f Lnet/minecraft/class_2561; field_26489 INVITE_PROFILE_NAME_TEXT + f Lnet/minecraft/class_4388; field_19881 configureScreen + f Lnet/minecraft/class_4185; field_49458 inviteButton + f Lnet/minecraft/class_4877; field_19880 serverData + f Lnet/minecraft/class_342; field_22696 nameWidget + m (Lnet/minecraft/class_4185;)V method_25162 method_25162 + p 1 button + m (Lnet/minecraft/class_4388;Lnet/minecraft/class_4877;)V + p 2 serverData + p 1 configureScreen + m (Ljava/lang/Boolean;)V method_71218 method_71218 + p 1 success + m (Lnet/minecraft/class_2561;)V method_21286 showError + p 1 errorMessage + m ()V method_21284 onInvite + m (Lnet/minecraft/class_4185;)V method_57679 method_57679 + p 1 button +c net/minecraft/class_4390 net/minecraft/client/realms/gui/screen/RealmsCreateRealmScreen + f Lnet/minecraft/class_342; field_19832 descriptionBox + f Ljava/lang/Runnable; field_46705 worldCreator + f Lnet/minecraft/class_2561; field_46706 TITLE_TEXT + f Lnet/minecraft/class_4325; field_19830 parent + f Lnet/minecraft/class_342; field_19831 nameBox + f Lnet/minecraft/class_2561; field_26488 WORLD_DESCRIPTION_TEXT + f Lnet/minecraft/class_8132; field_45242 layout + f Lnet/minecraft/class_2561; field_26487 WORLD_NAME_TEXT + m (Lnet/minecraft/class_4185;)V method_54374 method_54374 + p 1 button + m (Lnet/minecraft/class_4390;Lnet/minecraft/class_364;)V method_52665 method_52665 + p 1 child + m (Lnet/minecraft/class_4877;)V method_64361 createWorld + p 1 server + m (Lnet/minecraft/class_4185;)V method_52666 method_52666 + p 1 button + m (Lnet/minecraft/class_4877;Z)V method_21245 createWorld + p 2 prerelease + p 1 realmsServer + m (Lnet/minecraft/class_4325;Lnet/minecraft/class_4877;Z)V + p 3 prerelease + p 2 server + p 1 parent + m (Lnet/minecraft/class_4185;Ljava/lang/String;)V method_52667 method_52667 + p 1 name + m (Ljava/util/concurrent/atomic/AtomicBoolean;Lnet/minecraft/class_4877;)V method_64360 method_64360 + p 2 prereleaseServer + m (Lnet/minecraft/class_4877;)Lnet/minecraft/class_4877; method_64357 createPrereleaseServer + p 0 parent + m (Ljava/lang/Throwable;)Ljava/lang/Void; method_64358 method_64358 + p 1 throwable +c net/minecraft/class_3060 net/minecraft/server/command/ForceLoadCommand + f I field_33392 MAX_CHUNKS + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_13657 TOO_BIG_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13660 REMOVED_FAILURE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_13659 QUERY_FAILURE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13658 ADDED_FAILURE_EXCEPTION + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13369 method_13369 + p 0 chunkPos + p 1 registryKey + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13363 method_13363 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13364 method_13364 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13375 method_13375 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13370 method_13370 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2265;)I method_13374 executeQuery + p 1 pos + p 0 source + m (Lnet/minecraft/class_2168;)I method_13373 executeQuery + p 0 source + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13365 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13367 method_13367 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13378 method_13378 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13368 method_13368 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2265;Lnet/minecraft/class_2265;Z)I method_13372 executeChange + p 3 forceLoaded + p 2 to + p 1 from + p 0 source + m (Lnet/minecraft/class_2168;)I method_13366 executeRemoveAll + p 0 source + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13376 method_13376 + p 0 maxCount + p 1 count + m (Lnet/minecraft/class_3218;J)V method_13377 method_13377 + p 1 chunkPos +c net/minecraft/class_4392 net/minecraft/client/realms/gui/screen/RealmsDownloadLatestWorldScreen + f Lnet/minecraft/class_437; field_19845 parent + f Z field_19856 showDots + f Lnet/minecraft/class_4889; field_19846 worldDownload + f Lnet/minecraft/class_4185; field_22694 cancelButton + f Ljava/lang/Long; field_19859 previousWrittenBytes + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; field_22693 onBack + f Lnet/minecraft/class_4392$class_4393; field_19851 downloadStatus + f Z field_19857 finished + f Lorg/slf4j/Logger; field_19844 LOGGER + f Lnet/minecraft/class_2561; field_19847 downloadTitle + f Lnet/minecraft/class_2561; field_19853 status + f J field_19861 bytesPerSecond + f Ljava/util/concurrent/locks/ReentrantLock; field_19868 DOWNLOAD_LOCK + f Lcom/google/common/util/concurrent/RateLimiter; field_19848 narrationRateLimiter + f Ljava/lang/Long; field_19860 previousTimeSnapshot + f Z field_19855 cancelled + f Z field_19867 checked + f Lnet/minecraft/class_2561; field_20494 downloadError + f Ljava/lang/String; field_19850 worldName + f Ljava/lang/String; field_19854 progress + f Z field_19858 extracting + f [Ljava/lang/String; field_19863 DOTS + f I field_19864 dotIndex + f I field_19862 animTick + m (Lnet/minecraft/class_332;)V method_21276 drawDownloadSpeed + p 1 context + m (Lnet/minecraft/class_332;)V method_21274 drawProgressBar + p 1 context + m (Lnet/minecraft/class_332;)V method_21272 drawDots + p 1 context + m ()V method_21278 downloadSave + m (Lnet/minecraft/class_4185;)V method_25158 method_25158 + p 1 button + m (Lnet/minecraft/class_332;J)V method_21266 drawDownloadSpeed0 + p 1 context + p 2 bytesPerSecond + m ()V method_21279 downloadCancelled + m ()V method_21265 checkDownloadSize + m (Lnet/minecraft/class_437;Lnet/minecraft/class_4889;Ljava/lang/String;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;)V + p 4 onBack + p 3 worldName + p 2 worldDownload + p 1 parent + m ()Lnet/minecraft/class_2561; method_37012 getNarration + m (Ljava/lang/String;)J method_21259 getContentLength + p 1 downloadLink +c net/minecraft/class_4392$class_4393 net/minecraft/client/realms/gui/screen/RealmsDownloadLatestWorldScreen$DownloadStatus + f J field_19872 totalBytes + f J field_19871 bytesWritten +c net/minecraft/class_3066 net/minecraft/world/gen/feature/HugeRedMushroomFeature +c net/minecraft/class_4398 net/minecraft/client/realms/gui/screen/RealmsLongRunningMcoTaskScreen + f Lnet/minecraft/class_437; field_19912 parent + f Ljava/util/List; field_46707 tasks + f Lorg/slf4j/Logger; field_19909 LOGGER + f Lnet/minecraft/class_8667; field_46111 layout + f Lnet/minecraft/class_2561; field_19914 title + f Lnet/minecraft/class_8661; field_46112 loading + f Lnet/minecraft/class_4907; field_33779 NARRATOR + m (Lnet/minecraft/class_4185;)V method_25168 method_25168 + p 1 button + m (Lnet/minecraft/class_4398;Lnet/minecraft/class_364;)V method_53795 method_53795 + p 1 child + m (Lnet/minecraft/class_7847;)V method_53796 method_53796 + p 0 positioner + m (Lnet/minecraft/class_2561;)V method_53797 setTitle + p 1 title + m (Lnet/minecraft/class_437;[Lnet/minecraft/class_4358;)V + p 1 parent + p 2 tasks + m ()V method_53798 onCancel +c net/minecraft/class_10290 net/minecraft/recipe/RecipePropertySet + f Lnet/minecraft/class_10290; field_54655 EMPTY + f Lnet/minecraft/class_5321; field_54646 REGISTRY + f Ljava/util/Set; field_54656 usableItems + f Lnet/minecraft/class_9139; field_54654 PACKET_CODEC + f Lnet/minecraft/class_5321; field_54648 SMITHING_TEMPLATE + f Lnet/minecraft/class_5321; field_54649 SMITHING_ADDITION + f Lnet/minecraft/class_5321; field_54647 SMITHING_BASE + f Lnet/minecraft/class_5321; field_54652 SMOKER_INPUT + f Lnet/minecraft/class_5321; field_54653 CAMPFIRE_INPUT + f Lnet/minecraft/class_5321; field_54650 FURNACE_INPUT + f Lnet/minecraft/class_5321; field_54651 BLAST_FURNACE_INPUT + m (Ljava/util/Collection;)Lnet/minecraft/class_10290; method_64705 of + p 0 ingredients + m (Lnet/minecraft/class_1799;)Z method_64701 canUse + p 1 stack + m (Ljava/util/List;)Lnet/minecraft/class_10290; method_64706 method_64706 + p 0 items + m (Lnet/minecraft/class_10290;)Ljava/util/List; method_64703 method_64703 + p 0 set + m (Ljava/util/Set;)V + p 1 usableItems + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_64704 register + p 0 id +c net/minecraft/class_3068 net/minecraft/server/command/GiveCommand + f I field_33394 MAX_STACKS + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2290;Ljava/util/Collection;I)I method_13401 execute + p 1 item + p 0 source + p 3 count + p 2 targets + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13402 register + p 1 commandRegistryAccess + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13400 method_13400 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13403 method_13403 + p 0 context +c net/minecraft/class_3069 net/minecraft/server/command/HelpCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13665 FAILED_EXCEPTION + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13405 register + p 0 dispatcher + m (Lcom/mojang/brigadier/CommandDispatcher;Lcom/mojang/brigadier/context/CommandContext;)I method_13406 method_13406 + p 1 context + m (Lcom/mojang/brigadier/CommandDispatcher;Lcom/mojang/brigadier/context/CommandContext;)I method_13407 method_13407 + p 1 context +c net/minecraft/class_4399 net/minecraft/client/realms/gui/screen/RealmsNotificationsScreen + f Lnet/minecraft/class_4399$class_8207; field_43040 notificationsOnly + f Lnet/minecraft/class_7581$class_7584; field_39695 periodicRunnersManager + f Lnet/minecraft/class_4399$class_8207; field_43039 newsAndNotifications + f Lnet/minecraft/class_4399$class_8207; field_43037 currentRunnersFactory + f Lnet/minecraft/class_2960; field_45246 NEWS_ICON_TEXTURE + f Lnet/minecraft/class_2960; field_45248 TRIAL_AVAILABLE_ICON_TEXTURE + f I field_19924 pendingInvitesCount + f Z field_19928 hasUnreadNews + f Z field_19926 trialAvailable + f Z field_43038 hasUnseenNotification + f Ljava/util/concurrent/CompletableFuture; field_19927 validClient + f Lnet/minecraft/class_2960; field_45245 UNSEEN_NOTIFICATION_ICON_TEXTURE + f Lnet/minecraft/class_2960; field_45247 INVITE_ICON_TEXTURE + m (Ljava/lang/Boolean;)V method_49587 method_49587 + p 0 trialAvailable + m (Ljava/util/List;)V method_49591 method_49591 + p 0 notifications + m ()Z method_25169 shouldShowRealmsNews + m (Lnet/minecraft/class_8647$class_8648;)Ljava/lang/Boolean; method_68700 method_68700 + p 0 info + m (Ljava/lang/Integer;)V method_49588 method_49588 + p 1 pendingInvitesCount + m ()Z method_25170 isTitleScreen + m (Lnet/minecraft/class_332;)V method_21295 drawIcons + p 1 context + m ()Lnet/minecraft/class_4399$class_8207; method_49584 getRunnersFactory + m (Lnet/minecraft/class_7578;Lnet/minecraft/class_7581$class_7584;)V method_49590 addNotificationRunner + p 1 checkers + p 2 manager + m (Lnet/minecraft/class_7578;Lnet/minecraft/class_4876;)V method_49585 method_49585 + p 1 news + m (Lnet/minecraft/class_7578;Lnet/minecraft/class_7581$class_7584;)V method_49586 addRunners + p 1 checkers + p 2 manager +c net/minecraft/class_4399$class_8207 net/minecraft/client/realms/gui/screen/RealmsNotificationsScreen$NotificationRunnersFactory + m ()Z method_49592 isNews + m (Lnet/minecraft/class_7578;)Lnet/minecraft/class_7581$class_7584; method_49593 createPeriodicRunnersManager + p 1 checkers +c net/minecraft/class_10294 net/minecraft/recipe/display/FurnaceRecipeDisplay + f Lcom/mojang/serialization/MapCodec; field_54658 CODEC + f Lnet/minecraft/class_10295$class_10296; field_54660 SERIALIZER + f Lnet/minecraft/class_9139; field_54659 PACKET_CODEC + f F comp_3296 experience + f I comp_3295 duration + f Lnet/minecraft/class_10302; comp_3256 ingredient + f Lnet/minecraft/class_10302; comp_3257 fuel + f Lnet/minecraft/class_10302; comp_3258 result + f Lnet/minecraft/class_10302; comp_3259 craftingStation + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_64727 method_64727 + p 0 instance + m ()I comp_3295 duration + m ()F comp_3296 experience + m ()Lnet/minecraft/class_10302; comp_3257 fuel + m ()Lnet/minecraft/class_10302; comp_3256 ingredient + m (Lnet/minecraft/class_10302;Lnet/minecraft/class_10302;Lnet/minecraft/class_10302;Lnet/minecraft/class_10302;IF)V + p 1 ingredient + p 2 fuel + p 3 result + p 4 craftingStation + p 5 duration + p 6 experience +c net/minecraft/class_10291 net/minecraft/recipe/display/CuttingRecipeDisplay + f Lnet/minecraft/class_10302; comp_3251 optionDisplay + f Ljava/util/Optional; comp_3252 recipe + m ()Lnet/minecraft/class_9139; method_64707 codec + m (Lnet/minecraft/class_10302;)Lnet/minecraft/class_10291; method_64708 method_64708 + p 0 display + m ()Lnet/minecraft/class_10302; comp_3251 optionDisplay + m ()Ljava/util/Optional; comp_3252 recipe + m (Lnet/minecraft/class_10302;Ljava/util/Optional;)V + p 1 optionDisplay + p 2 recipe +c net/minecraft/class_10291$class_10292 net/minecraft/recipe/display/CuttingRecipeDisplay$GroupEntry + f Lnet/minecraft/class_10291; comp_3254 recipe + f Lnet/minecraft/class_1856; comp_3253 input + m ()Lnet/minecraft/class_9139; method_64709 codec + m ()Lnet/minecraft/class_1856; comp_3253 input + m ()Lnet/minecraft/class_10291; comp_3254 recipe + m (Lnet/minecraft/class_1856;Lnet/minecraft/class_10291;)V + p 1 input + p 2 recipe +c net/minecraft/class_10291$class_10293 net/minecraft/recipe/display/CuttingRecipeDisplay$Grouping + f Ljava/util/List; comp_3255 entries + m ()Lnet/minecraft/class_9139; method_64713 codec + m ()Lnet/minecraft/class_10291$class_10293; method_64710 empty + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_10291$class_10292;)Z method_64715 method_64715 + p 1 entry + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_10291$class_10292;)Z method_64712 method_64712 + p 1 entry + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_10291$class_10293; method_64714 filter + p 1 stack + m ()Z method_64716 isEmpty + m ()I method_64717 size + m (Lnet/minecraft/class_1799;)Z method_64711 contains + p 1 stack + m ()Ljava/util/List; comp_3255 entries + m (Ljava/util/List;)V + p 1 entries +c net/minecraft/class_10297 net/minecraft/recipe/RecipeDisplayEntry + c A recipe that is synced to the clients. Note that this does not include\nthe recipe's ID; the recipe is instead referred to using {@link NetworkRecipeId},\nwhich is assigned at runtime. + f Lnet/minecraft/class_9139; field_54663 PACKET_CODEC + f Ljava/util/OptionalInt; comp_3264 group + f Lnet/minecraft/class_10298; comp_3262 id + f Lnet/minecraft/class_10295; comp_3263 display + f Ljava/util/Optional; comp_3266 craftingRequirements + f Lnet/minecraft/class_10355; comp_3265 category + m (Lnet/minecraft/class_9875;)Z method_64729 isCraftable + p 1 finder + m (Lnet/minecraft/class_10352;)Ljava/util/List; method_64730 getStacks + p 1 context + m ()Ljava/util/OptionalInt; comp_3264 group + m ()Lnet/minecraft/class_10355; comp_3265 category + m ()Lnet/minecraft/class_10298; comp_3262 id + m ()Lnet/minecraft/class_10295; comp_3263 display + m ()Ljava/util/Optional; comp_3266 craftingRequirements + m (Lnet/minecraft/class_10298;Lnet/minecraft/class_10295;Ljava/util/OptionalInt;Lnet/minecraft/class_10355;Ljava/util/Optional;)V + p 1 id + p 2 display + p 3 group + p 4 category + p 5 craftingRequirements +c net/minecraft/class_10298 net/minecraft/recipe/NetworkRecipeId + f Lnet/minecraft/class_9139; field_54664 PACKET_CODEC + f I comp_3267 index + m ()I comp_3267 index + m (I)V + p 1 index +c net/minecraft/class_10295 net/minecraft/recipe/display/RecipeDisplay + f Lcom/mojang/serialization/Codec; field_54661 CODEC + f Lnet/minecraft/class_9139; field_54662 PACKET_CODEC + m ()Lnet/minecraft/class_10295$class_10296; method_64726 serializer + m (Lnet/minecraft/class_7699;)Z method_64728 isEnabled + p 1 features + m ()Lnet/minecraft/class_10302; comp_3259 craftingStation + m ()Lnet/minecraft/class_10302; comp_3258 result +c net/minecraft/class_10295$class_10296 net/minecraft/recipe/display/RecipeDisplay$Serializer + f Lnet/minecraft/class_9139; comp_3261 streamCodec + f Lcom/mojang/serialization/MapCodec; comp_3260 codec + m ()Lnet/minecraft/class_9139; comp_3261 streamCodec + m ()Lcom/mojang/serialization/MapCodec; comp_3260 codec + m (Lcom/mojang/serialization/MapCodec;Lnet/minecraft/class_9139;)V + p 1 codec + p 2 streamCodec +c net/minecraft/class_10299 net/minecraft/recipe/display/RecipeDisplayBootstrap + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_10295$class_10296; method_64731 registerAndGetDefault + p 0 registry +c net/minecraft/class_3073 net/minecraft/server/command/KickCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_47520 CANNOT_KICK_SINGLEPLAYER_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_46229 CANNOT_KICK_OWNER_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13412 method_13412 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13410 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13409 method_13409 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/Collection;Lnet/minecraft/class_2561;)I method_13411 execute + p 2 reason + p 1 targets + p 0 source +c net/minecraft/class_3074 net/minecraft/world/gen/feature/IcebergFeature + m (III)I method_13417 method_13417 + p 3 factor + p 2 height + p 1 y + m (III)I method_13416 decreaseValueNearTop + p 3 value + p 2 height + p 1 y + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;IIIIIIZIDZLnet/minecraft/class_2680;)V method_13426 placeAt + p 7 offsetZ + p 6 offsetY + p 5 offsetX + p 4 height + p 15 state + p 14 placeSnow + p 12 randomSine + p 3 pos + p 2 random + p 1 world + m (IILnet/minecraft/class_2338;IID)D method_13424 getDistance + p 3 pos + p 4 divisor1 + p 5 divisor2 + p 6 randomSine + p 1 x + p 2 z + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_1936;IILnet/minecraft/class_2338;ZIDI)V method_13428 method_13428 + p 5 pos + p 2 world + p 1 random + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z method_13414 isAirBelow + p 2 pos + p 1 world + m (IILnet/minecraft/class_2338;Lnet/minecraft/class_1936;ZDLnet/minecraft/class_2338;II)V method_13415 method_13415 + p 3 pos + p 2 y + p 5 placeWater + p 4 world + m (Lnet/minecraft/class_2680;)Z method_13420 isSnowOrIce + p 0 state + m (IILnet/minecraft/class_2338;ILnet/minecraft/class_5819;)D method_13421 method_13421 + p 5 random + p 1 x + p 3 pos + p 2 z + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;IIZZLnet/minecraft/class_2680;)V method_13425 placeBlockOrSnow + p 8 state + p 2 world + p 3 random + p 1 pos + p 6 lessSnow + p 7 placeSnow + p 4 heightRemaining + p 5 height + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)V method_13422 clearSnowAbove + p 2 pos + p 1 world + m (Lnet/minecraft/class_5819;III)I method_13419 method_13419 + p 3 height + p 2 y + p 1 random + p 4 factor + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;IIZI)V method_13418 method_13418 + p 1 world + p 4 height + p 2 pos + m (Lnet/minecraft/class_5819;III)I method_13427 method_13427 + p 4 factor + p 3 height + p 2 y + p 1 random +c net/minecraft/class_3075 net/minecraft/server/command/KillCommand + m (Lnet/minecraft/class_2168;Ljava/util/Collection;)I method_13430 execute + p 0 source + p 1 targets + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13431 method_13431 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22832 method_22832 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13429 register + p 0 dispatcher +c net/minecraft/class_3076 net/minecraft/world/gen/structure/JungleTempleStructure + f Lcom/mojang/serialization/MapCodec; field_37800 CODEC +c net/minecraft/class_3070 net/minecraft/world/gen/feature/IceSpikeFeature +c net/minecraft/class_3071 net/minecraft/world/gen/structure/IglooStructure + f Lcom/mojang/serialization/MapCodec; field_37793 CODEC + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_6626;)V method_41657 method_41657 + p 2 collector + m (Lnet/minecraft/class_6626;Lnet/minecraft/class_3195$class_7149;)V method_38675 addPieces + p 1 collector + p 2 context +c net/minecraft/class_3078 net/minecraft/server/command/ListCommand + m (Lnet/minecraft/class_3222;)Lnet/minecraft/class_2561; method_30310 method_30310 + p 0 player + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_13435 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;)I method_13437 executeNames + p 0 source + m (Lnet/minecraft/class_2168;)I method_13436 executeUuids + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13433 method_13433 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13438 method_13438 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/util/function/Function;)I method_13434 execute + p 0 source + p 1 nameProvider +c net/minecraft/class_3079 net/minecraft/server/command/LocateCommand + f I field_39254 LOCATE_BIOME_VERTICAL_BLOCK_CHECK_INTERVAL + f I field_39252 LOCATE_BIOME_RADIUS + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_39247 BIOME_NOT_FOUND_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_39249 POI_NOT_FOUND_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_39245 STRUCTURE_NOT_FOUND_EXCEPTION + f I field_39255 LOCATE_POI_RADIUS + f I field_39253 LOCATE_BIOME_HORIZONTAL_BLOCK_CHECK_INTERVAL + f I field_39251 LOCATE_STRUCTURE_RADIUS + f Lorg/slf4j/Logger; field_41660 LOGGER + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_39246 STRUCTURE_INVALID_EXCEPTION + m (IIII)F method_13439 getDistance + p 1 y1 + p 0 x1 + p 3 y2 + p 2 x2 + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_7737$class_7741;)I method_43915 executeLocatePoi + p 1 predicate + p 0 source + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_7066$class_7068;Lnet/minecraft/class_2338;Lcom/mojang/datafixers/util/Pair;Ljava/lang/String;ZLjava/time/Duration;)I method_24499 sendCoordinates + p 6 timeTaken + p 5 includeY + p 4 successMessage + p 3 result + p 2 currentPos + p 1 structure + p 0 source + m (Lnet/minecraft/class_7737$class_7741;Lnet/minecraft/class_6880$class_6883;)Ljava/lang/String; method_45151 method_45151 + p 1 entry + m (Lnet/minecraft/class_7066$class_7068;Lnet/minecraft/class_2378;)Ljava/util/Optional; method_43907 getStructureListForPredicate + p 1 structureRegistry + p 0 predicate + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_13443 register + p 0 dispatcher + p 1 registryAccess + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43913 method_43913 + p 0 id + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43914 method_43914 + p 0 context + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_41004 method_41004 + p 0 key + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43904 method_43904 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_39985 method_39985 + p 0 id + m (Lnet/minecraft/class_2338;Ljava/lang/String;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_13447 method_13447 + p 2 style + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_5321;)Ljava/util/Optional; method_43909 method_43909 + p 1 key + m (Lnet/minecraft/class_7737$class_7741;Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/class_6885$class_6888;)Ljava/lang/String; method_45150 method_45150 + p 2 tag + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_7737$class_7741;)I method_43912 executeLocateBiome + p 1 predicate + p 0 source + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43917 method_43917 + p 0 id + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_7737$class_7741;Lnet/minecraft/class_2338;Lcom/mojang/datafixers/util/Pair;Ljava/lang/String;ZLjava/time/Duration;)I method_45148 sendCoordinates + p 3 result + p 4 successMessage + p 1 predicate + p 2 currentPos + p 5 includeY + p 6 timeTaken + p 0 source + m (Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/class_6862;)Ljava/lang/String; method_40998 method_40998 + p 1 key + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43911 method_43911 + p 0 context + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_6885$class_6886; method_43908 method_43908 + p 0 entry + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_7066$class_7068;)I method_43905 executeLocateStructure + p 1 predicate + p 0 source + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;Lcom/mojang/datafixers/util/Pair;Ljava/lang/String;ZLjava/lang/String;Ljava/time/Duration;)I method_45149 sendCoordinates + p 1 currentPos + p 0 source + p 3 successMessage + p 2 result + p 5 entryString + p 4 includeY + p 6 timeTaken + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_41002 method_41002 + p 0 id +c net/minecraft/class_10280 net/minecraft/entity/mob/CreakingBrain + f Lcom/google/common/collect/ImmutableList; field_54585 SENSORS + f Lcom/google/common/collect/ImmutableList; field_54586 MEMORY_MODULES + m (Lnet/minecraft/class_10275;Lnet/minecraft/class_4095;)V method_64638 addFightTasks + p 0 creaking + p 1 brain + m (Lnet/minecraft/class_4095;)V method_64637 addIdleTasks + p 0 brain + m (Lnet/minecraft/class_10275;Lnet/minecraft/class_1309;)Z method_66686 canTarget + p 1 target + p 0 creaking + m (Lnet/minecraft/class_1309;Ljava/util/List;)Ljava/lang/Boolean; method_66684 method_66684 + p 1 players + m (Lnet/minecraft/class_10275;Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_64639 create + p 1 brain + p 0 creaking + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_10275;)Z method_64636 method_64636 + p 1 creaking + p 0 world + m (Lnet/minecraft/class_10275;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Z method_66685 method_66685 + p 1 world + p 2 target + m ()Lnet/minecraft/class_4095$class_5303; method_64632 createBrainProfile + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_10275;)Ljava/util/Optional; method_64633 method_64633 + p 1 creaking + p 0 world + m (Lnet/minecraft/class_4095;)V method_64634 addCoreTasks + p 0 brain + m (Lnet/minecraft/class_10275;)V method_64635 updateActivities + p 0 creaking +c net/minecraft/class_10280$1 net/minecraft/entity/mob/CreakingBrain$1 + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_10275;)Z method_64640 shouldRun +c net/minecraft/class_10286 net/minecraft/recipe/RecipeManager + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_10290; method_64678 getPropertySet + p 1 key + m ()Lnet/minecraft/class_10291$class_10293; method_64677 getStonecutterRecipes +c net/minecraft/class_10287 net/minecraft/recipe/book/RecipeBookGroup +c net/minecraft/class_10284 net/minecraft/unused/packageinfo/PackageInfo10284 +c net/minecraft/class_10289 net/minecraft/recipe/PreparedRecipes + f Lcom/google/common/collect/Multimap; field_54644 byType + f Lnet/minecraft/class_10289; field_54643 EMPTY + f Ljava/util/Map; field_54645 byKey + m (Ljava/lang/Iterable;)Lnet/minecraft/class_10289; method_64700 of + p 0 recipes + m (Lnet/minecraft/class_3956;Lnet/minecraft/class_9695;Lnet/minecraft/class_1937;)Ljava/util/stream/Stream; method_64699 find + p 3 world + p 2 input + p 1 type + m ()Ljava/util/Collection; method_64695 recipes + m (Lnet/minecraft/class_9695;Lnet/minecraft/class_1937;Lnet/minecraft/class_8786;)Z method_64697 method_64697 + p 2 entry + m (Lcom/google/common/collect/Multimap;Ljava/util/Map;)V + p 2 byKey + p 1 byType + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_8786; method_64696 get + p 1 key + m (Lnet/minecraft/class_3956;)Ljava/util/Collection; method_64698 getAll + p 1 type +c net/minecraft/class_1540 net/minecraft/entity/FallingBlockEntity + f Z field_7191 hurtEntities + f Z field_7193 dropItem + f Lorg/slf4j/Logger; field_36333 LOGGER + f Lnet/minecraft/class_2487; field_7194 blockEntityData + f Z field_7189 destroyedOnLanding + f F field_57656 DEFAULT_FALL_HURT_AMOUNT + f Z field_52015 shouldDupe + f Z field_57659 DEFAULT_DESTROYED_ON_LANDING + f F field_7187 fallHurtAmount + f Lnet/minecraft/class_2680; field_7188 blockState + f Lnet/minecraft/class_2940; field_7195 BLOCK_POS + f I field_57657 DEFAULT_FALL_HURT_MAX + f I field_57655 DEFAULT_TIME + f I field_7190 fallHurtMax + f I field_7192 timeFalling + f Lnet/minecraft/class_2680; field_57654 DEFAULT_BLOCK_STATE + f Z field_57658 DEFAULT_DROP_ITEM + m (FI)V method_6965 setHurtEntities + p 1 fallHurtAmount + p 2 fallHurtMax + m (Lnet/minecraft/class_2338;)V method_6963 setFallingBlockPos + p 1 pos + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_2680;)V + p 1 world + p 2 x + p 4 y + p 6 z + p 8 blockState + m ()Lnet/minecraft/class_2680; method_6962 getBlockState + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_1540; method_40005 spawnFromBlock + c Spawns a falling block entity at {@code pos} from the block {@code state}.\n@return the spawned entity + p 2 state + p 0 world + p 1 pos + m ()Lnet/minecraft/class_2338; method_6964 getFallingBlockPos + m (Lnet/minecraft/class_1282;FLnet/minecraft/class_1297;)V method_32879 method_32879 + p 2 entity + m ()V method_49181 setDestroyedOnLanding + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2338;)V method_32752 onDestroyedOnLanding + p 2 pos + p 1 block +c net/minecraft/class_2873 net/minecraft/network/packet/c2s/play/CreativeInventoryActionC2SPacket + f Lnet/minecraft/class_1799; comp_2610 stack + f S comp_2609 slot + f Lnet/minecraft/class_9139; field_48219 CODEC + m (Lnet/minecraft/class_2792;)V method_12480 apply + m ()Lnet/minecraft/class_1799; comp_2610 stack + m ()S comp_2609 slot + m (ILnet/minecraft/class_1799;)V + p 2 stack + p 1 slot + m (SLnet/minecraft/class_1799;)V + p 1 slot + p 2 stack +c net/minecraft/class_2874 net/minecraft/world/dimension/DimensionType + f Z comp_5219 hasFixedTime + f Lcom/mojang/serialization/Codec; field_63812 NETWORK_CODEC + f [F field_24752 MOON_SIZES + f I field_28133 SIZE_BITS_Y + f Lcom/mojang/serialization/Codec; field_24756 REGISTRY_CODEC + f Lcom/mojang/serialization/Codec; field_24757 CODEC + f I field_28136 MIN_HEIGHT + f I field_28135 MAX_COLUMN_HEIGHT + f I field_28134 MAX_HEIGHT + f Lnet/minecraft/class_2874$class_7512; comp_847 monsterSettings + f Lnet/minecraft/class_9139; field_51951 PACKET_CODEC + f I comp_652 height + f I comp_651 minY + f F comp_656 ambientLight + f I comp_653 logicalHeight + f Z comp_643 hasCeiling + f Z comp_642 hasSkyLight + f D comp_646 coordinateScale + f Lnet/minecraft/class_6885; comp_5222 timelines + f Lnet/minecraft/class_6862; comp_654 infiniburn + f Lnet/minecraft/class_2874$class_12326; comp_5220 skybox + f Lnet/minecraft/class_2874$class_12325; comp_5221 cardinalLightType + f Lnet/minecraft/class_12199; comp_5146 attributes + m ()Z comp_5219 hasFixedTime + m ()Lnet/minecraft/class_6017; method_44222 monsterSpawnLightTest + m (Lnet/minecraft/class_2874;Lnet/minecraft/class_2874;)D method_31109 getCoordinateScaleFactor + p 0 fromDimension + p 1 toDimension + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_75746 createDimensionCodec + p 0 attributesCodec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75747 method_75747 + p 1 instance + m (Lnet/minecraft/class_5321;Ljava/nio/file/Path;)Ljava/nio/file/Path; method_12488 getSaveDirectory + p 0 worldRef + p 1 worldDirectory + m ()Z method_76467 getSkybox + m (ZZZDIIILnet/minecraft/class_6862;FLnet/minecraft/class_2874$class_7512;Lnet/minecraft/class_2874$class_12326;Lnet/minecraft/class_2874$class_12325;Lnet/minecraft/class_12199;Lnet/minecraft/class_6885;)V + p 6 minY + p 7 height + p 4 coordinateScale + p 2 hasSkylight + p 3 hasCeiling + p 1 hasFixedTime + p 14 attributes + p 15 timelines + p 12 skybox + p 13 cardinalLightType + p 10 ambientLight + p 11 monsterSettings + p 8 logicalHeight + p 9 infiniburn + m ()I method_44223 monsterSpawnBlockLightLimit + m ()Lnet/minecraft/class_2874$class_7512; comp_847 monsterSettings + m ()I comp_651 minY + m ()Lnet/minecraft/class_12199; comp_5146 attributes + m ()F comp_656 ambientLight + m ()I comp_653 logicalHeight + m ()I comp_652 height + m ()Lnet/minecraft/class_2874$class_12326; comp_5220 skybox + m ()Lnet/minecraft/class_2874$class_12325; comp_5221 cardinalLightType + m ()Z comp_643 hasCeiling + m ()Z comp_642 hasSkyLight + m ()D comp_646 coordinateScale + m ()Lnet/minecraft/class_6862; comp_654 infiniburn + m ()Lnet/minecraft/class_6885; comp_5222 timelines +c net/minecraft/class_2874$class_7512 net/minecraft/world/dimension/DimensionType$MonsterSettings + f Lcom/mojang/serialization/MapCodec; field_39414 CODEC + f I comp_851 monsterSpawnBlockLightLimit + f Lnet/minecraft/class_6017; comp_850 monsterSpawnLightTest + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75748 method_75748 + p 0 instance + m ()Lnet/minecraft/class_6017; comp_850 monsterSpawnLightTest + m ()I comp_851 monsterSpawnBlockLightLimit + m (Lnet/minecraft/class_6017;I)V + p 1 monsterSpawnLightTest + p 2 monsterSpawnBlockLightLimit +c net/minecraft/class_2874$class_12325 net/minecraft/world/dimension/DimensionType$CardinalLightType + f Ljava/lang/String; field_64383 name + f Lcom/mojang/serialization/Codec; field_64382 CODEC + f Lnet/minecraft/class_2874$class_12325; field_64380 DEFAULT + f Lnet/minecraft/class_2874$class_12325; field_64381 NETHER + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_2874$class_12326 net/minecraft/world/dimension/DimensionType$Skybox + f Ljava/lang/String; field_64389 name + f Lcom/mojang/serialization/Codec; field_64388 CODEC + f Lnet/minecraft/class_2874$class_12326; field_64385 NONE + f Lnet/minecraft/class_2874$class_12326; field_64386 OVERWORLD + f Lnet/minecraft/class_2874$class_12326; field_64387 END + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_2875 net/minecraft/network/packet/c2s/play/UpdateStructureBlockC2SPacket + f I field_55581 STRICT_MASK + f Lnet/minecraft/class_9139; field_48221 CODEC + f F field_13090 integrity + f Lnet/minecraft/class_2338; field_13091 offset + f Lnet/minecraft/class_2470; field_13088 rotation + f J field_13092 seed + f Lnet/minecraft/class_2338; field_13093 pos + f Lnet/minecraft/class_2633$class_2634; field_13082 action + f Lnet/minecraft/class_2415; field_13081 mirror + f I field_33369 SHOW_AIR_MASK + f Ljava/lang/String; field_13080 templateName + f Lnet/minecraft/class_2382; field_13083 size + f Z field_55582 strict + f I field_33370 SHOW_BOUNDING_BOX_MASK + f Z field_13086 showBoundingBox + f Z field_13089 ignoreEntities + f Ljava/lang/String; field_13085 metadata + f Lnet/minecraft/class_2776; field_13084 mode + f I field_33368 IGNORE_ENTITIES_MASK + f Z field_13087 showAir + m ()F method_12494 getIntegrity + m ()Ljava/lang/String; method_12501 getMetadata + m ()Lnet/minecraft/class_2382; method_12492 getSize + m ()Z method_65971 isStrict + m ()Z method_12503 shouldShowAir + m ()Z method_12505 shouldShowBoundingBox + m ()Lnet/minecraft/class_2415; method_12493 getMirror + m (Lnet/minecraft/class_2540;)V method_56001 write + p 1 buf + m ()Lnet/minecraft/class_2633$class_2634; method_12500 getAction + m ()Lnet/minecraft/class_2338; method_12499 getPos + m ()Lnet/minecraft/class_2776; method_12504 getMode + m (Lnet/minecraft/class_2792;)V method_12495 apply + m ()Ljava/lang/String; method_12502 getTemplateName + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2633$class_2634;Lnet/minecraft/class_2776;Ljava/lang/String;Lnet/minecraft/class_2338;Lnet/minecraft/class_2382;Lnet/minecraft/class_2415;Lnet/minecraft/class_2470;Ljava/lang/String;ZZZZFJ)V + p 1 pos + p 2 action + p 3 mode + p 4 templateName + p 9 metadata + p 10 ignoreEntities + p 11 strict + p 12 showAir + p 5 offset + p 6 size + p 7 mirror + p 8 rotation + p 13 showBoundingBox + p 14 integrity + p 15 seed + m ()J method_12497 getSeed + m ()Z method_12506 shouldIgnoreEntities + m ()Lnet/minecraft/class_2470; method_12498 getRotation + m ()Lnet/minecraft/class_2338; method_12496 getOffset + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_1543 net/minecraft/entity/mob/IllagerEntity + m ()Lnet/minecraft/class_1543$class_1544; method_6990 getState +c net/minecraft/class_1543$class_1544 net/minecraft/entity/mob/IllagerEntity$State + f Lnet/minecraft/class_1543$class_1544; field_19012 CELEBRATING + f Lnet/minecraft/class_1543$class_1544; field_7210 CROSSBOW_CHARGE + f Lnet/minecraft/class_1543$class_1544; field_7211 ATTACKING + f Lnet/minecraft/class_1543$class_1544; field_7212 SPELLCASTING + f Lnet/minecraft/class_1543$class_1544; field_7213 CROSSBOW_HOLD + f Lnet/minecraft/class_1543$class_1544; field_21512 NEUTRAL + f Lnet/minecraft/class_1543$class_1544; field_7208 BOW_AND_ARROW + f Lnet/minecraft/class_1543$class_1544; field_7207 CROSSED +c net/minecraft/class_1543$class_4258 net/minecraft/entity/mob/IllagerEntity$LongDoorInteractGoal + m (Lnet/minecraft/class_1543;Lnet/minecraft/class_3763;)V + p 2 raider +c net/minecraft/class_2870 net/minecraft/network/packet/c2s/play/UpdateCommandBlockC2SPacket + f Z field_13063 trackOutput + f Z field_13062 conditional + f I field_33365 TRACK_OUTPUT_MASK + f Z field_13061 alwaysActive + f I field_33366 CONDITIONAL_MASK + f I field_33367 ALWAYS_ACTIVE_MASK + f Lnet/minecraft/class_9139; field_48217 CODEC + f Ljava/lang/String; field_13064 command + f Lnet/minecraft/class_2338; field_13065 pos + f Lnet/minecraft/class_2593$class_2594; field_13060 type + m ()Lnet/minecraft/class_2593$class_2594; method_12468 getType + m ()Ljava/lang/String; method_12470 getCommand + m (Lnet/minecraft/class_2338;Ljava/lang/String;Lnet/minecraft/class_2593$class_2594;ZZZ)V + p 6 alwaysActive + p 4 trackOutput + p 5 conditional + p 2 command + p 3 type + p 1 pos + m ()Z method_12471 isConditional + m (Lnet/minecraft/class_2540;)V method_55997 write + p 1 buf + m (Lnet/minecraft/class_2792;)V method_12469 apply + m ()Z method_12472 shouldTrackOutput + m ()Z method_12474 isAlwaysActive + m ()Lnet/minecraft/class_2338; method_12473 getPos + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_1542 net/minecraft/entity/ItemEntity + f F field_7203 uniqueOffset + f I field_57660 DEFAULT_HEALTH + f I field_7204 itemAge + c The number of ticks since this item entity has been created.\nIt is a short value with key {@code Age} in the NBT structure.\n\n

It differs from {@link Entity#age}. + f I field_30458 NEVER_DESPAWN_AGE + f I field_7202 pickupDelay + f I field_30456 DESPAWN_AGE + f S field_57661 DEFAULT_AGE + f Ljava/util/UUID; field_41893 owner + f Lnet/minecraft/class_10583; field_7200 thrower + f Lnet/minecraft/class_2940; field_7199 STACK + f I field_7201 health + f I field_30457 CANNOT_PICK_UP_DELAY + f S field_57662 DEFAULT_PICKUP_DELAY + m ()V method_35190 setNeverDespawn + m (D)V method_64460 applyBuoyancy + p 1 horizontalMultiplier + m (Lnet/minecraft/class_1542;)Z method_20396 method_20396 + p 1 otherItemEntity + m ()Z method_20397 canMerge + m (Ljava/util/UUID;)V method_48349 setOwner + p 1 owner + m (Lnet/minecraft/class_1542;)V method_6972 tryMerge + p 1 other + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_24017 canMerge + p 1 stack2 + p 0 stack1 + m ()V method_6976 setCovetedItem + m (I)V method_6982 setPickupDelay + c Sets the number of ticks before this item entity can be picked up\nto {@code pickupDelay}. + p 1 pickupDelay + m ()Lnet/minecraft/class_1799; method_6983 getStack + c Returns the item stack contained in this item entity. + m ()V method_6988 setToDefaultPickupDelay + c Sets the number of ticks before this item entity can be picked up\nto the default value of 10. + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1799;DDD)V + p 13 velocityZ + p 4 y + p 1 world + p 2 x + p 8 stack + p 6 z + p 11 velocityY + p 9 velocityX + m ()V method_24348 applyLavaBuoyancy + m ()V method_6974 applyWaterBuoyancy + m (Lnet/minecraft/class_1542;Lnet/minecraft/class_1799;Lnet/minecraft/class_1542;Lnet/minecraft/class_1799;)V method_18006 merge + p 3 sourceStack + p 2 sourceEntity + p 1 targetStack + p 0 targetEntity + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;I)Lnet/minecraft/class_1799; method_24018 merge + p 2 maxCount + p 1 stack2 + p 0 stack1 + m (Lnet/minecraft/class_1297;)V method_6981 setThrower + c Sets the thrower of this item entity to {@code thrower}. + p 1 thrower + m ()I method_6985 getItemAge + c Returns the number of ticks since this item entity has been created.\n\n

Increases every tick. When it equals to 6000 ticks (5 minutes),\nthis item entity disappears.\n\n

Unlike {@linkplain Entity#age}, it is persistent and not synchronized\nbetween the client and the server.\n\n@see #tick() + m (Lnet/minecraft/class_1799;)V method_6979 setStack + c Sets the item stack contained in this item entity to {@code stack}. + p 1 stack + m ()V method_6987 setDespawnImmediately + m ()V method_6975 resetPickupDelay + c Sets the number of ticks before this item entity can be picked up\nto 0. + m ()V method_6989 setPickupDelayInfinite + c Makes this item entity impossible to be picked up by setting its\npickup delay to 32767. + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1799;)V + p 8 stack + p 2 x + p 1 world + p 4 y + p 6 z + m (Lnet/minecraft/class_1542;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V method_24016 merge + p 2 stack2 + p 0 targetEntity + p 1 stack1 + m (FF)F method_27314 getRotation + m ()V method_6973 tryMerge + m ()Z method_6977 cannotPickup + c Returns whether the pickup delay of this item entity is greater\nthan 0. +c net/minecraft/class_2871 net/minecraft/network/packet/c2s/play/UpdateCommandBlockMinecartC2SPacket + f Ljava/lang/String; field_13068 command + f I field_13067 entityId + f Z field_13066 trackOutput + f Lnet/minecraft/class_9139; field_48218 CODEC + m (ILjava/lang/String;Z)V + p 2 command + p 3 trackOutput + p 1 entityId + m (Lnet/minecraft/class_2540;)V method_55998 write + p 1 buf + m ()Ljava/lang/String; method_12475 getCommand + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_1918; method_12476 getMinecartCommandExecutor + p 1 world + m (Lnet/minecraft/class_2792;)V method_12477 apply + m ()Z method_12478 shouldTrackOutput + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_1541 net/minecraft/entity/TntEntity + f Ljava/lang/String; field_46778 BLOCK_STATE_NBT_KEY + f F field_52496 explosionPower + f Ljava/lang/String; field_46776 FUSE_NBT_KEY + f F field_52494 DEFAULT_EXPLOSION_POWER + f Lnet/minecraft/class_2940; field_46777 BLOCK_STATE + f Lnet/minecraft/class_5362; field_52317 TELEPORTED_EXPLOSION_BEHAVIOR + f Z field_52318 teleported + f Lnet/minecraft/class_10583; field_7198 causingEntity + f Lnet/minecraft/class_2680; field_57663 DEFAULT_BLOCK_STATE + f S field_30459 DEFAULT_FUSE + f Ljava/lang/String; field_52495 EXPLOSION_POWER_NBT_KEY + f Lnet/minecraft/class_2940; field_7197 FUSE + m (I)V method_6967 setFuse + p 1 fuse + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1309;)V + p 8 igniter + p 6 z + p 4 y + p 2 x + p 1 world + m ()Lnet/minecraft/class_2680; method_54456 getBlockState + m ()I method_6969 getFuse + m (Z)V method_61174 setTeleported + p 1 teleported + m (Lnet/minecraft/class_2680;)V method_54455 setBlockState + p 1 state + m ()Lnet/minecraft/class_1309; method_6970 getOwner + m ()V method_6971 explode +c net/minecraft/class_10590 net/minecraft/component/type/WeaponComponent + f Lcom/mojang/serialization/Codec; field_55712 CODEC + f F field_56320 AXE_DISABLE_BLOCKING_FOR_SECONDS + f Lnet/minecraft/class_9139; field_55713 PACKET_CODEC + f I comp_3481 itemDamagePerAttack + f F comp_3602 disableBlockingForSeconds + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66336 method_66336 + p 0 instance + m (I)V + p 1 itemDamagePerAttack + m ()F comp_3602 disableBlockingForSeconds + m ()I comp_3481 itemDamagePerAttack + m (IF)V + p 1 itemDamagePerAttack + p 2 disableBlockingForSeconds +c net/minecraft/class_1536 net/minecraft/entity/projectile/FishingBobberEntity + f Lnet/minecraft/class_5819; field_23231 velocityRandom + f Lorg/slf4j/Logger; field_36336 LOGGER + f I field_7172 fishTravelCountdown + f Z field_23134 inOpenWater + f I field_7174 waitCountdown + f I field_7168 waitTimeReductionTicks + f Lnet/minecraft/class_1297; field_7165 hookedEntity + f Lnet/minecraft/class_1536$class_1537; field_7175 state + f Lnet/minecraft/class_2940; field_7170 HOOK_ENTITY_ID + f I field_7171 luckBonus + f Z field_23232 caughtFish + f I field_7173 hookCountdown + f Lnet/minecraft/class_10584; field_60365 positionInterpolator + f I field_7167 removalTimer + f F field_7169 fishAngle + f Lnet/minecraft/class_2940; field_23234 CAUGHT_FISH + f I field_23233 outOfOpenWaterTicks + m (Lnet/minecraft/class_1536;)V method_36210 setPlayerFishHook + p 1 fishingBobber + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_1536$class_4984; method_26342 getPositionType + p 1 pos + m ()Z method_26088 isInOpenWater + m (Lnet/minecraft/class_1297;)V method_6951 updateHookedEntityId + p 1 entity + m (Lnet/minecraft/class_2338;)Z method_26086 isOpenOrWaterAround + p 1 pos + m ()Lnet/minecraft/class_1657; method_6947 getPlayerOwner + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1536$class_4984; method_26341 getPositionType + p 2 end + p 1 start + m (Lnet/minecraft/class_2338;)V method_6949 tickFishingLogic + p 1 pos + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;II)V + p 1 type + p 2 world + p 3 luckBonus + p 4 waitTimeReductionTicks + m (Lnet/minecraft/class_1297;)V method_6954 pullHookedEntity + p 1 entity + m ()Lnet/minecraft/class_1297; method_26957 getHookedEntity + m (Lnet/minecraft/class_1799;)I method_6957 use + p 1 usedItem + m (Lnet/minecraft/class_1657;)Z method_6959 removeIfInvalid + p 1 player + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;II)V + p 4 waitTimeReductionTicks + p 3 luckBonus + p 2 world + p 1 thrower + m ()V method_6958 checkForCollision +c net/minecraft/class_1536$class_4984 net/minecraft/entity/projectile/FishingBobberEntity$PositionType + f Lnet/minecraft/class_1536$class_4984; field_23238 INVALID + f Lnet/minecraft/class_1536$class_4984; field_23237 INSIDE_WATER + f Lnet/minecraft/class_1536$class_4984; field_23236 ABOVE_WATER +c net/minecraft/class_1536$class_1537 net/minecraft/entity/projectile/FishingBobberEntity$State + f Lnet/minecraft/class_1536$class_1537; field_7178 HOOKED_IN_ENTITY + f Lnet/minecraft/class_1536$class_1537; field_7179 BOBBING + f Lnet/minecraft/class_1536$class_1537; field_7180 FLYING +c net/minecraft/class_10591 net/minecraft/recipe/TransmuteRecipeResult + f Lnet/minecraft/class_9139; field_55715 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_55716 BASE_CODEC + f Lcom/mojang/serialization/Codec; field_55714 CODEC + f Lnet/minecraft/class_6880; comp_3483 itemEntry + f I comp_3484 count + f Lnet/minecraft/class_9326; comp_3485 components + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_66340 apply + p 1 stack + m (Lnet/minecraft/class_10591;)Lcom/mojang/serialization/DataResult; method_66341 validate + p 0 result + m (Lnet/minecraft/class_10591;Lnet/minecraft/class_1799;)Lnet/minecraft/class_10591; method_66342 method_66342 + p 1 stack + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_10591; method_66343 method_66343 + p 0 itemEntry + m (Lnet/minecraft/class_1799;)Z method_67389 isEqualToResult + p 1 stack + m ()Lnet/minecraft/class_6880; comp_3483 itemEntry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66339 method_66339 + p 0 instance + m ()Lnet/minecraft/class_10302; method_66338 createSlotDisplay + m (Lnet/minecraft/class_1792;)V + p 1 item + m ()I comp_3484 count + m ()Lnet/minecraft/class_9326; comp_3485 components + m (Lnet/minecraft/class_6880;ILnet/minecraft/class_9326;)V + p 1 itemEntry + p 2 count + p 3 components +c net/minecraft/class_1535 net/minecraft/entity/decoration/painting/PaintingVariant + f Lnet/minecraft/class_9139; field_51945 PACKET_CODEC + f Lnet/minecraft/class_9139; field_51946 ENTRY_PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_51597 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_51596 CODEC + f Ljava/util/Optional; comp_2918 title + f Ljava/util/Optional; comp_2919 author + f Lnet/minecraft/class_2960; comp_2672 assetId + f I comp_2670 width + f I comp_2671 height + m ()I method_59947 getArea + m (IILnet/minecraft/class_2960;Ljava/util/Optional;Ljava/util/Optional;)V + p 2 height + p 1 width + p 3 assetId + p 4 title + p 5 author + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59948 method_59948 + p 0 instance + m ()I comp_2670 width + m ()I comp_2671 height + m ()Lnet/minecraft/class_2960; comp_2672 assetId + m ()Ljava/util/Optional; comp_2919 author + m ()Ljava/util/Optional; comp_2918 title +c net/minecraft/class_1534 net/minecraft/entity/decoration/painting/PaintingEntity + f Lnet/minecraft/class_2940; field_38941 VARIANT + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V + p 1 world + p 2 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_6880;)V + p 4 variant + p 3 direction + p 2 pos + p 1 world + m (Lnet/minecraft/class_6880;)V method_43402 setVariant + p 1 variant + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Ljava/util/Optional; method_43401 placePainting + p 1 pos + p 2 facing + p 0 world + m (Lnet/minecraft/class_6880;)I method_43403 getSize + p 0 variant + m (ILnet/minecraft/class_6880;)Z method_43399 method_43399 + p 1 variant + m ()Lnet/minecraft/class_6880; method_43404 getVariant + m (Lnet/minecraft/class_1534;Lnet/minecraft/class_6880;)Z method_43400 method_43400 + p 1 variant + m (I)D method_59946 getOffset + p 1 length +c net/minecraft/class_10594 net/minecraft/block/FlowerbedBlock + f Lnet/minecraft/class_2754; field_55762 HORIZONTAL_FACING + f Lcom/mojang/serialization/MapCodec; field_55761 CODEC + f Lnet/minecraft/class_2758; field_55763 FLOWER_AMOUNT + f Ljava/util/function/Function; field_55764 shapeFunction + m ()Ljava/util/function/Function; method_66435 createShapeFunction +c net/minecraft/class_2866 net/minecraft/network/packet/c2s/play/UpdateBeaconC2SPacket + f Lnet/minecraft/class_9139; field_48215 CODEC + f Ljava/util/Optional; comp_2180 primary + f Ljava/util/Optional; comp_2181 secondary + m (Lnet/minecraft/class_2792;)V method_12434 apply + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 primaryEffectId + p 2 secondaryEffectId + m ()Ljava/util/Optional; comp_2181 secondary + m ()Ljava/util/Optional; comp_2180 primary +c net/minecraft/class_10595 net/minecraft/block/LeafLitterBlock + f Lcom/mojang/serialization/MapCodec; field_55769 CODEC + f Ljava/util/function/Function; field_55771 shapeFunction + f Lnet/minecraft/class_2754; field_55770 HORIZONTAL_FACING + m ()Ljava/util/function/Function; method_66440 createShapeFunction +c net/minecraft/class_2867 net/minecraft/world/storage/RegionBasedStorage + f Ljava/lang/String; field_31425 MCA_EXTENSION + f Z field_23748 dsync + f I field_31426 MAX_CACHE_SIZE + f Lnet/minecraft/class_9240; field_49103 storageKey + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; field_17657 cachedRegionFiles + f Ljava/nio/file/Path; field_18690 directory + m (Lnet/minecraft/class_1923;)Lnet/minecraft/class_2487; method_17911 getTagAt + p 1 pos + m ()Lnet/minecraft/class_9240; method_61005 getStorageKey + m ()V method_26982 sync + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_2487;)V method_23726 write + p 2 nbt + p 1 pos + m (Lnet/minecraft/class_9240;Ljava/nio/file/Path;Z)V + p 2 directory + p 3 dsync + p 1 storageKey + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_6836;)V method_39802 scanChunk + p 1 chunkPos + p 2 scanner + m (Lnet/minecraft/class_1923;)Lnet/minecraft/class_2861; method_12440 getRegionFile + p 1 pos +c net/minecraft/class_10592 net/minecraft/server/world/ChunkTicketManager + f Lnet/minecraft/class_10592$class_10593; field_55727 simulationLevelUpdater + f Lcom/mojang/serialization/Codec; field_56450 CODEC + f Lnet/minecraft/class_10741; field_56451 STATE_TYPE + f Lnet/minecraft/class_10592$class_10593; field_55726 loadingLevelUpdater + f I field_55719 DEFAULT_TICKETS_MAP_SIZE + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; field_55724 savedTickets + f Lorg/slf4j/Logger; field_55720 LOGGER + f Lcom/mojang/serialization/Codec; field_56452 TICKET_POS_CODEC + f Lit/unimi/dsi/fastutil/longs/LongSet; field_55725 forcedChunks + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; field_55723 tickets + m ()V method_66367 promoteToRealTickets + m ()Z method_72544 shouldResetIdleTimeout + m (Lnet/minecraft/class_3898;Lnet/minecraft/class_3228;J)Z method_66371 method_66371 + p 3 pos + p 2 ticket + m ()V method_66383 shutdown + m (Ljava/util/List;)Lnet/minecraft/class_10592; method_67395 create + p 0 tickets + m (ILnet/minecraft/class_3230;)V method_66351 updateLevel + p 1 level + p 2 type + m (Ljava/util/List;Z)Lnet/minecraft/class_3228; method_66375 getActiveTicket + p 1 forSimulation + p 0 tickets + m (Ljava/util/function/Predicate;)Lit/unimi/dsi/fastutil/longs/LongSet; method_66363 getAllChunksMatching + p 1 predicate + m ()Lit/unimi/dsi/fastutil/longs/LongSet; method_66384 getForcedChunks + m (Lnet/minecraft/class_3898;)V method_66381 tick + p 1 chunkLoadingManager + m (J)Ljava/util/List; method_66379 method_66379 + p 0 chunkPos + m (Lnet/minecraft/class_1923;Z)Z method_66359 setChunkForced + p 1 pos + p 2 forced + m ()Z method_66378 hasTickets + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;)V + p 1 tickets + p 2 savedTickets + m (Ljava/util/List;Z)I method_66362 getLevel + p 1 forSimulation + p 0 tickets + m (Lnet/minecraft/class_3228;Lnet/minecraft/class_1923;)V method_66357 addTicket + p 1 ticket + p 2 pos + m (Lnet/minecraft/class_10592$class_10593;)V method_66360 setLoadingLevelUpdater + p 1 loadingLevelUpdater + m (Ljava/util/function/BiConsumer;Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;)V method_67398 forEachTicket + p 1 tickets + p 0 ticketConsumer + m (Ljava/util/function/BiConsumer;)V method_67397 forEachTicket + p 1 ticketConsumer + m (Lnet/minecraft/class_3230;Lnet/minecraft/class_1923;I)V method_66373 removeTicket + p 3 radius + p 1 type + p 2 pos + m ()V method_66385 recomputeForcedChunks + m ()Ljava/util/List; method_67400 getTickets + m (JZ)I method_66354 getLevel + p 1 pos + p 3 forSimulation + m (JZ)Ljava/lang/String; method_66370 getDebugString + p 3 forSimulation + p 1 pos + m (Lnet/minecraft/class_3228;Lnet/minecraft/class_3228;)Z method_66356 ticketsEqual + p 1 b + p 0 a + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67394 method_67394 + p 0 instance + m (Ljava/util/List;Lnet/minecraft/class_1923;Lnet/minecraft/class_3228;)V method_67396 method_67396 + p 2 ticket + p 1 pos + m (Lnet/minecraft/class_3228;J)Z method_66355 method_66355 + p 0 ticket + p 1 pos + m (Lnet/minecraft/class_3230;Lnet/minecraft/class_1923;I)V method_66358 addTicket + p 2 pos + p 3 radius + p 1 type + m (Lnet/minecraft/class_3228;Lnet/minecraft/class_1923;)V method_66372 removeTicket + p 2 pos + p 1 ticket + m (Lnet/minecraft/class_3898;Lnet/minecraft/class_3228;J)Z method_72543 canTicketExpire + p 1 chunkLoadingManager + p 2 ticket + p 3 pos + m (JLnet/minecraft/class_3228;)Z method_66369 removeTicket + p 1 pos + p 3 ticket + m (Lnet/minecraft/class_3228;)Z method_66380 method_66380 + p 0 ticket + m (JLnet/minecraft/class_3228;)Z method_66353 addTicket + p 3 ticket + p 1 pos + m (J)Ljava/util/List; method_66352 getTickets + p 1 pos + m (Lnet/minecraft/class_10592$class_11581;Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;)V method_66364 removeTicketsIf + p 2 transferTo + p 1 predicate + m (Lnet/minecraft/class_10592$class_10593;)V method_66374 setSimulationLevelUpdater + p 1 simulationLevelUpdater + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectMap$Entry;J)Ljava/util/List; method_66361 method_66361 + p 1 pos + m (J)Ljava/util/List; method_66368 getTicketsMutable + p 1 pos +c net/minecraft/class_10592$class_11581 net/minecraft/server/world/ChunkTicketManager$TicketPredicate + m (Lnet/minecraft/class_3228;J)Z test test + p 1 ticket + p 2 pos +c net/minecraft/class_10592$class_10593 net/minecraft/server/world/ChunkTicketManager$LevelUpdater + m (JIZ)V update update + p 1 pos + p 3 level + p 4 added +c net/minecraft/class_2868 net/minecraft/network/packet/c2s/play/UpdateSelectedSlotC2SPacket + f Lnet/minecraft/class_9139; field_48216 CODEC + f I field_13052 selectedSlot + m (Lnet/minecraft/class_2792;)V method_12441 apply + m (I)V + p 1 selectedSlot + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_55996 write + p 1 buf + m ()I method_12442 getSelectedSlot +c net/minecraft/class_1538 net/minecraft/entity/LightningEntity + f I field_33905 blocksSetOnFire + f I field_7185 ambientTick + f J field_7186 seed + f I field_7183 remainingActions + f Ljava/util/Set; field_33904 struckEntities + f Lnet/minecraft/class_3222; field_7182 channeler + f Z field_7184 cosmetic + m ()Lnet/minecraft/class_3222; method_35052 getChanneler + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338$class_2339;I)V method_34709 cleanOxidationAround + p 0 world + p 1 pos + p 2 mutablePos + p 3 count + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Ljava/util/Optional; method_34710 cleanOxidationAround + p 1 pos + p 0 world + m (Lnet/minecraft/class_3222;)V method_6961 setChanneler + p 1 channeler + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_34707 cleanOxidation + p 0 world + p 1 pos + m ()Ljava/util/stream/Stream; method_37221 getStruckEntities + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_34708 method_34708 + p 2 state + m ()V method_31499 powerLightningRod + m ()I method_37220 getBlocksSetOnFire + m ()Lnet/minecraft/class_2338; method_36607 getAffectedBlockPos + m (I)V method_6960 spawnFire + p 1 spreadAttempts + m (Z)V method_29498 setCosmetic + p 1 cosmetic +c net/minecraft/class_10598 net/minecraft/world/entity/EntityQueriable +c net/minecraft/class_10599 net/minecraft/world/entity/UniquelyIdentifiable + m ()Ljava/util/UUID; method_5667 getUuid + m ()Z method_31481 isRemoved +c net/minecraft/class_10596 net/minecraft/block/Segmented + f I field_55789 SEGMENTS_PER_PLACEMENT + f I field_55790 MAX_SEGMENTS + f Lnet/minecraft/class_2758; field_55791 SEGMENT_AMOUNT + m ()Lnet/minecraft/class_2758; method_66434 getAmountProperty + m ()D method_66433 getHeight + m (Lnet/minecraft/class_2754;Lnet/minecraft/class_2758;Ljava/util/Map;Lnet/minecraft/class_2680;)Lnet/minecraft/class_265; method_66466 method_66466 + p 3 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1750;Lnet/minecraft/class_2758;)Z method_66464 shouldAddSegment + p 3 property + p 1 state + p 2 context + m (Lnet/minecraft/class_1750;Lnet/minecraft/class_2248;Lnet/minecraft/class_2758;Lnet/minecraft/class_2754;)Lnet/minecraft/class_2680; method_66463 getPlacementState + p 1 context + p 3 amountProperty + p 2 block + p 4 directionProperty + m (Lnet/minecraft/class_2754;Lnet/minecraft/class_2758;)Ljava/util/function/Function; method_66465 createShapeFunction + p 2 segmentAmountProperty + p 1 directionProperty +c net/minecraft/class_10597 net/minecraft/block/enums/CreakingHeartState + f Ljava/lang/String; field_55834 id + f Lnet/minecraft/class_10597; field_55833 AWAKE + f Lnet/minecraft/class_10597; field_55831 UPROOTED + f Lnet/minecraft/class_10597; field_55832 DORMANT + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_1551 net/minecraft/entity/mob/DrownedEntity + f Z field_7233 targetingUnderwater + m ()Z method_7018 isTargetingUnderwater + m ()Lnet/minecraft/class_5132$class_5133; method_55746 createDrownedAttributes + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_64461 method_64461 + p 2 world + p 1 target + m (Lnet/minecraft/class_1309;)Z method_7012 canDrownedAttackTarget + p 1 target + m (Z)V method_7013 setTargetingUnderwater + p 1 targetingUnderwater + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_5425;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20673 canSpawn + p 2 spawnReason + p 3 pos + p 0 type + p 1 world + p 4 random + m ()Z method_7016 hasFinishedCurrentPath + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_20672 isValidSpawnDepth + p 1 pos + p 0 world +c net/minecraft/class_1551$class_1554 net/minecraft/entity/mob/DrownedEntity$LeaveWaterGoal + f Lnet/minecraft/class_1551; field_7237 drowned + m (Lnet/minecraft/class_1551;D)V + p 2 speed + p 1 drowned +c net/minecraft/class_1551$class_1552 net/minecraft/entity/mob/DrownedEntity$DrownedAttackGoal + f Lnet/minecraft/class_1551; field_7235 drowned + m (Lnet/minecraft/class_1551;DZ)V + p 1 drowned + p 2 speed + p 4 pauseWhenMobIdle +c net/minecraft/class_1551$class_1558 net/minecraft/entity/mob/DrownedEntity$TridentAttackGoal + f Lnet/minecraft/class_1551; field_7249 drowned +c net/minecraft/class_1551$class_1557 net/minecraft/entity/mob/DrownedEntity$TargetAboveWaterGoal + f Lnet/minecraft/class_1551; field_7246 drowned + f D field_7245 speed + f I field_7247 minY + f Z field_7248 foundTarget + m (Lnet/minecraft/class_1551;DI)V + p 1 drowned + p 2 speed + p 4 minY +c net/minecraft/class_1551$class_1556 net/minecraft/entity/mob/DrownedEntity$DrownedMoveControl + f Lnet/minecraft/class_1551; field_7244 drowned + m (Lnet/minecraft/class_1551;)V + p 1 drowned +c net/minecraft/class_1551$class_1555 net/minecraft/entity/mob/DrownedEntity$WanderAroundOnSurfaceGoal + f Lnet/minecraft/class_1314; field_7242 mob + f D field_7243 speed + f D field_7240 x + f Lnet/minecraft/class_1937; field_7241 world + f D field_7239 y + f D field_7238 z + m ()Lnet/minecraft/class_243; method_7021 getWanderTarget + m (Lnet/minecraft/class_1314;D)V + p 1 mob + p 2 speed +c net/minecraft/class_2884 net/minecraft/network/packet/c2s/play/SpectatorTeleportC2SPacket + f Ljava/util/UUID; field_13129 targetUuid + f Lnet/minecraft/class_9139; field_48224 CODEC + m (Ljava/util/UUID;)V + p 1 targetUuid + m (Lnet/minecraft/class_3218;)Lnet/minecraft/class_1297; method_12541 getTarget + p 1 world + m (Lnet/minecraft/class_2540;)V method_56004 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2792;)V method_12542 apply +c net/minecraft/class_1550 net/minecraft/entity/mob/ElderGuardianEntity + f I field_38117 MINING_FATIGUE_AMPLIFIER + f F field_17492 SCALE + f I field_38115 AFFECTED_PLAYER_RANGE + f I field_38116 MINING_FATIGUE_DURATION + m ()Lnet/minecraft/class_5132$class_5133; method_26909 createElderGuardianAttributes + m (Lnet/minecraft/class_3222;)V method_7011 method_7011 + p 1 player +c net/minecraft/class_2885 net/minecraft/network/packet/c2s/play/PlayerInteractBlockC2SPacket + f Lnet/minecraft/class_3965; field_17602 blockHitResult + f Lnet/minecraft/class_1268; field_13134 hand + f I field_38049 sequence + f Lnet/minecraft/class_9139; field_48225 CODEC + m (Lnet/minecraft/class_1268;Lnet/minecraft/class_3965;I)V + p 1 hand + p 2 blockHitResult + p 3 sequence + m (Lnet/minecraft/class_2540;)V method_56005 write + p 1 buf + m (Lnet/minecraft/class_2792;)V method_12547 apply + m ()Lnet/minecraft/class_3965; method_12543 getBlockHitResult + m ()Lnet/minecraft/class_1268; method_12546 getHand + m ()I method_42080 getSequence + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_2886 net/minecraft/network/packet/c2s/play/PlayerInteractItemC2SPacket + f Lnet/minecraft/class_1268; field_13136 hand + f F field_51931 pitch + f F field_51930 yaw + f I field_38050 sequence + f Lnet/minecraft/class_9139; field_48226 CODEC + m ()Lnet/minecraft/class_1268; method_12551 getHand + m (Lnet/minecraft/class_1268;IFF)V + p 1 hand + p 2 sequence + p 3 yaw + p 4 pitch + m (Lnet/minecraft/class_2540;)V method_56006 write + p 1 buf + m ()I method_42081 getSequence + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()F method_60586 getYaw + m ()F method_60587 getPitch + m (Lnet/minecraft/class_2792;)V method_12550 apply +c net/minecraft/class_2881 net/minecraft/entity/boss/dragon/EnderDragonFight + f Lnet/minecraft/class_2338; field_44877 origin + f Z field_13114 previouslyKilled + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; field_13121 gateways + f I field_31442 SPAWN_Y + f I field_31446 ISLAND_SIZE + f Lnet/minecraft/class_2700; field_13110 endPortalPattern + f I field_13107 dragonSeenTimer + f Lnet/minecraft/class_3213; field_13119 bossBar + f Ljava/util/function/Predicate; field_44876 showBossBarPredicate + f I field_13122 playerUpdateTimer + f I field_13118 spawnStateTimer + f I field_13106 endCrystalsAlive + f Z field_44878 skipChunksLoadedCheck + f Lnet/minecraft/class_2876; field_13120 dragonSpawnState + f Lorg/slf4j/Logger; field_13112 LOGGER + f I field_31444 CRYSTAL_COUNTING_INTERVAL + f I field_13105 crystalCountTimer + f Ljava/util/List; field_13109 crystals + f Z field_13111 doLegacyCheck + f Lnet/minecraft/class_3218; field_13108 world + f Z field_13115 dragonKilled + f I field_31443 CHECK_DRAGON_SEEN_INTERVAL + f I field_31447 PLAYER_COUNTING_INTERVAL + f Lnet/minecraft/class_2338; field_13117 exitPortalLocation + f Ljava/util/UUID; field_13116 dragonUuid + m ()V method_12538 tick + m (Lnet/minecraft/class_1511;Lnet/minecraft/class_1282;)V method_12526 crystalDestroyed + p 2 source + p 1 enderCrystal + m ()Z method_12514 worldContainsEndPortal + m (Z)V method_12518 generateEndPortal + p 1 previouslyKilled + m ()V method_51855 setSkipChunksLoadedCheck + m ()V method_12522 respawnDragon + m (Lnet/minecraft/class_2876;)V method_12521 setSpawnState + p 1 spawnState + m (Lnet/minecraft/class_3218;JLnet/minecraft/class_2881$class_8576;Lnet/minecraft/class_2338;)V + p 1 world + p 2 gatewaysSeed + p 4 data + p 5 origin + m ()V method_12525 checkDragonSeen + m ()Z method_12533 areChunksLoaded + m ()I method_12517 getAliveEndCrystals + m (Lnet/minecraft/class_1510;)V method_12532 updateFight + p 1 dragon + m (Lnet/minecraft/class_1510;)V method_12528 dragonKilled + p 1 dragon + m (Lnet/minecraft/class_2338;)V method_12516 generateEndGateway + p 1 pos + m ()V method_12524 resetEndCrystals + m (Lnet/minecraft/class_3218;JLnet/minecraft/class_2881$class_8576;)V + p 4 data + p 2 gatewaysSeed + p 1 world + m ()Z method_12536 hasPreviouslyKilled + m ()V method_12520 updatePlayers + m ()Ljava/util/UUID; method_52179 getDragonUuid + m ()Lnet/minecraft/class_1510; method_12523 createDragon + m (Ljava/util/List;)V method_12529 respawnDragon + p 1 crystals + m ()Lnet/minecraft/class_2700$class_2702; method_12531 findEndPortal + m ()Lnet/minecraft/class_2881$class_8576; method_12530 toData + m ()V method_12535 countAliveCrystals + m ()V method_12515 convertFromLegacy + m ()V method_12519 generateNewEndGateway + m ()V method_51856 clearGatewaysList +c net/minecraft/class_2881$class_8576 net/minecraft/entity/boss/dragon/EnderDragonFight$Data + f Lcom/mojang/serialization/Codec; field_44945 CODEC + f Lnet/minecraft/class_2881$class_8576; field_44946 DEFAULT + f Ljava/util/Optional; comp_1546 gateways + f Ljava/util/Optional; comp_1545 exitPortalLocation + f Ljava/util/Optional; comp_1544 dragonUUID + f Z comp_1543 isRespawning + f Z comp_1540 needsStateScanning + f Z comp_1542 previouslyKilled + f Z comp_1541 dragonKilled + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52230 method_52230 + p 0 instance + m ()Ljava/util/Optional; comp_1546 gateways + m ()Ljava/util/Optional; comp_1544 dragonUUID + m ()Ljava/util/Optional; comp_1545 exitPortalLocation + m ()Z comp_1543 isRespawning + m ()Z comp_1542 previouslyKilled + m ()Z comp_1541 dragonKilled + m ()Z comp_1540 needsStateScanning + m (ZZZZLjava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 needsStateScanning + p 2 dragonKilled + p 3 previouslyKilled + p 4 isRespawning + p 5 dragonUUID + p 6 exitPortalLocation + p 7 gateways +c net/minecraft/class_1548 net/minecraft/entity/mob/CreeperEntity + f Lnet/minecraft/class_2940; field_7230 FUSE_SPEED + f Lnet/minecraft/class_2940; field_7231 IGNITED + f Z field_7226 headsDropped + f Lnet/minecraft/class_2940; field_7224 CHARGED + f B field_57665 DEFAULT_EXPLOSION_RADIUS + f I field_7225 explosionRadius + f Z field_57667 DEFAULT_IGNITED + f Z field_57666 DEFAULT_CHARGED + f I field_7228 fuseTime + f I field_7229 lastFuseTime + f I field_7227 currentFuseTime + f S field_57668 DEFAULT_FUSE + m (I)V method_7005 setFuseSpeed + p 1 fuseSpeed + m ()Z method_61492 isCharged + m ()V method_7004 ignite + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_72496 method_72496 + p 3 stack + m ()V method_7006 explode + m ()Z method_7000 isIgnited + m ()V method_7001 spawnEffectsCloud + m ()I method_7007 getFuseSpeed + m (F)F method_7003 getLerpedFuseTime + p 1 tickProgress + m ()Lnet/minecraft/class_5132$class_5133; method_26908 createCreeperAttributes +c net/minecraft/class_1547 net/minecraft/entity/mob/AbstractSkeletonEntity + f Lnet/minecraft/class_1366; field_7221 meleeAttackGoal + f I field_49150 REGULAR_ATTACK_INTERVAL + f Lnet/minecraft/class_1380; field_7220 bowAttackGoal + f I field_64142 VARIANT_HARD_ATTACK_INTERVAL + f I field_49149 HARD_ATTACK_INTERVAL + f I field_64143 VARIANT_REGULAR_ATTACK_INTERVAL + m (Lnet/minecraft/class_1799;FLnet/minecraft/class_1799;)Lnet/minecraft/class_1665; method_6996 createArrowProjectile + p 1 arrow + p 2 damageModifier + p 3 shotFrom + m ()V method_6997 updateAttackType + m ()I method_57078 getHardAttackInterval + m ()I method_57079 getRegularAttackInterval + m ()Z method_35191 isShaking + m ()Lnet/minecraft/class_5132$class_5133; method_26905 createAbstractSkeletonAttributes + m ()Lnet/minecraft/class_3414; method_6998 getStepSound +c net/minecraft/class_1545 net/minecraft/entity/mob/BlazeEntity + f I field_7215 eyeOffsetCooldown + f Lnet/minecraft/class_2940; field_7216 BLAZE_FLAGS + c The tracked flags of blazes. Only has the {@code 1} bit for {@linkplain\n#isFireActive() fire activation}. + f F field_7214 eyeOffset + m ()Z method_6994 isFireActive + m (Z)V method_6993 setFireActive + p 1 fireActive + m ()Lnet/minecraft/class_5132$class_5133; method_26906 createBlazeAttributes +c net/minecraft/class_1545$class_1546 net/minecraft/entity/mob/BlazeEntity$ShootFireballGoal + f I field_7217 fireballCooldown + f I field_7218 fireballsFired + f Lnet/minecraft/class_1545; field_7219 blaze + f I field_19420 targetNotVisibleTicks + m ()D method_6995 getFollowRange + m (Lnet/minecraft/class_1545;)V + p 1 blaze +c net/minecraft/class_10583 net/minecraft/entity/LazyEntityReference + f Lcom/mojang/datafixers/util/Either; field_55661 value + f Lcom/mojang/serialization/Codec; field_56632 CODEC + f Lnet/minecraft/class_9139; field_56633 PACKET_CODEC + m (Ljava/util/UUID;)Ljava/util/UUID; method_66258 method_66258 + p 0 uuid + m (Lnet/minecraft/class_10599;)Lnet/minecraft/class_10583; method_73299 of + p 0 object + m (Lnet/minecraft/class_10599;)Z method_66256 uuidEquals + p 1 o + m (Lnet/minecraft/class_11372;Ljava/lang/String;)V method_66259 writeData + p 2 key + p 1 view + m (Lnet/minecraft/class_1937;Ljava/lang/Class;)Lnet/minecraft/class_10599; method_73298 getEntityByClass + p 1 world + p 2 clazz + m (Ljava/util/UUID;)Lnet/minecraft/class_10583; method_73300 ofUUID + p 0 uuid + m (Ljava/lang/Object;)Z equals equals + p 1 object + m (Lnet/minecraft/class_10598;Ljava/lang/Class;)Lnet/minecraft/class_10599; method_66255 resolve + p 1 world + p 2 type + m ()Ljava/util/UUID; method_66263 getUuid + m (Lnet/minecraft/class_11368;Ljava/lang/String;)Lnet/minecraft/class_10583; method_66262 fromData + p 1 key + p 0 view + m (Lnet/minecraft/class_11368;Ljava/lang/String;Lnet/minecraft/class_1937;)Lnet/minecraft/class_10583; method_66260 fromDataOrPlayerName + p 2 world + p 1 key + p 0 view + m (Lnet/minecraft/class_10583;Lnet/minecraft/class_11372;Ljava/lang/String;)V method_71612 writeData + p 1 view + p 0 entityRef + p 2 key + m (Lnet/minecraft/class_10583;Lnet/minecraft/class_1937;)Lnet/minecraft/class_1297; method_73297 getEntity + p 1 world + p 0 entityReference + m ()Lcom/mojang/serialization/Codec; method_66253 createCodec + m (Lnet/minecraft/class_10583;Lnet/minecraft/class_1937;)Lnet/minecraft/class_1657; method_73302 getPlayerEntity + p 1 world + p 0 playerReference + m (Ljava/util/UUID;)V + p 1 value + m (Lnet/minecraft/class_1937;Ljava/lang/String;)Ljava/util/UUID; method_68262 method_68262 + p 1 name + m (Lnet/minecraft/class_10599;Ljava/lang/Class;)Lnet/minecraft/class_10599; method_66257 cast + p 2 clazz + p 1 entity + m (Lnet/minecraft/class_10583;Lnet/minecraft/class_1937;)Lnet/minecraft/class_1309; method_73301 getLivingEntity + p 1 world + p 0 livingReference + m (Lnet/minecraft/class_10599;)V + p 1 value + m ()Lnet/minecraft/class_9139; method_66261 createPacketCodec + m (Lnet/minecraft/class_10583;Lnet/minecraft/class_1937;Ljava/lang/Class;)Lnet/minecraft/class_10599; method_66254 resolve + p 0 entity + p 1 world + p 2 type +c net/minecraft/class_2876 net/minecraft/entity/boss/dragon/EnderDragonSpawnState + f Lnet/minecraft/class_2876; field_13099 END + f Lnet/minecraft/class_2876; field_13098 SUMMONING_DRAGON + f Lnet/minecraft/class_2876; field_13097 START + f Lnet/minecraft/class_2876; field_13095 PREPARING_TO_SUMMON_PILLARS + f Lnet/minecraft/class_2876; field_13094 SUMMONING_PILLARS + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2881;Ljava/util/List;ILnet/minecraft/class_2338;)V method_12507 run + p 5 pos + p 4 tick + p 3 crystals + p 2 fight + p 1 world +c net/minecraft/class_2877 net/minecraft/network/packet/c2s/play/UpdateSignC2SPacket + f [Ljava/lang/String; field_13100 text + f Z field_43153 front + f Lnet/minecraft/class_9139; field_48222 CODEC + f Lnet/minecraft/class_2338; field_13101 pos + f I field_33371 MAX_LINE_LENGTH + m (Lnet/minecraft/class_2338;ZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 2 front + p 1 pos + p 4 line2 + p 3 line1 + p 6 line4 + p 5 line3 + m ()Z method_49751 isFront + m (Lnet/minecraft/class_2792;)V method_12509 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()[Ljava/lang/String; method_12508 getText + m ()Lnet/minecraft/class_2338; method_12510 getPos + m (Lnet/minecraft/class_2540;)V method_56002 write + p 1 buf +c net/minecraft/class_10584 net/minecraft/entity/PositionInterpolator + f Lnet/minecraft/class_10584$class_10585; field_55666 data + f I field_55663 DEFAULT_INTERPOLATION_DURATION + f Ljava/util/function/Consumer; field_55669 callback + f Lnet/minecraft/class_241; field_55668 lastRotation + f Lnet/minecraft/class_243; field_55667 lastPos + f I field_55665 lerpDuration + f Lnet/minecraft/class_1297; field_55664 entity + m (I)V method_66266 setLerpDuration + p 1 lerpDuration + m ()Lnet/minecraft/class_243; method_66265 getLerpedPos + m (Lnet/minecraft/class_243;FF)V method_66267 refreshPositionAndAngles + p 3 pitch + p 1 pow + p 2 yaw + m ()V method_66271 tick + m (Lnet/minecraft/class_1297;ILjava/util/function/Consumer;)V + p 2 lerpDuration + p 1 entity + p 3 callback + m ()V method_66272 clear + m (Lnet/minecraft/class_1297;Ljava/util/function/Consumer;)V + p 2 callback + p 1 entity + m ()Z method_66270 isInterpolating + m (Lnet/minecraft/class_1297;)V + p 1 entity + m ()F method_66268 getLerpedYaw + m ()F method_66269 getLerpedPitch + m (Lnet/minecraft/class_1297;I)V + p 2 lerpDuration + p 1 entity +c net/minecraft/class_10584$class_10585 net/minecraft/entity/PositionInterpolator$Data + f I field_55670 step + f F field_55672 yaw + f F field_55673 pitch + f Lnet/minecraft/class_243; field_55671 pos + m ()V method_66273 tick + m (FF)V method_66274 addRotation + p 1 yaw + p 2 pitch + m (ILnet/minecraft/class_243;FF)V + p 3 yaw + p 4 pitch + p 1 step + p 2 pos + m (Lnet/minecraft/class_243;)V method_66275 addPos + p 1 pos +c net/minecraft/class_2879 net/minecraft/network/packet/c2s/play/HandSwingC2SPacket + f Lnet/minecraft/class_1268; field_13102 hand + f Lnet/minecraft/class_9139; field_48223 CODEC + m (Lnet/minecraft/class_1268;)V + p 1 hand + m ()Lnet/minecraft/class_1268; method_12512 getHand + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_56003 write + p 1 buf + m (Lnet/minecraft/class_2792;)V method_12511 apply +c net/minecraft/class_10582 net/minecraft/entity/EquipmentDropChances + f Lnet/minecraft/class_10582; field_55658 DEFAULT + f F field_55656 UNHARMED_DROP_THRESHOLD + f F field_55655 DEFAULT_CHANCE + f I field_55657 GUARANTEED_DROP_CHANCE + f Lcom/mojang/serialization/Codec; field_55659 CODEC + f Ljava/util/Map; comp_3477 byEquipment + m (Lnet/minecraft/class_1304;)F method_66240 get + p 1 slot + m (Lnet/minecraft/class_1304;)Ljava/lang/Float; method_66243 method_66243 + p 0 slot + m (Lnet/minecraft/class_1304;)Z method_66242 dropsExactly + p 1 slot + m (Ljava/util/Map;)Ljava/util/Map; method_66241 getWithDefaultChances + p 0 byEquipment + m (Lnet/minecraft/class_1304;FLnet/minecraft/class_1304;)Ljava/lang/Float; method_66236 method_66236 + p 3 slotx + m (Ljava/lang/Float;)Z method_66237 method_66237 + p 0 chance + m (Ljava/util/Map;Lnet/minecraft/class_1304;)Ljava/lang/Float; method_66239 method_66239 + p 1 slot + m (Lnet/minecraft/class_1304;F)Lnet/minecraft/class_10582; method_66235 withChance + p 2 chance + p 1 slot + m (Ljava/util/Map;)Ljava/util/Map; method_66238 getWithoutDefaultChances + p 0 byEquipment + m (Lnet/minecraft/class_1304;)Lnet/minecraft/class_10582; method_66234 withGuaranteed + p 1 slot + m ()Ljava/util/Map; comp_3477 byEquipment + m (Ljava/util/Map;)V + p 1 byEquipment +c net/minecraft/class_1549 net/minecraft/entity/mob/CaveSpiderEntity + m ()Lnet/minecraft/class_5132$class_5133; method_26907 createCaveSpiderAttributes +c net/minecraft/class_10588 net/minecraft/entity/passive/PigVariants + f Lnet/minecraft/class_5321; field_55698 COLD + f Lnet/minecraft/class_5321; field_55699 DEFAULT + f Lnet/minecraft/class_5321; field_55696 TEMPERATE + f Lnet/minecraft/class_5321; field_55697 WARM + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_10586$class_10587;Ljava/lang/String;Lnet/minecraft/class_10702;)V method_66320 register + p 3 textureName + p 2 model + p 1 key + p 0 registry + p 4 spawnConditions + m (Lnet/minecraft/class_7891;)V method_66318 bootstrap + p 0 registry + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_10586$class_10587;Ljava/lang/String;Lnet/minecraft/class_6862;)V method_66319 register + p 4 biomes + p 3 textureName + p 2 model + p 1 key + p 0 registry + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_66315 of + p 0 id +c net/minecraft/class_10586 net/minecraft/entity/passive/PigVariant + f Lcom/mojang/serialization/Codec; field_55682 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_55680 CODEC + f Lnet/minecraft/class_9139; field_55683 ENTRY_PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_56270 NETWORK_CODEC + f Lnet/minecraft/class_10693; comp_3562 modelAndTexture + f Lnet/minecraft/class_10702; comp_3563 spawnConditions + m (Lnet/minecraft/class_10693;)V + p 1 modelAndTexture + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67134 method_67134 + p 0 instance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67135 method_67135 + p 0 instance + m ()Lnet/minecraft/class_10693; comp_3562 modelAndTexture + m ()Lnet/minecraft/class_10702; comp_3563 spawnConditions + m (Lnet/minecraft/class_10693;Lnet/minecraft/class_10702;)V + p 1 modelAndTexture + p 2 spawnConditions +c net/minecraft/class_10586$class_10587 net/minecraft/entity/passive/PigVariant$Model + f Ljava/lang/String; field_55694 id + f Lcom/mojang/serialization/Codec; field_55690 CODEC + f Lnet/minecraft/class_10586$class_10587; field_55688 NORMAL + f Lnet/minecraft/class_10586$class_10587; field_55689 COLD + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_2851 net/minecraft/network/packet/c2s/play/PlayerInputC2SPacket + f Lnet/minecraft/class_9139; field_48209 CODEC + f Lnet/minecraft/class_10185; comp_3139 input + m (Lnet/minecraft/class_2792;)V method_12369 apply + m ()Lnet/minecraft/class_10185; comp_3139 input + m (Lnet/minecraft/class_10185;)V + p 1 input +c net/minecraft/class_2852 net/minecraft/world/chunk/SerializedChunk + f Ljava/lang/String; field_31413 UPGRADE_DATA_KEY + f Ljava/lang/String; field_37664 BLOCK_LIGHT_KEY + f Ljava/lang/String; field_37662 IS_LIGHT_ON_KEY + f Lcom/mojang/serialization/Codec; field_56678 FLUID_TICKS_CODEC + f Ljava/lang/String; field_35477 FLUID_TICKS + f Lorg/slf4j/Logger; field_13001 LOGGER + f Ljava/lang/String; field_37660 Z_POS_KEY + f Ljava/lang/String; field_37663 SECTIONS_KEY + f Ljava/lang/String; field_37661 HEIGHTMAPS_KEY + f Ljava/lang/String; field_35476 BLOCK_TICKS + f Lcom/mojang/serialization/Codec; field_56677 BLOCK_TICKS_CODEC + f Ljava/lang/String; field_37665 SKY_LIGHT_KEY + f Ljava/lang/String; field_37659 X_POS_KEY + f Ljava/util/List; comp_2961 blockEntities + f Ljava/util/List; comp_2960 entities + f Ljava/util/List; comp_2959 sectionData + f Lnet/minecraft/class_6746; comp_2952 belowZeroRetrogen + f [Lit/unimi/dsi/fastutil/shorts/ShortList; comp_2957 postProcessingSections + f Lnet/minecraft/class_2806; comp_2950 chunkStatus + f [J comp_2954 carvingMask + f Lnet/minecraft/class_2843; comp_2953 upgradeData + f Lnet/minecraft/class_2791$class_6745; comp_2956 packedTicks + f Z comp_2958 lightCorrect + f I comp_2947 minSectionY + f J comp_2949 inhabitedTime + f J comp_2948 lastUpdateTime + f Lnet/minecraft/class_6749$class_9899; comp_2951 blendingData + f Ljava/util/Map; comp_2955 heightmaps + f Lnet/minecraft/class_2487; comp_2962 structureData + f Lnet/minecraft/class_1923; comp_2946 chunkPos + f Lnet/minecraft/class_11897; comp_4792 containerFactory + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_2902$class_2903;[J)V method_61798 method_61798 + p 1 type + p 2 values + m (Lnet/minecraft/class_2806;Ljava/util/Map;Lnet/minecraft/class_2487;)V method_68293 method_68293 + p 2 heightmaps + m (Lnet/minecraft/class_1923;ILjava/lang/String;)V method_39035 logRecoverableError + p 2 message + p 1 y + p 0 chunkPos + m (Ljava/util/Map;Lnet/minecraft/class_2902$class_2903;[J)V method_68294 method_68294 + p 2 heightmapType + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2791;)Lnet/minecraft/class_2852; method_61793 fromChunk + p 0 world + p 1 chunk + m (Ljava/util/List;Lnet/minecraft/class_3218;Ljava/util/List;Lnet/minecraft/class_2818;)V method_61797 method_61797 + p 3 chunk + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_1923;Lnet/minecraft/class_2487;)Ljava/util/Map; method_12387 readStructureReferences + p 0 registryManager + p 2 nbt + p 1 pos + m ([Lit/unimi/dsi/fastutil/shorts/ShortList;)Lnet/minecraft/class_2499; method_12393 toNbt + p 0 lists + m (Lnet/minecraft/class_5539;Lnet/minecraft/class_11897;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2852; method_61794 fromNbt + p 0 world + p 2 nbt + p 1 palettesFactory + m (Lnet/minecraft/class_6625;Lnet/minecraft/class_1923;Ljava/util/Map;Ljava/util/Map;)Lnet/minecraft/class_2487; method_12385 writeStructures + p 3 references + p 2 starts + p 1 pos + p 0 context + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_1923;ILnet/minecraft/class_2487;)Lnet/minecraft/class_2841; method_68291 method_68291 + p 3 blockStates + m (Lnet/minecraft/class_5539;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2843; method_68292 method_68292 + p 1 upgradeData + m (Lnet/minecraft/class_6625;Lnet/minecraft/class_2487;J)Ljava/util/Map; method_12392 readStructureStarts + p 2 worldSeed + p 1 nbt + p 0 context + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_2960;J)Z method_24029 method_24029 + p 2 packedPos + m (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2806; method_67685 getChunkStatus + p 0 nbt + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_1923;ILnet/minecraft/class_2487;)Lnet/minecraft/class_7522; method_68290 method_68290 + p 3 biomes + m ()Lnet/minecraft/class_2487; method_12410 serialize + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_2791$class_6745;)V method_39311 serializeTicks + p 1 schedulers + p 0 nbt + m (Lnet/minecraft/class_1923;ILjava/lang/String;)V method_68298 method_68298 + p 2 error + m (Lnet/minecraft/class_3218;Ljava/util/List;Ljava/util/List;)Lnet/minecraft/class_2818$class_6829; method_12386 getEntityLoadingCallback + p 2 blockEntities + p 1 entities + p 0 world + m (Lnet/minecraft/class_1923;ILjava/lang/String;)V method_68296 method_68296 + p 2 error + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_1923;Ljava/util/Map;Ljava/lang/String;Lnet/minecraft/class_2520;)V method_68295 method_68295 + p 3 id + p 4 chunkPos + m (Lit/unimi/dsi/fastutil/shorts/ShortList;)Lit/unimi/dsi/fastutil/shorts/ShortArrayList; method_61795 method_61795 + p 0 postProcessings + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4153;Lnet/minecraft/class_9240;Lnet/minecraft/class_1923;)Lnet/minecraft/class_2839; method_12395 convert + p 1 world + p 2 poiStorage + p 3 key + p 4 expectedPos + m ()Lnet/minecraft/class_11897; comp_4792 containerFactory + m ()Lnet/minecraft/class_2843; comp_2953 upgradeData + m ()Lnet/minecraft/class_2487; comp_2962 structureData + m ()Lnet/minecraft/class_6749$class_9899; comp_2951 blendingData + m ()Ljava/util/List; comp_2959 sectionData + m ()Ljava/util/List; comp_2961 blockEntities + m ()Ljava/util/List; comp_2960 entities + m ()J comp_2949 inhabitedTime + m ()J comp_2948 lastUpdateTime + m ()I comp_2947 minSectionY + m ()[Lit/unimi/dsi/fastutil/shorts/ShortList; comp_2957 postProcessingSections + m ()Lnet/minecraft/class_2806; comp_2950 chunkStatus + m ()[J comp_2954 carvingMask + m ()Lnet/minecraft/class_1923; comp_2946 chunkPos + m ()Lnet/minecraft/class_2791$class_6745; comp_2956 packedTicks + m ()Ljava/util/Map; comp_2955 heightmaps + m ()Lnet/minecraft/class_6746; comp_2952 belowZeroRetrogen + m ()Z comp_2958 lightCorrect + m (Lnet/minecraft/class_11897;Lnet/minecraft/class_1923;IJJLnet/minecraft/class_2806;Lnet/minecraft/class_6749$class_9899;Lnet/minecraft/class_6746;Lnet/minecraft/class_2843;[JLjava/util/Map;Lnet/minecraft/class_2791$class_6745;[Lit/unimi/dsi/fastutil/shorts/ShortList;ZLjava/util/List;Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_2487;)V + p 1 containerFactory + p 2 chunkPos + p 3 minSectionY + p 4 lastUpdateTime + p 6 inhabitedTime + p 8 chunkStatus + p 9 blendingData + p 10 belowZeroRetrogen + p 11 upgradeData + p 12 carvingMask + p 13 heightmaps + p 14 packedTicks + p 15 postProcessingSections + p 16 lightCorrect + p 17 sectionData + p 18 entities + p 19 blockEntities + p 20 structureData +c net/minecraft/class_2852$class_9898 net/minecraft/world/chunk/SerializedChunk$SectionData + f I comp_2963 y + f Lnet/minecraft/class_2826; comp_2964 chunkSection + f Lnet/minecraft/class_2804; comp_2965 blockLight + f Lnet/minecraft/class_2804; comp_2966 skyLight + m ()Lnet/minecraft/class_2804; comp_2966 skyLight + m ()Lnet/minecraft/class_2804; comp_2965 blockLight + m ()I comp_2963 y + m ()Lnet/minecraft/class_2826; comp_2964 chunkSection + m (ILnet/minecraft/class_2826;Lnet/minecraft/class_2804;Lnet/minecraft/class_2804;)V + p 1 y + p 2 chunkSection + p 3 blockLight + p 4 skyLight +c net/minecraft/class_2852$class_9314 net/minecraft/world/chunk/SerializedChunk$ChunkLoadingException +c net/minecraft/class_2853 net/minecraft/network/packet/c2s/play/RecipeBookDataC2SPacket + f Lnet/minecraft/class_9139; field_48211 CODEC + f Lnet/minecraft/class_10298; comp_3246 recipeId + m (Lnet/minecraft/class_2792;)V method_12400 apply + m ()Lnet/minecraft/class_10298; comp_3246 recipeId + m (Lnet/minecraft/class_10298;)V + p 1 recipeId +c net/minecraft/class_1522 net/minecraft/entity/boss/dragon/phase/SittingScanningPhase + f Lnet/minecraft/class_4051; field_18124 CLOSE_PLAYER_PREDICATE + f I field_7050 ticks + f I field_30439 MAX_PLAYER_RANGE + f Lnet/minecraft/class_4051; field_18123 PLAYER_WITHIN_RANGE_PREDICATE + f I field_30438 MAX_HORIZONTAL_CLOSE_PLAYER_RANGE + f I field_30437 MAX_HEIGHT_CLOSE_PLAYER_RANGE + f I field_30436 DURATION + m (Lnet/minecraft/class_1510;Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_18447 method_18447 + p 2 world + p 1 player +c net/minecraft/class_1521 net/minecraft/entity/boss/dragon/phase/Phase + m ()Lnet/minecraft/class_1527; method_6849 getType + m (Lnet/minecraft/class_1282;F)F method_6852 modifyDamageTaken + p 2 damage + p 1 damageSource + m ()Lnet/minecraft/class_243; method_6851 getPathTarget + m ()F method_6846 getMaxYAcceleration + m ()F method_6847 getYawAcceleration + m (Lnet/minecraft/class_3218;)V method_6855 serverTick + p 1 world + m ()Z method_6848 isSittingOrHovering + m ()V method_6856 beginPhase + m (Lnet/minecraft/class_1511;Lnet/minecraft/class_2338;Lnet/minecraft/class_1282;Lnet/minecraft/class_1657;)V method_6850 crystalDestroyed + p 4 player + p 3 source + p 2 pos + p 1 crystal + m ()V method_6853 clientTick + m ()V method_6854 endPhase +c net/minecraft/class_1520 net/minecraft/entity/boss/dragon/phase/SittingAttackingPhase + f I field_30432 DURATION + f I field_7049 ticks +c net/minecraft/class_1515 net/minecraft/entity/boss/dragon/phase/DyingPhase + f I field_7040 ticks + f Lnet/minecraft/class_243; field_7041 target +c net/minecraft/class_2848 net/minecraft/network/packet/c2s/play/ClientCommandC2SPacket + f Lnet/minecraft/class_2848$class_2849; field_12978 mode + f Lnet/minecraft/class_9139; field_48208 CODEC + f I field_12976 mountJumpHeight + f I field_12977 entityId + m ()I method_36173 getEntityId + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2848$class_2849;I)V + p 3 mountJumpHeight + p 2 mode + p 1 entity + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2792;)V method_12364 apply + m (Lnet/minecraft/class_2540;)V method_55989 write + p 1 buf + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2848$class_2849;)V + p 2 mode + p 1 entity + m ()I method_12366 getMountJumpHeight + m ()Lnet/minecraft/class_2848$class_2849; method_12365 getMode +c net/minecraft/class_2848$class_2849 net/minecraft/network/packet/c2s/play/ClientCommandC2SPacket$Mode + f Lnet/minecraft/class_2848$class_2849; field_12982 START_FALL_FLYING + f Lnet/minecraft/class_2848$class_2849; field_12980 STOP_RIDING_JUMP + f Lnet/minecraft/class_2848$class_2849; field_12981 START_SPRINTING + f Lnet/minecraft/class_2848$class_2849; field_12986 STOP_SLEEPING + f Lnet/minecraft/class_2848$class_2849; field_12987 START_RIDING_JUMP + f Lnet/minecraft/class_2848$class_2849; field_12985 STOP_SPRINTING + f Lnet/minecraft/class_2848$class_2849; field_12988 OPEN_INVENTORY +c net/minecraft/class_1514 net/minecraft/entity/boss/dragon/phase/AbstractSittingPhase +c net/minecraft/class_1513 net/minecraft/entity/boss/dragon/phase/ChargingPlayerPhase + f I field_30431 DURATION + f Lnet/minecraft/class_243; field_7038 pathTarget + f I field_7037 chargingTicks + f Lorg/slf4j/Logger; field_7039 LOGGER + m (Lnet/minecraft/class_243;)V method_6840 setPathTarget + p 1 pathTarget +c net/minecraft/class_1512 net/minecraft/entity/boss/dragon/phase/AbstractPhase + f Lnet/minecraft/class_1510; field_7036 dragon + m (Lnet/minecraft/class_1510;)V + p 1 dragon +c net/minecraft/class_2843 net/minecraft/world/chunk/UpgradeData + f Ljava/lang/String; field_31412 INDICES_KEY + f Lorg/slf4j/Logger; field_12956 LOGGER + f [Lnet/minecraft/class_2355; field_12952 EIGHT_WAYS + f Ljava/util/List; field_36539 fluidTicks + f Lcom/mojang/serialization/Codec; field_56675 FLUID_TICKS_CODEC + f Lnet/minecraft/class_2843; field_12950 NO_UPGRADE_DATA + f Ljava/util/Set; field_12954 CALLBACK_LOGICS + f Ljava/util/EnumSet; field_12951 sidesToUpgrade + f Ljava/util/Map; field_12953 BLOCK_TO_LOGIC + f Ljava/util/List; field_36538 blockTicks + f [[I field_12955 centerIndicesToUpgrade + f Lcom/mojang/serialization/Codec; field_56674 BLOCK_TICKS_CODEC + m ()Lnet/minecraft/class_2487; method_12350 toNbt + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_12351 applyAdjacentBlock + p 3 currentPos + p 4 otherPos + p 0 oldState + p 1 dir + p 2 world + m (Lnet/minecraft/class_2487;)V method_68288 method_68288 + p 1 indices + m (Lnet/minecraft/class_2818;Lnet/minecraft/class_2355;)V method_12352 upgradeSide + p 0 chunk + p 1 side + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_6759;)V method_40452 method_40452 + p 1 tick + m ()Z method_12349 isDone + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_6759;)V method_40458 method_40458 + p 1 tick + m ()Lnet/minecraft/class_2843; method_61772 copy + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_5539;)V + p 1 nbt + p 2 world + m (Lnet/minecraft/class_2818;)V method_12348 upgradeCenter + p 1 chunk + m (Lnet/minecraft/class_2818;)V method_12356 upgrade + p 1 chunk + m (Lnet/minecraft/class_5539;)V + p 1 world + m (Lnet/minecraft/class_2843;)V + p 1 data + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2843$class_2844;)V method_12353 method_12353 + p 1 logic +c net/minecraft/class_2843$class_2844 net/minecraft/world/chunk/UpgradeData$Logic + m (Lnet/minecraft/class_1936;)V method_12357 postUpdate + p 1 world + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_12358 getUpdatedState + p 5 currentPos + p 6 otherPos + p 3 otherState + p 4 world + p 1 oldState + p 2 direction +c net/minecraft/class_2843$class_2845 net/minecraft/world/chunk/UpgradeData$BuiltinLogic + f [Lnet/minecraft/class_2350; field_12959 DIRECTIONS + f Lnet/minecraft/class_2843$class_2845; field_12958 STEM_BLOCK + f Lnet/minecraft/class_2843$class_2845; field_12957 BLACKLIST + f Lnet/minecraft/class_2843$class_2845; field_12960 CHEST + f Lnet/minecraft/class_2843$class_2845; field_12963 LEAVES + f Lnet/minecraft/class_2843$class_2845; field_12962 DEFAULT + m (Ljava/lang/String;IZ[Lnet/minecraft/class_2248;)V + p 4 blocks + p 3 addCallback + m (Ljava/lang/String;I[Lnet/minecraft/class_2248;)V + p 3 blocks +c net/minecraft/class_2843$class_2845$4 net/minecraft/world/chunk/UpgradeData$BuiltinLogic$4 + f Ljava/lang/ThreadLocal; field_12964 distanceToPositions +c net/minecraft/class_1519 net/minecraft/entity/boss/dragon/phase/LandingApproachPhase + f Lnet/minecraft/class_243; field_7048 pathTarget + f Lnet/minecraft/class_11; field_7047 path + f Lnet/minecraft/class_4051; field_18122 PLAYERS_IN_RANGE_PREDICATE + m ()V method_6845 followPath + m (Lnet/minecraft/class_3218;)V method_6844 updatePath + p 1 world +c net/minecraft/class_1518 net/minecraft/entity/boss/dragon/phase/LandingPhase + f Lnet/minecraft/class_243; field_7046 target +c net/minecraft/class_1517 net/minecraft/entity/boss/dragon/phase/HoldingPatternPhase + f Lnet/minecraft/class_243; field_7045 pathTarget + f Lnet/minecraft/class_11; field_7043 path + f Z field_7044 shouldFindNewPath + f Lnet/minecraft/class_4051; field_18121 PLAYERS_IN_RANGE_PREDICATE + m ()V method_6842 followPath + m (Lnet/minecraft/class_3218;)V method_6841 tickInRange + p 1 world + m (Lnet/minecraft/class_1657;)V method_6843 strafePlayer + p 1 player +c net/minecraft/class_2846 net/minecraft/network/packet/c2s/play/PlayerActionC2SPacket + f Lnet/minecraft/class_9139; field_48207 CODEC + f Lnet/minecraft/class_2338; field_12967 pos + f Lnet/minecraft/class_2350; field_12965 direction + f Lnet/minecraft/class_2846$class_2847; field_12966 action + f I field_38048 sequence + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()I method_42079 getSequence + m ()Lnet/minecraft/class_2846$class_2847; method_12363 getAction + m ()Lnet/minecraft/class_2350; method_12360 getDirection + m (Lnet/minecraft/class_2846$class_2847;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;I)V + p 4 sequence + p 1 action + p 3 direction + p 2 pos + m ()Lnet/minecraft/class_2338; method_12362 getPos + m (Lnet/minecraft/class_2846$class_2847;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)V + p 2 pos + p 1 action + p 3 direction + m (Lnet/minecraft/class_2540;)V method_55988 write + p 1 buf + m (Lnet/minecraft/class_2792;)V method_12361 apply +c net/minecraft/class_2846$class_2847 net/minecraft/network/packet/c2s/play/PlayerActionC2SPacket$Action + f Lnet/minecraft/class_2846$class_2847; field_12968 START_DESTROY_BLOCK + f Lnet/minecraft/class_2846$class_2847; field_12969 SWAP_ITEM_WITH_OFFHAND + f Lnet/minecraft/class_2846$class_2847; field_12973 STOP_DESTROY_BLOCK + f Lnet/minecraft/class_2846$class_2847; field_12974 RELEASE_USE_ITEM + f Lnet/minecraft/class_2846$class_2847; field_12975 DROP_ITEM + f Lnet/minecraft/class_2846$class_2847; field_12970 DROP_ALL_ITEMS + f Lnet/minecraft/class_2846$class_2847; field_12971 ABORT_DESTROY_BLOCK + f Lnet/minecraft/class_2846$class_2847; field_63165 STAB +c net/minecraft/class_1516 net/minecraft/entity/boss/dragon/phase/HoverPhase + f Lnet/minecraft/class_243; field_7042 target +c net/minecraft/class_2861 net/minecraft/world/storage/RegionFile + f Ljava/nio/file/Path; field_48752 path + f Ljava/nio/ByteBuffer; field_20438 header + f Ljava/nio/channels/FileChannel; field_20436 channel + f Ljava/nio/IntBuffer; field_20439 sectorData + f Ljava/lang/String; field_31421 FILE_EXTENSION + f Ljava/nio/IntBuffer; field_20440 saveTimes + f Ljava/nio/ByteBuffer; field_20435 ZERO + f Lnet/minecraft/class_4485; field_20441 sectors + f Lnet/minecraft/class_9240; field_49102 storageKey + f Lnet/minecraft/class_4486; field_20437 compressionFormat + f I field_31417 SECTOR_DATA_LIMIT + f Ljava/nio/file/Path; field_20657 directory + f Lorg/slf4j/Logger; field_20434 LOGGER + m (Lnet/minecraft/class_1923;)I method_17909 getIndex + p 0 pos + m (Lnet/minecraft/class_1923;)Z method_12423 hasChunk + p 1 pos + m (Ljava/nio/ByteBuffer;I)Ljava/io/ByteArrayInputStream; method_21876 getInputStream + p 0 buffer + p 1 length + m ()V method_21877 fillLastSector + m (Lnet/minecraft/class_1923;BLjava/io/InputStream;)Ljava/io/DataInputStream; method_22409 decompress + p 3 stream + p 2 flags + p 1 pos + m (II)I method_21872 packSectorData + p 1 offset + p 2 size + m (Lnet/minecraft/class_1923;)Ljava/io/DataOutputStream; method_21881 getChunkOutputStream + p 1 pos + m ()I method_31739 getEpochTimeSeconds + m (B)Z method_22407 hasChunkStreamVersionId + p 0 flags + m (Lnet/minecraft/class_1923;)Z method_21879 isChunkValid + p 1 pos + m (I)I method_21871 getSize + p 0 sectorData + m (Lnet/minecraft/class_1923;B)Ljava/io/DataInputStream; method_22408 getInputStream + p 2 flags + p 1 pos + m (Ljava/nio/file/Path;Ljava/nio/ByteBuffer;)Lnet/minecraft/class_2861$class_4549; method_22410 writeSafely + p 1 path + p 2 buf + m (Lnet/minecraft/class_1923;)V method_31740 delete + p 1 pos + m ()V method_21870 writeHeader + m ()V method_26981 sync + m (Lnet/minecraft/class_9240;Ljava/nio/file/Path;Ljava/nio/file/Path;Z)V + p 3 path + p 4 dsync + p 1 storageKey + p 2 directory + m (Lnet/minecraft/class_1923;)Ljava/io/DataInputStream; method_21873 getChunkInputStream + p 1 pos + m (Lnet/minecraft/class_1923;)I method_12419 getSectorData + p 1 pos + m (B)B method_22412 getChunkStreamVersionId + p 0 flags + m (Lnet/minecraft/class_1923;Ljava/nio/ByteBuffer;)V method_21874 writeChunk + p 2 buf + p 1 pos + m (Lnet/minecraft/class_9240;Ljava/nio/file/Path;Ljava/nio/file/Path;Lnet/minecraft/class_4486;Z)V + p 5 dsync + p 4 compressionFormat + p 3 directory + p 2 path + p 1 storageKey + m (I)I method_21880 getSectorCount + p 0 byteCount + m (Lnet/minecraft/class_1923;)Ljava/nio/file/Path; method_22413 getExternalChunkPath + p 1 chunkPos + m ()Ljava/nio/file/Path; method_56566 getPath + m (I)I method_21878 getOffset + p 0 sectorData + m ()Ljava/nio/ByteBuffer; method_22406 getHeaderBuf +c net/minecraft/class_2861$class_4549 net/minecraft/world/storage/RegionFile$OutputAction +c net/minecraft/class_2861$class_2862 net/minecraft/world/storage/RegionFile$ChunkBuffer + f Lnet/minecraft/class_1923; field_17656 pos + m (Lnet/minecraft/class_2861;Lnet/minecraft/class_1923;)V + p 2 pos +c net/minecraft/class_2863 net/minecraft/network/packet/c2s/play/SelectMerchantTradeC2SPacket + f I field_13036 tradeId + f Lnet/minecraft/class_9139; field_48214 CODEC + m (Lnet/minecraft/class_2792;)V method_12430 apply + m (I)V + p 1 tradeId + m ()I method_12431 getTradeId + m (Lnet/minecraft/class_2540;)V method_55995 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_1533 net/minecraft/entity/decoration/ItemFrameEntity + f F field_7129 itemDropChance + f F field_57651 DEFAULT_ITEM_DROP_CHANCE + f Z field_57652 DEFAULT_INVISIBLE + f Z field_22476 fixed + f Lnet/minecraft/class_2940; field_7130 ITEM_STACK + f Lnet/minecraft/class_2940; field_7132 ROTATION + f B field_57650 DEFAULT_ITEM_ROTATION + f Z field_57653 DEFAULT_FIXED + m ()Lnet/minecraft/class_3414; method_34240 getRemoveItemSound + m ()Lnet/minecraft/class_3414; method_34242 getPlaceSound + m ()Lnet/minecraft/class_3414; method_34244 getRotateItemSound + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)V + p 1 type + p 2 world + p 3 pos + p 4 facing + m (Lnet/minecraft/class_1799;)V method_6935 setHeldItemStack + p 1 stack + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_9209; method_43272 getMapId + p 1 stack + m (Lnet/minecraft/class_1799;)V method_6937 removeFromFrame + p 1 stack + m (I)V method_6939 setRotation + p 1 value + m ()Lnet/minecraft/class_1799; method_33340 getAsItemStack + m (IZ)V method_6941 setRotation + p 1 value + p 2 updateComparators + m (Lnet/minecraft/class_1799;Z)V method_6933 setHeldItemStack + p 1 value + p 2 update + m ()Lnet/minecraft/class_1799; method_6940 getHeldItemStack + m (Lnet/minecraft/class_1282;)Z method_64459 canDamageWhenFixed + p 0 damageSource + m (Lnet/minecraft/class_1799;)V method_43271 setAsStackHolder + p 1 stack + m ()Lnet/minecraft/class_3414; method_34241 getBreakSound + m ()Lnet/minecraft/class_3414; method_34243 getAddItemSound + m ()Z method_43273 containsMap + m ()I method_6938 getComparatorPower + m ()I method_6934 getRotation + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Z)V method_6936 dropHeldStack + p 3 dropSelf + p 2 entity + p 1 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Z)Lnet/minecraft/class_238; method_74964 calculateBoundingBox + p 3 map + p 2 side + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)V + p 1 world + p 2 pos + p 3 facing + m (Lnet/minecraft/class_1282;)Z method_64458 shouldDropHeldStackWhenDamaged + p 1 damageSource +c net/minecraft/class_1532 net/minecraft/entity/decoration/LeashKnotEntity + m ()V method_59944 onPlace + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V + p 1 world + p 2 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1532; method_6932 getOrCreate + p 0 world + p 1 pos +c net/minecraft/class_1531 net/minecraft/entity/decoration/ArmorStandEntity + f I field_57645 DEFAULT_DISABLED_SLOTS + f Lnet/minecraft/class_2940; field_7107 ARMOR_STAND_FLAGS + f Lnet/minecraft/class_2940; field_7123 TRACKER_HEAD_ROTATION + f Lnet/minecraft/class_2940; field_7127 TRACKER_LEFT_LEG_ROTATION + f Z field_7111 invisible + f Ljava/util/function/Predicate; field_7102 RIDEABLE_MINECART_PREDICATE + f Lnet/minecraft/class_2379; field_7119 DEFAULT_BODY_ROTATION + f Lnet/minecraft/class_2379; field_7115 DEFAULT_RIGHT_ARM_ROTATION + f I field_30452 SMALL_FLAG + f I field_30444 MARKER_FLAG + f Lnet/minecraft/class_2940; field_7116 TRACKER_LEFT_ARM_ROTATION + f Lnet/minecraft/class_4048; field_26746 SMALL_DIMENSIONS + f I field_30453 SHOW_ARMS_FLAG + f J field_7112 lastHitTime + f Lnet/minecraft/class_2940; field_7125 TRACKER_RIGHT_LEG_ROTATION + f Lnet/minecraft/class_4048; field_26745 MARKER_DIMENSIONS + f Lnet/minecraft/class_2940; field_7105 TRACKER_RIGHT_ARM_ROTATION + f Lnet/minecraft/class_2379; field_7124 DEFAULT_LEFT_ARM_ROTATION + f I field_7118 disabledSlots + f Lnet/minecraft/class_2940; field_7122 TRACKER_BODY_ROTATION + f I field_30442 HIDE_BASE_PLATE_FLAG + f Lnet/minecraft/class_2379; field_7117 DEFAULT_RIGHT_LEG_ROTATION + f Lnet/minecraft/class_2379; field_7121 DEFAULT_LEFT_LEG_ROTATION + f Lnet/minecraft/class_2379; field_7113 DEFAULT_HEAD_ROTATION + m (Z)Lnet/minecraft/class_4048; method_31168 getDimensions + p 1 marker + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1304;Lnet/minecraft/class_1799;Lnet/minecraft/class_1268;)Z method_6904 equip + p 4 hand + p 2 slot + p 3 stack + p 1 player + m ()Lnet/minecraft/class_2379; method_6917 getLeftLegRotation + m ()Z method_6929 shouldShowArms + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;)V method_6924 breakAndDropItem + p 1 world + p 2 damageSource + m ()Lnet/minecraft/class_2379; method_6921 getHeadRotation + m ()Lnet/minecraft/class_5132$class_5133; method_55745 createArmorStandAttributes + m (Lnet/minecraft/class_2379;)V method_6909 setLeftLegRotation + p 1 angle + m (Lnet/minecraft/class_1297;)Z method_6918 method_6918 + p 0 entity + m (Lnet/minecraft/class_2379;)V method_6925 setRightArmRotation + p 1 angle + m ()Z method_61489 shouldShowBasePlate + m (Z)V method_6913 setShowArms + p 1 showArms + m ()Z method_18059 canClip + m ()Lnet/minecraft/class_2379; method_6900 getRightLegRotation + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;F)V method_6905 updateHealth + p 1 world + p 3 amount + p 2 damageSource + m ()Lnet/minecraft/class_1531$class_11346; method_71383 packRotation + m (Lnet/minecraft/class_2379;)V method_6926 setRightLegRotation + p 1 angle + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;)V method_6908 onBreak + p 2 damageSource + p 1 world + m (Lnet/minecraft/class_1304;)Z method_6915 isSlotDisabled + p 1 slot + m (Lnet/minecraft/class_1531$class_11346;)V method_71384 unpackRotation + p 1 packedRotation + m ()V method_6920 playBreakSound + m ()Z method_6912 isMarker + m (Lnet/minecraft/class_2379;)V method_6910 setLeftArmRotation + p 1 angle + m ()Lnet/minecraft/class_2379; method_6903 getRightArmRotation + m ()Lnet/minecraft/class_2379; method_6923 getBodyRotation + m (BIZ)B method_6906 setBitField + p 3 set + p 2 bitField + p 1 value + m (Lnet/minecraft/class_2379;)V method_6919 setHeadRotation + p 1 angle + m (Lnet/minecraft/class_2379;)V method_6927 setBodyRotation + p 1 angle + m ()V method_6898 spawnBreakParticles + m (Z)V method_6907 setHideBasePlate + p 1 hideBasePlate + m ()Lnet/minecraft/class_2379; method_6930 getLeftArmRotation + m (Z)V method_6922 setSmall + p 1 small + m ()Z method_6914 isSmall + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_1304; method_6916 getSlotFromPosition + p 1 hitPos + m (Z)V method_6902 setMarker + p 1 marker + m (Lnet/minecraft/class_1937;DDD)V + p 4 y + p 6 z + p 1 world + p 2 x +c net/minecraft/class_1531$class_11346 net/minecraft/entity/decoration/ArmorStandEntity$PackedRotation + f Lnet/minecraft/class_1531$class_11346; field_60360 DEFAULT + f Lcom/mojang/serialization/Codec; field_60361 CODEC + f Lnet/minecraft/class_2379; comp_4217 head + f Lnet/minecraft/class_2379; comp_4219 leftArm + f Lnet/minecraft/class_2379; comp_4218 body + f Lnet/minecraft/class_2379; comp_4221 leftLeg + f Lnet/minecraft/class_2379; comp_4220 rightArm + f Lnet/minecraft/class_2379; comp_4222 rightLeg + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71385 method_71385 + p 0 instance + m ()Lnet/minecraft/class_2379; comp_4222 rightLeg + m ()Lnet/minecraft/class_2379; comp_4220 rightArm + m ()Lnet/minecraft/class_2379; comp_4221 leftLeg + m ()Lnet/minecraft/class_2379; comp_4218 body + m ()Lnet/minecraft/class_2379; comp_4219 leftArm + m ()Lnet/minecraft/class_2379; comp_4217 head + m (Lnet/minecraft/class_2379;Lnet/minecraft/class_2379;Lnet/minecraft/class_2379;Lnet/minecraft/class_2379;Lnet/minecraft/class_2379;Lnet/minecraft/class_2379;)V + p 1 head + p 2 body + p 3 leftArm + p 4 rightArm + p 5 leftLeg + p 6 rightLeg +c net/minecraft/class_1530 net/minecraft/entity/decoration/AbstractDecorationEntity + f Lnet/minecraft/class_2940; field_60665 FACING + f Lnet/minecraft/class_2350; field_60666 DEFAULT_FACING + m ()Lnet/minecraft/class_238; method_74963 calculatePopOffCheckBoundingBox + m (Z)Z method_74095 hasNoIntersectingDecoration + p 1 skipTypeCheck + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V + p 3 pos + p 2 world + p 1 type + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Lnet/minecraft/class_238; method_59943 calculateBoundingBox + p 2 side + p 1 pos + m (Lnet/minecraft/class_2350;)V method_71770 setFacingInternal + p 1 facing + m (Lnet/minecraft/class_2338;)Z method_59942 method_59942 + p 1 pos + m (Lnet/minecraft/class_238;)Z method_76790 shouldPopOff + p 1 checkBoundingBox + m ()Lnet/minecraft/class_238; method_59941 getAttachmentBox + m (Lnet/minecraft/class_2350;)V method_6892 setFacing + p 1 facing + m (ZLnet/minecraft/class_1530;)Z method_74096 method_74096 + p 2 entity + m ()V method_6894 onPlace +c net/minecraft/class_1526 net/minecraft/entity/boss/dragon/phase/PhaseManager + f Lnet/minecraft/class_1510; field_7065 dragon + f [Lnet/minecraft/class_1521; field_7064 phases + f Lorg/slf4j/Logger; field_7066 LOGGER + f Lnet/minecraft/class_1521; field_7063 current + m (Lnet/minecraft/class_1527;)Lnet/minecraft/class_1521; method_6865 create + p 1 type + m ()Lnet/minecraft/class_1521; method_6864 getCurrent + m (Lnet/minecraft/class_1510;)V + p 1 dragon + m (Lnet/minecraft/class_1527;)V method_6863 setPhase + p 1 type +c net/minecraft/class_2859 net/minecraft/network/packet/c2s/play/AdvancementTabC2SPacket + f Lnet/minecraft/class_2960; field_13020 tabToOpen + f Lnet/minecraft/class_9139; field_48213 CODEC + f Lnet/minecraft/class_2859$class_2860; field_13021 action + m (Lnet/minecraft/class_2540;)V method_55994 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2859$class_2860;Lnet/minecraft/class_2960;)V + p 2 tab + p 1 action + m ()Lnet/minecraft/class_2960; method_12416 getTabToOpen + m (Lnet/minecraft/class_2792;)V method_12417 apply + m (Lnet/minecraft/class_8779;)Lnet/minecraft/class_2859; method_12418 open + p 0 advancement + m ()Lnet/minecraft/class_2859$class_2860; method_12415 getAction + m ()Lnet/minecraft/class_2859; method_12414 close +c net/minecraft/class_2859$class_2860 net/minecraft/network/packet/c2s/play/AdvancementTabC2SPacket$Action + f Lnet/minecraft/class_2859$class_2860; field_13023 CLOSED_SCREEN + f Lnet/minecraft/class_2859$class_2860; field_13024 OPENED_TAB +c net/minecraft/class_1525 net/minecraft/entity/boss/dragon/phase/StrafePlayerPhase + f I field_30440 MINIMUM_TARGET_SPOT_AMOUNT + f Lnet/minecraft/class_1309; field_7062 target + f Lnet/minecraft/class_243; field_7057 pathTarget + f Z field_7058 shouldFindNewPath + f Lorg/slf4j/Logger; field_7061 LOGGER + f Lnet/minecraft/class_11; field_7059 path + f I field_7060 seenTargetTimes + m ()V method_6860 updatePath + m ()V method_6861 followPath + m (Lnet/minecraft/class_1309;)V method_6862 setTargetEntity + p 1 targetEntity +c net/minecraft/class_1524 net/minecraft/entity/boss/dragon/phase/TakeoffPhase + f Lnet/minecraft/class_243; field_7055 pathTarget + f Z field_7056 shouldFindNewPath + f Lnet/minecraft/class_11; field_7054 path + m ()V method_6858 updatePath + m ()V method_6859 followPath +c net/minecraft/class_1523 net/minecraft/entity/boss/dragon/phase/SittingFlamingPhase + f I field_7053 ticks + f I field_7052 timesRun + f Lnet/minecraft/class_1295; field_7051 dragonBreathEntity + f I field_30435 DRAGON_BREATH_MAX_TICK + f I field_30434 MAX_TIMES_RUN + f I field_30433 DURATION + m ()V method_6857 reset +c net/minecraft/class_2855 net/minecraft/network/packet/c2s/play/RenameItemC2SPacket + f Lnet/minecraft/class_9139; field_48212 CODEC + f Ljava/lang/String; field_13013 name + m (Ljava/lang/String;)V + p 1 name + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2792;)V method_12408 apply + m ()Ljava/lang/String; method_12407 getName + m (Lnet/minecraft/class_2540;)V method_55993 write + p 1 buf +c net/minecraft/class_2856 net/minecraft/network/packet/c2s/common/ResourcePackStatusC2SPacket + f Lnet/minecraft/class_2856$class_2857; comp_2164 status + f Lnet/minecraft/class_9139; field_48649 CODEC + f Ljava/util/UUID; comp_2163 id + m (Lnet/minecraft/class_2540;)V method_56478 write + p 1 buf + m (Lnet/minecraft/class_8706;)V method_12409 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Lnet/minecraft/class_2856$class_2857; comp_2164 status + m ()Ljava/util/UUID; comp_2163 id + m (Ljava/util/UUID;Lnet/minecraft/class_2856$class_2857;)V + p 1 id + p 2 status +c net/minecraft/class_2856$class_2857 net/minecraft/network/packet/c2s/common/ResourcePackStatusC2SPacket$Status + f Lnet/minecraft/class_2856$class_2857; field_47704 DOWNLOADED + f Lnet/minecraft/class_2856$class_2857; field_47667 INVALID_URL + f Lnet/minecraft/class_2856$class_2857; field_47669 DISCARDED + f Lnet/minecraft/class_2856$class_2857; field_47668 FAILED_RELOAD + f Lnet/minecraft/class_2856$class_2857; field_13017 SUCCESSFULLY_LOADED + f Lnet/minecraft/class_2856$class_2857; field_13018 DECLINED + f Lnet/minecraft/class_2856$class_2857; field_13015 FAILED_DOWNLOAD + f Lnet/minecraft/class_2856$class_2857; field_13016 ACCEPTED + m ()Z method_55627 hasFinished +c net/minecraft/class_1528 net/minecraft/entity/boss/WitherEntity + f Lnet/minecraft/class_2940; field_7089 TRACKED_ENTITY_ID_3 + f [I field_7092 chargedSkullCooldowns + f I field_7082 blockBreakingCooldown + f [F field_7084 sideHeadPitches + f [F field_7094 lastSideHeadYaws + f Lnet/minecraft/class_2940; field_7085 INVUL_TIMER + f Lnet/minecraft/class_2940; field_7090 TRACKED_ENTITY_ID_2 + f [I field_7091 skullCooldowns + f Lnet/minecraft/class_2940; field_7088 TRACKED_ENTITY_ID_1 + f I field_57643 DEFAULT_INVUL_TIMER + f [F field_7095 lastSideHeadPitches + f [F field_7083 sideHeadYaws + f I field_30441 ON_SUMMONED_INVUL_TIMER + f Ljava/util/List; field_7087 TRACKED_ENTITY_IDS + f Lnet/minecraft/class_4051; field_18125 HEAD_TARGET_PREDICATE + f Lnet/minecraft/class_4051$class_10254; field_7086 CAN_ATTACK_PREDICATE + f Lnet/minecraft/class_3213; field_7093 bossBar + m (I)D method_6881 getHeadZ + p 1 headIndex + m ()Z method_6872 isArmored + m (II)V method_6876 setTrackedEntityId + p 2 id + p 1 headIndex + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_6873 method_6873 + p 1 world + p 0 entity + m ()V method_6885 onSummoned + m ()[F method_61488 getSideHeadYaws + m (I)V method_6875 setInvulTimer + p 1 ticks + m (I)D method_6880 getHeadY + p 1 headIndex + m (IDDDZ)V method_6877 shootSkullAt + p 8 charged + p 4 targetY + p 6 targetZ + p 1 headIndex + p 2 targetX + m (I)I method_6882 getTrackedEntityId + p 1 headIndex + m (ILnet/minecraft/class_1309;)V method_6878 shootSkullAt + p 2 target + p 1 headIndex + m (I)D method_6874 getHeadX + p 1 headIndex + m (FFF)F method_6886 getNextAngle + p 3 maxDifference + p 2 desiredAngle + p 1 lastAngle + m ()I method_6884 getInvulnerableTimer + m (Lnet/minecraft/class_2680;)Z method_6883 canDestroy + p 0 block + m ()Lnet/minecraft/class_5132$class_5133; method_26904 createWitherAttributes + m ()[F method_61487 getSideHeadPitches +c net/minecraft/class_1528$class_1529 net/minecraft/entity/boss/WitherEntity$DescendAtHalfHealthGoal +c net/minecraft/class_1527 net/minecraft/entity/boss/dragon/phase/PhaseType + f I field_7079 id + f Ljava/lang/Class; field_7074 phaseClass + f [Lnet/minecraft/class_1527; field_7080 types + f Ljava/lang/String; field_7070 name + f Lnet/minecraft/class_1527; field_7081 SITTING_SCANNING + f Lnet/minecraft/class_1527; field_7077 TAKEOFF + f Lnet/minecraft/class_1527; field_7078 CHARGING_PLAYER + f Lnet/minecraft/class_1527; field_7073 SITTING_ATTACKING + f Lnet/minecraft/class_1527; field_7075 HOVER + f Lnet/minecraft/class_1527; field_7076 STRAFE_PLAYER + f Lnet/minecraft/class_1527; field_7071 LANDING_APPROACH + f Lnet/minecraft/class_1527; field_7072 SITTING_FLAMING + f Lnet/minecraft/class_1527; field_7069 HOLDING_PATTERN + f Lnet/minecraft/class_1527; field_7067 LANDING + f Lnet/minecraft/class_1527; field_7068 DYING + m ()I method_6869 count + m ()Ljava/lang/reflect/Constructor; method_6867 getConstructor + m (Ljava/lang/Class;Ljava/lang/String;)Lnet/minecraft/class_1527; method_6870 register + p 0 phaseClass + p 1 name + m (I)Lnet/minecraft/class_1527; method_6868 getFromId + p 0 id + m (ILjava/lang/Class;Ljava/lang/String;)V + p 2 phaseClass + p 3 name + p 1 id + m ()I method_6871 getTypeId + m (Lnet/minecraft/class_1510;)Lnet/minecraft/class_1521; method_6866 create + p 1 dragon +c net/minecraft/class_1500 net/minecraft/entity/passive/MuleEntity +c net/minecraft/class_2826 net/minecraft/world/chunk/ChunkSection + f S field_12877 nonEmptyBlockCount + f S field_12881 nonEmptyFluidCount + f Lnet/minecraft/class_7522; field_34556 biomeContainer + f S field_12882 randomTickableBlockCount + f Lnet/minecraft/class_2841; field_12878 blockStateContainer + m (Lnet/minecraft/class_2540;)V method_49526 readBiomePacket + p 1 buf + m ()V method_16676 lock + m (Lnet/minecraft/class_11897;)V + p 1 palettesFactory + m ()Z method_38292 isEmpty + m ()Lnet/minecraft/class_2841; method_12265 getBlockStateContainer + m (IIILnet/minecraft/class_2680;Z)Lnet/minecraft/class_2680; method_12256 setBlockState + p 2 y + p 3 z + p 4 state + p 5 lock + p 1 x + m (Lnet/minecraft/class_6780;Lnet/minecraft/class_6544$class_6552;III)V method_38291 populateBiomes + p 4 y + p 5 z + p 2 sampler + p 3 x + p 1 biomeSupplier + m (IIILnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_16675 setBlockState + p 4 state + p 3 z + p 2 y + p 1 x + m ()I method_12260 getPacketSize + m (III)Lnet/minecraft/class_2680; method_12254 getBlockState + p 2 y + p 3 z + p 1 x + m (Lnet/minecraft/class_2826;)V + p 1 section + m ()Z method_12262 hasRandomTicks + m ()Lnet/minecraft/class_2826; method_61771 copy + m (Lnet/minecraft/class_2540;)V method_12258 readDataPacket + p 1 buf + m ()Z method_12264 hasRandomFluidTicks + m (Ljava/util/function/Predicate;)Z method_19523 hasAny + p 1 predicate + m ()V method_16677 unlock + m (III)Lnet/minecraft/class_3610; method_12255 getFluidState + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/class_2841;Lnet/minecraft/class_7522;)V + p 1 blockStateContainer + p 2 biomeContainer + m ()V method_12253 calculateCounts + m (Lnet/minecraft/class_2540;)V method_12257 toPacket + p 1 buf + m ()Z method_12263 hasRandomBlockTicks + m (III)Lnet/minecraft/class_6880; method_38293 getBiome + p 2 y + p 1 x + p 3 z + m ()Lnet/minecraft/class_7522; method_38294 getBiomeContainer +c net/minecraft/class_2826$class_6869 net/minecraft/world/chunk/ChunkSection$BlockStateCounter + f I field_36409 randomTickableBlockCount + f I field_36408 nonEmptyBlockCount + f I field_36410 nonEmptyFluidCount + m (Lnet/minecraft/class_2680;I)V method_40155 accept +c net/minecraft/class_2827 net/minecraft/network/packet/c2s/common/KeepAliveC2SPacket + f Lnet/minecraft/class_9139; field_48647 CODEC + f J field_12883 id + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (J)V + p 1 id + m ()J method_12267 getId + m (Lnet/minecraft/class_8706;)V method_12266 apply + m (Lnet/minecraft/class_2540;)V method_56476 write + p 1 buf +c net/minecraft/class_2828 net/minecraft/network/packet/c2s/play/PlayerMoveC2SPacket + f I field_52337 CHANGE_LOOK_FLAG + f Z field_29179 onGround + f D field_12886 y + f D field_12884 z + f I field_52336 CHANGE_POSITION_FLAG + f Z field_12888 changeLook + f D field_12889 x + f Z field_12890 changePosition + f F field_12887 yaw + f Z field_52335 horizontalCollision + f F field_12885 pitch + m (D)D method_12268 getY + p 1 currentY + m ()Z method_36172 changesLook + m ()Z method_61225 horizontalCollision + m (D)D method_12274 getZ + p 1 currentZ + m (F)F method_12270 getPitch + p 1 currentPitch + m (I)Z method_61224 changeLook + p 0 flag + m (Lnet/minecraft/class_2792;)V method_12272 apply + m (D)D method_12269 getX + p 1 currentX + m ()Z method_12273 isOnGround + m ()Z method_36171 changesPosition + m (F)F method_12271 getYaw + p 1 currentYaw + m (DDDFFZZZZ)V + p 12 changeLook + p 11 changePosition + p 8 pitch + p 7 yaw + p 10 horizontalCollision + p 9 onGround + p 3 y + p 5 z + p 1 x + m (I)Z method_61222 changePosition + p 0 flag + m (ZZ)I method_61223 toFlag + p 1 changeLook + p 0 changePosition +c net/minecraft/class_2828$class_2831 net/minecraft/network/packet/c2s/play/PlayerMoveC2SPacket$LookAndOnGround + f Lnet/minecraft/class_9139; field_48200 CODEC + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2828$class_2831; method_34223 read + p 0 buf + m (FFZZ)V + p 2 pitch + p 3 onGround + p 4 horizontalCollision + p 1 yaw + m (Lnet/minecraft/class_2540;)V method_55981 write + p 1 buf +c net/minecraft/class_2828$class_2830 net/minecraft/network/packet/c2s/play/PlayerMoveC2SPacket$Full + f Lnet/minecraft/class_9139; field_48199 CODEC + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2828$class_2830; method_34222 read + p 0 buf + m (Lnet/minecraft/class_2540;)V method_55980 write + p 1 buf + m (DDDFFZZ)V + p 7 yaw + p 8 pitch + p 9 onGround + p 10 horizontalCollision + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/class_243;FFZZ)V + p 2 yaw + p 3 pitch + p 4 onGround + p 5 horizontalCollision + p 1 pos +c net/minecraft/class_2828$class_2829 net/minecraft/network/packet/c2s/play/PlayerMoveC2SPacket$PositionAndOnGround + f Lnet/minecraft/class_9139; field_48198 CODEC + m (DDDZZ)V + p 3 y + p 1 x + p 7 onGround + p 8 horizontalCollision + p 5 z + m (Lnet/minecraft/class_243;ZZ)V + p 3 horizontalCollision + p 2 onGround + p 1 pos + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2828$class_2829; method_34221 read + p 0 buf + m (Lnet/minecraft/class_2540;)V method_55979 write + p 1 buf +c net/minecraft/class_2828$class_5911 net/minecraft/network/packet/c2s/play/PlayerMoveC2SPacket$OnGroundOnly + f Lnet/minecraft/class_9139; field_48201 CODEC + m (Lnet/minecraft/class_2540;)V method_55982 write + p 1 buf + m (ZZ)V + p 2 horizontalCollision + p 1 onGround + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2828$class_5911; method_34224 read + p 0 buf +c net/minecraft/class_2821 net/minecraft/world/chunk/WrapperProtoChunk + c Represents a chunk that wraps a world chunk, used in world generation.\nThis is usually read-only. + f Lnet/minecraft/class_2818; field_12866 wrapped + f Z field_34554 propagateToWrapped + m ()Lnet/minecraft/class_2818; method_12240 getWrappedChunk + m (Lnet/minecraft/class_2818;Z)V + p 1 wrapped + p 2 propagateToWrapped + m (Lnet/minecraft/class_2902$class_2903;)Lnet/minecraft/class_2902$class_2903; method_12239 transformHeightmapType + p 1 type +c net/minecraft/class_11882 net/minecraft/text/NbtDataSourceTypes + f Lnet/minecraft/class_5699$class_10388; field_62497 ID_MAPPER + f Lcom/mojang/serialization/MapCodec; field_62496 CODEC +c net/minecraft/class_10550 net/minecraft/network/OpaqueByteBufHolder + c A holder of {@link ByteBuf}. This is used in local connection to skip\nunnecessary operations that check {@code instanceof ByteBuf}. + f Lio/netty/buffer/ByteBuf; comp_3473 contents + m ()Lnet/minecraft/class_10550; method_65938 touch + m (I)Lio/netty/util/ReferenceCounted; retain retain + p 1 count + m (Ljava/lang/Object;)Lnet/minecraft/class_10550; method_65940 touch + m (Lio/netty/buffer/ByteBuf;)V + p 1 buf + m (I)Lnet/minecraft/class_10550; method_65936 retain + m (I)Z release release + p 1 count + m (Ljava/lang/Object;)Lio/netty/util/ReferenceCounted; touch touch + p 1 object + m (Ljava/lang/Object;)Ljava/lang/Object; method_65939 unpack + p 0 holder + m ()Lnet/minecraft/class_10550; method_65935 retain + m (Ljava/lang/Object;)Ljava/lang/Object; method_65937 pack + p 0 buf + m ()Lio/netty/buffer/ByteBuf; comp_3473 contents +c net/minecraft/class_2822 net/minecraft/network/packet/c2s/play/QueryEntityNbtC2SPacket + f I field_12868 transactionId + f I field_12867 entityId + f Lnet/minecraft/class_9139; field_48194 CODEC + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()I method_12244 getEntityId + m (Lnet/minecraft/class_2540;)V method_55975 write + p 1 buf + m ()I method_12245 getTransactionId + m (II)V + p 1 transactionId + p 2 entityId + m (Lnet/minecraft/class_2792;)V method_12243 apply +c net/minecraft/class_10551 net/minecraft/network/handler/LocalBufUnpacker + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V channelRead channelRead + p 2 buf + p 1 context +c net/minecraft/class_2823 net/minecraft/world/chunk/ChunkProvider + m (Lnet/minecraft/class_1944;Lnet/minecraft/class_4076;)V method_12247 onLightUpdate + p 2 pos + p 1 type + m ()Lnet/minecraft/class_1922; method_16399 getWorld + m (II)Lnet/minecraft/class_8527; method_12246 getChunk + p 2 chunkZ + p 1 chunkX +c net/minecraft/class_2824 net/minecraft/network/packet/c2s/play/PlayerInteractEntityC2SPacket + f I field_12870 entityId + f Z field_25660 playerSneaking + f Lnet/minecraft/class_2824$class_5906; field_29170 ATTACK + f Lnet/minecraft/class_2824$class_5906; field_12871 type + f Lnet/minecraft/class_9139; field_48195 CODEC + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_1297;ZLnet/minecraft/class_1268;Lnet/minecraft/class_243;)Lnet/minecraft/class_2824; method_34208 interactAt + p 0 entity + p 1 playerSneaking + p 2 hand + p 3 pos + m (Lnet/minecraft/class_1297;ZLnet/minecraft/class_1268;)Lnet/minecraft/class_2824; method_34207 interact + p 0 entity + p 1 playerSneaking + p 2 hand + m (Lnet/minecraft/class_2540;)V method_55976 write + p 1 buf + m (Lnet/minecraft/class_1297;Z)Lnet/minecraft/class_2824; method_34206 attack + p 0 entity + p 1 playerSneaking + m (IZLnet/minecraft/class_2824$class_5906;)V + p 1 entityId + p 2 playerSneaking + p 3 type + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_238;D)Z method_76681 canInteractWithEntityIn + p 2 box + p 1 player + p 3 additionalRange + m (Lnet/minecraft/class_3218;)Lnet/minecraft/class_1297; method_12248 getEntity + p 1 world + m (Lnet/minecraft/class_2792;)V method_12251 apply + m ()Z method_30007 isPlayerSneaking + m (Lnet/minecraft/class_2824$class_5908;)V method_34209 handle + p 1 handler +c net/minecraft/class_2824$class_5909 net/minecraft/network/packet/c2s/play/PlayerInteractEntityC2SPacket$InteractHandler + f Lnet/minecraft/class_1268; field_29176 hand + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_1268;)V + p 1 hand +c net/minecraft/class_2824$class_5908 net/minecraft/network/packet/c2s/play/PlayerInteractEntityC2SPacket$Handler + m (Lnet/minecraft/class_1268;Lnet/minecraft/class_243;)V method_34220 interactAt + p 1 hand + p 2 pos + m ()V method_34218 attack + m (Lnet/minecraft/class_1268;)V method_34219 interact + p 1 hand +c net/minecraft/class_2824$class_5907 net/minecraft/network/packet/c2s/play/PlayerInteractEntityC2SPacket$InteractType + f Ljava/util/function/Function; field_29174 handlerGetter + f Lnet/minecraft/class_2824$class_5907; field_29172 ATTACK + f Lnet/minecraft/class_2824$class_5907; field_29173 INTERACT_AT + f Lnet/minecraft/class_2824$class_5907; field_29171 INTERACT + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2824$class_5906; method_34216 method_34216 + p 0 buf + m (Ljava/lang/String;ILjava/util/function/Function;)V + p 3 handlerGetter +c net/minecraft/class_2824$class_5906 net/minecraft/network/packet/c2s/play/PlayerInteractEntityC2SPacket$InteractTypeHandler + m ()Lnet/minecraft/class_2824$class_5907; method_34211 getType + m (Lnet/minecraft/class_2540;)V method_34212 write + p 1 buf + m (Lnet/minecraft/class_2824$class_5908;)V method_34213 handle + p 1 handler +c net/minecraft/class_2824$class_5910 net/minecraft/network/packet/c2s/play/PlayerInteractEntityC2SPacket$InteractAtHandler + f Lnet/minecraft/class_243; field_29178 pos + f Lnet/minecraft/class_1268; field_29177 hand + m (Lnet/minecraft/class_1268;Lnet/minecraft/class_243;)V + p 2 pos + p 1 hand + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_11886 net/minecraft/unused/packageinfo/PackageInfo11886 +c net/minecraft/class_10554 net/minecraft/datafixer/fix/EntityAttributeBaseFix + f Ljava/util/function/DoubleUnaryOperator; field_55578 fixOperator + f Ljava/lang/String; field_55577 attributeId + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_65960 method_65960 + p 1 attributeDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_65959 method_65959 + p 2 attributesDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_65958 fix + p 1 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/DoubleUnaryOperator;)V + p 5 fixOperator + p 4 attributeId + p 3 entityId + p 2 name + p 1 outputSchema +c net/minecraft/class_11885 net/minecraft/text/object/PlayerTextObjectContents + f Lcom/mojang/serialization/MapCodec; field_62500 CODEC + f Lnet/minecraft/class_9296; comp_4763 player + f Z comp_4764 hat + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_74069 method_74069 + p 0 instance + m (Ljava/lang/String;)Ljava/lang/String; method_74070 method_74070 + p 0 name + m ()Z comp_4764 hat + m ()Lnet/minecraft/class_9296; comp_4763 player + m (Lnet/minecraft/class_9296;Z)V + p 1 player + p 2 hat +c net/minecraft/class_11884 net/minecraft/text/object/TextObjectContentTypes + f Lnet/minecraft/class_5699$class_10388; field_62499 ID_MAPPER + f Lcom/mojang/serialization/MapCodec; field_62498 CODEC +c net/minecraft/class_10552 net/minecraft/network/handler/LocalBufPacker + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Lio/netty/channel/ChannelPromise;)V write write + p 1 context + p 2 buf + p 3 channelPromise +c net/minecraft/class_11883 net/minecraft/unused/packageinfo/PackageInfo11883 +c net/minecraft/class_10553 net/minecraft/datafixer/fix/BlockEntityFurnaceBurnTimeFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_65941 fix + p 1 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 2 blockEntityId + p 1 outputSchema +c net/minecraft/class_11889 net/minecraft/datafixer/schema/Schema4543 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_11888 net/minecraft/datafixer/fix/LegacyWorldBorderFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_74089 method_74089 + p 0 level + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_74088 method_74088 + p 0 typed + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 schema +c net/minecraft/class_11887 net/minecraft/util/function/Object2FloatFunction + m (Ljava/lang/Object;)F applyAsFloat applyAsFloat + p 1 object +c net/minecraft/class_10538 net/minecraft/client/texture/PlayerSkinTextureDownloader + f I field_55532 SKIN_HEIGHT + f I field_55533 OLD_SKIN_HEIGHT + f Lnet/minecraft/class_1060; field_62485 textureManager + f I field_55531 SKIN_WIDTH + f Ljava/util/concurrent/Executor; field_62486 executor + f Ljava/net/Proxy; field_62484 proxy + f Lorg/slf4j/Logger; field_55530 LOGGER + m (Lnet/minecraft/class_1011;IIII)V method_65862 stripColor + p 2 y1 + p 3 x2 + p 4 y2 + p 0 image + p 1 x1 + m (Lnet/minecraft/class_12079$class_12080;Lnet/minecraft/class_1011;)Ljava/util/concurrent/CompletionStage; method_65867 method_65867 + p 2 image + m (Lnet/minecraft/class_1011;IIII)V method_65868 stripAlpha + p 1 x1 + p 0 image + p 3 x2 + p 2 y1 + p 4 y2 + m (Ljava/net/Proxy;Lnet/minecraft/class_1060;Ljava/util/concurrent/Executor;)V + p 3 executor + p 2 textureManager + p 1 proxy + m (Lnet/minecraft/class_12079$class_12081;Lnet/minecraft/class_1011;)Ljava/util/concurrent/CompletableFuture; method_65860 registerTexture + p 2 image + m (Ljava/nio/file/Path;Ljava/lang/String;)Lnet/minecraft/class_1011; method_65865 download + p 2 url + p 1 path + m (Lnet/minecraft/class_2960;Ljava/nio/file/Path;Ljava/lang/String;Z)Ljava/util/concurrent/CompletableFuture; method_65861 downloadAndRegisterTexture + p 1 id + p 3 url + p 4 remap + m (Lnet/minecraft/class_1011;Ljava/lang/String;)Lnet/minecraft/class_1011; method_65863 remapTexture + p 0 image + p 1 uri +c net/minecraft/class_11869 net/minecraft/server/dedicated/management/listener/BlankManagementListener +c net/minecraft/class_10539 net/minecraft/client/texture/TextureContents + f Lnet/minecraft/class_1011; comp_3447 image + f Lnet/minecraft/class_1084; comp_3448 metadata + m ()Z method_65872 blur + m ()Lnet/minecraft/class_10539; method_65870 createMissing + m ()Z method_65873 clamp + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_2960;)Lnet/minecraft/class_10539; method_65871 load + p 1 textureId + p 0 resourceManager + m ()Lnet/minecraft/class_1011; comp_3447 image + m ()Lnet/minecraft/class_1084; comp_3448 metadata + m (Lnet/minecraft/class_1011;Lnet/minecraft/class_1084;)V + p 1 image + p 2 metadata +c net/minecraft/class_2840 net/minecraft/network/packet/c2s/play/CraftRequestC2SPacket + f I comp_3243 syncId + f Z comp_3245 craftAll + f Lnet/minecraft/class_10298; comp_3244 recipeId + f Lnet/minecraft/class_9139; field_48205 CODEC + m ()I comp_3243 syncId + m ()Z comp_3245 craftAll + m ()Lnet/minecraft/class_10298; comp_3244 recipeId + m (Lnet/minecraft/class_2792;)V method_12317 apply + m (ILnet/minecraft/class_10298;Z)V + p 1 syncId + p 2 recipeId + p 3 craftAll +c net/minecraft/class_2841 net/minecraft/world/chunk/PalettedContainer + c A paletted container stores objects in 3D voxels as small integer indices,\ngoverned by "palettes" that map between these objects and indices.\n\n@see Palette + f Lnet/minecraft/class_6563; field_34561 paletteProvider + f Lnet/minecraft/class_5798; field_36300 lockHelper + f Lnet/minecraft/class_2841$class_6561; field_34560 data + m (Lnet/minecraft/class_2841$class_4464;Lit/unimi/dsi/fastutil/ints/Int2IntMap$Entry;)V method_21733 method_21733 + p 2 entry + m ()V method_12334 lock + c Acquires the semaphore on this container, and crashes if it cannot be\nacquired. + m (I)Ljava/lang/Object; method_12331 get + p 1 index + m (Lnet/minecraft/class_6563;Lnet/minecraft/class_11895;Lnet/minecraft/class_6490;Lnet/minecraft/class_2837;)V + p 3 storage + p 4 palette + p 1 paletteProvider + p 2 type + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38296 method_38296 + p 2 instance + m (Ljava/lang/Object;Lnet/minecraft/class_6563;)V + p 2 paletteProvider + p 1 defaultValue + m (Lnet/minecraft/class_2841$class_6561;I)Lnet/minecraft/class_2841$class_6561; method_38297 getCompatibleData + c {@return a compatible data object for the given entry {@code bits} size}\nThis may return a new data object or return {@code previousData} if it\ncan be reused. + p 2 bits + c the number of bits each entry uses + p 1 previousData + c the previous data, may be reused if suitable + m (Lnet/minecraft/class_6563;Lnet/minecraft/class_7522;)Lnet/minecraft/class_7522$class_6562; method_38302 method_38302 + p 1 container + m (IIILjava/lang/Object;)Ljava/lang/Object; method_16678 swapUnsafe + p 1 x + p 2 y + p 3 z + p 4 value + m (Lnet/minecraft/class_6490;Lnet/minecraft/class_2837;Lnet/minecraft/class_2837;)[I method_74156 repack + p 2 newPalette + p 1 oldPalette + p 0 storage + m (Ljava/util/function/Consumer;Lnet/minecraft/class_2837;I)V method_39794 method_39794 + p 2 id + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_6563;Ljava/lang/Object;)Lcom/mojang/serialization/Codec; method_44343 createPalettedContainerCodec + p 2 defaultValue + p 0 entryCodec + p 1 provider + m (Lnet/minecraft/class_2841;)Lnet/minecraft/class_7522; method_44341 method_44341 + p 0 result + m (IIILjava/lang/Object;)V method_35321 set + p 3 z + p 4 value + p 1 x + p 2 y + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_6563;Ljava/lang/Object;)Lcom/mojang/serialization/Codec; method_44347 createReadableContainerCodec + p 0 entryCodec + p 1 provider + p 2 defaultValue + m ()V method_12335 unlock + c Releases the semaphore on this container. + m (Lnet/minecraft/class_2841;)V + p 1 container + m (Lit/unimi/dsi/fastutil/ints/Int2IntOpenHashMap;I)V method_21734 increment + p 1 key + m (ILjava/lang/Object;)V method_12322 set + p 2 value + p 1 index + m (Lnet/minecraft/class_2540;)V method_12326 readPacket + c Reads data from the packet byte buffer into this container. Previous data\nin this container is discarded. + p 1 buf + c the packet byte buffer + m (ILjava/lang/Object;)Ljava/lang/Object; method_12336 swap + p 2 value + p 1 index + m (Lnet/minecraft/class_6563;Lnet/minecraft/class_7522$class_6562;)Lcom/mojang/serialization/DataResult; method_44348 method_44348 + p 0 paletteProvider + p 1 serialized + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_6563;Ljava/lang/Object;Lnet/minecraft/class_7522$class_7523;)Lcom/mojang/serialization/Codec; method_38298 createCodec + c Creates a codec for a paletted container with a specific palette provider.\n\n@return the created codec + p 0 entryCodec + p 1 provider + p 2 defaultValue + p 3 reader + m (Lnet/minecraft/class_7522$class_7523;Lnet/minecraft/class_6563;Lnet/minecraft/class_7522$class_6562;)Lcom/mojang/serialization/DataResult; method_44342 method_44342 + p 2 serialized + m (Lnet/minecraft/class_6563;Lnet/minecraft/class_7522$class_6562;)Lcom/mojang/serialization/DataResult; method_44346 read + p 1 serialized + p 0 provider + m (IIILjava/lang/Object;)Ljava/lang/Object; method_12328 swap + p 1 x + p 2 y + p 3 z + p 4 value +c net/minecraft/class_2841$class_6561 net/minecraft/world/chunk/PalettedContainer$Data + c Runtime representation of data in a paletted container. + f Lnet/minecraft/class_11895; comp_74 configuration + c the data provider that derives the palette and storage of this data + f Lnet/minecraft/class_2837; comp_119 palette + c the palette for the storage + f Lnet/minecraft/class_6490; comp_118 storage + c the data + m (Lnet/minecraft/class_2359;)I method_38306 getPacketSize + c {@return the size of this data, in bytes, when written to a packet}\n\n@see #writePacket(PacketByteBuf) + p 1 idList + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_2359;)V method_38309 writePacket + p 1 buf + p 2 idList + m (Lnet/minecraft/class_11895;Lnet/minecraft/class_6490;Lnet/minecraft/class_2837;)V + p 2 storage + p 3 palette + p 1 configuration + m ()Lnet/minecraft/class_11895; comp_74 configuration + m ()Lnet/minecraft/class_2837; comp_119 palette + m (Lnet/minecraft/class_2837;Lnet/minecraft/class_6490;)V method_38308 importFrom + c Imports the data from the other {@code storage} with the other\n{@code palette}. + p 2 storage + p 1 palette + m ()Lnet/minecraft/class_2841$class_6561; method_44338 copy + m ()Lnet/minecraft/class_6490; comp_118 storage +c net/minecraft/class_2841$class_4464 net/minecraft/world/chunk/PalettedContainer$Counter + c A counter that receives a palette entry and its number of occurrences\nin the container. + m (Ljava/lang/Object;I)V accept accept + p 2 count + c the entry's number of occurrence + p 1 object + c the palette entry +c net/minecraft/class_2842 net/minecraft/network/packet/c2s/play/UpdatePlayerAbilitiesC2SPacket + f Z field_12948 flying + f I field_33362 FLYING_MASK + f Lnet/minecraft/class_9139; field_48206 CODEC + m ()Z method_12346 isFlying + m (Lnet/minecraft/class_2540;)V method_55987 write + p 1 buf + m (Lnet/minecraft/class_2792;)V method_12339 apply + m (Lnet/minecraft/class_1656;)V + p 1 abilities + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_1511 net/minecraft/entity/decoration/EndCrystalEntity + f I field_7034 endCrystalAge + f Lnet/minecraft/class_2940; field_7033 BEAM_TARGET + f Z field_57641 DEFAULT_SHOW_BOTTOM + f Lnet/minecraft/class_2940; field_7035 SHOW_BOTTOM + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;)V method_6835 crystalDestroyed + p 2 source + p 1 world + m (Lnet/minecraft/class_2338;)V method_6837 setBeamTarget + p 1 beamTarget + m ()Lnet/minecraft/class_2338; method_6838 getBeamTarget + m (Lnet/minecraft/class_1937;DDD)V + p 6 z + p 1 world + p 2 x + p 4 y + m ()Z method_6836 shouldShowBottom + m (Z)V method_6839 setShowBottom + p 1 showBottom +c net/minecraft/class_1510 net/minecraft/entity/boss/dragon/EnderDragonEntity + f Lnet/minecraft/class_1526; field_7028 phaseManager + f Lnet/minecraft/class_1508; field_7014 leftWing + f Lorg/slf4j/Logger; field_7021 LOGGER + f Lnet/minecraft/class_1508; field_7022 tail3 + f [I field_7025 pathNodeConnections + c An array of 24 bitflags, where node #i leads to #j if and only if\n{@code (pathNodeConnections[i] & (1 << j)) != 0}. + f Lnet/minecraft/class_2881; field_7016 fight + f I field_57642 DEFAULT_TICKS_SINCE_DEATH + f Lnet/minecraft/class_1508; field_7011 neck + f I field_30428 MAX_HEALTH + f Lnet/minecraft/class_1508; field_7023 body + f Lnet/minecraft/class_1508; field_7015 rightWing + f F field_7019 lastWingPosition + f Lnet/minecraft/class_1511; field_7024 connectedCrystal + f F field_7030 wingPosition + f [Lnet/minecraft/class_1508; field_7032 parts + f I field_7018 ticksUntilNextGrowl + f Ljava/lang/String; field_33911 DRAGON_PHASE_KEY + f [Lnet/minecraft/class_9; field_7012 pathNodes + c The first 12 path nodes are used for end crystals; the others are not tied to them. + f Lnet/minecraft/class_1508; field_7020 tail1 + f Z field_7027 slowedDownByBlock + f I field_7031 ticksSinceDeath + f Lnet/minecraft/class_1508; field_7009 tail2 + f Ljava/lang/String; field_33910 DRAGON_DEATH_TIME_KEY + f Lnet/minecraft/class_9871; field_52493 frameTracker + f Lnet/minecraft/class_1508; field_7017 head + f F field_7029 damageDuringSitting + f Lnet/minecraft/class_2338; field_44875 fightOrigin + f Lnet/minecraft/class_4051; field_18120 CLOSE_PLAYER_PREDICATE + f Lnet/minecraft/class_5; field_7008 pathHeap + f F field_20865 yawAcceleration + f F field_30430 TAKEOFF_THRESHOLD + c The damage the dragon can take before it takes off, represented as a ratio to the full health. + f Lnet/minecraft/class_2940; field_7013 PHASE_TYPE + m (Lnet/minecraft/class_3218;Ljava/util/List;)V method_6827 damageLivingEntities + p 1 world + p 2 entities + m ()F method_6820 getHeadVerticalMovement + m (Lnet/minecraft/class_2338;)V method_51853 setFightOrigin + p 1 fightOrigin + m (Lnet/minecraft/class_9;Lnet/minecraft/class_9;)Lnet/minecraft/class_11; method_6826 getPathOfAllPredecessors + p 2 node + p 1 unused + m (IILnet/minecraft/class_9;)Lnet/minecraft/class_11; method_6833 findPath + p 1 from + p 2 to + p 3 pathNode + m (Lnet/minecraft/class_2881;)V method_51852 setFight + p 1 fight + m (D)F method_6832 wrapYawChange + p 1 yawDegrees + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1508;Lnet/minecraft/class_1282;F)Z method_6816 damagePart + p 3 source + p 2 part + p 4 amount + p 1 world + m ()Lnet/minecraft/class_1526; method_6831 getPhaseManager + m (F)Lnet/minecraft/class_243; method_6834 getRotationVectorFromPhase + p 1 tickProgress + m ()Lnet/minecraft/class_5132$class_5133; method_26903 createEnderDragonAttributes + m ()Lnet/minecraft/class_2338; method_51854 getFightOrigin + m (Lnet/minecraft/class_3218;Ljava/util/List;)V method_6825 launchLivingEntities + p 2 entities + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1511;Lnet/minecraft/class_2338;Lnet/minecraft/class_1282;)V method_6828 crystalDestroyed + p 1 world + p 2 crystal + p 3 pos + p 4 source + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_238;)Z method_6821 destroyBlocks + p 2 box + p 1 world + m ()Lnet/minecraft/class_2881; method_6829 getFight + m (Lnet/minecraft/class_1508;DDD)V method_22863 movePart + p 2 dx + p 1 enderDragonPart + p 4 dy + p 6 dz + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;F)V method_6819 parentDamage + p 2 source + p 1 world + p 3 amount + m (DDD)I method_6822 getNearestPathNodeIndex + p 1 x + p 5 z + p 3 y + m ()V method_6830 tickWithEndCrystals + c Things to do every tick related to end crystals. The Ender Dragon:\n\n* Disconnects from its crystal if it is removed\n* If it is connected to a crystal, then heals every 10 ticks\n* With a 1 in 10 chance each tick, searches for the nearest crystal and connects to it if present + m (Ljava/lang/Integer;)V method_68271 method_68271 + p 1 phase + m ()I method_6818 getNearestPathNodeIndex + m ()[Lnet/minecraft/class_1508; method_5690 getBodyParts +c net/minecraft/class_2836 net/minecraft/network/packet/c2s/play/BoatPaddleStateC2SPacket + f Z field_12907 leftPaddling + f Lnet/minecraft/class_9139; field_48203 CODEC + f Z field_12906 rightPaddling + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2792;)V method_12283 apply + m ()Z method_12284 isLeftPaddling + m (ZZ)V + p 1 leftPaddling + p 2 rightPaddling + m ()Z method_12285 isRightPaddling + m (Lnet/minecraft/class_2540;)V method_55984 write + p 1 buf +c net/minecraft/class_2837 net/minecraft/world/chunk/Palette + c A palette maps objects from and to small integer IDs that uses less\nnumber of bits to make storage smaller.\n\n

While the objects palettes handle are already represented by integer\nIDs, shrinking IDs in cases where only a few appear can further reduce\nstorage space and network traffic volume.\n\n@see PalettedContainer + m ()Lnet/minecraft/class_2837; method_39956 copy + m (Lnet/minecraft/class_2359;)I method_12290 getPacketSize + c {@return the serialized size of this palette in a byte buf, in bytes} + p 1 idList + m (Ljava/lang/Object;Lnet/minecraft/class_2835;)I method_12291 index + c {@return the ID of an object in this palette}\n\n

If the object does not yet exist in this palette, this palette will\nregister the object. If the palette is too small to include this object,\na {@linkplain PaletteResizeListener resize listener} will be called and\nthis palette may be discarded. + p 2 listener + p 1 object + c the object to look up + m (I)Ljava/lang/Object; method_12288 get + c {@return the object associated with the given {@code id}}\n\n@throws EntryMissingException if this ID does not exist in this palette + p 1 id + c the ID to look up + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_2359;)V method_12287 writePacket + c Writes this palette to the {@code buf}. + p 1 buf + c the packet byte buffer + p 2 idList + m ()I method_12197 getSize + c {@return the size of the palette} + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_2359;)V method_12289 readPacket + c Initializes this palette from the {@code buf}. Clears the preexisting\ndata in this palette. + p 1 buf + c the packet byte buffer + p 2 idList + m (Ljava/util/function/Predicate;)Z method_19525 hasAny + c {@return {@code true} if any entry in this palette passes the {@code\npredicate}} + p 1 predicate +c net/minecraft/class_2837$class_6559 net/minecraft/world/chunk/Palette$Factory + c An interface for easy creation of palettes. + m (ILjava/util/List;)Lnet/minecraft/class_2837; create create + c Creates a palette.\n\n@return the created new palette + p 1 bits + c the number of bits each entry uses in the storage + p 2 values +c net/minecraft/class_2839 net/minecraft/world/chunk/ProtoChunk + f Lorg/slf4j/Logger; field_60377 LOGGER + f Lnet/minecraft/class_6746; field_35473 belowZeroRetrogen + f Lnet/minecraft/class_4296; field_35475 fluidTickScheduler + f Ljava/util/List; field_12929 entities + f Lnet/minecraft/class_3568; field_17105 lightingProvider + f Lnet/minecraft/class_2806; field_12918 status + f Lnet/minecraft/class_4296; field_35474 blockTickScheduler + f Lnet/minecraft/class_6643; field_12926 carvingMask + m ()Ljava/util/Map; method_12316 getBlockEntityNbts + m ()Lnet/minecraft/class_6643; method_28510 getOrCreateCarvingMask + m (Lnet/minecraft/class_2338;)S method_12300 getPackedSectionRelative + p 0 pos + m ()Lnet/minecraft/class_6755; method_39308 getFluidProtoTickScheduler + m (Lnet/minecraft/class_2487;)V method_12302 addEntity + p 1 entityNbt + m (SILnet/minecraft/class_1923;)Lnet/minecraft/class_2338; method_12314 joinBlockPos + p 1 sectionY + p 2 chunkPos + p 0 sectionRel + m (Lnet/minecraft/class_6643;)V method_12307 setCarvingMask + p 1 carvingMask + m (Lnet/minecraft/class_2806;)V method_12308 setStatus + p 1 status + m ()Lnet/minecraft/class_6643; method_12025 getCarvingMask + m (Lnet/minecraft/class_3568;)V method_17032 setLightingProvider + p 1 lightingProvider + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_2843;Lnet/minecraft/class_5539;Lnet/minecraft/class_11897;Lnet/minecraft/class_6749;)V + p 1 pos + p 2 upgradeData + p 5 blendingData + p 3 world + p 4 palettesFactory + m ()Ljava/util/Map; method_12309 getBlockEntities + m ()Ljava/util/List; method_12295 getEntities + m ()Lnet/minecraft/class_6755; method_39307 getBlockProtoTickScheduler + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_2843;[Lnet/minecraft/class_2826;Lnet/minecraft/class_4296;Lnet/minecraft/class_4296;Lnet/minecraft/class_5539;Lnet/minecraft/class_11897;Lnet/minecraft/class_6749;)V + p 1 pos + p 3 sections + p 2 upgradeData + p 5 fluidTickScheduler + p 4 blockTickScheduler + p 7 palettesFactory + p 6 world + p 8 blendingData + m (Lnet/minecraft/class_4296;)Lnet/minecraft/class_6755; method_39310 createProtoTickScheduler + p 0 tickScheduler + m (Lnet/minecraft/class_6746;)V method_39309 setBelowZeroRetrogen + p 1 belowZeroRetrogen +c net/minecraft/class_1501 net/minecraft/entity/passive/LlamaEntity + f Z field_6999 spit + f Lnet/minecraft/class_2940; field_6996 VARIANT + f Lnet/minecraft/class_2940; field_6998 STRENGTH + f Lnet/minecraft/class_4048; field_47808 BABY_BASE_DIMENSIONS + f Lnet/minecraft/class_1501; field_7000 following + f Lnet/minecraft/class_1501; field_6997 follower + f I field_30425 MAX_STRENGTH + m (Lnet/minecraft/class_1799;)Z method_58393 method_58393 + p 0 stack + m ()Lnet/minecraft/class_1501$class_7993; method_6809 getVariant + m ()Z method_6793 hasFollower + m ()I method_6803 getStrength + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_1501; method_6804 createChild + m ()Lnet/minecraft/class_1501; method_6806 getFollowing + m ()Z method_6807 isTrader + m ()Z method_6805 isFollowing + m (I)V method_6802 setStrength + p 1 strength + m (Lnet/minecraft/class_1309;)V method_6792 spitAt + p 1 target + m ()Lnet/minecraft/class_1501; method_18004 createChild + m (Lnet/minecraft/class_1501$class_7993;)V method_47874 setVariant + p 1 variant + m (Lnet/minecraft/class_5819;)V method_6796 initializeStrength + p 1 random + m ()Lnet/minecraft/class_5132$class_5133; method_26900 createLlamaAttributes + m (Lnet/minecraft/class_1501;)V method_6791 follow + p 1 llama + m (Z)V method_6808 setSpit + p 1 spit + m ()V method_6797 stopFollowing +c net/minecraft/class_1501$class_1502 net/minecraft/entity/passive/LlamaEntity$ChaseWolvesGoal + m (Lnet/minecraft/class_1501;)V + p 1 llama + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_18446 method_18446 + p 0 wolf + p 1 world +c net/minecraft/class_1501$class_1503 net/minecraft/entity/passive/LlamaEntity$LlamaData + f Lnet/minecraft/class_1501$class_7993; field_7001 variant + m (Lnet/minecraft/class_1501$class_7993;)V + p 1 variant +c net/minecraft/class_1501$class_1504 net/minecraft/entity/passive/LlamaEntity$SpitRevengeGoal + m (Lnet/minecraft/class_1501;)V + p 1 llama +c net/minecraft/class_1501$class_7993 net/minecraft/entity/passive/LlamaEntity$Variant + f Lcom/mojang/serialization/Codec; field_41590 CODEC + f Lnet/minecraft/class_1501$class_7993; field_57635 DEFAULT + f Ljava/lang/String; field_41593 id + f Lnet/minecraft/class_9139; field_55971 PACKET_CODEC + f Ljava/util/function/IntFunction; field_41591 INDEX_MAPPER + f I field_41592 index + f Lcom/mojang/serialization/Codec; field_56660 INDEX_CODEC + f Lnet/minecraft/class_1501$class_7993; field_41586 CREAMY + f Lnet/minecraft/class_1501$class_7993; field_41588 BROWN + f Lnet/minecraft/class_1501$class_7993; field_41587 WHITE + f Lnet/minecraft/class_1501$class_7993; field_41589 GRAY + m (Ljava/lang/String;IILjava/lang/String;)V + p 4 id + p 3 index + m ()I method_47875 getIndex + m (I)Lnet/minecraft/class_1501$class_7993; method_47876 byIndex + p 0 index +c net/minecraft/class_11871 net/minecraft/server/dedicated/management/listener/ManagementListener + m (Lnet/minecraft/class_3222;)V method_73661 onPlayerJoined + p 1 player + m ()V method_74998 onServerActivity + m ()V method_73672 onServerSaving + m ()V method_73674 onServerSaved + m ()V method_73675 onServerStatusHeartbeat + m (Lnet/minecraft/class_11560;)V method_73673 onBanRemoved + p 1 player + m (Lnet/minecraft/class_3320;)V method_73662 onIpBanAdded + p 1 entry + m (Lnet/minecraft/class_11560;)V method_73663 onAllowlistAdded + p 1 player + m ()V method_73656 onServerStarted + m (Lnet/minecraft/class_3336;)V method_73665 onBanAdded + p 1 entry + m ()V method_73668 onServerStopping + m (Lnet/minecraft/class_3327;)V method_73664 onOperatorAdded + p 1 operator + m (Lnet/minecraft/class_11560;)V method_73670 onAllowlistRemoved + p 1 player + m (Ljava/lang/String;)V method_73666 onIpBanRemoved + p 1 string + m (Lnet/minecraft/class_3327;)V method_73671 onOperatorRemoved + p 1 operator + m (Lnet/minecraft/class_3222;)V method_73669 onPlayerLeft + p 1 player + m (Lnet/minecraft/class_12279;Ljava/lang/Object;)V method_73667 onGameRuleUpdated + p 1 rule + p 2 value +c net/minecraft/class_1508 net/minecraft/entity/boss/dragon/EnderDragonPart + f Lnet/minecraft/class_1510; field_7007 owner + f Ljava/lang/String; field_7006 name + f Lnet/minecraft/class_4048; field_18119 partDimensions + m (Lnet/minecraft/class_1510;Ljava/lang/String;FF)V + p 1 owner + p 2 name + p 3 width + p 4 height +c net/minecraft/class_11870 net/minecraft/server/dedicated/management/listener/CompositeManagementListener + f Ljava/util/List; field_62417 listeners + m (Lnet/minecraft/class_11871;)V method_73987 addListener + p 1 listener + m (Ljava/lang/String;Lnet/minecraft/class_11871;)V method_73992 method_73992 + p 1 listener + m (Lnet/minecraft/class_12279;Ljava/lang/Object;Lnet/minecraft/class_11871;)V method_73993 method_73993 + p 2 listener + m (Lnet/minecraft/class_3320;Lnet/minecraft/class_11871;)V method_73988 method_73988 + p 1 listener + m (Lnet/minecraft/class_3327;Lnet/minecraft/class_11871;)V method_73996 method_73996 + p 1 listener + m (Lnet/minecraft/class_11560;Lnet/minecraft/class_11871;)V method_73995 method_73995 + p 1 listener + m (Lnet/minecraft/class_11560;Lnet/minecraft/class_11871;)V method_73997 method_73997 + p 1 listener + m (Lnet/minecraft/class_11560;Lnet/minecraft/class_11871;)V method_73989 method_73989 + p 1 listener + m (Lnet/minecraft/class_3327;Lnet/minecraft/class_11871;)V method_73990 method_73990 + p 1 listener + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_11871;)V method_73986 method_73986 + p 1 listener + m (Lnet/minecraft/class_3336;Lnet/minecraft/class_11871;)V method_73991 method_73991 + p 1 listener + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_11871;)V method_73994 method_73994 + p 1 listener +c net/minecraft/class_2833 net/minecraft/network/packet/c2s/play/VehicleMoveC2SPacket + f Lnet/minecraft/class_9139; field_48202 CODEC + f F comp_3352 pitch + f F comp_3351 yaw + f Z comp_3353 onGround + f Lnet/minecraft/class_243; comp_3350 position + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_2833; method_65307 fromVehicle + p 0 vehicle + m (Lnet/minecraft/class_2792;)V method_12278 apply + m ()F comp_3352 pitch + m ()F comp_3351 yaw + m ()Lnet/minecraft/class_243; comp_3350 position + m ()Z comp_3353 onGround + m (Lnet/minecraft/class_243;FFZ)V + p 1 position + p 2 yaw + p 3 pitch + p 4 onGround +c net/minecraft/class_1507 net/minecraft/entity/mob/ZombieHorseEntity + f Lnet/minecraft/class_4048; field_47810 BABY_BASE_DIMENSIONS + m ()Lnet/minecraft/class_5132$class_5133; method_26902 createZombieHorseAttributes + m (Ljava/util/function/DoubleSupplier;)D method_75149 getBaseMovementSpeed + p 0 randomSupplier + m (Ljava/util/function/DoubleSupplier;)D method_75148 getBaseJumpStrength + p 0 randomSupplier + m (Lnet/minecraft/class_1799;)Z method_75150 method_75150 + p 0 stack +c net/minecraft/class_2834 net/minecraft/world/chunk/ArrayPalette + c A palette that stores the possible entries in an array and maps them\nto their indices in the array. + f I field_12903 indexBits + f I field_12901 size + f [Ljava/lang/Object; field_12904 array + m (ILjava/util/List;)V + p 2 values + p 1 indexBits + m ([Ljava/lang/Object;II)V + p 2 indexBits + p 1 array + p 3 size + m (ILjava/util/List;)Lnet/minecraft/class_2837; method_38295 create + p 0 bits + p 1 values +c net/minecraft/class_1506 net/minecraft/entity/mob/SkeletonHorseEntity + f I field_7004 trapTime + f Z field_7005 trapped + f I field_57637 DEFAULT_TRAP_TIME + f Z field_57636 DEFAULT_TRAPPED + f Lnet/minecraft/class_4048; field_47809 BABY_BASE_DIMENSIONS + f Lnet/minecraft/class_1505; field_7003 trapTriggerGoal + f I field_30427 DESPAWN_AGE + m ()Z method_6812 isTrapped + m ()Lnet/minecraft/class_5132$class_5133; method_26901 createSkeletonHorseAttributes + m (Z)V method_6813 setTrapped + p 1 trapped + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_55001 canSpawn + p 1 world + p 0 type + p 3 pos + p 2 reason + p 4 random +c net/minecraft/class_2835 net/minecraft/world/chunk/PaletteResizeListener + c A listener for when a palette requires more bits to hold a newly indexed\nobject. A no-op listener may be used if the palette does not have to\nresize.\n\n@see Palette#index(Object) + m (ILjava/lang/Object;)I method_74154 method_74154 + p 1 object + p 0 newBits + m (ILjava/lang/Object;)I onResize onResize + c Callback for a palette's request to resize to at least {@code newBits}\nfor each entry and to update the storage correspondingly in order to\naccommodate the new object. After the resize is completed in this method,\nreturns the ID assigned to the {@code object} in the updated palette.\n\n@return the ID for the {@code object} in the (possibly new) palette + p 2 object + p 1 newBits + m ()Lnet/minecraft/class_2835; method_74153 throwing +c net/minecraft/class_1505 net/minecraft/entity/ai/goal/SkeletonHorseTrapTriggerGoal + f Lnet/minecraft/class_1506; field_7002 skeletonHorse + m (Lnet/minecraft/class_1506;)V + p 1 skeletonHorse + m (Lnet/minecraft/class_1613;Lnet/minecraft/class_1304;Lnet/minecraft/class_1266;)V method_59939 enchantEquipment + p 3 localDifficulty + p 1 rider + p 2 slot + m (Lnet/minecraft/class_1266;)Lnet/minecraft/class_1496; method_6810 getHorse + p 1 localDifficulty + m (Lnet/minecraft/class_1266;Lnet/minecraft/class_1496;)Lnet/minecraft/class_1613; method_6811 getSkeleton + p 1 localDifficulty + p 2 vehicle +c net/minecraft/class_11875 net/minecraft/client/gui/cursor/Cursor + f J field_62451 handle + f Ljava/lang/String; field_62450 name + f Lnet/minecraft/class_11875; field_62449 DEFAULT + m (Ljava/lang/String;J)V + p 1 name + p 2 handle + m (ILjava/lang/String;Lnet/minecraft/class_11875;)Lnet/minecraft/class_11875; method_74031 createStandard + p 0 handle + p 1 name + p 2 fallback + m (Lnet/minecraft/class_1041;)V method_74032 applyTo + p 1 window +c net/minecraft/class_10544 net/minecraft/client/render/item/model/EmptyItemModel + f Lnet/minecraft/class_10439; field_55551 INSTANCE +c net/minecraft/class_10544$class_10545 net/minecraft/client/render/item/model/EmptyItemModel$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55552 CODEC +c net/minecraft/class_11873 net/minecraft/datafixer/fix/AddFieldFix + f [Ljava/lang/String; field_62425 copiedFields + f Ljava/util/function/Function; field_62426 defaultValueGetter + f Lcom/mojang/datafixers/DSL$TypeReference; field_62423 typeReference + f Ljava/lang/String; field_62424 fieldName + f Ljava/lang/String; field_62422 description + m (Lcom/mojang/datafixers/schemas/Schema;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Ljava/util/function/Function;[Ljava/lang/String;)V + p 1 outputSchema + p 2 typeReference + p 3 fieldName + p 4 defaultValueGetter + p 5 copiedFields + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_74013 method_74013 + p 1 typed + m (Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; method_74015 fix + p 2 index + p 1 value + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_74014 method_74014 + p 1 value +c net/minecraft/class_10541 net/minecraft/client/render/item/tint/TeamTintSource + f Lcom/mojang/serialization/MapCodec; field_55547 CODEC + f I comp_3461 defaultColor + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65908 method_65908 + p 0 instance + m ()I comp_3461 defaultColor + m (I)V + p 1 defaultColor +c net/minecraft/class_11872 net/minecraft/unused/packageinfo/PackageInfo11872 +c net/minecraft/class_11879 net/minecraft/client/font/PlayerHeadGlyphs + f Lcom/google/common/cache/LoadingCache; field_62472 fetchingCache + f Lnet/minecraft/class_11786; field_62471 playerSkinCache + f Lnet/minecraft/class_379; field_62470 EMPTY_SPRITE_METRICS + m (Lnet/minecraft/class_11786;)V + p 1 playerSkinCache + m (Lnet/minecraft/class_11719$class_11881;)Lnet/minecraft/class_11603; method_74040 get + p 1 source +c net/minecraft/class_11879$class_11880 net/minecraft/client/font/PlayerHeadGlyphs$HeadGlyph + f F comp_4631 x + f F comp_4632 y + f I comp_4633 color + f I comp_4634 shadowColor + f F comp_4635 shadowOffset + f Ljava/util/function/Supplier; comp_4754 skin + f Z comp_4755 hat + f Lnet/minecraft/class_2583; comp_3317 style + m (Lorg/joml/Matrix4f;Lnet/minecraft/class_4588;IFFFFFIFFIIII)V method_74042 drawInternal + p 1 vertexConsumer + p 0 matrix + p 7 z + p 6 yMax + p 9 regionTop + p 8 color + p 3 xMin + p 2 light + p 5 yMin + p 4 xMax + p 14 textureHeight + p 11 regionWidth + p 10 regionLeft + p 13 textureWidth + p 12 regionHeight + m ()Z comp_4755 hat + m ()Ljava/util/function/Supplier; comp_4754 skin + m (Ljava/util/function/Supplier;ZFFIIFLnet/minecraft/class_2583;)V + p 1 skin + p 2 hat + p 3 x + p 4 y + p 5 color + p 6 shadowColor + p 7 shadowOffset + p 8 style +c net/minecraft/class_11879$1 net/minecraft/client/font/PlayerHeadGlyphs$1 + m (Lnet/minecraft/class_11719$class_11881;)Lnet/minecraft/class_11603; method_74041 load + m (Ljava/lang/Object;)Ljava/lang/Object; load load + p 1 source +c net/minecraft/class_10548 net/minecraft/client/render/item/property/select/ContextDimensionProperty + f Lnet/minecraft/class_10494$class_10495; field_55563 TYPE + f Lcom/mojang/serialization/Codec; field_56369 VALUE_CODEC + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_1309;ILnet/minecraft/class_811;)Lnet/minecraft/class_5321; method_65915 getValue +c net/minecraft/class_11878 net/minecraft/client/font/DrawnSpriteGlyph + m (Lorg/joml/Matrix4f;Lnet/minecraft/class_4588;IFFFI)V method_73402 draw + p 1 matrix + p 2 vertexConsumer + p 7 color + p 3 light + p 4 x + p 5 y + p 6 z + m ()F method_75823 getHeight + m ()F method_75822 getWidth + m ()F method_75824 getAscent + m ()F comp_4635 shadowOffset + m ()I comp_4634 shadowColor + m ()I comp_4633 color + m ()F comp_4632 y + m ()F comp_4631 x +c net/minecraft/class_11877 net/minecraft/unused/packageinfo/PackageInfo11877 +c net/minecraft/class_11876 net/minecraft/client/gui/cursor/StandardCursors + f Lnet/minecraft/class_11875; field_62454 CROSSHAIR + f Lnet/minecraft/class_11875; field_62455 POINTING_HAND + f Lnet/minecraft/class_11875; field_62452 ARROW + f Lnet/minecraft/class_11875; field_62453 IBEAM + f Lnet/minecraft/class_11875; field_62458 RESIZE_ALL + f Lnet/minecraft/class_11875; field_62459 NOT_ALLOWED + f Lnet/minecraft/class_11875; field_62456 RESIZE_NS + f Lnet/minecraft/class_11875; field_62457 RESIZE_EW +c net/minecraft/class_10546 net/minecraft/client/render/item/property/bool/ViewEntityProperty + f Lcom/mojang/serialization/MapCodec; field_55554 CODEC +c com/mojang/blaze3d/platform/GLX com/mojang/blaze3d/platform/GLX + m (Ljava/util/List;IJ)V lambda$_initGlfw$1 lambda$_initGlfw$1 + p 2 pointer + p 1 code + m (Ljava/util/function/Supplier;)Ljava/lang/Object; make make + p 0 factory + m (Lnet/minecraft/class_1041;)Z _shouldClose _shouldClose + p 0 window + m (Ljava/lang/Integer;Ljava/lang/String;)V lambda$_initGlfw$0 lambda$_initGlfw$0 + p 1 message + p 0 code + m (Lorg/lwjgl/glfw/GLFWErrorCallbackI;)V _setGlfwErrorCallback _setGlfwErrorCallback + p 0 callback + m (Ljava/lang/Object;Ljava/util/function/Consumer;)Ljava/lang/Object; make make + p 1 initializer + p 0 object + m (Lnet/minecraft/class_1041;)I _getRefreshRate _getRefreshRate + p 0 window +c net/minecraft/class_2803 net/minecraft/network/packet/c2s/common/ClientOptionsC2SPacket + f Lnet/minecraft/class_9139; field_48645 CODEC + f Lnet/minecraft/class_8791; comp_1963 options + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Lnet/minecraft/class_8791; comp_1963 options + m (Lnet/minecraft/class_8706;)V method_12133 apply + m (Lnet/minecraft/class_2540;)V method_56474 write + p 1 buf + m (Lnet/minecraft/class_8791;)V + p 1 options +c net/minecraft/class_2804 net/minecraft/world/chunk/ChunkNibbleArray + c A chunk nibble array is an array of nibbles for each block position in\na chunk. It is most often used to store light data.\n\n

A {@index nibble} is 4 bits, storing an integer from {@code 0} to\n{@code 15}. It takes half the space of a byte.\n\n

The nibbles are stored in an X-Z-Y major order; in the backing array,\nthe indices increases by first increasing X, then Z, and finally Y. + f I field_31404 COPY_BLOCK_SIZE + f [B field_12783 bytes + f I field_31403 BYTES_LENGTH + f I field_44635 defaultValue + f I field_34052 COPY_TIMES + f I field_31405 NIBBLE_BITS + m ()[B method_12137 asByteArray + m (I)I method_12141 get + p 1 index + m (IIII)V method_12145 set + c Sets the value of a nibble.\n\n

If the {@code value} has bits outside of the lowest 4 set to {@code 1},\n(value is outside of {@code [0, 15]}), the extraneous bits are discarded. + p 4 value + p 2 y + p 3 z + p 1 x + m (I)Z method_51379 isUninitialized + p 1 expectedDefaultValue + m (I)V method_51527 clear + p 1 defaultValue + m (III)I method_12139 get + c {@return the integer value of a nibble, in {@code [0, 15]}} + p 3 z + p 2 y + p 1 x + m (I)I method_37459 occupiesSmallerBits + c {@return if the nibble at {@code n} is stored in the less\nsignificant (smaller) 4 bits of the byte in the backing array} + p 0 i + m ([B)V + p 1 bytes + m (I)Ljava/lang/String; method_35320 bottomToString + c {@return a hexadecimal string representation of the {@code y=0} level of\nthis array}\n\n

It is useful for debugging the grid nibble array. + p 1 unused + c unused + m ()Lnet/minecraft/class_2804; method_12144 copy + m (I)V + p 1 defaultValue + m (III)I method_12140 getIndex + p 2 z + p 1 y + p 0 x + m (II)V method_12142 set + p 1 index + p 2 value + m ()Z method_51380 isArrayUninitialized + m (I)B method_51381 pack + p 0 value + m ()Z method_12146 isUninitialized + m (I)I method_12138 getArrayIndex + p 0 i +c net/minecraft/class_2805 net/minecraft/network/packet/c2s/play/RequestCommandCompletionsC2SPacket + f Lnet/minecraft/class_9139; field_48185 CODEC + f Ljava/lang/String; field_12785 partialCommand + f I field_12784 completionId + m (ILjava/lang/String;)V + p 1 completionId + p 2 partialCommand + m ()Ljava/lang/String; method_12148 getPartialCommand + m (Lnet/minecraft/class_2540;)V method_55969 write + p 1 buf + m ()I method_12149 getCompletionId + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2792;)V method_12147 apply +c net/minecraft/class_2806 net/minecraft/world/chunk/ChunkStatus + f Lcom/mojang/serialization/Codec; field_56676 CODEC + f Lnet/minecraft/class_2808; field_12787 chunkType + f Ljava/util/EnumSet; field_51903 NORMAL_HEIGHTMAP_TYPES + f Ljava/util/EnumSet; field_51904 WORLD_GEN_HEIGHTMAP_TYPES + f Lnet/minecraft/class_2806; field_16647 previous + f Ljava/util/EnumSet; field_12793 heightMapTypes + f I field_16646 index + f Lnet/minecraft/class_2806; field_12786 SPAWN + f Lnet/minecraft/class_2806; field_16422 STRUCTURE_REFERENCES + f Lnet/minecraft/class_2806; field_16423 STRUCTURE_STARTS + f Lnet/minecraft/class_2806; field_12796 SURFACE + f Lnet/minecraft/class_2806; field_12798 EMPTY + f Lnet/minecraft/class_2806; field_12794 BIOMES + f Lnet/minecraft/class_2806; field_12795 FEATURES + f Lnet/minecraft/class_2806; field_12804 NOISE + f Lnet/minecraft/class_2806; field_44633 INITIALIZE_LIGHT + f Lnet/minecraft/class_2806; field_12805 LIGHT + f Lnet/minecraft/class_2806; field_12803 FULL + f Lnet/minecraft/class_2806; field_12801 CARVERS + m (Ljava/lang/String;Lnet/minecraft/class_2806;Ljava/util/EnumSet;Lnet/minecraft/class_2808;)Lnet/minecraft/class_2806; method_60546 register + p 2 heightMapTypes + p 3 chunkType + p 0 id + p 1 previous + m ()Ljava/lang/String; method_60550 getId + m ()Lnet/minecraft/class_2806; method_16560 getPrevious + m (Lnet/minecraft/class_2806;Ljava/util/EnumSet;Lnet/minecraft/class_2808;)V + p 1 previous + p 2 heightMapTypes + p 3 chunkType + m ()Ljava/util/EnumSet; method_12160 getHeightmapTypes + m ()Ljava/util/List; method_16558 createOrderedList + m ()I method_16559 getIndex + m (Lnet/minecraft/class_2806;Lnet/minecraft/class_2806;)Lnet/minecraft/class_2806; method_60545 max + p 1 b + p 0 a + m ()Lnet/minecraft/class_2808; method_12164 getChunkType + m (Ljava/lang/String;)Lnet/minecraft/class_2806; method_12168 byId + p 0 id + m (Lnet/minecraft/class_2806;)Z method_60547 isLaterThan + p 1 other + m (Lnet/minecraft/class_2806;)Z method_60548 isAtMost + p 1 other + m (Lnet/minecraft/class_2806;)Z method_60549 isEarlierThan + p 1 other + m (Lnet/minecraft/class_2806;)Z method_12165 isAtLeast + p 1 other +c net/minecraft/class_10572 net/minecraft/datafixer/schema/Schema1458 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_66146 itemsAndCustomName + p 0 schema + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_66148 customName + p 0 schema +c net/minecraft/class_10573 net/minecraft/datafixer/schema/Schema1488 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_10570 net/minecraft/datafixer/fix/TextComponentStringyFlagsFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_2802 net/minecraft/world/chunk/ChunkManager + m (IIZ)Lnet/minecraft/class_2818; method_12126 getWorldChunk + p 2 chunkZ + p 3 create + p 1 chunkX + m ()I method_14151 getLoadedChunkCount + m ()Lnet/minecraft/class_3568; method_12130 getLightingProvider + m (IIIZ)V method_62872 onSectionStatusChanged + p 2 sectionY + p 1 x + p 4 previouslyEmpty + p 3 z + m ()Ljava/lang/String; method_12122 getDebugString + m (II)Lnet/minecraft/class_2818; method_21730 getWorldChunk + p 2 chunkZ + p 1 chunkX + m ()Lit/unimi/dsi/fastutil/longs/LongSet; method_66011 getForcedChunks + m (Z)V method_12128 setMobSpawnOptions + p 1 spawnMonsters + m (IILnet/minecraft/class_2806;Z)Lnet/minecraft/class_2791; method_12121 getChunk + p 2 z + p 1 x + p 4 create + p 3 leastStatus + m (II)Z method_12123 isChunkLoaded + p 2 z + p 1 x + m (Lnet/minecraft/class_1923;Z)Z method_12124 setChunkForced + p 1 pos + p 2 forced + m (Ljava/util/function/BooleanSupplier;Z)V method_12127 tick + p 2 tickChunks + p 1 shouldKeepTicking +c net/minecraft/class_10571 net/minecraft/datafixer/fix/UnflattenTextComponentFix + f Lorg/slf4j/Logger; field_55642 LOGGER + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_10576 net/minecraft/datafixer/schema/Schema3813 +c net/minecraft/class_10577 net/minecraft/datafixer/schema/Schema4290 +c net/minecraft/class_10575 net/minecraft/datafixer/schema/Schema3439 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_2807 net/minecraft/world/chunk/GenerationTask + c A task called when a chunk needs to be generated. + m (Lnet/minecraft/class_9312;Lnet/minecraft/class_9770;Lnet/minecraft/class_9762;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; doWork doWork + p 4 chunk + p 1 context + p 2 step +c net/minecraft/class_2808 net/minecraft/world/chunk/ChunkType + c Specifies the type of a chunk + f Lnet/minecraft/class_2808; field_12808 PROTOCHUNK + c A chunk which is incomplete and not loaded to the world yet. + f Lnet/minecraft/class_2808; field_12807 LEVELCHUNK + c A chunk which is complete and bound to a world. +c net/minecraft/class_10578 net/minecraft/datafixer/schema/Schema4292 +c net/minecraft/class_2820 net/minecraft/network/packet/c2s/play/BookUpdateC2SPacket + f Lnet/minecraft/class_9139; field_48193 CODEC + f Ljava/util/Optional; comp_2287 title + f Ljava/util/List; comp_2286 pages + f I comp_2285 slot + m (Lnet/minecraft/class_2792;)V method_12236 apply + m (ILjava/util/List;Ljava/util/Optional;)V + p 1 slot + p 2 pages + p 3 title + m ()Ljava/util/List; comp_2286 pages + m ()I comp_2285 slot + m ()Ljava/util/Optional; comp_2287 title +c net/minecraft/class_2814 net/minecraft/world/chunk/BiMapPalette + c A palette backed by a bidirectional hash table. + f I field_12822 indexBits + f Lnet/minecraft/class_3513; field_12824 map + m (ILjava/util/List;)V + p 2 values + p 1 indexBits + m ()Ljava/util/List; method_38288 getElements + m (I)V + p 1 indexBits + m (ILnet/minecraft/class_3513;)V + p 1 indexBits + p 2 map + m (ILjava/util/List;)Lnet/minecraft/class_2837; method_38287 create + p 0 bits + p 1 values +c net/minecraft/class_2815 net/minecraft/network/packet/c2s/play/CloseHandledScreenC2SPacket + f Lnet/minecraft/class_9139; field_48191 CODEC + f I field_12827 syncId + m (I)V + p 1 syncId + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2792;)V method_12198 apply + m (Lnet/minecraft/class_2540;)V method_55972 write + p 1 buf + m ()I method_36168 getSyncId +c net/minecraft/class_2816 net/minecraft/world/chunk/IdListPalette + c A palette that directly stores the raw ID of entries to the palette\ncontainer storage. + f Lnet/minecraft/class_2359; field_12828 idList + m (Lnet/minecraft/class_2359;)V + p 1 idList +c net/minecraft/class_2817 net/minecraft/network/packet/c2s/common/CustomPayloadC2SPacket + f I field_33361 MAX_PAYLOAD_SIZE + f Lnet/minecraft/class_9139; field_48646 CODEC + f Lnet/minecraft/class_8710; comp_1647 payload + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_9139; method_56475 method_56475 + p 0 id + m (Lnet/minecraft/class_8706;)V method_12199 apply + m (Ljava/util/ArrayList;)V method_58271 method_58271 + p 0 types + m ()Lnet/minecraft/class_8710; comp_1647 payload + m (Lnet/minecraft/class_8710;)V + p 1 payload +c net/minecraft/class_2810 net/minecraft/world/StructureHolder + m (Lnet/minecraft/class_3195;J)V method_12182 addStructureReference + p 2 reference + p 1 structure + m (Lnet/minecraft/class_3195;)Lnet/minecraft/class_3449; method_12181 getStructureStart + p 1 structure + m (Lnet/minecraft/class_3195;Lnet/minecraft/class_3449;)V method_12184 setStructureStart + p 1 structure + p 2 start + m (Ljava/util/Map;)V method_12183 setStructureReferences + p 1 structureReferences + m ()Ljava/util/Map; method_12179 getStructureReferences + m (Lnet/minecraft/class_3195;)Lit/unimi/dsi/fastutil/longs/LongSet; method_12180 getStructureReferences + p 1 structure +c net/minecraft/class_10561 net/minecraft/datafixer/fix/AreaEffectCloudDurationScaleFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66047 method_66047 + p 0 dynamic +c net/minecraft/class_2811 net/minecraft/network/packet/c2s/play/ButtonClickC2SPacket + f Lnet/minecraft/class_9139; field_48188 CODEC + f I comp_2649 syncId + f I comp_2650 buttonId + m ()I comp_2649 syncId + m (Lnet/minecraft/class_2792;)V method_12185 apply + m ()I comp_2650 buttonId + m (II)V + p 1 syncId + p 2 buttonId +c net/minecraft/class_10562 net/minecraft/datafixer/fix/SimpleBlockPropertyRenameFix + f Ljava/lang/String; field_55630 targetId + f Ljava/lang/String; field_55631 oldPropertyName + f Ljava/util/function/UnaryOperator; field_55633 valueConverter + f Ljava/lang/String; field_55632 newPropertyName + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66054 method_66054 + p 1 value + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/UnaryOperator;)V + p 1 outputSchema + p 6 valueConverter + p 4 oldPropertyName + p 5 newPropertyName + p 2 name + p 3 targetId +c net/minecraft/class_2812 net/minecraft/world/chunk/EmptyChunk + f Lnet/minecraft/class_6880; field_36407 biomeEntry + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1923;Lnet/minecraft/class_6880;)V + p 1 world + p 2 pos + p 3 biomeEntry +c net/minecraft/class_11891 net/minecraft/entity/decoration/MannequinEntity + f Ljava/lang/String; field_63019 IMMOVABLE_KEY + f Ljava/lang/String; field_62522 MAIN_HAND_KEY + f Ljava/lang/String; field_62520 PROFILE_KEY + f Z field_63023 hideDescription + f Lnet/minecraft/class_2940; field_62516 PROFILE + f B field_62517 ALL_MODEL_PARTS + f Lcom/mojang/serialization/Codec; field_62518 MODEL_PARTS_CODEC + f Ljava/util/Set; field_63026 POSES + f Ljava/lang/String; field_63021 HIDE_DESCRIPTION_KEY + f Lnet/minecraft/class_2940; field_63024 IMMOVABLE + f Lnet/minecraft/class_2561; field_63027 DEFAULT_DESCRIPTION + f Lcom/mojang/serialization/Codec; field_63017 POSE_CODEC + f Lnet/minecraft/class_1299$class_4049; field_62912 factory + f Ljava/lang/String; field_63018 POSE_KEY + f Lnet/minecraft/class_9296; field_62519 DEFAULT_INFO + f Ljava/lang/String; field_62521 HIDDEN_LAYERS_KEY + f Lnet/minecraft/class_2561; field_63022 description + f Ljava/lang/String; field_63020 DESCRIPTION_KEY + f Lnet/minecraft/class_2940; field_63025 DESCRIPTION + m (II)I method_74097 method_74097 + p 1 flagR + p 0 flagL + m (Ljava/lang/Byte;)Ljava/util/List; method_74102 method_74102 + p 0 bitFlag + m (Lnet/minecraft/class_1937;)V + p 1 world + m (Lnet/minecraft/class_9296;)V method_74098 setMannequinProfile + p 1 profile + m (Ljava/lang/Byte;Lnet/minecraft/class_1664;)Z method_74100 method_74100 + p 1 part + m ()Lnet/minecraft/class_2561; method_74880 getDescription + m ()Lnet/minecraft/class_9296; method_74104 getMannequinProfile + m (Z)V method_74876 setImmovable + p 1 immovable + m ()V method_74882 updateTrackedDescription + m (II)I method_74101 method_74101 + p 1 flagR + p 0 flagL + m (Lnet/minecraft/class_2561;)V method_74875 setDescription + p 1 description + m (Ljava/util/List;)Ljava/lang/Byte; method_74103 method_74103 + p 0 parts + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;)Lnet/minecraft/class_11891; method_74669 create + p 1 world + p 0 type + m ()Z method_74881 isImmovable + m (Lnet/minecraft/class_4050;)Lcom/mojang/serialization/DataResult; method_74878 method_74878 + p 0 pose + m (Z)V method_74877 setHideDescription + p 1 hideDescription +c net/minecraft/class_2813 net/minecraft/network/packet/c2s/play/ClickSlotC2SPacket + f I field_34045 MAX_MODIFIED_STACKS + f Lnet/minecraft/class_10938; comp_3848 cursor + f S comp_3844 slot + f Lnet/minecraft/class_1713; comp_3846 actionType + f Lnet/minecraft/class_9139; field_48189 CODEC + f B comp_3845 button + f I comp_3843 revision + f Lnet/minecraft/class_9139; field_48190 STACK_MAP_CODEC + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; comp_3847 modifiedStacks + f I comp_3842 syncId + m ()Lnet/minecraft/class_10938; comp_3848 cursor + m ()S comp_3844 slot + m ()Lnet/minecraft/class_1713; comp_3846 actionType + m ()B comp_3845 button + m ()I comp_3843 revision + m (Lnet/minecraft/class_2792;)V method_12191 apply + m ()Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; comp_3847 modifiedStacks + m ()I comp_3842 syncId + m (IISBLnet/minecraft/class_1713;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lnet/minecraft/class_10938;)V + p 1 syncId + p 2 revision + p 3 slot + p 4 button + p 5 actionType + p 6 modifiedStacks + p 7 cursor +c net/minecraft/class_10560 net/minecraft/datafixer/fix/BlockPropertyRenameFix + f Ljava/lang/String; field_55627 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 name + m (Ljava/lang/String;)Z method_66044 shouldFix + p 1 id + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66045 fix + p 2 properties + p 1 id + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66043 fix + p 1 blockState + m (Ljava/util/Optional;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66046 method_66046 + p 2 properties + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_66042 method_66042 + p 1 typed +c net/minecraft/class_11890 net/minecraft/entity/PlayerLikeEntity + f F field_62511 EYE_HEIGHT + f Lnet/minecraft/class_2940; field_62513 MAIN_ARM_ID + f Lnet/minecraft/class_2940; field_62514 PLAYER_MODE_CUSTOMIZATION_ID + f F field_63008 SWIMMING_BOX_WIDTH + f F field_63009 SWIMMING_BOX_HEIGHT + f F field_63007 CROUCH_BOX_HEIGHT + f Lnet/minecraft/class_4048; field_63010 STANDING_DIMENSIONS + f Ljava/util/Map; field_63011 POSE_DIMENSIONS + f Lnet/minecraft/class_1306; field_62509 MAIN_ARM + f I field_62510 MODEL_CUSTOMIZATION + f Lnet/minecraft/class_243; field_62512 VEHICLE_ATTACHMENT + m (Lnet/minecraft/class_1306;)V method_74090 setMainArm + p 1 arm + m (Lnet/minecraft/class_1664;)Z method_74091 isModelPartVisible + p 1 part +c net/minecraft/class_11897 net/minecraft/world/chunk/PalettesFactory + f Lcom/mojang/serialization/Codec; comp_4790 biomeContainerCodec + f Lcom/mojang/serialization/Codec; comp_4787 blockStatesContainerCodec + f Lnet/minecraft/class_6880; comp_4789 defaultBiome + f Lnet/minecraft/class_6563; comp_4788 biomeStrategy + f Lnet/minecraft/class_6563; comp_4785 blockStatesStrategy + f Lnet/minecraft/class_2680; comp_4786 defaultBlockState + m ()Lnet/minecraft/class_2841; method_74158 getBlockStateContainer + m (Lnet/minecraft/class_5455;)Lnet/minecraft/class_11897; method_74159 fromRegistryManager + p 0 registryManager + m ()Lnet/minecraft/class_2841; method_74160 getBiomeContainer + m ()Lnet/minecraft/class_6880; comp_4789 defaultBiome + m ()Lcom/mojang/serialization/Codec; comp_4790 biomeContainerCodec + m ()Lcom/mojang/serialization/Codec; comp_4787 blockStatesContainerCodec + m ()Lnet/minecraft/class_2680; comp_4786 defaultBlockState + m ()Lnet/minecraft/class_6563; comp_4785 blockStatesStrategy + m ()Lnet/minecraft/class_6563; comp_4788 biomeStrategy + m (Lnet/minecraft/class_6563;Lnet/minecraft/class_2680;Lcom/mojang/serialization/Codec;Lnet/minecraft/class_6563;Lnet/minecraft/class_6880;Lcom/mojang/serialization/Codec;)V + p 1 blockStatesStrategy + p 2 defaultBlockState + p 3 blockStatesContainerCodec + p 4 biomeStrategy + p 5 defaultBiome + p 6 biomeContainerCodec +c net/minecraft/class_10565 net/minecraft/datafixer/fix/SimpleItemNbtFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_20445 fixNbt + p 1 dynamic +c net/minecraft/class_10566 net/minecraft/datafixer/fix/LegacyHoverEventFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_11895 net/minecraft/world/chunk/PaletteType + m (Lnet/minecraft/class_6563;Ljava/util/List;)Lnet/minecraft/class_2837; method_74152 createPalette + p 2 values + p 1 provider + m ()Z method_74151 shouldRepack + m ()I comp_4784 bitsInStorage + m ()I comp_4783 bitsInMemory +c net/minecraft/class_11895$class_6560 net/minecraft/world/chunk/PaletteType$Static + f Lnet/minecraft/class_2837$class_6559; comp_72 factory + c the palette factory + f I comp_73 bits + c the number of bits each element use + m ()Lnet/minecraft/class_2837$class_6559; comp_72 factory + m ()I comp_73 bits + m (Lnet/minecraft/class_2837$class_6559;I)V + p 1 factory + p 2 bits +c net/minecraft/class_11895$class_11896 net/minecraft/world/chunk/PaletteType$Dynamic + f I comp_4784 bitsInStorage + f I comp_4783 bitsInMemory + m (II)V + p 1 bitsInMemory + p 2 bitsInStorage +c net/minecraft/class_10563 net/minecraft/datafixer/fix/DropChancesFormatFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_10564 net/minecraft/datafixer/fix/ForcedChunkToTicketFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_2818 net/minecraft/world/chunk/WorldChunk + f Ljava/util/Map; field_27222 blockEntityTickers + f Z field_12855 loadedToWorld + f Lnet/minecraft/class_6755; field_35472 fluidTickScheduler + f Lnet/minecraft/class_2818$class_10368; field_54971 unsavedListener + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_28129 gameEventDispatchers + f Lnet/minecraft/class_2818$class_6829; field_12850 entityLoader + f Lnet/minecraft/class_6755; field_35471 blockTickScheduler + f Lorg/slf4j/Logger; field_12839 LOGGER + f Lnet/minecraft/class_1937; field_12858 world + f Lnet/minecraft/class_5562; field_27221 EMPTY_BLOCK_ENTITY_TICKER + f Ljava/util/function/Supplier; field_12856 levelTypeProvider + m (Lnet/minecraft/class_2818$class_5564;)V method_38290 method_38290 + p 0 ticker + m (Lnet/minecraft/class_2540;)V method_49525 loadBiomeFromPacket + p 1 buf + m (Lnet/minecraft/class_3218;)V method_12221 runPostProcessing + p 1 world + m (Ljava/util/function/Supplier;)V method_12207 setLevelTypeProvider + p 1 levelTypeProvider + m ()Z method_31715 canTickBlockEntities + m (Lnet/minecraft/class_2818$class_10368;)V method_65066 setUnsavedListener + p 1 unsavedListener + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_5558;)Lnet/minecraft/class_5562; method_31718 wrapTicker + p 1 blockEntity + p 2 blockEntityTicker + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2586; method_12204 loadBlockEntity + p 1 pos + p 2 nbt + m (Lnet/minecraft/class_2338;)V method_31725 removeBlockEntityTicker + p 1 pos + m ()V method_38289 clear + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_5558;Lnet/minecraft/class_2338;Lnet/minecraft/class_2818$class_5564;)Lnet/minecraft/class_2818$class_5564; method_31719 method_31719 + p 4 ticker + p 3 pos + m (Lnet/minecraft/class_2586;)V method_31723 updateTicker + p 1 blockEntity + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_3218;)V method_32918 removeGameEventListener + p 2 world + p 1 blockEntity + m (Lnet/minecraft/class_2586;)V method_12216 addBlockEntity + p 1 blockEntity + m (Lnet/minecraft/class_2338;)Z method_31724 canTickBlockEntity + p 1 pos + m (Lnet/minecraft/class_8942$class_11340;Lnet/minecraft/class_2338;Lnet/minecraft/class_2591;Lnet/minecraft/class_2487;)V method_31716 method_31716 + p 4 nbt + p 3 blockEntityType + p 2 pos + m (Lnet/minecraft/class_2540;Ljava/util/Map;Ljava/util/function/Consumer;)V method_12224 loadFromPacket + p 3 blockEntityVisitorConsumer + p 1 buf + p 2 heightmaps + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_3218;)V method_32919 updateGameEventListener + p 1 blockEntity + p 2 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2818$class_2819;)Lnet/minecraft/class_2586; method_12201 getBlockEntity + p 1 pos + p 2 creationType + m (Lnet/minecraft/class_3218;II)Lnet/minecraft/class_5713; method_32917 method_32917 + p 3 sectionCoord + m ()V method_31713 updateAllBlockEntities + m (J)V method_20530 disableTickSchedulers + p 1 time + m (Lnet/minecraft/class_3218;)V method_39305 addChunkTickSchedulers + p 1 world + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2586; method_12208 createBlockEntity + p 1 pos + m (I)V method_51382 removeGameEventDispatcher + p 1 ySectionCoord + m ()Z method_12223 isEmpty + m (Lnet/minecraft/class_1923;)V method_65065 method_65065 + p 0 pos + m ()Lnet/minecraft/class_1937; method_12200 getWorld + m ()Ljava/util/Map; method_12214 getBlockEntities + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2839;Lnet/minecraft/class_2818$class_6829;)V + p 2 protoChunk + p 1 world + p 3 entityLoader + m (Lnet/minecraft/class_2586;)V method_32920 method_32920 + p 1 blockEntity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1923;Lnet/minecraft/class_2843;Lnet/minecraft/class_6755;Lnet/minecraft/class_6755;J[Lnet/minecraft/class_2826;Lnet/minecraft/class_2818$class_6829;Lnet/minecraft/class_6749;)V + p 10 blendingData + p 1 world + p 5 fluidTickScheduler + p 4 blockTickScheduler + p 3 upgradeData + p 2 pos + p 9 entityLoader + p 8 sectionArrayInitializer + p 6 inhabitedTime + m ()V method_12206 loadEntities + m (III)Lnet/minecraft/class_3610; method_12234 getFluidState + p 3 z + p 1 x + p 2 y + m (Lnet/minecraft/class_3218;)V method_39306 removeChunkTickSchedulers + p 1 world + m ()Lnet/minecraft/class_3194; method_12225 getLevelType + m (Z)V method_12226 setLoadedToWorld + p 1 loadedToWorld + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1923;)V + p 2 pos + p 1 world +c net/minecraft/class_2818$class_2819 net/minecraft/world/chunk/WorldChunk$CreationType + f Lnet/minecraft/class_2818$class_2819; field_12860 IMMEDIATE + f Lnet/minecraft/class_2818$class_2819; field_12861 QUEUED + f Lnet/minecraft/class_2818$class_2819; field_12859 CHECK +c net/minecraft/class_2818$class_5564 net/minecraft/world/chunk/WorldChunk$WrappedBlockEntityTickInvoker + f Lnet/minecraft/class_5562; field_27228 wrapped + m (Lnet/minecraft/class_5562;)V method_31727 setWrapped + p 1 wrapped + m (Lnet/minecraft/class_5562;)V + p 1 wrapped +c net/minecraft/class_2818$class_5563 net/minecraft/world/chunk/WorldChunk$DirectBlockEntityTickInvoker + f Z field_27226 hasWarned + f Lnet/minecraft/class_5558; field_27225 ticker + f Lnet/minecraft/class_2818; field_27223 worldChunk + f Lnet/minecraft/class_2586; field_27224 blockEntity + m (Lnet/minecraft/class_2818;Lnet/minecraft/class_2586;Lnet/minecraft/class_5558;)V + p 3 ticker + p 2 blockEntity +c net/minecraft/class_2818$class_10368 net/minecraft/world/chunk/WorldChunk$UnsavedListener + m (Lnet/minecraft/class_1923;)V setUnsaved setUnsaved + p 1 pos +c net/minecraft/class_2818$class_6829 net/minecraft/world/chunk/WorldChunk$EntityLoader + m (Lnet/minecraft/class_2818;)V run run + p 1 chunk +c net/minecraft/class_10567 net/minecraft/datafixer/fix/DisplayNameFix + f Lcom/mojang/datafixers/DSL$TypeReference; field_55641 typeReference + f Ljava/lang/String; field_55640 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;)V + p 1 outputSchema + p 3 typeReference + p 2 name +c net/minecraft/class_11899 net/minecraft/client/util/math/Vec3fArray + f [F field_62553 array + m (I)F method_74171 getX + p 1 index + m (IFFF)V method_74172 set + p 1 index + p 2 x + p 3 y + p 4 z + m (ILorg/joml/Vector3fc;)V method_74174 set + p 2 vec + p 1 index + m (ILorg/joml/Vector3f;)Lorg/joml/Vector3f; method_74173 get + p 1 index + p 2 vec + m ()I method_74170 size + m (I)F method_74176 getZ + p 1 index + m (I)F method_74175 getY + p 1 index + m (I)V + p 1 size +c net/minecraft/class_10568 net/minecraft/datafixer/fix/TextComponentHoverAndClickEventFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_11839 net/minecraft/server/dedicated/management/RpcDiscover + m (Ljava/util/List;)Lnet/minecraft/class_11839$class_11842; method_73867 handleRpcDiscover + p 0 entries + m (Ljava/util/List;Lnet/minecraft/class_6880$class_6883;)V method_74853 method_74853 + p 1 entry + m (Ljava/util/List;Lnet/minecraft/class_6880$class_6883;)V method_74852 method_74852 + p 1 entry +c net/minecraft/class_11839$class_11842 net/minecraft/server/dedicated/management/RpcDiscover$Document + f Lcom/mojang/serialization/MapCodec; field_62398 CODEC + f Ljava/util/List; comp_4717 methods + f Ljava/lang/String; comp_4715 jsonRpcProtocolVersion + f Lnet/minecraft/class_11839$class_11840; comp_4718 components + f Lnet/minecraft/class_11839$class_11841; comp_4716 discoverInfo + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73873 method_73873 + p 0 instance + m ()Lnet/minecraft/class_11839$class_11841; comp_4716 discoverInfo + m ()Lnet/minecraft/class_11839$class_11840; comp_4718 components + m ()Ljava/lang/String; comp_4715 jsonRpcProtocolVersion + m ()Ljava/util/List; comp_4717 methods + m (Ljava/lang/String;Lnet/minecraft/class_11839$class_11841;Ljava/util/List;Lnet/minecraft/class_11839$class_11840;)V + p 1 jsonRpcProtocolVersion + p 2 discoverInfo + p 3 methods + p 4 components +c net/minecraft/class_11839$class_11840 net/minecraft/server/dedicated/management/RpcDiscover$Components + f Lcom/mojang/serialization/MapCodec; field_62396 CODEC + f Ljava/util/Map; comp_4712 schemas + m ()Lcom/mojang/serialization/MapCodec; method_75592 createCodec + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75591 method_75591 + p 0 instance + m ()Ljava/util/Map; comp_4712 schemas + m (Ljava/util/Map;)V + p 1 schemas +c net/minecraft/class_11839$class_11841 net/minecraft/server/dedicated/management/RpcDiscover$Info + f Lcom/mojang/serialization/MapCodec; field_62397 CODEC + f Ljava/lang/String; comp_4713 title + f Ljava/lang/String; comp_4714 version + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73872 method_73872 + p 0 instance + m ()Ljava/lang/String; comp_4713 title + m ()Ljava/lang/String; comp_4714 version + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 title + p 2 version +c net/minecraft/class_11838 net/minecraft/server/dedicated/management/network/ManagementConnectionId + f Ljava/lang/Integer; comp_4711 connectionId + m (Ljava/lang/Integer;)Lnet/minecraft/class_11838; method_73862 of + p 0 connectionId + m ()Ljava/lang/Integer; comp_4711 connectionId + m (Ljava/lang/Integer;)V + p 1 connectionId +c net/minecraft/class_10508 net/minecraft/client/render/item/model/special/SimpleSpecialModelRenderer + m (Lnet/minecraft/class_1799;)Ljava/lang/Void; method_65704 getData + m (Lnet/minecraft/class_811;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IIZI)V method_65699 render + p 3 queue + p 4 light + p 5 overlay + p 6 glint + p 1 displayContext + p 2 matrices + m (Ljava/lang/Void;Lnet/minecraft/class_811;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IIZI)V method_65705 render +c net/minecraft/class_10506 net/minecraft/client/render/item/model/special/DecoratedPotModelRenderer + f Lnet/minecraft/class_8188; field_55439 blockEntityRenderer + m (Lnet/minecraft/class_8526;Lnet/minecraft/class_811;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IIZI)V method_65703 render + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_8526; method_65702 getData + m (Lnet/minecraft/class_8188;)V + p 1 blockEntityRenderer +c net/minecraft/class_10506$class_10507 net/minecraft/client/render/item/model/special/DecoratedPotModelRenderer$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55440 CODEC +c net/minecraft/class_10509 net/minecraft/client/render/item/model/special/ShieldModelRenderer + f Lnet/minecraft/class_11701; field_61858 spriteHolder + f Lnet/minecraft/class_600; field_55441 model + m (Lnet/minecraft/class_11701;Lnet/minecraft/class_600;)V + p 1 spriteHolder + p 2 model + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_9323; method_65706 getData + m (Lnet/minecraft/class_9323;Lnet/minecraft/class_811;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IIZI)V method_65707 render +c net/minecraft/class_10509$class_10510 net/minecraft/client/render/item/model/special/ShieldModelRenderer$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55443 CODEC + f Lnet/minecraft/class_10509$class_10510; field_55442 INSTANCE +c net/minecraft/class_10511 net/minecraft/client/render/item/model/special/ShulkerBoxModelRenderer + f Lnet/minecraft/class_4730; field_55447 textureId + f Lnet/minecraft/class_834; field_55444 blockEntityRenderer + f F field_55445 openness + f Lnet/minecraft/class_2350; field_55446 facing + m (Lnet/minecraft/class_834;FLnet/minecraft/class_2350;Lnet/minecraft/class_4730;)V + p 4 textureId + p 1 blockEntityRenderer + p 2 openness + p 3 facing +c net/minecraft/class_10511$class_10512 net/minecraft/client/render/item/model/special/ShulkerBoxModelRenderer$Unbaked + f Lnet/minecraft/class_2350; comp_3424 facing + f Lcom/mojang/serialization/MapCodec; field_55448 CODEC + f Lnet/minecraft/class_2960; comp_3422 texture + f F comp_3423 openness + m ()Lnet/minecraft/class_2350; comp_3424 facing + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65708 method_65708 + p 0 instance + m (Lnet/minecraft/class_1767;)V + p 1 color + m ()Lnet/minecraft/class_2960; comp_3422 texture + m ()F comp_3423 openness + m (Lnet/minecraft/class_2960;FLnet/minecraft/class_2350;)V + p 1 texture + p 2 openness + p 3 facing +c net/minecraft/class_11845 net/minecraft/world/rule/GameRuleType + f Ljava/lang/String; field_62401 name + f Lnet/minecraft/class_11845; field_62400 BOOL + f Lnet/minecraft/class_11845; field_62399 INT + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_10515 net/minecraft/client/render/item/model/special/SpecialModelRenderer + m (Ljava/util/function/Consumer;)V method_72175 collectVertices + p 1 consumer + m (Ljava/lang/Object;Lnet/minecraft/class_811;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IIZI)V method_65694 render + p 6 overlay + p 7 glint + p 4 queue + p 5 light + p 2 displayContext + p 3 matrices + p 1 data + m (Lnet/minecraft/class_1799;)Ljava/lang/Object; method_65695 getData + p 1 stack +c net/minecraft/class_10515$class_11695 net/minecraft/client/render/item/model/special/SpecialModelRenderer$BakeContext + m ()Lnet/minecraft/class_11701; comp_4551 spriteHolder + m ()Lnet/minecraft/class_5599; comp_3391 entityModelSet + m ()Lnet/minecraft/class_11786; comp_4658 playerSkinRenderCache +c net/minecraft/class_10515$class_11695$class_11696 net/minecraft/client/render/item/model/special/SpecialModelRenderer$BakeContext$Simple + f Lnet/minecraft/class_11701; comp_4551 spriteHolder + f Lnet/minecraft/class_5599; comp_3391 entityModelSet + f Lnet/minecraft/class_11786; comp_4658 playerSkinRenderCache + m (Lnet/minecraft/class_5599;Lnet/minecraft/class_11701;Lnet/minecraft/class_11786;)V + p 1 entityModelSet + p 2 spriteHolder + p 3 playerSkinRenderCache +c net/minecraft/class_10515$class_10516 net/minecraft/client/render/item/model/special/SpecialModelRenderer$Unbaked + m (Lnet/minecraft/class_10515$class_11695;)Lnet/minecraft/class_10515; method_65698 bake + p 1 context + m ()Lcom/mojang/serialization/MapCodec; method_65696 getCodec +c net/minecraft/class_11844 net/minecraft/server/dedicated/management/dispatch/GameRuleRpcDispatcher + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11844$class_12254;Lnet/minecraft/class_11838;)Lnet/minecraft/class_11844$class_12254; method_73875 updateRule + p 2 remote + p 1 rule + p 0 dispatcher + m (Lnet/minecraft/class_11827;Ljava/util/List;Lnet/minecraft/class_12279;)V method_76048 method_76048 + p 2 rule + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_12279;Ljava/util/List;)V method_76047 add + p 2 results + p 1 rule + p 0 dispatcher + m (Lnet/minecraft/class_11827;)Ljava/util/List; method_73874 get + p 0 dispatcher + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_12279;Ljava/lang/Object;)Lnet/minecraft/class_11844$class_12254; method_73876 toEntry + p 0 dispatcher + p 2 value + p 1 rule +c net/minecraft/class_11844$class_12254 net/minecraft/server/dedicated/management/dispatch/GameRuleRpcDispatcher$RuleEntry + f Lcom/mojang/serialization/Codec; field_64089 UNTYPED_CODEC + f Lcom/mojang/serialization/Codec; field_64088 TYPED_CODEC + f Lnet/minecraft/class_12279; comp_5161 gameRule + f Ljava/lang/Object; comp_5162 value + m (Lnet/minecraft/class_12279;Lnet/minecraft/class_11845;Ljava/lang/Object;)Lnet/minecraft/class_11844$class_12254; method_76052 validateType + p 1 type + p 2 value + p 0 rule + m (Lnet/minecraft/class_11844$class_12254;)Lnet/minecraft/class_11845; method_76049 method_76049 + p 0 entry + m (Lnet/minecraft/class_12279;)Lcom/mojang/serialization/MapCodec; method_76050 untypedCodec + p 0 rule + m (Lnet/minecraft/class_12279;Lnet/minecraft/class_11845;Ljava/lang/Object;)Lnet/minecraft/class_11844$class_12254; method_76055 method_76055 + p 1 type + p 2 value + m (Lnet/minecraft/class_12279;Ljava/lang/Object;)Lnet/minecraft/class_11844$class_12254; method_76053 method_76053 + p 1 entry + m (Lnet/minecraft/class_12279;)Lcom/mojang/serialization/MapCodec; method_76054 typedCodec + p 0 rule + m (Lnet/minecraft/class_12279;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76051 method_76051 + p 1 instance + m ()Ljava/lang/Object; comp_5162 value + m ()Lnet/minecraft/class_12279; comp_5161 gameRule + m (Lnet/minecraft/class_12279;Ljava/lang/Object;)V + p 1 gameRule + p 2 value +c net/minecraft/class_11843 net/minecraft/server/dedicated/management/RpcEncodingException + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/class_10513 net/minecraft/client/render/item/model/special/HeadModelRenderer + f F field_55566 animation + f Lnet/minecraft/class_1921; field_61037 renderLayer + f Lnet/minecraft/class_5598; field_55450 model + m (Lnet/minecraft/class_5598;FLnet/minecraft/class_1921;)V + p 3 renderLayer + p 2 animation + p 1 model +c net/minecraft/class_10513$class_10514 net/minecraft/client/render/item/model/special/HeadModelRenderer$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55451 CODEC + f F comp_3470 animation + f Ljava/util/Optional; comp_3442 textureOverride + f Lnet/minecraft/class_2484$class_2485; comp_3425 kind + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65711 method_65711 + p 0 instance + m (Lnet/minecraft/class_2484$class_2485;)V + p 1 kind + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_65851 method_65851 + p 0 id + m (Ljava/lang/String;)Ljava/lang/String; method_65852 method_65852 + p 0 texture + m ()Lnet/minecraft/class_2484$class_2485; comp_3425 kind + m ()F comp_3470 animation + m ()Ljava/util/Optional; comp_3442 textureOverride + m (Lnet/minecraft/class_2484$class_2485;Ljava/util/Optional;F)V + p 1 kind + p 2 textureOverride + p 3 animation +c net/minecraft/class_11828 net/minecraft/server/dedicated/management/handler/BanManagementHandler + m (Lnet/minecraft/class_3320;Lnet/minecraft/class_11838;)V method_73748 addIpAddress + p 1 entry + p 2 remote + m (Lnet/minecraft/class_11838;)V method_74493 clearBanList + p 1 remote + m (Lnet/minecraft/class_3336;Lnet/minecraft/class_11838;)V method_73750 addPlayer + p 1 entry + p 2 remote + m ()Ljava/util/Collection; method_73746 getUserBanList + m ()Ljava/util/Collection; method_73752 getIpBanList + m (Ljava/lang/String;Lnet/minecraft/class_11838;)V method_73751 removeIpAddress + p 1 ipAddress + p 2 remote + m (Lnet/minecraft/class_11560;Lnet/minecraft/class_11838;)V method_73749 removePlayer + p 1 entry + p 2 remote + m (Lnet/minecraft/class_11838;)V method_73747 clearIpBanList + p 1 remote +c net/minecraft/class_11827 net/minecraft/server/dedicated/management/dispatch/ManagementHandlerDispatcher + f Lnet/minecraft/class_11829; field_62376 gameRuleHandler + f Lnet/minecraft/class_11870; field_62806 listener + f Lnet/minecraft/class_11991; field_62807 submitter + f Lnet/minecraft/class_11828; field_62374 banHandler + f Lnet/minecraft/class_11833; field_62379 serverHandler + f Lnet/minecraft/class_11826; field_62373 allowlistHandler + f Lnet/minecraft/class_11832; field_62378 propertiesHandler + f Lnet/minecraft/class_11830; field_62377 operatorHandler + f Lnet/minecraft/class_11831; field_62375 playerListHandler + m ()Lnet/minecraft/class_11828; method_73740 getBanHandler + m (Ljava/util/function/Supplier;)Ljava/util/concurrent/CompletableFuture; method_73739 submit + p 1 task + m ()Lnet/minecraft/class_11833; method_73745 getServerHandler + m ()Lnet/minecraft/class_11832; method_73744 getPropertiesHandler + m ()Lnet/minecraft/class_11829; method_73742 getGameRuleHandler + m ()Lnet/minecraft/class_11826; method_73737 getAllowlistHandler + m (Lnet/minecraft/class_3176;)Lnet/minecraft/class_11827; method_74480 create + p 0 server + m (Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; method_73738 submit + p 1 task + m (Lnet/minecraft/class_11870;Lnet/minecraft/class_11826;Lnet/minecraft/class_11828;Lnet/minecraft/class_11831;Lnet/minecraft/class_11829;Lnet/minecraft/class_11830;Lnet/minecraft/class_11832;Lnet/minecraft/class_11833;Lnet/minecraft/class_11991;)V + p 8 serverHandler + p 7 propertiesHandler + p 9 submitter + p 4 playerListHandler + p 3 banHandler + p 6 operatorHandler + p 5 gameRuleHandler + p 2 allowlistHandler + p 1 listener + m ()Lnet/minecraft/class_11870; method_74481 getListener + m ()Lnet/minecraft/class_11830; method_73743 getOperatorHandler + m ()Lnet/minecraft/class_11831; method_73741 getPlayerListHandler +c net/minecraft/class_11826 net/minecraft/server/dedicated/management/handler/AllowlistManagementHandler + m ()Ljava/util/Collection; method_73732 getAllowlist + m (Lnet/minecraft/class_3340;Lnet/minecraft/class_11838;)Z method_73735 add + p 1 player + p 2 remote + m (Lnet/minecraft/class_11838;)V method_73736 kickUnlisted + p 1 remote + m (Lnet/minecraft/class_11838;)V method_73733 clear + p 1 remote + m (Lnet/minecraft/class_11560;Lnet/minecraft/class_11838;)V method_73734 remove + p 2 remote + p 1 player +c net/minecraft/class_11825 net/minecraft/server/dedicated/management/schema/RpcSchemaReferenceJsonProvider + f Ljava/nio/file/Path; field_62370 path + m (Lnet/minecraft/class_7784;)V + p 1 output +c net/minecraft/class_11829 net/minecraft/server/dedicated/management/handler/GameRuleManagementHandler + m (Lnet/minecraft/class_12279;)Ljava/lang/Object; method_73755 getValue + p 1 rule + m (Lnet/minecraft/class_12279;Ljava/lang/Object;)Lnet/minecraft/class_11844$class_12254; method_73757 toEntry + p 2 value + p 1 rule + m (Lnet/minecraft/class_11844$class_12254;Lnet/minecraft/class_11838;)Lnet/minecraft/class_11844$class_12254; method_73754 updateRule + p 2 remote + p 1 entry + m ()Ljava/util/stream/Stream; method_73753 getRules +c net/minecraft/class_11831 net/minecraft/server/dedicated/management/handler/PlayerListManagementHandler + m (Ljava/util/Optional;Ljava/util/Optional;)Ljava/util/Optional; method_73775 getPlayer + p 1 uuid + p 2 name + m (Ljava/lang/String;)Ljava/util/Optional; method_74500 findByName + p 1 name + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_11838;)V method_73767 removePlayer + p 1 player + p 2 remote + m (Ljava/util/UUID;)Lnet/minecraft/class_3222; method_73772 getPlayer + p 1 uuid + m (Ljava/lang/String;)Ljava/util/List; method_73769 getPlayersByIpAddress + p 1 ipAddress + m ()Ljava/util/List; method_73766 getPlayerList + m (Ljava/lang/String;)Lnet/minecraft/class_3222; method_73773 getPlayer + p 1 name + m (Ljava/util/UUID;)Ljava/util/Optional; method_74503 fetchPlayer + p 1 uuid + m (Ljava/util/Optional;Ljava/util/Optional;)Ljava/util/concurrent/CompletableFuture; method_73771 getPlayerAsync + p 2 name + p 1 uuid + m (Ljava/util/UUID;)Ljava/util/Optional; method_74504 getByUuid + p 1 uuid +c net/minecraft/class_11830 net/minecraft/server/dedicated/management/handler/OperatorManagementHandler + m ()Ljava/util/Collection; method_73761 getOperators + m (Lnet/minecraft/class_11560;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/class_11838;)V method_73764 addToOperators + p 2 permissionLevel + p 1 player + p 4 remote + p 3 canBypassPlayerLimit + m (Lnet/minecraft/class_11838;)V method_73762 clearOperators + p 1 remote + m (Lnet/minecraft/class_11560;Lnet/minecraft/class_11838;)V method_73763 addToOperators + p 2 remote + p 1 player + m (Lnet/minecraft/class_11560;Lnet/minecraft/class_11838;)V method_73765 removeFromOperators + p 1 player + p 2 remote +c net/minecraft/class_10500 net/minecraft/client/render/item/model/special/BedModelRenderer + f Lnet/minecraft/class_4730; field_55427 textureId + f Lnet/minecraft/class_825; field_55426 blockEntityRenderer + m (Lnet/minecraft/class_825;Lnet/minecraft/class_4730;)V + p 1 blockEntityRenderer + p 2 textureId +c net/minecraft/class_10500$class_10501 net/minecraft/client/render/item/model/special/BedModelRenderer$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55428 CODEC + f Lnet/minecraft/class_2960; comp_3419 texture + m (Lnet/minecraft/class_1767;)V + p 1 color + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65700 method_65700 + p 0 instance + m ()Lnet/minecraft/class_2960; comp_3419 texture + m (Lnet/minecraft/class_2960;)V + p 1 texture +c net/minecraft/class_11835 net/minecraft/server/dedicated/management/dispatch/PlayerBansRpcDispatcher + f Ljava/lang/String; field_62393 DEFAULT_SOURCE + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11835$class_11837;)Ljava/util/concurrent/CompletableFuture; method_73849 method_73849 + p 1 player + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11835$class_11837;)Ljava/util/concurrent/CompletableFuture; method_73842 method_73842 + p 1 player + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11819;)Ljava/util/concurrent/CompletableFuture; method_73841 method_73841 + p 1 player + m (Ljava/util/Set;Lnet/minecraft/class_11835$class_11836;)Z method_73848 method_73848 + p 1 player + m (Lnet/minecraft/class_11827;Ljava/util/List;Lnet/minecraft/class_11838;)Ljava/util/List; method_73855 set + p 2 remote + p 1 players + p 0 dispatcher + m (Lnet/minecraft/class_11827;Ljava/util/List;Lnet/minecraft/class_11838;)Ljava/util/List; method_73845 add + p 2 remote + p 0 dispatcher + p 1 players + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;Lnet/minecraft/class_11835$class_11836;)V method_73850 method_73850 + p 2 player + m (Lnet/minecraft/class_11827;)Ljava/util/List; method_73840 get + p 0 dispatcher + m (Lnet/minecraft/class_11827;Ljava/util/List;Lnet/minecraft/class_11838;)Ljava/util/List; method_73851 remove + p 0 dispatcher + p 2 remote + p 1 players + m (Lnet/minecraft/class_11835$class_11837;Ljava/util/Optional;)Ljava/util/Optional; method_73852 method_73852 + p 1 playerEntry + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;Lnet/minecraft/class_11835$class_11836;)V method_73844 method_73844 + p 2 player + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;)Ljava/util/List; method_73843 clear + p 0 dispatcher + p 1 remote + m (Lnet/minecraft/class_3336;)Z method_73847 method_73847 + p 0 entry + m (Lnet/minecraft/class_11835$class_11837;Ljava/util/Optional;)Ljava/util/Optional; method_73846 method_73846 + p 1 playerEntry + m (Ljava/util/Set;Lnet/minecraft/class_11835$class_11836;)Z method_73854 method_73854 + p 1 player + m (Lnet/minecraft/class_3336;)Z method_73853 method_73853 + p 0 entry +c net/minecraft/class_11835$class_11837 net/minecraft/server/dedicated/management/dispatch/PlayerBansRpcDispatcher$RpcEntry + f Lcom/mojang/serialization/MapCodec; field_62394 CODEC + f Ljava/util/Optional; comp_4710 expires + f Ljava/util/Optional; comp_4708 reason + f Ljava/util/Optional; comp_4709 source + f Lnet/minecraft/class_11819; comp_4707 player + m (Lnet/minecraft/class_11835$class_11836;)Lnet/minecraft/class_11835$class_11837; method_73858 of + p 0 entry + m (Lnet/minecraft/class_3336;)Lnet/minecraft/class_11835$class_11837; method_73860 of + p 0 entry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73861 method_73861 + p 0 instance + m (Lnet/minecraft/class_11560;)Lnet/minecraft/class_11835$class_11836; method_73859 toConfigEntry + p 1 player + m ()Ljava/util/Optional; comp_4710 expires + m ()Ljava/util/Optional; comp_4709 source + m ()Ljava/util/Optional; comp_4708 reason + m ()Lnet/minecraft/class_11819; comp_4707 player + m (Lnet/minecraft/class_11819;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 reason + p 3 source + p 4 expires +c net/minecraft/class_11835$class_11836 net/minecraft/server/dedicated/management/dispatch/PlayerBansRpcDispatcher$ConfigEntry + f Ljava/util/Optional; comp_4706 expires + f Ljava/lang/String; comp_4704 reason + f Ljava/lang/String; comp_4705 source + f Lnet/minecraft/class_11560; comp_4703 player + m (Lnet/minecraft/class_3336;)Lnet/minecraft/class_11835$class_11836; method_73856 of + p 0 entry + m ()Lnet/minecraft/class_3336; method_73857 toBannedPlayerEntry + m ()Lnet/minecraft/class_11560; comp_4703 player + m ()Ljava/util/Optional; comp_4706 expires + m ()Ljava/lang/String; comp_4704 reason + m ()Ljava/lang/String; comp_4705 source + m (Lnet/minecraft/class_11560;Ljava/lang/String;Ljava/lang/String;Ljava/util/Optional;)V + p 1 player + p 2 reason + p 3 source + p 4 expires +c net/minecraft/class_11834 net/minecraft/server/dedicated/management/dispatch/AllowlistRpcDispatcher + m (Lnet/minecraft/class_3340;)Lnet/minecraft/class_11819; method_73829 method_73829 + p 0 player + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;)Ljava/util/List; method_73826 clear + p 0 dispatcher + p 1 remote + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11819;)Ljava/util/concurrent/CompletableFuture; method_73831 method_73831 + p 1 player + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;Lnet/minecraft/class_11560;)V method_73839 method_73839 + p 2 player + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;Lnet/minecraft/class_11560;)V method_73827 method_73827 + p 2 player + m (Lnet/minecraft/class_11827;)Ljava/util/List; method_73824 get + p 0 dispatcher + m (Lnet/minecraft/class_11827;Ljava/util/List;Lnet/minecraft/class_11838;)Ljava/util/List; method_73833 remove + p 1 players + p 0 dispatcher + p 2 remote + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;Lnet/minecraft/class_11560;)V method_73832 method_73832 + p 2 player + m (Lnet/minecraft/class_3340;)Z method_73834 method_73834 + p 0 entry + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;Lnet/minecraft/class_11560;)V method_73837 method_73837 + p 2 player + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11819;)Ljava/util/concurrent/CompletableFuture; method_73825 method_73825 + p 1 player + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11819;)Ljava/util/concurrent/CompletableFuture; method_73836 method_73836 + p 1 player + m (Lnet/minecraft/class_11827;Ljava/util/List;Lnet/minecraft/class_11838;)Ljava/util/List; method_73828 add + p 1 players + p 0 dispatcher + p 2 remote + m (Ljava/util/Set;Lnet/minecraft/class_11560;)Z method_73835 method_73835 + p 1 player + m (Ljava/util/Set;Lnet/minecraft/class_11560;)Z method_73830 method_73830 + p 1 player + m (Lnet/minecraft/class_11827;Ljava/util/List;Lnet/minecraft/class_11838;)Ljava/util/List; method_73838 set + p 0 dispatcher + p 2 remote + p 1 players +c net/minecraft/class_10504 net/minecraft/client/render/item/model/special/ConduitModelRenderer + f Lnet/minecraft/class_11701; field_61853 spriteHolder + f Lnet/minecraft/class_630; field_55437 shell + m (Lnet/minecraft/class_11701;Lnet/minecraft/class_630;)V + p 1 spriteHolder + p 2 shell +c net/minecraft/class_10504$class_10505 net/minecraft/client/render/item/model/special/ConduitModelRenderer$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55438 CODEC +c net/minecraft/class_11833 net/minecraft/server/dedicated/management/handler/ServerManagementHandler + m (Lnet/minecraft/class_2561;ZLnet/minecraft/class_11838;)V method_73820 broadcastMessage + p 1 message + p 2 overlay + p 3 remote + m (ZZZLnet/minecraft/class_11838;)Z method_73823 save + p 3 force + p 4 remote + p 1 suppressLogs + p 2 flush + m (ZLnet/minecraft/class_11838;)V method_73822 stop + p 1 waitForShutdown + p 2 remote + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_11838;)V method_73819 broadcastMessage + p 2 remote + p 1 message + m (Lnet/minecraft/class_2561;ZLjava/util/Collection;Lnet/minecraft/class_11838;)V method_73821 sendMessageTo + p 2 overlay + p 3 players + p 1 message + p 4 remote + m ()Z method_73817 isLoading +c net/minecraft/class_11832 net/minecraft/server/dedicated/management/handler/PropertiesManagementHandler + m ()Z method_73786 getEnforceAllowlist + m ()Lnet/minecraft/class_12086; method_73813 getOperatorUserPermissionLevel + m (ILnet/minecraft/class_11838;)I method_73790 setSpawnProtectionRadius + p 1 spawnProtectionRadius + p 2 remote + m ()Lnet/minecraft/class_1934; method_73808 getGameMode + m (ZLnet/minecraft/class_11838;)Z method_73791 setAllowFlight + p 2 remote + p 1 allowFlight + m ()Z method_73801 getAllowFlight + m ()Z method_73811 getAcceptTransfers + m (ZLnet/minecraft/class_11838;)Z method_73785 setEnforceAllowlist + p 2 remote + p 1 enforceAllowlist + m ()Z method_73807 getForceGameMode + m ()Z method_73815 getStatusReplies + m ()Lnet/minecraft/class_1267; method_73783 getDifficulty + m (ZLnet/minecraft/class_11838;)Z method_73800 setHideOnlinePlayers + p 1 hideOnlinePlayers + p 2 remote + m ()I method_73792 getMaxPlayers + m (ILnet/minecraft/class_11838;)I method_73796 setSimulationDistance + p 1 simulationDistance + p 2 remote + m (Lnet/minecraft/class_12086;Lnet/minecraft/class_11838;)Lnet/minecraft/class_12086; method_73802 setOperatorUserPermissionLevel + p 2 remote + p 1 operatorUserPermissionLevel + m (ILnet/minecraft/class_11838;)I method_73784 setPauseWhenEmptySeconds + p 1 pauseWhenEmptySeconds + p 2 remote + m (ZLnet/minecraft/class_11838;)Z method_73797 setAcceptTransfers + p 1 acceptTransfers + p 2 remote + m ()I method_73798 getPlayerIdleTimeout + m (ILnet/minecraft/class_11838;)I method_73778 setMaxPlayers + p 2 remote + p 1 maxPlayers + m (ILnet/minecraft/class_11838;)I method_73805 setEntityBroadcastRange + p 1 entityBroadcastRange + p 2 remote + m ()I method_73809 getViewDistance + m ()Z method_73777 getAutosave + m (Lnet/minecraft/class_1267;Lnet/minecraft/class_11838;)Lnet/minecraft/class_1267; method_73779 setDifficulty + p 1 difficulty + p 2 remote + m ()Z method_73814 getHideOnlinePlayers + m ()Z method_73789 getUseAllowlist + m (ILnet/minecraft/class_11838;)I method_73793 setViewDistance + p 2 remote + p 1 viewDistance + m (ZLnet/minecraft/class_11838;)Z method_73794 setForceGameMode + p 1 forceGameMode + p 2 remote + m (ZLnet/minecraft/class_11838;)Z method_73782 setAutosave + p 2 remote + p 1 autosaveEnabled + m (Ljava/lang/String;Lnet/minecraft/class_11838;)Ljava/lang/String; method_73781 setMotd + p 2 remote + p 1 motd + m (ILnet/minecraft/class_11838;)I method_73787 setPlayerIdleTimeout + p 1 playerIdleTimeout + p 2 remote + m (Lnet/minecraft/class_1934;Lnet/minecraft/class_11838;)Lnet/minecraft/class_1934; method_73780 setGameMode + p 2 remote + p 1 gameMode + m (ZLnet/minecraft/class_11838;)Z method_73788 setUseAllowlist + p 1 useAllowlist + p 2 remote + m (ZLnet/minecraft/class_11838;)Z method_73803 setStatusReplies + p 1 repliesToStatus + p 2 remote + m ()I method_73795 getPauseWhenEmptySeconds + m (ILnet/minecraft/class_11838;)I method_73799 setStatusHeartbeatInterval + p 2 remote + p 1 statusHeartbeatInterval + m ()Ljava/lang/String; method_73806 getMotd + m ()I method_73812 getStatusHeartbeatInterval + m ()I method_73810 getSimulationDistance + m ()I method_73816 getEntityBroadcastRange + m ()I method_73804 getSpawnProtectionRadius +c net/minecraft/class_10502 net/minecraft/client/render/item/model/special/ChestModelRenderer + f F field_55435 openness + f Lnet/minecraft/class_2960; field_55429 CHRISTMAS_ID + f Lnet/minecraft/class_4730; field_55434 textureId + f Lnet/minecraft/class_2960; field_55432 ENDER_ID + f Lnet/minecraft/class_2960; field_55430 NORMAL_ID + f Lnet/minecraft/class_9944; field_55433 model + f Lnet/minecraft/class_2960; field_55431 TRAPPED_ID + f Lnet/minecraft/class_2960; field_61850 WEATHERED_COPPER_ID + f Lnet/minecraft/class_2960; field_61851 OXIDIZED_COPPER_ID + f Lnet/minecraft/class_11701; field_61852 spriteHolder + f Lnet/minecraft/class_2960; field_61848 COPPER_ID + f Lnet/minecraft/class_2960; field_61849 EXPOSED_COPPER_ID + m (Lnet/minecraft/class_11701;Lnet/minecraft/class_9944;Lnet/minecraft/class_4730;F)V + p 4 openness + p 3 textureId + p 2 model + p 1 spriteHolder +c net/minecraft/class_10502$class_10503 net/minecraft/client/render/item/model/special/ChestModelRenderer$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55436 CODEC + f F comp_3421 openness + f Lnet/minecraft/class_2960; comp_3420 texture + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65701 method_65701 + p 0 instance + m (Lnet/minecraft/class_2960;)V + p 1 texture + m ()F comp_3421 openness + m ()Lnet/minecraft/class_2960; comp_3420 texture + m (Lnet/minecraft/class_2960;F)V + p 1 texture + p 2 openness +c net/minecraft/class_10529 net/minecraft/client/render/block/entity/AbstractSignBlockEntityRenderer + f I field_55507 MAX_COLORED_TEXT_OUTLINE_RENDER_DISTANCE + f I field_55506 GLOWING_BLACK_TEXT_COLOR + f Lnet/minecraft/class_11701; field_61778 spriteHolder + f Lnet/minecraft/class_327; field_55508 textRenderer + m ()F method_51272 getSignScale + m (Lnet/minecraft/class_11971;Lnet/minecraft/class_4587;Lnet/minecraft/class_2680;Lnet/minecraft/class_2478;Lnet/minecraft/class_4719;Lnet/minecraft/class_3879$class_9948;Lnet/minecraft/class_11683$class_11792;Lnet/minecraft/class_11659;)V method_65821 render + p 8 queue + p 7 crumblingOverlay + p 6 model + p 5 woodType + p 4 block + p 3 blockState + p 2 matrices + p 1 renderState + m ()Lnet/minecraft/class_243; method_45790 getTextOffset + m (Lnet/minecraft/class_8242;)I method_65822 getTextColor + p 0 text + m ()F method_51273 getTextScale + m (Lnet/minecraft/class_2338;)Z method_65827 shouldRenderTextOutline + p 0 pos + m (Lnet/minecraft/class_2625;Lnet/minecraft/class_11971;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74333 updateRenderState + m ()Lnet/minecraft/class_11971; method_74334 createRenderState + m (Lnet/minecraft/class_4587;ILnet/minecraft/class_4719;Lnet/minecraft/class_3879$class_9948;Lnet/minecraft/class_11683$class_11792;Lnet/minecraft/class_11659;)V method_65825 renderSign + p 6 queue + p 1 matrices + p 4 model + p 5 crumblingOverlay + p 2 lightmapCoords + p 3 woodType + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 context + m (Lnet/minecraft/class_4719;)Lnet/minecraft/class_4730; method_45792 getTextureId + p 1 woodType + m (Lnet/minecraft/class_11971;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Z)V method_65828 renderText + p 1 renderState + p 4 front + p 2 matrices + p 3 queue + m (Lnet/minecraft/class_11971;Lnet/minecraft/class_2561;)Lnet/minecraft/class_5481; method_65819 method_65819 + p 2 textx + m (Lnet/minecraft/class_4587;ZLnet/minecraft/class_243;)V method_65826 applyTextTransforms + p 3 textOffset + p 2 front + p 1 matrices + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4719;)Lnet/minecraft/class_3879$class_9948; method_65823 getModel + p 2 woodType + p 1 state + m (Lnet/minecraft/class_11971;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_65820 render + m (Lnet/minecraft/class_4587;FLnet/minecraft/class_2680;)V method_65824 applyTransforms + p 3 state + p 1 matrices + p 2 blockRotationDegrees +c net/minecraft/class_11859 net/minecraft/server/dedicated/management/RpcRemoteErrorException + f Lcom/google/gson/JsonElement; field_62412 id + f Lcom/google/gson/JsonObject; field_62413 error + m (Lcom/google/gson/JsonElement;Lcom/google/gson/JsonObject;)V + p 2 error + p 1 id + m ()Lcom/google/gson/JsonObject; method_73935 getError + m ()Lcom/google/gson/JsonElement; method_73936 getId +c net/minecraft/class_11860 net/minecraft/server/dedicated/management/dispatch/PropertiesRpcDispatcher + m (Lnet/minecraft/class_11827;)I method_73976 getEntityBroadcastRange + p 0 dispatcher + m (Lnet/minecraft/class_11827;)I method_73964 getSpawnProtectionRadius + p 0 dispatcher + m (Lnet/minecraft/class_11827;)I method_73958 getPlayerIdleTimeout + p 0 dispatcher + m (Lnet/minecraft/class_11827;)Ljava/lang/String; method_73966 getMotd + p 0 dispatcher + m (Lnet/minecraft/class_11827;)Lnet/minecraft/class_12094; method_73973 getOperatorUserPermissionLevel + p 0 dispatcher + m (Lnet/minecraft/class_11827;)Z method_73971 getAcceptTransfers + p 0 dispatcher + m (Lnet/minecraft/class_11827;ZLnet/minecraft/class_11838;)Z method_73945 setEnforceAllowlist + p 1 enforceAllowlist + p 2 remote + p 0 dispatcher + m (Lnet/minecraft/class_11827;ILnet/minecraft/class_11838;)I method_73944 setPauseWhenEmptySeconds + p 2 remote + p 0 dispatcher + p 1 pauseWhenEmptySeconds + m (Lnet/minecraft/class_11827;ZLnet/minecraft/class_11838;)Z method_73957 setAcceptTransfers + p 2 remote + p 1 acceptTransfers + p 0 dispatcher + m (Lnet/minecraft/class_11827;ILnet/minecraft/class_11838;)I method_73956 setSimulationDistance + p 2 remote + p 1 simulationDistance + p 0 dispatcher + m (Lnet/minecraft/class_11827;ZLnet/minecraft/class_11838;)Z method_73951 setAllowFlight + p 2 remote + p 1 allowFlight + p 0 dispatcher + m (Lnet/minecraft/class_11827;)Z method_73975 getStatusReplies + p 0 dispatcher + m (Lnet/minecraft/class_11827;ILnet/minecraft/class_11838;)I method_73950 setSpawnProtectionRadius + p 2 remote + p 1 spawnProtectionRadius + p 0 dispatcher + m (Lnet/minecraft/class_11827;ZLnet/minecraft/class_11838;)Z method_73963 setStatusReplies + p 2 remote + p 1 statusReplies + p 0 dispatcher + m (Lnet/minecraft/class_11827;)Z method_73961 getAllowFlight + p 0 dispatcher + m (Lnet/minecraft/class_11827;)Z method_73967 getForceGameMode + p 0 dispatcher + m (Lnet/minecraft/class_11827;ZLnet/minecraft/class_11838;)Z method_73948 setUseAllowlist + p 2 remote + p 0 dispatcher + p 1 useAllowlist + m (Lnet/minecraft/class_11827;Ljava/lang/String;Lnet/minecraft/class_11838;)Ljava/lang/String; method_73941 setMotd + p 0 dispatcher + p 2 remote + p 1 motd + m (Lnet/minecraft/class_11827;ILnet/minecraft/class_11838;)I method_73947 setPlayerIdleTimeout + p 1 playerIdleTimeout + p 2 remote + p 0 dispatcher + m (Lnet/minecraft/class_11827;)Z method_73949 getUseAllowlist + p 0 dispatcher + m (Lnet/minecraft/class_11827;)Z method_73937 getAutosave + p 0 dispatcher + m (Lnet/minecraft/class_11827;ILnet/minecraft/class_11838;)I method_73959 setStatusHeartbeatInterval + p 2 remote + p 1 statusHeartbeatInterval + p 0 dispatcher + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_1934;Lnet/minecraft/class_11838;)Lnet/minecraft/class_1934; method_73940 setGameMode + p 2 remote + p 1 gameMode + p 0 dispatcher + m (Lnet/minecraft/class_11827;)I method_73955 getPauseWhenEmptySeconds + p 0 dispatcher + m (Lnet/minecraft/class_11827;)Lnet/minecraft/class_1267; method_73943 getDifficulty + p 0 dispatcher + m (Lnet/minecraft/class_11827;ZLnet/minecraft/class_11838;)Z method_73960 setHideOnlinePlayers + p 2 remote + p 1 hideOnlinePlayers + p 0 dispatcher + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_1267;Lnet/minecraft/class_11838;)Lnet/minecraft/class_1267; method_73939 setDifficulty + p 2 remote + p 1 difficulty + p 0 dispatcher + m (Lnet/minecraft/class_11827;)I method_73969 getViewDistance + p 0 dispatcher + m (Lnet/minecraft/class_11827;ILnet/minecraft/class_11838;)I method_73953 setViewDistance + p 1 viewDistance + p 0 dispatcher + p 2 remote + m (Lnet/minecraft/class_11827;ILnet/minecraft/class_11838;)I method_73965 setEntityBroadcastRange + p 0 dispatcher + p 2 remote + p 1 entityBroadcastRange + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_12094;Lnet/minecraft/class_11838;)Lnet/minecraft/class_12094; method_73962 setOperatorUserPermissionLevel + p 0 dispatcher + p 2 remote + m (Lnet/minecraft/class_11827;)Z method_73974 getHideOnlinePlayers + p 0 dispatcher + m (Lnet/minecraft/class_11827;ZLnet/minecraft/class_11838;)Z method_73942 setAutosave + p 2 remote + p 0 dispatcher + p 1 autosave + m (Lnet/minecraft/class_11827;ZLnet/minecraft/class_11838;)Z method_73954 setForceGameMode + p 2 remote + p 1 forceGameMode + p 0 dispatcher + m (Lnet/minecraft/class_11827;)Z method_73946 getEnforceAllowlist + p 0 dispatcher + m (Lnet/minecraft/class_11827;)Lnet/minecraft/class_1934; method_73968 getGameMode + p 0 dispatcher + m (Lnet/minecraft/class_11827;ILnet/minecraft/class_11838;)I method_73938 setMaxPlayers + p 1 maxPlayers + p 2 remote + p 0 dispatcher + m (Lnet/minecraft/class_11827;)I method_73970 getSimulationDistance + p 0 dispatcher + m (Lnet/minecraft/class_11827;)I method_73952 getMaxPlayers + p 0 dispatcher + m (Lnet/minecraft/class_11827;)I method_73972 getStatusHeartbeatInterval + p 0 dispatcher +c net/minecraft/class_11864 net/minecraft/unused/packageinfo/PackageInfo11864 +c net/minecraft/class_10532 net/minecraft/client/render/item/property/select/LocalTimeProperty + f Lcom/mojang/serialization/Codec; field_55515 TIME_ZONE_CODEC + f Ljava/lang/String; field_55521 currentTimeFormatted + f Lnet/minecraft/class_10532$class_10549; field_55565 data + f Lcom/ibm/icu/text/DateFormat; field_55519 dateFormat + f Ljava/lang/String; field_55512 DEFAULT_FORMATTED_TIME + f Lnet/minecraft/class_10494$class_10495; field_55513 TYPE + f J field_55514 MILLIS_PER_SECOND + f J field_55520 nextUpdateTime + f Lcom/mojang/serialization/Codec; field_56374 VALUE_CODEC + f Lcom/mojang/serialization/MapCodec; field_55564 DATA_CODEC + m (Lcom/ibm/icu/util/ULocale;Lcom/ibm/icu/util/TimeZone;)Lcom/ibm/icu/util/Calendar; method_65839 method_65839 + p 1 timeZone + m (Lnet/minecraft/class_10532$class_10549;)Lcom/mojang/serialization/DataResult; method_65917 validate + p 0 data + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_1309;ILnet/minecraft/class_811;)Ljava/lang/String; method_65841 getValue + m (Lnet/minecraft/class_10532$class_10549;)Ljava/util/Optional; method_65920 method_65920 + p 0 data + m ()Ljava/lang/String; method_65845 formatCurrentTime + m (Lnet/minecraft/class_10532;)Lcom/mojang/serialization/DataResult; method_65918 method_65918 + p 0 property + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_65919 method_65919 + p 0 format + m (Lnet/minecraft/class_10532$class_10549;)Ljava/lang/String; method_65922 method_65922 + p 0 data + m (Lnet/minecraft/class_10532$class_10549;)Ljava/lang/String; method_65921 method_65921 + p 0 data + m (Ljava/lang/String;Ljava/lang/String;Ljava/util/Optional;)Lnet/minecraft/class_10532; method_65844 create + p 1 locale + p 2 timeZone + p 0 pattern + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65840 method_65840 + p 0 instance + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_65843 method_65843 + p 0 timeZone + m (Lnet/minecraft/class_10532$class_10549;Lcom/ibm/icu/text/DateFormat;)V + p 1 data + p 2 dateFormat +c net/minecraft/class_10532$class_10549 net/minecraft/client/render/item/property/select/LocalTimeProperty$Data + f Ljava/util/Optional; comp_3469 timeZone + f Ljava/lang/String; comp_3468 localeId + f Ljava/lang/String; comp_3467 format + m ()Ljava/util/Optional; comp_3469 timeZone + m ()Ljava/lang/String; comp_3467 format + m ()Ljava/lang/String; comp_3468 localeId + m (Ljava/lang/String;Ljava/lang/String;Ljava/util/Optional;)V + p 1 format + p 2 localeId + p 3 timeZone +c net/minecraft/class_10533 net/minecraft/client/render/item/model/special/HangingSignModelRenderer + f Lnet/minecraft/class_4730; field_55523 texture + f Lnet/minecraft/class_3879$class_9948; field_55522 model + f Lnet/minecraft/class_11701; field_61857 spriteHolder + m (Lnet/minecraft/class_11701;Lnet/minecraft/class_3879$class_9948;Lnet/minecraft/class_4730;)V + p 1 spriteHolder + p 2 model + p 3 texture +c net/minecraft/class_10533$class_10534 net/minecraft/client/render/item/model/special/HangingSignModelRenderer$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55524 CODEC + f Ljava/util/Optional; comp_3441 texture + f Lnet/minecraft/class_4719; comp_3440 woodType + m (Lnet/minecraft/class_4719;)V + p 1 woodType + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65849 method_65849 + p 0 instance + m ()Ljava/util/Optional; comp_3441 texture + m ()Lnet/minecraft/class_4719; comp_3440 woodType + m (Lnet/minecraft/class_4719;Ljava/util/Optional;)V + p 1 woodType + p 2 texture +c net/minecraft/class_10530 net/minecraft/client/render/item/property/bool/KeybindDownProperty + f Lcom/mojang/serialization/Codec; field_55510 KEY_BINDING_CODEC + f Lcom/mojang/serialization/MapCodec; field_55509 CODEC + f Lnet/minecraft/class_304; comp_3439 keybind + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_65835 method_65835 + p 0 id + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65834 method_65834 + p 0 instance + m ()Lnet/minecraft/class_304; comp_3439 keybind + m (Lnet/minecraft/class_304;)V + p 1 keybind +c net/minecraft/class_11861 net/minecraft/server/dedicated/management/dispatch/ServerRpcDispatcher + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11861$class_11863;Lnet/minecraft/class_11838;)Z method_73979 systemMessage + p 2 remote + p 0 dispatcher + p 1 message + m (Lnet/minecraft/class_11827;)Lnet/minecraft/class_11861$class_11862; method_73977 status + p 0 dispatcher + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;)Z method_73978 stop + p 1 remote + p 0 dispatcher + m (Lnet/minecraft/class_11827;ZLnet/minecraft/class_11838;)Z method_73980 save + p 0 dispatcher + p 1 flush + p 2 remote +c net/minecraft/class_11861$class_11863 net/minecraft/server/dedicated/management/dispatch/ServerRpcDispatcher$RpcSystemMessage + f Lcom/mojang/serialization/Codec; field_62416 CODEC + f Z comp_4752 overlay + f Ljava/util/Optional; comp_4753 receivingPlayers + f Lnet/minecraft/class_11853; comp_4751 message + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73983 method_73983 + p 0 instance + m ()Z comp_4752 overlay + m ()Lnet/minecraft/class_11853; comp_4751 message + m ()Ljava/util/Optional; comp_4753 receivingPlayers + m (Lnet/minecraft/class_11853;ZLjava/util/Optional;)V + p 1 message + p 2 overlay + p 3 receivingPlayers +c net/minecraft/class_11861$class_11862 net/minecraft/server/dedicated/management/dispatch/ServerRpcDispatcher$RpcStatus + f Lnet/minecraft/class_11861$class_11862; field_62415 EMPTY + f Lcom/mojang/serialization/Codec; field_62414 CODEC + f Z comp_4748 started + f Lnet/minecraft/class_2926$class_2930; comp_4750 version + f Ljava/util/List; comp_4749 players + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73982 method_73982 + p 0 instance + m ()Lnet/minecraft/class_2926$class_2930; comp_4750 version + m ()Z comp_4748 started + m ()Ljava/util/List; comp_4749 players + m (ZLjava/util/List;Lnet/minecraft/class_2926$class_2930;)V + p 1 started + p 2 players + p 3 version +c net/minecraft/class_10531 net/minecraft/client/render/item/property/select/ContextEntityTypeProperty + f Lnet/minecraft/class_10494$class_10495; field_55511 TYPE + f Lcom/mojang/serialization/Codec; field_56370 VALUE_CODEC + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_1309;ILnet/minecraft/class_811;)Lnet/minecraft/class_5321; method_65837 getValue +c net/minecraft/class_11868 net/minecraft/unused/packageinfo/PackageInfo11868 +c net/minecraft/class_11867 net/minecraft/server/dedicated/management/network/WebSocketFrameToJsonElementDecoder + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Ljava/util/List;)V decode decode + p 3 out + p 2 frame + p 1 context + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/handler/codec/http/websocketx/TextWebSocketFrame;Ljava/util/List;)V method_73985 decode +c net/minecraft/class_10537 net/minecraft/client/texture/ReloadableTexture + f Lnet/minecraft/class_2960; field_55529 textureId + m (Lnet/minecraft/class_1011;)V method_65856 load + p 1 image + m (Lnet/minecraft/class_3300;)Lnet/minecraft/class_10539; method_65809 loadContents + p 1 resourceManager + m (Lnet/minecraft/class_10539;)V method_65857 reload + p 1 textureContents + m (Lnet/minecraft/class_2960;)V + p 1 textureId + m ()Lnet/minecraft/class_2960; method_65859 getId +c net/minecraft/class_11866 net/minecraft/server/dedicated/management/network/JsonElementToWebSocketFrameEncoder + m (Lio/netty/channel/ChannelHandlerContext;Lcom/google/gson/JsonElement;Ljava/util/List;)V method_73984 encode + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;Ljava/util/List;)V encode encode + p 3 out + p 1 context + p 2 element +c net/minecraft/class_11865 net/minecraft/unused/packageinfo/PackageInfo11865 +c net/minecraft/class_10535 net/minecraft/client/render/item/model/special/SignModelRenderer + f Lnet/minecraft/class_4730; field_55527 texture + f Lnet/minecraft/class_3879$class_9948; field_55526 model + f Lnet/minecraft/class_11701; field_61859 spriteHolder + m (Lnet/minecraft/class_11701;Lnet/minecraft/class_3879$class_9948;Lnet/minecraft/class_4730;)V + p 2 model + p 1 spriteHolder + p 3 texture +c net/minecraft/class_10535$class_10536 net/minecraft/client/render/item/model/special/SignModelRenderer$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55528 CODEC + f Lnet/minecraft/class_4719; comp_3443 woodType + f Ljava/util/Optional; comp_3444 texture + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65853 method_65853 + p 0 instance + m (Lnet/minecraft/class_4719;)V + p 1 woodType + m ()Lnet/minecraft/class_4719; comp_3443 woodType + m ()Ljava/util/Optional; comp_3444 texture + m (Lnet/minecraft/class_4719;Ljava/util/Optional;)V + p 1 woodType + p 2 texture +c net/minecraft/class_10518 net/minecraft/client/render/item/model/special/TridentModelRenderer + f Lnet/minecraft/class_613; field_55456 model + m (Lnet/minecraft/class_613;)V + p 1 model +c net/minecraft/class_10518$class_10519 net/minecraft/client/render/item/model/special/TridentModelRenderer$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55457 CODEC +c net/minecraft/class_11849 net/minecraft/server/dedicated/management/dispatch/IpBansRpcDispatcher + f Ljava/lang/String; field_62405 DEFAULT_SOURCE + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;Lnet/minecraft/class_11849$class_11850;)Ljava/util/List; method_73882 method_73882 + p 2 ipAddress + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11849$class_11851;Lnet/minecraft/class_11838;)Ljava/util/List; method_73887 banIp + p 2 remote + p 1 ipBanInfo + p 0 dispatcher + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11849$class_11850;Lnet/minecraft/class_11838;)Ljava/util/List; method_73885 banIpFromRpcEntry + p 0 dispatcher + p 2 remote + p 1 entry + m (Lnet/minecraft/class_11827;Ljava/util/List;Lnet/minecraft/class_11838;)Ljava/util/List; method_73893 remove + p 0 dispatcher + p 1 ipAddresses + p 2 remote + m (Lnet/minecraft/class_3222;)V method_73894 method_73894 + p 0 ipBannedPlayer + m (Lnet/minecraft/class_11827;Ljava/util/List;Lnet/minecraft/class_11838;)Ljava/util/List; method_73896 set + p 0 dispatcher + p 1 entries + p 2 remote + m (Lnet/minecraft/class_3222;)V method_73890 method_73890 + p 0 ipBanInfo + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;)Ljava/util/List; method_73881 clearIpBans + p 0 dispatcher + p 1 remote + m (Lnet/minecraft/class_11827;Ljava/util/List;Lnet/minecraft/class_11838;)Ljava/util/List; method_73888 add + p 0 dispatcher + p 1 entries + p 2 remote + m (Lnet/minecraft/class_11849$class_11852;)Z method_73889 method_73889 + p 0 ipBanInfo + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;Ljava/lang/String;)V method_73884 method_73884 + p 2 address + m (Ljava/util/Set;Lnet/minecraft/class_11849$class_11851;)Z method_73895 method_73895 + p 1 ipBanInfo + m (Lnet/minecraft/class_11827;)Ljava/util/List; method_73880 get + p 0 dispatcher + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11849$class_11851;)Ljava/util/stream/Stream; method_73886 method_73886 + p 1 newAddedIpBanInfo + m (Ljava/util/Set;Lnet/minecraft/class_11849$class_11851;)Z method_73897 method_73897 + p 1 ipBanInfo + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;Lnet/minecraft/class_11849$class_11851;)V method_73883 method_73883 + p 2 ipBanInfoToAdd + m (Ljava/util/Set;Lnet/minecraft/class_11849$class_11851;)Z method_73891 method_73891 + p 1 ipBanInfo + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;Lnet/minecraft/class_11849$class_11851;)V method_73892 method_73892 + p 2 ipBanInfoToRemove +c net/minecraft/class_11849$class_11852 net/minecraft/server/dedicated/management/dispatch/IpBansRpcDispatcher$IpBanData + f Ljava/lang/String; comp_4733 ipAddress + f Lcom/mojang/serialization/MapCodec; field_62407 CODEC + f Ljava/util/Optional; comp_4734 reason + f Ljava/util/Optional; comp_4735 source + f Ljava/util/Optional; comp_4736 expires + m ()Ljava/lang/String; comp_4733 ipAddress + m (Lnet/minecraft/class_3320;)Lnet/minecraft/class_11849$class_11852; method_73904 fromBannedIpEntry + p 0 bannedIpEntry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73905 method_73905 + p 0 instance + m (Lnet/minecraft/class_11849$class_11851;)Lnet/minecraft/class_11849$class_11852; method_73903 fromIpBanInfo + p 0 ipBanInfo + m ()Lnet/minecraft/class_11849$class_11851; method_73906 toIpBanInfo + m ()Ljava/util/Optional; comp_4736 expires + m ()Ljava/util/Optional; comp_4735 source + m ()Ljava/util/Optional; comp_4734 reason + m (Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 ipAddress + p 2 reason + p 3 source + p 4 expires +c net/minecraft/class_11849$class_11851 net/minecraft/server/dedicated/management/dispatch/IpBansRpcDispatcher$IpBanInfo + f Ljava/lang/String; comp_4729 ipAddress + f Ljava/util/Optional; comp_4732 expires + f Ljava/lang/String; comp_4730 reason + f Ljava/lang/String; comp_4731 source + m ()Ljava/lang/String; comp_4729 ipAddress + m ()Lnet/minecraft/class_3320; method_73902 toBannedIpEntry + m (Lnet/minecraft/class_3320;)Lnet/minecraft/class_11849$class_11851; method_73901 fromBannedIpEntry + p 0 bannedIpEntry + m ()Ljava/util/Optional; comp_4732 expires + m ()Ljava/lang/String; comp_4731 source + m ()Ljava/lang/String; comp_4730 reason + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Optional;)V + p 1 ipAddress + p 2 reason + p 3 source + p 4 expires +c net/minecraft/class_11849$class_11850 net/minecraft/server/dedicated/management/dispatch/IpBansRpcDispatcher$IncomingRpcIpBanData + f Lcom/mojang/serialization/MapCodec; field_62406 CODEC + f Ljava/util/Optional; comp_4725 ipAddress + f Ljava/util/Optional; comp_4726 reason + f Ljava/util/Optional; comp_4727 source + f Ljava/util/Optional; comp_4728 expires + f Ljava/util/Optional; comp_4724 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73899 method_73899 + p 0 instance + m (Lnet/minecraft/class_3222;)Lnet/minecraft/class_11849$class_11851; method_73898 toIpBanInfoFromPlayer + p 1 player + m ()Ljava/util/Optional; comp_4725 ipAddress + m ()Lnet/minecraft/class_11849$class_11851; method_73900 toIpBanInfoOrNull + m ()Ljava/util/Optional; comp_4724 player + m ()Ljava/util/Optional; comp_4728 expires + m ()Ljava/util/Optional; comp_4727 source + m ()Ljava/util/Optional; comp_4726 reason + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 ipAddress + p 3 reason + p 4 source + p 5 expires +c net/minecraft/class_11848 net/minecraft/server/dedicated/management/RpcException + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/class_10517 net/minecraft/client/render/item/model/special/SpecialModelTypes + f Ljava/util/Map; field_55454 BLOCK_TO_MODEL_TYPE + f Lcom/mojang/serialization/Codec; field_55452 CODEC + f Lnet/minecraft/class_5699$class_10388; field_55453 ID_MAPPER + f Lnet/minecraft/class_10502$class_10503; field_55455 CHRISTMAS_CHEST + m (Lnet/minecraft/class_10515$class_11695;Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_2248;Lnet/minecraft/class_10515$class_10516;)V method_65715 method_65715 + p 3 modelType + p 2 block + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_65713 method_65713 + p 0 codec + m ()V method_65712 bootstrap + m (Lnet/minecraft/class_10515$class_11695;)Ljava/util/Map; method_65714 buildBlockToModelTypeMap +c net/minecraft/class_11853 net/minecraft/server/dedicated/management/RpcKickReason + f Lcom/mojang/serialization/Codec; field_62408 CODEC + f Ljava/util/Optional; comp_4739 translatableParams + f Ljava/util/Optional; comp_4738 translatable + f Ljava/util/Optional; comp_4737 literal + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73907 method_73907 + p 0 instance + m ()Ljava/util/Optional; method_74507 toText + m ()Ljava/util/Optional; comp_4737 literal + m ()Ljava/util/Optional; comp_4738 translatable + m ()Ljava/util/Optional; comp_4739 translatableParams + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 literal + p 2 translatable + p 3 translatableParams +c net/minecraft/class_10521 net/minecraft/client/item/ItemAssetsLoader + f Lnet/minecraft/class_7654; field_55571 FINDER + f Lorg/slf4j/Logger; field_55460 LOGGER + m (Ljava/util/List;Lnet/minecraft/class_5455$class_6890;Ljava/util/concurrent/Executor;Lnet/minecraft/class_2960;Lnet/minecraft/class_3298;)V method_65931 method_65931 + p 4 itemResource + p 3 itemId + m (Lnet/minecraft/class_10676;Lnet/minecraft/class_10434;)Lnet/minecraft/class_10434; method_67292 method_67292 + p 1 itemAsset + m (Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_65929 load + p 1 executor + p 0 resourceManager + m (Lnet/minecraft/class_5455$class_6890;Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletionStage; method_65932 method_65932 + p 2 itemAssets + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3298;Lcom/mojang/serialization/DataResult$Error;)V method_65927 method_65927 + p 2 error + m (Ljava/util/List;)Lnet/minecraft/class_10521$class_10522; method_65930 method_65930 + p 0 definitions +c net/minecraft/class_10521$class_10523 net/minecraft/client/item/ItemAssetsLoader$Definition + f Lnet/minecraft/class_2960; comp_3427 id + f Lnet/minecraft/class_10434; comp_3471 clientItemInfo + m ()Lnet/minecraft/class_10434; comp_3471 clientItemInfo + m ()Lnet/minecraft/class_2960; comp_3427 id + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_10434;)V + p 1 id + p 2 clientItemInfo +c net/minecraft/class_10521$class_10522 net/minecraft/client/item/ItemAssetsLoader$Result + f Ljava/util/Map; comp_3426 contents + m ()Ljava/util/Map; comp_3426 contents + m (Ljava/util/Map;)V + p 1 contents +c net/minecraft/class_10520 net/minecraft/unused/packageinfo/PackageInfo10520 +c net/minecraft/class_11857 net/minecraft/server/dedicated/management/dispatch/PlayersRpcDispatcher + f Lnet/minecraft/class_2561; field_62410 DEFAULT_KICK_REASON + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11819;)Lnet/minecraft/class_3222; method_73932 getPlayer + p 0 dispatcher + p 1 player + m (Lnet/minecraft/class_11827;Ljava/util/List;Lnet/minecraft/class_11838;)Ljava/util/List; method_73933 kick + p 0 dispatcher + p 2 remote + m (Lnet/minecraft/class_11827;)Ljava/util/List; method_73931 get + p 0 dispatcher +c net/minecraft/class_11857$class_11858 net/minecraft/server/dedicated/management/dispatch/PlayersRpcDispatcher$RpcEntry + f Lcom/mojang/serialization/MapCodec; field_62411 CODEC + f Ljava/util/Optional; comp_4747 message + f Lnet/minecraft/class_11819; comp_4746 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73934 method_73934 + p 0 instance + m ()Ljava/util/Optional; comp_4747 message + m ()Lnet/minecraft/class_11819; comp_4746 player + m (Lnet/minecraft/class_11819;Ljava/util/Optional;)V + p 1 player + p 2 message +c net/minecraft/class_10526 net/minecraft/client/render/model/ResolvableModel + m (Lnet/minecraft/class_10526$class_10103;)V method_62326 resolve + p 1 resolver +c net/minecraft/class_10526$class_10103 net/minecraft/client/render/model/ResolvableModel$Resolver + m (Lnet/minecraft/class_2960;)V markDependency markDependency + p 1 id +c net/minecraft/class_11854 net/minecraft/server/dedicated/management/dispatch/OperatorsRpcDispatcher + m (Lnet/minecraft/class_11827;)Ljava/util/List; method_73908 get + p 0 dispatcher + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;)Ljava/util/List; method_73910 clear + p 0 dispatcher + p 1 remote + m (Lnet/minecraft/class_3327;)Lnet/minecraft/class_11854$class_11855; method_73917 method_73917 + p 0 operator + m (Ljava/util/Set;Lnet/minecraft/class_11854$class_11855;)Z method_73925 method_73925 + p 1 operator + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11854$class_11856;)Ljava/util/concurrent/CompletableFuture; method_73920 method_73920 + p 1 operator + m (Ljava/util/Set;Lnet/minecraft/class_11854$class_11855;)Z method_73918 method_73918 + p 1 entry + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;Lnet/minecraft/class_11854$class_11855;)V method_73919 method_73919 + p 2 operator + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11854$class_11856;)Ljava/util/concurrent/CompletableFuture; method_73913 method_73913 + p 1 operator + m (Lnet/minecraft/class_11854$class_11856;Lnet/minecraft/class_11560;)Lnet/minecraft/class_11854$class_11855; method_73915 method_73915 + p 1 playerEntry + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;Lnet/minecraft/class_11854$class_11855;)V method_73926 method_73926 + p 2 operator + m (Lnet/minecraft/class_3327;)Z method_73928 method_73928 + p 0 operator + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;Lnet/minecraft/class_11854$class_11855;)V method_73911 method_73911 + p 2 operator + m (Lnet/minecraft/class_11854$class_11856;Lnet/minecraft/class_11560;)Lnet/minecraft/class_11854$class_11855; method_73922 method_73922 + p 1 playerEntry + m (Lnet/minecraft/class_11854$class_11856;Ljava/util/Optional;)Ljava/util/Optional; method_73923 method_73923 + p 1 optionalPlayerEntry + m (Lnet/minecraft/class_3327;)Z method_73924 method_73924 + p 0 entry + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;Lnet/minecraft/class_11560;)V method_73912 method_73912 + p 2 player + m (Lnet/minecraft/class_11854$class_11856;Ljava/util/Optional;)Ljava/util/Optional; method_73916 method_73916 + p 1 optionalPlayerEntry + m (Lnet/minecraft/class_11827;Ljava/util/List;Lnet/minecraft/class_11838;)Ljava/util/List; method_73921 add + p 1 operators + p 0 dispatcher + p 2 remote + m (Lnet/minecraft/class_11827;Ljava/util/List;Lnet/minecraft/class_11838;)Ljava/util/List; method_73927 set + p 2 remote + p 1 operators + p 0 dispatcher + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11819;)Ljava/util/concurrent/CompletableFuture; method_73909 method_73909 + p 1 player + m (Lnet/minecraft/class_11827;Ljava/util/List;Lnet/minecraft/class_11838;)Ljava/util/List; method_73914 remove + p 2 remote + p 1 players + p 0 dispatcher +c net/minecraft/class_11854$class_11856 net/minecraft/server/dedicated/management/dispatch/OperatorsRpcDispatcher$RpcEntry + f Lcom/mojang/serialization/MapCodec; field_62409 CODEC + f Ljava/util/Optional; comp_4744 permissionLevel + f Ljava/util/Optional; comp_4745 bypassesPlayerLimit + f Lnet/minecraft/class_11819; comp_4743 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73930 method_73930 + p 0 instance + m (Lnet/minecraft/class_3327;)Lnet/minecraft/class_11854$class_11856; method_73929 of + p 0 operator + m ()Lnet/minecraft/class_11819; comp_4743 player + m ()Ljava/util/Optional; comp_4745 bypassesPlayerLimit + m ()Ljava/util/Optional; comp_4744 permissionLevel + m (Lnet/minecraft/class_11819;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 permissionLevel + p 3 bypassesPlayerLimit +c net/minecraft/class_11854$class_11855 net/minecraft/server/dedicated/management/dispatch/OperatorsRpcDispatcher$ConfigEntry + f Lnet/minecraft/class_11560; comp_4740 user + f Ljava/util/Optional; comp_4741 permissionLevel + f Ljava/util/Optional; comp_4742 bypassesPlayerLimit + m ()Lnet/minecraft/class_11560; comp_4740 user + m ()Ljava/util/Optional; comp_4741 permissionLevel + m ()Ljava/util/Optional; comp_4742 bypassesPlayerLimit + m (Lnet/minecraft/class_11560;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 user + p 2 permissionLevel + p 3 bypassesPlayerLimit +c net/minecraft/class_1584 net/minecraft/entity/mob/RavagerEntity + f I field_7302 stunTick + f Ljava/util/function/Predicate; field_54424 CAN_KNOCK_BACK_WITH_ROAR + f Ljava/util/function/Predicate; field_54425 CAN_KNOCK_BACK_WITH_ROAR_NO_MOB_GRIEFING + f Ljava/util/function/Predicate; field_54426 CAN_KNOCK_BACK_WITH_ROAR_ON_CLIENT + f I field_57688 DEFAULT_ROAR_TICK + f I field_57687 DEFAULT_STUN_TICK + f I field_57686 DEFAULT_ATTACK_TICK + f F field_30483 STUNNED_PARTICLE_BLUE + f I field_7305 roarTick + f F field_30484 STUNNED_PARTICLE_GREEN + f F field_30485 STUNNED_PARTICLE_RED + f I field_7303 attackTick + m ()I method_7070 getAttackTick + m ()I method_7072 getRoarTick + m ()V method_7071 roar + m ()V method_7073 spawnStunnedParticles + m ()V method_71619 roarKnockBackOnClient + m (Lnet/minecraft/class_1297;)Z method_64465 method_64465 + p 0 entity + m (Lnet/minecraft/class_1297;)V method_7068 knockBack + p 1 entity + m (Lnet/minecraft/class_1297;)Z method_64464 method_64464 + p 0 entity + m (Lnet/minecraft/class_1309;)Z method_64466 method_64466 + p 0 entity + m ()Lnet/minecraft/class_5132$class_5133; method_26920 createRavagerAttributes + m ()V method_71620 addRoarParticlesOnClient + m ()I method_7074 getStunTick + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_39955 method_39955 + p 1 world + p 0 entity +c net/minecraft/class_1581 net/minecraft/entity/mob/IllusionerEntity + f [[Lnet/minecraft/class_243; field_7297 mirrorCopyOffsets + f I field_7296 mirrorSpellTimer + m (F)[Lnet/minecraft/class_243; method_7065 getMirrorCopyOffsets + p 1 tickProgress + m ()Lnet/minecraft/class_5132$class_5133; method_26916 createIllusionerAttributes +c net/minecraft/class_1581$class_1582 net/minecraft/entity/mob/IllusionerEntity$BlindTargetGoal + f I field_7298 targetId +c net/minecraft/class_1581$class_1583 net/minecraft/entity/mob/IllusionerEntity$GiveInvisibilityGoal +c net/minecraft/class_1588 net/minecraft/entity/mob/HostileEntity + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_5425;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20680 canSpawnInDark + p 0 type + p 1 world + p 2 spawnReason + p 3 pos + p 4 random + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20681 canSpawnIgnoreLightLevel + p 0 type + p 1 world + p 2 spawnReason + p 3 pos + p 4 random + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_5425;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_76104 canSpawnInDarkUnderSky + p 4 random + p 2 spawnReason + p 3 pos + p 0 type + p 1 world + m ()V method_16827 updateDespawnCounter + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20679 isSpawnDark + p 2 random + p 0 world + p 1 pos + m ()Lnet/minecraft/class_5132$class_5133; method_26918 createHostileAttributes + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1657;)Z method_7076 isAngryAt + p 2 player + p 1 world +c net/minecraft/class_11802 net/minecraft/server/dedicated/management/IncomingRpcMethods + m (Lnet/minecraft/class_2378;)V method_73641 registerServer + p 0 registry + m (Lnet/minecraft/class_2378;)V method_73642 registerProperties + p 0 registry + m (Lnet/minecraft/class_11827;)Lnet/minecraft/class_11839$class_11842; method_73634 method_73634 + p 0 dispatcher + m (Lnet/minecraft/class_2378;)V method_73643 registerGameRule + p 0 registry + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_11796; method_73635 registerAndGetDefault + p 0 registry + m (Lnet/minecraft/class_2378;)V method_73640 registerOperators + p 0 registry + m (Lnet/minecraft/class_2378;)V method_73638 registerIpBans + p 0 registry + m (Lnet/minecraft/class_2378;)V method_73639 registerPlayers + p 0 registry + m (Lnet/minecraft/class_2378;)V method_73636 registerAllowlist + p 0 registry + m (Lnet/minecraft/class_2378;)V method_73637 registerBans + p 0 registry +c net/minecraft/class_1590 net/minecraft/entity/mob/ZombifiedPiglinEntity + f Lnet/minecraft/class_10583; field_25381 angryAt + f Lnet/minecraft/class_6019; field_25609 ANGER_PASSING_COOLDOWN_RANGE + f Lnet/minecraft/class_4048; field_47812 BABY_BASE_DIMENSIONS + f I field_25608 angerPassingCooldown + f Lnet/minecraft/class_6019; field_25382 ANGRY_SOUND_DELAY_RANGE + f Lnet/minecraft/class_6019; field_25379 ANGER_TIME_RANGE + f I field_7308 angrySoundDelay + f J field_63378 angerEndTime + f Lnet/minecraft/class_1322; field_7307 ATTACKING_SPEED_BOOST + f Lnet/minecraft/class_2960; field_7311 ATTACKING_SPEED_MODIFIER_ID + m (Lnet/minecraft/class_1590;)Z method_29939 method_29939 + p 0 zombifiedPiglin + m (Lnet/minecraft/class_1590;)Z method_29938 method_29938 + p 1 zombifiedPiglin + m (Lnet/minecraft/class_1590;)V method_29937 method_29937 + p 1 zombifiedPiglin + m ()V method_29942 angerNearbyZombifiedPiglins + m ()V method_29941 tickAngerPassing + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20682 canSpawn + p 4 random + p 2 spawnReason + p 3 pos + p 0 type + p 1 world + m (Lnet/minecraft/class_1590;)Z method_29940 method_29940 + p 1 zombifiedPiglin + m ()V method_29533 playAngrySound + m ()V method_30080 tickAngrySound + m ()Lnet/minecraft/class_5132$class_5133; method_26941 createZombifiedPiglinAttributes +c net/minecraft/class_1593 net/minecraft/entity/mob/PhantomEntity + f Lnet/minecraft/class_243; field_7314 targetPosition + f Lnet/minecraft/class_1593$class_1594; field_7315 movementType + f Lnet/minecraft/class_2338; field_7312 circlingCenter + f I field_28641 WING_FLAP_TICKS + f Lnet/minecraft/class_2940; field_7313 SIZE + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_4051;)Z method_64463 testTargetPredicate + p 1 world + p 2 target + p 3 predicate + m (I)V method_7091 setPhantomSize + p 1 size + m ()V method_7097 onSizeChanged + m ()I method_7084 getPhantomSize + m ()I method_33588 getWingFlapTickOffset +c net/minecraft/class_1593$class_1595 net/minecraft/entity/mob/PhantomEntity$FindTargetGoal + f I field_7320 delay + f Lnet/minecraft/class_4051; field_18130 PLAYERS_IN_RANGE_PREDICATE +c net/minecraft/class_1593$class_1596 net/minecraft/entity/mob/PhantomEntity$StartAttackGoal + f I field_7322 cooldown + m ()V method_7102 startSwoop +c net/minecraft/class_1593$class_1594 net/minecraft/entity/mob/PhantomEntity$PhantomMovementType + f Lnet/minecraft/class_1593$class_1594; field_7318 CIRCLE + f Lnet/minecraft/class_1593$class_1594; field_7317 SWOOP +c net/minecraft/class_1593$class_1599 net/minecraft/entity/mob/PhantomEntity$PhantomLookControl +c net/minecraft/class_1593$class_1600 net/minecraft/entity/mob/PhantomEntity$PhantomMoveControl + f F field_7331 targetSpeed + c The movement speed that the phantom tends towards + m (Lnet/minecraft/class_1593;Lnet/minecraft/class_1308;)V + p 2 owner +c net/minecraft/class_1593$class_1597 net/minecraft/entity/mob/PhantomEntity$PhantomBodyControl + m (Lnet/minecraft/class_1593;Lnet/minecraft/class_1308;)V + p 2 entity +c net/minecraft/class_1593$class_1598 net/minecraft/entity/mob/PhantomEntity$CircleMovementGoal + f F field_7328 angle + f F field_7327 radius + f F field_7326 yOffset + f F field_7324 circlingDirection + m ()V method_7103 adjustDirection +c net/minecraft/class_1593$class_1601 net/minecraft/entity/mob/PhantomEntity$MovementGoal + m ()Z method_7104 isNearTarget +c net/minecraft/class_1593$class_1602 net/minecraft/entity/mob/PhantomEntity$SwoopMovementGoal + f I field_36305 CAT_CHECK_INTERVAL + f Z field_36306 catsNearby + f I field_36307 nextCatCheckAge +c net/minecraft/class_1589 net/minecraft/entity/mob/MagmaCubeEntity + m ()Lnet/minecraft/class_5132$class_5133; method_26917 createMagmaCubeAttributes + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20678 canMagmaCubeSpawn + p 0 type + p 1 world + p 2 spawnReason + p 3 pos + p 4 random +c net/minecraft/class_11817 net/minecraft/server/dedicated/management/RpcMethodInfo + f Ljava/lang/String; comp_4681 description + f Ljava/util/Optional; comp_4684 params + f Ljava/util/Optional; comp_4685 result + m (Ljava/lang/String;Lnet/minecraft/class_11818;Lnet/minecraft/class_11820;)V + p 1 description + p 2 param + p 3 result + m ()Lcom/mojang/serialization/MapCodec; method_75577 createCodec + m (Ljava/util/List;)Ljava/util/Optional; method_75574 getParameter + p 0 params + m (Ljava/util/Optional;)Ljava/util/List; method_75575 toParameterList + p 0 param + m ()Lcom/mojang/serialization/Codec; method_75576 createParamsCodec + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75573 method_75573 + p 0 instance + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_11817$class_12057; method_74848 toEntry + p 1 name + m ()Ljava/util/Optional; comp_4684 params + m ()Ljava/util/Optional; comp_4685 result + m ()Ljava/lang/String; comp_4681 description + m (Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 description + p 2 params + p 3 result +c net/minecraft/class_11817$class_12057 net/minecraft/server/dedicated/management/RpcMethodInfo$Entry + f Lnet/minecraft/class_2960; comp_4910 name + f Lnet/minecraft/class_11817; comp_4911 contents + f Lcom/mojang/serialization/Codec; field_63004 CODEC + m ()Lcom/mojang/serialization/Codec; method_75578 createCodec + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75579 method_75579 + p 0 instance + m ()Lnet/minecraft/class_2960; comp_4910 name + m ()Lnet/minecraft/class_11817; comp_4911 contents + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_11817;)V + p 1 name + p 2 contents +c net/minecraft/class_11815 net/minecraft/server/dedicated/management/PendingResponse + f Ljava/util/concurrent/CompletableFuture; comp_4674 resultFuture + f J comp_4675 timeoutTime + f Lnet/minecraft/class_6880$class_6883; comp_4673 method + m (J)Z method_73696 shouldTimeout + p 1 time + m (Lcom/google/gson/JsonElement;)V method_73697 handleResponse + p 1 result + m ()J comp_4675 timeoutTime + m ()Ljava/util/concurrent/CompletableFuture; comp_4674 resultFuture + m ()Lnet/minecraft/class_6880$class_6883; comp_4673 method + m (Lnet/minecraft/class_6880$class_6883;Ljava/util/concurrent/CompletableFuture;J)V + p 1 method + p 2 resultFuture + p 3 timeoutTime +c net/minecraft/class_11814 net/minecraft/server/dedicated/management/OutgoingRpcMethods + f Lnet/minecraft/class_6880$class_6883; field_62327 SERVER_SAVED + f Lnet/minecraft/class_6880$class_6883; field_62338 GAMERULE_UPDATED + f Lnet/minecraft/class_6880$class_6883; field_62326 SERVER_SAVING + f Lnet/minecraft/class_6880$class_6883; field_62337 BAN_REMOVED + f Lnet/minecraft/class_6880$class_6883; field_62325 SERVER_STOPPING + f Lnet/minecraft/class_6880$class_6883; field_62336 BAN_ADDED + f Lnet/minecraft/class_6880$class_6883; field_63173 SERVER_ACTIVITY + f Lnet/minecraft/class_6880$class_6883; field_62324 SERVER_STARTED + f Lnet/minecraft/class_6880$class_6883; field_62335 IP_BAN_REMOVED + f Lnet/minecraft/class_6880$class_6883; field_62329 PLAYER_LEFT + f Lnet/minecraft/class_6880$class_6883; field_62328 PLAYER_JOINED + f Lnet/minecraft/class_6880$class_6883; field_62339 SERVER_STATUS_HEARTBEAT + f Lnet/minecraft/class_6880$class_6883; field_62330 OPERATOR_ADDED + f Lnet/minecraft/class_6880$class_6883; field_62334 IP_BAN_ADDED + f Lnet/minecraft/class_6880$class_6883; field_62333 ALLOWLIST_REMOVED + f Lnet/minecraft/class_6880$class_6883; field_62332 ALLOWLIST_ADDED + f Lnet/minecraft/class_6880$class_6883; field_62331 OPERATOR_REMOVED +c net/minecraft/class_11819 net/minecraft/server/dedicated/management/RpcPlayer + f Lcom/mojang/serialization/MapCodec; field_62344 CODEC + f Ljava/util/Optional; comp_4690 name + f Ljava/util/Optional; comp_4689 id + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/class_11819; method_73710 of + p 0 profile + m (Lnet/minecraft/class_11560;)Lnet/minecraft/class_11819; method_73709 of + p 0 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73711 method_73711 + p 0 instance + m (Lnet/minecraft/class_3222;)Lnet/minecraft/class_11819; method_73708 of + p 0 player + m ()Ljava/util/Optional; comp_4689 id + m ()Ljava/util/Optional; comp_4690 name + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 id + p 2 name +c net/minecraft/class_11818 net/minecraft/server/dedicated/management/RpcRequestParameter + f Ljava/lang/String; comp_4686 name + f Z comp_4688 required + f Lnet/minecraft/class_11821; comp_4687 schema + m (Ljava/lang/String;Lnet/minecraft/class_11821;)V + p 2 schema + p 1 name + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75581 method_75581 + p 0 instance + m ()Lcom/mojang/serialization/MapCodec; method_75580 createCodec + m ()Lnet/minecraft/class_11821; comp_4687 schema + m ()Ljava/lang/String; comp_4686 name + m ()Z comp_4688 required + m (Ljava/lang/String;Lnet/minecraft/class_11821;Z)V + p 1 name + p 2 schema + p 3 required +c net/minecraft/class_2896 net/minecraft/network/listener/ClientLoginPacketListener + m (Lnet/minecraft/class_2905;)V method_12587 onHello + p 1 packet + m (Lnet/minecraft/class_2899;)V method_12586 onQueryRequest + p 1 packet + m (Lnet/minecraft/class_2909;)V method_12584 onDisconnect + p 1 packet + m (Lnet/minecraft/class_2907;)V method_12585 onCompression + p 1 packet + m (Lnet/minecraft/class_2901;)V method_12588 onSuccess + p 1 packet +c net/minecraft/class_1560 net/minecraft/entity/mob/EndermanEntity + f Lnet/minecraft/class_2940; field_7255 ANGRY + f I field_7254 ageWhenTargetSet + f Lnet/minecraft/class_2940; field_20618 PROVOKED + f Lnet/minecraft/class_2940; field_7257 CARRIED_BLOCK + f J field_63377 angerEndTime + f Lnet/minecraft/class_1322; field_7252 ATTACKING_SPEED_BOOST + f Lnet/minecraft/class_2960; field_7256 ATTACKING_SPEED_MODIFIER_ID + f Lnet/minecraft/class_6019; field_25378 ANGER_TIME_RANGE + f I field_7253 lastAngrySoundAge + f Lnet/minecraft/class_10583; field_25377 angryAt + m ()Z method_7029 teleportRandomly + m ()Z method_22330 isProvoked + m (Lnet/minecraft/class_1297;)Z method_7025 teleportTo + p 1 entity + m ()V method_22331 setProvoked + m (DDD)Z method_7024 teleportTo + p 5 z + p 3 y + p 1 x + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1282;Lnet/minecraft/class_1686;F)Z method_38068 damageFromPotion + p 4 amount + p 2 source + p 3 potion + p 1 world + m ()Lnet/minecraft/class_2680; method_7027 getCarriedBlock + m ()Z method_7028 isAngry + m (Lnet/minecraft/class_2680;)V method_7032 setCarriedBlock + p 1 state + m (Lnet/minecraft/class_1657;)Z method_7026 isPlayerStaring + p 1 player + m ()V method_7030 playAngrySound + m ()Lnet/minecraft/class_5132$class_5133; method_26910 createEndermanAttributes +c net/minecraft/class_1560$class_1561 net/minecraft/entity/mob/EndermanEntity$PlaceBlockGoal + f Lnet/minecraft/class_1560; field_7258 enderman + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)Z method_7033 canPlaceOn + p 6 pos + p 3 carriedState + p 2 posAbove + p 5 state + p 4 stateAbove + p 1 world + m (Lnet/minecraft/class_1560;)V + p 1 enderman +c net/minecraft/class_1560$class_4159 net/minecraft/entity/mob/EndermanEntity$ChasePlayerGoal + f Lnet/minecraft/class_1309; field_21513 target + f Lnet/minecraft/class_1560; field_18524 enderman + m (Lnet/minecraft/class_1560;)V + p 1 enderman +c net/minecraft/class_1560$class_1562 net/minecraft/entity/mob/EndermanEntity$TeleportTowardsPlayerGoal + f Lnet/minecraft/class_4051; field_18127 staringPlayerPredicate + f I field_7262 lookAtPlayerWarmup + f I field_7261 ticksSinceUnseenTeleport + f Lnet/minecraft/class_4051; field_18876 validTargetPredicate + f Lnet/minecraft/class_4051$class_10254; field_40735 angerPredicate + f Lnet/minecraft/class_1560; field_7260 enderman + f Lnet/minecraft/class_1657; field_7259 targetPlayer + m (Lnet/minecraft/class_1560;Lnet/minecraft/class_4051$class_10254;)V + p 1 enderman + p 2 targetPredicate + m (Lnet/minecraft/class_1560;Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_18449 method_18449 + p 2 world + p 1 playerEntity +c net/minecraft/class_1560$class_1563 net/minecraft/entity/mob/EndermanEntity$PickUpBlockGoal + f Lnet/minecraft/class_1560; field_7263 enderman + m (Lnet/minecraft/class_1560;)V + p 1 enderman +c net/minecraft/class_2897 net/minecraft/world/gen/chunk/FlatChunkGenerator + f Lnet/minecraft/class_3232; field_24510 config + f Lcom/mojang/serialization/MapCodec; field_24769 CODEC + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_28002 method_28002 + p 0 state + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_6880; method_46718 method_46718 + p 0 structureEntry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40158 method_40158 + p 0 instance + m ()Lnet/minecraft/class_3232; method_28545 getConfig + m (Lnet/minecraft/class_3232;)V + p 1 config +c net/minecraft/class_2890 net/minecraft/network/listener/ServerHandshakePacketListener + m (Lnet/minecraft/class_2889;)V method_12576 onHandshake + p 1 packet +c net/minecraft/class_2891 net/minecraft/world/gen/chunk/DebugChunkGenerator + f I field_13161 X_SIDE_LENGTH + f I field_13160 Z_SIDE_LENGTH + f Ljava/util/List; field_13163 BLOCK_STATES + f Lnet/minecraft/class_2680; field_13162 AIR + f Lnet/minecraft/class_2680; field_13164 BARRIER + f Lcom/mojang/serialization/MapCodec; field_24768 CODEC + m (Lnet/minecraft/class_2248;)Ljava/util/stream/Stream; method_12579 method_12579 + p 0 block + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40465 method_40465 + p 0 instance + m (II)Lnet/minecraft/class_2680; method_12578 getBlockState + p 0 x + p 1 z + m (Lnet/minecraft/class_6880$class_6883;)V + p 1 biomeEntry +c net/minecraft/class_1564 net/minecraft/entity/mob/EvokerEntity + f Lnet/minecraft/class_1472; field_7264 wololoTarget + m (Lnet/minecraft/class_1472;)V method_7036 setWololoTarget + p 1 wololoTarget + m ()Lnet/minecraft/class_1472; method_7039 getWololoTarget + m ()Lnet/minecraft/class_5132$class_5133; method_26912 createEvokerAttributes +c net/minecraft/class_1564$class_1567 net/minecraft/entity/mob/EvokerEntity$SummonVexGoal + f Lnet/minecraft/class_4051; field_18129 closeVexPredicate +c net/minecraft/class_1564$class_1566 net/minecraft/entity/mob/EvokerEntity$LookAtTargetOrWololoTarget +c net/minecraft/class_1564$class_1565 net/minecraft/entity/mob/EvokerEntity$ConjureFangsGoal + m (DDDDFI)V method_7044 conjureFangs + p 3 z + p 5 maxY + p 7 y + p 10 warmup + p 9 yaw + p 1 x +c net/minecraft/class_1564$class_1568 net/minecraft/entity/mob/EvokerEntity$WololoGoal + f Lnet/minecraft/class_4051; field_7269 convertibleSheepPredicate + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_7045 method_7045 + p 0 sheep + p 1 world +c net/minecraft/class_2893 net/minecraft/world/gen/GenerationStep +c net/minecraft/class_2893$class_2895 net/minecraft/world/gen/GenerationStep$Feature + f Ljava/lang/String; field_37682 name + f Lcom/mojang/serialization/Codec; field_37680 CODEC + f Lnet/minecraft/class_2893$class_2895; field_25187 STRONGHOLDS + f Lnet/minecraft/class_2893$class_2895; field_25186 LAKES + f Lnet/minecraft/class_2893$class_2895; field_13172 UNDERGROUND_STRUCTURES + f Lnet/minecraft/class_2893$class_2895; field_13173 SURFACE_STRUCTURES + f Lnet/minecraft/class_2893$class_2895; field_13174 RAW_GENERATION + f Lnet/minecraft/class_2893$class_2895; field_13176 UNDERGROUND_ORES + f Lnet/minecraft/class_2893$class_2895; field_13177 UNDERGROUND_DECORATION + f Lnet/minecraft/class_2893$class_2895; field_13178 VEGETAL_DECORATION + f Lnet/minecraft/class_2893$class_2895; field_13179 TOP_LAYER_MODIFICATION + f Lnet/minecraft/class_2893$class_2895; field_13171 LOCAL_MODIFICATIONS + f Lnet/minecraft/class_2893$class_2895; field_35182 FLUID_SPRINGS + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()Ljava/lang/String; method_41532 getName +c net/minecraft/class_1559 net/minecraft/entity/mob/EndermiteEntity + f I field_30463 DESPAWN_TIME + f I field_57682 DEFAULT_LIFETIME + f I field_7250 lifeTime + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20674 canSpawn + p 4 random + p 2 spawnReason + p 3 pos + p 0 type + p 1 world + m ()Lnet/minecraft/class_5132$class_5133; method_26911 createEndermiteAttributes +c net/minecraft/class_2889 net/minecraft/network/packet/c2s/handshake/HandshakeC2SPacket + f Ljava/lang/String; comp_1564 address + f Lnet/minecraft/class_8592; comp_1566 intendedState + f I comp_1563 protocolVersion + f I field_33372 MAX_ADDRESS_LENGTH + f I comp_1565 port + f Lnet/minecraft/class_9139; field_48229 CODEC + m (Lnet/minecraft/class_2540;)V method_56007 write + p 1 buf + m (Lnet/minecraft/class_2890;)V method_12575 apply + m ()Ljava/lang/String; comp_1564 address + m ()Lnet/minecraft/class_8592; comp_1566 intendedState + m ()I comp_1563 protocolVersion + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()I comp_1565 port + m (ILjava/lang/String;ILnet/minecraft/class_8592;)V + p 1 protocolVersion + p 2 address + p 3 port + p 4 intendedState +c net/minecraft/class_11820 net/minecraft/server/dedicated/management/RpcResponseResult + f Ljava/lang/String; comp_4691 name + f Lnet/minecraft/class_11821; comp_4692 schema + m ()Lcom/mojang/serialization/Codec; method_75582 getCodec + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_75583 method_75583 + p 0 instance + m ()Ljava/lang/String; comp_4691 name + m ()Lnet/minecraft/class_11821; comp_4692 schema + m (Ljava/lang/String;Lnet/minecraft/class_11821;)V + p 1 name + p 2 schema +c net/minecraft/class_11824 net/minecraft/unused/packageinfo/PackageInfo11824 +c net/minecraft/class_11822 net/minecraft/server/dedicated/management/schema/RpcSchemaEntry + f Ljava/net/URI; comp_4698 reference + f Lnet/minecraft/class_11821; comp_4699 schema + f Ljava/lang/String; comp_4912 name + m ()Ljava/net/URI; comp_4698 reference + m ()Lnet/minecraft/class_11821; comp_4699 schema + m ()Lnet/minecraft/class_11821; method_73728 array + m ()Lnet/minecraft/class_11821; method_73727 ref + m ()Ljava/lang/String; comp_4912 name + m (Ljava/lang/String;Ljava/net/URI;Lnet/minecraft/class_11821;)V + p 1 name + p 2 reference + p 3 schema +c net/minecraft/class_11821 net/minecraft/server/dedicated/management/schema/RpcSchema + f Lnet/minecraft/class_11821; field_62359 GAME_RULE_TYPE + f Lnet/minecraft/class_11822; field_62354 DIFFICULTY + f Lnet/minecraft/class_11821; field_63669 DOCUMENT + f Ljava/util/List; field_62346 REGISTERED_SCHEMAS + f Lnet/minecraft/class_11821; field_64087 GAME_RULE_VALUE + f Lcom/mojang/serialization/Codec; field_62347 CODEC + f Lnet/minecraft/class_11822; field_62355 GAME_MODE + f Lnet/minecraft/class_11821; field_62352 PLAYER_ID + f Lnet/minecraft/class_11821; field_63670 PERMISSION_LEVEL + f Ljava/util/Optional; comp_4695 items + f Ljava/util/Optional; comp_4693 reference + f Lcom/mojang/serialization/Codec; comp_5123 codec + f Lnet/minecraft/class_11821; field_62348 BOOLEAN + f Lnet/minecraft/class_11821; field_62349 INTEGER + f Lnet/minecraft/class_11821; field_62350 NUMBER + f Lnet/minecraft/class_11821; field_62351 STRING + f Lnet/minecraft/class_11822; field_62357 VERSION + f Lnet/minecraft/class_11822; field_62358 SERVER_STATE + f Lnet/minecraft/class_11822; field_62356 PLAYER + f Lnet/minecraft/class_11822; field_62365 OPERATOR + f Lnet/minecraft/class_11822; field_62366 INCOMING_IP_BAN + f Lnet/minecraft/class_11822; field_62363 SYSTEM_MESSAGE + f Lnet/minecraft/class_11822; field_62364 KICK_PLAYER + f Lnet/minecraft/class_11822; field_62361 UNTYPED_GAME_RULE + f Lnet/minecraft/class_11822; field_62362 MESSAGE + f Lnet/minecraft/class_11822; field_62360 TYPED_GAME_RULE + f Lnet/minecraft/class_11822; field_62367 IP_BAN + f Lnet/minecraft/class_11822; field_62368 USER_BAN + f Ljava/util/Map; comp_4696 properties + f Ljava/util/List; comp_4697 enumValues + f Ljava/util/List; comp_4694 type + m (Ljava/util/Optional;Ljava/util/List;Ljava/util/Optional;Ljava/util/Map;Ljava/util/List;)Lnet/minecraft/class_11821; method_75587 method_75587 + p 4 enumValues + p 0 ref + p 1 type + p 2 items + p 3 properties + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_11821; method_73724 ofLiteral + p 0 literal + p 1 codec + m (Ljava/util/Map;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_11821; method_73721 ofObjectWithProperties + p 0 itemSchemaMap + m ()Lnet/minecraft/class_11821; method_75589 copy + m (Ljava/util/List;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_11821; method_73720 ofList + p 0 values + p 1 codec + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_74955 method_74955 + p 0 codec + m ()Ljava/util/List; method_73713 getRegisteredSchemas + m (Ljava/util/function/Supplier;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_11821; method_73722 ofEnum + p 1 codec + p 0 values + m (Ljava/lang/String;Lnet/minecraft/class_11821;)Lnet/minecraft/class_11821; method_73718 withProperty + p 1 reference + p 2 schema + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_11821; method_73723 ofObject + p 0 codec + m ()Lcom/mojang/serialization/Codec; method_75584 getCodec + m (Ljava/lang/String;Lnet/minecraft/class_11821;)Lnet/minecraft/class_11822; method_73719 registerEntry + p 0 reference + p 1 schema + m (Ljava/lang/Object;)Ljava/lang/String; method_73716 method_73716 + p 0 value + m ()Lnet/minecraft/class_11821; method_73725 asArray + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_74956 method_74956 + p 1 instance + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_11821; method_75588 ofEnum + p 0 enumValues + m (Lnet/minecraft/class_11821;)Lcom/mojang/serialization/DataResult; method_75585 method_75585 + p 0 schema + m (Lnet/minecraft/class_11821;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_11821; method_73714 ofArray + p 0 itemSchema + p 1 codec + m (Ljava/net/URI;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_11821; method_73717 ofReference + p 1 codec + p 0 reference + m (Ljava/util/List;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_11821; method_76046 ofLiterals + p 0 literals + p 1 codec + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_11821; method_75586 method_75586 + p 0 entry + m ()Ljava/util/Optional; comp_4695 items + m ()Ljava/util/List; comp_4697 enumValues + m ()Ljava/util/List; comp_4694 type + m ()Lcom/mojang/serialization/Codec; comp_5123 codec + m ()Ljava/util/Map; comp_4696 properties + m ()Ljava/util/Optional; comp_4693 reference + m (Ljava/util/Optional;Ljava/util/List;Ljava/util/Optional;Ljava/util/Map;Ljava/util/List;Lcom/mojang/serialization/Codec;)V + p 1 reference + p 2 type + p 3 items + p 4 properties + p 5 enumValues + p 6 codec +c net/minecraft/class_11806 net/minecraft/server/dedicated/management/listener/NotificationManagementListener + f Lnet/minecraft/class_11827; field_62313 dispatcher + f Lnet/minecraft/class_11807; field_62312 managementServer + m (Lnet/minecraft/class_6880$class_6883;Ljava/lang/Object;Lnet/minecraft/class_11795;)V method_73660 method_73660 + p 2 connection + m (Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_11795;)V method_73658 method_73658 + p 1 connection + m (Lnet/minecraft/class_6880$class_6883;Ljava/lang/Object;)V method_73659 notifyAll + p 1 method + p 2 params + m (Lnet/minecraft/class_6880$class_6883;)V method_73657 notifyAll + p 1 method + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11807;)V + p 2 managementServer + p 1 dispatcher +c net/minecraft/class_11805 net/minecraft/server/dedicated/management/ManagementLogger + f Ljava/lang/String; field_62311 LOG_PREFIX + f Lorg/slf4j/Logger; field_62310 LOGGER + m (Lnet/minecraft/class_11838;Ljava/lang/String;[Ljava/lang/Object;)V method_73655 logAction + p 2 action + p 3 arguments + p 1 remote +c net/minecraft/class_11804 net/minecraft/server/dedicated/management/JsonRpc + f Ljava/lang/String; field_62308 JSON_RPC_VERSION + m (Lcom/google/gson/JsonObject;)Lcom/google/gson/JsonElement; method_73652 getParameters + p 0 request + m (Lcom/google/gson/JsonObject;)Lcom/google/gson/JsonElement; method_73653 getResult + p 0 response + m (Lcom/google/gson/JsonElement;Lcom/google/gson/JsonElement;)Lcom/google/gson/JsonObject; method_73648 encodeResult + p 0 id + p 1 result + m (Lcom/google/gson/JsonElement;Ljava/lang/String;ILjava/lang/String;)Lcom/google/gson/JsonObject; method_73649 encodeError + p 0 id + p 1 message + p 2 code + p 3 data + m (Lcom/google/gson/JsonObject;)Lcom/google/gson/JsonElement; method_73647 getId + p 0 request + m (Ljava/lang/Integer;Lnet/minecraft/class_2960;Ljava/util/List;)Lcom/google/gson/JsonObject; method_73650 encodeRequest + p 0 id + p 1 method + p 2 parameters + m (Lcom/google/gson/JsonObject;)Ljava/lang/String; method_73651 getMethod + p 0 request + m (Lcom/google/gson/JsonObject;)Lcom/google/gson/JsonObject; method_73654 getError + p 0 response +c net/minecraft/class_11803 net/minecraft/server/dedicated/management/ManagementError + f I field_62305 code + f Ljava/lang/String; field_62306 message + f Lnet/minecraft/class_11803; field_62304 INTERNAL_ERROR + f Lnet/minecraft/class_11803; field_62302 METHOD_NOT_FOUND + f Lnet/minecraft/class_11803; field_62303 INVALID_PARAMS + f Lnet/minecraft/class_11803; field_62300 PARSE_ERROR + f Lnet/minecraft/class_11803; field_62301 INVALID_REQUEST + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Lcom/google/gson/JsonObject; method_73646 encode + p 2 data + p 1 json + m (Ljava/lang/String;)Lcom/google/gson/JsonObject; method_74474 encode + p 1 data + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 code + p 4 message + m (Lcom/google/gson/JsonElement;)Lcom/google/gson/JsonObject; method_74473 encode + p 1 json +c net/minecraft/class_11808 net/minecraft/server/dedicated/management/OutgoingRpcMethod + f Ljava/lang/String; field_63002 NOTIFICATION_PREFIX + m (Ljava/lang/Object;)Lcom/google/gson/JsonElement; method_73687 encodeParams + p 1 params + m ()Lnet/minecraft/class_11808$class_11811; method_73688 createSimpleBuilder + m ()Lnet/minecraft/class_11808$class_11811; method_73689 createParameterlessBuilder + m ()Lnet/minecraft/class_11808$class_11811; method_73683 createNotificationBuilder + m (Lcom/google/gson/JsonElement;)Ljava/lang/Object; method_73682 decodeResult + p 1 result + m ()Lnet/minecraft/class_11808$class_11811; method_75572 createParameterizedBuilder + m ()Lnet/minecraft/class_11808$class_12055; comp_4909 attributes + m ()Lnet/minecraft/class_11817; comp_4668 info +c net/minecraft/class_11808$class_12056 net/minecraft/server/dedicated/management/OutgoingRpcMethod$Factory + m (Lnet/minecraft/class_11817;Lnet/minecraft/class_11808$class_12055;)Lnet/minecraft/class_11808; create create + p 2 attributes + p 1 methodInfo +c net/minecraft/class_11808$class_12055 net/minecraft/server/dedicated/management/OutgoingRpcMethod$Attributes + f Z comp_4908 discoverable + m ()Z comp_4908 discoverable + m (Z)V + p 1 discoverable +c net/minecraft/class_11808$class_11813 net/minecraft/server/dedicated/management/OutgoingRpcMethod$Simple + f Lnet/minecraft/class_11817; comp_4668 info + f Lnet/minecraft/class_11808$class_12055; comp_4909 attributes + m (Lnet/minecraft/class_11817;Lnet/minecraft/class_11808$class_12055;)V + p 1 info + p 2 attributes +c net/minecraft/class_11808$class_11810 net/minecraft/server/dedicated/management/OutgoingRpcMethod$Notification + f Lnet/minecraft/class_11808$class_12055; comp_4909 attributes + f Lnet/minecraft/class_11817; comp_4668 info + m (Lnet/minecraft/class_11817;Lnet/minecraft/class_11808$class_12055;)V + p 1 info + p 2 attributes +c net/minecraft/class_11808$class_11812 net/minecraft/server/dedicated/management/OutgoingRpcMethod$Parameterless + f Lnet/minecraft/class_11808$class_12055; comp_4909 attributes + f Lnet/minecraft/class_11817; comp_4668 info + m (Lnet/minecraft/class_11817;Lnet/minecraft/class_11808$class_12055;)V + p 1 info + p 2 attributes +c net/minecraft/class_11808$class_11811 net/minecraft/server/dedicated/management/OutgoingRpcMethod$Builder + f Lnet/minecraft/class_11818; field_62322 requestParameter + f Lnet/minecraft/class_11808$class_12056; field_62320 factory + f Ljava/lang/String; field_62321 description + f Lnet/minecraft/class_11808$class_12055; field_63003 DEFAULT_ATTRIBUTES + f Lnet/minecraft/class_11820; field_62323 responseResult + m ()Lnet/minecraft/class_11808; method_73695 build + m (Lnet/minecraft/class_11808$class_12056;)V + p 1 factory + m (Ljava/lang/String;)Lnet/minecraft/class_11808$class_11811; method_73693 description + p 1 description + m (Ljava/lang/String;Lnet/minecraft/class_11821;)Lnet/minecraft/class_11808$class_11811; method_73691 requestParameter + p 2 schema + p 1 name + m (Ljava/lang/String;Lnet/minecraft/class_11821;)Lnet/minecraft/class_11808$class_11811; method_73692 responseResult + p 1 name + p 2 schema + m (Ljava/lang/String;)Lnet/minecraft/class_6880$class_6883; method_74847 buildAndRegisterVanilla + p 1 path + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_6880$class_6883; method_73694 buildAndRegister + p 1 id +c net/minecraft/class_11808$class_11809 net/minecraft/server/dedicated/management/OutgoingRpcMethod$Parameterized + f Lnet/minecraft/class_11817; comp_4668 info + f Lnet/minecraft/class_11808$class_12055; comp_4909 attributes + m (Lnet/minecraft/class_11817;Lnet/minecraft/class_11808$class_12055;)V + p 1 info + p 2 attributes +c net/minecraft/class_11807 net/minecraft/server/dedicated/management/ManagementServer + f Lnet/minecraft/class_12000; field_62800 authHandler + f Lio/netty/channel/Channel; field_62801 channel + f Lcom/google/common/net/HostAndPort; field_62315 address + f Lorg/slf4j/Logger; field_62314 LOGGER + f Lio/netty/channel/nio/NioEventLoopGroup; field_62802 eventLoopGroup + f Ljava/util/Set; field_62316 connectionHandlers + m (Lnet/minecraft/class_11795;)V method_73679 onConnectionOpen + p 1 handler + m (Z)V method_74477 stop + p 1 shutdownEventLoop + m ()V method_73676 processTimeouts + m (Lnet/minecraft/class_11827;Lio/netty/handler/ssl/SslContext;)V method_73677 listen + p 1 dispatcher + p 2 sslContext + m (Lnet/minecraft/class_11827;Lio/netty/handler/ssl/SslContext;)V method_74476 listenEncrypted + p 1 dispatcher + p 2 sslContext + m (Ljava/util/function/Consumer;)V method_73680 forEachConnection + p 1 task + m (Lcom/google/common/net/HostAndPort;Lnet/minecraft/class_12000;Lio/netty/channel/nio/NioEventLoopGroup;)V + p 3 eventLoopGroup + p 2 authHandler + p 1 address + m ()I method_74478 getPort + m (Lcom/google/common/net/HostAndPort;Lnet/minecraft/class_12000;)V + p 2 authHandler + p 1 address + m (Lnet/minecraft/class_11795;)V method_73681 onConnectionClose + p 1 handler + m (Lnet/minecraft/class_11827;)V method_74475 listenUnencrypted + p 1 dispatcher +c net/minecraft/class_11807$1 net/minecraft/server/dedicated/management/ManagementServer$1 + m (Lio/netty/channel/Channel;)V initChannel initChannel + p 1 channel +c net/minecraft/class_1571 net/minecraft/entity/mob/GhastEntity + f B field_57683 DEFAULT_FIREBALL_STRENGTH + f Lnet/minecraft/class_2940; field_7273 SHOOTING + f I field_7272 fireballStrength + m (Lnet/minecraft/class_1282;)Z method_44320 isFireballFromPlayer + c {@return whether {@code damageSource} is caused by a player's fireball}\n\n

This returns {@code true} for ghast fireballs reflected by a player,\nsince the attacker is set as the player in that case. + p 0 damageSource + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_18450 method_18450 + p 2 world + p 1 entity + m (Z)V method_7048 setShooting + p 1 shooting + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20675 canSpawn + p 3 pos + p 4 random + p 1 world + p 2 spawnReason + p 0 type + m ()I method_7049 getFireballStrength + m ()Lnet/minecraft/class_5132$class_5133; method_26913 createGhastAttributes + m ()Z method_7050 isShooting + m (Lnet/minecraft/class_1308;)V method_70719 updateYaw + p 0 ghast +c net/minecraft/class_1571$class_1572 net/minecraft/entity/mob/GhastEntity$LookAtTargetGoal + f Lnet/minecraft/class_1308; field_59703 ghast + m (Lnet/minecraft/class_1308;)V + p 1 ghast +c net/minecraft/class_1571$class_1574 net/minecraft/entity/mob/GhastEntity$ShootFireballGoal + f Lnet/minecraft/class_1571; field_7277 ghast + f I field_7278 cooldown + m (Lnet/minecraft/class_1571;)V + p 1 ghast +c net/minecraft/class_1571$class_1573 net/minecraft/entity/mob/GhastEntity$GhastMoveControl + f Z field_59705 happy + f Ljava/util/function/BooleanSupplier; field_60554 shouldStayStill + f I field_7276 collisionCheckCooldown + f Lnet/minecraft/class_1308; field_59704 ghast + m (Lnet/minecraft/class_1308;ZLjava/util/function/BooleanSupplier;)V + p 2 happy + p 3 shouldStayStill + p 1 ghast + m (Lnet/minecraft/class_243;)Z method_7051 willCollide + p 1 movement + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_2338;ZZ)Z method_71149 canPassThrough + p 4 blockPos + p 5 waterAllowed + p 2 oldPos + p 3 newPos + p 6 lavaAllowed + p 1 world + m (Lnet/minecraft/class_238;Lnet/minecraft/class_243;Lnet/minecraft/class_243;ZZLnet/minecraft/class_2338;I)Z method_71150 method_71150 + p 6 pos + p 7 version +c net/minecraft/class_1571$class_1575 net/minecraft/entity/mob/GhastEntity$FlyRandomlyGoal + f Lnet/minecraft/class_1308; field_59708 ghast + f I field_59709 blockCheckDistance + m (Lnet/minecraft/class_1308;I)V + p 1 ghast + p 2 blockCheckDistance + m (Lnet/minecraft/class_243;Lnet/minecraft/class_5819;)Lnet/minecraft/class_243; method_70723 addRandom + p 1 random + p 0 pos + m (Lnet/minecraft/class_1308;I)Lnet/minecraft/class_243; method_70720 locateTarget + p 0 ghast + p 1 blockCheckDistance + m (Lnet/minecraft/class_1308;)V + p 1 ghast + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_243;I)Z method_70722 isTargetValid + p 2 blockCheckDistance + p 1 pos + p 0 world + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_243;Lnet/minecraft/class_5819;)Lnet/minecraft/class_243; method_70721 getTargetPos + p 2 random + p 0 ghast + p 1 pos +c net/minecraft/class_1570 net/minecraft/entity/mob/GiantEntity + m ()Lnet/minecraft/class_5132$class_5133; method_26914 createGiantAttributes +c net/minecraft/class_1577 net/minecraft/entity/mob/GuardianEntity + f Lnet/minecraft/class_2940; field_7290 BEAM_TARGET_ID + f Z field_7283 flopping + f Lnet/minecraft/class_1379; field_7289 wanderGoal + f Lnet/minecraft/class_2940; field_7280 SPIKES_RETRACTED + f F field_7281 spikesExtensionRate + f F field_7285 spikesExtension + f F field_7287 lastSpikesExtension + f Lnet/minecraft/class_1309; field_7288 cachedBeamTarget + f I field_7282 beamTicks + f I field_30470 WARMUP_TIME + f F field_7284 lastTailAngle + f F field_7286 tailAngle + m ()Lnet/minecraft/class_3414; method_7062 getFlopSound + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20676 canSpawn + p 1 world + p 0 type + p 3 pos + p 2 spawnReason + p 4 random + m (I)V method_7060 setBeamTarget + p 1 entityId + m ()Z method_7058 areSpikesRetracted + m ()Z method_7063 hasBeamTarget + m (F)F method_7057 getTailAngle + p 1 tickProgress + m (F)F method_7061 getBeamProgress + p 1 tickProgress + m (F)F method_7053 getSpikesExtension + p 1 tickProgress + m ()I method_7055 getWarmupTime + m ()Lnet/minecraft/class_1309; method_7052 getBeamTarget + m ()F method_48161 getBeamTicks + m (Z)V method_7054 setSpikesRetracted + p 1 retracted + m ()Lnet/minecraft/class_5132$class_5133; method_26915 createGuardianAttributes +c net/minecraft/class_1577$class_1580 net/minecraft/entity/mob/GuardianEntity$GuardianMoveControl + f Lnet/minecraft/class_1577; field_7295 guardian + m (Lnet/minecraft/class_1577;)V + p 1 guardian +c net/minecraft/class_1577$class_1579 net/minecraft/entity/mob/GuardianEntity$GuardianTargetPredicate + f Lnet/minecraft/class_1577; field_7294 owner + m (Lnet/minecraft/class_1577;)V + p 1 owner +c net/minecraft/class_1577$class_1578 net/minecraft/entity/mob/GuardianEntity$FireBeamGoal + f I field_7291 beamTicks + f Z field_7292 elder + f Lnet/minecraft/class_1577; field_7293 guardian + m (Lnet/minecraft/class_1577;)V + p 1 guardian +c net/minecraft/class_1576 net/minecraft/entity/mob/HuskEntity +c net/minecraft/class_1576$class_12262 net/minecraft/entity/mob/HuskEntity$HuskData + f Z field_64144 unnatural + m (Lnet/minecraft/class_1642$class_1644;)V + p 1 data +c net/minecraft/class_1569 net/minecraft/entity/mob/Monster + c This interface marks that an entity class belongs to monsters, including\nhostile mobs like zombies. It also contains constants to be used for\nsetting {@link MobEntity#experiencePoints}.\n\n@see net.minecraft.entity.SpawnGroup#MONSTER + f I field_30464 ZERO_EXPERIENCE + c @apiNote This is used for mobs that do not drop experience. + f I field_30466 NORMAL_MONSTER_EXPERIENCE + c @apiNote This is used for most of the monsters, such as\n{@linkplain ZombieEntity zombies} and\n{@linkplain SkeletonEntity skeletons}. + f I field_30465 SMALL_MONSTER_EXPERIENCE + c @apiNote This is used for monsters such as\n{@linkplain EndermiteEntity endermites} and\n{@linkplain VexEntity vexes}. + f I field_30468 STRONGER_MONSTER_EXPERIENCE + c @apiNote This is used for {@linkplain PiglinBruteEntity piglin brutes}\nand {@linkplain RavagerEntity ravagers}. + f I field_30467 STRONG_MONSTER_EXPERIENCE + c @apiNote This is used for monsters such as\n{@linkplain BlazeEntity blazes} and\n{@linkplain GuardianEntity guardians}. + f I field_30469 WITHER_EXPERIENCE + c @apiNote This is used for\n{@linkplain net.minecraft.entity.boss.WitherEntity withers}. +c net/minecraft/class_2899 net/minecraft/network/packet/s2c/login/LoginQueryRequestS2CPacket + f Lnet/minecraft/class_9139; field_48232 CODEC + f I field_33373 MAX_PAYLOAD_SIZE + f I comp_1567 queryId + f Lnet/minecraft/class_8595; comp_1568 payload + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2540;)Lnet/minecraft/class_8597; method_52288 readUnknownPayload + p 1 buf + p 0 id + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2540;)Lnet/minecraft/class_8595; method_52287 readPayload + p 1 buf + p 0 id + m (ILnet/minecraft/class_8595;)V + p 1 queryId + p 2 payload + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()I comp_1567 queryId + m (Lnet/minecraft/class_2896;)V method_12591 apply + m (Lnet/minecraft/class_2540;)V method_56010 write + p 1 buf + m ()Lnet/minecraft/class_8595; comp_1568 payload +c net/minecraft/class_7761 net/minecraft/client/render/block/entity/HangingSignBlockEntityRenderer + f Ljava/util/Map; field_40524 models + f Ljava/lang/String; field_40523 V_CHAINS + f Ljava/lang/String; field_40522 PLANK + f Ljava/lang/String; field_40521 BOARD + f Ljava/lang/String; field_40520 CHAIN_R2 + f Lnet/minecraft/class_243; field_44576 TEXT_OFFSET + f F field_44575 TEXT_SCALE + f Ljava/lang/String; field_40519 CHAIN_R1 + f F field_44574 MODEL_SCALE + f Ljava/lang/String; field_40518 CHAIN_L2 + f Ljava/lang/String; field_40517 CHAIN_L1 + f Ljava/lang/String; field_40516 NORMAL_CHAINS + m (Lnet/minecraft/class_4587;F)V method_49918 setAngles + p 0 matrices + p 1 blockRotationDegrees + m (Lnet/minecraft/class_5599;Lnet/minecraft/class_4719;Lnet/minecraft/class_7761$class_10381;)Lnet/minecraft/class_3879$class_9948; method_65830 createModel + p 2 attachmentType + p 1 woodType + p 0 models + m (Lnet/minecraft/class_7761$class_10382;)Lnet/minecraft/class_7761$class_10382; method_65241 method_65241 + p 0 variant + m (Lnet/minecraft/class_7761$class_10381;)Lnet/minecraft/class_5607; method_45795 getTexturedModelData + p 0 attachmentType + m (Lnet/minecraft/class_4719;)Ljava/util/stream/Stream; method_65242 method_65242 + p 0 woodType + m (Lnet/minecraft/class_11701;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IILnet/minecraft/class_3879$class_9948;Lnet/minecraft/class_4730;)V method_65829 renderAsItem + m (Lnet/minecraft/class_4719;Lnet/minecraft/class_7761$class_10381;)Lnet/minecraft/class_7761$class_10382; method_65239 method_65239 + p 1 attachmentType + m (Lnet/minecraft/class_5614$class_5615;Lnet/minecraft/class_7761$class_10382;)Lnet/minecraft/class_3879$class_9948; method_65240 method_65240 + p 1 variant +c net/minecraft/class_7761$class_10381 net/minecraft/client/render/block/entity/HangingSignBlockEntityRenderer$AttachmentType + f Ljava/lang/String; field_55161 id + f Lnet/minecraft/class_7761$class_10381; field_55158 WALL + f Lnet/minecraft/class_7761$class_10381; field_55159 CEILING + f Lnet/minecraft/class_7761$class_10381; field_55160 CEILING_MIDDLE + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_7761$class_10381; method_65244 from + p 0 state +c net/minecraft/class_7761$class_10382 net/minecraft/client/render/block/entity/HangingSignBlockEntityRenderer$Variant + f Lnet/minecraft/class_7761$class_10381; comp_3343 attachmentType + f Lnet/minecraft/class_4719; comp_3342 woodType + m ()Lnet/minecraft/class_7761$class_10381; comp_3343 attachmentType + m ()Lnet/minecraft/class_4719; comp_3342 woodType + m (Lnet/minecraft/class_4719;Lnet/minecraft/class_7761$class_10381;)V + p 1 woodType + p 2 attachmentType +c net/minecraft/class_7766 net/minecraft/client/texture/SpriteLoader + f Lnet/minecraft/class_2960; field_40549 id + f Lorg/slf4j/Logger; field_40548 LOGGER + f I field_40550 maxTextureSize + m (Lnet/minecraft/class_1055$class_7769;)Ljava/lang/String; method_45835 method_45835 + p 0 sprite + m (Lnet/minecraft/class_8684;Ljava/util/concurrent/Executor;Lnet/minecraft/class_7948$class_12299;)Ljava/util/concurrent/CompletableFuture; method_47666 method_47666 + p 2 source + m (Lnet/minecraft/class_2960;I)V + p 1 id + p 2 maxTextureSize + m (Ljava/util/List;)Ljava/util/List; method_47662 method_47662 + p 0 sprites + m (Ljava/util/Map;IILnet/minecraft/class_7764;III)V method_45841 method_45841 + p 4 info + p 5 x + p 6 y + p 7 padding + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_2960;ILjava/util/concurrent/Executor;Ljava/util/Set;)Ljava/util/concurrent/CompletableFuture; method_47661 load + p 4 executor + p 5 additionalMetadata + p 2 path + p 3 mipLevel + p 1 resourceManager + m (Lnet/minecraft/class_8684;Ljava/util/concurrent/Executor;Ljava/util/List;)Ljava/util/concurrent/CompletionStage; method_47665 method_47665 + p 2 sources + m (Lnet/minecraft/class_1055;II)Ljava/util/Map; method_45836 collectStitchedSprites + p 2 atlasWidth + p 1 stitcher + p 3 atlasHeight + m (ILnet/minecraft/class_1058;)V method_45826 method_45826 + p 1 sprite + m (Lnet/minecraft/class_1059;)Lnet/minecraft/class_7766; method_45837 fromAtlas + p 0 atlasTexture + m (ILjava/util/concurrent/Executor;Ljava/util/List;)Lnet/minecraft/class_7766$class_7767; method_47659 method_47659 + p 3 sprites + m (Ljava/util/List;ILjava/util/concurrent/Executor;)Lnet/minecraft/class_7766$class_7767; method_47663 stitch + p 3 executor + p 1 sprites + p 2 mipLevel + m (Lnet/minecraft/class_8684;Ljava/util/List;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_47664 loadAll + p 0 opener + p 1 sources + p 2 executor +c net/minecraft/class_7766$class_7767 net/minecraft/client/texture/SpriteLoader$StitchResult + f Ljava/util/Map; comp_1044 sprites + f Ljava/util/concurrent/CompletableFuture; comp_1045 readyForUpload + f I comp_1042 mipLevel + f I comp_1040 width + f I comp_1041 height + f Lnet/minecraft/class_1058; comp_1043 missing + m ()Ljava/util/Map; comp_1044 sprites + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1058; method_73022 getSprite + p 1 id + m ()Lnet/minecraft/class_1058; comp_1043 missing + m ()I comp_1040 width + m ()I comp_1041 height + m ()I comp_1042 mipLevel + m ()Ljava/util/concurrent/CompletableFuture; comp_1045 readyForUpload + m (IIILnet/minecraft/class_1058;Ljava/util/Map;Ljava/util/concurrent/CompletableFuture;)V + p 1 width + p 2 height + p 3 mipLevel + p 4 missing + p 5 sprites + p 6 readyForUpload +c com/mojang/blaze3d/systems/RenderPass com/mojang/blaze3d/systems/RenderPass + m (IIII)V drawIndexed drawIndexed + p 2 firstIndex + p 3 count + p 1 baseVertex + p 4 instanceCount + m (IIII)V enableScissor enableScissor + p 3 width + p 2 y + p 1 x + p 4 height + m (Ljava/lang/String;Lcom/mojang/blaze3d/buffers/GpuBuffer;)V setUniform setUniform + p 1 name + p 2 buffer + m (Ljava/util/Collection;Lcom/mojang/blaze3d/buffers/GpuBuffer;Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595;Ljava/util/Collection;Ljava/lang/Object;)V drawMultipleIndexed drawMultipleIndexed + p 1 objects + p 2 buffer + p 3 indexType + p 4 validationSkippedUniforms + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;)V setPipeline setPipeline + p 1 pipeline + m (ILcom/mojang/blaze3d/buffers/GpuBuffer;)V setVertexBuffer setVertexBuffer + p 2 buffer + p 1 index + m (Ljava/lang/String;Lcom/mojang/blaze3d/textures/GpuTextureView;Lnet/minecraft/class_12137;)V bindTexture bindTexture + p 3 sampler + p 1 name + m (II)V draw draw + p 2 count + p 1 offset + m (Ljava/lang/String;Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V setUniform setUniform + p 1 name + p 2 slice + m (Ljava/util/function/Supplier;)V pushDebugGroup pushDebugGroup + p 1 labelGetter + m (Lcom/mojang/blaze3d/buffers/GpuBuffer;Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595;)V setIndexBuffer setIndexBuffer + p 2 indexType + p 1 indexBuffer +c com/mojang/blaze3d/systems/RenderPass$class_10884 com/mojang/blaze3d/systems/RenderPass$RenderObject + f Lcom/mojang/blaze3d/buffers/GpuBuffer; comp_3805 vertexBuffer + f Lcom/mojang/blaze3d/buffers/GpuBuffer; comp_3806 indexBuffer + f I comp_3804 slot + f I comp_3808 firstIndex + f I comp_3809 indexCount + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595; comp_3807 indexType + f Ljava/util/function/BiConsumer; comp_3810 uniformUploaderConsumer + m (ILcom/mojang/blaze3d/buffers/GpuBuffer;Lcom/mojang/blaze3d/buffers/GpuBuffer;Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595;II)V + p 1 slot + p 2 vertexBuffer + p 5 firstIndex + p 6 indexCount + p 3 indexBuffer + p 4 indexType + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595; comp_3807 indexType + m ()Lcom/mojang/blaze3d/buffers/GpuBuffer; comp_3806 indexBuffer + m ()Lcom/mojang/blaze3d/buffers/GpuBuffer; comp_3805 vertexBuffer + m ()Ljava/util/function/BiConsumer; comp_3810 uniformUploaderConsumer + m ()I comp_3804 slot + m ()I comp_3809 indexCount + m ()I comp_3808 firstIndex + m (ILcom/mojang/blaze3d/buffers/GpuBuffer;Lcom/mojang/blaze3d/buffers/GpuBuffer;Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595;IILjava/util/function/BiConsumer;)V + p 1 slot + p 2 vertexBuffer + p 3 indexBuffer + p 4 indexType + p 5 firstIndex + p 6 indexCount + p 7 uniformUploaderConsumer +c com/mojang/blaze3d/systems/RenderPass$class_10885 com/mojang/blaze3d/systems/RenderPass$UniformUploader + m (Ljava/lang/String;Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V upload upload + p 1 name + p 2 slice +c net/minecraft/class_7763 net/minecraft/client/render/entity/CamelEntityRenderer + f Lnet/minecraft/class_2960; field_40529 TEXTURE + m (Lnet/minecraft/class_10007;)Lnet/minecraft/class_1799; method_76301 method_76301 + p 0 state + m (Lnet/minecraft/class_10007;)Lnet/minecraft/class_2960; method_45801 getTexture + m (Lnet/minecraft/class_5617$class_5618;)Lnet/minecraft/class_10652; method_76299 createSaddleFeatureRenderer + p 1 context + m ()Lnet/minecraft/class_10007; method_62392 createRenderState + m (Lnet/minecraft/class_7689;Lnet/minecraft/class_10007;F)V method_62393 updateRenderState +c net/minecraft/class_7764 net/minecraft/client/texture/SpriteContents + f Lnet/minecraft/class_7764$class_5790; field_40541 animation + f Ljava/util/List; field_61860 additionalMetadata + f [Lnet/minecraft/class_1011; field_40540 mipmapLevelsImages + f I field_40538 height + f Lnet/minecraft/class_1011; field_40539 image + f Lnet/minecraft/class_12253; field_64084 strategy + f Lnet/minecraft/class_2960; field_40536 id + f Lorg/slf4j/Logger; field_40535 LOGGER + f I field_64235 SPRITE_INFO_SIZE + f I field_40537 width + f F field_64677 cutoffBias + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_7771;Lnet/minecraft/class_1011;Ljava/util/Optional;Ljava/util/List;Ljava/util/Optional;)V + p 4 animationResourceMetadata + p 5 additionalMetadata + p 6 metadata + p 1 id + p 2 dimensions + p 3 image + m (Lit/unimi/dsi/fastutil/ints/IntSet;I)Z method_45813 method_45813 + p 0 frameIndex + m (Lcom/mojang/blaze3d/textures/GpuTexture;I)V method_45809 upload + p 2 mipmap + p 1 texture + m ()Z method_73020 isAnimated + m (III)Z method_45810 isPixelTransparent + p 1 frame + p 2 x + p 3 y + m ()Ljava/util/stream/IntStream; method_45817 getDistinctFrameCount + m (Lnet/minecraft/class_7771;Lnet/minecraft/class_1011;Lnet/minecraft/class_1079;)Lnet/minecraft/class_7764$class_5790; method_65869 method_65869 + p 3 animationMetadata + m ()I method_45819 getFrameCount + m (Lnet/minecraft/class_7771;IILnet/minecraft/class_1079;)Lnet/minecraft/class_7764$class_5790; method_45812 createAnimation + p 4 metadata + p 2 imageWidth + p 3 imageHeight + p 1 dimensions + m (Lcom/mojang/blaze3d/buffers/GpuBufferSlice;I)Lnet/minecraft/class_7764$class_12298; method_45818 createAnimator + p 2 animationInfoSize + p 1 bufferSlice + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_7771;Lnet/minecraft/class_1011;)V + p 3 image + p 2 dimensions + p 1 id + m (Lnet/minecraft/class_7677;)Ljava/util/Optional; method_73021 getAdditionalMetadataValue + p 1 serializer + m (I)V method_45808 generateMipmaps + p 1 mipmapLevels +c net/minecraft/class_7764$class_5791 net/minecraft/client/texture/SpriteContents$AnimationFrame + f I comp_3445 index + f I comp_3446 time + m (II)V + p 2 time + p 1 index + m ()I comp_3445 index + m ()I comp_3446 time +c net/minecraft/class_7764$class_5790 net/minecraft/client/texture/SpriteContents$Animation + f I field_28473 frameCount + f Ljava/util/List; field_28472 frames + f Z field_40542 interpolated + m ()Ljava/util/stream/IntStream; method_33450 getDistinctFrameCount + m (I)I method_33446 getFrameX + p 1 frame + m (Lcom/mojang/blaze3d/buffers/GpuBufferSlice;I)Lnet/minecraft/class_7764$class_12298; method_76305 createAnimator + p 1 bufferSlice + p 2 animationInfoSize + m (Lnet/minecraft/class_7764;Ljava/util/List;IZ)V + p 2 frames + p 4 interpolated + p 3 frameCount + m (I)I method_33451 getFrameY + p 1 frame + m (Lnet/minecraft/class_7764$class_5791;)I method_33449 method_33449 + p 0 frame +c net/minecraft/class_7764$class_12298 net/minecraft/client/texture/SpriteContents$Animator + f Z field_64241 changedFrame + f I field_64236 frame + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_64239 textureViewsByFrame + f [Lcom/mojang/blaze3d/buffers/GpuBufferSlice; field_64240 animationInfosByFrame + f I field_64237 elapsedTimeInFrame + f Lnet/minecraft/class_7764$class_5790; field_64238 animation + m ()V method_76307 tick + m (Lnet/minecraft/class_7764;Lnet/minecraft/class_7764$class_5790;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;[Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V + p 4 bufferSlices + p 3 textureViewsByFrame + p 2 animation + m ()Z method_76310 isDirty + m (I)Lcom/mojang/blaze3d/buffers/GpuBufferSlice; method_76308 getBufferSlice + p 1 frame + m (Lcom/mojang/blaze3d/systems/RenderPass;Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V method_76309 upload + p 2 bufferSlice + p 1 renderPass +c net/minecraft/class_7771 net/minecraft/client/texture/SpriteDimensions + f I comp_1050 height + f I comp_1049 width + m ()I comp_1049 width + m ()I comp_1050 height + m (II)V + p 1 width + p 2 height +c net/minecraft/class_7775 net/minecraft/client/render/model/Baker + m ()Lnet/minecraft/class_10889; method_76673 getBlockPart + m ()Lnet/minecraft/class_7775$class_12356; method_76674 getVec3fInterner + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_10819; method_45872 getModel + p 1 id + m (Lnet/minecraft/class_7775$class_10897;)Ljava/lang/Object; method_68549 compute + p 1 key + m ()Lnet/minecraft/class_9826; method_65732 getSpriteGetter +c net/minecraft/class_7775$class_10897 net/minecraft/client/render/model/Baker$ResolvableCacheKey + m (Lnet/minecraft/class_7775;)Ljava/lang/Object; compute compute + p 1 baker +c net/minecraft/class_7775$class_12356 net/minecraft/client/render/model/Baker$Vec3fInterner + m (FFF)Lorg/joml/Vector3fc; method_76675 intern + p 1 x + p 3 z + p 2 y + m (Lorg/joml/Vector3fc;)Lorg/joml/Vector3fc; method_76676 intern + p 1 vec +c net/minecraft/class_6416 net/minecraft/util/crash/CrashMemoryReserve + f [B field_34021 reservedMemory + m ()V method_37414 reserveMemory + m ()V method_37415 releaseMemory +c net/minecraft/class_6417 net/minecraft/client/util/MacWindowUtil + f I field_34053 FULLSCREEN_MASK + f Z field_52734 IS_MAC + m (Lnet/minecraft/class_1041;)Ljava/util/Optional; method_37463 getCocoaWindow + p 0 window + m (Lnet/minecraft/class_1041;)V method_54101 fixStyleMask + p 0 window + m (Lnet/minecraft/class_7367;)V method_41718 setApplicationIconImage + p 0 iconSupplier + m (Lca/weblite/objc/NSObject;)V method_37464 toggleFullscreen + p 0 handle + m (Lca/weblite/objc/NSObject;)J method_54102 getStyleMask + p 0 handle + m (Lnet/minecraft/class_1041;)V method_37461 toggleFullscreen + p 0 window + m (Lca/weblite/objc/NSObject;)V method_54103 method_54103 + p 0 windowHandle + m (Lca/weblite/objc/NSObject;)Z method_37462 isFullscreen + p 0 handle +c net/minecraft/class_7745 net/minecraft/client/gui/screen/pack/ExperimentalWarningScreen + f Ljava/util/Collection; field_40448 enabledProfiles + f Lnet/minecraft/class_2561; field_40443 TITLE + f Lnet/minecraft/class_7845; field_42500 grid + f Lnet/minecraft/class_2561; field_40444 MESSAGE + f Lnet/minecraft/class_2561; field_40445 DETAILS + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; field_40447 callback + m (Lnet/minecraft/class_7745;Lnet/minecraft/class_364;)V method_49008 method_49008 + p 1 child + m (Lnet/minecraft/class_4185;)V method_45666 method_45666 + p 1 button + m (Ljava/util/Collection;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;)V + p 1 enabledProfiles + p 2 callback + m (Lnet/minecraft/class_4185;)V method_45667 method_45667 + p 1 button + m (Lnet/minecraft/class_4185;)V method_45668 method_45668 + p 1 button +c net/minecraft/class_7745$class_7746 net/minecraft/client/gui/screen/pack/ExperimentalWarningScreen$DetailsScreen + f Lnet/minecraft/class_2561; field_49555 TITLE + f Lnet/minecraft/class_8132; field_49556 layout + f Lnet/minecraft/class_7745$class_7746$class_7747; field_50222 packListWidget + m (Lnet/minecraft/class_7745$class_7746;Lnet/minecraft/class_364;)V method_57769 method_57769 + p 1 child + m (Lnet/minecraft/class_4185;)V method_45671 method_45671 + p 1 button +c net/minecraft/class_7745$class_7746$class_7748 net/minecraft/client/gui/screen/pack/ExperimentalWarningScreen$DetailsScreen$PackListWidgetEntry + f Lnet/minecraft/class_5489; field_40456 multilineDetails + f Lnet/minecraft/class_2561; field_40454 displayName + f Lnet/minecraft/class_2561; field_40455 details + m (Lnet/minecraft/class_7745$class_7746;Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;Lnet/minecraft/class_5489;)V + p 2 displayName + p 3 details + p 4 multilineDetails +c net/minecraft/class_7745$class_7746$class_7747 net/minecraft/client/gui/screen/pack/ExperimentalWarningScreen$DetailsScreen$PackListWidget + m (Lnet/minecraft/class_7745$class_7746;Lnet/minecraft/class_310;Ljava/util/Collection;)V + p 2 client + p 3 enabledProfiles +c net/minecraft/class_7743 net/minecraft/client/gui/screen/ingame/AbstractSignEditScreen + f [Ljava/lang/String; field_40425 messages + f Lnet/minecraft/class_2625; field_40424 blockEntity + f Z field_43363 front + f Lnet/minecraft/class_3728; field_40429 selectionManager + f I field_40427 ticksSinceOpened + f I field_40428 currentRow + f Lnet/minecraft/class_8242; field_43362 text + f Lnet/minecraft/class_4719; field_40426 signType + m ()V method_45662 finishEditing + m ()F method_70927 getYOffset + m (Lnet/minecraft/class_2625;ZZ)V + p 3 filtered + p 1 blockEntity + p 2 front + m (Ljava/lang/String;)Z method_45658 method_45658 + p 1 textLine + m (ZI)Lnet/minecraft/class_2561; method_49914 method_49914 + p 2 line + m ()Z method_49912 canEdit + m (Lnet/minecraft/class_332;)V method_45656 renderSignBackground + p 1 context + m ()Lorg/joml/Vector3f; method_45661 getTextScale + m (Lnet/minecraft/class_332;)V method_45655 renderSignText + p 1 context + m (Lnet/minecraft/class_2625;ZZLnet/minecraft/class_2561;)V + p 4 title + p 3 filtered + p 2 front + p 1 blockEntity + m (Lnet/minecraft/class_4185;)V method_45657 method_45657 + p 1 button + m (Lnet/minecraft/class_332;)V method_45659 renderSign + p 1 context + m (Ljava/lang/String;)V method_49913 setCurrentRowMessage + p 1 message +c net/minecraft/class_6412 net/minecraft/client/util/ClientSamplerSource + f Lnet/minecraft/class_761; field_33959 renderer + f Ljava/util/Set; field_33960 samplers + f Lnet/minecraft/class_6401; field_33961 factory + m (Ljava/util/function/LongSupplier;Lnet/minecraft/class_761;)V + p 2 renderer + p 1 nanoTimeSupplier + m ()V method_37309 addInfoSamplers +c net/minecraft/class_6413 net/minecraft/server/dedicated/command/PerfCommand + f Lorg/slf4j/Logger; field_33985 LOGGER + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_33987 ALREADY_RUNNING_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_33986 NOT_RUNNING_EXCEPTION + m (Lnet/minecraft/class_2168;Ljava/nio/file/Path;Lnet/minecraft/server/MinecraftServer;)V method_37335 saveReport + p 0 source + p 1 tempProfilingDirectory + p 2 server + m (Lnet/minecraft/class_2168;Lnet/minecraft/server/MinecraftServer;Ljava/nio/file/Path;)V method_37336 method_37336 + p 2 dumpDirectory + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3696;)V method_37339 method_37339 + p 1 result + m (Lnet/minecraft/class_2168;)I method_37333 executeStart + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_37337 method_37337 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_37331 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_3696;)V method_37334 sendProfilingStoppedMessage + p 1 result + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_37332 method_37332 + p 0 context + m (Lnet/minecraft/class_2168;)I method_37338 executeStop + p 0 source +c net/minecraft/class_7744 net/minecraft/client/gui/screen/ingame/HangingSignEditScreen + f F field_40431 BACKGROUND_SCALE + f Lorg/joml/Vector3f; field_40432 TEXT_SCALE + f Lnet/minecraft/class_2960; field_40435 texture +c net/minecraft/class_6409 net/minecraft/advancement/criterion/UsingItemCriterion + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_6409$class_6410;)Z method_37263 method_37263 + p 1 conditions + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1799;)V method_37262 trigger + p 1 player + p 2 stack +c net/minecraft/class_6409$class_6410 net/minecraft/advancement/criterion/UsingItemCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47353 CODEC + f Ljava/util/Optional; comp_2101 item + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55144 method_55144 + p 0 instance + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 2 item + m (Lnet/minecraft/class_1799;)Z method_37266 test + p 1 stack + m (Lnet/minecraft/class_2048$class_2049;Lnet/minecraft/class_2073$class_2074;)Lnet/minecraft/class_175; method_37265 create + p 1 item + p 0 player + m ()Ljava/util/Optional; comp_2101 item +c net/minecraft/class_6407 net/minecraft/advancement/criterion/StartedRidingCriterion + m (Lnet/minecraft/class_3222;)V method_37257 trigger + p 1 player + m (Lnet/minecraft/class_6407$class_6408;)Z method_37259 method_37259 + p 0 conditions +c net/minecraft/class_6407$class_6408 net/minecraft/advancement/criterion/StartedRidingCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47337 CODEC + f Ljava/util/Optional; comp_2029 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55134 method_55134 + p 0 instance + m (Lnet/minecraft/class_2048$class_2049;)Lnet/minecraft/class_175; method_37260 create + p 0 player + m (Ljava/util/Optional;)V + p 1 player +c net/minecraft/class_11901 net/minecraft/client/network/ClientPlayerLikeEntity + m (Z)Lnet/minecraft/class_1453$class_7989; method_74191 getShoulderParrotVariant + p 1 leftShoulder + m ()Lnet/minecraft/class_11902; method_74192 getState + m ()Z method_74194 hasExtraEars + m ()Lnet/minecraft/class_2561; method_74193 getMannequinName + m ()Lnet/minecraft/class_8685; method_52814 getSkin +c net/minecraft/class_7751 net/minecraft/client/render/entity/model/CamelEntityModel + f Lnet/minecraft/class_9953; field_52883 BABY_TRANSFORMER + f Lnet/minecraft/class_11509; field_60893 dashingAnimation + f Lnet/minecraft/class_11509; field_60889 sittingTransitionAnimation + f Lnet/minecraft/class_11509; field_60888 walkingAnimation + f F field_40459 LIMB_ANGLE_SCALE + f Lnet/minecraft/class_11509; field_60890 sittingAnimation + f Lnet/minecraft/class_630; field_40464 head + f Lnet/minecraft/class_11509; field_60892 idlingAnimation + f F field_42227 LIMB_DISTANCE_SCALE + f Lnet/minecraft/class_11509; field_60891 standingTransitionAnimation + m (Lnet/minecraft/class_10007;FF)V method_45705 setHeadAngles + p 1 state + p 2 headYaw + p 3 headPitch + m ()Lnet/minecraft/class_5609; method_66836 getModelData + m (Lnet/minecraft/class_10007;)V method_45706 setAngles + m ()Lnet/minecraft/class_5607; method_45707 getTexturedModelData +c net/minecraft/class_7756 net/minecraft/client/network/ClientDynamicRegistryType + f Ljava/util/List; field_40492 VALUES + f Lnet/minecraft/class_5455$class_6890; field_40493 STATIC_REGISTRY_MANAGER + f Lnet/minecraft/class_7756; field_40490 STATIC + f Lnet/minecraft/class_7756; field_40491 REMOTE + m ()Lnet/minecraft/class_7780; method_45738 createCombinedDynamicRegistries +c net/minecraft/class_7757 net/minecraft/client/session/report/ContextMessageCollector + f Ljava/util/List; field_40499 contextMessages + f I field_40498 leadingContextMessageCount + m ()Z method_45758 hasContextMessage + m (Lnet/minecraft/class_7471;)V method_45760 add + p 1 message + m (Lnet/minecraft/class_7471;)Z method_45761 tryLink + p 1 message + m (Lnet/minecraft/class_7555;Lit/unimi/dsi/fastutil/ints/IntCollection;Lnet/minecraft/class_7757$class_7632;)V method_45759 add + p 1 log + p 3 consumer + p 2 selections + m (I)V + p 1 leadingContextMessageCount +c net/minecraft/class_7757$class_7758 net/minecraft/client/session/report/ContextMessageCollector$ContextMessage + f Ljava/util/Set; field_40501 lastSeenEntries + f Lnet/minecraft/class_7471; field_40502 message + f I field_40504 count + f Z field_40503 linkSuccessful + m (Lnet/minecraft/class_7471;)Z method_45763 linkTo + p 1 message + m (Lnet/minecraft/class_7757;Lnet/minecraft/class_7471;)V + p 2 message + m ()Z method_45762 isInvalid +c net/minecraft/class_7757$class_7632 net/minecraft/client/session/report/ContextMessageCollector$IndexedMessageConsumer + m (ILnet/minecraft/class_7557$class_7558;)V accept accept + p 2 message + p 1 index +c net/minecraft/class_7754 net/minecraft/client/render/entity/model/RaftEntityModel + m ()Lnet/minecraft/class_5607; method_45714 getTexturedModelData + m (Lnet/minecraft/class_5610;)V method_45713 addParts + p 0 modelPartData + m ()Lnet/minecraft/class_5607; method_62112 getChestTexturedModelData +c net/minecraft/class_7749 net/minecraft/client/gui/screen/world/WorldCreationSettings + f Lnet/minecraft/class_7712; comp_1026 dataConfiguration + f Lnet/minecraft/class_7726; comp_1025 worldGenSettings + m ()Lnet/minecraft/class_7712; comp_1026 dataConfiguration + m ()Lnet/minecraft/class_7726; comp_1025 worldGenSettings + m (Lnet/minecraft/class_7726;Lnet/minecraft/class_7712;)V + p 1 worldGenSettings + p 2 dataConfiguration +c net/minecraft/class_7726 net/minecraft/world/level/WorldGenSettings + f Lnet/minecraft/class_5285; comp_1019 generatorOptions + f Lnet/minecraft/class_7723; comp_1020 dimensionOptionsRegistryHolder + f Lcom/mojang/serialization/Codec; field_40366 CODEC + m ()Lnet/minecraft/class_5285; comp_1019 generatorOptions + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_5285;Lnet/minecraft/class_7723;)Lcom/mojang/serialization/DataResult; method_45538 encode + p 0 registryOps + p 2 dimensionOptionsRegistryHolder + p 1 generatorOptions + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_5285;Lnet/minecraft/class_5455;)Lcom/mojang/serialization/DataResult; method_45539 encode + p 1 generatorOptions + p 0 registryOps + p 2 dynamicRegistryManager + m ()Lnet/minecraft/class_7723; comp_1020 dimensionOptionsRegistryHolder + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45540 method_45540 + p 0 instance + m (Lnet/minecraft/class_5285;Lnet/minecraft/class_7723;)V + p 1 generatorOptions + p 2 dimensionOptionsRegistryHolder +c net/minecraft/class_7723 net/minecraft/world/dimension/DimensionOptionsRegistryHolder + f Ljava/util/Set; field_40364 VANILLA_KEYS + f I field_40365 VANILLA_KEY_COUNT + f Lcom/mojang/serialization/MapCodec; field_40363 CODEC + f Ljava/util/Map; comp_1014 dimensions + m (Lnet/minecraft/class_7225;Ljava/util/Map;Lnet/minecraft/class_2794;)Ljava/util/Map; method_45520 createRegistry + p 0 dimensionTypeRegistry + p 1 dimensionOptions + p 2 chunkGenerator + m ()Lcom/google/common/collect/ImmutableSet; method_45526 getWorldKeys + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45516 method_45516 + p 0 instance + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_2794;)Lnet/minecraft/class_7723; method_45522 with + p 2 chunkGenerator + p 1 registries + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_45514 getOrEmpty + p 1 key + m ()Z method_45531 isDebug + m ()Lnet/minecraft/class_2794; method_45513 getChunkGenerator + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_45525 streamAll + p 0 otherKeys + m (Lnet/minecraft/class_5321;)Z method_45532 method_45532 + p 0 key + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_31$class_7729; method_45530 getSpecialProperty + p 0 dimensionOptionsRegistry + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_7723$class_7725; method_45518 toConfig + p 1 existingRegistry + m (Lnet/minecraft/class_2385;Lnet/minecraft/class_7723$class_7724;)V method_45523 method_45523 + p 1 entry + m (Ljava/util/Map;Lnet/minecraft/class_6880;Lnet/minecraft/class_2794;)Ljava/util/Map; method_45519 createRegistry + p 2 chunkGenerator + p 1 overworld + p 0 dimensionOptions + m (Lnet/minecraft/class_2378;Ljava/util/List;Lnet/minecraft/class_5321;)V method_45521 method_45521 + p 3 key + m (Lnet/minecraft/class_5363;)Z method_45517 isOverworldVanilla + p 0 dimensionOptions + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5363;)Z method_45528 isVanilla + p 0 key + p 1 dimensionOptions + m (Ljava/util/List;Lnet/minecraft/class_5321;Lnet/minecraft/class_5363;)V method_45524 method_45524 + p 2 dimensionOptions + m (Lnet/minecraft/class_5363;)Z method_45529 isNetherVanilla + p 0 dimensionOptions + m (Lnet/minecraft/class_5363;)Lnet/minecraft/class_31$class_7729; method_45534 method_45534 + p 0 overworldEntry + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5363;)Lcom/mojang/serialization/Lifecycle; method_45515 getLifecycle + p 0 key + p 1 dimensionOptions + m (Lnet/minecraft/class_2378;)V + p 1 dimensionOptionsRegistry + m (Lnet/minecraft/class_5363;)Z method_45533 isTheEndVanilla + p 0 dimensionOptions + m ()Ljava/util/Map; comp_1014 dimensions + m (Ljava/util/Map;)V + p 1 dimensions +c net/minecraft/class_7723$class_7724 net/minecraft/world/dimension/DimensionOptionsRegistryHolder$Entry + f Lnet/minecraft/class_5363; comp_1016 value + f Lnet/minecraft/class_5321; comp_1015 key + m ()Lnet/minecraft/class_9248; method_57014 toEntryInfo + m ()Lnet/minecraft/class_5321; comp_1015 key + m ()Lnet/minecraft/class_5363; comp_1016 value + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5363;)V + p 1 key + p 2 value +c net/minecraft/class_7723$class_7725 net/minecraft/world/dimension/DimensionOptionsRegistryHolder$DimensionsConfig + f Lnet/minecraft/class_2378; comp_1017 dimensions + f Lnet/minecraft/class_31$class_7729; comp_1018 specialWorldProperty + m ()Lnet/minecraft/class_5455$class_6890; method_45537 toDynamicRegistryManager + m ()Lcom/mojang/serialization/Lifecycle; method_45536 getLifecycle + m ()Lnet/minecraft/class_2378; comp_1017 dimensions + m ()Lnet/minecraft/class_31$class_7729; comp_1018 specialWorldProperty + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_31$class_7729;)V + p 1 dimensions + p 2 specialWorldProperty +c net/minecraft/class_7722 net/minecraft/world/event/listener/VibrationSelector + c Selects a vibration to accept in case multiple ones are received at the same tick. + f Lcom/mojang/serialization/Codec; field_40359 CODEC + f Ljava/util/Optional; field_40360 current + m (Ljava/util/Optional;J)V + p 2 tick + p 1 vibration + m (Lnet/minecraft/class_7269;J)Z method_45507 shouldSelect + p 1 vibration + p 2 tick + m (Lnet/minecraft/class_7269;J)V method_45505 tryAccept + p 2 tick + p 1 vibration + m (J)Ljava/util/Optional; method_45502 getVibrationToTick + p 1 currentTick + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45504 method_45504 + p 0 instance + m (JLnet/minecraft/class_7269;)Lorg/apache/commons/lang3/tuple/Pair; method_45503 method_45503 + p 2 vibration2 + m ()V method_45501 clear +c net/minecraft/class_7718 net/minecraft/util/math/RotationPropertyHelper + f Lnet/minecraft/class_8013; field_41768 CALCULATOR + f I field_40349 WEST + f I field_40346 NORTH + f I field_40345 MAX + f I field_40348 SOUTH + f I field_40347 EAST + m (Lnet/minecraft/class_2350;)I method_45481 fromDirection + p 0 direction + m ()I method_45478 getMax + m (I)F method_45482 toDegrees + p 0 rotation + m (F)I method_45479 fromYaw + p 0 yaw + m (I)Ljava/util/Optional; method_45480 toDirection + p 0 rotation +c net/minecraft/class_7719 net/minecraft/world/event/listener/GameEventDispatchManager + c Dispatches game events to {@link GameEventDispatcher} instance in the applicable\nchunk sections. + f Lnet/minecraft/class_3218; field_40352 world + m (Ljava/util/List;)V method_45491 dispatchListenersByDistance + p 1 messages + m (Ljava/util/List;Lnet/minecraft/class_6880;Lnet/minecraft/class_243;Lnet/minecraft/class_5712$class_7397;Lnet/minecraft/class_5714;Lnet/minecraft/class_243;)V method_45492 method_45492 + p 6 listenerPos + p 5 listener + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_243;Lnet/minecraft/class_5712$class_7397;)V method_45490 dispatch + p 3 emitter + p 2 emitterPos + p 1 event + m (Lnet/minecraft/class_3218;)V + p 1 world +c net/minecraft/class_7716 net/minecraft/block/entity/ChiseledBookshelfBlockEntity + f I field_40331 MAX_BOOKS + f Lorg/slf4j/Logger; field_40898 LOGGER + f Lnet/minecraft/class_2371; field_41314 heldStacks + f I field_41601 lastInteractedSlot + f I field_57771 DEFAULT_LAST_INTERACTED_SLOT + m ()I method_47887 getLastInteractedSlot + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m (I)V method_47585 updateState + p 1 interactedSlot +c net/minecraft/class_7717 net/minecraft/block/entity/HangingSignBlockEntity + f I field_40333 MAX_TEXT_WIDTH + f I field_40334 TEXT_LINE_HEIGHT +c net/minecraft/class_6405 net/minecraft/advancement/criterion/LightningStrikeCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;)Lnet/minecraft/class_47; method_37239 method_37239 + p 1 bystander + m (Lnet/minecraft/class_47;Ljava/util/List;Lnet/minecraft/class_6405$class_6406;)Z method_37242 method_37242 + p 2 conditions + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1538;Ljava/util/List;)V method_37240 trigger + p 1 player + p 2 lightning + p 3 bystanders +c net/minecraft/class_6405$class_6406 net/minecraft/advancement/criterion/LightningStrikeCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47306 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2072 lightning + f Ljava/util/Optional; comp_2073 bystander + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 3 bystander + p 2 lightning + p 1 playerPredicate + m (Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/class_175; method_37243 create + p 1 bystander + p 0 lightning + m (Lnet/minecraft/class_47;Ljava/util/List;)Z method_37244 test + p 2 bystanders + p 1 lightning + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55058 method_55058 + p 0 instance + m ()Ljava/util/Optional; comp_2073 bystander + m ()Ljava/util/Optional; comp_2072 lightning +c net/minecraft/class_7737 net/minecraft/command/argument/RegistryEntryPredicateArgumentType + f Ljava/util/Collection; field_40417 EXAMPLES + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; field_40419 WRONG_TYPE_EXCEPTION + f Lnet/minecraft/class_7225; field_40420 registryWrapper + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_40418 NOT_FOUND_EXCEPTION + f Lnet/minecraft/class_5321; field_40421 registryRef + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_7737$class_7741; method_45635 parse + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lnet/minecraft/class_7157;Lnet/minecraft/class_5321;)Lnet/minecraft/class_7737; method_45637 registryEntryPredicate + p 1 registryAccess + p 0 registryRef + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45640 method_45640 + p 1 type + p 2 expectedType + p 0 tag + m (Lnet/minecraft/class_7157;Lnet/minecraft/class_5321;)V + p 2 registryRef + p 1 registryAccess + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 2 builder + p 1 context + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_6885$class_6888;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45633 method_45633 + p 1 entryList + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_6880$class_6883;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45632 method_45632 + p 1 entry + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45639 method_45639 + p 0 tag + p 1 type + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/class_5321;)Lnet/minecraft/class_7737$class_7741; method_45636 getRegistryEntryPredicate + p 2 registryRef + p 0 context + p 1 name +c net/minecraft/class_7737$class_7738 net/minecraft/command/argument/RegistryEntryPredicateArgumentType$Serializer + m (Lnet/minecraft/class_7737$class_7738$class_7739;Lnet/minecraft/class_2540;)V method_45643 writePacket + m (Lnet/minecraft/class_7737;)Lnet/minecraft/class_7737$class_7738$class_7739; method_45644 getArgumentTypeProperties + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_7737$class_7738$class_7739; method_45645 fromPacket + m (Lnet/minecraft/class_7737$class_7738$class_7739;Lcom/google/gson/JsonObject;)V method_45642 writeJson +c net/minecraft/class_7737$class_7738$class_7739 net/minecraft/command/argument/RegistryEntryPredicateArgumentType$Serializer$Properties + f Lnet/minecraft/class_5321; field_40423 registryRef + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_7737; method_45646 createType + m (Lnet/minecraft/class_7737$class_7738;Lnet/minecraft/class_5321;)V + p 2 registryRef +c net/minecraft/class_7737$class_7741 net/minecraft/command/argument/RegistryEntryPredicateArgumentType$EntryPredicate + m ()Lcom/mojang/datafixers/util/Either; method_45647 getEntry + m ()Ljava/lang/String; method_45650 asString + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_45648 tryCast + p 1 registryRef +c net/minecraft/class_7737$class_7740 net/minecraft/command/argument/RegistryEntryPredicateArgumentType$EntryBased + f Lnet/minecraft/class_6880$class_6883; comp_1023 value + m (Lnet/minecraft/class_6880;)Z method_45649 test + m (Ljava/lang/Object;)Z test test + p 1 entry + m ()Lnet/minecraft/class_6880$class_6883; comp_1023 value + m (Lnet/minecraft/class_6880$class_6883;)V + p 1 value +c net/minecraft/class_7737$class_7742 net/minecraft/command/argument/RegistryEntryPredicateArgumentType$TagBased + f Lnet/minecraft/class_6885$class_6888; comp_1024 tag + m (Lnet/minecraft/class_6880;)Z method_45651 test + m (Ljava/lang/Object;)Z test test + p 1 entry + m ()Lnet/minecraft/class_6885$class_6888; comp_1024 tag + m (Lnet/minecraft/class_6885$class_6888;)V + p 1 tag +c net/minecraft/class_6404 net/minecraft/predicate/entity/LightningBoltPredicate + f Lcom/mojang/serialization/MapCodec; field_45759 CODEC + f Lnet/minecraft/class_2096$class_2100; comp_1792 blocksSetOnFire + f Ljava/util/Optional; comp_1793 entityStruck + m (Lnet/minecraft/class_2096$class_2100;Ljava/util/Optional;)V + p 1 blocksSetOnFire + p 2 entityStruck + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_1297;)Z method_37235 method_37235 + p 3 struckEntity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53175 method_53175 + p 0 instance + m (Lnet/minecraft/class_2096$class_2100;)Lnet/minecraft/class_6404; method_37237 of + p 0 blocksSetOnFire + m ()Ljava/util/Optional; comp_1793 entityStruck + m ()Lnet/minecraft/class_2096$class_2100; comp_1792 blocksSetOnFire +c net/minecraft/class_6401 net/minecraft/util/profiler/SamplerFactory + f Ljava/util/Set; field_33894 sampledFullPaths + m (Ljava/util/function/Supplier;Ljava/lang/String;Lnet/minecraft/class_5949;)Lnet/minecraft/class_5965; method_37196 createSampler + p 0 profilerSupplier + p 1 id + p 2 type + m (Lorg/apache/commons/lang3/tuple/Pair;)Z method_37198 method_37198 + p 1 target + m (Ljava/util/function/Supplier;Lorg/apache/commons/lang3/tuple/Pair;)Lnet/minecraft/class_5965; method_37197 method_37197 + p 1 target + m (Ljava/util/function/Supplier;)Ljava/util/Set; method_37194 createSamplers + p 1 profilerSupplier +c net/minecraft/class_7733 net/minecraft/command/argument/RegistryEntryReferenceArgumentType + f Lnet/minecraft/class_7225; field_40406 registryWrapper + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_40404 NOT_SUMMONABLE_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; field_40402 INVALID_TYPE_EXCEPTION + f Lnet/minecraft/class_5321; field_40405 registryRef + f Ljava/util/Collection; field_40403 EXAMPLES + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_40401 NOT_FOUND_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880$class_6883; method_45610 getSummonableEntityType + p 1 name + p 0 context + m (Lnet/minecraft/class_7157;Lnet/minecraft/class_5321;)Lnet/minecraft/class_7733; method_45603 registryEntry + p 1 registryRef + p 0 registryAccess + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45604 method_45604 + p 0 id + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880$class_6883; method_45607 getConfiguredFeature + p 1 name + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880$class_6883; method_45611 getStatusEffect + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880$class_6883; method_45601 getEntityAttribute + p 1 name + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880$class_6883; method_45612 getEnchantment + p 1 name + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 2 builder + p 1 context + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45605 method_45605 + p 1 type + p 0 element + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45606 method_45606 + p 1 type + p 2 expectedType + p 0 element + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/class_5321;)Lnet/minecraft/class_6880$class_6883; method_45602 getRegistryEntry + p 1 name + p 2 registryRef + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880$class_6883; method_45608 getStructure + p 0 context + p 1 name + m (Lnet/minecraft/class_7157;Lnet/minecraft/class_5321;)V + p 1 registryAccess + p 2 registryRef + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_6880$class_6883; method_45609 getEntityType + p 1 name + p 0 context + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_6880$class_6883; method_45600 parse +c net/minecraft/class_7733$class_7734 net/minecraft/command/argument/RegistryEntryReferenceArgumentType$Serializer + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_7733$class_7734$class_7735; method_45616 fromPacket + m (Lnet/minecraft/class_7733$class_7734$class_7735;Lnet/minecraft/class_2540;)V method_45614 writePacket + m (Lnet/minecraft/class_7733$class_7734$class_7735;Lcom/google/gson/JsonObject;)V method_45613 writeJson + m (Lnet/minecraft/class_7733;)Lnet/minecraft/class_7733$class_7734$class_7735; method_45615 getArgumentTypeProperties +c net/minecraft/class_7733$class_7734$class_7735 net/minecraft/command/argument/RegistryEntryReferenceArgumentType$Serializer$Properties + f Lnet/minecraft/class_5321; field_40408 registryRef + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_7733; method_45617 createType + m (Lnet/minecraft/class_7733$class_7734;Lnet/minecraft/class_5321;)V + p 2 registryRef +c net/minecraft/class_6402 net/minecraft/util/profiler/ServerSamplerSource + f Ljava/util/Set; field_33895 samplers + f Lnet/minecraft/class_6401; field_33896 factory + f Lorg/slf4j/Logger; field_33988 LOGGER + m (Lcom/google/common/base/Stopwatch;)D method_37201 method_37201 + p 0 watch + m ()Ljava/util/Set; method_37199 createSystemSamplers + m (Lnet/minecraft/class_6402$class_6403;I)Lnet/minecraft/class_5965; method_37200 method_37200 + p 1 index + m (Ljava/util/function/LongSupplier;)Lnet/minecraft/class_5965; method_37202 createTickTimeTracker + p 0 nanoTimeSupplier + m (Ljava/util/function/LongSupplier;Z)V + p 1 nanoTimeSupplier + p 2 includeSystem +c net/minecraft/class_6402$class_6403 net/minecraft/util/profiler/ServerSamplerSource$CpuUsageFetcher + f [[J field_33900 loadTicks + f [D field_33901 loadBetweenTicks + f J field_33902 lastCheckTime + f Loshi/SystemInfo; field_33898 systemInfo + f I field_33897 logicalProcessorCount + f Loshi/hardware/CentralProcessor; field_33899 processor + m (I)D method_37205 getCpuUsage + p 1 index +c net/minecraft/class_7730 net/minecraft/client/render/entity/animation/CamelAnimations + f Lnet/minecraft/class_7184; field_40384 WALKING + f Lnet/minecraft/class_7184; field_40385 SITTING_TRANSITION + f Lnet/minecraft/class_7184; field_40386 STANDING_TRANSITION + f Lnet/minecraft/class_7184; field_40749 SITTING + f Lnet/minecraft/class_7184; field_40387 DASHING + f Lnet/minecraft/class_7184; field_40388 IDLING +c net/minecraft/class_6400 net/minecraft/util/profiler/SamplerSource + m (Ljava/util/function/Supplier;)Ljava/util/Set; method_37189 getSamplers + p 1 profilerSupplier +c net/minecraft/class_7727 net/minecraft/unused/packageinfo/PackageInfo7727 +c net/minecraft/class_7728 net/minecraft/unused/packageinfo/PackageInfo7728 +c net/minecraft/class_7701 net/minecraft/resource/featuretoggle/FeatureFlags + f Lnet/minecraft/class_7699; field_40182 VANILLA_FEATURES + f Lnet/minecraft/class_7699; field_40183 DEFAULT_ENABLED_FEATURES + f Lnet/minecraft/class_7696; field_40177 VANILLA + f Lcom/mojang/serialization/Codec; field_40181 CODEC + f Lnet/minecraft/class_7696; field_52556 MINECART_IMPROVEMENTS + f Lnet/minecraft/class_7696; field_45142 TRADE_REBALANCE + f Lnet/minecraft/class_7696; field_52555 REDSTONE_EXPERIMENTS + f Lnet/minecraft/class_7697; field_40180 FEATURE_MANAGER + m (Ljava/util/Set;Lnet/minecraft/class_2960;)Z method_45408 method_45408 + p 1 id + m (Lnet/minecraft/class_7697;Lnet/minecraft/class_7699;Lnet/minecraft/class_7699;)Ljava/lang/String; method_45405 printMissingFlags + p 2 features + p 1 featuresToCheck + p 0 featureManager + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_7699;)Ljava/lang/String; method_45407 printMissingFlags + p 1 features + p 0 featuresToCheck + m (Lnet/minecraft/class_7699;)Z method_45406 isNotVanilla + p 0 features +c net/minecraft/class_7702 net/minecraft/unused/packageinfo/PackageInfo7702 +c net/minecraft/class_7700 net/minecraft/resource/featuretoggle/FeatureUniverse + f Ljava/lang/String; field_40176 name + m (Ljava/lang/String;)V + p 1 name +c net/minecraft/class_7714 net/minecraft/block/ChiseledBookshelfBlock + f I field_41307 BOOK_HEIGHT + f Lcom/mojang/serialization/MapCodec; field_46312 CODEC + f I field_41309 MAX_BOOK_COUNT + f Lnet/minecraft/class_2754; field_61990 FACING + f Lnet/minecraft/class_2746; field_61991 SLOT_0_OCCUPIED + f Lnet/minecraft/class_2746; field_61992 SLOT_1_OCCUPIED + f Lnet/minecraft/class_2746; field_61995 SLOT_4_OCCUPIED + f Lnet/minecraft/class_2746; field_61996 SLOT_5_OCCUPIED + f Lnet/minecraft/class_2746; field_61993 SLOT_2_OCCUPIED + f Ljava/util/List; field_41308 SLOT_OCCUPIED_PROPERTIES + f Lnet/minecraft/class_2746; field_61994 SLOT_3_OCCUPIED + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_7716;I)V method_45457 tryRemoveBook + p 4 slot + p 3 blockEntity + p 2 player + p 1 pos + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_7716;Lnet/minecraft/class_1799;I)V method_45458 tryAddBook + p 3 blockEntity + p 4 stack + p 5 slot + p 0 world + p 1 pos + p 2 player + m (Lnet/minecraft/class_2689$class_2690;Lnet/minecraft/class_2769;)V method_47578 method_47578 + p 1 property +c net/minecraft/class_7715 net/minecraft/block/WallHangingSignBlock + f Ljava/util/Map; field_40324 OUTLINE_SHAPES_BY_AXIS + f Lnet/minecraft/class_2754; field_40319 FACING + f Lcom/mojang/serialization/MapCodec; field_46488 CODEC + f Ljava/util/Map; field_55822 COLLISION_SHAPES_BY_AXIS + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54063 method_54063 + p 0 instance + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z method_45461 canAttachAt + p 3 pos + p 2 world + p 1 state + m (Lnet/minecraft/class_3965;Lnet/minecraft/class_2680;)Z method_50005 isHitOnFacingAxis + p 1 hitResult + p 2 state + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_45460 canAttachTo + p 2 state + p 3 toPos + p 1 world + p 4 direction + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1657;Lnet/minecraft/class_3965;Lnet/minecraft/class_2625;Lnet/minecraft/class_1799;)Z method_50004 shouldTryAttaching + p 1 state + p 2 player + p 3 hitResult + p 4 sign + p 5 stack +c net/minecraft/class_7712 net/minecraft/resource/DataConfiguration + f Lcom/mojang/serialization/Codec; field_40259 CODEC + f Ljava/lang/String; field_40258 ENABLED_FEATURES_KEY + f Lcom/mojang/serialization/MapCodec; field_56453 MAP_CODEC + f Lnet/minecraft/class_7712; field_40260 SAFE_MODE + f Lnet/minecraft/class_5359; comp_1010 dataPacks + f Lnet/minecraft/class_7699; comp_1011 enabledFeatures + m (Lnet/minecraft/class_7699;)Lnet/minecraft/class_7712; method_45449 withFeaturesAdded + p 1 features + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45450 method_45450 + p 0 instance + m ()Lnet/minecraft/class_7699; comp_1011 enabledFeatures + m ()Lnet/minecraft/class_5359; comp_1010 dataPacks + m (Lnet/minecraft/class_5359;Lnet/minecraft/class_7699;)V + p 1 dataPacks + p 2 enabledFeatures +c net/minecraft/class_7713 net/minecraft/block/HangingSignBlock + f Lcom/mojang/serialization/MapCodec; field_46308 CODEC + f Lnet/minecraft/class_2758; field_40300 ROTATION + f Lnet/minecraft/class_2746; field_40301 ATTACHED + f Ljava/util/Map; field_55745 SHAPES_BY_ROTATION + f Lnet/minecraft/class_265; field_40303 DEFAULT_SHAPE + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53991 method_53991 + p 0 instance + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_3965;Lnet/minecraft/class_2625;Lnet/minecraft/class_1799;)Z method_50002 shouldTryAttaching + p 2 hitResult + p 1 player + p 4 stack + p 3 sign +c net/minecraft/class_7710 net/minecraft/recipe/book/CraftingRecipeCategory + f Ljava/lang/String; field_40253 id + f Ljava/util/function/IntFunction; field_48352 INDEX_TO_VALUE + f I field_48354 index + f Lnet/minecraft/class_9139; field_48353 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_40252 CODEC + f Lnet/minecraft/class_7710; field_40251 MISC + f Lnet/minecraft/class_7710; field_40250 EQUIPMENT + f Lnet/minecraft/class_7710; field_40248 BUILDING + f Lnet/minecraft/class_7710; field_40249 REDSTONE + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 id + p 4 index + m ()I method_56101 getIndex +c net/minecraft/class_7709 net/minecraft/recipe/book/CookingRecipeCategory + f Ljava/util/function/IntFunction; field_54632 BY_ID + f I field_54633 id + f Lcom/mojang/serialization/Codec; field_40245 CODEC + f Lnet/minecraft/class_9139; field_54631 PACKET_CODEC + f Ljava/lang/String; field_40246 name + f Lnet/minecraft/class_7709; field_40243 BLOCKS + f Lnet/minecraft/class_7709; field_40242 FOOD + f Lnet/minecraft/class_7709; field_40244 MISC + m (Lnet/minecraft/class_7709;)I method_64670 method_64670 + p 0 category + m (Ljava/lang/String;IILjava/lang/String;)V + p 4 name + p 3 id + m (Lnet/minecraft/class_7709;)I method_64669 method_64669 + p 0 category +c net/minecraft/class_7707 net/minecraft/item/HangingSignItem + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)V + p 3 settings + p 2 wallHangingSign + p 1 hangingSign +c net/minecraft/class_7708 net/minecraft/item/ItemStackSet + f Lit/unimi/dsi/fastutil/Hash$Strategy; field_40212 HASH_STRATEGY + m ()Ljava/util/Set; method_47572 create +c net/minecraft/class_7708$1 net/minecraft/item/ItemStackSet$1 + m (Ljava/lang/Object;)I hashCode hashCode + p 1 stack + m (Ljava/lang/Object;Ljava/lang/Object;)Z equals equals + p 2 second + p 1 first + m (Lnet/minecraft/class_1799;)I method_45436 hashCode + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_45437 equals +c net/minecraft/class_7706 net/minecraft/item/ItemGroups + f Lnet/minecraft/class_5321; field_41062 INGREDIENTS + f Lnet/minecraft/class_5321; field_40198 REDSTONE + f Lnet/minecraft/class_1761$class_8128; field_42466 displayContext + f Lnet/minecraft/class_5321; field_41059 COLORED_BLOCKS + f Ljava/util/Comparator; field_42465 PAINTING_VARIANT_COMPARATOR + f Lnet/minecraft/class_5321; field_41063 OPERATOR + f Lnet/minecraft/class_5321; field_40197 FUNCTIONAL + f Lnet/minecraft/class_5321; field_40206 INVENTORY + f Lnet/minecraft/class_5321; field_40202 COMBAT + f Lnet/minecraft/class_5321; field_40743 NATURAL + f Lnet/minecraft/class_2960; field_52023 ITEM_SEARCH_TAB_TEXTURE_ID + f Lnet/minecraft/class_5321; field_41060 TOOLS + f Lnet/minecraft/class_5321; field_40205 SPAWN_EGGS + f Lnet/minecraft/class_2960; field_52022 INVENTORY_TAB_TEXTURE_ID + f Lnet/minecraft/class_5321; field_41061 FOOD_AND_DRINK + f Lnet/minecraft/class_5321; field_40195 BUILDING_BLOCKS + f Lnet/minecraft/class_5321; field_40199 HOTBAR + f Lnet/minecraft/class_5321; field_40200 SEARCH + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_51317 register + p 0 id + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_7225$class_7226;)V method_51312 method_51312 + p 2 registryWrapper + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761$class_7704;)V method_51332 method_51332 + p 1 entries + p 0 displayContext + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761$class_7704;)V method_51316 method_51316 + p 1 displayContext + p 2 entries + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_7225;Lnet/minecraft/class_1792;Lnet/minecraft/class_6862;Lnet/minecraft/class_1761$class_7705;)V method_45426 addInstruments + p 2 item + p 3 instrumentTag + p 4 visibility + p 0 entries + p 1 registryWrapper + m (Lnet/minecraft/class_6880;)Z method_51314 method_51314 + p 0 registryEntry + m ()Ljava/util/stream/Stream; method_51327 stream + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_7225;Lnet/minecraft/class_1761$class_7705;)V method_45430 addAllLevelEnchantedBooks + p 2 stackVisibility + p 1 registryWrapper + p 0 entries + m (Lnet/minecraft/class_1761;)Z method_47340 method_47340 + p 0 group + m (Lnet/minecraft/class_6880$class_6883;I)Lnet/minecraft/class_1799; method_59970 method_59970 + p 1 level + m ()Ljava/util/List; method_47341 getGroups + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761$class_7704;)V method_51325 method_51325 + p 0 displayContext + p 1 entries + m (Lnet/minecraft/class_1761$class_8128;)V method_47337 updateEntries + p 0 displayContext + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_1761$class_7705;Lnet/minecraft/class_1799;)V method_48934 method_48934 + p 2 stack + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_1761$class_7705;Lnet/minecraft/class_1799;)V method_48954 method_48954 + p 2 stack + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761$class_7704;)V method_51311 method_51311 + p 1 entries + p 0 displayContext + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761$class_7704;)V method_51323 method_51323 + p 0 displayContext + p 1 entries + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_7225$class_7226;Ljava/util/function/Predicate;Lnet/minecraft/class_1761$class_7705;)V method_48937 addPaintings + p 0 entries + p 3 filter + p 4 stackVisibility + p 1 registries + p 2 registryWrapper + m ()Ljava/util/List; method_47335 getGroupsToDisplay + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761;)V method_47338 method_47338 + p 1 group + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_1761$class_7705;)V method_47332 addSuspiciousStews + p 0 entries + p 1 visibility + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761$class_7704;)V method_51336 method_51336 + p 1 entries + p 0 displayContext + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761$class_7704;)V method_51328 method_51328 + p 0 displayContext + p 1 entries + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_7225$class_7226;)V method_51324 method_51324 + p 1 wrapper + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_7225;Lnet/minecraft/class_1792;Lnet/minecraft/class_1761$class_7705;Lnet/minecraft/class_7699;)V method_45427 addPotions + p 1 registryWrapper + p 0 entries + p 3 visibility + p 2 item + p 4 enabledFeatures + m ()Lnet/minecraft/class_1761; method_47344 getSearchGroup + m (Lnet/minecraft/class_7699;ZLnet/minecraft/class_7225$class_7874;)Z method_47330 updateDisplayContext + p 1 operatorEnabled + p 0 enabledFeatures + p 2 registries + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_1799; method_59972 method_59972 + p 0 enchantmentEntry + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_7225$class_7226;)V method_51326 method_51326 + p 2 registryWrapper + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761$class_7704;)V method_51330 method_51330 + p 1 entries + p 0 displayContext + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761;)V method_47331 method_47331 + p 1 group + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_6880$class_6883;)Z method_58650 method_58650 + p 1 potionEntry + m (Lnet/minecraft/class_6880;)Z method_51320 method_51320 + p 0 registryEntry + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_7225$class_7226;)V method_51322 method_51322 + p 2 registryWrapper + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_1761$class_7705;)V method_58652 addOminousBottles + p 0 entries + p 1 visibility + m ()Lnet/minecraft/class_1761; method_47328 getDefaultTab + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761$class_7704;)V method_51334 method_51334 + p 1 entries + p 0 displayContext + m (Lnet/minecraft/class_6880$class_6883;)Ljava/util/stream/Stream; method_59969 method_59969 + p 0 enchantmentEntry + m ()V method_47334 collect + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_7225;Lnet/minecraft/class_1761$class_7705;)V method_45428 addMaxLevelEnchantedBooks + p 2 stackVisibility + p 1 registryWrapper + p 0 entries + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_1761; method_51315 registerAndGetDefault + p 0 registry + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_7225$class_7226;)V method_51313 method_51313 + p 1 registryWrapper + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_1761$class_7705;Lnet/minecraft/class_1799;)V method_48947 method_48947 + p 2 stack + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_1761$class_7705;)V method_47339 addFireworkRockets + p 0 entries + p 1 visibility + m (Lnet/minecraft/class_1761;)Z method_47333 method_47333 + p 0 group + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_1761$class_7705;Lnet/minecraft/class_1799;)V method_48952 method_48952 + p 2 stack + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761$class_7704;)V method_51321 method_51321 + p 0 displayContext + p 1 entries + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_6880;)Lnet/minecraft/class_1799; method_48941 method_48941 + p 1 instrument + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_1799; method_48940 method_48940 + p 1 entry + m (Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_7225$class_7226;)V method_51319 method_51319 + p 2 registryWrapper + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1761$class_7704;Lnet/minecraft/class_1761$class_7705;Lnet/minecraft/class_6885$class_6888;)V method_48939 method_48939 + p 3 entryList + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761$class_7704;)V method_51338 method_51338 + p 1 entries + p 0 displayContext + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761$class_7704;)V method_51318 method_51318 + p 0 displayContext + p 1 entries +c net/minecraft/class_5188 net/minecraft/structure/pool/LegacySinglePoolElement + f Lcom/mojang/serialization/MapCodec; field_24949 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28874 method_28874 + p 0 instance +c net/minecraft/class_5182 net/minecraft/structure/BastionTreasureData + m (Lnet/minecraft/class_7891;)V method_27204 bootstrap + p 0 poolRegisterable +c net/minecraft/class_5181 net/minecraft/structure/BastionData + m (Lnet/minecraft/class_7891;)V method_27203 bootstrap + p 0 poolRegisterable +c net/minecraft/class_5183 net/minecraft/world/gen/structure/RuinedPortalStructure + f Ljava/util/List; field_37813 setups + f Lcom/mojang/serialization/MapCodec; field_37812 CODEC + f [Ljava/lang/String; field_23998 RARE_PORTAL_STRUCTURE_IDS + f [Ljava/lang/String; field_23999 COMMON_PORTAL_STRUCTURE_IDS + f I field_31511 MIN_BLOCKS_ABOVE_WORLD_BOTTOM + f F field_31512 RARE_PORTAL_CHANCE + m (Lnet/minecraft/class_3195$class_7302;Lnet/minecraft/class_5183$class_7155;)V + p 2 setup + p 1 config + m (Lnet/minecraft/class_5819;II)I method_27210 choosePlacementHeight + p 2 max + p 1 min + p 0 random + m (Lnet/minecraft/class_2919;F)Z method_41682 shouldPlaceAirPocket + p 0 random + p 1 probability + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41685 method_41685 + p 0 instance + m (Lnet/minecraft/class_3195$class_7302;Ljava/util/List;)V + p 1 config + p 2 setups + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_2794;Lnet/minecraft/class_5189$class_5191;ZIILnet/minecraft/class_3341;Lnet/minecraft/class_5539;Lnet/minecraft/class_7138;)I method_27211 getFloorHeight + p 8 noiseConfig + p 7 world + p 4 height + p 3 airPocket + p 6 box + p 5 blockCountY + p 0 random + p 2 verticalPlacement + p 1 chunkGenerator + m (Lnet/minecraft/class_5183$class_7155;Lnet/minecraft/class_5189$class_5190;Lnet/minecraft/class_2338;Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_7138;Lnet/minecraft/class_2794;Lnet/minecraft/class_2960;Lnet/minecraft/class_3499;Lnet/minecraft/class_2470;Lnet/minecraft/class_2415;Lnet/minecraft/class_2338;Lnet/minecraft/class_6626;)V method_41683 method_41683 + p 11 collector + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;I)Z method_27209 isColdAt + p 0 pos + p 1 biome + p 2 seaLevel + m (Lnet/minecraft/class_2794;Lnet/minecraft/class_5539;Lnet/minecraft/class_7138;Lnet/minecraft/class_2338;)Lnet/minecraft/class_4966; method_27205 method_27205 + p 3 pos + m (Lnet/minecraft/class_5183;)Ljava/util/List; method_41684 method_41684 + p 0 structure +c net/minecraft/class_5183$class_7155 net/minecraft/world/gen/structure/RuinedPortalStructure$Setup + f Lcom/mojang/serialization/Codec; field_37814 CODEC + f Lnet/minecraft/class_5189$class_5191; comp_576 placement + f F comp_578 mossiness + f Z comp_579 overgrown + f F comp_577 airPocketProbability + f Z comp_580 vines + f Z comp_581 canBeCold + f Z comp_582 replaceWithBlackstone + f F comp_583 weight + m ()Lnet/minecraft/class_5189$class_5191; comp_576 placement + m ()F comp_577 airPocketProbability + m ()F comp_578 mossiness + m ()Z comp_579 overgrown + m ()Z comp_580 vines + m ()Z comp_581 canBeCold + m ()Z comp_582 replaceWithBlackstone + m ()F comp_583 weight + m (Lnet/minecraft/class_5189$class_5191;FFZZZZF)V + p 1 placement + p 2 airPocketProbability + p 3 mossiness + p 4 overgrown + p 5 vines + p 6 canBeCold + p 7 replaceWithBlackstone + p 8 weight +c net/minecraft/class_5189 net/minecraft/structure/RuinedPortalStructurePiece + f Lnet/minecraft/class_5189$class_5191; field_24021 verticalPlacement + f Lnet/minecraft/class_5189$class_5190; field_24022 properties + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2338;Lnet/minecraft/class_5189$class_5191;Lnet/minecraft/class_5189$class_5190;Lnet/minecraft/class_2960;Lnet/minecraft/class_3499;Lnet/minecraft/class_2470;Lnet/minecraft/class_2415;Lnet/minecraft/class_2338;)V + p 8 mirror + p 7 rotation + p 6 template + p 5 id + p 4 properties + p 3 verticalPlacement + p 2 pos + p 1 manager + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_1936;)V method_27245 placeNetherrackBase + p 1 random + p 2 world + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)V method_27249 placeNetherrackBottom + p 3 pos + p 2 world + p 1 random + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_1936;)V method_27243 updateNetherracksInBound + p 1 random + p 2 world + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)V method_27248 updateNetherracks + p 3 pos + p 2 world + p 1 random + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2487;)V + p 1 manager + p 2 nbt + m (Lnet/minecraft/class_1936;IILnet/minecraft/class_5189$class_5191;)I method_27237 getBaseHeight + p 0 world + p 3 verticalPlacement + p 2 y + p 1 x + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2487;Lnet/minecraft/class_2960;)Lnet/minecraft/class_3492; method_35451 method_35451 + p 2 id + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)V method_27246 generateOvergrownLeaves + p 3 pos + p 2 world + p 1 random + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Z method_27238 canFillNetherrack + p 2 pos + p 1 world + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)Lnet/minecraft/class_3821; method_27240 createReplacementRule + p 0 old + p 1 updated + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)V method_27244 generateVines + p 3 pos + p 2 world + p 1 random + m (Lnet/minecraft/class_3485;Lnet/minecraft/class_2487;Lnet/minecraft/class_2960;)Lnet/minecraft/class_3492; method_35449 createPlacementData + p 2 id + p 1 nbt + p 0 manager + m (Lnet/minecraft/class_2248;FLnet/minecraft/class_2248;)Lnet/minecraft/class_3821; method_27239 createReplacementRule + p 1 chance + p 2 updated + p 0 old + m (Lnet/minecraft/class_5189$class_5191;Lnet/minecraft/class_5189$class_5190;)Lnet/minecraft/class_3821; method_27247 createLavaReplacementRule + p 1 properties + p 0 verticalPlacement + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)V method_27250 method_27250 + p 3 pos + m (Lnet/minecraft/class_2415;Lnet/minecraft/class_2470;Lnet/minecraft/class_5189$class_5191;Lnet/minecraft/class_2338;Lnet/minecraft/class_5189$class_5190;)Lnet/minecraft/class_3492; method_35450 createPlacementData + p 3 pos + p 4 properties + p 1 rotation + p 2 verticalPlacement + p 0 mirror + m (Lnet/minecraft/class_5189$class_5191;)Lnet/minecraft/class_2902$class_2903; method_27241 getHeightmapType + p 0 verticalPlacement +c net/minecraft/class_5189$class_5191 net/minecraft/structure/RuinedPortalStructurePiece$VerticalPlacement + f Ljava/lang/String; field_24036 id + f Lcom/mojang/serialization/Codec; field_37811 CODEC + f Lnet/minecraft/class_5189$class_5191; field_24031 ON_OCEAN_FLOOR + f Lnet/minecraft/class_5189$class_5191; field_24032 IN_MOUNTAIN + f Lnet/minecraft/class_5189$class_5191; field_24033 UNDERGROUND + f Lnet/minecraft/class_5189$class_5191; field_24034 IN_NETHER + f Lnet/minecraft/class_5189$class_5191; field_24030 PARTLY_BURIED + f Lnet/minecraft/class_5189$class_5191; field_24029 ON_LAND_SURFACE + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()Ljava/lang/String; method_27252 getId +c net/minecraft/class_5189$class_5190 net/minecraft/structure/RuinedPortalStructurePiece$Properties + f Lcom/mojang/serialization/Codec; field_24993 CODEC + f Z field_24025 airPocket + f Z field_24026 overgrown + f Z field_24027 vines + f F field_24024 mossiness + f Z field_24028 replaceWithBlackstone + f Z field_24023 cold + m (ZFZZZZ)V + p 6 replaceWithBlackstone + p 5 vines + p 4 overgrown + p 3 airPocket + p 2 mossiness + p 1 cold + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28951 method_28951 + p 0 instance +c net/minecraft/class_2902 net/minecraft/world/Heightmap + f Ljava/util/function/Predicate; field_16744 NOT_AIR + f Ljava/util/function/Predicate; field_16745 SUFFOCATES + f Lnet/minecraft/class_2791; field_13191 chunk + f Ljava/util/function/Predicate; field_13193 blockPredicate + f Lorg/slf4j/Logger; field_33770 LOGGER + f Lnet/minecraft/class_6490; field_13192 storage + m (Lnet/minecraft/class_2791;Lnet/minecraft/class_2902$class_2903;[J)V method_12600 setTo + p 1 chunk + p 2 type + p 3 values + m (III)V method_12602 set + p 1 x + p 2 z + p 3 height + m (I)I method_12601 get + p 1 index + m (Lnet/minecraft/class_2791;Ljava/util/Set;)V method_16684 populateHeightmaps + p 1 types + p 0 chunk + m (II)I method_35334 getOneLower + p 1 x + p 2 z + m (II)I method_12603 get + p 1 x + p 2 z + m (IIILnet/minecraft/class_2680;)Z method_12597 trackUpdate + p 4 state + p 3 z + p 2 y + p 1 x + m (Lnet/minecraft/class_2791;Lnet/minecraft/class_2902$class_2903;)V + p 2 type + p 1 chunk + m (II)I method_12595 toIndex + p 1 z + p 0 x + m ()[J method_12598 asLongArray + m (Lnet/minecraft/class_2680;)Z method_16682 method_16682 + p 0 state +c net/minecraft/class_2902$class_2903 net/minecraft/world/Heightmap$Type + f Ljava/util/function/IntFunction; field_56680 INDEX_MAPPER + f Ljava/lang/String; field_13204 id + f Ljava/util/function/Predicate; field_16568 blockPredicate + f Lcom/mojang/serialization/Codec; field_24772 CODEC + f Lnet/minecraft/class_2902$class_2904; field_13198 purpose + f Lnet/minecraft/class_9139; field_56679 PACKET_CODEC + f I field_56681 index + f Lnet/minecraft/class_2902$class_2903; field_13194 WORLD_SURFACE_WG + f Lnet/minecraft/class_2902$class_2903; field_13197 MOTION_BLOCKING + f Lnet/minecraft/class_2902$class_2903; field_13195 OCEAN_FLOOR_WG + f Lnet/minecraft/class_2902$class_2903; field_13200 OCEAN_FLOOR + f Lnet/minecraft/class_2902$class_2903; field_13202 WORLD_SURFACE + f Lnet/minecraft/class_2902$class_2903; field_13203 MOTION_BLOCKING_NO_LEAVES + m ()Ljava/util/function/Predicate; method_16402 getBlockPredicate + m ()Ljava/lang/String; method_12605 getId + m (Lnet/minecraft/class_2902$class_2903;)I method_67687 method_67687 + p 0 type + m (Lnet/minecraft/class_2902$class_2903;)I method_67686 method_67686 + p 0 type + m ()Z method_16137 shouldSendToClient + m (Lnet/minecraft/class_2680;)Z method_16686 method_16686 + p 0 state + m (Ljava/lang/String;IILjava/lang/String;Lnet/minecraft/class_2902$class_2904;Ljava/util/function/Predicate;)V + p 3 index + p 4 id + p 5 purpose + p 6 blockPredicate + m (Lnet/minecraft/class_2680;)Z method_16685 method_16685 + p 0 state + m ()Z method_20454 isStoredServerSide +c net/minecraft/class_2902$class_2904 net/minecraft/world/Heightmap$Purpose + f Lnet/minecraft/class_2902$class_2904; field_16424 CLIENT + f Lnet/minecraft/class_2902$class_2904; field_13207 WORLDGEN + f Lnet/minecraft/class_2902$class_2904; field_13206 LIVE_WORLD +c net/minecraft/class_2905 net/minecraft/network/packet/s2c/login/LoginHelloS2CPacket + f Lnet/minecraft/class_9139; field_48234 CODEC + f Ljava/lang/String; field_13209 serverId + f Z field_48235 needsAuthentication + f [B field_13211 publicKey + f [B field_13210 nonce + m (Lnet/minecraft/class_2540;)V method_56012 write + p 1 buf + m (Ljava/lang/String;[B[BZ)V + p 1 serverId + p 2 publicKey + p 3 nonce + p 4 needsAuthentication + m ()[B method_12613 getNonce + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Ljava/lang/String; method_12610 getServerId + m ()Z method_56013 needsAuthentication + m (Lnet/minecraft/class_2896;)V method_12612 apply + m ()Ljava/security/PublicKey; method_12611 getPublicKey +c net/minecraft/class_2901 net/minecraft/network/packet/s2c/login/LoginSuccessS2CPacket + f Lnet/minecraft/class_9139; field_48233 CODEC + f Lcom/mojang/authlib/GameProfile; comp_2363 profile + m (Lnet/minecraft/class_2896;)V method_12594 apply + m ()Lcom/mojang/authlib/GameProfile; comp_2363 profile + m (Lcom/mojang/authlib/GameProfile;)V + p 1 profile +c net/minecraft/class_2907 net/minecraft/network/packet/s2c/login/LoginCompressionS2CPacket + f Lnet/minecraft/class_9139; field_48236 CODEC + f I field_13232 compressionThreshold + m (I)V + p 1 compressionThreshold + m (Lnet/minecraft/class_2540;)V method_56014 write + p 1 buf + m (Lnet/minecraft/class_2896;)V method_12633 apply + m ()I method_12634 getCompressionThreshold + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_2909 net/minecraft/network/packet/s2c/login/LoginDisconnectS2CPacket + f Lnet/minecraft/class_2561; comp_4195 reason + f Lnet/minecraft/class_9139; field_48237 CODEC + f Lnet/minecraft/class_6903; field_60329 OPS + m ()Lnet/minecraft/class_2561; comp_4195 reason + m (Lnet/minecraft/class_2896;)V method_12637 apply + m (Lnet/minecraft/class_2561;)V + p 1 reason +c net/minecraft/class_5196 net/minecraft/datafixer/fix/BitStorageAlignFix + f I field_29864 CHUNK_WIDTH + f I field_29863 ELEMENT_BIT_SHIFT + f I field_29866 MAX_BLOCK_STATE_ID + f I field_29865 CHUNK_LENGTH + f I field_29868 MAX_HEIGHT_VALUE + f I field_29867 HEIGHT_VALUE_BITS + m (Ljava/util/List;)Ljava/lang/Integer; method_27296 method_27296 + p 0 palette + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_27773 method_27773 + p 1 heightmap + m (Lcom/mojang/serialization/Dynamic;ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28173 method_28173 + p 2 statesDynamic + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28172 method_28172 + p 1 sectionDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_27769 method_27769 + p 0 levelDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;II)Lcom/mojang/serialization/Dynamic; method_27772 fixBitStorageArray + p 0 sectionDynamic + p 1 statesDynamic + p 2 maxValue + p 3 elementBits + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27294 method_27294 + p 2 levelSection + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27292 method_27292 + p 5 chunk + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27295 method_27295 + p 1 section + m (II[J)[J method_27288 resizePackedIntArray + p 2 elements + p 1 elementBits + p 0 maxValue + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27774 fixLevel + p 2 paletteFinder + p 3 level + p 0 levelSectionsFinder + p 1 sectionFinder + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27775 fixHeightmaps + p 1 fixedLevel + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27293 method_27293 + p 4 level + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28174 method_28174 + p 1 heightmapsDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28175 method_28175 + p 1 heightmapDynamic +c net/minecraft/class_5198 net/minecraft/world/rule/GameRuleCategory + f Ljava/util/List; field_64175 CATEGORIES + f Lnet/minecraft/class_2960; comp_5174 id + f Lnet/minecraft/class_5198; field_24094 PLAYER + f Lnet/minecraft/class_5198; field_24095 MOBS + f Lnet/minecraft/class_5198; field_24096 SPAWNING + f Lnet/minecraft/class_5198; field_24097 DROPS + f Lnet/minecraft/class_5198; field_24098 UPDATES + f Lnet/minecraft/class_5198; field_24099 CHAT + f Lnet/minecraft/class_5198; field_24100 MISC + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5198; method_76160 register + p 0 id + m ()Lnet/minecraft/class_2960; method_27328 getCategory + m ()Lnet/minecraft/class_5250; method_76162 getText + m (Ljava/lang/String;)Lnet/minecraft/class_5198; method_76161 register + p 0 name + m ()Lnet/minecraft/class_2960; comp_5174 id + m (Lnet/minecraft/class_2960;)V + p 1 id +c net/minecraft/class_5193 net/minecraft/structure/processor/BlockAgeStructureProcessor + f F field_24042 mossiness + f [Lnet/minecraft/class_2680; field_27338 AGEABLE_SLABS + f Lcom/mojang/serialization/MapCodec; field_24997 CODEC + m (Lnet/minecraft/class_5819;[Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_27259 randomState + p 1 states + p 0 random + m (F)V + p 1 mossiness + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_5819;)Lnet/minecraft/class_2680; method_27258 processStairs + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2680; method_27257 randomStairProperties + p 1 stairs + p 0 random + m (Lnet/minecraft/class_5819;[Lnet/minecraft/class_2680;[Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_27260 process + p 2 regularStates + p 1 random + p 3 mossyStates + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_5819;)Lnet/minecraft/class_2680; method_27261 processSlabs + m (Lnet/minecraft/class_5193;)Ljava/lang/Float; method_28967 method_28967 + p 0 processor + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_2680; method_27256 processBlocks + p 1 random + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_5819;)Lnet/minecraft/class_2680; method_27262 processWalls + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_2680; method_27263 processObsidian + p 1 random +c net/minecraft/class_5192 net/minecraft/structure/processor/BlackstoneReplacementStructureProcessor + f Ljava/util/Map; field_24041 replacementMap + f Lnet/minecraft/class_5192; field_24040 INSTANCE + f Lcom/mojang/serialization/MapCodec; field_24996 CODEC + m (Ljava/util/HashMap;)V method_27255 method_27255 + p 0 replacements +c net/minecraft/class_5195 net/minecraft/sound/MusicSound + f Lcom/mojang/serialization/Codec; field_24627 CODEC + f Lnet/minecraft/class_6880; comp_5124 sound + f Z comp_4361 replaceCurrentMusic + f I comp_4359 minDelay + f I comp_4360 maxDelay + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28128 method_28128 + p 0 instance + m (Lnet/minecraft/class_6880;IIZ)V + p 3 maxDelay + p 4 replaceCurrentMusic + p 1 sound + p 2 minDelay + m ()I comp_4359 minDelay + m ()Lnet/minecraft/class_6880; comp_5124 sound + m ()Z comp_4361 replaceCurrentMusic + m ()I comp_4360 maxDelay +c net/minecraft/class_5194 net/minecraft/network/packet/c2s/play/JigsawGeneratingC2SPacket + f Z field_25323 keepJigsaws + f Lnet/minecraft/class_2338; field_24054 pos + f Lnet/minecraft/class_9139; field_48196 CODEC + f I field_24055 maxDepth + m (Lnet/minecraft/class_2792;)V method_27274 apply + m (Lnet/minecraft/class_2338;IZ)V + p 3 keepJigsaws + p 2 maxDepth + p 1 pos + m ()Z method_29446 shouldKeepJigsaws + m ()I method_27276 getMaxDepth + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Lnet/minecraft/class_2338; method_27275 getPos + m (Lnet/minecraft/class_2540;)V method_55977 write + p 1 buf +c net/minecraft/class_2913 net/minecraft/network/packet/c2s/login/LoginQueryResponseC2SPacket + f Lnet/minecraft/class_8594; comp_1570 response + f I comp_1569 queryId + f I field_33374 MAX_PAYLOAD_SIZE + f Lnet/minecraft/class_9139; field_48249 CODEC + m ()Lnet/minecraft/class_8594; comp_1570 response + m ()I comp_1569 queryId + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2913; method_52292 read + p 0 buf + m (Lnet/minecraft/class_2911;)V method_12645 apply + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_8594; method_52293 getVanillaPayload + p 0 buf + m (ILnet/minecraft/class_2540;)Lnet/minecraft/class_8594; method_52290 readPayload + c {@return the response payload read from {@code buf}}\n\n@implNote This delegates the logic to {@link #getVanillaPayload},\nwhich simply validates the size of the buffer and returns {@link\nUnknownLoginQueryResponsePayload#INSTANCE}. + p 0 queryId + p 1 buf + m (Lnet/minecraft/class_2540;)V method_11052 write + p 1 buf + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_8594;)V method_52291 method_52291 + p 1 response + p 0 buf + m (ILnet/minecraft/class_8594;)V + p 1 queryId + p 2 response +c net/minecraft/class_2915 net/minecraft/network/packet/c2s/login/LoginHelloC2SPacket + f Lnet/minecraft/class_9139; field_48250 CODEC + f Ljava/util/UUID; comp_907 profileId + f Ljava/lang/String; comp_765 name + m (Lnet/minecraft/class_2911;)V method_12649 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_56020 write + p 1 buf + m ()Ljava/lang/String; comp_765 name + m ()Ljava/util/UUID; comp_907 profileId + m (Ljava/lang/String;Ljava/util/UUID;)V + p 1 name + p 2 profileId +c net/minecraft/class_2910 net/minecraft/world/spawner/PhantomSpawner + f I field_13244 cooldown +c net/minecraft/class_2911 net/minecraft/network/listener/ServerLoginPacketListener + m (Lnet/minecraft/class_2917;)V method_12642 onKey + p 1 packet + m (Lnet/minecraft/class_2915;)V method_12641 onHello + p 1 packet + m (Lnet/minecraft/class_8593;)V method_52289 onEnterConfiguration + p 1 packet + m (Lnet/minecraft/class_2913;)V method_12640 onQueryResponse + p 1 packet +c net/minecraft/class_2917 net/minecraft/network/packet/c2s/login/LoginKeyC2SPacket + f [B field_39089 nonce + c The nonce value.\n\n@implNote This value is either encrypted (the left side of {@code Either}) or signed\n(the right side). If encrypted, then it must be done so using the server's public key\nand the server verifies it by decrypting and comparing nonces. If signed, then it must\nbe done so using the user's private key provided from Mojang's server, and the server\nverifies by checking if the reconstructed data can be verified using the public key. + f Lnet/minecraft/class_9139; field_48251 CODEC + f [B field_13274 encryptedSecretKey + m (Ljavax/crypto/SecretKey;Ljava/security/PublicKey;[B)V + p 3 nonce + p 2 publicKey + p 1 secretKey + m (Lnet/minecraft/class_2911;)V method_12653 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Ljava/security/PrivateKey;)Ljavax/crypto/SecretKey; method_12654 decryptSecretKey + p 1 privateKey + m (Lnet/minecraft/class_2540;)V method_56021 write + p 1 buf + m ([BLjava/security/PrivateKey;)Z method_43643 verifySignedNonce + p 1 nonce + p 2 privateKey +c net/minecraft/class_2919 net/minecraft/util/math/random/ChunkRandom + f I field_28768 sampleCount + f Lnet/minecraft/class_5819; field_35141 baseRandom + m (JII)V method_12663 setCarverSeed + c Seeds the randomizer to generate larger features such as caves, ravines, mineshafts\nand strongholds. It is also used to initiate structure start behavior such as rotation.\n\n

Similar to the population seed, only the 48 lowest bits of the world seed affect the\noutput since it the upper 16 bits are truncated in the setSeed() call. + p 4 chunkZ + p 3 chunkX + p 1 worldSeed + m (JII)V method_12664 setDecoratorSeed + c Seeds the randomizer to generate a given feature.\n\nThe salt, in the form of {@code index + 10000 * step} assures that each feature is seeded\ndifferently, making the decoration feel more random. Even though it does a good job\nat doing so, many entropy issues arise from the salt being so small and result in\nweird alignments between features that have an index close apart. + p 3 index + c the index of the feature in the feature list + p 4 step + c the generation step's ordinal for this feature + p 1 populationSeed + c the population seed computed in {@link #setPopulationSeed(long, int, int)} + m (JIII)V method_12665 setRegionSeed + c Seeds the randomizer to determine the start position of structure features such as\ntemples, monuments and buried treasures within a region.\n\n

The region coordinates pair corresponds to the coordinates of the region the seeded\nchunk lies in. For example, a swamp hut region is 32 by 32 chunks meaning that all\nchunks that lie within that region get seeded the same way.\n\n

Similarly, the upper 16 bits of world seed also do not affect the region seed because\nthey get truncated in the setSeed() call. + p 1 worldSeed + p 3 regionX + p 4 regionZ + p 5 salt + m ()I method_35335 getSampleCount + m (JII)J method_12661 setPopulationSeed + c Seeds the randomizer to create population features such as decorators and animals.\n\n

This method takes in the world seed and the negative-most block coordinates of the\nchunk. The coordinate pair provided is equivalent to (chunkX * 16, chunkZ * 16). The\nthree values are mixed together through some layers of hashing to produce the\npopulation seed.\n\n

This function has been proved to be reversible through some exploitation of the underlying\nnextLong() weaknesses. It is also important to remember that since setSeed()\ntruncates the 16 upper bits of world seed, only the 48 lowest bits affect the population\nseed output. + p 4 blockZ + p 3 blockX + p 1 worldSeed + m (Lnet/minecraft/class_5819;)V + p 1 baseRandom + m (IIJJ)Lnet/minecraft/class_5819; method_12662 getSlimeRandom + p 4 scrambler + p 2 worldSeed + p 1 chunkZ + p 0 chunkX +c net/minecraft/class_2919$class_6675 net/minecraft/util/math/random/ChunkRandom$RandomProvider + f Ljava/util/function/LongFunction; field_35144 provider + f Lnet/minecraft/class_2919$class_6675; field_35143 XOROSHIRO + f Lnet/minecraft/class_2919$class_6675; field_35142 LEGACY + m (J)Lnet/minecraft/class_5819; method_39006 create + p 1 seed + m (Ljava/lang/String;ILjava/util/function/LongFunction;)V + p 3 provider +c net/minecraft/class_6496 net/minecraft/util/TopologicalSorts + c Utilities to perform a topological sort. + m (Ljava/util/Map;Ljava/util/Set;Ljava/util/Set;Ljava/util/function/Consumer;Ljava/lang/Object;)Z method_37951 sort + c Performs a topological sort recursively through a reverse DFS. The\nresults are passed to the consumer in reverse order, where each element\nis guaranteed to be passed before any of its predecessors (dependencies).\nWhen multiple orders are valid, the results will first trace along earlier\nreturned successors in the successor set iteration for each element.\n\n@return {@code true} if the sort ends up in a loop, or {@code false} for\na successful sort + p 0 successors + c the map holding information on successor (dependents) of each element + p 1 visited + c elements that already iterated all their successors + p 2 visiting + c elements that are still iterating their successors + p 3 reversedOrderConsumer + c accepts sorted results in reverse order; each element is passed only\nbefore any of its predecessors (dependencies) is, or after all its\nsuccessors (dependents) are passed + p 4 now + c the starting or current element +c net/minecraft/class_6497 net/minecraft/util/dynamic/Range + f Lcom/mojang/serialization/Codec; field_34390 CODEC + f Ljava/lang/Comparable; comp_1 minInclusive + f Ljava/lang/Comparable; comp_2 maxInclusive + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/class_6497;)Lcom/mojang/serialization/DataResult; method_37957 method_37957 + p 2 range + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_37953 createCodec + p 0 elementCodec + m (Ljava/lang/Comparable;)Z method_37955 contains + p 1 value + m (Lnet/minecraft/class_6497;)Z method_37952 contains + p 1 other + m (Lcom/mojang/serialization/Codec;Ljava/lang/Comparable;Ljava/lang/Comparable;)Lcom/mojang/serialization/Codec; method_37954 createRangedCodec + p 2 maxInclusive + p 1 minInclusive + p 0 codec + m (Ljava/lang/Comparable;Ljava/lang/Comparable;)Lcom/mojang/serialization/DataResult; method_37956 validate + p 1 maxInclusive + p 0 minInclusive + m ()Ljava/lang/Comparable; comp_1 minInclusive + m ()Ljava/lang/Comparable; comp_2 maxInclusive + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/util/function/Function;)Lnet/minecraft/class_6497; method_72374 map + p 1 f + m (Ljava/lang/Comparable;Ljava/lang/Comparable;)V + p 1 minInclusive + p 2 maxInclusive + m (Ljava/lang/Comparable;)V + p 1 value +c net/minecraft/class_5165 net/minecraft/client/particle/WhiteAshParticle + f I field_32658 COLOR + m (Lnet/minecraft/class_638;DDDDDDFLnet/minecraft/class_4002;)V + p 8 velocityX + p 10 velocityY + p 4 y + p 6 z + p 15 spriteProvider + p 1 world + p 2 x + p 12 velocityZ + p 14 scaleMultiplier +c net/minecraft/class_5165$class_5166 net/minecraft/client/particle/WhiteAshParticle$Factory + f Lnet/minecraft/class_4002; field_23936 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_27150 createParticle +c net/minecraft/class_6492 net/minecraft/util/math/Spline + m (Lnet/minecraft/class_6492$class_6738;I)Lnet/minecraft/class_6492$class_6737; method_39228 method_39228 + p 1 index + m (Lnet/minecraft/class_6492$class_6738;)Ljava/lang/Record; method_39227 method_39227 + p 0 spline + m (FLnet/minecraft/class_6492;F)Lnet/minecraft/class_6492$class_6737; method_39226 method_39226 + p 2 derivative + p 1 value + p 0 location + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_39232 createCodec + p 0 locationFunctionCodec + m (Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;)Lnet/minecraft/class_6492$class_6493; method_39502 builder + p 1 amplifier + p 0 locationFunction + m (Lnet/minecraft/class_6501;)Lnet/minecraft/class_6492$class_6493; method_37918 builder + p 0 locationFunction + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39233 method_39233 + p 2 instance + m (Lnet/minecraft/class_6492$class_6738;)Ljava/util/List; method_39235 method_39235 + p 0 spline + m (Lnet/minecraft/class_6492;)Lcom/mojang/datafixers/util/Either; method_39229 method_39229 + p 0 spline + m ()Ljava/lang/String; method_39225 getDebugString + m (Lorg/apache/commons/lang3/mutable/MutableObject;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39234 method_39234 + p 1 instance + m (F)Lnet/minecraft/class_6492; method_39427 fixedFloatFunction + p 0 value + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/class_6492; method_39231 method_39231 + p 0 either + m (Lnet/minecraft/class_6501;Ljava/util/List;)Lnet/minecraft/class_6492$class_6738; method_39230 method_39230 + p 0 locationFunction + p 1 splines + m (Lnet/minecraft/class_6492$class_7073;)Lnet/minecraft/class_6492; method_41187 apply + p 1 visitor +c net/minecraft/class_6492$class_6737 net/minecraft/util/math/Spline$Serialized + f Lnet/minecraft/class_6492; comp_226 value + f F comp_225 location + f F comp_227 derivative + m ()F comp_227 derivative + m ()F comp_225 location + m ()Lnet/minecraft/class_6492; comp_226 value + m (FLnet/minecraft/class_6492;F)V + p 1 location + p 2 value + p 3 derivative +c net/minecraft/class_6492$class_6738 net/minecraft/util/math/Spline$Implementation + f F comp_532 min + f F comp_533 max + f Lnet/minecraft/class_6501; comp_229 locationFunction + f Ljava/util/List; comp_231 values + f [F comp_230 locations + f [F comp_232 derivatives + m ([F)Ljava/lang/String; method_39238 format + p 1 values + m ([FLjava/util/List;[F)V method_41301 assertParametersValid + p 0 locations + p 2 derivatives + p 1 values + m ([FI)D method_39239 method_39239 + p 1 index + m ([FF)I method_41300 findRangeForLocation + p 0 locations + p 1 x + m (F[FF[FI)F method_41297 sampleOutsideRange + p 0 point + p 1 locations + p 2 value + p 3 derivatives + p 4 i + m ()Lnet/minecraft/class_6501; comp_229 locationFunction + m (Lnet/minecraft/class_6501;[FLjava/util/List;[F)Lnet/minecraft/class_6492$class_6738; method_41299 build + p 3 derivatives + p 1 locations + p 2 values + p 0 locationFunction + m (D)Ljava/lang/String; method_39236 method_39236 + p 0 value + m (Lnet/minecraft/class_6492$class_7073;Lnet/minecraft/class_6492;)Lnet/minecraft/class_6492; method_41188 method_41188 + p 1 value + m ()Ljava/util/List; comp_231 values + m ()[F comp_232 derivatives + m ()[F comp_230 locations + m (Lnet/minecraft/class_6501;[FLjava/util/List;[FFF)V + p 1 locationFunction + p 2 locations + p 3 values + p 4 derivatives + p 5 min + p 6 max +c net/minecraft/class_6492$class_6494 net/minecraft/util/math/Spline$FixedFloatFunction + f F comp_228 value + m ()F comp_228 value + m (F)V + p 1 value +c net/minecraft/class_6492$class_6493 net/minecraft/util/math/Spline$Builder + f Lnet/minecraft/class_6501; field_35661 amplifier + f Lit/unimi/dsi/fastutil/floats/FloatList; field_34383 locations + f Lnet/minecraft/class_6501; field_34382 locationFunction + f Ljava/util/List; field_34384 values + f Lit/unimi/dsi/fastutil/floats/FloatList; field_34385 derivatives + m (FF)Lnet/minecraft/class_6492$class_6493; method_41294 add + p 2 value + p 1 location + m (FLnet/minecraft/class_6492;F)Lnet/minecraft/class_6492$class_6493; method_37925 addPoint + p 3 derivative + p 2 value + p 1 location + m ()Lnet/minecraft/class_6492; method_37923 build + m (Lnet/minecraft/class_6501;)V + p 1 locationFunction + m (FLnet/minecraft/class_6492;)Lnet/minecraft/class_6492$class_6493; method_41295 add + p 1 location + p 2 value + m (FFF)Lnet/minecraft/class_6492$class_6493; method_37924 add + p 2 value + p 3 derivative + p 1 location + m (Lnet/minecraft/class_6501;Lnet/minecraft/class_6501;)V + p 1 locationFunction + p 2 amplifier +c net/minecraft/class_6492$class_7073 net/minecraft/util/math/Spline$Visitor + m (Ljava/lang/Object;)Ljava/lang/Object; visit visit + p 1 value +c net/minecraft/class_6490 net/minecraft/util/collection/PaletteStorage + c A storage whose values are raw IDs held by palettes. + m ()Lnet/minecraft/class_6490; method_39939 copy + m ()[J method_15212 getData + c {@return the backing data of this storage} + m (II)I method_15214 swap + c Sets {@code value} to {@code index} and returns the previous value in\nthis storage.\n\n@return the previous value + p 1 index + c the index + p 2 value + c the value to set + m (II)V method_15210 set + c Sets {@code value} to {@code index} in this storage. + p 2 value + c the value to set + p 1 index + c the index + m (I)I method_15211 get + c {@return the value at {@code index} in this storage} + p 1 index + c the index + m ()I method_34896 getElementBits + c {@return the number of bits each element in this storage uses} + m (Ljava/util/function/IntConsumer;)V method_21739 forEach + c Executes an {@code action} on all values in this storage, sequentially. + p 1 action + m ([I)V method_39892 writePaletteIndices + p 1 out + m ()I method_15215 getSize + c {@return the size of, or the number of elements in, this storage} +c net/minecraft/class_5168 net/minecraft/block/dispenser/ShearsDispenserBehavior + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_2338;)Z method_27162 tryShearBlock + p 2 pos + p 1 tool + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)Z method_27163 tryShearEntity + p 0 world + p 1 pos + p 2 shears + m (Lnet/minecraft/class_1792;)V method_56167 method_56167 + p 0 item + m (Lnet/minecraft/class_4970$class_4971;)Z method_40054 method_40054 + p 0 state +c net/minecraft/class_5167 net/minecraft/client/render/entity/feature/HorseMarkingFeatureRenderer + f Ljava/util/Map; field_23938 TEXTURES + f Lnet/minecraft/class_2960; field_55875 INVISIBLE_ID + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10033;FF)V method_27152 render +c net/minecraft/class_6498 net/minecraft/util/WinNativeModuleUtil + f Lorg/slf4j/Logger; field_34391 LOGGER + f I field_34395 LANGUAGE_ID + f I field_34392 CODE_PAGE_MASK + f I field_34394 LANGUAGE_ID_MASK + f I field_34393 EN_US_CODE_PAGE + m (Lnet/minecraft/class_129;)V method_37966 addDetailTo + p 0 section + m (Ljava/lang/String;)Ljava/util/Optional; method_37964 createNativeModuleInfo + p 0 path + m ([I)Ljava/util/OptionalInt; method_37967 getEnglishTranslationIndex + p 0 indices + m (Ljava/lang/String;II)Ljava/lang/String; method_37965 getStringFileInfoPath + p 2 codePage + p 0 key + p 1 languageId + m (Lnet/minecraft/class_6498$class_6499;)Ljava/lang/String; method_37969 method_37969 + p 0 module + m (Lcom/sun/jna/Pointer;Ljava/lang/String;Lcom/sun/jna/ptr/IntByReference;)Ljava/lang/String; method_37970 queryString + p 0 pointer + p 1 path + p 2 lengthPointer + m (Lcom/sun/jna/Pointer;Ljava/lang/String;Lcom/sun/jna/ptr/IntByReference;)Lcom/sun/jna/Pointer; method_37963 query + p 1 path + p 0 pointer + p 2 lengthPointer + m ()Ljava/util/List; method_37961 collectNativeModules + m (Lnet/minecraft/class_6498$class_6499;)Ljava/lang/String; method_37962 method_37962 + p 0 moduleName +c net/minecraft/class_6498$class_6499 net/minecraft/util/WinNativeModuleUtil$NativeModule + f Ljava/lang/String; field_34396 path + f Ljava/util/Optional; field_34397 info + m (Ljava/lang/String;Ljava/util/Optional;)V + p 1 path + p 2 info + m (Lnet/minecraft/class_6498$class_6500;)Ljava/lang/String; method_37971 method_37971 + p 1 info +c net/minecraft/class_6498$class_6500 net/minecraft/util/WinNativeModuleUtil$NativeModuleInfo + f Ljava/lang/String; field_34400 companyName + f Ljava/lang/String; field_34398 fileDescription + f Ljava/lang/String; field_34399 fileVersion + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 fileDescription + p 3 companyName + p 2 fileVersion +c net/minecraft/class_5169 net/minecraft/server/dedicated/ServerMBean + c A dynamic management object for a Minecraft Server.\n\n

It exposes the average tick time and the historical tick times of the\nMinecraft Server.\n\n@see javax.management.DynamicMBean + f Ljavax/management/MBeanInfo; field_23972 mBeanInfo + f Lorg/slf4j/Logger; field_23970 LOGGER + f Lnet/minecraft/server/MinecraftServer; field_23971 server + f Ljava/util/Map; field_23973 entries + m (Lnet/minecraft/class_5169$class_5170;)Ljava/lang/String; method_27183 method_27183 + p 0 entry + m ([Ljava/lang/String;)Ljavax/management/AttributeList; getAttributes getAttributes + p 1 attributes + m (Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;)Ljava/lang/Object; invoke invoke + p 2 params + p 3 signature + p 1 actionName + m ()[J method_27182 getTickTimes + c Returns the server's historical tick times, in milliseconds. + m (Lnet/minecraft/class_5169$class_5170;)Ljavax/management/Attribute; method_27179 method_27179 + p 0 entry + m ()F method_27177 getAverageTickTime + c Returns the server's current average tick time, in milliseconds. + m (Ljavax/management/AttributeList;)Ljavax/management/AttributeList; setAttributes setAttributes + p 1 attributes + m (Ljava/lang/String;)Ljava/lang/Object; getAttribute getAttribute + p 1 attribute + m (Ljavax/management/Attribute;)V setAttribute setAttribute + p 1 attribute + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server + m (Lnet/minecraft/server/MinecraftServer;)V method_27181 register + c Registers a dynamic MBean for a Minecraft Server. + p 0 server + c the server to have the MBean +c net/minecraft/class_5169$class_5170 net/minecraft/server/dedicated/ServerMBean$Entry + c Represents a read-only attribute of the server MBean. + f Ljava/lang/Class; field_23977 type + f Ljava/util/function/Supplier; field_23975 getter + f Ljava/lang/String; field_23976 description + f Ljava/lang/String; field_23974 name + m (Ljava/lang/String;Ljava/util/function/Supplier;Ljava/lang/String;Ljava/lang/Class;)V + p 1 name + p 2 getter + p 3 description + p 4 type + m ()Ljavax/management/MBeanAttributeInfo; method_27184 createInfo +c net/minecraft/class_5174 net/minecraft/structure/BastionBridgeData + m (Lnet/minecraft/class_7891;)V method_27198 bootstrap + p 0 poolRegisterable +c net/minecraft/class_5177 net/minecraft/structure/BastionHoglinStableData + m (Lnet/minecraft/class_7891;)V method_27199 bootstrap + p 0 poolRegisterable +c net/minecraft/class_5172 net/minecraft/block/ChainBlock + f Lcom/mojang/serialization/MapCodec; field_46309 CODEC + f Lnet/minecraft/class_2746; field_24411 WATERLOGGED + f Ljava/util/Map; field_55746 SHAPES_BY_AXIS +c net/minecraft/class_5179 net/minecraft/structure/BastionRemnantGenerator + f Lnet/minecraft/class_5321; field_25941 STRUCTURE_POOLS + m (Lnet/minecraft/class_7891;)V method_27201 bootstrap + p 0 poolRegisterable +c net/minecraft/class_5178 net/minecraft/structure/BastionUnitsData + m (Lnet/minecraft/class_7891;)V method_27200 bootstrap + p 0 poolRegisterable +c net/minecraft/class_5142 net/minecraft/world/gen/trunk/TrunkPlacerType + f Lcom/mojang/serialization/MapCodec; field_24973 codec + f Lnet/minecraft/class_5142; field_38792 UPWARDS_BRANCHING_TRUNK_PLACER + f Lnet/minecraft/class_5142; field_24171 GIANT_TRUNK_PLACER + f Lnet/minecraft/class_5142; field_24172 MEGA_JUNGLE_TRUNK_PLACER + f Lnet/minecraft/class_5142; field_24173 DARK_OAK_TRUNK_PLACER + f Lnet/minecraft/class_5142; field_24174 FANCY_TRUNK_PLACER + f Lnet/minecraft/class_5142; field_29309 BENDING_TRUNK_PLACER + f Lnet/minecraft/class_5142; field_23764 FORKING_TRUNK_PLACER + f Lnet/minecraft/class_5142; field_23763 STRAIGHT_TRUNK_PLACER + f Lnet/minecraft/class_5142; field_42855 CHERRY_TRUNK_PLACER + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_5142; method_26995 register + p 1 codec + p 0 id + m ()Lcom/mojang/serialization/MapCodec; method_28908 getCodec +c net/minecraft/class_5141 net/minecraft/world/gen/trunk/TrunkPlacer + f I field_23760 baseHeight + f I field_23761 firstRandomHeight + f Lcom/mojang/serialization/Codec; field_24972 TYPE_CODEC + f I field_23762 secondRandomHeight + f I field_31528 MAX_BASE_HEIGHT + f I field_31529 MAX_RANDOM_HEIGHT + m (Lnet/minecraft/class_5141;)Ljava/lang/Integer; method_28906 method_28906 + p 0 placer + m (Lnet/minecraft/class_5141;)Ljava/lang/Integer; method_28905 method_28905 + p 0 placer + m (Lnet/minecraft/class_2680;)Z method_43197 method_43197 + p 0 state + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_2338;)Z method_27403 canGenerate + p 0 world + p 1 pos + m (Lnet/minecraft/class_3746;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_4643;)Z method_35375 getAndSetState + p 1 world + p 2 replacer + p 3 random + p 4 pos + p 5 config + m (Lnet/minecraft/class_5819;)I method_26993 getHeight + p 1 random + m (Lnet/minecraft/class_5141;)Ljava/lang/Integer; method_28907 method_28907 + p 0 placer + m ()Lnet/minecraft/class_5142; method_28903 getType + m (Lnet/minecraft/class_3746;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_4643;)V method_27400 setToDirt + p 4 config + p 3 pos + p 2 random + p 1 replacer + p 0 world + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_2338;)Z method_43196 canReplace + p 2 pos + p 1 world + m (Lnet/minecraft/class_3746;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5819;ILnet/minecraft/class_2338;Lnet/minecraft/class_4643;)Ljava/util/List; method_26991 generate + c Generates the trunk blocks and return a list of tree nodes to place foliage around + p 5 startPos + p 4 height + p 3 random + p 2 replacer + p 6 config + p 1 world + m (Lnet/minecraft/class_3746;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_4643;Ljava/util/function/Function;)Z method_27402 getAndSetState + p 6 mapper + p 5 config + p 4 pos + p 3 random + p 2 replacer + p 1 world + m (Lnet/minecraft/class_3746;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_4643;)V method_27401 trySetState + p 2 replacer + p 1 world + p 5 config + p 4 pos + p 3 random + m (III)V + p 1 baseHeight + p 2 firstRandomHeight + p 3 secondRandomHeight + m (Lnet/minecraft/class_2680;)Z method_27405 method_27405 + p 0 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P3; method_28904 fillTrunkPlacerFields + p 0 instance + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_2338;)Z method_43198 canReplaceOrIsLog + p 2 pos + p 1 world +c net/minecraft/class_5144 net/minecraft/client/render/entity/ZoglinEntityRenderer + f Lnet/minecraft/class_2960; field_23779 TEXTURE + m (Lnet/minecraft/class_10032;)Lnet/minecraft/class_2960; method_27039 getTexture +c net/minecraft/class_5140 net/minecraft/world/gen/trunk/StraightTrunkPlacer + f Lcom/mojang/serialization/MapCodec; field_24971 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28902 method_28902 + p 0 instance +c net/minecraft/class_5149 net/minecraft/entity/passive/HorseColor + f Lnet/minecraft/class_9139; field_55972 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_41595 CODEC + f Ljava/lang/String; field_41596 id + f Ljava/util/function/IntFunction; field_23823 INDEX_MAPPER + f I field_23824 index + f Lnet/minecraft/class_5149; field_23822 DARK_BROWN + f Lnet/minecraft/class_5149; field_23821 GRAY + f Lnet/minecraft/class_5149; field_23820 BLACK + f Lnet/minecraft/class_5149; field_23817 CREAMY + f Lnet/minecraft/class_5149; field_23816 WHITE + f Lnet/minecraft/class_5149; field_23819 BROWN + f Lnet/minecraft/class_5149; field_23818 CHESTNUT + m (I)Lnet/minecraft/class_5149; method_27083 byIndex + p 0 index + m ()I method_27082 getIndex + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 index + p 4 id +c net/minecraft/class_5148 net/minecraft/entity/passive/HorseMarking + f I field_23814 index + f Ljava/util/function/IntFunction; field_23813 INDEX_MAPPER + f Lnet/minecraft/class_5148; field_23812 BLACK_DOTS + f Lnet/minecraft/class_5148; field_23811 WHITE_DOTS + f Lnet/minecraft/class_5148; field_23810 WHITE_FIELD + f Lnet/minecraft/class_5148; field_23809 WHITE + f Lnet/minecraft/class_5148; field_23808 NONE + m (I)Lnet/minecraft/class_5148; method_27080 byIndex + p 0 index + m (Ljava/lang/String;II)V + p 3 index + m ()I method_27079 getIndex +c net/minecraft/class_5147 net/minecraft/entity/Shearable + c Represents an entity that can be sheared, either by a player or a\ndispenser. + m ()Z method_27072 isShearable + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_3419;Lnet/minecraft/class_1799;)V method_6636 sheared + p 1 world + p 2 shearedSoundCategory + p 3 shears +c net/minecraft/class_5153 net/minecraft/world/gen/feature/BasaltColumnsFeature + f Lcom/google/common/collect/ImmutableList; field_24132 CANNOT_REPLACE_BLOCKS + m (Lnet/minecraft/class_1936;ILnet/minecraft/class_2338;II)Z method_27096 placeBasaltColumn + p 2 seaLevel + p 1 world + p 5 reach + p 4 height + p 3 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338$class_2339;I)Lnet/minecraft/class_2338; method_27098 moveUpToAir + p 2 distance + p 1 mutablePos + p 0 world + m (Lnet/minecraft/class_1936;ILnet/minecraft/class_2338$class_2339;)Z method_30379 canPlaceAt + p 0 world + p 2 mutablePos + p 1 seaLevel + m (Lnet/minecraft/class_1936;ILnet/minecraft/class_2338$class_2339;I)Lnet/minecraft/class_2338; method_27094 moveDownToGround + p 0 world + p 1 seaLevel + p 2 mutablePos + p 3 distance + m (Lnet/minecraft/class_1936;ILnet/minecraft/class_2338;)Z method_27095 isAirOrLavaOcean + p 2 pos + p 1 seaLevel + p 0 world +c net/minecraft/class_5155 net/minecraft/world/gen/feature/ReplaceBlobsFeature + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2338; method_27107 moveDownToTarget + p 1 mutablePos + p 2 target + p 0 world +c net/minecraft/class_5154 net/minecraft/world/gen/feature/DeltaFeature + f [Lnet/minecraft/class_2350; field_23883 DIRECTIONS + f Lcom/google/common/collect/ImmutableList; field_24133 CANNOT_REPLACE_BLOCKS + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5158;)Z method_27103 canPlace + p 0 world + p 2 config + p 1 pos +c net/minecraft/class_6489 net/minecraft/GameVersion + c The game version interface used by Minecraft, replacing the javabridge\none's occurrences in Minecraft code. + m (Lnet/minecraft/class_3264;)Lnet/minecraft/class_11555; method_70592 packVersion + p 1 type + m ()Lnet/minecraft/class_6595; comp_4026 dataVersion + m ()Z comp_4031 stable + m ()I comp_4027 protocolVersion + m ()Ljava/lang/String; comp_4025 name + m ()Ljava/lang/String; comp_4024 id + m ()Ljava/util/Date; comp_4030 buildTime +c net/minecraft/class_6489$class_11175 net/minecraft/GameVersion$Impl + f Lnet/minecraft/class_11555; comp_4029 datapackVersion + f Lnet/minecraft/class_11555; comp_4028 resourcePackVersion + f Ljava/lang/String; comp_4024 id + f Ljava/lang/String; comp_4025 name + f I comp_4027 protocolVersion + f Lnet/minecraft/class_6595; comp_4026 dataVersion + f Z comp_4031 stable + f Ljava/util/Date; comp_4030 buildTime + m ()Lnet/minecraft/class_11555; comp_4028 resourcePackVersion + m ()Lnet/minecraft/class_11555; comp_4029 datapackVersion + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_6595;ILnet/minecraft/class_11555;Lnet/minecraft/class_11555;Ljava/util/Date;Z)V + p 1 id + p 2 name + p 3 dataVersion + p 4 protocolVersion + p 5 resourcePackVersion + p 6 datapackVersion + p 7 buildTime + p 8 stable +c net/minecraft/class_5156 net/minecraft/world/gen/feature/BasaltColumnsFeatureConfig + f Lnet/minecraft/class_6017; field_25841 reach + f Lnet/minecraft/class_6017; field_25842 height + f Lcom/mojang/serialization/Codec; field_24877 CODEC + m ()Lnet/minecraft/class_6017; method_30391 getReach + m ()Lnet/minecraft/class_6017; method_30394 getHeight + m (Lnet/minecraft/class_5156;)Lnet/minecraft/class_6017; method_30392 method_30392 + p 0 config + m (Lnet/minecraft/class_5156;)Lnet/minecraft/class_6017; method_30395 method_30395 + p 0 config + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;)V + p 2 height + p 1 reach + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30393 method_30393 + p 0 instance +c net/minecraft/class_5158 net/minecraft/world/gen/feature/DeltaFeatureConfig + f Lcom/mojang/serialization/Codec; field_24881 CODEC + f Lnet/minecraft/class_6017; field_25843 size + f Lnet/minecraft/class_6017; field_25844 rimSize + f Lnet/minecraft/class_2680; field_23896 rim + f Lnet/minecraft/class_2680; field_23895 contents + m ()Lnet/minecraft/class_2680; method_30397 getContents + m (Lnet/minecraft/class_5158;)Lnet/minecraft/class_6017; method_30398 method_30398 + p 0 config + m ()Lnet/minecraft/class_2680; method_30400 getRim + m (Lnet/minecraft/class_5158;)Lnet/minecraft/class_6017; method_30401 method_30401 + p 0 config + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30399 method_30399 + p 0 instance + m (Lnet/minecraft/class_5158;)Lnet/minecraft/class_2680; method_28709 method_28709 + p 0 config + m (Lnet/minecraft/class_5158;)Lnet/minecraft/class_2680; method_28710 method_28710 + p 0 config + m ()Lnet/minecraft/class_6017; method_30403 getRimSize + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;)V + p 1 contents + p 2 rim + p 3 size + p 4 rimSize + m ()Lnet/minecraft/class_6017; method_30402 getSize +c net/minecraft/class_7784 net/minecraft/data/DataOutput + f Ljava/nio/file/Path; field_40597 path + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_7784$class_7489; method_60918 getTagResolver + p 1 registryRef + m (Lnet/minecraft/class_7784$class_7490;Ljava/lang/String;)Lnet/minecraft/class_7784$class_7489; method_45973 getResolver + p 1 outputType + p 2 directoryName + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_7784$class_7489; method_60917 getResolver + p 1 registryRef + m (Ljava/nio/file/Path;)V + p 1 path + m ()Ljava/nio/file/Path; method_45971 getPath + m (Lnet/minecraft/class_7784$class_7490;)Ljava/nio/file/Path; method_45972 resolvePath + p 1 outputType +c net/minecraft/class_7784$class_7489 net/minecraft/data/DataOutput$PathResolver + f Ljava/lang/String; field_39366 directoryName + f Ljava/nio/file/Path; field_39365 rootPath + m (Lnet/minecraft/class_2960;)Ljava/nio/file/Path; method_44107 resolveJson + p 1 id + m (Lnet/minecraft/class_7784;Lnet/minecraft/class_7784$class_7490;Ljava/lang/String;)V + p 2 outputType + p 1 dataGenerator + p 3 directoryName + m (Lnet/minecraft/class_5321;)Ljava/nio/file/Path; method_65773 resolveJson + p 1 key + m (Lnet/minecraft/class_2960;Ljava/lang/String;)Ljava/nio/file/Path; method_44108 resolve + p 1 id + p 2 fileExtension +c net/minecraft/class_7784$class_7490 net/minecraft/data/DataOutput$OutputType + f Ljava/lang/String; field_39370 path + f Lnet/minecraft/class_7784$class_7490; field_39369 REPORTS + f Lnet/minecraft/class_7784$class_7490; field_39367 DATA_PACK + f Lnet/minecraft/class_7784$class_7490; field_39368 RESOURCE_PACK + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 path +c net/minecraft/class_7782 net/minecraft/registry/SerializableRegistries + f Ljava/util/Set; field_48771 SYNCED_REGISTRIES + m (Lnet/minecraft/class_7780;)Ljava/util/stream/Stream; method_45953 streamRegistryManagerEntries + p 0 combinedRegistries + m (Lnet/minecraft/class_6880$class_6883;Ljava/lang/String;)Ljava/lang/IllegalArgumentException; method_56600 method_56600 + p 1 error + m (Ljava/util/Set;Lnet/minecraft/class_7655$class_7657;Lcom/mojang/serialization/DynamicOps;Ljava/util/function/BiConsumer;Lnet/minecraft/class_2378;)V method_56596 method_56596 + p 4 registry + m (Lnet/minecraft/class_2378;Ljava/util/Set;Lnet/minecraft/class_7655$class_7657;Lcom/mojang/serialization/DynamicOps;Ljava/util/List;Lnet/minecraft/class_6880$class_6883;)V method_56595 method_56595 + p 5 registryEntry + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_7655$class_7657;Lnet/minecraft/class_5455;Ljava/util/Set;Ljava/util/function/BiConsumer;)V method_56597 serialize + p 3 knownPacks + p 4 callback + p 0 nbtOps + p 1 entry + p 2 registryManager + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_5455;Ljava/util/Set;Ljava/util/function/BiConsumer;)V method_56598 forEachSyncedRegistry + p 0 nbtOps + p 1 registryManager + p 2 knownPacks + p 3 callback + m (Lnet/minecraft/class_7780;)Ljava/util/stream/Stream; method_47449 streamDynamicEntries + p 0 combinedRegistries + m (Lnet/minecraft/class_5321;)Z method_62704 isSynced + p 0 key + m (Lnet/minecraft/class_5455$class_6892;)Z method_56601 method_56601 + p 0 registry + m (Lnet/minecraft/class_5455;)Ljava/util/stream/Stream; method_45956 stream + p 0 dynamicRegistryManager + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_5455;Ljava/util/Set;Ljava/util/function/BiConsumer;Lnet/minecraft/class_7655$class_7657;)V method_56599 method_56599 + p 4 registry +c net/minecraft/class_7782$class_9176 net/minecraft/registry/SerializableRegistries$SerializedRegistryEntry + f Lnet/minecraft/class_9139; field_48772 PACKET_CODEC + f Ljava/util/Optional; comp_2257 data + f Lnet/minecraft/class_2960; comp_2256 id + m ()Ljava/util/Optional; comp_2257 data + m ()Lnet/minecraft/class_2960; comp_2256 id + m (Lnet/minecraft/class_2960;Ljava/util/Optional;)V + p 1 id + p 2 data +c net/minecraft/class_7780 net/minecraft/registry/CombinedDynamicRegistries + f Lnet/minecraft/class_5455$class_6890; field_40583 combinedRegistryManager + f Ljava/util/List; field_40582 registryManagers + f Ljava/util/List; field_40581 types + m (Ljava/util/List;Ljava/util/List;)V + p 1 types + p 2 registryManagers + m (Ljava/lang/Object;)I method_45937 getIndex + p 1 type + m (Ljava/util/stream/Stream;)Ljava/util/Map; method_45934 toRegistryMap + p 0 registryManagers + m (Ljava/util/Map;Lnet/minecraft/class_5455;)V method_45933 method_45933 + p 1 registryManager + m (Ljava/util/Map;Lnet/minecraft/class_5455$class_6892;)V method_45932 method_45932 + p 1 entry + m ()Lnet/minecraft/class_5455$class_6890; method_45926 getCombinedRegistryManager + m (Ljava/lang/Object;Ljava/util/List;)Lnet/minecraft/class_7780; method_45929 with + p 2 registryManagers + p 1 type + m (II)Lnet/minecraft/class_5455$class_6890; method_45927 subset + p 1 startIndex + p 2 endIndex + m (Ljava/lang/Object;)Lnet/minecraft/class_5455$class_6890; method_45936 getSucceedingRegistryManagers + p 1 type + m (Ljava/lang/Object;)Lnet/minecraft/class_5455$class_6890; method_45935 getPrecedingRegistryManagers + p 1 type + m (Ljava/lang/Object;[Lnet/minecraft/class_5455$class_6890;)Lnet/minecraft/class_7780; method_45930 with + p 2 registryManagers + p 1 type + m (Ljava/lang/Object;)Lnet/minecraft/class_5455$class_6890; method_45928 get + p 1 index + m (Ljava/util/List;)V + p 1 types +c net/minecraft/class_5127 net/minecraft/util/ThrowableDeliverer + f Ljava/lang/Throwable; field_23694 throwable + m ()V method_26806 deliver + m (Ljava/lang/Throwable;)V method_26807 add + p 1 throwable +c net/minecraft/class_7789 net/minecraft/data/loottable/EntityLootTableGenerator + f Ljava/util/Map; field_40615 lootTables + f Lnet/minecraft/class_7699; field_42085 featureSet + f Lnet/minecraft/class_7699; field_42084 requiredFeatures + f Lnet/minecraft/class_7225$class_7874; field_51846 registries + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_5321;Lnet/minecraft/class_52$class_53;)V method_46028 register + p 2 tableKey + p 3 lootTable + p 1 entityType + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_52$class_53;)V method_46029 register + p 2 lootTable + p 1 entityType + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_7699;Lnet/minecraft/class_7225$class_7874;)V + p 3 registries + p 1 requiredFeatures + p 2 featureSet + m ()V method_10400 generate + m (Lnet/minecraft/class_1299;)Ljava/util/Map; method_46035 method_46035 + p 0 type + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_7225$class_7874;)V + p 2 registries + p 1 requiredFeatures + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_58573 method_58573 + p 0 key + m (Ljava/util/Set;Ljava/util/function/BiConsumer;Lnet/minecraft/class_6880$class_6883;)V method_46033 method_46033 + p 3 entityType + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7871;Lnet/minecraft/class_5321;)Lnet/minecraft/class_5341$class_210; method_46030 killedByFrog + p 3 frogVariant + p 1 entityTypeLookup + p 2 frogVariantLookup + m (Lnet/minecraft/class_7871;)Lnet/minecraft/class_5341$class_210; method_46034 killedByFrog + p 1 entityTypeLookup + m (Ljava/util/Set;Lnet/minecraft/class_6880$class_6883;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5321;Lnet/minecraft/class_52$class_53;)V method_46032 method_46032 + p 4 lootTableBuilder + p 3 tableKey + m (Ljava/util/Map;)Lnet/minecraft/class_55$class_56; method_46031 createForSheep + p 0 colorLootTables + m ()Lnet/minecraft/class_8551$class_8552; method_60394 createSmeltLootCondition +c net/minecraft/class_5129 net/minecraft/datafixer/fix/RenameEntityAttributesFix + f Ljava/util/function/UnaryOperator; field_23695 renames + f Ljava/lang/String; field_49056 description + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26814 updateEntityAttributes + p 1 entityTyped + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/UnaryOperator;)V + p 2 description + p 1 outputSchema + p 3 renames + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28163 method_28163 + p 1 entityDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28166 method_28166 + p 1 attributeDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28165 method_28165 + p 1 attributesDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28168 method_28168 + p 1 attributeModifiersDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28167 method_28167 + p 1 tagDynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26810 updateAttributeModifiers + p 1 tagTyped + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_28164 method_28164 + p 1 attributeModifiers + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_28162 method_28162 + p 1 attributes + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28169 method_28169 + p 1 attributeModifierDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26808 updateAttributeName + p 1 attributeNameDynamic + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26809 method_26809 + p 2 itemStackTyped +c net/minecraft/class_7787 net/minecraft/unused/packageinfo/PackageInfo7787 +c net/minecraft/class_7788 net/minecraft/data/loottable/BlockLootTableGenerator + f [F field_40605 SAPLING_DROP_CHANCE + f Lnet/minecraft/class_7225$class_7874; field_51845 registries + f [F field_40611 LEAVES_STICK_DROP_CHANCE + f Ljava/util/Set; field_40608 explosionImmuneItems + f Lnet/minecraft/class_7699; field_40609 requiredFeatures + f Ljava/util/Map; field_40610 lootTables + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_45980 slabDrops + p 1 drop + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_5658;)Lnet/minecraft/class_52$class_53; method_45979 drops + p 2 count + p 1 drop + m (Lnet/minecraft/class_2248;)V method_46023 addPottedPlantDrops + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46011 lapisOreDrops + p 1 drop + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_66554 segmentedDrops + p 1 segmented + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_45995 dropsWithShears + p 1 item + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792;)Lnet/minecraft/class_52$class_53; method_45981 oreDrops + p 1 withSilkTouch + p 2 withoutSilkTouch + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46019 seagrassDrops + p 1 seagrass + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_10596;Ljava/lang/Integer;)Lnet/minecraft/class_117$class_118; method_66553 method_66553 + p 2 count + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_5341$class_210;Lnet/minecraft/class_79$class_80;)Lnet/minecraft/class_52$class_53; method_45991 drops + p 1 conditionBuilder + p 2 child + p 0 drop + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46015 beehiveDrops + p 1 drop + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_79$class_80;)Lnet/minecraft/class_52$class_53; method_46001 dropsWithShears + p 2 loot + p 1 block + m ()Lnet/minecraft/class_5341$class_210; method_60391 createWithoutSilkTouchCondition + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_45996 nameableContainerDrops + p 1 drop + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792;)Lnet/minecraft/class_52$class_53; method_45997 cropStemDrops + p 2 drop + p 1 stem + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_46003 dropsWithSilkTouch + p 1 drop + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_45998 mushroomBlockDrops + p 2 withoutSilkTouch + p 1 withSilkTouch + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792;)Lnet/minecraft/class_52$class_53; method_46005 attachedCropStemDrops + p 1 stem + p 2 drop + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_65261 multifaceGrowthDrops + p 1 drop + m (Lnet/minecraft/class_2248;Ljava/util/function/Function;)V method_45994 addDrop + p 2 lootTableFunction + p 1 block + m (Lnet/minecraft/class_2248;)V method_46024 addDropWithSilkTouch + p 1 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_79$class_80;)Lnet/minecraft/class_52$class_53; method_45989 dropsWithSilkTouch + p 2 loot + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46012 redstoneOreDrops + p 1 drop + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_45985 tallPlantDrops + p 2 shortPlant + p 1 tallPlant + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46020 candleDrops + p 1 candle + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_79$class_80;)Lnet/minecraft/class_52$class_53; method_46008 dropsWithSilkTouchOrShears + p 2 loot + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46004 shulkerBoxDrops + p 1 drop + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_52$class_53;)V method_45988 addDrop + p 2 lootTable + p 1 block + m (Lnet/minecraft/class_2248;Ljava/lang/Integer;)Lnet/minecraft/class_117$class_118; method_45993 method_45993 + p 1 candles + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46016 glowBerryDrops + p 1 drop + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_74433 copperGolemStatueDrops + p 1 drop + m ()Lnet/minecraft/class_5341$class_210; method_60390 createSilkTouchCondition + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_46007 addDropWithSilkTouch + p 2 drop + p 1 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_45983 drops + p 2 withoutSilkTouch + p 1 withSilkTouch + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_46009 pottedPlantDrops + p 1 drop + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1935;)V method_46006 addDrop + p 1 block + p 2 drop + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46021 candleCakeDrops + p 0 candle + m (Ljava/util/Set;Lnet/minecraft/class_7699;Ljava/util/Map;Lnet/minecraft/class_7225$class_7874;)V + p 4 registries + p 3 lootTables + p 2 requiredFeatures + p 1 explosionImmuneItems + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46013 bannerDrops + p 1 drop + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Lnet/minecraft/class_52$class_53; method_45987 dropsWithProperty + p 3 value + p 1 drop + p 2 property + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46017 shortPlantDrops + p 1 withShears + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2350;)Lnet/minecraft/class_117$class_118; method_65260 method_65260 + p 1 direction + m (Lnet/minecraft/class_2248;)V method_46025 addDrop + p 1 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;[F)Lnet/minecraft/class_52$class_53; method_46000 oakLeavesDrops + p 1 leaves + p 2 sapling + p 3 saplingChance + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_192;)Lnet/minecraft/class_192; method_45978 addSurvivesExplosionCondition + p 1 drop + p 2 builder + m ()Lnet/minecraft/class_5341$class_210; method_60393 createWithoutShearsOrSilkTouchCondition + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1935;Lnet/minecraft/class_5658;)Lnet/minecraft/class_52$class_53; method_45984 drops + p 3 count + p 1 block + p 2 drop + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_116;)Lnet/minecraft/class_116; method_45977 applyExplosionDecay + p 1 drop + p 2 builder + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_64930 paleMossCarpetDrops + p 1 block + m ()Lnet/minecraft/class_52$class_53; method_45975 dropsNothing + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V method_45999 addVinePlantDrop + p 1 vine + p 2 vinePlant + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46022 doorDrops + p 1 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46010 copperOreDrops + p 1 drop + m ()Lnet/minecraft/class_5341$class_210; method_62727 createWithShearsCondition + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;[F)Lnet/minecraft/class_52$class_53; method_45986 leavesDrops + p 2 sapling + p 3 saplingChance + p 1 leaves + m ()V method_10379 generate + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2350;)Lnet/minecraft/class_117$class_118; method_45992 method_45992 + p 1 direction + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_52$class_53; method_45990 multifaceGrowthDrops + p 2 condition + p 1 drop + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_45976 drops + p 1 drop + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46018 mangroveLeavesDrops + p 1 leaves + m (Lnet/minecraft/class_2248;Ljava/lang/Integer;)Lnet/minecraft/class_117$class_118; method_46002 method_46002 + p 1 age + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46026 method_46026 + p 1 flowerPot + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_52$class_53; method_65053 dropsWithSilkTouchOrShears + p 1 item + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_52$class_53; method_46014 beeNestDrops + p 1 drop + m (Ljava/util/Set;Lnet/minecraft/class_2248;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5321;)V method_63538 method_63538 + p 4 lootTableKey + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_52$class_53; method_45982 cropDrops + p 4 condition + p 1 crop + p 2 product + p 3 seeds + m ()Lnet/minecraft/class_5341$class_210; method_60392 createWithSilkTouchOrShearsCondition + m (Ljava/util/Set;Lnet/minecraft/class_7699;Lnet/minecraft/class_7225$class_7874;)V + p 1 explosionImmuneItems + p 3 registries + p 2 requiredFeatures +c net/minecraft/class_7785 net/minecraft/data/advancement/AdvancementTabGenerator + m (Lnet/minecraft/class_7225$class_7874;Ljava/util/function/Consumer;)V method_10335 accept + p 1 registries + p 2 exporter + m (Ljava/lang/String;)Lnet/minecraft/class_8779; method_55578 reference + c {@return an advancement to use as a reference in {@link\nnet.minecraft.advancement.Advancement.Builder#parent(net.minecraft.advancement.AdvancementEntry)}}\n\n

The returned advancement itself should not be exported. + p 0 id +c net/minecraft/class_5125 net/minecraft/world/level/storage/SessionLock + f Ljava/nio/channels/FileLock; field_23693 lock + f Ljava/nio/channels/FileChannel; field_23692 channel + f Ljava/lang/String; field_29838 SESSION_LOCK + f Ljava/nio/ByteBuffer; field_25353 SNOWMAN + m ()Z method_26802 isValid + m (Ljava/nio/file/Path;)Lnet/minecraft/class_5125; method_26803 create + p 0 path + m (Ljava/nio/channels/FileChannel;Ljava/nio/channels/FileLock;)V + p 2 lock + p 1 channel + m (Ljava/nio/file/Path;)Z method_26804 isLocked + p 0 path +c net/minecraft/class_5125$class_5126 net/minecraft/world/level/storage/SessionLock$AlreadyLockedException + m (Ljava/nio/file/Path;Ljava/lang/String;)V + p 2 message + p 1 path + m (Ljava/nio/file/Path;)Lnet/minecraft/class_5125$class_5126; method_26805 create + p 0 path +c net/minecraft/class_7786 net/minecraft/data/advancement/vanilla/VanillaAdvancementProviders + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/class_2409; method_45974 createVanillaProvider + p 1 registriesFuture + p 0 output +c net/minecraft/class_5131 net/minecraft/entity/attribute/AttributeContainer + f Lnet/minecraft/class_5132; field_23711 defaultAttributes + f Ljava/util/Map; field_23709 custom + f Ljava/util/Set; field_51889 tracked + f Ljava/util/Set; field_51890 pendingUpdate + m (Lnet/minecraft/class_1324;)V method_26853 method_26853 + p 1 attributeInstance + m (Lnet/minecraft/class_1324;)Z method_26857 method_26857 + p 0 attribute + m (Ljava/util/List;)V method_71381 unpack + p 1 packedList + m (Lnet/minecraft/class_6880;Ljava/util/Collection;)V method_59934 method_59934 + p 1 attribute + p 2 modifiers + m (Lnet/minecraft/class_1324;)V method_61436 method_61436 + p 1 attributeInstance + m (Lnet/minecraft/class_1324;)V method_26845 updateTrackedStatus + p 1 instance + m (Lcom/google/common/collect/Multimap;)V method_59935 removeModifiers + p 1 modifiersMap + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_1324; method_45329 getCustomInstance + p 1 attribute + m (Lnet/minecraft/class_5131;)V method_60614 setBaseFrom + p 1 other + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2960;)D method_45332 getModifierValue + p 2 id + p 1 attribute + m ()Ljava/util/Set; method_60498 getPendingUpdate + m (Lnet/minecraft/class_5131;)V method_61437 addPersistentModifiersFrom + p 1 other + m (Lnet/minecraft/class_6880;)Z method_65115 resetToBaseValue + p 1 attribute + m ()Ljava/util/Collection; method_26851 getAttributesToSend + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_1324; method_55698 method_55698 + p 1 attribute + m (Lcom/google/common/collect/Multimap;)V method_59932 addTemporaryModifiers + p 1 modifiersMap + m (Lnet/minecraft/class_6880;)D method_26856 getBaseValue + p 1 attribute + m (Lnet/minecraft/class_1324;Lnet/minecraft/class_1322;)V method_59931 method_59931 + p 1 modifier + m (Lnet/minecraft/class_5132;)V + p 1 defaultAttributes + m ()Ljava/util/List; method_71382 pack + m (Lnet/minecraft/class_6880;)D method_26852 getValue + p 1 attribute + m (Lnet/minecraft/class_6880;)Z method_45331 hasAttribute + p 1 attribute + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2960;)Z method_45330 hasModifierForAttribute + p 1 attribute + p 2 id + m ()Ljava/util/Set; method_60497 getTracked + m (Lnet/minecraft/class_5131;)V method_26846 setFrom + p 1 other + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1322;)V method_59933 method_59933 + p 1 attribute + p 2 modifier + m (Lnet/minecraft/class_1324;)V method_60613 method_60613 + p 1 attributeInstance +c net/minecraft/class_7794 net/minecraft/data/loottable/vanilla/VanillaLootTableProviders + m (Lnet/minecraft/class_7784;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/class_2438; method_46184 createVanillaProvider + p 0 output + p 1 registriesFuture +c net/minecraft/class_7795 net/minecraft/unused/packageinfo/PackageInfo7795 +c net/minecraft/class_5130 net/minecraft/datafixer/schema/Schema2522 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_5132 net/minecraft/entity/attribute/DefaultAttributeContainer + f Ljava/util/Map; field_23713 instances + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2960;)Z method_27309 hasModifier + p 1 attribute + p 2 id + m (Ljava/util/Map;)V + p 1 instances + m (Lnet/minecraft/class_6880;)D method_26862 getValue + p 1 attribute + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2960;)D method_27308 getModifierValue + p 2 id + p 1 attribute + m (Lnet/minecraft/class_6880;)D method_26864 getBaseValue + p 1 attribute + m ()Lnet/minecraft/class_5132$class_5133; method_26861 builder + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_1324; method_26865 require + p 1 attribute + m (Ljava/util/function/Consumer;Lnet/minecraft/class_6880;)Lnet/minecraft/class_1324; method_26863 createOverride + p 1 updateCallback + p 2 attribute + m (Lnet/minecraft/class_6880;)Z method_27310 has + p 1 attribute +c net/minecraft/class_5132$class_5133 net/minecraft/entity/attribute/DefaultAttributeContainer$Builder + f Z field_23715 unmodifiable + f Lcom/google/common/collect/ImmutableMap$Builder; field_23714 instances + m (Lnet/minecraft/class_6880;D)Lnet/minecraft/class_5132$class_5133; method_26868 add + p 2 baseValue + p 1 attribute + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_1324; method_26870 checkedAdd + p 1 attribute + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_5132$class_5133; method_26867 add + p 1 attribute + m ()Lnet/minecraft/class_5132; method_26866 build + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1324;)V method_26869 method_26869 + p 2 attributex +c net/minecraft/class_7791 net/minecraft/data/loottable/LootTableGenerator + m (Ljava/util/function/BiConsumer;)V method_10399 accept + p 1 lootTableBiConsumer +c net/minecraft/class_5139 net/minecraft/world/gen/trunk/ForkingTrunkPlacer + f Lcom/mojang/serialization/MapCodec; field_24968 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28899 method_28899 + p 0 instance +c net/minecraft/class_5138 net/minecraft/world/gen/StructureAccessor + f Lnet/minecraft/class_6832; field_36216 locator + f Lnet/minecraft/class_1936; field_24404 world + f Lnet/minecraft/class_5285; field_24497 options + m (Lnet/minecraft/class_2378;Ljava/util/function/Predicate;Lnet/minecraft/class_3195;)Z method_41414 method_41414 + p 2 structure + m (Lnet/minecraft/class_6862;Lnet/minecraft/class_6880;)Z method_57559 method_57559 + p 1 structure + m (Lnet/minecraft/class_4076;Lnet/minecraft/class_3195;JLnet/minecraft/class_2810;)V method_26973 addStructureReference + p 1 pos + p 2 structure + p 5 holder + p 3 reference + m (Lnet/minecraft/class_2338;)Ljava/util/Map; method_41037 getStructureReferences + p 1 pos + m (Lnet/minecraft/class_3195;Lit/unimi/dsi/fastutil/longs/LongSet;Ljava/util/function/Consumer;)V method_41032 acceptStructureStarts + p 1 structure + p 2 structureStartPositions + p 3 consumer + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5285;Lnet/minecraft/class_6832;)V + p 1 world + p 2 options + p 3 locator + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3449;)Z method_41033 structureContains + p 2 structureStart + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3195;)Lnet/minecraft/class_3449; method_28388 getStructureAt + p 2 structure + p 1 pos + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_3195;Lnet/minecraft/class_6874;Z)Lnet/minecraft/class_6833; method_39783 getStructurePresence + p 4 skipReferencedStructures + p 2 structure + p 3 placement + p 1 chunkPos + m ()Z method_27834 shouldGenerateStructures + m (Lnet/minecraft/class_4076;Lnet/minecraft/class_3195;Lnet/minecraft/class_2810;)Lnet/minecraft/class_3449; method_26975 getStructureStart + p 1 pos + p 2 structure + p 3 holder + m (Lnet/minecraft/class_4076;Lnet/minecraft/class_3195;Lnet/minecraft/class_3449;Lnet/minecraft/class_2810;)V method_26976 setStructureStart + p 4 holder + p 2 structure + p 3 structureStart + p 1 pos + m (Lnet/minecraft/class_3449;)V method_39784 incrementReferences + p 1 structureStart + m (Lnet/minecraft/class_2338;Ljava/util/function/Predicate;)Lnet/minecraft/class_3449; method_41413 getStructureContaining + p 2 predicate + p 1 pos + m (Lnet/minecraft/class_2338;)Z method_38852 hasStructureReferences + p 1 pos + m (Lnet/minecraft/class_3233;)Lnet/minecraft/class_5138; method_29951 forRegion + p 1 region + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_6885;)Lnet/minecraft/class_3449; method_41034 getStructureContaining + p 1 pos + p 2 structures + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_6862;)Lnet/minecraft/class_3449; method_57560 getStructureContaining + p 2 tag + p 1 pos + m (Lnet/minecraft/class_1923;Ljava/util/function/Predicate;)Ljava/util/List; method_41035 getStructureStarts + p 2 predicate + p 1 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3195;)Lnet/minecraft/class_3449; method_38854 getStructureContaining + c {@return a structure that contains the given {@code pos}} Compared to\n{@link #getStructureAt}, this does not return a structure if the given\nposition is in the expanded bounding box of the structure but not in any\nchild piece of it. + p 2 structure + p 1 pos + m ()Lnet/minecraft/class_5455; method_41036 getRegistryManager + m (Lnet/minecraft/class_4076;Lnet/minecraft/class_3195;)Ljava/util/List; method_38853 getStructureStarts + c {@return a list of structure starts for this chunk} The structure starts\nare computed from the structure references of the given section's chunk. + p 1 sectionPos + p 2 structure +c net/minecraft/class_5135 net/minecraft/entity/attribute/DefaultAttributeRegistry + f Ljava/util/Map; field_23730 DEFAULT_ATTRIBUTE_REGISTRY + f Lorg/slf4j/Logger; field_23729 LOGGER + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_5132; method_26873 get + p 0 type + m ()V method_26872 checkMissing + m (Lnet/minecraft/class_1299;)Z method_26876 method_26876 + p 0 entityType + m (Lnet/minecraft/class_1299;)Z method_26875 hasDefinitionFor + p 0 type + m (Lnet/minecraft/class_1299;)Z method_26877 method_26877 + p 0 entityType + m (Lnet/minecraft/class_2960;)V method_26874 method_26874 + p 0 id +c net/minecraft/class_5134 net/minecraft/entity/attribute/EntityAttributes + f Lnet/minecraft/class_6880; field_23726 LUCK + f Lnet/minecraft/class_6880; field_23727 SPAWN_REINFORCEMENTS + f Lnet/minecraft/class_6880; field_23728 JUMP_STRENGTH + f Lnet/minecraft/class_6880; field_23720 FLYING_SPEED + f Lnet/minecraft/class_6880; field_23721 ATTACK_DAMAGE + f Lnet/minecraft/class_6880; field_23722 ATTACK_KNOCKBACK + f Lnet/minecraft/class_6880; field_23723 ATTACK_SPEED + f Lnet/minecraft/class_6880; field_23724 ARMOR + f Lnet/minecraft/class_6880; field_23725 ARMOR_TOUGHNESS + f Lnet/minecraft/class_6880; field_23716 MAX_HEALTH + f Lnet/minecraft/class_6880; field_23717 FOLLOW_RANGE + f Lnet/minecraft/class_6880; field_23718 KNOCKBACK_RESISTANCE + f Lnet/minecraft/class_6880; field_23719 MOVEMENT_SPEED + f Lnet/minecraft/class_6880; field_51577 SWEEPING_DAMAGE_RATIO + f Lnet/minecraft/class_6880; field_51578 WATER_MOVEMENT_EFFICIENCY + f Lnet/minecraft/class_6880; field_51579 BURNING_TIME + f Lnet/minecraft/class_6880; field_51576 SUBMERGED_MINING_SPEED + f Lnet/minecraft/class_6880; field_51580 EXPLOSION_KNOCKBACK_RESISTANCE + f Lnet/minecraft/class_6880; field_51581 MINING_EFFICIENCY + f Lnet/minecraft/class_6880; field_51582 MOVEMENT_EFFICIENCY + f Lnet/minecraft/class_6880; field_51583 OXYGEN_BONUS + f Lnet/minecraft/class_6880; field_51584 SNEAKING_SPEED + f Lnet/minecraft/class_6880; field_59673 WAYPOINT_RECEIVE_RANGE + f Lnet/minecraft/class_6880; field_59674 CAMERA_DISTANCE + f Lnet/minecraft/class_6880; field_59672 WAYPOINT_TRANSMIT_RANGE + f Lnet/minecraft/class_6880; field_47759 ENTITY_INTERACTION_RANGE + f Lnet/minecraft/class_6880; field_47758 BLOCK_INTERACTION_RANGE + f Lnet/minecraft/class_6880; field_47760 SCALE + f Lnet/minecraft/class_6880; field_47761 STEP_HEIGHT + f Lnet/minecraft/class_6880; field_52450 TEMPT_RANGE + f Lnet/minecraft/class_6880; field_49078 GRAVITY + f Lnet/minecraft/class_6880; field_49079 SAFE_FALL_DISTANCE + f Lnet/minecraft/class_6880; field_49076 BLOCK_BREAK_SPEED + f Lnet/minecraft/class_6880; field_49077 FALL_DAMAGE_MULTIPLIER + f Lnet/minecraft/class_6880; field_45124 MAX_ABSORPTION + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_6880; method_55699 registerAndGetDefault + p 0 registry + m (Ljava/lang/String;Lnet/minecraft/class_1320;)Lnet/minecraft/class_6880; method_26871 register + p 0 id + p 1 attribute +c net/minecraft/class_5137 net/minecraft/entity/mob/Hoglin + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_26950 tryAttack + p 2 target + p 1 attacker + p 0 world + m ()I method_24657 getMovementCooldownTicks + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)V method_26951 knockback + p 0 attacker + p 1 target +c net/minecraft/class_7796 net/minecraft/data/MetadataProvider + f Ljava/util/Map; field_40620 metadata + f Lnet/minecraft/class_7784; field_40619 output + m (Lnet/minecraft/class_7784;Lnet/minecraft/class_2561;)Lnet/minecraft/class_7796; method_46812 create + p 0 output + p 1 description + m (Lnet/minecraft/class_7784;)V + p 1 output + m (Lnet/minecraft/class_7677;Ljava/lang/Object;)Lnet/minecraft/class_7796; method_46185 add + p 2 metadata + p 1 serializer + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/util/function/Supplier;)V method_46186 method_46186 + p 1 key + p 2 jsonSupplier + m (Lnet/minecraft/class_7784;Lnet/minecraft/class_2561;Lnet/minecraft/class_7699;)Lnet/minecraft/class_7796; method_46187 create + p 1 description + p 0 output + p 2 requiredFeatures +c net/minecraft/class_7797 net/minecraft/unused/packageinfo/PackageInfo7797 +c net/minecraft/class_5136 net/minecraft/entity/mob/ZoglinEntity + f Lnet/minecraft/class_2940; field_23734 BABY + f I field_30507 DEFAULT_ATTACK_DAMAGE + f F field_30512 DEFAULT_MOVEMENT_SPEED + f I field_30511 ATTACK_TARGET_DURATION + f Lcom/google/common/collect/ImmutableList; field_23733 USED_MEMORY_MODULES + f F field_30508 BABY_ATTACK_DAMAGE + f I field_23732 movementCooldownTicks + f Lcom/google/common/collect/ImmutableList; field_23731 USED_SENSORS + f F field_30506 DEFAULT_KNOCKBACK_RESISTANCE + f I field_30509 ADULT_MELEE_ATTACK_COOLDOWN + f I field_30510 BABY_MELEE_ATTACK_COOLDOWN + f Z field_57695 DEFAULT_IS_BABY + m (Lnet/minecraft/class_4095;)V method_26930 addFightTasks + p 0 brain + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Z method_64469 method_64469 + p 2 target + m (Lnet/minecraft/class_1309;)V method_26938 setAttackTarget + p 1 entity + m ()V method_26931 tickBrain + m ()V method_26933 playAngrySound + m ()Z method_26939 isAdult + m ()Lnet/minecraft/class_5132$class_5133; method_26937 createZoglinAttributes + m (Lnet/minecraft/class_4095;)V method_26929 addIdleTasks + p 0 brain + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Z method_26936 shouldAttack + p 1 world + p 2 target + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5136;)Ljava/util/Optional; method_64468 method_64468 + p 0 world + p 1 target + m (Lnet/minecraft/class_4095;)V method_26928 addCoreTasks + p 0 brain + m (Lnet/minecraft/class_3218;)Ljava/util/Optional; method_26934 getHoglinTarget + p 1 world +c net/minecraft/class_2751 net/minecraft/network/packet/s2c/play/ScoreboardObjectiveUpdateS2CPacket + f Lnet/minecraft/class_2561; field_12591 displayName + f Ljava/util/Optional; field_47519 numberFormat + f I field_12590 mode + f Lnet/minecraft/class_9139; field_47985 CODEC + f Ljava/lang/String; field_12589 name + f Lnet/minecraft/class_274$class_275; field_12592 type + f I field_33345 UPDATE_MODE + f I field_33344 REMOVE_MODE + f I field_33343 ADD_MODE + m (Lnet/minecraft/class_2602;)V method_11838 apply + m ()Lnet/minecraft/class_2561; method_11836 getDisplayName + m ()Ljava/util/Optional; method_55336 getNumberFormat + m ()Lnet/minecraft/class_274$class_275; method_11839 getType + m (Lnet/minecraft/class_9129;)V + p 1 buf + m (Lnet/minecraft/class_266;I)V + p 1 objective + p 2 mode + m ()I method_11837 getMode + m ()Ljava/lang/String; method_11835 getName + m (Lnet/minecraft/class_9129;)V method_55932 write + p 1 buf +c net/minecraft/class_2752 net/minecraft/network/packet/s2c/play/EntityPassengersSetS2CPacket + f Lnet/minecraft/class_9139; field_47986 CODEC + f [I field_12593 passengerIds + f I field_12594 entityId + m (Lnet/minecraft/class_1297;)V + p 1 entity + m ()I method_11841 getEntityId + m (Lnet/minecraft/class_2540;)V method_55933 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11842 apply + m ()[I method_11840 getPassengerIds +c net/minecraft/class_2754 net/minecraft/state/property/EnumProperty + c Represents a property that has enum values.\n\n

Notes on the enum class:\n

    \n
  • The enum class is required to have 2 or more values.\n
  • The enum class is required to provide a name for each value by\noverriding {@link StringIdentifiable#asString()}.\n
  • The names of the values are required to match the {@linkplain\nnet.minecraft.state.StateManager#VALID_NAME_PATTERN valid name pattern}.\nOtherwise, {@link IllegalArgumentException} will be thrown during the\n{@linkplain net.minecraft.state.StateManager.Builder#validate(Property)\nvalidation of a property}.\n
\n\n

See {@link net.minecraft.state.property.Properties} for example\nusages. + f Ljava/util/Map; field_12596 byName + f [I field_54329 enumOrdinalToPropertyOrdinal + f Ljava/util/List; field_12595 values + m (Ljava/lang/Enum;)Ljava/lang/String; method_11846 name + m (Ljava/lang/String;Ljava/lang/Class;Ljava/util/List;)Lnet/minecraft/class_2754; method_11847 of + c Creates an enum property with the given values.\n\n

See notes on the enum class.\n\n@throws IllegalArgumentException if multiple values have the same name\n\n@see #of(String, Class) + p 2 values + p 1 type + c the type of the values the property contains + p 0 name + c the name of the property; see {@linkplain Property#name the note on the\nname} + m (Ljava/lang/String;Ljava/lang/Class;)Lnet/minecraft/class_2754; method_11850 of + c Creates an enum property with all values of the given enum class.\n\n

See notes on the enum class.\n\n@throws IllegalArgumentException if multiple values have the same name + p 1 type + c the type of the values the property contains + p 0 name + c the name of the property; see {@linkplain Property#name the note on the\nname} + m (Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Enum;)Lnet/minecraft/class_2754; method_11849 of + c Creates an enum property with the given values.\n\n

See notes on the enum class.\n\n@throws IllegalArgumentException if multiple values have the same name\n\n@see #of(String, Class) + p 0 name + c the name of the property; see {@linkplain Property#name the note on the\nname} + p 1 type + c the type of the values the property contains + p 2 values + c the values the property contains; required to have 2 or more values + m (Ljava/lang/Enum;)Z method_38863 method_38863 + p 0 enum_ + m (Ljava/lang/String;Ljava/lang/Class;Ljava/util/function/Predicate;)Lnet/minecraft/class_2754; method_11848 of + c Creates an enum property with the values allowed by the given filter.\n\n

See notes on the enum class.\n\n@throws IllegalArgumentException if multiple values have the same name\n\n@see #of(String, Class) + p 0 name + c the name of the property; see {@linkplain Property#name the note on the\nname} + p 1 type + c the type of the values the property contains + p 2 filter + c the filter which specifies if a value is allowed; required to allow 2\nor more values + m (Ljava/lang/Enum;)I method_64221 ordinal + m (Ljava/lang/String;Ljava/lang/Class;Ljava/util/List;)V + p 1 name + p 2 type + p 3 values +c net/minecraft/class_1422 net/minecraft/entity/passive/FishEntity + f Z field_57598 DEFAULT_FROM_BUCKET + f Lnet/minecraft/class_2940; field_6730 FROM_BUCKET + m ()Lnet/minecraft/class_3414; method_6457 getFlopSound + m ()Z method_6456 hasSelfControl + m ()Lnet/minecraft/class_5132$class_5133; method_26879 createFishAttributes +c net/minecraft/class_1422$class_1424 net/minecraft/entity/passive/FishEntity$SwimToRandomPlaceGoal + f Lnet/minecraft/class_1422; field_6732 fish + m (Lnet/minecraft/class_1422;)V + p 1 fish +c net/minecraft/class_1422$class_1423 net/minecraft/entity/passive/FishEntity$FishMoveControl + f Lnet/minecraft/class_1422; field_6731 fish + m (Lnet/minecraft/class_1422;)V + p 1 owner +c net/minecraft/class_1421 net/minecraft/entity/mob/AmbientEntity +c net/minecraft/class_1420 net/minecraft/entity/passive/BatEntity + f Lnet/minecraft/class_7094; field_46969 roostingAnimationState + f Lnet/minecraft/class_7094; field_46968 flyingAnimationState + f Lnet/minecraft/class_2338; field_6729 hangingPosition + f Lnet/minecraft/class_4051; field_18100 CLOSE_PLAYER_PREDICATE + f B field_57597 DEFAULT_BAT_FLAGS + f Lnet/minecraft/class_2940; field_6728 BAT_FLAGS + c The tracked flags of bats. Only has the {@code 1} bit for {@linkplain\n#isRoosting() roosting}. + f I field_30269 ROOSTING_FLAG + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20661 canSpawn + p 3 pos + p 4 random + p 1 world + p 2 spawnReason + p 0 type + m (Z)V method_6449 setRoosting + p 1 roosting + m ()V method_54758 updateAnimations + m ()Z method_6450 isRoosting + c Returns whether this bat is hanging upside-down under a block. + m ()Lnet/minecraft/class_5132$class_5133; method_26878 createBatAttributes +c net/minecraft/class_2750 net/minecraft/block/enums/DoorHinge + f Lnet/minecraft/class_2750; field_12588 LEFT + f Lnet/minecraft/class_2750; field_12586 RIGHT +c net/minecraft/class_2748 net/minecraft/network/packet/s2c/play/ExperienceBarUpdateS2CPacket + f I field_12582 experienceLevel + f F field_12580 barProgress + f I field_12581 experience + f Lnet/minecraft/class_9139; field_47983 CODEC + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()I method_11828 getExperience + m ()I method_11827 getExperienceLevel + m ()F method_11830 getBarProgress + m (FII)V + p 2 experienceLevel + p 3 experience + p 1 barProgress + m (Lnet/minecraft/class_2540;)V method_55930 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11829 apply +c net/minecraft/class_10470 net/minecraft/unused/packageinfo/PackageInfo10470 +c net/minecraft/class_2749 net/minecraft/network/packet/s2c/play/HealthUpdateS2CPacket + f I field_12585 food + f F field_12583 saturation + f Lnet/minecraft/class_9139; field_47984 CODEC + f F field_12584 health + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()F method_11834 getSaturation + m (Lnet/minecraft/class_2602;)V method_11832 apply + m ()F method_11833 getHealth + m (Lnet/minecraft/class_2540;)V method_55931 write + p 1 buf + m (FIF)V + p 2 food + p 3 saturation + p 1 health + m ()I method_11831 getFood +c net/minecraft/class_1413 net/minecraft/entity/mob/MobVisibilityCache + f Lit/unimi/dsi/fastutil/ints/IntSet; field_6692 visibleEntities + f Lnet/minecraft/class_1308; field_6691 owner + f Lit/unimi/dsi/fastutil/ints/IntSet; field_6690 invisibleEntities + m (Lnet/minecraft/class_1308;)V + p 1 owner + m ()V method_6370 clear + m (Lnet/minecraft/class_1297;)Z method_6369 canSee + p 1 entity +c net/minecraft/class_2744 net/minecraft/network/packet/s2c/play/EntityEquipmentUpdateS2CPacket + f Ljava/util/List; field_25721 equipmentList + f Lnet/minecraft/class_9139; field_47982 CODEC + f I field_12565 entityId + m ()Ljava/util/List; method_30145 getEquipmentList + m ()I method_11820 getEntityId + m (ILjava/util/List;)V + p 2 equipmentList + p 1 entityId + m (Lnet/minecraft/class_9129;)V method_55929 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11823 apply + m (Lnet/minecraft/class_9129;)V + p 1 buf +c net/minecraft/class_10473 net/minecraft/client/render/item/property/numeric/CompassState + f Lnet/minecraft/class_5819; field_55389 random + f Lnet/minecraft/class_10473$class_10474; field_55388 target + f Lcom/mojang/serialization/MapCodec; field_55385 CODEC + f Lnet/minecraft/class_10480$class_10481; field_55387 aimlessAngler + f Lnet/minecraft/class_10480$class_10481; field_55386 aimedAngler + m (I)I method_65647 scatter + c Scatters a seed by integer overflow in multiplication onto the whole\nint domain. + p 0 seed + m (IJ)F method_65648 getAimlessAngle + p 2 time + p 1 seed + m (ZLnet/minecraft/class_10473$class_10474;)V + p 2 target + p 1 wobble + m (Lnet/minecraft/class_11566;Lnet/minecraft/class_4208;)Z method_65652 canPointTo + p 1 to + p 0 from + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65653 method_65653 + p 0 instance + m (Lnet/minecraft/class_11566;JLnet/minecraft/class_2338;)F method_65650 getAngleTo + p 2 time + p 1 from + p 4 to + m ()Lnet/minecraft/class_10473$class_10474; method_65646 getTarget + m (Lnet/minecraft/class_11566;Lnet/minecraft/class_2338;)D method_65651 getAngleTo + p 1 to + p 0 from + m (Lnet/minecraft/class_11566;)F method_65649 getBodyYaw + p 0 context +c net/minecraft/class_10473$class_10474 net/minecraft/client/render/item/property/numeric/CompassState$Target + f Lcom/mojang/serialization/Codec; field_55393 CODEC + f Ljava/lang/String; field_55394 name + f Lnet/minecraft/class_10473$class_10474; field_55555 NONE + f Lnet/minecraft/class_10473$class_10474; field_55390 LODESTONE + f Lnet/minecraft/class_10473$class_10474; field_55392 RECOVERY + f Lnet/minecraft/class_10473$class_10474; field_55391 SPAWN + m (Lnet/minecraft/class_638;Lnet/minecraft/class_1799;Lnet/minecraft/class_11566;)Lnet/minecraft/class_4208; method_65656 getPosition + p 1 world + p 2 stack + p 3 context + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_1419 net/minecraft/village/ZombieSiegeManager + f Lorg/slf4j/Logger; field_26390 LOGGER + f I field_6719 startZ + f Z field_6725 spawned + f I field_6723 remaining + f I field_6720 startY + f I field_6722 countdown + f I field_6721 startX + f Lnet/minecraft/class_1419$class_4152; field_18479 state + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Lnet/minecraft/class_243; method_6448 getSpawnVector + p 1 world + p 2 pos + m (Lnet/minecraft/class_3218;)Z method_6446 spawn + p 1 world + m (Lnet/minecraft/class_3218;)V method_6447 trySpawnZombie + p 1 world +c net/minecraft/class_1419$class_4152 net/minecraft/village/ZombieSiegeManager$State + f Lnet/minecraft/class_1419$class_4152; field_18480 SIEGE_CAN_ACTIVATE + f Lnet/minecraft/class_1419$class_4152; field_18481 SIEGE_TONIGHT + f Lnet/minecraft/class_1419$class_4152; field_18482 SIEGE_DONE +c net/minecraft/class_2745 net/minecraft/block/enums/ChestType + f Ljava/lang/String; field_12572 name + f Lnet/minecraft/class_2745; field_12574 LEFT + f Lnet/minecraft/class_2745; field_12571 RIGHT + f Lnet/minecraft/class_2745; field_12569 SINGLE + m ()Lnet/minecraft/class_2745; method_11824 getOpposite + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_2746 net/minecraft/state/property/BooleanProperty + c Represents a property that has boolean values.\n\n

See {@link net.minecraft.state.property.Properties} for example\nusages. + f I field_54328 FALSE_ORDINAL + f I field_54327 TRUE_ORDINAL + f Ljava/util/List; field_12575 VALUES + m (Ljava/lang/Boolean;)Ljava/lang/String; method_11826 name + m (Ljava/lang/String;)V + p 1 name + m (Ljava/lang/Boolean;)I method_64219 ordinal + m (Ljava/lang/String;)Lnet/minecraft/class_2746; method_11825 of + c Creates a boolean property. + p 0 name + c the name of the property; see {@linkplain Property#name the note on the\nname} +c net/minecraft/class_10471 net/minecraft/client/render/item/property/numeric/BundleFullnessProperty + f Lcom/mojang/serialization/MapCodec; field_55382 CODEC +c net/minecraft/class_10472 net/minecraft/client/render/item/property/numeric/CompassProperty + f Lnet/minecraft/class_10473; field_55384 state + f Lcom/mojang/serialization/MapCodec; field_55383 CODEC + m (Lnet/minecraft/class_10472;)Lnet/minecraft/class_10473; method_65645 method_65645 + p 0 property + m (Lnet/minecraft/class_10473;)V + p 1 state + m (ZLnet/minecraft/class_10473$class_10474;)V + p 1 wobble + p 2 target +c net/minecraft/class_2747 net/minecraft/block/enums/ComparatorMode + f Ljava/lang/String; field_12577 name + f Lnet/minecraft/class_2747; field_12576 COMPARE + f Lnet/minecraft/class_2747; field_12578 SUBTRACT + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_10477 net/minecraft/client/render/item/property/numeric/CrossbowPullProperty + f Lcom/mojang/serialization/MapCodec; field_55398 CODEC +c net/minecraft/class_10478 net/minecraft/client/render/item/property/numeric/CustomModelDataFloatProperty + f Lcom/mojang/serialization/MapCodec; field_55399 CODEC + f I comp_3411 index + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65658 method_65658 + p 0 instance + m ()I comp_3411 index + m (I)V + p 1 index +c net/minecraft/class_10475 net/minecraft/client/render/item/property/numeric/CooldownProperty + f Lcom/mojang/serialization/MapCodec; field_55396 CODEC +c net/minecraft/class_10476 net/minecraft/client/render/item/property/numeric/CountProperty + f Lcom/mojang/serialization/MapCodec; field_55397 CODEC + f Z comp_3410 normalize + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65657 method_65657 + p 0 instance + m ()Z comp_3410 normalize + m (Z)V + p 1 normalize +c net/minecraft/class_10479 net/minecraft/client/render/item/property/numeric/DamageProperty + f Lcom/mojang/serialization/MapCodec; field_55400 CODEC + f Z comp_3412 normalize + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65659 method_65659 + p 0 instance + m ()Z comp_3412 normalize + m (Z)V + p 1 normalize +c net/minecraft/class_1430 net/minecraft/entity/passive/AbstractCowEntity + f Lnet/minecraft/class_4048; field_47771 BABY_BASE_DIMENSIONS + m (Lnet/minecraft/class_1799;)Z method_58367 method_58367 + p 0 stack + m ()Lnet/minecraft/class_5132$class_5133; method_26883 createCowAttributes +c net/minecraft/class_2764 net/minecraft/block/enums/PistonType + f Ljava/lang/String; field_12635 name + f Lnet/minecraft/class_2764; field_12637 DEFAULT + f Lnet/minecraft/class_2764; field_12634 STICKY + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_2765 net/minecraft/network/packet/s2c/play/PlaySoundFromEntityS2CPacket + f J field_38819 seed + f Lnet/minecraft/class_3419; field_12641 category + f I field_12640 entityId + f Lnet/minecraft/class_6880; field_12642 sound + f Lnet/minecraft/class_9139; field_47994 CODEC + f F field_12638 pitch + f F field_12639 volume + m ()J method_43235 getSeed + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_3419;Lnet/minecraft/class_1297;FFJ)V + p 2 category + p 1 sound + p 4 volume + p 3 entity + p 6 seed + p 5 pitch + m ()Lnet/minecraft/class_6880; method_11882 getSound + m ()F method_11880 getPitch + m ()I method_11883 getEntityId + m (Lnet/minecraft/class_9129;)V + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11884 apply + m (Lnet/minecraft/class_9129;)V method_55941 write + p 1 buf + m ()Lnet/minecraft/class_3419; method_11881 getCategory + m ()F method_11885 getVolume +c net/minecraft/class_1433 net/minecraft/entity/passive/DolphinEntity + f Lnet/minecraft/class_4051; field_18101 CLOSE_PLAYER_PREDICATE + f Ljava/util/function/Predicate; field_6748 CAN_TAKE + f Lnet/minecraft/class_2338; field_56651 treasurePos + f I field_30327 MAX_MOISTNESS + f Z field_57606 DEFAULT_HAS_FISH + f I field_30326 MAX_AIR + f Lnet/minecraft/class_2940; field_6750 HAS_FISH + f F field_52467 BABY_SCALE_FACTOR + f Lnet/minecraft/class_2940; field_6749 MOISTNESS + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_1433; method_61468 createChild + m ()Z method_6487 hasFish + m ()Z method_6484 isNearTarget + m ()I method_6491 getMoistness + m (Lnet/minecraft/class_1542;)Z method_6485 method_6485 + p 0 item + m (Lnet/minecraft/class_2394;)V method_6492 spawnParticlesAround + p 1 parameters + m (I)V method_6489 setMoistness + p 1 moistness + m ()Lnet/minecraft/class_5132$class_5133; method_26884 createDolphinAttributes + m (Z)V method_6486 setHasFish + p 1 hasFish +c net/minecraft/class_1433$class_1435 net/minecraft/entity/passive/DolphinEntity$LeadToNearbyTreasureGoal + f Lnet/minecraft/class_1433; field_6752 dolphin + f Z field_6753 noPathToStructure + m (Lnet/minecraft/class_1433;)V + p 1 dolphin +c net/minecraft/class_1433$class_1436 net/minecraft/entity/passive/DolphinEntity$SwimWithPlayerGoal + f Lnet/minecraft/class_1433; field_6755 dolphin + f D field_6754 speed + f Lnet/minecraft/class_1657; field_6756 closestPlayer + m (Lnet/minecraft/class_1433;D)V + p 2 speed + p 1 dolphin +c net/minecraft/class_1433$class_1437 net/minecraft/entity/passive/DolphinEntity$PlayWithItemsGoal + f I field_6758 nextPlayingTime + m (Lnet/minecraft/class_1799;)V method_18056 spitOutItem + p 1 stack +c net/minecraft/class_1432 net/minecraft/entity/Flutterer + m ()Z method_6581 isInAir +c net/minecraft/class_2760 net/minecraft/block/enums/BlockHalf + f Ljava/lang/String; field_12616 name + f Lnet/minecraft/class_2760; field_12617 BOTTOM + f Lnet/minecraft/class_2760; field_12619 TOP + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_2761 net/minecraft/network/packet/s2c/play/WorldTimeUpdateS2CPacket + f J comp_3220 timeOfDay + f Lnet/minecraft/class_9139; field_47991 CODEC + f J comp_3219 time + f Z comp_3221 tickDayTime + m ()J comp_3220 timeOfDay + m ()J comp_3219 time + m (Lnet/minecraft/class_2602;)V method_11872 apply + m ()Z comp_3221 tickDayTime + m (JJZ)V + p 1 time + p 3 timeOfDay + p 5 tickDayTime +c net/minecraft/class_1431 net/minecraft/entity/passive/CodEntity +c net/minecraft/class_2759 net/minecraft/network/packet/s2c/play/PlayerSpawnPositionS2CPacket + f Lnet/minecraft/class_9139; field_47977 CODEC + f Lnet/minecraft/class_5217$class_12064; comp_4904 respawnData + m (Lnet/minecraft/class_2602;)V method_11869 apply + m ()Lnet/minecraft/class_5217$class_12064; comp_4904 respawnData + m (Lnet/minecraft/class_5217$class_12064;)V + p 1 respawnData +c net/minecraft/class_1427 net/minecraft/entity/passive/GolemEntity +c net/minecraft/class_1425 net/minecraft/entity/passive/SchoolingFishEntity + f I field_6733 groupSize + f Lnet/minecraft/class_1425; field_6734 leader + m ()Z method_6469 canHaveMoreFishInGroup + m ()V method_6466 leaveGroup + m ()V method_6463 moveTowardLeader + m ()Z method_6467 hasOtherFishInGroup + m ()V method_6462 increaseGroupSize + m (Lnet/minecraft/class_1425;)Z method_6460 method_6460 + p 1 fishx + m ()V method_6459 decreaseGroupSize + m (Lnet/minecraft/class_1425;)Lnet/minecraft/class_1425; method_6461 joinGroupOf + p 1 groupLeader + m ()I method_6465 getMaxGroupSize + m ()Z method_6464 isCloseEnoughToLeader + m (Ljava/util/stream/Stream;)V method_6468 pullInOtherFish + p 1 fish + m (Lnet/minecraft/class_1425;)V method_6458 method_6458 + p 1 fishx + m ()Z method_6470 hasLeader +c net/minecraft/class_1425$class_1426 net/minecraft/entity/passive/SchoolingFishEntity$FishData + f Lnet/minecraft/class_1425; field_6735 leader + m (Lnet/minecraft/class_1425;)V + p 1 leader +c net/minecraft/class_10462 net/minecraft/client/render/item/property/bool/DamagedProperty + f Lcom/mojang/serialization/MapCodec; field_55374 CODEC +c net/minecraft/class_11793 net/minecraft/client/render/command/ModelPartCommandRenderer + f Lnet/minecraft/class_4587; field_62261 matrices + m (Lnet/minecraft/class_11788;Lnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_4618;Lnet/minecraft/class_4597$class_4598;)V method_73543 render + p 1 queue + p 2 vertexConsumers +c net/minecraft/class_11793$class_12049 net/minecraft/client/render/command/ModelPartCommandRenderer$Commands + f Ljava/util/Map; field_62985 modelPartCommands + f Ljava/util/Set; field_62986 modelPartLayers + m (Lnet/minecraft/class_1921;Lnet/minecraft/class_11661$class_11789;)V method_74825 add + p 2 command + p 1 renderLayer + m (Lnet/minecraft/class_1921;)Z method_74824 method_74824 + p 1 renderLayer + m ()V method_74823 clear + m ()V method_74826 nextFrame +c net/minecraft/class_10463 net/minecraft/client/render/item/property/bool/FishingRodCastProperty + f Lcom/mojang/serialization/MapCodec; field_55375 CODEC +c net/minecraft/class_2756 net/minecraft/block/enums/DoubleBlockHalf + f Lnet/minecraft/class_2350; field_47101 oppositeDirection + f Lnet/minecraft/class_2756; field_12609 UPPER + f Lnet/minecraft/class_2756; field_12607 LOWER + m ()Lnet/minecraft/class_2350; method_54779 getOppositeDirection + m (Ljava/lang/String;ILnet/minecraft/class_2350;)V + p 3 oppositeDirection + m ()Lnet/minecraft/class_2756; method_54780 getOtherHalf +c net/minecraft/class_2757 net/minecraft/network/packet/s2c/play/ScoreboardScoreUpdateS2CPacket + f Lnet/minecraft/class_9139; field_47988 CODEC + f Ljava/lang/String; comp_2122 scoreHolderName + f Ljava/lang/String; comp_2123 objectiveName + f Ljava/util/Optional; comp_2126 numberFormat + f Ljava/util/Optional; comp_2125 display + f I comp_2124 score + m (Lnet/minecraft/class_2602;)V method_11866 apply + m ()Ljava/lang/String; comp_2122 scoreHolderName + m ()I comp_2124 score + m ()Ljava/lang/String; comp_2123 objectiveName + m ()Ljava/util/Optional; comp_2125 display + m ()Ljava/util/Optional; comp_2126 numberFormat + m (Ljava/lang/String;Ljava/lang/String;ILjava/util/Optional;Ljava/util/Optional;)V + p 1 scoreHolderName + p 2 objectiveName + p 3 score + p 4 display + p 5 numberFormat +c net/minecraft/class_1429 net/minecraft/entity/passive/AnimalEntity + f I field_6745 loveTicks + f Lnet/minecraft/class_10583; field_6744 lovingPlayer + f I field_57599 DEFAULT_LOVE_TICKS + f I field_30270 BREEDING_COOLDOWN + m (I)V method_6476 setLoveTicks + p 1 loveTicks + m ()Lnet/minecraft/class_3222; method_6478 getLovingPlayer + m (Lnet/minecraft/class_1429;Lnet/minecraft/class_1296;Lnet/minecraft/class_3222;)V method_49795 method_49795 + p 3 player + m (Lnet/minecraft/class_1799;)Z method_6481 isBreedingItem + p 1 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;Lnet/minecraft/class_1296;)V method_49794 breed + p 3 baby + p 2 other + p 1 world + m ()V method_6477 resetLoveTicks + m (Lnet/minecraft/class_1920;Lnet/minecraft/class_2338;)Z method_39448 isLightLevelValidForNaturalSpawn + p 0 world + p 1 pos + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20663 isValidNaturalSpawn + p 4 random + p 2 spawnReason + p 3 pos + p 0 type + p 1 world + m (Lnet/minecraft/class_1429;)Z method_6474 canBreedWith + p 1 other + m ()Z method_6482 canEat + m (Lnet/minecraft/class_1657;)V method_6480 lovePlayer + p 1 player + m ()Z method_6479 isInLove + m ()I method_29270 getLoveTicks + m ()V method_61458 playEatSound + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1429;)V method_24650 breed + p 1 world + p 2 other + m ()Lnet/minecraft/class_5132$class_5133; method_61457 createAnimalAttributes +c net/minecraft/class_10460 net/minecraft/client/render/item/property/bool/BooleanProperty + m ()Lcom/mojang/serialization/MapCodec; method_65637 getCodec +c net/minecraft/class_2758 net/minecraft/state/property/IntProperty + c Represents a property that has integer values.\n\n

See {@link net.minecraft.state.property.Properties} for example\nusages. + f Lit/unimi/dsi/fastutil/ints/IntImmutableList; field_12614 values + f I field_37655 min + f I field_37656 max + m (Ljava/lang/Integer;)I method_64222 ordinal + m (Ljava/lang/Integer;)Ljava/lang/String; method_11868 name + m (Ljava/lang/String;II)Lnet/minecraft/class_2758; method_11867 of + c Creates an integer property.\n\n

Note that this method computes all possible values.\n\n@throws IllegalArgumentException if {@code 0 <= min < max} is not\nsatisfied + p 2 max + c the maximum value the property contains + p 0 name + c the name of the property; see {@linkplain Property#name the note on the\nname} + p 1 min + c the minimum value the property contains + m (Ljava/lang/String;II)V + p 3 max + p 2 min + p 1 name +c net/minecraft/class_1428 net/minecraft/entity/passive/ChickenEntity + f Z field_57605 DEFAULT_HAS_JOCKEY + f F field_6736 lastFlapProgress + f I field_6739 eggLayTime + f F field_6741 flapProgress + f Lnet/minecraft/class_4048; field_47770 BABY_BASE_DIMENSIONS + f F field_6743 maxWingDeviation + f Lnet/minecraft/class_2940; field_56537 VARIANT + f Z field_6740 hasJockey + f F field_6737 flapSpeed + f F field_6738 lastMaxWingDeviation + m ()Lnet/minecraft/class_6880; method_67522 getVariant + m (Lnet/minecraft/class_1799;)Z method_58366 method_58366 + p 0 stack + m (Z)V method_6473 setHasJockey + p 1 hasJockey + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_1428; method_6471 createChild + m (Ljava/lang/Integer;)V method_68267 method_68267 + p 1 eggLayTime + m (Lnet/minecraft/class_6880;)V method_67521 setVariant + p 1 variant + m ()Lnet/minecraft/class_5132$class_5133; method_26882 createChickenAttributes + m ()Z method_6472 hasJockey +c net/minecraft/class_10461 net/minecraft/client/render/item/property/bool/CustomModelDataFlagProperty + f Lcom/mojang/serialization/MapCodec; field_55373 CODEC + f I comp_3407 index + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65641 method_65641 + p 0 instance + m ()I comp_3407 index + m (I)V + p 1 index +c net/minecraft/class_11791 net/minecraft/client/render/block/MovingBlockRenderState + f Lnet/minecraft/class_2338; field_62245 fallingBlockPos + f Lnet/minecraft/class_2338; field_62246 entityBlockPos + f Lnet/minecraft/class_2680; field_62247 blockState + f Lnet/minecraft/class_1920; field_62249 world + f Lnet/minecraft/class_6880; field_62248 biome +c net/minecraft/class_10466 net/minecraft/client/render/item/property/bool/SelectedProperty + f Lcom/mojang/serialization/MapCodec; field_55378 CODEC +c net/minecraft/class_10467 net/minecraft/client/render/item/property/bool/ExtendedViewProperty + f Lcom/mojang/serialization/MapCodec; field_55379 CODEC +c net/minecraft/class_11796 net/minecraft/server/dedicated/management/IncomingRpcMethod + m (Lnet/minecraft/class_11796$class_11800;)Lnet/minecraft/class_11796$class_11797; method_73619 createParameterlessBuilder + p 0 handler + m (Lnet/minecraft/class_11827;Lcom/google/gson/JsonElement;Lnet/minecraft/class_11838;)Lcom/google/gson/JsonElement; method_73621 handle + p 3 remote + p 2 parameters + p 1 dispatcher + m (Lnet/minecraft/class_11796$class_11801;)Lnet/minecraft/class_11796$class_11797; method_73620 createParameterizedBuilder + p 0 handler + m (Ljava/util/function/Function;)Lnet/minecraft/class_11796$class_11797; method_73626 createParameterlessBuilder + p 0 handler + m ()Lnet/minecraft/class_11796$class_12053; comp_4907 attributes + m ()Lnet/minecraft/class_11817; comp_4662 info +c net/minecraft/class_11796$class_11797 net/minecraft/server/dedicated/management/IncomingRpcMethod$Builder + f Lnet/minecraft/class_11796$class_11801; field_63668 parameterizedHandler + f Lnet/minecraft/class_11796$class_11800; field_63667 parameterlessHandler + f Lnet/minecraft/class_11820; field_62296 result + f Ljava/lang/String; field_62294 description + f Z field_62298 discoverable + f Z field_62297 runOnMainThread + f Lnet/minecraft/class_11818; field_62295 params + m (Ljava/lang/String;Lnet/minecraft/class_11821;)Lnet/minecraft/class_11796$class_11797; method_73629 result + p 1 name + p 2 schema + m (Ljava/util/function/Function;Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;)Ljava/lang/Object; method_75571 method_75571 + p 1 dispatcher + p 2 remote + m (Ljava/lang/String;Lnet/minecraft/class_11821;)Lnet/minecraft/class_11796$class_11797; method_73628 parameter + p 1 name + p 2 schema + m (Ljava/util/function/Function;)V + p 1 parameterlessHandler + m (Lnet/minecraft/class_11796$class_11801;)V + p 1 parameterizedHandler + m (Ljava/lang/String;)Lnet/minecraft/class_11796$class_11797; method_73630 description + p 1 description + m ()Lnet/minecraft/class_11796$class_11797; method_73627 noRequireMainThread + m ()Lnet/minecraft/class_11796; method_73631 build + m (Lnet/minecraft/class_2378;Ljava/lang/String;)Lnet/minecraft/class_11796; method_73632 buildAndRegisterVanilla + c Builds and registers this RPC method under a vanilla identifier.\nThis should only be used by Minecraft to set up vanilla RPC methods. + p 2 path + p 1 registry + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_2960;)Lnet/minecraft/class_11796; method_74846 buildAndRegister + p 2 id + p 1 registry + m ()Lnet/minecraft/class_11796$class_11797; method_73633 notDiscoverable + m (Lnet/minecraft/class_11796$class_11800;)V + p 1 parameterlessHandler +c net/minecraft/class_11796$class_11798 net/minecraft/server/dedicated/management/IncomingRpcMethod$Parameterized + f Lnet/minecraft/class_11796$class_11801; comp_4665 handler + f Lnet/minecraft/class_11817; comp_4662 info + f Lnet/minecraft/class_11796$class_12053; comp_4907 attributes + m ()Lnet/minecraft/class_11796$class_11801; comp_4665 handler + m (Lnet/minecraft/class_11817;Lnet/minecraft/class_11796$class_12053;Lnet/minecraft/class_11796$class_11801;)V + p 1 info + p 2 attributes + p 3 handler +c net/minecraft/class_11796$class_11799 net/minecraft/server/dedicated/management/IncomingRpcMethod$Parameterless + f Lnet/minecraft/class_11796$class_11800; comp_4667 handler + f Lnet/minecraft/class_11817; comp_4662 info + f Lnet/minecraft/class_11796$class_12053; comp_4907 attributes + m ()Lnet/minecraft/class_11796$class_11800; comp_4667 handler + m (Lnet/minecraft/class_11817;Lnet/minecraft/class_11796$class_12053;Lnet/minecraft/class_11796$class_11800;)V + p 1 info + p 2 attributes + p 3 handler +c net/minecraft/class_11796$class_11800 net/minecraft/server/dedicated/management/IncomingRpcMethod$ParameterlessHandler + m (Lnet/minecraft/class_11827;Lnet/minecraft/class_11838;)Ljava/lang/Object; apply apply + p 2 remote + p 1 dispatcher +c net/minecraft/class_11796$class_11801 net/minecraft/server/dedicated/management/IncomingRpcMethod$ParameterizedHandler + m (Lnet/minecraft/class_11827;Ljava/lang/Object;Lnet/minecraft/class_11838;)Ljava/lang/Object; apply apply + p 3 remote + p 2 params + p 1 dispatcher +c net/minecraft/class_11796$class_12053 net/minecraft/server/dedicated/management/IncomingRpcMethod$Attributes + f Z comp_4906 discoverable + f Z comp_4905 runOnMainThread + m ()Z comp_4905 runOnMainThread + m ()Z comp_4906 discoverable + m (ZZ)V + p 1 runOnMainThread + p 2 discoverable +c net/minecraft/class_10464 net/minecraft/client/render/item/property/bool/HasComponentProperty + f Lcom/mojang/serialization/MapCodec; field_55376 CODEC + f Z comp_3438 ignoreDefault + f Lnet/minecraft/class_9331; comp_3408 componentType + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65642 method_65642 + p 0 instance + m ()Lnet/minecraft/class_9331; comp_3408 componentType + m ()Z comp_3438 ignoreDefault + m (Lnet/minecraft/class_9331;Z)V + p 1 componentType + p 2 ignoreDefault +c net/minecraft/class_11795 net/minecraft/server/dedicated/management/network/ManagementConnectionHandler + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_62292 pendingResponses + f Lorg/slf4j/Logger; field_62284 LOGGER + f Ljava/util/concurrent/atomic/AtomicInteger; field_62285 CONNECTION_ID + f Lio/netty/channel/Channel; field_62289 channel + f Ljava/util/concurrent/atomic/AtomicInteger; field_62291 OUTGOING_REQUEST_ID + f Lnet/minecraft/class_11805; field_62286 managementLogger + f Lnet/minecraft/class_11838; field_62287 remote + f Lnet/minecraft/class_11807; field_62288 managementServer + f Lnet/minecraft/class_11827; field_62290 handlerDispatcher + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V channelRead0 channelRead0 + p 2 in + p 1 context + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Throwable;)V exceptionCaught exceptionCaught + p 1 context + p 2 throwable + m (Lio/netty/channel/ChannelHandlerContext;)V channelActive channelActive + p 1 context + m (Ljava/util/List;)Lcom/google/gson/JsonArray; method_74472 handleEach + p 1 messages + m (Ljava/lang/String;Lcom/google/gson/JsonElement;)Lcom/google/gson/JsonElement; method_73614 processRequest + p 1 method + p 2 json + m (JLit/unimi/dsi/fastutil/ints/Int2ObjectMap$Entry;)Z method_73607 method_73607 + p 2 responseEntry + m (Lnet/minecraft/class_6880$class_6883;Ljava/lang/Object;Z)Ljava/util/concurrent/CompletableFuture; method_73610 sendRequest + p 3 expectResponse + p 1 method + p 2 params + m (Lcom/google/gson/JsonElement;)Z method_74844 isValidRequestId + p 0 json + m (Lnet/minecraft/class_6880$class_6883;)Ljava/util/concurrent/CompletableFuture; method_73616 sendRequest + p 1 method + m (Lcom/google/gson/JsonElement;Ljava/lang/String;Lcom/google/gson/JsonElement;)Lcom/google/gson/JsonObject; method_73618 handleRequest + p 3 parameters + p 2 method + p 1 json + m ()V method_73605 processTimeouts + m (Lnet/minecraft/class_6880$class_6883;)V method_73608 sendNotification + p 1 method + m (Lcom/google/gson/JsonElement;Lcom/google/gson/JsonObject;)Lcom/google/gson/JsonObject; method_73613 handleError + p 2 error + p 1 json + m (Lnet/minecraft/class_6880$class_6883;Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture; method_73617 sendRequest + p 1 method + p 2 params + m (Lio/netty/channel/ChannelHandlerContext;)V channelInactive channelInactive + p 1 context + m (ILcom/google/gson/JsonElement;)V method_73606 handleResponse + p 1 id + p 2 result + m (Lio/netty/channel/ChannelHandlerContext;Lcom/google/gson/JsonElement;)V method_73612 channelRead0 + m (Lcom/google/gson/JsonObject;)Lcom/google/gson/JsonObject; method_73611 handleMessage + p 1 request + m (Lnet/minecraft/class_6880$class_6883;Ljava/lang/Object;)V method_73609 sendNotification + p 2 params + p 1 method + m (Lcom/google/gson/JsonElement;)Z method_74845 isValidResponseId + p 0 json + m (Lio/netty/channel/Channel;Lnet/minecraft/class_11807;Lnet/minecraft/class_11827;Lnet/minecraft/class_11805;)V + p 1 channel + p 2 managementServer + p 3 handlerDispatcher + p 4 managementLogger + m (Lcom/google/gson/JsonElement;)Lcom/google/gson/JsonObject; method_74471 method_74471 + p 1 message +c net/minecraft/class_10465 net/minecraft/client/render/item/property/bool/CarriedProperty + f Lcom/mojang/serialization/MapCodec; field_55377 CODEC +c net/minecraft/class_10468 net/minecraft/client/render/item/property/bool/UsingItemProperty + f Lcom/mojang/serialization/MapCodec; field_55380 CODEC +c net/minecraft/class_1400 net/minecraft/entity/ai/goal/ActiveTargetGoal + c A target goal that finds a target by entity class when the goal starts. + f Ljava/lang/Class; field_6643 targetClass + f I field_6641 reciprocalChance + c The reciprocal of chance to actually search for a target on every tick\nwhen this goal is not started. This is also the average number of ticks\nbetween each search (as in a poisson distribution). + f Lnet/minecraft/class_4051; field_6642 targetPredicate + f I field_36304 DEFAULT_RECIPROCAL_CHANCE + f Lnet/minecraft/class_1309; field_6644 targetEntity + m (Lnet/minecraft/class_1308;Ljava/lang/Class;ZLnet/minecraft/class_4051$class_10254;)V + p 4 predicate + p 3 checkVisibility + p 2 targetClass + p 1 mob + m (Lnet/minecraft/class_1308;Ljava/lang/Class;Z)V + p 3 checkVisibility + p 2 targetClass + p 1 mob + m ()Lnet/minecraft/class_4051; method_61438 getAndUpdateTargetPredicate + m (D)Lnet/minecraft/class_238; method_6321 getSearchBox + p 1 distance + m (Lnet/minecraft/class_1308;Ljava/lang/Class;IZZLnet/minecraft/class_4051$class_10254;)V + p 1 mob + p 2 targetClass + p 3 reciprocalChance + p 4 checkVisibility + p 5 checkCanNavigate + p 6 targetPredicate + m (Lnet/minecraft/class_1308;Ljava/lang/Class;ZZ)V + p 2 targetClass + p 1 mob + p 4 checkCanNavigate + p 3 checkVisibility + m (Lnet/minecraft/class_1309;)V method_24632 setTargetEntity + p 1 targetEntity + m ()V method_18415 findClosestTarget +c net/minecraft/class_2726 net/minecraft/network/packet/s2c/play/EntitySetHeadYawS2CPacket + f B field_12436 headYaw + f I field_12437 entityId + f Lnet/minecraft/class_9139; field_47963 CODEC + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11788 apply + m (Lnet/minecraft/class_1297;B)V + p 2 headYaw + p 1 entity + m ()F method_11787 getHeadYaw + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_1297; method_11786 getEntity + p 1 world + m (Lnet/minecraft/class_2540;)V method_55910 write + p 1 buf +c net/minecraft/class_10491 net/minecraft/client/render/item/property/select/ItemBlockStateProperty + f Lcom/mojang/serialization/codecs/PrimitiveCodec; field_56373 VALUE_CODEC + f Lnet/minecraft/class_10494$class_10495; field_55418 TYPE + f Ljava/lang/String; comp_3416 property + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65680 method_65680 + p 0 instance + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_1309;ILnet/minecraft/class_811;)Ljava/lang/String; method_65681 getValue + m ()Ljava/lang/String; comp_3416 property + m (Ljava/lang/String;)V + p 1 property +c net/minecraft/class_10492 net/minecraft/client/render/item/property/select/MainHandProperty + f Lcom/mojang/serialization/Codec; field_56375 VALUE_CODEC + f Lnet/minecraft/class_10494$class_10495; field_55419 TYPE + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_1309;ILnet/minecraft/class_811;)Lnet/minecraft/class_1306; method_65682 getValue +c net/minecraft/class_2729 net/minecraft/network/packet/s2c/play/SelectAdvancementTabS2CPacket + f Lnet/minecraft/class_2960; field_12440 tabId + f Lnet/minecraft/class_9139; field_47965 CODEC + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Lnet/minecraft/class_2960; method_11793 getTabId + m (Lnet/minecraft/class_2960;)V + p 1 tabId + m (Lnet/minecraft/class_2540;)V method_55912 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11794 apply +c net/minecraft/class_10490 net/minecraft/client/render/item/property/select/DisplayContextProperty + f Lcom/mojang/serialization/Codec; field_56372 VALUE_CODEC + f Lnet/minecraft/class_10494$class_10495; field_55417 TYPE + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_1309;ILnet/minecraft/class_811;)Lnet/minecraft/class_811; method_65679 getValue +c net/minecraft/class_10496 net/minecraft/client/render/item/property/select/TrimMaterialProperty + f Lnet/minecraft/class_10494$class_10495; field_55422 TYPE + f Lcom/mojang/serialization/Codec; field_56376 VALUE_CODEC + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_1309;ILnet/minecraft/class_811;)Lnet/minecraft/class_5321; method_65691 getValue +c net/minecraft/class_2724 net/minecraft/network/packet/s2c/play/PlayerRespawnS2CPacket + f B field_41731 KEEP_TRACKED_DATA + f B field_41730 KEEP_ATTRIBUTES + f Lnet/minecraft/class_9139; field_47962 CODEC + f B comp_1729 flag + f B field_41732 KEEP_ALL + f Lnet/minecraft/class_8589; comp_1728 commonPlayerSpawnInfo + m (Lnet/minecraft/class_2602;)V method_11782 apply + m ()B comp_1729 flag + m (Lnet/minecraft/class_9129;)V method_55909 write + m (B)Z method_48016 hasFlag + p 1 flag + m ()Lnet/minecraft/class_8589; comp_1728 commonPlayerSpawnInfo + m (Lnet/minecraft/class_8589;B)V + p 1 commonPlayerSpawnInfo + p 2 flag +c net/minecraft/class_10493 net/minecraft/client/render/item/property/select/SelectProperties + f Lnet/minecraft/class_5699$class_10388; field_55421 ID_MAPPER + f Lcom/mojang/serialization/Codec; field_55420 CODEC + m ()V method_65683 bootstrap +c net/minecraft/class_10494 net/minecraft/client/render/item/property/select/SelectProperty + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_1309;ILnet/minecraft/class_811;)Ljava/lang/Object; method_65676 getValue + p 4 seed + p 5 displayContext + p 2 world + p 3 user + p 1 stack + m ()Lnet/minecraft/class_10494$class_10495; method_65674 getType + m ()Lcom/mojang/serialization/Codec; method_67287 valueCodec +c net/minecraft/class_10494$class_10495 net/minecraft/client/render/item/property/select/SelectProperty$Type + f Lcom/mojang/serialization/MapCodec; comp_3417 switchCodec + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/MapCodec; method_66868 createCaseListCodec + p 0 conditionCodec + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66869 method_66869 + p 2 instance + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_10494$class_10495; method_65686 create + p 1 valueCodec + p 0 propertyCodec + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_66870 validateCases + p 0 cases + m ()Lcom/mojang/serialization/MapCodec; comp_3417 switchCodec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 switchCodec +c net/minecraft/class_10497 net/minecraft/unused/packageinfo/PackageInfo10497 +c net/minecraft/class_10498 net/minecraft/client/render/item/model/special/BannerModelRenderer + f Lnet/minecraft/class_823; field_55423 blockEntityRenderer + f Lnet/minecraft/class_1767; field_55424 baseColor + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_823;)V + p 1 baseColor + p 2 blockEntityRenderer + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_9307; method_65692 getData + m (Lnet/minecraft/class_9307;Lnet/minecraft/class_811;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;IIZI)V method_65693 render +c net/minecraft/class_10498$class_10499 net/minecraft/client/render/item/model/special/BannerModelRenderer$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55425 CODEC + f Lnet/minecraft/class_1767; comp_3418 baseColor + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65697 method_65697 + p 0 instance + m ()Lnet/minecraft/class_1767; comp_3418 baseColor + m (Lnet/minecraft/class_1767;)V + p 1 baseColor +c net/minecraft/class_2740 net/minecraft/network/packet/s2c/play/EntityAttachS2CPacket + f I field_12478 holdingEntityId + f I field_12479 attachedEntityId + f Lnet/minecraft/class_9139; field_47980 CODEC + m ()I method_11810 getHoldingEntityId + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1297;)V + p 1 attachedEntity + p 2 holdingEntity + m ()I method_11812 getAttachedEntityId + m (Lnet/minecraft/class_2602;)V method_11811 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_55927 write + p 1 buf +c net/minecraft/class_2741 net/minecraft/state/property/Properties + c Contains all block and fluid state properties that Minecraft uses. + f Lnet/minecraft/class_2746; field_41322 SLOT_5_OCCUPIED + c A property that specifies if a chiseled bookshelf has a book in slot 5. + f Lnet/minecraft/class_2746; field_43307 CRACKED + c A property that specifies if a decorated pot is cracked. + f Lnet/minecraft/class_2746; field_41318 SLOT_1_OCCUPIED + c A property that specifies if a chiseled bookshelf has a book in slot 1. + f Lnet/minecraft/class_2746; field_56672 MAP + c A property that specifies whether an item frame has a map in it.\n\n

Yes, despite item frames being entities, they use block states. Weird, right? + f Lnet/minecraft/class_2754; field_12481 HORIZONTAL_FACING + c A property that specifies the direction a block is facing.\n\n

This property only allows a block to face in one of the cardinal directions (north, south, east and west). + f Lnet/minecraft/class_2758; field_12543 PICKLES + c A property that specifies how many pickles are in a sea pickle. + f Lnet/minecraft/class_2754; field_12547 STRUCTURE_BLOCK_MODE + c A property that specifies the mode of a structure block. + f Lnet/minecraft/class_2758; field_12498 AGE_15 + c A property that specifies the age of a block on a scale of 0 to 15. + f Lnet/minecraft/class_2746; field_12486 CONDITIONAL + c A property that specifies if a command block is conditional. + f Lnet/minecraft/class_2754; field_12523 EAST_WIRE_CONNECTION + c A property that specifies how redstone wire attaches to the east. + f Lnet/minecraft/class_2746; field_12531 HAS_BOTTLE_2 + c A property that specifies if a brewing stand has a bottle in slot 2. + f I field_31393 CHARGES_MAX + f I field_31389 LEVEL_3_MAX + f Lnet/minecraft/class_2746; field_46822 CRAFTING + c A property that specifies if a crafter is crafting. + f Lnet/minecraft/class_2754; field_12507 RAIL_SHAPE + c A property that specifies the two directions a rail connects to. + f Lnet/minecraft/class_2746; field_12515 ENABLED + c A property that specifies whether a hopper is enabled. + f Lnet/minecraft/class_2746; field_12539 UNSTABLE + c A property that specifies if TNT is unstable.\n\n

In vanilla, if TNT is unstable, it will ignite when broken. + f Lnet/minecraft/class_2746; field_12527 WEST + c A property that specifies if this block is connected to another block from the west. + f Lnet/minecraft/class_2746; field_16561 HANGING + c A property that specifies if a lantern is hanging. + f Lnet/minecraft/class_2746; field_41319 SLOT_2_OCCUPIED + c A property that specifies if a chiseled bookshelf has a book in slot 2. + f Lnet/minecraft/class_2758; field_12490 LEVEL_1_8 + c A property that specifies the height of a fluid on a scale of 1 to 8. + f Lnet/minecraft/class_2754; field_12551 SOUTH_WIRE_CONNECTION + c A property that specifies how redstone wire attaches to the south. + f Lnet/minecraft/class_2754; field_28717 TILT + c A property that specifies how a big dripleaf is tilted down. + f Lnet/minecraft/class_2758; field_12532 ROTATION + c A property that specifies the rotation of a block on a 0 to 15 scale.\n\n

Each rotation is 22.5 degrees. + f Lnet/minecraft/class_2746; field_12544 HAS_RECORD + c A property that specifies if a jukebox has a record. + f I field_31392 CHARGES_MIN + f Lnet/minecraft/class_2758; field_12556 AGE_2 + c A property that specifies the age of a block on a scale of 0 to 2. + f Lnet/minecraft/class_2746; field_12487 EAST + c A property that specifies if this block is connected to another block from the east. + f I field_33723 LEVEL_15_MAX + f I field_31388 LEVEL_1_8_MIN + f Lnet/minecraft/class_2754; field_22177 WEST_WALL_SHAPE + c A property that specifies how a wall extends from the center post to the west. + f Lnet/minecraft/class_2746; field_12528 OCCUPIED + c A property that specifies if a bed is occupied. + f Lnet/minecraft/class_2746; field_16562 BOTTOM + c A property that specifies if a scaffolding block is bottom of a floating segment. + f Lnet/minecraft/class_2746; field_54794 TIP + c A property that specifies if a hanging moss block is the tip. + f Lnet/minecraft/class_2746; field_41320 SLOT_3_OCCUPIED + c A property that specifies if a chiseled bookshelf has a book in slot 3. + f I field_31391 DISTANCE_0_7_MAX + f Lnet/minecraft/class_2754; field_56023 TEST_BLOCK_MODE + c A property that specifies the mode of a test block. + f Lnet/minecraft/class_2746; field_12501 INVERTED + c A property that specifies if a daylight sensor's output is inverted. + f Lnet/minecraft/class_2746; field_12484 POWERED + c A property that specifies if a block is being powered to produce or emit redstone signal. + f Lnet/minecraft/class_2758; field_12541 DISTANCE_1_7 + c A property that specifies the overhang distance of a block on a scale of 1-7. + f Lnet/minecraft/class_2754; field_12545 HOPPER_FACING + c A property that specifies the direction a hopper's output faces.\n\n

This property does not allow the hopper's output to face upwards. + f Lnet/minecraft/class_2746; field_12553 DISARMED + c A property that specifies if a tripwire has been disarmed. + f Lnet/minecraft/class_2754; field_12533 DOUBLE_BLOCK_HALF + c A property that specifies whether a double height block is the upper or lower half. + f I field_37653 AGE_4_MAX + f I field_31399 AGE_7_MAX + f Lnet/minecraft/class_2758; field_12509 EGGS + c A property that specifies the amount of eggs in a turtle egg block. + f Lnet/minecraft/class_2758; field_20432 HONEY_LEVEL + c A property that specifies the honey level of a beehive. + f Lnet/minecraft/class_2754; field_28062 VERTICAL_DIRECTION + c A property that specifies the direction a pointed dripstone is facing.\n\n

This property allows a block to face either down or up. + f I field_31387 LEVEL_8_MIN + f Lnet/minecraft/class_2746; field_55088 NATURAL + c A property that specifies if a creaking heart is natural. + f Lnet/minecraft/class_2754; field_12529 HORIZONTAL_AXIS + c A property that specifies the axis a block is oriented to.\n\n

This property only allows a block to be oriented to the X and Z axes. + f Lnet/minecraft/class_2746; field_12537 OPEN + c A property that specifies if a block is open.\n\n

This property is normally used for doors, trapdoors and fence gates but is also used by barrels. + f Lnet/minecraft/class_2754; field_22176 SOUTH_WALL_SHAPE + c A property that specifies how a wall extends from the center post to the south. + f Lnet/minecraft/class_2758; field_12513 LEVEL_3 + c A property that specifies how many levels of water there are in a cauldron. + f Lnet/minecraft/class_2758; field_12549 STAGE + c A property that specifies a growth stage on a scale of 0 to 1. + f Lnet/minecraft/class_2746; field_41321 SLOT_4_OCCUPIED + c A property that specifies if a chiseled bookshelf has a book in slot 4. + f Lnet/minecraft/class_2746; field_17393 HAS_BOOK + c A property that specifies if a lectern has a book. + f Lnet/minecraft/class_2746; field_41317 SLOT_0_OCCUPIED + c A property that specifies if a chiseled bookshelf has a book in slot 0. + f Lnet/minecraft/class_2754; field_12492 PISTON_TYPE + c A property that specifies the type of a piston. + f Lnet/minecraft/class_2746; field_12554 HAS_BOTTLE_0 + c A property that specifies if a brewing stand has a bottle in slot 0. + f Lnet/minecraft/class_2746; field_12502 LOCKED + c A property that specifies if a repeater is locked. + f I field_31390 LEVEL_1_8_MAX + f Lnet/minecraft/class_2754; field_23333 ORIENTATION + c A property that specifies the orientation of a jigsaw or crafter. + f Lnet/minecraft/class_2758; field_12497 AGE_3 + c A property that specifies the age of a block on a scale of 0 to 3. + f Lnet/minecraft/class_2758; field_23187 CHARGES + c A property that specifies the amount of charges a respawn anchor has. + f Lnet/minecraft/class_2758; field_12530 HATCH + c A property that specifies how close an egg is hatching. + f Lnet/minecraft/class_2754; field_12534 COMPARATOR_MODE + c A property that specifies the mode a comparator is set to. + f Lnet/minecraft/class_2754; field_28120 SCULK_SENSOR_PHASE + c A property that specifies the current phase of a sculk sensor. + f I field_31398 AGE_5_MAX + f Lnet/minecraft/class_2754; field_28063 THICKNESS + c A property that specifies the thickness of a pointed dripstone. + f Lnet/minecraft/class_2758; field_59766 HYDRATION + c A property that specifies the hydration of a dried ghast. + f Lnet/minecraft/class_2754; field_12518 BLOCK_HALF + c A property that specifies if a block is the upper or lower half. + f Lnet/minecraft/class_2746; field_12526 DRAG + c A property that specifies if a bubble column should drag entities downwards. + f Lnet/minecraft/class_2754; field_12506 CHEST_TYPE + c A property that specifies what type of chest a block is. + f Lnet/minecraft/class_2746; field_12514 PERSISTENT + c A property that specifies if a block is persistent.\n\n

In vanilla, this is used to specify whether leaves should disappear when the logs are removed. + f Lnet/minecraft/class_2758; field_12538 LEVEL_15 + c A property that specifies the level of a light block or a fluid block on a scale of 0 to 15. + f Lnet/minecraft/class_2754; field_22175 NORTH_WALL_SHAPE + c A property that specifies how a wall extends from the center post to the north. + f Lnet/minecraft/class_2754; field_48915 VAULT_STATE + c A property that specifies the state of a vault. + f Lnet/minecraft/class_2754; field_12485 SLAB_TYPE + c A property that specifies the type of slab. + f Lnet/minecraft/class_2746; field_12493 ATTACHED + c A property that specifies if a tripwire is attached to a tripwire hook. + f Lnet/minecraft/class_2746; field_17394 SIGNAL_FIRE + c A property that specifies if a campfire's smoke should be taller.\n\n

This occurs when a hay bale is placed under the campfire. + f Lnet/minecraft/class_2754; field_17104 ATTACHMENT + c A property that specifies how a bell is attached to a block. + f Lnet/minecraft/class_2746; field_28716 BERRIES + c A property that specifies the amount of berries in a cave vines block. + f Lnet/minecraft/class_2754; field_12503 STAIR_SHAPE + c A property that specifies the shape of a stair block. + f Lnet/minecraft/class_2746; field_12535 SHORT + c A property that specifies if a piston head is shorter than normal. + f Lnet/minecraft/class_2758; field_12511 POWER + c A property that specifies the redstone power of a block. + f Lnet/minecraft/class_2754; field_61445 COPPER_GOLEM_POSE + c A property that specifies the pose of a copper golem statue block. + f Lnet/minecraft/class_2754; field_55830 CREAKING_HEART_STATE + c A property that specifies the state of a creaking heart. + f Lnet/minecraft/class_2758; field_12494 DELAY + c A property that specifies the delay a repeater will apply. + f Lnet/minecraft/class_2754; field_12555 BLOCK_FACE + c A property that specifies the block face a block is attached to. + f Lnet/minecraft/class_2746; field_12519 UP + c A property that specifies if this block is connected to another block from the top. + f Lnet/minecraft/class_2758; field_42836 DUSTED + c A property that specifies how much a brushable block is dusted on a scale of 0 to 3. + f I field_31397 AGE_3_MAX + f Lnet/minecraft/class_2754; field_22174 EAST_WALL_SHAPE + c A property that specifies how a wall extends from the center post to the east. + f I field_31402 DISTANCE_1_7_MAX + f Lnet/minecraft/class_2758; field_37654 AGE_4 + c A property that specifies the age of a block on a scale of 0 to 4. + f Lnet/minecraft/class_2758; field_12482 AGE_5 + c A property that specifies the age of a block on a scale of 0 to 5. + f Lnet/minecraft/class_2746; field_12500 HAS_BOTTLE_1 + c A property that specifies if a brewing stand has a bottle in slot 1. + f Lnet/minecraft/class_2754; field_12516 BAMBOO_LEAVES + c A property that specifies the size of bamboo leaves. + f Lnet/minecraft/class_2754; field_12504 WEST_WIRE_CONNECTION + c A property that specifies how redstone wire attaches to the west. + f Lnet/minecraft/class_2746; field_12512 SNOWY + c A property that specifies if a block is covered in snow. + f Lnet/minecraft/class_2746; field_12540 SOUTH + c A property that specifies if this block is connected to another block from the south. + f I field_31396 AGE_2_MAX + f Lnet/minecraft/class_2754; field_12520 DOOR_HINGE + c A property that specifies whether a door's hinge is to the right or left. + f Lnet/minecraft/class_2754; field_12499 INSTRUMENT + c A property that specifies what instrument a note block will play. + f Lnet/minecraft/class_2746; field_12552 EXTENDED + c A property that specifies if a piston is extended. + f Lnet/minecraft/class_2746; field_12508 WATERLOGGED + c A property that specifies if a block is waterlogged. + f Lnet/minecraft/class_2746; field_38423 CAN_SUMMON + c A property that specifies if a sculk shrieker can summon a warden. + f Lnet/minecraft/class_2758; field_42835 FLOWER_AMOUNT + c A property that specifies the amount of flowers in a flowerbed block. + f Lnet/minecraft/class_2758; field_12536 LAYERS + c A property that specifies how many layers of snow are in a snow block. + f Lnet/minecraft/class_2746; field_12548 LIT + c A property that specifies if a block is lit. + f Lnet/minecraft/class_2758; field_12524 NOTE + c A property that specifies the pitch of a note block. + f I field_31401 AGE_25_MAX + f Lnet/minecraft/class_2758; field_27220 CANDLES + c A property that specifies the amount of candles in a candle block. + f Lnet/minecraft/class_2754; field_12483 BED_PART + c A property that specifies what part of a bed a block is. + f Lnet/minecraft/class_2746; field_12491 IN_WALL + c A property that specifies if a fence gate is attached to a wall.\n\n

This lowers the fence gate by 3 pixels to attach more cleanly to a wall. + f Lnet/minecraft/class_2754; field_12495 NORTH_WIRE_CONNECTION + c A property that specifies how redstone wire attaches to the north. + f Lnet/minecraft/class_2758; field_12521 AGE_1 + c A property that specifies the age of a block on a scale of 0 to 1. + f Lnet/minecraft/class_2754; field_12525 FACING + c A property that specifies the direction a block is facing. + f Lnet/minecraft/class_2758; field_17586 LEVEL_8 + c A property that specifies the level of a composter. + f Lnet/minecraft/class_2746; field_12488 EYE + c A property that specifies if an end portal frame contains an eye of ender. + f I field_31395 AGE_1_MAX + f Lnet/minecraft/class_2754; field_47408 TRIAL_SPAWNER_STATE + c A property that specifies the state of a trial spawner. + f Lnet/minecraft/class_2758; field_16503 DISTANCE_0_7 + c A property that specifies the overhang distance of a scaffolding. + f I field_31400 AGE_15_MAX + f Lnet/minecraft/class_2758; field_12517 AGE_25 + c A property that specifies the age of a block on a scale of 0 to 25. + f Lnet/minecraft/class_2758; field_12505 BITES + c A property that specifies the bites taken out of a cake. + f Lnet/minecraft/class_2746; field_50193 OMINOUS + c A property that specifies whether a trial spawner or vault is ominous. + f Lnet/minecraft/class_2746; field_37652 SHRIEKING + c A property that specifies if a sculk shrieker is shrieking. + f Lnet/minecraft/class_2758; field_55829 SEGMENT_AMOUNT + c A property that specifies the amount of segments in a segmented block. + f Lnet/minecraft/class_2754; field_12496 AXIS + c A property that specifies the axis a block is oriented to. + f Lnet/minecraft/class_2746; field_12480 FALLING + c A property that specifies if a fluid is falling. + f Lnet/minecraft/class_2758; field_12510 MOISTURE + c A property that specifies the moisture of farmland. + f Lnet/minecraft/class_2746; field_12522 TRIGGERED + c A property that specifies if a dispenser is activated. + f Lnet/minecraft/class_2746; field_12546 DOWN + c A property that specifies if this block is connected to another block from the below. + f Lnet/minecraft/class_2746; field_12489 NORTH + c A property that specifies if this block is connected to another block from the north. + f Lnet/minecraft/class_2758; field_12550 AGE_7 + c A property that specifies the age of a block on a scale of 0 to 7. + f Lnet/minecraft/class_2754; field_12542 STRAIGHT_RAIL_SHAPE + c A property that specifies the two directions a rail connects to.\n\n

This property does not allow for a rail to turn. + f Lnet/minecraft/class_2746; field_37651 BLOOM + c A property that specifies if a sculk catalyst is blooming. + f Lnet/minecraft/class_2754; field_61444 SIDE_CHAIN + m (Lnet/minecraft/class_2350;)Z method_11814 method_11814 + p 0 facing + m (Lnet/minecraft/class_2768;)Z method_11813 method_11813 + p 0 shape +c net/minecraft/class_2742 net/minecraft/block/enums/BedPart + f Ljava/lang/String; field_12559 name + f Lnet/minecraft/class_2742; field_12560 HEAD + f Lnet/minecraft/class_2742; field_12557 FOOT + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_2743 net/minecraft/network/packet/s2c/play/EntityVelocityUpdateS2CPacket + c Sent when a server modifies an entity's velocity.\n\n

If the entity is a player, {@link\nnet.minecraft.network.packet.s2c.play.ExplosionS2CPacket} can be used as\na replacement. + f Lnet/minecraft/class_243; field_61887 velocity + f Lnet/minecraft/class_9139; field_47981 CODEC + f I field_12564 entityId + m (Lnet/minecraft/class_2540;)V method_55928 write + p 1 buf + m (Lnet/minecraft/class_1297;)V + p 1 entity + m ()Lnet/minecraft/class_243; method_73085 getVelocity + m (ILnet/minecraft/class_243;)V + p 2 velocity + p 1 entityId + m (Lnet/minecraft/class_2602;)V method_11817 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()I method_11818 getEntityId +c net/minecraft/class_1412 net/minecraft/entity/ai/pathing/SwimNavigation + f Z field_6689 canJumpOutOfWater +c net/minecraft/class_1410 net/minecraft/entity/ai/pathing/SpiderNavigation + f Lnet/minecraft/class_2338; field_6687 targetPos +c net/minecraft/class_1405 net/minecraft/entity/ai/goal/TrackTargetGoal + c A goal that maintains the target of a mob entity. If the goal stops,\nsuch as because the target is not valid, the target is removed from\nthe owner mob.\n\n

Compared to other goals, this goal and its subclasses are added\nto the {@linkplain MobEntity#targetSelector target} than the regular\ngoal selector, and should use the {@link Goal.Control#TARGET}\ncontrol if it sets the owner's target. + f Lnet/minecraft/class_1309; field_6664 target + f I field_6659 timeWithoutVisibility + f I field_6657 maxTimeWithoutVisibility + f I field_30235 CANNOT_TRACK + f I field_30234 CAN_TRACK + f Lnet/minecraft/class_1308; field_6660 mob + f I field_30233 UNSET + f I field_6661 checkCanNavigateCooldown + f I field_6662 canNavigateFlag + f Z field_6658 checkVisibility + f Z field_6663 checkCanNavigate + m (Lnet/minecraft/class_1308;ZZ)V + p 2 checkVisibility + p 1 mob + p 3 checkNavigable + m (I)Lnet/minecraft/class_1405; method_6330 setMaxTimeWithoutVisibility + p 1 time + m ()D method_6326 getFollowRange + m (Lnet/minecraft/class_1309;)Z method_6329 canNavigateToEntity + p 1 entity + m (Lnet/minecraft/class_1308;Z)V + p 1 mob + p 2 checkVisibility + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_4051;)Z method_6328 canTrack + p 1 target + p 2 targetPredicate +c net/minecraft/class_10480 net/minecraft/client/render/item/property/numeric/NeedleAngleState + f Z field_55401 wobble + m (Z)V + p 1 wobble + m (F)Lnet/minecraft/class_10480$class_10481; method_65662 createWobblyAngler + p 0 speedMultiplier + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;ILnet/minecraft/class_11566;)F method_65654 getAngle + p 3 seed + p 4 context + p 1 stack + p 2 world + m (F)Lnet/minecraft/class_10480$class_10481; method_65660 createAngler + p 1 speedMultiplier + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_11566;I)F method_65644 getValue + p 1 stack + p 3 pos + p 2 world + p 4 seed + m ()Lnet/minecraft/class_10480$class_10481; method_65663 createInstantAngler + m ()Z method_65661 hasWobble +c net/minecraft/class_10480$2 net/minecraft/client/render/item/property/numeric/NeedleAngleState$2 + f F field_55406 angle +c net/minecraft/class_10480$1 net/minecraft/client/render/item/property/numeric/NeedleAngleState$1 + f F field_55403 angle + f F field_55404 speed + f J field_55405 lastUpdateTime +c net/minecraft/class_10480$class_10481 net/minecraft/client/render/item/property/numeric/NeedleAngleState$Angler + m ()F method_65664 getAngle + m (JF)V method_65666 update + p 1 time + p 3 target + m (J)Z method_65665 shouldUpdate + p 1 time +c net/minecraft/class_2737 net/minecraft/block/enums/BambooLeaves + f Ljava/lang/String; field_12467 name + f Lnet/minecraft/class_2737; field_12469 NONE + f Lnet/minecraft/class_2737; field_12466 SMALL + f Lnet/minecraft/class_2737; field_12468 LARGE + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_1404 net/minecraft/entity/ai/goal/UntamedActiveTargetGoal + c An active target goal that only starts for untamed tameable animals.\nIn addition, the continue condition for maintaining the target uses the\ntarget predicate than that of the standard track target goal. + f Lnet/minecraft/class_1321; field_6656 tameable + m (Lnet/minecraft/class_1321;Ljava/lang/Class;ZLnet/minecraft/class_4051$class_10254;)V + p 1 tameable + p 2 targetClass + p 3 checkVisibility + p 4 targetPredicate +c net/minecraft/class_2738 net/minecraft/block/enums/BlockFace + f Ljava/lang/String; field_12472 name + f Lnet/minecraft/class_2738; field_12473 CEILING + f Lnet/minecraft/class_2738; field_12471 WALL + f Lnet/minecraft/class_2738; field_12475 FLOOR + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_2739 net/minecraft/network/packet/s2c/play/EntityTrackerUpdateS2CPacket + f I comp_1127 id + f Ljava/util/List; comp_1128 trackedValues + f I field_40850 MARKER_ID + f Lnet/minecraft/class_9139; field_47979 CODEC + m ()I comp_1127 id + m ()Ljava/util/List; comp_1128 trackedValues + m (Lnet/minecraft/class_9129;)Ljava/util/List; method_46616 read + p 0 buf + m (ILjava/util/List;)V + p 1 id + p 2 trackedValues + m (Ljava/util/List;Lnet/minecraft/class_9129;)V method_46615 write + p 1 buf + p 0 trackedValues + m (Lnet/minecraft/class_9129;)V method_55926 write + p 1 buf + m (Lnet/minecraft/class_9129;)V + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11808 apply +c net/minecraft/class_1403 net/minecraft/entity/ai/goal/TrackOwnerAttackerGoal + f Lnet/minecraft/class_1321; field_6654 tameable + f I field_6653 lastAttackedTime + f Lnet/minecraft/class_1309; field_6655 attacker + m (Lnet/minecraft/class_1321;)V + p 1 tameable +c net/minecraft/class_1409 net/minecraft/entity/ai/pathing/MobNavigation + f Z field_63015 skipRetarget + f Z field_6686 avoidSunlight + m (Z)V method_46645 setCanWalkOverFences + p 1 canWalkOverFences + m (Lnet/minecraft/class_2818;Lnet/minecraft/class_2338;I)Lnet/minecraft/class_2338; method_74873 retargetToSolidBlock + p 2 pos + p 3 distance + p 1 chunk + m (Lnet/minecraft/class_7;)Z method_26338 canWalkOnPath + p 1 pathType + m (Z)V method_6361 setAvoidSunlight + p 1 avoidSunlight + m (Z)V method_74874 setSkipRetarget + p 1 skipRetarget + m ()I method_6362 getPathfindingY + c The y-position to act as if the entity is at for pathfinding purposes +c net/minecraft/class_10484 net/minecraft/client/render/item/property/numeric/UseCycleProperty + f Lcom/mojang/serialization/MapCodec; field_55413 CODEC + f F comp_3413 period + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65671 method_65671 + p 0 instance + m ()F comp_3413 period + m (F)V + p 1 period +c net/minecraft/class_2734 net/minecraft/network/packet/s2c/play/SetCameraEntityS2CPacket + f Lnet/minecraft/class_9139; field_47973 CODEC + f I field_12462 entityId + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_1297; method_11800 getEntity + p 1 world + m (Lnet/minecraft/class_1297;)V + p 1 entity + m (Lnet/minecraft/class_2540;)V method_55920 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11801 apply +c net/minecraft/class_1408 net/minecraft/entity/ai/pathing/EntityNavigation + f Lnet/minecraft/class_1308; field_6684 entity + f Lnet/minecraft/class_13; field_6673 pathNodeNavigator + f Lnet/minecraft/class_1937; field_6677 world + f I field_30247 RECALCULATE_COOLDOWN + f D field_6682 currentNodeTimeout + f I field_20294 currentDistance + f I field_6674 pathStartTime + f J field_6670 currentNodeMs + f Lnet/minecraft/class_243; field_6672 pathStartPos + f I field_6675 tickCount + f F field_6683 nodeReachProximity + c If the Chebyshev distance from the entity to the next node is less than\nor equal to this value, the entity is considered "reached" the node. + f Lnet/minecraft/class_2338; field_20293 currentTarget + f Z field_6679 inRecalculationCooldown + f Lnet/minecraft/class_2382; field_6680 lastNodePosition + f D field_6668 speed + f Lnet/minecraft/class_11; field_6681 currentPath + f Z field_26820 nearPathStartPos + f Lnet/minecraft/class_8; field_6678 nodeMaker + f J field_6669 lastActiveTickMs + f J field_6685 lastRecalculateTime + f F field_21642 rangeMultiplier + f F field_52451 maxFollowRange + m (Lnet/minecraft/class_243;)V method_6346 checkTimeouts + p 1 currentPos + m (Lnet/minecraft/class_2338;II)Lnet/minecraft/class_11; method_35141 findPathTo + p 3 maxDistance + p 2 minDistance + p 1 target + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Z)Z method_43394 doesNotCollide + p 0 entity + p 2 entityPos + p 1 startPos + p 3 includeFluids + m (Lnet/minecraft/class_243;)Z method_27799 shouldJumpToNextNode + p 1 currentPos + m (Lnet/minecraft/class_1297;D)Z method_6335 startMovingTo + p 1 entity + p 2 speed + m ()Z method_31267 isNearPathStartPos + m (DDDD)Z method_6337 startMovingTo + p 1 x + p 3 y + p 5 z + p 7 speed + m ()Z method_23966 isFollowingPath + m ()V method_6360 tick + m ()V method_6340 stop + m (Lnet/minecraft/class_243;)D method_38065 adjustTargetY + p 1 pos + m ()V method_26085 resetNode + m ()V method_31266 resetNodeAndStop + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_1937;)V + p 1 entity + p 2 world + m (Lnet/minecraft/class_2338;I)Lnet/minecraft/class_11; method_6348 findPathTo + p 1 target + p 2 distance + m (Lnet/minecraft/class_2338;)Z method_6333 isValidPosition + p 1 pos + m (Lnet/minecraft/class_11;D)Z method_6334 startMovingAlong + p 2 speed + p 1 path + m ()Z method_6357 isIdle + m ()Lnet/minecraft/class_2338; method_6355 getTargetPos + m (I)Lnet/minecraft/class_13; method_6336 createPathNodeNavigator + p 1 range + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;)Z method_6341 canPathDirectlyThrough + p 2 target + p 1 origin + m ()V method_61441 updateRange + m (DDDI)Lnet/minecraft/class_11; method_6352 findPathTo + p 7 distance + p 3 y + p 5 z + p 1 x + m (Z)V method_70687 setCanOpenDoors + p 1 canOpenDoors + m (Ljava/util/Set;IZIF)Lnet/minecraft/class_11; method_18416 findPathToAny + p 1 positions + p 2 range + p 5 followRange + p 3 useHeadPos + p 4 distance + m (D)V method_6344 setSpeed + p 1 speed + m ()V method_6359 adjustPath + c Adjusts the current path according to various special obstacles that may be in the way, for example sunlight + m ()V method_6339 continueFollowingPath + m ()Lnet/minecraft/class_11; method_6345 getCurrentPath + m (F)V method_23964 setRangeMultiplier + p 1 rangeMultiplier + m ()Z method_6358 isAtValidPosition + m ()Lnet/minecraft/class_8; method_6342 getNodeMaker + m (Lnet/minecraft/class_2338;)Z method_18053 shouldRecalculatePath + p 1 pos + m ()Z method_6350 canSwim + m (Z)V method_6354 setCanSwim + p 1 canSwim + m (Ljava/util/Set;IZI)Lnet/minecraft/class_11; method_35142 findPathTo + p 1 positions + p 4 distance + p 2 range + p 3 useHeadPos + m (DDDID)Z method_58160 startMovingTo + p 8 speed + p 7 distance + p 1 x + p 3 y + p 5 z + m ()F method_35143 getNodeReachProximity + m ()Z method_70686 canControlOpeningDoors + m (Lnet/minecraft/class_1297;I)Lnet/minecraft/class_11; method_6349 findPathTo + p 1 entity + p 2 distance + m ()V method_6356 recalculatePath + m ()V method_23965 resetRangeMultiplier + m (F)V method_61439 setMaxFollowRange + p 1 maxFollowRange + m (Ljava/util/stream/Stream;I)Lnet/minecraft/class_11; method_21643 findPathToAny + p 1 positions + p 2 distance + m ()F method_61440 getMaxFollowRange + m (Lnet/minecraft/class_7;)Z method_48158 canJumpToNext + p 1 nodeType + m (Ljava/util/Set;I)Lnet/minecraft/class_11; method_29934 findPathTo + p 2 distance + p 1 positions + m ()Lnet/minecraft/class_243; method_6347 getPos + c The position to act as if the entity is at for pathfinding purposes +c net/minecraft/class_10485 net/minecraft/client/render/item/property/numeric/UseDurationProperty + f Lcom/mojang/serialization/MapCodec; field_55414 CODEC + f Z comp_3414 remaining + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;)I method_65673 getTicksUsedSoFar + p 1 user + p 0 stack + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65672 method_65672 + p 0 instance + m ()Z comp_3414 remaining + m (Z)V + p 1 remaining +c net/minecraft/class_2735 net/minecraft/network/packet/s2c/play/UpdateSelectedSlotS2CPacket + f Lnet/minecraft/class_9139; field_47974 CODEC + f I comp_3325 slot + m (Lnet/minecraft/class_2602;)V method_11802 apply + m ()I comp_3325 slot + m (I)V + p 1 slot +c net/minecraft/class_1407 net/minecraft/entity/ai/pathing/BirdNavigation +c net/minecraft/class_10482 net/minecraft/client/render/item/property/numeric/NumericProperties + f Lnet/minecraft/class_5699$class_10388; field_55408 ID_MAPPER + f Lcom/mojang/serialization/MapCodec; field_55407 CODEC + m ()V method_65667 bootstrap + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_65668 method_65668 + p 0 codec +c net/minecraft/class_2736 net/minecraft/network/packet/s2c/play/ScoreboardDisplayS2CPacket + f Ljava/lang/String; field_12465 name + f Lnet/minecraft/class_9139; field_47978 CODEC + f Lnet/minecraft/class_8646; field_12464 slot + m ()Lnet/minecraft/class_8646; method_11806 getSlot + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_55925 write + p 1 buf + m (Lnet/minecraft/class_8646;Lnet/minecraft/class_266;)V + p 1 slot + p 2 objective + m ()Ljava/lang/String; method_11804 getName + m (Lnet/minecraft/class_2602;)V method_11805 apply +c net/minecraft/class_1406 net/minecraft/entity/ai/goal/AttackWithOwnerGoal + f I field_6665 lastAttackTime + f Lnet/minecraft/class_1321; field_6666 tameable + f Lnet/minecraft/class_1309; field_6667 attacking + m (Lnet/minecraft/class_1321;)V + p 1 tameable +c net/minecraft/class_10483 net/minecraft/client/render/item/property/numeric/TimeProperty + f Lnet/minecraft/class_10480$class_10481; field_55412 angler + f Lnet/minecraft/class_10483$class_10547; field_55556 source + f Lnet/minecraft/class_5819; field_55411 random + f Lcom/mojang/serialization/MapCodec; field_55409 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65669 method_65669 + p 0 instance + m (ZLnet/minecraft/class_10483$class_10547;)V + p 1 wobble + p 2 source + m (Lnet/minecraft/class_10483;)Lnet/minecraft/class_10483$class_10547; method_65670 method_65670 + p 0 property +c net/minecraft/class_10483$class_10547 net/minecraft/client/render/item/property/numeric/TimeProperty$Source + f Ljava/lang/String; field_55561 name + f Lcom/mojang/serialization/Codec; field_55560 CODEC + f Lnet/minecraft/class_10483$class_10547; field_55559 MOON_PHASE + f Lnet/minecraft/class_10483$class_10547; field_55558 DAYTIME + f Lnet/minecraft/class_10483$class_10547; field_55557 RANDOM + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m (Lnet/minecraft/class_638;Lnet/minecraft/class_1799;Lnet/minecraft/class_11566;Lnet/minecraft/class_5819;)F method_65914 getAngle + p 4 random + p 1 world + p 2 stack +c net/minecraft/class_10488 net/minecraft/client/render/item/property/select/ChargeTypeProperty + f Lnet/minecraft/class_10494$class_10495; field_55415 TYPE + f Lcom/mojang/serialization/Codec; field_56368 VALUE_CODEC + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_1309;ILnet/minecraft/class_811;)Lnet/minecraft/class_1764$class_10393; method_65675 getValue +c net/minecraft/class_10489 net/minecraft/client/render/item/property/select/CustomModelDataStringProperty + f Lcom/mojang/serialization/codecs/PrimitiveCodec; field_56371 VALUE_CODEC + f Lnet/minecraft/class_10494$class_10495; field_55416 TYPE + f I comp_3415 index + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_1309;ILnet/minecraft/class_811;)Ljava/lang/String; method_65678 getValue + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65677 method_65677 + p 0 instance + m ()I comp_3415 index + m (I)V + p 1 index +c net/minecraft/class_10486 net/minecraft/unused/packageinfo/PackageInfo10486 +c net/minecraft/class_10487 net/minecraft/unused/packageinfo/PackageInfo10487 +c net/minecraft/class_10428 net/minecraft/client/render/entity/state/ItemStackEntityRenderState + f I field_55311 renderedAmount + f I field_55312 seed + f Lnet/minecraft/class_10444; field_55310 itemRenderState + m (Lnet/minecraft/class_1799;)I method_65582 getSeed + p 0 stack + m (I)I method_65580 getRenderedAmount + p 0 count + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1799;Lnet/minecraft/class_10442;)V method_65581 update + p 3 itemModelManager + p 2 stack + p 1 entity +c net/minecraft/class_10429 net/minecraft/client/render/entity/state/SnowGolemEntityRenderState + f Z field_55319 hasPumpkin +c net/minecraft/class_11759 net/minecraft/client/font/Glyph + m ()Lnet/minecraft/class_379; method_73331 getMetrics + m (Lnet/minecraft/class_11759$class_11760;)Lnet/minecraft/class_11768; method_73332 bake + p 1 baker +c net/minecraft/class_11759$class_11760 net/minecraft/client/font/Glyph$AbstractGlyphBaker + m (Lnet/minecraft/class_379;Lnet/minecraft/class_383;)Lnet/minecraft/class_11768; method_73334 bake + p 1 metrics + p 2 renderable + m ()Lnet/minecraft/class_11768; method_73333 getBlankGlyph +c net/minecraft/class_2707 net/minecraft/network/packet/s2c/play/LookAtS2CPacket + f Lnet/minecraft/class_9139; field_47956 CODEC + f Lnet/minecraft/class_2183$class_2184; field_12389 targetAnchor + f D field_12383 targetZ + f I field_12388 entityId + f D field_12384 targetY + f D field_12386 targetX + f Lnet/minecraft/class_2183$class_2184; field_12385 selfAnchor + f Z field_12387 lookAtEntity + m (Lnet/minecraft/class_2183$class_2184;Lnet/minecraft/class_1297;Lnet/minecraft/class_2183$class_2184;)V + p 3 targetAnchor + p 2 entity + p 1 selfAnchor + m (Lnet/minecraft/class_2540;)V method_55903 write + p 1 buf + m (Lnet/minecraft/class_2183$class_2184;DDD)V + p 1 selfAnchor + p 2 targetX + p 6 targetZ + p 4 targetY + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Lnet/minecraft/class_2183$class_2184; method_11730 getSelfAnchor + m (Lnet/minecraft/class_2602;)V method_11731 apply + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_243; method_11732 getTargetPosition + p 1 world +c net/minecraft/class_2700 net/minecraft/block/pattern/BlockPattern + f I field_12356 height + f I field_12355 width + f I field_12357 depth + f [[[Ljava/util/function/Predicate; field_12358 pattern + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;Lcom/google/common/cache/LoadingCache;)Lnet/minecraft/class_2700$class_2702; method_11711 testTransform + p 1 frontTopLeft + p 3 up + p 2 forwards + p 4 cache + m ()[[[Ljava/util/function/Predicate; method_35301 getPattern + m ()I method_11710 getWidth + m ([[[Ljava/util/function/Predicate;)V + p 1 pattern + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2700$class_2702; method_35300 testTransform + p 1 world + p 3 forwards + p 2 frontTopLeft + p 4 up + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2700$class_2702; method_11708 searchAround + p 2 pos + p 1 world + m (Lnet/minecraft/class_4538;Z)Lcom/google/common/cache/LoadingCache; method_11709 makeCache + p 1 forceLoad + p 0 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;III)Lnet/minecraft/class_2338; method_11707 translate + p 3 offsetLeft + p 4 offsetDown + p 1 forwards + p 2 up + p 5 offsetForwards + p 0 pos + m ()I method_11712 getDepth + m ()I method_11713 getHeight +c net/minecraft/class_2700$class_2702 net/minecraft/block/pattern/BlockPattern$Result + f Lnet/minecraft/class_2350; field_12364 up + f Lnet/minecraft/class_2350; field_12365 forwards + f Lnet/minecraft/class_2338; field_12367 frontTopLeft + f I field_12361 depth + f I field_12362 height + f I field_12363 width + f Lcom/google/common/cache/LoadingCache; field_12366 cache + m ()Lnet/minecraft/class_2338; method_11715 getFrontTopLeft + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;Lcom/google/common/cache/LoadingCache;III)V + p 7 depth + p 2 forwards + p 1 frontTopLeft + p 6 height + p 5 width + p 4 cache + p 3 up + m ()Lnet/minecraft/class_2350; method_11716 getUp + m ()I method_35302 getWidth + m ()I method_35303 getHeight + m ()Lnet/minecraft/class_2350; method_11719 getForwards + m ()I method_35304 getDepth + m (III)Lnet/minecraft/class_2694; method_11717 translate + p 2 offsetDown + p 1 offsetLeft + p 3 offsetForwards +c net/minecraft/class_2700$class_2701 net/minecraft/block/pattern/BlockPattern$BlockStateCacheLoader + f Z field_12360 forceLoad + f Lnet/minecraft/class_4538; field_12359 world + m (Lnet/minecraft/class_4538;Z)V + p 2 forceLoad + p 1 world + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2694; method_11714 load + m (Ljava/lang/Object;)Ljava/lang/Object; load load + p 1 pos +c net/minecraft/class_10430 net/minecraft/client/render/item/model/BasicItemModel + f Ljava/util/function/Supplier; field_56960 vector + f Ljava/util/function/Function; field_64459 ITEMS_ATLAS_RENDER_LAYER_GETTER + f Ljava/util/List; field_55323 tints + f Z field_59980 animated + f Ljava/util/List; field_56959 quads + f Lnet/minecraft/class_10809; field_56961 settings + f Ljava/util/function/Function; field_64461 renderLayerGetter + f Ljava/util/function/Function; field_64460 BLOCKS_ATLAS_RENDER_LAYER_GETTER + m (Ljava/util/List;)[Lorg/joml/Vector3fc; method_67990 bakeQuads + p 0 quads + m (Lnet/minecraft/class_1799;)Z method_65583 shouldUseSpecialGlint + p 0 stack + m (Ljava/util/List;)Ljava/util/function/Function; method_76558 findRenderLayerGetter + p 0 quads + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1921; method_76559 method_76559 + p 0 stack + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1921; method_76557 method_76557 + p 0 stack + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_10809;Ljava/util/function/Function;)V + p 2 quads + p 1 tints + p 4 renderLayerGetter + p 3 settings +c net/minecraft/class_10430$class_10431 net/minecraft/client/render/item/model/BasicItemModel$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55324 CODEC + f Ljava/util/List; comp_3384 tints + f Lnet/minecraft/class_2960; comp_3383 model + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65586 method_65586 + p 0 instance + m ()Lnet/minecraft/class_2960; comp_3383 model + m ()Ljava/util/List; comp_3384 tints + m (Lnet/minecraft/class_2960;Ljava/util/List;)V + p 1 model + p 2 tints +c net/minecraft/class_2703 net/minecraft/network/packet/s2c/play/PlayerListS2CPacket + f Lnet/minecraft/class_9139; field_47955 CODEC + f Ljava/util/List; field_12369 entries + f Ljava/util/EnumSet; field_40698 actions + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_2703$class_2705; method_46328 method_46328 + p 1 buf2 + m ()Ljava/util/List; method_46330 getPlayerAdditionEntries + m ()Ljava/util/EnumSet; method_46327 getActions + m (Lnet/minecraft/class_2703$class_5893;Lnet/minecraft/class_3222;)V + p 2 player + p 1 action + m (Lnet/minecraft/class_9129;)V + p 1 buf + m (Ljava/util/EnumSet;Ljava/util/Collection;)V + p 2 players + p 1 actions + m (Lnet/minecraft/class_9129;)V method_55902 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11721 apply + m (Ljava/util/Collection;)Lnet/minecraft/class_2703; method_43886 entryFromPlayer + p 0 players + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_2703$class_2705;)V method_46326 method_46326 + p 1 buf2 + p 2 entry + m ()Ljava/util/List; method_46329 getEntries +c net/minecraft/class_2703$class_5893 net/minecraft/network/packet/s2c/play/PlayerListS2CPacket$Action + f Lnet/minecraft/class_2703$class_5893$class_7829; field_40701 reader + f Lnet/minecraft/class_2703$class_5893$class_7830; field_40702 writer + f Lnet/minecraft/class_2703$class_5893; field_54981 UPDATE_HAT + f Lnet/minecraft/class_2703$class_5893; field_52324 UPDATE_LIST_ORDER + f Lnet/minecraft/class_2703$class_5893; field_40699 INITIALIZE_CHAT + f Lnet/minecraft/class_2703$class_5893; field_40700 UPDATE_LISTED + f Lnet/minecraft/class_2703$class_5893; field_29139 UPDATE_DISPLAY_NAME + f Lnet/minecraft/class_2703$class_5893; field_29136 ADD_PLAYER + f Lnet/minecraft/class_2703$class_5893; field_29137 UPDATE_GAME_MODE + f Lnet/minecraft/class_2703$class_5893; field_29138 UPDATE_LATENCY + m (Lnet/minecraft/class_2703$class_7831;Lnet/minecraft/class_9129;)V method_46340 method_46340 + p 0 serialized + p 1 buf + m (Lnet/minecraft/class_2703$class_7831;Lnet/minecraft/class_9129;)V method_46342 method_46342 + p 0 serialized + p 1 buf + m (Ljava/lang/String;ILnet/minecraft/class_2703$class_5893$class_7829;Lnet/minecraft/class_2703$class_5893$class_7830;)V + p 3 reader + p 4 writer + m (Lnet/minecraft/class_2703$class_7831;Lnet/minecraft/class_9129;)V method_46332 method_46332 + p 0 serialized + p 1 buf + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_2703$class_2705;)V method_65084 method_65084 + p 0 buf + p 1 entry + m (Lnet/minecraft/class_2703$class_7831;Lnet/minecraft/class_9129;)V method_46334 method_46334 + p 0 serialized + p 1 buf + m (Lnet/minecraft/class_2703$class_7831;Lnet/minecraft/class_9129;)V method_65083 method_65083 + p 0 serialized + p 1 buf + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_2703$class_2705;)V method_61215 method_61215 + p 1 entry + p 0 buf + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_2703$class_2705;)V method_46337 method_46337 + p 0 buf + p 1 entry + m (Lnet/minecraft/class_2703$class_7831;Lnet/minecraft/class_9129;)V method_61214 method_61214 + p 1 buf + p 0 serialized + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_2703$class_2705;)V method_46339 method_46339 + p 0 buf + p 1 entry + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_2703$class_2705;)V method_46333 method_46333 + p 0 buf + p 1 entry + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_2703$class_2705;)V method_46335 method_46335 + p 0 buf + p 1 entry + m (Lnet/minecraft/class_2703$class_7831;Lnet/minecraft/class_9129;)V method_46336 method_46336 + p 0 serialized + p 1 buf + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_2703$class_2705;)V method_46341 method_46341 + p 0 buf + p 1 entry + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_2703$class_2705;)V method_46331 method_46331 + p 0 buf + p 1 entry + m (Lnet/minecraft/class_2703$class_7831;Lnet/minecraft/class_9129;)V method_46338 method_46338 + p 0 serialized + p 1 buf +c net/minecraft/class_2703$class_5893$class_7830 net/minecraft/network/packet/s2c/play/PlayerListS2CPacket$Action$Writer + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_2703$class_2705;)V write write + p 2 entry + p 1 buf +c net/minecraft/class_2703$class_5893$class_7829 net/minecraft/network/packet/s2c/play/PlayerListS2CPacket$Action$Reader + m (Lnet/minecraft/class_2703$class_7831;Lnet/minecraft/class_9129;)V read read + p 1 serialized + p 2 buf +c net/minecraft/class_2703$class_7831 net/minecraft/network/packet/s2c/play/PlayerListS2CPacket$Serialized + f Lnet/minecraft/class_1934; field_40707 gameMode + f Lcom/mojang/authlib/GameProfile; field_40704 gameProfile + f Lnet/minecraft/class_7822$class_7823; field_40709 session + f I field_52325 listOrder + f Ljava/util/UUID; field_40703 profileId + f Z field_54982 showHat + f I field_40706 latency + f Z field_40705 listed + f Lnet/minecraft/class_2561; field_40708 displayName + m (Ljava/util/UUID;)V + p 1 profileId + m ()Lnet/minecraft/class_2703$class_2705; method_46343 toEntry +c net/minecraft/class_2703$class_2705 net/minecraft/network/packet/s2c/play/PlayerListS2CPacket$Entry + f Lcom/mojang/authlib/GameProfile; comp_1107 profile + f I comp_1109 latency + f Lnet/minecraft/class_2561; comp_1111 displayName + f Lnet/minecraft/class_1934; comp_1110 gameMode + f Ljava/util/UUID; comp_1106 profileId + f Z comp_3324 showHat + f Z comp_1108 listed + f I comp_2889 listOrder + f Lnet/minecraft/class_7822$class_7823; comp_1112 chatSession + m ()Lcom/mojang/authlib/GameProfile; comp_1107 profile + m ()I comp_1109 latency + m (Lnet/minecraft/class_3222;)V + p 1 player + m ()Lnet/minecraft/class_2561; comp_1111 displayName + m ()Lnet/minecraft/class_1934; comp_1110 gameMode + m ()Ljava/util/UUID; comp_1106 profileId + m ()Lnet/minecraft/class_7822$class_7823; comp_1112 chatSession + m ()I comp_2889 listOrder + m ()Z comp_3324 showHat + m ()Z comp_1108 listed + m (Ljava/util/UUID;Lcom/mojang/authlib/GameProfile;ZILnet/minecraft/class_1934;Lnet/minecraft/class_2561;ZILnet/minecraft/class_7822$class_7823;)V + p 1 profileId + p 2 profile + p 3 listed + p 4 latency + p 5 gameMode + p 6 displayName + p 7 showHat + p 8 listOrder + p 9 chatSession +c net/minecraft/class_10434 net/minecraft/client/item/ItemAsset + f Lcom/mojang/serialization/Codec; field_55327 CODEC + f Lnet/minecraft/class_10678; comp_3610 registrySwapper + f Lnet/minecraft/class_10434$class_10543; comp_3465 properties + f Lnet/minecraft/class_10439$class_10441; comp_3385 model + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65588 method_65588 + p 0 instance + m (Lnet/minecraft/class_10439$class_10441;Lnet/minecraft/class_10434$class_10543;)V + p 2 properties + p 1 model + m (Lnet/minecraft/class_10678;)Lnet/minecraft/class_10434; method_67275 withContextSwapper + p 1 contextSwapper + m ()Lnet/minecraft/class_10678; comp_3610 registrySwapper + m ()Lnet/minecraft/class_10434$class_10543; comp_3465 properties + m ()Lnet/minecraft/class_10439$class_10441; comp_3385 model + m (Lnet/minecraft/class_10439$class_10441;Lnet/minecraft/class_10434$class_10543;Lnet/minecraft/class_10678;)V + p 1 model + p 2 properties + p 3 registrySwapper +c net/minecraft/class_10434$class_10543 net/minecraft/client/item/ItemAsset$Properties + f Lcom/mojang/serialization/MapCodec; field_55550 CODEC + f Lnet/minecraft/class_10434$class_10543; field_55549 DEFAULT + f Z comp_3466 handAnimationOnSwap + f Z comp_4405 oversizedInGui + f F comp_5087 swapAnimationScale + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65911 method_65911 + p 0 instance + m ()Z comp_4405 oversizedInGui + m ()F comp_5087 swapAnimationScale + m ()Z comp_3466 handAnimationOnSwap + m (ZZF)V + p 1 handAnimationOnSwap + p 2 oversizedInGui + p 3 swapAnimationScale +c net/minecraft/class_10432 net/minecraft/client/render/item/model/BundleSelectedItemModel + f Lnet/minecraft/class_10439; field_55325 INSTANCE +c net/minecraft/class_10432$class_10433 net/minecraft/client/render/item/model/BundleSelectedItemModel$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55326 CODEC +c net/minecraft/class_2708 net/minecraft/network/packet/s2c/play/PlayerPositionLookS2CPacket + f Lnet/minecraft/class_9139; field_47957 CODEC + f I comp_3133 teleportId + f Lnet/minecraft/class_10182; comp_3228 change + f Ljava/util/Set; comp_3229 relatives + m ()I comp_3133 teleportId + m (Lnet/minecraft/class_2602;)V method_11740 apply + m (ILnet/minecraft/class_10182;Ljava/util/Set;)Lnet/minecraft/class_2708; method_63542 of + p 2 flags + p 1 pos + p 0 teleportId + m ()Ljava/util/Set; comp_3229 relatives + m ()Lnet/minecraft/class_10182; comp_3228 change + m (ILnet/minecraft/class_10182;Ljava/util/Set;)V + p 1 teleportId + p 2 change + p 3 relatives +c net/minecraft/class_10437 net/minecraft/client/render/item/model/ConditionItemModel + f Lnet/minecraft/class_10439; field_55331 onTrue + f Lnet/minecraft/class_10724; field_55330 property + f Lnet/minecraft/class_10439; field_55332 onFalse + m (Lnet/minecraft/class_10724;Lnet/minecraft/class_10439;Lnet/minecraft/class_10439;)V + p 2 onTrue + p 3 onFalse + p 1 property +c net/minecraft/class_10437$class_10438 net/minecraft/client/render/item/model/ConditionItemModel$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55333 CODEC + f Lnet/minecraft/class_10460; comp_3387 property + f Lnet/minecraft/class_10439$class_10441; comp_3388 onTrue + f Lnet/minecraft/class_10439$class_10441; comp_3389 onFalse + m (Lnet/minecraft/class_10460;Lnet/minecraft/class_10678;Lnet/minecraft/class_638;)Lnet/minecraft/class_10724; method_67279 method_67279 + p 2 world + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65591 method_65591 + p 0 instance + m (Lnet/minecraft/class_10460;Lnet/minecraft/class_10678;)Lnet/minecraft/class_10724; method_67276 makeWorldIndependentProperty + p 2 contextSwapper + p 1 property + m (Lnet/minecraft/class_10460;Lnet/minecraft/class_10678;Lnet/minecraft/class_638;)Lnet/minecraft/class_10460; method_67277 swapContext + p 1 contextSwapper + p 2 world + p 0 value + m (Lnet/minecraft/class_10460;Lnet/minecraft/class_10719;Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_1309;ILnet/minecraft/class_811;)Z method_67278 method_67278 + p 5 seed + p 6 transformationMode + p 2 stack + p 3 world + p 4 entity + m ()Lnet/minecraft/class_10439$class_10441; comp_3388 onTrue + m ()Lnet/minecraft/class_10439$class_10441; comp_3389 onFalse + m ()Lnet/minecraft/class_10460; comp_3387 property + m (Lnet/minecraft/class_10460;Lnet/minecraft/class_10439$class_10441;Lnet/minecraft/class_10439$class_10441;)V + p 1 property + p 2 onTrue + p 3 onFalse +c net/minecraft/class_11769 net/minecraft/client/font/EffectGlyph + m (FFFFFIIF)Lnet/minecraft/class_11767; method_73406 create + p 8 shadowOffset + p 7 shadowColor + p 2 minY + p 1 minX + p 4 maxY + p 3 maxX + p 6 color + p 5 depth +c net/minecraft/class_2709 net/minecraft/network/packet/s2c/play/PositionFlag + f Ljava/util/Set; field_54094 DELTA + f Lnet/minecraft/class_9139; field_54095 PACKET_CODEC + f Ljava/util/Set; field_40710 VALUES + f Ljava/util/Set; field_40711 ROT + f I field_12399 shift + f Lnet/minecraft/class_2709; field_54092 DELTA_Z + f Lnet/minecraft/class_2709; field_54091 DELTA_Y + f Lnet/minecraft/class_2709; field_54093 ROTATE_DELTA + f Lnet/minecraft/class_2709; field_54090 DELTA_X + f Lnet/minecraft/class_2709; field_12401 Y_ROT + f Lnet/minecraft/class_2709; field_12403 Z + f Lnet/minecraft/class_2709; field_12400 X + f Lnet/minecraft/class_2709; field_12397 X_ROT + f Lnet/minecraft/class_2709; field_12398 Y + m ()I method_11742 getMask + m ([Ljava/util/Set;)Ljava/util/Set; method_63641 combine + p 0 sets + m (ZZ)Ljava/util/Set; method_73097 ofRot + p 1 xRot + p 0 yRot + m (Ljava/util/Set;)I method_11741 getBitfield + p 0 flags + m (ZZZ)Ljava/util/Set; method_73099 ofDeltaPos + p 2 z + p 0 x + p 1 y + m (I)Ljava/util/Set; method_11744 getFlags + p 0 mask + m (Ljava/lang/String;II)V + p 3 shift + m (ZZZ)Ljava/util/Set; method_73098 ofPos + p 1 y + p 2 z + p 0 x + m (I)Z method_11743 isSet + p 1 mask +c net/minecraft/class_11768 net/minecraft/client/font/BakedGlyph + m (FFIILnet/minecraft/class_2583;FF)Lnet/minecraft/class_11767$class_12238; method_73399 create + p 2 y + p 3 color + p 4 shadowColor + p 5 style + p 1 x + p 6 boldOffset + p 7 shadowOffset + m ()Lnet/minecraft/class_379; method_73398 getMetrics +c net/minecraft/class_10435 net/minecraft/client/render/item/model/CompositeItemModel + f Ljava/util/List; field_55328 models + m (Ljava/util/List;)V + p 1 models +c net/minecraft/class_10435$class_10436 net/minecraft/client/render/item/model/CompositeItemModel$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55329 CODEC + f Ljava/util/List; comp_3386 models + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65589 method_65589 + p 0 instance + m (Lnet/minecraft/class_10439$class_10440;Lnet/minecraft/class_10439$class_10441;)Lnet/minecraft/class_10439; method_65590 method_65590 + p 1 model + m ()Ljava/util/List; comp_3386 models + m (Ljava/util/List;)V + p 1 models +c net/minecraft/class_11767 net/minecraft/client/font/TextDrawable + m ()F method_71831 getEffectiveMaxX + m ()F method_71830 getEffectiveMinY + m (Lorg/joml/Matrix4f;Lnet/minecraft/class_4588;IZ)V method_73403 render + p 4 noDepth + p 3 light + p 2 consumer + p 1 matrix4f + m ()Lcom/mojang/blaze3d/pipeline/RenderPipeline; method_73400 getPipeline + m ()F method_71832 getEffectiveMaxY + m (Lnet/minecraft/class_327$class_6415;)Lnet/minecraft/class_1921; method_73401 getRenderLayer + p 1 type + m ()F method_71829 getEffectiveMinX + m ()Lcom/mojang/blaze3d/textures/GpuTextureView; comp_4629 textureView +c net/minecraft/class_11767$class_12238 net/minecraft/client/font/TextDrawable$DrawnGlyphRect +c net/minecraft/class_10419 net/minecraft/client/render/model/ModelTextures + f Ljava/util/Map; field_55277 textures + f C field_55276 TEXTURE_REFERENCE_PREFIX + f Lnet/minecraft/class_10419; field_55275 EMPTY + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_10419$class_10420$class_10421;)V method_65543 add + p 2 builder + p 1 spriteId + p 0 textureId + m (Ljava/util/Map;)V + p 1 textures + m (Ljava/lang/String;)Z method_65546 isTextureReference + p 0 textureId + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_10419$class_10420; method_65544 fromJson + p 0 json + m (Ljava/lang/String;)Lnet/minecraft/class_4730; method_65545 get + p 1 textureId +c net/minecraft/class_10419$class_10424 net/minecraft/client/render/model/ModelTextures$Entry +c net/minecraft/class_10419$class_10425 net/minecraft/client/render/model/ModelTextures$SpriteEntry + f Lnet/minecraft/class_4730; comp_3378 material + m ()Lnet/minecraft/class_4730; comp_3378 material + m (Lnet/minecraft/class_4730;)V + p 1 material +c net/minecraft/class_10419$class_10422 net/minecraft/client/render/model/ModelTextures$TextureReferenceEntry + f Ljava/lang/String; comp_3377 target + m ()Ljava/lang/String; comp_3377 target + m (Ljava/lang/String;)V + p 1 target +c net/minecraft/class_10419$class_10423 net/minecraft/client/render/model/ModelTextures$Builder + f Lorg/slf4j/Logger; field_55280 LOGGER + f Ljava/util/List; field_55281 textures + m (Ljava/util/Map$Entry;)Ljava/lang/String; method_65553 method_65553 + p 0 entry + m (Lnet/minecraft/class_10419$class_10420;)Lnet/minecraft/class_10419$class_10423; method_65554 addFirst + p 1 textures + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectMap;Lit/unimi/dsi/fastutil/objects/Object2ObjectMap;Ljava/lang/String;Lnet/minecraft/class_10419$class_10424;)V method_65552 method_65552 + p 3 entry + p 2 textureId + m (Lnet/minecraft/class_10813;)Lnet/minecraft/class_10419; method_65551 build + p 1 modelNameSupplier + m (Lnet/minecraft/class_10419$class_10420;)Lnet/minecraft/class_10419$class_10423; method_65550 addLast + p 1 textures +c net/minecraft/class_10419$class_10420 net/minecraft/client/render/model/ModelTextures$Textures + f Lnet/minecraft/class_10419$class_10420; field_55278 EMPTY + f Ljava/util/Map; comp_3376 values + m ()Ljava/util/Map; comp_3376 values + m (Ljava/util/Map;)V + p 1 values +c net/minecraft/class_10419$class_10420$class_10421 net/minecraft/client/render/model/ModelTextures$Textures$Builder + f Ljava/util/Map; field_55279 entries + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_10419$class_10420$class_10421; method_65549 addTextureReference + p 1 textureId + p 2 target + m ()Lnet/minecraft/class_10419$class_10420; method_65547 build + m (Ljava/lang/String;Lnet/minecraft/class_4730;)Lnet/minecraft/class_10419$class_10420$class_10421; method_65548 addSprite + p 1 textureId + p 2 spriteId +c net/minecraft/class_11749 net/minecraft/particle/BlockParticleEffect + f Lcom/mojang/serialization/MapCodec; field_62054 CODEC + f Lnet/minecraft/class_9139; field_62055 PACKET_CODEC + f Lnet/minecraft/class_2394; comp_4620 particle + f F comp_4622 speed + f F comp_4621 scaling + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73256 method_73256 + p 0 instance + m ()F comp_4622 speed + m ()F comp_4621 scaling + m ()Lnet/minecraft/class_2394; comp_4620 particle + m (Lnet/minecraft/class_2394;FF)V + p 1 particle + p 2 scaling + p 3 speed +c net/minecraft/class_11748 net/minecraft/unused/packageinfo/PackageInfo11748 +c net/minecraft/class_10418 net/minecraft/client/render/block/entity/LoadedBlockEntityModels + f Ljava/util/Map; field_55270 renderers + f Lnet/minecraft/class_10418; field_55269 EMPTY + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_811;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;III)V method_65535 render + p 3 matrices + p 2 displayContext + p 5 light + p 4 queue + p 7 outlineColor + p 6 overlay + p 1 block + m (Lnet/minecraft/class_10515$class_11695;)Lnet/minecraft/class_10418; method_65536 fromModels + p 0 context + m (Ljava/util/Map;)V + p 1 renderers +c net/minecraft/class_2720 net/minecraft/network/packet/s2c/common/ResourcePackSendS2CPacket + f I field_33340 MAX_HASH_LENGTH + f Lnet/minecraft/class_9139; field_48626 CODEC + f Z comp_2161 required + f Ljava/util/Optional; comp_2162 prompt + f Ljava/lang/String; comp_2159 url + f Ljava/lang/String; comp_2160 hash + f Ljava/util/UUID; comp_2158 id + m (Lnet/minecraft/class_8705;)V method_11774 apply + m ()Ljava/util/UUID; comp_2158 id + m ()Ljava/util/Optional; comp_2162 prompt + m ()Ljava/lang/String; comp_2160 hash + m ()Ljava/lang/String; comp_2159 url + m ()Z comp_2161 required + m (Ljava/util/UUID;Ljava/lang/String;Ljava/lang/String;ZLjava/util/Optional;)V + p 1 id + p 2 url + p 3 hash + p 4 required + p 5 prompt +c net/minecraft/class_2715 net/minecraft/predicate/block/BlockStatePredicate + f Lnet/minecraft/class_2689; field_12420 manager + f Ljava/util/Map; field_12421 propertyTests + f Ljava/util/function/Predicate; field_12419 ANY + m (Lnet/minecraft/class_2680;)Z method_11760 test + m (Ljava/lang/Object;)Z test test + p 1 state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2769;Ljava/util/function/Predicate;)Z method_11761 testProperty + p 2 property + p 1 blockState + p 3 predicate + m (Lnet/minecraft/class_2769;Ljava/util/function/Predicate;)Lnet/minecraft/class_2715; method_11762 with + p 1 property + p 2 predicate + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_2715; method_11758 forBlock + p 0 block + m (Lnet/minecraft/class_2689;)V + p 1 manager + m (Lnet/minecraft/class_2680;)Z method_11759 method_11759 + p 0 state +c net/minecraft/class_2716 net/minecraft/network/packet/s2c/play/EntitiesDestroyS2CPacket + f Lit/unimi/dsi/fastutil/ints/IntList; field_33690 entityIds + f Lnet/minecraft/class_9139; field_47959 CODEC + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ([I)V + p 1 entityIds + m (Lit/unimi/dsi/fastutil/ints/IntList;)V + p 1 entityIds + m (Lnet/minecraft/class_2602;)V method_11764 apply + m (Lnet/minecraft/class_2540;)V method_55906 write + p 1 buf + m ()Lit/unimi/dsi/fastutil/ints/IntList; method_36548 getEntityIds +c net/minecraft/class_2717 net/minecraft/predicate/block/BlockPredicate + f Lnet/minecraft/class_2248; field_12423 block + m (Lnet/minecraft/class_2248;)V + p 1 block + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lnet/minecraft/class_2680;)Z method_11765 test + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_2717; method_11766 make + p 0 block +c net/minecraft/class_2718 net/minecraft/network/packet/s2c/play/RemoveEntityStatusEffectS2CPacket + f Lnet/minecraft/class_9139; field_47960 CODEC + f Lnet/minecraft/class_6880; comp_2176 effect + f I comp_2175 entityId + m (Lnet/minecraft/class_2602;)V method_11769 apply + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_1297; method_11767 getEntity + p 1 world + m (ILnet/minecraft/class_6880;)V + p 1 entityId + p 2 effect + m ()Lnet/minecraft/class_6880; comp_2176 effect + m ()I comp_2175 entityId +c net/minecraft/class_11750 net/minecraft/unused/packageinfo/PackageInfo11750 +c net/minecraft/class_11754 net/minecraft/server/network/SendCodeOfConductTask + f Lnet/minecraft/class_8605$class_8606; field_62064 KEY + f Ljava/util/function/Supplier; field_62065 textSupplier + m (Ljava/util/function/Supplier;)V + p 1 textSupplier +c net/minecraft/class_11753 net/minecraft/server/command/FetchProfileCommand + m (Ljava/lang/String;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_73280 method_73280 + p 1 style + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2561;Lcom/mojang/authlib/GameProfile;)V method_73556 method_73556 + p 2 profile + m (Ljava/lang/String;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_74843 method_74843 + p 1 style + m (Lnet/minecraft/class_2168;Lcom/mojang/authlib/GameProfile;Ljava/lang/String;Lnet/minecraft/class_2561;)V method_73264 sendResult + p 3 inputText + p 2 successText + p 1 profile + p 0 source + m (Lnet/minecraft/class_2168;Ljava/lang/String;)I method_73266 executeName + p 1 name + p 0 source + m (Lnet/minecraft/class_5250;)Lnet/minecraft/class_2561; method_73276 method_73276 + p 0 style + m (Lnet/minecraft/class_2168;Ljava/util/UUID;)I method_73268 executeId + p 1 id + p 0 source + m (Lnet/minecraft/class_2168;Lcom/mojang/serialization/DataResult$Error;)V method_73555 method_73555 + p 1 error + m (Lcom/mojang/brigadier/context/CommandContext;)I method_73277 method_73277 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_73263 method_73263 + p 0 context + m (Lnet/minecraft/class_2168;Ljava/lang/String;Lnet/minecraft/class_5250;Ljava/lang/String;Lnet/minecraft/class_2561;Lnet/minecraft/class_2520;)V method_73267 method_73267 + p 5 headText + m (Lnet/minecraft/class_9296;Lnet/minecraft/class_2168;Ljava/lang/String;Lnet/minecraft/class_2561;Lnet/minecraft/class_2520;)V method_73554 method_73554 + p 4 profileComponent + m (Ljava/lang/String;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_73557 method_73557 + p 1 style + m (Lnet/minecraft/class_2168;Lcom/mojang/serialization/DataResult$Error;)V method_73559 method_73559 + p 1 error + m (Ljava/lang/String;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_73561 method_73561 + p 1 style + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_73262 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2561;Lcom/mojang/authlib/GameProfile;)V method_73560 method_73560 + p 2 profile +c net/minecraft/class_11752 net/minecraft/network/packet/c2s/config/AcceptCodeOfConductC2SPacket + f Lnet/minecraft/class_9139; field_62061 CODEC + f Lnet/minecraft/class_11752; field_62060 INSTANCE + m (Lnet/minecraft/class_8735;)V method_73260 apply +c net/minecraft/class_11751 net/minecraft/network/packet/s2c/config/CodeOfConductS2CPacket + f Lnet/minecraft/class_9139; field_62057 CODEC + f Ljava/lang/String; comp_4623 codeOfConduct + m (Lnet/minecraft/class_8732;)V method_73258 apply + m ()Ljava/lang/String; comp_4623 codeOfConduct + m (Ljava/lang/String;)V + p 1 codeOfConduct +c net/minecraft/class_10426 net/minecraft/client/render/entity/state/ArmedEntityRenderState + f Lnet/minecraft/class_12122; field_63603 swingAnimationType + f Lnet/minecraft/class_1306; field_55303 mainArm + f F field_63604 handSwingProgress + f Lnet/minecraft/class_572$class_573; field_55306 leftArmPose + f Lnet/minecraft/class_1799; field_63601 rightHandItem + f Lnet/minecraft/class_572$class_573; field_55304 rightArmPose + f Lnet/minecraft/class_1799; field_63602 leftHandItem + f Lnet/minecraft/class_10444; field_55305 rightHandItemState + f Lnet/minecraft/class_10444; field_55307 leftHandItemState + m ()Lnet/minecraft/class_10444; method_65578 getMainHandItemState + m ()Lnet/minecraft/class_1799; method_75467 getMainHandItemStack + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_10426;Lnet/minecraft/class_10442;F)V method_65577 updateRenderState + p 0 entity + p 2 itemModelManager + p 1 state + p 3 tickProgress + m (Lnet/minecraft/class_1306;)F method_75468 getItemUseTime + p 1 arm + m (Lnet/minecraft/class_1306;)Lnet/minecraft/class_1799; method_75466 getItemStackForArm + p 1 arm +c net/minecraft/class_10427 net/minecraft/client/render/entity/state/ItemHolderEntityRenderState + f Lnet/minecraft/class_10444; field_55308 itemRenderState + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_10427;Lnet/minecraft/class_10442;)V method_65579 update + p 1 state + p 2 itemModelManager + p 0 entity +c net/minecraft/class_11755 net/minecraft/server/GameProfileResolver + m (Ljava/lang/String;)Ljava/util/Optional; method_73289 getProfileByName + p 1 name + m (Ljava/util/UUID;)Ljava/util/Optional; method_73290 getProfileById + p 1 id + m (Lcom/mojang/datafixers/util/Either;)Ljava/util/Optional; method_73288 getProfile + p 1 either +c net/minecraft/class_11755$class_11579 net/minecraft/server/GameProfileResolver$CachedSessionProfileResolver + f Lcom/google/common/cache/LoadingCache; field_61355 nameCache + f Lcom/google/common/cache/LoadingCache; field_61356 idCache + m (Lcom/mojang/authlib/minecraft/MinecraftSessionService;Lnet/minecraft/class_11561;)V + p 1 sessionService + p 2 cache +c net/minecraft/class_11755$class_11579$1 net/minecraft/server/GameProfileResolver$CachedSessionProfileResolver$1 + m (Ljava/util/UUID;)Ljava/util/Optional; method_73291 load + m (Ljava/lang/Object;)Ljava/lang/Object; load load + p 1 id +c net/minecraft/class_11755$class_11579$2 net/minecraft/server/GameProfileResolver$CachedSessionProfileResolver$2 + m (Ljava/lang/Object;)Ljava/lang/Object; load load + p 1 name + m (Lnet/minecraft/class_11560;)Ljava/util/Optional; method_73292 method_73292 + p 1 entry + m (Ljava/lang/String;)Ljava/util/Optional; method_73293 load +c net/minecraft/class_6298 net/minecraft/unused/packageinfo/PackageInfo6298 +c net/minecraft/class_6299 net/minecraft/unused/packageinfo/PackageInfo6299 +c net/minecraft/class_6296 net/minecraft/unused/packageinfo/PackageInfo6296 +c net/minecraft/class_6297 net/minecraft/unused/packageinfo/PackageInfo6297 +c net/minecraft/class_6295 net/minecraft/unused/packageinfo/PackageInfo6295 +c net/minecraft/class_10451 net/minecraft/client/render/item/model/SelectItemModel + f Lnet/minecraft/class_10494; field_55362 property + f Lnet/minecraft/class_10451$class_10722; field_55363 selector + m (Lnet/minecraft/class_10494;Lnet/minecraft/class_10451$class_10722;)V + p 2 selector + p 1 property +c net/minecraft/class_10451$class_10722 net/minecraft/client/render/item/model/SelectItemModel$ModelSelector + m (Ljava/lang/Object;Lnet/minecraft/class_638;)Lnet/minecraft/class_10439; get get + p 1 propertyValue + p 2 world +c net/minecraft/class_10451$class_10452 net/minecraft/client/render/item/model/SelectItemModel$SwitchCase + f Ljava/util/List; comp_3399 values + f Lnet/minecraft/class_10439$class_10441; comp_3400 model + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_65628 createCodec + p 0 conditionCodec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65629 method_65629 + p 1 instance + m ()Ljava/util/List; comp_3399 values + m ()Lnet/minecraft/class_10439$class_10441; comp_3400 model + m (Ljava/util/List;Lnet/minecraft/class_10439$class_10441;)V + p 1 values + p 2 model +c net/minecraft/class_10451$class_10454 net/minecraft/client/render/item/model/SelectItemModel$UnbakedSwitch + f Lcom/mojang/serialization/MapCodec; field_55365 CODEC + f Lnet/minecraft/class_10494; comp_3403 property + f Ljava/util/List; comp_3404 cases + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectMap;Lnet/minecraft/class_10439;Lnet/minecraft/class_10719;Ljava/lang/Object;Lnet/minecraft/class_638;)Lnet/minecraft/class_10439; method_67283 method_67283 + p 4 world + p 3 value + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectMap;Lnet/minecraft/class_10439;Ljava/lang/Object;)V method_67284 method_67284 + p 2 swappedValue + m (Lnet/minecraft/class_10526$class_10103;)V method_65635 resolveCases + p 1 resolver + m (Lnet/minecraft/class_10451$class_10454;)Lnet/minecraft/class_10494$class_10495; method_65634 method_65634 + p 0 unbakedSwitch + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectMap;Ljava/lang/Object;Lnet/minecraft/class_638;)Lnet/minecraft/class_10439; method_67285 method_67285 + p 2 world + p 1 value + m (Lnet/minecraft/class_10439$class_10440;Lnet/minecraft/class_10439;)Lnet/minecraft/class_10439; method_65633 bake + p 1 context + p 2 fallback + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectMap;Lnet/minecraft/class_10678;)Lnet/minecraft/class_10451$class_10722; method_67281 buildModelSelector + p 2 contextSwapper + p 1 models + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectMap;Lnet/minecraft/class_10439;Lnet/minecraft/class_10678;Lnet/minecraft/class_638;)Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; method_67282 method_67282 + p 4 world + m (Lnet/minecraft/class_10678;Lnet/minecraft/class_638;Lit/unimi/dsi/fastutil/objects/Object2ObjectMap;Ljava/lang/Object;Lnet/minecraft/class_10439;)V method_67280 method_67280 + p 4 value + p 5 world + m ()Lnet/minecraft/class_10494; comp_3403 property + m ()Ljava/util/List; comp_3404 cases + m (Lnet/minecraft/class_10494;Ljava/util/List;)V + p 1 property + p 2 cases +c net/minecraft/class_10451$class_10453 net/minecraft/client/render/item/model/SelectItemModel$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55364 CODEC + f Ljava/util/Optional; comp_3402 fallback + f Lnet/minecraft/class_10451$class_10454; comp_3401 unbakedSwitch + m (Lnet/minecraft/class_10439$class_10440;Lnet/minecraft/class_10439$class_10441;)Lnet/minecraft/class_10439; method_65631 method_65631 + p 1 model + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65630 method_65630 + p 0 instance + m (Lnet/minecraft/class_10526$class_10103;Lnet/minecraft/class_10439$class_10441;)V method_65632 method_65632 + p 1 model + m ()Ljava/util/Optional; comp_3402 fallback + m ()Lnet/minecraft/class_10451$class_10454; comp_3401 unbakedSwitch + m (Lnet/minecraft/class_10451$class_10454;Ljava/util/Optional;)V + p 1 unbakedSwitch + p 2 fallback +c net/minecraft/class_11783 net/minecraft/client/render/block/entity/model/CopperGolemStatueModel + m (Lnet/minecraft/class_2350;)V method_73468 setAngles + m (Lnet/minecraft/class_630;)V + p 1 root +c net/minecraft/class_10455 net/minecraft/client/render/item/model/SpecialItemModel + f Lnet/minecraft/class_10809; field_56973 settings + f Lnet/minecraft/class_10515; field_55366 specialModelType + m (Lnet/minecraft/class_10515;Lnet/minecraft/class_10809;)V + p 2 settings + p 1 specialModelType +c net/minecraft/class_10455$class_10456 net/minecraft/client/render/item/model/SpecialItemModel$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55368 CODEC + f Lnet/minecraft/class_10515$class_10516; comp_3406 specialModel + f Lnet/minecraft/class_2960; comp_3405 base + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65636 method_65636 + p 0 instance + m (Lnet/minecraft/class_10439$class_10440;)Lnet/minecraft/class_10809; method_68003 getSettings + p 1 context + m ()Lnet/minecraft/class_2960; comp_3405 base + m ()Lnet/minecraft/class_10515$class_10516; comp_3406 specialModel + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_10515$class_10516;)V + p 1 base + p 2 specialModel +c net/minecraft/class_11786 net/minecraft/client/texture/PlayerSkinCache + f Lnet/minecraft/class_1071; field_62218 playerSkinProvider + f Lnet/minecraft/class_1060; field_62479 textureManager + f Lcom/google/common/cache/LoadingCache; field_62217 immediateCache + f Lcom/google/common/cache/LoadingCache; field_62216 fetchingCache + f Lnet/minecraft/class_11755; field_62219 gameProfileResolver + f Lnet/minecraft/class_1921; field_62215 DEFAULT_RENDER_LAYER + f Ljava/time/Duration; field_62478 TIME_TO_LIVE + m (Lnet/minecraft/class_9296;)Ljava/util/function/Supplier; method_74050 getSupplier + p 1 profile + m (Lnet/minecraft/class_1060;Lnet/minecraft/class_1071;Lnet/minecraft/class_11755;)V + p 2 playerSkinProvider + p 1 textureManager + p 3 gameProfileResolver + m (Lnet/minecraft/class_9296;)Ljava/util/concurrent/CompletableFuture; method_74320 getFuture + p 1 profile + m (Lnet/minecraft/class_9296;)Lnet/minecraft/class_11786$class_11787; method_73495 get + p 1 profile + m (Lnet/minecraft/class_8685;)Lnet/minecraft/class_1921; method_73496 getRenderLayer + p 0 skinTextures +c net/minecraft/class_11786$1 net/minecraft/client/texture/PlayerSkinCache$1 + m (Ljava/lang/Object;)Ljava/lang/Object; load load + p 1 profile + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_9296;Lnet/minecraft/class_8685;)Lnet/minecraft/class_11786$class_11787; method_73498 method_73498 + p 3 skinTextures + m (Lnet/minecraft/class_9296;)Ljava/util/concurrent/CompletableFuture; method_73500 load +c net/minecraft/class_11786$2 net/minecraft/client/texture/PlayerSkinCache$2 + m (Ljava/lang/Object;)Ljava/lang/Object; load load + p 1 profile + m (Lnet/minecraft/class_9296;)Lnet/minecraft/class_11786$class_11787; method_73501 load +c net/minecraft/class_11786$class_11787 net/minecraft/client/texture/PlayerSkinCache$Entry + f Lnet/minecraft/class_1921; field_62223 renderLayer + f Lcom/mojang/blaze3d/textures/GpuTextureView; field_62482 textureView + f Lnet/minecraft/class_8538; field_62483 textRenderLayers + f Lnet/minecraft/class_8685; field_62222 textures + f Lcom/mojang/authlib/GameProfile; field_62221 profile + m ()Lnet/minecraft/class_8538; method_74052 getTextRenderLayers + m ()Lnet/minecraft/class_8685; method_73503 getTextures + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lcom/mojang/blaze3d/textures/GpuTextureView; method_74051 getTextureView + m (Lnet/minecraft/class_11786;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_8685;Lnet/minecraft/class_8685$class_11892;)V + p 3 textures + p 2 profile + m ()Lnet/minecraft/class_1921; method_73504 getRenderLayer + m ()Lcom/mojang/authlib/GameProfile; method_73502 getProfile +c net/minecraft/class_11785 net/minecraft/client/render/command/RenderCommandQueue + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_10017;Lorg/joml/Quaternionf;)V method_73488 submitFire + p 2 renderState + p 1 matrices + p 3 rotation + m (Lnet/minecraft/class_630;Lnet/minecraft/class_4587;Lnet/minecraft/class_1921;IILnet/minecraft/class_1058;ZZILnet/minecraft/class_11683$class_11792;I)V method_73494 submitModelPart + p 7 sheeted + p 6 sprite + p 9 tintedColor + p 8 hasGlint + p 10 crumblingOverlay + p 1 part + p 3 renderLayer + p 2 matrices + p 5 overlay + p 4 light + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_1921;Lnet/minecraft/class_11659$class_11660;)V method_73483 submitCustom + p 1 matrices + p 3 customRenderer + p 2 renderLayer + m (Lnet/minecraft/class_3879;Ljava/lang/Object;Lnet/minecraft/class_4587;Lnet/minecraft/class_1921;IIILnet/minecraft/class_1058;ILnet/minecraft/class_11683$class_11792;)V method_73490 submitModel + p 3 matrices + p 2 state + p 1 model + p 7 tintedColor + p 6 overlay + p 5 light + p 4 renderLayer + p 10 crumblingOverlay + p 9 outlineColor + p 8 sprite + m (Lnet/minecraft/class_4587;FFLnet/minecraft/class_5481;ZLnet/minecraft/class_327$class_6415;IIII)V method_73478 submitText + p 7 light + p 8 color + p 5 dropShadow + p 6 layerType + p 9 backgroundColor + p 10 outlineColor + p 3 y + p 4 text + p 1 matrices + p 2 x + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_811;III[ILjava/util/List;Lnet/minecraft/class_1921;Lnet/minecraft/class_10444$class_10445;)V method_73480 submitItem + p 1 matrices + p 8 renderLayer + p 9 glintType + p 6 tintLayers + p 7 quads + p 4 overlay + p 5 outlineColors + p 2 displayContext + p 3 light + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_2680;III)V method_73481 submitBlock + p 1 matrices + p 2 state + p 5 outlineColor + p 3 light + p 4 overlay + m (Lnet/minecraft/class_630;Lnet/minecraft/class_4587;Lnet/minecraft/class_1921;IILnet/minecraft/class_1058;ZZ)V method_73493 submitModelPart + p 3 renderLayer + p 4 light + p 5 overlay + p 6 sprite + p 1 part + p 2 matrices + p 7 sheeted + p 8 hasGlint + m (Lnet/minecraft/class_3879;Ljava/lang/Object;Lnet/minecraft/class_4587;Lnet/minecraft/class_1921;IIILnet/minecraft/class_11683$class_11792;)V method_73489 submitModel + p 4 renderLayer + p 3 matrices + p 6 overlay + p 5 light + p 2 state + p 1 model + p 8 crumblingOverlay + p 7 outlineColor + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11791;)V method_73485 submitMovingBlock + p 1 matrices + p 2 state + m (Lnet/minecraft/class_630;Lnet/minecraft/class_4587;Lnet/minecraft/class_1921;IILnet/minecraft/class_1058;)V method_73491 submitModelPart + p 6 sprite + p 5 overlay + p 2 matrices + p 1 part + p 4 light + p 3 renderLayer + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_10017$class_10018;)V method_73486 submitLeash + p 2 leashData + p 1 matrices + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_1921;Lnet/minecraft/class_1087;FFFIII)V method_73484 submitBlockStateModel + p 2 renderLayer + p 1 matrices + p 4 r + p 3 model + p 6 b + p 5 g + p 8 overlay + p 7 light + p 9 outlineColor + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_243;ILnet/minecraft/class_2561;ZIDLnet/minecraft/class_12075;)V method_73482 submitLabel + p 7 squaredDistanceToCamera + p 9 cameraState + p 3 y + p 4 label + p 5 notSneaking + p 6 light + p 1 matrices + p 2 nameLabelPos + m (Lnet/minecraft/class_4587;FLjava/util/List;)V method_73479 submitShadowPieces + p 3 shadowPieces + p 2 shadowRadius + p 1 matrices + m (Lnet/minecraft/class_630;Lnet/minecraft/class_4587;Lnet/minecraft/class_1921;IILnet/minecraft/class_1058;ILnet/minecraft/class_11683$class_11792;)V method_73492 submitModelPart + p 4 light + p 3 renderLayer + p 2 matrices + p 1 part + p 8 crumblingOverlay + p 7 tintedColor + p 6 sprite + p 5 overlay + m (Lnet/minecraft/class_11659$class_11947;)V method_74315 submitCustom + p 1 customRenderer +c net/minecraft/class_11784 net/minecraft/client/network/ClientPlayerProfileResolver + f Lnet/minecraft/class_310; field_62212 client + f Lnet/minecraft/class_11755; field_62213 profileResolver + m (Lnet/minecraft/class_310;Lnet/minecraft/class_11755;)V + p 2 profileResolver + p 1 client +c net/minecraft/class_10459 net/minecraft/client/render/item/property/bool/BooleanProperties + f Lcom/mojang/serialization/MapCodec; field_55371 CODEC + f Lnet/minecraft/class_5699$class_10388; field_55372 ID_MAPPER + m ()V method_65639 bootstrap + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_65640 method_65640 + p 0 codec +c net/minecraft/class_10457 net/minecraft/client/render/item/property/bool/BrokenProperty + f Lcom/mojang/serialization/MapCodec; field_55369 CODEC +c net/minecraft/class_11788 net/minecraft/client/render/command/BatchingRenderCommandQueue + f Ljava/util/List; field_62232 movingBlockCommands + f Lnet/minecraft/class_11793$class_12049; field_62238 modelPartCommands + f Ljava/util/List; field_62230 leashCommands + f Ljava/util/List; field_62224 shadowPiecesCommands + f Ljava/util/List; field_62234 itemCommands + f Lnet/minecraft/class_11689$class_12050; field_62963 labelCommands + f Ljava/util/List; field_62228 textCommands + f Lnet/minecraft/class_11683$class_12048; field_62964 modelCommands + f Lnet/minecraft/class_11682$class_12047; field_62240 customCommands + f Lnet/minecraft/class_11661; field_62242 orderedQueueImpl + f Ljava/util/List; field_62231 blockCommands + f Ljava/util/List; field_62225 fireCommands + f Ljava/util/List; field_62233 blockStateModelCommands + f Ljava/util/List; field_62657 layeredCustomCommands + f Z field_62243 hasCommands + m ()Ljava/util/List; method_73520 getBlockStateModelCommands + m ()Lnet/minecraft/class_11683$class_12048; method_74771 getModelCommands + m ()Ljava/util/List; method_73522 getItemCommands + m ()Lnet/minecraft/class_11689$class_12050; method_74770 getLabelCommands + m ()Lnet/minecraft/class_11682$class_12047; method_73525 getCustomCommands + m ()Ljava/util/List; method_73518 getBlockCommands + m ()V method_73527 clear + m ()Lnet/minecraft/class_11793$class_12049; method_73521 getModelPartCommands + m ()Ljava/util/List; method_74330 getLayeredCustomCommands + m ()Ljava/util/List; method_73513 getTextCommands + m ()Z method_73526 hasCommands + m ()Ljava/util/List; method_73505 getShadowPiecesCommands + m (Lnet/minecraft/class_11661;)V + p 1 orderedQueueImpl + m ()Ljava/util/List; method_73507 getFireCommands + m ()Ljava/util/List; method_73517 getLeashCommands + m ()Ljava/util/List; method_73519 getMovingBlockCommands + m ()V method_73528 onNextFrame +c net/minecraft/class_10458 net/minecraft/client/render/item/property/bool/BundleHasSelectedItemProperty + f Lcom/mojang/serialization/MapCodec; field_55370 CODEC +c net/minecraft/class_10439 net/minecraft/client/render/item/model/ItemModel + m (Lnet/minecraft/class_10444;Lnet/minecraft/class_1799;Lnet/minecraft/class_10442;Lnet/minecraft/class_811;Lnet/minecraft/class_638;Lnet/minecraft/class_11566;I)V method_65584 update + p 1 state + p 2 stack + p 7 seed + p 3 resolver + p 4 displayContext + p 5 world + p 6 heldItemContext +c net/minecraft/class_10439$class_10440 net/minecraft/client/render/item/model/ItemModel$BakeContext + f Lnet/minecraft/class_11701; comp_4551 spriteHolder + f Lnet/minecraft/class_10439; comp_3392 missingItemModel + f Lnet/minecraft/class_11786; comp_4658 playerSkinRenderCache + f Lnet/minecraft/class_10678; comp_3611 contextSwapper + f Lnet/minecraft/class_7775; comp_3390 blockModelBaker + f Lnet/minecraft/class_5599; comp_3391 entityModelSet + m ()Lnet/minecraft/class_7775; comp_3390 blockModelBaker + m ()Lnet/minecraft/class_10678; comp_3611 contextSwapper + m ()Lnet/minecraft/class_10439; comp_3392 missingItemModel + m (Lnet/minecraft/class_7775;Lnet/minecraft/class_5599;Lnet/minecraft/class_11701;Lnet/minecraft/class_11786;Lnet/minecraft/class_10439;Lnet/minecraft/class_10678;)V + p 1 blockModelBaker + p 2 entityModelSet + p 3 spriteHolder + p 4 playerSkinRenderCache + p 5 missingItemModel + p 6 contextSwapper +c net/minecraft/class_10439$class_10441 net/minecraft/client/render/item/model/ItemModel$Unbaked + m ()Lcom/mojang/serialization/MapCodec; method_65585 getCodec + m (Lnet/minecraft/class_10439$class_10440;)Lnet/minecraft/class_10439; method_65587 bake + p 1 context +c net/minecraft/class_10444 net/minecraft/client/render/item/ItemRenderState + f Z field_61030 oversizedInGui + f I field_55339 layerCount + f Lnet/minecraft/class_238; field_61031 cachedModelBoundingBox + f Lnet/minecraft/class_811; field_55337 displayContext + f Z field_59981 animated + f [Lnet/minecraft/class_10444$class_10446; field_55340 layers + m ()Z method_72174 isOversizedInGui + m ()Z method_65606 isEmpty + m ()Z method_65608 isSideLit + m ()V method_65605 clear + m ()Lnet/minecraft/class_10444$class_10446; method_65601 newLayer + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_1058; method_65603 getParticleSprite + p 1 random + m ()Lnet/minecraft/class_10444$class_10446; method_65610 getFirstLayer + m ()Z method_70948 isAnimated + m ()V method_70947 markAnimated + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;III)V method_65604 render + p 3 light + p 4 overlay + p 1 matrices + m (Ljava/util/function/Consumer;)V method_67991 load + p 1 posConsumer + m ()Lnet/minecraft/class_238; method_72173 getModelBoundingBox + m (I)V method_65602 addLayers + p 1 add + m (Z)V method_72172 setOversizedInGui + p 1 oversizedInGui + m (Ljava/lang/Object;)V method_70946 addModelKey + p 1 modelKey +c net/minecraft/class_10444$class_10445 net/minecraft/client/render/item/ItemRenderState$Glint + f Lnet/minecraft/class_10444$class_10445; field_55342 STANDARD + f Lnet/minecraft/class_10444$class_10445; field_55343 SPECIAL + f Lnet/minecraft/class_10444$class_10445; field_55341 NONE +c net/minecraft/class_10444$class_10446 net/minecraft/client/render/item/ItemRenderState$LayerRenderState + f [Lorg/joml/Vector3fc; field_56963 EMPTY + f Ljava/util/List; field_56964 quads + f Lnet/minecraft/class_1058; field_56966 particle + f Lnet/minecraft/class_10444$class_10445; field_55348 glint + f Lnet/minecraft/class_10515; field_55350 specialModelType + f [I field_55349 tints + f Z field_56965 useLight + f Ljava/lang/Object; field_55351 data + f Lnet/minecraft/class_1921; field_55347 renderLayer + f Ljava/util/function/Supplier; field_56962 DEFAULT + f Ljava/util/function/Supplier; field_56968 vertices + f Lnet/minecraft/class_804; field_56967 transform + m (Lnet/minecraft/class_10444$class_10445;)V method_65615 setGlint + p 1 glint + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;III)V method_65614 render + p 3 light + p 4 overlay + p 1 matrices + m (Lnet/minecraft/class_1058;)V method_67994 setParticle + p 1 particle + m ()Ljava/util/List; method_67997 getQuads + m (I)[I method_65613 initTints + p 1 maxIndex + m (Lnet/minecraft/class_1921;)V method_67992 setRenderLayer + p 1 layer + m (Ljava/util/function/Supplier;)V method_67995 setVertices + p 1 vertices + m ()V method_65612 clear + m (Z)V method_67996 setUseLight + p 1 useLight + m (Lnet/minecraft/class_10515;Ljava/lang/Object;)V method_65617 setSpecialModel + p 1 specialModelType + p 2 data + m (Lnet/minecraft/class_804;)V method_67993 setTransform + p 1 transform + m (Lnet/minecraft/class_10515;)Lnet/minecraft/class_10515; method_65616 eraseType + p 0 specialModelType +c net/minecraft/class_10442 net/minecraft/client/item/ItemModelManager + f Ljava/util/function/Function; field_55334 modelGetter + f Ljava/util/function/Function; field_55553 propertiesGetter + m (Lnet/minecraft/class_10444;Lnet/minecraft/class_1799;Lnet/minecraft/class_811;Lnet/minecraft/class_1297;)V method_65595 updateForNonLivingEntity + p 3 displayContext + p 2 stack + p 1 renderState + p 4 entity + m (Lnet/minecraft/class_10444;Lnet/minecraft/class_1799;Lnet/minecraft/class_811;Lnet/minecraft/class_1937;Lnet/minecraft/class_11566;I)V method_65598 clearAndUpdate + p 1 renderState + p 6 seed + p 3 displayContext + p 2 stack + p 5 heldItemContext + p 4 world + m (Lnet/minecraft/class_10444;Lnet/minecraft/class_1799;Lnet/minecraft/class_811;Lnet/minecraft/class_1937;Lnet/minecraft/class_11566;I)V method_65596 update + p 1 renderState + p 3 displayContext + p 2 stack + p 5 heldItemContext + p 4 world + p 6 seed + m (Lnet/minecraft/class_1799;)Z method_65912 hasHandAnimationOnSwap + p 1 stack + m (Lnet/minecraft/class_1092;)V + p 1 bakedModelManager + m (Lnet/minecraft/class_1799;)F method_75483 getSwapAnimationScale + p 1 stack + m (Lnet/minecraft/class_10444;Lnet/minecraft/class_1799;Lnet/minecraft/class_811;Lnet/minecraft/class_1309;)V method_65597 updateForLivingEntity + p 1 renderState + p 4 entity + p 2 stack + p 3 displayContext +c net/minecraft/class_10443 net/minecraft/client/render/item/model/ItemModelTypes + f Lcom/mojang/serialization/Codec; field_55335 CODEC + f Lnet/minecraft/class_5699$class_10388; field_55336 ID_MAPPER + m ()V method_65599 bootstrap + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_65600 method_65600 + p 0 codec +c net/minecraft/class_10448 net/minecraft/client/render/item/model/RangeDispatchItemModel + f [Lnet/minecraft/class_10439; field_55357 models + f [F field_55356 thresholds + f Lnet/minecraft/class_1800; field_55354 property + f Lnet/minecraft/class_10439; field_55358 fallback + f F field_55355 scale + m ([FF)I method_65622 getIndex + p 0 thresholds + p 1 value + m (Lnet/minecraft/class_1800;F[F[Lnet/minecraft/class_10439;Lnet/minecraft/class_10439;)V + p 1 property + p 2 scale + p 3 thresholds + p 4 models + p 5 fallback +c net/minecraft/class_10448$class_10449 net/minecraft/client/render/item/model/RangeDispatchItemModel$Entry + f Lcom/mojang/serialization/Codec; field_55359 CODEC + f Ljava/util/Comparator; field_55360 COMPARATOR + f F comp_3393 threshold + f Lnet/minecraft/class_10439$class_10441; comp_3394 model + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65623 method_65623 + p 0 instance + m ()F comp_3393 threshold + m ()Lnet/minecraft/class_10439$class_10441; comp_3394 model + m (FLnet/minecraft/class_10439$class_10441;)V + p 1 threshold + p 2 model +c net/minecraft/class_10448$class_10450 net/minecraft/client/render/item/model/RangeDispatchItemModel$Unbaked + f Lcom/mojang/serialization/MapCodec; field_55361 CODEC + f Lnet/minecraft/class_1800; comp_3395 property + f Ljava/util/List; comp_3397 entries + f Ljava/util/Optional; comp_3398 fallback + f F comp_3396 scale + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65624 method_65624 + p 0 instance + m (Lnet/minecraft/class_10526$class_10103;Lnet/minecraft/class_10448$class_10449;)V method_65627 method_65627 + p 1 entry + m (Lnet/minecraft/class_10526$class_10103;Lnet/minecraft/class_10439$class_10441;)V method_65626 method_65626 + p 1 model + m (Lnet/minecraft/class_10439$class_10440;Lnet/minecraft/class_10439$class_10441;)Lnet/minecraft/class_10439; method_65625 method_65625 + p 1 model + m ()Ljava/util/List; comp_3397 entries + m ()Lnet/minecraft/class_1800; comp_3395 property + m ()Ljava/util/Optional; comp_3398 fallback + m ()F comp_3396 scale + m (Lnet/minecraft/class_1800;FLjava/util/List;Ljava/util/Optional;)V + p 1 property + p 2 scale + p 3 entries + p 4 fallback +c net/minecraft/class_11777 net/minecraft/client/gui/screen/multiplayer/CodeOfConductScreen + f Ljava/lang/String; field_62176 rawCodeOfConduct + f Lnet/minecraft/class_2561; field_62174 CHECK_TEXT + f Lnet/minecraft/class_2561; field_62173 TITLE_TEXT + f Lnet/minecraft/class_642; field_62175 serverInfo + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; field_62177 callback + m (Z)V method_73434 onAnswer + p 1 acknowledged + m (Lnet/minecraft/class_4185;)V method_73433 method_73433 + p 1 button + m (Lnet/minecraft/class_642;Lnet/minecraft/class_437;Lnet/minecraft/class_2561;Ljava/lang/String;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;)V + p 1 serverInfo + m (Lnet/minecraft/class_642;Lnet/minecraft/class_437;Ljava/lang/String;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;)V + p 1 serverInfo + m (Lnet/minecraft/class_4185;)V method_73432 method_73432 + p 1 button +c net/minecraft/class_10447 net/minecraft/client/render/item/model/MissingItemModel + f Lnet/minecraft/class_10809; field_56971 settings + f Ljava/util/List; field_56969 quads + f Ljava/util/function/Supplier; field_56970 vector + m (Ljava/util/List;Lnet/minecraft/class_10809;)V + p 2 settings + p 1 quads +c net/minecraft/class_11718 net/minecraft/network/encoding/VelocityEncoding + f I field_61969 SLOW_BIT_MASK + f I field_61967 MAX_15_BIT_INT + m (I)Z method_73169 hasFastMarkerBit + p 0 maxDirectionalVelocity + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/class_243; method_73170 readVelocity + p 0 buf + m (D)D method_73551 clampValue + p 0 value + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/class_243;)V method_73171 writeVelocity + p 1 velocity + p 0 buf + m (J)D method_73552 fromLong + p 0 value + m (D)J method_73553 toLong + p 0 value +c net/minecraft/class_11715 net/minecraft/client/texture/FixedGlyphProvider + f Lnet/minecraft/class_11768; comp_4584 glyph + m ()Lnet/minecraft/class_11768; comp_4584 glyph + m (Lnet/minecraft/class_11768;)V + p 1 glyph +c net/minecraft/data/Main net/minecraft/data/Main + m (Ljava/util/Collection;Lnet/minecraft/class_7784;)Lnet/minecraft/class_2461; method_65775 method_65775 + p 1 output + m (Lnet/minecraft/class_7784;)Lnet/minecraft/class_7796; method_65777 method_65777 + p 0 output + m (Ljava/util/function/BiFunction;Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/class_7784;)Lnet/minecraft/class_2405; method_46840 method_46840 + p 2 output + m ([Ljava/lang/String;)V main main + p 0 args + m (Ljava/util/function/BiFunction;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/class_2405$class_7857; method_46839 toFactory + p 0 baseFactory + p 1 registriesFuture + m (Lnet/minecraft/class_7784;)Lnet/minecraft/class_7796; method_65780 method_65780 + p 0 output + m (Ljava/lang/String;)Ljava/nio/file/Path; method_4967 method_4967 + p 0 input + m (Ljava/util/Collection;Lnet/minecraft/class_7784;)Lnet/minecraft/class_2463; method_65778 method_65778 + p 1 output + m (Lnet/minecraft/class_7784;)Lnet/minecraft/class_7796; method_65779 method_65779 + p 0 output + m (Lnet/minecraft/class_2403;Ljava/util/Collection;ZZZ)V method_4968 create + p 1 inputs + p 2 includeClient + p 0 dataGenerator + p 3 includeServer + p 4 includeDev +c net/minecraft/class_11719 net/minecraft/text/StyleSpriteSource + f Lcom/mojang/serialization/Codec; field_61971 FONT_CODEC + f Lnet/minecraft/class_11719$class_11721; field_61972 DEFAULT + m (Lnet/minecraft/class_11719;)Lcom/mojang/serialization/DataResult; method_73172 method_73172 + p 0 instance +c net/minecraft/class_11719$class_11881 net/minecraft/text/StyleSpriteSource$Player + f Z comp_4762 hat + f Lnet/minecraft/class_9296; comp_4761 profile + m ()Lnet/minecraft/class_9296; comp_4761 profile + m ()Z comp_4762 hat + m (Lnet/minecraft/class_9296;Z)V + p 1 profile + p 2 hat +c net/minecraft/class_11719$class_11721 net/minecraft/text/StyleSpriteSource$Font + f Lnet/minecraft/class_2960; comp_4590 id + m ()Lnet/minecraft/class_2960; comp_4590 id + m (Lnet/minecraft/class_2960;)V + p 1 id +c net/minecraft/class_11719$class_11720 net/minecraft/text/StyleSpriteSource$Sprite + f Lnet/minecraft/class_2960; comp_4588 atlasId + f Lnet/minecraft/class_2960; comp_4589 spriteId + m ()Lnet/minecraft/class_2960; comp_4589 spriteId + m ()Lnet/minecraft/class_2960; comp_4588 atlasId + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V + p 1 atlasId + p 2 spriteId +c net/minecraft/class_11725 net/minecraft/unused/packageinfo/PackageInfo11725 +c net/minecraft/class_11724 net/minecraft/text/object/TextObjectContents + m ()Lnet/minecraft/class_11719; method_74068 spriteSource + m ()Lcom/mojang/serialization/MapCodec; method_74067 getCodec + m ()Ljava/lang/String; method_73178 asText +c net/minecraft/class_11723 net/minecraft/text/object/AtlasTextObjectContents + f Lnet/minecraft/class_2960; field_61976 DEFAULT_ATLAS + f Lcom/mojang/serialization/MapCodec; field_61977 CODEC + f Lnet/minecraft/class_2960; comp_4592 atlas + f Lnet/minecraft/class_2960; comp_4593 sprite + m (Lnet/minecraft/class_2960;)Ljava/lang/String; method_73176 getShortIdString + p 0 id + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73177 method_73177 + p 0 instance + m ()Lnet/minecraft/class_2960; comp_4593 sprite + m ()Lnet/minecraft/class_2960; comp_4592 atlas + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V + p 1 atlas + p 2 sprite +c net/minecraft/class_11722 net/minecraft/text/ObjectTextContent + f Lcom/mojang/serialization/MapCodec; field_61973 CODEC + f Ljava/lang/String; field_61975 REPLACEMENT + f Lnet/minecraft/class_11724; comp_4591 contents + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73174 method_73174 + p 0 instance + m ()Lnet/minecraft/class_11724; comp_4591 contents + m (Lnet/minecraft/class_11724;)V + p 1 contents +c net/minecraft/class_11707 net/minecraft/datafixer/fix/CopperGolemWeatherStateFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_73089 fixWeatherState + p 0 weatherStateDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_73090 method_73090 + p 0 dynamic +c net/minecraft/class_11705 net/minecraft/data/loottable/vanilla/VanillaBrushLootTableGenerator + f Lnet/minecraft/class_7225$class_7874; comp_4565 registries + m ()Lnet/minecraft/class_7225$class_7874; comp_4565 registries + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries +c net/minecraft/class_11709 net/minecraft/block/OxidizablePaneBlock + f Lnet/minecraft/class_5955$class_5811; field_61908 oxidationLevel + f Lcom/mojang/serialization/MapCodec; field_61907 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73120 method_73120 + p 0 instance + m (Lnet/minecraft/class_5955$class_5811;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 oxidationLevel + m ()Lnet/minecraft/class_5955$class_5811; method_73121 getDegradationLevel +c net/minecraft/class_11708 net/minecraft/item/CopperBlockItemSet + f Lnet/minecraft/class_1792; comp_4568 unaffected + f Lnet/minecraft/class_1792; comp_4569 exposed + f Lnet/minecraft/class_1792; comp_4570 weathered + f Lnet/minecraft/class_1792; comp_4571 oxidized + f Lnet/minecraft/class_1792; comp_4572 waxed + f Lnet/minecraft/class_1792; comp_4573 waxedExposed + f Lnet/minecraft/class_1792; comp_4574 waxedWeathered + f Lnet/minecraft/class_1792; comp_4575 waxedOxidized + m (Ljava/util/function/Consumer;)V method_73103 forEach + p 1 consumer + m (Lnet/minecraft/class_11710;Ljava/util/function/Function;)Lnet/minecraft/class_11708; method_73102 create + p 0 blockSet + p 1 registerFunction + m ()Lcom/google/common/collect/ImmutableBiMap; method_73101 getWaxingMap + m ()Lnet/minecraft/class_1792; comp_4570 weathered + m ()Lnet/minecraft/class_1792; comp_4575 waxedOxidized + m ()Lnet/minecraft/class_1792; comp_4572 waxed + m ()Lnet/minecraft/class_1792; comp_4571 oxidized + m ()Lnet/minecraft/class_1792; comp_4574 waxedWeathered + m ()Lnet/minecraft/class_1792; comp_4573 waxedExposed + m ()Lnet/minecraft/class_1792; comp_4568 unaffected + m ()Lnet/minecraft/class_1792; comp_4569 exposed + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;)V + p 1 unaffected + p 2 exposed + p 3 weathered + p 4 oxidized + p 5 waxed + p 6 waxedExposed + p 7 waxedWeathered + p 8 waxedOxidized +c net/minecraft/class_8901 net/minecraft/client/render/chunk/BlockBufferBuilderPool + f Ljava/util/Queue; field_46905 availableBuilders + f I field_46906 availableBuilderCount + f Lorg/slf4j/Logger; field_46904 LOGGER + m ()Z method_54645 hasNoAvailableBuilder + m (I)Lnet/minecraft/class_8901; method_54643 allocate + p 0 max + m ()I method_54646 getAvailableBuilderCount + m (Ljava/util/List;)V + p 1 availableBuilders + m (Lnet/minecraft/class_750;)V method_54644 release + p 1 builders + m ()Lnet/minecraft/class_750; method_54642 acquire +c net/minecraft/class_11710 net/minecraft/block/CopperBlockSet + f Lnet/minecraft/class_2248; comp_4576 unaffected + f Lnet/minecraft/class_2248; comp_4577 exposed + f Lnet/minecraft/class_2248; comp_4578 weathered + f Lnet/minecraft/class_2248; comp_4579 oxidized + f Lnet/minecraft/class_2248; comp_4581 waxedExposed + f Lnet/minecraft/class_2248; comp_4583 waxedOxidized + f Lnet/minecraft/class_2248; comp_4582 waxedWeathered + f Lnet/minecraft/class_2248; comp_4580 waxed + m (Ljava/util/function/BiFunction;Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_73127 method_73127 + p 1 settings + m (Ljava/util/function/BiFunction;Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_73129 method_73129 + p 1 settings + m ()Lcom/google/common/collect/ImmutableBiMap; method_73122 getOxidizingMap + m (Ljava/util/function/BiFunction;Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_73124 method_73124 + p 1 settings + m (Ljava/util/function/Consumer;)V method_73125 forEach + p 1 consumer + m (Ljava/util/function/BiFunction;Lnet/minecraft/class_4970$class_2251;)Lnet/minecraft/class_2248; method_73130 method_73130 + p 1 settings + m ()Lcom/google/common/collect/ImmutableList; method_73128 getAll + m (Ljava/lang/String;Lorg/apache/commons/lang3/function/TriFunction;Ljava/util/function/Function;Ljava/util/function/BiFunction;Ljava/util/function/Function;)Lnet/minecraft/class_11710; method_73123 create + p 0 baseId + p 1 registerFunction + p 2 waxedBlockFactory + p 3 unwaxedBlockFactory + p 4 settingsFromOxidationLevel + m ()Lcom/google/common/collect/ImmutableBiMap; method_73126 getWaxingMap + m ()Lnet/minecraft/class_2248; comp_4577 exposed + m ()Lnet/minecraft/class_2248; comp_4576 unaffected + m ()Lnet/minecraft/class_2248; comp_4579 oxidized + m ()Lnet/minecraft/class_2248; comp_4578 weathered + m ()Lnet/minecraft/class_2248; comp_4580 waxed + m ()Lnet/minecraft/class_2248; comp_4582 waxedWeathered + m ()Lnet/minecraft/class_2248; comp_4581 waxedExposed + m ()Lnet/minecraft/class_2248; comp_4583 waxedOxidized + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;)V + p 1 unaffected + p 2 exposed + p 3 weathered + p 4 oxidized + p 5 waxed + p 6 waxedExposed + p 7 waxedWeathered + p 8 waxedOxidized +c net/minecraft/class_11714 net/minecraft/client/texture/SpriteAtlasGlyphs + f Lnet/minecraft/class_379; field_62132 EMPTY_SPRITE_METRICS + f Ljava/util/function/Function; field_61930 computeSprite + f Lnet/minecraft/class_8538; field_61927 renderLayerSet + f Ljava/util/Map; field_61929 cachedGlyphs + f Lnet/minecraft/class_1059; field_61926 atlasTexture + f Lnet/minecraft/class_11603; field_61928 missingGlyphProvider + m (Lnet/minecraft/class_1059;)V + p 1 atlasTexture + m (Lnet/minecraft/class_1059;Lnet/minecraft/class_1058;Lnet/minecraft/class_2960;)Lnet/minecraft/class_11603; method_73143 method_73143 + p 3 id + m (Lnet/minecraft/class_1058;)Lnet/minecraft/class_11603; method_73144 createFixedGlyphProvider + p 1 sprite + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_11603; method_73142 getGlyphProvider + p 1 id +c net/minecraft/class_11714$class_11765 net/minecraft/client/texture/SpriteAtlasGlyphs$AtlasGlyph + f Lnet/minecraft/class_2583; comp_3317 style + f Lnet/minecraft/class_1058; comp_4630 sprite + f Lcom/mojang/blaze3d/textures/GpuTextureView; comp_4629 textureView + f I comp_4633 color + f F comp_4635 shadowOffset + f I comp_4634 shadowColor + f F comp_4632 y + f F comp_4631 x + f Lnet/minecraft/class_8538; comp_4628 renderTypes + m ()Lnet/minecraft/class_1058; comp_4630 sprite + m ()Lnet/minecraft/class_8538; comp_4628 renderTypes + m (Lnet/minecraft/class_8538;Lcom/mojang/blaze3d/textures/GpuTextureView;Lnet/minecraft/class_1058;FFIIFLnet/minecraft/class_2583;)V + p 1 renderTypes + p 2 textureView + p 3 sprite + p 4 x + p 5 y + p 6 color + p 7 shadowColor + p 8 shadowOffset + p 9 style +c net/minecraft/class_11712 net/minecraft/block/OxidizableLanternBlock + f Lnet/minecraft/class_5955$class_5811; field_61912 oxidationLevel + f Lcom/mojang/serialization/MapCodec; field_61911 CODEC + m ()Lnet/minecraft/class_5955$class_5811; method_73134 getDegradationLevel + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73133 method_73133 + p 0 instance + m (Lnet/minecraft/class_5955$class_5811;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 oxidationLevel +c net/minecraft/class_11711 net/minecraft/block/OxidizableChainBlock + f Lcom/mojang/serialization/MapCodec; field_61909 CODEC + f Lnet/minecraft/class_5955$class_5811; field_61910 oxidationLevel + m ()Lnet/minecraft/class_5955$class_5811; method_73132 getDegradationLevel + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_73131 method_73131 + p 0 instance + m (Lnet/minecraft/class_5955$class_5811;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 oxidationLevel +c net/minecraft/class_10409 net/minecraft/unused/packageinfo/PackageInfo10409 +c net/minecraft/class_11737 net/minecraft/unused/packageinfo/PackageInfo11737 +c net/minecraft/class_1481 net/minecraft/entity/passive/TurtleEntity + f Lnet/minecraft/class_2338; field_56656 travelPos + f Lnet/minecraft/class_4051$class_10254; field_6921 BABY_TURTLE_ON_LAND_FILTER + f F field_47774 BABY_SCALE + f I field_6918 sandDiggingCounter + f Lnet/minecraft/class_4048; field_47775 BABY_BASE_DIMENSIONS + f Lnet/minecraft/class_2940; field_6919 HAS_EGG + f Lnet/minecraft/class_2940; field_6923 DIGGING_SAND + f Lnet/minecraft/class_2338; field_56655 homePos + f Z field_57620 DEFAULT_HAS_EGG + f Z field_56657 landBound + m (Z)V method_6680 setHasEgg + p 1 hasEgg + m (Z)V method_6676 setDiggingSand + p 1 diggingSand + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_6688 method_6688 + p 0 entity + p 1 world + m (Lnet/minecraft/class_2338;)V method_6683 setHomePos + p 1 pos + m ()Lnet/minecraft/class_5132$class_5133; method_26896 createTurtleAttributes + m (Lnet/minecraft/class_1799;)Z method_58376 method_58376 + p 0 stack + m ()Z method_6695 isDiggingSand + m ()Z method_6679 hasEgg + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20671 canSpawn + p 0 type + p 1 world + p 2 spawnReason + p 3 pos + p 4 random +c net/minecraft/class_1481$class_1489 net/minecraft/entity/passive/TurtleEntity$WanderOnLandGoal + f Lnet/minecraft/class_1481; field_6934 turtle + m (Lnet/minecraft/class_1481;DI)V + p 4 chance + p 1 turtle + p 2 speed +c net/minecraft/class_1481$class_1487 net/minecraft/entity/passive/TurtleEntity$TurtleEscapeDangerGoal + m (Lnet/minecraft/class_1481;D)V + p 1 turtle + p 2 speed +c net/minecraft/class_1481$class_1488 net/minecraft/entity/passive/TurtleEntity$TurtleSwimNavigation + m (Lnet/minecraft/class_1481;Lnet/minecraft/class_1937;)V + p 1 owner + p 2 world +c net/minecraft/class_1481$class_1485 net/minecraft/entity/passive/TurtleEntity$LayEggGoal + f Lnet/minecraft/class_1481; field_6932 turtle + m (Lnet/minecraft/class_1481;D)V + p 1 turtle + p 2 speed +c net/minecraft/class_1481$class_1486 net/minecraft/entity/passive/TurtleEntity$TurtleMoveControl + f Lnet/minecraft/class_1481; field_6933 turtle + m ()V method_6700 updateVelocity + m (Lnet/minecraft/class_1481;)V + p 1 turtle +c net/minecraft/class_1481$class_1483 net/minecraft/entity/passive/TurtleEntity$GoHomeGoal + f I field_30384 MAX_TRY_TICKS + f I field_6928 homeReachingTryTicks + f Z field_6929 noPath + f Lnet/minecraft/class_1481; field_6930 turtle + f D field_6927 speed + m (Lnet/minecraft/class_1481;D)V + p 2 speed + p 1 turtle +c net/minecraft/class_1481$class_1484 net/minecraft/entity/passive/TurtleEntity$WanderInWaterGoal + f Lnet/minecraft/class_1481; field_6931 turtle + m (Lnet/minecraft/class_1481;D)V + p 2 speed + p 1 turtle +c net/minecraft/class_1481$class_1482 net/minecraft/entity/passive/TurtleEntity$MateGoal + f Lnet/minecraft/class_1481; field_6926 turtle + m (Lnet/minecraft/class_1481;D)V + p 1 turtle + p 2 speed +c net/minecraft/class_1481$class_1491 net/minecraft/entity/passive/TurtleEntity$TravelGoal + f Z field_6941 noPath + f D field_6940 speed + f Lnet/minecraft/class_1481; field_6942 turtle + m (Lnet/minecraft/class_1481;D)V + p 2 speed + p 1 turtle +c net/minecraft/class_1480 net/minecraft/entity/mob/WaterCreatureEntity + f I field_52476 MIN_AMBIENT_SOUND_DELAY + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_38986 canSpawn + p 4 random + p 3 pos + p 2 reason + p 1 world + p 0 type + m (Lnet/minecraft/class_3218;I)V method_6673 tickWaterBreathingAir + p 2 air + p 1 world +c net/minecraft/class_11743 net/minecraft/client/render/EndLightFlashManager + f I field_62034 MIN_DURATION + f F field_62042 yaw + f J field_62036 currentWindow + f I field_62037 startTime + f I field_62032 INTERVAL + f F field_62040 lastSkyFactor + f I field_62033 MAX_START_TIME + f F field_62041 pitch + f F field_62039 nextSkyFactor + f I field_62038 duration + m (J)V method_73238 tick + p 1 time + m ()F method_73236 getPitch + m (F)F method_73237 getSkyFactor + p 1 tickProgress + m ()F method_73239 getYaw + m (J)F method_73242 calcSkyFactor + p 1 time + m ()Z method_73475 shouldFlash + m (J)V method_73240 update + p 1 time +c net/minecraft/class_10411 net/minecraft/client/data/ModelSupplier +c net/minecraft/class_10412 net/minecraft/unused/packageinfo/PackageInfo10412 +c net/minecraft/class_11741 net/minecraft/client/world/BlockParticleEffectsManager + f Ljava/util/List; field_62023 pool + m (Lnet/minecraft/class_638;Lnet/minecraft/class_11741$class_11742;)V method_73226 addEffect + p 1 world + p 2 entry + m (Lnet/minecraft/class_638;Lnet/minecraft/class_11741$class_11742;)V method_73227 method_73227 + p 2 entry + m (Lnet/minecraft/class_638;)V method_73225 tick + p 1 world + m (Lnet/minecraft/class_243;FILnet/minecraft/class_6012;)V method_73224 scheduleBlockParticles + p 2 radius + p 3 blockCount + p 4 particles + p 1 center +c net/minecraft/class_11741$class_11742 net/minecraft/client/world/BlockParticleEffectsManager$Entry + f F comp_4608 radius + f Lnet/minecraft/class_243; comp_4607 center + f I comp_4609 blockCount + f Lnet/minecraft/class_6012; comp_4610 blockParticles + m ()Lnet/minecraft/class_243; comp_4607 center + m ()Lnet/minecraft/class_6012; comp_4610 blockParticles + m ()F comp_4608 radius + m ()I comp_4609 blockCount + m (Lnet/minecraft/class_243;FILnet/minecraft/class_6012;)V + p 1 center + p 2 radius + p 3 blockCount + p 4 blockParticles +c net/minecraft/class_10410 net/minecraft/client/data/ItemModels + m (Lnet/minecraft/class_10494;[Lnet/minecraft/class_10451$class_10452;)Lnet/minecraft/class_10439$class_10441; method_65496 select + p 1 cases + p 0 property + m (Lnet/minecraft/class_10439$class_10441;F)Lnet/minecraft/class_10448$class_10449; method_65486 rangeDispatchEntry + p 0 model + p 1 threshold + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_10439$class_10441; method_65481 basic + p 0 model + m (Lnet/minecraft/class_1800;Lnet/minecraft/class_10439$class_10441;[Lnet/minecraft/class_10448$class_10449;)Lnet/minecraft/class_10439$class_10441; method_65491 rangeDispatch + p 0 property + p 1 fallback + p 2 entries + m ()Lnet/minecraft/class_10460; method_65479 usingItemProperty + m (Lnet/minecraft/class_1800;Ljava/util/List;)Lnet/minecraft/class_10439$class_10441; method_65492 rangeDispatch + p 0 property + p 1 entries + m (Lnet/minecraft/class_10460;Lnet/minecraft/class_10439$class_10441;Lnet/minecraft/class_10439$class_10441;)Lnet/minecraft/class_10439$class_10441; method_65487 condition + p 2 onFalse + p 1 onTrue + p 0 property + m (Lnet/minecraft/class_10439$class_10441;Lnet/minecraft/class_10439$class_10441;)Lnet/minecraft/class_10439$class_10441; method_65909 overworldSelect + p 1 fallback + p 0 overworldModel + m (Lnet/minecraft/class_2960;[Lnet/minecraft/class_10401;)Lnet/minecraft/class_10439$class_10441; method_65483 tinted + p 1 tints + p 0 model + m (Lnet/minecraft/class_10439$class_10441;Lnet/minecraft/class_10439$class_10441;)Lnet/minecraft/class_10439$class_10441; method_65808 christmasSelect + p 1 christmasModel + p 0 regularModel + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_10439$class_10441;Ljava/util/Map;)Lnet/minecraft/class_10439$class_10441; method_65484 select + p 2 valuesToModels + p 1 fallback + p 0 property + m (Lnet/minecraft/class_1800;FLjava/util/List;)Lnet/minecraft/class_10439$class_10441; method_65489 rangeDispatch + p 2 entries + p 1 scale + p 0 property + m (Lnet/minecraft/class_10494;Lnet/minecraft/class_10439$class_10441;[Lnet/minecraft/class_10451$class_10452;)Lnet/minecraft/class_10439$class_10441; method_65494 select + p 2 cases + p 1 fallback + p 0 property + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_10515$class_10516;)Lnet/minecraft/class_10439$class_10441; method_65482 special + p 1 specialModel + p 0 base + m (Lnet/minecraft/class_1800;FLnet/minecraft/class_10439$class_10441;[Lnet/minecraft/class_10448$class_10449;)Lnet/minecraft/class_10439$class_10441; method_65488 rangeDispatch + p 3 entries + p 2 fallback + p 1 scale + p 0 property + m (Lnet/minecraft/class_10494;Lnet/minecraft/class_10439$class_10441;Ljava/util/List;)Lnet/minecraft/class_10439$class_10441; method_65493 select + p 1 fallback + p 2 cases + p 0 property + m ([Lnet/minecraft/class_10439$class_10441;)Lnet/minecraft/class_10439$class_10441; method_65500 composite + p 0 models + m (Lnet/minecraft/class_1800;Lnet/minecraft/class_10439$class_10441;Ljava/util/List;)Lnet/minecraft/class_10439$class_10441; method_65490 rangeDispatch + p 0 property + p 2 entries + p 1 fallback + m (Lnet/minecraft/class_10494;Ljava/util/List;)Lnet/minecraft/class_10439$class_10441; method_65495 select + p 1 cases + p 0 property + m (I)Lnet/minecraft/class_10401; method_65480 constantTintSource + p 0 value + m (Ljava/lang/Object;Lnet/minecraft/class_10439$class_10441;)Lnet/minecraft/class_10451$class_10452; method_65497 switchCase + p 1 model + p 0 value + m (Lnet/minecraft/class_9331;)Lnet/minecraft/class_10460; method_65499 hasComponentProperty + p 0 component + m (Ljava/util/List;Lnet/minecraft/class_10439$class_10441;)Lnet/minecraft/class_10451$class_10452; method_65498 switchCase + p 0 values + p 1 model +c net/minecraft/class_10415 net/minecraft/client/gui/widget/ScrollableTextFieldWidget + f Lnet/minecraft/class_8666; field_55260 TEXTURES + f Z field_60434 hasOverlay + f Z field_60433 hasBackground + m (IIIILnet/minecraft/class_2561;ZZ)V + p 2 y + p 3 width + p 1 x + p 6 hasBackground + p 7 hasOverlay + p 4 height + p 5 message + m ()I method_44391 getContentsHeight + m (Lnet/minecraft/class_332;IIII)V method_65511 draw + p 4 width + p 5 height + p 2 x + p 3 y + p 1 context + m ()I method_65509 getTextMargin + m (Lnet/minecraft/class_332;)V method_44386 drawBox + p 1 context + m (Lnet/minecraft/class_332;)V method_44384 renderOverlay + p 1 context + m (Lnet/minecraft/class_332;IIF)V method_44389 renderContents + p 3 mouseY + p 2 mouseX + p 4 deltaTicks + p 1 context + m (II)Z method_65510 isVisible + p 1 textTop + p 2 textBottom + m ()I method_65513 getTextX + m ()I method_65512 getPadding + m ()I method_65514 getTextY +c net/minecraft/class_11747 net/minecraft/client/sound/EndLightFlashSoundInstance + f F field_62053 lightFlashYaw + f Lnet/minecraft/class_4184; field_62051 camera + f F field_62052 lightFlashPitch + m ()V method_73254 update + m (Lnet/minecraft/class_3414;Lnet/minecraft/class_3419;Lnet/minecraft/class_5819;Lnet/minecraft/class_4184;FF)V + p 4 camera + p 5 rotationDegreesX + p 6 rotationDegreesY + p 1 soundEvent + p 2 category + p 3 random +c net/minecraft/class_11746 net/minecraft/unused/packageinfo/PackageInfo11746 +c net/minecraft/util/profiling/jfr/event/ClientFpsEvent net/minecraft/util/profiling/jfr/event/ClientFpsEvent + m (I)V + p 1 fps +c net/minecraft/util/profiling/jfr/event/ClientFpsEvent$class_12171 net/minecraft/util/profiling/jfr/event/ClientFpsEvent$Names + f Ljava/lang/String; field_63651 FPS +c net/minecraft/class_10413 net/minecraft/unused/packageinfo/PackageInfo10413 +c net/minecraft/class_11745 net/minecraft/client/render/entity/feature/CopperGolemHeadBlockFeatureRenderer + f Ljava/util/function/Function; field_62047 state + f Ljava/util/function/Consumer; field_62048 matrixTransformer + m (Lnet/minecraft/class_3883;Ljava/util/function/Function;Ljava/util/function/Consumer;)V + p 3 matrixTransformer + p 2 state + p 1 context +c net/minecraft/class_10414 net/minecraft/unused/packageinfo/PackageInfo10414 +c net/minecraft/class_11729 net/minecraft/unused/packageinfo/PackageInfo11729 +c net/minecraft/class_11728 net/minecraft/world/waypoint/EntityTickProgress + m (Lnet/minecraft/class_1297;)F apply getTickProgress + p 1 entity +c net/minecraft/class_11727 net/minecraft/unused/packageinfo/PackageInfo11727 +c net/minecraft/class_1492 net/minecraft/entity/passive/AbstractDonkeyEntity + f Lnet/minecraft/class_2940; field_6943 CHEST + f Z field_57629 DEFAULT_HAS_CHEST + f Lnet/minecraft/class_4048; field_47806 babyBaseDimensions + m ()Z method_6703 hasChest + m ()V method_6705 playAddChestSound + m (Z)V method_6704 setHasChest + p 1 hasChest + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V method_45374 addChest + p 2 chest + p 1 player + m ()Lnet/minecraft/class_5132$class_5133; method_26898 createAbstractDonkeyAttributes +c net/minecraft/class_1496 net/minecraft/entity/passive/AbstractHorseEntity + f Lnet/minecraft/class_4051$class_10254; field_6956 IS_BRED_HORSE + f I field_30419 TAMED_FLAG + f I field_30423 ANGRY_FLAG + f I field_6975 soundTicks + f F field_6963 lastAngryAnimationProgress + f F field_42642 MAX_MOVEMENT_SPEED_BONUS + f I field_30424 EATING_FLAG + f I field_57630 DEFAULT_TEMPER + f F field_42643 MIN_JUMP_STRENGTH_BONUS + f F field_6976 jumpStrength + f F field_6969 eatingGrassAnimationProgress + f Z field_6960 jumping + f I field_6973 eatingTicks + f F field_6961 lastEatingAnimationProgress + f I field_6957 tailWagTicks + f Lnet/minecraft/class_10583; field_55705 ownerReference + f F field_42641 MIN_MOVEMENT_SPEED_BONUS + f Lnet/minecraft/class_2940; field_6959 HORSE_FLAGS + f I field_6970 angryTicks + f Lnet/minecraft/class_1277; field_6962 items + f Z field_57632 DEFAULT_BRED + f F field_6967 angryAnimationProgress + f Lnet/minecraft/class_4051; field_18118 PARENT_HORSE_PREDICATE + f F field_42646 MAX_HEALTH_BONUS + f I field_6955 temper + f I field_6971 eatingGrassTicks + f Z field_57633 DEFAULT_TAME + f Z field_6964 playExtraHorseSounds + f I field_30421 BRED_FLAG + f F field_6965 eatingAnimationProgress + f F field_42644 MAX_JUMP_STRENGTH_BONUS + f Z field_57631 DEFAULT_EATING_GRASS + f I field_30422 EATING_GRASS_FLAG + f F field_6966 lastEatingGrassAnimationProgress + f F field_42645 MIN_HEALTH_BONUS + m (Lnet/minecraft/class_3218;)V method_6746 walkToParent + p 1 world + m ()V method_6738 setEating + m (DDDDLnet/minecraft/class_5819;)D method_49123 calculateAttributeBaseValue + p 8 random + p 2 otherParentBase + p 0 parentBase + p 6 max + p 4 min + m (Lnet/minecraft/class_1657;)Z method_6752 bondWithPlayer + p 1 player + m ()I method_6702 getInventoryColumns + m (Z)V method_6751 setBred + p 1 bred + m (F)F method_6767 getAngryAnimationProgress + p 1 tickProgress + m (F)F method_6739 getEatingGrassAnimationProgress + p 1 tickProgress + m (Lnet/minecraft/class_5819;)V method_6001 initAttributes + p 1 random + m ()Z method_6727 isTame + m (FLnet/minecraft/class_243;)V method_45343 jump + p 1 strength + p 2 movementInput + m ()I method_6755 getMaxTemper + m ()I method_6729 getTemper + m (Z)V method_6740 setEatingGrass + p 1 eatingGrass + m ()Lnet/minecraft/class_3414; method_45376 getAmbientStandSound + m (Ljava/util/function/DoubleSupplier;)D method_6728 getChildMovementSpeedBonus + p 0 randomDoubleGetter + m ()Z method_6744 isBred + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1309;)Lnet/minecraft/class_243; method_27930 locateSafeDismountingPos + p 2 passenger + p 1 offset + m ()Lnet/minecraft/class_3414; method_6747 getAngrySound + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V method_45375 equipHorseArmor + p 2 stack + p 1 player + m (Lnet/minecraft/class_1657;)V method_6726 putPlayerOnBack + p 1 player + m (Lnet/minecraft/class_2498;)V method_6761 playWalkSound + p 1 group + m ()V method_6733 playEatingAnimation + m (Lnet/minecraft/class_2498;)Z method_49996 isWooden + p 1 soundGroup + m ()V method_6721 onChestedStatusChanged + m ()V method_6757 playAngrySound + m ()V method_71769 setNotAngry + m (I)V method_6749 setTemper + p 1 temper + m (I)V method_6737 setAngry + p 1 ticks + m (F)F method_6772 getEatingAnimationProgress + p 1 tickProgress + m (IZ)V method_6769 setHorseFlag + p 2 flag + p 1 bitmask + m ()Z method_6762 eatsGrass + m (Z)V method_6766 setTame + p 1 tame + m ()Z method_6734 canBreed + m (Lnet/minecraft/class_1799;)Z method_58392 method_58392 + p 0 stack + m (I)Z method_6730 getHorseFlag + p 1 bitmask + m ()I method_6750 getInventorySize + m (Ljava/util/function/DoubleSupplier;)D method_6774 getChildJumpStrengthBonus + p 0 randomDoubleGetter + m ()Lnet/minecraft/class_5132$class_5133; method_26899 createBaseHorseAttributes + m (Lnet/minecraft/class_1296;Lnet/minecraft/class_1496;)V method_6743 setChildAttributes + p 2 child + p 1 other + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1269; method_30009 interactHorse + p 1 player + p 2 stack + m ()Z method_45349 shouldAmbientStand + m ()V method_6723 playJumpSound + m (I)I method_49129 method_49129 + p 0 max + m ()V method_6759 wagTail + m ()Z method_75147 isControlledByMob + m ()I method_45377 getMinAmbientStandDelay + m (Lnet/minecraft/class_1309;)V method_66323 setOwner + p 1 entity + m (I)I method_6745 addTemper + p 1 difference + m (Z)V method_6760 spawnPlayerReactionParticles + p 1 positive + m ()Z method_6724 isEatingGrass + m ()V method_6764 initCustomGoals + m ()Lnet/minecraft/class_3414; method_28368 getEatSound + m ()Z method_6736 isAngry + m ()V method_6748 updateAnger + m (Lnet/minecraft/class_1296;Lnet/minecraft/class_1496;Lnet/minecraft/class_6880;DD)V method_49124 setChildAttribute + p 2 child + p 1 other + p 4 min + p 3 attribute + p 6 max + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)Z method_6742 receiveFood + p 1 player + p 2 item + m (I)I method_49130 method_49130 + p 0 max + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_241; method_49489 getControlledRotation + p 1 controllingPassenger + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_6741 method_6741 + p 1 world + p 0 entity + m (Ljava/util/function/IntUnaryOperator;)F method_6754 getChildHealthBonus + p 0 randomIntGetter + m (Lnet/minecraft/class_1263;)Z method_33338 areInventoriesDifferent + p 1 inventory +c net/minecraft/class_1496$class_12342 net/minecraft/entity/passive/AbstractHorseEntity$HorseEscapeDangerGoal + m (Lnet/minecraft/class_1496;D)V + p 2 speed +c net/minecraft/class_1495 net/minecraft/entity/passive/DonkeyEntity +c net/minecraft/class_1493 net/minecraft/entity/passive/WolfEntity + f Lnet/minecraft/class_6019; field_25371 ANGER_TIME_RANGE + f Lnet/minecraft/class_2940; field_57075 SOUND_VARIANT + f Lnet/minecraft/class_4051$class_10254; field_18004 FOLLOW_TAMED_PREDICATE + f Z field_6944 furWet + f F field_30386 WILD_MAX_HEALTH + f F field_6945 lastShakeProgress + f F field_6947 shakeProgress + f F field_6949 lastBegAnimationProgress + f Lnet/minecraft/class_2940; field_63374 ANGER_END_TIME + f Lnet/minecraft/class_1767; field_56658 DEFAULT_COLLAR_COLOR + f Lnet/minecraft/class_2940; field_6946 BEGGING + f Lnet/minecraft/class_2940; field_6950 COLLAR_COLOR + f Z field_6951 canShakeWaterOff + f Lnet/minecraft/class_2940; field_49722 VARIANT + f F field_30387 TAMED_MAX_HEALTH + f Lnet/minecraft/class_10583; field_25372 angryAt + f F field_6952 begAnimationProgress + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_39450 canSpawn + p 2 spawnReason + p 1 world + p 0 type + p 4 random + p 3 pos + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_18444 method_18444 + p 1 world + p 0 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_1493; method_6717 createChild + m (Lnet/minecraft/class_6880;)V method_68132 setSoundVariant + p 1 soundVariant + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_68128 method_68128 + p 1 soundVariantKey + m ()Lnet/minecraft/class_6880; method_58062 getVariant + m (Z)V method_6712 setBegging + p 1 begging + m ()Lnet/minecraft/class_2960; method_58061 getTextureId + m ()Z method_6710 isBegging + m ()Lnet/minecraft/class_6880; method_68131 getSoundVariant + m (Lnet/minecraft/class_11372;Lnet/minecraft/class_5321;)V method_68130 method_68130 + p 1 soundVariant + m (F)F method_61477 getShakeProgress + p 1 tickProgress + m (Lnet/minecraft/class_1282;)Z method_57304 shouldArmorAbsorbDamage + p 1 source + m (Lnet/minecraft/class_6880;)V method_58063 setVariant + p 1 variant + m ()Lnet/minecraft/class_5132$class_5133; method_26897 createWolfAttributes + m ()F method_6714 getTailAngle + m (Lnet/minecraft/class_1657;)V method_58169 tryTame + p 1 player + m ()Lnet/minecraft/class_1767; method_6713 getCollarColor + m (F)F method_6707 getFurWetBrightnessMultiplier + c Returns this wolf's brightness multiplier based on the fur wetness.\n

\nThe brightness multiplier represents how much darker the wolf gets while its fur is wet. The multiplier changes (from 0.75 to 1.0 incrementally) when a wolf shakes.\n\n@return Brightness as a float value between 0.75 and 1.0.\n@see net.minecraft.client.render.entity.model.TintableAnimalModel#setColorMultiplier(float, float, float) + p 1 tickProgress + c progress for linearly interpolating between the previous and current game state + m (F)F method_6719 getBegAnimationProgress + p 1 tickProgress + m ()V method_31167 resetShake + m (Lnet/minecraft/class_1767;)V method_6708 setCollarColor + p 1 color +c net/minecraft/class_1493$class_9345 net/minecraft/entity/passive/WolfEntity$WolfData + f Lnet/minecraft/class_6880; field_49723 variant + m (Lnet/minecraft/class_6880;)V + p 1 variant +c net/minecraft/class_1493$class_1494 net/minecraft/entity/passive/WolfEntity$AvoidLlamaGoal + f Lnet/minecraft/class_1493; field_6954 wolf + m (Lnet/minecraft/class_1493;Lnet/minecraft/class_1493;Ljava/lang/Class;FDD)V + p 7 fastSpeed + p 5 slowSpeed + p 4 distance + p 3 fleeFromType + p 2 wolf + m (Lnet/minecraft/class_1501;)Z method_6720 isScaredOf + p 1 llama +c net/minecraft/class_1498 net/minecraft/entity/passive/HorseEntity + f Lnet/minecraft/class_4048; field_47807 BABY_BASE_DIMENSIONS + f I field_57634 DEFAULT_VARIANT + f Lnet/minecraft/class_2940; field_6990 VARIANT + m ()Lnet/minecraft/class_5149; method_27077 getHorseColor + m ()Lnet/minecraft/class_5148; method_27078 getMarking + m (Lnet/minecraft/class_5149;Lnet/minecraft/class_5148;)V method_27076 setHorseVariant + p 1 color + p 2 marking + m ()I method_6788 getHorseVariant + m (I)V method_6783 setHorseVariant + p 1 variant + m (Lnet/minecraft/class_5149;)V method_47873 setHorseColor + p 1 color +c net/minecraft/class_1498$class_1499 net/minecraft/entity/passive/HorseEntity$HorseData + f Lnet/minecraft/class_5149; field_6994 color + m (Lnet/minecraft/class_5149;)V + p 1 color +c net/minecraft/class_10400 net/minecraft/client/render/item/tint/GrassTintSource + f Lcom/mojang/serialization/MapCodec; field_55233 CODEC + f F comp_3364 downfall + f F comp_3363 temperature + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65393 method_65393 + p 0 instance + m ()F comp_3364 downfall + m ()F comp_3363 temperature + m (FF)V + p 1 temperature + p 2 downfall +c net/minecraft/class_10401 net/minecraft/client/render/item/tint/TintSource + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_1309;)I method_65389 getTint + p 3 user + p 2 world + p 1 stack + m ()Lcom/mojang/serialization/MapCodec; method_65387 getCodec +c net/minecraft/class_11730 net/minecraft/unused/packageinfo/PackageInfo11730 +c net/minecraft/class_11736 net/minecraft/unused/packageinfo/PackageInfo11736 +c net/minecraft/class_10404 net/minecraft/client/render/item/tint/PotionTintSource + f Lcom/mojang/serialization/MapCodec; field_55237 CODEC + f I comp_3366 defaultColor + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65397 method_65397 + p 0 instance + m ()I comp_3366 defaultColor + m (I)V + p 1 defaultColor +c net/minecraft/class_11735 net/minecraft/client/font/Alignment + f Lnet/minecraft/class_11735; field_62009 LEFT + f Lnet/minecraft/class_11735; field_62010 CENTER + f Lnet/minecraft/class_11735; field_62011 RIGHT + m (II)I method_73214 getAdjustedX + p 1 x + p 2 width + m (ILnet/minecraft/class_327;Lnet/minecraft/class_5481;)I method_75792 getAdjustedX + p 2 textRenderer + p 3 text + p 1 x +c net/minecraft/class_10405 net/minecraft/client/data/ItemModelOutput + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_10439$class_10441;)V method_75343 accept + p 1 item + p 2 model + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_1792;)V method_65459 acceptAlias + p 1 base + p 2 alias + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_10439$class_10441;Lnet/minecraft/class_10434$class_10543;)V method_65460 accept + p 2 model + p 1 item + p 3 properties +c net/minecraft/class_10402 net/minecraft/client/render/item/tint/TintSourceTypes + f Lnet/minecraft/class_5699$class_10388; field_55235 ID_MAPPER + f Lcom/mojang/serialization/Codec; field_55234 CODEC + m ()V method_65394 bootstrap + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_65395 method_65395 + p 0 codec +c net/minecraft/class_10403 net/minecraft/client/render/item/tint/MapColorTintSource + f Lcom/mojang/serialization/MapCodec; field_55236 CODEC + f I comp_3365 defaultColor + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_65396 method_65396 + p 0 instance + m ()I comp_3365 defaultColor + m (I)V + p 1 defaultColor +c net/minecraft/class_2790 net/minecraft/network/packet/s2c/common/SynchronizeTagsS2CPacket + f Ljava/util/Map; field_12757 groups + f Lnet/minecraft/class_9139; field_48630 CODEC + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_8705;)V method_12001 apply + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_6864$class_5748;)V method_34203 method_34203 + p 1 serializedGroup + p 0 bufx + m (Lnet/minecraft/class_2540;)V method_56471 write + p 1 buf + m (Ljava/util/Map;)V + p 1 groups + m ()Ljava/util/Map; method_12000 getGroups +c net/minecraft/class_2795 net/minecraft/network/packet/c2s/play/QueryBlockNbtC2SPacket + f Lnet/minecraft/class_2338; field_12763 pos + f I field_12762 transactionId + f Lnet/minecraft/class_9139; field_48175 CODEC + m ()Lnet/minecraft/class_2338; method_12094 getPos + m (Lnet/minecraft/class_2792;)V method_12095 apply + m ()I method_12096 getTransactionId + m (ILnet/minecraft/class_2338;)V + p 2 pos + p 1 transactionId + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_55961 write + p 1 buf +c net/minecraft/class_1463 net/minecraft/entity/passive/RabbitEntity + f I field_57616 DEFAULT_MORE_CARROT_TICKS + f Lnet/minecraft/class_2960; field_51587 KILLER_BUNNY_ATTACK_DAMAGE_MODIFIER_ID + f D field_30359 ESCAPE_DANGER_SPEED + f I field_6849 jumpDuration + f Z field_6850 lastOnGround + f Lnet/minecraft/class_2940; field_6852 VARIANT + f Lnet/minecraft/class_2960; field_6846 KILLER_BUNNY + f I field_6847 moreCarrotTicks + f I field_6851 jumpTicks + f D field_30360 MELEE_ATTACK_SPEED + f I field_6848 ticksUntilJump + m ()Lnet/minecraft/class_3414; method_6615 getJumpSound + m (Lnet/minecraft/class_1463$class_7990;)V method_47853 setVariant + p 1 variant + m (DD)V method_6616 lookTowards + p 1 x + p 3 z + m ()V method_6618 startJump + m ()V method_6608 doScheduleJump + m ()Lnet/minecraft/class_5132$class_5133; method_26892 createRabbitAttributes + m (F)F method_6605 getJumpProgress + p 1 tickProgress + m ()V method_6621 disableJump + m ()V method_6611 enableJump + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1463$class_7990; method_47854 getVariantFromPos + p 1 pos + p 0 world + m (Lnet/minecraft/class_1799;)Z method_58374 method_58374 + p 0 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_1463; method_6620 createChild + m (D)V method_6606 setSpeed + p 1 speed + m ()V method_6619 scheduleJump + m ()Z method_6607 wantsCarrots + m ()Lnet/minecraft/class_1463$class_7990; method_47855 getVariant + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20669 canSpawn + p 4 random + p 0 entity + p 1 world + p 2 spawnReason + p 3 pos +c net/minecraft/class_1463$class_1470 net/minecraft/entity/passive/RabbitEntity$EatCarrotCropGoal + f Lnet/minecraft/class_1463; field_6863 rabbit + f Z field_6861 hasTarget + f Z field_6862 wantsCarrots + m (Lnet/minecraft/class_1463;)V + p 1 rabbit +c net/minecraft/class_1463$class_5197 net/minecraft/entity/passive/RabbitEntity$RabbitJumpControl + f Z field_24091 canJump + f Lnet/minecraft/class_1463; field_24090 rabbit + m ()Z method_27313 canJump + m ()Z method_27312 isActive + m (Z)V method_27311 setCanJump + p 1 canJump + m (Lnet/minecraft/class_1463;)V + p 1 rabbit +c net/minecraft/class_1463$class_7990 net/minecraft/entity/passive/RabbitEntity$Variant + f Ljava/util/function/IntFunction; field_41569 INDEX_MAPPER + f I field_41570 index + f Lnet/minecraft/class_9139; field_55966 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_41568 CODEC + f Lcom/mojang/serialization/Codec; field_56654 INDEX_CODEC + f Ljava/lang/String; field_41571 id + f Lnet/minecraft/class_1463$class_7990; field_57617 DEFAULT + f Lnet/minecraft/class_1463$class_7990; field_41567 EVIL + f Lnet/minecraft/class_1463$class_7990; field_41566 SALT + f Lnet/minecraft/class_1463$class_7990; field_41565 GOLD + f Lnet/minecraft/class_1463$class_7990; field_41564 WHITE_SPLOTCHED + f Lnet/minecraft/class_1463$class_7990; field_41563 BLACK + f Lnet/minecraft/class_1463$class_7990; field_41562 WHITE + f Lnet/minecraft/class_1463$class_7990; field_41561 BROWN + m (I)Lnet/minecraft/class_1463$class_7990; method_47857 byIndex + p 0 index + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 index + p 4 id + m ()I method_47856 getIndex +c net/minecraft/class_1463$class_1466 net/minecraft/entity/passive/RabbitEntity$RabbitData + f Lnet/minecraft/class_1463$class_7990; field_41560 variant + m (Lnet/minecraft/class_1463$class_7990;)V + p 1 variant +c net/minecraft/class_1463$class_1465 net/minecraft/entity/passive/RabbitEntity$FleeGoal + f Lnet/minecraft/class_1463; field_6853 rabbit + m (Lnet/minecraft/class_1463;Ljava/lang/Class;FDD)V + p 2 fleeFromType + p 1 rabbit + p 6 fastSpeed + p 4 slowSpeed + p 3 distance +c net/minecraft/class_1463$class_1469 net/minecraft/entity/passive/RabbitEntity$EscapeDangerGoal + f Lnet/minecraft/class_1463; field_6860 rabbit + m (Lnet/minecraft/class_1463;D)V + p 2 speed + p 1 rabbit +c net/minecraft/class_1463$class_1468 net/minecraft/entity/passive/RabbitEntity$RabbitMoveControl + f D field_6858 rabbitSpeed + f Lnet/minecraft/class_1463; field_6859 rabbit + m (Lnet/minecraft/class_1463;)V + p 1 owner +c net/minecraft/class_1462 net/minecraft/entity/passive/SalmonEntity + f Lnet/minecraft/class_2940; field_52469 VARIANT + f Ljava/lang/String; field_55007 TYPE_KEY + m ()Lnet/minecraft/class_1462$class_9869; method_61472 getVariant + m (Lnet/minecraft/class_1462$class_9869;)V method_61471 setVariant + p 1 variant + m ()F method_63008 getVariantScale +c net/minecraft/class_1462$class_9869 net/minecraft/entity/passive/SalmonEntity$Variant + f Ljava/util/function/IntFunction; field_55008 FROM_INDEX + f Lnet/minecraft/class_9139; field_55967 PACKET_CODEC + f Lnet/minecraft/class_1462$class_9869; field_57618 DEFAULT + f I field_55009 index + f Lnet/minecraft/class_3542$class_7292; field_52473 CODEC + f Ljava/lang/String; field_52474 id + f F field_53975 scale + f Lnet/minecraft/class_1462$class_9869; field_52470 SMALL + f Lnet/minecraft/class_1462$class_9869; field_52472 LARGE + f Lnet/minecraft/class_1462$class_9869; field_52471 MEDIUM + m (Ljava/lang/String;ILjava/lang/String;IF)V + p 5 scale + p 4 index + p 3 id + m ()I method_65116 getIndex +c net/minecraft/class_2797 net/minecraft/network/packet/c2s/play/ChatMessageC2SPacket + c A packet used to send a chat message to the server.\n\n

This truncates the message to at most 256 characters before sending to\nthe server on the client. If the server receives the message longer than\n256 characters, it will reject the message and disconnect the client.\n\n

If the message contains an invalid character (see {@link\nnet.minecraft.util.StringHelper#isValidChar}) or if the server\nreceives the messages in improper order. the server will\nreject the message and disconnect the client.\n\n

Messages that took more than {@link\nnet.minecraft.network.message.SignedMessage#SERVERBOUND_TIME_TO_LIVE}\nto reach the server are considered expired and log warnings on the server.\nIf the message takes more than {@link\nnet.minecraft.network.message.SignedMessage#CLIENTBOUND_TIME_TO_LIVE}\nto reach the clients (including the time it took to reach the server), the\nmessage is not considered secure anymore by the clients, and may be discarded\ndepending on the clients' options.\n\n@see net.minecraft.client.network.ClientPlayNetworkHandler#sendChatMessage\n@see net.minecraft.server.network.ServerPlayNetworkHandler#onChatMessage + f Lnet/minecraft/class_9139; field_48179 CODEC + f Lnet/minecraft/class_7635$class_7636; comp_970 acknowledgment + f Ljava/lang/String; comp_945 chatMessage + f Ljava/time/Instant; comp_946 timestamp + f Lnet/minecraft/class_7469; comp_948 signature + f J comp_947 salt + m (Lnet/minecraft/class_2540;)V method_55965 write + p 1 buf + m ()Lnet/minecraft/class_7635$class_7636; comp_970 acknowledgment + m ()Ljava/lang/String; comp_945 chatMessage + m (Lnet/minecraft/class_2792;)V method_12115 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Ljava/lang/String;Ljava/time/Instant;JLnet/minecraft/class_7469;Lnet/minecraft/class_7635$class_7636;)V + p 2 timestamp + p 3 salt + p 5 signature + p 1 chatMessage + p 6 acknowledgment + m ()Ljava/time/Instant; comp_946 timestamp + m ()Lnet/minecraft/class_7469; comp_948 signature + m ()J comp_947 salt +c net/minecraft/class_2791 net/minecraft/world/chunk/Chunk + c Represents a scoped, modifiable view of biomes, block states, fluid states and block entities. + f Z field_34549 lightOn + f Z field_34537 needsSaving + f Lnet/minecraft/class_5539; field_34544 heightLimitView + f Lnet/minecraft/class_6749; field_35468 blendingData + f [Lnet/minecraft/class_2826; field_34545 sectionArray + f Ljava/util/Map; field_34543 blockEntities + f Lorg/slf4j/Logger; field_34548 LOGGER + f Lnet/minecraft/class_5485; field_39411 generationSettings + f J field_34550 inhabitedTime + f Lnet/minecraft/class_8528; field_44708 chunkSkyLight + f Ljava/util/Map; field_34552 structureStarts + f I field_44632 MISSING_SECTION + f [Lit/unimi/dsi/fastutil/shorts/ShortList; field_34536 postProcessingLists + f Lnet/minecraft/class_2843; field_34540 upgradeData + f Ljava/util/Map; field_34553 structureReferences + f Ljava/util/Map; field_34541 heightmaps + f Lnet/minecraft/class_1923; field_34538 pos + f Ljava/util/Map; field_34542 blockEntityNbts + f Lit/unimi/dsi/fastutil/longs/LongSet; field_37052 EMPTY_STRUCTURE_REFERENCES + f Lnet/minecraft/class_6568; field_34539 chunkNoiseSampler + m (Lnet/minecraft/class_11897;[Lnet/minecraft/class_2826;)V method_38256 fillSectionArray + p 0 palettesFactory + p 1 sectionArray + m (Lnet/minecraft/class_1297;)V method_12002 addEntity + p 1 entity + m (Ljava/util/Map;)V method_12034 setStructureStarts + p 1 structureStarts + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_2487; method_20598 getPackedBlockEntityNbt + p 2 registries + p 1 pos + m (Lnet/minecraft/class_2338;)V method_12039 markBlockForPostProcessing + p 1 pos + m (Ljava/util/function/Function;)Lnet/minecraft/class_6568; method_38255 getOrCreateChunkNoiseSampler + p 1 chunkNoiseSamplerCreator + m ()Z method_39461 hasBelowZeroRetrogen + m (Lnet/minecraft/class_2487;)V method_12042 addPendingBlockEntityNbt + p 1 nbt + m (Lnet/minecraft/class_3195;)Lit/unimi/dsi/fastutil/longs/LongSet; method_38261 method_38261 + p 0 type2 + m ()Z method_12038 isLightOn + m ()Lnet/minecraft/class_6746; method_39300 getBelowZeroRetrogen + m ()Ljava/util/Set; method_12021 getBlockEntityPositions + m (Z)V method_12020 setLightOn + p 1 lightOn + m ()Ljava/util/Map; method_12016 getStructureStarts + m ()V method_65063 markNeedsSaving + m (Lit/unimi/dsi/fastutil/shorts/ShortList;I)V method_12029 markBlocksForPostProcessing + p 2 index + p 1 packedPositions + m ()Z method_12044 needsSaving + m ()Lnet/minecraft/class_2806; method_51526 getMaxStatus + c {@return the chunk status or the target status for the retrogen, whichever is later} + m (J)V method_12028 setInhabitedTime + p 1 inhabitedTime + m ()Lnet/minecraft/class_2843; method_12003 getUpgradeData + m (Lnet/minecraft/class_1923;)Lnet/minecraft/class_8942$class_11336; method_71413 createErrorReporterContext + p 0 pos + m ()Lnet/minecraft/class_6749; method_39299 getBlendingData + m (I)Lnet/minecraft/class_5713; method_32914 getGameEventDispatcher + p 1 ySectionCoord + m ()J method_12033 getInhabitedTime + m ()Lnet/minecraft/class_8942$class_11336; method_71412 getErrorReporterContext + m ()[Lit/unimi/dsi/fastutil/shorts/ShortList; method_12012 getPostProcessingLists + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;I)Lnet/minecraft/class_2680; method_12010 setBlockState + p 1 pos + p 2 state + p 3 flags + m (Lnet/minecraft/class_2902$class_2903;)Lnet/minecraft/class_2902; method_38260 method_38260 + p 1 type2 + m ()Lnet/minecraft/class_1923; method_12004 getPos + m (Lnet/minecraft/class_2586;)V method_12007 setBlockEntity + p 1 blockEntity + m (Lnet/minecraft/class_2902$class_2903;)Lnet/minecraft/class_2902; method_12032 getHeightmap + p 1 type + m (Lnet/minecraft/class_2902$class_2903;)Z method_39295 hasHeightmap + p 1 type + m (Lnet/minecraft/class_2680;)Z method_51523 method_51523 + p 0 blockState + m ()Z method_38871 hasStructureReferences + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_5485; method_44214 getOrCreateGenerationSettings + p 1 generationSettingsCreator + m (Lnet/minecraft/class_2902$class_2903;[J)V method_12037 setHeightmap + p 2 heightmap + p 1 type + m ()Lnet/minecraft/class_6763; method_12013 getBlockTickScheduler + m (Ljava/util/function/Predicate;Ljava/util/function/BiConsumer;)V method_51525 forEachBlockMatchingPredicate + p 1 predicate + p 2 consumer + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_66480 setBlockState + p 2 state + p 1 pos + m ()Z method_39297 usesOldNoise + m (J)Lnet/minecraft/class_2791$class_6745; method_39296 getTickSchedulers + p 1 time + m (Lnet/minecraft/class_2902$class_2903;II)I method_12005 sampleHeightmap + p 2 x + p 1 type + p 3 z + m ()I method_12040 getHighestNonEmptySection + m (Lnet/minecraft/class_2338;)V method_12041 removeBlockEntity + p 1 pos + m (I)Lnet/minecraft/class_2826; method_38259 getSection + p 1 yIndex + m ()Lnet/minecraft/class_2806; method_12009 getStatus + m (Lnet/minecraft/class_6780;Lnet/minecraft/class_6544$class_6552;)V method_38257 populateBiomes + p 1 biomeSupplier + p 2 sampler + m ()Z method_65069 isSerializable + m ()Ljava/util/Collection; method_12011 getHeightmaps + m ()Lnet/minecraft/class_5539; method_39460 getHeightLimitView + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_2843;Lnet/minecraft/class_5539;Lnet/minecraft/class_11897;J[Lnet/minecraft/class_2826;Lnet/minecraft/class_6749;)V + p 3 heightLimitView + p 4 palettesFactory + p 5 inhabitedTime + p 7 sectionArray + p 8 blendingData + p 1 pos + p 2 upgradeData + m ()Lnet/minecraft/class_6763; method_12014 getFluidTickScheduler + m (II)Z method_12228 areSectionsEmptyBetween + p 2 upperHeight + p 1 lowerHeight + m ()[Lnet/minecraft/class_2826; method_12006 getSectionArray + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2487; method_12024 getBlockEntityNbt + p 1 pos + m ([Lit/unimi/dsi/fastutil/shorts/ShortList;I)Lit/unimi/dsi/fastutil/shorts/ShortList; method_12026 getList + p 0 lists + p 1 index + m ()I method_12031 getHighestNonEmptySectionYOffset + m ()Z method_65064 tryMarkSaved + m ()V method_51522 refreshSurfaceY + m (J)V method_38870 increaseInhabitedTime + p 1 timeDelta +c net/minecraft/class_2791$class_11351 net/minecraft/world/chunk/Chunk$ErrorReporterContext + f Lnet/minecraft/class_1923; comp_4242 pos + m ()Lnet/minecraft/class_1923; comp_4242 pos + m (Lnet/minecraft/class_1923;)V + p 1 pos +c net/minecraft/class_2791$class_6745 net/minecraft/world/chunk/Chunk$TickSchedulers + f Ljava/util/List; comp_239 blocks + f Ljava/util/List; comp_240 fluids + m ()Ljava/util/List; comp_239 blocks + m ()Ljava/util/List; comp_240 fluids + m (Ljava/util/List;Ljava/util/List;)V + p 1 blocks + p 2 fluids +c net/minecraft/class_2792 net/minecraft/network/listener/ServerPlayPacketListener + c A server side packet listener where play stage packets from a client are processed. + m (Lnet/minecraft/class_2853;)V method_12047 onRecipeBookData + p 1 packet + m (Lnet/minecraft/class_2851;)V method_12067 onPlayerInput + p 1 packet + m (Lnet/minecraft/class_2885;)V method_12046 onPlayerInteractBlock + p 1 packet + m (Lnet/minecraft/class_10371;)V method_12084 onPickItemFromEntity + p 1 packet + m (Lnet/minecraft/class_2871;)V method_12049 onUpdateCommandBlockMinecart + p 1 packet + m (Lnet/minecraft/class_4210;)V method_19475 onUpdateDifficulty + p 1 packet + m (Lnet/minecraft/class_7640;)V method_44898 onMessageAcknowledgment + p 1 packet + m (Lnet/minecraft/class_8591;)V method_52279 onAcknowledgeReconfiguration + p 1 packet + m (Lnet/minecraft/class_5194;)V method_27273 onJigsawGenerating + p 1 packet + m (Lnet/minecraft/class_10615;)V method_66581 onSetTestBlock + p 1 packet + m (Lnet/minecraft/class_2822;)V method_12074 onQueryEntityNbt + p 1 packet + m (Lnet/minecraft/class_2863;)V method_12080 onSelectMerchantTrade + p 1 packet + m (Lnet/minecraft/class_2811;)V method_12055 onButtonClick + p 1 packet + m (Lnet/minecraft/class_2824;)V method_12062 onPlayerInteractEntity + p 1 packet + m (Lnet/minecraft/class_8875;)V method_54436 onSlotChangedState + p 1 packet + m (Lnet/minecraft/class_2797;)V method_12048 onChatMessage + p 1 packet + m (Lnet/minecraft/class_2799;)V method_12068 onClientStatus + p 1 packet + m (Lnet/minecraft/class_2795;)V method_12072 onQueryBlockNbt + p 1 packet + m (Lnet/minecraft/class_2828;)V method_12063 onPlayerMove + p 1 packet + m (Lnet/minecraft/class_7472;)V method_43667 onCommandExecution + p 1 packet + m (Lnet/minecraft/class_2848;)V method_12045 onClientCommand + p 1 packet + m (Lnet/minecraft/class_2805;)V method_12059 onRequestCommandCompletions + p 1 packet + m (Lnet/minecraft/class_2855;)V method_12060 onRenameItem + p 1 packet + m (Lnet/minecraft/class_2836;)V method_12064 onBoatPaddleState + p 1 packet + m (Lnet/minecraft/class_2873;)V method_12070 onCreativeInventoryAction + p 1 packet + m (Lnet/minecraft/class_11410;)V method_71675 onChangeGameMode + p 1 packet + m (Lnet/minecraft/class_2833;)V method_12078 onVehicleMove + p 1 packet + m (Lnet/minecraft/class_3753;)V method_16383 onUpdateJigsaw + p 1 packet + m (Lnet/minecraft/class_2884;)V method_12073 onSpectatorTeleport + p 1 packet + m (Lnet/minecraft/class_2840;)V method_12061 onCraftRequest + p 1 packet + m (Lnet/minecraft/class_2886;)V method_12065 onPlayerInteractItem + p 1 packet + m (Lnet/minecraft/class_2813;)V method_12076 onClickSlot + p 1 packet + m (Lnet/minecraft/class_2870;)V method_12077 onUpdateCommandBlock + p 1 packet + m (Lnet/minecraft/class_9836;)V method_61219 onClientTickEnd + p 1 packet + m (Lnet/minecraft/class_9837;)V method_61220 onBundleItemSelected + p 1 packet + m (Lnet/minecraft/class_2877;)V method_12071 onUpdateSign + p 1 packet + m (Lnet/minecraft/class_2868;)V method_12056 onUpdateSelectedSlot + p 1 packet + m (Lnet/minecraft/class_2875;)V method_12051 onUpdateStructureBlock + p 1 packet + m (Lnet/minecraft/class_2846;)V method_12066 onPlayerAction + p 1 packet + m (Lnet/minecraft/class_2866;)V method_12057 onUpdateBeacon + p 1 packet + m (Lnet/minecraft/class_9449;)V method_58580 onChatCommandSigned + p 1 packet + m (Lnet/minecraft/class_5427;)V method_30303 onRecipeCategoryOptions + p 1 packet + m (Lnet/minecraft/class_10387;)V method_65306 onPlayerLoaded + p 1 packet + m (Lnet/minecraft/class_4211;)V method_19476 onUpdateDifficultyLock + p 1 packet + m (Lnet/minecraft/class_7861;)V method_46367 onPlayerSession + p 1 packet + m (Lnet/minecraft/class_2793;)V method_12050 onTeleportConfirm + p 1 packet + m (Lnet/minecraft/class_8590;)V method_52278 onAcknowledgeChunks + p 1 packet + m (Lnet/minecraft/class_10616;)V method_66582 onTestInstanceBlockAction + p 1 packet + m (Lnet/minecraft/class_10370;)V method_65085 onPickItemFromBlock + p 1 packet + m (Lnet/minecraft/class_2879;)V method_12052 onHandSwing + p 1 packet + m (Lnet/minecraft/class_2842;)V method_12083 onUpdatePlayerAbilities + p 1 packet + m (Lnet/minecraft/class_9179;)V method_56619 onDebugSubscriptionRequest + p 1 packet + m (Lnet/minecraft/class_2820;)V method_12053 onBookUpdate + p 1 packet + m (Lnet/minecraft/class_2815;)V method_12054 onCloseHandledScreen + p 1 packet + m (Lnet/minecraft/class_2859;)V method_12058 onAdvancementTab + p 1 packet +c net/minecraft/class_2793 net/minecraft/network/packet/c2s/play/TeleportConfirmC2SPacket + f Lnet/minecraft/class_9139; field_48174 CODEC + f I field_12758 teleportId + m (Lnet/minecraft/class_2540;)V method_55960 write + p 1 buf + m ()I method_12086 getTeleportId + m (I)V + p 1 teleportId + m (Lnet/minecraft/class_2792;)V method_12085 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_2794 net/minecraft/world/gen/chunk/ChunkGenerator + c In charge of shaping, adding biome specific surface blocks, and carving chunks,\nas well as populating the generated chunks with {@linkplain net.minecraft.world.gen.feature.Feature features} and {@linkplain net.minecraft.entity.Entity entities}.\nBiome placement starts here, however all vanilla and most modded chunk generators delegate this to a {@linkplain net.minecraft.world.biome.source.BiomeSource biome source}. + f Ljava/util/function/Function; field_39413 generationSettingsGetter + f Lcom/mojang/serialization/Codec; field_24746 CODEC + f Ljava/util/function/Supplier; field_39412 indexedFeaturesListSupplier + f Lnet/minecraft/class_1966; field_12761 biomeSource + m (IILnet/minecraft/class_2902$class_2903;Lnet/minecraft/class_5539;Lnet/minecraft/class_7138;)I method_18028 getHeightInGround + p 2 z + p 3 heightmap + p 4 world + p 5 noiseConfig + p 1 x + m ()Lnet/minecraft/class_1966; method_12098 getBiomeSource + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5138;Lnet/minecraft/class_2791;)V method_16130 addStructureReferences + c Finds all structures that the given chunk intersects, and adds references to their starting chunks to it.\nA radius of 8 chunks around the given chunk will be searched for structure starts. + p 1 world + p 3 chunk + p 2 structureAccessor + m (Ljava/util/Set;Lnet/minecraft/class_4538;Lnet/minecraft/class_5138;ZLnet/minecraft/class_6874;Lnet/minecraft/class_1923;)Lcom/mojang/datafixers/util/Pair; method_41522 locateStructure + p 2 structureAccessor + p 3 skipReferencedStructures + p 4 placement + p 5 pos + p 0 structures + p 1 world + m ()Lcom/mojang/serialization/MapCodec; method_28506 getCodec + m (Ljava/util/Set;Lnet/minecraft/class_4538;Lnet/minecraft/class_5138;IIIZJLnet/minecraft/class_6872;)Lcom/mojang/datafixers/util/Pair; method_40146 locateRandomSpreadStructure + p 7 seed + p 9 placement + p 3 centerChunkX + p 4 centerChunkZ + p 5 radius + p 6 skipReferencedStructures + p 0 structures + p 1 world + p 2 structureAccessor + m (IILnet/minecraft/class_5539;Lnet/minecraft/class_7138;)Lnet/minecraft/class_4966; method_26261 getColumnSample + c Returns a sample of all the block states in a column for use in structure generation. + p 4 noiseConfig + p 2 z + p 3 world + p 1 x + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5138;Lnet/minecraft/class_2919;Lnet/minecraft/class_2791;Lnet/minecraft/class_1923;Lnet/minecraft/class_3449;)V method_38265 method_38265 + p 6 start + m (Lnet/minecraft/class_1966;)V + p 1 biomeSource + m (Lnet/minecraft/class_5281;Ljava/util/Set;Lnet/minecraft/class_1923;)V method_39787 method_39787 + p 2 pos + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/util/function/Predicate;Lnet/minecraft/class_3449;)V method_41052 method_41052 + p 2 start + m (Lnet/minecraft/class_5138;Lnet/minecraft/class_4076;Lnet/minecraft/class_2791;Lnet/minecraft/class_7869;Lnet/minecraft/class_1923;Lnet/minecraft/class_5455;Lnet/minecraft/class_7138;Lnet/minecraft/class_3485;Lnet/minecraft/class_5321;Lnet/minecraft/class_6880;)V method_41041 method_41041 + p 10 structureSet + m (Lnet/minecraft/class_3449;Lnet/minecraft/class_2378;)Ljava/lang/String; method_41045 method_41045 + p 1 structureTypeRegistry + m (Lnet/minecraft/class_5539;)I method_12100 getSpawnHeight + p 1 world + m (Lnet/minecraft/class_2791;)Lnet/minecraft/class_3341; method_39462 getBlockBoxForChunk + p 0 chunk + m (IILnet/minecraft/class_2902$class_2903;Lnet/minecraft/class_5539;Lnet/minecraft/class_7138;)I method_16397 getHeight + c Returns the raw noise height of a column for use in structure generation. + p 1 x + p 2 z + p 3 heightmap + p 4 world + p 5 noiseConfig + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2791;Lnet/minecraft/class_5138;)V method_12102 generateFeatures + p 3 structureAccessor + p 1 world + p 2 chunk + m (Lnet/minecraft/class_3233;)V method_12107 populateEntities + p 1 region + m ()I method_12104 getWorldHeight + m (Lnet/minecraft/class_3195;)Ljava/lang/Integer; method_38268 method_38268 + p 0 structureType + m (IILnet/minecraft/class_2902$class_2903;Lnet/minecraft/class_5539;Lnet/minecraft/class_7138;)I method_20402 getHeightOnGround + p 5 noiseConfig + p 4 world + p 3 heightmap + p 2 z + p 1 x + m (Lnet/minecraft/class_3233;JLnet/minecraft/class_7138;Lnet/minecraft/class_4543;Lnet/minecraft/class_5138;Lnet/minecraft/class_2791;)V method_12108 carve + c Generates caves for the given chunk. + p 5 biomeAccess + p 6 structureAccessor + p 7 chunk + p 1 chunkRegion + p 2 seed + p 4 noiseConfig + m (Lnet/minecraft/class_7138;Lnet/minecraft/class_6748;Lnet/minecraft/class_5138;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_38275 populateBiomes + p 3 structureAccessor + p 2 blender + p 1 noiseConfig + p 4 chunk + m ()Ljava/util/Optional; method_39301 getCodecKey + m ()V method_59825 initializeIndexedFeaturesList + m (Lnet/minecraft/class_5138;Lnet/minecraft/class_2338;Lnet/minecraft/class_3449;)Z method_41040 method_41040 + p 2 start + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_5485; method_44218 method_44218 + p 0 biomeEntry + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_7869;Lnet/minecraft/class_5138;Lnet/minecraft/class_2791;Lnet/minecraft/class_3485;Lnet/minecraft/class_5321;)V method_16129 setStructureStarts + c Determines which structures should start in the given chunk and creates their starting points. + p 1 registryManager + p 6 dimension + p 4 chunk + p 5 structureTemplateManager + p 2 placementCalculator + p 3 structureAccessor + m (Ljava/util/Set;Lnet/minecraft/class_3218;Lnet/minecraft/class_5138;Lnet/minecraft/class_2338;ZLnet/minecraft/class_6871;)Lcom/mojang/datafixers/util/Pair; method_40148 locateConcentricRingsStructure + p 3 structureAccessor + p 4 center + p 1 structures + p 2 world + p 5 skipReferencedStructures + p 6 placement + m (Lnet/minecraft/class_5138;Lnet/minecraft/class_3449;)Z method_41521 checkNotReferenced + p 1 start + p 0 structureAccessor + m (Lnet/minecraft/class_3233;Lnet/minecraft/class_5138;Lnet/minecraft/class_7138;Lnet/minecraft/class_2791;)V method_12110 buildSurface + c Places the surface blocks of the biomes after the noise has been generated. + p 2 structures + p 3 noiseConfig + p 4 chunk + p 1 region + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_5138;Lnet/minecraft/class_1311;Lnet/minecraft/class_2338;)Lnet/minecraft/class_6012; method_12113 getEntitySpawnList + p 2 accessor + p 1 biome + p 4 pos + p 3 group + m (Ljava/util/List;Lnet/minecraft/class_7138;Lnet/minecraft/class_2338;)V method_40450 appendDebugHudText + p 1 text + p 2 noiseConfig + p 3 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6885;Lnet/minecraft/class_2338;IZ)Lcom/mojang/datafixers/util/Pair; method_12103 locateStructure + c Tries to find the closest structure of a given type near a given block.\n

\nNew chunks will only be generated up to the {@link net.minecraft.world.chunk.ChunkStatus#STRUCTURE_STARTS} phase by this method.\n

\nThe radius is ignored for strongholds.\n\n@return {@code null} if no structure could be found within the given search radius + p 3 center + p 4 radius + c the search radius in chunks around the chunk the given block position is in; a radius of 0 will only search in the given chunk + p 5 skipReferencedStructures + c whether to exclude structures that were previously located (has positive\n{@link StructureStart#references}) + p 1 world + p 2 structures + m (Lnet/minecraft/class_5138;Lnet/minecraft/class_2791;Lnet/minecraft/class_4076;Lnet/minecraft/class_3195;)I method_38264 getStructureReferences + p 1 chunk + p 0 structureAccessor + p 3 structure + p 2 sectionPos + m (Lnet/minecraft/class_7059$class_7060;Lnet/minecraft/class_5138;Lnet/minecraft/class_5455;Lnet/minecraft/class_7138;Lnet/minecraft/class_3485;JLnet/minecraft/class_2791;Lnet/minecraft/class_1923;Lnet/minecraft/class_4076;Lnet/minecraft/class_5321;)Z method_41044 trySetStructureStart + p 3 dynamicRegistryManager + p 2 structureAccessor + p 5 structureManager + p 4 noiseConfig + p 1 weightedEntry + p 11 dimension + p 10 sectionPos + p 6 seed + p 9 pos + p 8 chunk + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_3449;)Z method_41047 method_41047 + p 1 start + m (Lnet/minecraft/class_7225;Lnet/minecraft/class_7138;J)Lnet/minecraft/class_7869; method_46696 createStructurePlacementCalculator + p 3 seed + p 2 noiseConfig + p 1 structureSetRegistry + m (Lit/unimi/dsi/fastutil/ints/IntSet;Lnet/minecraft/class_7510$class_6827;Lnet/minecraft/class_6796;)V method_39788 method_39788 + p 2 feature + m (Lnet/minecraft/class_6874;)Ljava/util/Set; method_41046 method_41046 + p 0 placement + m (Ljava/util/function/Function;Lnet/minecraft/class_6880;)Ljava/util/List; method_44217 method_44217 + p 1 biomeEntry + m ()I method_33730 getMinimumY + m ()I method_16398 getSeaLevel + m (Lnet/minecraft/class_6748;Lnet/minecraft/class_7138;Lnet/minecraft/class_5138;Lnet/minecraft/class_2791;)Ljava/util/concurrent/CompletableFuture; method_12088 populateNoise + c Generates the base shape of the chunk out of the basic block states as decided by this chunk generator's config. + p 4 chunk + p 3 structureAccessor + p 2 noiseConfig + p 1 blender + m (Lnet/minecraft/class_1966;Ljava/util/function/Function;)V + p 2 generationSettingsGetter + p 1 biomeSource + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_5485; method_44216 getGenerationSettings + p 1 biomeEntry +c net/minecraft/class_2788 net/minecraft/network/packet/s2c/play/SynchronizeRecipesS2CPacket + f Lnet/minecraft/class_9139; field_48012 CODEC + f Ljava/util/Map; comp_3241 itemSets + f Lnet/minecraft/class_10291$class_10293; comp_3242 stonecutterRecipes + m (Lnet/minecraft/class_2602;)V method_11997 apply + m ()Lnet/minecraft/class_10291$class_10293; comp_3242 stonecutterRecipes + m ()Ljava/util/Map; comp_3241 itemSets + m (Ljava/util/Map;Lnet/minecraft/class_10291$class_10293;)V + p 1 itemSets + p 2 stonecutterRecipes +c net/minecraft/class_2789 net/minecraft/world/border/WorldBorderStage + f I field_12755 color + f Lnet/minecraft/class_2789; field_12753 STATIONARY + f Lnet/minecraft/class_2789; field_12754 GROWING + f Lnet/minecraft/class_2789; field_12756 SHRINKING + m ()I method_11999 getColor + m (Ljava/lang/String;II)V + p 3 color +c net/minecraft/class_1474 net/minecraft/entity/passive/TropicalFishEntity + f Z field_6877 commonSpawn + f Ljava/util/List; field_41573 COMMON_VARIANTS + f Lnet/minecraft/class_2940; field_6874 VARIANT + f Lnet/minecraft/class_1474$class_7992; field_55968 DEFAULT_VARIANT + m (I)Lnet/minecraft/class_1767; method_6651 getPatternColor + p 0 variant + m ()Lnet/minecraft/class_1767; method_6658 getBaseColor + m ()I method_47863 getTropicalFishVariant + m (I)Ljava/lang/String; method_6649 getToolTipForVariant + p 0 variant + m (I)Lnet/minecraft/class_1767; method_6652 getBaseColor + p 0 variant + m ()Lnet/minecraft/class_1474$class_1475; method_66681 getVariety + m (Lnet/minecraft/class_1767;)V method_66679 setBaseColor + p 1 baseColor + m (Lnet/minecraft/class_1474$class_1475;)V method_47860 setVariety + p 1 variety + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_38985 canTropicalFishSpawn + p 4 random + p 3 pos + p 2 reason + p 1 world + p 0 type + m ()Lnet/minecraft/class_1767; method_6655 getPatternColor + m (I)Lnet/minecraft/class_1474$class_1475; method_47864 getVariety + p 0 variant + m (Lnet/minecraft/class_1767;)V method_66680 setPatternColor + p 1 patternColor + m (I)V method_47865 setTropicalFishVariant + p 1 variant + m (Lnet/minecraft/class_1474$class_1475;Lnet/minecraft/class_1767;Lnet/minecraft/class_1767;)I method_47861 getVariantId + p 0 variety + p 1 baseColor + p 2 patternColor +c net/minecraft/class_1474$class_1475 net/minecraft/entity/passive/TropicalFishEntity$Pattern + f Lnet/minecraft/class_2561; field_41581 text + f Ljava/util/function/IntFunction; field_41579 INDEX_MAPPER + f Ljava/lang/String; field_41580 id + f Lcom/mojang/serialization/Codec; field_41578 CODEC + f Lnet/minecraft/class_9139; field_55969 PACKET_CODEC + f Lnet/minecraft/class_1474$class_7991; field_41582 size + f I field_41583 index + f Lnet/minecraft/class_1474$class_1475; field_6890 DASHER + f Lnet/minecraft/class_1474$class_1475; field_6892 SPOTTY + f Lnet/minecraft/class_1474$class_1475; field_6891 BRINELY + f Lnet/minecraft/class_1474$class_1475; field_6893 FLOPPER + f Lnet/minecraft/class_1474$class_1475; field_6880 SUNSTREAK + f Lnet/minecraft/class_1474$class_1475; field_6882 SNOOPER + f Lnet/minecraft/class_1474$class_1475; field_6881 KOB + f Lnet/minecraft/class_1474$class_1475; field_6884 BLOCKFISH + f Lnet/minecraft/class_1474$class_1475; field_6883 GLITTER + f Lnet/minecraft/class_1474$class_1475; field_6888 BETTY + f Lnet/minecraft/class_1474$class_1475; field_6889 CLAYFISH + f Lnet/minecraft/class_1474$class_1475; field_6887 STRIPEY + m ()Lnet/minecraft/class_1474$class_7991; method_47867 getSize + m ()I method_47870 getIndex + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_1474$class_7991;I)V + p 3 id + p 4 size + p 5 index + m ()Lnet/minecraft/class_2561; method_47871 getText + m (I)Lnet/minecraft/class_1474$class_1475; method_47868 byIndex + p 0 index +c net/minecraft/class_1474$class_1476 net/minecraft/entity/passive/TropicalFishEntity$TropicalFishData + f Lnet/minecraft/class_1474$class_7992; field_41584 variant + m (Lnet/minecraft/class_1474;Lnet/minecraft/class_1474$class_7992;)V + p 1 leader + p 2 variant +c net/minecraft/class_1474$class_7992 net/minecraft/entity/passive/TropicalFishEntity$Variant + f Lcom/mojang/serialization/Codec; field_49236 CODEC + f Lnet/minecraft/class_1767; comp_1179 patternColor + f Lnet/minecraft/class_1767; comp_1178 baseColor + f Lnet/minecraft/class_1474$class_1475; comp_1177 pattern + m ()I method_47872 getId + m (I)V + p 1 id + m ()Lnet/minecraft/class_1474$class_1475; comp_1177 pattern + m ()Lnet/minecraft/class_1767; comp_1179 patternColor + m ()Lnet/minecraft/class_1767; comp_1178 baseColor + m (Lnet/minecraft/class_1474$class_1475;Lnet/minecraft/class_1767;Lnet/minecraft/class_1767;)V + p 1 pattern + p 2 baseColor + p 3 patternColor +c net/minecraft/class_1474$class_7991 net/minecraft/entity/passive/TropicalFishEntity$Size + f I field_41576 index + f Lnet/minecraft/class_1474$class_7991; field_41575 LARGE + f Lnet/minecraft/class_1474$class_7991; field_41574 SMALL + m (Ljava/lang/String;II)V + p 3 index +c net/minecraft/class_1473 net/minecraft/entity/passive/SnowGolemEntity + f Z field_57619 DEFAULT_HAS_PUMPKIN + f Lnet/minecraft/class_2940; field_6873 SNOW_GOLEM_FLAGS + f B field_30373 HAS_PUMPKIN_FLAG + m (DDDDLnet/minecraft/class_1680;)V method_63010 method_63010 + p 8 entity + m (Z)V method_6642 setHasPumpkin + p 1 hasPumpkin + m ()Lnet/minecraft/class_5132$class_5133; method_26894 createSnowGolemAttributes + m ()Z method_6643 hasPumpkin + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_18443 method_18443 + p 0 entity +c net/minecraft/class_1472 net/minecraft/entity/passive/SheepEntity + f Lnet/minecraft/class_1767; field_57639 DEFAULT_COLOR + f Z field_57640 DEFAULT_SHEARED + f Lnet/minecraft/class_1345; field_6869 eatGrassGoal + f Lnet/minecraft/class_2940; field_6870 COLOR + f I field_30371 MAX_GRASS_TIMER + f I field_6865 eatGrassTimer + m ()Lnet/minecraft/class_1767; method_6633 getColor + m (F)F method_6641 getHeadAngle + p 1 tickProgress + m (Lnet/minecraft/class_1799;)Z method_58375 method_58375 + p 0 stack + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1767; method_6632 selectSpawnColor + p 1 pos + p 0 world + m (Lnet/minecraft/class_1767;)V method_6631 setColor + p 1 color + m ()Lnet/minecraft/class_5132$class_5133; method_26893 createSheepAttributes + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_1472; method_6640 createChild + m (F)F method_6628 getNeckAngle + p 1 tickProgress + m (Z)V method_6635 setSheared + p 1 sheared + m ()Z method_6629 isSheared + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_61475 method_61475 + p 1 world + p 2 stack +c net/minecraft/class_1471 net/minecraft/entity/passive/TameableShoulderEntity + f I field_30372 READY_TO_SIT_COOLDOWN + f Lorg/slf4j/Logger; field_60359 LOGGER + f I field_6864 ticks + m ()Z method_6626 isReadyToSitOnPlayer + m (Lnet/minecraft/class_3222;)Z method_6627 mountOnto + p 1 player +c net/minecraft/class_1477 net/minecraft/entity/passive/SquidEntity + f Lnet/minecraft/class_243; field_54298 swimVec + f F field_6905 lastTiltAngle + f F field_6904 tentacleAngle + f F field_6907 tiltAngle + f F field_6906 lastRollAngle + f F field_6908 thrustTimer + c Timer between thrusts as the squid swims. Represented as an angle from 0 to 2PI. + f F field_6901 swimVelocityScale + c A scale factor for the squid's swimming speed.\n\nGets reset to 1 at the beginning of each thrust and gradually decreases to make the squid lurch around. + f F field_6912 thrustTimerSpeed + f F field_6900 lastTentacleAngle + f F field_6903 rollAngle + f F field_6902 lastThrustTimer + c This serves no real purpose. + f F field_6913 turningSpeed + m ()Z method_6672 hasSwimmingVector + m ()Lnet/minecraft/class_2394; method_33336 getInkParticle + m ()V method_6669 squirt + m ()Lnet/minecraft/class_3414; method_33337 getSquirtSound + m ()Lnet/minecraft/class_5132$class_5133; method_26895 createSquidAttributes + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_6671 applyBodyRotations + p 1 shootVector +c net/minecraft/class_1477$class_1478 net/minecraft/entity/passive/SquidEntity$EscapeAttackerGoal + f I field_6915 timer +c net/minecraft/class_1477$class_1479 net/minecraft/entity/passive/SquidEntity$SwimGoal + f Lnet/minecraft/class_1477; field_6917 squid + m (Lnet/minecraft/class_1477;)V + p 1 squid +c net/minecraft/class_2799 net/minecraft/network/packet/c2s/play/ClientStatusC2SPacket + f Lnet/minecraft/class_9139; field_48184 CODEC + f Lnet/minecraft/class_2799$class_2800; field_12773 mode + m (Lnet/minecraft/class_2792;)V method_12120 apply + m (Lnet/minecraft/class_2540;)V method_55968 write + p 1 buf + m (Lnet/minecraft/class_2799$class_2800;)V + p 1 mode + m ()Lnet/minecraft/class_2799$class_2800; method_12119 getMode + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_2799$class_2800 net/minecraft/network/packet/c2s/play/ClientStatusC2SPacket$Mode + f Lnet/minecraft/class_2799$class_2800; field_12775 REQUEST_STATS + f Lnet/minecraft/class_2799$class_2800; field_12774 PERFORM_RESPAWN +c net/minecraft/class_2773 net/minecraft/block/enums/WireConnection + f Ljava/lang/String; field_12685 name + f Lnet/minecraft/class_2773; field_12686 UP + f Lnet/minecraft/class_2773; field_12687 NONE + f Lnet/minecraft/class_2773; field_12689 SIDE + m ()Z method_27855 isConnected + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_2774 net/minecraft/network/packet/s2c/play/NbtQueryResponseS2CPacket + f Lnet/minecraft/class_2487; field_12690 nbt + f Lnet/minecraft/class_9139; field_48002 CODEC + f I field_12691 transactionId + m (Lnet/minecraft/class_2540;)V method_55947 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11909 apply + m ()I method_11910 getTransactionId + m ()Lnet/minecraft/class_2487; method_11911 getNbt + m (ILnet/minecraft/class_2487;)V + p 2 nbt + p 1 transactionId + m (Lnet/minecraft/class_2540;)V + p 1 buf +c net/minecraft/class_1440 net/minecraft/entity/passive/PandaEntity + f I field_30344 SNEEZING_FLAG + f Lnet/minecraft/class_4051; field_21803 ASK_FOR_BAMBOO_TARGET + f I field_30348 EATING_ANIMATION_INTERVAL + f Lnet/minecraft/class_2940; field_6771 SNEEZE_PROGRESS + f F field_6772 rollOverAnimationProgress + f I field_30343 MAIN_GENE_MUTATION_CHANCE + f I field_30347 LYING_ON_BACK_FLAG + f Lnet/minecraft/class_2940; field_6766 MAIN_GENE + f F field_6773 lastRollOverAnimationProgress + f F field_6777 sittingAnimationProgress + f Z field_6769 shouldGetRevenge + f I field_30346 SITTING_FLAG + f Lnet/minecraft/class_243; field_18277 playingJump + f Lnet/minecraft/class_2940; field_6781 HIDDEN_GENE + f F field_6774 lieOnBackAnimationProgress + f Lnet/minecraft/class_4048; field_47773 BABY_BASE_DIMENSIONS + f I field_30345 PLAYING_FLAG + f Z field_6770 shouldAttack + f Lnet/minecraft/class_2940; field_6780 EATING_TICKS + f F field_6779 lastSittingAnimationProgress + f I field_30349 HIDDEN_GENE_MUTATION_CHANCE + f Lnet/minecraft/class_1440$class_4056; field_21804 lookAtPlayerGoal + f I field_6767 playingTicks + f Lnet/minecraft/class_2940; field_6764 ASK_FOR_BAMBOO_TICKS + f Lnet/minecraft/class_2940; field_6768 PANDA_FLAGS + f F field_6775 lastLieOnBackAnimationProgress + m (F)F method_6555 getLieOnBackAnimationProgress + p 1 tickProgress + m ()I method_6528 getEatingTicks + m ()Lnet/minecraft/class_1440$class_1443; method_6525 getMainGene + m ()V method_6523 updateRollOverAnimation + m ()Z method_6527 isEating + m ()Z method_6535 isSitting + m (Lnet/minecraft/class_1799;)Z method_58371 method_58371 + p 0 stack + m ()V method_6503 updateLieOnBackAnimation + m (Lnet/minecraft/class_1440$class_1443;)V method_6529 setMainGene + p 1 gene + m (Lnet/minecraft/class_1440;Lnet/minecraft/class_1440;)V method_6515 initGenes + p 2 father + p 1 mother + m ()Z method_18442 isIdle + m (I)V method_6539 setSneezeProgress + p 1 sneezeProgress + m (Z)V method_6552 setEating + p 1 eating + m ()V method_6544 updateSittingAnimation + m ()V method_6512 playEatingAnimation + m ()Z method_6524 isScaredByThunderstorm + m ()V method_6548 sneeze + m ()V method_6536 updateEatingAnimation + m ()Lnet/minecraft/class_1440$class_1443; method_6554 getProductGene + m ()I method_6532 getSneezeProgress + m (Z)V method_6513 setSitting + p 1 sitting + m (Z)V method_6541 setPlaying + p 1 playing + m ()Z method_6549 isLazy + m (Z)V method_6505 setLyingOnBack + p 1 lyingOnBack + m ()Lnet/minecraft/class_1440$class_1443; method_6519 getRandomGene + m ()Z method_6545 isSneezing + m (Lnet/minecraft/class_1440$class_1443;)V method_6547 setHiddenGene + p 1 gene + m ()V method_6537 updatePlaying + m (I)Z method_6533 hasPandaFlag + p 1 bitmask + m ()Z method_6509 isWorried + m ()I method_6521 getAskForBambooTicks + m ()Z method_35173 isBrown + m (F)F method_6560 getRollOverAnimationProgress + p 1 tickProgress + m (I)V method_6517 setAskForBambooTicks + p 1 askForBambooTicks + m ()Z method_6550 isWeak + m (Z)V method_6546 setSneezing + p 1 sneezing + m (IZ)V method_6557 setPandaFlag + p 2 value + p 1 mask + m (F)F method_6534 getSittingAnimationProgress + p 1 tickProgress + m ()Z method_6526 isPlaying + m ()Z method_6514 isLyingOnBack + m ()Z method_6522 isPlayful + m ()Lnet/minecraft/class_5132$class_5133; method_26888 createPandaAttributes + m ()Lnet/minecraft/class_1440$class_1443; method_6508 getHiddenGene + m (I)V method_6558 setEatingTicks + p 1 eatingTicks + m ()V method_6538 resetAttributes + m ()V method_18057 stop + m (Lnet/minecraft/class_1542;)Z method_64177 canEatFromGround + p 0 itemEntity +c net/minecraft/class_1440$class_4056 net/minecraft/entity/passive/PandaEntity$LookAtEntityGoal + f Lnet/minecraft/class_1440; field_18116 panda + m (Lnet/minecraft/class_1440;Ljava/lang/Class;F)V + p 1 panda + p 3 range + p 2 targetType + m (Lnet/minecraft/class_1309;)V method_24217 setTarget + p 1 target +c net/minecraft/class_1440$class_4054 net/minecraft/entity/passive/PandaEntity$AttackGoal + f Lnet/minecraft/class_1440; field_18114 panda + m (Lnet/minecraft/class_1440;DZ)V + p 4 pauseWhenMobIdle + p 1 panda + p 2 speed +c net/minecraft/class_1440$class_1441 net/minecraft/entity/passive/PandaEntity$PandaFleeGoal + f Lnet/minecraft/class_1440; field_6782 panda + m (Lnet/minecraft/class_1440;Ljava/lang/Class;FDD)V + p 6 fastSpeed + p 3 distance + p 4 slowSpeed + p 1 panda + p 2 fleeFromType +c net/minecraft/class_1440$class_1442 net/minecraft/entity/passive/PandaEntity$PandaMateGoal + f Lnet/minecraft/class_1440; field_6784 panda + f I field_6783 nextAskPlayerForBambooAge + m (Lnet/minecraft/class_1440;D)V + p 2 chance + p 1 panda + m ()Z method_6561 isBambooClose +c net/minecraft/class_1440$class_1443 net/minecraft/entity/passive/PandaEntity$Gene + f Ljava/util/function/IntFunction; field_6786 BY_ID + f Lcom/mojang/serialization/Codec; field_41673 CODEC + f Z field_6790 recessive + f Ljava/lang/String; field_6797 name + f I field_6785 id + f Lnet/minecraft/class_1440$class_1443; field_6793 WEAK + f Lnet/minecraft/class_1440$class_1443; field_6792 BROWN + f Lnet/minecraft/class_1440$class_1443; field_6791 PLAYFUL + f Lnet/minecraft/class_1440$class_1443; field_6795 WORRIED + f Lnet/minecraft/class_1440$class_1443; field_6794 LAZY + f Lnet/minecraft/class_1440$class_1443; field_6789 AGGRESSIVE + f Lnet/minecraft/class_1440$class_1443; field_6788 NORMAL + m ()Z method_6568 isRecessive + m (Ljava/lang/String;IILjava/lang/String;Z)V + p 3 id + p 4 name + p 5 recessive + m (I)Lnet/minecraft/class_1440$class_1443; method_6566 byId + p 0 id + m (Lnet/minecraft/class_1440$class_1443;Lnet/minecraft/class_1440$class_1443;)Lnet/minecraft/class_1440$class_1443; method_6569 getProductGene + p 0 mainGene + p 1 hiddenGene + m ()I method_6564 getId + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_1440$class_1443; method_17688 createRandom + p 0 random +c net/minecraft/class_1440$class_1444 net/minecraft/entity/passive/PandaEntity$PandaRevengeGoal + f Lnet/minecraft/class_1440; field_6798 panda + m (Lnet/minecraft/class_1440;[Ljava/lang/Class;)V + p 2 noRevengeTypes + p 1 panda +c net/minecraft/class_1440$class_1445 net/minecraft/entity/passive/PandaEntity$LieOnBackGoal + f I field_6799 nextLieOnBackAge + f Lnet/minecraft/class_1440; field_6800 panda + m (Lnet/minecraft/class_1440;)V + p 1 panda +c net/minecraft/class_1440$class_1446 net/minecraft/entity/passive/PandaEntity$PandaMoveControl + f Lnet/minecraft/class_1440; field_6801 panda + m (Lnet/minecraft/class_1440;)V + p 1 panda +c net/minecraft/class_1440$class_1447 net/minecraft/entity/passive/PandaEntity$PandaEscapeDangerGoal + f Lnet/minecraft/class_1440; field_6802 panda + m (Lnet/minecraft/class_1440;D)V + p 2 speed + p 1 panda +c net/minecraft/class_1440$class_1448 net/minecraft/entity/passive/PandaEntity$PlayGoal + f Lnet/minecraft/class_1440; field_6803 panda + m (Lnet/minecraft/class_1440;)V + p 1 panda +c net/minecraft/class_1440$class_1449 net/minecraft/entity/passive/PandaEntity$PickUpFoodGoal + f I field_6804 startAge +c net/minecraft/class_1440$class_1450 net/minecraft/entity/passive/PandaEntity$SneezeGoal + f Lnet/minecraft/class_1440; field_6806 panda + m (Lnet/minecraft/class_1440;)V + p 1 panda +c net/minecraft/class_2775 net/minecraft/network/packet/s2c/play/ItemPickupAnimationS2CPacket + f Lnet/minecraft/class_9139; field_48003 CODEC + f I field_12694 entityId + f I field_12692 stackAmount + f I field_12693 collectorEntityId + m (III)V + p 3 stackAmount + p 2 collectorId + p 1 entityId + m (Lnet/minecraft/class_2540;)V method_55948 write + p 1 buf + m ()I method_11913 getStackAmount + m ()I method_11912 getCollectorEntityId + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()I method_11915 getEntityId + m (Lnet/minecraft/class_2602;)V method_11914 apply +c net/minecraft/class_2776 net/minecraft/block/enums/StructureBlockMode + f Ljava/lang/String; field_12698 name + f Lcom/mojang/serialization/Codec; field_56673 CODEC + f Lnet/minecraft/class_2561; field_26444 text + f Lnet/minecraft/class_2776; field_12697 LOAD + f Lnet/minecraft/class_2776; field_12699 CORNER + f Lnet/minecraft/class_2776; field_12695 SAVE + f Lnet/minecraft/class_2776; field_12696 DATA + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()Lnet/minecraft/class_2561; method_30844 asText +c net/minecraft/class_2770 net/minecraft/network/packet/s2c/play/StopSoundS2CPacket + f Lnet/minecraft/class_2960; field_12676 soundId + f I field_33355 SOUND_ID_MASK + f Lnet/minecraft/class_3419; field_12677 category + f I field_33354 CATEGORY_MASK + f Lnet/minecraft/class_9139; field_47999 CODEC + m (Lnet/minecraft/class_2540;)V method_55944 write + p 1 buf + m ()Lnet/minecraft/class_3419; method_11903 getCategory + m (Lnet/minecraft/class_2602;)V method_11905 apply + m ()Lnet/minecraft/class_2960; method_11904 getSoundId + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3419;)V + p 2 category + p 1 soundId +c net/minecraft/class_2771 net/minecraft/block/enums/SlabType + f Ljava/lang/String; field_12678 name + f Lnet/minecraft/class_2771; field_12682 DOUBLE + f Lnet/minecraft/class_2771; field_12681 BOTTOM + f Lnet/minecraft/class_2771; field_12679 TOP + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_2772 net/minecraft/network/packet/s2c/play/PlayerListHeaderS2CPacket + f Lnet/minecraft/class_9139; field_48001 CODEC + f Lnet/minecraft/class_2561; comp_2283 footer + f Lnet/minecraft/class_2561; comp_2282 header + m (Lnet/minecraft/class_2602;)V method_11907 apply + m ()Lnet/minecraft/class_2561; comp_2282 header + m ()Lnet/minecraft/class_2561; comp_2283 footer + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 1 header + p 2 footer +c net/minecraft/class_1438 net/minecraft/entity/passive/MooshroomEntity + f Lnet/minecraft/class_9298; field_45752 stewEffects + f Ljava/lang/String; field_45751 STEW_EFFECTS_NBT_KEY + f Ljava/util/UUID; field_18108 lightningId + f I field_30339 MUTATION_CHANCE + f Lnet/minecraft/class_2940; field_18105 VARIANT + m (Lnet/minecraft/class_1438$class_4053;)V method_47846 setVariant + p 1 variant + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_10730;)V method_63648 method_63648 + p 3 cow + m (Lnet/minecraft/class_1799;)Ljava/util/Optional; method_18436 getStewEffectFrom + p 1 flower + m (Lnet/minecraft/class_1438;)Lnet/minecraft/class_1438$class_4053; method_18434 chooseBabyVariant + p 1 mooshroom + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_1438; method_6495 createChild + m ()Lnet/minecraft/class_1438$class_4053; method_47847 getVariant + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20665 canSpawn + p 4 random + p 0 type + p 1 world + p 2 spawnReason + p 3 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_61469 method_61469 + p 1 worldx + p 2 stack +c net/minecraft/class_1438$class_4053 net/minecraft/entity/passive/MooshroomEntity$Variant + f Lnet/minecraft/class_9139; field_55962 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_41549 CODEC + f I field_55964 index + f Ljava/util/function/IntFunction; field_55963 INDEX_MAPPER + f Lnet/minecraft/class_2680; field_18112 mushroom + f Ljava/lang/String; field_18111 name + f Lnet/minecraft/class_1438$class_4053; field_57612 DEFAULT + f Lnet/minecraft/class_1438$class_4053; field_18110 BROWN + f Lnet/minecraft/class_1438$class_4053; field_18109 RED + m (I)Lnet/minecraft/class_1438$class_4053; method_66677 fromIndex + p 0 index + m ()I method_66678 getIndex + m (Ljava/lang/String;ILjava/lang/String;ILnet/minecraft/class_2680;)V + p 4 index + p 5 mushroom + p 3 name + m ()Lnet/minecraft/class_2680; method_18437 getMushroomState +c net/minecraft/class_2766 net/minecraft/block/enums/NoteBlockInstrument + f Lnet/minecraft/class_6880; field_12649 sound + f Ljava/lang/String; field_12646 name + f Lnet/minecraft/class_2766$class_7994; field_41605 type + f Lnet/minecraft/class_2766; field_18288 BANJO + f Lnet/minecraft/class_2766; field_18289 PLING + f Lnet/minecraft/class_2766; field_18284 IRON_XYLOPHONE + f Lnet/minecraft/class_2766; field_18285 COW_BELL + f Lnet/minecraft/class_2766; field_18286 DIDGERIDOO + f Lnet/minecraft/class_2766; field_18287 BIT + f Lnet/minecraft/class_2766; field_12643 SNARE + f Lnet/minecraft/class_2766; field_12644 BELL + f Lnet/minecraft/class_2766; field_12647 CHIME + f Lnet/minecraft/class_2766; field_12648 HARP + f Lnet/minecraft/class_2766; field_12645 HAT + f Lnet/minecraft/class_2766; field_41325 SKELETON + f Lnet/minecraft/class_2766; field_41326 CREEPER + f Lnet/minecraft/class_2766; field_41324 ZOMBIE + f Lnet/minecraft/class_2766; field_41329 PIGLIN + f Lnet/minecraft/class_2766; field_41327 DRAGON + f Lnet/minecraft/class_2766; field_41328 WITHER_SKELETON + f Lnet/minecraft/class_2766; field_41604 CUSTOM_HEAD + f Lnet/minecraft/class_2766; field_12654 GUITAR + f Lnet/minecraft/class_2766; field_12655 XYLOPHONE + f Lnet/minecraft/class_2766; field_12653 BASEDRUM + f Lnet/minecraft/class_2766; field_12650 FLUTE + f Lnet/minecraft/class_2766; field_12651 BASS + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_6880;Lnet/minecraft/class_2766$class_7994;)V + p 5 type + p 4 sound + p 3 name + m ()Z method_47890 hasCustomSound + c {@return whether note blocks playing this instrument should determine the sound from skulls above them} + m ()Z method_51372 isNotBaseBlock + m ()Lnet/minecraft/class_6880; method_11886 getSound + m ()Z method_47889 canBePitched + c {@return whether note blocks playing this instrument can change its pitch} +c net/minecraft/class_2766$class_7994 net/minecraft/block/enums/NoteBlockInstrument$Type + f Lnet/minecraft/class_2766$class_7994; field_41606 BASE_BLOCK + f Lnet/minecraft/class_2766$class_7994; field_41607 MOB_HEAD + f Lnet/minecraft/class_2766$class_7994; field_41608 CUSTOM +c net/minecraft/class_2767 net/minecraft/network/packet/s2c/play/PlaySoundS2CPacket + f I field_12657 fixedZ + f I field_12658 fixedY + f F field_12656 volume + f I field_12659 fixedX + f F field_12662 pitch + f Lnet/minecraft/class_6880; field_12661 sound + f J field_38820 seed + f F field_33353 COORDINATE_SCALE + f Lnet/minecraft/class_9139; field_47995 CODEC + f Lnet/minecraft/class_3419; field_12660 category + m ()J method_43236 getSeed + m ()D method_11890 getX + m ()F method_11892 getPitch + m ()Lnet/minecraft/class_6880; method_11894 getSound + m ()D method_11893 getZ + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_3419;DDDFFJ)V + p 5 y + p 7 z + p 9 volume + p 11 seed + p 10 pitch + p 1 sound + p 3 x + p 2 category + m (Lnet/minecraft/class_9129;)V + p 1 buf + m ()F method_11891 getVolume + m ()Lnet/minecraft/class_3419; method_11888 getCategory + m ()D method_11889 getY + m (Lnet/minecraft/class_9129;)V method_55942 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_11895 apply +c net/minecraft/class_2768 net/minecraft/block/enums/RailShape + f Ljava/lang/String; field_12669 name + f Lnet/minecraft/class_2768; field_12672 NORTH_WEST + f Lnet/minecraft/class_2768; field_12670 ASCENDING_NORTH + f Lnet/minecraft/class_2768; field_12671 SOUTH_WEST + f Lnet/minecraft/class_2768; field_12674 EAST_WEST + f Lnet/minecraft/class_2768; field_12667 ASCENDING_EAST + f Lnet/minecraft/class_2768; field_12668 ASCENDING_SOUTH + f Lnet/minecraft/class_2768; field_12664 SOUTH_EAST + f Lnet/minecraft/class_2768; field_12665 NORTH_SOUTH + f Lnet/minecraft/class_2768; field_12666 ASCENDING_WEST + f Lnet/minecraft/class_2768; field_12663 NORTH_EAST + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()Z method_11897 isAscending + m ()Ljava/lang/String; method_35309 getName +c net/minecraft/class_2769 net/minecraft/state/property/Property + f Lcom/mojang/serialization/Codec; field_24745 codec + f Lcom/mojang/serialization/Codec; field_25670 valueCodec + f Ljava/lang/Integer; field_24744 hashCodeCache + f Ljava/lang/Class; field_24742 type + f Ljava/lang/String; field_24743 name + c The name of this property.\n\n

Note that the name is required to match the {@linkplain\nnet.minecraft.state.StateManager#VALID_NAME_PATTERN valid name pattern}.\nOtherwise, {@link IllegalArgumentException} will be thrown during the\n{@linkplain net.minecraft.state.StateManager.Builder#validate(Property)\nvalidation of a property}. + m ()Lcom/mojang/serialization/Codec; method_35308 getCodec + m ()Ljava/lang/String; method_11899 getName + c Returns the name of this property. + m ()I method_11799 computeHashCode + m (Lnet/minecraft/class_2688;)Lnet/minecraft/class_2769$class_4933; method_30041 createValue + p 1 state + m (Ljava/lang/Comparable;)Lnet/minecraft/class_2769$class_4933; method_30042 createValue + p 1 value + m ()Ljava/lang/Class; method_11902 getType + c Returns the type of the values of this property. + m (Ljava/lang/String;Ljava/lang/Class;)V + p 2 type + p 1 name + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_2688;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_35307 parse + p 3 input + p 2 state + p 1 ops + m (Ljava/lang/Comparable;)I method_64218 ordinal + p 1 value + m ()Lcom/mojang/serialization/Codec; method_30044 getValueCodec + m ()Ljava/util/stream/Stream; method_30043 stream + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_28504 method_28504 + p 1 value + m (Ljava/lang/String;)Ljava/util/Optional; method_11900 parse + p 1 name + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/util/List; method_11898 getValues + c Returns all possible values of this property. + m (Ljava/lang/Comparable;)Ljava/lang/String; method_11901 name + c Returns the name of the given value of this property. + p 1 value + m (Lnet/minecraft/class_2688;Ljava/lang/Comparable;)Lnet/minecraft/class_2688; method_35306 method_35306 + p 2 property +c net/minecraft/class_2769$class_4933 net/minecraft/state/property/Property$Value + f Lnet/minecraft/class_2769; comp_70 property + f Ljava/lang/Comparable; comp_71 value + m ()Lnet/minecraft/class_2769; comp_70 property + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;)V + p 1 property + p 2 value + m ()Ljava/lang/Comparable; comp_71 value + m (Ljava/lang/Object;)Z equals equals + p 1 o +c net/minecraft/class_1439 net/minecraft/entity/passive/IronGolemEntity + f I field_6759 lookingAtVillagerTicksLeft + f Z field_57611 DEFAULT_PLAYER_CREATED + f I field_30338 HEALTH_PER_INGOT + f I field_6762 attackTicksLeft + f Lnet/minecraft/class_2940; field_6763 IRON_GOLEM_FLAGS + c The tracked flags of iron golems. Only has the {@code 1} bit for whether a\ngolem is {@linkplain #isPlayerCreated() created by a player}. + f Lnet/minecraft/class_6019; field_25365 ANGER_TIME_RANGE + f Lnet/minecraft/class_10583; field_25367 angryAt + f J field_63321 angerEndTime + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_6498 method_6498 + p 0 entity + p 1 world + m ()Lnet/minecraft/class_9273$class_4621; method_23347 getCrackLevel + m ()Lnet/minecraft/class_5132$class_5133; method_26886 createIronGolemAttributes + m ()I method_6501 getAttackTicksLeft + m ()F method_22328 getAttackDamage + m ()I method_6502 getLookingAtVillagerTicks + m (Z)V method_6499 setPlayerCreated + p 1 playerCreated + m ()Z method_6496 isPlayerCreated + m (Z)V method_6497 setLookingAtVillager + p 1 lookingAtVillager +c net/minecraft/class_11703 net/minecraft/data/loottable/vanilla/VanillaChargedCreeperLootTableGenerator + f Ljava/util/List; field_61880 TABLES + f Lnet/minecraft/class_7225$class_7874; comp_4561 registries + m ()Lnet/minecraft/class_7225$class_7874; comp_4561 registries + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries +c net/minecraft/class_11703$class_11704 net/minecraft/data/loottable/vanilla/VanillaChargedCreeperLootTableGenerator$Table + f Lnet/minecraft/class_5321; comp_4562 lootTable + f Lnet/minecraft/class_1792; comp_4564 item + f Lnet/minecraft/class_1299; comp_4563 entityType + m ()Lnet/minecraft/class_5321; comp_4562 lootTable + m ()Lnet/minecraft/class_1299; comp_4563 entityType + m ()Lnet/minecraft/class_1792; comp_4564 item + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_1299;Lnet/minecraft/class_1792;)V + p 1 lootTable + p 2 entityType + p 3 item +c net/minecraft/class_11702 net/minecraft/data/loottable/vanilla/VanillaHarvestLootTableGenerator + f Lnet/minecraft/class_7225$class_7874; comp_4560 registries + m ()Lnet/minecraft/class_7225$class_7874; comp_4560 registries + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries +c net/minecraft/class_11701 net/minecraft/client/texture/SpriteHolder + m (Lnet/minecraft/class_4730;)Lnet/minecraft/class_1058; method_73030 getSprite + p 1 id +c net/minecraft/class_2784 net/minecraft/world/border/WorldBorder + f D field_33643 STATIC_AREA_SIZE + f I field_12734 warningBlocks + f D field_36191 MAX_CENTER_COORDINATES + f D field_12738 centerX + f D field_12731 safeZone + f I field_12735 warningTime + f Lnet/minecraft/class_2784$class_2785; field_12736 area + f I field_12732 maxRadius + f Lcom/mojang/serialization/Codec; field_62536 CODEC + f Z field_63954 initialized + f Lnet/minecraft/class_2784$class_5200; field_63953 properties + f Ljava/util/List; field_12730 listeners + f Lnet/minecraft/class_10741; field_62537 TYPE + f D field_12733 damagePerBlock + f D field_12737 centerZ + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_61117 clampFloored + p 1 pos + m (Lnet/minecraft/class_2338;)Z method_11952 contains + p 1 pos + m (I)V method_11975 setWarningTime + c Sets the warning time of this border and notifies all listeners. + p 1 warningTime + m (Lnet/minecraft/class_1923;)Z method_11951 contains + p 1 chunkPos + m (F)D method_75888 getBoundSouth + p 1 tickProgress + m (Lnet/minecraft/class_2780;)V method_11983 addListener + p 1 listener + m (F)D method_75887 getBoundEast + p 1 tickProgress + m (I)V method_11967 setWarningBlocks + c Sets the warning blocks of this border and notifies all listeners. + p 1 warningBlocks + m (Lnet/minecraft/class_243;)Z method_61115 contains + p 1 pos + m ()D method_11971 getSafeZone + c Returns the safe zone of this border.\n\n

The default value is 5.0. + m (DD)D method_11961 getDistanceInsideBorder + p 3 z + p 1 x + m ()I method_11959 getMaxRadius + c Returns the maximum radius of this border, in blocks.\n\n

The default value is 29999984. + m ()D method_11963 getBoundEast + m (DD)Z method_35317 contains + p 3 z + p 1 x + m (Lnet/minecraft/class_238;)Z method_11966 contains + p 1 box + m (DDD)Z method_39458 contains + p 5 margin + p 3 z + p 1 x + m (D)V method_11981 setSafeZone + c Sets the safe zone of this border and notifies all listeners. + p 1 safeZone + m ()Lnet/minecraft/class_265; method_17903 asVoxelShape + m (DDD)Lnet/minecraft/class_2338; method_39538 clampFloored + p 5 z + p 1 x + p 3 y + m (DD)V method_11978 setCenter + c Sets the {@code x} and {@code z} coordinates of the center of this border,\nand notifies its area and all listeners. + p 3 z + p 1 x + m (D)V method_11969 setSize + c Sets the area of this border to a static area with the given {@code size},\nand notifies all listeners. + p 1 size + m (DDDD)Z method_61114 contains + p 3 minZ + p 1 minX + p 7 maxZ + p 5 maxX + m ()D method_11980 getCenterZ + m ()I method_11972 getWarningBlocks + c Returns the warning distance of this border, in blocks.\n

When an entity approaches the border, this is the distance from which\na warning will be displayed.\n\n

The default value is 5. + m (F)D method_75884 getBoundWest + p 1 tickProgress + m ()I method_11956 getWarningTime + c Returns the warning time of this border, in ticks.\n

Once a player goes beyond the border, this is the time before a message\nis displayed to them.\n\n

The default value is 15. + m (Lnet/minecraft/class_1297;)D method_11979 getDistanceInsideBorder + p 1 entity + m ()D method_11976 getBoundWest + m ()D method_11964 getCenterX + m (DDJJ)V method_11957 interpolateSize + p 1 fromSize + p 3 toSize + p 5 timeDuration + p 7 timeStart + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_61770 clamp + p 1 pos + m (J)V method_75885 ensureInitialized + p 1 time + m (I)V method_11973 setMaxRadius + c Sets the maximum radius of this border and notifies its area. + p 1 maxRadius + m (Lnet/minecraft/class_2784$class_5200;)V + p 1 properties + m (DDD)Lnet/minecraft/class_243; method_61769 clamp + p 5 z + p 1 x + p 3 y + m (Lnet/minecraft/class_2780;)V method_35318 removeListener + p 1 listener + m ()D method_11977 getBoundSouth + m ()D method_11965 getSize + m ()D method_11953 getDamagePerBlock + c Returns the damage increase per block beyond this border, in hearts.\n

Once an entity goes beyond the border and the safe zone, damage will be\napplied depending on the distance traveled multiplied by this damage increase.\n\n

The default value is 0.2.\n\n@see net.minecraft.entity.LivingEntity#baseTick() + m ()V method_11982 tick + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_238;)Z method_39459 canCollide + p 2 box + p 1 entity + m (D)V method_11955 setDamagePerBlock + c Sets the damage per block of this border and notifies all listeners. + p 1 damagePerBlock + m (F)D method_75886 getBoundNorth + p 1 tickProgress + m ()J method_11962 getSizeLerpTime + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_2338; method_61116 clampFloored + p 1 pos + m ()D method_11954 getSizeLerpTarget + m ()Lnet/minecraft/class_2789; method_11968 getStage + m ()Ljava/util/List; method_11970 getListeners + m ()D method_11974 getShrinkingSpeed + m ()D method_11958 getBoundNorth +c net/minecraft/class_2784$class_5200 net/minecraft/world/border/WorldBorder$Properties + f Lcom/mojang/serialization/Codec; field_62539 CODEC + f Lnet/minecraft/class_2784$class_5200; field_62538 DEFAULT + f D comp_4774 centerX + f D comp_4775 centerZ + f D comp_4777 safeZone + f D comp_4776 damagePerBlock + f D comp_4780 size + f D comp_4782 lerpTarget + f J comp_4781 lerpTime + f I comp_4778 warningBlocks + f I comp_4779 warningTime + m (DDDDIIDJD)V + p 5 damagePerBlock + p 3 centerZ + p 9 warningBlocks + p 7 safeZone + p 13 sizeLerpTime + p 10 warningTime + p 11 size + p 1 centerX + p 15 sizeLerpTarget + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_74150 method_74150 + p 0 instance + m (Lnet/minecraft/class_2784;)V + p 1 worldBorder + m ()D comp_4774 centerX + m ()D comp_4776 damagePerBlock + m ()D comp_4775 centerZ + m ()D comp_4777 safeZone + m ()I comp_4778 warningBlocks + m ()I comp_4779 warningTime + m ()J comp_4781 lerpTime + m ()D comp_4780 size + m ()D comp_4782 lerpTarget +c net/minecraft/class_2784$class_2785 net/minecraft/world/border/WorldBorder$Area + m ()V method_11990 onCenterChanged + m ()J method_11993 getSizeLerpTime + m ()Lnet/minecraft/class_2784$class_2785; method_11986 getAreaInstance + m ()Lnet/minecraft/class_265; method_17906 asVoxelShape + m (F)D method_11992 getBoundNorth + p 1 tickProgress + m ()D method_11984 getSize + m (F)D method_11991 getBoundEast + p 1 tickProgress + m ()Lnet/minecraft/class_2789; method_11995 getStage + m (F)D method_11985 getBoundSouth + p 1 tickProgress + m ()D method_11988 getSizeLerpTarget + m ()D method_11987 getShrinkingSpeed + m ()V method_11989 onMaxRadiusChanged + m (F)D method_11994 getBoundWest + p 1 tickProgress +c net/minecraft/class_2784$class_2786 net/minecraft/world/border/WorldBorder$MovingArea + f D field_12740 oldSize + f D field_12739 newSize + f J field_12741 timeStart + f J field_12742 timeEnd + f J field_63955 remainingTimeDuration + f D field_63956 currentSize + f D field_12744 timeDuration + f D field_63957 lastSize + m ()D method_75889 getLastSize + m (Lnet/minecraft/class_2784;DDJJ)V + p 8 timeStart + p 6 timeDuration + p 4 newSize + p 2 oldSize + m ()D method_75890 currentSize +c net/minecraft/class_2784$class_2787 net/minecraft/world/border/WorldBorder$StaticArea + f D field_12750 boundEast + f Lnet/minecraft/class_265; field_17653 shape + f D field_12746 boundWest + f D field_12747 size + f D field_12749 boundSouth + f D field_12745 boundNorth + m (Lnet/minecraft/class_2784;D)V + p 2 size + m ()V method_11996 recalculateBounds +c net/minecraft/class_1452 net/minecraft/entity/passive/PigEntity + f Lnet/minecraft/class_4980; field_23230 saddledComponent + f Lnet/minecraft/class_2940; field_55679 VARIANT + f Lnet/minecraft/class_2940; field_6815 BOOST_TIME + m (Lnet/minecraft/class_6880;)V method_66298 setVariant + p 1 variant + m ()Lnet/minecraft/class_6880; method_66299 getVariant + m ()Lnet/minecraft/class_5132$class_5133; method_26890 createPigAttributes + m (Lnet/minecraft/class_1799;)Z method_58372 method_58372 + p 0 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_1452; method_6574 createChild + m (Lnet/minecraft/class_1799;)Z method_58373 method_58373 + p 0 stack +c net/minecraft/class_1451 net/minecraft/entity/passive/CatEntity + c Meow. + f Lnet/minecraft/class_1391; field_6810 temptGoal + f Z field_52466 nearSleepingPlayer + f Lnet/minecraft/class_2940; field_16284 IN_SLEEPING_POSE + f Lnet/minecraft/class_5321; field_49979 DEFAULT_VARIANT + f Lnet/minecraft/class_2940; field_16292 HEAD_DOWN + f F field_16286 headDownAnimation + f Lnet/minecraft/class_1767; field_56650 DEFAULT_COLLAR_COLOR + f D field_30311 NORMAL_SPEED + f Lnet/minecraft/class_2940; field_6811 CAT_VARIANT + f F field_16288 tailCurlAnimation + f Lnet/minecraft/class_2940; field_16285 COLLAR_COLOR + f F field_16290 sleepAnimation + f Lnet/minecraft/class_1451$class_3698; field_6808 fleeGoal + f F field_16287 lastHeadDownAnimation + f D field_30310 CROUCHING_SPEED + f D field_30312 SPRINTING_SPEED + f F field_16291 lastSleepAnimation + f F field_16289 lastTailCurlAnimation + m (F)F method_16082 getSleepAnimationProgress + p 1 tickProgress + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_1451; method_6573 createChild + m (Z)V method_16088 setInSleepingPose + c Sets whether this cat is in a sleeping pose or not. + p 1 sleeping + c {@code true} if this cat is in a sleeping pose, otherwise {@code false} + m ()V method_16090 updateSleepAnimation + m ()Z method_61467 isNearSleepingPlayer + m ()Z method_16086 isInSleepingPose + c {@return whether this cat is in a sleeping pose} + m (Lnet/minecraft/class_1657;)V method_58168 tryTame + p 1 player + m ()V method_16084 updateHeadDownAnimation + m ()Lnet/minecraft/class_5132$class_5133; method_26881 createCatAttributes + m ()V method_6175 onTamedChanged + m (Lnet/minecraft/class_1799;)Z method_58365 method_58365 + p 0 stack + m (F)F method_16091 getTailCurlAnimationProgress + p 1 tickProgress + m (Lnet/minecraft/class_6880;)V method_47842 setVariant + p 1 variant + m (F)F method_16095 getHeadDownAnimationProgress + p 1 tickProgress + m ()Z method_16093 isHeadDown + m ()Lnet/minecraft/class_1767; method_16096 getCollarColor + m (Z)V method_16087 setHeadDown + p 1 headDown + m ()V method_16085 updateAnimations + m ()Lnet/minecraft/class_6880; method_47843 getVariant + m (Lnet/minecraft/class_1767;)V method_16094 setCollarColor + p 1 color + m ()V method_16089 hiss +c net/minecraft/class_1451$class_3700 net/minecraft/entity/passive/CatEntity$TemptGoal + f Lnet/minecraft/class_1451; field_17948 cat + f Lnet/minecraft/class_1657; field_16298 player + m (Lnet/minecraft/class_1451;DLjava/util/function/Predicate;Z)V + p 1 cat + p 2 speed + p 4 foodPredicate + p 5 canBeScared +c net/minecraft/class_1451$class_3699 net/minecraft/entity/passive/CatEntity$SleepWithOwnerGoal + f Lnet/minecraft/class_1657; field_16295 owner + f Lnet/minecraft/class_1451; field_16297 cat + f I field_16296 ticksOnBed + f Lnet/minecraft/class_2338; field_16294 bedPos + m ()Z method_16098 cannotSleep + m (Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_64176 method_64176 + p 2 world + p 3 stack + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2338; method_27801 method_27801 + p 1 direction + m (Lnet/minecraft/class_1451;)V + p 1 cat + m ()V method_16097 dropMorningGifts +c net/minecraft/class_1451$class_3698 net/minecraft/entity/passive/CatEntity$CatFleeGoal + f Lnet/minecraft/class_1451; field_16293 cat + m (Lnet/minecraft/class_1451;Ljava/lang/Class;FDD)V + p 4 slowSpeed + p 3 distance + p 6 fastSpeed + p 2 fleeFromType + p 1 cat +c net/minecraft/class_2780 net/minecraft/world/border/WorldBorderListener + m (Lnet/minecraft/class_2784;D)V method_11935 onSafeZoneChanged + p 1 border + p 2 safeZoneRadius + m (Lnet/minecraft/class_2784;I)V method_11932 onWarningTimeChanged + p 1 border + p 2 warningTime + m (Lnet/minecraft/class_2784;DD)V method_11930 onCenterChanged + p 2 centerX + p 1 border + p 4 centerZ + m (Lnet/minecraft/class_2784;I)V method_11933 onWarningBlocksChanged + p 1 border + p 2 warningBlockDistance + m (Lnet/minecraft/class_2784;D)V method_11929 onDamagePerBlockChanged + p 2 damagePerBlock + p 1 border + m (Lnet/minecraft/class_2784;DDJJ)V method_11931 onInterpolateSize + p 1 border + p 4 toSize + p 2 fromSize + p 6 time + m (Lnet/minecraft/class_2784;D)V method_11934 onSizeChange + p 1 border + p 2 size +c net/minecraft/class_1456 net/minecraft/entity/passive/PolarBearEntity + f Lnet/minecraft/class_10583; field_25368 angryAt + f Lnet/minecraft/class_2940; field_6840 WARNING + f F field_6838 lastWarningAnimationProgress + f Lnet/minecraft/class_6019; field_25369 ANGER_TIME_RANGE + f F field_6837 warningAnimationProgress + f I field_6839 warningSoundCooldown + f J field_63322 angerEndTime + m (Z)V method_6603 setWarning + p 1 warning + m ()Z method_6600 isWarning + m ()V method_6602 playWarningSound + m (Lnet/minecraft/class_1314;)Lnet/minecraft/class_6862; method_60725 method_60725 + p 0 polarBear + m (F)F method_6601 getWarningAnimationProgress + p 1 tickProgress + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20668 canSpawn + p 4 random + p 3 pos + p 2 spawnReason + p 1 world + p 0 type + m ()Lnet/minecraft/class_5132$class_5133; method_26891 createPolarBearAttributes +c net/minecraft/class_1456$class_1460 net/minecraft/entity/passive/PolarBearEntity$AttackGoal +c net/minecraft/class_1456$class_1457 net/minecraft/entity/passive/PolarBearEntity$ProtectBabiesGoal + c A target goal on players when this polar bear is near a baby polar bear. +c net/minecraft/class_1456$class_1459 net/minecraft/entity/passive/PolarBearEntity$PolarBearRevengeGoal +c net/minecraft/class_2781 net/minecraft/network/packet/s2c/play/EntityAttributesS2CPacket + f Ljava/util/List; field_12720 entries + f Lnet/minecraft/class_9139; field_48008 CODEC + f I field_12719 entityId + m (Lnet/minecraft/class_2602;)V method_11936 apply + m (ILjava/util/List;)V + p 2 attributes + p 1 entityId + m (ILjava/util/Collection;)V + p 2 attributes + p 1 entityId + m ()Ljava/util/List; method_11938 getEntries + m ()I method_11937 getEntityId +c net/minecraft/class_2781$class_2782 net/minecraft/network/packet/s2c/play/EntityAttributesS2CPacket$Entry + f Lnet/minecraft/class_9139; field_48010 CODEC + f Lnet/minecraft/class_9139; field_48009 MODIFIER_CODEC + f D comp_2178 base + f Lnet/minecraft/class_6880; comp_2177 attribute + f Ljava/util/Collection; comp_2179 modifiers + m (Lnet/minecraft/class_6880;DLjava/util/Collection;)V + p 4 modifiers + p 2 baseValue + p 1 attribute + m ()Lnet/minecraft/class_6880; comp_2177 attribute + m ()D comp_2178 base + m ()Ljava/util/Collection; comp_2179 modifiers +c net/minecraft/class_1454 net/minecraft/entity/passive/PufferfishEntity + f Lnet/minecraft/class_4051$class_10254; field_6834 BLOW_UP_FILTER + f I field_30353 NOT_PUFFED + f I field_30354 SEMI_PUFFED + f I field_30355 FULLY_PUFFED + f Lnet/minecraft/class_4051; field_33692 BLOW_UP_TARGET_PREDICATE + f I field_6833 inflateTicks + f Lnet/minecraft/class_2940; field_6835 PUFF_STATE + f I field_6832 deflateTicks + f I field_57615 DEFAULT_PUFF_STATE + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_6591 method_6591 + p 0 entity + p 1 world + m (I)V method_6596 setPuffState + p 1 puffState + m ()I method_6594 getPuffState + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;)V method_6593 sting + p 1 world + p 2 target + m (I)F method_6592 getScaleForPuffState + p 0 puffState +c net/minecraft/class_1454$class_1455 net/minecraft/entity/passive/PufferfishEntity$InflateGoal + f Lnet/minecraft/class_1454; field_6836 pufferfish + m (Lnet/minecraft/class_1454;)V + p 1 pufferfish +c net/minecraft/class_2783 net/minecraft/network/packet/s2c/play/EntityStatusEffectS2CPacket + f Lnet/minecraft/class_6880; field_12725 effectId + f B field_12728 flags + f Lnet/minecraft/class_9139; field_48011 CODEC + f I field_47706 KEEP_FADING_MASK + f I field_33358 SHOW_ICON_MASK + f I field_12727 entityId + f I field_33357 SHOW_PARTICLES_MASK + f I field_12726 duration + f I field_33356 AMBIENT_MASK + f I field_12729 amplifier + m (Lnet/minecraft/class_2602;)V method_11948 apply + m ()Z method_11950 isAmbient + m ()Z method_11942 shouldShowIcon + m ()Z method_11949 shouldShowParticles + m (ILnet/minecraft/class_1293;Z)V + p 2 effect + p 1 entityId + p 3 keepFading + m (Lnet/minecraft/class_9129;)V + p 1 buf + m ()Z method_55629 keepFading + m ()I method_11944 getDuration + m ()I method_11943 getEntityId + m ()Lnet/minecraft/class_6880; method_11946 getEffectId + m ()I method_11945 getAmplifier + m (Lnet/minecraft/class_9129;)V method_55954 write + p 1 buf +c net/minecraft/class_1453 net/minecraft/entity/passive/ParrotEntity + f Ljava/util/function/Predicate; field_6821 CAN_IMITATE + f Z field_6823 songPlaying + f F field_6827 lastMaxWingDeviation + f Ljava/util/Map; field_6822 MOB_SOUNDS + f F field_6819 maxWingDeviation + f F field_6818 flapProgress + f F field_6829 lastFlapProgress + f F field_6824 flapSpeed + f Lnet/minecraft/class_2338; field_6820 songSource + f Lnet/minecraft/class_2940; field_6826 VARIANT + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_3414; method_6586 getSound + p 0 imitate + m ()Lnet/minecraft/class_5132$class_5133; method_26889 createParrotAttributes + m ()Z method_6582 isSongPlaying + m ()V method_6578 flapWings + m ()Lnet/minecraft/class_1453$class_7989; method_6584 getVariant + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_5819;)Lnet/minecraft/class_3414; method_6583 getRandomSound + p 0 world + p 1 random + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;)Z method_6587 imitateNearbyMob + p 0 world + p 1 parrot + m (Lnet/minecraft/class_1453$class_7989;)V method_47848 setVariant + p 1 variant + m (Lnet/minecraft/class_5819;)F method_6580 getSoundPitch + p 0 random + m (Ljava/util/HashMap;)V method_6579 method_6579 + p 0 map + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20667 canSpawn + p 3 pos + p 4 random + p 1 world + p 2 spawnReason + p 0 type +c net/minecraft/class_1453$1 net/minecraft/entity/passive/ParrotEntity$1 + m (Lnet/minecraft/class_1308;)Z method_6590 test + m (Ljava/lang/Object;)Z test test + p 1 entity +c net/minecraft/class_1453$class_6537 net/minecraft/entity/passive/ParrotEntity$FlyOntoTreeGoal + m ()Lnet/minecraft/class_243; method_38066 locateTree +c net/minecraft/class_1453$class_7989 net/minecraft/entity/passive/ParrotEntity$Variant + f Lnet/minecraft/class_1453$class_7989; field_57614 DEFAULT + f Lcom/mojang/serialization/Codec; field_41555 CODEC + f Lnet/minecraft/class_9139; field_55965 PACKET_CODEC + f Ljava/util/function/IntFunction; field_41556 INDEX_MAPPER + f I field_41557 index + f Ljava/lang/String; field_41558 id + f Lcom/mojang/serialization/Codec; field_56653 INDEX_CODEC + f Lnet/minecraft/class_1453$class_7989; field_41554 GRAY + f Lnet/minecraft/class_1453$class_7989; field_41551 BLUE + f Lnet/minecraft/class_1453$class_7989; field_41550 RED_BLUE + f Lnet/minecraft/class_1453$class_7989; field_41553 YELLOW_BLUE + f Lnet/minecraft/class_1453$class_7989; field_41552 GREEN + m ()I method_47849 getIndex + m (Ljava/lang/String;IILjava/lang/String;)V + p 4 id + p 3 index + m (I)Lnet/minecraft/class_1453$class_7989; method_47850 byIndex + p 0 index +c net/minecraft/class_2777 net/minecraft/network/packet/s2c/play/EntityPositionS2CPacket + f Z comp_3240 onGround + f Lnet/minecraft/class_9139; field_48004 CODEC + f I comp_3237 entityId + f Ljava/util/Set; comp_3239 relatives + f Lnet/minecraft/class_10182; comp_3238 change + m (ILnet/minecraft/class_10182;Ljava/util/Set;Z)Lnet/minecraft/class_2777; method_64565 create + p 3 onGround + p 1 change + p 2 relatives + p 0 entityId + m ()Z comp_3240 onGround + m (Lnet/minecraft/class_2602;)V method_11922 apply + m ()I comp_3237 entityId + m ()Lnet/minecraft/class_10182; comp_3238 change + m ()Ljava/util/Set; comp_3239 relatives + m (ILnet/minecraft/class_10182;Ljava/util/Set;Z)V + p 1 entityId + p 2 change + p 3 relatives + p 4 onGround +c net/minecraft/class_2778 net/minecraft/block/enums/StairShape + f Ljava/lang/String; field_12714 name + f Lnet/minecraft/class_2778; field_12713 INNER_RIGHT + f Lnet/minecraft/class_2778; field_12712 INNER_LEFT + f Lnet/minecraft/class_2778; field_12710 STRAIGHT + f Lnet/minecraft/class_2778; field_12709 OUTER_RIGHT + f Lnet/minecraft/class_2778; field_12708 OUTER_LEFT + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_2779 net/minecraft/network/packet/s2c/play/AdvancementUpdateS2CPacket + f Ljava/util/List; field_12717 toEarn + f Z field_55580 showToast + f Ljava/util/Map; field_12716 toSetProgress + f Ljava/util/Set; field_12715 toRemove + f Z field_12718 clearCurrent + f Lnet/minecraft/class_9139; field_48007 CODEC + m ()Ljava/util/Set; method_11926 getAdvancementIdsToRemove + m ()Z method_11924 shouldClearCurrent + m (Lnet/minecraft/class_2602;)V method_11925 apply + m (Lnet/minecraft/class_9129;)V + p 1 buf + m ()Ljava/util/Map; method_11927 getAdvancementsToProgress + m (Lnet/minecraft/class_9129;)V method_55952 write + p 1 buf + m ()Ljava/util/List; method_11928 getAdvancementsToEarn + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_167;)V method_34197 method_34197 + p 0 buf2 + p 1 progress + m ()Z method_65970 shouldShowToast + m (ZLjava/util/Collection;Ljava/util/Set;Ljava/util/Map;Z)V + p 5 showToast + p 3 toRemove + p 4 toSetProgress + p 1 clearCurrent + p 2 toEarn +c net/minecraft/class_7640 net/minecraft/network/packet/c2s/play/MessageAcknowledgmentC2SPacket + f Lnet/minecraft/class_9139; field_48177 CODEC + f I comp_1114 offset + m (Lnet/minecraft/class_2792;)V method_44998 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_55963 write + p 1 buf + m ()I comp_1114 offset + m (I)V + p 1 offset +c net/minecraft/class_8972 net/minecraft/client/render/entity/animation/BreezeAnimations + f Lnet/minecraft/class_7184; field_52766 INHALING + f Lnet/minecraft/class_7184; field_54958 IDLING + f Lnet/minecraft/class_7184; field_47430 SLIDING + f Lnet/minecraft/class_7184; field_47429 LONG_JUMPING + f Lnet/minecraft/class_7184; field_47846 SLIDING_BACK + f Lnet/minecraft/class_7184; field_47428 SHOOTING +c net/minecraft/class_6310 net/minecraft/unused/packageinfo/PackageInfo6310 +c net/minecraft/class_8971 net/minecraft/unused/packageinfo/PackageInfo8971 +c net/minecraft/class_7641 net/minecraft/datafixer/fix/ItemRemoveBlockEntityTagFix + f Ljava/util/Set; field_39900 itemIds + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Set;)V + p 2 itemIds + p 1 outputSchema +c net/minecraft/class_6317 net/minecraft/unused/packageinfo/PackageInfo6317 +c net/minecraft/class_7648 net/minecraft/network/PacketCallbacks + c A set of callbacks for sending a packet. + f Lorg/slf4j/Logger; field_61040 LOGGER + m (Ljava/util/function/Supplier;)Lio/netty/channel/ChannelFutureListener; method_45085 of + c {@return a callback that sends {@code failurePacket} when failed} + p 0 failurePacket + m (Ljava/lang/Runnable;)Lio/netty/channel/ChannelFutureListener; method_45084 always + c {@return a callback that always runs {@code runnable}} + p 0 runnable +c net/minecraft/class_6318 net/minecraft/unused/packageinfo/PackageInfo6318 +c net/minecraft/class_7649 net/minecraft/network/message/FilterMask + f Lnet/minecraft/class_2583; field_40674 FILTERED_STYLE + f Lcom/mojang/serialization/MapCodec; field_40839 FULLY_FILTERED_CODEC + f Lcom/mojang/serialization/MapCodec; field_40838 PASS_THROUGH_CODEC + f Lnet/minecraft/class_7649$class_7650; field_39945 status + f Lcom/mojang/serialization/Codec; field_40837 CODEC + f Lcom/mojang/serialization/MapCodec; field_40840 PARTIALLY_FILTERED_CODEC + f C field_39943 FILTERED + f Lnet/minecraft/class_7649; field_39942 PASS_THROUGH + f Lnet/minecraft/class_7649; field_39941 FULLY_FILTERED + f Ljava/util/BitSet; field_39944 mask + m (Ljava/util/BitSet;Lnet/minecraft/class_7649$class_7650;)V + p 1 mask + p 2 status + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_7649;)V method_45091 writeMask + p 0 buf + p 1 mask + m ()Z method_45093 isFullyFiltered + m (Ljava/lang/String;)Ljava/lang/String; method_45089 filter + p 1 raw + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Z method_45087 isPassThrough + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_7649; method_45090 readMask + p 0 buf + m ()Lnet/minecraft/class_7649$class_7650; method_46600 getStatus + m (Ljava/util/BitSet;)V + p 1 mask + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_46256 getFilteredText + p 1 message + m ()Ljava/util/BitSet; method_46601 getMask + m (I)V method_45088 markFiltered + p 1 index + m (I)V + p 1 length +c net/minecraft/class_7649$class_7650 net/minecraft/network/message/FilterMask$FilterStatus + f Ljava/lang/String; field_40841 id + f Ljava/util/function/Supplier; field_40842 codecSupplier + f Lnet/minecraft/class_7649$class_7650; field_39947 PASS_THROUGH + f Lnet/minecraft/class_7649$class_7650; field_39948 FULLY_FILTERED + f Lnet/minecraft/class_7649$class_7650; field_39949 PARTIALLY_FILTERED + m ()Lcom/mojang/serialization/MapCodec; method_46602 getCodec + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/Supplier;)V + p 3 id + p 4 codecSupplier +c net/minecraft/class_8979 net/minecraft/client/particle/GustEmitterParticle + f I field_49127 interval + f D field_49126 deviation + m (Lnet/minecraft/class_638;DDDDII)V + p 11 interval + p 2 x + p 1 world + p 6 z + p 4 y + p 10 maxAge + p 8 deviation +c net/minecraft/class_8979$class_8980 net/minecraft/client/particle/GustEmitterParticle$Factory + f I field_49130 interval + f D field_49128 deviation + f I field_49129 maxAge + m (DII)V + p 1 deviation + p 3 maxAge + p 4 interval + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_55244 createParticle +c net/minecraft/class_6315 net/minecraft/unused/packageinfo/PackageInfo6315 +c net/minecraft/class_6316 net/minecraft/unused/packageinfo/PackageInfo6316 +c net/minecraft/class_8977 net/minecraft/client/particle/GustParticle + f Lnet/minecraft/class_4002; field_47454 spriteProvider + m (Lnet/minecraft/class_638;DDDLnet/minecraft/class_4002;)V + p 6 z + p 4 y + p 2 x + p 1 world + p 8 spriteProvider +c net/minecraft/class_8977$class_8978 net/minecraft/client/particle/GustParticle$Factory + f Lnet/minecraft/class_4002; field_47455 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_55243 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_8977$class_9481 net/minecraft/client/particle/GustParticle$SmallGustFactory + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_58749 createParticle +c net/minecraft/class_6313 net/minecraft/unused/packageinfo/PackageInfo6313 +c net/minecraft/class_7644 net/minecraft/command/argument/SignedArgumentList + c A list of parsed {@linkplain SignedArgumentType signed arguments}.\n\n@see #of + f Ljava/util/List; comp_974 arguments + m (Lcom/mojang/brigadier/ParseResults;)Z method_58774 isNotEmpty + p 0 parseResults + m (Lcom/mojang/brigadier/ParseResults;)Lnet/minecraft/class_7644; method_45043 of + c {@return a new instance of this list from {@code parseResults}} + p 0 parseResults + m (Ljava/lang/String;Lcom/mojang/brigadier/context/CommandContextBuilder;)Ljava/util/List; method_45044 collectDecoratableArguments + p 1 builder + p 0 argumentName + m (Ljava/lang/String;)Lnet/minecraft/class_7644$class_7645; method_58775 get + p 1 name + m ()Ljava/util/List; comp_974 arguments + m (Ljava/util/List;)V + p 1 arguments +c net/minecraft/class_7644$class_7645 net/minecraft/command/argument/SignedArgumentList$ParsedArgument + c A parsed signed argument, also used as the entry of {@link SignedArgumentList}. + f Lcom/mojang/brigadier/tree/ArgumentCommandNode; comp_975 node + f Ljava/lang/String; comp_1089 value + m ()Ljava/lang/String; method_45046 getNodeName + m ()Lcom/mojang/brigadier/tree/ArgumentCommandNode; comp_975 node + m ()Ljava/lang/String; comp_1089 value + m (Lcom/mojang/brigadier/tree/ArgumentCommandNode;Ljava/lang/String;)V + p 1 node + p 2 value +c net/minecraft/class_6314 net/minecraft/unused/packageinfo/PackageInfo6314 +c net/minecraft/class_6311 net/minecraft/unused/packageinfo/PackageInfo6311 +c net/minecraft/class_8974 net/minecraft/client/render/entity/model/WindChargeEntityModel + f Lnet/minecraft/class_630; field_47441 bone + f Lnet/minecraft/class_630; field_48705 windCharge + f Lnet/minecraft/class_630; field_48706 wind + m ()Lnet/minecraft/class_5607; method_55240 getTexturedModelData + m (Lnet/minecraft/class_10017;)V method_72877 setAngles +c net/minecraft/class_6312 net/minecraft/unused/packageinfo/PackageInfo6312 +c net/minecraft/class_8973 net/minecraft/client/render/entity/model/BreezeEntityModel + f Lnet/minecraft/class_11509; field_60882 idlingAnimation + f Lnet/minecraft/class_630; field_47440 rods + f Lnet/minecraft/class_630; field_47435 head + f Lnet/minecraft/class_630; field_47874 eyes + f Lnet/minecraft/class_630; field_47875 windBody + f Lnet/minecraft/class_630; field_47438 windMid + f Lnet/minecraft/class_630; field_47439 windBottom + f Lnet/minecraft/class_630; field_47437 windTop + f Lnet/minecraft/class_11509; field_60887 longJumpingAnimation + f Lnet/minecraft/class_11509; field_60886 inhalingAnimation + f Lnet/minecraft/class_11509; field_60885 slidingBackAnimation + f Lnet/minecraft/class_11509; field_60884 slidingAnimation + f Lnet/minecraft/class_11509; field_60883 shootingAnimation + m ()Lnet/minecraft/class_630; method_55821 getRods + m ()Lnet/minecraft/class_630; method_55822 getWindBody + m ()Lnet/minecraft/class_5607; method_72834 getEyesTexturedModelData + m ()Lnet/minecraft/class_5609; method_72835 createModelData + m ()Lnet/minecraft/class_630; method_55820 getEyes + m (Lnet/minecraft/class_10006;)V method_55232 setAngles + m ()Lnet/minecraft/class_5607; method_72833 getWindTexturedModelData + m ()Lnet/minecraft/class_630; method_55819 getHead + m ()Lnet/minecraft/class_5607; method_55233 getTexturedModelData +c net/minecraft/class_6309 net/minecraft/unused/packageinfo/PackageInfo6309 +c net/minecraft/class_6320 net/minecraft/unused/packageinfo/PackageInfo6320 +c net/minecraft/class_6321 net/minecraft/unused/packageinfo/PackageInfo6321 +c net/minecraft/class_8982 net/minecraft/client/particle/TrialSpawnerDetectionParticle + f Lnet/minecraft/class_4002; field_47459 spriteProvider + m (Lnet/minecraft/class_638;DDDDDDFLnet/minecraft/class_4002;)V + p 12 velocityZ + p 14 scale + p 15 spriteProvider + p 1 world + p 2 x + p 4 y + p 6 z + p 8 velocityX + p 10 velocityY +c net/minecraft/class_8982$class_8983 net/minecraft/client/particle/TrialSpawnerDetectionParticle$Factory + f Lnet/minecraft/class_4002; field_47461 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_55248 createParticle + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider +c net/minecraft/class_7659 net/minecraft/registry/ServerDynamicRegistryType + f Ljava/util/List; field_39975 VALUES + f Lnet/minecraft/class_5455$class_6890; field_39976 STATIC_REGISTRY_MANAGER + f Lnet/minecraft/class_7659; field_39973 DIMENSIONS + f Lnet/minecraft/class_7659; field_39974 RELOADABLE + f Lnet/minecraft/class_7659; field_39971 STATIC + f Lnet/minecraft/class_7659; field_39972 WORLDGEN + m ()Lnet/minecraft/class_7780; method_45139 createCombinedDynamicRegistries +c net/minecraft/class_6329 net/minecraft/server/command/RaidCommand + m (Lnet/minecraft/class_2168;)I method_36198 executeSpawnLeader + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36207 method_36207 + p 0 context + m (Lnet/minecraft/class_2168;)I method_36201 executeStop + p 0 source + m (Lnet/minecraft/class_2168;)I method_36203 executeCheck + p 0 source + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_36192 register + p 1 registryAccess + p 0 dispatcher + m (Lnet/minecraft/class_2168;I)I method_36195 executeSetOmen + p 1 level + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36200 method_36200 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36202 method_36202 + p 0 context + m (Lnet/minecraft/class_2168;I)I method_36199 executeStart + p 1 level + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36204 method_36204 + p 0 context + m (Lnet/minecraft/class_2168;)I method_36194 executeGlow + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36206 method_36206 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36193 method_36193 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36197 method_36197 + p 0 context + m (Lnet/minecraft/class_3222;)Lnet/minecraft/class_3765; method_36191 getRaid + p 0 player + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2561;)I method_36196 executeSound + p 1 type + p 0 source +c net/minecraft/class_6326 net/minecraft/server/command/DebugMobSpawningCommand + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1311;Lnet/minecraft/class_2338;)I method_36186 execute + p 1 group + p 0 source + p 2 pos + m (Lnet/minecraft/class_1311;Lcom/mojang/brigadier/context/CommandContext;)I method_36183 method_36183 + p 1 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_36184 register + p 0 dispatcher +c net/minecraft/class_8989 net/minecraft/client/render/entity/feature/BreezeWindFeatureRenderer + f Lnet/minecraft/class_8973; field_47485 model + f Lnet/minecraft/class_2960; field_47484 TEXTURE + m (F)F method_55273 getXOffset + p 1 tickProgress + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10006;FF)V method_55275 render + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;)V + p 2 entityModels + p 1 context +c net/minecraft/class_6327 net/minecraft/server/command/DebugPathCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_33387 SOURCE_NOT_MOB_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_33388 PATH_NOT_FOUND_EXCEPTION + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_33389 TARGET_NOT_REACHED_EXCEPTION + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_36187 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36188 method_36188 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;)I method_36190 execute + p 1 pos + p 0 source +c net/minecraft/class_8988 net/minecraft/client/render/entity/feature/BreezeEyesFeatureRenderer + f Lnet/minecraft/class_8973; field_61803 breezeModel + f Lnet/minecraft/class_1921; field_47889 TEXTURE + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_5599;)V + p 1 context + p 2 entityModels + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10006;FF)V method_55272 render +c net/minecraft/class_7655 net/minecraft/registry/RegistryLoader + f Ljava/util/Comparator; field_53753 KEY_COMPARATOR + f Lnet/minecraft/class_9248; field_49024 EXPERIMENTAL_ENTRY_INFO + f Lorg/slf4j/Logger; field_39970 LOGGER + f Ljava/util/List; field_39968 DYNAMIC_REGISTRIES + f Ljava/util/function/Function; field_49025 RESOURCE_ENTRY_INFO_GETTER + f Ljava/util/List; field_48709 SYNCED_REGISTRIES + f Ljava/util/List; field_39969 DIMENSION_REGISTRIES + m (Ljava/util/Map;)Lnet/minecraft/class_148; method_45126 writeAndCreateLoadingException + p 0 exceptions + m (Lnet/minecraft/class_2385;)Lnet/minecraft/class_6903$class_7862; method_46620 createInfo + p 0 registry + m (Ljava/util/Map;Lnet/minecraft/class_5912;Lnet/minecraft/class_7655$class_9158;Lnet/minecraft/class_6903$class_7863;)V method_56517 method_56517 + p 3 infoGetter + p 2 loader + m (Ljava/lang/Boolean;)Lcom/mojang/serialization/Lifecycle; method_56913 method_56913 + p 0 vanilla + m (Ljava/util/Map;)V method_62809 writeLoadingError + p 0 exceptions + m (Ljava/util/List;Ljava/util/List;)Lnet/minecraft/class_6903$class_7863; method_46619 createInfoGetter + p 1 additionalRegistries + p 0 registries + m (Ljava/io/PrintWriter;Ljava/util/Map$Entry;)V method_62804 method_62804 + p 1 entry + m (Lnet/minecraft/class_7655$class_7656;Ljava/util/List;Ljava/util/List;)Lnet/minecraft/class_5455$class_6890; method_45121 load + p 2 entries + p 0 loadable + p 1 registries + m (Ljava/util/Map;Lnet/minecraft/class_7225$class_7226;)V method_46622 method_46622 + p 1 registry + m (Ljava/util/Optional;)Lnet/minecraft/class_9248; method_56914 method_56914 + p 0 knownPacks + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_7655$class_9158;Lnet/minecraft/class_6903$class_7863;)V method_56514 method_56514 + p 2 infoGetter + p 1 loader + m (Ljava/util/Map;Lnet/minecraft/class_5912;Ljava/util/List;Ljava/util/List;)Lnet/minecraft/class_5455$class_6890; method_56519 loadFromNetwork + p 3 entries + p 0 data + p 1 factory + p 2 registries + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_6903$class_7863;Lnet/minecraft/class_2385;Lcom/mojang/serialization/Decoder;Ljava/util/Map;)V method_45122 loadFromResource + p 4 errors + p 3 elementDecoder + p 2 registry + p 1 infoGetter + p 0 resourceManager + m (Ljava/lang/StringBuilder;Ljava/util/Map$Entry;)V method_62805 method_62805 + p 1 entry + m (Lnet/minecraft/class_2385;Lcom/mojang/serialization/Decoder;Lnet/minecraft/class_6903;Lnet/minecraft/class_5321;Lnet/minecraft/class_3298;Lnet/minecraft/class_9248;)V method_56915 parseAndAdd + p 5 entryInfo + p 4 resource + p 3 key + p 2 ops + p 1 decoder + p 0 registry + m (Lnet/minecraft/class_7225$class_7226;)Lnet/minecraft/class_6903$class_7862; method_46618 createInfo + p 0 registry + m (Ljava/util/Map;Lnet/minecraft/class_7655$class_7657;)Lnet/minecraft/class_7655$class_9158; method_45127 method_45127 + p 1 entry + m (Ljava/util/Map;)Lnet/minecraft/class_148; method_62810 createLoadingException + p 0 exceptions + m (Ljava/util/Map;Lnet/minecraft/class_7655$class_9158;)V method_45128 method_45128 + p 1 loader + m (Ljava/io/PrintWriter;Ljava/util/Map$Entry;)V method_62807 method_62807 + p 1 element + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_2960; method_62808 method_62808 + p 0 entry + m (Lnet/minecraft/class_3300;Ljava/util/List;Ljava/util/List;)Lnet/minecraft/class_5455$class_6890; method_56515 loadFromResource + p 0 resourceManager + p 1 registries + p 2 entries + m (Ljava/util/Map;Lnet/minecraft/class_7655$class_9158;)V method_46621 method_46621 + p 1 loader + m (Lnet/minecraft/class_7655$class_7656;Lnet/minecraft/class_6903$class_7863;Lnet/minecraft/class_7655$class_9158;)V method_45120 method_45120 + p 2 loader + m (Ljava/util/Map;Lnet/minecraft/class_5912;Lnet/minecraft/class_6903$class_7863;Lnet/minecraft/class_2385;Lcom/mojang/serialization/Decoder;Ljava/util/Map;)V method_56518 loadFromNetwork + p 5 loadingErrors + p 4 decoder + p 3 registry + p 2 infoGetter + p 1 factory + p 0 data +c net/minecraft/class_7655$class_7657 net/minecraft/registry/RegistryLoader$Entry + f Z comp_2664 requiredNonEmpty + f Lnet/minecraft/class_5321; comp_985 key + f Lcom/mojang/serialization/Codec; comp_986 elementCodec + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;)V + p 2 codec + p 1 key + m (Ljava/util/function/BiConsumer;)V method_54920 addToCloner + p 1 callback + m (Lcom/mojang/serialization/Lifecycle;Ljava/util/Map;)Lnet/minecraft/class_7655$class_9158; method_45131 getLoader + p 2 errors + p 1 lifecycle + m ()Lnet/minecraft/class_5321; comp_985 key + m ()Z comp_2664 requiredNonEmpty + m ()Lcom/mojang/serialization/Codec; comp_986 elementCodec + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;Z)V + p 1 key + p 2 elementCodec + p 3 requiredNonEmpty +c net/minecraft/class_7655$class_7656 net/minecraft/registry/RegistryLoader$RegistryLoadable + m (Lnet/minecraft/class_7655$class_9158;Lnet/minecraft/class_6903$class_7863;)V apply apply + p 1 loader + p 2 infoGetter +c net/minecraft/class_7655$class_9158 net/minecraft/registry/RegistryLoader$Loader + f Ljava/util/Map; comp_2247 loadingErrors + f Lnet/minecraft/class_7655$class_7657; comp_2245 data + f Lnet/minecraft/class_2385; comp_2246 registry + m (Ljava/util/Map;Lnet/minecraft/class_5912;Lnet/minecraft/class_6903$class_7863;)V method_56521 loadFromNetwork + p 3 infoGetter + p 2 factory + p 1 data + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_6903$class_7863;)V method_56520 loadFromResource + p 2 infoGetter + p 1 resourceManager + m ()Lnet/minecraft/class_7655$class_7657; comp_2245 data + m ()Lnet/minecraft/class_2385; comp_2246 registry + m ()Ljava/util/Map; comp_2247 loadingErrors + m (Lnet/minecraft/class_7655$class_7657;Lnet/minecraft/class_2385;Ljava/util/Map;)V + p 1 data + p 2 registry + p 3 loadingErrors +c net/minecraft/class_7655$class_9841 net/minecraft/registry/RegistryLoader$ElementsAndTags + f Ljava/util/List; comp_2896 elements + f Lnet/minecraft/class_6864$class_5748; comp_2897 tags + m ()Lnet/minecraft/class_6864$class_5748; comp_2897 tags + m ()Ljava/util/List; comp_2896 elements + m (Ljava/util/List;Lnet/minecraft/class_6864$class_5748;)V + p 1 elements + p 2 tags +c net/minecraft/class_6324 net/minecraft/unused/packageinfo/PackageInfo6324 +c net/minecraft/class_8987 net/minecraft/client/render/entity/WindChargeEntityRenderer + f Lnet/minecraft/class_2960; field_47477 TEXTURE + f Lnet/minecraft/class_8974; field_47478 model + m (F)F method_55268 getXOffset + p 1 tickProgress +c net/minecraft/class_6325 net/minecraft/unused/packageinfo/PackageInfo6325 +c net/minecraft/class_8986 net/minecraft/client/render/entity/BreezeEntityRenderer + f Lnet/minecraft/class_2960; field_47475 TEXTURE + m (Lnet/minecraft/class_10006;)Lnet/minecraft/class_2960; method_55267 getTexture + m ()Lnet/minecraft/class_10006; method_62390 createRenderState + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_10006;F)V method_62391 updateRenderState +c net/minecraft/class_6322 net/minecraft/unused/packageinfo/PackageInfo6322 +c net/minecraft/class_8985 net/minecraft/client/render/debug/BreezeDebugRenderer + f I field_47468 ORANGE + f I field_47469 RED + f I field_47466 LIGHT_BLUE + f I field_47467 GREEN + f I field_47465 PINK + f Lnet/minecraft/class_310; field_47472 client + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_243;)V method_75426 method_75426 + p 1 targetPos + m (Lnet/minecraft/class_638;Lnet/minecraft/class_1297;Lnet/minecraft/class_12007;)V method_75428 method_75428 + p 3 data + p 2 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_2338;)V method_75427 method_75427 + p 1 jumpTarget + m (Lnet/minecraft/class_310;)V + p 1 client + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_243; method_75425 method_75425 + p 1 target +c net/minecraft/class_7654 net/minecraft/resource/ResourceFinder + f Ljava/lang/String; field_39966 directoryName + f Ljava/lang/String; field_39967 fileExtension + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_45112 toResourcePath + c {@return an identifier that is used as a file path for locating the resource {@code id}} + p 1 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2960; method_45115 toResourceId + c {@return an identifier of the resource located at the file path {@code path}} + p 1 path + m (Lnet/minecraft/class_2960;)Z method_45117 method_45117 + p 1 path + m (Lnet/minecraft/class_2960;)Z method_45118 method_45118 + p 1 path + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_7654; method_65309 json + p 0 registryRef + m (Ljava/lang/String;)Lnet/minecraft/class_7654; method_45114 json + p 0 directoryName + m (Lnet/minecraft/class_3300;)Ljava/util/Map; method_45116 findAllResources + p 1 resourceManager + m (Lnet/minecraft/class_3300;)Ljava/util/Map; method_45113 findResources + p 1 resourceManager + m (Ljava/lang/String;Ljava/lang/String;)V + p 2 fileExtension + p 1 directoryName +c net/minecraft/class_6323 net/minecraft/unused/packageinfo/PackageInfo6323 +c net/minecraft/class_8984 net/minecraft/client/render/block/entity/TrialSpawnerBlockEntityRenderer + f Lnet/minecraft/class_898; field_47464 entityRenderDispatcher + m (Lnet/minecraft/class_11973;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_55254 render + m (Lnet/minecraft/class_5614$class_5615;)V + p 1 context + m (Lnet/minecraft/class_8961;Lnet/minecraft/class_11973;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74395 updateRenderState + m (Lnet/minecraft/class_11973;FLnet/minecraft/class_1297;Lnet/minecraft/class_898;DD)V method_74396 updateSpawnerRenderState + p 0 state + p 1 tickProgress + p 2 displayEntity + p 3 entityRenderDispatcher + p 4 lastDisplayEntityRotation + p 6 displayEntityRotation + m ()Lnet/minecraft/class_11973; method_74394 createRenderState +c net/minecraft/class_8950 net/minecraft/entity/mob/BreezeBrain + f I field_52498 TIME_BEFORE_FORGETTING_TARGET + f Ljava/util/List; field_47288 MEMORY_MODULES + f Ljava/util/List; field_47287 SENSORS + m (Lnet/minecraft/class_8949;)V method_55748 updateActivities + p 0 breeze + m (Lnet/minecraft/class_4095;)V method_55018 addCoreTasks + p 0 brain + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;)Ljava/util/Optional; method_64470 method_64470 + p 0 world + p 1 breeze + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_55016 create + p 0 breeze + p 1 brain + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_4095;)V method_55019 addFightTasks + p 1 brain + p 0 breeze + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;)Ljava/util/Optional; method_55749 method_55749 + p 0 world + p 1 breeze + m (Lnet/minecraft/class_4095;)V method_55750 addIdleTasks + p 0 brain +c net/minecraft/class_8950$class_8951 net/minecraft/entity/mob/BreezeBrain$SlideAroundTask + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_18982 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_18981 finishRunning +c net/minecraft/class_8957 net/minecraft/recipe/RawShapedRecipe + f I field_51641 ingredientCount + f Ljava/util/Optional; field_51640 data + f I field_47322 MAX_WIDTH_AND_HEIGHT + f Z field_51642 symmetrical + f I field_51637 width + f Ljava/util/List; field_51639 ingredients + f Lnet/minecraft/class_9139; field_48359 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_47321 CODEC + f C field_52602 SPACE + f I field_51638 height + m (IILjava/util/List;Ljava/util/Optional;)V + p 1 width + p 4 data + p 3 ingredients + p 2 height + m (Lnet/minecraft/class_8957;)Lcom/mojang/serialization/DataResult; method_55081 method_55081 + p 0 recipe + m ()I method_59995 getWidth + m (Ljava/lang/String;)I method_55083 findFirstSymbol + p 0 line + m (Ljava/util/Map;Ljava/util/List;)Lnet/minecraft/class_8957; method_55085 create + p 1 pattern + p 0 key + m (Lnet/minecraft/class_8957;)Ljava/util/List; method_61694 method_61694 + p 0 recipe + m (Ljava/lang/String;)I method_55089 findLastSymbol + p 0 line + m (Lnet/minecraft/class_8957;)Ljava/lang/Integer; method_61696 method_61696 + p 0 recipe + m (Ljava/util/Map;[Ljava/lang/String;)Lnet/minecraft/class_8957; method_55086 create + p 0 key + p 1 pattern + m (Ljava/lang/Integer;Ljava/lang/Integer;Ljava/util/List;)Lnet/minecraft/class_8957; method_61695 create + p 2 ingredients + p 1 height + p 0 width + m (Lnet/minecraft/class_9694;Z)Z method_55079 matches + p 2 mirrored + p 1 input + m ()Ljava/util/List; method_59997 getIngredients + m ()I method_59996 getHeight + m (Ljava/util/List;)[Ljava/lang/String; method_55084 removePadding + c Removes empty space from around the recipe pattern.\n\n

Turns patterns such as:\n

\n{@code\n"   o"\n"   a"\n"    "\n}\n
\nInto:\n
\n{@code\n"o"\n"a"\n}\n
\n\n@return a new recipe pattern with all leading and trailing empty rows/columns removed + p 0 pattern + m (Lnet/minecraft/class_8957$class_8958;)Lcom/mojang/serialization/DataResult; method_55080 fromData + p 0 data + m (Lnet/minecraft/class_9694;)Z method_55078 matches + p 1 input + m (Lnet/minecraft/class_8957;)Ljava/lang/Integer; method_61697 method_61697 + p 0 recipe +c net/minecraft/class_8957$class_8958 net/minecraft/recipe/RawShapedRecipe$Data + f Lcom/mojang/serialization/MapCodec; field_47323 CODEC + f Lcom/mojang/serialization/Codec; field_47325 KEY_ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_47324 PATTERN_CODEC + f Ljava/util/Map; comp_2085 key + f Ljava/util/List; comp_2086 pattern + m (Lnet/minecraft/class_8957$class_8958;)Ljava/util/Map; method_55097 method_55097 + p 0 data + m (Lnet/minecraft/class_8957$class_8958;)Ljava/util/List; method_55094 method_55094 + p 0 data + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_55095 method_55095 + p 0 keyEntry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55093 method_55093 + p 0 instance + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_55096 method_55096 + p 0 pattern + m ()Ljava/util/List; comp_2086 pattern + m ()Ljava/util/Map; comp_2085 key + m (Ljava/util/Map;Ljava/util/List;)V + p 1 key + p 2 pattern +c net/minecraft/class_8956 net/minecraft/entity/projectile/WindChargeEntity + f F field_49243 EXPLOSION_POWER + f F field_52511 MAX_RENDER_DISTANCE_WHEN_NEWLY_SPAWNED + f I field_52019 deflectCooldown + f Lnet/minecraft/class_5362; field_47579 EXPLOSION_BEHAVIOR + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;DDD)V + p 3 x + p 2 world + p 1 player + p 7 z + p 5 y + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_243;)V + p 4 y + p 6 z + p 8 velocity + p 1 world + p 2 x +c net/minecraft/class_8955 net/minecraft/unused/packageinfo/PackageInfo8955 +c net/minecraft/class_8954 net/minecraft/entity/ai/brain/task/BreezeSlideTowardsTargetTask + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_1309;)Lnet/minecraft/class_243; method_55048 getRandomPosInMediumRange + p 1 target + p 0 breeze + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;J)V method_55047 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;)Z method_55046 shouldRun +c net/minecraft/class_8953 net/minecraft/entity/ai/brain/task/BreezeShootTask + f I field_47297 MAX_SQUARED_RANGE + f I field_47298 BASE_PROJECTILE_DIVERGENCY + f I field_47299 PROJECTILE_DIVERGENCY_DIFFICULTY_MODIFIER + f I field_47301 SHOOT_CHARGING_EXPIRY + f I field_47302 RECOVER_EXPIRY + f F field_47300 PROJECTILE_SPEED + f I field_47303 SHOOT_COOLDOWN_EXPIRY + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_1309;)V method_55043 method_55043 + p 1 target + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;J)V method_55040 run + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_1309;)Z method_55041 isTargetWithinRange + p 0 breeze + p 1 target + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_1309;)Ljava/lang/Boolean; method_55045 method_55045 + p 1 target + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;J)V method_55042 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;J)V method_55044 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;J)Z method_55037 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;)Z method_55036 shouldRun + m (Lnet/minecraft/class_8949;Ljava/lang/Boolean;)Ljava/lang/Boolean; method_55039 method_55039 + p 1 withinRange +c net/minecraft/class_7620 net/minecraft/util/thread/FutureQueue + c A functional interface that can enqueue completable futures. + f Lorg/slf4j/Logger; field_39831 LOGGER + m (Ljava/util/concurrent/CompletableFuture;Ljava/util/function/Consumer;)V append append + p 2 callback + p 1 future + m (Ljava/util/concurrent/Executor;)Lnet/minecraft/class_7620; immediate immediate + p 0 executor + m (Ljava/lang/Runnable;)V append append + p 1 callback + m (Ljava/lang/Runnable;Ljava/lang/Object;)V method_54441 method_54441 + p 1 current +c net/minecraft/class_7620$1 net/minecraft/util/thread/FutureQueue$1 + m (Ljava/lang/Throwable;)Ljava/lang/Void; method_54442 method_54442 + p 0 throwable +c net/minecraft/class_8952 net/minecraft/entity/ai/brain/task/BreezeJumpTask + f I field_47291 JUMP_COOLDOWN_EXPIRY + f I field_47292 JUMP_COOLDOWN_EXPIRY_WHEN_HURT + f I field_47293 JUMP_INHALING_EXPIRY + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; field_47295 POSSIBLE_JUMP_ANGLES + f F field_52500 FOLLOW_RANGE_MULTIPLIER_FOR_VELOCITY + f F field_47294 MAX_JUMP_VELOCITY + f I field_47289 REQUIRED_SPACE_ABOVE + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_1309;)Z method_55026 isTargetOutOfRange + p 0 breeze + p 1 target + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;J)Z method_55021 shouldKeepRunning + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_1309;)Z method_55032 isTargetTooClose + p 0 breeze + p 1 target + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;)Z method_58644 shouldJump + p 1 breeze + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;J)V method_55035 finishRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;J)V method_55034 keepRunning + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_5819;Lnet/minecraft/class_243;)Ljava/util/Optional; method_55025 getJumpingVelocity + p 0 breeze + p 2 jumpTarget + p 1 random + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_2338;)V method_55033 method_55033 + p 1 jumpTarget + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;J)V method_55030 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;)Z method_55020 shouldRun + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_243;)Lnet/minecraft/class_2338; method_55023 getPosToJumpTo + p 0 breeze + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;)Z method_55029 hasRoomToJump + p 1 breeze + p 0 world + m (Lnet/minecraft/class_8949;)Z method_55031 shouldStopLongJumpingPose + p 0 breeze + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_2338;)Ljava/util/Optional; method_55028 method_55028 + p 1 jumpTarget + m (Lnet/minecraft/class_8949;)Z method_55024 shouldStopInhalingPose + p 0 breeze +c net/minecraft/class_7619 net/minecraft/network/message/MessageChainTaskQueue + c Queues a future that handles received messages on the server thread. + f Z field_40112 closed + f Lorg/slf4j/Logger; field_39828 LOGGER + f Ljava/util/concurrent/Executor; field_39830 executor + f Ljava/util/concurrent/CompletableFuture; field_39829 current + m (Ljava/util/concurrent/Executor;)V + p 1 executor + m (Ljava/util/function/Consumer;Ljava/lang/Object;)V method_44903 method_44903 + p 2 object + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; method_54440 method_54440 + p 1 b + p 0 a + m (Ljava/lang/Throwable;)Ljava/lang/Void; method_44904 method_44904 + p 0 throwable +c net/minecraft/class_7617 net/minecraft/network/packet/s2c/play/RemoveMessageS2CPacket + f Lnet/minecraft/class_9139; field_47922 CODEC + f Lnet/minecraft/class_7469$class_7819; comp_938 messageSignature + m (Lnet/minecraft/class_2540;)V method_55874 write + p 1 buf + m (Lnet/minecraft/class_2602;)V method_44889 apply + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Lnet/minecraft/class_7469$class_7819; comp_938 messageSignature + m (Lnet/minecraft/class_7469$class_7819;)V + p 1 messageSignature +c net/minecraft/class_8949 net/minecraft/entity/mob/BreezeEntity + f I field_47815 ticksUntilWhirlSound + f Lnet/minecraft/class_7094; field_47816 slidingBackAnimationState + f I field_47279 longJumpingParticleAddCount + f Lnet/minecraft/class_7094; field_47280 longJumpingAnimationState + f Lnet/minecraft/class_7094; field_47270 inhalingAnimationState + f Lnet/minecraft/class_7094; field_47281 shootingAnimationState + f Lnet/minecraft/class_7094; field_47269 idleAnimationState + f Lnet/minecraft/class_7094; field_47277 slidingAnimationState + f Lnet/minecraft/class_9109; field_48344 PROJECTILE_DEFLECTOR + m ()V method_55747 playWhirlSound + m (Lnet/minecraft/class_243;)Z method_55013 isWithinShortRange + p 1 pos + m ()V method_55008 addLongJumpingParticles + m (I)V method_55007 addBlockParticles + p 1 count + m (Lnet/minecraft/class_1676;Lnet/minecraft/class_1297;Lnet/minecraft/class_5819;)V method_56087 method_56087 + p 0 projectile + p 2 random + p 1 hitEntity + m ()D method_62822 getChargeY + m ()Lnet/minecraft/class_8949; method_55015 resetLongJumpingParticleAddCount + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1309; method_56560 method_56560 + p 0 livingAttacker + m ()Ljava/util/Optional; method_56562 getHurtBy + m ()Lnet/minecraft/class_5132$class_5133; method_55014 createBreezeAttributes + m (Lnet/minecraft/class_1297;)Z method_56561 method_56561 + p 0 attacker + m ()V method_55010 stopAnimations +c net/minecraft/class_8961 net/minecraft/block/entity/TrialSpawnerBlockEntity + f Lnet/minecraft/class_8963; field_47355 logic + m ()Lnet/minecraft/class_8963; method_55150 getSpawner + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 2 state + p 1 pos + m ()Lnet/minecraft/class_2622; method_55149 toUpdatePacket + m ()Lnet/minecraft/class_8963; method_67406 createDefaultLogic +c net/minecraft/class_8960 net/minecraft/block/TrialSpawnerBlock + f Lnet/minecraft/class_2746; field_50170 OMINOUS + f Lcom/mojang/serialization/MapCodec; field_47348 CODEC + f Lnet/minecraft/class_2754; field_47349 TRIAL_SPAWNER_STATE + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_8961;)V method_55141 method_55141 + p 3 blockEntity + p 2 state + p 1 pos + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_8961;)V method_55140 method_55140 + p 4 blockEntity + p 3 state + p 2 pos + p 1 world +c net/minecraft/class_6306 net/minecraft/test/TestServer + f Lorg/slf4j/Logger; field_33156 LOGGER + f I field_47175 TEST_POS_XZ_RANGE + f I field_33157 RESULT_STRING_LOG_INTERVAL + f Ljava/util/List; field_33158 batches + f Lnet/minecraft/class_7497; field_39441 NONE_API_SERVICES + f Ljava/util/Optional; field_56192 tests + f Z field_56193 verify + f Lcom/google/common/base/Stopwatch; field_48494 stopwatch + f Lnet/minecraft/class_9191; field_48984 debugSampleLog + f Lnet/minecraft/class_5285; field_33161 TEST_LEVEL + f Lnet/minecraft/class_4524; field_33162 testSet + f Lnet/minecraft/class_7699; field_53734 ENABLED_FEATURES + m (Lnet/minecraft/class_3218;)Ljava/util/List; method_66986 batch + p 1 world + m (Lnet/minecraft/class_4517;)V method_67486 logFailure + p 0 state + m ()Z method_36098 isTesting + m (Ljava/lang/Thread;Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_3283;Ljava/util/Optional;Z)Lnet/minecraft/class_6306; method_40378 create + p 0 thread + p 1 session + p 2 resourcePackManager + p 3 tests + p 4 verify + m (Lnet/minecraft/class_6880$class_6883;)Z method_66983 method_66983 + p 0 instance + m (Lnet/minecraft/class_6880$class_6883;)Z method_66987 method_66987 + p 0 instance + m (Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_3218;)Ljava/util/stream/Stream; method_66984 makeVerificationBatches + p 0 instance + p 1 world + m (Lnet/minecraft/class_3218;)V method_36096 runTestBatches + p 1 world + m (Lnet/minecraft/class_1940;Lnet/minecraft/class_7237$class_7660;)Lnet/minecraft/class_7237$class_7661; method_40377 method_40377 + p 1 context + m (Ljava/lang/Thread;Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_3283;Lnet/minecraft/class_6904;Ljava/util/Optional;Z)V + p 6 verify + p 4 saveLoader + p 5 tests + p 2 session + p 3 dataPackManager + p 1 serverThread + m (Lnet/minecraft/class_5455;Ljava/lang/String;)Ljava/util/stream/Stream; method_66985 selectInstances + p 1 selector + p 0 registryManager + m (Lnet/minecraft/class_7237$class_6906;Lnet/minecraft/class_1940;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_43615 method_43615 + p 2 executor +c net/minecraft/class_6306$class_11706 net/minecraft/test/TestServer$DummyNameToIdCache + f Ljava/util/Set; field_61883 players + m (Ljava/lang/String;Lnet/minecraft/class_11560;)Z method_73077 method_73077 + p 1 player + m (Ljava/util/UUID;Lnet/minecraft/class_11560;)Z method_73078 method_73078 + p 1 player +c net/minecraft/class_6306$class_11794 net/minecraft/test/TestServer$DummyGameProfileResolver +c net/minecraft/class_7637 net/minecraft/network/message/LastSeenMessagesCollector + c Collects the message that are last seen by a client.\n\n

The message, along with the "last received" message, forms an\n"acknowledgment" of received messages. They are sent to the server\nwhen the client has enough messages received or when they send a message.\n\n@implNote The maximum amount of message entries are specified in the constructor.\nThe vanilla clients collect 5 entries. Calling {@link #add(MessageSignatureData, boolean)}\nadds the message to the beginning of the entries list, and evicts the oldest message.\nIf there are entries with the same sender profile ID, the older entry will be replaced with\n{@code null} instead of filling the hole.\n\n@see AcknowledgmentValidator\n@see LastSeenMessageList + f Lnet/minecraft/class_7469; field_40679 lastAdded + f I field_40678 messageCount + f [Lnet/minecraft/class_7817; field_40676 acknowledgedMessages + f I field_40677 nextIndex + m (Lnet/minecraft/class_7469;Z)Z method_46265 add + p 2 displayed + p 1 signature + m ()I method_46267 getMessageCount + m (I)V + p 1 size + m (Lnet/minecraft/class_7817;)V method_46263 add + p 1 message + m (Lnet/minecraft/class_7469;)V method_46264 remove + p 1 signature + m ()Lnet/minecraft/class_7637$class_7816; method_46266 collect + m ()I method_46262 resetMessageCount +c net/minecraft/class_7637$class_7816 net/minecraft/network/message/LastSeenMessagesCollector$LastSeenMessages + f Lnet/minecraft/class_7635; comp_1073 lastSeen + f Lnet/minecraft/class_7635$class_7636; comp_1074 update + m ()Lnet/minecraft/class_7635$class_7636; comp_1074 update + m ()Lnet/minecraft/class_7635; comp_1073 lastSeen + m (Lnet/minecraft/class_7635;Lnet/minecraft/class_7635$class_7636;)V + p 1 lastSeen + p 2 update +c net/minecraft/class_6307 net/minecraft/test/XmlReportingTestCompletionListener + f Lcom/google/common/base/Stopwatch; field_33166 stopwatch + f Lorg/w3c/dom/Element; field_33165 testSuiteElement + f Lorg/w3c/dom/Document; field_33164 document + f Ljava/io/File; field_33167 file + m (Ljava/io/File;)V + p 1 file + m (Ljava/io/File;)V method_36101 saveReport + p 1 file + m (Lnet/minecraft/class_4517;Ljava/lang/String;)Lorg/w3c/dom/Element; method_36102 addTestCase + p 1 test + p 2 name +c net/minecraft/class_7638 net/minecraft/network/message/AcknowledgmentValidator + c A class that validates the clients' message acknowledgment.\n\n

When clients receive or send messages, they send "acknowledgments" to the server,\ncontaining messages they've last seen or received. If there are too many messages\nwaiting for message acknowledgments (more than {@value\nnet.minecraft.server.network.ServerPlayNetworkHandler#MAX_PENDING_ACKNOWLEDGMENTS}),\nor if the acknowledgment is incorrect, the client will be disconnected. + f I field_40680 size + f Lnet/minecraft/class_7469; field_40682 lastSignature + f Lit/unimi/dsi/fastutil/objects/ObjectList; field_40681 messages + m (Lnet/minecraft/class_7469;)V method_44989 addPending + p 1 signature + m ()I method_46268 getMessageCount + m (Lnet/minecraft/class_7635$class_7636;)Lnet/minecraft/class_7635; method_46270 validate + p 1 acknowledgment + m (I)V + p 1 size + m (I)V method_46269 removeUntil + p 1 index +c net/minecraft/class_7638$class_10943 net/minecraft/network/message/AcknowledgmentValidator$ValidationException + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/class_7635 net/minecraft/network/message/LastSeenMessageList + c A list of messages a client has seen. + f Lnet/minecraft/class_7635; field_39883 EMPTY + f I field_39884 MAX_ENTRIES + f Lcom/mojang/serialization/Codec; field_40843 CODEC + f Ljava/util/List; comp_965 entries + m (Lnet/minecraft/class_7561;)Lnet/minecraft/class_7635$class_7815; method_46258 pack + p 1 storage + m (Lnet/minecraft/class_7498$class_7499;)V method_46257 updateSignatures + p 1 updater + m (Lnet/minecraft/class_7561;Lnet/minecraft/class_7469;)Lnet/minecraft/class_7469$class_7819; method_46259 method_46259 + p 1 signature + m ()B method_68855 calculateChecksum + m ()Ljava/util/List; comp_965 entries + m (Ljava/util/List;)V + p 1 entries +c net/minecraft/class_7635$class_7636 net/minecraft/network/message/LastSeenMessageList$Acknowledgment + c A record of messages acknowledged by a client.\n\n

This holds the messages the client has recently seen, as well as the last\nmessage they received, if any. + f B field_58179 NO_CHECKSUM + f I comp_1071 offset + f Ljava/util/BitSet; comp_1072 acknowledged + f B comp_3879 checksum + m (Lnet/minecraft/class_2540;)V method_44983 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_7635;)Z method_68856 checksumEquals + p 1 lastSeenMessages + m ()B comp_3879 checksum + m ()I comp_1071 offset + m ()Ljava/util/BitSet; comp_1072 acknowledged + m (ILjava/util/BitSet;B)V + p 1 offset + p 2 acknowledged + p 3 checksum +c net/minecraft/class_7635$class_7815 net/minecraft/network/message/LastSeenMessageList$Indexed + f Lnet/minecraft/class_7635$class_7815; field_40675 EMPTY + f Ljava/util/List; comp_1070 buf + m (Lnet/minecraft/class_7561;)Ljava/util/Optional; method_46261 unpack + p 1 storage + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_46260 write + p 1 buf + m ()Ljava/util/List; comp_1070 buf + m (Ljava/util/List;)V + p 1 buf +c net/minecraft/class_8967 net/minecraft/block/enums/TrialSpawnerState + f F field_47389 START_EJECTING_REWARDS_COOLDOWN + f D field_47393 displayRotationSpeed + f I field_47392 luminance + f I field_47390 BETWEEN_EJECTING_REWARDS_COOLDOWN + f Ljava/lang/String; field_47391 id + f Lnet/minecraft/class_8967$class_8969; field_47394 particleEmitter + f Z field_47395 playsSound + f Lnet/minecraft/class_8967; field_47385 ACTIVE + f Lnet/minecraft/class_8967; field_47386 WAITING_FOR_REWARD_EJECTION + f Lnet/minecraft/class_8967; field_47383 INACTIVE + f Lnet/minecraft/class_8967; field_47384 WAITING_FOR_PLAYERS + f Lnet/minecraft/class_8967; field_47387 EJECTING_REWARD + f Lnet/minecraft/class_8967; field_47388 COOLDOWN + m (Lnet/minecraft/class_8966;Lnet/minecraft/class_8963;Lnet/minecraft/class_1952;)V method_55213 method_55213 + p 2 spawnData + m ()Z method_55217 playsSound + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Z)V method_55210 emitParticles + p 1 world + p 2 pos + p 3 ominous + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_8963;Lnet/minecraft/class_8966;)Ljava/util/Optional; method_58721 getPosToSpawnItemSpawner + p 1 pos + p 0 world + p 3 data + p 2 logic + m (Ljava/util/List;Ljava/util/Set;Lnet/minecraft/class_8963;Lnet/minecraft/class_2338;Lnet/minecraft/class_3218;)Lnet/minecraft/class_1297; method_58725 getRandomEntity + p 0 players + p 2 logic + p 1 entityUuids + p 4 world + p 3 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_8966;Lnet/minecraft/class_8963;Lnet/minecraft/class_243;)V method_58718 method_58718 + p 4 pos + m (Lnet/minecraft/class_8963;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5321;)V method_55211 method_55211 + p 3 lootTable + m (Ljava/lang/String;ILjava/lang/String;ILnet/minecraft/class_8967$class_8969;DZ)V + p 4 luminance + p 5 particleEmitter + p 6 displayRotationSpeed + p 8 playsSound + p 3 id + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_3218;)Ljava/util/Optional; method_58722 getPosAbove + p 0 entity + p 1 world + m ()I method_55209 getLuminance + m ()D method_55215 getDisplayRotationSpeed + m (Lnet/minecraft/class_8966;Lnet/minecraft/class_3218;Lnet/minecraft/class_8965;Lnet/minecraft/class_8963;Ljava/util/UUID;)V method_55212 method_55212 + p 4 uuid + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_8963;Lnet/minecraft/class_1657;)Z method_58724 method_58724 + p 2 player + m ()Z method_55216 doesDisplayRotate + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_8963;)V method_58720 spawnOminousItemSpawner + p 3 logic + p 1 world + p 2 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_8963;Lnet/minecraft/class_3218;)Lnet/minecraft/class_8967; method_55214 tick + p 3 world + p 2 logic + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8966;)Z method_58719 shouldCooldownEnd + p 2 data + p 1 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_8963;Lnet/minecraft/class_1297;)Z method_58723 method_58723 + p 2 entity +c net/minecraft/class_8967$class_8969 net/minecraft/block/enums/TrialSpawnerState$ParticleEmitter + f Lnet/minecraft/class_8967$class_8969; field_47404 COOLDOWN + f Lnet/minecraft/class_8967$class_8969; field_47403 ACTIVE + f Lnet/minecraft/class_8967$class_8969; field_47402 WAITING + f Lnet/minecraft/class_8967$class_8969; field_47401 NONE + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Z)V method_55219 method_55219 + p 1 random + p 2 pos + p 3 ominous + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Z)V emit emit + p 1 world + p 3 pos + p 2 random + p 4 ominous + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_243;Lnet/minecraft/class_1937;)V method_55220 emitParticle + p 0 type + p 1 pos + p 2 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Z)V method_55222 method_55222 + p 1 random + p 2 pos + p 3 ominous + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Z)V method_55221 method_55221 + p 2 pos + p 3 ominous + p 0 world + p 1 random + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Z)V method_55223 method_55223 + p 0 world + p 1 random + p 2 pos + p 3 ominous +c net/minecraft/class_8967$class_8968 net/minecraft/block/enums/TrialSpawnerState$Luminance + f I field_47400 HIGH + f I field_47399 LOW + f I field_47398 NONE +c net/minecraft/class_8967$class_8970 net/minecraft/block/enums/TrialSpawnerState$DisplayRotationSpeed + f D field_47406 SLOW + f D field_47407 FAST + f D field_47405 NONE +c net/minecraft/class_6305 net/minecraft/unused/packageinfo/PackageInfo6305 +c net/minecraft/class_8966 net/minecraft/block/spawner/TrialSpawnerData + f Ljava/util/Set; field_47372 spawnedMobsAlive + f Ljava/lang/String; field_47382 NEXT_MOB_SPAWNS_AT_KEY + f J field_47373 cooldownEnd + f I field_47375 totalSpawnedMobs + f D field_47381 lastDisplayEntityRotation + f Ljava/lang/String; field_47369 SPAWN_DATA_KEY + f Ljava/util/Set; field_47371 players + f Lnet/minecraft/class_6012; field_50192 itemsToDropWhenOminous + f Ljava/util/Optional; field_47376 spawnData + f J field_47374 nextMobSpawnsAt + f D field_47380 displayEntityRotation + f Ljava/util/Optional; field_47377 rewardLootTable + f Lnet/minecraft/class_1297; field_47379 displayEntity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)J method_58715 getLootSeed + p 1 pos + p 0 world + m (Lnet/minecraft/class_1657;)Lcom/mojang/datafixers/util/Pair; method_60790 method_60790 + p 0 player + m (Lnet/minecraft/class_3218;Ljava/util/List;)Ljava/util/Optional; method_60789 findPlayerWithOmen + p 1 players + p 0 world + m ()V method_61763 deactivate + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8965;I)Z method_55185 canSpawnMore + p 1 world + p 2 config + p 3 additionalPlayers + m (Lnet/minecraft/class_3218;FI)Z method_55198 isCooldownAtRepeating + p 1 world + m (Lnet/minecraft/class_2338;)I method_55195 getAdditionalPlayers + p 1 pos + m (Lnet/minecraft/class_8967;)Lnet/minecraft/class_2487; method_55194 getSpawnDataNbt + p 1 state + m (Lnet/minecraft/class_3218;FI)Z method_55184 isCooldownPast + p 1 world + m (Lnet/minecraft/class_8963;Lnet/minecraft/class_3218;)V method_58717 resetAndClearMobs + p 1 logic + p 2 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8965;Lnet/minecraft/class_2338;)Lnet/minecraft/class_6012; method_58714 getItemsToDropWhenOminous + p 2 config + p 3 pos + p 1 world + m ()Z method_55200 areMobsDead + m (Lnet/minecraft/class_8963;Lnet/minecraft/class_5819;)Z method_55197 hasSpawnData + p 1 logic + p 2 random + m (Lnet/minecraft/class_8963;Lnet/minecraft/class_5819;)Lnet/minecraft/class_1952; method_55188 getSpawnData + p 2 random + p 1 logic + m (Lnet/minecraft/class_8963;Lnet/minecraft/class_1937;Lnet/minecraft/class_8967;)Lnet/minecraft/class_1297; method_55190 setDisplayEntity + p 1 logic + p 2 world + p 3 state + m (Lnet/minecraft/class_8965;I)Z method_55192 hasSpawnedAllMobs + p 1 config + p 2 additionalPlayers + m (Lnet/minecraft/class_2487;Lnet/minecraft/class_1952;)V method_55196 method_55196 + p 1 spawnData + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_8963;)V method_55186 updatePlayers + p 3 logic + p 2 pos + p 1 world + m ()D method_55202 getDisplayEntityRotation + m (Lnet/minecraft/class_1657;)V method_58716 applyTrialOmen + p 0 player + m (Lnet/minecraft/class_8966$class_11350;)V method_71410 unpack + p 1 packed + m ()Lnet/minecraft/class_8966$class_11350; method_71409 pack + m ()V method_55182 reset + m (Lnet/minecraft/class_3218;)Z method_55183 isCooldownOver + p 1 world + m ()D method_55204 getLastDisplayEntityRotation + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;)V method_58713 method_58713 + p 1 entity +c net/minecraft/class_8966$class_11350 net/minecraft/block/spawner/TrialSpawnerData$Packed + f Lcom/mojang/serialization/MapCodec; field_60376 CODEC + f Ljava/util/Optional; comp_4240 nextSpawnData + f Ljava/util/Optional; comp_4241 ejectingLootTable + f Ljava/util/Set; comp_4236 currentMobs + f Ljava/util/Set; comp_4235 detectedPlayers + f J comp_4237 cooldownEndsAt + f I comp_4239 totalMobsSpawned + f J comp_4238 nextMobSpawnsAt + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71411 method_71411 + p 0 instance + m ()Ljava/util/Optional; comp_4240 nextSpawnData + m ()Ljava/util/Optional; comp_4241 ejectingLootTable + m ()Ljava/util/Set; comp_4236 currentMobs + m ()Ljava/util/Set; comp_4235 detectedPlayers + m ()I comp_4239 totalMobsSpawned + m ()J comp_4238 nextMobSpawnsAt + m ()J comp_4237 cooldownEndsAt + m (Ljava/util/Set;Ljava/util/Set;JJILjava/util/Optional;Ljava/util/Optional;)V + p 1 detectedPlayers + p 2 currentMobs + p 3 cooldownEndsAt + p 5 nextMobSpawnsAt + p 7 totalMobsSpawned + p 8 nextSpawnData + p 9 ejectingLootTable +c net/minecraft/class_7633 net/minecraft/network/listener/TickablePacketListener + m ()V method_18784 tick + c Ticks this packet listener on the game engine thread. The listener is responsible\nfor synchronizing between the game engine and netty event loop threads. +c net/minecraft/class_8965 net/minecraft/block/spawner/TrialSpawnerConfig + f Lcom/mojang/serialization/Codec; field_47368 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_53980 CODEC + f Lnet/minecraft/class_6012; comp_2110 spawnPotentials + f Lnet/minecraft/class_8965; field_47367 DEFAULT + f F comp_2107 simultaneousMobsAddedPerPlayer + f I comp_2108 ticksBetweenSpawn + f F comp_2105 simultaneousMobs + f F comp_2106 totalMobsAddedPerPlayer + f I comp_2103 spawnRange + f F comp_2104 totalMobs + f Lnet/minecraft/class_6012; comp_2111 lootTablesToEject + f Lnet/minecraft/class_5321; comp_2552 itemsToDropWhenOminous + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55180 method_55180 + p 0 instance + m ()Lnet/minecraft/class_6012; comp_2110 spawnPotentials + m ()Lnet/minecraft/class_8965$class_10165; method_63466 builder + m ()J method_58712 getCooldownLength + m (I)I method_55179 getTotalMobs + p 1 additionalPlayers + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_8965; method_65373 withSpawnPotential + p 1 entityType + m (I)I method_55181 getSimultaneousMobs + p 1 additionalPlayers + m ()Lnet/minecraft/class_6012; comp_2111 lootTablesToEject + m ()Lnet/minecraft/class_5321; comp_2552 itemsToDropWhenOminous + m ()I comp_2103 spawnRange + m ()I comp_2108 ticksBetweenSpawn + m ()F comp_2106 totalMobsAddedPerPlayer + m ()F comp_2107 simultaneousMobsAddedPerPlayer + m ()F comp_2104 totalMobs + m ()F comp_2105 simultaneousMobs + m (IFFFFILnet/minecraft/class_6012;Lnet/minecraft/class_6012;Lnet/minecraft/class_5321;)V + p 1 spawnRange + p 2 totalMobs + p 3 simultaneousMobs + p 4 totalMobsAddedPerPlayer + p 5 simultaneousMobsAddedPerPlayer + p 6 ticksBetweenSpawn + p 7 spawnPotentials + p 8 lootTablesToEject + p 9 itemsToDropWhenOminous +c net/minecraft/class_8965$class_10165 net/minecraft/block/spawner/TrialSpawnerConfig$Builder + f Lnet/minecraft/class_5321; field_53989 itemsToDropWhenOminous + f F field_53982 totalMobs + f Lnet/minecraft/class_6012; field_53987 spawnPotentials + f F field_53984 totalMobsAddedPerPlayer + f F field_53983 simultaneousMobs + f I field_53986 ticksBetweenSpawn + f F field_53985 simultaneousMobsAddedPerPlayer + f Lnet/minecraft/class_6012; field_53988 lootTablesToEject + f I field_53981 spawnRange + m (I)Lnet/minecraft/class_8965$class_10165; method_63473 ticksBetweenSpawn + p 1 ticksBetweenSpawn + m (F)Lnet/minecraft/class_8965$class_10165; method_63476 simultaneousMobsAddedPerPlayer + p 1 simultaneousMobsAddedPerPlayer + m (F)Lnet/minecraft/class_8965$class_10165; method_63475 totalMobsAddedPerPlayer + p 1 totalMobsAddedPerPlayer + m ()Lnet/minecraft/class_8965; method_63467 build + m (F)Lnet/minecraft/class_8965$class_10165; method_63472 simultaneousMobs + p 1 simultaneousMobs + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_8965$class_10165; method_63470 itemsToDropWhenOminous + p 1 itemsToDropWhenOminous + m (Lnet/minecraft/class_6012;)Lnet/minecraft/class_8965$class_10165; method_63474 lootTablesToEject + p 1 lootTablesToEject + m (I)Lnet/minecraft/class_8965$class_10165; method_63469 spawnRange + p 1 spawnRange + m (Lnet/minecraft/class_6012;)Lnet/minecraft/class_8965$class_10165; method_63471 spawnPotentials + p 1 spawnPotentials + m (F)Lnet/minecraft/class_8965$class_10165; method_63468 totalMobs + p 1 totalMobs +c net/minecraft/class_8963 net/minecraft/block/spawner/TrialSpawnerLogic + f Z field_47366 forceActivate + f I field_50179 DEFAULT_COOLDOWN_LENGTH + f I field_47359 MAX_ENTITY_DISTANCE + f Lnet/minecraft/class_8966; field_47363 data + f Z field_50185 ominous + f I field_47360 MAX_ENTITY_DISTANCE_SQUARED + f Lorg/slf4j/Logger; field_60372 LOGGER + f Lnet/minecraft/class_8963$class_11349; field_60373 fullConfig + f Lnet/minecraft/class_8963$class_8964; field_47364 trialSpawner + f Lnet/minecraft/class_8962$class_9198; field_48864 entitySelector + f F field_47361 SOUND_RATE_PER_TICK + f Lnet/minecraft/class_8962; field_47365 entityDetector + f I field_50180 DEFAULT_ENTITY_DETECTION_RANGE + m ()V method_55176 updateListeners + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Z)V method_55165 tickClient + p 3 ominous + p 1 world + p 2 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Ljava/util/Optional; method_55158 trySpawnMob + p 2 pos + p 1 world + m ()Lnet/minecraft/class_8966; method_55174 getData + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Lnet/minecraft/class_2400;)V method_55166 addMobSpawnParticles + p 0 world + p 1 pos + p 2 random + p 3 particle + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Z)V method_55171 tickServer + p 3 ominous + p 2 pos + p 1 world + m ()Lnet/minecraft/class_8962$class_9198; method_56728 getEntitySelector + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_58701 addTrialOmenParticles + p 2 random + p 1 pos + p 0 world + m (Lnet/minecraft/class_11368;)V method_71404 readData + p 1 view + m ()I method_58707 getDetectionRadius + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;ILnet/minecraft/class_2394;)V method_55167 addDetectionParticles + p 0 world + p 4 particle + p 3 playerCount + p 2 random + p 1 pos + m (Lnet/minecraft/class_8963$class_11349;Lnet/minecraft/class_8963$class_8964;Lnet/minecraft/class_8962;Lnet/minecraft/class_8962$class_9198;)V + p 2 trialSpawner + p 3 entityDetector + p 1 fullConfig + p 4 entitySelector + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_58702 setNotOminous + p 2 pos + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_8967;)V method_55163 setSpawnerState + p 1 world + p 2 spawnerState + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5321;)V method_55159 ejectLootTable + p 2 pos + p 1 world + p 3 lootTable + m ()V method_55178 forceActivate + m ()Lnet/minecraft/class_8965; method_58704 getOminousConfig + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_55173 addEjectItemParticles + p 2 random + p 1 pos + p 0 world + m ()I method_58706 getCooldownLength + m ()Lnet/minecraft/class_8965; method_71403 getConfig + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_243;Lnet/minecraft/class_243;)Z method_55164 hasLineOfSight + p 1 spawnerPos + p 0 world + p 2 spawnPos + m ()Lnet/minecraft/class_8967; method_55175 getSpawnerState + m (Lnet/minecraft/class_11372;)V method_71405 writeData + p 1 view + m (Lnet/minecraft/class_3218;)Z method_55162 canActivate + p 1 world + m (Lnet/minecraft/class_243;Lnet/minecraft/class_5819;Lnet/minecraft/class_1297;)Lnet/minecraft/class_1297; method_55157 method_55157 + p 2 entity + m (Lnet/minecraft/class_8962;)V method_55168 setEntityDetector + p 1 detector + m ()Lnet/minecraft/class_8965; method_58703 getNormalConfig + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Ljava/util/UUID;)Z method_55160 shouldRemoveMobFromData + p 2 uuid + p 1 pos + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Ljava/util/UUID;)Z method_55172 method_55172 + p 2 uuid + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_58700 setOminous + p 2 pos + p 1 world + m ()Lnet/minecraft/class_8962; method_55177 getEntityDetector + m ()Z method_58705 isOminous + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;)V method_65372 setEntityType + p 2 world + p 1 entityType +c net/minecraft/class_8963$class_8964 net/minecraft/block/spawner/TrialSpawnerLogic$TrialSpawner + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_8967;)V method_55146 setSpawnerState + p 1 world + p 2 spawnerState + m ()V method_55152 updateListeners + m ()Lnet/minecraft/class_8967; method_55151 getSpawnerState +c net/minecraft/class_8963$class_11349 net/minecraft/block/spawner/TrialSpawnerLogic$FullConfig + f Lnet/minecraft/class_8963$class_11349; field_60375 DEFAULT + f Lcom/mojang/serialization/MapCodec; field_60374 CODEC + f Lnet/minecraft/class_6880; comp_4231 normal + f Lnet/minecraft/class_6880; comp_4232 ominous + f I comp_4233 targetCooldownLength + f I comp_4234 requiredPlayerRange + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71408 method_71408 + p 0 instance + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_8963$class_11349; method_71407 withEntityType + p 1 entityType + m ()I comp_4234 requiredPlayerRange + m ()I comp_4233 targetCooldownLength + m ()Lnet/minecraft/class_6880; comp_4231 normal + m ()Lnet/minecraft/class_6880; comp_4232 ominous + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;II)V + p 1 normal + p 2 ominous + p 3 targetCooldownLength + p 4 requiredPlayerRange +c net/minecraft/class_8963$class_9474 net/minecraft/block/spawner/TrialSpawnerLogic$Type + f Lnet/minecraft/class_2400; field_50188 particle + f Lnet/minecraft/class_8963$class_9474; field_50186 NORMAL + f Lnet/minecraft/class_8963$class_9474; field_50187 OMINOUS + m (Ljava/lang/String;ILnet/minecraft/class_2400;)V + p 3 particle + m ()I method_58709 getIndex + m (I)Lnet/minecraft/class_8963$class_9474; method_58710 fromIndex + p 0 index +c net/minecraft/class_8962 net/minecraft/block/spawner/EntityDetector + f Lnet/minecraft/class_8962; field_48861 NON_SPECTATOR_PLAYERS + f Lnet/minecraft/class_8962; field_48860 SURVIVAL_PLAYERS + f Lnet/minecraft/class_8962; field_47357 SHEEP + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8962$class_9198;Lnet/minecraft/class_2338;DZ)Ljava/util/List; method_56720 method_56720 + p 2 center + p 3 radius + p 5 spawner + p 0 world + p 1 selector + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8962$class_9198;Lnet/minecraft/class_2338;DZ)Ljava/util/List; method_56722 method_56722 + p 5 spawner + p 0 world + p 1 selector + p 2 center + p 3 radius + m (ZLnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1472;)Z method_58697 method_58697 + p 3 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8962$class_9198;Lnet/minecraft/class_2338;DZ)Ljava/util/List; method_55155 method_55155 + p 5 spawner + p 1 selector + p 2 center + p 3 radius + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_243;Lnet/minecraft/class_243;)Z method_58696 hasLineOfSight + p 1 pos + p 0 world + p 2 entityEyePos + m (ZLnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)Z method_58698 method_58698 + p 3 entity + m (ZLnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)Z method_58699 method_58699 + p 3 entity + m (Lnet/minecraft/class_2338;DLnet/minecraft/class_1657;)Z method_56721 method_56721 + p 3 player + m (Lnet/minecraft/class_2338;DLnet/minecraft/class_1657;)Z method_56723 method_56723 + p 3 player + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8962$class_9198;Lnet/minecraft/class_2338;DZ)Ljava/util/List; detect detect + p 6 spawner + p 3 center + p 4 radius + p 1 world + p 2 selector +c net/minecraft/class_8962$class_9198 net/minecraft/block/spawner/EntityDetector$Selector + f Lnet/minecraft/class_8962$class_9198; field_48862 IN_WORLD + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5575;Lnet/minecraft/class_238;Ljava/util/function/Predicate;)Ljava/util/List; method_56724 getEntities + p 2 typeFilter + p 1 world + p 4 predicate + p 3 box + m (Lnet/minecraft/class_3218;Ljava/util/function/Predicate;)Ljava/util/List; method_56725 getPlayers + p 1 world + p 2 predicate + m (Ljava/util/List;)Lnet/minecraft/class_8962$class_9198; method_56727 ofPlayers + p 0 players + m (Lnet/minecraft/class_1657;)Lnet/minecraft/class_8962$class_9198; method_56726 ofPlayer + p 0 player +c net/minecraft/class_7629 net/minecraft/client/session/report/log/ChatLogEntry + c An entry logged to {@link ChatLog}. + f Lcom/mojang/serialization/Codec; field_40803 CODEC + m ()Lnet/minecraft/class_7629$class_7854; method_46538 getType +c net/minecraft/class_7629$class_7854 net/minecraft/client/session/report/log/ChatLogEntry$Type + f Ljava/lang/String; field_40806 id + f Ljava/util/function/Supplier; field_40807 codecSupplier + f Lnet/minecraft/class_7629$class_7854; field_40805 SYSTEM + f Lnet/minecraft/class_7629$class_7854; field_40804 PLAYER + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/Supplier;)V + p 3 id + p 4 codecSupplier + m ()Lcom/mojang/serialization/MapCodec; method_46539 getCodec +c net/minecraft/class_8959 net/minecraft/block/entity/Spawner + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_5250; method_55119 method_55119 + p 0 entityType + m (Lnet/minecraft/class_2487;)Ljava/util/Optional; method_68280 method_68280 + p 0 spawnDataNbt + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_5819;)V method_46408 setEntityType + p 1 type + p 2 random + m (Lnet/minecraft/class_11580;Ljava/lang/String;)Lnet/minecraft/class_2561; method_55120 getSpawnedEntityText + p 1 spawnDataKey + p 0 nbtComponent + m (Lnet/minecraft/class_11580;Ljava/util/function/Consumer;Ljava/lang/String;)V method_55121 appendSpawnDataToTooltip + p 0 nbtComponent + p 1 textConsumer + p 2 spawnDataKey + m (Lnet/minecraft/class_2487;)Ljava/util/Optional; method_68279 method_68279 + p 0 entityNbt +c net/minecraft/class_7604 net/minecraft/network/message/SentMessage + c A class wrapping {@link SignedMessage} on the server to allow custom behavior for\nsending messages. + m (Lnet/minecraft/class_7471;)Lnet/minecraft/class_7604; method_44857 of + c {@return the wrapped {@code message}} + p 0 message + m (Lnet/minecraft/class_3222;ZLnet/minecraft/class_2556$class_7602;)V method_45095 send + p 2 filterMaskEnabled + p 3 params + p 1 sender + m ()Lnet/minecraft/class_2561; comp_1081 content +c net/minecraft/class_7604$class_7606 net/minecraft/network/message/SentMessage$Profileless + c The wrapper used for messages without associated source profile. + f Lnet/minecraft/class_2561; comp_1081 content + m (Lnet/minecraft/class_2561;)V + p 1 content +c net/minecraft/class_7604$class_7607 net/minecraft/network/message/SentMessage$Chat + c The wrapper used for normal chat messages.\n\n

Text filtering can cause some players to not receive this kind of message. + f Lnet/minecraft/class_7471; comp_1082 message + m ()Lnet/minecraft/class_7471; comp_1082 message + m (Lnet/minecraft/class_7471;)V + p 1 message +c net/minecraft/class_8936 net/minecraft/command/ExecutionFlags + f Lnet/minecraft/class_8936; field_47160 NONE + f B field_47161 SILENT + f B field_47162 INSIDE_RETURN_RUN + f B comp_2020 flags + m ()Z method_54884 isSilent + m (B)Lnet/minecraft/class_8936; method_54885 set + p 1 flag + m ()Lnet/minecraft/class_8936; method_54886 setSilent + m ()Lnet/minecraft/class_8936; method_54888 setInsideReturnRun + m ()Z method_54887 isInsideReturnRun + m ()B comp_2020 flags + m (B)V + p 1 flags +c net/minecraft/class_8935 net/minecraft/command/ReturnValueConsumer + f Lnet/minecraft/class_8935; field_47158 EMPTY + m (Lnet/minecraft/class_8935;Lnet/minecraft/class_8935;ZI)V method_54880 method_54880 + p 2 successful + p 3 returnValue + m (I)V onSuccess onSuccess + p 1 successful + m (ZI)V onResult onResult + p 2 returnValue + p 1 successful + m (Lnet/minecraft/class_8935;Lnet/minecraft/class_8935;)Lnet/minecraft/class_8935; chain chain + p 1 b + p 0 a +c net/minecraft/class_8934 net/minecraft/inventory/LootableInventory + c An inventory whose contents can be supplied from a loot table.\n\n

This is usually implemented by block entities, which extend {@link\nnet.minecraft.block.entity.LootableContainerBlockEntity}. + f Ljava/lang/String; field_47155 LOOT_TABLE_SEED_KEY + f Ljava/lang/String; field_47154 LOOT_TABLE_KEY + m (Lnet/minecraft/class_5321;)V method_11285 setLootTable + p 1 lootTable + m ()J method_54870 getLootTableSeed + c {@return the loot table's seed}\n\n

Vanilla implementations return {@code 0} when there is no loot\ntable associated with the inventory, although it is not necessary.\n\n

This is usually stored under the {@value LOOT_TABLE_SEED_KEY} NBT key. + m ()Lnet/minecraft/class_5321; method_54869 getLootTable + m (Lnet/minecraft/class_11372;)Z method_54872 writeLootTable + c Writes the loot table and seed to {@code nbt}, if {@linkplain #getLootTable\nthe loot table} is not {@code null}. Implementations should skip writing the\ncontents of the inventory if this returns {@code true}.\n\n

This skips writing the seed if it equals {@code 0L}. This has no practical\ndifference in-game, as getting nonexistent {@code long} values return {@code 0L}.\n\n@return whether the loot table was non-{@code null} + p 1 view + m ()Lnet/minecraft/class_2338; method_11016 getPos + m (Lnet/minecraft/class_1657;)V method_54873 generateLoot + c Replaces the contents of this inventory with the generated loot, if it exists.\nDoes nothing if there is no loot table associated with this inventory.\nAfter generation, the loot table is removed from the inventory.\n\n

Implementations should call this method whenever the inventory is accessed. + p 1 player + c the player that triggered this generation (by opening, breaking, etc), or\n{@code null} if there was no player involvement + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_5321;)V method_54868 setLootTable + c Queries the block entity at {@code pos}, checks if it is a {@link LootableInventory},\nand sets the loot table and seed if applicable.\nThis is useful for code-based structure generation.\n\n@see #setLootTable(RegistryKey)\n@see #setLootTableSeed(long)\n@see #setLootTable(RegistryKey, long) + p 2 pos + p 3 lootTableId + p 0 world + p 1 random + m ()Lnet/minecraft/class_1937; method_10997 getWorld + m (Lnet/minecraft/class_11368;)Z method_54871 readLootTable + c Reads the loot table and seed from {@code nbt}, if the loot table\nexists in {@code nbt}. Implementations should skip reading the contents of\nthe inventory if this returns {@code true}.\n\n@return whether the loot table was found + p 1 view + m (Lnet/minecraft/class_5321;J)V method_54867 setLootTable + c Sets the loot table and seed at once.\nThis is useful for code-based structure generation.\n\n@see #setLootTable(RegistryKey)\n@see #setLootTableSeed(long)\n@see #setLootTable(BlockView, Random, BlockPos, RegistryKey) + p 1 lootTableId + p 2 lootTableSeed + m (J)V method_54866 setLootTableSeed + c Sets the loot table's seed.\n\n

Vanilla implementations return {@code 0} when there is no loot\ntable associated with the inventory, although it is not necessary.\n\n

This is usually stored under the {@value LOOT_TABLE_SEED_KEY} NBT key. + p 1 lootTableSeed +c net/minecraft/class_8931 net/minecraft/registry/ExperimentalRegistriesValidator + m (Lnet/minecraft/class_8990$class_8991;Lnet/minecraft/class_7655$class_7657;)V method_55310 method_55310 + p 1 entry + m (Lnet/minecraft/class_7877;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_7877$class_8993; method_54839 method_54839 + p 1 registries + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/class_7877;)Ljava/util/concurrent/CompletableFuture; method_54840 validate + p 0 registriesFuture + p 1 builder +c com/mojang/blaze3d/pipeline/BlendFunction com/mojang/blaze3d/pipeline/BlendFunction + m (Lcom/mojang/blaze3d/platform/SourceFactor;Lcom/mojang/blaze3d/platform/DestFactor;)V + p 1 source + p 2 dest + m (Lcom/mojang/blaze3d/platform/SourceFactor;Lcom/mojang/blaze3d/platform/DestFactor;Lcom/mojang/blaze3d/platform/SourceFactor;Lcom/mojang/blaze3d/platform/DestFactor;)V + p 1 sourceColor + p 2 destColor + p 3 sourceAlpha + p 4 destAlpha +c net/minecraft/class_8928 net/minecraft/client/render/entity/animation/BatAnimations + f Lnet/minecraft/class_7184; field_47103 ROOSTING + f Lnet/minecraft/class_7184; field_47104 FLYING +c net/minecraft/class_8927 net/minecraft/block/OxidizableTrapdoorBlock + f Lnet/minecraft/class_5955$class_5811; field_47095 oxidationLevel + f Lcom/mojang/serialization/MapCodec; field_47094 CODEC + m ()Lnet/minecraft/class_5955$class_5811; method_54774 getDegradationLevel + m (Lnet/minecraft/class_8177;Lnet/minecraft/class_5955$class_5811;Lnet/minecraft/class_4970$class_2251;)V + p 1 type + p 2 oxidationLevel + p 3 settings + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54773 method_54773 + p 0 instance +c net/minecraft/class_8926 net/minecraft/block/OxidizableGrateBlock + f Lnet/minecraft/class_5955$class_5811; field_47093 oxidationLevel + f Lcom/mojang/serialization/MapCodec; field_47092 CODEC + m ()Lnet/minecraft/class_5955$class_5811; method_54772 getDegradationLevel + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54771 method_54771 + p 0 instance + m (Lnet/minecraft/class_5955$class_5811;Lnet/minecraft/class_4970$class_2251;)V + p 1 oxidationLevel + p 2 settings +c net/minecraft/class_7615 net/minecraft/network/message/MessageVerifier + c Verifies incoming messages' signature and the message chain.\n\n

Methods in this interface must be called in the order of the message's reception,\nas it affects the verification result. + f Lorg/slf4j/Logger; field_45957 LOGGER + f Lnet/minecraft/class_7615; field_40695 NO_SIGNATURE + f Lnet/minecraft/class_7615; field_40696 UNVERIFIED + m (Lnet/minecraft/class_7471;)Lnet/minecraft/class_7471; method_45048 ensureVerified + p 1 message + m (Lnet/minecraft/class_7471;)Lnet/minecraft/class_7471; method_55626 method_55626 + p 0 message +c net/minecraft/class_7615$class_7616 net/minecraft/network/message/MessageVerifier$Impl + f Ljava/util/function/BooleanSupplier; field_45958 expirationChecker + f Z field_39821 lastMessageVerified + f Lnet/minecraft/class_7500; field_39822 signatureVerifier + f Lnet/minecraft/class_7471; field_40697 lastVerifiedMessage + m (Lnet/minecraft/class_7471;)Z method_53509 verify + p 1 message + m (Lnet/minecraft/class_7500;Ljava/util/function/BooleanSupplier;)V + p 1 signatureVerifier + p 2 expirationChecker + m (Lnet/minecraft/class_7471;)Z method_44996 verifyPrecedingSignature + p 1 message +c net/minecraft/class_8947 net/minecraft/entity/ai/brain/sensor/BreezeAttackablesSensor + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;Lnet/minecraft/class_1309;)Z method_54996 method_54996 + p 2 target + m (Lnet/minecraft/class_8949;Lnet/minecraft/class_1309;)V method_54995 method_54995 + p 1 target + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_8949;)V method_54993 sense +c net/minecraft/class_8946 net/minecraft/util/math/LongJumpUtil + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_243;FIZ)Ljava/util/Optional; method_54990 getJumpingVelocity + p 0 entity + p 1 jumpTarget + p 2 maxVelocity + p 3 angle + p 4 requireClearPath + m (Lnet/minecraft/class_1308;Lnet/minecraft/class_4048;Lnet/minecraft/class_243;Lnet/minecraft/class_243;)Z method_54989 isPathClear + p 2 lastPos + p 1 dimensions + p 0 entity + p 3 nextPos +c net/minecraft/class_8945 net/minecraft/datafixer/schema/Schema3689 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_8944 net/minecraft/predicate/entity/LootContextPredicateValidator + f Lnet/minecraft/class_7871$class_7872; field_47236 conditionsLookup + f Lnet/minecraft/class_8942; field_47235 errorReporter + m (Ljava/util/List;Ljava/lang/String;)V method_54965 validateEntityPredicates + p 1 predicates + p 2 path + m (Ljava/util/List;Lnet/minecraft/class_176;Ljava/lang/String;)V method_54964 validate + p 3 path + p 1 predicates + p 2 type + m (Lnet/minecraft/class_8942;Lnet/minecraft/class_7871$class_7872;)V + p 2 conditionsLookup + p 1 errorReporter + m (Lnet/minecraft/class_5258;Ljava/lang/String;)V method_54962 validateEntityPredicate + p 1 predicate + p 2 path + m (Ljava/lang/String;Lnet/minecraft/class_5258;)V method_54963 method_54963 + p 2 p + m (Ljava/util/Optional;Ljava/lang/String;)V method_54966 validateEntityPredicate + p 1 predicate + p 2 path + m (Lnet/minecraft/class_5258;Lnet/minecraft/class_176;Ljava/lang/String;)V method_54961 validate + p 3 path + p 1 predicate + p 2 type +c net/minecraft/class_8942 net/minecraft/util/ErrorReporter + f Lnet/minecraft/class_8942; field_60348 EMPTY + m (Lnet/minecraft/class_8942$class_11337;)V method_54947 report + p 1 error + m (Lnet/minecraft/class_8942$class_11336;)Lnet/minecraft/class_8942; method_54946 makeChild + p 1 context +c net/minecraft/class_8942$class_11335 net/minecraft/util/ErrorReporter$ListElementContext + f I comp_4208 index + m ()I comp_4208 index + m (I)V + p 1 index +c net/minecraft/class_8942$class_11336 net/minecraft/util/ErrorReporter$Context + m ()Ljava/lang/String; get getName +c net/minecraft/class_8942$class_11337 net/minecraft/util/ErrorReporter$Error + m ()Ljava/lang/String; method_71358 getMessage +c net/minecraft/class_8942$class_11338 net/minecraft/util/ErrorReporter$LootTableContext + f Lnet/minecraft/class_5321; comp_4209 id + m ()Lnet/minecraft/class_5321; comp_4209 id + m (Lnet/minecraft/class_5321;)V + p 1 id +c net/minecraft/class_8942$class_11332 net/minecraft/util/ErrorReporter$ReferenceLootTableContext + f Lnet/minecraft/class_5321; comp_4204 id + m ()Lnet/minecraft/class_5321; comp_4204 id + m (Lnet/minecraft/class_5321;)V + p 1 id +c net/minecraft/class_8942$class_11333 net/minecraft/util/ErrorReporter$MapElementContext + f Ljava/lang/String; comp_4205 key + m ()Ljava/lang/String; comp_4205 key + m (Ljava/lang/String;)V + p 1 key +c net/minecraft/class_8942$class_11334 net/minecraft/util/ErrorReporter$NamedListElementContext + f Ljava/lang/String; comp_4206 key + f I comp_4207 index + m ()Ljava/lang/String; comp_4206 key + m ()I comp_4207 index + m (Ljava/lang/String;I)V + p 1 key + p 2 index +c net/minecraft/class_8942$class_11339 net/minecraft/util/ErrorReporter$CriterionContext + f Ljava/lang/String; comp_4210 name + m ()Ljava/lang/String; comp_4210 name + m (Ljava/lang/String;)V + p 1 name +c net/minecraft/class_8942$class_8943 net/minecraft/util/ErrorReporter$Impl + f Lnet/minecraft/class_8942$class_11336; field_60349 CONTEXT + f Lnet/minecraft/class_8942$class_8943; field_60350 parent + f Ljava/util/Set; field_60352 errors + f Lnet/minecraft/class_8942$class_11336; field_60351 context + m (Lnet/minecraft/class_8942$class_11336;)V + p 1 context + m (Ljava/util/Map$Entry;)Ljava/lang/String; method_59905 method_59905 + p 0 entry + m ()Z method_71349 isEmpty + m ()Ljava/lang/String; method_71351 getErrorsAsLongString + m (Lnet/minecraft/class_8942$class_8943;Lnet/minecraft/class_8942$class_11336;)V + p 2 context + p 1 parent + m ()Ljava/lang/String; method_59906 getErrorsAsString + m (Ljava/util/function/BiConsumer;)V method_71350 apply + p 1 consumer +c net/minecraft/class_8942$class_8943$class_11331 net/minecraft/util/ErrorReporter$Impl$ErrorList + f Ljava/util/List; comp_4202 errors + f Ljava/util/Map; comp_4203 children + f Lnet/minecraft/class_8942$class_11336; comp_4201 element + m (Ljava/util/List;Lnet/minecraft/class_8942$class_11336;Lnet/minecraft/class_8942$class_8943$class_11331;)V method_71357 method_71357 + p 1 context + p 2 errors + m ()Ljava/util/List; method_71353 getMessages + m (Ljava/util/List;Lnet/minecraft/class_8942$class_11336;Lnet/minecraft/class_8942$class_8943$class_11331;)V method_71356 method_71356 + p 2 errors + p 1 context + m ()Ljava/util/List; comp_4202 errors + m (Lnet/minecraft/class_8942$class_11336;)V + p 1 context + m (Ljava/lang/String;)Ljava/lang/String; method_71355 method_71355 + p 0 message + m (Lnet/minecraft/class_8942$class_11336;)Lnet/minecraft/class_8942$class_8943$class_11331; method_71354 get + p 1 context + m ()Ljava/util/Map; comp_4203 children + m ()Lnet/minecraft/class_8942$class_11336; comp_4201 element + m (Lnet/minecraft/class_8942$class_11336;Ljava/util/List;Ljava/util/Map;)V + p 1 element + p 2 errors + p 3 children +c net/minecraft/class_8942$class_8943$class_11330 net/minecraft/util/ErrorReporter$Impl$ErrorEntry + f Lnet/minecraft/class_8942$class_11337; comp_4200 error + f Lnet/minecraft/class_8942$class_8943; comp_4199 source + m ()Lnet/minecraft/class_8942$class_11337; comp_4200 error + m ()Lnet/minecraft/class_8942$class_8943; comp_4199 source + m (Lnet/minecraft/class_8942$class_8943;Lnet/minecraft/class_8942$class_11337;)V + p 1 source + p 2 error +c net/minecraft/class_8942$class_11340 net/minecraft/util/ErrorReporter$Logging + f Lorg/slf4j/Logger; field_60353 logger + m (Lorg/slf4j/Logger;)V + p 1 logger + m (Lnet/minecraft/class_8942$class_11336;Lorg/slf4j/Logger;)V + p 1 context + p 2 logger +c net/minecraft/class_8941 net/minecraft/util/DelegatingDataOutput + f Ljava/io/DataOutput; field_47218 delegate + m ([B)V write write + p 1 b + m (I)V writeByte writeByte + p 1 v + m (I)V write write + p 1 v + m (F)V writeFloat writeFloat + p 1 v + m (J)V writeLong writeLong + p 1 v + m (Z)V writeBoolean writeBoolean + p 1 v + m (D)V writeDouble writeDouble + p 1 v + m (I)V writeShort writeShort + p 1 v + m (Ljava/lang/String;)V writeBytes writeBytes + p 1 s + m (Ljava/lang/String;)V writeUTF writeUTF + p 1 s + m ([BII)V write write + p 2 off + p 1 bs + p 3 len + m (I)V writeChar writeChar + p 1 v + m (Ljava/io/DataOutput;)V + p 1 delegate + m (Ljava/lang/String;)V writeChars writeChars + p 1 s + m (I)V writeInt writeInt + p 1 v +c net/minecraft/class_7610 net/minecraft/network/message/MessageChain + c A class for handling the "message chain".\n\n

A message chain (since 1.19.3) is implemented using an integer that is incremented\nfor each message, called "index". {@link MessageLink} represents the link that a\nparticular message has.\n\n

Clients signing a message with its preceding message's index is called\n"packing", and the server creating a signed message with its preceding message's\nindex is called "unpacking". Unpacked messages can then be verified to check the\nchain's legitimacy.\n\n@see MessageLink + f Lnet/minecraft/class_7826; field_40692 link + f Ljava/time/Instant; field_47703 lastTimestamp + f Lorg/slf4j/Logger; field_40691 LOGGER + m (Lnet/minecraft/class_7501;)Lnet/minecraft/class_7610$class_7612; method_44880 getPacker + p 1 signer + m (Lnet/minecraft/class_7428;)Lnet/minecraft/class_7610$class_7611; method_44874 getUnpacker + p 1 playerPublicKey + m (Lnet/minecraft/class_7501;Lnet/minecraft/class_7608;)Lnet/minecraft/class_7469; method_46311 method_46311 + p 2 body + m (Ljava/util/UUID;Ljava/util/UUID;)V + p 1 sender + p 2 sessionId + m (Lnet/minecraft/class_7826;Lnet/minecraft/class_7608;Lnet/minecraft/class_7498$class_7499;)V method_46313 method_46313 + p 2 updatable +c net/minecraft/class_7610$class_7612 net/minecraft/network/message/MessageChain$Packer + c Packers sign a message on the client with its preceding message's index.\n\n@see MessageChain#getPacker + f Lnet/minecraft/class_7610$class_7612; field_40694 NONE + m (Lnet/minecraft/class_7608;)Lnet/minecraft/class_7469; method_46316 method_46316 + p 0 body + m (Lnet/minecraft/class_7608;)Lnet/minecraft/class_7469; pack pack + p 1 body +c net/minecraft/class_7610$class_7611 net/minecraft/network/message/MessageChain$Unpacker + c Unpacker creates a signed message on the server with the server's preceding message\nindex when they receive a message. Unpacked messages can then be verified to check\nthe message chain's legitimacy.\n\n@see MessageChain#getUnpacker + m (Ljava/util/function/BooleanSupplier;Ljava/util/UUID;Lnet/minecraft/class_7469;Lnet/minecraft/class_7608;)Lnet/minecraft/class_7471; method_46315 method_46315 + p 2 signature + p 3 body + m (Ljava/util/UUID;Ljava/util/function/BooleanSupplier;)Lnet/minecraft/class_7610$class_7611; unsigned unsigned + p 0 sender + p 1 secureProfileEnforced + m (Lnet/minecraft/class_7469;Lnet/minecraft/class_7608;)Lnet/minecraft/class_7471; unpack unpack + p 2 body + p 1 signature +c net/minecraft/class_7610$class_7825 net/minecraft/network/message/MessageChain$MessageChainException + f Lnet/minecraft/class_2561; field_50259 INVALID_SIGNATURE_EXCEPTION + f Lnet/minecraft/class_2561; field_50258 EXPIRED_PROFILE_KEY_EXCEPTION + f Lnet/minecraft/class_2561; field_50257 CHAIN_BROKEN_EXCEPTION + f Lnet/minecraft/class_2561; field_50260 OUT_OF_ORDER_CHAT_EXCEPTION + f Lnet/minecraft/class_2561; field_50256 MISSING_PROFILE_KEY_EXCEPTION + m (Lnet/minecraft/class_2561;)V + p 1 message +c net/minecraft/class_8940 net/minecraft/command/IsolatedCommandAction + f Lnet/minecraft/class_8935; field_47171 returnValueConsumer + f Ljava/util/function/Consumer; field_47170 controlConsumer + m (Ljava/util/function/Consumer;Lnet/minecraft/class_8935;)V + p 1 controlConsumer + p 2 returnValueConsumer +c net/minecraft/class_7608 net/minecraft/network/message/MessageBody + c A body of a message, including the content, timestamp, salt used for the digest\n(the hashed body), and the list of players' "last seen messages".\nOther bits of information, such as sender, are included directly in the packet. + f Lcom/mojang/serialization/MapCodec; field_40847 CODEC + f Ljava/time/Instant; comp_930 timestamp + f Lnet/minecraft/class_7635; comp_932 lastSeenMessages + f J comp_931 salt + f Ljava/lang/String; comp_929 content + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46612 method_46612 + p 0 instance + m (Lnet/minecraft/class_7498$class_7499;)V method_46304 update + p 1 updater + m ()Ljava/time/Instant; comp_930 timestamp + m (Lnet/minecraft/class_7561;)Lnet/minecraft/class_7608$class_7824; method_46306 toSerialized + p 1 storage + m (Ljava/lang/String;)Lnet/minecraft/class_7608; method_46305 ofUnsigned + p 0 content + m ()Lnet/minecraft/class_7635; comp_932 lastSeenMessages + m ()Ljava/lang/String; comp_929 content + m ()J comp_931 salt + m (Ljava/lang/String;Ljava/time/Instant;JLnet/minecraft/class_7635;)V + p 1 content + p 2 timestamp + p 3 salt + p 5 lastSeenMessages +c net/minecraft/class_7608$class_7824 net/minecraft/network/message/MessageBody$Serialized + c The serialized version of {@code MessageBody} used in networking.\n\n@see MessageBody#toSerialized + f Ljava/time/Instant; comp_1091 timestamp + f Ljava/lang/String; comp_1090 content + f J comp_1092 salt + f Lnet/minecraft/class_7635$class_7815; comp_1093 lastSeen + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_7561;)Ljava/util/Optional; method_46309 toBody + p 1 storage + m ()Ljava/time/Instant; comp_1091 timestamp + m (Lnet/minecraft/class_2540;)V method_46307 write + p 1 buf + m (Lnet/minecraft/class_7635;)Lnet/minecraft/class_7608; method_46308 method_46308 + p 1 lastSeenMessages + m ()J comp_1092 salt + m ()Lnet/minecraft/class_7635$class_7815; comp_1093 lastSeen + m ()Ljava/lang/String; comp_1090 content + m (Ljava/lang/String;Ljava/time/Instant;JLnet/minecraft/class_7635$class_7815;)V + p 1 content + p 2 timestamp + p 3 salt + p 5 lastSeen +c net/minecraft/class_8939 net/minecraft/command/FallthroughCommandAction + f Lnet/minecraft/class_8939; field_47169 INSTANCE + m ()Lnet/minecraft/class_8853; method_54899 getInstance +c net/minecraft/class_8937 net/minecraft/command/Frame + f I comp_2022 depth + f Lnet/minecraft/class_8935; comp_2023 returnValueConsumer + f Lnet/minecraft/class_8937$class_8938; comp_2024 frameControl + m (I)V method_54895 succeed + p 1 returnValue + m ()V method_54896 doReturn + m ()V method_54894 fail + m ()Lnet/minecraft/class_8937$class_8938; comp_2024 frameControl + m ()Lnet/minecraft/class_8935; comp_2023 returnValueConsumer + m ()I comp_2022 depth + m (ILnet/minecraft/class_8935;Lnet/minecraft/class_8937$class_8938;)V + p 1 depth + p 2 returnValueConsumer + p 3 frameControl +c net/minecraft/class_8937$class_8938 net/minecraft/command/Frame$Control +c net/minecraft/class_8914 net/minecraft/network/packet/s2c/play/TickStepS2CPacket + f Lnet/minecraft/class_9139; field_48006 CODEC + f I comp_2016 tickSteps + m (Lnet/minecraft/class_2540;)V method_55951 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2602;)V method_54667 apply + m (Lnet/minecraft/class_8921;)Lnet/minecraft/class_8914; method_54666 create + p 0 tickManager + m ()I comp_2016 tickSteps + m (I)V + p 1 tickSteps +c net/minecraft/class_8913 net/minecraft/network/packet/s2c/play/UpdateTickRateS2CPacket + f Lnet/minecraft/class_9139; field_48005 CODEC + f Z comp_2015 isFrozen + f F comp_2014 tickRate + m (Lnet/minecraft/class_2540;)V method_55950 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2602;)V method_54665 apply + m (Lnet/minecraft/class_8921;)Lnet/minecraft/class_8913; method_54664 create + p 0 tickManager + m ()Z comp_2015 isFrozen + m ()F comp_2014 tickRate + m (FZ)V + p 1 tickRate + p 2 isFrozen +c net/minecraft/class_8911 net/minecraft/nbt/NbtCrashException +c net/minecraft/class_8910 net/minecraft/nbt/InvalidNbtException +c net/minecraft/class_8909 net/minecraft/nbt/NbtException + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/class_8925 net/minecraft/block/OxidizableDoorBlock + f Lnet/minecraft/class_5955$class_5811; field_47091 oxidationLevel + f Lcom/mojang/serialization/MapCodec; field_47090 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54769 method_54769 + p 0 instance + m ()Lnet/minecraft/class_5955$class_5811; method_54770 getDegradationLevel + m (Lnet/minecraft/class_8177;Lnet/minecraft/class_5955$class_5811;Lnet/minecraft/class_4970$class_2251;)V + p 3 settings + p 2 oxidationLevel + p 1 type +c net/minecraft/class_8924 net/minecraft/block/OxidizableBulbBlock + f Lcom/mojang/serialization/MapCodec; field_47088 CODEC + f Lnet/minecraft/class_5955$class_5811; field_47089 oxidationLevel + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54767 method_54767 + p 0 instance + m ()Lnet/minecraft/class_5955$class_5811; method_54768 getDegradationLevel + m (Lnet/minecraft/class_5955$class_5811;Lnet/minecraft/class_4970$class_2251;)V + p 2 settings + p 1 oxidationLevel +c net/minecraft/class_8923 net/minecraft/block/TransparentBlock + f Lcom/mojang/serialization/MapCodec; field_47087 CODEC +c net/minecraft/class_8922 net/minecraft/block/BulbBlock + f Lnet/minecraft/class_2746; field_47081 POWERED + f Lnet/minecraft/class_2746; field_47082 LIT + f Lcom/mojang/serialization/MapCodec; field_47080 CODEC + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_55373 update + p 3 pos + p 1 state + p 2 world +c net/minecraft/class_8921 net/minecraft/world/tick/TickManager + f Z field_46965 frozen + f Z field_46964 shouldTick + f F field_46961 tickRate + f J field_46962 nanosPerTick + f F field_46960 MIN_TICK_RATE + f I field_46963 stepTicks + m ()J method_54750 getNanosPerTick + m (I)V method_54747 setStepTicks + p 1 stepTicks + m ()I method_54753 getStepTicks + m (Lnet/minecraft/class_1297;)Z method_54746 shouldSkipTick + p 1 entity + m ()F method_54748 getTickRate + m (Z)V method_54675 setFrozen + p 1 frozen + m ()F method_54749 getMillisPerTick + m ()Z method_54751 shouldTick + m ()Z method_54752 isStepping + m ()Z method_54754 isFrozen + m (F)V method_54671 setTickRate + p 1 tickRate + m ()V method_54755 step +c net/minecraft/class_8920 net/minecraft/datafixer/schema/Schema3685 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54742 registerFields + p 0 schema + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_8918 net/minecraft/datafixer/fix/ProjectileItemTypeFix + f Ljava/lang/String; field_46959 EMPTY_ID + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; method_54737 fixSpectralArrow + p 0 typed + p 1 type + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54741 method_54741 + p 0 data + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_54731 createStack + p 1 id + p 0 projectileData + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; method_54729 fixArrow + p 0 typed + p 1 type + m (Ljava/lang/String;Lnet/minecraft/class_8918$class_8919;)Ljava/util/function/Function; method_54733 createFixApplier + p 1 id + p 2 fixer + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; method_54740 fixTrident + p 0 typed + p 1 type + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_54730 getArrowId + p 0 arrowData + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54738 method_54738 + p 0 data + m (Ljava/lang/String;Lnet/minecraft/class_8918$class_8919;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Ljava/util/function/Function; method_54734 createFixApplier + p 3 outputType + p 2 inputType + p 1 fixer + p 0 id +c net/minecraft/class_8918$class_8919 net/minecraft/datafixer/fix/ProjectileItemTypeFix$Fixer + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; fix fix + p 2 type + p 1 typed +c net/minecraft/class_8917 net/minecraft/util/collection/PriorityIterator + c A queue-like iterator that orders its values by the priority, or the insertion order\nif the priorities equal. + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_48717 queuesByPriority + f I field_48714 LOWEST_PRIORITY + f Ljava/util/Deque; field_48715 maxPriorityQueue + f I field_48716 maxPriority + m (Ljava/lang/Object;I)V method_54726 enqueue + c Adds {@code value} with the priority {@code priority}. + p 2 priority + p 1 value + m (I)Ljava/util/Deque; method_54723 method_54723 + p 0 p + m ()V method_56533 refreshMaxPriority +c net/minecraft/class_8916 net/minecraft/server/command/TickCommand + f Ljava/lang/String; field_46926 DEFAULT_TICK_RATE_STRING + f F field_46925 MAX_TICK_RATE + m (J)Ljava/lang/String; method_54686 format + p 0 nanos + m (Lnet/minecraft/class_2168;)I method_54706 executeStopSprint + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54708 method_54708 + p 0 context + m (Lnet/minecraft/class_2168;I)I method_54702 executeStep + p 0 source + p 1 steps + m (Lnet/minecraft/class_2168;)I method_54701 executeStopStep + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54713 method_54713 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54711 method_54711 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54865 method_54865 + p 0 context + m (Lnet/minecraft/class_2168;Z)I method_54693 executeFreeze + p 0 source + p 1 frozen + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54717 method_54717 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_54687 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54704 method_54704 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54715 method_54715 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_54705 method_54705 + p 0 context + p 1 suggestionsBuilder + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54688 method_54688 + p 0 context + m (Lnet/minecraft/class_2168;)I method_54690 executeQuery + p 0 source + m (Lnet/minecraft/class_2168;I)I method_54692 executeSprint + p 0 source + p 1 ticks + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54699 method_54699 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_54700 method_54700 + p 1 suggestionsBuilder + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_54689 method_54689 + p 0 context + p 1 suggestionsBuilder + m (Lnet/minecraft/class_2168;F)I method_54691 executeRate + p 0 source + p 1 rate +c net/minecraft/class_8915 net/minecraft/server/ServerTickManager + f Z field_46923 wasFrozen + f Lnet/minecraft/server/MinecraftServer; field_46924 server + f J field_46919 sprintTicks + f J field_46922 scheduledSprintTicks + f J field_46921 sprintTime + f J field_46920 sprintStartTime + m ()Z method_54670 isSprinting + m ()V method_54680 updateSprintTime + m ()V method_54681 sendUpdateTickRatePacket + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server + m ()V method_54682 sendStepPacket + m ()Z method_54676 stopStepping + m ()V method_54683 finishSprinting + m ()Z method_54678 stopSprinting + m (I)Z method_54672 step + p 1 ticks + m ()Z method_54679 sprint + m (I)Z method_54677 startSprint + p 1 ticks + m (Lnet/minecraft/class_3222;)V method_54674 sendPackets + p 1 player +c net/minecraft/class_6397 net/minecraft/util/ZipCompressor + c A ZIP compressor builds up a ZIP file. It completes the ZIP file when it is\n{@linkplain #close() closed}. All its methods and constructors throw\n{@link java.io.UncheckedIOException} when an I/O error occurs.\n\n@implSpec The compressor writes the contents of the ZIP to a {@link #temp} file\nfirst; then, it replaces the desired {@link #file} with the temp file when\nclosed. + f Ljava/nio/file/Path; field_33866 temp + f Ljava/nio/file/Path; field_33865 file + f Ljava/nio/file/FileSystem; field_33867 zip + f Lorg/slf4j/Logger; field_33864 LOGGER + m (Ljava/nio/file/Path;)V method_37161 copyAll + c Copies the {@code source} file or directory to the root of the ZIP. + p 1 source + c the source file or directory to copy + m (Ljava/nio/file/Path;Ljava/lang/String;)V method_37163 write + c Writes the {@code content}, in UTF-8 encoding, to the {@code target} path\nwithin the ZIP.\n\n

The {@code target} should be a relative path, as it will be resolved\nagainst the root of the ZIP. + p 1 target + c the target path in the ZIP + p 2 content + c the file content to write in UTF-8 + m (Ljava/nio/file/Path;)V + c Creates a ZIP compressor. + p 1 file + c the path of the ZIP file + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Z method_37164 method_37164 + p 1 attributes + p 0 path + m (Ljava/nio/file/Path;Ljava/io/File;)V method_37162 copy + c Copies a {@code source} file to the {@code target} path within the ZIP.\n\n

If the {@code source} is a directory, then an empty directory would be\ncopied. The {@code target} should be a relative path, as it will be resolved\nagainst the root of the ZIP. + p 2 source + c the source file to copy + p 1 target + c the target path in the ZIP +c net/minecraft/class_6396 net/minecraft/util/SystemDetails + c Fetches the hardware and software information to populate crash reports\nand debug profiles. A custom section can be added by calling {@link\n#addSection(String, String)}. + f J field_33853 GIGA + f Ljava/util/Map; field_33858 sections + f Ljava/lang/String; field_33857 JVM_VERSION + f Ljava/lang/String; field_33855 OPERATING_SYSTEM + f Lorg/slf4j/Logger; field_33854 LOGGER + f J field_33852 MEBI + f Ljava/lang/String; field_33856 JAVA_VERSION + m (Ljava/util/Map$Entry;)Ljava/lang/String; method_37127 method_37127 + p 0 entry + m (Loshi/hardware/VirtualMemory;)V method_37135 addVirtualMemoryGroup + p 1 virtualMemory + m (Ljava/lang/String;Ljava/util/function/Supplier;)V method_59899 addStorageSection + p 2 pathSupplier + p 1 name + m (Ljava/util/function/Predicate;)Ljava/lang/String; method_74464 collectJvmArguments + p 0 predicate + m (Ljava/lang/StringBuilder;)V method_37124 writeTo + c Writes the system details to {@code stringBuilder}.\nThis writes the header and the sections (indented by one tab). + p 1 stringBuilder + m (J)F method_59895 toMebibytes + p 0 bytes + m (Ljava/util/List;)V method_37126 addPhysicalMemoryGroup + p 1 memories + m (Loshi/hardware/CentralProcessor;)V method_37130 addProcessorGroup + p 1 centralProcessor + m (Loshi/SystemInfo;)V method_37128 addHardwareGroup + p 1 systemInfo + m ()V method_59897 addStorageGroup + m (Ljava/lang/String;)Z method_74465 method_74465 + p 0 flag + m (Ljava/lang/String;)V method_59896 addStorageSection + p 1 property + m (Ljava/lang/String;)Z method_74467 method_74467 + p 0 flag + m (Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V method_37125 method_37125 + p 1 name + p 2 value + m (Loshi/hardware/GlobalMemory;)V method_37131 addGlobalMemoryGroup + p 1 globalMemory + m (Ljava/lang/String;Ljava/util/function/Supplier;)V method_37123 addSection + c Adds a section with the given {@code name} and the value supplied by\n{@code valueSupplier}. If an exception is thrown while calling the supplier,\n{@code ERR} is used as the value. + p 2 valueSupplier + p 1 name + m (Ljava/lang/String;Ljava/lang/String;)V method_37122 addSection + c Adds a section with the given {@code name} and {@code value}. + p 2 value + p 1 name + m (Ljava/lang/String;Ljava/lang/Runnable;)V method_37121 tryAddGroup + p 1 name + p 2 adder + m ()Ljava/lang/String; method_37120 collect + c {@return a string representation of the system details}\n\n

Sections are separated by newlines, and each section consists of the name, a colon,\na space, and the value. No indent is added by this method. + m (Ljava/util/List;)V method_37137 addGraphicsCardGroup + p 1 graphicsCards +c net/minecraft/class_6394 net/minecraft/client/network/BlockListChecker + m ()Lnet/minecraft/class_6394; method_37097 create + m (Lnet/minecraft/class_6368;)Z method_37098 isAllowed + p 1 address + m (Lnet/minecraft/class_639;)Z method_37099 isAllowed + p 1 address +c net/minecraft/class_6394$1 net/minecraft/client/network/BlockListChecker$1 + m (Ljava/lang/String;Ljava/util/function/Predicate;)Z method_37101 method_37101 + p 1 predicate + m (Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Predicate;)Z method_37100 method_37100 + p 2 predicate +c net/minecraft/class_6391 net/minecraft/unused/packageinfo/PackageInfo6391 +c net/minecraft/class_6373 net/minecraft/network/packet/s2c/common/CommonPingS2CPacket + c A packet sent by the server; the client will reply with a pong packet on the\nfirst tick after it receives this packet, with the same {@link #parameter}.\n\n@see net.minecraft.network.packet.c2s.common.CommonPongC2SPacket\n@see net.minecraft.network.packet.s2c.common.KeepAliveS2CPacket + f Lnet/minecraft/class_9139; field_48624 CODEC + f I field_33751 parameter + c The parameter of this ping packet.\n\n

If this number represents a tick, this could measure the network delay in\nticks. It is possible to be a tick number given the reply packet is sent on\nthe client on the main thread's tick, and the number is sent as a regular int\nthan a varint. + m (Lnet/minecraft/class_8705;)V method_36949 apply + m (I)V + p 1 parameter + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_56464 write + p 1 buf + m ()I method_36950 getParameter +c net/minecraft/class_6374 net/minecraft/network/packet/c2s/common/CommonPongC2SPacket + c This is a packet that is sent by the client during tick after receiving a\nplay ping packet from the server, passing the {@link #parameter} back to the\nserver.\n\n@see net.minecraft.network.packet.s2c.common.CommonPingS2CPacket\n@see net.minecraft.network.packet.c2s.common.KeepAliveC2SPacket\n@see net.minecraft.network.packet.c2s.query.QueryPingC2SPacket + f Lnet/minecraft/class_9139; field_48648 CODEC + f I field_33752 parameter + m (I)V + p 1 parameter + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_56477 write + p 1 buf + m (Lnet/minecraft/class_8706;)V method_36959 apply + m ()I method_36960 getParameter +c net/minecraft/class_6371 net/minecraft/client/network/RedirectResolver + f Lorg/slf4j/Logger; field_33749 LOGGER + f Lnet/minecraft/class_6371; field_33750 INVALID + m (Lnet/minecraft/class_639;)Ljava/util/Optional; lookupRedirect lookupRedirect + p 1 address + m (Lnet/minecraft/class_639;)Ljava/util/Optional; method_36910 method_36910 + p 0 address + m (Ljavax/naming/directory/DirContext;Lnet/minecraft/class_639;)Ljava/util/Optional; method_36911 method_36911 + p 1 address + p 0 context + m ()Lnet/minecraft/class_6371; method_36909 createSrv +c net/minecraft/class_6372 net/minecraft/unused/packageinfo/PackageInfo6372 +c net/minecraft/class_6370 net/minecraft/client/network/AllowedAddressResolver + f Lnet/minecraft/class_6394; field_33847 blockListChecker + f Lnet/minecraft/class_6369; field_33746 addressResolver + f Lnet/minecraft/class_6371; field_33747 redirectResolver + f Lnet/minecraft/class_6370; field_33745 DEFAULT + m (Lnet/minecraft/class_6369;Lnet/minecraft/class_6371;Lnet/minecraft/class_6394;)V + p 1 addressResolver + p 2 redirectResolver + p 3 blockListChecker + m (Lnet/minecraft/class_639;)Ljava/util/Optional; method_36907 resolve + p 1 address +c net/minecraft/class_6379 net/minecraft/client/gui/Selectable + m ()Ljava/util/Collection; method_65516 getNarratedParts + m ()Lnet/minecraft/class_6379$class_6380; method_37018 getType + m ()Z method_37303 isInteractable +c net/minecraft/class_6379$class_6380 net/minecraft/client/gui/Selectable$SelectionType + f Lnet/minecraft/class_6379$class_6380; field_33786 FOCUSED + f Lnet/minecraft/class_6379$class_6380; field_33785 HOVERED + f Lnet/minecraft/class_6379$class_6380; field_33784 NONE + m ()Z method_37028 isFocused +c net/minecraft/class_6378 net/minecraft/structure/processor/ProtectedBlocksStructureProcessor + f Lcom/mojang/serialization/MapCodec; field_33772 CODEC + f Lnet/minecraft/class_6862; field_33771 protectedBlocksTag + m (Lnet/minecraft/class_6862;)V + p 1 protectedBlocksTag + m (Lnet/minecraft/class_6378;)Lnet/minecraft/class_6862; method_37002 method_37002 + p 0 processor +c net/minecraft/class_6384 net/minecraft/client/gui/screen/narration/Narration + c A narration is a message consisting of a list of string "sentences".\nThe sentences can be iterated using {@link #forEachSentence forEachSentence}.\n\n

Narrations are attached to {@linkplain NarrationPart narration parts}\nusing {@link NarrationMessageBuilder#put(NarrationPart, Narration)}. + f Ljava/lang/Object; field_33794 value + f Lnet/minecraft/class_6384; field_33793 EMPTY + c An empty narration that contains no sentences. + f Ljava/util/function/BiConsumer; field_33795 transformer + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/util/function/Consumer;)V method_37039 forEachSentence + c Iterates all sentences in this narration with a {@link Consumer}. + p 1 consumer + c the consumer to accept all sentences in this narration + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_6384; method_37042 text + c Creates a narration from a single {@link Text} sentence.\n\n@implSpec The sentence is converted to a string using {@link Text#getString}.\n@return the created narration + p 0 text + c the narrated sentence + m (Ljava/lang/String;)Lnet/minecraft/class_6384; method_37036 string + c Creates a narration from a single string sentence.\n\n@return the created narration + p 0 string + c the narrated sentence + m (Ljava/util/List;)Lnet/minecraft/class_6384; method_37037 texts + c Creates a narration from a list of {@link Text} sentences.\n\n@implSpec The sentences are converted to strings using {@link Text#getString}.\n@return the created narration + p 0 texts + c the narrated sentences + m (Ljava/util/function/Consumer;Lnet/minecraft/class_2561;)V method_37041 method_37041 + p 1 text + p 0 consumer + m (Ljava/lang/Object;Ljava/util/function/BiConsumer;)V + p 2 transformer + p 1 value + m (Ljava/util/function/Consumer;Lnet/minecraft/class_3902;)V method_37040 method_37040 + p 1 text + p 0 consumer + m (Ljava/util/List;Ljava/util/function/Consumer;Ljava/util/List;)V method_37038 method_37038 + p 1 consumer + p 2 texts +c net/minecraft/class_6385 net/minecraft/client/gui/screen/narration/ScreenNarrator + c Manages narration messages and combines them into a narrated string. + f Ljava/util/Map; field_33797 narrations + f I field_33796 currentMessageIndex + m (Lnet/minecraft/class_6385$class_6386;)Lnet/minecraft/class_6381; method_68702 method_68702 + p 0 partIndex + m (Ljava/util/function/Consumer;)V method_37044 buildNarrations + c Creates the narration messages for the next narration using a\n{@link NarrationMessageBuilder}. + p 1 builderConsumer + c a consumer that adds the narrations to a {@link NarrationMessageBuilder} + m (Z)Ljava/lang/String; method_37045 buildNarratorText + c Builds a text representation of the narrations produced by the last call to\n{@link #buildNarrations buildNarrations}.\n\n@implNote Contains all sentences in the narrations of the current narration\nmessage separated by {@code ". "}, ordered as described in\n{@link NarrationMessageBuilder}.\n@return the created narrator text + p 1 includeUnchanged + c if {@code true}, the text will include unchanged messages that have\nalready been included in the output of this method previously + m (Lnet/minecraft/class_6385$class_6386;)Ljava/lang/Integer; method_68701 method_68701 + p 0 partIndex + m (ZLjava/util/function/Consumer;Lnet/minecraft/class_6385$class_6386;Lnet/minecraft/class_6385$class_6387;)V method_37046 method_37046 + p 3 partIndex + p 4 message +c net/minecraft/class_6385$class_6387 net/minecraft/client/gui/screen/narration/ScreenNarrator$Message + f Lnet/minecraft/class_6384; field_33803 narration + f I field_33804 index + f Z field_33805 used + m (ILnet/minecraft/class_6384;)Lnet/minecraft/class_6385$class_6387; method_37049 setNarration + p 2 narration + p 1 index +c net/minecraft/class_6385$1 net/minecraft/client/gui/screen/narration/ScreenNarrator$1 + f Z field_33800 first + m (Ljava/lang/Object;)V accept accept + p 1 sentence + m (Ljava/lang/String;)V method_37048 accept +c net/minecraft/class_6385$class_6388 net/minecraft/client/gui/screen/narration/ScreenNarrator$MessageBuilder + f I field_33807 depth + m (Lnet/minecraft/class_6385;I)V + p 2 depth + m (Lnet/minecraft/class_6385$class_6386;)Lnet/minecraft/class_6385$class_6387; method_37050 method_37050 + p 0 partIndex +c net/minecraft/class_6385$class_6386 net/minecraft/client/gui/screen/narration/ScreenNarrator$PartIndex + f Lnet/minecraft/class_6381; comp_4461 part + f I comp_4462 depth + m ()Lnet/minecraft/class_6381; comp_4461 part + m ()I comp_4462 depth + m (Lnet/minecraft/class_6381;I)V + p 2 depth + p 1 part +c net/minecraft/class_6382 net/minecraft/client/gui/screen/narration/NarrationMessageBuilder + c A builder for narration messages.\n\n

Narration messages consist of multiple sections known as\n{@linkplain NarrationPart parts}. Each narration message can\ncontain only one narration per part.\n\n

You can create a submessage by calling {@link #nextMessage()}.\nEach submessage can have its own set of narrations for the different\nnarration parts.\n\n

The narrations added to a message will be ordered by their part\nfirst, in {@link NarrationPart}'s natural ordering. If there are multiple\nnarrations for a part added through submessages, they will be ordered earliest\nsubmessage first. + m (Lnet/minecraft/class_6381;Lnet/minecraft/class_6384;)V method_37032 put + c Adds a narration to this message builder.\n\n

If a narration already exists for the specified narration part,\nit is replaced by the new narration.\n\n@see #put(NarrationPart, Text)\n@see #put(NarrationPart, String)\n@see #put(NarrationPart, Text...) + p 1 part + p 2 narration + m ()Lnet/minecraft/class_6382; method_37031 nextMessage + c Creates a narration message builder for a submessage.\n\n

Submessages can have their own set of narrations for the narration parts,\nwhich are merged with the "parent" message's narrations\nas described above.\n\n@apiNote All returned builder instances are equivalent and refer to the same\nsubmessage. If you want to add yet another set of narrations, call this method\nagain on the first submessage builder to obtain a "nested" submessage builder.\n\n@return the created builder + m (Lnet/minecraft/class_6381;Lnet/minecraft/class_2561;)V method_37034 put + c Adds a {@link Text} narration to this message builder.\n\n

If a narration already exists for the specified narration part,\nit is replaced by the new narration.\n\n@implSpec The default implementation behaves like\n{@code put(part, text.getString())}. + p 2 text + c the message for the narration + p 1 part + m (Lnet/minecraft/class_6381;Ljava/lang/String;)V method_37033 put + c Adds a string narration to this message builder.\n\n

If a narration already exists for the specified narration part,\nit is replaced by the new narration. + p 2 string + c the message for the narration + p 1 part + m (Lnet/minecraft/class_6381;[Lnet/minecraft/class_2561;)V method_37035 put + c Adds an array of {@link Text} narrations to this message builder.\n\n

Each {@link Text} in the input array will be its own sentence\nas described in {@link Narration#texts}.\n\n

If a narration already exists for the specified narration part,\nit is replaced by the new narration.\n\n@implSpec The default implementation creates a {@link Narration} for the\ntexts using {@link Narration#texts}. + p 2 texts + c the messages for the narration + p 1 part +c net/minecraft/class_6383 net/minecraft/client/gui/Narratable + m (Lnet/minecraft/class_6382;)V method_37020 appendNarrations + p 1 builder +c net/minecraft/class_6381 net/minecraft/client/gui/screen/narration/NarrationPart + c A component of a {@linkplain NarrationMessageBuilder narration message}.\nThis enum is mostly used for grouping and ordering narrations in a narration\nmessage. + f Lnet/minecraft/class_6381; field_33791 USAGE + c Usage instructions for a narrated element. + f Lnet/minecraft/class_6381; field_33790 HINT + c A hint for a narrated element, e.g. a button tooltip. + f Lnet/minecraft/class_6381; field_33788 TITLE + c The main narration for a narrated element. + f Lnet/minecraft/class_6381; field_33789 POSITION + c The position of a narrated element in a container such as a list. +c net/minecraft/class_6389 net/minecraft/unused/packageinfo/PackageInfo6389 +c net/minecraft/class_7684 net/minecraft/datafixer/schema/Schema3202 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_7685 net/minecraft/datafixer/schema/Schema3203 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_7683 net/minecraft/datafixer/fix/OptionsProgrammerArtFix + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_45313 method_45313 + p 1 typed + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_45316 method_45316 + p 1 options + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_45314 replaceTypo + p 1 option + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_45315 method_45315 + p 1 value +c net/minecraft/class_6350 net/minecraft/world/gen/chunk/AquiferSampler + m (Lnet/minecraft/class_6350$class_6565;)Lnet/minecraft/class_6350; method_36381 seaLevel + p 0 fluidLevelSampler + m (Lnet/minecraft/class_6568;Lnet/minecraft/class_1923;Lnet/minecraft/class_6953;Lnet/minecraft/class_6574;IILnet/minecraft/class_6350$class_6565;)Lnet/minecraft/class_6350; method_36382 aquifer + p 3 randomSplitter + p 4 minimumY + p 5 height + p 6 fluidLevelSampler + p 0 chunkNoiseSampler + p 1 chunkPos + p 2 noiseRouter + m (Lnet/minecraft/class_6910$class_6912;D)Lnet/minecraft/class_2680; method_38317 apply + p 2 density + p 1 pos + m ()Z method_33742 needsFluidTick +c net/minecraft/class_6350$class_6351 net/minecraft/world/gen/chunk/AquiferSampler$FluidLevel + f Lnet/minecraft/class_2680; comp_2968 state + f I comp_2967 y + m ()Lnet/minecraft/class_2680; comp_2968 state + m ()I comp_2967 y + m (ILnet/minecraft/class_2680;)V + p 2 state + p 1 y + m (I)Lnet/minecraft/class_2680; method_38318 getBlockState + p 1 y +c net/minecraft/class_6350$class_6565 net/minecraft/world/gen/chunk/AquiferSampler$FluidLevelSampler + m (III)Lnet/minecraft/class_6350$class_6351; computeFluid getFluidLevel + p 2 y + p 3 z + p 1 x +c net/minecraft/class_6350$class_5832 net/minecraft/world/gen/chunk/AquiferSampler$Impl + f D field_36221 NEEDS_FLUID_TICK_DISTANCE_THRESHOLD + f Lnet/minecraft/class_6910; field_38246 erosionDensityFunction + f Lnet/minecraft/class_6568; field_34578 chunkNoiseSampler + f Lnet/minecraft/class_6574; field_34579 randomDeriver + f Lnet/minecraft/class_6350$class_6565; field_34580 fluidLevelSampler + f I field_28822 startX + f I field_28824 startZ + f I field_28826 sizeZ + f [[I field_34581 CHUNK_POS_OFFSETS + f Lnet/minecraft/class_6910; field_35123 fluidLevelSpreadNoise + f Lnet/minecraft/class_6910; field_28813 barrierNoise + f Lnet/minecraft/class_6910; field_38247 depthDensityFunction + f Z field_28820 needsFluidTick + f [Lnet/minecraft/class_6350$class_6351; field_28816 waterLevels + f I field_28823 startY + f [J field_28817 blockPositions + f I field_28825 sizeX + f Lnet/minecraft/class_6910; field_33575 fluidTypeNoise + f Lnet/minecraft/class_6910; field_35122 fluidLevelFloodednessNoise + m (IIILnet/minecraft/class_6350$class_6351;I)Lnet/minecraft/class_2680; method_42353 getFluidBlockState + p 5 fluidLevel + p 2 blockY + p 1 blockX + p 4 defaultFluidLevel + p 3 blockZ + m (III)Lnet/minecraft/class_6350$class_6351; method_40463 getFluidLevel + p 3 blockZ + p 2 blockY + p 1 blockX + m (IIII)I method_42352 getNoiseBasedFluidLevel + p 3 blockZ + p 4 surfaceHeightEstimate + p 1 blockX + p 2 blockY + m (Lnet/minecraft/class_6568;Lnet/minecraft/class_1923;Lnet/minecraft/class_6953;Lnet/minecraft/class_6574;IILnet/minecraft/class_6350$class_6565;)V + p 5 minimumY + p 4 randomSplitter + p 3 noiseRouter + p 2 chunkPos + p 7 fluidLevelSampler + p 6 height + p 1 chunkNoiseSampler + m (I)I method_33743 getLocalZ + m (II)D method_33736 maxDistance + p 1 a + m (I)Lnet/minecraft/class_6350$class_6351; method_33738 getWaterLevel + m (Lnet/minecraft/class_6910$class_6912;Lorg/apache/commons/lang3/mutable/MutableDouble;Lnet/minecraft/class_6350$class_6351;Lnet/minecraft/class_6350$class_6351;)D method_33735 calculateDensity + p 1 pos + m (III)I method_33741 index + p 1 x + p 3 z + p 2 y + m (IIILnet/minecraft/class_6350$class_6351;IZ)I method_42354 getFluidBlockY + p 2 blockY + p 1 blockX + p 4 defaultFluidLevel + p 3 blockZ + p 5 surfaceHeightEstimate + m (I)I method_33734 getLocalX + m (I)I method_33740 getLocalY +c net/minecraft/class_7688 net/minecraft/entity/ai/goal/AmbientStandGoal + f I field_40126 cooldown + f Lnet/minecraft/class_1496; field_40125 entity + m (Lnet/minecraft/class_1496;)V method_45336 resetCooldown + p 1 entity + m (Lnet/minecraft/class_1496;)V + p 1 entity + m ()V method_45337 playAmbientStandSound +c net/minecraft/class_7689 net/minecraft/entity/passive/CamelEntity + f I field_40138 idleAnimationCooldown + f Lnet/minecraft/class_7094; field_40143 standingTransitionAnimationState + f Lnet/minecraft/class_7094; field_40145 dashingAnimationState + f Lnet/minecraft/class_4048; field_40136 SITTING_DIMENSIONS + f Lnet/minecraft/class_2940; field_40139 DASHING + f Lnet/minecraft/class_7094; field_40144 idlingAnimationState + f I field_40137 dashCooldown + f Lnet/minecraft/class_7094; field_40142 sittingTransitionAnimationState + f Lnet/minecraft/class_7094; field_40734 sittingAnimationState + f J field_57624 DEFAULT_LAST_POSE_TICK + f Lnet/minecraft/class_2940; field_40140 LAST_POSE_TICK + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_67661 canSpawn + p 4 random + p 3 pos + p 0 type + p 2 reason + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_7689; method_45347 createChild + m (J)V method_48160 initLastPoseTick + p 1 time + m ()Lnet/minecraft/class_3414; method_76099 getDashSound + m ()Lnet/minecraft/class_3414; method_76100 getDashReadySound + m ()Z method_45361 isDashing + m ()Z method_45351 isChangingPose + m ()Lnet/minecraft/class_3414; method_76102 getSitSound + m ()V method_45356 updateAnimations + m ()V method_45352 startSitting + m ()V method_45354 setStanding + m ()Lnet/minecraft/class_6880$class_6883; method_76103 getSaddleSound + m ()Z method_52548 canChangePose + m (Z)V method_45362 setDashing + p 1 dashing + m ()Z method_45350 isSitting + m ()Lnet/minecraft/class_5132$class_5133; method_45360 createCamelAttributes + m ()Lnet/minecraft/class_3414; method_76101 getStandSound + m (ZFLnet/minecraft/class_4048;F)D method_45346 getPassengerAttachmentY + p 4 scaleFactor + p 3 dimensions + p 2 tickProgress + p 1 primaryPassenger + m ()Z method_48573 shouldUpdateSittingAnimations + m ()V method_45353 startStanding + m ()Z method_45357 isStationary + m ()J method_45355 getTimeSinceLastPoseTick + m ()Z method_46398 shouldPlaySittingTransitionAnimation + m (J)V method_45344 setLastPoseTick + p 1 lastPoseTick +c net/minecraft/class_7689$class_8196 net/minecraft/entity/passive/CamelEntity$CamelMoveControl +c net/minecraft/class_7689$class_8784 net/minecraft/entity/passive/CamelEntity$CamelLookControl +c net/minecraft/class_7689$class_7690 net/minecraft/entity/passive/CamelEntity$CamelBodyControl + m (Lnet/minecraft/class_7689;Lnet/minecraft/class_7689;)V + p 2 camel +c net/minecraft/class_7686 net/minecraft/datafixer/schema/Schema3204 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerBlockEntities registerBlockEntities + p 1 schema +c net/minecraft/class_7687 net/minecraft/entity/ai/brain/task/LookAroundTask + f F field_40122 pitchRange + f F field_40121 minPitch + f F field_40120 maxYaw + f Lnet/minecraft/class_6017; field_40119 cooldown + m (Lnet/minecraft/class_6017;FFF)V + p 3 minPitch + p 4 maxPitch + p 1 cooldown + p 2 maxYaw + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1308;J)V method_45334 run +c net/minecraft/class_7695 net/minecraft/resource/featuretoggle/ToggleableFeature + f Ljava/util/Set; field_40162 FEATURE_ENABLED_REGISTRY_KEYS + m (Lnet/minecraft/class_7699;)Z method_45382 isEnabled + p 1 enabledFeatures + m ()Lnet/minecraft/class_7699; method_45322 getRequiredFeatures +c net/minecraft/class_6364 net/minecraft/client/gl/WindowFramebuffer + f Lnet/minecraft/class_6364$class_6366; field_33726 DEFAULT + f I field_33724 DEFAULT_WIDTH + f I field_33725 DEFAULT_HEIGHT + m (II)V method_36802 init + p 2 height + p 1 width + m (Lnet/minecraft/class_6364$class_6366;)Lcom/mojang/blaze3d/textures/GpuTexture; method_36803 createDepthAttachment + p 1 size + m (II)V + p 2 height + p 1 width + m (Lnet/minecraft/class_6364$class_6366;)Lcom/mojang/blaze3d/textures/GpuTexture; method_36801 createColorAttachment + p 1 size + m (II)Lnet/minecraft/class_6364$class_6366; method_36804 findSuitableSize + p 1 width + p 2 height +c net/minecraft/class_6364$class_6366 net/minecraft/client/gl/WindowFramebuffer$Size + f I field_33734 height + f I field_33733 width + m (II)V + p 2 height + p 1 width + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (II)Ljava/util/List; method_36808 findCompatible + p 1 height + p 0 width +c net/minecraft/class_7696 net/minecraft/resource/featuretoggle/FeatureFlag + f Lnet/minecraft/class_7700; field_40163 universe + f J field_40164 mask + m (Lnet/minecraft/class_7700;I)V + p 1 universe + p 2 id +c net/minecraft/class_7694 net/minecraft/unused/packageinfo/PackageInfo7694 +c net/minecraft/class_7691 net/minecraft/entity/passive/CamelBrain + f F field_40152 WALK_SPEED + f F field_40156 BREED_SPEED + f Lcom/google/common/collect/ImmutableList; field_40159 MEMORY_MODULES + f Lcom/google/common/collect/ImmutableList; field_40158 SENSORS + f Lnet/minecraft/class_6019; field_40157 WALK_TOWARD_ADULT_RANGE + m (Lnet/minecraft/class_1309;)Ljava/lang/Float; method_45364 method_45364 + p 0 entity + m (Lnet/minecraft/class_7689;Lnet/minecraft/class_5819;)V method_45367 initialize + p 0 camel + p 1 random + m (Lnet/minecraft/class_1309;)Ljava/lang/Double; method_52549 method_52549 + p 0 entity + m (Lnet/minecraft/class_4095;)V method_45370 addIdleActivities + p 0 brain + m ()Lnet/minecraft/class_4095$class_5303; method_45363 createBrainProfile + m (Lnet/minecraft/class_4095;)V method_45369 addCoreActivities + p 0 brain + m (Lnet/minecraft/class_4095;)Lnet/minecraft/class_4095; method_45365 create + p 0 brain + m (Lnet/minecraft/class_7689;)V method_45366 updateActivities + p 0 camel +c net/minecraft/class_7691$class_7692 net/minecraft/entity/passive/CamelBrain$CamelWalkTask + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7689;J)V method_57003 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7689;)Z method_76583 shouldRun +c net/minecraft/class_7691$class_7693 net/minecraft/entity/passive/CamelBrain$SitOrStandTask + f I field_40160 lastTimeSinceLastPoseTick + m (I)V + p 1 lastPoseSecondsDelta + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7689;J)V method_45372 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_7689;)Z method_45371 shouldRun +c net/minecraft/class_6360 net/minecraft/client/resource/ResourceReloadLogger + f Lnet/minecraft/class_6360$class_6363; field_33699 reloadState + f Lorg/slf4j/Logger; field_33698 LOGGER + f I field_33700 reloadCount + m ()V method_36562 finish + m (Ljava/lang/Throwable;)V method_36564 recover + p 1 throwable + m (Lnet/minecraft/class_128;)V method_36565 addReloadSection + p 1 report + m (Lnet/minecraft/class_6360$class_6362;Ljava/util/List;)V method_36563 reload + p 1 reason + p 2 packs +c net/minecraft/class_6360$class_6361 net/minecraft/client/resource/ResourceReloadLogger$RecoveryEntry + f Ljava/lang/Throwable; field_33701 throwable + m (Ljava/lang/Throwable;)V + p 1 throwable + m (Lnet/minecraft/class_129;)V method_36567 addRecoverySection + p 1 section +c net/minecraft/class_6360$class_6362 net/minecraft/client/resource/ResourceReloadLogger$ReloadReason + f Ljava/lang/String; field_33705 name + f Lnet/minecraft/class_6360$class_6362; field_33703 MANUAL + f Lnet/minecraft/class_6360$class_6362; field_33704 UNKNOWN + f Lnet/minecraft/class_6360$class_6362; field_33702 INITIAL + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_6360$class_6363 net/minecraft/client/resource/ResourceReloadLogger$ReloadState + f Lnet/minecraft/class_6360$class_6361; field_33709 recovery + f Lnet/minecraft/class_6360$class_6362; field_33707 reason + f Z field_33710 finished + f Ljava/util/List; field_33708 packs + m (Lnet/minecraft/class_129;)V method_36573 addReloadSection + p 1 section + m (Lnet/minecraft/class_6360$class_6362;Ljava/util/List;)V + p 1 reason + p 2 packs +c net/minecraft/class_7699 net/minecraft/resource/featuretoggle/FeatureSet + f Lnet/minecraft/class_7700; field_40174 universe + f Lnet/minecraft/class_7699; field_40173 EMPTY + f I field_40172 MAX_FEATURE_FLAGS + f J field_40175 featuresMask + m (Lnet/minecraft/class_7696;)Z method_45403 contains + p 1 feature + m ()Z method_58398 isEmpty + m (Lnet/minecraft/class_7699;)Lnet/minecraft/class_7699; method_59820 subtract + p 1 features + m (Lnet/minecraft/class_7699;)Z method_45400 isSubsetOf + p 1 features + m (Lnet/minecraft/class_7700;JLjava/lang/Iterable;)J method_45401 combineMask + p 3 newFeatures + p 1 featuresMask + p 0 universe + m (Lnet/minecraft/class_7699;)Z method_59819 intersects + p 1 features + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_7700;J)V + p 2 featuresMask + p 1 universe + m ()Lnet/minecraft/class_7699; method_45397 empty + m (Lnet/minecraft/class_7696;[Lnet/minecraft/class_7696;)Lnet/minecraft/class_7699; method_45399 of + p 1 features + p 0 feature1 + m (Lnet/minecraft/class_7700;Ljava/util/Collection;)Lnet/minecraft/class_7699; method_45402 of + p 1 features + p 0 universe + m (Lnet/minecraft/class_7696;)Lnet/minecraft/class_7699; method_45398 of + p 0 feature + m (Lnet/minecraft/class_7699;)Lnet/minecraft/class_7699; method_45404 combine + p 1 features +c net/minecraft/class_6368 net/minecraft/client/network/Address + m (Ljava/net/InetSocketAddress;)Lnet/minecraft/class_6368; method_36899 create + p 0 address + m ()Ljava/net/InetSocketAddress; method_36902 getInetSocketAddress + m ()Ljava/lang/String; method_36900 getHostAddress + m ()Ljava/lang/String; method_36898 getHostName + m ()I method_36901 getPort +c net/minecraft/class_6369 net/minecraft/client/network/AddressResolver + f Lorg/slf4j/Logger; field_33743 LOGGER + f Lnet/minecraft/class_6369; field_33744 DEFAULT + m (Lnet/minecraft/class_639;)Ljava/util/Optional; method_36903 method_36903 + p 0 address + m (Lnet/minecraft/class_639;)Ljava/util/Optional; resolve resolve + p 1 address +c net/minecraft/class_7697 net/minecraft/resource/featuretoggle/FeatureManager + f Ljava/util/Map; field_40167 featureFlags + f Lorg/slf4j/Logger; field_40165 LOGGER + f Lnet/minecraft/class_7700; field_40166 universe + f Lnet/minecraft/class_7699; field_40168 featureSet + m (Ljava/lang/Iterable;)Lnet/minecraft/class_7699; method_45387 featureSetOf + p 1 features + m (Lnet/minecraft/class_7699;)Ljava/util/List; method_45393 method_45393 + p 1 features + m (Lnet/minecraft/class_7700;Lnet/minecraft/class_7699;Ljava/util/Map;)V + p 1 universe + p 2 featureSet + p 3 featureFlags + m (Lnet/minecraft/class_2960;)V method_45384 method_45384 + p 0 feature + m (Lnet/minecraft/class_7699;)Z method_45385 contains + p 1 features + m ()Lcom/mojang/serialization/Codec; method_45391 getCodec + m (Lnet/minecraft/class_7699;)Ljava/util/Set; method_45392 toId + p 1 features + m ()Lnet/minecraft/class_7699; method_45383 getFeatureSet + m (Lnet/minecraft/class_7699;Ljava/util/Set;Lnet/minecraft/class_2960;Lnet/minecraft/class_7696;)V method_45386 method_45386 + p 3 featureFlag + p 2 identifier + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_45389 method_45389 + p 1 featureIds + m (Ljava/lang/Iterable;Ljava/util/function/Consumer;)Lnet/minecraft/class_7699; method_45388 featureSetOf + p 2 unknownFlagConsumer + p 1 features + m ([Lnet/minecraft/class_7696;)Lnet/minecraft/class_7699; method_45390 featureSetOf + p 1 features +c net/minecraft/class_7697$class_7698 net/minecraft/resource/featuretoggle/FeatureManager$Builder + f Ljava/util/Map; field_40171 featureFlags + f Lnet/minecraft/class_7700; field_40169 universe + f I field_40170 id + m (Ljava/lang/String;)Lnet/minecraft/class_7696; method_45396 addVanillaFlag + p 1 feature + m ()Lnet/minecraft/class_7697; method_45394 build + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_7696; method_45395 addFlag + p 1 feature + m (Ljava/lang/String;)V + p 1 universe +c net/minecraft/class_6367 net/minecraft/client/gl/SimpleFramebuffer + m (Ljava/lang/String;IIZ)V + p 1 name + p 2 width + p 3 height + p 4 useDepthAttachment +c net/minecraft/class_7662 net/minecraft/resource/metadata/ResourceMetadataMap + f Ljava/util/Map; field_39995 values + f Lnet/minecraft/class_7662; field_39994 EMPTY + m (Ljava/util/Map;)V + p 1 values + m (Lnet/minecraft/class_7677;)Ljava/lang/Object; method_45173 get + p 1 serializer + m ()Lnet/minecraft/class_7662; method_45172 of + m (Lnet/minecraft/class_7677;Ljava/lang/Object;)Lnet/minecraft/class_7662; method_45174 of + p 0 serializer + p 1 value + m (Lnet/minecraft/class_7677;Ljava/lang/Object;Lnet/minecraft/class_7677;Ljava/lang/Object;)Lnet/minecraft/class_7662; method_45175 of + p 3 value2 + p 0 serializer + p 2 serializer2 + p 1 value +c net/minecraft/class_7663 net/minecraft/resource/metadata/PackFeatureSetMetadata + f Lnet/minecraft/class_7677; field_39996 SERIALIZER + f Lcom/mojang/serialization/Codec; field_39997 CODEC + f Lnet/minecraft/class_7699; comp_994 flags + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45176 method_45176 + p 0 instance + m ()Lnet/minecraft/class_7699; comp_994 flags + m (Lnet/minecraft/class_7699;)V + p 1 flags +c net/minecraft/class_6332 net/minecraft/datafixer/schema/Schema2707 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_5000 net/minecraft/block/enums/Orientation + f Lnet/minecraft/class_2350; field_23395 rotation + f I field_54867 DIRECTIONS + f Lnet/minecraft/class_2350; field_23396 facing + f Ljava/lang/String; field_23394 name + f [Lnet/minecraft/class_5000; field_54868 VALUES + f Lnet/minecraft/class_5000; field_23389 WEST_UP + f Lnet/minecraft/class_5000; field_23388 UP_WEST + f Lnet/minecraft/class_5000; field_23387 UP_SOUTH + f Lnet/minecraft/class_5000; field_23386 UP_NORTH + f Lnet/minecraft/class_5000; field_23385 UP_EAST + f Lnet/minecraft/class_5000; field_23384 DOWN_WEST + f Lnet/minecraft/class_5000; field_23383 DOWN_SOUTH + f Lnet/minecraft/class_5000; field_23382 DOWN_NORTH + f Lnet/minecraft/class_5000; field_23381 DOWN_EAST + f Lnet/minecraft/class_5000; field_23392 SOUTH_UP + f Lnet/minecraft/class_5000; field_23391 NORTH_UP + f Lnet/minecraft/class_5000; field_23390 EAST_UP + m ()Lnet/minecraft/class_2350; method_26428 getRotation + m ()Lnet/minecraft/class_2350; method_26426 getFacing + m ([Lnet/minecraft/class_5000;)V method_35840 method_35840 + p 0 values + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;)I method_26427 getIndex + p 1 rotation + p 0 facing + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;)Lnet/minecraft/class_5000; method_26425 byDirections + p 1 rotation + p 0 facing + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/class_2350;Lnet/minecraft/class_2350;)V + p 5 rotation + p 3 name + p 4 facing +c net/minecraft/class_8990 net/minecraft/registry/RegistryCloner + f Lcom/mojang/serialization/Codec; field_47486 elementCodec + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_55278 method_55278 + p 0 error + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_55279 method_55279 + p 0 error + m (Lcom/mojang/serialization/Codec;)V + p 1 elementCodec + m (Ljava/lang/Object;Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_7225$class_7874;)Ljava/lang/Object; method_55277 clone + p 2 subsetRegistry + p 1 value + p 3 fullRegistry +c net/minecraft/class_8990$class_8991 net/minecraft/registry/RegistryCloner$CloneableRegistries + f Ljava/util/Map; field_47487 registries + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_8990$class_8991; method_55281 add + p 1 registryRef + p 2 elementCodec + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_8990; method_55280 get + p 1 registryRef +c net/minecraft/class_7668 net/minecraft/resource/fs/ResourcePath + f Ljava/util/Comparator; field_40015 COMPARATOR + f Ljava/nio/file/attribute/BasicFileAttributes; field_40013 DIRECTORY_ATTRIBUTES + f Lnet/minecraft/class_7673; field_40021 file + f Ljava/nio/file/attribute/BasicFileAttributes; field_40014 FILE_ATTRIBUTES + f Ljava/util/List; field_40019 names + f Lnet/minecraft/class_7670; field_40017 fileSystem + f Ljava/lang/String; field_40020 pathString + f Lnet/minecraft/class_7668; field_40018 parent + f Ljava/lang/String; field_40016 name + m (Ljava/nio/file/Path;)Lnet/minecraft/class_7668; method_45224 relativize + m (Lnet/minecraft/class_7670;Ljava/lang/String;Lnet/minecraft/class_7668;Lnet/minecraft/class_7673;)V + p 1 fileSystem + p 4 file + p 2 name + p 3 parent + m (Lnet/minecraft/class_7668;Ljava/lang/String;)Lnet/minecraft/class_7668; method_45217 relativize + p 1 path + p 2 name + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; relativize relativize + p 1 other + m (Ljava/nio/file/Path;)Z endsWith endsWith + p 1 other + m (I)Ljava/nio/file/Path; getName getName + p 1 index + m (Ljava/nio/file/Path;)Lnet/minecraft/class_7668; method_45226 toResourcePath + p 1 path + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; resolve resolve + p 1 other + m ([Ljava/nio/file/LinkOption;)Ljava/nio/file/Path; toRealPath toRealPath + p 1 options + m ()Lnet/minecraft/class_7670; method_45214 getFileSystem + m ()Ljava/lang/String; method_45237 getPathString + m ()Z method_45230 isReadable + m ()Lnet/minecraft/class_7668; method_45225 getFileName + m ()Lnet/minecraft/class_7668; method_45223 getRoot + m ()Ljava/nio/file/attribute/BasicFileAttributeView; method_45233 getAttributeView + m (I)Lnet/minecraft/class_7668; method_45215 getName + m (Lnet/minecraft/class_7673;)Z method_45218 isSpecial + p 0 file + m (Ljava/nio/file/Path;)Z startsWith startsWith + p 1 other + m ()Lnet/minecraft/class_7668; method_45229 toAbsolutePath + m ()Lnet/minecraft/class_7668; method_45227 getParent + m (II)Lnet/minecraft/class_7668; method_45216 subpath + m (Ljava/util/List;)Lnet/minecraft/class_7668; method_45221 get + p 1 paths + m (Ljava/lang/String;)Lnet/minecraft/class_7668; method_45219 get + p 1 name + m ()Ljava/nio/file/Path; method_45231 toPath + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/nio/file/attribute/BasicFileAttributes; method_45234 getAttributes + m ()Lnet/minecraft/class_7673$class_7674; method_45232 toDirectory + m ([Ljava/nio/file/LinkOption;)Lnet/minecraft/class_7668; method_45222 toRealPath + m ()Z method_45236 isNormal + m (Ljava/nio/file/WatchService;[Ljava/nio/file/WatchEvent$Kind;[Ljava/nio/file/WatchEvent$Modifier;)Ljava/nio/file/WatchKey; register register + p 3 modifiers + p 2 events + p 1 watcher + m (Ljava/nio/file/Path;)I compareTo compareTo + m ()Ljava/util/List; method_45235 getNames + m (Ljava/lang/Object;)I compareTo compareTo + p 1 other + m (II)Ljava/nio/file/Path; subpath subpath + p 1 beginIndex + p 2 endIndex + m (Ljava/nio/file/Path;)Lnet/minecraft/class_7668; method_45220 resolve + m ()Lnet/minecraft/class_7668; method_45228 normalize +c net/minecraft/class_7668$3 net/minecraft/resource/fs/ResourcePath$3 + m (Ljava/nio/file/attribute/FileTime;Ljava/nio/file/attribute/FileTime;Ljava/nio/file/attribute/FileTime;)V setTimes setTimes + p 3 createTime + p 2 lastAccessFile + p 1 lastModifiedTime +c net/minecraft/class_7669 net/minecraft/resource/fs/ResourceFileSystemProvider + f Ljava/lang/String; field_40023 SCHEME + m (Ljava/nio/file/Path;Ljava/lang/Class;[Ljava/nio/file/LinkOption;)Ljava/nio/file/attribute/FileAttributeView; getFileAttributeView getFileAttributeView + p 2 type + p 3 options + p 1 path + m (Ljava/nio/file/Path;)Ljava/nio/file/FileStore; getFileStore getFileStore + p 1 path + m (Ljava/net/URI;)Ljava/nio/file/FileSystem; getFileSystem getFileSystem + p 1 uri + m (Ljava/nio/file/Path;)Lnet/minecraft/class_7668; method_45238 toResourcePath + p 0 path + m (Ljava/nio/file/Path;)Z isHidden isHidden + p 1 path + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Z isSameFile isSameFile + p 2 path2 + p 1 path + m (Ljava/nio/file/Path;)V delete delete + p 1 path + m (Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)V createDirectory createDirectory + p 2 attrs + p 1 dir + m (Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/Object;[Ljava/nio/file/LinkOption;)V setAttribute setAttribute + p 1 path + p 2 attribute + p 3 value + p 4 options + m (Ljava/nio/file/Path;Ljava/util/Set;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/channels/SeekableByteChannel; newByteChannel newByteChannel + p 3 attrs + p 2 options + p 1 path + m (Ljava/net/URI;)Ljava/nio/file/Path; getPath getPath + p 1 uri + m (Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/CopyOption;)V move move + p 2 target + p 1 source + p 3 options + m (Ljava/nio/file/Path;[Ljava/nio/file/AccessMode;)V checkAccess checkAccess + p 1 path + p 2 modes + m (Ljava/nio/file/Path;Ljava/nio/file/DirectoryStream$Filter;)Ljava/nio/file/DirectoryStream; newDirectoryStream newDirectoryStream + p 1 dir + p 2 filter + m (Ljava/nio/file/Path;Ljava/lang/Class;[Ljava/nio/file/LinkOption;)Ljava/nio/file/attribute/BasicFileAttributes; readAttributes readAttributes + p 3 options + p 2 type + p 1 path + m (Ljava/net/URI;Ljava/util/Map;)Ljava/nio/file/FileSystem; newFileSystem newFileSystem + p 1 uri + p 2 env + m (Ljava/nio/file/Path;Ljava/lang/String;[Ljava/nio/file/LinkOption;)Ljava/util/Map; readAttributes readAttributes + p 2 attributes + p 3 options + p 1 path + m (Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/CopyOption;)V copy copy + p 3 options + p 2 target + p 1 source +c net/minecraft/class_7669$1 net/minecraft/resource/fs/ResourceFileSystemProvider$1 + m (Lnet/minecraft/class_7668;)Ljava/nio/file/Path; method_45239 method_45239 + p 0 child + m (Ljava/nio/file/DirectoryStream$Filter;Lnet/minecraft/class_7668;)Z method_45240 method_45240 + p 1 child +c net/minecraft/class_6338 net/minecraft/entity/ai/brain/task/RamImpactTask + f Lnet/minecraft/class_243; field_33481 direction + f Ljava/util/function/Function; field_39044 hornBreakSoundFactory + f F field_33479 speed + f Ljava/util/function/ToDoubleFunction; field_33480 strengthMultiplierFactory + f F field_33475 SPEED_STRENGTH_MULTIPLIER + f Ljava/util/function/Function; field_33476 cooldownRangeFactory + f I field_33474 RUN_TIME + f Ljava/util/function/Function; field_33482 impactSoundFactory + f Lnet/minecraft/class_4051; field_33477 targetPredicate + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6053;J)Z method_36278 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6053;J)V method_36280 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6053;J)V method_36281 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6053;)Z method_43535 shouldSnapHorn + p 2 goat + p 1 world + m (Ljava/util/function/Function;Lnet/minecraft/class_4051;FLjava/util/function/ToDoubleFunction;Ljava/util/function/Function;Ljava/util/function/Function;)V + p 5 impactSoundFactory + p 6 hornBreakSoundFactory + p 1 cooldownRangeFactory + p 2 targetPredicate + p 3 speed + p 4 strengthMultiplierFactory + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6053;)V method_36279 finishRam + p 1 world + p 2 goat + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6053;)Z method_36277 shouldRun +c net/minecraft/class_7666 net/minecraft/resource/fs/ResourceFileAttributes + f Ljava/nio/file/attribute/FileTime; field_40011 EPOCH +c net/minecraft/class_8998 net/minecraft/structure/TrialChamberData + f Ljava/util/List; field_47510 ALIAS_BINDINGS + f Lnet/minecraft/class_5321; field_47507 CHAMBER_END_POOL_KEY + f Lnet/minecraft/class_5321; field_47508 HALLWAY_FALLBACK_POOL_KEY + m (Lnet/minecraft/class_7891;)V method_55313 bootstrap + p 0 poolRegisterable + m (Ljava/lang/String;)Ljava/lang/String; method_55312 spawner + p 0 path +c net/minecraft/class_6335 net/minecraft/entity/MarkerEntity +c net/minecraft/class_7667 net/minecraft/resource/fs/ResourceFileStore + f Ljava/lang/String; field_40012 name + m (Ljava/lang/String;)V + p 1 name + m (Ljava/lang/String;)Ljava/lang/Object; getAttribute getAttribute + p 1 attribute + m (Ljava/lang/Class;)Ljava/nio/file/attribute/FileStoreAttributeView; getFileStoreAttributeView getFileStoreAttributeView + p 1 type + m (Ljava/lang/Class;)Z supportsFileAttributeView supportsFileAttributeView + p 1 type + m (Ljava/lang/String;)Z supportsFileAttributeView supportsFileAttributeView + p 1 name +c net/minecraft/class_6336 net/minecraft/entity/ai/brain/task/PrepareRamTask + c The task where an entity finds a target, a place to start its ram, and wait to\nstart its ram.\n\n@param the task owner, usually a goat + f Ljava/util/Optional; field_33469 prepareStartTime + f I field_33467 prepareTime + f F field_33465 speed + f Ljava/util/function/Function; field_33468 soundFactory + f Lnet/minecraft/class_4051; field_33466 targetPredicate + f I field_33463 minRamDistance + f I field_33464 maxRamDistance + f I field_33461 RUN_TIME + f Ljava/util/Optional; field_33470 ram + f Ljava/util/function/ToIntFunction; field_33462 cooldownFactory + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;Lnet/minecraft/class_6670;)Ljava/util/Optional; method_36264 method_36264 + p 3 mobs + m (Ljava/util/function/ToIntFunction;IIFLnet/minecraft/class_4051;ILjava/util/function/Function;)V + c Creates a ram preparation task. It has a fixed run time of {@value #RUN_TIME}. + p 4 speed + c the speed the entity walks at + p 5 targetPredicate + c the predicate for the ram target + p 6 prepareTime + c the prepare time, in ticks, the entity will stand between reaching the ram\nstart position and the start of the ram + p 7 soundFactory + c the factory of the ram prepare sound given the entity + p 1 cooldownFactory + c the factory for the cooldown, in ticks, of the ram task, given the entity + p 2 minDistance + c the min manhattan distance from the ram starting location to the ram target + p 3 maxDistance + c the max straight-line distance from the ram starting location to the ram target + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Lnet/minecraft/class_243; method_36266 calculateRamTarget + p 2 end + p 1 start + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1309;)Ljava/util/Optional; method_36262 findRamStart + p 1 entity + p 2 target + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_2338;)Z method_36263 canReach + p 1 entity + p 2 target + m (Lnet/minecraft/class_1408;Lnet/minecraft/class_2338;)Z method_36265 method_36265 + p 1 start + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1309;)V method_36268 findRam + p 2 target + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_36269 shouldKeepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_36271 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_36260 run + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;Lnet/minecraft/class_1309;)Z method_36272 method_36272 + p 3 mob + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)V method_36267 finishRunning + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_2338;)Lnet/minecraft/class_6336$class_6337; method_36261 method_36261 + p 1 start + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_1309;)V method_36270 method_36270 + p 2 mob +c net/minecraft/class_6336$class_6337 net/minecraft/entity/ai/brain/task/PrepareRamTask$Ram + c A ram chosen during the preparation. + f Lnet/minecraft/class_2338; field_33472 end + f Lnet/minecraft/class_2338; field_33471 start + f Lnet/minecraft/class_1309; field_33473 entity + m ()Lnet/minecraft/class_2338; method_36273 getStart + m ()Lnet/minecraft/class_2338; method_36275 getEnd + m ()Lnet/minecraft/class_1309; method_36276 getEntity + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_1309;)V + p 2 end + p 3 entity + p 1 start +c net/minecraft/class_6333 net/minecraft/util/math/intprovider/BiasedToBottomIntProvider + f Lcom/mojang/serialization/MapCodec; field_33443 CODEC + f I field_33444 min + f I field_33445 max + m (Lnet/minecraft/class_6333;)Ljava/lang/Integer; method_36252 method_36252 + p 0 provider + m (Lnet/minecraft/class_6333;)Ljava/lang/Integer; method_36253 method_36253 + p 0 provider + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36251 method_36251 + p 0 instance + m (II)Lnet/minecraft/class_6333; method_36249 create + p 1 max + c the maximum value, inclusive + p 0 min + c the minimum value, inclusive + m (Lnet/minecraft/class_6333;)Lcom/mojang/serialization/DataResult; method_36250 method_36250 + p 0 provider + m (II)V + p 2 max + p 1 min +c net/minecraft/class_7665 net/minecraft/resource/DefaultResourcePackBuilder + f Lorg/slf4j/Logger; field_40005 LOGGER + f Ljava/util/Set; field_40007 rootPaths + f Lnet/minecraft/class_7662; field_40009 metadataMap + f Ljava/util/Map; field_40008 paths + f Ljava/util/Set; field_40010 namespaces + f Ljava/util/Map; field_40006 RESOURCE_TYPE_TO_PATH + f Ljava/util/function/Consumer; field_40004 callback + m (Ljava/nio/file/Path;)V method_45212 addRootPath + p 1 path + m ([Ljava/lang/String;)Lnet/minecraft/class_7665; method_45206 withNamespaces + p 1 namespaces + m (Ljava/nio/file/Path;)Z method_45209 exists + p 1 path + m (Ljava/nio/file/Path;)Lnet/minecraft/class_7665; method_45204 withRoot + p 1 root + m (Lnet/minecraft/class_3264;Ljava/nio/file/Path;)V method_45208 addPath + p 2 path + p 1 type + m (Lnet/minecraft/class_3264;)Ljava/util/List; method_66030 method_66030 + p 1 type + m (Lnet/minecraft/class_3264;)Ljava/util/Set; method_45199 method_45199 + p 0 type2 + m (Lnet/minecraft/class_3264;Ljava/nio/file/Path;)V method_45211 method_45211 + p 1 type + p 2 path + m (Lnet/minecraft/class_9224;)Lnet/minecraft/class_3268; method_45210 build + p 1 info + m (Lnet/minecraft/class_3264;Ljava/nio/file/Path;)Lnet/minecraft/class_7665; method_45201 withPath + p 2 path + p 1 type + m (Ljava/util/Collection;)Ljava/util/List; method_45205 reverse + p 0 paths + m ()Lnet/minecraft/class_7665; method_45197 withDefaultPaths + m (Lnet/minecraft/class_7665;)V method_45202 method_45202 + p 0 builder + m (Lnet/minecraft/class_7662;)Lnet/minecraft/class_7665; method_45198 withMetadataMap + p 1 metadataMap + m (Lnet/minecraft/class_3264;Ljava/lang/Class;)Lnet/minecraft/class_7665; method_45200 withPaths + p 2 clazz + p 1 type + m ()Lnet/minecraft/class_7665; method_45207 runCallback +c net/minecraft/class_6334 net/minecraft/util/math/intprovider/ClampedIntProvider + f Lnet/minecraft/class_6017; field_33447 source + f Lcom/mojang/serialization/MapCodec; field_33446 CODEC + f I field_33448 min + f I field_33449 max + m (Lnet/minecraft/class_6334;)Lnet/minecraft/class_6017; method_36259 method_36259 + p 0 provider + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36256 method_36256 + p 0 instance + m (Lnet/minecraft/class_6334;)Lcom/mojang/serialization/DataResult; method_36254 method_36254 + p 0 provider + m (Lnet/minecraft/class_6017;II)Lnet/minecraft/class_6334; method_36255 create + p 0 source + p 1 min + p 2 max + m (Lnet/minecraft/class_6017;II)V + p 2 min + p 1 source + p 3 max + m (Lnet/minecraft/class_6334;)Ljava/lang/Integer; method_36257 method_36257 + p 0 provider + m (Lnet/minecraft/class_6334;)Ljava/lang/Integer; method_36258 method_36258 + p 0 provider +c net/minecraft/class_7673 net/minecraft/resource/fs/ResourceFile + f Lnet/minecraft/class_7673; field_40035 EMPTY + f Lnet/minecraft/class_7673; field_40036 RELATIVE +c net/minecraft/class_7673$class_7674 net/minecraft/resource/fs/ResourceFile$Directory + f Ljava/util/Map; comp_997 children + m ()Ljava/util/Map; comp_997 children + m (Ljava/util/Map;)V + p 1 children +c net/minecraft/class_7673$class_7675 net/minecraft/resource/fs/ResourceFile$File + f Ljava/nio/file/Path; comp_998 contents + m ()Ljava/nio/file/Path; comp_998 contents + m (Ljava/nio/file/Path;)V + p 1 contents +c net/minecraft/class_6342 net/minecraft/world/gen/heightprovider/TrapezoidHeightProvider + f Lnet/minecraft/class_5843; field_33524 minOffset + f Lnet/minecraft/class_5843; field_33525 maxOffset + f I field_33526 plateau + f Lcom/mojang/serialization/MapCodec; field_33522 CODEC + f Lorg/slf4j/Logger; field_33523 LOGGER + m (Lnet/minecraft/class_6342;)Lnet/minecraft/class_5843; method_36310 method_36310 + p 0 provider + m (Lnet/minecraft/class_6342;)Lnet/minecraft/class_5843; method_36311 method_36311 + p 0 provider + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36306 method_36306 + p 0 instance + m (Lnet/minecraft/class_5843;Lnet/minecraft/class_5843;I)Lnet/minecraft/class_6342; method_36308 create + p 1 maxOffset + c the maximum offset, inclusive + p 0 minOffset + c the minimum offset, inclusive + p 2 plateau + m (Lnet/minecraft/class_5843;Lnet/minecraft/class_5843;I)V + p 2 maxOffset + p 1 minOffset + p 3 plateau + m (Lnet/minecraft/class_5843;Lnet/minecraft/class_5843;)Lnet/minecraft/class_6342; method_36307 create + p 0 minOffset + c the minimum offset, inclusive + p 1 maxOffset + c the maximum offset, inclusive +c net/minecraft/class_6343 net/minecraft/world/gen/heightprovider/VeryBiasedToBottomHeightProvider + f I field_33531 inner + f Lnet/minecraft/class_5843; field_33529 minOffset + f Lcom/mojang/serialization/MapCodec; field_33527 CODEC + f Lorg/slf4j/Logger; field_33528 LOGGER + f Lnet/minecraft/class_5843; field_33530 maxOffset + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36312 method_36312 + p 0 instance + m (Lnet/minecraft/class_6343;)Lnet/minecraft/class_5843; method_36316 method_36316 + p 0 provider + m (Lnet/minecraft/class_6343;)Lnet/minecraft/class_5843; method_36315 method_36315 + p 0 provider + m (Lnet/minecraft/class_5843;Lnet/minecraft/class_5843;I)Lnet/minecraft/class_6343; method_36313 create + p 2 inner + p 0 minOffset + p 1 maxOffset + m (Lnet/minecraft/class_5843;Lnet/minecraft/class_5843;I)V + p 2 maxOffset + p 3 inner + p 1 minOffset + m (Lnet/minecraft/class_6343;)Ljava/lang/Integer; method_36314 method_36314 + p 0 provider +c net/minecraft/class_7670 net/minecraft/resource/fs/ResourceFileSystem + f Ljava/nio/file/FileStore; field_40031 store + f Ljava/nio/file/spi/FileSystemProvider; field_40032 fileSystemProvider + f Ljava/lang/String; field_40028 SEPARATOR + f Lcom/google/common/base/Splitter; field_40030 SEPARATOR_SPLITTER + f Ljava/util/Set; field_40029 SUPPORTED_FILE_ATTRIBUTE_VIEWS + f Lnet/minecraft/class_7668; field_40033 root + m ()Ljava/nio/file/FileStore; method_45241 getStore + m (Ljava/lang/String;)Ljava/nio/file/PathMatcher; getPathMatcher getPathMatcher + p 1 syntaxAndPattern + m (Lnet/minecraft/class_7670$class_7672;Lnet/minecraft/class_7670;Ljava/lang/String;Lnet/minecraft/class_7668;)Lnet/minecraft/class_7668; method_45242 toResourcePath + p 3 parent + p 0 root + p 1 fileSystem + p 2 name + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectOpenHashMap;Lnet/minecraft/class_7670;Lnet/minecraft/class_7668;Ljava/lang/String;Ljava/nio/file/Path;)V method_45244 method_45244 + p 4 path + p 3 fileName + m ()Lnet/minecraft/class_7670$class_7671; method_45246 builder + m ()Lnet/minecraft/class_7668; method_45245 getRoot + m (Ljava/lang/String;Lnet/minecraft/class_7670$class_7672;)V + p 2 root + p 1 name + m (Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path; getPath getPath + p 2 more + p 1 first + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectOpenHashMap;Lnet/minecraft/class_7670;Lnet/minecraft/class_7668;Ljava/lang/String;Lnet/minecraft/class_7670$class_7672;)V method_45243 method_45243 + p 4 directory + p 3 directoryName +c net/minecraft/class_7670$class_7671 net/minecraft/resource/fs/ResourceFileSystem$Builder + f Lnet/minecraft/class_7670$class_7672; field_40034 root + m (Ljava/lang/String;)Ljava/nio/file/FileSystem; method_45247 build + p 1 name + m (Ljava/util/List;Ljava/lang/String;Ljava/nio/file/Path;)Lnet/minecraft/class_7670$class_7671; method_45248 withFile + p 1 directories + p 2 name + p 3 path + m (Ljava/lang/String;)Lnet/minecraft/class_7670$class_7672; method_45250 method_45250 + p 0 directory + m (Ljava/util/List;Ljava/nio/file/Path;)Lnet/minecraft/class_7670$class_7671; method_45249 withFile + p 2 path + p 1 directories +c net/minecraft/class_7670$class_7672 net/minecraft/resource/fs/ResourceFileSystem$Directory + f Ljava/util/Map; comp_996 files + f Ljava/util/Map; comp_995 children + m ()Ljava/util/Map; comp_995 children + m ()Ljava/util/Map; comp_996 files + m (Ljava/util/Map;Ljava/util/Map;)V + p 1 children + p 2 files +c net/minecraft/class_6348 net/minecraft/block/RotatedInfestedBlock + f Lcom/mojang/serialization/MapCodec; field_46374 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54023 method_54023 + p 0 instance +c net/minecraft/class_7677 net/minecraft/resource/metadata/ResourceMetadataSerializer + f Ljava/lang/String; comp_3436 name + f Lcom/mojang/serialization/Codec; comp_3437 codec + m (Ljava/lang/Object;)Lnet/minecraft/class_7677$class_11554; method_72316 value + p 1 value + m ()Ljava/lang/String; comp_3436 name + m ()Lcom/mojang/serialization/Codec; comp_3437 codec + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)V + p 1 name + p 2 codec +c net/minecraft/class_7677$class_11554 net/minecraft/resource/metadata/ResourceMetadataSerializer$Value + f Ljava/lang/Object; comp_4415 value + f Lnet/minecraft/class_7677; comp_4414 type + m (Lnet/minecraft/class_7677;)Ljava/util/Optional; method_72317 getValueIfMatching + p 1 o + m ()Ljava/lang/Object; comp_4415 value + m ()Lnet/minecraft/class_7677; comp_4414 type + m (Lnet/minecraft/class_7677;Ljava/lang/Object;)V + p 1 type + p 2 value +c net/minecraft/class_6346 net/minecraft/server/function/Tracer + c A tree-visitor-like tracer, useful for gaining insights on function execution. + m (ILjava/lang/String;)V method_36349 traceCommandStart + p 1 depth + p 2 command + m (ILjava/lang/String;I)V method_36350 traceCommandEnd + p 3 result + p 2 command + p 1 depth + m (ILnet/minecraft/class_2960;I)V method_36351 traceFunctionCall + p 3 size + p 2 function + p 1 depth + m (Ljava/lang/String;)V method_36352 traceError + p 1 message +c net/minecraft/class_7678 net/minecraft/resource/VanillaResourcePackProvider + f Ljava/lang/String; field_40039 VANILLA_KEY + f Lorg/slf4j/Logger; field_40040 LOGGER + f Lnet/minecraft/class_8580; field_45052 symlinkFinder + f Lnet/minecraft/class_9226; field_49033 VANILLA_ID + f Lnet/minecraft/class_3268; field_40042 resourcePack + f Lnet/minecraft/class_3264; field_40041 type + f Lnet/minecraft/class_2960; field_40043 id + f Ljava/lang/String; field_55931 TESTS_KEY + m (Lnet/minecraft/class_3288$class_7680;Ljava/lang/String;)Lnet/minecraft/class_3288; method_45258 method_45258 + p 2 id + m (Ljava/nio/file/Path;)Ljava/lang/String; method_45261 getFileName + p 0 path + m (Ljava/util/function/BiConsumer;Ljava/nio/file/Path;)V method_45264 method_45264 + p 2 namespacedPath + m (Ljava/util/function/BiConsumer;Ljava/nio/file/Path;Lnet/minecraft/class_3288$class_7680;)V method_45265 method_45265 + p 3 factory + p 2 profilePath + m (Ljava/util/function/BiConsumer;)V method_45263 forEachProfile + p 1 consumer + m (Ljava/lang/String;Lnet/minecraft/class_3288$class_7680;Lnet/minecraft/class_2561;)Lnet/minecraft/class_3288; method_45260 create + p 2 packFactory + p 3 displayName + p 1 fileName + m (Ljava/util/function/Consumer;)V method_45267 forEachProfile + p 1 consumer + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_45259 getDisplayName + p 1 id + m (Lnet/minecraft/class_3264;Lnet/minecraft/class_3268;Lnet/minecraft/class_2960;Lnet/minecraft/class_8580;)V + p 3 id + p 4 symlinkFinder + p 1 type + p 2 resourcePack + m (Lnet/minecraft/class_3262;)Lnet/minecraft/class_3288; method_45257 createDefault + p 1 pack + m ()Lnet/minecraft/class_3268; method_45256 getResourcePack + m (Ljava/util/function/Consumer;Ljava/lang/String;Ljava/util/function/Function;)V method_45266 method_45266 + p 1 id + p 2 packFactory + m (Lnet/minecraft/class_3262;)Lnet/minecraft/class_3288$class_7680; method_52435 createPackFactory + p 0 pack + m (Ljava/nio/file/Path;Ljava/util/function/BiConsumer;)V method_45262 forEachProfile + p 2 consumer + p 1 namespacedPath +c net/minecraft/class_6344 net/minecraft/client/render/entity/EmptyEntityRenderer + c A renderer that does not render anything. Used for markers and area effect clouds. +c net/minecraft/class_7676 net/minecraft/unused/packageinfo/PackageInfo7676 +c net/minecraft/class_1781 net/minecraft/item/FireworkRocketItem + f D field_30884 OFFSET_POS_MULTIPLIER + f [B field_41064 FLIGHT_VALUES + m (Lnet/minecraft/class_2342;Lnet/minecraft/class_2350;)Lnet/minecraft/class_243; method_63679 position + p 1 facing + p 0 pointer +c net/minecraft/class_1786 net/minecraft/item/FlintAndSteelItem +c net/minecraft/class_1785 net/minecraft/item/EntityBucketItem + f Lnet/minecraft/class_1299; field_7991 entityType + f Lnet/minecraft/class_3414; field_28356 emptyingSound + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_2338;)V method_7824 spawnEntity + p 2 stack + p 1 world + p 3 pos + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_3611;Lnet/minecraft/class_3414;Lnet/minecraft/class_1792$class_1793;)V + p 2 fluid + p 3 emptyingSound + p 1 type + p 4 settings +c net/minecraft/class_1779 net/minecraft/item/ExperienceBottleItem +c net/minecraft/class_1778 net/minecraft/item/FireChargeItem + m (Lnet/minecraft/class_2342;Lnet/minecraft/class_2350;)Lnet/minecraft/class_2374; method_58655 method_58655 + p 1 facing + p 0 pointer + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_18453 playUseSound + p 1 world + p 2 pos +c net/minecraft/class_1777 net/minecraft/item/EnderEyeItem +c net/minecraft/class_1776 net/minecraft/item/EnderPearlItem + f F field_55033 POWER +c net/minecraft/class_1792 net/minecraft/item/Item + c An item usable by players and other entities.\n\n

Like {@link Block}, this class handles logics for a type of item, and does not\nhold any data. Any data about a particular stack of item in a world, such as item count,\nis held by an {@link ItemStack} which represents a stack of specific item. Therefore,\nthere is one - and only one - instance of Item for one item (like apples, oak planks, etc),\nwhile there can be infinite amounts of {@link ItemStack} instances. This also means that\nitems themselves cannot hold NBT data.\n\n

Items with no custom behavior, like diamonds, can call the constructor of Item\ndirectly. If a custom behavior is needed, this should be subclassed. Items also have\nto be registered in the {@link net.minecraft.registry.Registries#ITEM} registry.\n\n

Many methods of this class are called on both the logical client and logical server,\nso take caution when using those methods. The logical side can be checked using\n{@link World#isClient}. See also \nthe Fabric Wiki article. It is also important that methods that take {@link LivingEntity}\nas an argument can be called by non-players (such as foxes eating food), which causes\na crash if the code performs unchecked casting.\n\n@see BlockItem\n@see ItemStack\n@see net.minecraft.inventory.Inventory + f I field_49998 MAX_MAX_COUNT + f I field_30887 DEFAULT_MAX_COUNT + f Lnet/minecraft/class_2960; field_8001 BASE_ATTACK_SPEED_MODIFIER_ID + f Lorg/slf4j/Logger; field_27017 LOGGER + f Ljava/util/Map; field_8003 BLOCK_ITEMS + f Lnet/minecraft/class_9323; field_49263 components + f Lnet/minecraft/class_1792; field_8008 recipeRemainder + f Lnet/minecraft/class_7699; field_40209 requiredFeatures + f Lnet/minecraft/class_2960; field_8006 BASE_ATTACK_DAMAGE_MODIFIER_ID + f I field_56296 DEFAULT_BLOCKS_ATTACKS_MAX_USE_TIME + f Lnet/minecraft/class_9139; field_55708 ENTRY_PACKET_CODEC + f Ljava/lang/String; field_8014 translationKey + f I field_30889 ITEM_BAR_STEPS + f Lcom/mojang/serialization/Codec; field_54952 ENTRY_CODEC + f Lnet/minecraft/class_6880$class_6883; field_36401 registryEntry + m (Lnet/minecraft/class_1542;)V method_33261 onItemEntityDestroyed + c Called on the server when an {@link ItemEntity} holding this item gets destroyed.\nThis can happen due to fire, lava, cactus, explosion, etc. Items that can hold\nother items should override this to drop its contents.\n\n@see ItemUsage#spawnItemContents + p 1 entity + m (Lnet/minecraft/class_1838;)Lnet/minecraft/class_1269; method_7884 useOnBlock + c Called when an item is used on a block.\n\n

This method is called on both the logical client and logical server, so take caution when using this method.\nThe logical side can be checked using {@link net.minecraft.world.World#isClient() context.getWorld().isClient()}.\n\n@return an action result that specifies if using the item on a block was successful. + p 1 context + c the usage context + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Lnet/minecraft/class_1735;Lnet/minecraft/class_5536;Lnet/minecraft/class_1657;Lnet/minecraft/class_5630;)Z method_31566 onClicked + c Called when the item at {@code slot} gets clicked by the cursor\nholding {@code otherStack}.\n\n

While this method is usually called on the logical server, it can also be called on\nthe logical client, so take caution when overriding this method. The logical side can be\nchecked using {@link World#isClient}.\n\n

For example, this is called on {@link BundleItem} when the cursor holds\nan item and the player clicks on the slot that has a bundle.\n\n@return whether the action was successful + p 3 slot + c the clicked slot + p 4 clickType + p 5 player + p 6 cursorStackReference + p 1 stack + c the slot's stack + p 2 otherStack + c the stack the cursor holds + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_2680;)F method_58404 getMiningSpeed + p 1 stack + p 2 state + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1735;Lnet/minecraft/class_5536;Lnet/minecraft/class_1657;)Z method_31565 onStackClicked + c Called when the item at the cursor is clicked at {@code slot}.\n\n

While this method is usually called on the logical server, it can also be called on\nthe logical client, so take caution when overriding this method. The logical side can be\nchecked using {@link World#isClient}.\n\n

For example, this is called on {@link BundleItem} when the cursor holds\na bundle and the player clicks on the slot.\n\n@return whether the action was successful + p 4 player + p 3 clickType + p 2 slot + c the clicked slot + p 1 stack + c the stack the cursor holds + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1839; method_7853 getUseAction + c {@return the use action the item should perform} + p 1 stack + m (Lnet/minecraft/class_1799;)I method_31571 getItemBarColor + c {@return the RGB color of the item bar, usually used for durability display}\n\n

When overriding this, {@link #isItemBarVisible} and {@link #getItemBarStep} should\nalso be overridden. + p 1 stack + m (Lnet/minecraft/class_1799;)Z method_31567 isItemBarVisible + c {@return whether to show the item bar for {@code stack}}\n\n

Item bar is usually used to display durability of the stack.\n\n

When overriding this, {@link #getItemBarStep} and {@link #getItemBarColor} should\nalso be overridden. + p 1 stack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_7836 use + c Called when the player uses (or starts using) the item.\nThe use action, by default, is bound to the right mouse button.\nThis method checks the player's hunger when the item is a food, and will\n{@linkplain ActionResult#PASS pass} in all other cases by default.\n\n

If the item {@linkplain #getMaxUseTime can be used for multiple ticks}, then\nthis will only be called when the player starts using it. After that,\n{@link #usageTick} is called every tick until the player {@linkplain #finishUsing\nfinishes using the item}.\n\n

This method is called on both the logical client and logical server, so take caution when overriding this method.\nThe logical side can be checked using {@link net.minecraft.world.World#isClient() world.isClient()}.\n\n@return a typed action result that specifies whether using the item was successful.\nThe action result contains the new item stack that the player's hand will be set to. + p 1 world + c the world the item was used in + p 2 user + c the player who used the item + p 3 hand + c the hand used + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;)Lnet/minecraft/class_1799; method_7861 finishUsing + c Called when an entity finishes using the item, such as eating food or drinking a potion.\nThis method handles eating food by default.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}.\n\n

{@code user} might not be a player in some cases. For example, this occurs when a fox\neats food or when a wandering trader drinks milk.\n\n@return the new item stack after using the item + p 3 user + p 1 stack + p 2 world + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;)I method_7881 getMaxUseTime + c {@return the maximum use (right-click) time of this item, in ticks}\nOnce a player has used an item for said number of ticks, they stop using it, and {@link Item#finishUsing} is called. + p 1 stack + p 2 user + m ()Lnet/minecraft/class_1799; method_7858 getRecipeRemainder + c Gets the remainder item that should be left behind when this item is used as a crafting ingredient. + m ()Lnet/minecraft/class_1799; method_7854 getDefaultStack + c {@return the default stack for this item}\n\n

Items that expect certain components in the item stack should override\nthis method to return the stack with the component data. + m ()Lnet/minecraft/class_6880$class_6883; method_40131 getRegistryEntry + m (Lnet/minecraft/class_1799;)Z method_7886 hasGlint + c Checks if the glint effect should be applied when the item is rendered.\n\n

By default, returns true if the item has enchantments. + p 1 stack + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;Lnet/minecraft/class_1309;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_7847 useOnEntity + c Called on both the client and the server when a player uses the item on an entity.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}.\n\n

This should be used if the item can be used on multiple types of entities,\nsuch as name tags or saddles.\n\n@return the action result + p 3 entity + p 4 hand + p 1 stack + p 2 user + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1309;)Z method_7885 canMine + c {@return whether a player can break a block while holding the item}\n\n

This is to check whether the player can start breaking the block in the\nfirst place; this does not check if the item is a correct tool to mine the block.\nMelee weapons should override this to return {@code false}, unless it is also\nintended to be used as a tool. + p 2 state + p 1 stack + p 4 pos + p 3 world + p 5 user + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;)V method_54465 onCraftByPlayer + c Called when a player acquires the item by crafting, smelting, smithing, etc.\n\n

Not called when the item is automatically created, such as via a crafter. + p 1 stack + p 2 player + m (Lnet/minecraft/class_1799;)Z method_7838 isUsedOnRelease + p 1 stack + m ()I method_7882 getMaxCount + c {@return the maximum stack count of any ItemStack with this item} Can be configured through {@link Item.Settings#maxCount(int) settings.maxCount()}. + m (Lnet/minecraft/class_1792;)I method_7880 getRawId + c {@return the raw ID of {@code item}, or 0 if passed {@code null}} + p 0 item + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_2680;)Z method_58405 isCorrectForDrops + p 1 stack + p 2 state + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)V method_7873 postHit + c Called on the server when the item is used to hit an entity.\n\n

Tools and melee weapons should override this to damage the stack.\n\n@return whether the item's use stat should be incremented\n@see ItemStack#damage(int, LivingEntity, EquipmentSlot) + p 3 attacker + p 2 target + p 1 stack + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)V method_59978 postDamageEntity + p 3 attacker + p 2 target + p 1 stack + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;)Z method_65353 shouldShowOperatorBlockWarnings + p 2 player + p 1 stack + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_1792; method_7867 fromBlock + c @deprecated Please use {@link Block#asItem} + p 0 block + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_3959$class_242;)Lnet/minecraft/class_3965; method_7872 raycast + p 2 fluidHandling + p 1 player + p 0 world + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_1282; method_64193 getDamageSource + p 1 user + m (Lnet/minecraft/class_1799;)Ljava/util/Optional; method_32346 getTooltipData + p 1 stack + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;I)Z method_7840 onStoppedUsing + c Called on both the client and the server when an entity stops using an item\nbefore reaching the {@linkplain #getMaxUseTime maximum use time}. If the time was\nreached, {@link #finishUsing} is called instead.\n\n

This method is called on both the logical client and logical server, so take caution\nwhen overriding this method. The logical side can be checked using {@link\nWorld#isClient}.\n\n

{@code user} might not be a player in some cases. For example, this occurs when\nan entity uses a crossbow. + p 3 user + p 4 remainingUseTicks + p 1 stack + p 2 world + m (Lnet/minecraft/class_1792$class_1793;)V + p 1 settings + m ()Z method_31568 canBeNested + c @return true if the item can be placed inside of shulker boxes or bundles. + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1792$class_9635;Lnet/minecraft/class_10712;Ljava/util/function/Consumer;Lnet/minecraft/class_1836;)V method_67187 appendTooltip + p 3 displayComponent + p 4 textConsumer + p 5 type + p 1 stack + p 2 context + m (I)Lnet/minecraft/class_1792; method_7875 byRawId + c {@return the item from its raw ID} + p 0 id + m (Lnet/minecraft/class_6880;)Lcom/mojang/serialization/DataResult; method_65043 method_65043 + p 0 entry + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;I)V method_7852 usageTick + c Called on both the server and the client every tick while an entity uses\nthe item. Currently used by {@link CrossbowItem} to charge the crossbow.\nIf this is overridden, {@link #getMaxUseTime} should also be overridden to\nreturn a positive value.\n\n@see #finishUsing\n@see #use + p 1 world + p 3 stack + p 2 user + p 4 remainingUseTicks + c how long it's left until the entity finishes using the item, in ticks + m (Lnet/minecraft/class_1799;)I method_31569 getItemBarStep + c {@return the step, or the length of the colored area of the item bar, for\n{@code stack}}\n\n

This is between {@code 0.0f} and {code 13.0f}. By default, this is\n{@code durability * 13.0f / maxDurability}.\n\n

When overriding this, {@link #isItemBarVisible} and {@link #getItemBarColor} should\nalso be overridden. + p 1 stack + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_1304;)V method_7888 inventoryTick + c Called on the server every tick if the item is in a player or other entity's inventory. + p 1 stack + p 4 slot + p 2 world + p 3 entity + c the entity holding the item + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1937;)V method_7843 onCraft + c Called when the item is made by crafting, smelting, smithing, etc. + p 2 world + p 1 stack + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_2561; method_7864 getName + p 1 stack + m ()Ljava/lang/String; method_7876 getTranslationKey + c Gets the translation key of this item. + m (Lnet/minecraft/class_1297;FLnet/minecraft/class_1282;)F method_58403 getBonusAttackDamage + p 2 baseAttackDamage + p 3 damageSource + p 1 target + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_1309;)Z method_7879 postMine + c Called on the server when the item is used to break a block.\n\n

Tools and melee weapons should override this to damage the stack, after\nchecking if the block's hardness is larger than {@code 0.0f}.\n\n@return whether the item's use stat should be incremented\n@see net.minecraft.block.AbstractBlock.AbstractBlockState#getHardness\n@see ItemStack#damage(int, LivingEntity, EquipmentSlot) + p 1 stack + p 3 state + p 2 world + p 5 miner + p 4 pos + m ()Lnet/minecraft/class_9323; method_57347 getComponents + m ()Lnet/minecraft/class_2561; method_63680 getName +c net/minecraft/class_1792$class_9635 net/minecraft/item/Item$TooltipContext + f Lnet/minecraft/class_1792$class_9635; field_51353 DEFAULT + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_1792$class_9635; method_59530 create + p 0 registries + m ()Lnet/minecraft/class_7225$class_7874; method_59527 getRegistryLookup + m (Lnet/minecraft/class_9209;)Lnet/minecraft/class_22; method_59529 getMapState + p 1 mapIdComponent + m ()F method_59531 getUpdateTickRate + m ()Z method_72500 isDifficultyPeaceful + m (Lnet/minecraft/class_1937;)Lnet/minecraft/class_1792$class_9635; method_59528 create + p 0 world +c net/minecraft/class_1792$class_1793 net/minecraft/item/Item$Settings + c Item settings configure behaviors common to all items, such as the stack's max\ncount. An instance of this must be passed to the constructor\nof {@link Item} (or most of its subclasses). + f Lnet/minecraft/class_10162; field_54119 modelId + f Lnet/minecraft/class_7699; field_40210 requiredFeatures + f Lnet/minecraft/class_1792; field_8018 recipeRemainder + f Lnet/minecraft/class_10162; field_54115 BLOCK_PREFIXED_TRANSLATION_KEY + f Lnet/minecraft/class_9323$class_9324; field_49265 components + f Lnet/minecraft/class_10162; field_54118 translationKey + f Lnet/minecraft/class_10162; field_54116 ITEM_PREFIXED_TRANSLATION_KEY + f Lnet/minecraft/class_5321; field_54117 registryKey + m (Lnet/minecraft/class_1741;Lnet/minecraft/class_8051;)Lnet/minecraft/class_1792$class_1793; method_66332 armor + p 1 material + p 2 type + m (Lnet/minecraft/class_1792;)Lnet/minecraft/class_1792$class_1793; method_7896 recipeRemainder + c Sets the recipe remainder for any item configured with this Settings instance.\nWhen an item with a recipe remainder is used in a crafting recipe, the remainder is left in the table or returned to the player.\n\n@return this instance + p 1 recipeRemainder + m (Ljava/lang/String;)Lnet/minecraft/class_1792$class_1793; method_63684 translationKey + p 1 translationKey + m (Lnet/minecraft/class_9886;FF)Lnet/minecraft/class_1792$class_1793; method_67193 shovel + p 2 attackDamage + p 3 attackSpeed + p 1 material + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_1792$class_1793; method_60745 jukeboxPlayable + p 1 songKey + m (Lnet/minecraft/class_1304;)Lnet/minecraft/class_1792$class_1793; method_63682 equippable + p 1 slot + m ()Lnet/minecraft/class_1792$class_1793; method_63687 useItemPrefixedTranslationKey + m ()Lnet/minecraft/class_1792$class_1793; method_63685 useBlockPrefixedTranslationKey + m (I)Lnet/minecraft/class_1792$class_1793; method_7895 maxDamage + c Sets the maximum durability of any item configured with this Settings instance.\n\n

Note that max stack count is set to 1 when this method is called.\n\n@return this instance + p 1 maxDamage + c maximum durability of an ItemStack using an item with this Item.Settings instance + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Lnet/minecraft/class_1792$class_1793; method_57349 component + p 1 type + p 2 value + m (Lnet/minecraft/class_9886;FF)Lnet/minecraft/class_1792$class_1793; method_66333 sword + p 3 attackSpeed + p 2 attackDamage + p 1 material + m (Lnet/minecraft/class_9886;FFFFFFFFF)Lnet/minecraft/class_1792$class_1793; method_75216 spear + p 6 minSpeedForDismount + p 5 maxDurationForDismountSeconds + p 4 chargeDelaySeconds + p 3 chargeDamageMultiplier + p 10 minRelativeSpeedForChargeDamage + p 9 maxDurationForChargeDamageInSeconds + p 8 minSpeedForChargeKnockback + p 7 maxDurationForChargeKnockbackInSeconds + p 2 swingAnimationSeconds + p 1 material + m ()Lnet/minecraft/class_1792$class_1793; method_24359 fireproof + c If called, any item with this Settings instance is immune to fire and lava damage.\n\n@return this instance + m ()Lnet/minecraft/class_2960; method_63691 getModelId + m (I)Lnet/minecraft/class_1792$class_1793; method_61649 enchantable + p 1 enchantability + m (Lnet/minecraft/class_9285;)Lnet/minecraft/class_1792$class_1793; method_57348 attributeModifiers + p 1 attributeModifiersComponent + m (Lnet/minecraft/class_1741;)Lnet/minecraft/class_1792$class_1793; method_67188 wolfArmor + p 1 material + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_1792$class_1793; method_63686 registryKey + p 1 registryKey + m ()Ljava/lang/String; method_63689 getTranslationKey + m (Lnet/minecraft/class_9886;Lnet/minecraft/class_6862;FFF)Lnet/minecraft/class_1792$class_1793; method_66331 tool + p 4 attackSpeed + p 3 attackDamage + p 2 effectiveBlocks + p 1 material + p 5 disableBlockingForSeconds + m (Lnet/minecraft/class_4174;)Lnet/minecraft/class_1792$class_1793; method_19265 food + c When set, any item configured with this Settings instance will be edible based on the provided {@link FoodComponent}.\n\n@return this instance + p 1 foodComponent + c configured food properties for any item using this Settings instance + m (Lnet/minecraft/class_9886;FF)Lnet/minecraft/class_1792$class_1793; method_67192 hoe + p 3 attackSpeed + p 1 material + p 2 attackDamage + m ([Lnet/minecraft/class_7696;)Lnet/minecraft/class_1792$class_1793; method_45434 requires + p 1 features + m (Lnet/minecraft/class_1792;)Lnet/minecraft/class_1792$class_1793; method_62834 useRemainder + p 1 convertInto + m (Lnet/minecraft/class_9886;FF)Lnet/minecraft/class_1792$class_1793; method_67190 axe + p 3 attackSpeed + p 1 material + p 2 attackDamage + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_1792$class_1793; method_67189 trimMaterial + p 1 trimMaterial + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_63688 method_63688 + p 0 key + m (Lnet/minecraft/class_9886;FF)Lnet/minecraft/class_1792$class_1793; method_66330 pickaxe + p 1 material + p 3 attackSpeed + p 2 attackDamage + m (Lnet/minecraft/class_1741;)Lnet/minecraft/class_1792$class_1793; method_75217 nautilusArmor + p 1 material + m (I)Lnet/minecraft/class_1792$class_1793; method_7889 maxCount + c Sets the maximum stack count of any ItemStack with an Item using this Settings instance.\n\n

Note that a count over 64 leads to unreliable behavior in GUIs.\nDamageable items can not have a maximum stack count (they default to 1).\nAn Item.Settings' max count defaults to 64.\n\n@throws RuntimeException if this Settings instance also has a max damage value set\n@return this instance + p 1 maxCount + c maximum stack count of any ItemStack with an item using this Settings instance + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2960;)Lnet/minecraft/class_9323; method_58406 getValidatedComponents + p 1 name + p 2 modelId + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_1792$class_1793; method_61647 repairable + p 1 repairIngredientsTag + m (Lnet/minecraft/class_1741;)Lnet/minecraft/class_1792$class_1793; method_67191 horseArmor + p 1 material + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_63690 method_63690 + p 0 key + m (F)Lnet/minecraft/class_1792$class_1793; method_62832 useCooldown + p 1 seconds + m (Lnet/minecraft/class_1304;)Lnet/minecraft/class_1792$class_1793; method_64194 equippableUnswappable + p 1 slot + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_1792$class_1793; method_72499 spawnEgg + p 1 entityType + m (Lnet/minecraft/class_4174;Lnet/minecraft/class_10124;)Lnet/minecraft/class_1792$class_1793; method_62833 food + p 1 foodComponent + p 2 consumableComponent + m (Lnet/minecraft/class_1814;)Lnet/minecraft/class_1792$class_1793; method_7894 rarity + c Sets the {@link Rarity} of any item configured with this Settings instance, which changes the color of its name.\n\n

An item's rarity defaults to {@link Rarity#COMMON}.\n\n@return this instance + p 1 rarity + c rarity to apply to items using this Settings instance + m (Lnet/minecraft/class_1792;)Lnet/minecraft/class_1792$class_1793; method_61648 repairable + p 1 repairIngredient +c net/minecraft/class_1790 net/minecraft/item/DecorationItem + f Lnet/minecraft/class_1299; field_7999 entityType + f Lnet/minecraft/class_2561; field_42467 RANDOM_TEXT + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1792$class_1793;)V + p 1 type + p 2 settings + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_2350;Lnet/minecraft/class_1799;Lnet/minecraft/class_2338;)Z method_7834 canPlaceOn + p 2 side + p 1 player + p 4 pos + p 3 stack +c net/minecraft/class_1796 net/minecraft/entity/player/ItemCooldownManager + f Ljava/util/Map; field_8024 entries + f I field_8025 tick + m (Lnet/minecraft/class_1799;F)F method_7905 getCooldownProgress + p 1 stack + p 2 tickProgress + m (Lnet/minecraft/class_2960;I)V method_7906 set + p 2 duration + p 1 groupId + m (Lnet/minecraft/class_1799;I)V method_62835 set + p 1 stack + p 2 duration + m ()V method_7903 update + m (Lnet/minecraft/class_1799;)Z method_7904 isCoolingDown + p 1 stack + m (Lnet/minecraft/class_2960;)V method_7901 onCooldownUpdate + p 1 groupId + m (Lnet/minecraft/class_2960;)V method_7900 remove + p 1 groupId + m (Lnet/minecraft/class_2960;I)V method_7902 onCooldownUpdate + p 2 duration + p 1 groupId + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_2960; method_62836 getGroup + p 1 stack +c net/minecraft/class_1796$class_1797 net/minecraft/entity/player/ItemCooldownManager$Entry + f I comp_3084 endTick + f I comp_3083 startTick + m ()I comp_3084 endTick + m (II)V + p 2 endTick + p 1 startTick + m ()I comp_3083 startTick +c net/minecraft/class_1795 net/minecraft/item/ItemFrameItem +c net/minecraft/class_1794 net/minecraft/item/HoeItem + f Ljava/util/Map; field_8023 TILLING_ACTIONS + c A map of input blocks to predicate-consumer action pairs.\n\n

Tilling works so that if the predicate succeeds, the consumer (the real action)\nis executed, and the hoe is damaged. + m (Lnet/minecraft/class_9886;FFLnet/minecraft/class_1792$class_1793;)V + p 2 attackDamage + p 1 material + p 4 settings + p 3 attackSpeed + m (Lnet/minecraft/class_1838;)Z method_36987 canTillFarmland + c {@return whether the used block can be tilled into farmland}\nThis method is used as the tilling predicate for most vanilla blocks except rooted dirt. + p 0 context + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1935;Lnet/minecraft/class_1838;)V method_36986 method_36986 + p 2 context + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1935;)Ljava/util/function/Consumer; method_36985 createTillAndDropAction + c {@return a tilling action that sets a block state and drops an item} + p 1 droppedItem + c the item to drop + p 0 result + c the tilled block state + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1838;)V method_36984 method_36984 + p 1 context + m (Lnet/minecraft/class_2680;)Ljava/util/function/Consumer; method_36988 createTillAction + c {@return a tilling action that sets a block state} + p 0 result + c the tilled block state +c net/minecraft/class_1788 net/minecraft/item/OperatorOnlyBlockItem +c net/minecraft/class_1787 net/minecraft/item/FishingRodItem +c net/minecraft/class_1764 net/minecraft/item/CrossbowItem + f F field_30868 LOAD_PROGRESS + f F field_30867 CHARGE_PROGRESS + f F field_30866 DEFAULT_PULL_TIME + f F field_30869 DEFAULT_SPEED + f Z field_7936 loaded + f Z field_7937 charged + f Lnet/minecraft/class_1764$class_9693; field_51626 DEFAULT_LOADING_SOUNDS + f I field_30863 RANGE + f F field_30870 FIREWORK_ROCKET_SPEED + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)Z method_7767 loadProjectiles + p 1 crossbow + p 0 shooter + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_6880;)V method_59974 method_59974 + p 2 sound + m (ZLnet/minecraft/class_5819;)F method_7784 getSoundPitch + p 0 flag + p 1 random + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_6880;)V method_59973 method_59973 + p 2 sound + m (Lnet/minecraft/class_9278;)F method_20309 getSpeed + p 0 stack + m (Lnet/minecraft/class_5819;I)F method_57342 getSoundPitch + p 1 index + p 0 random + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1764$class_9693; method_59976 getLoadingSounds + p 1 stack + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_243;F)Lorg/joml/Vector3f; method_57343 calcVelocity + p 2 yaw + p 0 shooter + p 1 direction + m (Lnet/minecraft/class_1799;)Z method_7781 isCharged + p 0 stack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_6880;)V method_67186 method_67186 + p 2 sound + m (ILnet/minecraft/class_1799;Lnet/minecraft/class_1309;)F method_7770 getPullProgress + p 2 user + p 1 stack + p 0 useTicks + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;FFLnet/minecraft/class_1309;)V method_7777 shootAll + p 1 world + p 3 hand + p 2 shooter + p 5 speed + p 4 stack + p 7 target + p 6 divergence + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;)I method_7775 getPullTime + p 1 user + p 0 stack +c net/minecraft/class_1764$class_9693 net/minecraft/item/CrossbowItem$LoadingSounds + f Lcom/mojang/serialization/Codec; field_51627 CODEC + f Ljava/util/Optional; comp_2675 end + f Ljava/util/Optional; comp_2674 mid + f Ljava/util/Optional; comp_2673 start + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59977 method_59977 + p 0 instance + m ()Ljava/util/Optional; comp_2674 mid + m ()Ljava/util/Optional; comp_2675 end + m ()Ljava/util/Optional; comp_2673 start + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 start + p 2 mid + p 3 end +c net/minecraft/class_1764$class_10393 net/minecraft/item/CrossbowItem$ChargeType + f Ljava/lang/String; field_55210 name + f Lcom/mojang/serialization/Codec; field_55209 CODEC + f Lnet/minecraft/class_1764$class_10393; field_55207 ARROW + f Lnet/minecraft/class_1764$class_10393; field_55208 ROCKET + f Lnet/minecraft/class_1764$class_10393; field_55206 NONE + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_1763 net/minecraft/item/DebugStickItem + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2769;Z)Lnet/minecraft/class_2680; method_7758 cycle + p 0 state + p 2 inverse + p 1 property + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_2561;)V method_7762 sendMessage + p 0 player + p 1 message + m (Ljava/lang/Iterable;Ljava/lang/Object;Z)Ljava/lang/Object; method_7760 cycle + p 1 current + p 2 inverse + p 0 elements + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;ZLnet/minecraft/class_1799;)Z method_7759 use + p 6 stack + p 4 pos + p 5 update + p 2 state + p 3 world + p 1 player + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2769;)Ljava/lang/String; method_7761 getValueString + p 0 state + p 1 property +c net/minecraft/class_1761 net/minecraft/item/ItemGroup + c A group of items that the items belong to. This is used by the creative inventory. + f Z field_41031 special + f Lnet/minecraft/class_1799; field_7934 icon + f Z field_7920 scrollbar + f Lnet/minecraft/class_2561; field_26391 displayName + f Ljava/util/function/Supplier; field_41036 iconSupplier + f Lnet/minecraft/class_1761$class_7914; field_41037 entryCollector + f Lnet/minecraft/class_1761$class_7915; field_41032 row + f Ljava/util/Set; field_40860 searchTabStacks + f Lnet/minecraft/class_2960; field_7919 texture + f Ljava/util/Collection; field_40859 displayStacks + f Z field_7917 renderName + f I field_41033 column + f Lnet/minecraft/class_1761$class_7916; field_41034 type + f Lnet/minecraft/class_2960; field_52021 ITEMS + m ()Lnet/minecraft/class_2561; method_7737 getDisplayName + m ()Ljava/util/Collection; method_45414 getSearchTabStacks + m (Lnet/minecraft/class_1761$class_7915;I)Lnet/minecraft/class_1761$class_7913; method_47307 create + p 0 location + p 1 column + m ()Lnet/minecraft/class_1761$class_7916; method_47312 getType + m ()I method_7743 getColumn + m (Lnet/minecraft/class_1799;)Z method_45412 contains + p 1 stack + m ()Z method_47310 hasStacks + m ()Lnet/minecraft/class_1761$class_7915; method_47309 getRow + m ()Lnet/minecraft/class_2960; method_7742 getTexture + m (Ljava/lang/String;)Lnet/minecraft/class_2960; method_60733 getTabTextureId + p 0 name + m ()Z method_7756 hasScrollbar + m ()Z method_7754 shouldRenderName + c Checks if this item group should render its name.\n\n

The name is rendered below the top row of item groups and above the inventory. + m ()Z method_7752 isSpecial + m ()Z method_47311 shouldDisplay + m ()Ljava/util/Collection; method_47313 getDisplayStacks + m ()Lnet/minecraft/class_1799; method_7747 getIcon + m (Lnet/minecraft/class_1761$class_8128;)V method_47306 updateEntries + p 1 displayContext + m (Lnet/minecraft/class_1761$class_7915;ILnet/minecraft/class_1761$class_7916;Lnet/minecraft/class_2561;Ljava/util/function/Supplier;Lnet/minecraft/class_1761$class_7914;)V + p 4 displayName + p 3 type + p 6 entryCollector + p 5 iconSupplier + p 2 column + p 1 row +c net/minecraft/class_1761$class_7705 net/minecraft/item/ItemGroup$StackVisibility + f Lnet/minecraft/class_1761$class_7705; field_40191 PARENT_AND_SEARCH_TABS + f Lnet/minecraft/class_1761$class_7705; field_40193 SEARCH_TAB_ONLY + f Lnet/minecraft/class_1761$class_7705; field_40192 PARENT_TAB_ONLY +c net/minecraft/class_1761$class_7703 net/minecraft/item/ItemGroup$EntriesImpl + f Lnet/minecraft/class_1761; field_40189 group + f Ljava/util/Set; field_40188 searchTabStacks + f Lnet/minecraft/class_7699; field_40190 enabledFeatures + f Ljava/util/Collection; field_40187 parentTabStacks + m (Lnet/minecraft/class_1761;Lnet/minecraft/class_7699;)V + p 1 group + p 2 enabledFeatures +c net/minecraft/class_1761$class_7704 net/minecraft/item/ItemGroup$Entries + m (Lnet/minecraft/class_1799;)V method_45420 add + p 1 stack + m (Lnet/minecraft/class_1761$class_7705;Lnet/minecraft/class_1799;)V method_45419 method_45419 + p 2 stack + m (Ljava/util/Collection;Lnet/minecraft/class_1761$class_7705;)V method_45424 addAll + p 2 visibility + p 1 stacks + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1761$class_7705;)V method_45417 add + p 1 stack + p 2 visibility + m (Ljava/util/Collection;)V method_45423 addAll + p 1 stacks + m (Lnet/minecraft/class_1935;)V method_45421 add + p 1 item + m (Lnet/minecraft/class_1935;Lnet/minecraft/class_1761$class_7705;)V method_45422 add + p 2 visibility + p 1 item +c net/minecraft/class_1761$class_7914 net/minecraft/item/ItemGroup$EntryCollector + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761$class_7704;)V accept accept + p 1 displayContext + p 2 entries +c net/minecraft/class_1761$class_7915 net/minecraft/item/ItemGroup$Row + f Lnet/minecraft/class_1761$class_7915; field_41050 BOTTOM + f Lnet/minecraft/class_1761$class_7915; field_41049 TOP +c net/minecraft/class_1761$class_7916 net/minecraft/item/ItemGroup$Type + f Lnet/minecraft/class_1761$class_7916; field_41052 CATEGORY + f Lnet/minecraft/class_1761$class_7916; field_41055 SEARCH + f Lnet/minecraft/class_1761$class_7916; field_41054 HOTBAR + f Lnet/minecraft/class_1761$class_7916; field_41053 INVENTORY +c net/minecraft/class_1761$class_7913 net/minecraft/item/ItemGroup$Builder + f I field_41040 column + f Ljava/util/function/Supplier; field_41042 iconSupplier + f Z field_41046 special + f Z field_41045 renderName + f Z field_41044 scrollbar + f Lnet/minecraft/class_1761$class_7915; field_41039 row + f Lnet/minecraft/class_1761$class_7914; field_41038 EMPTY_ENTRIES + f Lnet/minecraft/class_1761$class_7916; field_41047 type + f Lnet/minecraft/class_2561; field_41041 displayName + f Lnet/minecraft/class_2960; field_41048 texture + f Lnet/minecraft/class_1761$class_7914; field_41043 entryCollector + m ()Lnet/minecraft/class_1761$class_7913; method_47315 special + m (Lnet/minecraft/class_1761$class_7915;I)V + p 1 row + p 2 column + m ()Lnet/minecraft/class_1761$class_7913; method_47323 noScrollbar + m ()Lnet/minecraft/class_1761$class_7913; method_47322 noRenderedName + m (Lnet/minecraft/class_1761$class_8128;Lnet/minecraft/class_1761$class_7704;)V method_47316 method_47316 + p 1 entries + p 0 displayContext + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_1761$class_7913; method_47321 displayName + p 1 displayName + m (Lnet/minecraft/class_1761$class_7916;)Lnet/minecraft/class_1761$class_7913; method_47318 type + p 1 type + m (Lnet/minecraft/class_1761$class_7914;)Lnet/minecraft/class_1761$class_7913; method_47317 entries + p 1 entryCollector + m ()Lnet/minecraft/class_1761; method_47324 build + m (Ljava/util/function/Supplier;)Lnet/minecraft/class_1761$class_7913; method_47320 icon + p 1 iconSupplier + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_1761$class_7913; method_47319 texture + p 1 texture +c net/minecraft/class_1761$class_8128 net/minecraft/item/ItemGroup$DisplayContext + f Lnet/minecraft/class_7225$class_7874; comp_1253 lookup + f Z comp_1252 hasPermissions + f Lnet/minecraft/class_7699; comp_1251 enabledFeatures + m (Lnet/minecraft/class_7699;ZLnet/minecraft/class_7225$class_7874;)Z method_48932 doesNotMatch + p 3 registries + p 2 hasPermissions + p 1 enabledFeatures + m ()Lnet/minecraft/class_7225$class_7874; comp_1253 lookup + m ()Lnet/minecraft/class_7699; comp_1251 enabledFeatures + m ()Z comp_1252 hasPermissions + m (Lnet/minecraft/class_7699;ZLnet/minecraft/class_7225$class_7874;)V + p 1 enabledFeatures + p 2 hasPermissions + p 3 lookup +c net/minecraft/class_1755 net/minecraft/item/BucketItem + f Lnet/minecraft/class_3611; field_7905 fluid + m (Lnet/minecraft/class_3611;Lnet/minecraft/class_1792$class_1793;)V + p 2 settings + p 1 fluid + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1799; method_7732 getEmptiedStack + p 0 stack + p 1 player + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;)V method_7727 playEmptyingSound + p 2 world + p 3 pos + p 1 user + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_3414;)V method_32342 method_32342 + p 1 sound + m ()Lnet/minecraft/class_3611; method_74140 getFluid +c net/minecraft/class_1754 net/minecraft/item/GlassBottleItem + m (Lnet/minecraft/class_1295;)Z method_7726 method_7726 + p 0 entity + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_7725 fill + p 3 outputStack + p 2 player + p 1 stack +c net/minecraft/class_1759 net/minecraft/item/CompassItem + f Lnet/minecraft/class_2561; field_54114 LODESTONE_COMPASS_NAME +c net/minecraft/class_1758 net/minecraft/item/OnAStickItem + f Lnet/minecraft/class_1299; field_23253 target + f I field_23743 damagePerUse + m (Lnet/minecraft/class_1299;ILnet/minecraft/class_1792$class_1793;)V + p 1 target + p 2 damagePerUse + p 3 settings +c net/minecraft/class_1771 net/minecraft/item/EggItem + f F field_55032 POWER +c net/minecraft/class_1774 net/minecraft/item/EndCrystalItem +c net/minecraft/class_1773 net/minecraft/item/EmptyMapItem +c net/minecraft/class_1767 net/minecraft/util/DyeColor + c An enum representing 16 dye colors. + f Lnet/minecraft/class_3542$class_7292; field_41600 CODEC + f I field_16537 signColor + f I field_7960 fireworkColor + f Ljava/lang/String; field_7948 id + f Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap; field_7950 BY_FIREWORK_COLOR + f Lnet/minecraft/class_9139; field_49259 PACKET_CODEC + f Ljava/util/function/IntFunction; field_7959 INDEX_MAPPER + f Lcom/mojang/serialization/Codec; field_56666 INDEX_CODEC + f Lnet/minecraft/class_3620; field_7956 mapColor + f I field_7943 entityColor + f I field_7965 index + f Lnet/minecraft/class_1767; field_7957 BROWN + f Lnet/minecraft/class_1767; field_7958 MAGENTA + f Lnet/minecraft/class_1767; field_7952 WHITE + f Lnet/minecraft/class_1767; field_7955 CYAN + f Lnet/minecraft/class_1767; field_7954 PINK + f Lnet/minecraft/class_1767; field_7951 LIGHT_BLUE + f Lnet/minecraft/class_1767; field_7945 PURPLE + f Lnet/minecraft/class_1767; field_7944 GRAY + f Lnet/minecraft/class_1767; field_7947 YELLOW + f Lnet/minecraft/class_1767; field_7946 ORANGE + f Lnet/minecraft/class_1767; field_7942 GREEN + f Lnet/minecraft/class_1767; field_7964 RED + f Lnet/minecraft/class_1767; field_7967 LIGHT_GRAY + f Lnet/minecraft/class_1767; field_7966 BLUE + f Lnet/minecraft/class_1767; field_7961 LIME + f Lnet/minecraft/class_1767; field_7963 BLACK + m (Lnet/minecraft/class_1767;)Ljava/lang/Integer; method_7795 method_7795 + p 0 color + m (Lnet/minecraft/class_1767;)Ljava/lang/Byte; method_67674 method_67674 + p 0 color + m ()I method_16357 getSignColor + c {@return the color used for dyed signs as RGB integer}\n\n

The returned value is between {@code 0} and {@code 0xFFFFFF}. + m (I)Lnet/minecraft/class_1767; method_7786 byFireworkColor + c {@return the dye color whose firework color is {@code color}, or {@code null}\nif there is no such color} + p 0 color + m ()I method_7787 getEntityColor + c {@return the color used for things like tropical fish, beacon beams, sheep,\nand tamed animal collars as ARGB integer}\n\n

The returned value is between {@code 0xFF000000} and {@code 0xFFFFFFFF}. + m ()I method_7789 getIndex + c {@return the index of the dye color} + m ()I method_7790 getFireworkColor + c {@return the color used for colored fireworks as RGB integer}\n\n

The returned value is between {@code 0} and {@code 0xFFFFFF}. + m ()Lnet/minecraft/class_3620; method_7794 getMapColor + c {@return the corresponding map color} + m (Ljava/lang/String;Lnet/minecraft/class_1767;)Lnet/minecraft/class_1767; method_7793 byId + c {@return the dye color whose id is {@code id}, or {@code fallback} if\nthere is no such color}\n\n@apiNote This returns {@code null} only if {@code fallback} is {@code null}. + p 0 id + p 1 fallback + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_3218;Lnet/minecraft/class_8786;)Lnet/minecraft/class_1799; method_65357 method_65357 + p 2 recipe + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_1767;)Lnet/minecraft/class_9694; method_65356 createColorMixingRecipeInput + p 1 second + p 0 first + m ()Ljava/lang/String; method_7792 getId + c {@return the id of the dye color} + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_1767; method_7797 method_7797 + p 0 color + m (I)Lnet/minecraft/class_1767; method_7791 byIndex + c {@return the dye color whose index is {@code index}}\n\n@apiNote If out-of-range indices are passed, this returns {@link #WHITE}. + p 0 index + m (Ljava/lang/String;IILjava/lang/String;ILnet/minecraft/class_3620;II)V + p 8 signColor + p 7 fireworkColor + p 6 mapColor + p 5 entityColor + p 4 id + p 3 index + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1767;Lnet/minecraft/class_1767;)Lnet/minecraft/class_1767; method_65355 mixColors + p 1 first + p 2 second + p 0 world +c net/minecraft/class_1765 net/minecraft/item/TallBlockItem +c net/minecraft/class_1769 net/minecraft/item/DyeItem + f Ljava/util/Map; field_7968 DYES + f Lnet/minecraft/class_1767; field_7969 color + m ()Lnet/minecraft/class_1767; method_7802 getColor + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_1769; method_7803 byColor + p 0 color + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_1792$class_1793;)V + p 1 color + p 2 settings + m (Lnet/minecraft/class_8242;)Lnet/minecraft/class_8242; method_49799 method_49799 + p 1 text +c net/minecraft/class_1742 net/minecraft/item/ArmorStandItem +c net/minecraft/class_1741 net/minecraft/item/equipment/ArmorMaterial + c Defines the material stats of an armor item.\n\n

\nTo view available vanilla armor materials, visit {@link ArmorMaterials}. + f Lnet/minecraft/class_5321; comp_3168 assetId + f I comp_3166 durability + f I comp_3167 enchantmentValue + f Ljava/util/Map; comp_2298 defense + f Lnet/minecraft/class_6880; comp_2300 equipSound + f Lnet/minecraft/class_6862; comp_2301 repairIngredient + f F comp_2304 knockbackResistance + f F comp_2303 toughness + m (Lnet/minecraft/class_8051;)Lnet/minecraft/class_9285; method_63993 createAttributeModifiers + p 1 equipmentType + m ()Lnet/minecraft/class_6880; comp_2300 equipSound + m ()F comp_2304 knockbackResistance + m ()F comp_2303 toughness + m ()I comp_3167 enchantmentValue + m ()I comp_3166 durability + m ()Lnet/minecraft/class_5321; comp_3168 assetId + m ()Ljava/util/Map; comp_2298 defense + m ()Lnet/minecraft/class_6862; comp_2301 repairIngredient + m (ILjava/util/Map;ILnet/minecraft/class_6880;FFLnet/minecraft/class_6862;Lnet/minecraft/class_5321;)V + p 1 durability + p 2 defense + p 3 enchantmentValue + p 4 equipSound + p 5 toughness + p 6 knockbackResistance + p 7 repairIngredient + p 8 assetId +c net/minecraft/class_1740 net/minecraft/item/equipment/ArmorMaterials + f Lnet/minecraft/class_1741; field_7889 DIAMOND + f Lnet/minecraft/class_1741; field_7890 TURTLE_SCUTE + f Lnet/minecraft/class_1741; field_21977 NETHERITE + f Lnet/minecraft/class_1741; field_48846 ARMADILLO_SCUTE + f Lnet/minecraft/class_1741; field_7892 IRON + f Lnet/minecraft/class_1741; field_7895 GOLD + f Lnet/minecraft/class_1741; field_61364 COPPER + f Lnet/minecraft/class_1741; field_7897 LEATHER + f Lnet/minecraft/class_1741; field_7887 CHAIN + m (IIIII)Ljava/util/Map; method_66345 createDefenseMap + p 4 bodyDefense + p 3 helmetDefense + p 2 chestplateDefense + p 1 leggingsDefense + p 0 bootsDefense +c net/minecraft/class_1735 net/minecraft/screen/slot/Slot + c A slot of a screen handler that holds an item stack. A slot is temporary\nholder that holds the stack for the lifetime of the screen handler. They are backed\nby an inventory, which implements the persistent storage if necessary.\n\n

To add slots, call {@link net.minecraft.screen.ScreenHandler#addSlot} inside\nthe screen handler's constructor. + f I field_7874 id + f I field_7872 y + f Lnet/minecraft/class_1263; field_7871 inventory + f I field_7873 x + f I field_7875 index + m (IILnet/minecraft/class_1657;)Lnet/minecraft/class_1799; method_32753 takeStackRange + p 3 player + p 2 max + p 1 min + m ()I method_7675 getMaxItemCount + m (IILnet/minecraft/class_1657;)Ljava/util/Optional; method_34264 tryTakeStackRange + p 1 min + p 3 player + p 2 max + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V method_7670 onQuickTransfer + p 1 newItem + p 2 original + m (Lnet/minecraft/class_1799;)V method_7673 setStackNoCallbacks + p 1 stack + m ()Z method_51306 canBeHighlighted + m (Lnet/minecraft/class_1799;)V method_7669 onCrafted + p 1 stack + m ()Z method_7682 isEnabled + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V method_48931 setStack + c Sets the slot's stack to {@code stack} and marks the slot as dirty. Subclasses\nmay override this method to perform additional operations. + p 2 previousStack + p 1 stack + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V method_34265 method_34265 + p 2 stack + m (Lnet/minecraft/class_1263;III)V + p 2 index + p 3 x + p 4 y + p 1 inventory + m (Lnet/minecraft/class_1799;)Z method_7680 canInsert + p 1 stack + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_32756 insertStack + p 1 stack + m (Lnet/minecraft/class_1799;I)Lnet/minecraft/class_1799; method_32755 insertStack + p 2 count + p 1 stack + m (I)V method_7672 onTake + p 1 amount + m (Lnet/minecraft/class_1657;)Z method_32754 canTakePartial + p 1 player + m (Lnet/minecraft/class_1799;)V method_53512 setStack + p 1 stack + m ()V method_7668 markDirty + m ()Z method_55059 disablesDynamicDisplay + c {@return {@code true} to disable dynamic display for clocks and compasses} + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V method_7667 onTakeItem + p 2 stack + p 1 player + m ()Lnet/minecraft/class_1799; method_7677 getStack + m ()I method_34266 getIndex + m (I)Lnet/minecraft/class_1799; method_7671 takeStack + p 1 amount + m ()Z method_7681 hasStack + m ()Lnet/minecraft/class_2960; method_7679 getBackgroundSprite + m (Lnet/minecraft/class_1799;)I method_7676 getMaxItemCount + p 1 stack + m (Lnet/minecraft/class_1657;)Z method_7674 canTakeItems + p 1 playerEntity + m (Lnet/minecraft/class_1799;I)V method_7678 onCrafted + p 1 stack + p 2 amount +c net/minecraft/class_1734 net/minecraft/screen/slot/CraftingResultSlot + f Lnet/minecraft/class_1657; field_7868 player + f Lnet/minecraft/class_8566; field_7870 input + f I field_7869 amount + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_8566;Lnet/minecraft/class_1263;III)V + p 3 inventory + p 4 index + p 5 x + p 6 y + p 1 player + p 2 input + m (Lnet/minecraft/class_9694;)Lnet/minecraft/class_2371; method_64648 copyInput + p 0 input + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_8786;)Lnet/minecraft/class_2371; method_64649 method_64649 + p 1 recipe + m (Lnet/minecraft/class_9694;Lnet/minecraft/class_1937;)Lnet/minecraft/class_2371; method_64650 getRecipeRemainders + p 1 input + p 2 world +c net/minecraft/class_1733 net/minecraft/screen/ShulkerBoxScreenHandler + f Lnet/minecraft/class_1263; field_7867 inventory + f I field_30841 INVENTORY_SIZE + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;)V + p 3 inventory + p 2 playerInventory + p 1 syncId + m (ILnet/minecraft/class_1661;)V + p 1 syncId + p 2 playerInventory +c net/minecraft/class_1732 net/minecraft/recipe/RecipeUnlocker + m (Lnet/minecraft/class_1657;Ljava/util/List;)V method_7664 unlockLastRecipe + p 1 player + p 2 ingredients + m ()Lnet/minecraft/class_8786; method_7663 getLastRecipe + m (Lnet/minecraft/class_8786;)V method_7662 setLastRecipe + p 1 recipe + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_8786;)Z method_7665 shouldCraftRecipe + p 1 player + p 2 recipe +c net/minecraft/class_1739 net/minecraft/item/AirBlockItem + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)V + p 1 block + p 2 settings +c net/minecraft/class_1737 net/minecraft/recipe/RecipeInputProvider + m (Lnet/minecraft/class_9875;)V method_7683 provideRecipeInputs + p 1 finder +c net/minecraft/class_1736 net/minecraft/screen/slot/ShulkerBoxSlot +c net/minecraft/class_10794 net/minecraft/unused/packageinfo/PackageInfo10794 +c net/minecraft/class_10795 net/minecraft/client/render/model/json/MultipartModelConditionBuilder + f Lcom/google/common/collect/ImmutableMap$Builder; field_56797 values + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;[Ljava/lang/Comparable;)Lnet/minecraft/class_10795; method_67848 put + p 2 value + p 1 property + p 3 values + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Lnet/minecraft/class_10795; method_67850 replace + p 1 property + p 2 value + m (Lnet/minecraft/class_2769;Lnet/minecraft/class_818$class_10808;)V method_67846 putTerms + p 1 property + p 2 terms + m (Lnet/minecraft/class_2769;Ljava/lang/Comparable;)Lnet/minecraft/class_10795; method_67847 put + p 1 property + p 2 value + m ()Lnet/minecraft/class_815; method_67845 build + m (Ljava/lang/String;)Lnet/minecraft/class_818$class_10807; method_67849 method_67849 + p 0 valuex +c net/minecraft/class_10799 net/minecraft/client/gl/RenderPipelines + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56888 GUI_NAUSEA_OVERLAY + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56812 BEACON_BEAM_TRANSLUCENT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56905 ENTITY_CUTOUT_NO_CULL_Z_OFFSET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56824 RENDERTYPE_TEXT_INTENSITY_SEETHROUGH + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_64226 CUTOUT_BLOCK + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56863 GUI_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_60126 GLOBALS_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56859 RENDERTYPE_LINES_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56875 POSITION_TEX_COLOR_END_SKY + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56887 GUI_OPAQUE_TEX_BG + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56899 ARMOR_DECAL_CUTOUT_NO_CULL + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56823 RENDERTYPE_TEXT_BG_SEETHROUGH + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56916 BEACON_BEAM_OPAQUE + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56904 ENTITY_CUTOUT_NO_CULL + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56819 RENDERTYPE_TEXT_BG + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_64227 CUTOUT_TERRAIN + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56862 WEATHER_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56890 CROSSHAIR + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_60127 TRANSFORMS_PROJECTION_FOG_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56858 RENDERTYPE_CLOUDS_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56874 POSITION_SKY + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56886 FIRE_SCREEN_EFFECT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56898 ARMOR_CUTOUT_NO_CULL + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56818 RENDERTYPE_TEXT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56822 RENDERTYPE_TEXT_SEETHROUGH + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56834 SECOND_BLOCK_OUTLINE + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56915 RENDERTYPE_ITEM_ENTITY_TRANSLUCENT_CULL + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56903 ENTITY_CUTOUT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_64228 TRIPWIRE_BLOCK + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_64567 LINES_TRANSLUCENT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_64219 ANIMATE_SPRITE + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56853 TERRAIN_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_57928 TRACY_BLIT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_60128 TRANSFORMS_PROJECTION_FOG_LIGHTING_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56873 WEATHER_NO_DEPTH + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_64223 BLOCK_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56885 BLOCK_SCREEN_EFFECT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56897 RENDERTYPE_TRANSLUCENT_MOVING_BLOCK + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56821 RENDERTYPE_TEXT_POLYGON_OFFSET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_60794 ENTITY_EMISSIVE_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56902 ENTITY_SOLID_OFFSET_FORWARD + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56817 RENDERTYPE_CRUMBLING + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56829 END_GATEWAY + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56833 LINES + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_63575 DEBUG_POINTS + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56869 RENDERTYPE_WORLD_BORDER + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56914 RENDERTYPE_ENTITY_SHADOW + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_64229 TRIPWIRE_TERRAIN + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56864 POSITION_TEX_COLOR_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_57929 WIREFRAME + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_64220 ANIMATE_SPRITE_BLIT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56892 RENDERTYPE_OUTLINE_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56848 FOG_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_59968 GUI_TEXTURED_PREMULTIPLIED_ALPHA + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56820 RENDERTYPE_TEXT_INTENSITY + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56872 WEATHER_DEPTH + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56913 RENDERTYPE_ENTITY_DECAL + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56816 GLINT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56901 ENTITY_SOLID + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56828 END_PORTAL + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56844 BILT_SCREEN_LIGHTMAP + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56909 ENTITY_NO_OUTLINE + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_64221 ANIMATE_SPRITE_INTERPOLATE + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_61742 GUI_TEXT_INTENSITY + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56895 TRANSLUCENT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56831 CLOUDS + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56843 OUTLINE_NO_CULL + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56855 RENDERTYPE_BEACON_BEAM_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56871 TRANSLUCENT_PARTICLE + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56883 GUI_TEXTURED + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56815 RENDERTYPE_WATER_MASK + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56827 POSITION_DRAGON_RAYS_DEPTH + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56912 ENTITY_EYES + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56839 MOJANG_LOGO + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56900 ARMOR_TRANSLUCENT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56879 GUI + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56908 ENTITY_SMOOTH_CUTOUT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_61741 GUI_TEXT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56830 FLAT_CLOUDS + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_64222 FOG_AND_SAMPLERS_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56842 OUTLINE_CULL + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56838 POST_EFFECT_PROCESSOR_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56854 ENTITY_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56870 OPAQUE_PARTICLE + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56826 RENDERTYPE_LIGHTNING_DRAGON_RAYS + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56911 ENTITY_ENERGY_SWIRL + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56866 DEBUG_TRIANGLE_FAN + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56878 POSITION_TEX_COLOR_CELESTIAL + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56814 RENDERTYPE_LEASH + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_61743 GUI_TEXT_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56907 ENTITY_TRANSLUCENT_EMISSIVE + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56861 PARTICLE_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56841 POSITION_TEX_PANORAMA + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56865 DEBUG_QUADS + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56881 GUI_TEXT_HIGHLIGHT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56857 RENDERTYPE_END_PORTAL_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56837 DEBUG_FILLED_BOX + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56910 BREEZE_WIND + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56877 POSITION_STARS + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56906 ENTITY_TRANSLUCENT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56889 VIGNETTE + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56813 RENDERTYPE_ENTITY_ALPHA + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56825 RENDERTYPE_LIGHTNING + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_64225 SOLID_TERRAIN + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_64224 SOLID_BLOCK + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_60125 TRANSFORMS_AND_PROJECTION_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56860 POSITION_COLOR_SNIPPET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56840 ENTITY_OUTLINE_BLIT + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_61068 GUI_INVERT + f Ljava/util/Map; field_56845 PIPELINES + f Lcom/mojang/blaze3d/pipeline/RenderPipeline; field_56876 POSITION_COLOR_SUNRISE_SUNSET + f Lcom/mojang/blaze3d/pipeline/RenderPipeline$Snippet; field_56856 TEXT_SNIPPET + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;)Lcom/mojang/blaze3d/pipeline/RenderPipeline; method_67887 register + p 0 pipeline + m ()Ljava/util/List; method_67886 getAll +c net/minecraft/class_1753 net/minecraft/item/BowItem + f I field_30856 RANGE + f I field_30855 TICKS_PER_SECOND + m (I)F method_7722 getPullProgress + p 0 useTicks +c net/minecraft/class_1752 net/minecraft/item/BoneMealItem + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_7720 useOnFertilizable + p 2 pos + p 0 stack + p 1 world + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;I)V method_7721 createParticles + p 0 world + p 2 count + p 1 pos + m (Lnet/minecraft/class_4970$class_4971;)Z method_40006 method_40006 + p 0 state + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_7719 useOnGround + p 2 blockPos + p 3 facing + p 0 stack + p 1 world + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_2680; method_40128 method_40128 + p 0 blockEntry + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_2680; method_40130 method_40130 + p 0 blockEntry +c net/minecraft/class_1750 net/minecraft/item/ItemPlacementContext + f Z field_7904 canReplaceExisting + f Lnet/minecraft/class_2338; field_7903 placementPos + m ()[Lnet/minecraft/class_2350; method_7718 getPlacementDirections + m (Lnet/minecraft/class_1750;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Lnet/minecraft/class_1750; method_16355 offset + p 0 context + p 1 pos + p 2 side + m ()Z method_7717 canReplaceExisting + m ()Z method_7716 canPlace + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;Lnet/minecraft/class_3965;)V + p 4 hitResult + p 3 stack + p 2 hand + p 1 player + m ()Lnet/minecraft/class_2350; method_7715 getPlayerLookDirection + m ()Lnet/minecraft/class_2350; method_32760 getVerticalPlayerLookDirection + m (Lnet/minecraft/class_1838;)V + p 1 context +c net/minecraft/class_1746 net/minecraft/item/BannerItem + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)V + p 2 wallBannerBlock + p 1 bannerBlock + p 3 settings + m ()Lnet/minecraft/class_1767; method_7706 getColor +c net/minecraft/class_1744 net/minecraft/item/ArrowItem + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1665; method_7702 createArrow + p 4 shotFrom + p 1 world + p 3 shooter + p 2 stack +c net/minecraft/class_1743 net/minecraft/item/AxeItem + f Ljava/util/Map; field_7898 STRIPPED_BLOCKS + m (Lnet/minecraft/class_1838;)Z method_59967 shouldCancelStripAttempt + p 0 context + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_2680;Lnet/minecraft/class_3414;I)V method_74886 strip + p 0 world + p 2 player + p 1 pos + p 4 sound + p 3 state + p 5 worldEvent + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2680; method_54761 method_54761 + p 1 block + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_2680;)Ljava/util/Optional; method_54760 tryStrip + p 2 pos + p 3 player + p 1 world + p 4 state + m (Lnet/minecraft/class_2680;)Ljava/util/Optional; method_34716 getStrippedState + p 1 state + m (Lnet/minecraft/class_9886;FFLnet/minecraft/class_1792$class_1793;)V + p 3 attackSpeed + p 4 settings + p 1 material + p 2 attackDamage + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2248;)Lnet/minecraft/class_2680; method_34717 method_34717 + p 1 block +c net/minecraft/class_1749 net/minecraft/item/BoatItem + f Lnet/minecraft/class_1299; field_54469 boatEntityType + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1792$class_1793;)V + p 2 settings + p 1 boatEntityType + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_239;Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;)Lnet/minecraft/class_10255; method_42296 createEntity + p 4 player + p 3 stack + p 2 hitResult + p 1 world +c net/minecraft/class_1748 net/minecraft/item/BedItem +c net/minecraft/class_10780 net/minecraft/unused/packageinfo/PackageInfo10780 +c net/minecraft/class_1747 net/minecraft/item/BlockItem + c Represents an item corresponding to a block. Using this item places a\nblock in the world. + f Lnet/minecraft/class_2248; field_7901 block + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)Z method_7714 writeNbtToBlockEntity + p 2 pos + p 3 stack + p 0 world + p 1 player + m (Lnet/minecraft/class_1750;Lnet/minecraft/class_2680;)Z method_7709 canPlace + p 2 state + p 1 context + m (Lnet/minecraft/class_1750;Lnet/minecraft/class_2680;)Z method_7708 place + p 2 state + p 1 context + m (Lnet/minecraft/class_1750;)Lnet/minecraft/class_1750; method_16356 getPlacementContext + p 1 context + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_2591;Lnet/minecraft/class_11362;)V method_57338 setBlockEntityData + p 2 view + p 1 type + p 0 stack + m ()Z method_20360 checkStatePlacement + m (Lnet/minecraft/class_1750;)Lnet/minecraft/class_2680; method_7707 getPlacementState + p 1 context + m (Ljava/util/Map;Lnet/minecraft/class_1792;)V method_7713 appendBlocks + p 2 item + p 1 map + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)V + p 1 block + p 2 settings + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_3414; method_19260 getPlaceSound + p 1 state + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;Lnet/minecraft/class_2680;)Z method_7710 postPlacement + p 2 world + p 3 player + p 1 pos + p 4 stack + p 5 state + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_18084 placeFromNbt + p 2 world + p 1 pos + p 4 state + p 3 stack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1799;)V method_57339 copyComponentsToBlockEntity + p 1 pos + p 2 stack + p 0 world + m (Lnet/minecraft/class_1750;)Lnet/minecraft/class_1269; method_7712 place + p 1 context + m ()Lnet/minecraft/class_2248; method_7711 getBlock +c net/minecraft/class_10783 net/minecraft/client/util/TextureAllocationException + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/class_10789 net/minecraft/client/gl/UniformType + f Ljava/lang/String; field_56750 name + f Lnet/minecraft/class_10789; field_60032 TEXEL_BUFFER + f Lnet/minecraft/class_10789; field_60031 UNIFORM_BUFFER + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_1720 net/minecraft/screen/AbstractFurnaceScreenHandler + f Lnet/minecraft/class_10290; field_54593 recipePropertySet + f Lnet/minecraft/class_1937; field_7822 world + f Lnet/minecraft/class_1263; field_7824 inventory + f Lnet/minecraft/class_3913; field_17286 propertyDelegate + f Lnet/minecraft/class_3956; field_17494 recipeType + f Lnet/minecraft/class_5421; field_25762 category + m ()F method_17364 getFuelProgress + m (Lnet/minecraft/class_1799;)Z method_7640 isSmeltable + p 1 itemStack + m (Lnet/minecraft/class_1799;)Z method_16945 isFuel + p 1 item + m ()F method_17363 getCookProgress + m (Lnet/minecraft/class_3917;Lnet/minecraft/class_3956;Lnet/minecraft/class_5321;Lnet/minecraft/class_5421;ILnet/minecraft/class_1661;)V + p 1 type + p 6 playerInventory + p 4 category + p 5 syncId + p 2 recipeType + p 3 recipePropertySetKey + m ()Lnet/minecraft/class_1735; method_61632 getOutputSlot + m ()Z method_17365 isBurning + m (Lnet/minecraft/class_3917;Lnet/minecraft/class_3956;Lnet/minecraft/class_5321;Lnet/minecraft/class_5421;ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;Lnet/minecraft/class_3913;)V + p 2 recipeType + p 3 recipePropertySetKey + p 1 type + p 8 propertyDelegate + p 6 playerInventory + p 7 inventory + p 4 category + p 5 syncId +c net/minecraft/class_1720$1 net/minecraft/screen/AbstractFurnaceScreenHandler$1 + m (Lnet/minecraft/class_1735;)V method_61633 method_61633 + p 0 slot +c net/minecraft/class_1713 net/minecraft/screen/slot/SlotActionType + f Lnet/minecraft/class_1713; field_7791 SWAP + c Exchanges items between a slot and a hotbar slot. This is usually triggered by the player pressing a 1-9 number key while hovering over a slot.\n\n

When the action type is swap, the click data is the hotbar slot to swap with (0-8). + f Lnet/minecraft/class_1713; field_7790 PICKUP + c Performs a normal slot click. This can pickup or place items in the slot, possibly merging the cursor stack into the slot, or swapping the slot stack with the cursor stack if they can't be merged. + f Lnet/minecraft/class_9139; field_58134 PACKET_CODEC + f Lnet/minecraft/class_1713; field_7795 THROW + c Throws the item out of the inventory. This is usually triggered by the player pressing Q while hovering over a slot, or clicking outside the window.\n\n

When the action type is throw, the click data determines whether to throw a whole stack (1) or a single item from that stack (0). + f Lnet/minecraft/class_1713; field_7796 CLONE + c Clones the item in the slot. Usually triggered by middle clicking an item in creative mode. + f Lnet/minecraft/class_1713; field_7793 PICKUP_ALL + c Replenishes the cursor stack with items from the screen handler. This is usually triggered by the player double clicking. + f Lnet/minecraft/class_1713; field_7794 QUICK_MOVE + c Performs a shift-click. This usually quickly moves items between the player's inventory and the open screen handler. + f Ljava/util/function/IntFunction; field_58135 INDEX_MAPPER + f Lnet/minecraft/class_1713; field_7789 QUICK_CRAFT + c Drags items between multiple slots. This is usually triggered by the player clicking and dragging between slots.\n\n

This action happens in 3 stages. Stage 0 signals that the drag has begun, and stage 2 signals that the drag has ended. In between multiple stage 1s signal which slots were dragged on.\n\n

The stage is packed into the click data along with the mouse button that was clicked. See {@link net.minecraft.screen.ScreenHandler#packQuickCraftData(int, int) ScreenHandler.packQuickCraftData(int, int)} for details. + f I field_58136 index + m ()I method_68805 getIndex + m (Ljava/lang/String;II)V + p 3 index +c net/minecraft/class_1712 net/minecraft/screen/ScreenHandlerListener + m (Lnet/minecraft/class_1703;II)V method_7633 onPropertyUpdate + p 1 handler + p 3 value + p 2 property + m (Lnet/minecraft/class_1703;ILnet/minecraft/class_1799;)V method_7635 onSlotUpdate + p 2 slotId + p 1 handler + p 3 stack +c net/minecraft/class_1717 net/minecraft/screen/slot/FurnaceFuelSlot + f Lnet/minecraft/class_1720; field_17083 handler + m (Lnet/minecraft/class_1799;)Z method_7636 isBucket + p 0 stack + m (Lnet/minecraft/class_1720;Lnet/minecraft/class_1263;III)V + p 4 x + p 5 y + p 2 inventory + p 3 index + p 1 handler +c net/minecraft/class_1716 net/minecraft/screen/Generic3x3ContainerScreenHandler + f I field_30788 CONTAINER_SIZE + f I field_30789 INVENTORY_START + f I field_30791 HOTBAR_START + f I field_30792 HOTBAR_END + f I field_30790 INVENTORY_END + f Lnet/minecraft/class_1263; field_7806 inventory + m (ILnet/minecraft/class_1661;)V + p 1 syncId + p 2 playerInventory + m (Lnet/minecraft/class_1263;II)V method_61635 add3x3Slots + p 1 inventory + p 2 x + p 3 y + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;)V + p 1 syncId + p 2 playerInventory + p 3 inventory +c net/minecraft/class_1715 net/minecraft/inventory/CraftingInventory + c Represents an inventory for crafting inputs. + f Lnet/minecraft/class_2371; field_7805 stacks + f Lnet/minecraft/class_1703; field_7802 handler + f I field_7804 width + f I field_7803 height + m (Lnet/minecraft/class_1703;II)V + p 2 width + p 3 height + p 1 handler + m (Lnet/minecraft/class_1703;IILnet/minecraft/class_2371;)V + p 3 height + p 4 stacks + p 1 handler + p 2 width +c net/minecraft/class_1714 net/minecraft/screen/CraftingScreenHandler + f Z field_51625 filling + f Lnet/minecraft/class_1657; field_7797 player + f Lnet/minecraft/class_3914; field_7799 context + f I field_30786 HOTBAR_START + f I field_30787 HOTBAR_END + f I field_30784 INVENTORY_START + f I field_30785 INVENTORY_END + f I field_30782 INPUT_START + f I field_30783 INPUT_END + f I field_30781 RESULT_ID + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_17402 method_17402 + p 3 pos + p 2 world + m (Lnet/minecraft/class_1703;Lnet/minecraft/class_3218;Lnet/minecraft/class_1657;Lnet/minecraft/class_8566;Lnet/minecraft/class_1731;Lnet/minecraft/class_8786;)V method_17399 updateResult + p 5 recipe + p 4 resultInventory + p 3 craftingInventory + p 2 player + p 1 world + p 0 handler + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_17401 method_17401 + p 2 pos + p 1 world + m (ILnet/minecraft/class_1661;)V + p 2 playerInventory + p 1 syncId + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;)V + p 2 playerInventory + p 3 context + p 1 syncId +c net/minecraft/class_1719 net/minecraft/screen/slot/FurnaceOutputSlot + f I field_7819 amount + f Lnet/minecraft/class_1657; field_7818 player + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1263;III)V + p 4 x + p 3 index + p 2 inventory + p 1 player + p 5 y +c net/minecraft/class_1718 net/minecraft/screen/EnchantmentScreenHandler + f Lnet/minecraft/class_3914; field_7813 context + f Lnet/minecraft/class_3915; field_7814 seed + f [I field_7810 enchantmentLevel + f Lnet/minecraft/class_2960; field_45143 EMPTY_LAPIS_LAZULI_SLOT_TEXTURE + f Lnet/minecraft/class_1263; field_7809 inventory + f Lnet/minecraft/class_5819; field_7811 random + f [I field_7812 enchantmentId + f [I field_7808 enchantmentPower + m ()I method_17413 getSeed + m (Lnet/minecraft/class_1799;ILnet/minecraft/class_1657;ILnet/minecraft/class_1799;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_17410 method_17410 + p 7 pos + p 6 world + m (ILnet/minecraft/class_1661;)V + p 2 playerInventory + p 1 syncId + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_17412 method_17412 + p 3 pos + p 2 world + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_1799;II)Ljava/util/List; method_7637 generateEnchantments + p 1 registryManager + p 2 stack + p 3 slot + p 4 level + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_17411 method_17411 + p 3 pos + p 2 world + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;)V + p 3 context + p 2 playerInventory + p 1 syncId + m ()I method_7638 getLapisCount +c net/minecraft/class_1731 net/minecraft/inventory/CraftingResultInventory + c Represents an inventory for the crafting output slot. + f Lnet/minecraft/class_2371; field_7866 stacks + f Lnet/minecraft/class_8786; field_7865 lastRecipe +c net/minecraft/class_1730 net/minecraft/inventory/EnderChestInventory + c Represents an inventory used for ender chests.\nA new instance is created for each player. + f Lnet/minecraft/class_2611; field_7864 activeBlockEntity + m (Lnet/minecraft/class_11372$class_11373;)V method_71391 writeData + p 1 list + m (Lnet/minecraft/class_2611;)V method_7661 setActiveBlockEntity + c Sets the block entity the player is using to access the inventory to {@code\nblockEntity}. The block entity is used to delegate {@link #canPlayerUse},\n{@link #onOpen}, and {@link #onClose}. + p 1 blockEntity + m (Lnet/minecraft/class_11368$class_11369;)V method_71390 readData + p 1 list + m (Lnet/minecraft/class_2611;)Z method_31556 isActiveBlockEntity + c {@return whether this inventory is being accessed from {@code blockEntity}} + p 1 blockEntity +c net/minecraft/class_1724 net/minecraft/screen/HorseScreenHandler + f Lnet/minecraft/class_2960; field_55028 EMPTY_HORSE_ARMOR_SLOT_TEXTURE + f Lnet/minecraft/class_2960; field_55027 EMPTY_LLAMA_ARMOR_SLOT_TEXTURE + f Lnet/minecraft/class_2960; field_55026 EMPTY_SADDLE_SLOT_TEXTURE + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;Lnet/minecraft/class_1496;I)V + p 1 syncId + p 2 playerInventory + p 5 slotColumnCount + p 3 inventory + p 4 entity +c net/minecraft/class_1723 net/minecraft/screen/PlayerScreenHandler + f I field_30809 INVENTORY_END + f Lnet/minecraft/class_2960; field_21669 EMPTY_HELMET_SLOT_TEXTURE + f I field_30806 EQUIPMENT_START + f I field_30805 CRAFTING_INPUT_END + f I field_30808 INVENTORY_START + f Lnet/minecraft/class_1657; field_7828 owner + f I field_30807 EQUIPMENT_END + f I field_49739 CRAFTING_INPUT_COUNT + f Z field_7827 onServer + f [Lnet/minecraft/class_1304; field_7832 EQUIPMENT_SLOT_ORDER + f Lnet/minecraft/class_2960; field_21671 EMPTY_LEGGINGS_SLOT_TEXTURE + f Lnet/minecraft/class_2960; field_21670 EMPTY_CHESTPLATE_SLOT_TEXTURE + f I field_30812 OFFHAND_ID + f Lnet/minecraft/class_2960; field_21673 EMPTY_OFF_HAND_SLOT_TEXTURE + f I field_30804 CRAFTING_INPUT_START + f Lnet/minecraft/class_2960; field_21672 EMPTY_BOOTS_SLOT_TEXTURE + f I field_30803 CRAFTING_RESULT_ID + f Ljava/util/Map; field_7829 EMPTY_ARMOR_SLOT_TEXTURES + f I field_49740 EQUIPMENT_COUNT + f I field_30811 HOTBAR_END + f I field_30810 HOTBAR_START + m ()Lnet/minecraft/class_8566; method_29281 getCraftingInput + m (Lnet/minecraft/class_1661;ZLnet/minecraft/class_1657;)V + p 2 onServer + p 1 inventory + p 3 owner + m (I)Z method_36211 isInHotbar + p 0 slot +c net/minecraft/class_1722 net/minecraft/screen/HopperScreenHandler + f Lnet/minecraft/class_1263; field_7826 inventory + f I field_30801 SLOT_COUNT + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;)V + p 2 playerInventory + p 3 inventory + p 1 syncId + m (ILnet/minecraft/class_1661;)V + p 2 playerInventory + p 1 syncId +c net/minecraft/class_1728 net/minecraft/screen/MerchantScreenHandler + f Lnet/minecraft/class_1915; field_7863 merchant + f Z field_18670 leveled + f I field_30831 INPUT_2_ID + f I field_30833 INVENTORY_START + f Lnet/minecraft/class_1725; field_7861 merchantInventory + f I field_30839 OUTPUT_X + f I field_30835 HOTBAR_START + f I field_30837 INPUT_1_X + f Z field_19358 canRefreshTrades + f I field_30832 OUTPUT_ID + f I field_18669 levelProgress + f I field_30834 INVENTORY_END + f I field_30830 INPUT_1_ID + f I field_30840 SLOT_Y + f I field_30836 HOTBAR_END + f I field_30838 INPUT_2_X + m (Z)V method_20700 setCanRefreshTrades + p 1 canRefreshTrades + m (I)V method_7650 setRecipeIndex + p 1 index + m ()I method_19256 getMerchantRewardedExperience + m ()I method_19258 getLevelProgress + m (ILnet/minecraft/class_1661;)V + p 1 syncId + p 2 playerInventory + m ()I method_19254 getExperience + m (ILnet/minecraft/class_9306;)V method_20214 autofill + p 1 slot + p 2 stack + m ()Z method_19259 isLeveled + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1915;)V + p 2 playerInventory + p 3 merchant + p 1 syncId + m (Z)V method_19253 setLeveled + p 1 leveled + m (Lnet/minecraft/class_9306;)V method_57323 method_57323 + p 1 item + m ()V method_20595 playYesSound + m ()Z method_20701 canRefreshTrades + m (I)V method_20215 switchTo + p 1 recipeIndex + m (I)V method_19257 setLevelProgress + p 1 levelProgress + m (Lnet/minecraft/class_1916;)V method_17437 setOffers + p 1 offers + m ()Lnet/minecraft/class_1916; method_17438 getRecipes + m (I)V method_19255 setExperienceFromServer + p 1 experience +c net/minecraft/class_1727 net/minecraft/screen/slot/TradeOutputSlot + f Lnet/minecraft/class_1915; field_7858 merchant + f Lnet/minecraft/class_1725; field_7860 merchantInventory + f Lnet/minecraft/class_1657; field_7857 player + f I field_7859 amount + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1915;Lnet/minecraft/class_1725;III)V + p 1 player + p 2 merchant + p 5 x + p 6 y + p 3 merchantInventory + p 4 index +c net/minecraft/class_1726 net/minecraft/screen/LoomScreenHandler + f Lnet/minecraft/class_1735; field_17320 dyeSlot + f Lnet/minecraft/class_1735; field_17322 outputSlot + f Lnet/minecraft/class_3915; field_17317 selectedPattern + f Lnet/minecraft/class_3914; field_17316 context + f Ljava/lang/Runnable; field_17318 inventoryChangeListener + f Lnet/minecraft/class_1263; field_17323 output + f I field_30827 INVENTORY_END + f I field_30829 HOTBAR_END + f Lnet/minecraft/class_1263; field_7850 input + f Lnet/minecraft/class_1735; field_17321 patternSlot + f Lnet/minecraft/class_1735; field_17319 bannerSlot + f Lnet/minecraft/class_7871; field_49741 bannerPatternLookup + f I field_39120 NO_PATTERN + f J field_20383 lastTakeResultTime + f I field_30826 INVENTORY_START + f I field_30828 HOTBAR_START + f Ljava/util/List; field_39121 bannerPatterns + m (Lnet/minecraft/class_1799;)Ljava/util/List; method_43705 getPatternsFor + p 1 stack + m ()Lnet/minecraft/class_1735; method_17431 getOutputSlot + m (Ljava/lang/Runnable;)V method_17423 setInventoryChangeListener + p 1 inventoryChangeListener + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1767;Lnet/minecraft/class_9307;)Lnet/minecraft/class_9307; method_57322 method_57322 + p 2 component + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_17420 method_17420 + p 3 pos + p 2 world + m (ILnet/minecraft/class_1661;)V + p 1 syncId + p 2 playerInventory + m (I)Z method_45016 isPatternIndexValid + p 1 index + m ()Lnet/minecraft/class_1735; method_17428 getBannerSlot + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;)V + p 2 playerInventory + p 1 syncId + p 3 context + m ()Lnet/minecraft/class_1735; method_17430 getPatternSlot + m (Lnet/minecraft/class_6880;)V method_7648 updateOutputSlot + p 1 pattern + m ()Ljava/util/List; method_43706 getBannerPatterns + m ()Lnet/minecraft/class_1735; method_17429 getDyeSlot + m ()I method_7647 getSelectedPattern +c net/minecraft/class_1726$6 net/minecraft/screen/LoomScreenHandler$6 + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_17433 method_17433 + p 1 world + p 2 pos +c net/minecraft/class_1725 net/minecraft/village/MerchantInventory + f Lnet/minecraft/class_1914; field_7843 tradeOffer + f I field_18668 merchantRewardedExperience + f Lnet/minecraft/class_1915; field_7844 merchant + f I field_7842 offerIndex + f Lnet/minecraft/class_2371; field_7845 inventory + m ()I method_19252 getMerchantRewardedExperience + m (Lnet/minecraft/class_1915;)V + p 1 merchant + m (I)V method_7643 setOfferIndex + p 1 index + m ()V method_7645 updateOffers + m (I)Z method_7644 needsOfferUpdate + p 1 slot + m ()Lnet/minecraft/class_1914; method_7642 getTradeOffer +c net/minecraft/class_1729 net/minecraft/screen/AbstractRecipeScreenHandler + m (Lnet/minecraft/class_9875;)V method_7654 populateRecipeFinder + p 1 finder + m ()Lnet/minecraft/class_5421; method_30264 getCategory + m (ZZLnet/minecraft/class_8786;Lnet/minecraft/class_3218;Lnet/minecraft/class_1661;)Lnet/minecraft/class_1729$class_9885; method_17697 fillInputSlots + p 2 creative + p 1 craftAll + p 5 inventory + p 4 world + p 3 recipe +c net/minecraft/class_1729$class_9885 net/minecraft/screen/AbstractRecipeScreenHandler$PostFillAction + f Lnet/minecraft/class_1729$class_9885; field_52572 NOTHING + f Lnet/minecraft/class_1729$class_9885; field_52573 PLACE_GHOST_RECIPE +c net/minecraft/class_10747 net/minecraft/client/render/entity/model/WarmCowEntityModel + m ()Lnet/minecraft/class_5607; method_67470 getTexturedModelData +c net/minecraft/class_10748 net/minecraft/client/particle/FireflyParticle + f I field_56499 MAX_MAX_AGE + f I field_56498 MIN_MAX_AGE +c net/minecraft/class_10748$class_10749 net/minecraft/client/particle/FireflyParticle$Factory + f Lnet/minecraft/class_4002; field_56502 spriteProvider + m (Lnet/minecraft/class_4002;)V + p 1 spriteProvider + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_67471 createParticle +c net/minecraft/class_7923 net/minecraft/registry/Registries + f Lnet/minecraft/class_7922; field_41130 SENSOR_TYPE + f Lnet/minecraft/class_2378; field_41138 LOOT_SCORE_PROVIDER_TYPE + f Lnet/minecraft/class_2378; field_51834 ENCHANTMENT_ENTITY_EFFECT_TYPE + f Lnet/minecraft/class_7922; field_41194 VILLAGER_TYPE + f Lnet/minecraft/class_2378; field_60814 INPUT_CONTROL_TYPE + f Lnet/minecraft/class_2378; field_49658 DATA_COMPONENT_TYPE + f Lnet/minecraft/class_2378; field_62490 INCOMING_RPC_METHOD + f Lnet/minecraft/class_2378; field_41153 TREE_DECORATOR_TYPE + f Lnet/minecraft/class_2378; field_41141 HEIGHT_PROVIDER_TYPE + f Lnet/minecraft/class_2378; field_41193 STAT_TYPE + f Lnet/minecraft/class_2378; field_41181 BLOCK_ENTITY_TYPE + f Lnet/minecraft/class_2378; field_50078 MAP_DECORATION_TYPE + f Lnet/minecraft/class_2378; field_41149 BLOCK_STATE_PROVIDER_TYPE + f Lnet/minecraft/class_7922; field_41171 GAME_EVENT + f Lnet/minecraft/class_2378; field_41189 RECIPE_SERIALIZER + f Lnet/minecraft/class_2378; field_41137 LOOT_NBT_PROVIDER_TYPE + f Lnet/minecraft/class_7922; field_41195 VILLAGER_PROFESSION + f Lnet/minecraft/class_2378; field_51833 ENCHANTMENT_LEVEL_BASED_VALUE_TYPE + f Lnet/minecraft/class_2378; field_60815 DIALOG_BODY_TYPE + f Lnet/minecraft/class_2378; field_64250 SLOT_SOURCE_TYPE + f Lnet/minecraft/class_2378; field_42940 DECORATED_POT_PATTERN + f Lnet/minecraft/class_2378; field_41180 PARTICLE_TYPE + f Lnet/minecraft/class_2378; field_47496 CRITERION + f Lnet/minecraft/class_2378; field_41152 ROOT_PLACER_TYPE + f Lnet/minecraft/class_2378; field_41188 RECIPE_TYPE + f Lnet/minecraft/class_2378; field_41192 COMMAND_ARGUMENT_TYPE + f Lnet/minecraft/class_2378; field_41140 INT_PROVIDER_TYPE + f Lnet/minecraft/class_2378; field_41148 PLACEMENT_MODIFIER_TYPE + f Lnet/minecraft/class_2378; field_41136 LOOT_NUMBER_PROVIDER_TYPE + f Lnet/minecraft/class_2378; field_51836 ENCHANTMENT_VALUE_EFFECT_TYPE + f Lnet/minecraft/class_2378; field_64251 GAME_RULE + f Lnet/minecraft/class_2378; field_60812 DIALOG_TYPE + f Lnet/minecraft/class_2378; field_41191 POSITION_SOURCE_TYPE + f Lnet/minecraft/class_2378; field_41187 SCREEN_HANDLER + f Ljava/util/Map; field_41169 DEFAULT_ENTRIES + f Lnet/minecraft/class_2378; field_41151 TRUNK_PLACER_TYPE + f Lnet/minecraft/class_7922; field_41177 ENTITY_TYPE + f Lnet/minecraft/class_2378; field_41135 LOOT_CONDITION_TYPE + f Lnet/minecraft/class_2378; field_51835 ENCHANTMENT_LOCATION_BASED_EFFECT_TYPE + f Lnet/minecraft/class_2378; field_41159 MATERIAL_RULE + f Lnet/minecraft/class_2378; field_41147 STRUCTURE_TYPE + f Lorg/slf4j/Logger; field_41168 LOGGER + f Lnet/minecraft/class_2378; field_41190 ATTRIBUTE + f Lnet/minecraft/class_2378; field_53967 CONSUME_EFFECT_TYPE + f Lnet/minecraft/class_2378; field_41186 POS_RULE_TEST + f Lnet/minecraft/class_2378; field_46912 POOL_ALIAS_BINDING + f Lnet/minecraft/class_2378; field_41174 STATUS_EFFECT + f Lnet/minecraft/class_7922; field_41178 ITEM + f Lnet/minecraft/class_2378; field_41162 STRUCTURE_POOL_ELEMENT + f Lnet/minecraft/class_2378; field_41150 FOLIAGE_PLACER_TYPE + f Lnet/minecraft/class_2378; field_41146 STRUCTURE_PIECE + f Lnet/minecraft/class_2378; field_41134 LOOT_FUNCTION_TYPE + f Lnet/minecraft/class_2378; field_41158 MATERIAL_CONDITION + f Lnet/minecraft/class_2378; field_56404 DATA_COMPONENT_PREDICATE_TYPE + f Lnet/minecraft/class_2378; field_62996 DEBUG_SUBSCRIPTION + f Lnet/minecraft/class_2385; field_41170 ROOT + f Lnet/minecraft/class_2378; field_56156 TEST_FUNCTION + f Lnet/minecraft/class_2378; field_63925 ENVIRONMENTAL_ATTRIBUTE + f Lnet/minecraft/class_2378; field_41185 RULE_TEST + f Lnet/minecraft/class_2378; field_41133 LOOT_POOL_ENTRY_TYPE + f Lnet/minecraft/class_2378; field_41161 STRUCTURE_PROCESSOR + f Lnet/minecraft/class_7922; field_41175 BLOCK + f Lnet/minecraft/class_2378; field_41157 CHUNK_GENERATOR + f Lnet/minecraft/class_2378; field_41145 STRUCTURE_PLACEMENT + f Lnet/minecraft/class_2378; field_51837 ENCHANTMENT_PROVIDER_TYPE + f Lnet/minecraft/class_2378; field_56403 SPAWN_CONDITION_TYPE + f Lnet/minecraft/class_2378; field_43381 RULE_BLOCK_ENTITY_MODIFIER + f Lnet/minecraft/class_2378; field_56155 TEST_INSTANCE_TYPE + f Lnet/minecraft/class_2378; field_63926 ATTRIBUTE_TYPE + f Lnet/minecraft/class_2378; field_61038 DIALOG_ACTION_TYPE + f Lnet/minecraft/class_2378; field_41144 FEATURE + f Lnet/minecraft/class_2378; field_41132 ACTIVITY + f Lnet/minecraft/class_2378; field_41160 DENSITY_FUNCTION_TYPE + f Lnet/minecraft/class_2378; field_63643 PERMISSION_TYPE + f Lnet/minecraft/class_2378; field_41172 SOUND_EVENT + f Lnet/minecraft/class_2378; field_41128 POINT_OF_INTEREST_TYPE + f Lnet/minecraft/class_2378; field_54873 SLOT_DISPLAY + f Lnet/minecraft/class_2378; field_41156 BIOME_SOURCE + f Lnet/minecraft/class_7922; field_41184 CHUNK_STATUS + f Lnet/minecraft/class_2378; field_55881 TICKET_TYPE + f Lnet/minecraft/class_2378; field_51832 ENCHANTMENT_EFFECT_COMPONENT_TYPE + f Lnet/minecraft/class_2378; field_49911 ENTITY_SUB_PREDICATE_TYPE + f Lnet/minecraft/class_2378; field_56154 TEST_ENVIRONMENT_DEFINITION_TYPE + f Lnet/minecraft/class_2378; field_44687 ITEM_GROUP + f Lnet/minecraft/class_2378; field_63644 PERMISSION_CHECK_TYPE + f Lnet/minecraft/class_7922; field_41129 MEMORY_MODULE_TYPE + f Lnet/minecraft/class_2378; field_41155 FEATURE_SIZE_TYPE + f Lnet/minecraft/class_2378; field_41143 CARVER + f Lnet/minecraft/class_2378; field_41183 CUSTOM_STAT + f Lnet/minecraft/class_2378; field_41139 FLOAT_PROVIDER_TYPE + f Lnet/minecraft/class_2378; field_54874 RECIPE_DISPLAY + f Lnet/minecraft/class_2378; field_41179 POTION + f Lnet/minecraft/class_2378; field_41167 REGISTRIES + f Lnet/minecraft/class_7922; field_41173 FLUID + f Lnet/minecraft/class_2378; field_54927 RECIPE_BOOK_CATEGORY + f Lnet/minecraft/class_2378; field_46591 BLOCK_TYPE + f Lnet/minecraft/class_2378; field_47555 NUMBER_FORMAT_TYPE + f Lnet/minecraft/class_2378; field_62491 OUTGOING_RPC_METHOD + f Lnet/minecraft/class_2378; field_41142 BLOCK_PREDICATE_TYPE + m (Lnet/minecraft/class_5321;Ljava/lang/String;Lnet/minecraft/class_7923$class_6889;)Lnet/minecraft/class_7922; method_47481 create + p 1 defaultId + p 0 key + p 2 initializer + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47507 method_47507 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_76572 method_76572 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47494 method_47494 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47470 method_47470 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47454 method_47454 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47466 method_47466 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47508 method_47508 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_49927 method_49927 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_74053 method_74053 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47495 method_47495 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47471 method_47471 + p 0 registry + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_2378;)V method_47484 method_47484 + p 1 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47467 method_47467 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47500 method_47500 + p 0 registry + m (Lnet/minecraft/class_5321;Ljava/lang/String;Lnet/minecraft/class_7923$class_6889;)Lnet/minecraft/class_7922; method_47489 createIntrusive + p 1 defaultId + p 0 key + p 2 initializer + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47512 method_47512 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47455 method_47455 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47452 method_47452 + p 0 registry + m (Lnet/minecraft/class_2378;)Lnet/minecraft/class_7871; method_62715 createEntryLookup + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47492 method_47492 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47505 method_47505 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47506 method_47506 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47453 method_47453 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47493 method_47493 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47465 method_47465 + p 0 registry + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_7923$class_6889;)Lnet/minecraft/class_2378; method_47479 create + p 0 key + p 1 initializer + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47474 method_47474 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_66552 method_66552 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47462 method_47462 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47503 method_47503 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47498 method_47498 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_66903 method_66903 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47475 method_47475 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47504 method_47504 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47459 method_47459 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47499 method_47499 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_60389 method_60389 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47509 method_47509 + p 0 registry + m ()V method_47476 bootstrap + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47496 method_47496 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47472 method_47472 + p 0 registry + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2385;Lnet/minecraft/class_7923$class_6889;)Lnet/minecraft/class_2385; method_47478 create + p 2 initializer + p 1 registry + p 0 key + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47460 method_47460 + p 0 registry + m (Lnet/minecraft/class_2378;)V method_62716 resetTagEntries + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47513 method_47513 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47456 method_47456 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47501 method_47501 + p 0 registry + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_7923$class_6889;)Lnet/minecraft/class_2378; method_53495 createIntrusive + p 1 initializer + p 0 key + m (Lnet/minecraft/class_2960;Ljava/util/function/Supplier;)V method_47482 method_47482 + p 1 initializer + p 0 id + m (Lnet/minecraft/class_2378;)V method_47483 validate + p 0 registries + m ()V method_47491 freezeRegistries + m ()V method_47487 init + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47497 method_47497 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47461 method_47461 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47469 method_47469 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47502 method_47502 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47514 method_47514 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_62991 method_62991 + p 0 registry + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; method_47457 method_47457 + p 0 registry +c net/minecraft/class_7923$class_6889 net/minecraft/registry/Registries$Initializer + m (Lnet/minecraft/class_2378;)Ljava/lang/Object; run run + p 1 registry +c net/minecraft/class_7924 net/minecraft/registry/RegistryKeys + f Lnet/minecraft/class_5321; field_41211 PLACEMENT_MODIFIER_TYPE + f Lnet/minecraft/class_5321; field_41233 TRUNK_PLACER_TYPE + f Lnet/minecraft/class_5321; field_41223 WORLD + f Lnet/minecraft/class_5321; field_41245 PLACED_FEATURE + f Lnet/minecraft/class_5321; field_41267 FEATURE + f Lnet/minecraft/class_5321; field_41231 STRUCTURE_TYPE + f Lnet/minecraft/class_5321; field_41253 BIOME_SOURCE + f Lnet/minecraft/class_5321; field_41243 CHUNK_GENERATOR_SETTINGS + f Lnet/minecraft/class_5321; field_41237 MESSAGE_TYPE + f Lnet/minecraft/class_5321; field_41205 MATERIAL_RULE + f Lnet/minecraft/class_5321; field_41227 STRUCTURE_PIECE + f Lnet/minecraft/class_5321; field_41249 TEMPLATE_POOL + f Lnet/minecraft/class_5321; field_41257 BLOCK_STATE_PROVIDER_TYPE + f Lnet/minecraft/class_5321; field_41247 PROCESSOR_LIST + f Lnet/minecraft/class_5321; field_41271 FOLIAGE_PLACER_TYPE + f Lnet/minecraft/class_2960; field_47497 ROOT + f Lnet/minecraft/class_5321; field_44688 ITEM_GROUP + f Lnet/minecraft/class_5321; field_41208 STATUS_EFFECT + f Lnet/minecraft/class_5321; field_41228 STRUCTURE_PLACEMENT + f Lnet/minecraft/class_5321; field_41218 ROOT_PLACER_TYPE + f Lnet/minecraft/class_5321; field_41244 NOISE_PARAMETERS + f Lnet/minecraft/class_5321; field_41242 FLAT_LEVEL_GENERATOR_PRESET + f Lnet/minecraft/class_5321; field_41264 DENSITY_FUNCTION_TYPE + f Lnet/minecraft/class_5321; field_41232 TREE_DECORATOR_TYPE + f Lnet/minecraft/class_5321; field_41204 MATERIAL_CONDITION + f Lnet/minecraft/class_5321; field_41248 STRUCTURE_SET + f Lnet/minecraft/class_5321; field_41238 CONFIGURED_CARVER + f Lnet/minecraft/class_5321; field_41224 DIMENSION + f Lnet/minecraft/class_5321; field_41246 STRUCTURE + f Lnet/minecraft/class_5321; field_41268 FEATURE_SIZE_TYPE + f Lnet/minecraft/class_5321; field_41236 BIOME + f Lnet/minecraft/class_5321; field_41258 CARVER + f Lnet/minecraft/class_5321; field_43089 MULTI_NOISE_BIOME_SOURCE_PARAMETER_LIST + f Lnet/minecraft/class_5321; field_41240 DENSITY_FUNCTION + f Lnet/minecraft/class_5321; field_41230 STRUCTURE_PROCESSOR + f Lnet/minecraft/class_5321; field_41260 CHUNK_GENERATOR + f Lnet/minecraft/class_5321; field_41250 WORLD_PRESET + f Lnet/minecraft/class_5321; field_46913 POOL_ALIAS_BINDING + f Lnet/minecraft/class_5321; field_47498 CRITERION + f Lnet/minecraft/class_5321; field_41239 CONFIGURED_FEATURE + f Lnet/minecraft/class_5321; field_41207 SCREEN_HANDLER + f Lnet/minecraft/class_5321; field_41229 STRUCTURE_POOL_ELEMENT + f Lnet/minecraft/class_5321; field_43382 RULE_BLOCK_ENTITY_MODIFIER + f Lnet/minecraft/class_5321; field_54032 TRIAL_SPAWNER + f Lnet/minecraft/class_5321; field_62492 INCOMING_RPC_METHODS + f Lnet/minecraft/class_5321; field_62493 OUTGOING_RPC_METHODS + f Lnet/minecraft/class_5321; field_61039 DIALOG_ACTION_TYPE + f Lnet/minecraft/class_5321; field_60816 INPUT_CONTROL_TYPE + f Lnet/minecraft/class_5321; field_42941 DECORATED_POT_PATTERN + f Lnet/minecraft/class_5321; field_54928 RECIPE_BOOK_CATEGORY + f Lnet/minecraft/class_5321; field_63646 PERMISSION_CHECK_TYPE + f Lnet/minecraft/class_5321; field_63645 PERMISSION_TYPE + f Lnet/minecraft/class_5321; field_42082 TRIM_PATTERN + f Lnet/minecraft/class_5321; field_42083 TRIM_MATERIAL + f Lnet/minecraft/class_5321; field_56596 CHICKEN_VARIANT + f Lnet/minecraft/class_5321; field_53968 CONSUME_EFFECT_TYPE + f Lnet/minecraft/class_5321; field_49659 DATA_COMPONENT_TYPE + f Lnet/minecraft/class_5321; field_51842 ENCHANTMENT_LOCATION_BASED_EFFECT_TYPE + f Lnet/minecraft/class_5321; field_51844 ENCHANTMENT_VALUE_EFFECT_TYPE + f Lnet/minecraft/class_5321; field_51843 ENCHANTMENT_PROVIDER_TYPE + f Lnet/minecraft/class_5321; field_51840 ENCHANTMENT_ENTITY_EFFECT_TYPE + f Lnet/minecraft/class_5321; field_51841 ENCHANTMENT_LEVEL_BASED_VALUE_TYPE + f Lnet/minecraft/class_5321; field_51839 ENCHANTMENT_PROVIDER + f Lnet/minecraft/class_5321; field_51838 ENCHANTMENT_EFFECT_COMPONENT_TYPE + f Lnet/minecraft/class_5321; field_41270 FLUID + f Lnet/minecraft/class_5321; field_41272 FROG_VARIANT + f Lnet/minecraft/class_5321; field_49772 WOLF_VARIANT + f Lnet/minecraft/class_5321; field_41274 HEIGHT_PROVIDER_TYPE + f Lnet/minecraft/class_5321; field_41273 GAME_EVENT + f Lnet/minecraft/class_5321; field_41275 INSTRUMENT + f Lnet/minecraft/class_5321; field_56406 DATA_COMPONENT_PREDICATE_TYPE + f Lnet/minecraft/class_5321; field_56405 SPAWN_CONDITION_TYPE + f Lnet/minecraft/class_5321; field_62997 DEBUG_SUBSCRIPTION + f Lnet/minecraft/class_5321; field_41197 ITEM + f Lnet/minecraft/class_5321; field_41196 INT_PROVIDER_TYPE + f Lnet/minecraft/class_5321; field_41199 LOOT_FUNCTION_TYPE + f Lnet/minecraft/class_5321; field_41198 LOOT_CONDITION_TYPE + f Lnet/minecraft/class_5321; field_56510 COW_VARIANT + f Lnet/minecraft/class_5321; field_41219 RULE_TEST + f Lnet/minecraft/class_5321; field_41217 RECIPE_TYPE + f Lnet/minecraft/class_5321; field_41222 ACTIVITY + f Lnet/minecraft/class_5321; field_41221 SENSOR_TYPE + f Lnet/minecraft/class_5321; field_41226 STAT_TYPE + f Lnet/minecraft/class_5321; field_64252 SLOT_SOURCE_TYPE + f Lnet/minecraft/class_5321; field_41225 SOUND_EVENT + f Lnet/minecraft/class_5321; field_64253 GAME_RULE + f Lnet/minecraft/class_5321; field_41206 MEMORY_MODULE_TYPE + f Lnet/minecraft/class_5321; field_41209 PAINTING_VARIANT + f Lnet/minecraft/class_5321; field_41210 PARTICLE_TYPE + f Lnet/minecraft/class_5321; field_41212 POINT_OF_INTEREST_TYPE + f Lnet/minecraft/class_5321; field_41214 POS_RULE_TEST + f Lnet/minecraft/class_5321; field_41213 POSITION_SOURCE_TYPE + f Lnet/minecraft/class_5321; field_41216 RECIPE_SERIALIZER + f Lnet/minecraft/class_5321; field_41215 POTION + f Lnet/minecraft/class_5321; field_47556 NUMBER_FORMAT_TYPE + f Lnet/minecraft/class_5321; field_41200 LOOT_NBT_PROVIDER_TYPE + f Lnet/minecraft/class_5321; field_41202 LOOT_POOL_ENTRY_TYPE + f Lnet/minecraft/class_5321; field_41201 LOOT_NUMBER_PROVIDER_TYPE + f Lnet/minecraft/class_5321; field_41203 LOOT_SCORE_PROVIDER_TYPE + f Lnet/minecraft/class_5321; field_42534 DAMAGE_TYPE + f Lnet/minecraft/class_5321; field_63928 ATTRIBUTE_TYPE + f Lnet/minecraft/class_5321; field_63927 ENVIRONMENT_ATTRIBUTE + f Lnet/minecraft/class_5321; field_52178 RECIPE + f Lnet/minecraft/class_5321; field_52177 ADVANCEMENT + f Lnet/minecraft/class_5321; field_52176 JUKEBOX_SONG + f Lnet/minecraft/class_5321; field_41269 FLOAT_PROVIDER_TYPE + f Lnet/minecraft/class_5321; field_64476 TIMELINE + f Lnet/minecraft/class_5321; field_64475 ZOMBIE_NAUTILUS_VARIANT + f Lnet/minecraft/class_5321; field_41262 COMMAND_ARGUMENT_TYPE + f Lnet/minecraft/class_5321; field_41261 CHUNK_STATUS + f Lnet/minecraft/class_5321; field_41263 CUSTOM_STAT + f Lnet/minecraft/class_5321; field_41266 ENTITY_TYPE + f Lnet/minecraft/class_5321; field_41265 ENCHANTMENT + f Lnet/minecraft/class_5321; field_41259 CAT_VARIANT + f Lnet/minecraft/class_5321; field_41252 BANNER_PATTERN + f Lnet/minecraft/class_5321; field_41251 ATTRIBUTE + f Lnet/minecraft/class_5321; field_41254 BLOCK + f Lnet/minecraft/class_5321; field_41256 BLOCK_PREDICATE_TYPE + f Lnet/minecraft/class_5321; field_41255 BLOCK_ENTITY_TYPE + f Lnet/minecraft/class_5321; field_55882 TICKET_TYPE + f Lnet/minecraft/class_5321; field_55883 PIG_VARIANT + f Lnet/minecraft/class_5321; field_41241 DIMENSION_TYPE + f Lnet/minecraft/class_5321; field_41234 VILLAGER_PROFESSION + f Lnet/minecraft/class_5321; field_41235 VILLAGER_TYPE + f Lnet/minecraft/class_5321; field_60818 DIALOG + f Lnet/minecraft/class_5321; field_60819 DIALOG_BODY_TYPE + f Lnet/minecraft/class_5321; field_50082 MAP_DECORATION_TYPE + f Lnet/minecraft/class_5321; field_46592 BLOCK_TYPE + f Lnet/minecraft/class_5321; field_60820 DIALOG_TYPE + f Lnet/minecraft/class_5321; field_50080 ITEM_MODIFIER + f Lnet/minecraft/class_5321; field_50081 PREDICATE + f Lnet/minecraft/class_5321; field_57110 WOLF_SOUND_VARIANT + f Lnet/minecraft/class_5321; field_54875 RECIPE_DISPLAY + f Lnet/minecraft/class_5321; field_54876 SLOT_DISPLAY + f Lnet/minecraft/class_5321; field_50079 LOOT_TABLE + f Lnet/minecraft/class_5321; field_56160 TEST_ENVIRONMENT + f Lnet/minecraft/class_5321; field_56161 TEST_INSTANCE + f Lnet/minecraft/class_5321; field_56159 TEST_INSTANCE_TYPE + f Lnet/minecraft/class_5321; field_49913 ENTITY_SUB_PREDICATE_TYPE + f Lnet/minecraft/class_5321; field_56157 TEST_FUNCTION + f Lnet/minecraft/class_5321; field_56158 TEST_ENVIRONMENT_DEFINITION_TYPE + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_60915 getPath + p 0 registryRef + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_47517 of + p 0 id + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_5321; method_47518 toDimensionKey + p 0 key + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_5321; method_47516 toWorldKey + p 0 key + m (Lnet/minecraft/class_5321;)Ljava/lang/String; method_60916 getTagPath + p 0 registryRef +c net/minecraft/class_7922 net/minecraft/registry/DefaultedRegistry + m ()Lnet/minecraft/class_2960; method_10137 getDefaultId +c net/minecraft/class_7920 net/minecraft/entity/player/PlayerSkinType + f Ljava/lang/String; field_62914 modelMetadata + f Ljava/util/function/Function; field_62913 BY_MODEL_METADATA + f Ljava/lang/String; field_41124 name + f Lcom/mojang/serialization/Codec; field_62533 CODEC + f Lnet/minecraft/class_9139; field_62534 PACKET_CODEC + f Lnet/minecraft/class_7920; field_41122 SLIM + f Lnet/minecraft/class_7920; field_41123 WIDE + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V + p 3 name + p 4 modelMetadata + m (Lnet/minecraft/class_7920;)Ljava/lang/Boolean; method_74138 method_74138 + p 0 model + m (Ljava/lang/String;)Lnet/minecraft/class_7920; method_74671 byModelMetadata + p 0 modelMetadata + m (Ljava/lang/Boolean;)Lnet/minecraft/class_7920; method_74139 method_74139 + p 0 slim +c net/minecraft/class_7918 net/minecraft/command/argument/GameModeArgumentType + f [Lnet/minecraft/class_1934; field_41089 VALUES + f Ljava/util/Collection; field_41088 EXAMPLES + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_41090 INVALID_GAME_MODE_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_47386 method_47386 + p 0 gameMode + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/class_1934; method_47385 getGameMode + p 1 name + p 0 context + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_1934; method_47384 parse + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m ()Lnet/minecraft/class_7918; method_47383 gameMode +c net/minecraft/class_7919 net/minecraft/client/gui/tooltip/Tooltip + f Lnet/minecraft/class_2561; field_41102 content + f Ljava/util/List; field_41103 lines + f Lnet/minecraft/class_2561; field_41104 narration + f Lnet/minecraft/class_2477; field_51822 language + f I field_41101 ROW_LENGTH + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)Lnet/minecraft/class_7919; method_47408 of + p 1 narration + p 0 content + m (Lnet/minecraft/class_310;)Ljava/util/List; method_47405 getLines + p 1 client + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_7919; method_47407 of + p 0 content + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)V + p 1 content + p 2 narration + m (Lnet/minecraft/class_310;Lnet/minecraft/class_2561;)Ljava/util/List; method_47406 wrapLines + p 0 client + p 1 text +c net/minecraft/class_7917 net/minecraft/block/SuspiciousStewIngredient + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_7917; method_47380 of + p 0 item + m ()Ljava/util/List; method_47379 getAll + m ()Lnet/minecraft/class_9298; method_53233 getStewEffects +c net/minecraft/class_10752 net/minecraft/test/UnknownTestException + f Ljava/lang/Throwable; field_56521 throwable + m (Ljava/lang/Throwable;)V + p 1 throwable +c net/minecraft/class_10753 net/minecraft/datafixer/fix/PlayerEquipmentFix + f Ljava/util/Map; field_56531 SLOT_ID_MAP + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67507 method_67507 + p 0 playerDynamic + m (Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67508 method_67508 + p 1 inventoryDynamic +c net/minecraft/class_10750 net/minecraft/client/render/entity/state/CowEntityRenderState + f Lnet/minecraft/class_10731; field_56507 variant +c net/minecraft/class_10751 net/minecraft/test/TestException + m (Ljava/lang/String;)V + p 1 message + m ()Lnet/minecraft/class_2561; method_66924 getText +c net/minecraft/class_10756 net/minecraft/entity/passive/ChickenVariant + f Lcom/mojang/serialization/Codec; field_56540 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_56539 NETWORK_CODEC + f Lcom/mojang/serialization/Codec; field_56538 CODEC + f Lnet/minecraft/class_9139; field_56541 ENTRY_PACKET_CODEC + f Lnet/minecraft/class_10702; comp_3670 spawnConditions + f Lnet/minecraft/class_10693; comp_3669 modelAndTexture + m (Lnet/minecraft/class_10693;)V + p 1 modelAndTexture + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67524 method_67524 + p 0 instance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67523 method_67523 + p 0 instance + m ()Lnet/minecraft/class_10702; comp_3670 spawnConditions + m ()Lnet/minecraft/class_10693; comp_3669 modelAndTexture + m (Lnet/minecraft/class_10693;Lnet/minecraft/class_10702;)V + p 1 modelAndTexture + p 2 spawnConditions +c net/minecraft/class_10756$class_10757 net/minecraft/entity/passive/ChickenVariant$Model + f Ljava/lang/String; field_56545 id + f Lcom/mojang/serialization/Codec; field_56544 CODEC + f Lnet/minecraft/class_10756$class_10757; field_56543 COLD + f Lnet/minecraft/class_10756$class_10757; field_56542 NORMAL + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_10754 net/minecraft/datafixer/schema/Schema4312 +c net/minecraft/class_10739 net/minecraft/sound/AmbientDesertBlockSounds + f I field_59760 DRY_GRASS_SOUND_CHANCE + f I field_59761 DEAD_BUSH_SOUND_CHANCE + f I field_59762 DEAD_BUSH_BADLANDS_PENALTY_CHANCE + f I field_59763 SAND_CHECK_HORIZONTAL_DISTANCE + f I field_59764 SAND_CHECK_VERTICAL_DISTANCE + f I field_59765 HORIZONTAL_DIRECTIONS + f I field_56469 REQUIRED_SAND_CHECK_DIRECTIONS + f I field_56467 SAND_SOUND_CHANCE + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338$class_2339;)Z method_70750 checkForSandSoundTriggers + p 0 world + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_70756 tryPlayDeadBushSounds + p 1 pos + p 2 random + p 0 world + m (Lnet/minecraft/class_2680;)Z method_70753 triggersSandSounds + p 0 state + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_70755 tryPlayDryGrassSounds + p 2 random + p 0 world + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_70751 triggersDryVegetationSounds + p 1 pos + p 0 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Z method_70754 canPlaySandSoundsAt + p 0 world + p 1 pos + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V method_70752 tryPlaySandSounds + p 1 pos + p 2 random + p 0 world +c net/minecraft/class_10736 net/minecraft/block/FireflyBushBlock + f D field_56461 FIREFLY_CHANCE + f D field_56462 FIREFLY_HORIZONTAL_RADIUS + f D field_56463 FIREFLY_VERTICAL_RADIUS + f Lcom/mojang/serialization/MapCodec; field_56460 CODEC + f I field_56571 IDLE_SOUND_CHANCE + f I field_56464 LIGHT_LEVEL_THRESHOLD +c net/minecraft/class_10737 net/minecraft/block/SandBlock + f Lcom/mojang/serialization/MapCodec; field_56465 CODEC + m (Lnet/minecraft/class_10737;)Lnet/minecraft/class_8805; method_67405 method_67405 + p 0 block + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67404 method_67404 + p 0 instance +c net/minecraft/class_6603 net/minecraft/network/packet/s2c/play/ChunkData + f I field_34862 MAX_SECTIONS_DATA_SIZE + f [B field_34864 sectionsData + f Lnet/minecraft/class_9139; field_56601 HEIGHTMAPS_PACKET_CODEC + f Ljava/util/Map; field_34863 heightmap + f Ljava/util/List; field_34865 blockEntities + m (IILnet/minecraft/class_6603$class_6605;)V method_38588 method_38588 + p 3 visitor + m ()Lnet/minecraft/class_2540; method_38586 getSectionsDataBuf + m (Ljava/util/Map$Entry;)[J method_67558 method_67558 + p 0 entry + m (Lnet/minecraft/class_2818;)I method_38589 getSectionsPacketSize + p 0 chunk + m (Lnet/minecraft/class_6603$class_6605;II)V method_38593 iterateBlockEntities + p 3 z + p 2 x + p 1 consumer + m (II)Ljava/util/function/Consumer; method_38587 getBlockEntities + p 2 z + p 1 x + m (I)Ljava/util/Map; method_67557 method_67557 + p 0 size + m (Lnet/minecraft/class_9129;)V method_38590 write + p 1 buf + m ()Ljava/util/Map; method_38594 getHeightmap + m (Lnet/minecraft/class_2818;)V + p 1 chunk + m (Ljava/util/Map$Entry;)Z method_67559 method_67559 + p 0 entry + m ()Lio/netty/buffer/ByteBuf; method_38595 getWritableSectionsDataBuf + m (Lnet/minecraft/class_9129;II)V + p 3 z + p 2 x + p 1 buf + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_2818;)V method_38591 writeSections + p 0 buf + p 1 chunk +c net/minecraft/class_6603$class_6604 net/minecraft/network/packet/s2c/play/ChunkData$BlockEntityData + f I field_34867 y + f I field_34866 localXz + f Lnet/minecraft/class_2487; field_34869 nbt + f Lnet/minecraft/class_2591; field_34868 type + f Lnet/minecraft/class_9139; field_47932 LIST_PACKET_CODEC + f Lnet/minecraft/class_9139; field_47931 PACKET_CODEC + m (Lnet/minecraft/class_9129;)V method_38597 write + p 1 buf + m (Lnet/minecraft/class_9129;)V + p 1 buf + m (Lnet/minecraft/class_2586;)Lnet/minecraft/class_6603$class_6604; method_38596 of + p 0 blockEntity + m (IILnet/minecraft/class_2591;Lnet/minecraft/class_2487;)V + p 4 nbt + p 3 type + p 2 y + p 1 localXz +c net/minecraft/class_6603$class_6605 net/minecraft/network/packet/s2c/play/ChunkData$BlockEntityVisitor + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2591;Lnet/minecraft/class_2487;)V accept accept + p 1 pos + p 2 type + p 3 nbt +c net/minecraft/class_7935 net/minecraft/util/logging/LogWriter + f Lcom/mojang/serialization/Codec; field_41296 codec + f Ljava/util/concurrent/atomic/AtomicInteger; field_41298 refCount + f Lcom/google/gson/Gson; field_41295 GSON + f Ljava/nio/channels/FileChannel; field_41297 channel + m (Lcom/mojang/serialization/Codec;Ljava/nio/channels/FileChannel;)V + p 2 channel + p 1 codec + m ()Lnet/minecraft/class_7936; method_47566 getReader + m (Ljava/lang/Object;)V method_47568 write + p 1 object + m ()V method_47569 closeIfNotReferenced + m (Lcom/mojang/serialization/Codec;Ljava/nio/file/Path;)Lnet/minecraft/class_7935; method_47567 create + p 1 path + p 0 codec +c net/minecraft/class_7935$1 net/minecraft/util/logging/LogWriter$1 + f J field_41301 pos +c net/minecraft/class_7929 net/minecraft/util/logging/LogFileCompressor + f Ljava/lang/String; field_41292 extension + f Ljava/lang/String; field_41290 GZ_EXTENSION + f Ljava/nio/file/Path; field_41291 directory + f Lorg/slf4j/Logger; field_41288 LOGGER + f I field_41289 COMPRESSION_BUFFER_SIZE + m (Ljava/nio/channels/ReadableByteChannel;Ljava/nio/file/Path;)V method_47550 compress + p 1 outputPath + p 0 source + m (Ljava/nio/file/Path;)Lnet/minecraft/class_7929$class_7931; method_47551 get + p 1 path + m ()Lnet/minecraft/class_7929$class_7933; method_47549 getAll + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_47553 compress + p 1 to + p 0 from + m (Ljava/nio/file/Path;Ljava/lang/String;)Lnet/minecraft/class_7929; method_47552 create + p 0 directory + p 1 extension + m (Ljava/time/LocalDate;)Lnet/minecraft/class_7929$class_7934; method_47554 createLogFile + p 1 date + m (Ljava/nio/file/Path;Ljava/lang/String;)V + p 2 extension + p 1 directory +c net/minecraft/class_7929$class_7931 net/minecraft/util/logging/LogFileCompressor$LogFile + m ()Ljava/io/Reader; method_47556 getReader + m ()Lnet/minecraft/class_7929$class_7930; method_47557 compress + m ()Lnet/minecraft/class_7929$class_7932; comp_1157 id + m ()Ljava/nio/file/Path; comp_1156 path +c net/minecraft/class_7929$class_7930 net/minecraft/util/logging/LogFileCompressor$Compressed + f Lnet/minecraft/class_7929$class_7932; comp_1157 id + f Ljava/nio/file/Path; comp_1156 path + m (Ljava/nio/file/Path;Lnet/minecraft/class_7929$class_7932;)V + p 1 path + p 2 id +c net/minecraft/class_7929$class_7933 net/minecraft/util/logging/LogFileCompressor$LogFileIterable + f Ljava/util/List; field_41294 logs + m (Ljava/util/List;)V + p 1 logs + m ()Ljava/util/stream/Stream; method_47563 stream + m (Ljava/time/LocalDate;I)Lnet/minecraft/class_7929$class_7933; method_47562 removeExpired + p 1 currentDate + p 2 retentionDays + m (ILjava/time/LocalDate;Lnet/minecraft/class_7929$class_7931;)Z method_47561 method_47561 + p 2 log + m ()Lnet/minecraft/class_7929$class_7933; method_47560 compressAll + m ()Ljava/util/Set; method_47564 toIdSet +c net/minecraft/class_7929$class_7932 net/minecraft/util/logging/LogFileCompressor$LogId + f Ljava/time/format/DateTimeFormatter; field_41293 DATE_TIME_FORMATTER + f Ljava/time/LocalDate; comp_1158 date + f I comp_1159 index + m (Ljava/lang/String;)Lnet/minecraft/class_7929$class_7932; method_47558 fromFileName + p 0 fileName + m (Ljava/lang/String;)Ljava/lang/String; method_47559 getFileName + p 1 extension + m ()Ljava/time/LocalDate; comp_1158 date + m ()I comp_1159 index + m (Ljava/time/LocalDate;I)V + p 1 date + p 2 index +c net/minecraft/class_7929$class_7934 net/minecraft/util/logging/LogFileCompressor$Uncompressed + f Ljava/nio/file/Path; comp_1156 path + f Lnet/minecraft/class_7929$class_7932; comp_1157 id + m ()Ljava/nio/channels/FileChannel; method_47565 open + m (Ljava/nio/file/Path;Lnet/minecraft/class_7929$class_7932;)V + p 1 path + p 2 id +c net/minecraft/class_7927 net/minecraft/util/function/LazyIterationConsumer + c A consumer used in an iteration that can be aborted early. + m (Ljava/lang/Object;)Lnet/minecraft/class_7927$class_7928; accept accept + p 1 value + m (Ljava/util/function/Consumer;)Lnet/minecraft/class_7927; forConsumer forConsumer + p 0 consumer + m (Ljava/util/function/Consumer;Ljava/lang/Object;)Lnet/minecraft/class_7927$class_7928; method_47542 method_47542 + p 1 value +c net/minecraft/class_7927$class_7928 net/minecraft/util/function/LazyIterationConsumer$NextIteration + c Indicates whether to perform the next iteration. + f Lnet/minecraft/class_7927$class_7928; field_41283 CONTINUE + f Lnet/minecraft/class_7927$class_7928; field_41284 ABORT + m ()Z method_47543 shouldAbort +c net/minecraft/class_7925 net/minecraft/unused/packageinfo/PackageInfo7925 +c net/minecraft/class_7926 net/minecraft/server/command/FillBiomeCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_41279 UNLOADED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_41281 TOO_BIG_EXCEPTION + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;Ljava/util/function/Predicate;Ljava/util/function/Consumer;)Lcom/mojang/datafixers/util/Either; method_55340 fillBiome + p 3 biome + p 4 filter + p 1 from + p 2 to + p 5 feedbackConsumer + p 0 world + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_47529 register + p 0 dispatcher + p 1 commandRegistryAccess + m (Lcom/mojang/brigadier/context/CommandContext;)I method_47530 method_47530 + p 0 context + m (I)I method_47528 convertCoordinate + p 0 coordinate + m (Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/class_2791;Lnet/minecraft/class_3341;Lnet/minecraft/class_6880;Ljava/util/function/Predicate;)Lnet/minecraft/class_6780; method_47531 createBiomeSupplier + p 1 chunk + p 2 box + p 0 counter + p 3 biome + p 4 filter + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_47535 convertPos + p 0 pos + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_47536 method_47536 + p 0 maximum + p 1 specified + m (Lnet/minecraft/class_6880;)Z method_55342 method_55342 + p 0 biomex + m (Lnet/minecraft/class_2791;Lnet/minecraft/class_3341;Ljava/util/function/Predicate;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/class_6880;IIILnet/minecraft/class_6544$class_6552;)Lnet/minecraft/class_6880; method_47534 method_47534 + p 5 x + p 8 noise + p 7 z + p 6 y + m (Lcom/mojang/brigadier/context/CommandContext;)I method_47818 method_47818 + p 0 context + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880;)Lcom/mojang/datafixers/util/Either; method_55339 fillBiome + p 2 to + p 3 biome + p 0 world + p 1 from + m (Lnet/minecraft/class_2168;Ljava/util/function/Supplier;)V method_55341 method_55341 + p 1 feedbackSupplier + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_6880$class_6883;Ljava/util/function/Predicate;)I method_47533 execute + p 4 filter + p 2 to + p 3 biome + p 0 source + p 1 from + m (Ljava/util/function/Supplier;)V method_55343 method_55343 + p 0 feedbackSupplier +c net/minecraft/class_10741 net/minecraft/world/PersistentStateType + f Lnet/minecraft/class_4284; comp_3644 dataFixType + f Ljava/lang/String; comp_3641 id + f Ljava/util/function/Supplier; comp_3642 constructor + f Lcom/mojang/serialization/Codec; comp_3643 codec + m ()Lnet/minecraft/class_4284; comp_3644 dataFixType + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/lang/String; comp_3641 id + m ()Ljava/util/function/Supplier; comp_3642 constructor + m ()Lcom/mojang/serialization/Codec; comp_3643 codec + m (Ljava/lang/String;Ljava/util/function/Supplier;Lcom/mojang/serialization/Codec;Lnet/minecraft/class_4284;)V + p 1 id + p 2 constructor + p 3 codec + p 4 dataFixType +c net/minecraft/class_10746 net/minecraft/client/render/entity/model/ColdCowEntityModel + m ()Lnet/minecraft/class_5607; method_67468 getTexturedModelData +c net/minecraft/class_10769 net/minecraft/util/thread/AsyncHelper + f I field_56616 MAX_TASKS + m (Ljava/util/Map;Ljava/util/function/BiFunction;ILjava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_67611 mapValues + p 2 batchSize + p 3 executor + p 0 futures + p 1 function + m (Ljava/util/Map;Ljava/util/function/BiFunction;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_67612 mapValues + p 1 function + p 0 futures + p 2 executor +c net/minecraft/class_10769$class_10773 net/minecraft/util/thread/AsyncHelper$Batcher + f I field_56622 lastBatch + f Lnet/minecraft/class_10769$class_10771; field_56627 entry + f [Ljava/util/concurrent/CompletableFuture; field_56625 futures + f I field_56626 batch + f I field_56624 index + m (Ljava/util/concurrent/Executor;Ljava/lang/Object;Ljava/lang/Object;)V method_67631 method_67631 + p 3 value + p 2 key + m (Lnet/minecraft/class_10769$class_10771;IILjava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_67616 newBatch + p 2 size + p 1 futures + p 4 executor + p 3 maxCount + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/class_10769$class_10771;)Ljava/util/concurrent/CompletableFuture; method_67619 addLastTask + p 2 entry + p 1 future + m (I)I method_67614 getLastIndex + p 1 batch + m ()I method_67629 nextSize + m (Ljava/util/function/BiFunction;II)V + p 2 size + p 3 startAt + p 1 function + m (Ljava/util/Map;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_67630 mapAsync + p 2 executor + p 1 future +c net/minecraft/class_10769$class_10772 net/minecraft/util/thread/AsyncHelper$Single + m (Lnet/minecraft/class_10769$class_10771;Ljava/lang/Object;)Ljava/util/Map; method_67628 method_67628 + p 1 obj + m (Ljava/util/function/BiFunction;I)V + p 2 size + p 1 function +c net/minecraft/class_10769$class_10771 net/minecraft/util/thread/AsyncHelper$Future + f Ljava/util/function/BiFunction; comp_3689 operation + f [Ljava/lang/Object; comp_3691 values + f [Ljava/lang/Object; comp_3690 keys + m (I)Ljava/lang/Object; method_67624 getKey + p 1 index + m (I)Ljava/lang/Object; method_67626 getUValue + p 1 index + m ()I method_67620 keySize + m (ILjava/lang/Object;Ljava/lang/Object;)V method_67622 put + p 3 value + p 2 key + p 1 index + m (I)Ljava/lang/Object; method_67625 getValue + p 1 index + m (I)V method_67621 apply + p 1 index + m (Ljava/util/function/BiFunction;I)V + p 2 size + p 1 function + m (ILjava/util/Map;)V method_67623 copy + p 2 futures + p 1 index + m ()[Ljava/lang/Object; comp_3691 values + m ()[Ljava/lang/Object; comp_3690 keys + m ()Ljava/util/function/BiFunction; comp_3689 operation + m (Ljava/util/function/BiFunction;[Ljava/lang/Object;[Ljava/lang/Object;)V + p 1 operation + p 2 keys + p 3 values +c net/minecraft/class_10769$class_10770 net/minecraft/util/thread/AsyncHelper$Batch + f I field_56620 start + f Ljava/util/Map; field_56618 entries + f I field_56619 size + m (Ljava/util/Map;Ljava/lang/Object;)Ljava/util/Map; method_67618 method_67618 + p 1 obj + m (Ljava/util/Map;IILnet/minecraft/class_10769$class_10771;)Ljava/lang/Runnable; method_67617 newTask + p 2 maxCount + p 3 entry + p 0 futures + p 1 size +c net/minecraft/class_10774 net/minecraft/entity/EntityCollisionHandler + f Lnet/minecraft/class_10774; field_56634 DUMMY + m (Lnet/minecraft/class_10776;Ljava/util/function/Consumer;)V method_67640 addPostCallback + p 2 callback + p 1 event + m (Lnet/minecraft/class_10776;)V method_67638 addEvent + p 1 event + m (Lnet/minecraft/class_10776;Ljava/util/function/Consumer;)V method_67639 addPreCallback + p 1 event + p 2 callback +c net/minecraft/class_10774$class_10775 net/minecraft/entity/EntityCollisionHandler$Impl + f Ljava/util/Set; field_56637 activeEvents + f I field_56636 INVALID_VERSION + f Ljava/util/List; field_56640 callbacks + f Ljava/util/Map; field_56639 postCallbacks + f I field_56641 version + f [Lnet/minecraft/class_10776; field_56635 ALL_EVENTS + f Ljava/util/Map; field_56638 preCallbacks + m (Lnet/minecraft/class_1297;)V method_67643 runCallbacks + p 1 entity + m (Lnet/minecraft/class_10776;)Ljava/util/List; method_68688 method_68688 + p 0 value + m (Lnet/minecraft/class_10776;)Ljava/util/List; method_68687 method_68687 + p 0 value + m ()V method_67641 update + m (I)V method_67642 updateIfNecessary + p 1 version +c net/minecraft/class_10776 net/minecraft/entity/CollisionEvent + f Ljava/util/function/Consumer; field_56646 action + f Lnet/minecraft/class_10776; field_61896 CLEAR_FREEZE + f Lnet/minecraft/class_10776; field_56644 LAVA_IGNITE + f Lnet/minecraft/class_10776; field_56645 EXTINGUISH + f Lnet/minecraft/class_10776; field_56642 FREEZE + f Lnet/minecraft/class_10776; field_56643 FIRE_IGNITE + m ()Ljava/util/function/Consumer; method_67646 getAction + m (Lnet/minecraft/class_1297;)V method_67647 method_67647 + p 0 entity + m (Ljava/lang/String;ILjava/util/function/Consumer;)V + p 3 action +c net/minecraft/class_10777 net/minecraft/entity/passive/SheepColors + f Lnet/minecraft/class_10777$class_10779; field_56663 COLD + f Lnet/minecraft/class_10777$class_10779; field_56662 WARM + f Lnet/minecraft/class_10777$class_10779; field_56661 TEMPERATE + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_10777$class_10778; method_67665 createDefaultSelector + p 0 color + m (Lnet/minecraft/class_1767;)Lnet/minecraft/class_10777$class_10778; method_67669 createSingleSelector + p 0 color + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_10777$class_10779; method_67667 getSpawnConfig + p 0 biome + m ()Lnet/minecraft/class_6012$class_6006; method_67662 poolBuilder + m (Lnet/minecraft/class_6012;Lnet/minecraft/class_5819;)Lnet/minecraft/class_1767; method_67664 method_67664 + p 1 random + m (Lnet/minecraft/class_6012;)Lnet/minecraft/class_10777$class_10778; method_67663 createCombinedSelector + p 0 pool + m (Lnet/minecraft/class_1767;Lnet/minecraft/class_5819;)Lnet/minecraft/class_1767; method_67666 method_67666 + p 1 random + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_5819;)Lnet/minecraft/class_1767; method_67668 select + p 0 biome + p 1 random +c net/minecraft/class_10777$class_10779 net/minecraft/entity/passive/SheepColors$SpawnConfig + f Lnet/minecraft/class_10777$class_10778; comp_3692 colors + m ()Lnet/minecraft/class_10777$class_10778; comp_3692 colors + m (Lnet/minecraft/class_10777$class_10778;)V + p 1 colors +c net/minecraft/class_10777$class_10778 net/minecraft/entity/passive/SheepColors$ColorSelector + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_1767; get get + p 1 random +c net/minecraft/class_10758 net/minecraft/entity/passive/ChickenVariants + f Lnet/minecraft/class_5321; field_56547 TEMPERATE + f Lnet/minecraft/class_5321; field_56548 WARM + f Lnet/minecraft/class_5321; field_56549 COLD + f Lnet/minecraft/class_5321; field_56550 DEFAULT + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_10756$class_10757;Ljava/lang/String;Lnet/minecraft/class_6862;)V method_67529 register + p 3 textureName + p 4 biomes + p 0 registry + p 1 key + p 2 model + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_67526 of + p 0 id + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_10756$class_10757;Ljava/lang/String;Lnet/minecraft/class_10702;)V method_67530 register + p 0 registry + p 1 key + p 2 model + p 3 textureName + p 4 spawnConditions + m (Lnet/minecraft/class_7891;)V method_67528 bootstrap + p 0 registry +c net/minecraft/class_10759 net/minecraft/entity/player/PlayerEquipment + f Lnet/minecraft/class_1657; field_56553 player + m (Lnet/minecraft/class_1657;)V + p 1 player +c net/minecraft/class_7912 net/minecraft/unused/packageinfo/PackageInfo7912 +c net/minecraft/class_7911 net/minecraft/entity/ai/brain/task/TaskRunnable + c A functional interface that represents a task. + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z trigger trigger + c Runs the task.\n\n@return whether the task successfully ran + p 2 entity + p 3 time + p 1 world +c net/minecraft/class_7907 net/minecraft/entity/ai/brain/MemoryQuery + c A query of an entity's brain. There are three types, with each querying a different\nvalue. If a query fails, the task does not run.\n\n@see MemoryQueryResult\n@see net.minecraft.entity.ai.brain.task.TaskTriggerer.TaskContext + m ()Lnet/minecraft/class_4141; method_47254 getState + m (Lnet/minecraft/class_4095;Ljava/util/Optional;)Lnet/minecraft/class_7906; method_47253 toQueryResult + p 1 brain + p 2 value + m ()Lnet/minecraft/class_4140; comp_1151 memory +c net/minecraft/class_7907$class_7910 net/minecraft/entity/ai/brain/MemoryQuery$Optional + c A query that always succeeds. The value is an optional that contains the value if it\nis present in the memory.\n\n@see net.minecraft.entity.ai.brain.task.TaskTriggerer.TaskContext#queryMemoryOptional + f Lnet/minecraft/class_4140; comp_1151 memory + m (Lnet/minecraft/class_4140;)V + p 1 memory +c net/minecraft/class_7907$class_7908 net/minecraft/entity/ai/brain/MemoryQuery$Absent + c A query that succeeds if a value is not present in the memory. The\nquery result is always {@code Unit.INSTANCE}.\n\n@see net.minecraft.entity.ai.brain.task.TaskTriggerer.TaskContext#queryMemoryAbsent + f Lnet/minecraft/class_4140; comp_1151 memory + m (Lnet/minecraft/class_4140;)V + p 1 memory +c net/minecraft/class_7907$class_7909 net/minecraft/entity/ai/brain/MemoryQuery$Value + c A query that succeeds if a value is present in the memory. The result is the queried value.\n\n@see net.minecraft.entity.ai.brain.task.TaskTriggerer.TaskContext#queryMemoryValue + f Lnet/minecraft/class_4140; comp_1151 memory + m (Lnet/minecraft/class_4140;)V + p 1 memory +c net/minecraft/class_7906 net/minecraft/entity/ai/brain/MemoryQueryResult + c The result of a {@link MemoryQuery}. This is passed as a lambda argument to\n{@link net.minecraft.entity.ai.brain.task.TaskTriggerer#task}. Use\n{@link net.minecraft.entity.ai.brain.task.TaskTriggerer.TaskContext#getValue} to\nget the value.\n\n

It is also possible to set or forget the stored memory value using methods in\nthis class.\n\n@see net.minecraft.entity.ai.brain.task.TaskTriggerer.TaskContext#getValue\n@see net.minecraft.entity.ai.brain.task.TaskTriggerer.TaskContext#getOptionalValue + f Lnet/minecraft/class_4095; field_41025 brain + f Lcom/mojang/datafixers/kinds/App; field_41027 value + f Lnet/minecraft/class_4140; field_41026 memory + m (Lnet/minecraft/class_4095;Lnet/minecraft/class_4140;Lcom/mojang/datafixers/kinds/App;)V + p 2 memory + p 1 brain + p 3 value + m (Ljava/lang/Object;J)V method_47250 remember + p 2 expiry + p 1 value + m ()V method_47252 forget + m ()Lcom/mojang/datafixers/kinds/App; method_47248 getValue + m (Ljava/util/Optional;)V method_47251 remember + p 1 value + m (Ljava/lang/Object;)V method_47249 remember + p 1 value +c net/minecraft/class_10760 net/minecraft/block/CactusFlowerBlock + f Lcom/mojang/serialization/MapCodec; field_56569 CODEC + f Lnet/minecraft/class_265; field_56570 SHAPE +c net/minecraft/class_10764 net/minecraft/client/render/entity/model/ColdChickenEntityModel + m ()Lnet/minecraft/class_5607; method_67547 getTexturedModelData +c net/minecraft/class_10761 net/minecraft/block/ShortDryGrassBlock + f Lcom/mojang/serialization/MapCodec; field_56572 CODEC + f Lnet/minecraft/class_265; field_56573 SHAPE +c net/minecraft/class_10762 net/minecraft/block/TallDryGrassBlock + f Lcom/mojang/serialization/MapCodec; field_56575 CODEC + f Lnet/minecraft/class_265; field_56576 SHAPE + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_67542 method_67542 + p 1 posx +c net/minecraft/class_10767 net/minecraft/datafixer/fix/ChunkTicketUnpackPosFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67596 method_67596 + p 0 chunkPosDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67595 method_67595 + p 0 ticketDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67594 method_67594 + p 0 ticketsDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67593 method_67593 + p 0 dataDynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_67591 method_67591 + p 0 typed + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67592 method_67592 + p 0 dynamic +c net/minecraft/class_10768 net/minecraft/datafixer/fix/InlineBlockPosFormatFix + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_67603 method_67603 + p 1 phantomTyped + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_67605 method_67605 + p 1 vexTyped + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_67607 method_67607 + p 1 playerTyped + m (Ljava/lang/String;)Lcom/mojang/datafixers/OpticFinder; method_67600 getEntityFinder + p 1 entityId + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_67598 method_67598 + p 1 decorationTyped + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_67601 method_67601 + p 1 turtleTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67599 fixPlayerFields + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67604 fixVexFields + p 1 dynamic + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Ljava/util/List;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_67597 method_67597 + p 5 entityTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67602 fixSleeping + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67609 fixDecorationFields + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67608 fixTurtleFields + p 1 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67606 fixPhantomFields + p 1 dynamic +c net/minecraft/class_10705 net/minecraft/unused/packageinfo/PackageInfo10705 +c net/minecraft/class_10706 net/minecraft/component/type/BeesComponent + f Lnet/minecraft/class_9139; field_56299 PACKET_CODEC + f Lnet/minecraft/class_10706; field_56300 DEFAULT + f Lcom/mojang/serialization/Codec; field_56298 CODEC + f Ljava/util/List; comp_3585 bees + m ()Ljava/util/List; comp_3585 bees + m (Ljava/util/List;)V + p 1 bees +c net/minecraft/class_10703 net/minecraft/entity/spawn/StructureSpawnCondition + f Lcom/mojang/serialization/MapCodec; field_56287 CODEC + f Lnet/minecraft/class_6885; comp_3584 requiredStructures + m (Lnet/minecraft/class_10701;)Z method_67173 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67172 method_67172 + p 0 instance + m (Ljava/lang/Object;)Z test test + p 1 context + m ()Lnet/minecraft/class_6885; comp_3584 requiredStructures + m (Lnet/minecraft/class_6885;)V + p 1 requiredStructures +c net/minecraft/class_10704 net/minecraft/entity/Variants + f Ljava/lang/String; field_56288 VARIANT_NBT_KEY + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_5321;)Lnet/minecraft/class_6880; method_67179 getDefaultOrThrow + p 0 registries + p 1 registryRef + m (Lnet/minecraft/class_11372;Lnet/minecraft/class_6880;)V method_67177 writeData + p 1 variantEntry + p 0 view + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_67174 method_67174 + p 1 id + m (Lnet/minecraft/class_11372;Lnet/minecraft/class_5321;)V method_67176 method_67176 + p 1 key + m (Lnet/minecraft/class_11368;Lnet/minecraft/class_5321;)Ljava/util/Optional; method_67178 fromData + p 0 view + p 1 registryRef + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_5321;)Lnet/minecraft/class_6880; method_67175 getOrDefaultOrThrow + p 0 registries + p 1 variantKey + m (Lnet/minecraft/class_10701;Lnet/minecraft/class_5321;)Ljava/util/Optional; method_71969 select + p 0 context + p 1 registryRef +c net/minecraft/class_10707 net/minecraft/component/type/BlocksAttacksComponent + f Lcom/mojang/serialization/Codec; field_56301 CODEC + f Lnet/minecraft/class_9139; field_56302 PACKET_CODEC + f Ljava/util/Optional; comp_3637 bypassedBy + f Lnet/minecraft/class_10707$class_10709; comp_3589 itemDamage + f Ljava/util/List; comp_3588 damageReductions + f F comp_3586 blockDelaySeconds + f F comp_3587 disableCooldownScale + f Ljava/util/Optional; comp_3590 blockSound + f Ljava/util/Optional; comp_3591 disableSound + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67203 method_67203 + p 0 instance + m ()I method_67197 getBlockDelayTicks + m (Lnet/minecraft/class_1282;FD)F method_67202 getDamageReductionAmount + p 3 angle + p 2 damage + p 1 source + m (F)I method_67198 convertCooldownToTicks + p 1 cooldownSeconds + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)V method_67199 playBlockSound + p 2 from + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_6880;)V method_67205 method_67205 + p 2 sound + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_6880;)V method_67201 method_67201 + p 2 sound + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;FLnet/minecraft/class_1799;)V method_67200 applyShieldCooldown + p 1 world + p 2 affectedEntity + p 3 cooldownSeconds + p 4 stack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;Lnet/minecraft/class_1268;F)V method_67204 onShieldHit + p 5 itemDamage + p 3 entity + p 4 hand + p 1 world + p 2 stack + m ()Lnet/minecraft/class_10707$class_10709; comp_3589 itemDamage + m ()F comp_3586 blockDelaySeconds + m ()F comp_3587 disableCooldownScale + m ()Ljava/util/Optional; comp_3591 disableSound + m ()Ljava/util/Optional; comp_3590 blockSound + m ()Ljava/util/List; comp_3588 damageReductions + m ()Ljava/util/Optional; comp_3637 bypassedBy + m (FFLjava/util/List;Lnet/minecraft/class_10707$class_10709;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 blockDelaySeconds + p 2 disableCooldownScale + p 3 damageReductions + p 4 itemDamage + p 5 bypassedBy + p 6 blockSound + p 7 disableSound +c net/minecraft/class_10707$class_10708 net/minecraft/component/type/BlocksAttacksComponent$DamageReduction + f Lcom/mojang/serialization/Codec; field_56303 CODEC + f Lnet/minecraft/class_9139; field_56304 PACKET_CODEC + f F comp_3638 horizontalBlockingAngle + f F comp_3593 base + f F comp_3594 factor + f Ljava/util/Optional; comp_3592 type + m (Lnet/minecraft/class_1282;FD)F method_67206 getReductionAmount + p 3 angle + p 1 source + p 2 damage + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67207 method_67207 + p 0 instance + m ()Ljava/util/Optional; comp_3592 type + m ()F comp_3593 base + m ()F comp_3594 factor + m ()F comp_3638 horizontalBlockingAngle + m (FLjava/util/Optional;FF)V + p 1 horizontalBlockingAngle + p 2 type + p 3 base + p 4 factor +c net/minecraft/class_10707$class_10709 net/minecraft/component/type/BlocksAttacksComponent$ItemDamage + f Lcom/mojang/serialization/Codec; field_56306 CODEC + f Lnet/minecraft/class_9139; field_56307 PACKET_CODEC + f Lnet/minecraft/class_10707$class_10709; field_56308 DEFAULT + f F comp_3595 threshold + f F comp_3596 base + f F comp_3597 factor + m (F)I method_67208 calculate + p 1 itemDamage + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67209 method_67209 + p 0 instance + m ()F comp_3595 threshold + m ()F comp_3596 base + m ()F comp_3597 factor + m (FFF)V + p 1 threshold + p 2 base + p 3 factor +c net/minecraft/class_10712 net/minecraft/component/type/TooltipDisplayComponent + f Lnet/minecraft/class_10712; field_56318 DEFAULT + f Lcom/mojang/serialization/Codec; field_56316 CODEC + f Lcom/mojang/serialization/Codec; field_56319 HIDDEN_COMPONENTS_CODEC + f Lnet/minecraft/class_9139; field_56317 PACKET_CODEC + f Z comp_3600 hideTooltip + f Ljava/util/SequencedSet; comp_3601 hiddenComponents + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67213 method_67213 + p 0 instance + m (Lnet/minecraft/class_9331;)Z method_67214 shouldDisplay + p 1 component + m (Lnet/minecraft/class_9331;Z)Lnet/minecraft/class_10712; method_67215 with + p 2 hidden + p 1 component + m ()Ljava/util/SequencedSet; comp_3601 hiddenComponents + m ()Z comp_3600 hideTooltip + m (ZLjava/util/SequencedSet;)V + p 1 hideTooltip + p 2 hiddenComponents +c net/minecraft/class_10713 net/minecraft/item/equipment/EquipmentHolderResolver + m (Lnet/minecraft/class_7871;)Lnet/minecraft/class_6885; get get + p 1 registry +c net/minecraft/class_10710 net/minecraft/component/type/InstrumentComponent + f Lcom/mojang/serialization/Codec; field_56311 CODEC + f Lnet/minecraft/class_9139; field_56312 PACKET_CODEC + f Lnet/minecraft/class_9791; comp_3598 instrument + m (Lnet/minecraft/class_7225$class_7874;)Ljava/util/Optional; method_67211 getInstrument + p 1 registries + m (Lnet/minecraft/class_5321;)V + p 1 instrument + m (Ljava/util/function/Consumer;Lnet/minecraft/class_6880;)V method_75727 method_75727 + p 1 instrument + m (Lnet/minecraft/class_6880;)V + p 1 instrument + m ()Lnet/minecraft/class_9791; comp_3598 instrument + m (Lnet/minecraft/class_9791;)V + p 1 instrument +c net/minecraft/class_10711 net/minecraft/component/type/ProvidesTrimMaterialComponent + f Lcom/mojang/serialization/Codec; field_56313 CODEC + f Lnet/minecraft/class_9139; field_56314 PACKET_CODEC + f Lnet/minecraft/class_9791; comp_3599 material + m (Lnet/minecraft/class_6880;)V + p 1 material + m (Lnet/minecraft/class_7225$class_7874;)Ljava/util/Optional; method_67212 getMaterial + p 1 registries + m (Lnet/minecraft/class_5321;)V + p 1 material + m ()Lnet/minecraft/class_9791; comp_3599 material + m (Lnet/minecraft/class_9791;)V + p 1 material +c net/minecraft/class_10701 net/minecraft/entity/spawn/SpawnContext + f Lnet/minecraft/class_5425; comp_3581 world + f Lnet/minecraft/class_6880; comp_3582 biome + f Lnet/minecraft/class_12204; comp_5217 environmentAttributes + f Lnet/minecraft/class_2338; comp_3580 pos + m (Lnet/minecraft/class_5425;Lnet/minecraft/class_2338;)Lnet/minecraft/class_10701; method_67169 of + p 0 world + p 1 pos + m ()Lnet/minecraft/class_5425; comp_3581 world + m ()Lnet/minecraft/class_2338; comp_3580 pos + m ()Lnet/minecraft/class_12204; comp_5217 environmentAttributes + m ()Lnet/minecraft/class_6880; comp_3582 biome + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_5425;Lnet/minecraft/class_12204;Lnet/minecraft/class_6880;)V + p 1 pos + p 2 world + p 3 environmentAttributes + p 4 biome +c net/minecraft/class_10702 net/minecraft/entity/spawn/SpawnConditionSelectors + f Lcom/mojang/serialization/Codec; field_56286 CODEC + f Lnet/minecraft/class_10702; field_56285 EMPTY + f Ljava/util/List; comp_3583 selectors + m (Lnet/minecraft/class_10699;I)Lnet/minecraft/class_10702; method_67171 createSingle + p 1 priority + p 0 condition + m (I)Lnet/minecraft/class_10702; method_67170 createFallback + p 0 priority + m ()Ljava/util/List; comp_3583 selectors + m (Ljava/util/List;)V + p 1 selectors +c net/minecraft/class_10700 net/minecraft/entity/spawn/SpawnConditions + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_67168 registerAndGetDefault + p 0 registry +c net/minecraft/class_10728 net/minecraft/unused/packageinfo/PackageInfo10728 +c net/minecraft/class_10725 net/minecraft/util/Atlases + f Lnet/minecraft/class_2960; field_56382 BLOCKS + f Lnet/minecraft/class_2960; field_56383 CHESTS + f Lnet/minecraft/class_2960; field_56384 DECORATED_POT + f Lnet/minecraft/class_2960; field_56385 GUI + f Lnet/minecraft/class_2960; field_64477 ITEMS + f Lnet/minecraft/class_2960; field_56390 SHIELD_PATTERNS + f Lnet/minecraft/class_2960; field_56380 BANNER_PATTERNS + f Lnet/minecraft/class_2960; field_56391 SHULKER_BOXES + f Lnet/minecraft/class_2960; field_56381 BEDS + f Lnet/minecraft/class_2960; field_56392 SIGNS + f Lnet/minecraft/class_2960; field_56379 ARMOR_TRIMS + f Lnet/minecraft/class_2960; field_56386 MAP_DECORATIONS + f Lnet/minecraft/class_2960; field_63647 CELESTIALS + f Lnet/minecraft/class_2960; field_56388 PAINTINGS + f Lnet/minecraft/class_2960; field_56389 PARTICLES +c net/minecraft/class_10729 net/minecraft/datafixer/fix/RaidRenamesDataFix + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_67332 method_67332 + p 0 typed + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67335 method_67335 + p 0 raidsDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67336 method_67336 + p 0 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67333 fixRaidsData + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67334 fixRaid + p 0 dynamic +c net/minecraft/class_1799 net/minecraft/item/ItemStack + c Represents a stack of items. This is a data container that holds the item count\nand the stack's components. Logics for items (such as the action for using it) are delegated\nto the stack's logic container, {@link Item}. Instances can be created using one of\nthe constructors and are usually stored in an {@link net.minecraft.inventory.Inventory}.\n\n

Item stacks should never be compared using {@code ==} operator or {@code equals}\nmethod. This also means they cannot be used as a map key. To check if an item stack\nis of a certain item, use {@link #isOf(Item)}. To compare two item stacks, use {@link\n#areItemsEqual} to check the item only, or {@link #areEqual} to also check the item\ncount and the components. Use {@link #isEmpty} to check if an item stack is empty instead\nof doing {@code stack == ItemStack.EMPTY}.\n\n

When storing an item stack in an inventory or other places, make sure that an instance\nis never stored in multiple places. When two inventories hold the same instance, it\nwill duplicate the item stack (and become two instances) when one is saved and reloaded.\n\n

Components

\n

Components can be used to store data specific to the item stack.\nUse {@link ComponentHolder#get} or {@link ComponentHolder#getOrDefault} to\nget the component values. Use {@link #set} or {@link #remove} to set the components.\n\n

NBT serialization

\n

An Item Stack can be serialized with {@link #toNbt(RegistryWrapper.WrapperLookup)}, and deserialized with {@link #fromNbt(RegistryWrapper.WrapperLookup, NbtCompound)}.\n\n

\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n
Serialized NBT Structure
KeyTypePurpose
{@code id}{@link net.minecraft.nbt.NbtString}The identifier of the item.
{@code count}{@link net.minecraft.nbt.NbtInt}The count of items in the stack.
{@code components}{@link ComponentChanges}The item stack's components.
\n
+ f Lnet/minecraft/class_9139; field_48349 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_49747 UNCOUNTED_CODEC + f Lnet/minecraft/class_1792; field_8038 item + f Lorg/slf4j/Logger; field_8033 LOGGER + f Lnet/minecraft/class_9139; field_58141 LENGTH_PREPENDED_OPTIONAL_PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_51398 VALIDATED_UNCOUNTED_CODEC + f Lnet/minecraft/class_9139; field_49269 OPTIONAL_LIST_PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_51397 VALIDATED_CODEC + f Lcom/mojang/serialization/Codec; field_49267 REGISTRY_ENTRY_CODEC + f Lnet/minecraft/class_9335; field_49270 components + f Lnet/minecraft/class_2561; field_63379 INTANGIBLE_TEXT + f Lnet/minecraft/class_2561; field_40211 DISABLED_TEXT + f Lnet/minecraft/class_9139; field_49268 OPTIONAL_PACKET_CODEC + f I field_8030 bobbingAnimationTime + f Lcom/mojang/serialization/Codec; field_49266 OPTIONAL_CODEC + f I field_8031 count + f Lnet/minecraft/class_2561; field_56297 UNBREAKABLE_TEXT + f Ljava/util/List; field_55546 OPERATOR_WARNINGS + f Lnet/minecraft/class_1297; field_24093 holder + f Lcom/mojang/serialization/MapCodec; field_55709 MAP_CODEC + f Lnet/minecraft/class_1799; field_8037 EMPTY + c The empty item stack that holds no item.\n\n

This should never be mutated.\n\n@see ItemStack#isEmpty + f Lcom/mojang/serialization/Codec; field_24671 CODEC + m ()Lnet/minecraft/class_9323; method_65359 getImmutableComponents + m (Lnet/minecraft/class_1792$class_9635;Lnet/minecraft/class_10712;Lnet/minecraft/class_1657;Lnet/minecraft/class_1836;Ljava/util/function/Consumer;)V method_67194 appendTooltip + p 5 textConsumer + p 4 type + p 3 player + p 2 displayComponent + p 1 context + m (Lnet/minecraft/class_2694;)Z method_57373 canBreak + p 1 pos + m (ILnet/minecraft/class_3222;Ljava/util/function/Consumer;)V method_61652 onDurabilityChange + p 1 damage + p 2 player + p 3 breakCallback + m (ILnet/minecraft/class_1309;Lnet/minecraft/class_1268;)V method_71012 damage + p 3 hand + p 2 entity + p 1 amount + m (ILnet/minecraft/class_1309;)V method_57008 decrementUnlessCreative + c Decrements the count of items in this item stack, unless {@code entity}\nis a creative mode player. + p 1 amount + p 2 entity + m (Lnet/minecraft/class_1935;)V + p 1 item + m ()Lnet/minecraft/class_1297; method_27319 getHolder + c {@return the entity that holds the stack, or {@code null} if inapplicable}\n\n@see #isInFrame\n@see #getFrame\n@see #setHolder + m (Lnet/minecraft/class_2694;)Z method_57357 canPlaceOn + p 1 pos + m (Lnet/minecraft/class_1935;I)V + p 2 count + p 1 item + m ()Lnet/minecraft/class_1799; method_7972 copy + c {@return a copy of this item stack, including the item count, components, and\n{@linkplain #getBobbingAnimationTime bobbing animation time}}\n\n@see #copyWithCount\n@see #copyComponentsToNewStack\n@see #copyComponentsToNewStackIgnoreEmpty + m (Lnet/minecraft/class_1792;)V method_61654 method_61654 + p 0 item + m ()Lnet/minecraft/class_2561; method_7964 getName + c {@return the custom name of the stack if it exists, or the item's name} + m (Lnet/minecraft/class_1657;I)V method_7982 onCraftByPlayer + p 1 player + p 2 amount + m (ILnet/minecraft/class_1309;Lnet/minecraft/class_1304;)V method_7970 damage + c Damages this item stack. This method should be used when an entity, including a player,\ndamages the stack. This does not damage {@linkplain #isDamageable non-damageable}\nstacks, and the enchantments are applied to {@code amount} before damaging. Additionally,\nif {@code entity} is a player in creative mode, the stack will not be damaged.\n\n

If {@code entity} is a player, this triggers {@link\nnet.minecraft.advancement.criterion.Criteria#ITEM_DURABILITY_CHANGED}.\n\n

If the stack's damage is equal to or above {@linkplain #getMaxDamage the maximum\ndamage} (i.e. the item is "broken"), this will {@linkplain\nLivingEntity#sendEquipmentBreakStatus send the equipment break status}, decrement the\nstack, and increment {@link net.minecraft.stat.Stats#BROKEN} if the stack is held\nby a player. + p 3 slot + c the slot in which the stack is held + p 2 entity + p 1 amount + m (I)V method_7912 setBobbingAnimationTime + p 1 bobbingAnimationTime + m (Lnet/minecraft/class_1799;)I method_57355 hashCode + p 0 stack + m (Lnet/minecraft/class_1937;)V method_54466 onCraftByCrafter + p 1 world + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_6880$class_6883;)V method_76590 emitUseGameEvent + p 1 user + p 2 gameEvent + m (Lnet/minecraft/class_7699;)Z method_45435 isItemEnabled + p 1 enabledFeatures + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_7979 postHit + p 1 target + p 2 user + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_31577 areItemsAndComponentsEqual + c {@return whether the given item stacks' items and components are equal}\n\n

If this returns {@code true}, the two item stacks can be combined into one,\nas long as the resulting item count does not exceed {@linkplain Item#getMaxCount\nthe maximum item count}\n\n@see #areEqual\n@see #areItemsEqual + p 1 otherStack + p 0 stack + m (Lnet/minecraft/class_1304;Ljava/util/function/BiConsumer;)V method_57354 applyAttributeModifiers + p 2 attributeModifierConsumer + p 1 slot + m ()Z method_7961 isInFrame + c {@return whether the item stack is in an item frame}\n\n@see #setHolder\n@see #getFrame\n@see #getHolder + m ()I method_31580 getItemBarColor + c {@return the color of the filled section of the durability bar} + m ()Lnet/minecraft/class_9304; method_58657 getEnchantments + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_68810 createOptionalPacketCodec + p 0 componentsPacketCodec + m ()Lnet/minecraft/class_1533; method_7945 getFrame + c {@return the item frame that holds the stack, or {@code null} if inapplicable}\n\n@see #isInFrame\n@see #setHolder\n@see #getHolder + m (Ljava/lang/Void;)V + p 1 v + m (ILnet/minecraft/class_3218;Lnet/minecraft/class_3222;Ljava/util/function/Consumer;)V method_7956 damage + c Damages this item stack. This method should be used when a non-entity, such as a\ndispenser, damages the stack. This does not damage {@linkplain #isDamageable non-damageable}\nstacks, and the enchantments are applied to {@code amount} before damaging.\n\n

If {@code player} is not {@code null}, this triggers {@link\nnet.minecraft.advancement.criterion.Criteria#ITEM_DURABILITY_CHANGED}.\n\n

When the item "breaks", that is, the stack's damage is equal to or above\n{@linkplain #getMaxDamage the maximum damage}, {@code breakCallback} is run.\nNote that this method automatically decrements the stack size. + p 4 breakCallback + p 3 player + p 2 world + p 1 amount + m ()Ljava/util/stream/Stream; method_40133 streamTags + c {@return a stream of all tags the item is in}\n\n@see #isIn(TagKey) + m ()Z method_61657 shouldBreak + m ()Z method_7960 isEmpty + c {@return whether this item stack is empty} + m (Lnet/minecraft/class_1799;)Lcom/mojang/serialization/DataResult; method_57372 validate + p 0 stack + m ()Lnet/minecraft/class_2561; method_65130 getCustomName + c {@return the custom name or book title of the stack if it exists, or {@code null}} + m (Lnet/minecraft/class_6862;)Z method_31573 isIn + c {@return whether the item is in {@code tag}} + p 1 tag + m (Lnet/minecraft/class_1309;Ljava/util/function/Supplier;)Lnet/minecraft/class_1282; method_75220 getDamageSource + p 1 attacker + p 2 fallbackSupplier + m (Lnet/minecraft/class_9331;Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object; method_57367 apply + c Sets the component {@code type} by passing the current value and {@code change}\nto {@code applier}, then setting its return value as the value. If the component is\nmissing, {@code defaultValue} is used as the default.\n\n

In practice, {@code applier} is a reference to a method of the component\nclass with one parameter, that returns a new instance of the component with the\nspecific value changed to {@code change}. For example, adding a lore can be accomplished\nby passing reference to {@link net.minecraft.component.type.LoreComponent#with}\nand the added lore, like\n{@code stack.apply(DataComponentTypes.LORE, LoreComponent.DEFAULT, text, LoreComponent::with)}.\n\n@implNote This is the same as setting {@code applier.apply(stack.getOrDefault(type, defaultValue), change)}.\n\n@return the previous value set\n@see #apply(DataComponentType, Object, UnaryOperator)\n@see #set + p 1 type + p 4 applier + p 2 defaultValue + p 3 change + m (Lnet/minecraft/class_6880;I)V method_7978 addEnchantment + c Enchants this item with the given enchantment and level.\n\n

This should not be used with enchanted books, as the book itself is not\nenchanted and therefore does not store enchantments under {@link\nnet.minecraft.component.DataComponentTypes#ENCHANTMENTS}.\n\n@see net.minecraft.enchantment.EnchantmentHelper + p 2 level + p 1 enchantment + m (Ljava/util/List;Ljava/util/List;)Z method_57362 stacksEqual + p 0 left + p 1 right + m (I)V method_7974 setDamage + c Sets the stack's damage to {@code damage}.\n\n

This does not break the item if the damage reaches {@linkplain #getMaxDamage\nthe maximum}, unlike {@link #damage(int, LivingEntity, EquipmentSlot)}.\n\n@see #getDamage\n@see #damage(int, ServerWorld, ServerPlayerEntity, Consumer)\n@see #damage(int, LivingEntity, EquipmentSlot) + p 1 damage + m (I)V method_58408 capCount + c Sets the count of items in this item stack to not exceed {@code maxCount}. + p 1 maxCount + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1309;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_7920 useOnEntity + p 3 hand + p 2 entity + p 1 user + m ()Z method_7942 hasEnchantments + c {@return whether the item stack has any enchantments}\n\n

This will return {@code false} for enchanted books, as the book itself is not\nenchanted and therefore does not store enchantments under {@link\nnet.minecraft.component.DataComponentTypes#ENCHANTMENTS}.\n\n@see net.minecraft.enchantment.EnchantmentHelper#getEnchantments + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_6880;)Lnet/minecraft/class_1282; method_75221 method_75221 + p 1 typeEntry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58092 method_58092 + p 0 instance + m ()Z method_63692 willBreakNextUse + m ()I method_7914 getMaxCount + m (ILnet/minecraft/class_1657;)V method_61653 damage + p 2 player + p 1 amount + m (Lnet/minecraft/class_9336;)Ljava/lang/Object; method_74887 set + p 1 component + m (Lnet/minecraft/class_9323;)V method_57365 applyComponentsFrom + p 1 components + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_9326; method_57385 method_57385 + p 0 stack + m (I)V method_7934 decrement + c Decrements the count of items in this item stack. + p 1 amount + c the amount to decrement + m ()Lnet/minecraft/class_2561; method_7954 toHoverableText + c {@return a text consisting of the bracketed {@linkplain #getName stack name} that\ncan be hovered to show the item stack's tooltip} + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;Lnet/minecraft/class_1304;)V method_7917 inventoryTick + p 1 world + p 2 entity + p 3 slot + m (Lnet/minecraft/class_9331;Ljava/lang/Object;Ljava/util/function/UnaryOperator;)Ljava/lang/Object; method_57368 apply + c Sets the component {@code type} by passing the current value (or {@code defaultValue}\nif the component is missing) to {@code applier} and then setting its return value as\nthe value.\n\n@implNote This is the same as setting {@code applier.apply(stack.getOrDefault(type, defaultValue))}.\n\n@return the previous value set\n@see #set\n@see #apply(DataComponentType, Object, Object, BiFunction) + p 2 defaultValue + p 1 type + p 3 applier + m ()Lnet/minecraft/class_2561; method_63015 getFormattedName + m (Lnet/minecraft/class_6880;)V + p 1 entry + m (Lnet/minecraft/class_1935;I)Lnet/minecraft/class_1799; method_56704 copyComponentsToNewStackIgnoreEmpty + c {@return a new item stack with the components copied from this item stack, even if this stack is empty}\n\n@see #copy\n@see #copyWithCount\n@see #copyComponentsToNewStack + p 2 count + c the item count of the resultant stack + p 1 item + c the item of the resultant stack + m (Lnet/minecraft/class_1309;)I method_7935 getMaxUseTime + p 1 user + m (Ljava/util/function/Predicate;)Z method_41407 itemMatches + c {@return whether the item's registry entry passes the {@code predicate}}\n\n@see #itemMatches(RegistryEntry)\n@see #isOf(Item) + p 1 predicate + m ()Ljava/util/Optional; method_32347 getTooltipData + m (ILnet/minecraft/class_3218;Lnet/minecraft/class_3222;)I method_61651 calculateDamage + p 3 player + p 2 world + p 1 baseDamage + m ()Lnet/minecraft/class_2561; method_63693 getItemName + m ()Lnet/minecraft/class_12126; method_75218 getSwingAnimation + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;)Lnet/minecraft/class_1799; method_7910 finishUsing + p 1 world + p 2 user + m (Lnet/minecraft/class_1799;)Z method_61655 canRepairWith + p 1 ingredient + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_9791;)Ljava/util/Optional; method_75219 method_75219 + p 1 ref + m ()Lnet/minecraft/class_1839; method_7976 getUseAction + m (Ljava/util/function/Consumer;Lnet/minecraft/class_10712;Lnet/minecraft/class_1657;)V method_57363 appendAttributeModifiersTooltip + p 3 player + p 2 displayComponent + p 1 textConsumer + m (I)Lnet/minecraft/class_1799; method_7971 split + c {@return the copy of the stack "split" from the current stack with item count\nbeing at most {@code amount}}\n\n

Splitting an item stack mutates this stack so that the sum of the stacks' item\ncounts does not change. See the example below:\n\n

{@code\nItemStack stack = new ItemStack(Items.APPLE, 64);\nItemStack newStack = stack.split(10);\n// stack has 54 apples\n// newStack has 10 apples\n\nItemStack smallStack = new ItemStack(Items.APPLE, 4);\nItemStack newSmallStack = smallStack.split(10);\n// smallStack is now empty\n// newSmallStack has 4 apples\n}
+ p 1 amount + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_59693 createExtraValidatingPacketCodec + c {@return a packet codec that ensures the validity of the decoded stack by\nchecking if it can be re-encoded}\n\n

This should be used when serializing {@link ItemStack} in C2S packets.\nEncoding is unaffected. + p 0 basePacketCodec + m ()Lnet/minecraft/class_6880; method_41409 getRegistryEntry + m (Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_7966 method_7966 + p 1 style + m ()Z method_7967 isUsedOnRelease + m (Lnet/minecraft/class_9331;)Z method_65797 hasChangedComponent + p 1 type + m (Lnet/minecraft/class_6880;I)V + p 1 itemEntry + p 2 count + m (Lnet/minecraft/class_1735;Lnet/minecraft/class_5536;Lnet/minecraft/class_1657;)Z method_31575 onStackClicked + p 1 slot + p 2 clickType + p 3 player + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_9326; method_58094 method_58094 + p 0 stack + m (Lnet/minecraft/class_6880;)Z method_41406 itemMatches + c {@return whether the item's registry entry matches {@code itemEntry}}\n\n@see #itemMatches(Predicate)\n@see #isOf(Item) + p 1 itemEntry + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57371 method_57371 + p 0 instance + m (Ljava/util/List;)I method_57361 listHashCode + p 0 stacks + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_2561;Lnet/minecraft/class_10712;Ljava/util/function/Consumer;)V method_75223 appendTooltipIfComponentExists + p 2 tooltip + p 1 type + p 4 textConsumer + p 3 displayComponent + m (Ljava/lang/String;)Lcom/mojang/serialization/MapCodec; method_56702 createOptionalCodec + p 0 fieldName + m ()Lnet/minecraft/class_9326; method_57380 getComponentChanges + m ()Z method_31578 isItemBarVisible + m ()I method_7936 getMaxDamage + m (Lnet/minecraft/class_1282;)Z method_58407 takesDamageFrom + p 1 source + m ()Lnet/minecraft/class_9323; method_58658 getDefaultComponents + m (Lnet/minecraft/class_1935;ILnet/minecraft/class_9335;)V + p 3 components + p 2 count + p 1 item + m ()Lnet/minecraft/class_1799; method_51164 copyAndEmpty + m (Lnet/minecraft/class_1799;)Ljava/util/Optional; method_57382 method_57382 + p 0 stack + m ()I method_31579 getItemBarStep + c {@return the length of the filled section of the durability bar in pixels (out of 13)} + m (Lnet/minecraft/class_1792;)Z method_31574 isOf + c {@return whether the item is {@code item}} + p 1 item + m (Lnet/minecraft/class_1542;)V method_33262 onItemEntityDestroyed + p 1 entity + m (Lnet/minecraft/class_1792$class_9635;Lnet/minecraft/class_1657;Lnet/minecraft/class_1836;)Ljava/util/List; method_7950 getTooltip + p 3 type + p 1 context + p 2 player + m (Lnet/minecraft/class_9331;Ljava/lang/Object;)Ljava/lang/Object; method_57379 set + c Sets the component {@code type} for this item stack to {@code value}.\n\n

If {@code value} is {@code null}, the component is removed and the base component\nis unset. To reverse the stack-specific change, instead pass the default value\nas {@code value}.\n\n@return the previous value set\n@see #apply(DataComponentType, Object, UnaryOperator)\n@see #apply(DataComponentType, Object, Object, BiFunction) + p 2 value + p 1 type + m (Lnet/minecraft/class_2680;)Z method_7951 isSuitableFor + c Determines whether this item can be used as a suitable tool for mining the specified block.\n

\nDepending on block implementation, when combined together, the correct item and block may achieve a better mining speed and yield\ndrops that would not be obtained when mining otherwise.\n\n@return values consistent with calls to {@link Item#isCorrectForDrops}\n@see Item#isCorrectForDrops(ItemStack, BlockState) + p 1 state + m (Lnet/minecraft/class_2680;)F method_7924 getMiningSpeedMultiplier + p 1 state + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_3902;)Lnet/minecraft/class_1799; method_57383 method_57383 + p 1 v + m (Lnet/minecraft/class_9326;)V method_59692 applyChanges + p 1 changes + m (Lnet/minecraft/class_9326;)V method_57366 applyUnvalidatedChanges + p 1 changes + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;I)V method_7949 usageTick + p 1 world + p 3 remainingUseTicks + p 2 user + m (I)V method_7933 increment + c Increments the count of items in this item stack. + p 1 amount + c the amount to increment + m (Lnet/minecraft/class_1297;)V method_27320 setHolder + c Sets the stack's holder to {@code holder}.\n\n

This is used by item frames and item entities, and does not need to be called\nfor other entities.\n\n@see #isInFrame\n@see #getFrame\n@see #getHolder + p 1 holder + m (Lnet/minecraft/class_6885;)Z method_53187 isIn + p 1 registryEntryList + m ()I method_7965 getBobbingAnimationTime + m ()Z method_7958 hasGlint + m (Lnet/minecraft/class_1838;)Lnet/minecraft/class_1269; method_7981 useOnBlock + p 1 context + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)V method_7952 postMine + p 4 miner + p 3 pos + p 2 state + p 1 world + m (Lnet/minecraft/class_9323;)Lcom/mojang/serialization/DataResult; method_59691 validateComponents + p 0 components + m (Lnet/minecraft/class_6880;ILnet/minecraft/class_9326;)V + p 1 item + p 3 changes + p 2 count + m ()Lnet/minecraft/class_1814; method_7932 getRarity + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)Z method_66334 canMine + p 1 state + p 2 world + p 3 pos + p 4 player + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;I)V method_7930 onStoppedUsing + p 2 user + p 3 remainingUseTicks + p 1 world + m ()Z method_7986 isDamaged + c {@return whether the item stack is {@linkplain #isDamageable damageable} and has damage}\n\n@see #isDamageable\n@see #getDamage + m (Lnet/minecraft/class_1799;)Ljava/util/Optional; method_56700 method_56700 + p 0 stack + m (Lnet/minecraft/class_1935;)Lnet/minecraft/class_1799; method_60503 withItem + p 1 item + m ()Lnet/minecraft/class_1792; method_7909 getItem + c {@return the item of this stack}\n\n@see #isOf(Item) + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_62837 applyRemainderAndCooldown + p 1 user + p 2 stack + m ()Z method_7946 isStackable + c {@return whether the item stack can have item count above {@code 1}}\n\n

Stackable items must have {@linkplain Item#getMaxCount the maximum count} that is more\nthan {@code 1} and cannot be damaged. + m (Ljava/util/Optional;)Lnet/minecraft/class_1799; method_56703 method_56703 + p 0 optional + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_7984 areItemsEqual + c {@return whether the given item stacks contain the same item, regardless of item count or components}\n\n@see #areEqual\n@see #areItemsAndComponentsEqual + p 1 right + p 0 left + m (Lnet/minecraft/class_6880;ILnet/minecraft/class_9304$class_9305;)V method_57356 method_57356 + p 2 builder + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/util/function/Consumer;Lnet/minecraft/class_9274;Lnet/minecraft/class_1657;Lnet/minecraft/class_6880;Lnet/minecraft/class_1322;Lnet/minecraft/class_9285$class_11193;)V method_57370 method_57370 + p 4 attribute + p 6 display + p 5 modifier + m (ILnet/minecraft/class_1309;)Lnet/minecraft/class_1799; method_60504 splitUnlessCreative + p 1 amount + p 2 entity + m (Lnet/minecraft/class_9274;Lorg/apache/commons/lang3/function/TriConsumer;)V method_60617 applyAttributeModifier + p 1 slot + p 2 attributeModifierConsumer + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/MapCodec; method_57352 method_57352 + p 0 codec + m (Lnet/minecraft/class_9331;)Ljava/lang/Object; method_57381 remove + c Removes the component {@code type}. If it is in the stack's base component,\nit is unset and the component becomes missing. To reverse the stack-specific change,\ninstead pass the default value as {@code value}.\n\n@return the previous value set + p 1 type + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1304;Lnet/minecraft/class_1792;)V method_56097 method_56097 + p 2 item + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_1792$class_9635;Lnet/minecraft/class_10712;Ljava/util/function/Consumer;Lnet/minecraft/class_1836;)V method_57369 appendComponentTooltip + p 3 displayComponent + p 4 textConsumer + p 5 type + p 1 componentType + p 2 context + m (I)Lnet/minecraft/class_1799; method_46651 copyWithCount + c {@return a copy of this item stack, including the components, and {@linkplain #getBobbingAnimationTime bobbing animation time},\nwith the item count set to {@code count}}\n\n@see #copy\n@see #copyComponentsToNewStack\n@see #copyComponentsToNewStackIgnoreEmpty + p 1 count + c the item count of the resultant stack + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1735;Lnet/minecraft/class_5536;Lnet/minecraft/class_1657;Lnet/minecraft/class_5630;)Z method_31576 onClicked + p 3 clickType + p 4 player + p 5 cursorStackReference + p 1 stack + p 2 slot + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_7913 use + p 3 hand + p 1 world + p 2 user + m ()Z method_7963 isDamageable + c {@return whether the item can be damaged (lose durability)}\n\n

Items with {@linkplain #getMaxDamage 0 max damage} or item stacks with {@link\nnet.minecraft.component.DataComponentTypes#UNBREAKABLE} component cannot be damaged.\n\n@see #getMaxDamage\n@see #isDamaged\n@see #getDamage + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_9326;)Lnet/minecraft/class_1799; method_58093 method_58093 + p 1 components + p 0 item + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)V method_59979 postDamageEntity + p 1 target + p 2 user + m ()Z method_7923 isEnchantable + c {@return whether this item stack can be enchanted with an enchanting table}\n\n

This is not used for other methods of enchanting like anvils. + m (ILnet/minecraft/class_1935;Lnet/minecraft/class_1309;Lnet/minecraft/class_1304;)Lnet/minecraft/class_1799; method_60986 damage + p 2 itemAfterBreaking + p 3 entity + p 1 amount + p 4 slot + m ()I method_7947 getCount + c {@return the count of items in this item stack} + m (Ljava/util/Optional;)Lnet/minecraft/class_1799; method_57378 method_57378 + p 0 optional + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Ljava/util/function/Predicate;)Z method_75222 shouldSkipHandAnimationOnSwap + p 2 skippedComponent + p 0 from + p 1 to + m (Lnet/minecraft/class_9331;Lnet/minecraft/class_9473;)V method_66697 copy + p 1 type + p 2 from + m ()I method_7919 getDamage + c {@return the damage (lost durability) of the item stack}\n\n

Note that this method does not check if the item is {@linkplain #isDamageable\ndamageable}, unlike {@link #isDamaged}.\n\n@see #isDamageable\n@see #isDamaged\n@see #setDamage + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_7973 areEqual + c {@return whether the given item stacks are equal, including the item count and components}\n\n@see #areItemsEqual\n@see #areItemsAndComponentsEqual + p 1 right + p 0 left + m (Lnet/minecraft/class_1935;I)Lnet/minecraft/class_1799; method_56701 copyComponentsToNewStack + c {@return a new item stack with the components copied from this item stack}\n\n@see #copy\n@see #copyWithCount\n@see #copyComponentsToNewStackIgnoreEmpty + p 1 item + c the item of the resultant stack + p 2 count + c the item count of the resultant stack + m (I)V method_7939 setCount + c Sets the count of items in this item stack. + p 1 count + c the count of items + m (Lorg/apache/commons/lang3/function/TriConsumer;Lnet/minecraft/class_6880;Lnet/minecraft/class_1322;)V method_70724 method_70724 + p 2 modifier + p 1 attribute +c net/minecraft/class_1799$3 net/minecraft/item/ItemStack$3 + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_1799; method_59694 decode + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_1799;)V method_59695 encode +c net/minecraft/class_1799$1 net/minecraft/item/ItemStack$1 + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_1799; method_56099 decode + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_1799;)V method_56100 encode +c net/minecraft/class_1799$2 net/minecraft/item/ItemStack$2 + m (Lnet/minecraft/class_9129;)Lnet/minecraft/class_1799; method_57386 decode + m (Lnet/minecraft/class_9129;Lnet/minecraft/class_1799;)V method_57387 encode +c net/minecraft/class_10730 net/minecraft/entity/passive/CowEntity + f Lnet/minecraft/class_2940; field_56424 VARIANT + m ()Lnet/minecraft/class_6880; method_67349 getVariant + m (Lnet/minecraft/class_6880;)V method_67348 setVariant + p 1 variant + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_10730; method_67347 createChild +c net/minecraft/class_10731 net/minecraft/entity/passive/CowVariant + f Lcom/mojang/serialization/Codec; field_56425 CODEC + f Lnet/minecraft/class_9139; field_56428 ENTRY_PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_56426 NETWORK_CODEC + f Lcom/mojang/serialization/Codec; field_56427 ENTRY_CODEC + f Lnet/minecraft/class_10702; comp_3633 spawnConditions + f Lnet/minecraft/class_10693; comp_3632 modelAndTexture + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67350 method_67350 + p 0 instance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67351 method_67351 + p 0 instance + m (Lnet/minecraft/class_10693;)V + p 1 modelAndTexture + m ()Lnet/minecraft/class_10693; comp_3632 modelAndTexture + m ()Lnet/minecraft/class_10702; comp_3633 spawnConditions + m (Lnet/minecraft/class_10693;Lnet/minecraft/class_10702;)V + p 1 modelAndTexture + p 2 spawnConditions +c net/minecraft/class_10731$class_10732 net/minecraft/entity/passive/CowVariant$Model + f Lcom/mojang/serialization/Codec; field_56432 CODEC + f Ljava/lang/String; field_56433 id + f Lnet/minecraft/class_10731$class_10732; field_56431 WARM + f Lnet/minecraft/class_10731$class_10732; field_56430 COLD + f Lnet/minecraft/class_10731$class_10732; field_56429 NORMAL + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_10735 net/minecraft/block/BushBlock + f Lnet/minecraft/class_265; field_56457 SHAPE + f Lcom/mojang/serialization/MapCodec; field_56456 CODEC + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)V method_67402 method_67402 + p 2 pos +c net/minecraft/class_10733 net/minecraft/entity/passive/CowVariants + f Lnet/minecraft/class_5321; field_56438 DEFAULT + f Lnet/minecraft/class_5321; field_56437 COLD + f Lnet/minecraft/class_5321; field_56436 WARM + f Lnet/minecraft/class_5321; field_56435 TEMPERATE + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_67353 of + p 0 id + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_10731$class_10732;Ljava/lang/String;Lnet/minecraft/class_10702;)V method_67357 register + p 2 model + p 1 key + p 0 registry + p 4 spawnConditions + p 3 textureName + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Lnet/minecraft/class_10731$class_10732;Ljava/lang/String;Lnet/minecraft/class_6862;)V method_67356 register + p 0 registry + p 1 key + p 2 model + p 3 textureName + p 4 biomes + m (Lnet/minecraft/class_7891;)V method_67355 bootstrap + p 0 registry +c net/minecraft/class_10716 net/minecraft/block/TintedParticleLeavesBlock + f Lcom/mojang/serialization/MapCodec; field_56338 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67237 method_67237 + p 0 instance +c net/minecraft/class_10717 net/minecraft/block/UntintedParticleLeavesBlock + f Lcom/mojang/serialization/MapCodec; field_56339 CODEC + f Lnet/minecraft/class_2394; field_56340 leafParticleEffect + m (FLnet/minecraft/class_2394;Lnet/minecraft/class_4970$class_2251;)V + p 1 leafParticleChance + p 2 leafParticleEffect + p 3 settings + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67239 method_67239 + p 0 instance +c net/minecraft/class_10714 net/minecraft/item/equipment/trim/ArmorTrimAssets + f Lcom/mojang/serialization/MapCodec; field_56323 CODEC + f Lnet/minecraft/class_9139; field_56324 PACKET_CODEC + f Lnet/minecraft/class_10714; field_56329 COPPER + f Lnet/minecraft/class_10714; field_56333 LAPIS + f Lnet/minecraft/class_10714; field_56334 AMETHYST + f Lnet/minecraft/class_10714; field_56335 RESIN + f Lnet/minecraft/class_10714; field_56330 GOLD + f Lnet/minecraft/class_10714; field_56331 EMERALD + f Lnet/minecraft/class_10714; field_56332 DIAMOND + f Lnet/minecraft/class_10714; field_56325 QUARTZ + f Lnet/minecraft/class_10714; field_56326 IRON + f Lnet/minecraft/class_10714; field_56327 NETHERITE + f Lnet/minecraft/class_10714; field_56328 REDSTONE + f Lnet/minecraft/class_10714$class_10715; comp_3603 base + f Ljava/util/Map; comp_3604 overrides + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_10714$class_10715; method_67227 getAssetId + p 1 equipmentAsset + m (Ljava/lang/String;)Lnet/minecraft/class_10714; method_67229 of + p 0 suffix + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67228 method_67228 + p 0 instance + m (Ljava/lang/String;Ljava/util/Map;)Lnet/minecraft/class_10714; method_67230 of + p 0 suffix + p 1 overrides + m ()Ljava/util/Map; comp_3604 overrides + m ()Lnet/minecraft/class_10714$class_10715; comp_3603 base + m (Lnet/minecraft/class_10714$class_10715;Ljava/util/Map;)V + p 1 base + p 2 overrides +c net/minecraft/class_10714$class_10715 net/minecraft/item/equipment/trim/ArmorTrimAssets$AssetId + f Lnet/minecraft/class_9139; field_56337 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_56336 CODEC + f Ljava/lang/String; comp_3605 suffix + m ()Ljava/lang/String; comp_3605 suffix + m (Ljava/lang/String;)V + p 1 suffix +c net/minecraft/class_10718 net/minecraft/client/data/AtlasDefinitionProvider + f Ljava/util/Map; field_56343 TRIM_ASSET_SUFFIX_TO_COLOR_PALETTE + f Lnet/minecraft/class_7784$class_7489; field_56346 pathResolver + f Ljava/util/List; field_56345 EQUIPMENT_MODEL_LAYER_TYPES + f Ljava/util/List; field_56344 ARMOR_TRIM_PATTERN_KEYS + f Lnet/minecraft/class_2960; field_56342 TRIM_PALETTES_ID + m (Lnet/minecraft/class_7784;)V + p 1 output + m ()Ljava/util/List; method_67256 createArmorTrimsAtlasSources + m (Lnet/minecraft/class_10186$class_10190;Ljava/lang/String;)Ljava/lang/String; method_67249 method_67249 + p 1 trimPatternPath + m (Lnet/minecraft/class_10721;)Ljava/util/List; method_67254 createAtlasSources + p 0 spriteMapper + m ()Ljava/util/List; method_67253 getArmorTrimTextures + m (Lnet/minecraft/class_10721;)Lnet/minecraft/class_7948; method_67248 createDirectoryAtlasSource + p 0 spriteMapper + m (Lnet/minecraft/class_10714$class_10715;)Lnet/minecraft/class_2960; method_67246 method_67246 + p 0 assetId + m (Lnet/minecraft/class_4730;)Lnet/minecraft/class_7948; method_67250 createSingleAtlasSource + p 0 spriteId + m (Lnet/minecraft/class_7403;Lnet/minecraft/class_2960;Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; method_67252 runForAtlas + p 2 atlasId + p 3 atlasSources + p 1 writer + m ()Ljava/util/stream/Stream; method_67255 streamTrimAssets + m (Lnet/minecraft/class_10714;)Ljava/util/stream/Stream; method_67247 method_67247 + p 0 assets + m ()Ljava/util/List; method_71642 createGuiAtlasSources + m (Ljava/lang/String;)Ljava/util/List; method_67251 createAtlasSources + p 0 directorySource + m ()Ljava/util/List; method_67259 createShieldAtlasSources + m ()Ljava/util/List; method_67258 createBannerPatternsAtlasSources + m ()Ljava/util/List; method_67257 createBlocksAtlasSources + m ()Ljava/util/List; method_76538 createItemsAtlasSources +c net/minecraft/class_10719 net/minecraft/client/world/DataCache + f Ljava/util/function/Function; field_56351 dataFunction + f Lnet/minecraft/class_10719$class_10720; field_56352 context + f Ljava/lang/Object; field_56353 data + m (Lnet/minecraft/class_10719$class_10720;)Ljava/lang/Object; method_67267 compute + p 1 context + m (Ljava/util/function/Function;)V + p 1 dataFunction + m ()V method_67266 clean +c net/minecraft/class_10719$class_10720 net/minecraft/client/world/DataCache$CacheContext + m (Lnet/minecraft/class_10719;)V registerForCleaning registerForCleaning + p 1 dataCache +c net/minecraft/class_10723 net/minecraft/client/render/item/property/bool/ComponentBooleanProperty + f Lcom/mojang/serialization/MapCodec; field_56367 CODEC + f Lnet/minecraft/class_9360$class_10727; comp_3612 predicate + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67286 method_67286 + p 0 instance + m ()Lnet/minecraft/class_9360$class_10727; comp_3612 predicate + m (Lnet/minecraft/class_9360$class_10727;)V + p 1 predicate +c net/minecraft/class_10724 net/minecraft/client/render/item/property/PropertyTester + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_1309;ILnet/minecraft/class_811;)Z method_65638 test + p 5 displayContext + p 4 seed + p 3 entity + p 2 world + p 1 stack +c net/minecraft/class_10721 net/minecraft/client/util/SpriteMapper + f Ljava/lang/String; comp_3609 prefix + f Lnet/minecraft/class_2960; comp_3608 sheet + m (Ljava/lang/String;)Lnet/minecraft/class_4730; method_67274 mapVanilla + p 1 id + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_4730; method_67273 map + p 1 id + m ()Ljava/lang/String; comp_3609 prefix + m ()Lnet/minecraft/class_2960; comp_3608 sheet + m (Lnet/minecraft/class_2960;Ljava/lang/String;)V + p 1 sheet + p 2 prefix +c net/minecraft/class_6672 net/minecraft/util/math/random/GaussianGenerator + f D field_35127 nextNextGaussian + f Z field_35128 hasNextGaussian + f Lnet/minecraft/class_5819; field_35126 baseRandom + m (Lnet/minecraft/class_5819;)V + p 1 baseRandom + m ()V method_39541 reset + m ()D method_38996 next +c net/minecraft/class_6673 net/minecraft/util/math/random/RandomSeed + f Ljava/util/concurrent/atomic/AtomicLong; field_35135 SEED_UNIQUIFIER + f Lcom/google/common/hash/HashFunction; field_44918 MD5_HASH + f J field_35133 GOLDEN_RATIO_64 + f J field_35134 SILVER_RATIO_64 + m (Ljava/lang/String;)Lnet/minecraft/class_6673$class_6674; method_52180 createXoroshiroSeed + p 0 seed + m ()J method_39001 getSeed + c {@return the seed calculated using {@link SEED_UNIQUIFIER} and the system time} + m (J)Lnet/minecraft/class_6673$class_6674; method_39003 createXoroshiroSeed + p 0 seed + m (J)Lnet/minecraft/class_6673$class_6674; method_52211 createUnmixedXoroshiroSeed + p 0 seed + m (J)J method_39002 mixStafford13 + p 0 seed + m (J)J method_39004 method_39004 + p 0 seedUniquifier +c net/minecraft/class_6673$class_6674 net/minecraft/util/math/random/RandomSeed$XoroshiroSeed + f J comp_166 seedLo + f J comp_167 seedHi + m (Lnet/minecraft/class_6673$class_6674;)Lnet/minecraft/class_6673$class_6674; method_52182 split + p 1 seed + m ()Lnet/minecraft/class_6673$class_6674; method_52212 mix + m (JJ)Lnet/minecraft/class_6673$class_6674; method_52181 split + p 3 seedHi + p 1 seedLo + m ()J comp_167 seedHi + m ()J comp_166 seedLo + m (JJ)V + p 1 seedLo + p 3 seedHi +c net/minecraft/class_4011 net/minecraft/resource/ResourceReload + c Represents a resource reload.\n\n@see SimpleResourceReload#start + m ()V method_18849 throwException + c Throws an unchecked exception from this reload, if there is any. Does\nnothing if the reload has not completed or terminated. + m ()F method_18229 getProgress + c Returns a fraction between 0 and 1 indicating the progress of this\nreload. + m ()Z method_18787 isComplete + c Returns if this reload has completed, either normally or abnormally. + m ()Ljava/util/concurrent/CompletableFuture; method_18364 whenComplete + c Returns a future for the reload. The returned future is completed when\nthe reload completes. +c net/minecraft/class_6670 net/minecraft/entity/ai/brain/LivingTargetCache + f Ljava/util/List; field_35105 entities + f Lnet/minecraft/class_6670; field_35104 EMPTY + f Ljava/util/function/Predicate; field_35106 targetPredicate + m ()Lnet/minecraft/class_6670; method_38971 empty + m (Lit/unimi/dsi/fastutil/objects/Object2BooleanOpenHashMap;Ljava/util/function/Predicate;Lnet/minecraft/class_1309;)Z method_38974 method_38974 + p 2 entity + m (Lnet/minecraft/class_1309;)Z method_38972 contains + p 1 entity + m (Lnet/minecraft/class_1309;)Z method_38977 method_38977 + p 0 entity + m (Ljava/util/function/Predicate;)Z method_38981 anyMatch + p 1 predicate + m (Ljava/util/function/Predicate;)Ljava/util/stream/Stream; method_38980 stream + p 1 predicate + m (Ljava/util/function/Predicate;Lnet/minecraft/class_1309;)Z method_38976 method_38976 + p 2 entity + m (Ljava/util/function/Predicate;Lnet/minecraft/class_1309;)Z method_38979 method_38979 + p 2 entity + m (Ljava/util/function/Predicate;)Ljava/util/Optional; method_38975 findFirst + p 1 predicate + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Ljava/util/List;)V + p 3 entities + p 2 owner + p 1 world + m (Ljava/util/function/Predicate;)Ljava/lang/Iterable; method_38978 iterate + p 1 predicate + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_38973 method_38973 + p 1 entity + p 2 target +c net/minecraft/class_5342 net/minecraft/loot/condition/LootConditionType + f Lcom/mojang/serialization/MapCodec; comp_1878 codec + m ()Lcom/mojang/serialization/MapCodec; comp_1878 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec +c net/minecraft/class_4010 net/minecraft/resource/ProfiledResourceReload + c An implementation of resource reload that includes an additional profiling\nsummary for each reloader. + f Lorg/slf4j/Logger; field_17918 LOGGER + f Lcom/google/common/base/Stopwatch; field_17919 reloadTimer + m (Lnet/minecraft/class_3300;Ljava/util/List;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/class_4011; method_67569 start + p 1 reloaders + p 0 manager + p 3 applyExecutor + p 2 prepareExecutor + p 4 initialStage + m (Ljava/util/concurrent/Executor;Lnet/minecraft/class_3302$class_11558;Lnet/minecraft/class_3302$class_4045;Lnet/minecraft/class_3302;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_67570 method_67570 + p 1 store + p 2 reloadSynchronizer + p 3 reloader + p 4 prepare + p 5 apply + m (Ljava/util/concurrent/Executor;Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong;Ljava/lang/Runnable;)V method_64140 method_64140 + p 4 runnable + m (Lnet/minecraft/class_3302;Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong;Ljava/lang/Void;)Lnet/minecraft/class_4010$class_4046; method_67568 method_67568 + p 5 v + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong;Ljava/lang/String;)Ljava/util/concurrent/Executor; method_64141 getProfiledExecutor + p 2 counter + p 3 name + p 0 executor + p 1 output + m (Ljava/util/List;)V + p 1 waitingReloaders + m (Ljava/util/List;)Ljava/util/List; method_18238 finish + p 1 summaries +c net/minecraft/class_4010$class_4046 net/minecraft/resource/ProfiledResourceReload$Summary + c The profiling summary for each reloader in the reload. + f Ljava/util/concurrent/atomic/AtomicLong; comp_3207 prepareTimeMs + f Ljava/lang/String; comp_3206 name + f Ljava/util/concurrent/atomic/AtomicLong; comp_3208 applyTimeMs + f Ljava/util/concurrent/atomic/AtomicLong; comp_3688 reloadCount + f Ljava/util/concurrent/atomic/AtomicLong; comp_3687 preparationCount + m ()Ljava/util/concurrent/atomic/AtomicLong; comp_3207 prepareTimeMs + m ()Ljava/lang/String; comp_3206 name + m ()Ljava/util/concurrent/atomic/AtomicLong; comp_3208 applyTimeMs + m (Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong;)V + p 1 name + p 2 prepareTimeMs + p 3 preparationCount + p 4 applyTimeMs + p 5 reloadCount + m ()Ljava/util/concurrent/atomic/AtomicLong; comp_3688 reloadCount + m ()Ljava/util/concurrent/atomic/AtomicLong; comp_3687 preparationCount +c net/minecraft/class_5341 net/minecraft/loot/condition/LootCondition + c Loot conditions, officially {@index predicate}s, are JSON-based conditions to test\nagainst in world. It's used in loot tables, advancements, and commands, and can be\ndefined by data packs. + f Lcom/mojang/serialization/Codec; field_51810 ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_51809 CODEC + f Lcom/mojang/serialization/Codec; field_51808 BASE_CODEC + m ()Lnet/minecraft/class_5342; method_29325 getType +c net/minecraft/class_5341$class_210 net/minecraft/loot/condition/LootCondition$Builder + m (Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_8551$class_8552; method_893 or + p 1 condition + m (Lnet/minecraft/class_5341$class_210;)Lnet/minecraft/class_8548$class_8549; and and + p 1 condition + m ()Lnet/minecraft/class_5341$class_210; method_16780 invert +c net/minecraft/class_5348 net/minecraft/text/StringVisitable + c An object that can supply strings to a visitor,\nwith or without a style context. + f Lnet/minecraft/class_5348; field_25310 EMPTY + c An empty visitable that does not call the visitors. + f Ljava/util/Optional; field_25309 TERMINATE_VISIT + c Convenience object indicating the termination of a string visit. + m (Ljava/lang/StringBuilder;Ljava/lang/String;)Ljava/util/Optional; method_30067 method_30067 + p 1 string + m (Lnet/minecraft/class_5348$class_5245;)Ljava/util/Optional; method_27657 visit + c Supplies this visitable's literal content to the visitor.\n\n@return {@code Optional.empty()} if the visit finished, or a terminating\nresult from the {@code visitor} + p 1 visitor + c the visitor + m (Lnet/minecraft/class_5348$class_5246;Lnet/minecraft/class_2583;)Ljava/util/Optional; method_27658 visit + c Supplies this visitable's literal content and contextual style to\nthe visitor.\n\n@return {@code Optional.empty()} if the visit finished, or a terminating\nresult from the {@code visitor} + p 2 style + c the contextual style + p 1 styledVisitor + c the visitor + m (Ljava/lang/String;Lnet/minecraft/class_2583;)Lnet/minecraft/class_5348; method_29431 styled + c Creates a visitable from a plain string and a root style. + p 1 style + c the root style + p 0 string + c the plain string + m ([Lnet/minecraft/class_5348;)Lnet/minecraft/class_5348; method_29433 concat + c Concats multiple string visitables by the order they appear in the array. + p 0 visitables + c an array or varargs of visitables + m (Ljava/util/List;)Lnet/minecraft/class_5348; method_29432 concat + c Concats multiple string visitables by the order they appear in the list. + p 0 visitables + c a list of visitables + m (Ljava/lang/String;)Lnet/minecraft/class_5348; method_29430 plain + c Creates a visitable from a plain string. + p 0 string + c the plain string +c net/minecraft/class_5348$class_5246 net/minecraft/text/StringVisitable$StyledVisitor + c A visitor for string content and a contextual {@link Style}. + m (Lnet/minecraft/class_2583;Ljava/lang/String;)Ljava/util/Optional; accept accept + c Visits a string's content with a contextual style.\n\n

A contextual style is obtained by calling {@link Style#withParent(Style)}\non the current's text style, passing the previous contextual style or\nthe starting style if it is the beginning of a visit.\n\n

When a {@link Optional#isPresent() present optional} is returned,\nthe visit is terminated before visiting all text. Can return {@link\nStringVisitable#TERMINATE_VISIT} for convenience.\n\n@return {@code Optional.empty()} to continue, a non-empty result to terminate + p 2 asString + c the literal string + p 1 style +c net/minecraft/class_5348$class_5245 net/minecraft/text/StringVisitable$Visitor + c A visitor for string content. + m (Ljava/lang/String;)Ljava/util/Optional; accept accept + c Visits a literal string.\n\n

When a {@link Optional#isPresent() present optional} is returned,\nthe visit is terminated before visiting all text. Can return {@link\nStringVisitable#TERMINATE_VISIT} for convenience.\n\n@return {@code Optional.empty()} to continue, a non-empty result to terminate + p 1 asString + c the literal string +c net/minecraft/class_4017 net/minecraft/entity/ai/goal/DiveJumpingGoal +c net/minecraft/class_4016 net/minecraft/datafixer/schema/Schema1931 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; registerEntities registerEntities + p 1 schema +c net/minecraft/class_4019 net/minecraft/entity/passive/FoxEntity + f Lnet/minecraft/class_1352; field_17957 followChickenAndRabbitGoal + f Lnet/minecraft/class_2940; field_17951 OWNER + f F field_17960 headRollProgress + f Lnet/minecraft/class_2940; field_17949 VARIANT + f Lnet/minecraft/class_4048; field_47772 BABY_BASE_DIMENSIONS + f Lnet/minecraft/class_1352; field_17958 followBabyTurtleGoal + f Lcom/mojang/serialization/Codec; field_56652 TRUSTED_ENTITIES_CODEC + f I field_30335 EATING_DURATION + f Lnet/minecraft/class_2940; field_17952 OTHER_TRUSTED + f Ljava/util/function/Predicate; field_17954 JUST_ATTACKED_SOMETHING_FILTER + f Lnet/minecraft/class_1352; field_17959 followFishGoal + f Z field_57608 DEFAULT_SITTING + f I field_30334 AGGRESSIVE_FLAG + f Ljava/util/function/Predicate; field_17955 CHICKEN_AND_RABBIT_FILTER + f I field_30329 ROLLING_HEAD_FLAG + f Z field_57607 DEFAULT_SLEEPING + f I field_30333 WALKING_FLAG + f Ljava/util/function/Predicate; field_17956 NOTICEABLE_PLAYER_FILTER + f F field_17963 lastExtraRollingHeight + f I field_30328 CROUCHING_FLAG + f I field_30332 SLEEPING_FLAG + f Ljava/util/function/Predicate; field_17953 PICKABLE_DROP_FILTER + f I field_17964 eatingTime + f Z field_57609 DEFAULT_CROUCHING + f I field_30331 SITTING_FLAG + f F field_17961 lastHeadRollProgress + f I field_30330 CHASING_FLAG + f F field_17962 extraRollingHeight + f Lnet/minecraft/class_2940; field_17950 FOX_FLAGS + m (Z)V method_18301 setAggressive + p 1 aggressive + m ()V method_18280 addTypeSpecificGoals + m (Z)V method_18296 setChasing + p 1 chasing + m ()Ljava/util/stream/Stream; method_66293 getTrustedEntities + m (Lnet/minecraft/class_1297;)Z method_18253 method_18253 + p 0 entity + m ()Z method_18277 isRollingHead + m (Z)V method_18302 setSleeping + p 1 sleeping + m (Z)V method_18297 setCrouching + p 1 crouching + m (Lnet/minecraft/class_10583;)V method_66290 trust + p 1 entity + m (Lnet/minecraft/class_1309;)Z method_24347 method_24347 + p 1 entity + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_18254 method_18254 + p 0 entity + p 1 world + m ()Lnet/minecraft/class_4019$class_4039; method_47845 getVariant + m (Lnet/minecraft/class_1309;)Z method_18431 method_18431 + p 1 entity + m ()Z method_18282 isAggressive + m (Lnet/minecraft/class_1309;)Z method_18428 canTrust + p 1 entity + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_18429 method_18429 + p 2 world + p 1 entity + m ()V method_18283 stopSleeping + m (Z)V method_18299 setRollingHead + p 1 rollingHead + m (F)F method_18300 getBodyRotationHeightOffset + p 1 tickProgress + m ()V method_67659 clearTrusted + m ()V method_18284 stopActions + m (Lnet/minecraft/class_1309;)V method_66294 trust + p 1 entity + m ()Z method_18272 isSitting + m (Lnet/minecraft/class_1309;)Z method_20451 method_20451 + p 1 entity + m (Lnet/minecraft/class_4019$class_4039;)V method_47844 setVariant + p 1 variant + m ()Lnet/minecraft/class_5132$class_5133; method_26885 createFoxAttributes + m (Lnet/minecraft/class_1297;)Z method_18261 method_18261 + p 0 entity + m (I)Z method_18293 getFoxFlag + p 1 bitmask + m ()Z method_18285 wantsToPickupItem + m ()Z method_18273 isWalking + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_39449 canSpawn + p 0 type + p 1 world + p 2 spawnReason + p 3 pos + p 4 random + m (Lnet/minecraft/class_1799;)Z method_18430 canEat + p 1 stack + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_18262 method_18262 + p 0 entity + p 1 world + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_10583;)Z method_66291 method_66291 + p 1 trusted + m ()Z method_18274 isChasing + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_4019; method_18260 createChild + m (IZ)V method_18269 setFoxFlag + p 2 value + p 1 mask + m (Z)V method_18294 setSitting + p 1 sitting + m (F)F method_18298 getHeadRoll + p 1 tickProgress + m (Lnet/minecraft/class_1542;)Z method_18265 method_18265 + p 0 item + m (Lnet/minecraft/class_1799;)V method_18289 spit + p 1 stack + m (Lnet/minecraft/class_1799;)V method_18291 dropItem + p 1 stack + m (Lnet/minecraft/class_1799;)Z method_76726 isConsumableFood + p 1 stack + m (Lnet/minecraft/class_1297;)Z method_18267 method_18267 + p 0 entity + m ()Z method_18275 isFullyCrouched + m (Z)V method_18295 setWalking + p 1 walking + m (Lnet/minecraft/class_4019;Lnet/minecraft/class_1309;)Z method_18257 canJumpChase + p 0 fox + p 1 chasedEntity +c net/minecraft/class_4019$class_4020 net/minecraft/entity/passive/FoxEntity$DefendFriendGoal + f Lnet/minecraft/class_1309; field_17967 friend + f Lnet/minecraft/class_1309; field_17966 offender + f I field_17968 lastAttackedTime + m (Lnet/minecraft/class_4019;Ljava/lang/Class;ZZLnet/minecraft/class_4051$class_10254;)V + p 4 checkCanNavigate + p 5 targetPredicate + p 2 targetEntityClass + p 3 checkVisibility +c net/minecraft/class_4019$class_4021 net/minecraft/entity/passive/FoxEntity$StopWanderingGoal + f I field_17969 timer +c net/minecraft/class_4019$class_4024 net/minecraft/entity/passive/FoxEntity$MateGoal + m (Lnet/minecraft/class_4019;D)V + p 2 chance + p 1 fox +c net/minecraft/class_4019$class_4025 net/minecraft/entity/passive/FoxEntity$EatBerriesGoal + f I field_30336 EATING_TIME + f I field_17974 timer + m (Lnet/minecraft/class_2680;)V method_33587 pickSweetBerries + p 1 state + m (Lnet/minecraft/class_2680;)V method_33586 pickGlowBerries + p 1 state + m ()V method_18307 eatBerries + m (Lnet/minecraft/class_4019;DII)V + p 4 range + p 2 speed + p 5 maxYDifference +c net/minecraft/class_4019$class_4022 net/minecraft/entity/passive/FoxEntity$WorriableEntityFilter +c net/minecraft/class_4019$class_4023 net/minecraft/entity/passive/FoxEntity$CalmDownGoal + f Lnet/minecraft/class_4051; field_18102 WORRIABLE_ENTITY_PREDICATE + m ()Z method_18305 isAtFavoredLocation + m ()Z method_18306 canCalmDown +c net/minecraft/class_4019$class_4028 net/minecraft/entity/passive/FoxEntity$FoxLookControl +c net/minecraft/class_4019$class_4029 net/minecraft/entity/passive/FoxEntity$AttackGoal + m (Lnet/minecraft/class_4019;DZ)V + p 4 pauseWhenIdle + p 2 speed +c net/minecraft/class_4019$class_4026 net/minecraft/entity/passive/FoxEntity$FoxSwimGoal +c net/minecraft/class_4019$class_4027 net/minecraft/entity/passive/FoxEntity$FoxData + f Lnet/minecraft/class_4019$class_4039; field_17977 type + m (Lnet/minecraft/class_4019$class_4039;)V + p 1 type +c net/minecraft/class_4019$class_4031 net/minecraft/entity/passive/FoxEntity$GoToVillageGoal + m (Lnet/minecraft/class_4019;II)V + p 2 unused + p 3 searchRange + m ()Z method_18308 canGoToVillage +c net/minecraft/class_4019$class_4032 net/minecraft/entity/passive/FoxEntity$EscapeWhenNotAggressiveGoal + m (Lnet/minecraft/class_4019;D)V + p 2 speed +c net/minecraft/class_4019$class_4030 net/minecraft/entity/passive/FoxEntity$FoxMoveControl +c net/minecraft/class_4019$class_4035 net/minecraft/entity/passive/FoxEntity$SitDownAndLookAroundGoal + f I field_17989 timer + f D field_17987 lookX + f D field_17988 lookZ + f I field_17990 counter + m ()V method_18309 chooseNewAngle +c net/minecraft/class_4019$class_4036 net/minecraft/entity/passive/FoxEntity$AvoidDaylightGoal + f I field_17992 timer + m (Lnet/minecraft/class_4019;D)V + p 2 speed +c net/minecraft/class_4019$class_4033 net/minecraft/entity/passive/FoxEntity$JumpChasingGoal +c net/minecraft/class_4019$class_4034 net/minecraft/entity/passive/FoxEntity$PickupItemGoal +c net/minecraft/class_4019$class_4039 net/minecraft/entity/passive/FoxEntity$Variant + f Ljava/util/function/IntFunction; field_17998 INDEX_MAPPER + f Lnet/minecraft/class_9139; field_55960 PACKET_CODEC + f Lnet/minecraft/class_3542$class_7292; field_41548 CODEC + f Ljava/lang/String; field_18001 id + f Lnet/minecraft/class_4019$class_4039; field_57610 DEFAULT + f I field_18000 index + f Lnet/minecraft/class_4019$class_4039; field_17997 SNOW + f Lnet/minecraft/class_4019$class_4039; field_17996 RED + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_4019$class_4039; method_18313 fromBiome + p 0 biome + m (I)Lnet/minecraft/class_4019$class_4039; method_18311 byIndex + p 0 index + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 index + p 4 id + m ()I method_18317 getIndex +c net/minecraft/class_4019$class_4037 net/minecraft/entity/passive/FoxEntity$DelayedCalmDownGoal + f I field_30337 MAX_CALM_DOWN_TIME + f I field_17994 timer + m ()Z method_18432 canNotCalmDown +c net/minecraft/class_4019$class_4038 net/minecraft/entity/passive/FoxEntity$MoveToHuntGoal +c net/minecraft/class_4019$class_4292 net/minecraft/entity/passive/FoxEntity$LookAtEntityGoal + m (Lnet/minecraft/class_4019;Lnet/minecraft/class_1308;Ljava/lang/Class;F)V + p 4 range + p 2 fox + p 3 targetType +c net/minecraft/class_4019$class_4052 net/minecraft/entity/passive/FoxEntity$FollowParentGoal + f Lnet/minecraft/class_4019; field_18104 fox + m (Lnet/minecraft/class_4019;D)V + p 2 speed + p 1 fox +c net/minecraft/class_6679 net/minecraft/world/gen/blockpredicate/OffsetPredicate + f Lnet/minecraft/class_2382; field_35157 offset + m (Ljava/lang/Object;Ljava/lang/Object;)Z test test + p 1 world + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P1; method_39013 registerOffsetField + p 0 instance + m (Lnet/minecraft/class_2680;)Z method_38893 test + p 1 state + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)Z method_39012 test + m (Lnet/minecraft/class_2382;)V + p 1 offset + m (Lnet/minecraft/class_6679;)Lnet/minecraft/class_2382; method_39014 method_39014 + p 0 predicate +c net/minecraft/class_5349 net/minecraft/server/function/FunctionLoader + c The function loader holds the functions and function tags for a {@link\nCommandFunctionManager} to use. In the reloads, it loads the tags in one\ncompletable future and each function in a completable future for all functions.\n\n

The functions are stored in {@code .mcfunction} files; each line is one\nMinecraft command, with blank lines and contents starting with a trailing hash\n{@code #} sign ignored.\n\n

The function tags are ordered, unlike other tags. Each function's order in\nthe collection of functions from the tag is determined by the order it is listed\nin the JSON files; if it appears multiple times through tag nesting, only its\nfirst appearance will be considered.\n\n@see CommandFunctionManager + f Lnet/minecraft/class_7654; field_39978 FINDER + f Lnet/minecraft/class_5321; field_51976 FUNCTION_REGISTRY_KEY + f Lcom/mojang/brigadier/CommandDispatcher; field_25332 commandDispatcher + f Ljava/util/Map; field_25329 functions + f Lorg/slf4j/Logger; field_25326 LOGGER + f Ljava/util/Map; field_25801 tags + f Lnet/minecraft/class_12096; field_25331 permissions + f Lnet/minecraft/class_3503; field_25330 tagLoader + m (Ljava/util/Map;Ljava/lang/Void;Ljava/lang/Throwable;)Ljava/util/Map; method_29455 method_29455 + p 2 ex + p 1 unused + m (Lnet/minecraft/class_3298;)Ljava/util/List; method_29450 readLines + p 0 resource + m ()Ljava/lang/Iterable; method_29458 getTags + m (Lcom/mojang/datafixers/util/Pair;)V method_29453 method_29453 + p 1 intermediate + m (Lnet/minecraft/class_12096;Lcom/mojang/brigadier/CommandDispatcher;)V + p 2 commandDispatcher + p 1 permissions + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_2960;Ljava/util/concurrent/CompletableFuture;)V method_29452 method_29452 + p 1 id + p 2 functionFuture + m (Lnet/minecraft/class_2960;Z)Ljava/util/Optional; method_64567 method_64567 + p 1 id + p 2 required + m (Lnet/minecraft/class_2960;Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_2158;Ljava/lang/Throwable;)Ljava/lang/Object; method_29457 method_29457 + p 3 ex + p 2 function + m (Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletionStage; method_29449 method_29449 + p 2 functions + m (Lnet/minecraft/class_2960;)Ljava/util/List; method_29459 getTagOrEmpty + p 1 id + m (Lnet/minecraft/class_2960;)Ljava/util/Optional; method_29456 get + p 1 id + m ()Ljava/util/Map; method_29447 getFunctions +c net/minecraft/class_4018 net/minecraft/entity/ai/goal/GoToVillageGoal + f Lnet/minecraft/class_1314; field_17944 mob + f I field_17945 searchRange + f Lnet/minecraft/class_2338; field_17947 targetPosition + m (Lnet/minecraft/class_1314;I)V + p 1 mob + p 2 searchRange + m ()V method_18252 findOtherWaypoint +c net/minecraft/class_4013 net/minecraft/resource/SynchronousResourceReloader + c A base resource reloader that does all its work in the apply executor,\nor the game engine's thread.\n\n@apiNote This resource reloader is useful as a resource reload callback\nthat doesn't need resource manager access. If you access the resource\nmanager, consider writing resource reloaders that have a proper prepare\nstage instead by moving resource manager access to the prepare stage.\nThat can speed up resource reloaders significantly. + m (Lnet/minecraft/class_3300;)V method_14491 reload + c Performs the reload in the apply executor, or the game engine. + p 1 manager + c the resource manager +c net/minecraft/class_6676 net/minecraft/util/math/random/Xoroshiro128PlusPlusRandomImpl + c Implementation of Xoroshiro128++ pseudo-random number generator.\n\n@apiNote For regular usage, {@link Xoroshiro128PlusPlusRandom} should be used instead.\n\n@see Official\nimplementation released under public domain + f Lcom/mojang/serialization/Codec; field_44879 CODEC + f J field_35147 seedHi + f J field_35146 seedLo + m (Lnet/minecraft/class_6673$class_6674;)V + p 1 seed + m (Lnet/minecraft/class_6676;)Ljava/util/stream/LongStream; method_51857 method_51857 + p 0 random + m ()J method_39007 next + m (Ljava/util/stream/LongStream;)Lcom/mojang/serialization/DataResult; method_51858 method_51858 + p 0 stream + m ([J)Lnet/minecraft/class_6676; method_51859 method_51859 + p 0 seeds + m (JJ)V + p 1 seedLo + p 3 seedHi +c net/minecraft/class_6677 net/minecraft/util/math/random/Xoroshiro128PlusPlusRandom + c Xoroshiro128++ based pseudo random number generator.\n\n@implNote The actual implementation can be found on {@link Xoroshiro128PlusPlusRandomImpl}. + f Lnet/minecraft/class_6676; field_35150 implementation + f D field_35149 DOUBLE_MULTIPLIER + f Lnet/minecraft/class_6672; field_35151 gaussianGenerator + f F field_35148 FLOAT_MULTIPLIER + f Lcom/mojang/serialization/Codec; field_44880 CODEC + m (Lnet/minecraft/class_6676;)Lnet/minecraft/class_6677; method_51860 method_51860 + p 0 implementation + m (Lnet/minecraft/class_6673$class_6674;)V + p 1 seed + m (Lnet/minecraft/class_6676;)V + p 1 implementation + m (J)V + p 1 seed + m (Lnet/minecraft/class_6677;)Lnet/minecraft/class_6676; method_51861 method_51861 + p 0 random + m (JJ)V + p 1 seedLo + p 3 seedHi + m (I)J method_39008 next + c {@return {@code bits} upper bits of random value}\n\n@implNote In Xoroshiro128++, the lower bits have to be discarded in order\nto ensure proper randomness. For example, to obtain a double, the upper 53\nbits should be used instead of the lower 53 bits. + p 1 bits +c net/minecraft/class_6677$class_6678 net/minecraft/util/math/random/Xoroshiro128PlusPlusRandom$Splitter + f J field_35154 seedHi + f J field_35153 seedLo + m (JJ)V + p 3 seedHi + p 1 seedLo +c net/minecraft/class_5346 net/minecraft/client/gui/screen/world/DataPackFailureScreen + f Lnet/minecraft/class_5489; field_25265 wrappedText + f Ljava/lang/Runnable; field_46859 goBack + f Ljava/lang/Runnable; field_46860 runServerInSafeMode + m (Lnet/minecraft/class_4185;)V method_29346 method_29346 + p 1 button + m (Lnet/minecraft/class_4185;)V method_29345 method_29345 + p 1 button + m (Ljava/lang/Runnable;Ljava/lang/Runnable;)V + p 2 runServerInSafeMode + p 1 goBack +c net/minecraft/class_4014 net/minecraft/resource/SimpleResourceReload + c A simple implementation of resource reload.\n\n@param the result type for each reloader in the reload + f Ljava/util/concurrent/CompletableFuture; field_18043 applyStageFuture + f Ljava/util/concurrent/CompletableFuture; field_18042 prepareStageFuture + f Ljava/util/Set; field_18044 waitingReloaders + f I field_18045 reloaderCount + f I field_29784 FIRST_PREPARE_APPLY_WEIGHT + c The weight of either prepare or apply stages' progress in the total progress\ncalculation. Has value {@value}. + f Ljava/util/concurrent/atomic/AtomicInteger; field_18048 toPrepareCount + f I field_29785 SECOND_PREPARE_APPLY_WEIGHT + c The weight of either prepare or apply stages' progress in the total progress\ncalculation. Has value {@value}. + f Ljava/util/concurrent/atomic/AtomicInteger; field_18047 appliedCount + f I field_29786 RELOADER_WEIGHT + c The weight of reloaders' progress in the total progress calculation. Has value {@value}. + f Ljava/util/concurrent/atomic/AtomicInteger; field_18046 toApplyCount + f Ljava/util/concurrent/atomic/AtomicInteger; field_56609 preparedCount + m (Ljava/util/concurrent/Executor;Ljava/lang/Runnable;)V method_67575 method_67575 + p 2 runnable + m (III)I method_67572 toWeighted + p 0 prepare + p 1 apply + p 2 total + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Lnet/minecraft/class_3300;Ljava/util/List;Lnet/minecraft/class_4014$class_4047;Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletableFuture; method_67571 startAsync + p 1 prepareExecutor + p 5 factory + p 4 reloaders + p 3 manager + p 2 applyExecutor + p 6 initialStage + m (Lnet/minecraft/class_3300;Ljava/util/List;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;Z)Lnet/minecraft/class_4011; method_40087 start + c Starts a resource reload with the content from the {@code manager} supplied\nto the {@code reloaders}.\n\n@apiNote In vanilla, this is respectively called by {@link ReloadableResourceManagerImpl}\non the client and {@link net.minecraft.server.DataPackContents} on the server. + p 1 reloaders + c the reloaders performing the reload + p 0 manager + c the resource manager, providing resources to the reloaders + p 3 applyExecutor + c the executor for the apply stage, synchronous with the game engine + p 2 prepareExecutor + c the executor for the prepare stage, often asynchronous + p 5 profiled + c whether to profile this reload and log the statistics + p 4 initialStage + c the initial stage, must be completed before the reloaders can prepare resources + m (Ljava/util/concurrent/Executor;Ljava/lang/Runnable;)V method_67577 method_67577 + p 2 runnable + m (Lnet/minecraft/class_3302$class_11558;Lnet/minecraft/class_3302;)V method_72366 method_72366 + p 1 reloader + m (Lnet/minecraft/class_3302;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/Executor;)Lnet/minecraft/class_3302$class_4045; method_67573 createSynchronizer + p 3 applyExecutor + p 2 future + p 1 reloader + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Lnet/minecraft/class_3300;Ljava/util/List;Lnet/minecraft/class_4014$class_4047;Ljava/util/concurrent/CompletableFuture;)V method_67578 start + p 1 prepareExecutor + p 2 applyExecutor + p 5 factory + p 6 initialStage + p 3 manager + p 4 reloaders + m (Ljava/util/List;)V + p 1 waitingReloaders + m (Lnet/minecraft/class_3300;Ljava/util/List;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/class_4011; method_18369 create + c Creates a simple resource reload without additional results. + p 4 initialStage + p 1 reloaders + p 0 manager + p 3 applyExecutor + p 2 prepareExecutor +c net/minecraft/class_4014$class_4047 net/minecraft/resource/SimpleResourceReload$Factory + c A factory that creates a completable future for each reloader in the\nresource reload. + f Lnet/minecraft/class_4014$class_4047; field_56610 SIMPLE + m (Lnet/minecraft/class_3302$class_11558;Lnet/minecraft/class_3302$class_4045;Lnet/minecraft/class_3302;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; create create + p 2 reloadSynchronizer + p 1 store + p 5 applyExecutor + p 4 prepareExecutor + p 3 reloader + m (Lnet/minecraft/class_3302$class_11558;Lnet/minecraft/class_3302$class_4045;Lnet/minecraft/class_3302;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_67579 method_67579 + p 3 prepareExecutor + p 4 applyExecutor + p 0 store + p 1 reloadSynchronizer + p 2 reloader +c net/minecraft/class_6683 net/minecraft/util/ModStatus + f Ljava/lang/String; comp_172 description + f Lnet/minecraft/class_6683$class_6684; comp_171 confidence + m ()Ljava/lang/String; method_39032 getMessage + m ()Z method_39029 isModded + m (Lnet/minecraft/class_6683;)Lnet/minecraft/class_6683; method_39030 combine + c {@return the combined modification status with the higher confidence}\n\n@apiNote This is used to check if either the client or the integrated server is modded. + p 1 brand + m (Ljava/lang/String;Ljava/util/function/Supplier;Ljava/lang/String;Ljava/lang/Class;)Lnet/minecraft/class_6683; method_39031 check + c {@return the modification status determined by the brand and whether the\nclass is signed or not} + p 0 vanillaBrand + p 1 brandSupplier + p 2 environment + p 3 clazz + m ()Ljava/lang/String; comp_172 description + m ()Lnet/minecraft/class_6683$class_6684; comp_171 confidence + m (Lnet/minecraft/class_6683$class_6684;Ljava/lang/String;)V + p 1 confidence + p 2 description +c net/minecraft/class_6683$class_6684 net/minecraft/util/ModStatus$Confidence + f Z field_35178 modded + f Ljava/lang/String; field_35177 description + f Lnet/minecraft/class_6683$class_6684; field_35176 DEFINITELY + f Lnet/minecraft/class_6683$class_6684; field_35174 PROBABLY_NOT + f Lnet/minecraft/class_6683$class_6684; field_35175 VERY_LIKELY + m (Ljava/lang/String;ILjava/lang/String;Z)V + p 3 description + p 4 modded +c net/minecraft/class_5350 net/minecraft/server/DataPackContents + c Contains loaders for contents controllable by data packs.\n\n

This can be accessed via {@link\nnet.minecraft.server.MinecraftServer.ResourceManagerHolder#dataPackContents}.\nThere are shortcut methods to access individual loaders on {@link MinecraftServer}. + f Ljava/util/List; field_52345 pendingTagLoads + f Lnet/minecraft/class_5349; field_25342 functionLoader + f Lnet/minecraft/class_2170; field_25336 commandManager + f Lnet/minecraft/class_1863; field_25337 recipeManager + f Lnet/minecraft/class_9383$class_9385; field_49921 reloadableRegistries + f Ljava/util/concurrent/CompletableFuture; field_25334 COMPLETED_UNIT + f Lnet/minecraft/class_2989; field_25341 serverAdvancementLoader + f Lorg/slf4j/Logger; field_36491 LOGGER + m (Lnet/minecraft/class_7699;Lnet/minecraft/class_2170$class_5364;Ljava/util/List;Lnet/minecraft/class_12096;Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Lnet/minecraft/class_9383$class_9842;)Ljava/util/concurrent/CompletionStage; method_58296 method_58296 + p 7 reloadResult + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_7780;Ljava/util/List;Lnet/minecraft/class_7699;Lnet/minecraft/class_2170$class_5364;Lnet/minecraft/class_12096;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_29466 reload + c Reloads the data packs contents.\n\n@see MinecraftServer#reloadResources + p 7 applyExecutor + p 6 prepareExecutor + p 3 enabledFeatures + p 2 pendingTagLoads + p 5 permissions + p 4 environment + p 1 dynamicRegistries + p 0 resourceManager + m ()Lnet/minecraft/class_2989; method_29473 getServerAdvancementLoader + c @see MinecraftServer#getAdvancementLoader + m ()V method_61248 applyPendingTagLoads + m (Lnet/minecraft/class_7780;Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_7699;Lnet/minecraft/class_2170$class_5364;Ljava/util/List;Lnet/minecraft/class_12096;)V + p 1 dynamicRegistries + p 2 registries + p 3 enabledFeatures + p 4 environment + p 5 pendingTagLoads + p 6 permissions + m ()Ljava/util/List; method_40427 getContents + m ()Lnet/minecraft/class_5349; method_29465 getFunctionLoader + c {@return the function loader}\n\n

Function loader loads the {@linkplain net.minecraft.server.function.CommandFunction\nfunctions} in data packs. + m ()Lnet/minecraft/class_1863; method_29471 getRecipeManager + c @see MinecraftServer#getRecipeManager + m ()Lnet/minecraft/class_9383$class_9385; method_58297 getReloadableRegistries + m ()Lnet/minecraft/class_2170; method_29472 getCommandManager + c @see MinecraftServer#getCommandManager + m (Lnet/minecraft/class_5350;Ljava/lang/Object;)Lnet/minecraft/class_5350; method_40425 method_40425 + p 1 void_ +c net/minecraft/class_6681 net/minecraft/world/gen/blockpredicate/WouldSurviveBlockPredicate + f Lnet/minecraft/class_2382; field_35161 offset + f Lnet/minecraft/class_2680; field_35162 state + f Lcom/mojang/serialization/MapCodec; field_35160 CODEC + m (Lnet/minecraft/class_6681;)Lnet/minecraft/class_2680; method_39019 method_39019 + p 0 predicate + m (Lnet/minecraft/class_2382;Lnet/minecraft/class_2680;)V + p 1 offset + p 2 state + m (Lnet/minecraft/class_6681;)Lnet/minecraft/class_2382; method_39020 method_39020 + p 0 predicate + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)Z method_39017 test + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39018 method_39018 + p 0 instance + m (Ljava/lang/Object;Ljava/lang/Object;)Z test test + p 2 pos + p 1 world +c net/minecraft/class_5352 net/minecraft/resource/ResourcePackSource + f Lnet/minecraft/class_5352; field_40048 FEATURE + f Lnet/minecraft/class_5352; field_25347 NONE + f Lnet/minecraft/class_5352; field_25348 BUILTIN + f Lnet/minecraft/class_5352; field_25349 WORLD + f Ljava/util/function/UnaryOperator; field_40047 NONE_SOURCE_TEXT_SUPPLIER + f Lnet/minecraft/class_5352; field_25350 SERVER + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_45282 decorate + p 1 packDisplayName + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_45283 method_45283 + p 1 name + m (Ljava/util/function/UnaryOperator;Z)Lnet/minecraft/class_5352; method_45281 create + p 1 canBeEnabledLater + p 0 sourceTextSupplier + m (Ljava/lang/String;)Ljava/util/function/UnaryOperator; method_45280 getSourceTextSupplier + p 0 translationKey + m ()Z method_45279 canBeEnabledLater +c net/minecraft/class_6682 net/minecraft/network/packet/s2c/play/SimulationDistanceS2CPacket + f Lnet/minecraft/class_9139; field_47989 CODEC + f I comp_170 simulationDistance + m (Lnet/minecraft/class_2540;)V method_55936 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2602;)V method_39027 apply + m ()I comp_170 simulationDistance + m (I)V + p 1 simulationDistance +c net/minecraft/class_6680 net/minecraft/world/gen/blockpredicate/AlwaysTrueBlockPredicate + f Lcom/mojang/serialization/MapCodec; field_35159 CODEC + f Lnet/minecraft/class_6680; field_35158 instance + m (Ljava/lang/Object;Ljava/lang/Object;)Z test test + p 1 world + p 2 pos + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)Z method_39015 test +c net/minecraft/class_5359 net/minecraft/resource/DataPackSettings + f Lcom/mojang/serialization/Codec; field_25394 CODEC + f Ljava/util/List; field_25396 disabled + f Ljava/util/List; field_25395 enabled + f Lnet/minecraft/class_5359; field_25393 SAFE_MODE + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_29549 method_29549 + p 0 instance + m ()Ljava/util/List; method_29547 getEnabled + m (Ljava/util/List;Ljava/util/List;)V + p 1 enabled + p 2 disabled + m (Lnet/minecraft/class_5359;)Ljava/util/List; method_29548 method_29548 + p 0 settings + m ()Ljava/util/List; method_29550 getDisabled + m (Lnet/minecraft/class_5359;)Ljava/util/List; method_29551 method_29551 + p 0 settings +c net/minecraft/class_5355 net/minecraft/entity/ai/brain/task/WalkTowardsEntityTask + m (Lnet/minecraft/class_6019;Ljava/util/function/Function;Lnet/minecraft/class_4140;Z)Lnet/minecraft/class_7894; method_46897 create + p 3 eyeHeight + p 2 targetType + p 1 speed + p 0 executionRange + m (FLnet/minecraft/class_1309;)Ljava/lang/Float; method_46895 method_46895 + p 1 entity + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_6019;ZLjava/util/function/Function;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_46900 method_46900 + p 7 world + p 8 entity + p 9 time + m (Lnet/minecraft/class_4140;Lnet/minecraft/class_6019;ZLjava/util/function/Function;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46898 method_46898 + p 4 context + m (Lnet/minecraft/class_6019;F)Lnet/minecraft/class_7894; method_46896 createNearestVisibleAdult + p 1 speed + p 0 executionRange + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_6019;ZLjava/util/function/Function;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46899 method_46899 + p 5 lookTarget + p 4 target + p 6 walkTarget +c net/minecraft/class_5354 net/minecraft/entity/mob/Angerable + f Ljava/lang/String; field_30094 ANGRY_AT_KEY + f J field_63296 NO_ANGER_END_TIME + f Ljava/lang/String; field_63295 ANGER_END_TIME_KEY + m ()Lnet/minecraft/class_1309; method_5968 getTarget + m (J)V method_75131 setAngerDuration + p 1 durationInTicks + m (J)V method_75132 setAngerEndTime + p 1 angerEndTime + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1657;)V method_29516 forgive + p 1 world + p 2 player + m ()Z method_29511 hasAngerTime + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_11368;)V method_29512 readAngerFromData + p 2 view + p 1 world + m (Lnet/minecraft/class_1309;)Z method_75880 canAngerAt + p 0 target + m (Lnet/minecraft/class_1309;)Z method_18395 canTarget + p 1 target + m (Lnet/minecraft/class_10583;)V method_29513 setAngryAt + p 1 angryAt + m (Lnet/minecraft/class_1309;)V method_6015 setAttacker + p 1 attacker + m ()Lnet/minecraft/class_1309; method_6065 getAttacker + m ()Lnet/minecraft/class_1937; method_73183 getEntityWorld + m (Lnet/minecraft/class_1309;)V method_5980 setTarget + p 1 target + m ()V method_29509 chooseRandomAngerTime + m ()Lnet/minecraft/class_10583; method_29508 getAngryAt + m (Lnet/minecraft/class_3218;Z)V method_29510 tickAngerLogic + p 2 angerPersistent + c if {@code true}, the anger time will not decrease for a player target + p 1 world + m (Lnet/minecraft/class_11372;)V method_29517 writeAngerToData + p 1 view + m (Lnet/minecraft/class_3218;)Z method_29923 isUniversallyAngry + p 1 world + m ()V method_29921 universallyAnger + m ()J method_75130 getAngerEndTime + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_29515 shouldAngerAt + p 2 world + p 1 target + m ()V method_29922 stopAnger +c net/minecraft/class_6686 net/minecraft/world/gen/surfacebuilder/MaterialRules + f Lnet/minecraft/class_6686$class_6693; field_35222 STONE_DEPTH_FLOOR + f Lnet/minecraft/class_6686$class_6693; field_36341 STONE_DEPTH_FLOOR_WITH_SURFACE_DEPTH_RANGE_6 + f Lnet/minecraft/class_6686$class_6693; field_36342 STONE_DEPTH_FLOOR_WITH_SURFACE_DEPTH_RANGE_30 + f Lnet/minecraft/class_6686$class_6693; field_35494 STONE_DEPTH_CEILING + f Lnet/minecraft/class_6686$class_6693; field_35224 STONE_DEPTH_CEILING_WITH_SURFACE_DEPTH + f Lnet/minecraft/class_6686$class_6693; field_35223 STONE_DEPTH_FLOOR_WITH_SURFACE_DEPTH + m (II)Lnet/minecraft/class_6686$class_6693; method_39057 waterWithStoneDepth + p 1 runDepthMultiplier + p 0 offset + m ([Lnet/minecraft/class_5321;)Lnet/minecraft/class_6686$class_6693; method_39055 biome + p 0 biomes + m (Lnet/minecraft/class_2378;Ljava/lang/String;Lnet/minecraft/class_7243;)Lcom/mojang/serialization/MapCodec; method_42377 register + p 2 codecHolder + p 1 id + p 0 registry + m (IZILnet/minecraft/class_5932;)Lnet/minecraft/class_6686$class_6693; method_40023 stoneDepth + p 1 addSurfaceDepth + p 0 offset + p 3 verticalSurfaceType + p 2 secondaryDepthRange + m ([Lnet/minecraft/class_6686$class_6708;)Lnet/minecraft/class_6686$class_6708; method_39050 sequence + p 0 rules + m (Lnet/minecraft/class_5843;I)Lnet/minecraft/class_6686$class_6693; method_39058 aboveYWithStoneDepth + p 0 anchor + p 1 runDepthMultiplier + m (II)Lnet/minecraft/class_6686$class_6693; method_39046 water + p 0 offset + p 1 runDepthMultiplier + m (Lnet/minecraft/class_5843;I)Lnet/minecraft/class_6686$class_6693; method_39051 aboveY + p 1 runDepthMultiplier + p 0 anchor + m ()Lnet/minecraft/class_6686$class_6693; method_39059 temperature + m (Lnet/minecraft/class_6686$class_6693;Lnet/minecraft/class_6686$class_6708;)Lnet/minecraft/class_6686$class_6708; method_39049 condition + p 0 condition + p 1 rule + m (Lnet/minecraft/class_5321;D)Lnet/minecraft/class_6686$class_6693; method_39052 noiseThreshold + p 1 min + p 0 noise + m (Lnet/minecraft/class_5321;DD)Lnet/minecraft/class_6686$class_6693; method_39053 noiseThreshold + p 0 noise + p 1 min + p 3 max + m (Lnet/minecraft/class_6686$class_6693;)Lnet/minecraft/class_6686$class_6693; method_39048 not + p 0 target + m ()Lnet/minecraft/class_6686$class_6693; method_39056 hole + m (Ljava/lang/String;Lnet/minecraft/class_5843;Lnet/minecraft/class_5843;)Lnet/minecraft/class_6686$class_6693; method_39472 verticalGradient + p 0 id + p 2 falseAtAndAbove + p 1 trueAtAndBelow + m (Lnet/minecraft/class_2680;)Lnet/minecraft/class_6686$class_6708; method_39047 block + p 0 state + m (Ljava/util/List;)Lnet/minecraft/class_6686$class_6689; method_39054 biome + p 0 biomes + m ()Lnet/minecraft/class_6686$class_6693; method_39045 steepSlope + m ()Lnet/minecraft/class_6686$class_6693; method_39473 surface + m (IZLnet/minecraft/class_5932;)Lnet/minecraft/class_6686$class_6693; method_39549 stoneDepth + p 2 verticalSurfaceType + p 1 addSurfaceDepth + p 0 offset + m ()Lnet/minecraft/class_6686$class_6708; method_39060 terracottaBands +c net/minecraft/class_6686$class_6709 net/minecraft/world/gen/surfacebuilder/MaterialRules$SequenceBlockStateRule + c Applies the given block state rules in sequence, and returns the first result that\nisn't {@code null}. Returns {@code null} if none of the passed rules match. + f Ljava/util/List; comp_208 rules + m ()Ljava/util/List; comp_208 rules + m (Ljava/util/List;)V + p 1 rules +c net/minecraft/class_6686$class_6706 net/minecraft/world/gen/surfacebuilder/MaterialRules$InvertedBooleanSupplier + f Lnet/minecraft/class_6686$class_6692; comp_206 target + m ()Lnet/minecraft/class_6686$class_6692; comp_206 target + m (Lnet/minecraft/class_6686$class_6692;)V + p 1 target +c net/minecraft/class_6686$class_6708 net/minecraft/world/gen/surfacebuilder/MaterialRules$MaterialRule + f Lcom/mojang/serialization/Codec; field_35252 CODEC + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_39085 registerAndGetDefault + p 0 registry + m ()Lnet/minecraft/class_7243; method_39061 codec +c net/minecraft/class_6686$class_6707 net/minecraft/world/gen/surfacebuilder/MaterialRules$NotMaterialCondition + f Lnet/minecraft/class_7243; field_35251 CODEC + f Lnet/minecraft/class_6686$class_6693; comp_207 target + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6692; method_39084 apply + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context + m ()Lnet/minecraft/class_6686$class_6693; comp_207 target + m (Lnet/minecraft/class_6686$class_6693;)V + p 1 target +c net/minecraft/class_6686$class_6702 net/minecraft/world/gen/surfacebuilder/MaterialRules$LazyAbstractPredicate + f Lnet/minecraft/class_6686$class_6694; field_35623 context + f Ljava/lang/Boolean; field_35246 result + f J field_35622 uniqueValue + m (Lnet/minecraft/class_6686$class_6694;)V + p 1 context + m ()J method_39479 getCurrentUniqueValue + c Returns a unique value for each block position. The result of this predicate\nwill not be recalculated until this value changes.\n\n@return the unique value for this position + m ()Z method_39074 test +c net/minecraft/class_6686$class_6701 net/minecraft/world/gen/surfacebuilder/MaterialRules$HoleMaterialCondition + f Lnet/minecraft/class_7243; field_35244 CODEC + f Lnet/minecraft/class_6686$class_6701; field_35243 INSTANCE + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6692; method_39079 apply + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context +c net/minecraft/class_6686$class_6703 net/minecraft/world/gen/surfacebuilder/MaterialRules$NoiseThresholdMaterialCondition + f Lnet/minecraft/class_7243; field_35248 CODEC + f D comp_203 maxThreshold + f D comp_202 minThreshold + f Lnet/minecraft/class_5321; comp_201 noise + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6692; method_39082 apply + m ()Lnet/minecraft/class_5321; comp_201 noise + m ()D comp_202 minThreshold + m ()D comp_203 maxThreshold + m (Lnet/minecraft/class_5321;DD)V + p 1 noise + p 2 minThreshold + p 4 maxThreshold +c net/minecraft/class_6686$class_6703$class_6704 net/minecraft/world/gen/surfacebuilder/MaterialRules$NoiseThresholdMaterialCondition$NoiseThresholdPredicate +c net/minecraft/class_6686$class_6775 net/minecraft/world/gen/surfacebuilder/MaterialRules$VerticalGradientMaterialCondition + f Lnet/minecraft/class_7243; field_35626 CODEC + f Lnet/minecraft/class_5843; comp_265 falseAtAndAbove + f Lnet/minecraft/class_5843; comp_264 trueAtAndBelow + f Lnet/minecraft/class_2960; comp_263 randomName + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6692; method_39481 apply + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context + m ()Lnet/minecraft/class_5843; comp_264 trueAtAndBelow + m ()Lnet/minecraft/class_5843; comp_265 falseAtAndAbove + m ()Lnet/minecraft/class_2960; comp_263 randomName + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_5843;Lnet/minecraft/class_5843;)V + p 1 randomName + p 2 trueAtAndBelow + p 3 falseAtAndAbove +c net/minecraft/class_6686$class_6775$class_6776 net/minecraft/world/gen/surfacebuilder/MaterialRules$VerticalGradientMaterialCondition$VerticalGradientPredicate +c net/minecraft/class_6686$class_6774 net/minecraft/world/gen/surfacebuilder/MaterialRules$FullLazyAbstractPredicate +c net/minecraft/class_6686$class_6694 net/minecraft/world/gen/surfacebuilder/MaterialRules$MaterialRuleContext + f J field_35612 uniquePosValue + f Lnet/minecraft/class_6686$class_6692; field_35604 surfacePredicate + f I field_35610 blockZ + f D field_35678 secondaryDepth + f I field_35616 surfaceMinY + f Lnet/minecraft/class_6568; field_35676 chunkNoiseSampler + f Lnet/minecraft/class_6686$class_6692; field_35236 negativeRunDepthPredicate + f Lnet/minecraft/class_6686$class_6692; field_35234 biomeTemperaturePredicate + f I field_35620 stoneDepthAbove + f Lnet/minecraft/class_2791; field_35605 chunk + f Lnet/minecraft/class_5868; field_35241 heightContext + f I field_35619 stoneDepthBelow + f J field_36278 packedChunkPos + f I field_35609 blockX + f I field_35611 runDepth + f Lnet/minecraft/class_2338$class_2339; field_35613 pos + f I field_35617 blockY + f Lnet/minecraft/class_6724; field_35233 surfaceBuilder + f Lnet/minecraft/class_6686$class_6692; field_35235 steepSlopePredicate + f Ljava/util/function/Supplier; field_35614 biomeSupplier + f Lnet/minecraft/class_7138; field_37703 noiseConfig + f J field_35608 uniqueHorizontalPosValue + f I field_35618 fluidHeight + f Ljava/util/function/Function; field_35606 posToBiome + f [I field_36279 estimatedSurfaceHeights + m (I)I method_39903 blockToChunkCoord + p 0 blockCoord + m (Lnet/minecraft/class_6724;Lnet/minecraft/class_7138;Lnet/minecraft/class_2791;Lnet/minecraft/class_6568;Ljava/util/function/Function;Lnet/minecraft/class_2378;Lnet/minecraft/class_5868;)V + p 6 biomeRegistry + p 7 heightContext + p 4 chunkNoiseSampler + p 5 posToBiome + p 2 noiseConfig + p 3 chunk + p 1 surfaceBuilder + m (II)V method_39072 initHorizontalContext + p 2 blockZ + p 1 blockX + m ()D method_39550 getSecondaryDepth + m (I)I method_39904 chunkToBlockCoord + p 0 chunkCoord + m (IIIIII)V method_39073 initVerticalContext + p 6 blockZ + p 5 blockY + p 2 stoneDepthBelow + p 1 stoneDepthAbove + p 4 blockX + p 3 fluidHeight + m ()I method_61804 getSeaLevel + m ()I method_39551 estimateSurfaceHeight +c net/minecraft/class_6686$class_6694$class_6695 net/minecraft/world/gen/surfacebuilder/MaterialRules$MaterialRuleContext$NegativeRunDepthPredicate +c net/minecraft/class_6686$class_6694$class_6772 net/minecraft/world/gen/surfacebuilder/MaterialRules$MaterialRuleContext$BiomeTemperaturePredicate +c net/minecraft/class_6686$class_6694$class_6696 net/minecraft/world/gen/surfacebuilder/MaterialRules$MaterialRuleContext$SteepSlopePredicate +c net/minecraft/class_6686$class_6694$class_6771 net/minecraft/world/gen/surfacebuilder/MaterialRules$MaterialRuleContext$SurfacePredicate +c net/minecraft/class_6686$class_6693 net/minecraft/world/gen/surfacebuilder/MaterialRules$MaterialCondition + f Lcom/mojang/serialization/Codec; field_35232 CODEC + m ()Lnet/minecraft/class_7243; method_39064 codec + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_39070 registerAndGetDefault + p 0 registry +c net/minecraft/class_6686$class_6770 net/minecraft/world/gen/surfacebuilder/MaterialRules$SurfaceMaterialCondition + f Lnet/minecraft/class_7243; field_35601 CODEC + f Lnet/minecraft/class_6686$class_6770; field_35600 INSTANCE + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6692; method_39474 apply +c net/minecraft/class_6686$class_6773 net/minecraft/world/gen/surfacebuilder/MaterialRules$HorizontalLazyAbstractPredicate +c net/minecraft/class_6686$class_6692 net/minecraft/world/gen/surfacebuilder/MaterialRules$BooleanSupplier + m ()Z method_39069 get +c net/minecraft/class_6686$class_6691 net/minecraft/world/gen/surfacebuilder/MaterialRules$BlockMaterialRule + f Lnet/minecraft/class_7243; field_35231 CODEC + f Lnet/minecraft/class_6686$class_6711; comp_192 rule + f Lnet/minecraft/class_2680; comp_191 resultState + m (Lnet/minecraft/class_2680;)V + p 1 resultState + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6715; method_39068 apply + m ()Lnet/minecraft/class_2680; comp_191 resultState + m ()Lnet/minecraft/class_6686$class_6711; comp_192 rule + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_6686$class_6711;)V + p 1 resultState + p 2 rule +c net/minecraft/class_6686$class_6687 net/minecraft/world/gen/surfacebuilder/MaterialRules$TerracottaBandsMaterialRule + f Lnet/minecraft/class_7243; field_35226 CODEC + f Lnet/minecraft/class_6686$class_6687; field_35225 INSTANCE + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6715; method_39062 apply +c net/minecraft/class_6686$class_6720 net/minecraft/world/gen/surfacebuilder/MaterialRules$WaterMaterialCondition + f Lnet/minecraft/class_7243; field_35264 CODEC + f Z comp_219 addStoneDepth + f I comp_217 offset + f I comp_218 surfaceDepthMultiplier + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6692; method_39097 apply + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context + m ()I comp_218 surfaceDepthMultiplier + m ()I comp_217 offset + m ()Z comp_219 addStoneDepth + m (IIZ)V + p 1 offset + p 2 surfaceDepthMultiplier + p 3 addStoneDepth +c net/minecraft/class_6686$class_6720$class_6721 net/minecraft/world/gen/surfacebuilder/MaterialRules$WaterMaterialCondition$WaterPredicate +c net/minecraft/class_6686$class_6689 net/minecraft/world/gen/surfacebuilder/MaterialRules$BiomeMaterialCondition + f Ljava/util/function/Predicate; field_36415 predicate + f Lnet/minecraft/class_7243; field_35228 CODEC + f Ljava/util/List; field_36414 biomes + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6692; method_39065 apply + m (Ljava/util/List;)V + p 1 biomes + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context +c net/minecraft/class_6686$class_6689$class_6690 net/minecraft/world/gen/surfacebuilder/MaterialRules$BiomeMaterialCondition$BiomePredicate +c net/minecraft/class_6686$class_6722 net/minecraft/world/gen/surfacebuilder/MaterialRules$AboveYMaterialCondition + f Lnet/minecraft/class_7243; field_35266 CODEC + f Lnet/minecraft/class_5843; comp_220 anchor + f Z comp_222 addStoneDepth + f I comp_221 surfaceDepthMultiplier + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6692; method_39100 apply + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context + m ()Z comp_222 addStoneDepth + m ()I comp_221 surfaceDepthMultiplier + m ()Lnet/minecraft/class_5843; comp_220 anchor + m (Lnet/minecraft/class_5843;IZ)V + p 1 anchor + p 2 surfaceDepthMultiplier + p 3 addStoneDepth +c net/minecraft/class_6686$class_6722$class_6723 net/minecraft/world/gen/surfacebuilder/MaterialRules$AboveYMaterialCondition$AboveYPredicate +c net/minecraft/class_6686$class_6717 net/minecraft/world/gen/surfacebuilder/MaterialRules$ConditionalBlockStateRule + c Applies another block state rule if the given predicate matches, and returns\n{@code null} otherwise. + f Lnet/minecraft/class_6686$class_6715; comp_214 followup + f Lnet/minecraft/class_6686$class_6692; comp_213 condition + m ()Lnet/minecraft/class_6686$class_6715; comp_214 followup + m ()Lnet/minecraft/class_6686$class_6692; comp_213 condition + m (Lnet/minecraft/class_6686$class_6692;Lnet/minecraft/class_6686$class_6715;)V + p 1 condition + p 2 followup +c net/minecraft/class_6686$class_6716 net/minecraft/world/gen/surfacebuilder/MaterialRules$TemperatureMaterialCondition + f Lnet/minecraft/class_7243; field_35261 CODEC + f Lnet/minecraft/class_6686$class_6716; field_35260 INSTANCE + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6692; method_39092 apply + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context +c net/minecraft/class_6686$class_6718 net/minecraft/world/gen/surfacebuilder/MaterialRules$ConditionMaterialRule + f Lnet/minecraft/class_7243; field_35263 CODEC + f Lnet/minecraft/class_6686$class_6708; comp_216 thenRun + f Lnet/minecraft/class_6686$class_6693; comp_215 ifTrue + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6715; method_39095 apply + m ()Lnet/minecraft/class_6686$class_6693; comp_215 ifTrue + m ()Lnet/minecraft/class_6686$class_6708; comp_216 thenRun + m (Lnet/minecraft/class_6686$class_6693;Lnet/minecraft/class_6686$class_6708;)V + p 1 ifTrue + p 2 thenRun +c net/minecraft/class_6686$class_6713 net/minecraft/world/gen/surfacebuilder/MaterialRules$StoneDepthMaterialCondition + f Lnet/minecraft/class_7243; field_35257 CODEC + f Lnet/minecraft/class_5932; comp_212 surfaceType + f I comp_276 offset + f I comp_277 secondaryDepthRange + f Z comp_211 addSurfaceDepth + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6692; method_39090 apply + m ()I comp_276 offset + m ()I comp_277 secondaryDepthRange + m ()Lnet/minecraft/class_5932; comp_212 surfaceType + m ()Z comp_211 addSurfaceDepth + m (IZILnet/minecraft/class_5932;)V + p 1 offset + p 2 addSurfaceDepth + p 3 secondaryDepthRange + p 4 surfaceType +c net/minecraft/class_6686$class_6713$class_6714 net/minecraft/world/gen/surfacebuilder/MaterialRules$StoneDepthMaterialCondition$StoneDepthPredicate +c net/minecraft/class_6686$class_6712 net/minecraft/world/gen/surfacebuilder/MaterialRules$SteepMaterialCondition + f Lnet/minecraft/class_7243; field_35255 CODEC + f Lnet/minecraft/class_6686$class_6712; field_35254 INSTANCE + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6692; method_39087 apply + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context +c net/minecraft/class_6686$class_6715 net/minecraft/world/gen/surfacebuilder/MaterialRules$BlockStateRule + c Returns a {@link BlockState} to generate at a given position, or {@code null}. + m (III)Lnet/minecraft/class_2680; tryApply tryApply + p 1 x + p 2 y + p 3 z +c net/minecraft/class_6686$class_6711 net/minecraft/world/gen/surfacebuilder/MaterialRules$SimpleBlockStateRule + c Always returns the given {@link BlockState}. + f Lnet/minecraft/class_2680; comp_210 state + m ()Lnet/minecraft/class_2680; comp_210 state + m (Lnet/minecraft/class_2680;)V + p 1 state +c net/minecraft/class_6686$class_6710 net/minecraft/world/gen/surfacebuilder/MaterialRules$SequenceMaterialRule + f Lnet/minecraft/class_7243; field_35253 CODEC + f Ljava/util/List; comp_209 sequence + m (Lnet/minecraft/class_6686$class_6694;)Lnet/minecraft/class_6686$class_6715; method_39086 apply + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context + m ()Ljava/util/List; comp_209 sequence + m (Ljava/util/List;)V + p 1 sequence +c net/minecraft/class_5356 net/minecraft/entity/ai/brain/sensor/NearestVisibleAdultSensor + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_6670;)V method_29532 method_29532 + p 2 targetCache + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_29528 method_29528 + p 1 target + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_6670;)V method_29529 find + p 2 targetCache + p 1 entity +c net/minecraft/class_6650 net/minecraft/world/gen/blockpredicate/MatchingFluidsBlockPredicate + f Lnet/minecraft/class_6885; field_35066 fluids + f Lcom/mojang/serialization/MapCodec; field_35065 CODEC + m (Lnet/minecraft/class_2382;Lnet/minecraft/class_6885;)V + p 2 fluids + p 1 offset + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38898 method_38898 + p 0 instance + m (Lnet/minecraft/class_6650;)Lnet/minecraft/class_6885; method_38900 method_38900 + p 0 predicate +c net/minecraft/class_10804 net/minecraft/client/render/model/json/ModelVariantOperator + f Lnet/minecraft/class_10804$class_10805; field_56936 ROTATION_X + f Lnet/minecraft/class_10804$class_10805; field_56937 ROTATION_Y + f Lnet/minecraft/class_10804$class_10805; field_56938 MODEL + f Lnet/minecraft/class_10804$class_10805; field_64587 ROTATION_Z + f Lnet/minecraft/class_10804$class_10805; field_56939 UV_LOCK + m (Lnet/minecraft/class_10804;)Lnet/minecraft/class_10804; then then + p 1 variant + m (Lnet/minecraft/class_10804;Lnet/minecraft/class_813;)Lnet/minecraft/class_813; method_67948 method_67948 + p 2 variantx +c net/minecraft/class_10804$class_10805 net/minecraft/client/render/model/json/ModelVariantOperator$Settings + m (Ljava/lang/Object;)Lnet/minecraft/class_10804; withValue withValue + p 1 value + m (Lnet/minecraft/class_813;Ljava/lang/Object;)Lnet/minecraft/class_813; apply apply + p 2 value + p 1 variant + m (Ljava/lang/Object;Lnet/minecraft/class_813;)Lnet/minecraft/class_813; method_67949 method_67949 + p 2 setting +c net/minecraft/class_7981 net/minecraft/client/session/telemetry/WorldLoadTimesEvent + f Ljava/time/Duration; field_41520 worldLoadTime + f Z field_41519 newWorld + m (ZLjava/time/Duration;)V + p 1 newWorld + p 2 worldLoadTime + m (Lnet/minecraft/class_7965;)V method_47981 send + p 1 sender + m (Lnet/minecraft/class_7973$class_7974;)V method_47796 method_47796 + p 1 builder +c net/minecraft/class_6651 net/minecraft/world/gen/blockpredicate/NotBlockPredicate + f Lnet/minecraft/class_6646; field_35069 predicate + f Lcom/mojang/serialization/MapCodec; field_35068 CODEC + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)Z method_38901 test + m (Lnet/minecraft/class_6651;)Lnet/minecraft/class_6646; method_38903 method_38903 + p 0 predicate + m (Lnet/minecraft/class_6646;)V + p 1 predicate + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38902 method_38902 + p 0 instance + m (Ljava/lang/Object;Ljava/lang/Object;)Z test test + p 1 world + p 2 pos +c net/minecraft/class_7982 net/minecraft/client/session/telemetry/WorldUnloadedEvent + f I field_41712 ABSENT_LAST_TICK + f Ljava/util/Optional; field_41521 startTime + f J field_41523 lastTick + f J field_41522 ticksSinceLoad + m (Lnet/minecraft/class_7965;)V method_47786 send + p 1 sender + m (J)V method_47798 setTick + p 1 tick + m (Ljava/time/Instant;Lnet/minecraft/class_7973$class_7974;)V method_47801 method_47801 + p 2 builder + m (Ljava/time/Instant;)I method_47800 getSecondsSinceLoad + p 1 startTime + m ()V method_47982 start + m (Lnet/minecraft/class_7965;Ljava/time/Instant;)V method_47799 method_47799 + p 2 startTime +c net/minecraft/class_10802 net/minecraft/client/render/model/UnbakedGeometry + f Ljava/util/List; comp_3753 elements + m (Ljava/util/List;Lnet/minecraft/class_10419;Lnet/minecraft/class_7775;Lnet/minecraft/class_3665;Lnet/minecraft/class_10813;)Lnet/minecraft/class_10817; method_67934 bakeGeometry + p 0 elements + p 3 settings + p 4 model + p 1 textures + p 2 baker + m ()Ljava/util/List; comp_3753 elements + m (Ljava/util/List;)V + p 1 elements +c net/minecraft/class_10809 net/minecraft/client/render/model/ModelSettings + f Lnet/minecraft/class_809; comp_3768 transforms + f Lnet/minecraft/class_1058; comp_3767 particleIcon + f Z comp_3766 usesBlockLight + m (Lnet/minecraft/class_7775;Lnet/minecraft/class_10819;Lnet/minecraft/class_10419;)Lnet/minecraft/class_10809; method_68001 resolveSettings + p 0 baker + p 1 model + p 2 textures + m (Lnet/minecraft/class_10444$class_10446;Lnet/minecraft/class_811;)V method_68000 addSettings + p 1 state + p 2 mode + m ()Z comp_3766 usesBlockLight + m ()Lnet/minecraft/class_1058; comp_3767 particleIcon + m ()Lnet/minecraft/class_809; comp_3768 transforms + m (ZLnet/minecraft/class_1058;Lnet/minecraft/class_809;)V + p 1 usesBlockLight + p 2 particleIcon + p 3 transforms +c net/minecraft/class_10806 net/minecraft/client/render/model/json/MultipartModelCombinedCondition + f Ljava/util/List; comp_3759 terms + f Lnet/minecraft/class_10806$class_4920; comp_3758 operation + m (Lnet/minecraft/class_2689;Lnet/minecraft/class_815;)Ljava/util/function/Predicate; method_67950 method_67950 + p 1 condition + m ()Lnet/minecraft/class_10806$class_4920; comp_3758 operation + m ()Ljava/util/List; comp_3759 terms + m (Lnet/minecraft/class_10806$class_4920;Ljava/util/List;)V + p 1 operation + p 2 terms +c net/minecraft/class_10806$class_4920 net/minecraft/client/render/model/json/MultipartModelCombinedCondition$LogicalOperator + f Ljava/lang/String; field_22852 name + f Lcom/mojang/serialization/Codec; field_56941 CODEC + f Lnet/minecraft/class_10806$class_4920; field_22851 OR + f Lnet/minecraft/class_10806$class_4920; field_22850 AND + m (Ljava/util/List;)Ljava/util/function/Predicate; method_67951 apply + p 1 conditions + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_6658 net/minecraft/world/gen/placementmodifier/BlockFilterPlacementModifier + f Lcom/mojang/serialization/MapCodec; field_35075 MODIFIER_CODEC + f Lnet/minecraft/class_6646; field_35076 predicate + m (Lnet/minecraft/class_6646;)Lnet/minecraft/class_6658; method_39618 of + p 0 predicate + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38916 method_38916 + p 0 instance + m (Lnet/minecraft/class_6646;)V + p 1 predicate + m (Lnet/minecraft/class_6658;)Lnet/minecraft/class_6646; method_38917 method_38917 + p 0 placementModifier +c net/minecraft/class_5326 net/minecraft/entity/ai/brain/task/WorkStationCompetitionTask + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_1309;)Z method_47012 method_47012 + p 1 mob + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47009 method_47009 + p 2 mobs + p 1 jobSite + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_47010 method_47010 + p 5 time + p 3 world + p 4 entity + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_6880;)Z method_29253 isCompletedWorkStation + p 0 poiType + p 1 profession + m (Lnet/minecraft/class_4208;Lnet/minecraft/class_6880;Lnet/minecraft/class_1646;)Z method_47013 method_47013 + p 2 villager + m (Lnet/minecraft/class_4208;Lnet/minecraft/class_6880;Lnet/minecraft/class_1646;)Z method_29257 isUsingWorkStationAt + p 2 villager + p 1 poiType + p 0 pos + m (Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47008 method_47008 + p 0 context + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_1646;)Lnet/minecraft/class_1646; method_29255 keepJobSiteForMoreExperiencedVillager + p 1 second + p 0 first + m ()Lnet/minecraft/class_7893; method_47006 create + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_1646; method_47007 method_47007 + p 0 villager + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_1646;Lnet/minecraft/class_4208;Lnet/minecraft/class_6880;)V method_47011 method_47011 + p 4 poiType +c net/minecraft/class_5325 net/minecraft/entity/ai/brain/task/WalkTowardsJobSiteTask + f I field_30122 RUN_TIME + f F field_25155 speed + m (Lnet/minecraft/class_6880;)Z method_29783 method_29783 + p 0 poiType + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4208;)V method_29524 method_29524 + p 1 pos + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_29525 finishRunning + m (F)V + p 1 speed + m (Lnet/minecraft/class_4168;)Ljava/lang/Boolean; method_29250 method_29250 + p 0 activity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_29252 keepRunning + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)Z method_29251 shouldRun + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_29523 shouldKeepRunning +c net/minecraft/class_5328 net/minecraft/item/ItemUsage + c Utility methods related to item usage. + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;Z)Lnet/minecraft/class_1799; method_30270 exchangeStack + c {@return the stack to put in the player's hand after exchanging stacks}\n\n

Exchanging stacks causes the input stack to be decremented and the output stack to\nbe inserted to the player's inventory (or dropped if it cannot be inserted.)\nFor example, milking a cow exchanges one empty bucket and one milk bucket.\nIf {@code creativeOverride} is {@code true} and the player is in creative mode,\nthe player only receives the new stack when they do not have the output stack.\n\n@see #exchangeStack(ItemStack, PlayerEntity, ItemStack) + p 2 outputStack + p 3 creativeOverride + p 0 inputStack + p 1 player + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_29282 consumeHeldItem + c Consumes the item that {@code player} holds. This should be called inside\n{@link Item#use} for consumable items, such as milk bucket.\n\n@return the action result of consuming + p 2 hand + p 1 player + p 0 world + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_30012 exchangeStack + c {@return the stack to put in the player's hand after exchanging stacks}\n\n

Exchanging stacks causes the input stack to be decremented and the output stack to\nbe inserted to the player's inventory (or dropped if it cannot be inserted.)\nFor example, milking a cow exchanges one empty bucket and one milk bucket.\nIf the player is in creative mode, the player only receives the new stack when\nthey do not have the output stack.\n\n@see #exchangeStack(ItemStack, PlayerEntity, ItemStack, boolean) + p 2 outputStack + p 0 inputStack + p 1 player + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1542;Lnet/minecraft/class_1799;)V method_33265 method_33265 + p 2 stack + m (Lnet/minecraft/class_1542;Ljava/lang/Iterable;)V method_33263 spawnItemContents + c Spawns item entity's contents at the item entity's position. This should be\ncalled inside {@link Item#onItemEntityDestroyed} for items that hold other items,\nsuch as shulker boxes.\n\n@see Item#onItemEntityDestroyed + p 1 contents + p 0 itemEntity +c net/minecraft/class_6657 net/minecraft/unused/packageinfo/PackageInfo6657 +c net/minecraft/class_5327 net/minecraft/entity/ai/brain/task/TakeJobSiteTask + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;FLnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)Z method_47211 method_47211 + p 6 world + p 8 time + p 7 entity + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_1309;)Z method_47213 method_47213 + p 1 mob + m (Lnet/minecraft/class_1314;Lnet/minecraft/class_2338;Lnet/minecraft/class_4158;)Z method_29262 canReachJobSite + p 2 poiType + p 0 entity + p 1 pos + m (FLnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47208 method_47208 + p 1 context + m (Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_2338;FLnet/minecraft/class_3218;Lnet/minecraft/class_1646;)V method_47212 method_47212 + p 6 villager + m (F)Lnet/minecraft/class_7893; method_47207 create + p 0 speed + m (Ljava/util/Optional;Lnet/minecraft/class_2338;Lnet/minecraft/class_1646;)Z method_47214 method_47214 + p 2 villager + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1646;Lnet/minecraft/class_2338;)Z method_29260 canUseJobSite + p 2 pos + p 0 poiType + p 1 villager + m (Lnet/minecraft/class_1309;)Lnet/minecraft/class_1646; method_47209 method_47209 + p 0 villager + m (Lnet/minecraft/class_7898$class_7900;FLnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47210 method_47210 + p 2 potentialJobSite + p 3 jobSite + p 4 mobs + p 5 walkTarget + p 6 lookTarget +c net/minecraft/class_6654 net/minecraft/world/gen/feature/BlockColumnFeature + m ([IIIZ)V method_38906 adjustLayerHeights + p 2 actualHeight + p 3 prioritizeTip + p 0 layerHeights + p 1 expectedHeight +c net/minecraft/class_5322 net/minecraft/server/network/SpawnLocating + f Lnet/minecraft/class_4048; field_61084 PLAYER_DIMENSIONS + f Lnet/minecraft/class_3218; field_61086 world + f Lnet/minecraft/class_2338; field_61087 spawnPos + f I field_61090 shiftAmount + f I field_61092 attempt + f I field_61091 offset + f Ljava/util/concurrent/CompletableFuture; field_61093 future + f I field_61085 MAX_SPAWN_AREA + f I field_61089 spawnArea + f I field_61088 spawnRadius + m (I)I method_72256 calculateShiftAmount + p 0 spawnArea + m (Lnet/minecraft/class_1941;Lnet/minecraft/class_2338;)Lnet/minecraft/class_243; method_72260 findPosInColumn + p 0 world + p 1 pos + m (Lnet/minecraft/class_1941;Lnet/minecraft/class_2338;)Z method_72265 isSpaceEmpty + p 1 pos + p 0 world + m (IIILjava/util/function/Supplier;)V method_72258 scheduleSearch + p 1 x + p 2 z + p 3 index + p 4 spawnFinder + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;I)V + p 3 spawnRadius + p 2 spawnPos + p 1 world + m (Lnet/minecraft/class_3218;II)Lnet/minecraft/class_2338; method_29194 findOverworldSpawn + p 0 world + p 1 x + p 2 z + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1923;)Lnet/minecraft/class_2338; method_29196 findServerSpawnPoint + p 1 chunkPos + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Ljava/util/concurrent/CompletableFuture; method_72259 locateSpawnPos + p 1 spawnPos + p 0 world + m (Ljava/util/function/Supplier;IIILjava/lang/Object;Ljava/lang/Throwable;)V method_72261 method_72261 + p 6 throwable + p 5 object + m ()V method_72255 scheduleNextSearch +c net/minecraft/class_6655 net/minecraft/world/gen/feature/BlockColumnFeatureConfig + f Lcom/mojang/serialization/Codec; field_35073 CODEC + f Lnet/minecraft/class_6646; comp_168 allowedPlacement + f Lnet/minecraft/class_2350; comp_144 direction + f Ljava/util/List; comp_143 layers + f Z comp_146 prioritizeTip + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38909 method_38909 + p 0 instance + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_4651;)Lnet/minecraft/class_6655$class_6656; method_38908 createLayer + p 0 height + p 1 state + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_4651;)Lnet/minecraft/class_6655; method_38910 create + p 0 height + p 1 state + m ()Lnet/minecraft/class_2350; comp_144 direction + m ()Lnet/minecraft/class_6646; comp_168 allowedPlacement + m ()Ljava/util/List; comp_143 layers + m ()Z comp_146 prioritizeTip + m (Ljava/util/List;Lnet/minecraft/class_2350;Lnet/minecraft/class_6646;Z)V + p 1 layers + p 2 direction + p 3 allowedPlacement + p 4 prioritizeTip +c net/minecraft/class_6655$class_6656 net/minecraft/world/gen/feature/BlockColumnFeatureConfig$Layer + f Lcom/mojang/serialization/Codec; field_35074 CODEC + f Lnet/minecraft/class_6017; comp_147 height + f Lnet/minecraft/class_4651; comp_148 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38911 method_38911 + p 0 instance + m ()Lnet/minecraft/class_6017; comp_147 height + m ()Lnet/minecraft/class_4651; comp_148 state + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_4651;)V + p 1 height + p 2 state +c net/minecraft/class_5321 net/minecraft/registry/RegistryKey + c Represents a key for a value in a registry in a context where a\nroot registry is available.\n\n@param the type of the value\n@see Registries#ROOT + f Lnet/minecraft/class_2960; field_25137 registry + c The identifier of the registry in the root registry. + f Lnet/minecraft/class_2960; field_25138 value + c The identifier of the value in the registry specified by {@link #registry}. + f Ljava/util/concurrent/ConcurrentMap; field_25136 INSTANCES + c A cache of all registry keys ever created. + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_29179 of + c Creates a registry key for a value in a registry with a registry key for\nthe value-holding registry in the root registry and an identifier of the\nvalue.\n\n

You can call it like {@code RegistryKey.of(Registry.ITEM_KEY, new Identifier("iron_ingot"))}\nto create a registry key for iron ingot.\n\n@param the type of the value + p 1 value + c the identifier of the value + p 0 registry + c the registry key of the registry in the root registry + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_29180 ofRegistry + c Creates a registry key for a registry in the root registry (registry of\nall registries) with an identifier for the registry.\n\n

You can call it like {@code RegistryKey.of(new Identifier("block"))}\nto create a registry key for the block registry.\n\n@param the element type of the registry + p 0 registry + c the identifier of the registry + m ()Lnet/minecraft/class_2960; method_41185 getRegistry + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_56039 method_56039 + p 1 id + m ()Lnet/minecraft/class_2960; method_29177 getValue + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V + p 1 registry + p 2 value + m (Lnet/minecraft/class_5321;)Z method_31163 isOf + c Returns whether this registry key belongs to the given registry (according to its type, not whether the registry actually contains this key). + p 1 registry + c the key of the registry that this registry key should be inside + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_9139; method_56038 createPacketCodec + p 0 registry + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_29181 of + p 0 registry + p 1 value + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_39752 tryCast + c {@return {@code Optional.of(this)} if the key is of {@code registryRef},\notherwise {@link Optional#empty}}\n\n@apiNote This can be used to safely cast an unknown key to {@code RegistryKey}\nby passing the registry {@code E}. + p 1 registryRef + m ()Lnet/minecraft/class_5321; method_58273 getRegistryRef + m (Lnet/minecraft/class_5321;)Lcom/mojang/serialization/Codec; method_39154 createCodec + p 0 registry + m (Lnet/minecraft/class_5321$class_7892;)Lnet/minecraft/class_5321; method_29182 method_29182 + p 0 pair + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_39155 method_39155 + p 1 id +c net/minecraft/class_5321$class_7892 net/minecraft/registry/RegistryKey$RegistryIdPair + f Lnet/minecraft/class_2960; comp_1150 id + f Lnet/minecraft/class_2960; comp_1149 registry + m ()Lnet/minecraft/class_2960; comp_1150 id + m ()Lnet/minecraft/class_2960; comp_1149 registry + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_2960;)V + p 1 registry + p 2 id +c net/minecraft/class_6652 net/minecraft/world/gen/blockpredicate/ReplaceableBlockPredicate + f Lcom/mojang/serialization/MapCodec; field_35071 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38905 method_38905 + p 0 instance +c net/minecraft/class_7983 net/minecraft/unused/packageinfo/PackageInfo7983 +c net/minecraft/class_7984 net/minecraft/unused/packageinfo/PackageInfo7984 +c net/minecraft/class_6653 net/minecraft/unused/packageinfo/PackageInfo6653 +c net/minecraft/class_6649 net/minecraft/world/gen/blockpredicate/MatchingBlocksBlockPredicate + f Lnet/minecraft/class_6885; field_35063 blocks + f Lcom/mojang/serialization/MapCodec; field_35062 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38894 method_38894 + p 0 instance + m (Lnet/minecraft/class_2382;Lnet/minecraft/class_6885;)V + p 2 blocks + p 1 offset + m (Lnet/minecraft/class_6649;)Lnet/minecraft/class_6885; method_38896 method_38896 + p 0 predicate +c net/minecraft/class_10811 net/minecraft/client/render/model/BlockStateManagers + f Ljava/util/Map; field_56985 STATIC_MANAGERS + f Lnet/minecraft/class_2689; field_56982 GLOW_ITEM_FRAME + f Lnet/minecraft/class_2689; field_56981 ITEM_FRAME + f Lnet/minecraft/class_2960; field_56984 ITEM_FRAME_ID + f Lnet/minecraft/class_2960; field_56983 GLOW_ITEM_FRAME_ID + m ()Ljava/util/function/Function; method_68013 createIdToManagerMapper + m ()Lnet/minecraft/class_2689; method_68015 createItemFrameStateManager + m (ZZ)Lnet/minecraft/class_2680; method_68014 getStateForItemFrame + p 1 hasMap + p 0 hasGlow +c net/minecraft/class_6661 net/minecraft/world/gen/placementmodifier/AbstractConditionalPlacementModifier + m (Lnet/minecraft/class_5444;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Z method_38918 shouldPlace + p 3 pos + p 1 context + p 2 random +c net/minecraft/class_6662 net/minecraft/loot/function/SetPotionLootFunction + f Lcom/mojang/serialization/MapCodec; field_45850 CODEC + f Lnet/minecraft/class_6880; field_35080 potion + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_120$class_121; method_38927 builder + p 0 potion + m (Lnet/minecraft/class_6662;)Lnet/minecraft/class_6880; method_53393 method_53393 + p 0 function + m (Lnet/minecraft/class_6880;Ljava/util/List;)Lnet/minecraft/class_117; method_38928 method_38928 + p 1 conditions + m (Ljava/util/List;Lnet/minecraft/class_6880;)V + p 2 potion + p 1 conditions + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53394 method_53394 + p 0 instance +c net/minecraft/class_6669 net/minecraft/datafixer/mapping/LegacyBiomeMapping + f Lcom/google/common/collect/ImmutableMap; field_35100 MAP +c net/minecraft/class_6667 net/minecraft/unused/packageinfo/PackageInfo6667 +c net/minecraft/class_5339 net/minecraft/loot/function/LootFunctionType + f Lcom/mojang/serialization/MapCodec; comp_1858 codec + m ()Lcom/mojang/serialization/MapCodec; comp_1858 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec +c net/minecraft/class_4008 net/minecraft/client/resource/SplashTextResourceSupplier + f Lnet/minecraft/class_2583; field_63918 SPLASH_TEXT_STYLE + f Lnet/minecraft/class_5819; field_17905 RANDOM + f Lnet/minecraft/class_2960; field_17904 RESOURCE_ID + f Lnet/minecraft/class_320; field_18934 session + f Ljava/util/List; field_17906 splashTexts + f Lnet/minecraft/class_2561; field_63917 OOOOO_O_O_OOOOO__SPOOKY_ + f Lnet/minecraft/class_2561; field_63916 HAPPY_NEW_YEAR_ + f Lnet/minecraft/class_2561; field_63915 MERRY_X_MAS_ + m (Lnet/minecraft/class_320;)V + p 1 session + m (Ljava/lang/String;)Z method_18664 method_18664 + p 0 splashText + m (Ljava/lang/String;)Lnet/minecraft/class_2561; method_75839 create + p 0 text + m (Ljava/util/List;Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)V method_18175 apply + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)Ljava/util/List; method_18176 prepare + m ()Lnet/minecraft/class_8519; method_18174 get +c net/minecraft/class_5338 net/minecraft/loot/entry/LootPoolEntryType + f Lcom/mojang/serialization/MapCodec; comp_1847 codec + m ()Lcom/mojang/serialization/MapCodec; comp_1847 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec +c net/minecraft/class_7999 net/minecraft/client/gui/tooltip/FocusedTooltipPositioner + f Lnet/minecraft/class_8030; field_46722 focus + m (Lnet/minecraft/class_8030;)V + p 1 focus +c net/minecraft/class_4002 net/minecraft/client/particle/SpriteProvider + m ()Lnet/minecraft/class_1058; method_74304 getFirst + m (Lnet/minecraft/class_5819;)Lnet/minecraft/class_1058; method_18139 getSprite + p 1 random + m (II)Lnet/minecraft/class_1058; method_18138 getSprite + p 2 maxAge + p 1 age +c net/minecraft/class_6666 net/minecraft/unused/packageinfo/PackageInfo6666 +c net/minecraft/class_4004 net/minecraft/client/render/entity/feature/VillagerHeldItemFeatureRenderer + m (Lnet/minecraft/class_10427;Lnet/minecraft/class_4587;)V method_65251 applyTransforms + p 1 state + p 2 matrices + m (Lnet/minecraft/class_3883;)V + p 1 context + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10427;FF)V method_4208 render +c net/minecraft/class_6664 net/minecraft/unused/packageinfo/PackageInfo6664 +c net/minecraft/class_7995 net/minecraft/util/function/ValueLists + m (I[Ljava/lang/Object;Ljava/lang/Object;I)Ljava/lang/Object; method_47911 method_47911 + p 3 index + m (Ljava/util/function/ToIntFunction;[Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/function/IntFunction; method_47915 createIndexToValueFunction + p 0 valueToIndexFunction + p 2 fallback + p 1 values + m (Ljava/util/function/ToIntFunction;[Ljava/lang/Object;)[Ljava/lang/Object; method_47917 validate + p 0 valueToIndexFunction + p 1 values + m ([Ljava/lang/Object;II)Ljava/lang/Object; method_47918 method_47918 + p 2 index + m (Ljava/util/function/IntFunction;Ljava/lang/Object;I)Ljava/lang/Object; method_47912 method_47912 + p 2 index + m (Ljava/util/function/ToIntFunction;[Ljava/lang/Object;)Ljava/util/function/IntFunction; method_47913 createIndexToValueFunction + p 0 valueToIndexFunction + p 1 values + m (Ljava/util/function/ToIntFunction;[Ljava/lang/Object;Lnet/minecraft/class_7995$class_7996;)Ljava/util/function/IntFunction; method_47914 createIndexToValueFunction + p 2 outOfBoundsHandling + p 0 valueToIndexFunction + p 1 values + m ([Ljava/lang/Object;II)Ljava/lang/Object; method_47916 method_47916 + p 2 index +c net/minecraft/class_7995$class_7996 net/minecraft/util/function/ValueLists$OutOfBoundsHandling + f Lnet/minecraft/class_7995$class_7996; field_41664 ZERO + f Lnet/minecraft/class_7995$class_7996; field_41665 WRAP + f Lnet/minecraft/class_7995$class_7996; field_41666 CLAMP +c net/minecraft/class_5329 net/minecraft/world/BlockCollisionSpliterator + f Lnet/minecraft/class_238; field_25169 box + f Lnet/minecraft/class_3726; field_25170 context + f Lnet/minecraft/class_265; field_25173 boxShape + f Lnet/minecraft/class_1941; field_25174 world + f Lnet/minecraft/class_3980; field_25171 blockIterator + f Ljava/util/function/BiFunction; field_44787 resultFunction + f Lnet/minecraft/class_1922; field_35108 chunk + f Lnet/minecraft/class_2338$class_2339; field_25172 pos + f J field_35109 chunkPos + f Z field_35590 forEntity + m (Lnet/minecraft/class_1941;Lnet/minecraft/class_1297;Lnet/minecraft/class_238;ZLjava/util/function/BiFunction;)V + p 4 forEntity + p 5 resultFunction + p 2 entity + p 3 box + p 1 world + m (Lnet/minecraft/class_1941;Lnet/minecraft/class_3726;Lnet/minecraft/class_238;ZLjava/util/function/BiFunction;)V + p 1 world + p 2 context + p 3 box + p 4 forEntity + p 5 resultFunction + m (II)Lnet/minecraft/class_1922; method_29283 getChunk + p 1 x + p 2 z +c net/minecraft/class_10801 net/minecraft/client/render/model/GeometryBakedModel + f Z comp_3751 useAmbientOcclusion + f Lnet/minecraft/class_1058; comp_3752 particleSprite + f Lorg/slf4j/Logger; field_64586 LOGGER + f Lnet/minecraft/class_10817; comp_3750 quads + m (Lnet/minecraft/class_7775;Lnet/minecraft/class_2960;Lnet/minecraft/class_3665;)Lnet/minecraft/class_10889; method_67931 create + p 2 bakeSettings + p 1 id + p 0 baker + m ()Lnet/minecraft/class_10817; comp_3750 quads + m (Lnet/minecraft/class_10817;ZLnet/minecraft/class_1058;)V + p 1 quads + p 2 useAmbientOcclusion + p 3 particleSprite +c net/minecraft/class_5304 net/minecraft/world/spawner/SpecialSpawner + c Spawns entities in a world.\n\n

A spawner is typically used to spawn entities within a\nspecial context, such as cats in a village or wandering traders.\nThis is different from\n{@link net.minecraft.block.entity.Spawner the mob spawner logic}\nwhich is used for {@link net.minecraft.block.SpawnerBlock the spawner block},\nor the structure spawn conditions (such as guardians) which is defined in\n{@link net.minecraft.world.gen.chunk.ChunkGenerator#getEntitySpawnList}.\nHowever, cats in swamp huts are spawned in both {@link CatSpawner} and\nthe normal structure spawning. + m (Lnet/minecraft/class_3218;Z)V method_6445 spawn + c Spawns entities into a world.\n\n@return the number of entities spawned + p 2 spawnMonsters + c whether monsters should be spawned + p 1 world +c net/minecraft/class_6636 net/minecraft/datafixer/fix/AddFlagIfNotPresentFix + f Ljava/lang/String; field_35009 description + f Z field_35010 value + f Ljava/lang/String; field_35011 key + f Lcom/mojang/datafixers/DSL$TypeReference; field_35012 typeReference + m (Lcom/mojang/datafixers/schemas/Schema;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Z)V + p 1 outputSchema + p 4 value + p 3 key + p 2 typeReference +c net/minecraft/class_6637 net/minecraft/datafixer/fix/ChunkHeightAndBiomeFix + f I field_35020 MIN_CHUNK_SECTION_Y + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_35029 RAW_BIOME_IDS + f Ljava/lang/String; field_35017 NAME + f I field_35019 CHUNK_SECTIONS_IN_NEW_CHUNK + f [Ljava/lang/String; field_35025 HEIGHTMAP_KEYS + f Ljava/util/Set; field_35669 SURFACE_BLOCKS + f Ljava/util/Set; field_35667 STATUSES_TO_SKIP_UPDATE + f Ljava/lang/String; field_35016 PLAINS_ID + f Ljava/lang/String; field_35444 CONTEXT + f I field_35018 CHUNK_SECTIONS_IN_OLD_CHUNK + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38798 fixHeightmaps + p 0 level + m (Lcom/mojang/serialization/Dynamic;ZILorg/apache/commons/lang3/mutable/MutableBoolean;)[Lcom/mojang/serialization/Dynamic; method_38806 fixBiomes + p 3 heightAlreadyUpdated + p 1 overworld + p 0 level + m (ZLjava/util/Set;Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/lang/String;Lorg/apache/commons/lang3/mutable/MutableObject;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38808 method_38808 + p 6 level2 + m (Ljava/util/Map;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_39755 method_39755 + p 2 value + p 1 key + m ([II)I method_38810 method_38810 + p 1 sectionY + m (Ljava/util/Map;Ljava/util/Map;)V method_39757 method_39757 + p 1 indicesMap + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38813 fixPalette + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38796 method_38796 + p 5 chunk + m (IILcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_38794 method_38794 + p 3 mask + m (I)I method_38793 ceilLog2 + p 0 value + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39754 fixUpgradeData + p 0 upgradeData + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39758 method_39758 + p 0 indices + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38812 fixHeightmap + p 0 heightmap + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_38805 fixChunkSectionList + p 0 level + p 1 key + m ([III)I method_38809 method_38809 + p 2 sectionY + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38797 method_38797 + p 4 level + m ([II)I method_38815 method_38815 + p 1 sectionY + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/Integer;)Lcom/mojang/serialization/Dynamic; method_38804 method_38804 + p 1 rawBiomeId + m (Ljava/util/Set;Lcom/mojang/serialization/Dynamic;I[Lcom/mojang/serialization/Dynamic;Lorg/apache/commons/lang3/mutable/MutableObject;Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38800 method_38800 + p 7 sections + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38816 fixPalette + p 0 palette + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38818 method_38818 + p 0 heightmaps + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38802 fixPaletteWithData + p 1 data + p 0 palette + m ([II)I method_39519 getClamped + p 0 is + p 1 index + m (Lcom/mojang/serialization/Dynamic;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)Lcom/mojang/serialization/Dynamic; method_38803 fixBiomes + p 0 level + p 1 biomeGetter + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Set;)Lcom/mojang/serialization/Dynamic; method_39517 fixStatus + p 2 blocks + p 1 level + m (Lcom/mojang/serialization/Dynamic;II)Lcom/mojang/serialization/Dynamic; method_38799 fixCarvingMasks + p 2 oldBottomSectionY + p 1 sectionsPerChunk + p 0 level + m (J)J method_38795 method_38795 + p 0 entry + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;ZZZLjava/util/function/Supplier;)Lcom/mojang/serialization/Dynamic; method_38807 fixLevel + p 0 level + p 2 heightAlreadyUpdated + p 1 overworld + p 3 atNoiseStatus + m (Ljava/util/Map;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;Ljava/lang/Integer;)V method_39756 method_39756 + p 3 index + m ([III)I method_38814 method_38814 + p 2 sectionY + m (Ljava/util/Set;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39518 method_39518 + p 1 status +c net/minecraft/class_7968 net/minecraft/client/session/telemetry/TelemetryLogManager + f Lorg/slf4j/Logger; field_41452 LOGGER + f I field_41454 RETENTION_DAYS + f Lnet/minecraft/class_7929; field_41455 compressor + f Ljava/util/concurrent/CompletableFuture; field_41456 writer + f Ljava/lang/String; field_41453 FILE_EXTENSION + m (Ljava/util/Optional;)V method_47739 method_47739 + p 0 writer + m (Lnet/minecraft/class_7929;)V + p 1 compressor + m (Ljava/util/Optional;)Ljava/util/Optional; method_47742 method_47742 + p 0 writer + m (Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_47738 create + p 0 directory + m ()Ljava/util/concurrent/CompletableFuture; method_47737 getLogger +c net/minecraft/class_6634 net/minecraft/server/command/ChaseCommand + f I field_35003 INTERVAL + f I field_35002 DEFAULT_PORT + f Lorg/slf4j/Logger; field_44981 LOGGER + f Ljava/lang/String; field_35000 LOCALHOST + f Lnet/minecraft/class_6632; field_35004 server + f Lcom/google/common/collect/BiMap; field_34999 DIMENSIONS + f Lnet/minecraft/class_6630; field_35005 client + f Ljava/lang/String; field_35001 BIND_ALL + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38781 method_38781 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38771 method_38771 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38774 method_38774 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38777 method_38777 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_38770 register + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38778 method_38778 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38779 method_38779 + p 0 context + m (Lnet/minecraft/class_2168;)I method_38772 stop + p 0 source + m (Lnet/minecraft/class_2168;Ljava/lang/String;I)I method_38776 startClient + p 0 source + p 1 ip + p 2 port + m (Lnet/minecraft/class_2168;)Z method_38775 isRunning + p 0 source + m (Lnet/minecraft/class_2168;Ljava/lang/String;I)I method_38773 startServer + p 0 source + p 1 ip + p 2 port + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38780 method_38780 + p 0 context +c net/minecraft/class_7965 net/minecraft/client/session/telemetry/TelemetrySender + f Lnet/minecraft/class_7965; field_41434 NOOP + m (Lnet/minecraft/class_7966;Ljava/util/function/Consumer;)V method_47717 method_47717 + p 1 propertyAdder + p 0 eventType + m (Ljava/util/function/Consumer;)Lnet/minecraft/class_7965; decorate decorate + p 1 decorationAdder + m (Ljava/util/function/Consumer;Lnet/minecraft/class_7966;Ljava/util/function/Consumer;)V method_47718 method_47718 + p 3 propertyAdder + p 2 eventType + m (Ljava/util/function/Consumer;Ljava/util/function/Consumer;Lnet/minecraft/class_7973$class_7974;)V method_47719 method_47719 + p 2 builder + m (Lnet/minecraft/class_7966;Ljava/util/function/Consumer;)V send send + p 1 eventType + p 2 propertyAdder +c net/minecraft/class_7966 net/minecraft/client/session/telemetry/TelemetryEventType + f Z field_41446 optional + f Lnet/minecraft/class_7966; field_44833 GAME_LOAD_TIMES + f Ljava/util/List; field_41442 REQUIRED_PROPERTIES + f Lnet/minecraft/class_7966; field_41438 WORLD_LOAD_TIMES + f Lcom/mojang/serialization/Codec; field_41435 CODEC + f Ljava/util/Map; field_41440 TYPES + f Ljava/lang/String; field_41443 id + f Lnet/minecraft/class_7966; field_41436 WORLD_LOADED + f Lnet/minecraft/class_7966; field_44832 ADVANCEMENT_MADE + f Lnet/minecraft/class_7966; field_41439 WORLD_UNLOADED + f Ljava/util/List; field_41441 BASIC_PROPERTIES + f Ljava/lang/String; field_41444 exportKey + f Ljava/util/List; field_41445 properties + f Lcom/mojang/serialization/MapCodec; field_41447 codec + f Lnet/minecraft/class_7966; field_41437 PERFORMANCE_METRICS + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_47727 method_47727 + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/class_5250; method_47724 getText + p 1 key + m ()Lnet/minecraft/class_5250; method_47730 getTitle + m ()Ljava/lang/String; method_47720 getId + m (Lnet/minecraft/class_7969;)Z method_47722 hasProperty + p 1 property + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_7966$class_7967; method_47725 builder + p 0 id + p 1 sentEventId + m ()Ljava/util/List; method_47732 getTypes + m ()Ljava/util/List; method_47726 getProperties + m ()Z method_47729 isOptional + m (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Z)V + p 4 optional + p 3 properties + p 2 exportKey + p 1 id + m (Lcom/mojang/authlib/minecraft/TelemetrySession;Lnet/minecraft/class_7973;)Lcom/mojang/authlib/minecraft/TelemetryEvent; method_47721 createEvent + p 1 session + p 2 properties + m ()Lcom/mojang/serialization/MapCodec; method_47728 getCodec + m ()Lnet/minecraft/class_5250; method_47731 getDescription + m (Lnet/minecraft/class_7973;)Lnet/minecraft/class_7962; method_47723 method_47723 + p 1 map +c net/minecraft/class_7966$class_7967 net/minecraft/client/session/telemetry/TelemetryEventType$Builder + f Ljava/lang/String; field_41448 id + f Z field_41451 optional + f Ljava/lang/String; field_41449 exportKey + f Ljava/util/List; field_41450 properties + m (Ljava/util/List;)Lnet/minecraft/class_7966$class_7967; method_47735 properties + p 1 properties + m (Lnet/minecraft/class_7969;)Lnet/minecraft/class_7966$class_7967; method_47734 properties + p 1 property + m ()Lnet/minecraft/class_7966$class_7967; method_47733 optional + m ()Lnet/minecraft/class_7966; method_47736 build + m (Ljava/lang/String;Ljava/lang/String;)V + p 2 exportKey + p 1 id +c net/minecraft/class_6632 net/minecraft/server/chase/ChaseServer + f I field_34993 port + f Ljava/lang/String; field_34992 ip + f I field_34995 interval + f Ljava/util/concurrent/CopyOnWriteArrayList; field_34998 clientSockets + f Lorg/slf4j/Logger; field_34991 LOGGER + f Z field_34996 running + f Ljava/net/ServerSocket; field_34997 socket + f Lnet/minecraft/class_3324; field_34994 playerManager + m (Ljava/lang/String;ILnet/minecraft/class_3324;I)V + p 1 ip + p 2 port + p 3 playerManager + p 4 interval + m ()Lnet/minecraft/class_6632$class_6668; method_38959 getTeleportPosition + m ()V method_38766 stop + m ()V method_38767 runSender + m ()V method_38768 runAcceptor + m ()V method_38764 start +c net/minecraft/class_6632$class_6668 net/minecraft/server/chase/ChaseServer$TeleportPos + f Ljava/lang/String; comp_160 dimensionName + f D comp_161 x + f D comp_162 y + f F comp_164 yaw + f D comp_163 z + f F comp_165 pitch + m ()Ljava/lang/String; comp_160 dimensionName + m ()D comp_161 x + m ()Ljava/lang/String; method_38960 getTeleportCommand + m ()D comp_162 y + m ()F comp_164 yaw + m ()D comp_163 z + m ()F comp_165 pitch + m (Ljava/lang/String;DDDFF)V + p 1 dimensionName + p 2 x + p 4 y + p 6 z + p 8 yaw + p 9 pitch +c net/minecraft/class_7963 net/minecraft/client/session/telemetry/ThreadedLogWriter + f Lnet/minecraft/class_10176; field_54195 executor + f Lorg/slf4j/Logger; field_41431 LOGGER + f Lnet/minecraft/class_7935; field_41432 writer + m ()Lnet/minecraft/class_7964; method_47713 getLogger + m (Lnet/minecraft/class_7962;)V method_47714 method_47714 + p 1 event + m (Ljava/nio/channels/FileChannel;Ljava/util/concurrent/Executor;)V + p 2 executor + p 1 channel +c net/minecraft/class_6633 net/minecraft/unused/packageinfo/PackageInfo6633 +c net/minecraft/class_7964 net/minecraft/client/session/telemetry/TelemetryLogger + m (Lnet/minecraft/class_7962;)V log log + p 1 event +c net/minecraft/class_6630 net/minecraft/server/chase/ChaseClient + f Z field_34988 running + f Ljava/net/Socket; field_34989 socket + f Ljava/lang/String; field_34985 ip + f I field_34984 CONNECTION_RETRY_INTERVAL + f I field_34986 port + f Ljava/lang/Thread; field_34990 thread + f Lorg/slf4j/Logger; field_34983 LOGGER + f Lnet/minecraft/server/MinecraftServer; field_34987 minecraftServer + m (Ljava/util/Scanner;)Ljava/util/Optional; method_38761 getTeleportPos + p 1 scanner + m ()V method_38755 start + m ()V method_38762 run + m (Ljava/util/Scanner;)V method_38757 executeTeleportCommand + p 1 scanner + m (Lnet/minecraft/class_6630$class_6631;)V method_38758 method_38758 + p 1 pos + m (Ljava/lang/String;ILnet/minecraft/server/MinecraftServer;)V + p 3 minecraftServer + p 2 port + p 1 ip + m (Ljava/lang/String;)V method_38760 executeCommand + p 1 command + m (Ljava/lang/String;)V method_38756 parseMessage + p 1 message + m ()V method_38759 stop +c net/minecraft/class_6630$class_6631 net/minecraft/server/chase/ChaseClient$TeleportPos + f Lnet/minecraft/class_241; comp_140 rot + f Lnet/minecraft/class_5321; comp_138 dimension + f Lnet/minecraft/class_243; comp_139 pos + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_243;Lnet/minecraft/class_241;)V + p 3 rot + p 2 pos + p 1 dimension + m ()Lnet/minecraft/class_241; comp_140 rot + m ()Lnet/minecraft/class_5321; comp_138 dimension + m ()Lnet/minecraft/class_243; comp_139 pos +c net/minecraft/class_7961 net/minecraft/unused/packageinfo/PackageInfo7961 +c net/minecraft/class_5301 net/minecraft/datafixer/schema/Schema2551 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 2 entityTypes + p 3 blockEntityTypes + p 1 schema +c net/minecraft/class_7962 net/minecraft/client/session/telemetry/SentTelemetryEvent + f Lcom/mojang/serialization/Codec; field_41430 CODEC + f Lnet/minecraft/class_7966; comp_1169 type + f Lnet/minecraft/class_7973; comp_1170 properties + m (Lcom/mojang/authlib/minecraft/TelemetrySession;)Lcom/mojang/authlib/minecraft/TelemetryEvent; method_47711 createEvent + p 1 session + m (Lnet/minecraft/class_7966;Lnet/minecraft/class_7969;)V method_47712 method_47712 + p 1 property + m ()Lnet/minecraft/class_7973; comp_1170 properties + m ()Lnet/minecraft/class_7966; comp_1169 type + m (Lnet/minecraft/class_7966;Lnet/minecraft/class_7973;)V + p 1 type + p 2 properties +c net/minecraft/class_6627 net/minecraft/unused/packageinfo/PackageInfo6627 +c net/minecraft/class_7958 net/minecraft/client/texture/atlas/AtlasSprite + f Lnet/minecraft/class_2960; field_41416 id + f Ljava/util/concurrent/atomic/AtomicInteger; field_41419 regionCount + f Lnet/minecraft/class_3298; field_41417 resource + f Ljava/util/concurrent/atomic/AtomicReference; field_41418 image + m ()V method_47698 close + m ()Lnet/minecraft/class_1011; method_47697 read + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3298;I)V + p 2 resource + p 3 regionCount + p 1 id +c net/minecraft/class_6628 net/minecraft/client/session/telemetry/TelemetryManager + f Lcom/mojang/authlib/minecraft/UserApiService; field_41426 userApiService + f Ljava/util/concurrent/CompletableFuture; field_41429 logManager + f Ljava/util/function/Supplier; field_44831 lazySenderSupplier + f Ljava/util/concurrent/atomic/AtomicInteger; field_34948 NEXT_WORKER_ID + f Ljava/util/concurrent/Executor; field_34949 EXECUTOR + f Lnet/minecraft/class_310; field_47702 client + f Ljava/nio/file/Path; field_41428 logDirectory + f Lnet/minecraft/class_7973; field_41427 propertyMap + m ()Ljava/nio/file/Path; method_47701 getLogManager + m (Lnet/minecraft/class_310;Lcom/mojang/authlib/minecraft/UserApiService;Lnet/minecraft/class_320;)V + p 2 userApiService + p 3 session + p 1 client + m (Ljava/lang/Runnable;)Ljava/lang/Thread; method_38731 method_38731 + p 0 runnable + m ()Lnet/minecraft/class_7965; method_47707 computeSender + m ()Lnet/minecraft/class_7965; method_51796 getSender + m (Lnet/minecraft/class_7962;Lcom/mojang/authlib/minecraft/TelemetrySession;Ljava/util/Optional;)V method_47702 method_47702 + p 2 logger + m (Ljava/util/Optional;)V method_47704 method_47704 + p 0 manager + m (Lnet/minecraft/class_7973$class_7974;Ljava/lang/String;)V method_47708 method_47708 + p 1 xuid + m (Lnet/minecraft/class_7973$class_7974;Ljava/lang/String;)V method_47703 method_47703 + p 1 clientId + m (Ljava/util/concurrent/CompletableFuture;Lcom/mojang/authlib/minecraft/TelemetrySession;Lnet/minecraft/class_7966;Ljava/util/function/Consumer;)V method_47705 method_47705 + p 4 adder + p 3 eventType + p 2 session + p 1 future + m (ZLjava/time/Duration;Ljava/lang/String;)Lnet/minecraft/class_7975; method_47706 createWorldSession + p 1 newWorld + p 2 worldLoadTime + p 3 minigameName + m (Ljava/util/Optional;)Ljava/util/concurrent/CompletionStage; method_47709 method_47709 + p 0 manager +c net/minecraft/class_6640 net/minecraft/datafixer/schema/Schema2832 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 2 entityTypes + p 1 schema + p 3 blockEntityTypes +c net/minecraft/class_6647 net/minecraft/world/gen/blockpredicate/BlockPredicateType + f Lnet/minecraft/class_6647; field_35698 SOLID + f Lnet/minecraft/class_6647; field_35699 INSIDE_WORLD_BOUNDS + f Lnet/minecraft/class_6647; field_35058 ANY_OF + f Lnet/minecraft/class_6647; field_35059 ALL_OF + f Lnet/minecraft/class_6647; field_35056 MATCHING_FLUIDS + f Lnet/minecraft/class_6647; field_35057 REPLACEABLE + f Lnet/minecraft/class_6647; field_35055 MATCHING_BLOCKS + f Lnet/minecraft/class_6647; field_35060 NOT + f Lnet/minecraft/class_6647; field_51788 UNOBSTRUCTED + f Lnet/minecraft/class_6647; field_36283 HAS_STURDY_FACE + f Lnet/minecraft/class_6647; field_36282 MATCHING_BLOCK_TAG + f Lnet/minecraft/class_6647; field_35155 WOULD_SURVIVE + f Lnet/minecraft/class_6647; field_35156 TRUE + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_6647; method_38889 register + p 1 codec + p 0 id +c net/minecraft/class_5315 net/minecraft/world/level/storage/SaveVersionInfo + f Ljava/lang/String; field_25026 versionName + f I field_25024 levelFormatVersion + f J field_25025 lastPlayed + f Lnet/minecraft/class_6595; field_25027 version + f Z field_25028 stable + m ()Ljava/lang/String; method_29025 getVersionName + m (IJLjava/lang/String;ILjava/lang/String;Z)V + p 7 stable + p 6 series + p 5 versionId + p 4 versionName + p 2 lastPlayed + p 1 levelFormatVersion + m ()Lnet/minecraft/class_6595; method_29026 getVersion + m ()Z method_29027 isStable + m ()J method_29024 getLastPlayed + m ()I method_29022 getLevelFormatVersion + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/class_5315; method_29023 fromDynamic + p 0 dynamic +c net/minecraft/class_6648 net/minecraft/world/gen/blockpredicate/CombinedBlockPredicate + f Ljava/util/List; field_35061 predicates + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; method_38891 buildCodec + p 0 combiner + m (Ljava/util/List;)V + p 1 predicates + m (Lnet/minecraft/class_6648;)Ljava/util/List; method_38890 method_38890 + p 0 predicate + m (Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38892 method_38892 + p 1 instance +c net/minecraft/class_7979 net/minecraft/client/session/telemetry/WorldLoadedEvent + f Lnet/minecraft/class_7969$class_7971; field_41517 gameMode + f Z field_41516 sent + f Ljava/lang/String; field_41518 brand + f Ljava/lang/String; field_44848 minigameName + m (Lnet/minecraft/class_1934;Z)V method_47791 setGameMode + p 1 gameMode + p 2 hardcore + m (Lnet/minecraft/class_7965;)Z method_47980 send + p 1 sender + m (Lnet/minecraft/class_7973$class_7974;)V method_47795 method_47795 + p 1 adder + m (Lnet/minecraft/class_7973$class_7974;)V method_47792 putServerType + p 1 builder + m (Ljava/lang/String;)V method_47793 setBrand + p 1 brand + m (Ljava/lang/String;)V + p 1 minigameName + m ()Lnet/minecraft/class_7969$class_7972; method_47794 getServerType +c net/minecraft/class_5317 net/minecraft/world/gen/WorldPresets + f Lnet/minecraft/class_5321; field_25050 DEFAULT + f Lnet/minecraft/class_5321; field_35756 LARGE_BIOMES + f Lnet/minecraft/class_5321; field_35757 AMPLIFIED + f Lnet/minecraft/class_5321; field_25056 SINGLE_BIOME_SURFACE + f Lnet/minecraft/class_5321; field_25054 FLAT + f Lnet/minecraft/class_5321; field_25059 DEBUG_ALL_BLOCK_STATES + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_7723; method_64225 createTestOptions + p 0 registries + m (Lnet/minecraft/class_7891;)V method_41593 bootstrap + p 0 presetRegisterable + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_41597 of + p 0 id + m (Lnet/minecraft/class_5363;)Ljava/util/Optional; method_45547 method_45547 + p 0 overworld + m (Lnet/minecraft/class_7723;)Ljava/util/Optional; method_41594 getWorldPreset + p 0 registry + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_5363; method_41599 getDefaultOverworldOptions + p 0 registries + m (Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_7723; method_41598 createDemoOptions + p 0 registries +c net/minecraft/class_5317$class_7146 net/minecraft/world/gen/WorldPresets$Registrar + f Lnet/minecraft/class_5363; field_37737 netherDimensionOptions + f Lnet/minecraft/class_7891; field_40919 presetRegisterable + f Lnet/minecraft/class_7871; field_40920 featureLookup + f Lnet/minecraft/class_6880; field_37734 overworldDimensionType + f Lnet/minecraft/class_7871; field_42993 multiNoisePresetLookup + f Lnet/minecraft/class_7871; field_37731 structureSetLookup + f Lnet/minecraft/class_5363; field_37740 endDimensionOptions + f Lnet/minecraft/class_7871; field_37730 biomeLookup + f Lnet/minecraft/class_7871; field_37732 chunkGeneratorSettingsLookup + m ()V method_41600 bootstrap + m (Lnet/minecraft/class_2794;)Lnet/minecraft/class_5363; method_41602 createOverworldOptions + p 1 chunkGenerator + m (Lnet/minecraft/class_1966;)V method_49257 bootstrap + p 1 biomeSource + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5363;)V method_41604 register + p 1 key + p 2 dimensionOptions + m (Lnet/minecraft/class_5363;)Lnet/minecraft/class_7145; method_41603 createPreset + p 1 dimensionOptions + m (Lnet/minecraft/class_7891;)V + p 1 presetRegisterable + m (Lnet/minecraft/class_1966;Lnet/minecraft/class_6880;)Lnet/minecraft/class_5363; method_41601 createOverworldOptions + p 1 biomeSource + p 2 chunkGeneratorSettings +c net/minecraft/class_6645 net/minecraft/world/gen/blockpredicate/AnyOfBlockPredicate + f Lcom/mojang/serialization/MapCodec; field_35053 CODEC + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)Z method_38875 test + m (Ljava/lang/Object;Ljava/lang/Object;)Z test test + p 2 pos + p 1 world +c net/minecraft/class_7976 net/minecraft/client/session/telemetry/SampleEvent + f Ljava/time/Instant; field_41509 lastSampleTime + f I field_41505 INTERVAL_IN_MILLIS + f I field_41506 BATCH_SIZE + f I field_41507 sampleCount + f Z field_41508 enabled + m ()I method_47782 getSampleCount + m ()V method_47777 start + m ()Z method_47779 shouldSample + m ()V method_47781 disableSampling + m ()V method_47783 sample + m ()Z method_47780 shouldSend + m (Lnet/minecraft/class_7965;)V method_47778 tick + p 1 sender + m (Lnet/minecraft/class_7965;)V method_47784 send + p 1 sender +c net/minecraft/class_6646 net/minecraft/world/gen/blockpredicate/BlockPredicate + f Lcom/mojang/serialization/Codec; field_35054 BASE_CODEC + f Lnet/minecraft/class_6646; field_35696 IS_AIR + f Lnet/minecraft/class_6646; field_35697 IS_AIR_OR_WATER + m ()Lnet/minecraft/class_6647; method_38873 getType + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_6646; method_39584 solid + p 0 offset + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_6646; method_39586 insideWorldBounds + p 0 offset + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_6646; method_45543 noFluid + p 0 offset + m ([Lnet/minecraft/class_6646;)Lnet/minecraft/class_6646; method_38887 anyOf + p 0 predicates + m (Lnet/minecraft/class_2382;Lnet/minecraft/class_2350;)Lnet/minecraft/class_6646; method_39909 hasSturdyFace + p 0 offset + p 1 face + m ()Lnet/minecraft/class_6646; method_39585 solid + m (Lnet/minecraft/class_2680;Lnet/minecraft/class_2382;)Lnet/minecraft/class_6646; method_39009 wouldSurvive + p 0 state + p 1 offset + m ()Lnet/minecraft/class_6646; method_60285 unobstructed + m (Lnet/minecraft/class_6646;Lnet/minecraft/class_6646;)Lnet/minecraft/class_6646; method_38878 bothOf + p 1 second + p 0 first + m (Lnet/minecraft/class_2382;[Lnet/minecraft/class_2248;)Lnet/minecraft/class_6646; method_43288 matchingBlocks + p 1 blocks + p 0 offset + m (Ljava/util/List;)Lnet/minecraft/class_6646; method_38880 allOf + p 0 predicates + m (Lnet/minecraft/class_6646;Lnet/minecraft/class_6646;)Lnet/minecraft/class_6646; method_38884 eitherOf + p 1 second + p 0 first + m (Lnet/minecraft/class_2382;Ljava/util/List;)Lnet/minecraft/class_6646; method_38881 matchingBlocks + p 0 offset + p 1 blocks + m ()Lnet/minecraft/class_6646; method_38883 replaceable + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_6646; method_39010 replaceable + p 0 offset + m ()Lnet/minecraft/class_6646; method_39011 alwaysTrue + m (Lnet/minecraft/class_2382;[Lnet/minecraft/class_3611;)Lnet/minecraft/class_6646; method_43289 matchingFluids + p 0 offset + p 1 fluids + m ([Lnet/minecraft/class_3611;)Lnet/minecraft/class_6646; method_43291 matchingFluids + p 0 fluids + m (Lnet/minecraft/class_2382;Lnet/minecraft/class_6862;)Lnet/minecraft/class_6646; method_39908 matchingBlockTag + p 1 tag + p 0 offset + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_6646; method_60284 unobstructed + p 0 offset + m (Ljava/util/List;)Lnet/minecraft/class_6646; method_38885 anyOf + p 0 predicates + m (Lnet/minecraft/class_2350;)Lnet/minecraft/class_6646; method_39930 hasSturdyFace + p 0 face + m (Lnet/minecraft/class_6646;)Lnet/minecraft/class_6646; method_38877 not + p 0 predicate + m ([Lnet/minecraft/class_6646;)Lnet/minecraft/class_6646; method_38882 allOf + p 0 predicates + m (Lnet/minecraft/class_2382;Ljava/util/List;)Lnet/minecraft/class_6646; method_38886 matchingFluids + p 0 offset + p 1 fluids + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_6646; method_39907 matchingBlockTag + p 0 offset + m (Ljava/util/List;)Lnet/minecraft/class_6646; method_39910 matchingBlocks + p 0 blocks + m ()Lnet/minecraft/class_6646; method_45544 noFluid + m ([Lnet/minecraft/class_2248;)Lnet/minecraft/class_6646; method_43290 matchingBlocks + p 0 blocks +c net/minecraft/class_7977 net/minecraft/client/session/telemetry/PerformanceMetricsEvent + f Lit/unimi/dsi/fastutil/longs/LongList; field_41512 renderTimeSamples + f Lit/unimi/dsi/fastutil/longs/LongList; field_41511 fpsSamples + f J field_41510 MAX_MEMORY_KB + f Lit/unimi/dsi/fastutil/longs/LongList; field_41513 usedMemorySamples + m (J)J method_47785 toKilos + p 0 bytes + m ()V method_47789 sampleUsedMemory + m ()V method_47788 clearSamples + m (Lnet/minecraft/class_7973$class_7974;)V method_47979 method_47979 + p 1 map +c net/minecraft/class_6643 net/minecraft/world/gen/carver/CarvingMask + f Ljava/util/BitSet; field_35050 mask + f Lnet/minecraft/class_6643$class_6828; field_36217 maskPredicate + f I field_35049 bottomY + m (Lnet/minecraft/class_1923;I)Lnet/minecraft/class_2338; method_38867 method_38867 + p 2 mask + m (III)V method_38865 set + p 2 y + p 1 offsetX + p 3 offsetZ + m (III)Z method_38868 get + p 3 offsetZ + p 2 y + p 1 offsetX + m (Lnet/minecraft/class_6643$class_6828;)V method_39785 setMaskPredicate + p 1 maskPredicate + m (II)V + p 1 height + p 2 bottomY + m (III)Z method_39786 method_39786 + p 1 y + p 0 offsetX + p 2 offsetZ + m ([JI)V + p 2 bottomY + p 1 mask + m ()[J method_38864 getMask + m (Lnet/minecraft/class_1923;)Ljava/util/stream/Stream; method_38866 streamBlockPos + p 1 chunkPos + m (III)I method_38869 getIndex + p 1 offsetX + p 3 offsetZ + p 2 y +c net/minecraft/class_6643$class_6828 net/minecraft/world/gen/carver/CarvingMask$MaskPredicate + m (III)Z test test + p 2 y + p 3 offsetZ + p 1 offsetX +c net/minecraft/class_6644 net/minecraft/world/gen/blockpredicate/AllOfBlockPredicate + f Lcom/mojang/serialization/MapCodec; field_35052 CODEC + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;)Z method_38874 test + m (Ljava/lang/Object;Ljava/lang/Object;)Z test test + p 1 world + p 2 pos +c net/minecraft/class_7975 net/minecraft/client/session/telemetry/WorldSession + f Lnet/minecraft/class_7979; field_41501 worldLoadedEvent + f Lnet/minecraft/class_7977; field_41503 performanceMetricsEvent + f Lnet/minecraft/class_7982; field_41502 worldUnloadedEvent + f Lnet/minecraft/class_7981; field_41504 worldLoadTimesEvent + f Lnet/minecraft/class_7965; field_41500 sender + f Ljava/util/UUID; field_41499 sessionId + m (Ljava/lang/String;)V method_47774 setBrand + p 1 brand + m (Lnet/minecraft/class_1934;Z)V method_47772 setGameMode + p 2 hardcore + p 1 gameMode + m (Lnet/minecraft/class_7973$class_7974;)V method_47773 method_47773 + p 1 builder + m (Lnet/minecraft/class_7965;ZLjava/time/Duration;Ljava/lang/String;)V + p 1 sender + p 4 minigameName + p 2 newWorld + p 3 worldLoadTime + m ()V method_47776 onUnload + m (J)V method_47771 setTick + p 1 tick + m ()V method_47775 onLoad + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_8779;)V method_51802 onAdvancementMade + p 2 advancement + p 1 world + m ()V method_47770 tick + m (Lnet/minecraft/class_2960;JLnet/minecraft/class_7973$class_7974;)V method_51801 method_51801 + p 3 properties +c net/minecraft/class_6641 net/minecraft/unused/packageinfo/PackageInfo6641 +c net/minecraft/class_6642 net/minecraft/util/math/intprovider/WeightedListIntProvider + f Lnet/minecraft/class_6012; field_35036 weightedList + f I field_35038 max + f Lcom/mojang/serialization/MapCodec; field_35035 CODEC + f I field_35037 min + m (Lnet/minecraft/class_6012;)V + p 1 weightedList + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38845 method_38845 + p 0 instance + m (Lnet/minecraft/class_6642;)Lnet/minecraft/class_6012; method_38844 method_38844 + p 0 provider +c net/minecraft/class_7973 net/minecraft/client/session/telemetry/PropertyMap + f Ljava/util/Map; field_41496 backingMap + m (Ljava/util/Map;)V + p 1 backingMap + m ()Ljava/util/Set; method_47762 keySet + m (Ljava/util/List;)Lcom/mojang/serialization/MapCodec; method_47761 createCodec + p 0 properties + m ()Lnet/minecraft/class_7973$class_7974; method_47759 builder + m (Lnet/minecraft/class_7969;)Ljava/lang/Object; method_47760 get + p 1 property +c net/minecraft/class_7973$1 net/minecraft/client/session/telemetry/PropertyMap$1 + m (Lnet/minecraft/class_7973;Lcom/mojang/serialization/RecordBuilder;Lnet/minecraft/class_7969;)Lcom/mojang/serialization/RecordBuilder; method_47766 encode + p 1 map + p 2 builder + p 3 property + m (Lnet/minecraft/class_7973;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)Lcom/mojang/serialization/RecordBuilder; method_47765 encode + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)Lcom/mojang/serialization/RecordBuilder; encode encode + p 1 map + p 2 ops + p 3 builder + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; decode decode + p 1 ops + p 2 map + m (Lcom/mojang/serialization/DataResult;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;Lnet/minecraft/class_7969;)Lcom/mojang/serialization/DataResult; method_47763 decode + p 2 ops + p 3 map + p 4 property + p 1 result + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/stream/Stream; keys keys + p 1 ops + m (Lnet/minecraft/class_7969;Lnet/minecraft/class_7973$class_7974;Ljava/lang/Object;)Lnet/minecraft/class_7973$class_7974; method_47764 method_47764 + p 1 mapBuilder + p 2 value +c net/minecraft/class_7973$class_7974 net/minecraft/client/session/telemetry/PropertyMap$Builder + f Ljava/util/Map; field_41498 backingMap + m (Lnet/minecraft/class_7969;Ljava/lang/Object;)Lnet/minecraft/class_7973$class_7974; method_51800 putIfNonNull + p 2 value + p 1 property + m (Lnet/minecraft/class_7973;)Lnet/minecraft/class_7973$class_7974; method_47769 putAll + p 1 map + m ()Lnet/minecraft/class_7973; method_47767 build + m (Lnet/minecraft/class_7969;Ljava/lang/Object;)Lnet/minecraft/class_7973$class_7974; method_47768 put + p 2 value + p 1 property +c com/mojang/blaze3d/buffers/Std140SizeCalculator com/mojang/blaze3d/buffers/Std140SizeCalculator + m (I)Lcom/mojang/blaze3d/buffers/Std140SizeCalculator; align align + p 1 alignedSize +c net/minecraft/class_6638 net/minecraft/datafixer/fix/WorldGenSettingsDisallowOldCustomWorldsFix + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38821 method_38821 + p 1 worldGenSettingsTyped + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38822 method_38822 + p 0 dimensionsTyped + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_38824 method_38824 + p 0 dimensionId + p 1 dimensionDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Ljava/util/Map;)Ljava/util/Map; method_38825 method_38825 + p 0 dimensions + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/DataResult; method_38823 method_38823 + p 0 dimensionsDynamic +c net/minecraft/class_7969 net/minecraft/client/session/telemetry/TelemetryEventProperty + f Ljava/time/format/DateTimeFormatter; field_41457 DATE_TIME_FORMATTER + f Lcom/mojang/serialization/Codec; comp_1173 codec + f Ljava/lang/String; comp_1172 exportKey + f Ljava/lang/String; comp_1171 id + f Lnet/minecraft/class_7969; field_41473 FRAME_RATE_SAMPLES + f Lnet/minecraft/class_7969; field_41474 RENDER_TIME_SAMPLES + f Lnet/minecraft/class_7969; field_41475 USED_MEMORY_SAMPLES + f Lnet/minecraft/class_7969; field_41471 SECONDS_SINCE_LOAD + f Lnet/minecraft/class_7969; field_41472 TICKS_SINCE_LOAD + f Lnet/minecraft/class_7969; field_41478 DEDICATED_MEMORY_KB + f Lnet/minecraft/class_7969; field_41479 WORLD_LOAD_TIME_MS + f Lnet/minecraft/class_7969; field_41476 NUMBER_OF_SAMPLES + f Lnet/minecraft/class_7969; field_41477 RENDER_DISTANCE + f Lnet/minecraft/class_7969; field_41480 NEW_WORLD + f Lnet/minecraft/class_7969; field_41468 OPT_IN + f Lnet/minecraft/class_7969; field_41469 EVENT_TIMESTAMP_UTC + f Lnet/minecraft/class_7969; field_41461 GAME_VERSION + f Lnet/minecraft/class_7969; field_41462 OPERATING_SYSTEM + f Lnet/minecraft/class_7969; field_41460 MINECRAFT_SESSION_ID + f Lnet/minecraft/class_7969; field_41466 SERVER_MODDED + f Lnet/minecraft/class_7969; field_41467 SERVER_TYPE + f Lnet/minecraft/class_7969; field_41463 PLATFORM + f Lnet/minecraft/class_7969; field_41464 CLIENT_MODDED + f Lnet/minecraft/class_7969; field_41465 WORLD_SESSION_ID + f Lnet/minecraft/class_7969; field_41470 GAME_MODE + f Lnet/minecraft/class_7969; field_41458 USER_ID + f Lnet/minecraft/class_7969; field_41459 CLIENT_ID + f Lnet/minecraft/class_7969$class_7970; comp_1174 exporter + f Lnet/minecraft/class_7969; field_44841 LOAD_TIME_TOTAL_TIME_MS + f Lnet/minecraft/class_7969; field_44840 REALMS_MAP_CONTENT + f Lnet/minecraft/class_7969; field_44835 LOAD_TIME_BOOTSTRAP_MS + f Lnet/minecraft/class_7969; field_44834 LOAD_TIME_PRE_WINDOW_MS + f Lnet/minecraft/class_7969; field_44839 LAUNCHER_NAME + f Lnet/minecraft/class_7969; field_44838 ADVANCEMENT_GAME_TIME + f Lnet/minecraft/class_7969; field_44837 ADVANCEMENT_ID + f Lnet/minecraft/class_7969; field_44836 LOAD_TIME_LOADING_OVERLAY_MS + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Ljava/util/UUID;)V method_47748 method_47748 + p 1 key + p 2 value + p 0 container + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Lnet/minecraft/class_7969$class_7971;)V method_47744 method_47744 + p 0 container + p 2 value + p 1 exportKey + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Lnet/minecraft/class_7969$class_7972;)V method_47745 method_47745 + p 0 container + p 1 exportKey + p 2 value + m (Lnet/minecraft/class_7973;Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;)V method_47749 addTo + p 2 container + p 1 map + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_7969; method_51799 ofTimeMeasurement + p 1 exportKey + p 0 id + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Lnet/minecraft/class_8561$class_8562;)V method_51797 method_51797 + p 2 value + p 1 key + p 0 container + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_7969; method_51798 ofLong + p 0 id + p 1 exportKey + m ()Lnet/minecraft/class_5250; method_47743 getTitle + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Lit/unimi/dsi/fastutil/longs/LongList;)V method_47746 method_47746 + p 2 value + p 1 key + p 0 container + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Ljava/time/Instant;)V method_47747 method_47747 + p 2 value + p 1 exportKey + p 0 container + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_7969; method_47754 ofUuid + p 0 id + p 1 exportKey + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_7969; method_47755 ofLongList + p 0 id + p 1 exportKey + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Codec;Lnet/minecraft/class_7969$class_7970;)Lnet/minecraft/class_7969; method_47751 of + p 2 codec + p 1 exportKey + p 3 exporter + p 0 id + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_7969; method_47752 ofString + p 1 exportKey + p 0 id + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_7969; method_47753 ofInteger + p 0 id + p 1 exportKey + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_7969; method_47750 ofBoolean + p 1 exportKey + p 0 id + m ()Lcom/mojang/serialization/Codec; comp_1173 codec + m ()Lnet/minecraft/class_7969$class_7970; comp_1174 exporter + m ()Ljava/lang/String; comp_1171 id + m ()Ljava/lang/String; comp_1172 exportKey + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Codec;Lnet/minecraft/class_7969$class_7970;)V + p 1 id + p 2 exportKey + p 3 codec + p 4 exporter +c net/minecraft/class_7969$class_7971 net/minecraft/client/session/telemetry/TelemetryEventProperty$GameMode + f Ljava/lang/String; field_41487 id + f Lcom/mojang/serialization/Codec; field_41486 CODEC + f I field_41488 rawId + f Lnet/minecraft/class_7969$class_7971; field_41483 ADVENTURE + f Lnet/minecraft/class_7969$class_7971; field_41482 CREATIVE + f Lnet/minecraft/class_7969$class_7971; field_41485 HARDCORE + f Lnet/minecraft/class_7969$class_7971; field_41484 SPECTATOR + f Lnet/minecraft/class_7969$class_7971; field_41481 SURVIVAL + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 id + p 4 rawId + m ()I method_47756 getRawId +c net/minecraft/class_7969$class_7970 net/minecraft/client/session/telemetry/TelemetryEventProperty$PropertyExporter + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Ljava/lang/Object;)V apply apply + p 1 container + p 2 key + p 3 value +c net/minecraft/class_7969$class_7972 net/minecraft/client/session/telemetry/TelemetryEventProperty$ServerType + f Lcom/mojang/serialization/Codec; field_41493 CODEC + f Ljava/lang/String; field_41494 id + f Lnet/minecraft/class_7969$class_7972; field_41492 OTHER + f Lnet/minecraft/class_7969$class_7972; field_41491 LOCAL + f Lnet/minecraft/class_7969$class_7972; field_41490 REALM + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id +c net/minecraft/class_5309 net/minecraft/world/gen/chunk/GenerationShapeConfig + f Lnet/minecraft/class_5309; field_37138 NETHER + f Lnet/minecraft/class_5309; field_37139 END + f Lnet/minecraft/class_5309; field_37141 FLOATING_ISLANDS + f Lcom/mojang/serialization/Codec; field_24804 CODEC + f Lnet/minecraft/class_5309; field_37140 CAVES + f I comp_173 minimumY + f I comp_174 height + f I comp_178 horizontalSize + f I comp_179 verticalSize + f Lnet/minecraft/class_5309; field_38253 SURFACE + m ()I method_39546 horizontalCellBlockCount + m (IIII)Lnet/minecraft/class_5309; method_32994 create + p 3 verticalSize + p 2 horizontalSize + p 1 height + p 0 minimumY + m (Lnet/minecraft/class_5539;)Lnet/minecraft/class_5309; method_42368 trimHeight + p 1 world + m (IIII)V + p 1 minimumY + p 2 height + p 3 horizontalSize + p 4 verticalSize + m ()I method_39545 verticalCellBlockCount + m ()I comp_173 minimumY + m ()I comp_174 height + m (Lnet/minecraft/class_5309;)Lcom/mojang/serialization/DataResult; method_32995 checkHeight + p 0 config + m ()I comp_178 horizontalSize + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28582 method_28582 + p 0 instance + m ()I comp_179 verticalSize +c net/minecraft/class_6639 net/minecraft/datafixer/fix/WorldGenSettingsHeightAndBiomeFix + f Ljava/lang/String; field_35030 HAS_INCREASED_HEIGHT_ALREADY_KEY + f Ljava/lang/String; field_35031 NAME + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38836 method_38836 + p 0 worldGenSettingsDynamic + m (ZLorg/apache/commons/lang3/mutable/MutableBoolean;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54968 method_54968 + p 2 overworldBiomeSourceDynamic + m (Lcom/mojang/datafixers/types/Type;ZZLcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_54967 method_54967 + p 3 dimensionsTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38828 fillWithAir + m (ZZLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38831 method_38831 + p 2 dimensionsDynamic + m (ZZLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38834 method_38834 + p 2 overworldDimensionDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54970 method_54970 + p 0 overworldGeneratorSettingsDynamic + m (ZZLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54971 method_54971 + p 2 overworldGeneratorDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38827 method_38827 + p 2 worldGenSettingsTyped + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54969 method_54969 + p 0 overworldGeneratorSettingsDynamic +c net/minecraft/class_7945 net/minecraft/unused/packageinfo/PackageInfo7945 +c net/minecraft/class_6614 net/minecraft/unused/packageinfo/PackageInfo6614 +c net/minecraft/class_7946 net/minecraft/client/render/entity/model/PiglinHeadEntityModel + f Lnet/minecraft/class_630; field_41381 rightEar + f Lnet/minecraft/class_630; field_41380 leftEar + f Lnet/minecraft/class_630; field_41379 head + m ()Lnet/minecraft/class_5609; method_47655 getModelData + m (Lnet/minecraft/class_5598$class_11652;)V method_2821 setAngles + m (Lnet/minecraft/class_630;)V + p 1 root +c net/minecraft/class_6613 net/minecraft/util/function/Finishable + m (Z)V finish finish + p 1 success +c net/minecraft/class_7944 net/minecraft/client/gui/screen/option/TelemetryInfoScreen + f Lnet/minecraft/class_2561; field_41369 TITLE_TEXT + f Lnet/minecraft/class_7941; field_41375 telemetryEventWidget + f Lnet/minecraft/class_437; field_41373 parent + f Lnet/minecraft/class_315; field_41374 options + f Lnet/minecraft/class_8132; field_49553 layout + f Lnet/minecraft/class_2561; field_45567 PRIVACY_STATEMENT_TEXT + f Lnet/minecraft/class_2561; field_41370 DESCRIPTION_TEXT + f D field_41376 scroll + f Lnet/minecraft/class_2561; field_47126 OPT_IN_DESCRIPTION_TEXT + f Lnet/minecraft/class_4286; field_64207 optInCheckbox + f I field_41367 MARGIN + f Z field_49552 OPTIONAL_TELEMETRY_ENABLED_BY_API + f Lnet/minecraft/class_2561; field_41371 GIVE_FEEDBACK_TEXT + f Lnet/minecraft/class_2561; field_41372 SHOW_DATA_TEXT + f Lnet/minecraft/class_7940; field_49554 textWidget + m (Lnet/minecraft/class_437;Lnet/minecraft/class_315;)V + p 1 parent + p 2 options + m (D)V method_47646 method_47646 + p 1 scroll + m (Lnet/minecraft/class_4185;)V method_47651 openLogDirectory + p 1 button + m (Lnet/minecraft/class_4185;)V method_47650 openFeedbackPage + p 1 button + m (Lnet/minecraft/class_339;Z)V method_54803 updateOptIn + p 2 checked + p 1 checkbox + m (Lnet/minecraft/class_4185;)V method_52765 openPrivacyStatementPage + p 1 button + m (Lnet/minecraft/class_7944;Lnet/minecraft/class_364;)V method_48286 method_48286 + p 1 child + m (Lnet/minecraft/class_4185;)V method_57768 method_57768 + p 1 button +c net/minecraft/class_7941 net/minecraft/client/gui/screen/option/TelemetryEventWidget + f Ljava/lang/String; field_47125 DISABLED_TRANSLATION_KEY + f Lnet/minecraft/class_7941$class_7942; field_41360 contents + f Lnet/minecraft/class_2561; field_41358 PROPERTY_TITLE_TEXT + f Ljava/util/function/DoubleConsumer; field_41361 scrollConsumer + f Ljava/lang/String; field_41356 REQUIRED_TRANSLATION_KEY + f Ljava/lang/String; field_41357 OPTIONAL_TRANSLATION_KEY + f I field_41355 MARGIN_X + f Lnet/minecraft/class_327; field_41359 textRenderer + m (Lnet/minecraft/class_7941$class_7943;Lnet/minecraft/class_7966;Z)V method_47635 appendEventInfo + p 2 eventType + p 3 disabled + p 1 builder + m (Ljava/util/function/DoubleConsumer;)V method_47637 setScrollConsumer + p 1 scrollConsumer + m (Lnet/minecraft/class_2561;Z)Lnet/minecraft/class_2561; method_54801 formatTitleText + p 2 disabled + p 1 title + m ()I method_47640 getGridWidth + m (IIIILnet/minecraft/class_327;)V + p 3 width + p 2 y + p 1 x + p 5 textRenderer + p 4 height + m (Z)V method_47638 refresh + p 1 optionalTelemetryEnabled + m (Z)Lnet/minecraft/class_7941$class_7942; method_47639 collectContents + p 1 optionalTelemetryEnabled + m ()V method_57767 initContents + m (Lnet/minecraft/class_7966;Lnet/minecraft/class_7941$class_7943;Z)V method_47636 appendProperties + p 3 disabled + p 2 builder + p 1 eventType + m (Lnet/minecraft/class_332;IIFLnet/minecraft/class_339;)V method_48285 method_48285 + p 4 widget +c net/minecraft/class_7941$class_7943 net/minecraft/client/gui/screen/option/TelemetryEventWidget$ContentsBuilder + f I field_41362 gridWidth + f Lnet/minecraft/class_8667; field_45566 layout + f Lnet/minecraft/class_5250; field_41366 narration + m (ILnet/minecraft/class_7847;)V method_52763 method_52763 + p 1 positioner + m (Lnet/minecraft/class_327;Lnet/minecraft/class_2561;I)V method_47644 appendTitle + p 1 textRenderer + p 2 title + p 3 marginBottom + m ()Lnet/minecraft/class_7941$class_7942; method_47641 build + m (I)V method_47642 appendSpace + p 1 height + m (Lnet/minecraft/class_327;Lnet/minecraft/class_2561;)V method_47643 appendTitle + p 2 title + p 1 textRenderer + m (Lnet/minecraft/class_7847;)V method_52764 method_52764 + p 0 positioner + m (I)V + p 1 gridWidth + m (Lnet/minecraft/class_327;Lnet/minecraft/class_2561;)V method_47645 appendText + p 2 text + p 1 textRenderer +c net/minecraft/class_7941$class_7942 net/minecraft/client/gui/screen/option/TelemetryEventWidget$Contents + f Lnet/minecraft/class_8133; comp_1160 grid + f Lnet/minecraft/class_2561; comp_1161 narration + m ()Lnet/minecraft/class_8133; comp_1160 grid + m ()Lnet/minecraft/class_2561; comp_1161 narration + m (Lnet/minecraft/class_8133;Lnet/minecraft/class_2561;)V + p 1 grid + p 2 narration +c net/minecraft/class_6611 net/minecraft/util/profiling/jfr/FlightProfiler + f Lnet/minecraft/class_6611; field_34923 INSTANCE + m (Lnet/minecraft/class_2539;Lnet/minecraft/class_9145;Ljava/net/SocketAddress;I)V method_38656 onPacketReceived + p 4 bytes + p 3 remoteAddress + p 2 type + p 1 state + m (I)V method_75087 onClientFps + p 1 fps + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_5321;Lnet/minecraft/class_6880;)Lnet/minecraft/class_6613; method_65105 startStructureGenerationProfiling + p 1 chunkPos + p 3 structure + p 2 world + m ()Lnet/minecraft/class_6613; method_38659 startWorldLoadProfiling + m (F)V method_38654 onTick + p 1 tickTime + m (Lnet/minecraft/class_9240;Lnet/minecraft/class_1923;Lnet/minecraft/class_4486;I)V method_56980 onChunkRegionWrite + p 1 key + p 4 bytes + p 3 format + p 2 chunkPos + m ()Z method_38658 isAvailable + m (Lnet/minecraft/class_2539;Lnet/minecraft/class_9145;Ljava/net/SocketAddress;I)V method_38657 onPacketSent + p 4 bytes + p 3 remoteAddress + p 2 type + p 1 state + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_5321;Ljava/lang/String;)Lnet/minecraft/class_6613; method_38655 startChunkGenerationProfiling + p 2 world + p 3 targetStatus + p 1 chunkPos + m (Lnet/minecraft/class_9240;Lnet/minecraft/class_1923;Lnet/minecraft/class_4486;I)V method_56979 onChunkRegionRead + p 3 format + p 2 chunkPos + p 1 key + p 4 bytes + m (Lnet/minecraft/class_6506;)Z method_37981 start + p 1 instanceType + m ()Z method_37984 isProfiling + m ()Ljava/nio/file/Path; method_37980 stop +c net/minecraft/class_6611$class_6612 net/minecraft/util/profiling/jfr/FlightProfiler$NoopProfiler + f Lorg/slf4j/Logger; field_34924 LOGGER + f Lnet/minecraft/class_6613; field_34925 NOOP + m (Z)V method_38662 method_38662 + p 0 success +c net/minecraft/class_7940 net/minecraft/client/gui/widget/MultilineTextWidget + f Lnet/minecraft/class_8105; field_42488 cacheKeyToText + f Z field_41343 centered + f Ljava/util/OptionalInt; field_42487 maxRows + f Ljava/util/OptionalInt; field_42486 maxWidth + m (IILnet/minecraft/class_2561;Lnet/minecraft/class_327;)V + p 4 textRenderer + p 3 message + p 2 y + p 1 x + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_327;)V + p 2 textRenderer + p 1 message + m (Z)Lnet/minecraft/class_7940; method_48981 setCentered + p 1 centered + m ()Lnet/minecraft/class_7940$class_8131; method_48982 getCacheKey + m (I)Lnet/minecraft/class_7940; method_48985 setMaxRows + p 1 maxRows + m (I)Lnet/minecraft/class_7940; method_48984 setMaxWidth + p 1 maxWidth + m ()I method_75354 getTextX + m ()I method_75355 getTextY + m (Lnet/minecraft/class_327;Lnet/minecraft/class_7940$class_8131;)Lnet/minecraft/class_5489; method_48980 method_48980 + p 1 cacheKey +c net/minecraft/class_7940$class_8131 net/minecraft/client/gui/widget/MultilineTextWidget$CacheKey + f Lnet/minecraft/class_2561; comp_1256 message + f Ljava/util/OptionalInt; comp_1258 maxRows + f I comp_1257 maxWidth + m ()Lnet/minecraft/class_2561; comp_1256 message + m ()Ljava/util/OptionalInt; comp_1258 maxRows + m ()I comp_1257 maxWidth + m (Lnet/minecraft/class_2561;ILjava/util/OptionalInt;)V + p 1 message + p 2 maxWidth + p 3 maxRows +c net/minecraft/class_6609 net/minecraft/server/world/SimulationDistanceLevelPropagator + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; field_34888 levels + f Lnet/minecraft/class_10592; field_55596 ticketManager + m (Lnet/minecraft/class_1923;)I method_38640 getLevel + p 1 pos + m (Lnet/minecraft/class_10592;)V + p 1 ticketManager + m ()V method_38635 updateLevels +c net/minecraft/class_6607 net/minecraft/server/command/JfrCommand + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_34880 JFR_START_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_34881 JFR_DUMP_FAILED_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38613 method_38613 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_38615 method_38615 + p 0 message + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38616 method_38616 + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;)V method_38612 register + p 0 dispatcher + m (Lnet/minecraft/class_2168;)I method_38617 executeStop + p 0 source + m (Lnet/minecraft/class_2168;)I method_38614 executeStart + p 0 source + m (Ljava/nio/file/Path;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_39499 method_39499 + p 1 style +c net/minecraft/class_7938 net/minecraft/block/WallPiglinHeadBlock + f Ljava/util/Map; field_41311 SHAPES + f Lcom/mojang/serialization/MapCodec; field_46408 CODEC +c net/minecraft/class_7936 net/minecraft/util/logging/LogReader + m (Lcom/mojang/serialization/Codec;Ljava/io/Reader;)Lnet/minecraft/class_7936; method_47571 create + p 1 reader + p 0 codec + m ()Ljava/lang/Object; method_47570 read +c net/minecraft/class_7937 net/minecraft/unused/packageinfo/PackageInfo7937 +c net/minecraft/class_6606 net/minecraft/network/packet/s2c/play/LightData + f Lnet/minecraft/class_9139; field_48781 CODEC + f Ljava/util/BitSet; field_34875 uninitedSky + f Ljava/util/BitSet; field_34874 initedBlock + f Ljava/util/BitSet; field_34876 uninitedBlock + f Ljava/util/BitSet; field_34873 initedSky + f Ljava/util/List; field_34878 blockNibbles + f Ljava/util/List; field_34877 skyNibbles + m ()Ljava/util/BitSet; method_38601 getInitedSky + m (Lnet/minecraft/class_2540;II)V + p 3 y + p 2 x + p 1 buf + m ()Ljava/util/BitSet; method_38604 getUninitedSky + m (Lnet/minecraft/class_2540;)V method_38603 write + p 1 buf + m ()Ljava/util/List; method_38610 getBlockNibbles + m ()Ljava/util/List; method_38606 getSkyNibbles + m ()Ljava/util/BitSet; method_38609 getUninitedBlock + m ()Ljava/util/BitSet; method_38608 getInitedBlock + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_3568;Ljava/util/BitSet;Ljava/util/BitSet;)V + p 4 blockBits + p 3 skyBits + p 2 lightProvider + p 1 pos + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_3568;Lnet/minecraft/class_1944;ILjava/util/BitSet;Ljava/util/BitSet;Ljava/util/List;)V method_38602 putChunk + p 1 pos + p 2 lightProvider + p 7 nibbles + p 5 initialized + p 6 uninitialized + p 3 type + p 4 y +c net/minecraft/class_6625 net/minecraft/structure/StructureContext + f Lnet/minecraft/class_5455; comp_134 registryManager + f Lnet/minecraft/class_3485; comp_135 structureTemplateManager + f Lnet/minecraft/class_3300; comp_133 resourceManager + m (Lnet/minecraft/class_3218;)Lnet/minecraft/class_6625; method_38713 from + p 0 world + m ()Lnet/minecraft/class_5455; comp_134 registryManager + m ()Lnet/minecraft/class_3485; comp_135 structureTemplateManager + m ()Lnet/minecraft/class_3300; comp_133 resourceManager + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_5455;Lnet/minecraft/class_3485;)V + p 1 resourceManager + p 2 registryManager + p 3 structureTemplateManager +c net/minecraft/class_7956 net/minecraft/client/texture/atlas/FilterAtlasSource + f Lnet/minecraft/class_7085; comp_3621 pattern + f Lcom/mojang/serialization/MapCodec; field_41407 CODEC + m ()Lnet/minecraft/class_7085; comp_3621 pattern + m (Lnet/minecraft/class_7085;)V + p 1 pattern + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47690 method_47690 + p 0 instance +c net/minecraft/class_6626 net/minecraft/structure/StructurePiecesCollector + c A collector of structure pieces to be added to a structure start.\n\n@see StructurePiecesList + f Ljava/util/List; field_34944 pieces + m (IILnet/minecraft/class_5819;I)I method_38716 shiftInto + c Somewhat like {@code shiftInto(random, bottomY, topY - topPenalty)}. + p 1 topY + p 2 bottomY + p 3 random + p 4 topPenalty + m ()Lnet/minecraft/class_6624; method_38714 toList + m ()V method_38719 clear + m (Lnet/minecraft/class_5819;II)V method_38718 shiftInto + c Shifts all pieces so they lie within {@code [baseY, topY]} vertically. + p 1 random + p 2 baseY + p 3 topY + m ()Z method_38720 isEmpty + m ()Lnet/minecraft/class_3341; method_38721 getBoundingBox + m (I)V method_38715 shift + p 1 y +c net/minecraft/class_7957 net/minecraft/client/texture/atlas/UnstitchAtlasSource + f D comp_3624 divisorX + f Lorg/slf4j/Logger; field_41410 LOGGER + f D comp_3625 divisorY + f Lcom/mojang/serialization/MapCodec; field_41409 CODEC + f Lnet/minecraft/class_2960; comp_3622 resource + f Ljava/util/List; comp_3623 regions + m ()D comp_3624 divisorX + m ()D comp_3625 divisorY + m (Lnet/minecraft/class_2960;Ljava/util/List;DD)V + p 1 resource + p 2 regions + p 5 divisorY + p 3 divisorX + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47692 method_47692 + p 0 instance + m ()Ljava/util/List; comp_3623 regions + m ()Lnet/minecraft/class_2960; comp_3622 resource +c net/minecraft/class_7957$class_7960 net/minecraft/client/texture/atlas/UnstitchAtlasSource$SpriteRegion + f D field_41423 divisorX + f D field_41424 divisorY + f Lnet/minecraft/class_7958; field_41421 sprite + f Lnet/minecraft/class_7957$class_7959; field_41422 region + m (Lnet/minecraft/class_7958;Lnet/minecraft/class_7957$class_7959;DD)V + p 3 divisorX + p 2 region + p 1 sprite + p 5 divisorY +c net/minecraft/class_7957$class_7959 net/minecraft/client/texture/atlas/UnstitchAtlasSource$Region + f Lcom/mojang/serialization/Codec; field_41420 CODEC + f Lnet/minecraft/class_2960; comp_1163 sprite + f D comp_1167 height + f D comp_1165 y + f D comp_1166 width + f D comp_1164 x + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47699 method_47699 + p 0 instance + m ()D comp_1166 width + m ()D comp_1167 height + m ()D comp_1164 x + m ()D comp_1165 y + m ()Lnet/minecraft/class_2960; comp_1163 sprite + m (Lnet/minecraft/class_2960;DDDD)V + p 1 sprite + p 2 x + p 4 y + p 6 width + p 8 height +c net/minecraft/class_7954 net/minecraft/client/texture/atlas/DirectoryAtlasSource + f Lcom/mojang/serialization/MapCodec; field_41399 CODEC + f Ljava/lang/String; comp_3614 idPrefix + f Ljava/lang/String; comp_3613 sourcePath + m (Ljava/lang/String;Ljava/lang/String;)V + p 2 prefix + p 1 source + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47684 method_47684 + p 0 instance + m (Lnet/minecraft/class_7654;Lnet/minecraft/class_7948$class_7949;Lnet/minecraft/class_2960;Lnet/minecraft/class_3298;)V method_47683 method_47683 + p 3 id + p 4 resource + m ()Ljava/lang/String; comp_3614 idPrefix + m ()Ljava/lang/String; comp_3613 sourcePath +c net/minecraft/class_6624 net/minecraft/structure/StructurePiecesList + c An immutable list of structure pieces, usually belonging to a structure\nstart. + f Ljava/util/Map; field_34943 ID_UPDATES + f Lorg/slf4j/Logger; field_34941 LOGGER + f Lnet/minecraft/class_2960; field_34942 JIGSAW + f Ljava/util/List; comp_132 pieces + m ()Z method_38708 isEmpty + m ()Lnet/minecraft/class_3341; method_38712 getBoundingBox + m (Ljava/util/List;)V + p 1 pieces + m (Lnet/minecraft/class_2499;Lnet/minecraft/class_6625;)Lnet/minecraft/class_6624; method_38711 fromNbt + p 1 context + p 0 list + m (Lnet/minecraft/class_6625;)Lnet/minecraft/class_2520; method_38709 toNbt + p 1 context + m (Lnet/minecraft/class_2338;)Z method_38710 contains + p 1 pos + m ()Ljava/util/List; comp_132 pieces +c net/minecraft/class_7955 net/minecraft/client/texture/atlas/SingleAtlasSource + f Lcom/mojang/serialization/MapCodec; field_41402 CODEC + f Lorg/slf4j/Logger; field_41403 LOGGER + f Lnet/minecraft/class_2960; comp_3619 resourceId + f Ljava/util/Optional; comp_3620 spriteId + m (Lnet/minecraft/class_2960;Ljava/util/Optional;)V + p 2 sprite + p 1 resource + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47687 method_47687 + p 0 instance + m (Lnet/minecraft/class_2960;)V + p 1 resourceId + m ()Lnet/minecraft/class_2960; comp_3619 resourceId + m ()Ljava/util/Optional; comp_3620 spriteId +c net/minecraft/class_6621 net/minecraft/structure/PostPlacementProcessor + c A post placement processor for a structure feature runs after all the\npieces of a structure start have placed blocks in the world in the\nfeature chunk status. + f Lnet/minecraft/class_6621; field_34938 EMPTY + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5138;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_1923;Lnet/minecraft/class_6624;)V method_38701 method_38701 + p 0 world + p 2 chunkGenerator + p 1 structureAccessor + p 4 chunkBox + p 3 random + p 6 children + p 5 pos + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5138;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_3341;Lnet/minecraft/class_1923;Lnet/minecraft/class_6624;)V afterPlace afterPlace + p 3 chunkGenerator + p 4 random + p 1 world + p 2 structureAccessor + p 7 children + p 5 chunkBox + p 6 pos +c net/minecraft/class_7952 net/minecraft/client/texture/atlas/AtlasSourceManager + f Lcom/mojang/serialization/Codec; field_41396 TYPE_CODEC + f Lcom/mojang/serialization/Codec; field_41397 LIST_CODEC + f Lnet/minecraft/class_5699$class_10388; field_56377 ID_MAPPER + m ()V method_67289 bootstrap + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_67290 method_67290 + p 0 codec +c net/minecraft/class_6622 net/minecraft/structure/StructurePiecesGenerator + c A structure pieces generator adds structure pieces for a structure,\nbut does not yet realize those pieces into the world. It executes in the\nstructure starts chunk status. + m (Lnet/minecraft/class_6626;Lnet/minecraft/class_6622$class_6623;)V generatePieces generatePieces + p 1 collector + p 2 context +c net/minecraft/class_6622$class_6623 net/minecraft/structure/StructurePiecesGenerator$Context + f Lnet/minecraft/class_5539; comp_129 world + f Lnet/minecraft/class_3037; comp_305 config + f Lnet/minecraft/class_3485; comp_126 structureTemplateManager + f Lnet/minecraft/class_1923; comp_127 chunkPos + f Lnet/minecraft/class_2919; comp_130 random + f J comp_131 seed + f Lnet/minecraft/class_2794; comp_125 chunkGenerator + m ()Lnet/minecraft/class_5539; comp_129 world + m ()Lnet/minecraft/class_3485; comp_126 structureTemplateManager + m ()Lnet/minecraft/class_1923; comp_127 chunkPos + m ()J comp_131 seed + m ()Lnet/minecraft/class_3037; comp_305 config + m ()Lnet/minecraft/class_2919; comp_130 random + m ()Lnet/minecraft/class_2794; comp_125 chunkGenerator + m (Lnet/minecraft/class_3037;Lnet/minecraft/class_2794;Lnet/minecraft/class_3485;Lnet/minecraft/class_1923;Lnet/minecraft/class_5539;Lnet/minecraft/class_2919;J)V + p 1 config + p 2 chunkGenerator + p 3 structureTemplateManager + p 4 chunkPos + p 5 world + p 6 random + p 7 seed +c net/minecraft/class_7953 net/minecraft/unused/packageinfo/PackageInfo7953 +c net/minecraft/class_7947 net/minecraft/client/texture/atlas/AtlasLoader + f Lnet/minecraft/class_7654; field_41387 FINDER + f Ljava/util/List; field_41388 sources + f Lorg/slf4j/Logger; field_41386 LOGGER + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_2960;)Lnet/minecraft/class_7947; method_47668 of + p 0 resourceManager + p 1 id + m (Lnet/minecraft/class_3300;)Ljava/util/List; method_47667 loadSources + p 1 resourceManager + m (Ljava/util/List;)V + p 1 sources + m (Lnet/minecraft/class_8684;)Lnet/minecraft/class_7764; method_52852 method_52852 + p 0 opener + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_7948$class_7949;Lnet/minecraft/class_7948;)V method_47669 method_47669 + p 2 source +c net/minecraft/class_7948 net/minecraft/client/texture/atlas/AtlasSource + f Lnet/minecraft/class_7654; field_42075 RESOURCE_FINDER + m ()Lcom/mojang/serialization/MapCodec; method_67288 getCodec + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_7948$class_7949;)V method_47673 load + p 1 resourceManager + p 2 regions +c net/minecraft/class_7948$class_12299 net/minecraft/client/texture/atlas/AtlasSource$SpriteSource + m (Lnet/minecraft/class_8684;)Lnet/minecraft/class_7764; method_52853 load + p 1 spriteOpener +c net/minecraft/class_7948$class_7949 net/minecraft/client/texture/atlas/AtlasSource$SpriteRegions + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_7948$class_7950;)V method_47670 add + p 1 arg + p 2 region + m (Ljava/util/function/Predicate;)V method_47671 removeIf + p 1 predicate + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3298;Lnet/minecraft/class_8684;)Lnet/minecraft/class_7764; method_47675 method_47675 + p 2 opener + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3298;)V method_47674 add + p 1 id + p 2 resource +c net/minecraft/class_7948$class_7950 net/minecraft/client/texture/atlas/AtlasSource$SpriteRegion + m ()V method_47676 close +c net/minecraft/class_4097 net/minecraft/entity/ai/brain/task/MultiTickTask + f Ljava/util/Map; field_19291 requiredMemoryStates + f I field_30112 DEFAULT_RUN_TIME + f Lnet/minecraft/class_4097$class_4098; field_18333 status + f J field_18334 endTime + f I field_18335 minRunTime + f I field_18336 maxRunTime + m (Ljava/util/Map;I)V + p 2 runTime + p 1 requiredMemoryState + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)V method_18924 keepRunning + p 1 world + p 3 time + p 2 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)V method_18926 finishRunning + p 1 world + p 3 time + p 2 entity + m (J)Z method_18915 isTimeLimitExceeded + p 1 time + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)V method_18920 run + p 1 world + p 3 time + p 2 entity + m (Lnet/minecraft/class_1309;)Z method_19546 hasRequiredMemoryState + p 1 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_18927 shouldKeepRunning + p 2 entity + p 1 world + p 3 time + m (Ljava/util/Map;)V + p 1 requiredMemoryState + m (Ljava/util/Map;II)V + p 1 requiredMemoryState + p 3 maxRunTime + p 2 minRunTime + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)Z method_18919 shouldRun + p 2 entity + p 1 world +c net/minecraft/class_4097$class_4098 net/minecraft/entity/ai/brain/task/MultiTickTask$Status + f Lnet/minecraft/class_4097$class_4098; field_18338 RUNNING + f Lnet/minecraft/class_4097$class_4098; field_18337 STOPPED +c net/minecraft/class_4096 net/minecraft/entity/ai/brain/task/FindPointOfInterestTask + f I field_30098 POI_SORTING_RADIUS + m (Lnet/minecraft/class_4140;ZLorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;Ljava/util/function/Predicate;Ljava/util/function/BiPredicate;Ljava/util/Optional;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46879 method_46879 + p 0 context + m (Lnet/minecraft/class_1308;Ljava/util/Set;)Lnet/minecraft/class_11; method_43965 findPathToPoi + p 0 entity + p 1 pois + m (Ljava/util/function/Predicate;Lnet/minecraft/class_4140;ZLjava/util/Optional;Ljava/util/function/BiPredicate;)Lnet/minecraft/class_7893; method_65945 create + p 3 entityStatus + p 4 worldPosBiPredicate + p 1 poiPosModule + p 2 onlyRunIfChild + p 0 poiPredicate + m (Ljava/util/function/Predicate;Lnet/minecraft/class_4140;Lnet/minecraft/class_4140;ZLjava/util/Optional;Ljava/util/function/BiPredicate;)Lnet/minecraft/class_7893; method_46883 create + p 2 potentialPoiPosModule + p 3 onlyRunIfChild + p 4 entityStatus + p 5 worldPosBiPredicate + p 0 poiPredicate + p 1 poiPosModule + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;JLnet/minecraft/class_2338;)Z method_46882 method_46882 + p 3 pos + m (JLit/unimi/dsi/fastutil/longs/Long2ObjectMap$Entry;)Z method_46874 method_46874 + p 2 entry + m (ZLorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;Ljava/util/function/Predicate;Ljava/util/function/BiPredicate;Lnet/minecraft/class_7906;Ljava/util/Optional;Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;J)Z method_46885 method_46885 + p 7 world + p 9 time + p 8 entity + m (ZLorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;Ljava/util/function/Predicate;Ljava/util/function/BiPredicate;Ljava/util/Optional;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46886 method_46886 + p 6 queryResult + m (Lnet/minecraft/class_7894;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_46877 method_46877 + p 1 poiPos + m (Lnet/minecraft/class_4140;Lnet/minecraft/class_7894;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_46878 method_46878 + p 2 context + m (Ljava/util/function/Predicate;Lnet/minecraft/class_4140;ZLjava/util/Optional;)Lnet/minecraft/class_7893; method_46884 create + p 3 entityStatus + p 2 onlyRunIfChild + p 1 poiPosModule + p 0 poiPredicate + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;)Z method_65943 method_65943 + p 1 pos + p 0 world + m (Lnet/minecraft/class_4153;Ljava/util/function/Predicate;Lnet/minecraft/class_2338;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Ljava/util/Optional;Lnet/minecraft/class_1314;Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;Lnet/minecraft/class_6880;)V method_46880 method_46880 + p 8 poiType + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1314;Ljava/lang/Byte;)V method_46876 method_46876 + p 2 status +c net/minecraft/class_4096$class_5397 net/minecraft/entity/ai/brain/task/FindPointOfInterestTask$RetryMarker + f I field_30102 MAX_EXTRA_DELAY + f I field_30101 MIN_DELAY + f J field_25602 nextScheduledAttemptAt + f J field_25601 previousAttemptAt + f I field_30103 ATTEMPT_DURATION + f I field_25603 currentDelay + f Lnet/minecraft/class_5819; field_25600 random + m (Lnet/minecraft/class_5819;J)V + p 1 random + p 2 time + m (J)Z method_29928 shouldRetry + p 1 time + m (J)Z method_29927 isAttempting + p 1 time + m (J)V method_29926 setAttemptTime + p 1 time +c net/minecraft/class_4099 net/minecraft/entity/ai/brain/BlockPosLookTarget + f Lnet/minecraft/class_2338; field_18340 blockPos + f Lnet/minecraft/class_243; field_18341 pos + m (Lnet/minecraft/class_243;)V + p 1 pos + m (Lnet/minecraft/class_2338;)V + p 1 blockPos +c net/minecraft/class_4093 net/minecraft/util/thread/ReentrantThreadExecutor + f I field_18320 runningTasks + m ()Z method_18860 hasRunningTasks +c net/minecraft/class_4092 net/minecraft/datafixer/fix/OptionsAddTextBackgroundFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28233 method_28233 + p 1 optionsDynamic + m (Ljava/lang/String;)D method_18853 convertToTextBackgroundOpacity + p 1 chatOpacity + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_18852 method_18852 + p 1 optionsTyped +c net/minecraft/class_4095 net/minecraft/entity/ai/brain/Brain + c A brain is associated with each living entity.\n\n

A brain has {@linkplain #memories memories}, {@linkplain #sensors sensors},\nand {@linkplain #tasks tasks}. In general, the brain can use sensors to refresh\nthe memories over time, and the memories can be shared by different tasks,\nwhich can reduce duplicate calculation. For instance, instead of having each\ntask scan for the player, the memories can hold information about nearby player,\nand the task can choose to run or not accordingly.\n\n

To construct a brain, you need to specify the memory (module) types and\nsensors present in a brain, and then you can add individual tasks.\n\n@see LivingEntity#brain + f Ljava/util/Map; field_18323 sensors + f Ljava/util/Map; field_18324 tasks + f Lnet/minecraft/class_12197; field_18325 schedule + f I field_30096 ACTIVITY_REFRESH_COOLDOWN + f Ljava/util/function/Supplier; field_24657 codecSupplier + f Lnet/minecraft/class_4168; field_18329 defaultActivity + f Ljava/util/Map; field_22282 forgettingActivityMemories + c The map from activities to the memories to forget after the activity is\ncompleted. + f J field_18853 activityStartTime + f Ljava/util/Set; field_18327 coreActivities + f Ljava/util/Map; field_18322 memories + f Ljava/util/Map; field_18326 requiredActivityMemories + f Lorg/slf4j/Logger; field_24656 LOGGER + f Ljava/util/Set; field_18328 possibleActivities + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)V method_19545 updateTasks + p 2 entity + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)V method_18891 startTasks + p 2 entity + p 1 world + m ()V method_27075 tickMemories + m (Ljava/util/Set;)V method_18890 setCoreActivities + p 1 coreActivities + m (ILcom/google/common/collect/ImmutableList;)Lcom/google/common/collect/ImmutableList; method_24524 indexTaskList + p 1 begin + c the beginning of the index of tasks, exclusive + p 2 tasks + m (Lnet/minecraft/class_4168;ILcom/google/common/collect/ImmutableList;)V method_18882 setTaskList + p 1 activity + p 3 list + p 2 begin + m (Ljava/lang/Object;)Z method_19948 isEmptyCollection + p 1 value + m (Lnet/minecraft/class_12205;JLnet/minecraft/class_243;)V method_18871 refreshActivities + p 4 pos + p 2 time + p 1 attributeAccess + m (Lnet/minecraft/class_4140;)Z method_18896 hasMemoryModule + p 1 type + m ()V method_24536 resetPossibleActivities + m (Lnet/minecraft/class_4140;Ljava/lang/Object;)V method_18878 remember + p 1 type + p 2 value + m (Lnet/minecraft/class_4140;)Ljava/util/Optional; method_46873 getOptionalMemory + p 1 type + m ()V method_35060 clear + m (Lnet/minecraft/class_4168;ILcom/google/common/collect/ImmutableList;Ljava/util/Set;)V method_66676 setTaskList + p 4 requiredMemories + p 3 tasks + p 2 begin + p 1 activity + m (Lnet/minecraft/class_4168;)Z method_18874 canDoActivity + p 1 activity + m (Lnet/minecraft/class_4168;Lcom/google/common/collect/ImmutableList;Ljava/util/Set;)V method_24529 setTaskList + p 1 activity + p 2 indexedTasks + p 3 requiredMemories + m (Ljava/util/Collection;Ljava/util/Collection;)Lcom/mojang/serialization/Codec; method_28313 createBrainCodec + p 1 sensors + p 0 memoryModules + m ()Lnet/minecraft/class_4095; method_18911 copy + m ()Ljava/util/Map; method_35058 getMemories + m (Lnet/minecraft/class_4140;)J method_36978 getMemoryExpiry + p 1 type + m (Lnet/minecraft/class_4168;)Ljava/util/Set; method_18910 method_18910 + p 0 activity2 + m (Lnet/minecraft/class_4168;Lcom/google/common/collect/ImmutableList;)V method_18881 setTaskList + p 2 indexedTasks + p 1 activity + m (Lnet/minecraft/class_4168;)V method_18897 setDefaultActivity + p 1 activity + m (Lnet/minecraft/class_4140;Ljava/lang/Object;J)V method_24525 remember + p 3 expiry + p 2 value + p 1 type + m (Lnet/minecraft/class_4168;)V method_24526 doExclusively + p 1 activity + m (Lnet/minecraft/class_4168;ILcom/google/common/collect/ImmutableList;Lnet/minecraft/class_4140;)V method_24527 setTaskList + p 3 tasks + p 2 begin + p 4 memoryType + p 1 activity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)V method_27073 tickSensors + p 2 entity + p 1 world + m ()Ljava/util/List; method_27074 getRunningTasks + m (Lnet/minecraft/class_4140;Ljava/lang/Object;)Z method_29519 hasMemoryModuleWithValue + p 1 type + p 2 value + m (Ljava/util/Collection;Ljava/util/Collection;Lcom/google/common/collect/ImmutableList;Ljava/util/function/Supplier;)V + p 1 memories + p 2 sensors + p 3 memoryEntries + p 4 codecSupplier + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)V method_19542 tick + p 2 entity + p 1 world + m (Lnet/minecraft/class_4140;)Ljava/util/Optional; method_18904 getOptionalRegisteredMemory + p 1 type + m (Ljava/util/List;)V method_24531 resetPossibleActivities + p 1 activities + m (Lnet/minecraft/class_4140;)V method_49710 method_49710 + p 1 type + m (Ljava/lang/Object;Ljava/lang/Object;)Z method_29518 method_29518 + p 1 memoryValue + m (Lnet/minecraft/class_4168;)Z method_18906 hasActivity + p 1 activity + m (Lnet/minecraft/class_4168;Lcom/google/common/collect/ImmutableList;Ljava/util/Set;Ljava/util/Set;)V method_24530 setTaskList + p 1 activity + p 4 forgettingMemories + p 3 requiredMemories + p 2 indexedTasks + m (Lnet/minecraft/class_4140;)V method_18875 forget + p 1 type + m (Ljava/lang/Integer;)Ljava/util/Map; method_18887 method_18887 + p 0 index + m ()Ljava/util/stream/Stream; method_28315 streamMemories + m ()Ljava/util/Set; method_35059 getPossibleActivities + m (Lnet/minecraft/class_4140;Lnet/minecraft/class_4141;)Z method_18876 isMemoryInState + p 2 state + p 1 type + m (Lnet/minecraft/class_4168;)V method_24537 forgetIrrelevantMemories + p 1 except + m (Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/class_4095$class_5303; method_28311 createProfile + p 0 memoryModules + p 1 sensors + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;)V method_18900 stopAllTasks + p 1 world + p 2 entity + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; method_28310 encode + p 1 ops + m (Lnet/minecraft/class_4140;Ljava/util/Optional;)V method_18879 remember + p 1 type + p 2 value + m ()V method_49709 forgetAll + m (Lnet/minecraft/class_4140;Ljava/util/Optional;)V method_24535 setMemory + p 1 type + p 2 memory + m ()Ljava/util/Optional; method_24538 getFirstPossibleNonCoreActivity + m (Ljava/util/Map$Entry;)Lnet/minecraft/class_4095$class_5302; method_28312 method_28312 + p 0 entry + m (Lnet/minecraft/class_4168;)V method_18880 resetPossibleActivities + p 1 except + m (Lnet/minecraft/class_12197;)V method_18884 setSchedule + p 1 schedule + m ()Z method_74662 isEmpty +c net/minecraft/class_4095$class_5303 net/minecraft/entity/ai/brain/Brain$Profile + c A simple profile of a brain. Indicates what types of memory modules and\nsensors a brain can have. + f Lcom/mojang/serialization/Codec; field_24665 codec + f Ljava/util/Collection; field_24663 memoryModules + f Ljava/util/Collection; field_24664 sensors + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/class_4095; method_28335 deserialize + p 1 data + m (Ljava/util/Collection;Ljava/util/Collection;)V + p 2 sensors + p 1 memoryModules +c net/minecraft/class_4095$class_5302 net/minecraft/entity/ai/brain/Brain$MemoryEntry + f Ljava/util/Optional; field_24662 data + f Lnet/minecraft/class_4140; field_24661 type + m (Lnet/minecraft/class_4140;Ljava/util/Optional;)V + p 2 data + p 1 type + m (Lnet/minecraft/class_4095;)V method_28328 apply + p 1 brain + m (Lcom/mojang/serialization/RecordBuilder;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Lnet/minecraft/class_4831;)V method_28332 method_28332 + p 4 data + m (Lcom/mojang/serialization/RecordBuilder;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;)V method_28331 method_28331 + p 3 codec + m (Lnet/minecraft/class_4140;Ljava/util/Optional;)Lnet/minecraft/class_4095$class_5302; method_28333 of + p 1 data + p 0 type + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)V method_28330 serialize + p 1 ops + p 2 builder +c net/minecraft/class_4095$1 net/minecraft/entity/ai/brain/Brain$1 + m (Lnet/minecraft/class_4140;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_2960; method_28319 method_28319 + p 1 codec + m (Lnet/minecraft/class_4140;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_28320 parse + p 1 memoryType + p 2 ops + p 3 value + m (Lnet/minecraft/class_4140;)Ljava/util/stream/Stream; method_28326 method_28326 + p 0 memoryType + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)Lcom/mojang/serialization/RecordBuilder; encode encode + p 1 brain + p 2 ops + p 3 recordBuilder + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; decode decode + p 1 ops + p 2 map + m (Lnet/minecraft/class_4140;Lnet/minecraft/class_4831;)Lnet/minecraft/class_4095$class_5302; method_28318 method_28318 + p 1 data + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/class_4140;)Lcom/mojang/serialization/DataResult; method_28321 method_28321 + p 3 memoryType + m (Lcom/mojang/serialization/DynamicOps;Lorg/apache/commons/lang3/mutable/MutableObject;Lcom/mojang/datafixers/util/Pair;)V method_28324 method_28324 + p 3 pair + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/stream/Stream; keys keys + p 1 ops + m (Lnet/minecraft/class_4095;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)Lcom/mojang/serialization/RecordBuilder; method_28316 encode + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;Lnet/minecraft/class_4095$class_5302;)V method_28322 method_28322 + p 2 entry + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/DataResult; method_28323 method_28323 + p 2 codec + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/class_2960;)Ljava/lang/Object; method_28325 method_28325 + p 1 id +c net/minecraft/class_4094 net/minecraft/entity/InteractionObserver + m (Lnet/minecraft/class_4151;Lnet/minecraft/class_1297;)V method_18870 onInteractionWith + p 2 entity + p 1 interaction +c net/minecraft/class_1812 net/minecraft/item/PotionItem +c net/minecraft/class_1811 net/minecraft/item/RangedWeaponItem + f Ljava/util/function/Predicate; field_18281 BOW_PROJECTILES + f Ljava/util/function/Predicate; field_18282 CROSSBOW_HELD_PROJECTILES + m ()Ljava/util/function/Predicate; method_19268 getProjectiles + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;Z)Lnet/minecraft/class_1799; method_57391 getProjectile + p 3 multishot + p 2 shooter + p 1 projectileStack + p 0 stack + m ()Ljava/util/function/Predicate; method_20310 getHeldProjectiles + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Z)Lnet/minecraft/class_1676; method_57344 createArrowEntity + p 2 shooter + p 3 weaponStack + p 4 projectileStack + p 5 critical + p 1 world + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;)Ljava/util/List; method_57390 load + p 2 shooter + p 1 projectileStack + p 0 stack + m ()I method_24792 getRange + m (Lnet/minecraft/class_1799;)Z method_18817 method_18817 + p 0 stack + m (Lnet/minecraft/class_1309;IFFFLnet/minecraft/class_1309;Lnet/minecraft/class_1676;)V method_61659 method_61659 + p 7 projectile + m (Lnet/minecraft/class_1799;)Z method_18816 method_18816 + p 0 stack + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1676;IFFFLnet/minecraft/class_1309;)V method_7763 shoot + p 7 target + p 6 yaw + p 5 divergence + p 4 speed + p 3 index + p 2 projectile + p 1 shooter + m (Lnet/minecraft/class_1309;Ljava/util/function/Predicate;)Lnet/minecraft/class_1799; method_18815 getHeldProjectile + p 0 entity + p 1 predicate + m (Lnet/minecraft/class_1799;)I method_57345 getWeaponStackDamage + p 1 projectile + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1268;Lnet/minecraft/class_1799;Ljava/util/List;FFZLnet/minecraft/class_1309;)V method_57393 shootAll + p 4 stack + p 3 hand + p 6 speed + p 5 projectiles + p 8 critical + p 7 divergence + p 9 target + p 2 shooter + p 1 world +c net/minecraft/class_1814 net/minecraft/util/Rarity + f Lnet/minecraft/class_9139; field_50003 PACKET_CODEC + f Ljava/lang/String; field_50005 name + f Ljava/util/function/IntFunction; field_50002 ID_TO_VALUE + f Lnet/minecraft/class_124; field_8908 formatting + f I field_50004 index + f Lcom/mojang/serialization/Codec; field_50001 CODEC + f Lnet/minecraft/class_1814; field_8907 UNCOMMON + f Lnet/minecraft/class_1814; field_8906 COMMON + f Lnet/minecraft/class_1814; field_8903 RARE + f Lnet/minecraft/class_1814; field_8904 EPIC + m (Lnet/minecraft/class_1814;)I method_58415 method_58415 + p 0 value + m (Ljava/lang/String;IILjava/lang/String;Lnet/minecraft/class_124;)V + p 3 index + p 4 name + p 5 formatting + m (Lnet/minecraft/class_1814;)I method_58414 method_58414 + p 0 value + m ()Lnet/minecraft/class_124; method_58413 getFormatting +c net/minecraft/class_1819 net/minecraft/item/ShieldItem +c net/minecraft/class_1817 net/minecraft/server/network/ServerItemCooldownManager + f Lnet/minecraft/class_3222; field_8910 player + m (Lnet/minecraft/class_3222;)V + p 1 player +c net/minecraft/class_1823 net/minecraft/item/SnowballItem + f F field_55045 POWER +c net/minecraft/class_1822 net/minecraft/item/SignItem + m (Lnet/minecraft/class_1792$class_1793;Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2350;)V + p 4 verticalAttachmentDirection + p 2 standingBlock + p 3 wallBlock + p 1 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)V + p 1 standingBlock + p 2 wallBlock + p 3 settings +c net/minecraft/class_1821 net/minecraft/item/ShovelItem + f Ljava/util/Map; field_8912 PATH_STATES + m (Lnet/minecraft/class_9886;FFLnet/minecraft/class_1792$class_1793;)V + p 1 material + p 3 attackSpeed + p 2 attackDamage + p 4 settings +c net/minecraft/class_1820 net/minecraft/item/ShearsItem + m ()Lnet/minecraft/class_9424; method_58416 createToolComponent +c net/minecraft/class_1827 net/minecraft/item/VerticallyAttachableBlockItem + c An item for a block that can be vertically attached as well as horizontally.\nThis is usually a block that is either standing or attached to a wall; however,\nsome blocks are instead hung from the ceiling. + f Lnet/minecraft/class_2350; field_40240 verticalAttachmentDirection + f Lnet/minecraft/class_2248; field_8918 wallBlock + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_2350;Lnet/minecraft/class_1792$class_1793;)V + p 4 settings + p 3 verticalAttachmentDirection + c the direction of the item's vertical attachment, {@link Direction#UP} for hanging blocks\nand {@link Direction#DOWN} for standing blocks + p 2 wallBlock + p 1 standingBlock + m (Lnet/minecraft/class_4538;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)Z method_45431 canPlaceAt + p 2 state + p 3 pos + p 1 world +c net/minecraft/class_1826 net/minecraft/item/SpawnEggItem + f Ljava/util/Map; field_8914 SPAWN_EGGS + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1308;Lnet/minecraft/class_1299;Lnet/minecraft/class_3218;Lnet/minecraft/class_243;Lnet/minecraft/class_1799;)Ljava/util/Optional; method_24793 spawnBaby + p 3 entityType + p 4 world + p 1 user + p 2 entity + p 5 pos + p 6 stack + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1299;)Z method_8018 isOfSameEntityType + p 1 stack + p 2 entityType + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;ZZ)Lnet/minecraft/class_1269; method_73193 spawnMobEntity + p 4 pos + p 3 world + p 2 stack + p 1 entity + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_1826; method_8019 forEntity + p 0 type + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1299; method_8015 getEntityType + p 1 stack + m ()Ljava/lang/Iterable; method_8017 getAll +c net/minecraft/class_1825 net/minecraft/item/SpectralArrowItem +c net/minecraft/class_1828 net/minecraft/item/SplashPotionItem +c net/minecraft/class_4077 net/minecraft/server/world/TicketDistanceLevelPropagator + f Lnet/minecraft/class_3204; field_55592 levelManager + f Lnet/minecraft/class_10592; field_55593 ticketManager + f I field_44854 UNLOADED + m (I)I method_18746 update + p 1 distance + m (Lnet/minecraft/class_3204;Lnet/minecraft/class_10592;)V + p 1 levelManager + p 2 ticketManager +c net/minecraft/class_4076 net/minecraft/util/math/ChunkSectionPos + f Lnet/minecraft/class_9139; field_62995 PACKET_CODEC + m (JIII)J method_18678 offset + c Offsets a packed chunk section position by the given offsets.\n@see #asLong + p 0 packed + p 2 x + p 4 z + p 3 y + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_4076; method_18682 from + p 0 pos + m ()I method_19532 getMaxZ + m (S)Lnet/minecraft/class_2338; method_30557 unpackBlockPos + c Gets the world position of the given local position within this chunk section.\n@see #packLocal + p 1 packedLocalPos + m (S)I method_30552 unpackLocalY + c Gets the local y-coordinate from the given packed local position.\n@see #packLocal + p 0 packedLocalPos + m (S)I method_30556 unpackBlockZ + c Gets the world z-coordinate of the given local position within this chunk section.\n@see #packLocal + p 1 packedLocalPos + m (Lnet/minecraft/class_2791;)Lnet/minecraft/class_4076; method_33705 from + p 0 chunk + m (III)Lnet/minecraft/class_4076; method_18676 from + c Creates a chunk section position from its x-, y- and z-coordinates. + p 0 x + p 1 y + p 2 z + m (II)J method_51687 withZeroY + p 0 x + p 1 z + m (D)I method_32204 getSectionCoord + p 0 coord + m ()Lnet/minecraft/class_2338; method_19767 getMinPos + m ()I method_19528 getMinY + m (J)I method_18689 unpackY + c Gets the chunk section y-coordinate from the given packed chunk section coordinate.\n@see #asLong + p 0 packed + m (JLit/unimi/dsi/fastutil/longs/LongConsumer;)V method_39490 forEachChunkSectionAround + p 2 consumer + p 0 pos + m (J)Lnet/minecraft/class_4076; method_18677 from + c Creates a chunk section position from its packed representation.\n@see #asLong + p 0 packed + m (J)J method_18693 withZeroY + c Gets the packed chunk section coordinate at y=0 for the same chunk as\nthe given packed chunk section coordinate.\n@see #asLong + p 0 pos + m (S)I method_30551 unpackLocalX + c Gets the local x-coordinate from the given packed local position.\n@see #packLocal + p 0 packedLocalPos + m (J)J method_66549 toChunkPos + p 0 sectionPos + m ()Ljava/util/stream/Stream; method_19533 streamBlocks + m (S)I method_30555 unpackBlockY + c Gets the world y-coordinate of the given local position within this chunk section.\n@see #packLocal + p 1 packedLocalPos + m (D)I method_42615 getSectionCoordFloored + p 0 coord + m ()I method_18674 getSectionX + m ()J method_18694 asLong + m ()Lnet/minecraft/class_2338; method_19768 getCenterPos + m ()I method_19529 getMinZ + m (Lnet/minecraft/class_5568;)Lnet/minecraft/class_4076; method_42614 from + p 0 entity + m ()I method_19530 getMaxX + m (J)I method_18686 unpackX + c Gets the chunk section x-coordinate from the given packed chunk section coordinate.\n@see #asLong + p 0 packed + m (Lnet/minecraft/class_2374;)Lnet/minecraft/class_4076; method_18680 from + p 0 pos + m (S)I method_30554 unpackBlockX + c Gets the world x-coordinate of the given local position within this chunk section.\n@see #packLocal + p 1 packedLocalPos + m (IIILit/unimi/dsi/fastutil/longs/LongConsumer;)V method_39489 forEachChunkSectionAround + c Performs an action for each chunk section enclosing a block position\nadjacent to {@code (x, y, z)}. + p 0 x + p 1 y + p 2 z + p 3 consumer + c the consumer that takes the chunk section position as a long + m ()I method_18687 getSectionZ + m (J)I method_18690 unpackZ + c Gets the chunk section z-coordinate from the given packed chunk section coordinate.\n@see #asLong + p 0 packed + m (I)I method_18675 getSectionCoord + c Converts a world coordinate to the corresponding chunk-section coordinate.\n\n@implNote This implementation returns {@code coord / 16}. + p 0 coord + m ()I method_18683 getSectionY + m ()Lnet/minecraft/class_1923; method_18692 toChunkPos + m (III)J method_18685 asLong + p 1 y + p 2 z + p 0 x + m (Lnet/minecraft/class_2338;)S method_19454 packLocal + c Returns the local position of the given block position relative to\nits respective chunk section, packed into a short. + p 0 pos + m (Lnet/minecraft/class_1923;I)Lnet/minecraft/class_4076; method_18681 from + c Creates a chunk section position from a chunk position and the y-coordinate of the vertical section. + p 0 chunkPos + p 1 y + m (I)I method_18688 getBlockCoord + c Converts the given chunk section coordinate to the world coordinate system.\nThe returned coordinate will always be at the origin of the chunk section in world space. + p 0 sectionCoord + m ()I method_19531 getMaxY + m (Lnet/minecraft/class_4076;I)Ljava/util/stream/Stream; method_20439 stream + p 0 center + p 1 radius + m (Lnet/minecraft/class_1923;III)Ljava/util/stream/Stream; method_22446 stream + p 1 radius + p 0 center + p 3 maxY + p 2 minY + m (S)I method_30553 unpackLocalZ + c Gets the local z-coordinate from the given packed local position.\n@see #packLocal + p 0 packedLocalPos + m (Lnet/minecraft/class_2338;Lit/unimi/dsi/fastutil/longs/LongConsumer;)V method_39491 forEachChunkSectionAround + p 0 pos + p 1 consumer + m (J)J method_18691 fromBlockPos + c Gets the packed chunk section coordinate for a given packed {@link BlockPos}.\n@see #asLong\n@see BlockPos#asLong + p 0 blockPos + m (III)Lnet/minecraft/class_4076; method_34591 add + m (I)I method_18684 getLocalCoord + c Converts a world coordinate to the local coordinate system (0-15) of its corresponding chunk section. + p 0 coord + m (Lnet/minecraft/class_2338;)J method_33706 toLong + p 0 pos + m (JLnet/minecraft/class_2350;)J method_18679 offset + c Offsets a packed chunk section position in the given direction.\n@see #asLong + p 0 packed + p 2 direction + m ()I method_19527 getMinX + m (IIIIII)Ljava/util/stream/Stream; method_20438 stream + p 2 minZ + p 1 minY + p 0 minX + p 5 maxZ + p 4 maxY + p 3 maxX + m (II)I method_32205 getOffsetPos + p 1 offset + p 0 chunkCoord +c net/minecraft/class_4076$1 net/minecraft/util/math/ChunkSectionPos$1 + f Lnet/minecraft/class_3980; field_19263 iterator + m (Ljava/util/function/Consumer;)Z tryAdvance tryAdvance + p 1 consumer +c net/minecraft/class_4071 net/minecraft/client/gui/screen/Overlay + m ()Z method_18640 pausesGame + m ()V method_74217 tick +c net/minecraft/class_4079 net/minecraft/world/SectionDistanceLevelPropagator + m (J)I method_18749 getInitialLevel + p 1 id + m (JIZ)V method_18750 update + p 3 level + p 4 decrease + p 1 id +c net/minecraft/class_4081 net/minecraft/entity/effect/StatusEffectCategory + f Lnet/minecraft/class_124; field_18274 formatting + f Lnet/minecraft/class_4081; field_18271 BENEFICIAL + f Lnet/minecraft/class_4081; field_18273 NEUTRAL + f Lnet/minecraft/class_4081; field_18272 HARMFUL + m ()Lnet/minecraft/class_124; method_18793 getFormatting + m (Ljava/lang/String;ILnet/minecraft/class_124;)V + p 3 format +c net/minecraft/class_4089 net/minecraft/client/particle/ParticleTextureData + f Ljava/util/List; field_18299 textureList + m (Lcom/google/gson/JsonElement;)Ljava/lang/String; method_18827 method_18827 + p 0 texture + m (Ljava/util/List;)V + p 1 textureList + m ()Ljava/util/List; method_18826 getTextureList + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/class_4089; method_18828 load + p 0 json +c net/minecraft/class_1801 net/minecraft/item/KnowledgeBookItem + f Lorg/slf4j/Logger; field_8042 LOGGER +c net/minecraft/class_1800 net/minecraft/client/render/item/property/numeric/NumericProperty + m ()Lcom/mojang/serialization/MapCodec; method_65643 getCodec + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_638;Lnet/minecraft/class_11566;I)F method_65644 getValue + p 1 stack + p 3 context + p 2 world + p 4 seed +c net/minecraft/class_1804 net/minecraft/item/LeadItem + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_9817;)Z method_55761 method_55761 + p 1 entity + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_1269; method_7994 attachHeldMobsToBlock + p 2 pos + p 0 player + p 1 world +c net/minecraft/class_1803 net/minecraft/item/LingeringPotionItem +c net/minecraft/class_1802 net/minecraft/item/Items + f Lnet/minecraft/class_1792; field_8210 SPRUCE_WOOD + f Lnet/minecraft/class_1792; field_8452 BUBBLE_CORAL_FAN + f Lnet/minecraft/class_1792; field_8343 CRACKED_STONE_BRICKS + f Lnet/minecraft/class_1792; field_8476 COAL_ORE + f Lnet/minecraft/class_1792; field_8258 WHITE_BED + f Lnet/minecraft/class_1792; field_8125 JUNGLE_LOG + f Lnet/minecraft/class_1792; field_8149 VINDICATOR_SPAWN_EGG + f Lnet/minecraft/class_1792; field_43191 SUSPICIOUS_GRAVEL + f Lnet/minecraft/class_1792; field_40235 MANGROVE_HANGING_SIGN + f Lnet/minecraft/class_1792; field_20409 CUT_RED_SANDSTONE + f Lnet/minecraft/class_1792; field_8586 RED_BANNER + f Lnet/minecraft/class_1792; field_23255 STRIDER_SPAWN_EGG + f Lnet/minecraft/class_1792; field_28859 DEEPSLATE_BRICKS + f Lnet/minecraft/class_1792; field_8562 PURPLE_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_47004 POLISHED_TUFF_STAIRS + f Lnet/minecraft/class_1792; field_8671 MAGENTA_BANNER + f Lnet/minecraft/class_1792; field_8780 OAK_BUTTON + f Lnet/minecraft/class_1792; field_29020 DEEPSLATE_IRON_ORE + f Lnet/minecraft/class_1792; field_8100 PUFFERFISH_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8451 LIGHT_GRAY_SHULKER_BOX + f Lnet/minecraft/class_1792; field_8342 BRICK_SLAB + f Lnet/minecraft/class_1792; field_8124 BROWN_BANNER + f Lnet/minecraft/class_1792; field_8366 TRIPWIRE_HOOK + f Lnet/minecraft/class_1792; field_8148 INFESTED_CHISELED_STONE_BRICKS + f Lnet/minecraft/class_1792; field_8499 QUARTZ_STAIRS + f Lnet/minecraft/class_1792; field_22010 CRIMSON_DOOR + f Lnet/minecraft/class_1792; field_8257 CYAN_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_17520 CACTUS + f Lnet/minecraft/class_1792; field_20407 ANDESITE + f Lnet/minecraft/class_1792; field_40236 BAMBOO_HANGING_SIGN + f Lnet/minecraft/class_1792; field_20408 RED_SANDSTONE + f Lnet/minecraft/class_1792; field_27060 GREEN_CANDLE + f Lnet/minecraft/class_1792; field_56554 SHORT_DRY_GRASS + f Lnet/minecraft/class_1792; field_8587 ACACIA_WOOD + f Lnet/minecraft/class_1792; field_8672 LIME_TERRACOTTA + f Lnet/minecraft/class_1792; field_8781 STONE_BUTTON + f Lnet/minecraft/class_1792; field_47003 POLISHED_TUFF_SLAB + f Lnet/minecraft/class_1792; field_8890 MOSSY_STONE_BRICK_STAIRS + f Lnet/minecraft/class_1792; field_23256 LODESTONE + f Lnet/minecraft/class_1792; field_59711 DRIED_GHAST + f Lnet/minecraft/class_1792; field_8430 SMOOTH_QUARTZ_STAIRS + f Lnet/minecraft/class_1792; field_8212 OAK_STAIRS + f Lnet/minecraft/class_1792; field_8321 JUNGLE_TRAPDOOR + f Lnet/minecraft/class_1792; field_8454 DARK_OAK_FENCE + f Lnet/minecraft/class_1792; field_22031 CRIMSON_PLANKS + f Lnet/minecraft/class_1792; field_8369 MOSSY_COBBLESTONE_SLAB + f Lnet/minecraft/class_1792; field_8127 PINK_CONCRETE + f Lnet/minecraft/class_1792; field_43193 SNIFFER_EGG + f Lnet/minecraft/class_1792; field_40213 BAMBOO_PLANKS + f Lnet/minecraft/class_1792; field_56555 TALL_DRY_GRASS + f Lnet/minecraft/class_1792; field_40237 CRIMSON_HANGING_SIGN + f Lnet/minecraft/class_1792; field_47002 POLISHED_TUFF + f Lnet/minecraft/class_1792; field_8584 BROWN_SHULKER_BOX + f Lnet/minecraft/class_1792; field_47026 CHISELED_TUFF_BRICKS + f Lnet/minecraft/class_1792; field_8693 JACK_O_LANTERN + f Lnet/minecraft/class_1792; field_27061 RED_CANDLE + f Lnet/minecraft/class_1792; field_29022 DEEPSLATE_DIAMOND_ORE + f Lnet/minecraft/class_1792; field_8320 OAK_SLAB + f Lnet/minecraft/class_1792; field_8211 DETECTOR_RAIL + f Lnet/minecraft/class_1792; field_8126 BLUE_STAINED_GLASS + f Lnet/minecraft/class_1792; field_22032 WARPED_PLANKS + f Lnet/minecraft/class_1792; field_8235 VEX_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8368 GREEN_BED + f Lnet/minecraft/class_1792; field_43192 PITCHER_PLANT + f Lnet/minecraft/class_1792; field_28042 POINTED_DRIPSTONE + f Lnet/minecraft/class_1792; field_40214 BAMBOO_MOSAIC + f Lnet/minecraft/class_1792; field_40238 WARPED_HANGING_SIGN + f Lnet/minecraft/class_1792; field_56556 CACTUS_FLOWER + f Lnet/minecraft/class_1792; field_8585 DEAD_BRAIN_CORAL_FAN + f Lnet/minecraft/class_1792; field_47001 CHISELED_TUFF + f Lnet/minecraft/class_1792; field_27062 BLACK_CANDLE + f Lnet/minecraft/class_1792; field_8561 LARGE_FERN + f Lnet/minecraft/class_1792; field_47025 WAXED_OXIDIZED_COPPER_BULB + f Lnet/minecraft/class_1792; field_8670 PHANTOM_SPAWN_EGG + f Lnet/minecraft/class_1792; field_29021 DEEPSLATE_LAPIS_ORE + f Lnet/minecraft/class_1792; field_8230 REDSTONE_LAMP + f Lnet/minecraft/class_1792; field_8472 STRIPPED_BIRCH_WOOD + f Lnet/minecraft/class_1792; field_8254 WITCH_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8363 LIGHT_GRAY_STAINED_GLASS + f Lnet/minecraft/class_1792; field_8121 LADDER + f Lnet/minecraft/class_1792; field_8496 DARK_OAK_SIGN + f Lnet/minecraft/class_1792; field_8278 FIRE_CORAL_BLOCK + f Lnet/minecraft/class_1792; field_47000 TUFF_WALL + f Lnet/minecraft/class_1792; field_8809 LAPIS_ORE + f Lnet/minecraft/class_1792; field_22013 CRIMSON_NYLIUM + f Lnet/minecraft/class_1792; field_47024 WAXED_WEATHERED_COPPER_BULB + f Lnet/minecraft/class_11708; field_61898 COPPER_CHAINS + f Lnet/minecraft/class_1792; field_8582 WHITE_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_8691 OAK_DOOR + f Lnet/minecraft/class_1792; field_40231 BIRCH_HANGING_SIGN + f Lnet/minecraft/class_1792; field_8120 GREEN_CONCRETE + f Lnet/minecraft/class_1792; field_8471 FERN + f Lnet/minecraft/class_1792; field_8362 STRIPPED_SPRUCE_WOOD + f Lnet/minecraft/class_1792; field_8495 SPRUCE_TRAPDOOR + f Lnet/minecraft/class_11708; field_61897 COPPER_BARS + f Lnet/minecraft/class_1792; field_8253 LIME_CARPET + f Lnet/minecraft/class_1792; field_8386 PRISMARINE_STAIRS + f Lnet/minecraft/class_1792; field_8277 PINK_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_8059 ORANGE_BED + f Lnet/minecraft/class_1792; field_17540 DARK_OAK_SAPLING + f Lnet/minecraft/class_1792; field_22014 HOGLIN_SPAWN_EGG + f Lnet/minecraft/class_1792; field_17346 CAMPFIRE + f Lnet/minecraft/class_1792; field_42699 DECORATED_POT + f Lnet/minecraft/class_1792; field_47023 WAXED_EXPOSED_COPPER_BULB + f Lnet/minecraft/class_1792; field_8583 OAK_LOG + f Lnet/minecraft/class_1792; field_40232 JUNGLE_HANGING_SIGN + f Lnet/minecraft/class_1792; field_8232 SKELETON_HORSE_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8341 WHITE_CONCRETE + f Lnet/minecraft/class_1792; field_8474 BRAIN_CORAL_BLOCK + f Lnet/minecraft/class_1792; field_8256 TALL_GRASS + f Lnet/minecraft/class_1792; field_8365 FARMLAND + f Lnet/minecraft/class_1792; field_47022 WAXED_COPPER_BULB + f Lnet/minecraft/class_1792; field_22011 CRIMSON_SIGN + f Lnet/minecraft/class_1792; field_40233 ACACIA_HANGING_SIGN + f Lnet/minecraft/class_1792; field_8580 PINK_CARPET + f Lnet/minecraft/class_1792; field_8340 LIME_STAINED_GLASS + f Lnet/minecraft/class_1792; field_8122 SPRUCE_STAIRS + f Lnet/minecraft/class_1792; field_8364 LIGHT_BLUE_CONCRETE + f Lnet/minecraft/class_1792; field_8146 LIGHT_GRAY_BED + f Lnet/minecraft/class_1792; field_47021 OXIDIZED_COPPER_BULB + f Lnet/minecraft/class_1792; field_8808 STRIPPED_DARK_OAK_LOG + f Lnet/minecraft/class_1792; field_22012 WARPED_SIGN + f Lnet/minecraft/class_1792; field_40234 DARK_OAK_HANGING_SIGN + f Lnet/minecraft/class_1792; field_8581 LIME_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_8690 PURPLE_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_8274 PARROT_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8141 GLASS_PANE + f Lnet/minecraft/class_1792; field_8056 END_ROD + f Lnet/minecraft/class_1792; field_61330 WARPED_SHELF + f Lnet/minecraft/class_1792; field_8165 SPRUCE_DOOR + f Lnet/minecraft/class_1792; field_37529 MANGROVE_TRAPDOOR + f Lnet/minecraft/class_1792; field_8189 SPRUCE_SLAB + f Lnet/minecraft/class_1792; field_17498 SEA_PICKLE + f Lnet/minecraft/class_1792; field_20400 END_STONE_BRICKS + f Lnet/minecraft/class_1792; field_8829 LIGHT_BLUE_SHULKER_BOX + f Lnet/minecraft/class_1792; field_42701 CHERRY_BUTTON + f Lnet/minecraft/class_1792; field_28875 DEEPSLATE_BRICK_SLAB + f Lnet/minecraft/class_1792; field_23849 POLISHED_BLACKSTONE_SLAB + f Lnet/minecraft/class_1792; field_28657 BIG_DRIPLEAF + f Lnet/minecraft/class_1792; field_21997 CRIMSON_FENCE_GATE + f Lnet/minecraft/class_1792; field_8140 CONDUIT + f Lnet/minecraft/class_1792; field_8491 DANDELION + f Lnet/minecraft/class_1792; field_8382 PODZOL + f Lnet/minecraft/class_1792; field_46249 PUMPKIN_SEEDS + f Lnet/minecraft/class_1792; field_8164 BLUE_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_8297 RAVAGER_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8055 LAPIS_BLOCK + f Lnet/minecraft/class_1792; field_61331 EXPOSED_LIGHTNING_ROD + f Lnet/minecraft/class_1792; field_17499 BLUE_ORCHID + f Lnet/minecraft/class_1792; field_42700 CHERRY_STAIRS + f Lnet/minecraft/class_1792; field_28658 SMALL_DRIPLEAF + f Lnet/minecraft/class_1792; field_21996 WARPED_FENCE + f Lnet/minecraft/class_1792; field_47314 TRIAL_SPAWNER + f Lnet/minecraft/class_1792; field_8490 PURPUR_PILLAR + f Lnet/minecraft/class_1792; field_8470 ZOMBIE_HEAD + f Lnet/minecraft/class_1792; field_8494 GOLD_BLOCK + f Lnet/minecraft/class_1792; field_8385 YELLOW_TERRACOTTA + f Lnet/minecraft/class_1792; field_37527 MANGROVE_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_61332 WEATHERED_LIGHTNING_ROD + f Lnet/minecraft/class_1792; field_20402 QUARTZ_BLOCK + f Lnet/minecraft/class_1792; field_8827 END_PORTAL_FRAME + f Lnet/minecraft/class_1792; field_42703 CHERRY_FENCE_GATE + f Lnet/minecraft/class_1792; field_23847 GILDED_BLACKSTONE + f Lnet/minecraft/class_1792; field_47313 BREEZE_SPAWN_EGG + f Lnet/minecraft/class_1792; field_21999 SOUL_SOIL + f Lnet/minecraft/class_1792; field_8142 YELLOW_CARPET + f Lnet/minecraft/class_1792; field_8493 PIG_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8384 MAGENTA_CARPET + f Lnet/minecraft/class_1792; field_8166 SMOOTH_SANDSTONE_STAIRS + f Lnet/minecraft/class_1792; field_8275 MOSSY_COBBLESTONE_STAIRS + f Lnet/minecraft/class_1792; field_37528 MANGROVE_DOOR + f Lnet/minecraft/class_1792; field_8299 MOOSHROOM_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8057 PRISMARINE_WALL + f Lnet/minecraft/class_1792; field_61333 OXIDIZED_LIGHTNING_ROD + f Lnet/minecraft/class_1792; field_8828 SLIME_BLOCK + f Lnet/minecraft/class_1792; field_20401 DIORITE + f Lnet/minecraft/class_1792; field_8804 BRICK_WALL + f Lnet/minecraft/class_1792; field_42702 CHERRY_TRAPDOOR + f Lnet/minecraft/class_1792; field_47009 COPPER_GRATE + f Lnet/minecraft/class_1792; field_23848 POLISHED_BLACKSTONE + f Lnet/minecraft/class_1792; field_21998 WARPED_FENCE_GATE + f Lnet/minecraft/class_11708; field_61900 COPPER_LANTERNS + f Lnet/minecraft/class_1792; field_37509 STRIPPED_MANGROVE_WOOD + f Lnet/minecraft/class_1792; field_8294 BROWN_CARPET + f Lnet/minecraft/class_1792; field_8076 IRON_BARS + f Lnet/minecraft/class_1792; field_8185 SPIDER_SPAWN_EGG + f Lnet/minecraft/class_1792; field_27019 TINTED_GLASS + f Lnet/minecraft/class_1792; field_20404 PRISMARINE + f Lnet/minecraft/class_1792; field_61334 WAXED_LIGHTNING_ROD + f Lnet/minecraft/class_1792; field_61310 WAXED_OXIDIZED_COPPER_CHEST + f Lnet/minecraft/class_1792; field_8607 SHEEP_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8849 SPAWNER + f Lnet/minecraft/class_1792; field_28871 POLISHED_DEEPSLATE + f Lnet/minecraft/class_1792; field_28653 MOSS_CARPET + f Lnet/minecraft/class_1792; field_8801 GLOWSTONE + f Lnet/minecraft/class_1792; field_40239 CAMEL_SPAWN_EGG + f Lnet/minecraft/class_1792; field_40215 CHISELED_BOOKSHELF + f Lnet/minecraft/class_1792; field_56448 BUSH + f Lnet/minecraft/class_1792; field_46791 CRAFTER + f Lnet/minecraft/class_1792; field_8160 DEAD_FIRE_CORAL_BLOCK + f Lnet/minecraft/class_1792; field_47008 TUFF_BRICK_STAIRS + f Lnet/minecraft/class_1792; field_8293 DARK_OAK_FENCE_GATE + f Lnet/minecraft/class_1792; field_41304 PIGLIN_HEAD + f Lnet/minecraft/class_1792; field_8051 DEAD_BUBBLE_CORAL + f Lnet/minecraft/class_1792; field_61311 COPPER_GOLEM_STATUE + f Lnet/minecraft/class_1792; field_8608 GRANITE_STAIRS + f Lnet/minecraft/class_1792; field_28872 POLISHED_DEEPSLATE_SLAB + f Lnet/minecraft/class_1792; field_43194 CALIBRATED_SCULK_SENSOR + f Lnet/minecraft/class_1792; field_8717 LIGHT_BLUE_TERRACOTTA + f Lnet/minecraft/class_1792; field_20403 POLISHED_DIORITE + f Lnet/minecraft/class_1792; field_61335 WAXED_EXPOSED_LIGHTNING_ROD + f Lnet/minecraft/class_1792; field_28654 MOSS_BLOCK + f Lnet/minecraft/class_1792; field_22490 WARPED_HYPHAE + f Lnet/minecraft/class_1792; field_40216 BAMBOO_SLAB + f Lnet/minecraft/class_1792; field_56449 FIREFLY_BUSH + f Lnet/minecraft/class_1792; field_8050 MAGENTA_SHULKER_BOX + f Lnet/minecraft/class_1792; field_8292 INFESTED_CRACKED_STONE_BRICKS + f Lnet/minecraft/class_1792; field_47007 TUFF_BRICK_SLAB + f Lnet/minecraft/class_1792; field_8272 DEAD_HORN_CORAL + f Lnet/minecraft/class_1792; field_8381 DEAD_BRAIN_CORAL + f Lnet/minecraft/class_1792; field_8078 LIGHT_BLUE_CARPET + f Lnet/minecraft/class_1792; field_23140 NETHER_GOLD_ORE + f Lnet/minecraft/class_1792; field_37507 MANGROVE_PLANKS + f Lnet/minecraft/class_1792; field_61312 EXPOSED_COPPER_GOLEM_STATUE + f Lnet/minecraft/class_1792; field_20406 DARK_PRISMARINE + f Lnet/minecraft/class_1792; field_8629 CYAN_BANNER + f Lnet/minecraft/class_1792; field_61336 WAXED_WEATHERED_LIGHTNING_ROD + f Lnet/minecraft/class_1792; field_8605 ACACIA_BUTTON + f Lnet/minecraft/class_1792; field_28655 ROOTED_DIRT + f Lnet/minecraft/class_1792; field_8847 TUBE_CORAL + f Lnet/minecraft/class_1792; field_28873 COBBLED_DEEPSLATE_SLAB + f Lnet/minecraft/class_1792; field_8823 JUNGLE_FENCE + f Lnet/minecraft/class_1792; field_40217 BAMBOO_MOSAIC_SLAB + f Lnet/minecraft/class_1792; field_47006 TUFF_BRICKS + f Lnet/minecraft/class_1792; field_8380 ORANGE_SHULKER_BOX + f Lnet/minecraft/class_1792; field_8162 AIR + f Lnet/minecraft/class_1792; field_8271 YELLOW_SHULKER_BOX + f Lnet/minecraft/class_1792; field_8295 GREEN_BANNER + f Lnet/minecraft/class_1792; field_8053 STONE_STAIRS + f Lnet/minecraft/class_1792; field_23141 RESPAWN_ANCHOR + f Lnet/minecraft/class_1792; field_8077 BARRIER + f Lnet/minecraft/class_1792; field_37508 MANGROVE_PROPAGULE + f Lnet/minecraft/class_1792; field_23829 CHISELED_NETHER_BRICKS + f Lnet/minecraft/class_1792; field_20405 PRISMARINE_BRICKS + f Lnet/minecraft/class_1792; field_40219 BAMBOO_STAIRS + f Lnet/minecraft/class_1792; field_61337 WAXED_OXIDIZED_LIGHTNING_ROD + f Lnet/minecraft/class_1792; field_8848 POWERED_RAIL + f Lnet/minecraft/class_1792; field_8739 PURPLE_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_61313 WEATHERED_COPPER_GOLEM_STATUE + f Lnet/minecraft/class_1792; field_8824 ORANGE_BANNER + f Lnet/minecraft/class_1792; field_28874 DEEPSLATE_TILE_SLAB + f Lnet/minecraft/class_1792; field_8715 PURPLE_TERRACOTTA + f Lnet/minecraft/class_1792; field_28656 HANGING_ROOTS + f Lnet/minecraft/class_1792; field_40218 BAMBOO_FENCE + f Lnet/minecraft/class_1792; field_23828 CRACKED_NETHER_BRICKS + f Lnet/minecraft/class_1792; field_47005 POLISHED_TUFF_WALL + f Lnet/minecraft/class_1792; field_8270 GRASS_BLOCK + f Lnet/minecraft/class_1792; field_8096 BLACK_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_27039 WAXED_COPPER_BLOCK + f Lnet/minecraft/class_1792; field_46985 OXIDIZED_COPPER_DOOR + f Lnet/minecraft/class_1792; field_54622 PALE_OAK_SIGN + f Lnet/minecraft/class_1792; field_61326 MANGROVE_SHELF + f Lnet/minecraft/class_1792; field_22401 PIGLIN_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8627 GRAY_SHULKER_BOX + f Lnet/minecraft/class_1792; field_8736 WHITE_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_47832 ARMADILLO_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8869 LIGHT_BLUE_STAINED_GLASS + f Lnet/minecraft/class_1792; field_8603 DIAMOND_BLOCK + f Lnet/minecraft/class_1792; field_8712 DRAGON_HEAD + f Lnet/minecraft/class_1792; field_55711 LEAF_LITTER + f Lnet/minecraft/class_1792; field_8821 CYAN_TERRACOTTA + f Lnet/minecraft/class_1792; field_23841 CRACKED_POLISHED_BLACKSTONE_BRICKS + f Lnet/minecraft/class_1792; field_8095 YELLOW_STAINED_GLASS + f Lnet/minecraft/class_1792; field_23070 TWISTING_VINES + f Lnet/minecraft/class_1792; field_46984 WEATHERED_COPPER_DOOR + f Lnet/minecraft/class_1792; field_54623 PALE_OAK_HANGING_SIGN + f Lnet/minecraft/class_1792; field_37534 MANGROVE_SIGN + f Lnet/minecraft/class_1792; field_61327 OAK_SHELF + f Lnet/minecraft/class_1792; field_8519 DIRT_PATH + f Lnet/minecraft/class_1792; field_37510 MANGROVE_WOOD + f Lnet/minecraft/class_1792; field_61303 COPPER_CHEST + f Lnet/minecraft/class_1792; field_8628 BRAIN_CORAL_FAN + f Lnet/minecraft/class_1792; field_28650 AZALEA + f Lnet/minecraft/class_1792; field_8604 REDSTONE_ORE + f Lnet/minecraft/class_1792; field_8737 BLUE_CONCRETE + f Lnet/minecraft/class_1792; field_8822 CHISELED_RED_SANDSTONE + f Lnet/minecraft/class_1792; field_61328 PALE_OAK_SHELF + f Lnet/minecraft/class_1792; field_23842 SOUL_CAMPFIRE + f Lnet/minecraft/class_1792; field_8074 FLOWER_POT + f Lnet/minecraft/class_1792; field_8098 PURPLE_CARPET + f Lnet/minecraft/class_1792; field_19049 LIME_WOOL + f Lnet/minecraft/class_1792; field_46983 EXPOSED_COPPER_DOOR + f Lnet/minecraft/class_1792; field_54624 CREAKING_SPAWN_EGG + f Lnet/minecraft/class_1792; field_28651 FLOWERING_AZALEA + f Lnet/minecraft/class_1792; field_61304 EXPOSED_COPPER_CHEST + f Lnet/minecraft/class_1792; field_8649 LIME_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_8758 ACACIA_DOOR + f Lnet/minecraft/class_1792; field_8516 BLACK_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_55979 TEST_BLOCK + f Lnet/minecraft/class_1792; field_8734 GREEN_STAINED_GLASS + f Lnet/minecraft/class_1792; field_61329 SPRUCE_SHELF + f Lnet/minecraft/class_1792; field_8867 JUNGLE_SIGN + f Lnet/minecraft/class_1792; field_8710 CHORUS_FLOWER + f Lnet/minecraft/class_1792; field_8843 BIRCH_SLAB + f Lnet/minecraft/class_1792; field_21991 NETHER_SPROUTS + f Lnet/minecraft/class_1792; field_17509 ORANGE_TULIP + f Lnet/minecraft/class_1792; field_42690 STRIPPED_CHERRY_WOOD + f Lnet/minecraft/class_1792; field_8182 NETHER_WART_BLOCK + f Lnet/minecraft/class_1792; field_8291 SMOOTH_STONE_SLAB + f Lnet/minecraft/class_1792; field_46982 COPPER_DOOR + f Lnet/minecraft/class_1792; field_19048 YELLOW_WOOL + f Lnet/minecraft/class_1792; field_8097 JUNGLE_FENCE_GATE + f Lnet/minecraft/class_1792; field_54601 PALE_OAK_PLANKS + f Lnet/minecraft/class_1792; field_27018 COPPER_ORE + f Lnet/minecraft/class_1792; field_28870 DEEPSLATE_BRICK_STAIRS + f Lnet/minecraft/class_1792; field_61305 WEATHERED_COPPER_CHEST + f Lnet/minecraft/class_1792; field_28652 SPORE_BLOSSOM + f Lnet/minecraft/class_1792; field_37532 MANGROVE_FENCE_GATE + f Lnet/minecraft/class_1792; field_8517 DARK_OAK_DOOR + f Lnet/minecraft/class_1792; field_21990 WARPED_ROOTS + f Lnet/minecraft/class_1792; field_8409 GUARDIAN_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8626 TNT + f Lnet/minecraft/class_1792; field_8844 DARK_OAK_TRAPDOOR + f Lnet/minecraft/class_1792; field_8602 SHORT_GRASS + f Lnet/minecraft/class_1792; field_8735 LIGHT_GRAY_CONCRETE + f Lnet/minecraft/class_1792; field_61306 OXIDIZED_COPPER_CHEST + f Lnet/minecraft/class_1792; field_8820 ACACIA_LOG + f Lnet/minecraft/class_1792; field_8290 CYAN_CARPET + f Lnet/minecraft/class_1792; field_23840 POLISHED_BLACKSTONE_BRICK_WALL + f Lnet/minecraft/class_1792; field_8072 STRIPPED_ACACIA_LOG + f Lnet/minecraft/class_1792; field_8181 BLACK_TERRACOTTA + f Lnet/minecraft/class_1792; field_19047 LIGHT_BLUE_WOOL + f Lnet/minecraft/class_1792; field_46981 WAXED_OXIDIZED_CHISELED_COPPER + f Lnet/minecraft/class_1792; field_27059 BROWN_CANDLE + f Lnet/minecraft/class_1792; field_29214 CRACKED_DEEPSLATE_BRICKS + f Lnet/minecraft/class_1792; field_37513 MANGROVE_ROOTS + f Lnet/minecraft/class_1792; field_37537 MUD + f Lnet/minecraft/class_1792; field_8404 DARK_OAK_PLANKS + f Lnet/minecraft/class_1792; field_16309 SMOKER + f Lnet/minecraft/class_1792; field_8319 POLISHED_GRANITE_STAIRS + f Lnet/minecraft/class_1792; field_61899 COPPER_TORCH + f Lnet/minecraft/class_1792; field_8538 BUBBLE_CORAL + f Lnet/minecraft/class_1792; field_23845 BLACKSTONE_STAIRS + f Lnet/minecraft/class_1792; field_61307 WAXED_COPPER_CHEST + f Lnet/minecraft/class_1792; field_8514 STRAY_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8889 YELLOW_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_8732 FURNACE + f Lnet/minecraft/class_1792; field_8865 LEVER + f Lnet/minecraft/class_1792; field_21993 CRIMSON_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_40865 ENDER_DRAGON_SPAWN_EGG + f Lnet/minecraft/class_1792; field_27035 CUT_COPPER_SLAB + f Lnet/minecraft/class_1792; field_17507 ACACIA_LEAVES + f Lnet/minecraft/class_1792; field_19046 MAGENTA_WOOL + f Lnet/minecraft/class_1792; field_46980 WAXED_WEATHERED_CHISELED_COPPER + f Lnet/minecraft/class_1792; field_27036 EXPOSED_CUT_COPPER_SLAB + f Lnet/minecraft/class_1792; field_29019 DEEPSLATE_GOLD_ORE + f Lnet/minecraft/class_1792; field_37538 SCULK_SHRIEKER + f Lnet/minecraft/class_1792; field_28101 SCULK_SENSOR + f Lnet/minecraft/class_1792; field_37514 MUDDY_MANGROVE_ROOTS + f Lnet/minecraft/class_1792; field_8427 DAMAGED_ANVIL + f Lnet/minecraft/class_1792; field_8318 MAGENTA_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_8539 WHITE_BANNER + f Lnet/minecraft/class_1792; field_8648 BAMBOO + f Lnet/minecraft/class_1792; field_61308 WAXED_EXPOSED_COPPER_CHEST + f Lnet/minecraft/class_1792; field_8866 COMMAND_BLOCK + f Lnet/minecraft/class_1792; field_8624 STRIPPED_SPRUCE_LOG + f Lnet/minecraft/class_1792; field_8757 RED_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_23846 BLACKSTONE_WALL + f Lnet/minecraft/class_1792; field_8842 JUNGLE_PLANKS + f Lnet/minecraft/class_1792; field_8733 EMERALD_BLOCK + f Lnet/minecraft/class_1792; field_21992 WEEPING_VINES + f Lnet/minecraft/class_1792; field_40866 SNOW_GOLEM_SPAWN_EGG + f Lnet/minecraft/class_1792; field_29213 INFESTED_DEEPSLATE + f Lnet/minecraft/class_1792; field_17508 DARK_OAK_LEAVES + f Lnet/minecraft/class_1792; field_16307 BARREL + f Lnet/minecraft/class_1792; field_27037 WEATHERED_CUT_COPPER_SLAB + f Lnet/minecraft/class_1792; field_29216 DEEPSLATE_EMERALD_ORE + f Lnet/minecraft/class_1792; field_19045 ORANGE_WOOL + f Lnet/minecraft/class_1792; field_37535 FROG_SPAWN_EGG + f Lnet/minecraft/class_1792; field_37511 MANGROVE_LEAVES + f Lnet/minecraft/class_1792; field_17505 BIRCH_LEAVES + f Lnet/minecraft/class_1792; field_23843 BLACKSTONE + f Lnet/minecraft/class_1792; field_61309 WAXED_WEATHERED_COPPER_CHEST + f Lnet/minecraft/class_1792; field_8778 LIME_BANNER + f Lnet/minecraft/class_1792; field_8536 BOOKSHELF + f Lnet/minecraft/class_1792; field_8754 GRAY_BED + f Lnet/minecraft/class_1792; field_8887 JUNGLE_BUTTON + f Lnet/minecraft/class_1792; field_8863 YELLOW_BED + f Lnet/minecraft/class_1792; field_40867 WITHER_SPAWN_EGG + f Lnet/minecraft/class_1792; field_21995 CRIMSON_FENCE + f Lnet/minecraft/class_1792; field_17529 PEONY + f Lnet/minecraft/class_1792; field_8093 ZOMBIFIED_PIGLIN_SPAWN_EGG + f Lnet/minecraft/class_1792; field_27038 OXIDIZED_CUT_COPPER_SLAB + f Lnet/minecraft/class_1792; field_19044 WHITE_WOOL + f Lnet/minecraft/class_1792; field_29215 CRACKED_DEEPSLATE_TILES + f Lnet/minecraft/class_1792; field_37512 MANGROVE_LOG + f Lnet/minecraft/class_1792; field_37536 TADPOLE_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8405 PURPLE_BANNER + f Lnet/minecraft/class_1792; field_16308 SMITHING_TABLE + f Lnet/minecraft/class_1792; field_17506 JUNGLE_LEAVES + f Lnet/minecraft/class_1792; field_23844 BLACKSTONE_SLAB + f Lnet/minecraft/class_1792; field_8537 OBSERVER + f Lnet/minecraft/class_1792; field_8888 OAK_WOOD + f Lnet/minecraft/class_1792; field_8646 ACACIA_FENCE + f Lnet/minecraft/class_1792; field_8779 BIRCH_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_21994 WARPED_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_55710 WILDFLOWERS + f Lnet/minecraft/class_1792; field_8840 DRAGON_EGG + f Lnet/minecraft/class_1792; field_16305 STONECUTTER + f Lnet/minecraft/class_1792; field_54606 STRIPPED_PALE_OAK_WOOD + f Lnet/minecraft/class_1792; field_47020 WEATHERED_COPPER_BULB + f Lnet/minecraft/class_1792; field_20395 STONE_BRICKS + f Lnet/minecraft/class_1792; field_8400 ACACIA_SLAB + f Lnet/minecraft/class_1792; field_8206 ANDESITE_WALL + f Lnet/minecraft/class_1792; field_22005 WARPED_BUTTON + f Lnet/minecraft/class_1792; field_22489 CRIMSON_HYPHAE + f Lnet/minecraft/class_1792; field_17527 ROSE_BUSH + f Lnet/minecraft/class_1792; field_17503 OAK_LEAVES + f Lnet/minecraft/class_1792; field_8558 LIGHT_GRAY_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_8667 STONE_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_8643 NOTE_BLOCK + f Lnet/minecraft/class_1792; field_8510 ENDERMITE_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8885 GRAY_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_27031 CUT_COPPER_STAIRS + f Lnet/minecraft/class_1792; field_42696 PINK_PETALS + f Lnet/minecraft/class_1792; field_54607 PALE_OAK_WOOD + f Lnet/minecraft/class_1792; field_27055 LIGHT_GRAY_CANDLE + f Lnet/minecraft/class_1792; field_22006 CRIMSON_STAIRS + f Lnet/minecraft/class_1792; field_16306 BLAST_FURNACE + f Lnet/minecraft/class_1792; field_20394 GRANITE + f Lnet/minecraft/class_1792; field_8205 YELLOW_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_8447 SALMON_SPAWN_EGG + f Lnet/minecraft/class_1792; field_17528 HAY_BLOCK + f Lnet/minecraft/class_1792; field_8559 DIORITE_WALL + f Lnet/minecraft/class_1792; field_8668 BEACON + f Lnet/minecraft/class_1792; field_17504 SPRUCE_LEAVES + f Lnet/minecraft/class_1792; field_8535 SPONGE + f Lnet/minecraft/class_1792; field_8886 DARK_OAK_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_8644 PURPUR_STAIRS + f Lnet/minecraft/class_1792; field_42695 TORCHFLOWER + f Lnet/minecraft/class_1792; field_27056 CYAN_CANDLE + f Lnet/minecraft/class_1792; field_54608 PALE_MOSS_CARPET + f Lnet/minecraft/class_1792; field_27032 EXPOSED_CUT_COPPER_STAIRS + f Lnet/minecraft/class_1792; field_20397 POLISHED_GRANITE + f Lnet/minecraft/class_1792; field_33505 RAW_IRON_BLOCK + f Lnet/minecraft/class_1792; field_8402 TUBE_CORAL_BLOCK + f Lnet/minecraft/class_1792; field_8426 ICE + f Lnet/minecraft/class_1792; field_22003 WARPED_TRAPDOOR + f Lnet/minecraft/class_1792; field_22487 STRIPPED_CRIMSON_HYPHAE + f Lnet/minecraft/class_1792; field_17525 SUNFLOWER + f Lnet/minecraft/class_1792; field_8689 DEAD_BUSH + f Lnet/minecraft/class_1792; field_8798 GREEN_TERRACOTTA + f Lnet/minecraft/class_1792; field_17501 AZURE_BLUET + f Lnet/minecraft/class_1792; field_42698 CHERRY_FENCE + f Lnet/minecraft/class_1792; field_8774 BIRCH_TRAPDOOR + f Lnet/minecraft/class_1792; field_8641 SMOOTH_RED_SANDSTONE_STAIRS + f Lnet/minecraft/class_1792; field_8750 CHIPPED_ANVIL + f Lnet/minecraft/class_1792; field_29212 DEEPSLATE_COAL_ORE + f Lnet/minecraft/class_1792; field_8883 BUBBLE_CORAL_BLOCK + f Lnet/minecraft/class_1792; field_27057 PURPLE_CANDLE + f Lnet/minecraft/class_1792; field_27033 WEATHERED_CUT_COPPER_STAIRS + f Lnet/minecraft/class_1792; field_54609 PALE_HANGING_MOSS + f Lnet/minecraft/class_1792; field_20396 MOSSY_STONE_BRICKS + f Lnet/minecraft/class_1792; field_27058 BLUE_CANDLE + f Lnet/minecraft/class_1792; field_55035 OPEN_EYEBLOSSOM + f Lnet/minecraft/class_1792; field_8401 INFESTED_COBBLESTONE + f Lnet/minecraft/class_1792; field_33506 RAW_COPPER_BLOCK + f Lnet/minecraft/class_1792; field_8316 POLISHED_ANDESITE_STAIRS + f Lnet/minecraft/class_1792; field_22488 STRIPPED_WARPED_HYPHAE + f Lnet/minecraft/class_1792; field_22004 CRIMSON_BUTTON + f Lnet/minecraft/class_1792; field_17526 LILAC + f Lnet/minecraft/class_1792; field_8799 CHAIN_COMMAND_BLOCK + f Lnet/minecraft/class_1792; field_17502 RED_TULIP + f Lnet/minecraft/class_1792; field_42697 CHERRY_SLAB + f Lnet/minecraft/class_1792; field_8775 GOLD_ORE + f Lnet/minecraft/class_1792; field_8860 DIORITE_STAIRS + f Lnet/minecraft/class_1792; field_8751 DOLPHIN_SPAWN_EGG + f Lnet/minecraft/class_1792; field_29211 DEEPSLATE_COPPER_ORE + f Lnet/minecraft/class_1792; field_27034 OXIDIZED_CUT_COPPER_STAIRS + f Lnet/minecraft/class_1792; field_40230 SPRUCE_HANGING_SIGN + f Lnet/minecraft/class_1792; field_22009 WARPED_DOOR + f Lnet/minecraft/class_1792; field_20399 END_STONE + f Lnet/minecraft/class_1792; field_8311 JUNGLE_STAIRS + f Lnet/minecraft/class_1792; field_54602 PALE_OAK_SAPLING + f Lnet/minecraft/class_1792; field_8444 NETHER_BRICK_STAIRS + f Lnet/minecraft/class_1792; field_8202 PURPUR_SLAB + f Lnet/minecraft/class_1792; field_46989 TUFF_SLAB + f Lnet/minecraft/class_1792; field_8117 HORSE_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8468 REPEATING_COMMAND_BLOCK + f Lnet/minecraft/class_1792; field_33507 RAW_GOLD_BLOCK + f Lnet/minecraft/class_1792; field_8359 RED_SANDSTONE_WALL + f Lnet/minecraft/class_1792; field_22421 CRYING_OBSIDIAN + f Lnet/minecraft/class_1792; field_17523 VINE + f Lnet/minecraft/class_1792; field_8554 WET_SPONGE + f Lnet/minecraft/class_1792; field_8663 BRICK_STAIRS + f Lnet/minecraft/class_1792; field_8772 LOOM + f Lnet/minecraft/class_1792; field_27075 CUT_COPPER + f Lnet/minecraft/class_1792; field_8530 REDSTONE_TORCH + f Lnet/minecraft/class_1792; field_27051 LIGHTNING_ROD + f Lnet/minecraft/class_1792; field_8881 SLIME_SPAWN_EGG + f Lnet/minecraft/class_1792; field_42692 CHERRY_LOG + f Lnet/minecraft/class_1792; field_49813 HEAVY_CORE + f Lnet/minecraft/class_1792; field_54603 PALE_OAK_LOG + f Lnet/minecraft/class_1792; field_20398 NETHER_BRICKS + f Lnet/minecraft/class_1792; field_8201 BIRCH_WOOD + f Lnet/minecraft/class_1792; field_8310 COBBLESTONE_STAIRS + f Lnet/minecraft/class_1792; field_8443 SANDSTONE_STAIRS + f Lnet/minecraft/class_1792; field_8225 INFESTED_STONE + f Lnet/minecraft/class_1792; field_8334 STRIPPED_JUNGLE_LOG + f Lnet/minecraft/class_1792; field_8467 BROWN_TERRACOTTA + f Lnet/minecraft/class_1792; field_8249 PISTON + f Lnet/minecraft/class_1792; field_8358 CHORUS_PLANT + f Lnet/minecraft/class_1792; field_46988 WAXED_WEATHERED_COPPER_DOOR + f Lnet/minecraft/class_1792; field_37530 MANGROVE_BUTTON + f Lnet/minecraft/class_1792; field_17524 LILY_PAD + f Lnet/minecraft/class_1792; field_8664 GREEN_CARPET + f Lnet/minecraft/class_1792; field_8797 COAL_BLOCK + f Lnet/minecraft/class_1792; field_17500 ALLIUM + f Lnet/minecraft/class_1792; field_8531 DARK_OAK_BUTTON + f Lnet/minecraft/class_1792; field_8640 LIGHT_BLUE_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_8773 IRON_BLOCK + f Lnet/minecraft/class_1792; field_27052 LIME_CANDLE + f Lnet/minecraft/class_1792; field_27076 EXPOSED_CUT_COPPER + f Lnet/minecraft/class_1792; field_42691 CHERRY_WOOD + f Lnet/minecraft/class_1792; field_22007 WARPED_STAIRS + f Lnet/minecraft/class_1792; field_54604 STRIPPED_PALE_OAK_LOG + f Lnet/minecraft/class_1792; field_8422 BIRCH_SIGN + f Lnet/minecraft/class_1792; field_8337 STONE_BRICK_WALL + f Lnet/minecraft/class_1792; field_46987 WAXED_EXPOSED_COPPER_DOOR + f Lnet/minecraft/class_1792; field_8119 MAGENTA_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_8228 POLISHED_GRANITE_SLAB + f Lnet/minecraft/class_1792; field_17521 MUSHROOM_STEM + f Lnet/minecraft/class_1792; field_8576 MOSSY_STONE_BRICK_SLAB + f Lnet/minecraft/class_1792; field_8685 CYAN_STAINED_GLASS + f Lnet/minecraft/class_1792; field_27053 PINK_CANDLE + f Lnet/minecraft/class_1792; field_42694 CHERRY_LEAVES + f Lnet/minecraft/class_1792; field_8552 CHISELED_SANDSTONE + f Lnet/minecraft/class_1792; field_8661 COD_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8770 PINK_STAINED_GLASS + f Lnet/minecraft/class_1792; field_27077 WEATHERED_CUT_COPPER + f Lnet/minecraft/class_1792; field_49153 BOGGED_SPAWN_EGG + f Lnet/minecraft/class_1792; field_54605 PALE_OAK_LEAVES + f Lnet/minecraft/class_1792; field_22008 WARPED_WART_BLOCK + f Lnet/minecraft/class_1792; field_46986 WAXED_COPPER_DOOR + f Lnet/minecraft/class_1792; field_8203 ACACIA_SIGN + f Lnet/minecraft/class_1792; field_8312 GRANITE_SLAB + f Lnet/minecraft/class_1792; field_19060 CLAY + f Lnet/minecraft/class_1792; field_8445 ACACIA_STAIRS + f Lnet/minecraft/class_1792; field_8227 RABBIT_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8336 MAGENTA_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_22420 TARGET + f Lnet/minecraft/class_1792; field_8118 OAK_PLANKS + f Lnet/minecraft/class_1792; field_8686 YELLOW_CONCRETE + f Lnet/minecraft/class_1792; field_17522 MELON + f Lnet/minecraft/class_1792; field_8795 EVOKER_SPAWN_EGG + f Lnet/minecraft/class_1792; field_27030 OXIDIZED_CUT_COPPER + f Lnet/minecraft/class_1792; field_42693 STRIPPED_CHERRY_LOG + f Lnet/minecraft/class_1792; field_8880 POPPY + f Lnet/minecraft/class_1792; field_8771 ORANGE_CONCRETE + f Lnet/minecraft/class_1792; field_27054 GRAY_CANDLE + f Lnet/minecraft/class_1792; field_8440 PRISMARINE_SLAB + f Lnet/minecraft/class_1792; field_18887 CUT_RED_SANDSTONE_SLAB + f Lnet/minecraft/class_1792; field_8331 MULE_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8113 SPRUCE_PLANKS + f Lnet/minecraft/class_1792; field_8464 BROWN_BED + f Lnet/minecraft/class_1792; field_8222 PINK_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_8488 GRANITE_WALL + f Lnet/minecraft/class_1792; field_8246 SNOW_BLOCK + f Lnet/minecraft/class_1792; field_8379 LIGHT_BLUE_BANNER + f Lnet/minecraft/class_1792; field_17531 SUGAR_CANE + f Lnet/minecraft/class_1792; field_40223 BAMBOO_BUTTON + f Lnet/minecraft/class_1792; field_27071 COPPER_BLOCK + f Lnet/minecraft/class_1792; field_8683 ORANGE_CARPET + f Lnet/minecraft/class_1792; field_8792 OAK_FENCE + f Lnet/minecraft/class_1792; field_47016 TUFF_BRICK_WALL + f Lnet/minecraft/class_1792; field_8354 MAGMA_BLOCK + f Lnet/minecraft/class_1792; field_8112 BLACK_BED + f Lnet/minecraft/class_1792; field_8487 ORANGE_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_18886 RED_SANDSTONE_SLAB + f Lnet/minecraft/class_1792; field_8269 DEAD_HORN_CORAL_FAN + f Lnet/minecraft/class_1792; field_8136 ZOMBIE_VILLAGER_SPAWN_EGG + f Lnet/minecraft/class_1792; field_21087 HONEYCOMB_BLOCK + f Lnet/minecraft/class_1792; field_8599 IRON_ORE + f Lnet/minecraft/class_1792; field_17532 KELP + f Lnet/minecraft/class_1792; field_8575 PLAYER_HEAD + f Lnet/minecraft/class_1792; field_8684 SPRUCE_LOG + f Lnet/minecraft/class_1792; field_16310 FLETCHING_TABLE + f Lnet/minecraft/class_1792; field_47015 WAXED_WEATHERED_COPPER_GRATE + f Lnet/minecraft/class_1792; field_8793 REDSTONE_BLOCK + f Lnet/minecraft/class_1792; field_27072 EXPOSED_COPPER + f Lnet/minecraft/class_1792; field_8200 RED_SAND + f Lnet/minecraft/class_1792; field_8333 GRAY_CONCRETE + f Lnet/minecraft/class_1792; field_8115 BLUE_CARPET + f Lnet/minecraft/class_1792; field_8466 ENDER_CHEST + f Lnet/minecraft/class_1792; field_8224 JUNGLE_SLAB + f Lnet/minecraft/class_1792; field_8357 DISPENSER + f Lnet/minecraft/class_1792; field_8139 ORANGE_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_8248 STRIPPED_OAK_WOOD + f Lnet/minecraft/class_1792; field_8596 INFESTED_MOSSY_STONE_BRICKS + f Lnet/minecraft/class_1792; field_27073 WEATHERED_COPPER + f Lnet/minecraft/class_1792; field_8572 BLACK_BANNER + f Lnet/minecraft/class_1792; field_47014 WAXED_EXPOSED_COPPER_GRATE + f Lnet/minecraft/class_1792; field_8681 CREEPER_HEAD + f Lnet/minecraft/class_1792; field_8441 ZOMBIE_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8223 SANDSTONE_WALL + f Lnet/minecraft/class_1792; field_8332 BROWN_STAINED_GLASS + f Lnet/minecraft/class_1792; field_8465 CRAFTING_TABLE + f Lnet/minecraft/class_1792; field_8247 TRAPPED_CHEST + f Lnet/minecraft/class_1792; field_17530 COMPOSTER + f Lnet/minecraft/class_1792; field_8114 ACACIA_FENCE_GATE + f Lnet/minecraft/class_1792; field_40226 BAMBOO_TRAPDOOR + f Lnet/minecraft/class_1792; field_47013 WAXED_COPPER_GRATE + f Lnet/minecraft/class_1792; field_27074 OXIDIZED_COPPER + f Lnet/minecraft/class_1792; field_8682 RED_MUSHROOM_BLOCK + f Lnet/minecraft/class_1792; field_27050 WAXED_WEATHERED_CUT_COPPER_SLAB + f Lnet/minecraft/class_1792; field_8791 WITHER_SKELETON_SKULL + f Lnet/minecraft/class_1792; field_8460 COARSE_DIRT + f Lnet/minecraft/class_1792; field_8351 DEAD_TUBE_CORAL_FAN + f Lnet/minecraft/class_1792; field_8133 LIGHT_GRAY_TERRACOTTA + f Lnet/minecraft/class_1792; field_8484 BLUE_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_55036 CLOSED_EYEBLOSSOM + f Lnet/minecraft/class_1792; field_8242 BONE_BLOCK + f Lnet/minecraft/class_1792; field_8157 BLACK_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_8266 SMOOTH_RED_SANDSTONE_SLAB + f Lnet/minecraft/class_1792; field_8048 SPRUCE_BUTTON + f Lnet/minecraft/class_1792; field_22001 SOUL_TORCH + f Lnet/minecraft/class_1792; field_28407 GLOW_SQUID_SPAWN_EGG + f Lnet/minecraft/class_1792; field_28867 COBBLED_DEEPSLATE_STAIRS + f Lnet/minecraft/class_1792; field_28649 FLOWERING_AZALEA_LEAVES + f Lnet/minecraft/class_1792; field_42688 CHERRY_SAPLING + f Lnet/minecraft/class_1792; field_47012 OXIDIZED_COPPER_GRATE + f Lnet/minecraft/class_1792; field_25777 PIGLIN_BRUTE_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8594 IRON_DOOR + f Lnet/minecraft/class_1792; field_20391 STONE + f Lnet/minecraft/class_1792; field_46250 MELON_SEEDS + f Lnet/minecraft/class_1792; field_8241 IRON_TRAPDOOR + f Lnet/minecraft/class_1792; field_8350 BLUE_SHULKER_BOX + f Lnet/minecraft/class_1792; field_8483 WHITE_STAINED_GLASS + f Lnet/minecraft/class_1792; field_8265 GHAST_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8374 ENDERMAN_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8132 OCELOT_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8047 JUNGLE_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_8398 SKELETON_SKULL + f Lnet/minecraft/class_1792; field_47011 WEATHERED_COPPER_GRATE + f Lnet/minecraft/class_1792; field_8156 WHITE_TERRACOTTA + f Lnet/minecraft/class_1792; field_8289 BIRCH_FENCE_GATE + f Lnet/minecraft/class_1792; field_33403 WAXED_OXIDIZED_COPPER + f Lnet/minecraft/class_1792; field_22002 CRIMSON_TRAPDOOR + f Lnet/minecraft/class_1792; field_42687 CHERRY_PLANKS + f Lnet/minecraft/class_1792; field_28868 POLISHED_DEEPSLATE_STAIRS + f Lnet/minecraft/class_1792; field_8595 STONE_SLAB + f Lnet/minecraft/class_1792; field_20390 BRICKS + f Lnet/minecraft/class_1792; field_40220 BAMBOO_MOSAIC_STAIRS + f Lnet/minecraft/class_1792; field_8111 SPRUCE_SIGN + f Lnet/minecraft/class_1792; field_8462 DEAD_BUBBLE_CORAL_FAN + f Lnet/minecraft/class_1792; field_8353 RED_TERRACOTTA + f Lnet/minecraft/class_1792; field_20393 PURPUR_BLOCK + f Lnet/minecraft/class_1792; field_55038 RESIN_BLOCK + f Lnet/minecraft/class_1792; field_8244 GREEN_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_47010 EXPOSED_COPPER_GRATE + f Lnet/minecraft/class_1792; field_8268 BLACK_SHULKER_BOX + f Lnet/minecraft/class_1792; field_8819 END_STONE_BRICK_WALL + f Lnet/minecraft/class_1792; field_33404 WAXED_OXIDIZED_CUT_COPPER + f Lnet/minecraft/class_1792; field_28869 DEEPSLATE_TILE_STAIRS + f Lnet/minecraft/class_1792; field_28409 GLOW_LICHEN + f Lnet/minecraft/class_1792; field_40221 BAMBOO_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_8592 HEAVY_WEIGHTED_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_8461 GREEN_SHULKER_BOX + f Lnet/minecraft/class_1792; field_8243 MAGENTA_STAINED_GLASS + f Lnet/minecraft/class_1792; field_20392 MOSSY_COBBLESTONE + f Lnet/minecraft/class_1792; field_8110 GRAVEL + f Lnet/minecraft/class_1792; field_8485 WOLF_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8376 OAK_TRAPDOOR + f Lnet/minecraft/class_1792; field_8049 YELLOW_BANNER + f Lnet/minecraft/class_1792; field_8158 SEAGRASS + f Lnet/minecraft/class_1792; field_55039 RESIN_BRICKS + f Lnet/minecraft/class_1792; field_22000 BASALT + f Lnet/minecraft/class_1792; field_33405 WAXED_OXIDIZED_CUT_COPPER_STAIRS + f Lnet/minecraft/class_1792; field_40222 BAMBOO_DOOR + f Lnet/minecraft/class_1792; field_42689 SUSPICIOUS_SAND + f Lnet/minecraft/class_1792; field_8593 CYAN_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_8480 SHULKER_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8262 PURPLE_BED + f Lnet/minecraft/class_1792; field_8395 POLISHED_ANDESITE_SLAB + f Lnet/minecraft/class_1792; field_8177 WHITE_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_8286 LIGHT_BLUE_BED + f Lnet/minecraft/class_1792; field_37517 MUD_BRICK_SLAB + f Lnet/minecraft/class_1792; field_8068 CAVE_SPIDER_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8817 HORN_CORAL_FAN + f Lnet/minecraft/class_1792; field_8708 MOSSY_COBBLESTONE_WALL + f Lnet/minecraft/class_1792; field_20412 COBBLESTONE + f Lnet/minecraft/class_1792; field_28863 POLISHED_DEEPSLATE_WALL + f Lnet/minecraft/class_1792; field_23837 POLISHED_BLACKSTONE_BRICKS + f Lnet/minecraft/class_1792; field_21985 CRIMSON_SLAB + f Lnet/minecraft/class_1792; field_16482 SCAFFOLDING + f Lnet/minecraft/class_1792; field_8043 ORANGE_TERRACOTTA + f Lnet/minecraft/class_1792; field_8394 BROWN_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_8152 END_STONE_BRICK_STAIRS + f Lnet/minecraft/class_1792; field_8067 SOUL_SAND + f Lnet/minecraft/class_1792; field_37518 PACKED_MUD + f Lnet/minecraft/class_1792; field_20411 POLISHED_ANDESITE + f Lnet/minecraft/class_1792; field_8818 GRAY_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_28864 DEEPSLATE_TILE_WALL + f Lnet/minecraft/class_1792; field_23838 POLISHED_BLACKSTONE_BRICK_SLAB + f Lnet/minecraft/class_1792; field_21984 STRIPPED_WARPED_STEM + f Lnet/minecraft/class_1792; field_8482 RED_CARPET + f Lnet/minecraft/class_1792; field_8240 LIGHT_GRAY_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_37539 OCHRE_FROGLIGHT + f Lnet/minecraft/class_1792; field_18005 FOX_SPAWN_EGG + f Lnet/minecraft/class_1792; field_37515 STRIPPED_MANGROVE_LOG + f Lnet/minecraft/class_1792; field_61320 BAMBOO_SHELF + f Lnet/minecraft/class_1792; field_8839 LIME_CONCRETE + f Lnet/minecraft/class_1792; field_28865 DEEPSLATE_BRICK_WALL + f Lnet/minecraft/class_1792; field_23835 POLISHED_BLACKSTONE_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_21987 CRIMSON_FUNGUS + f Lnet/minecraft/class_1792; field_8481 STONE_BRICK_STAIRS + f Lnet/minecraft/class_1792; field_8130 BIRCH_STAIRS + f Lnet/minecraft/class_1792; field_37516 MANGROVE_SLAB + f Lnet/minecraft/class_1792; field_8154 BLAZE_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8178 BLUE_ICE + f Lnet/minecraft/class_1792; field_61321 BIRCH_SHELF + f Lnet/minecraft/class_1792; field_8707 SPRUCE_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_20413 BEE_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8816 PURPLE_SHULKER_BOX + f Lnet/minecraft/class_1792; field_23836 CHISELED_POLISHED_BLACKSTONE + f Lnet/minecraft/class_1792; field_28648 AZALEA_LEAVES + f Lnet/minecraft/class_1792; field_40864 IRON_GOLEM_SPAWN_EGG + f Lnet/minecraft/class_1792; field_28866 DEEPSLATE + f Lnet/minecraft/class_1792; field_21986 WARPED_SLAB + f Lnet/minecraft/class_1792; field_8173 ACACIA_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_8282 END_STONE_BRICK_SLAB + f Lnet/minecraft/class_1792; field_8197 RED_CONCRETE + f Lnet/minecraft/class_1792; field_20416 BEEHIVE + f Lnet/minecraft/class_1792; field_61322 CHERRY_SHELF + f Lnet/minecraft/class_1792; field_8619 REPEATER + f Lnet/minecraft/class_1792; field_8837 EMERALD_ORE + f Lnet/minecraft/class_1792; field_8728 ZOMBIE_HORSE_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8704 BLACK_CONCRETE + f Lnet/minecraft/class_1792; field_40227 BAMBOO_FENCE_GATE + f Lnet/minecraft/class_1792; field_8390 CYAN_BED + f Lnet/minecraft/class_1792; field_21989 CRIMSON_ROOTS + f Lnet/minecraft/class_1792; field_8281 OBSIDIAN + f Lnet/minecraft/class_1792; field_23069 POLISHED_BASALT + f Lnet/minecraft/class_1792; field_8172 LIGHT_GRAY_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_8196 LIGHT_BLUE_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_20415 BEE_NEST + f Lnet/minecraft/class_1792; field_61323 CRIMSON_SHELF + f Lnet/minecraft/class_1792; field_61347 COPPER_GOLEM_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8838 PURPLE_STAINED_GLASS + f Lnet/minecraft/class_1792; field_28860 DEEPSLATE_TILES + f Lnet/minecraft/class_1792; field_40228 BAMBOO_SIGN + f Lnet/minecraft/class_1792; field_8280 GLASS + f Lnet/minecraft/class_1792; field_47019 EXPOSED_COPPER_BULB + f Lnet/minecraft/class_1792; field_21988 WARPED_FUNGUS + f Lnet/minecraft/class_1792; field_8260 TERRACOTTA + f Lnet/minecraft/class_1792; field_8393 ORANGE_STAINED_GLASS + f Lnet/minecraft/class_1792; field_8284 STRIPPED_ACACIA_WOOD + f Lnet/minecraft/class_1792; field_8199 JUNGLE_DOOR + f Lnet/minecraft/class_1792; field_37519 MUD_BRICKS + f Lnet/minecraft/class_1792; field_8508 MAGENTA_CONCRETE + f Lnet/minecraft/class_1792; field_28861 CHISELED_DEEPSLATE + f Lnet/minecraft/class_1792; field_8617 GRAY_BANNER + f Lnet/minecraft/class_1792; field_61324 DARK_OAK_SHELF + f Lnet/minecraft/class_1792; field_8835 CHICKEN_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8811 MOSSY_STONE_BRICK_WALL + f Lnet/minecraft/class_1792; field_8702 NETHER_QUARTZ_ORE + f Lnet/minecraft/class_1792; field_40229 OAK_HANGING_SIGN + f Lnet/minecraft/class_1792; field_21086 HONEY_BLOCK + f Lnet/minecraft/class_1792; field_23839 POLISHED_BLACKSTONE_BRICK_STAIRS + f Lnet/minecraft/class_1792; field_30905 GOAT_SPAWN_EGG + f Lnet/minecraft/class_1792; field_47018 COPPER_BULB + f Lnet/minecraft/class_1792; field_8392 COBBLESTONE_WALL + f Lnet/minecraft/class_1792; field_8174 BIRCH_BUTTON + f Lnet/minecraft/class_1792; field_8089 DEAD_BUBBLE_CORAL_BLOCK + f Lnet/minecraft/class_1792; field_8198 GREEN_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_8618 TURTLE_EGG + f Lnet/minecraft/class_1792; field_8727 BAT_SPAWN_EGG + f Lnet/minecraft/class_1792; field_59728 HAPPY_GHAST_SPAWN_EGG + f Lnet/minecraft/class_1792; field_61325 JUNGLE_SHELF + f Lnet/minecraft/class_1792; field_8703 YELLOW_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_28862 COBBLED_DEEPSLATE_WALL + f Lnet/minecraft/class_1792; field_42710 SNIFFER_SPAWN_EGG + f Lnet/minecraft/class_1792; field_47017 WAXED_OXIDIZED_COPPER_GRATE + f Lnet/minecraft/class_1792; field_8391 OAK_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_30904 LIGHT + f Lnet/minecraft/class_1792; field_55980 TEST_INSTANCE_BLOCK + f Lnet/minecraft/class_1792; field_8084 CHISELED_QUARTZ_BLOCK + f Lnet/minecraft/class_1792; field_27027 MAGENTA_CANDLE + f Lnet/minecraft/class_1792; field_46997 WAXED_WEATHERED_COPPER_TRAPDOOR + f Lnet/minecraft/class_1792; field_54610 PALE_MOSS_BLOCK + f Lnet/minecraft/class_1792; field_41066 BAMBOO_BLOCK + f Lnet/minecraft/class_1792; field_37521 MUD_BRICK_WALL + f Lnet/minecraft/class_1792; field_61314 OXIDIZED_COPPER_GOLEM_STATUE + f Lnet/minecraft/class_1792; field_8506 BROWN_MUSHROOM_BLOCK + f Lnet/minecraft/class_1792; field_8857 COMPARATOR + f Lnet/minecraft/class_1792; field_23744 ZOGLIN_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8615 STRUCTURE_VOID + f Lnet/minecraft/class_1792; field_8083 DROWNED_SPAWN_EGG + f Lnet/minecraft/class_1792; field_27028 LIGHT_BLUE_CANDLE + f Lnet/minecraft/class_1792; field_46996 WAXED_EXPOSED_COPPER_TRAPDOOR + f Lnet/minecraft/class_1792; field_54611 CREAKING_HEART + f Lnet/minecraft/class_1792; field_42709 CHERRY_SIGN + f Lnet/minecraft/class_1792; field_41065 STRIPPED_BAMBOO_BLOCK + f Lnet/minecraft/class_1792; field_61315 WAXED_COPPER_GOLEM_STATUE + f Lnet/minecraft/class_1792; field_8749 SNOW + f Lnet/minecraft/class_1792; field_8507 GRAY_STAINED_GLASS + f Lnet/minecraft/class_1792; field_37522 MUD_BRICK_STAIRS + f Lnet/minecraft/class_1792; field_8419 RED_NETHER_BRICK_WALL + f Lnet/minecraft/class_1792; field_8616 BRAIN_CORAL + f Lnet/minecraft/class_1792; field_8858 SAND + f Lnet/minecraft/class_1792; field_8701 SPRUCE_FENCE + f Lnet/minecraft/class_1792; field_8810 TORCH + f Lnet/minecraft/class_1792; field_8191 BIRCH_PLANKS + f Lnet/minecraft/class_1792; field_23830 QUARTZ_BRICKS + f Lnet/minecraft/class_1792; field_8086 VILLAGER_SPAWN_EGG + f Lnet/minecraft/class_1792; field_46995 WAXED_COPPER_TRAPDOOR + f Lnet/minecraft/class_1792; field_54612 PALE_OAK_SLAB + f Lnet/minecraft/class_1792; field_27029 YELLOW_CANDLE + f Lnet/minecraft/class_1792; field_61316 WAXED_EXPOSED_COPPER_GOLEM_STATUE + f Lnet/minecraft/class_1792; field_8879 RED_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_8637 CYAN_CONCRETE + f Lnet/minecraft/class_1792; field_8855 LIGHT_GRAY_BANNER + f Lnet/minecraft/class_1792; field_8746 QUARTZ_PILLAR + f Lnet/minecraft/class_1792; field_61317 WAXED_WEATHERED_COPPER_GOLEM_STATUE + f Lnet/minecraft/class_1792; field_8831 DIRT + f Lnet/minecraft/class_1792; field_8722 WHITE_SHULKER_BOX + f Lnet/minecraft/class_1792; field_8170 BIRCH_LOG + f Lnet/minecraft/class_1792; field_8085 CYAN_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_8194 COBBLESTONE_SLAB + f Lnet/minecraft/class_1792; field_46994 OXIDIZED_COPPER_TRAPDOOR + f Lnet/minecraft/class_1792; field_54613 PALE_OAK_FENCE + f Lnet/minecraft/class_1792; field_37520 MANGROVE_FENCE + f Lnet/minecraft/class_1792; field_8638 CAULDRON + f Lnet/minecraft/class_1792; field_8747 BLUE_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_8505 NETHER_BRICK_SLAB + f Lnet/minecraft/class_1792; field_8723 HORN_CORAL + f Lnet/minecraft/class_1792; field_61318 WAXED_OXIDIZED_COPPER_GOLEM_STATUE + f Lnet/minecraft/class_1792; field_8856 DEAD_TUBE_CORAL_BLOCK + f Lnet/minecraft/class_1792; field_8832 WITHER_SKELETON_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8193 PANDA_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8060 PETRIFIED_OAK_SLAB + f Lnet/minecraft/class_1792; field_46993 WEATHERED_COPPER_TRAPDOOR + f Lnet/minecraft/class_1792; field_19059 BLACK_WOOL + f Lnet/minecraft/class_1792; field_27047 WAXED_WEATHERED_CUT_COPPER_STAIRS + f Lnet/minecraft/class_1792; field_37525 SCULK_CATALYST + f Lnet/minecraft/class_1792; field_16539 LANTERN + f Lnet/minecraft/class_1792; field_8307 SQUID_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8659 DIORITE_SLAB + f Lnet/minecraft/class_1792; field_23833 POLISHED_BLACKSTONE_WALL + f Lnet/minecraft/class_1792; field_61319 ACACIA_SHELF + f Lnet/minecraft/class_1792; field_8526 ANDESITE_STAIRS + f Lnet/minecraft/class_1792; field_8853 PINK_TERRACOTTA + f Lnet/minecraft/class_1792; field_8611 BLACK_CARPET + f Lnet/minecraft/class_1792; field_21981 CRIMSON_STEM + f Lnet/minecraft/class_1792; field_17519 CARVED_PUMPKIN + f Lnet/minecraft/class_1792; field_19058 RED_WOOL + f Lnet/minecraft/class_1792; field_46992 EXPOSED_COPPER_TRAPDOOR + f Lnet/minecraft/class_1792; field_27048 WAXED_CUT_COPPER_SLAB + f Lnet/minecraft/class_1792; field_37526 MANGROVE_STAIRS + f Lnet/minecraft/class_1792; field_8415 STRIPPED_OAK_LOG + f Lnet/minecraft/class_1792; field_28355 AXOLOTL_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8306 DONKEY_SPAWN_EGG + f Lnet/minecraft/class_1792; field_42705 CHERRY_DOOR + f Lnet/minecraft/class_1792; field_8439 JUNGLE_WOOD + f Lnet/minecraft/class_1792; field_8769 ELDER_GUARDIAN_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8636 RED_STAINED_GLASS + f Lnet/minecraft/class_1792; field_23834 POLISHED_BLACKSTONE_BUTTON + f Lnet/minecraft/class_1792; field_42704 CHERRY_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_8503 CREEPER_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8878 DROPPER + f Lnet/minecraft/class_1792; field_8612 TROPICAL_FISH_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8721 LIGHT_WEIGHTED_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_8854 DARK_PRISMARINE_STAIRS + f Lnet/minecraft/class_1792; field_8830 DEAD_FIRE_CORAL + f Lnet/minecraft/class_1792; field_27024 CANDLE + f Lnet/minecraft/class_1792; field_19057 GREEN_WOOL + f Lnet/minecraft/class_1792; field_27049 WAXED_EXPOSED_CUT_COPPER_SLAB + f Lnet/minecraft/class_1792; field_46991 COPPER_TRAPDOOR + f Lnet/minecraft/class_1792; field_20410 RED_NETHER_BRICKS + f Lnet/minecraft/class_1792; field_27025 WHITE_CANDLE + f Lnet/minecraft/class_1792; field_37523 SCULK + f Lnet/minecraft/class_1792; field_42708 CHERRY_HANGING_SIGN + f Lnet/minecraft/class_1792; field_8418 LIME_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_17517 RED_MUSHROOM + f Lnet/minecraft/class_1792; field_8548 LIME_SHULKER_BOX + f Lnet/minecraft/class_1792; field_8657 ENCHANTING_TABLE + f Lnet/minecraft/class_1792; field_8524 STONE_BRICK_SLAB + f Lnet/minecraft/class_1792; field_8875 GRAY_CARPET + f Lnet/minecraft/class_1792; field_21983 STRIPPED_CRIMSON_STEM + f Lnet/minecraft/class_1792; field_8633 LLAMA_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8500 PINK_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_38418 REINFORCED_DEEPSLATE + f Lnet/minecraft/class_1792; field_8742 ANDESITE_SLAB + f Lnet/minecraft/class_1792; field_8081 PACKED_ICE + f Lnet/minecraft/class_1792; field_8190 ACACIA_TRAPDOOR + f Lnet/minecraft/class_1792; field_27026 ORANGE_CANDLE + f Lnet/minecraft/class_1792; field_16538 JIGSAW + f Lnet/minecraft/class_1792; field_46990 WAXED_OXIDIZED_COPPER_DOOR + f Lnet/minecraft/class_1792; field_19056 BROWN_WOOL + f Lnet/minecraft/class_1792; field_37524 SCULK_VEIN + f Lnet/minecraft/class_1792; field_8417 PINK_BED + f Lnet/minecraft/class_1792; field_23832 POLISHED_BLACKSTONE_STAIRS + f Lnet/minecraft/class_1792; field_8549 DEAD_TUBE_CORAL + f Lnet/minecraft/class_1792; field_8658 DARK_OAK_STAIRS + f Lnet/minecraft/class_1792; field_8767 STRIPPED_BIRCH_LOG + f Lnet/minecraft/class_1792; field_8525 CHISELED_STONE_BRICKS + f Lnet/minecraft/class_1792; field_8501 BROWN_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_21982 WARPED_STEM + f Lnet/minecraft/class_1792; field_8610 MYCELIUM + f Lnet/minecraft/class_1792; field_8852 MAGMA_CUBE_SPAWN_EGG + f Lnet/minecraft/class_1792; field_38419 ALLAY_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8080 NETHER_BRICK_FENCE + f Lnet/minecraft/class_1792; field_17518 PUMPKIN + f Lnet/minecraft/class_1792; field_22017 SHROOMLIGHT + f Lnet/minecraft/class_1792; field_63383 ZOMBIE_NAUTILUS_SPAWN_EGG + f Lnet/minecraft/class_1792; field_19055 BLUE_WOOL + f Lnet/minecraft/class_1792; field_8412 QUARTZ_SLAB + f Lnet/minecraft/class_1792; field_33406 WAXED_OXIDIZED_CUT_COPPER_SLAB + f Lnet/minecraft/class_1792; field_17539 ACACIA_SAPLING + f Lnet/minecraft/class_1792; field_8679 LIME_BED + f Lnet/minecraft/class_1792; field_17515 WITHER_ROSE + f Lnet/minecraft/class_1792; field_8546 FIRE_CORAL + f Lnet/minecraft/class_1792; field_8655 ACTIVATOR_RAIL + f Lnet/minecraft/class_1792; field_8788 OAK_SIGN + f Lnet/minecraft/class_1792; field_8522 RED_NETHER_BRICK_SLAB + f Lnet/minecraft/class_1792; field_8764 LIGHT_BLUE_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_8740 BREWING_STAND + f Lnet/minecraft/class_1792; field_27067 MEDIUM_AMETHYST_BUD + f Lnet/minecraft/class_1792; field_54619 PALE_OAK_DOOR + f Lnet/minecraft/class_1792; field_27043 WAXED_EXPOSED_CUT_COPPER + f Lnet/minecraft/class_1792; field_64145 CAMEL_HUSK_SPAWN_EGG + f Lnet/minecraft/class_1792; field_22018 NETHERITE_BLOCK + f Lnet/minecraft/class_1792; field_63382 NAUTILUS_SPAWN_EGG + f Lnet/minecraft/class_1792; field_19054 PURPLE_WOOL + f Lnet/minecraft/class_1792; field_8411 PURPLE_CONCRETE + f Lnet/minecraft/class_1792; field_8302 RED_NETHER_BRICK_STAIRS + f Lnet/minecraft/class_1792; field_8435 TURTLE_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8459 DARK_PRISMARINE_SLAB + f Lnet/minecraft/class_1792; field_8217 SMOOTH_QUARTZ_SLAB + f Lnet/minecraft/class_1792; field_17516 BROWN_MUSHROOM + f Lnet/minecraft/class_1792; field_8789 RED_BED + f Lnet/minecraft/class_1792; field_8656 GREEN_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_8765 NETHER_BRICK_WALL + f Lnet/minecraft/class_1792; field_8874 OAK_FENCE_GATE + f Lnet/minecraft/class_1792; field_27020 CALCITE + f Lnet/minecraft/class_1792; field_8850 WHITE_CARPET + f Lnet/minecraft/class_1792; field_27068 LARGE_AMETHYST_BUD + f Lnet/minecraft/class_1792; field_27044 WAXED_WEATHERED_CUT_COPPER + f Lnet/minecraft/class_1792; field_20385 CUT_SANDSTONE + f Lnet/minecraft/class_1792; field_16315 BELL + f Lnet/minecraft/class_1792; field_27069 AMETHYST_CLUSTER + f Lnet/minecraft/class_1792; field_19053 CYAN_WOOL + f Lnet/minecraft/class_1792; field_46979 WAXED_EXPOSED_CHISELED_COPPER + f Lnet/minecraft/class_1792; field_8305 SEA_LANTERN + f Lnet/minecraft/class_1792; field_8438 BIRCH_DOOR + f Lnet/minecraft/class_1792; field_8329 PINK_BANNER + f Lnet/minecraft/class_1792; field_22015 WARPED_NYLIUM + f Lnet/minecraft/class_1792; field_17537 BIRCH_SAPLING + f Lnet/minecraft/class_1792; field_17731 TRADER_LLAMA_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8677 DEAD_FIRE_CORAL_FAN + f Lnet/minecraft/class_1792; field_17513 CORNFLOWER + f Lnet/minecraft/class_1792; field_8653 SPRUCE_FENCE_GATE + f Lnet/minecraft/class_1792; field_8786 COBWEB + f Lnet/minecraft/class_1792; field_8520 PINK_SHULKER_BOX + f Lnet/minecraft/class_1792; field_8871 GRAY_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_8762 BROWN_CONCRETE + f Lnet/minecraft/class_1792; field_27045 WAXED_CUT_COPPER_STAIRS + f Lnet/minecraft/class_1792; field_27021 TUFF + f Lnet/minecraft/class_1792; field_20384 SANDSTONE + f Lnet/minecraft/class_1792; field_46978 WAXED_CHISELED_COPPER + f Lnet/minecraft/class_1792; field_8304 GRAY_TERRACOTTA + f Lnet/minecraft/class_1792; field_19052 LIGHT_GRAY_WOOL + f Lnet/minecraft/class_1792; field_8437 BROWN_CONCRETE_POWDER + f Lnet/minecraft/class_1792; field_8328 NETHERRACK + f Lnet/minecraft/class_1792; field_22016 SOUL_LANTERN + f Lnet/minecraft/class_1792; field_8219 STRIPPED_DARK_OAK_WOOD + f Lnet/minecraft/class_1792; field_17538 JUNGLE_SAPLING + f Lnet/minecraft/class_1792; field_17514 LILY_OF_THE_VALLEY + f Lnet/minecraft/class_1792; field_8569 POLISHED_DIORITE_SLAB + f Lnet/minecraft/class_1792; field_8787 DIAMOND_ORE + f Lnet/minecraft/class_1792; field_8545 SHULKER_BOX + f Lnet/minecraft/class_1792; field_8654 LIGHT_GRAY_CARPET + f Lnet/minecraft/class_1792; field_8521 TUBE_CORAL_FAN + f Lnet/minecraft/class_1792; field_17732 WANDERING_TRADER_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8872 SMOOTH_SANDSTONE_SLAB + f Lnet/minecraft/class_1792; field_27046 WAXED_EXPOSED_CUT_COPPER_STAIRS + f Lnet/minecraft/class_1792; field_64146 PARCHED_SPAWN_EGG + f Lnet/minecraft/class_1792; field_54614 PALE_OAK_STAIRS + f Lnet/minecraft/class_1792; field_20387 SMOOTH_RED_SANDSTONE + f Lnet/minecraft/class_1792; field_16313 CARTOGRAPHY_TABLE + f Lnet/minecraft/class_1792; field_8214 FIRE_CORAL_FAN + f Lnet/minecraft/class_1792; field_8456 RED_SANDSTONE_STAIRS + f Lnet/minecraft/class_1792; field_8238 STRUCTURE_BLOCK + f Lnet/minecraft/class_1792; field_19051 GRAY_WOOL + f Lnet/minecraft/class_1792; field_46977 OXIDIZED_CHISELED_COPPER + f Lnet/minecraft/class_1792; field_8105 STICKY_PISTON + f Lnet/minecraft/class_1792; field_37541 PEARLESCENT_FROGLIGHT + f Lnet/minecraft/class_1792; field_8129 RAIL + f Lnet/minecraft/class_1792; field_28043 DRIPSTONE_BLOCK + f Lnet/minecraft/class_1792; field_17535 OAK_SAPLING + f Lnet/minecraft/class_1792; field_8566 DAYLIGHT_DETECTOR + f Lnet/minecraft/class_1792; field_17511 PINK_TULIP + f Lnet/minecraft/class_1792; field_8542 BEDROCK + f Lnet/minecraft/class_1792; field_8893 BLUE_BED + f Lnet/minecraft/class_1792; field_8651 ACACIA_PLANKS + f Lnet/minecraft/class_1792; field_29024 SMOOTH_BASALT + f Lnet/minecraft/class_1792; field_8760 HUSK_SPAWN_EGG + f Lnet/minecraft/class_1792; field_55040 RESIN_BRICK_STAIRS + f Lnet/minecraft/class_1792; field_20386 SMOOTH_QUARTZ + f Lnet/minecraft/class_1792; field_54615 PALE_OAK_BUTTON + f Lnet/minecraft/class_1792; field_16314 CAT_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8104 HORN_CORAL_BLOCK + f Lnet/minecraft/class_1792; field_8455 BLUE_TERRACOTTA + f Lnet/minecraft/class_1792; field_8213 CYAN_SHULKER_BOX + f Lnet/minecraft/class_1792; field_8346 POLAR_BEAR_SPAWN_EGG + f Lnet/minecraft/class_1792; field_19050 PINK_WOOL + f Lnet/minecraft/class_1792; field_8128 BLUE_BANNER + f Lnet/minecraft/class_1792; field_8237 DEAD_BRAIN_CORAL_BLOCK + f Lnet/minecraft/class_1792; field_46976 WEATHERED_CHISELED_COPPER + f Lnet/minecraft/class_1792; field_37542 FROGSPAWN + f Lnet/minecraft/class_1792; field_17536 SPRUCE_SAPLING + f Lnet/minecraft/class_1792; field_23983 IRON_CHAIN + f Lnet/minecraft/class_1792; field_17512 OXEYE_DAISY + f Lnet/minecraft/class_1792; field_8676 RED_SHULKER_BOX + f Lnet/minecraft/class_1792; field_8785 STRIPPED_JUNGLE_WOOD + f Lnet/minecraft/class_1792; field_8652 DARK_OAK_LOG + f Lnet/minecraft/class_1792; field_8761 ORANGE_STAINED_GLASS_PANE + f Lnet/minecraft/class_1792; field_27064 AMETHYST_BLOCK + f Lnet/minecraft/class_1792; field_38219 WARDEN_SPAWN_EGG + f Lnet/minecraft/class_1792; field_27040 WAXED_EXPOSED_COPPER + f Lnet/minecraft/class_1792; field_8870 RED_GLAZED_TERRACOTTA + f Lnet/minecraft/class_1792; field_29023 DEEPSLATE_REDSTONE_ORE + f Lnet/minecraft/class_1792; field_55041 RESIN_BRICK_SLAB + f Lnet/minecraft/class_1792; field_48847 VAULT + f Lnet/minecraft/class_1792; field_55042 RESIN_BRICK_WALL + f Lnet/minecraft/class_1792; field_18889 CUT_SANDSTONE_SLAB + f Lnet/minecraft/class_1792; field_54616 PALE_OAK_PRESSURE_PLATE + f Lnet/minecraft/class_1792; field_22019 ANCIENT_DEBRIS + f Lnet/minecraft/class_1792; field_46975 EXPOSED_CHISELED_COPPER + f Lnet/minecraft/class_1792; field_16311 GRINDSTONE + f Lnet/minecraft/class_1792; field_8410 BLACK_STAINED_GLASS + f Lnet/minecraft/class_1792; field_8325 PILLAGER_SPAWN_EGG + f Lnet/minecraft/class_1792; field_46999 TUFF_STAIRS + f Lnet/minecraft/class_1792; field_8458 DARK_OAK_WOOD + f Lnet/minecraft/class_1792; field_8349 MAGENTA_BED + f Lnet/minecraft/class_1792; field_20389 SMOOTH_STONE + f Lnet/minecraft/class_1792; field_8588 PRISMARINE_BRICK_SLAB + f Lnet/minecraft/class_1792; field_17533 DRIED_KELP_BLOCK + f Lnet/minecraft/class_1792; field_8564 SILVERFISH_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8673 PRISMARINE_BRICK_STAIRS + f Lnet/minecraft/class_1792; field_27041 WAXED_WEATHERED_COPPER + f Lnet/minecraft/class_1792; field_8540 DARK_OAK_SLAB + f Lnet/minecraft/class_1792; field_8782 ANVIL + f Lnet/minecraft/class_1792; field_27065 BUDDING_AMETHYST + f Lnet/minecraft/class_1792; field_55043 CHISELED_RESIN_BRICKS + f Lnet/minecraft/class_1792; field_20388 SMOOTH_SANDSTONE + f Lnet/minecraft/class_1792; field_54617 PALE_OAK_TRAPDOOR + f Lnet/minecraft/class_1792; field_16312 LECTERN + f Lnet/minecraft/class_1792; field_18888 SANDSTONE_SLAB + f Lnet/minecraft/class_1792; field_46974 CHISELED_COPPER + f Lnet/minecraft/class_1792; field_8300 SKELETON_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8433 COW_SPAWN_EGG + f Lnet/minecraft/class_1792; field_8106 CHEST + f Lnet/minecraft/class_1792; field_8457 BIRCH_FENCE + f Lnet/minecraft/class_1792; field_46998 WAXED_OXIDIZED_COPPER_TRAPDOOR + f Lnet/minecraft/class_1792; field_8239 HOPPER + f Lnet/minecraft/class_1792; field_37540 VERDANT_FROGLIGHT + f Lnet/minecraft/class_1792; field_17534 CAKE + f Lnet/minecraft/class_1792; field_8698 DEAD_HORN_CORAL_BLOCK + f Lnet/minecraft/class_1792; field_17510 WHITE_TULIP + f Lnet/minecraft/class_1792; field_8565 JUKEBOX + f Lnet/minecraft/class_1792; field_8783 MAGENTA_TERRACOTTA + f Lnet/minecraft/class_1792; field_27042 WAXED_CUT_COPPER + f Lnet/minecraft/class_1792; field_8541 INFESTED_STONE_BRICKS + f Lnet/minecraft/class_1792; field_29025 COBBLED_DEEPSLATE + f Lnet/minecraft/class_1792; field_8650 POLISHED_DIORITE_STAIRS + f Lnet/minecraft/class_1792; field_54618 PALE_OAK_FENCE_GATE + f Lnet/minecraft/class_1792; field_27066 SMALL_AMETHYST_BUD + f Lnet/minecraft/class_1792; field_8442 BIRCH_BOAT + f Lnet/minecraft/class_1792; field_8578 IRON_HORSE_ARMOR + f Lnet/minecraft/class_1792; field_8577 LEATHER_CHESTPLATE + f Lnet/minecraft/class_1792; field_8574 POTION + f Lnet/minecraft/class_1792; field_8573 CREEPER_BANNER_PATTERN + f Lnet/minecraft/class_1792; field_8570 LEATHER_LEGGINGS + f Lnet/minecraft/class_1792; field_23831 PIGLIN_BANNER_PATTERN + f Lnet/minecraft/class_1792; field_8309 BEETROOT_SEEDS + f Lnet/minecraft/class_1792; field_8308 RABBIT_STEW + f Lnet/minecraft/class_1792; field_8301 END_CRYSTAL + f Lnet/minecraft/class_1792; field_8434 PRISMARINE_CRYSTALS + f Lnet/minecraft/class_1792; field_8567 POTATO + f Lnet/minecraft/class_1792; field_8303 GOLDEN_HOE + f Lnet/minecraft/class_1792; field_8436 SPLASH_POTION + f Lnet/minecraft/class_1792; field_8431 STONE_HOE + f Lnet/minecraft/class_1792; field_8699 IRON_SHOVEL + f Lnet/minecraft/class_1792; field_8696 CLAY_BALL + f Lnet/minecraft/class_1792; field_8560 GOLDEN_HORSE_ARMOR + f Lnet/minecraft/class_1792; field_8694 ARMOR_STAND + f Lnet/minecraft/class_1792; field_8695 GOLD_INGOT + f Lnet/minecraft/class_1792; field_8429 COD + f Lnet/minecraft/class_1792; field_8428 BOWL + f Lnet/minecraft/class_1792; field_8423 COOKIE + f Lnet/minecraft/class_1792; field_8556 DIAMOND_AXE + f Lnet/minecraft/class_1792; field_8425 MUSIC_DISC_BLOCKS + f Lnet/minecraft/class_1792; field_8688 DEBUG_STICK + f Lnet/minecraft/class_1792; field_8557 CLOCK + f Lnet/minecraft/class_1792; field_8469 GLASS_BOTTLE + f Lnet/minecraft/class_1792; field_8335 GOLDEN_PICKAXE + f Lnet/minecraft/class_1792; field_38213 ACACIA_CHEST_BOAT + f Lnet/minecraft/class_1792; field_8330 PINK_DYE + f Lnet/minecraft/class_1792; field_8463 GOLDEN_APPLE + f Lnet/minecraft/class_1792; field_38214 DARK_OAK_CHEST_BOAT + f Lnet/minecraft/class_1792; field_8598 ENCHANTED_BOOK + f Lnet/minecraft/class_1792; field_8597 GLISTERING_MELON_SLICE + f Lnet/minecraft/class_1792; field_38212 JUNGLE_CHEST_BOAT + f Lnet/minecraft/class_1792; field_38217 SPRUCE_CHEST_BOAT + f Lnet/minecraft/class_1792; field_16998 SWEET_BERRIES + f Lnet/minecraft/class_1792; field_38218 BIRCH_CHEST_BOAT + f Lnet/minecraft/class_1792; field_38215 MANGROVE_CHEST_BOAT + f Lnet/minecraft/class_1792; field_38216 OAK_CHEST_BOAT + f Lnet/minecraft/class_1792; field_8322 GOLDEN_SHOVEL + f Lnet/minecraft/class_1792; field_8324 BONE_MEAL + f Lnet/minecraft/class_1792; field_8323 PUFFERFISH + f Lnet/minecraft/class_1792; field_8450 FIREWORK_STAR + f Lnet/minecraft/class_1792; field_47831 WOLF_ARMOR + f Lnet/minecraft/class_1792; field_47830 ARMADILLO_SCUTE + f Lnet/minecraft/class_1792; field_8317 WHEAT_SEEDS + f Lnet/minecraft/class_1792; field_8313 CHAINMAIL_BOOTS + f Lnet/minecraft/class_1792; field_8446 WHITE_DYE + f Lnet/minecraft/class_1792; field_8449 ENDER_EYE + f Lnet/minecraft/class_1792; field_8448 NAME_TAG + f Lnet/minecraft/class_1792; field_8226 BLACK_DYE + f Lnet/minecraft/class_1792; field_8220 COMMAND_BLOCK_MINECART + f Lnet/minecraft/class_1792; field_8486 SPRUCE_BOAT + f Lnet/minecraft/class_1792; field_8355 MUSIC_DISC_WARD + f Lnet/minecraft/class_1792; field_18138 LEATHER_HORSE_ARMOR + f Lnet/minecraft/class_1792; field_50140 OMINOUS_BOTTLE + f Lnet/minecraft/class_1792; field_55044 RESIN_BRICK + f Lnet/minecraft/class_1792; field_8218 CHAINMAIL_LEGGINGS + f Lnet/minecraft/class_1792; field_8479 SUGAR + f Lnet/minecraft/class_1792; field_8345 BLUE_DYE + f Lnet/minecraft/class_1792; field_8478 TROPICAL_FISH_BUCKET + f Lnet/minecraft/class_1792; field_8348 DIAMOND_LEGGINGS + f Lnet/minecraft/class_1792; field_43196 WAYFINDER_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_8347 COOKED_MUTTON + f Lnet/minecraft/class_1792; field_43195 PITCHER_POD + f Lnet/minecraft/class_1792; field_8475 IRON_AXE + f Lnet/minecraft/class_1792; field_8477 DIAMOND + f Lnet/minecraft/class_1792; field_8344 MUSIC_DISC_MELLOHI + f Lnet/minecraft/class_1792; field_27876 POWDER_SNOW_BUCKET + f Lnet/minecraft/class_1792; field_42707 CHERRY_CHEST_BOAT + f Lnet/minecraft/class_1792; field_42706 CHERRY_BOAT + f Lnet/minecraft/class_1792; field_43198 SILENCE_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_43197 SHAPER_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_43199 RAISER_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_50139 OMINOUS_TRIAL_KEY + f Lnet/minecraft/class_1792; field_8209 SALMON + f Lnet/minecraft/class_1792; field_8208 MUSHROOM_STEW + f Lnet/minecraft/class_1792; field_55037 RESIN_CLUMP + f Lnet/minecraft/class_1792; field_8204 FILLED_MAP + f Lnet/minecraft/class_1792; field_8207 HEART_OF_THE_SEA + f Lnet/minecraft/class_1792; field_8116 COCOA_BEANS + f Lnet/minecraft/class_1792; field_59726 MAGENTA_HARNESS + f Lnet/minecraft/class_1792; field_59727 LIGHT_BLUE_HARNESS + f Lnet/minecraft/class_1792; field_59724 WHITE_HARNESS + f Lnet/minecraft/class_1792; field_8378 FISHING_ROD + f Lnet/minecraft/class_1792; field_8245 RABBIT_HIDE + f Lnet/minecraft/class_1792; field_59725 ORANGE_HARNESS + f Lnet/minecraft/class_1792; field_8377 DIAMOND_PICKAXE + f Lnet/minecraft/class_1792; field_59722 RED_HARNESS + f Lnet/minecraft/class_1792; field_59723 BLACK_HARNESS + f Lnet/minecraft/class_1792; field_42716 BRUSH + f Lnet/minecraft/class_1792; field_8373 COOKED_COD + f Lnet/minecraft/class_1792; field_42711 TORCHFLOWER_SEEDS + f Lnet/minecraft/class_1792; field_8371 IRON_SWORD + f Lnet/minecraft/class_1792; field_8370 LEATHER_BOOTS + f Lnet/minecraft/class_1792; field_8108 PUFFERFISH_BUCKET + f Lnet/minecraft/class_1792; field_8107 ARROW + f Lnet/minecraft/class_1792; field_59716 LIGHT_GRAY_HARNESS + f Lnet/minecraft/class_1792; field_8103 MILK_BUCKET + f Lnet/minecraft/class_1792; field_8236 SPECTRAL_ARROW + f Lnet/minecraft/class_1792; field_59717 CYAN_HARNESS + f Lnet/minecraft/class_1792; field_59714 PINK_HARNESS + f Lnet/minecraft/class_1792; field_59715 GRAY_HARNESS + f Lnet/minecraft/class_1792; field_59712 YELLOW_HARNESS + f Lnet/minecraft/class_1792; field_8233 CHORUS_FRUIT + f Lnet/minecraft/class_1792; field_59713 LIME_HARNESS + f Lnet/minecraft/class_1792; field_8498 FLOWER_BANNER_PATTERN + f Lnet/minecraft/class_1792; field_8102 BOW + f Lnet/minecraft/class_1792; field_8367 ENCHANTED_GOLDEN_APPLE + f Lnet/minecraft/class_1792; field_8361 KNOWLEDGE_BOOK + f Lnet/minecraft/class_1792; field_8497 MELON_SLICE + f Lnet/minecraft/class_1792; field_8360 WRITTEN_BOOK + f Lnet/minecraft/class_1792; field_59718 PURPLE_HARNESS + f Lnet/minecraft/class_1792; field_8492 ORANGE_DYE + f Lnet/minecraft/class_1792; field_59719 BLUE_HARNESS + f Lnet/minecraft/class_1792; field_59720 BROWN_HARNESS + f Lnet/minecraft/class_1792; field_59721 GREEN_HARNESS + f Lnet/minecraft/class_1792; field_61066 MUSIC_DISC_LAVA_CHICKEN + f Lnet/minecraft/class_1792; field_8229 BREAD + f Lnet/minecraft/class_1792; field_8614 PHANTOM_MEMBRANE + f Lnet/minecraft/class_1792; field_8748 MUTTON + f Lnet/minecraft/class_1792; field_8745 LEATHER + f Lnet/minecraft/class_1792; field_8613 DRAGON_BREATH + f Lnet/minecraft/class_1792; field_8876 WOODEN_SHOVEL + f Lnet/minecraft/class_1792; field_8743 IRON_HELMET + f Lnet/minecraft/class_1792; field_8741 PUMPKIN_PIE + f Lnet/minecraft/class_1792; field_8873 CHAINMAIL_CHESTPLATE + f Lnet/minecraft/class_1792; field_8609 IRON_HOE + f Lnet/minecraft/class_1792; field_28410 GLOW_INK_SAC + f Lnet/minecraft/class_1792; field_8606 BONE + f Lnet/minecraft/class_1792; field_8868 SHEARS + f Lnet/minecraft/class_1792; field_8600 STICK + f Lnet/minecraft/class_1792; field_8601 GLOWSTONE_DUST + f Lnet/minecraft/class_1792; field_8731 MUSIC_DISC_11 + f Lnet/minecraft/class_1792; field_8864 NAUTILUS_SHELL + f Lnet/minecraft/class_1792; field_8862 GOLDEN_HELMET + f Lnet/minecraft/class_1792; field_8730 JUNGLE_BOAT + f Lnet/minecraft/class_1792; field_8861 WHEAT + f Lnet/minecraft/class_1792; field_51628 MUSIC_DISC_CREATOR + f Lnet/minecraft/class_1792; field_51629 MUSIC_DISC_CREATOR_MUSIC_BOX + f Lnet/minecraft/class_1792; field_61340 COPPER_PICKAXE + f Lnet/minecraft/class_1792; field_61341 COPPER_AXE + f Lnet/minecraft/class_1792; field_61342 COPPER_HOE + f Lnet/minecraft/class_1792; field_61343 COPPER_HELMET + f Lnet/minecraft/class_1792; field_61344 COPPER_CHESTPLATE + f Lnet/minecraft/class_1792; field_61345 COPPER_LEGGINGS + f Lnet/minecraft/class_1792; field_61346 COPPER_BOOTS + f Lnet/minecraft/class_1792; field_28408 GLOW_ITEM_FRAME + f Lnet/minecraft/class_1792; field_61348 COPPER_HORSE_ARMOR + f Lnet/minecraft/class_1792; field_61349 COPPER_NUGGET + f Lnet/minecraft/class_1792; field_43201 ANGLER_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_8509 COOKED_SALMON + f Lnet/minecraft/class_1792; field_43200 HOST_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_8504 RABBIT + f Lnet/minecraft/class_1792; field_8639 FIREWORK_ROCKET + f Lnet/minecraft/class_1792; field_8634 ENDER_PEARL + f Lnet/minecraft/class_1792; field_43207 DANGER_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_8635 POISONOUS_POTATO + f Lnet/minecraft/class_1792; field_43206 BURN_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_8502 MUSIC_DISC_FAR + f Lnet/minecraft/class_1792; field_8632 CYAN_DYE + f Lnet/minecraft/class_1792; field_43209 FRIEND_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_8766 SUSPICIOUS_STEW + f Lnet/minecraft/class_1792; field_43208 EXPLORER_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_51630 MUSIC_DISC_PRECIPICE + f Lnet/minecraft/class_1792; field_43203 ARMS_UP_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_43202 ARCHER_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_8894 BLAZE_ROD + f Lnet/minecraft/class_1792; field_43205 BREWER_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_8895 MAP + f Lnet/minecraft/class_1792; field_43204 BLADE_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_8892 PAINTING + f Lnet/minecraft/class_1792; field_8891 SKULL_BANNER_PATTERN + f Lnet/minecraft/class_1792; field_61338 COPPER_SWORD + f Lnet/minecraft/class_1792; field_61339 COPPER_SHOVEL + f Lnet/minecraft/class_1792; field_28659 GLOW_BERRIES + f Lnet/minecraft/class_1792; field_43211 HEARTBREAK_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_43210 HEART_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_43213 MINER_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_43212 HOWL_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_8759 LAPIS_LAZULI + f Lnet/minecraft/class_1792; field_43219 SKULL_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_8623 MUSIC_DISC_CHIRP + f Lnet/minecraft/class_1792; field_43218 SHELTER_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_8753 GOLDEN_BOOTS + f Lnet/minecraft/class_1792; field_8620 IRON_INGOT + f Lnet/minecraft/class_1792; field_8621 BRICK + f Lnet/minecraft/class_1792; field_8884 FLINT_AND_STEEL + f Lnet/minecraft/class_1792; field_43215 PLENTY_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_43214 MOURNER_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_8752 COOKED_RABBIT + f Lnet/minecraft/class_1792; field_8882 POPPED_CHORUS_FRUIT + f Lnet/minecraft/class_1792; field_43217 SHEAF_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_43216 PRIZE_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_8662 PRISMARINE_SHARD + f Lnet/minecraft/class_1792; field_8660 IRON_BOOTS + f Lnet/minecraft/class_1792; field_8794 INK_SAC + f Lnet/minecraft/class_1792; field_8790 NETHER_WART + f Lnet/minecraft/class_1792; field_8528 STONE_SWORD + f Lnet/minecraft/class_1792; field_8527 DIAMOND_HOE + f Lnet/minecraft/class_1792; field_8529 BOOK + f Lnet/minecraft/class_1792; field_43220 SNORT_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_8523 IRON_CHESTPLATE + f Lnet/minecraft/class_1792; field_8515 BEETROOT_SOUP + f Lnet/minecraft/class_1792; field_8512 BAKED_POTATO + f Lnet/minecraft/class_1792; field_8511 ROTTEN_FLESH + f Lnet/minecraft/class_1792; field_8647 WOODEN_PICKAXE + f Lnet/minecraft/class_1792; field_8777 SLIME_BALL + f Lnet/minecraft/class_1792; field_8776 STONE_SHOVEL + f Lnet/minecraft/class_1792; field_33401 RAW_COPPER + f Lnet/minecraft/class_1792; field_33402 RAW_GOLD + f Lnet/minecraft/class_1792; field_8551 DRIED_KELP + f Lnet/minecraft/class_1792; field_8687 EMERALD + f Lnet/minecraft/class_1792; field_8550 BUCKET + f Lnet/minecraft/class_1792; field_8680 SPIDER_EYE + f Lnet/minecraft/class_1792; field_41954 TIDE_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_41953 VEX_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_41956 RIB_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_41955 SNOUT_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_41950 WILD_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_41952 EYE_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_33400 RAW_IRON + f Lnet/minecraft/class_1792; field_41951 WARD_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_41946 NETHERITE_UPGRADE_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_41947 SENTRY_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_41949 COAST_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_41948 DUNE_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_8547 TRIDENT + f Lnet/minecraft/class_1792; field_8416 GOLDEN_LEGGINGS + f Lnet/minecraft/class_1792; field_8544 COOKED_CHICKEN + f Lnet/minecraft/class_1792; field_8678 GOLDEN_CHESTPLATE + f Lnet/minecraft/class_1792; field_8543 SNOWBALL + f Lnet/minecraft/class_1792; field_23984 MUSIC_DISC_PIGSTEP + f Lnet/minecraft/class_1792; field_8674 WRITABLE_BOOK + f Lnet/minecraft/class_1792; field_56557 BLUE_EGG + f Lnet/minecraft/class_1792; field_8675 IRON_NUGGET + f Lnet/minecraft/class_1792; field_56558 BROWN_EGG + f Lnet/minecraft/class_1792; field_8407 PAPER + f Lnet/minecraft/class_1792; field_41957 SPIRE_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_8406 WOODEN_AXE + f Lnet/minecraft/class_1792; field_8408 GREEN_DYE + f Lnet/minecraft/class_1792; field_8403 IRON_PICKAXE + f Lnet/minecraft/class_1792; field_8669 MAGENTA_DYE + f Lnet/minecraft/class_1792; field_8666 COD_BUCKET + f Lnet/minecraft/class_1792; field_8534 MUSIC_DISC_MALL + f Lnet/minecraft/class_1792; field_8533 OAK_BOAT + f Lnet/minecraft/class_1792; field_8665 CHARCOAL + f Lnet/minecraft/class_1792; field_22024 NETHERITE_PICKAXE + f Lnet/minecraft/class_1792; field_22025 NETHERITE_AXE + f Lnet/minecraft/class_1792; field_22022 NETHERITE_SWORD + f Lnet/minecraft/class_1792; field_22023 NETHERITE_SHOVEL + f Lnet/minecraft/class_1792; field_22028 NETHERITE_CHESTPLATE + f Lnet/minecraft/class_1792; field_22029 NETHERITE_LEGGINGS + f Lnet/minecraft/class_1792; field_22026 NETHERITE_HOE + f Lnet/minecraft/class_1792; field_22027 NETHERITE_HELMET + f Lnet/minecraft/class_1792; field_22020 NETHERITE_INGOT + f Lnet/minecraft/class_1792; field_22021 NETHERITE_SCRAP + f Lnet/minecraft/class_1792; field_8087 TIPPED_ARROW + f Lnet/minecraft/class_1792; field_44705 MUSIC_DISC_RELIC + f Lnet/minecraft/class_1792; field_8075 MUSIC_DISC_CAT + f Lnet/minecraft/class_1792; field_8073 RABBIT_FOOT + f Lnet/minecraft/class_1792; field_35358 MUSIC_DISC_OTHERSIDE + f Lnet/minecraft/class_1792; field_8070 GHAST_TEAR + f Lnet/minecraft/class_1792; field_8071 GOLDEN_CARROT + f Lnet/minecraft/class_1792; field_64377 NETHERITE_HORSE_ARMOR + f Lnet/minecraft/class_1792; field_54302 WHITE_BUNDLE + f Lnet/minecraft/class_1792; field_54303 ORANGE_BUNDLE + f Lnet/minecraft/class_1792; field_54304 MAGENTA_BUNDLE + f Lnet/minecraft/class_1792; field_39057 GOAT_HORN + f Lnet/minecraft/class_1792; field_54305 LIGHT_BLUE_BUNDLE + f Lnet/minecraft/class_1792; field_8814 FIRE_CHARGE + f Lnet/minecraft/class_1792; field_8815 SHULKER_SHELL + f Lnet/minecraft/class_1792; field_54306 YELLOW_BUNDLE + f Lnet/minecraft/class_1792; field_54307 LIME_BUNDLE + f Lnet/minecraft/class_1792; field_54308 PINK_BUNDLE + f Lnet/minecraft/class_1792; field_54309 GRAY_BUNDLE + f Lnet/minecraft/class_1792; field_27022 COPPER_INGOT + f Lnet/minecraft/class_1792; field_28354 AXOLOTL_BUCKET + f Lnet/minecraft/class_1792; field_27023 BUNDLE + f Lnet/minecraft/class_1792; field_8806 MUSIC_DISC_WAIT + f Lnet/minecraft/class_1792; field_8807 DIAMOND_HORSE_ARMOR + f Lnet/minecraft/class_1792; field_8805 DIAMOND_HELMET + f Lnet/minecraft/class_1792; field_8802 DIAMOND_SWORD + f Lnet/minecraft/class_1792; field_8803 EGG + f Lnet/minecraft/class_1792; field_8099 BROWN_DYE + f Lnet/minecraft/class_1792; field_38974 DISC_FRAGMENT_5 + f Lnet/minecraft/class_1792; field_8094 ACACIA_BOAT + f Lnet/minecraft/class_1792; field_8090 TURTLE_HELMET + f Lnet/minecraft/class_1792; field_8091 WOODEN_SWORD + f Lnet/minecraft/class_1792; field_38973 MUSIC_DISC_5 + f Lnet/minecraft/class_1792; field_8705 WATER_BUCKET + f Lnet/minecraft/class_1792; field_8836 HOPPER_MINECART + f Lnet/minecraft/class_1792; field_8834 MUSIC_DISC_STAL + f Lnet/minecraft/class_1792; field_8833 ELYTRA + f Lnet/minecraft/class_1792; field_54314 BROWN_BUNDLE + f Lnet/minecraft/class_1792; field_54315 GREEN_BUNDLE + f Lnet/minecraft/class_1792; field_54316 RED_BUNDLE + f Lnet/minecraft/class_1792; field_54317 BLACK_BUNDLE + f Lnet/minecraft/class_1792; field_54310 LIGHT_GRAY_BUNDLE + f Lnet/minecraft/class_1792; field_54311 CYAN_BUNDLE + f Lnet/minecraft/class_1792; field_54312 PURPLE_BUNDLE + f Lnet/minecraft/class_1792; field_54313 BLUE_BUNDLE + f Lnet/minecraft/class_1792; field_8825 GOLDEN_AXE + f Lnet/minecraft/class_1792; field_37533 TADPOLE_BUCKET + f Lnet/minecraft/class_1792; field_37531 MANGROVE_BOAT + f Lnet/minecraft/class_1792; field_8729 NETHER_BRICK + f Lnet/minecraft/class_1792; field_38746 ECHO_SHARD + f Lnet/minecraft/class_1792; field_38747 RECOVERY_COMPASS + f Lnet/minecraft/class_1792; field_8725 REDSTONE + f Lnet/minecraft/class_1792; field_8726 CHICKEN + f Lnet/minecraft/class_1792; field_8851 LIGHT_GRAY_DYE + f Lnet/minecraft/class_1792; field_8719 LEAD + f Lnet/minecraft/class_1792; field_8713 COAL + f Lnet/minecraft/class_1792; field_8846 TROPICAL_FISH + f Lnet/minecraft/class_1792; field_8714 SALMON_BUCKET + f Lnet/minecraft/class_1792; field_8711 FERMENTED_SPIDER_EYE + f Lnet/minecraft/class_1792; field_8845 GOLDEN_SWORD + f Lnet/minecraft/class_1792; field_8135 MAGMA_CREAM + f Lnet/minecraft/class_1792; field_8138 DARK_OAK_BOAT + f Lnet/minecraft/class_1792; field_8137 NETHER_STAR + f Lnet/minecraft/class_1792; field_52583 BORDURE_INDENTED_BANNER_PATTERN + f Lnet/minecraft/class_1792; field_8264 RED_DYE + f Lnet/minecraft/class_1792; field_8131 LIME_DYE + f Lnet/minecraft/class_1792; field_8397 GOLD_NUGGET + f Lnet/minecraft/class_1792; field_52582 FIELD_MASONED_BANNER_PATTERN + f Lnet/minecraft/class_1792; field_20414 HONEYCOMB + f Lnet/minecraft/class_1792; field_8267 LEATHER_HELMET + f Lnet/minecraft/class_1792; field_20417 HONEY_BOTTLE + f Lnet/minecraft/class_1792; field_8399 CROSSBOW + f Lnet/minecraft/class_1792; field_8261 COOKED_PORKCHOP + f Lnet/minecraft/class_1792; field_8396 IRON_LEGGINGS + f Lnet/minecraft/class_1792; field_8389 PORKCHOP + f Lnet/minecraft/class_1792; field_8255 SHIELD + f Lnet/minecraft/class_1792; field_8388 CHEST_MINECART + f Lnet/minecraft/class_1792; field_8387 STONE_PICKAXE + f Lnet/minecraft/class_1792; field_8251 COMPASS + f Lnet/minecraft/class_1792; field_8250 DIAMOND_SHOVEL + f Lnet/minecraft/class_1792; field_8159 MOJANG_BANNER_PATTERN + f Lnet/minecraft/class_1792; field_40224 BAMBOO_RAFT + f Lnet/minecraft/class_1792; field_40225 BAMBOO_CHEST_RAFT + f Lnet/minecraft/class_1792; field_8288 TOTEM_OF_UNDYING + f Lnet/minecraft/class_1792; field_8155 QUARTZ + f Lnet/minecraft/class_1792; field_8285 DIAMOND_BOOTS + f Lnet/minecraft/class_1792; field_8150 LINGERING_POTION + f Lnet/minecraft/class_1792; field_8287 EXPERIENCE_BOTTLE + f Lnet/minecraft/class_1792; field_8153 FEATHER + f Lnet/minecraft/class_1792; field_8283 CHAINMAIL_HELMET + f Lnet/minecraft/class_1792; field_63384 WOODEN_SPEAR + f Lnet/minecraft/class_1792; field_63386 COPPER_SPEAR + f Lnet/minecraft/class_1792; field_63385 STONE_SPEAR + f Lnet/minecraft/class_1792; field_63388 GOLDEN_SPEAR + f Lnet/minecraft/class_1792; field_63387 IRON_SPEAR + f Lnet/minecraft/class_1792; field_63389 DIAMOND_SPEAR + f Lnet/minecraft/class_1792; field_49098 WIND_CHARGE + f Lnet/minecraft/class_1792; field_8144 MUSIC_DISC_13 + f Lnet/minecraft/class_1792; field_8143 ITEM_FRAME + f Lnet/minecraft/class_1792; field_8276 STRING + f Lnet/minecraft/class_1792; field_8279 APPLE + f Lnet/minecraft/class_1792; field_8145 FLINT + f Lnet/minecraft/class_1792; field_8273 LIGHT_BLUE_DYE + f Lnet/minecraft/class_1792; field_8046 BEEF + f Lnet/minecraft/class_1792; field_8179 CARROT + f Lnet/minecraft/class_1792; field_8176 COOKED_BEEF + f Lnet/minecraft/class_1792; field_8175 SADDLE + f Lnet/minecraft/class_1792; field_8045 MINECART + f Lnet/minecraft/class_1792; field_49820 GUSTER_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_49821 BREEZE_ROD + f Lnet/minecraft/class_1792; field_49822 SCRAPE_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_8167 WOODEN_HOE + f Lnet/minecraft/class_1792; field_54620 PALE_OAK_BOAT + f Lnet/minecraft/class_1792; field_23254 WARPED_FUNGUS_ON_A_STICK + f Lnet/minecraft/class_1792; field_8296 PURPLE_DYE + f Lnet/minecraft/class_1792; field_8298 GRAY_DYE + f Lnet/minecraft/class_1792; field_63390 NETHERITE_SPEAR + f Lnet/minecraft/class_1792; field_63392 GOLDEN_NAUTILUS_ARMOR + f Lnet/minecraft/class_1792; field_8161 TURTLE_SCUTE + f Lnet/minecraft/class_1792; field_63391 IRON_NAUTILUS_ARMOR + f Lnet/minecraft/class_1792; field_63394 NETHERITE_NAUTILUS_ARMOR + f Lnet/minecraft/class_1792; field_54621 PALE_OAK_CHEST_BOAT + f Lnet/minecraft/class_1792; field_63393 DIAMOND_NAUTILUS_ARMOR + f Lnet/minecraft/class_1792; field_63395 COPPER_NAUTILUS_ARMOR + f Lnet/minecraft/class_1792; field_49814 MACE + f Lnet/minecraft/class_1792; field_49815 FLOW_BANNER_PATTERN + f Lnet/minecraft/class_1792; field_49816 GUSTER_BANNER_PATTERN + f Lnet/minecraft/class_1792; field_49817 FLOW_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_49818 BOLT_ARMOR_TRIM_SMITHING_TEMPLATE + f Lnet/minecraft/class_1792; field_49819 FLOW_POTTERY_SHERD + f Lnet/minecraft/class_1792; field_27070 SPYGLASS + f Lnet/minecraft/class_1792; field_60667 MUSIC_DISC_TEARS + f Lnet/minecraft/class_1792; field_8069 TNT_MINECART + f Lnet/minecraft/class_1792; field_8063 FURNACE_MINECART + f Lnet/minecraft/class_1792; field_8062 STONE_AXE + f Lnet/minecraft/class_1792; field_8065 MUSIC_DISC_STRAD + f Lnet/minecraft/class_1792; field_8192 YELLOW_DYE + f Lnet/minecraft/class_1792; field_27063 AMETHYST_SHARD + f Lnet/minecraft/class_1792; field_8058 DIAMOND_CHESTPLATE + f Lnet/minecraft/class_1792; field_18674 GLOBE_BANNER_PATTERN + f Lnet/minecraft/class_1792; field_47315 TRIAL_KEY + f Lnet/minecraft/class_1792; field_8054 GUNPOWDER + f Lnet/minecraft/class_1792; field_8187 LAVA_BUCKET + f Lnet/minecraft/class_1792; field_22030 NETHERITE_BOOTS + f Lnet/minecraft/class_1792; field_8184 CARROT_ON_A_STICK + f Lnet/minecraft/class_1792; field_8183 BLAZE_POWDER + f Lnet/minecraft/class_1792; field_8186 BEETROOT + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63942 method_63942 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63947 method_63947 + p 0 block + p 1 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63705 method_63705 + p 0 block + p 1 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63729 method_63729 + p 1 settings + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_72501 method_72501 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63813 method_63813 + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72509 method_72509 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63897 method_63897 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63920 method_63920 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63949 method_63949 + p 0 block + p 1 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63707 method_63707 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63874 method_63874 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63850 method_63850 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_72503 method_72503 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63921 method_63921 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63875 method_63875 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63851 method_63851 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_72502 method_72502 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63899 method_63899 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63943 method_63943 + p 0 block + p 1 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63701 method_63701 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72506 method_72506 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63967 method_63967 + p 1 settings + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63725 method_63725 + p 1 settings + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63876 method_63876 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63852 method_63852 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72505 method_72505 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63853 method_63853 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63877 method_63877 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63969 method_63969 + p 1 settings + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63727 method_63727 + p 1 settings + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63945 method_63945 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72508 method_72508 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63703 method_63703 + p 0 block + p 1 settings + m (Lnet/minecraft/class_2248;Ljava/util/function/BiFunction;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63748 register + p 2 settings + p 0 block + p 1 factory + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63854 method_63854 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63878 method_63878 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72507 method_72507 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63879 method_63879 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63855 method_63855 + p 0 settings + m (Ljava/lang/String;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_7991 register + p 1 settings + p 0 id + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63791 method_63791 + p 1 settings + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63890 method_63890 + p 0 settings + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_5321; method_63746 keyOf + p 0 blockKey + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63891 method_63891 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63709 method_63709 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63892 method_63892 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63940 method_63940 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_71151 method_71151 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63894 method_63894 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63870 method_63870 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63941 method_63941 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63895 method_63895 + p 0 settings + m (Ljava/lang/String;Ljava/util/function/Function;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63750 register + p 2 settings + p 0 id + p 1 factory + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63914 method_63914 + p 0 settings + m (Lnet/minecraft/class_2248;Ljava/util/function/BiFunction;)Lnet/minecraft/class_1792; method_7993 register + p 0 block + p 1 factory + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63915 method_63915 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63793 method_63793 + p 1 settings + p 0 block + m (Lnet/minecraft/class_2248;)Lnet/minecraft/class_1792; method_7989 register + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63917 method_63917 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63951 method_63951 + p 0 block + p 1 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63866 method_63866 + p 1 settings + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63733 method_63733 + p 0 block + p 1 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63975 method_63975 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63868 method_63868 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63844 method_63844 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63978 method_63978 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63845 method_63845 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63735 method_63735 + p 1 settings + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63977 method_63977 + p 0 block + p 1 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63711 method_63711 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72504 method_72504 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63928 method_63928 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63953 method_63953 + p 0 block + p 1 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_7992 register + p 1 settings + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63846 method_63846 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63929 method_63929 + p 0 settings + m (Ljava/lang/String;)Lnet/minecraft/class_1792; method_7990 register + p 0 id + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_64296 method_64296 + p 0 settings + m (Lnet/minecraft/class_2248;)Ljava/util/function/Function; method_63812 createBlockItemWithUniqueName + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63847 method_63847 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63971 method_63971 + p 1 settings + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_58103 method_58103 + p 0 settings + m (Lnet/minecraft/class_5321;Ljava/util/function/Function;)Lnet/minecraft/class_1792; method_63747 register + p 0 key + p 1 factory + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63848 method_63848 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_58104 method_58104 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63849 method_63849 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63910 method_63910 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63731 method_63731 + p 1 settings + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63973 method_63973 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_58105 method_58105 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63779 method_63779 + p 0 block + p 1 settings + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_63814 keyOf + p 0 id + m (Ljava/util/function/UnaryOperator;Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63752 method_63752 + p 1 blockx + p 2 settings + m (Ljava/util/function/BiFunction;Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63751 method_63751 + p 2 itemSettings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_58106 method_58106 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63912 method_63912 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63930 method_63930 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63717 method_63717 + p 1 settings + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63959 method_63959 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63884 method_63884 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63860 method_63860 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_73100 method_73100 + p 1 settings + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63931 method_63931 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_58100 method_58100 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_65360 method_65360 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63885 method_63885 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63861 method_63861 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63932 method_63932 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_58101 method_58101 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63886 method_63886 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63719 method_63719 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63862 method_63862 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_58102 method_58102 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63933 method_63933 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63887 method_63887 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63863 method_63863 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63713 method_63713 + p 1 settings + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63955 method_63955 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63934 method_63934 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72518 method_72518 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63737 method_63737 + p 0 block + p 1 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63979 method_63979 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63864 method_63864 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63888 method_63888 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72517 method_72517 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63935 method_63935 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63865 method_63865 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63841 method_63841 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63889 method_63889 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63739 method_63739 + p 1 settings + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63715 method_63715 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63936 method_63936 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63957 method_63957 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63842 method_63842 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63937 method_63937 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63843 method_63843 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63976 method_63976 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63867 method_63867 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63919 method_63919 + p 1 settings + p 0 block + m (Lnet/minecraft/class_2248;[Lnet/minecraft/class_2248;)Lnet/minecraft/class_1792; method_35220 register + p 1 blocks + p 0 block + m (Lnet/minecraft/class_5321;Ljava/util/function/Function;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_51348 register + p 1 factory + p 2 settings + p 0 key + m (Lnet/minecraft/class_1299;)Lnet/minecraft/class_1792; method_76591 registerSpawnEgg + p 0 type + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_58098 method_58098 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63880 method_63880 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_58099 method_58099 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63881 method_63881 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63882 method_63882 + p 0 settings + m (Lnet/minecraft/class_2248;Ljava/util/function/UnaryOperator;)Lnet/minecraft/class_1792; method_58096 register + p 1 settingsOperator + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63883 method_63883 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63785 method_63785 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63925 method_63925 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63816 method_63816 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_58095 method_58095 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63699 method_63699 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63817 method_63817 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63926 method_63926 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63902 method_63902 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_64658 method_64658 + p 1 settings + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63981 method_63981 + p 0 block + p 1 settings + m (Ljava/lang/String;Ljava/util/function/Function;)Lnet/minecraft/class_1792; method_63749 register + p 0 id + p 1 factory + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63787 method_63787 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63927 method_63927 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_58097 method_58097 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63904 method_63904 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63781 method_63781 + p 1 settings + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63905 method_63905 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63907 method_63907 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63695 method_63695 + p 0 block + p 1 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63783 method_63783 + p 1 settings + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_64661 method_64661 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63909 method_63909 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63697 method_63697 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_64660 method_64660 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63938 method_63938 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63745 method_63745 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72514 method_72514 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63963 method_63963 + p 1 settings + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63721 method_63721 + p 1 settings + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63856 method_63856 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72513 method_72513 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_63939 method_63939 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63965 method_63965 + p 1 settings + p 0 block + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63723 method_63723 + p 1 settings + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72516 method_72516 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63858 method_63858 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72515 method_72515 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63859 method_63859 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63983 method_63983 + p 0 block + p 1 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63741 method_63741 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72510 method_72510 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63789 method_63789 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63922 method_63922 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63961 method_63961 + p 1 settings + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72512 method_72512 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63985 method_63985 + p 0 block + p 1 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63743 method_63743 + p 0 block + p 1 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63923 method_63923 + p 0 settings + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_64659 method_64659 + p 1 settings + p 0 block + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792$class_1793; method_72511 method_72511 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63815 method_63815 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63924 method_63924 + p 0 settings + m (Lnet/minecraft/class_1792$class_1793;)Lnet/minecraft/class_1792; method_63900 method_63900 + p 0 settings +c net/minecraft/class_1809 net/minecraft/item/PlayerHeadItem + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_2248;Lnet/minecraft/class_1792$class_1793;)V + p 3 settings + p 2 wallBlock + p 1 block +c net/minecraft/class_1808 net/minecraft/item/MinecartItem + f Lnet/minecraft/class_1299; field_8897 type + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1792$class_1793;)V + p 2 settings + p 1 type +c net/minecraft/class_4080 net/minecraft/resource/SinglePreparationResourceReloader + c A base resource reloader implementation that prepares an object in a\nsingle call (as opposed to in multiple concurrent tasks) and handles\nthe prepared object in the apply stage.\n\n@param the intermediate object type + m (Lnet/minecraft/class_3300;Ljava/lang/Object;)V method_18790 method_18790 + p 2 prepared + m (Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)Ljava/lang/Object; method_18789 prepare + c Prepares the intermediate object.\n\n

This method is called in the prepare executor in a reload.\n\n@return the prepared object + p 2 profiler + c the prepare profiler + p 1 manager + c the resource manager + m (Ljava/lang/Object;Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)V method_18788 apply + c Handles the prepared intermediate object.\n\n

This method is called in the apply executor, or the game engine, in a\nreload. + p 2 manager + c the resource manager + p 3 profiler + c the apply profiler + p 1 prepared + c the prepared object +c net/minecraft/class_1807 net/minecraft/item/NameTagItem +c net/minecraft/class_1806 net/minecraft/item/FilledMapItem + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1937;)Lnet/minecraft/class_22; method_8001 getMapState + p 0 map + p 1 world + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_3218;)V method_7996 scale + p 0 map + p 1 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_8002 fillExplorationMap + p 0 world + p 1 map + m (Lnet/minecraft/class_3218;IIIZZLnet/minecraft/class_5321;)Lnet/minecraft/class_9209; method_32349 allocateMapId + p 3 scale + p 4 showIcons + p 5 unlimitedTracking + p 6 dimension + p 0 world + p 1 x + p 2 z + m (Lnet/minecraft/class_3218;IIBZZ)Lnet/minecraft/class_1799; method_8005 createMap + p 0 world + p 3 scale + p 4 showIcons + p 1 x + p 2 z + p 5 unlimitedTracking + m ([ZII)Z method_38988 isAquaticBiome + p 0 biomes + p 1 x + p 2 z + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_3218;)V method_17442 copyMap + p 0 stack + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680; method_7995 getFluidStateIfVisible + p 1 world + p 2 state + p 3 pos + m (Lnet/minecraft/class_9209;Lnet/minecraft/class_1937;)Lnet/minecraft/class_22; method_7997 getMapState + p 0 id + p 1 world + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;Lnet/minecraft/class_22;)V method_7998 updateColors + p 2 entity + p 3 state + p 1 world +c net/minecraft/class_4051 net/minecraft/entity/ai/TargetPredicate + f Z field_18098 useDistanceScalingFactor + f Z field_33721 respectsVisibility + f D field_30263 MIN_DISTANCE + f Lnet/minecraft/class_4051; field_18092 DEFAULT + f Z field_33720 attackable + f Lnet/minecraft/class_4051$class_10254; field_28405 predicate + f D field_18093 baseMaxDistance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1309;)Z method_18419 test + p 1 world + p 3 target + p 2 tester + m ()Lnet/minecraft/class_4051; method_33335 copy + m (D)Lnet/minecraft/class_4051; method_18418 setBaseMaxDistance + p 1 baseMaxDistance + m ()Lnet/minecraft/class_4051; method_18424 ignoreDistanceScalingFactor + m (Lnet/minecraft/class_4051$class_10254;)Lnet/minecraft/class_4051; method_18420 setPredicate + p 1 predicate + m (Z)V + p 1 attackable + m ()Lnet/minecraft/class_4051; method_36625 createAttackable + m ()Lnet/minecraft/class_4051; method_36627 ignoreVisibility + m ()Lnet/minecraft/class_4051; method_36626 createNonAttackable +c net/minecraft/class_4051$class_10254 net/minecraft/entity/ai/TargetPredicate$EntityPredicate + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_18303 test + p 2 world + p 1 target +c net/minecraft/class_5381 net/minecraft/registry/entry/RegistryElementCodec + c A codec for registry elements. Will prefer to encode/decode objects as\nidentifiers if they exist in a registry and falls back to full encoding/\ndecoding behavior if it cannot do so.\n\n

The codec's saves and loads {@code Supplier} in order to avoid early\nloading from registry before a registry is fully loaded from a codec.\n\n@param the element type\n@see net.minecraft.registry.RegistryOps + f Lnet/minecraft/class_5321; field_25507 registryRef + f Z field_26758 allowInlineDefinitions + f Lcom/mojang/serialization/Codec; field_25508 elementCodec + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;)Lnet/minecraft/class_5381; method_29749 of + p 0 registryRef + p 1 elementCodec + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decode decode + p 1 ops + p 2 input + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_40394 method_40394 + p 0 pair + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;Z)V + p 3 allowInlineDefinitions + p 2 elementCodec + p 1 registryRef + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_40392 method_40392 + p 3 value + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Codec;Z)Lnet/minecraft/class_5381; method_31192 of + p 2 allowInlineDefinitions + p 1 elementCodec + p 0 registryRef + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lnet/minecraft/class_5321;)Lcom/mojang/serialization/DataResult; method_40393 method_40393 + p 2 key + m (Lnet/minecraft/class_6880;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_29748 encode + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode encode + p 2 ops + p 3 prefix + p 1 input + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_29746 method_29746 + p 0 pair +c net/minecraft/class_4050 net/minecraft/entity/EntityPose + f Ljava/lang/String; field_63013 name + f Ljava/util/function/IntFunction; field_48322 INDEX_TO_VALUE + f I field_48324 index + f Lnet/minecraft/class_4050; field_18077 GLIDING + f Lnet/minecraft/class_9139; field_48323 PACKET_CODEC + f Lnet/minecraft/class_4050; field_18076 STANDING + f Lnet/minecraft/class_4050; field_18079 SWIMMING + f Lnet/minecraft/class_4050; field_18078 SLEEPING + f Lnet/minecraft/class_4050; field_18081 CROUCHING + f Lnet/minecraft/class_4050; field_18080 SPIN_ATTACK + f Lnet/minecraft/class_4050; field_18082 DYING + f Lnet/minecraft/class_4050; field_30095 LONG_JUMPING + f Lnet/minecraft/class_4050; field_47247 SHOOTING + f Lnet/minecraft/class_4050; field_47248 INHALING + f Lnet/minecraft/class_4050; field_47246 SLIDING + f Lnet/minecraft/class_4050; field_37422 CROAKING + f Lnet/minecraft/class_4050; field_37423 USING_TONGUE + f Lnet/minecraft/class_4050; field_40118 SITTING + f Lcom/mojang/serialization/Codec; field_63012 CODEC + f Lnet/minecraft/class_4050; field_38097 ROARING + f Lnet/minecraft/class_4050; field_38099 EMERGING + f Lnet/minecraft/class_4050; field_38098 SNIFFING + f Lnet/minecraft/class_4050; field_38100 DIGGING + m (Ljava/lang/String;IILjava/lang/String;)V + p 4 name + p 3 index + m ()I method_56081 getIndex +c net/minecraft/class_4063 net/minecraft/client/option/CloudRenderMode + f Lcom/mojang/serialization/Codec; field_45285 CODEC + f Lnet/minecraft/class_2561; field_64421 text + f Ljava/lang/String; field_45286 serializedId + f Lnet/minecraft/class_4063; field_18164 FANCY + f Lnet/minecraft/class_4063; field_18163 FAST + f Lnet/minecraft/class_4063; field_18162 OFF + m ()Lnet/minecraft/class_2561; method_76525 getText + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V + p 4 translationKey + p 3 serializedId +c net/minecraft/class_4066 net/minecraft/particle/ParticlesMode + f I field_18201 id + f Lnet/minecraft/class_2561; field_64260 text + f Ljava/util/function/IntFunction; field_18200 BY_ID + f Lcom/mojang/serialization/Codec; field_64259 CODEC + f Lnet/minecraft/class_4066; field_18197 ALL + f Lnet/minecraft/class_4066; field_18199 MINIMAL + f Lnet/minecraft/class_4066; field_18198 DECREASED + m ()Lnet/minecraft/class_2561; method_76329 getText + m (Lnet/minecraft/class_4066;)Ljava/lang/Integer; method_76330 method_76330 + p 0 mode + m (Ljava/lang/String;IILjava/lang/String;)V + p 4 translationKey + p 3 id +c net/minecraft/class_5396 net/minecraft/datafixer/fix/MissingDimensionFix + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/templates/CompoundList$CompoundListType;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_29911 method_29911 + p 3 dimensionsListTyped + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/templates/CompoundList$CompoundListType;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_29910 method_29910 + p 4 dimensionsTyped + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/Type; method_38820 flatGeneratorType + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_29912 method_29912 + p 1 worldGenSettingsDynamic + m (Ljava/lang/String;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/types/Type; method_29913 extract1 + p 0 field + p 1 type + m (Ljava/lang/String;Lcom/mojang/datafixers/types/Type;Ljava/lang/String;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/types/Type; method_29914 extract2Opt + p 3 type2 + p 2 field2 + p 1 type1 + p 0 field1 + m (Ljava/lang/String;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/types/Type; method_29915 extract1Opt + p 0 field + p 1 type + m (Lcom/mojang/datafixers/FieldFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/templates/CompoundList$CompoundListType;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_29909 method_29909 + p 4 worldGenSettingsTyped +c net/minecraft/class_4065 net/minecraft/client/option/NarratorMode + c Contains the different narrator modes that control\nwhich messages the narrator narrates. + f I field_18181 id + f Ljava/util/function/IntFunction; field_18180 BY_ID + f Lnet/minecraft/class_4065; field_18177 ALL + c The narrator narrates everything narrated in the {@link #CHAT} and {@link #SYSTEM} modes. + f Lnet/minecraft/class_4065; field_18178 CHAT + c The narrator narrates chat messages. + f Lnet/minecraft/class_4065; field_18176 OFF + c The narrator is disabled and narrates nothing. + f Lnet/minecraft/class_4065; field_18179 SYSTEM + c The narrator narrates system text, including screens. + f Lcom/mojang/serialization/Codec; field_64423 CODEC + f Lnet/minecraft/class_2561; field_24212 name + m ()Lnet/minecraft/class_2561; method_18511 getName + c {@return the human-readable name of this mode} + m ()I method_18509 getId + c {@return the unique int ID of this mode}\n@see #byId(int) + m (I)Lnet/minecraft/class_4065; method_18510 byId + c {@return the narrator mode matching the specified ID with wraparound}\n@see #getId + p 0 id + m ()Z method_70819 shouldNarrate + m ()Z method_44715 shouldNarrateChat + c Checks if this mode narrates chat messages.\n\n@return {@code true} if chat messages are narrated, {@code false} otherwise\n@see #CHAT + m ()Z method_44716 shouldNarrateSystem + c Checks if this mode narrates system text.\n\n@return {@code true} if system text is narrated, {@code false} otherwise\n@see #SYSTEM + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name +c net/minecraft/class_4061 net/minecraft/client/option/AttackIndicator + f Lcom/mojang/serialization/Codec; field_64418 CODEC + f Ljava/util/function/IntFunction; field_64419 BY_ID + f I field_18155 id + f Lnet/minecraft/class_2561; field_64420 text + f Lnet/minecraft/class_4061; field_18152 CROSSHAIR + f Lnet/minecraft/class_4061; field_18151 OFF + f Lnet/minecraft/class_4061; field_18153 HOTBAR + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 translationKey + m (Lnet/minecraft/class_4061;)I method_76524 method_76524 + p 0 attackIndicator + m ()Lnet/minecraft/class_2561; method_76522 getText + m (Lnet/minecraft/class_4061;)Ljava/lang/Integer; method_76523 method_76523 + p 0 attackIndicator +c net/minecraft/class_5399 net/minecraft/structure/processor/LavaSubmergedBlockStructureProcessor + f Lnet/minecraft/class_5399; field_25619 INSTANCE + f Lcom/mojang/serialization/MapCodec; field_25618 CODEC +c net/minecraft/class_4068 net/minecraft/client/gui/Drawable + m (Lnet/minecraft/class_332;IIF)V method_25394 render + p 4 deltaTicks + p 2 mouseX + p 3 mouseY + p 1 context +c net/minecraft/class_5398 net/minecraft/entity/ai/goal/UniversalAngerGoal + f I field_25606 lastAttackedTime + f Z field_25605 triggerOthers + f I field_30232 BOX_VERTICAL_EXPANSION + f Lnet/minecraft/class_1308; field_25604 mob + m (Lnet/minecraft/class_1308;)Z method_29931 method_29931 + p 1 entity + m ()Z method_29932 canStartUniversalAnger + m (Lnet/minecraft/class_1308;Z)V + p 2 triggerOthers + p 1 mob + m (Lnet/minecraft/class_1308;)Lnet/minecraft/class_5354; method_29930 method_29930 + p 0 entity + m ()Ljava/util/List; method_29933 getOthersInRange +c net/minecraft/class_4069 net/minecraft/client/gui/ParentElement + c A GUI interface which handles keyboard and mouse callbacks for child GUI elements.\nThe implementation of a parent element can decide whether a child element receives keyboard and mouse callbacks. + m ()Lnet/minecraft/class_364; method_25399 getFocused + m (Lnet/minecraft/class_364;)V method_25395 setFocused + p 1 focused + m (Lnet/minecraft/class_8030;Lnet/minecraft/class_8028;Lnet/minecraft/class_364;Lnet/minecraft/class_8023;)Lnet/minecraft/class_8016; method_48220 computeInitialChildPath + p 2 direction + p 3 focused + p 1 focus + p 4 navigation + m ()Ljava/util/List; method_25396 children + c Gets a list of all child GUI elements. + m (Lnet/minecraft/class_8028;Lnet/minecraft/class_364;)Ljava/lang/Integer; method_48219 method_48219 + p 1 element + m (Z)V method_25398 setDragging + p 1 dragging + m ()Z method_25397 isDragging + m (DDDDLnet/minecraft/class_364;)Z method_20082 method_20082 + p 8 element + m (Lnet/minecraft/class_8028;Lnet/minecraft/class_364;)Ljava/lang/Integer; method_48216 method_48216 + p 1 element + m (DD)Ljava/util/Optional; method_19355 hoveredElement + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/class_8030;Lnet/minecraft/class_8028;Lnet/minecraft/class_364;Lnet/minecraft/class_8023;)Lnet/minecraft/class_8016; method_48217 computeChildPath + p 2 direction + p 3 focused + p 1 focus + p 4 navigation + m (Lnet/minecraft/class_8023$class_8024;)Lnet/minecraft/class_8016; method_48214 computeNavigationPath + p 1 navigation + m (Lnet/minecraft/class_364;)I method_48609 method_48609 + p 0 child + m (Lnet/minecraft/class_8023$class_8026;)Lnet/minecraft/class_8016; method_48215 computeNavigationPath + p 1 navigation +c net/minecraft/class_5362 net/minecraft/world/explosion/ExplosionBehavior + m (Lnet/minecraft/class_1927;Lnet/minecraft/class_1297;F)F method_55115 calculateDamage + p 1 explosion + p 3 amount + p 2 entity + m (Lnet/minecraft/class_1297;)F method_57007 getKnockbackModifier + p 1 entity + m (Lnet/minecraft/class_1927;Lnet/minecraft/class_1297;)Z method_55504 shouldDamage + p 1 explosion + p 2 entity + m (Lnet/minecraft/class_1927;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;F)Z method_29554 canDestroyBlock + p 3 pos + p 4 state + p 1 explosion + p 2 world + p 5 power + m (Lnet/minecraft/class_1927;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3610;)Ljava/util/Optional; method_29555 getBlastResistance + p 1 explosion + p 2 world + p 3 pos + p 4 blockState + p 5 fluidState +c net/minecraft/class_5361 net/minecraft/world/explosion/EntityExplosionBehavior + f Lnet/minecraft/class_1297; field_25399 entity + m (Lnet/minecraft/class_1927;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_3610;Ljava/lang/Float;)Ljava/lang/Float; method_29552 method_29552 + p 6 max + m (Lnet/minecraft/class_1297;)V + p 1 entity +c net/minecraft/class_5363 net/minecraft/world/dimension/DimensionOptions + f Lnet/minecraft/class_2794; comp_1013 chunkGenerator + f Lnet/minecraft/class_5321; field_25414 END + f Lnet/minecraft/class_5321; field_25413 NETHER + f Lnet/minecraft/class_5321; field_25412 OVERWORLD + f Lcom/mojang/serialization/Codec; field_25411 CODEC + f Lnet/minecraft/class_6880; comp_1012 dimensionTypeEntry + m ()Lnet/minecraft/class_2794; comp_1013 chunkGenerator + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_29568 method_29568 + p 0 instance + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_2794;)V + p 1 dimensionTypeEntry + p 2 chunkGenerator + m ()Lnet/minecraft/class_6880; comp_1012 dimensionTypeEntry +c net/minecraft/class_5369 net/minecraft/client/gui/screen/pack/ResourcePackOrganizer + f Ljava/util/List; field_25456 disabledPacks + f Ljava/util/function/Function; field_25785 iconIdSupplier + f Ljava/util/function/Consumer; field_25459 applier + f Ljava/util/function/Consumer; field_25458 updateCallback + f Ljava/util/List; field_25455 enabledPacks + f Lnet/minecraft/class_3283; field_25626 resourcePackManager + m (Lnet/minecraft/class_3288;)Lnet/minecraft/class_5369$class_5371; method_29644 method_29644 + p 1 pack + m ()V method_29981 refresh + m ()V method_29642 apply + m ()Ljava/util/stream/Stream; method_29643 getEnabledPacks + m (Lnet/minecraft/class_3288;)Lnet/minecraft/class_5369$class_5371; method_29640 method_29640 + p 1 pack + m ()V method_49627 refreshEnabledProfiles + m (Ljava/util/function/Consumer;Ljava/util/function/Function;Lnet/minecraft/class_3283;Ljava/util/function/Consumer;)V + p 4 applier + p 1 updateCallback + p 3 resourcePackManager + p 2 iconIdSupplier + m ()Ljava/util/stream/Stream; method_29639 getDisabledPacks +c net/minecraft/class_5369$class_5371 net/minecraft/client/gui/screen/pack/ResourcePackOrganizer$Pack + m ()V method_29659 moveTowardEnd + m ()V method_29656 enable + m ()Lnet/minecraft/class_2561; method_29650 getDisplayName + m ()V method_29658 moveTowardStart + m ()Lnet/minecraft/class_3281; method_29648 getCompatibility + m ()V method_29657 disable + m ()Lnet/minecraft/class_2960; method_30286 getIconId + m ()Z method_29655 isAlwaysEnabled + m ()Z method_29663 canMoveTowardStart + m ()Z method_29662 canBeDisabled + m ()Lnet/minecraft/class_5352; method_29652 getSource + m ()Z method_29654 isPinned + m ()Z method_29664 canMoveTowardEnd + m ()Lnet/minecraft/class_2561; method_29653 getDecoratedDescription + m ()Lnet/minecraft/class_2561; method_29651 getDescription + m ()Z method_29661 canBeEnabled + m ()Ljava/lang/String; method_48276 getName + m ()Z method_29660 isEnabled +c net/minecraft/class_5369$class_5374 net/minecraft/client/gui/screen/pack/ResourcePackOrganizer$DisabledPack +c net/minecraft/class_5369$class_5373 net/minecraft/client/gui/screen/pack/ResourcePackOrganizer$EnabledPack +c net/minecraft/class_5369$class_5372 net/minecraft/client/gui/screen/pack/ResourcePackOrganizer$AbstractPack + f Lnet/minecraft/class_3288; field_25461 profile + m (Lnet/minecraft/class_5369;Lnet/minecraft/class_3288;)V + p 2 profile + m (I)V method_29665 move + p 1 offset + m ()V method_29668 toggle + m ()Ljava/util/List; method_29667 getOppositeList + m ()Ljava/util/List; method_29666 getCurrentList + m ()V method_49628 toggleHighContrastOption +c net/minecraft/class_5365 net/minecraft/client/option/GraphicsMode + f Ljava/lang/String; field_25432 translationKey + f Ljava/lang/String; field_63463 name + f Lnet/minecraft/class_5365; field_25427 FAST + f Lnet/minecraft/class_5365; field_25429 FABULOUS + f Lnet/minecraft/class_5365; field_25428 FANCY + f Lnet/minecraft/class_5365; field_63461 CUSTOM + f Lcom/mojang/serialization/Codec; field_63462 CODEC + m ()Ljava/lang/String; method_75305 getTranslationKey + m (Lnet/minecraft/class_310;)V method_75306 apply + p 1 client + m (Lnet/minecraft/class_4667;Lnet/minecraft/class_7172;Ljava/lang/Object;)V method_75307 applyOption + p 3 value + p 2 option + p 1 screen + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V + p 4 translationKey + p 3 name +c com/mojang/blaze3d/textures/TextureFormat com/mojang/blaze3d/textures/TextureFormat + m (Ljava/lang/String;II)V + p 3 pixelSie +c net/minecraft/class_4042 net/minecraft/client/render/entity/FoxEntityRenderer + f Lnet/minecraft/class_2960; field_18029 SLEEPING_SNOW_TEXTURE + f Lnet/minecraft/class_2960; field_18028 SNOW_TEXTURE + f Lnet/minecraft/class_2960; field_18027 SLEEPING_TEXTURE + f Lnet/minecraft/class_2960; field_18026 TEXTURE + m ()Lnet/minecraft/class_10027; method_62445 createRenderState + m (Lnet/minecraft/class_10027;Lnet/minecraft/class_4587;FF)V method_18334 setupTransforms + m (Lnet/minecraft/class_10027;)Lnet/minecraft/class_2960; method_18333 getTexture + m (Lnet/minecraft/class_4019;Lnet/minecraft/class_10027;F)V method_62444 updateRenderState +c net/minecraft/class_4041 net/minecraft/client/render/entity/model/FoxEntityModel + c Represents the model of a {@linkplain FoxEntity}.\n\n

\n\n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n\n \n\n
Model parts of this model
Part NameParentCorresponding Field
{@value EntityModelPartNames#HEAD}Root part{@link #head}
{@value EntityModelPartNames#RIGHT_EAR}{@value EntityModelPartNames#HEAD}
{@value EntityModelPartNames#LEFT_EAR}{@value EntityModelPartNames#HEAD}
{@value EntityModelPartNames#NOSE}{@value EntityModelPartNames#HEAD}
{@value EntityModelPartNames#BODY}Root part{@link #body}
{@value EntityModelPartNames#TAIL}{@value EntityModelPartNames#BODY}{@link #tail}
{@value EntityModelPartNames#RIGHT_HIND_LEG}Root part{@link #rightHindLeg}
{@value EntityModelPartNames#LEFT_HIND_LEG}Root part{@link #leftHindLeg}
{@value EntityModelPartNames#RIGHT_FRONT_LEG}Root part{@link #rightFrontLeg}
{@value EntityModelPartNames#LEFT_FRONT_LEG}Root part{@link #leftFrontLeg}
\n
+ f Lnet/minecraft/class_630; field_18019 body + f Lnet/minecraft/class_630; field_27418 leftFrontLeg + f Lnet/minecraft/class_630; field_27417 rightFrontLeg + f Lnet/minecraft/class_630; field_27416 leftHindLeg + f Lnet/minecraft/class_630; field_27415 rightHindLeg + f F field_32479 LEG_Y_PIVOT + f F field_18025 legPitchModifier + f Lnet/minecraft/class_9953; field_52912 BABY_TRANSFORMER + f F field_32478 HEAD_Y_PIVOT + f Lnet/minecraft/class_630; field_18024 tail + f Lnet/minecraft/class_630; field_18015 head + m (Lnet/minecraft/class_10027;)V method_18332 setAngles + m ()Lnet/minecraft/class_5607; method_31999 getTexturedModelData +c net/minecraft/class_5375 net/minecraft/client/gui/screen/pack/PackScreen + f Lnet/minecraft/class_5375$class_5426; field_25787 directoryWatcher + f Lnet/minecraft/class_2561; field_25465 DROP_INFO + f Lnet/minecraft/class_2960; field_25786 UNKNOWN_PACK + f Ljava/util/Map; field_25789 iconTextures + f Lnet/minecraft/class_2561; field_49543 OPEN_FOLDER + f Lorg/slf4j/Logger; field_25464 LOGGER + f Lnet/minecraft/class_2561; field_49541 AVAILABLE_TITLE + f Lnet/minecraft/class_521; field_25472 availablePackList + f Lnet/minecraft/class_5369; field_25468 organizer + f Lnet/minecraft/class_8132; field_49544 layout + f Lnet/minecraft/class_342; field_62928 searchBox + f J field_25788 refreshTimeout + f Lnet/minecraft/class_2561; field_25466 FOLDER_INFO + f Lnet/minecraft/class_4185; field_25475 doneButton + f Lnet/minecraft/class_2561; field_49542 SELECTED_TITLE + f Lnet/minecraft/class_2561; field_62929 SEARCH_BOX_PLACEHOLDER + f Lnet/minecraft/class_521; field_25473 selectedPackList + f Ljava/nio/file/Path; field_25474 file + m (Ljava/util/Collection;)Ljava/util/stream/Stream; method_52760 streamFileNames + p 0 paths + m (Ljava/nio/file/Path;Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/nio/file/Path;)V method_29675 method_29675 + p 2 src + m (Ljava/util/List;Z)V method_29676 method_29676 + p 2 confirmed + m (Lnet/minecraft/class_3288;)Lnet/minecraft/class_2960; method_30287 getPackIconTexture + p 1 resourcePackProfile + m (Lnet/minecraft/class_4185;)V method_29670 method_29670 + p 1 button + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/nio/file/Path;)V method_29674 method_29674 + p 3 toCopy + m (Lnet/minecraft/class_3283;Ljava/util/function/Consumer;Ljava/nio/file/Path;Lnet/minecraft/class_2561;)V + p 4 title + p 3 file + p 2 applier + p 1 resourcePackManager + m ()V method_29680 refresh + m (Lnet/minecraft/class_3288;Ljava/lang/String;)Lnet/minecraft/class_2960; method_30288 method_30288 + p 2 profileName + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/class_5369$class_5371;)Z method_74710 method_74710 + p 2 pack + m ()V method_30291 closeDirectoryWatcher + m (Lnet/minecraft/class_5369$class_5372;)V method_29678 updatePackLists + p 1 focused + m (Lnet/minecraft/class_4185;)V method_29982 method_29982 + p 1 button + m (Ljava/lang/String;)V method_74709 setSearch + p 1 search + m (Lnet/minecraft/class_5375;Lnet/minecraft/class_364;)V method_57755 method_57755 + p 1 child + m (Ljava/lang/String;Ljava/util/stream/Stream;Lnet/minecraft/class_521;)V method_74711 filter + p 2 packs + p 1 search + p 3 listWidget + m (Lnet/minecraft/class_310;Ljava/util/List;Ljava/nio/file/Path;)V method_29669 copyPacks + p 2 destPath + p 1 srcPaths + p 0 client + m (Lnet/minecraft/class_1060;Lnet/minecraft/class_3288;)Lnet/minecraft/class_2960; method_30289 loadPackIcon + p 1 textureManager + p 2 resourcePackProfile +c net/minecraft/class_5375$class_5426 net/minecraft/client/gui/screen/pack/PackScreen$DirectoryWatcher + f Ljava/nio/file/Path; field_25791 path + f Ljava/nio/file/WatchService; field_25790 watchService + m ()Z method_30292 pollForChange + m (Ljava/nio/file/Path;)V method_30294 watchDirectory + p 1 path + m (Ljava/nio/file/Path;)V + p 1 path + m (Ljava/nio/file/Path;)Lnet/minecraft/class_5375$class_5426; method_30293 create + p 0 path +c net/minecraft/class_5375$1 net/minecraft/client/gui/screen/pack/PackScreen$1 + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; method_52761 openZip + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; method_52762 openDirectory +c net/minecraft/class_4043 net/minecraft/client/render/entity/feature/FoxHeldItemFeatureRenderer + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10027;FF)V method_18335 render +c net/minecraft/class_5379 net/minecraft/util/dynamic/ForwardingDynamicOps + c A dynamic ops that delegates all operations from another one. + f Lcom/mojang/serialization/DynamicOps; field_25503 delegate + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getMapEntries getMapEntries + p 1 input + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; mergeToPrimitive mergeToPrimitive + p 2 value + p 1 prefix + m (Ljava/lang/String;)Ljava/lang/Object; createString createString + p 1 string + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; mergeToMap mergeToMap + p 3 value + p 2 key + p 1 map + m (Ljava/util/stream/Stream;)Ljava/lang/Object; createList createList + p 1 stream + m (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; remove remove + p 2 key + p 1 input + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getBooleanValue getBooleanValue + p 1 input + m (Ljava/nio/ByteBuffer;)Ljava/lang/Object; createByteList createByteList + p 1 buf + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getNumberValue getNumberValue + p 1 input + m (Ljava/util/Map;)Ljava/lang/Object; createMap createMap + p 1 map + m (D)Ljava/lang/Object; createDouble createDouble + p 1 d + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Ljava/lang/Object; convertTo convertTo + p 2 input + p 1 outputOps + m (Ljava/lang/Number;)Ljava/lang/Object; createNumeric createNumeric + p 1 number + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; mergeToList mergeToList + p 2 value + p 1 list + m (F)Ljava/lang/Object; createFloat createFloat + p 1 f + m (I)Ljava/lang/Object; createInt createInt + p 1 i + m (Ljava/util/stream/Stream;)Ljava/lang/Object; createMap createMap + p 1 map + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getMap getMap + p 1 input + m (Z)Ljava/lang/Object; createBoolean createBoolean + p 1 bl + m (Ljava/lang/Object;Ljava/util/Map;)Lcom/mojang/serialization/DataResult; mergeToMap mergeToMap + p 2 values + p 1 map + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getMapValues getMapValues + p 1 input + m (S)Ljava/lang/Object; createShort createShort + p 1 s + m (Ljava/lang/Object;Ljava/util/List;)Lcom/mojang/serialization/DataResult; mergeToList mergeToList + p 1 list + p 2 values + m (Ljava/lang/Object;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; mergeToMap mergeToMap + p 2 values + p 1 map + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getStringValue getStringValue + p 1 input + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getByteBuffer getByteBuffer + p 1 input + m (B)Ljava/lang/Object; createByte createByte + p 1 b + m (Lcom/mojang/serialization/DynamicOps;)V + p 1 delegate + m (J)Ljava/lang/Object; createLong createLong + p 1 l + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getList getList + p 1 input + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getIntStream getIntStream + p 1 input + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getStream getStream + p 1 input + m (Ljava/util/stream/LongStream;)Ljava/lang/Object; createLongList createLongList + p 1 stream + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; getLongStream getLongStream + p 1 input + m (Ljava/util/stream/IntStream;)Ljava/lang/Object; createIntList createIntList + p 1 stream +c net/minecraft/class_5379$class_10921 net/minecraft/util/dynamic/ForwardingDynamicOps$ForwardingRecordBuilder + f Lcom/mojang/serialization/RecordBuilder; field_58074 delegate + m (Lnet/minecraft/class_5379;Lcom/mojang/serialization/RecordBuilder;)V + p 2 delegate + m (Lcom/mojang/serialization/DataResult;Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/RecordBuilder; add add + p 1 key + p 2 value + m (Ljava/lang/Object;Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/RecordBuilder; add add + p 2 value + p 1 key + m (Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/RecordBuilder; withErrorsFrom withErrorsFrom + p 1 result + m (Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/DataResult; build build + p 1 prefix + m (Ljava/lang/String;Ljava/lang/Object;)Lcom/mojang/serialization/RecordBuilder; add add + p 2 value + p 1 key + m (Ljava/util/function/UnaryOperator;)Lcom/mojang/serialization/RecordBuilder; mapError mapError + p 1 onError + m (Lcom/mojang/serialization/Lifecycle;)Lcom/mojang/serialization/RecordBuilder; setLifecycle setLifecycle + p 1 lifecycle + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; build build + p 1 prefix + m (Ljava/lang/String;Ljava/lang/Object;Lcom/mojang/serialization/Encoder;)Lcom/mojang/serialization/RecordBuilder; add add + p 1 key + p 2 value + p 3 encoder + m (Ljava/lang/String;Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/RecordBuilder; add add + p 2 value + p 1 key + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/RecordBuilder; add add + p 2 value + p 1 key +c net/minecraft/class_5379$class_10920 net/minecraft/util/dynamic/ForwardingDynamicOps$ForwardingListBuilder + f Lcom/mojang/serialization/ListBuilder; field_58072 delegate + m (Ljava/lang/Object;)Lcom/mojang/serialization/ListBuilder; add add + p 1 value + m (Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/ListBuilder; withErrorsFrom withErrorsFrom + p 1 result + m (Ljava/lang/Object;Lcom/mojang/serialization/Encoder;)Lcom/mojang/serialization/ListBuilder; add add + p 1 value + p 2 encoder + m (Lcom/mojang/serialization/Encoder;Ljava/lang/Object;)V method_68734 method_68734 + p 2 value + m (Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/ListBuilder; add add + p 1 value + m (Ljava/lang/Iterable;Lcom/mojang/serialization/Encoder;)Lcom/mojang/serialization/ListBuilder; addAll addAll + p 1 values + p 2 encoder + m (Lcom/mojang/serialization/DataResult;)Lcom/mojang/serialization/DataResult; build build + p 1 prefix + m (Ljava/util/function/UnaryOperator;)Lcom/mojang/serialization/ListBuilder; mapError mapError + p 1 onError + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; build build + p 1 prefix + m (Lnet/minecraft/class_5379;Lcom/mojang/serialization/ListBuilder;)V + p 2 delegate +c net/minecraft/class_4048 net/minecraft/entity/EntityDimensions + f Z comp_2189 fixed + f F comp_2187 eyeHeight + f F comp_2186 height + f F comp_2185 width + f Lnet/minecraft/class_9066; comp_2188 attachments + m (FF)Lnet/minecraft/class_4048; method_18384 changing + p 0 width + p 1 height + m (F)Lnet/minecraft/class_4048; method_18383 scaled + p 1 ratio + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_238; method_30757 getBoxAt + p 1 pos + m (FF)Lnet/minecraft/class_4048; method_18385 fixed + p 0 width + p 1 height + m (F)Lnet/minecraft/class_4048; method_55685 withEyeHeight + p 1 eyeHeight + m (FFZ)V + p 2 height + p 1 width + p 3 fixed + m (Lnet/minecraft/class_9066$class_9067;)Lnet/minecraft/class_4048; method_55684 withAttachments + p 1 attachments + m (FF)Lnet/minecraft/class_4048; method_19539 scaled + p 2 heightRatio + p 1 widthRatio + m (F)F method_55686 getDefaultEyeHeight + p 0 height + m (DDD)Lnet/minecraft/class_238; method_30231 getBoxAt + p 5 z + p 1 x + p 3 y + m ()F comp_2187 eyeHeight + m ()F comp_2186 height + m ()F comp_2185 width + m ()Z comp_2189 fixed + m ()Lnet/minecraft/class_9066; comp_2188 attachments + m (FFFLnet/minecraft/class_9066;Z)V + p 1 width + p 2 height + p 3 eyeHeight + p 4 attachments + p 5 fixed +c net/minecraft/class_1661 net/minecraft/entity/player/PlayerInventory + f Lnet/minecraft/class_10630; field_56552 equipment + f I field_7542 changeCount + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_56551 EQUIPMENT_SLOTS + f I field_30640 NOT_FOUND + c The slot index ({@value}) used to indicate no result\n(item not present / no available space) when querying the inventory's contents\nor to indicate no preference when inserting an item into the inventory. + f Lnet/minecraft/class_1657; field_7546 player + f I field_30641 HOTBAR_SIZE + c The number of columns ({@value}) in the inventory.\n\n

The same value dictates the size of the player's hotbar, excluding the offhand slot. + f I field_30637 ITEM_USAGE_COOLDOWN + c The maximum cooldown ({@value} ticks) applied to timed use items such as the Eye of Ender. + f I field_7545 selectedSlot + f I field_60983 SADDLE_SLOT + c Zero-based index of the saddle slot. + f I field_30638 MAIN_SIZE + c The number of slots ({@value}) in the main (non-hotbar) section of the inventory. + f Lnet/minecraft/class_2561; field_63028 NAME + f Lnet/minecraft/class_2371; field_7547 main + f I field_60982 BODY_SLOT + c Zero-based index of the body slot. + f I field_30639 OFF_HAND_SLOT + c Zero-based index of the offhand slot.\n\n

This value is the result of the sum {@code MAIN_SIZE (36) + ARMOR_SIZE (4)}. + m (I)V method_61496 setSelectedSlot + p 1 slot + m (Lnet/minecraft/class_11368$class_11369;)V method_7397 readData + p 1 list + m (Lnet/minecraft/class_1799;)Z method_61495 usableWhenFillingSlot + p 0 stack + m (Lnet/minecraft/class_1799;)I method_7366 addStack + p 1 stack + m ()I method_67532 getSelectedSlot + m (Lnet/minecraft/class_1661;)V method_7377 clone + p 1 other + m ()I method_7368 getHotbarSize + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_1799;)I method_61494 getMatchingSlot + p 2 stack + p 1 item + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_67531 setSelectedStack + p 1 stack + m ()I method_7376 getEmptySlot + m ()I method_7364 getChangeCount + m ()V method_7388 dropAll + m (Lnet/minecraft/class_6862;)Z method_7382 contains + p 1 tag + m (Ljava/util/function/Predicate;ILnet/minecraft/class_1263;)I method_29280 remove + p 3 craftingInventory + p 2 maxCount + p 1 shouldRemove + m (Ljava/util/function/Predicate;)Z method_55753 contains + p 1 predicate + m (ILnet/minecraft/class_1799;)Z method_7367 insertStack + p 1 slot + p 2 stack + m (I)Z method_7380 isValidHotbarIndex + p 0 slot + m (Lnet/minecraft/class_1799;)Z method_7379 contains + p 1 stack + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_10630;)V + p 2 equipment + p 1 player + m (Lnet/minecraft/class_1799;)I method_7395 getSlotWithStack + p 1 stack + m (Lnet/minecraft/class_1799;Z)V method_32338 offer + p 1 stack + p 2 notifiesClient + m (I)V method_7365 swapSlotWithHotbar + p 1 slot + m (Lnet/minecraft/class_11372$class_11373;)V method_7384 writeData + p 1 list + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_7393 canStackAddMore + p 1 existingStack + p 2 stack + m ()V method_7381 updateItems + m (Lnet/minecraft/class_1799;)V method_7398 offerOrDrop + p 1 stack + m (Lnet/minecraft/class_1799;)V method_7378 removeOne + p 1 stack + m (Z)Lnet/minecraft/class_1799; method_37417 dropSelectedItem + p 1 entireStack + m (ILnet/minecraft/class_1799;)I method_7385 addStack + p 1 slot + p 2 stack + m (Lnet/minecraft/class_1799;)I method_7390 getOccupiedSlotWithRoomForStack + p 1 stack + m ()I method_7386 getSwappableHotbarSlot + m (I)Lnet/minecraft/class_9835; method_61497 createSlotSetPacket + p 1 slot + m (Lnet/minecraft/class_1799;)V method_65126 swapStackWithHotbar + p 1 stack + m ()Lnet/minecraft/class_2371; method_67533 getMainStacks + m ()Lnet/minecraft/class_1799; method_7391 getSelectedStack + m (Lnet/minecraft/class_1799;)Z method_7394 insertStack + p 1 stack + m (Lnet/minecraft/class_9875;)V method_7387 populateRecipeFinder + p 1 finder +c net/minecraft/class_2994 net/minecraft/server/dedicated/DedicatedServer + m ()[Ljava/lang/String; method_3858 getPlayerNames + m ()I method_12918 getPort + m ()Ljava/lang/String; method_12916 getPlugins + m ()Ljava/lang/String; method_12929 getHostname + m (Ljava/lang/String;)Ljava/lang/String; method_12934 executeRconCommand + p 1 command + m ()Lnet/minecraft/class_3806; method_16705 getProperties + m ()Ljava/lang/String; method_12930 getMotd + m ()Ljava/lang/String; method_3865 getLevelName +c net/minecraft/class_2995 net/minecraft/scoreboard/ServerScoreboard + f Lnet/minecraft/server/MinecraftServer; field_13428 server + f Z field_63166 dirty + f Ljava/util/Set; field_13427 syncableObjectives + m (Ljava/lang/String;)Lnet/minecraft/class_3222; method_70596 method_70596 + p 1 playerName + m (Lnet/minecraft/class_266;)I method_12936 countDisplaySlots + p 1 objective + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server + m (Lnet/minecraft/class_266;)Ljava/util/List; method_12937 createChangePackets + p 1 objective + m (Lnet/minecraft/class_266;)Ljava/util/List; method_12940 createRemovePackets + p 1 objective + m (Lnet/minecraft/class_268;)V method_70594 refreshWaypointTrackingFor + p 1 team + m (Lnet/minecraft/class_273;)V method_74972 writeTo + p 1 state + m (Lnet/minecraft/class_2995;Lnet/minecraft/class_269$class_10744;)V method_74969 method_74969 + p 1 score + m (Lnet/minecraft/class_2995;Lnet/minecraft/class_268$class_10743;)V method_74968 method_74968 + p 1 team + m (Lnet/minecraft/class_273$class_10745;)V method_74971 read + p 1 packed + m (Ljava/lang/String;)V method_70595 refreshWaypointTrackingFor + p 1 playerName + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_3222;)V method_70593 method_70593 + p 1 player + m (Lnet/minecraft/class_8646;Ljava/lang/String;)V method_74970 method_74970 + p 2 objective + p 1 slot + m ()Lnet/minecraft/class_273$class_10745; method_74973 toPacked + m (Lnet/minecraft/class_266;)V method_12938 stopSyncing + p 1 objective + m (Lnet/minecraft/class_266;)V method_12939 startSyncing + p 1 objective + m ()V method_12941 markDirty + m (Lnet/minecraft/class_2995;Lnet/minecraft/class_266$class_10742;)V method_74967 method_74967 + p 1 objective +c net/minecraft/class_1665 net/minecraft/entity/projectile/PersistentProjectileEntity + f I field_7574 shake + f Lnet/minecraft/class_1665$class_1666; field_7572 pickupType + f I field_7578 life + f F field_55018 DEFAULT_DRAG + f Lnet/minecraft/class_3414; field_7584 sound + f Ljava/util/List; field_7579 piercingKilledEntities + f Lnet/minecraft/class_1799; field_51620 weapon + f S field_57732 DEFAULT_LIFE + f Lnet/minecraft/class_1799; field_46970 stack + f B field_57733 DEFAULT_SHAKE + f Lit/unimi/dsi/fastutil/ints/IntOpenHashSet; field_7590 piercedEntities + f B field_57736 DEFAULT_PIERCE_LEVEL + f I field_30654 CRITICAL_FLAG + f I field_7576 inGroundTime + f Lnet/minecraft/class_2940; field_7589 PIERCE_LEVEL + f Z field_57735 DEFAULT_CRITICAL + f Lnet/minecraft/class_2940; field_54969 IN_GROUND + f Lnet/minecraft/class_2680; field_7586 inBlockState + f Lnet/minecraft/class_2940; field_7573 PROJECTILE_FLAGS + f D field_7571 damage + f Z field_57734 DEFAULT_IN_GROUND + f I field_30655 NO_CLIP_FLAG + m ()F method_7436 getDragInWater + m (F)V method_59955 applyDamageModifier + p 1 damageModifier + m (Lnet/minecraft/class_3414;)V method_7444 setSound + p 1 sound + m (Lnet/minecraft/class_1792;)V method_59953 method_59953 + p 1 item + m (Lnet/minecraft/class_1657;)Z method_34713 tryPickup + p 1 player + m (B)V method_7451 setPierceLevel + p 1 level + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1309;Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V + p 5 shotFrom + p 3 world + p 4 stack + p 1 type + p 2 owner + m (Lnet/minecraft/class_243;)V method_64646 spawnBubbleParticles + p 1 pos + m (F)V method_63669 applyDrag + p 1 drag + m (IZ)V method_7455 setProjectileFlag + p 1 index + p 2 flag + m (Z)V method_65058 setInGround + p 1 inGround + m (D)V method_7438 setDamage + p 1 damage + m (Lnet/minecraft/class_1309;)V method_7450 onHit + p 1 target + m ()Z method_26351 shouldFall + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1282;)V method_59957 knockback + p 1 target + p 2 source + m ()V method_7453 clearPiercingStatus + m (Z)V method_7433 setNoClip + p 1 noClip + m ()Z method_7441 isNoClip + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_3965;Lnet/minecraft/class_1799;)V method_59956 onBlockHitEnchantmentEffects + p 1 world + p 2 blockHitResult + p 3 weaponStack + m ()V method_7446 age + m ()Z method_65059 isInGround + m ()V method_26352 fall + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;)Ljava/util/Collection; method_75208 collectPiercingCollisions + p 2 to + p 1 from + m ()Lnet/minecraft/class_3414; method_7440 getHitSound + m ()Lnet/minecraft/class_1799; method_7445 asItemStack + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;)Lnet/minecraft/class_3966; method_7434 getEntityCollision + p 1 currentPosition + p 2 nextPosition + m ()B method_7447 getPierceLevel + m ()Lnet/minecraft/class_1799; method_54759 getItemStack + c {@return the read-only item stack representing the projectile}\n\n

This is the original stack used to spawn the projectile. {@link #asItemStack}\nreturns a copy of that stack which can be safely changed. Additionally,\n{@link #asItemStack} reflects changes to the entity data, such as custom potion ID. + m (Ljava/util/Collection;)Lnet/minecraft/class_9109; method_75207 hitOrDeflect + p 1 hitResults + m (Lnet/minecraft/class_1799;)V method_57313 setStack + p 1 stack + m (Lnet/minecraft/class_1299;DDDLnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V + p 2 x + p 1 type + p 10 weapon + p 8 world + p 9 stack + p 6 z + p 4 y + m (Lnet/minecraft/class_3965;)V method_63670 applyCollision + p 1 blockHitResult + m ()Lnet/minecraft/class_3414; method_20011 getSound + m ()Z method_7443 isCritical + m (Z)V method_7439 setCritical + p 1 critical + m ()Lnet/minecraft/class_1799; method_57314 getDefaultItemStack +c net/minecraft/class_1665$class_1666 net/minecraft/entity/projectile/PersistentProjectileEntity$PickupPermission + f Lcom/mojang/serialization/Codec; field_56665 CODEC + f Lnet/minecraft/class_1665$class_1666; field_7594 CREATIVE_ONLY + f Lnet/minecraft/class_1665$class_1666; field_7592 DISALLOWED + f Lnet/minecraft/class_1665$class_1666; field_7593 ALLOWED + m (I)Lnet/minecraft/class_1665$class_1666; method_7458 fromOrdinal + p 0 ordinal +c net/minecraft/class_1664 net/minecraft/entity/player/PlayerModelPart + f I field_7561 id + f I field_7560 bitFlag + f Lnet/minecraft/class_2561; field_7567 optionName + f Ljava/lang/String; field_7569 name + f Lcom/mojang/serialization/Codec; field_62532 CODEC + f Lnet/minecraft/class_1664; field_7570 RIGHT_SLEEVE + f Lnet/minecraft/class_1664; field_7568 LEFT_SLEEVE + f Lnet/minecraft/class_1664; field_7564 JACKET + f Lnet/minecraft/class_1664; field_7565 RIGHT_PANTS_LEG + f Lnet/minecraft/class_1664; field_7566 LEFT_PANTS_LEG + f Lnet/minecraft/class_1664; field_7563 HAT + f Lnet/minecraft/class_1664; field_7559 CAPE + m ()Ljava/lang/String; method_7429 getName + m ()I method_35206 getId + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()I method_7430 getBitFlag + m ()Lnet/minecraft/class_2561; method_7428 getOptionName +c net/minecraft/class_2991 net/minecraft/server/function/CommandFunctionManager + c The command function manager implements execution of functions, like that from\nthe {@code function} command. + f Lnet/minecraft/class_2960; field_13412 LOAD_TAG_ID + f Lnet/minecraft/class_2960; field_13417 TICK_TAG_ID + f Lnet/minecraft/class_5349; field_25333 loader + c The source of functions for this command function manager. + f Ljava/util/List; field_13418 tickFunctions + c A list of {@code minecraft:tick} tag functions to run on every tick. Set up on\nload, this is more efficient than polling the tag from the {@link #loader}\nevery tick. + f Lnet/minecraft/server/MinecraftServer; field_13419 server + f Z field_13422 justLoaded + c Whether this command function manager has just {@linkplain #load(FunctionLoader)\nloaded} and should run all functions in the {@code minecraft:load} function tag. + f Lorg/slf4j/Logger; field_47181 LOGGER + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_5349;)V + p 2 loader + p 1 server + m (Ljava/util/Collection;Lnet/minecraft/class_2960;)V method_29460 executeAll + p 1 functions + p 2 label + m ()V method_18699 tick + m (Lnet/minecraft/class_5349;)V method_29461 setFunctions + c Sets the functions that this command function manager will use in executions. + p 1 loader + c the new loader functions will be taken from + m (Lnet/minecraft/class_2960;)Ljava/util/Optional; method_12905 getFunction + p 1 id + m (Lnet/minecraft/class_5349;)V method_29773 load + p 1 loader + m ()Lnet/minecraft/class_2168; method_12899 getScheduledCommandSource + c {@return the command source to execute scheduled functions} Scheduled functions\nare those from the {@code /schedule} command and those from the {@code\nminecraft:tick} tag.\n\n

This command source {@linkplain ServerCommandSource#hasPermissionLevel(int)\nhas permission level 2} and is {@linkplain ServerCommandSource#withSilent()\nsilent} compared to the server's {@linkplain MinecraftServer#getCommandSource()\ncommand source}. + m (Lnet/minecraft/class_8868;Lnet/minecraft/class_2168;Lnet/minecraft/class_8854;)V method_54252 method_54252 + p 2 context + m ()Lcom/mojang/brigadier/CommandDispatcher; method_12900 getDispatcher + m (Lnet/minecraft/class_2960;)Ljava/util/List; method_29462 getTag + p 1 id + m (Lnet/minecraft/class_2158;Lnet/minecraft/class_2168;)V method_12904 execute + c Executes a function. + p 1 function + c the function + p 2 source + m ()Ljava/lang/Iterable; method_29463 getAllFunctions + m ()Ljava/lang/Iterable; method_29464 getFunctionTags +c net/minecraft/class_1662 net/minecraft/recipe/RecipeMatcher + c Matching class that matches a recipe to its required resources.\nThis specifically does not check patterns (See {@link ShapedRecipe} for that). + f Lit/unimi/dsi/fastutil/objects/Reference2IntOpenHashMap; field_52504 available + m (Ljava/lang/Object;I)Z method_61503 hasAtLeast + p 2 minimum + p 1 input + m (Ljava/util/List;)I method_65796 getMaximumCrafts + p 1 ingredients + m (Ljava/util/List;ILnet/minecraft/class_1662$class_9874;)I method_61504 countCrafts + p 3 itemCallback + p 1 ingredients + p 2 max + m ()V method_7409 clear + m (Ljava/lang/Iterable;Ljava/lang/Object;)Z method_65795 anyAccept + p 1 item + p 0 ingredients + m (Ljava/lang/Object;I)V method_61501 add + p 1 input + p 2 count + m (Ljava/util/List;ILnet/minecraft/class_1662$class_9874;)Z method_61502 match + p 2 quantity + p 3 itemCallback + p 1 ingredients + m (Ljava/lang/Object;I)V method_7411 consume + c Consumes a resource from the pool of available items. + p 2 count + c the number of times that item must be consumed + p 1 input + m (Ljava/lang/Iterable;)Ljava/util/List; method_65794 createItemRequirementList + p 1 ingredients + m (Ljava/lang/Object;I)V method_7401 addInput + c Adds an input to be used for recipe matching. + p 1 input + p 2 count + c the item's count +c net/minecraft/class_1662$class_9874 net/minecraft/recipe/RecipeMatcher$ItemCallback + m (Ljava/lang/Object;)V accept accept + p 1 item +c net/minecraft/class_1662$class_1663 net/minecraft/recipe/RecipeMatcher$Matcher + f Ljava/util/BitSet; field_7558 bits + f Ljava/util/List; field_7552 ingredients + f I field_7556 totalIngredients + f Lit/unimi/dsi/fastutil/ints/IntList; field_7557 ingredientItemLookup + f Ljava/util/List; field_7551 requiredItems + f I field_7553 totalRequiredItems + m ()I method_61527 getItemMatchIndexCount + m (I)I method_61531 getVisitedItemIndex + p 1 index + m ()I method_61515 getVisitedItemIndexOffset + m ()I method_61525 getItemMatchIndexOffset + m ()I method_61513 getVisitedIngredientIndexCount + m (Lnet/minecraft/class_1662;Ljava/util/List;)V + p 2 ingredients + m (II)I method_61512 getMatchIndex + p 1 itemIndex + p 2 ingredientIndex + m (II)Z method_7418 matches + p 1 itemIndex + p 2 ingredientIndex + m ()I method_61519 getRequirementIndexOffset + m ()I method_61529 getMissingIndexOffset + m ()I method_61517 getVisitedItemIndexCount + m (I)I method_7419 getRequirementIndex + p 1 itemId + m ()V method_61532 clearRequirements + m ()I method_61530 getMissingIndexCount + m (I)Z method_61506 isItem + p 0 index + m (II)V method_61507 setMatch + p 2 ingredientIndex + p 1 itemIndex + m (I)Z method_7426 isRequirementUnfulfilled + p 1 index + m (I)Lit/unimi/dsi/fastutil/ints/IntList; method_61509 tryFindIngredientItemLookup + p 1 min + m (I)Z method_7416 getRequirement + p 1 itemId + m (I)V method_61520 markIngredientVisited + p 1 index + m (II)I method_61521 getMissingIndex + p 2 ingredientIndex + p 1 itemIndex + m (I)Lit/unimi/dsi/fastutil/ints/IntList; method_61511 findIngredientItemLookup + p 1 itemIndex + m ()I method_61522 getRequirementIndexCount + m (I)V method_61528 markItemVisited + p 1 index + m ()I method_61510 getVisitedIngredientIndexOffset + m (I)I method_61526 getVisitedIngredientIndex + p 1 index + m (ILnet/minecraft/class_1662$class_9874;)I method_7427 countCrafts + p 2 itemCallback + p 1 max + m (II)Z method_61514 isMissing + p 1 itemIndex + p 2 ingredientIndex + m (II)V method_61524 clear + p 2 offset + p 1 start + m ()V method_61533 clearVisited + m (II)V method_61518 markNotMissing + p 2 ingredientIndex + p 1 itemIndex + m (I)V method_7421 unfulfillRequirement + p 1 itemId + m ()V method_61505 initItemMatch + m (ILnet/minecraft/class_1662$class_9874;)Z method_7417 match + p 2 itemCallback + p 1 quantity + m (I)Z method_61523 hasVisitedIngredient + p 1 index + m (II)V method_61516 markMissing + p 2 ingredientIndex + p 1 itemIndex +c net/minecraft/class_1662$class_10528 net/minecraft/recipe/RecipeMatcher$RawIngredient + m (Ljava/lang/Object;)Z acceptsItem acceptsItem + p 1 entry +c net/minecraft/class_1657 net/minecraft/entity/player/PlayerEntity + f Lnet/minecraft/class_1297; field_49990 explodedBy + f I field_30647 ENDER_SLOT_OFFSET + f Lnet/minecraft/class_1703; field_7512 currentScreenHandler + f Lnet/minecraft/class_1536; field_7513 fishHook + f I field_7487 sleepTimer + f I field_7520 experienceLevel + f Z field_49991 ignoreFallDamageFromCurrentExplosion + f I field_49734 HELD_ITEM_SLOT_OFFSET + f I field_7504 experiencePickUpDelay + f Z field_7490 isSubmergedInWater + f Lnet/minecraft/class_2940; field_62530 LEFT_SHOULDER_PARROT_VARIANT_ID + f F field_41765 damageTiltYaw + f Lnet/minecraft/class_1661; field_7514 inventory + f Lnet/minecraft/class_1656; field_7503 abilities + f Lnet/minecraft/class_1796; field_7484 itemCooldownManager + f Lnet/minecraft/class_1730; field_7486 enderChestInventory + f Lnet/minecraft/class_2940; field_62531 RIGHT_SHOULDER_PARROT_VARIANT_ID + f Ljava/util/Optional; field_39445 lastDeathPos + f Lcom/mojang/authlib/GameProfile; field_7507 gameProfile + f Lnet/minecraft/class_2940; field_7491 ABSORPTION_AMOUNT + f I field_52223 currentExplosionResetGraceTime + f Lnet/minecraft/class_243; field_49989 currentExplosionImpactPos + f I field_7495 totalExperience + f Lnet/minecraft/class_1702; field_7493 hungerManager + f I field_30644 MAX_HEALTH + f F field_47820 ENTITY_INTERACTION_RANGE + f Lnet/minecraft/class_1799; field_7525 selectedItem + f F field_7509 baseFlySpeed + f I field_7494 enchantingTableSeed + f I field_30645 SLEEP_DURATION + f I field_49735 CRAFTING_SLOT_OFFSET + f I field_7508 lastPlayedLevelUpSoundTime + f Z field_7523 reducedDebugInfo + f F field_47819 BLOCK_INTERACTION_RANGE + f F field_7510 experienceProgress + f Lnet/minecraft/class_2940; field_7511 SCORE + f I field_30646 WAKE_UP_DURATION + f I field_7489 abilityResyncCountdown + f Lnet/minecraft/class_1723; field_7498 playerScreenHandler + m ()Z method_66324 shouldSkipBlockDrops + m ()Z method_68878 isCreative + m ()Ljava/util/Optional; method_74137 getRightShoulderParrotVariant + m (Ljava/util/List;)V method_7335 unlockRecipes + p 1 recipes + m (Lnet/minecraft/class_3445;)V method_7266 resetStat + p 1 stat + m ()Z method_45015 shouldCloseHandledScreenOnRespawn + m ()Z method_21825 clipAtLedge + m (Lnet/minecraft/class_1453$class_7989;)Ljava/util/OptionalInt; method_74130 method_74130 + p 0 variant + m (Lnet/minecraft/class_1297;D)Z method_56094 canInteractWithEntity + c {@return whether the player can interact with {@code entity}}\n\n

This returns {@code false} for {@linkplain Entity#isRemoved removed} entities. + p 2 additionalRange + c the player's additional interaction range added to {@linkplain\n#getEntityInteractionRange the default range} + p 1 entity + m ()I method_7297 getSleepTimer + m ()Z method_7338 isCreativeLevelTwoOp + m (F)F method_75194 getHandEquippingProgress + p 1 baseTime + m ()Z method_7302 hasReducedDebugInfo + m (Lnet/minecraft/class_1297;)Z method_75195 cannotAttack + p 1 target + m (Lnet/minecraft/class_3445;I)V method_7342 increaseStat + p 1 stat + p 2 amount + m ()Z method_61498 shouldRotateWithMinecart + m (Lnet/minecraft/class_11372;Lnet/minecraft/class_4208;)V method_67360 method_67360 + p 1 pos + m (Lnet/minecraft/class_1799;I)Z method_75202 isBelowMinimumAttackCharge + p 1 stack + p 2 baseTime + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1934;)Z method_21701 isBlockBreakingRestricted + p 1 world + p 3 gameMode + p 2 pos + m ()Ljava/util/Optional; method_74136 getLeftShoulderParrotVariant + m ()V method_7330 updateTurtleHelmet + m (F)F method_7261 getAttackCooldownProgress + p 1 baseTime + m ()Z method_64271 canDropItems + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1799;Lnet/minecraft/class_1282;Z)V method_75199 onTargetDamaged + p 2 stack + p 1 target + p 4 runEnchantmentEffects + p 3 damageSource + m (Lnet/minecraft/class_1297;)V method_7341 collideWithEntity + p 1 entity + m (Ljava/util/OptionalInt;)Ljava/util/Optional; method_74132 mapParrotVariantIfPresent + p 0 variantIndex + m (Lnet/minecraft/class_2338;)Z method_7326 doesNotSuffocate + p 1 pos + m ()Lnet/minecraft/class_4050; method_66325 getExpectedPose + m ()F method_76459 getAttackCooldownDamageModifier + m (Ljava/util/Optional;)V method_74133 setLeftShoulderParrotVariant + p 1 variant + m (Lnet/minecraft/class_2338;)Lcom/mojang/datafixers/util/Either; method_7269 trySleep + c Tries to start sleeping on a block.\n\n@return an {@link com.mojang.datafixers.util.Either.Right Either.Right}\nif successful, otherwise an {@link com.mojang.datafixers.util.Either.Left\nEither.Left} containing the failure reason + p 1 pos + c the position of the bed block + m ()Z method_76458 canSprintOrFly + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1268;)V method_7315 useBook + c Called when the player uses (defaults to right click) a writable or written\nbook item.\n\n

This can be called either on the client or the server player. Check {@code\nbook} for whether this is a written or a writable book.\n\n@implNote The writing of a writable book in vanilla is totally controlled by\nthe client; the server cannot make the client open a book edit screen by\nmaking a server player use a writable book. Only when the client finishes\nwriting a book it will send a {@linkplain net.minecraft.network.packet.c2s.play.BookUpdateC2SPacket book update C2S packet}.\n\n

Meanwhile, the reading of a written book is totally controlled and initiated\nby the server. + p 1 book + c the book + p 2 hand + c the hand holding the book + m ()V method_7355 sendAbilitiesUpdate + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_1799;)Z method_7343 canPlaceOn + p 3 stack + p 1 pos + p 2 facing + m (Lnet/minecraft/class_5250;)Lnet/minecraft/class_5250; method_7299 addTellClickEvent + p 1 component + m ()Z method_7294 canModifyBlocks + m (Lnet/minecraft/class_1297;)V method_7304 addEnchantedHitParticles + p 1 target + m (Lnet/minecraft/class_2960;)V method_7281 incrementStat + p 1 stat + m (Lnet/minecraft/class_2625;Z)V method_7311 openEditSignScreen + p 1 sign + p 2 front + m ()F method_7279 getAttackCooldownProgressPerTick + m (F)Z method_30263 isStandingOnSurface + p 1 stepHeight + m ()V method_74082 handleShoulderEntities + m (I)V method_7316 addExperienceLevels + p 1 levels + m (I)V method_7320 setScore + p 1 score + m (Lnet/minecraft/class_8786;Ljava/util/List;)V method_51283 onRecipeCrafted + p 2 ingredients + p 1 recipe + m (Lnet/minecraft/class_1297;)Z method_75197 isCriticalHit + p 1 target + m (Lnet/minecraft/class_238;D)Z method_76729 canAttackEntityIn + c {@return whether the player can attack entity whose bounding box\nis {@code box}} + p 1 box + p 2 additionalRange + m (Lnet/minecraft/class_1799;Z)Lnet/minecraft/class_1542; method_7328 dropItem + p 1 stack + p 2 retainOwnership + m ()Lnet/minecraft/class_1702; method_7344 getHungerManager + m ()Z method_76730 isInCurrentExplosionResetGraceTime + m ()Z method_7340 isMainPlayer + m (Lnet/minecraft/class_1937;Lcom/mojang/authlib/GameProfile;)V + p 2 profile + p 1 world + m ()Z method_7295 updateWaterSubmersionState + m (Lnet/minecraft/class_2487;)Ljava/util/Optional; method_74135 readParrotVariant + p 0 nbt + m ()Ljava/util/Optional; method_42272 getSculkShriekerWarningManager + m (Ljava/util/Collection;)I method_7254 unlockRecipes + p 1 recipes + m ()V method_60983 tryClearCurrentExplosion + m (Lnet/minecraft/class_6880;)V method_71753 openDialog + p 1 dialog + m (Z)Z method_7332 canConsume + p 1 ignoreHunger + m ()I method_7349 getNextLevelExperience + m ()Lnet/minecraft/class_1730; method_7274 getEnderChestInventory + m (Lnet/minecraft/class_1799;I)V method_7286 applyEnchantmentCosts + p 1 enchantedItem + p 2 experienceLevels + m ()I method_7272 getScore + m (Lnet/minecraft/class_1697;)V method_7257 openCommandBlockMinecartScreen + p 1 minecart + m (IFLnet/minecraft/class_1799;)V method_40126 useRiptide + p 1 riptideTicks + p 3 stack + p 2 riptideAttackDamage + m (DDD)Z method_59818 isSpaceAroundPlayerEmpty + p 1 offsetX + p 5 stepHeight + p 3 offsetZ + m ()V method_64400 tickHunger + m ()Z method_74025 hasBlindnessEffect + m (Lnet/minecraft/class_1297;ZZZZF)V method_75200 addAttackParticlesAndSounds + p 2 criticalHit + p 1 target + p 6 enchantDamage + p 5 pierce + p 4 cooldownPassed + p 3 sweeping + m (Lnet/minecraft/class_1792;)Z method_64179 isEquipped + p 1 item + m (Lnet/minecraft/class_1297;)Z method_75196 tryDeflect + p 1 entity + m (Z)V method_7268 setReducedDebugInfo + p 1 reducedDebugInfo + m ()Z method_7276 canResetTimeBySleeping + c {@return whether this player has been sleeping long enough to count towards\nresetting the time of day and weather of the server} + m ()V method_58396 clearCurrentExplosion + m ()Z method_31550 isUsingSpyglass + m (Lnet/minecraft/class_1297;)V method_7277 addCritParticles + p 1 target + m (Lnet/minecraft/class_1496;Lnet/minecraft/class_1263;)V method_7291 openHorseInventory + p 1 horse + p 2 inventory + m ()Lnet/minecraft/class_5132$class_5133; method_26956 createPlayerAttributes + m (ZZZ)Z method_75201 canUseSweepAttack + p 3 knockback + p 2 criticalHit + p 1 cooldownPassed + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;Lnet/minecraft/class_5536;)V method_33592 onPickupSlotClick + c Called when a player performs a {@link net.minecraft.screen.slot.SlotActionType#PICKUP\npickup slot action} in a screen handler.\n\n@implNote This is used by the client player to trigger bundle tutorials. + p 3 clickType + c the click type (mouse button used) + p 2 slotStack + c the item stack in the clicked slot + p 1 cursorStack + c the item stack on the player's cursor + m ()V method_7318 updatePose + m (Lnet/minecraft/class_1297;FLnet/minecraft/class_1282;F)V method_7263 doSweepingAttack + p 1 target + p 4 cooldownProgress + p 3 damageSource + p 2 damage + m (Lnet/minecraft/class_2680;)Z method_7305 canHarvest + c Determines whether the player is able to harvest drops from the specified block state.\nIf a block requires a special tool, it will check\nwhether the held item is effective for that block, otherwise\nit returns {@code true}.\n\n@see net.minecraft.item.ItemStack#isSuitableFor(BlockState) + p 1 state + m ()Lnet/minecraft/class_12096; method_75004 getPermissions + m (ZZ)V method_7358 wakeUp + c Wakes this player up. + p 2 updateSleepingPlayers + c if {@code true} and called on the logical server, sends sleeping status updates to all players + p 1 skipSleepTimer + c if {@code true}, the {@linkplain #sleepTimer sleep timer} will be set straight to 0 instead of 100 + m ()Lcom/mojang/authlib/GameProfile; method_7334 getGameProfile + m (I)V method_7285 addScore + p 1 score + m (Lnet/minecraft/class_12116;Lnet/minecraft/class_1263;)V method_76575 openNautilusInventory + p 1 nautilus + p 2 inventory + m ()V method_7346 closeHandledScreen + c Closes the currently open {@linkplain net.minecraft.client.gui.screen.ingame.HandledScreen\nhandled screen}.\n\n

This method can be called on either logical side, and it will synchronize\nthe closing automatically to the other. + m ()V method_7293 vanishCursedItems + m (Lnet/minecraft/class_2633;)V method_7303 openStructureBlockScreen + p 1 structureBlock + m ()V method_7350 resetTicksSince + m (Lnet/minecraft/class_238;D)Z method_56092 canInteractWithEntityIn + c {@return whether the player can interact with entity whose bounding box\nis {@code box}} + p 1 box + p 2 additionalRange + c the player's additional interaction range added to {@linkplain\n#getEntityInteractionRange the default range} + m (Ljava/util/Collection;)I method_7333 lockRecipes + p 1 recipes + m ()Lnet/minecraft/class_11560; method_72498 getPlayerConfigEntry + m (Lnet/minecraft/class_3414;)V method_76457 playAttackSound + p 1 sound + m (Lnet/minecraft/class_2680;)F method_7351 getBlockBreakingSpeed + p 1 block + m (Lnet/minecraft/class_10638;)V method_66696 openTestInstanceBlockScreen + p 1 testInstanceBlock + m ()Ljava/lang/String; method_68877 asString + m ()D method_55755 getEntityInteractionRange + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1269; method_7287 interact + p 1 entity + p 2 hand + m (Z)V method_60984 setIgnoreFallDamageFromCurrentExplosion + p 1 ignoreFallDamageFromCurrentExplosion + m (Lnet/minecraft/class_2960;I)V method_7339 increaseStat + p 1 stat + p 2 amount + m ()I method_7278 getEnchantingTableSeed + m (Lnet/minecraft/class_1799;)V method_61499 dropCreativeStack + p 1 stack + m (Lnet/minecraft/class_1799;)Z method_7270 giveItemStack + p 1 stack + m ()Z method_33793 shouldFilterText + m ()Lnet/minecraft/class_1934; method_68876 getGameMode + m (F)V method_7322 addExhaustion + p 1 exhaustion + m ()V method_7262 dropShoulderEntities + m (Lnet/minecraft/class_2338;D)Z method_56093 canInteractWithBlockAt + c {@return whether the player can interact with block at {@code pos}} + p 1 pos + p 2 additionalRange + c the player's additional interaction range added to {@linkplain\n#getBlockInteractionRange the default range} + m (I)V method_76731 setCurrentExplosionResetGraceTime + p 1 currentExplosionResetGraceTime + m (Ljava/util/Optional;)Ljava/util/OptionalInt; method_74131 mapParrotVariant + p 0 variant + m (Lnet/minecraft/class_1297;)V method_7324 attack + p 1 target + m (Lnet/minecraft/class_10637;)V method_66695 openTestBlockScreen + p 1 testBlock + m ()D method_55754 getBlockInteractionRange + m (Lnet/minecraft/class_1657;)Z method_7256 shouldDamagePlayer + p 1 player + m (Ljava/util/Optional;)V method_74134 setRightShoulderParrotVariant + p 1 variant + m (I)V method_7255 addExperience + p 1 experience + m ()Z method_21823 shouldCancelInteraction + m (Lnet/minecraft/class_1297;FLnet/minecraft/class_1282;)F method_59903 getDamageAgainst + p 3 damageSource + p 2 baseDamage + p 1 target + m ()Lnet/minecraft/class_1796; method_7265 createCooldownManager + m (Ljava/lang/String;Lnet/minecraft/class_2583;)Lnet/minecraft/class_2583; method_7321 method_7321 + p 2 style + m ()Z method_61165 shouldIgnoreFallDamageFromCurrentExplosion + m (Lnet/minecraft/class_2561;Z)V method_7353 sendMessage + c Adds a message to this player's HUD.\n\n

If it's called on {@link net.minecraft.server.network.ServerPlayerEntity\nServerPlayerEntity}, it sends a message to the client corresponding to\nthis player so that the client can add a message to their HUD. If it's\ncalled on {@link net.minecraft.client.network.ClientPlayerEntity\nClientPlayerEntity}, it just adds a message to their HUD.\n\n@see net.minecraft.server.network.ServerPlayerEntity#sendMessage(Text, boolean)\n@see net.minecraft.client.network.ClientPlayerEntity#sendMessage(Text, boolean)\n@see net.minecraft.client.gui.hud.ChatHud#addMessage(Text)\n@see net.minecraft.client.gui.hud.InGameHud#setOverlayMessage + p 1 message + c the message to add + p 2 overlay + m (Lnet/minecraft/class_2593;)V method_7323 openCommandBlockScreen + p 1 commandBlock + m (Lnet/minecraft/class_3908;)Ljava/util/OptionalInt; method_17355 openHandledScreen + p 1 factory + m ()Z method_23668 checkGliding + m (Lnet/minecraft/class_3445;)V method_7259 incrementStat + p 1 stat + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1282; method_75204 getDamageSource + p 1 stack + m (Ljava/util/Optional;)V method_43120 setLastDeathPos + p 1 lastDeathPos + m (ILnet/minecraft/class_1916;IIZZ)V method_17354 sendTradeOffers + p 1 syncId + p 4 experience + p 5 leveled + p 2 offers + p 3 levelProgress + p 6 refreshable + m ()Z method_21824 shouldDismount + m ()Lnet/minecraft/class_1661; method_31548 getInventory + m (Lnet/minecraft/class_4050;)Z method_52558 canChangeIntoPose + p 1 pose + m ()V method_75203 resetTicksSinceLastAttack + m ()V method_23669 startGliding + m ()Ljava/util/Optional; method_43122 getLastDeathPos + m ()Lnet/minecraft/class_1796; method_7357 getItemCooldownManager + m ()Lnet/minecraft/class_1656; method_31549 getAbilities + m ()V method_14247 onHandledScreenClosed + c Runs closing tasks for the current screen handler and\nsets it to the {@link #playerScreenHandler}. + m (Lnet/minecraft/class_1297;F)V method_75198 handleAttackDamage + p 2 healthBeforeAttack + p 1 target + m ()Z method_7317 canFoodHeal + m (Lnet/minecraft/class_3751;)V method_16354 openJigsawScreen + p 1 jigsaw +c net/minecraft/class_1657$class_1658 net/minecraft/entity/player/PlayerEntity$SleepFailureReason + c A reason why a player cannot start sleeping. + f Lnet/minecraft/class_2561; comp_5144 message + f Lnet/minecraft/class_1657$class_1658; field_18592 OBSTRUCTED + f Lnet/minecraft/class_1657$class_1658; field_7532 NOT_SAFE + f Lnet/minecraft/class_1657$class_1658; field_7531 OTHER + f Lnet/minecraft/class_1657$class_1658; field_7530 TOO_FAR_AWAY + m ()Lnet/minecraft/class_2561; comp_5144 message + c Returns the action bar message that is sent to the player\nwhen sleeping fails with this reason.\n\n@return the message, or null if none is sent for this reason + m (Lnet/minecraft/class_2561;)V + p 1 message +c net/minecraft/class_1656 net/minecraft/entity/player/PlayerAbilities + f Z field_57720 DEFAULT_ALLOW_MODIFY_WORLD + f F field_7481 flySpeed + f F field_7482 walkSpeed + f Z field_57718 DEFAULT_ALLOW_FLYING + f Z field_57719 DEFAULT_CREATIVE_MODE + f Z field_57716 DEFAULT_INVULNERABLE + f Z field_7480 invulnerable + f Z field_57717 DEFAULT_FLYING + f Z field_7476 allowModifyWorld + f Z field_7477 creativeMode + f Z field_7478 allowFlying + f Z field_7479 flying + f F field_57721 DEFAULT_FLY_SPEED + f F field_57722 DEFAULT_WALK_SPEED + m ()Lnet/minecraft/class_1656$class_11347; method_71387 pack + m ()F method_7253 getWalkSpeed + m (Lnet/minecraft/class_1656$class_11347;)V method_71386 unpack + p 1 packed + m ()F method_7252 getFlySpeed + m (F)V method_7248 setFlySpeed + p 1 flySpeed + m (F)V method_7250 setWalkSpeed + p 1 walkSpeed +c net/minecraft/class_1656$class_11347 net/minecraft/entity/player/PlayerAbilities$Packed + f Lcom/mojang/serialization/Codec; field_60363 CODEC + f Z comp_4223 invulnerable + f Z comp_4224 flying + f Z comp_4225 mayFly + f Z comp_4226 instabuild + f Z comp_4227 mayBuild + f F comp_4228 flyingSpeed + f F comp_4229 walkingSpeed + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_71388 method_71388 + p 0 instance + m ()Z comp_4223 invulnerable + m ()Z comp_4224 flying + m ()Z comp_4225 mayFly + m ()Z comp_4226 instabuild + m ()Z comp_4227 mayBuild + m ()F comp_4228 flyingSpeed + m ()F comp_4229 walkingSpeed + m (ZZZZZFF)V + p 1 invulnerable + p 2 flying + p 3 mayFly + p 4 instabuild + p 5 mayBuild + p 6 flyingSpeed + p 7 walkingSpeed +c net/minecraft/class_1655 net/minecraft/entity/Npc +c net/minecraft/class_2987 net/minecraft/network/OffThreadException + c An exception thrown on netty's event loop to quit handling of one packet,\nusually as it is scheduled to be handled on the game engine thread.\n\n

This is a {@linkplain #INSTANCE singleton}. It ignores stack traces\nin order to be efficient.\n\n@see NetworkThreadUtils\n@see ClientConnection#channelRead0 + f Lnet/minecraft/class_2987; field_13400 INSTANCE + c The singleton instance, to reduce object allocations. +c net/minecraft/class_2989 net/minecraft/server/ServerAdvancementLoader + f Lnet/minecraft/class_163; field_46076 manager + f Lnet/minecraft/class_7225$class_7874; field_48787 registries + f Ljava/util/Map; field_13404 advancements + f Lorg/slf4j/Logger; field_13406 LOGGER + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 registries + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_161;)V method_54921 validate + p 1 id + p 2 advancement + m (Ljava/util/Map;Lnet/minecraft/class_3300;Lnet/minecraft/class_3695;)V method_20724 apply + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_8779; method_12896 get + p 1 id + m ()Lnet/minecraft/class_163; method_53646 getManager + m ()Ljava/util/Collection; method_12893 getAdvancements + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_2960;Lnet/minecraft/class_161;)V method_20723 method_20723 + p 2 id + p 3 advancement +c net/minecraft/class_1659 net/minecraft/network/message/ChatVisibility + f Lnet/minecraft/class_2561; field_64375 text + f Ljava/util/function/IntFunction; field_7534 BY_ID + f I field_7535 id + f Lcom/mojang/serialization/Codec; field_64374 CODEC + f Lnet/minecraft/class_1659; field_7536 HIDDEN + f Lnet/minecraft/class_1659; field_7538 FULL + f Lnet/minecraft/class_1659; field_7539 SYSTEM + m ()Lnet/minecraft/class_2561; method_76454 getText + m (Ljava/lang/String;IILjava/lang/String;)V + p 4 translationKey + p 3 id + m (Lnet/minecraft/class_1659;)Ljava/lang/Integer; method_76455 method_76455 + p 0 visibility +c net/minecraft/class_1672 net/minecraft/entity/EyeOfEnderEntity + f Lnet/minecraft/class_2940; field_17080 ITEM + f Lnet/minecraft/class_243; field_60557 targetPos + f I field_7620 lifespan + f Z field_7621 dropsItem + m (Lnet/minecraft/class_1937;DDD)V + p 6 z + p 4 y + p 1 world + p 2 x + m (Lnet/minecraft/class_243;)V method_7478 initTargetPos + c Sets where the eye will fly towards.\nIf close enough, it will fly directly towards it, otherwise, it will fly upwards, in the direction of the BlockPos. + p 1 pos + m ()Lnet/minecraft/class_1799; method_56684 getItem + m (Lnet/minecraft/class_1799;)V method_16933 setItem + p 1 stack + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;)V method_71622 addParticles + p 1 pos + p 2 velocity + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_71621 updateVelocity + p 1 currentPos + p 0 velocity + p 2 targetPos +c net/minecraft/class_1671 net/minecraft/entity/projectile/FireworkRocketEntity + f I field_57739 DEFAULT_LIFE_TIME + f I field_57738 DEFAULT_LIFE + f Lnet/minecraft/class_2940; field_7615 SHOT_AT_ANGLE + f Lnet/minecraft/class_2940; field_7614 ITEM + f Z field_57740 DEFAULT_SHOT_AT_ANGLE + f Lnet/minecraft/class_2940; field_7611 SHOOTER_ENTITY_ID + f Lnet/minecraft/class_1309; field_7616 shooter + f I field_7612 lifeTime + f I field_7613 life + m (Lnet/minecraft/class_3218;)V method_7475 explode + p 1 world + m ()Lnet/minecraft/class_1799; method_57317 getDefaultStack + m ()Z method_20308 hasExplosionEffects + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;DDDZ)V + p 8 z + p 6 y + p 3 entity + p 4 x + p 1 world + p 2 stack + p 10 shotAtAngle + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1799;)V + p 4 y + p 6 z + p 8 stack + p 1 world + p 2 x + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;DDDLnet/minecraft/class_1799;)V + p 1 world + p 2 entity + p 3 x + p 5 y + p 7 z + p 9 stack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;DDDZ)V + p 9 shotAtAngle + p 7 z + p 5 y + p 2 stack + p 3 x + p 1 world + m ()Ljava/util/List; method_57318 getExplosions + m (Lnet/minecraft/class_3218;)V method_16830 explodeAndRemove + p 1 world + m (I)V method_18072 method_18072 + p 1 id + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;)V + p 1 world + p 2 stack + p 3 shooter + m ()Z method_7476 wasShotByEntity + m ()Z method_7477 wasShotAtAngle +c net/minecraft/class_1670 net/minecraft/entity/projectile/DragonFireballEntity + f F field_30661 DAMAGE_RANGE + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_243;)V + p 1 world + p 2 owner + p 3 velocity +c net/minecraft/class_1676 net/minecraft/entity/projectile/ProjectileEntity + f Z field_57742 DEFAULT_LEFT_OWNER + f Lnet/minecraft/class_1297; field_51621 lastDeflectedEntity + f Z field_23740 leftOwner + f Z field_63116 checkedForLeftOwner + f Z field_57743 DEFAULT_SHOT + f Lnet/minecraft/class_10583; field_60558 owner + f Z field_28646 shot + m ()Z method_74960 hasLeftOwner + m (Lnet/minecraft/class_3966;)V method_7454 onEntityHit + p 1 entityHitResult + m (Lnet/minecraft/class_1297;)Z method_34714 isOwner + p 1 entity + m (Lnet/minecraft/class_9109;Lnet/minecraft/class_1297;Lnet/minecraft/class_10583;Z)Z method_59859 deflect + p 2 deflector + p 4 fromAttack + p 1 deflection + m (Lnet/minecraft/class_1676$class_9876;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;FFF)Lnet/minecraft/class_1676; method_61549 spawnWithVelocity + p 2 projectileStack + p 3 shooter + p 0 creator + p 1 world + p 6 divergence + p 4 roll + p 5 power + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1282;)Lit/unimi/dsi/fastutil/doubles/DoubleDoubleImmutablePair; method_59959 getKnockback + p 1 target + p 2 source + m (FF)F method_26960 updateRotation + p 1 newRot + p 0 lastRot + m (Lnet/minecraft/class_3218;)Z method_54457 canBreakBlocks + p 1 world + m (DDDFFLnet/minecraft/class_1676;)V method_61545 method_61545 + p 8 entity + m (Lnet/minecraft/class_239;)V method_7488 onCollision + p 1 hitResult + m (Lnet/minecraft/class_238;Lnet/minecraft/class_1297;)Z method_74959 method_74959 + p 1 entity + m (Lnet/minecraft/class_1676;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Ljava/util/function/Consumer;)Lnet/minecraft/class_1676; method_61553 spawn + p 1 world + p 2 projectileStack + p 3 beforeSpawn + p 0 projectile + m (Lnet/minecraft/class_1676;DDDFFLnet/minecraft/class_1676;)V method_61550 method_61550 + p 9 entity + m ()V method_26961 tickLeftOwner + m (Lnet/minecraft/class_1297;)Z method_26958 canHit + p 1 entity + m (Lnet/minecraft/class_1676$class_9876;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_1309;DDDFF)Lnet/minecraft/class_1676; method_61548 spawnWithVelocity + p 6 velocityY + p 4 velocityX + p 3 shooter + p 2 projectileStack + p 1 world + p 0 creator + p 11 divergence + p 10 power + p 8 velocityZ + m ()Lnet/minecraft/class_1297; method_37225 getEffectCause + c {@return the cause entity of any effect applied by this projectile} If this\nprojectile has an owner, the effect is attributed to the owner; otherwise, it\nis attributed to this projectile itself. + m (Lnet/minecraft/class_1676;)V method_61554 method_61554 + p 0 entity + m (Lnet/minecraft/class_1792;)V method_61544 onBroken + p 1 item + m (Lnet/minecraft/class_1676;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1676; method_61551 spawn + p 1 world + p 2 projectileStack + p 0 projectile + m (Lnet/minecraft/class_1792;)V method_61556 method_61556 + p 0 item + m (Lnet/minecraft/class_1297;)V method_7432 setOwner + p 1 owner + m (DDDFF)V method_7485 setVelocity + c Sets velocity and updates rotation accordingly.\n\n

The velocity and rotation will be set to the same direction.\n\n

The direction is calculated as follows: Based on the direction vector\n{@code (x, y, z)}, a random vector is added, then multiplied by the\n{@code speed}. + p 5 z + c the Z component of the direction vector + p 8 uncertainty + c the fuzziness added to the direction; player usages have 1.0 and other\nmobs/tools have higher values; some mobs have difficulty-adjusted\nvalues + p 7 power + c the speed + p 1 x + c the X component of the direction vector + p 3 y + c the Y component of the direction vector + m (Lnet/minecraft/class_1676;Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;DDDFF)Lnet/minecraft/class_1676; method_61552 spawnWithVelocity + p 10 divergence + p 9 power + p 3 velocityX + p 2 projectileStack + p 1 world + p 0 projectile + p 7 velocityZ + p 5 velocityY + m (Lnet/minecraft/class_10583;)V method_71623 setOwner + p 1 owner + m (DDDFF)Lnet/minecraft/class_243; method_58645 calculateVelocity + p 1 x + p 3 y + p 5 z + p 7 power + p 8 uncertainty + m (Lnet/minecraft/class_3965;)V method_24920 onBlockHit + p 1 blockHitResult + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;)V method_61546 triggerProjectileSpawned + p 2 projectileStack + p 1 world + m ()V method_26962 updateRotation + m (Lnet/minecraft/class_239;)Lnet/minecraft/class_9109; method_59860 hitOrDeflect + p 1 hitResult + m (Lnet/minecraft/class_1309;FFFLnet/minecraft/class_1676;)V method_61547 method_61547 + p 4 entity + m ()Z method_62823 deflectsAgainstWorldBorder + m (Lnet/minecraft/class_1297;FFFFF)V method_24919 setVelocity + c Sets velocity and updates rotation accordingly. + p 6 divergence + c the fuzziness added to the direction; player usages have 1.0 and other\nmobs/tools have higher values; some mobs have difficulty-adjusted\nvalues + p 5 speed + c the speed + p 2 pitch + c the pitch + p 1 shooter + c the entity who shot this projectile; used to add the shooter's velocity\nto this projectile + p 4 roll + c the roll + p 3 yaw + c the yaw + m (Z)V method_59525 onDeflected +c net/minecraft/class_1676$class_9876 net/minecraft/entity/projectile/ProjectileEntity$ProjectileCreator + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1676; create create + p 3 stack + p 1 world + p 2 shooter +c net/minecraft/class_1675 net/minecraft/entity/projectile/ProjectileUtil + f F field_46654 DEFAULT_MARGIN + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_238;Ljava/util/function/Predicate;FLnet/minecraft/class_3959$class_3960;Z)Ljava/util/Collection; method_75215 collectPiercingCollisions + p 2 from + p 1 entity + p 0 world + p 6 hitboxMargin + p 5 hitPredicate + p 4 box + p 3 to + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1676;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_238;Ljava/util/function/Predicate;)Lnet/minecraft/class_3966; method_18077 getEntityCollision + p 1 projectile + p 2 min + p 0 world + p 5 predicate + p 3 max + p 4 box + m (Lnet/minecraft/class_1297;Ljava/util/function/Predicate;D)Lnet/minecraft/class_239; method_49998 getCollision + p 1 predicate + p 2 range + p 0 entity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_238;Ljava/util/function/Predicate;Z)Ljava/util/Collection; method_75210 collectPiercingCollisions + p 5 hitPredicate + p 6 skipRaycast + p 3 to + p 4 box + p 1 entity + p 2 from + p 0 world + m (Lnet/minecraft/class_1297;F)V method_7484 setRotationFromVelocity + p 1 tickProgress + p 0 entity + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1297;Ljava/util/function/Predicate;Lnet/minecraft/class_243;Lnet/minecraft/class_1937;FLnet/minecraft/class_3959$class_3960;)Lnet/minecraft/class_239; method_18074 getCollision + p 3 velocity + p 4 world + p 5 margin + p 6 raycastShapeType + p 0 pos + p 1 entity + p 2 predicate + m (Lnet/minecraft/class_1297;)F method_71624 getToleranceMargin + p 0 entity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1297;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_238;Ljava/util/function/Predicate;F)Lnet/minecraft/class_3966; method_37226 getEntityCollision + p 1 entity + p 2 min + p 0 world + p 5 predicate + p 6 margin + p 3 max + p 4 box + m (Lnet/minecraft/class_1297;Ljava/util/function/Predicate;Lnet/minecraft/class_3959$class_3960;)Lnet/minecraft/class_239; method_55054 getCollision + p 2 raycastShapeType + p 1 predicate + p 0 entity + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1792;)Lnet/minecraft/class_1268; method_18812 getHandPossiblyHolding + p 1 item + p 0 entity + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Lnet/minecraft/class_238;Ljava/util/function/Predicate;D)Lnet/minecraft/class_3966; method_18075 raycast + p 5 maxDistance + p 4 predicate + p 3 box + p 2 max + p 1 min + p 0 entity + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;FLnet/minecraft/class_1799;)Lnet/minecraft/class_1665; method_18813 createArrowProjectile + p 2 damageModifier + p 3 bow + p 0 entity + p 1 stack + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_12392;Ljava/util/function/Predicate;Lnet/minecraft/class_3959$class_3960;)Lcom/mojang/datafixers/util/Either; method_75209 collectPiercingCollisions + p 1 attackRange + p 2 hitPredicate + p 0 entity + p 3 shapeType + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_243;Lnet/minecraft/class_243;Ljava/util/function/Predicate;Lnet/minecraft/class_243;FLnet/minecraft/class_3959$class_3960;)Lcom/mojang/datafixers/util/Either; method_75212 collectPiercingCollisions + p 2 minReach + p 1 pos + p 0 entity + p 6 shapeType + p 5 hitboxMargin + p 4 maxReach + p 3 hitPredicate + m (Lnet/minecraft/class_1297;Ljava/util/function/Predicate;)Lnet/minecraft/class_239; method_49997 getCollision + p 1 predicate + p 0 entity +c net/minecraft/class_1674 net/minecraft/entity/projectile/FireballEntity + f I field_7624 explosionPower + f B field_57741 DEFAULT_EXPLOSION_POWER + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_243;I)V + p 1 world + p 2 owner + p 3 velocity + p 4 explosionPower +c net/minecraft/class_1673 net/minecraft/entity/projectile/LlamaSpitEntity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1501;)V + p 2 owner + p 1 world +c net/minecraft/class_1669 net/minecraft/entity/mob/EvokerFangsEntity + f I field_7609 warmup + f Lnet/minecraft/class_10583; field_7605 owner + f Z field_7610 startedAttack + f I field_57737 DEFAULT_WARMUP + f I field_7607 ticksLeft + f Z field_7608 playingAnimation + m (Lnet/minecraft/class_1309;)V method_7471 damage + p 1 target + m (Lnet/minecraft/class_1937;DDDFILnet/minecraft/class_1309;)V + p 6 z + p 8 yaw + p 10 owner + p 9 warmup + p 2 x + p 1 world + p 4 y + m (Lnet/minecraft/class_1309;)V method_7473 setOwner + p 1 owner + m ()Lnet/minecraft/class_1309; method_7470 getOwner + m (F)F method_7472 getAnimationProgress + p 1 tickProgress +c net/minecraft/class_1668 net/minecraft/entity/projectile/ExplosiveProjectileEntity + f D field_51891 DEFAULT_ACCELERATION_POWER + f D field_51893 accelerationPower + m (Lnet/minecraft/class_1299;DDDLnet/minecraft/class_243;Lnet/minecraft/class_1937;)V + p 9 world + p 8 velocity + p 4 y + p 6 z + p 1 type + p 2 x + m ()Lnet/minecraft/class_2394; method_7467 getParticleType + m ()Lnet/minecraft/class_3959$class_3960; method_55053 getRaycastShapeType + m (Lnet/minecraft/class_243;D)V method_60499 setVelocityWithAcceleration + p 2 accelerationPower + p 1 velocity + m ()F method_55583 getDragInWater + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1309;Lnet/minecraft/class_243;Lnet/minecraft/class_1937;)V + p 1 type + p 2 owner + p 3 velocity + p 4 world + m ()F method_7466 getDrag + m ()V method_63671 applyDrag + m (Lnet/minecraft/class_1299;DDDLnet/minecraft/class_1937;)V + p 8 world + p 4 y + p 6 z + p 1 type + p 2 x + m ()V method_63672 addParticles + m ()Z method_7468 isBurning +c net/minecraft/class_1667 net/minecraft/entity/projectile/ArrowEntity + f I field_30660 MAX_POTION_DURATION_TICKS + f I field_30658 NO_POTION_COLOR + f Lnet/minecraft/class_2940; field_7595 COLOR + f B field_30659 PARTICLE_EFFECT_STATUS + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_1297;Lnet/minecraft/class_1293;)V method_48574 method_48574 + p 2 effect + m (Lnet/minecraft/class_1293;)V method_7463 addEffect + p 1 effect + m ()F method_66326 getPotionDurationScale + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V + p 3 stack + p 2 owner + p 4 shotFrom + p 1 world + m ()I method_7460 getColor + m ()V method_7462 initColor + m (I)V method_7461 spawnParticles + p 1 amount + m (Lnet/minecraft/class_1844;)V method_57316 setPotionContents + p 1 potionContentsComponent + m ()Lnet/minecraft/class_1844; method_57315 getPotionContents + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V + p 6 z + p 4 y + p 1 world + p 2 x + p 9 shotFrom + p 8 stack +c net/minecraft/class_2972 net/minecraft/world/gen/feature/CoralClawFeature +c net/minecraft/class_2973 net/minecraft/util/InvalidHierarchicalFileException + c An exception that tracks the names of the invalid files and the path to\nthe invalid element in a hierarchical tree structure (such as JSON). + f Ljava/lang/String; field_13372 message + f Ljava/util/List; field_13371 invalidFiles + m (Ljava/lang/String;)V + p 1 message + m (Ljava/lang/String;)V method_12854 addInvalidKey + p 1 key + m (Ljava/lang/String;)V method_12855 addInvalidFile + p 1 fileName + m (Ljava/lang/Exception;)Lnet/minecraft/class_2973; method_12856 wrap + p 0 cause + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 2 cause + p 1 message +c net/minecraft/class_2973$class_2974 net/minecraft/util/InvalidHierarchicalFileException$File + f Ljava/lang/String; field_13373 name + f Ljava/util/List; field_13374 keys + m ()Ljava/lang/String; method_36182 getName + m (Ljava/lang/String;)V method_12858 addKey + p 1 key + m ()Ljava/lang/String; method_12857 joinKeys +c net/minecraft/class_1642 net/minecraft/entity/mob/ZombieEntity + f Z field_57698 DEFAULT_CAN_BREAK_DOORS + f Lnet/minecraft/class_2960; field_52017 LEADER_ZOMBIE_BONUS_MODIFIER_ID + f Lnet/minecraft/class_2940; field_7434 BABY + f Ljava/util/function/Predicate; field_19015 DOOR_BREAK_DIFFICULTY_CHECKER + f Lnet/minecraft/class_2960; field_52193 ZOMBIE_RANDOM_SPAWN_BONUS_MODIFIER_ID + f I field_57699 DEFAULT_IN_WATER_TIME + f Lnet/minecraft/class_2940; field_7427 ZOMBIE_TYPE + c Unused tracked data, left over from 1.10 when zombies, zombie villagers and husks were all the same type of entity. + f Lnet/minecraft/class_2960; field_7429 BABY_SPEED_MODIFIER_ID + f Lnet/minecraft/class_2960; field_52018 REINFORCEMENT_CALLER_CHARGE_MODIFIER_ID + f Z field_57697 DEFAULT_IS_BABY + f Lnet/minecraft/class_1322; field_7430 BABY_SPEED_BONUS + f Lnet/minecraft/class_4048; field_47811 BABY_BASE_DIMENSIONS + f I field_7426 inWaterTime + f I field_7424 ticksUntilWaterConversion + f Lnet/minecraft/class_2940; field_7425 CONVERTING_IN_WATER + f Lnet/minecraft/class_1339; field_7433 breakDoorsGoal + f Lnet/minecraft/class_1322; field_52016 REINFORCEMENT_CALLEE_CHARGE_REINFORCEMENT_BONUS + f Z field_7432 canBreakDoors + m (Z)V method_7201 setCanBreakDoors + p 1 canBreakDoors + m ()V method_6001 initAttributes + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)Z method_63654 infectVillager + p 1 world + p 2 villager + m ()V method_7208 initCustomGoals + m (F)V method_7205 applyAttributeModifiers + p 1 chanceMultiplier + m ()Lnet/minecraft/class_5132$class_5133; method_26940 createZombieAttributes + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1299;)V method_7200 convertTo + p 2 entityType + p 1 world + m (Lnet/minecraft/class_5819;)Z method_29936 shouldBeBaby + p 0 random + m ()Z method_7216 burnsInDaylight + m ()Z method_7206 isConvertingInWater + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1642;)V method_63657 method_63657 + p 1 newZombie + m ()Lnet/minecraft/class_3414; method_7207 getStepSound + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;Lnet/minecraft/class_1641;)V method_63655 method_63655 + p 3 zombieVillager + m (I)V method_63656 setInWaterTime + p 1 inWaterTime + m ()Z method_64462 canSpawnAsReinforcementInFluid + m (Lnet/minecraft/class_3218;)V method_7218 convertInWater + p 1 world + m (I)V method_7213 setTicksUntilWaterConversion + p 1 ticksUntilWaterConversion + m (Lnet/minecraft/class_1267;)Z method_20009 method_20009 + p 0 difficulty + m (I)V method_63658 setTicksUntilWaterConversionDirect + p 1 ticksUntilWaterConversion + m ()Z method_7209 canConvertInWater + m ()Z method_7211 canBreakDoors + m (Lnet/minecraft/class_1937;)V + p 1 world +c net/minecraft/class_1642$class_1644 net/minecraft/entity/mob/ZombieEntity$ZombieData + f Z field_25607 tryChickenJockey + f Z field_7439 baby + m (ZZ)V + p 2 tryChickenJockey + p 1 baby +c net/minecraft/class_1642$class_1643 net/minecraft/entity/mob/ZombieEntity$DestroyEggGoal + m (Lnet/minecraft/class_1642;Lnet/minecraft/class_1314;DI)V + p 5 maxYDifference + p 3 speed + p 2 mob +c net/minecraft/class_1641 net/minecraft/entity/mob/ZombieVillagerEntity + f Lnet/minecraft/class_1916; field_17047 offerData + f Ljava/util/UUID; field_7421 converter + f Ljava/util/Set; field_64691 KEEP_BIOME + f Lnet/minecraft/class_2940; field_7420 VILLAGER_DATA + f Lnet/minecraft/class_2940; field_7423 CONVERTING + f I field_30523 BASE_CONVERSION_DELAY + f I field_7422 conversionTimer + f Lnet/minecraft/class_4136; field_20299 gossip + f I field_57700 DEFAULT_CONVERSION_TIME + f I field_18877 experience + f I field_57701 DEFAULT_EXPERIENCE + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;)V method_63659 method_63659 + p 2 villager + m (I)V method_63660 setConversionTimer + p 1 conversionTimer + m (Lnet/minecraft/class_1916;)V method_16916 setOfferData + p 1 offerData + m ()I method_35194 getExperience + m ()Lnet/minecraft/class_3850; method_72497 createVillagerData + m ()I method_7194 getConversionRate + m (Ljava/util/UUID;I)V method_7199 setConverting + p 1 uuid + p 2 delay + m (Lnet/minecraft/class_3218;)V method_7197 finishConversion + p 1 world + m (Lnet/minecraft/class_4136;)V method_21649 setGossip + p 1 gossip + m ()Z method_7198 isConverting + m (I)V method_19622 setExperience + p 1 experience + m (Lnet/minecraft/class_1799;)Z method_60978 method_60978 + p 0 stack +c net/minecraft/class_1640 net/minecraft/entity/mob/WitchEntity + f I field_7417 drinkTimeLeft + f Lnet/minecraft/class_1322; field_7416 DRINKING_SPEED_PENALTY_MODIFIER + f Lnet/minecraft/class_2960; field_7418 DRINKING_SPEED_PENALTY_MODIFIER_ID + f Lnet/minecraft/class_2940; field_7419 DRINKING + f Lnet/minecraft/class_3760; field_17284 attackPlayerGoal + f Lnet/minecraft/class_3909; field_17283 raidGoal + m ()Z method_7193 isDrinking + m ()Lnet/minecraft/class_5132$class_5133; method_26927 createWitchAttributes + m (Z)V method_7192 setDrinking + p 1 drinking + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_16474 method_16474 + p 1 target + p 2 world +c net/minecraft/class_2970 net/minecraft/block/dispenser/BlockPlacementDispenserBehavior + f Lorg/slf4j/Logger; field_33680 LOGGER +c net/minecraft/class_2968 net/minecraft/item/AutomaticItemPlacementContext + f Lnet/minecraft/class_2350; field_13362 facing + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;Lnet/minecraft/class_1799;Lnet/minecraft/class_2350;)V + p 4 stack + p 5 side + p 2 pos + p 3 facing + p 1 world +c net/minecraft/class_2969 net/minecraft/block/dispenser/FallibleItemDispenserBehavior + f Z field_13364 success + m ()Z method_27954 isSuccess + m (Z)V method_27955 setSuccess + p 1 success +c net/minecraft/class_1634 net/minecraft/entity/mob/VexEntity + f Lnet/minecraft/class_10583; field_7411 owner + f Z field_7409 alive + f Lnet/minecraft/class_2338; field_7407 bounds + f I field_30503 CHARGING_FLAG + f I field_7408 lifeTicks + f Lnet/minecraft/class_2940; field_7410 VEX_FLAGS + m ()Z method_7176 isCharging + m ()Lnet/minecraft/class_2338; method_7186 getBounds + m (Z)V method_7177 setCharging + p 1 charging + m (IZ)V method_7189 setVexFlag + p 2 value + p 1 mask + m ()Lnet/minecraft/class_5132$class_5133; method_26925 createVexAttributes + m ()Lnet/minecraft/class_1308; method_7182 getOwner + m (Lnet/minecraft/class_2338;)V method_7188 setBounds + p 1 bounds + m (I)V method_7181 setLifeTicks + p 1 lifeTicks + m (I)Z method_7184 areFlagsSet + p 1 mask + m (Lnet/minecraft/class_1308;)V method_7178 setOwner + p 1 owner +c net/minecraft/class_1634$class_1635 net/minecraft/entity/mob/VexEntity$ChargeTargetGoal +c net/minecraft/class_1634$class_1636 net/minecraft/entity/mob/VexEntity$TrackOwnerTargetGoal + f Lnet/minecraft/class_4051; field_18132 targetPredicate + m (Lnet/minecraft/class_1634;Lnet/minecraft/class_1314;)V + p 2 mob +c net/minecraft/class_1634$class_1637 net/minecraft/entity/mob/VexEntity$VexMoveControl + m (Lnet/minecraft/class_1634;Lnet/minecraft/class_1634;)V + p 2 owner +c net/minecraft/class_1634$class_1638 net/minecraft/entity/mob/VexEntity$LookAtTargetGoal +c net/minecraft/class_2964 net/minecraft/world/gen/feature/ChorusPlantFeature +c net/minecraft/class_1639 net/minecraft/entity/mob/WitherSkeletonEntity +c net/minecraft/class_2965 net/minecraft/block/dispenser/ProjectileDispenserBehavior + c A dispenser behavior that spawns a projectile with velocity in front of the dispenser. + f Lnet/minecraft/class_9463$class_9464; field_50244 projectileSettings + f Lnet/minecraft/class_9463; field_50243 projectile + m (Lnet/minecraft/class_1792;)V + p 1 item +c net/minecraft/class_2966 net/minecraft/Bootstrap + f Ljava/io/PrintStream; field_13358 SYSOUT + f Ljava/util/concurrent/atomic/AtomicLong; field_44781 LOAD_TIME + f Lorg/slf4j/Logger; field_13359 LOGGER + f Z field_13357 initialized + m ()Ljava/util/Set; method_17597 getMissingTranslations + m ()V method_12852 setOutputStreams + m (Ljava/lang/Iterable;Ljava/util/function/Function;Ljava/util/Set;)V method_12848 collectMissingTranslations + p 2 translationKeys + p 1 keyExtractor + p 0 registry + m (Ljava/util/Set;)V method_27732 collectMissingGameRuleTranslations + p 0 translations + m ()V method_12851 initialize + m (Ljava/util/function/Function;Lnet/minecraft/class_2477;Ljava/util/Set;Ljava/lang/Object;)V method_12850 method_12850 + p 3 object + m ()V method_17598 logMissing + m (Ljava/util/function/Supplier;)Ljava/lang/RuntimeException; method_36237 createNotBootstrappedException + p 0 callerGetter + m (Ljava/lang/String;)V method_12847 println + p 0 str + m (Lnet/minecraft/class_2960;)Ljava/lang/String; method_17595 method_17595 + p 0 stat + m (Ljava/lang/String;)V method_36236 method_36236 + p 0 key + m (Ljava/util/function/Supplier;)V method_36235 ensureBootstrapped + p 0 callerGetter +c net/minecraft/class_2967 net/minecraft/block/dispenser/BoatDispenserBehavior + f Lnet/minecraft/class_1299; field_13361 boatType + f Lnet/minecraft/class_2347; field_13360 fallbackBehavior + m (Lnet/minecraft/class_1299;)V + p 1 boatType +c net/minecraft/class_2983 net/minecraft/util/logging/LoggerPrintStream + f Lorg/slf4j/Logger; field_13384 LOGGER + f Ljava/lang/String; field_13383 name + m (Ljava/lang/Object;)V println println + p 1 object + m (Ljava/lang/String;)V println println + p 1 message + m (Ljava/lang/String;Ljava/io/OutputStream;)V + p 2 out + p 1 name + m (Ljava/lang/String;)V method_12870 log + p 1 message +c net/minecraft/class_2984 net/minecraft/world/gen/CountConfig + f Lnet/minecraft/class_6017; field_13385 count + f Lcom/mojang/serialization/Codec; field_24878 CODEC + m (Lnet/minecraft/class_6017;)V + p 1 distribution + m ()Lnet/minecraft/class_6017; method_30396 getCount + m (I)V + p 1 count +c net/minecraft/class_2985 net/minecraft/advancement/PlayerAdvancementTracker + f Ljava/util/Set; field_41736 updatedRoots + f Ljava/util/Set; field_13390 visibleAdvancements + f Lcom/mojang/serialization/Codec; field_46074 progressMapCodec + f Lcom/google/gson/Gson; field_13395 GSON + f Lnet/minecraft/class_8779; field_13387 currentDisplayTab + f Lnet/minecraft/class_3222; field_13391 owner + f Lnet/minecraft/class_3324; field_25325 playerManager + f Z field_13396 dirty + f Lnet/minecraft/class_163; field_46073 advancementManager + f Ljava/util/Set; field_13388 progressUpdates + f Lorg/slf4j/Logger; field_13394 LOGGER + f Ljava/util/Map; field_41735 progress + f Ljava/nio/file/Path; field_41734 filePath + m ()V method_12881 clearCriteria + m (Ljava/util/Map;Lnet/minecraft/class_8779;Lnet/minecraft/class_167;)V method_53641 method_53641 + p 1 entry + p 2 progress + m (Lnet/minecraft/class_8779;Ljava/lang/String;)Z method_12883 revokeCriterion + p 2 criterionName + p 1 advancement + m (Lnet/minecraft/class_2989;)V method_12872 rewardEmptyAdvancements + p 1 advancementLoader + m (Lnet/minecraft/class_8779;Ljava/lang/String;Lnet/minecraft/class_175;)V method_53638 beginTracking + p 3 criterion + p 2 id + p 1 advancement + m (Lnet/minecraft/class_8779;)Lnet/minecraft/class_167; method_12882 getProgress + p 1 advancement + m (Lnet/minecraft/class_8779;)V method_12880 endTrackingCompleted + p 1 advancement + m (Lnet/minecraft/class_8779;Lnet/minecraft/class_167;)V method_12884 initProgress + p 2 progress + p 1 advancement + m (Lnet/minecraft/class_2989;)V method_12886 reload + p 1 advancementLoader + m (Lnet/minecraft/class_8779;)V method_12874 beginTracking + p 1 advancement + m (Lnet/minecraft/class_8779;)V method_12888 setDisplayTab + p 1 advancement + m (Lnet/minecraft/class_2989;Lnet/minecraft/class_2960;Lnet/minecraft/class_167;)V method_53639 method_53639 + p 3 progress + p 2 id + m ()V method_12890 save + m (Lnet/minecraft/class_8779;Ljava/lang/String;)Z method_12878 grantCriterion + p 1 advancement + p 2 criterionName + m (Lnet/minecraft/class_8779;)V method_48028 onStatusUpdate + p 1 advancement + m (Lnet/minecraft/class_8781;)Z method_48029 method_48029 + p 1 advancement + m (Lnet/minecraft/class_3222;)V method_12875 setOwner + p 1 owner + m (Lnet/minecraft/class_3222;Z)V method_12876 sendUpdate + p 2 showToast + p 1 player + m (Lnet/minecraft/class_2989;)V method_12873 load + p 1 advancementLoader + m (Lnet/minecraft/class_2989;)V method_12889 beginTrackingAllAdvancements + p 1 advancementLoader + m (Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/class_3324;Lnet/minecraft/class_2989;Ljava/nio/file/Path;Lnet/minecraft/class_3222;)V + p 1 dataFixer + p 2 playerManager + p 5 owner + p 3 advancementLoader + p 4 filePath + m (Lnet/minecraft/class_2989;Lnet/minecraft/class_2985$class_8780;)V method_53640 loadProgressMap + p 1 loader + p 2 progressMap + m (Ljava/util/Set;Ljava/util/Set;Lnet/minecraft/class_8781;Z)V method_48027 method_48027 + p 4 displayed + p 3 advancement + m ()Lnet/minecraft/class_2985$class_8780; method_53643 createProgressMap + m (Lnet/minecraft/class_8779;Ljava/lang/String;Lnet/minecraft/class_175;)V method_53642 endTrackingCompleted + p 2 id + p 1 advancement + p 3 criterion + m (Lnet/minecraft/class_8781;Ljava/util/Set;Ljava/util/Set;)V method_48025 calculateDisplay + p 2 added + p 3 removed + p 1 root + m (Lnet/minecraft/class_8779;Lnet/minecraft/class_185;)V method_53637 method_53637 + p 2 display +c net/minecraft/class_2985$class_8780 net/minecraft/advancement/PlayerAdvancementTracker$ProgressMap + f Lcom/mojang/serialization/Codec; field_46075 CODEC + f Ljava/util/Map; comp_1921 map + m (Ljava/util/function/BiConsumer;Ljava/util/Map$Entry;)V method_53645 method_53645 + p 1 entry + m (Ljava/util/function/BiConsumer;)V method_53644 forEach + p 1 consumer + m ()Ljava/util/Map; comp_1921 map + m (Ljava/util/Map;)V + p 1 map +c net/minecraft/class_2980 net/minecraft/util/logging/DebugLoggerPrintStream + f Lorg/slf4j/Logger; field_36382 LOGGER +c net/minecraft/class_2981 net/minecraft/server/dedicated/EulaReader + f Ljava/nio/file/Path; field_13380 eulaFile + f Lorg/slf4j/Logger; field_13381 LOGGER + f Z field_13379 eulaAgreedTo + m ()V method_12868 createEulaFile + m ()Z method_12867 checkEulaAgreement + m (Ljava/nio/file/Path;)V + p 1 eulaFile + m ()Z method_12866 isEulaAgreedTo +c net/minecraft/class_2979 net/minecraft/world/gen/feature/CoralTreeFeature +c net/minecraft/class_1646 net/minecraft/entity/passive/VillagerEntity + f I field_18533 foodLevel + f Lorg/slf4j/Logger; field_36335 LOGGER + f Z field_18529 levelingUp + f Lnet/minecraft/class_4136; field_18534 gossip + f Lnet/minecraft/class_1657; field_18530 lastCustomer + f Lnet/minecraft/class_2940; field_7445 VILLAGER_DATA + f J field_20332 lastRestockCheckTime + f Lcom/google/common/collect/ImmutableList; field_18539 SENSORS + f J field_18537 lastRestockTime + f Z field_25167 natural + f J field_18535 gossipStartTime + f Ljava/util/Map; field_18851 POINTS_OF_INTEREST + f I field_19427 restocksToday + f J field_19357 lastGossipDecayTime + f I field_18528 levelUpTimer + f Lcom/google/common/collect/ImmutableList; field_18538 MEMORY_MODULES + f I field_18536 experience + f Z field_57714 DEFAULT_NATURAL + f Ljava/util/Map; field_18526 ITEM_FOOD_VALUES + m ()V method_20821 clearDailyRestockCount + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1296;)Lnet/minecraft/class_1646; method_7225 createChild + m (Lnet/minecraft/class_4140;)V method_19176 releaseTicketFor + p 1 pos + m (Lnet/minecraft/class_1916;)V method_16917 setOffers + p 1 offers + m ()V method_19185 consumeAvailableFood + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_6880;)Z method_19522 method_19522 + p 0 villager + p 1 poi + m (I)V method_19193 depleteFood + p 1 amount + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1297;Lnet/minecraft/class_1309;)V method_20699 method_20699 + p 2 observer + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_6880;)Z method_19521 method_19521 + p 0 villager + p 1 poi + m (Lnet/minecraft/class_1277;Ljava/util/Map$Entry;)I method_19172 method_19172 + p 1 item + m ()Z method_20698 canEatFood + m ()Z method_7234 canShareFoodForBreeding + m ()Z method_20824 canRestock + m ()Lnet/minecraft/class_3850; method_67359 createVillagerData + m ()V method_30958 releaseAllTickets + m ()Z method_19623 hasSeedToPlant + m ()V method_49695 sendOffersToCustomer + m (Lnet/minecraft/class_4139;)Z method_20593 method_20593 + p 0 gossipType + m (Lnet/minecraft/class_3218;)Z method_20822 shouldRestock + p 1 world + m (Lnet/minecraft/class_4095;)V method_19174 initBrain + p 1 brain + m (Lnet/minecraft/class_1657;)V method_19191 beginTradeWith + p 1 customer + m ()V method_19182 restock + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_4140;Lnet/minecraft/class_4208;)V method_19178 method_19178 + p 3 posx + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;Lnet/minecraft/class_5321;)V + p 2 world + p 3 type + p 1 entityType + m ()Z method_7239 needsFoodForBreeding + m ()Z method_20823 needsRestock + c Returns whether this villager needs restock.\n\n

Checks if at least one of its trade offers has been used. + m ()V method_20697 eatForBreeding + m (J)Z method_20741 hasRecentlySlept + p 1 worldTime + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1640;)V method_63666 method_63666 + p 2 witch + m ()V method_19187 clearSpecialPrices + c Resets the special price of all the trade offers of this villager. + m (Lnet/minecraft/class_3218;)V method_16918 levelUp + p 1 world + m (Lnet/minecraft/class_1657;)V method_19192 prepareOffersFor + p 1 player + m (JLjava/lang/Long;)Z method_63012 method_63012 + p 2 lastSlept + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1646;J)V method_19177 talkWithVillager + p 3 time + p 2 villager + p 1 world + m (Lnet/minecraft/class_3218;)V method_19179 reinitializeBrain + p 1 world + m ()V method_19183 playWorkSound + m ()V method_21723 restockAndUpdateDemandBonus + m ()V method_20264 sayNo + m (Lnet/minecraft/class_1657;)I method_20594 getReputation + p 1 player + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;Lnet/minecraft/class_6880;)V + p 1 entityType + p 2 world + p 3 type + m (I)V method_19625 setExperience + p 1 experience + m ()V method_20696 decayGossip + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_6880;)Z method_29278 method_29278 + p 1 poi + p 0 villager + m (J)Z method_20687 canSummonGolem + p 1 time + m (Lnet/minecraft/class_4136;)V method_21650 readGossipData + p 1 gossips + m (Lnet/minecraft/class_1297;)V method_20690 notifyDeath + p 1 killer + m (JLnet/minecraft/class_1646;)Z method_20693 method_20693 + p 2 villager + m ()V method_21724 updateDemandBonus + c Updates the demand bonus of all the trade offers of this villager. + m (Lnet/minecraft/class_3218;JI)V method_20688 summonGolem + p 2 time + p 1 world + p 4 requiredCount + m (Lnet/minecraft/class_1646;Lnet/minecraft/class_6880;)Z method_19520 method_19520 + p 0 villager + p 1 poi + m ()Lnet/minecraft/class_5132$class_5133; method_26955 createVillagerAttributes + m ()Z method_19188 canLevelUp + m ()Z method_29279 isNatural + m ()I method_19189 getAvailableFood + m (Lnet/minecraft/class_1799;)Z method_51304 method_51304 + p 0 stack + m ()Lnet/minecraft/class_4136; method_21651 getGossip +c net/minecraft/class_1645 net/minecraft/village/SimpleMerchant + f Lnet/minecraft/class_1657; field_7441 player + f I field_18525 experience + f Lnet/minecraft/class_1916; field_7442 offers + m (Lnet/minecraft/class_1657;)V + p 1 player +c net/minecraft/class_2975 net/minecraft/world/gen/feature/ConfiguredFeature + f Lcom/mojang/serialization/Codec; field_24833 REGISTRY_CODEC + f Lnet/minecraft/class_3037; comp_333 config + f Lcom/mojang/serialization/Codec; field_25833 CODEC + f Lcom/mojang/serialization/Codec; field_26756 LIST_CODEC + f Lnet/minecraft/class_3031; comp_332 feature + m ()Lnet/minecraft/class_3037; comp_333 config + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_2794;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;)Z method_12862 generate + p 4 origin + p 3 random + p 2 chunkGenerator + p 1 world + m (Lnet/minecraft/class_3031;Lnet/minecraft/class_3037;)V + p 2 config + p 1 feature + m ()Ljava/util/stream/Stream; method_30648 getDecoratedFeatures + m ()Lnet/minecraft/class_3031; comp_332 feature + m (Lnet/minecraft/class_2975;)Lnet/minecraft/class_3031; method_28621 method_28621 + p 0 configuredFeature +c net/minecraft/class_2976 net/minecraft/server/dedicated/PendingServerCommand + f Lnet/minecraft/class_2168; field_13378 source + f Ljava/lang/String; field_13377 command + m (Ljava/lang/String;Lnet/minecraft/class_2168;)V + p 2 commandSource + p 1 command +c net/minecraft/class_2977 net/minecraft/world/gen/feature/CoralMushroomFeature +c net/minecraft/class_2978 net/minecraft/world/gen/feature/CoralFeature + m (Lnet/minecraft/class_2350;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;)V method_40030 method_40030 + p 3 block + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;)V method_40029 method_40029 + p 2 block + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_12863 generateCoral + p 2 random + p 1 world + p 4 state + p 3 pos + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z method_12864 generateCoralPiece + p 1 world + p 4 state + p 3 pos + p 2 random +c net/minecraft/class_2950 net/minecraft/world/gen/feature/ForestRockFeature +c net/minecraft/class_1621 net/minecraft/entity/mob/SlimeEntity + f I field_30496 MIN_SIZE + f F field_7388 stretch + f Z field_57692 DEFAULT_ON_GROUND_LAST_TICK + f F field_7389 targetStretch + f I field_30497 MAX_SIZE + f F field_7387 lastStretch + f Lnet/minecraft/class_2940; field_7390 SLIME_SIZE + f Z field_7391 onGroundLastTick + m (IZ)V method_7161 setSize + p 1 size + p 2 heal + m ()Lnet/minecraft/class_2394; method_7162 getParticles + m ()Z method_7157 isSmall + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20685 canSpawn + p 1 world + p 0 type + p 3 pos + p 2 spawnReason + p 4 random + m ()Z method_7159 makesJumpSound + m ()Lnet/minecraft/class_3414; method_7153 getJumpSound + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_18451 method_18451 + p 2 world + p 1 target + m ()F method_24353 getJumpSoundPitch + m ()Z method_7163 canAttack + m ()F method_7158 getDamageAmount + m ()I method_7152 getSize + m ()I method_7154 getTicksUntilNextJump + m ()V method_7156 updateStretch + m ()Lnet/minecraft/class_3414; method_7160 getSquishSound + m (IFFLnet/minecraft/class_1621;)V method_63653 method_63653 + p 4 newSlime + m (Lnet/minecraft/class_1309;)V method_7155 damage + p 1 target +c net/minecraft/class_1621$class_1622 net/minecraft/entity/mob/SlimeEntity$FaceTowardTargetGoal + f I field_7392 ticksLeft + f Lnet/minecraft/class_1621; field_7393 slime + m (Lnet/minecraft/class_1621;)V + p 1 slime +c net/minecraft/class_1621$class_1623 net/minecraft/entity/mob/SlimeEntity$SwimmingGoal + f Lnet/minecraft/class_1621; field_7394 slime + m (Lnet/minecraft/class_1621;)V + p 1 slime +c net/minecraft/class_1621$class_1624 net/minecraft/entity/mob/SlimeEntity$MoveGoal + f Lnet/minecraft/class_1621; field_7395 slime + m (Lnet/minecraft/class_1621;)V + p 1 slime +c net/minecraft/class_1621$class_1625 net/minecraft/entity/mob/SlimeEntity$SlimeMoveControl + f I field_7399 ticksUntilJump + f F field_7397 targetYaw + f Z field_7398 jumpOften + f Lnet/minecraft/class_1621; field_7396 slime + m (Lnet/minecraft/class_1621;)V + p 1 slime + m (D)V method_7164 move + p 1 speed + m (FZ)V method_7165 look + p 2 jumpOften + p 1 targetYaw +c net/minecraft/class_1621$class_1626 net/minecraft/entity/mob/SlimeEntity$RandomLookGoal + f F field_7400 targetYaw + f I field_7401 timer + f Lnet/minecraft/class_1621; field_7402 slime + m (Lnet/minecraft/class_1621;)V + p 1 slime +c net/minecraft/class_1614 net/minecraft/entity/mob/SilverfishEntity + f Lnet/minecraft/class_1614$class_1616; field_7366 callForHelpGoal + m ()Lnet/minecraft/class_5132$class_5133; method_26922 createSilverfishAttributes + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1936;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20684 canSpawn + p 0 type + p 1 world + p 2 spawnReason + p 3 pos + p 4 random +c net/minecraft/class_1614$class_1615 net/minecraft/entity/mob/SilverfishEntity$WanderAndInfestGoal + f Lnet/minecraft/class_2350; field_7368 direction + f Z field_7367 canInfest + m (Lnet/minecraft/class_1614;)V + p 1 silverfish +c net/minecraft/class_1614$class_1616 net/minecraft/entity/mob/SilverfishEntity$CallForHelpGoal + f I field_7369 delay + f Lnet/minecraft/class_1614; field_7370 silverfish + m ()V method_7136 onHurt + m (Lnet/minecraft/class_1614;)V + p 1 silverfish +c net/minecraft/class_1613 net/minecraft/entity/mob/SkeletonEntity + f I field_57691 DEFAULT_STRAY_CONVERSION_TIME + f I field_28643 inPowderSnowTime + f I field_28644 conversionTime + f Lnet/minecraft/class_2940; field_28642 CONVERTING + f Ljava/lang/String; field_30495 STRAY_CONVERSION_TIME_KEY + f I field_41714 TOTAL_CONVERSION_TIME + m (Z)V method_35193 setConverting + p 1 converting + m (I)V method_33589 setConversionTime + p 1 time + m ()V method_33591 convertToStray + c Converts this skeleton to a stray and plays a sound if it is not silent. + m ()Z method_33590 isConverting + c Returns whether this skeleton is currently converting to a stray. + m (Lnet/minecraft/class_1627;)V method_63652 method_63652 + p 1 stray +c net/minecraft/class_2942 net/minecraft/world/gen/feature/BambooFeature + f Lnet/minecraft/class_2680; field_13308 BAMBOO + f Lnet/minecraft/class_2680; field_13309 BAMBOO_TOP_3 + f Lnet/minecraft/class_2680; field_13311 BAMBOO_TOP_1 + f Lnet/minecraft/class_2680; field_13310 BAMBOO_TOP_2 +c net/minecraft/class_1617 net/minecraft/entity/mob/SpellcastingIllagerEntity + f I field_57693 DEFAULT_SPELL_TICKS + f I field_7372 spellTicks + f Lnet/minecraft/class_1617$class_1618; field_7371 spell + f Lnet/minecraft/class_2940; field_7373 SPELL + m ()I method_7139 getSpellTicks + m ()Z method_7137 isSpellcasting + m ()Lnet/minecraft/class_1617$class_1618; method_7140 getSpell + m ()Lnet/minecraft/class_3414; method_7142 getCastSpellSound + m (Lnet/minecraft/class_1617$class_1618;)V method_7138 setSpell + p 1 spell +c net/minecraft/class_1617$class_1620 net/minecraft/entity/mob/SpellcastingIllagerEntity$CastSpellGoal + f I field_7385 spellCooldown + f I field_7384 startTime + m ()I method_7146 getInitialCooldown + m ()I method_7149 getSpellTicks + m ()Lnet/minecraft/class_1617$class_1618; method_7147 getSpell + m ()V method_7148 castSpell + m ()V method_6268 tick + m ()Lnet/minecraft/class_3414; method_7150 getSoundPrepare + m ()V method_6269 start + m ()I method_7151 startTimeDelay +c net/minecraft/class_1617$class_1619 net/minecraft/entity/mob/SpellcastingIllagerEntity$LookAtTargetGoal +c net/minecraft/class_1617$class_1618 net/minecraft/entity/mob/SpellcastingIllagerEntity$Spell + f Ljava/util/function/IntFunction; field_41674 BY_ID + f I field_7375 id + f [D field_7374 particleVelocity + f Lnet/minecraft/class_1617$class_1618; field_7382 DISAPPEAR + f Lnet/minecraft/class_1617$class_1618; field_7381 WOLOLO + f Lnet/minecraft/class_1617$class_1618; field_7380 FANGS + f Lnet/minecraft/class_1617$class_1618; field_7379 SUMMON_VEX + f Lnet/minecraft/class_1617$class_1618; field_7378 BLINDNESS + f Lnet/minecraft/class_1617$class_1618; field_7377 NONE + m (I)Lnet/minecraft/class_1617$class_1618; method_7144 byId + p 0 id + m (Ljava/lang/String;IIDDD)V + p 4 particleVelocityX + p 3 id + p 8 particleVelocityZ + p 6 particleVelocityY + m (Lnet/minecraft/class_1617$class_1618;)I method_47929 method_47929 + p 0 spell +c net/minecraft/class_2943 net/minecraft/entity/data/TrackedDataHandlerRegistry + f Lnet/minecraft/class_2941; field_55584 LAZY_ENTITY_REFERENCE + f Lnet/minecraft/class_2941; field_13319 BYTE + f Lnet/minecraft/class_2941; field_49713 WOLF_VARIANT + f Lnet/minecraft/class_2941; field_13317 TEXT_COMPONENT + f Lnet/minecraft/class_2941; field_13327 INTEGER + f Lnet/minecraft/class_2941; field_17910 OPTIONAL_INT + f Lnet/minecraft/class_2941; field_17207 VILLAGER_DATA + f Lnet/minecraft/class_2941; field_13322 ITEM_STACK + f Lnet/minecraft/class_2941; field_13320 FLOAT + f Lnet/minecraft/class_2941; field_56413 COW_VARIANT + f Lnet/minecraft/class_2941; field_13326 STRING + f Lnet/minecraft/class_2941; field_39017 PAINTING_VARIANT + f Lnet/minecraft/class_2941; field_64258 ARM + f Lnet/minecraft/class_2941; field_13314 PARTICLE + f Lnet/minecraft/class_2941; field_57073 WOLF_SOUND_VARIANT + f Lnet/minecraft/class_2941; field_13324 BLOCK_POS + f Lnet/minecraft/class_2941; field_13312 BLOCK_STATE + f Lnet/minecraft/class_2941; field_47707 ARMADILLO_STATE + f Lnet/minecraft/class_2941; field_38826 CAT_VARIANT + f Lnet/minecraft/class_2941; field_42236 OPTIONAL_BLOCK_STATE + f Lnet/minecraft/class_2941; field_42543 SNIFFER_STATE + f Lnet/minecraft/class_9139; field_48266 OPTIONAL_INT_CODEC + f Lnet/minecraft/class_3513; field_13328 DATA_HANDLERS + f Lnet/minecraft/class_2941; field_55583 PIG_VARIANT + f Lnet/minecraft/class_2941; field_61079 OXIDATION_LEVEL + f Lnet/minecraft/class_2941; field_13316 ROTATION + f Lnet/minecraft/class_2941; field_49774 PARTICLE_LIST + f Lnet/minecraft/class_2941; field_13321 FACING + f Lnet/minecraft/class_2941; field_56523 CHICKEN_VARIANT + f Lnet/minecraft/class_2941; field_13315 OPTIONAL_BLOCK_POS + f Lnet/minecraft/class_2941; field_13325 OPTIONAL_TEXT_COMPONENT + f Lnet/minecraft/class_2941; field_64257 ZOMBIE_NAUTILUS_VARIANT + f Lnet/minecraft/class_2941; field_39965 LONG + f Lnet/minecraft/class_2941; field_13323 BOOLEAN + f Lnet/minecraft/class_2941; field_61080 COPPER_GOLEM_STATE + f Lnet/minecraft/class_2941; field_38825 OPTIONAL_GLOBAL_POS + f Lnet/minecraft/class_2941; field_42237 VECTOR_3F + f Lnet/minecraft/class_9139; field_48265 OPTIONAL_BLOCK_STATE_CODEC + f Lnet/minecraft/class_2941; field_63001 PROFILE + f Lnet/minecraft/class_2941; field_38827 FROG_VARIANT + f Lnet/minecraft/class_2941; field_42235 QUATERNION_F + f Lnet/minecraft/class_2941; field_18238 ENTITY_POSE + m (Lnet/minecraft/class_2941;)I method_12719 getId + p 0 handler + m (Lnet/minecraft/class_2941;)V method_12720 register + p 0 handler + m (I)Lnet/minecraft/class_2941; method_12721 get + p 0 id +c net/minecraft/class_2943$2 net/minecraft/entity/data/TrackedDataHandlerRegistry$2 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Optional;)V method_56034 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Optional; method_56033 decode +c net/minecraft/class_2943$1 net/minecraft/entity/data/TrackedDataHandlerRegistry$1 + m (Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_12732 copy +c net/minecraft/class_2943$3 net/minecraft/entity/data/TrackedDataHandlerRegistry$3 + m (Lio/netty/buffer/ByteBuf;Ljava/util/OptionalInt;)V method_56037 encode + m (Lio/netty/buffer/ByteBuf;)Ljava/util/OptionalInt; method_56036 decode +c net/minecraft/class_2944 net/minecraft/world/gen/feature/TreeFeature + f I field_31519 FORCE_STATE_AND_NOTIFY_ALL + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_2338;)Z method_16420 isAirOrLeaves + p 0 world + p 1 pos + m (Lnet/minecraft/class_2680;)Z method_23384 method_23384 + p 0 state + m (Lnet/minecraft/class_4662$class_7402;)Ljava/util/List; method_66482 getLeafLitterPositions + p 0 decoratorGenerator + m (Lnet/minecraft/class_5281;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;Lnet/minecraft/class_3341;)Ljava/lang/Boolean; method_35363 method_35363 + p 4 box + m (Lnet/minecraft/class_4662$class_7402;Lnet/minecraft/class_4662;)V method_23381 method_23381 + p 1 decorator + m (Lnet/minecraft/class_2680;)Z method_16417 method_16417 + p 0 state + m (Ljava/util/Set;Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_49238 method_49238 + p 3 state + p 2 pos + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_2338;)Z method_16416 isVine + p 1 pos + p 0 world + m (Lnet/minecraft/class_4643;Lnet/minecraft/class_5281;Lnet/minecraft/class_4647$class_8179;Lnet/minecraft/class_5819;IIILnet/minecraft/class_4647$class_5208;)V method_27372 method_27372 + p 7 node + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Lnet/minecraft/class_7387;)Lnet/minecraft/class_2338; method_43293 method_43293 + p 2 rootPlacer + m (Lnet/minecraft/class_5281;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Ljava/util/function/BiConsumer;Ljava/util/function/BiConsumer;Lnet/minecraft/class_4647$class_8179;Lnet/minecraft/class_4643;)Z method_12775 generate + p 7 config + p 6 blockPlacer + p 5 trunkPlacerReplacer + p 4 rootPlacerReplacer + p 3 pos + p 2 random + p 1 world + m (Lnet/minecraft/class_3746;ILnet/minecraft/class_2338;Lnet/minecraft/class_4643;)I method_29963 getTopPosition + p 4 config + p 1 world + p 3 pos + p 2 height + m (Lnet/minecraft/class_1945;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_12774 setBlockStateWithoutUpdatingNeighbors + p 1 pos + p 0 world + p 2 state + m (Lnet/minecraft/class_1936;Lnet/minecraft/class_3341;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;)Lnet/minecraft/class_251; method_23380 placeLogsAndLeaves + p 0 world + p 1 box + p 2 trunkPositions + p 3 decorationPositions + p 4 rootPositions + m (Ljava/util/Set;Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_43162 method_43162 + p 3 state + p 2 pos + m (Ljava/util/Set;Lnet/minecraft/class_5281;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V method_35364 method_35364 + p 2 pos + p 3 state + m (Lnet/minecraft/class_2680;)Z method_51179 method_51179 + p 0 state + m (Lnet/minecraft/class_3746;Lnet/minecraft/class_2338;)Z method_27371 canReplace + p 1 pos + p 0 world +c net/minecraft/class_2945 net/minecraft/entity/data/DataTracker + f Lnet/minecraft/class_9221; field_13333 trackedEntity + f Z field_13329 dirty + f [Lnet/minecraft/class_2945$class_2946; field_13331 entries + f Lnet/minecraft/class_9227; field_49021 CLASS_TO_LAST_ID + f Lorg/slf4j/Logger; field_13334 LOGGER + f I field_33378 MAX_DATA_VALUE_ID + m ()Ljava/util/List; method_46357 getChangedEntries + m ()Z method_12786 isDirty + m (Ljava/util/List;)V method_12779 writeUpdatedEntries + p 1 entries + m (Lnet/minecraft/class_2940;)Ljava/lang/Object; method_12789 get + p 1 data + m ()Ljava/util/List; method_12781 getDirtyEntries + m (Lnet/minecraft/class_2940;)Lnet/minecraft/class_2945$class_2946; method_12783 getEntry + p 1 key + m (Lnet/minecraft/class_2940;Ljava/lang/Object;)V method_12778 set + p 1 key + p 2 value + m (Ljava/lang/Class;Lnet/minecraft/class_2941;)Lnet/minecraft/class_2940; method_12791 registerData + p 1 dataHandler + p 0 entityClass + m (Lnet/minecraft/class_9221;[Lnet/minecraft/class_2945$class_2946;)V + p 1 trackedEntity + p 2 entries + m (Lnet/minecraft/class_2940;Ljava/lang/Object;Z)V method_49743 set + p 1 key + p 2 value + p 3 force + m (Lnet/minecraft/class_2945$class_2946;Lnet/minecraft/class_2945$class_7834;)V method_12785 copyToFrom + p 1 to + p 2 from +c net/minecraft/class_2945$class_7834 net/minecraft/entity/data/DataTracker$SerializedEntry + f Lnet/minecraft/class_2941; comp_1116 handler + f I comp_1115 id + f Ljava/lang/Object; comp_1117 value + m ()Lnet/minecraft/class_2941; comp_1116 handler + m (Lnet/minecraft/class_2940;Ljava/lang/Object;)Lnet/minecraft/class_2945$class_7834; method_46360 of + p 0 data + p 1 value + m (Lnet/minecraft/class_9129;I)Lnet/minecraft/class_2945$class_7834; method_46362 fromBuf + p 1 id + p 0 buf + m (Lnet/minecraft/class_9129;ILnet/minecraft/class_2941;)Lnet/minecraft/class_2945$class_7834; method_46363 fromBuf + p 2 handler + p 1 id + p 0 buf + m (Lnet/minecraft/class_9129;)V method_46361 write + p 1 buf + m ()Ljava/lang/Object; comp_1117 value + m ()I comp_1115 id + m (ILnet/minecraft/class_2941;Ljava/lang/Object;)V + p 1 id + p 2 handler + p 3 value +c net/minecraft/class_2945$class_9222 net/minecraft/entity/data/DataTracker$Builder + f Lnet/minecraft/class_9221; field_49022 entity + f [Lnet/minecraft/class_2945$class_2946; field_49023 entries + m ()Lnet/minecraft/class_2945; method_56911 build + m (Lnet/minecraft/class_9221;)V + p 1 entity + m (Lnet/minecraft/class_2940;Ljava/lang/Object;)Lnet/minecraft/class_2945$class_9222; method_56912 add + p 1 data + p 2 value +c net/minecraft/class_2945$class_2946 net/minecraft/entity/data/DataTracker$Entry + f Ljava/lang/Object; field_13338 value + f Ljava/lang/Object; field_40719 initialValue + f Z field_13336 dirty + f Lnet/minecraft/class_2940; field_13337 data + m ()Z method_46358 isUnchanged + m ()Ljava/lang/Object; method_12794 get + m ()Lnet/minecraft/class_2940; method_12797 getData + m ()Lnet/minecraft/class_2945$class_7834; method_46359 toSerialized + m (Lnet/minecraft/class_2940;Ljava/lang/Object;)V + p 1 data + p 2 value + m (Z)V method_12795 setDirty + p 1 dirty + m ()Z method_12796 isDirty + m (Ljava/lang/Object;)V method_12799 set + p 1 value +c net/minecraft/class_10675 net/minecraft/test/TestInstanceBlockFinder +c net/minecraft/class_10676 net/minecraft/registry/ContextSwappableRegistryLookup + f Lnet/minecraft/class_7225$class_7874; field_56244 delegate + f Lnet/minecraft/class_10676$class_10677; field_56245 entryLookupImpl + f Ljava/util/Map; field_56246 entries + f Ljava/util/Map; field_56247 tags + m ()Z method_67090 hasEntries + m (Lnet/minecraft/class_7225$class_7874;)V + p 1 delegate + m ()Lnet/minecraft/class_10678; method_67088 createContextSwapper + m (Lcom/mojang/serialization/DynamicOps;)Lnet/minecraft/class_6903; method_67089 createRegistryOps + p 1 delegateOps +c net/minecraft/class_10676$class_10677 net/minecraft/registry/ContextSwappableRegistryLookup$EntryLookupImpl + m ()Lnet/minecraft/class_7876; method_67095 asEntryOwner + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_6880$class_6883; method_67096 getOrComputeEntry + p 1 key + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_6880$class_6883; method_67098 method_67098 + p 1 key2 + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_6885$class_6888; method_67097 getOrComputeTag + p 1 tag + m ()Lnet/minecraft/class_7871; method_67094 asEntryLookup + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_6885$class_6888; method_67099 method_67099 + p 1 tagKey +c net/minecraft/class_10676$2 net/minecraft/registry/ContextSwappableRegistryLookup$2 + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/class_7225$class_7874;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_67093 method_67093 + p 2 encodedValue +c net/minecraft/class_10673 net/minecraft/test/TestFunctionProvider + f Ljava/util/List; field_56221 PROVIDERS + m (Lnet/minecraft/class_2378;Lnet/minecraft/class_5321;Ljava/util/function/Consumer;)V method_67075 method_67075 + p 1 key + p 2 value + m (Lnet/minecraft/class_2378;)V method_67077 registerAll + p 0 registry + m (Ljava/util/function/BiConsumer;)V method_66916 register + p 1 registry + m (Lnet/minecraft/class_10673;)V method_67076 addProvider + p 0 provider +c net/minecraft/class_10674 net/minecraft/test/TestInstanceFinder +c net/minecraft/class_10679 net/minecraft/datafixer/fix/TypeChangeFix + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)V + p 1 outputSchema + p 4 choiceName + p 3 type + p 2 name +c net/minecraft/class_10678 net/minecraft/registry/ContextSwapper + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;Lnet/minecraft/class_7225$class_7874;)Lcom/mojang/serialization/DataResult; method_67092 swapContext + c Recreates a value based on a new registry context (for example, for use in a\ndifferent world).\n\nThis is done by encoding the value using the old registry context and immediately\ndecoding it with the new one. + p 2 value + p 1 codec + p 3 registries +c net/minecraft/class_10659 net/minecraft/test/TestEnvironments + f Ljava/lang/String; field_56171 DEFAULT_ID + f Lnet/minecraft/class_5321; field_56172 DEFAULT + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_66932 of + p 0 id + m (Lnet/minecraft/class_7891;)V method_66933 bootstrap + p 0 registry +c net/minecraft/class_2960 net/minecraft/util/Identifier + c An identifier used to identify things. This is also known as "resource location",\n"namespaced ID", "location", or just "ID". This is a non-typed immutable object,\nand identifies things using a combination of namespace and path. Identifiers should\nalways be compared using {@link #equals} method, not {@code ==}.\n\n

Format

\n

Identifiers are formatted as {@code :}. If the namespace and colon\nare omitted, the namespace defaults to {@value #DEFAULT_NAMESPACE}.\n\n

The namespace and path must contain only ASCII lowercase letters ({@code\n[a-z]}), ASCII digits ({@code [0-9]}), or the characters {@code _}, {@code .}, and\n{@code -}. The path can also contain the standard path separator {@code\n/}. Uppercase letters cannot be used. When handling externally provided identifiers,\nit should use {@link #tryParse} instead of the constructor. Another common\nmistake is using a formatted string with {@code %d} or {@code %f} to construct an\nidentifier without specifying the locate explicitly, as they are not guaranteed to be\nASCII digits in certain locales. Use {@link String#format(Locale, String, Object[])}\nwith {@link java.util.Locale#ROOT} instead of {@link String#formatted}.\n\n

Namespace

\n

The namespace of an identifier identifies the origin of the thing.\nFor example, two mods to the game could both add an item with the ID "orange";\nthe namespace is used to differentiate the two. (The convention is to use the ID\nassigned to the mod as the namespace.)\n\n

A namespace only determines the source of an identifier, and does not determine its purpose; so long as\ntwo identifiers are used for different purposes, they can share the namespace and path.\nFor example, the identifier {@code minecraft:dirt} is shared by blocks and items.\nThere is no need to change the identifier to, say, {@code minecraft_block:dirt} or\n{@code minecraft_item:dirt}.\n\n

Several namespaces are reserved for vanilla use. While those identifiers can be used for\nreferencing and overwriting vanilla things, it is highly discouraged to use them to\nidentify your own, new things. For example, a modded block or a new biome added by\ndata packs should not use the reserved namespaces, but it's fine to use them when\nmodifying an existing biome under that namespace. The reserved namespaces are\n{@value #DEFAULT_NAMESPACE}, {@code brigadier}, and {@value #REALMS_NAMESPACE}.\n{@value #DEFAULT_NAMESPACE} is also the default namespace used when no namespace is\nprovided.\n\n

Path

\n

The path of the identifier identifies the thing within the namespace, such as\nbetween different items from the same mod. Additionally, this is sometimes used to\nrefer to a file path, such as in textures.\n\n

Creation

\n

There are many ways to create a new identifier:\n\n

    \n
  • {@link #of(String)} creates an identifier from a string in\n{@code :} format. If the colon is missing, the created identifier\nhas the namespace {@value #DEFAULT_NAMESPACE} and the argument is used as the path.\nWhen passed an invalid value, this throws {@link InvalidIdentifierException}.
  • \n
  • {@link #of(String, String)} creates an identifier from namespace and path.\nWhen passed an invalid value, this throws {@link InvalidIdentifierException}.
  • \n
  • {@link #ofVanilla(String)} creates an identifier in the {@value #DEFAULT_NAMESPACE}\nnamespace.
  • \n
  • {@link #tryParse(String)} creates an identifier from a string in\n{@code :} format. If the colon is missing, the created identifier\nhas the namespace {@value #DEFAULT_NAMESPACE} and the argument is used as the path.\nWhen passed an invalid value, this returns {@code null}.
  • \n
  • {@link #tryParse(String, String)} creates an identifier from namespace and path.\nWhen passed an invalid value, this returns {@code null}.
  • \n
  • {@link #fromCommandInput} reads an identifier from command input reader.\nWhen an invalid value is read, this throws {@link #COMMAND_EXCEPTION}.
  • \n
  • {@link #CODEC} can be used to serialize and deserialize an identifier using\nDataFixerUpper.
  • \n
\n\n

Using Identifier

\n

Identifiers identify several objects in the game. {@link\nnet.minecraft.registry.Registry} holds objects, such as blocks and items, that are\nidentified by an identifier. Textures are also identified using an identifier; such\nan identifier is represented as a file path with an extension, such as {@code\nminecraft:textures/entity/pig/pig.png}.\n\n

The string representation of the identifier ({@code :}) can be\nobtained by calling {@link #toString}. This always includes the namespace. An identifier\ncan be converted to a translation key using {@link #toTranslationKey(String)} method.\n\n

RegistryKey

\n

Identifier is not type-aware; {@code minecraft:tnt} could refer to a TNT block, a TNT\nitem, or a TNT entity. To identify a registered object uniquely, {@link\nnet.minecraft.registry.RegistryKey} can be used. A registry key is a combination\nof the registry's identifier and the object's identifier. + f Ljava/lang/String; field_13353 namespace + f Ljava/lang/String; field_13355 path + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_13354 COMMAND_EXCEPTION + f Ljava/lang/String; field_33381 DEFAULT_NAMESPACE + f Lcom/mojang/serialization/Codec; field_25139 CODEC + f Ljava/lang/String; field_33382 REALMS_NAMESPACE + f C field_33380 NAMESPACE_SEPARATOR + f Lnet/minecraft/class_9139; field_48267 PACKET_CODEC + m (Lnet/minecraft/class_2960;)I method_12833 compareTo + m (Ljava/lang/String;)Lnet/minecraft/class_2960; method_60654 of + p 0 id + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/class_2960; method_45134 withPath + p 1 pathFunction + m (Ljava/lang/String;)Lnet/minecraft/class_2960; method_48331 withSuffixedPath + p 1 suffix + m ()Ljava/lang/String; method_76041 toShortString + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_45135 validateNamespace + p 1 path + p 0 namespace + m ()Ljava/lang/String; method_12836 getNamespace + c {@return the namespace of the identifier}\n\n

This returns {@value #DEFAULT_NAMESPACE} for identifiers created without a namespace. + m ()Ljava/lang/String; method_43903 toShortTranslationKey + c {@return the short translation key, with the default namespace omitted if present} + m (Ljava/lang/String;)Lnet/minecraft/class_2960; method_45138 withPrefixedPath + p 1 prefix + m ()Ljava/lang/String; method_12832 getPath + c {@return the path of the identifier} + m (Ljava/lang/String;)Lnet/minecraft/class_2960; method_60656 ofVanilla + p 0 path + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_48747 toTranslationKey + c {@return the {@linkplain #toTranslationKey() long translation key} prefixed with\n{@code prefix} and a dot, and suffixed with a dot and {@code suffix}} + p 1 prefix + p 2 suffix + m (C)Z method_29185 isNamespaceCharacterValid + c {@return whether {@code character} is valid for use in identifier namespaces} + p 0 character + m (Ljava/lang/String;)Z method_20208 isPathValid + c {@return whether {@code path} can be used as an identifier's path} + p 0 path + m (Ljava/lang/String;)Lnet/minecraft/class_2960; method_45136 withPath + p 1 path + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2960; method_58274 fromCommandInputNonEmpty + p 0 reader + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_45137 validatePath + p 1 path + p 0 namespace + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; method_58275 readString + p 0 reader + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/class_2960; method_12835 fromCommandInput + p 0 reader + m (Ljava/lang/String;)Lnet/minecraft/class_2960; method_12829 tryParse + c {@return {@code id} parsed as an identifier, or {@code null} if it cannot be parsed}\n\n@see #tryParse(String, String) + p 0 id + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/lang/String;Ljava/lang/String;)V + p 2 path + p 1 namespace + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_2960; method_60655 of + p 0 namespace + p 1 path + m ()Ljava/lang/String; method_42094 toTranslationKey + c {@return the long translation key, without omitting the default namespace} + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_2960; method_43902 tryParse + c {@return an identifier from the provided {@code namespace} and {@code path}, or\n{@code null} if either argument is invalid}\n\n@see #tryParse(String) + p 1 path + p 0 namespace + m (Ljava/lang/String;C)Lnet/minecraft/class_2960; method_60935 trySplitOn + p 0 id + p 1 delimiter + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_2960; method_60936 ofValidated + p 1 path + p 0 namespace + m (Ljava/lang/String;)Z method_20209 isNamespaceValid + c {@return whether {@code namespace} can be used as an identifier's namespace} + p 0 namespace + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_29186 validate + p 0 id + m (Ljava/lang/String;)Ljava/lang/String; method_42093 toTranslationKey + c {@return the {@linkplain #toTranslationKey() long translation key} prefixed with\n{@code prefix} and a dot} + p 1 prefix + m (C)Z method_29184 isPathCharacterValid + c {@return whether {@code character} is valid for use in identifier paths} + p 0 character + m (C)Z method_12831 isCharValid + p 0 c + m (Ljava/lang/String;C)Lnet/minecraft/class_2960; method_12838 splitOn + p 0 id + p 1 delimiter + m ()Ljava/lang/String; method_36181 toUnderscoreSeparatedString + c {@return the string representation of the identifier with slashes and colons replaced\nwith underscores} + m (Ljava/lang/Object;)I compareTo compareTo + p 1 other +c net/minecraft/class_2963 net/minecraft/world/gen/feature/SingleStateFeatureConfig + f Lcom/mojang/serialization/Codec; field_24874 CODEC + f Lnet/minecraft/class_2680; field_13356 state + m (Lnet/minecraft/class_2963;)Lnet/minecraft/class_2680; method_28684 method_28684 + p 0 config + m (Lnet/minecraft/class_2680;)V + p 1 state +c net/minecraft/class_1632 net/minecraft/entity/mob/VindicatorEntity + f Ljava/lang/String; field_30504 JOHNNY_KEY + f Z field_57694 DEFAULT_JOHNNY + f Ljava/util/function/Predicate; field_19014 DIFFICULTY_ALLOWS_DOOR_BREAKING_PREDICATE + f Z field_7406 johnny + m (Lnet/minecraft/class_1267;)Z method_20007 method_20007 + p 0 difficulty + m ()Lnet/minecraft/class_5132$class_5133; method_26926 createVindicatorAttributes +c net/minecraft/class_1632$class_3761 net/minecraft/entity/mob/VindicatorEntity$BreakDoorGoal +c net/minecraft/class_1632$class_1633 net/minecraft/entity/mob/VindicatorEntity$TargetGoal + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_64467 method_64467 + p 0 target + p 1 world + m (Lnet/minecraft/class_1632;)V + p 1 vindicator +c net/minecraft/class_10660 net/minecraft/test/TestInstance + f Lnet/minecraft/class_10664; field_56177 data + f Lcom/mojang/serialization/Codec; field_56178 CODEC + m (Ljava/lang/String;Lnet/minecraft/class_5250;)Lnet/minecraft/class_5250; method_66959 getFormattedDescription + p 1 key + p 2 description + m ()I method_66969 getRequiredSuccesses + m ()I method_66965 getSetupTicks + m ()Lnet/minecraft/class_10664; method_66972 getData + m ()Lnet/minecraft/class_2561; method_66974 getStructureAndBatchDescription + m ()Lnet/minecraft/class_2561; method_66922 getDescription + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_66957 method_66957 + p 0 codec + m ()Lnet/minecraft/class_6880; method_66962 getEnvironment + m ()Lnet/minecraft/class_2960; method_66963 getStructure + m ()Lcom/mojang/serialization/MapCodec; method_66905 getCodec + m ()Z method_66967 isManualOnly + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_66960 registerAndGetDefault + p 0 registry + m ()Lnet/minecraft/class_5250; method_66912 getTypeDescription + m (Lnet/minecraft/class_4516;)V method_66907 start + p 1 context + m (Lnet/minecraft/class_2378;Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_66961 register + p 2 codec + p 1 id + p 0 registry + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/class_5250; method_66958 getFormattedDescription + p 1 key + p 2 description + m ()I method_66968 getMaxAttempts + m ()Lnet/minecraft/class_2470; method_66971 getRotation + m ()I method_66964 getMaxTicks + m ()Z method_66966 isRequired + m ()Z method_66970 requiresSkyAccess + m ()Lnet/minecraft/class_5250; method_66973 getFormattedTypeDescription + m (Lnet/minecraft/class_10664;)V + p 1 data +c net/minecraft/class_2953 net/minecraft/world/gen/feature/BonusChestFeature +c net/minecraft/class_11992 net/minecraft/server/dedicated/management/DedicatedServerSubmitter + f Lnet/minecraft/class_3176; field_62819 server + m (Lnet/minecraft/class_3176;)V + p 1 server +c net/minecraft/class_10661 net/minecraft/test/TestInstances + f Lnet/minecraft/class_5321; field_56179 ALWAYS_PASS + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_66975 of + p 0 id + m (Lnet/minecraft/class_7891;)V method_66976 bootstrap + p 0 registry +c net/minecraft/class_2954 net/minecraft/world/gen/feature/BlueIceFeature +c net/minecraft/class_11991 net/minecraft/server/dedicated/management/Submitter + m (Ljava/util/function/Supplier;)Ljava/util/concurrent/CompletableFuture; method_74495 submit + p 1 task + m (Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; method_74494 submit + p 1 task +c net/minecraft/class_1628 net/minecraft/entity/mob/SpiderEntity + f Lnet/minecraft/class_2940; field_7403 SPIDER_FLAGS + c The tracked flags of spiders. Only has the {@code 1} bit for {@linkplain\n#isClimbingWall() wall climbing}. + m ()Lnet/minecraft/class_5132$class_5133; method_26923 createSpiderAttributes + m ()Z method_7167 isClimbingWall + m (Z)V method_7166 setClimbingWall + p 1 climbing + m (Lnet/minecraft/class_1309;)Z method_56086 method_56086 + p 0 entity +c net/minecraft/class_1628$class_1629 net/minecraft/entity/mob/SpiderEntity$AttackGoal + m (Lnet/minecraft/class_1628;)V + p 1 spider +c net/minecraft/class_1628$class_1630 net/minecraft/entity/mob/SpiderEntity$SpiderData + f Lnet/minecraft/class_6880; field_7404 effect + m (Lnet/minecraft/class_5819;)V method_7168 setEffect + p 1 random +c net/minecraft/class_1628$class_1631 net/minecraft/entity/mob/SpiderEntity$TargetGoal + m (Lnet/minecraft/class_1628;Ljava/lang/Class;)V + p 2 targetEntityClass + p 1 spider +c net/minecraft/class_11990 net/minecraft/server/dedicated/management/handler/BanManagementHandlerImpl + f Lnet/minecraft/server/MinecraftServer; field_62817 server + f Lnet/minecraft/class_11805; field_62818 logger + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_11805;)V + p 1 server + p 2 logger +c net/minecraft/class_1627 net/minecraft/entity/mob/StrayEntity + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_5425;Lnet/minecraft/class_3730;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Z method_20686 canSpawn + p 0 type + p 1 world + p 2 spawnReason + p 3 pos + p 4 random +c net/minecraft/class_2955 net/minecraft/recipe/InputSlotFiller + f Ljava/util/List; field_52343 inputSlots + f Ljava/util/List; field_52344 slotsToReturn + f Lnet/minecraft/class_1661; field_13350 inventory + f Z field_52340 craftAll + f Lnet/minecraft/class_2955$class_9840; field_13348 handler + f I field_52342 height + f I field_52341 width + m (Lnet/minecraft/class_8786;Lnet/minecraft/class_9875;)Lnet/minecraft/class_1729$class_9885; method_61233 tryFill + p 2 finder + p 1 recipe + m (Ljava/util/List;ILjava/lang/Integer;III)V method_65782 method_65782 + p 3 slot + p 5 x + p 4 index + p 6 y + m (Lnet/minecraft/class_8786;Lnet/minecraft/class_9875;)V method_61235 fill + p 2 finder + p 1 recipe + m (Lnet/minecraft/class_2955$class_9840;Lnet/minecraft/class_1661;ZIILjava/util/List;Ljava/util/List;)V + p 7 slotsToReturn + p 6 inputSlots + p 5 height + p 4 width + p 3 craftAll + p 2 inventory + p 1 handler + m (Lnet/minecraft/class_1735;Lnet/minecraft/class_6880;I)I method_12824 fillInputSlot + p 1 slot + p 2 item + p 3 count + m (Lnet/minecraft/class_2955$class_9840;IILjava/util/List;Ljava/util/List;Lnet/minecraft/class_1661;Lnet/minecraft/class_8786;ZZ)Lnet/minecraft/class_1729$class_9885; method_61232 fill + p 3 inputSlots + p 2 height + p 1 width + p 0 handler + p 7 craftAll + p 6 recipe + p 5 inventory + p 4 slotsToReturn + p 8 creative + m (ILjava/util/List;)I method_65781 clampToMaxCount + p 1 entries + p 0 count + m ()I method_12823 getFreeInventorySlots + m ()Z method_12825 canReturnInputs + m ()V method_12822 returnInputs + m (IZ)I method_61231 calculateCraftAmount + p 2 match + p 1 forCraftAll +c net/minecraft/class_2955$class_9840 net/minecraft/recipe/InputSlotFiller$Handler + m (Lnet/minecraft/class_9875;)V method_61237 populateRecipeFinder + p 1 finder + m (Lnet/minecraft/class_8786;)Z method_61238 matches + p 1 entry + m ()V method_61236 clear +c net/minecraft/class_2956 net/minecraft/world/gen/structure/BuriedTreasureStructure + f Lcom/mojang/serialization/MapCodec; field_37790 CODEC + m (Lnet/minecraft/class_3195$class_7149;Lnet/minecraft/class_6626;)V method_41652 method_41652 + p 1 collector + m (Lnet/minecraft/class_6626;Lnet/minecraft/class_3195$class_7149;)V method_38672 addPieces + p 1 context + p 0 collector +c net/minecraft/class_10664 net/minecraft/test/TestData + f Lcom/mojang/serialization/MapCodec; field_56199 CODEC + f Lnet/minecraft/class_2470; comp_3544 rotation + f Ljava/lang/Object; comp_3539 environment + f Lnet/minecraft/class_2960; comp_3540 structure + f Z comp_3548 skyAccess + f I comp_3541 maxTicks + f I comp_3542 setupTicks + f Z comp_3543 required + f Z comp_3545 manualOnly + f I comp_3546 maxAttempts + f I comp_3547 requiredSuccesses + m (Ljava/lang/Object;Lnet/minecraft/class_2960;IIZ)V + p 3 maxTicks + p 4 setupTicks + p 5 required + p 1 environment + p 2 structure + m (Ljava/lang/Object;Lnet/minecraft/class_2960;IIZLnet/minecraft/class_2470;)V + p 1 environment + p 2 structure + p 3 maxTicks + p 4 setupTicks + p 5 required + p 6 rotation + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67048 method_67048 + p 0 instance + m (Ljava/util/function/Function;)Lnet/minecraft/class_10664; method_67049 applyToEnvironment + p 1 environmentFunction + m ()Ljava/lang/Object; comp_3539 environment + m ()Lnet/minecraft/class_2960; comp_3540 structure + m ()Lnet/minecraft/class_2470; comp_3544 rotation + m ()I comp_3541 maxTicks + m ()I comp_3542 setupTicks + m ()Z comp_3543 required + m ()Z comp_3545 manualOnly + m ()I comp_3546 maxAttempts + m ()I comp_3547 requiredSuccesses + m ()Z comp_3548 skyAccess + m (Ljava/lang/Object;Lnet/minecraft/class_2960;IIZLnet/minecraft/class_2470;ZIIZ)V + p 1 environment + p 2 structure + p 3 maxTicks + p 4 setupTicks + p 5 required + p 6 rotation + p 7 manualOnly + p 8 maxAttempts + p 9 requiredSuccesses + p 10 skyAccess +c net/minecraft/class_11996 net/minecraft/server/dedicated/management/handler/PropertiesManagementHandlerImpl + f Lnet/minecraft/class_11805; field_62827 logger + f Lnet/minecraft/class_3176; field_62826 server + m (Lnet/minecraft/class_3176;Lnet/minecraft/class_11805;)V + p 1 server + p 2 logger +c net/minecraft/class_10665 net/minecraft/test/TestEnvironmentDefinition + f Lcom/mojang/serialization/Codec; field_56200 CODEC + f Lcom/mojang/serialization/Codec; field_56201 ENTRY_CODEC + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_67052 method_67052 + p 0 codec + m (Lnet/minecraft/class_3218;)V method_67051 setup + p 1 world + m (Lnet/minecraft/class_3218;)V method_67054 teardown + p 1 world + m ()Lcom/mojang/serialization/MapCodec; method_67050 getCodec + m (Lnet/minecraft/class_2378;)Lcom/mojang/serialization/MapCodec; method_67053 registerAndGetDefault + p 0 registry +c net/minecraft/class_10665$class_10666 net/minecraft/test/TestEnvironmentDefinition$AllOf + f Lcom/mojang/serialization/MapCodec; field_56202 CODEC + f Ljava/util/List; comp_3549 definitions + m ([Lnet/minecraft/class_10665;)V + p 1 definitionTypes + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6880;)V method_67055 method_67055 + p 1 definition + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_6880;)V method_67057 method_67057 + p 1 definition + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67056 method_67056 + p 0 instance + m ()Ljava/util/List; comp_3549 definitions + m (Ljava/util/List;)V + p 1 definitions +c net/minecraft/class_10665$class_10670 net/minecraft/test/TestEnvironmentDefinition$TimeOfDay + f Lcom/mojang/serialization/MapCodec; field_56206 CODEC + f I comp_3556 time + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67066 method_67066 + p 0 instance + m ()I comp_3556 time + m (I)V + p 1 time +c net/minecraft/class_10665$class_10671 net/minecraft/test/TestEnvironmentDefinition$Weather + f Lcom/mojang/serialization/MapCodec; field_56207 CODEC + f Lnet/minecraft/class_10665$class_10671$class_10672; comp_3557 weather + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67067 method_67067 + p 0 instance + m ()Lnet/minecraft/class_10665$class_10671$class_10672; comp_3557 weather + m (Lnet/minecraft/class_10665$class_10671$class_10672;)V + p 1 weather +c net/minecraft/class_10665$class_10671$class_10672 net/minecraft/test/TestEnvironmentDefinition$Weather$State + f Lcom/mojang/serialization/Codec; field_56211 CODEC + f I field_56213 clearDuration + f Ljava/lang/String; field_56212 name + f Z field_56216 thundering + f I field_56214 rainDuration + f Z field_56215 raining + f Lnet/minecraft/class_10665$class_10671$class_10672; field_56209 RAIN + f Lnet/minecraft/class_10665$class_10671$class_10672; field_56208 CLEAR + f Lnet/minecraft/class_10665$class_10671$class_10672; field_56210 THUNDER + m (Ljava/lang/String;ILjava/lang/String;IIZZ)V + p 4 clearDuration + p 3 name + p 7 thundering + p 6 raining + p 5 rainDuration + m (Lnet/minecraft/class_3218;)V method_67069 apply + p 1 world +c net/minecraft/class_10665$class_10667 net/minecraft/test/TestEnvironmentDefinition$Function + f Lcom/mojang/serialization/MapCodec; field_56203 CODEC + f Lorg/slf4j/Logger; field_56204 LOGGER + f Ljava/util/Optional; comp_3551 teardownFunction + f Ljava/util/Optional; comp_3550 setupFunction + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67059 method_67059 + p 0 instance + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2960;)V method_67058 executeFunction + p 1 functionId + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2960;)V method_67060 method_67060 + p 1 functionId + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2960;)V method_67061 method_67061 + p 1 functionId + m ()Ljava/util/Optional; comp_3551 teardownFunction + m ()Ljava/util/Optional; comp_3550 setupFunction + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 setupFunction + p 2 teardownFunction +c net/minecraft/class_10665$class_10668 net/minecraft/test/TestEnvironmentDefinition$GameRules + f Lcom/mojang/serialization/MapCodec; field_56205 CODEC + f Lnet/minecraft/class_12280; comp_5194 gameRulesMap + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_12279;)V method_76328 method_76328 + p 2 rule + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_12279;)V method_76326 resetValue + p 2 rule + p 1 serverWorld + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_76327 method_76327 + p 0 instance + m ()Lnet/minecraft/class_12280; comp_5194 gameRulesMap + m (Lnet/minecraft/class_12280;)V + p 1 gameRulesMap +c net/minecraft/class_11995 net/minecraft/server/dedicated/management/handler/PlayerListManagementHandlerImpl + f Lnet/minecraft/class_11805; field_62824 logger + f Lnet/minecraft/class_3176; field_62825 server + m (Lcom/mojang/authlib/yggdrasil/ProfileResult;)Lnet/minecraft/class_11560; method_74505 method_74505 + p 0 result + m (Lnet/minecraft/class_3176;Lnet/minecraft/class_11805;)V + p 2 logger + p 1 server +c net/minecraft/class_10662 net/minecraft/test/TestBootstrap + f Ljoptsimple/OptionSpec; field_56185 REPORT + f Ljoptsimple/OptionSpec; field_56184 UNIVERSE + f Ljoptsimple/OptionSpec; field_56187 VERIFY + f Ljoptsimple/OptionSpec; field_56186 TESTS + f Ljava/lang/String; field_56181 DEFAULT_UNIVERSE + f Ljava/lang/String; field_56182 DEFAULT_WORLD + f Ljoptsimple/OptionParser; field_56183 PARSER + f Lorg/slf4j/Logger; field_56180 LOGGER + f Ljoptsimple/OptionSpec; field_56189 HELP + f Ljoptsimple/OptionSpec; field_56188 PACKS + m (Ljava/lang/String;Ljava/lang/String;)V method_66979 copyPacks + p 1 packDir + p 0 universe + m (Ljava/lang/String;)V method_66978 empty + p 0 path + m (Ljoptsimple/OptionSet;Ljoptsimple/OptionSpec;)Ljava/util/Optional; method_66980 get + p 0 options + p 1 option + m (Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_3283;Ljoptsimple/OptionSet;Ljava/lang/Thread;)Lnet/minecraft/class_6306; method_66977 method_66977 + p 3 thread + m ([Ljava/lang/String;Ljava/util/function/Consumer;)V method_66981 run + p 1 universeCallback + p 0 args +c net/minecraft/class_11994 net/minecraft/server/dedicated/management/handler/OperatorManagementHandlerImpl + f Lnet/minecraft/class_11805; field_62823 logger + f Lnet/minecraft/server/MinecraftServer; field_62822 server + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/class_11805;)V + p 2 logger + p 1 server +c net/minecraft/class_10663 net/minecraft/test/TestEntry + f Ljava/util/Map; comp_3535 tests + f Lnet/minecraft/class_5321; comp_3536 functionKey + f Ljava/util/function/Consumer; comp_3537 function + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_10664;Ljava/util/function/Consumer;)V + p 3 function + p 1 id + p 2 data + m (Ljava/util/Map;Lnet/minecraft/class_2960;Ljava/util/function/Consumer;)V + p 2 functionId + p 1 tests + p 3 function + m (Ljava/util/Map;Lnet/minecraft/class_5321;Ljava/util/function/Consumer;)V + p 3 function + p 1 tests + p 2 functionKey + m ()Ljava/util/Map; comp_3535 tests + m ()Ljava/util/function/Consumer; comp_3537 function + m ()Lnet/minecraft/class_5321; comp_3536 functionKey +c net/minecraft/class_11993 net/minecraft/server/dedicated/management/handler/GameRuleManagementHandlerImpl + f Lnet/minecraft/class_3176; field_62820 server + f Lnet/minecraft/class_11805; field_62821 logger + f Lnet/minecraft/class_1928; field_63174 gameRules + m (Lnet/minecraft/class_3176;Lnet/minecraft/class_11805;)V + p 2 logger + p 1 server +c net/minecraft/class_11999 net/minecraft/server/dedicated/management/RpcMethodNotFoundException + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/class_11998 net/minecraft/server/dedicated/management/InvalidRpcRequestException + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/class_11997 net/minecraft/server/dedicated/management/handler/ServerManagementHandlerImpl + f Lnet/minecraft/class_11805; field_62829 logger + f Lnet/minecraft/class_3176; field_62828 server + m (Lnet/minecraft/class_3176;Lnet/minecraft/class_11805;)V + p 1 server + p 2 logger +c net/minecraft/class_2924 net/minecraft/network/packet/s2c/query/QueryResponseS2CPacket + f Lnet/minecraft/class_6903; field_60330 OPS + f Lnet/minecraft/class_9139; field_48258 CODEC + f Lnet/minecraft/class_2926; comp_1272 metadata + m (Lnet/minecraft/class_2926;)V + p 1 metadata + m (Lnet/minecraft/class_2921;)V method_12671 apply + m ()Lnet/minecraft/class_2926; comp_1272 metadata +c net/minecraft/class_2925 net/minecraft/world/gen/carver/CaveCarver + m ()I method_16577 getMaxCaveCount + m (Lnet/minecraft/class_5873;Lnet/minecraft/class_6108;Lnet/minecraft/class_2791;Ljava/util/function/Function;Lnet/minecraft/class_6350;DDDFDLnet/minecraft/class_6643;Lnet/minecraft/class_2939$class_5874;)V method_12674 carveCave + p 1 context + p 2 config + p 15 mask + p 16 skipPredicate + p 5 aquiferSampler + p 3 chunk + p 4 posToBiome + m (Lnet/minecraft/class_5873;Lnet/minecraft/class_6108;Lnet/minecraft/class_2791;Ljava/util/function/Function;Lnet/minecraft/class_5819;Lnet/minecraft/class_6350;Lnet/minecraft/class_1923;Lnet/minecraft/class_6643;)Z method_35357 carve + m (DLnet/minecraft/class_5873;DDDI)Z method_33975 method_33975 + p 7 scaledRelativeZ + p 9 y + p 2 contextx + p 3 scaledRelativeX + p 5 scaledRelativeY + m (Lnet/minecraft/class_6108;Lnet/minecraft/class_5819;)Z method_35358 shouldCarve + m (DDDD)Z method_33974 isPositionExcluded + p 6 floorY + p 0 scaledRelativeX + p 4 scaledRelativeZ + p 2 scaledRelativeY + m (Lnet/minecraft/class_5873;Lnet/minecraft/class_6108;Lnet/minecraft/class_2791;Ljava/util/function/Function;JLnet/minecraft/class_6350;DDDDDFFFIIDLnet/minecraft/class_6643;Lnet/minecraft/class_2939$class_5874;)V method_12675 carveTunnels + p 12 z + p 14 horizontalScale + p 16 verticalScale + p 18 width + p 19 yaw + p 4 posToBiome + p 5 seed + p 7 aquiferSampler + p 8 x + p 10 y + p 1 context + p 2 config + p 3 chunk + p 20 pitch + p 21 branchStartIndex + p 22 branchCount + p 23 yawPitchRatio + p 25 mask + p 26 skipPredicate + m (Lnet/minecraft/class_5819;)F method_16576 getTunnelSystemWidth + p 1 random + m ()D method_16578 getTunnelSystemHeightWidthRatio +c net/minecraft/class_10690 net/minecraft/entity/projectile/thrown/LingeringPotionEntity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)V + p 1 world + p 2 owner + p 3 stack + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1799;)V + p 4 y + p 1 world + p 2 x + p 8 stack + p 6 z +c net/minecraft/class_2926 net/minecraft/server/ServerMetadata + c Represents metadata sent to the client. This describes the server's message of the day, online players and the protocol version. + f Lcom/mojang/serialization/Codec; field_42535 CODEC + f Z comp_1277 secureChatEnforced + f Lnet/minecraft/class_2561; comp_1273 description + f Ljava/util/Optional; comp_1275 version + f Ljava/util/Optional; comp_1274 players + f Ljava/util/Optional; comp_1276 favicon + m ()Z comp_1277 secureChatEnforced + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49092 method_49092 + p 0 instance + m ()Lnet/minecraft/class_2561; comp_1273 description + m ()Ljava/util/Optional; comp_1274 players + m ()Ljava/util/Optional; comp_1275 version + m ()Ljava/util/Optional; comp_1276 favicon + m (Lnet/minecraft/class_2561;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Z)V + p 1 description + p 2 players + p 3 version + p 4 favicon + p 5 secureChatEnforced +c net/minecraft/class_2926$class_2927 net/minecraft/server/ServerMetadata$Players + f I comp_1280 online + f Lcom/mojang/serialization/Codec; field_42540 CODEC + f Ljava/util/List; comp_1281 sample + f I comp_1279 max + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49095 method_49095 + p 0 instance + m ()I comp_1280 online + m (IILjava/util/List;)V + p 1 max + p 2 online + p 3 sample + m ()Ljava/util/List; comp_1281 sample + m ()I comp_1279 max +c net/minecraft/class_2926$class_8145 net/minecraft/server/ServerMetadata$Favicon + f Lcom/mojang/serialization/Codec; field_42538 CODEC + f Ljava/lang/String; field_42539 DATA_URI_PREFIX + f [B comp_1278 iconBytes + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_49094 method_49094 + p 0 uri + m (Lnet/minecraft/class_2926$class_8145;)Ljava/lang/String; method_49093 method_49093 + p 0 iconBytes + m ()[B comp_1278 iconBytes + m ([B)V + p 1 iconBytes +c net/minecraft/class_2926$class_2930 net/minecraft/server/ServerMetadata$Version + f Ljava/lang/String; comp_1282 gameVersion + f I comp_1283 protocolVersion + f Lcom/mojang/serialization/Codec; field_42542 CODEC + m ()Ljava/lang/String; comp_1282 gameVersion + m (Ljava/lang/String;I)V + p 1 gameVersion + p 2 protocolVersion + m ()Lnet/minecraft/class_2926$class_2930; method_49097 create + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49098 method_49098 + p 0 instance + m ()I comp_1283 protocolVersion +c net/minecraft/class_10693 net/minecraft/util/ModelAndTexture + f Lnet/minecraft/class_12079$class_10726; comp_3573 asset + f Ljava/lang/Object; comp_3572 model + m (Ljava/lang/Object;Lnet/minecraft/class_2960;)V + p 2 assetId + p 1 model + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;)Lcom/mojang/serialization/MapCodec; method_67154 createMapCodec + p 0 modelCodec + p 1 model + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67155 method_67155 + p 2 instance + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_9139; method_67156 createPacketCodec + p 0 modelPacketCodec + m ()Ljava/lang/Object; comp_3572 model + m ()Lnet/minecraft/class_12079$class_10726; comp_3573 asset + m (Ljava/lang/Object;Lnet/minecraft/class_12079$class_10726;)V + p 1 model + p 2 asset +c net/minecraft/class_2921 net/minecraft/network/listener/ClientQueryPacketListener + m (Lnet/minecraft/class_2924;)V method_12667 onResponse + p 1 packet +c net/minecraft/class_10694 net/minecraft/entity/spawn/MoonBrightnessSpawnCondition + f Lcom/mojang/serialization/MapCodec; field_56282 CODEC + f Lnet/minecraft/class_2096$class_2099; comp_3574 range + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67157 method_67157 + p 0 instance + m (Ljava/lang/Object;)Z test test + p 1 context + m (Lnet/minecraft/class_10701;)Z method_67158 test + m ()Lnet/minecraft/class_2096$class_2099; comp_3574 range + m (Lnet/minecraft/class_2096$class_2099;)V + p 1 range +c net/minecraft/class_2922 net/minecraft/world/gen/carver/ConfiguredCarver + f Lcom/mojang/serialization/Codec; field_24828 REGISTRY_CODEC + f Lcom/mojang/serialization/Codec; field_26755 LIST_CODEC + f Lnet/minecraft/class_2939; comp_330 carver + f Lcom/mojang/serialization/Codec; field_25832 CODEC + f Lnet/minecraft/class_5871; comp_331 config + m (Lnet/minecraft/class_2922;)Lnet/minecraft/class_2939; method_28612 method_28612 + p 0 configuredCarver + m (Lnet/minecraft/class_5873;Lnet/minecraft/class_2791;Ljava/util/function/Function;Lnet/minecraft/class_5819;Lnet/minecraft/class_6350;Lnet/minecraft/class_1923;Lnet/minecraft/class_6643;)Z method_12668 carve + p 1 context + p 2 chunk + p 3 posToBiome + p 4 random + p 5 aquiferSampler + p 6 pos + p 7 mask + m (Lnet/minecraft/class_2939;Lnet/minecraft/class_5871;)V + p 1 carver + p 2 config + m ()Lnet/minecraft/class_2939; comp_330 carver + m (Lnet/minecraft/class_5819;)Z method_12669 shouldCarve + p 1 random + m ()Lnet/minecraft/class_5871; comp_331 config +c net/minecraft/class_10691 net/minecraft/entity/projectile/thrown/SplashPotionEntity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)V + p 2 owner + p 1 world + p 3 stack + m (DFI)I method_67150 method_67150 + p 3 baseDuration + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1799;)V + p 4 y + p 2 x + p 1 world + p 8 stack + p 6 z +c net/minecraft/class_2923 net/minecraft/network/packet/s2c/query/PingResultS2CPacket + f Lnet/minecraft/class_9139; field_48254 CODEC + f J comp_2201 startTime + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2540;)V method_56022 write + p 1 buf + m (Lnet/minecraft/class_8763;)V method_12670 apply + m (J)V + p 1 startTime + m ()J comp_2201 startTime +c net/minecraft/class_10692 net/minecraft/entity/spawn/BiomeSpawnCondition + f Lcom/mojang/serialization/MapCodec; field_56281 CODEC + f Lnet/minecraft/class_6885; comp_3571 requiredBiomes + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67152 method_67152 + p 0 instance + m (Lnet/minecraft/class_10701;)Z method_67153 test + m (Ljava/lang/Object;)Z test test + p 1 context + m ()Lnet/minecraft/class_6885; comp_3571 requiredBiomes + m (Lnet/minecraft/class_6885;)V + p 1 requiredBiomes +c net/minecraft/class_10695 net/minecraft/entity/VariantSelectorProvider + m (Lnet/minecraft/class_10695$class_10697;I)Ljava/util/List; method_67160 createSingle + p 0 condition + p 1 priority + m (Ljava/util/function/Function;Ljava/util/List;Ljava/lang/Object;)V method_67161 method_67161 + p 2 entry + m ()Ljava/util/List; method_67126 getSelectors + m (Ljava/util/stream/Stream;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/util/stream/Stream; method_67163 select + p 1 providerGetter + p 2 context + p 0 entries + m (Ljava/util/stream/Stream;Ljava/util/function/Function;Lnet/minecraft/class_5819;Ljava/lang/Object;)Ljava/util/Optional; method_67162 select + p 2 random + p 3 context + p 0 entries + p 1 providerGetter + m (I)Ljava/util/List; method_67159 createFallback + p 0 priority +c net/minecraft/class_10695$class_10698 net/minecraft/entity/VariantSelectorProvider$UnwrappedSelector + f Ljava/util/Comparator; field_56283 PRIORITY_COMPARATOR + f I comp_3578 priority + f Lnet/minecraft/class_10695$class_10697; comp_3579 condition + f Ljava/lang/Object; comp_3577 entry + m ()I comp_3578 priority + m ()Ljava/lang/Object; comp_3577 entry + m ()Lnet/minecraft/class_10695$class_10697; comp_3579 condition + m (Ljava/lang/Object;ILnet/minecraft/class_10695$class_10697;)V + p 1 entry + p 2 priority + p 3 condition +c net/minecraft/class_10695$class_10697 net/minecraft/entity/VariantSelectorProvider$SelectorCondition + m (Ljava/lang/Object;)Z method_67166 method_67166 + p 0 context +c net/minecraft/class_10695$class_10696 net/minecraft/entity/VariantSelectorProvider$Selector + f Ljava/util/Optional; comp_3575 condition + f I comp_3576 priority + m (I)V + p 1 priority + m (Lnet/minecraft/class_10695$class_10697;I)V + p 1 condition + p 2 priority + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_67165 method_67165 + p 1 instance + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_67164 createCodec + p 0 conditionCodec + m ()Ljava/util/Optional; comp_3575 condition + m ()I comp_3576 priority + m (Ljava/util/Optional;I)V + p 1 condition + p 2 priority +c net/minecraft/class_10699 net/minecraft/entity/spawn/SpawnCondition + f Lcom/mojang/serialization/Codec; field_56284 CODEC + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_67167 method_67167 + p 0 codec + m ()Lcom/mojang/serialization/MapCodec; method_67151 getCodec +c net/minecraft/class_2940 net/minecraft/entity/data/TrackedData + f I comp_2327 id + f Lnet/minecraft/class_2941; comp_2328 dataType + m (ILnet/minecraft/class_2941;)V + p 1 id + p 2 dataType + m ()I comp_2327 id + m ()Lnet/minecraft/class_2941; comp_2328 dataType + m (Ljava/lang/Object;)Z equals equals + p 1 o +c net/minecraft/class_2941 net/minecraft/entity/data/TrackedDataHandler + m (Ljava/lang/Object;)Ljava/lang/Object; method_12714 copy + p 1 value + m (Lnet/minecraft/class_9139;)Lnet/minecraft/class_2941; method_56031 create + p 0 codec + m (I)Lnet/minecraft/class_2940; method_12717 create + p 1 id +c net/minecraft/class_2941$class_7394 net/minecraft/entity/data/TrackedDataHandler$ImmutableHandler +c net/minecraft/class_2935 net/minecraft/network/packet/c2s/query/QueryPingC2SPacket + f J field_13292 startTime + f Lnet/minecraft/class_9139; field_48257 CODEC + m (Lnet/minecraft/class_8740;)V method_12699 apply + m (Lio/netty/buffer/ByteBuf;)V + p 1 buf + m (Lio/netty/buffer/ByteBuf;)V method_56025 write + p 1 buf + m ()J method_12700 getStartTime + m (J)V + p 1 startTime +c net/minecraft/class_1603 net/minecraft/entity/ai/RangedAttackMob + m (Lnet/minecraft/class_1309;F)V method_7105 shootAt + p 1 target + p 2 pullProgress +c net/minecraft/class_2937 net/minecraft/network/packet/c2s/query/QueryRequestC2SPacket + f Lnet/minecraft/class_2937; field_48259 INSTANCE + f Lnet/minecraft/class_9139; field_48260 CODEC + m (Lnet/minecraft/class_2933;)V method_12701 apply +c net/minecraft/class_10682 net/minecraft/datafixer/fix/TooltipDisplayComponentFix + f Ljava/util/List; field_56252 HIDE_ADDITIONAL_TOOLTIP_COMPONENTS + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/util/Set;)Lcom/mojang/serialization/Dynamic; method_67109 fixComponent + p 1 id + p 0 dynamic + p 2 toHide + m (Ljava/util/Set;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67112 method_67112 + p 1 dynamic + m (Ljava/util/Set;Ljava/lang/String;Ljava/util/function/UnaryOperator;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67114 method_67114 + p 3 dynamicx + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/util/Set;Ljava/util/function/UnaryOperator;)Lcom/mojang/serialization/Dynamic; method_67110 fixComponent + p 0 dynamic + p 2 toHide + p 1 id + p 3 fixer + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/types/Type;Ljava/util/Set;Ljava/lang/String;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_67107 method_67107 + p 3 typedx + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_67104 method_67104 + p 4 typed + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67111 method_67111 + p 1 dynamicx + m (Ljava/util/Set;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_67113 method_67113 + p 2 dynamic + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; method_67105 fix + p 3 canPlaceOnType + p 4 canBreakType + p 1 canPlaceOnOpticFinder + p 2 canBreakOpticFinder + p 0 typed + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;)Lcom/mojang/serialization/Dynamic; method_67108 fixAndInlineComponent + p 0 dynamic + p 1 id + p 2 toInline + p 3 toHide + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Ljava/lang/String;Ljava/util/Set;)Lcom/mojang/datafixers/Typed; method_67106 fixAdventureModePredicate + p 1 opticFinder + p 0 typed + p 3 id + p 2 type + p 4 toHide +c net/minecraft/class_10683 net/minecraft/datafixer/schema/Schema2511_1 +c net/minecraft/class_1606 net/minecraft/entity/mob/ShulkerEntity + f Lnet/minecraft/class_2350; field_57690 DEFAULT_ATTACHED_FACE + f Lnet/minecraft/class_1322; field_7342 COVERED_ARMOR_BONUS + f Lnet/minecraft/class_2338; field_7345 lastAttachedBlock + f B field_57689 DEFAULT_PEEK + f Lnet/minecraft/class_2940; field_7343 COLOR + f I field_7340 teleportLerpTimer + f Lorg/joml/Vector3f; field_33765 SOUTH_VECTOR + f Lnet/minecraft/class_2960; field_7341 COVERED_ARMOR_MODIFIER_ID + f F field_7337 openProgress + f F field_7339 lastOpenProgress + f Lnet/minecraft/class_2940; field_7344 ATTACHED_FACE + f Lnet/minecraft/class_2940; field_7346 PEEK_AMOUNT + m ()V method_31547 spawnNewShulker + m ()Z method_7124 isClosed + m (FLnet/minecraft/class_2350;FFLnet/minecraft/class_243;)Lnet/minecraft/class_238; method_33347 calculateBoundingBox + p 0 scale + p 1 facing + p 4 pos + p 2 lastExtraLength + p 3 extraLength + m ()Lnet/minecraft/class_2350; method_7119 getAttachedFace + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2350; method_24351 findAttachSide + p 1 pos + m (F)F method_7116 getOpenProgress + p 1 tickProgress + m (Lnet/minecraft/class_2350;)V method_35192 setAttachedFace + p 1 face + m ()I method_7115 getPeekAmount + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Z method_24350 canStay + p 1 pos + p 2 direction + m (FLnet/minecraft/class_2350;FLnet/minecraft/class_243;)Lnet/minecraft/class_238; method_33346 calculateBoundingBox + p 1 facing + p 2 extraLength + p 0 scale + p 3 pos + m ()Z method_33349 tickOpenProgress + m ()Z method_7127 tryTeleport + m (F)Lnet/minecraft/class_243; method_33352 getRenderPositionOffset + p 1 tickProgress + m ()Ljava/util/Optional; method_47881 getColorOptional + m (F)F method_33342 getExtraLength + p 0 openProgress + m (Ljava/util/Optional;)V method_47880 setColor + p 1 color + m ()Lnet/minecraft/class_1767; method_7121 getColor + m ()V method_33350 moveEntities + m ()Lnet/minecraft/class_5132$class_5133; method_26921 createShulkerAttributes + m (Lnet/minecraft/class_2338;)Z method_33351 isInvalidPosition + p 1 pos + m ()V method_33348 tryAttachOrTeleport + m (I)V method_7122 setPeekAmount + p 1 peekAmount + m (Lnet/minecraft/class_1767;)Ljava/lang/Byte; method_47879 method_47879 + p 0 color +c net/minecraft/class_1606$class_1608 net/minecraft/entity/mob/ShulkerEntity$ShulkerBodyControl +c net/minecraft/class_1606$class_1609 net/minecraft/entity/mob/ShulkerEntity$TargetOtherTeamGoal + c A target goal on other teams' entities if this shulker belongs\nto a team. + m (Lnet/minecraft/class_1309;Lnet/minecraft/class_3218;)Z method_7129 method_7129 + p 0 entity + p 1 world + m (Lnet/minecraft/class_1606;)V + p 1 shulker +c net/minecraft/class_1606$class_1607 net/minecraft/entity/mob/ShulkerEntity$ShootBulletGoal + f I field_7347 counter +c net/minecraft/class_1606$class_6376 net/minecraft/entity/mob/ShulkerEntity$ShulkerLookControl + m (Lnet/minecraft/class_1606;Lnet/minecraft/class_1308;)V + p 2 entity +c net/minecraft/class_1606$class_1611 net/minecraft/entity/mob/ShulkerEntity$PeekGoal + f I field_7352 counter +c net/minecraft/class_1606$class_1610 net/minecraft/entity/mob/ShulkerEntity$TargetPlayerGoal + c A hostile target goal on players. + m (Lnet/minecraft/class_1606;Lnet/minecraft/class_1606;)V + p 2 shulker +c net/minecraft/class_2933 net/minecraft/network/listener/ServerQueryPacketListener + m (Lnet/minecraft/class_2937;)V method_12698 onRequest + p 1 packet +c net/minecraft/class_10680 net/minecraft/datafixer/fix/ThrownPotionSplitFix +c net/minecraft/class_2934 net/minecraft/world/gen/carver/NetherCaveCarver + m (Lnet/minecraft/class_5873;Lnet/minecraft/class_6108;Lnet/minecraft/class_2791;Ljava/util/function/Function;Lnet/minecraft/class_6643;Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_6350;Lorg/apache/commons/lang3/mutable/MutableBoolean;)Z method_35359 carveAtPoint +c net/minecraft/class_1604 net/minecraft/entity/mob/PillagerEntity + f Lnet/minecraft/class_1277; field_7335 inventory + f Lnet/minecraft/class_2940; field_7334 CHARGING + m ()Lnet/minecraft/class_5132$class_5133; method_26919 createPillagerAttributes + m ()Z method_7108 isCharging + m (Lnet/minecraft/class_1799;)Z method_7111 isRaidCaptain + p 1 stack +c net/minecraft/class_10686 net/minecraft/entity/passive/CatVariants + f Lnet/minecraft/class_5321; field_56262 SIAMESE + f Lnet/minecraft/class_5321; field_56263 BRITISH_SHORTHAIR + f Lnet/minecraft/class_5321; field_56264 CALICO + f Lnet/minecraft/class_5321; field_56265 PERSIAN + f Lnet/minecraft/class_5321; field_56266 RAGDOLL + f Lnet/minecraft/class_5321; field_56267 WHITE + f Lnet/minecraft/class_5321; field_56268 JELLIE + f Lnet/minecraft/class_5321; field_56269 ALL_BLACK + f Lnet/minecraft/class_5321; field_56260 BLACK + f Lnet/minecraft/class_5321; field_56261 RED + f Lnet/minecraft/class_5321; field_56259 TABBY + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_67130 of + p 0 id + m (Lnet/minecraft/class_7891;)V method_67131 bootstrap + p 0 registry + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Ljava/lang/String;Lnet/minecraft/class_10702;)V method_67133 register + p 1 key + p 0 registry + p 3 spawnConditions + p 2 assetId + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Ljava/lang/String;)V method_67132 register + p 1 key + p 2 assetId + p 0 registry +c net/minecraft/class_10687 net/minecraft/entity/passive/AnimalTemperature + f Lnet/minecraft/class_2960; field_56273 COLD + f Lnet/minecraft/class_2960; field_56272 WARM + f Lnet/minecraft/class_2960; field_56271 TEMPERATE +c net/minecraft/class_10684 net/minecraft/datafixer/schema/Schema4306 +c net/minecraft/class_10685 net/minecraft/datafixer/schema/Schema4307 +c net/minecraft/class_2939 net/minecraft/world/gen/carver/Carver + f Lnet/minecraft/class_2680; field_13301 AIR + f Lcom/mojang/serialization/MapCodec; field_24831 codec + f Ljava/util/Set; field_13298 carvableFluids + f Lnet/minecraft/class_3610; field_13305 WATER + f Lnet/minecraft/class_2680; field_13294 CAVE_AIR + f Lnet/minecraft/class_3610; field_13296 LAVA + f Lnet/minecraft/class_2939; field_13295 RAVINE + f Lnet/minecraft/class_2939; field_29060 CAVE + f Lnet/minecraft/class_2939; field_13297 NETHER_CAVE + m (Lnet/minecraft/class_5873;Lnet/minecraft/class_5871;Lnet/minecraft/class_2791;Ljava/util/function/Function;Lnet/minecraft/class_6643;Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_6350;Lorg/apache/commons/lang3/mutable/MutableBoolean;)Z method_16581 carveAtPoint + p 1 context + p 2 config + p 3 chunk + p 4 posToBiome + p 5 mask + p 6 pos + p 7 tmp + p 8 aquiferSampler + p 9 replacedGrassy + m (Lnet/minecraft/class_5871;)Lnet/minecraft/class_2922; method_28614 configure + p 1 config + m (Lnet/minecraft/class_5871;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_36417 getDebugState + p 0 config + p 1 state + m (Ljava/lang/String;Lnet/minecraft/class_2939;)Lnet/minecraft/class_2939; method_12704 register + p 0 name + p 1 carver + m ()Lcom/mojang/serialization/MapCodec; method_28616 getCodec + m (Lnet/minecraft/class_5873;Lnet/minecraft/class_5871;Lnet/minecraft/class_2791;Ljava/util/function/Function;Lnet/minecraft/class_5819;Lnet/minecraft/class_6350;Lnet/minecraft/class_1923;Lnet/minecraft/class_6643;)Z method_12702 carve + p 1 context + p 4 posToBiome + p 5 random + p 2 config + p 3 chunk + p 8 mask + p 6 aquiferSampler + p 7 pos + m (Lnet/minecraft/class_2791;Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_2680;)V method_39116 method_39116 + p 2 state + m (Lnet/minecraft/class_5871;Lnet/minecraft/class_5819;)Z method_12705 shouldCarve + p 1 config + p 2 random + m (Lcom/mojang/serialization/Codec;)V + p 1 configCodec + m (Lnet/minecraft/class_5871;Lnet/minecraft/class_2680;)Z method_12709 canAlwaysCarveBlock + p 2 state + p 1 config + m (Lnet/minecraft/class_5873;Lnet/minecraft/class_5871;Lnet/minecraft/class_2791;Ljava/util/function/Function;Lnet/minecraft/class_6350;DDDDDLnet/minecraft/class_6643;Lnet/minecraft/class_2939$class_5874;)Z method_33978 carveRegion + p 12 width + p 10 z + p 16 mask + p 1 context + p 17 skipPredicate + p 14 height + p 4 posToBiome + p 5 aquiferSampler + p 2 config + p 3 chunk + p 8 y + p 6 x + m ()I method_12710 getBranchFactor + m (Lnet/minecraft/class_5871;)Z method_33980 isDebug + p 0 config + m (Lnet/minecraft/class_1923;DDIIF)Z method_33976 canCarveBranch + p 5 branchIndex + p 6 branchCount + p 3 z + p 7 baseWidth + p 1 x + p 0 pos + m (Lnet/minecraft/class_5873;Lnet/minecraft/class_5871;Lnet/minecraft/class_2338;Lnet/minecraft/class_6350;)Lnet/minecraft/class_2680; method_36418 getState + p 2 config + p 3 pos + p 1 context + p 4 sampler +c net/minecraft/class_2939$class_5874 net/minecraft/world/gen/carver/Carver$SkipPredicate + m (Lnet/minecraft/class_5873;DDDI)Z shouldSkip shouldSkip + p 6 scaledRelativeZ + p 8 y + p 2 scaledRelativeX + p 1 context + p 4 scaledRelativeY +c net/minecraft/class_10689 net/minecraft/entity/passive/FrogVariants + f Lnet/minecraft/class_5321; field_56278 TEMPERATE + f Lnet/minecraft/class_5321; field_56279 WARM + f Lnet/minecraft/class_5321; field_56280 COLD + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_67143 of + p 0 id + m (Lnet/minecraft/class_7891;)V method_67145 bootstrap + p 0 registry + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Ljava/lang/String;Lnet/minecraft/class_10702;)V method_67147 register + p 1 key + p 0 registry + p 3 spawnConditions + p 2 assetId + m (Lnet/minecraft/class_7891;Lnet/minecraft/class_5321;Ljava/lang/String;Lnet/minecraft/class_6862;)V method_67146 register + p 0 registry + p 2 assetId + p 1 key + p 3 requiredBiomes +c net/minecraft/class_11959 net/minecraft/client/render/block/entity/state/ChestBlockEntityRenderState + f F field_62695 yaw + f Lnet/minecraft/class_11959$class_11960; field_62696 variant + f F field_62694 lidAnimationProgress + f Lnet/minecraft/class_2745; field_62693 chestType +c net/minecraft/class_11959$class_11960 net/minecraft/client/render/block/entity/state/ChestBlockEntityRenderState$Variant + f Lnet/minecraft/class_11959$class_11960; field_62703 COPPER_OXIDIZED + f Lnet/minecraft/class_11959$class_11960; field_62702 COPPER_WEATHERED + f Lnet/minecraft/class_11959$class_11960; field_62704 REGULAR + f Lnet/minecraft/class_11959$class_11960; field_62701 COPPER_EXPOSED + f Lnet/minecraft/class_11959$class_11960; field_62700 COPPER_UNAFFECTED + f Lnet/minecraft/class_11959$class_11960; field_62698 CHRISTMAS + f Lnet/minecraft/class_11959$class_11960; field_62697 ENDER_CHEST + f Lnet/minecraft/class_11959$class_11960; field_62699 TRAPPED +c net/minecraft/class_10626 net/minecraft/datafixer/schema/Schema4301 +c net/minecraft/class_11958 net/minecraft/client/render/block/entity/state/CampfireBlockEntityRenderState + f Lnet/minecraft/class_2350; field_62692 facing + f Ljava/util/List; field_62691 cookedItemStates +c net/minecraft/class_10627 net/minecraft/datafixer/schema/Schema4302 +c net/minecraft/class_11957 net/minecraft/client/render/block/entity/state/BrushableBlockEntityRenderState + f I field_62689 dusted + f Lnet/minecraft/class_2350; field_62690 face + f Lnet/minecraft/class_10444; field_62688 itemRenderState +c net/minecraft/class_7803 net/minecraft/data/recipe/VanillaRecipeGenerator + f Lcom/google/common/collect/ImmutableList; field_40658 REDSTONE_ORES + f Lcom/google/common/collect/ImmutableList; field_40657 LAPIS_ORES + f Lcom/google/common/collect/ImmutableList; field_40659 EMERALD_ORES + f Lcom/google/common/collect/ImmutableList; field_40652 COAL_ORES + f Lcom/google/common/collect/ImmutableList; field_40654 COPPER_ORES + f Lcom/google/common/collect/ImmutableList; field_40653 IRON_ORES + f Lcom/google/common/collect/ImmutableList; field_40656 DIAMOND_ORES + f Lcom/google/common/collect/ImmutableList; field_40655 GOLD_ORES + m (Lnet/minecraft/class_1792;)V method_62771 method_62771 + p 1 item + m ()V method_64541 generateDyedBundles + m (Lnet/minecraft/class_7803$class_8905;)V method_51695 method_51695 + p 1 template + m ()Ljava/util/stream/Stream; method_51694 streamSmithingTemplates + m ()V method_64384 generateDyedShulkerBoxes +c net/minecraft/class_7803$class_10116 net/minecraft/data/recipe/VanillaRecipeGenerator$Provider +c net/minecraft/class_7803$class_8905 net/minecraft/data/recipe/VanillaRecipeGenerator$SmithingTemplate + f Lnet/minecraft/class_1792; comp_2012 template + f Lnet/minecraft/class_5321; comp_3630 patternId + f Lnet/minecraft/class_5321; comp_3631 recipeId + m ()Lnet/minecraft/class_1792; comp_2012 template + m ()Lnet/minecraft/class_5321; comp_3631 recipeId + m ()Lnet/minecraft/class_5321; comp_3630 patternId + m (Lnet/minecraft/class_1792;Lnet/minecraft/class_5321;Lnet/minecraft/class_5321;)V + p 1 template + p 2 patternId + p 3 recipeId +c net/minecraft/class_7800 net/minecraft/recipe/book/RecipeCategory + f Ljava/lang/String; field_40643 name + f Lnet/minecraft/class_7800; field_40641 BREWING + f Lnet/minecraft/class_7800; field_40640 FOOD + f Lnet/minecraft/class_7800; field_40642 MISC + f Lnet/minecraft/class_7800; field_40635 DECORATIONS + f Lnet/minecraft/class_7800; field_40634 BUILDING_BLOCKS + f Lnet/minecraft/class_7800; field_40637 TRANSPORTATION + f Lnet/minecraft/class_7800; field_40636 REDSTONE + f Lnet/minecraft/class_7800; field_40639 COMBAT + f Lnet/minecraft/class_7800; field_40638 TOOLS + m ()Ljava/lang/String; method_46203 getName + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name +c net/minecraft/class_11963 net/minecraft/client/render/block/entity/state/DecoratedPotBlockEntityRenderState + f F field_62715 wobbleAnimationProgress + f Lnet/minecraft/class_8172$class_8837; field_62714 wobbleType + f Lnet/minecraft/class_2350; field_62717 facing + f Lnet/minecraft/class_8526; field_62716 sherds +c net/minecraft/class_10631 net/minecraft/block/TestBlock + f Lcom/mojang/serialization/MapCodec; field_55989 CODEC + f Lnet/minecraft/class_2754; field_55990 MODE + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_10637; method_66712 getBlockEntityOnServer + p 0 world + p 1 pos + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_10641;)Lnet/minecraft/class_1799; method_66711 applyBlockStateToStack + p 1 mode + p 0 stack +c net/minecraft/class_11962 net/minecraft/client/render/block/entity/state/CopperGolemStatueBlockEntityRenderState + f Lnet/minecraft/class_11583$class_11584; field_62711 pose + f Lnet/minecraft/class_2350; field_62712 facing +c net/minecraft/class_10632 net/minecraft/block/TestInstanceBlock + f Lcom/mojang/serialization/MapCodec; field_55991 CODEC +c net/minecraft/class_11961 net/minecraft/client/render/block/entity/state/ConduitBlockEntityRenderState + f F field_62706 ticks + f I field_62709 rotationPhase + f F field_62708 rotation + f Z field_62707 active + f Z field_62710 eyeOpen +c net/minecraft/class_10630 net/minecraft/entity/EntityEquipment + f Ljava/util/EnumMap; field_55944 map + f Lcom/mojang/serialization/Codec; field_55943 CODEC + m (Lnet/minecraft/class_10630;)Ljava/util/Map; method_66658 method_66658 + p 0 equipment + m (Lnet/minecraft/class_1297;)V method_67512 tick + p 1 entity + m (Lnet/minecraft/class_1304;)Lnet/minecraft/class_1799; method_66659 get + p 1 slot + m (Ljava/util/EnumMap;)V + p 1 map + m (Lnet/minecraft/class_10630;)V method_67513 copyFrom + p 1 equipment + m ()Z method_66657 isEmpty + m (Ljava/util/Map;)Lnet/minecraft/class_10630; method_66661 method_66661 + p 0 map + m (Lnet/minecraft/class_1309;)V method_67514 dropAll + p 1 entity + m ()V method_67515 clear + m (Lnet/minecraft/class_1304;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_66660 put + p 1 slot + m (Lnet/minecraft/class_1304;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799; method_67516 method_67516 + p 0 slot + p 1 stack +c net/minecraft/class_11967 net/minecraft/client/render/block/entity/state/LecternBlockEntityRenderState + f F field_62728 bookRotationDegrees + f Z field_62727 hasBook +c net/minecraft/class_11966 net/minecraft/client/render/block/entity/state/EndPortalBlockEntityRenderState + f Ljava/util/EnumSet; field_62726 sides +c net/minecraft/class_11965 net/minecraft/client/render/block/entity/state/EndGatewayBlockEntityRenderState + f F field_62723 beamHeight + f F field_62725 beamRotationDegrees + f I field_62722 beamSpan + f I field_62724 beamColor +c net/minecraft/class_10633 net/minecraft/block/entity/BeamEmitter + m ()Ljava/util/List; method_10937 getBeamSegments +c net/minecraft/class_10633$class_2581 net/minecraft/block/entity/BeamEmitter$BeamSegment + f I field_11804 height + f I field_11805 color + m ()I method_10944 getColor + m ()V method_10942 increaseHeight + m (I)V + p 1 color + m ()I method_10943 getHeight +c net/minecraft/class_11964 net/minecraft/client/render/block/entity/state/EnchantingTableBlockEntityRenderState + f F field_62719 bookRotationDegrees + f F field_62718 ticks + f F field_62720 pageAngle + f F field_62721 pageTurningSpeed +c net/minecraft/class_10634 net/minecraft/block/entity/StructureBoxRendering + m ()Lnet/minecraft/class_10634$class_10636; method_66714 getStructureBox + m ()Lnet/minecraft/class_10634$class_10635; method_66713 getRenderMode +c net/minecraft/class_10634$class_10635 net/minecraft/block/entity/StructureBoxRendering$RenderMode + f Lnet/minecraft/class_10634$class_10635; field_55996 BOX_AND_INVISIBLE_BLOCKS + f Lnet/minecraft/class_10634$class_10635; field_55994 NONE + f Lnet/minecraft/class_10634$class_10635; field_55995 BOX +c net/minecraft/class_10634$class_10636 net/minecraft/block/entity/StructureBoxRendering$StructureBox + f Lnet/minecraft/class_2382; comp_3525 size + f Lnet/minecraft/class_2338; comp_3524 localPos + m (IIIIII)Lnet/minecraft/class_10634$class_10636; method_66716 create + p 5 maxZ + p 4 maxY + p 3 maxX + p 2 minZ + p 1 minY + p 0 minX + m ()Lnet/minecraft/class_2382; comp_3525 size + m ()Lnet/minecraft/class_2338; comp_3524 localPos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2382;)V + p 1 localPos + p 2 size +c net/minecraft/class_11949 net/minecraft/client/render/block/entity/state/BannerBlockEntityRenderState + f F field_62663 yaw + f F field_62662 pitch + f Z field_62664 standing + f Lnet/minecraft/class_1767; field_62660 dyeColor + f Lnet/minecraft/class_9307; field_62661 bannerPatterns +c net/minecraft/class_10618 net/minecraft/command/ArgumentGetter + m (Ljava/lang/Object;)Ljava/lang/Object; apply apply + p 1 context +c net/minecraft/class_11948 net/minecraft/client/render/block/entity/EndPortalBlockEntityRenderer + m ()Lnet/minecraft/class_11966; method_74393 createRenderState +c net/minecraft/class_10615 net/minecraft/network/packet/c2s/play/SetTestBlockC2SPacket + f Lnet/minecraft/class_9139; field_55918 CODEC + f Ljava/lang/String; comp_3515 message + f Lnet/minecraft/class_2338; comp_3513 position + f Lnet/minecraft/class_10641; comp_3514 mode + m (Lnet/minecraft/class_2792;)V method_66583 apply + m ()Lnet/minecraft/class_10641; comp_3514 mode + m ()Lnet/minecraft/class_2338; comp_3513 position + m ()Ljava/lang/String; comp_3515 message + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_10641;Ljava/lang/String;)V + p 1 position + p 2 mode + p 3 message +c net/minecraft/class_10616 net/minecraft/network/packet/c2s/play/TestInstanceBlockActionC2SPacket + f Lnet/minecraft/class_9139; field_55919 CODEC + f Lnet/minecraft/class_10638$class_10639; comp_3518 data + f Lnet/minecraft/class_2338; comp_3516 pos + f Lnet/minecraft/class_10616$class_10617; comp_3517 action + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_10616$class_10617;Ljava/util/Optional;Lnet/minecraft/class_2382;Lnet/minecraft/class_2470;Z)V + p 2 actin + p 1 pos + m (Lnet/minecraft/class_2792;)V method_66584 apply + m ()Lnet/minecraft/class_10616$class_10617; comp_3517 action + m ()Lnet/minecraft/class_10638$class_10639; comp_3518 data + m ()Lnet/minecraft/class_2338; comp_3516 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_10616$class_10617;Lnet/minecraft/class_10638$class_10639;)V + p 1 pos + p 2 action + p 3 data +c net/minecraft/class_10616$class_10617 net/minecraft/network/packet/c2s/play/TestInstanceBlockActionC2SPacket$Action + f Ljava/util/function/IntFunction; field_55928 INDEX_MAPPER + f Lnet/minecraft/class_9139; field_55927 CODEC + f I field_55929 index + f Lnet/minecraft/class_10616$class_10617; field_55926 RUN + f Lnet/minecraft/class_10616$class_10617; field_55920 INIT + f Lnet/minecraft/class_10616$class_10617; field_55921 QUERY + f Lnet/minecraft/class_10616$class_10617; field_55924 SAVE + f Lnet/minecraft/class_10616$class_10617; field_55925 EXPORT + f Lnet/minecraft/class_10616$class_10617; field_55922 SET + f Lnet/minecraft/class_10616$class_10617; field_55923 RESET + m (Lnet/minecraft/class_10616$class_10617;)I method_66587 method_66587 + p 0 action + m (Ljava/lang/String;II)V + p 3 index + m (Lnet/minecraft/class_10616$class_10617;)I method_66586 method_66586 + p 0 action +c net/minecraft/class_10619 net/minecraft/util/path/PathResolving + f Lorg/slf4j/Logger; field_55933 LOGGER + m (Ljava/net/URI;)Ljava/nio/file/Path; method_66590 toPath + p 0 uri +c net/minecraft/class_7804 net/minecraft/unused/packageinfo/PackageInfo7804 +c net/minecraft/class_10620 net/minecraft/datafixer/fix/EntityFallDistanceFloatToDoubleFix + f Lcom/mojang/datafixers/DSL$TypeReference; field_55934 typeReference + m (Lcom/mojang/datafixers/schemas/Schema;Lcom/mojang/datafixers/DSL$TypeReference;)V + p 1 outputSchema + p 2 typeReference + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_66600 fixFallDistance +c net/minecraft/class_11952 net/minecraft/client/render/block/entity/state/BedBlockEntityRenderState + f Lnet/minecraft/class_2350; field_62669 facing + f Z field_62670 headPart + f Lnet/minecraft/class_1767; field_62668 dyeColor +c net/minecraft/class_10621 net/minecraft/datafixer/fix/ItemVariantComponentizationFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66606 fixPainting + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66614 fixSalmonBucket + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66607 fixTropicalFishBucket + m (I)Ljava/lang/String; method_66609 getTropicalFishPatternColorName + p 0 variant + m (I)Ljava/lang/String; method_66603 getTropicalFishBaseColorName + p 0 variant + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66611 fixAxolotlBucket + m (I)Ljava/lang/String; method_66612 getTropicalFishPatternName + p 0 variant +c net/minecraft/class_10621$class_10622 net/minecraft/datafixer/fix/ItemVariantComponentizationFix$class_10622 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; apply apply +c net/minecraft/class_11950 net/minecraft/client/render/block/entity/state/BeaconBlockEntityRenderState + f F field_62665 beamRotationDegrees + f F field_62666 beamScale + f Ljava/util/List; field_62667 beamSegments +c net/minecraft/class_11950$class_11951 net/minecraft/client/render/block/entity/state/BeaconBlockEntityRenderState$BeamSegment + f I comp_4818 height + f I comp_4817 color + m ()I comp_4818 height + m ()I comp_4817 color + m (II)V + p 1 color + p 2 height +c net/minecraft/class_10624 net/minecraft/datafixer/fix/SaddleEquipmentSlotFix + f Ljava/util/Set; field_55936 FULL_SADDLE_STACK_ENTITY_IDS + f Ljava/util/Set; field_55937 BOOLEAN_SADDLE_ENTITY_IDS + f Ljava/lang/String; field_55939 NEW_NBT_KEY + f Ljava/lang/String; field_55938 OLD_NBT_KEY + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66627 fixBooleanSaddleEntity + p 0 nbt + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66626 fixFullSaddleStackEntity + p 0 nbt + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_66628 fixDropChances + p 0 nbt +c net/minecraft/class_10625 net/minecraft/datafixer/schema/Schema4300 +c net/minecraft/class_11955 net/minecraft/client/render/block/entity/state/StructureBlockBlockEntityRenderState + f Z field_62678 visible + f Lnet/minecraft/class_10634$class_10636; field_62680 structureBox + f [Lnet/minecraft/class_11955$class_11956; field_62681 invisibleBlocks + f Lnet/minecraft/class_10634$class_10635; field_62679 renderMode +c net/minecraft/class_11955$class_11956 net/minecraft/client/render/block/entity/state/StructureBlockBlockEntityRenderState$InvisibleRenderType + f Lnet/minecraft/class_11955$class_11956; field_62686 STRUCTURE_VOID + f Lnet/minecraft/class_11955$class_11956; field_62684 BARRIER + f Lnet/minecraft/class_11955$class_11956; field_62685 LIGHT + f Lnet/minecraft/class_11955$class_11956; field_62683 AIR +c net/minecraft/class_11954 net/minecraft/client/render/block/entity/state/BlockEntityRenderState + f Lnet/minecraft/class_2338; field_62673 pos + f Lnet/minecraft/class_11683$class_11792; field_62677 crumblingOverlay + f I field_62676 lightmapCoordinates + f Lnet/minecraft/class_2680; field_62674 blockState + f Lnet/minecraft/class_2591; field_62675 type + m (Lnet/minecraft/class_129;)V method_74400 populateCrashReport + p 1 crashReportSection + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_11954;Lnet/minecraft/class_11683$class_11792;)V method_74399 updateBlockEntityRenderState + p 1 state + p 0 blockEntity + p 2 crumblingOverlay +c net/minecraft/class_10623 net/minecraft/datafixer/fix/EquipmentFormatFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_11953 net/minecraft/client/render/block/entity/state/BellBlockEntityRenderState + f F field_62672 ringTicks + f Lnet/minecraft/class_2350; field_62671 shakeDirection +c net/minecraft/class_10648 net/minecraft/client/render/entity/model/HorseSaddleEntityModel + f Ljava/lang/String; field_56077 MOUTH_SADDLE_WRAP + f [Lnet/minecraft/class_630; field_56078 saddleLines + f Ljava/lang/String; field_56071 SADDLE + f Ljava/lang/String; field_56072 LEFT_SADDLE_MOUTH + f Ljava/lang/String; field_56073 LEFT_SADDLE_LINE + f Ljava/lang/String; field_56074 RIGHT_SADDLE_MOUTH + f Ljava/lang/String; field_56075 RIGHT_SADDLE_LINE + f Ljava/lang/String; field_56076 HEAD_SADDLE + m (Z)Lnet/minecraft/class_5607; method_66841 getUntransformedTexturedModelData + p 0 baby + m (Lnet/minecraft/class_10019;)V method_17085 setAngles + m (Z)Lnet/minecraft/class_5607; method_66840 getTexturedModelData + p 0 baby +c net/minecraft/class_11979 net/minecraft/particle/EffectParticleEffect + f I field_62764 color + f F field_62765 power + f Lnet/minecraft/class_2396; field_62763 type + m (Lnet/minecraft/class_2396;IF)V + p 2 color + p 1 type + p 3 power + m (Lnet/minecraft/class_11979;)Ljava/lang/Integer; method_74430 method_74430 + p 0 effect + m (Lnet/minecraft/class_2396;IF)Lnet/minecraft/class_11979; method_74419 of + p 1 color + p 2 power + p 0 type + m (Lnet/minecraft/class_11979;)Ljava/lang/Float; method_74422 method_74422 + p 0 effect + m (Lnet/minecraft/class_2396;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_74420 method_74420 + p 1 instance + m (Lnet/minecraft/class_11979;)Ljava/lang/Float; method_74428 method_74428 + p 0 effect + m ()F method_74423 getRed + m (Lnet/minecraft/class_2396;Ljava/lang/Integer;Ljava/lang/Float;)Lnet/minecraft/class_11979; method_74421 method_74421 + p 2 power + p 1 color + m (Lnet/minecraft/class_2396;FFFF)Lnet/minecraft/class_11979; method_74418 of + p 1 r + p 2 g + p 3 b + p 4 power + p 0 type + m (Lnet/minecraft/class_2396;)Lnet/minecraft/class_9139; method_74424 createPacketCodec + p 0 type + m ()F method_74431 getPower + m (Lnet/minecraft/class_2396;)Lcom/mojang/serialization/MapCodec; method_74417 createCodec + p 0 type + m (Lnet/minecraft/class_11979;)Ljava/lang/Integer; method_74426 method_74426 + p 0 effect + m ()F method_74429 getBlue + m ()F method_74427 getGreen + m (Lnet/minecraft/class_2396;Ljava/lang/Integer;Ljava/lang/Float;)Lnet/minecraft/class_11979; method_74425 method_74425 + p 1 color + p 2 power +c net/minecraft/class_10649 net/minecraft/client/render/block/entity/TestInstanceBlockEntityRenderer + f Lnet/minecraft/class_838; field_56094 structureBlockBlockEntityRenderer + f Lnet/minecraft/class_822; field_56093 beaconBlockEntityRenderer + m (Lnet/minecraft/class_10638$class_12034;)V method_74772 renderError + p 1 error + m (Lnet/minecraft/class_10638;Lnet/minecraft/class_243;)Z method_66846 isInRenderDistance + m (Lnet/minecraft/class_10638;Lnet/minecraft/class_11974;FLnet/minecraft/class_243;Lnet/minecraft/class_11683$class_11792;)V method_74390 updateRenderState + m ()Lnet/minecraft/class_11974; method_74389 createRenderState + m (Lnet/minecraft/class_11974;Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_66845 render +c net/minecraft/class_11980 net/minecraft/network/PacketApplyBatcher + f Z field_62770 closed + f Lorg/slf4j/Logger; field_62767 LOGGER + f Ljava/util/Queue; field_62768 entries + f Ljava/lang/Thread; field_62769 thread + m (Lnet/minecraft/class_2547;Lnet/minecraft/class_2596;)V method_74448 add + p 2 packet + p 1 listener + m ()V method_74449 apply + m (Ljava/lang/Thread;)V + p 1 thread + m ()Z method_74447 isOnThread +c net/minecraft/class_11980$class_11981 net/minecraft/network/PacketApplyBatcher$Entry + f Lnet/minecraft/class_2547; comp_4821 listener + f Lnet/minecraft/class_2596; comp_4822 packet + m ()V method_74450 apply + m ()Lnet/minecraft/class_2596; comp_4822 packet + m ()Lnet/minecraft/class_2547; comp_4821 listener + m (Lnet/minecraft/class_2547;Lnet/minecraft/class_2596;)V + p 1 listener + p 2 packet +c net/minecraft/class_11985 net/minecraft/network/packet/s2c/play/EventDebugS2CPacket + f Lnet/minecraft/class_9139; field_62780 PACKET_CODEC + f Lnet/minecraft/class_12017$class_12018; comp_4829 event + m (Lnet/minecraft/class_2602;)V method_74463 apply + m ()Lnet/minecraft/class_12017$class_12018; comp_4829 event + m (Lnet/minecraft/class_12017$class_12018;)V + p 1 event +c net/minecraft/class_10653 net/minecraft/client/render/item/property/select/ComponentSelectProperty + f Lnet/minecraft/class_10494$class_10495; field_56122 TYPE + f Lnet/minecraft/class_9331; comp_3532 componentType + m (Lnet/minecraft/class_9331;)Lcom/mojang/serialization/MapCodec; method_66860 method_66860 + p 0 componentType + m ()Lnet/minecraft/class_10494$class_10495; method_66864 createType + m (Lnet/minecraft/class_10451$class_10454;)Lnet/minecraft/class_9331; method_66859 method_66859 + p 0 unbakedSwitch + m ()Lnet/minecraft/class_10494$class_10495; method_66862 getTypeInstance + m (Lnet/minecraft/class_9331;Ljava/util/List;)Lnet/minecraft/class_10451$class_10454; method_66861 method_66861 + p 1 cases + m (Lnet/minecraft/class_9331;)Lcom/mojang/serialization/DataResult; method_66863 method_66863 + p 0 componentType + m ()Lnet/minecraft/class_9331; comp_3532 componentType + m (Lnet/minecraft/class_9331;)V + p 1 componentType +c net/minecraft/class_10654 net/minecraft/test/BlockBasedTestInstance + f Lcom/mojang/serialization/MapCodec; field_56162 CODEC + m (Lnet/minecraft/class_4516;Lnet/minecraft/class_10637;)V method_66908 method_66908 + p 1 testBlockEntity + m (Lnet/minecraft/class_4516;Lnet/minecraft/class_2338;)Lnet/minecraft/class_10637; method_67481 method_67481 + p 1 pos + m (Lnet/minecraft/class_4516;Lnet/minecraft/class_10641;Ljava/util/function/Consumer;)V method_66911 handleTrigger + p 3 callback + p 2 mode + p 1 context + m (Lnet/minecraft/class_4516;)Lnet/minecraft/class_2338; method_67482 findStartBlockPos + p 1 context + m (Lnet/minecraft/class_4516;Lnet/minecraft/class_10641;Ljava/util/List;Lnet/minecraft/class_2338;)V method_66910 method_66910 + p 3 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66906 method_66906 + p 0 instance + m (Lnet/minecraft/class_4516;Lnet/minecraft/class_10641;)Ljava/util/List; method_66914 findTestBlocks + p 2 mode + p 1 context +c net/minecraft/class_11984 net/minecraft/network/packet/s2c/play/EntityValueDebugS2CPacket + f Lnet/minecraft/class_9139; field_62779 PACKET_CODEC + f Lnet/minecraft/class_12017$class_12019; comp_4828 update + f I comp_4827 entityId + m (Lnet/minecraft/class_2602;)V method_74462 apply + m ()Lnet/minecraft/class_12017$class_12019; comp_4828 update + m ()I comp_4827 entityId + m (ILnet/minecraft/class_12017$class_12019;)V + p 1 entityId + p 2 update +c net/minecraft/class_11983 net/minecraft/network/packet/s2c/play/ChunkValueDebugS2CPacket + f Lnet/minecraft/class_9139; field_62778 PACKET_CODEC + f Lnet/minecraft/class_1923; comp_4825 chunkPos + f Lnet/minecraft/class_12017$class_12019; comp_4826 update + m (Lnet/minecraft/class_2602;)V method_74461 apply + m ()Lnet/minecraft/class_12017$class_12019; comp_4826 update + m ()Lnet/minecraft/class_1923; comp_4825 chunkPos + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_12017$class_12019;)V + p 1 chunkPos + p 2 update +c net/minecraft/class_11982 net/minecraft/network/packet/s2c/play/BlockValueDebugS2CPacket + f Lnet/minecraft/class_9139; field_62777 PACKET_CODEC + f Lnet/minecraft/class_12017$class_12019; comp_4824 update + f Lnet/minecraft/class_2338; comp_4823 blockPos + m (Lnet/minecraft/class_2602;)V method_74460 apply + m ()Lnet/minecraft/class_2338; comp_4823 blockPos + m ()Lnet/minecraft/class_12017$class_12019; comp_4824 update + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_12017$class_12019;)V + p 1 blockPos + p 2 update +c net/minecraft/class_10652 net/minecraft/client/render/entity/feature/SaddleFeatureRenderer + f Ljava/util/function/Function; field_56115 saddleStackGetter + f I field_61938 initialQueueOrder + f Lnet/minecraft/class_10186$class_10190; field_56114 layerType + f Lnet/minecraft/class_583; field_56117 babyModel + f Lnet/minecraft/class_583; field_56116 adultModel + f Lnet/minecraft/class_10197; field_56113 equipmentRenderer + m (Lnet/minecraft/class_4587;Lnet/minecraft/class_11659;ILnet/minecraft/class_10042;FF)V method_66856 render + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_10197;Lnet/minecraft/class_10186$class_10190;Ljava/util/function/Function;Lnet/minecraft/class_583;Lnet/minecraft/class_583;)V + p 5 adultModel + p 6 babyModel + p 1 context + p 2 equipmentRenderer + p 3 layerType + p 4 saddleStackGetter + m (Lnet/minecraft/class_3883;Lnet/minecraft/class_10197;Lnet/minecraft/class_10186$class_10190;Ljava/util/function/Function;Lnet/minecraft/class_583;Lnet/minecraft/class_583;I)V + p 6 babyModel + p 7 initialQueueOrder + p 1 context + p 2 equipmentRenderer + p 3 layerType + p 4 saddleStackGetter + p 5 adultModel +c net/minecraft/class_10657 net/minecraft/test/FunctionTestInstance + f Lcom/mojang/serialization/MapCodec; field_56166 CODEC + f Lnet/minecraft/class_5321; field_56167 function + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66921 method_66921 + p 0 instance + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_10664;)V + p 2 data + p 1 function + m ()Lnet/minecraft/class_5321; method_66923 getFunction +c net/minecraft/class_11988 net/minecraft/server/dedicated/management/handler/AllowlistManagementHandlerImpl + f Lnet/minecraft/class_3176; field_62804 server + f Lnet/minecraft/class_11805; field_62805 logger + m (Lnet/minecraft/class_3176;Lnet/minecraft/class_11805;)V + p 2 logger + p 1 server +c net/minecraft/class_10655 net/minecraft/test/BuiltinTestFunctions + f Ljava/util/function/Consumer; field_56164 ALWAYS_PASS_FUNCTION + f Lnet/minecraft/class_5321; field_56163 ALWAYS_PASS + m (Lnet/minecraft/class_2378;)Ljava/util/function/Consumer; method_66917 registerAndGetDefault + p 0 registry + m (Ljava/lang/String;)Lnet/minecraft/class_5321; method_66915 of + p 0 id +c net/minecraft/class_10656 net/minecraft/test/RuntimeTestInstances + f Ljava/util/Set; field_56165 INSTANCES + m ()Ljava/util/stream/Stream; method_66918 stream + m (Lnet/minecraft/class_6880$class_6883;)V method_66919 add + p 0 instance + m ()V method_66920 clear +c net/minecraft/class_11986 net/minecraft/network/packet/s2c/play/GameTestHighlightPosS2CPacket + f Lnet/minecraft/class_9139; field_62781 PACKET_CODEC + f Lnet/minecraft/class_2338; comp_4830 absolutePos + f Lnet/minecraft/class_2338; comp_4831 relativePos + m (Lnet/minecraft/class_2602;)V method_74469 apply + m ()Lnet/minecraft/class_2338; comp_4831 relativePos + m ()Lnet/minecraft/class_2338; comp_4830 absolutePos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)V + p 1 absolutePos + p 2 relativePos +c net/minecraft/class_11969 net/minecraft/client/render/block/entity/state/ShelfBlockEntityRenderState + f Z field_62735 alignItemsToBottom + f [Lnet/minecraft/class_10444; field_62734 itemRenderStates +c net/minecraft/class_10637 net/minecraft/block/entity/TestBlockEntity + f Z field_57801 DEFAULT_POWERED + f Lorg/slf4j/Logger; field_55998 LOGGER + f Ljava/lang/String; field_56000 message + f Lnet/minecraft/class_10641; field_55999 mode + f Ljava/lang/String; field_57800 DEFAULT_MESSAGE + f Z field_56001 powered + f Z field_56002 triggered + m ()Z method_66722 isPowered + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state + m (Z)V method_66721 setPowered + p 1 powered + m (Lnet/minecraft/class_10641;)V method_66719 setMode + p 1 mode + m ()Lnet/minecraft/class_2248; method_66730 getBlock + m ()Lnet/minecraft/class_10641; method_66723 getMode + m (Ljava/lang/String;)V method_66720 setMessage + p 1 message + m ()V method_66729 update + m ()Ljava/lang/String; method_66728 getMessage + m ()Lnet/minecraft/class_2622; method_66718 toUpdatePacket + m ()V method_66726 logMessage + m ()V method_66725 trigger + m ()V method_66724 reset + m ()Z method_66727 hasTriggered +c net/minecraft/class_11968 net/minecraft/client/render/block/entity/state/PistonBlockEntityRenderState + f F field_62731 offsetX + f F field_62732 offsetY + f Lnet/minecraft/class_11791; field_62729 pushedState + f Lnet/minecraft/class_11791; field_62730 extendedPistonState + f F field_62733 offsetZ +c net/minecraft/class_10638 net/minecraft/block/entity/TestInstanceBlockEntity + f Lnet/minecraft/class_10638$class_10639; field_56010 data + f Ljava/util/List; field_56006 SUCCESS_BEAM_SEGMENTS + f Ljava/util/List; field_62918 errors + f Lnet/minecraft/class_2382; field_56009 STRUCTURE_OFFSET + f Ljava/util/List; field_56005 RUNNING_BEAM_SEGMENTS + f Lnet/minecraft/class_2561; field_56003 INVALID_TEST_TEXT + f Ljava/util/List; field_56004 CLEARED_BEAM_SEGMENTS + f Ljava/util/List; field_56008 OPTIONAL_FAIL_BEAM_SEGMENTS + f Ljava/util/List; field_56007 REQUIRED_FAIL_BEAM_SEGMENTS + m ()Z method_66765 shouldIgnoreEntities + m ()Ljava/util/List; method_74681 getErrors + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2960;)Ljava/util/Optional; method_66741 method_66741 + p 1 structureId + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;ZLjava/util/function/Consumer;Lnet/minecraft/class_2338;)V method_66748 method_66748 + p 4 pos + m (Ljava/util/function/Consumer;)V method_66760 start + p 1 messageConsumer + m ()Lnet/minecraft/class_2470; method_66767 getRotation + m ()Ljava/util/Optional; method_66768 getErrorMessage + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2338; method_66747 getStructurePos + p 0 pos + m ()V method_66738 setChunksForced + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2561;)V method_74682 addError + p 2 message + p 1 pos + m ()V method_66734 clearBarriers + m ()Ljava/util/Optional; method_66763 getTestKey + m ()V method_66770 setRunning + m (Ljava/util/function/Consumer;)V method_66761 forEachPos + p 1 posConsumer + m ()Lnet/minecraft/class_2561; method_66764 getTestName + m (Ljava/util/function/Consumer;)Z method_66757 export + p 1 messageConsumer + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_2960;Ljava/util/function/Consumer;)Z method_66742 exportData + p 2 messageConsumer + p 1 structureId + p 0 world + m ()Ljava/util/Optional; method_66735 getTestEntry + m (Lnet/minecraft/class_2338;)V method_66758 method_66758 + p 1 pos + m (Lnet/minecraft/class_2561;)V method_66751 setErrorMessage + p 1 errorMessage + m (Lnet/minecraft/class_2338;)V method_66754 method_66754 + p 1 pos + m (Lnet/minecraft/class_10638$class_10639;)V method_66745 setData + p 1 data + m ()V method_74680 clearErrors + m (Lnet/minecraft/class_6880$class_6883;)Lnet/minecraft/class_2960; method_66755 method_66755 + p 0 entry + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1923;)V method_66743 method_66743 + p 1 pos + m ()Lnet/minecraft/class_2338; method_66732 getStartPos + m ()Z method_66731 placeStructure + m ()Lnet/minecraft/class_2622; method_66771 toUpdatePacket + m (Ljava/util/function/Consumer;)Ljava/util/Optional; method_66753 saveStructure + p 1 messageConsumer + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5321;)Ljava/util/Optional; method_66752 getStructureTemplate + p 1 testInstance + p 0 world + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5321;)Ljava/util/Optional; method_66740 getStructureSize + p 1 testInstance + p 0 world + m ()Lnet/minecraft/class_2382; method_66736 getTransformedSize + m ()Lnet/minecraft/class_2338; method_66772 getStructurePos + m (Ljava/util/function/Consumer;)V method_66746 reset + p 1 messageConsumer + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_5321;)Ljava/util/Optional; method_66756 method_66756 + p 1 template + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_2561; method_66739 method_66739 + p 0 key + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_3499;)V method_66744 placeStructure + p 1 world + p 2 template + m (Lnet/minecraft/class_1297;)Z method_67243 method_67243 + p 0 entity + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V + p 1 pos + p 2 state + m (Lnet/minecraft/class_6880$class_6883;)Ljava/lang/Boolean; method_66749 method_66749 + p 0 entry + m ()Lnet/minecraft/class_2382; method_66766 getSize + m ()V method_66737 discardEntities + m ()Lnet/minecraft/class_238; method_66762 getBox + m ()V method_66769 setFinished + m ()V method_66733 placeBarriers + m ()Lnet/minecraft/class_3341; method_66759 getBlockBox +c net/minecraft/class_10638$class_10639 net/minecraft/block/entity/TestInstanceBlockEntity$Data + f Lnet/minecraft/class_9139; field_56013 PACKET_CODEC + f Lcom/mojang/serialization/Codec; field_56012 CODEC + f Z comp_3529 ignoreEntities + f Lnet/minecraft/class_10638$class_10640; comp_3530 status + f Lnet/minecraft/class_2382; comp_3527 size + f Ljava/util/Optional; comp_3526 test + f Lnet/minecraft/class_2470; comp_3528 rotation + f Ljava/util/Optional; comp_3531 errorMessage + m (Lnet/minecraft/class_10638$class_10640;)Lnet/minecraft/class_10638$class_10639; method_66774 withStatus + p 1 status + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_10638$class_10639; method_66776 withErrorMessage + p 1 errorMessage + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66773 method_66773 + p 0 instance + m (Lnet/minecraft/class_2382;)Lnet/minecraft/class_10638$class_10639; method_66775 withSize + p 1 size + m ()Lnet/minecraft/class_2470; comp_3528 rotation + m ()Lnet/minecraft/class_2382; comp_3527 size + m ()Z comp_3529 ignoreEntities + m ()Lnet/minecraft/class_10638$class_10640; comp_3530 status + m ()Ljava/util/Optional; comp_3531 errorMessage + m ()Ljava/util/Optional; comp_3526 test + m (Ljava/util/Optional;Lnet/minecraft/class_2382;Lnet/minecraft/class_2470;ZLnet/minecraft/class_10638$class_10640;Ljava/util/Optional;)V + p 1 test + p 2 size + p 3 rotation + p 4 ignoreEntities + p 5 status + p 6 errorMessage +c net/minecraft/class_10638$class_10640 net/minecraft/block/entity/TestInstanceBlockEntity$Status + f Lnet/minecraft/class_9139; field_56018 PACKET_CODEC + f Ljava/lang/String; field_56020 id + f Lcom/mojang/serialization/Codec; field_56017 CODEC + f Ljava/util/function/IntFunction; field_56019 INDEX_MAPPER + f I field_56021 index + f Lnet/minecraft/class_10638$class_10640; field_56016 FINISHED + f Lnet/minecraft/class_10638$class_10640; field_56015 RUNNING + f Lnet/minecraft/class_10638$class_10640; field_56014 CLEARED + m (Lnet/minecraft/class_10638$class_10640;)I method_66780 method_66780 + p 0 status + m (I)Lnet/minecraft/class_10638$class_10640; method_66778 fromIndex + p 0 index + m (Lnet/minecraft/class_10638$class_10640;)I method_66779 method_66779 + p 0 status + m (Ljava/lang/String;ILjava/lang/String;I)V + p 4 index + p 3 id +c net/minecraft/class_10638$class_12034 net/minecraft/block/entity/TestInstanceBlockEntity$Error + f Lcom/mojang/serialization/Codec; field_62919 CODEC + f Lcom/mojang/serialization/Codec; field_62920 LIST_CODEC + f Lnet/minecraft/class_2561; comp_4877 text + f Lnet/minecraft/class_2338; comp_4876 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_74683 method_74683 + p 0 instance + m ()Lnet/minecraft/class_2561; comp_4877 text + m ()Lnet/minecraft/class_2338; comp_4876 pos + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2561;)V + p 1 pos + p 2 text +c net/minecraft/class_11970 net/minecraft/client/render/block/entity/state/ShulkerBoxBlockEntityRenderState + f F field_62738 animationProgress + f Lnet/minecraft/class_1767; field_62737 dyeColor + f Lnet/minecraft/class_2350; field_62736 facing +c net/minecraft/class_10642 net/minecraft/client/gui/screen/ingame/TestBlockScreen + f Ljava/util/List; field_56036 MODES + f Lnet/minecraft/class_2561; field_56037 TITLE_TEXT + f Lnet/minecraft/class_2561; field_56038 MESSAGE_TEXT + f Ljava/lang/String; field_56041 message + f Lnet/minecraft/class_10641; field_56040 mode + f Lnet/minecraft/class_2338; field_56039 pos + f Lnet/minecraft/class_342; field_56042 textField + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_10641;)V method_66795 method_66795 + p 2 mode + p 1 button + m (Lnet/minecraft/class_10637;)V + p 1 blockEntity + m (Lnet/minecraft/class_4185;)V method_66796 method_66796 + p 1 button + m (Lnet/minecraft/class_4185;)V method_66794 method_66794 + p 1 button + m ()V method_66797 onDone + m ()V method_66792 onCancel + m (Lnet/minecraft/class_10641;)V method_66793 setMode + p 1 mode +c net/minecraft/class_11974 net/minecraft/client/render/block/entity/state/TestInstanceBlockEntityRenderState + f Lnet/minecraft/class_11950; field_62753 beaconState + f Lnet/minecraft/class_11955; field_62754 structureState + f Ljava/util/List; field_62968 errors +c net/minecraft/class_10643 net/minecraft/client/gui/screen/ingame/TestInstanceBlockScreen + f Lnet/minecraft/class_2561; field_56050 ENTITIES_TEXT + f Lnet/minecraft/class_342; field_56057 sizeYField + f Lnet/minecraft/class_10638; field_56054 testInstanceBlockEntity + f Lnet/minecraft/class_8577; field_56043 statusWidget + f Lnet/minecraft/class_2561; field_56048 TEST_ID_TEXT + f Lnet/minecraft/class_4185; field_56045 exportButton + f Lnet/minecraft/class_5676; field_56047 rotationButton + f Lnet/minecraft/class_342; field_56056 sizeXField + f Lnet/minecraft/class_2561; field_56051 ROTATION_TEXT + f Lnet/minecraft/class_342; field_56058 sizeZField + f Lnet/minecraft/class_2561; field_56049 SIZE_TEXT + f Lnet/minecraft/class_4185; field_56044 saveButton + f Lnet/minecraft/class_5676; field_56046 entitiesButton + f Lnet/minecraft/class_342; field_56055 testIdTextField + m (Lnet/minecraft/class_5250;Lnet/minecraft/class_2561;)V method_66810 method_66810 + p 1 message + m (I)I method_66800 getRoundedWidth + p 0 total + m (Lnet/minecraft/class_4185;)V method_66817 method_66817 + p 1 button + m (Lnet/minecraft/class_10638;)V + p 1 testInstanceBlockEntity + m (II)I method_66801 getX + p 2 total + p 1 index + m (Ljava/lang/String;)V method_66813 method_66813 + p 1 value + m (Lnet/minecraft/class_2561;Ljava/util/Optional;)V method_66809 handleStatus + p 1 status + p 2 size + m (Lnet/minecraft/class_2470;)Lnet/minecraft/class_2561; method_66804 rotationAsText + p 0 rotation + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5321; method_66803 method_66803 + p 0 testId + m (Lnet/minecraft/class_4185;)V method_67262 method_67262 + p 1 button + m ()V method_66799 onCancel + m (Lnet/minecraft/class_4185;)V method_67264 method_67264 + p 1 button + m (I)F method_66811 getWidth + p 0 total + m (Lnet/minecraft/class_4185;)V method_66816 method_66816 + p 1 button + m (Lnet/minecraft/class_5676;Lnet/minecraft/class_2470;)V method_66806 method_66806 + p 2 rotation + p 1 button + m ()V method_66819 refresh + m (Lnet/minecraft/class_2382;)V method_66808 setSize + p 1 vec + m (Lnet/minecraft/class_4185;)V method_67263 method_67263 + p 1 button + m (Lnet/minecraft/class_4185;)V method_67261 method_67261 + p 1 button + m ()V method_66798 onDone + m (Ljava/lang/String;)I method_66807 parse + p 0 value + m (Z)V method_66815 refresh + p 1 initial + m (Lnet/minecraft/class_10616$class_10617;)Z method_66802 executeAction + p 1 action +c net/minecraft/class_11973 net/minecraft/client/render/block/entity/state/MobSpawnerBlockEntityRenderState + f Lnet/minecraft/class_10017; field_62750 displayEntityRenderState + f F field_62752 displayEntityScale + f F field_62751 displayEntityRotation +c net/minecraft/class_11972 net/minecraft/client/render/block/entity/state/SkullBlockEntityRenderState + f Lnet/minecraft/class_2484$class_2485; field_62748 skullType + f Lnet/minecraft/class_2350; field_62746 facing + f F field_62745 poweredTicks + f Lnet/minecraft/class_1921; field_62749 renderLayer + f F field_62747 yaw +c net/minecraft/class_11971 net/minecraft/client/render/block/entity/state/SignBlockEntityRenderState + f Z field_62744 renderTextOutline + f Lnet/minecraft/class_8242; field_62739 frontText + f I field_62741 textLineHeight + f Lnet/minecraft/class_8242; field_62740 backText + f I field_62742 maxTextWidth + f Z field_62743 filterText +c net/minecraft/class_10641 net/minecraft/block/enums/TestBlockMode + f Lnet/minecraft/class_9139; field_56029 PACKET_CODEC + f Ljava/lang/String; field_56032 id + f Lcom/mojang/serialization/Codec; field_56028 CODEC + f Lnet/minecraft/class_2561; field_56034 info + f I field_56031 index + f Ljava/util/function/IntFunction; field_56030 INDEX_MAPPER + f Lnet/minecraft/class_2561; field_56033 name + f Lnet/minecraft/class_10641; field_56026 FAIL + f Lnet/minecraft/class_10641; field_56025 LOG + f Lnet/minecraft/class_10641; field_56024 START + f Lnet/minecraft/class_10641; field_56027 ACCEPT + m ()Lnet/minecraft/class_2561; method_66783 getInfo + m ()Lnet/minecraft/class_2561; method_66781 getName + m (Ljava/lang/String;IILjava/lang/String;)V + p 4 id + p 3 index + m (Lnet/minecraft/class_10641;)I method_66782 method_66782 + p 0 mode + m (Lnet/minecraft/class_10641;)I method_66784 method_66784 + p 0 mode +c net/minecraft/class_11978 net/minecraft/particle/DragonBreathParticleEffect + f F field_62762 power + f Lnet/minecraft/class_2396; field_62761 type + m ()F method_74413 getPower + m (Lnet/minecraft/class_2396;F)V + p 1 type + p 2 power + m (Lnet/minecraft/class_11978;)Ljava/lang/Float; method_74416 method_74416 + p 0 effect + m (Lnet/minecraft/class_2396;)Lcom/mojang/serialization/MapCodec; method_74409 createCodec + p 0 type + m (Lnet/minecraft/class_2396;F)Lnet/minecraft/class_11978; method_74410 of + p 1 power + p 0 type + m (Lnet/minecraft/class_11978;)Ljava/lang/Float; method_74412 method_74412 + p 0 effect + m (Lnet/minecraft/class_2396;)Lnet/minecraft/class_9139; method_74414 createPacketCodec + p 0 type + m (Lnet/minecraft/class_2396;Ljava/lang/Float;)Lnet/minecraft/class_11978; method_74411 method_74411 + p 1 power + m (Lnet/minecraft/class_2396;Ljava/lang/Float;)Lnet/minecraft/class_11978; method_74415 method_74415 + p 1 power +c net/minecraft/class_11977 net/minecraft/client/render/command/LayeredCustomCommandRenderer + f Ljava/util/List; field_62990 usedBuffers + f Ljava/util/Queue; field_62989 availableBuffers + m (Lnet/minecraft/class_11788;)V method_74407 render + p 1 queue + m ()V method_74830 end + m (Lcom/mojang/blaze3d/systems/RenderPass;)V method_74831 submitRenderPass +c net/minecraft/class_11977$class_12051 net/minecraft/client/render/command/LayeredCustomCommandRenderer$VerticesCache + f Lnet/minecraft/class_11285; field_62991 ringBuffer + m (Ljava/nio/ByteBuffer;)V method_74835 write + m ()V method_74836 rotate + m ()Lcom/mojang/blaze3d/buffers/GpuBuffer; method_74834 get +c net/minecraft/class_10647 net/minecraft/client/render/entity/model/CamelSaddleEntityModel + f Lnet/minecraft/class_630; field_56069 reins + f Ljava/lang/String; field_56066 SADDLE + f Ljava/lang/String; field_56067 BRIDLE + f Ljava/lang/String; field_56068 REINS + m ()Lnet/minecraft/class_5607; method_66837 getTexturedModelData + m (Lnet/minecraft/class_10007;)V method_45706 setAngles +c net/minecraft/class_11976 net/minecraft/unused/packageinfo/PackageInfo11976 +c net/minecraft/class_10644 net/minecraft/command/argument/RegistrySelectorArgumentType + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_56060 NOT_FOUND_EXCEPTION + f Ljava/util/Collection; field_56061 EXAMPLES + f Lnet/minecraft/class_5321; field_56062 registryRef + f Lnet/minecraft/class_7225; field_56063 registry + m (Ljava/lang/String;)Ljava/lang/String; method_66826 addNamespace + p 0 path + m (Ljava/lang/String;Lnet/minecraft/class_6880$class_6883;)Z method_66828 method_66828 + p 1 entry + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_66825 method_66825 + p 0 selector + p 1 registryRef + m (Lcom/mojang/brigadier/StringReader;)Ljava/util/Collection; method_66821 parse + m (Ljava/lang/String;Lnet/minecraft/class_2960;)Z method_66827 matches + p 1 id + p 0 selector + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/class_7225;)Ljava/util/Collection; method_66822 select + p 0 reader + p 1 registry + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; method_66829 read + p 0 reader + m (Lnet/minecraft/class_7157;Lnet/minecraft/class_5321;)Lnet/minecraft/class_10644; method_66824 selector + p 0 registries + p 1 registryRef + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; method_66823 getEntries + p 1 name + p 0 context + m (Lnet/minecraft/class_7157;Lnet/minecraft/class_5321;)V + p 1 registries + p 2 registryRef + m (C)Z method_66820 isSelectorChar + p 0 c + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; listSuggestions listSuggestions + p 1 context + p 2 builder + m (Ljava/lang/String;Lnet/minecraft/class_6880$class_6883;)Z method_66830 method_66830 + p 1 entry +c net/minecraft/class_10644$class_10645 net/minecraft/command/argument/RegistrySelectorArgumentType$Serializer + m (Lnet/minecraft/class_10644;)Lnet/minecraft/class_10644$class_10645$class_10646; method_66833 getArgumentTypeProperties + m (Lnet/minecraft/class_10644$class_10645$class_10646;Lnet/minecraft/class_2540;)V method_66832 writePacket + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_10644$class_10645$class_10646; method_66834 fromPacket + m (Lnet/minecraft/class_10644$class_10645$class_10646;Lcom/google/gson/JsonObject;)V method_66831 writeJson +c net/minecraft/class_10644$class_10645$class_10646 net/minecraft/command/argument/RegistrySelectorArgumentType$Serializer$Properties + f Lnet/minecraft/class_5321; field_56065 registryRef + m (Lnet/minecraft/class_7157;)Lnet/minecraft/class_10644; method_66835 createType + m (Lnet/minecraft/class_10644$class_10645;Lnet/minecraft/class_5321;)V + p 2 registryRef +c net/minecraft/class_11975 net/minecraft/client/render/block/entity/state/VaultBlockEntityRenderState + f Lnet/minecraft/class_10428; field_62755 displayItemStackState + f F field_62756 displayRotationDegrees +c net/minecraft/class_1699 net/minecraft/entity/vehicle/SpawnerMinecartEntity + f Lnet/minecraft/class_1917; field_7746 logic + f Ljava/lang/Runnable; field_27012 ticker + m (Lnet/minecraft/class_1937;)Ljava/lang/Runnable; method_31553 getTicker + p 1 world + m ()Lnet/minecraft/class_1917; method_35216 getLogic +c net/minecraft/class_11905 net/minecraft/client/input/CharInput + f I comp_4794 modifiers + f I comp_4793 codepoint + m ()Ljava/lang/String; method_74226 asString + m ()Z method_74227 isValidChar + m ()I comp_4794 modifiers + m ()I comp_4793 codepoint + m (II)V + p 1 codepoint + p 2 modifiers +c net/minecraft/class_11904 net/minecraft/unused/packageinfo/PackageInfo11904 +c net/minecraft/class_11903 net/minecraft/client/network/ClientMannequinEntity + f Lnet/minecraft/class_8685; field_62927 DEFAULT_TEXTURES + f Ljava/util/concurrent/CompletableFuture; field_62582 skinLookup + f Lnet/minecraft/class_8685; field_62583 skin + f Lnet/minecraft/class_11902; field_62581 state + f Lorg/slf4j/Logger; field_62579 LOGGER + f Lnet/minecraft/class_11786; field_62584 skinCache + m (Lnet/minecraft/class_11786;Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;)Lnet/minecraft/class_11891; method_74703 method_74703 + p 2 world + p 1 type + m (Lnet/minecraft/class_11786;)V method_74702 setFactory + p 0 cache + m (Ljava/util/Optional;)Ljava/util/Optional; method_74705 method_74705 + p 0 skin + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_11786;)V + p 1 world + p 2 skinCache + m ()V method_74700 refreshSkin + m (Lnet/minecraft/class_8685;)V method_74704 setSkin + p 1 skin +c net/minecraft/class_11902 net/minecraft/client/network/ClientPlayerLikeState + f Lnet/minecraft/class_243; field_62568 velocity + f F field_62569 distanceMoved + f F field_62570 lastDistanceMoved + f D field_62571 x + f D field_62572 y + f D field_62573 z + f D field_62574 lastX + f D field_62575 lastY + f F field_62577 movement + f D field_62576 lastZ + f F field_62578 lastMovement + m ()Lnet/minecraft/class_243; method_74195 getVelocity + m (F)V method_74203 tickMovement + p 1 movement + m (F)V method_74196 addDistanceMoved + p 1 distanceMoved + m ()V method_74199 tickRiding + m (F)F method_74206 getLerpedDistanceMoved + p 1 tickProgress + m (F)F method_74205 getReverseLerpedDistanceMoved + p 1 tickProgress + m (F)D method_74202 lerpZ + p 1 tickProgress + m (F)F method_74204 lerpMovement + p 1 tickProgress + m (F)D method_74201 lerpY + p 1 tickProgress + m (Lnet/minecraft/class_243;)V method_74197 setPos + p 1 pos + m (Lnet/minecraft/class_243;Lnet/minecraft/class_243;)V method_74198 tick + p 1 pos + p 2 velocity + m (F)D method_74200 lerpX + p 1 tickProgress +c net/minecraft/class_11909 net/minecraft/client/gui/Click + f D comp_4799 y + f D comp_4798 x + f Lnet/minecraft/class_11910; comp_4800 buttonInfo + m ()I method_74245 button + m ()Lnet/minecraft/class_11910; comp_4800 buttonInfo + m ()D comp_4799 y + m ()D comp_4798 x + m (DDLnet/minecraft/class_11910;)V + p 1 x + p 3 y + p 5 buttonInfo +c net/minecraft/class_11908 net/minecraft/client/input/KeyInput + f I comp_4797 modifiers + f I comp_4796 scancode + f I comp_4795 key + m ()I comp_4796 scancode + m ()I comp_4795 key + m (III)V + p 1 key + p 2 scancode + p 3 modifiers +c net/minecraft/class_11908$class_12146 net/minecraft/client/input/KeyInput$KeyAction +c net/minecraft/class_11907 net/minecraft/client/input/AbstractInput + f I field_62593 NOT_A_NUMBER + m ()Z method_75377 hasCtrlOrCmd + m ()I method_74228 getKeycode + m ()I method_74237 asNumber + m ()Z method_74235 isDown + m ()Z method_74236 isTab + m ()Z method_74233 isRight + m ()Z method_74244 isCut + m ()Z method_74234 isUp + m ()Z method_74239 hasShift + m ()Z method_74229 isEnterOrSpace + m ()Z method_74238 hasAlt + m ()Z method_74231 isEscape + m ()Z method_74242 isCopy + m ()Z method_74232 isLeft + m ()Z method_74243 isPaste + m ()Z method_74240 hasCtrl + m ()Z method_74230 isEnter + m ()Z method_74241 isSelectAll + m ()I comp_4797 modifiers +c net/minecraft/class_11907$class_12145 net/minecraft/client/input/AbstractInput$Modifier +c net/minecraft/class_11906 net/minecraft/client/input/SystemKeycodes + f Z field_62592 IS_MAC_OS_IMPL + f Z field_62591 UPDATE_PRESSED_STATE_ON_MOUSE_GRAB + f Z field_62590 USE_LONG_LEFT_PRESS + f I field_62589 CTRL_MOD + f Z field_62586 IS_MAC_OS +c net/minecraft/class_11912 net/minecraft/client/model/ElderGuardianParticleModel + m (Lnet/minecraft/class_630;)V + p 1 part +c net/minecraft/class_11911 net/minecraft/unused/packageinfo/PackageInfo11911 +c net/minecraft/class_11910 net/minecraft/client/input/MouseInput + f I comp_4801 button + f I comp_4797 modifiers + m ()I comp_4801 button + m (II)V + p 1 button + p 2 modifiers +c net/minecraft/class_11910$class_12148 net/minecraft/client/input/MouseInput$ButtonCode +c net/minecraft/class_11910$class_12147 net/minecraft/client/input/MouseInput$MouseAction +c net/minecraft/class_11938 net/minecraft/client/particle/ParticleRenderer + f Lnet/minecraft/class_702; field_62619 particleManager + f Ljava/util/Queue; field_62620 particles + f I field_62621 QUEUE_SIZE + m (Lnet/minecraft/class_702;)V + p 1 particleManager + m ()V method_74287 tick + m ()I method_74289 size + m (Lnet/minecraft/class_4604;Lnet/minecraft/class_4184;F)Lnet/minecraft/class_11942; method_74276 render + p 3 tickProgress + p 1 frustum + p 2 camera + m (Lnet/minecraft/class_5878;)V method_74286 method_74286 + p 1 group + m (Lnet/minecraft/class_703;)V method_74288 tickParticle + p 1 particle + m (Lnet/minecraft/class_703;)V method_74285 add + p 1 particle + m ()Ljava/util/Queue; method_74290 getParticles + m ()Z method_74284 isEmpty +c net/minecraft/class_11937 net/minecraft/client/particle/NoRenderParticleRenderer + f Lnet/minecraft/class_11942; field_62617 EMPTY + m (Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V method_74280 method_74280 + p 1 cameraRenderState + p 0 queue +c net/minecraft/class_11939 net/minecraft/client/particle/ParticleSpriteManager + f Ljava/util/Map; field_62627 spriteAwareParticleFactories + f Lnet/minecraft/class_7654; field_62626 PARTICLE_RESOURCE_FINDER + f Lorg/slf4j/Logger; field_62625 LOGGER + f Ljava/lang/Runnable; field_62629 onPreparedTask + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; field_62628 particleFactories + m (Ljava/lang/Runnable;)V method_74296 setOnPreparedTask + p 1 onPreparedTask + m (Lnet/minecraft/class_2396;Lnet/minecraft/class_707;)V method_74300 register + p 2 factory + p 1 type + m (Lnet/minecraft/class_2396;Lnet/minecraft/class_11939$class_4091;)V method_74301 register + p 1 type + p 2 factory + m ()V method_74302 init + m ()Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; method_74292 getParticleFactories + m (Lnet/minecraft/class_7766$class_7767;Ljava/util/Set;Lnet/minecraft/class_1058;Lnet/minecraft/class_11939$class_7759;)V method_74295 method_74295 + p 4 reloadResult + m (Ljava/util/List;Ljava/util/concurrent/Executor;Lnet/minecraft/class_2960;Lnet/minecraft/class_3298;)V method_74297 method_74297 + p 4 resource + p 3 resourceId + m (Lnet/minecraft/class_2960;Lnet/minecraft/class_3298;)Ljava/util/Optional; method_74293 load + p 2 resource + p 1 id + m (Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletionStage; method_74299 method_74299 + p 2 resources +c net/minecraft/class_11939$class_7759 net/minecraft/client/particle/ParticleSpriteManager$ReloadResult + f Lnet/minecraft/class_2960; comp_1036 id + f Ljava/util/Optional; comp_1037 sprites + m ()Ljava/util/Optional; comp_1037 sprites + m ()Lnet/minecraft/class_2960; comp_1036 id + m (Lnet/minecraft/class_2960;Ljava/util/Optional;)V + p 1 id + p 2 sprites +c net/minecraft/class_11939$class_4090 net/minecraft/client/particle/ParticleSpriteManager$SimpleSpriteProvider + f Ljava/util/List; field_18303 sprites + m (Ljava/util/List;)V method_18838 setSprites + p 1 sprites +c net/minecraft/class_11939$class_4091 net/minecraft/client/particle/ParticleSpriteManager$SpriteAwareFactory + m (Lnet/minecraft/class_4002;)Lnet/minecraft/class_707; create create + p 1 spriteProvider +c net/minecraft/class_1683 net/minecraft/entity/projectile/thrown/ExperienceBottleEntity + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1799;)V + p 4 y + p 2 x + p 1 world + p 8 stack + p 6 z + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)V + p 1 world + p 3 stack + p 2 owner +c net/minecraft/class_1682 net/minecraft/entity/projectile/thrown/ThrownEntity + m (Lnet/minecraft/class_1299;DDDLnet/minecraft/class_1937;)V + p 8 world + p 6 z + p 4 y + p 1 type + p 2 x + m ()V method_63673 applyDrag + m ()V method_65041 tickInitialBubbleColumnCollision +c net/minecraft/class_1681 net/minecraft/entity/projectile/thrown/EggEntity + f Lnet/minecraft/class_4048; field_51894 EMPTY_DIMENSIONS + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1799;)V + p 1 world + p 2 x + p 8 stack + p 6 z + p 4 y + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)V + p 2 owner + p 3 stack + p 1 world + m (Lnet/minecraft/class_9791;)Ljava/util/Optional; method_67534 method_67534 + p 1 variant +c net/minecraft/class_1680 net/minecraft/entity/projectile/thrown/SnowballEntity + m ()Lnet/minecraft/class_2394; method_16939 getParticleParameters + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1799;)V + p 1 world + p 8 stack + p 6 z + p 4 y + p 2 x + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)V + p 3 stack + p 1 world + p 2 owner +c net/minecraft/class_1687 net/minecraft/entity/projectile/WitherSkullEntity + f Lnet/minecraft/class_2940; field_7654 CHARGED + f Z field_57746 DEFAULT_DANGEROUS + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_243;)V + p 3 velocity + p 1 world + p 2 owner + m (Z)V method_7502 setCharged + p 1 charged + m ()Z method_7503 isCharged +c net/minecraft/class_1686 net/minecraft/entity/projectile/thrown/PotionEntity + f Ljava/util/function/Predicate; field_40737 AFFECTED_BY_WATER + f D field_30668 WATER_POTION_EXPLOSION_SQUARED_RADIUS + m (Lnet/minecraft/class_3218;)V method_67149 explodeWaterPotion + p 1 world + m (Lnet/minecraft/class_2338;)V method_7499 extinguishFire + p 1 pos + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1799;)V + p 1 type + p 2 world + p 3 x + p 5 y + p 7 z + p 9 stack + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)V + p 1 type + p 3 owner + p 2 world + p 4 stack + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1799;Lnet/minecraft/class_239;)V method_67148 spawnAreaEffectCloud + p 1 world + p 3 hitResult + p 2 stack + m (Lnet/minecraft/class_1309;)Z method_46401 method_46401 + p 0 entity +c net/minecraft/class_1685 net/minecraft/entity/projectile/TridentEntity + f Z field_7648 dealtDamage + f I field_7649 returnTimer + f F field_55019 DRAG_IN_WATER + f Lnet/minecraft/class_2940; field_21514 ENCHANTED + f Z field_57745 DEFAULT_DEALT_DAMAGE + f Lnet/minecraft/class_2940; field_7647 LOYALTY + m (Lnet/minecraft/class_1799;)B method_59960 getLoyalty + p 1 stack + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)V + p 1 world + p 2 owner + p 3 stack + m ()Z method_7493 isOwnerAlive + m ()Z method_23751 isEnchanted + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1792;)V method_63013 method_63013 + p 2 item + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1799;)V + p 8 stack + p 1 world + p 2 x + p 4 y + p 6 z +c net/minecraft/class_1684 net/minecraft/entity/projectile/thrown/EnderPearlEntity + f J field_54228 chunkTicketExpiryTicks + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_1937;)Z method_60985 canTeleportEntityTo + p 1 world + p 0 entity + m (Lnet/minecraft/class_3218;Ljava/util/UUID;)Lnet/minecraft/class_1297; method_73304 getPlayer + p 0 world + p 1 uuid + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_243;)V method_60729 playTeleportSound + p 1 world + p 2 pos + m ()V method_64182 addToOwner + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;)V + p 2 owner + p 1 world + p 3 stack + m ()V method_64181 removeFromOwner +c net/minecraft/class_1679 net/minecraft/entity/projectile/SpectralArrowEntity + f I field_57744 DEFAULT_DURATION + f I field_7636 duration + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V + p 3 stack + p 4 shotFrom + p 1 world + p 2 owner + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V + p 4 y + p 6 z + p 1 world + p 2 x + p 9 shotFrom + p 8 stack +c net/minecraft/class_1678 net/minecraft/entity/projectile/ShulkerBulletEntity + f D field_7635 targetX + f D field_7625 targetZ + f Lnet/minecraft/class_10583; field_7626 target + f Lnet/minecraft/class_2350; field_7628 direction + f I field_7627 stepCount + f D field_7633 targetY + m ()Lnet/minecraft/class_2350; method_35208 getDirection + m (Lnet/minecraft/class_2350;)V method_7487 setDirection + p 1 direction + m ()V method_49723 destroy + m (Lnet/minecraft/class_2350$class_2351;Lnet/minecraft/class_1297;)V method_7486 changeTargetDirection + p 2 target + p 1 axis + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_1297;Lnet/minecraft/class_2350$class_2351;)V + p 1 world + p 2 owner + p 3 target + p 4 axis +c net/minecraft/class_1677 net/minecraft/entity/projectile/SmallFireballEntity + m (Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;Lnet/minecraft/class_243;)V + p 3 velocity + p 2 owner + p 1 world + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_243;)V + p 8 velocity + p 2 x + p 1 world + p 6 z + p 4 y +c net/minecraft/class_11940 net/minecraft/client/particle/BillboardParticleRenderer + f Lnet/minecraft/class_11944; field_62630 submittable + f Lnet/minecraft/class_3999; field_62631 textureSheet + m (Lnet/minecraft/class_702;Lnet/minecraft/class_3999;)V + p 2 textureSheet + p 1 manager +c net/minecraft/class_10614 net/minecraft/network/packet/s2c/play/TestInstanceBlockStatusS2CPacket + f Lnet/minecraft/class_9139; field_55914 CODEC + f Lnet/minecraft/class_2561; comp_3511 status + f Ljava/util/Optional; comp_3512 size + m (Lnet/minecraft/class_2602;)V method_66580 apply + m ()Ljava/util/Optional; comp_3512 size + m ()Lnet/minecraft/class_2561; comp_3511 status + m (Lnet/minecraft/class_2561;Ljava/util/Optional;)V + p 1 status + p 2 size +c net/minecraft/class_11944 net/minecraft/client/particle/BillboardParticleSubmittable + f I field_62650 BUFFER_FLOAT_FIELDS + f I field_62651 BUFFER_INT_FIELDS + f I field_62649 INITIAL_BUFFER_MAX_LENGTH + f Ljava/util/Map; field_62652 bufferByType + f I field_62946 particles + m (Lnet/minecraft/class_4588;FFFFFFFFFFFFII)V method_74321 drawFace + p 12 minV + p 13 maxV + p 10 minU + p 11 maxU + p 14 color + p 15 brightness + p 4 z + p 5 rotationX + p 2 x + p 3 y + p 8 rotationW + p 9 size + p 6 rotationY + p 7 rotationZ + p 1 vertexConsumer + m (Lnet/minecraft/class_4588;Lorg/joml/Quaternionf;FFFFFFFFII)V method_74322 renderVertex + p 10 maxV + p 11 color + p 12 brightness + p 6 localX + p 7 localY + p 8 size + p 9 maxU + p 2 rotation + p 3 x + p 4 y + p 5 z + p 1 vertexConsumer + m (Lnet/minecraft/class_3940$class_11941;FFFFFFFFFFFFII)V method_74323 render + p 1 renderType + p 3 y + p 2 x + p 5 rotationX + p 4 z + p 7 rotationZ + p 6 rotationY + p 9 size + p 8 rotationW + p 11 maxU + p 10 minU + p 13 maxV + p 12 minV + p 15 brightness + p 14 color + m (Lnet/minecraft/class_287;FFFFFFFFFFFFII)V method_74753 method_74753 + p 11 maxU + p 12 minV + p 9 size + p 10 minU + p 15 brightness + p 13 maxV + p 14 color + p 3 y + p 4 z + p 2 x + p 7 rotationZ + p 8 rotationW + p 5 rotationX + p 6 rotationY +c net/minecraft/class_11944$class_11945 net/minecraft/client/particle/BillboardParticleSubmittable$Consumer + m (FFFFFFFFFFFFII)V consume consume + p 12 maxV + p 11 minV + p 10 maxU + p 9 minU + p 8 size + p 7 rotationW + p 6 rotationZ + p 5 rotationY + p 14 brightness + p 13 color + p 4 rotationX + p 3 z + p 2 y + p 1 x +c net/minecraft/class_11944$class_11946 net/minecraft/client/particle/BillboardParticleSubmittable$Vertices + f [F field_62654 floatData + f [I field_62655 intData + f I field_62656 nextVertexIndex + f I field_62653 maxVertices + m ()I method_74756 nextVertexIndex + m (FFFFFFFFFFFFII)V method_74327 vertex + p 9 minU + p 10 maxU + p 11 minV + p 12 maxV + p 5 rotationY + p 6 rotationZ + p 7 rotationW + p 8 size + p 13 color + p 14 brightness + p 1 x + p 2 y + p 3 z + p 4 rotationX + m ()V method_74326 reset + m (Lnet/minecraft/class_11944$class_11945;)V method_74328 render + p 1 vertexConsumer + m ()V method_74329 increaseCapacity +c net/minecraft/class_11944$class_12041 net/minecraft/client/particle/BillboardParticleSubmittable$Buffers + f I comp_4897 indexCount + f Lcom/mojang/blaze3d/buffers/GpuBufferSlice; comp_4898 dynamicTransforms + f Ljava/util/Map; comp_4899 layers + m ()Ljava/util/Map; comp_4899 layers + m ()Lcom/mojang/blaze3d/buffers/GpuBufferSlice; comp_4898 dynamicTransforms + m ()I comp_4897 indexCount + m (ILcom/mojang/blaze3d/buffers/GpuBufferSlice;Ljava/util/Map;)V + p 1 indexCount + p 2 dynamicTransforms + p 3 layers +c net/minecraft/class_11944$class_12042 net/minecraft/client/particle/BillboardParticleSubmittable$Layer + f I comp_4901 indexCount + f I comp_4900 vertexOffset + m ()I comp_4901 indexCount + m ()I comp_4900 vertexOffset + m (II)V + p 1 vertexOffset + p 2 indexCount +c net/minecraft/class_11943 net/minecraft/client/render/SubmittableBatch + f Ljava/util/List; field_62648 batch + m ()V method_74317 onFrameEnd + m (Lnet/minecraft/class_11942;)V method_74318 add + p 1 submittable + m (Lnet/minecraft/class_11661;Lnet/minecraft/class_12075;)V method_74319 submit + p 2 cameraRenderState + p 1 queue +c net/minecraft/class_11942 net/minecraft/client/render/Submittable + m ()V method_74316 onFrameEnd + m (Lnet/minecraft/class_11659;Lnet/minecraft/class_12075;)V submit submit + p 2 cameraRenderState + p 1 queue +c net/minecraft/class_1690 net/minecraft/entity/vehicle/BoatEntity +c net/minecraft/class_1694 net/minecraft/entity/vehicle/ChestMinecartEntity +c net/minecraft/class_1693 net/minecraft/entity/vehicle/StorageMinecartEntity + f Lnet/minecraft/class_5321; field_7734 lootTable + f Lnet/minecraft/class_2371; field_7735 inventory + f J field_7732 lootTableSeed + m (ILnet/minecraft/class_1661;)Lnet/minecraft/class_1703; method_17357 getScreenHandler + p 2 playerInventory + p 1 syncId + m (Lnet/minecraft/class_5321;J)V method_7562 setLootTable + p 1 lootTable + p 2 lootSeed +c net/minecraft/class_1697 net/minecraft/entity/vehicle/CommandBlockMinecartEntity + f Lnet/minecraft/class_2940; field_7743 COMMAND + f I field_7742 lastExecuted + f Lnet/minecraft/class_2940; field_7741 LAST_OUTPUT + f Lnet/minecraft/class_1918; field_7744 commandExecutor + f I field_30701 EXECUTE_TICK_COOLDOWN + m ()Lnet/minecraft/class_1918; method_7567 getCommandExecutor +c net/minecraft/class_1697$class_1698 net/minecraft/entity/vehicle/CommandBlockMinecartEntity$CommandExecutor +c net/minecraft/class_1696 net/minecraft/entity/vehicle/FurnaceMinecartEntity + f Lnet/minecraft/class_243; field_54300 pushVec + f Lnet/minecraft/class_2940; field_7740 LIT + f I field_52522 MAX_FUEL + f I field_52521 FUEL_PER_ITEM + f Lnet/minecraft/class_243; field_57751 DEFAULT_PUSH_VEC + f I field_7739 fuel + f S field_57750 DEFAULT_FUEL + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_64276 calcNextPushVec + p 1 velocity + m (Z)V method_7564 setLit + p 1 lit + m (Lnet/minecraft/class_243;Lnet/minecraft/class_1799;)Z method_73192 addFuel + p 2 stack + p 1 velocity + m ()Z method_7565 isLit +c net/minecraft/class_1695 net/minecraft/entity/vehicle/MinecartEntity +c net/minecraft/class_1688 net/minecraft/entity/vehicle/AbstractMinecartEntity + f Lnet/minecraft/class_243; field_47822 VILLAGER_PASSENGER_ATTACHMENT_POS + f Lcom/google/common/collect/ImmutableMap; field_24464 DISMOUNT_FREE_Y_SPACES_NEEDED + f F field_30694 VELOCITY_SLOWDOWN_MULTIPLIER + f Z field_57749 DEFAULT_YAW_FLIPPED + f Ljava/util/Map; field_7664 ADJACENT_RAIL_POSITIONS_BY_SHAPE + f Lnet/minecraft/class_9878; field_52517 controller + f Z field_44917 onRail + f Z field_7660 yawFlipped + f Lnet/minecraft/class_2940; field_7661 BLOCK_OFFSET + f Lnet/minecraft/class_2940; field_7671 CUSTOM_BLOCK_STATE + m (Lnet/minecraft/class_3218;IIIZ)V method_7506 onActivatorRail + p 2 y + p 3 z + m (Z)V method_61567 setYawFlipped + p 1 yawFlipped + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_243; method_61563 getLaunchDirection + p 1 railPos + m (Z)V method_61565 setOnRail + p 1 onRail + m ()Z method_61571 isYawFlipped + m (Lnet/minecraft/class_3218;)V method_7512 moveOffRail + p 1 world + m (I)V method_7515 setBlockOffset + p 1 offset + m (Lnet/minecraft/class_1937;)Z method_61566 areMinecartImprovementsEnabled + p 0 world + m (Lnet/minecraft/class_2338;)Z method_18803 willHitBlockAt + p 1 pos + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_265; method_30340 method_30340 + p 1 pos + m ()Z method_64273 isSelfPropelling + m ()Ljava/util/Optional; method_67672 getCustomBlockState + m (Lnet/minecraft/class_3218;)V method_7513 moveOnRail + p 1 world + m (Lnet/minecraft/class_1688;DD)V method_64274 pushAwayFromMinecart + p 2 xDiff + p 1 entity + p 4 zDiff + m ()Z method_64272 isRideable + m (Lnet/minecraft/class_1937;DDDLnet/minecraft/class_1299;Lnet/minecraft/class_3730;Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;)Lnet/minecraft/class_1688; method_7523 create + p 0 world + p 3 y + p 1 x + p 8 reason + p 7 type + p 5 z + p 10 player + p 9 stack + m (DDD)V method_64275 initPosition + p 3 y + p 5 z + p 1 x + m (Ljava/util/Optional;)V method_7527 setCustomBlockState + p 1 customBlockState + m (Lnet/minecraft/class_243;)Lnet/minecraft/class_243; method_7525 applySlowdown + p 1 velocity + m (Lnet/minecraft/class_2768;)Lcom/mojang/datafixers/util/Pair; method_22864 getAdjacentRailPositionsByShape + p 0 shape + m ()Lnet/minecraft/class_2338; method_62825 getRailOrMinecartPos + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1937;DDD)V + p 3 x + p 1 type + p 2 world + p 7 z + p 5 y + m ()Lnet/minecraft/class_2680; method_7517 getDefaultContainedBlock + m ()Lnet/minecraft/class_2680; method_7519 getContainedBlock + m ()I method_7526 getDefaultBlockOffset + m ()I method_7514 getBlockOffset + m ()Lnet/minecraft/class_9878; method_61569 getController + m ()Z method_62824 isFirstUpdate + m (Lnet/minecraft/class_11372;Lnet/minecraft/class_2680;)V method_67673 method_67673 + p 1 state + m (Lnet/minecraft/class_3218;)D method_7504 getMaxSpeed + p 1 world + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2768;D)D method_61564 moveAlongTrack + p 3 remainingMovement + p 2 shape + p 1 pos +c net/minecraft/class_11930 net/minecraft/client/particle/ElderGuardianParticle + f Lnet/minecraft/class_1921; field_62615 renderLayer + f Lnet/minecraft/class_11912; field_62614 model +c net/minecraft/class_11930$class_701 net/minecraft/client/particle/ElderGuardianParticle$Factory + m (Lnet/minecraft/class_2400;Lnet/minecraft/class_638;DDDDDDLnet/minecraft/class_5819;)Lnet/minecraft/class_703; method_3042 createParticle +c net/minecraft/class_11934 net/minecraft/client/particle/ItemPickupParticleRenderer + m (Lnet/minecraft/class_4184;FLnet/minecraft/class_693;)Lnet/minecraft/class_11934$class_11935; method_74278 method_74278 + p 2 particle +c net/minecraft/class_11934$class_11935 net/minecraft/client/particle/ItemPickupParticleRenderer$Instance + f Lnet/minecraft/class_10017; comp_4812 itemRenderState + f D comp_4814 yOffset + f D comp_4813 xOffset + f D comp_4815 zOffset + m (Lnet/minecraft/class_693;Lnet/minecraft/class_4184;F)Lnet/minecraft/class_11934$class_11935; method_74279 create + p 0 particle + p 1 camera + p 2 tickProgress + m ()Lnet/minecraft/class_10017; comp_4812 itemRenderState + m ()D comp_4813 xOffset + m ()D comp_4815 zOffset + m ()D comp_4814 yOffset + m (Lnet/minecraft/class_10017;DDD)V + p 1 itemRenderState + p 2 xOffset + p 4 yOffset + p 6 zOffset +c net/minecraft/class_11934$class_11936 net/minecraft/client/particle/ItemPickupParticleRenderer$Result + f Ljava/util/List; comp_4816 instances + m ()Ljava/util/List; comp_4816 instances + m (Ljava/util/List;)V + p 1 instances +c net/minecraft/class_10602 net/minecraft/client/model/BabyModelPair + f Lnet/minecraft/class_3879; comp_3500 adultModel + f Lnet/minecraft/class_3879; comp_3501 babyModel + m (Z)Lnet/minecraft/class_3879; method_66533 get + p 1 baby + m ()Lnet/minecraft/class_3879; comp_3501 babyModel + m ()Lnet/minecraft/class_3879; comp_3500 adultModel + m (Lnet/minecraft/class_3879;Lnet/minecraft/class_3879;)V + p 1 adultModel + p 2 babyModel +c net/minecraft/class_10603 net/minecraft/client/render/entity/model/ColdPigEntityModel + m (Lnet/minecraft/class_5605;)Lnet/minecraft/class_5607; method_66534 getTexturedModelData + p 0 dilation +c net/minecraft/class_10600 net/minecraft/world/gen/treedecorator/PlaceOnGroundTreeDecorator + f Lnet/minecraft/class_4651; field_55840 blockStateProvider + f Lcom/mojang/serialization/MapCodec; field_55836 CODEC + f I field_55837 tries + f I field_55838 radius + f I field_55839 height + m (Lnet/minecraft/class_10600;)Ljava/lang/Integer; method_66489 method_66489 + p 0 treeDecorator + m (Lnet/minecraft/class_10600;)Ljava/lang/Integer; method_66488 method_66488 + p 0 treeDecorator + m (Lnet/minecraft/class_10600;)Ljava/lang/Integer; method_66487 method_66487 + p 0 treeDecorator + m (IIILnet/minecraft/class_4651;)V + p 3 height + p 4 blockStateProvider + p 1 tries + p 2 radius + m (Lnet/minecraft/class_2680;)Z method_66486 method_66486 + p 0 state + m (Lnet/minecraft/class_4662$class_7402;Lnet/minecraft/class_2338;)V method_66485 generate + p 1 generator + p 2 pos + m (Lnet/minecraft/class_10600;)Lnet/minecraft/class_4651; method_66484 method_66484 + p 0 treeDecorator + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_66483 method_66483 + p 0 instance +c net/minecraft/class_11931 net/minecraft/client/particle/ElderGuardianParticleRenderer +c net/minecraft/class_11931$class_11932 net/minecraft/client/particle/ElderGuardianParticleRenderer$State + f Lnet/minecraft/class_1921; comp_4809 renderLayer + f Lnet/minecraft/class_4587; comp_4808 matrices + f Lnet/minecraft/class_3879; comp_4807 model + f I comp_4810 color + m ()Lnet/minecraft/class_1921; comp_4809 renderLayer + m ()Lnet/minecraft/class_4587; comp_4808 matrices + m (Lnet/minecraft/class_11930;Lnet/minecraft/class_4184;F)Lnet/minecraft/class_11931$class_11932; method_74277 create + p 0 particle + p 1 camera + p 2 tickProgress + m ()Lnet/minecraft/class_3879; comp_4807 model + m ()I comp_4810 color + m (Lnet/minecraft/class_3879;Lnet/minecraft/class_4587;Lnet/minecraft/class_1921;I)V + p 1 model + p 2 matrices + p 3 renderLayer + p 4 color +c net/minecraft/class_11931$class_11933 net/minecraft/client/particle/ElderGuardianParticleRenderer$Result + f Ljava/util/List; comp_4811 states + m ()Ljava/util/List; comp_4811 states + m (Ljava/util/List;)V + p 1 states +c net/minecraft/class_6557 net/minecraft/world/gen/chunk/BlockColumn + m (ILnet/minecraft/class_2680;)V method_38092 setState + p 1 y + p 2 state + m (I)Lnet/minecraft/class_2680; method_32892 getState + p 1 y +c net/minecraft/class_7888 net/minecraft/unused/packageinfo/PackageInfo7888 +c net/minecraft/class_6558 net/minecraft/world/chunk/EntryMissingException + m (I)V + p 1 index +c net/minecraft/class_7889 net/minecraft/data/tag/ValueLookupTagProvider + f Ljava/util/function/Function; field_40954 valueToKey + m (Lnet/minecraft/class_7784;Lnet/minecraft/class_5321;Ljava/util/concurrent/CompletableFuture;Ljava/util/function/Function;)V + p 1 output + p 4 valueToKey + p 2 registryRef + p 3 registriesFuture + m (Lnet/minecraft/class_7784;Lnet/minecraft/class_5321;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/util/function/Function;)V + p 5 valueToKey + p 4 parentTagLookupFuture + p 1 output + p 3 registriesFuture + p 2 registryRef + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_11389; method_46827 builder + p 1 tag +c net/minecraft/class_5223 net/minecraft/text/TextVisitFactory + c A utility class for visiting the characters of strings, handling surrogate\ncode points and formatting codes. + f Ljava/util/Optional; field_24215 VISIT_TERMINATED + f C field_29861 REPLACEMENT_CHARACTER + m (Ljava/lang/StringBuilder;ILnet/minecraft/class_2583;I)Z method_27475 method_27475 + p 3 codePoint + p 2 style + p 1 index + m (Lnet/minecraft/class_5348;)Ljava/lang/String; method_31402 removeFormattingCodes + p 0 text + m (Ljava/lang/String;Lnet/minecraft/class_2583;Lnet/minecraft/class_5224;)Z method_27478 visitBackwards + c Visits the code points of a string in backward (right to left) direction.\n\n@return {@code true} if the full string was visited, or {@code false} indicating\nthe {@code visitor} terminated half-way + p 1 style + c the style of the string + p 0 text + c the string + p 2 visitor + c the visitor + m (Ljava/lang/String;Lnet/minecraft/class_2583;Lnet/minecraft/class_5224;)Z method_27479 visitFormatted + c Visits the code points of a string, applying the formatting codes within.\n\n

The visit is in forward direction.\n\n@return {@code true} if the full string was visited, or {@code false} indicating\nthe {@code visitor} terminated half-way + p 0 text + c the string visited + p 2 visitor + c the visitor + p 1 style + c the style of the string + m (Ljava/lang/StringBuilder;ILnet/minecraft/class_2583;I)Z method_31401 method_31401 + p 2 style + p 1 index + p 3 codePoint + m (Lnet/minecraft/class_2583;Lnet/minecraft/class_5224;IC)Z method_27477 visitRegularCharacter + p 3 c + p 1 visitor + p 2 index + p 0 style + m (Ljava/lang/String;Lnet/minecraft/class_2583;Lnet/minecraft/class_5224;)Z method_27474 visitForwards + c Visits the code points of a string in forward (left to right) direction.\n\n@return {@code true} if the full string was visited, or {@code false} indicating\nthe {@code visitor} terminated half-way + p 1 style + c the style of the string + p 0 text + c the string + p 2 visitor + c the visitor of characters + m (Lnet/minecraft/class_5224;Lnet/minecraft/class_2583;Ljava/lang/String;)Ljava/util/Optional; method_27470 method_27470 + p 2 string + p 1 stylex + m (Ljava/lang/String;)Ljava/lang/String; method_27471 validateSurrogates + c {@return a new string that has all surrogate characters within}\nThe characters are validated from an original string {@code text}. + p 0 text + c the original string + m (Lnet/minecraft/class_5348;Lnet/minecraft/class_2583;Lnet/minecraft/class_5224;)Z method_27476 visitFormatted + c Visits the code points for every literal string and the formatting codes\nsupplied by the renderable.\n\n

The visit is in forward direction.\n\n@return {@code true} if the full string was visited, or {@code false} indicating\nthe {@code visitor} terminated half-way\n@see StringVisitable#visit(StringVisitable.StyledVisitor, Style) + p 0 text + p 1 style + p 2 visitor + m (Ljava/lang/String;ILnet/minecraft/class_2583;Lnet/minecraft/class_5224;)Z method_27472 visitFormatted + c Visits the code points of a string, applying the formatting codes within.\n\n

The visit is in forward direction.\n\n@return {@code true} if the full string was visited, or {@code false} indicating\nthe {@code visitor} terminated half-way + p 3 visitor + p 2 style + c the style of the string + p 1 startIndex + c the starting index of the visit + p 0 text + c the string visited + m (Ljava/lang/String;ILnet/minecraft/class_2583;Lnet/minecraft/class_2583;Lnet/minecraft/class_5224;)Z method_27473 visitFormatted + c Visits the code points of a string, applying the formatting codes within.\n\n

The visit is in forward direction.\n\n@return {@code true} if the full string was visited, or {@code false} indicating\nthe {@code visitor} terminated half-way + p 0 text + c the string visited + p 1 startIndex + c the starting index of the visit + p 2 startingStyle + c the style of the string when the visit starts + p 3 resetStyle + c the style to reset to when a {@code §r} formatting code is encountered + p 4 visitor + c the visitor +c net/minecraft/class_7887 net/minecraft/registry/BuiltinRegistries + f Lnet/minecraft/class_7877; field_40953 REGISTRY_BUILDER + m ()Lnet/minecraft/class_7225$class_7874; method_46817 createWrapperLookup + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_2960;Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_6880;)V method_46821 method_46821 + p 3 placedFeature + m (Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_6796;)V method_46819 method_46819 + p 1 value + m (Lnet/minecraft/class_6796;)Z method_46818 hasBiomePlacementModifier + p 0 placedFeature + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_6880$class_6883;)V method_46822 method_46822 + p 1 biome + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_2960;Lnet/minecraft/class_5321;)V method_46820 method_46820 + p 2 key + m (Lnet/minecraft/class_7871;Lnet/minecraft/class_7225;)V method_49382 validate + p 1 biomeLookup + p 0 placedFeatureLookup + m (Lnet/minecraft/class_7225$class_7874;)V method_46823 validate + p 0 registries +c net/minecraft/class_5222 net/minecraft/client/util/TextCollector + f Ljava/util/List; field_25260 texts + m ()Lnet/minecraft/class_5348; method_27463 getCombined + m ()V method_35690 clear + m ()Lnet/minecraft/class_5348; method_27461 getRawCombined + m (Lnet/minecraft/class_5348;)V method_27462 add + p 1 text +c net/minecraft/class_5225 net/minecraft/client/font/TextHandler + f Lnet/minecraft/class_5225$class_5231; field_24216 widthRetriever + m (Lnet/minecraft/class_5348;)F method_27488 getWidth + c {@return the width of a text} + p 1 text + m (Lnet/minecraft/class_5225$class_5231;)V + p 1 widthRetriever + m (Ljava/lang/String;ILnet/minecraft/class_2583;)Ljava/util/List; method_27498 wrapLines + p 3 style + p 2 maxWidth + p 1 text + m (Ljava/lang/String;)F method_27482 getWidth + c {@return the width of a string} + p 1 text + m (Ljava/lang/String;ILnet/minecraft/class_2583;)Ljava/lang/String; method_27494 trimToWidth + c Trim a string to be at most {@code maxWidth} wide.\n\n@return the trimmed string + p 1 text + c the string to trim + p 2 maxWidth + c the max width of the trimmed string + p 3 style + c the style of the trimmed string + m (Lnet/minecraft/class_5348;ILnet/minecraft/class_2583;Ljava/util/function/BiConsumer;)V method_29971 wrapLines + p 2 maxWidth + p 1 text + p 4 lineConsumer + p 3 style + m (Ljava/util/List;Lnet/minecraft/class_2583;Ljava/lang/String;)Ljava/util/Optional; method_27487 method_27487 + p 2 text + p 1 style + m (Ljava/lang/String;ILnet/minecraft/class_2583;)I method_27484 getTrimmedLength + c {@return the length of a string when it is trimmed to be at most {@code\nmaxWidth} wide} + p 2 maxWidth + c the max width of the trimmed string + p 3 style + c the style of the trimmed string + p 1 text + c the string to trim + m (Ljava/util/List;Ljava/lang/String;Lnet/minecraft/class_2583;II)V method_27486 method_27486 + p 2 style + p 4 end + p 3 start + m (Ljava/lang/String;ILnet/minecraft/class_2583;ZLnet/minecraft/class_5225$class_5229;)V method_27485 wrapLines + p 5 consumer + p 3 style + p 4 retainTrailingWordSplit + p 1 text + p 2 maxWidth + m (Lnet/minecraft/class_5348;ILnet/minecraft/class_2583;)Lnet/minecraft/class_5348; method_27490 trimToWidth + p 2 width + p 3 style + p 1 text + m (Lnet/minecraft/class_5348;ILnet/minecraft/class_2583;)Ljava/util/List; method_27495 wrapLines + p 1 text + p 2 maxWidth + p 3 style + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILorg/apache/commons/lang3/mutable/MutableInt;ILnet/minecraft/class_2583;I)Z method_27493 method_27493 + p 5 style + p 4 index + p 6 codePoint + m (Ljava/lang/String;IIZ)I method_27483 moveCursorByWords + p 1 offset + p 0 text + p 3 consumeSpaceOrBreak + p 2 cursor + m (Ljava/lang/String;ILnet/minecraft/class_2583;)I method_35717 getEndingIndex + p 1 text + p 3 style + p 2 maxWidth + m (Lnet/minecraft/class_5481;)F method_30875 getWidth + p 1 text + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/class_2583;I)Z method_30879 method_30879 + p 2 index + p 3 style + p 4 codePoint + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/class_2583;I)Z method_27492 method_27492 + p 2 unused + p 3 style + p 4 codePoint + m (Ljava/util/List;Lnet/minecraft/class_5348;Ljava/lang/Boolean;)V method_30878 method_30878 + p 2 lastLineWrapped + p 1 text + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/class_2583;I)Z method_27496 method_27496 + p 2 unused + p 3 style + p 4 codePoint + m (Ljava/lang/String;ILnet/minecraft/class_2583;)Ljava/lang/String; method_27497 trimToWidthBackwards + c Trim a string from right to left to be at most {@code maxWidth} wide.\n\n@return the trimmed string + p 1 text + c the string to trim + p 2 maxWidth + c the max width of the trimmed string + p 3 style + c the style of the trimmed string +c net/minecraft/class_5225$class_5345 net/minecraft/client/font/TextHandler$StyledString + f Ljava/lang/String; field_25261 literal + f Lnet/minecraft/class_2583; field_25262 style + m (Ljava/lang/String;Lnet/minecraft/class_2583;)V + p 2 style + p 1 literal +c net/minecraft/class_5225$class_5229 net/minecraft/client/font/TextHandler$LineWrappingConsumer + c A consumer of the line-breaking information. + m (Lnet/minecraft/class_2583;II)V accept accept + c Accepts the information on a line-wrap segment. + p 2 start + c the start index of this segment in the original string, inclusive + p 3 end + c the end index of this segment in the original string, exclusive + p 1 style + c the style of this line segment +c net/minecraft/class_5225$class_5227 net/minecraft/client/font/TextHandler$LineBreakingVisitor + f Lnet/minecraft/class_2583; field_24229 lastSpaceStyle + f Z field_24226 nonEmpty + f Lnet/minecraft/class_2583; field_24225 endStyle + f I field_24231 startOffset + f I field_24230 count + f I field_24224 endIndex + f I field_24228 lastSpaceBreak + f F field_24223 maxWidth + f F field_24227 totalWidth + m ()Z method_27509 hasLineBreak + m (I)V method_27506 offset + p 1 extraOffset + m (ILnet/minecraft/class_2583;)Z method_27507 breakLine + p 2 finishStyle + p 1 finishIndex + m ()Lnet/minecraft/class_2583; method_27508 getEndingStyle + m (Lnet/minecraft/class_5225;F)V + p 2 maxWidth + m ()I method_27505 getEndingIndex +c net/minecraft/class_5225$class_5226 net/minecraft/client/font/TextHandler$LineWrappingCollector + f Ljava/lang/String; field_24221 joined + f Ljava/util/List; field_24220 parts + m (I)C method_27500 charAt + p 1 index + m (IILnet/minecraft/class_2583;)Lnet/minecraft/class_5348; method_27501 collectLine + p 1 lineLength + p 2 skippedLength + p 3 style + m (Lnet/minecraft/class_5225$class_5345;)Ljava/lang/String; method_27504 method_27504 + p 0 part + m (Ljava/util/List;)V + p 1 parts + m ()Lnet/minecraft/class_5348; method_27499 collectRemainders +c net/minecraft/class_5225$class_5230 net/minecraft/client/font/TextHandler$WidthLimitingVisitor + f I field_24236 length + f F field_24235 widthLeft + m ()I method_27513 getLength + m (Lnet/minecraft/class_5225;F)V + p 2 maxWidth + m ()V method_27514 resetLength +c net/minecraft/class_5225$class_5231 net/minecraft/client/font/TextHandler$WidthRetriever + c A retriever of character width. + m (ILnet/minecraft/class_2583;)F getWidth getWidth + c {@return the width of a character} + p 1 codePoint + c the character's code point + p 2 style + c the style of the character, carrying font and formatting information +c net/minecraft/class_5225$1 net/minecraft/client/font/TextHandler$1 + f Lnet/minecraft/class_5222; field_24219 collector +c net/minecraft/class_6554 net/minecraft/world/biome/source/util/VanillaBiomeParameters + f F field_35048 MAX_SECOND_HIGH_WEIRDNESS + f [[Lnet/minecraft/class_5321; field_34521 nearMountainBiomes + f Lnet/minecraft/class_6544$class_6546; field_34508 frozenTemperature + f [[Lnet/minecraft/class_5321; field_34518 oceanBiomes + f Lnet/minecraft/class_6544$class_6546; field_34504 defaultParameter + f Lnet/minecraft/class_6544$class_6546; field_34516 midInlandContinentalness + f [Lnet/minecraft/class_6544$class_6546; field_34507 erosionParameters + f Lnet/minecraft/class_6544$class_6546; field_34512 oceanContinentalness + f F field_34502 MAX_HIGH_WEIRDNESS + f F field_35041 MAX_MID_WEIRDNESS + f [[Lnet/minecraft/class_5321; field_34522 specialNearMountainBiomes + f Lnet/minecraft/class_6544$class_6546; field_34509 nonFrozenTemperatureParameters + f [[Lnet/minecraft/class_5321; field_34519 commonBiomes + f Lnet/minecraft/class_6544$class_6546; field_34517 farInlandContinentalness + f [Lnet/minecraft/class_6544$class_6546; field_34506 humidityParameters + f Lnet/minecraft/class_6544$class_6546; field_34513 coastContinentalness + f F field_34503 MAX_PEAK_WEIRDNESS + f [[Lnet/minecraft/class_5321; field_36339 windsweptBiomes + f Lnet/minecraft/class_6544$class_6546; field_34514 riverContinentalness + f Lnet/minecraft/class_6544$class_6546; field_34510 mushroomFieldsContinentalness + f [Lnet/minecraft/class_6544$class_6546; field_34505 temperatureParameters + f F field_34500 MAX_VALLEY_WEIRDNESS + f F field_35047 MAX_LOW_WEIRDNESS + f [[Lnet/minecraft/class_5321; field_34520 uncommonBiomes + f Lnet/minecraft/class_6544$class_6546; field_34515 nearInlandContinentalness + f Lnet/minecraft/class_6544$class_6546; field_34511 deepOceanContinentalness + m (IILnet/minecraft/class_6544$class_6546;)Lnet/minecraft/class_5321; method_38198 getErodedShoreBiome + c {@return a shore biome for high erosion values}.\n\nIf {@code weirdness} is positive, this will be a regular biome.\nFor some specific conditions, this can also be a windswept savanna.\n\n@see #getShoreBiome\n@see #getRegularBiome\n@see #getBiomeOrWindsweptSavanna + p 3 weirdness + p 2 humidity + p 1 temperature + m (D)Ljava/lang/String; method_38179 getPeaksValleysDescription + p 0 weirdness + m (Ljava/util/function/Consumer;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;FLnet/minecraft/class_5321;)V method_41419 writeDeepDarkParameters + p 1 parameters + p 3 humidity + p 2 temperature + p 5 erosion + p 4 continentalness + p 7 offset + p 6 weirdness + p 8 biome + m ()[Lnet/minecraft/class_6544$class_6546; method_40012 getErosionParameters + m (Ljava/util/function/Consumer;)V method_38185 writeOverworldBiomeParameters + c Writes all biome parameters for the overworld to the passed parameter consumer. + p 1 parameters + m (Ljava/util/function/Consumer;Lnet/minecraft/class_6544$class_6546;)V method_38196 writeMidBiomes + c Writes biome parameters for the "mid" weirdness range.\n\nThese will be regular biomes in most cases, but can also be shore biomes near the coast,\nor the start of a mountain biome for very low erosion. + p 1 parameters + p 2 weirdness + m ()Ljava/util/List; method_39168 getSpawnSuitabilityNoises + m (IILnet/minecraft/class_6544$class_6546;)Lnet/minecraft/class_5321; method_38182 getRegularBiome + c {@return a regular biome.} This can be a {@linkplain #commonBiomes common} or {@linkplain #uncommonBiomes uncommon} biome, depending on\ntemperature and humidity.\n\nNote that for negative weirdness values, only common biomes can get picked by this\nmethod. + p 2 humidity + p 1 temperature + p 3 weirdness + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910$class_6912;)Z method_43718 inDeepDarkParameters + p 1 depth + p 2 pos + p 0 erosion + m (IILnet/minecraft/class_6544$class_6546;)Lnet/minecraft/class_5321; method_38194 getMountainStartBiome + c {@return a slope biome if {@code temperature} is {@code 0}, otherwise a regular biome}.\n\n@see #getMountainSlopeBiome\n@see getBadlandsOrRegularBiome + p 1 temperature + p 3 weirdness + p 2 humidity + m (Ljava/util/function/Consumer;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;FLnet/minecraft/class_5321;)V method_38187 writeBiomeParameters + p 8 biome + p 6 weirdness + p 7 offset + p 4 continentalness + p 5 erosion + p 2 temperature + p 3 humidity + p 1 parameters + m (D)Ljava/lang/String; method_38188 getContinentalnessDescription + p 1 continentalness + m (IILnet/minecraft/class_6544$class_6546;)Lnet/minecraft/class_5321; method_38204 getPeakBiome + c {@return a peak biome for the given temperature, humidity and weirdness}. + p 3 weirdness + p 2 humidity + p 1 temperature + m (D)Ljava/lang/String; method_38201 getHumidityDescription + p 1 humidity + m ()[Lnet/minecraft/class_6544$class_6546; method_40015 getWeirdnessParameters + m ()[Lnet/minecraft/class_6544$class_6546; method_40011 getHumidityParameters + m (D[Lnet/minecraft/class_6544$class_6546;)Ljava/lang/String; method_38180 getNoiseRangeIndex + p 0 noisePoint + p 2 noiseRanges + m (IILnet/minecraft/class_6544$class_6546;)Lnet/minecraft/class_5321; method_38183 getWindsweptOrRegularBiome + c {@return a windswept or regular biome, depending on temperature and humidity}.\n\n@see #getRegularBiome + p 1 temperature + p 3 weirdness + p 2 humidity + m (D)Ljava/lang/String; method_38197 getTemperatureDescription + p 1 temperature + m (IILnet/minecraft/class_6544$class_6546;)Lnet/minecraft/class_5321; method_38205 getMountainSlopeBiome + c {@return a mountain slope biome for the given temperature, humidity and weirdness}\n\n@see #getNearMountainBiome + p 3 weirdness + p 2 humidity + p 1 temperature + m ()[Lnet/minecraft/class_6544$class_6546; method_40014 getPeaksValleysParameters + m (Ljava/util/function/Consumer;)V method_38195 writeLandBiomes + c Writes all parameters for land biomes.\nThis means that {@code continentalness} is greater than about {@code -0.16} for them. + p 1 parameters + m ()[Lnet/minecraft/class_6544$class_6546; method_40010 getTemperatureParameters + m (Ljava/util/function/Consumer;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;FLnet/minecraft/class_5321;)V method_38192 writeCaveBiomeParameters + p 1 parameters + p 8 biome + p 6 weirdness + p 7 offset + p 4 continentalness + p 5 erosion + p 2 temperature + p 3 humidity + m (Ljava/util/function/Consumer;)V method_38199 writeCaveBiomes + c Writes biome parameters for all cave biomes.\nCurrently, this only consists of dripstone caves, lush caves, and the deep dark.\n\nDripstone caves can generate anywhere where there are high high continentalness values.\nLush caves can generate anywhere at high humidity values.\n\nThe deep dark can generate anywhere at low erosion values, which usually means\nit will be near mountains. + p 1 parameters + m (D)Ljava/lang/String; method_38193 getErosionDescription + p 1 erosion + m (IILnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_5321;)Lnet/minecraft/class_5321; method_40009 getBiomeOrWindsweptSavanna + c {@return a windswept savanna for specific conditions, otherwise the given biome}.\n\nFor a windswept savanna being returned by this method, {@code temperature} must be\ngreater than {@code 1}, {@code humidity} must be less than {@code 4} and\n{@code weirdness} must be positive. + p 3 weirdness + p 4 biomeKey + p 1 temperature + p 2 humidity + m (II)Lnet/minecraft/class_5321; method_38181 getShoreBiome + c {@return an appropriate shore biome for the given temperature and humidity}. + p 2 humidity + p 1 temperature + m (Ljava/util/function/Consumer;Lnet/minecraft/class_6544$class_6546;)V method_38203 writeValleyBiomes + c Writes biome parameters for the "valley" weirdness range.\n\nIn most cases, a valley will be a river. In low temperatures, a river can also be frozen.\nValleys that go through a swamp will remain a swamp biome.\n\nMountain ranges can also sometimes have valleys that are not a river,\nin which case this method will pick a regular or badlands biome. + p 1 parameters + p 2 weirdness + m (Ljava/util/function/Consumer;Lnet/minecraft/class_6544$class_6546;)V method_38186 writePeakBiomes + c Writes biome parameters for the "peak" weirdness range.\n\nThese can be regular biomes for higher erosion values or near the coast,\nbiomes that are usually near mountains (like plateaus or mountain slopes), or,\nfor lower erosion values, peak biomes like jagged, frozen or stony peaks. + p 2 weirdness + p 1 parameters + m (IILnet/minecraft/class_6544$class_6546;)Lnet/minecraft/class_5321; method_38189 getBadlandsOrRegularBiome + c {@return badlands if {@code temperature} is {@code 4}, otherwise a regular biome}.\n\n@see #getRegularBiome + p 1 temperature + p 3 weirdness + p 2 humidity + m (IILnet/minecraft/class_6544$class_6546;)Lnet/minecraft/class_5321; method_38202 getNearMountainBiome + c {@return a biome to generate near mountains.}\nThis can be a {@linkplain #nearMountainBiomes normal} or\n{@linkplain #specialNearMountainBiomes special} biome, depending on\ntemperature and humidity.\n\nNote that for negative weirdness values, no special biomes can get picked by this method. + p 1 temperature + p 3 weirdness + p 2 humidity + m ()[Lnet/minecraft/class_6544$class_6546; method_40013 getContinentalnessParameters + m (Ljava/util/function/Consumer;Lnet/minecraft/class_6544$class_6546;)V method_38191 writeHighBiomes + c Writes biome parameters for the "high" weirdness range.\n\nThese can be regular biomes for higher erosion values or near the coast,\nbiomes that usually appear near mountains, like meadows or slopes,\nor, rarely (for very low erosion and high continentalness values), peak biomes. + p 2 weirdness + p 1 parameters + m (Ljava/util/function/Consumer;)V method_38190 writeOceanBiomes + c Writes all parameters for ocean biomes.\nThis includes oceans, deep oceans and mushroom fields. + p 1 parameters + m (ILnet/minecraft/class_6544$class_6546;)Lnet/minecraft/class_5321; method_38184 getBadlandsBiome + c {@return a badlands for the given humidity and weirdness}. + p 1 humidity + p 2 weirdness + m (Ljava/util/function/Consumer;Lnet/minecraft/class_6544$class_6546;)V method_38200 writeLowBiomes + c Writes biome parameters for the "low" weirdness range.\n\nThese will be regular biomes in most cases,\nbut can also be shore biomes near the coast,\nor swamps for very high erosion. + p 1 parameters + p 2 weirdness + m (Ljava/util/function/Consumer;)V method_46678 writeDebug + p 1 parameters +c net/minecraft/class_5224 net/minecraft/text/CharacterVisitor + c A visitor for single characters in a string. + m (ILnet/minecraft/class_2583;I)Z accept accept + c Visits a single character.\n\n

Multiple surrogate characters are converted into one single {@code\ncodePoint} when passed into this method.\n\n@return {@code true} to continue visiting other characters, or {@code false} to terminate the visit + p 2 style + c the style of the character, containing formatting and font information + p 3 codePoint + c the code point of the character + p 1 index + c the current index of the character +c net/minecraft/class_5219 net/minecraft/world/SaveProperties + f I field_31845 MCREGION_FORMAT_ID + f I field_31844 ANVIL_FORMAT_ID + m ()Lnet/minecraft/class_5268; method_27859 getMainWorldProperties + m (I)Ljava/lang/String; method_27440 getFormatName + p 1 id + m ()Lnet/minecraft/class_7699; method_45560 getEnabledFeatures + m ()Z method_45555 isFlatWorld + m (Lnet/minecraft/class_7712;)V method_29590 updateLevelInfo + p 1 dataConfiguration + m (Lnet/minecraft/class_2881$class_8576;)V method_29037 setDragonFight + p 1 dragonFight + m ()Lnet/minecraft/class_1267; method_207 getDifficulty + m (Z)V method_186 setDifficultyLocked + p 1 difficultyLocked + m ()Z method_27431 isModded + m ()Z method_194 areCommandsAllowed + m ()Z method_152 isHardcore + m ()Ljava/util/Set; method_27432 getServerBrands + m ()Lcom/mojang/serialization/Lifecycle; method_29588 getLifecycle + m ()Lnet/minecraft/class_1928; method_146 getGameRules + m ()Lnet/minecraft/class_1940; method_27433 getLevelInfo + m (Lnet/minecraft/class_2487;)V method_221 setCustomBossEvents + p 1 customBossEvents + m ()Ljava/lang/String; method_150 getLevelName + m (Lnet/minecraft/class_1934;)V method_193 setGameMode + p 1 gameMode + m ()Z method_45556 isDebugWorld + m ()Ljava/util/Set; method_49900 getRemovedFeatures + m ()Lnet/minecraft/class_2487; method_226 getPlayerData + m ()I method_168 getVersion + m (Ljava/lang/String;Z)V method_24285 addServerBrand + p 2 modded + p 1 brand + m ()Lnet/minecraft/class_2487; method_228 getCustomBossEvents + m ()Lnet/minecraft/class_5285; method_28057 getGeneratorOptions + m (Lnet/minecraft/class_1267;)V method_208 setDifficulty + p 1 difficulty + m ()Lnet/minecraft/class_7712; method_29589 getDataConfiguration + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; method_163 cloneWorldNbt + p 2 playerNbt + p 1 registryManager + m ()Z method_197 isDifficultyLocked + m ()Lnet/minecraft/class_2881$class_8576; method_29036 getDragonFight + m (Lnet/minecraft/class_129;)V method_151 populateCrashReport + p 1 section + m ()Lnet/minecraft/class_1934; method_210 getGameMode +c net/minecraft/class_7893 net/minecraft/entity/ai/brain/task/Task + m ()Ljava/lang/String; method_46910 getName + m ()Lnet/minecraft/class_4097$class_4098; method_18921 getStatus + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)V method_18925 stop + p 1 world + p 3 time + p 2 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)V method_18923 tick + p 1 world + p 3 time + p 2 entity + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_18922 tryStarting + p 2 entity + p 1 world + p 3 time +c net/minecraft/class_6563 net/minecraft/world/chunk/PaletteProvider + c A palette provider determines what type of palette to choose given the\nbits used to represent each element. In addition, it controls how the\ndata in the serialized container is read based on the palette given. + f Lnet/minecraft/class_2816; field_62543 palette + f Lnet/minecraft/class_11895; field_62439 ARRAY_1_TYPE + f Lnet/minecraft/class_11895; field_62443 BI_MAP_5_TYPE + f Lnet/minecraft/class_11895; field_62445 BI_MAP_7_TYPE + f Lnet/minecraft/class_11895; field_62441 ARRAY_3_TYPE + f I field_62545 size + f Lnet/minecraft/class_2837$class_6559; field_34567 ARRAY + f I field_62541 bitsInMemory + f Lnet/minecraft/class_11895; field_62446 BI_MAP_8_TYPE + f Lnet/minecraft/class_11895; field_62438 SINGULAR_TYPE + f Lnet/minecraft/class_11895; field_62442 ARRAY_4_TYPE + f Lnet/minecraft/class_11895; field_62444 BI_MAP_6_TYPE + f Lnet/minecraft/class_11895; field_62440 ARRAY_2_TYPE + f Lnet/minecraft/class_2837$class_6559; field_34568 BI_MAP + f I field_62544 bitsPerAxis + f Lnet/minecraft/class_2359; field_62542 idList + f Lnet/minecraft/class_2837$class_6559; field_34566 SINGULAR + m ()Lnet/minecraft/class_2816; method_74166 getPalette + m (I)Lnet/minecraft/class_11895; method_38314 createType + c Creates a palette type that is suitable to represent objects with\n{@code bitsInStorage} size in the storage.\n\n@return the palette type + p 1 bitsInStorage + m (Lnet/minecraft/class_2359;I)V + p 2 bitsPerAxis + p 1 idList + m (Lnet/minecraft/class_2359;)Lnet/minecraft/class_6563; method_74165 forBiomes + p 0 idList + m (Lnet/minecraft/class_2359;)Lnet/minecraft/class_6563; method_74162 forBlockStates + p 0 idList + m (III)I method_38313 computeIndex + c {@return the index of an object in the storage given its x, y, z coordinates} + p 3 z + c the z coordinate + p 1 x + c the x coordinate + p 2 y + c the y coordinate + m (I)Lnet/minecraft/class_11895; method_74164 createTypeFromSize + p 1 size + m (I)I method_74167 toBits + p 0 size + m ()I method_74161 getSize + m ()Lnet/minecraft/class_2359; method_74163 getIdList +c net/minecraft/class_7894 net/minecraft/entity/ai/brain/task/SingleTickTask + f Lnet/minecraft/class_4097$class_4098; field_40994 status +c net/minecraft/class_7891 net/minecraft/registry/Registerable + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_7871; method_46799 getRegistryLookup + p 1 registryRef + m (Lnet/minecraft/class_5321;Ljava/lang/Object;)Lnet/minecraft/class_6880$class_6883; method_46838 register + p 1 key + p 2 value + m (Lnet/minecraft/class_5321;Ljava/lang/Object;Lcom/mojang/serialization/Lifecycle;)Lnet/minecraft/class_6880$class_6883; method_46800 register + p 1 key + p 3 lifecycle + p 2 value +c net/minecraft/class_6568 net/minecraft/world/gen/chunk/ChunkNoiseSampler + c {@code ChunkNoiseSampler} is responsible for sampling the density functions for\nthe cells in each chunk, managing caches and interpolators, the {@code Blender},\nand the block state samplers.\n\n

An instance of this is created for every chunk. + f I field_34603 startBiomeX + f I field_36590 horizontalCellBlockCount + f I field_36575 cellBlockY + f J field_36587 lastBlendingColumnPos + f I field_36591 verticalCellBlockCount + f I field_34598 verticalCellCount + f I field_36579 index + f I field_34604 startBiomeZ + f Ljava/util/List; field_34605 interpolators + f Lnet/minecraft/class_6748$class_6956; field_36588 lastBlendingResult + f I field_34600 minimumCellY + f Z field_36593 isSamplingForCaches + f Lnet/minecraft/class_6910$class_6911; field_36580 interpolationEachApplier + c The implementation of {@code EachApplier} that is used for filling the\ninterpolators' density buffers.\n\n

It runs on a vertical column of cells, with the density being sampled at the first\nblock in the cell (cell-local coordinate {@code 0} for X, Y and Z). + f Lnet/minecraft/class_6748; field_35487 blender + f I field_36574 cellBlockX + f I field_36594 startBlockX + f I field_34599 horizontalCellCount + f J field_36578 cacheOnceUniqueIndex + f Lnet/minecraft/class_6568$class_6569; field_36584 blockStateSampler + f I field_34601 startCellX + f Lnet/minecraft/class_6568$class_6951; field_36586 cachedBlendOffsetDensityFunction + f Z field_36592 isInInterpolationLoop + f Lnet/minecraft/class_6910; field_61472 preliminarySurfaceLevel + f Ljava/util/Map; field_36582 actualDensityFunctionCache + f I field_36573 startBlockZ + f J field_36577 sampleUniqueIndex + f Ljava/util/List; field_36581 caches + f Lit/unimi/dsi/fastutil/longs/Long2IntMap; field_61471 surfaceHeightEstimateCache + f I field_36589 horizontalBiomeEnd + f Lnet/minecraft/class_6568$class_6951; field_36585 cachedBlendAlphaDensityFunction + f I field_34602 startCellZ + f Lnet/minecraft/class_6916$class_7050; field_37113 beardifying + f I field_36576 cellBlockZ + f I field_36572 startBlockY + f Lnet/minecraft/class_6350; field_34613 aquiferSampler + m (IIII)I method_72685 estimateHighestSurfaceLevel + p 2 minZ + p 1 minX + p 4 maxZ + p 3 maxX + m ()V method_40537 stopInterpolation + c Stops the interpolation loop for this chunk. + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40533 getActualDensityFunctionImpl + c {@return the actual density function for a given density function} + p 1 function + m (II)Lnet/minecraft/class_6748$class_6956; method_40535 calculateBlendResult + p 2 blockZ + p 1 blockX + m (ZI)V method_40532 sampleDensity + c Samples the density values for all cells in the chunk with the given X coordinate.\nThis is done for every {@code interpolated} function. + p 2 cellX + c the current cell X coordinate + p 1 start + c whether to store the results in the start or end density buffer + m ()I method_42362 getVerticalCellBlockCount + m (ILnet/minecraft/class_7138;IILnet/minecraft/class_5309;Lnet/minecraft/class_6916$class_7050;Lnet/minecraft/class_5284;Lnet/minecraft/class_6350$class_6565;Lnet/minecraft/class_6748;)V + p 9 blender + p 2 noiseConfig + p 1 horizontalCellCount + p 4 startBlockZ + p 3 startBlockX + p 6 beardifying + p 5 generationShapeConfig + p 8 fluidLevelSampler + p 7 chunkGeneratorSettings + m (ID)V method_38337 interpolateY + c Interpolates density values on the Y axis for every interpolator. + p 1 blockY + c the absolute block Y coordinate + p 2 deltaY + c the cell-local block Y coordinate divided by the number of blocks in a cell vertically + m (ID)V method_38349 interpolateX + c Interpolates density values on the X axis for every interpolator. + p 2 deltaX + c the cell-local block X coordinate divided by the number of blocks in a cell horizontally + p 1 blockX + c the absolute block X coordinate + m (I)V method_38339 sampleEndDensity + c Samples the density values for all cells in the chunk with the given X coordinate.\nThis is done for every {@code interpolated} function. The resulting density values\nwill be stored in the interpolator's end density buffer. + p 1 cellX + c the chunk-local cell X coordinate + m (Lnet/minecraft/class_6953;Ljava/util/List;)Lnet/minecraft/class_6544$class_6552; method_40531 createMultiNoiseSampler + p 1 noiseRouter + p 2 spawnTarget + m ()Lnet/minecraft/class_2680; method_40536 sampleBlockState + m ()I method_42361 getHorizontalCellBlockCount + m (Lnet/minecraft/class_2791;Lnet/minecraft/class_7138;Lnet/minecraft/class_6916$class_7050;Lnet/minecraft/class_5284;Lnet/minecraft/class_6350$class_6565;Lnet/minecraft/class_6748;)Lnet/minecraft/class_6568; method_39543 create + p 0 chunk + p 5 blender + p 3 chunkGeneratorSettings + p 4 fluidLevelSampler + p 1 noiseConfig + p 2 beardifying + m ()V method_38348 swapBuffers + c Swaps the start and end density buffers of every interpolator. + m (II)I method_39900 estimateSurfaceHeight + p 2 blockZ + p 1 blockX + m ()V method_38336 sampleStartDensity + c Samples the density values for all cells in the chunk with the first X coordinate.\nThis is done for every {@code interpolated} function. The resulting density values\nwill be stored in the interpolator's start density buffer. + m (Lnet/minecraft/class_6910;)Lnet/minecraft/class_6910; method_40529 getActualDensityFunction + c {@return the actual density function for a given density function}\n\n

The classes in {@link DensityFunctionTypes} for caches, interpolators,\n{@code blend_alpha} and {@code blend_offset} use simple stub implementations\nthat get replaced with their actual implementation by calling this method. + p 1 function + c the density function to get an actual implementation for + m ()Lnet/minecraft/class_6350; method_38354 getAquiferSampler + m (J)I method_39899 calculateSurfaceHeightEstimate + p 1 columnPos + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910$class_6912;)Lnet/minecraft/class_2680; method_40530 method_40530 + p 2 pos + m (ID)V method_38355 interpolateZ + c Interpolates density values on the Z axis for every interpolator. + p 1 blockZ + c the absolute block Z coordinate + p 2 deltaZ + c the cell-local block Z coordinate divided by the number of blocks in a cell vertically + m (I)Lnet/minecraft/class_6568; method_40534 at + m (II)V method_38362 onSampledCellCorners + c This should be called when the start and end density buffers are\ncorrectly filled for the current cell.\n\n

This starts the interpolators and fills the cell caches.\n\n@implNote For filling the cell caches, {@code this} is used as the\n{@link net.minecraft.world.gen.densityfunction.DensityFunction.EachApplier EachApplier}. + p 2 cellZ + c the chunk-local cell Z coordinate + p 1 cellY + c the chunk-local cell Y coordinate +c net/minecraft/class_6568$class_5917 net/minecraft/world/gen/chunk/ChunkNoiseSampler$DensityInterpolator + f D field_29242 x1z0 + f D field_29241 x0z0 + f D field_29240 x1y1z1 + f D field_34624 result + f Lnet/minecraft/class_6910; field_34623 delegate + f D field_29235 x1y0z0 + f D field_29246 z1 + f D field_29245 z0 + f D field_29234 x0y0z1 + f D field_29233 x0y0z0 + f D field_29244 x1z1 + f D field_29243 x0z1 + f D field_29239 x1y1z0 + f D field_29238 x0y1z1 + f [[D field_29228 endDensityBuffer + f D field_29237 x0y1z0 + f [[D field_29227 startDensityBuffer + f D field_29236 x1y0z1 + m (II)V method_34289 onSampledCellCorners + c Copies the densities of the eight corners of the current cell into their\nrespective fields. + p 1 cellY + c the cell's Y coordinate + p 2 cellZ + c the cell's chunk-local Z coordinate + m (D)V method_34287 interpolateY + c Interpolates the eight densities on the Y axis. + p 1 deltaY + m (D)V method_34292 interpolateX + c Interpolates the four remaining densities on the X axis. + p 1 deltaX + m (Lnet/minecraft/class_6568;Lnet/minecraft/class_6910;)V + p 2 delegate + m ()V method_34291 swapBuffers + m (D)V method_38363 interpolateZ + c Interpolates the two remaining densities on the Z axis. + p 1 deltaZ + m (II)[[D method_34293 createBuffer + p 2 sizeX + p 1 sizeZ +c net/minecraft/class_6568$class_6569 net/minecraft/world/gen/chunk/ChunkNoiseSampler$BlockStateSampler + m (Lnet/minecraft/class_6910$class_6912;)Lnet/minecraft/class_2680; calculate sample + p 1 pos +c net/minecraft/class_6568$class_6950 net/minecraft/world/gen/chunk/ChunkNoiseSampler$CacheOnce + f D field_36609 lastSamplingResult + f [D field_36610 cache + f Lnet/minecraft/class_6910; field_36606 delegate + f J field_36607 sampleUniqueIndex + f J field_36608 cacheOnceUniqueIndex + m (Lnet/minecraft/class_6568;Lnet/minecraft/class_6910;)V + p 2 delegate +c net/minecraft/class_6568$class_6952 net/minecraft/world/gen/chunk/ChunkNoiseSampler$ParentedNoiseType + m ()Lnet/minecraft/class_6910; comp_469 wrapped +c net/minecraft/class_6568$class_6951 net/minecraft/world/gen/chunk/ChunkNoiseSampler$FlatCache + f I field_61473 horizontalCacheSize + f Lnet/minecraft/class_6910; field_36612 delegate + f [D field_36613 cache + m (Lnet/minecraft/class_6568;Lnet/minecraft/class_6910;Z)V + p 3 sample + p 2 delegate +c net/minecraft/class_6568$class_6947 net/minecraft/world/gen/chunk/ChunkNoiseSampler$BlendOffsetDensityFunction +c net/minecraft/class_6568$class_6946 net/minecraft/world/gen/chunk/ChunkNoiseSampler$BlendAlphaDensityFunction +c net/minecraft/class_6568$class_6949 net/minecraft/world/gen/chunk/ChunkNoiseSampler$CellCache + f [D field_36604 cache + f Lnet/minecraft/class_6910; field_36603 delegate + m (Lnet/minecraft/class_6568;Lnet/minecraft/class_6910;)V + p 2 delegate +c net/minecraft/class_6568$class_6948 net/minecraft/world/gen/chunk/ChunkNoiseSampler$Cache2D + f D field_36601 lastSamplingResult + f Lnet/minecraft/class_6910; field_36599 delegate + f J field_36600 lastSamplingColumnPos + m (Lnet/minecraft/class_6910;)V + p 1 delegate +c net/minecraft/class_6566 net/minecraft/util/math/random/BaseRandom + f F field_34582 FLOAT_MULTIPLIER + f D field_34583 DOUBLE_MULTIPLIER + m (I)I method_43156 next + p 1 bits +c net/minecraft/class_7897 net/minecraft/entity/ai/brain/task/Tasks + c Contains task-related utility methods. + m (Lnet/minecraft/class_4103$class_4104;Lnet/minecraft/class_6032;Lnet/minecraft/class_4103$class_4216;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47163 method_47163 + p 4 entity + p 3 world + p 5 time + m (Lnet/minecraft/class_4103$class_4104;Lnet/minecraft/class_6032;Lnet/minecraft/class_4103$class_4216;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47164 method_47164 + p 3 context + m (Ljava/util/List;Lnet/minecraft/class_4103$class_4104;Lnet/minecraft/class_4103$class_4216;)Lnet/minecraft/class_7894; method_47167 weighted + c {@return a task that runs task(s) from {@code weightedTasks}} + p 1 order + c whether to sort or shuffle the task list + p 0 weightedTasks + c the list of pairs of the task function and its weight + p 2 runMode + c whether to run all or just one of the tasks + m (Ljava/util/List;)Lnet/minecraft/class_7894; method_47166 pickRandomly + c {@return a task that picks and runs a task from {@code weightedTasks} randomly} + p 0 weightedTasks + c the list of pairs of the task function and its weight + m (Lnet/minecraft/class_6032;Lcom/mojang/datafixers/util/Pair;)V method_47165 method_47165 + p 1 task +c net/minecraft/class_7898 net/minecraft/entity/ai/brain/task/TaskTriggerer + c A lambda-based alternative to subclassing {@link Task}.\n\n

To use this,\n

    \n
  1. Make a static method with all configurable parameters (such as speed, range, etc).
  2. \n
  3. If there is a value that needs to be tracked between ticks (such as cooldown),\ndeclare a mutable variable (such as {@link org.apache.commons.lang3.mutable.MutableInt}).
  4. \n
  5. Return the result of {@link #task}. This method creates a new {@link SingleTickTask}.
  6. \n
\n\n

A lambda is passed to the {@code task} method. This takes a {@link TaskTriggerer.TaskContext}.\nYou can either call {@link TaskTriggerer.TaskContext#point} to set the actual task function,\nor declare a dependency on memory queries. The task function is a function that takes\nthe server world, entity, and the current time, and returns a boolean indicating whether\na task successfully ran.\n\n

Example of memory-independent task

\n
{@code\npublic static Task createHealTask() {\n    return TaskTriggerer.task(context -> context.point((world, entity, time) -> {\n        entity.heal(1.0f);\n        return true;\n    }));\n}\n}
\n\n

Memory-dependent task

\n

Memory-dependent tasks (i.e. one that queries, remembers, or forgets a memory) first\nshould call {@code TaskContext.group} with results of {@code Context.queryMemory} methods\nfor all the dependent memories. Then, call {@code apply} with {@code context} and a\nlambda function taking the results of the query. This function returns the task function\nseen earlier.\n\n

If any of the query is not successful (e.g. because a value was not present), the task will\nnot run. If all succeed, then the task runs, and the query result can be obtained via\n{@link TaskTriggerer.TaskContext#getValue}.\n\n

There are three query types:\n\n

    \n
  • {@link TaskTriggerer.TaskContext#queryMemoryAbsent} that succeeds if a value is\nnot present in the memory.
  • \n
  • {@link TaskTriggerer.TaskContext#queryMemoryValue} that succeeds if a value is\npresent in the memory. The result is the queried value.
  • \n
  • {@link TaskTriggerer.TaskContext#queryMemoryOptional} that always succeeds. The value\nis an optional that contains the value if it is present in the memory.
  • \n
\n\n

For example, the following code queries {@link\nMemoryModuleType#MEETING_POINT} and forgets it:\n\n

{@code\npublic static Task createForgetMeetingPointTask() {\n    return TaskTriggerer.task(context -> context.group(context.queryMemoryValue(MemoryModuleType.MEETING_POINT)).apply(context, meetingPoint -> (world, entity, time) -> {\n        GlobalPos pos = (GlobalPos)context.getValue(meetingPoint);\n        // Do something with meetingPoint or pos\n        // For example, forget the meeting point:\n        meetingPoint.forget();\n        return true;\n    }));\n}\n}
+ f Lnet/minecraft/class_7898$class_7904; field_40998 function + m (Lnet/minecraft/class_7898$class_7904;)V + p 1 function + m (Ljava/util/function/BiPredicate;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47222 method_47222 + p 3 time + p 1 world + p 2 entity + m (Ljava/util/function/BiPredicate;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47223 method_47223 + p 1 context + m (Ljava/util/function/Predicate;Lnet/minecraft/class_7894;)Lnet/minecraft/class_7894; method_47227 runIf + p 0 predicate + p 1 task + m (Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/class_7898$class_7904; method_47229 getFunction + p 0 app + m (Lnet/minecraft/class_7911;Lnet/minecraft/class_7911;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47218 method_47218 + p 2 context + m (Ljava/util/function/BiPredicate;)Lnet/minecraft/class_7894; method_47221 predicate + p 0 predicate + m (Lnet/minecraft/class_7911;Lcom/mojang/datafixers/util/Unit;)Lnet/minecraft/class_7911; method_47219 method_47219 + p 1 unit + m (Ljava/util/function/Predicate;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47228 method_47228 + p 1 context + m (Ljava/util/function/Function;)Lnet/minecraft/class_7894; method_47224 task + p 0 creator + m (Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/class_7898; method_47220 cast + p 0 app + m ()Lnet/minecraft/class_7898$class_7900; method_47215 newContext + m (Lnet/minecraft/class_7898$class_7904;)Lnet/minecraft/class_7898; method_47216 of + p 0 function + m (Ljava/util/function/Predicate;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47226 method_47226 + p 1 world + p 2 entity + p 3 time + m (Ljava/util/function/Predicate;)Lnet/minecraft/class_7894; method_47225 predicate + p 0 predicate + m (Lnet/minecraft/class_7911;Lnet/minecraft/class_7911;)Lnet/minecraft/class_7894; method_47217 runIf + p 1 task + p 0 predicate +c net/minecraft/class_7898$class_7900 net/minecraft/entity/ai/brain/task/TaskTriggerer$TaskContext + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lcom/mojang/datafixers/kinds/App; ap4 ap4 + p 5 function4 + p 4 function3 + p 3 function2 + p 2 function1 + p 1 app + m (Lcom/mojang/datafixers/kinds/App;)Ljava/util/function/Function; lift1 lift1 + p 1 app + m (Ljava/lang/Object;)Lcom/mojang/datafixers/kinds/App; point point + p 1 value + m (Lnet/minecraft/class_7911;)Lnet/minecraft/class_7898; method_47234 trigger + p 1 runnable + m (Ljava/util/function/Function;Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/class_7898; method_47241 map + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/class_7898; method_47237 ap2 + m (Ljava/lang/Object;)Lnet/minecraft/class_7898; method_47240 point + m (Lnet/minecraft/class_4140;)Lnet/minecraft/class_7898; method_47244 queryMemoryValue + p 1 type + m (Lnet/minecraft/class_7906;)Ljava/lang/Object; method_47243 getValue + p 1 result + m (Lnet/minecraft/class_4140;)Lnet/minecraft/class_7898; method_47245 queryMemoryAbsent + p 1 type + m (Lnet/minecraft/class_4140;)Lnet/minecraft/class_7898; method_47235 queryMemoryOptional + p 1 type + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lcom/mojang/datafixers/kinds/App; ap3 ap3 + p 2 function1 + p 1 app + p 4 function3 + p 3 function2 + m (Ljava/util/function/Supplier;Ljava/lang/Object;)Lnet/minecraft/class_7898; method_47242 supply + p 2 value + p 1 nameSupplier + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/class_7898; method_47239 ap4 + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/class_7898; method_47238 ap3 + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lcom/mojang/datafixers/kinds/App; method_47236 method_47236 + p 2 app2 + m (Lnet/minecraft/class_7906;)Ljava/util/Optional; method_47233 getOptionalValue + p 1 result + m (Ljava/util/function/Function;Lcom/mojang/datafixers/kinds/App;)Lcom/mojang/datafixers/kinds/App; map map + p 2 app + p 1 function + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lcom/mojang/datafixers/kinds/App; ap2 ap2 + p 1 app + p 2 function1 + p 3 function2 +c net/minecraft/class_7898$class_7900$class_7901 net/minecraft/entity/ai/brain/task/TaskTriggerer$TaskContext$Mu +c net/minecraft/class_7898$class_7899 net/minecraft/entity/ai/brain/task/TaskTriggerer$Supply + m (Ljava/lang/Object;)V + p 1 value + m (Ljava/lang/Object;Ljava/util/function/Supplier;)V + p 2 nameSupplier + p 1 value +c net/minecraft/class_7898$class_7905 net/minecraft/entity/ai/brain/task/TaskTriggerer$Trigger + m (Lnet/minecraft/class_7911;)V + p 1 taskRunnable +c net/minecraft/class_7898$class_7905$1 net/minecraft/entity/ai/brain/task/TaskTriggerer$Trigger$1 + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Lcom/mojang/datafixers/util/Unit; method_47247 run +c net/minecraft/class_7898$class_7904 net/minecraft/entity/ai/brain/task/TaskTriggerer$TaskFunction + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Ljava/lang/Object; method_47232 run + p 1 world + p 2 entity + p 3 time + m ()Ljava/lang/String; method_47231 asString +c net/minecraft/class_7898$class_7903 net/minecraft/entity/ai/brain/task/TaskTriggerer$QueryMemory + m (Lnet/minecraft/class_7907;)V + p 1 query +c net/minecraft/class_7898$class_7903$1 net/minecraft/entity/ai/brain/task/TaskTriggerer$QueryMemory$1 + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Lnet/minecraft/class_7906; method_47246 run +c net/minecraft/class_7898$class_7902 net/minecraft/entity/ai/brain/task/TaskTriggerer$K1 +c net/minecraft/class_6564 net/minecraft/world/chunk/SingularPalette + c A palette that only holds a unique entry. Useful for void chunks or a\nsingle biome. + f Ljava/lang/Object; field_34574 entry + m (ILjava/util/List;)Lnet/minecraft/class_2837; method_38316 create + c Creates a singular palette. Used as method reference to create factory. + p 0 bitSize + c {@code 0}, as this palette has only 20=1 entry + p 1 idList + m (Ljava/util/List;)V + p 1 idList +c net/minecraft/class_7895 net/minecraft/entity/ai/brain/task/LookAtMobWithIntervalTask + m (Lnet/minecraft/class_1309;FLnet/minecraft/class_1309;)Z method_47072 method_47072 + p 2 other + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1309;)Z method_47070 method_47070 + p 1 entity + m (Lnet/minecraft/class_7898$class_7900;Ljava/util/function/Predicate;FLnet/minecraft/class_7895$class_7896;Lnet/minecraft/class_7906;Lnet/minecraft/class_7906;)Lnet/minecraft/class_7911; method_47074 method_47074 + p 4 lookTarget + p 5 visibleMobs + m (Lnet/minecraft/class_1309;)Z method_47071 method_47071 + p 0 entity + m (Lnet/minecraft/class_7898$class_7900;Lnet/minecraft/class_7906;Ljava/util/function/Predicate;FLnet/minecraft/class_7895$class_7896;Lnet/minecraft/class_7906;Lnet/minecraft/class_3218;Lnet/minecraft/class_1309;J)Z method_47073 method_47073 + p 8 time + p 6 world + p 7 entity + m (FLnet/minecraft/class_6019;Ljava/util/function/Predicate;)Lnet/minecraft/class_7893; method_47068 follow + p 1 interval + p 2 predicate + p 0 maxDistance + m (FLnet/minecraft/class_6019;)Lnet/minecraft/class_7893; method_47067 follow + p 1 interval + p 0 maxDistance + m (Lnet/minecraft/class_1299;FLnet/minecraft/class_6019;)Lnet/minecraft/class_7893; method_47069 follow + p 2 interval + p 1 maxDistance + p 0 type + m (Ljava/util/function/Predicate;FLnet/minecraft/class_7895$class_7896;Lnet/minecraft/class_7898$class_7900;)Lcom/mojang/datafixers/kinds/App; method_47075 method_47075 + p 3 context +c net/minecraft/class_7895$class_7896 net/minecraft/entity/ai/brain/task/LookAtMobWithIntervalTask$Interval + f I field_40997 remainingTicks + f Lnet/minecraft/class_6019; field_40996 interval + m (Lnet/minecraft/class_6019;)V + p 1 interval + m (Lnet/minecraft/class_5819;)Z method_47076 shouldRun + p 1 random +c net/minecraft/class_5235 net/minecraft/client/gui/screen/world/EditGameRulesScreen + f Lnet/minecraft/class_4185; field_24296 doneButton + f Ljava/util/function/Consumer; field_24293 ruleSaver + f Lnet/minecraft/class_2561; field_49558 TITLE + f Lnet/minecraft/class_8132; field_49560 layout + f Lnet/minecraft/class_1928; field_24298 gameRules + f Lnet/minecraft/class_5235$class_5241; field_49903 ruleListWidget + f Ljava/util/Set; field_24295 invalidRuleWidgets + m (Lnet/minecraft/class_5235$class_5240;)V method_27620 markInvalid + p 1 ruleWidget + m ()V method_27632 updateDoneButton + m (Lnet/minecraft/class_1928;Ljava/util/function/Consumer;)V + p 1 gameRules + p 2 ruleSaveConsumer + m (Lnet/minecraft/class_4185;)V method_57770 method_57770 + p 1 button + m (Lnet/minecraft/class_4185;)V method_27619 method_27619 + p 1 button + m (Lnet/minecraft/class_5235;Lnet/minecraft/class_364;)V method_48682 method_48682 + p 1 child + m (Lnet/minecraft/class_5235$class_5240;)V method_27626 markValid + p 1 ruleWidget +c net/minecraft/class_5235$class_5241 net/minecraft/client/gui/screen/world/EditGameRulesScreen$RuleListWidget + m (Ljava/util/Map$Entry;)V method_27638 method_27638 + p 1 e + m (Ljava/util/Map$Entry;)V method_27637 method_27637 + p 1 entry + m (Lnet/minecraft/class_5235;Lnet/minecraft/class_1928;)V + p 2 gameRules +c net/minecraft/class_5235$class_5241$1 net/minecraft/client/gui/screen/world/EditGameRulesScreen$RuleListWidget$1 + m (Lnet/minecraft/class_12279;Lnet/minecraft/class_5235$class_5238;)V method_27640 createRuleWidget + p 2 widgetFactory + p 1 key + m (Lnet/minecraft/class_5198;)Ljava/util/Map; method_27639 method_27639 + p 0 category + m (Lnet/minecraft/class_2561;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/class_12279;)Lnet/minecraft/class_5235$class_5240; method_27642 method_27642 + p 1 name + p 4 rule + p 2 description + p 3 ruleName + m (Lnet/minecraft/class_2561;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/class_12279;)Lnet/minecraft/class_5235$class_5240; method_27641 method_27641 + p 1 name + p 2 description + p 3 ruleName + p 4 rule +c net/minecraft/class_5235$class_5240 net/minecraft/client/gui/screen/world/EditGameRulesScreen$AbstractRuleWidget + f Ljava/util/List; field_24311 description + m (Ljava/util/List;)V + p 1 description +c net/minecraft/class_5235$class_5236 net/minecraft/client/gui/screen/world/EditGameRulesScreen$BooleanRuleWidget + f Lnet/minecraft/class_5676; field_24300 toggleButton + m (Lnet/minecraft/class_12279;Lnet/minecraft/class_5676;Ljava/lang/Boolean;)V method_76290 method_76290 + p 3 value + p 2 button + m (Ljava/lang/String;Lnet/minecraft/class_5676;)Lnet/minecraft/class_5250; method_32675 method_32675 + p 1 button + m (Lnet/minecraft/class_5235;Lnet/minecraft/class_2561;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/class_12279;)V + p 2 name + p 3 description + p 4 ruleName + p 5 rule +c net/minecraft/class_5235$class_5400 net/minecraft/client/gui/screen/world/EditGameRulesScreen$NamedRuleWidget + f Ljava/util/List; field_25629 name + f Ljava/util/List; field_25630 children + m (Lnet/minecraft/class_5235;Ljava/util/List;Lnet/minecraft/class_2561;)V + p 3 name + p 2 description + m (Lnet/minecraft/class_332;II)V method_29989 drawName + p 3 y + p 2 x + p 1 context +c net/minecraft/class_5235$class_5238 net/minecraft/client/gui/screen/world/EditGameRulesScreen$RuleWidgetFactory + m (Lnet/minecraft/class_2561;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/class_12279;)Lnet/minecraft/class_5235$class_5240; create create + p 1 name + p 3 ruleName + p 2 description + p 4 rule +c net/minecraft/class_5235$class_5237 net/minecraft/client/gui/screen/world/EditGameRulesScreen$RuleCategoryWidget + f Lnet/minecraft/class_2561; field_24306 name + m (Lnet/minecraft/class_5235;Lnet/minecraft/class_2561;)V + p 2 text +c net/minecraft/class_5235$class_5239 net/minecraft/client/gui/screen/world/EditGameRulesScreen$IntRuleWidget + f Lnet/minecraft/class_342; field_24309 valueWidget + m (Lnet/minecraft/class_5235;Lnet/minecraft/class_2561;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/class_12279;)V + p 2 name + p 5 rule + p 4 ruleName + p 3 description + m (Lnet/minecraft/class_12279;Ljava/lang/String;)V method_27635 method_27635 + p 2 value +c net/minecraft/class_7861 net/minecraft/network/packet/c2s/play/PlayerSessionC2SPacket + f Lnet/minecraft/class_9139; field_48182 CODEC + f Lnet/minecraft/class_7822$class_7823; comp_1129 chatSession + m (Lnet/minecraft/class_2792;)V method_46617 apply + m (Lnet/minecraft/class_2540;)V method_55966 write + p 1 buf + m (Lnet/minecraft/class_2540;)V + p 1 buf + m ()Lnet/minecraft/class_7822$class_7823; comp_1129 chatSession + m (Lnet/minecraft/class_7822$class_7823;)V + p 1 chatSession +c net/minecraft/class_6530 net/minecraft/util/profiling/jfr/sample/ThreadAllocationStatisticsSample + f J comp_50 allocated + f Ljava/lang/String; comp_49 threadName + f Ljava/time/Instant; comp_48 time + f Ljava/lang/String; field_34446 UNKNOWN + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/class_6530; method_38057 fromEvent + p 0 event + m ()J comp_50 allocated + m ()Ljava/lang/String; comp_49 threadName + m ()Ljava/time/Instant; comp_48 time + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/util/List;)Lnet/minecraft/class_6530$class_6531; method_38055 toAllocationMap + p 0 samples + m (Lnet/minecraft/class_6530;)Ljava/lang/String; method_38054 method_38054 + p 0 sample + m (Ljava/util/Map;Ljava/lang/String;Ljava/util/List;)V method_38056 method_38056 + p 2 groupedSamples + p 1 threadName + m (Ljava/time/Instant;Ljava/lang/String;J)V + p 1 time + p 2 threadName + p 3 allocated +c net/minecraft/class_6530$class_6531 net/minecraft/util/profiling/jfr/sample/ThreadAllocationStatisticsSample$AllocationMap + f Ljava/util/Map; comp_51 allocations + m ()Ljava/util/Map; comp_51 allocations + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/util/Map;)V + p 1 allocations +c net/minecraft/class_5205 net/minecraft/world/gen/foliage/BushFoliagePlacer + f Lcom/mojang/serialization/MapCodec; field_24928 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28840 method_28840 + p 0 instance +c net/minecraft/class_5204 net/minecraft/world/gen/feature/size/TwoLayersFeatureSize + f Lcom/mojang/serialization/MapCodec; field_24925 CODEC + f I field_24155 limit + f I field_24156 lowerSize + f I field_24157 upperSize + m (Lnet/minecraft/class_5204;)Ljava/lang/Integer; method_28832 method_28832 + p 0 size + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28833 method_28833 + p 0 instance + m (Lnet/minecraft/class_5204;)Ljava/lang/Integer; method_28835 method_28835 + p 0 size + m (Lnet/minecraft/class_5204;)Ljava/lang/Integer; method_28834 method_28834 + p 0 size + m (III)V + p 3 upperSize + p 1 limit + p 2 lowerSize + m (IIILjava/util/OptionalInt;)V + p 4 minClippedHeight + p 3 upperSize + p 2 lowerSize + p 1 limit +c net/minecraft/class_7869 net/minecraft/world/gen/chunk/placement/StructurePlacementCalculator + f J field_40903 concentricRingSeed + f Lnet/minecraft/class_1966; field_40901 biomeSource + f Lnet/minecraft/class_7138; field_40900 noiseConfig + f Lorg/slf4j/Logger; field_40899 LOGGER + f Ljava/util/Map; field_40904 structuresToPlacements + f J field_40902 structureSeed + f Ljava/util/List; field_40907 structureSets + f Z field_40906 calculated + f Ljava/util/Map; field_40905 concentricPlacementsToPositions + m ()Ljava/util/List; method_46697 getStructureSets + m (Lnet/minecraft/class_7138;Lnet/minecraft/class_1966;JJLjava/util/List;)V + p 5 concentricRingSeed + p 7 structureSets + p 1 noiseConfig + p 2 biomeSource + p 3 structureSeed + m (Lnet/minecraft/class_3195;)Ljava/util/List; method_46704 method_46704 + p 0 structure + m (Lnet/minecraft/class_6871;)Ljava/util/List; method_46707 getPlacementPositions + p 1 placement + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_6871;)Ljava/util/concurrent/CompletableFuture; method_46710 calculateConcentricsRingPlacementPos + p 2 placement + p 1 structureSetEntry + m (Lnet/minecraft/class_1966;Lnet/minecraft/class_6880;)Z method_46700 method_46700 + p 1 structureSet + m (Lnet/minecraft/class_6880;)Ljava/util/List; method_46708 getPlacements + p 1 structureEntry + m ()V method_46715 calculate + m (Lnet/minecraft/class_7059$class_7060;)Ljava/util/stream/Stream; method_46705 method_46705 + p 0 structure + m (Lnet/minecraft/class_7059;Lnet/minecraft/class_1966;)Z method_46706 hasValidBiome + p 1 biomeSource + p 0 structureSet + m (Ljava/util/Set;Lnet/minecraft/class_6880;)V method_46711 method_46711 + p 2 structureSet + m (Lnet/minecraft/class_7138;JLnet/minecraft/class_1966;Ljava/util/stream/Stream;)Lnet/minecraft/class_7869; method_46703 create + p 3 biomeSource + p 4 structureSets + p 1 seed + p 0 noiseConfig + m (Lcom/google/common/base/Stopwatch;Lnet/minecraft/class_6880;Ljava/util/List;)Ljava/util/List; method_46701 method_46701 + p 2 positions + m (Lnet/minecraft/class_1966;Lnet/minecraft/class_6880$class_6883;)Z method_46699 method_46699 + p 1 structureSet + m ()Lnet/minecraft/class_7138; method_46713 getNoiseConfig + m ()V method_46712 tryCalculate + m (Lnet/minecraft/class_7138;JLnet/minecraft/class_1966;Lnet/minecraft/class_7225;)Lnet/minecraft/class_7869; method_46702 create + p 1 seed + p 3 biomeSource + p 4 structureSetRegistry + p 0 noiseConfig + m (Lnet/minecraft/class_6880;III)Z method_46709 canGenerate + p 3 centerChunkZ + p 2 centerChunkX + p 1 structureSetEntry + p 4 chunkCount + m ()J method_46714 getStructureSeed +c net/minecraft/class_6538 net/minecraft/component/type/BlockPredicatesComponent + c Stores a list of block predicates to match against a given\nblock in a world.\n\n

The result is cached to reduce cost for successive lookups\non the same block.\n\n@apiNote This class is used to store the data and implement\nthe functionality of the {@code minecraft:can_place_on} and\n{@code minecraft:can_break} components. + f Z field_34452 nbtAware + f Lcom/mojang/serialization/Codec; field_49245 CODEC + f Z field_34451 lastResult + f Ljava/util/List; field_49252 predicates + f Ljava/util/List; field_49254 tooltipText + f Lnet/minecraft/class_9139; field_49246 PACKET_CODEC + f Lnet/minecraft/class_2694; field_34450 cachedPos + f Lnet/minecraft/class_2561; field_49251 CAN_USE_UNKNOWN_TEXT + f Lorg/slf4j/Logger; field_60366 LOGGER + f Lnet/minecraft/class_2561; field_49247 CAN_BREAK_TEXT + f Lnet/minecraft/class_2561; field_49248 CAN_PLACE_TEXT + m (Ljava/util/List;)Ljava/util/List; method_57329 createTooltipText + p 0 blockPredicates + m (Lnet/minecraft/class_6538;)Ljava/util/List; method_57327 method_57327 + p 0 blockPredicatesChecker + m (Lnet/minecraft/class_2694;Lnet/minecraft/class_2694;Z)Z method_38071 canUseCache + p 2 nbtAware + p 0 pos + p 1 cachedPos + m (Lnet/minecraft/class_2586;Lnet/minecraft/class_5455;Lnet/minecraft/class_8942;)Lnet/minecraft/class_2487; method_71392 getNbt + p 2 errorReporter + p 1 registries + p 0 blockEntity + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_2561; method_57328 method_57328 + p 0 block + m ()Ljava/util/List; method_65042 getOrCreateTooltipText + m (Ljava/util/function/Consumer;)V method_57330 addTooltips + p 1 adder + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_6538;)Ljava/util/List; method_67185 method_67185 + p 0 checker + m (Ljava/util/List;)V + p 1 predicates + m (Lnet/minecraft/class_4550;)Ljava/util/stream/Stream; method_57325 method_57325 + p 0 predicate + m (Lnet/minecraft/class_2694;)Z method_38070 check + c {@return true if any of the predicates in this component\nmatched against the block at {@code pos}, false otherwise} + p 1 cachedPos +c net/minecraft/class_5207 net/minecraft/world/gen/foliage/LargeOakFoliagePlacer + f Lcom/mojang/serialization/MapCodec; field_24930 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28842 method_28842 + p 0 instance +c net/minecraft/class_6535 net/minecraft/util/profiling/jfr/sample/LongRunningSampleStatistics + f Lnet/minecraft/class_6534; comp_54 fastestSample + f I comp_57 count + f Ljava/time/Duration; comp_59 totalDuration + f Lnet/minecraft/class_6534; comp_56 secondSlowestSample + f Lnet/minecraft/class_6534; comp_55 slowestSample + f Ljava/util/Map; comp_58 quantiles + m (Lnet/minecraft/class_6534;)J method_38059 method_38059 + p 0 sample + m ()Lnet/minecraft/class_6534; comp_54 fastestSample + m (Ljava/util/List;)Ljava/util/Optional; method_38060 fromSamples + p 0 samples + m ()I comp_57 count + m ()Ljava/time/Duration; comp_59 totalDuration + m ()Lnet/minecraft/class_6534; comp_56 secondSlowestSample + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_6534; comp_55 slowestSample + m ()Ljava/util/Map; comp_58 quantiles + m (Lnet/minecraft/class_6534;Lnet/minecraft/class_6534;Lnet/minecraft/class_6534;ILjava/util/Map;Ljava/time/Duration;)V + p 1 fastestSample + p 2 slowestSample + p 3 secondSlowestSample + p 4 count + p 5 quantiles + p 6 totalDuration +c net/minecraft/class_5206 net/minecraft/world/gen/foliage/DarkOakFoliagePlacer + f Lcom/mojang/serialization/MapCodec; field_24929 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28841 method_28841 + p 0 instance +c net/minecraft/class_6536 net/minecraft/unused/packageinfo/PackageInfo6536 +c net/minecraft/class_5201 net/minecraft/world/gen/feature/size/FeatureSize + c In charge of determining the amount of space needed by a tree to generate. + f Lcom/mojang/serialization/Codec; field_24922 TYPE_CODEC + f Ljava/util/OptionalInt; field_24146 minClippedHeight + m ()Ljava/util/OptionalInt; method_27377 getMinClippedHeight + m (Ljava/util/Optional;)Ljava/util/OptionalInt; method_28822 method_28822 + p 0 minClippedHeight + m (Ljava/util/OptionalInt;)V + p 1 minClippedHeight + m (Lnet/minecraft/class_5201;)Ljava/util/OptionalInt; method_28821 method_28821 + p 0 size + m (II)I method_27378 getRadius + c The radius that the tree needs to be empty or replaceable in order for it to generate. + p 1 height + p 2 y + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; method_28820 createCodec + m (Ljava/util/OptionalInt;)Ljava/util/Optional; method_28823 method_28823 + p 0 minClippedHeight + m ()Lnet/minecraft/class_5202; method_28824 getType +c net/minecraft/class_6534 net/minecraft/util/profiling/jfr/sample/LongRunningSample + m ()Ljava/time/Duration; comp_16 duration +c net/minecraft/class_5203 net/minecraft/world/gen/feature/size/ThreeLayersFeatureSize + f I field_24150 limit + f I field_24151 upperLimit + f I field_24152 lowerSize + f I field_24153 middleSize + f I field_24154 upperSize + f Lcom/mojang/serialization/MapCodec; field_24924 CODEC + m (Lnet/minecraft/class_5203;)Ljava/lang/Integer; method_28830 method_28830 + p 0 size + m (Lnet/minecraft/class_5203;)Ljava/lang/Integer; method_28831 method_28831 + p 0 size + m (IIIIILjava/util/OptionalInt;)V + p 1 limit + p 3 lowerSize + p 2 upperLimit + p 5 upperSize + p 4 middleSize + p 6 minClippedHeight + m (Lnet/minecraft/class_5203;)Ljava/lang/Integer; method_28826 method_28826 + p 0 size + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28827 method_28827 + p 0 instance + m (Lnet/minecraft/class_5203;)Ljava/lang/Integer; method_28829 method_28829 + p 0 size + m (Lnet/minecraft/class_5203;)Ljava/lang/Integer; method_28828 method_28828 + p 0 size +c net/minecraft/class_5202 net/minecraft/world/gen/feature/size/FeatureSizeType + f Lcom/mojang/serialization/MapCodec; field_24923 codec + f Lnet/minecraft/class_5202; field_24147 TWO_LAYERS_FEATURE_SIZE + f Lnet/minecraft/class_5202; field_24148 THREE_LAYERS_FEATURE_SIZE + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/class_5202; method_27382 register + p 0 id + p 1 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()Lcom/mojang/serialization/MapCodec; method_28825 getCodec +c net/minecraft/class_6532 net/minecraft/util/profiling/jfr/sample/ServerTickTimeSample + f Ljava/time/Instant; comp_52 time + f Ljava/time/Duration; comp_53 averageTickMs + m ()Ljava/time/Instant; comp_52 time + m ()Ljava/time/Duration; comp_53 averageTickMs + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/class_6532; method_38058 fromEvent + p 0 event + m (Ljava/time/Instant;Ljava/time/Duration;)V + p 1 time + p 2 averageTickMs +c net/minecraft/class_6540 net/minecraft/world/SpawnDensityCapper + f Lnet/minecraft/class_3898; field_34457 chunkLoadingManager + f Ljava/util/Map; field_34456 playersToDensityCap + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; field_34455 chunkPosToMobSpawnablePlayers + m (Lnet/minecraft/class_1311;Lnet/minecraft/class_1923;)Z method_38084 canSpawn + p 2 chunkPos + p 1 spawnGroup + m (Lnet/minecraft/class_3898;)V + p 1 chunkLoadingManager + m (Lnet/minecraft/class_3222;)Lnet/minecraft/class_6540$class_6541; method_38083 method_38083 + p 0 player + m (Lnet/minecraft/class_1923;)Ljava/util/List; method_38085 getMobSpawnablePlayers + p 1 chunkPos + m (Lnet/minecraft/class_1923;Lnet/minecraft/class_1311;)V method_38087 increaseDensity + p 1 chunkPos + p 2 spawnGroup + m (Lnet/minecraft/class_1923;J)Ljava/util/List; method_38086 method_38086 + p 2 pos +c net/minecraft/class_6540$class_6541 net/minecraft/world/SpawnDensityCapper$DensityCap + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; field_34458 spawnGroupsToDensity + m (Lnet/minecraft/class_1311;Ljava/lang/Integer;)Ljava/lang/Integer; method_38089 method_38089 + p 0 group + p 1 density + m (Lnet/minecraft/class_1311;)V method_38088 increaseDensity + p 1 spawnGroup + m (Lnet/minecraft/class_1311;)Z method_38090 canSpawn + p 1 spawnGroup +c net/minecraft/class_7871 net/minecraft/registry/RegistryEntryLookup + m (Lnet/minecraft/class_6862;)Ljava/util/Optional; method_46733 getOptional + p 1 tag + m (Lnet/minecraft/class_6862;Lnet/minecraft/class_5819;)Ljava/util/Optional; method_73042 getRandomEntry + p 1 tag + p 2 random + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_46746 getOptional + p 1 key + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_6880$class_6883; method_46747 getOrThrow + p 1 key + m (Lnet/minecraft/class_6862;)Lnet/minecraft/class_6885$class_6888; method_46735 getOrThrow + p 1 tag + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_6885$class_6888;)Ljava/util/Optional; method_73043 method_73043 + p 1 entryList +c net/minecraft/class_7871$class_7872 net/minecraft/registry/RegistryEntryLookup$RegistryLookup + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_7871; method_46751 getOrThrow + p 1 registryRef + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_58561 getOptionalEntry + p 1 registryRef + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_7871;)Ljava/util/Optional; method_66873 method_66873 + p 1 registry + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_46759 getOptional + p 1 registryRef + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_7871;)Ljava/util/Optional; method_58562 method_58562 + p 1 registryEntryLookup + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_6880$class_6883; method_66874 getEntryOrThrow + p 1 key +c net/minecraft/class_5210 net/minecraft/world/gen/foliage/MegaPineFoliagePlacer + f Lcom/mojang/serialization/MapCodec; field_24934 CODEC + f Lnet/minecraft/class_6017; field_24168 crownHeight + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30413 method_30413 + p 0 instance + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;)V + p 3 crownHeight + p 2 offset + p 1 radius + m (Lnet/minecraft/class_5210;)Lnet/minecraft/class_6017; method_30414 method_30414 + p 0 placer +c net/minecraft/class_5216 net/minecraft/util/math/noise/DoublePerlinNoiseSampler + f Lnet/minecraft/class_5216$class_5487; field_37207 parameters + f D field_31702 DOMAIN_SCALE + f D field_24175 amplitude + f Lnet/minecraft/class_3537; field_24176 firstSampler + f Lnet/minecraft/class_3537; field_24177 secondSampler + f D field_36631 maxValue + m (DDD)D method_27406 sample + p 5 z + p 3 y + p 1 x + m ()Lnet/minecraft/class_5216$class_5487; method_38475 copy + m ()D method_40554 getMaxValue + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_5216$class_5487;Z)V + p 3 modern + p 2 parameters + p 1 random + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_5216$class_5487;)Lnet/minecraft/class_5216; method_39186 createLegacy + p 0 random + p 1 parameters + m (Lnet/minecraft/class_5819;I[D)Lnet/minecraft/class_5216; method_31927 create + p 2 octaves + p 1 offset + p 0 random + m (I)D method_27407 createAmplitude + p 0 octaves + m (Ljava/lang/StringBuilder;)V method_39124 addDebugInfo + p 1 info + m (Lnet/minecraft/class_5819;Lnet/minecraft/class_5216$class_5487;)Lnet/minecraft/class_5216; method_38476 create + p 0 random + p 1 parameters +c net/minecraft/class_5216$class_5487 net/minecraft/util/math/noise/DoublePerlinNoiseSampler$NoiseParameters + f Lit/unimi/dsi/fastutil/doubles/DoubleList; comp_517 amplitudes + f Lcom/mojang/serialization/Codec; field_26438 REGISTRY_ENTRY_CODEC + f Lcom/mojang/serialization/Codec; field_35424 CODEC + f I comp_516 firstOctave + m ()Lit/unimi/dsi/fastutil/doubles/DoubleList; comp_517 amplitudes + m ()I comp_516 firstOctave + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30833 method_30833 + p 0 instance + m (ID[D)V + p 4 amplitudes + p 2 firstAmplitude + p 1 firstOctave + m (ILjava/util/List;)V + p 2 amplitudes + p 1 firstOctave + m (ILit/unimi/dsi/fastutil/doubles/DoubleList;)V + p 1 firstOctave + p 2 amplitudes +c net/minecraft/class_5215 net/minecraft/world/gen/trunk/MegaJungleTrunkPlacer + f Lcom/mojang/serialization/MapCodec; field_24970 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28901 method_28901 + p 0 instance +c net/minecraft/class_7877 net/minecraft/registry/RegistryBuilder + f Ljava/util/List; field_40941 registries + m (Lnet/minecraft/class_7877$class_7878;Lnet/minecraft/class_7877$class_7884;)Lnet/minecraft/class_7877$class_7883; method_46782 method_46782 + p 1 info + m (Lnet/minecraft/class_7876;Lnet/minecraft/class_5321;Lnet/minecraft/class_8990;Lnet/minecraft/class_6880$class_6883;Lnet/minecraft/class_7225$class_7874;Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/class_5321;)Lnet/minecraft/class_6880$class_6883; method_55285 method_55285 + p 6 key + m (Lnet/minecraft/class_5455;)Lnet/minecraft/class_7877$class_7878; method_46784 createBootstrappedRegistries + p 1 registryManager + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Lifecycle;Lnet/minecraft/class_7876;Ljava/util/Map;)Lnet/minecraft/class_7225$class_7226; method_55283 createWrapper + p 0 registryRef + p 1 lifecycle + p 2 owner + p 3 entries + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_7877$class_7882;)Lnet/minecraft/class_7877; method_46777 addRegistry + p 2 bootstrapFunction + p 1 registryRef + m (Lnet/minecraft/class_7877$class_7878;Lnet/minecraft/class_7877$class_7884;)V method_46786 method_46786 + p 1 registry + m (Ljava/util/Map;Lnet/minecraft/class_5455$class_6892;)V method_55288 method_55288 + p 1 registry + m (Lnet/minecraft/class_7876;Lnet/minecraft/class_8990;Lnet/minecraft/class_7225$class_7874;Lorg/apache/commons/lang3/mutable/MutableObject;Ljava/util/Map;Lnet/minecraft/class_6880$class_6883;)V method_55287 method_55287 + p 5 entry + m (Lnet/minecraft/class_7877$class_7879;Lnet/minecraft/class_5455;Ljava/util/stream/Stream;)Lnet/minecraft/class_7225$class_7874; method_55290 createWrapperLookup + p 1 registryManager + p 0 entryOwner + p 2 wrappers + m (Ljava/util/Map;Lnet/minecraft/class_7876;Lnet/minecraft/class_8990;Lnet/minecraft/class_7225$class_7874;Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/class_6880$class_6883;)V method_55294 method_55294 + p 5 entry + m (Ljava/util/Set;Lnet/minecraft/class_5321;)Z method_55295 method_55295 + p 1 key + m (Lnet/minecraft/class_7876;Lnet/minecraft/class_8990$class_8991;Lnet/minecraft/class_5321;Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_7225$class_7874;Lorg/apache/commons/lang3/mutable/MutableObject;)Lnet/minecraft/class_7225$class_7226; method_55286 applyPatches + p 4 patches + p 3 registryRef + p 2 cloneableRegistries + p 1 owner + p 6 lazyWrapper + p 5 base + m (Lnet/minecraft/class_7877$class_7878;Lnet/minecraft/class_7877$class_7884;)Lnet/minecraft/class_7225$class_7226; method_46785 method_46785 + p 1 info + m (Ljava/util/Map;Lnet/minecraft/class_7877$class_7883;)V method_49352 method_49352 + p 1 registry + m (Ljava/util/Map;Lnet/minecraft/class_5321;)V method_55293 method_55293 + p 1 key + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Lifecycle;Lnet/minecraft/class_7877$class_7882;)Lnet/minecraft/class_7877; method_46776 addRegistry + p 3 bootstrapFunction + p 2 lifecycle + p 1 registryRef + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_8990$class_8991;Ljava/util/Map;Lnet/minecraft/class_7225$class_7874;)Lnet/minecraft/class_7225$class_7874; method_55289 createFullWrapperLookup + p 5 patches + p 4 initializedRegistries + p 3 cloneableRegistries + p 2 base + p 1 registryManager + m (Ljava/util/Map;Lnet/minecraft/class_7877$class_7879;Lnet/minecraft/class_7225$class_7226;)V method_57094 method_57094 + p 2 wrapper + m (Lnet/minecraft/class_7877$class_7879;Lnet/minecraft/class_8990$class_8991;Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_7225$class_7874;Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/class_5321;)Lnet/minecraft/class_7225$class_7226; method_55292 method_55292 + p 6 registryRef + m (Lnet/minecraft/class_7225$class_7226;)Lnet/minecraft/class_7871; method_46778 toLookup + p 0 wrapper + m (Lnet/minecraft/class_5455;Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_8990$class_8991;)Lnet/minecraft/class_7877$class_8993; method_46781 createWrapperLookup + p 3 cloneableRegistries + p 2 registries + p 1 baseRegistryManager + m (Lnet/minecraft/class_7877$class_7878;Lnet/minecraft/class_7877$class_7883;)Lnet/minecraft/class_7225$class_7226; method_55291 method_55291 + p 1 registry + m (Lnet/minecraft/class_5455;)Lnet/minecraft/class_7225$class_7874; method_46780 createWrapperLookup + p 1 registryManager +c net/minecraft/class_7877$class_9256 net/minecraft/registry/RegistryBuilder$WrapperInfoPair + f Lnet/minecraft/class_7225$class_7226; comp_2360 lookup + f Lnet/minecraft/class_6903$class_7862; comp_2361 opsInfo + m (Lnet/minecraft/class_7877$class_7879;Lnet/minecraft/class_7225$class_7226;)Lnet/minecraft/class_7877$class_9256; method_57097 of + p 1 wrapper + p 0 owner + m (Lnet/minecraft/class_7225$class_7226;)Lnet/minecraft/class_7877$class_9256; method_57096 of + p 0 wrapper + m ()Lnet/minecraft/class_6903$class_7862; comp_2361 opsInfo + m ()Lnet/minecraft/class_7225$class_7226; comp_2360 lookup + m (Lnet/minecraft/class_7225$class_7226;Lnet/minecraft/class_6903$class_7862;)V + p 1 lookup + p 2 opsInfo +c net/minecraft/class_7877$class_9257 net/minecraft/registry/RegistryBuilder$UntaggedDelegatingLookup + f Lnet/minecraft/class_7225$class_7226; field_49169 base + m (Lnet/minecraft/class_7876;Lnet/minecraft/class_7225$class_7226;)V + p 2 base + p 1 entryOwner +c net/minecraft/class_7877$class_9258 net/minecraft/registry/RegistryBuilder$UntaggedLookup +c net/minecraft/class_7877$class_7879 net/minecraft/registry/RegistryBuilder$AnyOwner + m ()Lnet/minecraft/class_7876; method_55300 downcast +c net/minecraft/class_7877$class_7878 net/minecraft/registry/RegistryBuilder$Registries + f Ljava/util/List; comp_1139 errors + f Ljava/util/Map; comp_1137 registries + f Ljava/util/Map; comp_1138 registeredValues + f Lnet/minecraft/class_7877$class_7879; comp_1135 owner + f Lnet/minecraft/class_7877$class_7885; comp_1136 lookup + m ()V method_55298 checkOrphanedValues + m ()V method_55299 checkUnreferencedKeys + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_7877$class_7881;)V method_55297 method_55297 + p 2 value + p 1 key + m (Lnet/minecraft/class_5455;Ljava/util/stream/Stream;)Lnet/minecraft/class_7877$class_7878; method_46796 of + p 0 dynamicRegistryManager + p 1 registryRefs + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_5455$class_6892;)V method_46790 method_46790 + p 1 entry + m ()Lnet/minecraft/class_7891; method_46787 createRegisterable + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/class_7877$class_7885;Lnet/minecraft/class_5321;)V method_46791 method_46791 + p 2 registryRef + m ()V method_46798 throwErrors + m ()Ljava/util/List; comp_1139 errors + m ()Lnet/minecraft/class_7877$class_7879; comp_1135 owner + m ()Ljava/util/Map; comp_1138 registeredValues + m ()Ljava/util/Map; comp_1137 registries + m ()Lnet/minecraft/class_7877$class_7885; comp_1136 lookup + m (Lnet/minecraft/class_7877$class_7879;Lnet/minecraft/class_7877$class_7885;Ljava/util/Map;Ljava/util/Map;Ljava/util/List;)V + p 1 owner + p 2 lookup + p 3 registries + p 4 registeredValues + p 5 errors +c net/minecraft/class_7877$2 net/minecraft/registry/RegistryBuilder$2 + f Ljava/util/Map; field_40947 keysToEntries +c net/minecraft/class_7877$3 net/minecraft/registry/RegistryBuilder$3 + m (Lnet/minecraft/class_5321;)Ljava/util/Optional; method_57095 get + p 1 registryRef +c net/minecraft/class_7877$class_7883 net/minecraft/registry/RegistryBuilder$InitializedRegistry + f Lcom/mojang/serialization/Lifecycle; comp_1306 lifecycle + f Ljava/util/Map; comp_1143 values + f Lnet/minecraft/class_5321; comp_1305 key + m (Lnet/minecraft/class_7877$class_7879;)Lnet/minecraft/class_7225$class_7226; method_46802 toWrapper + p 1 anyOwner + m (Lnet/minecraft/class_7877$class_7879;Ljava/util/Map$Entry;)Lnet/minecraft/class_6880$class_6883; method_55301 method_55301 + p 1 entry + m ()Lcom/mojang/serialization/Lifecycle; comp_1306 lifecycle + m ()Ljava/util/Map; comp_1143 values + m ()Lnet/minecraft/class_5321; comp_1305 key + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Lifecycle;Ljava/util/Map;)V + p 1 key + p 2 lifecycle + p 3 values +c net/minecraft/class_7877$class_7882 net/minecraft/registry/RegistryBuilder$BootstrapFunction + m (Lnet/minecraft/class_7891;)V run run + p 1 registerable +c net/minecraft/class_7877$class_7881 net/minecraft/registry/RegistryBuilder$RegisteredValue + f Lcom/mojang/serialization/Lifecycle; comp_1141 lifecycle + f Ljava/lang/Object; comp_1140 value + m ()Ljava/lang/Object; comp_1140 value + m ()Lcom/mojang/serialization/Lifecycle; comp_1141 lifecycle + m (Ljava/lang/Object;Lcom/mojang/serialization/Lifecycle;)V + p 1 value + p 2 lifecycle +c net/minecraft/class_7877$class_7880 net/minecraft/registry/RegistryBuilder$EntryListCreatingLookup + f Lnet/minecraft/class_7876; field_40945 entryOwner + m (Lnet/minecraft/class_7876;)V + p 1 entryOwner +c net/minecraft/class_7877$class_7886 net/minecraft/registry/RegistryBuilder$EntryAssociatedValue + f Ljava/util/Optional; comp_1148 entry + f Lnet/minecraft/class_7877$class_7881; comp_1147 value + m ()Ljava/util/Optional; comp_1148 entry + m ()Lnet/minecraft/class_7877$class_7881; comp_1147 value + m (Lnet/minecraft/class_7877$class_7881;Ljava/util/Optional;)V + p 1 value + p 2 entry +c net/minecraft/class_7877$class_8992 net/minecraft/registry/RegistryBuilder$LazyReferenceEntry + f Ljava/util/function/Supplier; field_47490 supplier + m (Lnet/minecraft/class_7876;Lnet/minecraft/class_5321;)V + p 2 key + p 1 owner +c net/minecraft/class_7877$class_7885 net/minecraft/registry/RegistryBuilder$StandAloneEntryCreatingLookup + f Ljava/util/Map; field_40948 keysToEntries + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_6880$class_6883; method_46808 method_46808 + p 1 key2 + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_6880$class_6883; method_46807 getOrCreate + p 1 key +c net/minecraft/class_7877$class_8993 net/minecraft/registry/RegistryBuilder$FullPatchesRegistriesPair + f Lnet/minecraft/class_7225$class_7874; comp_2113 full + f Lnet/minecraft/class_7225$class_7874; comp_2114 patches + m ()Lnet/minecraft/class_7225$class_7874; comp_2113 full + m ()Lnet/minecraft/class_7225$class_7874; comp_2114 patches + m (Lnet/minecraft/class_7225$class_7874;Lnet/minecraft/class_7225$class_7874;)V + p 1 full + p 2 patches +c net/minecraft/class_7877$class_7884 net/minecraft/registry/RegistryBuilder$RegistryInfo + f Lnet/minecraft/class_7877$class_7882; comp_1146 bootstrap + f Lcom/mojang/serialization/Lifecycle; comp_1145 lifecycle + f Lnet/minecraft/class_5321; comp_1144 key + m (Lnet/minecraft/class_7877$class_7878;)V method_46806 runBootstrap + p 1 registries + m (Lnet/minecraft/class_7877$class_7878;)Lnet/minecraft/class_7877$class_7883; method_46805 init + p 1 registries + m ()Lnet/minecraft/class_5321; comp_1144 key + m ()Lcom/mojang/serialization/Lifecycle; comp_1145 lifecycle + m ()Lnet/minecraft/class_7877$class_7882; comp_1146 bootstrap + m (Lnet/minecraft/class_5321;Lcom/mojang/serialization/Lifecycle;Lnet/minecraft/class_7877$class_7882;)V + p 1 key + p 2 lifecycle + p 3 bootstrap +c net/minecraft/class_5218 net/minecraft/util/WorldSavePath + f Lnet/minecraft/class_5218; field_24188 ROOT + f Ljava/lang/String; field_24189 relativePath + f Lnet/minecraft/class_5218; field_24181 STATS + f Lnet/minecraft/class_5218; field_24182 PLAYERDATA + f Lnet/minecraft/class_5218; field_24183 PLAYERS + f Lnet/minecraft/class_5218; field_24184 LEVEL_DAT + f Lnet/minecraft/class_5218; field_24185 GENERATED + f Lnet/minecraft/class_5218; field_24186 DATAPACKS + f Lnet/minecraft/class_5218; field_24187 RESOURCES_ZIP + f Lnet/minecraft/class_5218; field_24180 ADVANCEMENTS + f Lnet/minecraft/class_5218; field_38978 LEVEL_DAT_OLD + f Lnet/minecraft/class_5218; field_38979 ICON_PNG + f Lnet/minecraft/class_5218; field_38980 SESSION_LOCK + m ()Ljava/lang/String; method_27423 getRelativePath + m (Ljava/lang/String;)V + p 1 relativePath +c net/minecraft/class_5217 net/minecraft/world/WorldProperties + m ()J method_217 getTimeOfDay + m ()Lnet/minecraft/class_1267; method_207 getDifficulty + m (Lnet/minecraft/class_129;Lnet/minecraft/class_5539;)V method_151 populateCrashReport + p 1 reportSection + p 2 world + m (Z)V method_157 setRaining + p 1 raining + m ()Z method_197 isDifficultyLocked + m ()Z method_152 isHardcore + m ()J method_188 getTime + m ()Lnet/minecraft/class_5217$class_12064; method_74893 getSpawnPoint + m ()Z method_156 isRaining + m ()Z method_203 isThundering +c net/minecraft/class_5217$class_12064 net/minecraft/world/WorldProperties$SpawnPoint + f Lcom/mojang/serialization/Codec; field_63050 CODEC + f Lnet/minecraft/class_9139; field_63051 PACKET_CODEC + f Lcom/mojang/serialization/MapCodec; field_63049 MAP_CODEC + f Lnet/minecraft/class_5217$class_12064; field_63048 DEFAULT + f F comp_4917 pitch + f F comp_4916 yaw + f Lnet/minecraft/class_4208; comp_4915 globalPos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_74896 method_74896 + p 0 instance + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_2338;FF)Lnet/minecraft/class_5217$class_12064; method_74895 create + p 1 pos + p 2 yaw + p 3 pitch + p 0 dimension + m ()Lnet/minecraft/class_2338; method_74897 getPos + m ()Lnet/minecraft/class_5321; method_74894 getDimension + m ()Lnet/minecraft/class_4208; comp_4915 globalPos + m ()F comp_4916 yaw + m ()F comp_4917 pitch + m (Lnet/minecraft/class_4208;FF)V + p 1 globalPos + p 2 yaw + p 3 pitch +c net/minecraft/class_6544 net/minecraft/world/biome/source/util/MultiNoiseUtil + f F field_35359 TO_LONG_FACTOR + f I field_34476 HYPERCUBE_DIMENSION + m (FFFFFF)Lnet/minecraft/class_6544$class_6553; method_38116 createNoiseValuePoint + p 4 depth + p 5 weirdnessNoise + p 2 continentalnessNoise + p 3 erosionNoise + p 0 temperatureNoise + p 1 humidityNoise + m (Ljava/util/List;Lnet/minecraft/class_6544$class_6552;)Lnet/minecraft/class_2338; method_39164 findFittestPosition + p 0 noises + p 1 sampler + m ()Lnet/minecraft/class_6544$class_6552; method_40443 createEmptyMultiNoiseSampler + m (F)J method_38665 toLong + p 0 value + m (FFFFFFF)Lnet/minecraft/class_6544$class_4762; method_38117 createNoiseHypercube + p 4 depth + p 3 erosion + p 6 offset + p 5 weirdness + p 0 temperature + p 2 continentalness + p 1 humidity + m (Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;F)Lnet/minecraft/class_6544$class_4762; method_38118 createNoiseHypercube + p 0 temperature + p 1 humidity + p 4 depth + p 5 weirdness + p 2 continentalness + p 3 erosion + p 6 offset + m (J)F method_38666 toFloat + p 0 value +c net/minecraft/class_6544$class_6545 net/minecraft/world/biome/source/util/MultiNoiseUtil$NodeDistanceFunction + m (Lnet/minecraft/class_6544$class_6548$class_6550;[J)J distance getDistance + p 1 node + p 2 otherParameters +c net/minecraft/class_6544$class_6546 net/minecraft/world/biome/source/util/MultiNoiseUtil$ParameterRange + f Lcom/mojang/serialization/Codec; field_34478 CODEC + f J comp_103 min + f J comp_104 max + m (Lnet/minecraft/class_6544$class_6546;)J method_38122 getDistance + p 1 other + m (Ljava/lang/Float;Ljava/lang/Float;)Lcom/mojang/serialization/DataResult; method_38124 method_38124 + p 1 max + p 0 min + m (Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;)Lnet/minecraft/class_6544$class_6546; method_38123 combine + c Creates a new {@link MultiNoiseUtil.ParameterRange} that combines the parameters.\n\n@return the created parameter range. + p 0 min + c this will be used for the created range's minimum value + p 1 max + c this will be used for the created range's maximum value + m (Lnet/minecraft/class_6544$class_6546;)Lnet/minecraft/class_6544$class_6546; method_38127 combine + p 1 other + m (FF)Lnet/minecraft/class_6544$class_6546; method_38121 of + p 1 max + p 0 min + m (J)J method_38126 getDistance + p 1 noise + m ()J comp_103 min + m ()J comp_104 max + m (F)Lnet/minecraft/class_6544$class_6546; method_38120 of + p 0 point + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (JJ)V + p 1 min + p 3 max +c net/minecraft/class_6544$class_6547 net/minecraft/world/biome/source/util/MultiNoiseUtil$Entries + f Lnet/minecraft/class_6544$class_6548; field_34482 tree + f Ljava/util/List; field_34481 entries + m (Lnet/minecraft/class_6544$class_6553;Lnet/minecraft/class_6544$class_6545;)Ljava/lang/Object; method_39528 getValue + p 1 point + p 2 distanceFunction + m ()Ljava/util/List; method_38128 getEntries + m (Ljava/util/List;)V + p 1 entries + m (Lnet/minecraft/class_6544$class_6553;)Ljava/lang/Object; method_39527 getValue + c {@return the closest entry at the given point}. + p 1 point + c the point of all relevant noises + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/Codec; method_49497 createCodec + p 0 entryCodec + m (Lnet/minecraft/class_6544$class_6553;)Ljava/lang/Object; method_39529 get + c {@return the closest entry at the given point}. + p 1 point + c the point of all relevant noises + m (Lnet/minecraft/class_6544$class_6553;)Ljava/lang/Object; method_39530 getValueSimple + c {@return the closest entry at the given point}.\n\nNote that this method only exists for testing, and is usually a lot slower\nthan {@link #getValue}. + p 1 point + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49498 method_49498 + p 1 instance +c net/minecraft/class_6544$class_6548 net/minecraft/world/biome/source/util/MultiNoiseUtil$SearchTree + f Ljava/lang/ThreadLocal; field_34488 previousResultNode + f I field_34486 MAX_NODES_FOR_SIMPLE_TREE + f Lnet/minecraft/class_6544$class_6548$class_6550; field_34487 firstNode + m (Lnet/minecraft/class_6544$class_6548$class_6550;)V + p 1 firstNode + m (Lnet/minecraft/class_6544$class_6553;Lnet/minecraft/class_6544$class_6545;)Ljava/lang/Object; method_38151 get + p 1 point + p 2 distanceFunction + m ([Lnet/minecraft/class_6544$class_6546;)J method_38155 getRangeLengthSum + p 0 parameters + m (Ljava/util/List;)Ljava/util/List; method_38156 getBatchedTree + p 0 nodes + m (Ljava/util/List;)Ljava/util/List; method_38157 getEnclosingParameters + p 0 subTree + m (ILnet/minecraft/class_6544$class_6548$class_6551;)Lnet/minecraft/class_6544$class_6548$class_6550; method_38147 method_38147 + p 1 node + m (ILnet/minecraft/class_6544$class_6548$class_6550;)J method_38146 method_38146 + p 1 node + m (Ljava/util/List;IIZ)V method_38154 sortTree + p 3 abs + p 2 currentParameter + p 1 parameterNumber + p 0 subTree + m (Lcom/mojang/datafixers/util/Pair;)Lnet/minecraft/class_6544$class_6548$class_6549; method_38152 method_38152 + p 0 entry + m (ILjava/util/List;)Lnet/minecraft/class_6544$class_6548$class_6550; method_38148 createNode + p 0 parameterNumber + p 1 subTree + m (Ljava/util/List;)Lnet/minecraft/class_6544$class_6548; method_38153 create + p 0 entries + m (IZ)Ljava/util/Comparator; method_38149 createNodeComparator + p 0 currentParameter + p 1 abs +c net/minecraft/class_6544$class_6548$class_6549 net/minecraft/world/biome/source/util/MultiNoiseUtil$SearchTree$TreeLeafNode + f Ljava/lang/Object; field_34489 value + m (Lnet/minecraft/class_6544$class_4762;Ljava/lang/Object;)V + p 1 parameters + p 2 value +c net/minecraft/class_6544$class_6548$class_6551 net/minecraft/world/biome/source/util/MultiNoiseUtil$SearchTree$TreeBranchNode + f [Lnet/minecraft/class_6544$class_6548$class_6550; field_34491 subTree + m (Ljava/util/List;Ljava/util/List;)V + p 2 subTree + p 1 parameters +c net/minecraft/class_6544$class_6548$class_6550 net/minecraft/world/biome/source/util/MultiNoiseUtil$SearchTree$TreeNode + f [Lnet/minecraft/class_6544$class_6546; field_34490 parameters + m ([J)J method_38159 getSquaredDistance + p 1 otherParameters + m (Ljava/util/List;)V + p 1 parameters + m ([JLnet/minecraft/class_6544$class_6548$class_6549;Lnet/minecraft/class_6544$class_6545;)Lnet/minecraft/class_6544$class_6548$class_6549; method_38158 getResultingNode + p 2 alternative + p 1 otherParameters + p 3 distanceFunction +c net/minecraft/class_6544$class_6729 net/minecraft/world/biome/source/util/MultiNoiseUtil$FittestPositionFinder + f Lnet/minecraft/class_6544$class_6729$class_6730; field_35360 bestResult + m (Ljava/util/List;Lnet/minecraft/class_6544$class_6552;FF)V method_39166 findFittest + p 3 maxDistance + p 4 step + p 1 noises + p 2 sampler + m (Ljava/util/List;Lnet/minecraft/class_6544$class_6552;II)Lnet/minecraft/class_6544$class_6729$class_6730; method_39167 calculateFitness + p 0 noises + p 1 sampler + p 2 x + p 3 z + m (Ljava/util/List;Lnet/minecraft/class_6544$class_6552;)V + p 2 sampler + p 1 noises +c net/minecraft/class_6544$class_6729$class_6730 net/minecraft/world/biome/source/util/MultiNoiseUtil$FittestPositionFinder$Result + f Lnet/minecraft/class_2338; comp_223 location + f J comp_224 fitness + m ()Lnet/minecraft/class_2338; comp_223 location + m ()J comp_224 fitness + m (Lnet/minecraft/class_2338;J)V + p 1 location + p 2 fitness +c net/minecraft/class_6544$class_6552 net/minecraft/world/biome/source/util/MultiNoiseUtil$MultiNoiseSampler + f Ljava/util/List; comp_370 spawnTarget + f Lnet/minecraft/class_6910; comp_366 continentalness + f Lnet/minecraft/class_6910; comp_365 humidity + f Lnet/minecraft/class_6910; comp_364 temperature + f Lnet/minecraft/class_6910; comp_369 weirdness + f Lnet/minecraft/class_6910; comp_368 depth + f Lnet/minecraft/class_6910; comp_367 erosion + m ()Lnet/minecraft/class_2338; method_39165 findBestSpawnPosition + m (III)Lnet/minecraft/class_6544$class_6553; method_40444 sample + p 3 z + p 2 y + p 1 x + m ()Ljava/util/List; comp_370 spawnTarget + m ()Lnet/minecraft/class_6910; comp_369 weirdness + m ()Lnet/minecraft/class_6910; comp_365 humidity + m ()Lnet/minecraft/class_6910; comp_366 continentalness + m ()Lnet/minecraft/class_6910; comp_367 erosion + m ()Lnet/minecraft/class_6910; comp_368 depth + m ()Lnet/minecraft/class_6910; comp_364 temperature + m (Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Lnet/minecraft/class_6910;Ljava/util/List;)V + p 1 temperature + p 2 humidity + p 3 continentalness + p 4 erosion + p 5 depth + p 6 weirdness + p 7 spawnTarget +c net/minecraft/class_6544$class_6553 net/minecraft/world/biome/source/util/MultiNoiseUtil$NoiseValuePoint + f J comp_112 temperatureNoise + f J comp_113 humidityNoise + f J comp_116 depth + f J comp_117 weirdnessNoise + f J comp_114 continentalnessNoise + f J comp_115 erosionNoise + m ()[J method_38166 getNoiseValueList + m ()J comp_112 temperatureNoise + m ()J comp_113 humidityNoise + m ()J comp_116 depth + m ()J comp_117 weirdnessNoise + m ()J comp_114 continentalnessNoise + m ()J comp_115 erosionNoise + m (JJJJJJ)V + p 1 temperatureNoise + p 3 humidityNoise + p 5 continentalnessNoise + p 7 erosionNoise + p 9 depth + p 11 weirdnessNoise +c net/minecraft/class_6544$class_4762 net/minecraft/world/biome/source/util/MultiNoiseUtil$NoiseHypercube + c Represents a hypercube in a multi-dimensional cartesian plane. The multi-noise\nbiome source picks the closest noise hypercube from its selected point\nand chooses the biome associated to it. + f Lnet/minecraft/class_6544$class_6546; comp_106 humidity + f Lnet/minecraft/class_6544$class_6546; comp_107 continentalness + f Lnet/minecraft/class_6544$class_6546; comp_105 temperature + f Lnet/minecraft/class_6544$class_6546; comp_108 erosion + f Lnet/minecraft/class_6544$class_6546; comp_109 depth + f Lnet/minecraft/class_6544$class_6546; comp_110 weirdness + f J comp_111 offset + c This value works differently from the other parameters, in that it is\nalways {@code 0} during biome generation and does not use noise.\nThis means that setting it to a non-null number will make the biome smaller.\nThe farther {@code offset} is from {@code 0}, the smaller the biome will be.\nFor this, it does not matter whether {@code offset} is positive or negative. + f Lcom/mojang/serialization/Codec; field_24679 CODEC + m ()Ljava/util/List; method_38145 getParameters + m ()Lnet/minecraft/class_6544$class_6546; comp_106 humidity + m ()Lnet/minecraft/class_6544$class_6546; comp_107 continentalness + m (Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;Lnet/minecraft/class_6544$class_6546;J)V + p 1 temperature + p 6 weirdness + p 5 depth + p 4 erosion + p 3 continentalness + p 2 humidity + p 7 offset + m ()Lnet/minecraft/class_6544$class_6546; comp_105 temperature + m ()Lnet/minecraft/class_6544$class_6546; comp_108 erosion + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28425 method_28425 + p 0 instance + m ()Lnet/minecraft/class_6544$class_6546; comp_109 depth + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Lnet/minecraft/class_6544$class_6546; comp_110 weirdness + m (Lnet/minecraft/class_6544$class_6553;)J method_24381 getSquaredDistance + c Calculates the distance from this noise point to another one. The\ndistance is a squared distance in a multi-dimensional cartesian plane\nfrom a mathematical point of view, with a special parameter that\nreduces the calculated distance.\n\n

For most fields except weight, smaller difference between\ntwo points' fields will lead to smaller distance. For weight,\nlarger differences lead to smaller distance.\n\n

This distance is used by the mixed-noise biome layer source. The\nlayer source calculates an arbitrary noise point, and selects the\nbiome that offers a closest point to its arbitrary point. + p 1 point + m ()J comp_111 offset +c net/minecraft/class_5212 net/minecraft/world/gen/trunk/LargeOakTrunkPlacer + f Lcom/mojang/serialization/MapCodec; field_24967 CODEC + m (II)Z method_27391 isHighEnough + p 2 height + p 1 treeHeight + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2350$class_2351; method_27395 getLogAxis + p 2 branchEnd + p 1 branchStart + m (Lnet/minecraft/class_3746;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5819;ILnet/minecraft/class_2338;Ljava/util/List;Lnet/minecraft/class_4643;)V method_27392 makeBranches + p 1 world + p 2 replacer + p 7 config + p 5 startPos + p 6 branchPositions + p 3 random + p 4 treeHeight + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28898 method_28898 + p 0 instance + m (Lnet/minecraft/class_3746;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;ZLnet/minecraft/class_4643;)Z method_27393 makeOrCheckBranch + p 7 config + p 6 make + p 5 branchPos + p 4 startPos + p 3 random + p 2 replacer + p 1 world + m (II)F method_27396 shouldGenerateBranch + c If the returned value is greater than or equal to 0, a branch will be generated. + p 1 height + p 0 treeHeight + m (Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2680; method_35374 method_35374 + p 3 state + m (Lnet/minecraft/class_2338;)I method_27394 getLongestSide + p 1 offset +c net/minecraft/class_5212$class_5213 net/minecraft/world/gen/trunk/LargeOakTrunkPlacer$BranchPosition + f I field_24170 endY + f Lnet/minecraft/class_4647$class_5208; field_24169 node + m (Lnet/minecraft/class_2338;I)V + p 2 width + p 1 pos + m ()I method_27397 getEndY +c net/minecraft/class_5211 net/minecraft/world/gen/trunk/DarkOakTrunkPlacer + f Lcom/mojang/serialization/MapCodec; field_24966 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28897 method_28897 + p 0 instance +c net/minecraft/class_7876 net/minecraft/registry/entry/RegistryEntryOwner + c An owner of a {@link RegistryEntry} or {@link RegistryEntryList}. This is usually\na registry, but it is possible that an object owns multiple entries from\ndifferent registries. + m (Lnet/minecraft/class_7876;)Z method_46767 ownerEquals + p 1 other +c net/minecraft/class_5214 net/minecraft/world/gen/trunk/GiantTrunkPlacer + f Lcom/mojang/serialization/MapCodec; field_24969 CODEC + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28900 method_28900 + p 0 instance + m (Lnet/minecraft/class_3746;Ljava/util/function/BiConsumer;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338$class_2339;Lnet/minecraft/class_4643;Lnet/minecraft/class_2338;III)V method_27399 setLog + p 2 replacer + p 1 world + p 4 tmpPos + p 3 random + p 9 dz + p 6 startPos + p 5 config + p 8 dy + p 7 dx +c net/minecraft/class_5209 net/minecraft/world/gen/foliage/JungleFoliagePlacer + f I field_24166 height + f Lcom/mojang/serialization/MapCodec; field_24933 CODEC + m (Lnet/minecraft/class_5209;)Ljava/lang/Integer; method_28851 method_28851 + p 0 placer + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28852 method_28852 + p 0 instance + m (Lnet/minecraft/class_6017;Lnet/minecraft/class_6017;I)V + p 2 offset + p 3 height + p 1 radius +c net/minecraft/class_6539 net/minecraft/world/biome/ColorResolver + m (Lnet/minecraft/class_1959;DD)I getColor getColor + p 1 biome + p 2 x + p 4 z +c net/minecraft/class_6515 net/minecraft/unused/packageinfo/PackageInfo6515 +c net/minecraft/class_6516 net/minecraft/util/profiling/jfr/JfrProfileRecorder + f Ljava/util/Map; field_34427 sentPacketsToCounter + f Ljava/util/Map; field_49071 chunkRegionWriteCounter + f Ljava/util/List; field_63282 clientFpsSamples + f Ljava/util/List; field_34429 fileReadSamples + f Ljava/util/List; field_55004 structureGenerationSamples + f Ljava/util/List; field_34425 cpuLoadSamples + f I field_34430 gcCount + f Ljava/util/List; field_34432 gcHeapSummarySamples + f Ljava/util/List; field_34434 serverTickTimeSamples + f Ljava/time/Instant; field_34422 startTime + f Ljava/util/Map; field_34426 receivedPacketsToCounter + f Ljava/util/Map; field_49070 chunkRegionReadCounter + f Ljava/time/Duration; field_34435 worldGenDuration + f Ljava/util/List; field_34428 fileWriteSamples + f Ljava/time/Duration; field_34431 gcDuration + f Ljava/util/List; field_34424 chunkGenerationSamples + f Ljava/util/List; field_34433 threadAllocationStatisticsSamples + f Ljava/time/Instant; field_34423 endTime + m ()Lnet/minecraft/class_6517; method_38000 createProfile + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_39434 method_39434 + p 0 entry + m (Ljdk/jfr/consumer/RecordedEvent;)V method_38003 method_38003 + p 1 event + m (Ljava/util/stream/Stream;)V method_38002 handleEvents + p 1 events + m (Lnet/minecraft/class_9234;)Lnet/minecraft/class_6516$class_6766; method_56981 method_56981 + p 0 chunk + m (Ljava/nio/file/Path;)Lnet/minecraft/class_6517; method_38001 readProfile + p 0 path + m (Ljdk/jfr/consumer/RecordedEvent;ILjava/util/Map;)V method_39435 addPacket + p 1 event + p 3 packetsToCounter + p 2 bytes + m (Ljdk/jfr/consumer/RecordedEvent;ILjava/util/Map;)V method_56982 addChunkRegionEvent + p 1 event + p 2 bytes + p 3 chunksToCounter + m (Lnet/minecraft/class_6769;)Lnet/minecraft/class_6516$class_6766; method_39432 method_39432 + p 0 packet + m (Ljava/util/stream/Stream;)V + p 1 events + m (Ljdk/jfr/consumer/RecordedEvent;Ljava/util/List;Ljava/lang/String;)V method_38004 addFileIoSample + p 2 samples + p 3 bytesKey + p 1 event + m (Ljava/time/Duration;Ljava/util/Map;)Lnet/minecraft/class_6767; method_39433 createNetworkIoStatistics + p 1 packetsToCounter + p 0 duration +c net/minecraft/class_6516$class_6766 net/minecraft/util/profiling/jfr/JfrProfileRecorder$Counter + f J field_35582 totalBytes + f J field_35581 totalCount + m ()Lnet/minecraft/class_6767$class_6768; method_39436 toStatistics + m (I)V method_39437 add + p 1 bytes +c net/minecraft/class_6516$1 net/minecraft/util/profiling/jfr/JfrProfileRecorder$1 + m ()Ljdk/jfr/consumer/RecordedEvent; method_38005 next +c net/minecraft/class_7847 net/minecraft/client/gui/widget/Positioner + m (I)Lnet/minecraft/class_7847; method_46477 marginX + p 1 marginX + m (I)Lnet/minecraft/class_7847; method_46479 marginY + p 1 marginY + m (I)Lnet/minecraft/class_7847; method_46469 marginLeft + p 1 marginLeft + m (I)Lnet/minecraft/class_7847; method_46473 marginRight + p 1 marginRight + m (I)Lnet/minecraft/class_7847; method_46464 margin + p 1 value + m (I)Lnet/minecraft/class_7847; method_46475 marginBottom + p 1 marginBottom + m (F)Lnet/minecraft/class_7847; method_46468 relativeY + p 1 relativeY + m ()Lnet/minecraft/class_7847; method_46476 alignBottom + m (F)Lnet/minecraft/class_7847; method_46462 relativeX + p 1 relativeX + m (FF)Lnet/minecraft/class_7847; method_46463 relative + p 2 y + p 1 x + m ()Lnet/minecraft/class_7847; method_46467 alignHorizontalCenter + m (I)Lnet/minecraft/class_7847; method_46471 marginTop + p 1 marginTop + m ()Lnet/minecraft/class_7847; method_46478 copy + m ()Lnet/minecraft/class_7847; method_46461 alignLeft + m ()Lnet/minecraft/class_7847; method_46472 alignTop + m ()Lnet/minecraft/class_7847$class_7848; method_46480 toImpl + m ()Lnet/minecraft/class_7847; method_46474 alignVerticalCenter + m (II)Lnet/minecraft/class_7847; method_46465 margin + p 2 y + p 1 x + m ()Lnet/minecraft/class_7847; method_46470 alignRight + m ()Lnet/minecraft/class_7847; method_46481 create + m (IIII)Lnet/minecraft/class_7847; method_46466 margin + p 4 bottom + p 3 right + p 2 top + p 1 left +c net/minecraft/class_7847$class_7848 net/minecraft/client/gui/widget/Positioner$Impl + f I field_40779 marginTop + f I field_40778 marginLeft + f F field_40783 relativeY + f F field_40782 relativeX + f I field_40780 marginRight + f I field_40781 marginBottom + m (IIII)Lnet/minecraft/class_7847$class_7848; method_46484 margin + m (FF)Lnet/minecraft/class_7847$class_7848; method_46482 relative + m (I)Lnet/minecraft/class_7847$class_7848; method_46491 marginRight + m (I)Lnet/minecraft/class_7847$class_7848; method_46492 marginBottom + m (I)Lnet/minecraft/class_7847$class_7848; method_46493 marginX + m (II)Lnet/minecraft/class_7847$class_7848; method_46483 margin + m ()Lnet/minecraft/class_7847$class_7848; method_46489 copy + m (F)Lnet/minecraft/class_7847$class_7848; method_46485 relativeX + m (I)Lnet/minecraft/class_7847$class_7848; method_46494 marginY + m (F)Lnet/minecraft/class_7847$class_7848; method_46486 relativeY + m (I)Lnet/minecraft/class_7847$class_7848; method_46490 marginTop + m (I)Lnet/minecraft/class_7847$class_7848; method_46488 marginLeft + m (Lnet/minecraft/class_7847$class_7848;)V + p 1 original + m (I)Lnet/minecraft/class_7847$class_7848; method_46487 margin +c net/minecraft/class_7845 net/minecraft/client/gui/widget/GridWidget + c A widget that positions its children in a 2D grid.\n\n@see net.minecraft.util.math.Divider + f Ljava/util/List; field_40771 children + f Ljava/util/List; field_40772 grids + f Lnet/minecraft/class_7847; field_40773 mainPositioner + f I field_42155 columnSpacing + f I field_42154 rowSpacing + m (I)Lnet/minecraft/class_7845; method_48636 setRowSpacing + p 1 rowSpacing + m (II)V + p 2 y + p 1 x + m (Lnet/minecraft/class_8021;II)Lnet/minecraft/class_8021; method_46452 add + p 1 widget + p 3 column + p 2 row + m (I)Lnet/minecraft/class_7845; method_48635 setColumnSpacing + p 1 columnSpacing + m (Lnet/minecraft/class_8021;IILjava/util/function/Consumer;)Lnet/minecraft/class_8021; method_52734 add + p 2 row + p 3 column + p 4 callback + p 1 widget + m (Lnet/minecraft/class_8021;IIII)Lnet/minecraft/class_8021; method_46453 add + p 4 occupiedRows + p 3 column + p 5 occupiedColumns + p 2 row + p 1 widget + m ()Lnet/minecraft/class_7847; method_46457 copyPositioner + m ()Lnet/minecraft/class_7847; method_46458 getMainPositioner + m (Lnet/minecraft/class_8021;IIIILnet/minecraft/class_7847;)Lnet/minecraft/class_8021; method_46454 add + p 1 widget + p 6 positioner + p 3 column + p 2 row + p 5 occupiedColumns + p 4 occupiedRows + m (Lnet/minecraft/class_8021;IILnet/minecraft/class_7847;)Lnet/minecraft/class_8021; method_46455 add + p 1 widget + p 2 row + p 3 column + p 4 positioner + m (Lnet/minecraft/class_8021;IIIILjava/util/function/Consumer;)Lnet/minecraft/class_8021; method_52733 add + p 5 occupiedColumns + p 6 callback + p 3 column + p 4 occupiedRows + p 1 widget + p 2 row + m (I)Lnet/minecraft/class_7845$class_7939; method_47610 createAdder + p 1 columns + m (I)Lnet/minecraft/class_7845; method_48637 setSpacing + p 1 spacing +c net/minecraft/class_7845$class_7939 net/minecraft/client/gui/widget/GridWidget$Adder + f I field_41340 totalOccupiedColumns + f I field_41339 columns + m ()Lnet/minecraft/class_7847; method_47616 getMainPositioner + m (Lnet/minecraft/class_8021;Lnet/minecraft/class_7847;)Lnet/minecraft/class_8021; method_47615 add + p 1 widget + p 2 positioner + m (Lnet/minecraft/class_7845;I)V + p 2 columns + m ()Lnet/minecraft/class_7845; method_48638 getGridWidget + m (Lnet/minecraft/class_8021;)Lnet/minecraft/class_8021; method_47612 add + p 1 widget + m ()Lnet/minecraft/class_7847; method_47611 copyPositioner + m (Lnet/minecraft/class_8021;I)Lnet/minecraft/class_8021; method_47613 add + p 2 occupiedColumns + p 1 widget + m (Lnet/minecraft/class_8021;ILnet/minecraft/class_7847;)Lnet/minecraft/class_8021; method_47614 add + p 3 positioner + p 1 widget + p 2 occupiedColumns +c net/minecraft/class_7845$class_7846 net/minecraft/client/gui/widget/GridWidget$Element + f I field_40774 row + f I field_40776 occupiedRows + f I field_40775 column + f I field_40777 occupiedColumns + m ()I method_46460 getColumnEnd + m (Lnet/minecraft/class_8021;IIIILnet/minecraft/class_7847;)V + p 1 widget + p 2 row + p 3 column + p 4 occupiedRows + p 5 occupiedColumns + p 6 positioner + m ()I method_46459 getRowEnd +c net/minecraft/class_7842 net/minecraft/client/gui/widget/TextWidget + f Lnet/minecraft/class_7842$class_11764; field_62125 textOverflow + f I field_62122 maxWidth + f I field_62123 cachedWidth + f Z field_62124 cachedWidthDirty + m (IILnet/minecraft/class_2561;Lnet/minecraft/class_327;)V + p 3 message + p 2 height + p 1 width + p 4 textRenderer + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_327;I)Lnet/minecraft/class_5481; method_52728 trim + p 2 width + p 1 textRenderer + p 0 text + m (ILnet/minecraft/class_7842$class_11764;)Lnet/minecraft/class_7842; method_73395 setMaxWidth + p 1 width + p 2 textOverflow + m (IIIILnet/minecraft/class_2561;Lnet/minecraft/class_327;)V + p 6 textRenderer + p 4 height + p 5 message + p 2 y + p 3 width + p 1 x + m (I)Lnet/minecraft/class_7842; method_73396 setMaxWidth + p 1 width + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_327;)V + p 1 message + p 2 textRenderer +c net/minecraft/class_7842$class_11764 net/minecraft/client/gui/widget/TextWidget$TextOverflow + f Lnet/minecraft/class_7842$class_11764; field_62127 SCROLLING + f Lnet/minecraft/class_7842$class_11764; field_62126 CLAMPED +c net/minecraft/class_6512 net/minecraft/unused/packageinfo/PackageInfo6512 +c net/minecraft/class_7843 net/minecraft/client/gui/widget/SimplePositioningWidget + c A widget that positions its children relative to the widget's position.\nThis does not attempt to prevent widgets overlapping with each other;\nif this is necessary, consider {@link GridWidget}. + f I field_40768 minWidth + f I field_40769 minHeight + f Ljava/util/List; field_40766 elements + f Lnet/minecraft/class_7847; field_40770 mainPositioner + m (IIILjava/util/function/Consumer;F)V method_46440 setPos + p 4 relative + p 1 high + p 0 low + p 3 setter + p 2 length + m ()Lnet/minecraft/class_7847; method_46448 copyPositioner + m (I)Lnet/minecraft/class_7843; method_46447 setMinHeight + p 1 minHeight + m (Lnet/minecraft/class_8021;)Lnet/minecraft/class_8021; method_46441 add + p 1 widget + m ()Lnet/minecraft/class_7847; method_46450 getMainPositioner + m (II)Lnet/minecraft/class_7843; method_46446 setDimensions + p 2 minHeight + p 1 minWidth + m (Lnet/minecraft/class_8021;Lnet/minecraft/class_8030;FF)V method_49617 setPos + p 3 relativeY + p 2 relativeX + p 1 rect + p 0 widget + m (Ljava/util/function/Consumer;Lnet/minecraft/class_7843$class_7844;)V method_48228 method_48228 + p 1 element + m (Lnet/minecraft/class_8021;Ljava/util/function/Consumer;)Lnet/minecraft/class_8021; method_52732 add + p 2 callback + p 1 widget + m (Lnet/minecraft/class_8021;Lnet/minecraft/class_8030;)V method_48634 setPos + p 0 widget + p 1 rect + m (Lnet/minecraft/class_8021;IIIIFF)V method_46443 setPos + p 2 top + p 1 left + p 4 bottom + p 3 right + p 6 relativeY + p 5 relativeX + p 0 widget + m (Lnet/minecraft/class_8021;IIII)V method_46442 setPos + p 4 bottom + p 2 top + p 3 right + p 0 widget + p 1 left + m (Lnet/minecraft/class_8021;Lnet/minecraft/class_7847;)Lnet/minecraft/class_8021; method_46444 add + p 1 widget + p 2 positioner + m (I)Lnet/minecraft/class_7843; method_46449 setMinWidth + p 1 minWidth + m (II)V + p 1 width + p 2 height +c net/minecraft/class_7843$class_7844 net/minecraft/client/gui/widget/SimplePositioningWidget$Element +c net/minecraft/class_6508 net/minecraft/util/math/Quantiles + f Lcom/google/common/math/Quantiles$ScaleAndIndexes; field_34418 QUANTILE_POINTS + m (Ljava/util/Map;)Ljava/util/Map; method_37996 reverseMap + p 0 map + m ([D)Ljava/util/Map; method_37998 create + p 0 values + m ([I)Ljava/util/Map; method_75092 create + p 0 values + m (Ljava/util/Map;Lit/unimi/dsi/fastutil/ints/Int2DoubleRBTreeMap;)V method_37997 method_37997 + p 1 reversedMap + m ([J)Ljava/util/Map; method_37999 create + p 0 values +c net/minecraft/class_6509 net/minecraft/util/profiling/jfr/event/PacketEvent + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/net/SocketAddress;I)V + p 5 bytes + p 1 protocolId + p 2 packetDirection + p 3 packetId + p 4 remoteAddress +c net/minecraft/class_6509$class_6510 net/minecraft/util/profiling/jfr/event/PacketEvent$Names + f Ljava/lang/String; field_35579 PROTOCOL_ID + f Ljava/lang/String; field_34419 REMOTE_ADDRESS + f Ljava/lang/String; field_48318 PACKET_DIRECTION + f Ljava/lang/String; field_35580 PACKET_ID + f Ljava/lang/String; field_34421 BYTES +c net/minecraft/class_7837 net/minecraft/util/math/MatrixUtil + f F field_40746 COT_PI_OVER_8 + f Lnet/minecraft/class_8218; field_43146 SIN_COS_PI_OVER_8 + m (FF)Lnet/minecraft/class_8218; method_46410 qrGivensQuaternion + c Computes the Givens quaternion for a QR factorization.\nSee Algorithm 4 of \nhttps://pages.cs.wisc.edu/~sifakis/papers/SVD_TR1690.pdf. + p 1 a2 + p 0 a1 + m (Lorg/joml/Matrix3f;)Lorg/apache/commons/lang3/tuple/Triple; method_46412 svdDecompose + c Performs an approximate singular value decomposition on a 3×3 matrix.\nSee Algorithm 4 of \nhttps://pages.cs.wisc.edu/~sifakis/papers/SVD_TR1690.pdf. + p 0 A + m (Lorg/joml/Matrix3f;I)Lorg/joml/Quaternionf; method_49741 applyJacobiIterations + p 1 numJacobiIterations + p 0 AtA + m (Lorg/joml/Matrix4f;F)Lorg/joml/Matrix4f; method_46414 scale + p 1 scalar + p 0 matrix + m (Lorg/joml/Matrix4fc;)Z method_65174 isIdentity + p 0 matrix + m (Lorg/joml/Matrix3f;Lorg/joml/Matrix3f;Lorg/joml/Quaternionf;Lorg/joml/Quaternionf;)V method_46415 applyJacobiIteration + p 0 AtA + m (Lorg/joml/Matrix4fc;I)Z method_67703 isPropertyBitSet + p 1 property + p 0 matrix + m (Lorg/joml/Matrix4fc;I)Z method_67702 hasProperty + p 1 property + p 0 matrix + m (FFF)Lnet/minecraft/class_8218; method_46411 approximateGivensQuaternion + c Computes the approximate Givens rotation factors {@code (c, s) = (cos(phi), sin(phi))} for a 2×2 matrix.\nSee Algorithm 4 of \nhttps://pages.cs.wisc.edu/~sifakis/papers/SVD_TR1690.pdf. + p 0 a11 + c the top-left element of the matrix + p 1 a12 + c the average of the two elements on the minor diagonal + p 2 a22 + c the bottom-right element of the matrix + m (Lorg/joml/Matrix4fc;)Z method_56827 isOrthonormal + p 0 matrix + m (Lorg/joml/Matrix4fc;)Z method_56826 isTranslation + p 0 matrix + m (Lorg/joml/Matrix3f;Lorg/joml/Matrix3f;)V method_49742 conjugate + c Stores A′XA into X, clobbering A. + p 0 X + p 1 A +c net/minecraft/class_6506 net/minecraft/util/profiling/jfr/InstanceType + f Ljava/lang/String; field_34414 name + f Lnet/minecraft/class_6506; field_34413 SERVER + f Lnet/minecraft/class_6506; field_34412 CLIENT + m (Lnet/minecraft/server/MinecraftServer;)Lnet/minecraft/class_6506; method_37987 get + p 0 server + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()Ljava/lang/String; method_37986 getName +c net/minecraft/class_6507 net/minecraft/util/profiling/jfr/JfrListener + f Ljava/lang/Runnable; field_34417 stopCallback + f Lorg/slf4j/Logger; field_34926 LOGGER + m (Ljava/util/function/Supplier;)V method_37991 log + p 0 logSupplier + m (Ljava/nio/file/Path;)V method_38663 stop + p 1 dumpPath + m (Ljava/lang/Runnable;)V + p 1 stopCallback + m (Ljava/util/function/Supplier;Ljava/lang/Throwable;)V method_37992 warn + p 0 logSupplier + p 1 throwable +c net/minecraft/class_7838 net/minecraft/client/gui/widget/WrapperWidget + f I field_41815 x + f I field_41816 y + f I field_41813 width + f I field_41814 height + m (ILnet/minecraft/class_8021;)V method_48223 method_48223 + p 2 element + m (IIII)V + p 4 height + p 3 width + p 2 y + p 1 x + m (ILnet/minecraft/class_8021;)V method_48226 method_48226 + p 2 element +c net/minecraft/class_7838$class_7839 net/minecraft/client/gui/widget/WrapperWidget$WrappedElement + f Lnet/minecraft/class_7847$class_7848; field_40753 positioner + f Lnet/minecraft/class_8021; field_40752 widget + m (II)V method_46425 setY + p 1 top + p 2 bottom + m (Lnet/minecraft/class_8021;Lnet/minecraft/class_7847;)V + p 1 widget + p 2 positioner + m ()I method_46422 getHeight + m (II)V method_46423 setX + p 2 right + p 1 left + m ()I method_46424 getWidth +c net/minecraft/class_7855 net/minecraft/client/session/report/AbuseReport + f Ljava/lang/String; field_40817 opinionComments + f Ljava/util/UUID; field_40813 reportId + f Ljava/util/UUID; field_40815 reportedPlayerUuid + f Z field_52305 attested + f Ljava/time/Instant; field_40814 currentTime + f Lnet/minecraft/class_7573; field_40818 reason + m ()Lnet/minecraft/class_7855; method_46547 copy + m (Ljava/util/UUID;Ljava/time/Instant;Ljava/util/UUID;)V + p 3 reportedPlayerUuid + p 2 currentTime + p 1 reportId + m (Lnet/minecraft/class_437;Lnet/minecraft/class_7574;)Lnet/minecraft/class_437; method_53596 createReportScreen + p 1 parent + p 2 context + m (Ljava/util/UUID;)Z method_46549 playerUuidEquals + p 1 uuid +c net/minecraft/class_7855$class_7567 net/minecraft/client/session/report/AbuseReport$ValidationError + f Lnet/minecraft/class_7855$class_7567; field_39657 TOO_MANY_MESSAGES + f Lnet/minecraft/class_7855$class_7567; field_52306 NOT_ATTESTED + f Lnet/minecraft/class_7855$class_7567; field_39658 COMMENTS_TOO_LONG + f Lnet/minecraft/class_7855$class_7567; field_39655 NO_REASON + f Lnet/minecraft/class_7855$class_7567; field_39656 NO_REPORTED_MESSAGES + f Lnet/minecraft/class_2561; comp_877 message + m ()Lnet/minecraft/class_7919; method_53615 createTooltip + m ()Lnet/minecraft/class_2561; comp_877 message + m (Lnet/minecraft/class_2561;)V + p 1 message +c net/minecraft/class_7855$class_7568 net/minecraft/client/session/report/AbuseReport$ReportWithId + f Ljava/util/UUID; comp_878 id + f Lcom/mojang/authlib/minecraft/report/AbuseReport; comp_879 report + f Lnet/minecraft/class_8776; comp_1910 reportType + m ()Ljava/util/UUID; comp_878 id + m ()Lnet/minecraft/class_8776; comp_1910 reportType + m ()Lcom/mojang/authlib/minecraft/report/AbuseReport; comp_879 report + m (Ljava/util/UUID;Lnet/minecraft/class_8776;Lcom/mojang/authlib/minecraft/report/AbuseReport;)V + p 1 id + p 2 reportType + p 3 report +c net/minecraft/class_7855$class_8775 net/minecraft/client/session/report/AbuseReport$Builder + f Lnet/minecraft/class_7855; field_46061 report + f Lcom/mojang/authlib/minecraft/report/AbuseReportLimits; field_46062 limits + m ()Lnet/minecraft/class_7855$class_7567; method_53605 validate + m ()Ljava/lang/String; method_53613 getOpinionComments + m (Lnet/minecraft/class_7573;)V method_53609 setReason + p 1 reason + m (Z)V method_61155 setAttested + p 1 attested + m (Lnet/minecraft/class_7855;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 report + p 2 limits + m ()Lnet/minecraft/class_7573; method_53614 getReason + m ()Z method_53602 hasEnoughInfo + m ()Z method_61156 isAttested + m ()Lnet/minecraft/class_7855; method_53611 getReport + m ()Ljava/util/UUID; method_53612 getReportedPlayerUuid + m (Lnet/minecraft/class_7574;)Lcom/mojang/datafixers/util/Either; method_53600 build + p 1 context + m (Ljava/lang/String;)V method_53610 setOpinionComments + p 1 opinionComments +c net/minecraft/class_6525 net/minecraft/util/profiling/jfr/sample/GcHeapSummarySample + f Ljava/time/Instant; comp_34 time + f Lnet/minecraft/class_6525$class_6527; comp_36 summaryType + f J comp_35 heapUsed + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/time/Instant; comp_34 time + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/class_6525; method_38042 fromEvent + p 0 event + m ()Lnet/minecraft/class_6525$class_6527; comp_36 summaryType + m ()J comp_35 heapUsed + m (Ljava/time/Duration;Ljava/util/List;Ljava/time/Duration;I)Lnet/minecraft/class_6525$class_6526; method_38040 toStatistics + p 3 count + p 2 gcDuration + p 1 samples + p 0 duration + m (Ljava/util/List;)D method_38041 getAllocatedBytesPerSecond + p 0 samples + m (Ljava/time/Instant;JLnet/minecraft/class_6525$class_6527;)V + p 1 time + p 2 heapUsed + p 4 summaryType +c net/minecraft/class_6525$class_6526 net/minecraft/util/profiling/jfr/sample/GcHeapSummarySample$Statistics + f I comp_39 count + f Ljava/time/Duration; comp_37 duration + f Ljava/time/Duration; comp_38 gcDuration + f D comp_40 allocatedBytesPerSecond + m ()I comp_39 count + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()Ljava/time/Duration; comp_37 duration + m ()Ljava/time/Duration; comp_38 gcDuration + m ()F method_38043 getGcDurationRatio + m ()D comp_40 allocatedBytesPerSecond + m (Ljava/time/Duration;Ljava/time/Duration;ID)V + p 1 duration + p 2 gcDuration + p 3 count + p 4 allocatedBytesPerSecond +c net/minecraft/class_6525$class_6527 net/minecraft/util/profiling/jfr/sample/GcHeapSummarySample$SummaryType + f Lnet/minecraft/class_6525$class_6527; field_34444 AFTER_GC + f Lnet/minecraft/class_6525$class_6527; field_34443 BEFORE_GC +c net/minecraft/class_6522 net/minecraft/util/profiling/jfr/sample/CpuLoadSample + f D comp_23 userJvm + f D comp_22 jvm + f D comp_24 system + m ()D comp_23 userJvm + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/class_6522; method_38032 fromEvent + p 0 event + m ()D comp_22 jvm + m ()D comp_24 system + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (DDD)V + p 1 jvm + p 3 userJvm + p 5 system +c net/minecraft/class_7853 net/minecraft/client/session/ProfileKeys + f Lnet/minecraft/class_7853; field_40800 MISSING + m ()Ljava/util/concurrent/CompletableFuture; method_46522 fetchKeyPair + m ()Z method_46523 isExpired + m (Lcom/mojang/authlib/minecraft/UserApiService;Lnet/minecraft/class_320;Ljava/nio/file/Path;)Lnet/minecraft/class_7853; method_46532 create + p 2 root + p 1 session + p 0 userApiService +c net/minecraft/class_6523 net/minecraft/util/profiling/jfr/sample/FileIoSample + f Ljava/lang/String; comp_26 path + f Ljava/time/Duration; comp_25 duration + f J comp_27 bytes + m (Lnet/minecraft/class_6523;)Ljava/lang/String; method_38036 method_38036 + p 0 sample + m (Lnet/minecraft/class_6523;)J method_38033 method_38033 + p 0 sample + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_38035 method_38035 + p 0 entry + m (Lnet/minecraft/class_6523;)J method_38038 method_38038 + p 0 sample + m ()Ljava/lang/String; comp_26 path + m ()Ljava/time/Duration; comp_25 duration + m ()J comp_27 bytes + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_6523;)Z method_38037 method_38037 + p 0 sample + m (Ljava/time/Duration;Ljava/util/List;)Lnet/minecraft/class_6523$class_6524; method_38034 toStatistics + p 1 samples + p 0 duration + m (Ljava/time/Duration;Ljava/lang/String;J)V + p 1 duration + p 2 path + p 3 bytes +c net/minecraft/class_6523$class_6524 net/minecraft/util/profiling/jfr/sample/FileIoSample$Statistics + f J comp_28 totalBytes + f D comp_31 countPerSecond + f D comp_29 bytesPerSecond + f J comp_30 count + f Ljava/util/List; comp_33 topContributors + f Ljava/time/Duration; comp_32 totalDuration + m ()J comp_28 totalBytes + m ()D comp_31 countPerSecond + m (Ljava/lang/Object;)Z equals equals + p 1 o + m ()D comp_29 bytesPerSecond + m ()J comp_30 count + m ()Ljava/util/List; comp_33 topContributors + m ()Ljava/time/Duration; comp_32 totalDuration + m (JDJDLjava/time/Duration;Ljava/util/List;)V + p 1 totalBytes + p 3 bytesPerSecond + p 5 count + p 7 countPerSecond + p 9 totalDuration + p 10 topContributors +c net/minecraft/class_6520 net/minecraft/unused/packageinfo/PackageInfo6520 +c net/minecraft/class_6521 net/minecraft/util/profiling/jfr/sample/ChunkGenerationSample + f Lnet/minecraft/class_2265; comp_18 centerPos + f Ljava/time/Duration; comp_16 duration + f Lnet/minecraft/class_1923; comp_17 chunkPos + f Ljava/lang/String; comp_21 worldKey + f Lnet/minecraft/class_2806; comp_19 chunkStatus + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/class_6521; method_38031 fromEvent + p 0 event + m ()Lnet/minecraft/class_2265; comp_18 centerPos + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/time/Duration;Lnet/minecraft/class_1923;Lnet/minecraft/class_2265;Lnet/minecraft/class_2806;Ljava/lang/String;)V + p 1 duration + p 2 chunkPos + p 3 centerPos + p 4 chunkStatus + p 5 worldKey + m ()Lnet/minecraft/class_1923; comp_17 chunkPos + m ()Ljava/lang/String; comp_21 worldKey + m ()Lnet/minecraft/class_2806; comp_19 chunkStatus +c net/minecraft/class_7852 net/minecraft/client/gui/widget/EmptyWidget + f I field_41821 height + f I field_41820 width + f I field_41819 y + f I field_41818 x + m (IIII)V + p 1 x + p 2 y + p 3 width + p 4 height + m (I)Lnet/minecraft/class_7852; method_46513 ofHeight + p 0 height + m (I)Lnet/minecraft/class_7852; method_46512 ofWidth + p 0 width + m (II)V + p 1 width + p 2 height +c net/minecraft/class_6519 net/minecraft/util/profiling/jfr/JfrJsonReport + f Ljava/lang/String; field_34441 TOTAL_BYTES + f Ljava/lang/String; field_34438 BYTES_PER_SECOND + f Ljava/lang/String; field_34442 COUNT_PER_SECOND + f Ljava/lang/String; field_34440 DURATION_NANOS_TOTAL + f Lcom/google/gson/Gson; field_34437 gson + f Ljava/lang/String; field_34439 COUNT + m (Ljava/util/List;)Lcom/google/gson/JsonElement; method_38030 collectCpuPercentSection + p 1 samples + m (Lcom/google/gson/JsonArray;Ljava/util/function/BiConsumer;Lcom/mojang/datafixers/util/Pair;)V method_38016 method_38016 + p 2 topContributor + m (Lcom/google/gson/JsonObject;Lcom/google/gson/JsonArray;)V method_38018 method_38018 + p 1 json + m (Ljava/lang/String;Ljava/lang/Double;Lcom/google/gson/JsonObject;)V method_38022 method_38022 + p 2 json + m (Lnet/minecraft/class_10373;)Lcom/google/gson/JsonElement; method_65109 method_65109 + p 0 sample + m (Lnet/minecraft/class_6532;)D method_38664 method_38664 + p 0 sample + m (Lnet/minecraft/class_6517;)Lcom/google/gson/JsonElement; method_38025 collectFileIoSection + p 1 profile + m (Lnet/minecraft/class_6769;Lcom/google/gson/JsonObject;)V method_56984 addPacketData + p 1 json + p 0 packet + m (Lcom/google/gson/JsonObject;Lcom/google/gson/JsonObject;)V method_38019 method_38019 + p 1 json + m (Lnet/minecraft/class_6517;)Ljava/lang/String; method_38010 toString + p 1 profile + m (Lcom/google/gson/JsonArray;Ljava/lang/String;Ljava/lang/Double;)V method_38017 method_38017 + p 1 threadName + p 2 allocation + m (Lnet/minecraft/class_6517;)Lcom/google/gson/JsonElement; method_38029 collectNetworkSection + p 1 profile + m (Lcom/google/gson/JsonObject;Ljava/lang/Integer;Ljava/lang/Double;)V method_65113 method_65113 + p 2 value + p 1 quantile + m (Lnet/minecraft/class_6525$class_6526;)Lcom/google/gson/JsonElement; method_38013 collectHeapSection + p 1 statistics + m (Lcom/google/gson/JsonObject;Ljava/lang/Integer;Ljava/lang/Double;)V method_38020 method_38020 + p 1 quantile + p 2 value + m (Lnet/minecraft/class_6767;Ljava/util/function/BiConsumer;)Lcom/google/gson/JsonElement; method_38014 collectPacketSection + p 1 statistics + p 2 callback + m (Lcom/google/gson/JsonArray;Lcom/mojang/datafixers/util/Pair;)V method_38026 method_38026 + p 1 pair + m (Ljava/util/List;)Lcom/google/gson/JsonElement; method_38028 collectServerTickSection + p 1 samples + m (Lcom/google/gson/JsonObject;Ljava/lang/Integer;Ljava/lang/Double;)V method_75095 method_75095 + p 2 value + p 1 quantile + m (Lcom/google/gson/JsonObject;Lcom/google/gson/JsonObject;)V method_65112 method_65112 + p 1 json + m (Ljava/util/List;)Lcom/google/gson/JsonElement; method_38023 collectChunkGenSection + p 1 statistics + m (Ljava/util/List;)Lcom/google/gson/JsonElement; method_65111 collectStructureGenSection + p 1 structureGenerationSamples + m (Lcom/google/gson/JsonArray;Lcom/google/gson/JsonObject;Lnet/minecraft/class_6535;Ljava/lang/String;Ljava/util/List;)V method_65110 method_65110 + p 3 name + p 4 samples + m (Lcom/mojang/datafixers/util/Pair;)D method_38021 method_38021 + p 0 pair + m (Lnet/minecraft/class_6530$class_6531;)Lcom/google/gson/JsonElement; method_38015 collectThreadAllocationSection + p 1 statistics + m (Ljava/util/List;Ljava/util/function/ToDoubleFunction;)Lcom/google/gson/JsonObject; method_38024 method_38024 + p 0 samplesx + p 1 valueGetter + m (Lcom/google/gson/JsonObject;Ljava/lang/Integer;Ljava/lang/Double;)V method_38027 method_38027 + p 2 value + p 1 quantile + m (Ljava/util/List;)Lcom/google/gson/JsonElement; method_75096 collectClientFpsSection + p 1 samples + m (Lnet/minecraft/class_6521;)Lcom/google/gson/JsonElement; method_38011 method_38011 + p 0 sample + m (Lnet/minecraft/class_6523$class_6524;)Lcom/google/gson/JsonElement; method_38012 collectFileIoSection + p 1 statistics + m (Lnet/minecraft/class_9234;Lcom/google/gson/JsonObject;)V method_56983 addChunkData + p 1 json + p 0 chunk +c net/minecraft/class_6517 net/minecraft/util/profiling/jfr/JfrProfile + f Lnet/minecraft/class_6530$class_6531; comp_10 threadAllocationMap + f Ljava/util/List; comp_8 cpuLoadSamples + f Ljava/time/Duration; comp_5 duration + f Lnet/minecraft/class_6767; comp_12 packetSentStatistics + f Ljava/util/List; comp_3330 structureGenerationSamples + f Lnet/minecraft/class_6523$class_6524; comp_13 fileWriteStatistics + f Ljava/time/Duration; comp_6 worldGenDuration + f Ljava/time/Instant; comp_4 endTime + f Ljava/util/List; comp_15 chunkGenerationSamples + f Ljava/util/List; comp_7 serverTickTimeSamples + f Lnet/minecraft/class_6525$class_6526; comp_9 gcHeapSummaryStatistics + f Lnet/minecraft/class_6767; comp_11 packetReadStatistics + f Lnet/minecraft/class_6523$class_6524; comp_14 fileReadStatistics + f Ljava/time/Instant; comp_3 startTime + f Lnet/minecraft/class_6767; comp_2339 writtenChunks + f Lnet/minecraft/class_6767; comp_2340 readChunks + f Ljava/util/List; comp_4948 fps + m ()Ljava/util/List; method_38006 getChunkGenerationSampleStatistics + m ()Ljava/util/List; comp_7 serverTickTimeSamples + m ()Ljava/lang/String; method_38009 toJson + m ()Lnet/minecraft/class_6525$class_6526; comp_9 gcHeapSummaryStatistics + m ()Lnet/minecraft/class_6767; comp_11 packetReadStatistics + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lcom/mojang/datafixers/util/Pair;)Ljava/time/Duration; method_38007 method_38007 + p 0 pair + m ()Lnet/minecraft/class_6523$class_6524; comp_14 fileReadStatistics + m ()Ljava/time/Instant; comp_3 startTime + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_38008 method_38008 + p 0 entry + m ()Lnet/minecraft/class_6530$class_6531; comp_10 threadAllocationMap + m ()Ljava/util/List; comp_8 cpuLoadSamples + m (Lcom/mojang/datafixers/util/Pair;)Z method_75094 method_75094 + p 0 pair + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_75093 method_75093 + p 0 pair + m ()Ljava/time/Duration; comp_5 duration + m ()Lnet/minecraft/class_6767; comp_12 packetSentStatistics + m ()Ljava/util/List; comp_3330 structureGenerationSamples + m ()Lnet/minecraft/class_6523$class_6524; comp_13 fileWriteStatistics + m ()Ljava/time/Duration; comp_6 worldGenDuration + m ()Ljava/time/Instant; comp_4 endTime + m ()Ljava/util/List; comp_15 chunkGenerationSamples + m ()Ljava/util/List; comp_4948 fps + m ()Lnet/minecraft/class_6767; comp_2340 readChunks + m ()Lnet/minecraft/class_6767; comp_2339 writtenChunks + m (Ljava/time/Instant;Ljava/time/Instant;Ljava/time/Duration;Ljava/time/Duration;Ljava/util/List;Ljava/util/List;Ljava/util/List;Lnet/minecraft/class_6525$class_6526;Lnet/minecraft/class_6530$class_6531;Lnet/minecraft/class_6767;Lnet/minecraft/class_6767;Lnet/minecraft/class_6767;Lnet/minecraft/class_6767;Lnet/minecraft/class_6523$class_6524;Lnet/minecraft/class_6523$class_6524;Ljava/util/List;Ljava/util/List;)V + p 1 startTime + p 2 endTime + p 3 duration + p 4 worldGenDuration + p 5 fps + p 6 serverTickTimeSamples + p 7 cpuLoadSamples + p 8 gcHeapSummaryStatistics + p 9 threadAllocationMap + p 10 packetReadStatistics + p 11 packetSentStatistics + p 12 writtenChunks + p 13 readChunks + p 14 fileWriteStatistics + p 15 fileReadStatistics + p 16 chunkGenerationSamples + p 17 structureGenerationSamples +c net/minecraft/class_6518 net/minecraft/unused/packageinfo/PackageInfo6518 +c net/minecraft/class_7849 net/minecraft/client/gui/widget/AxisGridWidget + f Lnet/minecraft/class_7849$class_7851; field_40784 axis + f Ljava/util/List; field_40785 elements + f Lnet/minecraft/class_7847; field_40787 mainPositioner + m (IILnet/minecraft/class_7849$class_7851;)V + p 1 width + p 2 height + p 3 axis + m (Lnet/minecraft/class_8021;Ljava/util/function/Consumer;)Lnet/minecraft/class_8021; method_52731 add + p 2 callback + p 1 widget + m (Ljava/util/function/Consumer;Lnet/minecraft/class_7849$class_7850;)V method_48230 method_48230 + p 1 element + m ()Lnet/minecraft/class_7847; method_46500 getMainPositioner + m ()Lnet/minecraft/class_7847; method_46499 copyPositioner + m (IIIILnet/minecraft/class_7849$class_7851;)V + p 2 y + p 1 x + p 4 height + p 3 width + p 5 axis + m (Lnet/minecraft/class_8021;Lnet/minecraft/class_7847;)Lnet/minecraft/class_8021; method_46496 add + p 2 positioner + p 1 widget + m (Lnet/minecraft/class_8021;)Lnet/minecraft/class_8021; method_46495 add + p 1 widget +c net/minecraft/class_7849$class_7850 net/minecraft/client/gui/widget/AxisGridWidget$Element +c net/minecraft/class_7849$class_7851 net/minecraft/client/gui/widget/AxisGridWidget$DisplayAxis + f Lnet/minecraft/class_7849$class_7851; field_40790 VERTICAL + f Lnet/minecraft/class_7849$class_7851; field_40789 HORIZONTAL + m (Lnet/minecraft/class_8021;)I method_46507 getOtherAxisLength + p 1 widget + m (Lnet/minecraft/class_7849$class_7850;I)V method_46505 setSameAxisCoordinate + p 1 element + p 2 low + m (Lnet/minecraft/class_8021;)I method_46502 getSameAxisLength + p 1 widget + m (Lnet/minecraft/class_7849$class_7850;II)V method_46506 setOtherAxisCoordinate + p 3 high + p 1 element + p 2 low + m (Lnet/minecraft/class_8021;)I method_46510 getOtherAxisCoordinate + p 1 widget + m (Lnet/minecraft/class_7849$class_7850;)I method_46504 getSameAxisLength + p 1 element + m (Lnet/minecraft/class_8021;)I method_46509 getSameAxisCoordinate + p 1 widget + m (Lnet/minecraft/class_7849$class_7850;)I method_46508 getOtherAxisLength + p 1 element +c net/minecraft/class_7822 net/minecraft/network/encryption/PublicPlayerSession + f Lnet/minecraft/class_7428; comp_1086 publicKeyData + f Ljava/util/UUID; comp_1085 sessionId + m (Ljava/time/Duration;)Lnet/minecraft/class_7615; method_46296 createVerifier + p 1 gracePeriod + m ()Lnet/minecraft/class_7428; comp_1086 publicKeyData + m ()Lnet/minecraft/class_7822$class_7823; method_46298 toSerialized + m ()Z method_51466 isKeyExpired + m (Ljava/util/UUID;)Lnet/minecraft/class_7610$class_7611; method_46297 createUnpacker + p 1 sender + m ()Ljava/util/UUID; comp_1085 sessionId + m (Ljava/util/UUID;Lnet/minecraft/class_7428;)V + p 1 sessionId + p 2 publicKeyData +c net/minecraft/class_7822$class_7823 net/minecraft/network/encryption/PublicPlayerSession$Serialized + f Lnet/minecraft/class_7428$class_7443; comp_1088 publicKeyData + f Ljava/util/UUID; comp_1087 sessionId + m (Lnet/minecraft/class_2540;)Lnet/minecraft/class_7822$class_7823; method_46301 fromBuf + p 0 buf + m (Lnet/minecraft/class_2540;Lnet/minecraft/class_7822$class_7823;)V method_46303 write + p 1 serialized + p 0 buf + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/class_7500;)Lnet/minecraft/class_7822; method_46300 toSession + p 2 servicesSignatureVerifier + p 1 gameProfile + m ()Lnet/minecraft/class_7428$class_7443; comp_1088 publicKeyData + m ()Ljava/util/UUID; comp_1087 sessionId + m (Ljava/util/UUID;Lnet/minecraft/class_7428$class_7443;)V + p 1 sessionId + p 2 publicKeyData +c net/minecraft/class_7817 net/minecraft/network/message/AcknowledgedMessage + c A message that is acknowledged. If {@link #pending} is {@code true}, the acknowledgment\nis not sent to the server yet. + f Z comp_1076 pending + f Lnet/minecraft/class_7469; comp_1075 signature + m ()Lnet/minecraft/class_7817; method_46271 unmarkAsPending + c {@return a new acknowledged message with {@link #pending} set to {@code false}} + m ()Z comp_1076 pending + m ()Lnet/minecraft/class_7469; comp_1075 signature + m (Lnet/minecraft/class_7469;Z)V + p 1 signature + p 2 pending +c net/minecraft/class_7818 net/minecraft/network/encryption/ClientPlayerSession + f Lnet/minecraft/class_7427; comp_1078 keyPair + f Ljava/util/UUID; comp_1077 sessionId + m ()Lnet/minecraft/class_7822; method_46275 toPublicSession + m (Lnet/minecraft/class_7427;)Lnet/minecraft/class_7818; method_46273 create + p 0 keyPair + m (Ljava/util/UUID;)Lnet/minecraft/class_7610$class_7612; method_46274 createPacker + p 1 sender + m ()Lnet/minecraft/class_7427; comp_1078 keyPair + m ()Ljava/util/UUID; comp_1077 sessionId + m (Ljava/util/UUID;Lnet/minecraft/class_7427;)V + p 1 sessionId + p 2 keyPair +c net/minecraft/class_6504 net/minecraft/datafixer/schema/Schema2831 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/util/Map;)V registerTypes registerTypes + p 2 entityTypes + p 3 blockEntityTypes + p 1 schema +c net/minecraft/class_7836 net/minecraft/util/math/Divider + c A class for dividing an integer into {@link #divisor} number of integers\nsuch that the difference between any integers is {@code 0} or {@code 1}.\nThe resulting integers sum to the {@code dividend}.\nFor example, {@code new Divider(13, 5)} will produce {@code 2, 3, 2, 3, 3}. + f I field_40739 quotient + f I field_40738 divisor + f I field_40742 remainder + f I field_40741 returnedCount + f I field_40740 mod + m (II)V + p 2 divisor + p 1 dividend + m (II)Ljava/lang/Iterable; method_46402 asIterable + p 0 dividend + p 1 divisor +c net/minecraft/class_6505 net/minecraft/util/profiling/jfr/JfrProfiler + f Lorg/slf4j/Logger; field_34408 LOGGER + f Ljava/lang/Runnable; field_63276 fpsEventRecorder + f Ljdk/jfr/Recording; field_34411 currentRecording + f Ljava/lang/Runnable; field_63278 networkSummaryEventRecorder + f Ljava/util/Map; field_35578 summaryRecorderByAddress + f Ljava/lang/String; field_34409 CONFIG_PATH + f Ljava/time/format/DateTimeFormatter; field_34410 DATE_TIME_FORMAT + f Ljava/lang/String; field_34405 TICKING + f Ljava/lang/String; field_49058 STORAGE + f Ljava/lang/String; field_34403 MINECRAFT + f I field_63275 fps + f Ljava/util/List; field_34407 EVENTS + f Lnet/minecraft/class_6505; field_35576 INSTANCE + f F field_35577 tickTime + f Ljava/lang/Runnable; field_63277 tickTimeEventRecorder + f Ljava/lang/String; field_34406 NETWORK + f Ljava/lang/String; field_34404 WORLD_GENERATION + m ()Lnet/minecraft/class_6505; method_39428 getInstance + m (Lnet/minecraft/util/profiling/jfr/event/WorldLoadFinishedEvent;Z)V method_65108 method_65108 + p 1 success + m (Lnet/minecraft/util/profiling/jfr/event/ChunkGenerationEvent;Z)V method_65106 method_65106 + p 1 success + m (Ljava/io/Reader;Lnet/minecraft/class_6506;)Z method_37983 start + p 2 instanceType + p 1 reader + m (Ljava/net/SocketAddress;)Lnet/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$class_6779; method_39429 getOrCreateSummaryRecorder + p 1 address + m (Lnet/minecraft/util/profiling/jfr/event/StructureGenerationEvent;Z)V method_65107 method_65107 + p 1 success + m (Ljava/lang/Class;Ljava/lang/Runnable;)V method_75088 addPeriodicEvent + p 1 recorder + p 0 clazz + m (Lnet/minecraft/class_6506;Ljava/lang/String;Ljdk/jfr/Recording;)V method_37982 method_37982 + p 2 recording + m ()V method_38660 addListener + m ()V method_75089 addPeriodicEvents +c net/minecraft/class_6505$1 net/minecraft/util/profiling/jfr/JfrProfiler$1 + m (Ljdk/jfr/Recording;)V recordingStateChanged recordingStateChanged + p 1 recording +c net/minecraft/class_6505$2 net/minecraft/util/profiling/jfr/JfrProfiler$2 + f Lnet/minecraft/class_6507; field_63279 listener + m (Ljdk/jfr/Recording;)V recordingStateChanged recordingStateChanged + p 1 recording +c net/minecraft/class_7833 net/minecraft/util/math/RotationAxis + f Lnet/minecraft/class_7833; field_40717 NEGATIVE_Z + f Lnet/minecraft/class_7833; field_40716 POSITIVE_Y + f Lnet/minecraft/class_7833; field_40718 POSITIVE_Z + f Lnet/minecraft/class_7833; field_40713 NEGATIVE_X + f Lnet/minecraft/class_7833; field_40715 NEGATIVE_Y + f Lnet/minecraft/class_7833; field_40714 POSITIVE_X + m (F)Lorg/joml/Quaternionf; rotationDegrees rotationDegrees + p 1 deg + m (Lorg/joml/Vector3f;)Lnet/minecraft/class_7833; method_46356 of + p 0 axis + m (Lorg/joml/Vector3f;F)Lorg/joml/Quaternionf; method_46350 method_46350 + p 1 rad + m (F)Lorg/joml/Quaternionf; method_46351 method_46351 + p 0 rad + m (F)Lorg/joml/Quaternionf; method_46352 method_46352 + p 0 rad + m (F)Lorg/joml/Quaternionf; method_46353 method_46353 + p 0 rad + m (F)Lorg/joml/Quaternionf; method_46354 method_46354 + p 0 rad + m (F)Lorg/joml/Quaternionf; rotation rotation + p 1 rad + m (F)Lorg/joml/Quaternionf; method_46355 method_46355 + p 0 rad + m (F)Lorg/joml/Quaternionf; method_46349 method_46349 + p 0 rad +c net/minecraft/class_6502 net/minecraft/util/collection/EmptyPaletteStorage + c An empty palette storage has a size, but all its elements are 0. + f [J field_34401 EMPTY_DATA + f I field_34402 size + m (I)V + p 1 size +c net/minecraft/class_6503 net/minecraft/datafixer/fix/UntaggedSpawnerFix + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37977 method_37977 + p 2 spawnPotentialsTyped + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37978 method_37978 + p 2 spawnDataTyped + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37974 fixSpawnDataTyped + p 2 spawnDataTyped + p 1 spawnDataType + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37976 fixSpawner + p 2 spawnPotentialsTyped + p 1 spawnPotentialsType + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37973 method_37973 + p 5 untaggedSpawnerTyped +c net/minecraft/class_7832 net/minecraft/network/packet/s2c/config/FeaturesS2CPacket + f Lnet/minecraft/class_9139; field_48693 CODEC + f Ljava/util/Set; comp_1113 features + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_8732;)V method_46348 apply + m (Lnet/minecraft/class_2540;)V method_56509 write + p 1 buf + m ()Ljava/util/Set; comp_1113 features + m (Ljava/util/Set;)V + p 1 features +c net/minecraft/class_6501 net/minecraft/util/function/ToFloatFunction + f Lnet/minecraft/class_6501; field_37409 IDENTITY + m ()F comp_532 min + m ()F comp_533 max + m (Ljava/lang/Object;)F method_41296 apply + p 1 x + m (F)F method_41307 method_41307 + p 0 value + m (Ljava/util/function/Function;)Lnet/minecraft/class_6501; method_41309 compose + c {@return a composed function that first applies the before function to its input,\nand then applies this function} to the result. + p 1 before + c the function to apply before this function is applied + m (Lit/unimi/dsi/fastutil/floats/Float2FloatFunction;)Lnet/minecraft/class_6501; method_41308 fromFloat + p 0 delegate +c net/minecraft/class_6501$1 net/minecraft/util/function/ToFloatFunction$1 + m (Ljava/lang/Float;)F method_41310 apply +c net/minecraft/class_7828 net/minecraft/network/packet/s2c/play/PlayerRemoveS2CPacket + f Lnet/minecraft/class_9139; field_47954 CODEC + f Ljava/util/List; comp_1105 profileIds + m (Lnet/minecraft/class_2540;)V + p 1 buf + m (Lnet/minecraft/class_2602;)V method_46325 apply + m (Lnet/minecraft/class_2540;)V method_55901 write + p 1 buf + m ()Ljava/util/List; comp_1105 profileIds + m (Ljava/util/List;)V + p 1 profileIds +c net/minecraft/class_7826 net/minecraft/network/message/MessageLink + c Represents a link to the preceding message that a particular message has. + f Lcom/mojang/serialization/Codec; field_40849 CODEC + f Ljava/util/UUID; comp_1096 sessionId + f Ljava/util/UUID; comp_1095 sender + f I comp_1094 index + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46614 method_46614 + p 0 instance + m (Lnet/minecraft/class_7498$class_7499;)V method_46318 update + p 1 updater + m ()Lnet/minecraft/class_7826; method_46317 next + c {@return the next link used by the message's succeeding message}\n\n

This can return {@code null} in an extremely rare case, where the index is about\nto overflow. + m (Ljava/util/UUID;)Lnet/minecraft/class_7826; method_46319 of + p 0 sender + m (Lnet/minecraft/class_7826;)Z method_46321 linksTo + c {@return whether this link links to the {@code preceding} link}\n\n

For the link to be considered valid, the two must have the same sender and session ID,\nand the newer link's index must be above the preceding link's index. + p 1 preceding + m (Ljava/util/UUID;Ljava/util/UUID;)Lnet/minecraft/class_7826; method_46320 of + p 0 sender + p 1 sessionId + m ()I comp_1094 index + m ()Ljava/util/UUID; comp_1096 sessionId + m ()Ljava/util/UUID; comp_1095 sender + m (ILjava/util/UUID;Ljava/util/UUID;)V + p 1 index + p 2 sender + p 3 sessionId +c net/minecraft/class_7827 net/minecraft/network/packet/s2c/play/ProfilelessChatMessageS2CPacket + f Lnet/minecraft/class_9139; field_47923 CODEC + f Lnet/minecraft/class_2556$class_7602; comp_1098 chatType + f Lnet/minecraft/class_2561; comp_1097 message + m (Lnet/minecraft/class_2602;)V method_46324 apply + m ()Lnet/minecraft/class_2561; comp_1097 message + m ()Lnet/minecraft/class_2556$class_7602; comp_1098 chatType + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2556$class_7602;)V + p 1 message + p 2 chatType +c net/minecraft/class_1702 net/minecraft/entity/player/HungerManager + f I field_57754 DEFAULT_FOOD_TICK_TIMER + f F field_57755 DEFAULT_EXHAUSTION + f F field_7752 exhaustion + f I field_7755 foodTickTimer + f F field_7753 saturationLevel + f I field_7756 foodLevel + m ()I method_7586 getFoodLevel + m (IF)V method_59684 addInternal + p 1 nutrition + p 2 saturation + m (I)V method_7580 setFoodLevel + p 1 foodLevel + m (F)V method_7583 addExhaustion + p 1 exhaustion + m (F)V method_7581 setSaturationLevel + p 1 saturationLevel + m (IF)V method_7585 add + p 1 food + p 2 saturationModifier + m ()Z method_7587 isNotFull + m ()F method_7589 getSaturationLevel + m (Lnet/minecraft/class_11372;)V method_7582 writeData + p 1 view + m (Lnet/minecraft/class_4174;)V method_7579 eat + p 1 foodComponent + m (Lnet/minecraft/class_11368;)V method_7584 readData + p 1 view + m (Lnet/minecraft/class_3222;)V method_7588 update + p 1 player + m ()Z method_75882 canSprint +c net/minecraft/class_1701 net/minecraft/entity/vehicle/TntMinecartEntity + f B field_30703 PRIME_TNT_STATUS + f Lnet/minecraft/class_1282; field_55977 damageSource + f I field_57753 DEFAULT_FUSE_TICKS + f F field_55022 DEFAULT_EXPLOSION_SPEED_FACTOR + f F field_55023 explosionSpeedFactor + f Ljava/lang/String; field_55020 EXPLOSION_SPEED_FACTOR_NBT_KEY + f I field_7751 fuseTicks + f Ljava/lang/String; field_55021 FUSE_NBT_KEY + f Ljava/lang/String; field_52524 EXPLOSION_POWER_NBT_KEY + f F field_52526 explosionPower + f F field_52525 DEFAULT_EXPLOSION_POWER + m (Lnet/minecraft/class_1282;)V method_7575 prime + p 1 source + m ()Z method_7578 isPrimed + m (Lnet/minecraft/class_1282;D)V method_7576 explode + p 2 power + p 1 damageSource + m (Lnet/minecraft/class_1282;)Z method_55057 shouldDetonate + p 0 source + m ()I method_7577 getFuseTicks +c net/minecraft/class_1700 net/minecraft/entity/vehicle/HopperMinecartEntity + f Z field_52523 hopperTicked + f Z field_57752 DEFAULT_ENABLED + f Z field_7749 enabled + m ()Z method_7574 canOperate + m ()Z method_7572 isEnabled + m ()V method_61600 tickHopper + m (Z)V method_7570 setEnabled + p 1 enabled +c net/minecraft/class_1706 net/minecraft/screen/AnvilScreenHandler + f Z field_52566 keepSecondSlot + f Lorg/slf4j/Logger; field_7771 LOGGER + f Lnet/minecraft/class_3915; field_7770 levelCost + f I field_41896 OUTPUT_X + f I field_7776 repairItemUsage + f I field_41895 INPUT_2_X + f I field_41894 INPUT_1_X + f I field_41899 INPUT_2_ID + f I field_41900 OUTPUT_ID + f I field_41898 INPUT_1_ID + f I field_30751 MAX_NAME_LENGTH + f I field_41897 SLOT_Y + f Ljava/lang/String; field_7774 newItemName + m (Lnet/minecraft/class_1799;)Z method_48350 method_48350 + p 0 stack + m (Ljava/lang/String;)Z method_7625 setNewItemName + p 1 newItemName + m ()I method_17369 getLevelCost + m (Ljava/lang/String;)Ljava/lang/String; method_52176 sanitize + p 0 name + m (Lnet/minecraft/class_1799;)Z method_48351 method_48351 + p 0 stack + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V method_24922 method_24922 + p 2 pos + p 1 world + m (ILnet/minecraft/class_1661;)V + p 2 inventory + p 1 syncId + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;)V + p 3 context + p 1 syncId + p 2 inventory + m (I)I method_20398 getNextCost + p 0 cost + m ()Lnet/minecraft/class_8047; method_48352 getForgingSlotsManager +c net/minecraft/class_1704 net/minecraft/screen/BeaconScreenHandler + f Lnet/minecraft/class_3914; field_17289 context + f Lnet/minecraft/class_1704$class_1705; field_17288 paymentSlot + f I field_30761 HOTBAR_START + f Lnet/minecraft/class_3913; field_17290 propertyDelegate + f I field_30762 HOTBAR_END + f I field_30760 INVENTORY_END + f Lnet/minecraft/class_1263; field_17287 payment + f I field_30758 PROPERTY_COUNT + f I field_30759 INVENTORY_START + f I field_30756 PAYMENT_SLOT_ID + f I field_30757 BEACON_INVENTORY_SIZE + m (I)Lnet/minecraft/class_6880; method_53174 getStatusEffectForRawId + p 0 id + m ()Z method_17376 hasPayment + m (ILnet/minecraft/class_1263;)V + p 2 inventory + p 1 syncId + m (ILnet/minecraft/class_1263;Lnet/minecraft/class_3913;Lnet/minecraft/class_3914;)V + p 4 context + p 3 propertyDelegate + p 2 inventory + p 1 syncId + m (Lnet/minecraft/class_6880;)I method_53173 getRawIdForStatusEffect + p 0 effect + m ()I method_17373 getProperties + m ()Lnet/minecraft/class_6880; method_17374 getPrimaryEffect + m ()Lnet/minecraft/class_6880; method_17375 getSecondaryEffect + m (Ljava/util/Optional;Ljava/util/Optional;)V method_17372 setEffects + p 1 primary + p 2 secondary +c net/minecraft/class_1704$class_1705 net/minecraft/screen/BeaconScreenHandler$PaymentSlot +c net/minecraft/class_1703 net/minecraft/screen/ScreenHandler + c Manages lists of item stacks and properties between the server and the client for use\nin a screen. They are usually used for synchronizing the screens of container blocks\nsuch as chests and furnaces.\n\n

On the client, screen handlers are coupled with a {@link\nnet.minecraft.client.gui.screen.ingame.HandledScreen}. Handled screens have a\nreference to a client-sided screen handler that is exposed through the\n{@link net.minecraft.client.gui.screen.ingame.ScreenHandlerProvider} interface.\n\n

Models

\n

Screen handlers hold slots, properties, property delegates, and screen handler\ncontexts. This allows easy synchronization of states between the client and the\nserver, and prevents running code on the wrong side.\n\n

{@link Slot} holds one item stack. The slots are usually controlled by the server,\nand the changes to slots on the server are automatically synchronized to the client.\nSlots can be backed by an inventory, allowing the changes to be reflected to the\npersistent storage (like block entities) on the server. Clients manipulate the\nslots by issuing a "slot click" packet. "Clicking" a slot includes actions like\npicking up crafting result, shift-clicking stacks, swapping stacks between the\ninventory and the hotbar, or dropping stacks.\n\n

Screen handlers also contain a list of {@linkplain Property properties}\nthat are used for syncing integers (e.g. progress bars) from the server to the client.\nProperties can also be used to sync an integer from the client to the server, although\nit has to be manually performed. If a property relies on other objects, like\na value from a block entity instance, then the property can delegate its operations\nusing {@link PropertyDelegate}. The delegate is passed when creating the screen handler.\nOn the server, access to the property's value is delegated to the delegate (which in\nturn delegates to another object like a block entity instance).\nOn the client, access to the property's value still uses the synced value.\n\n

{@link ScreenHandlerContext} allows running code on the server side only. Screen\nhandlers are designed to be used on both sides; any action modifying the world has\nto be wrapped in a call to the context. Like with the property delegate, a context\nwith the world is passed to the screen handler on creation on the server. On the\nserver, the context executes the function with the world and the position. On the\nclient, the context does nothing.\n\n

How to use screen handlers

\n

Creation

\n

To create a new screen handler, subclass {@link ScreenHandler}, create and register\na new {@linkplain ScreenHandlerType screen handler type}, and associate it with\na handled screen.\n\n

A subclass should have two constructors. One is for the server, and should take\nthe {@code syncId} and inventories, property delegates, or contexts that are used.\nThe {@link #syncId} is shared between the two sides. It is used to verify that a player\nhas a specific screen (handler) open so that they can move items, for example.\nThe inventories are used to back a slot so that any changes to a slot is reflected\non the backing inventory, and vice versa. Property delegates and contexts bridge\nbetween the screen handler and other parts of the world; see above for more description.\n\n

The constructor should {@linkplain #addSlot add slots}, {@link #addProperties\nadd properties from delegates}, and store the property delegates and screen handler\ncontext in the instance fields.\n\n

The other constructor is for the client. There, the only parameters allowed are the\n{@code syncId} and the player inventory. This is because all other things are\nunavailable at creation time and synced later. This constructor should call the\nother constructor with {@linkplain net.minecraft.inventory.SimpleInventory\na new simple inventory of sufficient size}, {@linkplain ArrayPropertyDelegate\na new array property delegate}, and {@linkplain ScreenHandlerContext#EMPTY\nan empty screen handler context}. Synced data then fills the inventory and property\ndelegate.\n\n

The screen handler then has to be registered in a registry. Create a new instance of\n{@link ScreenHandlerType} with the screen handler type factory (which can be a reference\nto the client-side constructor; i.e. {@code MyScreenHandler::MyScreenHandler})\nand register it to {@link net.minecraft.registry.Registries#SCREEN_HANDLER}.\n\n

Opening

\n

Most of the screen handlers are associated with a block and opened by using the block.\nScreen handlers are opened on the server and synced to the client. To open a\nscreen handler, use {@link PlayerEntity#openHandledScreen}. This takes a\n{@link NamedScreenHandlerFactory}, which creates a screen handler. In vanilla,\nblock entity instances implement the interface, allowing them to be passed.\n{@link SimpleNamedScreenHandlerFactory} is a screen handler factory implementation\nfor use cases that do not involve a block entity.\n\n

The factory should create a new instance of a screen handler with the server-side\nconstructor (one that takes inventories, etc). If the screen handler requires\na property delegate or a context, create an instance and pass it here.\n\n

As long as the screen handler only uses the slots and properties, there should not\nbe any need for external synchronization.\n\n

Interaction

\n

Screen handler interaction mainly involves "slot clicks" and "button clicks".\nA {@linkplain #onSlotClick slot click} is, as mentioned before, an action manipulating\nthe slots' held item stacks. Slot clicks are implemented in this class and\n{@link #quickMove}. To manipulate the stacks, get the slot via {@link #getSlot}\nand call methods of it. Screen handlers also provide methods for common operations,\nsuch as {@link #insertItem} that inserts a stack to the screen handler's available slots.\n\n

The "cursor stack" is an item stack held by the cursor. When moving item stacks\nbetween slots, the cursor stack can hold the stack temporarily. The cursor stack\nis not held by any slots. When the screen handler is closed, the stack will be\ninserted to the player inventory or dropped as an item entity.\n\n

Some screen handlers also handle {@linkplain #onButtonClick button clicks}.\nThis is used to execute an action on the server as a response to clients sending a\nbutton click packet. In most cases, this is triggered by a button in the screen\nrendered by the client, hence the name. Inside screen handlers, buttons are identified\nwith an integer.\n\n

Subclasses must implement two methods: {@link #canUse(PlayerEntity)} and {@link\n#quickMove}. See the documentation of each method for more details.\n\n

Closing

\n

Since a screen handler handles the client's screen, the screen must be closed at the\nsame time. To close the screen handler and the screen, call {@link\nPlayerEntity#closeHandledScreen} on the server.\n\n

Screen handlers should override {@link #onClosed}. In there, it should {@linkplain\n#dropInventory drop contents} of all slots not backed by an inventory and call\n{@link Inventory#onClose} on the backing inventory. See the documentation of\nthe method for more details.\n\n@see ScreenHandlerType\n@see ScreenHandlerFactory\n@see Slot\n@see Inventory\n@see net.minecraft.client.gui.screen.ingame.HandledScreen + f I field_7762 quickCraftButton + f Lit/unimi/dsi/fastutil/ints/IntList; field_29559 trackedPropertyValues + f Ljava/util/List; field_17285 properties + f Z field_29209 disableSync + f Lnet/minecraft/class_3917; field_17493 type + f Ljava/util/Set; field_7757 quickCraftSlots + f Lnet/minecraft/class_2371; field_7761 slots + f Ljava/util/List; field_7765 listeners + f Lnet/minecraft/class_5916; field_29208 syncHandler + f Lnet/minecraft/class_1799; field_29205 cursorStack + f Lnet/minecraft/class_2371; field_7764 trackedStacks + c A list of item stacks that is used for tracking changes in {@link #sendContentUpdates()}. + f Lnet/minecraft/class_10927; field_29207 trackedCursorSlot + f Lorg/slf4j/Logger; field_36534 LOGGER + f I field_30730 EMPTY_SPACE_SLOT_INDEX + c A special slot index value ({@value}) indicating that the player has clicked outside the main panel\nof a screen. Used for dropping the cursor stack. + f I field_7763 syncId + f Lnet/minecraft/class_2371; field_29206 trackedSlots + f I field_7759 quickCraftStage + f I field_34024 revision + m (Lnet/minecraft/class_1735;Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V method_34249 method_34249 + p 3 stack + m (Lnet/minecraft/class_1799;)V method_34254 setCursorStack + p 1 stack + m ()Lnet/minecraft/class_1799; method_34255 getCursorStack + m (Lnet/minecraft/class_1263;II)V method_61623 addPlayerInventorySlots + p 1 playerInventory + p 2 left + p 3 top + m (Lnet/minecraft/class_1799;IIZ)Z method_7616 insertItem + c Tries to consume {@code stack} by inserting to slots from {@code startIndex}\nto {@code endIndex - 1} (both inclusive) until the entire stack is used.\n\n

If {@code fromLast} is {@code true}, this attempts the insertion in reverse\norder; i.e. {@code endIndex - 1} to {@code startIndex} (both inclusive).\n\n@return whether {@code stack} was decremented + p 1 stack + p 2 startIndex + p 3 endIndex + p 4 fromLast + m (I)Lnet/minecraft/class_1735; method_7611 getSlot + c {@return the slot with index {@code index}} + p 1 index + m (Lnet/minecraft/class_2586;)I method_7608 calculateComparatorOutput + p 0 entity + m (Lnet/minecraft/class_1263;)I method_7618 calculateComparatorOutput + p 0 inventory + m (I)I method_7620 unpackQuickCraftButton + p 0 quickCraftData + m (Lnet/minecraft/class_3913;)V method_17360 addProperties + c Adds properties of {@code propertyDelegate} to this screen handler.\nThis must be called inside the subclass's constructor.\n\n@see #addProperty + p 1 propertyDelegate + m (Lnet/minecraft/class_1657;)Z method_7597 canUse + c {@return whether the screen handler can be used}\n\n

Subclasses should call #canUse(ScreenHandlerContext, PlayerEntity, Block)}\nor implement the check itself. The implementation should check that the\nplayer is near the screen handler's source position (e.g. block position) and\nthat the source (e.g. block) is not destroyed. + p 1 player + m (II)V method_37419 notifyPropertyUpdate + p 1 index + p 2 value + m (Lnet/minecraft/class_5916;)V method_34248 updateSyncHandler + p 1 handler + m (IILnet/minecraft/class_1713;Lnet/minecraft/class_1657;)V method_30010 internalOnSlotClick + c The actual logic that handles a slot click. Called by {@link #onSlotClick\n(int, int, SlotActionType, PlayerEntity)} in a try-catch block that wraps\nexceptions from this method into a crash report. + p 2 button + p 1 slotIndex + p 4 player + p 3 actionType + m (Lnet/minecraft/class_3917;I)V + p 1 type + p 2 syncId + m (II)V method_34715 checkPropertyUpdates + p 1 id + p 2 value + m ()V method_7605 endQuickCraft + m (Lnet/minecraft/class_1735;)Z method_7615 canInsertIntoSlot + p 1 slot + m (II)I method_7591 packQuickCraftData + p 1 buttonId + p 0 quickCraftStage + m (Lnet/minecraft/class_1263;II)V method_61624 addPlayerSlots + c Adds the slots for the player inventory and hotbar. Subclasses should call this\nwithin the constructor. + p 2 left + p 1 playerInventory + p 3 top + m (Lnet/minecraft/class_1735;Lnet/minecraft/class_1799;Z)Z method_7592 canInsertItemIntoSlot + p 1 stack + p 2 allowOverflow + p 0 slot + m (Lnet/minecraft/class_1263;)V method_7609 onContentChanged + c Called when a slot's content has changed.\n\n

This is not called by default; subclasses that override this method\nshould also use a custom {@link Inventory} whose {@link Inventory#markDirty markDirty} method is\noverridden to call this method as a backing inventory of the slot.\n\n

This can be used to update the output slot when input changes. + p 1 inventory + m (ILnet/minecraft/class_10938;)V method_37449 setReceivedHash + p 2 hash + p 1 slot + m (ILnet/minecraft/class_1657;)Z method_7600 shouldQuickCraftContinue + p 1 player + p 0 stage + m ()V method_34258 checkCursorStackUpdates + m (ILjava/util/List;Lnet/minecraft/class_1799;)V method_7610 updateSlotStacks + p 1 revision + p 3 cursorStack + p 2 stacks + m (ILnet/minecraft/class_1799;)V method_34245 setReceivedStack + p 1 slot + p 2 stack + m (Lnet/minecraft/class_1712;)V method_7603 removeListener + c Removes {@code listener} from this screen handler. + p 1 listener + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1735;)Z method_7613 canInsertIntoSlot + c {@return whether {@code stack} can be inserted to {@code slot}}\n\n

Subclasses should override this to return {@code false} if the slot is\nused for output. + p 1 stack + p 2 slot + m (Lnet/minecraft/class_10938;)V method_34250 setReceivedCursorHash + p 1 cursorStackHash + m (Lnet/minecraft/class_1703;)V method_34247 copySharedSlots + p 1 handler + m (ILnet/minecraft/class_1799;Ljava/util/function/Supplier;)V method_34246 updateTrackedSlot + p 1 slot + p 3 copySupplier + p 2 stack + m (IILnet/minecraft/class_1799;)V method_7619 setStackInSlot + p 3 stack + p 2 revision + p 1 slot + m (Lnet/minecraft/class_1657;)V method_7595 onClosed + c Called when this screen handler is closed.\n\n

To close a screen handler, call {@link PlayerEntity#closeHandledScreen}\non the server instead of this method.\n\n

This drops the cursor stack by default. Subclasses that have slots not backed\nby a persistent inventory should call {@link #dropInventory} to drop the stacks. + p 1 player + m (Lnet/minecraft/class_1657;I)Z method_7604 onButtonClick + c Called when {@code player} clicks a button with {@code id}.\n\n

"Button click" is an abstract concept; it does not have to be triggered by a\nbutton. Examples of button clicks include selecting a recipe for a stonecutter,\nturning a page of a lectern's book, or selecting an enchantment on an enchanting table.\nButtons are identified by an integer.\n\n@implNote This is normally only called by the server; however, screens that use buttons\ncan call this on the client.\n\n@return whether the button click is handled successfully + p 1 player + p 2 id + m ()V method_34257 enableSyncing + m (Lnet/minecraft/class_5916;Lnet/minecraft/class_10927;)Lnet/minecraft/class_10927; method_68804 method_68804 + p 1 slot + m ()Lnet/minecraft/class_2371; method_7602 getStacks + c {@return a list of all stacks of the screen handler's slot}\n\n

This should not be used in most cases, and modifying the returned list\nhas no effect to the screen handler. + m (Lnet/minecraft/class_1735;)Lnet/minecraft/class_1735; method_7621 addSlot + c Adds {@code slot} to this screen handler. This must be called inside\nthe subclass's constructor.\n\n@return the added slot + p 1 slot + m (IILnet/minecraft/class_1713;Lnet/minecraft/class_1657;)V method_7593 onSlotClick + c Performs a slot click. This can behave in many different ways depending mainly on the action type. + p 2 button + p 1 slotIndex + p 4 player + p 3 actionType + c the type of slot click, check the docs for each {@link SlotActionType} value for details + m ()I method_37422 nextRevision + m (Lnet/minecraft/class_1263;I)V method_17359 checkSize + c Checks that the size of the provided inventory is at least as large as the {@code expectedSize}.\n\n@throws IllegalArgumentException if the inventory size is smaller than {@code expectedSize} + p 0 inventory + p 1 expectedSize + m (Lnet/minecraft/class_3915;)Lnet/minecraft/class_3915; method_17362 addProperty + c Adds {@code property} to this screen handler. This must be called inside the\nsubclass's constructor.\n\n

If the property relies on external objects (such as a block entity instance),\nit should instead use property delegates and {@link #addProperties}.\n\n@return the added property\n\n@see #addProperties + p 1 property + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1263;)V method_7607 dropInventory + p 2 inventory + p 1 player + m (ILnet/minecraft/class_1799;Ljava/util/function/Supplier;)V method_34253 checkSlotUpdates + p 1 slot + p 3 copySupplier + p 2 stack + m ()Lnet/minecraft/class_3917; method_17358 getType + c {@return the screen handler type}\n\n

A screen handler must have associated screen handler type to open it.\n\n@throws UnsupportedOperationException if the type is not passed in the constructor + m (II)V method_7606 setProperty + c Sets the property with ID {@code id} to {@code value}.\n\n

Subclasses can call {@link #sendContentUpdates} to manually sync the change\nto the client. + p 2 value + p 1 id + m (Lnet/minecraft/class_1263;II)V method_61622 addPlayerHotbarSlots + p 1 playerInventory + p 2 left + p 3 y + m (Lnet/minecraft/class_1712;)V method_7596 addListener + c Adds {@code listener} to the screen handler.\n\n

Listeners are often used to listen to slot or property changes on the\nclient's screen. + p 1 listener + m ()V method_37420 updateToClient + m ()V method_7623 sendContentUpdates + c Sends updates to listeners if any properties or slot stacks have changed. + m (I)Z method_40442 isValid + c {@return whether the given slot index is valid}\n\n

This returns {@code true} for all added slots, {@value #EMPTY_SPACE_SLOT_INDEX},\nand {@code -1}. + p 1 slot + m (Lnet/minecraft/class_1657;I)Lnet/minecraft/class_1799; method_7601 quickMove + c Quick-moves the stack at {@code slot} to other\nslots of the screen handler that belong to a different inventory or\nanother section of the same inventory. For example, items can be quick-moved\nbetween a chest's slots and the player inventory or between the main player inventory\nand the hotbar.\n\n

Subclasses should call {@link #insertItem}, and if the insertion was successful,\nclear the slot (if the stack is exhausted) or mark it as dirty. See the vanilla\nsubclasses for basic implementation.\n\n

Quick-moving is also known as "shift-clicking" since it's usually triggered\nusing Shift+left click.\n\n@return {@link ItemStack#EMPTY} when no stack can be transferred, otherwise\nthe original stack\n\n@see #insertItem + p 1 player + p 2 slot + c the index of the slot to quick-move from + m (Ljava/util/Set;ILnet/minecraft/class_1799;)I method_7617 calculateStackSize + p 0 slots + p 1 mode + p 2 stack + m ()V method_34256 disableSyncing + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_5536;Lnet/minecraft/class_1735;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z method_45409 handleSlotClick + p 5 cursorStack + p 4 stack + p 3 slot + p 2 clickType + p 1 player + m (II)V method_61621 selectBundleStack + p 1 slot + p 2 selectedStack + m (Lnet/minecraft/class_1799;Lnet/minecraft/class_1735;Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V method_34251 method_34251 + p 3 stack + m ()Lnet/minecraft/class_5630; method_34259 getCursorStackReference + c {@return a reference to the cursor's stack} + m (Lnet/minecraft/class_3913;I)V method_17361 checkDataCount + c Checks that the size of the {@code data} is at least as large as the {@code expectedCount}.\n\n@throws IllegalArgumentException if the {@code data} has a smaller size than {@code expectedCount} + p 1 expectedCount + p 0 data + m ()I method_37421 getRevision + m (Lnet/minecraft/class_2248;Lnet/minecraft/class_1657;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Ljava/lang/Boolean; method_17696 method_17696 + p 2 world + p 3 pos + m ()V method_34252 syncState + m (Lnet/minecraft/class_1263;I)Ljava/util/OptionalInt; method_37418 getSlotIndex + p 1 inventory + p 2 index + m (Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V method_64192 offerOrDropStack + p 1 stack + p 0 player + m (Lnet/minecraft/class_3914;Lnet/minecraft/class_1657;Lnet/minecraft/class_2248;)Z method_17695 canUse + c {@return whether the screen handler can be used}\n\n@apiNote This should be called inside {@link #canUse(PlayerEntity)}.\n\n@implNote On the server, this checks that the block at the position is\n{@code block} and the player is within 8 blocks from the block's center.\n\n@see #canUse(PlayerEntity) + p 0 context + p 1 player + p 2 block + m (I)I method_7594 unpackQuickCraftStage + p 0 quickCraftData +c net/minecraft/class_1708 net/minecraft/screen/BrewingStandScreenHandler + f Lnet/minecraft/class_2960; field_55024 EMPTY_BREWING_FUEL_SLOT_TEXTURE + f Lnet/minecraft/class_2960; field_55025 EMPTY_POTION_SLOT_TEXTURE + f I field_30772 HOTBAR_END + f I field_30770 INVENTORY_END + f I field_30771 HOTBAR_START + f I field_30769 INVENTORY_START + f I field_30767 BREWING_STAND_INVENTORY_SIZE + f Lnet/minecraft/class_3913; field_17292 propertyDelegate + f I field_30768 PROPERTY_COUNT + f I field_30765 INGREDIENT_SLOT_ID + f Lnet/minecraft/class_1735; field_7787 ingredientSlot + f I field_30766 FUEL_SLOT_ID + f Lnet/minecraft/class_1263; field_7788 inventory + m (ILnet/minecraft/class_1661;)V + p 1 syncId + p 2 playerInventory + m ()I method_17377 getFuel + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;Lnet/minecraft/class_3913;)V + p 1 syncId + p 2 playerInventory + p 3 inventory + p 4 propertyDelegate + m ()I method_17378 getBrewTime +c net/minecraft/class_1708$class_1709 net/minecraft/screen/BrewingStandScreenHandler$FuelSlot + m (Lnet/minecraft/class_1799;)Z method_7630 matches + p 0 stack +c net/minecraft/class_1708$class_1711 net/minecraft/screen/BrewingStandScreenHandler$PotionSlot + m (Lnet/minecraft/class_1799;)Z method_7631 matches + p 0 stack +c net/minecraft/class_1708$class_1710 net/minecraft/screen/BrewingStandScreenHandler$IngredientSlot + f Lnet/minecraft/class_1845; field_51385 brewingRecipeRegistry + m (Lnet/minecraft/class_1845;Lnet/minecraft/class_1263;III)V + p 5 y + p 4 x + p 3 index + p 2 inventory + p 1 brewingRecipeRegistry +c net/minecraft/class_1707 net/minecraft/screen/GenericContainerScreenHandler + f I field_17496 rows + f Lnet/minecraft/class_1263; field_17495 inventory + m ()Lnet/minecraft/class_1263; method_7629 getInventory + m (ILnet/minecraft/class_1661;)Lnet/minecraft/class_1707; method_19248 createGeneric9x3 + p 0 syncId + p 1 playerInventory + m (ILnet/minecraft/class_1661;)Lnet/minecraft/class_1707; method_19249 createGeneric9x4 + p 1 playerInventory + p 0 syncId + m (ILnet/minecraft/class_1661;)Lnet/minecraft/class_1707; method_19244 createGeneric9x1 + p 0 syncId + p 1 playerInventory + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;)Lnet/minecraft/class_1707; method_19247 createGeneric9x6 + p 0 syncId + p 1 playerInventory + p 2 inventory + m (Lnet/minecraft/class_1263;II)V method_61634 addInventorySlots + p 1 inventory + p 3 top + p 2 left + m (Lnet/minecraft/class_3917;ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;I)V + p 1 type + p 4 inventory + p 5 rows + p 2 syncId + p 3 playerInventory + m (ILnet/minecraft/class_1661;)Lnet/minecraft/class_1707; method_19246 createGeneric9x2 + p 0 syncId + p 1 playerInventory + m (ILnet/minecraft/class_1661;)Lnet/minecraft/class_1707; method_19251 createGeneric9x6 + p 0 syncId + p 1 playerInventory + m (ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;)Lnet/minecraft/class_1707; method_19245 createGeneric9x3 + p 0 syncId + p 1 playerInventory + p 2 inventory + m (Lnet/minecraft/class_3917;ILnet/minecraft/class_1661;I)V + p 3 playerInventory + p 2 syncId + p 1 type + p 4 rows + m (ILnet/minecraft/class_1661;)Lnet/minecraft/class_1707; method_19250 createGeneric9x5 + p 0 syncId + p 1 playerInventory + m ()I method_17388 getRows +c net/minecraft/class_5285 net/minecraft/world/gen/GeneratorOptions + f Ljava/util/Optional; field_24532 legacyCustomOptions + f Z field_24528 bonusChest + f Z field_24527 generateStructures + f Lcom/mojang/serialization/MapCodec; field_24826 CODEC + f J field_24526 seed + f Lnet/minecraft/class_5285; field_40367 DEMO_OPTIONS + m (Lnet/minecraft/class_5285;)Ljava/util/Optional; method_28605 method_28605 + p 0 generatorOptions + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28606 method_28606 + p 0 instance + m (JZZ)V + p 4 bonusChest + p 3 generateStructures + p 1 seed + m ()J method_28028 getSeed + m ()Z method_28035 isLegacyCustomizedType + m (Z)Lnet/minecraft/class_5285; method_45542 withStructures + p 1 structures + m (Ljava/lang/String;)Ljava/util/OptionalLong; method_46720 parseSeed + p 0 seed + m ()Z method_28030 hasBonusChest + m (JZZLjava/util/Optional;)V + p 1 seed + p 5 legacyCustomOptions + p 4 bonusChest + p 3 generateStructures + m (Z)Lnet/minecraft/class_5285; method_28036 withBonusChest + p 1 bonusChest + m ()J method_46721 getRandomSeed + m ()Lnet/minecraft/class_5285; method_45541 createRandom + m ()Z method_28029 shouldGenerateStructures + m ()Lnet/minecraft/class_5285; method_64223 createTestWorld + m (Ljava/util/OptionalLong;)Lnet/minecraft/class_5285; method_28024 withSeed + p 1 seed +c net/minecraft/client/data/Main net/minecraft/client/data/Main + m ([Ljava/lang/String;)V main main + p 0 args + m (Lnet/minecraft/class_2403;Z)V method_65774 create + p 0 dataGenerator + p 1 includeClient +c net/minecraft/class_5284 net/minecraft/world/gen/chunk/ChunkGeneratorSettings + f Lcom/mojang/serialization/Codec; field_24780 CODEC + f Z comp_481 aquifers + f Lnet/minecraft/class_5321; field_26359 CAVES + f Lnet/minecraft/class_2680; comp_475 defaultBlock + f Lnet/minecraft/class_5321; field_26357 NETHER + f Lnet/minecraft/class_6686$class_6708; comp_478 surfaceRule + f Z comp_483 usesLegacyRandom + f Lnet/minecraft/class_5321; field_35051 LARGE_BIOMES + f Lnet/minecraft/class_5321; field_26360 FLOATING_ISLANDS + f Lcom/mojang/serialization/Codec; field_24781 REGISTRY_CODEC + f Lnet/minecraft/class_2680; comp_476 defaultFluid + f I comp_479 seaLevel + f Z comp_480 mobGenerationDisabled + f Lnet/minecraft/class_5321; field_26358 END + f Lnet/minecraft/class_5321; field_26356 AMPLIFIED + f Lnet/minecraft/class_5309; comp_474 generationShapeConfig + f Lnet/minecraft/class_5321; field_26355 OVERWORLD + f Z comp_482 oreVeins + f Lnet/minecraft/class_6953; comp_477 noiseRouter + f Ljava/util/List; comp_538 spawnTarget + m ()I comp_479 seaLevel + m ()Lnet/minecraft/class_5284; method_44323 createMissingSettings + m ()Lnet/minecraft/class_2680; comp_476 defaultFluid + m ()Z comp_480 mobGenerationDisabled + c Whether entities will be generated during chunk population.\n\n

It does not control whether spawns will occur during gameplay. + m ()Lnet/minecraft/class_5309; comp_474 generationShapeConfig + m ()Z method_33757 hasAquifers + m ()Lnet/minecraft/class_2919$class_6675; method_38999 getRandomProvider + m (Lnet/minecraft/class_7891;ZZ)Lnet/minecraft/class_5284; method_30643 createSurfaceSettings + p 0 registerable + p 1 amplified + p 2 largeBiomes + m ()Z comp_482 oreVeins + m (Lnet/minecraft/class_7891;)Lnet/minecraft/class_5284; method_30642 createEndSettings + p 0 registerable + m (Lnet/minecraft/class_7891;)Lnet/minecraft/class_5284; method_39901 createCavesSettings + p 0 registerable + m (Lnet/minecraft/class_5309;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;Lnet/minecraft/class_6953;Lnet/minecraft/class_6686$class_6708;Ljava/util/List;IZZZZ)V + p 5 surfaceRule + p 1 generationShapeConfig + p 2 defaultBlock + p 3 defaultFluid + p 4 noiseRouter + p 6 spawnTarget + p 7 seaLevel + p 8 mobGenerationDisabled + p 9 aquifers + p 10 oreVeins + p 11 usesLegacyRandom + m ()Z comp_481 aquifers + m ()Lnet/minecraft/class_2680; comp_475 defaultBlock + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28558 method_28558 + p 0 instance + m (Lnet/minecraft/class_7891;)V method_31111 bootstrap + p 0 chunkGenerationSettingsRegisterable + m ()Lnet/minecraft/class_6686$class_6708; comp_478 surfaceRule + m ()Z comp_483 usesLegacyRandom + m (Lnet/minecraft/class_7891;)Lnet/minecraft/class_5284; method_30641 createNetherSettings + p 0 registerable + m (Lnet/minecraft/class_7891;)Lnet/minecraft/class_5284; method_39902 createFloatingIslandsSettings + p 0 registerable + m ()Ljava/util/List; comp_538 spawnTarget + m ()Lnet/minecraft/class_6953; comp_477 noiseRouter +c net/minecraft/class_5281 net/minecraft/world/StructureWorldAccess + m ()J method_8412 getSeed + m (Lnet/minecraft/class_2338;)Z method_37368 isValidForSetBlock + c {@return {@code true} if the given position is an accessible position\nfor the {@code setBlockState} function} + p 1 pos + m (Ljava/util/function/Supplier;)V method_36972 setCurrentlyGeneratingStructureName + p 1 structureName +c net/minecraft/class_5282 net/minecraft/advancement/criterion/PlayerGeneratesContainerLootCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_5321;)V method_27993 trigger + p 1 player + p 2 lootTable + m (Lnet/minecraft/class_5321;Lnet/minecraft/class_5282$class_5283;)Z method_27992 method_27992 + p 1 conditions +c net/minecraft/class_5282$class_5283 net/minecraft/advancement/criterion/PlayerGeneratesContainerLootCriterion$Conditions + f Ljava/util/Optional; comp_2029 player + f Lcom/mojang/serialization/Codec; field_47307 CODEC + f Lnet/minecraft/class_5321; comp_2074 lootTable + m (Lnet/minecraft/class_5321;)Z method_27996 test + p 1 lootTable + m (Lnet/minecraft/class_5321;)Lnet/minecraft/class_175; method_27995 create + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55060 method_55060 + p 0 instance + m (Ljava/util/Optional;Lnet/minecraft/class_5321;)V + p 1 playerPredicate + p 2 lootTable + m ()Lnet/minecraft/class_5321; comp_2074 lootTable +c net/minecraft/class_5289 net/minecraft/client/gui/screen/GameModeSwitcherScreen + f I field_32313 ICON_OFFSET + f I field_24571 lastMouseY + f I field_32312 BUTTON_SIZE + f I field_24570 lastMouseX + f I field_32311 TEXTURE_HEIGHT + f I field_32310 TEXTURE_WIDTH + f Lnet/minecraft/class_2960; field_24566 TEXTURE + f Lnet/minecraft/class_5289$class_5290; field_24569 gameMode + f Lnet/minecraft/class_5289$class_5290; field_24568 currentGameMode + f I field_24567 UI_WIDTH + f Lnet/minecraft/class_2960; field_45433 SELECTION_TEXTURE + f Lnet/minecraft/class_2960; field_45432 SLOT_TEXTURE + f Z field_24572 mouseUsedForSelection + f Ljava/util/List; field_24573 gameModeButtons + m ()V method_28068 apply + m (Lnet/minecraft/class_310;Lnet/minecraft/class_5289$class_5290;)V method_28064 apply + p 1 gameModeSelection + p 0 client + m ()Lnet/minecraft/class_1934; method_30106 getPreviousGameMode +c net/minecraft/class_5289$class_5291 net/minecraft/client/gui/screen/GameModeSwitcherScreen$ButtonWidget + f Lnet/minecraft/class_5289$class_5290; field_24586 gameMode + f Z field_24587 selected + m (Lnet/minecraft/class_332;)V method_28080 drawBackground + p 1 context + m (Z)V method_28083 setSelected + p 1 selected + m (Lnet/minecraft/class_332;)V method_28082 drawSelectionBox + p 1 context + m (Lnet/minecraft/class_5289$class_5290;II)V + p 3 y + p 2 x + p 1 gameMode +c net/minecraft/class_5289$class_5290 net/minecraft/client/gui/screen/GameModeSwitcherScreen$GameModeSelection + f Lnet/minecraft/class_2561; field_24581 text + f Lnet/minecraft/class_1799; field_24583 icon + f [Lnet/minecraft/class_5289$class_5290; field_24580 VALUES + f Lnet/minecraft/class_1934; field_60755 gameMode + f Lnet/minecraft/class_5289$class_5290; field_24576 CREATIVE + f Lnet/minecraft/class_5289$class_5290; field_24577 SURVIVAL + f Lnet/minecraft/class_5289$class_5290; field_24578 ADVENTURE + f Lnet/minecraft/class_5289$class_5290; field_24579 SPECTATOR + m ()Lnet/minecraft/class_5289$class_5290; method_28078 next + m (Lnet/minecraft/class_1934;)Lnet/minecraft/class_5289$class_5290; method_28076 of + p 0 gameMode + m (Ljava/lang/String;ILnet/minecraft/class_2561;Lnet/minecraft/class_1934;Lnet/minecraft/class_1799;)V + p 5 icon + p 4 gameMode + p 3 text + m (Lnet/minecraft/class_332;II)V method_28074 renderIcon + p 3 y + p 2 x + p 1 context +c net/minecraft/class_5298 net/minecraft/util/math/WordPackedArray + c A packed array of integers. Introduced in 20w17a to represent the old\nblock state storage format. + f I field_29862 BIT_TO_LONG_INDEX_SHIFT + f [J field_24641 array + f I field_24644 length + f I field_24642 unitSize + f J field_24643 maxValue + m ()[J method_28151 getAlignedArray + m (I)I method_28152 get + p 1 index + m (II[J)V + p 1 unitSize + p 2 length + p 3 array + m ()I method_28154 getUnitSize + m (II)V method_28153 set + p 2 value + p 1 index + m (II)V + p 2 length + c the length of values + p 1 unitSize + c the max number of bits a value can use +c net/minecraft/class_5293 net/minecraft/client/gui/screen/world/LevelScreenProvider + f Ljava/util/Map; field_37912 WORLD_PRESET_TO_SCREEN_PROVIDER + m (Lnet/minecraft/class_525;Lnet/minecraft/class_3232;)V method_41858 method_41858 + p 1 config + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_7193$class_7195; method_41861 createModifier + p 0 biomeEntry + m (Lnet/minecraft/class_3232;)Lnet/minecraft/class_7193$class_7195; method_41856 createModifier + p 0 config + m (Lnet/minecraft/class_525;Lnet/minecraft/class_7193;)Lnet/minecraft/class_437; method_41863 method_41863 + p 1 generatorOptionsHolder + p 0 parent + m (Lnet/minecraft/class_6880;Lnet/minecraft/class_5455$class_6890;Lnet/minecraft/class_7723;)Lnet/minecraft/class_7723; method_41862 method_41862 + p 2 dimensionsRegistryHolder + p 1 dynamicRegistryManager + m (Lnet/minecraft/class_525;Lnet/minecraft/class_7193;)Lnet/minecraft/class_437; createEditScreen createEditScreen + p 1 parent + p 2 generatorOptionsHolder + m (Lnet/minecraft/class_525;Lnet/minecraft/class_7193;)Lnet/minecraft/class_437; method_41859 method_41859 + p 0 parent + p 1 generatorOptionsHolder + m (Lnet/minecraft/class_3232;Lnet/minecraft/class_5455$class_6890;Lnet/minecraft/class_7723;)Lnet/minecraft/class_7723; method_41857 method_41857 + p 1 dynamicRegistryManager + p 2 dimensionsRegistryHolder + m (Lnet/minecraft/class_525;Lnet/minecraft/class_6880;)V method_41860 method_41860 + p 1 biomeEntry +c net/minecraft/class_5299 net/minecraft/datafixer/fix/StructureSeparationDataFix + f Ljava/lang/String; field_29919 SWAMP_HUT_STRUCTURE_ID + f Ljava/lang/String; field_29917 IGLOO_STRUCTURE_ID + f Lcom/google/common/collect/ImmutableMap; field_24647 STRUCTURE_SPACING + f Ljava/lang/String; field_29915 VILLAGE_STRUCTURE_ID + f Ljava/lang/String; field_29923 MONUMENT_STRUCTURE_ID + f Ljava/lang/String; field_29921 END_CITY_STRUCTURE_ID + f Ljava/lang/String; field_29918 JUNGLE_PYRAMID_STRUCTURE_ID + f Ljava/lang/String; field_29916 DESERT_PYRAMID_STRUCTURE_ID + f Ljava/lang/String; field_29922 MANSION_STRUCTURE_ID + f Ljava/lang/String; field_29920 PILLAGER_OUTPOST_STRUCTURE_ID + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_28270 method_28270 + p 0 worldGenSettingsTyped + m (Ljava/lang/String;I)I method_28279 parseInt + p 1 defaultValue + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Ljava/lang/String;)Ljava/lang/String; method_28278 method_28278 + p 0 generatorName + m (JLcom/mojang/serialization/DynamicLike;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28268 createGeneratorSettings + p 0 seed + p 2 worldGenSettingsDynamic + p 3 settingsDynamic + p 4 biomeSourceDynamic + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/OptionalDynamic;)Ljava/util/Map; method_28275 createFlatWorldStructureSettings + p 1 generatorOptionsDynamic + p 0 worldGenSettingsDynamicOps + m (Lcom/google/common/collect/ImmutableMap$Builder;Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;)V method_28269 method_28269 + p 2 legacyCustomOptions + m (Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;I)V method_28281 insertStructureSettings + p 2 spacingStr + p 1 structureId + p 3 minSpacing + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_28285 method_28285 + p 0 biomeDynamic + m (Lcom/mojang/serialization/Dynamic;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_28273 method_28273 + p 6 propertyName + p 7 spacing + m (Ljava/lang/String;II)I method_28280 parseInt + p 2 minValue + p 1 defaultValue + m (Lcom/mojang/serialization/Dynamic;JLcom/mojang/serialization/Dynamic;Z)Ljava/lang/Object; method_29917 createDimensionSettings + p 3 generatorSettingsDynamic + p 0 worldGenSettingsDynamic + p 1 seed + p 4 caves + m (Lcom/mojang/serialization/Dynamic;J)Lcom/mojang/serialization/Dynamic; method_29916 createDefaultOverworldGeneratorSettings + p 1 seed + p 0 worldGenSettingsDynamic + m (Lcom/mojang/serialization/Dynamic;JZZ)Lcom/mojang/serialization/Dynamic; method_28272 createBiomeSource + p 0 worldGenSettingsDynamic + p 1 seed + p 3 legacyBiomeInitLayer + p 4 largeBiomes + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28271 updateWorldGenSettings + p 0 worldGenSettingsDynamic + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_28283 method_28283 + p 5 oldStructureName +c net/minecraft/class_5299$class_5300 net/minecraft/datafixer/fix/StructureSeparationDataFix$Information + f Lcom/mojang/serialization/Codec; field_24648 CODEC + f I field_24649 spacing + f I field_24650 separation + f I field_24651 salt + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28289 method_28289 + p 0 instance + m (III)V + p 1 spacing + p 2 separation + p 3 salt +c net/minecraft/class_6595 net/minecraft/SaveVersion + c The version components of Minecraft that is used for identification in\nsave games. + f I comp_4038 id + f Ljava/lang/String; field_34768 MAIN_SERIES + c The default series of a version, {@code main}, if a series is not specified. + f Ljava/lang/String; comp_4039 series + m ()I comp_4038 id + c {@return the integer data version of this save version} + m ()Ljava/lang/String; comp_4039 series + c {@return the series of this version}\n\n

This is stored in the {@code Series} field within {@code level.dat}.\n\n

Known values include:

    \n
  • {@code main} for versions that are not experimental snapshots
  • \n
  • {@code ccpreview} for the 1.18 Caves and Cliffs experimental snapshots
  • \n
  • {@code deep_dark_preview} for 1.19 Deep Dark experimental snapshots
  • \n
+ m ()Z method_38490 isNotMainSeries + m (Lnet/minecraft/class_6595;)Z method_38493 isAvailableTo + c {@return whether this save version can be loaded by the {@code other} version} + p 1 other + m (ILjava/lang/String;)V + p 2 series + p 1 id +c net/minecraft/class_5263 net/minecraft/util/math/GravityField + c Represents a density field in an area. Consider visualizing it like real\nlife gravity's distortion of space. + f Ljava/util/List; field_24401 points + m (Lnet/minecraft/class_2338;D)V method_27831 addPoint + c Adds a point to the gravity field. + p 1 pos + p 2 mass + m (Lnet/minecraft/class_2338;D)D method_27832 calculate + c Calculate the gravity on a potential point at {@code pos} with {@code mass}. + p 1 pos + p 2 mass +c net/minecraft/class_5263$class_5264 net/minecraft/util/math/GravityField$Point + f D field_24403 mass + f Lnet/minecraft/class_2338; field_24402 pos + m (Lnet/minecraft/class_2338;)D method_27833 getGravityFactor + p 1 pos + m (Lnet/minecraft/class_2338;D)V + p 1 pos + p 2 mass +c net/minecraft/class_6599 net/minecraft/client/gui/screen/option/KeybindsScreen + f Lnet/minecraft/class_2561; field_49536 TITLE_TEXT + f J field_34800 lastKeyCodeUpdateTime + f Lnet/minecraft/class_4185; field_34802 resetAllButton + f Lnet/minecraft/class_304; field_34799 selectedKeyBinding + f Lnet/minecraft/class_459; field_34801 controlsList + m (Lnet/minecraft/class_4185;)V method_60342 method_60342 + p 1 button + m (Lnet/minecraft/class_4185;)V method_57748 method_57748 + p 1 button + m (Lnet/minecraft/class_437;Lnet/minecraft/class_315;)V + p 2 gameOptions + p 1 parent +c net/minecraft/class_5269 net/minecraft/world/MutableWorldProperties + m (Lnet/minecraft/class_5217$class_12064;)V method_187 setSpawnPoint + p 1 spawnPoint +c net/minecraft/class_6597 net/minecraft/client/render/ChunkBuilderMode + f I field_34792 id + f Ljava/util/function/IntFunction; field_64425 BY_ID + f Lcom/mojang/serialization/Codec; field_64424 CODEC + f Lnet/minecraft/class_2561; field_64426 text + f Lnet/minecraft/class_6597; field_34788 NONE + f Lnet/minecraft/class_6597; field_34789 PLAYER_AFFECTED + f Lnet/minecraft/class_6597; field_34790 NEARBY + m (Lnet/minecraft/class_6597;)Ljava/lang/Integer; method_76536 method_76536 + p 0 mode + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()Lnet/minecraft/class_2561; method_76535 getText +c net/minecraft/class_5268 net/minecraft/world/level/ServerWorldProperties + m (Z)V method_147 setThundering + p 1 thundering + m ()I method_18038 getWanderingTraderSpawnDelay + m ()Ljava/util/Optional; method_27422 getWorldBorder + m (Z)V method_223 setInitialized + p 1 initialized + m ()I method_18039 getWanderingTraderSpawnChance + m ()Z method_194 areCommandsAllowed + m ()Lnet/minecraft/class_1928; method_146 getGameRules + m (Lnet/minecraft/class_1934;)V method_193 setGameMode + p 1 gameMode + m ()Ljava/lang/String; method_150 getLevelName + m (I)V method_18042 setWanderingTraderSpawnChance + p 1 wanderingTraderSpawnChance + m ()I method_145 getThunderTime + m (J)V method_29034 setTime + p 1 time + m ()I method_155 getClearWeatherTime + m (Ljava/util/Optional;)V method_27415 setWorldBorder + p 1 worldBorder + m (J)V method_29035 setTimeOfDay + p 1 timeOfDay + m (I)V method_18041 setWanderingTraderSpawnDelay + p 1 wanderingTraderSpawnDelay + m (Ljava/util/UUID;)V method_18040 setWanderingTraderId + p 1 wanderingTraderId + m (I)V method_167 setClearWeatherTime + p 1 clearWeatherTime + m (I)V method_164 setRainTime + p 1 rainTime + m (I)V method_173 setThunderTime + p 1 thunderTime + m ()I method_190 getRainTime + m ()Lnet/minecraft/class_1934; method_210 getGameMode + m ()Ljava/util/UUID; method_35506 getWanderingTraderId + m ()Z method_222 isInitialized + m ()Lnet/minecraft/class_236; method_143 getScheduledEvents +c net/minecraft/class_5274 net/minecraft/entity/ai/goal/IronGolemWanderAroundGoal + f I field_30213 CHUNK_RANGE + f I field_30214 ENTITY_COLLISION_RANGE + f I field_30215 HORIZONTAL_RANGE + f I field_30216 VERTICAL_RANGE + m (Lnet/minecraft/class_4076;)Lnet/minecraft/class_2338; method_27923 findRandomPosInChunk + p 1 pos + m ()Lnet/minecraft/class_243; method_27927 findRandomBlockPos + m ()Lnet/minecraft/class_243; method_27926 findVillagerPos + m ()Lnet/minecraft/class_243; method_27925 findRandomInRange + m (Lnet/minecraft/class_3218;Lnet/minecraft/class_4076;)Z method_27924 method_27924 + p 1 sectionPos + m ()Lnet/minecraft/class_4076; method_27928 findRandomChunkPos + m (Lnet/minecraft/class_1646;)Z method_27922 canVillagerSummonGolem + p 1 villager +c net/minecraft/class_5273 net/minecraft/datafixer/fix/VillagerFollowRangeFix + f D field_29913 NEW_RANGE + f D field_29912 OLD_RANGE + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_27914 fix + p 0 villagerDynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28263 method_28263 + p 1 attributesDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28264 method_28264 + p 0 attributeDynamic +c net/minecraft/class_5275 net/minecraft/entity/Dismounting + m (Lnet/minecraft/class_2338;ILjava/util/function/Function;)D method_30343 getCeilingHeight + p 2 collisionShapeGetter + p 1 maxDistance + p 0 pos + m (D)Z method_27932 canDismountInBlock + p 0 height + m (Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265; method_30341 getCollisionShape + p 1 pos + p 0 world + m (Lnet/minecraft/class_1299;Lnet/minecraft/class_1941;Lnet/minecraft/class_2338;Z)Lnet/minecraft/class_243; method_30769 findRespawnPos + p 1 world + p 0 entityType + p 3 ignoreInvalidPos + p 2 pos + m (Lnet/minecraft/class_1941;Lnet/minecraft/class_243;Lnet/minecraft/class_1309;Lnet/minecraft/class_4050;)Z method_33353 canPlaceEntityAt + p 3 pose + p 1 offset + p 2 entity + p 0 world + m (Lnet/minecraft/class_1941;Lnet/minecraft/class_1309;Lnet/minecraft/class_238;)Z method_27933 canPlaceEntityAt + p 0 world + p 2 targetBox + p 1 entity + m (Lnet/minecraft/class_2350;)[[I method_27934 getDismountOffsets + p 0 movementDirection +c net/minecraft/class_5277 net/minecraft/datafixer/fix/EntityShulkerRotationFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_27960 fixRotation + p 1 shulkerDynamic + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/Double; method_27961 method_27961 + p 0 rotationDynamic + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/class_5279 net/minecraft/advancement/criterion/ThrownItemPickedUpByEntityCriterion + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1799;Lnet/minecraft/class_1297;)V method_27975 trigger + p 2 stack + p 3 entity + p 1 player + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1799;Lnet/minecraft/class_47;Lnet/minecraft/class_5279$class_5280;)Z method_27976 method_27976 + p 3 conditions +c net/minecraft/class_5279$class_5280 net/minecraft/advancement/criterion/ThrownItemPickedUpByEntityCriterion$Conditions + f Lcom/mojang/serialization/Codec; field_47316 CODEC + f Ljava/util/Optional; comp_2029 player + f Ljava/util/Optional; comp_2076 entity + f Ljava/util/Optional; comp_2075 item + m (Lnet/minecraft/class_5258;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/class_175; method_27978 createThrownItemPickedUpByEntity + p 2 entity + p 0 player + p 1 item + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/class_175; method_43277 createThrownItemPickedUpByPlayer + p 1 item + p 2 entity + p 0 playerPredicate + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 playerPredicate + p 2 item + p 3 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55068 method_55068 + p 0 instance + m (Lnet/minecraft/class_3222;Lnet/minecraft/class_1799;Lnet/minecraft/class_47;)Z method_27979 test + p 1 player + p 2 stack + p 3 entity + m ()Ljava/util/Optional; comp_2075 item + m ()Ljava/util/Optional; comp_2076 entity +c net/minecraft/class_6574 net/minecraft/util/math/random/RandomSplitter + c A random splitter represents necessary bits from a random that can be\ncombined with other seeds to split a new random from the old one. + m (III)Lnet/minecraft/class_5819; method_38418 split + p 3 z + p 1 x + p 2 y + m (Ljava/lang/String;)Lnet/minecraft/class_5819; method_38995 split + p 1 seed + m (Ljava/lang/StringBuilder;)V method_39039 addDebugInfo + p 1 info + m (Lnet/minecraft/class_2960;)Lnet/minecraft/class_5819; method_39000 split + p 1 seed + m (Lnet/minecraft/class_2338;)Lnet/minecraft/class_5819; method_38419 split + p 1 pos + m (J)Lnet/minecraft/class_5819; method_60628 split + p 1 seed +c net/minecraft/class_5242 net/minecraft/command/argument/UuidArgumentType + f Ljava/util/Collection; field_24319 EXAMPLES + f Ljava/util/regex/Pattern; field_24320 VALID_CHARACTERS + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; field_24318 INVALID_UUID + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/UUID; method_27645 getUuid + p 0 context + p 1 name + m ()Lnet/minecraft/class_5242; method_27643 uuid + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parse parse + p 1 reader + m (Lcom/mojang/brigadier/StringReader;)Ljava/util/UUID; method_27644 parse +c net/minecraft/class_6579 net/minecraft/world/gen/stateprovider/AbstractNoiseBlockStateProvider + f Lnet/minecraft/class_5216$class_5487; field_34708 noiseParameters + f F field_34709 scale + f J field_34707 seed + f Lnet/minecraft/class_5216; field_34710 noiseSampler + m (Lnet/minecraft/class_2338;D)D method_38441 getNoiseValue + p 1 pos + p 2 scale + m (JLnet/minecraft/class_5216$class_5487;F)V + p 1 seed + p 4 scale + p 3 noiseParameters + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P3; method_38439 fillCodecFields + p 0 instance +c net/minecraft/class_6577 net/minecraft/world/gen/feature/DiskFeatureConfig + f Lcom/mojang/serialization/Codec; field_34698 CODEC + f I comp_82 halfHeight + f Lnet/minecraft/class_6017; comp_81 radius + f Lnet/minecraft/class_6646; comp_716 target + f Lnet/minecraft/class_7400; comp_715 stateProvider + m ()I comp_82 halfHeight + m ()Lnet/minecraft/class_6017; comp_81 radius + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43294 method_43294 + p 0 instance + m ()Lnet/minecraft/class_7400; comp_715 stateProvider + m ()Lnet/minecraft/class_6646; comp_716 target + m (Lnet/minecraft/class_7400;Lnet/minecraft/class_6646;Lnet/minecraft/class_6017;I)V + p 1 stateProvider + p 2 target + p 3 radius + p 4 halfHeight +c net/minecraft/class_6578 net/minecraft/world/gen/stateprovider/DualNoiseBlockStateProvider + f Lnet/minecraft/class_5216; field_34706 slowNoiseSampler + f F field_34705 slowScale + f Lcom/mojang/serialization/MapCodec; field_34702 DUAL_CODEC + f Lnet/minecraft/class_6497; field_34703 variety + f Lnet/minecraft/class_5216$class_5487; field_34704 slowNoiseParameters + m (Lnet/minecraft/class_2338;)D method_38435 getSlowNoiseValue + p 1 pos + m (Lnet/minecraft/class_6497;Lnet/minecraft/class_5216$class_5487;FJLnet/minecraft/class_5216$class_5487;FLjava/util/List;)V + p 3 slowScale + p 2 slowNoiseParameters + p 1 variety + p 7 scale + p 6 noiseParameters + p 4 seed + p 8 states +c net/minecraft/class_5244 net/minecraft/screen/ScreenTexts + f Lnet/minecraft/class_2561; field_33850 SENTENCE_SEPARATOR + f Lnet/minecraft/class_2561; field_41874 SPACE + f Lnet/minecraft/class_2561; field_24339 BACK + f Lnet/minecraft/class_2561; field_44968 OPEN_LINK + f Lnet/minecraft/class_2561; field_44914 OK + f Lnet/minecraft/class_2561; field_24337 NO + f Lnet/minecraft/class_2561; field_24335 CANCEL + f Lnet/minecraft/class_2561; field_39678 ELLIPSIS + f Lnet/minecraft/class_2561; field_24334 DONE + f Lnet/minecraft/class_2561; field_24332 ON + f Lnet/minecraft/class_2561; field_26625 CONNECT_FAILED + f Lnet/minecraft/class_2561; field_62056 COPY + f Lnet/minecraft/class_2561; field_60825 RETURN_TO_MENU + f Lnet/minecraft/class_2561; field_41873 CONTINUE + f Lnet/minecraft/class_2561; field_44969 COPY_LINK_TO_CLIPBOARD + f Lnet/minecraft/class_2561; field_24338 PROCEED + f Lnet/minecraft/class_2561; field_39742 ACKNOWLEDGE + f Lnet/minecraft/class_2561; field_39003 EMPTY + f Lnet/minecraft/class_2561; field_45692 DISCONNECT + f Lnet/minecraft/class_2561; field_24336 YES + f Lnet/minecraft/class_2561; field_33849 LINE_BREAK + f Lnet/minecraft/class_2561; field_48539 CONNECT_FAILED_TRANSFER + f Lnet/minecraft/class_2561; field_24333 OFF + f Lnet/minecraft/class_2561; field_43109 TO_TITLE + m (J)Lnet/minecraft/class_5250; method_44683 hours + p 0 hours + m (Lnet/minecraft/class_2561;Z)Lnet/minecraft/class_5250; method_30619 composeToggleText + p 0 text + p 1 value + m (Ljava/util/Collection;)Lnet/minecraft/class_2561; method_37109 joinLines + p 0 texts + m ([Lnet/minecraft/class_2561;)Lnet/minecraft/class_5250; method_37111 joinSentences + p 0 sentences + m ()Lnet/minecraft/class_5250; method_48320 space + m ([Lnet/minecraft/class_2561;)Lnet/minecraft/class_2561; method_37110 joinLines + p 0 texts + m (Z)Lnet/minecraft/class_2561; method_71951 returnToMenuOrDisconnect + p 0 singleplayer + m (J)Lnet/minecraft/class_5250; method_44682 days + p 0 days + m (J)Lnet/minecraft/class_5250; method_44684 minutes + p 0 minutes + m (Z)Lnet/minecraft/class_2561; method_36134 onOrOff + p 0 on + m (Lnet/minecraft/class_2561;Lnet/minecraft/class_2561;)Lnet/minecraft/class_5250; method_32700 composeGenericOptionText + p 0 text + p 1 value +c net/minecraft/class_6575 net/minecraft/util/math/random/LocalRandom + c A local random, not intended to be shared across threads. + f J field_34693 seed + f J field_34692 INCREMENT + f J field_34691 MULTIPLIER + f J field_34690 SEED_MASK + f I field_34689 INT_BITS + f Lnet/minecraft/class_6672; field_35136 gaussianGenerator + m (J)V + p 1 seed +c net/minecraft/class_6584 net/minecraft/world/gen/placementmodifier/SurfaceThresholdFilterPlacementModifier + f Lnet/minecraft/class_2902$class_2903; field_34722 heightmap + f I field_34724 max + f Lcom/mojang/serialization/MapCodec; field_34721 MODIFIER_CODEC + f I field_34723 min + m (Lnet/minecraft/class_6584;)Ljava/lang/Integer; method_38457 method_38457 + p 0 placementModifier + m (Lnet/minecraft/class_2902$class_2903;II)Lnet/minecraft/class_6584; method_39661 of + p 2 max + p 0 heightmap + p 1 min + m (Lnet/minecraft/class_2902$class_2903;II)V + p 1 heightmap + p 3 max + p 2 min + m (Lnet/minecraft/class_6584;)Lnet/minecraft/class_2902$class_2903; method_38459 method_38459 + p 0 placementModifier + m (Lnet/minecraft/class_6584;)Ljava/lang/Integer; method_38458 method_38458 + p 0 placementModifier + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38456 method_38456 + p 0 instance +c net/minecraft/class_5252 net/minecraft/server/command/AttributeCommand + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; field_24379 MODIFIER_ALREADY_PRESENT_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; field_24378 NO_MODIFIER_EXCEPTION + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; field_24376 ENTITY_FAILED_EXCEPTION + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; field_24377 NO_ATTRIBUTE_EXCEPTION + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27756 method_27756 + p 0 context + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;)Lnet/minecraft/class_1309; method_27746 getLivingEntityWithAttribute + p 0 entity + p 1 attribute + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27754 method_27754 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27752 method_27752 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;D)I method_27739 executeValueGet + p 1 target + p 0 source + p 3 multiplier + p 2 attribute + m (Lcom/mojang/brigadier/context/CommandContext;)I method_65094 method_65094 + p 0 context + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;)Ljava/util/stream/Stream; method_65093 streamModifiers + p 0 target + p 1 attribute + m (Lnet/minecraft/class_6880;)Lnet/minecraft/class_2561; method_45144 getName + p 0 attribute + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_65088 method_65088 + p 1 builder + p 0 context + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/class_7157;)V method_27735 register + p 0 dispatcher + p 1 registryAccess + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27759 method_27759 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_65092 method_65092 + p 1 builder + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27757 method_27757 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27755 method_27755 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;Lnet/minecraft/class_2960;)I method_27740 executeModifierRemove + p 3 id + p 2 attribute + p 1 target + p 0 source + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;D)I method_27748 executeBaseValueGet + p 2 attribute + p 3 multiplier + p 0 source + p 1 target + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;)I method_65089 executeResetToBaseValue + p 1 target + p 0 source + p 2 attribute + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27753 method_27753 + p 0 context + m (Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;)Lnet/minecraft/class_1324; method_27734 getAttributeInstance + p 1 attribute + p 0 entity + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_27743 method_27743 + p 0 name + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;Lnet/minecraft/class_2960;D)I method_27741 executeModifierValueGet + p 4 multiplier + p 3 id + p 2 attribute + p 1 target + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_65095 method_65095 + p 0 context + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;Lnet/minecraft/class_2960;DLnet/minecraft/class_1322$class_1323;)I method_27742 executeModifierAdd + p 6 operation + p 4 value + p 3 id + p 2 attribute + p 1 target + p 0 source + m (Lnet/minecraft/class_1297;)Lnet/minecraft/class_1309; method_27733 getLivingEntity + p 0 entity + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_27744 method_27744 + p 1 attributeName + p 0 entityName + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_27749 method_27749 + p 1 attributeName + p 2 uuid + p 0 entityName + m (Lnet/minecraft/class_2168;Lnet/minecraft/class_1297;Lnet/minecraft/class_6880;D)I method_27751 executeBaseValueSet + p 2 attribute + p 3 value + p 0 source + p 1 target + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27736 method_27736 + p 0 context + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_27745 method_27745 + p 1 attributeName + p 2 uuid + p 0 entityName + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27758 method_27758 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_65091 method_65091 + p 0 context +c net/minecraft/class_5251 net/minecraft/text/TextColor + c Represents an RGB color of a {@link Text}.\n\n

This is immutable, and part of a {@link Style}.\n\n@see Style + f Ljava/lang/String; field_24365 name + f Ljava/lang/String; field_33291 RGB_PREFIX + f I field_24364 rgb + f Ljava/util/Map; field_24362 FORMATTING_TO_COLOR + f Ljava/util/Map; field_24363 BY_NAME + f Lcom/mojang/serialization/Codec; field_39242 CODEC + m (Lnet/minecraft/class_124;)Lnet/minecraft/class_5251; method_27718 fromFormatting + c Obtains a text color from a formatting. + p 0 formatting + c the formatting + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Lnet/minecraft/class_124;)Lnet/minecraft/class_5251; method_27722 method_27722 + p 0 formatting + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_27719 parse + c Parses a color by its name. + p 0 name + c the name + m (I)Lnet/minecraft/class_5251; method_27717 fromRgb + c Obtains a text color from an RGB value. + p 0 rgb + c the RGB color + m (I)V + p 1 rgb + m (ILjava/lang/String;)V + p 1 rgb + p 2 name + m ()I method_27716 getRgb + c Gets the RGB value of this color.\n\n

The red bits can be obtained by {@code (rgb >> 16) & 0xFF}, green bits\nby {@code (rgb >> 8) & 0xFF}, blue bits by {@code rgb & 0xFF}. + m (Lnet/minecraft/class_5251;)Ljava/lang/String; method_27720 method_27720 + p 0 textColor + m ()Ljava/lang/String; method_27721 getName + c Gets the name of this color, used for converting the color to JSON format. + m ()Ljava/lang/String; method_27723 getHexCode +c net/minecraft/class_6582 net/minecraft/world/gen/ChainedBlockSource + f [Lnet/minecraft/class_6568$class_6569; comp_437 samplers + m ()[Lnet/minecraft/class_6568$class_6569; comp_437 samplers + m ([Lnet/minecraft/class_6568$class_6569;)V + p 1 samplers +c net/minecraft/class_6583 net/minecraft/world/gen/BlockSource + m (Lnet/minecraft/class_6568;III)Lnet/minecraft/class_2680; method_40553 apply + p 3 y + p 2 x + p 1 sampler + p 4 z +c net/minecraft/class_6580 net/minecraft/world/gen/stateprovider/NoiseBlockStateProvider + f Lcom/mojang/serialization/MapCodec; field_34711 CODEC + f Ljava/util/List; field_34712 states + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P4; method_38447 fillNoiseCodecFields + p 0 instance + m (Ljava/util/List;D)Lnet/minecraft/class_2680; method_38445 getStateAtValue + p 2 value + p 1 states + m (JLnet/minecraft/class_5216$class_5487;FLjava/util/List;)V + p 4 scale + p 5 states + p 1 seed + p 3 noiseParameters + m (Ljava/util/List;Lnet/minecraft/class_2338;D)Lnet/minecraft/class_2680; method_38446 getStateFromList + p 1 states + p 2 pos + p 3 scale +c net/minecraft/class_6581 net/minecraft/world/gen/stateprovider/NoiseThresholdBlockStateProvider + f F field_34715 highChance + f F field_34714 threshold + f Lcom/mojang/serialization/MapCodec; field_34713 CODEC + f Ljava/util/List; field_34717 lowStates + f Ljava/util/List; field_34718 highStates + f Lnet/minecraft/class_2680; field_34716 defaultState + m (JLnet/minecraft/class_5216$class_5487;FFFLnet/minecraft/class_2680;Ljava/util/List;Ljava/util/List;)V + p 1 seed + p 3 noiseParameters + p 4 scale + p 5 threshold + p 6 highChance + p 7 defaultState + p 8 lowStates + p 9 highStates +c net/minecraft/class_5250 net/minecraft/text/MutableText + c The text implementation, with mutation operations. + f Ljava/util/List; field_39006 siblings + f Lnet/minecraft/class_7417; field_39005 content + f Lnet/minecraft/class_5481; field_39008 ordered + f Lnet/minecraft/class_2583; field_39007 style + f Lnet/minecraft/class_2477; field_39009 language + m (Lnet/minecraft/class_2561;)Lnet/minecraft/class_5250; method_10852 append + c Appends a text to this text's siblings. + p 1 text + c the sibling + m (Lnet/minecraft/class_2583;)Lnet/minecraft/class_5250; method_10862 setStyle + c Sets the style of this text. + p 1 style + m (I)Lnet/minecraft/class_5250; method_54663 withColor + c {@return the text with the RGB color {@code color}} + p 1 color + m (Lnet/minecraft/class_7417;Ljava/util/List;Lnet/minecraft/class_2583;)V + p 2 siblings + p 1 content + p 3 style + m (Ljava/lang/Object;)Z equals equals + p 1 o + m (Ljava/lang/String;)Lnet/minecraft/class_5250; method_27693 append + c Appends a literal text with content {@code text} to this text's siblings. + p 1 text + m (Lnet/minecraft/class_7417;)Lnet/minecraft/class_5250; method_43477 of + c Creates a piece of mutable text with the given content, with no sibling\nand style. + p 0 content + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/class_5250; method_27694 styled + c Updates the style of this text.\n\n@see Text#getStyle()\n@see #setStyle(Style) + p 1 styleUpdater + c the style updater + m ()Lnet/minecraft/class_5250; method_75860 withoutShadow + m (Lnet/minecraft/class_124;)Lnet/minecraft/class_5250; method_27692 formatted + c Add a formatting to this text's style. + p 1 formatting + c a formatting + m (Lnet/minecraft/class_2583;)Lnet/minecraft/class_5250; method_27696 fillStyle + c Fills the absent parts of this text's style with definitions from {@code\nstyleOverride}.\n\n@see Style#withParent(Style) + p 1 styleOverride + c the style that provides definitions for absent definitions in this text's style + m ([Lnet/minecraft/class_124;)Lnet/minecraft/class_5250; method_27695 formatted + c Adds some formattings to this text's style. + p 1 formattings + c an array of formattings +c net/minecraft/class_5256 net/minecraft/datafixer/fix/StriderGravityFix + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_27789 updateNoGravityNbt + p 1 striderDynamic +c net/minecraft/class_5255 net/minecraft/datafixer/fix/RedstoneConnectionsFix + m (Ljava/lang/String;)Z method_27780 hasObsoleteValue + p 0 value + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28253 method_28253 + p 1 eastDynamic + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28252 method_28252 + p 1 westDynamic + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28251 method_28251 + p 1 northDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28250 method_28250 + p 0 propertiesDynamic + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27779 method_27779 + p 1 blockStateTyped + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28249 method_28249 + p 1 southDynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_27778 updateBlockState + p 1 blockStateDynamic +c net/minecraft/class_5258 net/minecraft/predicate/entity/LootContextPredicate + c A list of loot conditions applied to entities. All conditions must match for this\nunified conditions to {@linkplain #test match}. Mainly used by advancements. + f Lcom/mojang/serialization/Codec; field_47234 CODEC + f Ljava/util/function/Predicate; field_24390 combinedCondition + f Ljava/util/List; field_24389 conditions + m (Lnet/minecraft/class_47;)Z method_27806 test + p 1 context + m (Lnet/minecraft/class_5258;)Ljava/util/List; method_54958 method_54958 + p 0 lootContextPredicate + m ([Lnet/minecraft/class_5341;)Lnet/minecraft/class_5258; method_27973 create + p 0 conditions + m (Ljava/util/List;)V + p 1 conditions + m (Lnet/minecraft/class_58;)V method_54959 validateConditions + p 1 reporter +c com/mojang/blaze3d/systems/RenderSystem com/mojang/blaze3d/systems/RenderSystem + m (Lcom/mojang/blaze3d/vertex/VertexFormat$class_5596;)Lcom/mojang/blaze3d/systems/RenderSystem$class_5590; getSequentialBuffer getSequentialBuffer + p 0 drawMode + m (Ljava/lang/Runnable;)V queueFencedTask queueFencedTask + p 0 task + m (Lorg/lwjgl/glfw/GLFWErrorCallbackI;)V setErrorCallback setErrorCallback + p 0 callback + m (Lit/unimi/dsi/fastutil/ints/IntConsumer;I)V lambda$static$1 lambda$static$1 + p 0 indexConsumer + p 1 firstVertexIndex + m (Lcom/mojang/blaze3d/buffers/GpuBuffer;)V setGlobalSettingsUniform setGlobalSettingsUniform + p 0 globalSettingsUniform + m (Lnet/minecraft/class_1041;Lnet/minecraft/class_10219;)V flipFrame flipFrame + p 1 capturer + p 0 window + m (JIZLnet/minecraft/class_12289;Z)V initRenderer initRenderer + p 0 windowHandle + p 3 sync + p 2 debugVerbosity + p 5 renderDebugLabels + m (I)V limitDisplayFPS limitDisplayFPS + p 0 fps + m (Lit/unimi/dsi/fastutil/ints/IntConsumer;I)V lambda$static$0 lambda$static$0 + p 0 indexConsumer + p 1 firstVertexIndex + m (Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V setShaderFog setShaderFog + p 0 shaderFog + m (Lcom/mojang/blaze3d/buffers/GpuBufferSlice;)V setShaderLights setShaderLights + p 0 shaderLightDirections + m (Lcom/mojang/blaze3d/systems/RenderPass;)V bindDefaultUniforms bindDefaultUniforms + p 0 pass + m (Lcom/mojang/blaze3d/buffers/GpuBufferSlice;Lnet/minecraft/class_10366;)V setProjectionMatrix setProjectionMatrix + p 0 projectionMatrixBuffer + p 1 projectionType +c com/mojang/blaze3d/systems/RenderSystem$class_10827 com/mojang/blaze3d/systems/RenderSystem$Task + f Lcom/mojang/blaze3d/buffers/GpuFence; comp_3786 fence + f Ljava/lang/Runnable; comp_3785 callback + m ()Lcom/mojang/blaze3d/buffers/GpuFence; comp_3786 fence + m ()Ljava/lang/Runnable; comp_3785 callback + m (Ljava/lang/Runnable;Lcom/mojang/blaze3d/buffers/GpuFence;)V + p 1 callback + p 2 fence +c com/mojang/blaze3d/systems/RenderSystem$class_5590 com/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer + c An index buffer that holds a pre-made indices for a specific shape. If\nthis buffer is not large enough for the required number of indices when\nthis buffer is bound, it automatically grows and fills indices using a\ngiven {@code triangulator}. + f Lcom/mojang/blaze3d/buffers/GpuBuffer; field_54299 indexBuffer + f Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595; field_27336 indexType + f I field_27337 size + f Lcom/mojang/blaze3d/systems/RenderSystem$class_5590$class_5591; field_27334 triangulator + f I field_27332 vertexCountInShape + f I field_27333 vertexCountInTriangulated + m (I)V method_31920 grow + p 1 requiredSize + m (Ljava/nio/ByteBuffer;)Lit/unimi/dsi/fastutil/ints/IntConsumer; method_31922 getIndexConsumer + p 1 indexBuffer + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$class_5595; method_31924 getIndexType + m (I)Z method_43409 isLargeEnough + p 1 requiredSize + m (Ljava/nio/ByteBuffer;I)V method_31923 method_31923 + p 1 index + m (IILcom/mojang/blaze3d/systems/RenderSystem$class_5590$class_5591;)V + p 1 vertexCountInShape + c the number of vertices in a shape + p 2 vertexCountInTriangulated + c the number of vertices in the triangles decomposed from the shape + p 3 triangulator + c a function that decomposes a shape into triangles + m (I)Lcom/mojang/blaze3d/buffers/GpuBuffer; method_68274 getIndexBuffer + p 1 requiredSize +c com/mojang/blaze3d/systems/RenderSystem$class_5590$class_5591 com/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer$Triangulator + c A functional interface that decomposes a shape into triangles.\n\n

The input shape is represented by the index of the first vertex in\nthe shape. An output triangle is represented by the indices of the\nvertices in the triangle.\n\n@see Polygon triangulation - Wikipedia + m (Lit/unimi/dsi/fastutil/ints/IntConsumer;I)V accept accept + c Decomposes a shape into triangles. + p 1 indexConsumer + c the consumer that accepts triangles + p 2 firstVertexIndex + c the index of the first vertex in the input shape +c net/minecraft/class_12152$class_12153 net/minecraft/client/render/entity/state/Lancing$class_12153 + f F comp_5056 raiseProgress + f F comp_5058 raiseProgressMiddle + f F comp_5057 raiseProgressStart + f F comp_5059 raiseProgressEnd + f F comp_5060 swayProgress + f F comp_5062 raiseBackProgress + f F comp_5061 lowerProgress + f F comp_5064 swayScaleSlow + f F comp_5063 swayIntensity + f F comp_5065 swayScaleFast + m ()F comp_5057 raiseProgressStart + m ()F comp_5056 raiseProgress + m ()F comp_5059 raiseProgressEnd + m ()F comp_5058 raiseProgressMiddle + m ()F comp_5065 swayScaleFast + m ()F comp_5064 swayScaleSlow + m ()F comp_5061 lowerProgress + m ()F comp_5060 swayProgress + m ()F comp_5063 swayIntensity + m ()F comp_5062 raiseBackProgress + m (FFFFFFFFFF)V + p 1 raiseProgress + p 2 raiseProgressStart + p 3 raiseProgressMiddle + p 4 raiseProgressEnd + p 5 swayProgress + p 6 lowerProgress + p 7 raiseBackProgress + p 8 swayIntensity + p 9 swayScaleSlow + p 10 swayScaleFast +c net/minecraft/class_10680$class_10681 net/minecraft/datafixer/fix/ThrownPotionSplitFix$class_10681 + f Lcom/mojang/datafixers/OpticFinder; comp_3558 itemFinder + f Lcom/mojang/datafixers/OpticFinder; comp_3559 itemIdFinder + m ()Lcom/mojang/datafixers/OpticFinder; comp_3558 itemFinder + m ()Lcom/mojang/datafixers/OpticFinder; comp_3559 itemIdFinder + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;)V + p 1 itemFinder + p 2 itemIdFinder +c net/minecraft/class_801$class_12295 net/minecraft/client/render/model/json/GeneratedItemModel$class_12295 + f I comp_5190 x + f I comp_5191 y + f Lnet/minecraft/class_801$class_803; comp_5189 facing + m ()Lnet/minecraft/class_801$class_803; comp_5189 facing + m ()I comp_5191 y + m ()I comp_5190 x + m (Lnet/minecraft/class_801$class_803;II)V + p 1 facing + p 2 x + p 3 y +c com/mojang/blaze3d/pipeline/RenderPipeline$Snippet com/mojang/blaze3d/pipeline/RenderPipeline$Snippet + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 vertexShader + p 2 fragmentShader + p 3 shaderDefines + p 4 samplers + p 5 uniforms + p 6 blendFunction + p 7 depthTestFunction + p 8 polygonMode + p 9 cull + p 10 writeColor + p 11 writeAlpha + p 12 writeDepth + p 13 colorLogic + p 14 vertexFormat + p 15 vertexFormatMode diff --git a/Farming/canaplia/settings.gradle b/Farming/canaplia/settings.gradle new file mode 100644 index 0000000..9087984 --- /dev/null +++ b/Farming/canaplia/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "canaplia" diff --git a/Farming/canaplia/src/client/java/io/github/koka/canaplia/CanapliaClient.java b/Farming/canaplia/src/client/java/io/github/koka/canaplia/CanapliaClient.java new file mode 100644 index 0000000..9cf6452 --- /dev/null +++ b/Farming/canaplia/src/client/java/io/github/koka/canaplia/CanapliaClient.java @@ -0,0 +1,25 @@ +package io.github.koka.canaplia; + +import io.github.koka.canaplia.effect.HempVisualStateStore; +import io.github.koka.canaplia.effect.network.HempBadTripPayload; +import io.github.koka.canaplia.effect.network.HempVisualClearPayload; +import io.github.koka.canaplia.effect.network.HempVisualSyncPayload; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; + +public final class CanapliaClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + ClientPlayNetworking.registerGlobalReceiver(HempVisualSyncPayload.ID, (payload, context) -> + HempVisualStateStore.applyNormal(payload.profile(), payload.remainingTicks()) + ); + ClientPlayNetworking.registerGlobalReceiver(HempBadTripPayload.ID, (payload, context) -> + HempVisualStateStore.applyBadTrip(payload.profile(), payload.remainingTicks()) + ); + ClientPlayNetworking.registerGlobalReceiver(HempVisualClearPayload.ID, (payload, context) -> HempVisualStateStore.clear()); + ClientTickEvents.END_CLIENT_TICK.register(client -> HempVisualStateStore.tick()); + ClientPlayConnectionEvents.DISCONNECT.register((handler, client) -> HempVisualStateStore.clear()); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/CanapliaMod.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/CanapliaMod.java new file mode 100644 index 0000000..2ad3b1a --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/CanapliaMod.java @@ -0,0 +1,35 @@ +package io.github.koka.canaplia; + +import io.github.koka.canaplia.block.CanapliaBlocks; +import io.github.koka.canaplia.block.entity.CanapliaBlockEntityTypes; +import io.github.koka.canaplia.compost.HempBudComposterInteraction; +import io.github.koka.canaplia.effect.HempEffectCatalog; +import io.github.koka.canaplia.effect.HempEffectController; +import io.github.koka.canaplia.item.CanapliaItems; +import io.github.koka.canaplia.survival.CanapliaSurvivalObtainment; +import net.fabricmc.api.ModInitializer; +import net.minecraft.resources.Identifier; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class CanapliaMod implements ModInitializer { + public static final String MOD_ID = "canaplia"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + public static Identifier id(String path) { + return Identifier.fromNamespaceAndPath(MOD_ID, path); + } + + @Override + public void onInitialize() { + HempEffectCatalog.getDefault(); + CanapliaBlocks.register(); + CanapliaBlockEntityTypes.register(); + CanapliaItems.register(); + HempEffectController.register(); + CanapliaSurvivalObtainment.register(); + HempBudComposterInteraction.register(); + + LOGGER.info("Initialized {}", MOD_ID); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/CanapliaBlocks.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/CanapliaBlocks.java new file mode 100644 index 0000000..9d507b6 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/CanapliaBlocks.java @@ -0,0 +1,61 @@ +package io.github.koka.canaplia.block; + +import io.github.koka.canaplia.CanapliaMod; +import io.github.koka.canaplia.hemp.HempVariant; +import net.minecraft.world.level.block.state.BlockBehaviour; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.material.PushReaction; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.core.Registry; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.level.block.SoundType; + +public final class CanapliaBlocks { + public static final ResourceKey HEMP_CROP_KEY = ResourceKey.create(Registries.BLOCK, CanapliaMod.id("hemp_crop")); + public static final ResourceKey HEMP_TOP_KEY = ResourceKey.create(Registries.BLOCK, CanapliaMod.id("hemp_top")); + public static final ResourceKey RESIN_BLOCK_KEY = ResourceKey.create(Registries.BLOCK, CanapliaMod.id("resin_block")); + + public static final HempCropBlock HEMP_CROP = new HempCropBlock( + BlockBehaviour.Properties.of() + .noCollision() + .noOcclusion() + .randomTicks() + .instabreak() + .sound(SoundType.CROP) + .pushReaction(PushReaction.DESTROY) + .setId(HEMP_CROP_KEY) + ); + + public static final HempTopBlock HEMP_TOP = new HempTopBlock( + BlockBehaviour.Properties.of() + .noCollision() + .noOcclusion() + .instabreak() + .sound(SoundType.CROP) + .pushReaction(PushReaction.DESTROY) + .setId(HEMP_TOP_KEY) + ); + + public static final ResinBlock RESIN_BLOCK = new ResinBlock( + BlockBehaviour.Properties.of() + .strength(0.8F) + .sound(SoundType.MUD) + .lightLevel(state -> state.getValue(ResinBlock.LIT) ? 10 : 0) + .setId(RESIN_BLOCK_KEY) + ); + + private CanapliaBlocks() { + } + + public static void register() { + Registry.register(BuiltInRegistries.BLOCK, HEMP_CROP_KEY, HEMP_CROP); + Registry.register(BuiltInRegistries.BLOCK, HEMP_TOP_KEY, HEMP_TOP); + Registry.register(BuiltInRegistries.BLOCK, RESIN_BLOCK_KEY, RESIN_BLOCK); + } + + public static BlockState resinState(HempVariant variant) { + return RESIN_BLOCK.defaultBlockState().setValue(ResinBlock.VARIANT, variant).setValue(ResinBlock.LIT, false); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/HempCropBlock.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/HempCropBlock.java new file mode 100644 index 0000000..76cbeed --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/HempCropBlock.java @@ -0,0 +1,165 @@ +package io.github.koka.canaplia.block; + +import com.mojang.serialization.MapCodec; +import io.github.koka.canaplia.hemp.HempVariant; +import io.github.koka.canaplia.item.CanapliaItems; +import net.minecraft.world.level.block.state.BlockBehaviour; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.CropBlock; +import net.minecraft.world.phys.shapes.CollisionContext; +import net.minecraft.world.level.pathfinder.PathComputationType; +import net.minecraft.world.level.ItemLike; +import net.minecraft.world.item.ItemStack; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.level.block.state.properties.BooleanProperty; +import net.minecraft.world.level.block.state.properties.EnumProperty; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.util.RandomSource; +import net.minecraft.world.phys.shapes.VoxelShape; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelReader; +import net.minecraft.world.level.ScheduledTickAccess; + +public final class HempCropBlock extends CropBlock { + public static final MapCodec CODEC = simpleCodec(HempCropBlock::new); + public static final BooleanProperty TALL = BooleanProperty.create("tall"); + public static final EnumProperty VARIANT = EnumProperty.create("variant", HempVariant.class); + private static final VoxelShape[] AGE_TO_SHAPE = Block.boxes( + 8, + age -> Block.box(0.0, 0.0, 0.0, 16.0, Math.min(16.0, 2.0 + age * 2.0), 16.0) + ); + + public HempCropBlock(BlockBehaviour.Properties settings) { + super(settings); + this.registerDefaultState(this.defaultBlockState().setValue(AGE, 0).setValue(TALL, false).setValue(VARIANT, HempVariant.COMMON)); + } + + @Override + public MapCodec codec() { + return CODEC; + } + + @Override + protected VoxelShape getShape(BlockState state, BlockGetter world, BlockPos pos, CollisionContext context) { + return AGE_TO_SHAPE[this.getAge(state)]; + } + + @Override + protected boolean isRandomlyTicking(BlockState state) { + return HempCropLogic.hasPendingGrowth(this.getAge(state), this.getMaxAge(), state.getValue(TALL)); + } + + @Override + protected void randomTick(BlockState state, ServerLevel world, BlockPos pos, RandomSource random) { + if (!hasSufficientLight(world, pos)) { + return; + } + + int age = this.getAge(state); + if (age < this.getMaxAge()) { + if (random.nextBoolean()) { + return; + } + + float moisture = getGrowthSpeed(this, world, pos); + if (random.nextInt((int) (25.0F / moisture) + 1) == 0) { + world.setBlock(pos, state.setValue(AGE, age + 1), Block.UPDATE_ALL); + } + return; + } + + if (!state.getValue(TALL) && random.nextBoolean()) { + this.tryGrowTall(world, pos, state); + } + } + + @Override + public boolean isValidBonemealTarget(LevelReader world, BlockPos pos, BlockState state) { + return this.getAge(state) < this.getMaxAge() || this.canGrowTall(world, pos); + } + + @Override + public boolean isBonemealSuccess(Level world, RandomSource random, BlockPos pos, BlockState state) { + return this.getAge(state) < this.getMaxAge() || this.canGrowTall(world, pos); + } + + @Override + public void performBonemeal(ServerLevel world, RandomSource random, BlockPos pos, BlockState state) { + int age = this.getAge(state); + if (age < this.getMaxAge()) { + int grownAge = HempCropLogic.bonemealAge(age, this.getMaxAge(), this.getBonemealAgeIncrease(world)); + world.setBlock(pos, state.setValue(AGE, grownAge), Block.UPDATE_ALL); + return; + } + + if (!state.getValue(TALL)) { + this.tryGrowTall(world, pos, state); + } + } + + @Override + protected ItemLike getBaseSeedId() { + return CanapliaItems.HEMP_SEEDS; + } + + @Override + protected ItemStack getCloneItemStack(net.minecraft.world.level.LevelReader world, BlockPos pos, BlockState state, boolean includeData) { + return new ItemStack(CanapliaItems.getSeeds(state.getValue(VARIANT))); + } + + @Override + protected BlockState updateShape( + BlockState state, + LevelReader world, + ScheduledTickAccess tickView, + BlockPos pos, + Direction direction, + BlockPos neighborPos, + BlockState neighborState, + RandomSource random + ) { + if (!state.canSurvive(world, pos)) { + return Blocks.AIR.defaultBlockState(); + } + + if ( + direction == Direction.UP + && state.getValue(TALL) + && (!neighborState.is(CanapliaBlocks.HEMP_TOP) || neighborState.getValue(HempTopBlock.VARIANT) != state.getValue(VARIANT)) + ) { + return state.setValue(TALL, false); + } + + return super.updateShape(state, world, tickView, pos, direction, neighborPos, neighborState, random); + } + + @Override + protected boolean isPathfindable(BlockState state, PathComputationType type) { + return false; + } + + @Override + protected void createBlockStateDefinition(StateDefinition.Builder builder) { + super.createBlockStateDefinition(builder); + builder.add(TALL, VARIANT); + } + + private boolean canGrowTall(LevelReader world, BlockPos pos) { + BlockState aboveState = world.getBlockState(pos.above()); + return aboveState.isAir() || aboveState.canBeReplaced(); + } + + private void tryGrowTall(Level world, BlockPos pos, BlockState state) { + if (!this.canGrowTall(world, pos)) { + return; + } + + world.setBlock(pos, state.setValue(TALL, true), Block.UPDATE_ALL); + world.setBlock(pos.above(), CanapliaBlocks.HEMP_TOP.defaultBlockState().setValue(HempTopBlock.VARIANT, state.getValue(VARIANT)), Block.UPDATE_ALL); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/HempCropLogic.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/HempCropLogic.java new file mode 100644 index 0000000..d8a9e61 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/HempCropLogic.java @@ -0,0 +1,18 @@ +package io.github.koka.canaplia.block; + +final class HempCropLogic { + private HempCropLogic() { + } + + static int bonemealAge(int age, int maxAge, int growthAmount) { + return Math.min(maxAge, age + growthAmount); + } + + static boolean hasPendingGrowth(int age, int maxAge, boolean tall) { + return age < maxAge || !tall; + } + + static boolean shouldDropBud(int age, int maxAge, boolean tall) { + return age >= maxAge && tall; + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/HempTopBlock.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/HempTopBlock.java new file mode 100644 index 0000000..3f2fc05 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/HempTopBlock.java @@ -0,0 +1,85 @@ +package io.github.koka.canaplia.block; + +import com.mojang.serialization.MapCodec; +import io.github.koka.canaplia.hemp.HempVariant; +import io.github.koka.canaplia.item.CanapliaItems; +import net.minecraft.world.level.block.state.BlockBehaviour; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.VegetationBlock; +import net.minecraft.world.phys.shapes.CollisionContext; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.level.block.state.properties.EnumProperty; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.util.RandomSource; +import net.minecraft.world.phys.shapes.VoxelShape; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.LevelReader; +import net.minecraft.world.level.ScheduledTickAccess; + +public final class HempTopBlock extends VegetationBlock { + public static final MapCodec CODEC = simpleCodec(HempTopBlock::new); + public static final EnumProperty VARIANT = HempCropBlock.VARIANT; + private static final VoxelShape SHAPE = Block.box(0.0, 0.0, 0.0, 16.0, 16.0, 16.0); + + public HempTopBlock(BlockBehaviour.Properties settings) { + super(settings); + this.registerDefaultState(this.defaultBlockState().setValue(VARIANT, HempVariant.COMMON)); + } + + @Override + public MapCodec codec() { + return CODEC; + } + + @Override + protected VoxelShape getShape(BlockState state, BlockGetter world, BlockPos pos, CollisionContext context) { + return SHAPE; + } + + @Override + protected ItemStack getCloneItemStack(LevelReader world, BlockPos pos, BlockState state, boolean includeData) { + return new ItemStack(CanapliaItems.getSeeds(state.getValue(VARIANT))); + } + + @Override + protected boolean mayPlaceOn(BlockState floor, BlockGetter world, BlockPos pos) { + return floor.is(CanapliaBlocks.HEMP_CROP) && floor.getValue(HempCropBlock.TALL); + } + + @Override + protected BlockState updateShape( + BlockState state, + LevelReader world, + ScheduledTickAccess tickView, + BlockPos pos, + net.minecraft.core.Direction direction, + BlockPos neighborPos, + BlockState neighborState, + RandomSource random + ) { + if ( + direction == Direction.DOWN + && (!neighborState.is(CanapliaBlocks.HEMP_CROP) + || !neighborState.getValue(HempCropBlock.TALL) + || neighborState.getValue(HempCropBlock.VARIANT) != state.getValue(VARIANT)) + ) { + return Blocks.AIR.defaultBlockState(); + } + + if (!state.canSurvive(world, pos)) { + return Blocks.AIR.defaultBlockState(); + } + + return super.updateShape(state, world, tickView, pos, direction, neighborPos, neighborState, random); + } + + @Override + protected void createBlockStateDefinition(StateDefinition.Builder builder) { + super.createBlockStateDefinition(builder); + builder.add(VARIANT); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/ResinBlock.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/ResinBlock.java new file mode 100644 index 0000000..1f4da03 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/ResinBlock.java @@ -0,0 +1,182 @@ +package io.github.koka.canaplia.block; + +import com.mojang.serialization.MapCodec; +import io.github.koka.canaplia.block.entity.CanapliaBlockEntityTypes; +import io.github.koka.canaplia.block.entity.ResinBlockEntity; +import io.github.koka.canaplia.hemp.HempVariant; +import io.github.koka.canaplia.item.CanapliaItems; +import net.minecraft.world.level.block.state.BlockBehaviour; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.RenderShape; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.BaseEntityBlock; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityTicker; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.entity.projectile.Projectile; +import net.minecraft.core.particles.ParticleTypes; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.sounds.SoundSource; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.level.block.state.properties.BooleanProperty; +import net.minecraft.world.level.block.state.properties.EnumProperty; +import net.minecraft.world.level.block.state.properties.BlockStateProperties; +import net.minecraft.stats.Stats; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.core.BlockPos; +import net.minecraft.util.RandomSource; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelReader; +import net.minecraft.world.level.gameevent.GameEvent; + +public final class ResinBlock extends BaseEntityBlock { + public static final MapCodec CODEC = simpleCodec(ResinBlock::new); + public static final BooleanProperty LIT = BlockStateProperties.LIT; + public static final EnumProperty VARIANT = EnumProperty.create("variant", HempVariant.class); + + public ResinBlock(BlockBehaviour.Properties settings) { + super(settings); + this.registerDefaultState(this.defaultBlockState().setValue(LIT, false).setValue(VARIANT, HempVariant.COMMON)); + } + + @Override + public MapCodec codec() { + return CODEC; + } + + @Override + protected void createBlockStateDefinition(StateDefinition.Builder builder) { + builder.add(LIT, VARIANT); + } + + @Override + protected RenderShape getRenderShape(BlockState state) { + return RenderShape.MODEL; + } + + @Override + public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { + return new ResinBlockEntity(pos, state); + } + + @Override + public BlockEntityTicker getTicker(Level world, BlockState state, BlockEntityType type) { + return world.isClientSide() ? null : createTickerHelper(type, CanapliaBlockEntityTypes.RESIN_BLOCK, ResinBlockEntity::tickServer); + } + + @Override + protected ItemStack getCloneItemStack(LevelReader world, BlockPos pos, BlockState state, boolean includeData) { + return new ItemStack(CanapliaItems.getResinBlock(state.getValue(VARIANT))); + } + + @Override + protected InteractionResult useItemOn( + ItemStack stack, + BlockState state, + Level world, + BlockPos pos, + Player player, + InteractionHand hand, + BlockHitResult hitResult + ) { + if (state.getValue(LIT) || !isIgnitionItem(stack)) { + return InteractionResult.TRY_WITH_EMPTY_HAND; + } + + if (world.isClientSide()) { + return InteractionResult.SUCCESS; + } + + igniteWithItem((ServerLevel) world, pos, state, player, hand); + return InteractionResult.SUCCESS_SERVER; + } + + @Override + protected void onProjectileHit(Level world, BlockState state, BlockHitResult hitResult, Projectile projectile) { + if (!(world instanceof ServerLevel serverWorld) || state.getValue(LIT) || !projectile.isOnFire()) { + return; + } + + BlockPos pos = hitResult.getBlockPos(); + if (!projectile.mayInteract(serverWorld, pos)) { + return; + } + + ignite(serverWorld, pos, state, SoundEvents.FIRECHARGE_USE, 0.9F); + } + + @Override + public void animateTick(BlockState state, Level world, BlockPos pos, RandomSource random) { + if (!state.getValue(LIT)) { + return; + } + + if (random.nextInt(10) == 0) { + world.playLocalSound( + pos.getX() + 0.5, + pos.getY() + 0.5, + pos.getZ() + 0.5, + SoundEvents.CAMPFIRE_CRACKLE, + SoundSource.BLOCKS, + 0.35F + random.nextFloat() * 0.3F, + 0.6F + random.nextFloat() * 0.4F, + false + ); + } + + spawnSmokeParticle(world, pos, random); + if (random.nextBoolean()) { + spawnSmokeParticle(world, pos, random); + } + } + + private static void spawnSmokeParticle(Level world, BlockPos pos, RandomSource random) { + world.addParticle( + ParticleTypes.CAMPFIRE_COSY_SMOKE, + pos.getX() + 0.5D, + pos.getY() + 1.0D, + pos.getZ() + 0.5D, + random.nextDouble() * 0.01D, + random.nextDouble() * 0.02D, + random.nextDouble() * 0.01D + ); + } + + private static boolean isIgnitionItem(ItemStack stack) { + return stack.is(Items.FLINT_AND_STEEL) || stack.is(Items.FIRE_CHARGE); + } + + private static void igniteWithItem(ServerLevel world, BlockPos pos, BlockState state, Player player, InteractionHand hand) { + ItemStack stack = player.getItemInHand(hand); + if (stack.is(Items.FLINT_AND_STEEL)) { + if (player instanceof ServerPlayer serverPlayer) { + stack.hurtAndBreak(1, world, serverPlayer, item -> {}); + } + player.awardStat(Stats.ITEM_USED.get(Items.FLINT_AND_STEEL)); + ignite(world, pos, state, SoundEvents.FLINTANDSTEEL_USE, 1.0F); + return; + } + + stack.consume(1, player); + player.awardStat(Stats.ITEM_USED.get(Items.FIRE_CHARGE)); + ignite(world, pos, state, SoundEvents.FIRECHARGE_USE, 0.9F); + } + + private static void ignite(ServerLevel world, BlockPos pos, BlockState state, SoundEvent sound, float pitch) { + world.setBlock(pos, state.setValue(LIT, true), Block.UPDATE_ALL); + if (world.getBlockEntity(pos) instanceof ResinBlockEntity blockEntity) { + blockEntity.light(state.getValue(VARIANT)); + } + + world.playSound(null, pos, sound, SoundSource.BLOCKS, 1.0F, pitch + world.getRandom().nextFloat() * 0.2F); + world.gameEvent(GameEvent.BLOCK_CHANGE, pos, GameEvent.Context.of(world.getBlockState(pos))); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/entity/CanapliaBlockEntityTypes.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/entity/CanapliaBlockEntityTypes.java new file mode 100644 index 0000000..deda020 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/entity/CanapliaBlockEntityTypes.java @@ -0,0 +1,22 @@ +package io.github.koka.canaplia.block.entity; + +import io.github.koka.canaplia.CanapliaMod; +import io.github.koka.canaplia.block.CanapliaBlocks; +import net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityTypeBuilder; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.Registry; + +public final class CanapliaBlockEntityTypes { + public static final BlockEntityType RESIN_BLOCK = Registry.register( + BuiltInRegistries.BLOCK_ENTITY_TYPE, + CanapliaMod.id("resin_block"), + FabricBlockEntityTypeBuilder.create(ResinBlockEntity::new, CanapliaBlocks.RESIN_BLOCK).build() + ); + + private CanapliaBlockEntityTypes() { + } + + public static void register() { + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/entity/ResinBlockEntity.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/entity/ResinBlockEntity.java new file mode 100644 index 0000000..d747e8b --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/block/entity/ResinBlockEntity.java @@ -0,0 +1,93 @@ +package io.github.koka.canaplia.block.entity; + +import io.github.koka.canaplia.block.ResinBlock; +import io.github.koka.canaplia.effect.HempEffectController; +import io.github.koka.canaplia.hemp.HempVariant; +import io.github.koka.canaplia.resin.CanapliaResinCatalog; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.core.particles.ParticleTypes; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.sounds.SoundSource; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.level.storage.ValueInput; +import net.minecraft.world.level.storage.ValueOutput; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.gameevent.GameEvent; + +public final class ResinBlockEntity extends BlockEntity { + private static final int EFFECT_INTERVAL_TICKS = 20; + + private int remainingBurnTicks; + + public ResinBlockEntity(BlockPos pos, BlockState state) { + super(CanapliaBlockEntityTypes.RESIN_BLOCK, pos, state); + } + + public int getRemainingBurnTicks() { + return this.remainingBurnTicks; + } + + public void setRemainingBurnTicks(int remainingBurnTicks) { + this.remainingBurnTicks = Math.max(0, remainingBurnTicks); + this.setChanged(); + } + + public void light(HempVariant variant) { + this.remainingBurnTicks = CanapliaResinCatalog.resolve(variant).burnTicks(); + this.setChanged(); + } + + @Override + protected void loadAdditional(ValueInput view) { + super.loadAdditional(view); + this.remainingBurnTicks = Math.max(0, view.getIntOr("remaining_burn_ticks", 0)); + } + + @Override + protected void saveAdditional(ValueOutput view) { + super.saveAdditional(view); + view.putInt("remaining_burn_ticks", this.remainingBurnTicks); + } + + public static void tickServer(Level world, BlockPos pos, BlockState state, ResinBlockEntity blockEntity) { + if (!(world instanceof ServerLevel serverWorld) || !state.getValue(ResinBlock.LIT)) { + return; + } + + if (blockEntity.remainingBurnTicks <= 0) { + extinguishAndConsume(serverWorld, pos, state); + return; + } + + if (blockEntity.remainingBurnTicks % EFFECT_INTERVAL_TICKS == 0) { + applyAura(serverWorld, pos, state.getValue(ResinBlock.VARIANT)); + } + + blockEntity.remainingBurnTicks--; + blockEntity.setChanged(); + + if (blockEntity.remainingBurnTicks <= 0) { + extinguishAndConsume(serverWorld, pos, state); + } + } + + private static void applyAura(ServerLevel world, BlockPos pos, HempVariant variant) { + AABB effectBox = new AABB(pos.getX() - 1.0, pos.getY(), pos.getZ() - 1.0, pos.getX() + 2.0, pos.getY() + 4.0, pos.getZ() + 2.0); + for (ServerPlayer player : world.getPlayers(serverPlayer -> effectBox.intersects(serverPlayer.getBoundingBox()))) { + HempEffectController.refreshResinAura(player, variant); + } + } + + private static void extinguishAndConsume(ServerLevel world, BlockPos pos, BlockState state) { + world.playSound(null, pos, SoundEvents.FIRE_EXTINGUISH, SoundSource.BLOCKS, 0.8F, 1.0F); + world.sendParticles(ParticleTypes.SMOKE, pos.getX() + 0.5, pos.getY() + 0.85, pos.getZ() + 0.5, 20, 0.25, 0.15, 0.25, 0.01); + world.setBlock(pos, Blocks.AIR.defaultBlockState(), Block.UPDATE_ALL); + world.gameEvent(GameEvent.BLOCK_CHANGE, pos, GameEvent.Context.of(state)); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/compost/HempBudComposterInteraction.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/compost/HempBudComposterInteraction.java new file mode 100644 index 0000000..a67e39d --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/compost/HempBudComposterInteraction.java @@ -0,0 +1,142 @@ +package io.github.koka.canaplia.compost; + +import io.github.koka.canaplia.hemp.HempVariant; +import io.github.koka.canaplia.item.CanapliaItems; +import io.github.koka.canaplia.resin.CanapliaResinCatalog; +import java.util.Optional; +import net.fabricmc.fabric.api.event.player.UseBlockCallback; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.ComposterBlock; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.sounds.SoundSource; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.stats.Stats; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.gameevent.GameEvent; + +public final class HempBudComposterInteraction { + private static final int COMPOSTER_FILL_EVENT = 1500; + + private HempBudComposterInteraction() { + } + + public static void register() { + UseBlockCallback.EVENT.register(HempBudComposterInteraction::onUseBlock); + } + + private static InteractionResult onUseBlock(Player player, Level world, InteractionHand hand, BlockHitResult hitResult) { + if (player.isSpectator()) { + return InteractionResult.PASS; + } + + BlockPos pos = hitResult.getBlockPos(); + BlockState state = world.getBlockState(pos); + if (!state.is(Blocks.COMPOSTER)) { + return InteractionResult.PASS; + } + + ItemStack stack = player.getItemInHand(hand); + Optional budVariant = CanapliaItems.getBudVariant(stack); + if (world.isClientSide()) { + if (budVariant.isPresent() && state.getValue(ComposterBlock.LEVEL) < 8) { + return InteractionResult.SUCCESS; + } + + if (stack.isEmpty() && state.getValue(ComposterBlock.LEVEL) == 8) { + return InteractionResult.SUCCESS; + } + + return InteractionResult.PASS; + } + + ServerLevel serverWorld = (ServerLevel) world; + HempBudCompostingState trackedComposters = HempBudCompostingState.get(serverWorld); + trackedComposters.invalidateIfMismatched(pos, state); + + int budCount = trackedComposters.getBudCount(pos); + if (budCount > 0) { + if (stack.isEmpty()) { + if (trackedComposters.isReady(pos)) { + return extractResinBlock(player, serverWorld, pos, state, trackedComposters); + } + + return InteractionResult.PASS; + } + + if (budVariant.isEmpty() || trackedComposters.isReady(pos)) { + return InteractionResult.SUCCESS_SERVER; + } + + if (!trackedComposters.canAccept(pos, budVariant.get())) { + return InteractionResult.SUCCESS_SERVER; + } + + return insertBud(player, hand, serverWorld, pos, state, trackedComposters, budVariant.get()); + } + + if (budVariant.isEmpty() || !HempBudCompostingLogic.canStart(state)) { + return InteractionResult.PASS; + } + + return insertBud(player, hand, serverWorld, pos, state, trackedComposters, budVariant.get()); + } + + private static InteractionResult insertBud( + Player player, + InteractionHand hand, + ServerLevel world, + BlockPos pos, + BlockState state, + HempBudCompostingState trackedComposters, + HempVariant budVariant + ) { + ItemStack stack = player.getItemInHand(hand); + int budCount = trackedComposters.incrementBudCount(pos, budVariant); + int level = HempBudCompostingLogic.levelForBudCount(budCount); + + if (state.getValue(ComposterBlock.LEVEL) != level) { + world.setBlock(pos, state.setValue(ComposterBlock.LEVEL, level), Block.UPDATE_ALL); + } + + stack.consume(1, player); + player.awardStat(Stats.ITEM_USED.get(CanapliaItems.getBud(budVariant))); + world.levelEvent(COMPOSTER_FILL_EVENT, pos, 1); + world.gameEvent(player, GameEvent.BLOCK_CHANGE, pos); + + if (HempBudCompostingLogic.isReady(budCount)) { + world.playSound(null, pos, SoundEvents.COMPOSTER_READY, SoundSource.BLOCKS, 1.0F, 1.0F); + } + + return InteractionResult.SUCCESS_SERVER; + } + + private static InteractionResult extractResinBlock( + Player player, + ServerLevel world, + BlockPos pos, + BlockState state, + HempBudCompostingState trackedComposters + ) { + HempVariant sourceVariant = trackedComposters.getSourceVariant(pos).orElse(HempVariant.COMMON); + trackedComposters.clear(pos); + world.setBlock(pos, state.setValue(ComposterBlock.LEVEL, 0), Block.UPDATE_ALL); + + ItemStack reward = CanapliaResinCatalog.createReward(sourceVariant); + if (!player.addItem(reward)) { + player.drop(reward, false); + } + + world.playSound(null, pos, SoundEvents.COMPOSTER_EMPTY, SoundSource.BLOCKS, 1.0F, 1.0F); + world.gameEvent(player, GameEvent.BLOCK_CHANGE, pos); + return InteractionResult.SUCCESS_SERVER; + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/compost/HempBudCompostingLogic.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/compost/HempBudCompostingLogic.java new file mode 100644 index 0000000..8bfaa1a --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/compost/HempBudCompostingLogic.java @@ -0,0 +1,46 @@ +package io.github.koka.canaplia.compost; + +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.ComposterBlock; + +public final class HempBudCompostingLogic { + public static final int REQUIRED_BUDS = 10; + + private HempBudCompostingLogic() { + } + + public static boolean canStart(BlockState state) { + boolean isComposter = state.is(Blocks.COMPOSTER); + return canStart(isComposter, isComposter ? state.getValue(ComposterBlock.LEVEL) : -1); + } + + public static boolean canStart(boolean isComposter, int level) { + return isComposter && level == 0; + } + + public static boolean isReady(int budCount) { + return budCount == REQUIRED_BUDS; + } + + public static int levelForBudCount(int budCount) { + if (budCount < 1 || budCount > REQUIRED_BUDS) { + throw new IllegalArgumentException("Bud count must be between 1 and " + REQUIRED_BUDS); + } + + if (budCount == REQUIRED_BUDS) { + return 8; + } + + return (budCount * 7 + REQUIRED_BUDS - 1) / REQUIRED_BUDS; + } + + public static boolean matchesTrackedState(int budCount, BlockState state) { + boolean isComposter = state.is(Blocks.COMPOSTER); + return matchesTrackedState(budCount, isComposter, isComposter ? state.getValue(ComposterBlock.LEVEL) : -1); + } + + public static boolean matchesTrackedState(int budCount, boolean isComposter, int level) { + return isComposter && level == levelForBudCount(budCount); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/compost/HempBudCompostingState.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/compost/HempBudCompostingState.java new file mode 100644 index 0000000..e04b563 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/compost/HempBudCompostingState.java @@ -0,0 +1,132 @@ +package io.github.koka.canaplia.compost; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import io.github.koka.canaplia.hemp.HempVariant; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.util.datafix.DataFixTypes; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.saveddata.SavedData; +import net.minecraft.world.level.saveddata.SavedDataType; + +public final class HempBudCompostingState extends SavedData { + private static final Codec HEMP_VARIANT_CODEC = Codec.STRING.xmap(HempBudCompostingState::variantFromKey, HempVariant::asString); + private static final Codec ENTRY_CODEC = RecordCodecBuilder.create(instance -> + instance.group( + Codec.LONG.fieldOf("pos").forGetter(TrackedComposterEntry::pos), + Codec.intRange(1, HempBudCompostingLogic.REQUIRED_BUDS).fieldOf("bud_count").forGetter(TrackedComposterEntry::budCount), + HEMP_VARIANT_CODEC.optionalFieldOf("source_variant", HempVariant.COMMON).forGetter(TrackedComposterEntry::sourceVariant) + ).apply(instance, TrackedComposterEntry::new) + ); + + private static final Codec CODEC = ENTRY_CODEC.listOf() + .xmap(HempBudCompostingState::fromEntries, HempBudCompostingState::asEntries); + + public static final SavedDataType TYPE = new SavedDataType<>( + io.github.koka.canaplia.CanapliaMod.id("hemp_bud_composters"), + HempBudCompostingState::new, + CODEC, + DataFixTypes.SAVED_DATA_COMMAND_STORAGE + ); + + private final Map trackedComposters = new HashMap<>(); + + public static HempBudCompostingState get(ServerLevel world) { + return world.getDataStorage().computeIfAbsent(TYPE); + } + + public HempBudCompostingState() { + } + + private HempBudCompostingState(List entries) { + entries.forEach(entry -> this.trackedComposters.put(entry.pos(), entry)); + } + + public int getBudCount(BlockPos pos) { + TrackedComposterEntry entry = this.trackedComposters.get(pos.asLong()); + return entry == null ? 0 : entry.budCount(); + } + + public boolean isTracked(BlockPos pos) { + return this.trackedComposters.containsKey(pos.asLong()); + } + + public Optional getSourceVariant(BlockPos pos) { + TrackedComposterEntry entry = this.trackedComposters.get(pos.asLong()); + return entry == null ? Optional.empty() : Optional.of(entry.sourceVariant()); + } + + public boolean canAccept(BlockPos pos, HempVariant variant) { + return this.getSourceVariant(pos).map(sourceVariant -> sourceVariant == variant).orElse(true); + } + + public boolean isReady(BlockPos pos) { + return HempBudCompostingLogic.isReady(this.getBudCount(pos)); + } + + public int incrementBudCount(BlockPos pos, HempVariant sourceVariant) { + long key = pos.asLong(); + TrackedComposterEntry entry = this.trackedComposters.get(key); + if (entry != null && entry.sourceVariant() != sourceVariant) { + throw new IllegalArgumentException("Tracked composter at " + pos + " already contains " + entry.sourceVariant().asString() + " buds."); + } + + int budCount = Math.min(HempBudCompostingLogic.REQUIRED_BUDS, (entry == null ? 0 : entry.budCount()) + 1); + this.trackedComposters.put(key, new TrackedComposterEntry(key, budCount, sourceVariant)); + this.setDirty(); + return budCount; + } + + public boolean invalidateIfMismatched(BlockPos pos, BlockState state) { + boolean isComposter = state.is(net.minecraft.world.level.block.Blocks.COMPOSTER); + return this.invalidateIfMismatched(pos, isComposter, isComposter ? state.getValue(net.minecraft.world.level.block.ComposterBlock.LEVEL) : -1); + } + + public boolean invalidateIfMismatched(BlockPos pos, boolean isComposter, int level) { + int budCount = this.getBudCount(pos); + if (budCount == 0) { + return false; + } + + if (HempBudCompostingLogic.matchesTrackedState(budCount, isComposter, level)) { + return false; + } + + this.trackedComposters.remove(pos.asLong()); + this.setDirty(); + return true; + } + + public void clear(BlockPos pos) { + if (this.trackedComposters.remove(pos.asLong()) != null) { + this.setDirty(); + } + } + + private static HempBudCompostingState fromEntries(List entries) { + return new HempBudCompostingState(entries); + } + + private List asEntries() { + return this.trackedComposters.values().stream() + .toList(); + } + + private static HempVariant variantFromKey(String key) { + for (HempVariant variant : HempVariant.values()) { + if (variant.asString().equals(key)) { + return variant; + } + } + + return HempVariant.COMMON; + } + + private record TrackedComposterEntry(long pos, int budCount, HempVariant sourceVariant) { + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/CanapliaSmokeEffects.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/CanapliaSmokeEffects.java new file mode 100644 index 0000000..83bba93 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/CanapliaSmokeEffects.java @@ -0,0 +1,59 @@ +package io.github.koka.canaplia.effect; + +import io.github.koka.canaplia.hemp.HempVariant; +import java.util.List; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.effect.MobEffect; +import net.minecraft.world.effect.MobEffectInstance; +import net.minecraft.world.effect.MobEffects; +import net.minecraft.core.Holder; + +public final class CanapliaSmokeEffects { + private CanapliaSmokeEffects() { + } + + public static Holder resolve(String effectId) { + return switch (effectId) { + case "minecraft:absorption" -> MobEffects.ABSORPTION; + case "minecraft:blindness" -> MobEffects.BLINDNESS; + case "minecraft:dolphins_grace" -> MobEffects.DOLPHINS_GRACE; + case "minecraft:fire_resistance" -> MobEffects.FIRE_RESISTANCE; + case "minecraft:haste" -> MobEffects.HASTE; + case "minecraft:hunger" -> MobEffects.HUNGER; + case "minecraft:invisibility" -> MobEffects.INVISIBILITY; + case "minecraft:jump_boost" -> MobEffects.JUMP_BOOST; + case "minecraft:luck" -> MobEffects.LUCK; + case "minecraft:nausea" -> MobEffects.NAUSEA; + case "minecraft:night_vision" -> MobEffects.NIGHT_VISION; + case "minecraft:regeneration" -> MobEffects.REGENERATION; + case "minecraft:resistance" -> MobEffects.RESISTANCE; + case "minecraft:slow_falling" -> MobEffects.SLOW_FALLING; + case "minecraft:slowness" -> MobEffects.SLOWNESS; + case "minecraft:speed" -> MobEffects.SPEED; + case "minecraft:strength" -> MobEffects.STRENGTH; + case "minecraft:water_breathing" -> MobEffects.WATER_BREATHING; + case "minecraft:weakness" -> MobEffects.WEAKNESS; + default -> throw new IllegalArgumentException("Unknown status effect: " + effectId + "."); + }; + } + + public static MobEffectInstance createEffect(HempEffectSpec effect) { + return new MobEffectInstance(resolve(effect.effectId()), effect.durationTicks(), effect.amplifier(), false, true, true); + } + + public static List createEffects(List effects) { + return effects.stream().map(CanapliaSmokeEffects::createEffect).toList(); + } + + public static void applyEffects(LivingEntity entity, List effects) { + createEffects(effects).forEach(entity::addEffect); + } + + public static HempResolvedEffectProfile jointProfile(HempVariant variant) { + return HempEffectCatalog.getDefault().resolve(HempEffectSource.JOINT, variant, net.minecraft.util.RandomSource.create(0L)); + } + + public static HempResolvedEffectProfile auraProfile(HempVariant variant) { + return HempEffectCatalog.getDefault().resolve(HempEffectSource.RESIN_AURA, variant, net.minecraft.util.RandomSource.create(0L)); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempBadTripBaseRules.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempBadTripBaseRules.java new file mode 100644 index 0000000..21800fe --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempBadTripBaseRules.java @@ -0,0 +1,11 @@ +package io.github.koka.canaplia.effect; + +public record HempBadTripBaseRules( + boolean appliesNausea, + boolean appliesHunger, + float normalVisualIntensityMin, + float normalVisualIntensityMax, + float badTripVisualIntensityMin, + float badTripVisualIntensityMax +) { +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempDelayRange.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempDelayRange.java new file mode 100644 index 0000000..51281ed --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempDelayRange.java @@ -0,0 +1,19 @@ +package io.github.koka.canaplia.effect; + +import net.minecraft.util.RandomSource; + +public record HempDelayRange(int minTicks, int maxTicks) { + public HempDelayRange { + if (minTicks < 0 || maxTicks < minTicks) { + throw new IllegalArgumentException("Invalid delay range: " + minTicks + " -> " + maxTicks); + } + } + + public int roll(RandomSource random) { + if (this.minTicks == this.maxTicks) { + return this.minTicks; + } + + return this.minTicks + random.nextInt(this.maxTicks - this.minTicks + 1); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectCatalog.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectCatalog.java new file mode 100644 index 0000000..3b51647 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectCatalog.java @@ -0,0 +1,381 @@ +package io.github.koka.canaplia.effect; + +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParseException; +import com.google.gson.JsonParser; +import io.github.koka.canaplia.CanapliaMod; +import io.github.koka.canaplia.hemp.HempVariant; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.Reader; +import java.nio.charset.StandardCharsets; +import java.util.EnumMap; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Set; +import net.minecraft.util.RandomSource; + +public final class HempEffectCatalog { + private static final String RESOURCE_PATH = "/data/canaplia/hemp_varieties.json"; + private static final EnumMap VARIANT_TO_JSON_ID = createVariantIdMap(); + private static final Set SUPPORTED_EFFECT_IDS = Set.of( + "minecraft:absorption", + "minecraft:blindness", + "minecraft:dolphins_grace", + "minecraft:fire_resistance", + "minecraft:haste", + "minecraft:hunger", + "minecraft:invisibility", + "minecraft:jump_boost", + "minecraft:luck", + "minecraft:nausea", + "minecraft:night_vision", + "minecraft:regeneration", + "minecraft:resistance", + "minecraft:slow_falling", + "minecraft:slowness", + "minecraft:speed", + "minecraft:strength", + "minecraft:water_breathing", + "minecraft:weakness" + ); + + private final int version; + private final HempBadTripBaseRules badTripBaseRules; + private final EnumMap definitions; + private final Map definitionsByJsonId; + + private HempEffectCatalog( + int version, + HempBadTripBaseRules badTripBaseRules, + EnumMap definitions, + Map definitionsByJsonId + ) { + this.version = version; + this.badTripBaseRules = badTripBaseRules; + this.definitions = definitions; + this.definitionsByJsonId = definitionsByJsonId; + } + + public static HempEffectCatalog getDefault() { + return Holder.INSTANCE; + } + + public static HempEffectCatalog load(Reader reader) { + try { + JsonObject root = JsonParser.parseReader(reader).getAsJsonObject(); + int version = requiredInt(root, "version"); + HempBadTripBaseRules badTripBaseRules = parseBadTripBaseRules(requiredObject(root, "bad_trip_base_rules")); + EnumMap definitions = new EnumMap<>(HempVariant.class); + Map definitionsByJsonId = new HashMap<>(); + + for (JsonElement element : requiredArray(root, "varieties")) { + HempVarietyDefinition definition = parseVarietyDefinition(requiredObject(element, "variety entry"), badTripBaseRules); + if (definitions.put(definition.variant(), definition) != null) { + throw new IllegalArgumentException("Duplicate variety mapping for " + definition.variant().asString() + "."); + } + + if (definitionsByJsonId.put(definition.jsonId(), definition) != null) { + throw new IllegalArgumentException("Duplicate JSON id " + definition.jsonId() + "."); + } + } + + validateCompleteness(definitions); + return new HempEffectCatalog(version, badTripBaseRules, definitions, definitionsByJsonId); + } catch (IllegalStateException | JsonParseException exception) { + throw new IllegalArgumentException("Invalid hemp effect catalog JSON.", exception); + } + } + + public int version() { + return this.version; + } + + public HempBadTripBaseRules badTripBaseRules() { + return this.badTripBaseRules; + } + + public List varieties() { + return List.copyOf(this.definitions.values()); + } + + public HempVarietyDefinition definition(HempVariant variant) { + HempVarietyDefinition definition = this.definitions.get(variant); + if (definition == null) { + throw new IllegalArgumentException("No hemp effect definition for " + variant.asString() + "."); + } + + return definition; + } + + public HempResolvedEffectProfile resolve(HempEffectSource source, HempVariant variant, RandomSource random) { + return this.definition(variant).resolve(source, random); + } + + private static HempBadTripBaseRules parseBadTripBaseRules(JsonObject object) { + float[] normalIntensityTarget = requiredFloatPair(object, "normal_trip_visual_intensity_target"); + float[] badTripIntensityTarget = requiredFloatPair(object, "bad_trip_visual_intensity_target"); + + return new HempBadTripBaseRules( + requiredBoolean(object, "applies_nausea"), + requiredBoolean(object, "applies_hunger"), + normalIntensityTarget[0], + normalIntensityTarget[1], + badTripIntensityTarget[0], + badTripIntensityTarget[1] + ); + } + + private static HempVarietyDefinition parseVarietyDefinition(JsonObject object, HempBadTripBaseRules badTripBaseRules) { + String jsonId = requiredString(object, "id"); + HempVariant variant = variantFromJsonId(jsonId); + HempMainEffectMode mainEffectMode = parseMainEffectMode(object); + int mainDurationTicks = secondsToTicks(requiredInt(object, "main_duration_sec"), "main_duration_sec"); + List mainEffects = mainEffectMode == HempMainEffectMode.DIRECT + ? parseEffects(requiredArray(object, "main_effects"), "main_effects") + : List.of(); + List mainEffectsPool = mainEffectMode == HempMainEffectMode.RANDOM_PICK + ? parseEffects(requiredArray(object, "main_effects_pool"), "main_effects_pool") + : List.of(); + int mainEffectsPickCount = mainEffectMode == HempMainEffectMode.RANDOM_PICK ? requiredInt(object, "main_effects_pick_count") : 0; + + if (mainEffectMode == HempMainEffectMode.RANDOM_PICK && (mainEffectsPickCount <= 0 || mainEffectsPickCount > mainEffectsPool.size())) { + throw new IllegalArgumentException( + "Invalid main_effects_pick_count for " + jsonId + ": " + mainEffectsPickCount + " over pool size " + mainEffectsPool.size() + "." + ); + } + + HempVarietyDefinition definition = new HempVarietyDefinition( + jsonId, + variant, + requiredString(object, "name_fr"), + requiredString(object, "rarity"), + requiredString(object, "color_family"), + mainDurationTicks, + mainEffectMode, + mainEffects, + mainEffectsPool, + mainEffectsPickCount, + parseVisualProfile(requiredObject(object, "normal_visual_profile")), + requiredChance(object, "bad_trip_chance"), + parseDelayRange(requiredObject(object, "bad_trip_delay_sec")), + secondsToTicks(requiredInt(object, "bad_trip_duration_sec"), "bad_trip_duration_sec"), + parseEffects(requiredArray(object, "bad_trip_effects"), "bad_trip_effects"), + parseVisualProfile(requiredObject(object, "bad_trip_visual_profile")) + ); + + validateBadTripBaseEffects(definition, badTripBaseRules); + return definition; + } + + private static HempMainEffectMode parseMainEffectMode(JsonObject object) { + if (!object.has("main_effects_mode")) { + return HempMainEffectMode.DIRECT; + } + + String rawMode = requiredString(object, "main_effects_mode"); + return switch (rawMode) { + case "random_pick" -> HempMainEffectMode.RANDOM_PICK; + case "direct" -> HempMainEffectMode.DIRECT; + default -> throw new IllegalArgumentException("Unsupported main_effects_mode: " + rawMode + "."); + }; + } + + private static List parseEffects(JsonArray array, String fieldName) { + java.util.ArrayList effects = new java.util.ArrayList<>(array.size()); + for (JsonElement element : array) { + effects.add(parseEffect(requiredObject(element, fieldName + " entry"))); + } + + return List.copyOf(effects); + } + + private static HempEffectSpec parseEffect(JsonObject object) { + String effectId = requiredString(object, "effect"); + validateEffectExists(effectId); + return new HempEffectSpec(effectId, requiredInt(object, "amplifier"), secondsToTicks(requiredInt(object, "duration_sec"), "duration_sec")); + } + + private static HempVisualProfile parseVisualProfile(JsonObject object) { + return new HempVisualProfile( + requiredString(object, "palette"), + requiredFloat(object, "intensity"), + optionalFloat(object, "tint_strength"), + optionalFloat(object, "saturation_delta"), + optionalFloat(object, "contrast_delta"), + optionalFloat(object, "vignette_strength"), + optionalFloat(object, "ghosting_strength"), + optionalFloat(object, "wobble_strength"), + optionalFloat(object, "pulse_strength") + ); + } + + private static HempDelayRange parseDelayRange(JsonObject object) { + return new HempDelayRange( + secondsToTicks(requiredInt(object, "min"), "bad_trip_delay_sec.min"), + secondsToTicks(requiredInt(object, "max"), "bad_trip_delay_sec.max") + ); + } + + private static void validateCompleteness(EnumMap definitions) { + for (HempVariant variant : HempVariant.values()) { + if (!definitions.containsKey(variant)) { + throw new IllegalArgumentException("Missing hemp effect definition for " + variant.asString() + "."); + } + } + } + + private static void validateBadTripBaseEffects(HempVarietyDefinition definition, HempBadTripBaseRules badTripBaseRules) { + List badTripEffects = definition.badTripEffects().stream().map(HempEffectSpec::effectId).toList(); + if (badTripBaseRules.appliesNausea() && !badTripEffects.contains("minecraft:nausea")) { + throw new IllegalArgumentException(definition.jsonId() + " must include minecraft:nausea in bad_trip_effects."); + } + + if (badTripBaseRules.appliesHunger() && !badTripEffects.contains("minecraft:hunger")) { + throw new IllegalArgumentException(definition.jsonId() + " must include minecraft:hunger in bad_trip_effects."); + } + } + + private static HempVariant variantFromJsonId(String jsonId) { + return VARIANT_TO_JSON_ID.entrySet() + .stream() + .filter(entry -> entry.getValue().equals(jsonId)) + .map(Map.Entry::getKey) + .findFirst() + .orElseThrow(() -> new IllegalArgumentException("No runtime hemp variant mapping for JSON id " + jsonId + ".")); + } + + private static void validateEffectExists(String effectId) { + if (!SUPPORTED_EFFECT_IDS.contains(effectId)) { + throw new IllegalArgumentException("Unknown status effect in hemp catalog: " + effectId + "."); + } + } + + private static JsonObject requiredObject(JsonObject object, String fieldName) { + if (!object.has(fieldName)) { + throw new IllegalArgumentException("Missing object field " + fieldName + "."); + } + + return object.getAsJsonObject(fieldName); + } + + private static JsonObject requiredObject(JsonElement element, String label) { + if (!element.isJsonObject()) { + throw new IllegalArgumentException("Expected object for " + label + "."); + } + + return element.getAsJsonObject(); + } + + private static JsonArray requiredArray(JsonObject object, String fieldName) { + if (!object.has(fieldName)) { + throw new IllegalArgumentException("Missing array field " + fieldName + "."); + } + + return object.getAsJsonArray(fieldName); + } + + private static String requiredString(JsonObject object, String fieldName) { + if (!object.has(fieldName)) { + throw new IllegalArgumentException("Missing string field " + fieldName + "."); + } + + return object.get(fieldName).getAsString(); + } + + private static int requiredInt(JsonObject object, String fieldName) { + if (!object.has(fieldName)) { + throw new IllegalArgumentException("Missing int field " + fieldName + "."); + } + + return object.get(fieldName).getAsInt(); + } + + private static boolean requiredBoolean(JsonObject object, String fieldName) { + if (!object.has(fieldName)) { + throw new IllegalArgumentException("Missing boolean field " + fieldName + "."); + } + + return object.get(fieldName).getAsBoolean(); + } + + private static float requiredFloat(JsonObject object, String fieldName) { + if (!object.has(fieldName)) { + throw new IllegalArgumentException("Missing float field " + fieldName + "."); + } + + return object.get(fieldName).getAsFloat(); + } + + private static float optionalFloat(JsonObject object, String fieldName) { + return object.has(fieldName) ? object.get(fieldName).getAsFloat() : 0.0F; + } + + private static float requiredChance(JsonObject object, String fieldName) { + float chance = requiredFloat(object, fieldName); + if (chance < 0.0F || chance > 1.0F) { + throw new IllegalArgumentException("Chance field " + fieldName + " must stay between 0.0 and 1.0."); + } + + return chance; + } + + private static float[] requiredFloatPair(JsonObject object, String fieldName) { + JsonArray array = requiredArray(object, fieldName); + if (array.size() != 2) { + throw new IllegalArgumentException("Field " + fieldName + " must contain exactly 2 values."); + } + + return new float[] {array.get(0).getAsFloat(), array.get(1).getAsFloat()}; + } + + private static int secondsToTicks(int seconds, String fieldName) { + if (seconds <= 0) { + throw new IllegalArgumentException("Field " + fieldName + " must be positive."); + } + + return seconds * 20; + } + + private static EnumMap createVariantIdMap() { + EnumMap map = new EnumMap<>(HempVariant.class); + map.put(HempVariant.COMMON, "chanvre_commun"); + map.put(HempVariant.TENDER, "chanvre_tendre"); + map.put(HempVariant.OLIVE, "chanvre_olive"); + map.put(HempVariant.DARK, "chanvre_sombre"); + map.put(HempVariant.ASHEN, "chanvre_cendre"); + map.put(HempVariant.MOSS, "chanvre_mousse"); + map.put(HempVariant.GOLD, "chanvre_dore"); + map.put(HempVariant.AMBER, "chanvre_ambre"); + map.put(HempVariant.BLUISH, "chanvre_bleute"); + map.put(HempVariant.PINK, "chanvre_rose"); + map.put(HempVariant.CORAL, "chanvre_corail"); + map.put(HempVariant.PURPLE, "chanvre_pourpre"); + map.put(HempVariant.INDIGO, "chanvre_indigo"); + map.put(HempVariant.VARIEG, "chanvre_panache"); + map.put(HempVariant.LUNAR, "chanvre_lunaire"); + map.put(HempVariant.EMBER, "chanvre_braise"); + return map; + } + + private static HempEffectCatalog loadBundled() { + InputStream stream = HempEffectCatalog.class.getResourceAsStream(RESOURCE_PATH); + if (stream == null) { + throw new IllegalStateException("Missing bundled hemp effect catalog at " + RESOURCE_PATH + "."); + } + + try (Reader reader = new InputStreamReader(stream, StandardCharsets.UTF_8)) { + return load(reader); + } catch (IOException exception) { + throw new IllegalStateException("Failed to read bundled hemp effect catalog.", exception); + } + } + + private static final class Holder { + private static final HempEffectCatalog INSTANCE = loadBundled(); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectController.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectController.java new file mode 100644 index 0000000..5790ef7 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectController.java @@ -0,0 +1,199 @@ +package io.github.koka.canaplia.effect; + +import io.github.koka.canaplia.effect.network.CanapliaEffectPayloads; +import io.github.koka.canaplia.hemp.HempVariant; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.UUID; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.effect.MobEffect; +import net.minecraft.world.effect.MobEffectInstance; +import net.minecraft.core.Holder; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerPlayer; + +public final class HempEffectController { + private static final HempEffectCatalog CATALOG = HempEffectCatalog.getDefault(); + private static final Map ACTIVE_STATES = new HashMap<>(); + + private HempEffectController() { + } + + public static void register() { + CanapliaEffectPayloads.register(); + ServerTickEvents.END_SERVER_TICK.register(HempEffectController::tickServer); + } + + public static void consumeJoint(ServerPlayer player, HempVariant variant) { + startOrRefresh(player, HempEffectSource.JOINT, variant); + } + + public static void refreshResinAura(ServerPlayer player, HempVariant variant) { + startOrRefresh(player, HempEffectSource.RESIN_AURA, variant); + } + + public static void applyImmediateEffects(LivingEntity entity, HempVariant variant) { + HempResolvedEffectProfile profile = CATALOG.resolve(HempEffectSource.JOINT, variant, net.minecraft.util.RandomSource.create(0L)); + CanapliaSmokeEffects.applyEffects(entity, profile.mainEffects()); + } + + static HempPlayerEffectState getActiveState(UUID playerId) { + return ACTIVE_STATES.get(playerId); + } + + static void clearForTests() { + ACTIVE_STATES.clear(); + } + + private static void startOrRefresh(ServerPlayer player, HempEffectSource source, HempVariant variant) { + long currentTick = player.level().getGameTime(); + HempPlayerEffectState state = ACTIVE_STATES.computeIfAbsent(player.getUUID(), unused -> new HempPlayerEffectState()); + state.pruneExpiredSessions(currentTick); + + HempEffectSession existingSession = state.session(variant); + HempResolvedEffectProfile profile = existingSession != null ? existingSession.profile() : CATALOG.resolve(source, variant, player.getRandom()); + boolean badTripWasActive = state.hasBadTripStarted(); + + state.captureBaseline(player, profile.allEffectIds()); + state.upsertSession(source, profile, currentTick); + + boolean rerollBadTrip = source == HempEffectSource.JOINT || existingSession == null; + if (rerollBadTrip) { + state.rerollBadTrip(profile, currentTick, player.getRandom()); + } else { + state.refreshActiveBadTrip(variant, currentTick); + } + + reapplyManagedEffects(player, state, currentTick); + syncVisualState(player, state, currentTick, badTripWasActive && rerollBadTrip); + } + + private static void tickServer(MinecraftServer server) { + Iterator> iterator = ACTIVE_STATES.entrySet().iterator(); + while (iterator.hasNext()) { + Map.Entry entry = iterator.next(); + ServerPlayer player = server.getPlayerList().getPlayer(entry.getKey()); + if (player == null) { + iterator.remove(); + continue; + } + + if (!player.isAlive()) { + clearState(player, entry.getValue(), true); + iterator.remove(); + continue; + } + + long currentTick = player.level().getGameTime(); + HempPlayerEffectState state = entry.getValue(); + boolean removedExpiredSessions = state.pruneExpiredSessions(currentTick); + boolean expiredBadTrip = state.expireBadTripIfNeeded(currentTick); + boolean startedBadTrip = false; + + if (state.shouldStartBadTrip(currentTick)) { + state.startBadTrip(currentTick); + startedBadTrip = true; + } + + if (removedExpiredSessions || expiredBadTrip || startedBadTrip) { + reapplyManagedEffects(player, state, currentTick); + } + + if (state.isEmpty()) { + clearState(player, state, true); + iterator.remove(); + continue; + } + + if (removedExpiredSessions || expiredBadTrip || startedBadTrip) { + syncVisualState(player, state, currentTick, expiredBadTrip); + } + } + } + + private static void reapplyManagedEffects(ServerPlayer player, HempPlayerEffectState state, long currentTick) { + Map, MobEffectInstance> targetEffects = new HashMap<>(); + for (HempEffectSession session : state.sessions()) { + mergeEffects(targetEffects, session.activeMainEffects(currentTick)); + } + + mergeEffects(targetEffects, state.activeBadTripEffects(currentTick)); + + Set> managedTypes = new HashSet<>(state.baselineEffects().keySet()); + managedTypes.addAll(targetEffects.keySet()); + + for (Holder effectType : managedTypes) { + player.removeEffect(effectType); + } + + targetEffects.values().forEach(effect -> player.addEffect(new MobEffectInstance(effect))); + for (Map.Entry, MobEffectInstance> baselineEntry : state.baselineEffects().entrySet()) { + if (!targetEffects.containsKey(baselineEntry.getKey())) { + player.addEffect(new MobEffectInstance(baselineEntry.getValue())); + } + } + } + + private static void mergeEffects(Map, MobEffectInstance> targetEffects, List effects) { + for (HempEffectSpec effect : effects) { + Holder effectType = CanapliaSmokeEffects.resolve(effect.effectId()); + MobEffectInstance candidate = CanapliaSmokeEffects.createEffect(effect); + MobEffectInstance existing = targetEffects.get(effectType); + if (existing == null || shouldReplace(existing, candidate)) { + targetEffects.put(effectType, candidate); + } + } + } + + private static boolean shouldReplace(MobEffectInstance existing, MobEffectInstance candidate) { + if (candidate.getAmplifier() != existing.getAmplifier()) { + return candidate.getAmplifier() > existing.getAmplifier(); + } + + return candidate.getDuration() > existing.getDuration(); + } + + private static void syncVisualState(ServerPlayer player, HempPlayerEffectState state, long currentTick, boolean clearFirst) { + HempEffectSession visualSession = state.visualSession(); + if (clearFirst || visualSession == null) { + CanapliaEffectPayloads.sendClear(player); + } + + if (visualSession != null) { + CanapliaEffectPayloads.sendNormalProfile(player, visualSession.profile().normalVisualProfile(), visualSession.remainingMainTicks(currentTick)); + } + + if (state.hasBadTripStarted() && state.badTripProfile() != null) { + CanapliaEffectPayloads.sendBadTripProfile(player, state.badTripProfile().badTripVisualProfile(), state.remainingBadTripTicks(currentTick)); + } + } + + private static void clearState(ServerPlayer player, HempPlayerEffectState state, boolean syncClient) { + Set> managedTypes = new HashSet<>(state.baselineEffects().keySet()); + for (HempEffectSession session : state.sessions()) { + for (String effectId : session.profile().allEffectIds()) { + managedTypes.add(CanapliaSmokeEffects.resolve(effectId)); + } + } + + if (state.badTripProfile() != null) { + for (String effectId : state.badTripProfile().allEffectIds()) { + managedTypes.add(CanapliaSmokeEffects.resolve(effectId)); + } + } + + for (Holder effectType : managedTypes) { + player.removeEffect(effectType); + } + + state.baselineEffects().values().forEach(effect -> player.addEffect(new MobEffectInstance(effect))); + if (syncClient) { + CanapliaEffectPayloads.sendClear(player); + } + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectSession.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectSession.java new file mode 100644 index 0000000..dc108eb --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectSession.java @@ -0,0 +1,62 @@ +package io.github.koka.canaplia.effect; + +import java.util.ArrayList; +import java.util.List; + +final class HempEffectSession { + private HempEffectSource source; + private final HempResolvedEffectProfile profile; + private long mainEndTick; + private long lastTouchedTick; + + private HempEffectSession(HempEffectSource source, HempResolvedEffectProfile profile, long mainEndTick, long lastTouchedTick) { + this.source = source; + this.profile = profile; + this.mainEndTick = mainEndTick; + this.lastTouchedTick = lastTouchedTick; + } + + static HempEffectSession start(HempEffectSource source, HempResolvedEffectProfile profile, long currentTick) { + return new HempEffectSession(source, profile, currentTick + profile.mainDurationTicks(), currentTick); + } + + HempEffectSource source() { + return this.source; + } + + HempResolvedEffectProfile profile() { + return this.profile; + } + + void refresh(HempEffectSource source, long currentTick) { + this.source = source; + this.mainEndTick = currentTick + this.profile.mainDurationTicks(); + this.lastTouchedTick = currentTick; + } + + boolean isExpired(long currentTick) { + return currentTick >= this.mainEndTick; + } + + int remainingMainTicks(long currentTick) { + return (int) Math.max(0L, this.mainEndTick - currentTick); + } + + long lastTouchedTick() { + return this.lastTouchedTick; + } + + List activeMainEffects(long currentTick) { + int remainingTicks = this.remainingMainTicks(currentTick); + if (remainingTicks <= 0) { + return List.of(); + } + + List effects = new ArrayList<>(this.profile.mainEffects().size()); + for (HempEffectSpec effect : this.profile.mainEffects()) { + effects.add(effect.withDurationTicks(Math.min(effect.durationTicks(), remainingTicks))); + } + + return List.copyOf(effects); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectSource.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectSource.java new file mode 100644 index 0000000..0c53ca6 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectSource.java @@ -0,0 +1,6 @@ +package io.github.koka.canaplia.effect; + +public enum HempEffectSource { + JOINT, + RESIN_AURA +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectSpec.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectSpec.java new file mode 100644 index 0000000..d6a6b2d --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempEffectSpec.java @@ -0,0 +1,21 @@ +package io.github.koka.canaplia.effect; + +public record HempEffectSpec(String effectId, int amplifier, int durationTicks) { + public HempEffectSpec { + if (effectId == null || effectId.isBlank()) { + throw new IllegalArgumentException("Effect id must not be blank."); + } + + if (amplifier < 0) { + throw new IllegalArgumentException("Amplifier must not be negative for " + effectId + "."); + } + + if (durationTicks <= 0) { + throw new IllegalArgumentException("Duration must be positive for " + effectId + "."); + } + } + + public HempEffectSpec withDurationTicks(int updatedDurationTicks) { + return new HempEffectSpec(this.effectId, this.amplifier, updatedDurationTicks); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempMainEffectMode.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempMainEffectMode.java new file mode 100644 index 0000000..685661c --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempMainEffectMode.java @@ -0,0 +1,6 @@ +package io.github.koka.canaplia.effect; + +public enum HempMainEffectMode { + DIRECT, + RANDOM_PICK +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempPlayerEffectState.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempPlayerEffectState.java new file mode 100644 index 0000000..518d99d --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempPlayerEffectState.java @@ -0,0 +1,166 @@ +package io.github.koka.canaplia.effect; + +import io.github.koka.canaplia.hemp.HempVariant; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Comparator; +import java.util.EnumMap; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Set; +import net.minecraft.world.effect.MobEffect; +import net.minecraft.world.effect.MobEffectInstance; +import net.minecraft.core.Holder; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.util.RandomSource; + +final class HempPlayerEffectState { + private final EnumMap sessions = new EnumMap<>(HempVariant.class); + private final Map, MobEffectInstance> baselineEffects = new HashMap<>(); + private HempResolvedEffectProfile badTripProfile; + private Long badTripStartTick; + private Long badTripEndTick; + private boolean badTripStarted; + + HempEffectSession session(HempVariant variant) { + return this.sessions.get(variant); + } + + Collection sessions() { + return this.sessions.values(); + } + + Map, MobEffectInstance> baselineEffects() { + return this.baselineEffects; + } + + HempResolvedEffectProfile badTripProfile() { + return this.badTripProfile; + } + + HempEffectSession upsertSession(HempEffectSource source, HempResolvedEffectProfile profile, long currentTick) { + HempEffectSession session = this.sessions.get(profile.variant()); + if (session != null) { + session.refresh(source, currentTick); + return session; + } + + HempEffectSession newSession = HempEffectSession.start(source, profile, currentTick); + this.sessions.put(profile.variant(), newSession); + return newSession; + } + + void captureBaseline(ServerPlayer player, Set effectIds) { + for (String effectId : effectIds) { + Holder effectType = CanapliaSmokeEffects.resolve(effectId); + if (this.baselineEffects.containsKey(effectType)) { + continue; + } + + MobEffectInstance activeEffect = player.getEffect(effectType); + if (activeEffect != null) { + this.baselineEffects.put(effectType, new MobEffectInstance(activeEffect)); + } + } + } + + boolean pruneExpiredSessions(long currentTick) { + boolean removed = false; + Iterator> iterator = this.sessions.entrySet().iterator(); + while (iterator.hasNext()) { + if (iterator.next().getValue().isExpired(currentTick)) { + iterator.remove(); + removed = true; + } + } + + return removed; + } + + HempEffectSession visualSession() { + return this.sessions.values().stream().max(Comparator.comparingLong(HempEffectSession::lastTouchedTick)).orElse(null); + } + + void rerollBadTrip(HempResolvedEffectProfile profile, long currentTick, RandomSource random) { + this.badTripProfile = null; + this.badTripStartTick = null; + this.badTripEndTick = null; + this.badTripStarted = false; + + if (random.nextFloat() >= profile.badTripChance()) { + return; + } + + this.badTripProfile = profile; + this.badTripStartTick = currentTick + profile.badTripDelay().roll(random); + } + + void refreshActiveBadTrip(HempVariant variant, long currentTick) { + if (!this.badTripStarted || this.badTripProfile == null || this.badTripProfile.variant() != variant || this.badTripEndTick == null) { + return; + } + + this.badTripEndTick = Math.max(this.badTripEndTick, currentTick + this.badTripProfile.badTripDurationTicks()); + } + + boolean shouldStartBadTrip(long currentTick) { + return !this.badTripStarted && this.badTripStartTick != null && currentTick >= this.badTripStartTick; + } + + void startBadTrip(long currentTick) { + if (this.badTripProfile == null) { + return; + } + + this.badTripStarted = true; + this.badTripEndTick = currentTick + this.badTripProfile.badTripDurationTicks(); + } + + boolean expireBadTripIfNeeded(long currentTick) { + if (!this.badTripStarted || this.badTripEndTick == null || currentTick < this.badTripEndTick) { + return false; + } + + this.badTripProfile = null; + this.badTripStartTick = null; + this.badTripEndTick = null; + this.badTripStarted = false; + return true; + } + + boolean hasBadTripStarted() { + return this.badTripStarted; + } + + int remainingBadTripTicks(long currentTick) { + if (!this.badTripStarted || this.badTripEndTick == null) { + return 0; + } + + return (int) Math.max(0L, this.badTripEndTick - currentTick); + } + + List activeBadTripEffects(long currentTick) { + if (!this.badTripStarted || this.badTripProfile == null) { + return List.of(); + } + + int remainingTicks = this.remainingBadTripTicks(currentTick); + if (remainingTicks <= 0) { + return List.of(); + } + + List effects = new ArrayList<>(this.badTripProfile.badTripEffects().size()); + for (HempEffectSpec effect : this.badTripProfile.badTripEffects()) { + effects.add(effect.withDurationTicks(Math.min(effect.durationTicks(), remainingTicks))); + } + + return List.copyOf(effects); + } + + boolean isEmpty() { + return this.sessions.isEmpty() && this.badTripProfile == null; + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempResolvedEffectProfile.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempResolvedEffectProfile.java new file mode 100644 index 0000000..ded9a98 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempResolvedEffectProfile.java @@ -0,0 +1,33 @@ +package io.github.koka.canaplia.effect; + +import io.github.koka.canaplia.hemp.HempVariant; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Set; + +public record HempResolvedEffectProfile( + HempEffectSource source, + HempVariant variant, + String jsonId, + String nameFr, + int mainDurationTicks, + List mainEffects, + HempVisualProfile normalVisualProfile, + float badTripChance, + HempDelayRange badTripDelay, + int badTripDurationTicks, + List badTripEffects, + HempVisualProfile badTripVisualProfile +) { + public HempResolvedEffectProfile { + mainEffects = List.copyOf(mainEffects); + badTripEffects = List.copyOf(badTripEffects); + } + + public Set allEffectIds() { + Set effectIds = new LinkedHashSet<>(); + this.mainEffects.stream().map(HempEffectSpec::effectId).forEach(effectIds::add); + this.badTripEffects.stream().map(HempEffectSpec::effectId).forEach(effectIds::add); + return effectIds; + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempVarietyDefinition.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempVarietyDefinition.java new file mode 100644 index 0000000..fe34578 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempVarietyDefinition.java @@ -0,0 +1,63 @@ +package io.github.koka.canaplia.effect; + +import io.github.koka.canaplia.hemp.HempVariant; +import java.util.ArrayList; +import java.util.List; +import net.minecraft.util.RandomSource; + +public record HempVarietyDefinition( + String jsonId, + HempVariant variant, + String nameFr, + String rarity, + String colorFamily, + int mainDurationTicks, + HempMainEffectMode mainEffectMode, + List mainEffects, + List mainEffectsPool, + int mainEffectsPickCount, + HempVisualProfile normalVisualProfile, + float badTripChance, + HempDelayRange badTripDelay, + int badTripDurationTicks, + List badTripEffects, + HempVisualProfile badTripVisualProfile +) { + public HempVarietyDefinition { + mainEffects = List.copyOf(mainEffects); + mainEffectsPool = List.copyOf(mainEffectsPool); + badTripEffects = List.copyOf(badTripEffects); + } + + public HempResolvedEffectProfile resolve(HempEffectSource source, RandomSource random) { + return new HempResolvedEffectProfile( + source, + this.variant, + this.jsonId, + this.nameFr, + this.mainDurationTicks, + this.resolveMainEffects(random), + this.normalVisualProfile, + this.badTripChance, + this.badTripDelay, + this.badTripDurationTicks, + this.badTripEffects, + this.badTripVisualProfile + ); + } + + private List resolveMainEffects(RandomSource random) { + if (this.mainEffectMode == HempMainEffectMode.DIRECT) { + return this.mainEffects; + } + + List pool = new ArrayList<>(this.mainEffectsPool); + List picked = new ArrayList<>(this.mainEffectsPickCount); + + for (int pick = 0; pick < this.mainEffectsPickCount; pick++) { + picked.add(pool.remove(random.nextInt(pool.size()))); + } + + return List.copyOf(picked); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempVisualProfile.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempVisualProfile.java new file mode 100644 index 0000000..b4826a6 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempVisualProfile.java @@ -0,0 +1,45 @@ +package io.github.koka.canaplia.effect; + +import io.netty.buffer.ByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.codec.ByteBufCodecs; + +public record HempVisualProfile( + String palette, + float intensity, + float tintStrength, + float saturationDelta, + float contrastDelta, + float vignetteStrength, + float ghostingStrength, + float wobbleStrength, + float pulseStrength +) { + public static final StreamCodec PACKET_CODEC = StreamCodec.composite( + ByteBufCodecs.STRING_UTF8, + HempVisualProfile::palette, + ByteBufCodecs.FLOAT, + HempVisualProfile::intensity, + ByteBufCodecs.FLOAT, + HempVisualProfile::tintStrength, + ByteBufCodecs.FLOAT, + HempVisualProfile::saturationDelta, + ByteBufCodecs.FLOAT, + HempVisualProfile::contrastDelta, + ByteBufCodecs.FLOAT, + HempVisualProfile::vignetteStrength, + ByteBufCodecs.FLOAT, + HempVisualProfile::ghostingStrength, + ByteBufCodecs.FLOAT, + HempVisualProfile::wobbleStrength, + ByteBufCodecs.FLOAT, + HempVisualProfile::pulseStrength, + HempVisualProfile::new + ); + + public HempVisualProfile { + if (palette == null || palette.isBlank()) { + throw new IllegalArgumentException("Visual palette must not be blank."); + } + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempVisualStateStore.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempVisualStateStore.java new file mode 100644 index 0000000..3712dda --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/HempVisualStateStore.java @@ -0,0 +1,54 @@ +package io.github.koka.canaplia.effect; + +public final class HempVisualStateStore { + private static HempVisualProfile normalProfile; + private static HempVisualProfile badTripProfile; + private static int normalTicksRemaining; + private static int badTripTicksRemaining; + + private HempVisualStateStore() { + } + + public static void applyNormal(HempVisualProfile profile, int remainingTicks) { + normalProfile = profile; + normalTicksRemaining = Math.max(0, remainingTicks); + } + + public static void applyBadTrip(HempVisualProfile profile, int remainingTicks) { + badTripProfile = profile; + badTripTicksRemaining = Math.max(0, remainingTicks); + } + + public static HempVisualProfile normalProfile() { + return normalProfile; + } + + public static HempVisualProfile badTripProfile() { + return badTripProfile; + } + + public static int normalTicksRemaining() { + return normalTicksRemaining; + } + + public static int badTripTicksRemaining() { + return badTripTicksRemaining; + } + + public static void tick() { + if (normalTicksRemaining > 0 && --normalTicksRemaining == 0) { + normalProfile = null; + } + + if (badTripTicksRemaining > 0 && --badTripTicksRemaining == 0) { + badTripProfile = null; + } + } + + public static void clear() { + normalProfile = null; + badTripProfile = null; + normalTicksRemaining = 0; + badTripTicksRemaining = 0; + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/network/CanapliaEffectPayloads.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/network/CanapliaEffectPayloads.java new file mode 100644 index 0000000..bb01be9 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/network/CanapliaEffectPayloads.java @@ -0,0 +1,29 @@ +package io.github.koka.canaplia.effect.network; + +import io.github.koka.canaplia.effect.HempVisualProfile; +import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry; +import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; +import net.minecraft.server.level.ServerPlayer; + +public final class CanapliaEffectPayloads { + private CanapliaEffectPayloads() { + } + + public static void register() { + PayloadTypeRegistry.clientboundPlay().register(HempVisualSyncPayload.ID, HempVisualSyncPayload.CODEC); + PayloadTypeRegistry.clientboundPlay().register(HempBadTripPayload.ID, HempBadTripPayload.CODEC); + PayloadTypeRegistry.clientboundPlay().register(HempVisualClearPayload.ID, HempVisualClearPayload.CODEC); + } + + public static void sendNormalProfile(ServerPlayer player, HempVisualProfile profile, int remainingTicks) { + ServerPlayNetworking.send(player, new HempVisualSyncPayload(profile, remainingTicks)); + } + + public static void sendBadTripProfile(ServerPlayer player, HempVisualProfile profile, int remainingTicks) { + ServerPlayNetworking.send(player, new HempBadTripPayload(profile, remainingTicks)); + } + + public static void sendClear(ServerPlayer player) { + ServerPlayNetworking.send(player, HempVisualClearPayload.INSTANCE); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/network/HempBadTripPayload.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/network/HempBadTripPayload.java new file mode 100644 index 0000000..b009609 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/network/HempBadTripPayload.java @@ -0,0 +1,24 @@ +package io.github.koka.canaplia.effect.network; + +import io.github.koka.canaplia.CanapliaMod; +import io.github.koka.canaplia.effect.HempVisualProfile; +import io.netty.buffer.ByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record HempBadTripPayload(HempVisualProfile profile, int remainingTicks) implements CustomPacketPayload { + public static final Type ID = new Type<>(CanapliaMod.id("hemp_bad_trip")); + public static final StreamCodec CODEC = StreamCodec.composite( + HempVisualProfile.PACKET_CODEC, + HempBadTripPayload::profile, + ByteBufCodecs.VAR_INT, + HempBadTripPayload::remainingTicks, + HempBadTripPayload::new + ); + + @Override + public Type type() { + return ID; + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/network/HempVisualClearPayload.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/network/HempVisualClearPayload.java new file mode 100644 index 0000000..2b22186 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/network/HempVisualClearPayload.java @@ -0,0 +1,17 @@ +package io.github.koka.canaplia.effect.network; + +import io.github.koka.canaplia.CanapliaMod; +import io.netty.buffer.ByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record HempVisualClearPayload() implements CustomPacketPayload { + public static final HempVisualClearPayload INSTANCE = new HempVisualClearPayload(); + public static final Type ID = new Type<>(CanapliaMod.id("hemp_visual_clear")); + public static final StreamCodec CODEC = StreamCodec.unit(INSTANCE); + + @Override + public Type type() { + return ID; + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/network/HempVisualSyncPayload.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/network/HempVisualSyncPayload.java new file mode 100644 index 0000000..182c332 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/effect/network/HempVisualSyncPayload.java @@ -0,0 +1,24 @@ +package io.github.koka.canaplia.effect.network; + +import io.github.koka.canaplia.CanapliaMod; +import io.github.koka.canaplia.effect.HempVisualProfile; +import io.netty.buffer.ByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record HempVisualSyncPayload(HempVisualProfile profile, int remainingTicks) implements CustomPacketPayload { + public static final Type ID = new Type<>(CanapliaMod.id("hemp_visual_sync")); + public static final StreamCodec CODEC = StreamCodec.composite( + HempVisualProfile.PACKET_CODEC, + HempVisualSyncPayload::profile, + ByteBufCodecs.VAR_INT, + HempVisualSyncPayload::remainingTicks, + HempVisualSyncPayload::new + ); + + @Override + public Type type() { + return ID; + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/gametest/CanapliaGameTests.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/gametest/CanapliaGameTests.java new file mode 100644 index 0000000..85ec36f --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/gametest/CanapliaGameTests.java @@ -0,0 +1,6 @@ +package io.github.koka.canaplia.gametest; + +public final class CanapliaGameTests { + private CanapliaGameTests() { + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/hemp/HempVariant.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/hemp/HempVariant.java new file mode 100644 index 0000000..4522eda --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/hemp/HempVariant.java @@ -0,0 +1,49 @@ +package io.github.koka.canaplia.hemp; + +import net.minecraft.util.StringRepresentable; + +public enum HempVariant implements StringRepresentable { + COMMON("common"), + TENDER("tender"), + OLIVE("olive"), + DARK("dark"), + ASHEN("ashen"), + MOSS("moss"), + GOLD("gold"), + AMBER("amber"), + BLUISH("bluish"), + PINK("pink"), + CORAL("coral"), + PURPLE("purple"), + INDIGO("indigo"), + VARIEG("varieg"), + LUNAR("lunar"), + EMBER("ember"); + + private final String key; + + HempVariant(String key) { + this.key = key; + } + + public boolean isCommon() { + return this == COMMON; + } + + public String itemPath(String basePath) { + return this.isCommon() ? basePath : this.key + "_" + basePath; + } + + public String modelSuffix() { + return this.isCommon() ? "" : "_" + this.key; + } + + @Override + public String getSerializedName() { + return this.key; + } + + public String asString() { + return this.getSerializedName(); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/item/CanapliaItems.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/item/CanapliaItems.java new file mode 100644 index 0000000..199979c --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/item/CanapliaItems.java @@ -0,0 +1,200 @@ +package io.github.koka.canaplia.item; + +import io.github.koka.canaplia.CanapliaMod; +import io.github.koka.canaplia.block.CanapliaBlocks; +import io.github.koka.canaplia.hemp.HempVariant; +import java.util.EnumMap; +import java.util.Map; +import java.util.Optional; +import net.fabricmc.fabric.api.creativetab.v1.CreativeModeTabEvents; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.CreativeModeTab; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.core.Registry; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; + +public final class CanapliaItems { + private static final ResourceKey NATURAL_BLOCKS_TAB = vanillaTab("natural_blocks"); + private static final ResourceKey INGREDIENTS_TAB = vanillaTab("ingredients"); + private static final ResourceKey FOOD_AND_DRINKS_TAB = vanillaTab("food_and_drinks"); + private static final ResourceKey BUILDING_BLOCKS_TAB = vanillaTab("building_blocks"); + + private static final EnumMap SEEDS_BY_VARIANT = registerSeeds(); + private static final EnumMap BUDS_BY_VARIANT = registerBuds(); + private static final EnumMap JOINTS_BY_VARIANT = registerJoints(); + private static final EnumMap RESIN_BLOCKS_BY_VARIANT = registerResinBlocks(); + + public static final Item HEMP_SEEDS = SEEDS_BY_VARIANT.get(HempVariant.COMMON); + public static final Item HEMP_BUD = BUDS_BY_VARIANT.get(HempVariant.COMMON); + public static final Item ROLLED_JOINT = JOINTS_BY_VARIANT.get(HempVariant.COMMON); + public static final Item RESIN_BLOCK = RESIN_BLOCKS_BY_VARIANT.get(HempVariant.COMMON); + + private CanapliaItems() { + } + + public static Item getSeeds(HempVariant variant) { + return SEEDS_BY_VARIANT.get(variant); + } + + public static Item getBud(HempVariant variant) { + return BUDS_BY_VARIANT.get(variant); + } + + public static Item getJoint(HempVariant variant) { + return JOINTS_BY_VARIANT.get(variant); + } + + public static Item getResinBlock(HempVariant variant) { + return RESIN_BLOCKS_BY_VARIANT.get(variant); + } + + public static Optional getBudVariant(ItemStack stack) { + return resolveVariant(stack.getItem(), BUDS_BY_VARIANT); + } + + public static Optional getJointVariant(ItemStack stack) { + return resolveVariant(stack.getItem(), JOINTS_BY_VARIANT); + } + + public static Optional getResinBlockVariant(ItemStack stack) { + return resolveVariant(stack.getItem(), RESIN_BLOCKS_BY_VARIANT); + } + + public static void register() { + CreativeModeTabEvents.modifyOutputEvent(NATURAL_BLOCKS_TAB).register(entries -> { + Item previous = Items.WHEAT_SEEDS; + for (HempVariant variant : HempVariant.values()) { + Item seed = getSeeds(variant); + entries.insertAfter(previous, seed); + previous = seed; + } + for (HempVariant variant : HempVariant.values()) { + Item bud = getBud(variant); + entries.insertAfter(previous, bud); + previous = bud; + } + for (HempVariant variant : HempVariant.values()) { + Item resinBlock = getResinBlock(variant); + entries.insertAfter(previous, resinBlock); + previous = resinBlock; + } + }); + CreativeModeTabEvents.modifyOutputEvent(INGREDIENTS_TAB).register(entries -> { + Item previous = Items.WHEAT_SEEDS; + for (HempVariant variant : HempVariant.values()) { + Item seed = getSeeds(variant); + entries.insertAfter(previous, seed); + previous = seed; + } + for (HempVariant variant : HempVariant.values()) { + Item bud = getBud(variant); + entries.insertAfter(previous, bud); + previous = bud; + } + for (HempVariant variant : HempVariant.values()) { + Item resinBlock = getResinBlock(variant); + entries.insertAfter(previous, resinBlock); + previous = resinBlock; + } + }); + CreativeModeTabEvents.modifyOutputEvent(FOOD_AND_DRINKS_TAB).register(entries -> { + Item previous = Items.POTION; + for (HempVariant variant : HempVariant.values()) { + Item joint = getJoint(variant); + entries.insertAfter(previous, joint); + previous = joint; + } + }); + CreativeModeTabEvents.modifyOutputEvent(BUILDING_BLOCKS_TAB).register(entries -> { + Item previous = Items.MUD; + for (HempVariant variant : HempVariant.values()) { + Item resinBlock = getResinBlock(variant); + entries.insertAfter(previous, resinBlock); + previous = resinBlock; + } + }); + } + + private static Item register(ResourceKey key, Item item) { + return Registry.register(BuiltInRegistries.ITEM, key, item); + } + + private static ResourceKey vanillaTab(String path) { + return ResourceKey.create(Registries.CREATIVE_MODE_TAB, Identifier.withDefaultNamespace(path)); + } + + private static EnumMap registerSeeds() { + EnumMap items = new EnumMap<>(HempVariant.class); + for (HempVariant variant : HempVariant.values()) { + ResourceKey key = ResourceKey.create(Registries.ITEM, CanapliaMod.id(variant.itemPath("hemp_seeds"))); + items.put( + variant, + register( + key, + new HempSeedItem( + variant, + CanapliaBlocks.HEMP_CROP, + new Item.Properties() + .setId(key) + .useItemDescriptionPrefix() + ) + ) + ); + } + return items; + } + + private static EnumMap registerBuds() { + EnumMap items = new EnumMap<>(HempVariant.class); + for (HempVariant variant : HempVariant.values()) { + ResourceKey key = ResourceKey.create(Registries.ITEM, CanapliaMod.id(variant.itemPath("hemp_bud"))); + items.put(variant, register(key, new Item(new Item.Properties().setId(key)))); + } + return items; + } + + private static EnumMap registerJoints() { + EnumMap items = new EnumMap<>(HempVariant.class); + for (HempVariant variant : HempVariant.values()) { + ResourceKey key = ResourceKey.create(Registries.ITEM, CanapliaMod.id(variant.itemPath("rolled_joint"))); + items.put(variant, register(key, new RolledJointItem(variant, new Item.Properties().stacksTo(16).setId(key)))); + } + return items; + } + + private static EnumMap registerResinBlocks() { + EnumMap items = new EnumMap<>(HempVariant.class); + for (HempVariant variant : HempVariant.values()) { + ResourceKey key = ResourceKey.create(Registries.ITEM, CanapliaMod.id(variant.itemPath("resin_block"))); + items.put( + variant, + register( + key, + new ResinBlockItem( + variant, + CanapliaBlocks.RESIN_BLOCK, + new Item.Properties() + .setId(key) + .useItemDescriptionPrefix() + ) + ) + ); + } + return items; + } + + private static Optional resolveVariant(Item item, EnumMap itemsByVariant) { + for (Map.Entry entry : itemsByVariant.entrySet()) { + if (entry.getValue() == item) { + return Optional.of(entry.getKey()); + } + } + + return Optional.empty(); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/item/HempSeedItem.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/item/HempSeedItem.java new file mode 100644 index 0000000..31319da --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/item/HempSeedItem.java @@ -0,0 +1,28 @@ +package io.github.koka.canaplia.item; + +import io.github.koka.canaplia.block.HempCropBlock; +import io.github.koka.canaplia.hemp.HempVariant; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.context.BlockPlaceContext; + +public final class HempSeedItem extends BlockItem { + private final HempVariant variant; + + public HempSeedItem(HempVariant variant, Block block, Item.Properties settings) { + super(block, settings); + this.variant = variant; + } + + public HempVariant getVariant() { + return this.variant; + } + + @Override + protected BlockState getPlacementState(BlockPlaceContext context) { + BlockState state = super.getPlacementState(context); + return state == null ? null : state.setValue(HempCropBlock.VARIANT, this.variant).setValue(HempCropBlock.TALL, false); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/item/ResinBlockItem.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/item/ResinBlockItem.java new file mode 100644 index 0000000..827a6d7 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/item/ResinBlockItem.java @@ -0,0 +1,28 @@ +package io.github.koka.canaplia.item; + +import io.github.koka.canaplia.block.ResinBlock; +import io.github.koka.canaplia.hemp.HempVariant; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.context.BlockPlaceContext; + +public final class ResinBlockItem extends BlockItem { + private final HempVariant variant; + + public ResinBlockItem(HempVariant variant, Block block, Item.Properties settings) { + super(block, settings); + this.variant = variant; + } + + public HempVariant getVariant() { + return this.variant; + } + + @Override + protected BlockState getPlacementState(BlockPlaceContext context) { + BlockState state = super.getPlacementState(context); + return state == null ? null : state.setValue(ResinBlock.VARIANT, this.variant).setValue(ResinBlock.LIT, false); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/item/RolledJointItem.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/item/RolledJointItem.java new file mode 100644 index 0000000..398cbd4 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/item/RolledJointItem.java @@ -0,0 +1,85 @@ +package io.github.koka.canaplia.item; + +import io.github.koka.canaplia.effect.HempEffectController; +import io.github.koka.canaplia.hemp.HempVariant; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.ItemUtils; +import net.minecraft.world.item.ItemUseAnimation; +import net.minecraft.core.particles.ParticleTypes; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.sounds.SoundSource; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.level.Level; + +public final class RolledJointItem extends Item { + private final HempVariant variant; + + public RolledJointItem(HempVariant variant, Item.Properties settings) { + super(settings); + this.variant = variant; + } + + public HempVariant getVariant() { + return this.variant; + } + + @Override + public InteractionResult use(Level world, Player user, InteractionHand hand) { + return ItemUtils.startUsingInstantly(world, user, hand); + } + + @Override + public ItemStack finishUsingItem(ItemStack stack, Level world, LivingEntity user) { + if (!world.isClientSide()) { + if (user instanceof ServerPlayer serverPlayer) { + HempEffectController.consumeJoint(serverPlayer, this.variant); + } else { + HempEffectController.applyImmediateEffects(user, this.variant); + } + + world.playSound( + null, + user.getX(), + user.getY(), + user.getZ(), + SoundEvents.SMOKER_SMOKE, + SoundSource.PLAYERS, + 0.35F, + 0.9F + world.getRandom().nextFloat() * 0.2F + ); + + if (world instanceof ServerLevel serverWorld) { + serverWorld.sendParticles( + ParticleTypes.SMOKE, + user.getX(), + user.getY() + user.getBbHeight() * 0.6D, + user.getZ(), + 8, + 0.12D, + 0.12D, + 0.12D, + 0.01D + ); + } + } + + stack.consume(1, user); + return stack; + } + + @Override + public ItemUseAnimation getUseAnimation(ItemStack stack) { + return ItemUseAnimation.DRINK; + } + + @Override + public int getUseDuration(ItemStack stack, LivingEntity user) { + return 32; + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/resin/CanapliaResinCatalog.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/resin/CanapliaResinCatalog.java new file mode 100644 index 0000000..4a39105 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/resin/CanapliaResinCatalog.java @@ -0,0 +1,24 @@ +package io.github.koka.canaplia.resin; + +import io.github.koka.canaplia.hemp.HempVariant; +import io.github.koka.canaplia.item.CanapliaItems; +import net.minecraft.world.item.ItemStack; + +public final class CanapliaResinCatalog { + public static final int DEFAULT_BURN_TICKS = 90 * 20; + + private CanapliaResinCatalog() { + } + + public static ResinProfile resolve(HempVariant sourceVariant) { + return new ResinProfile(sourceVariant, sourceVariant, DEFAULT_BURN_TICKS); + } + + public static ItemStack createReward(HempVariant sourceVariant) { + ResinProfile profile = resolve(sourceVariant); + return new ItemStack(CanapliaItems.getResinBlock(profile.blockVariant())); + } + + public record ResinProfile(HempVariant sourceVariant, HempVariant blockVariant, int burnTicks) { + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/survival/CanapliaSurvivalObtainment.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/survival/CanapliaSurvivalObtainment.java new file mode 100644 index 0000000..a1aae57 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/survival/CanapliaSurvivalObtainment.java @@ -0,0 +1,123 @@ +package io.github.koka.canaplia.survival; + +import io.github.koka.canaplia.block.CanapliaBlocks; +import io.github.koka.canaplia.block.HempCropBlock; +import io.github.koka.canaplia.block.HempTopBlock; +import io.github.koka.canaplia.hemp.HempVariant; +import io.github.koka.canaplia.item.CanapliaItems; +import java.util.EnumSet; +import java.util.Optional; +import net.fabricmc.fabric.api.event.player.PlayerBlockBreakEvents; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.CropBlock; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; + +public final class CanapliaSurvivalObtainment { + private CanapliaSurvivalObtainment() { + } + + public static void register() { + PlayerBlockBreakEvents.AFTER.register(CanapliaSurvivalObtainment::afterBlockBreak); + } + + private static void afterBlockBreak(Level world, Player player, BlockPos pos, BlockState state, BlockEntity blockEntity) { + if (!(world instanceof ServerLevel serverWorld)) { + return; + } + + if (player.isCreative()) { + return; + } + + dropDiscoverySeed(serverWorld, pos, state); + dropHarvestSeeds(serverWorld, pos, state); + } + + private static void dropDiscoverySeed(ServerLevel world, BlockPos pos, BlockState state) { + Block block = state.getBlock(); + float chance = HempDiscoveryLogic.getBaseChance(block); + if (chance <= 0.0F || world.getRandom().nextFloat() >= chance) { + return; + } + + Optional variant = HempDiscoveryLogic.resolveVariant(block, HempEnvironment.probe(world, pos)); + if (variant.isEmpty()) { + return; + } + + Block.popResource(world, pos, new ItemStack(CanapliaItems.getSeeds(variant.get()))); + } + + private static void dropHarvestSeeds(ServerLevel world, BlockPos pos, BlockState state) { + Optional harvestedPlant = resolveHarvestedPlant(world, pos, state); + if (harvestedPlant.isEmpty()) { + return; + } + + HarvestedPlant harvest = harvestedPlant.get(); + EnumSet adjacentVariants = collectAdjacentHarvestReadyVariants(world, harvest.basePos()); + HempEnvironment environment = HempEnvironment.probe(world, harvest.basePos()); + + for (HempBreedingLogic.SeedRoll roll : HempBreedingLogic.getHarvestSeedRolls(harvest.variant(), adjacentVariants, environment)) { + if (world.getRandom().nextFloat() < roll.chance()) { + Block.popResource(world, pos, new ItemStack(CanapliaItems.getSeeds(roll.variant()))); + } + } + } + + private static Optional resolveHarvestedPlant(ServerLevel world, BlockPos pos, BlockState state) { + if (isHarvestReadyCrop(state)) { + return Optional.of(new HarvestedPlant(pos, state.getValue(HempCropBlock.VARIANT))); + } + + if (!state.is(CanapliaBlocks.HEMP_TOP)) { + return Optional.empty(); + } + + BlockPos basePos = pos.below(); + BlockState baseState = world.getBlockState(basePos); + if ( + baseState.is(CanapliaBlocks.HEMP_CROP) + && baseState.getValue(CropBlock.AGE) >= CanapliaBlocks.HEMP_CROP.getMaxAge() + && baseState.getValue(HempCropBlock.VARIANT) == state.getValue(HempTopBlock.VARIANT) + ) { + return Optional.of(new HarvestedPlant(basePos, state.getValue(HempTopBlock.VARIANT))); + } + + return Optional.empty(); + } + + private static EnumSet collectAdjacentHarvestReadyVariants(ServerLevel world, BlockPos basePos) { + EnumSet variants = EnumSet.noneOf(HempVariant.class); + + for (int dx = -1; dx <= 1; dx++) { + for (int dz = -1; dz <= 1; dz++) { + if (dx == 0 && dz == 0) { + continue; + } + + BlockState neighborState = world.getBlockState(basePos.offset(dx, 0, dz)); + if (isHarvestReadyCrop(neighborState)) { + variants.add(neighborState.getValue(HempCropBlock.VARIANT)); + } + } + } + + return variants; + } + + private static boolean isHarvestReadyCrop(BlockState state) { + return state.is(CanapliaBlocks.HEMP_CROP) + && state.getValue(CropBlock.AGE) >= CanapliaBlocks.HEMP_CROP.getMaxAge() + && state.getValue(HempCropBlock.TALL); + } + + private record HarvestedPlant(BlockPos basePos, HempVariant variant) { + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/survival/HempBreedingLogic.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/survival/HempBreedingLogic.java new file mode 100644 index 0000000..3d7bce3 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/survival/HempBreedingLogic.java @@ -0,0 +1,75 @@ +package io.github.koka.canaplia.survival; + +import io.github.koka.canaplia.hemp.HempVariant; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + +final class HempBreedingLogic { + record SeedRoll(HempVariant variant, float chance) { + } + + private HempBreedingLogic() { + } + + static List getHarvestSeedRolls(HempVariant harvestedVariant, Collection adjacentVariants, HempEnvironment environment) { + ArrayList rolls = new ArrayList<>(4); + + if ( + (harvestedVariant == HempVariant.ASHEN || harvestedVariant == HempVariant.BLUISH) + && environment.night() + && environment.skyVisible() + && environment.coldBiome() + ) { + rolls.add(new SeedRoll(HempVariant.LUNAR, 0.06F)); + } + + if (matchesPair(harvestedVariant, adjacentVariants, HempVariant.TENDER, HempVariant.OLIVE) && environment.warmBiome() && environment.day() && environment.skyVisible()) { + rolls.add(new SeedRoll(HempVariant.GOLD, 0.12F)); + } + + if (matchesPair(harvestedVariant, adjacentVariants, HempVariant.DARK, HempVariant.MOSS) && environment.humidArea() && environment.lowLight()) { + rolls.add(new SeedRoll(HempVariant.PURPLE, 0.08F)); + } + + if ( + matchesPair(harvestedVariant, adjacentVariants, HempVariant.TENDER, HempVariant.PURPLE) + && environment.dawnOrDusk() + && ( + environment.floweringArea() + || environment.biomeContains("meadow") + || environment.biomeContains("flower_forest") + || environment.biomeContains("cherry_grove") + ) + ) { + rolls.add(new SeedRoll(HempVariant.PINK, 0.10F)); + } + + if (matchesPair(harvestedVariant, adjacentVariants, HempVariant.AMBER, HempVariant.MOSS) && environment.warmBiome() && environment.waterTouchingFarmland()) { + rolls.add(new SeedRoll(HempVariant.CORAL, 0.10F)); + } + + if ( + matchesPair(harvestedVariant, adjacentVariants, HempVariant.ASHEN, HempVariant.TENDER) + && (environment.coldBiome() || environment.snowOrIceNearby()) + ) { + rolls.add(new SeedRoll(HempVariant.BLUISH, 0.09F)); + } + + if (adjacentVariants.stream().anyMatch(variant -> variant != harvestedVariant) && environment.humidArea()) { + rolls.add(new SeedRoll(HempVariant.VARIEG, 0.06F)); + } + + return List.copyOf(rolls); + } + + private static boolean matchesPair( + HempVariant harvestedVariant, + Collection adjacentVariants, + HempVariant parentA, + HempVariant parentB + ) { + return harvestedVariant == parentA && adjacentVariants.contains(parentB) + || harvestedVariant == parentB && adjacentVariants.contains(parentA); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/survival/HempDiscoveryLogic.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/survival/HempDiscoveryLogic.java new file mode 100644 index 0000000..1559422 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/survival/HempDiscoveryLogic.java @@ -0,0 +1,115 @@ +package io.github.koka.canaplia.survival; + +import io.github.koka.canaplia.hemp.HempVariant; +import java.util.Optional; +import net.minecraft.world.level.block.Block; +import net.minecraft.core.registries.BuiltInRegistries; + +final class HempDiscoveryLogic { + private HempDiscoveryLogic() { + } + + static float getBaseChance(Block block) { + return getBaseChance(BuiltInRegistries.BLOCK.getKey(block).toString()); + } + + static float getBaseChance(String blockId) { + return switch (blockId) { + case "minecraft:short_grass" -> 0.060F; + case "minecraft:tall_grass" -> 0.100F; + case "minecraft:short_dry_grass" -> 0.060F; + case "minecraft:tall_dry_grass" -> 0.100F; + case "minecraft:fern" -> 0.070F; + case "minecraft:large_fern" -> 0.100F; + case "minecraft:dead_bush" -> 0.100F; + case "minecraft:moss_carpet" -> 0.070F; + case "minecraft:hanging_roots" -> 0.100F; + case "minecraft:cave_vines", "minecraft:cave_vines_plant" -> 0.060F; + case "minecraft:crimson_roots", "minecraft:warped_roots" -> 0.020F; + case "minecraft:nether_sprouts", "minecraft:chorus_plant" -> 0.015F; + case "minecraft:weeping_vines", "minecraft:weeping_vines_plant", "minecraft:twisting_vines", "minecraft:twisting_vines_plant" -> 0.010F; + case "minecraft:chorus_flower" -> 0.020F; + default -> 0.0F; + }; + } + + static Optional resolveVariant(Block block, HempEnvironment environment) { + return resolveVariant(BuiltInRegistries.BLOCK.getKey(block).toString(), environment); + } + + static Optional resolveVariant(String blockId, HempEnvironment environment) { + if (blockId.equals("minecraft:short_dry_grass") || blockId.equals("minecraft:tall_dry_grass")) { + return Optional.of(HempVariant.OLIVE); + } + + if (blockId.equals("minecraft:short_grass") || blockId.equals("minecraft:tall_grass")) { + if ( + environment.dryArea() + || environment.biomeContains("savanna") + || environment.biomeContains("desert") + || environment.biomeContains("badlands") + ) { + return Optional.of(HempVariant.OLIVE); + } + + if ( + environment.floweringArea() + || environment.biomeContains("meadow") + || environment.biomeContains("flower_forest") + || environment.biomeContains("cherry_grove") + ) { + return Optional.of(HempVariant.TENDER); + } + + return Optional.of(HempVariant.COMMON); + } + + if (blockId.equals("minecraft:fern") || blockId.equals("minecraft:large_fern")) { + if ( + environment.coldBiome() + || environment.snowOrIceNearby() + || environment.biomeContains("snowy") + || environment.biomeContains("grove") + ) { + return Optional.of(HempVariant.ASHEN); + } + + return Optional.of(HempVariant.DARK); + } + + if (blockId.equals("minecraft:dead_bush")) { + if (environment.dryArea() || environment.biomeContains("badlands") || environment.biomeContains("desert")) { + return Optional.of(HempVariant.AMBER); + } + + return Optional.of(HempVariant.OLIVE); + } + + if ( + blockId.equals("minecraft:moss_carpet") + || blockId.equals("minecraft:hanging_roots") + || blockId.equals("minecraft:cave_vines") + || blockId.equals("minecraft:cave_vines_plant") + ) { + return Optional.of(HempVariant.MOSS); + } + + if ( + blockId.equals("minecraft:crimson_roots") + || blockId.equals("minecraft:warped_roots") + || blockId.equals("minecraft:nether_sprouts") + || blockId.equals("minecraft:weeping_vines") + || blockId.equals("minecraft:weeping_vines_plant") + || blockId.equals("minecraft:twisting_vines") + || blockId.equals("minecraft:twisting_vines_plant") + ) { + return Optional.of(HempVariant.EMBER); + } + + if (blockId.equals("minecraft:chorus_plant") || blockId.equals("minecraft:chorus_flower")) { + return Optional.of(HempVariant.INDIGO); + } + + return Optional.empty(); + } +} diff --git a/Farming/canaplia/src/main/java/io/github/koka/canaplia/survival/HempEnvironment.java b/Farming/canaplia/src/main/java/io/github/koka/canaplia/survival/HempEnvironment.java new file mode 100644 index 0000000..43d24f0 --- /dev/null +++ b/Farming/canaplia/src/main/java/io/github/koka/canaplia/survival/HempEnvironment.java @@ -0,0 +1,118 @@ +package io.github.koka.canaplia.survival; + +import java.util.function.Predicate; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.material.Fluids; +import net.minecraft.tags.BlockTags; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.biome.Biome; + +record HempEnvironment( + String biomePath, + boolean warmBiome, + boolean coldBiome, + boolean humidArea, + boolean dryArea, + boolean lowLight, + boolean floweringArea, + boolean snowOrIceNearby, + boolean waterTouchingFarmland, + boolean skyVisible, + boolean day, + boolean night, + boolean dawnOrDusk +) { + static HempEnvironment probe(ServerLevel world, BlockPos pos) { + Biome biome = world.getBiome(pos).value(); + String biomePath = world.getBiome(pos) + .unwrapKey() + .map(key -> key.identifier().getPath()) + .orElse(""); + float temperature = biome.getBaseTemperature(); + boolean coldBiome = biome.shouldSnow(world, pos) || temperature <= 0.30F; + boolean warmBiome = !coldBiome && temperature >= 0.90F; + boolean humidArea = world.dimension() != Level.NETHER + && ( + biome.hasPrecipitation() + || biomePath.contains("lush_caves") + || biomePath.contains("swamp") + || biomePath.contains("mangrove") + || hasNearbyWater(world, pos, 2) + ); + long timeOfDay = world.getLevelData().getGameTime() % 24000L; + + return new HempEnvironment( + biomePath, + warmBiome, + coldBiome, + humidArea, + warmBiome && !humidArea, + world.getMaxLocalRawBrightness(pos) <= 7, + hasNearbyFlowers(world, pos, 2), + hasNearbySnowOrIce(world, pos, 2), + hasWaterTouchingFarmland(world, pos.below()), + world.canSeeSkyFromBelowWater(pos), + timeOfDay < 12000L, + timeOfDay >= 13000L && timeOfDay < 23000L, + timeOfDay <= 1500L || timeOfDay >= 23000L || timeOfDay >= 11500L && timeOfDay <= 13000L + ); + } + + boolean biomeContains(String needle) { + return this.biomePath.contains(needle); + } + + private static boolean hasNearbyFlowers(ServerLevel world, BlockPos center, int radius) { + return hasNearbyBlock(world, center, radius, state -> state.is(BlockTags.FLOWERS)); + } + + private static boolean hasNearbySnowOrIce(ServerLevel world, BlockPos center, int radius) { + return hasNearbyBlock( + world, + center, + radius, + state -> state.is(BlockTags.ICE) || state.is(Blocks.SNOW) || state.is(Blocks.SNOW_BLOCK) || state.is(Blocks.POWDER_SNOW) + ); + } + + private static boolean hasNearbyWater(ServerLevel world, BlockPos center, int radius) { + return hasNearbyBlock(world, center, radius, state -> state.getFluidState().getType().isSame(Fluids.WATER)); + } + + private static boolean hasWaterTouchingFarmland(ServerLevel world, BlockPos farmlandPos) { + if (!world.getBlockState(farmlandPos).is(Blocks.FARMLAND)) { + return false; + } + + for (int dx = -1; dx <= 1; dx++) { + for (int dz = -1; dz <= 1; dz++) { + if (Math.abs(dx) + Math.abs(dz) != 1) { + continue; + } + + if (world.getBlockState(farmlandPos.offset(dx, 0, dz)).getFluidState().getType().isSame(Fluids.WATER)) { + return true; + } + } + } + + return false; + } + + private static boolean hasNearbyBlock(ServerLevel world, BlockPos center, int radius, Predicate predicate) { + for (int dx = -radius; dx <= radius; dx++) { + for (int dy = -1; dy <= 1; dy++) { + for (int dz = -radius; dz <= radius; dz++) { + if (predicate.test(world.getBlockState(center.offset(dx, dy, dz)))) { + return true; + } + } + } + } + + return false; + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/blockstates/hemp_crop.json b/Farming/canaplia/src/main/resources/assets/canaplia/blockstates/hemp_crop.json new file mode 100644 index 0000000..1fa9883 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/blockstates/hemp_crop.json @@ -0,0 +1,1428 @@ +{ + "multipart": [ + { + "when": { + "age": "0", + "tall": "false", + "variant": "common" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "common" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "common" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "common" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "common" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "common" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "common" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "common" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7" + } + }, + { + "when": { + "tall": "true", + "variant": "common" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "tender" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_tender" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "tender" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_tender" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "tender" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_tender" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "tender" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_tender" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "tender" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_tender" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "tender" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_tender" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "tender" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_tender" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "tender" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_tender" + } + }, + { + "when": { + "tall": "true", + "variant": "tender" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_tender" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "olive" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_olive" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "olive" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_olive" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "olive" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_olive" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "olive" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_olive" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "olive" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_olive" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "olive" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_olive" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "olive" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_olive" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "olive" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_olive" + } + }, + { + "when": { + "tall": "true", + "variant": "olive" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_olive" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "dark" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_dark" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "dark" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_dark" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "dark" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_dark" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "dark" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_dark" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "dark" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_dark" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "dark" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_dark" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "dark" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_dark" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "dark" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_dark" + } + }, + { + "when": { + "tall": "true", + "variant": "dark" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_dark" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "ashen" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_ashen" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "ashen" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_ashen" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "ashen" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_ashen" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "ashen" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_ashen" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "ashen" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_ashen" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "ashen" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_ashen" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "ashen" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_ashen" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "ashen" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_ashen" + } + }, + { + "when": { + "tall": "true", + "variant": "ashen" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_ashen" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "moss" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_moss" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "moss" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_moss" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "moss" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_moss" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "moss" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_moss" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "moss" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_moss" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "moss" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_moss" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "moss" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_moss" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "moss" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_moss" + } + }, + { + "when": { + "tall": "true", + "variant": "moss" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_moss" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "gold" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_gold" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "gold" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_gold" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "gold" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_gold" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "gold" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_gold" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "gold" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_gold" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "gold" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_gold" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "gold" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_gold" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "gold" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_gold" + } + }, + { + "when": { + "tall": "true", + "variant": "gold" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_gold" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "amber" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_amber" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "amber" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_amber" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "amber" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_amber" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "amber" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_amber" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "amber" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_amber" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "amber" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_amber" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "amber" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_amber" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "amber" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_amber" + } + }, + { + "when": { + "tall": "true", + "variant": "amber" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_amber" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "bluish" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_bluish" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "bluish" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_bluish" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "bluish" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_bluish" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "bluish" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_bluish" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "bluish" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_bluish" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "bluish" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_bluish" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "bluish" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_bluish" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "bluish" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_bluish" + } + }, + { + "when": { + "tall": "true", + "variant": "bluish" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_bluish" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "pink" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_pink" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "pink" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_pink" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "pink" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_pink" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "pink" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_pink" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "pink" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_pink" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "pink" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_pink" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "pink" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_pink" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "pink" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_pink" + } + }, + { + "when": { + "tall": "true", + "variant": "pink" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_pink" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "coral" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_coral" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "coral" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_coral" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "coral" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_coral" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "coral" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_coral" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "coral" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_coral" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "coral" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_coral" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "coral" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_coral" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "coral" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_coral" + } + }, + { + "when": { + "tall": "true", + "variant": "coral" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_coral" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "purple" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_purple" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "purple" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_purple" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "purple" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_purple" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "purple" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_purple" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "purple" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_purple" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "purple" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_purple" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "purple" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_purple" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "purple" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_purple" + } + }, + { + "when": { + "tall": "true", + "variant": "purple" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_purple" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "indigo" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_indigo" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "indigo" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_indigo" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "indigo" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_indigo" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "indigo" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_indigo" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "indigo" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_indigo" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "indigo" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_indigo" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "indigo" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_indigo" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "indigo" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_indigo" + } + }, + { + "when": { + "tall": "true", + "variant": "indigo" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_indigo" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "varieg" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_varieg" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "varieg" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_varieg" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "varieg" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_varieg" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "varieg" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_varieg" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "varieg" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_varieg" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "varieg" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_varieg" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "varieg" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_varieg" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "varieg" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_varieg" + } + }, + { + "when": { + "tall": "true", + "variant": "varieg" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_varieg" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "lunar" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_lunar" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "lunar" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_lunar" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "lunar" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_lunar" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "lunar" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_lunar" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "lunar" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_lunar" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "lunar" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_lunar" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "lunar" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_lunar" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "lunar" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_lunar" + } + }, + { + "when": { + "tall": "true", + "variant": "lunar" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_lunar" + } + }, + { + "when": { + "age": "0", + "tall": "false", + "variant": "ember" + }, + "apply": { + "model": "canaplia:block/hemp_stage_0_ember" + } + }, + { + "when": { + "age": "1", + "tall": "false", + "variant": "ember" + }, + "apply": { + "model": "canaplia:block/hemp_stage_1_ember" + } + }, + { + "when": { + "age": "2", + "tall": "false", + "variant": "ember" + }, + "apply": { + "model": "canaplia:block/hemp_stage_2_ember" + } + }, + { + "when": { + "age": "3", + "tall": "false", + "variant": "ember" + }, + "apply": { + "model": "canaplia:block/hemp_stage_3_ember" + } + }, + { + "when": { + "age": "4", + "tall": "false", + "variant": "ember" + }, + "apply": { + "model": "canaplia:block/hemp_stage_4_ember" + } + }, + { + "when": { + "age": "5", + "tall": "false", + "variant": "ember" + }, + "apply": { + "model": "canaplia:block/hemp_stage_5_ember" + } + }, + { + "when": { + "age": "6", + "tall": "false", + "variant": "ember" + }, + "apply": { + "model": "canaplia:block/hemp_stage_6_ember" + } + }, + { + "when": { + "age": "7", + "tall": "false", + "variant": "ember" + }, + "apply": { + "model": "canaplia:block/hemp_stage_7_ember" + } + }, + { + "when": { + "tall": "true", + "variant": "ember" + }, + "apply": { + "model": "canaplia:block/hemp_tall_bottom_ember" + } + } + ] +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/blockstates/hemp_top.json b/Farming/canaplia/src/main/resources/assets/canaplia/blockstates/hemp_top.json new file mode 100644 index 0000000..9ea50eb --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/blockstates/hemp_top.json @@ -0,0 +1,52 @@ +{ + "variants": { + "variant=common": { + "model": "canaplia:block/hemp_tall_top" + }, + "variant=tender": { + "model": "canaplia:block/hemp_tall_top_tender" + }, + "variant=olive": { + "model": "canaplia:block/hemp_tall_top_olive" + }, + "variant=dark": { + "model": "canaplia:block/hemp_tall_top_dark" + }, + "variant=ashen": { + "model": "canaplia:block/hemp_tall_top_ashen" + }, + "variant=moss": { + "model": "canaplia:block/hemp_tall_top_moss" + }, + "variant=gold": { + "model": "canaplia:block/hemp_tall_top_gold" + }, + "variant=amber": { + "model": "canaplia:block/hemp_tall_top_amber" + }, + "variant=bluish": { + "model": "canaplia:block/hemp_tall_top_bluish" + }, + "variant=pink": { + "model": "canaplia:block/hemp_tall_top_pink" + }, + "variant=coral": { + "model": "canaplia:block/hemp_tall_top_coral" + }, + "variant=purple": { + "model": "canaplia:block/hemp_tall_top_purple" + }, + "variant=indigo": { + "model": "canaplia:block/hemp_tall_top_indigo" + }, + "variant=varieg": { + "model": "canaplia:block/hemp_tall_top_varieg" + }, + "variant=lunar": { + "model": "canaplia:block/hemp_tall_top_lunar" + }, + "variant=ember": { + "model": "canaplia:block/hemp_tall_top_ember" + } + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/blockstates/resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/blockstates/resin_block.json new file mode 100644 index 0000000..8479938 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/blockstates/resin_block.json @@ -0,0 +1,100 @@ +{ + "variants": { + "lit=false,variant=common": { + "model": "canaplia:block/resin_block" + }, + "lit=true,variant=common": { + "model": "canaplia:block/resin_block" + }, + "lit=false,variant=tender": { + "model": "canaplia:block/tender_resin_block" + }, + "lit=true,variant=tender": { + "model": "canaplia:block/tender_resin_block" + }, + "lit=false,variant=olive": { + "model": "canaplia:block/olive_resin_block" + }, + "lit=true,variant=olive": { + "model": "canaplia:block/olive_resin_block" + }, + "lit=false,variant=dark": { + "model": "canaplia:block/dark_resin_block" + }, + "lit=true,variant=dark": { + "model": "canaplia:block/dark_resin_block" + }, + "lit=false,variant=ashen": { + "model": "canaplia:block/ashen_resin_block" + }, + "lit=true,variant=ashen": { + "model": "canaplia:block/ashen_resin_block" + }, + "lit=false,variant=moss": { + "model": "canaplia:block/moss_resin_block" + }, + "lit=true,variant=moss": { + "model": "canaplia:block/moss_resin_block" + }, + "lit=false,variant=gold": { + "model": "canaplia:block/gold_resin_block" + }, + "lit=true,variant=gold": { + "model": "canaplia:block/gold_resin_block" + }, + "lit=false,variant=amber": { + "model": "canaplia:block/amber_resin_block" + }, + "lit=true,variant=amber": { + "model": "canaplia:block/amber_resin_block" + }, + "lit=false,variant=bluish": { + "model": "canaplia:block/bluish_resin_block" + }, + "lit=true,variant=bluish": { + "model": "canaplia:block/bluish_resin_block" + }, + "lit=false,variant=pink": { + "model": "canaplia:block/pink_resin_block" + }, + "lit=true,variant=pink": { + "model": "canaplia:block/pink_resin_block" + }, + "lit=false,variant=coral": { + "model": "canaplia:block/coral_resin_block" + }, + "lit=true,variant=coral": { + "model": "canaplia:block/coral_resin_block" + }, + "lit=false,variant=purple": { + "model": "canaplia:block/purple_resin_block" + }, + "lit=true,variant=purple": { + "model": "canaplia:block/purple_resin_block" + }, + "lit=false,variant=indigo": { + "model": "canaplia:block/indigo_resin_block" + }, + "lit=true,variant=indigo": { + "model": "canaplia:block/indigo_resin_block" + }, + "lit=false,variant=varieg": { + "model": "canaplia:block/varieg_resin_block" + }, + "lit=true,variant=varieg": { + "model": "canaplia:block/varieg_resin_block" + }, + "lit=false,variant=lunar": { + "model": "canaplia:block/lunar_resin_block" + }, + "lit=true,variant=lunar": { + "model": "canaplia:block/lunar_resin_block" + }, + "lit=false,variant=ember": { + "model": "canaplia:block/ember_resin_block" + }, + "lit=true,variant=ember": { + "model": "canaplia:block/ember_resin_block" + } + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/amber_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/amber_hemp_bud.json new file mode 100644 index 0000000..6c0b66a --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/amber_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/amber_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/amber_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/amber_hemp_seeds.json new file mode 100644 index 0000000..580af6c --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/amber_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/amber_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/amber_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/amber_resin_block.json new file mode 100644 index 0000000..9377ec3 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/amber_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/amber_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/amber_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/amber_rolled_joint.json new file mode 100644 index 0000000..414870d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/amber_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/amber_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/ashen_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/ashen_hemp_bud.json new file mode 100644 index 0000000..683e5e4 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/ashen_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/ashen_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/ashen_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/ashen_hemp_seeds.json new file mode 100644 index 0000000..e3d0d69 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/ashen_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/ashen_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/ashen_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/ashen_resin_block.json new file mode 100644 index 0000000..11a06d3 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/ashen_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/ashen_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/ashen_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/ashen_rolled_joint.json new file mode 100644 index 0000000..1f48fd6 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/ashen_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/ashen_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/bluish_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/bluish_hemp_bud.json new file mode 100644 index 0000000..1bdc9d5 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/bluish_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/bluish_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/bluish_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/bluish_hemp_seeds.json new file mode 100644 index 0000000..5e6f1f0 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/bluish_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/bluish_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/bluish_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/bluish_resin_block.json new file mode 100644 index 0000000..a223891 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/bluish_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/bluish_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/bluish_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/bluish_rolled_joint.json new file mode 100644 index 0000000..a3e08db --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/bluish_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/bluish_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/coral_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/coral_hemp_bud.json new file mode 100644 index 0000000..175fe4f --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/coral_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/coral_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/coral_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/coral_hemp_seeds.json new file mode 100644 index 0000000..245a40d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/coral_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/coral_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/coral_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/coral_resin_block.json new file mode 100644 index 0000000..4b6f73d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/coral_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/coral_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/coral_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/coral_rolled_joint.json new file mode 100644 index 0000000..73af86d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/coral_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/coral_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/dark_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/dark_hemp_bud.json new file mode 100644 index 0000000..0526ecc --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/dark_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/dark_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/dark_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/dark_hemp_seeds.json new file mode 100644 index 0000000..e7069ba --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/dark_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/dark_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/dark_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/dark_resin_block.json new file mode 100644 index 0000000..e53c230 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/dark_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/dark_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/dark_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/dark_rolled_joint.json new file mode 100644 index 0000000..0da5654 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/dark_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/dark_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/ember_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/ember_hemp_bud.json new file mode 100644 index 0000000..ae4c6c5 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/ember_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/ember_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/ember_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/ember_hemp_seeds.json new file mode 100644 index 0000000..e9ea3d0 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/ember_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/ember_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/ember_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/ember_resin_block.json new file mode 100644 index 0000000..99cf198 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/ember_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/ember_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/ember_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/ember_rolled_joint.json new file mode 100644 index 0000000..1ac49a2 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/ember_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/ember_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/gold_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/gold_hemp_bud.json new file mode 100644 index 0000000..daccb67 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/gold_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/gold_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/gold_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/gold_hemp_seeds.json new file mode 100644 index 0000000..96e0305 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/gold_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/gold_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/gold_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/gold_resin_block.json new file mode 100644 index 0000000..a88ff81 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/gold_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/gold_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/gold_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/gold_rolled_joint.json new file mode 100644 index 0000000..0ff0404 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/gold_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/gold_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/hemp_bud.json new file mode 100644 index 0000000..e4bcbe4 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/hemp_seeds.json new file mode 100644 index 0000000..24b5499 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/indigo_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/indigo_hemp_bud.json new file mode 100644 index 0000000..1c00703 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/indigo_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/indigo_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/indigo_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/indigo_hemp_seeds.json new file mode 100644 index 0000000..0eb08d0 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/indigo_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/indigo_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/indigo_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/indigo_resin_block.json new file mode 100644 index 0000000..68260d0 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/indigo_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/indigo_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/indigo_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/indigo_rolled_joint.json new file mode 100644 index 0000000..cb7c11a --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/indigo_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/indigo_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/lunar_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/lunar_hemp_bud.json new file mode 100644 index 0000000..0e2f73c --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/lunar_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/lunar_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/lunar_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/lunar_hemp_seeds.json new file mode 100644 index 0000000..392afc1 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/lunar_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/lunar_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/lunar_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/lunar_resin_block.json new file mode 100644 index 0000000..9f596d0 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/lunar_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/lunar_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/lunar_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/lunar_rolled_joint.json new file mode 100644 index 0000000..69e5388 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/lunar_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/lunar_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/moss_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/moss_hemp_bud.json new file mode 100644 index 0000000..2f21bc1 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/moss_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/moss_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/moss_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/moss_hemp_seeds.json new file mode 100644 index 0000000..0297514 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/moss_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/moss_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/moss_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/moss_resin_block.json new file mode 100644 index 0000000..2f18a7e --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/moss_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/moss_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/moss_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/moss_rolled_joint.json new file mode 100644 index 0000000..00ee8fd --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/moss_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/moss_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/olive_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/olive_hemp_bud.json new file mode 100644 index 0000000..f1a2f57 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/olive_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/olive_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/olive_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/olive_hemp_seeds.json new file mode 100644 index 0000000..bc0a56b --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/olive_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/olive_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/olive_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/olive_resin_block.json new file mode 100644 index 0000000..8b84794 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/olive_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/olive_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/olive_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/olive_rolled_joint.json new file mode 100644 index 0000000..4d41fab --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/olive_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/olive_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/pink_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/pink_hemp_bud.json new file mode 100644 index 0000000..2f38bc0 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/pink_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/pink_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/pink_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/pink_hemp_seeds.json new file mode 100644 index 0000000..3f4c83d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/pink_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/pink_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/pink_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/pink_resin_block.json new file mode 100644 index 0000000..a4832e6 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/pink_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/pink_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/pink_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/pink_rolled_joint.json new file mode 100644 index 0000000..94db471 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/pink_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/pink_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/purple_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/purple_hemp_bud.json new file mode 100644 index 0000000..c5537e9 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/purple_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/purple_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/purple_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/purple_hemp_seeds.json new file mode 100644 index 0000000..001cff3 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/purple_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/purple_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/purple_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/purple_resin_block.json new file mode 100644 index 0000000..d68d698 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/purple_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/purple_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/purple_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/purple_rolled_joint.json new file mode 100644 index 0000000..d78646f --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/purple_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/purple_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/resin_block.json new file mode 100644 index 0000000..3e0879e --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/rolled_joint.json new file mode 100644 index 0000000..0fb4ddf --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/tender_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/tender_hemp_bud.json new file mode 100644 index 0000000..04f586b --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/tender_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/tender_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/tender_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/tender_hemp_seeds.json new file mode 100644 index 0000000..3e88d5e --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/tender_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/tender_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/tender_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/tender_resin_block.json new file mode 100644 index 0000000..97f59fa --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/tender_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/tender_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/tender_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/tender_rolled_joint.json new file mode 100644 index 0000000..5a9cf8a --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/tender_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/tender_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/varieg_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/varieg_hemp_bud.json new file mode 100644 index 0000000..bba2dd2 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/varieg_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/varieg_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/varieg_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/varieg_hemp_seeds.json new file mode 100644 index 0000000..dce9807 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/varieg_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/varieg_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/varieg_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/varieg_resin_block.json new file mode 100644 index 0000000..276f22e --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/varieg_resin_block.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/varieg_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/items/varieg_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/items/varieg_rolled_joint.json new file mode 100644 index 0000000..43a3645 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/items/varieg_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canaplia:item/varieg_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/lang/en_us.json b/Farming/canaplia/src/main/resources/assets/canaplia/lang/en_us.json new file mode 100644 index 0000000..873a429 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/lang/en_us.json @@ -0,0 +1,69 @@ +{ + "block.canaplia.hemp_crop": "Hemp Crop", + "block.canaplia.hemp_top": "Tall Hemp", + "item.canaplia.hemp_seeds": "Hemp Seeds", + "item.canaplia.hemp_bud": "Hemp Bud", + "item.canaplia.rolled_joint": "Rolled Joint", + "item.canaplia.tender_hemp_seeds": "Tender Hemp Seeds", + "item.canaplia.tender_hemp_bud": "Tender Hemp Bud", + "item.canaplia.tender_rolled_joint": "Tender Hemp Rolled Joint", + "item.canaplia.olive_hemp_seeds": "Olive Hemp Seeds", + "item.canaplia.olive_hemp_bud": "Olive Hemp Bud", + "item.canaplia.olive_rolled_joint": "Olive Hemp Rolled Joint", + "item.canaplia.dark_hemp_seeds": "Dark Hemp Seeds", + "item.canaplia.dark_hemp_bud": "Dark Hemp Bud", + "item.canaplia.dark_rolled_joint": "Dark Hemp Rolled Joint", + "item.canaplia.ashen_hemp_seeds": "Ashen Hemp Seeds", + "item.canaplia.ashen_hemp_bud": "Ashen Hemp Bud", + "item.canaplia.ashen_rolled_joint": "Ashen Hemp Rolled Joint", + "item.canaplia.moss_hemp_seeds": "Moss Hemp Seeds", + "item.canaplia.moss_hemp_bud": "Moss Hemp Bud", + "item.canaplia.moss_rolled_joint": "Moss Hemp Rolled Joint", + "item.canaplia.gold_hemp_seeds": "Golden Hemp Seeds", + "item.canaplia.gold_hemp_bud": "Golden Hemp Bud", + "item.canaplia.gold_rolled_joint": "Golden Hemp Rolled Joint", + "item.canaplia.amber_hemp_seeds": "Amber Hemp Seeds", + "item.canaplia.amber_hemp_bud": "Amber Hemp Bud", + "item.canaplia.amber_rolled_joint": "Amber Hemp Rolled Joint", + "item.canaplia.bluish_hemp_seeds": "Bluish Hemp Seeds", + "item.canaplia.bluish_hemp_bud": "Bluish Hemp Bud", + "item.canaplia.bluish_rolled_joint": "Bluish Hemp Rolled Joint", + "item.canaplia.pink_hemp_seeds": "Pink Hemp Seeds", + "item.canaplia.pink_hemp_bud": "Pink Hemp Bud", + "item.canaplia.pink_rolled_joint": "Pink Hemp Rolled Joint", + "item.canaplia.coral_hemp_seeds": "Coral Hemp Seeds", + "item.canaplia.coral_hemp_bud": "Coral Hemp Bud", + "item.canaplia.coral_rolled_joint": "Coral Hemp Rolled Joint", + "item.canaplia.purple_hemp_seeds": "Purple Hemp Seeds", + "item.canaplia.purple_hemp_bud": "Purple Hemp Bud", + "item.canaplia.purple_rolled_joint": "Purple Hemp Rolled Joint", + "item.canaplia.indigo_hemp_seeds": "Indigo Hemp Seeds", + "item.canaplia.indigo_hemp_bud": "Indigo Hemp Bud", + "item.canaplia.indigo_rolled_joint": "Indigo Hemp Rolled Joint", + "item.canaplia.varieg_hemp_seeds": "Variegated Hemp Seeds", + "item.canaplia.varieg_hemp_bud": "Variegated Hemp Bud", + "item.canaplia.varieg_rolled_joint": "Variegated Hemp Rolled Joint", + "item.canaplia.lunar_hemp_seeds": "Lunar Hemp Seeds", + "item.canaplia.lunar_hemp_bud": "Lunar Hemp Bud", + "item.canaplia.lunar_rolled_joint": "Lunar Hemp Rolled Joint", + "item.canaplia.ember_hemp_seeds": "Ember Hemp Seeds", + "item.canaplia.ember_hemp_bud": "Ember Hemp Bud", + "item.canaplia.ember_rolled_joint": "Ember Hemp Rolled Joint", + "block.canaplia.resin_block": "Resin Block", + "item.canaplia.resin_block": "Common Resin Block", + "item.canaplia.tender_resin_block": "Tender Resin Block", + "item.canaplia.olive_resin_block": "Olive Resin Block", + "item.canaplia.dark_resin_block": "Dark Resin Block", + "item.canaplia.ashen_resin_block": "Ashen Resin Block", + "item.canaplia.moss_resin_block": "Moss Resin Block", + "item.canaplia.gold_resin_block": "Golden Resin Block", + "item.canaplia.amber_resin_block": "Amber Resin Block", + "item.canaplia.bluish_resin_block": "Bluish Resin Block", + "item.canaplia.pink_resin_block": "Pink Resin Block", + "item.canaplia.coral_resin_block": "Coral Resin Block", + "item.canaplia.purple_resin_block": "Purple Resin Block", + "item.canaplia.indigo_resin_block": "Indigo Resin Block", + "item.canaplia.varieg_resin_block": "Variegated Resin Block", + "item.canaplia.lunar_resin_block": "Lunar Resin Block", + "item.canaplia.ember_resin_block": "Ember Resin Block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/lang/fr_fr.json b/Farming/canaplia/src/main/resources/assets/canaplia/lang/fr_fr.json new file mode 100644 index 0000000..5d9398b --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/lang/fr_fr.json @@ -0,0 +1,69 @@ +{ + "block.canaplia.hemp_crop": "Plant de chanvre", + "block.canaplia.hemp_top": "Chanvre haut", + "item.canaplia.hemp_seeds": "Graines de chanvre", + "item.canaplia.hemp_bud": "Fleur de chanvre", + "item.canaplia.rolled_joint": "Joint roule", + "item.canaplia.tender_hemp_seeds": "Graines de chanvre tendre", + "item.canaplia.tender_hemp_bud": "Fleur de chanvre tendre", + "item.canaplia.tender_rolled_joint": "Joint roule de chanvre tendre", + "item.canaplia.olive_hemp_seeds": "Graines de chanvre olive", + "item.canaplia.olive_hemp_bud": "Fleur de chanvre olive", + "item.canaplia.olive_rolled_joint": "Joint roule de chanvre olive", + "item.canaplia.dark_hemp_seeds": "Graines de chanvre sombre", + "item.canaplia.dark_hemp_bud": "Fleur de chanvre sombre", + "item.canaplia.dark_rolled_joint": "Joint roule de chanvre sombre", + "item.canaplia.ashen_hemp_seeds": "Graines de chanvre cendré", + "item.canaplia.ashen_hemp_bud": "Fleur de chanvre cendré", + "item.canaplia.ashen_rolled_joint": "Joint roule de chanvre cendré", + "item.canaplia.moss_hemp_seeds": "Graines de chanvre mousse", + "item.canaplia.moss_hemp_bud": "Fleur de chanvre mousse", + "item.canaplia.moss_rolled_joint": "Joint roule de chanvre mousse", + "item.canaplia.gold_hemp_seeds": "Graines de chanvre doré", + "item.canaplia.gold_hemp_bud": "Fleur de chanvre doré", + "item.canaplia.gold_rolled_joint": "Joint roule de chanvre doré", + "item.canaplia.amber_hemp_seeds": "Graines de chanvre ambré", + "item.canaplia.amber_hemp_bud": "Fleur de chanvre ambré", + "item.canaplia.amber_rolled_joint": "Joint roule de chanvre ambré", + "item.canaplia.bluish_hemp_seeds": "Graines de chanvre bleuté", + "item.canaplia.bluish_hemp_bud": "Fleur de chanvre bleuté", + "item.canaplia.bluish_rolled_joint": "Joint roule de chanvre bleuté", + "item.canaplia.pink_hemp_seeds": "Graines de chanvre rosé", + "item.canaplia.pink_hemp_bud": "Fleur de chanvre rosé", + "item.canaplia.pink_rolled_joint": "Joint roule de chanvre rosé", + "item.canaplia.coral_hemp_seeds": "Graines de chanvre corail", + "item.canaplia.coral_hemp_bud": "Fleur de chanvre corail", + "item.canaplia.coral_rolled_joint": "Joint roule de chanvre corail", + "item.canaplia.purple_hemp_seeds": "Graines de chanvre pourpre", + "item.canaplia.purple_hemp_bud": "Fleur de chanvre pourpre", + "item.canaplia.purple_rolled_joint": "Joint roule de chanvre pourpre", + "item.canaplia.indigo_hemp_seeds": "Graines de chanvre indigo", + "item.canaplia.indigo_hemp_bud": "Fleur de chanvre indigo", + "item.canaplia.indigo_rolled_joint": "Joint roule de chanvre indigo", + "item.canaplia.varieg_hemp_seeds": "Graines de chanvre panaché", + "item.canaplia.varieg_hemp_bud": "Fleur de chanvre panaché", + "item.canaplia.varieg_rolled_joint": "Joint roule de chanvre panaché", + "item.canaplia.lunar_hemp_seeds": "Graines de chanvre lunaire", + "item.canaplia.lunar_hemp_bud": "Fleur de chanvre lunaire", + "item.canaplia.lunar_rolled_joint": "Joint roule de chanvre lunaire", + "item.canaplia.ember_hemp_seeds": "Graines de chanvre braise", + "item.canaplia.ember_hemp_bud": "Fleur de chanvre braise", + "item.canaplia.ember_rolled_joint": "Joint roule de chanvre braise", + "block.canaplia.resin_block": "Bloc de résine", + "item.canaplia.resin_block": "Résine commune", + "item.canaplia.tender_resin_block": "Résine tendre", + "item.canaplia.olive_resin_block": "Résine olive", + "item.canaplia.dark_resin_block": "Résine sombre", + "item.canaplia.ashen_resin_block": "Résine cendrée", + "item.canaplia.moss_resin_block": "Résine mousse", + "item.canaplia.gold_resin_block": "Résine dorée", + "item.canaplia.amber_resin_block": "Résine ambrée", + "item.canaplia.bluish_resin_block": "Résine bleutée", + "item.canaplia.pink_resin_block": "Résine rosée", + "item.canaplia.coral_resin_block": "Résine corail", + "item.canaplia.purple_resin_block": "Résine pourpre", + "item.canaplia.indigo_resin_block": "Résine indigo", + "item.canaplia.varieg_resin_block": "Résine panachée", + "item.canaplia.lunar_resin_block": "Résine lunaire", + "item.canaplia.ember_resin_block": "Résine braise" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/amber_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/amber_resin_block.json new file mode 100644 index 0000000..170542d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/amber_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/amber_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/ashen_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/ashen_resin_block.json new file mode 100644 index 0000000..9962c59 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/ashen_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/ashen_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/bluish_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/bluish_resin_block.json new file mode 100644 index 0000000..4196f76 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/bluish_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/bluish_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/coral_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/coral_resin_block.json new file mode 100644 index 0000000..f770737 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/coral_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/coral_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/dark_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/dark_resin_block.json new file mode 100644 index 0000000..0d4c58c --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/dark_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/dark_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/ember_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/ember_resin_block.json new file mode 100644 index 0000000..9d4ad8c --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/ember_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/ember_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/gold_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/gold_resin_block.json new file mode 100644 index 0000000..d8a7075 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/gold_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/gold_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0.json new file mode 100644 index 0000000..86a2ff0 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_amber.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_amber.json new file mode 100644 index 0000000..8b924dc --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_amber.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_amber" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_ashen.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_ashen.json new file mode 100644 index 0000000..5686243 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_ashen.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_ashen" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_bluish.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_bluish.json new file mode 100644 index 0000000..49240a5 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_bluish.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_bluish" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_coral.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_coral.json new file mode 100644 index 0000000..91c6d20 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_coral.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_coral" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_dark.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_dark.json new file mode 100644 index 0000000..c386872 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_dark.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_dark" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_ember.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_ember.json new file mode 100644 index 0000000..c9fffd8 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_ember.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_ember" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_gold.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_gold.json new file mode 100644 index 0000000..0996eae --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_gold.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_gold" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_indigo.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_indigo.json new file mode 100644 index 0000000..7054e8d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_indigo.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_indigo" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_lunar.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_lunar.json new file mode 100644 index 0000000..da535b5 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_lunar.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_lunar" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_moss.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_moss.json new file mode 100644 index 0000000..650c25f --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_moss.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_moss" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_olive.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_olive.json new file mode 100644 index 0000000..310daac --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_olive.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_olive" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_pink.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_pink.json new file mode 100644 index 0000000..70e5e26 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_pink" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_purple.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_purple.json new file mode 100644 index 0000000..8d10644 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_purple" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_tender.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_tender.json new file mode 100644 index 0000000..fdf5dd6 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_tender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_tender" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_varieg.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_varieg.json new file mode 100644 index 0000000..4e8499c --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_0_varieg.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_0_varieg" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1.json new file mode 100644 index 0000000..4e07206 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_amber.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_amber.json new file mode 100644 index 0000000..1bd1759 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_amber.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_amber" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_ashen.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_ashen.json new file mode 100644 index 0000000..bb7b3cc --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_ashen.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_ashen" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_bluish.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_bluish.json new file mode 100644 index 0000000..d7a53d6 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_bluish.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_bluish" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_coral.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_coral.json new file mode 100644 index 0000000..383e4bb --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_coral.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_coral" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_dark.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_dark.json new file mode 100644 index 0000000..ee7e8c7 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_dark.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_dark" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_ember.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_ember.json new file mode 100644 index 0000000..1eaf3d7 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_ember.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_ember" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_gold.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_gold.json new file mode 100644 index 0000000..136c815 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_gold.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_gold" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_indigo.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_indigo.json new file mode 100644 index 0000000..ec142b8 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_indigo.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_indigo" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_lunar.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_lunar.json new file mode 100644 index 0000000..e280703 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_lunar.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_lunar" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_moss.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_moss.json new file mode 100644 index 0000000..73d776b --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_moss.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_moss" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_olive.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_olive.json new file mode 100644 index 0000000..2890c7d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_olive.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_olive" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_pink.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_pink.json new file mode 100644 index 0000000..7d779e6 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_pink" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_purple.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_purple.json new file mode 100644 index 0000000..b0437a1 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_purple" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_tender.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_tender.json new file mode 100644 index 0000000..657d9c2 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_tender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_tender" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_varieg.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_varieg.json new file mode 100644 index 0000000..ca18b1e --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_1_varieg.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_1_varieg" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2.json new file mode 100644 index 0000000..507ce91 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_amber.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_amber.json new file mode 100644 index 0000000..5658f1e --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_amber.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_amber" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_ashen.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_ashen.json new file mode 100644 index 0000000..a0961cb --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_ashen.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_ashen" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_bluish.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_bluish.json new file mode 100644 index 0000000..cbecbdc --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_bluish.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_bluish" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_coral.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_coral.json new file mode 100644 index 0000000..2ecf74f --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_coral.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_coral" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_dark.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_dark.json new file mode 100644 index 0000000..210d767 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_dark.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_dark" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_ember.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_ember.json new file mode 100644 index 0000000..7a90d6c --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_ember.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_ember" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_gold.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_gold.json new file mode 100644 index 0000000..6142e3d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_gold.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_gold" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_indigo.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_indigo.json new file mode 100644 index 0000000..2f53edf --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_indigo.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_indigo" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_lunar.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_lunar.json new file mode 100644 index 0000000..fd81917 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_lunar.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_lunar" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_moss.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_moss.json new file mode 100644 index 0000000..976a211 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_moss.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_moss" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_olive.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_olive.json new file mode 100644 index 0000000..80c163d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_olive.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_olive" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_pink.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_pink.json new file mode 100644 index 0000000..1c25284 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_pink" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_purple.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_purple.json new file mode 100644 index 0000000..f1eaf9a --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_purple" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_tender.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_tender.json new file mode 100644 index 0000000..6f11463 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_tender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_tender" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_varieg.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_varieg.json new file mode 100644 index 0000000..ed61ef2 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_2_varieg.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_2_varieg" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3.json new file mode 100644 index 0000000..1f7aace --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_amber.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_amber.json new file mode 100644 index 0000000..01fc5df --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_amber.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_amber" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_ashen.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_ashen.json new file mode 100644 index 0000000..0c269b1 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_ashen.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_ashen" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_bluish.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_bluish.json new file mode 100644 index 0000000..0b839d4 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_bluish.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_bluish" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_coral.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_coral.json new file mode 100644 index 0000000..e6f1471 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_coral.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_coral" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_dark.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_dark.json new file mode 100644 index 0000000..9a5c974 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_dark.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_dark" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_ember.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_ember.json new file mode 100644 index 0000000..7ca6096 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_ember.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_ember" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_gold.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_gold.json new file mode 100644 index 0000000..1e34efc --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_gold.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_gold" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_indigo.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_indigo.json new file mode 100644 index 0000000..94b5efd --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_indigo.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_indigo" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_lunar.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_lunar.json new file mode 100644 index 0000000..a6530fb --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_lunar.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_lunar" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_moss.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_moss.json new file mode 100644 index 0000000..64fba70 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_moss.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_moss" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_olive.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_olive.json new file mode 100644 index 0000000..cf46993 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_olive.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_olive" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_pink.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_pink.json new file mode 100644 index 0000000..592cfa2 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_pink" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_purple.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_purple.json new file mode 100644 index 0000000..bba7785 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_purple" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_tender.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_tender.json new file mode 100644 index 0000000..3a57aca --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_tender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_tender" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_varieg.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_varieg.json new file mode 100644 index 0000000..7573137 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_3_varieg.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_3_varieg" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4.json new file mode 100644 index 0000000..f3741e6 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_amber.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_amber.json new file mode 100644 index 0000000..aa8d73d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_amber.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_amber" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_ashen.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_ashen.json new file mode 100644 index 0000000..f1a3827 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_ashen.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_ashen" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_bluish.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_bluish.json new file mode 100644 index 0000000..5a19875 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_bluish.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_bluish" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_coral.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_coral.json new file mode 100644 index 0000000..2f27ce5 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_coral.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_coral" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_dark.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_dark.json new file mode 100644 index 0000000..0686004 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_dark.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_dark" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_ember.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_ember.json new file mode 100644 index 0000000..04c238e --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_ember.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_ember" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_gold.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_gold.json new file mode 100644 index 0000000..ee3c1b9 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_gold.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_gold" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_indigo.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_indigo.json new file mode 100644 index 0000000..2c1472b --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_indigo.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_indigo" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_lunar.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_lunar.json new file mode 100644 index 0000000..e97b222 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_lunar.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_lunar" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_moss.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_moss.json new file mode 100644 index 0000000..3ffda08 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_moss.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_moss" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_olive.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_olive.json new file mode 100644 index 0000000..77bcb70 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_olive.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_olive" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_pink.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_pink.json new file mode 100644 index 0000000..23846b7 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_pink" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_purple.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_purple.json new file mode 100644 index 0000000..e564a21 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_purple" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_tender.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_tender.json new file mode 100644 index 0000000..a0b69d2 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_tender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_tender" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_varieg.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_varieg.json new file mode 100644 index 0000000..8c8ab54 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_4_varieg.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_4_varieg" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5.json new file mode 100644 index 0000000..18c7800 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_amber.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_amber.json new file mode 100644 index 0000000..4c6d5a2 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_amber.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_amber" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_ashen.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_ashen.json new file mode 100644 index 0000000..c2052f6 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_ashen.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_ashen" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_bluish.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_bluish.json new file mode 100644 index 0000000..84d5960 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_bluish.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_bluish" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_coral.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_coral.json new file mode 100644 index 0000000..33925a5 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_coral.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_coral" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_dark.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_dark.json new file mode 100644 index 0000000..a6ff478 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_dark.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_dark" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_ember.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_ember.json new file mode 100644 index 0000000..df92366 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_ember.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_ember" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_gold.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_gold.json new file mode 100644 index 0000000..987832d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_gold.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_gold" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_indigo.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_indigo.json new file mode 100644 index 0000000..31bfd99 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_indigo.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_indigo" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_lunar.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_lunar.json new file mode 100644 index 0000000..f53e116 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_lunar.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_lunar" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_moss.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_moss.json new file mode 100644 index 0000000..2e26079 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_moss.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_moss" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_olive.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_olive.json new file mode 100644 index 0000000..6f6f782 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_olive.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_olive" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_pink.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_pink.json new file mode 100644 index 0000000..e884f4f --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_pink" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_purple.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_purple.json new file mode 100644 index 0000000..0224715 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_purple" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_tender.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_tender.json new file mode 100644 index 0000000..dbb0abb --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_tender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_tender" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_varieg.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_varieg.json new file mode 100644 index 0000000..54cf4fb --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_5_varieg.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_5_varieg" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6.json new file mode 100644 index 0000000..f23683f --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_amber.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_amber.json new file mode 100644 index 0000000..9241921 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_amber.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_amber" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_ashen.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_ashen.json new file mode 100644 index 0000000..698a5b3 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_ashen.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_ashen" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_bluish.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_bluish.json new file mode 100644 index 0000000..55d36a7 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_bluish.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_bluish" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_coral.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_coral.json new file mode 100644 index 0000000..069a3fa --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_coral.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_coral" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_dark.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_dark.json new file mode 100644 index 0000000..11ceeda --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_dark.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_dark" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_ember.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_ember.json new file mode 100644 index 0000000..6688dfe --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_ember.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_ember" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_gold.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_gold.json new file mode 100644 index 0000000..d8e134d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_gold.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_gold" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_indigo.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_indigo.json new file mode 100644 index 0000000..8393175 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_indigo.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_indigo" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_lunar.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_lunar.json new file mode 100644 index 0000000..240bf91 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_lunar.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_lunar" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_moss.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_moss.json new file mode 100644 index 0000000..1f1285b --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_moss.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_moss" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_olive.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_olive.json new file mode 100644 index 0000000..9c1cfc1 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_olive.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_olive" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_pink.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_pink.json new file mode 100644 index 0000000..d7f58b0 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_pink" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_purple.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_purple.json new file mode 100644 index 0000000..0a69049 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_purple" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_tender.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_tender.json new file mode 100644 index 0000000..28b1749 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_tender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_tender" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_varieg.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_varieg.json new file mode 100644 index 0000000..4c59ad9 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_6_varieg.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_6_varieg" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7.json new file mode 100644 index 0000000..3e2848a --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_amber.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_amber.json new file mode 100644 index 0000000..a3606ec --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_amber.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_amber" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_ashen.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_ashen.json new file mode 100644 index 0000000..70e8e25 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_ashen.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_ashen" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_bluish.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_bluish.json new file mode 100644 index 0000000..9e32187 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_bluish.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_bluish" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_coral.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_coral.json new file mode 100644 index 0000000..80ccad0 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_coral.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_coral" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_dark.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_dark.json new file mode 100644 index 0000000..6958e14 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_dark.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_dark" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_ember.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_ember.json new file mode 100644 index 0000000..206eff4 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_ember.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_ember" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_gold.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_gold.json new file mode 100644 index 0000000..fa6390b --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_gold.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_gold" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_indigo.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_indigo.json new file mode 100644 index 0000000..371e6d3 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_indigo.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_indigo" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_lunar.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_lunar.json new file mode 100644 index 0000000..5d13e29 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_lunar.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_lunar" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_moss.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_moss.json new file mode 100644 index 0000000..976a5a5 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_moss.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_moss" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_olive.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_olive.json new file mode 100644 index 0000000..111173d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_olive.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_olive" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_pink.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_pink.json new file mode 100644 index 0000000..3e1d15e --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_pink" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_purple.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_purple.json new file mode 100644 index 0000000..ccaa545 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_purple" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_tender.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_tender.json new file mode 100644 index 0000000..c6b672a --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_tender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_tender" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_varieg.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_varieg.json new file mode 100644 index 0000000..3201d66 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_stage_7_varieg.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_stage_7_varieg" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom.json new file mode 100644 index 0000000..0292e7d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_amber.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_amber.json new file mode 100644 index 0000000..12182ec --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_amber.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_amber" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_ashen.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_ashen.json new file mode 100644 index 0000000..cfa37a4 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_ashen.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_ashen" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_bluish.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_bluish.json new file mode 100644 index 0000000..9088503 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_bluish.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_bluish" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_coral.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_coral.json new file mode 100644 index 0000000..d7ad04b --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_coral.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_coral" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_dark.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_dark.json new file mode 100644 index 0000000..9dbed21 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_dark.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_dark" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_ember.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_ember.json new file mode 100644 index 0000000..4bc84fd --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_ember.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_ember" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_gold.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_gold.json new file mode 100644 index 0000000..b85e133 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_gold.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_gold" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_indigo.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_indigo.json new file mode 100644 index 0000000..7d87f5f --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_indigo.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_indigo" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_lunar.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_lunar.json new file mode 100644 index 0000000..4c8929d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_lunar.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_lunar" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_moss.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_moss.json new file mode 100644 index 0000000..80d928b --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_moss.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_moss" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_olive.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_olive.json new file mode 100644 index 0000000..4c0c79c --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_olive.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_olive" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_pink.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_pink.json new file mode 100644 index 0000000..cec25bb --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_pink" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_purple.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_purple.json new file mode 100644 index 0000000..3098c29 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_purple" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_tender.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_tender.json new file mode 100644 index 0000000..cad0267 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_tender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_tender" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_varieg.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_varieg.json new file mode 100644 index 0000000..5614736 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_bottom_varieg.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_bottom_varieg" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top.json new file mode 100644 index 0000000..6bcda8c --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_amber.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_amber.json new file mode 100644 index 0000000..6f88e4a --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_amber.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_amber" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_ashen.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_ashen.json new file mode 100644 index 0000000..9d6bf5b --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_ashen.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_ashen" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_bluish.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_bluish.json new file mode 100644 index 0000000..a9ccc0d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_bluish.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_bluish" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_coral.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_coral.json new file mode 100644 index 0000000..f8eeddb --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_coral.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_coral" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_dark.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_dark.json new file mode 100644 index 0000000..e8dd9ae --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_dark.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_dark" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_ember.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_ember.json new file mode 100644 index 0000000..20dd9e9 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_ember.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_ember" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_gold.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_gold.json new file mode 100644 index 0000000..a894417 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_gold.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_gold" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_indigo.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_indigo.json new file mode 100644 index 0000000..b20d08c --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_indigo.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_indigo" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_lunar.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_lunar.json new file mode 100644 index 0000000..e980a82 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_lunar.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_lunar" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_moss.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_moss.json new file mode 100644 index 0000000..ab445de --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_moss.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_moss" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_olive.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_olive.json new file mode 100644 index 0000000..49151f2 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_olive.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_olive" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_pink.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_pink.json new file mode 100644 index 0000000..766d4f3 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_pink.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_pink" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_purple.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_purple.json new file mode 100644 index 0000000..978b732 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_purple.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_purple" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_tender.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_tender.json new file mode 100644 index 0000000..b9ad5c7 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_tender.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_tender" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_varieg.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_varieg.json new file mode 100644 index 0000000..45e826d --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/hemp_tall_top_varieg.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "canaplia:block/hemp_tall_top_varieg" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/indigo_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/indigo_resin_block.json new file mode 100644 index 0000000..4c709de --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/indigo_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/indigo_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/lunar_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/lunar_resin_block.json new file mode 100644 index 0000000..6e3ba36 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/lunar_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/lunar_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/moss_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/moss_resin_block.json new file mode 100644 index 0000000..7e08b32 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/moss_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/moss_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/olive_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/olive_resin_block.json new file mode 100644 index 0000000..36640fd --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/olive_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/olive_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/pink_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/pink_resin_block.json new file mode 100644 index 0000000..81bf27a --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/pink_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/pink_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/purple_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/purple_resin_block.json new file mode 100644 index 0000000..a52315a --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/purple_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/purple_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/resin_block.json new file mode 100644 index 0000000..07fcc13 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/tender_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/tender_resin_block.json new file mode 100644 index 0000000..09719c5 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/tender_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/tender_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/block/varieg_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/varieg_resin_block.json new file mode 100644 index 0000000..c714c2a --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/block/varieg_resin_block.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "canaplia:block/varieg_resin_block" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/amber_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/amber_hemp_bud.json new file mode 100644 index 0000000..3c96f5a --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/amber_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/amber_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/amber_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/amber_hemp_seeds.json new file mode 100644 index 0000000..08e24fa --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/amber_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/amber_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/amber_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/amber_resin_block.json new file mode 100644 index 0000000..47f4014 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/amber_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/amber_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/amber_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/amber_rolled_joint.json new file mode 100644 index 0000000..5c61337 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/amber_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/amber_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ashen_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ashen_hemp_bud.json new file mode 100644 index 0000000..dd74f7c --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ashen_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/ashen_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ashen_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ashen_hemp_seeds.json new file mode 100644 index 0000000..03c6c1b --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ashen_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/ashen_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ashen_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ashen_resin_block.json new file mode 100644 index 0000000..3ca8a81 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ashen_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/ashen_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ashen_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ashen_rolled_joint.json new file mode 100644 index 0000000..56fc801 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ashen_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/ashen_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/bluish_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/bluish_hemp_bud.json new file mode 100644 index 0000000..de408a2 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/bluish_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/bluish_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/bluish_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/bluish_hemp_seeds.json new file mode 100644 index 0000000..cdb1e03 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/bluish_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/bluish_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/bluish_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/bluish_resin_block.json new file mode 100644 index 0000000..89b13c5 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/bluish_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/bluish_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/bluish_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/bluish_rolled_joint.json new file mode 100644 index 0000000..1732ca6 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/bluish_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/bluish_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/coral_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/coral_hemp_bud.json new file mode 100644 index 0000000..5b9b1ce --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/coral_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/coral_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/coral_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/coral_hemp_seeds.json new file mode 100644 index 0000000..2f1d3ca --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/coral_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/coral_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/coral_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/coral_resin_block.json new file mode 100644 index 0000000..ae087cc --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/coral_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/coral_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/coral_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/coral_rolled_joint.json new file mode 100644 index 0000000..9d1ed8f --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/coral_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/coral_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/dark_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/dark_hemp_bud.json new file mode 100644 index 0000000..161ae1f --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/dark_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/dark_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/dark_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/dark_hemp_seeds.json new file mode 100644 index 0000000..b83ccad --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/dark_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/dark_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/dark_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/dark_resin_block.json new file mode 100644 index 0000000..ec9ad33 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/dark_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/dark_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/dark_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/dark_rolled_joint.json new file mode 100644 index 0000000..09978d9 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/dark_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/dark_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ember_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ember_hemp_bud.json new file mode 100644 index 0000000..eb6dabb --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ember_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/ember_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ember_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ember_hemp_seeds.json new file mode 100644 index 0000000..f54d7f4 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ember_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/ember_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ember_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ember_resin_block.json new file mode 100644 index 0000000..fce71b8 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ember_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/ember_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ember_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ember_rolled_joint.json new file mode 100644 index 0000000..072a055 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/ember_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/ember_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/gold_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/gold_hemp_bud.json new file mode 100644 index 0000000..eda15c8 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/gold_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/gold_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/gold_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/gold_hemp_seeds.json new file mode 100644 index 0000000..3e31604 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/gold_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/gold_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/gold_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/gold_resin_block.json new file mode 100644 index 0000000..c7509b3 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/gold_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/gold_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/gold_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/gold_rolled_joint.json new file mode 100644 index 0000000..0624ed1 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/gold_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/gold_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/hemp_bud.json new file mode 100644 index 0000000..16ab1fc --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/hemp_seeds.json new file mode 100644 index 0000000..3af4140 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/indigo_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/indigo_hemp_bud.json new file mode 100644 index 0000000..5b974f8 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/indigo_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/indigo_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/indigo_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/indigo_hemp_seeds.json new file mode 100644 index 0000000..cee7b09 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/indigo_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/indigo_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/indigo_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/indigo_resin_block.json new file mode 100644 index 0000000..5878ee0 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/indigo_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/indigo_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/indigo_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/indigo_rolled_joint.json new file mode 100644 index 0000000..4aaf9b4 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/indigo_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/indigo_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/lunar_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/lunar_hemp_bud.json new file mode 100644 index 0000000..5204ae9 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/lunar_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/lunar_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/lunar_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/lunar_hemp_seeds.json new file mode 100644 index 0000000..6b05809 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/lunar_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/lunar_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/lunar_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/lunar_resin_block.json new file mode 100644 index 0000000..1635d4f --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/lunar_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/lunar_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/lunar_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/lunar_rolled_joint.json new file mode 100644 index 0000000..9de4a4b --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/lunar_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/lunar_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/moss_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/moss_hemp_bud.json new file mode 100644 index 0000000..45068d7 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/moss_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/moss_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/moss_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/moss_hemp_seeds.json new file mode 100644 index 0000000..cc2b6af --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/moss_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/moss_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/moss_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/moss_resin_block.json new file mode 100644 index 0000000..04cd726 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/moss_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/moss_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/moss_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/moss_rolled_joint.json new file mode 100644 index 0000000..5aa41b5 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/moss_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/moss_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/olive_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/olive_hemp_bud.json new file mode 100644 index 0000000..c40f95a --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/olive_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/olive_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/olive_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/olive_hemp_seeds.json new file mode 100644 index 0000000..21f28a6 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/olive_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/olive_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/olive_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/olive_resin_block.json new file mode 100644 index 0000000..f01ec74 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/olive_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/olive_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/olive_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/olive_rolled_joint.json new file mode 100644 index 0000000..4690f77 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/olive_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/olive_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/pink_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/pink_hemp_bud.json new file mode 100644 index 0000000..ecaef1b --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/pink_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/pink_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/pink_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/pink_hemp_seeds.json new file mode 100644 index 0000000..3e04df2 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/pink_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/pink_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/pink_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/pink_resin_block.json new file mode 100644 index 0000000..2907528 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/pink_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/pink_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/pink_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/pink_rolled_joint.json new file mode 100644 index 0000000..d760495 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/pink_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/pink_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/purple_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/purple_hemp_bud.json new file mode 100644 index 0000000..b6f1f32 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/purple_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/purple_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/purple_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/purple_hemp_seeds.json new file mode 100644 index 0000000..3f9d821 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/purple_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/purple_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/purple_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/purple_resin_block.json new file mode 100644 index 0000000..ad95b69 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/purple_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/purple_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/purple_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/purple_rolled_joint.json new file mode 100644 index 0000000..d72fbd4 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/purple_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/purple_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/resin_block.json new file mode 100644 index 0000000..8d3f470 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/rolled_joint.json new file mode 100644 index 0000000..d9fc889 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/tender_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/tender_hemp_bud.json new file mode 100644 index 0000000..199e3da --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/tender_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/tender_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/tender_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/tender_hemp_seeds.json new file mode 100644 index 0000000..e79f054 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/tender_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/tender_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/tender_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/tender_resin_block.json new file mode 100644 index 0000000..d263759 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/tender_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/tender_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/tender_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/tender_rolled_joint.json new file mode 100644 index 0000000..f0aed02 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/tender_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/tender_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/varieg_hemp_bud.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/varieg_hemp_bud.json new file mode 100644 index 0000000..478e002 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/varieg_hemp_bud.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/varieg_hemp_bud" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/varieg_hemp_seeds.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/varieg_hemp_seeds.json new file mode 100644 index 0000000..dffd3ba --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/varieg_hemp_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/varieg_hemp_seeds" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/varieg_resin_block.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/varieg_resin_block.json new file mode 100644 index 0000000..a5538b7 --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/varieg_resin_block.json @@ -0,0 +1,3 @@ +{ + "parent": "canaplia:block/varieg_resin_block" +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/models/item/varieg_rolled_joint.json b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/varieg_rolled_joint.json new file mode 100644 index 0000000..9b6356f --- /dev/null +++ b/Farming/canaplia/src/main/resources/assets/canaplia/models/item/varieg_rolled_joint.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "canaplia:item/varieg_rolled_joint" + } +} diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/amber_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/amber_resin_block.png new file mode 100644 index 0000000..6c43322 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/amber_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/ashen_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/ashen_resin_block.png new file mode 100644 index 0000000..add884d Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/ashen_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/bluish_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/bluish_resin_block.png new file mode 100644 index 0000000..7bb602a Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/bluish_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/coral_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/coral_resin_block.png new file mode 100644 index 0000000..c784ad3 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/coral_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/dark_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/dark_resin_block.png new file mode 100644 index 0000000..79c77da Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/dark_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/ember_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/ember_resin_block.png new file mode 100644 index 0000000..f3a519f Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/ember_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/gold_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/gold_resin_block.png new file mode 100644 index 0000000..390161f Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/gold_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0.png new file mode 100644 index 0000000..43657cb Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_amber.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_amber.png new file mode 100644 index 0000000..9fc25b9 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_amber.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_ashen.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_ashen.png new file mode 100644 index 0000000..ce0e9e2 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_ashen.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_bluish.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_bluish.png new file mode 100644 index 0000000..5192cad Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_bluish.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_coral.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_coral.png new file mode 100644 index 0000000..36c8e16 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_coral.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_dark.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_dark.png new file mode 100644 index 0000000..ca2e425 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_dark.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_ember.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_ember.png new file mode 100644 index 0000000..93601f7 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_ember.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_gold.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_gold.png new file mode 100644 index 0000000..20ff286 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_gold.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_indigo.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_indigo.png new file mode 100644 index 0000000..f6fd60f Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_indigo.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_lunar.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_lunar.png new file mode 100644 index 0000000..f85da96 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_lunar.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_moss.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_moss.png new file mode 100644 index 0000000..be8c0cc Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_moss.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_olive.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_olive.png new file mode 100644 index 0000000..83d6262 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_olive.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_pink.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_pink.png new file mode 100644 index 0000000..f85badc Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_pink.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_purple.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_purple.png new file mode 100644 index 0000000..ad2756b Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_purple.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_tender.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_tender.png new file mode 100644 index 0000000..abdc7e6 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_tender.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_varieg.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_varieg.png new file mode 100644 index 0000000..a9e1b65 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_0_varieg.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1.png new file mode 100644 index 0000000..c8f8def Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_amber.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_amber.png new file mode 100644 index 0000000..5746c6e Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_amber.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_ashen.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_ashen.png new file mode 100644 index 0000000..dd34af3 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_ashen.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_bluish.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_bluish.png new file mode 100644 index 0000000..2426684 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_bluish.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_coral.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_coral.png new file mode 100644 index 0000000..a6d0c92 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_coral.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_dark.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_dark.png new file mode 100644 index 0000000..8527c48 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_dark.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_ember.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_ember.png new file mode 100644 index 0000000..baa5f1d Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_ember.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_gold.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_gold.png new file mode 100644 index 0000000..e6cdfec Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_gold.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_indigo.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_indigo.png new file mode 100644 index 0000000..0c68932 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_indigo.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_lunar.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_lunar.png new file mode 100644 index 0000000..104efef Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_lunar.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_moss.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_moss.png new file mode 100644 index 0000000..0ad6f91 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_moss.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_olive.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_olive.png new file mode 100644 index 0000000..90ef359 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_olive.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_pink.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_pink.png new file mode 100644 index 0000000..64cb4de Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_pink.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_purple.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_purple.png new file mode 100644 index 0000000..5c93674 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_purple.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_tender.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_tender.png new file mode 100644 index 0000000..69f228e Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_tender.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_varieg.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_varieg.png new file mode 100644 index 0000000..1f2a4cc Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_1_varieg.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2.png new file mode 100644 index 0000000..f322b3a Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_amber.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_amber.png new file mode 100644 index 0000000..14251bd Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_amber.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_ashen.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_ashen.png new file mode 100644 index 0000000..bb398d0 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_ashen.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_bluish.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_bluish.png new file mode 100644 index 0000000..76bcb32 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_bluish.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_coral.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_coral.png new file mode 100644 index 0000000..cc8c2de Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_coral.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_dark.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_dark.png new file mode 100644 index 0000000..090e59c Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_dark.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_ember.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_ember.png new file mode 100644 index 0000000..c95aaa3 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_ember.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_gold.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_gold.png new file mode 100644 index 0000000..bfbca1e Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_gold.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_indigo.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_indigo.png new file mode 100644 index 0000000..24595f1 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_indigo.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_lunar.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_lunar.png new file mode 100644 index 0000000..b4cd61e Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_lunar.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_moss.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_moss.png new file mode 100644 index 0000000..0548d11 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_moss.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_olive.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_olive.png new file mode 100644 index 0000000..25bd76a Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_olive.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_pink.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_pink.png new file mode 100644 index 0000000..30f73ee Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_pink.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_purple.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_purple.png new file mode 100644 index 0000000..602c236 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_purple.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_tender.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_tender.png new file mode 100644 index 0000000..01fd72e Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_tender.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_varieg.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_varieg.png new file mode 100644 index 0000000..07f19d6 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_2_varieg.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3.png new file mode 100644 index 0000000..983eeee Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_amber.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_amber.png new file mode 100644 index 0000000..4d66834 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_amber.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_ashen.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_ashen.png new file mode 100644 index 0000000..6480e03 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_ashen.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_bluish.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_bluish.png new file mode 100644 index 0000000..dd4ef11 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_bluish.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_coral.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_coral.png new file mode 100644 index 0000000..78cb7a5 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_coral.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_dark.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_dark.png new file mode 100644 index 0000000..7f9dd9d Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_dark.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_ember.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_ember.png new file mode 100644 index 0000000..81b05aa Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_ember.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_gold.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_gold.png new file mode 100644 index 0000000..b9885e4 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_gold.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_indigo.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_indigo.png new file mode 100644 index 0000000..ecc6d59 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_indigo.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_lunar.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_lunar.png new file mode 100644 index 0000000..ab02da4 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_lunar.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_moss.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_moss.png new file mode 100644 index 0000000..68ef08c Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_moss.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_olive.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_olive.png new file mode 100644 index 0000000..14ad8bd Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_olive.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_pink.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_pink.png new file mode 100644 index 0000000..4e44c19 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_pink.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_purple.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_purple.png new file mode 100644 index 0000000..f96239a Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_purple.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_tender.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_tender.png new file mode 100644 index 0000000..5f6e10e Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_tender.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_varieg.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_varieg.png new file mode 100644 index 0000000..84ef776 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_3_varieg.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4.png new file mode 100644 index 0000000..7768fbd Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_amber.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_amber.png new file mode 100644 index 0000000..43be348 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_amber.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_ashen.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_ashen.png new file mode 100644 index 0000000..f17a955 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_ashen.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_bluish.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_bluish.png new file mode 100644 index 0000000..2452278 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_bluish.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_coral.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_coral.png new file mode 100644 index 0000000..9cf426d Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_coral.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_dark.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_dark.png new file mode 100644 index 0000000..b595e5f Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_dark.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_ember.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_ember.png new file mode 100644 index 0000000..e9b6c4b Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_ember.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_gold.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_gold.png new file mode 100644 index 0000000..0487635 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_gold.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_indigo.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_indigo.png new file mode 100644 index 0000000..4cc919e Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_indigo.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_lunar.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_lunar.png new file mode 100644 index 0000000..ecbf30f Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_lunar.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_moss.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_moss.png new file mode 100644 index 0000000..3ae2326 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_moss.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_olive.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_olive.png new file mode 100644 index 0000000..c5df912 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_olive.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_pink.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_pink.png new file mode 100644 index 0000000..6af34c0 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_pink.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_purple.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_purple.png new file mode 100644 index 0000000..1b1c348 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_purple.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_tender.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_tender.png new file mode 100644 index 0000000..d9aed38 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_tender.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_varieg.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_varieg.png new file mode 100644 index 0000000..1461ffc Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_4_varieg.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5.png new file mode 100644 index 0000000..6045cf1 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_amber.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_amber.png new file mode 100644 index 0000000..886c41a Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_amber.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_ashen.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_ashen.png new file mode 100644 index 0000000..bfa6c6a Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_ashen.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_bluish.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_bluish.png new file mode 100644 index 0000000..c26fdce Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_bluish.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_coral.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_coral.png new file mode 100644 index 0000000..f4111be Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_coral.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_dark.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_dark.png new file mode 100644 index 0000000..266020c Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_dark.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_ember.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_ember.png new file mode 100644 index 0000000..d55610b Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_ember.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_gold.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_gold.png new file mode 100644 index 0000000..8298566 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_gold.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_indigo.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_indigo.png new file mode 100644 index 0000000..d1ec220 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_indigo.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_lunar.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_lunar.png new file mode 100644 index 0000000..1f85550 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_lunar.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_moss.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_moss.png new file mode 100644 index 0000000..71b709f Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_moss.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_olive.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_olive.png new file mode 100644 index 0000000..da94e78 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_olive.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_pink.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_pink.png new file mode 100644 index 0000000..f7fe932 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_pink.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_purple.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_purple.png new file mode 100644 index 0000000..62a460d Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_purple.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_tender.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_tender.png new file mode 100644 index 0000000..5d2556b Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_tender.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_varieg.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_varieg.png new file mode 100644 index 0000000..a03fd5b Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_5_varieg.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6.png new file mode 100644 index 0000000..1fd3cd2 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_amber.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_amber.png new file mode 100644 index 0000000..aab48e4 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_amber.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_ashen.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_ashen.png new file mode 100644 index 0000000..160bda9 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_ashen.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_bluish.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_bluish.png new file mode 100644 index 0000000..4ea6eda Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_bluish.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_coral.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_coral.png new file mode 100644 index 0000000..3f053c4 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_coral.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_dark.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_dark.png new file mode 100644 index 0000000..611516c Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_dark.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_ember.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_ember.png new file mode 100644 index 0000000..4f480f7 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_ember.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_gold.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_gold.png new file mode 100644 index 0000000..6f94615 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_gold.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_indigo.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_indigo.png new file mode 100644 index 0000000..bb35c91 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_indigo.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_lunar.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_lunar.png new file mode 100644 index 0000000..ebd1844 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_lunar.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_moss.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_moss.png new file mode 100644 index 0000000..5f1f024 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_moss.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_olive.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_olive.png new file mode 100644 index 0000000..6049d05 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_olive.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_pink.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_pink.png new file mode 100644 index 0000000..6ca70ed Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_pink.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_purple.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_purple.png new file mode 100644 index 0000000..1b98cd1 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_purple.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_tender.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_tender.png new file mode 100644 index 0000000..967a0f4 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_tender.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_varieg.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_varieg.png new file mode 100644 index 0000000..174b0c4 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_6_varieg.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7.png new file mode 100644 index 0000000..c1c53ad Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_amber.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_amber.png new file mode 100644 index 0000000..2968366 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_amber.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_ashen.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_ashen.png new file mode 100644 index 0000000..1e137a3 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_ashen.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_bluish.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_bluish.png new file mode 100644 index 0000000..5eb1c37 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_bluish.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_coral.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_coral.png new file mode 100644 index 0000000..7d25936 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_coral.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_dark.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_dark.png new file mode 100644 index 0000000..7ad7f9f Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_dark.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_ember.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_ember.png new file mode 100644 index 0000000..090d4f3 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_ember.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_gold.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_gold.png new file mode 100644 index 0000000..a2cb263 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_gold.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_indigo.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_indigo.png new file mode 100644 index 0000000..ea0e69e Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_indigo.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_lunar.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_lunar.png new file mode 100644 index 0000000..18069c8 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_lunar.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_moss.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_moss.png new file mode 100644 index 0000000..21e4641 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_moss.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_olive.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_olive.png new file mode 100644 index 0000000..dd388df Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_olive.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_pink.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_pink.png new file mode 100644 index 0000000..84680ac Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_pink.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_purple.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_purple.png new file mode 100644 index 0000000..ab5dbed Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_purple.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_tender.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_tender.png new file mode 100644 index 0000000..f92c1cb Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_tender.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_varieg.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_varieg.png new file mode 100644 index 0000000..8abe9e1 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_stage_7_varieg.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom.png new file mode 100644 index 0000000..f85490c Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_amber.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_amber.png new file mode 100644 index 0000000..4b56c7e Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_amber.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_ashen.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_ashen.png new file mode 100644 index 0000000..170ce94 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_ashen.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_bluish.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_bluish.png new file mode 100644 index 0000000..688fddc Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_bluish.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_coral.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_coral.png new file mode 100644 index 0000000..c81c452 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_coral.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_dark.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_dark.png new file mode 100644 index 0000000..eb46a67 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_dark.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_ember.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_ember.png new file mode 100644 index 0000000..3788004 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_ember.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_gold.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_gold.png new file mode 100644 index 0000000..7ca0af6 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_gold.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_indigo.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_indigo.png new file mode 100644 index 0000000..d844a3c Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_indigo.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_lunar.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_lunar.png new file mode 100644 index 0000000..154247c Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_lunar.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_moss.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_moss.png new file mode 100644 index 0000000..ee013be Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_moss.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_olive.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_olive.png new file mode 100644 index 0000000..5bc91c7 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_olive.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_pink.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_pink.png new file mode 100644 index 0000000..edc3acf Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_pink.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_purple.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_purple.png new file mode 100644 index 0000000..efca6fb Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_purple.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_tender.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_tender.png new file mode 100644 index 0000000..a163e3e Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_tender.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_varieg.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_varieg.png new file mode 100644 index 0000000..455f17e Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_bottom_varieg.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top.png new file mode 100644 index 0000000..86509a4 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_amber.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_amber.png new file mode 100644 index 0000000..a53d178 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_amber.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_ashen.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_ashen.png new file mode 100644 index 0000000..7e5fc06 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_ashen.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_bluish.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_bluish.png new file mode 100644 index 0000000..ea54646 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_bluish.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_coral.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_coral.png new file mode 100644 index 0000000..a00bd94 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_coral.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_dark.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_dark.png new file mode 100644 index 0000000..8fce21a Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_dark.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_ember.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_ember.png new file mode 100644 index 0000000..68d6538 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_ember.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_gold.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_gold.png new file mode 100644 index 0000000..6650f5b Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_gold.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_indigo.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_indigo.png new file mode 100644 index 0000000..3abb002 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_indigo.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_lunar.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_lunar.png new file mode 100644 index 0000000..394c530 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_lunar.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_moss.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_moss.png new file mode 100644 index 0000000..e496630 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_moss.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_olive.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_olive.png new file mode 100644 index 0000000..81c71ae Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_olive.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_pink.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_pink.png new file mode 100644 index 0000000..debe058 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_pink.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_purple.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_purple.png new file mode 100644 index 0000000..944ec94 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_purple.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_tender.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_tender.png new file mode 100644 index 0000000..2125f88 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_tender.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_varieg.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_varieg.png new file mode 100644 index 0000000..70bbc2f Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/hemp_tall_top_varieg.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/indigo_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/indigo_resin_block.png new file mode 100644 index 0000000..d404e1c Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/indigo_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/lunar_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/lunar_resin_block.png new file mode 100644 index 0000000..e0a09db Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/lunar_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/moss_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/moss_resin_block.png new file mode 100644 index 0000000..7692235 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/moss_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/olive_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/olive_resin_block.png new file mode 100644 index 0000000..ffe314c Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/olive_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/pink_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/pink_resin_block.png new file mode 100644 index 0000000..794392c Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/pink_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/purple_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/purple_resin_block.png new file mode 100644 index 0000000..19e0c48 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/purple_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/resin_block.png new file mode 100644 index 0000000..91ebbd2 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/tender_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/tender_resin_block.png new file mode 100644 index 0000000..fbf3cea Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/tender_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/varieg_resin_block.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/varieg_resin_block.png new file mode 100644 index 0000000..3121ba1 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/block/varieg_resin_block.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/amber_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/amber_hemp_bud.png new file mode 100644 index 0000000..cc7a14b Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/amber_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/amber_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/amber_hemp_seeds.png new file mode 100644 index 0000000..2595e6a Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/amber_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/amber_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/amber_rolled_joint.png new file mode 100644 index 0000000..790dfa8 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/amber_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ashen_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ashen_hemp_bud.png new file mode 100644 index 0000000..58b8be6 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ashen_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ashen_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ashen_hemp_seeds.png new file mode 100644 index 0000000..48a7da4 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ashen_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ashen_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ashen_rolled_joint.png new file mode 100644 index 0000000..30b8b7f Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ashen_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/bluish_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/bluish_hemp_bud.png new file mode 100644 index 0000000..9880f76 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/bluish_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/bluish_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/bluish_hemp_seeds.png new file mode 100644 index 0000000..c4c4793 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/bluish_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/bluish_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/bluish_rolled_joint.png new file mode 100644 index 0000000..c772bed Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/bluish_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/coral_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/coral_hemp_bud.png new file mode 100644 index 0000000..116cbd1 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/coral_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/coral_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/coral_hemp_seeds.png new file mode 100644 index 0000000..7ab25e1 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/coral_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/coral_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/coral_rolled_joint.png new file mode 100644 index 0000000..e056363 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/coral_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/dark_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/dark_hemp_bud.png new file mode 100644 index 0000000..ebbd74f Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/dark_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/dark_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/dark_hemp_seeds.png new file mode 100644 index 0000000..227886f Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/dark_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/dark_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/dark_rolled_joint.png new file mode 100644 index 0000000..2894ea5 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/dark_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ember_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ember_hemp_bud.png new file mode 100644 index 0000000..88193a4 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ember_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ember_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ember_hemp_seeds.png new file mode 100644 index 0000000..573bdb6 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ember_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ember_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ember_rolled_joint.png new file mode 100644 index 0000000..246114d Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/ember_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/gold_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/gold_hemp_bud.png new file mode 100644 index 0000000..4f73466 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/gold_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/gold_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/gold_hemp_seeds.png new file mode 100644 index 0000000..654a885 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/gold_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/gold_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/gold_rolled_joint.png new file mode 100644 index 0000000..b98ba5b Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/gold_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/hemp_bud.png new file mode 100644 index 0000000..578d45e Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/hemp_seeds.png new file mode 100644 index 0000000..dc6ccc1 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/indigo_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/indigo_hemp_bud.png new file mode 100644 index 0000000..331101d Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/indigo_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/indigo_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/indigo_hemp_seeds.png new file mode 100644 index 0000000..0021320 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/indigo_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/indigo_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/indigo_rolled_joint.png new file mode 100644 index 0000000..74b2312 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/indigo_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/lunar_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/lunar_hemp_bud.png new file mode 100644 index 0000000..be02321 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/lunar_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/lunar_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/lunar_hemp_seeds.png new file mode 100644 index 0000000..5556fc9 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/lunar_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/lunar_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/lunar_rolled_joint.png new file mode 100644 index 0000000..08c7daa Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/lunar_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/moss_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/moss_hemp_bud.png new file mode 100644 index 0000000..e2442a7 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/moss_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/moss_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/moss_hemp_seeds.png new file mode 100644 index 0000000..7fb90c0 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/moss_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/moss_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/moss_rolled_joint.png new file mode 100644 index 0000000..7c87eda Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/moss_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/olive_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/olive_hemp_bud.png new file mode 100644 index 0000000..21371ae Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/olive_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/olive_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/olive_hemp_seeds.png new file mode 100644 index 0000000..186e1b7 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/olive_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/olive_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/olive_rolled_joint.png new file mode 100644 index 0000000..b9d7628 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/olive_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/pink_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/pink_hemp_bud.png new file mode 100644 index 0000000..1d2c1dd Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/pink_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/pink_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/pink_hemp_seeds.png new file mode 100644 index 0000000..c63b80d Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/pink_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/pink_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/pink_rolled_joint.png new file mode 100644 index 0000000..2236ece Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/pink_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/purple_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/purple_hemp_bud.png new file mode 100644 index 0000000..c5ef38b Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/purple_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/purple_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/purple_hemp_seeds.png new file mode 100644 index 0000000..1d43901 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/purple_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/purple_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/purple_rolled_joint.png new file mode 100644 index 0000000..a812053 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/purple_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/rolled_joint.png new file mode 100644 index 0000000..cfb930b Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/tender_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/tender_hemp_bud.png new file mode 100644 index 0000000..a901daf Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/tender_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/tender_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/tender_hemp_seeds.png new file mode 100644 index 0000000..2959c14 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/tender_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/tender_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/tender_rolled_joint.png new file mode 100644 index 0000000..280bab6 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/tender_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/varieg_hemp_bud.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/varieg_hemp_bud.png new file mode 100644 index 0000000..49fe99a Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/varieg_hemp_bud.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/varieg_hemp_seeds.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/varieg_hemp_seeds.png new file mode 100644 index 0000000..adf87fb Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/varieg_hemp_seeds.png differ diff --git a/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/varieg_rolled_joint.png b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/varieg_rolled_joint.png new file mode 100644 index 0000000..9b2e287 Binary files /dev/null and b/Farming/canaplia/src/main/resources/assets/canaplia/textures/item/varieg_rolled_joint.png differ diff --git a/Farming/canaplia/src/main/resources/data/canaplia/hemp_varieties.json b/Farming/canaplia/src/main/resources/data/canaplia/hemp_varieties.json new file mode 100755 index 0000000..0d05bc9 --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/hemp_varieties.json @@ -0,0 +1,601 @@ +{ + "version": 1, + "bad_trip_base_rules": { + "applies_nausea": true, + "applies_hunger": true, + "normal_trip_visual_intensity_target": [0.08, 0.14], + "bad_trip_visual_intensity_target": [0.25, 0.50] + }, + "varieties": [ + { + "id": "chanvre_commun", + "name_fr": "Chanvre commun", + "rarity": "common", + "color_family": "natural_green", + "main_duration_sec": 160, + "main_effects": [ + { "effect": "minecraft:resistance", "amplifier": 0, "duration_sec": 160 }, + { "effect": "minecraft:slowness", "amplifier": 0, "duration_sec": 160 }, + { "effect": "minecraft:haste", "amplifier": 0, "duration_sec": 160 }, + { "effect": "minecraft:strength", "amplifier": 0, "duration_sec": 160 } + ], + "normal_visual_profile": { + "palette": "soft_green", + "intensity": 0.09, + "tint_strength": 0.05, + "saturation_delta": 0.03, + "contrast_delta": 0.02, + "vignette_strength": 0.03 + }, + "bad_trip_chance": 0.10, + "bad_trip_delay_sec": { "min": 18, "max": 32 }, + "bad_trip_duration_sec": 28, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 28 }, + { "effect": "minecraft:hunger", "amplifier": 0, "duration_sec": 32 } + ], + "bad_trip_visual_profile": { + "palette": "dirty_green", + "intensity": 0.26, + "tint_strength": 0.10, + "saturation_delta": -0.05, + "contrast_delta": 0.04, + "vignette_strength": 0.10, + "ghosting_strength": 0.06 + } + }, + { + "id": "chanvre_tendre", + "name_fr": "Chanvre tendre", + "rarity": "common", + "color_family": "fresh_light_green", + "main_duration_sec": 170, + "main_effects": [ + { "effect": "minecraft:speed", "amplifier": 0, "duration_sec": 170 }, + { "effect": "minecraft:jump_boost", "amplifier": 0, "duration_sec": 170 }, + { "effect": "minecraft:weakness", "amplifier": 0, "duration_sec": 170 } + ], + "normal_visual_profile": { + "palette": "fresh_green", + "intensity": 0.08, + "tint_strength": 0.04, + "saturation_delta": 0.04, + "contrast_delta": 0.01, + "vignette_strength": 0.02 + }, + "bad_trip_chance": 0.09, + "bad_trip_delay_sec": { "min": 20, "max": 35 }, + "bad_trip_duration_sec": 26, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 26 }, + { "effect": "minecraft:hunger", "amplifier": 0, "duration_sec": 30 } + ], + "bad_trip_visual_profile": { + "palette": "sour_green", + "intensity": 0.24, + "tint_strength": 0.09, + "saturation_delta": -0.04, + "vignette_strength": 0.08, + "ghosting_strength": 0.05 + } + }, + { + "id": "chanvre_olive", + "name_fr": "Chanvre olive", + "rarity": "common", + "color_family": "olive_green", + "main_duration_sec": 155, + "main_effects": [ + { "effect": "minecraft:haste", "amplifier": 0, "duration_sec": 155 }, + { "effect": "minecraft:luck", "amplifier": 0, "duration_sec": 155 }, + { "effect": "minecraft:hunger", "amplifier": 0, "duration_sec": 155 } + ], + "normal_visual_profile": { + "palette": "olive_matte", + "intensity": 0.09, + "tint_strength": 0.05, + "saturation_delta": -0.01, + "contrast_delta": 0.02, + "vignette_strength": 0.03 + }, + "bad_trip_chance": 0.12, + "bad_trip_delay_sec": { "min": 16, "max": 30 }, + "bad_trip_duration_sec": 30, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 30 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 34 } + ], + "bad_trip_visual_profile": { + "palette": "mustard_sick", + "intensity": 0.28, + "tint_strength": 0.11, + "saturation_delta": -0.08, + "vignette_strength": 0.10, + "ghosting_strength": 0.06 + } + }, + { + "id": "chanvre_sombre", + "name_fr": "Chanvre sombre", + "rarity": "common", + "color_family": "deep_forest_green", + "main_duration_sec": 165, + "main_effects": [ + { "effect": "minecraft:night_vision", "amplifier": 0, "duration_sec": 165 }, + { "effect": "minecraft:strength", "amplifier": 0, "duration_sec": 165 }, + { "effect": "minecraft:slowness", "amplifier": 0, "duration_sec": 165 } + ], + "normal_visual_profile": { + "palette": "deep_green", + "intensity": 0.10, + "tint_strength": 0.06, + "saturation_delta": -0.01, + "contrast_delta": 0.03, + "vignette_strength": 0.04 + }, + "bad_trip_chance": 0.12, + "bad_trip_delay_sec": { "min": 18, "max": 34 }, + "bad_trip_duration_sec": 30, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 30 }, + { "effect": "minecraft:hunger", "amplifier": 0, "duration_sec": 34 } + ], + "bad_trip_visual_profile": { + "palette": "swamp_dark", + "intensity": 0.29, + "tint_strength": 0.12, + "saturation_delta": -0.06, + "contrast_delta": 0.05, + "vignette_strength": 0.12, + "ghosting_strength": 0.05 + } + }, + { + "id": "chanvre_cendre", + "name_fr": "Chanvre cendré", + "rarity": "common", + "color_family": "ashy_green", + "main_duration_sec": 150, + "main_effects": [ + { "effect": "minecraft:slow_falling", "amplifier": 0, "duration_sec": 150 }, + { "effect": "minecraft:weakness", "amplifier": 0, "duration_sec": 150 } + ], + "normal_visual_profile": { + "palette": "ash_green", + "intensity": 0.09, + "tint_strength": 0.04, + "saturation_delta": -0.05, + "contrast_delta": -0.01, + "vignette_strength": 0.03, + "ghosting_strength": 0.03 + }, + "bad_trip_chance": 0.14, + "bad_trip_delay_sec": { "min": 14, "max": 28 }, + "bad_trip_duration_sec": 32, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 32 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 34 } + ], + "bad_trip_visual_profile": { + "palette": "dusty_gray_green", + "intensity": 0.30, + "tint_strength": 0.10, + "saturation_delta": -0.12, + "contrast_delta": -0.03, + "vignette_strength": 0.11, + "ghosting_strength": 0.08, + "wobble_strength": 0.04 + } + }, + { + "id": "chanvre_mousse", + "name_fr": "Chanvre mousse", + "rarity": "common", + "color_family": "moss_green", + "main_duration_sec": 175, + "main_effects": [ + { "effect": "minecraft:water_breathing", "amplifier": 0, "duration_sec": 175 }, + { "effect": "minecraft:regeneration", "amplifier": 0, "duration_sec": 175 }, + { "effect": "minecraft:slowness", "amplifier": 0, "duration_sec": 175 } + ], + "normal_visual_profile": { + "palette": "wet_moss", + "intensity": 0.09, + "tint_strength": 0.05, + "saturation_delta": 0.01, + "contrast_delta": -0.01, + "vignette_strength": 0.03 + }, + "bad_trip_chance": 0.11, + "bad_trip_delay_sec": { "min": 20, "max": 36 }, + "bad_trip_duration_sec": 28, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 28 }, + { "effect": "minecraft:hunger", "amplifier": 0, "duration_sec": 32 } + ], + "bad_trip_visual_profile": { + "palette": "bog_green", + "intensity": 0.27, + "tint_strength": 0.10, + "saturation_delta": -0.04, + "contrast_delta": -0.02, + "vignette_strength": 0.09, + "ghosting_strength": 0.06 + } + }, + { + "id": "chanvre_dore", + "name_fr": "Chanvre doré", + "rarity": "uncommon", + "color_family": "golden_green", + "main_duration_sec": 150, + "main_effects": [ + { "effect": "minecraft:absorption", "amplifier": 0, "duration_sec": 150 }, + { "effect": "minecraft:haste", "amplifier": 1, "duration_sec": 150 }, + { "effect": "minecraft:speed", "amplifier": 0, "duration_sec": 150 } + ], + "normal_visual_profile": { + "palette": "soft_gold", + "intensity": 0.11, + "tint_strength": 0.06, + "saturation_delta": 0.05, + "contrast_delta": 0.03, + "vignette_strength": 0.03 + }, + "bad_trip_chance": 0.15, + "bad_trip_delay_sec": { "min": 15, "max": 28 }, + "bad_trip_duration_sec": 30, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 30 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 34 } + ], + "bad_trip_visual_profile": { + "palette": "toxic_yellow", + "intensity": 0.32, + "tint_strength": 0.13, + "saturation_delta": 0.03, + "contrast_delta": 0.06, + "vignette_strength": 0.11, + "pulse_strength": 0.05 + } + }, + { + "id": "chanvre_ambre", + "name_fr": "Chanvre ambré", + "rarity": "uncommon", + "color_family": "amber_yellow_brown", + "main_duration_sec": 155, + "main_effects": [ + { "effect": "minecraft:fire_resistance", "amplifier": 0, "duration_sec": 155 }, + { "effect": "minecraft:strength", "amplifier": 0, "duration_sec": 155 }, + { "effect": "minecraft:hunger", "amplifier": 0, "duration_sec": 155 } + ], + "normal_visual_profile": { + "palette": "warm_amber", + "intensity": 0.11, + "tint_strength": 0.06, + "saturation_delta": 0.03, + "contrast_delta": 0.03, + "vignette_strength": 0.03 + }, + "bad_trip_chance": 0.16, + "bad_trip_delay_sec": { "min": 14, "max": 28 }, + "bad_trip_duration_sec": 32, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 32 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 34 } + ], + "bad_trip_visual_profile": { + "palette": "burnt_amber", + "intensity": 0.33, + "tint_strength": 0.14, + "saturation_delta": 0.01, + "contrast_delta": 0.05, + "vignette_strength": 0.12, + "pulse_strength": 0.06 + } + }, + { + "id": "chanvre_bleute", + "name_fr": "Chanvre bleuté", + "rarity": "uncommon", + "color_family": "cool_blue_green", + "main_duration_sec": 165, + "main_effects": [ + { "effect": "minecraft:night_vision", "amplifier": 0, "duration_sec": 165 }, + { "effect": "minecraft:water_breathing", "amplifier": 0, "duration_sec": 165 }, + { "effect": "minecraft:speed", "amplifier": 0, "duration_sec": 165 } + ], + "normal_visual_profile": { + "palette": "cool_blue", + "intensity": 0.10, + "tint_strength": 0.05, + "saturation_delta": 0.01, + "contrast_delta": 0.02, + "vignette_strength": 0.02 + }, + "bad_trip_chance": 0.14, + "bad_trip_delay_sec": { "min": 18, "max": 30 }, + "bad_trip_duration_sec": 29, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 29 }, + { "effect": "minecraft:hunger", "amplifier": 0, "duration_sec": 33 } + ], + "bad_trip_visual_profile": { + "palette": "cold_cyan", + "intensity": 0.30, + "tint_strength": 0.12, + "saturation_delta": -0.02, + "contrast_delta": 0.05, + "vignette_strength": 0.10, + "ghosting_strength": 0.07 + } + }, + { + "id": "chanvre_rose", + "name_fr": "Chanvre rosé", + "rarity": "uncommon", + "color_family": "soft_plant_pink", + "main_duration_sec": 175, + "main_effects": [ + { "effect": "minecraft:regeneration", "amplifier": 0, "duration_sec": 175 }, + { "effect": "minecraft:slowness", "amplifier": 0, "duration_sec": 175 } + ], + "normal_visual_profile": { + "palette": "soft_pink", + "intensity": 0.09, + "tint_strength": 0.04, + "saturation_delta": 0.03, + "contrast_delta": 0.01, + "vignette_strength": 0.02 + }, + "bad_trip_chance": 0.15, + "bad_trip_delay_sec": { "min": 20, "max": 35 }, + "bad_trip_duration_sec": 30, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 30 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 34 } + ], + "bad_trip_visual_profile": { + "palette": "sickly_pink", + "intensity": 0.31, + "tint_strength": 0.12, + "saturation_delta": -0.01, + "vignette_strength": 0.10, + "ghosting_strength": 0.06 + } + }, + { + "id": "chanvre_corail", + "name_fr": "Chanvre corail", + "rarity": "uncommon", + "color_family": "warm_coral", + "main_duration_sec": 150, + "main_effects": [ + { "effect": "minecraft:dolphins_grace", "amplifier": 0, "duration_sec": 150 }, + { "effect": "minecraft:water_breathing", "amplifier": 0, "duration_sec": 150 }, + { "effect": "minecraft:jump_boost", "amplifier": 0, "duration_sec": 150 } + ], + "normal_visual_profile": { + "palette": "coral_warm", + "intensity": 0.11, + "tint_strength": 0.05, + "saturation_delta": 0.04, + "contrast_delta": 0.02, + "vignette_strength": 0.02 + }, + "bad_trip_chance": 0.17, + "bad_trip_delay_sec": { "min": 14, "max": 26 }, + "bad_trip_duration_sec": 31, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 0, "duration_sec": 31 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 35 } + ], + "bad_trip_visual_profile": { + "palette": "burnt_coral", + "intensity": 0.33, + "tint_strength": 0.13, + "saturation_delta": 0.00, + "contrast_delta": 0.05, + "vignette_strength": 0.11, + "ghosting_strength": 0.06, + "pulse_strength": 0.05 + } + }, + { + "id": "chanvre_pourpre", + "name_fr": "Chanvre pourpre", + "rarity": "rare", + "color_family": "deep_red_violet", + "main_duration_sec": 145, + "main_effects": [ + { "effect": "minecraft:strength", "amplifier": 1, "duration_sec": 145 }, + { "effect": "minecraft:resistance", "amplifier": 0, "duration_sec": 145 } + ], + "normal_visual_profile": { + "palette": "mystic_purple", + "intensity": 0.12, + "tint_strength": 0.06, + "saturation_delta": 0.05, + "contrast_delta": 0.03, + "vignette_strength": 0.03 + }, + "bad_trip_chance": 0.22, + "bad_trip_delay_sec": { "min": 12, "max": 24 }, + "bad_trip_duration_sec": 34, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 1, "duration_sec": 34 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 36 }, + { "effect": "minecraft:weakness", "amplifier": 0, "duration_sec": 24 } + ], + "bad_trip_visual_profile": { + "palette": "corrupted_magenta", + "intensity": 0.40, + "tint_strength": 0.17, + "saturation_delta": 0.08, + "contrast_delta": 0.07, + "vignette_strength": 0.14, + "ghosting_strength": 0.10, + "wobble_strength": 0.05 + } + }, + { + "id": "chanvre_indigo", + "name_fr": "Chanvre indigo", + "rarity": "rare", + "color_family": "dark_blue_violet", + "main_duration_sec": 145, + "main_effects": [ + { "effect": "minecraft:invisibility", "amplifier": 0, "duration_sec": 145 }, + { "effect": "minecraft:night_vision", "amplifier": 0, "duration_sec": 145 }, + { "effect": "minecraft:weakness", "amplifier": 0, "duration_sec": 145 } + ], + "normal_visual_profile": { + "palette": "deep_indigo", + "intensity": 0.12, + "tint_strength": 0.06, + "saturation_delta": -0.01, + "contrast_delta": 0.04, + "vignette_strength": 0.04 + }, + "bad_trip_chance": 0.21, + "bad_trip_delay_sec": { "min": 12, "max": 25 }, + "bad_trip_duration_sec": 34, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 1, "duration_sec": 34 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 36 }, + { "effect": "minecraft:weakness", "amplifier": 0, "duration_sec": 24 } + ], + "bad_trip_visual_profile": { + "palette": "void_indigo", + "intensity": 0.39, + "tint_strength": 0.16, + "saturation_delta": -0.05, + "contrast_delta": 0.08, + "vignette_strength": 0.15, + "ghosting_strength": 0.11, + "wobble_strength": 0.04 + } + }, + { + "id": "chanvre_panache", + "name_fr": "Chanvre panaché", + "rarity": "rare", + "color_family": "mixed_pale_green", + "main_duration_sec": 160, + "main_effects_mode": "random_pick", + "main_effects_pool": [ + { "effect": "minecraft:speed", "amplifier": 0, "duration_sec": 160 }, + { "effect": "minecraft:haste", "amplifier": 0, "duration_sec": 160 }, + { "effect": "minecraft:regeneration", "amplifier": 0, "duration_sec": 160 }, + { "effect": "minecraft:night_vision", "amplifier": 0, "duration_sec": 160 } + ], + "main_effects_pick_count": 2, + "normal_visual_profile": { + "palette": "pale_mixed_green", + "intensity": 0.11, + "tint_strength": 0.05, + "saturation_delta": 0.01, + "contrast_delta": 0.02, + "vignette_strength": 0.03, + "ghosting_strength": 0.03 + }, + "bad_trip_chance": 0.20, + "bad_trip_delay_sec": { "min": 13, "max": 27 }, + "bad_trip_duration_sec": 33, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 1, "duration_sec": 33 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 36 } + ], + "bad_trip_visual_profile": { + "palette": "unstable_mixed", + "intensity": 0.36, + "tint_strength": 0.14, + "saturation_delta": -0.02, + "contrast_delta": 0.04, + "vignette_strength": 0.12, + "ghosting_strength": 0.10, + "wobble_strength": 0.05 + } + }, + { + "id": "chanvre_lunaire", + "name_fr": "Chanvre lunaire", + "rarity": "very_rare", + "color_family": "pale_silver_green", + "main_duration_sec": 150, + "main_effects": [ + { "effect": "minecraft:jump_boost", "amplifier": 1, "duration_sec": 150 }, + { "effect": "minecraft:slow_falling", "amplifier": 0, "duration_sec": 150 }, + { "effect": "minecraft:night_vision", "amplifier": 0, "duration_sec": 150 } + ], + "normal_visual_profile": { + "palette": "moon_pale", + "intensity": 0.13, + "tint_strength": 0.06, + "saturation_delta": -0.03, + "contrast_delta": 0.01, + "vignette_strength": 0.03, + "ghosting_strength": 0.03 + }, + "bad_trip_chance": 0.27, + "bad_trip_delay_sec": { "min": 10, "max": 22 }, + "bad_trip_duration_sec": 36, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 1, "duration_sec": 36 }, + { "effect": "minecraft:hunger", "amplifier": 1, "duration_sec": 38 }, + { "effect": "minecraft:blindness", "amplifier": 0, "duration_sec": 4 } + ], + "bad_trip_visual_profile": { + "palette": "overexposed_moon", + "intensity": 0.46, + "tint_strength": 0.18, + "saturation_delta": -0.10, + "contrast_delta": -0.02, + "vignette_strength": 0.13, + "ghosting_strength": 0.12, + "wobble_strength": 0.06, + "pulse_strength": 0.06 + } + }, + { + "id": "chanvre_braise", + "name_fr": "Chanvre braise", + "rarity": "very_rare", + "color_family": "dark_red_ember", + "main_duration_sec": 145, + "main_effects": [ + { "effect": "minecraft:fire_resistance", "amplifier": 0, "duration_sec": 145 }, + { "effect": "minecraft:strength", "amplifier": 1, "duration_sec": 145 }, + { "effect": "minecraft:haste", "amplifier": 1, "duration_sec": 145 } + ], + "normal_visual_profile": { + "palette": "ember_warm", + "intensity": 0.13, + "tint_strength": 0.07, + "saturation_delta": 0.04, + "contrast_delta": 0.04, + "vignette_strength": 0.03 + }, + "bad_trip_chance": 0.30, + "bad_trip_delay_sec": { "min": 10, "max": 20 }, + "bad_trip_duration_sec": 38, + "bad_trip_effects": [ + { "effect": "minecraft:nausea", "amplifier": 1, "duration_sec": 38 }, + { "effect": "minecraft:hunger", "amplifier": 2, "duration_sec": 40 }, + { "effect": "minecraft:weakness", "amplifier": 0, "duration_sec": 20 } + ], + "bad_trip_visual_profile": { + "palette": "burning_red", + "intensity": 0.50, + "tint_strength": 0.20, + "saturation_delta": 0.06, + "contrast_delta": 0.08, + "vignette_strength": 0.16, + "ghosting_strength": 0.09, + "wobble_strength": 0.05, + "pulse_strength": 0.08 + } + } + ] +} \ No newline at end of file diff --git a/Farming/canaplia/src/main/resources/data/canaplia/loot_table/blocks/hemp_crop.json b/Farming/canaplia/src/main/resources/data/canaplia/loot_table/blocks/hemp_crop.json new file mode 100644 index 0000000..8db3326 --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/loot_table/blocks/hemp_crop.json @@ -0,0 +1,709 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "common" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "common" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "tender" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:tender_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "tender" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:tender_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "olive" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:olive_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "olive" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:olive_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "dark" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:dark_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "dark" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:dark_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "ashen" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:ashen_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "ashen" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:ashen_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "moss" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:moss_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "moss" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:moss_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "gold" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:gold_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "gold" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:gold_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "amber" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:amber_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "amber" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:amber_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "bluish" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:bluish_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "bluish" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:bluish_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "pink" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:pink_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "pink" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:pink_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "coral" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:coral_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "coral" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:coral_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "purple" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:purple_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "purple" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:purple_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "indigo" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:indigo_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "indigo" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:indigo_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "varieg" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:varieg_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "varieg" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:varieg_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "lunar" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:lunar_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "lunar" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:lunar_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "age": "7", + "tall": "true", + "variant": "ember" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:ember_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_crop", + "properties": { + "variant": "ember" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:ember_hemp_seeds" + } + ] + } + ] +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/loot_table/blocks/hemp_top.json b/Farming/canaplia/src/main/resources/data/canaplia/loot_table/blocks/hemp_top.json new file mode 100644 index 0000000..4954585 --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/loot_table/blocks/hemp_top.json @@ -0,0 +1,677 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "common" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "common" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "tender" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:tender_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "tender" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:tender_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "olive" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:olive_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "olive" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:olive_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "dark" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:dark_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "dark" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:dark_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "ashen" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:ashen_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "ashen" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:ashen_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "moss" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:moss_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "moss" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:moss_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "gold" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:gold_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "gold" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:gold_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "amber" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:amber_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "amber" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:amber_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "bluish" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:bluish_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "bluish" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:bluish_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "pink" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:pink_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "pink" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:pink_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "coral" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:coral_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "coral" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:coral_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "purple" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:purple_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "purple" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:purple_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "indigo" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:indigo_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "indigo" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:indigo_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "varieg" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:varieg_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "varieg" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:varieg_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "lunar" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:lunar_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "lunar" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:lunar_hemp_seeds" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "ember" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:ember_hemp_bud" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:hemp_top", + "properties": { + "variant": "ember" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:ember_hemp_seeds" + } + ] + } + ] +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/loot_table/blocks/resin_block.json b/Farming/canaplia/src/main/resources/data/canaplia/loot_table/blocks/resin_block.json new file mode 100644 index 0000000..a793382 --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/loot_table/blocks/resin_block.json @@ -0,0 +1,341 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "common" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "tender" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:tender_resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "olive" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:olive_resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "dark" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:dark_resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "ashen" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:ashen_resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "moss" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:moss_resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "gold" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:gold_resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "amber" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:amber_resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "bluish" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:bluish_resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "pink" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:pink_resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "coral" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:coral_resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "purple" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:purple_resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "indigo" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:indigo_resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "varieg" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:varieg_resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "lunar" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:lunar_resin_block" + } + ] + }, + { + "rolls": 1.0, + "conditions": [ + { + "condition": "minecraft:block_state_property", + "block": "canaplia:resin_block", + "properties": { + "variant": "ember" + } + }, + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "canaplia:ember_resin_block" + } + ] + } + ] +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/amber_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/amber_rolled_joint.json new file mode 100644 index 0000000..aee3ee8 --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/amber_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:amber_hemp_bud" + ], + "result": { + "id": "canaplia:amber_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/ashen_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/ashen_rolled_joint.json new file mode 100644 index 0000000..74f7521 --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/ashen_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:ashen_hemp_bud" + ], + "result": { + "id": "canaplia:ashen_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/bluish_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/bluish_rolled_joint.json new file mode 100644 index 0000000..0189d1b --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/bluish_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:bluish_hemp_bud" + ], + "result": { + "id": "canaplia:bluish_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/coral_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/coral_rolled_joint.json new file mode 100644 index 0000000..f389cce --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/coral_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:coral_hemp_bud" + ], + "result": { + "id": "canaplia:coral_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/dark_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/dark_rolled_joint.json new file mode 100644 index 0000000..90b2c7d --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/dark_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:dark_hemp_bud" + ], + "result": { + "id": "canaplia:dark_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/ember_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/ember_rolled_joint.json new file mode 100644 index 0000000..a321d80 --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/ember_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:ember_hemp_bud" + ], + "result": { + "id": "canaplia:ember_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/gold_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/gold_rolled_joint.json new file mode 100644 index 0000000..3b4f289 --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/gold_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:gold_hemp_bud" + ], + "result": { + "id": "canaplia:gold_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/indigo_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/indigo_rolled_joint.json new file mode 100644 index 0000000..700e2b4 --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/indigo_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:indigo_hemp_bud" + ], + "result": { + "id": "canaplia:indigo_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/lunar_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/lunar_rolled_joint.json new file mode 100644 index 0000000..d3bed3b --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/lunar_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:lunar_hemp_bud" + ], + "result": { + "id": "canaplia:lunar_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/moss_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/moss_rolled_joint.json new file mode 100644 index 0000000..0d58b07 --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/moss_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:moss_hemp_bud" + ], + "result": { + "id": "canaplia:moss_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/olive_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/olive_rolled_joint.json new file mode 100644 index 0000000..77b66ad --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/olive_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:olive_hemp_bud" + ], + "result": { + "id": "canaplia:olive_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/pink_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/pink_rolled_joint.json new file mode 100644 index 0000000..f81bdbb --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/pink_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:pink_hemp_bud" + ], + "result": { + "id": "canaplia:pink_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/purple_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/purple_rolled_joint.json new file mode 100644 index 0000000..9e5ae8b --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/purple_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:purple_hemp_bud" + ], + "result": { + "id": "canaplia:purple_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/rolled_joint.json new file mode 100644 index 0000000..3dbebd4 --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:hemp_bud" + ], + "result": { + "id": "canaplia:rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/tender_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/tender_rolled_joint.json new file mode 100644 index 0000000..53f63bb --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/tender_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:tender_hemp_bud" + ], + "result": { + "id": "canaplia:tender_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/data/canaplia/recipe/varieg_rolled_joint.json b/Farming/canaplia/src/main/resources/data/canaplia/recipe/varieg_rolled_joint.json new file mode 100644 index 0000000..0737c9f --- /dev/null +++ b/Farming/canaplia/src/main/resources/data/canaplia/recipe/varieg_rolled_joint.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "canaplia:varieg_hemp_bud" + ], + "result": { + "id": "canaplia:varieg_rolled_joint", + "count": 1 + } +} diff --git a/Farming/canaplia/src/main/resources/fabric.mod.json b/Farming/canaplia/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..c7bbbe1 --- /dev/null +++ b/Farming/canaplia/src/main/resources/fabric.mod.json @@ -0,0 +1,27 @@ +{ + "schemaVersion": 1, + "id": "canaplia", + "version": "${version}", + "name": "Canaplia", + "description": "Personal Fabric mod centered on hemp crops, seeds, and a simple smoking item.", + "authors": [ + "koka" + ], + "license": "All Rights Reserved", + "icon": "assets/canaplia/textures/block/hemp_tall_top.png", + "environment": "*", + "entrypoints": { + "main": [ + "io.github.koka.canaplia.CanapliaMod" + ], + "client": [ + "io.github.koka.canaplia.CanapliaClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Farming/canaplia/src/test/java/io/github/koka/canaplia/block/HempCropLogicTest.java b/Farming/canaplia/src/test/java/io/github/koka/canaplia/block/HempCropLogicTest.java new file mode 100644 index 0000000..2ec9ad4 --- /dev/null +++ b/Farming/canaplia/src/test/java/io/github/koka/canaplia/block/HempCropLogicTest.java @@ -0,0 +1,28 @@ +package io.github.koka.canaplia.block; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import org.junit.jupiter.api.Test; + +class HempCropLogicTest { + @Test + void bonemealGrowthStopsAtMaxAge() { + assertEquals(7, HempCropLogic.bonemealAge(6, 7, 4)); + } + + @Test + void pendingGrowthEndsOnlyWhenPlantIsTallAndMature() { + assertTrue(HempCropLogic.hasPendingGrowth(3, 7, false)); + assertTrue(HempCropLogic.hasPendingGrowth(7, 7, false)); + assertFalse(HempCropLogic.hasPendingGrowth(7, 7, true)); + } + + @Test + void budHarvestRequiresTallMatureState() { + assertFalse(HempCropLogic.shouldDropBud(6, 7, true)); + assertFalse(HempCropLogic.shouldDropBud(7, 7, false)); + assertTrue(HempCropLogic.shouldDropBud(7, 7, true)); + } +} diff --git a/Farming/canaplia/src/test/java/io/github/koka/canaplia/compost/HempBudCompostingLogicTest.java b/Farming/canaplia/src/test/java/io/github/koka/canaplia/compost/HempBudCompostingLogicTest.java new file mode 100644 index 0000000..a10a4b9 --- /dev/null +++ b/Farming/canaplia/src/test/java/io/github/koka/canaplia/compost/HempBudCompostingLogicTest.java @@ -0,0 +1,31 @@ +package io.github.koka.canaplia.compost; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import org.junit.jupiter.api.Test; + +class HempBudCompostingLogicTest { + @Test + void levelProjectionMatchesTenBudProgression() { + int[] expectedLevels = {1, 2, 3, 3, 4, 5, 5, 6, 7, 8}; + for (int budCount = 1; budCount <= expectedLevels.length; budCount++) { + assertEquals(expectedLevels[budCount - 1], HempBudCompostingLogic.levelForBudCount(budCount)); + } + } + + @Test + void macerationStartsOnlyOnAnEmptyComposter() { + assertTrue(HempBudCompostingLogic.canStart(true, 0)); + assertFalse(HempBudCompostingLogic.canStart(true, 1)); + assertFalse(HempBudCompostingLogic.canStart(false, 0)); + } + + @Test + void trackedComposterValidationRequiresMatchingLevel() { + assertTrue(HempBudCompostingLogic.matchesTrackedState(5, true, 4)); + assertFalse(HempBudCompostingLogic.matchesTrackedState(5, true, 3)); + assertFalse(HempBudCompostingLogic.matchesTrackedState(5, false, 4)); + } +} diff --git a/Farming/canaplia/src/test/java/io/github/koka/canaplia/compost/HempBudCompostingStateTest.java b/Farming/canaplia/src/test/java/io/github/koka/canaplia/compost/HempBudCompostingStateTest.java new file mode 100644 index 0000000..fb00447 --- /dev/null +++ b/Farming/canaplia/src/test/java/io/github/koka/canaplia/compost/HempBudCompostingStateTest.java @@ -0,0 +1,62 @@ +package io.github.koka.canaplia.compost; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertThrows; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import io.github.koka.canaplia.hemp.HempVariant; +import net.minecraft.core.BlockPos; +import org.junit.jupiter.api.Test; + +class HempBudCompostingStateTest { + @Test + void incrementingTracksBudCountAndReadyState() { + HempBudCompostingState state = new HempBudCompostingState(); + BlockPos pos = new BlockPos(1, 2, 3); + + for (int budCount = 1; budCount <= HempBudCompostingLogic.REQUIRED_BUDS; budCount++) { + assertEquals(budCount, state.incrementBudCount(pos, HempVariant.COMMON)); + } + + assertTrue(state.isTracked(pos)); + assertTrue(state.isReady(pos)); + assertEquals(HempBudCompostingLogic.REQUIRED_BUDS, state.getBudCount(pos)); + assertEquals(HempVariant.COMMON, state.getSourceVariant(pos).orElseThrow()); + } + + @Test + void invalidTrackedStatesAreCleanedUp() { + HempBudCompostingState state = new HempBudCompostingState(); + BlockPos pos = BlockPos.ZERO; + + state.incrementBudCount(pos, HempVariant.COMMON); + assertFalse(state.invalidateIfMismatched(pos, true, 1)); + assertTrue(state.invalidateIfMismatched(pos, false, -1)); + assertFalse(state.isTracked(pos)); + assertEquals(0, state.getBudCount(pos)); + } + + @Test + void clearRemovesTrackedComposters() { + HempBudCompostingState state = new HempBudCompostingState(); + BlockPos pos = new BlockPos(4, 5, 6); + + state.incrementBudCount(pos, HempVariant.COMMON); + state.clear(pos); + + assertFalse(state.isTracked(pos)); + assertEquals(0, state.getBudCount(pos)); + } + + @Test + void trackedComposterRejectsMixedBudVariants() { + HempBudCompostingState state = new HempBudCompostingState(); + BlockPos pos = new BlockPos(7, 8, 9); + + state.incrementBudCount(pos, HempVariant.PURPLE); + + assertFalse(state.canAccept(pos, HempVariant.MOSS)); + assertThrows(IllegalArgumentException.class, () -> state.incrementBudCount(pos, HempVariant.MOSS)); + } +} diff --git a/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/CanapliaSmokeEffectsTest.java b/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/CanapliaSmokeEffectsTest.java new file mode 100644 index 0000000..d946b2a --- /dev/null +++ b/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/CanapliaSmokeEffectsTest.java @@ -0,0 +1,31 @@ +package io.github.koka.canaplia.effect; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertIterableEquals; + +import io.github.koka.canaplia.hemp.HempVariant; +import java.util.List; +import net.minecraft.util.RandomSource; +import org.junit.jupiter.api.Test; + +class CanapliaSmokeEffectsTest { + @Test + void commonJointProfileComesFromTheCatalog() { + HempResolvedEffectProfile profile = HempEffectCatalog.getDefault().resolve(HempEffectSource.JOINT, HempVariant.COMMON, RandomSource.create(0L)); + + assertEquals(HempVariant.COMMON, profile.variant()); + assertEquals(160 * 20, profile.mainDurationTicks()); + assertIterableEquals( + List.of("minecraft:resistance", "minecraft:slowness", "minecraft:haste", "minecraft:strength"), + profile.mainEffects().stream().map(HempEffectSpec::effectId).toList() + ); + } + + @Test + void variegUsesTwoUniqueRandomEffects() { + HempResolvedEffectProfile profile = HempEffectCatalog.getDefault().resolve(HempEffectSource.JOINT, HempVariant.VARIEG, RandomSource.create(1234L)); + + assertEquals(2, profile.mainEffects().size()); + assertEquals(2, profile.mainEffects().stream().map(HempEffectSpec::effectId).distinct().count()); + } +} diff --git a/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/HempEffectCatalogTest.java b/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/HempEffectCatalogTest.java new file mode 100644 index 0000000..a10c7c6 --- /dev/null +++ b/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/HempEffectCatalogTest.java @@ -0,0 +1,77 @@ +package io.github.koka.canaplia.effect; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertThrows; + +import io.github.koka.canaplia.hemp.HempVariant; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.Reader; +import java.io.StringReader; +import java.nio.charset.StandardCharsets; +import org.junit.jupiter.api.Test; + +class HempEffectCatalogTest { + @Test + void defaultCatalogMapsEveryRuntimeVariant() { + HempEffectCatalog catalog = HempEffectCatalog.getDefault(); + + assertEquals(HempVariant.values().length, catalog.varieties().size()); + for (HempVariant variant : HempVariant.values()) { + assertEquals(variant, catalog.definition(variant).variant()); + } + } + + @Test + void baseRulesLoadFromJson() { + HempBadTripBaseRules baseRules = HempEffectCatalog.getDefault().badTripBaseRules(); + + assertEquals(true, baseRules.appliesNausea()); + assertEquals(true, baseRules.appliesHunger()); + assertEquals(0.08F, baseRules.normalVisualIntensityMin()); + assertEquals(0.50F, baseRules.badTripVisualIntensityMax()); + } + + @Test + void variegRecognizesRandomPickMode() { + HempVarietyDefinition definition = HempEffectCatalog.getDefault().definition(HempVariant.VARIEG); + + assertEquals(HempMainEffectMode.RANDOM_PICK, definition.mainEffectMode()); + assertEquals(2, definition.mainEffectsPickCount()); + assertEquals(4, definition.mainEffectsPool().size()); + } + + @Test + void invalidEffectIdFailsFast() { + String invalidJson = bundledCatalogJson().replace("\"minecraft:resistance\"", "\"minecraft:not_real\""); + + assertThrows(IllegalArgumentException.class, () -> HempEffectCatalog.load(new StringReader(invalidJson))); + } + + @Test + void missingRequiredFieldFailsFast() { + String invalidJson = bundledCatalogJson().replaceFirst("\"main_duration_sec\": 160,\\s*", ""); + + assertThrows(IllegalArgumentException.class, () -> HempEffectCatalog.load(new StringReader(invalidJson))); + } + + private static String bundledCatalogJson() { + InputStream stream = HempEffectCatalogTest.class.getClassLoader().getResourceAsStream("data/canaplia/hemp_varieties.json"); + if (stream == null) { + throw new IllegalStateException("Missing bundled hemp catalog resource."); + } + + try (Reader reader = new InputStreamReader(stream, StandardCharsets.UTF_8)) { + char[] buffer = new char[2048]; + StringBuilder builder = new StringBuilder(); + int read; + while ((read = reader.read(buffer)) >= 0) { + builder.append(buffer, 0, read); + } + + return builder.toString(); + } catch (Exception exception) { + throw new IllegalStateException("Failed to read bundled hemp catalog JSON.", exception); + } + } +} diff --git a/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/HempEffectControllerTest.java b/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/HempEffectControllerTest.java new file mode 100644 index 0000000..6aa3147 --- /dev/null +++ b/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/HempEffectControllerTest.java @@ -0,0 +1,94 @@ +package io.github.koka.canaplia.effect; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import io.github.koka.canaplia.hemp.HempVariant; +import net.minecraft.util.RandomSource; +import org.junit.jupiter.api.Test; + +class HempEffectControllerTest { + @Test + void sameVariantRefreshExtendsMainDurationAndKeepsRandomPick() { + HempResolvedEffectProfile profile = HempEffectCatalog.getDefault().resolve(HempEffectSource.JOINT, HempVariant.VARIEG, RandomSource.create(1234L)); + HempEffectSession session = HempEffectSession.start(HempEffectSource.JOINT, profile, 100L); + + session.refresh(HempEffectSource.RESIN_AURA, 150L); + + assertEquals(HempEffectSource.RESIN_AURA, session.source()); + assertEquals(profile.mainDurationTicks(), session.remainingMainTicks(150L)); + assertEquals(profile.mainEffects(), session.profile().mainEffects()); + assertEquals(2, session.profile().mainEffects().size()); + } + + @Test + void badTripStartsAndExpiresOnTheLatestRoll() { + HempResolvedEffectProfile profile = createProfile(HempVariant.PURPLE, 1.0F); + HempPlayerEffectState state = new HempPlayerEffectState(); + + state.rerollBadTrip(profile, 100L, RandomSource.create(2L)); + + assertTrue(state.shouldStartBadTrip(140L)); + state.startBadTrip(140L); + assertTrue(state.hasBadTripStarted()); + assertEquals(60, state.remainingBadTripTicks(140L)); + assertFalse(state.expireBadTripIfNeeded(199L)); + assertTrue(state.expireBadTripIfNeeded(200L)); + assertFalse(state.hasBadTripStarted()); + } + + @Test + void differentVarietiesStayActiveTogether() { + HempPlayerEffectState state = new HempPlayerEffectState(); + HempResolvedEffectProfile commonProfile = createProfile(HempVariant.COMMON, 0.0F); + HempResolvedEffectProfile goldProfile = createProfile(HempVariant.GOLD, 0.0F); + + state.upsertSession(HempEffectSource.JOINT, commonProfile, 20L); + state.upsertSession(HempEffectSource.JOINT, goldProfile, 40L); + + assertNotNull(state.session(HempVariant.COMMON)); + assertNotNull(state.session(HempVariant.GOLD)); + assertEquals(HempVariant.GOLD, state.visualSession().profile().variant()); + } + + @Test + void rerollBadTripReplacesThePreviousScheduledProfile() { + HempPlayerEffectState state = new HempPlayerEffectState(); + HempResolvedEffectProfile commonProfile = createProfile(HempVariant.COMMON, 1.0F); + HempResolvedEffectProfile tenderProfile = createProfile(HempVariant.TENDER, 1.0F); + + state.rerollBadTrip(commonProfile, 100L, RandomSource.create(1L)); + assertTrue(state.shouldStartBadTrip(140L)); + state.startBadTrip(140L); + + state.rerollBadTrip(tenderProfile, 150L, RandomSource.create(1L)); + + assertFalse(state.hasBadTripStarted()); + assertFalse(state.badTripProfile() == commonProfile); + assertEquals(HempVariant.TENDER, state.badTripProfile().variant()); + assertFalse(state.shouldStartBadTrip(189L)); + assertTrue(state.shouldStartBadTrip(190L)); + } + + private static HempResolvedEffectProfile createProfile(HempVariant variant, float badTripChance) { + return new HempResolvedEffectProfile( + HempEffectSource.JOINT, + variant, + variant.asString(), + variant.asString(), + 200, + java.util.List.of(new HempEffectSpec("minecraft:speed", 0, 200)), + new HempVisualProfile("normal", 0.1F, 0.05F, 0.01F, 0.01F, 0.02F, 0.0F, 0.0F, 0.0F), + badTripChance, + new HempDelayRange(40, 40), + 60, + java.util.List.of( + new HempEffectSpec("minecraft:nausea", 0, 60), + new HempEffectSpec("minecraft:hunger", 0, 60) + ), + new HempVisualProfile("bad", 0.3F, 0.12F, -0.03F, 0.02F, 0.08F, 0.05F, 0.02F, 0.01F) + ); + } +} diff --git a/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/HempVisualPayloadsTest.java b/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/HempVisualPayloadsTest.java new file mode 100644 index 0000000..c5675cf --- /dev/null +++ b/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/HempVisualPayloadsTest.java @@ -0,0 +1,47 @@ +package io.github.koka.canaplia.effect; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +import io.github.koka.canaplia.effect.network.HempBadTripPayload; +import io.github.koka.canaplia.effect.network.HempVisualClearPayload; +import io.github.koka.canaplia.effect.network.HempVisualSyncPayload; +import io.netty.buffer.ByteBuf; +import io.netty.buffer.Unpooled; +import org.junit.jupiter.api.Test; + +class HempVisualPayloadsTest { + @Test + void syncPayloadRoundTripsThroughItsCodec() { + HempVisualSyncPayload payload = new HempVisualSyncPayload( + new HempVisualProfile("soft_green", 0.1F, 0.05F, 0.02F, 0.01F, 0.03F, 0.0F, 0.0F, 0.0F), + 3200 + ); + ByteBuf buffer = Unpooled.buffer(); + + HempVisualSyncPayload.CODEC.encode(buffer, payload); + + assertEquals(payload, HempVisualSyncPayload.CODEC.decode(buffer)); + } + + @Test + void badTripPayloadRoundTripsThroughItsCodec() { + HempBadTripPayload payload = new HempBadTripPayload( + new HempVisualProfile("dirty_green", 0.28F, 0.10F, -0.05F, 0.03F, 0.09F, 0.06F, 0.03F, 0.01F), + 600 + ); + ByteBuf buffer = Unpooled.buffer(); + + HempBadTripPayload.CODEC.encode(buffer, payload); + + assertEquals(payload, HempBadTripPayload.CODEC.decode(buffer)); + } + + @Test + void clearPayloadRoundTripsThroughItsCodec() { + ByteBuf buffer = Unpooled.buffer(); + + HempVisualClearPayload.CODEC.encode(buffer, HempVisualClearPayload.INSTANCE); + + assertEquals(HempVisualClearPayload.INSTANCE, HempVisualClearPayload.CODEC.decode(buffer)); + } +} diff --git a/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/HempVisualStateStoreTest.java b/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/HempVisualStateStoreTest.java new file mode 100644 index 0000000..8f124c1 --- /dev/null +++ b/Farming/canaplia/src/test/java/io/github/koka/canaplia/effect/HempVisualStateStoreTest.java @@ -0,0 +1,48 @@ +package io.github.koka.canaplia.effect; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; + +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.Test; + +class HempVisualStateStoreTest { + @AfterEach + void tearDown() { + HempVisualStateStore.clear(); + } + + @Test + void normalProfileCanBeActivatedAndRefreshed() { + HempVisualProfile profile = new HempVisualProfile("fresh_green", 0.08F, 0.04F, 0.03F, 0.01F, 0.02F, 0.0F, 0.0F, 0.0F); + + HempVisualStateStore.applyNormal(profile, 40); + HempVisualStateStore.tick(); + + assertEquals(profile, HempVisualStateStore.normalProfile()); + assertEquals(39, HempVisualStateStore.normalTicksRemaining()); + } + + @Test + void badTripProfileCanBeActivatedSeparately() { + HempVisualProfile profile = new HempVisualProfile("void_indigo", 0.39F, 0.16F, -0.05F, 0.08F, 0.15F, 0.11F, 0.04F, 0.0F); + + HempVisualStateStore.applyBadTrip(profile, 20); + + assertEquals(profile, HempVisualStateStore.badTripProfile()); + assertEquals(20, HempVisualStateStore.badTripTicksRemaining()); + } + + @Test + void clearRemovesBothVisualProfiles() { + HempVisualStateStore.applyNormal(new HempVisualProfile("a", 0.1F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F), 10); + HempVisualStateStore.applyBadTrip(new HempVisualProfile("b", 0.3F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F), 10); + + HempVisualStateStore.clear(); + + assertNull(HempVisualStateStore.normalProfile()); + assertNull(HempVisualStateStore.badTripProfile()); + assertEquals(0, HempVisualStateStore.normalTicksRemaining()); + assertEquals(0, HempVisualStateStore.badTripTicksRemaining()); + } +} diff --git a/Farming/canaplia/src/test/java/io/github/koka/canaplia/resin/CanapliaResinCatalogTest.java b/Farming/canaplia/src/test/java/io/github/koka/canaplia/resin/CanapliaResinCatalogTest.java new file mode 100644 index 0000000..8b0361d --- /dev/null +++ b/Farming/canaplia/src/test/java/io/github/koka/canaplia/resin/CanapliaResinCatalogTest.java @@ -0,0 +1,26 @@ +package io.github.koka.canaplia.resin; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +import io.github.koka.canaplia.hemp.HempVariant; +import org.junit.jupiter.api.Test; + +class CanapliaResinCatalogTest { + @Test + void commonResinUsesTheDefaultBurnDuration() { + CanapliaResinCatalog.ResinProfile profile = CanapliaResinCatalog.resolve(HempVariant.COMMON); + + assertEquals(HempVariant.COMMON, profile.sourceVariant()); + assertEquals(HempVariant.COMMON, profile.blockVariant()); + assertEquals(90 * 20, profile.burnTicks()); + } + + @Test + void variantResinCurrentlyKeepsTheSourceVariantAndDuration() { + CanapliaResinCatalog.ResinProfile profile = CanapliaResinCatalog.resolve(HempVariant.INDIGO); + + assertEquals(HempVariant.INDIGO, profile.sourceVariant()); + assertEquals(HempVariant.INDIGO, profile.blockVariant()); + assertEquals(CanapliaResinCatalog.DEFAULT_BURN_TICKS, profile.burnTicks()); + } +} diff --git a/Farming/canaplia/src/test/java/io/github/koka/canaplia/survival/HempBreedingLogicTest.java b/Farming/canaplia/src/test/java/io/github/koka/canaplia/survival/HempBreedingLogicTest.java new file mode 100644 index 0000000..7751456 --- /dev/null +++ b/Farming/canaplia/src/test/java/io/github/koka/canaplia/survival/HempBreedingLogicTest.java @@ -0,0 +1,59 @@ +package io.github.koka.canaplia.survival; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import io.github.koka.canaplia.hemp.HempVariant; +import java.util.EnumSet; +import java.util.List; +import org.junit.jupiter.api.Test; + +class HempBreedingLogicTest { + @Test + void daytimeTenderOliveHarvestCanRollGold() { + HempEnvironment environment = new HempEnvironment("savanna", true, false, false, true, false, false, false, false, true, true, false, false); + List rolls = HempBreedingLogic.getHarvestSeedRolls( + HempVariant.TENDER, + EnumSet.of(HempVariant.OLIVE), + environment + ); + + assertTrue(rolls.contains(new HempBreedingLogic.SeedRoll(HempVariant.GOLD, 0.12F))); + } + + @Test + void dawnTenderPurpleHarvestUsesPinkRuntimeKey() { + HempEnvironment environment = new HempEnvironment("flower_forest", false, false, true, false, false, true, false, false, true, false, false, true); + List rolls = HempBreedingLogic.getHarvestSeedRolls( + HempVariant.TENDER, + EnumSet.of(HempVariant.PURPLE), + environment + ); + + assertTrue(rolls.contains(new HempBreedingLogic.SeedRoll(HempVariant.PINK, 0.10F))); + } + + @Test + void humidMixedHarvestCanRollVarieg() { + HempEnvironment environment = new HempEnvironment("lush_caves", false, false, true, false, true, false, false, false, false, false, true, false); + List rolls = HempBreedingLogic.getHarvestSeedRolls( + HempVariant.MOSS, + EnumSet.of(HempVariant.DARK), + environment + ); + + assertTrue(rolls.contains(new HempBreedingLogic.SeedRoll(HempVariant.VARIEG, 0.06F))); + } + + @Test + void coldNightAshenHarvestCanRollLunar() { + HempEnvironment environment = new HempEnvironment("grove", false, true, false, false, true, false, true, false, true, false, true, false); + List rolls = HempBreedingLogic.getHarvestSeedRolls( + HempVariant.ASHEN, + EnumSet.noneOf(HempVariant.class), + environment + ); + + assertEquals(List.of(new HempBreedingLogic.SeedRoll(HempVariant.LUNAR, 0.06F)), rolls); + } +} diff --git a/Farming/canaplia/src/test/java/io/github/koka/canaplia/survival/HempDiscoveryLogicTest.java b/Farming/canaplia/src/test/java/io/github/koka/canaplia/survival/HempDiscoveryLogicTest.java new file mode 100644 index 0000000..b696c7a --- /dev/null +++ b/Farming/canaplia/src/test/java/io/github/koka/canaplia/survival/HempDiscoveryLogicTest.java @@ -0,0 +1,50 @@ +package io.github.koka.canaplia.survival; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +import io.github.koka.canaplia.hemp.HempVariant; +import java.util.Optional; +import org.junit.jupiter.api.Test; + +class HempDiscoveryLogicTest { + @Test + void warmDryGrassResolvesToOlive() { + HempEnvironment environment = new HempEnvironment("savanna", true, false, false, true, false, false, false, false, true, true, false, false); + assertEquals(Optional.of(HempVariant.OLIVE), HempDiscoveryLogic.resolveVariant("minecraft:tall_grass", environment)); + } + + @Test + void floralGrassResolvesToTender() { + HempEnvironment environment = new HempEnvironment("flower_forest", false, false, true, false, false, true, false, false, true, true, false, false); + assertEquals(Optional.of(HempVariant.TENDER), HempDiscoveryLogic.resolveVariant("minecraft:short_grass", environment)); + } + + @Test + void dryGrassResolvesToOlive() { + HempEnvironment environment = new HempEnvironment("desert", true, false, false, true, false, false, false, false, true, true, false, false); + assertEquals(Optional.of(HempVariant.OLIVE), HempDiscoveryLogic.resolveVariant("minecraft:short_dry_grass", environment)); + assertEquals(0.10F, HempDiscoveryLogic.getBaseChance("minecraft:tall_dry_grass")); + } + + @Test + void snowyFernResolvesToAshen() { + HempEnvironment environment = new HempEnvironment("snowy_taiga", false, true, false, false, true, false, true, false, false, true, false, false); + assertEquals(Optional.of(HempVariant.ASHEN), HempDiscoveryLogic.resolveVariant("minecraft:fern", environment)); + } + + @Test + void humidCaveFloraResolvesToMoss() { + HempEnvironment environment = new HempEnvironment("lush_caves", false, false, true, false, true, false, false, false, false, false, true, false); + assertEquals(Optional.of(HempVariant.MOSS), HempDiscoveryLogic.resolveVariant("minecraft:hanging_roots", environment)); + } + + @Test + void sourceChancesStayAlignedWithDesignTables() { + assertTrue(HempDiscoveryLogic.getBaseChance("minecraft:short_grass") < HempDiscoveryLogic.getBaseChance("minecraft:tall_grass")); + assertEquals(0.06F, HempDiscoveryLogic.getBaseChance("minecraft:short_grass")); + assertEquals(0.07F, HempDiscoveryLogic.getBaseChance("minecraft:fern")); + assertEquals(0.02F, HempDiscoveryLogic.getBaseChance("minecraft:crimson_roots")); + assertEquals(0.015F, HempDiscoveryLogic.getBaseChance("minecraft:chorus_plant")); + } +} diff --git a/Farming/malongo/.gitignore b/Farming/malongo/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Farming/malongo/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Farming/malongo/build.gradle b/Farming/malongo/build.gradle new file mode 100644 index 0000000..e480669 --- /dev/null +++ b/Farming/malongo/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "malongo" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Farming/malongo/gradle.properties b/Farming/malongo/gradle.properties new file mode 100644 index 0000000..153326a --- /dev/null +++ b/Farming/malongo/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=malongo + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Farming/malongo/gradle/wrapper/gradle-wrapper.jar b/Farming/malongo/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Farming/malongo/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Farming/malongo/gradle/wrapper/gradle-wrapper.properties b/Farming/malongo/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Farming/malongo/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Farming/malongo/gradlew b/Farming/malongo/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Farming/malongo/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Farming/malongo/gradlew.bat b/Farming/malongo/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Farming/malongo/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Farming/malongo/settings.gradle b/Farming/malongo/settings.gradle new file mode 100644 index 0000000..a7b4f36 --- /dev/null +++ b/Farming/malongo/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "malongo" diff --git a/Farming/malongo/src/client/java/fr/koka99cab/malongo/client/MalongoClient.java b/Farming/malongo/src/client/java/fr/koka99cab/malongo/client/MalongoClient.java new file mode 100644 index 0000000..b477759 --- /dev/null +++ b/Farming/malongo/src/client/java/fr/koka99cab/malongo/client/MalongoClient.java @@ -0,0 +1,11 @@ +package fr.koka99cab.malongo.client; + +import net.fabricmc.api.ClientModInitializer; +import fr.koka99cab.malongo.MalongoMod; + +public class MalongoClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + MalongoMod.LOGGER.info("Malongo client initialise."); + } +} diff --git a/Farming/malongo/src/main/java/fr/koka99cab/malongo/MalongoMod.java b/Farming/malongo/src/main/java/fr/koka99cab/malongo/MalongoMod.java new file mode 100644 index 0000000..afa294d --- /dev/null +++ b/Farming/malongo/src/main/java/fr/koka99cab/malongo/MalongoMod.java @@ -0,0 +1,15 @@ +package fr.koka99cab.malongo; + +import net.fabricmc.api.ModInitializer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class MalongoMod implements ModInitializer { + public static final String MOD_ID = "malongo"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + LOGGER.info("Malongo charge pour Minecraft 26.1.2."); + } +} diff --git a/Farming/malongo/src/main/resources/assets/malongo/lang/en_us.json b/Farming/malongo/src/main/resources/assets/malongo/lang/en_us.json new file mode 100644 index 0000000..6ec74a1 --- /dev/null +++ b/Farming/malongo/src/main/resources/assets/malongo/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.malongo": "Malongo", + "modmenu.descriptionTranslation.malongo": "Example Fabric mod for the Hello World mod collection." +} diff --git a/Farming/malongo/src/main/resources/assets/malongo/lang/fr_fr.json b/Farming/malongo/src/main/resources/assets/malongo/lang/fr_fr.json new file mode 100644 index 0000000..90ac7c1 --- /dev/null +++ b/Farming/malongo/src/main/resources/assets/malongo/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.malongo": "Malongo", + "modmenu.descriptionTranslation.malongo": "Mod Fabric exemple pour la collection de mods Hello World." +} diff --git a/Farming/malongo/src/main/resources/fabric.mod.json b/Farming/malongo/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..43dc18f --- /dev/null +++ b/Farming/malongo/src/main/resources/fabric.mod.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "id": "malongo", + "version": "${version}", + "name": "Malongo", + "description": "Mod Fabric exemple pour la collection de mods Hello World.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.malongo.MalongoMod" + ], + "client": [ + "fr.koka99cab.malongo.client.MalongoClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Fun/abjection/.gitignore b/Fun/abjection/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Fun/abjection/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Fun/abjection/build.gradle b/Fun/abjection/build.gradle new file mode 100644 index 0000000..684bf64 --- /dev/null +++ b/Fun/abjection/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "abjection" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Fun/abjection/gradle.properties b/Fun/abjection/gradle.properties new file mode 100644 index 0000000..686a239 --- /dev/null +++ b/Fun/abjection/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=abjection + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Fun/abjection/gradle/wrapper/gradle-wrapper.jar b/Fun/abjection/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Fun/abjection/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Fun/abjection/gradle/wrapper/gradle-wrapper.properties b/Fun/abjection/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Fun/abjection/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Fun/abjection/gradlew b/Fun/abjection/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Fun/abjection/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Fun/abjection/gradlew.bat b/Fun/abjection/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Fun/abjection/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Fun/abjection/settings.gradle b/Fun/abjection/settings.gradle new file mode 100644 index 0000000..b17c58c --- /dev/null +++ b/Fun/abjection/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "abjection" diff --git a/Fun/abjection/src/client/java/fr/koka99cab/abjection/client/AbjectionClient.java b/Fun/abjection/src/client/java/fr/koka99cab/abjection/client/AbjectionClient.java new file mode 100644 index 0000000..aa96d56 --- /dev/null +++ b/Fun/abjection/src/client/java/fr/koka99cab/abjection/client/AbjectionClient.java @@ -0,0 +1,13 @@ +package fr.koka99cab.abjection.client; + +import fr.koka99cab.abjection.AbjectionMod; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.rendering.v1.EntityRendererRegistry; +import net.minecraft.client.renderer.entity.ThrownItemRenderer; + +public class AbjectionClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + EntityRendererRegistry.register(AbjectionMod.SHIT_BALL_ENTITY_TYPE, ThrownItemRenderer::new); + } +} diff --git a/Fun/abjection/src/main/java/fr/koka99cab/abjection/AbjectionMod.java b/Fun/abjection/src/main/java/fr/koka99cab/abjection/AbjectionMod.java new file mode 100644 index 0000000..5346dcf --- /dev/null +++ b/Fun/abjection/src/main/java/fr/koka99cab/abjection/AbjectionMod.java @@ -0,0 +1,579 @@ +package fr.koka99cab.abjection; + +import com.mojang.brigadier.Command; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import fr.koka99cab.abjection.entity.ShitBallEntity; +import fr.koka99cab.abjection.item.ShitBallItem; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; +import java.util.UUID; +import java.util.function.Consumer; +import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Registry; +import net.minecraft.core.particles.ColorParticleOption; +import net.minecraft.core.particles.DustParticleOptions; +import net.minecraft.core.particles.ItemParticleOption; +import net.minecraft.core.particles.ParticleTypes; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.HumanoidArm; +import net.minecraft.world.entity.MobCategory; +import net.minecraft.world.entity.item.ItemEntity; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.ButtonBlock; +import net.minecraft.world.level.block.state.BlockBehaviour; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class AbjectionMod implements ModInitializer { + public static final String MOD_ID = "abjection"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + private static final Identifier SHIT_BALL_ID = Identifier.fromNamespaceAndPath(MOD_ID, "shit_ball"); + private static final Identifier SHIT_CUBE_ID = Identifier.fromNamespaceAndPath(MOD_ID, "shit_cube"); + private static final ResourceKey SHIT_CUBE_BLOCK_KEY = ResourceKey.create(Registries.BLOCK, SHIT_CUBE_ID); + private static final ResourceKey SHIT_BALL_ITEM_KEY = ResourceKey.create(Registries.ITEM, SHIT_BALL_ID); + private static final ResourceKey SHIT_CUBE_ITEM_KEY = ResourceKey.create(Registries.ITEM, SHIT_CUBE_ID); + private static final ResourceKey> SHIT_BALL_ENTITY_KEY = ResourceKey.create(Registries.ENTITY_TYPE, SHIT_BALL_ID); + public static final Block SHIT_CUBE_BLOCK = Registry.register( + BuiltInRegistries.BLOCK, + SHIT_CUBE_ID, + new Block( + BlockBehaviour.Properties.ofFullCopy(Blocks.MUD) + .setId(SHIT_CUBE_BLOCK_KEY) + ) + ); + public static final Item SHIT_BALL_ITEM = Registry.register( + BuiltInRegistries.ITEM, + SHIT_BALL_ID, + new ShitBallItem( + new Item.Properties() + .stacksTo(16) + .useItemDescriptionPrefix() + .setId(SHIT_BALL_ITEM_KEY) + ) + ); + public static final Item SHIT_CUBE_ITEM = Registry.register( + BuiltInRegistries.ITEM, + SHIT_CUBE_ID, + new BlockItem( + SHIT_CUBE_BLOCK, + new Item.Properties() + .useBlockDescriptionPrefix() + .setId(SHIT_CUBE_ITEM_KEY) + ) + ); + public static final EntityType SHIT_BALL_ENTITY_TYPE = Registry.register( + BuiltInRegistries.ENTITY_TYPE, + SHIT_BALL_ID, + EntityType.Builder.of(ShitBallEntity::new, MobCategory.MISC) + .sized(0.25F, 0.25F) + .clientTrackingRange(4) + .updateInterval(10) + .build(SHIT_BALL_ENTITY_KEY) + ); + + private static final int PISS_DURATION_TICKS = 15 * 20; + private static final int VOMIT_DURATION_TICKS = 8 * 20; + private static final int SHIT_DURATION_TICKS = 6 * 20; + private static final int SMOKE_DURATION_TICKS = 10 * 20; + private static final int SHIT_ITEM_SPAWN_INTERVAL_TICKS = 20; + private static final DustParticleOptions PISS_BRIGHT_PARTICLE = new DustParticleOptions(0xEDD62E, 0.24F); + private static final DustParticleOptions PISS_GOLD_PARTICLE = new DustParticleOptions(0xD8B825, 0.2F); + private static final DustParticleOptions PISS_AMBER_PARTICLE = new DustParticleOptions(0xC6941A, 0.19F); + private static final DustParticleOptions PISS_DEEP_GOLD_PARTICLE = new DustParticleOptions(0xB88714, 0.17F); + private static final DustParticleOptions VOMIT_GREEN_PARTICLE = new DustParticleOptions(0x88A436, 0.24F); + private static final DustParticleOptions VOMIT_YELLOW_PARTICLE = new DustParticleOptions(0xB6B342, 0.2F); + private static final DustParticleOptions VOMIT_ORANGE_PARTICLE = new DustParticleOptions(0xA96A32, 0.19F); + private static final DustParticleOptions VOMIT_BROWN_PARTICLE = new DustParticleOptions(0x6E5828, 0.17F); + private static final DustParticleOptions SHIT_SPLAT_PARTICLE = new DustParticleOptions(0x4A2B14, 1.4F); + private static final DustParticleOptions SHIT_MUD_PARTICLE = new DustParticleOptions(0x6A4521, 0.22F); + private static final ColorParticleOption PISS_BRIGHT_MIST_PARTICLE = ColorParticleOption.create(ParticleTypes.ENTITY_EFFECT, 0xF0E35A); + private static final ColorParticleOption PISS_GOLD_MIST_PARTICLE = ColorParticleOption.create(ParticleTypes.ENTITY_EFFECT, 0xD8C43A); + private static final ColorParticleOption PISS_AMBER_MIST_PARTICLE = ColorParticleOption.create(ParticleTypes.ENTITY_EFFECT, 0xCDA128); + private static final ColorParticleOption VOMIT_GREEN_MIST_PARTICLE = ColorParticleOption.create(ParticleTypes.ENTITY_EFFECT, 0x95B33F); + private static final ColorParticleOption VOMIT_YELLOW_MIST_PARTICLE = ColorParticleOption.create(ParticleTypes.ENTITY_EFFECT, 0xC4C35B); + private static final ColorParticleOption VOMIT_ORANGE_MIST_PARTICLE = ColorParticleOption.create(ParticleTypes.ENTITY_EFFECT, 0xB97A3D); + private static final ItemParticleOption VOMIT_FLESH_PARTICLE = + new ItemParticleOption(ParticleTypes.ITEM, Items.ROTTEN_FLESH); + private static final ItemParticleOption VOMIT_EYE_PARTICLE = + new ItemParticleOption(ParticleTypes.ITEM, Items.SPIDER_EYE); + private static final ItemParticleOption VOMIT_POTATO_PARTICLE = + new ItemParticleOption(ParticleTypes.ITEM, Items.POISONOUS_POTATO); + private static final int STREAM_SEGMENTS = 64; + private static final double STREAM_STEP_LENGTH = 0.05D; + private static final double STREAM_STEP_SCALE = STREAM_STEP_LENGTH / 0.28D; + + private final Map activePissStreams = new HashMap<>(); + private final Map activeVomitStreams = new HashMap<>(); + private final Map activeShitStreams = new HashMap<>(); + private final Map activeSmokeStreams = new HashMap<>(); + + @Override + public void onInitialize() { + CommandRegistrationCallback.EVENT.register((dispatcher, registryAccess, environment) -> { + dispatcher.register(Commands.literal("piss") + .executes(context -> startPissing(context.getSource()))); + dispatcher.register(Commands.literal("vomit") + .executes(context -> startVomiting(context.getSource()))); + dispatcher.register(Commands.literal("shit") + .executes(context -> startShitting(context.getSource()))); + dispatcher.register(Commands.literal("smoke") + .executes(context -> startSmoking(context.getSource()))); + }); + ServerTickEvents.END_SERVER_TICK.register(server -> { + tickActiveStreams(server, this.activePissStreams, this::spawnPissStream); + tickActiveStreams(server, this.activeVomitStreams, this::spawnVomitStream); + tickActiveStreams(server, this.activeShitStreams, this::spawnShitStream); + tickActiveStreams(server, this.activeSmokeStreams, this::spawnSmokeEffect); + }); + + LOGGER.info("Abjection is loaded and ready."); + } + + private int startPissing(CommandSourceStack source) throws CommandSyntaxException { + ServerPlayer player = source.getPlayerOrException(); + boolean restarted = this.activePissStreams.containsKey(player.getUUID()); + this.activePissStreams.put(player.getUUID(), PISS_DURATION_TICKS); + + Component feedback = restarted + ? Component.literal("Le timer repart pour 15 secondes.") + : Component.literal("C'est parti pour 15 secondes."); + source.sendSuccess(() -> feedback, false); + return Command.SINGLE_SUCCESS; + } + + private int startVomiting(CommandSourceStack source) throws CommandSyntaxException { + ServerPlayer player = source.getPlayerOrException(); + boolean restarted = this.activeVomitStreams.containsKey(player.getUUID()); + this.activeVomitStreams.put(player.getUUID(), VOMIT_DURATION_TICKS); + + Component feedback = restarted + ? Component.literal("Tu revomis pour 8 secondes.") + : Component.literal("Beurk. Tu vomis pendant 8 secondes."); + source.sendSuccess(() -> feedback, false); + return Command.SINGLE_SUCCESS; + } + + private int startShitting(CommandSourceStack source) throws CommandSyntaxException { + ServerPlayer player = source.getPlayerOrException(); + boolean restarted = this.activeShitStreams.containsKey(player.getUUID()); + this.activeShitStreams.put(player.getUUID(), SHIT_DURATION_TICKS); + spawnShitDrop(player.level(), player); + + Component feedback = restarted + ? Component.literal("Le jet de merde repart pour 6 secondes.") + : Component.literal("Tu chies en jet pendant 6 secondes."); + source.sendSuccess(() -> feedback, false); + return Command.SINGLE_SUCCESS; + } + + private int startSmoking(CommandSourceStack source) throws CommandSyntaxException { + ServerPlayer player = source.getPlayerOrException(); + boolean restarted = this.activeSmokeStreams.containsKey(player.getUUID()); + this.activeSmokeStreams.put(player.getUUID(), SMOKE_DURATION_TICKS); + + Component feedback = restarted + ? Component.literal("Tu continues de fumer pendant 10 secondes.") + : Component.literal("Tu souffles de la fumee pendant 10 secondes."); + source.sendSuccess(() -> feedback, false); + return Command.SINGLE_SUCCESS; + } + + private void tickActiveStreams(MinecraftServer server, Map activeStreams, Consumer emitter) { + if (activeStreams.isEmpty()) { + return; + } + + Iterator> iterator = activeStreams.entrySet().iterator(); + while (iterator.hasNext()) { + Map.Entry entry = iterator.next(); + ServerPlayer player = server.getPlayerList().getPlayer(entry.getKey()); + if (player == null || !player.isAlive() || player.isSpectator()) { + iterator.remove(); + continue; + } + + emitter.accept(player); + + int remaining = entry.getValue() - 1; + if (remaining <= 0) { + iterator.remove(); + } else { + entry.setValue(remaining); + } + } + } + + private void spawnPissStream(ServerPlayer player) { + ServerLevel world = player.level(); + Vec3 position = getPissStreamOrigin(player); + Vec3 velocity = getPissInitialVelocity(player); + + for (int step = 0; step < STREAM_SEGMENTS; step++) { + Vec3 next = position.add(velocity.scale(STREAM_STEP_LENGTH)); + Vec3 midpoint = position.lerp(next, 0.5D); + + spawnPissTrail(world, midpoint, step); + + HitResult hit = world.clip(new ClipContext( + position, + next, + ClipContext.Block.COLLIDER, + ClipContext.Fluid.ANY, + player + )); + if (hit.getType() != HitResult.Type.MISS) { + tryActivateRedstoneButton(world, player, hit); + spawnPissImpact(world, hit.getLocation()); + return; + } + + position = next; + velocity = velocity + .add(0.0D, -0.03D * STREAM_STEP_SCALE, 0.0D) + .scale(Math.pow(0.985D, STREAM_STEP_SCALE)); + if (position.y < world.getMinY()) { + return; + } + } + } + + private void spawnVomitStream(ServerPlayer player) { + ServerLevel world = player.level(); + Vec3 position = getVomitOrigin(player); + Vec3 velocity = getVomitInitialVelocity(player); + + spawnVomitMouthBurst(world, position); + + for (int step = 0; step < STREAM_SEGMENTS; step++) { + Vec3 next = position.add(velocity.scale(STREAM_STEP_LENGTH)); + Vec3 midpoint = position.lerp(next, 0.5D); + + spawnVomitTrail(world, midpoint, step); + + HitResult hit = world.clip(new ClipContext( + position, + next, + ClipContext.Block.COLLIDER, + ClipContext.Fluid.ANY, + player + )); + if (hit.getType() != HitResult.Type.MISS) { + spawnVomitImpact(world, hit.getLocation()); + return; + } + + position = next; + velocity = velocity + .add(0.0D, -0.038D * STREAM_STEP_SCALE, 0.0D) + .scale(Math.pow(0.982D, STREAM_STEP_SCALE)); + if (position.y < world.getMinY()) { + return; + } + } + } + + private void spawnShitStream(ServerPlayer player) { + ServerLevel world = player.level(); + Vec3 position = getShitOrigin(player); + Vec3 velocity = getShitInitialVelocity(player); + if (player.tickCount % SHIT_ITEM_SPAWN_INTERVAL_TICKS == 0) { + spawnShitDrop(world, player); + } + + for (int step = 0; step < STREAM_SEGMENTS; step++) { + Vec3 next = position.add(velocity.scale(STREAM_STEP_LENGTH)); + Vec3 midpoint = position.lerp(next, 0.5D); + + spawnShitTrail(world, midpoint, step); + + HitResult hit = world.clip(new ClipContext( + position, + next, + ClipContext.Block.COLLIDER, + ClipContext.Fluid.ANY, + player + )); + if (hit.getType() != HitResult.Type.MISS) { + spawnShitImpact(world, hit.getLocation()); + return; + } + + position = next; + velocity = velocity + .add(0.0D, -0.032D * STREAM_STEP_SCALE, 0.0D) + .scale(Math.pow(0.986D, STREAM_STEP_SCALE)); + if (position.y < world.getMinY()) { + return; + } + } + } + + private void spawnSmokeEffect(ServerPlayer player) { + ServerLevel world = player.level(); + Vec3 mouth = getSmokeOrigin(player); + + world.sendParticles(ParticleTypes.SMOKE, mouth.x, mouth.y, mouth.z, 2, 0.015D, 0.01D, 0.015D, 0.003D); + + if (world.getRandom().nextInt(3) == 0) { + world.sendParticles(ParticleTypes.WHITE_SMOKE, mouth.x, mouth.y, mouth.z, 1, 0.01D, 0.008D, 0.01D, 0.002D); + } + } + + private Vec3 getPissStreamOrigin(ServerPlayer player) { + Vec3 forward = Vec3.directionFromRotation(0.0F, player.getYRot()).normalize(); + Vec3 right = new Vec3(-forward.z, 0.0D, forward.x); + double sideOffset = player.getMainArm() == HumanoidArm.RIGHT ? -0.12D : 0.12D; + + return new Vec3(player.getX(), player.getY(), player.getZ()) + .add(0.0D, player.getBbHeight() * 0.55D, 0.0D) + .add(forward.scale(0.24D)) + .add(right.scale(sideOffset)); + } + + private Vec3 getPissInitialVelocity(ServerPlayer player) { + float pitch = Mth.clamp(player.getXRot() + 22.0F, 6.0F, 55.0F); + Vec3 direction = Vec3.directionFromRotation(pitch, player.getYRot()).normalize(); + Vec3 movement = player.getDeltaMovement().multiply(0.18D, 0.0D, 0.18D); + return direction.scale(1.05D).add(movement); + } + + private Vec3 getVomitOrigin(ServerPlayer player) { + Vec3 forward = Vec3.directionFromRotation(player.getXRot(), player.getYRot()).normalize(); + return new Vec3(player.getX(), player.getY(), player.getZ()) + .add(0.0D, player.getBbHeight() * 0.82D, 0.0D) + .add(forward.scale(0.18D)); + } + + private Vec3 getVomitInitialVelocity(ServerPlayer player) { + float pitch = Mth.clamp(player.getXRot() + 8.0F, -18.0F, 42.0F); + Vec3 direction = Vec3.directionFromRotation(pitch, player.getYRot()).normalize(); + Vec3 movement = player.getDeltaMovement().multiply(0.15D, 0.0D, 0.15D); + return direction.scale(0.8D).add(movement); + } + + private Vec3 getShitOrigin(ServerPlayer player) { + Vec3 forward = Vec3.directionFromRotation(0.0F, player.getYRot()).normalize(); + Vec3 backward = forward.scale(-1.0D); + return new Vec3(player.getX(), player.getY(), player.getZ()) + .add(0.0D, player.getBbHeight() * 0.44D, 0.0D) + .add(backward.scale(0.16D)); + } + + private Vec3 getShitInitialVelocity(ServerPlayer player) { + Vec3 backward = Vec3.directionFromRotation(0.0F, player.getYRot()).normalize().scale(-1.0D); + Vec3 movement = player.getDeltaMovement().multiply(0.1D, 0.0D, 0.1D); + return backward.scale(0.68D).add(0.0D, 0.08D, 0.0D).add(movement); + } + + private Vec3 getSmokeOrigin(ServerPlayer player) { + Vec3 forward = Vec3.directionFromRotation(player.getXRot(), player.getYRot()).normalize(); + return new Vec3(player.getX(), player.getY(), player.getZ()) + .add(0.0D, player.getBbHeight() * 0.82D, 0.0D) + .add(forward.scale(0.12D)); + } + + private void spawnVomitTrail(ServerLevel world, Vec3 midpoint, int step) { + world.sendParticles(getVomitCoreParticle(step), midpoint.x, midpoint.y, midpoint.z, 2, 0.012D, 0.012D, 0.012D, 0.0D); + + if ((step & 1) == 0) { + world.sendParticles(getVomitChunkDustParticle(step), midpoint.x, midpoint.y, midpoint.z, 2, 0.01D, 0.01D, 0.01D, 0.0D); + } + if (step % 4 == 0) { + world.sendParticles(VOMIT_BROWN_PARTICLE, midpoint.x, midpoint.y, midpoint.z, 1, 0.008D, 0.008D, 0.008D, 0.0D); + } + } + + private void spawnVomitMouthBurst(ServerLevel world, Vec3 mouthPos) { + world.sendParticles(ParticleTypes.WHITE_SMOKE, mouthPos.x, mouthPos.y, mouthPos.z, 2, 0.012D, 0.01D, 0.012D, 0.002D); + world.sendParticles(ParticleTypes.SMOKE, mouthPos.x, mouthPos.y, mouthPos.z, 1, 0.008D, 0.008D, 0.008D, 0.001D); + } + + private void spawnShitDrop(ServerLevel world, ServerPlayer player) { + Vec3 backward = Vec3.directionFromRotation(0.0F, player.getYRot()).normalize().scale(-1.0D); + Vec3 dropPos = getShitOrigin(player) + .add(backward.scale(0.08D)) + .add(0.0D, -0.08D, 0.0D); + Vec3 dropVelocity = backward.scale(0.05D).add(0.0D, 0.02D, 0.0D); + + ItemEntity itemEntity = new ItemEntity( + world, + dropPos.x, + dropPos.y, + dropPos.z, + new ItemStack(SHIT_BALL_ITEM), + dropVelocity.x, + dropVelocity.y, + dropVelocity.z + ); + itemEntity.setPickUpDelay(10); + itemEntity.setThrower(player); + world.addFreshEntity(itemEntity); + } + + private void spawnPissTrail(ServerLevel world, Vec3 midpoint, int step) { + world.sendParticles(getPissCoreParticle(step), midpoint.x, midpoint.y, midpoint.z, 2, 0.012D, 0.012D, 0.012D, 0.0D); + + if ((step & 1) == 0) { + world.sendParticles(getPissSecondaryParticle(step), midpoint.x, midpoint.y, midpoint.z, 2, 0.01D, 0.01D, 0.01D, 0.0D); + } + if (step % 3 == 0) { + world.sendParticles(getPissMistParticle(step), midpoint.x, midpoint.y, midpoint.z, 2, 0.012D, 0.012D, 0.012D, 0.0D); + } + if (step % 4 == 0) { + world.sendParticles(PISS_DEEP_GOLD_PARTICLE, midpoint.x, midpoint.y, midpoint.z, 1, 0.008D, 0.008D, 0.008D, 0.0D); + } + } + + private DustParticleOptions getPissCoreParticle(int step) { + return switch (step % 3) { + case 0 -> PISS_BRIGHT_PARTICLE; + case 1 -> PISS_GOLD_PARTICLE; + default -> PISS_AMBER_PARTICLE; + }; + } + + private DustParticleOptions getPissSecondaryParticle(int step) { + return step % 4 == 0 ? PISS_DEEP_GOLD_PARTICLE : PISS_BRIGHT_PARTICLE; + } + + private ColorParticleOption getPissMistParticle(int step) { + return switch (step % 3) { + case 0 -> PISS_BRIGHT_MIST_PARTICLE; + case 1 -> PISS_GOLD_MIST_PARTICLE; + default -> PISS_AMBER_MIST_PARTICLE; + }; + } + + private DustParticleOptions getVomitCoreParticle(int step) { + return switch (step % 3) { + case 0 -> VOMIT_GREEN_PARTICLE; + case 1 -> VOMIT_YELLOW_PARTICLE; + default -> VOMIT_ORANGE_PARTICLE; + }; + } + + private DustParticleOptions getVomitChunkDustParticle(int step) { + return step % 4 == 0 ? VOMIT_BROWN_PARTICLE : VOMIT_GREEN_PARTICLE; + } + + private ColorParticleOption getVomitMistParticle(int step) { + return switch (step % 3) { + case 0 -> VOMIT_GREEN_MIST_PARTICLE; + case 1 -> VOMIT_YELLOW_MIST_PARTICLE; + default -> VOMIT_ORANGE_MIST_PARTICLE; + }; + } + + private void spawnShitTrail(ServerLevel world, Vec3 midpoint, int step) { + float progress = step / (float) (STREAM_SEGMENTS - 1); + float inflatedProgress = progress * progress; + float primarySize = Mth.lerp(inflatedProgress, 0.05F, 1.55F); + float chunkSize = Mth.lerp(inflatedProgress, 0.04F, 0.85F); + + world.sendParticles( + new DustParticleOptions(0x5B3417, primarySize), + midpoint.x, + midpoint.y, + midpoint.z, + 1, + 0.002D + progress * 0.018D, + 0.002D + progress * 0.018D, + 0.002D + progress * 0.018D, + 0.0D + ); + + if ((step & 1) == 0) { + world.sendParticles( + new DustParticleOptions(0x75461F, chunkSize), + midpoint.x, + midpoint.y, + midpoint.z, + 1, + 0.003D + progress * 0.015D, + 0.003D + progress * 0.015D, + 0.003D + progress * 0.015D, + 0.0D + ); + } + + } + + private ItemParticleOption getRandomVomitChunkParticle(ServerLevel world) { + return switch (world.getRandom().nextInt(3)) { + case 0 -> VOMIT_FLESH_PARTICLE; + case 1 -> VOMIT_EYE_PARTICLE; + default -> VOMIT_POTATO_PARTICLE; + }; + } + + private void tryActivateRedstoneButton(ServerLevel world, ServerPlayer player, HitResult hit) { + if (!(hit instanceof BlockHitResult blockHit)) { + return; + } + + BlockPos blockPos = blockHit.getBlockPos(); + BlockState state = world.getBlockState(blockPos); + if (!(state.getBlock() instanceof ButtonBlock buttonBlock) || state.getValue(ButtonBlock.POWERED)) { + return; + } + + buttonBlock.press(state, world, blockPos, player); + } + + private void spawnPissImpact(ServerLevel world, Vec3 impactPos) { + world.sendParticles(PISS_BRIGHT_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 3, 0.02D, 0.02D, 0.02D, 0.0D); + world.sendParticles(PISS_GOLD_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 3, 0.02D, 0.02D, 0.02D, 0.0D); + world.sendParticles(PISS_AMBER_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 3, 0.02D, 0.02D, 0.02D, 0.0D); + world.sendParticles(PISS_BRIGHT_MIST_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 2, 0.03D, 0.022D, 0.03D, 0.0D); + world.sendParticles(PISS_GOLD_MIST_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 2, 0.03D, 0.022D, 0.03D, 0.0D); + world.sendParticles(PISS_AMBER_MIST_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 2, 0.03D, 0.022D, 0.03D, 0.0D); + world.sendParticles(ParticleTypes.BUBBLE_POP, impactPos.x, impactPos.y, impactPos.z, 8, 0.05D, 0.03D, 0.05D, 0.01D); + } + + private void spawnVomitImpact(ServerLevel world, Vec3 impactPos) { + world.sendParticles(VOMIT_GREEN_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 3, 0.02D, 0.02D, 0.02D, 0.0D); + world.sendParticles(VOMIT_YELLOW_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 3, 0.02D, 0.02D, 0.02D, 0.0D); + world.sendParticles(VOMIT_ORANGE_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 3, 0.02D, 0.02D, 0.02D, 0.0D); + world.sendParticles(VOMIT_BROWN_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 3, 0.02D, 0.02D, 0.02D, 0.0D); + world.sendParticles(VOMIT_GREEN_MIST_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 2, 0.03D, 0.022D, 0.03D, 0.0D); + world.sendParticles(VOMIT_YELLOW_MIST_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 2, 0.03D, 0.022D, 0.03D, 0.0D); + world.sendParticles(VOMIT_ORANGE_MIST_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 2, 0.03D, 0.022D, 0.03D, 0.0D); + world.sendParticles(ParticleTypes.SPLASH, impactPos.x, impactPos.y, impactPos.z, 4, 0.035D, 0.015D, 0.035D, 0.01D); + world.sendParticles(ParticleTypes.SNEEZE, impactPos.x, impactPos.y, impactPos.z, 2, 0.03D, 0.02D, 0.03D, 0.0D); + world.sendParticles(ParticleTypes.ITEM_SLIME, impactPos.x, impactPos.y, impactPos.z, 3, 0.03D, 0.02D, 0.03D, 0.0D); + + for (int i = 0; i < 2; i++) { + world.sendParticles(getRandomVomitChunkParticle(world), impactPos.x, impactPos.y, impactPos.z, 1, 0.03D, 0.02D, 0.03D, 0.0D); + } + } + + private void spawnShitImpact(ServerLevel world, Vec3 impactPos) { + world.sendParticles(SHIT_SPLAT_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 2, 0.03D, 0.02D, 0.03D, 0.0D); + world.sendParticles(SHIT_MUD_PARTICLE, impactPos.x, impactPos.y, impactPos.z, 4, 0.04D, 0.025D, 0.04D, 0.0D); + } +} diff --git a/Fun/abjection/src/main/java/fr/koka99cab/abjection/entity/ShitBallEntity.java b/Fun/abjection/src/main/java/fr/koka99cab/abjection/entity/ShitBallEntity.java new file mode 100644 index 0000000..dcaccbe --- /dev/null +++ b/Fun/abjection/src/main/java/fr/koka99cab/abjection/entity/ShitBallEntity.java @@ -0,0 +1,81 @@ +package fr.koka99cab.abjection.entity; + +import fr.koka99cab.abjection.AbjectionMod; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.sounds.SoundSource; +import net.minecraft.world.effect.MobEffectInstance; +import net.minecraft.world.effect.MobEffects; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.projectile.throwableitemprojectile.Snowball; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.EntityHitResult; +import net.minecraft.world.phys.HitResult; + +public class ShitBallEntity extends Snowball { + private static final int NAUSEA_DURATION_TICKS = 7 * 20; + + public ShitBallEntity(EntityType entityType, Level world) { + super(entityType, world); + } + + public ShitBallEntity(Level world, LivingEntity owner, ItemStack stack) { + this(AbjectionMod.SHIT_BALL_ENTITY_TYPE, world); + this.setOwner(owner); + this.setPos(owner.getX(), owner.getEyeY() - 0.1D, owner.getZ()); + this.setItem(stack.copyWithCount(1)); + } + + public ShitBallEntity(Level world, double x, double y, double z, ItemStack stack) { + this(AbjectionMod.SHIT_BALL_ENTITY_TYPE, world); + this.setPos(x, y, z); + this.setItem(stack.copyWithCount(1)); + } + + @Override + protected Item getDefaultItem() { + return AbjectionMod.SHIT_BALL_ITEM; + } + + @Override + protected void onHitEntity(EntityHitResult entityHitResult) { + super.onHitEntity(entityHitResult); + + if (this.level().isClientSide()) { + return; + } + + if (!(entityHitResult.getEntity() instanceof LivingEntity target)) { + return; + } + + int duration = getNauseaDuration(target); + target.addEffect(new MobEffectInstance(MobEffects.NAUSEA, duration), this.getOwner()); + } + + @Override + protected void onHit(HitResult hitResult) { + if (!this.level().isClientSide()) { + this.level().playSound( + null, + this.getX(), + this.getY(), + this.getZ(), + SoundEvents.MUD_PLACE, + SoundSource.PLAYERS, + 1.0F, + 0.75F + ); + } + + super.onHit(hitResult); + } + + private int getNauseaDuration(LivingEntity target) { + MobEffectInstance currentEffect = target.getEffect(MobEffects.NAUSEA); + int currentDuration = currentEffect != null ? currentEffect.getDuration() : 0; + return currentDuration + NAUSEA_DURATION_TICKS; + } +} diff --git a/Fun/abjection/src/main/java/fr/koka99cab/abjection/item/ShitBallItem.java b/Fun/abjection/src/main/java/fr/koka99cab/abjection/item/ShitBallItem.java new file mode 100644 index 0000000..344d1a1 --- /dev/null +++ b/Fun/abjection/src/main/java/fr/koka99cab/abjection/item/ShitBallItem.java @@ -0,0 +1,59 @@ +package fr.koka99cab.abjection.item; + +import fr.koka99cab.abjection.entity.ShitBallEntity; +import net.minecraft.core.Direction; +import net.minecraft.core.Position; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.sounds.SoundSource; +import net.minecraft.stats.Stats; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.entity.projectile.Projectile; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.SnowballItem; +import net.minecraft.world.level.Level; + +public class ShitBallItem extends SnowballItem { + public ShitBallItem(Item.Properties settings) { + super(settings); + } + + @Override + public InteractionResult use(Level world, Player user, InteractionHand hand) { + ItemStack stack = user.getItemInHand(hand); + world.playSound( + null, + user.getX(), + user.getY(), + user.getZ(), + SoundEvents.SNOWBALL_THROW, + SoundSource.NEUTRAL, + 0.5F, + 0.4F / (world.getRandom().nextFloat() * 0.4F + 0.8F) + ); + + if (world instanceof ServerLevel serverWorld) { + Projectile.spawnProjectileFromRotation( + (projectileWorld, owner, projectileStack) -> new ShitBallEntity(projectileWorld, owner, projectileStack), + serverWorld, + stack, + user, + 0.0F, + PROJECTILE_SHOOT_POWER, + 1.0F + ); + } + + user.awardStat(Stats.ITEM_USED.get(this)); + stack.consume(1, user); + return InteractionResult.SUCCESS; + } + + @Override + public Projectile asProjectile(Level world, Position position, ItemStack stack, Direction direction) { + return new ShitBallEntity(world, position.x(), position.y(), position.z(), stack); + } +} diff --git a/Fun/abjection/src/main/resources/assets/abjection/blockstates/shit_cube.json b/Fun/abjection/src/main/resources/assets/abjection/blockstates/shit_cube.json new file mode 100644 index 0000000..f24a983 --- /dev/null +++ b/Fun/abjection/src/main/resources/assets/abjection/blockstates/shit_cube.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "abjection:block/shit_cube" + } + } +} diff --git a/Fun/abjection/src/main/resources/assets/abjection/icon.png b/Fun/abjection/src/main/resources/assets/abjection/icon.png new file mode 100644 index 0000000..432c8cd Binary files /dev/null and b/Fun/abjection/src/main/resources/assets/abjection/icon.png differ diff --git a/Fun/abjection/src/main/resources/assets/abjection/items/shit_ball.json b/Fun/abjection/src/main/resources/assets/abjection/items/shit_ball.json new file mode 100644 index 0000000..f4fd4fd --- /dev/null +++ b/Fun/abjection/src/main/resources/assets/abjection/items/shit_ball.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "abjection:item/shit_ball" + } +} diff --git a/Fun/abjection/src/main/resources/assets/abjection/items/shit_cube.json b/Fun/abjection/src/main/resources/assets/abjection/items/shit_cube.json new file mode 100644 index 0000000..24403ed --- /dev/null +++ b/Fun/abjection/src/main/resources/assets/abjection/items/shit_cube.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "abjection:item/shit_cube" + } +} diff --git a/Fun/abjection/src/main/resources/assets/abjection/lang/en_us.json b/Fun/abjection/src/main/resources/assets/abjection/lang/en_us.json new file mode 100644 index 0000000..59d2110 --- /dev/null +++ b/Fun/abjection/src/main/resources/assets/abjection/lang/en_us.json @@ -0,0 +1,5 @@ +{ + "item.abjection.shit_ball": "Shit Ball", + "block.abjection.shit_cube": "Shit Cube", + "modmenu.descriptionTranslation.abjection": "A gross Fabric mod packed with nasty commands, messy particles, a throwable shit ball, and one filthy block." +} diff --git a/Fun/abjection/src/main/resources/assets/abjection/lang/fr_fr.json b/Fun/abjection/src/main/resources/assets/abjection/lang/fr_fr.json new file mode 100644 index 0000000..c992ade --- /dev/null +++ b/Fun/abjection/src/main/resources/assets/abjection/lang/fr_fr.json @@ -0,0 +1,5 @@ +{ + "item.abjection.shit_ball": "Boule de merde", + "block.abjection.shit_cube": "Cube de merde", + "modmenu.descriptionTranslation.abjection": "Un mod Fabric degueu avec des commandes crades, des particules sales, une boule de merde a lancer et un bloc bien immonde." +} diff --git a/Fun/abjection/src/main/resources/assets/abjection/models/block/shit_cube.json b/Fun/abjection/src/main/resources/assets/abjection/models/block/shit_cube.json new file mode 100644 index 0000000..67f70fc --- /dev/null +++ b/Fun/abjection/src/main/resources/assets/abjection/models/block/shit_cube.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "abjection:block/shit_cube" + } +} diff --git a/Fun/abjection/src/main/resources/assets/abjection/models/item/shit_ball.json b/Fun/abjection/src/main/resources/assets/abjection/models/item/shit_ball.json new file mode 100644 index 0000000..527638d --- /dev/null +++ b/Fun/abjection/src/main/resources/assets/abjection/models/item/shit_ball.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "abjection:item/shit_ball" + } +} diff --git a/Fun/abjection/src/main/resources/assets/abjection/models/item/shit_cube.json b/Fun/abjection/src/main/resources/assets/abjection/models/item/shit_cube.json new file mode 100644 index 0000000..6b26cf2 --- /dev/null +++ b/Fun/abjection/src/main/resources/assets/abjection/models/item/shit_cube.json @@ -0,0 +1,3 @@ +{ + "parent": "abjection:block/shit_cube" +} diff --git a/Fun/abjection/src/main/resources/assets/abjection/textures/block/shit_cube.png b/Fun/abjection/src/main/resources/assets/abjection/textures/block/shit_cube.png new file mode 100644 index 0000000..432c8cd Binary files /dev/null and b/Fun/abjection/src/main/resources/assets/abjection/textures/block/shit_cube.png differ diff --git a/Fun/abjection/src/main/resources/assets/abjection/textures/item/shit_ball.png b/Fun/abjection/src/main/resources/assets/abjection/textures/item/shit_ball.png new file mode 100644 index 0000000..c2e9e27 Binary files /dev/null and b/Fun/abjection/src/main/resources/assets/abjection/textures/item/shit_ball.png differ diff --git a/Fun/abjection/src/main/resources/data/abjection/loot_table/blocks/shit_cube.json b/Fun/abjection/src/main/resources/data/abjection/loot_table/blocks/shit_cube.json new file mode 100644 index 0000000..cc2f16a --- /dev/null +++ b/Fun/abjection/src/main/resources/data/abjection/loot_table/blocks/shit_cube.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "abjection:shit_cube" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "abjection:blocks/shit_cube" +} diff --git a/Fun/abjection/src/main/resources/data/abjection/recipe/shit_cube.json b/Fun/abjection/src/main/resources/data/abjection/recipe/shit_cube.json new file mode 100644 index 0000000..9d62994 --- /dev/null +++ b/Fun/abjection/src/main/resources/data/abjection/recipe/shit_cube.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "building", + "key": { + "#": "abjection:shit_ball" + }, + "pattern": [ + "###", + "###", + "###" + ], + "result": { + "count": 1, + "id": "abjection:shit_cube" + } +} diff --git a/Fun/abjection/src/main/resources/data/minecraft/tags/block/mineable/shovel.json b/Fun/abjection/src/main/resources/data/minecraft/tags/block/mineable/shovel.json new file mode 100644 index 0000000..fd84b1d --- /dev/null +++ b/Fun/abjection/src/main/resources/data/minecraft/tags/block/mineable/shovel.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "abjection:shit_cube" + ] +} diff --git a/Fun/abjection/src/main/resources/fabric.mod.json b/Fun/abjection/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..bfd74e5 --- /dev/null +++ b/Fun/abjection/src/main/resources/fabric.mod.json @@ -0,0 +1,27 @@ +{ + "schemaVersion": 1, + "id": "abjection", + "version": "${version}", + "name": "Abjection", + "description": "A gross Fabric mod with nasty commands, particles, a throwable ball, and one filthy block.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "icon": "assets/abjection/icon.png", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.abjection.AbjectionMod" + ], + "client": [ + "fr.koka99cab.abjection.client.AbjectionClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Fun/canon/.gitignore b/Fun/canon/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Fun/canon/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Fun/canon/build.gradle b/Fun/canon/build.gradle new file mode 100644 index 0000000..2e7023f --- /dev/null +++ b/Fun/canon/build.gradle @@ -0,0 +1,80 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +base { + archivesName = project.archives_base_name +} + +repositories { + mavenCentral() +} + +loom { + splitEnvironmentSourceSets() + + mods { + "canon" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" + + testImplementation platform("org.junit:junit-bom:5.10.2") + testImplementation "org.junit.jupiter:junit-jupiter" + testRuntimeOnly "org.junit.platform:junit-platform-launcher" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +test { + useJUnitPlatform() +} + +jar { + inputs.property "archivesName", project.base.archivesName + + from("../../license.txt") { + rename { "${it}_${inputs.properties.archivesName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + artifactId = project.archives_base_name + from components.java + } + } + + repositories { + } +} diff --git a/Fun/canon/gradle.properties b/Fun/canon/gradle.properties new file mode 100644 index 0000000..f87c38d --- /dev/null +++ b/Fun/canon/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=canon + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Fun/canon/gradle/wrapper/gradle-wrapper.jar b/Fun/canon/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Fun/canon/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Fun/canon/gradle/wrapper/gradle-wrapper.properties b/Fun/canon/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Fun/canon/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Fun/canon/gradlew b/Fun/canon/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Fun/canon/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Fun/canon/gradlew.bat b/Fun/canon/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Fun/canon/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Fun/canon/settings.gradle b/Fun/canon/settings.gradle new file mode 100644 index 0000000..bd7caa4 --- /dev/null +++ b/Fun/canon/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "canon" diff --git a/Fun/canon/src/client/java/fr/koka99cab/canon/client/CanonClient.java b/Fun/canon/src/client/java/fr/koka99cab/canon/client/CanonClient.java new file mode 100755 index 0000000..8087460 --- /dev/null +++ b/Fun/canon/src/client/java/fr/koka99cab/canon/client/CanonClient.java @@ -0,0 +1,16 @@ +package fr.koka99cab.canon.client; + +import fr.koka99cab.canon.client.hud.CameraViewfinderHud; +import fr.koka99cab.canon.client.item.FilmTintSource; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.rendering.v1.level.LevelRenderEvents; + +public final class CanonClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + FilmTintSource.register(); + CameraViewfinderHud.register(); + CanonClientBridge.setCaptureHandler(ClientPhotoCapture::queueCapture); + LevelRenderEvents.END_MAIN.register(context -> ClientPhotoCapture.capturePending()); + } +} diff --git a/Fun/canon/src/client/java/fr/koka99cab/canon/client/ClientPhotoCapture.java b/Fun/canon/src/client/java/fr/koka99cab/canon/client/ClientPhotoCapture.java new file mode 100755 index 0000000..b68534f --- /dev/null +++ b/Fun/canon/src/client/java/fr/koka99cab/canon/client/ClientPhotoCapture.java @@ -0,0 +1,120 @@ +package fr.koka99cab.canon.client; + +import fr.koka99cab.canon.CanonConstants; +import fr.koka99cab.canon.CanonMod; +import fr.koka99cab.canon.client.hud.CameraViewfinderLayout; +import fr.koka99cab.canon.item.PhotoStyle; +import fr.koka99cab.canon.network.CapturePhotoPayload; +import fr.koka99cab.canon.photo.PhotoMapPalette; +import com.mojang.blaze3d.platform.NativeImage; +import com.mojang.blaze3d.platform.Window; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.minecraft.client.Minecraft; +import net.minecraft.client.Screenshot; +import net.minecraft.network.chat.Component; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.util.ARGB; +import net.minecraft.world.item.ItemStack; + +public final class ClientPhotoCapture { + private static PendingCapture pendingCapture; + + private ClientPhotoCapture() { + } + + public static void queueCapture(ItemStack cameraStack, PhotoStyle style) { + Minecraft client = Minecraft.getInstance(); + if (client.player == null || client.level == null || !ClientPlayNetworking.canSend(CapturePhotoPayload.ID)) { + return; + } + + pendingCapture = new PendingCapture(cameraStack, style); + } + + public static void capturePending() { + Minecraft client = Minecraft.getInstance(); + PendingCapture capture = pendingCapture; + if (capture == null || client.player == null || client.level == null || !ClientPlayNetworking.canSend(CapturePhotoPayload.ID)) { + return; + } + + pendingCapture = null; + Screenshot.takeScreenshot(client.getMainRenderTarget(), screenshot -> { + try (screenshot) { + Window window = client.getWindow(); + CameraViewfinderLayout.Square square = CameraViewfinderLayout.forWindow(window.getGuiScaledWidth(), window.getGuiScaledHeight()); + double scaleX = screenshot.getWidth() / (double)window.getGuiScaledWidth(); + double scaleY = screenshot.getHeight() / (double)window.getGuiScaledHeight(); + int offsetX = clamp(Math.round((float)(square.left() * scaleX)), 0, screenshot.getWidth() - 1); + int offsetY = clamp(Math.round((float)(square.top() * scaleY)), 0, screenshot.getHeight() - 1); + int right = clamp(Math.round((float)(square.right() * scaleX)), offsetX + 1, screenshot.getWidth()); + int bottom = clamp(Math.round((float)(square.bottom() * scaleY)), offsetY + 1, screenshot.getHeight()); + int cropWidth = right - offsetX; + int cropHeight = bottom - offsetY; + byte[] colors = new byte[CanonConstants.PHOTO_PIXEL_COUNT]; + + for (int y = 0; y < CanonConstants.MAP_SIZE; y++) { + for (int x = 0; x < CanonConstants.MAP_SIZE; x++) { + float sampleX = offsetX + ((x + 0.5F) * cropWidth / CanonConstants.MAP_SIZE) - 0.5F; + float sampleY = offsetY + ((y + 0.5F) * cropHeight / CanonConstants.MAP_SIZE) - 0.5F; + int argb = capture.style().applyFilter(sampleBilinearArgb(screenshot, sampleX, sampleY)); + colors[x + y * CanonConstants.MAP_SIZE] = PhotoMapPalette.nearestColor(argb); + } + } + + ClientPlayNetworking.send(new CapturePhotoPayload(colors)); + client.player.getCooldowns().addCooldown(capture.cameraStack(), CanonConstants.CAMERA_COOLDOWN_TICKS); + client.player.playSound(SoundEvents.SPYGLASS_USE, 0.7F, 1.35F); + } catch (Exception exception) { + CanonMod.LOGGER.warn("Failed to capture photo", exception); + if (client.player != null) { + client.player.sendOverlayMessage(Component.translatable("message.canon.camera.capture_failed")); + } + } + }); + } + + private static int clamp(int value, int min, int max) { + return Math.max(min, Math.min(max, value)); + } + + private static int sampleBilinearArgb(NativeImage image, float x, float y) { + int x0 = clamp((int)Math.floor(x), 0, image.getWidth() - 1); + int y0 = clamp((int)Math.floor(y), 0, image.getHeight() - 1); + int x1 = clamp(x0 + 1, 0, image.getWidth() - 1); + int y1 = clamp(y0 + 1, 0, image.getHeight() - 1); + float tx = clamp01(x - x0); + float ty = clamp01(y - y0); + + int c00 = opaqueArgb(image.getPixel(x0, y0)); + int c10 = opaqueArgb(image.getPixel(x1, y0)); + int c01 = opaqueArgb(image.getPixel(x0, y1)); + int c11 = opaqueArgb(image.getPixel(x1, y1)); + + int red = bilerp(ARGB.red(c00), ARGB.red(c10), ARGB.red(c01), ARGB.red(c11), tx, ty); + int green = bilerp(ARGB.green(c00), ARGB.green(c10), ARGB.green(c01), ARGB.green(c11), tx, ty); + int blue = bilerp(ARGB.blue(c00), ARGB.blue(c10), ARGB.blue(c01), ARGB.blue(c11), tx, ty); + return ARGB.color(255, red, green, blue); + } + + private static int opaqueArgb(int argb) { + return ARGB.opaque(argb); + } + + private static int bilerp(int c00, int c10, int c01, int c11, float tx, float ty) { + float top = lerp(c00, c10, tx); + float bottom = lerp(c01, c11, tx); + return Math.round(lerp(top, bottom, ty)); + } + + private static float lerp(float from, float to, float delta) { + return from + (to - from) * delta; + } + + private static float clamp01(float value) { + return Math.max(0.0F, Math.min(1.0F, value)); + } + + private record PendingCapture(ItemStack cameraStack, PhotoStyle style) { + } +} diff --git a/Fun/canon/src/client/java/fr/koka99cab/canon/client/hud/CameraViewfinderHud.java b/Fun/canon/src/client/java/fr/koka99cab/canon/client/hud/CameraViewfinderHud.java new file mode 100755 index 0000000..a695c3d --- /dev/null +++ b/Fun/canon/src/client/java/fr/koka99cab/canon/client/hud/CameraViewfinderHud.java @@ -0,0 +1,88 @@ +package fr.koka99cab.canon.client.hud; + +import fr.koka99cab.canon.CanonMod; +import fr.koka99cab.canon.item.CameraItem; +import net.fabricmc.fabric.api.client.rendering.v1.hud.HudElementRegistry; +import net.fabricmc.fabric.api.client.rendering.v1.hud.VanillaHudElements; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.world.item.ItemStack; + +public final class CameraViewfinderHud { + private static final int OUTER_SHADE = 0xA6000000; + private static final int INNER_SHADE = 0x4C000000; + private static final int FRAME_COLOR = 0xD8E5DED2; + private static final int CORNER_COLOR = 0xFFF5EFE2; + private static final int FRAME_THICKNESS = 2; + + private CameraViewfinderHud() { + } + + public static void register() { + HudElementRegistry.attachElementAfter(VanillaHudElements.MISC_OVERLAYS, CanonMod.id("camera_viewfinder"), CameraViewfinderHud::render); + } + + private static void render(GuiGraphicsExtractor context, DeltaTracker tickCounter) { + Minecraft client = Minecraft.getInstance(); + if (!shouldRender(client)) { + return; + } + + int width = context.guiWidth(); + int height = context.guiHeight(); + CameraViewfinderLayout.Square square = CameraViewfinderLayout.forWindow(width, height); + int left = square.left(); + int top = square.top(); + int right = square.right(); + int bottom = square.bottom(); + + // Darken everything outside the central square so the viewfinder reads clearly. + context.fill(0, 0, width, top, OUTER_SHADE); + context.fill(0, bottom, width, height, OUTER_SHADE); + context.fill(0, top, left, bottom, OUTER_SHADE); + context.fill(right, top, width, bottom, OUTER_SHADE); + + // Add a soft inner rim to make the clear area feel recessed into the camera body. + context.fill(left, top, right, top + FRAME_THICKNESS, INNER_SHADE); + context.fill(left, bottom - FRAME_THICKNESS, right, bottom, INNER_SHADE); + context.fill(left, top, left + FRAME_THICKNESS, bottom, INNER_SHADE); + context.fill(right - FRAME_THICKNESS, top, right, bottom, INNER_SHADE); + + drawFrame(context, left, top, right, bottom); + } + + private static boolean shouldRender(Minecraft client) { + if (client.player == null || client.level == null || client.screen != null) { + return false; + } + + if (!client.options.getCameraType().isFirstPerson()) { + return false; + } + + return isCamera(client.player.getMainHandItem()) || isCamera(client.player.getOffhandItem()); + } + + private static boolean isCamera(ItemStack stack) { + return stack.getItem() instanceof CameraItem; + } + + private static void drawFrame(GuiGraphicsExtractor context, int left, int top, int right, int bottom) { + int cornerLength = Math.max(12, (right - left) / 10); + + context.fill(left, top, right, top + 1, FRAME_COLOR); + context.fill(left, bottom - 1, right, bottom, FRAME_COLOR); + context.fill(left, top, left + 1, bottom, FRAME_COLOR); + context.fill(right - 1, top, right, bottom, FRAME_COLOR); + + context.fill(left, top, left + cornerLength, top + FRAME_THICKNESS, CORNER_COLOR); + context.fill(left, top, left + FRAME_THICKNESS, top + cornerLength, CORNER_COLOR); + context.fill(right - cornerLength, top, right, top + FRAME_THICKNESS, CORNER_COLOR); + context.fill(right - FRAME_THICKNESS, top, right, top + cornerLength, CORNER_COLOR); + context.fill(left, bottom - FRAME_THICKNESS, left + cornerLength, bottom, CORNER_COLOR); + context.fill(left, bottom - cornerLength, left + FRAME_THICKNESS, bottom, CORNER_COLOR); + context.fill(right - cornerLength, bottom - FRAME_THICKNESS, right, bottom, CORNER_COLOR); + context.fill(right - FRAME_THICKNESS, bottom - cornerLength, right, bottom, CORNER_COLOR); + } +} diff --git a/Fun/canon/src/client/java/fr/koka99cab/canon/client/hud/CameraViewfinderLayout.java b/Fun/canon/src/client/java/fr/koka99cab/canon/client/hud/CameraViewfinderLayout.java new file mode 100755 index 0000000..29e788a --- /dev/null +++ b/Fun/canon/src/client/java/fr/koka99cab/canon/client/hud/CameraViewfinderLayout.java @@ -0,0 +1,26 @@ +package fr.koka99cab.canon.client.hud; + +public final class CameraViewfinderLayout { + private static final float VIEWFINDER_SCALE = 0.72F; + private static final int MIN_VIEWFINDER_SIZE = 96; + + private CameraViewfinderLayout() { + } + + public static Square forWindow(int width, int height) { + int squareSize = Math.max(MIN_VIEWFINDER_SIZE, Math.round(Math.min(width, height) * VIEWFINDER_SCALE)); + int left = (width - squareSize) / 2; + int top = (height - squareSize) / 2; + return new Square(left, top, squareSize); + } + + public record Square(int left, int top, int size) { + public int right() { + return this.left + this.size; + } + + public int bottom() { + return this.top + this.size; + } + } +} diff --git a/Fun/canon/src/client/java/fr/koka99cab/canon/client/item/FilmTintSource.java b/Fun/canon/src/client/java/fr/koka99cab/canon/client/item/FilmTintSource.java new file mode 100755 index 0000000..b706043 --- /dev/null +++ b/Fun/canon/src/client/java/fr/koka99cab/canon/client/item/FilmTintSource.java @@ -0,0 +1,50 @@ +package fr.koka99cab.canon.client.item; + +import fr.koka99cab.canon.CanonMod; +import fr.koka99cab.canon.item.FilmItem; +import fr.koka99cab.canon.item.PhotoStyle; +import fr.koka99cab.canon.registry.CanonItems; +import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import java.lang.reflect.Field; +import java.lang.reflect.Method; +import net.minecraft.client.color.item.ItemTintSource; +import net.minecraft.client.color.item.ItemTintSources; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.util.ARGB; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.item.ItemStack; + +public record FilmTintSource(int defaultColor) implements ItemTintSource { + public static final MapCodec CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + Codec.INT.optionalFieldOf("default", ARGB.opaque(PhotoStyle.WHITE.accentColor())).forGetter(FilmTintSource::defaultColor) + ).apply(instance, FilmTintSource::new)); + + public static void register() { + try { + Field idMapperField = ItemTintSources.class.getDeclaredField("ID_MAPPER"); + idMapperField.setAccessible(true); + Object idMapper = idMapperField.get(null); + Method put = idMapper.getClass().getMethod("put", Object.class, Object.class); + put.invoke(idMapper, CanonMod.id("film_style"), CODEC); + } catch (ReflectiveOperationException exception) { + CanonMod.LOGGER.warn("Failed to register film item tint source", exception); + } + } + + @Override + public MapCodec type() { + return CODEC; + } + + @Override + public int calculate(ItemStack stack, ClientLevel world, LivingEntity user) { + if (stack.getItem() != CanonItems.FILM) { + return this.defaultColor; + } + + PhotoStyle style = FilmItem.getStyle(stack); + return style == null ? this.defaultColor : ARGB.opaque(style.accentColor()); + } +} diff --git a/Fun/canon/src/main/java/fr/koka99cab/canon/CanonConstants.java b/Fun/canon/src/main/java/fr/koka99cab/canon/CanonConstants.java new file mode 100755 index 0000000..272d355 --- /dev/null +++ b/Fun/canon/src/main/java/fr/koka99cab/canon/CanonConstants.java @@ -0,0 +1,11 @@ +package fr.koka99cab.canon; + +public final class CanonConstants { + public static final int CAMERA_CAPACITY = 8; + public static final int MAP_SIZE = 128; + public static final int PHOTO_PIXEL_COUNT = MAP_SIZE * MAP_SIZE; + public static final int CAMERA_COOLDOWN_TICKS = 10; + + private CanonConstants() { + } +} diff --git a/Fun/canon/src/main/java/fr/koka99cab/canon/CanonMod.java b/Fun/canon/src/main/java/fr/koka99cab/canon/CanonMod.java new file mode 100755 index 0000000..bab5246 --- /dev/null +++ b/Fun/canon/src/main/java/fr/koka99cab/canon/CanonMod.java @@ -0,0 +1,26 @@ +package fr.koka99cab.canon; + +import fr.koka99cab.canon.component.CanonDataComponents; +import fr.koka99cab.canon.network.CanonNetworking; +import fr.koka99cab.canon.registry.CanonItems; +import net.fabricmc.api.ModInitializer; +import net.minecraft.resources.Identifier; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class CanonMod implements ModInitializer { + public static final String MOD_ID = "canon"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + public static Identifier id(String path) { + return Identifier.fromNamespaceAndPath(MOD_ID, path); + } + + @Override + public void onInitialize() { + CanonDataComponents.initialize(); + CanonItems.initialize(); + CanonNetworking.initialize(); + LOGGER.info("Canon loaded"); + } +} diff --git a/Fun/canon/src/main/java/fr/koka99cab/canon/client/CanonClientBridge.java b/Fun/canon/src/main/java/fr/koka99cab/canon/client/CanonClientBridge.java new file mode 100755 index 0000000..e3cbc3b --- /dev/null +++ b/Fun/canon/src/main/java/fr/koka99cab/canon/client/CanonClientBridge.java @@ -0,0 +1,25 @@ +package fr.koka99cab.canon.client; + +import fr.koka99cab.canon.item.PhotoStyle; +import net.minecraft.world.item.ItemStack; + +public final class CanonClientBridge { + private static CaptureHandler captureHandler = (cameraStack, style) -> { + }; + + private CanonClientBridge() { + } + + public static void setCaptureHandler(CaptureHandler captureHandler) { + CanonClientBridge.captureHandler = captureHandler; + } + + public static void capture(ItemStack cameraStack, PhotoStyle style) { + captureHandler.capture(cameraStack, style); + } + + @FunctionalInterface + public interface CaptureHandler { + void capture(ItemStack cameraStack, PhotoStyle style); + } +} diff --git a/Fun/canon/src/main/java/fr/koka99cab/canon/component/CanonDataComponents.java b/Fun/canon/src/main/java/fr/koka99cab/canon/component/CanonDataComponents.java new file mode 100755 index 0000000..f49ef18 --- /dev/null +++ b/Fun/canon/src/main/java/fr/koka99cab/canon/component/CanonDataComponents.java @@ -0,0 +1,34 @@ +package fr.koka99cab.canon.component; + +import fr.koka99cab.canon.CanonMod; +import fr.koka99cab.canon.item.PhotoStyle; +import net.minecraft.core.Registry; +import net.minecraft.core.component.DataComponentType; +import net.minecraft.core.registries.BuiltInRegistries; + +public final class CanonDataComponents { + public static final DataComponentType PHOTO_STYLE = Registry.register( + BuiltInRegistries.DATA_COMPONENT_TYPE, + CanonMod.id("photo_style"), + DataComponentType.builder() + .persistent(PhotoStyle.CODEC) + .networkSynchronized(PhotoStyle.STREAM_CODEC) + .cacheEncoding() + .build() + ); + public static final DataComponentType LOADED_FILM = Registry.register( + BuiltInRegistries.DATA_COMPONENT_TYPE, + CanonMod.id("loaded_film"), + DataComponentType.builder() + .persistent(LoadedFilmComponent.CODEC) + .networkSynchronized(LoadedFilmComponent.STREAM_CODEC) + .cacheEncoding() + .build() + ); + + private CanonDataComponents() { + } + + public static void initialize() { + } +} diff --git a/Fun/canon/src/main/java/fr/koka99cab/canon/component/LoadedFilmComponent.java b/Fun/canon/src/main/java/fr/koka99cab/canon/component/LoadedFilmComponent.java new file mode 100755 index 0000000..94339f9 --- /dev/null +++ b/Fun/canon/src/main/java/fr/koka99cab/canon/component/LoadedFilmComponent.java @@ -0,0 +1,70 @@ +package fr.koka99cab.canon.component; + +import fr.koka99cab.canon.CanonConstants; +import fr.koka99cab.canon.item.PhotoStyle; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import java.util.Optional; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; + +public record LoadedFilmComponent(Optional style, int count) { + public static final LoadedFilmComponent EMPTY = new LoadedFilmComponent(Optional.empty(), 0); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + PhotoStyle.CODEC.optionalFieldOf("style").forGetter(component -> component.style), + Codec.intRange(0, CanonConstants.CAMERA_CAPACITY).fieldOf("count").forGetter(component -> component.count) + ).apply(instance, LoadedFilmComponent::new)); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.optional(PhotoStyle.STREAM_CODEC), + LoadedFilmComponent::style, + ByteBufCodecs.VAR_INT, + LoadedFilmComponent::count, + LoadedFilmComponent::new + ); + + public LoadedFilmComponent { + style = style == null ? Optional.empty() : style; + if (count < 0 || count > CanonConstants.CAMERA_CAPACITY) { + throw new IllegalArgumentException("Film count out of bounds: " + count); + } + + if (count == 0) { + style = Optional.empty(); + } else if (style.isEmpty()) { + throw new IllegalArgumentException("Loaded camera requires a style"); + } + } + + public static LoadedFilmComponent of(PhotoStyle style, int count) { + return count <= 0 ? EMPTY : new LoadedFilmComponent(Optional.of(style), Math.min(count, CanonConstants.CAMERA_CAPACITY)); + } + + public boolean isEmpty() { + return this.count == 0; + } + + public boolean canAccept(PhotoStyle incomingStyle) { + return this.count < CanonConstants.CAMERA_CAPACITY && (this.style.isEmpty() || this.style.filter(incomingStyle::equals).isPresent()); + } + + public int remainingSpace() { + return CanonConstants.CAMERA_CAPACITY - this.count; + } + + public LoadedFilmComponent add(PhotoStyle incomingStyle, int amount) { + if (amount <= 0 || !this.canAccept(incomingStyle)) { + return this; + } + + return of(incomingStyle, Math.min(CanonConstants.CAMERA_CAPACITY, this.count + amount)); + } + + public LoadedFilmComponent decrement() { + if (this.count <= 1) { + return EMPTY; + } + + return new LoadedFilmComponent(this.style, this.count - 1); + } +} diff --git a/Fun/canon/src/main/java/fr/koka99cab/canon/item/CameraItem.java b/Fun/canon/src/main/java/fr/koka99cab/canon/item/CameraItem.java new file mode 100755 index 0000000..e954e7b --- /dev/null +++ b/Fun/canon/src/main/java/fr/koka99cab/canon/item/CameraItem.java @@ -0,0 +1,184 @@ +package fr.koka99cab.canon.item; + +import fr.koka99cab.canon.CanonConstants; +import fr.koka99cab.canon.client.CanonClientBridge; +import fr.koka99cab.canon.component.CanonDataComponents; +import fr.koka99cab.canon.component.LoadedFilmComponent; +import fr.koka99cab.canon.registry.CanonItems; +import java.util.function.Consumer; +import net.minecraft.ChatFormatting; +import net.minecraft.network.chat.Component; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.sounds.SoundSource; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.SlotAccess; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.ClickAction; +import net.minecraft.world.inventory.Slot; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.item.component.TooltipDisplay; +import net.minecraft.world.level.Level; + +public class CameraItem extends Item { + public CameraItem(Properties settings) { + super(settings); + } + + @Override + public boolean overrideOtherStackedOnMe(ItemStack stack, ItemStack otherStack, Slot slot, ClickAction clickAction, Player player, SlotAccess carriedSlot) { + if (!otherStack.isEmpty() && otherStack.getItem() == CanonItems.FILM) { + return tryInsertFilm(stack, otherStack, player); + } + + if (otherStack.isEmpty() && getLoadedFilm(stack).count() > 0) { + ItemStack unloaded = unloadFilm(stack); + if (!unloaded.isEmpty()) { + playSound(player, SoundEvents.BUNDLE_REMOVE_ONE, 0.8F, 1.2F); + carriedSlot.set(unloaded); + return true; + } + } + + return false; + } + + @Override + public boolean overrideStackedOnOther(ItemStack stack, Slot slot, ClickAction clickAction, Player player) { + ItemStack slotStack = slot.getItem(); + if (!slotStack.isEmpty() && slotStack.getItem() == CanonItems.FILM) { + boolean changed = tryInsertFilm(stack, slotStack, player); + if (changed) { + slot.setChanged(); + } + return changed; + } + + if (slotStack.isEmpty() && getLoadedFilm(stack).count() > 0) { + ItemStack unloaded = unloadFilm(stack); + if (!unloaded.isEmpty()) { + ItemStack leftover = slot.safeInsert(unloaded); + if (leftover.isEmpty()) { + playSound(player, SoundEvents.BUNDLE_REMOVE_ONE, 0.8F, 1.2F); + } else { + stack.set(CanonDataComponents.LOADED_FILM, LoadedFilmComponent.of(FilmItem.getStyle(leftover), leftover.getCount())); + } + slot.setChanged(); + return true; + } + } + + return false; + } + + @Override + public InteractionResult use(Level world, Player user, InteractionHand hand) { + ItemStack cameraStack = user.getItemInHand(hand); + LoadedFilmComponent loadedFilm = getLoadedFilm(cameraStack); + if (loadedFilm.isEmpty() || loadedFilm.style().isEmpty()) { + if (world.isClientSide()) { + user.sendOverlayMessage(Component.translatable("message.canon.camera.not_loaded")); + } + return InteractionResult.FAIL; + } + + if (user.getCooldowns().isOnCooldown(cameraStack)) { + return InteractionResult.FAIL; + } + + if (world.isClientSide()) { + CanonClientBridge.capture(cameraStack, loadedFilm.style().orElseThrow()); + } + + return InteractionResult.CONSUME; + } + + @Override + public boolean isBarVisible(ItemStack stack) { + return getLoadedFilm(stack).count() > 0; + } + + @Override + public int getBarWidth(ItemStack stack) { + return Math.max(1, Math.min(13, Math.round((13.0F * getLoadedFilm(stack).count()) / CanonConstants.CAMERA_CAPACITY))); + } + + @Override + public int getBarColor(ItemStack stack) { + return getLoadedFilm(stack).style().map(PhotoStyle::accentColor).orElse(0x8A8A8A); + } + + @Override + public void appendHoverText( + ItemStack stack, + TooltipContext context, + TooltipDisplay displayComponent, + Consumer textConsumer, + TooltipFlag type + ) { + LoadedFilmComponent loadedFilm = getLoadedFilm(stack); + if (loadedFilm.isEmpty() || loadedFilm.style().isEmpty()) { + textConsumer.accept(Component.translatable("tooltip.canon.camera.empty").withStyle(ChatFormatting.GRAY)); + } else { + PhotoStyle style = loadedFilm.style().orElseThrow(); + textConsumer.accept(Component.translatable("tooltip.canon.camera.loaded", style.displayName()).withStyle(ChatFormatting.GRAY)); + textConsumer.accept(Component.translatable("tooltip.canon.camera.shots", loadedFilm.count(), CanonConstants.CAMERA_CAPACITY).withStyle(ChatFormatting.BLUE)); + } + + textConsumer.accept(Component.translatable("tooltip.canon.camera.controls").withStyle(ChatFormatting.DARK_GRAY)); + } + + public static LoadedFilmComponent getLoadedFilm(ItemStack stack) { + return stack.getOrDefault(CanonDataComponents.LOADED_FILM, LoadedFilmComponent.EMPTY); + } + + private static boolean tryInsertFilm(ItemStack cameraStack, ItemStack filmStack, Player player) { + PhotoStyle style = FilmItem.getStyle(filmStack); + if (style == null) { + sendActionBar(player, "message.canon.camera.invalid_film"); + playSound(player, SoundEvents.BUNDLE_INSERT_FAIL, 0.8F, 1.0F); + return false; + } + + LoadedFilmComponent loadedFilm = getLoadedFilm(cameraStack); + if (!loadedFilm.canAccept(style)) { + sendActionBar(player, "message.canon.camera.mismatched_film"); + playSound(player, SoundEvents.BUNDLE_INSERT_FAIL, 0.8F, 1.0F); + return false; + } + + int moved = Math.min(loadedFilm.remainingSpace(), filmStack.getCount()); + if (moved <= 0) { + sendActionBar(player, "message.canon.camera.full"); + playSound(player, SoundEvents.BUNDLE_INSERT_FAIL, 0.8F, 1.0F); + return false; + } + + filmStack.shrink(moved); + cameraStack.set(CanonDataComponents.LOADED_FILM, loadedFilm.add(style, moved)); + playSound(player, SoundEvents.BUNDLE_INSERT, 0.8F, 1.15F); + return true; + } + + private static ItemStack unloadFilm(ItemStack cameraStack) { + LoadedFilmComponent loadedFilm = getLoadedFilm(cameraStack); + if (loadedFilm.isEmpty() || loadedFilm.style().isEmpty()) { + return ItemStack.EMPTY; + } + + ItemStack unloaded = FilmItem.createStack(CanonItems.FILM, loadedFilm.style().orElseThrow(), loadedFilm.count()); + cameraStack.set(CanonDataComponents.LOADED_FILM, LoadedFilmComponent.EMPTY); + return unloaded; + } + + private static void sendActionBar(Player player, String translationKey) { + player.sendOverlayMessage(Component.translatable(translationKey)); + } + + private static void playSound(Player player, SoundEvent sound, float volume, float pitch) { + player.level().playSound(null, player.blockPosition(), sound, SoundSource.PLAYERS, volume, pitch); + } +} diff --git a/Fun/canon/src/main/java/fr/koka99cab/canon/item/FilmItem.java b/Fun/canon/src/main/java/fr/koka99cab/canon/item/FilmItem.java new file mode 100755 index 0000000..5e9295d --- /dev/null +++ b/Fun/canon/src/main/java/fr/koka99cab/canon/item/FilmItem.java @@ -0,0 +1,52 @@ +package fr.koka99cab.canon.item; + +import fr.koka99cab.canon.component.CanonDataComponents; +import java.util.function.Consumer; +import net.minecraft.ChatFormatting; +import net.minecraft.network.chat.Component; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.item.component.TooltipDisplay; + +public class FilmItem extends Item { + public FilmItem(Properties settings) { + super(settings); + } + + public static ItemStack createStack(Item item, PhotoStyle style, int count) { + ItemStack stack = new ItemStack(item, count); + stack.set(CanonDataComponents.PHOTO_STYLE, style); + return stack; + } + + public static PhotoStyle getStyle(ItemStack stack) { + return stack.get(CanonDataComponents.PHOTO_STYLE); + } + + @Override + public Component getName(ItemStack stack) { + PhotoStyle style = getStyle(stack); + return style == null ? super.getName(stack) : Component.translatable("item.canon.film.named", style.displayName()); + } + + @Override + public void appendHoverText( + ItemStack stack, + TooltipContext context, + TooltipDisplay displayComponent, + Consumer textConsumer, + TooltipFlag type + ) { + PhotoStyle style = getStyle(stack); + if (style == null) { + textConsumer.accept(Component.translatable("tooltip.canon.film.invalid").withStyle(ChatFormatting.RED)); + return; + } + + textConsumer.accept(Component.translatable("tooltip.canon.film.style", style.displayName()).withStyle(ChatFormatting.GRAY)); + textConsumer.accept(style.effectDescription().copy().withStyle(ChatFormatting.DARK_GRAY)); + textConsumer.accept(Component.empty()); + textConsumer.accept(Component.translatable("tooltip.canon.film.shot_value").withStyle(ChatFormatting.BLUE)); + } +} diff --git a/Fun/canon/src/main/java/fr/koka99cab/canon/item/PhotoStyle.java b/Fun/canon/src/main/java/fr/koka99cab/canon/item/PhotoStyle.java new file mode 100755 index 0000000..1821a57 --- /dev/null +++ b/Fun/canon/src/main/java/fr/koka99cab/canon/item/PhotoStyle.java @@ -0,0 +1,162 @@ +package fr.koka99cab.canon.item; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.DataResult; +import io.netty.buffer.ByteBuf; +import java.util.Arrays; +import java.util.Locale; +import java.util.Map; +import java.util.Optional; +import java.util.function.Function; +import java.util.stream.Collectors; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.network.chat.Component; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.util.ARGB; +import net.minecraft.world.item.Item; + +public enum PhotoStyle { + WHITE("white", "minecraft:white_dye", 0xF4F1E4, 0.02F, 1.00F, 1.00F, 1.00F, false, false), + LIGHT_GRAY("light_gray", "minecraft:light_gray_dye", 0xDBD7CF, 0.18F, 0.75F, 0.95F, 1.06F, false, false), + GRAY("gray", "minecraft:gray_dye", 0x86827A, 0.08F, 0.12F, 1.30F, 0.92F, true, false), + BLACK("black", "minecraft:black_dye", 0x292929, 0.00F, 0.00F, 1.18F, 0.82F, true, false), + BROWN("brown", "minecraft:brown_dye", 0x8F5F3A, 0.30F, 0.55F, 1.02F, 0.98F, false, true), + RED("red", "minecraft:red_dye", 0xBE5136, 0.22F, 1.10F, 1.06F, 0.98F, false, false), + ORANGE("orange", "minecraft:orange_dye", 0xDA8A3A, 0.26F, 1.08F, 0.98F, 1.02F, false, false), + YELLOW("yellow", "minecraft:yellow_dye", 0xE2C15D, 0.18F, 0.72F, 0.90F, 1.08F, false, false), + LIME("lime", "minecraft:lime_dye", 0x8FD744, 0.25F, 1.28F, 1.12F, 1.00F, false, false), + GREEN("green", "minecraft:green_dye", 0x4E8A4C, 0.28F, 0.92F, 1.04F, 0.95F, false, false), + CYAN("cyan", "minecraft:cyan_dye", 0x4C8B92, 0.22F, 0.92F, 0.94F, 1.02F, false, false), + LIGHT_BLUE("light_blue", "minecraft:light_blue_dye", 0x8DB6D9, 0.18F, 0.84F, 0.90F, 1.10F, false, false), + BLUE("blue", "minecraft:blue_dye", 0x4E66B4, 0.26F, 0.96F, 1.10F, 0.92F, false, false), + PURPLE("purple", "minecraft:purple_dye", 0x8460AF, 0.24F, 1.00F, 1.06F, 0.94F, false, false), + MAGENTA("magenta", "minecraft:magenta_dye", 0xC865B2, 0.28F, 1.12F, 1.08F, 1.02F, false, false), + PINK("pink", "minecraft:pink_dye", 0xE4A8C6, 0.22F, 0.86F, 0.90F, 1.12F, false, false); + + private static final Map BY_ID = Arrays.stream(values()).collect(Collectors.toUnmodifiableMap(PhotoStyle::id, Function.identity())); + private static final Map BY_DYE_ID = Arrays.stream(values()).collect(Collectors.toUnmodifiableMap(PhotoStyle::dyeId, Function.identity())); + public static final Codec CODEC = Codec.STRING.comapFlatMap( + id -> PhotoStyle.byId(id).map(DataResult::success).orElseGet(() -> DataResult.error(() -> "Unknown photo style: " + id)), + PhotoStyle::id + ); + public static final StreamCodec STREAM_CODEC = ByteBufCodecs.STRING_UTF8.map(PhotoStyle::require, PhotoStyle::id); + + private final String id; + private final String dyeId; + private final int accentColor; + private final float tintStrength; + private final float saturation; + private final float contrast; + private final float brightness; + private final boolean monochrome; + private final boolean sepia; + + PhotoStyle( + String id, + String dyeId, + int accentColor, + float tintStrength, + float saturation, + float contrast, + float brightness, + boolean monochrome, + boolean sepia + ) { + this.id = id; + this.dyeId = dyeId; + this.accentColor = accentColor; + this.tintStrength = tintStrength; + this.saturation = saturation; + this.contrast = contrast; + this.brightness = brightness; + this.monochrome = monochrome; + this.sepia = sepia; + } + + public String id() { + return this.id; + } + + public String dyeId() { + return this.dyeId; + } + + public int accentColor() { + return this.accentColor; + } + + public Component displayName() { + return Component.translatable("style.canon." + this.id); + } + + public Component effectDescription() { + return Component.translatable("style.canon." + this.id + ".effect"); + } + + public int applyFilter(int argb) { + float r = ARGB.red(argb) / 255.0F; + float g = ARGB.green(argb) / 255.0F; + float b = ARGB.blue(argb) / 255.0F; + + float luminance = r * 0.299F + g * 0.587F + b * 0.114F; + if (this.monochrome) { + r = luminance; + g = luminance; + b = luminance; + } else if (this.sepia) { + float newR = clamp(luminance * 1.15F + 0.18F); + float newG = clamp(luminance * 1.00F + 0.05F); + float newB = clamp(luminance * 0.82F); + r = newR; + g = newG; + b = newB; + } + + luminance = r * 0.299F + g * 0.587F + b * 0.114F; + r = luminance + (r - luminance) * this.saturation; + g = luminance + (g - luminance) * this.saturation; + b = luminance + (b - luminance) * this.saturation; + + float tintR = ARGB.red(this.accentColor) / 255.0F; + float tintG = ARGB.green(this.accentColor) / 255.0F; + float tintB = ARGB.blue(this.accentColor) / 255.0F; + r = lerp(r, tintR, this.tintStrength); + g = lerp(g, tintG, this.tintStrength); + b = lerp(b, tintB, this.tintStrength); + + r = clamp((r - 0.5F) * this.contrast + 0.5F); + g = clamp((g - 0.5F) * this.contrast + 0.5F); + b = clamp((b - 0.5F) * this.contrast + 0.5F); + + r = clamp(r * this.brightness); + g = clamp(g * this.brightness); + b = clamp(b * this.brightness); + + return ARGB.color(255, Math.round(r * 255.0F), Math.round(g * 255.0F), Math.round(b * 255.0F)); + } + + public static Optional byId(String id) { + return Optional.ofNullable(BY_ID.get(id.toLowerCase(Locale.ROOT))); + } + + public static PhotoStyle require(String id) { + return byId(id).orElseThrow(() -> new IllegalArgumentException("Unknown photo style: " + id)); + } + + public static Optional fromDye(Item item) { + return Optional.ofNullable(BY_DYE_ID.get(BuiltInRegistries.ITEM.getKey(item).toString())); + } + + public static Optional fromDyeId(String dyeId) { + return Optional.ofNullable(BY_DYE_ID.get(dyeId.toLowerCase(Locale.ROOT))); + } + + private static float lerp(float from, float to, float delta) { + return from + (to - from) * delta; + } + + private static float clamp(float value) { + return Math.max(0.0F, Math.min(1.0F, value)); + } +} diff --git a/Fun/canon/src/main/java/fr/koka99cab/canon/network/CanonNetworking.java b/Fun/canon/src/main/java/fr/koka99cab/canon/network/CanonNetworking.java new file mode 100755 index 0000000..0988c02 --- /dev/null +++ b/Fun/canon/src/main/java/fr/koka99cab/canon/network/CanonNetworking.java @@ -0,0 +1,73 @@ +package fr.koka99cab.canon.network; + +import fr.koka99cab.canon.CanonConstants; +import fr.koka99cab.canon.component.CanonDataComponents; +import fr.koka99cab.canon.component.LoadedFilmComponent; +import fr.koka99cab.canon.item.CameraItem; +import fr.koka99cab.canon.item.PhotoStyle; +import fr.koka99cab.canon.photo.PhotoMapService; +import java.util.Arrays; +import java.util.Optional; +import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry; +import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; +import net.minecraft.network.chat.Component; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.stats.Stats; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; + +public final class CanonNetworking { + private CanonNetworking() { + } + + public static void initialize() { + PayloadTypeRegistry.serverboundPlay().register(CapturePhotoPayload.ID, CapturePhotoPayload.CODEC); + ServerPlayNetworking.registerGlobalReceiver(CapturePhotoPayload.ID, (payload, context) -> handleCapture(context.player(), payload)); + } + + private static void handleCapture(ServerPlayer player, CapturePhotoPayload payload) { + if (payload.colors().length != CanonConstants.PHOTO_PIXEL_COUNT) { + return; + } + + Optional cameraHand = findLoadedCameraHand(player); + if (cameraHand.isEmpty()) { + return; + } + + ItemStack cameraStack = player.getItemInHand(cameraHand.orElseThrow()); + if (player.getCooldowns().isOnCooldown(cameraStack)) { + return; + } + + LoadedFilmComponent loadedFilm = cameraStack.getOrDefault(CanonDataComponents.LOADED_FILM, LoadedFilmComponent.EMPTY); + if (loadedFilm.isEmpty() || loadedFilm.style().isEmpty() || loadedFilm.count() <= 0) { + return; + } + + PhotoStyle style = loadedFilm.style().orElseThrow(); + cameraStack.set(CanonDataComponents.LOADED_FILM, loadedFilm.decrement()); + player.getCooldowns().addCooldown(cameraStack, CanonConstants.CAMERA_COOLDOWN_TICKS); + + ItemStack photo = PhotoMapService.createPhoto(player, style, Arrays.copyOf(payload.colors(), payload.colors().length)); + boolean inserted = player.getInventory().add(photo); + if (!inserted) { + player.drop(photo, false); + } + + player.awardStat(Stats.ITEM_USED.get(cameraStack.getItem())); + player.sendOverlayMessage(Component.translatable("message.canon.camera.captured")); + } + + private static Optional findLoadedCameraHand(Player player) { + for (InteractionHand hand : InteractionHand.values()) { + ItemStack stack = player.getItemInHand(hand); + if (stack.getItem() instanceof CameraItem && !CameraItem.getLoadedFilm(stack).isEmpty()) { + return Optional.of(hand); + } + } + + return Optional.empty(); + } +} diff --git a/Fun/canon/src/main/java/fr/koka99cab/canon/network/CapturePhotoPayload.java b/Fun/canon/src/main/java/fr/koka99cab/canon/network/CapturePhotoPayload.java new file mode 100755 index 0000000..0cd922d --- /dev/null +++ b/Fun/canon/src/main/java/fr/koka99cab/canon/network/CapturePhotoPayload.java @@ -0,0 +1,36 @@ +package fr.koka99cab.canon.network; + +import fr.koka99cab.canon.CanonConstants; +import fr.koka99cab.canon.CanonMod; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record CapturePhotoPayload(byte[] colors) implements CustomPacketPayload { + public static final Type ID = new Type<>(CanonMod.id("capture_photo")); + public static final StreamCodec CODEC = CustomPacketPayload.codec(CapturePhotoPayload::write, CapturePhotoPayload::new); + + public CapturePhotoPayload { + colors = colors.clone(); + if (colors.length != CanonConstants.PHOTO_PIXEL_COUNT) { + throw new IllegalArgumentException("Expected " + CanonConstants.PHOTO_PIXEL_COUNT + " colors, got " + colors.length); + } + } + + public CapturePhotoPayload(RegistryFriendlyByteBuf buffer) { + this(buffer.readByteArray(CanonConstants.PHOTO_PIXEL_COUNT)); + } + + public byte[] colors() { + return this.colors.clone(); + } + + private void write(RegistryFriendlyByteBuf buffer) { + buffer.writeByteArray(this.colors); + } + + @Override + public Type type() { + return ID; + } +} diff --git a/Fun/canon/src/main/java/fr/koka99cab/canon/photo/PhotoMapPalette.java b/Fun/canon/src/main/java/fr/koka99cab/canon/photo/PhotoMapPalette.java new file mode 100755 index 0000000..7f3443a --- /dev/null +++ b/Fun/canon/src/main/java/fr/koka99cab/canon/photo/PhotoMapPalette.java @@ -0,0 +1,50 @@ +package fr.koka99cab.canon.photo; + +import net.minecraft.util.ARGB; +import net.minecraft.world.level.material.MapColor; + +public final class PhotoMapPalette { + private static final int[] COLORS = new int[256]; + + static { + for (int i = 0; i < COLORS.length; i++) { + COLORS[i] = MapColor.getColorFromPackedId(i); + } + } + + private PhotoMapPalette() { + } + + public static byte nearestColor(int argb) { + int red = ARGB.red(argb); + int green = ARGB.green(argb); + int blue = ARGB.blue(argb); + int bestDistance = Integer.MAX_VALUE; + int bestIndex = 0; + + for (int i = 0; i < COLORS.length; i++) { + int palette = COLORS[i]; + if (ARGB.alpha(palette) == 0) { + continue; + } + int paletteRed = ARGB.red(palette); + int paletteGreen = ARGB.green(palette); + int paletteBlue = ARGB.blue(palette); + int distance = square(red - paletteRed) * 30 + square(green - paletteGreen) * 59 + square(blue - paletteBlue) * 11; + if (distance < bestDistance) { + bestDistance = distance; + bestIndex = i; + } + } + + return (byte)bestIndex; + } + + static int colorAt(int index) { + return COLORS[index & 0xFF]; + } + + private static int square(int value) { + return value * value; + } +} diff --git a/Fun/canon/src/main/java/fr/koka99cab/canon/photo/PhotoMapService.java b/Fun/canon/src/main/java/fr/koka99cab/canon/photo/PhotoMapService.java new file mode 100755 index 0000000..3031ec1 --- /dev/null +++ b/Fun/canon/src/main/java/fr/koka99cab/canon/photo/PhotoMapService.java @@ -0,0 +1,110 @@ +package fr.koka99cab.canon.photo; + +import fr.koka99cab.canon.CanonConstants; +import fr.koka99cab.canon.CanonMod; +import fr.koka99cab.canon.item.PhotoStyle; +import fr.koka99cab.canon.registry.CanonItems; +import java.time.ZonedDateTime; +import java.time.format.DateTimeFormatter; +import java.util.List; +import java.util.Locale; +import net.minecraft.ChatFormatting; +import net.minecraft.core.BlockPos; +import net.minecraft.core.component.DataComponents; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.world.item.component.CustomData; +import net.minecraft.world.item.component.ItemLore; +import net.minecraft.world.level.biome.Biome; +import net.minecraft.world.level.saveddata.maps.MapId; +import net.minecraft.world.level.saveddata.maps.MapItemSavedData; + +public final class PhotoMapService { + private static final DateTimeFormatter DATE_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd", Locale.ROOT); + private static final DateTimeFormatter TIME_FORMATTER = DateTimeFormatter.ofPattern("HH:mm:ss z", Locale.ROOT); + + private PhotoMapService() { + } + + public static ItemStack createPhoto(ServerPlayer player, PhotoStyle style, byte[] colors) { + ServerLevel world = player.level(); + BlockPos capturePos = player.blockPosition(); + Identifier biomeId = world.getBiome(capturePos) + .unwrapKey() + .map(ResourceKey::identifier) + .orElse(CanonMod.id("unknown_biome")); + ZonedDateTime capturedAt = ZonedDateTime.now(); + String capturedDate = DATE_FORMATTER.format(capturedAt); + String capturedTime = TIME_FORMATTER.format(capturedAt); + String authorName = player.getName().getString(); + Component biomeName = Component.translatableWithFallback(biomeId.toLanguageKey("biome"), formatBiomeName(biomeId)); + + MapItemSavedData unlocked = MapItemSavedData.createFresh(player.getX(), player.getZ(), (byte)0, false, false, world.dimension()); + for (int y = 0; y < CanonConstants.MAP_SIZE; y++) { + for (int x = 0; x < CanonConstants.MAP_SIZE; x++) { + unlocked.setColor(x, y, colors[x + y * CanonConstants.MAP_SIZE]); + } + } + + MapItemSavedData locked = unlocked.locked(); + MapId id = world.getFreeMapId(); + world.setMapData(id, locked); + + ItemStack photo = new ItemStack(Items.FILLED_MAP); + photo.set(DataComponents.MAP_ID, id); + photo.set(DataComponents.CUSTOM_NAME, photoName(style, biomeName)); + photo.set(DataComponents.LORE, new ItemLore(List.of( + loreLine("tooltip.canon.photo.author", ChatFormatting.GOLD, Component.literal(authorName)), + loreLine("tooltip.canon.photo.biome", ChatFormatting.DARK_AQUA, biomeName.copy()), + loreLine("tooltip.canon.photo.date", ChatFormatting.GRAY, Component.literal(capturedDate)), + loreLine("tooltip.canon.photo.time", ChatFormatting.GRAY, Component.literal(capturedTime)), + loreLine("tooltip.canon.photo.position", ChatFormatting.GRAY, capturePos.getX(), capturePos.getY(), capturePos.getZ()) + ))); + CustomData metadata = CanonItems.createPhotoMetadata( + style, + authorName, + world.getServer().overworld().getGameTime(), + biomeId, + capturedDate, + capturedTime, + capturePos + ); + photo.set(DataComponents.CUSTOM_DATA, metadata); + return photo; + } + + private static Component photoName(PhotoStyle style, Component biomeName) { + return Component.translatable("item.canon.photo.named", style.displayName().copy(), biomeName.copy()) + .withStyle(ChatFormatting.AQUA) + .withStyle(textStyle -> textStyle.withItalic(false)); + } + + private static Component loreLine(String key, ChatFormatting color, Object... args) { + return Component.translatable(key, args) + .withStyle(color) + .withStyle(style -> style.withItalic(false)); + } + + private static String formatBiomeName(Identifier biomeId) { + String normalized = biomeId.getPath().replace('/', ' ').replace('_', ' ').trim(); + StringBuilder builder = new StringBuilder(normalized.length()); + boolean capitalizeNext = true; + for (int i = 0; i < normalized.length(); i++) { + char current = normalized.charAt(i); + if (Character.isWhitespace(current)) { + builder.append(current); + capitalizeNext = true; + continue; + } + + builder.append(capitalizeNext ? Character.toUpperCase(current) : current); + capitalizeNext = false; + } + return builder.isEmpty() ? "Unknown Biome" : builder.toString(); + } +} diff --git a/Fun/canon/src/main/java/fr/koka99cab/canon/registry/CanonItems.java b/Fun/canon/src/main/java/fr/koka99cab/canon/registry/CanonItems.java new file mode 100755 index 0000000..5dd30de --- /dev/null +++ b/Fun/canon/src/main/java/fr/koka99cab/canon/registry/CanonItems.java @@ -0,0 +1,83 @@ +package fr.koka99cab.canon.registry; + +import fr.koka99cab.canon.CanonMod; +import fr.koka99cab.canon.component.CanonDataComponents; +import fr.koka99cab.canon.component.LoadedFilmComponent; +import fr.koka99cab.canon.item.CameraItem; +import fr.koka99cab.canon.item.FilmItem; +import fr.koka99cab.canon.item.PhotoStyle; +import java.util.function.Function; +import net.fabricmc.fabric.api.creativetab.v1.CreativeModeTabEvents; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.item.CreativeModeTab; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.component.CustomData; + +public final class CanonItems { + public static final Item CAMERA = registerCamera("camera"); + public static final Item CAMERA_IRON = registerCamera("camera_iron"); + public static final Item CAMERA_COPPER = registerCamera("camera_copper"); + public static final Item FILM = register("film", FilmItem::new); + + private CanonItems() { + } + + public static void initialize() { + CreativeModeTabEvents.modifyOutputEvent(vanillaTab("tools_and_utilities")).register(entries -> { + entries.accept(new ItemStack(CAMERA), CreativeModeTab.TabVisibility.PARENT_AND_SEARCH_TABS); + entries.accept(new ItemStack(CAMERA_IRON), CreativeModeTab.TabVisibility.PARENT_AND_SEARCH_TABS); + entries.accept(new ItemStack(CAMERA_COPPER), CreativeModeTab.TabVisibility.PARENT_AND_SEARCH_TABS); + }); + CreativeModeTabEvents.modifyOutputEvent(vanillaTab("ingredients")).register(entries -> { + for (PhotoStyle style : PhotoStyle.values()) { + entries.accept(FilmItem.createStack(FILM, style, 1), CreativeModeTab.TabVisibility.PARENT_AND_SEARCH_TABS); + } + }); + } + + private static Item registerCamera(String path) { + return register(path, settings -> new CameraItem(settings + .stacksTo(1) + .component(CanonDataComponents.LOADED_FILM, LoadedFilmComponent.EMPTY))); + } + + private static Item register(String path, Function factory) { + Identifier id = CanonMod.id(path); + ResourceKey key = ResourceKey.create(Registries.ITEM, id); + Item.Properties settings = new Item.Properties().setId(key); + return Registry.register(BuiltInRegistries.ITEM, key, factory.apply(settings)); + } + + private static ResourceKey vanillaTab(String path) { + return ResourceKey.create(Registries.CREATIVE_MODE_TAB, Identifier.fromNamespaceAndPath("minecraft", path)); + } + + public static CustomData createPhotoMetadata( + PhotoStyle style, + String authorName, + long createdAt, + Identifier biomeId, + String capturedDate, + String capturedTime, + BlockPos capturePos + ) { + CompoundTag data = new CompoundTag(); + data.putString("style", style.id()); + data.putString("author", authorName); + data.putLong("created_at", createdAt); + data.putString("biome", biomeId.toString()); + data.putString("captured_date", capturedDate); + data.putString("captured_time", capturedTime); + data.putInt("x", capturePos.getX()); + data.putInt("y", capturePos.getY()); + data.putInt("z", capturePos.getZ()); + return CustomData.of(data); + } +} diff --git a/Fun/canon/src/main/resources/assets/canon/icon.png b/Fun/canon/src/main/resources/assets/canon/icon.png new file mode 100755 index 0000000..7db6bf6 Binary files /dev/null and b/Fun/canon/src/main/resources/assets/canon/icon.png differ diff --git a/Fun/canon/src/main/resources/assets/canon/items/camera.json b/Fun/canon/src/main/resources/assets/canon/items/camera.json new file mode 100755 index 0000000..f5c6672 --- /dev/null +++ b/Fun/canon/src/main/resources/assets/canon/items/camera.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canon:item/camera" + } +} diff --git a/Fun/canon/src/main/resources/assets/canon/items/camera_copper.json b/Fun/canon/src/main/resources/assets/canon/items/camera_copper.json new file mode 100755 index 0000000..3d74e2d --- /dev/null +++ b/Fun/canon/src/main/resources/assets/canon/items/camera_copper.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canon:item/camera_copper" + } +} diff --git a/Fun/canon/src/main/resources/assets/canon/items/camera_iron.json b/Fun/canon/src/main/resources/assets/canon/items/camera_iron.json new file mode 100755 index 0000000..8e6aa4c --- /dev/null +++ b/Fun/canon/src/main/resources/assets/canon/items/camera_iron.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canon:item/camera_iron" + } +} diff --git a/Fun/canon/src/main/resources/assets/canon/items/film.json b/Fun/canon/src/main/resources/assets/canon/items/film.json new file mode 100755 index 0000000..78520b4 --- /dev/null +++ b/Fun/canon/src/main/resources/assets/canon/items/film.json @@ -0,0 +1,11 @@ +{ + "model": { + "type": "minecraft:model", + "model": "canon:item/film", + "tints": [ + { + "type": "canon:film_style" + } + ] + } +} diff --git a/Fun/canon/src/main/resources/assets/canon/lang/en_us.json b/Fun/canon/src/main/resources/assets/canon/lang/en_us.json new file mode 100644 index 0000000..24b8a82 --- /dev/null +++ b/Fun/canon/src/main/resources/assets/canon/lang/en_us.json @@ -0,0 +1,59 @@ +{ + "item.canon.camera": "Gold Canon Camera", + "item.canon.camera_iron": "Iron Canon Camera", + "item.canon.camera_copper": "Copper Canon Camera", + "item.canon.film": "Film", + "item.canon.film.named": "%s Film", + "item.canon.photo": "Canon Photo", + "item.canon.photo.named": "%1$s %2$s", + "tooltip.canon.camera.empty": "No film loaded", + "tooltip.canon.camera.loaded": "Loaded film: %s", + "tooltip.canon.camera.shots": "Shots remaining: %s/%s", + "tooltip.canon.camera.controls": "Drag film onto the camera to load it. Click with an empty cursor to unload it.", + "tooltip.canon.film.style": "Style: %s", + "tooltip.canon.film.invalid": "This film has no style data.", + "tooltip.canon.film.shot_value": "One film equals one shot.", + "tooltip.canon.photo.author": "Author: %s", + "tooltip.canon.photo.biome": "Biome: %s", + "tooltip.canon.photo.date": "Date: %s", + "tooltip.canon.photo.time": "Time: %s", + "tooltip.canon.photo.position": "Position: X %s Y %s Z %s", + "message.canon.camera.not_loaded": "The camera is not loaded.", + "message.canon.camera.invalid_film": "This film is invalid.", + "message.canon.camera.mismatched_film": "You cannot mix different film styles in the camera.", + "message.canon.camera.full": "The camera is already full.", + "message.canon.camera.captured": "Photo captured.", + "message.canon.camera.capture_failed": "Could not capture the current frame.", + "style.canon.white": "Neutral", + "style.canon.white.effect": "Neutral stock with soft paper whites.", + "style.canon.light_gray": "Matte", + "style.canon.light_gray.effect": "Desaturated matte stock with lifted mids.", + "style.canon.gray": "High Contrast", + "style.canon.gray.effect": "Punchy grayscale with crisp contrast.", + "style.canon.black": "Monochrome", + "style.canon.black.effect": "Classic black and white stock.", + "style.canon.brown": "Sepia", + "style.canon.brown.effect": "Warm sepia tones with antique contrast.", + "style.canon.red": "Warm", + "style.canon.red.effect": "Warm reds and amber highlights.", + "style.canon.orange": "Sunset", + "style.canon.orange.effect": "Golden orange cast for evening scenes.", + "style.canon.yellow": "Faded", + "style.canon.yellow.effect": "Faded yellow wash with bright highlights.", + "style.canon.lime": "Acid", + "style.canon.lime.effect": "Sharp green tint with vivid saturation.", + "style.canon.green": "Forest", + "style.canon.green.effect": "Deep green stock for foliage-heavy shots.", + "style.canon.cyan": "Cool", + "style.canon.cyan.effect": "Cool cyan tint with restrained warmth.", + "style.canon.light_blue": "Airy", + "style.canon.light_blue.effect": "Bright airy blues with soft contrast.", + "style.canon.blue": "Cold", + "style.canon.blue.effect": "Cold blue stock with darker shadows.", + "style.canon.purple": "Violet", + "style.canon.purple.effect": "Muted violet cast for dreamy scenes.", + "style.canon.magenta": "Pop", + "style.canon.magenta.effect": "Bold magenta stock with lively colors.", + "style.canon.pink": "Pastel", + "style.canon.pink.effect": "Soft pastel pink highlights." +} diff --git a/Fun/canon/src/main/resources/assets/canon/lang/fr_fr.json b/Fun/canon/src/main/resources/assets/canon/lang/fr_fr.json new file mode 100644 index 0000000..5a66333 --- /dev/null +++ b/Fun/canon/src/main/resources/assets/canon/lang/fr_fr.json @@ -0,0 +1,59 @@ +{ + "item.canon.camera": "Appareil photo Canon en or", + "item.canon.camera_iron": "Appareil photo Canon en fer", + "item.canon.camera_copper": "Appareil photo Canon en cuivre", + "item.canon.film": "Pellicule", + "item.canon.film.named": "Pellicule %s", + "item.canon.photo": "Photo Canon", + "item.canon.photo.named": "%1$s %2$s", + "tooltip.canon.camera.empty": "Aucune pellicule chargee", + "tooltip.canon.camera.loaded": "Pellicule chargee : %s", + "tooltip.canon.camera.shots": "Cliches restants : %s/%s", + "tooltip.canon.camera.controls": "Glissez une pellicule sur l'appareil pour la charger. Cliquez avec un curseur vide pour la retirer.", + "tooltip.canon.film.style": "Effet : %s", + "tooltip.canon.film.invalid": "Cette pellicule n'a pas de style valide.", + "tooltip.canon.film.shot_value": "Une pellicule vaut une photo.", + "tooltip.canon.photo.author": "Auteur : %s", + "tooltip.canon.photo.biome": "Biome : %s", + "tooltip.canon.photo.date": "Date : %s", + "tooltip.canon.photo.time": "Heure : %s", + "tooltip.canon.photo.position": "Position : X %s Y %s Z %s", + "message.canon.camera.not_loaded": "L'appareil photo n'est pas charge.", + "message.canon.camera.invalid_film": "Cette pellicule est invalide.", + "message.canon.camera.mismatched_film": "Impossible de melanger plusieurs styles de pellicule.", + "message.canon.camera.full": "L'appareil photo est deja plein.", + "message.canon.camera.captured": "Photo prise.", + "message.canon.camera.capture_failed": "Impossible de capturer l'image actuelle.", + "style.canon.white": "Neutre", + "style.canon.white.effect": "Rendu neutre avec des blancs doux.", + "style.canon.light_gray": "Mat", + "style.canon.light_gray.effect": "Pellicule desaturee au rendu mat.", + "style.canon.gray": "Contraste", + "style.canon.gray.effect": "Noir et blanc contraste et net.", + "style.canon.black": "Monochrome", + "style.canon.black.effect": "Pellicule noir et blanc classique.", + "style.canon.brown": "Sepia", + "style.canon.brown.effect": "Tons sepia chaleureux et vintage.", + "style.canon.red": "Chaud", + "style.canon.red.effect": "Dominante chaude rouge et ambree.", + "style.canon.orange": "Coucher de soleil", + "style.canon.orange.effect": "Teinte orange doree de fin de journee.", + "style.canon.yellow": "Delave", + "style.canon.yellow.effect": "Lavis jaune pale avec hautes lumieres claires.", + "style.canon.lime": "Acide", + "style.canon.lime.effect": "Vert vif et saturation agressive.", + "style.canon.green": "Foret", + "style.canon.green.effect": "Pellicule verte profonde pour les paysages.", + "style.canon.cyan": "Froid", + "style.canon.cyan.effect": "Dominante cyan fraiche et calme.", + "style.canon.light_blue": "Aerien", + "style.canon.light_blue.effect": "Bleus lumineux et contraste leger.", + "style.canon.blue": "Glace", + "style.canon.blue.effect": "Teinte bleue froide et ombres plus denses.", + "style.canon.purple": "Violet", + "style.canon.purple.effect": "Violet discret pour une ambiance reveuse.", + "style.canon.magenta": "Pop", + "style.canon.magenta.effect": "Magenta marque avec couleurs dynamiques.", + "style.canon.pink": "Pastel", + "style.canon.pink.effect": "Lumieres roses et ambiance pastel." +} diff --git a/Fun/canon/src/main/resources/assets/canon/models/item/camera.json b/Fun/canon/src/main/resources/assets/canon/models/item/camera.json new file mode 100755 index 0000000..8ef33b2 --- /dev/null +++ b/Fun/canon/src/main/resources/assets/canon/models/item/camera.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "canon:item/camera" + } +} diff --git a/Fun/canon/src/main/resources/assets/canon/models/item/camera_copper.json b/Fun/canon/src/main/resources/assets/canon/models/item/camera_copper.json new file mode 100755 index 0000000..cb2b927 --- /dev/null +++ b/Fun/canon/src/main/resources/assets/canon/models/item/camera_copper.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "canon:item/camera_copper" + } +} diff --git a/Fun/canon/src/main/resources/assets/canon/models/item/camera_iron.json b/Fun/canon/src/main/resources/assets/canon/models/item/camera_iron.json new file mode 100755 index 0000000..ef726eb --- /dev/null +++ b/Fun/canon/src/main/resources/assets/canon/models/item/camera_iron.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld", + "textures": { + "layer0": "canon:item/camera_iron" + } +} diff --git a/Fun/canon/src/main/resources/assets/canon/models/item/film.json b/Fun/canon/src/main/resources/assets/canon/models/item/film.json new file mode 100755 index 0000000..1fa971f --- /dev/null +++ b/Fun/canon/src/main/resources/assets/canon/models/item/film.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "minecraft:item/paper" + } +} diff --git a/Fun/canon/src/main/resources/assets/canon/textures/item/camera.png b/Fun/canon/src/main/resources/assets/canon/textures/item/camera.png new file mode 100755 index 0000000..a940bb8 Binary files /dev/null and b/Fun/canon/src/main/resources/assets/canon/textures/item/camera.png differ diff --git a/Fun/canon/src/main/resources/assets/canon/textures/item/camera_copper.png b/Fun/canon/src/main/resources/assets/canon/textures/item/camera_copper.png new file mode 100755 index 0000000..0334d30 Binary files /dev/null and b/Fun/canon/src/main/resources/assets/canon/textures/item/camera_copper.png differ diff --git a/Fun/canon/src/main/resources/assets/canon/textures/item/camera_iron.png b/Fun/canon/src/main/resources/assets/canon/textures/item/camera_iron.png new file mode 100755 index 0000000..037d956 Binary files /dev/null and b/Fun/canon/src/main/resources/assets/canon/textures/item/camera_iron.png differ diff --git a/Fun/canon/src/main/resources/data/canon/recipe/camera.json b/Fun/canon/src/main/resources/data/canon/recipe/camera.json new file mode 100755 index 0000000..18630fc --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/camera.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "pattern": [ + "GRG", + "GSG", + "GGG" + ], + "key": { + "G": "minecraft:gold_ingot", + "R": "minecraft:redstone", + "S": "minecraft:spyglass" + }, + "result": { + "id": "canon:camera", + "count": 1 + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/camera_copper.json b/Fun/canon/src/main/resources/data/canon/recipe/camera_copper.json new file mode 100755 index 0000000..c06c3a8 --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/camera_copper.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "pattern": [ + "CRC", + "CSC", + "CCC" + ], + "key": { + "C": "minecraft:copper_ingot", + "R": "minecraft:redstone", + "S": "minecraft:spyglass" + }, + "result": { + "id": "canon:camera_copper", + "count": 1 + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/camera_iron.json b/Fun/canon/src/main/resources/data/canon/recipe/camera_iron.json new file mode 100755 index 0000000..15b7216 --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/camera_iron.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "pattern": [ + "IRI", + "ISI", + "III" + ], + "key": { + "I": "minecraft:iron_ingot", + "R": "minecraft:redstone", + "S": "minecraft:spyglass" + }, + "result": { + "id": "canon:camera_iron", + "count": 1 + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_black.json b/Fun/canon/src/main/resources/data/canon/recipe/film_black.json new file mode 100755 index 0000000..60497ee --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_black.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:black_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "black" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_blue.json b/Fun/canon/src/main/resources/data/canon/recipe/film_blue.json new file mode 100755 index 0000000..85c7b20 --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_blue.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:blue_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "blue" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_brown.json b/Fun/canon/src/main/resources/data/canon/recipe/film_brown.json new file mode 100755 index 0000000..37c0da1 --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_brown.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:brown_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "brown" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_cyan.json b/Fun/canon/src/main/resources/data/canon/recipe/film_cyan.json new file mode 100755 index 0000000..f645d2d --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_cyan.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:cyan_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "cyan" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_gray.json b/Fun/canon/src/main/resources/data/canon/recipe/film_gray.json new file mode 100755 index 0000000..6d7c2a4 --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_gray.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:gray_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "gray" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_green.json b/Fun/canon/src/main/resources/data/canon/recipe/film_green.json new file mode 100755 index 0000000..3f3a916 --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_green.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:green_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "green" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_light_blue.json b/Fun/canon/src/main/resources/data/canon/recipe/film_light_blue.json new file mode 100755 index 0000000..6258553 --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_light_blue.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:light_blue_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "light_blue" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_light_gray.json b/Fun/canon/src/main/resources/data/canon/recipe/film_light_gray.json new file mode 100755 index 0000000..bfe9e04 --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_light_gray.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:light_gray_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "light_gray" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_lime.json b/Fun/canon/src/main/resources/data/canon/recipe/film_lime.json new file mode 100755 index 0000000..133866f --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_lime.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:lime_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "lime" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_magenta.json b/Fun/canon/src/main/resources/data/canon/recipe/film_magenta.json new file mode 100755 index 0000000..5ee4297 --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_magenta.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:magenta_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "magenta" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_orange.json b/Fun/canon/src/main/resources/data/canon/recipe/film_orange.json new file mode 100755 index 0000000..2571d8a --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_orange.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:orange_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "orange" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_pink.json b/Fun/canon/src/main/resources/data/canon/recipe/film_pink.json new file mode 100755 index 0000000..fd01793 --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_pink.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:pink_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "pink" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_purple.json b/Fun/canon/src/main/resources/data/canon/recipe/film_purple.json new file mode 100755 index 0000000..5a87dd2 --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_purple.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:purple_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "purple" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_red.json b/Fun/canon/src/main/resources/data/canon/recipe/film_red.json new file mode 100755 index 0000000..a0c8df9 --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_red.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:red_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "red" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_white.json b/Fun/canon/src/main/resources/data/canon/recipe/film_white.json new file mode 100755 index 0000000..23007fe --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_white.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:white_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "white" + } + } +} diff --git a/Fun/canon/src/main/resources/data/canon/recipe/film_yellow.json b/Fun/canon/src/main/resources/data/canon/recipe/film_yellow.json new file mode 100755 index 0000000..53e0ec9 --- /dev/null +++ b/Fun/canon/src/main/resources/data/canon/recipe/film_yellow.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + "minecraft:paper", + "minecraft:yellow_dye" + ], + "result": { + "id": "canon:film", + "count": 1, + "components": { + "canon:photo_style": "yellow" + } + } +} diff --git a/Fun/canon/src/main/resources/fabric.mod.json b/Fun/canon/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..eab579e --- /dev/null +++ b/Fun/canon/src/main/resources/fabric.mod.json @@ -0,0 +1,27 @@ +{ + "schemaVersion": 1, + "id": "canon", + "version": "${version}", + "name": "Canon", + "description": "Adds craftable cameras and dye-based film rolls that turn snapshots into displayable map photos.", + "authors": [ + "KOKA99CAB" + ], + "icon": "assets/canon/icon.png", + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.canon.CanonMod" + ], + "client": [ + "fr.koka99cab.canon.client.CanonClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Fun/canon/src/test/java/fr/koka99cab/canon/component/LoadedFilmComponentTest.java b/Fun/canon/src/test/java/fr/koka99cab/canon/component/LoadedFilmComponentTest.java new file mode 100755 index 0000000..fdfe1d9 --- /dev/null +++ b/Fun/canon/src/test/java/fr/koka99cab/canon/component/LoadedFilmComponentTest.java @@ -0,0 +1,42 @@ +package fr.koka99cab.canon.component; + +import fr.koka99cab.canon.CanonConstants; +import fr.koka99cab.canon.item.PhotoStyle; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + +class LoadedFilmComponentTest { + @Test + void emptyCameraAcceptsAnyStyle() { + LoadedFilmComponent component = LoadedFilmComponent.EMPTY.add(PhotoStyle.RED, 3); + + assertEquals(3, component.count()); + assertEquals(PhotoStyle.RED, component.style().orElseThrow()); + } + + @Test + void loadedCameraRejectsDifferentStyle() { + LoadedFilmComponent component = LoadedFilmComponent.of(PhotoStyle.RED, 4); + + assertFalse(component.canAccept(PhotoStyle.BLUE)); + assertTrue(component.canAccept(PhotoStyle.RED)); + } + + @Test + void decrementClearsEmptyCamera() { + LoadedFilmComponent component = LoadedFilmComponent.of(PhotoStyle.BLACK, 1).decrement(); + + assertTrue(component.isEmpty()); + assertTrue(component.style().isEmpty()); + } + + @Test + void addCapsAtCapacity() { + LoadedFilmComponent component = LoadedFilmComponent.of(PhotoStyle.CYAN, CanonConstants.CAMERA_CAPACITY - 1).add(PhotoStyle.CYAN, 4); + + assertEquals(CanonConstants.CAMERA_CAPACITY, component.count()); + } +} diff --git a/Fun/canon/src/test/java/fr/koka99cab/canon/item/PhotoStyleTest.java b/Fun/canon/src/test/java/fr/koka99cab/canon/item/PhotoStyleTest.java new file mode 100755 index 0000000..bf61987 --- /dev/null +++ b/Fun/canon/src/test/java/fr/koka99cab/canon/item/PhotoStyleTest.java @@ -0,0 +1,32 @@ +package fr.koka99cab.canon.item; + +import net.minecraft.util.ARGB; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +class PhotoStyleTest { + @Test + void everyStyleIsResolvableFromItsDye() { + for (PhotoStyle style : PhotoStyle.values()) { + assertEquals(style, PhotoStyle.byId(style.id()).orElseThrow()); + assertEquals(style, PhotoStyle.fromDyeId(style.dyeId()).orElseThrow()); + } + } + + @Test + void blackStyleProducesMonochromeOutput() { + int filtered = PhotoStyle.BLACK.applyFilter(ARGB.color(255, 190, 110, 60)); + + assertEquals(ARGB.red(filtered), ARGB.green(filtered)); + assertEquals(ARGB.green(filtered), ARGB.blue(filtered)); + } + + @Test + void stylesCoverAllVanillaDyes() { + assertTrue(PhotoStyle.fromDyeId("minecraft:white_dye").isPresent()); + assertTrue(PhotoStyle.fromDyeId("minecraft:pink_dye").isPresent()); + assertTrue(PhotoStyle.fromDyeId("minecraft:black_dye").isPresent()); + } +} diff --git a/Fun/canon/src/test/java/fr/koka99cab/canon/photo/PhotoMapPaletteTest.java b/Fun/canon/src/test/java/fr/koka99cab/canon/photo/PhotoMapPaletteTest.java new file mode 100755 index 0000000..b4c44a1 --- /dev/null +++ b/Fun/canon/src/test/java/fr/koka99cab/canon/photo/PhotoMapPaletteTest.java @@ -0,0 +1,48 @@ +package fr.koka99cab.canon.photo; + +import net.minecraft.util.ARGB; +import net.minecraft.world.level.material.MapColor; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +class PhotoMapPaletteTest { + @Test + void exactPaletteColorReturnsMatchingIndex() { + int opaqueIndex = 0; + for (int i = 0; i < 256; i++) { + if (ARGB.alpha(MapColor.getColorFromPackedId(i)) > 0) { + opaqueIndex = i; + break; + } + } + byte nearest = PhotoMapPalette.nearestColor(MapColor.getColorFromPackedId(opaqueIndex)); + + assertEquals(opaqueIndex, nearest & 0xFF); + } + + @Test + void quantizationIsStableForWhite() { + byte nearest = PhotoMapPalette.nearestColor(0xFFFFFFFF); + + assertEquals(nearest, PhotoMapPalette.nearestColor(0xFFFFFFFF)); + } + + @Test + void blackDoesNotResolveToTransparentPaletteEntry() { + byte nearest = PhotoMapPalette.nearestColor(0xFF000000); + + assertNotEquals(0, nearest & 0xFF); + assertTrue(ARGB.alpha(PhotoMapPalette.colorAt(nearest & 0xFF)) > 0); + } + + @Test + void skyBlueKeepsABluePaletteMatch() { + byte nearest = PhotoMapPalette.nearestColor(0xFF87CEEB); + int palette = PhotoMapPalette.colorAt(nearest & 0xFF); + + assertTrue(ARGB.blue(palette) > ARGB.red(palette)); + } +} diff --git a/Fun/pepperdream/.gitignore b/Fun/pepperdream/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Fun/pepperdream/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Fun/pepperdream/build.gradle b/Fun/pepperdream/build.gradle new file mode 100644 index 0000000..0757a94 --- /dev/null +++ b/Fun/pepperdream/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "pepperdream" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Fun/pepperdream/gradle.properties b/Fun/pepperdream/gradle.properties new file mode 100644 index 0000000..05ef4cf --- /dev/null +++ b/Fun/pepperdream/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=pepperdream + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Fun/pepperdream/gradle/wrapper/gradle-wrapper.jar b/Fun/pepperdream/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Fun/pepperdream/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Fun/pepperdream/gradle/wrapper/gradle-wrapper.properties b/Fun/pepperdream/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Fun/pepperdream/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Fun/pepperdream/gradlew b/Fun/pepperdream/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Fun/pepperdream/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Fun/pepperdream/gradlew.bat b/Fun/pepperdream/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Fun/pepperdream/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Fun/pepperdream/settings.gradle b/Fun/pepperdream/settings.gradle new file mode 100644 index 0000000..323ccb6 --- /dev/null +++ b/Fun/pepperdream/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "pepperdream" diff --git a/Fun/pepperdream/src/client/java/fr/koka99cab/pepperdream/client/PepperDreamClient.java b/Fun/pepperdream/src/client/java/fr/koka99cab/pepperdream/client/PepperDreamClient.java new file mode 100644 index 0000000..4b68d16 --- /dev/null +++ b/Fun/pepperdream/src/client/java/fr/koka99cab/pepperdream/client/PepperDreamClient.java @@ -0,0 +1,11 @@ +package fr.koka99cab.pepperdream.client; + +import net.fabricmc.api.ClientModInitializer; +import fr.koka99cab.pepperdream.PepperDreamMod; + +public class PepperDreamClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + PepperDreamMod.LOGGER.info("PepperDream client initialise."); + } +} diff --git a/Fun/pepperdream/src/main/java/fr/koka99cab/pepperdream/PepperDreamMod.java b/Fun/pepperdream/src/main/java/fr/koka99cab/pepperdream/PepperDreamMod.java new file mode 100644 index 0000000..cba66be --- /dev/null +++ b/Fun/pepperdream/src/main/java/fr/koka99cab/pepperdream/PepperDreamMod.java @@ -0,0 +1,15 @@ +package fr.koka99cab.pepperdream; + +import net.fabricmc.api.ModInitializer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class PepperDreamMod implements ModInitializer { + public static final String MOD_ID = "pepperdream"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + LOGGER.info("PepperDream charge pour Minecraft 26.1.2."); + } +} diff --git a/Fun/pepperdream/src/main/resources/assets/pepperdream/lang/en_us.json b/Fun/pepperdream/src/main/resources/assets/pepperdream/lang/en_us.json new file mode 100644 index 0000000..c81013d --- /dev/null +++ b/Fun/pepperdream/src/main/resources/assets/pepperdream/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.pepperdream": "PepperDream", + "modmenu.descriptionTranslation.pepperdream": "Example Fabric mod for the Hello World mod collection." +} diff --git a/Fun/pepperdream/src/main/resources/assets/pepperdream/lang/fr_fr.json b/Fun/pepperdream/src/main/resources/assets/pepperdream/lang/fr_fr.json new file mode 100644 index 0000000..88a8bfb --- /dev/null +++ b/Fun/pepperdream/src/main/resources/assets/pepperdream/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.pepperdream": "PepperDream", + "modmenu.descriptionTranslation.pepperdream": "Mod Fabric exemple pour la collection de mods Hello World." +} diff --git a/Fun/pepperdream/src/main/resources/fabric.mod.json b/Fun/pepperdream/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..fe1cb3a --- /dev/null +++ b/Fun/pepperdream/src/main/resources/fabric.mod.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "id": "pepperdream", + "version": "${version}", + "name": "PepperDream", + "description": "Mod Fabric exemple pour la collection de mods Hello World.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.pepperdream.PepperDreamMod" + ], + "client": [ + "fr.koka99cab.pepperdream.client.PepperDreamClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Gameplay/atlas/.gitignore b/Gameplay/atlas/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Gameplay/atlas/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Gameplay/atlas/build.gradle b/Gameplay/atlas/build.gradle new file mode 100644 index 0000000..65c9d7f --- /dev/null +++ b/Gameplay/atlas/build.gradle @@ -0,0 +1,72 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +base { + archivesName = project.archives_base_name +} + +repositories { + mavenCentral() +} + +loom { + splitEnvironmentSourceSets() + + mods { + "atlas" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + inputs.property "archivesName", project.base.archivesName + + from("../../license.txt") { + rename { "${it}_${inputs.properties.archivesName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + artifactId = project.archives_base_name + from components.java + } + } + + repositories { + } +} diff --git a/Gameplay/atlas/gradle.properties b/Gameplay/atlas/gradle.properties new file mode 100644 index 0000000..e487ad0 --- /dev/null +++ b/Gameplay/atlas/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=atlas + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Gameplay/atlas/gradle/wrapper/gradle-wrapper.jar b/Gameplay/atlas/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Gameplay/atlas/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Gameplay/atlas/gradle/wrapper/gradle-wrapper.properties b/Gameplay/atlas/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Gameplay/atlas/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Gameplay/atlas/gradlew b/Gameplay/atlas/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Gameplay/atlas/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Gameplay/atlas/gradlew.bat b/Gameplay/atlas/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Gameplay/atlas/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Gameplay/atlas/readme.md b/Gameplay/atlas/readme.md new file mode 100644 index 0000000..a19df26 --- /dev/null +++ b/Gameplay/atlas/readme.md @@ -0,0 +1,19 @@ +# Atlas + +Atlas est un module Fabric autonome qui ajoute un acces simple a une carte Atlas 3D des chunks visites. + +## Compatibilite + +- Aucune dependance dure a Sanctuary ou aux autres mods de la collection. +- La touche par defaut est `N` pour eviter les conflits avec les raccourcis deja presents dans la collection. +- L'item `atlas:atlas` ouvre le meme ecran au clic droit. +- Un bouton `Atlas` est ajoute dans le menu pause. +- Les chunks visites sont memorises cote client dans `atlas/visited_chunks.tsv`. +- La carte affiche les chunks de la dimension courante en isometrique, avec une hauteur estimee depuis la surface connue au moment de la visite. + +## Premiere boucle de jeu + +1. Mettre le jeu en pause et cliquer sur `Atlas`. +2. Ou appuyer sur `N` en jeu. +3. Ou crafter un atlas avec papier, compas et livre, puis clic droit. +4. Explorer: chaque chunk traverse apparait progressivement sur la carte. diff --git a/Gameplay/atlas/settings.gradle b/Gameplay/atlas/settings.gradle new file mode 100644 index 0000000..532480d --- /dev/null +++ b/Gameplay/atlas/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "atlas" diff --git a/Gameplay/atlas/src/client/java/fr/koka99cab/atlas/client/AtlasClient.java b/Gameplay/atlas/src/client/java/fr/koka99cab/atlas/client/AtlasClient.java new file mode 100644 index 0000000..2658135 --- /dev/null +++ b/Gameplay/atlas/src/client/java/fr/koka99cab/atlas/client/AtlasClient.java @@ -0,0 +1,52 @@ +package fr.koka99cab.atlas.client; + +import com.mojang.blaze3d.platform.InputConstants; +import fr.koka99cab.atlas.AtlasMod; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; +import net.fabricmc.fabric.api.client.keymapping.v1.KeyMappingHelper; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents; +import net.minecraft.client.KeyMapping; +import net.minecraft.client.Minecraft; +import org.lwjgl.glfw.GLFW; + +public final class AtlasClient implements ClientModInitializer { + private static final KeyMapping.Category ATLAS_CATEGORY = + KeyMapping.Category.register(AtlasMod.id("atlas")); + private static KeyMapping openMapKey; + + @Override + public void onInitializeClient() { + openMapKey = KeyMappingHelper.registerKeyMapping(new KeyMapping( + "key.atlas.open_map", + InputConstants.Type.KEYSYM, + GLFW.GLFW_KEY_N, + ATLAS_CATEGORY + )); + + AtlasClientBridge.setMapOpener(AtlasClient::openMap); + ClientTickEvents.END_CLIENT_TICK.register(AtlasClient::tick); + ClientPlayConnectionEvents.DISCONNECT.register((handler, client) -> AtlasVisitedChunks.saveIfDirty(client)); + } + + private static void tick(Minecraft client) { + AtlasVisitedChunks.tick(client); + while (openMapKey.consumeClick()) { + openMap(); + } + } + + private static void openMap() { + Minecraft client = Minecraft.getInstance(); + if (client.player == null || client.level == null) { + return; + } + + if (client.screen instanceof AtlasMapScreen) { + client.setScreen(null); + return; + } + + client.setScreen(new AtlasMapScreen()); + } +} diff --git a/Gameplay/atlas/src/client/java/fr/koka99cab/atlas/client/AtlasMapScreen.java b/Gameplay/atlas/src/client/java/fr/koka99cab/atlas/client/AtlasMapScreen.java new file mode 100644 index 0000000..3ebf176 --- /dev/null +++ b/Gameplay/atlas/src/client/java/fr/koka99cab/atlas/client/AtlasMapScreen.java @@ -0,0 +1,338 @@ +package fr.koka99cab.atlas.client; + +import fr.koka99cab.atlas.client.AtlasVisitedChunks.VisitedChunk; +import java.util.ArrayList; +import java.util.Comparator; +import java.util.List; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.client.gui.components.Button; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.input.MouseButtonEvent; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.level.Level; + +public final class AtlasMapScreen extends Screen { + private static final int BACKDROP = 0xAA05080A; + private static final int PANEL = 0xEE151A1C; + private static final int PANEL_BORDER = 0xFF6F7F83; + private static final int MAP_BG = 0xFF101617; + private static final int MAP_LINE_MAJOR = 0x444E777B; + private static final int MAP_LINE_MINOR = 0x223E5659; + private static final int PLAYER_DOT = 0xFFE9F06B; + private static final int TEXT = 0xFFE8E8DD; + private static final int MUTED = 0xFF9EA9A8; + private static final int PANEL_MARGIN = 24; + private static final int BUTTON_WIDTH = 92; + private static final int BUTTON_HEIGHT = 20; + private static final int MIN_ZOOM = 0; + private static final int MAX_ZOOM = 4; + private static int rememberedZoom = 2; + + private int zoom = rememberedZoom; + + public AtlasMapScreen() { + super(Component.translatable("screen.atlas.map")); + } + + @Override + protected void init() { + addRenderableWidget(Button.builder(Component.translatable("gui.done"), button -> this.minecraft.setScreen(null)) + .bounds(this.width - PANEL_MARGIN - BUTTON_WIDTH, this.height - PANEL_MARGIN - BUTTON_HEIGHT, BUTTON_WIDTH, BUTTON_HEIGHT) + .build()); + } + + @Override + public boolean isPauseScreen() { + return false; + } + + @Override + public boolean mouseScrolled(double mouseX, double mouseY, double scrollX, double scrollY) { + int direction = scrollY > 0.0D ? 1 : -1; + this.zoom = Math.max(MIN_ZOOM, Math.min(MAX_ZOOM, this.zoom + direction)); + rememberedZoom = this.zoom; + return true; + } + + @Override + public boolean mouseDragged(MouseButtonEvent event, double dragX, double dragY) { + return super.mouseDragged(event, dragX, dragY); + } + + @Override + public void extractRenderState(GuiGraphicsExtractor graphics, int mouseX, int mouseY, float tickDelta) { + graphics.fill(0, 0, this.width, this.height, BACKDROP); + + Layout layout = layout(); + Minecraft client = Minecraft.getInstance(); + List chunks = AtlasVisitedChunks.currentDimensionChunks(client); + List visibleChunks = collectVisibleChunks(client, chunks, layout); + + graphics.fill(layout.panelX(), layout.panelY(), layout.panelRight(), layout.panelBottom(), PANEL); + graphics.outline(layout.panelX(), layout.panelY(), layout.panelWidth(), layout.panelHeight(), PANEL_BORDER); + graphics.fill(layout.mapX(), layout.mapY(), layout.mapRight(), layout.mapBottom(), MAP_BG); + graphics.outline(layout.mapX(), layout.mapY(), layout.mapSize(), layout.mapSize(), PANEL_BORDER); + + drawGrid(graphics, layout); + drawChunks(graphics, layout, visibleChunks); + drawPlayerDot(graphics, layout); + drawHeader(graphics, layout, chunks.size(), visibleChunks.size()); + + super.extractRenderState(graphics, mouseX, mouseY, tickDelta); + } + + private void drawGrid(GuiGraphicsExtractor graphics, Layout layout) { + int minorStep = Math.max(12, layout.tileHalfWidth() * 2); + for (int x = layout.mapX() + minorStep; x < layout.mapRight(); x += minorStep) { + graphics.verticalLine(x, layout.mapY(), layout.mapBottom(), MAP_LINE_MINOR); + } + for (int y = layout.mapY() + minorStep; y < layout.mapBottom(); y += minorStep) { + graphics.horizontalLine(layout.mapX(), layout.mapRight(), y, MAP_LINE_MINOR); + } + + int centerX = layout.mapX() + layout.mapSize() / 2; + int centerY = layout.mapY() + layout.mapSize() / 2; + graphics.verticalLine(centerX, layout.mapY(), layout.mapBottom(), MAP_LINE_MAJOR); + graphics.horizontalLine(layout.mapX(), layout.mapRight(), centerY, MAP_LINE_MAJOR); + } + + private List collectVisibleChunks(Minecraft client, List chunks, Layout layout) { + if (client.player == null) { + return List.of(); + } + + int playerChunkX = client.player.getBlockX() >> 4; + int playerChunkZ = client.player.getBlockZ() >> 4; + int radius = visibleRadius(); + List nearby = chunks.stream() + .filter(chunk -> Math.abs(chunk.chunkX() - playerChunkX) <= radius && Math.abs(chunk.chunkZ() - playerChunkZ) <= radius) + .toList(); + if (nearby.isEmpty()) { + return List.of(); + } + + int minHeight = nearby.stream().mapToInt(VisitedChunk::surfaceY).min().orElse(client.player.getBlockY()); + int maxHeight = nearby.stream().mapToInt(VisitedChunk::surfaceY).max().orElse(minHeight + 1); + int heightRange = Math.max(1, maxHeight - minHeight); + List renderChunks = new ArrayList<>(); + + for (VisitedChunk chunk : nearby) { + int dx = chunk.chunkX() - playerChunkX; + int dz = chunk.chunkZ() - playerChunkZ; + int screenX = layout.mapCenterX() + (dx - dz) * layout.tileHalfWidth(); + int screenY = layout.mapCenterY() + (dx + dz) * layout.tileHalfHeight(); + int elevation = Math.max(2, Math.min(42, Math.round(((chunk.surfaceY() - minHeight) / (float) heightRange) * 42.0F))); + int topY = screenY - elevation; + if (screenX < layout.mapX() - layout.tileHalfWidth() || screenX > layout.mapRight() + layout.tileHalfWidth()) { + continue; + } + if (topY < layout.mapY() - 48 || screenY > layout.mapBottom() + 48) { + continue; + } + + boolean playerChunk = chunk.chunkX() == playerChunkX && chunk.chunkZ() == playerChunkZ; + renderChunks.add(new RenderChunk(chunk, screenX, screenY, elevation, colorFor(chunk, minHeight, maxHeight, playerChunk), playerChunk)); + } + + renderChunks.sort(Comparator + .comparingInt(RenderChunk::sortY) + .thenComparingInt(renderChunk -> renderChunk.chunk().chunkX()) + .thenComparingInt(renderChunk -> renderChunk.chunk().chunkZ())); + return renderChunks; + } + + private void drawChunks(GuiGraphicsExtractor graphics, Layout layout, List chunks) { + graphics.enableScissor(layout.mapX() + 1, layout.mapY() + 1, layout.mapRight() - 1, layout.mapBottom() - 1); + for (RenderChunk chunk : chunks) { + drawChunkColumn(graphics, layout, chunk); + } + graphics.disableScissor(); + } + + private void drawChunkColumn(GuiGraphicsExtractor graphics, Layout layout, RenderChunk chunk) { + int cx = chunk.screenX(); + int topY = chunk.baseY() - chunk.elevation(); + int hw = layout.tileHalfWidth(); + int hh = layout.tileHalfHeight(); + int baseY = chunk.baseY(); + int color = chunk.color(); + int leftColor = shade(color, 0.70F); + int rightColor = shade(color, 0.52F); + int topColor = chunk.playerChunk() ? 0xFFE9F06B : color; + + fillQuad(graphics, + new int[] {cx - hw, cx, cx, cx - hw}, + new int[] {topY, topY + hh, baseY + hh, baseY}, + leftColor + ); + fillQuad(graphics, + new int[] {cx + hw, cx, cx, cx + hw}, + new int[] {topY, topY + hh, baseY + hh, baseY}, + rightColor + ); + fillDiamond(graphics, cx, topY, hw, hh, topColor); + + if (chunk.playerChunk()) { + graphics.outline(cx - hw - 1, topY - hh - 1, hw * 2 + 2, hh * 2 + 2, PLAYER_DOT); + } + } + + private static void fillDiamond(GuiGraphicsExtractor graphics, int cx, int cy, int halfWidth, int halfHeight, int color) { + for (int dy = -halfHeight; dy <= halfHeight; dy++) { + float t = 1.0F - Math.abs(dy) / (float) Math.max(1, halfHeight); + int width = Math.max(1, Math.round(halfWidth * t)); + graphics.horizontalLine(cx - width, cx + width, cy + dy, color); + } + } + + private static void fillQuad(GuiGraphicsExtractor graphics, int[] x, int[] y, int color) { + int minY = Math.min(Math.min(y[0], y[1]), Math.min(y[2], y[3])); + int maxY = Math.max(Math.max(y[0], y[1]), Math.max(y[2], y[3])); + for (int scanY = minY; scanY <= maxY; scanY++) { + List intersections = new ArrayList<>(4); + for (int index = 0; index < 4; index++) { + int next = (index + 1) % 4; + int y1 = y[index]; + int y2 = y[next]; + if (y1 == y2) { + continue; + } + if ((scanY >= Math.min(y1, y2)) && (scanY < Math.max(y1, y2))) { + float t = (scanY - y1) / (float) (y2 - y1); + intersections.add(Math.round(x[index] + (x[next] - x[index]) * t)); + } + } + if (intersections.size() >= 2) { + intersections.sort(Integer::compareTo); + graphics.horizontalLine(intersections.get(0), intersections.get(intersections.size() - 1), scanY, color); + } + } + } + + private void drawPlayerDot(GuiGraphicsExtractor graphics, Layout layout) { + int centerX = layout.mapX() + layout.mapSize() / 2; + int centerY = layout.mapY() + layout.mapSize() / 2; + graphics.fill(centerX - 2, centerY - 7, centerX + 3, centerY - 2, PLAYER_DOT); + graphics.outline(centerX - 4, centerY - 9, 9, 9, 0xFF101010); + } + + private void drawHeader(GuiGraphicsExtractor graphics, Layout layout, int totalChunks, int visibleChunks) { + Minecraft client = Minecraft.getInstance(); + String dimension = client.level == null ? "" : readableDimension(client.level.dimension()); + String position = client.player == null + ? "" + : "X " + client.player.getBlockX() + " Y " + client.player.getBlockY() + " Z " + client.player.getBlockZ(); + + graphics.text(this.font, this.title, layout.panelX() + 14, layout.panelY() + 12, TEXT); + graphics.text(this.font, dimension, layout.panelX() + 14, layout.panelY() + 28, MUTED); + graphics.text(this.font, Component.translatable("screen.atlas.chunk_count", totalChunks, visibleChunks), layout.panelX() + 14, layout.panelBottom() - 48, MUTED); + graphics.text(this.font, position, layout.panelX() + 14, layout.panelBottom() - 34, MUTED); + graphics.text(this.font, Component.translatable("screen.atlas.zoom", this.zoom + 1), layout.panelRight() - 90, layout.panelY() + 12, MUTED); + } + + private static String readableDimension(ResourceKey key) { + return key.identifier().toString(); + } + + private Layout layout() { + int panelWidth = Math.min(this.width - PANEL_MARGIN * 2, 560); + int panelHeight = Math.min(this.height - PANEL_MARGIN * 2, 360); + int panelX = (this.width - panelWidth) / 2; + int panelY = (this.height - panelHeight) / 2; + int mapSize = Math.max(96, Math.min(panelWidth - 40, panelHeight - 86)); + int mapX = panelX + (panelWidth - mapSize) / 2; + int mapY = panelY + 54; + int tileHalfWidth = 6 + this.zoom * 3; + int tileHalfHeight = Math.max(3, tileHalfWidth / 2); + return new Layout(panelX, panelY, panelWidth, panelHeight, mapX, mapY, mapSize, tileHalfWidth, tileHalfHeight); + } + + private int visibleRadius() { + return Math.max(10, 58 - this.zoom * 10); + } + + private static int colorFor(VisitedChunk chunk, int minHeight, int maxHeight, boolean playerChunk) { + if (playerChunk) { + return PLAYER_DOT; + } + + float t = (chunk.surfaceY() - minHeight) / (float) Math.max(1, maxHeight - minHeight); + if (t < 0.42F) { + return lerpColor(0xFF355865, 0xFF5E8A68, t / 0.42F); + } + if (t < 0.78F) { + return lerpColor(0xFF5E8A68, 0xFF9B976D, (t - 0.42F) / 0.36F); + } + return lerpColor(0xFF9B976D, 0xFFE1DDC8, (t - 0.78F) / 0.22F); + } + + private static int shade(int color, float factor) { + int r = Math.round(((color >> 16) & 0xFF) * factor); + int g = Math.round(((color >> 8) & 0xFF) * factor); + int b = Math.round((color & 0xFF) * factor); + return 0xFF000000 | (clampColor(r) << 16) | (clampColor(g) << 8) | clampColor(b); + } + + private static int lerpColor(int from, int to, float t) { + float clamped = Math.max(0.0F, Math.min(1.0F, t)); + int r = Math.round(((from >> 16) & 0xFF) + (((to >> 16) & 0xFF) - ((from >> 16) & 0xFF)) * clamped); + int g = Math.round(((from >> 8) & 0xFF) + (((to >> 8) & 0xFF) - ((from >> 8) & 0xFF)) * clamped); + int b = Math.round((from & 0xFF) + ((to & 0xFF) - (from & 0xFF)) * clamped); + return 0xFF000000 | (clampColor(r) << 16) | (clampColor(g) << 8) | clampColor(b); + } + + private static int clampColor(int value) { + return Math.max(0, Math.min(255, value)); + } + + private record Layout( + int panelX, + int panelY, + int panelWidth, + int panelHeight, + int mapX, + int mapY, + int mapSize, + int tileHalfWidth, + int tileHalfHeight + ) { + int panelRight() { + return this.panelX + this.panelWidth; + } + + int panelBottom() { + return this.panelY + this.panelHeight; + } + + int mapRight() { + return this.mapX + this.mapSize; + } + + int mapBottom() { + return this.mapY + this.mapSize; + } + + int mapCenterX() { + return this.mapX + this.mapSize / 2; + } + + int mapCenterY() { + return this.mapY + this.mapSize / 2; + } + } + + private record RenderChunk( + VisitedChunk chunk, + int screenX, + int baseY, + int elevation, + int color, + boolean playerChunk + ) { + int sortY() { + return this.baseY; + } + } +} diff --git a/Gameplay/atlas/src/client/java/fr/koka99cab/atlas/client/AtlasVisitedChunks.java b/Gameplay/atlas/src/client/java/fr/koka99cab/atlas/client/AtlasVisitedChunks.java new file mode 100644 index 0000000..b15e8a0 --- /dev/null +++ b/Gameplay/atlas/src/client/java/fr/koka99cab/atlas/client/AtlasVisitedChunks.java @@ -0,0 +1,231 @@ +package fr.koka99cab.atlas.client; + +import fr.koka99cab.atlas.AtlasMod; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.Base64; +import java.util.Comparator; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ServerData; +import net.minecraft.client.server.IntegratedServer; +import net.minecraft.world.level.levelgen.Heightmap; + +public final class AtlasVisitedChunks { + private static final String FILE_NAME = "visited_chunks.tsv"; + private static final int SAVE_COOLDOWN_TICKS = 80; + private static final long SAME_CHUNK_REFRESH_INTERVAL_MS = 60_000L; + private static final Map CHUNKS = new HashMap<>(); + private static boolean loaded; + private static boolean dirty; + private static int saveCooldownTicks; + + private AtlasVisitedChunks() { + } + + public static void tick(Minecraft client) { + if (client.level == null || client.player == null) { + saveIfDirty(client); + return; + } + + ensureLoaded(client); + recordCurrentChunk(client); + if (dirty && saveCooldownTicks > 0) { + saveCooldownTicks--; + } + if (dirty && saveCooldownTicks <= 0) { + save(client); + } + } + + public static List currentDimensionChunks(Minecraft client) { + if (client.level == null) { + return List.of(); + } + + ensureLoaded(client); + String world = worldKey(client); + String dimension = dimensionKey(client); + return CHUNKS.values().stream() + .filter(chunk -> chunk.worldKey().equals(world) && chunk.dimension().equals(dimension)) + .sorted(Comparator.comparingInt(VisitedChunk::chunkX).thenComparingInt(VisitedChunk::chunkZ)) + .toList(); + } + + public static void saveIfDirty(Minecraft client) { + if (dirty) { + save(client); + } + } + + private static void recordCurrentChunk(Minecraft client) { + String world = worldKey(client); + String dimension = dimensionKey(client); + int chunkX = client.player.getBlockX() >> 4; + int chunkZ = client.player.getBlockZ() >> 4; + int surfaceY = estimateSurfaceY(client, chunkX, chunkZ); + long visitedAt = System.currentTimeMillis(); + + ChunkKey key = new ChunkKey(world, dimension, chunkX, chunkZ); + VisitedChunk previous = CHUNKS.get(key); + if (previous != null && Math.abs(previous.surfaceY() - surfaceY) <= 1) { + if (visitedAt - previous.lastVisited() < SAME_CHUNK_REFRESH_INTERVAL_MS) { + return; + } + CHUNKS.put(key, previous.withLastVisited(visitedAt)); + } else { + CHUNKS.put(key, new VisitedChunk(world, dimension, chunkX, chunkZ, surfaceY, visitedAt)); + } + + dirty = true; + if (saveCooldownTicks <= 0) { + saveCooldownTicks = SAVE_COOLDOWN_TICKS; + } + } + + private static int estimateSurfaceY(Minecraft client, int chunkX, int chunkZ) { + int fallbackY = client.player.getBlockY(); + if (client.level == null || !client.level.hasChunk(chunkX, chunkZ)) { + return fallbackY; + } + + int blockX = (chunkX << 4) + 8; + int blockZ = (chunkZ << 4) + 8; + int surfaceY = client.level.getHeight(Heightmap.Types.WORLD_SURFACE, blockX, blockZ); + if (surfaceY <= client.level.getMinY()) { + return fallbackY; + } + return surfaceY; + } + + private static void ensureLoaded(Minecraft client) { + if (loaded) { + return; + } + + loaded = true; + Path file = storageFile(client); + if (!Files.isRegularFile(file)) { + return; + } + + try { + for (String line : Files.readAllLines(file, StandardCharsets.UTF_8)) { + if (line.isBlank() || line.startsWith("#")) { + continue; + } + + VisitedChunk.fromLine(line).ifPresent(chunk -> + CHUNKS.put(new ChunkKey(chunk.worldKey(), chunk.dimension(), chunk.chunkX(), chunk.chunkZ()), chunk) + ); + } + } catch (IOException exception) { + AtlasMod.LOGGER.warn("Impossible de lire les chunks visites d'Atlas.", exception); + } + } + + private static void save(Minecraft client) { + ensureLoaded(client); + Path file = storageFile(client); + try { + Files.createDirectories(file.getParent()); + List lines = new ArrayList<>(); + lines.add("# Atlas visited chunks v1"); + CHUNKS.values().stream() + .sorted(Comparator + .comparing(VisitedChunk::worldKey) + .thenComparing(VisitedChunk::dimension) + .thenComparingInt(VisitedChunk::chunkX) + .thenComparingInt(VisitedChunk::chunkZ)) + .map(VisitedChunk::toLine) + .forEach(lines::add); + Files.write(file, lines, StandardCharsets.UTF_8); + dirty = false; + saveCooldownTicks = 0; + } catch (IOException exception) { + AtlasMod.LOGGER.warn("Impossible d'enregistrer les chunks visites d'Atlas.", exception); + saveCooldownTicks = SAVE_COOLDOWN_TICKS; + } + } + + private static Path storageFile(Minecraft client) { + return client.gameDirectory.toPath().resolve("atlas").resolve(FILE_NAME); + } + + private static String worldKey(Minecraft client) { + ServerData serverData = client.getCurrentServer(); + if (serverData != null && serverData.ip != null && !serverData.ip.isBlank()) { + return "server:" + serverData.ip; + } + + IntegratedServer server = client.getSingleplayerServer(); + if (server != null && server.getWorldData() != null) { + return "singleplayer:" + server.getWorldData().getLevelName(); + } + + return "local"; + } + + private static String dimensionKey(Minecraft client) { + return client.level.dimension().identifier().toString(); + } + + private static String encode(String value) { + return Base64.getUrlEncoder().withoutPadding().encodeToString(value.getBytes(StandardCharsets.UTF_8)); + } + + private static String decode(String value) { + return new String(Base64.getUrlDecoder().decode(value), StandardCharsets.UTF_8); + } + + private record ChunkKey(String worldKey, String dimension, int chunkX, int chunkZ) { + } + + public record VisitedChunk( + String worldKey, + String dimension, + int chunkX, + int chunkZ, + int surfaceY, + long lastVisited + ) { + private static java.util.Optional fromLine(String line) { + String[] parts = line.split("\\t"); + if (parts.length != 6) { + return java.util.Optional.empty(); + } + + try { + return java.util.Optional.of(new VisitedChunk( + decode(parts[0]), + decode(parts[1]), + Integer.parseInt(parts[2]), + Integer.parseInt(parts[3]), + Integer.parseInt(parts[4]), + Long.parseLong(parts[5]) + )); + } catch (IllegalArgumentException exception) { + return java.util.Optional.empty(); + } + } + + private String toLine() { + return encode(this.worldKey) + "\t" + + encode(this.dimension) + "\t" + + this.chunkX + "\t" + + this.chunkZ + "\t" + + this.surfaceY + "\t" + + this.lastVisited; + } + + private VisitedChunk withLastVisited(long visitedAt) { + return new VisitedChunk(this.worldKey, this.dimension, this.chunkX, this.chunkZ, this.surfaceY, visitedAt); + } + } +} diff --git a/Gameplay/atlas/src/client/java/fr/koka99cab/atlas/client/mixin/PauseScreenMixin.java b/Gameplay/atlas/src/client/java/fr/koka99cab/atlas/client/mixin/PauseScreenMixin.java new file mode 100644 index 0000000..589f73b --- /dev/null +++ b/Gameplay/atlas/src/client/java/fr/koka99cab/atlas/client/mixin/PauseScreenMixin.java @@ -0,0 +1,37 @@ +package fr.koka99cab.atlas.client.mixin; + +import fr.koka99cab.atlas.client.AtlasMapScreen; +import net.minecraft.client.gui.components.Button; +import net.minecraft.client.gui.screens.PauseScreen; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.network.chat.Component; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(PauseScreen.class) +public abstract class PauseScreenMixin extends Screen { + private static final int BUTTON_X = 8; + private static final int BUTTON_Y = 8; + private static final int BUTTON_WIDTH = 74; + private static final int BUTTON_HEIGHT = 20; + + protected PauseScreenMixin(Component title) { + super(title); + } + + @Inject(method = "init", at = @At("TAIL")) + private void atlas$addMapButton(CallbackInfo ci) { + if (this.minecraft == null || this.minecraft.player == null || this.minecraft.level == null) { + return; + } + + this.addRenderableWidget(Button.builder( + Component.translatable("button.atlas.map"), + button -> this.minecraft.setScreen(new AtlasMapScreen()) + ) + .bounds(BUTTON_X, BUTTON_Y, BUTTON_WIDTH, BUTTON_HEIGHT) + .build()); + } +} diff --git a/Gameplay/atlas/src/client/resources/atlas.client.mixins.json b/Gameplay/atlas/src/client/resources/atlas.client.mixins.json new file mode 100644 index 0000000..01fef4c --- /dev/null +++ b/Gameplay/atlas/src/client/resources/atlas.client.mixins.json @@ -0,0 +1,11 @@ +{ + "required": true, + "package": "fr.koka99cab.atlas.client.mixin", + "compatibilityLevel": "JAVA_25", + "client": [ + "PauseScreenMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/Gameplay/atlas/src/main/java/fr/koka99cab/atlas/AtlasMod.java b/Gameplay/atlas/src/main/java/fr/koka99cab/atlas/AtlasMod.java new file mode 100644 index 0000000..5cfbfc1 --- /dev/null +++ b/Gameplay/atlas/src/main/java/fr/koka99cab/atlas/AtlasMod.java @@ -0,0 +1,22 @@ +package fr.koka99cab.atlas; + +import fr.koka99cab.atlas.registry.AtlasItems; +import net.fabricmc.api.ModInitializer; +import net.minecraft.resources.Identifier; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class AtlasMod implements ModInitializer { + public static final String MOD_ID = "atlas"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + public static Identifier id(String path) { + return Identifier.fromNamespaceAndPath(MOD_ID, path); + } + + @Override + public void onInitialize() { + AtlasItems.initialize(); + LOGGER.info("Atlas charge pour Minecraft 26.1.2."); + } +} diff --git a/Gameplay/atlas/src/main/java/fr/koka99cab/atlas/client/AtlasClientBridge.java b/Gameplay/atlas/src/main/java/fr/koka99cab/atlas/client/AtlasClientBridge.java new file mode 100644 index 0000000..989e9cd --- /dev/null +++ b/Gameplay/atlas/src/main/java/fr/koka99cab/atlas/client/AtlasClientBridge.java @@ -0,0 +1,18 @@ +package fr.koka99cab.atlas.client; + +public final class AtlasClientBridge { + private static Runnable mapOpener = () -> { + }; + + private AtlasClientBridge() { + } + + public static void setMapOpener(Runnable mapOpener) { + AtlasClientBridge.mapOpener = mapOpener == null ? () -> { + } : mapOpener; + } + + public static void openMap() { + mapOpener.run(); + } +} diff --git a/Gameplay/atlas/src/main/java/fr/koka99cab/atlas/item/AtlasItem.java b/Gameplay/atlas/src/main/java/fr/koka99cab/atlas/item/AtlasItem.java new file mode 100644 index 0000000..76aff75 --- /dev/null +++ b/Gameplay/atlas/src/main/java/fr/koka99cab/atlas/item/AtlasItem.java @@ -0,0 +1,40 @@ +package fr.koka99cab.atlas.item; + +import fr.koka99cab.atlas.client.AtlasClientBridge; +import java.util.function.Consumer; +import net.minecraft.ChatFormatting; +import net.minecraft.network.chat.Component; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.item.component.TooltipDisplay; +import net.minecraft.world.level.Level; + +public class AtlasItem extends Item { + public AtlasItem(Properties settings) { + super(settings); + } + + @Override + public InteractionResult use(Level world, Player player, InteractionHand hand) { + if (world.isClientSide()) { + AtlasClientBridge.openMap(); + } + + return InteractionResult.CONSUME; + } + + @Override + public void appendHoverText( + ItemStack stack, + TooltipContext context, + TooltipDisplay displayComponent, + Consumer textConsumer, + TooltipFlag type + ) { + textConsumer.accept(Component.translatable("tooltip.atlas.open").withStyle(ChatFormatting.GRAY)); + } +} diff --git a/Gameplay/atlas/src/main/java/fr/koka99cab/atlas/registry/AtlasItems.java b/Gameplay/atlas/src/main/java/fr/koka99cab/atlas/registry/AtlasItems.java new file mode 100644 index 0000000..d5d713b --- /dev/null +++ b/Gameplay/atlas/src/main/java/fr/koka99cab/atlas/registry/AtlasItems.java @@ -0,0 +1,38 @@ +package fr.koka99cab.atlas.registry; + +import fr.koka99cab.atlas.AtlasMod; +import fr.koka99cab.atlas.item.AtlasItem; +import java.util.function.Function; +import net.fabricmc.fabric.api.creativetab.v1.CreativeModeTabEvents; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.item.CreativeModeTab; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; + +public final class AtlasItems { + public static final Item ATLAS = register("atlas", settings -> new AtlasItem(settings.stacksTo(1))); + + private AtlasItems() { + } + + public static void initialize() { + CreativeModeTabEvents.modifyOutputEvent(vanillaTab("tools_and_utilities")).register(entries -> + entries.accept(new ItemStack(ATLAS), CreativeModeTab.TabVisibility.PARENT_AND_SEARCH_TABS) + ); + } + + private static Item register(String path, Function factory) { + Identifier id = AtlasMod.id(path); + ResourceKey key = ResourceKey.create(Registries.ITEM, id); + Item.Properties settings = new Item.Properties().setId(key); + return Registry.register(BuiltInRegistries.ITEM, key, factory.apply(settings)); + } + + private static ResourceKey vanillaTab(String path) { + return ResourceKey.create(Registries.CREATIVE_MODE_TAB, Identifier.fromNamespaceAndPath("minecraft", path)); + } +} diff --git a/Gameplay/atlas/src/main/resources/assets/atlas/items/atlas.json b/Gameplay/atlas/src/main/resources/assets/atlas/items/atlas.json new file mode 100644 index 0000000..c14d70e --- /dev/null +++ b/Gameplay/atlas/src/main/resources/assets/atlas/items/atlas.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "minecraft:item/map" + } +} diff --git a/Gameplay/atlas/src/main/resources/assets/atlas/lang/en_us.json b/Gameplay/atlas/src/main/resources/assets/atlas/lang/en_us.json new file mode 100644 index 0000000..ffa1461 --- /dev/null +++ b/Gameplay/atlas/src/main/resources/assets/atlas/lang/en_us.json @@ -0,0 +1,10 @@ +{ + "item.atlas.atlas": "Atlas", + "tooltip.atlas.open": "Opens the Atlas map", + "screen.atlas.map": "Atlas", + "screen.atlas.chunk_count": "Visited chunks: %s (%s visible)", + "screen.atlas.zoom": "Zoom %s", + "button.atlas.map": "Atlas", + "key.categories.atlas.atlas": "Atlas", + "key.atlas.open_map": "Open Atlas map" +} diff --git a/Gameplay/atlas/src/main/resources/assets/atlas/lang/fr_fr.json b/Gameplay/atlas/src/main/resources/assets/atlas/lang/fr_fr.json new file mode 100644 index 0000000..b2f6a22 --- /dev/null +++ b/Gameplay/atlas/src/main/resources/assets/atlas/lang/fr_fr.json @@ -0,0 +1,10 @@ +{ + "item.atlas.atlas": "Atlas", + "tooltip.atlas.open": "Ouvre la carte Atlas", + "screen.atlas.map": "Atlas", + "screen.atlas.chunk_count": "Chunks visites : %s (%s visibles)", + "screen.atlas.zoom": "Zoom %s", + "button.atlas.map": "Atlas", + "key.categories.atlas.atlas": "Atlas", + "key.atlas.open_map": "Ouvrir la carte Atlas" +} diff --git a/Gameplay/atlas/src/main/resources/data/atlas/recipe/atlas.json b/Gameplay/atlas/src/main/resources/data/atlas/recipe/atlas.json new file mode 100644 index 0000000..9f3059b --- /dev/null +++ b/Gameplay/atlas/src/main/resources/data/atlas/recipe/atlas.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "pattern": [ + "PPP", + "PCP", + "PBP" + ], + "key": { + "B": "minecraft:book", + "C": "minecraft:compass", + "P": "minecraft:paper" + }, + "result": { + "id": "atlas:atlas", + "count": 1 + } +} diff --git a/Gameplay/atlas/src/main/resources/fabric.mod.json b/Gameplay/atlas/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..bc1c3ac --- /dev/null +++ b/Gameplay/atlas/src/main/resources/fabric.mod.json @@ -0,0 +1,29 @@ +{ + "schemaVersion": 1, + "id": "atlas", + "version": "${version}", + "name": "Atlas", + "description": "A portable marker atlas for every world, dimension, and modded exploration route.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.atlas.AtlasMod" + ], + "client": [ + "fr.koka99cab.atlas.client.AtlasClient" + ] + }, + "mixins": [ + "atlas.client.mixins.json" + ], + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Gameplay/blocodex/.gitignore b/Gameplay/blocodex/.gitignore new file mode 100644 index 0000000..9122a04 --- /dev/null +++ b/Gameplay/blocodex/.gitignore @@ -0,0 +1,13 @@ +.gradle/ +build/ +run/ + +*.class +*.log +*.tmp +*.bak + +.DS_Store +.idea/ +*.iml +out/ diff --git a/Gameplay/blocodex/build.gradle b/Gameplay/blocodex/build.gradle new file mode 100644 index 0000000..c510a86 --- /dev/null +++ b/Gameplay/blocodex/build.gradle @@ -0,0 +1,165 @@ +plugins { + id "java" + id "maven-publish" + id "net.fabricmc.fabric-loom" version "${loom_version}" +} + +import groovy.json.JsonOutput +import groovy.json.JsonSlurper + +version = project.mod_version +group = project.maven_group + +base { + archivesName = project.archives_base_name +} + +loom { + splitEnvironmentSourceSets() + + runs { + client { + programArgs "--username", "BlocodexDev", "--uuid", "000000000000400080000000000b10cd" + } + } + + mods { + blocodex { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" + + testImplementation "org.junit.jupiter:junit-jupiter-api:5.10.3" + testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:5.10.3" + testRuntimeOnly "org.junit.platform:junit-platform-launcher" +} + +processResources { + inputs.property "version", project.version + + filesMatching("fabric.mod.json") { + expand "version": inputs.properties.version + } +} + +tasks.withType(JavaCompile).configureEach { + options.release = 25 +} + +java { + withSourcesJar() + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + from("license.txt") +} + +test { + useJUnitPlatform() +} + +tasks.register("importWsmcSnapshot") { + group = "blocodex" + description = "Import the local WSMC snapshot into a compact runtime asset." + + def sourceFile = file("/Users/koka/Documents/wsmc/data/output/latest/snapshot.json") + def outputFile = file("src/main/resources/assets/blocodex/data/wsmc_snapshot_compact.json") + + inputs.file(sourceFile) + outputs.file(outputFile) + + doLast { + if (!sourceFile.isFile()) { + throw new GradleException("WSMC snapshot not found: ${sourceFile}") + } + + def snapshot = new JsonSlurper().parse(sourceFile) + def entries = (snapshot.blocks ?: []) + .findAll { it.visible == true && ["block", "item", "mob"].contains(it.entry_type) } + .collect { entry -> + [ + id : entry.id, + name : entry.name, + entry_type : entry.entry_type, + description: entry.description ?: "", + history : (entry.history ?: []).collect { note -> + [ + version: note.version ?: "", + status : note.status ?: "", + notes : note.notes ?: "" + ] + }, + colors : [ + primary : entry.colors?.primary ?: entry.colors?.average_hex ?: entry.colors?.dominant_hex ?: "#000000", + dominant_hex : entry.colors?.dominant_hex ?: entry.colors?.primary ?: "#000000", + average_hex : entry.colors?.average_hex ?: entry.colors?.primary ?: "#000000", + hue_group : entry.colors?.hue_group ?: "neutral", + lightness : entry.colors?.lightness ?: 0.0, + saturation : entry.colors?.saturation ?: 0.0, + palette : entry.colors?.palette ?: [], + color_groups : (entry.colors?.color_groups ?: []).collect { group -> + [ + hex : group.hex ?: "#000000", + weight : group.weight ?: 0.0, + lightness : group.lightness ?: 0.0, + saturation: group.saturation ?: 0.0, + hue_group : group.hue_group ?: "neutral" + ] + }, + source : entry.colors?.source ?: "" + ], + icon : entry.icon ?: "", + family : entry.family ?: "", + relations : (entry.relations ?: []).collect { relation -> + [ + type : relation.type ?: "", + target : relation.target ?: "", + label : relation.label ?: "", + confidence: relation.confidence ?: 0.0 + ] + }, + category : entry.category ?: "" + ] + } + .sort { a, b -> a.id <=> b.id } + + def counts = entries.countBy { it.entry_type } + def compact = [ + kind : "blocodex-wsmc-compact", + schema_version : "0.1.0", + minecraft_version: snapshot.minecraft_version ?: project.minecraft_version, + source : sourceFile.absolutePath, + source_fingerprint: snapshot.source_fingerprint ?: "", + generated_at : snapshot.generated_at ?: "", + entry_count : entries.size(), + entry_type_counts: [ + block: counts.block ?: 0, + item : counts.item ?: 0, + mob : counts.mob ?: 0 + ], + entries : entries + ] + + outputFile.parentFile.mkdirs() + outputFile.text = JsonOutput.toJson(compact) + "\n" + logger.lifecycle("Imported ${entries.size()} WSMC entries into ${outputFile}") + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + artifactId = project.archives_base_name + from components.java + } + } +} diff --git a/Gameplay/blocodex/docs/gui-textures.md b/Gameplay/blocodex/docs/gui-textures.md new file mode 100644 index 0000000..f6afa0b --- /dev/null +++ b/Gameplay/blocodex/docs/gui-textures.md @@ -0,0 +1,54 @@ +# Blocodex GUI Textures + +Editable PNG assets live in: + +`src/main/resources/assets/blocodex/textures/gui/` + +The UI uses these files directly. Edit the PNGs, restart or reload the client resources, and the Blocodex screen will pick up the new look. + +## Active Textures + +| File | Size | Slice | Used for | +| --- | ---: | ---: | --- | +| `device_panel.png` | 32x32 | 8 px | Main Blocodex body nine-slice | +| `screen_frame.png` | 32x32 | 8 px | Left screen and right grid frame nine-slice | +| `button_square.png` | 24x24 | 6 px | Menu button nine-slice | +| `button_wide.png` | 34x24 | 6 px | Left/right button nine-slice | +| `slider_well.png` | 20x32 | L/R 6 px, T/B 8 px | Vertical slider well nine-slice | +| `slider_knob.png` | 18x12 | none | Slider handle | +| `vent_slots.png` | 96x24 | none | Speaker/vent ornament | +| `status_light.png` | 12x12 | none | Small top-left light | +| `blocodex_wordmark.png` | 80x16 | none | Top wordmark | +| `icon_menu.png` | 16x16 | none | Menu icon | +| `icon_arrow_left.png` | 16x16 | none | Previous icon | +| `icon_arrow_right.png` | 16x16 | none | Next icon | +| `grid_overlay_9x9.png` | 144x144 | none | Thin 9x9 grid overlay | +| `selection_frame.png` | 16x16 | none | Selected grid cell frame | +| `bottom_panel.png` | 32x24 | 6 px | Hidden debug/nav panel, kept for later | + +`_gui_texture_preview.png` is only a contact sheet for quick visual checks. + +## Nine-Slice Rules + +For nine-slice textures, keep the corners intact. Paint borders freely, but avoid putting unique details in the center if they should not stretch. + +- `device_panel.png`: corners and borders are 8 px. +- `screen_frame.png`: corners and borders are 8 px. +- `button_square.png` and `button_wide.png`: corners and borders are 6 px. +- `slider_well.png`: left/right borders are 6 px; top/bottom borders are 8 px. +- `bottom_panel.png`: corners and borders are 6 px. + +## Regeneration + +The seed drawings come from: + +`tools/GenerateGuiTextures.java` + +Run this only when you want to overwrite the PNGs with the generated base set: + +```sh +javac -d /tmp/blocodex-gui-tools tools/GenerateGuiTextures.java +java -cp /tmp/blocodex-gui-tools GenerateGuiTextures +``` + +If you hand-paint the PNGs, do not run the generator afterward unless you want to reset them. diff --git a/Gameplay/blocodex/gradle.properties b/Gameplay/blocodex/gradle.properties new file mode 100644 index 0000000..f0981ec --- /dev/null +++ b/Gameplay/blocodex/gradle.properties @@ -0,0 +1,12 @@ +org.gradle.jvmargs=-Xmx2G +org.gradle.parallel=true +org.gradle.configuration-cache=false + +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT +fabric_api_version=0.148.0+26.1.2 + +mod_version=1.0.0 +maven_group=dev.blocodex +archives_base_name=blocodex diff --git a/Gameplay/blocodex/gradle/wrapper/gradle-wrapper.jar b/Gameplay/blocodex/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Gameplay/blocodex/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Gameplay/blocodex/gradle/wrapper/gradle-wrapper.properties b/Gameplay/blocodex/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Gameplay/blocodex/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Gameplay/blocodex/gradlew b/Gameplay/blocodex/gradlew new file mode 100755 index 0000000..0262dcb --- /dev/null +++ b/Gameplay/blocodex/gradlew @@ -0,0 +1,248 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/b631911858264c0b6e4d6603d677ff5218766cee/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Gameplay/blocodex/gradlew.bat b/Gameplay/blocodex/gradlew.bat new file mode 100644 index 0000000..e509b2d --- /dev/null +++ b/Gameplay/blocodex/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Gameplay/blocodex/icon.jpg b/Gameplay/blocodex/icon.jpg new file mode 100644 index 0000000..654d757 Binary files /dev/null and b/Gameplay/blocodex/icon.jpg differ diff --git a/Gameplay/blocodex/license.txt b/Gameplay/blocodex/license.txt new file mode 100644 index 0000000..8ed4ba6 --- /dev/null +++ b/Gameplay/blocodex/license.txt @@ -0,0 +1,15 @@ +Hello World is released as a layered project. + +Original source code is licensed under LGPL-3.0-or-later. + +Original documentation, writing, website content, concepts, configuration curation, +and non-code creative assets are licensed under CC BY-NC-SA 4.0, +unless otherwise stated. + +The Hello World name, logo, visual identity, and project marks are not licensed +under the above licenses. They may be used only to identify, discuss, review, +or link to the original project, and not to imply endorsement or publish a +confusing derivative project. + +Minecraft, Mojang, Microsoft, and all Minecraft assets remain the property of +their respective owners. Third-party mods remain under their own licenses. \ No newline at end of file diff --git a/Gameplay/blocodex/settings.gradle b/Gameplay/blocodex/settings.gradle new file mode 100644 index 0000000..81ba409 --- /dev/null +++ b/Gameplay/blocodex/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "blocodex-java" diff --git a/Gameplay/blocodex/src/client/java/dev/blocodex/client/BlocodexClient.java b/Gameplay/blocodex/src/client/java/dev/blocodex/client/BlocodexClient.java new file mode 100644 index 0000000..a76c3bf --- /dev/null +++ b/Gameplay/blocodex/src/client/java/dev/blocodex/client/BlocodexClient.java @@ -0,0 +1,153 @@ +package dev.blocodex.client; + +import com.mojang.blaze3d.platform.InputConstants; +import dev.blocodex.client.gui.BlocodexComputerScreen; +import dev.blocodex.client.gui.BlocodexConstructionScreen; +import dev.blocodex.client.gui.BlocodexScreen; +import dev.blocodex.client.gui.BlocodexStudioScreen; +import dev.blocodex.client.voxel.BlocodexBuildPlacementController; +import dev.blocodex.network.BlocodexOpenComputerPayload; +import dev.blocodex.network.BlocodexStudioPalettePayload; +import dev.blocodex.network.BlocodexUiSnapshotPayload; +import dev.blocodex.network.BlocodexVoxelProjectPayload; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; +import net.fabricmc.fabric.api.client.keymapping.v1.KeyMappingHelper; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.fabricmc.fabric.api.event.player.AttackBlockCallback; +import net.fabricmc.fabric.api.event.player.UseBlockCallback; +import net.fabricmc.fabric.api.event.player.UseItemCallback; +import net.minecraft.client.KeyMapping; +import net.minecraft.client.Minecraft; +import net.minecraft.client.input.KeyEvent; +import net.minecraft.world.InteractionResult; +import org.lwjgl.glfw.GLFW; + +public final class BlocodexClient implements ClientModInitializer { + private static KeyMapping openKey; + private static KeyMapping constructionKey; + + @Override + public void onInitializeClient() { + openKey = KeyMappingHelper.registerKeyMapping(new KeyMapping( + "key.blocodex.open", + InputConstants.Type.KEYSYM, + GLFW.GLFW_KEY_B, + KeyMapping.Category.INVENTORY + )); + constructionKey = KeyMappingHelper.registerKeyMapping(new KeyMapping( + "key.blocodex.construction", + InputConstants.Type.KEYSYM, + GLFW.GLFW_KEY_C, + KeyMapping.Category.INVENTORY + )); + BlocodexBuildPlacementController.initialize(); + + ClientPlayNetworking.registerGlobalReceiver(BlocodexUiSnapshotPayload.TYPE, (payload, context) -> + context.client().execute(() -> { + if (context.client().screen instanceof BlocodexScreen screen) { + screen.acceptSnapshot(payload); + } else if (context.client().screen instanceof BlocodexComputerScreen screen) { + screen.acceptSnapshot(payload); + } else if (context.client().screen instanceof BlocodexConstructionScreen screen) { + screen.acceptSnapshot(payload); + } + })); + + ClientPlayNetworking.registerGlobalReceiver(BlocodexVoxelProjectPayload.TYPE, (payload, context) -> + context.client().execute(() -> { + if (context.client().screen instanceof BlocodexComputerScreen screen) { + screen.acceptProject(payload.project()); + } else if (context.client().screen instanceof BlocodexConstructionScreen screen) { + screen.acceptProject(payload.project()); + } + })); + + ClientPlayNetworking.registerGlobalReceiver(BlocodexStudioPalettePayload.TYPE, (payload, context) -> + context.client().execute(() -> { + if (context.client().screen instanceof BlocodexStudioScreen screen) { + screen.acceptPalette(payload); + } + })); + + ClientPlayNetworking.registerGlobalReceiver(BlocodexOpenComputerPayload.TYPE, (payload, context) -> + context.client().execute(() -> context.client().setScreen(new BlocodexComputerScreen()))); + + ClientPlayConnectionEvents.DISCONNECT.register((handler, client) -> BlocodexBuildPlacementController.reset()); + + AttackBlockCallback.EVENT.register((player, world, hand, pos, direction) -> { + if (world.isClientSide()) { + return BlocodexBuildPlacementController.confirmFromAttack(pos, direction); + } + return InteractionResult.PASS; + }); + UseBlockCallback.EVENT.register((player, world, hand, hitResult) -> { + if (world.isClientSide()) { + return BlocodexBuildPlacementController.confirmFromUse(hitResult); + } + return InteractionResult.PASS; + }); + UseItemCallback.EVENT.register((player, world, hand) -> { + if (world.isClientSide()) { + return BlocodexBuildPlacementController.confirmCurrentAnchor(); + } + return InteractionResult.PASS; + }); + + ClientTickEvents.END_CLIENT_TICK.register(client -> { + BlocodexBuildPlacementController.onEndTick(client); + if (client.screen instanceof BlocodexScreen || client.screen instanceof BlocodexComputerScreen || client.screen instanceof BlocodexConstructionScreen || client.screen instanceof BlocodexStudioScreen) { + while (openKey.consumeClick()) { + // Closing is handled by the screen key event so the same key press cannot reopen it. + } + while (constructionKey.consumeClick()) { + // Closing is handled by the screen key event so the same key press cannot reopen it. + } + return; + } + + while (openKey.consumeClick()) { + toggleScreen(client); + } + while (constructionKey.consumeClick()) { + if (BlocodexBuildPlacementController.isConstructionActive()) { + BlocodexBuildPlacementController.togglePreviewVisibility(client); + } else { + toggleConstructionScreen(client); + } + } + }); + + } + + public static boolean matchesOpenKey(KeyEvent event) { + return openKey != null && openKey.matches(event); + } + + public static boolean matchesConstructionKey(KeyEvent event) { + return constructionKey != null && constructionKey.matches(event); + } + + private static void toggleScreen(Minecraft client) { + if (client.screen instanceof BlocodexScreen) { + client.setScreen(null); + return; + } + + if (client.screen == null && client.player != null) { + client.setScreen(new BlocodexScreen()); + } + } + + private static void toggleConstructionScreen(Minecraft client) { + if (client.screen instanceof BlocodexConstructionScreen) { + client.setScreen(null); + return; + } + + if (client.screen == null && client.player != null) { + client.setScreen(new BlocodexConstructionScreen()); + } + } +} diff --git a/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/BlocodexComputerScreen.java b/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/BlocodexComputerScreen.java new file mode 100644 index 0000000..32c5c1f --- /dev/null +++ b/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/BlocodexComputerScreen.java @@ -0,0 +1,1770 @@ +package dev.blocodex.client.gui; + +import dev.blocodex.client.BlocodexClient; +import dev.blocodex.client.voxel.BlocodexBuildPlacementController; +import dev.blocodex.client.voxel.ClientVoxelProjectBuilder; +import dev.blocodex.memory.VoxelProjectMemory; +import dev.blocodex.network.BlocodexLibraryActionPayload; +import dev.blocodex.network.BlocodexUiMode; +import dev.blocodex.network.BlocodexUiRequestPayload; +import dev.blocodex.network.BlocodexUiSnapshotPayload; +import dev.blocodex.network.BlocodexVoxelProjectDeletePayload; +import dev.blocodex.network.BlocodexVoxelProjectRequestPayload; +import dev.blocodex.network.BlocodexVoxelProjectSavePayload; +import com.mojang.blaze3d.platform.NativeImage; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.client.gui.components.Button; +import net.minecraft.client.gui.components.EditBox; +import net.minecraft.client.gui.screens.achievement.StatsScreen; +import net.minecraft.client.gui.screens.inventory.InventoryScreen; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.input.CharacterEvent; +import net.minecraft.client.input.KeyEvent; +import net.minecraft.client.input.MouseButtonEvent; +import net.minecraft.client.renderer.RenderPipelines; +import net.minecraft.client.renderer.texture.DynamicTexture; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.Identifier; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.block.Block; +import org.lwjgl.glfw.GLFW; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Optional; +import java.util.UUID; + +public final class BlocodexComputerScreen extends Screen { + private static final int OVERLAY_COLOR = 0x66000000; + private static final int PANEL_COLOR = 0x55000000; + private static final int PANEL_ALT_COLOR = 0x33101010; + private static final int PANEL_BORDER = 0x668C8C8C; + private static final int TEXT_COLOR = 0xFFFFFFFF; + private static final int MUTED_COLOR = 0xFFC8C8C8; + private static final int SELECTED_COLOR = 0x886A6A6A; + private static final int LINE_HEIGHT = 12; + private static final int FOOTER_HEIGHT = 60; + private static final int PANEL_GAP = 10; + private static final int WORLD_MAP_BLOCK_WIDTH = 144; + private static final Identifier WORLD_MAP_TEXTURE_ID = Identifier.fromNamespaceAndPath("blocodex", "pc_world_map"); + private static final String[] WORLD_MAP_MODE_LABELS = {"Surface", "Heatmap", "Biomes"}; + private static final String[] GRAPH_LABELS = {"Dist", "Blocs", "Craft", "Chunks", "Biomes", "Decouv"}; + private static final int[] GRAPH_COLORS = {0xFF7CC7FF, 0xFFFFA65C, 0xFFFFE06B, 0xFF8FE388, 0xFFCC8DFF, 0xFFFF8FB3}; + private static final BlocodexUiMode[] TABS = BlocodexUiMode.computerModes(); + + private BlocodexUiMode mode = BlocodexUiMode.PROFILE; + private BlocodexUiSnapshotPayload snapshot = BlocodexUiSnapshotPayload.empty(); + private int selectedIndex = 0; + private int sliderValue = 0; + private int scrollOffset = 0; + private int detailScrollOffset = 0; + private int requestCooldown = 0; + private String query = ""; + private EditBox searchBox; + private PendingProjectAction pendingProjectAction = PendingProjectAction.NONE; + private ClientVoxelProjectBuilder.BuildMode voxelBuildMode = ClientVoxelProjectBuilder.BuildMode.FACE; + private boolean draggingListScrollbar = false; + private boolean draggingDetailScrollbar = false; + private boolean worldMapLoaded = false; + private boolean worldMapRequestInFlight = false; + private int worldMapMode = 0; + private BlocodexUiSnapshotPayload cachedWorldMapSnapshot; + private DynamicTexture worldMapTexture; + private BlocodexUiSnapshotPayload worldMapTextureSource; + + public BlocodexComputerScreen() { + super(Component.literal("Blocodex PC")); + } + + public void acceptSnapshot(BlocodexUiSnapshotPayload payload) { + BlocodexUiMode payloadMode = BlocodexUiMode.byId(payload.mode()); + if (payloadMode == BlocodexUiMode.WORLD_OVERVIEW) { + boolean detailedMap = payload.page() == 1 && payload.gridColors().size() >= WORLD_MAP_BLOCK_WIDTH * WORLD_MAP_BLOCK_WIDTH; + if (detailedMap && payload.sliderValue() == worldMapMode) { + cachedWorldMapSnapshot = payload; + worldMapTextureSource = null; + worldMapLoaded = true; + worldMapRequestInFlight = false; + } else if (payload.sliderValue() == worldMapMode) { + worldMapRequestInFlight = false; + } + if (payloadMode != mode) { + return; + } + if (payload.sliderValue() != worldMapMode) { + return; + } + } + if (payloadMode != mode) { + return; + } + snapshot = payload; + selectedIndex = payload.selectedIndex(); + if (payloadMode == BlocodexUiMode.WORLD_OVERVIEW) { + worldMapMode = payload.sliderValue(); + } else { + sliderValue = payload.sliderValue(); + } + scrollOffset = Math.min(scrollOffset, maxScroll()); + detailScrollOffset = Math.min(detailScrollOffset, maxDetailScroll()); + } + + public void acceptProject(VoxelProjectMemory project) { + if (pendingProjectAction == PendingProjectAction.BUILD) { + minecraft.setScreen(null); + if (minecraft.player != null && minecraft.player.isCreative()) { + BlocodexBuildPlacementController.startCreativeDirect(project); + } else { + BlocodexBuildPlacementController.startBlueprint(project); + } + } else if (pendingProjectAction == PendingProjectAction.BLUEPRINT) { + minecraft.setScreen(null); + BlocodexBuildPlacementController.startBlueprint(project); + } else if (pendingProjectAction == PendingProjectAction.CREATIVE_DIRECT) { + minecraft.setScreen(null); + BlocodexBuildPlacementController.startCreativeDirect(project); + } else if (pendingProjectAction == PendingProjectAction.EDIT) { + minecraft.setScreen(new BlocodexStudioScreen(project, this)); + } + pendingProjectAction = PendingProjectAction.NONE; + } + + @Override + protected void init() { + searchBox = null; + addTabButtons(); + addContextButtons(); + addDoneButton(); + requestSnapshot(); + ensureWorldMapRequested(); + } + + @Override + public void tick() { + if (requestCooldown > 0) { + requestCooldown--; + } + if (requestCooldown == 0) { + requestCooldown = mode == BlocodexUiMode.WORLD_OVERVIEW ? 120 : 40; + if (mode == BlocodexUiMode.WORLD_OVERVIEW) { + ensureWorldMapRequested(); + return; + } + requestSnapshot(); + } + } + + @Override + public boolean isPauseScreen() { + return false; + } + + @Override + public void removed() { + releaseWorldMapTexture(); + super.removed(); + } + + @Override + public boolean keyPressed(KeyEvent event) { + if (event.key() == GLFW.GLFW_KEY_UP) { + if (mode == BlocodexUiMode.LIBRARY || mode == BlocodexUiMode.CREATIONS) { + selectLibraryEntry(-1); + } else { + scrollOffset = Math.max(0, scrollOffset - 1); + } + return true; + } + if (event.key() == GLFW.GLFW_KEY_DOWN) { + if (mode == BlocodexUiMode.LIBRARY || mode == BlocodexUiMode.CREATIONS) { + selectLibraryEntry(1); + } else { + scrollOffset = Math.min(maxScroll(), scrollOffset + 1); + } + return true; + } + if (event.key() == GLFW.GLFW_KEY_PAGE_UP) { + if (mode == BlocodexUiMode.LIBRARY || mode == BlocodexUiMode.CREATIONS) { + selectLibraryEntry(-visibleRows()); + } else { + scrollOffset = Math.max(0, scrollOffset - visibleRows()); + } + return true; + } + if (event.key() == GLFW.GLFW_KEY_PAGE_DOWN) { + if (mode == BlocodexUiMode.LIBRARY || mode == BlocodexUiMode.CREATIONS) { + selectLibraryEntry(visibleRows()); + } else { + scrollOffset = Math.min(maxScroll(), scrollOffset + visibleRows()); + } + return true; + } + if ((mode == BlocodexUiMode.LIBRARY || mode == BlocodexUiMode.CREATIONS) && event.key() == GLFW.GLFW_KEY_HOME) { + selectLibraryEntry(-selectedIndex); + return true; + } + if ((mode == BlocodexUiMode.LIBRARY || mode == BlocodexUiMode.CREATIONS) && event.key() == GLFW.GLFW_KEY_END) { + selectLibraryEntry(entryLines(snapshot.leftLines()).size() - selectedIndex - 1); + return true; + } + if (mode == BlocodexUiMode.LIBRARY && searchBox != null && !searchBox.isFocused() && event.key() == GLFW.GLFW_KEY_BACKSPACE) { + focusSearchBox(); + return searchBox.keyPressed(event); + } + if (event.key() == GLFW.GLFW_KEY_TAB) { + selectNextTab(); + return true; + } + return super.keyPressed(event); + } + + @Override + public boolean charTyped(CharacterEvent event) { + if (mode == BlocodexUiMode.LIBRARY && searchBox != null && !searchBox.isFocused() && event.isAllowedChatCharacter()) { + focusSearchBox(); + return searchBox.charTyped(event); + } + return super.charTyped(event); + } + + @Override + public boolean mouseClicked(MouseButtonEvent event, boolean doubleClick) { + if (super.mouseClicked(event, doubleClick)) { + return true; + } + + if (insideListScrollbar(event.x(), event.y())) { + draggingListScrollbar = true; + setListScrollFromMouse(event.y()); + return true; + } + if (insideDetailScrollbar(event.x(), event.y())) { + draggingDetailScrollbar = true; + setDetailScrollFromMouse(event.y()); + return true; + } + + List lines = mode == BlocodexUiMode.LIBRARY || mode == BlocodexUiMode.CREATIONS ? entryLines(snapshot.leftLines()) : currentScrollLines(); + int lineIndex = lineIndexAt(event.x(), event.y()); + if (lineIndex >= 0 && lineIndex < lines.size()) { + Integer entryIndex = entryIndex(lines.get(lineIndex)); + if (entryIndex != null) { + selectedIndex = entryIndex; + detailScrollOffset = 0; + requestSnapshot(); + return true; + } + } + return false; + } + + @Override + public boolean mouseDragged(MouseButtonEvent event, double dragX, double dragY) { + if (draggingListScrollbar) { + setListScrollFromMouse(event.y()); + return true; + } + if (draggingDetailScrollbar) { + setDetailScrollFromMouse(event.y()); + return true; + } + return super.mouseDragged(event, dragX, dragY); + } + + @Override + public boolean mouseReleased(MouseButtonEvent event) { + if (draggingListScrollbar || draggingDetailScrollbar) { + draggingListScrollbar = false; + draggingDetailScrollbar = false; + requestSnapshot(); + return true; + } + return super.mouseReleased(event); + } + + @Override + public boolean mouseScrolled(double mouseX, double mouseY, double scrollX, double scrollY) { + if ((mode == BlocodexUiMode.LIBRARY || mode == BlocodexUiMode.CREATIONS) && insideDetail(mouseX, mouseY)) { + int direction = scrollY < 0 ? 1 : -1; + detailScrollOffset = Math.max(0, Math.min(maxDetailScroll(), detailScrollOffset + direction * 3)); + return true; + } + if (insideList(mouseX, mouseY)) { + List lines = scrollableListLines(); + int direction = scrollY < 0 ? 1 : -1; + scrollOffset = Math.max(0, Math.min(maxScroll(lines), scrollOffset + direction * 3)); + return true; + } + return super.mouseScrolled(mouseX, mouseY, scrollX, scrollY); + } + + @Override + public void extractRenderState(GuiGraphicsExtractor graphics, int mouseX, int mouseY, float partialTick) { + drawVanillaBackground(graphics, mouseX, mouseY, partialTick); + drawContent(graphics, mouseX, mouseY); + super.extractRenderState(graphics, mouseX, mouseY, partialTick); + } + + private void addTabButtons() { + int tabWidth = Math.min(118, Math.max(74, (width - 56) / TABS.length)); + int total = tabWidth * TABS.length + (TABS.length - 1) * 6; + int x = (width - total) / 2; + int y = height - 52; + for (BlocodexUiMode tab : TABS) { + Button button = Button.builder(Component.literal(tab.label()), ignored -> setMode(tab)) + .bounds(x, y, tabWidth, 20) + .build(); + button.active = tab != mode; + addRenderableWidget(button); + x += tabWidth + 6; + } + } + + private void addContextButtons() { + if (mode == BlocodexUiMode.PROFILE) { + Rect main = mainPanel(); + addRenderableWidget(Button.builder(Component.literal("Statistiques"), ignored -> openVanillaStats()) + .bounds(main.right() - 112, main.y() + 5, 104, 18) + .build()); + return; + } + if (mode == BlocodexUiMode.STATS) { + addRenderableWidget(Button.builder(Component.literal("Retour joueur"), ignored -> setMode(BlocodexUiMode.PROFILE)) + .bounds(listRight() - 112, 35, 112, 18) + .build()); + return; + } + if (mode == BlocodexUiMode.CREATIONS) { + Rect main = mainPanel(); + int y = main.y() + 5; + int buttonWidth = 76; + addRenderableWidget(Button.builder(Component.literal("Nouveau"), ignored -> openNewStudioProject()) + .bounds(main.right() - buttonWidth * 4 - 24, y, buttonWidth, 18) + .build()); + addRenderableWidget(Button.builder(Component.literal("Construire"), ignored -> requestProject(PendingProjectAction.BUILD)) + .bounds(main.right() - buttonWidth * 3 - 18, y, buttonWidth, 18) + .build()); + addRenderableWidget(Button.builder(Component.literal("Modifier"), ignored -> requestProject(PendingProjectAction.EDIT)) + .bounds(main.right() - buttonWidth * 2 - 12, y, buttonWidth, 18) + .build()); + addRenderableWidget(Button.builder(Component.literal("Supprimer"), ignored -> deleteSelectedProject()) + .bounds(main.right() - buttonWidth - 6, y, buttonWidth, 18) + .build()); + return; + } + if (mode == BlocodexUiMode.WORLD_OVERVIEW) { + Rect map = worldMap(); + addRenderableWidget(Button.builder(Component.literal("Vue: " + worldMapModeLabel()), ignored -> cycleWorldMapMode()) + .bounds(map.x() + 8, map.y() + 5, Math.max(84, map.w() - 16), 18) + .build()); + return; + } + if (mode != BlocodexUiMode.LIBRARY) { + return; + } + + Rect main = mainPanel(); + int searchX = main.x() + 8; + int searchY = main.y() + 6; + int sortWidth = Math.min(90, Math.max(64, main.w() / 3)); + int searchWidth = Math.max(60, main.w() - 22 - sortWidth); + searchBox = new EditBox(font, searchX, searchY, searchWidth, 18, Component.literal("Recherche")); + searchBox.setMaxLength(48); + searchBox.setHint(Component.literal("Recherche")); + searchBox.setValue(query); + searchBox.setResponder(value -> { + query = value; + selectedIndex = 0; + scrollOffset = 0; + detailScrollOffset = 0; + requestSnapshot(); + }); + addRenderableWidget(searchBox); + focusSearchBox(); + + String label = sliderValue == 1 ? "Tri: Couleur" : "Tri: Nom"; + Button sortButton = Button.builder(Component.literal(label), ignored -> { + sliderValue = sliderValue == 1 ? 0 : 1; + scrollOffset = 0; + detailScrollOffset = 0; + requestSnapshot(); + rebuildWidgets(); + }).bounds(searchX + searchWidth + 6, searchY, sortWidth, 18).build(); + addRenderableWidget(sortButton); + + int buttonY = searchY + 24; + int modeWidth = Math.max(74, Math.min(104, main.w() / 3)); + int buildWidth = Math.max(120, main.w() - 22 - modeWidth); + addRenderableWidget(Button.builder(Component.literal("Je veux construire cet objet"), ignored -> voxelizeSelectedEntry()) + .bounds(searchX, buttonY, buildWidth, 18) + .build()); + addRenderableWidget(Button.builder(Component.literal("Mode " + voxelBuildMode.label()), ignored -> cycleVoxelBuildMode()) + .bounds(searchX + buildWidth + 6, buttonY, modeWidth, 18) + .build()); + } + + private void addDoneButton() { + addRenderableWidget(Button.builder(Component.literal("Termine"), ignored -> minecraft.setScreen(null)) + .bounds(width / 2 - 100, height - 28, 200, 20) + .build()); + } + + private void setMode(BlocodexUiMode nextMode) { + mode = nextMode; + selectedIndex = 0; + scrollOffset = 0; + detailScrollOffset = 0; + requestCooldown = 0; + pendingProjectAction = PendingProjectAction.NONE; + rebuildWidgets(); + } + + private void openVanillaStats() { + if (minecraft != null && minecraft.player != null) { + minecraft.setScreen(new StatsScreen(null, minecraft.player.getStats())); + } + } + + private void selectNextTab() { + for (int i = 0; i < TABS.length; i++) { + if (TABS[i] == mode) { + setMode(TABS[(i + 1) % TABS.length]); + return; + } + } + setMode(TABS[0]); + } + + private void selectLibraryEntry(int delta) { + List entries = entryLines(snapshot.leftLines()); + if (entries.isEmpty()) { + selectedIndex = 0; + scrollOffset = 0; + return; + } + + selectedIndex = Math.max(0, Math.min(entries.size() - 1, selectedIndex + delta)); + detailScrollOffset = 0; + ensureSelectedEntryVisible(entries.size()); + requestSnapshot(); + } + + private void ensureSelectedEntryVisible(int entryCount) { + if (entryCount <= 0) { + scrollOffset = 0; + return; + } + + int rows = visibleRows(activeListArea()); + if (selectedIndex < scrollOffset) { + scrollOffset = selectedIndex; + } else if (selectedIndex >= scrollOffset + rows) { + scrollOffset = selectedIndex - rows + 1; + } + scrollOffset = Math.max(0, Math.min(maxScroll(entryLines(snapshot.leftLines())), scrollOffset)); + } + + private void focusSearchBox() { + if (searchBox != null) { + setFocused(searchBox); + searchBox.setFocused(true); + } + } + + private void requestSnapshot() { + if (mode == BlocodexUiMode.WORLD_OVERVIEW) { + ensureWorldMapRequested(); + return; + } + try { + if (ClientPlayNetworking.canSend(BlocodexUiRequestPayload.TYPE)) { + ClientPlayNetworking.send(new BlocodexUiRequestPayload(mode.id(), sliderValue, 0, selectedIndex, mode == BlocodexUiMode.LIBRARY ? query : "")); + } + } catch (IllegalStateException ignored) { + // The server networking channel can briefly be unavailable while the screen opens. + } + } + + private void ensureWorldMapRequested() { + if (cachedWorldMapSnapshot != null && cachedWorldMapSnapshot.sliderValue() == worldMapMode) { + worldMapLoaded = true; + if (mode == BlocodexUiMode.WORLD_OVERVIEW) { + snapshot = cachedWorldMapSnapshot; + selectedIndex = snapshot.selectedIndex(); + } + return; + } + if (!worldMapRequestInFlight) { + requestWorldMap(false); + } + } + + private void cycleWorldMapMode() { + worldMapMode = (worldMapMode + 1) % WORLD_MAP_MODE_LABELS.length; + worldMapLoaded = false; + worldMapRequestInFlight = false; + cachedWorldMapSnapshot = null; + worldMapTextureSource = null; + requestWorldMap(false); + rebuildWidgets(); + } + + private String worldMapModeLabel() { + return WORLD_MAP_MODE_LABELS[Math.max(0, Math.min(WORLD_MAP_MODE_LABELS.length - 1, worldMapMode))]; + } + + private void requestWorldMap(boolean notify) { + if (worldMapRequestInFlight) { + return; + } + worldMapRequestInFlight = true; + requestCooldown = 120; + if (notify) { + showClientMessage("Chargement de la carte locale..."); + } + try { + if (ClientPlayNetworking.canSend(BlocodexUiRequestPayload.TYPE)) { + ClientPlayNetworking.send(new BlocodexUiRequestPayload(BlocodexUiMode.WORLD_OVERVIEW.id(), worldMapMode, 1, selectedIndex, "")); + } + } catch (IllegalStateException ignored) { + worldMapRequestInFlight = false; + } + } + + private void sendLibraryAction(String action) { + String id = snapshot.selectedBlockId(); + if (id == null || id.isBlank()) { + showClientMessage("Aucune entree selectionnee."); + return; + } + if (ClientPlayNetworking.canSend(BlocodexLibraryActionPayload.TYPE)) { + ClientPlayNetworking.send(new BlocodexLibraryActionPayload(action, id)); + requestCooldown = 0; + requestSnapshot(); + } + } + + private void cycleVoxelBuildMode() { + voxelBuildMode = voxelBuildMode.next(); + rebuildWidgets(); + } + + private void voxelizeSelectedEntry() { + String id = snapshot.selectedBlockId(); + if (id == null || id.isBlank()) { + showClientMessage("Aucune entree selectionnee."); + return; + } + try { + VoxelProjectMemory project = ClientVoxelProjectBuilder.build(id, selectedLibraryName(), voxelBuildMode, snapshot.paletteBlockIds()); + if (ClientPlayNetworking.canSend(BlocodexVoxelProjectSavePayload.TYPE)) { + ClientPlayNetworking.send(new BlocodexVoxelProjectSavePayload(project)); + } + if (ClientPlayNetworking.canSend(BlocodexLibraryActionPayload.TYPE)) { + ClientPlayNetworking.send(new BlocodexLibraryActionPayload(BlocodexLibraryActionPayload.ACTION_LOAD, id)); + } + showClientMessage("Voxelisation " + voxelBuildMode.label() + ": " + project.cells().size() + " blocs."); + requestCooldown = 0; + requestSnapshot(); + } catch (RuntimeException exception) { + showClientMessage(exception.getMessage() == null ? "Voxelisation impossible." : exception.getMessage()); + } + } + + private void requestProject(PendingProjectAction action) { + String id = snapshot.selectedBlockId(); + if (id == null || id.isBlank()) { + showClientMessage("Aucun projet selectionne."); + return; + } + pendingProjectAction = action; + if (ClientPlayNetworking.canSend(BlocodexVoxelProjectRequestPayload.TYPE)) { + ClientPlayNetworking.send(new BlocodexVoxelProjectRequestPayload(id)); + } + } + + private void deleteSelectedProject() { + String id = snapshot.selectedBlockId(); + if (id == null || id.isBlank()) { + showClientMessage("Aucun projet selectionne."); + return; + } + if (ClientPlayNetworking.canSend(BlocodexVoxelProjectDeletePayload.TYPE)) { + ClientPlayNetworking.send(new BlocodexVoxelProjectDeletePayload(id)); + selectedIndex = Math.max(0, selectedIndex - 1); + requestCooldown = 0; + requestSnapshot(); + } + } + + private String selectedLibraryName() { + String name = detailValue(detailLines(snapshot.leftLines()), "Nom"); + return name.isBlank() ? snapshot.selectedBlockId() : name; + } + + private void openNewStudioProject() { + String id = "studio/" + UUID.randomUUID(); + VoxelProjectMemory project = new VoxelProjectMemory( + id, + "Nouveau projet", + 16, + 16, + 16, + List.of(), + new LinkedHashMap<>(), + 0L, + 0L + ); + minecraft.setScreen(new BlocodexStudioScreen(project, this)); + } + + private void showClientMessage(String message) { + if (minecraft != null && minecraft.player != null) { + minecraft.player.sendOverlayMessage(Component.literal(message)); + } + } + + private void drawVanillaBackground(GuiGraphicsExtractor graphics, int mouseX, int mouseY, float partialTick) { + // The vanilla screen renderer already applies the in-world blur once before extractRenderState(). + // Calling Screen#extractBackground here would request a second blur and crash. + graphics.fill(0, 0, width, height, OVERLAY_COLOR); + graphics.centeredText(font, titleForMode(), width / 2, 13, TEXT_COLOR); + } + + private Component titleForMode() { + if (mode == BlocodexUiMode.STATS) { + return Component.literal("Statistiques"); + } + return Component.literal(mode.label()); + } + + private void drawContent(GuiGraphicsExtractor graphics, int mouseX, int mouseY) { + if (mode == BlocodexUiMode.PROFILE) { + drawProfile(graphics, mouseX, mouseY); + } else if (mode == BlocodexUiMode.LIBRARY) { + drawLibrary(graphics); + } else if (mode == BlocodexUiMode.WORLD_OVERVIEW) { + drawWorld(graphics); + } else if (mode == BlocodexUiMode.CREATIONS) { + drawCreations(graphics); + } else { + drawList(graphics, listLeft(), listRight(), listTop(), listBottom(), contentLines(snapshot.leftLines())); + } + } + + private void drawProfile(GuiGraphicsExtractor graphics, int mouseX, int mouseY) { + Rect sidebar = profileSidebar(); + Rect detail = profileDetail(); + drawPanel(graphics, sidebar); + drawPlayerPanel(graphics, sidebar, mouseX, mouseY); + drawPanel(graphics, detail); + Rect list = profileListArea(); + drawProfileContent(graphics, list, contentLines(snapshot.leftLines())); + } + + private void drawPlayerPanel(GuiGraphicsExtractor graphics, Rect panel, int mouseX, int mouseY) { + if (minecraft != null && minecraft.player != null) { + int centerX = panel.x() + panel.w() / 2; + graphics.centeredText(font, trim(minecraft.player.getName().getString(), panel.w() - 12), centerX, panel.y() + 10, TEXT_COLOR); + Rect renderArea = playerRenderArea(panel); + int modelSize = playerModelSize(renderArea); + InventoryScreen.extractEntityInInventoryFollowsMouse( + graphics, + renderArea.x(), + renderArea.y(), + renderArea.right(), + renderArea.bottom(), + modelSize, + 0.0625F, + mouseX, + mouseY, + minecraft.player + ); + } + } + + private Rect playerRenderArea(Rect panel) { + int sideMargin = Math.max(4, Math.min(12, panel.w() / 12)); + int top = panel.y() + 24; + int bottom = panel.bottom() - Math.max(6, Math.min(14, panel.h() / 12)); + int left = panel.x() + sideMargin; + int right = panel.right() - sideMargin; + return new Rect(left, top, Math.max(20, right - left), Math.max(28, bottom - top)); + } + + private int playerModelSize(Rect renderArea) { + int widthFit = Math.round(renderArea.w() * 0.58F); + int heightFit = Math.round(renderArea.h() * 0.43F); + int upperBound = Math.max(24, Math.min(widthFit, heightFit)); + int screenBound = Math.max(42, Math.min(132, height / 3)); + int lowerBound = Math.max(24, Math.min(48, Math.min(renderArea.w(), renderArea.h()) / 3)); + return Math.max(lowerBound, Math.min(upperBound, screenBound)); + } + + private void drawProfileContent(GuiGraphicsExtractor graphics, Rect area, List lines) { + int progressionIndex = lines.indexOf("SECTION:Progression"); + if (progressionIndex < 0) { + drawListRows(graphics, area.x(), area.right(), area.y(), area.bottom(), lines); + return; + } + + int left = area.x() + 12; + int right = area.right() - 12; + int graphHeight = Math.max(54, Math.min(96, area.h() / 2)); + int sectionY = Math.max(area.y() + 34, area.bottom() - graphHeight - LINE_HEIGHT - 8); + drawStaticLines(graphics, lines.subList(0, progressionIndex), left, right, area.y() + 6, sectionY - 4); + drawLine(graphics, "SECTION:Progression", left, right, sectionY); + drawProgressionGraph(graphics, new Rect(left, sectionY + LINE_HEIGHT + 4, right - left, Math.max(42, area.bottom() - sectionY - LINE_HEIGHT - 12))); + } + + private void drawProgressionGraph(GuiGraphicsExtractor graphics, Rect area) { + List points = graphPoints(); + graphics.fill(area.x(), area.y(), area.right(), area.bottom(), 0x3329364A); + graphics.fill(area.x(), area.bottom() - 1, area.right(), area.bottom(), 0x664D5F7A); + graphics.fill(area.x(), area.y(), area.x() + 1, area.bottom(), 0x664D5F7A); + + int legendX = area.x() + 4; + int legendY = area.y() + 4; + for (int i = 0; i < GRAPH_LABELS.length; i++) { + int labelWidth = font.width(GRAPH_LABELS[i]) + 12; + if (legendX + labelWidth > area.right() - 2) { + break; + } + graphics.fill(legendX, legendY + 3, legendX + 6, legendY + 8, GRAPH_COLORS[i]); + graphics.text(font, GRAPH_LABELS[i], legendX + 8, legendY, MUTED_COLOR, false); + legendX += labelWidth + 6; + } + + int plotLeft = area.x() + 5; + int plotRight = area.right() - 5; + int plotTop = area.y() + 18; + int plotBottom = area.bottom() - 5; + if (plotBottom - plotTop < 12) { + return; + } + graphics.fill(plotLeft, plotBottom, plotRight, plotBottom + 1, 0x77545F72); + graphics.fill(plotLeft, plotTop, plotLeft + 1, plotBottom, 0x77545F72); + + if (points.size() < 2) { + graphics.centeredText(font, "Progression en cours...", area.x() + area.w() / 2, plotTop + Math.max(4, (plotBottom - plotTop) / 2 - 4), MUTED_COLOR); + return; + } + + for (int series = 0; series < GRAPH_LABELS.length; series++) { + drawGraphSeries(graphics, points, series, GRAPH_COLORS[series], plotLeft, plotRight, plotTop, plotBottom); + } + } + + private void drawGraphSeries(GuiGraphicsExtractor graphics, List points, int series, int color, int left, int right, int top, int bottom) { + long max = 1L; + for (GraphPoint point : points) { + max = Math.max(max, graphValue(point, series)); + } + + int previousX = left; + int previousY = bottom; + for (int i = 0; i < points.size(); i++) { + long value = graphValue(points.get(i), series); + int x = left + (right - left) * i / Math.max(1, points.size() - 1); + int y = bottom - (int) Math.round((bottom - top) * (value / (double) max)); + if (i > 0) { + drawGraphLineSegment(graphics, previousX, previousY, x, y, color); + } + previousX = x; + previousY = y; + } + } + + private void drawGraphLineSegment(GuiGraphicsExtractor graphics, int x1, int y1, int x2, int y2, int color) { + int steps = Math.max(Math.abs(x2 - x1), Math.abs(y2 - y1)); + if (steps == 0) { + graphics.fill(x1, y1, x1 + 1, y1 + 1, color); + return; + } + for (int step = 0; step <= steps; step++) { + int x = x1 + (x2 - x1) * step / steps; + int y = y1 + (y2 - y1) * step / steps; + graphics.fill(x, y, x + 1, y + 1, color); + } + } + + private long graphValue(GraphPoint point, int series) { + return switch (series) { + case 0 -> point.distanceCm(); + case 1 -> point.brokenBlocks(); + case 2 -> point.crafts(); + case 3 -> point.visitedChunks(); + case 4 -> point.biomes(); + case 5 -> point.discoveredBlocks(); + default -> 0L; + }; + } + + private void drawWorld(GuiGraphicsExtractor graphics) { + Rect map = worldMap(); + Rect detail = worldDetail(); + drawPanel(graphics, map); + drawChunkMap(graphics, map); + List lines = BlocodexUiMode.byId(snapshot.mode()) == BlocodexUiMode.WORLD_OVERVIEW + ? contentLines(snapshot.leftLines()) + : List.of("SECTION:Carte locale", "Carte\tChargement..."); + drawList(graphics, detail.x(), detail.right(), detail.y(), detail.bottom(), lines); + } + + private void drawChunkMap(GuiGraphicsExtractor graphics, Rect area) { + if (snapshot.gridColors().size() >= WORLD_MAP_BLOCK_WIDTH * WORLD_MAP_BLOCK_WIDTH) { + drawDetailedWorldMap(graphics, area); + return; + } + if (worldMapRequestInFlight) { + graphics.centeredText(font, "Chargement...", area.x() + area.w() / 2, area.y() + area.h() / 2 - 4, MUTED_COLOR); + return; + } + + int contentTop = area.y() + 30; + int available = Math.min(area.w() - 20, area.bottom() - contentTop - 10); + int cell = Math.max(5, available / 9); + int grid = cell * 9; + int startX = area.x() + (area.w() - grid) / 2; + int startY = contentTop + Math.max(0, (area.bottom() - contentTop - 10 - grid) / 2); + for (int row = 0; row < 9; row++) { + for (int col = 0; col < 9; col++) { + int index = row * 9 + col; + int color = index < snapshot.gridColors().size() ? snapshot.gridColors().get(index) : 0xFF101010; + int x = startX + col * cell; + int y = startY + row * cell; + graphics.fill(x, y, x + cell - 1, y + cell - 1, color); + if (index == 40) { + graphics.fill(x, y, x + cell - 1, y + 1, 0xFFFFFFFF); + graphics.fill(x, y, x + 1, y + cell - 1, 0xFFFFFFFF); + graphics.fill(x, y + cell - 2, x + cell - 1, y + cell - 1, 0xFFFFFFFF); + graphics.fill(x + cell - 2, y, x + cell - 1, y + cell - 1, 0xFFFFFFFF); + } + } + } + } + + private void drawDetailedWorldMap(GuiGraphicsExtractor graphics, Rect area) { + int contentTop = area.y() + 30; + int available = Math.min(area.w() - 20, area.bottom() - contentTop - 10); + int pixel = Math.max(1, available / WORLD_MAP_BLOCK_WIDTH); + int grid = WORLD_MAP_BLOCK_WIDTH * pixel; + int startX = area.x() + (area.w() - grid) / 2; + int startY = contentTop + Math.max(0, (area.bottom() - contentTop - 10 - grid) / 2); + if (ensureWorldMapTexture()) { + graphics.blit(RenderPipelines.GUI_TEXTURED, WORLD_MAP_TEXTURE_ID, startX, startY, 0.0F, 0.0F, grid, grid, WORLD_MAP_BLOCK_WIDTH, WORLD_MAP_BLOCK_WIDTH, WORLD_MAP_BLOCK_WIDTH, WORLD_MAP_BLOCK_WIDTH); + } else { + for (int z = 0; z < WORLD_MAP_BLOCK_WIDTH; z++) { + int rowStart = z * WORLD_MAP_BLOCK_WIDTH; + for (int x = 0; x < WORLD_MAP_BLOCK_WIDTH; x++) { + int color = snapshot.gridColors().get(rowStart + x); + graphics.fill(startX + x * pixel, startY + z * pixel, startX + (x + 1) * pixel, startY + (z + 1) * pixel, color); + } + } + } + + for (int line = 0; line <= 9; line++) { + int offset = line * 16 * pixel; + graphics.fill(startX + offset, startY, startX + offset + 1, startY + grid, 0x77101010); + graphics.fill(startX, startY + offset, startX + grid, startY + offset + 1, 0x77101010); + } + int center = WORLD_MAP_BLOCK_WIDTH / 2 * pixel; + graphics.fill(startX + center - 2, startY + center, startX + center + 3, startY + center + 1, 0xFFFFFFFF); + graphics.fill(startX + center, startY + center - 2, startX + center + 1, startY + center + 3, 0xFFFFFFFF); + } + + private boolean ensureWorldMapTexture() { + if (snapshot.gridColors().size() < WORLD_MAP_BLOCK_WIDTH * WORLD_MAP_BLOCK_WIDTH || minecraft == null) { + return false; + } + if (worldMapTexture != null && worldMapTextureSource == snapshot) { + return true; + } + + releaseWorldMapTexture(); + NativeImage image = new NativeImage(WORLD_MAP_BLOCK_WIDTH, WORLD_MAP_BLOCK_WIDTH, false); + for (int z = 0; z < WORLD_MAP_BLOCK_WIDTH; z++) { + int rowStart = z * WORLD_MAP_BLOCK_WIDTH; + for (int x = 0; x < WORLD_MAP_BLOCK_WIDTH; x++) { + image.setPixel(x, z, snapshot.gridColors().get(rowStart + x)); + } + } + worldMapTexture = new DynamicTexture(() -> "Blocodex PC world map", image); + minecraft.getTextureManager().register(WORLD_MAP_TEXTURE_ID, worldMapTexture); + worldMapTextureSource = snapshot; + return true; + } + + private void releaseWorldMapTexture() { + if (worldMapTexture != null) { + if (minecraft != null) { + minecraft.getTextureManager().release(WORLD_MAP_TEXTURE_ID); + } else { + worldMapTexture.close(); + } + worldMapTexture = null; + worldMapTextureSource = null; + } + } + + private void drawCreations(GuiGraphicsExtractor graphics) { + Rect detail = creationDetail(); + Rect list = creationList(); + drawPanel(graphics, detail); + drawPanel(graphics, list); + drawCreationDetail(graphics, detail, detailLines(snapshot.leftLines())); + drawEntryList(graphics, creationEntriesArea(), entryLines(snapshot.leftLines())); + } + + private void drawCreationDetail(GuiGraphicsExtractor graphics, Rect area, List lines) { + int left = area.x() + 10; + int right = area.right() - 10; + int y = area.y() + 8; + String name = detailValue(lines, "Nom"); + graphics.text(font, trim(name.isBlank() ? "Projet" : name, right - left), left, y, TEXT_COLOR, false); + y += LINE_HEIGHT + 4; + PreviewSize previewSize = selectedProjectPreviewSize(lines); + if (previewSize.width() > 0 && previewSize.height() > 0 && snapshot.gridColors().size() >= previewSize.width() * previewSize.height()) { + int preview = Math.max(44, Math.min(86, Math.min(right - left, area.h() / 3))); + drawVoxelPreview(graphics, left, y, right - left, preview, previewSize); + y += preview + 8; + } + drawScrollableDetailLines(graphics, removeDetailName(lines), left, right, y, area.bottom() - 8); + } + + private void drawVoxelPreview(GuiGraphicsExtractor graphics, int left, int top, int maxWidth, int maxHeight, PreviewSize previewSize) { + int pixel = Math.max(1, Math.min(maxWidth / previewSize.width(), maxHeight / previewSize.height())); + int widthPx = previewSize.width() * pixel; + int heightPx = previewSize.height() * pixel; + int x0 = left + Math.max(0, (maxWidth - widthPx) / 2); + int y0 = top + Math.max(0, (maxHeight - heightPx) / 2); + graphics.fill(x0 - 2, y0 - 2, x0 + widthPx + 2, y0 + heightPx + 2, 0x553A4868); + for (int row = 0; row < previewSize.height(); row++) { + int rowStart = row * previewSize.width(); + for (int col = 0; col < previewSize.width(); col++) { + int color = snapshot.gridColors().get(rowStart + col); + if ((color >>> 24) == 0) { + continue; + } + int x = x0 + col * pixel; + int y = y0 + row * pixel; + graphics.fill(x, y, x + pixel, y + pixel, color); + } + } + } + + private void drawLibrary(GuiGraphicsExtractor graphics) { + Rect list = libraryList(); + Rect detail = libraryDetail(); + drawPanel(graphics, list); + drawPanel(graphics, detail); + drawEntryList(graphics, libraryEntriesArea(), entryLines(snapshot.leftLines())); + drawLibraryDetail(graphics, detail, detailLines(snapshot.leftLines())); + } + + private void drawEntryList(GuiGraphicsExtractor graphics, Rect area, List entries) { + scrollOffset = Math.max(0, Math.min(maxScroll(entries), scrollOffset)); + graphics.enableScissor(area.x(), area.y(), area.right(), area.bottom()); + int rows = visibleRows(area); + for (int row = 0; row < rows; row++) { + int index = scrollOffset + row; + if (index >= entries.size()) { + break; + } + int y = area.y() + 6 + row * LINE_HEIGHT; + drawEntryLine(graphics, entries.get(index), area.x() + 8, area.right() - 8, y); + } + graphics.disableScissor(); + drawScrollbar(graphics, entries.size(), area.x(), area.right(), area.y(), area.bottom(), rows, scrollOffset); + } + + private void drawLibraryDetail(GuiGraphicsExtractor graphics, Rect area, List lines) { + String id = snapshot.selectedBlockId(); + String name = detailValue(lines, "Nom"); + String type = detailValue(lines, "Type"); + boolean locked = "Verrouille".equals(detailValue(lines, "Etat")); + int left = area.x() + 10; + int right = area.right() - 10; + int y = area.y() + 8; + List nameLines = wrapText(name.isBlank() ? "Selection" : name, right - left); + for (int i = 0; i < Math.min(2, nameLines.size()); i++) { + graphics.text(font, nameLines.get(i), left, y, TEXT_COLOR, false); + y += LINE_HEIGHT; + } + + int iconSize = Math.max(28, Math.min(42, Math.min(area.w() / 3, area.h() / 3))); + drawSelectedItem(graphics, locked ? "" : id, "Mob".equals(type), left, y + 2, iconSize); + int bodyTop = y + iconSize + 12; + drawScrollableDetailLines(graphics, removeDetailName(lines), left, right, bodyTop, area.bottom() - 8); + } + + private void drawList(GuiGraphicsExtractor graphics, int left, int right, int top, int bottom, List lines) { + drawPanel(graphics, new Rect(left, top, right - left, bottom - top)); + drawListRows(graphics, left, right, top, bottom, lines); + } + + private void drawListRows(GuiGraphicsExtractor graphics, int left, int right, int top, int bottom, List lines) { + scrollOffset = Math.max(0, Math.min(maxScroll(lines), scrollOffset)); + + graphics.enableScissor(left, top, right, bottom); + int rows = visibleRows(top, bottom); + for (int row = 0; row < rows; row++) { + int index = scrollOffset + row; + if (index >= lines.size()) { + break; + } + int y = top + 6 + row * LINE_HEIGHT; + drawLine(graphics, lines.get(index), left + 12, right - 12, y); + } + graphics.disableScissor(); + drawScrollbar(graphics, lines.size(), left, right, top, bottom, rows, scrollOffset); + } + + private void drawStaticLines(GuiGraphicsExtractor graphics, List lines, int left, int right, int top, int bottom) { + graphics.enableScissor(left, top, right, bottom); + int y = top; + for (String line : lines) { + if (y + LINE_HEIGHT > bottom) { + break; + } + drawLine(graphics, line, left, right, y); + y += line == null || line.isBlank() ? 6 : LINE_HEIGHT; + } + graphics.disableScissor(); + } + + private void drawScrollableDetailLines(GuiGraphicsExtractor graphics, List lines, int left, int right, int top, int bottom) { + List rows = detailRows(lines, right - left); + int visibleRows = Math.max(1, (bottom - top) / LINE_HEIGHT); + detailScrollOffset = Math.max(0, Math.min(maxDetailScroll(rows, visibleRows), detailScrollOffset)); + + graphics.enableScissor(left, top, right, bottom); + for (int row = 0; row < visibleRows; row++) { + int index = detailScrollOffset + row; + if (index >= rows.size()) { + break; + } + drawDetailLine(graphics, rows.get(index), left, right, top + row * LINE_HEIGHT); + } + graphics.disableScissor(); + drawScrollbar(graphics, rows.size(), left, right, top, bottom, visibleRows, detailScrollOffset); + } + + private void drawDetailLine(GuiGraphicsExtractor graphics, String rawLine, int left, int right, int y) { + if (rawLine == null || rawLine.isBlank()) { + return; + } + if (rawLine.startsWith("DESC:")) { + graphics.text(font, rawLine.substring("DESC:".length()), left, y, MUTED_COLOR, false); + return; + } + + int split = rawLine.indexOf('\t'); + if (split >= 0) { + String label = rawLine.substring(0, split); + String value = rawLine.substring(split + 1); + int valueX = left + 58; + if (!label.isBlank()) { + graphics.text(font, label, left, y, MUTED_COLOR, false); + } + graphics.text(font, value, valueX, y, TEXT_COLOR, false); + return; + } + + graphics.text(font, rawLine, left, y, MUTED_COLOR, false); + } + + private void drawLine(GuiGraphicsExtractor graphics, String rawLine, int left, int right, int y) { + if (rawLine == null || rawLine.isBlank()) { + return; + } + if (rawLine.startsWith("TITLE:")) { + graphics.centeredText(font, rawLine.substring("TITLE:".length()), (left + right) / 2, y, TEXT_COLOR); + return; + } + if (rawLine.startsWith("SECTION:")) { + graphics.text(font, rawLine.substring("SECTION:".length()), left, y, TEXT_COLOR, false); + graphics.fill(left, y + 10, right, y + 11, 0x446F85B7); + return; + } + if (rawLine.startsWith("DESC:")) { + drawWrapped(graphics, rawLine.substring("DESC:".length()), left, right, y, MUTED_COLOR); + return; + } + if (rawLine.startsWith("BAR:")) { + drawBarLine(graphics, rawLine, left, right, y); + return; + } + if (rawLine.startsWith("ENTRY:")) { + drawEntryLine(graphics, rawLine, left, right, y); + return; + } + + int split = rawLine.indexOf('\t'); + if (split >= 0) { + String label = rawLine.substring(0, split); + String value = rawLine.substring(split + 1); + graphics.text(font, trim(label, Math.max(40, (right - left) / 2)), left, y, MUTED_COLOR, false); + graphics.text(font, trim(value, Math.max(40, (right - left) / 2)), right - font.width(trim(value, Math.max(40, (right - left) / 2))), y, TEXT_COLOR, false); + } else { + graphics.text(font, trim(rawLine, right - left), left, y, MUTED_COLOR, false); + } + } + + private void drawBarLine(GuiGraphicsExtractor graphics, String rawLine, int left, int right, int y) { + String[] parts = rawLine.substring("BAR:".length()).split("\\|", 3); + if (parts.length < 3) { + graphics.text(font, trim(rawLine, right - left), left, y, MUTED_COLOR, false); + return; + } + String label = parts[0]; + int percent = Math.max(0, Math.min(100, parseInt(parts[1], 0))); + String value = parts[2]; + int labelWidth = Math.min(74, Math.max(48, (right - left) / 4)); + int valueWidth = Math.min(56, Math.max(28, (right - left) / 5)); + int barLeft = left + labelWidth + 4; + int barRight = Math.max(barLeft + 12, right - valueWidth - 4); + int fillRight = barLeft + (barRight - barLeft) * percent / 100; + graphics.text(font, trim(label, labelWidth), left, y, MUTED_COLOR, false); + graphics.fill(barLeft, y + 3, barRight, y + 8, 0x553A4868); + graphics.fill(barLeft, y + 3, fillRight, y + 8, 0xFF6F85B7); + graphics.text(font, trim(value, valueWidth), right - font.width(trim(value, valueWidth)), y, TEXT_COLOR, false); + } + + private void drawEntryLine(GuiGraphicsExtractor graphics, String rawLine, int left, int right, int y) { + String[] parts = rawLine.substring("ENTRY:".length()).split("\\|", 4); + if (parts.length < 4) { + graphics.text(font, trim(rawLine, right - left), left, y, MUTED_COLOR, false); + return; + } + + int entryIndex = parseInt(parts[0], -1); + if (entryIndex == selectedIndex) { + graphics.fill(left - 4, y - 2, right + 4, y + LINE_HEIGHT - 1, SELECTED_COLOR); + } else if (entryIndex >= 0 && entryIndex % 2 == 0) { + graphics.fill(left - 4, y - 2, right + 4, y + LINE_HEIGHT - 1, 0x223C4F75); + } + + String name = parts[1]; + String type = parts[2]; + boolean locked = "?".equals(type); + if (mode == BlocodexUiMode.CREATIONS) { + int sizeWidth = Math.min(72, Math.max(46, (right - left) / 4)); + graphics.text(font, trim(name, Math.max(60, right - left - sizeWidth - 10)), left, y, TEXT_COLOR, false); + String size = trim(type, sizeWidth); + graphics.text(font, size, right - font.width(size), y, MUTED_COLOR, false); + return; + } + int typeX = right - 44; + graphics.text(font, trim(name, Math.max(60, typeX - left - 8)), left, y, locked ? MUTED_COLOR : TEXT_COLOR, false); + graphics.text(font, trim(type, 40), typeX, y, MUTED_COLOR, false); + } + + private void drawWrapped(GuiGraphicsExtractor graphics, String text, int left, int right, int y, int color) { + List lines = wrapText(text, right - left); + if (!lines.isEmpty()) { + graphics.text(font, lines.getFirst(), left, y, color, false); + } + } + + private void drawScrollbar(GuiGraphicsExtractor graphics, int lineCount, int left, int right, int top, int bottom, int rows, int offset) { + if (lineCount <= rows) { + return; + } + + int trackX = right - 6; + graphics.fill(trackX, top, trackX + 4, bottom, 0xFF000000); + int trackHeight = bottom - top; + int thumbHeight = Math.max(18, trackHeight * rows / lineCount); + int maxScroll = Math.max(1, lineCount - rows); + int thumbY = top + (trackHeight - thumbHeight) * offset / maxScroll; + graphics.fill(trackX, thumbY, trackX + 4, thumbY + thumbHeight, 0xFFBFC8D8); + } + + private int lineIndexAt(double mouseX, double mouseY) { + if (!insideList(mouseX, mouseY)) { + return -1; + } + int top = mode == BlocodexUiMode.LIBRARY ? libraryEntriesArea().y() : mode == BlocodexUiMode.CREATIONS ? creationEntriesArea().y() : activeListTop(); + int row = ((int) mouseY - top - 6) / LINE_HEIGHT; + return row < 0 ? -1 : scrollOffset + row; + } + + private boolean insideList(double mouseX, double mouseY) { + if (mode == BlocodexUiMode.LIBRARY) { + Rect list = libraryEntriesArea(); + return mouseX >= list.x() && mouseX < list.right() && mouseY >= list.y() && mouseY < list.bottom(); + } + if (mode == BlocodexUiMode.CREATIONS) { + Rect list = creationEntriesArea(); + return mouseX >= list.x() && mouseX < list.right() && mouseY >= list.y() && mouseY < list.bottom(); + } + if (mode == BlocodexUiMode.PROFILE) { + Rect list = profileListArea(); + return mouseX >= list.x() && mouseX < list.right() && mouseY >= list.y() && mouseY < list.bottom(); + } + if (mode == BlocodexUiMode.WORLD_OVERVIEW) { + Rect detail = worldDetail(); + return mouseX >= detail.x() && mouseX < detail.right() && mouseY >= detail.y() && mouseY < detail.bottom(); + } + return mouseX >= listLeft() && mouseX < listRight() && mouseY >= listTop() && mouseY < listBottom(); + } + + private boolean insideDetail(double mouseX, double mouseY) { + Rect detail = mode == BlocodexUiMode.CREATIONS ? creationDetail() : libraryDetail(); + return mouseX >= detail.x() && mouseX < detail.right() && mouseY >= detail.y() && mouseY < detail.bottom(); + } + + private boolean insideListScrollbar(double mouseX, double mouseY) { + if (!insideList(mouseX, mouseY)) { + return false; + } + Rect area = activeListArea(); + return scrollableListLines().size() > visibleRows(area) + && mouseX >= area.right() - 8 + && mouseX < area.right() + && mouseY >= area.y() + && mouseY < area.bottom(); + } + + private boolean insideDetailScrollbar(double mouseX, double mouseY) { + if (mode != BlocodexUiMode.LIBRARY && mode != BlocodexUiMode.CREATIONS) { + return false; + } + Rect detail = mode == BlocodexUiMode.CREATIONS ? creationDetail() : libraryDetail(); + int contentRight = detail.right() - 10; + return maxDetailScroll() > 0 + && mouseX >= contentRight - 8 + && mouseX < contentRight + && mouseY >= detail.y() + && mouseY < detail.bottom(); + } + + private void setListScrollFromMouse(double mouseY) { + Rect area = activeListArea(); + List lines = scrollableListLines(); + int rows = visibleRows(area); + int max = Math.max(0, lines.size() - rows); + if (max == 0) { + scrollOffset = 0; + return; + } + double normal = (mouseY - area.y()) / Math.max(1.0D, area.h()); + scrollOffset = Math.max(0, Math.min(max, (int) Math.round(normal * max))); + } + + private void setDetailScrollFromMouse(double mouseY) { + Rect detail = mode == BlocodexUiMode.CREATIONS ? creationDetail() : libraryDetail(); + int max = maxDetailScroll(); + if (max == 0) { + detailScrollOffset = 0; + return; + } + double normal = (mouseY - detail.y()) / Math.max(1.0D, detail.h()); + detailScrollOffset = Math.max(0, Math.min(max, (int) Math.round(normal * max))); + } + + private Integer entryIndex(String line) { + if (line == null || !line.startsWith("ENTRY:")) { + return null; + } + int split = line.indexOf('|'); + if (split < 0) { + return null; + } + int value = parseInt(line.substring("ENTRY:".length(), split), -1); + return value < 0 ? null : value; + } + + private int visibleRows() { + if (mode == BlocodexUiMode.LIBRARY) { + return visibleRows(libraryEntriesArea()); + } + if (mode == BlocodexUiMode.CREATIONS) { + return visibleRows(creationEntriesArea()); + } + if (mode == BlocodexUiMode.PROFILE) { + return visibleRows(profileListArea()); + } + if (mode == BlocodexUiMode.WORLD_OVERVIEW) { + return visibleRows(worldDetail()); + } + return visibleRows(listTop(), listBottom()); + } + + private int maxScroll() { + if (mode == BlocodexUiMode.LIBRARY || mode == BlocodexUiMode.CREATIONS) { + return maxScroll(entryLines(snapshot.leftLines())); + } + return maxScroll(currentScrollLines()); + } + + private int maxScroll(List lines) { + return Math.max(0, lines.size() - visibleRows()); + } + + private int maxDetailScroll() { + if (mode == BlocodexUiMode.CREATIONS) { + Rect detail = creationDetail(); + int left = detail.x() + 10; + int right = detail.right() - 10; + int top = detail.y() + 8 + LINE_HEIGHT + 4; + PreviewSize previewSize = selectedProjectPreviewSize(detailLines(snapshot.leftLines())); + if (previewSize.width() > 0 && previewSize.height() > 0 && snapshot.gridColors().size() >= previewSize.width() * previewSize.height()) { + top += Math.max(44, Math.min(86, Math.min(right - left, detail.h() / 3))) + 8; + } + int rows = Math.max(1, (detail.bottom() - 8 - top) / LINE_HEIGHT); + return maxDetailScroll(detailRows(removeDetailName(detailLines(snapshot.leftLines())), right - left), rows); + } + if (mode != BlocodexUiMode.LIBRARY) { + return 0; + } + Rect detail = libraryDetail(); + int left = detail.x() + 10; + int right = detail.right() - 10; + List details = detailLines(snapshot.leftLines()); + String name = detailValue(details, "Nom"); + int nameRows = Math.min(2, wrapText(name.isBlank() ? "Selection" : name, right - left).size()); + int iconSize = Math.max(28, Math.min(42, Math.min(detail.w() / 3, detail.h() / 3))); + int bodyTop = detail.y() + 8 + nameRows * LINE_HEIGHT + iconSize + 12; + int rows = Math.max(1, (detail.bottom() - 8 - bodyTop) / LINE_HEIGHT); + return maxDetailScroll(detailRows(removeDetailName(details), right - left), rows); + } + + private int maxDetailScroll(List rows, int visibleRows) { + return Math.max(0, rows.size() - visibleRows); + } + + private int visibleRows(Rect area) { + return visibleRows(area.y(), area.bottom()); + } + + private int visibleRows(int top, int bottom) { + return Math.max(1, (bottom - top - 8) / LINE_HEIGHT); + } + + private int listLeft() { + return Math.max(12, (width - contentWidth()) / 2); + } + + private int listRight() { + return Math.min(width - 12, listLeft() + contentWidth()); + } + + private int listTop() { + return 34; + } + + private int listBottom() { + return Math.max(listTop() + 40, height - FOOTER_HEIGHT - 2); + } + + private int activeListTop() { + return mode == BlocodexUiMode.PROFILE ? profileListArea().y() : listTop(); + } + + private List currentScrollLines() { + return contentLines(snapshot.leftLines()); + } + + private List scrollableListLines() { + if (mode == BlocodexUiMode.LIBRARY || mode == BlocodexUiMode.CREATIONS) { + return entryLines(snapshot.leftLines()); + } + return currentScrollLines(); + } + + private Rect activeListArea() { + if (mode == BlocodexUiMode.LIBRARY) { + return libraryEntriesArea(); + } + if (mode == BlocodexUiMode.CREATIONS) { + return creationEntriesArea(); + } + if (mode == BlocodexUiMode.PROFILE) { + return profileListArea(); + } + if (mode == BlocodexUiMode.WORLD_OVERVIEW) { + return worldDetail(); + } + return new Rect(listLeft(), listTop(), listRight() - listLeft(), listBottom() - listTop()); + } + + private List contentLines(List lines) { + if (mode != BlocodexUiMode.PROFILE) { + return lines; + } + + List content = new ArrayList<>(); + for (String line : lines) { + if (line == null || line.startsWith("TITLE:")) { + continue; + } + content.add(line); + } + return content; + } + + private List entryLines(List lines) { + return lines.stream().filter(line -> line != null && line.startsWith("ENTRY:")).toList(); + } + + private List detailLines(List lines) { + List details = new ArrayList<>(); + boolean inDetail = false; + for (String line : lines) { + if (line == null || line.isBlank() || line.startsWith("TITLE:") || line.startsWith("ENTRY:")) { + continue; + } + if (line.equals("SECTION:Detail")) { + inDetail = true; + continue; + } + if (inDetail && line.startsWith("SECTION:")) { + break; + } + if (inDetail) { + details.add(line); + } + } + return details; + } + + private List detailRows(List lines, int maxWidth) { + List rows = new ArrayList<>(); + int valueWidth = Math.max(24, maxWidth - 58); + for (String line : lines) { + if (line == null || line.isBlank()) { + rows.add(""); + continue; + } + if (line.startsWith("DESC:")) { + for (String wrapped : wrapText(line.substring("DESC:".length()), maxWidth)) { + rows.add("DESC:" + wrapped); + } + continue; + } + + int split = line.indexOf('\t'); + if (split >= 0) { + String label = line.substring(0, split); + List values = wrapText(line.substring(split + 1), valueWidth); + for (int i = 0; i < values.size(); i++) { + rows.add((i == 0 ? label : "") + "\t" + values.get(i)); + } + continue; + } + rows.addAll(wrapText(line, maxWidth)); + } + return rows; + } + + private String detailValue(List lines, String key) { + String prefix = key + "\t"; + for (String line : lines) { + if (line.startsWith(prefix)) { + return line.substring(prefix.length()); + } + } + return ""; + } + + private PreviewSize selectedProjectPreviewSize(List lines) { + String value = detailValue(lines, "Preview"); + int split = value.indexOf('x'); + if (split < 0) { + return new PreviewSize(0, 0); + } + int width = parseInt(value.substring(0, split), 0); + int height = parseInt(value.substring(split + 1), 0); + return new PreviewSize(Math.max(0, width), Math.max(0, height)); + } + + private List graphPoints() { + List points = new ArrayList<>(); + for (String rawPoint : snapshot.graphPoints()) { + String[] parts = rawPoint.split("\\|"); + if (parts.length < 7) { + continue; + } + points.add(new GraphPoint( + parseLong(parts[0], 0L), + parseLong(parts[1], 0L), + parseLong(parts[2], 0L), + parseLong(parts[3], 0L), + parseLong(parts[4], 0L), + parseLong(parts[5], 0L), + parseLong(parts[6], 0L) + )); + } + return points; + } + + private List removeDetailName(List lines) { + return lines.stream().filter(line -> !line.startsWith("Nom\t")).toList(); + } + + private void drawPanel(GuiGraphicsExtractor graphics, Rect rect) { + graphics.fill(rect.x(), rect.y(), rect.right(), rect.bottom(), PANEL_COLOR); + graphics.fill(rect.x() + 1, rect.y() + 1, rect.right() - 1, rect.bottom() - 1, PANEL_ALT_COLOR); + graphics.fill(rect.x(), rect.y(), rect.right(), rect.y() + 1, PANEL_BORDER); + graphics.fill(rect.x(), rect.bottom() - 1, rect.right(), rect.bottom(), 0x66000000); + graphics.fill(rect.x(), rect.y(), rect.x() + 1, rect.bottom(), PANEL_BORDER); + graphics.fill(rect.right() - 1, rect.y(), rect.right(), rect.bottom(), 0x66000000); + } + + private void drawSelectedItem(GuiGraphicsExtractor graphics, String id, int x, int y, int size) { + drawSelectedItem(graphics, id, false, x, y, size); + } + + private void drawSelectedItem(GuiGraphicsExtractor graphics, String id, boolean preferSpawnEgg, int x, int y, int size) { + ItemStack stack = stackFor(id, preferSpawnEgg); + if (stack.isEmpty()) { + graphics.fill(x, y, x + size, y + size, 0x553A4868); + graphics.centeredText(font, "?", x + size / 2, y + size / 2 - 4, MUTED_COLOR); + return; + } + graphics.fill(x, y, x + size, y + size, 0x553A4868); + drawScaledFakeItem(graphics, stack, x, y, size, size - 10); + } + + private void drawScaledFakeItem(GuiGraphicsExtractor graphics, ItemStack stack, int boxX, int boxY, int boxSize, int itemSize) { + if (stack.isEmpty()) { + return; + } + + int clampedSize = Math.max(6, Math.min(itemSize, boxSize)); + float scale = clampedSize / 16.0F; + int x = boxX + (boxSize - clampedSize) / 2; + int y = boxY + (boxSize - clampedSize) / 2; + graphics.pose().pushMatrix(); + graphics.pose().translate(x, y); + graphics.pose().scale(scale, scale); + graphics.fakeItem(stack, 0, 0); + graphics.pose().popMatrix(); + } + + private ItemStack stackFor(String id) { + return stackFor(id, false); + } + + private ItemStack stackFor(String id, boolean preferSpawnEgg) { + Identifier identifier = Identifier.tryParse(id == null ? "" : id); + if (identifier == null) { + return ItemStack.EMPTY; + } + + if (preferSpawnEgg) { + ItemStack spawnEggStack = spawnEggStack(identifier); + if (!spawnEggStack.isEmpty()) { + return spawnEggStack; + } + } + + Optional item = BuiltInRegistries.ITEM.getOptional(identifier); + if (item.isPresent() && item.get() != Items.AIR) { + return new ItemStack(item.get()); + } + + Optional block = BuiltInRegistries.BLOCK.getOptional(identifier); + if (block.isPresent() && block.get().asItem() != Items.AIR) { + return new ItemStack(block.get().asItem()); + } + return spawnEggStack(identifier); + } + + private ItemStack spawnEggStack(Identifier identifier) { + Identifier spawnEggId = Identifier.fromNamespaceAndPath(identifier.getNamespace(), identifier.getPath() + "_spawn_egg"); + Optional spawnEgg = BuiltInRegistries.ITEM.getOptional(spawnEggId); + if (spawnEgg.isPresent() && spawnEgg.get() != Items.AIR) { + return new ItemStack(spawnEgg.get()); + } + return ItemStack.EMPTY; + } + + private int contentWidth() { + int available = Math.max(80, width - 48); + if (available < 360) { + return Math.max(80, width - 24); + } + return Math.min(960, available); + } + + private int sideWidth() { + int contentWidth = listRight() - listLeft(); + if (contentWidth < 240) { + return Math.max(60, contentWidth / 3); + } + if (contentWidth < 340) { + return Math.max(92, Math.min(128, contentWidth / 3)); + } + return Math.min(260, Math.max(150, contentWidth * 2 / 5)); + } + + private Rect sideColumn(int height) { + return new Rect(listLeft(), listTop(), sideWidth(), listBottom() - listTop()); + } + + private Rect mainPanel() { + int left = listLeft() + sideWidth() + PANEL_GAP; + return new Rect(left, listTop(), listRight() - left, listBottom() - listTop()); + } + + private Rect profileSidebar() { + return sideColumn(0); + } + + private Rect profileDetail() { + return mainPanel(); + } + + private Rect profileListArea() { + Rect detail = profileDetail(); + return new Rect(detail.x(), detail.y() + 28, detail.w(), detail.h() - 28); + } + + private Rect libraryList() { + return mainPanel(); + } + + private Rect libraryDetail() { + return sideColumn(0); + } + + private Rect libraryEntriesArea() { + Rect list = libraryList(); + return new Rect(list.x() + 6, list.y() + 54, list.w() - 12, list.h() - 60); + } + + private Rect worldMap() { + return mainPanel(); + } + + private Rect worldDetail() { + return sideColumn(0); + } + + private Rect creationDetail() { + return sideColumn(0); + } + + private Rect creationList() { + return mainPanel(); + } + + private Rect creationEntriesArea() { + Rect list = creationList(); + return new Rect(list.x() + 6, list.y() + 30, list.w() - 12, list.h() - 36); + } + + private String trim(String text, int maxWidth) { + if (font.width(text) <= maxWidth) { + return text; + } + String suffix = "..."; + int end = text.length(); + while (end > 0 && font.width(text.substring(0, end) + suffix) > maxWidth) { + end--; + } + return text.substring(0, Math.max(0, end)) + suffix; + } + + private List wrapText(String text, int maxWidth) { + if (text == null || text.isBlank()) { + return List.of(""); + } + + List lines = new ArrayList<>(); + String[] words = text.split("\\s+"); + String current = ""; + for (String word : words) { + if (current.isBlank()) { + if (font.width(word) <= maxWidth) { + current = word; + } else { + current = addWrappedWord(lines, word, maxWidth); + } + continue; + } + + String candidate = current + " " + word; + if (font.width(candidate) <= maxWidth) { + current = candidate; + } else { + lines.add(current); + current = font.width(word) <= maxWidth ? word : addWrappedWord(lines, word, maxWidth); + } + } + if (!current.isBlank()) { + lines.add(current); + } + return lines.isEmpty() ? List.of("") : lines; + } + + private String addWrappedWord(List lines, String word, int maxWidth) { + String remaining = word; + while (font.width(remaining) > maxWidth && remaining.length() > 1) { + String fitted = fitLongWord(remaining, maxWidth); + lines.add(fitted); + remaining = remaining.substring(fitted.length()); + } + return remaining; + } + + private String fitLongWord(String word, int maxWidth) { + if (font.width(word) <= maxWidth) { + return word; + } + + int end = word.length(); + while (end > 1 && font.width(word.substring(0, end)) > maxWidth) { + end--; + } + return word.substring(0, Math.max(1, end)); + } + + private int parseInt(String value, int fallback) { + try { + return Integer.parseInt(value); + } catch (NumberFormatException ignored) { + return fallback; + } + } + + private long parseLong(String value, long fallback) { + try { + return Long.parseLong(value); + } catch (NumberFormatException ignored) { + return fallback; + } + } + + private record Rect(int x, int y, int w, int h) { + int right() { + return x + w; + } + + int bottom() { + return y + h; + } + } + + private record PreviewSize(int width, int height) { + } + + private record GraphPoint(long playTimeTicks, long distanceCm, long brokenBlocks, long crafts, long visitedChunks, long biomes, long discoveredBlocks) { + } + + private enum PendingProjectAction { + NONE, + BUILD, + BLUEPRINT, + CREATIVE_DIRECT, + EDIT + } +} diff --git a/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/BlocodexConstructionScreen.java b/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/BlocodexConstructionScreen.java new file mode 100644 index 0000000..2c4fa47 --- /dev/null +++ b/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/BlocodexConstructionScreen.java @@ -0,0 +1,499 @@ +package dev.blocodex.client.gui; + +import dev.blocodex.client.BlocodexClient; +import dev.blocodex.client.voxel.BlocodexBuildPlacementController; +import dev.blocodex.memory.VoxelProjectMemory; +import dev.blocodex.network.BlocodexUiMode; +import dev.blocodex.network.BlocodexUiRequestPayload; +import dev.blocodex.network.BlocodexUiSnapshotPayload; +import dev.blocodex.network.BlocodexVoxelProjectDeletePayload; +import dev.blocodex.network.BlocodexVoxelProjectRequestPayload; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.client.gui.components.Button; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.input.KeyEvent; +import net.minecraft.client.input.MouseButtonEvent; +import net.minecraft.network.chat.Component; +import org.lwjgl.glfw.GLFW; + +import java.util.ArrayList; +import java.util.List; + +public final class BlocodexConstructionScreen extends Screen { + private static final int OVERLAY_COLOR = 0x66000000; + private static final int PANEL_COLOR = 0x55000000; + private static final int PANEL_ALT_COLOR = 0x33101010; + private static final int PANEL_BORDER = 0x668C8C8C; + private static final int TEXT_COLOR = 0xFFFFFFFF; + private static final int MUTED_COLOR = 0xFFC8C8C8; + private static final int SELECTED_COLOR = 0x886A6A6A; + private static final int LINE_HEIGHT = 12; + private static final int FOOTER_HEIGHT = 42; + + private BlocodexUiSnapshotPayload snapshot = BlocodexUiSnapshotPayload.empty(); + private int selectedIndex = 0; + private int scrollOffset = 0; + private int requestCooldown = 0; + private PendingProjectAction pendingProjectAction = PendingProjectAction.NONE; + + public BlocodexConstructionScreen() { + super(Component.literal("Galerie voxel")); + } + + public void acceptSnapshot(BlocodexUiSnapshotPayload payload) { + if (BlocodexUiMode.byId(payload.mode()) != BlocodexUiMode.CREATIONS) { + return; + } + snapshot = payload; + selectedIndex = payload.selectedIndex(); + scrollOffset = Math.min(scrollOffset, maxScroll()); + } + + public void acceptProject(VoxelProjectMemory project) { + if (pendingProjectAction == PendingProjectAction.BUILD) { + minecraft.setScreen(null); + if (minecraft.player != null && minecraft.player.isCreative()) { + BlocodexBuildPlacementController.startCreativeDirect(project); + } else { + BlocodexBuildPlacementController.startBlueprint(project); + } + } else if (pendingProjectAction == PendingProjectAction.BLUEPRINT) { + minecraft.setScreen(null); + BlocodexBuildPlacementController.startBlueprint(project); + } else if (pendingProjectAction == PendingProjectAction.CREATIVE_DIRECT) { + minecraft.setScreen(null); + BlocodexBuildPlacementController.startCreativeDirect(project); + } + pendingProjectAction = PendingProjectAction.NONE; + } + + @Override + protected void init() { + int y = height - 28; + int center = width / 2; + addRenderableWidget(Button.builder(Component.literal("Construire"), ignored -> requestProject(PendingProjectAction.BUILD)) + .bounds(center - 108, y, 102, 20) + .build()); + addRenderableWidget(Button.builder(Component.literal("Supprimer"), ignored -> deleteSelectedProject()) + .bounds(center - 2, y, 102, 20) + .build()); + addRenderableWidget(Button.builder(Component.literal("Termine"), ignored -> minecraft.setScreen(null)) + .bounds(center + 104, y, 102, 20) + .build()); + requestSnapshot(); + } + + @Override + public void tick() { + if (requestCooldown > 0) { + requestCooldown--; + } + if (requestCooldown == 0) { + requestCooldown = 40; + requestSnapshot(); + } + } + + @Override + public boolean isPauseScreen() { + return false; + } + + @Override + public boolean keyPressed(KeyEvent event) { + if (BlocodexClient.matchesConstructionKey(event)) { + minecraft.setScreen(null); + return true; + } + if (event.key() == GLFW.GLFW_KEY_UP) { + selectProject(-1); + return true; + } + if (event.key() == GLFW.GLFW_KEY_DOWN) { + selectProject(1); + return true; + } + if (event.key() == GLFW.GLFW_KEY_PAGE_UP) { + selectProject(-visibleRows(listArea())); + return true; + } + if (event.key() == GLFW.GLFW_KEY_PAGE_DOWN) { + selectProject(visibleRows(listArea())); + return true; + } + if (event.key() == GLFW.GLFW_KEY_HOME) { + selectProject(-selectedIndex); + return true; + } + if (event.key() == GLFW.GLFW_KEY_END) { + selectProject(entryLines(snapshot.leftLines()).size() - selectedIndex - 1); + return true; + } + return super.keyPressed(event); + } + + @Override + public boolean mouseClicked(MouseButtonEvent event, boolean doubleClick) { + if (super.mouseClicked(event, doubleClick)) { + return true; + } + if (!insideList(event.x(), event.y())) { + return false; + } + + int row = ((int) event.y() - listArea().y() - 6) / LINE_HEIGHT; + if (row < 0) { + return false; + } + List entries = entryLines(snapshot.leftLines()); + int lineIndex = scrollOffset + row; + if (lineIndex >= entries.size()) { + return false; + } + Integer entryIndex = entryIndex(entries.get(lineIndex)); + if (entryIndex != null) { + selectedIndex = entryIndex; + requestSnapshot(); + return true; + } + return false; + } + + @Override + public boolean mouseScrolled(double mouseX, double mouseY, double scrollX, double scrollY) { + if (!insideList(mouseX, mouseY)) { + return super.mouseScrolled(mouseX, mouseY, scrollX, scrollY); + } + int direction = scrollY < 0 ? 1 : -1; + scrollOffset = Math.max(0, Math.min(maxScroll(), scrollOffset + direction * 3)); + return true; + } + + @Override + public void extractRenderState(GuiGraphicsExtractor graphics, int mouseX, int mouseY, float partialTick) { + graphics.fill(0, 0, width, height, OVERLAY_COLOR); + graphics.centeredText(font, title, width / 2, 13, TEXT_COLOR); + drawContent(graphics); + super.extractRenderState(graphics, mouseX, mouseY, partialTick); + } + + private void requestProject(PendingProjectAction action) { + String projectId = snapshot.selectedBlockId(); + if (projectId == null || projectId.isBlank()) { + if (minecraft != null && minecraft.player != null) { + minecraft.player.sendOverlayMessage(Component.literal("Aucun projet selectionne.")); + } + return; + } + pendingProjectAction = action; + if (ClientPlayNetworking.canSend(BlocodexVoxelProjectRequestPayload.TYPE)) { + ClientPlayNetworking.send(new BlocodexVoxelProjectRequestPayload(projectId)); + } + } + + private void deleteSelectedProject() { + String projectId = snapshot.selectedBlockId(); + if (projectId == null || projectId.isBlank()) { + if (minecraft != null && minecraft.player != null) { + minecraft.player.sendOverlayMessage(Component.literal("Aucun projet selectionne.")); + } + return; + } + if (ClientPlayNetworking.canSend(BlocodexVoxelProjectDeletePayload.TYPE)) { + ClientPlayNetworking.send(new BlocodexVoxelProjectDeletePayload(projectId)); + selectedIndex = Math.max(0, selectedIndex - 1); + requestCooldown = 0; + requestSnapshot(); + } + } + + private void requestSnapshot() { + try { + if (ClientPlayNetworking.canSend(BlocodexUiRequestPayload.TYPE)) { + ClientPlayNetworking.send(new BlocodexUiRequestPayload(BlocodexUiMode.CREATIONS.id(), 0, 0, selectedIndex, "")); + } + } catch (IllegalStateException ignored) { + // The server networking channel can briefly be unavailable while the screen opens. + } + } + + private void selectProject(int delta) { + List entries = entryLines(snapshot.leftLines()); + if (entries.isEmpty()) { + selectedIndex = 0; + scrollOffset = 0; + return; + } + selectedIndex = Math.max(0, Math.min(entries.size() - 1, selectedIndex + delta)); + ensureSelectedVisible(entries.size()); + requestSnapshot(); + } + + private void ensureSelectedVisible(int entryCount) { + int rows = visibleRows(listArea()); + if (selectedIndex < scrollOffset) { + scrollOffset = selectedIndex; + } else if (selectedIndex >= scrollOffset + rows) { + scrollOffset = selectedIndex - rows + 1; + } + scrollOffset = Math.max(0, Math.min(Math.max(0, entryCount - rows), scrollOffset)); + } + + private void drawContent(GuiGraphicsExtractor graphics) { + Rect list = listPanel(); + Rect detail = detailPanel(); + drawPanel(graphics, list); + drawPanel(graphics, detail); + drawEntryList(graphics, listArea(), entryLines(snapshot.leftLines())); + drawDetails(graphics, detail, detailLines(snapshot.leftLines())); + } + + private void drawEntryList(GuiGraphicsExtractor graphics, Rect area, List entries) { + scrollOffset = Math.max(0, Math.min(maxScroll(), scrollOffset)); + graphics.enableScissor(area.x(), area.y(), area.right(), area.bottom()); + int rows = visibleRows(area); + for (int row = 0; row < rows; row++) { + int index = scrollOffset + row; + if (index >= entries.size()) { + break; + } + int y = area.y() + 6 + row * LINE_HEIGHT; + drawEntryLine(graphics, entries.get(index), area.x() + 8, area.right() - 8, y); + } + graphics.disableScissor(); + drawScrollbar(graphics, entries.size(), area.x(), area.right(), area.y(), area.bottom(), rows, scrollOffset); + } + + private void drawEntryLine(GuiGraphicsExtractor graphics, String rawLine, int left, int right, int y) { + String[] parts = rawLine.substring("ENTRY:".length()).split("\\|", 4); + if (parts.length < 4) { + graphics.text(font, trim(rawLine, right - left), left, y, MUTED_COLOR, false); + return; + } + + int entryIndex = parseInt(parts[0], -1); + if (entryIndex == selectedIndex) { + graphics.fill(left - 4, y - 2, right + 4, y + LINE_HEIGHT - 1, SELECTED_COLOR); + } else if (entryIndex >= 0 && entryIndex % 2 == 0) { + graphics.fill(left - 4, y - 2, right + 4, y + LINE_HEIGHT - 1, 0x223C4F75); + } + + int sizeX = right - 62; + graphics.text(font, trim(parts[1], Math.max(48, sizeX - left - 8)), left, y, TEXT_COLOR, false); + graphics.text(font, trim(parts[2], 56), sizeX, y, MUTED_COLOR, false); + } + + private void drawDetails(GuiGraphicsExtractor graphics, Rect area, List lines) { + int left = area.x() + 10; + int right = area.right() - 10; + int y = area.y() + 8; + String name = detailValue(lines, "Nom"); + graphics.text(font, trim(name.isBlank() ? "Selection" : name, right - left), left, y, TEXT_COLOR, false); + y += LINE_HEIGHT + 4; + PreviewSize previewSize = selectedProjectPreviewSize(lines); + if (previewSize.width() > 0 && previewSize.height() > 0 && snapshot.gridColors().size() >= previewSize.width() * previewSize.height()) { + int preview = Math.max(44, Math.min(86, Math.min(right - left, area.h() / 3))); + drawVoxelPreview(graphics, left, y, right - left, preview, previewSize); + y += preview + 8; + } + for (String line : lines) { + if (line == null || line.isBlank() || line.startsWith("Nom\t") || line.startsWith("Preview\t")) { + continue; + } + if (y + LINE_HEIGHT > area.bottom() - 8) { + break; + } + drawDetailLine(graphics, line, left, right, y); + y += LINE_HEIGHT; + } + } + + private void drawVoxelPreview(GuiGraphicsExtractor graphics, int left, int top, int maxWidth, int maxHeight, PreviewSize previewSize) { + int pixel = Math.max(1, Math.min(maxWidth / previewSize.width(), maxHeight / previewSize.height())); + int widthPx = previewSize.width() * pixel; + int heightPx = previewSize.height() * pixel; + int x0 = left + Math.max(0, (maxWidth - widthPx) / 2); + int y0 = top + Math.max(0, (maxHeight - heightPx) / 2); + graphics.fill(x0 - 2, y0 - 2, x0 + widthPx + 2, y0 + heightPx + 2, 0x553A4868); + for (int row = 0; row < previewSize.height(); row++) { + int rowStart = row * previewSize.width(); + for (int col = 0; col < previewSize.width(); col++) { + int color = snapshot.gridColors().get(rowStart + col); + if ((color >>> 24) == 0) { + continue; + } + int x = x0 + col * pixel; + int y = y0 + row * pixel; + graphics.fill(x, y, x + pixel, y + pixel, color); + } + } + } + + private void drawDetailLine(GuiGraphicsExtractor graphics, String rawLine, int left, int right, int y) { + int split = rawLine.indexOf('\t'); + if (split >= 0) { + String label = rawLine.substring(0, split); + String value = rawLine.substring(split + 1); + graphics.text(font, label, left, y, MUTED_COLOR, false); + graphics.text(font, trim(value, Math.max(24, right - left - 70)), left + 70, y, TEXT_COLOR, false); + return; + } + graphics.text(font, trim(rawLine, right - left), left, y, MUTED_COLOR, false); + } + + private void drawPanel(GuiGraphicsExtractor graphics, Rect rect) { + graphics.fill(rect.x(), rect.y(), rect.right(), rect.bottom(), PANEL_COLOR); + graphics.fill(rect.x() + 1, rect.y() + 1, rect.right() - 1, rect.bottom() - 1, PANEL_ALT_COLOR); + graphics.fill(rect.x(), rect.y(), rect.right(), rect.y() + 1, PANEL_BORDER); + graphics.fill(rect.x(), rect.bottom() - 1, rect.right(), rect.bottom(), 0x66000000); + graphics.fill(rect.x(), rect.y(), rect.x() + 1, rect.bottom(), PANEL_BORDER); + graphics.fill(rect.right() - 1, rect.y(), rect.right(), rect.bottom(), 0x66000000); + } + + private void drawScrollbar(GuiGraphicsExtractor graphics, int lineCount, int left, int right, int top, int bottom, int rows, int offset) { + if (lineCount <= rows) { + return; + } + int trackX = right - 6; + graphics.fill(trackX, top, trackX + 4, bottom, 0xFF000000); + int trackHeight = bottom - top; + int thumbHeight = Math.max(18, trackHeight * rows / lineCount); + int maxScroll = Math.max(1, lineCount - rows); + int thumbY = top + (trackHeight - thumbHeight) * offset / maxScroll; + graphics.fill(trackX, thumbY, trackX + 4, thumbY + thumbHeight, 0xFFBFC8D8); + } + + private boolean insideList(double mouseX, double mouseY) { + Rect list = listArea(); + return mouseX >= list.x() && mouseX < list.right() && mouseY >= list.y() && mouseY < list.bottom(); + } + + private List entryLines(List lines) { + return lines.stream().filter(line -> line != null && line.startsWith("ENTRY:")).toList(); + } + + private List detailLines(List lines) { + List details = new ArrayList<>(); + boolean inDetail = false; + for (String line : lines) { + if (line == null || line.isBlank() || line.startsWith("TITLE:") || line.startsWith("ENTRY:")) { + continue; + } + if (line.equals("SECTION:Detail")) { + inDetail = true; + continue; + } + if (line.startsWith("SECTION:")) { + break; + } + if (inDetail) { + details.add(line); + } + } + return details; + } + + private String detailValue(List lines, String key) { + String prefix = key + "\t"; + for (String line : lines) { + if (line.startsWith(prefix)) { + return line.substring(prefix.length()); + } + } + return ""; + } + + private PreviewSize selectedProjectPreviewSize(List lines) { + String value = detailValue(lines, "Preview"); + int split = value.indexOf('x'); + if (split < 0) { + return new PreviewSize(0, 0); + } + int width = parseInt(value.substring(0, split), 0); + int height = parseInt(value.substring(split + 1), 0); + return new PreviewSize(Math.max(0, width), Math.max(0, height)); + } + + private Integer entryIndex(String line) { + int split = line == null ? -1 : line.indexOf('|'); + if (split < 0 || !line.startsWith("ENTRY:")) { + return null; + } + int value = parseInt(line.substring("ENTRY:".length(), split), -1); + return value < 0 ? null : value; + } + + private int maxScroll() { + return Math.max(0, entryLines(snapshot.leftLines()).size() - visibleRows(listArea())); + } + + private int visibleRows(Rect area) { + return Math.max(1, (area.bottom() - area.y() - 8) / LINE_HEIGHT); + } + + private Rect listPanel() { + int available = Math.max(120, width - 24); + int contentWidth = Math.min(720, available); + int left = (width - contentWidth) / 2; + int top = 34; + int bottom = Math.max(top + 50, height - FOOTER_HEIGHT); + int detailWidth = Math.min(230, Math.max(132, contentWidth / 3)); + return new Rect(left + detailWidth + 8, top, contentWidth - detailWidth - 8, bottom - top); + } + + private Rect detailPanel() { + int available = Math.max(120, width - 24); + int contentWidth = Math.min(720, available); + int left = (width - contentWidth) / 2; + int top = 34; + int bottom = Math.max(top + 50, height - FOOTER_HEIGHT); + int detailWidth = Math.min(230, Math.max(132, contentWidth / 3)); + return new Rect(left, top, detailWidth, bottom - top); + } + + private Rect listArea() { + Rect list = listPanel(); + return new Rect(list.x() + 6, list.y() + 6, list.w() - 12, list.h() - 12); + } + + private String trim(String text, int maxWidth) { + if (font.width(text) <= maxWidth) { + return text; + } + String suffix = "..."; + int end = text.length(); + while (end > 0 && font.width(text.substring(0, end) + suffix) > maxWidth) { + end--; + } + return text.substring(0, Math.max(0, end)) + suffix; + } + + private int parseInt(String value, int fallback) { + try { + return Integer.parseInt(value); + } catch (NumberFormatException ignored) { + return fallback; + } + } + + private enum PendingProjectAction { + NONE, + BUILD, + BLUEPRINT, + CREATIVE_DIRECT + } + + private record Rect(int x, int y, int w, int h) { + int right() { + return x + w; + } + + int bottom() { + return y + h; + } + } + + private record PreviewSize(int width, int height) { + } +} diff --git a/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/BlocodexScreen.java b/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/BlocodexScreen.java new file mode 100644 index 0000000..4a9c61a --- /dev/null +++ b/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/BlocodexScreen.java @@ -0,0 +1,911 @@ +package dev.blocodex.client.gui; + +import dev.blocodex.Blocodex; +import dev.blocodex.client.BlocodexClient; +import dev.blocodex.network.BlocodexUiMode; +import dev.blocodex.network.BlocodexUiRequestPayload; +import dev.blocodex.network.BlocodexUiSnapshotPayload; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.input.CharacterEvent; +import net.minecraft.client.input.KeyEvent; +import net.minecraft.client.input.MouseButtonEvent; +import net.minecraft.client.renderer.RenderPipelines; +import net.minecraft.client.renderer.texture.TextureAtlasSprite; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.Identifier; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import org.lwjgl.glfw.GLFW; + +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; + +public final class BlocodexScreen extends Screen { + private static final int GRID_CELLS = 9; + private static final int TEXT = 0xFFE8E1D3; + private static final int MUTED_TEXT = 0xFF9F9A8E; + private static final int PANEL_DARK = 0xFF0A0D0C; + private static final int DEVICE_MARGIN = 36; + private static final int DEVICE_MAX_WIDTH = 420; + private static final int DEVICE_MAX_HEIGHT = 205; + private static final int DEVICE_MIN_HEIGHT = 200; + private static final int DEVICE_TOP_LIFT = 17; + private static final int DEVICE_LEFT_PADDING = 22; + private static final int DEVICE_RIGHT_PADDING = 16; + private static final int SCREEN_FRAME_OUTSET = 8; + private static final int SCREEN_CONTENT_GAP = 7; + private static final float SCREEN_HEIGHT_RATIO = 0.72F; + private static final float SCREEN_TOP_RATIO = 0.16F; + private static final float LEFT_SCREEN_WIDTH_RATIO = 0.88F; + private static final int MIN_SCREEN_GAP = 18; + private static final int MIN_SLIDER_GAP = 16; + private static final int GAP_WIDTH_DIVISOR = 80; + private static final int SLIDER_WIDTH_DIVISOR = 44; + private static final int BUTTON_TOP_GAP = SCREEN_FRAME_OUTSET + SCREEN_CONTENT_GAP; + private static final int BUTTON_SIDE_GAP = 6; + private static final int BUTTON_PAIR_GAP = 4; + private static final int SLIDER_KNOB_WIDTH = 18; + private static final int SLIDER_KNOB_HEIGHT = 12; + private static final Identifier VANILLA_BUTTON = Identifier.withDefaultNamespace("widget/button"); + private static final Identifier VANILLA_BUTTON_HOVERED = Identifier.withDefaultNamespace("widget/button_highlighted"); + private static final Identifier DEVICE_PANEL = Blocodex.id("textures/gui/device_panel.png"); + private static final Identifier SCREEN_FRAME = Blocodex.id("textures/gui/screen_frame.png"); + private static final Identifier BOTTOM_PANEL = Blocodex.id("textures/gui/bottom_panel.png"); + private static final Identifier SLIDER_WELL = Blocodex.id("textures/gui/slider_well.png"); + private static final Identifier SLIDER_KNOB = Blocodex.id("textures/gui/slider_knob.png"); + private static final Identifier VENT_SLOTS = Blocodex.id("textures/gui/vent_slots.png"); + private static final Identifier STATUS_LIGHT = Blocodex.id("textures/gui/status_light.png"); + private static final Identifier ICON_MENU = Blocodex.id("textures/gui/icon_menu.png"); + private static final Identifier ICON_ARROW_LEFT = Blocodex.id("textures/gui/icon_arrow_left.png"); + private static final Identifier ICON_ARROW_RIGHT = Blocodex.id("textures/gui/icon_arrow_right.png"); + private static final Identifier SELECTION_FRAME = Blocodex.id("textures/gui/selection_frame.png"); + private static final Identifier GRID_OVERLAY = Blocodex.id("textures/gui/grid_overlay_9x9.png"); + + private static BlocodexUiMode rememberedMode = BlocodexUiMode.STATS; + private static int rememberedSliderValue = 0; + private static int rememberedPage = 0; + private static int rememberedSelectedIndex = 40; + + private BlocodexUiMode mode; + private int sliderValue; + private int page; + private int selectedIndex; + private int requestCooldown = 0; + private int screenTicks = 0; + private int leftScrollOffset = 0; + private String colorQuery = ""; + private boolean draggingSlider = false; + private BlocodexUiSnapshotPayload snapshot = BlocodexUiSnapshotPayload.empty(); + + public BlocodexScreen() { + super(Component.literal("Blocodex")); + mode = rememberedMode; + sliderValue = rememberedSliderValue; + page = rememberedPage; + selectedIndex = rememberedSelectedIndex; + Minecraft client = Minecraft.getInstance(); + if (client.player != null && mode == BlocodexUiMode.WORLD && sliderValue == 0) { + sliderValue = client.player.blockPosition().getY(); + } + } + + public void acceptSnapshot(BlocodexUiSnapshotPayload payload) { + snapshot = payload; + mode = BlocodexUiMode.byId(payload.mode()); + sliderValue = payload.sliderValue(); + page = payload.page(); + selectedIndex = payload.selectedIndex(); + rememberState(); + } + + @Override + protected void init() { + requestSnapshot(); + } + + @Override + public void tick() { + screenTicks++; + if (requestCooldown > 0) { + requestCooldown--; + } + if (requestCooldown == 0) { + requestCooldown = isColorLoading() ? 5 : 40; + requestSnapshot(); + } + } + + @Override + public boolean isPauseScreen() { + return false; + } + + @Override + public boolean keyPressed(KeyEvent event) { + if (BlocodexClient.matchesOpenKey(event)) { + minecraft.setScreen(null); + return true; + } + if (event.key() == GLFW.GLFW_KEY_LEFT) { + previous(); + return true; + } + if (event.key() == GLFW.GLFW_KEY_RIGHT) { + next(); + return true; + } + if (event.key() == GLFW.GLFW_KEY_TAB || event.key() == GLFW.GLFW_KEY_M) { + nextMode(); + return true; + } + if (mode == BlocodexUiMode.COLOR && event.key() == GLFW.GLFW_KEY_BACKSPACE && !colorQuery.isEmpty()) { + colorQuery = (event.modifiers() & GLFW.GLFW_MOD_CONTROL) != 0 ? "" : colorQuery.substring(0, colorQuery.length() - 1); + selectedIndex = 0; + resetLeftScroll(); + rememberState(); + requestSnapshot(); + return true; + } + return super.keyPressed(event); + } + + @Override + public boolean charTyped(CharacterEvent event) { + int codePoint = event.codepoint(); + if (mode == BlocodexUiMode.COLOR && event.isAllowedChatCharacter() && colorQuery.length() < 48) { + colorQuery += new String(Character.toChars(codePoint)); + selectedIndex = 0; + resetLeftScroll(); + rememberState(); + requestSnapshot(); + return true; + } + return super.charTyped(event); + } + + @Override + public boolean mouseClicked(MouseButtonEvent event, boolean doubleClick) { + Layout layout = layout(); + double mouseX = event.x(); + double mouseY = event.y(); + + if (inside(mouseX, mouseY, layout.menuButton())) { + nextMode(); + return true; + } + if (inside(mouseX, mouseY, layout.leftButton())) { + previous(); + return true; + } + if (inside(mouseX, mouseY, layout.rightButton())) { + next(); + return true; + } + if (inside(mouseX, mouseY, layout.sliderWell())) { + draggingSlider = true; + setSliderFromMouse(layout, mouseY); + return true; + } + if (mode != BlocodexUiMode.STATS && inside(mouseX, mouseY, layout.grid())) { + int cell = cellAt(layout, mouseX, mouseY); + if (cell >= 0) { + selectedIndex = cell; + resetLeftScroll(); + requestSnapshot(); + return true; + } + } + + return super.mouseClicked(event, doubleClick); + } + + @Override + public boolean mouseDragged(MouseButtonEvent event, double dragX, double dragY) { + if (draggingSlider) { + setSliderFromMouse(layout(), event.y()); + return true; + } + return super.mouseDragged(event, dragX, dragY); + } + + @Override + public boolean mouseReleased(MouseButtonEvent event) { + if (draggingSlider) { + draggingSlider = false; + requestSnapshot(); + return true; + } + return super.mouseReleased(event); + } + + @Override + public boolean mouseScrolled(double mouseX, double mouseY, double scrollX, double scrollY) { + Layout layout = layout(); + if (inside(mouseX, mouseY, layout.leftScreen())) { + int maxScroll = maxLeftScroll(layout); + if (maxScroll > 0) { + int direction = scrollY < 0 ? 1 : -1; + leftScrollOffset = Math.max(0, Math.min(maxScroll, leftScrollOffset + direction * 18)); + return true; + } + } + if (mode == BlocodexUiMode.STATS) { + int direction = scrollY < 0 ? 1 : -1; + sliderValue = Math.max(snapshot.minSliderValue(), Math.min(snapshot.maxSliderValue(), sliderValue + direction)); + rememberState(); + requestSnapshot(); + return true; + } + return super.mouseScrolled(mouseX, mouseY, scrollX, scrollY); + } + + @Override + public void removed() { + rememberState(); + } + + @Override + public void extractRenderState(GuiGraphicsExtractor graphics, int mouseX, int mouseY, float partialTick) { + Layout layout = layout(); + drawDevice(graphics, layout); + drawLeftScreen(graphics, layout); + drawGrid(graphics, layout); + drawSlider(graphics, layout); + drawButtons(graphics, layout, mouseX, mouseY); + } + + private void drawDevice(GuiGraphicsExtractor graphics, Layout layout) { + Rect body = layout.body(); + drawNineSlice(graphics, DEVICE_PANEL, body.x(), body.y(), body.w(), body.h(), 32, 32, 8); + + String title = "BLOCODEX"; + int titleX = layout.leftScreen().x() + (layout.leftScreen().w() - font.width(title)) / 2; + graphics.text(font, title, titleX, body.y() + 14, 0xFF2A2925, false); + drawTexture(graphics, STATUS_LIGHT, body.x() + 8, body.y() + 13, 10, 10, 12, 12); + + int ventX = layout.grid().x() + 8; + int ventY = body.y() + 5; + drawTexture(graphics, VENT_SLOTS, ventX, ventY, layout.grid().w() - 16, 20, 96, 24); + } + + private void drawLeftScreen(GuiGraphicsExtractor graphics, Layout layout) { + Rect screen = layout.leftScreen(); + drawInset(graphics, screen); + List lines = isColorLoading() ? loadingLines() : snapshot.leftLines(); + Rect content = new Rect(screen.x() + SCREEN_CONTENT_GAP, screen.y() + SCREEN_CONTENT_GAP, screen.w() - SCREEN_CONTENT_GAP * 2, screen.h() - SCREEN_CONTENT_GAP * 2); + leftScrollOffset = Math.max(0, Math.min(maxLeftScroll(layout), leftScrollOffset)); + graphics.enableScissor(content.x(), content.y(), content.right(), content.bottom()); + drawLeftContent(graphics, content, lines, content.y() - leftScrollOffset); + graphics.disableScissor(); + drawLeftScrollbar(graphics, content, leftContentHeight(lines, content.w())); + } + + private void drawLeftContent(GuiGraphicsExtractor graphics, Rect content, List lines, int y) { + if (shouldShowEntryIcon()) { + int iconSize = 28; + drawEntryIcon(graphics, snapshot.selectedBlockId(), content.x() + (content.w() - iconSize) / 2, y, iconSize, snapshot.selectedColor()); + y += iconSize + 6; + } + + for (String rawLine : lines) { + if (rawLine == null) { + continue; + } + if (rawLine.isBlank()) { + y += 6; + continue; + } + + if (rawLine.startsWith("TITLE:")) { + String title = rawLine.substring("TITLE:".length()); + graphics.text(font, trim(title, content.w()), content.x() + (content.w() - Math.min(font.width(title), content.w())) / 2, y, TEXT, false); + y += 16; + } else if (rawLine.startsWith("TYPE:")) { + y = drawWrappedLines(graphics, rawLine.substring("TYPE:".length()), content, y, MUTED_TEXT, true); + } else if (rawLine.startsWith("ID:")) { + y = drawWrappedLines(graphics, rawLine.substring("ID:".length()), content, y, 0xFF77736A, true); + y += 2; + } else if (rawLine.startsWith("DESC:")) { + y = drawWrappedLines(graphics, rawLine.substring("DESC:".length()), content, y, MUTED_TEXT, false); + y += 4; + } else if (rawLine.startsWith("SECTION:")) { + graphics.text(font, trim(rawLine.substring("SECTION:".length()), content.w()), content.x(), y, TEXT, false); + y += 16; + } else { + y = drawWrappedLines(graphics, rawLine, content, y, MUTED_TEXT, false); + } + } + } + + private int drawWrappedLines(GuiGraphicsExtractor graphics, String text, Rect content, int y, int color, boolean centered) { + for (String line : wrapText(text, content.w())) { + int x = centered ? content.x() + (content.w() - Math.min(font.width(line), content.w())) / 2 : content.x(); + graphics.text(font, trim(line, content.w()), x, y, color, false); + y += 12; + } + return y; + } + + private int leftContentHeight(List lines, int width) { + int height = shouldShowEntryIcon() ? 34 : 0; + for (String rawLine : lines) { + if (rawLine == null || rawLine.isBlank()) { + height += 6; + } else if (rawLine.startsWith("TITLE:") || rawLine.startsWith("SECTION:")) { + height += 16; + } else { + height += wrapText(stripLinePrefix(rawLine), width).size() * 12; + if (rawLine.startsWith("ID:")) { + height += 2; + } else if (rawLine.startsWith("DESC:")) { + height += 4; + } + } + } + return height; + } + + private int maxLeftScroll(Layout layout) { + List lines = isColorLoading() ? loadingLines() : snapshot.leftLines(); + Rect screen = layout.leftScreen(); + int contentHeight = leftContentHeight(lines, screen.w() - SCREEN_CONTENT_GAP * 2); + return Math.max(0, contentHeight - (screen.h() - SCREEN_CONTENT_GAP * 2)); + } + + private void drawLeftScrollbar(GuiGraphicsExtractor graphics, Rect content, int contentHeight) { + if (contentHeight <= content.h()) { + return; + } + + int trackX = content.right() - 2; + graphics.fill(trackX, content.y(), trackX + 1, content.bottom(), 0x55000000); + int thumbH = Math.max(12, content.h() * content.h() / contentHeight); + int maxScroll = Math.max(1, contentHeight - content.h()); + int thumbY = content.y() + (content.h() - thumbH) * leftScrollOffset / maxScroll; + graphics.fill(trackX - 1, thumbY, trackX + 2, thumbY + thumbH, 0x99E8E1D3); + } + + private List wrapText(String text, int maxWidth) { + List lines = new ArrayList<>(); + if (text == null || text.isBlank()) { + return lines; + } + + StringBuilder line = new StringBuilder(); + for (String word : text.strip().split("\\s+")) { + String candidate = line.isEmpty() ? word : line + " " + word; + if (font.width(candidate) <= maxWidth) { + line.setLength(0); + line.append(candidate); + } else { + if (!line.isEmpty()) { + lines.add(line.toString()); + } + line.setLength(0); + line.append(word); + } + } + if (!line.isEmpty()) { + lines.add(line.toString()); + } + return lines; + } + + private String stripLinePrefix(String line) { + int split = line.indexOf(':'); + return split > 0 && line.substring(0, split).chars().allMatch(Character::isUpperCase) ? line.substring(split + 1) : line; + } + + private boolean shouldShowEntryIcon() { + return mode == BlocodexUiMode.COLOR && !isColorLoading() && snapshot.selectedBlockId() != null && !snapshot.selectedBlockId().isBlank(); + } + + private void drawEntryIcon(GuiGraphicsExtractor graphics, String id, int x, int y, int size, int fallbackColor) { + Optional block = block(id); + if (block.isPresent() && block.get() != Blocks.AIR) { + graphics.fill(x, y, x + size, y + size, fallbackColor); + drawBlockSprite(graphics, id, x, y, size, size, colorTint(id, fallbackColor)); + outline(graphics, x, y, size, size, 0xFF3A403B, 0xFF020303); + return; + } + + Optional maybeItem = item(id); + if (maybeItem.isPresent() && maybeItem.get() != Items.AIR) { + graphics.fill(x, y, x + size, y + size, fallbackColor); + drawScaledFakeItem(graphics, new ItemStack(maybeItem.get()), x, y, size, Math.min(20, size - 4)); + outline(graphics, x, y, size, size, 0xFF3A403B, 0xFF020303); + return; + } + + graphics.fill(x, y, x + size, y + size, fallbackColor); + outline(graphics, x, y, size, size, 0xFF3A403B, 0xFF020303); + } + + private void drawScaledFakeItem(GuiGraphicsExtractor graphics, ItemStack stack, int boxX, int boxY, int boxSize, int itemSize) { + if (stack.isEmpty()) { + return; + } + + int clampedSize = Math.max(6, Math.min(itemSize, boxSize)); + float scale = clampedSize / 16.0F; + int x = boxX + (boxSize - clampedSize) / 2; + int y = boxY + (boxSize - clampedSize) / 2; + graphics.pose().pushMatrix(); + graphics.pose().translate(x, y); + graphics.pose().scale(scale, scale); + graphics.fakeItem(stack, 0, 0); + graphics.pose().popMatrix(); + } + + private void drawGrid(GuiGraphicsExtractor graphics, Layout layout) { + Rect grid = layout.grid(); + drawInset(graphics, grid); + int cell = grid.w() / GRID_CELLS; + int gridSize = cell * GRID_CELLS; + int startX = grid.x() + (grid.w() - gridSize) / 2; + int startY = grid.y() + (grid.h() - gridSize) / 2; + + if (mode == BlocodexUiMode.STATS) { + drawStatsMap(graphics, startX, startY, cell, gridSize); + return; + } + if (isColorLoading()) { + drawColorLoadingVortex(graphics, startX, startY, cell, gridSize); + return; + } + + for (int row = 0; row < GRID_CELLS; row++) { + for (int col = 0; col < GRID_CELLS; col++) { + int index = row * GRID_CELLS + col; + int x = startX + col * cell; + int y = startY + row * cell; + int color = index < snapshot.gridColors().size() ? snapshot.gridColors().get(index) : PANEL_DARK; + String blockId = index < snapshot.gridBlockIds().size() ? snapshot.gridBlockIds().get(index) : ""; + if (shouldRenderTexture(blockId)) { + graphics.fill(x, y, x + cell, y + cell, color); + drawBlockSprite(graphics, blockId, x, y, cell, cell, colorTint(blockId, color)); + } else if (mode == BlocodexUiMode.COLOR && shouldRenderItem(blockId)) { + graphics.fill(x, y, x + cell, y + cell, color); + drawScaledFakeItem(graphics, new ItemStack(item(blockId).orElse(Items.AIR)), x, y, cell, cell); + } else { + graphics.fill(x, y, x + cell, y + cell, color); + } + } + } + drawTexture(graphics, GRID_OVERLAY, startX, startY, gridSize, gridSize, 144, 144); + + int selected = Math.max(0, Math.min(80, selectedIndex)); + int sx = startX + (selected % GRID_CELLS) * cell; + int sy = startY + (selected / GRID_CELLS) * cell; + drawTexture(graphics, SELECTION_FRAME, sx, sy, cell, cell, 16, 16); + } + + private void drawStatsMap(GuiGraphicsExtractor graphics, int startX, int startY, int cell, int gridSize) { + graphics.fill(startX, startY, startX + gridSize, startY + gridSize, 0xFF070909); + for (int row = 0; row < GRID_CELLS; row++) { + for (int col = 0; col < GRID_CELLS; col++) { + int index = row * GRID_CELLS + col; + int x = startX + col * cell; + int y = startY + row * cell; + int color = index < snapshot.gridColors().size() ? snapshot.gridColors().get(index) : PANEL_DARK; + graphics.fill(x, y, x + cell, y + cell, color); + } + } + + int centerX = startX + 4 * cell + cell / 2; + int centerY = startY + 4 * cell + cell / 2; + int headSize = Math.max(12, cell); + drawPlayerHead(graphics, centerX - headSize / 2, centerY - headSize / 2, headSize); + } + + private void drawColorLoadingVortex(GuiGraphicsExtractor graphics, int startX, int startY, int cell, int gridSize) { + graphics.fill(startX, startY, startX + gridSize, startY + gridSize, 0xFF050707); + double phase = screenTicks * 0.18D; + for (int row = 0; row < GRID_CELLS; row++) { + for (int col = 0; col < GRID_CELLS; col++) { + double dx = col - 4.0D; + double dy = row - 4.0D; + double radius = Math.sqrt(dx * dx + dy * dy); + double angle = Math.atan2(dy, dx) + phase; + double arm = Math.max(0.0D, Math.cos(angle * 4.0D - radius * 1.35D)); + double swirl = Math.max(0.0D, Math.cos(angle - radius * 0.85D + phase * 1.5D)); + double energy = Math.min(1.0D, arm * 0.7D + swirl * 0.45D); + float saturation = (float) Math.min(1.0D, 0.25D + energy * 0.75D); + float value = (float) Math.max(0.08D, Math.min(1.0D, 0.18D + energy * 0.82D - radius * 0.035D)); + int hue = Math.floorMod(sliderValue + (int) Math.round(screenTicks * 2.2D + radius * 14.0D), 360); + int x = startX + col * cell; + int y = startY + row * cell; + graphics.fill(x, y, x + cell, y + cell, hslToArgb(hue, saturation, value)); + } + } + drawTexture(graphics, GRID_OVERLAY, startX, startY, gridSize, gridSize, 144, 144); + } + + private void drawSlider(GuiGraphicsExtractor graphics, Layout layout) { + Rect track = layout.sliderTrack(); + drawNineSlice(graphics, SLIDER_WELL, layout.sliderWell().x(), layout.sliderWell().y(), layout.sliderWell().w(), layout.sliderWell().h(), 20, 32, 6, 6, 8, 8); + graphics.fill(track.x(), track.y(), track.right(), track.bottom(), 0xFF090A09); + + double normal = sliderNormal(); + int handleY = track.y() + (int) Math.round((1.0D - normal) * (track.h() - SLIDER_KNOB_HEIGHT)); + drawTexture(graphics, SLIDER_KNOB, track.x() - 7, handleY, SLIDER_KNOB_WIDTH, SLIDER_KNOB_HEIGHT, 18, 12); + } + + private void drawButtons(GuiGraphicsExtractor graphics, Layout layout, int mouseX, int mouseY) { + drawButton(graphics, layout.menuButton(), "menu", inside(mouseX, mouseY, layout.menuButton())); + drawButton(graphics, layout.leftButton(), "left", inside(mouseX, mouseY, layout.leftButton())); + drawButton(graphics, layout.rightButton(), "right", inside(mouseX, mouseY, layout.rightButton())); + } + + private void drawButton(GuiGraphicsExtractor graphics, Rect rect, String icon, boolean hovered) { + Identifier texture = hovered ? VANILLA_BUTTON_HOVERED : VANILLA_BUTTON; + graphics.blitSprite(RenderPipelines.GUI_TEXTURED, texture, rect.x(), rect.y(), rect.w(), rect.h(), 0xFFFFFFFF); + + int cx = rect.x() + rect.w() / 2; + int cy = rect.y() + rect.h() / 2; + if ("menu".equals(icon)) { + drawTexture(graphics, ICON_MENU, cx - 8, cy - 8, 16, 16, 16, 16); + } else if ("left".equals(icon)) { + drawTexture(graphics, ICON_ARROW_LEFT, cx - 8, cy - 8, 16, 16, 16, 16); + } else { + drawTexture(graphics, ICON_ARROW_RIGHT, cx - 8, cy - 8, 16, 16, 16, 16); + } + } + + private void drawBottomPanel(GuiGraphicsExtractor graphics, Layout layout) { + Rect panel = layout.bottomPanel(); + drawNineSlice(graphics, BOTTOM_PANEL, panel.x(), panel.y(), panel.w(), panel.h(), 32, 24, 6); + } + + private void drawInset(GuiGraphicsExtractor graphics, Rect rect) { + drawNineSlice(graphics, SCREEN_FRAME, rect.x() - SCREEN_FRAME_OUTSET, rect.y() - SCREEN_FRAME_OUTSET, rect.w() + SCREEN_FRAME_OUTSET * 2, rect.h() + SCREEN_FRAME_OUTSET * 2, 32, 32, SCREEN_FRAME_OUTSET); + } + + private void outline(GuiGraphicsExtractor graphics, int x, int y, int w, int h, int light, int dark) { + graphics.fill(x, y, x + w, y + 1, light); + graphics.fill(x, y, x + 1, y + h, light); + graphics.fill(x, y + h - 1, x + w, y + h, dark); + graphics.fill(x + w - 1, y, x + w, y + h, dark); + } + + private void drawTexture(GuiGraphicsExtractor graphics, Identifier texture, int x, int y, int w, int h, int textureW, int textureH) { + drawTextureRegion(graphics, texture, x, y, w, h, 0, 0, textureW, textureH, textureW, textureH); + } + + private void drawNineSlice(GuiGraphicsExtractor graphics, Identifier texture, int x, int y, int w, int h, int textureW, int textureH, int slice) { + drawNineSlice(graphics, texture, x, y, w, h, textureW, textureH, slice, slice, slice, slice); + } + + private void drawNineSlice(GuiGraphicsExtractor graphics, Identifier texture, int x, int y, int w, int h, int textureW, int textureH, int left, int right, int top, int bottom) { + int centerW = Math.max(0, w - left - right); + int centerH = Math.max(0, h - top - bottom); + int sourceCenterW = textureW - left - right; + int sourceCenterH = textureH - top - bottom; + + drawTextureRegion(graphics, texture, x, y, left, top, 0, 0, left, top, textureW, textureH); + drawTextureRegion(graphics, texture, x + left, y, centerW, top, left, 0, sourceCenterW, top, textureW, textureH); + drawTextureRegion(graphics, texture, x + left + centerW, y, right, top, textureW - right, 0, right, top, textureW, textureH); + + drawTextureRegion(graphics, texture, x, y + top, left, centerH, 0, top, left, sourceCenterH, textureW, textureH); + drawTextureRegion(graphics, texture, x + left, y + top, centerW, centerH, left, top, sourceCenterW, sourceCenterH, textureW, textureH); + drawTextureRegion(graphics, texture, x + left + centerW, y + top, right, centerH, textureW - right, top, right, sourceCenterH, textureW, textureH); + + drawTextureRegion(graphics, texture, x, y + top + centerH, left, bottom, 0, textureH - bottom, left, bottom, textureW, textureH); + drawTextureRegion(graphics, texture, x + left, y + top + centerH, centerW, bottom, left, textureH - bottom, sourceCenterW, bottom, textureW, textureH); + drawTextureRegion(graphics, texture, x + left + centerW, y + top + centerH, right, bottom, textureW - right, textureH - bottom, right, bottom, textureW, textureH); + } + + private void drawTextureRegion(GuiGraphicsExtractor graphics, Identifier texture, int x, int y, int w, int h, int u, int v, int sourceW, int sourceH, int textureW, int textureH) { + if (w <= 0 || h <= 0 || sourceW <= 0 || sourceH <= 0) { + return; + } + graphics.blit(RenderPipelines.GUI_TEXTURED, texture, x, y, (float) u, (float) v, w, h, sourceW, sourceH, textureW, textureH); + } + + private void drawBlockSprite(GuiGraphicsExtractor graphics, String blockId, int x, int y, int w, int h, int tint) { + Optional maybeBlock = block(blockId); + if (maybeBlock.isEmpty()) { + return; + } + TextureAtlasSprite sprite = blockSprite(blockId, maybeBlock.get()); + graphics.blitSprite(RenderPipelines.GUI_TEXTURED, sprite, x, y, w, h, tint); + } + + private TextureAtlasSprite blockSprite(String blockId, Block block) { + return minecraft.getModelManager() + .getBlockStateModelSet() + .getParticleMaterial(block.defaultBlockState()) + .sprite(); + } + + private void drawPlayerHead(GuiGraphicsExtractor graphics, int x, int y, int size) { + if (minecraft.player == null) { + graphics.fill(x, y, x + size, y + size, 0xFF2D8DFF); + outline(graphics, x, y, size, size, 0xFFE8F7FF, 0xFF00111E); + return; + } + + Identifier skin = minecraft.player.getSkin().body().texturePath(); + drawTextureRegion(graphics, skin, x, y, size, size, 8, 8, 8, 8, 64, 64); + drawTextureRegion(graphics, skin, x, y, size, size, 40, 8, 8, 8, 64, 64); + outline(graphics, x, y, size, size, 0xFFE8F7FF, 0xFF00111E); + } + + private boolean shouldRenderTexture(String blockId) { + return blockId != null && !blockId.isBlank() && block(blockId).orElse(Blocks.AIR) != Blocks.AIR; + } + + private boolean shouldRenderItem(String itemId) { + return itemId != null && !itemId.isBlank() && item(itemId).orElse(Items.AIR) != Items.AIR; + } + + private int colorTint(String blockId, int color) { + int tint = canonicalTint(blockId); + return tint == -1 ? 0xFFFFFFFF : tint; + } + + private int canonicalTint(String blockId) { + String path = blockPath(blockId); + if (path.equals("water") || path.equals("bubble_column") || path.equals("water_cauldron")) { + return 0xFF3F76E4; + } + if (path.equals("birch_leaves")) { + return 0xFF80A755; + } + if (path.equals("spruce_leaves")) { + return 0xFF619961; + } + if (path.endsWith("_leaves") || path.equals("vine")) { + return 0xFF48B518; + } + if (path.equals("grass_block") || path.equals("short_grass") || path.equals("tall_grass") + || path.equals("fern") || path.equals("large_fern") || path.equals("potted_fern") + || path.equals("bush") || path.equals("sugar_cane")) { + return 0xFF79C05A; + } + if (path.equals("lily_pad")) { + return 0xFF208030; + } + return -1; + } + + private String blockPath(String blockId) { + if (blockId == null) { + return ""; + } + int split = blockId.indexOf(':'); + return split >= 0 ? blockId.substring(split + 1) : blockId; + } + + private Optional block(String blockId) { + Identifier id = Identifier.tryParse(blockId); + if (id == null) { + return Optional.empty(); + } + return BuiltInRegistries.BLOCK.getOptional(id); + } + + private Optional item(String itemId) { + Identifier id = Identifier.tryParse(itemId); + if (id == null) { + return Optional.empty(); + } + return BuiltInRegistries.ITEM.getOptional(id); + } + + private void nextMode() { + mode = mode.next(); + page = 0; + selectedIndex = 40; + resetLeftScroll(); + if (mode == BlocodexUiMode.WORLD && minecraft.player != null) { + sliderValue = minecraft.player.blockPosition().getY(); + } else if (mode == BlocodexUiMode.COLOR) { + sliderValue = 0; + } else if (mode == BlocodexUiMode.STATS) { + sliderValue = 0; + } + rememberState(); + requestSnapshot(); + } + + private void previous() { + page--; + resetLeftScroll(); + rememberState(); + requestSnapshot(); + } + + private void next() { + page++; + resetLeftScroll(); + rememberState(); + requestSnapshot(); + } + + private void setSliderFromMouse(Layout layout, double mouseY) { + Rect track = layout.sliderTrack(); + int travel = Math.max(1, track.h() - SLIDER_KNOB_HEIGHT); + double normal = 1.0D - Math.max(0.0D, Math.min(1.0D, (mouseY - track.y() - SLIDER_KNOB_HEIGHT / 2.0D) / travel)); + sliderValue = (int) Math.round(snapshot.minSliderValue() + normal * (snapshot.maxSliderValue() - snapshot.minSliderValue())); + rememberState(); + requestSnapshot(); + } + + private double sliderNormal() { + int min = snapshot.minSliderValue(); + int max = Math.max(min + 1, snapshot.maxSliderValue()); + return Math.max(0.0D, Math.min(1.0D, (sliderValue - min) / (double) (max - min))); + } + + private void requestSnapshot() { + try { + if (ClientPlayNetworking.canSend(BlocodexUiRequestPayload.TYPE)) { + String query = mode == BlocodexUiMode.COLOR ? colorQuery : ""; + ClientPlayNetworking.send(new BlocodexUiRequestPayload(mode.id(), sliderValue, page, selectedIndex, query)); + } + } catch (IllegalStateException ignored) { + // The screen can be constructed before the play networking channel is ready. + } + } + + private void resetLeftScroll() { + leftScrollOffset = 0; + } + + private void rememberState() { + rememberedMode = mode; + rememberedSliderValue = sliderValue; + rememberedPage = page; + rememberedSelectedIndex = selectedIndex; + } + + private int cellAt(Layout layout, double mouseX, double mouseY) { + Rect grid = layout.grid(); + int cell = grid.w() / GRID_CELLS; + int gridSize = cell * GRID_CELLS; + int startX = grid.x() + (grid.w() - gridSize) / 2; + int startY = grid.y() + (grid.h() - gridSize) / 2; + int col = (int) ((mouseX - startX) / cell); + int row = (int) ((mouseY - startY) / cell); + if (col < 0 || col >= GRID_CELLS || row < 0 || row >= GRID_CELLS) { + return -1; + } + return row * GRID_CELLS + col; + } + + private boolean inside(double mouseX, double mouseY, Rect rect) { + return mouseX >= rect.x() && mouseX < rect.right() && mouseY >= rect.y() && mouseY < rect.bottom(); + } + + private boolean isColorLoading() { + if (mode != BlocodexUiMode.COLOR) { + return false; + } + if (BlocodexUiMode.byId(snapshot.mode()) != BlocodexUiMode.COLOR) { + return true; + } + return !snapshot.gridLabels().isEmpty() && "LOADING".equals(snapshot.gridLabels().getFirst()); + } + + private List loadingLines() { + if (BlocodexUiMode.byId(snapshot.mode()) == BlocodexUiMode.COLOR && !snapshot.leftLines().isEmpty()) { + return snapshot.leftLines(); + } + return List.of( + "TITLE:Color Space", + "Chargement", + "HSL", + "Snapshots" + ); + } + + private String trim(String text, int maxWidth) { + if (font.width(text) <= maxWidth) { + return text; + } + String suffix = "..."; + int end = text.length(); + while (end > 0 && font.width(text.substring(0, end) + suffix) > maxWidth) { + end--; + } + return text.substring(0, Math.max(0, end)) + suffix; + } + + private int hslToArgb(float hue, float saturation, float lightness) { + float c = (1.0F - Math.abs(2.0F * lightness - 1.0F)) * saturation; + float x = c * (1.0F - Math.abs((hue / 60.0F) % 2.0F - 1.0F)); + float m = lightness - c / 2.0F; + float r; + float g; + float b; + if (hue < 60.0F) { + r = c; + g = x; + b = 0.0F; + } else if (hue < 120.0F) { + r = x; + g = c; + b = 0.0F; + } else if (hue < 180.0F) { + r = 0.0F; + g = c; + b = x; + } else if (hue < 240.0F) { + r = 0.0F; + g = x; + b = c; + } else if (hue < 300.0F) { + r = x; + g = 0.0F; + b = c; + } else { + r = c; + g = 0.0F; + b = x; + } + return 0xFF000000 + | (Math.round((r + m) * 255.0F) << 16) + | (Math.round((g + m) * 255.0F) << 8) + | Math.round((b + m) * 255.0F); + } + + private Layout layout() { + int availableW = Math.max(220, width - DEVICE_MARGIN); + int availableH = Math.max(180, height - DEVICE_MARGIN); + int bodyH = Math.min(availableH, DEVICE_MAX_HEIGHT); + bodyH = Math.max(Math.min(availableH, DEVICE_MIN_HEIGHT), bodyH); + + int screenH = (int) (bodyH * SCREEN_HEIGHT_RATIO); + int buttonH = Math.max(28, bodyH / 10); + int leftH = Math.max(96, screenH - BUTTON_TOP_GAP - buttonH); + int leftW = (int) (screenH * LEFT_SCREEN_WIDTH_RATIO); + int screenGap = Math.max(MIN_SCREEN_GAP, DEVICE_MAX_WIDTH / GAP_WIDTH_DIVISOR); + int sliderGap = MIN_SLIDER_GAP; + int gridW = screenH; + int sliderW = Math.max(16, DEVICE_MAX_WIDTH / SLIDER_WIDTH_DIVISOR); + int totalW = leftW + screenGap + gridW + sliderGap + sliderW; + int bodyW = Math.min(Math.min(availableW, DEVICE_MAX_WIDTH), totalW + DEVICE_LEFT_PADDING + DEVICE_RIGHT_PADDING); + int bodyX = (width - bodyW) / 2; + int bodyY = Math.max(4, (height - bodyH) / 2 - DEVICE_TOP_LIFT); + Rect body = new Rect(bodyX, bodyY, bodyW, bodyH); + + int top = bodyY + (int) (bodyH * SCREEN_TOP_RATIO); + int extraW = Math.max(0, bodyW - totalW); + int startX = bodyX + Math.min(DEVICE_LEFT_PADDING, extraW / 2); + + Rect leftScreen = new Rect(startX, top, leftW, leftH); + Rect grid = new Rect(leftScreen.right() + screenGap, top, gridW, screenH); + Rect sliderWell = new Rect(grid.right() + sliderGap, top, sliderW, screenH); + Rect sliderTrack = new Rect(sliderWell.x() + sliderWell.w() / 2 - 2, sliderWell.y() + 8, 4, sliderWell.h() - 16); + + int buttonY = leftScreen.bottom() + BUTTON_TOP_GAP; + int buttonW = buttonH; + Rect menu = new Rect(leftScreen.x(), buttonY, buttonW, buttonH); + Rect left = new Rect(menu.right() + BUTTON_SIDE_GAP, buttonY, buttonW + 6, buttonH); + Rect right = new Rect(left.right() + BUTTON_PAIR_GAP, buttonY, buttonW + 6, buttonH); + Rect bottom = new Rect(grid.x() - 56, buttonY - 14, grid.w() + 104, buttonH + 8); + return new Layout(body, leftScreen, grid, sliderWell, sliderTrack, menu, left, right, bottom); + } + + private record Layout(Rect body, Rect leftScreen, Rect grid, Rect sliderWell, Rect sliderTrack, Rect menuButton, Rect leftButton, Rect rightButton, Rect bottomPanel) { + } + + private record Rect(int x, int y, int w, int h) { + int right() { + return x + w; + } + + int bottom() { + return y + h; + } + } +} diff --git a/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/BlocodexStudioScreen.java b/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/BlocodexStudioScreen.java new file mode 100644 index 0000000..5bae6ae --- /dev/null +++ b/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/BlocodexStudioScreen.java @@ -0,0 +1,1393 @@ +package dev.blocodex.client.gui; + +import dev.blocodex.client.BlocodexClient; +import dev.blocodex.memory.VoxelProjectMemory; +import dev.blocodex.network.BlocodexStudioPalettePayload; +import dev.blocodex.network.BlocodexStudioPaletteRequestPayload; +import dev.blocodex.network.BlocodexVoxelProjectSavePayload; +import dev.blocodex.voxel.StudioVoxelEditor; +import dev.blocodex.voxel.VoxelProjectPlacement; +import dev.blocodex.voxel.VoxelProjectValidator; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.client.gui.components.Button; +import net.minecraft.client.gui.navigation.ScreenRectangle; +import net.minecraft.client.gui.render.TextureSetup; +import net.minecraft.client.gui.components.EditBox; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.input.CharacterEvent; +import net.minecraft.client.input.KeyEvent; +import net.minecraft.client.input.MouseButtonEvent; +import net.minecraft.client.renderer.texture.AbstractTexture; +import net.minecraft.client.renderer.texture.TextureAtlas; +import net.minecraft.client.renderer.texture.TextureAtlasSprite; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.Identifier; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.block.Block; +import org.lwjgl.glfw.GLFW; + +import java.util.ArrayDeque; +import java.util.ArrayList; +import java.util.Comparator; +import java.util.HashSet; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.Set; + +public final class BlocodexStudioScreen extends Screen { + private static final int OVERLAY_COLOR = 0xFF080A0E; + private static final int PANEL_COLOR = 0x66101010; + private static final int PANEL_BORDER = 0x6696A1B9; + private static final int TEXT_COLOR = 0xFFFFFFFF; + private static final int MUTED_COLOR = 0xFFC8C8C8; + private static final int SELECTED_COLOR = 0x995F7FAA; + private static final int LINE_HEIGHT = 12; + private static final int LEFT_WIDTH = 246; + private static final int TOP_HEIGHT = 74; + private static final int PALETTE_GRID_SIZE = 9; + private static final int HISTORY_LIMIT = 64; + + private final Screen parent; + private final long createdTick; + private final long updatedTick; + private final StudioVoxelEditor editor; + private final ArrayDeque undoStack = new ArrayDeque<>(); + private final ArrayDeque redoStack = new ArrayDeque<>(); + + private EditBox nameBox; + private EditBox widthBox; + private EditBox heightBox; + private EditBox depthBox; + private EditBox paletteSearchBox; + + private StudioVoxelEditor.Tool tool = StudioVoxelEditor.Tool.BRUSH; + private List paletteIds = List.of(); + private List paletteColors = List.of(); + private List paletteLabels = List.of(); + private final Map colorByBlock = new LinkedHashMap<>(); + private final Map spriteByBlock = new LinkedHashMap<>(); + private final List cachedVoxels = new ArrayList<>(); + private String selectedBlockId = ""; + private int selectedPaletteIndex = -1; + private int layer = 0; + private int hoverX = -1; + private int hoverY = -1; + private int hoverZ = -1; + private FaceHit hoverHit; + private int hue = 32; + private double saturation = 0.55D; + private double lightness = 0.55D; + private double yaw = -0.78D; + private double pitch = 0.68D; + private double zoom = 1.0D; + private double panX = 0.0D; + private double panY = 0.0D; + private boolean draggingLayer = false; + private boolean draggingHue = false; + private boolean rotating = false; + private boolean panning = false; + private boolean painting = false; + private boolean temporaryRemoving = false; + private boolean paletteRequestDirty = false; + private boolean voxelCacheDirty = true; + private int paletteRequestCooldown = 0; + + public BlocodexStudioScreen(VoxelProjectMemory project, Screen parent) { + super(Component.literal("Studio")); + this.parent = parent; + this.createdTick = project.createdTick(); + this.updatedTick = project.updatedTick(); + this.editor = StudioVoxelEditor.fromProject(project); + this.layer = 0; + } + + public void acceptPalette(BlocodexStudioPalettePayload payload) { + paletteIds = payload.blockIds(); + paletteColors = payload.colors(); + paletteLabels = payload.labels(); + for (int i = 0; i < paletteIds.size(); i++) { + int color = i < paletteColors.size() ? paletteColors.get(i) : 0xFF777777; + colorByBlock.putIfAbsent(paletteIds.get(i), color); + } + if (selectedBlockId == null || selectedBlockId.isBlank()) { + if (!payload.selectedBlockId().isBlank() && paletteIds.contains(payload.selectedBlockId())) { + selectedBlockId = payload.selectedBlockId(); + } else if (!paletteIds.isEmpty()) { + selectedBlockId = paletteIds.getFirst(); + } + } + selectedPaletteIndex = selectedBlockId == null ? -1 : paletteIds.indexOf(selectedBlockId); + } + + @Override + protected void init() { + Rect top = topBar(); + int y = top.y() + 22; + nameBox = new EditBox(font, top.x() + 10, y, Math.max(120, top.w() / 4), 18, Component.literal("Nom")); + nameBox.setMaxLength(48); + nameBox.setValue(editor.name()); + nameBox.setResponder(editor::setName); + addRenderableWidget(nameBox); + + int dimX = nameBox.getX() + nameBox.getWidth() + 8; + widthBox = dimensionBox(dimX, y, editor.width()); + heightBox = dimensionBox(dimX + 42, y, editor.height()); + depthBox = dimensionBox(dimX + 84, y, editor.depth()); + addRenderableWidget(widthBox); + addRenderableWidget(heightBox); + addRenderableWidget(depthBox); + addRenderableWidget(Button.builder(Component.literal("Taille"), ignored -> applyDimensions()) + .bounds(dimX + 126, y, 52, 18) + .build()); + addRenderableWidget(Button.builder(Component.literal("Undo"), ignored -> undo()) + .bounds(dimX + 184, y, 48, 18) + .build()); + addRenderableWidget(Button.builder(Component.literal("Redo"), ignored -> redo()) + .bounds(dimX + 238, y, 48, 18) + .build()); + + addRenderableWidget(Button.builder(Component.literal("Sauver"), ignored -> saveProject()) + .bounds(top.right() - 160, y, 72, 18) + .build()); + addRenderableWidget(Button.builder(Component.literal("Terminer"), ignored -> closeToParent()) + .bounds(top.right() - 82, y, 72, 18) + .build()); + + addToolButtons(); + addPaletteControls(); + queuePaletteRequest(true); + } + + private EditBox dimensionBox(int x, int y, int value) { + EditBox box = new EditBox(font, x, y, 36, 18, Component.literal("Dimension")); + box.setMaxLength(2); + box.setValue(Integer.toString(value)); + return box; + } + + private void addToolButtons() { + Rect left = leftPanel(); + int x = left.x() + 10; + int y = left.y() + 24; + addToolButton(StudioVoxelEditor.Tool.ADD, "Ajouter", x, y); + addToolButton(StudioVoxelEditor.Tool.REMOVE, "Retirer", x + 104, y); + y += 24; + addToolButton(StudioVoxelEditor.Tool.BRUSH, "Pinceau", x, y); + addToolButton(StudioVoxelEditor.Tool.PIPETTE, "Pipette", x + 104, y); + y += 24; + addToolButton(StudioVoxelEditor.Tool.SQUARE, "Carre", x, y); + addToolButton(StudioVoxelEditor.Tool.ROUND, "Rond", x + 104, y); + } + + private void addToolButton(StudioVoxelEditor.Tool nextTool, String label, int x, int y) { + Button button = Button.builder(Component.literal(label), ignored -> { + tool = nextTool; + rebuildWidgets(); + }).bounds(x, y, 96, 18).build(); + button.active = tool != nextTool; + addRenderableWidget(button); + } + + private void addPaletteControls() { + Rect left = leftPanel(); + int x = left.x() + 10; + int y = left.y() + 110; + paletteSearchBox = new EditBox(font, x, y, left.w() - 20, 18, Component.literal("Recherche palette")); + paletteSearchBox.setMaxLength(48); + paletteSearchBox.setHint(Component.literal("Recherche HSL")); + paletteSearchBox.setResponder(ignored -> queuePaletteRequest(false)); + addRenderableWidget(paletteSearchBox); + } + + @Override + public boolean isPauseScreen() { + return true; + } + + @Override + public void tick() { + if (paletteRequestCooldown > 0) { + paletteRequestCooldown--; + } + if (paletteRequestDirty && paletteRequestCooldown == 0) { + paletteRequestDirty = false; + requestPalette(); + } + super.tick(); + } + + @Override + public boolean keyPressed(KeyEvent event) { + if (BlocodexClient.matchesOpenKey(event)) { + return true; + } + if (event.key() == GLFW.GLFW_KEY_PAGE_UP) { + setLayer(layer + 1); + return true; + } + if (event.key() == GLFW.GLFW_KEY_PAGE_DOWN) { + setLayer(layer - 1); + return true; + } + return super.keyPressed(event); + } + + @Override + public boolean charTyped(CharacterEvent event) { + return super.charTyped(event); + } + + @Override + public boolean mouseClicked(MouseButtonEvent event, boolean doubleClick) { + if (super.mouseClicked(event, doubleClick)) { + return true; + } + double mouseX = event.x(); + double mouseY = event.y(); + if (inside(mouseX, mouseY, layerSlider())) { + draggingLayer = true; + setLayerFromMouse(mouseY); + return true; + } + if (inside(mouseX, mouseY, hueSlider())) { + draggingHue = true; + setHueFromMouse(mouseY); + return true; + } + if (inside(mouseX, mouseY, paletteGrid())) { + selectPaletteAt(mouseX, mouseY); + return true; + } + if (inside(mouseX, mouseY, viewport())) { + if (event.button() == GLFW.GLFW_MOUSE_BUTTON_MIDDLE || (event.modifiers() & GLFW.GLFW_MOD_SHIFT) != 0) { + panning = true; + return true; + } + if (event.button() == GLFW.GLFW_MOUSE_BUTTON_LEFT) { + temporaryRemoving = (event.modifiers() & GLFW.GLFW_MOD_ALT) != 0; + painting = dragPaints(activeTool()); + applyAtMouse(mouseX, mouseY); + return true; + } + if (event.button() == GLFW.GLFW_MOUSE_BUTTON_RIGHT || (event.modifiers() & GLFW.GLFW_MOD_ALT) != 0) { + rotating = true; + return true; + } + } + return false; + } + + @Override + public boolean mouseDragged(MouseButtonEvent event, double dragX, double dragY) { + if (draggingLayer) { + setLayerFromMouse(event.y()); + return true; + } + if (draggingHue) { + setHueFromMouse(event.y()); + return true; + } + if (rotating) { + yaw += dragX * 0.012D; + pitch = Math.max(0.18D, Math.min(1.24D, pitch + dragY * 0.01D)); + return true; + } + if (panning) { + panX += dragX; + panY += dragY; + return true; + } + if (painting) { + applyAtMouse(event.x(), event.y()); + return true; + } + return super.mouseDragged(event, dragX, dragY); + } + + @Override + public boolean mouseReleased(MouseButtonEvent event) { + if (draggingLayer || draggingHue || rotating || panning || painting) { + draggingLayer = false; + draggingHue = false; + rotating = false; + panning = false; + painting = false; + temporaryRemoving = false; + return true; + } + return super.mouseReleased(event); + } + + @Override + public boolean mouseScrolled(double mouseX, double mouseY, double scrollX, double scrollY) { + if (inside(mouseX, mouseY, paletteGrid()) || inside(mouseX, mouseY, hueSlider())) { + hue = Math.floorMod(hue + (scrollY > 0 ? 8 : -8), 360); + queuePaletteRequest(false); + return true; + } + if (inside(mouseX, mouseY, viewport())) { + zoom = Math.max(0.45D, Math.min(2.8D, zoom + (scrollY > 0 ? 0.1D : -0.1D))); + return true; + } + return super.mouseScrolled(mouseX, mouseY, scrollX, scrollY); + } + + @Override + public void extractRenderState(GuiGraphicsExtractor graphics, int mouseX, int mouseY, float partialTick) { + graphics.fill(0, 0, width, height, OVERLAY_COLOR); + drawPanel(graphics, topBar()); + drawPanel(graphics, leftPanel()); + drawPanel(graphics, viewportPanel()); + drawTopLabels(graphics); + drawLeftPanel(graphics); + drawViewport(graphics, mouseX, mouseY); + super.extractRenderState(graphics, mouseX, mouseY, partialTick); + } + + private void drawTopLabels(GuiGraphicsExtractor graphics) { + Rect top = topBar(); + graphics.text(font, "Studio", top.x() + 10, top.y() + 8, TEXT_COLOR, false); + int dimX = nameBox.getX() + nameBox.getWidth() + 8; + graphics.text(font, "W", dimX + 13, top.y() + 8, MUTED_COLOR, false); + graphics.text(font, "H", dimX + 55, top.y() + 8, MUTED_COLOR, false); + graphics.text(font, "D", dimX + 97, top.y() + 8, MUTED_COLOR, false); + } + + private void drawLeftPanel(GuiGraphicsExtractor graphics) { + Rect left = leftPanel(); + int x = left.x() + 10; + graphics.text(font, "Outils", x, left.y() + 8, TEXT_COLOR, false); + graphics.text(font, "Palette HSL", x, left.y() + 94, TEXT_COLOR, false); + String hsl = "H " + hue + " S " + percent(saturation) + " L " + percent(lightness); + graphics.text(font, hsl, x, paletteGrid().bottom() + 6, MUTED_COLOR, false); + drawPalette(graphics); + } + + private void drawPalette(GuiGraphicsExtractor graphics) { + Rect grid = paletteGrid(); + int cell = Math.max(8, Math.min(grid.w(), grid.h()) / PALETTE_GRID_SIZE); + int size = cell * PALETTE_GRID_SIZE; + int startX = grid.x() + (grid.w() - size) / 2; + int startY = grid.y(); + StudioViewportRenderState.Builder builder = StudioViewportRenderState.builder(); + appendPaletteGrid(builder, cell, startX, startY); + appendHueSlider(builder); + ScreenRectangle scissor = new ScreenRectangle(grid.x(), grid.y(), grid.w() + 24, grid.h()); + if (!builder.isEmpty() && !StudioGuiRenderAccess.submit(graphics, builder.build(graphics.pose(), scissor))) { + drawPaletteFallback(graphics, cell, startX, startY); + drawHueSlider(graphics); + } + for (int row = 0; row < PALETTE_GRID_SIZE; row++) { + for (int col = 0; col < PALETTE_GRID_SIZE; col++) { + int index = row * PALETTE_GRID_SIZE + col; + if (index < paletteIds.size()) { + int x = startX + col * cell; + int y = startY + row * cell; + drawScaledFakeItem(graphics, stackFor(paletteIds.get(index)), x + 1, y + 1, cell - 2, Math.max(10, cell - 5)); + } + } + } + String label = selectedPaletteIndex >= 0 && selectedPaletteIndex < paletteLabels.size() ? paletteLabels.get(selectedPaletteIndex) : selectedBlockId; + graphics.text(font, trim(label, grid.w()), grid.x(), grid.bottom() + 18, TEXT_COLOR, false); + } + + private void appendPaletteGrid(StudioViewportRenderState.Builder builder, int cell, int startX, int startY) { + for (int row = 0; row < PALETTE_GRID_SIZE; row++) { + for (int col = 0; col < PALETTE_GRID_SIZE; col++) { + int index = row * PALETTE_GRID_SIZE + col; + int x = startX + col * cell; + int y = startY + row * cell; + int color = index < paletteColors.size() ? paletteColors.get(index) : hslPreviewColor(hue, col / 8.0D, 1.0D - row / 8.0D); + builder.rect(x, y, x + cell - 1, y + cell - 1, 0xAA10131B); + if (index >= paletteIds.size()) { + builder.rect(x + 1, y + 1, x + cell - 2, y + cell - 2, color); + } + builder.rect(x, y, x + cell - 1, y + 1, 0x55101010); + builder.rect(x, y, x + 1, y + cell - 1, 0x55101010); + if (index == selectedPaletteIndex) { + appendPaletteSelection(builder, x, y, cell); + } + } + } + } + + private void appendPaletteSelection(StudioViewportRenderState.Builder builder, int x, int y, int cell) { + builder.rect(x, y, x + cell - 1, y + 2, 0xFFFFFFFF); + builder.rect(x, y + cell - 3, x + cell - 1, y + cell - 1, 0xFFFFFFFF); + builder.rect(x, y, x + 2, y + cell - 1, 0xFFFFFFFF); + builder.rect(x + cell - 3, y, x + cell - 1, y + cell - 1, 0xFFFFFFFF); + } + + private void drawPaletteFallback(GuiGraphicsExtractor graphics, int cell, int startX, int startY) { + for (int row = 0; row < PALETTE_GRID_SIZE; row++) { + for (int col = 0; col < PALETTE_GRID_SIZE; col++) { + int index = row * PALETTE_GRID_SIZE + col; + int x = startX + col * cell; + int y = startY + row * cell; + int color = index < paletteColors.size() ? paletteColors.get(index) : hslPreviewColor(hue, col / 8.0D, 1.0D - row / 8.0D); + graphics.fill(x, y, x + cell - 1, y + cell - 1, 0xAA10131B); + if (index >= paletteIds.size()) { + graphics.fill(x + 1, y + 1, x + cell - 2, y + cell - 2, color); + } + graphics.fill(x, y, x + cell - 1, y + 1, 0x55101010); + graphics.fill(x, y, x + 1, y + cell - 1, 0x55101010); + if (index == selectedPaletteIndex) { + graphics.fill(x, y, x + cell - 1, y + 2, 0xFFFFFFFF); + graphics.fill(x, y + cell - 3, x + cell - 1, y + cell - 1, 0xFFFFFFFF); + graphics.fill(x, y, x + 2, y + cell - 1, 0xFFFFFFFF); + graphics.fill(x + cell - 3, y, x + cell - 1, y + cell - 1, 0xFFFFFFFF); + } + } + } + } + + private void drawViewport(GuiGraphicsExtractor graphics, int mouseX, int mouseY) { + Rect view = viewport(); + updateHover(mouseX, mouseY); + drawViewportBatch(graphics, view); + drawLayerSlider(graphics); + drawViewportHud(graphics, view); + } + + private void drawViewportHud(GuiGraphicsExtractor graphics, Rect view) { + String block = selectedBlockId == null || selectedBlockId.isBlank() ? "aucun bloc" : selectedBlockId; + graphics.text(font, "Y " + layer + " / " + (editor.height() - 1), view.x() + 8, view.y() + 8, TEXT_COLOR, false); + graphics.text(font, trim(tool.label() + " - " + block, Math.max(80, view.w() - 28)), view.x() + 8, view.y() + 21, MUTED_COLOR, false); + if (hoverX >= 0 && hoverY >= 0 && hoverZ >= 0) { + graphics.text(font, hoverX + "," + hoverY + "," + hoverZ, view.right() - 82, view.y() + 8, MUTED_COLOR, false); + } + } + + private void drawViewportBatch(GuiGraphicsExtractor graphics, Rect view) { + StudioViewportRenderState.Builder builder = StudioViewportRenderState.builder(); + builder.rect(view.x(), view.y(), view.right(), view.bottom(), 0x66101520); + appendGrid(builder, view); + ScreenRectangle scissor = new ScreenRectangle(view.x(), view.y(), view.w(), view.h()); + boolean submitted = !builder.isEmpty() && StudioGuiRenderAccess.submit(graphics, builder.build(graphics.pose(), scissor)); + + TextureSetup blockAtlas = blockAtlasTextureSetup(); + if (blockAtlas != null) { + StudioViewportRenderState.Builder textureBuilder = StudioViewportRenderState.texturedBuilder(blockAtlas); + appendTexturedVoxels(textureBuilder, view); + submitted = submitted && (textureBuilder.isEmpty() || StudioGuiRenderAccess.submit(graphics, textureBuilder.build(graphics.pose(), scissor))); + } else { + StudioViewportRenderState.Builder colorBuilder = StudioViewportRenderState.builder(); + appendVoxels(colorBuilder, view); + submitted = submitted && (colorBuilder.isEmpty() || StudioGuiRenderAccess.submit(graphics, colorBuilder.build(graphics.pose(), scissor))); + } + + StudioViewportRenderState.Builder overlayBuilder = StudioViewportRenderState.builder(); + appendHover(overlayBuilder, view); + submitted = submitted && (overlayBuilder.isEmpty() || StudioGuiRenderAccess.submit(graphics, overlayBuilder.build(graphics.pose(), scissor))); + if (submitted) { + return; + } + drawViewportFallback(graphics, view); + } + + private TextureSetup blockAtlasTextureSetup() { + if (minecraft == null) { + return null; + } + AbstractTexture texture = minecraft.getTextureManager().getTexture(TextureAtlas.LOCATION_BLOCKS); + if (texture == null || texture.getTextureView() == null || texture.getSampler() == null) { + return null; + } + return TextureSetup.singleTexture(texture.getTextureView(), texture.getSampler()); + } + + private void appendTexturedVoxels(StudioViewportRenderState.Builder builder, Rect view) { + for (RenderedFace face : visibleFaces(view, true)) { + TextureAtlasSprite sprite = face.sprite(); + if (sprite == null) { + builder.quad( + face.a().x(), face.a().y(), + face.b().x(), face.b().y(), + face.c().x(), face.c().y(), + face.d().x(), face.d().y(), + face.fallbackColor() + ); + continue; + } + builder.texturedQuad( + face.a().x(), face.a().y(), + face.b().x(), face.b().y(), + face.c().x(), face.c().y(), + face.d().x(), face.d().y(), + sprite.getU0(), sprite.getV0(), + sprite.getU1(), sprite.getV1(), + face.textureColor() + ); + } + } + + private void drawViewportFallback(GuiGraphicsExtractor graphics, Rect view) { + graphics.enableScissor(view.x(), view.y(), view.right(), view.bottom()); + graphics.fill(view.x(), view.y(), view.right(), view.bottom(), 0x66101520); + drawGrid(graphics, view); + drawVoxels(graphics, view); + graphics.disableScissor(); + } + + private void appendGrid(StudioViewportRenderState.Builder builder, Rect view) { + int gridColor = 0x556B7897; + for (int x = 0; x <= editor.width(); x++) { + ScreenPoint a = project(x, layer, 0, view); + ScreenPoint b = project(x, layer, editor.depth(), view); + builder.line(a.x(), a.y(), b.x(), b.y(), 1, gridColor); + } + for (int z = 0; z <= editor.depth(); z++) { + ScreenPoint a = project(0, layer, z, view); + ScreenPoint b = project(editor.width(), layer, z, view); + builder.line(a.x(), a.y(), b.x(), b.y(), 1, gridColor); + } + } + + private void appendHover(StudioViewportRenderState.Builder builder, Rect view) { + if (hoverHit != null) { + ProjectedPoint[] points = facePoints(hoverHit.x(), hoverHit.y(), hoverHit.z(), hoverHit.face(), view); + builder.quad(points[0].x(), points[0].y(), points[1].x(), points[1].y(), points[2].x(), points[2].y(), points[3].x(), points[3].y(), 0x44FFFFFF); + appendFaceOutline(builder, points[0], points[1], points[2], points[3], 0xEEFFFFFF); + } else if (hoverX >= 0 && hoverY >= 0 && hoverZ >= 0) { + ProjectedPoint a = projectExact(hoverX, hoverY + 0.03D, hoverZ, view); + ProjectedPoint b = projectExact(hoverX + 1.0D, hoverY + 0.03D, hoverZ, view); + ProjectedPoint c = projectExact(hoverX + 1.0D, hoverY + 0.03D, hoverZ + 1.0D, view); + ProjectedPoint d = projectExact(hoverX, hoverY + 0.03D, hoverZ + 1.0D, view); + builder.quad(a.x(), a.y(), b.x(), b.y(), c.x(), c.y(), d.x(), d.y(), 0x33FFFFFF); + appendFaceOutline(builder, a, b, c, d, 0xDDFFFFFF); + } + } + + private void appendVoxels(StudioViewportRenderState.Builder builder, Rect view) { + for (RenderedFace face : visibleFaces(view, true)) { + builder.quad( + face.a().x(), face.a().y(), + face.b().x(), face.b().y(), + face.c().x(), face.c().y(), + face.d().x(), face.d().y(), + face.fallbackColor() + ); + } + } + + private List visibleFaces(Rect view, boolean limitContext) { + List faces = new ArrayList<>(); + rebuildVoxelCacheIfNeeded(); + Set occupied = occupiedKeys(); + int contextBudget = 1800; + int contextCount = 0; + for (CachedVoxel voxel : cachedVoxels) { + boolean activeLayer = voxel.y() == layer; + if (limitContext && !activeLayer && cachedVoxels.size() > contextBudget && Math.floorMod(voxel.x() * 31 + voxel.y() * 17 + voxel.z() * 13, 4) != 0) { + continue; + } + if (limitContext && !activeLayer && contextCount++ > contextBudget) { + continue; + } + appendVoxelCubeFaces(faces, voxel, activeLayer, occupied, view); + } + faces.sort(Comparator.comparingDouble(RenderedFace::depth)); + return faces; + } + + private void appendVoxelCubeFaces(List faces, CachedVoxel voxel, boolean activeLayer, Set occupied, Rect view) { + int baseColor = colorFor(voxel.blockId(), activeLayer); + for (VoxelFace face : VoxelFace.values()) { + if (!isFaceVisible(voxel, face, activeLayer, occupied)) { + continue; + } + ProjectedPoint[] points = facePoints(voxel.x(), voxel.y(), voxel.z(), face, view); + double depth = (points[0].depth() + points[1].depth() + points[2].depth() + points[3].depth()) / 4.0D; + faces.add(new RenderedFace(points[0], points[1], points[2], points[3], depth, shadeColor(baseColor, face.shade()), textureTint(activeLayer, face.shade()), spriteFor(voxel.blockId()), voxel, face)); + } + } + + private boolean isFaceVisible(CachedVoxel voxel, VoxelFace face, boolean activeLayer, Set occupied) { + if (!isCameraFacing(face)) { + return false; + } + return !occupied.contains(cacheKey(voxel.x() + face.dx(), voxel.y() + face.dy(), voxel.z() + face.dz())); + } + + private ProjectedPoint[] facePoints(int x, int y, int z, VoxelFace face, Rect view) { + return switch (face) { + case TOP -> new ProjectedPoint[]{ + projectExact(x, y + 1.0D, z, view), + projectExact(x + 1.0D, y + 1.0D, z, view), + projectExact(x + 1.0D, y + 1.0D, z + 1.0D, view), + projectExact(x, y + 1.0D, z + 1.0D, view) + }; + case BOTTOM -> new ProjectedPoint[]{ + projectExact(x, y, z + 1.0D, view), + projectExact(x + 1.0D, y, z + 1.0D, view), + projectExact(x + 1.0D, y, z, view), + projectExact(x, y, z, view) + }; + case NORTH -> new ProjectedPoint[]{ + projectExact(x, y, z, view), + projectExact(x + 1.0D, y, z, view), + projectExact(x + 1.0D, y + 1.0D, z, view), + projectExact(x, y + 1.0D, z, view) + }; + case SOUTH -> new ProjectedPoint[]{ + projectExact(x + 1.0D, y, z + 1.0D, view), + projectExact(x, y, z + 1.0D, view), + projectExact(x, y + 1.0D, z + 1.0D, view), + projectExact(x + 1.0D, y + 1.0D, z + 1.0D, view) + }; + case WEST -> new ProjectedPoint[]{ + projectExact(x, y, z + 1.0D, view), + projectExact(x, y, z, view), + projectExact(x, y + 1.0D, z, view), + projectExact(x, y + 1.0D, z + 1.0D, view) + }; + case EAST -> new ProjectedPoint[]{ + projectExact(x + 1.0D, y, z, view), + projectExact(x + 1.0D, y, z + 1.0D, view), + projectExact(x + 1.0D, y + 1.0D, z + 1.0D, view), + projectExact(x + 1.0D, y + 1.0D, z, view) + }; + }; + } + + private Set occupiedKeys() { + Set occupied = new HashSet<>(cachedVoxels.size() * 2); + for (CachedVoxel voxel : cachedVoxels) { + occupied.add(cacheKey(voxel.x(), voxel.y(), voxel.z())); + } + return occupied; + } + + private boolean isCameraFacing(VoxelFace face) { + double cosYaw = Math.cos(yaw); + double sinYaw = Math.sin(yaw); + double cosPitch = Math.cos(pitch); + double sinPitch = Math.sin(pitch); + double z1 = face.dx() * sinYaw + face.dz() * cosYaw; + double depth = face.dy() * sinPitch + z1 * cosPitch; + return depth > 0.001D; + } + + private void drawGrid(GuiGraphicsExtractor graphics, Rect view) { + int gridColor = 0x556B7897; + for (int x = 0; x <= editor.width(); x++) { + ScreenPoint a = project(x, layer, 0, view); + ScreenPoint b = project(x, layer, editor.depth(), view); + drawLine(graphics, a.x(), a.y(), b.x(), b.y(), gridColor); + } + for (int z = 0; z <= editor.depth(); z++) { + ScreenPoint a = project(0, layer, z, view); + ScreenPoint b = project(editor.width(), layer, z, view); + drawLine(graphics, a.x(), a.y(), b.x(), b.y(), gridColor); + } + if (hoverX >= 0 && hoverY >= 0 && hoverZ >= 0) { + ScreenPoint p = project(hoverX + 0.5D, hoverY + 0.06D, hoverZ + 0.5D, view); + int size = Math.max(5, (int) Math.round(voxelScale(view) * 0.2D)); + graphics.fill(p.x() - size, p.y() - size, p.x() + size + 1, p.y() + size + 1, 0x66FFFFFF); + } + } + + private void drawVoxels(GuiGraphicsExtractor graphics, Rect view) { + for (RenderedFace face : visibleFaces(view, false)) { + drawFaceOutline(graphics, face.a(), face.b(), face.c(), face.d(), face.fallbackColor()); + } + } + + private void drawLayerSlider(GuiGraphicsExtractor graphics) { + Rect slider = layerSlider(); + graphics.fill(slider.x(), slider.y(), slider.right(), slider.bottom(), 0xAA000000); + int max = Math.max(1, editor.height() - 1); + int thumbY = slider.bottom() - 8 - (slider.h() - 16) * layer / max; + graphics.fill(slider.x() + 2, thumbY, slider.right() - 2, thumbY + 8, 0xFFCED8EA); + } + + private void applyAtMouse(double mouseX, double mouseY) { + StudioVoxelEditor.Tool activeTool = activeTool(); + PaintTarget target = paintTargetAt(mouseX, mouseY); + if (target == null) { + return; + } + if (activeTool == StudioVoxelEditor.Tool.PIPETTE) { + String sampled = editor.blockAt(target.sourceX(), target.sourceY(), target.sourceZ()); + if (sampled != null && !sampled.isBlank()) { + selectedBlockId = sampled; + selectedPaletteIndex = paletteIds.indexOf(selectedBlockId); + colorByBlock.putIfAbsent(sampled, fallbackColor(sampled)); + } + return; + } + if (activeTool != StudioVoxelEditor.Tool.REMOVE && (selectedBlockId == null || selectedBlockId.isBlank())) { + showClientMessage("Selectionne un bloc de palette."); + return; + } + VoxelProjectMemory before = editor.export(); + if (activeTool == StudioVoxelEditor.Tool.REMOVE) { + editor.remove(target.sourceX(), target.sourceY(), target.sourceZ()); + } else { + editor.apply(activeTool, target.editX(), target.editY(), target.editZ(), selectedBlockId); + } + finishMutation(before); + } + + private StudioVoxelEditor.Tool activeTool() { + return temporaryRemoving ? StudioVoxelEditor.Tool.REMOVE : tool; + } + + private boolean dragPaints(StudioVoxelEditor.Tool activeTool) { + return activeTool == StudioVoxelEditor.Tool.BRUSH || activeTool == StudioVoxelEditor.Tool.REMOVE; + } + + private void updateHover(double mouseX, double mouseY) { + PaintTarget target = paintTargetAt(mouseX, mouseY); + hoverHit = target == null ? null : target.hit(); + hoverX = target == null ? -1 : target.editX(); + hoverY = target == null ? -1 : target.editY(); + hoverZ = target == null ? -1 : target.editZ(); + } + + private PaintTarget paintTargetAt(double mouseX, double mouseY) { + FaceHit hit = faceAt(mouseX, mouseY); + if (hit != null) { + StudioVoxelEditor.Tool activeTool = activeTool(); + if (activeTool == StudioVoxelEditor.Tool.REMOVE || activeTool == StudioVoxelEditor.Tool.PIPETTE) { + return PaintTarget.source(hit); + } + PaintTarget adjacent = PaintTarget.adjacent(hit); + if (inEditorBounds(adjacent.editX(), adjacent.editY(), adjacent.editZ())) { + return adjacent; + } + return null; + } + CellTarget fallback = cellAt(mouseX, mouseY); + return fallback == null ? null : PaintTarget.layer(fallback.x(), layer, fallback.z()); + } + + private FaceHit faceAt(double mouseX, double mouseY) { + Rect view = viewport(); + if (!inside(mouseX, mouseY, view)) { + return null; + } + List faces = visibleFaces(view, false); + for (int i = faces.size() - 1; i >= 0; i--) { + RenderedFace face = faces.get(i); + if (pointInQuad(mouseX, mouseY, face.a(), face.b(), face.c(), face.d())) { + CachedVoxel voxel = face.voxel(); + return new FaceHit(voxel.x(), voxel.y(), voxel.z(), face.face(), face.depth()); + } + } + return null; + } + + private boolean pointInQuad(double x, double y, ProjectedPoint a, ProjectedPoint b, ProjectedPoint c, ProjectedPoint d) { + return pointInTriangle(x, y, a, b, c) || pointInTriangle(x, y, a, c, d); + } + + private boolean pointInTriangle(double x, double y, ProjectedPoint a, ProjectedPoint b, ProjectedPoint c) { + double d1 = triangleSign(x, y, a, b); + double d2 = triangleSign(x, y, b, c); + double d3 = triangleSign(x, y, c, a); + boolean hasNegative = d1 < -0.001D || d2 < -0.001D || d3 < -0.001D; + boolean hasPositive = d1 > 0.001D || d2 > 0.001D || d3 > 0.001D; + return !(hasNegative && hasPositive); + } + + private double triangleSign(double x, double y, ProjectedPoint a, ProjectedPoint b) { + return (x - b.x()) * (a.y() - b.y()) - (a.x() - b.x()) * (y - b.y()); + } + + private boolean inEditorBounds(int x, int y, int z) { + return x >= 0 && x < editor.width() && y >= 0 && y < editor.height() && z >= 0 && z < editor.depth(); + } + + private CellTarget cellAt(double mouseX, double mouseY) { + Rect view = viewport(); + if (!inside(mouseX, mouseY, view)) { + return null; + } + double bestDistance = Double.MAX_VALUE; + int bestX = -1; + int bestZ = -1; + double threshold = Math.pow(Math.max(8.0D, voxelScale(view) * 0.72D), 2); + for (int x = 0; x < editor.width(); x++) { + for (int z = 0; z < editor.depth(); z++) { + ScreenPoint point = project(x + 0.5D, layer + 0.04D, z + 0.5D, view); + double dx = point.x() - mouseX; + double dy = point.y() - mouseY; + double distance = dx * dx + dy * dy; + if (distance < bestDistance) { + bestDistance = distance; + bestX = x; + bestZ = z; + } + } + } + return bestDistance <= threshold ? new CellTarget(bestX, bestZ) : null; + } + + private ProjectedPoint projectExact(double x, double y, double z, Rect view) { + double centeredX = x - editor.width() / 2.0D; + double centeredY = y - editor.height() / 2.0D; + double centeredZ = z - editor.depth() / 2.0D; + double cosYaw = Math.cos(yaw); + double sinYaw = Math.sin(yaw); + double x1 = centeredX * cosYaw - centeredZ * sinYaw; + double z1 = centeredX * sinYaw + centeredZ * cosYaw; + double cosPitch = Math.cos(pitch); + double sinPitch = Math.sin(pitch); + double y1 = centeredY * cosPitch - z1 * sinPitch; + double z2 = centeredY * sinPitch + z1 * cosPitch; + double scale = voxelScale(view); + float sx = (float) (view.x() + view.w() / 2.0D + panX + x1 * scale); + float sy = (float) (view.y() + view.h() / 2.0D + panY - y1 * scale); + return new ProjectedPoint(sx, sy, z2); + } + + private ScreenPoint project(double x, double y, double z, Rect view) { + ProjectedPoint point = projectExact(x, y, z, view); + return new ScreenPoint(Math.round(point.x()), Math.round(point.y()), point.depth()); + } + + private double voxelScale(Rect view) { + int maxDimension = Math.max(editor.width(), Math.max(editor.height(), editor.depth())); + return Math.max(7.0D, Math.min(view.w(), view.h()) / Math.max(6.0D, maxDimension * 1.4D) * zoom); + } + + private void setLayerFromMouse(double mouseY) { + Rect slider = layerSlider(); + double normal = 1.0D - (mouseY - slider.y() - 4) / Math.max(1.0D, slider.h() - 8); + setLayer((int) Math.round(normal * Math.max(0, editor.height() - 1))); + } + + private void setLayer(int nextLayer) { + layer = Math.max(0, Math.min(editor.height() - 1, nextLayer)); + } + + private void selectPaletteAt(double mouseX, double mouseY) { + Rect grid = paletteGrid(); + int cell = Math.max(8, Math.min(grid.w(), grid.h()) / PALETTE_GRID_SIZE); + int size = cell * PALETTE_GRID_SIZE; + int startX = grid.x() + (grid.w() - size) / 2; + int col = ((int) mouseX - startX) / cell; + int row = ((int) mouseY - grid.y()) / cell; + if (col < 0 || col >= PALETTE_GRID_SIZE || row < 0 || row >= PALETTE_GRID_SIZE) { + return; + } + saturation = clamp01(col / 8.0D); + lightness = clamp01(1.0D - row / 8.0D); + int index = row * PALETTE_GRID_SIZE + col; + if (index >= 0 && index < paletteIds.size()) { + selectedPaletteIndex = index; + selectedBlockId = paletteIds.get(index); + } + } + + private void applyDimensions() { + int nextWidth = clampDimension(parseInt(widthBox.getValue(), editor.width())); + int nextHeight = clampDimension(parseInt(heightBox.getValue(), editor.height())); + int nextDepth = clampDimension(parseInt(depthBox.getValue(), editor.depth())); + VoxelProjectMemory before = editor.export(); + editor.resize(nextWidth, nextHeight, nextDepth); + finishMutation(before); + syncDimensions(); + } + + private void saveProject() { + applyDimensions(); + editor.setName(nameBox.getValue()); + VoxelProjectMemory project = editor.toProject(createdTick, updatedTick); + if (ClientPlayNetworking.canSend(BlocodexVoxelProjectSavePayload.TYPE)) { + ClientPlayNetworking.send(new BlocodexVoxelProjectSavePayload(project)); + showClientMessage("Projet Studio sauvegarde."); + } + } + + private void undo() { + if (undoStack.isEmpty()) { + return; + } + redoStack.push(editor.export()); + editor.replaceProject(undoStack.pop()); + syncDimensions(); + voxelCacheDirty = true; + } + + private void redo() { + if (redoStack.isEmpty()) { + return; + } + undoStack.push(editor.export()); + editor.replaceProject(redoStack.pop()); + syncDimensions(); + voxelCacheDirty = true; + } + + private void finishMutation(VoxelProjectMemory before) { + VoxelProjectMemory after = editor.export(); + if (sameEditableState(before, after)) { + return; + } + undoStack.push(before); + while (undoStack.size() > HISTORY_LIMIT) { + undoStack.removeLast(); + } + redoStack.clear(); + voxelCacheDirty = true; + } + + private boolean sameEditableState(VoxelProjectMemory first, VoxelProjectMemory second) { + return first.width() == second.width() + && first.height() == second.height() + && first.depth() == second.depth() + && first.cells().equals(second.cells()); + } + + private void syncDimensions() { + widthBox.setValue(Integer.toString(editor.width())); + heightBox.setValue(Integer.toString(editor.height())); + depthBox.setValue(Integer.toString(editor.depth())); + setLayer(layer); + } + + private void requestPalette() { + try { + if (ClientPlayNetworking.canSend(BlocodexStudioPaletteRequestPayload.TYPE)) { + String query = paletteSearchBox == null ? "" : paletteSearchBox.getValue(); + ClientPlayNetworking.send(new BlocodexStudioPaletteRequestPayload(query, hue, saturation, lightness)); + } + } catch (IllegalStateException ignored) { + // Channels can be unavailable during screen opening or disconnect. + } + } + + private void queuePaletteRequest(boolean immediate) { + paletteRequestDirty = true; + paletteRequestCooldown = immediate ? 0 : 6; + } + + private void closeToParent() { + if (minecraft != null) { + minecraft.setScreen(parent); + } + } + + private void showClientMessage(String message) { + if (minecraft != null && minecraft.player != null) { + minecraft.player.sendOverlayMessage(Component.literal(message)); + } + } + + private int colorFor(String blockId, boolean activeLayer) { + int color = colorByBlock.computeIfAbsent(blockId, this::fallbackColor); + if (activeLayer) { + return 0xFF000000 | (color & 0x00FFFFFF); + } + return 0xFF000000 | darken(color & 0x00FFFFFF, 28); + } + + private int shadeColor(int color, int amount) { + int alpha = color & 0xFF000000; + int rgb = color & 0x00FFFFFF; + return alpha | (amount >= 0 ? lighten(rgb, amount) : darken(rgb, -amount)); + } + + private int textureTint(boolean activeLayer, int amount) { + int shade = Math.min(0, amount); + int rgb = shade < 0 ? darken(0xFFFFFF, -shade) : 0xFFFFFF; + if (!activeLayer) { + rgb = darken(rgb, 22); + } + return 0xFF000000 | rgb; + } + + private TextureAtlasSprite spriteFor(String blockId) { + return spriteByBlock.computeIfAbsent(blockId == null ? "" : blockId, this::loadBlockSprite); + } + + private TextureAtlasSprite loadBlockSprite(String blockId) { + Identifier identifier = Identifier.tryParse(blockId == null ? "" : blockId); + if (identifier != null) { + Optional block = BuiltInRegistries.BLOCK.getOptional(identifier); + if (block.isPresent() && minecraft != null) { + return minecraft.getModelManager() + .getBlockStateModelSet() + .getParticleMaterial(block.get().defaultBlockState()) + .sprite(); + } + } + if (minecraft != null) { + AbstractTexture texture = minecraft.getTextureManager().getTexture(TextureAtlas.LOCATION_BLOCKS); + if (texture instanceof TextureAtlas atlas) { + return atlas.missingSprite(); + } + } + return null; + } + + private int fallbackColor(String blockId) { + int hash = blockId == null ? 0 : blockId.hashCode(); + int r = 80 + Math.floorMod(hash, 120); + int g = 80 + Math.floorMod(hash >> 8, 120); + int b = 80 + Math.floorMod(hash >> 16, 120); + return 0xFF000000 | (r << 16) | (g << 8) | b; + } + + private void rebuildVoxelCacheIfNeeded() { + if (!voxelCacheDirty) { + return; + } + cachedVoxels.clear(); + for (Map.Entry entry : editor.cells().entrySet()) { + var pos = VoxelProjectPlacement.parseCell(entry.getKey()); + if (pos != null) { + cachedVoxels.add(new CachedVoxel(pos.getX(), pos.getY(), pos.getZ(), entry.getValue())); + } + } + cachedVoxels.sort(Comparator.comparingInt(CachedVoxel::y).thenComparingInt(CachedVoxel::z).thenComparingInt(CachedVoxel::x)); + voxelCacheDirty = false; + } + + private void setHueFromMouse(double mouseY) { + Rect slider = hueSlider(); + double normal = (mouseY - slider.y()) / Math.max(1.0D, slider.h()); + hue = Math.floorMod((int) Math.round(normal * 359.0D), 360); + queuePaletteRequest(false); + } + + private void appendHueSlider(StudioViewportRenderState.Builder builder) { + Rect slider = hueSlider(); + int segments = Math.max(1, Math.min(slider.h(), 90)); + for (int segment = 0; segment < segments; segment++) { + int y0 = slider.y() + slider.h() * segment / segments; + int y1 = slider.y() + slider.h() * (segment + 1) / segments; + double normal = segment / Math.max(1.0D, segments - 1.0D); + int color = hslPreviewColor((int) Math.round(normal * 359.0D), 1.0D, 0.52D); + builder.rect(slider.x(), y0, slider.right(), Math.max(y0 + 1, y1), color); + } + int thumbY = slider.y() + (slider.h() - 4) * hue / 359; + builder.rect(slider.x() - 2, thumbY, slider.right() + 2, thumbY + 4, 0xFFFFFFFF); + } + + private void drawHueSlider(GuiGraphicsExtractor graphics) { + Rect slider = hueSlider(); + for (int y = slider.y(); y < slider.bottom(); y++) { + double normal = (y - slider.y()) / Math.max(1.0D, slider.h() - 1); + int color = hslPreviewColor((int) Math.round(normal * 359.0D), 1.0D, 0.52D); + graphics.fill(slider.x(), y, slider.right(), y + 1, color); + } + int thumbY = slider.y() + (slider.h() - 4) * hue / 359; + graphics.fill(slider.x() - 2, thumbY, slider.right() + 2, thumbY + 4, 0xFFFFFFFF); + } + + private int hslPreviewColor(int hue, double saturation, double lightness) { + double chroma = (1.0D - Math.abs(2.0D * lightness - 1.0D)) * saturation; + double h = hue / 60.0D; + double x = chroma * (1.0D - Math.abs(h % 2.0D - 1.0D)); + double r1; + double g1; + double b1; + if (h < 1.0D) { + r1 = chroma; + g1 = x; + b1 = 0.0D; + } else if (h < 2.0D) { + r1 = x; + g1 = chroma; + b1 = 0.0D; + } else if (h < 3.0D) { + r1 = 0.0D; + g1 = chroma; + b1 = x; + } else if (h < 4.0D) { + r1 = 0.0D; + g1 = x; + b1 = chroma; + } else if (h < 5.0D) { + r1 = x; + g1 = 0.0D; + b1 = chroma; + } else { + r1 = chroma; + g1 = 0.0D; + b1 = x; + } + double m = lightness - chroma / 2.0D; + int r = (int) Math.round((r1 + m) * 255.0D); + int g = (int) Math.round((g1 + m) * 255.0D); + int b = (int) Math.round((b1 + m) * 255.0D); + return 0xFF000000 | (clampChannel(r) << 16) | (clampChannel(g) << 8) | clampChannel(b); + } + + private int clampChannel(int value) { + return Math.max(0, Math.min(255, value)); + } + + private int lighten(int rgb, int amount) { + int r = Math.min(255, ((rgb >> 16) & 0xFF) + amount); + int g = Math.min(255, ((rgb >> 8) & 0xFF) + amount); + int b = Math.min(255, (rgb & 0xFF) + amount); + return (r << 16) | (g << 8) | b; + } + + private int darken(int rgb, int amount) { + int r = Math.max(0, ((rgb >> 16) & 0xFF) - amount); + int g = Math.max(0, ((rgb >> 8) & 0xFF) - amount); + int b = Math.max(0, (rgb & 0xFF) - amount); + return (r << 16) | (g << 8) | b; + } + + private void drawLine(GuiGraphicsExtractor graphics, int x0, int y0, int x1, int y1, int color) { + int dx = x1 - x0; + int dy = y1 - y0; + int steps = Math.max(Math.abs(dx), Math.abs(dy)); + if (steps == 0) { + graphics.fill(x0, y0, x0 + 1, y0 + 1, color); + return; + } + for (int i = 0; i <= steps; i++) { + int x = x0 + dx * i / steps; + int y = y0 + dy * i / steps; + graphics.fill(x, y, x + 1, y + 1, color); + } + } + + private void appendFaceOutline(StudioViewportRenderState.Builder builder, ProjectedPoint a, ProjectedPoint b, ProjectedPoint c, ProjectedPoint d, int color) { + builder.line(Math.round(a.x()), Math.round(a.y()), Math.round(b.x()), Math.round(b.y()), 1, color); + builder.line(Math.round(b.x()), Math.round(b.y()), Math.round(c.x()), Math.round(c.y()), 1, color); + builder.line(Math.round(c.x()), Math.round(c.y()), Math.round(d.x()), Math.round(d.y()), 1, color); + builder.line(Math.round(d.x()), Math.round(d.y()), Math.round(a.x()), Math.round(a.y()), 1, color); + } + + private void drawFaceOutline(GuiGraphicsExtractor graphics, ProjectedPoint a, ProjectedPoint b, ProjectedPoint c, ProjectedPoint d, int color) { + drawLine(graphics, Math.round(a.x()), Math.round(a.y()), Math.round(b.x()), Math.round(b.y()), color); + drawLine(graphics, Math.round(b.x()), Math.round(b.y()), Math.round(c.x()), Math.round(c.y()), color); + drawLine(graphics, Math.round(c.x()), Math.round(c.y()), Math.round(d.x()), Math.round(d.y()), color); + drawLine(graphics, Math.round(d.x()), Math.round(d.y()), Math.round(a.x()), Math.round(a.y()), color); + } + + private static String cacheKey(int x, int y, int z) { + return x + "," + y + "," + z; + } + + private void drawPanel(GuiGraphicsExtractor graphics, Rect rect) { + graphics.fill(rect.x(), rect.y(), rect.right(), rect.bottom(), PANEL_COLOR); + graphics.fill(rect.x(), rect.y(), rect.right(), rect.y() + 1, PANEL_BORDER); + graphics.fill(rect.x(), rect.bottom() - 1, rect.right(), rect.bottom(), PANEL_BORDER); + graphics.fill(rect.x(), rect.y(), rect.x() + 1, rect.bottom(), PANEL_BORDER); + graphics.fill(rect.right() - 1, rect.y(), rect.right(), rect.bottom(), PANEL_BORDER); + } + + private void drawScaledFakeItem(GuiGraphicsExtractor graphics, ItemStack stack, int boxX, int boxY, int boxSize, int itemSize) { + if (stack.isEmpty() || boxSize <= 0 || itemSize <= 0) { + return; + } + + int clampedSize = Math.max(6, Math.min(itemSize, boxSize)); + float scale = clampedSize / 16.0F; + int x = boxX + (boxSize - clampedSize) / 2; + int y = boxY + (boxSize - clampedSize) / 2; + graphics.pose().pushMatrix(); + graphics.pose().translate(x, y); + graphics.pose().scale(scale, scale); + graphics.fakeItem(stack, 0, 0); + graphics.pose().popMatrix(); + } + + private ItemStack stackFor(String id) { + Identifier identifier = Identifier.tryParse(id == null ? "" : id); + if (identifier == null) { + return ItemStack.EMPTY; + } + + Optional item = BuiltInRegistries.ITEM.getOptional(identifier); + if (item.isPresent() && item.get() != Items.AIR) { + return new ItemStack(item.get()); + } + + Optional block = BuiltInRegistries.BLOCK.getOptional(identifier); + if (block.isPresent() && block.get().asItem() != Items.AIR) { + return new ItemStack(block.get().asItem()); + } + return ItemStack.EMPTY; + } + + private void drawScrollbar(GuiGraphicsExtractor graphics, int lineCount, Rect area, int rows, int offset) { + if (lineCount <= rows) { + return; + } + int trackX = area.right() - 5; + graphics.fill(trackX, area.y(), trackX + 3, area.bottom(), 0xAA000000); + int trackHeight = area.h(); + int thumbHeight = Math.max(14, trackHeight * rows / lineCount); + int maxScroll = Math.max(1, lineCount - rows); + int thumbY = area.y() + (trackHeight - thumbHeight) * offset / maxScroll; + graphics.fill(trackX, thumbY, trackX + 3, thumbY + thumbHeight, 0xFFCED8EA); + } + + private Rect topBar() { + return new Rect(12, 12, width - 24, TOP_HEIGHT - 16); + } + + private Rect leftPanel() { + return new Rect(12, TOP_HEIGHT, LEFT_WIDTH, Math.max(120, height - TOP_HEIGHT - 12)); + } + + private Rect viewportPanel() { + int x = leftPanel().right() + 10; + return new Rect(x, TOP_HEIGHT, Math.max(160, width - x - 12), Math.max(120, height - TOP_HEIGHT - 12)); + } + + private Rect viewport() { + Rect panel = viewportPanel(); + return new Rect(panel.x() + 8, panel.y() + 8, panel.w() - 28, panel.h() - 16); + } + + private Rect layerSlider() { + Rect view = viewport(); + return new Rect(view.right() + 6, view.y() + 28, 12, Math.max(40, view.h() - 56)); + } + + private Rect paletteGrid() { + Rect left = leftPanel(); + int top = left.y() + 154; + int available = Math.min(left.w() - 36, Math.max(72, left.bottom() - top - 42)); + int size = Math.max(72, Math.min(available, 189)); + return new Rect(left.x() + 10, top, size, size); + } + + private Rect hueSlider() { + Rect grid = paletteGrid(); + return new Rect(grid.right() + 8, grid.y(), 12, grid.h()); + } + + private boolean inside(double x, double y, Rect rect) { + return x >= rect.x() && x < rect.right() && y >= rect.y() && y < rect.bottom(); + } + + private static double clamp01(double value) { + return Math.max(0.0D, Math.min(1.0D, value)); + } + + private static int clampDimension(int value) { + return Math.max(1, Math.min(VoxelProjectValidator.MAX_DIMENSION, value)); + } + + private static int parseInt(String value, int fallback) { + try { + return Integer.parseInt(value); + } catch (NumberFormatException exception) { + return fallback; + } + } + + private static String percent(double value) { + return Integer.toString((int) Math.round(value * 100.0D)); + } + + private String trim(String text, int maxWidth) { + if (text == null || text.isBlank()) { + return ""; + } + if (font.width(text) <= maxWidth) { + return text; + } + String ellipsis = "..."; + int limit = Math.max(1, text.length() - 1); + while (limit > 1 && font.width(text.substring(0, limit) + ellipsis) > maxWidth) { + limit--; + } + return text.substring(0, limit) + ellipsis; + } + + private record Rect(int x, int y, int w, int h) { + private int right() { + return x + w; + } + + private int bottom() { + return y + h; + } + } + + private record ScreenPoint(int x, int y, double depth) { + } + + private record ProjectedPoint(float x, float y, double depth) { + } + + private record CellTarget(int x, int z) { + } + + private record FaceHit(int x, int y, int z, VoxelFace face, double depth) { + } + + private record PaintTarget(int sourceX, int sourceY, int sourceZ, int editX, int editY, int editZ, FaceHit hit) { + private static PaintTarget source(FaceHit hit) { + return new PaintTarget(hit.x(), hit.y(), hit.z(), hit.x(), hit.y(), hit.z(), hit); + } + + private static PaintTarget adjacent(FaceHit hit) { + return new PaintTarget( + hit.x(), + hit.y(), + hit.z(), + hit.x() + hit.face().dx(), + hit.y() + hit.face().dy(), + hit.z() + hit.face().dz(), + hit + ); + } + + private static PaintTarget layer(int x, int y, int z) { + return new PaintTarget(x, y, z, x, y, z, null); + } + } + + private record RenderedFace(ProjectedPoint a, ProjectedPoint b, ProjectedPoint c, ProjectedPoint d, double depth, int fallbackColor, int textureColor, TextureAtlasSprite sprite, CachedVoxel voxel, VoxelFace face) { + } + + private record CachedVoxel(int x, int y, int z, String blockId) { + } + + private enum VoxelFace { + TOP(0, 1, 0, 34), + BOTTOM(0, -1, 0, -48), + NORTH(0, 0, -1, -18), + SOUTH(0, 0, 1, -30), + WEST(-1, 0, 0, -10), + EAST(1, 0, 0, -38); + + private final int dx; + private final int dy; + private final int dz; + private final int shade; + + VoxelFace(int dx, int dy, int dz, int shade) { + this.dx = dx; + this.dy = dy; + this.dz = dz; + this.shade = shade; + } + + private int dx() { + return dx; + } + + private int dy() { + return dy; + } + + private int dz() { + return dz; + } + + private int shade() { + return shade; + } + } +} diff --git a/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/StudioGuiRenderAccess.java b/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/StudioGuiRenderAccess.java new file mode 100644 index 0000000..136dc14 --- /dev/null +++ b/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/StudioGuiRenderAccess.java @@ -0,0 +1,36 @@ +package dev.blocodex.client.gui; + +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.client.renderer.state.gui.GuiElementRenderState; +import net.minecraft.client.renderer.state.gui.GuiRenderState; + +import java.lang.reflect.Field; + +final class StudioGuiRenderAccess { + private static final Field GUI_RENDER_STATE_FIELD = guiRenderStateField(); + + private StudioGuiRenderAccess() { + } + + static boolean submit(GuiGraphicsExtractor graphics, GuiElementRenderState state) { + if (GUI_RENDER_STATE_FIELD == null) { + return false; + } + try { + ((GuiRenderState) GUI_RENDER_STATE_FIELD.get(graphics)).addGuiElement(state); + return true; + } catch (IllegalAccessException | ClassCastException exception) { + return false; + } + } + + private static Field guiRenderStateField() { + try { + Field field = GuiGraphicsExtractor.class.getDeclaredField("guiRenderState"); + field.setAccessible(true); + return field; + } catch (NoSuchFieldException | SecurityException exception) { + return null; + } + } +} diff --git a/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/StudioViewportRenderState.java b/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/StudioViewportRenderState.java new file mode 100644 index 0000000..1ef3df3 --- /dev/null +++ b/Gameplay/blocodex/src/client/java/dev/blocodex/client/gui/StudioViewportRenderState.java @@ -0,0 +1,181 @@ +package dev.blocodex.client.gui; + +import com.mojang.blaze3d.pipeline.RenderPipeline; +import com.mojang.blaze3d.vertex.VertexConsumer; +import net.minecraft.client.gui.navigation.ScreenRectangle; +import net.minecraft.client.gui.render.TextureSetup; +import net.minecraft.client.renderer.RenderPipelines; +import net.minecraft.client.renderer.state.gui.GuiElementRenderState; +import org.joml.Matrix3x2f; +import org.joml.Matrix3x2fc; + +import java.util.ArrayList; +import java.util.List; + +final class StudioViewportRenderState implements GuiElementRenderState { + private static final RenderPipeline DEFAULT_PIPELINE = RenderPipelines.GUI; + private static final TextureSetup DEFAULT_TEXTURE_SETUP = TextureSetup.noTexture(); + + private final Matrix3x2f pose; + private final List quads; + private final ScreenRectangle scissorArea; + private final ScreenRectangle bounds; + private final RenderPipeline pipeline; + private final TextureSetup textureSetup; + private final boolean textured; + + StudioViewportRenderState(Matrix3x2fc pose, List quads, ScreenRectangle scissorArea, RenderPipeline pipeline, TextureSetup textureSetup, boolean textured) { + this.pose = new Matrix3x2f(pose); + this.quads = List.copyOf(quads); + this.scissorArea = scissorArea; + this.bounds = bounds(quads, scissorArea); + this.pipeline = pipeline; + this.textureSetup = textureSetup; + this.textured = textured; + } + + @Override + public void buildVertices(VertexConsumer consumer) { + for (Quad quad : quads) { + addVertex(consumer, quad.x0(), quad.y0(), quad.u0(), quad.v0(), quad.color()); + addVertex(consumer, quad.x1(), quad.y1(), quad.u1(), quad.v1(), quad.color()); + addVertex(consumer, quad.x2(), quad.y2(), quad.u2(), quad.v2(), quad.color()); + addVertex(consumer, quad.x3(), quad.y3(), quad.u3(), quad.v3(), quad.color()); + } + } + + private void addVertex(VertexConsumer consumer, float x, float y, float u, float v, int color) { + VertexConsumer vertex = consumer.addVertexWith2DPose(pose, x, y); + if (textured) { + vertex.setUv(u, v); + } + vertex.setColor(color); + } + + @Override + public RenderPipeline pipeline() { + return pipeline; + } + + @Override + public TextureSetup textureSetup() { + return textureSetup; + } + + @Override + public ScreenRectangle scissorArea() { + return scissorArea; + } + + @Override + public ScreenRectangle bounds() { + return bounds; + } + + static Builder builder() { + return new Builder(DEFAULT_PIPELINE, DEFAULT_TEXTURE_SETUP, false); + } + + static Builder texturedBuilder(TextureSetup textureSetup) { + return new Builder(RenderPipelines.GUI_TEXTURED, textureSetup, true); + } + + private static ScreenRectangle bounds(List quads, ScreenRectangle fallback) { + if (quads.isEmpty()) { + return fallback; + } + int left = Integer.MAX_VALUE; + int top = Integer.MAX_VALUE; + int right = Integer.MIN_VALUE; + int bottom = Integer.MIN_VALUE; + for (Quad quad : quads) { + left = Math.min(left, (int) Math.floor(Math.min(Math.min(quad.x0(), quad.x1()), Math.min(quad.x2(), quad.x3())))); + top = Math.min(top, (int) Math.floor(Math.min(Math.min(quad.y0(), quad.y1()), Math.min(quad.y2(), quad.y3())))); + right = Math.max(right, (int) Math.ceil(Math.max(Math.max(quad.x0(), quad.x1()), Math.max(quad.x2(), quad.x3())))); + bottom = Math.max(bottom, (int) Math.ceil(Math.max(Math.max(quad.y0(), quad.y1()), Math.max(quad.y2(), quad.y3())))); + } + return new ScreenRectangle(left, top, Math.max(1, right - left), Math.max(1, bottom - top)); + } + + static final class Builder { + private final List quads = new ArrayList<>(); + private final RenderPipeline pipeline; + private final TextureSetup textureSetup; + private final boolean textured; + + private Builder(RenderPipeline pipeline, TextureSetup textureSetup, boolean textured) { + this.pipeline = pipeline; + this.textureSetup = textureSetup; + this.textured = textured; + } + + void rect(int x0, int y0, int x1, int y1, int color) { + if (x0 == x1 || y0 == y1 || (color >>> 24) == 0) { + return; + } + int left = Math.min(x0, x1); + int right = Math.max(x0, x1); + int top = Math.min(y0, y1); + int bottom = Math.max(y0, y1); + float rightEdge = Math.max(left + 1, right); + float bottomEdge = Math.max(top + 1, bottom); + quads.add(new Quad(left, top, 0.0F, 0.0F, left, bottomEdge, 0.0F, 0.0F, rightEdge, bottomEdge, 0.0F, 0.0F, rightEdge, top, 0.0F, 0.0F, color)); + } + + void line(int x0, int y0, int x1, int y1, int thickness, int color) { + if ((color >>> 24) == 0) { + return; + } + float dx = x1 - x0; + float dy = y1 - y0; + float length = (float) Math.sqrt(dx * dx + dy * dy); + if (length <= 0.001F) { + rect(x0, y0, x0 + Math.max(1, thickness), y0 + Math.max(1, thickness), color); + return; + } + float half = Math.max(1.0F, thickness) * 0.5F; + float nx = -dy / length * half; + float ny = dx / length * half; + quads.add(new Quad(x0 + nx, y0 + ny, 0.0F, 0.0F, x1 + nx, y1 + ny, 0.0F, 0.0F, x1 - nx, y1 - ny, 0.0F, 0.0F, x0 - nx, y0 - ny, 0.0F, 0.0F, color)); + } + + void quad(float x0, float y0, float x1, float y1, float x2, float y2, float x3, float y3, int color) { + quad(x0, y0, 0.0F, 0.0F, x1, y1, 0.0F, 0.0F, x2, y2, 0.0F, 0.0F, x3, y3, 0.0F, 0.0F, color); + } + + void texturedQuad(float x0, float y0, float x1, float y1, float x2, float y2, float x3, float y3, float u0, float v0, float u1, float v1, int color) { + quad(x0, y0, u0, v0, x1, y1, u1, v0, x2, y2, u1, v1, x3, y3, u0, v1, color); + } + + private void quad(float x0, float y0, float u0, float v0, float x1, float y1, float u1, float v1, float x2, float y2, float u2, float v2, float x3, float y3, float u3, float v3, int color) { + if ((color >>> 24) == 0) { + return; + } + if (signedArea(x0, y0, x1, y1, x2, y2, x3, y3) > 0.0F) { + quads.add(new Quad(x0, y0, u0, v0, x3, y3, u3, v3, x2, y2, u2, v2, x1, y1, u1, v1, color)); + } else { + quads.add(new Quad(x0, y0, u0, v0, x1, y1, u1, v1, x2, y2, u2, v2, x3, y3, u3, v3, color)); + } + } + + private float signedArea(float x0, float y0, float x1, float y1, float x2, float y2, float x3, float y3) { + return 0.5F * ( + x0 * y1 - y0 * x1 + + x1 * y2 - y1 * x2 + + x2 * y3 - y2 * x3 + + x3 * y0 - y3 * x0 + ); + } + + boolean isEmpty() { + return quads.isEmpty(); + } + + StudioViewportRenderState build(Matrix3x2fc pose, ScreenRectangle scissorArea) { + return new StudioViewportRenderState(pose, quads, scissorArea, pipeline, textureSetup, textured); + } + } + + private record Quad(float x0, float y0, float u0, float v0, float x1, float y1, float u1, float v1, float x2, float y2, float u2, float v2, float x3, float y3, float u3, float v3, int color) { + } +} diff --git a/Gameplay/blocodex/src/client/java/dev/blocodex/client/voxel/BlocodexBuildPlacementController.java b/Gameplay/blocodex/src/client/java/dev/blocodex/client/voxel/BlocodexBuildPlacementController.java new file mode 100644 index 0000000..6e3cc69 --- /dev/null +++ b/Gameplay/blocodex/src/client/java/dev/blocodex/client/voxel/BlocodexBuildPlacementController.java @@ -0,0 +1,422 @@ +package dev.blocodex.client.voxel; + +import com.mojang.blaze3d.platform.InputConstants; +import dev.blocodex.memory.VoxelProjectMemory; +import dev.blocodex.network.BlocodexPlaceVoxelProjectPayload; +import dev.blocodex.voxel.VoxelProjectPlacement; +import net.fabricmc.fabric.api.client.keymapping.v1.KeyMappingHelper; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.minecraft.client.KeyMapping; +import net.minecraft.client.Minecraft; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.gizmos.GizmoStyle; +import net.minecraft.gizmos.Gizmos; +import net.minecraft.gizmos.TextGizmo; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.Identifier; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.material.MapColor; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; +import org.lwjgl.glfw.GLFW; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; + +public final class BlocodexBuildPlacementController { + private static final double RAYCAST_DISTANCE = 128.0D; + private static final int BLUEPRINT_COLOR = 0xFF62D6A4; + private static final int DIRECT_COLOR = 0xFFFFC857; + private static final int CURRENT_COLOR = 0xFFB7F7FF; + private static final int MAX_PREVIEW_CELLS = 4096; + private static final Map BLOCK_COLOR_CACHE = new HashMap<>(); + private static KeyMapping rotate; + private static KeyMapping cancel; + private static KeyMapping confirm; + private static KeyMapping undo; + private static KeyMapping redo; + + private static VoxelProjectMemory activeProject; + private static Mode mode = Mode.BLUEPRINT; + private static BlockPos anchor; + private static Direction facing = Direction.NORTH; + private static boolean awaitingAnchor; + private static boolean previewVisible = true; + + private BlocodexBuildPlacementController() { + } + + public static void initialize() { + if (rotate != null && cancel != null && confirm != null) { + return; + } + rotate = KeyMappingHelper.registerKeyMapping(new KeyMapping( + "key.blocodex.rotate_blueprint", + InputConstants.Type.KEYSYM, + GLFW.GLFW_KEY_R, + KeyMapping.Category.INVENTORY + )); + cancel = KeyMappingHelper.registerKeyMapping(new KeyMapping( + "key.blocodex.cancel_blueprint", + InputConstants.Type.KEYSYM, + GLFW.GLFW_KEY_V, + KeyMapping.Category.INVENTORY + )); + confirm = KeyMappingHelper.registerKeyMapping(new KeyMapping( + "key.blocodex.confirm_blueprint", + InputConstants.Type.KEYSYM, + GLFW.GLFW_KEY_ENTER, + KeyMapping.Category.INVENTORY + )); + undo = KeyMappingHelper.registerKeyMapping(new KeyMapping( + "key.blocodex.undo_construction", + InputConstants.Type.KEYSYM, + GLFW.GLFW_KEY_Z, + KeyMapping.Category.INVENTORY + )); + redo = KeyMappingHelper.registerKeyMapping(new KeyMapping( + "key.blocodex.redo_construction", + InputConstants.Type.KEYSYM, + GLFW.GLFW_KEY_Y, + KeyMapping.Category.INVENTORY + )); + } + + public static void startBlueprint(VoxelProjectMemory project) { + start(project, Mode.BLUEPRINT); + } + + public static void startCreativeDirect(VoxelProjectMemory project) { + Minecraft client = Minecraft.getInstance(); + if (client.player != null && !client.player.isCreative()) { + client.player.sendOverlayMessage(Component.literal("Pose directe reservee au mode creatif.")); + return; + } + start(project, Mode.CREATIVE_DIRECT); + } + + public static void reset() { + activeProject = null; + anchor = null; + awaitingAnchor = false; + mode = Mode.BLUEPRINT; + previewVisible = true; + } + + public static boolean isConstructionActive() { + return activeProject != null; + } + + public static void togglePreviewVisibility(Minecraft client) { + if (activeProject == null || client.player == null) { + return; + } + previewVisible = !previewVisible; + client.player.sendOverlayMessage(Component.literal(previewVisible + ? "Apercu de construction affiche." + : "Apercu de construction cache. Appuie sur C pour le revoir.")); + } + + public static void onEndTick(Minecraft client) { + if (client.player == null || client.level == null) { + if (activeProject != null) { + reset(); + } + return; + } + + if (client.screen == null) { + while (undo != null && undo.consumeClick()) { + requestHistory(BlocodexPlaceVoxelProjectPayload.MODE_UNDO); + } + while (redo != null && redo.consumeClick()) { + requestHistory(BlocodexPlaceVoxelProjectPayload.MODE_REDO); + } + } + + if (activeProject == null) { + return; + } + + if (awaitingAnchor) { + anchor = resolvePreviewAnchor(client); + } + + if (client.screen == null) { + while (rotate != null && rotate.consumeClick()) { + if (awaitingAnchor) { + facing = facing.getClockWise(); + } + } + while (cancel != null && cancel.consumeClick()) { + reset(); + client.player.sendOverlayMessage(Component.literal("Blueprint annule.")); + } + while (awaitingAnchor && confirm != null && confirm.consumeClick()) { + if (anchor != null) { + confirmAnchor(anchor); + if (activeProject == null) { + return; + } + } + } + while (awaitingAnchor && client.options.keyUse.consumeClick()) { + if (anchor != null) { + confirmAnchor(anchor); + if (activeProject == null) { + return; + } + } + } + } + + if (previewVisible) { + render(client); + } + } + + public static InteractionResult confirmFromAttack(BlockPos pos, Direction face) { + if (face == null) { + return InteractionResult.PASS; + } + return confirmAnchor(pos.relative(face)); + } + + public static InteractionResult confirmFromUse(BlockHitResult hitResult) { + return confirmAnchor(hitResult.getBlockPos().relative(hitResult.getDirection())); + } + + public static InteractionResult confirmCurrentAnchor() { + if (anchor == null) { + return InteractionResult.PASS; + } + return confirmAnchor(anchor); + } + + private static void start(VoxelProjectMemory project, Mode nextMode) { + activeProject = project; + mode = nextMode; + awaitingAnchor = true; + anchor = null; + previewVisible = true; + Minecraft client = Minecraft.getInstance(); + if (client.player != null) { + facing = horizontal(client.player.getDirection()); + client.player.sendOverlayMessage(Component.literal(nextMode == Mode.CREATIVE_DIRECT + ? "Choisis l'ancre de pose directe." + : "Choisis l'ancre du blueprint.")); + } + } + + private static InteractionResult confirmAnchor(BlockPos selectedAnchor) { + if (activeProject == null || !awaitingAnchor) { + return InteractionResult.PASS; + } + anchor = selectedAnchor.immutable(); + awaitingAnchor = false; + Minecraft client = Minecraft.getInstance(); + if (mode == Mode.CREATIVE_DIRECT) { + if (ClientPlayNetworking.canSend(BlocodexPlaceVoxelProjectPayload.TYPE)) { + ClientPlayNetworking.send(new BlocodexPlaceVoxelProjectPayload( + activeProject.id(), + anchor, + facing, + BlocodexPlaceVoxelProjectPayload.MODE_CREATIVE_DIRECT + )); + } + reset(); + } else if (client.player != null) { + client.player.sendOverlayMessage(Component.literal("Blueprint actif: pose le bloc indique.")); + } + return InteractionResult.FAIL; + } + + private static void requestHistory(String action) { + if (ClientPlayNetworking.canSend(BlocodexPlaceVoxelProjectPayload.TYPE)) { + ClientPlayNetworking.send(new BlocodexPlaceVoxelProjectPayload( + "", + BlockPos.ZERO, + Direction.NORTH, + action + )); + } + } + + private static void render(Minecraft client) { + if (anchor == null || activeProject == null) { + return; + } + try (Gizmos.TemporaryCollection ignored = client.collectPerTickGizmos()) { + AABB box = projectBox(activeProject, anchor, facing); + int color = mode == Mode.CREATIVE_DIRECT ? DIRECT_COLOR : BLUEPRINT_COLOR; + Gizmos.cuboid(box, GizmoStyle.strokeAndFill(color, 2.0F, withAlpha(color, 0x18)), false).setAlwaysOnTop(); + renderProjectCells(client, activeProject, anchor, facing); + + Vec3 center = box.getCenter(); + String title = mode == Mode.CREATIVE_DIRECT ? "Pose creative: " + activeProject.name() : activeProject.name(); + Gizmos.billboardText(title, new Vec3(center.x, box.maxY + 1.25D, center.z), TextGizmo.Style.forColorAndCentered(color).withScale(0.78F)).setAlwaysOnTop(); + + if (awaitingAnchor) { + Gizmos.billboardText("Clic droit/Entree ancrer | R tourner | V annuler", new Vec3(center.x, box.maxY + 0.72D, center.z), TextGizmo.Style.forColorAndCentered(0xFFD3ECFF).withScale(0.58F)).setAlwaysOnTop(); + return; + } + + Progress progress = progress(client, activeProject, anchor, facing); + Gizmos.billboardText(progress.done() + " / " + progress.total(), new Vec3(center.x, box.maxY + 0.72D, center.z), TextGizmo.Style.forColorAndCentered(0xFFD3ECFF).withScale(0.62F)).setAlwaysOnTop(); + if (progress.current() != null) { + BlockPos pos = VoxelProjectPlacement.transform(activeProject, progress.current(), anchor, facing); + Gizmos.cuboid(new AABB(pos), GizmoStyle.strokeAndFill(CURRENT_COLOR, 2.8F, withAlpha(CURRENT_COLOR, 0x35)), false).setAlwaysOnTop(); + Gizmos.billboardText(shortId(progress.current().blockId()), new Vec3(pos.getX() + 0.5D, pos.getY() + 1.25D, pos.getZ() + 0.5D), TextGizmo.Style.forColorAndCentered(CURRENT_COLOR).withScale(0.55F)).setAlwaysOnTop(); + } else { + Gizmos.billboardText("Termine", new Vec3(center.x, box.maxY + 0.25D, center.z), TextGizmo.Style.forColorAndCentered(0xFF9CFFB6).withScale(0.72F)).setAlwaysOnTop(); + } + } + } + + private static Progress progress(Minecraft client, VoxelProjectMemory project, BlockPos anchor, Direction facing) { + List cells = VoxelProjectPlacement.orderedCells(project); + int done = 0; + VoxelProjectPlacement.Cell current = null; + for (VoxelProjectPlacement.Cell cell : cells) { + BlockPos worldPos = VoxelProjectPlacement.transform(project, cell, anchor, facing); + if (matches(client, worldPos, cell.blockId())) { + done++; + } else if (current == null) { + current = cell; + } + } + return new Progress(done, cells.size(), current); + } + + private static boolean matches(Minecraft client, BlockPos pos, String blockId) { + if (client.level == null) { + return false; + } + Identifier id = Identifier.tryParse(blockId); + if (id == null) { + return false; + } + Optional block = BuiltInRegistries.BLOCK.getOptional(id); + return block.isPresent() && client.level.getBlockState(pos).getBlock() == block.get(); + } + + private static void renderProjectCells(Minecraft client, VoxelProjectMemory project, BlockPos anchor, Direction facing) { + List cells = VoxelProjectPlacement.orderedCells(project); + int stride = Math.max(1, (int) Math.ceil(cells.size() / (double) MAX_PREVIEW_CELLS)); + for (int i = 0; i < cells.size(); i += stride) { + VoxelProjectPlacement.Cell cell = cells.get(i); + BlockPos pos = VoxelProjectPlacement.transform(project, cell, anchor, facing); + int color = blockPreviewColor(client, cell.blockId()); + Gizmos.cuboid(new AABB(pos), GizmoStyle.strokeAndFill(withAlpha(color, 0xB8), 0.25F, withAlpha(color, 0x48)), false).setAlwaysOnTop(); + } + } + + private static int blockPreviewColor(Minecraft client, String blockId) { + Integer cached = BLOCK_COLOR_CACHE.get(blockId); + if (cached != null) { + return cached; + } + Identifier id = Identifier.tryParse(blockId); + Block block = id == null ? Blocks.AIR : BuiltInRegistries.BLOCK.getOptional(id).orElse(Blocks.AIR); + int color = 0xFF7F7F7F; + if (block != Blocks.AIR && client.level != null) { + MapColor mapColor = block.defaultBlockState().getMapColor(client.level, BlockPos.ZERO); + color = 0xFF000000 | (mapColor.calculateARGBColor(MapColor.Brightness.NORMAL) & 0x00FFFFFF); + } + BLOCK_COLOR_CACHE.put(blockId, color); + return color; + } + + private static AABB projectBox(VoxelProjectMemory project, BlockPos anchor, Direction facing) { + List cells = VoxelProjectPlacement.orderedCells(project); + if (cells.isEmpty()) { + return new AABB(anchor); + } + int minX = Integer.MAX_VALUE; + int minY = Integer.MAX_VALUE; + int minZ = Integer.MAX_VALUE; + int maxX = Integer.MIN_VALUE; + int maxY = Integer.MIN_VALUE; + int maxZ = Integer.MIN_VALUE; + for (VoxelProjectPlacement.Cell cell : cells) { + BlockPos pos = VoxelProjectPlacement.transform(project, cell, anchor, facing); + minX = Math.min(minX, pos.getX()); + minY = Math.min(minY, pos.getY()); + minZ = Math.min(minZ, pos.getZ()); + maxX = Math.max(maxX, pos.getX()); + maxY = Math.max(maxY, pos.getY()); + maxZ = Math.max(maxZ, pos.getZ()); + } + return new AABB(minX, minY, minZ, maxX + 1, maxY + 1, maxZ + 1); + } + + private static Direction horizontal(Direction direction) { + if (direction == Direction.UP || direction == Direction.DOWN || direction == null) { + return Direction.NORTH; + } + return direction; + } + + private static BlockHitResult resolvePreviewHit(Minecraft client) { + if (client.level == null) { + return null; + } + Entity cameraEntity = client.getCameraEntity(); + if (cameraEntity == null) { + cameraEntity = client.player; + } + if (cameraEntity == null) { + return null; + } + Vec3 from = cameraEntity.getEyePosition(); + Vec3 to = from.add(cameraEntity.getViewVector(1.0F).scale(RAYCAST_DISTANCE)); + BlockHitResult hitResult = client.level.clip(new ClipContext(from, to, ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, cameraEntity)); + return hitResult.getType() == HitResult.Type.BLOCK ? hitResult : null; + } + + private static BlockPos resolvePreviewAnchor(Minecraft client) { + Entity cameraEntity = client.getCameraEntity(); + if (cameraEntity == null) { + cameraEntity = client.player; + } + if (cameraEntity == null) { + return anchor; + } + + BlockHitResult hit = resolvePreviewHit(client); + if (hit != null) { + return hit.getBlockPos().relative(hit.getDirection()).immutable(); + } + + Vec3 from = cameraEntity.getEyePosition(); + Vec3 to = from.add(cameraEntity.getViewVector(1.0F).scale(8.0D)); + return BlockPos.containing(to).immutable(); + } + + private static String shortId(String id) { + int split = id.indexOf(':'); + return split >= 0 ? id.substring(split + 1) : id; + } + + private static int withAlpha(int color, int alpha) { + return (alpha << 24) | (color & 0x00FFFFFF); + } + + private enum Mode { + BLUEPRINT, + CREATIVE_DIRECT + } + + private record Progress(int done, int total, VoxelProjectPlacement.Cell current) { + } +} diff --git a/Gameplay/blocodex/src/client/java/dev/blocodex/client/voxel/ClientVoxelProjectBuilder.java b/Gameplay/blocodex/src/client/java/dev/blocodex/client/voxel/ClientVoxelProjectBuilder.java new file mode 100644 index 0000000..b61fd01 --- /dev/null +++ b/Gameplay/blocodex/src/client/java/dev/blocodex/client/voxel/ClientVoxelProjectBuilder.java @@ -0,0 +1,744 @@ +package dev.blocodex.client.voxel; + +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import dev.blocodex.codex.WsmcCodexIndex; +import dev.blocodex.memory.VoxelProjectMemory; +import dev.blocodex.voxel.VoxelProjectPlacement; +import dev.blocodex.voxel.VoxelProjectValidator; +import net.minecraft.client.Minecraft; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.Identifier; +import net.minecraft.server.packs.resources.Resource; +import net.minecraft.server.packs.resources.ResourceManager; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.material.MapColor; +import net.minecraft.world.level.block.Block; + +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.IOException; +import java.io.InputStream; +import java.io.Reader; +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.Set; + +public final class ClientVoxelProjectBuilder { + private static final int GRID = 16; + private static final Map FALLBACK_CONCRETE_COLORS = Map.ofEntries( + Map.entry("minecraft:white_concrete", 0xF9FFFE), + Map.entry("minecraft:orange_concrete", 0xF9801D), + Map.entry("minecraft:magenta_concrete", 0xC74EBD), + Map.entry("minecraft:light_blue_concrete", 0x3AB3DA), + Map.entry("minecraft:yellow_concrete", 0xFED83D), + Map.entry("minecraft:lime_concrete", 0x80C71F), + Map.entry("minecraft:pink_concrete", 0xF38BAA), + Map.entry("minecraft:gray_concrete", 0x474F52), + Map.entry("minecraft:light_gray_concrete", 0x9D9D97), + Map.entry("minecraft:cyan_concrete", 0x169C9C), + Map.entry("minecraft:purple_concrete", 0x8932B8), + Map.entry("minecraft:blue_concrete", 0x3C44AA), + Map.entry("minecraft:brown_concrete", 0x835432), + Map.entry("minecraft:green_concrete", 0x5E7C16), + Map.entry("minecraft:red_concrete", 0xB02E26), + Map.entry("minecraft:black_concrete", 0x1D1D21) + ); + + private ClientVoxelProjectBuilder() { + } + + public enum BuildMode { + FACE("face", "Face"), + HOLLOW("hollow", "Vide"), + FULL("full", "Plein"); + + private final String id; + private final String label; + + BuildMode(String id, String label) { + this.id = id; + this.label = label; + } + + public String id() { + return id; + } + + public String label() { + return label; + } + + public BuildMode next() { + BuildMode[] values = values(); + return values[(ordinal() + 1) % values.length]; + } + } + + public static VoxelProjectMemory build(String entryId, String displayName) { + return build(entryId, displayName, BuildMode.FACE, List.of()); + } + + public static VoxelProjectMemory build(String entryId, String displayName, BuildMode mode) { + return build(entryId, displayName, mode, List.of()); + } + + public static VoxelProjectMemory build(String entryId, String displayName, BuildMode mode, List paletteBlockIds) { + Identifier id = Identifier.tryParse(entryId); + if (id == null) { + throw new IllegalArgumentException("Identifiant invalide: " + entryId); + } + + ResourceManager resources = Minecraft.getInstance().getResourceManager(); + ColorPalette colorPalette = ColorPalette.from(paletteBlockIds); + Optional block = BuiltInRegistries.BLOCK.getOptional(id); + if (block.isPresent()) { + return blockProject(resources, id, block.get(), displayName, mode == null ? BuildMode.FACE : mode, colorPalette); + } + + Optional item = BuiltInRegistries.ITEM.getOptional(id); + if (item.isPresent() && item.get() != Items.AIR) { + return itemProject(resources, id, displayName, colorPalette); + } + + throw new IllegalArgumentException("Entree non voxelisable pour l'instant: " + entryId); + } + + private static VoxelProjectMemory blockProject(ResourceManager resources, Identifier id, Block block, String displayName, BuildMode mode, ColorPalette colorPalette) { + String blockId = id.toString(); + if (!VoxelProjectValidator.isBuildableFullBlock(blockId)) { + throw new IllegalArgumentException("Bloc non constructible plein: " + blockId); + } + colorPalette.requireUsable(); + + Map cells = new LinkedHashMap<>(); + Set palette = new LinkedHashSet<>(); + Map textureCache = new LinkedHashMap<>(); + List models = blockModels(resources, id); + if (models.isEmpty()) { + addFallbackBlock(resources, id, cells, palette, textureCache, mode, colorPalette); + } else { + for (JsonObject model : models) { + JsonArray elements = array(model, "elements"); + if (elements.isEmpty()) { + addFallbackBlock(resources, id, cells, palette, textureCache, mode, colorPalette); + continue; + } + for (JsonElement element : elements) { + if (!element.isJsonObject()) { + continue; + } + addTexturedElement(resources, model, element.getAsJsonObject(), cells, palette, textureCache, mode, colorPalette); + } + } + } + if (cells.isEmpty()) { + throw new IllegalArgumentException("Aucun voxel opaque a generer: " + blockId); + } + + return new VoxelProjectMemory( + projectId(id, mode), + projectName(id, displayName, mode), + GRID, + GRID, + mode == BuildMode.FACE ? 1 : GRID, + List.copyOf(palette), + cells, + 0L, + System.currentTimeMillis() + ); + } + + private static VoxelProjectMemory itemProject(ResourceManager resources, Identifier id, String displayName, ColorPalette colorPalette) { + colorPalette.requireUsable(); + JsonObject itemModel = itemModel(resources, id); + JsonObject textures = object(itemModel, "textures"); + String textureRef = resolveTexture(textures, "#layer0"); + if (textureRef == null) { + textureRef = resolveTexture(textures, "#all"); + } + if (textureRef == null) { + textureRef = resolveTexture(textures, "#particle"); + } + if (textureRef == null) { + throw new IllegalArgumentException("Texture item introuvable: " + id); + } + + BufferedImage image = readTexture(resources, textureRef); + Map cells = new LinkedHashMap<>(); + Set palette = new LinkedHashSet<>(); + for (int x = 0; x < GRID; x++) { + for (int y = 0; y < GRID; y++) { + int sampleX = Math.min(image.getWidth() - 1, x * image.getWidth() / GRID); + int sampleY = Math.min(image.getHeight() - 1, y * image.getHeight() / GRID); + int argb = image.getRGB(sampleX, sampleY); + int alpha = (argb >>> 24) & 0xFF; + if (alpha < 24) { + continue; + } + String blockId = colorPalette.nearest(argb & 0xFFFFFF); + palette.add(blockId); + cells.put(VoxelProjectPlacement.cellKey(x, GRID - 1 - y, 0), blockId); + } + } + + if (cells.isEmpty()) { + throw new IllegalArgumentException("Aucun pixel opaque a voxeliser: " + id); + } + + return new VoxelProjectMemory( + projectId(id, BuildMode.FACE), + displayName == null || displayName.isBlank() ? title(id) : displayName, + GRID, + GRID, + 1, + List.copyOf(palette), + cells, + 0L, + System.currentTimeMillis() + ); + } + + private static List blockModels(ResourceManager resources, Identifier id) { + JsonObject blockstate = readJson(resources, Identifier.fromNamespaceAndPath(id.getNamespace(), "blockstates/" + id.getPath() + ".json")); + List refs = new ArrayList<>(); + JsonObject variants = object(blockstate, "variants"); + if (!variants.entrySet().isEmpty()) { + JsonElement first = variants.entrySet().iterator().next().getValue(); + addModelRefs(refs, first); + } + JsonArray multipart = array(blockstate, "multipart"); + for (JsonElement element : multipart) { + if (element.isJsonObject()) { + addModelRefs(refs, element.getAsJsonObject().get("apply")); + } + } + + List models = new ArrayList<>(); + for (String ref : refs) { + resolveModel(resources, ref, new LinkedHashSet<>()).ifPresent(models::add); + } + return models; + } + + private static JsonObject itemModel(ResourceManager resources, Identifier id) { + String modelRef = null; + Optional itemDefinition = maybeReadJson(resources, Identifier.fromNamespaceAndPath(id.getNamespace(), "items/" + id.getPath() + ".json")); + if (itemDefinition.isPresent()) { + JsonObject model = object(itemDefinition.get(), "model"); + if ("minecraft:model".equals(string(model, "type", ""))) { + modelRef = string(model, "model", null); + } + } + if (modelRef == null || modelRef.isBlank()) { + modelRef = id.getNamespace() + ":item/" + id.getPath(); + } + String resolvedModelRef = modelRef; + return resolveModel(resources, resolvedModelRef, new LinkedHashSet<>()) + .orElseThrow(() -> new IllegalArgumentException("Modele item introuvable: " + resolvedModelRef)); + } + + private static void addModelRefs(List refs, JsonElement element) { + if (element == null) { + return; + } + if (element.isJsonArray()) { + for (JsonElement child : element.getAsJsonArray()) { + addModelRefs(refs, child); + } + return; + } + if (!element.isJsonObject()) { + return; + } + String model = string(element.getAsJsonObject(), "model", ""); + if (!model.isBlank()) { + refs.add(model); + } + } + + private static Optional resolveModel(ResourceManager resources, String ref, Set seen) { + Ref split = splitRef(ref); + String key = split.namespace() + ":" + split.path(); + if (!seen.add(key)) { + return Optional.empty(); + } + + Optional maybeRaw = maybeReadJson(resources, Identifier.fromNamespaceAndPath(split.namespace(), "models/" + split.path() + ".json")); + if (maybeRaw.isEmpty()) { + return Optional.empty(); + } + + JsonObject raw = maybeRaw.get(); + JsonObject merged = new JsonObject(); + JsonObject textures = new JsonObject(); + String parent = string(raw, "parent", ""); + if (!parent.isBlank()) { + resolveModel(resources, parent, seen).ifPresent(parentModel -> { + copyObject(object(parentModel, "textures"), textures); + if (parentModel.has("elements")) { + merged.add("elements", parentModel.get("elements").deepCopy()); + } + }); + } + copyObject(object(raw, "textures"), textures); + merged.add("textures", textures); + if (raw.has("elements")) { + merged.add("elements", raw.get("elements").deepCopy()); + } + return Optional.of(merged); + } + + private static void addFallbackBlock(ResourceManager resources, Identifier id, Map cells, Set palette, Map textureCache, BuildMode mode, ColorPalette colorPalette) { + JsonObject model = new JsonObject(); + JsonObject textures = new JsonObject(); + textures.addProperty("all", id.getNamespace() + ":block/" + id.getPath()); + textures.addProperty("particle", "#" + "all"); + model.add("textures", textures); + JsonObject element = new JsonObject(); + element.add("from", coordsArray(0, 0, 0)); + element.add("to", coordsArray(GRID, GRID, GRID)); + JsonObject faces = new JsonObject(); + for (String face : List.of("north", "south", "east", "west", "up", "down")) { + JsonObject faceObject = new JsonObject(); + faceObject.addProperty("texture", "#all"); + faces.add(face, faceObject); + } + element.add("faces", faces); + addTexturedElement(resources, model, element, cells, palette, textureCache, mode, colorPalette); + } + + private static void addTexturedElement( + ResourceManager resources, + JsonObject model, + JsonObject element, + Map cells, + Set palette, + Map textureCache, + BuildMode mode, + ColorPalette colorPalette + ) { + int[] from = coords(element.get("from"), 0, true); + int[] to = coords(element.get("to"), GRID, false); + int startX = clamp(Math.min(from[0], to[0])); + int startY = clamp(Math.min(from[1], to[1])); + int startZ = clamp(Math.min(from[2], to[2])); + int endX = clamp(Math.max(from[0], to[0])); + int endY = clamp(Math.max(from[1], to[1])); + int endZ = clamp(Math.max(from[2], to[2])); + JsonObject faces = object(element, "faces"); + if (mode == BuildMode.FACE) { + addProjectedFace(resources, model, faces, startX, startY, startZ, endX, endY, endZ, cells, palette, textureCache, colorPalette); + return; + } + + for (int x = startX; x < endX; x++) { + for (int y = startY; y < endY; y++) { + for (int z = startZ; z < endZ; z++) { + if (mode == BuildMode.HOLLOW && !isBoundary(x, y, z, startX, startY, startZ, endX, endY, endZ)) { + continue; + } + String face = nearestFace(x, y, z, startX, startY, startZ, endX, endY, endZ); + String blockId = blockForFace(resources, model, faces, face, x, y, z, startX, startY, startZ, endX, endY, endZ, textureCache, colorPalette); + if (blockId != null) { + palette.add(blockId); + cells.put(VoxelProjectPlacement.cellKey(x, y, z), blockId); + } + } + } + } + } + + private static void addProjectedFace( + ResourceManager resources, + JsonObject model, + JsonObject faces, + int startX, + int startY, + int startZ, + int endX, + int endY, + int endZ, + Map cells, + Set palette, + Map textureCache, + ColorPalette colorPalette + ) { + String face = projectedFace(faces); + for (int x = startX; x < endX; x++) { + for (int y = startY; y < endY; y++) { + int sourceZ = face.equals("south") ? endZ - 1 : startZ; + String blockId = blockForFace(resources, model, faces, face, x, y, sourceZ, startX, startY, startZ, endX, endY, endZ, textureCache, colorPalette); + if (blockId != null) { + palette.add(blockId); + cells.put(VoxelProjectPlacement.cellKey(x, y, 0), blockId); + } + } + } + } + + private static String projectedFace(JsonObject faces) { + for (String face : List.of("north", "south", "east", "west", "up", "down")) { + if (faces.has(face)) { + return face; + } + } + return "north"; + } + + private static String blockForFace( + ResourceManager resources, + JsonObject model, + JsonObject faces, + String face, + int x, + int y, + int z, + int startX, + int startY, + int startZ, + int endX, + int endY, + int endZ, + Map textureCache, + ColorPalette colorPalette + ) { + JsonObject faceObject = object(faces, face); + String textureRef = faceTexture(model, faces, face); + if (textureRef == null) { + return null; + } + BufferedImage image = readTextureCached(resources, textureRef, textureCache); + int[] uv = uv(faceObject); + int[] faceUv = faceUv(face, x, y, z, startX, startY, startZ, endX, endY, endZ); + int argb = sampleTexture(image, uv, faceUv[0], faceUv[1]); + int alpha = (argb >>> 24) & 0xFF; + return alpha < 24 ? null : colorPalette.nearest(argb & 0xFFFFFF); + } + + private static String faceTexture(JsonObject model, JsonObject faces, String face) { + JsonObject textures = object(model, "textures"); + JsonObject faceObject = object(faces, face); + String ref = string(faceObject, "texture", ""); + String texture = resolveTexture(textures, ref); + if (texture != null) { + return texture; + } + for (String fallback : textureFallbacks(face)) { + texture = resolveTexture(textures, fallback); + if (texture != null) { + return texture; + } + } + return null; + } + + private static List textureFallbacks(String face) { + return switch (face) { + case "up" -> List.of("#up", "#top", "#end", "#all", "#side", "#particle"); + case "down" -> List.of("#down", "#bottom", "#end", "#all", "#side", "#particle"); + default -> List.of("#" + face, "#side", "#all", "#particle", "#top"); + }; + } + + private static int[] uv(JsonObject faceObject) { + JsonArray uv = array(faceObject, "uv"); + if (uv.size() >= 4) { + return new int[]{ + clampTexture((int) Math.floor(uv.get(0).getAsDouble())), + clampTexture((int) Math.floor(uv.get(1).getAsDouble())), + clampTexture((int) Math.ceil(uv.get(2).getAsDouble())), + clampTexture((int) Math.ceil(uv.get(3).getAsDouble())) + }; + } + return new int[]{0, 0, GRID, GRID}; + } + + private static int[] faceUv(String face, int x, int y, int z, int startX, int startY, int startZ, int endX, int endY, int endZ) { + int localX = scaleToGrid(x - startX, endX - startX); + int localY = scaleToGrid(y - startY, endY - startY); + int localZ = scaleToGrid(z - startZ, endZ - startZ); + return switch (face) { + case "south" -> new int[]{localX, GRID - 1 - localY}; + case "east" -> new int[]{localZ, GRID - 1 - localY}; + case "west" -> new int[]{GRID - 1 - localZ, GRID - 1 - localY}; + case "up" -> new int[]{localX, localZ}; + case "down" -> new int[]{localX, GRID - 1 - localZ}; + default -> new int[]{GRID - 1 - localX, GRID - 1 - localY}; + }; + } + + private static int sampleTexture(BufferedImage image, int[] uv, int uIndex, int vIndex) { + double uStart = uv[0]; + double vStart = uv[1]; + double uEnd = uv[2]; + double vEnd = uv[3]; + double u = uStart + (uIndex + 0.5D) * (uEnd - uStart) / GRID; + double v = vStart + (vIndex + 0.5D) * (vEnd - vStart) / GRID; + int sampleX = Math.max(0, Math.min(image.getWidth() - 1, (int) Math.floor(u * image.getWidth() / GRID))); + int sampleY = Math.max(0, Math.min(image.getHeight() - 1, (int) Math.floor(v * image.getHeight() / GRID))); + return image.getRGB(sampleX, sampleY); + } + + private static boolean isBoundary(int x, int y, int z, int startX, int startY, int startZ, int endX, int endY, int endZ) { + return x == startX || x == endX - 1 || y == startY || y == endY - 1 || z == startZ || z == endZ - 1; + } + + private static String nearestFace(int x, int y, int z, int startX, int startY, int startZ, int endX, int endY, int endZ) { + int bestDistance = z - startZ; + String best = "north"; + int south = endZ - 1 - z; + if (south < bestDistance) { + bestDistance = south; + best = "south"; + } + int west = x - startX; + if (west < bestDistance) { + bestDistance = west; + best = "west"; + } + int east = endX - 1 - x; + if (east < bestDistance) { + bestDistance = east; + best = "east"; + } + int down = y - startY; + if (down < bestDistance) { + bestDistance = down; + best = "down"; + } + int up = endY - 1 - y; + if (up < bestDistance) { + best = "up"; + } + return best; + } + + private static int[] coords(JsonElement element, int fallback, boolean min) { + if (element == null || !element.isJsonArray() || element.getAsJsonArray().size() < 3) { + return new int[]{fallback, fallback, fallback}; + } + JsonArray values = element.getAsJsonArray(); + return new int[]{ + clamp((int) (min ? Math.floor(values.get(0).getAsDouble()) : Math.ceil(values.get(0).getAsDouble()))), + clamp((int) (min ? Math.floor(values.get(1).getAsDouble()) : Math.ceil(values.get(1).getAsDouble()))), + clamp((int) (min ? Math.floor(values.get(2).getAsDouble()) : Math.ceil(values.get(2).getAsDouble()))) + }; + } + + private static JsonArray coordsArray(int x, int y, int z) { + JsonArray array = new JsonArray(); + array.add(x); + array.add(y); + array.add(z); + return array; + } + + private static BufferedImage readTextureCached(ResourceManager resources, String textureRef, Map cache) { + BufferedImage cached = cache.get(textureRef); + if (cached != null) { + return cached; + } + BufferedImage image = readTexture(resources, textureRef); + cache.put(textureRef, image); + return image; + } + + private static BufferedImage readTexture(ResourceManager resources, String textureRef) { + Ref split = splitRef(textureRef); + Identifier textureId = Identifier.fromNamespaceAndPath(split.namespace(), "textures/" + split.path() + ".png"); + Resource resource = resources.getResource(textureId) + .orElseThrow(() -> new IllegalArgumentException("Texture introuvable: " + textureRef)); + try (InputStream stream = resource.open()) { + BufferedImage image = ImageIO.read(stream); + if (image == null) { + throw new IllegalArgumentException("Texture illisible: " + textureRef); + } + return image; + } catch (IOException exception) { + throw new IllegalArgumentException("Texture illisible: " + textureRef, exception); + } + } + + private static JsonObject readJson(ResourceManager resources, Identifier id) { + return maybeReadJson(resources, id).orElseThrow(() -> new IllegalArgumentException("Asset introuvable: " + id)); + } + + private static Optional maybeReadJson(ResourceManager resources, Identifier id) { + Optional resource = resources.getResource(id); + if (resource.isEmpty()) { + return Optional.empty(); + } + try (Reader reader = resource.get().openAsReader()) { + JsonElement parsed = JsonParser.parseReader(reader); + return parsed.isJsonObject() ? Optional.of(parsed.getAsJsonObject()) : Optional.empty(); + } catch (IOException | IllegalStateException exception) { + return Optional.empty(); + } + } + + private static String resolveTexture(JsonObject textures, String ref) { + if (ref == null || ref.isBlank()) { + return null; + } + String current = ref; + Set seen = new LinkedHashSet<>(); + while (current.startsWith("#")) { + String key = current.substring(1); + if (!seen.add(key) || !textures.has(key) || !textures.get(key).isJsonPrimitive()) { + return null; + } + current = textures.get(key).getAsString(); + } + Ref split = splitRef(current); + return split.namespace() + ":" + split.path(); + } + + private static int fallbackColor(String blockId) { + Integer concrete = FALLBACK_CONCRETE_COLORS.get(blockId); + if (concrete != null) { + return concrete; + } + WsmcCodexIndex.WsmcEntry entry = WsmcCodexIndex.loadDefault().entry(blockId).orElse(null); + if (entry != null) { + return entry.primaryArgb() & 0xFFFFFF; + } + Identifier id = Identifier.tryParse(blockId); + if (id == null) { + return 0x7F7F7F; + } + Block block = BuiltInRegistries.BLOCK.getOptional(id).orElse(null); + if (block == null || Minecraft.getInstance().level == null) { + return 0x7F7F7F; + } + MapColor mapColor = block.defaultBlockState().getMapColor(Minecraft.getInstance().level, BlockPos.ZERO); + return mapColor.calculateARGBColor(MapColor.Brightness.NORMAL) & 0xFFFFFF; + } + + private static String nearestColor(int rgb, List entries) { + String best = entries.getFirst().blockId(); + long bestDistance = Long.MAX_VALUE; + int r = (rgb >> 16) & 0xFF; + int g = (rgb >> 8) & 0xFF; + int b = rgb & 0xFF; + for (PaletteEntry entry : entries) { + int color = entry.rgb(); + long dr = r - ((color >> 16) & 0xFF); + long dg = g - ((color >> 8) & 0xFF); + long db = b - (color & 0xFF); + long distance = dr * dr + dg * dg + db * db; + if (distance < bestDistance) { + bestDistance = distance; + best = entry.blockId(); + } + } + return best; + } + + private static JsonObject object(JsonObject object, String key) { + JsonElement element = object.get(key); + return element != null && element.isJsonObject() ? element.getAsJsonObject() : new JsonObject(); + } + + private static JsonArray array(JsonObject object, String key) { + JsonElement element = object.get(key); + return element != null && element.isJsonArray() ? element.getAsJsonArray() : new JsonArray(); + } + + private static String string(JsonObject object, String key, String fallback) { + JsonElement element = object.get(key); + return element != null && element.isJsonPrimitive() ? element.getAsString() : fallback; + } + + private static void copyObject(JsonObject source, JsonObject target) { + for (Map.Entry entry : source.entrySet()) { + target.add(entry.getKey(), entry.getValue().deepCopy()); + } + } + + private static int clamp(int value) { + return Math.max(0, Math.min(GRID, value)); + } + + private static int clampTexture(int value) { + return Math.max(0, Math.min(GRID, value)); + } + + private static int scaleToGrid(int value, int span) { + if (span <= 1) { + return 0; + } + return Math.max(0, Math.min(GRID - 1, value * GRID / span)); + } + + private static String projectId(Identifier id, BuildMode mode) { + return "asset/" + id.getNamespace() + "/" + id.getPath() + "/" + mode.id(); + } + + private static String projectName(Identifier id, String displayName, BuildMode mode) { + String base = displayName == null || displayName.isBlank() ? title(id) : displayName; + return base + " (" + mode.label() + ")"; + } + + private static String title(Identifier id) { + String[] parts = id.getPath().replace('/', '_').replace('_', ' ').split("\\s+"); + StringBuilder builder = new StringBuilder(); + for (String part : parts) { + if (part.isBlank()) { + continue; + } + if (!builder.isEmpty()) { + builder.append(' '); + } + builder.append(Character.toUpperCase(part.charAt(0))).append(part.substring(1)); + } + return builder.isEmpty() ? id.toString() : builder.toString(); + } + + private static Ref splitRef(String ref) { + String clean = ref == null ? "" : ref; + int split = clean.indexOf(':'); + if (split >= 0) { + return new Ref(clean.substring(0, split), clean.substring(split + 1)); + } + return new Ref("minecraft", clean); + } + + private record Ref(String namespace, String path) { + } + + private record ColorPalette(List entries) { + private static ColorPalette from(List blockIds) { + List entries = new ArrayList<>(); + Set seen = new LinkedHashSet<>(); + for (String blockId : blockIds == null ? List.of() : blockIds) { + if (blockId == null || blockId.isBlank() || !seen.add(blockId) || !VoxelProjectValidator.isOpaquePaletteBlock(blockId)) { + continue; + } + entries.add(new PaletteEntry(blockId, fallbackColor(blockId))); + } + return new ColorPalette(List.copyOf(entries)); + } + + private void requireUsable() { + if (entries.isEmpty()) { + throw new IllegalArgumentException("Palette Minecraft vide: decouvre des blocs ou utilise /blocodex cheat unlock_all."); + } + } + + private String nearest(int rgb) { + return nearestColor(rgb, entries); + } + } + + private record PaletteEntry(String blockId, int rgb) { + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/Blocodex.java b/Gameplay/blocodex/src/main/java/dev/blocodex/Blocodex.java new file mode 100644 index 0000000..67cab04 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/Blocodex.java @@ -0,0 +1,32 @@ +package dev.blocodex; + +import dev.blocodex.command.BlocodexCommands; +import dev.blocodex.codex.WsmcCodexIndex; +import dev.blocodex.network.BlocodexNetworking; +import dev.blocodex.registry.BlocodexBlocks; +import dev.blocodex.registry.BlocodexItems; +import dev.blocodex.server.BlocodexServerEvents; +import net.fabricmc.api.ModInitializer; +import net.minecraft.resources.Identifier; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class Blocodex implements ModInitializer { + public static final String MOD_ID = "blocodex"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + BlocodexItems.initialize(); + BlocodexBlocks.initialize(); + WsmcCodexIndex.loadDefault(); + BlocodexNetworking.register(); + BlocodexCommands.register(); + BlocodexServerEvents.register(); + LOGGER.info("Blocodex memory engine initialized."); + } + + public static Identifier id(String path) { + return Identifier.fromNamespaceAndPath(MOD_ID, path); + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/block/ComputerBlock.java b/Gameplay/blocodex/src/main/java/dev/blocodex/block/ComputerBlock.java new file mode 100644 index 0000000..5c1a0a2 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/block/ComputerBlock.java @@ -0,0 +1,50 @@ +package dev.blocodex.block; + +import com.mojang.serialization.MapCodec; +import dev.blocodex.network.BlocodexOpenComputerPayload; +import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.context.BlockPlaceContext; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.HorizontalDirectionalBlock; +import net.minecraft.world.level.block.state.BlockBehaviour; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.phys.BlockHitResult; + +public final class ComputerBlock extends HorizontalDirectionalBlock { + public static final MapCodec CODEC = simpleCodec(ComputerBlock::new); + + public ComputerBlock(BlockBehaviour.Properties properties) { + super(properties); + registerDefaultState(stateDefinition.any().setValue(FACING, Direction.NORTH)); + } + + @Override + protected MapCodec codec() { + return CODEC; + } + + @Override + public BlockState getStateForPlacement(BlockPlaceContext context) { + return defaultBlockState().setValue(FACING, context.getHorizontalDirection().getOpposite()); + } + + @Override + protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hit) { + if (player instanceof ServerPlayer serverPlayer) { + ServerPlayNetworking.send(serverPlayer, new BlocodexOpenComputerPayload()); + } + return InteractionResult.SUCCESS; + } + + @Override + protected void createBlockStateDefinition(StateDefinition.Builder builder) { + builder.add(FACING); + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/codex/WsmcCodexIndex.java b/Gameplay/blocodex/src/main/java/dev/blocodex/codex/WsmcCodexIndex.java new file mode 100644 index 0000000..0fcfdb4 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/codex/WsmcCodexIndex.java @@ -0,0 +1,394 @@ +package dev.blocodex.codex; + +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import dev.blocodex.Blocodex; + +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.Reader; +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Comparator; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; + +public final class WsmcCodexIndex { + private static final String RESOURCE_PATH = "/assets/blocodex/data/wsmc_snapshot_compact.json"; + private static volatile WsmcCodexIndex defaultIndex; + + private final String minecraftVersion; + private final Map entries; + private final Map typeCounts; + + private WsmcCodexIndex(String minecraftVersion, Map entries, Map typeCounts) { + this.minecraftVersion = minecraftVersion; + this.entries = Map.copyOf(entries); + this.typeCounts = Map.copyOf(typeCounts); + } + + public static WsmcCodexIndex loadDefault() { + WsmcCodexIndex loaded = defaultIndex; + if (loaded != null) { + return loaded; + } + + synchronized (WsmcCodexIndex.class) { + if (defaultIndex != null) { + return defaultIndex; + } + + try (InputStream stream = WsmcCodexIndex.class.getResourceAsStream(RESOURCE_PATH)) { + if (stream == null) { + Blocodex.LOGGER.warn("Blocodex WSMC asset not found: {}", RESOURCE_PATH); + defaultIndex = empty(); + return defaultIndex; + } + + try (Reader reader = new InputStreamReader(stream, StandardCharsets.UTF_8)) { + defaultIndex = fromReader(reader); + Blocodex.LOGGER.info("Loaded {} WSMC Blocodex entries for Minecraft {}.", defaultIndex.size(), defaultIndex.minecraftVersion()); + return defaultIndex; + } + } catch (IOException | IllegalStateException exception) { + Blocodex.LOGGER.warn("Could not load Blocodex WSMC asset.", exception); + defaultIndex = empty(); + return defaultIndex; + } + } + } + + public static WsmcCodexIndex fromReader(Reader reader) { + JsonObject root = JsonParser.parseReader(reader).getAsJsonObject(); + String minecraftVersion = string(root, "minecraft_version", ""); + Map typeCounts = new LinkedHashMap<>(); + JsonObject counts = object(root, "entry_type_counts"); + for (String type : List.of("block", "item", "mob")) { + typeCounts.put(type, integer(counts, type, 0)); + } + + Map entries = new LinkedHashMap<>(); + for (JsonElement element : array(root, "entries")) { + if (!element.isJsonObject()) { + continue; + } + WsmcEntry entry = entry(element.getAsJsonObject()); + if (!entry.id().isBlank()) { + entries.put(entry.id(), entry); + } + } + return new WsmcCodexIndex(minecraftVersion, entries, typeCounts); + } + + public static WsmcCodexIndex empty() { + return new WsmcCodexIndex("", Map.of(), Map.of("block", 0, "item", 0, "mob", 0)); + } + + public Optional entry(String id) { + return Optional.ofNullable(entries.get(id)); + } + + public Optional entityEntry(String id) { + WsmcEntry direct = entries.get(id); + if (direct != null && "mob".equals(direct.entryType())) { + return Optional.of(direct); + } + + WsmcEntry mobVariant = entries.get(id + "/mob"); + if (mobVariant != null && "mob".equals(mobVariant.entryType())) { + return Optional.of(mobVariant); + } + + String prefix = id + "/"; + return entries.values().stream() + .filter(entry -> "mob".equals(entry.entryType())) + .filter(entry -> entry.id().startsWith(prefix)) + .min(Comparator.comparingInt(WsmcCodexIndex::entityVariantRank).thenComparing(WsmcEntry::id)); + } + + public List entries(Collection ids) { + List found = new ArrayList<>(); + for (String id : ids) { + WsmcEntry entry = entries.get(id); + if (entry != null) { + found.add(entry); + } + } + found.sort(Comparator.comparing(WsmcEntry::id)); + return found; + } + + public List entries() { + return entries.values().stream() + .sorted(Comparator.comparing(WsmcEntry::id)) + .toList(); + } + + private static int entityVariantRank(WsmcEntry entry) { + if (entry.id().endsWith("/temperate")) { + return 0; + } + if (entry.id().endsWith("/mob")) { + return 1; + } + return 2; + } + + public int size() { + return entries.size(); + } + + public String minecraftVersion() { + return minecraftVersion; + } + + public Map typeCounts() { + return typeCounts; + } + + private static WsmcEntry entry(JsonObject object) { + JsonObject colors = object(object, "colors"); + List groups = new ArrayList<>(); + for (JsonElement element : array(colors, "color_groups")) { + if (!element.isJsonObject()) { + continue; + } + JsonObject group = element.getAsJsonObject(); + groups.add(new ColorGroup( + string(group, "hex", "#000000"), + number(group, "weight", 0.0D), + number(group, "saturation", -1.0D), + number(group, "lightness", -1.0D), + string(group, "hue_group", "neutral") + )); + } + + ColorProfile colorProfile = new ColorProfile( + string(colors, "primary", "#000000"), + string(colors, "dominant_hex", "#000000"), + string(colors, "average_hex", "#000000"), + string(colors, "hue_group", "neutral"), + number(colors, "saturation", -1.0D), + number(colors, "lightness", -1.0D), + strings(colors, "palette"), + groups, + string(colors, "source", "") + ); + + List history = new ArrayList<>(); + for (JsonElement element : array(object, "history")) { + if (!element.isJsonObject()) { + continue; + } + JsonObject note = element.getAsJsonObject(); + history.add(new HistoryNote( + string(note, "version", ""), + string(note, "status", ""), + string(note, "notes", "") + )); + } + + List relations = new ArrayList<>(); + for (JsonElement element : array(object, "relations")) { + if (!element.isJsonObject()) { + continue; + } + JsonObject relation = element.getAsJsonObject(); + relations.add(new Relation( + string(relation, "type", ""), + string(relation, "target", ""), + string(relation, "label", ""), + number(relation, "confidence", 0.0D) + )); + } + + return new WsmcEntry( + string(object, "id", ""), + string(object, "name", ""), + string(object, "entry_type", ""), + string(object, "description", ""), + history, + colorProfile, + string(object, "icon", ""), + string(object, "family", ""), + relations, + string(object, "category", "") + ); + } + + private static JsonObject object(JsonObject object, String key) { + JsonElement element = object.get(key); + return element != null && element.isJsonObject() ? element.getAsJsonObject() : new JsonObject(); + } + + private static JsonArray array(JsonObject object, String key) { + JsonElement element = object.get(key); + return element != null && element.isJsonArray() ? element.getAsJsonArray() : new JsonArray(); + } + + private static List strings(JsonObject object, String key) { + List values = new ArrayList<>(); + for (JsonElement element : array(object, key)) { + if (element.isJsonPrimitive()) { + values.add(element.getAsString()); + } + } + return values; + } + + private static String string(JsonObject object, String key, String fallback) { + JsonElement element = object.get(key); + return element != null && element.isJsonPrimitive() ? element.getAsString() : fallback; + } + + private static int integer(JsonObject object, String key, int fallback) { + JsonElement element = object.get(key); + return element != null && element.isJsonPrimitive() ? element.getAsInt() : fallback; + } + + private static double number(JsonObject object, String key, double fallback) { + JsonElement element = object.get(key); + return element != null && element.isJsonPrimitive() ? element.getAsDouble() : fallback; + } + + public record WsmcEntry( + String id, + String name, + String entryType, + String description, + List history, + ColorProfile colors, + String icon, + String family, + List relations, + String category + ) { + public WsmcEntry { + history = List.copyOf(history); + relations = List.copyOf(relations); + } + + public int primaryArgb() { + return hexToArgb(colors.primary()); + } + + public Hsl hsl() { + Hsl fromHex = rgbToHsl(primaryArgb()); + double saturation = normalized(colors.saturation()) ? colors.saturation() : fromHex.saturation(); + double lightness = normalized(colors.lightness()) ? colors.lightness() : fromHex.lightness(); + return new Hsl(fromHex.hue(), saturation, lightness); + } + + public double distanceToHsl(double hue, double saturation, double lightness) { + Hsl primary = hsl(); + double primaryDistance = hslDistance(primary, hue, saturation, lightness); + double groupDistance = colors.colorGroups().stream() + .mapToDouble(group -> group.distanceToHsl(hue, saturation, lightness)) + .min() + .orElse(primaryDistance); + return Math.min(primaryDistance, groupDistance * 0.85D + primaryDistance * 0.15D); + } + + public String displayName() { + return name.isBlank() ? id : name; + } + } + + public record ColorProfile( + String primary, + String dominantHex, + String averageHex, + String hueGroup, + double saturation, + double lightness, + List palette, + List colorGroups, + String source + ) { + public ColorProfile { + palette = List.copyOf(palette); + colorGroups = List.copyOf(colorGroups); + } + } + + public record ColorGroup(String hex, double weight, double saturation, double lightness, String hueGroup) { + private double distanceToHsl(double hue, double targetSaturation, double targetLightness) { + Hsl fromHex = rgbToHsl(hexToArgb(hex)); + double groupSaturation = normalized(saturation) ? saturation : fromHex.saturation(); + double groupLightness = normalized(lightness) ? lightness : fromHex.lightness(); + double distance = hslDistance(new Hsl(fromHex.hue(), groupSaturation, groupLightness), hue, targetSaturation, targetLightness); + return Math.max(0.0D, distance - Math.max(0.0D, weight) * 0.03D); + } + } + + public record HistoryNote(String version, String status, String notes) { + } + + public record Relation(String type, String target, String label, double confidence) { + } + + public record Hsl(double hue, double saturation, double lightness) { + } + + private static boolean normalized(double value) { + return value >= 0.0D && value <= 1.0D; + } + + private static int hexToArgb(String hex) { + if (hex == null || hex.isBlank()) { + return 0xFF000000; + } + String clean = hex.startsWith("#") ? hex.substring(1) : hex; + if (clean.length() != 6) { + return 0xFF000000; + } + try { + return 0xFF000000 | Integer.parseInt(clean, 16); + } catch (NumberFormatException ignored) { + return 0xFF000000; + } + } + + private static Hsl rgbToHsl(int argb) { + double red = ((argb >> 16) & 255) / 255.0D; + double green = ((argb >> 8) & 255) / 255.0D; + double blue = (argb & 255) / 255.0D; + double max = Math.max(red, Math.max(green, blue)); + double min = Math.min(red, Math.min(green, blue)); + double lightness = (max + min) / 2.0D; + double hue; + double saturation; + if (max == min) { + hue = 0.0D; + saturation = 0.0D; + } else { + double delta = max - min; + saturation = lightness > 0.5D ? delta / (2.0D - max - min) : delta / (max + min); + if (max == red) { + hue = (green - blue) / delta + (green < blue ? 6.0D : 0.0D); + } else if (max == green) { + hue = (blue - red) / delta + 2.0D; + } else { + hue = (red - green) / delta + 4.0D; + } + hue *= 60.0D; + } + return new Hsl(hue, saturation, lightness); + } + + private static double hslDistance(Hsl hsl, double hue, double saturation, double lightness) { + double hueDistance = Math.abs(hsl.hue() - hue); + hueDistance = Math.min(hueDistance, 360.0D - hueDistance) / 180.0D; + double saturationDistance = hsl.saturation() - saturation; + double lightnessDistance = hsl.lightness() - lightness; + return hueDistance * hueDistance * 1.4D + + saturationDistance * saturationDistance + + lightnessDistance * lightnessDistance * 1.15D; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/command/BlocodexCommands.java b/Gameplay/blocodex/src/main/java/dev/blocodex/command/BlocodexCommands.java new file mode 100644 index 0000000..f17897c --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/command/BlocodexCommands.java @@ -0,0 +1,262 @@ +package dev.blocodex.command; + +import com.mojang.brigadier.Command; +import com.mojang.brigadier.arguments.IntegerArgumentType; +import com.mojang.brigadier.arguments.StringArgumentType; +import com.mojang.brigadier.context.CommandContext; +import dev.blocodex.memory.BlocodexMemory; +import dev.blocodex.memory.BlocodexSavedData; +import dev.blocodex.memory.ChunkKey; +import dev.blocodex.memory.ChunkMemory; +import dev.blocodex.memory.MemoryMath; +import dev.blocodex.memory.PlayerMemory; +import dev.blocodex.memory.WorldMemory; +import dev.blocodex.server.BlocodexScanner; +import dev.blocodex.server.BlocodexUiSnapshots; +import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.Identifier; +import net.minecraft.server.permissions.Permissions; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.tags.TagKey; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.Item; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.FallingBlock; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.Set; +import java.util.stream.Collectors; + +public final class BlocodexCommands { + private BlocodexCommands() { + } + + public static void register() { + CommandRegistrationCallback.EVENT.register((dispatcher, registryAccess, environment) -> dispatcher.register( + Commands.literal("blocodex") + .then(Commands.literal("entry") + .then(Commands.argument("id", StringArgumentType.word()) + .executes(BlocodexCommands::showEntry))) + .then(Commands.literal("me") + .executes(BlocodexCommands::showPlayerMemory)) + .then(Commands.literal("world") + .executes(BlocodexCommands::showWorldMemory)) + .then(Commands.literal("chunk") + .executes(BlocodexCommands::showCurrentChunk) + .then(Commands.argument("dimension", StringArgumentType.word()) + .then(Commands.argument("x", IntegerArgumentType.integer()) + .then(Commands.argument("z", IntegerArgumentType.integer()) + .executes(BlocodexCommands::showSpecifiedChunk))))) + .then(Commands.literal("rescan") + .requires(source -> source.permissions().hasPermission(Permissions.COMMANDS_GAMEMASTER)) + .executes(context -> rescan(context, 1)) + .then(Commands.argument("radius", IntegerArgumentType.integer(0, 8)) + .executes(context -> rescan(context, IntegerArgumentType.getInteger(context, "radius"))))) + .then(Commands.literal("reset") + .requires(source -> source.permissions().hasPermission(Permissions.COMMANDS_GAMEMASTER)) + .executes(BlocodexCommands::resetMemory)) + .then(Commands.literal("cheat") + .requires(source -> source.permissions().hasPermission(Permissions.COMMANDS_GAMEMASTER)) + .then(Commands.literal("discover_all") + .executes(BlocodexCommands::cheatDiscoverAllBlocks)) + .then(Commands.literal("unlock_all") + .executes(BlocodexCommands::cheatDiscoverAllBlocks))) + )); + } + + private static int showEntry(CommandContext context) { + String rawId = StringArgumentType.getString(context, "id"); + Identifier id = Identifier.tryParse(rawId); + if (id == null) { + context.getSource().sendFailure(Component.literal("Invalid entry id: " + rawId)); + return 0; + } + + Optional block = BuiltInRegistries.BLOCK.getOptional(id); + Optional item = BuiltInRegistries.ITEM.getOptional(id); + if (block.isEmpty() && item.isEmpty()) { + context.getSource().sendFailure(Component.literal("No block or item registered as " + id)); + return 0; + } + + BlocodexMemory memory = BlocodexSavedData.get(context.getSource().getServer()).memory(); + send(context, "Blocodex entry: " + id); + block.ifPresent(value -> describeBlock(context.getSource(), memory, id.toString(), value)); + item.ifPresent(value -> describeItem(context.getSource(), id.toString(), value)); + return Command.SINGLE_SUCCESS; + } + + private static void describeBlock(CommandSourceStack source, BlocodexMemory memory, String id, Block block) { + Level level = source.getLevel(); + Vec3 position = source.getPosition(); + BlockPos pos = BlockPos.containing(position); + BlockState state = block.defaultBlockState(); + boolean collides = !state.getCollisionShape(level, pos).isEmpty(); + boolean fluid = !state.getFluidState().isEmpty(); + boolean gravity = block instanceof FallingBlock; + + Map biomeContexts = new LinkedHashMap<>(); + long chunkMatches = 0; + for (ChunkMemory chunk : memory.chunks().values()) { + if (chunk.blockCounts().containsKey(id)) { + chunkMatches++; + for (String biome : chunk.biomes()) { + MemoryMath.addCount(biomeContexts, biome, 1); + } + } + } + + String blockTags = block.builtInRegistryHolder().tags() + .map(TagKey::location) + .map(location -> "#" + location) + .sorted() + .limit(10) + .collect(Collectors.joining(", ")); + + send(source, "color: map=" + state.getMapColor(level, pos)); + send(source, "shape: collision=" + collides + ", solidRender=" + state.isSolidRender() + ", canOcclude=" + state.canOcclude()); + send(source, "properties: light=" + state.getLightEmission() + ", hardness=" + state.getDestroySpeed(level, pos) + ", fluid=" + fluid + ", gravity=" + gravity + ", redstone=" + state.isSignalSource()); + send(source, "context: chunks=" + chunkMatches + ", globalCount=" + memory.world().blockCounts().getOrDefault(id, 0L) + ", biomes=" + MemoryMath.topLine(biomeContexts, 5)); + send(source, "origin: blockTags=" + (blockTags.isBlank() ? "none" : blockTags) + ", recipes=deferred"); + } + + private static void describeItem(CommandSourceStack source, String id, Item item) { + String itemTags = item.builtInRegistryHolder().tags() + .map(TagKey::location) + .map(location -> "#" + location) + .sorted() + .limit(10) + .collect(Collectors.joining(", ")); + send(source, "item: " + item.getName(item.getDefaultInstance()).getString()); + send(source, "origin: itemTags=" + (itemTags.isBlank() ? "none" : itemTags) + ", recipes=deferred"); + } + + private static int showPlayerMemory(CommandContext context) throws com.mojang.brigadier.exceptions.CommandSyntaxException { + ServerPlayer player = context.getSource().getPlayerOrException(); + BlocodexMemory memory = BlocodexSavedData.get(context.getSource().getServer()).memory(); + PlayerMemory playerMemory = memory.player(player.getUUID().toString()); + send(context, "Blocodex player memory"); + send(context, "chunks=" + playerMemory.visitedChunks().size() + ", blocks=" + playerMemory.discoveredBlocks().size() + ", biomes=" + playerMemory.biomes().size()); + send(context, "top observed blocks: " + MemoryMath.topLine(playerMemory.observedBlockCounts(), 8)); + send(context, "top broken blocks: " + MemoryMath.topLine(playerMemory.brokenBlocks(), 8)); + send(context, "items=" + playerMemory.items().size() + ", entities=" + playerMemory.entities().size()); + return Command.SINGLE_SUCCESS; + } + + private static int showWorldMemory(CommandContext context) { + WorldMemory world = BlocodexSavedData.get(context.getSource().getServer()).memory().world(); + send(context, "Blocodex world memory (anonymous)"); + send(context, "observedChunks=" + world.observedChunks()); + send(context, "top blocks: " + MemoryMath.topLine(world.blockCounts(), 8)); + send(context, "top biomes: " + MemoryMath.topLine(world.biomeCounts(), 8)); + send(context, "dimensions: " + MemoryMath.topLine(world.dimensionCounts(), 8)); + send(context, "entities: " + MemoryMath.topLine(world.entityCounts(), 8)); + send(context, "items: " + MemoryMath.topLine(world.itemCounts(), 8)); + return Command.SINGLE_SUCCESS; + } + + private static int showCurrentChunk(CommandContext context) throws com.mojang.brigadier.exceptions.CommandSyntaxException { + ServerPlayer player = context.getSource().getPlayerOrException(); + ChunkKey key = BlocodexScanner.keyFor(player.level(), player.chunkPosition().x(), player.chunkPosition().z()); + return showChunk(context, key); + } + + private static int showSpecifiedChunk(CommandContext context) { + ChunkKey key = new ChunkKey( + StringArgumentType.getString(context, "dimension"), + IntegerArgumentType.getInteger(context, "x"), + IntegerArgumentType.getInteger(context, "z") + ); + return showChunk(context, key); + } + + private static int showChunk(CommandContext context, ChunkKey key) { + BlocodexMemory memory = BlocodexSavedData.get(context.getSource().getServer()).memory(); + ChunkMemory chunk = memory.chunk(key); + if (chunk == null) { + context.getSource().sendFailure(Component.literal("No Blocodex snapshot for chunk " + key.asStorageKey())); + return 0; + } + + send(context, "Blocodex chunk: " + key.asStorageKey()); + send(context, "observations=" + chunk.observations() + ", y=" + chunk.minY() + ".." + chunk.maxY() + ", lastTick=" + chunk.lastObservedTick()); + send(context, "biomes=" + (chunk.biomes().isEmpty() ? "none" : String.join(", ", chunk.biomes()))); + send(context, "top blocks: " + MemoryMath.topLine(chunk.blockCounts(), 10)); + + try { + ServerPlayer player = context.getSource().getPlayerOrException(); + PlayerMemory playerMemory = memory.player(player.getUUID().toString()); + long ticks = playerMemory.chunkTimeTicks().getOrDefault(key.asStorageKey(), 0L); + send(context, "your heat ticks here=" + ticks); + } catch (com.mojang.brigadier.exceptions.CommandSyntaxException ignored) { + // Console can inspect chunk snapshots without a personal heatmap line. + } + + return Command.SINGLE_SUCCESS; + } + + private static int rescan(CommandContext context, int radius) throws com.mojang.brigadier.exceptions.CommandSyntaxException { + ServerPlayer player = context.getSource().getPlayerOrException(); + int scanned = BlocodexScanner.scanAroundPlayer(player, radius, Integer.MAX_VALUE); + send(context, "Queued immediate Blocodex rescan around you: " + scanned + " chunks."); + return Command.SINGLE_SUCCESS; + } + + private static int resetMemory(CommandContext context) { + BlocodexSavedData data = BlocodexSavedData.get(context.getSource().getServer()); + data.memory().clear(); + data.setDirty(); + BlocodexUiSnapshots.clearColorCaches(); + send(context, "Blocodex reset: all discovered entries, chunks, player memories and world aggregates were cleared."); + return Command.SINGLE_SUCCESS; + } + + private static int cheatDiscoverAllBlocks(CommandContext context) throws com.mojang.brigadier.exceptions.CommandSyntaxException { + ServerPlayer player = context.getSource().getPlayerOrException(); + List blockIds = new ArrayList<>(); + for (Block block : BuiltInRegistries.BLOCK) { + if (!block.defaultBlockState().isAir()) { + blockIds.add(BuiltInRegistries.BLOCK.getKey(block).toString()); + } + } + List itemIds = new ArrayList<>(); + for (Item item : BuiltInRegistries.ITEM) { + itemIds.add(BuiltInRegistries.ITEM.getKey(item).toString()); + } + List entityIds = new ArrayList<>(); + for (net.minecraft.world.entity.EntityType entityType : BuiltInRegistries.ENTITY_TYPE) { + entityIds.add(BuiltInRegistries.ENTITY_TYPE.getKey(entityType).toString()); + } + + BlocodexSavedData data = BlocodexSavedData.get(context.getSource().getServer()); + PlayerMemory playerMemory = data.memory().player(player.getUUID().toString()); + int addedBlocks = playerMemory.discoverBlocks(blockIds); + int addedItems = playerMemory.discoverItems(itemIds); + int addedEntities = playerMemory.discoverEntities(entityIds); + data.setDirty(); + + send(context, "Blocodex cheat: +" + addedBlocks + " blocs, +" + addedItems + " items, +" + addedEntities + " mobs debloques."); + send(context, "Totaux: " + playerMemory.discoveredBlocks().size() + " blocs, " + playerMemory.items().size() + " items, " + playerMemory.entities().size() + " mobs."); + return Command.SINGLE_SUCCESS; + } + + private static void send(CommandContext context, String line) { + send(context.getSource(), line); + } + + private static void send(CommandSourceStack source, String line) { + source.sendSuccess(() -> Component.literal(line), false); + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/item/BlocodexItem.java b/Gameplay/blocodex/src/main/java/dev/blocodex/item/BlocodexItem.java new file mode 100644 index 0000000..eaa3095 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/item/BlocodexItem.java @@ -0,0 +1,18 @@ +package dev.blocodex.item; + +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.Item; +import net.minecraft.world.level.Level; + +public final class BlocodexItem extends Item { + public BlocodexItem(Properties properties) { + super(properties); + } + + @Override + public InteractionResult use(Level level, Player player, InteractionHand hand) { + return InteractionResult.PASS; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/memory/BlocodexMemory.java b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/BlocodexMemory.java new file mode 100644 index 0000000..9f13808 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/BlocodexMemory.java @@ -0,0 +1,137 @@ +package dev.blocodex.memory; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; + +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; +import java.util.Map; +import java.util.Set; + +public final class BlocodexMemory { + public static final Codec> PLAYER_MAP_CODEC = Codec.unboundedMap(Codec.STRING, PlayerMemory.CODEC) + .xmap(LinkedHashMap::new, map -> map); + public static final Codec> CHUNK_MAP_CODEC = Codec.unboundedMap(Codec.STRING, ChunkMemory.CODEC) + .xmap(LinkedHashMap::new, map -> map); + + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + PLAYER_MAP_CODEC.optionalFieldOf("players", Map.of()).forGetter(BlocodexMemory::players), + CHUNK_MAP_CODEC.optionalFieldOf("chunks", Map.of()).forGetter(BlocodexMemory::chunks), + WorldMemory.CODEC.optionalFieldOf("world", new WorldMemory()).forGetter(BlocodexMemory::world) + ).apply(instance, BlocodexMemory::new)); + + private final Map players; + private final Map chunks; + private final WorldMemory world; + + public BlocodexMemory() { + this(Map.of(), Map.of(), new WorldMemory()); + } + + public BlocodexMemory(Map players, Map chunks, WorldMemory world) { + this.players = new LinkedHashMap<>(players); + this.chunks = new LinkedHashMap<>(chunks); + this.world = world; + } + + public boolean observeChunk(String playerId, ChunkKey key, Map blockCounts, Map> layerBlockCounts, Set biomes, int minY, int maxY, long tick) { + PlayerMemory player = player(playerId); + boolean changed = player.observeChunk(key, blockCounts, biomes); + + String storageKey = key.asStorageKey(); + ChunkMemory previous = chunks.get(storageKey); + if (previous == null) { + ChunkMemory created = new ChunkMemory(key); + created.replaceSnapshot(blockCounts, layerBlockCounts, biomes, minY, maxY, tick); + chunks.put(storageKey, created); + world.recordNewChunk(key, blockCounts, biomes); + return true; + } + + Map blockDelta = MemoryMath.diff(blockCounts, previous.blockCounts()); + Set addedBiomes = new LinkedHashSet<>(biomes); + addedBiomes.removeAll(previous.biomes()); + Set removedBiomes = new LinkedHashSet<>(previous.biomes()); + removedBiomes.removeAll(biomes); + + previous.replaceSnapshot(blockCounts, layerBlockCounts, biomes, minY, maxY, tick); + if (!blockDelta.isEmpty() || !addedBiomes.isEmpty() || !removedBiomes.isEmpty()) { + world.applyChunkDelta(blockDelta, addedBiomes, removedBiomes); + changed = true; + } + + return changed; + } + + public boolean addChunkTime(String playerId, ChunkKey key, long ticks) { + return player(playerId).addChunkTime(key, ticks); + } + + public boolean recordItem(String playerId, String itemId) { + boolean changed = player(playerId).recordItem(itemId); + if (changed) { + world.recordItem(itemId); + } + return changed; + } + + public boolean recordItem(String playerId, String itemId, long tick, String dimension, int x, int y, int z) { + boolean changed = recordItem(playerId, itemId); + if (changed) { + player(playerId).recordRecentEvent("item", itemId, tick, dimension, x, y, z); + } + return changed; + } + + public boolean recordEntity(String playerId, String entityId) { + boolean changed = player(playerId).recordEntity(entityId); + if (changed) { + world.recordEntity(entityId); + } + return changed; + } + + public boolean recordEntity(String playerId, String entityId, long tick, String dimension, int x, int y, int z) { + boolean changed = recordEntity(playerId, entityId); + if (changed) { + player(playerId).recordRecentEvent("entity", entityId, tick, dimension, x, y, z); + } + return changed; + } + + public boolean recordBrokenBlock(String playerId, String blockId) { + return player(playerId).recordBrokenBlock(blockId); + } + + public boolean recordBrokenBlock(String playerId, String blockId, long tick, String dimension, int x, int y, int z) { + boolean changed = recordBrokenBlock(playerId, blockId); + player(playerId).recordRecentEvent("block_broken", blockId, tick, dimension, x, y, z); + return changed; + } + + public void clear() { + players.clear(); + chunks.clear(); + world.clear(); + } + + public PlayerMemory player(String playerId) { + return players.computeIfAbsent(playerId, ignored -> new PlayerMemory()); + } + + public ChunkMemory chunk(ChunkKey key) { + return chunks.get(key.asStorageKey()); + } + + public Map players() { + return players; + } + + public Map chunks() { + return chunks; + } + + public WorldMemory world() { + return world; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/memory/BlocodexSavedData.java b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/BlocodexSavedData.java new file mode 100644 index 0000000..e0f7a59 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/BlocodexSavedData.java @@ -0,0 +1,40 @@ +package dev.blocodex.memory; + +import com.mojang.serialization.Codec; +import net.minecraft.resources.Identifier; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.saveddata.SavedData; +import net.minecraft.world.level.saveddata.SavedDataType; + +public final class BlocodexSavedData extends SavedData { + private static final Codec CODEC = BlocodexMemory.CODEC.xmap(BlocodexSavedData::new, BlocodexSavedData::memory); + private static final SavedDataType TYPE = new SavedDataType<>( + Identifier.fromNamespaceAndPath("blocodex", "memory"), + BlocodexSavedData::new, + CODEC, + null + ); + + private final BlocodexMemory memory; + + public BlocodexSavedData() { + this(new BlocodexMemory()); + } + + public BlocodexSavedData(BlocodexMemory memory) { + this.memory = memory; + } + + public static BlocodexSavedData get(MinecraftServer server) { + ServerLevel level = server.getLevel(ServerLevel.OVERWORLD); + if (level == null) { + return new BlocodexSavedData(); + } + return level.getDataStorage().computeIfAbsent(TYPE); + } + + public BlocodexMemory memory() { + return memory; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/memory/BlocodexWorldSetupData.java b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/BlocodexWorldSetupData.java new file mode 100644 index 0000000..82a0567 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/BlocodexWorldSetupData.java @@ -0,0 +1,43 @@ +package dev.blocodex.memory; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import dev.blocodex.Blocodex; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.saveddata.SavedData; +import net.minecraft.world.level.saveddata.SavedDataType; + +public final class BlocodexWorldSetupData extends SavedData { + private static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.BOOL.optionalFieldOf("spawn_computer_handled", false).forGetter(BlocodexWorldSetupData::spawnComputerHandled) + ).apply(instance, BlocodexWorldSetupData::new)); + private static final SavedDataType TYPE = new SavedDataType<>( + Blocodex.id("world_setup"), + BlocodexWorldSetupData::new, + CODEC, + null + ); + + private boolean spawnComputerHandled; + + public BlocodexWorldSetupData() { + this(false); + } + + public BlocodexWorldSetupData(boolean spawnComputerHandled) { + this.spawnComputerHandled = spawnComputerHandled; + } + + public static BlocodexWorldSetupData get(ServerLevel level) { + return level.getDataStorage().computeIfAbsent(TYPE); + } + + public boolean spawnComputerHandled() { + return spawnComputerHandled; + } + + public void markSpawnComputerHandled() { + spawnComputerHandled = true; + setDirty(); + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/memory/ChunkKey.java b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/ChunkKey.java new file mode 100644 index 0000000..ed12cc6 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/ChunkKey.java @@ -0,0 +1,27 @@ +package dev.blocodex.memory; + +import java.util.Objects; +import java.util.Optional; + +public record ChunkKey(String dimension, int x, int z) { + public ChunkKey { + Objects.requireNonNull(dimension, "dimension"); + } + + public String asStorageKey() { + return dimension + "|" + x + "|" + z; + } + + public static Optional parse(String value) { + String[] parts = value.split("\\|", 3); + if (parts.length != 3) { + return Optional.empty(); + } + + try { + return Optional.of(new ChunkKey(parts[0], Integer.parseInt(parts[1]), Integer.parseInt(parts[2]))); + } catch (NumberFormatException ignored) { + return Optional.empty(); + } + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/memory/ChunkMemory.java b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/ChunkMemory.java new file mode 100644 index 0000000..c5bde4a --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/ChunkMemory.java @@ -0,0 +1,116 @@ +package dev.blocodex.memory; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; + +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; +import java.util.Map; +import java.util.Set; + +public final class ChunkMemory { + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.STRING.fieldOf("dimension").forGetter(memory -> memory.key.dimension()), + Codec.INT.fieldOf("x").forGetter(memory -> memory.key.x()), + Codec.INT.fieldOf("z").forGetter(memory -> memory.key.z()), + MemoryCodecs.STRING_LONG_MAP.optionalFieldOf("block_counts", Map.of()).forGetter(ChunkMemory::blockCounts), + MemoryCodecs.LAYER_BLOCK_COUNTS.optionalFieldOf("layer_block_counts", Map.of()).forGetter(ChunkMemory::layerBlockCounts), + MemoryCodecs.STRING_SET.optionalFieldOf("biomes", Set.of()).forGetter(ChunkMemory::biomes), + Codec.INT.optionalFieldOf("min_y", 0).forGetter(ChunkMemory::minY), + Codec.INT.optionalFieldOf("max_y", 0).forGetter(ChunkMemory::maxY), + Codec.LONG.optionalFieldOf("observations", 0L).forGetter(ChunkMemory::observations), + Codec.LONG.optionalFieldOf("last_observed_tick", 0L).forGetter(ChunkMemory::lastObservedTick) + ).apply(instance, ChunkMemory::new)); + + private final ChunkKey key; + private final Map blockCounts; + private final Map> layerBlockCounts; + private final Set biomes; + private int minY; + private int maxY; + private long observations; + private long lastObservedTick; + + public ChunkMemory(ChunkKey key) { + this(key.dimension(), key.x(), key.z(), Map.of(), Map.of(), Set.of(), 0, 0, 0L, 0L); + } + + public ChunkMemory( + String dimension, + int x, + int z, + Map blockCounts, + Map> layerBlockCounts, + Set biomes, + int minY, + int maxY, + long observations, + long lastObservedTick + ) { + this.key = new ChunkKey(dimension, x, z); + this.blockCounts = new LinkedHashMap<>(blockCounts); + this.layerBlockCounts = copyLayers(layerBlockCounts); + this.biomes = new LinkedHashSet<>(biomes); + this.minY = minY; + this.maxY = maxY; + this.observations = observations; + this.lastObservedTick = lastObservedTick; + } + + public ChunkKey key() { + return key; + } + + public Map blockCounts() { + return blockCounts; + } + + public Map> layerBlockCounts() { + return layerBlockCounts; + } + + public Map layerBlockCounts(int y) { + return layerBlockCounts.getOrDefault(y, Map.of()); + } + + public Set biomes() { + return biomes; + } + + public int minY() { + return minY; + } + + public int maxY() { + return maxY; + } + + public long observations() { + return observations; + } + + public long lastObservedTick() { + return lastObservedTick; + } + + public void replaceSnapshot(Map nextBlockCounts, Map> nextLayerBlockCounts, Set nextBiomes, int nextMinY, int nextMaxY, long tick) { + blockCounts.clear(); + blockCounts.putAll(nextBlockCounts); + layerBlockCounts.clear(); + layerBlockCounts.putAll(copyLayers(nextLayerBlockCounts)); + biomes.clear(); + biomes.addAll(nextBiomes); + minY = nextMinY; + maxY = nextMaxY; + observations++; + lastObservedTick = tick; + } + + private static Map> copyLayers(Map> layers) { + Map> copy = new LinkedHashMap<>(); + for (Map.Entry> entry : layers.entrySet()) { + copy.put(entry.getKey(), new LinkedHashMap<>(entry.getValue())); + } + return copy; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/memory/GridDistribution.java b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/GridDistribution.java new file mode 100644 index 0000000..be5f5e3 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/GridDistribution.java @@ -0,0 +1,70 @@ +package dev.blocodex.memory; + +import java.util.ArrayList; +import java.util.Comparator; +import java.util.List; +import java.util.Map; + +public final class GridDistribution { + private GridDistribution() { + } + + public static List normalize(Map counts, int cells) { + List result = new ArrayList<>(cells); + if (cells <= 0) { + return result; + } + + long total = counts.values().stream().mapToLong(Long::longValue).filter(value -> value > 0).sum(); + if (total <= 0) { + for (int i = 0; i < cells; i++) { + result.add(""); + } + return result; + } + + List entries = counts.entrySet().stream() + .filter(entry -> entry.getValue() > 0) + .map(entry -> { + double exact = (double) entry.getValue() * cells / total; + int base = (int) Math.floor(exact); + return new Entry(entry.getKey(), entry.getValue(), base, exact - base); + }) + .sorted(Comparator.comparingLong(Entry::count).reversed().thenComparing(Entry::id)) + .toList(); + + int allocated = 0; + for (Entry entry : entries) { + allocated += entry.base(); + } + + List remainderOrder = entries.stream() + .sorted(Comparator.comparingDouble(Entry::remainder).reversed() + .thenComparing(Entry::count, Comparator.reverseOrder()) + .thenComparing(Entry::id)) + .toList(); + + int[] bonuses = new int[entries.size()]; + int remaining = cells - allocated; + for (int i = 0; i < remaining; i++) { + Entry bonusEntry = remainderOrder.get(i % remainderOrder.size()); + bonuses[entries.indexOf(bonusEntry)]++; + } + + for (int i = 0; i < entries.size(); i++) { + Entry entry = entries.get(i); + int repeats = entry.base() + bonuses[i]; + for (int j = 0; j < repeats && result.size() < cells; j++) { + result.add(entry.id()); + } + } + + while (result.size() < cells) { + result.add(""); + } + return result; + } + + private record Entry(String id, long count, int base, double remainder) { + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/memory/MemoryCodecs.java b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/MemoryCodecs.java new file mode 100644 index 0000000..10f9a14 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/MemoryCodecs.java @@ -0,0 +1,41 @@ +package dev.blocodex.memory; + +import com.mojang.serialization.Codec; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; +import java.util.Map; +import java.util.Set; + +public final class MemoryCodecs { + public static final Codec> STRING_LONG_MAP = Codec.unboundedMap(Codec.STRING, Codec.LONG) + .xmap(LinkedHashMap::new, map -> map); + public static final Codec>> LAYER_BLOCK_COUNTS = Codec.unboundedMap(Codec.STRING, STRING_LONG_MAP) + .xmap(MemoryCodecs::decodeLayerKeys, MemoryCodecs::encodeLayerKeys); + public static final Codec> STRING_SET = Codec.STRING.listOf() + .xmap(LinkedHashSet::new, ArrayList::new); + + private MemoryCodecs() { + } + + private static Map> decodeLayerKeys(Map> encoded) { + Map> decoded = new LinkedHashMap<>(); + for (Map.Entry> entry : encoded.entrySet()) { + try { + decoded.put(Integer.parseInt(entry.getKey()), new LinkedHashMap<>(entry.getValue())); + } catch (NumberFormatException ignored) { + // Ignore malformed legacy/user-edited layer keys instead of failing the whole save. + } + } + return decoded; + } + + private static Map> encodeLayerKeys(Map> decoded) { + Map> encoded = new LinkedHashMap<>(); + for (Map.Entry> entry : decoded.entrySet()) { + encoded.put(Integer.toString(entry.getKey()), new LinkedHashMap<>(entry.getValue())); + } + return encoded; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/memory/MemoryMath.java b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/MemoryMath.java new file mode 100644 index 0000000..3e65977 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/MemoryMath.java @@ -0,0 +1,56 @@ +package dev.blocodex.memory; + +import java.util.ArrayList; +import java.util.Comparator; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +public final class MemoryMath { + private MemoryMath() { + } + + public static void addCount(Map counts, String id, long amount) { + if (id == null || id.isBlank() || amount == 0) { + return; + } + + long next = counts.getOrDefault(id, 0L) + amount; + if (next <= 0) { + counts.remove(id); + } else { + counts.put(id, next); + } + } + + public static Map diff(Map next, Map previous) { + Map delta = new LinkedHashMap<>(); + for (Map.Entry entry : next.entrySet()) { + long change = entry.getValue() - previous.getOrDefault(entry.getKey(), 0L); + if (change != 0) { + delta.put(entry.getKey(), change); + } + } + for (Map.Entry entry : previous.entrySet()) { + if (!next.containsKey(entry.getKey())) { + delta.put(entry.getKey(), -entry.getValue()); + } + } + return delta; + } + + public static List> top(Map counts, int limit) { + return counts.entrySet().stream() + .sorted(Map.Entry.comparingByValue(Comparator.reverseOrder()).thenComparing(Map.Entry.comparingByKey())) + .limit(limit) + .toList(); + } + + public static String topLine(Map counts, int limit) { + List parts = new ArrayList<>(); + for (Map.Entry entry : top(counts, limit)) { + parts.add(entry.getKey() + "=" + entry.getValue()); + } + return parts.isEmpty() ? "none" : String.join(", ", parts); + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/memory/PlayerMemory.java b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/PlayerMemory.java new file mode 100644 index 0000000..6f42f8a --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/PlayerMemory.java @@ -0,0 +1,356 @@ +package dev.blocodex.memory; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; +import java.util.Map; +import java.util.Set; + +public final class PlayerMemory { + private static final int MAX_RECENT_EVENTS = 40; + public static final int MAX_STAT_SAMPLES = 288; + + public static final Codec> RECENT_EVENTS_CODEC = RecentMemoryEvent.CODEC.listOf() + .xmap(ArrayList::new, List::copyOf); + public static final Codec> STAT_SAMPLES_CODEC = PlayerStatSample.CODEC.listOf() + .xmap(ArrayList::new, List::copyOf); + public static final Codec> VOXEL_PROJECT_MAP_CODEC = Codec.unboundedMap(Codec.STRING, VoxelProjectMemory.CODEC) + .xmap(LinkedHashMap::new, map -> map); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + MemoryCodecs.STRING_SET.optionalFieldOf("visited_chunks", Set.of()).forGetter(PlayerMemory::visitedChunks), + MemoryCodecs.STRING_LONG_MAP.optionalFieldOf("chunk_time_ticks", Map.of()).forGetter(PlayerMemory::chunkTimeTicks), + MemoryCodecs.STRING_SET.optionalFieldOf("discovered_blocks", Set.of()).forGetter(PlayerMemory::discoveredBlocks), + MemoryCodecs.STRING_LONG_MAP.optionalFieldOf("observed_block_counts", Map.of()).forGetter(PlayerMemory::observedBlockCounts), + MemoryCodecs.STRING_SET.optionalFieldOf("biomes", Set.of()).forGetter(PlayerMemory::biomes), + MemoryCodecs.STRING_SET.optionalFieldOf("items", Set.of()).forGetter(PlayerMemory::items), + MemoryCodecs.STRING_SET.optionalFieldOf("entities", Set.of()).forGetter(PlayerMemory::entities), + MemoryCodecs.STRING_LONG_MAP.optionalFieldOf("broken_blocks", Map.of()).forGetter(PlayerMemory::brokenBlocks), + RECENT_EVENTS_CODEC.optionalFieldOf("recent_events", List.of()).forGetter(PlayerMemory::recentEvents), + STAT_SAMPLES_CODEC.optionalFieldOf("stat_samples", List.of()).forGetter(PlayerMemory::statSamples), + VOXEL_PROJECT_MAP_CODEC.optionalFieldOf("voxel_projects", Map.of()).forGetter(PlayerMemory::voxelProjects), + MemoryCodecs.STRING_SET.optionalFieldOf("loaded_library_entries", Set.of()).forGetter(PlayerMemory::loadedLibraryEntries), + MemoryCodecs.STRING_SET.optionalFieldOf("favorite_library_entries", Set.of()).forGetter(PlayerMemory::favoriteLibraryEntries), + MemoryCodecs.STRING_SET.optionalFieldOf("research_library_entries", Set.of()).forGetter(PlayerMemory::researchLibraryEntries) + ).apply(instance, PlayerMemory::new)); + + private final Set visitedChunks; + private final Map chunkTimeTicks; + private final Set discoveredBlocks; + private final Map observedBlockCounts; + private final Set biomes; + private final Set items; + private final Set entities; + private final Map brokenBlocks; + private final List recentEvents; + private final List statSamples; + private final Map voxelProjects; + private final Set loadedLibraryEntries; + private final Set favoriteLibraryEntries; + private final Set researchLibraryEntries; + + public PlayerMemory() { + this(Set.of(), Map.of(), Set.of(), Map.of(), Set.of(), Set.of(), Set.of(), Map.of(), List.of(), List.of(), Map.of(), Set.of(), Set.of(), Set.of()); + } + + public PlayerMemory( + Set visitedChunks, + Map chunkTimeTicks, + Set discoveredBlocks, + Map observedBlockCounts, + Set biomes, + Set items, + Set entities, + Map brokenBlocks, + List recentEvents, + Map voxelProjects + ) { + this(visitedChunks, chunkTimeTicks, discoveredBlocks, observedBlockCounts, biomes, items, entities, brokenBlocks, recentEvents, List.of(), voxelProjects, Set.of(), Set.of(), Set.of()); + } + + public PlayerMemory( + Set visitedChunks, + Map chunkTimeTicks, + Set discoveredBlocks, + Map observedBlockCounts, + Set biomes, + Set items, + Set entities, + Map brokenBlocks, + List recentEvents, + Map voxelProjects, + Set loadedLibraryEntries, + Set favoriteLibraryEntries, + Set researchLibraryEntries + ) { + this(visitedChunks, chunkTimeTicks, discoveredBlocks, observedBlockCounts, biomes, items, entities, brokenBlocks, recentEvents, List.of(), voxelProjects, loadedLibraryEntries, favoriteLibraryEntries, researchLibraryEntries); + } + + public PlayerMemory( + Set visitedChunks, + Map chunkTimeTicks, + Set discoveredBlocks, + Map observedBlockCounts, + Set biomes, + Set items, + Set entities, + Map brokenBlocks, + List recentEvents, + List statSamples, + Map voxelProjects, + Set loadedLibraryEntries, + Set favoriteLibraryEntries, + Set researchLibraryEntries + ) { + this.visitedChunks = new LinkedHashSet<>(visitedChunks); + this.chunkTimeTicks = new LinkedHashMap<>(chunkTimeTicks); + this.discoveredBlocks = new LinkedHashSet<>(discoveredBlocks); + this.observedBlockCounts = new LinkedHashMap<>(observedBlockCounts); + this.biomes = new LinkedHashSet<>(biomes); + this.items = new LinkedHashSet<>(items); + this.entities = new LinkedHashSet<>(entities); + this.brokenBlocks = new LinkedHashMap<>(brokenBlocks); + this.recentEvents = new ArrayList<>(recentEvents); + this.statSamples = new ArrayList<>(statSamples); + this.voxelProjects = new LinkedHashMap<>(voxelProjects); + this.loadedLibraryEntries = new LinkedHashSet<>(loadedLibraryEntries); + this.favoriteLibraryEntries = new LinkedHashSet<>(favoriteLibraryEntries); + this.researchLibraryEntries = new LinkedHashSet<>(researchLibraryEntries); + trimRecentEvents(); + trimStatSamples(); + } + + public boolean observeChunk(ChunkKey key, Map blockCounts, Set chunkBiomes) { + boolean changed = false; + boolean firstVisit = visitedChunks.add(key.asStorageKey()); + changed |= firstVisit; + changed |= discoveredBlocks.addAll(blockCounts.keySet()); + changed |= biomes.addAll(chunkBiomes); + + if (firstVisit) { + for (Map.Entry entry : blockCounts.entrySet()) { + MemoryMath.addCount(observedBlockCounts, entry.getKey(), entry.getValue()); + } + } + + return changed; + } + + public boolean addChunkTime(ChunkKey key, long ticks) { + if (ticks <= 0) { + return false; + } + + visitedChunks.add(key.asStorageKey()); + MemoryMath.addCount(chunkTimeTicks, key.asStorageKey(), ticks); + return true; + } + + public boolean recordItem(String itemId) { + return items.add(itemId); + } + + public boolean recordEntity(String entityId) { + return entities.add(entityId); + } + + public boolean recordBrokenBlock(String blockId) { + MemoryMath.addCount(brokenBlocks, blockId, 1); + discoveredBlocks.add(blockId); + return true; + } + + public int discoverBlocks(Collection blockIds) { + return addAll(discoveredBlocks, blockIds); + } + + public int discoverItems(Collection itemIds) { + return addAll(items, itemIds); + } + + public int discoverEntities(Collection entityIds) { + return addAll(entities, entityIds); + } + + public boolean recordRecentEvent(String type, String id, long tick, String dimension, int x, int y, int z) { + if (type == null || type.isBlank() || id == null || id.isBlank()) { + return false; + } + + recentEvents.addFirst(new RecentMemoryEvent(type, id, tick, dimension == null ? "" : dimension, x, y, z)); + trimRecentEvents(); + return true; + } + + public boolean recordStatSample(PlayerStatSample sample) { + if (sample == null) { + return false; + } + + if (!statSamples.isEmpty()) { + PlayerStatSample last = statSamples.getLast(); + if (sample.playTimeTicks() < last.playTimeTicks()) { + return false; + } + if (sample.playTimeTicks() == last.playTimeTicks()) { + if (sample.equals(last)) { + return false; + } + statSamples.set(statSamples.size() - 1, sample); + return true; + } + } + + statSamples.add(sample); + trimStatSamples(); + return true; + } + + public boolean saveVoxelProject(VoxelProjectMemory project) { + if (project == null || project.id().isBlank()) { + return false; + } + voxelProjects.put(project.id(), project); + return true; + } + + public boolean deleteVoxelProject(String projectId) { + if (projectId == null || projectId.isBlank()) { + return false; + } + return voxelProjects.remove(projectId) != null; + } + + public boolean loadLibraryEntry(String entryId) { + return addId(loadedLibraryEntries, entryId); + } + + public boolean favoriteLibraryEntry(String entryId) { + boolean changed = loadLibraryEntry(entryId); + changed |= addId(favoriteLibraryEntries, entryId); + return changed; + } + + public boolean unfavoriteLibraryEntry(String entryId) { + return favoriteLibraryEntries.remove(entryId); + } + + public boolean toggleFavoriteLibraryEntry(String entryId) { + if (favoriteLibraryEntries.contains(entryId)) { + return unfavoriteLibraryEntry(entryId); + } + return favoriteLibraryEntry(entryId); + } + + public boolean addResearchLibraryEntry(String entryId) { + return addId(researchLibraryEntries, entryId); + } + + public int addResearchLibraryEntries(Collection entryIds) { + return addAll(researchLibraryEntries, entryIds); + } + + public boolean removeResearchLibraryEntry(String entryId) { + return researchLibraryEntries.remove(entryId); + } + + public boolean toggleResearchLibraryEntry(String entryId) { + if (researchLibraryEntries.contains(entryId)) { + return removeResearchLibraryEntry(entryId); + } + return addResearchLibraryEntry(entryId); + } + + private static int addAll(Set target, Collection ids) { + int added = 0; + for (String id : ids) { + if (id == null || id.isBlank()) { + continue; + } + + if (addId(target, id)) { + added++; + } + } + return added; + } + + private static boolean addId(Set target, String id) { + if (id == null || id.isBlank()) { + return false; + } + return target.add(id); + } + + public Set visitedChunks() { + return visitedChunks; + } + + public Map chunkTimeTicks() { + return chunkTimeTicks; + } + + public Set discoveredBlocks() { + return discoveredBlocks; + } + + public Map observedBlockCounts() { + return observedBlockCounts; + } + + public Set biomes() { + return biomes; + } + + public Set items() { + return items; + } + + public Set entities() { + return entities; + } + + public Map brokenBlocks() { + return brokenBlocks; + } + + public List recentEvents() { + return recentEvents; + } + + public List statSamples() { + return statSamples; + } + + public Map voxelProjects() { + return voxelProjects; + } + + public Set loadedLibraryEntries() { + return loadedLibraryEntries; + } + + public Set favoriteLibraryEntries() { + return favoriteLibraryEntries; + } + + public Set researchLibraryEntries() { + return researchLibraryEntries; + } + + private void trimRecentEvents() { + while (recentEvents.size() > MAX_RECENT_EVENTS) { + recentEvents.removeLast(); + } + } + + private void trimStatSamples() { + while (statSamples.size() > MAX_STAT_SAMPLES) { + statSamples.removeFirst(); + } + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/memory/PlayerStatSample.java b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/PlayerStatSample.java new file mode 100644 index 0000000..b343cc8 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/PlayerStatSample.java @@ -0,0 +1,24 @@ +package dev.blocodex.memory; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; + +public record PlayerStatSample( + long playTimeTicks, + long distanceCm, + long brokenBlocks, + long crafts, + int visitedChunks, + int biomes, + int discoveredBlocks +) { + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.LONG.optionalFieldOf("play_time_ticks", 0L).forGetter(PlayerStatSample::playTimeTicks), + Codec.LONG.optionalFieldOf("distance_cm", 0L).forGetter(PlayerStatSample::distanceCm), + Codec.LONG.optionalFieldOf("broken_blocks", 0L).forGetter(PlayerStatSample::brokenBlocks), + Codec.LONG.optionalFieldOf("crafts", 0L).forGetter(PlayerStatSample::crafts), + Codec.INT.optionalFieldOf("visited_chunks", 0).forGetter(PlayerStatSample::visitedChunks), + Codec.INT.optionalFieldOf("biomes", 0).forGetter(PlayerStatSample::biomes), + Codec.INT.optionalFieldOf("discovered_blocks", 0).forGetter(PlayerStatSample::discoveredBlocks) + ).apply(instance, PlayerStatSample::new)); +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/memory/RecentMemoryEvent.java b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/RecentMemoryEvent.java new file mode 100644 index 0000000..d6e020a --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/RecentMemoryEvent.java @@ -0,0 +1,24 @@ +package dev.blocodex.memory; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; + +public record RecentMemoryEvent( + String type, + String id, + long tick, + String dimension, + int x, + int y, + int z +) { + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.STRING.optionalFieldOf("type", "").forGetter(RecentMemoryEvent::type), + Codec.STRING.optionalFieldOf("id", "").forGetter(RecentMemoryEvent::id), + Codec.LONG.optionalFieldOf("tick", 0L).forGetter(RecentMemoryEvent::tick), + Codec.STRING.optionalFieldOf("dimension", "").forGetter(RecentMemoryEvent::dimension), + Codec.INT.optionalFieldOf("x", 0).forGetter(RecentMemoryEvent::x), + Codec.INT.optionalFieldOf("y", 0).forGetter(RecentMemoryEvent::y), + Codec.INT.optionalFieldOf("z", 0).forGetter(RecentMemoryEvent::z) + ).apply(instance, RecentMemoryEvent::new)); +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/memory/VoxelProjectMemory.java b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/VoxelProjectMemory.java new file mode 100644 index 0000000..ebcf17f --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/VoxelProjectMemory.java @@ -0,0 +1,37 @@ +package dev.blocodex.memory; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; + +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +public record VoxelProjectMemory( + String id, + String name, + int width, + int height, + int depth, + List palette, + Map cells, + long createdTick, + long updatedTick +) { + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.STRING.fieldOf("id").forGetter(VoxelProjectMemory::id), + Codec.STRING.optionalFieldOf("name", "Untitled").forGetter(VoxelProjectMemory::name), + Codec.INT.optionalFieldOf("width", 0).forGetter(VoxelProjectMemory::width), + Codec.INT.optionalFieldOf("height", 0).forGetter(VoxelProjectMemory::height), + Codec.INT.optionalFieldOf("depth", 0).forGetter(VoxelProjectMemory::depth), + Codec.STRING.listOf().optionalFieldOf("palette", List.of()).forGetter(VoxelProjectMemory::palette), + Codec.unboundedMap(Codec.STRING, Codec.STRING).optionalFieldOf("cells", Map.of()).forGetter(VoxelProjectMemory::cells), + Codec.LONG.optionalFieldOf("created_tick", 0L).forGetter(VoxelProjectMemory::createdTick), + Codec.LONG.optionalFieldOf("updated_tick", 0L).forGetter(VoxelProjectMemory::updatedTick) + ).apply(instance, VoxelProjectMemory::new)); + + public VoxelProjectMemory { + palette = List.copyOf(palette); + cells = new LinkedHashMap<>(cells); + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/memory/WorldMemory.java b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/WorldMemory.java new file mode 100644 index 0000000..a7133a6 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/memory/WorldMemory.java @@ -0,0 +1,112 @@ +package dev.blocodex.memory; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; + +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.Set; + +public final class WorldMemory { + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + MemoryCodecs.STRING_LONG_MAP.optionalFieldOf("block_counts", Map.of()).forGetter(WorldMemory::blockCounts), + MemoryCodecs.STRING_LONG_MAP.optionalFieldOf("biome_counts", Map.of()).forGetter(WorldMemory::biomeCounts), + MemoryCodecs.STRING_LONG_MAP.optionalFieldOf("dimension_counts", Map.of()).forGetter(WorldMemory::dimensionCounts), + MemoryCodecs.STRING_LONG_MAP.optionalFieldOf("entity_counts", Map.of()).forGetter(WorldMemory::entityCounts), + MemoryCodecs.STRING_LONG_MAP.optionalFieldOf("item_counts", Map.of()).forGetter(WorldMemory::itemCounts), + Codec.LONG.optionalFieldOf("observed_chunks", 0L).forGetter(WorldMemory::observedChunks) + ).apply(instance, WorldMemory::new)); + + private final Map blockCounts; + private final Map biomeCounts; + private final Map dimensionCounts; + private final Map entityCounts; + private final Map itemCounts; + private long observedChunks; + + public WorldMemory() { + this(Map.of(), Map.of(), Map.of(), Map.of(), Map.of(), 0L); + } + + public WorldMemory( + Map blockCounts, + Map biomeCounts, + Map dimensionCounts, + Map entityCounts, + Map itemCounts, + long observedChunks + ) { + this.blockCounts = new LinkedHashMap<>(blockCounts); + this.biomeCounts = new LinkedHashMap<>(biomeCounts); + this.dimensionCounts = new LinkedHashMap<>(dimensionCounts); + this.entityCounts = new LinkedHashMap<>(entityCounts); + this.itemCounts = new LinkedHashMap<>(itemCounts); + this.observedChunks = observedChunks; + } + + public void recordNewChunk(ChunkKey key, Map blockCounts, Set biomes) { + observedChunks++; + MemoryMath.addCount(dimensionCounts, key.dimension(), 1); + applyBlockDelta(blockCounts); + for (String biome : biomes) { + MemoryMath.addCount(biomeCounts, biome, 1); + } + } + + public void applyChunkDelta(Map blockDelta, Set addedBiomes, Set removedBiomes) { + applyBlockDelta(blockDelta); + for (String biome : addedBiomes) { + MemoryMath.addCount(biomeCounts, biome, 1); + } + for (String biome : removedBiomes) { + MemoryMath.addCount(biomeCounts, biome, -1); + } + } + + public void recordItem(String itemId) { + MemoryMath.addCount(itemCounts, itemId, 1); + } + + public void recordEntity(String entityId) { + MemoryMath.addCount(entityCounts, entityId, 1); + } + + public void clear() { + blockCounts.clear(); + biomeCounts.clear(); + dimensionCounts.clear(); + entityCounts.clear(); + itemCounts.clear(); + observedChunks = 0L; + } + + private void applyBlockDelta(Map delta) { + for (Map.Entry entry : delta.entrySet()) { + MemoryMath.addCount(blockCounts, entry.getKey(), entry.getValue()); + } + } + + public Map blockCounts() { + return blockCounts; + } + + public Map biomeCounts() { + return biomeCounts; + } + + public Map dimensionCounts() { + return dimensionCounts; + } + + public Map entityCounts() { + return entityCounts; + } + + public Map itemCounts() { + return itemCounts; + } + + public long observedChunks() { + return observedChunks; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexLibraryActionPayload.java b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexLibraryActionPayload.java new file mode 100644 index 0000000..0392d28 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexLibraryActionPayload.java @@ -0,0 +1,33 @@ +package dev.blocodex.network; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import dev.blocodex.Blocodex; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record BlocodexLibraryActionPayload(String action, String entryId) implements CustomPacketPayload { + public static final String ACTION_LOAD = "load"; + public static final String ACTION_TOGGLE_FAVORITE = "toggle_favorite"; + public static final String ACTION_TOGGLE_RESEARCH = "toggle_research"; + public static final String ACTION_REMOVE_RESEARCH = "remove_research"; + public static final String ACTION_BUILD_ENTRY = "build_entry"; + public static final Type TYPE = new Type<>(Blocodex.id("library_action")); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.STRING.fieldOf("action").forGetter(BlocodexLibraryActionPayload::action), + Codec.STRING.fieldOf("entry_id").forGetter(BlocodexLibraryActionPayload::entryId) + ).apply(instance, BlocodexLibraryActionPayload::new)); + public static final StreamCodec STREAM_CODEC = ByteBufCodecs.fromCodec(CODEC).cast(); + + public BlocodexLibraryActionPayload { + action = action == null ? "" : action.strip(); + entryId = entryId == null ? "" : entryId.strip(); + } + + @Override + public Type type() { + return TYPE; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexNetworking.java b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexNetworking.java new file mode 100644 index 0000000..2e28f29 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexNetworking.java @@ -0,0 +1,342 @@ +package dev.blocodex.network; + +import dev.blocodex.codex.WsmcCodexIndex; +import dev.blocodex.memory.BlocodexSavedData; +import dev.blocodex.memory.PlayerMemory; +import dev.blocodex.memory.VoxelProjectMemory; +import dev.blocodex.server.BlocodexScanner; +import dev.blocodex.server.BlocodexStudioPalettes; +import dev.blocodex.server.BlocodexUiSnapshots; +import dev.blocodex.voxel.VoxelProjectPlacement; +import dev.blocodex.voxel.VoxelProjectRequirements; +import dev.blocodex.voxel.VoxelProjectValidator; +import net.minecraft.ChatFormatting; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry; +import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.Identifier; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockState; + +import java.util.ArrayDeque; +import java.util.ArrayList; +import java.util.Deque; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.UUID; + +public final class BlocodexNetworking { + private static final int MAX_PLACEMENT_HISTORY = 32; + private static final Map> UNDO_HISTORY = new HashMap<>(); + private static final Map> REDO_HISTORY = new HashMap<>(); + + private BlocodexNetworking() { + } + + public static void register() { + PayloadTypeRegistry.serverboundPlay().register(BlocodexUiRequestPayload.TYPE, BlocodexUiRequestPayload.STREAM_CODEC); + PayloadTypeRegistry.serverboundPlay().register(BlocodexLibraryActionPayload.TYPE, BlocodexLibraryActionPayload.STREAM_CODEC); + PayloadTypeRegistry.serverboundPlay().register(BlocodexVoxelProjectSavePayload.TYPE, BlocodexVoxelProjectSavePayload.STREAM_CODEC); + PayloadTypeRegistry.serverboundPlay().register(BlocodexVoxelProjectRequestPayload.TYPE, BlocodexVoxelProjectRequestPayload.STREAM_CODEC); + PayloadTypeRegistry.serverboundPlay().register(BlocodexVoxelProjectDeletePayload.TYPE, BlocodexVoxelProjectDeletePayload.STREAM_CODEC); + PayloadTypeRegistry.serverboundPlay().register(BlocodexPlaceVoxelProjectPayload.TYPE, BlocodexPlaceVoxelProjectPayload.STREAM_CODEC); + PayloadTypeRegistry.serverboundPlay().register(BlocodexStudioPaletteRequestPayload.TYPE, BlocodexStudioPaletteRequestPayload.STREAM_CODEC); + PayloadTypeRegistry.clientboundPlay().register(BlocodexUiSnapshotPayload.TYPE, BlocodexUiSnapshotPayload.STREAM_CODEC); + PayloadTypeRegistry.clientboundPlay().register(BlocodexOpenComputerPayload.TYPE, BlocodexOpenComputerPayload.STREAM_CODEC); + PayloadTypeRegistry.clientboundPlay().register(BlocodexVoxelProjectPayload.TYPE, BlocodexVoxelProjectPayload.STREAM_CODEC); + PayloadTypeRegistry.clientboundPlay().register(BlocodexStudioPalettePayload.TYPE, BlocodexStudioPalettePayload.STREAM_CODEC); + + ServerPlayNetworking.registerGlobalReceiver(BlocodexUiRequestPayload.TYPE, (payload, context) -> + context.server().execute(() -> { + BlocodexScanner.scanAroundPlayer(context.player(), 0, 1); + ServerPlayNetworking.send(context.player(), BlocodexUiSnapshots.create(context.player(), payload)); + })); + ServerPlayNetworking.registerGlobalReceiver(BlocodexLibraryActionPayload.TYPE, (payload, context) -> + context.server().execute(() -> handleLibraryAction(context.player(), payload))); + ServerPlayNetworking.registerGlobalReceiver(BlocodexVoxelProjectSavePayload.TYPE, (payload, context) -> + context.server().execute(() -> handleVoxelProjectSave(context.player(), payload.project()))); + ServerPlayNetworking.registerGlobalReceiver(BlocodexVoxelProjectRequestPayload.TYPE, (payload, context) -> + context.server().execute(() -> handleVoxelProjectRequest(context.player(), payload.projectId()))); + ServerPlayNetworking.registerGlobalReceiver(BlocodexVoxelProjectDeletePayload.TYPE, (payload, context) -> + context.server().execute(() -> handleVoxelProjectDelete(context.player(), payload.projectId()))); + ServerPlayNetworking.registerGlobalReceiver(BlocodexPlaceVoxelProjectPayload.TYPE, (payload, context) -> + context.server().execute(() -> handlePlaceVoxelProject(context.player(), payload))); + ServerPlayNetworking.registerGlobalReceiver(BlocodexStudioPaletteRequestPayload.TYPE, (payload, context) -> + context.server().execute(() -> handleStudioPaletteRequest(context.player(), payload))); + } + + private static void handleLibraryAction(ServerPlayer player, BlocodexLibraryActionPayload payload) { + if (payload.entryId().isBlank()) { + return; + } + + if (!isAddressableLibraryEntry(player, payload.entryId())) { + player.sendSystemMessage(Component.literal("Entree Blocotheque inconnue: " + payload.entryId()).withStyle(ChatFormatting.RED)); + return; + } + + BlocodexSavedData data = BlocodexSavedData.get(player.level().getServer()); + PlayerMemory memory = data.memory().player(player.getUUID().toString()); + boolean changed; + if (BlocodexLibraryActionPayload.ACTION_BUILD_ENTRY.equals(payload.action())) { + changed = buildLibraryEntry(player, memory, payload.entryId()); + } else if (BlocodexLibraryActionPayload.ACTION_TOGGLE_FAVORITE.equals(payload.action())) { + changed = memory.toggleFavoriteLibraryEntry(payload.entryId()); + } else if (BlocodexLibraryActionPayload.ACTION_TOGGLE_RESEARCH.equals(payload.action())) { + changed = memory.toggleResearchLibraryEntry(payload.entryId()); + } else if (BlocodexLibraryActionPayload.ACTION_REMOVE_RESEARCH.equals(payload.action())) { + changed = memory.removeResearchLibraryEntry(payload.entryId()); + } else { + changed = memory.loadLibraryEntry(payload.entryId()); + } + + if (changed) { + data.setDirty(); + } + } + + private static boolean buildLibraryEntry(ServerPlayer player, PlayerMemory memory, String entryId) { + if (!player.isCreative()) { + player.sendSystemMessage(Component.literal("Build Blocotheque reserve au mode creatif pour l'instant.").withStyle(ChatFormatting.YELLOW)); + return false; + } + if (!isKnownLibraryEntry(player, entryId)) { + player.sendSystemMessage(Component.literal("Entree verrouillee: " + entryId).withStyle(ChatFormatting.RED)); + return false; + } + + ItemStack stack = stackFor(entryId); + if (stack.isEmpty()) { + player.sendSystemMessage(Component.literal("Aucun item constructible pour " + entryId).withStyle(ChatFormatting.RED)); + return false; + } + + stack.setCount(Math.min(stack.getMaxStackSize(), 64)); + if (!player.getInventory().add(stack)) { + player.drop(stack, false); + } + boolean changed = memory.loadLibraryEntry(entryId); + player.sendSystemMessage(Component.literal("Build ajoute a l'inventaire: " + stack.getHoverName().getString()).withStyle(ChatFormatting.GREEN)); + return changed; + } + + private static ItemStack stackFor(String entryId) { + Identifier id = Identifier.tryParse(entryId); + if (id == null) { + return ItemStack.EMPTY; + } + + Optional item = BuiltInRegistries.ITEM.getOptional(id); + if (item.isPresent() && item.get() != Items.AIR) { + return new ItemStack(item.get()); + } + + Optional block = BuiltInRegistries.BLOCK.getOptional(id); + if (block.isPresent() && block.get().asItem() != Items.AIR) { + return new ItemStack(block.get().asItem()); + } + + Identifier spawnEggId = Identifier.fromNamespaceAndPath(id.getNamespace(), id.getPath() + "_spawn_egg"); + Optional spawnEgg = BuiltInRegistries.ITEM.getOptional(spawnEggId); + return spawnEgg.isPresent() && spawnEgg.get() != Items.AIR ? new ItemStack(spawnEgg.get()) : ItemStack.EMPTY; + } + + private static void handleVoxelProjectSave(ServerPlayer player, VoxelProjectMemory project) { + VoxelProjectValidator.ValidationResult validation = VoxelProjectValidator.validate(project); + if (!validation.valid()) { + player.sendSystemMessage(Component.literal(validation.message()).withStyle(ChatFormatting.RED)); + return; + } + + BlocodexSavedData data = BlocodexSavedData.get(player.level().getServer()); + PlayerMemory memory = data.memory().player(player.getUUID().toString()); + VoxelProjectMemory existing = memory.voxelProjects().get(project.id()); + long now = player.level().getGameTime(); + VoxelProjectMemory saved = new VoxelProjectMemory( + project.id(), + project.name(), + project.width(), + project.height(), + project.depth(), + project.palette(), + project.cells(), + existing == null || existing.createdTick() == 0L ? now : existing.createdTick(), + now + ); + memory.saveVoxelProject(saved); + int addedResearch = memory.addResearchLibraryEntries(VoxelProjectRequirements.missingRequiredBlocks(saved, memory)); + data.setDirty(); + String suffix = addedResearch > 0 ? " (" + addedResearch + " blocs ajoutes aux recherches)" : ""; + player.sendSystemMessage(Component.literal("Creation sauvegardee: " + saved.name() + suffix).withStyle(ChatFormatting.GREEN)); + } + + private static void handleVoxelProjectRequest(ServerPlayer player, String projectId) { + if (projectId.isBlank()) { + return; + } + + PlayerMemory memory = BlocodexSavedData.get(player.level().getServer()).memory().player(player.getUUID().toString()); + VoxelProjectMemory project = memory.voxelProjects().get(projectId); + if (project != null && ServerPlayNetworking.canSend(player, BlocodexVoxelProjectPayload.TYPE)) { + ServerPlayNetworking.send(player, new BlocodexVoxelProjectPayload(project)); + } + } + + private static void handleStudioPaletteRequest(ServerPlayer player, BlocodexStudioPaletteRequestPayload payload) { + if (ServerPlayNetworking.canSend(player, BlocodexStudioPalettePayload.TYPE)) { + ServerPlayNetworking.send(player, BlocodexStudioPalettes.create(player, payload)); + } + } + + private static void handleVoxelProjectDelete(ServerPlayer player, String projectId) { + if (projectId.isBlank()) { + return; + } + + BlocodexSavedData data = BlocodexSavedData.get(player.level().getServer()); + PlayerMemory memory = data.memory().player(player.getUUID().toString()); + if (memory.deleteVoxelProject(projectId)) { + data.setDirty(); + player.sendSystemMessage(Component.literal("Creation supprimee: " + projectId).withStyle(ChatFormatting.YELLOW)); + } + } + + private static void handlePlaceVoxelProject(ServerPlayer player, BlocodexPlaceVoxelProjectPayload payload) { + if (BlocodexPlaceVoxelProjectPayload.MODE_UNDO.equals(payload.mode())) { + undoPlacement(player); + return; + } + if (BlocodexPlaceVoxelProjectPayload.MODE_REDO.equals(payload.mode())) { + redoPlacement(player); + return; + } + if (!BlocodexPlaceVoxelProjectPayload.MODE_CREATIVE_DIRECT.equals(payload.mode())) { + player.sendSystemMessage(Component.literal("Mode de pose inconnu.").withStyle(ChatFormatting.RED)); + return; + } + if (!player.isCreative()) { + player.sendSystemMessage(Component.literal("Pose directe reservee au mode creatif.").withStyle(ChatFormatting.RED)); + return; + } + + PlayerMemory memory = BlocodexSavedData.get(player.level().getServer()).memory().player(player.getUUID().toString()); + VoxelProjectMemory project = memory.voxelProjects().get(payload.projectId()); + VoxelProjectValidator.ValidationResult validation = VoxelProjectValidator.validate(project); + if (!validation.valid()) { + player.sendSystemMessage(Component.literal(validation.message()).withStyle(ChatFormatting.RED)); + return; + } + + int placed = 0; + List changes = new ArrayList<>(); + for (VoxelProjectPlacement.Cell cell : VoxelProjectPlacement.orderedCells(project)) { + Optional block = block(cell.blockId()); + if (block.isEmpty() || block.get() == Blocks.AIR) { + continue; + } + BlockPos worldPos = VoxelProjectPlacement.transform(project, cell, payload.anchor(), payload.facing()); + BlockState before = player.level().getBlockState(worldPos); + BlockState after = block.get().defaultBlockState(); + if (before.equals(after)) { + continue; + } + player.level().setBlock(worldPos, after, 3); + changes.add(new BlockChange(worldPos.immutable(), before, after)); + placed++; + } + if (!changes.isEmpty()) { + pushUndo(player.getUUID(), new PlacementSnapshot(List.copyOf(changes))); + REDO_HISTORY.computeIfAbsent(player.getUUID(), ignored -> new ArrayDeque<>()).clear(); + } + + player.sendSystemMessage(Component.literal("Structure posee: " + placed + " blocs.").withStyle(ChatFormatting.GREEN)); + } + + private static void undoPlacement(ServerPlayer player) { + Deque undo = UNDO_HISTORY.computeIfAbsent(player.getUUID(), ignored -> new ArrayDeque<>()); + PlacementSnapshot snapshot = undo.pollFirst(); + if (snapshot == null) { + player.sendSystemMessage(Component.literal("Aucune construction a annuler.").withStyle(ChatFormatting.YELLOW)); + return; + } + restore(player, snapshot, false); + REDO_HISTORY.computeIfAbsent(player.getUUID(), ignored -> new ArrayDeque<>()).push(snapshot); + player.sendSystemMessage(Component.literal("Construction annulee.").withStyle(ChatFormatting.YELLOW)); + } + + private static void redoPlacement(ServerPlayer player) { + Deque redo = REDO_HISTORY.computeIfAbsent(player.getUUID(), ignored -> new ArrayDeque<>()); + PlacementSnapshot snapshot = redo.pollFirst(); + if (snapshot == null) { + player.sendSystemMessage(Component.literal("Aucune construction a retablir.").withStyle(ChatFormatting.YELLOW)); + return; + } + restore(player, snapshot, true); + pushUndo(player.getUUID(), snapshot); + player.sendSystemMessage(Component.literal("Construction retablie.").withStyle(ChatFormatting.GREEN)); + } + + private static void restore(ServerPlayer player, PlacementSnapshot snapshot, boolean after) { + List changes = snapshot.changes(); + if (after) { + for (BlockChange change : changes) { + player.level().setBlock(change.pos(), change.after(), 3); + } + } else { + for (int index = changes.size() - 1; index >= 0; index--) { + BlockChange change = changes.get(index); + player.level().setBlock(change.pos(), change.before(), 3); + } + } + } + + private static void pushUndo(UUID playerId, PlacementSnapshot snapshot) { + Deque undo = UNDO_HISTORY.computeIfAbsent(playerId, ignored -> new ArrayDeque<>()); + undo.push(snapshot); + while (undo.size() > MAX_PLACEMENT_HISTORY) { + undo.removeLast(); + } + } + + private static boolean isKnownLibraryEntry(ServerPlayer player, String entryId) { + PlayerMemory memory = BlocodexSavedData.get(player.level().getServer()).memory().player(player.getUUID().toString()); + return memory.discoveredBlocks().contains(entryId) + || memory.items().contains(entryId) + || memory.entities().contains(entryId) + || memory.loadedLibraryEntries().contains(entryId) + || memory.favoriteLibraryEntries().contains(entryId) + || memory.researchLibraryEntries().contains(entryId); + } + + private static boolean isAddressableLibraryEntry(ServerPlayer player, String entryId) { + if (isKnownLibraryEntry(player, entryId)) { + return true; + } + Identifier id = Identifier.tryParse(entryId); + if (id != null && (BuiltInRegistries.BLOCK.containsKey(id) || BuiltInRegistries.ITEM.containsKey(id) || BuiltInRegistries.ENTITY_TYPE.containsKey(id))) { + return true; + } + WsmcCodexIndex index = WsmcCodexIndex.loadDefault(); + return index.entry(entryId).isPresent() || index.entityEntry(entryId).isPresent(); + } + + private static Optional block(String blockId) { + Identifier id = Identifier.tryParse(blockId); + return id == null ? Optional.empty() : BuiltInRegistries.BLOCK.getOptional(id); + } + + private record PlacementSnapshot(List changes) { + } + + private record BlockChange(BlockPos pos, BlockState before, BlockState after) { + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexOpenComputerPayload.java b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexOpenComputerPayload.java new file mode 100644 index 0000000..fabc119 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexOpenComputerPayload.java @@ -0,0 +1,16 @@ +package dev.blocodex.network; + +import dev.blocodex.Blocodex; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record BlocodexOpenComputerPayload() implements CustomPacketPayload { + public static final Type TYPE = new Type<>(Blocodex.id("open_computer")); + public static final StreamCodec STREAM_CODEC = StreamCodec.unit(new BlocodexOpenComputerPayload()); + + @Override + public Type type() { + return TYPE; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexPlaceVoxelProjectPayload.java b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexPlaceVoxelProjectPayload.java new file mode 100644 index 0000000..16e6c63 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexPlaceVoxelProjectPayload.java @@ -0,0 +1,39 @@ +package dev.blocodex.network; + +import dev.blocodex.Blocodex; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record BlocodexPlaceVoxelProjectPayload(String projectId, BlockPos anchor, Direction facing, String mode) implements CustomPacketPayload { + public static final String MODE_CREATIVE_DIRECT = "creative_direct"; + public static final String MODE_UNDO = "undo"; + public static final String MODE_REDO = "redo"; + public static final Type TYPE = new Type<>(Blocodex.id("place_voxel_project")); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.STRING_UTF8, + BlocodexPlaceVoxelProjectPayload::projectId, + BlockPos.STREAM_CODEC, + BlocodexPlaceVoxelProjectPayload::anchor, + Direction.STREAM_CODEC, + BlocodexPlaceVoxelProjectPayload::facing, + ByteBufCodecs.STRING_UTF8, + BlocodexPlaceVoxelProjectPayload::mode, + BlocodexPlaceVoxelProjectPayload::new + ); + + public BlocodexPlaceVoxelProjectPayload { + projectId = projectId == null ? "" : projectId.strip(); + anchor = anchor == null ? BlockPos.ZERO : anchor.immutable(); + facing = facing == null ? Direction.NORTH : facing; + mode = mode == null ? "" : mode.strip(); + } + + @Override + public Type type() { + return TYPE; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexStudioPalettePayload.java b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexStudioPalettePayload.java new file mode 100644 index 0000000..7b5b87b --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexStudioPalettePayload.java @@ -0,0 +1,45 @@ +package dev.blocodex.network; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import dev.blocodex.Blocodex; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +import java.util.List; + +public record BlocodexStudioPalettePayload( + List blockIds, + List colors, + List labels, + String selectedBlockId, + int selectedColor +) implements CustomPacketPayload { + public static final Type TYPE = new Type<>(Blocodex.id("studio_palette")); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.STRING.listOf().optionalFieldOf("block_ids", List.of()).forGetter(BlocodexStudioPalettePayload::blockIds), + Codec.INT.listOf().optionalFieldOf("colors", List.of()).forGetter(BlocodexStudioPalettePayload::colors), + Codec.STRING.listOf().optionalFieldOf("labels", List.of()).forGetter(BlocodexStudioPalettePayload::labels), + Codec.STRING.optionalFieldOf("selected_block_id", "").forGetter(BlocodexStudioPalettePayload::selectedBlockId), + Codec.INT.optionalFieldOf("selected_color", 0xFF777777).forGetter(BlocodexStudioPalettePayload::selectedColor) + ).apply(instance, BlocodexStudioPalettePayload::new)); + public static final StreamCodec STREAM_CODEC = ByteBufCodecs.fromCodec(CODEC).cast(); + + public BlocodexStudioPalettePayload { + blockIds = blockIds == null ? List.of() : List.copyOf(blockIds); + colors = (colors == null ? List.of() : colors).stream() + .map(color -> 0xFF000000 | (color & 0x00FFFFFF)) + .toList(); + labels = labels == null ? List.of() : List.copyOf(labels); + selectedBlockId = selectedBlockId == null ? "" : selectedBlockId.strip(); + selectedColor = 0xFF000000 | (selectedColor & 0x00FFFFFF); + } + + @Override + public Type type() { + return TYPE; + } + +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexStudioPaletteRequestPayload.java b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexStudioPaletteRequestPayload.java new file mode 100644 index 0000000..f949c2c --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexStudioPaletteRequestPayload.java @@ -0,0 +1,53 @@ +package dev.blocodex.network; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import dev.blocodex.Blocodex; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record BlocodexStudioPaletteRequestPayload(String query, int hue, double saturation, double lightness) implements CustomPacketPayload { + private static final int MAX_QUERY_LENGTH = 64; + public static final Type TYPE = new Type<>(Blocodex.id("studio_palette_request")); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.STRING.optionalFieldOf("query", "").forGetter(BlocodexStudioPaletteRequestPayload::query), + Codec.INT.optionalFieldOf("hue", 0).forGetter(BlocodexStudioPaletteRequestPayload::hue), + Codec.DOUBLE.optionalFieldOf("saturation", 0.0D).forGetter(BlocodexStudioPaletteRequestPayload::saturation), + Codec.DOUBLE.optionalFieldOf("lightness", 0.0D).forGetter(BlocodexStudioPaletteRequestPayload::lightness) + ).apply(instance, BlocodexStudioPaletteRequestPayload::new)); + public static final StreamCodec STREAM_CODEC = ByteBufCodecs.fromCodec(CODEC).cast(); + + public BlocodexStudioPaletteRequestPayload { + query = sanitizeQuery(query); + hue = normalizeHue(hue); + saturation = clamp01(saturation); + lightness = clamp01(lightness); + } + + @Override + public Type type() { + return TYPE; + } + + private static String sanitizeQuery(String query) { + if (query == null) { + return ""; + } + String clean = query.replace('\n', ' ').replace('\r', ' ').strip(); + return clean.length() > MAX_QUERY_LENGTH ? clean.substring(0, MAX_QUERY_LENGTH) : clean; + } + + private static int normalizeHue(int hue) { + int normalized = hue % 360; + return normalized < 0 ? normalized + 360 : normalized; + } + + private static double clamp01(double value) { + if (!Double.isFinite(value)) { + return 0.0D; + } + return Math.max(0.0D, Math.min(1.0D, value)); + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexUiMode.java b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexUiMode.java new file mode 100644 index 0000000..15a2720 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexUiMode.java @@ -0,0 +1,48 @@ +package dev.blocodex.network; + +public enum BlocodexUiMode { + STATS(0, "STATISTIQUES"), + WORLD(1, "CHUNK SCANNER"), + COLOR(2, "COLOR SPACE"), + PROFILE(3, "Joueur"), + WORLD_OVERVIEW(4, "Monde"), + LIBRARY(5, "Blocotheque"), + CREATIONS(6, "Galerie"); + + private final int id; + private final String label; + + BlocodexUiMode(int id, String label) { + this.id = id; + this.label = label; + } + + public int id() { + return id; + } + + public String label() { + return label; + } + + public BlocodexUiMode next() { + return switch (this) { + case STATS -> WORLD; + case WORLD -> COLOR; + default -> STATS; + }; + } + + public static BlocodexUiMode[] computerModes() { + return new BlocodexUiMode[]{PROFILE, WORLD_OVERVIEW, LIBRARY, CREATIONS}; + } + + public static BlocodexUiMode byId(int id) { + for (BlocodexUiMode mode : values()) { + if (mode.id == id) { + return mode; + } + } + return STATS; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexUiRequestPayload.java b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexUiRequestPayload.java new file mode 100644 index 0000000..28b3893 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexUiRequestPayload.java @@ -0,0 +1,43 @@ +package dev.blocodex.network; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import dev.blocodex.Blocodex; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record BlocodexUiRequestPayload(int mode, int sliderValue, int page, int selectedIndex, String query) implements CustomPacketPayload { + private static final int MAX_QUERY_LENGTH = 48; + public static final Type TYPE = new Type<>(Blocodex.id("ui_request")); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.INT.fieldOf("mode").forGetter(BlocodexUiRequestPayload::mode), + Codec.INT.fieldOf("slider_value").forGetter(BlocodexUiRequestPayload::sliderValue), + Codec.INT.fieldOf("page").forGetter(BlocodexUiRequestPayload::page), + Codec.INT.fieldOf("selected_index").forGetter(BlocodexUiRequestPayload::selectedIndex), + Codec.STRING.optionalFieldOf("query", "").forGetter(BlocodexUiRequestPayload::query) + ).apply(instance, BlocodexUiRequestPayload::new)); + public static final StreamCodec STREAM_CODEC = ByteBufCodecs.fromCodec(CODEC).cast(); + + public BlocodexUiRequestPayload(int mode, int sliderValue, int page, int selectedIndex) { + this(mode, sliderValue, page, selectedIndex, ""); + } + + public BlocodexUiRequestPayload { + query = sanitizeQuery(query); + } + + @Override + public Type type() { + return TYPE; + } + + private static String sanitizeQuery(String query) { + if (query == null) { + return ""; + } + String clean = query.replace('\n', ' ').replace('\r', ' ').strip(); + return clean.length() > MAX_QUERY_LENGTH ? clean.substring(0, MAX_QUERY_LENGTH) : clean; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexUiSnapshotPayload.java b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexUiSnapshotPayload.java new file mode 100644 index 0000000..25102c2 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexUiSnapshotPayload.java @@ -0,0 +1,119 @@ +package dev.blocodex.network; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import dev.blocodex.Blocodex; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +import java.util.List; + +public record BlocodexUiSnapshotPayload( + int mode, + int sliderValue, + int page, + int selectedIndex, + int minSliderValue, + int maxSliderValue, + List leftLines, + List gridBlockIds, + List gridColors, + List gridLabels, + String selectedBlockId, + int selectedColor, + List paletteBlockIds, + List graphPoints +) implements CustomPacketPayload { + public static final Type TYPE = new Type<>(Blocodex.id("ui_snapshot")); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.INT.fieldOf("mode").forGetter(BlocodexUiSnapshotPayload::mode), + Codec.INT.fieldOf("slider_value").forGetter(BlocodexUiSnapshotPayload::sliderValue), + Codec.INT.fieldOf("page").forGetter(BlocodexUiSnapshotPayload::page), + Codec.INT.fieldOf("selected_index").forGetter(BlocodexUiSnapshotPayload::selectedIndex), + Codec.INT.fieldOf("min_slider_value").forGetter(BlocodexUiSnapshotPayload::minSliderValue), + Codec.INT.fieldOf("max_slider_value").forGetter(BlocodexUiSnapshotPayload::maxSliderValue), + Codec.STRING.listOf().fieldOf("left_lines").forGetter(BlocodexUiSnapshotPayload::leftLines), + Codec.STRING.listOf().fieldOf("grid_block_ids").forGetter(BlocodexUiSnapshotPayload::gridBlockIds), + Codec.INT.listOf().fieldOf("grid_colors").forGetter(BlocodexUiSnapshotPayload::gridColors), + Codec.STRING.listOf().fieldOf("grid_labels").forGetter(BlocodexUiSnapshotPayload::gridLabels), + Codec.STRING.fieldOf("selected_block_id").forGetter(BlocodexUiSnapshotPayload::selectedBlockId), + Codec.INT.fieldOf("selected_color").forGetter(BlocodexUiSnapshotPayload::selectedColor), + Codec.STRING.listOf().optionalFieldOf("palette_block_ids", List.of()).forGetter(BlocodexUiSnapshotPayload::paletteBlockIds), + Codec.STRING.listOf().optionalFieldOf("graph_points", List.of()).forGetter(BlocodexUiSnapshotPayload::graphPoints) + ).apply(instance, BlocodexUiSnapshotPayload::new)); + public static final StreamCodec STREAM_CODEC = ByteBufCodecs.fromCodec(CODEC).cast(); + + public BlocodexUiSnapshotPayload( + int mode, + int sliderValue, + int page, + int selectedIndex, + int minSliderValue, + int maxSliderValue, + List leftLines, + List gridBlockIds, + List gridColors, + List gridLabels, + String selectedBlockId, + int selectedColor + ) { + this(mode, sliderValue, page, selectedIndex, minSliderValue, maxSliderValue, leftLines, gridBlockIds, gridColors, gridLabels, selectedBlockId, selectedColor, List.of(), List.of()); + } + + public BlocodexUiSnapshotPayload( + int mode, + int sliderValue, + int page, + int selectedIndex, + int minSliderValue, + int maxSliderValue, + List leftLines, + List gridBlockIds, + List gridColors, + List gridLabels, + String selectedBlockId, + int selectedColor, + List paletteBlockIds + ) { + this(mode, sliderValue, page, selectedIndex, minSliderValue, maxSliderValue, leftLines, gridBlockIds, gridColors, gridLabels, selectedBlockId, selectedColor, paletteBlockIds, List.of()); + } + + public BlocodexUiSnapshotPayload { + paletteBlockIds = List.copyOf(paletteBlockIds); + graphPoints = List.copyOf(graphPoints); + } + + public static BlocodexUiSnapshotPayload empty() { + return new BlocodexUiSnapshotPayload( + BlocodexUiMode.STATS.id(), + 0, + 0, + 40, + 0, + 8, + List.of("En attente du serveur..."), + emptyStrings(81), + repeatColor(81, 0xFF111111), + emptyStrings(81), + "", + 0xFF111111, + List.of(), + List.of() + ); + } + + @Override + public Type type() { + return TYPE; + } + + private static List emptyStrings(int size) { + return java.util.Collections.nCopies(size, ""); + } + + private static List repeatColor(int size, int color) { + return java.util.Collections.nCopies(size, color); + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexVoxelProjectDeletePayload.java b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexVoxelProjectDeletePayload.java new file mode 100644 index 0000000..2ad1b9f --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexVoxelProjectDeletePayload.java @@ -0,0 +1,26 @@ +package dev.blocodex.network; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import dev.blocodex.Blocodex; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record BlocodexVoxelProjectDeletePayload(String projectId) implements CustomPacketPayload { + public static final Type TYPE = new Type<>(Blocodex.id("voxel_project_delete")); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.STRING.fieldOf("project_id").forGetter(BlocodexVoxelProjectDeletePayload::projectId) + ).apply(instance, BlocodexVoxelProjectDeletePayload::new)); + public static final StreamCodec STREAM_CODEC = ByteBufCodecs.fromCodec(CODEC).cast(); + + public BlocodexVoxelProjectDeletePayload { + projectId = projectId == null ? "" : projectId.strip(); + } + + @Override + public Type type() { + return TYPE; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexVoxelProjectPayload.java b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexVoxelProjectPayload.java new file mode 100644 index 0000000..9fc58fa --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexVoxelProjectPayload.java @@ -0,0 +1,23 @@ +package dev.blocodex.network; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import dev.blocodex.Blocodex; +import dev.blocodex.memory.VoxelProjectMemory; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record BlocodexVoxelProjectPayload(VoxelProjectMemory project) implements CustomPacketPayload { + public static final Type TYPE = new Type<>(Blocodex.id("voxel_project")); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + VoxelProjectMemory.CODEC.fieldOf("project").forGetter(BlocodexVoxelProjectPayload::project) + ).apply(instance, BlocodexVoxelProjectPayload::new)); + public static final StreamCodec STREAM_CODEC = ByteBufCodecs.fromCodec(CODEC).cast(); + + @Override + public Type type() { + return TYPE; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexVoxelProjectRequestPayload.java b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexVoxelProjectRequestPayload.java new file mode 100644 index 0000000..104d39d --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexVoxelProjectRequestPayload.java @@ -0,0 +1,26 @@ +package dev.blocodex.network; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import dev.blocodex.Blocodex; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record BlocodexVoxelProjectRequestPayload(String projectId) implements CustomPacketPayload { + public static final Type TYPE = new Type<>(Blocodex.id("voxel_project_request")); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.STRING.fieldOf("project_id").forGetter(BlocodexVoxelProjectRequestPayload::projectId) + ).apply(instance, BlocodexVoxelProjectRequestPayload::new)); + public static final StreamCodec STREAM_CODEC = ByteBufCodecs.fromCodec(CODEC).cast(); + + public BlocodexVoxelProjectRequestPayload { + projectId = projectId == null ? "" : projectId.strip(); + } + + @Override + public Type type() { + return TYPE; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexVoxelProjectSavePayload.java b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexVoxelProjectSavePayload.java new file mode 100644 index 0000000..b55fdf5 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/network/BlocodexVoxelProjectSavePayload.java @@ -0,0 +1,23 @@ +package dev.blocodex.network; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import dev.blocodex.Blocodex; +import dev.blocodex.memory.VoxelProjectMemory; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record BlocodexVoxelProjectSavePayload(VoxelProjectMemory project) implements CustomPacketPayload { + public static final Type TYPE = new Type<>(Blocodex.id("voxel_project_save")); + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + VoxelProjectMemory.CODEC.fieldOf("project").forGetter(BlocodexVoxelProjectSavePayload::project) + ).apply(instance, BlocodexVoxelProjectSavePayload::new)); + public static final StreamCodec STREAM_CODEC = ByteBufCodecs.fromCodec(CODEC).cast(); + + @Override + public Type type() { + return TYPE; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/registry/BlocodexBlocks.java b/Gameplay/blocodex/src/main/java/dev/blocodex/registry/BlocodexBlocks.java new file mode 100644 index 0000000..ee7a6a1 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/registry/BlocodexBlocks.java @@ -0,0 +1,43 @@ +package dev.blocodex.registry; + +import dev.blocodex.Blocodex; +import dev.blocodex.block.ComputerBlock; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.Item; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.SoundType; +import net.minecraft.world.level.block.state.BlockBehaviour; + +import java.util.function.Function; + +public final class BlocodexBlocks { + public static final Block COMPUTER = register( + "computer", + ComputerBlock::new, + BlockBehaviour.Properties.of().strength(2.0F, 6.0F).sound(SoundType.METAL), + true + ); + + private BlocodexBlocks() { + } + + public static void initialize() { + } + + private static Block register(String name, Function factory, BlockBehaviour.Properties properties, boolean registerItem) { + ResourceKey blockKey = ResourceKey.create(Registries.BLOCK, Blocodex.id(name)); + Block block = factory.apply(properties.setId(blockKey)); + + if (registerItem) { + ResourceKey itemKey = ResourceKey.create(Registries.ITEM, Blocodex.id(name)); + BlockItem item = new BlockItem(block, new Item.Properties().setId(itemKey).useBlockDescriptionPrefix()); + Registry.register(BuiltInRegistries.ITEM, itemKey, item); + } + + return Registry.register(BuiltInRegistries.BLOCK, blockKey, block); + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/registry/BlocodexItems.java b/Gameplay/blocodex/src/main/java/dev/blocodex/registry/BlocodexItems.java new file mode 100644 index 0000000..ed62644 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/registry/BlocodexItems.java @@ -0,0 +1,27 @@ +package dev.blocodex.registry; + +import dev.blocodex.Blocodex; +import dev.blocodex.item.BlocodexItem; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.item.Item; + +import java.util.function.Function; + +public final class BlocodexItems { + public static final Item BLOCODEX = register("blocodex", BlocodexItem::new, new Item.Properties().stacksTo(1)); + + private BlocodexItems() { + } + + public static void initialize() { + } + + public static T register(String name, Function factory, Item.Properties properties) { + ResourceKey key = ResourceKey.create(Registries.ITEM, Blocodex.id(name)); + T item = factory.apply(properties.setId(key)); + return Registry.register(BuiltInRegistries.ITEM, key, item); + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexScanner.java b/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexScanner.java new file mode 100644 index 0000000..fd0fa0e --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexScanner.java @@ -0,0 +1,271 @@ +package dev.blocodex.server; + +import dev.blocodex.memory.BlocodexSavedData; +import dev.blocodex.memory.ChunkKey; +import dev.blocodex.memory.PlayerMemory; +import dev.blocodex.memory.PlayerStatSample; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.ResourceKey; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.stats.ServerStatsCounter; +import net.minecraft.stats.Stats; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.biome.Biome; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.phys.AABB; + +import java.util.ArrayDeque; +import java.util.HashSet; +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; +import java.util.Map; +import java.util.Optional; +import java.util.Queue; +import java.util.Set; + +public final class BlocodexScanner { + private static final int PASSIVE_RADIUS = 1; + private static final int SCAN_INTERVAL_TICKS = 40; + private static final int SCAN_BUDGET_PER_TICK = 2; + private static final int HEAT_INTERVAL_TICKS = 20; + private static final int STAT_SAMPLE_INTERVAL_TICKS = 6000; + private static final Queue PENDING_SCANS = new ArrayDeque<>(); + + private BlocodexScanner() { + } + + public static void tick(MinecraftServer server) { + int tick = server.getTickCount(); + + if (tick % HEAT_INTERVAL_TICKS == 0) { + recordPlayerPresence(server, HEAT_INTERVAL_TICKS); + } + + if (tick % SCAN_INTERVAL_TICKS == 0) { + enqueuePassiveScans(server, PASSIVE_RADIUS); + } + + drainScanBudget(SCAN_BUDGET_PER_TICK); + } + + public static int scanAroundPlayer(ServerPlayer player, int radius, int budget) { + int scanned = 0; + ChunkPos center = player.chunkPosition(); + for (int x = center.x() - radius; x <= center.x() + radius; x++) { + for (int z = center.z() - radius; z <= center.z() + radius; z++) { + if (scanned >= budget) { + return scanned; + } + if (scanLoadedChunk(player, player.level(), x, z)) { + scanned++; + } + } + } + return scanned; + } + + public static ChunkKey keyFor(ServerLevel level, int chunkX, int chunkZ) { + return new ChunkKey(level.dimension().identifier().toString(), chunkX, chunkZ); + } + + private static void recordPlayerPresence(MinecraftServer server, long ticks) { + BlocodexSavedData data = BlocodexSavedData.get(server); + boolean changed = false; + + for (ServerPlayer player : server.getPlayerList().getPlayers()) { + ChunkPos chunkPos = player.chunkPosition(); + ChunkKey key = keyFor(player.level(), chunkPos.x(), chunkPos.z()); + String playerId = player.getUUID().toString(); + changed |= data.memory().addChunkTime(playerId, key, ticks); + changed |= recordInventory(data, playerId, player); + changed |= recordNearbyEntities(data, playerId, player); + changed |= recordCurrentStatSample(data, playerId, player); + } + + if (changed) { + data.setDirty(); + } + } + + private static boolean recordInventory(BlocodexSavedData data, String playerId, ServerPlayer player) { + boolean changed = false; + String dimension = player.level().dimension().identifier().toString(); + BlockPos pos = player.blockPosition(); + for (int slot = 0; slot < player.getInventory().getContainerSize(); slot++) { + ItemStack stack = player.getInventory().getItem(slot); + if (!stack.isEmpty()) { + String itemId = BuiltInRegistries.ITEM.getKey(stack.getItem()).toString(); + changed |= data.memory().recordItem(playerId, itemId, player.level().getGameTime(), dimension, pos.getX(), pos.getY(), pos.getZ()); + } + } + return changed; + } + + private static boolean recordCurrentStatSample(BlocodexSavedData data, String playerId, ServerPlayer player) { + PlayerMemory memory = data.memory().player(playerId); + ServerStatsCounter stats = player.getStats(); + long playTimeTicks = stats.getValue(Stats.CUSTOM.get(Stats.PLAY_TIME)); + if (!memory.statSamples().isEmpty()) { + PlayerStatSample last = memory.statSamples().getLast(); + if (playTimeTicks - last.playTimeTicks() < STAT_SAMPLE_INTERVAL_TICKS) { + return false; + } + } + + PlayerStatSample sample = new PlayerStatSample( + playTimeTicks, + distanceCentimeters(stats), + sum(memory.brokenBlocks()), + craftedTotal(stats), + memory.visitedChunks().size(), + memory.biomes().size(), + memory.discoveredBlocks().size() + ); + return memory.recordStatSample(sample); + } + + private static long distanceCentimeters(ServerStatsCounter stats) { + return (long) stats.getValue(Stats.CUSTOM.get(Stats.WALK_ONE_CM)) + + stats.getValue(Stats.CUSTOM.get(Stats.CROUCH_ONE_CM)) + + stats.getValue(Stats.CUSTOM.get(Stats.SPRINT_ONE_CM)) + + stats.getValue(Stats.CUSTOM.get(Stats.WALK_ON_WATER_ONE_CM)) + + stats.getValue(Stats.CUSTOM.get(Stats.WALK_UNDER_WATER_ONE_CM)) + + stats.getValue(Stats.CUSTOM.get(Stats.SWIM_ONE_CM)) + + stats.getValue(Stats.CUSTOM.get(Stats.FLY_ONE_CM)) + + stats.getValue(Stats.CUSTOM.get(Stats.AVIATE_ONE_CM)); + } + + private static long craftedTotal(ServerStatsCounter stats) { + long total = 0; + for (Item item : BuiltInRegistries.ITEM) { + total += stats.getValue(Stats.ITEM_CRAFTED, item); + } + return total; + } + + private static long sum(Map counts) { + return counts.values().stream().mapToLong(Long::longValue).sum(); + } + + private static boolean recordNearbyEntities(BlocodexSavedData data, String playerId, ServerPlayer player) { + boolean changed = false; + String dimension = player.level().dimension().identifier().toString(); + BlockPos pos = player.blockPosition(); + AABB box = player.getBoundingBox().inflate(32.0D); + for (Entity entity : player.level().getEntities(player, box)) { + String entityId = BuiltInRegistries.ENTITY_TYPE.getKey(entity.getType()).toString(); + changed |= data.memory().recordEntity(playerId, entityId, player.level().getGameTime(), dimension, pos.getX(), pos.getY(), pos.getZ()); + } + return changed; + } + + private static void enqueuePassiveScans(MinecraftServer server, int radius) { + Set queued = new HashSet<>(); + for (ScanTarget pending : PENDING_SCANS) { + queued.add(pending.queueKey()); + } + + for (ServerPlayer player : server.getPlayerList().getPlayers()) { + ChunkPos center = player.chunkPosition(); + ServerLevel level = player.level(); + for (int x = center.x() - radius; x <= center.x() + radius; x++) { + for (int z = center.z() - radius; z <= center.z() + radius; z++) { + ScanTarget target = new ScanTarget(player, level, x, z); + if (queued.add(target.queueKey())) { + PENDING_SCANS.add(target); + } + } + } + } + } + + private static void drainScanBudget(int budget) { + int scanned = 0; + while (scanned < budget && !PENDING_SCANS.isEmpty()) { + ScanTarget target = PENDING_SCANS.poll(); + if (target != null && scanLoadedChunk(target.player(), target.level(), target.chunkX(), target.chunkZ())) { + scanned++; + } + } + } + + private static boolean scanLoadedChunk(ServerPlayer player, ServerLevel level, int chunkX, int chunkZ) { + LevelChunk chunk = level.getChunkSource().getChunkNow(chunkX, chunkZ); + if (chunk == null) { + return false; + } + + Map blockCounts = new LinkedHashMap<>(); + Map> layerBlockCounts = new LinkedHashMap<>(); + Set biomes = new LinkedHashSet<>(); + BlockPos.MutableBlockPos mutablePos = new BlockPos.MutableBlockPos(); + int minFoundY = Integer.MAX_VALUE; + int maxFoundY = Integer.MIN_VALUE; + int minY = level.getMinY(); + int maxY = level.getMaxY(); + int baseX = chunkX << 4; + int baseZ = chunkZ << 4; + + for (int localX = 0; localX < 16; localX++) { + for (int localZ = 0; localZ < 16; localZ++) { + for (int y = minY; y < maxY; y++) { + mutablePos.set(baseX + localX, y, baseZ + localZ); + BlockState state = chunk.getBlockState(mutablePos); + if (state.isAir()) { + continue; + } + + blockCounts.merge(BuiltInRegistries.BLOCK.getKey(state.getBlock()).toString(), 1L, Long::sum); + layerBlockCounts + .computeIfAbsent(y, ignored -> new LinkedHashMap<>()) + .merge(BuiltInRegistries.BLOCK.getKey(state.getBlock()).toString(), 1L, Long::sum); + minFoundY = Math.min(minFoundY, y); + maxFoundY = Math.max(maxFoundY, y); + } + } + } + + int biomeY = Math.max(minY, Math.min(level.getSeaLevel(), maxY - 1)); + for (int localX = 0; localX < 16; localX += 8) { + for (int localZ = 0; localZ < 16; localZ += 8) { + mutablePos.set(baseX + localX, biomeY, baseZ + localZ); + Optional> biomeKey = level.getBiome(mutablePos).unwrapKey(); + biomeKey.map(key -> key.identifier().toString()).ifPresent(biomes::add); + } + } + + if (minFoundY == Integer.MAX_VALUE) { + minFoundY = 0; + maxFoundY = 0; + } + + BlocodexSavedData data = BlocodexSavedData.get(level.getServer()); + boolean changed = data.memory().observeChunk( + player.getUUID().toString(), + keyFor(level, chunkX, chunkZ), + blockCounts, + layerBlockCounts, + biomes, + minFoundY, + maxFoundY, + level.getGameTime() + ); + if (changed) { + data.setDirty(); + } + return true; + } + + private record ScanTarget(ServerPlayer player, ServerLevel level, int chunkX, int chunkZ) { + private String queueKey() { + return player.getUUID() + "|" + level.dimension().identifier() + "|" + chunkX + "|" + chunkZ; + } + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexServerEvents.java b/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexServerEvents.java new file mode 100644 index 0000000..eae89b3 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexServerEvents.java @@ -0,0 +1,43 @@ +package dev.blocodex.server; + +import dev.blocodex.memory.BlocodexSavedData; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents; +import net.fabricmc.fabric.api.event.player.PlayerBlockBreakEvents; +import net.fabricmc.fabric.api.networking.v1.ServerPlayConnectionEvents; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerLevel; + +public final class BlocodexServerEvents { + private BlocodexServerEvents() { + } + + public static void register() { + ServerTickEvents.END_SERVER_TICK.register(BlocodexServerEvents::onServerTick); + ServerPlayConnectionEvents.JOIN.register((handler, sender, server) -> + BlocodexSpawnComputer.handlePlayerJoin(handler.player, server)); + PlayerBlockBreakEvents.AFTER.register((level, player, pos, state, blockEntity) -> { + if (!(level instanceof ServerLevel serverLevel)) { + return; + } + + BlocodexSavedData data = BlocodexSavedData.get(serverLevel.getServer()); + String blockId = BuiltInRegistries.BLOCK.getKey(state.getBlock()).toString(); + data.memory().recordBrokenBlock( + player.getUUID().toString(), + blockId, + serverLevel.getGameTime(), + serverLevel.dimension().identifier().toString(), + pos.getX(), + pos.getY(), + pos.getZ() + ); + data.setDirty(); + }); + } + + private static void onServerTick(MinecraftServer server) { + BlocodexScanner.tick(server); + BlocodexUiSnapshots.warmColorCaches(server, 3); + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexSpawnComputer.java b/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexSpawnComputer.java new file mode 100644 index 0000000..c09e82b --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexSpawnComputer.java @@ -0,0 +1,116 @@ +package dev.blocodex.server; + +import dev.blocodex.Blocodex; +import dev.blocodex.memory.BlocodexWorldSetupData; +import dev.blocodex.registry.BlocodexBlocks; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.HorizontalDirectionalBlock; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.Heightmap; +import net.minecraft.world.level.storage.LevelData; + +import java.util.Optional; + +public final class BlocodexSpawnComputer { + private static final long NEW_WORLD_GRACE_TICKS = 20L * 60L * 5L; + private static final int SEARCH_RADIUS = 8; + + private BlocodexSpawnComputer() { + } + + public static void handlePlayerJoin(ServerPlayer player, MinecraftServer server) { + ServerLevel level = server.getLevel(Level.OVERWORLD); + if (level == null || player.level() != level) { + return; + } + + BlocodexWorldSetupData setupData = BlocodexWorldSetupData.get(level); + if (setupData.spawnComputerHandled()) { + return; + } + + if (level.getGameTime() > NEW_WORLD_GRACE_TICKS) { + setupData.markSpawnComputerHandled(); + return; + } + + BlockPos spawnCenter = level.getRespawnData().pos(); + Optional computerPos = findComputerPosition(level, spawnCenter); + if (computerPos.isEmpty()) { + return; + } + + placeComputer(level, computerPos.get()); + BlockPos playerSpawn = computerPos.get().above(); + level.setRespawnData(LevelData.RespawnData.of(Level.OVERWORLD, playerSpawn, 180.0F, 0.0F)); + player.teleportTo(playerSpawn.getX() + 0.5D, playerSpawn.getY(), playerSpawn.getZ() + 0.5D); + player.resetFallDistance(); + setupData.markSpawnComputerHandled(); + + Blocodex.LOGGER.info("Placed the Blocodex spawn computer at {}", computerPos.get()); + } + + private static Optional findComputerPosition(ServerLevel level, BlockPos center) { + for (int radius = 0; radius <= SEARCH_RADIUS; radius++) { + for (int dx = -radius; dx <= radius; dx++) { + for (int dz = -radius; dz <= radius; dz++) { + if (radius > 0 && Math.abs(dx) != radius && Math.abs(dz) != radius) { + continue; + } + + Optional candidate = computerPositionAt(level, center.getX() + dx, center.getZ() + dz); + if (candidate.isPresent()) { + return candidate; + } + } + } + } + return Optional.empty(); + } + + private static Optional computerPositionAt(ServerLevel level, int x, int z) { + int minY = level.getMinY() + 1; + int maxY = level.getMaxY() - 3; + if (maxY < minY) { + return Optional.empty(); + } + + int y = clamp(level.getHeight(Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, x, z), minY, maxY); + BlockPos.MutableBlockPos cursor = new BlockPos.MutableBlockPos(x, y, z); + while (cursor.getY() <= maxY) { + if (canPrepareSpawnComputer(level, cursor)) { + return Optional.of(cursor.immutable()); + } + cursor.move(Direction.UP); + } + return Optional.empty(); + } + + private static boolean canPrepareSpawnComputer(ServerLevel level, BlockPos pos) { + return canReplace(level.getBlockState(pos)) + && canReplace(level.getBlockState(pos.above())) + && canReplace(level.getBlockState(pos.above(2))); + } + + private static boolean canReplace(BlockState state) { + return state.isAir() || state.canBeReplaced(); + } + + private static void placeComputer(ServerLevel level, BlockPos pos) { + BlockState computer = BlocodexBlocks.COMPUTER.defaultBlockState() + .setValue(HorizontalDirectionalBlock.FACING, Direction.NORTH); + level.setBlockAndUpdate(pos.above(2), Blocks.AIR.defaultBlockState()); + level.setBlockAndUpdate(pos.above(), Blocks.AIR.defaultBlockState()); + level.setBlockAndUpdate(pos, computer); + } + + private static int clamp(int value, int min, int max) { + return Math.max(min, Math.min(max, value)); + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexStudioPalettes.java b/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexStudioPalettes.java new file mode 100644 index 0000000..2d92c85 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexStudioPalettes.java @@ -0,0 +1,307 @@ +package dev.blocodex.server; + +import dev.blocodex.codex.WsmcCodexIndex; +import dev.blocodex.codex.WsmcCodexIndex.WsmcEntry; +import dev.blocodex.memory.BlocodexSavedData; +import dev.blocodex.memory.PlayerMemory; +import dev.blocodex.network.BlocodexStudioPalettePayload; +import dev.blocodex.network.BlocodexStudioPaletteRequestPayload; +import dev.blocodex.voxel.VoxelProjectValidator; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.Identifier; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.EmptyBlockGetter; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.material.MapColor; + +import java.util.Comparator; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.Optional; +import java.util.Set; +import java.util.function.Predicate; +import java.util.function.ToIntFunction; + +public final class BlocodexStudioPalettes { + private static final int MAX_ENTRIES = 256; + private static final int GRID_SIZE = 9; + private static final int FALLBACK_COLOR = 0xFF777777; + private static final Map DYE_COLORS = Map.ofEntries( + Map.entry("white", 0xFFF9FFFE), + Map.entry("orange", 0xFFF9801D), + Map.entry("magenta", 0xFFC74EBD), + Map.entry("light_blue", 0xFF3AB3DA), + Map.entry("yellow", 0xFFFED83D), + Map.entry("lime", 0xFF80C71F), + Map.entry("pink", 0xFFF38BAA), + Map.entry("gray", 0xFF474F52), + Map.entry("light_gray", 0xFF9D9D97), + Map.entry("cyan", 0xFF169C9C), + Map.entry("purple", 0xFF8932B8), + Map.entry("blue", 0xFF3C44AA), + Map.entry("brown", 0xFF835432), + Map.entry("green", 0xFF5E7C16), + Map.entry("red", 0xFFB02E26), + Map.entry("black", 0xFF1D1D21) + ); + private static final Map WOOD_COLORS = Map.ofEntries( + Map.entry("oak", 0xFFA7834C), + Map.entry("spruce", 0xFF6B4B2A), + Map.entry("birch", 0xFFC8B66B), + Map.entry("jungle", 0xFFA66C4B), + Map.entry("acacia", 0xFFB45F2A), + Map.entry("dark_oak", 0xFF3F2B18), + Map.entry("mangrove", 0xFF77332E), + Map.entry("cherry", 0xFFE3AFC0), + Map.entry("bamboo", 0xFFC6B75B), + Map.entry("crimson", 0xFF7A3651), + Map.entry("warped", 0xFF36877F), + Map.entry("pale_oak", 0xFFD8D3BC) + ); + + private BlocodexStudioPalettes() { + } + + public static BlocodexStudioPalettePayload create(ServerPlayer player, BlocodexStudioPaletteRequestPayload request) { + PlayerMemory memory = BlocodexSavedData.get(player.level().getServer()).memory().player(player.getUUID().toString()); + return query( + memory, + WsmcCodexIndex.loadDefault(), + player.level(), + player.blockPosition(), + request + ); + } + + static BlocodexStudioPalettePayload query(PlayerMemory memory, WsmcCodexIndex index, BlockGetter level, BlockPos pos, BlocodexStudioPaletteRequestPayload request) { + return queryDiscoveredBlocks( + memory.discoveredBlocks(), + index, + request, + VoxelProjectValidator::isOpaquePaletteBlock, + blockId -> fallbackColor(level, pos, blockId) + ); + } + + static BlocodexStudioPalettePayload queryDiscoveredBlocks(Set discoveredBlocks, WsmcCodexIndex index, BlocodexStudioPaletteRequestPayload request, Predicate opaqueBuildableBlock, ToIntFunction fallbackColor) { + String query = normalizeQuery(request.query()); + List candidates = discoveredBlocks.stream() + .filter(opaqueBuildableBlock) + .map(blockId -> candidate(blockId, index, fallbackColor, request)) + .filter(candidate -> query.isBlank() || matches(candidate, query)) + .limit(MAX_ENTRIES) + .toList(); + + PaletteCandidate selected = candidates.stream() + .min(Comparator.comparingDouble(candidate -> candidate.distanceTo(request.hue(), request.saturation(), request.lightness())) + .thenComparing(PaletteCandidate::label, String.CASE_INSENSITIVE_ORDER) + .thenComparing(PaletteCandidate::blockId)) + .orElse(null); + List grid = hslGrid(candidates, request); + List blockIds = grid.stream().map(PaletteCandidate::blockId).toList(); + List colors = grid.stream().map(PaletteCandidate::argb).toList(); + List labels = grid.stream().map(PaletteCandidate::label).toList(); + String selectedBlockId = selected == null ? "" : selected.blockId(); + int selectedColor = selected == null ? FALLBACK_COLOR : selected.argb(); + return new BlocodexStudioPalettePayload( + blockIds, + colors, + labels, + selectedBlockId, + selectedColor + ); + } + + private static PaletteCandidate candidate(String blockId, WsmcCodexIndex index, ToIntFunction fallbackColor, BlocodexStudioPaletteRequestPayload request) { + Optional entry = index.entry(blockId).filter(candidate -> "block".equals(candidate.entryType())); + int color = entry.map(WsmcEntry::primaryArgb).orElseGet(() -> fallbackColor.applyAsInt(blockId)); + String label = entry.map(WsmcEntry::displayName).orElseGet(() -> fallbackLabel(blockId)); + return new PaletteCandidate(blockId, color, label, entry.orElse(null)); + } + + private static List hslGrid(List candidates, BlocodexStudioPaletteRequestPayload request) { + List remaining = new java.util.ArrayList<>(candidates); + List grid = new java.util.ArrayList<>(GRID_SIZE * GRID_SIZE); + for (int row = 0; row < GRID_SIZE && !remaining.isEmpty(); row++) { + double lightness = 1.0D - row / (double) (GRID_SIZE - 1); + for (int col = 0; col < GRID_SIZE && !remaining.isEmpty(); col++) { + double saturation = col / (double) (GRID_SIZE - 1); + PaletteCandidate best = remaining.stream() + .min(Comparator.comparingDouble(candidate -> candidate.distanceTo(request.hue(), saturation, lightness)) + .thenComparing(PaletteCandidate::label, String.CASE_INSENSITIVE_ORDER) + .thenComparing(PaletteCandidate::blockId)) + .orElseThrow(); + grid.add(best); + remaining.remove(best); + } + } + if (grid.size() < GRID_SIZE * GRID_SIZE) { + candidates.stream() + .sorted(Comparator.comparingDouble(candidate -> candidate.distanceTo(request.hue(), request.saturation(), request.lightness())) + .thenComparing(PaletteCandidate::label, String.CASE_INSENSITIVE_ORDER) + .thenComparing(PaletteCandidate::blockId)) + .filter(candidate -> !grid.contains(candidate)) + .limit(GRID_SIZE * GRID_SIZE - grid.size()) + .forEach(grid::add); + } + return grid; + } + + private static boolean matches(PaletteCandidate candidate, String query) { + return containsQuery(candidate.blockId(), query) || containsQuery(candidate.label(), query); + } + + private static int fallbackColor(BlockGetter level, BlockPos pos, String blockId) { + Optional block = block(blockId); + if (block.isEmpty() || block.get() == Blocks.AIR) { + return FALLBACK_COLOR; + } + + Integer named = namedPaletteColor(blockPath(blockId)); + if (named != null) { + return named; + } + + BlockGetter safeLevel = level == null ? EmptyBlockGetter.INSTANCE : level; + BlockPos safePos = pos == null ? BlockPos.ZERO : pos; + BlockState state = block.get().defaultBlockState(); + int color = state.getMapColor(safeLevel, safePos).calculateARGBColor(MapColor.Brightness.NORMAL); + return 0xFF000000 | (color & 0x00FFFFFF); + } + + private static String fallbackLabel(String blockId) { + return blockPath(blockId).replace('_', ' '); + } + + private static Optional block(String blockId) { + Identifier id = Identifier.tryParse(blockId); + return id == null ? Optional.empty() : BuiltInRegistries.BLOCK.getOptional(id); + } + + private static String normalizeQuery(String query) { + return query == null ? "" : query.strip().toLowerCase(Locale.ROOT); + } + + private static boolean containsQuery(String value, String query) { + return value != null && value.toLowerCase(Locale.ROOT).contains(query); + } + + private static Integer namedPaletteColor(String path) { + if (path.equals("grass_block")) { + return 0xFF79C05A; + } + if (path.equals("water")) { + return 0xFF3F76E4; + } + if (path.equals("lava")) { + return 0xFFFF5A00; + } + if (path.equals("birch_leaves")) { + return 0xFF80A755; + } + if (path.equals("spruce_leaves")) { + return 0xFF619961; + } + if (path.endsWith("_leaves")) { + return 0xFF48B518; + } + + for (Map.Entry entry : DYE_COLORS.entrySet()) { + String prefix = entry.getKey() + "_"; + if (path.startsWith(prefix) && isDyedPaletteMaterial(path)) { + return entry.getValue(); + } + } + + for (Map.Entry entry : WOOD_COLORS.entrySet()) { + String wood = entry.getKey(); + if (isWoodPaletteMaterial(path, wood)) { + return entry.getValue(); + } + } + return null; + } + + private static boolean isDyedPaletteMaterial(String path) { + return path.endsWith("_concrete") + || path.endsWith("_concrete_powder") + || path.endsWith("_wool") + || path.endsWith("_terracotta") + || path.endsWith("_glazed_terracotta") + || path.endsWith("_stained_glass"); + } + + private static boolean isWoodPaletteMaterial(String path, String wood) { + return path.equals(wood + "_planks") + || path.equals(wood + "_log") + || path.equals(wood + "_wood") + || path.equals(wood + "_stem") + || path.equals(wood + "_hyphae") + || path.equals("stripped_" + wood + "_log") + || path.equals("stripped_" + wood + "_wood") + || path.equals("stripped_" + wood + "_stem") + || path.equals("stripped_" + wood + "_hyphae") + || path.equals(wood + "_block") + || path.equals("stripped_" + wood + "_block") + || path.equals(wood + "_mosaic"); + } + + private static String blockPath(String blockId) { + int split = blockId.indexOf(':'); + return split >= 0 ? blockId.substring(split + 1) : blockId; + } + + private static double colorDistance(int argb, double hue, double saturation, double lightness) { + Hsl hsl = rgbToHsl(argb); + double hueDistance = Math.abs(hsl.hue() - hue); + hueDistance = Math.min(hueDistance, 360.0D - hueDistance) / 180.0D; + double saturationDistance = hsl.saturation() - saturation; + double lightnessDistance = hsl.lightness() - lightness; + return hueDistance * hueDistance * 1.4D + + saturationDistance * saturationDistance + + lightnessDistance * lightnessDistance * 1.15D; + } + + private static Hsl rgbToHsl(int argb) { + double red = ((argb >> 16) & 255) / 255.0D; + double green = ((argb >> 8) & 255) / 255.0D; + double blue = (argb & 255) / 255.0D; + double max = Math.max(red, Math.max(green, blue)); + double min = Math.min(red, Math.min(green, blue)); + double lightness = (max + min) / 2.0D; + double hue; + double saturation; + if (max == min) { + hue = 0.0D; + saturation = 0.0D; + } else { + double delta = max - min; + saturation = lightness > 0.5D ? delta / (2.0D - max - min) : delta / (max + min); + if (max == red) { + hue = (green - blue) / delta + (green < blue ? 6.0D : 0.0D); + } else if (max == green) { + hue = (blue - red) / delta + 2.0D; + } else { + hue = (red - green) / delta + 4.0D; + } + hue *= 60.0D; + } + return new Hsl(hue, saturation, lightness); + } + + private record Hsl(double hue, double saturation, double lightness) { + } + + private record PaletteCandidate(String blockId, int argb, String label, WsmcEntry entry) { + private double distanceTo(double hue, double saturation, double lightness) { + return entry == null + ? colorDistance(argb, hue, saturation, lightness) + : entry.distanceToHsl(hue, saturation, lightness); + } + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexUiSnapshots.java b/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexUiSnapshots.java new file mode 100644 index 0000000..1441a59 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/server/BlocodexUiSnapshots.java @@ -0,0 +1,1770 @@ +package dev.blocodex.server; + +import dev.blocodex.memory.BlocodexMemory; +import dev.blocodex.memory.BlocodexSavedData; +import dev.blocodex.memory.ChunkKey; +import dev.blocodex.memory.ChunkMemory; +import dev.blocodex.memory.GridDistribution; +import dev.blocodex.memory.MemoryMath; +import dev.blocodex.memory.PlayerMemory; +import dev.blocodex.memory.PlayerStatSample; +import dev.blocodex.memory.RecentMemoryEvent; +import dev.blocodex.memory.VoxelProjectMemory; +import dev.blocodex.voxel.VoxelProjectPlacement; +import dev.blocodex.voxel.VoxelProjectRequirements; +import dev.blocodex.voxel.VoxelProjectValidator; +import dev.blocodex.codex.WsmcCodexIndex; +import dev.blocodex.codex.WsmcCodexIndex.HistoryNote; +import dev.blocodex.codex.WsmcCodexIndex.WsmcEntry; +import dev.blocodex.network.BlocodexUiMode; +import dev.blocodex.network.BlocodexUiRequestPayload; +import dev.blocodex.network.BlocodexUiSnapshotPayload; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.Identifier; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.stats.ServerStatsCounter; +import net.minecraft.stats.Stats; +import net.minecraft.world.item.Item; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.levelgen.Heightmap; +import net.minecraft.world.level.material.MapColor; + +import java.util.ArrayList; +import java.util.Comparator; +import java.util.HashMap; +import java.util.LinkedHashSet; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.Optional; +import java.util.Set; + +public final class BlocodexUiSnapshots { + private static final int GRID_SIZE = 81; + private static final int GRID_WIDTH = 9; + private static final int CHUNK_BLOCK_SIZE = 16; + private static final int WORLD_MAP_BLOCK_WIDTH = GRID_WIDTH * CHUNK_BLOCK_SIZE; + private static final int WORLD_MAP_SURFACE = 0; + private static final int WORLD_MAP_HEATMAP = 1; + private static final int WORLD_MAP_BIOMES = 2; + private static final int DARK_CELL = 0xFF101312; + private static final int EMPTY_CELL = 0xFF070909; + private static final int HUE_COUNT = 360; + private static final Map COLOR_CACHES = new LinkedHashMap<>(); + private static final Map DYE_COLORS = Map.ofEntries( + Map.entry("white", 0xFFF9FFFE), + Map.entry("orange", 0xFFF9801D), + Map.entry("magenta", 0xFFC74EBD), + Map.entry("light_blue", 0xFF3AB3DA), + Map.entry("yellow", 0xFFFED83D), + Map.entry("lime", 0xFF80C71F), + Map.entry("pink", 0xFFF38BAA), + Map.entry("gray", 0xFF474F52), + Map.entry("light_gray", 0xFF9D9D97), + Map.entry("cyan", 0xFF169C9C), + Map.entry("purple", 0xFF8932B8), + Map.entry("blue", 0xFF3C44AA), + Map.entry("brown", 0xFF835432), + Map.entry("green", 0xFF5E7C16), + Map.entry("red", 0xFFB02E26), + Map.entry("black", 0xFF1D1D21) + ); + private static final Map WOOD_COLORS = Map.ofEntries( + Map.entry("oak", 0xFFA7834C), + Map.entry("spruce", 0xFF6B4B2A), + Map.entry("birch", 0xFFC8B66B), + Map.entry("jungle", 0xFFA66C4B), + Map.entry("acacia", 0xFFB45F2A), + Map.entry("dark_oak", 0xFF3F2B18), + Map.entry("mangrove", 0xFF77332E), + Map.entry("cherry", 0xFFE3AFC0), + Map.entry("bamboo", 0xFFC6B75B), + Map.entry("crimson", 0xFF7A3651), + Map.entry("warped", 0xFF36877F), + Map.entry("pale_oak", 0xFFD8D3BC) + ); + + private BlocodexUiSnapshots() { + } + + public static BlocodexUiSnapshotPayload create(ServerPlayer player, BlocodexUiRequestPayload request) { + BlocodexUiMode mode = BlocodexUiMode.byId(request.mode()); + return switch (mode) { + case STATS -> statsSnapshot(player, request); + case WORLD -> worldSnapshot(player, request); + case COLOR -> colorSnapshot(player, request); + case PROFILE -> profileSnapshot(player, request); + case WORLD_OVERVIEW -> worldOverviewSnapshot(player, request); + case LIBRARY -> librarySnapshot(player, request); + case CREATIONS -> creationsSnapshot(player, request); + }; + } + + public static void warmColorCaches(MinecraftServer server, int hueBudget) { + if (hueBudget <= 0 || server.getPlayerList().getPlayers().isEmpty()) { + return; + } + + BlocodexMemory memory = BlocodexSavedData.get(server).memory(); + WsmcCodexIndex index = WsmcCodexIndex.loadDefault(); + Set onlinePlayers = new LinkedHashSet<>(); + int remaining = hueBudget; + for (ServerPlayer player : server.getPlayerList().getPlayers()) { + String playerId = player.getUUID().toString(); + onlinePlayers.add(playerId); + ColorCache cache = colorCache(player, memory.player(playerId), index, ""); + remaining = cache.warm(remaining); + if (remaining <= 0) { + break; + } + } + COLOR_CACHES.keySet().removeIf(cacheKey -> !onlinePlayers.contains(cachePlayerId(cacheKey))); + } + + public static void clearColorCaches() { + COLOR_CACHES.clear(); + } + + private static BlocodexUiSnapshotPayload statsSnapshot(ServerPlayer player, BlocodexUiRequestPayload request) { + ServerLevel level = player.level(); + BlocodexMemory memory = BlocodexSavedData.get(level.getServer()).memory(); + PlayerMemory playerMemory = memory.player(player.getUUID().toString()); + ServerStatsCounter stats = player.getStats(); + int zoom = clamp(request.sliderValue(), 0, 8); + int stride = zoom + 1; + int page = 0; + + List ids = new ArrayList<>(GRID_SIZE); + List colors = new ArrayList<>(GRID_SIZE); + List labels = new ArrayList<>(GRID_SIZE); + fillStatsMap(player, memory, ids, colors, labels, stride); + + BlockPos pos = player.blockPosition(); + List lines = statsLines( + level.getServer().getWorldData().getLevelName(), + pos, + dimensionName(level), + playerMemory.discoveredBlocks().size(), + sum(playerMemory.observedBlockCounts()), + playerMemory.visitedChunks().size(), + sum(playerMemory.brokenBlocks()), + centimetersToMeters(distanceCentimeters(stats)) + " m", + ticksToClock(stats.getValue(Stats.CUSTOM.get(Stats.PLAY_TIME))), + craftedTotal(stats), + stride + ); + + return payload(BlocodexUiMode.STATS, zoom, page, 40, 0, 8, lines, ids, colors, labels); + } + + private static BlocodexUiSnapshotPayload profileSnapshot(ServerPlayer player, BlocodexUiRequestPayload request) { + ServerLevel level = player.level(); + BlocodexMemory memory = BlocodexSavedData.get(level.getServer()).memory(); + PlayerMemory playerMemory = memory.player(player.getUUID().toString()); + ServerStatsCounter stats = player.getStats(); + BlockPos pos = player.blockPosition(); + + List lines = profileLines( + player.getName().getString(), + level.getServer().getWorldData().getLevelName(), + dimensionName(level), + pos, + playerMemory, + centimetersToMeters(distanceCentimeters(stats)) + " m", + ticksToClock(stats.getValue(Stats.CUSTOM.get(Stats.PLAY_TIME))), + craftedTotal(stats), + sum(playerMemory.brokenBlocks()) + ); + + return payload(BlocodexUiMode.PROFILE, 0, 0, 0, 0, 1, lines, List.of(), List.of(), List.of(), graphPoints(playerMemory, stats)); + } + + static List profileLines(String playerName, String worldName, String dimension, BlockPos pos, PlayerMemory memory, String distance, String playTime, long crafts, long brokenBlocks) { + List lines = new ArrayList<>(); + lines.add("TITLE:" + playerName); + lines.add("SECTION:Fiche joueur"); + lines.add("Temps de jeu\t" + playTime); + lines.add("Distance\t" + distance); + lines.add("Blocs casses\t" + brokenBlocks); + lines.add("Crafts\t" + crafts); + lines.add("Chunks visites\t" + memory.visitedChunks().size()); + lines.add("Biomes decouverts\t" + memory.biomes().size()); + lines.add("Blocs decouverts\t" + memory.discoveredBlocks().size()); + lines.add("Items decouverts\t" + memory.items().size()); + lines.add("Mobs decouverts\t" + memory.entities().size()); + lines.add(""); + lines.add("SECTION:Monde actif"); + lines.add("Monde\t" + worldName); + lines.add("Dimension\t" + dimension); + lines.add("Position\t" + pos.getX() + " " + pos.getY() + " " + pos.getZ()); + lines.add(""); + lines.add("SECTION:Progression"); + return lines; + } + + private static BlocodexUiSnapshotPayload worldOverviewSnapshot(ServerPlayer player, BlocodexUiRequestPayload request) { + ServerLevel level = player.level(); + BlocodexMemory memory = BlocodexSavedData.get(level.getServer()).memory(); + PlayerMemory playerMemory = memory.player(player.getUUID().toString()); + ServerStatsCounter stats = player.getStats(); + int mapMode = clamp(request.sliderValue(), WORLD_MAP_SURFACE, WORLD_MAP_BIOMES); + WorldLines worldLines = worldLines( + level.getServer().getWorldData().getLevelName(), + memory.world(), + playerMemory, + player.blockPosition(), + dimensionName(level), + centimetersToMeters(distanceCentimeters(stats)) + " m", + ticksToClock(stats.getValue(Stats.CUSTOM.get(Stats.PLAY_TIME))), + craftedTotal(stats), + sum(playerMemory.brokenBlocks()), + request.page() == 1, + mapMode + ); + if (request.page() != 1) { + List ids = new ArrayList<>(GRID_SIZE); + List colors = new ArrayList<>(GRID_SIZE); + List labels = new ArrayList<>(GRID_SIZE); + fillStatsMap(player, memory, ids, colors, labels, 1); + return payload(BlocodexUiMode.WORLD_OVERVIEW, mapMode, 0, 40, WORLD_MAP_SURFACE, WORLD_MAP_BIOMES, worldLines.lines(), ids, colors, labels); + } + + List ids = new ArrayList<>(); + List colors = new ArrayList<>(WORLD_MAP_BLOCK_WIDTH * WORLD_MAP_BLOCK_WIDTH); + List labels = new ArrayList<>(); + fillTopDownWorldMap(player, memory, playerMemory, ids, colors, labels, mapMode); + return new BlocodexUiSnapshotPayload( + BlocodexUiMode.WORLD_OVERVIEW.id(), + mapMode, + 1, + (WORLD_MAP_BLOCK_WIDTH * WORLD_MAP_BLOCK_WIDTH) / 2, + WORLD_MAP_SURFACE, + WORLD_MAP_BIOMES, + worldLines.lines(), + ids, + colors, + labels, + "", + DARK_CELL + ); + } + + static WorldLines worldLines(String worldName, dev.blocodex.memory.WorldMemory world) { + return worldLines(worldName, world, new PlayerMemory(), BlockPos.ZERO, "", "0 m", "0h 0m", 0L, 0L, false, WORLD_MAP_SURFACE); + } + + static WorldLines worldLines(String worldName, dev.blocodex.memory.WorldMemory world, PlayerMemory playerMemory, BlockPos pos, String dimension, String distance, String playTime, long crafts, long brokenBlocks) { + return worldLines(worldName, world, playerMemory, pos, dimension, distance, playTime, crafts, brokenBlocks, false, WORLD_MAP_SURFACE); + } + + static WorldLines worldLines(String worldName, dev.blocodex.memory.WorldMemory world, PlayerMemory playerMemory, BlockPos pos, String dimension, String distance, String playTime, long crafts, long brokenBlocks, boolean mapLoaded) { + return worldLines(worldName, world, playerMemory, pos, dimension, distance, playTime, crafts, brokenBlocks, mapLoaded, WORLD_MAP_SURFACE); + } + + static WorldLines worldLines(String worldName, dev.blocodex.memory.WorldMemory world, PlayerMemory playerMemory, BlockPos pos, String dimension, String distance, String playTime, long crafts, long brokenBlocks, boolean mapLoaded, int mapMode) { + List lines = new ArrayList<>(); + lines.add("TITLE:" + worldName); + lines.add("SECTION:Carte locale"); + lines.add("Centre\t" + pos.getX() + " " + pos.getY() + " " + pos.getZ()); + lines.add("Dimension\t" + dimension); + lines.add("Carte\t" + (mapLoaded ? "Chargee" : "A charger")); + lines.add("Vue\t" + worldMapModeLabel(mapMode)); + lines.add("Resolution\t" + (mapLoaded ? WORLD_MAP_BLOCK_WIDTH + "x" + WORLD_MAP_BLOCK_WIDTH + " blocs" : "apercu chunks")); + lines.add(""); + lines.add("SECTION:Memoire du monde"); + lines.add("Chunks observes\t" + world.observedChunks()); + lines.add("Blocs observes\t" + sum(world.blockCounts())); + lines.add("Biomes observes\t" + world.biomeCounts().size()); + lines.add("Dimensions\t" + world.dimensionCounts().size()); + lines.add("Items croises\t" + sum(world.itemCounts())); + lines.add("Mobs croises\t" + sum(world.entityCounts())); + lines.add(""); + lines.add("SECTION:Profil joueur"); + lines.add("Temps de jeu\t" + playTime); + lines.add("Distance\t" + distance); + lines.add("Blocs casses\t" + brokenBlocks); + lines.add("Crafts\t" + crafts); + lines.add("Chunks visites\t" + playerMemory.visitedChunks().size()); + lines.add("Biomes decouverts\t" + playerMemory.biomes().size()); + lines.add("Blocs decouverts\t" + playerMemory.discoveredBlocks().size()); + lines.add(""); + lines.add("SECTION:Journal"); + addRecentEvents(lines, playerMemory.recentEvents(), 10); + lines.add(""); + lines.add("SECTION:Top blocs"); + addTopLines(lines, world.blockCounts(), 8); + lines.add(""); + lines.add("SECTION:Top biomes"); + addTopLines(lines, world.biomeCounts(), 8); + lines.add(""); + lines.add("SECTION:Dimensions"); + addTopLines(lines, world.dimensionCounts(), 8); + return new WorldLines(lines); + } + + private static BlocodexUiSnapshotPayload librarySnapshot(ServerPlayer player, BlocodexUiRequestPayload request) { + ServerLevel level = player.level(); + BlocodexMemory memory = BlocodexSavedData.get(level.getServer()).memory(); + PlayerMemory playerMemory = memory.player(player.getUUID().toString()); + WsmcCodexIndex index = WsmcCodexIndex.loadDefault(); + String query = normalizeQuery(request.query()); + boolean sortByColor = request.sliderValue() == 1; + List entries = libraryEntries(level, player.blockPosition(), playerMemory, index, query, sortByColor); + List paletteBlockIds = buildableDiscoveredPalette(playerMemory); + int selectedIndex = entries.isEmpty() ? 0 : clamp(request.selectedIndex(), 0, entries.size() - 1); + List lines = libraryLines(entries, selectedIndex, query, sortByColor, paletteBlockIds.size()); + LibraryEntry selected = entries.isEmpty() ? null : entries.get(selectedIndex); + + return new BlocodexUiSnapshotPayload( + BlocodexUiMode.LIBRARY.id(), + sortByColor ? 1 : 0, + 0, + selectedIndex, + 0, + 1, + lines, + sizedStrings(entries.stream().map(LibraryEntry::id).toList()), + sizedColors(entries.stream().map(LibraryEntry::color).toList()), + sizedStrings(entries.stream().map(LibraryEntry::displayName).toList()), + selected == null ? "" : selected.id(), + selected == null ? DARK_CELL : selected.color(), + paletteBlockIds + ); + } + + static List libraryLines(List entries, int selectedIndex, String query, boolean sortByColor) { + return libraryLines(entries, selectedIndex, query, sortByColor, 0); + } + + static List libraryLines(List entries, int selectedIndex, String query, boolean sortByColor, int paletteSize) { + List lines = new ArrayList<>(); + lines.add("TITLE:Blocotheque"); + lines.add("Recherche\t" + (query.isBlank() ? "toutes les decouvertes" : query)); + lines.add("Tri\t" + (sortByColor ? "Couleur" : "Nom")); + lines.add("Entrees\t" + entries.size()); + lines.add("Palette dispo\t" + paletteSize); + lines.add(""); + if (!entries.isEmpty()) { + LibraryEntry selected = entries.get(Math.max(0, Math.min(selectedIndex, entries.size() - 1))); + lines.add("SECTION:Detail"); + lines.add("Nom\t" + selected.visibleName()); + if (selected.unlocked() && !selected.description().isBlank()) { + lines.add("DESC:" + selected.description()); + } else if (!selected.unlocked()) { + lines.add("DESC:Entree verrouillee. Decouvre-la dans le monde ou utilise le cheat d'unlock pour l'ouvrir."); + } + lines.add("Type\t" + (selected.unlocked() ? typeLabel(selected.entryType()) : "?")); + lines.add("ID\t" + (selected.unlocked() ? selected.id() : "???")); + lines.add("Etat\t" + (selected.unlocked() ? "Decouvert" : "Verrouille")); + if (selected.research()) { + lines.add("Recherche\tDemande par un projet"); + } + lines.add(""); + } + + lines.add("SECTION:Entrees"); + if (entries.isEmpty()) { + lines.add("Aucune entree"); + return lines; + } + + int limit = entries.size(); + for (int i = 0; i < limit; i++) { + LibraryEntry entry = entries.get(i); + lines.add("ENTRY:" + i + "|" + entry.visibleName() + "|" + (entry.unlocked() ? typeLabel(entry.entryType()) : "?") + "|" + entry.id()); + } + if (entries.size() > limit) { + lines.add("DESC:" + (entries.size() - limit) + " autres entrees; utilise la recherche pour filtrer."); + } + return lines; + } + + private static BlocodexUiSnapshotPayload creationsSnapshot(ServerPlayer player, BlocodexUiRequestPayload request) { + ServerLevel level = player.level(); + BlocodexMemory memory = BlocodexSavedData.get(player.level().getServer()).memory(); + PlayerMemory playerMemory = memory.player(player.getUUID().toString()); + List projects = playerMemory.voxelProjects().values().stream() + .sorted(Comparator.comparing(VoxelProjectMemory::updatedTick).reversed().thenComparing(VoxelProjectMemory::name)) + .toList(); + int selectedIndex = projects.isEmpty() ? 0 : clamp(request.selectedIndex(), 0, projects.size() - 1); + VoxelProjectMemory selected = projects.isEmpty() ? null : projects.get(selectedIndex); + List previewColors = selected == null ? List.of() : projectPreviewColors(level, player.blockPosition(), selected); + return new BlocodexUiSnapshotPayload( + BlocodexUiMode.CREATIONS.id(), + 0, + 0, + selectedIndex, + 0, + 1, + creationLines(projects, selectedIndex, playerMemory), + projects.stream().map(VoxelProjectMemory::id).toList(), + previewColors, + projects.stream().map(VoxelProjectMemory::name).toList(), + selected == null ? "" : selected.id(), + selected == null ? DARK_CELL : projectColor(selected) + ); + } + + static List creationLines(List projects) { + return creationLines(projects, 0); + } + + static List creationLines(List projects, int selectedIndex) { + return creationLines(projects, selectedIndex, new PlayerMemory()); + } + + static List creationLines(List projects, int selectedIndex, PlayerMemory playerMemory) { + List lines = new ArrayList<>(); + lines.add("TITLE:Galerie"); + lines.add("SECTION:Galerie voxel"); + lines.add("Projets sauvegardes\t" + projects.size()); + if (projects.isEmpty()) { + lines.add("DESC:Aucune creation pour le moment."); + lines.add("DESC:L'editeur voxel utilisera cette galerie pour sauvegarder les structures Blocodex."); + return lines; + } + + VoxelProjectMemory selected = projects.get(Math.max(0, Math.min(selectedIndex, projects.size() - 1))); + lines.add(""); + lines.add("SECTION:Detail"); + lines.add("Nom\t" + selected.name()); + lines.add("Taille\t" + selected.width() + "x" + selected.height() + "x" + selected.depth()); + lines.add("Preview\t" + previewWidth(selected) + "x" + previewHeight(selected)); + lines.add("Voxels\t" + selected.cells().size()); + lines.add("Palette\t" + selected.palette().size()); + Map requiredBlocks = VoxelProjectRequirements.requiredBlockCounts(selected); + List missingBlocks = VoxelProjectRequirements.missingRequiredBlocks(selected, playerMemory); + lines.add("Blocs requis\t" + requiredBlocks.size()); + lines.add("A rechercher\t" + missingBlocks.size()); + lines.add("Requis\t" + VoxelProjectRequirements.formatCounts(requiredBlocks, 3)); + lines.add("Manquants\t" + VoxelProjectRequirements.formatIds(missingBlocks, 4)); + lines.add("ID\t" + selected.id()); + lines.add(""); + lines.add("SECTION:Projets"); + int limit = Math.min(projects.size(), 80); + for (int i = 0; i < limit; i++) { + VoxelProjectMemory project = projects.get(i); + lines.add("ENTRY:" + i + "|" + project.name() + "|" + project.width() + "x" + project.height() + "x" + project.depth() + "|" + project.id()); + } + if (projects.size() > limit) { + lines.add("DESC:" + (projects.size() - limit) + " autres projets."); + } + return lines; + } + + static List statsLines(String worldName, BlockPos pos, String dimension, long discoveredBlocks, long observedBlocks, long visitedChunks, long brokenBlocks, String distance, String playTime, long crafts, int stride) { + return List.of( + "TITLE:" + worldName, + "XYZ: " + pos.getX() + " " + pos.getY() + " " + pos.getZ(), + "Dim: " + dimension, + "Blocs vus: " + discoveredBlocks, + "Blocs charges: " + observedBlocks, + "Chunks vus: " + visitedChunks, + "Casses: " + brokenBlocks, + "Distance: " + distance, + "Temps: " + playTime, + "Crafts: " + crafts, + "Zoom: x" + stride + " / rayon " + (4 * stride) + ); + } + + private static BlocodexUiSnapshotPayload worldSnapshot(ServerPlayer player, BlocodexUiRequestPayload request) { + ServerLevel level = player.level(); + BlocodexMemory memory = BlocodexSavedData.get(level.getServer()).memory(); + int minY = level.getMinY(); + int maxY = level.getMaxY() - 1; + int y = clamp(request.sliderValue(), minY, maxY); + int page = wrapPage(request.page(), 2); + int selectedIndex = clamp(request.selectedIndex(), 0, GRID_SIZE - 1); + + ChunkPos chunkPos = player.chunkPosition(); + ChunkKey key = BlocodexScanner.keyFor(level, chunkPos.x(), chunkPos.z()); + ChunkMemory chunk = memory.chunk(key); + Map layer = chunk == null ? Map.of() : chunk.layerBlockCounts(y); + List ids = GridDistribution.normalize(layer, GRID_SIZE); + List colors = ids.stream().map(id -> id.isBlank() ? EMPTY_CELL : blockColor(level, player.blockPosition(), id)).toList(); + List labels = ids.stream().map(BlocodexUiSnapshots::shortId).toList(); + List lines = chunkLayerLines(y, layer, page); + + return payload(BlocodexUiMode.WORLD, y, page, selectedIndex, minY, maxY, lines, ids, colors, labels); + } + + static List chunkLayerLines(int y, Map layer, int page) { + List lines = new ArrayList<>(); + lines.add("TITLE:Y " + y); + long total = sum(layer); + if (total <= 0) { + lines.add(page == 0 ? "Aucun bloc observe" : "Total: 0"); + return lines; + } + + if (page == 0) { + for (Map.Entry entry : sortedCounts(layer)) { + lines.add(shortId(entry.getKey()) + " " + formatPercent(entry.getValue(), total)); + } + } else { + lines.add("Total: " + total); + for (Map.Entry entry : sortedCounts(layer)) { + lines.add(shortId(entry.getKey()) + ": " + entry.getValue()); + } + } + return lines; + } + + private static BlocodexUiSnapshotPayload colorSnapshot(ServerPlayer player, BlocodexUiRequestPayload request) { + ServerLevel level = player.level(); + BlocodexMemory memory = BlocodexSavedData.get(level.getServer()).memory(); + PlayerMemory playerMemory = memory.player(player.getUUID().toString()); + int hue = clamp(request.sliderValue(), 0, 359); + int page = wrapPage(request.page(), 3); + int selectedIndex = clamp(request.selectedIndex(), 0, GRID_SIZE - 1); + String query = normalizeQuery(request.query()); + WsmcCodexIndex index = WsmcCodexIndex.loadDefault(); + ColorCache cache = colorCache(player, playerMemory, index, query); + cache.prioritize(hue); + ColorGrid grid = cache.gridOrBuild(hue); + + String selectedId = selectedIndex < grid.ids().size() ? grid.ids().get(selectedIndex) : ""; + Optional selectedEntry = index.entry(selectedId); + int selectedColor = selectedEntry.map(WsmcEntry::primaryArgb) + .orElse(selectedIndex < grid.colors().size() ? grid.colors().get(selectedIndex) : hslToArgb(hue, 1.0F, 0.5F)); + List lines = colorEntryLines(selectedEntry, page, hue, cache, query); + + return new BlocodexUiSnapshotPayload( + BlocodexUiMode.COLOR.id(), + hue, + page, + selectedIndex, + 0, + 359, + lines, + sizedStrings(grid.ids()), + sizedColors(grid.colors()), + sizedStrings(grid.labels()), + selectedId, + selectedColor + ); + } + + private static BlocodexUiSnapshotPayload colorLoadingSnapshot(int hue, int page, int selectedIndex, ColorCache cache, String query) { + List lines = new ArrayList<>(); + lines.add("TITLE:Color Space"); + if (!query.isBlank()) { + lines.add("Recherche: " + query); + } + lines.add("Chargement: HSL"); + lines.add("Teinte: " + hue); + lines.add("Snapshots: " + cache.readyCount() + "/" + HUE_COUNT); + lines.add("Entrees: " + cache.sourceCount()); + lines.add("Indexees: " + cache.filteredCount()); + return new BlocodexUiSnapshotPayload( + BlocodexUiMode.COLOR.id(), + hue, + page, + selectedIndex, + 0, + 359, + lines, + sizedStrings(List.of()), + sizedColors(List.of()), + sizedStrings(List.of("LOADING")), + "", + hslToArgb(hue, 1.0F, 0.5F) + ); + } + + private static List colorEntryLines(Optional selectedEntry, int page, int hue, ColorCache cache, String query) { + if (selectedEntry.isEmpty()) { + List lines = new ArrayList<>(); + lines.add("TITLE:Color Space"); + if (!query.isBlank()) { + lines.add("Recherche: " + query); + } + lines.add("Aucune entree"); + lines.add("H " + hue); + lines.add("Snapshots " + cache.readyCount() + "/" + HUE_COUNT); + lines.add("Decouvertes " + cache.sourceCount()); + return lines; + } + + WsmcEntry entry = selectedEntry.get(); + return switch (page) { + case 1 -> historyLines(entry, query); + case 2 -> colorLines(entry, hue, cache, query); + default -> descriptionLines(entry, query); + }; + } + + private static void addRecentEvents(List lines, List events, int limit) { + if (events.isEmpty()) { + lines.add("Aucune activite enregistree"); + return; + } + + for (RecentMemoryEvent event : events.stream().limit(limit).toList()) { + lines.add(eventLabel(event) + "\t" + shortId(event.id()) + " @ " + event.x() + " " + event.y() + " " + event.z()); + } + } + + private static String eventLabel(RecentMemoryEvent event) { + return switch (event.type()) { + case "item" -> "Nouvel item"; + case "entity" -> "Mob observe"; + case "block_broken" -> "Bloc casse"; + default -> event.type().isBlank() ? "Evenement" : event.type(); + }; + } + + private static void addTopLines(List lines, Map counts, int limit) { + List> top = MemoryMath.top(counts, limit); + if (top.isEmpty()) { + lines.add("Aucune donnee"); + return; + } + + for (Map.Entry entry : top) { + lines.add(shortId(entry.getKey()) + "\t" + entry.getValue()); + } + } + + private static void addBarLine(List lines, String label, long value, long max, String displayValue) { + long safeMax = Math.max(1L, max); + int width = (int) Math.round(Math.max(0L, value) * 100.0D / safeMax); + lines.add("BAR:" + label + "|" + width + "|" + displayValue); + } + + private static long distanceNumber(String distance) { + if (distance == null || distance.isBlank()) { + return 0L; + } + String digits = distance.replaceAll("[^0-9]", ""); + if (digits.isBlank()) { + return 0L; + } + try { + return Long.parseLong(digits); + } catch (NumberFormatException ignored) { + return 0L; + } + } + + private static String worldMapModeLabel(int mapMode) { + return switch (mapMode) { + case WORLD_MAP_HEATMAP -> "Heatmap"; + case WORLD_MAP_BIOMES -> "Biomes"; + default -> "Surface"; + }; + } + + private static List graphPoints(PlayerMemory memory, ServerStatsCounter stats) { + List samples = new ArrayList<>(memory.statSamples()); + PlayerStatSample liveSample = new PlayerStatSample( + stats.getValue(Stats.CUSTOM.get(Stats.PLAY_TIME)), + distanceCentimeters(stats), + sum(memory.brokenBlocks()), + craftedTotal(stats), + memory.visitedChunks().size(), + memory.biomes().size(), + memory.discoveredBlocks().size() + ); + + if (samples.isEmpty()) { + samples.add(liveSample); + } else { + PlayerStatSample last = samples.getLast(); + if (liveSample.playTimeTicks() > last.playTimeTicks()) { + samples.add(liveSample); + } else if (liveSample.playTimeTicks() == last.playTimeTicks() && !liveSample.equals(last)) { + samples.set(samples.size() - 1, liveSample); + } + } + + int start = Math.max(0, samples.size() - PlayerMemory.MAX_STAT_SAMPLES); + return samples.subList(start, samples.size()).stream() + .map(BlocodexUiSnapshots::encodeGraphPoint) + .toList(); + } + + private static String encodeGraphPoint(PlayerStatSample sample) { + return sample.playTimeTicks() + + "|" + sample.distanceCm() + + "|" + sample.brokenBlocks() + + "|" + sample.crafts() + + "|" + sample.visitedChunks() + + "|" + sample.biomes() + + "|" + sample.discoveredBlocks(); + } + + private static List libraryEntries(ServerLevel level, BlockPos pos, PlayerMemory playerMemory, WsmcCodexIndex index, String query, boolean sortByColor) { + Set candidates = colorCandidateIds(playerMemory); + Set unlocked = unlockedLibraryIds(playerMemory); + List entries = new ArrayList<>(); + Set seen = new LinkedHashSet<>(); + + for (WsmcEntry entry : index.entries()) { + String id = entry.id(); + if (!isAddressableIndexEntry(entry)) { + continue; + } + if (!query.isBlank() && !entryMatchesQuery(entry, query) && !containsQuery(id, query)) { + continue; + } + seen.add(id); + entries.add(LibraryEntry.from( + id, + entry, + preferredDisplayName(id, entry), + playerMemory.loadedLibraryEntries().contains(id), + playerMemory.favoriteLibraryEntries().contains(id), + playerMemory.researchLibraryEntries().contains(id), + unlocked.contains(id) + )); + } + + for (String id : candidates) { + if (seen.contains(id)) { + continue; + } + if (!isAddressableLibraryId(id)) { + continue; + } + if (query.isBlank() || containsQuery(id, query)) { + entries.add(fallbackLibraryEntry( + level, + pos, + id, + playerMemory.loadedLibraryEntries().contains(id), + playerMemory.favoriteLibraryEntries().contains(id), + playerMemory.researchLibraryEntries().contains(id), + unlocked.contains(id) + )); + } + } + + Comparator comparator = sortByColor + ? Comparator.comparing((LibraryEntry entry) -> !entry.unlocked()) + .thenComparingDouble(LibraryEntry::hue) + .thenComparingDouble(LibraryEntry::lightness) + .thenComparing(LibraryEntry::displayName) + : Comparator.comparing((LibraryEntry entry) -> !entry.unlocked()) + .thenComparing(LibraryEntry::displayName, String.CASE_INSENSITIVE_ORDER) + .thenComparing(LibraryEntry::id); + entries.sort(comparator); + return entries; + } + + private static boolean isAddressableIndexEntry(WsmcEntry entry) { + Identifier id = Identifier.tryParse(entry.id()); + if (id == null) { + return false; + } + return switch (entry.entryType()) { + case "block" -> BuiltInRegistries.BLOCK.containsKey(id); + case "item" -> BuiltInRegistries.ITEM.containsKey(id); + case "mob", "entity" -> BuiltInRegistries.ENTITY_TYPE.containsKey(id); + default -> BuiltInRegistries.BLOCK.containsKey(id) || BuiltInRegistries.ITEM.containsKey(id) || BuiltInRegistries.ENTITY_TYPE.containsKey(id); + }; + } + + private static boolean isAddressableLibraryId(String entryId) { + Identifier id = Identifier.tryParse(entryId); + return id != null && (BuiltInRegistries.BLOCK.containsKey(id) || BuiltInRegistries.ITEM.containsKey(id) || BuiltInRegistries.ENTITY_TYPE.containsKey(id)); + } + + private static Set unlockedLibraryIds(PlayerMemory playerMemory) { + Set ids = new LinkedHashSet<>(); + ids.addAll(playerMemory.discoveredBlocks()); + ids.addAll(playerMemory.items()); + ids.addAll(playerMemory.entities()); + return ids; + } + + private static Optional preferredLibraryEntry(PlayerMemory playerMemory, WsmcCodexIndex index, String id) { + if (playerMemory.entities().contains(id)) { + Optional entityEntry = index.entityEntry(id); + if (entityEntry.isPresent()) { + return entityEntry; + } + } + Optional direct = index.entry(id); + if (direct.isPresent()) { + return direct; + } + return index.entityEntry(id); + } + + private static String fallbackEntryType(String id) { + Identifier identifier = Identifier.tryParse(id); + if (identifier == null) { + return "entry"; + } + if (BuiltInRegistries.BLOCK.getOptional(identifier).isPresent()) { + return "block"; + } + if (BuiltInRegistries.ENTITY_TYPE.getOptional(identifier).isPresent()) { + return "mob"; + } + if (BuiltInRegistries.ITEM.getOptional(identifier).isPresent()) { + return "item"; + } + return "entry"; + } + + private static LibraryEntry fallbackLibraryEntry(ServerLevel level, BlockPos pos, String id, boolean loaded, boolean favorite, boolean research, boolean unlocked) { + String type = fallbackEntryType(id); + int color = "block".equals(type) ? blockColor(level, pos, id) : DARK_CELL; + return new LibraryEntry(id, fallbackDisplayName(id), type, fallbackDescription(id, type), color, "neutral", 0.0D, 0.0D, loaded, favorite, research, unlocked); + } + + private static String preferredDisplayName(String id, WsmcEntry entry) { + if (id.equals(entry.id())) { + return entry.displayName(); + } + return fallbackDisplayName(id); + } + + private static String fallbackDisplayName(String id) { + String path = shortId(id); + int variant = path.indexOf('/'); + if (variant >= 0) { + path = path.substring(0, variant); + } + String[] words = path.replace('_', ' ').split("\\s+"); + StringBuilder builder = new StringBuilder(); + for (String word : words) { + if (word.isBlank()) { + continue; + } + if (!builder.isEmpty()) { + builder.append(' '); + } + builder.append(Character.toUpperCase(word.charAt(0))).append(word.substring(1)); + } + return builder.isEmpty() ? id : builder.toString(); + } + + private static String fallbackDescription(String id, String type) { + if ("blocodex:computer".equals(id)) { + return "PC Blocodex. Ouvre la fiche du joueur, la memoire du monde, la blocotheque et les creations sauvegardees."; + } + return switch (type) { + case "block" -> "Bloc decouvert dans ce monde. Sa fiche detaillee sera enrichie par les donnees Blocodex."; + case "item" -> "Item decouvert dans ce monde. Sa fiche detaillee sera enrichie par les donnees Blocodex."; + case "mob" -> "Mob observe dans ce monde. Sa fiche detaillee sera enrichie par les donnees Blocodex."; + default -> "Entree decouverte dans ce monde. Sa fiche detaillee sera enrichie par les donnees Blocodex."; + }; + } + + private static List descriptionLines(WsmcEntry entry, String query) { + List lines = new ArrayList<>(); + lines.add("TITLE:" + entry.displayName()); + if (!query.isBlank()) { + lines.add("Recherche: " + query); + } + lines.add("TYPE:" + typeLabel(entry.entryType()) + categorySuffix(entry)); + lines.add("ID:" + entry.id()); + lines.add("DESC:" + (entry.description().isBlank() ? entry.id() : entry.description())); + return lines; + } + + private static List historyLines(WsmcEntry entry, String query) { + List lines = new ArrayList<>(); + lines.add("TITLE:" + entry.displayName()); + if (!query.isBlank()) { + lines.add("Recherche: " + query); + } + lines.add("TYPE:" + typeLabel(entry.entryType()) + categorySuffix(entry)); + lines.add("ID:" + entry.id()); + lines.add("SECTION:Historique"); + if (entry.history().isEmpty()) { + lines.add("Aucune note"); + return lines; + } + + for (HistoryNote note : entry.history().stream().limit(4).toList()) { + String version = note.version().isBlank() ? "?" : note.version(); + lines.add(trimText(version + " " + note.status(), 28)); + addWrapped(lines, note.notes(), 24, 1); + } + return lines; + } + + private static List colorLines(WsmcEntry entry, int hue, ColorCache cache, String query) { + List lines = new ArrayList<>(); + WsmcCodexIndex.Hsl hsl = entry.hsl(); + lines.add("TITLE:" + entry.displayName()); + if (!query.isBlank()) { + lines.add("Recherche: " + query); + } + lines.add("TYPE:" + typeLabel(entry.entryType()) + categorySuffix(entry)); + lines.add("ID:" + entry.id()); + lines.add("SECTION:Couleur HSL"); + lines.add("Vue H " + hue); + lines.add("H " + Math.round(hsl.hue()) + " S " + Math.round(hsl.saturation() * 100) + " L " + Math.round(hsl.lightness() * 100)); + lines.add("Groupe " + entry.colors().hueGroup()); + lines.add("Primary " + entry.colors().primary()); + if (!entry.colors().palette().isEmpty()) { + lines.add("Palette " + String.join(" ", entry.colors().palette().stream().limit(2).toList())); + } + lines.add("Snapshots " + cache.readyCount() + "/" + HUE_COUNT); + return lines; + } + + private static void fillChunkMap(ServerPlayer player, BlocodexMemory memory, PlayerMemory playerMemory, List ids, List colors, List labels, boolean includePlayerHead) { + ServerLevel level = player.level(); + ChunkPos center = player.chunkPosition(); + for (int dz = -4; dz <= 4; dz++) { + for (int dx = -4; dx <= 4; dx++) { + int index = ids.size(); + int chunkX = center.x() + dx; + int chunkZ = center.z() + dz; + if (includePlayerHead && dx == 0 && dz == 0) { + ids.add("minecraft:player_head"); + colors.add(0xFF4DB6FF); + labels.add("YOU"); + continue; + } + + ChunkKey key = BlocodexScanner.keyFor(level, chunkX, chunkZ); + ChunkMemory chunk = memory.chunk(key); + if (chunk == null) { + ids.add(""); + colors.add(DARK_CELL); + labels.add(""); + continue; + } + + String dominant = MemoryMath.top(chunk.blockCounts(), 1).stream().findFirst().map(Map.Entry::getKey).orElse(""); + long heat = playerMemory.chunkTimeTicks().getOrDefault(key.asStorageKey(), 0L); + ids.add(dominant); + colors.add(heatColor(heat, index == 40)); + labels.add(chunkX + "," + chunkZ); + } + } + } + + private static void fillStatsMap(ServerPlayer player, BlocodexMemory memory, List ids, List colors, List labels, int stride) { + ServerLevel level = player.level(); + ChunkPos center = player.chunkPosition(); + for (int row = 0; row < GRID_WIDTH; row++) { + for (int col = 0; col < GRID_WIDTH; col++) { + int dx = (col - 4) * stride; + int dz = (row - 4) * stride; + int chunkX = center.x() + dx; + int chunkZ = center.z() + dz; + ChunkMemory chunk = memory.chunk(BlocodexScanner.keyFor(level, chunkX, chunkZ)); + ids.add(""); + colors.add(chunk == null ? EMPTY_CELL : topDownChunkColor(level, player.blockPosition(), chunk)); + labels.add(chunkX + "," + chunkZ); + } + } + } + + private static void fillTopDownWorldMap(ServerPlayer player, BlocodexMemory memory, PlayerMemory playerMemory, List ids, List colors, List labels, int mapMode) { + ServerLevel level = player.level(); + ChunkPos center = player.chunkPosition(); + for (int chunkRow = 0; chunkRow < GRID_WIDTH; chunkRow++) { + int chunkZ = center.z() + chunkRow - 4; + for (int localZ = 0; localZ < CHUNK_BLOCK_SIZE; localZ++) { + for (int chunkCol = 0; chunkCol < GRID_WIDTH; chunkCol++) { + int chunkX = center.x() + chunkCol - 4; + ChunkKey key = BlocodexScanner.keyFor(level, chunkX, chunkZ); + LevelChunk loadedChunk = level.getChunkSource().getChunkNow(chunkX, chunkZ); + ChunkMemory memoryChunk = memory.chunk(key); + for (int localX = 0; localX < CHUNK_BLOCK_SIZE; localX++) { + SurfaceCell surface = new SurfaceCell("", DARK_CELL); + if (loadedChunk != null) { + surface = loadedSurfaceCell(level, loadedChunk, chunkX, chunkZ, localX, localZ); + } else if (memoryChunk != null) { + surface = rememberedSurfaceCell(level, player.blockPosition(), memoryChunk, localX, localZ); + } + + int color = surface.color(); + if (mapMode == WORLD_MAP_BIOMES) { + color = biomeCellColor(level, loadedChunk, memoryChunk, chunkX, chunkZ, localX, localZ, surface.color()); + } + long heat = playerMemory.chunkTimeTicks().getOrDefault(key.asStorageKey(), 0L); + if (mapMode == WORLD_MAP_HEATMAP) { + color = applyHeatOverlay(color, heat, chunkX == center.x() && chunkZ == center.z()); + } + colors.add(color); + } + } + } + } + } + + private static int biomeCellColor(ServerLevel level, LevelChunk loadedChunk, ChunkMemory memoryChunk, int chunkX, int chunkZ, int localX, int localZ, int fallbackColor) { + if (loadedChunk != null) { + int worldX = (chunkX << 4) + localX; + int worldZ = (chunkZ << 4) + localZ; + BlockPos pos = new BlockPos(worldX, level.getSeaLevel(), worldZ); + String biomeId = level.getBiome(pos).unwrapKey() + .map(key -> key.identifier().toString()) + .orElse(""); + return shade(biomeColor(biomeId), localX, localZ, chunkX, chunkZ); + } + if (memoryChunk != null && !memoryChunk.biomes().isEmpty()) { + String biomeId = memoryChunk.biomes().stream().sorted().findFirst().orElse(""); + return shade(biomeColor(biomeId), localX, localZ, chunkX, chunkZ); + } + return fallbackColor; + } + + private static SurfaceCell loadedSurfaceCell(ServerLevel level, LevelChunk chunk, int chunkX, int chunkZ, int localX, int localZ) { + BlockPos.MutableBlockPos mutable = new BlockPos.MutableBlockPos(); + int worldX = (chunkX << 4) + localX; + int worldZ = (chunkZ << 4) + localZ; + int minY = level.getMinY(); + int y = Math.max(minY, Math.min(level.getMaxY() - 1, chunk.getHeight(Heightmap.Types.WORLD_SURFACE, localX, localZ) - 1)); + mutable.set(worldX, y, worldZ); + BlockState state = chunk.getBlockState(mutable); + if (!state.isAir()) { + String id = BuiltInRegistries.BLOCK.getKey(state.getBlock()).toString(); + return new SurfaceCell(id, blockStateColor(level, mutable, state)); + } + return new SurfaceCell("", DARK_CELL); + } + + private static SurfaceCell rememberedSurfaceCell(ServerLevel level, BlockPos pos, ChunkMemory chunk, int localX, int localZ) { + Optional>> topLayer = chunk.layerBlockCounts().entrySet().stream() + .filter(entry -> !entry.getValue().isEmpty()) + .max(Map.Entry.comparingByKey()); + if (topLayer.isEmpty()) { + return new SurfaceCell("", DARK_CELL); + } + + return MemoryMath.top(topLayer.get().getValue(), 1).stream().findFirst() + .map(Map.Entry::getKey) + .map(id -> new SurfaceCell(id, shade(blockColor(level, pos, id), localX, localZ, chunk.key().x(), chunk.key().z()))) + .orElse(new SurfaceCell("", DARK_CELL)); + } + + private static int blockStateColor(ServerLevel level, BlockPos pos, BlockState state) { + Integer paletteColor = namedPaletteColor(blockPath(BuiltInRegistries.BLOCK.getKey(state.getBlock()).toString())); + int color = paletteColor == null + ? state.getMapColor(level, pos).calculateARGBColor(MapColor.Brightness.NORMAL) + : paletteColor; + return 0xFF000000 | (color & 0x00FFFFFF); + } + + private static int topDownChunkColor(ServerLevel level, BlockPos pos, ChunkMemory chunk) { + Optional>> topLayer = chunk.layerBlockCounts().entrySet().stream() + .filter(entry -> !entry.getValue().isEmpty()) + .max(Map.Entry.comparingByKey()); + if (topLayer.isEmpty()) { + return DARK_CELL; + } + + return MemoryMath.top(topLayer.get().getValue(), 1).stream().findFirst() + .map(Map.Entry::getKey) + .map(id -> blockColor(level, pos, id)) + .orElse(DARK_CELL); + } + + private static BlocodexUiSnapshotPayload payload(BlocodexUiMode mode, int sliderValue, int page, int selectedIndex, int minSlider, int maxSlider, List lines, List ids, List colors, List labels) { + return payload(mode, sliderValue, page, selectedIndex, minSlider, maxSlider, lines, ids, colors, labels, List.of()); + } + + private static BlocodexUiSnapshotPayload payload(BlocodexUiMode mode, int sliderValue, int page, int selectedIndex, int minSlider, int maxSlider, List lines, List ids, List colors, List labels, List graphPoints) { + String selectedId = selectedIndex < ids.size() ? ids.get(selectedIndex) : ""; + int selectedColor = selectedIndex < colors.size() ? colors.get(selectedIndex) : DARK_CELL; + return new BlocodexUiSnapshotPayload(mode.id(), sliderValue, page, selectedIndex, minSlider, maxSlider, lines, sizedStrings(ids), sizedColors(colors), sizedStrings(labels), selectedId, selectedColor, List.of(), graphPoints); + } + + private static int projectColor(VoxelProjectMemory project) { + if (!project.palette().isEmpty()) { + return namedPaletteColor(blockPath(project.palette().getFirst())) == null + ? 0xFF6F85B7 + : namedPaletteColor(blockPath(project.palette().getFirst())); + } + int hash = project.id().hashCode(); + return 0xFF000000 | (hash & 0x006F85B7) | 0x00303030; + } + + private static List projectPreviewColors(ServerLevel level, BlockPos pos, VoxelProjectMemory project) { + int width = previewWidth(project); + int height = previewHeight(project); + if (width <= 0 || height <= 0) { + return List.of(); + } + + List colors = new ArrayList<>(width * height); + for (int row = 0; row < height; row++) { + int y = project.height() - 1 - (int) Math.floor(row * project.height() / (double) height); + for (int col = 0; col < width; col++) { + int x = (int) Math.floor(col * project.width() / (double) width); + String blockId = ""; + for (int z = project.depth() - 1; z >= 0; z--) { + String candidate = project.cells().get(VoxelProjectPlacement.cellKey(x, y, z)); + if (candidate != null && !candidate.isBlank()) { + blockId = candidate; + break; + } + } + colors.add(blockId.isBlank() ? 0x22000000 : blockColor(level, pos, blockId)); + } + } + return colors; + } + + private static int previewWidth(VoxelProjectMemory project) { + return Math.max(1, Math.min(32, project.width())); + } + + private static int previewHeight(VoxelProjectMemory project) { + return Math.max(1, Math.min(32, project.height())); + } + + private static int blockColor(ServerLevel level, BlockPos pos, String blockId) { + Block block = block(blockId).orElse(Blocks.AIR); + if (block == Blocks.AIR) { + return DARK_CELL; + } + + BlockState state = block.defaultBlockState(); + Integer paletteColor = namedPaletteColor(blockPath(blockId)); + if (paletteColor != null) { + return paletteColor; + } + int color = state.getMapColor(level, pos).calculateARGBColor(MapColor.Brightness.NORMAL); + return 0xFF000000 | (color & 0x00FFFFFF); + } + + private static Optional block(String blockId) { + Identifier id = Identifier.tryParse(blockId); + if (id == null) { + return Optional.empty(); + } + return BuiltInRegistries.BLOCK.getOptional(id); + } + + private static ColorCache colorCache(ServerPlayer player, PlayerMemory playerMemory, WsmcCodexIndex index, String query) { + Set candidates = colorCandidateIds(playerMemory); + String normalizedQuery = normalizeQuery(query); + CacheSignature signature = CacheSignature.of(candidates, normalizedQuery); + String playerId = player.getUUID().toString(); + String key = cacheKey(playerId, normalizedQuery); + ColorCache existing = COLOR_CACHES.get(key); + if (existing != null && existing.signature().equals(signature)) { + return existing; + } + + List entries = filterEntries(index.entries(candidates), normalizedQuery); + ColorCache created = new ColorCache(signature, candidates.size(), entries); + COLOR_CACHES.put(key, created); + return created; + } + + private static Set colorCandidateIds(PlayerMemory playerMemory) { + Set candidates = new LinkedHashSet<>(); + candidates.addAll(playerMemory.discoveredBlocks()); + candidates.addAll(playerMemory.items()); + candidates.addAll(playerMemory.entities()); + candidates.addAll(playerMemory.loadedLibraryEntries()); + candidates.addAll(playerMemory.favoriteLibraryEntries()); + candidates.addAll(playerMemory.researchLibraryEntries()); + return candidates; + } + + private static List buildableDiscoveredPalette(PlayerMemory playerMemory) { + return playerMemory.discoveredBlocks().stream() + .filter(VoxelProjectValidator::isOpaquePaletteBlock) + .sorted() + .toList(); + } + + static List colorGridIdsForTesting(List entries, int hue) { + return buildColorGrid(entries, hue).ids(); + } + + static boolean entryMatchesQuery(WsmcEntry entry, String query) { + String normalizedQuery = normalizeQuery(query); + if (normalizedQuery.isBlank()) { + return true; + } + + return containsQuery(entry.id(), normalizedQuery) + || containsQuery(entry.displayName(), normalizedQuery) + || containsQuery(entry.entryType(), normalizedQuery) + || containsQuery(entry.category(), normalizedQuery) + || containsQuery(entry.family(), normalizedQuery); + } + + private static List filterEntries(List entries, String query) { + if (query.isBlank()) { + return entries; + } + return entries.stream() + .filter(entry -> entryMatchesQuery(entry, query)) + .toList(); + } + + private static int biomeColor(String biomeId) { + String path = blockPath(biomeId); + if (path.isBlank()) { + return DARK_CELL; + } + if (path.contains("ocean") || path.contains("river")) { + return 0xFF2E6FA8; + } + if (path.contains("frozen") || path.contains("ice") || path.contains("snow")) { + return 0xFFB7D7E8; + } + if (path.contains("desert") || path.contains("beach")) { + return 0xFFC9B66B; + } + if (path.contains("badlands")) { + return 0xFFB8643A; + } + if (path.contains("jungle")) { + return 0xFF2F8F38; + } + if (path.contains("forest") || path.contains("taiga")) { + return 0xFF3F7F4A; + } + if (path.contains("swamp") || path.contains("mangrove")) { + return 0xFF4A6E57; + } + if (path.contains("savanna")) { + return 0xFFA9A34A; + } + if (path.contains("plains") || path.contains("meadow")) { + return 0xFF75A95A; + } + if (path.contains("nether") || path.contains("crimson") || path.contains("basalt")) { + return 0xFF8D3D3D; + } + if (path.contains("warped") || path.contains("soul")) { + return 0xFF2B8C84; + } + if (path.contains("end")) { + return 0xFF8C78A8; + } + + int hash = path.hashCode(); + int red = 70 + Math.floorMod(hash, 116); + int green = 70 + Math.floorMod(hash >> 8, 116); + int blue = 70 + Math.floorMod(hash >> 16, 116); + return 0xFF000000 | (red << 16) | (green << 8) | blue; + } + + private static Integer namedPaletteColor(String path) { + if (path.equals("grass_block")) { + return 0xFF79C05A; + } + if (path.equals("water")) { + return 0xFF3F76E4; + } + if (path.equals("lava")) { + return 0xFFFF5A00; + } + if (path.equals("birch_leaves")) { + return 0xFF80A755; + } + if (path.equals("spruce_leaves")) { + return 0xFF619961; + } + if (path.endsWith("_leaves")) { + return 0xFF48B518; + } + + for (Map.Entry entry : DYE_COLORS.entrySet()) { + String prefix = entry.getKey() + "_"; + if (path.startsWith(prefix) && isDyedPaletteMaterial(path)) { + return entry.getValue(); + } + } + + for (Map.Entry entry : WOOD_COLORS.entrySet()) { + String wood = entry.getKey(); + if (isWoodPaletteMaterial(path, wood)) { + return entry.getValue(); + } + } + return null; + } + + private static boolean isDyedPaletteMaterial(String path) { + return path.endsWith("_concrete") + || path.endsWith("_concrete_powder") + || path.endsWith("_wool") + || path.endsWith("_terracotta") + || path.endsWith("_glazed_terracotta") + || path.endsWith("_stained_glass"); + } + + private static boolean isWoodPaletteMaterial(String path, String wood) { + return path.equals(wood + "_planks") + || path.equals(wood + "_log") + || path.equals(wood + "_wood") + || path.equals(wood + "_stem") + || path.equals(wood + "_hyphae") + || path.equals("stripped_" + wood + "_log") + || path.equals("stripped_" + wood + "_wood") + || path.equals("stripped_" + wood + "_stem") + || path.equals("stripped_" + wood + "_hyphae") + || path.equals(wood + "_block") + || path.equals("stripped_" + wood + "_block") + || path.equals(wood + "_mosaic"); + } + + private static String blockPath(String blockId) { + int split = blockId.indexOf(':'); + return split >= 0 ? blockId.substring(split + 1) : blockId; + } + + private static List pairedLines(String title, int page, String... entries) { + List lines = new ArrayList<>(); + lines.add("TITLE:" + title); + for (String entry : entries) { + int split = entry.indexOf(':'); + if (split < 0) { + lines.add(entry); + } else if (page == 0) { + lines.add(entry.substring(0, split).strip()); + } else { + lines.add(entry.substring(split + 1).strip()); + } + } + return lines; + } + + private static int heatColor(long ticks, boolean center) { + if (center) { + return 0xFF3DA5FF; + } + int warmth = (int) Math.min(180, ticks / 20); + int red = 52 + warmth; + int green = 64 + warmth / 3; + int blue = Math.max(36, 92 - warmth / 4); + return 0xFF000000 | (red << 16) | (green << 8) | blue; + } + + private static int applyHeatOverlay(int baseColor, long ticks, boolean center) { + if (center) { + return blend(baseColor, 0xFF3DA5FF, 0.32D); + } + if (ticks <= 0) { + return baseColor; + } + double amount = Math.min(0.45D, 0.12D + ticks / 24000.0D); + return blend(baseColor, 0xFFFFA23A, amount); + } + + private static int shade(int color, int localX, int localZ, int chunkX, int chunkZ) { + int noise = Math.floorMod(localX * 37 + localZ * 17 + chunkX * 13 + chunkZ * 7, 17) - 8; + int red = clampChannel(((color >> 16) & 0xFF) + noise); + int green = clampChannel(((color >> 8) & 0xFF) + noise); + int blue = clampChannel((color & 0xFF) + noise); + return 0xFF000000 | (red << 16) | (green << 8) | blue; + } + + private static int blend(int baseColor, int overlayColor, double amount) { + double clamped = Math.max(0.0D, Math.min(1.0D, amount)); + int red = (int) Math.round(((baseColor >> 16) & 0xFF) * (1.0D - clamped) + ((overlayColor >> 16) & 0xFF) * clamped); + int green = (int) Math.round(((baseColor >> 8) & 0xFF) * (1.0D - clamped) + ((overlayColor >> 8) & 0xFF) * clamped); + int blue = (int) Math.round((baseColor & 0xFF) * (1.0D - clamped) + (overlayColor & 0xFF) * clamped); + return 0xFF000000 | (clampChannel(red) << 16) | (clampChannel(green) << 8) | clampChannel(blue); + } + + private static int clampChannel(int value) { + return Math.max(0, Math.min(255, value)); + } + + private static long distanceCentimeters(ServerStatsCounter stats) { + return (long) stats.getValue(Stats.CUSTOM.get(Stats.WALK_ONE_CM)) + + stats.getValue(Stats.CUSTOM.get(Stats.CROUCH_ONE_CM)) + + stats.getValue(Stats.CUSTOM.get(Stats.SPRINT_ONE_CM)) + + stats.getValue(Stats.CUSTOM.get(Stats.WALK_ON_WATER_ONE_CM)) + + stats.getValue(Stats.CUSTOM.get(Stats.WALK_UNDER_WATER_ONE_CM)) + + stats.getValue(Stats.CUSTOM.get(Stats.SWIM_ONE_CM)) + + stats.getValue(Stats.CUSTOM.get(Stats.FLY_ONE_CM)) + + stats.getValue(Stats.CUSTOM.get(Stats.AVIATE_ONE_CM)); + } + + private static long craftedTotal(ServerStatsCounter stats) { + long total = 0; + for (Item item : BuiltInRegistries.ITEM) { + total += stats.getValue(Stats.ITEM_CRAFTED, item); + } + return total; + } + + private static String centimetersToMeters(long centimeters) { + return String.valueOf(centimeters / 100); + } + + private static String ticksToClock(long ticks) { + long seconds = ticks / 20; + long minutes = seconds / 60; + long hours = minutes / 60; + return hours + "h " + (minutes % 60) + "m"; + } + + private static String dimensionName(ServerLevel level) { + if (level.dimension() == Level.OVERWORLD) { + return "overworld"; + } + if (level.dimension() == Level.NETHER) { + return "the_nether"; + } + if (level.dimension() == Level.END) { + return "the_end"; + } + return level.dimension().toString(); + } + + private static long sum(Map counts) { + return counts.values().stream().mapToLong(Long::longValue).sum(); + } + + private static List> sortedCounts(Map counts) { + return counts.entrySet().stream() + .filter(entry -> entry.getValue() > 0) + .sorted(Map.Entry.comparingByValue(Comparator.reverseOrder()).thenComparing(Map.Entry.comparingByKey())) + .toList(); + } + + private static String formatPercent(long count, long total) { + long percent = Math.round(count * 100.0D / total); + return percent + "%"; + } + + private static String shortId(String id) { + if (id == null || id.isBlank()) { + return ""; + } + int split = id.indexOf(':'); + return split >= 0 ? id.substring(split + 1) : id; + } + + private static String typeLabel(String type) { + return switch (type) { + case "block" -> "Bloc"; + case "item" -> "Item"; + case "mob" -> "Mob"; + case "entity" -> "Mob"; + case "entry" -> "Entree"; + default -> type == null || type.isBlank() ? "Entree" : type; + }; + } + + private static String categorySuffix(WsmcEntry entry) { + if (!entry.category().isBlank()) { + return " / " + entry.category(); + } + if (!entry.family().isBlank()) { + return " / " + entry.family(); + } + return ""; + } + + private static void addWrapped(List lines, String text, int maxChars, int maxLines) { + if (text == null || text.isBlank() || maxLines <= 0) { + return; + } + + String[] words = text.strip().split("\\s+"); + StringBuilder line = new StringBuilder(); + int added = 0; + for (String word : words) { + if (line.isEmpty()) { + line.append(word); + } else if (line.length() + 1 + word.length() <= maxChars) { + line.append(' ').append(word); + } else { + lines.add(trimText(line.toString(), maxChars)); + added++; + if (added >= maxLines) { + return; + } + line.setLength(0); + line.append(word); + } + } + if (!line.isEmpty() && added < maxLines) { + lines.add(trimText(line.toString(), maxChars)); + } + } + + private static String trimText(String text, int maxChars) { + if (text.length() <= maxChars) { + return text; + } + if (maxChars <= 3) { + return text.substring(0, Math.max(0, maxChars)); + } + return text.substring(0, maxChars - 3) + "..."; + } + + private static int wrapPage(int page, int count) { + int wrapped = page % count; + return wrapped < 0 ? wrapped + count : wrapped; + } + + private static int clamp(int value, int min, int max) { + return Math.max(min, Math.min(max, value)); + } + + private static String normalizeQuery(String query) { + if (query == null) { + return ""; + } + String normalized = query.replace('\n', ' ').replace('\r', ' ').strip().toLowerCase(Locale.ROOT); + return normalized.length() > 48 ? normalized.substring(0, 48) : normalized; + } + + private static boolean containsQuery(String value, String query) { + return value != null && value.toLowerCase(Locale.ROOT).contains(query); + } + + private static String cacheKey(String playerId, String query) { + return playerId + "\u0000" + query; + } + + private static String cachePlayerId(String cacheKey) { + int split = cacheKey.indexOf('\u0000'); + return split < 0 ? cacheKey : cacheKey.substring(0, split); + } + + private static List sizedStrings(List values) { + List copy = new ArrayList<>(values); + while (copy.size() < GRID_SIZE) { + copy.add(""); + } + return copy.size() > GRID_SIZE ? copy.subList(0, GRID_SIZE) : copy; + } + + private static List sizedColors(List values) { + List copy = new ArrayList<>(values); + while (copy.size() < GRID_SIZE) { + copy.add(DARK_CELL); + } + return copy.size() > GRID_SIZE ? copy.subList(0, GRID_SIZE) : copy; + } + + private static int hslToArgb(float hue, float saturation, float lightness) { + float c = (1.0F - Math.abs(2.0F * lightness - 1.0F)) * saturation; + float x = c * (1.0F - Math.abs((hue / 60.0F) % 2.0F - 1.0F)); + float m = lightness - c / 2.0F; + float r; + float g; + float b; + if (hue < 60.0F) { + r = c; + g = x; + b = 0.0F; + } else if (hue < 120.0F) { + r = x; + g = c; + b = 0.0F; + } else if (hue < 180.0F) { + r = 0.0F; + g = c; + b = x; + } else if (hue < 240.0F) { + r = 0.0F; + g = x; + b = c; + } else if (hue < 300.0F) { + r = x; + g = 0.0F; + b = c; + } else { + r = c; + g = 0.0F; + b = x; + } + return 0xFF000000 + | (Math.round((r + m) * 255.0F) << 16) + | (Math.round((g + m) * 255.0F) << 8) + | Math.round((b + m) * 255.0F); + } + + private static ColorGrid buildColorGrid(List entries, int hue) { + List ids = new ArrayList<>(GRID_SIZE); + List colors = new ArrayList<>(GRID_SIZE); + List labels = new ArrayList<>(GRID_SIZE); + Map used = new HashMap<>(); + for (int row = 0; row < GRID_WIDTH; row++) { + for (int col = 0; col < GRID_WIDTH; col++) { + float saturation = col / 8.0F; + float lightness = 1.0F - row / 8.0F; + int cellColor = hslToArgb(hue, saturation, lightness); + String best = nearestEntry(entries, hue, saturation, lightness, ids, row, col, used); + colors.add(cellColor); + ids.add(best); + if (!best.isBlank()) { + used.merge(best, 1, Integer::sum); + } + labels.add(best.isBlank() ? "HSL" : shortId(best)); + } + } + return new ColorGrid(ids, colors, labels); + } + + private static String nearestEntry(List candidates, int hue, float saturation, float lightness, List ids, int row, int col, Map used) { + if (candidates.isEmpty()) { + return ""; + } + + String left = col > 0 && !ids.isEmpty() ? ids.get(ids.size() - 1) : ""; + String up = row > 0 ? ids.get((row - 1) * GRID_WIDTH + col) : ""; + return candidates.stream() + .min(Comparator.comparingDouble(candidate -> { + String id = candidate.id(); + double penalty = used.getOrDefault(id, 0) * 0.018D; + if (id.equals(left)) { + penalty += 0.16D; + } + if (id.equals(up)) { + penalty += 0.16D; + } + return candidate.distanceToHsl(hue, saturation, lightness) + penalty; + })) + .map(WsmcEntry::id) + .orElse(""); + } + + private record CacheSignature(int size, long hash) { + private static CacheSignature of(Set ids, String query) { + long hash = 0xCBF29CE484222325L; + for (String id : ids) { + hash ^= id.hashCode(); + hash *= 0x100000001B3L; + } + hash ^= query.hashCode(); + hash *= 0x100000001B3L; + return new CacheSignature(ids.size(), hash); + } + } + + static record WorldLines(List lines) { + } + + private record SurfaceCell(String id, int color) { + } + + static record LibraryEntry( + String id, + String displayName, + String entryType, + String description, + int color, + String hueGroup, + double hue, + double lightness, + boolean loaded, + boolean favorite, + boolean research, + boolean unlocked + ) { + LibraryEntry(String id, String displayName, String entryType, String description, int color, String hueGroup, double hue, double lightness) { + this(id, displayName, entryType, description, color, hueGroup, hue, lightness, false, false, false, true); + } + + private static LibraryEntry from(WsmcEntry entry) { + return from(entry.id(), entry, entry.displayName(), false, false, false, true); + } + + private static LibraryEntry from(String id, WsmcEntry entry, String displayName, boolean loaded, boolean favorite, boolean research, boolean unlocked) { + WsmcCodexIndex.Hsl hsl = entry.hsl(); + return new LibraryEntry( + id, + displayName, + entry.entryType(), + entry.description(), + entry.primaryArgb(), + entry.colors().hueGroup(), + hsl.hue(), + hsl.lightness(), + loaded, + favorite, + research, + unlocked + ); + } + + private String visibleName() { + return unlocked ? displayName : "???"; + } + } + + private static final class ColorCache { + private final CacheSignature signature; + private final int sourceCount; + private final List entries; + private final Map hueSnapshots = new HashMap<>(); + private int nextHue = 0; + + private ColorCache(CacheSignature signature, int sourceCount, List entries) { + this.signature = signature; + this.sourceCount = sourceCount; + this.entries = entries; + } + + private CacheSignature signature() { + return signature; + } + + private int sourceCount() { + return sourceCount; + } + + private int filteredCount() { + return entries.size(); + } + + private int readyCount() { + return hueSnapshots.size(); + } + + private ColorGrid grid(int hue) { + return hueSnapshots.get(hue); + } + + private ColorGrid gridOrBuild(int hue) { + return hueSnapshots.computeIfAbsent(hue, ignored -> buildColorGrid(entries, hue)); + } + + private void prioritize(int hue) { + if (!hueSnapshots.containsKey(hue)) { + nextHue = hue; + } + } + + private int warm(int budget) { + int remaining = budget; + while (remaining > 0 && hueSnapshots.size() < HUE_COUNT) { + int hue = nextMissingHue(); + hueSnapshots.put(hue, buildColorGrid(entries, hue)); + nextHue = (hue + 1) % HUE_COUNT; + remaining--; + } + return remaining; + } + + private int nextMissingHue() { + for (int offset = 0; offset < HUE_COUNT; offset++) { + int hue = (nextHue + offset) % HUE_COUNT; + if (!hueSnapshots.containsKey(hue)) { + return hue; + } + } + return 0; + } + } + + private record ColorGrid(List ids, List colors, List labels) { + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/voxel/StudioVoxelEditor.java b/Gameplay/blocodex/src/main/java/dev/blocodex/voxel/StudioVoxelEditor.java new file mode 100644 index 0000000..f88bc03 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/voxel/StudioVoxelEditor.java @@ -0,0 +1,454 @@ +package dev.blocodex.voxel; + +import dev.blocodex.memory.VoxelProjectMemory; + +import java.util.ArrayDeque; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; +import java.util.HashSet; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Queue; +import java.util.Set; + +public final class StudioVoxelEditor { + public static final int DEFAULT_WIDTH = 16; + public static final int DEFAULT_HEIGHT = 16; + public static final int DEFAULT_DEPTH = 16; + public static final String DEFAULT_PROJECT_ID = "studio-project"; + public static final String DEFAULT_PROJECT_NAME = "Untitled"; + private static final int SHAPE_TOOL_RADIUS = 2; + + public enum Tool { + PIPETTE, + BRUSH, + ADD, + REMOVE, + SQUARE, + ROUND, + FILL; + + public String label() { + return switch (this) { + case PIPETTE -> "Pipette"; + case BRUSH -> "Pinceau"; + case ADD -> "Ajouter"; + case REMOVE -> "Retirer"; + case SQUARE -> "Carre"; + case ROUND -> "Rond"; + case FILL -> "Remplir"; + }; + } + } + + private VoxelProjectMemory project; + private String selectedBlockId; + + private StudioVoxelEditor(VoxelProjectMemory project, String selectedBlockId) { + this.project = normalize(project); + this.selectedBlockId = cleanBlockId(selectedBlockId); + } + + public static StudioVoxelEditor blank() { + return new StudioVoxelEditor(blankProject(), null); + } + + public static StudioVoxelEditor blank(String id, String name, int width, int height, int depth) { + requirePositiveDimensions(width, height, depth); + return new StudioVoxelEditor(blankProject(id, name, width, height, depth), null); + } + + public static StudioVoxelEditor edit(VoxelProjectMemory project) { + return fromProject(project); + } + + public static StudioVoxelEditor fromProject(VoxelProjectMemory project) { + return new StudioVoxelEditor(project, null); + } + + public static VoxelProjectMemory blankProject() { + return blankProject(DEFAULT_PROJECT_ID, DEFAULT_PROJECT_NAME); + } + + public static VoxelProjectMemory blankProject(String id, String name) { + return blankProject(id, name, DEFAULT_WIDTH, DEFAULT_HEIGHT, DEFAULT_DEPTH); + } + + public static VoxelProjectMemory blankProject(String id, String name, int width, int height, int depth) { + requirePositiveDimensions(width, height, depth); + return new VoxelProjectMemory( + id, + name, + width, + height, + depth, + List.of(), + Map.of(), + 0L, + 0L + ); + } + + public VoxelProjectMemory project() { + return project; + } + + public String id() { + return project.id(); + } + + public String name() { + return project.name(); + } + + public int width() { + return project.width(); + } + + public int height() { + return project.height(); + } + + public int depth() { + return project.depth(); + } + + public Map cells() { + return Collections.unmodifiableMap(new LinkedHashMap<>(project.cells())); + } + + public String selectedBlockId() { + return selectedBlockId; + } + + public void setName(String name) { + project = new VoxelProjectMemory( + project.id(), + name, + project.width(), + project.height(), + project.depth(), + project.palette(), + project.cells(), + project.createdTick(), + project.updatedTick() + ); + } + + public StudioVoxelEditor selectBlock(String blockId) { + selectedBlockId = cleanBlockId(blockId); + return this; + } + + public StudioVoxelEditor replaceProject(VoxelProjectMemory project) { + this.project = normalize(project); + return this; + } + + public StudioVoxelEditor resize(int width, int height, int depth) { + requirePositiveDimensions(width, height, depth); + Map cells = new LinkedHashMap<>(); + for (Map.Entry entry : project.cells().entrySet()) { + CellEntry pos = parseCellKey(entry.getKey(), entry.getValue()); + if (pos != null && inBounds(pos.x(), pos.y(), pos.z(), width, height, depth)) { + cells.put(entry.getKey(), entry.getValue()); + } + } + return withProject(width, height, depth, cells); + } + + public StudioVoxelEditor brush(int x, int y, int z) { + return add(x, y, z, selectedBlockId); + } + + public StudioVoxelEditor add(int x, int y, int z, String blockId) { + String cleanBlockId = requireBlockId(blockId); + if (!inProjectBounds(x, y, z)) { + return this; + } + + Map cells = mutableCells(); + cells.put(cellKey(x, y, z), cleanBlockId); + return withCells(cells); + } + + public StudioVoxelEditor remove(int x, int y, int z) { + if (!inProjectBounds(x, y, z)) { + return this; + } + + Map cells = mutableCells(); + cells.remove(cellKey(x, y, z)); + return withCells(cells); + } + + public StudioVoxelEditor fillSquare(int centerX, int y, int centerZ, int radius) { + return fillSquare(centerX - radius, y, centerZ - radius, centerX + radius, centerZ + radius, selectedBlockId); + } + + public StudioVoxelEditor fillSquare(int centerX, int y, int centerZ, int radius, String blockId) { + return fillSquare(centerX - radius, y, centerZ - radius, centerX + radius, centerZ + radius, blockId); + } + + public StudioVoxelEditor fillSquare(int minX, int y, int minZ, int maxX, int maxZ, String blockId) { + String cleanBlockId = requireBlockId(blockId); + if (y < 0 || y >= project.height()) { + return this; + } + + int startX = Math.max(0, Math.min(minX, maxX)); + int endX = Math.min(project.width() - 1, Math.max(minX, maxX)); + int startZ = Math.max(0, Math.min(minZ, maxZ)); + int endZ = Math.min(project.depth() - 1, Math.max(minZ, maxZ)); + if (startX > endX || startZ > endZ) { + return this; + } + + Map cells = mutableCells(); + for (int z = startZ; z <= endZ; z++) { + for (int x = startX; x <= endX; x++) { + cells.put(cellKey(x, y, z), cleanBlockId); + } + } + return withCells(cells); + } + + public StudioVoxelEditor fillRound(int centerX, int y, int centerZ, int radius) { + return fillRound(centerX, y, centerZ, radius, selectedBlockId); + } + + public StudioVoxelEditor fillRound(int centerX, int y, int centerZ, int radius, String blockId) { + String cleanBlockId = requireBlockId(blockId); + if (radius < 0 || y < 0 || y >= project.height()) { + return this; + } + + int startX = Math.max(0, centerX - radius); + int endX = Math.min(project.width() - 1, centerX + radius); + int startZ = Math.max(0, centerZ - radius); + int endZ = Math.min(project.depth() - 1, centerZ + radius); + int radiusSquared = radius * radius; + + Map cells = mutableCells(); + for (int z = startZ; z <= endZ; z++) { + int dz = z - centerZ; + for (int x = startX; x <= endX; x++) { + int dx = x - centerX; + if (dx * dx + dz * dz <= radiusSquared) { + cells.put(cellKey(x, y, z), cleanBlockId); + } + } + } + return withCells(cells); + } + + public StudioVoxelEditor floodFill2d(int startX, int y, int startZ) { + return floodFill2d(startX, y, startZ, selectedBlockId); + } + + public StudioVoxelEditor floodFill2d(int startX, int y, int startZ, String blockId) { + String cleanBlockId = requireBlockId(blockId); + if (!inProjectBounds(startX, y, startZ)) { + return this; + } + + String targetBlockId = project.cells().get(cellKey(startX, y, startZ)); + if (Objects.equals(targetBlockId, cleanBlockId)) { + return this; + } + + Map cells = mutableCells(); + Queue queue = new ArrayDeque<>(); + Set visited = new HashSet<>(); + queue.add(new LayerPos(startX, startZ)); + + while (!queue.isEmpty()) { + LayerPos current = queue.remove(); + if (!visited.add(current) || !inProjectBounds(current.x(), y, current.z())) { + continue; + } + + String currentKey = cellKey(current.x(), y, current.z()); + if (!Objects.equals(cells.get(currentKey), targetBlockId)) { + continue; + } + + cells.put(currentKey, cleanBlockId); + queue.add(new LayerPos(current.x() + 1, current.z())); + queue.add(new LayerPos(current.x() - 1, current.z())); + queue.add(new LayerPos(current.x(), current.z() + 1)); + queue.add(new LayerPos(current.x(), current.z() - 1)); + } + + return withCells(cells); + } + + public String blockAt(int x, int y, int z) { + if (!inProjectBounds(x, y, z)) { + return null; + } + return project.cells().get(cellKey(x, y, z)); + } + + public void apply(Tool tool, int x, int y, int z, String blockId) { + Objects.requireNonNull(tool, "tool"); + switch (tool) { + case PIPETTE -> { + } + case BRUSH, ADD -> add(x, y, z, blockId); + case REMOVE -> remove(x, y, z); + case SQUARE -> fillSquare(x, y, z, SHAPE_TOOL_RADIUS, blockId); + case ROUND -> fillRound(x, y, z, SHAPE_TOOL_RADIUS, blockId); + case FILL -> floodFill2d(x, y, z, blockId); + } + } + + public VoxelProjectMemory toProject(long createdTick, long updatedTick) { + VoxelProjectMemory normalized = normalize(project); + return new VoxelProjectMemory( + normalized.id(), + normalized.name(), + normalized.width(), + normalized.height(), + normalized.depth(), + normalized.palette(), + normalized.cells(), + createdTick, + updatedTick + ); + } + + public VoxelProjectMemory export() { + return normalize(project); + } + + public static VoxelProjectMemory export(VoxelProjectMemory project) { + return normalize(project); + } + + private StudioVoxelEditor withCells(Map cells) { + return withProject(project.width(), project.height(), project.depth(), cells); + } + + private StudioVoxelEditor withProject(int width, int height, int depth, Map cells) { + VoxelProjectMemory nextProject = new VoxelProjectMemory( + project.id(), + project.name(), + width, + height, + depth, + paletteFromCells(cells), + cells, + project.createdTick(), + project.updatedTick() + ); + project = normalize(nextProject); + return this; + } + + private Map mutableCells() { + return new LinkedHashMap<>(project.cells()); + } + + private boolean inProjectBounds(int x, int y, int z) { + return inBounds(x, y, z, project.width(), project.height(), project.depth()); + } + + private static VoxelProjectMemory normalize(VoxelProjectMemory project) { + Objects.requireNonNull(project, "project"); + requirePositiveDimensions(project.width(), project.height(), project.depth()); + + Map cells = new LinkedHashMap<>(); + normalizedCellEntries(project).forEach(entry -> cells.put(entry.key(), entry.blockId())); + return new VoxelProjectMemory( + project.id(), + project.name(), + project.width(), + project.height(), + project.depth(), + paletteFromCells(cells), + cells, + project.createdTick(), + project.updatedTick() + ); + } + + private static List normalizedCellEntries(VoxelProjectMemory project) { + List entries = new ArrayList<>(); + for (Map.Entry entry : project.cells().entrySet()) { + CellEntry pos = parseCellKey(entry.getKey(), entry.getValue()); + if (pos != null && inBounds(pos.x(), pos.y(), pos.z(), project.width(), project.height(), project.depth())) { + entries.add(pos); + } + } + entries.sort(Comparator.comparingInt(CellEntry::y).thenComparingInt(CellEntry::z).thenComparingInt(CellEntry::x)); + return entries; + } + + private static List paletteFromCells(Map cells) { + List palette = new ArrayList<>(); + for (String blockId : cells.values()) { + if (!palette.contains(blockId)) { + palette.add(blockId); + } + } + return palette; + } + + private static boolean inBounds(int x, int y, int z, int width, int height, int depth) { + return x >= 0 && x < width && y >= 0 && y < height && z >= 0 && z < depth; + } + + private static CellEntry parseCellKey(String key, String blockId) { + String cleanBlockId = cleanBlockId(blockId); + if (key == null || cleanBlockId == null) { + return null; + } + String[] parts = key.split(",", 3); + if (parts.length != 3) { + return null; + } + try { + return new CellEntry(Integer.parseInt(parts[0]), Integer.parseInt(parts[1]), Integer.parseInt(parts[2]), cleanBlockId); + } catch (NumberFormatException exception) { + return null; + } + } + + private static String cellKey(int x, int y, int z) { + return x + "," + y + "," + z; + } + + private static void requirePositiveDimensions(int width, int height, int depth) { + if (width <= 0 || height <= 0 || depth <= 0) { + throw new IllegalArgumentException("Voxel project dimensions must be positive"); + } + } + + private static String requireBlockId(String blockId) { + String cleanBlockId = cleanBlockId(blockId); + if (cleanBlockId == null) { + throw new IllegalStateException("A block must be selected before painting"); + } + return cleanBlockId; + } + + private static String cleanBlockId(String blockId) { + if (blockId == null || blockId.isBlank()) { + return null; + } + return blockId.trim(); + } + + private record LayerPos(int x, int z) { + } + + private record CellEntry(int x, int y, int z, String blockId) { + String key() { + return cellKey(x, y, z); + } + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/voxel/VoxelProjectPlacement.java b/Gameplay/blocodex/src/main/java/dev/blocodex/voxel/VoxelProjectPlacement.java new file mode 100644 index 0000000..3abb8b6 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/voxel/VoxelProjectPlacement.java @@ -0,0 +1,83 @@ +package dev.blocodex.voxel; + +import dev.blocodex.memory.VoxelProjectMemory; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; + +import java.util.ArrayList; +import java.util.Comparator; +import java.util.List; +import java.util.Map; + +public final class VoxelProjectPlacement { + private VoxelProjectPlacement() { + } + + public static List orderedCells(VoxelProjectMemory project) { + List cells = new ArrayList<>(); + for (Map.Entry entry : project.cells().entrySet()) { + BlockPos pos = parseCell(entry.getKey()); + if (pos != null) { + cells.add(new Cell(pos.getX(), pos.getY(), pos.getZ(), entry.getValue())); + } + } + cells.sort(Comparator.comparingInt(Cell::y).thenComparingInt(Cell::z).thenComparingInt(Cell::x)); + return cells; + } + + public static BlockPos transform(VoxelProjectMemory project, Cell cell, BlockPos anchor, Direction facing) { + Direction horizontal = horizontal(facing); + int centeredX = cell.x() - project.width() / 2; + int centeredZ = cell.z() - project.depth() / 2; + int worldX; + int worldZ; + switch (horizontal) { + case SOUTH -> { + worldX = -centeredX; + worldZ = -centeredZ; + } + case EAST -> { + worldX = -centeredZ; + worldZ = centeredX; + } + case WEST -> { + worldX = centeredZ; + worldZ = -centeredX; + } + default -> { + worldX = centeredX; + worldZ = centeredZ; + } + } + return anchor.offset(worldX, cell.y(), worldZ).immutable(); + } + + public static BlockPos parseCell(String key) { + if (key == null) { + return null; + } + String[] parts = key.split(",", 3); + if (parts.length != 3) { + return null; + } + try { + return new BlockPos(Integer.parseInt(parts[0]), Integer.parseInt(parts[1]), Integer.parseInt(parts[2])); + } catch (NumberFormatException exception) { + return null; + } + } + + public static String cellKey(int x, int y, int z) { + return x + "," + y + "," + z; + } + + public static Direction horizontal(Direction facing) { + if (facing == Direction.UP || facing == Direction.DOWN || facing == null) { + return Direction.NORTH; + } + return facing; + } + + public record Cell(int x, int y, int z, String blockId) { + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/voxel/VoxelProjectRequirements.java b/Gameplay/blocodex/src/main/java/dev/blocodex/voxel/VoxelProjectRequirements.java new file mode 100644 index 0000000..74d4645 --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/voxel/VoxelProjectRequirements.java @@ -0,0 +1,88 @@ +package dev.blocodex.voxel; + +import dev.blocodex.memory.PlayerMemory; +import dev.blocodex.memory.VoxelProjectMemory; + +import java.util.ArrayList; +import java.util.Comparator; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +public final class VoxelProjectRequirements { + private VoxelProjectRequirements() { + } + + public static Map requiredBlockCounts(VoxelProjectMemory project) { + Map counts = new LinkedHashMap<>(); + if (project == null) { + return counts; + } + + for (String blockId : project.cells().values()) { + if (blockId == null || blockId.isBlank()) { + continue; + } + counts.merge(blockId, 1, Integer::sum); + } + return sortedByCount(counts); + } + + public static List missingRequiredBlocks(VoxelProjectMemory project, PlayerMemory memory) { + Map required = requiredBlockCounts(project); + List missing = new ArrayList<>(); + for (String blockId : required.keySet()) { + if (!memory.discoveredBlocks().contains(blockId)) { + missing.add(blockId); + } + } + return missing; + } + + public static String formatCounts(Map counts, int limit) { + if (counts.isEmpty()) { + return "aucun"; + } + + List parts = new ArrayList<>(); + int index = 0; + for (Map.Entry entry : counts.entrySet()) { + if (index >= limit) { + parts.add("+" + (counts.size() - limit)); + break; + } + parts.add(shortId(entry.getKey()) + " x" + entry.getValue()); + index++; + } + return String.join(", ", parts); + } + + public static String formatIds(List ids, int limit) { + if (ids.isEmpty()) { + return "aucun"; + } + + List parts = new ArrayList<>(); + for (int i = 0; i < ids.size(); i++) { + if (i >= limit) { + parts.add("+" + (ids.size() - limit)); + break; + } + parts.add(shortId(ids.get(i))); + } + return String.join(", ", parts); + } + + private static Map sortedByCount(Map counts) { + Map sorted = new LinkedHashMap<>(); + counts.entrySet().stream() + .sorted(Comparator.>comparingInt(Map.Entry::getValue).reversed().thenComparing(Map.Entry::getKey)) + .forEach(entry -> sorted.put(entry.getKey(), entry.getValue())); + return sorted; + } + + private static String shortId(String id) { + int split = id.indexOf(':'); + return split >= 0 ? id.substring(split + 1) : id; + } +} diff --git a/Gameplay/blocodex/src/main/java/dev/blocodex/voxel/VoxelProjectValidator.java b/Gameplay/blocodex/src/main/java/dev/blocodex/voxel/VoxelProjectValidator.java new file mode 100644 index 0000000..13e2dad --- /dev/null +++ b/Gameplay/blocodex/src/main/java/dev/blocodex/voxel/VoxelProjectValidator.java @@ -0,0 +1,104 @@ +package dev.blocodex.voxel; + +import dev.blocodex.memory.VoxelProjectMemory; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.Identifier; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.EmptyBlockGetter; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockState; + +import java.util.HashSet; +import java.util.Set; + +public final class VoxelProjectValidator { + public static final int MAX_DIMENSION = 32; + public static final int MAX_CELLS = 8192; + public static final int MAX_PALETTE = 1024; + + private VoxelProjectValidator() { + } + + public static ValidationResult validate(VoxelProjectMemory project) { + if (project == null) { + return ValidationResult.error("Projet absent."); + } + if (project.id() == null || project.id().isBlank()) { + return ValidationResult.error("Identifiant de projet invalide."); + } + if (!validDimension(project.width()) || !validDimension(project.height()) || !validDimension(project.depth())) { + return ValidationResult.error("Dimensions invalides. Maximum " + MAX_DIMENSION + " par axe."); + } + if (project.cells().size() > MAX_CELLS) { + return ValidationResult.error("Structure trop grande. Maximum " + MAX_CELLS + " voxels."); + } + if (project.palette().size() > MAX_PALETTE) { + return ValidationResult.error("Palette trop grande. Maximum " + MAX_PALETTE + " blocs."); + } + + Set palette = new HashSet<>(project.palette()); + for (String blockId : palette) { + if (!isBuildableFullBlock(blockId)) { + return ValidationResult.error("Bloc non constructible dans la palette: " + blockId); + } + } + + for (var entry : project.cells().entrySet()) { + BlockPos cell = VoxelProjectPlacement.parseCell(entry.getKey()); + if (cell == null || cell.getX() < 0 || cell.getY() < 0 || cell.getZ() < 0 + || cell.getX() >= project.width() || cell.getY() >= project.height() || cell.getZ() >= project.depth()) { + return ValidationResult.error("Cellule hors limites: " + entry.getKey()); + } + String blockId = entry.getValue(); + if (!palette.contains(blockId)) { + return ValidationResult.error("Cellule hors palette: " + blockId); + } + if (!isBuildableFullBlock(blockId)) { + return ValidationResult.error("Bloc non constructible dans une cellule: " + blockId); + } + } + + return ValidationResult.ok(); + } + + public static boolean isBuildableFullBlock(String blockId) { + Identifier id = Identifier.tryParse(blockId); + if (id == null) { + return false; + } + Block block = BuiltInRegistries.BLOCK.getOptional(id).orElse(Blocks.AIR); + if (block == Blocks.AIR || block.asItem() == Items.AIR) { + return false; + } + BlockState state = block.defaultBlockState(); + return !state.isAir() && state.isCollisionShapeFullBlock(EmptyBlockGetter.INSTANCE, BlockPos.ZERO); + } + + public static boolean isOpaquePaletteBlock(String blockId) { + if (!isBuildableFullBlock(blockId)) { + return false; + } + Identifier id = Identifier.tryParse(blockId); + if (id == null) { + return false; + } + BlockState state = BuiltInRegistries.BLOCK.getOptional(id).orElse(Blocks.AIR).defaultBlockState(); + return state.canOcclude() && state.isSolidRender(); + } + + private static boolean validDimension(int value) { + return value > 0 && value <= MAX_DIMENSION; + } + + public record ValidationResult(boolean valid, String message) { + public static ValidationResult ok() { + return new ValidationResult(true, ""); + } + + public static ValidationResult error(String message) { + return new ValidationResult(false, message == null ? "Projet invalide." : message); + } + } +} diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/blockstates/computer.json b/Gameplay/blocodex/src/main/resources/assets/blocodex/blockstates/computer.json new file mode 100644 index 0000000..4bb05ac --- /dev/null +++ b/Gameplay/blocodex/src/main/resources/assets/blocodex/blockstates/computer.json @@ -0,0 +1,19 @@ +{ + "variants": { + "facing=east": { + "model": "blocodex:block/computer", + "y": 90 + }, + "facing=north": { + "model": "blocodex:block/computer" + }, + "facing=south": { + "model": "blocodex:block/computer", + "y": 180 + }, + "facing=west": { + "model": "blocodex:block/computer", + "y": 270 + } + } +} diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/data/wsmc_snapshot_compact.json b/Gameplay/blocodex/src/main/resources/assets/blocodex/data/wsmc_snapshot_compact.json new file mode 100644 index 0000000..7e32829 --- /dev/null +++ b/Gameplay/blocodex/src/main/resources/assets/blocodex/data/wsmc_snapshot_compact.json @@ -0,0 +1 @@ +{"kind":"blocodex-wsmc-compact","schema_version":"0.1.0","minecraft_version":"1.21.11","source":"/Users/koka/Documents/wsmc/data/output/latest/snapshot.json","source_fingerprint":"","generated_at":"2026-04-29T17:03:09.645372+00:00","entry_count":1881,"entry_type_counts":{"block":1168,"item":490,"mob":223},"entries":[{"id":"minecraft:acacia_boat","name":"Acacia Boat","entry_type":"item","description":"Boats (including bamboo rafts) are drivable vehicle entities that can be ridden through water or at high speeds across all types of ice. Most mobs will ride nearby boats, which they cannot control or exit on their own.","history":[{"version":"v1.0.6","status":"added","notes":"Added boats."},{"version":"wiki-history","status":"added","notes":"added again."},{"version":"18w15a","status":"added","notes":"Added blue ice , which allows boats to travel even faster on it."}],"colors":{"primary":"#7f4526","dominant_hex":"#462414","average_hex":"#7f4526","hue_group":"red","lightness":0.3235,"saturation":0.5394,"palette":["#462414","#c1713e","#5c341c","#ac5c34","#743c24","#8c4c2c"],"color_groups":[{"hex":"#462414","weight":0.2424,"lightness":0.1765,"saturation":0.5556,"hue_group":"red"},{"hex":"#c1713e","weight":0.2303,"lightness":0.5,"saturation":0.5137,"hue_group":"red"},{"hex":"#5c341c","weight":0.2,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#ac5c34","weight":0.1273,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"},{"hex":"#743c24","weight":0.1091,"lightness":0.298,"saturation":0.5263,"hue_group":"red"},{"hex":"#8c4c2c","weight":0.0909,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/acacia_boat.png","family":"acacia_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_stew","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:acacia_button","name":"Acacia Button","entry_type":"block","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added wooden buttons. They are currently uncraftable."},{"version":"12w34b","status":"added","notes":"Added crafting recipe for wooden buttons. Recipe"},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped buttons."}],"colors":{"primary":"#a85a32","dominant_hex":"#a25432","average_hex":"#a85a32","hue_group":"red","lightness":0.4275,"saturation":0.5413,"palette":["#a25432","#bc6434","#ac5c34","#c46c3c","#8c442c","#8c4c2c"],"color_groups":[{"hex":"#a25432","weight":0.2461,"lightness":0.4157,"saturation":0.5283,"hue_group":"red"},{"hex":"#bc6434","weight":0.2148,"lightness":0.4706,"saturation":0.5667,"hue_group":"red"},{"hex":"#ac5c34","weight":0.1875,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"},{"hex":"#c46c3c","weight":0.1445,"lightness":0.502,"saturation":0.5354,"hue_group":"red"},{"hex":"#8c442c","weight":0.1133,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"},{"hex":"#8c4c2c","weight":0.0938,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_planks.png","family":"acacia_button","relations":[{"type":"visual_neighbors","target":"minecraft:acacia_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_stairs","label":"Palette proche: Acacia Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_wall_sign","label":"Palette proche: Acacia Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_trapdoor","label":"Palette proche: Acacia Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.922},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.766},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.766},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.74},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.736},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_planks","label":"Couleurs analogues: Acacia Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_pressure_plate","label":"Couleurs analogues: Acacia Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_sign","label":"Couleurs analogues: Acacia Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_slab","label":"Couleurs analogues: Acacia Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_stairs","label":"Couleurs analogues: Acacia Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_sign","label":"Couleurs analogues: Acacia Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.958},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.905},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.903},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.9},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.877},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.954},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.879},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.868},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.865},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.865},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.865},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.865},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.858},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.913},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.895},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.895},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.882},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.864},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.771},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:acacia_chest_boat","name":"Acacia Chest Boat","entry_type":"item","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#754823","dominant_hex":"#9b6226","average_hex":"#754823","hue_group":"red","lightness":0.298,"saturation":0.5395,"palette":["#9b6226","#be733c","#633a1d","#2f1f0f","#4a2612","#393424"],"color_groups":[{"hex":"#9b6226","weight":0.2299,"lightness":0.3784,"saturation":0.6062,"hue_group":"yellow"},{"hex":"#be733c","weight":0.2241,"lightness":0.4902,"saturation":0.52,"hue_group":"red"},{"hex":"#633a1d","weight":0.1667,"lightness":0.251,"saturation":0.5469,"hue_group":"red"},{"hex":"#2f1f0f","weight":0.1379,"lightness":0.1216,"saturation":0.5161,"hue_group":"red"},{"hex":"#4a2612","weight":0.1379,"lightness":0.1804,"saturation":0.6087,"hue_group":"red"},{"hex":"#393424","weight":0.1034,"lightness":0.1824,"saturation":0.2258,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/acacia_chest_boat.png","family":"acacia_chest_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:acacia_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rotten_flesh","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_stew","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_pigstep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:acacia_door","name":"Acacia Door","entry_type":"block","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","history":[{"version":"20100607","status":"added","notes":"Added wooden doors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"18w49a","status":"added","notes":"Added snowy tundra villages, which generate with spruce doors."}],"colors":{"primary":"#a85f3d","dominant_hex":"#764528","average_hex":"#a85f3d","hue_group":"red","lightness":0.449,"saturation":0.4672,"palette":["#764528","#cc744c","#b95c3c","#925e39","#c4744c","#ac5c34"],"color_groups":[{"hex":"#764528","weight":0.2391,"lightness":0.3098,"saturation":0.4937,"hue_group":"red"},{"hex":"#cc744c","weight":0.2283,"lightness":0.549,"saturation":0.5565,"hue_group":"red"},{"hex":"#b95c3c","weight":0.163,"lightness":0.4804,"saturation":0.5102,"hue_group":"red"},{"hex":"#925e39","weight":0.1413,"lightness":0.398,"saturation":0.4384,"hue_group":"red"},{"hex":"#c4744c","weight":0.1413,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"},{"hex":"#ac5c34","weight":0.087,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_door_top.png","family":"acacia","relations":[{"type":"variants","target":"minecraft:acacia_fence","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_fence","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_leaves","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_leaves","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_log","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_log","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_planks","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_planks","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_sapling","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_sapling","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_slab","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_slab","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_stairs","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_stairs","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_wood","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_wood","label":"Related set: acacia","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_acacia_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_acacia_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.939},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.929},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.929},{"type":"color_neighbors","target":"minecraft:stripped_acacia_log","label":"Palette proche: Stripped Acacia Log","confidence":0.929},{"type":"color_neighbors","target":"minecraft:stripped_acacia_wood","label":"Palette proche: Stripped Acacia Wood","confidence":0.929},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.921},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.921},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.921},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.921},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.921},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.921},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.921},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.786},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.786},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.782},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.782},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.78},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.779},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.779},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.776},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.776},{"type":"color_analogous","target":"minecraft:copper_bulb","label":"Couleurs analogues: Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_bulb","label":"Couleurs analogues: Waxed Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_shelf","label":"Couleurs analogues: Acacia Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:decorated_pot","label":"Couleurs analogues: Decorated Pot","confidence":0.96},{"type":"color_analogous","target":"minecraft:terracotta","label":"Couleurs analogues: Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.947},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.886},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.884},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.883},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.872},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.872},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.92},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.92},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.92},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.92},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.911},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.911},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.896},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.892},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.954},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.946},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.941},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.866},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.838},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.838},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.818},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.817},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:acacia_fence","name":"Acacia Fence","entry_type":"block","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","history":[{"version":"20100629","status":"added","notes":"added to the game. There are three defined states: north-south, east-west and a cross. These models are currently unused."},{"version":"v1.0.17","status":"added","notes":"Added fences."},{"version":"1.8","status":"added","notes":"Added villages and strongholds , where wooden fences naturally generate."}],"colors":{"primary":"#a85a32","dominant_hex":"#a25432","average_hex":"#a85a32","hue_group":"red","lightness":0.4275,"saturation":0.5413,"palette":["#a25432","#bc6434","#ac5c34","#c46c3c","#8c442c","#8c4c2c"],"color_groups":[{"hex":"#a25432","weight":0.2461,"lightness":0.4157,"saturation":0.5283,"hue_group":"red"},{"hex":"#bc6434","weight":0.2148,"lightness":0.4706,"saturation":0.5667,"hue_group":"red"},{"hex":"#ac5c34","weight":0.1875,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"},{"hex":"#c46c3c","weight":0.1445,"lightness":0.502,"saturation":0.5354,"hue_group":"red"},{"hex":"#8c442c","weight":0.1133,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"},{"hex":"#8c4c2c","weight":0.0938,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_planks.png","family":"acacia","relations":[{"type":"variants","target":"minecraft:acacia_door","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_door","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_leaves","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_leaves","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_log","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_log","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_planks","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_planks","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_sapling","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_sapling","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_slab","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_slab","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_stairs","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_stairs","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_wood","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_wood","label":"Related set: acacia","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:acacia_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_stairs","label":"Palette proche: Acacia Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_wall_sign","label":"Palette proche: Acacia Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_trapdoor","label":"Palette proche: Acacia Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.922},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.766},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.766},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.74},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.736},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_planks","label":"Couleurs analogues: Acacia Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_pressure_plate","label":"Couleurs analogues: Acacia Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_sign","label":"Couleurs analogues: Acacia Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_slab","label":"Couleurs analogues: Acacia Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_stairs","label":"Couleurs analogues: Acacia Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_sign","label":"Couleurs analogues: Acacia Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.958},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.905},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.903},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.9},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.877},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.954},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.879},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.868},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.865},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.865},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.865},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.865},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.858},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.913},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.895},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.895},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.882},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.864},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.771},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:acacia_fence_gate","name":"Acacia Fence Gate","entry_type":"block","description":"A fence gate is a block that shares the functions of both the door and the fence.","history":[{"version":"Pre-release","status":"added","notes":"Added fence gates."},{"version":"14w32b","status":"added","notes":"Added spruce, birch, jungle, acacia, and dark oak fence gates."},{"version":"18w49a","status":"added","notes":"added snowy tundra villages."}],"colors":{"primary":"#a85a32","dominant_hex":"#a25432","average_hex":"#a85a32","hue_group":"red","lightness":0.4275,"saturation":0.5413,"palette":["#a25432","#bc6434","#ac5c34","#c46c3c","#8c442c","#8c4c2c"],"color_groups":[{"hex":"#a25432","weight":0.2461,"lightness":0.4157,"saturation":0.5283,"hue_group":"red"},{"hex":"#bc6434","weight":0.2148,"lightness":0.4706,"saturation":0.5667,"hue_group":"red"},{"hex":"#ac5c34","weight":0.1875,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"},{"hex":"#c46c3c","weight":0.1445,"lightness":0.502,"saturation":0.5354,"hue_group":"red"},{"hex":"#8c442c","weight":0.1133,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"},{"hex":"#8c4c2c","weight":0.0938,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_planks.png","family":"acacia_fence_gate","relations":[{"type":"visual_neighbors","target":"minecraft:acacia_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_stairs","label":"Palette proche: Acacia Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_wall_sign","label":"Palette proche: Acacia Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_trapdoor","label":"Palette proche: Acacia Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.922},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.766},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.766},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.74},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.736},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_planks","label":"Couleurs analogues: Acacia Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_pressure_plate","label":"Couleurs analogues: Acacia Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_sign","label":"Couleurs analogues: Acacia Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_slab","label":"Couleurs analogues: Acacia Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_stairs","label":"Couleurs analogues: Acacia Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_sign","label":"Couleurs analogues: Acacia Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.958},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.905},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.903},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.9},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.877},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.954},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.879},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.868},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.865},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.865},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.865},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.865},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.858},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.913},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.895},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.895},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.882},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.864},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.771},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:acacia_hanging_sign","name":"Acacia Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#af5d3c","dominant_hex":"#b65c3c","average_hex":"#af5d3c","hue_group":"red","lightness":0.4608,"saturation":0.4894,"palette":["#b65c3c","#9e5c38","#ac5d3c","#b4643c","#bc643c","#c46444"],"color_groups":[{"hex":"#b65c3c","weight":0.2969,"lightness":0.4745,"saturation":0.5041,"hue_group":"red"},{"hex":"#9e5c38","weight":0.2539,"lightness":0.4196,"saturation":0.4766,"hue_group":"red"},{"hex":"#ac5d3c","weight":0.1719,"lightness":0.4549,"saturation":0.4828,"hue_group":"red"},{"hex":"#b4643c","weight":0.1211,"lightness":0.4706,"saturation":0.5,"hue_group":"red"},{"hex":"#bc643c","weight":0.0898,"lightness":0.4863,"saturation":0.5161,"hue_group":"red"},{"hex":"#c46444","weight":0.0664,"lightness":0.5176,"saturation":0.5203,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_acacia_log.png","family":"acacia_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_acacia_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_acacia_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_acacia_log","label":"Palette proche: Stripped Acacia Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_acacia_wood","label":"Palette proche: Stripped Acacia Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_door","label":"Palette proche: Acacia Door","confidence":0.929},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.922},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.789},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.789},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.786},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.782},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.78},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.78},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.78},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.78},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.78},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.78},{"type":"color_analogous","target":"minecraft:acacia_wall_hanging_sign","label":"Couleurs analogues: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_acacia_log","label":"Couleurs analogues: Stripped Acacia Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_acacia_wood","label":"Couleurs analogues: Stripped Acacia Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_bulb","label":"Couleurs analogues: Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_bulb","label":"Couleurs analogues: Waxed Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:decorated_pot","label":"Couleurs analogues: Decorated Pot","confidence":0.96},{"type":"color_analogous","target":"minecraft:terracotta","label":"Couleurs analogues: Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite","label":"Couleurs analogues: Granite","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.946},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.942},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.936},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.936},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.9},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.883},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.873},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.96},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.838},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.914},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.914},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.897},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.884},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.856},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:acacia_leaves","name":"Acacia Leaves","entry_type":"block","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","history":[{"version":"0.0.14a","status":"added","notes":"Added leaves."},{"version":"1.2","status":"added","notes":"Added spruce and birch leaves, which are colored #619961 and #80a755 respectively, and do not vary across biomes."},{"version":"1.7","status":"added","notes":"Added shears , which collect leaves. Before, leaves could be obtained only via inventory editing."}],"colors":{"primary":"#959595","dominant_hex":"#9c9c9c","average_hex":"#959595","hue_group":"neutral","lightness":0.5843,"saturation":0.0,"palette":["#9c9c9c","#b4b4b4","#8c8484","#6c6c6c","#848484"],"color_groups":[{"hex":"#9c9c9c","weight":0.2838,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.2703,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8484","weight":0.2365,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1824,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#848484","weight":0.027,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_leaves.png","family":"acacia","relations":[{"type":"variants","target":"minecraft:acacia_door","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_door","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_fence","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_fence","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_log","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_log","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_planks","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_planks","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_sapling","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_sapling","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_slab","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_slab","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_stairs","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_stairs","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_wood","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_wood","label":"Related set: acacia","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_leaves","label":"Palette proche: Mangrove Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pumpkin_stem","label":"Palette proche: Pumpkin Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:attached_melon_stem","label":"Palette proche: Attached Melon Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:vine","label":"Palette proche: Vine","confidence":0.94},{"type":"color_bridge","target":"minecraft:mangrove_leaves","label":"Pont de nuance par palette: Mangrove Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:pumpkin_stem","label":"Pont de nuance par palette: Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_melon_stem","label":"Pont de nuance par palette: Attached Melon Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:deepslate_tile_slab","label":"Contraste clair sombre: Deepslate Tile Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_stairs","label":"Contraste clair sombre: Deepslate Tile Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_wall","label":"Contraste clair sombre: Deepslate Tile Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tiles","label":"Contraste clair sombre: Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_deepslate_tiles","label":"Contraste clair sombre: Cracked Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55}],"category":"natural"},{"id":"minecraft:acacia_log","name":"Acacia Log","entry_type":"block","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","history":[{"version":"0.0.14a","status":"added","notes":"Added wood."},{"version":"1.2","status":"added","notes":"Added spruce and birch wood."},{"version":"wiki-history","status":"added","notes":"Added \"Getting Wood\" achievement for picking up a wood item ."}],"colors":{"primary":"#676157","dominant_hex":"#6c645c","average_hex":"#676157","hue_group":"neutral","lightness":0.3725,"saturation":0.0842,"palette":["#6c645c","#5c544c","#7c746c","#544c44","#8c8474"],"color_groups":[{"hex":"#6c645c","weight":0.4219,"lightness":0.3922,"saturation":0.08,"hue_group":"neutral"},{"hex":"#5c544c","weight":0.293,"lightness":0.3294,"saturation":0.0952,"hue_group":"neutral"},{"hex":"#7c746c","weight":0.1641,"lightness":0.4549,"saturation":0.069,"hue_group":"neutral"},{"hex":"#544c44","weight":0.0742,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#8c8474","weight":0.0469,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_log.png","family":"acacia","relations":[{"type":"variants","target":"minecraft:acacia_door","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_door","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_fence","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_fence","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_leaves","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_leaves","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_planks","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_planks","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_sapling","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_sapling","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_slab","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_slab","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_stairs","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_stairs","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_wood","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_wood","label":"Related set: acacia","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:acacia_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:peony","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lantern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_core","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frogspawn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_wood","label":"Palette proche: Acacia Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral","label":"Palette proche: Dead Brain Coral","confidence":0.922},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.914},{"type":"color_neighbors","target":"minecraft:dead_fire_coral","label":"Palette proche: Dead Fire Coral","confidence":0.911},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_block","label":"Palette proche: Dead Fire Coral Block","confidence":0.911},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.911},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.911},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.908},{"type":"color_neighbors","target":"minecraft:dead_tube_coral","label":"Palette proche: Dead Tube Coral","confidence":0.908},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.902},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.9},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.9},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral","label":"Pont de nuance par palette: Dead Brain Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral","label":"Pont de nuance par palette: Dead Fire Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_block","label":"Pont de nuance par palette: Dead Fire Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_wall_fan","label":"Pont de nuance par palette: Dead Horn Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral","label":"Pont de nuance par palette: Dead Tube Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_block","label":"Pont de nuance par palette: Dead Tube Coral Block","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.587},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.554},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55}],"category":"natural"},{"id":"minecraft:acacia_planks","name":"Acacia Planks","entry_type":"block","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","history":[{"version":"rd-20090515","status":"added","notes":"Added wooden planks."},{"version":"1.2.4 release","status":"added","notes":"Added spruce, birch and jungle wood planks. They are crafted from their corresponding wood . The color of wood planks available to this point is now obtainable only from oak wood."},{"version":"18w07a","status":"added","notes":"Added stripped logs, a variant of logs , which can be used to craft wood planks."}],"colors":{"primary":"#a85a32","dominant_hex":"#a25432","average_hex":"#a85a32","hue_group":"red","lightness":0.4275,"saturation":0.5413,"palette":["#a25432","#bc6434","#ac5c34","#c46c3c","#8c442c","#8c4c2c"],"color_groups":[{"hex":"#a25432","weight":0.2461,"lightness":0.4157,"saturation":0.5283,"hue_group":"red"},{"hex":"#bc6434","weight":0.2148,"lightness":0.4706,"saturation":0.5667,"hue_group":"red"},{"hex":"#ac5c34","weight":0.1875,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"},{"hex":"#c46c3c","weight":0.1445,"lightness":0.502,"saturation":0.5354,"hue_group":"red"},{"hex":"#8c442c","weight":0.1133,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"},{"hex":"#8c4c2c","weight":0.0938,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_planks.png","family":"acacia","relations":[{"type":"variants","target":"minecraft:acacia_door","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_door","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_fence","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_fence","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_leaves","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_leaves","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_log","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_log","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_sapling","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_sapling","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_slab","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_slab","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_stairs","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_stairs","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_wood","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_wood","label":"Related set: acacia","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:acacia_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_stairs","label":"Palette proche: Acacia Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_wall_sign","label":"Palette proche: Acacia Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_trapdoor","label":"Palette proche: Acacia Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.922},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.766},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.766},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.74},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.736},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_pressure_plate","label":"Couleurs analogues: Acacia Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_sign","label":"Couleurs analogues: Acacia Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_slab","label":"Couleurs analogues: Acacia Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_stairs","label":"Couleurs analogues: Acacia Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_sign","label":"Couleurs analogues: Acacia Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.958},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.905},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.903},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.9},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.877},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.954},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.879},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.868},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.865},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.865},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.865},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.865},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.858},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.913},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.895},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.895},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.882},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.864},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.771},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:acacia_pressure_plate","name":"Acacia Pressure Plate","entry_type":"block","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","history":[{"version":"v1.0.1","status":"added","notes":"Added wooden pressure plates."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped pressure plates."},{"version":"1.19 22w11a","status":"added","notes":"Added mangrove pressure plates."}],"colors":{"primary":"#a85a32","dominant_hex":"#a25432","average_hex":"#a85a32","hue_group":"red","lightness":0.4275,"saturation":0.5413,"palette":["#a25432","#bc6434","#ac5c34","#c46c3c","#8c442c","#8c4c2c"],"color_groups":[{"hex":"#a25432","weight":0.2461,"lightness":0.4157,"saturation":0.5283,"hue_group":"red"},{"hex":"#bc6434","weight":0.2148,"lightness":0.4706,"saturation":0.5667,"hue_group":"red"},{"hex":"#ac5c34","weight":0.1875,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"},{"hex":"#c46c3c","weight":0.1445,"lightness":0.502,"saturation":0.5354,"hue_group":"red"},{"hex":"#8c442c","weight":0.1133,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"},{"hex":"#8c4c2c","weight":0.0938,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_planks.png","family":"acacia_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:acacia_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_stairs","label":"Palette proche: Acacia Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_wall_sign","label":"Palette proche: Acacia Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_trapdoor","label":"Palette proche: Acacia Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.922},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.766},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.766},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.74},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.736},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_planks","label":"Couleurs analogues: Acacia Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_sign","label":"Couleurs analogues: Acacia Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_slab","label":"Couleurs analogues: Acacia Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_stairs","label":"Couleurs analogues: Acacia Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_sign","label":"Couleurs analogues: Acacia Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.958},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.905},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.903},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.9},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.877},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.954},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.879},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.868},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.865},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.865},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.865},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.865},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.858},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.913},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.895},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.895},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.882},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.864},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.771},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:acacia_sapling","name":"Acacia Sapling","entry_type":"block","description":"A sapling is a non-solid block that can be grown into a tree.","history":[{"version":"rd-161348","status":"added","notes":"Added saplings as the fifth placeable block in the game."},{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added tree growth."},{"version":"1.5","status":"added","notes":"Added spruce and birch saplings. Before, trees dropped only oak saplings, regardless of the tree."}],"colors":{"primary":"#777618","dominant_hex":"#7c5c14","average_hex":"#777618","hue_group":"yellow","lightness":0.2804,"saturation":0.6643,"palette":["#7c5c14","#647c14","#748c1c","#7c9c24","#8c6c1c","#6c4c0c"],"color_groups":[{"hex":"#7c5c14","weight":0.2072,"lightness":0.2824,"saturation":0.7222,"hue_group":"yellow"},{"hex":"#647c14","weight":0.1982,"lightness":0.2824,"saturation":0.7222,"hue_group":"yellow"},{"hex":"#748c1c","weight":0.1712,"lightness":0.3294,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#7c9c24","weight":0.1622,"lightness":0.3765,"saturation":0.625,"hue_group":"yellow"},{"hex":"#8c6c1c","weight":0.1351,"lightness":0.3294,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#6c4c0c","weight":0.1261,"lightness":0.2353,"saturation":0.8,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_sapling.png","family":"acacia","relations":[{"type":"variants","target":"minecraft:acacia_door","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_door","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_fence","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_fence","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_leaves","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_leaves","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_log","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_log","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_planks","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_planks","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_slab","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_slab","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_stairs","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_stairs","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_wood","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_wood","label":"Related set: acacia","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:potted_acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:podzol","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hay_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_acacia_sapling","label":"Palette proche: Potted Acacia Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_carpet","label":"Palette proche: Green Carpet","confidence":0.817},{"type":"color_neighbors","target":"minecraft:green_wool","label":"Palette proche: Green Wool","confidence":0.817},{"type":"color_neighbors","target":"minecraft:cave_vines_plant","label":"Palette proche: Cave Vines Plant","confidence":0.799},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.797},{"type":"color_neighbors","target":"minecraft:green_candle","label":"Palette proche: Green Candle","confidence":0.782},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.778},{"type":"color_neighbors","target":"minecraft:hay_block","label":"Palette proche: Hay Block","confidence":0.773},{"type":"color_neighbors","target":"minecraft:yellow_terracotta","label":"Palette proche: Yellow Terracotta","confidence":0.741},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.741},{"type":"color_neighbors","target":"minecraft:jungle_log","label":"Palette proche: Jungle Log","confidence":0.731},{"type":"color_neighbors","target":"minecraft:jungle_wood","label":"Palette proche: Jungle Wood","confidence":0.731},{"type":"color_bridge","target":"minecraft:copper_bulb","label":"Pont de nuance par palette: Copper Bulb","confidence":0.654},{"type":"color_bridge","target":"minecraft:waxed_copper_bulb","label":"Pont de nuance par palette: Waxed Copper Bulb","confidence":0.654},{"type":"color_bridge","target":"minecraft:seagrass","label":"Pont de nuance par palette: Seagrass","confidence":0.635},{"type":"color_bridge","target":"minecraft:tall_seagrass","label":"Pont de nuance par palette: Tall Seagrass","confidence":0.625},{"type":"color_bridge","target":"minecraft:acacia_shelf","label":"Pont de nuance par palette: Acacia Shelf","confidence":0.61},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.605},{"type":"color_bridge","target":"minecraft:sunflower","label":"Pont de nuance par palette: Sunflower","confidence":0.604},{"type":"color_bridge","target":"minecraft:item_frame","label":"Pont de nuance par palette: Item Frame","confidence":0.599},{"type":"color_bridge","target":"minecraft:acacia_trapdoor","label":"Pont de nuance par palette: Acacia Trapdoor","confidence":0.595},{"type":"color_bridge","target":"minecraft:acacia_button","label":"Pont de nuance par palette: Acacia Button","confidence":0.594},{"type":"color_analogous","target":"minecraft:potted_acacia_sapling","label":"Couleurs analogues: Potted Acacia Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sapling","label":"Couleurs analogues: Bamboo Sapling","confidence":0.937},{"type":"color_analogous","target":"minecraft:yellow_stained_glass_pane","label":"Couleurs analogues: Yellow Stained Glass Pane","confidence":0.936},{"type":"color_analogous","target":"minecraft:yellow_stained_glass","label":"Couleurs analogues: Yellow Stained Glass","confidence":0.932},{"type":"color_analogous","target":"minecraft:cocoa","label":"Couleurs analogues: Cocoa","confidence":0.928},{"type":"color_analogous","target":"minecraft:sponge","label":"Couleurs analogues: Sponge","confidence":0.92},{"type":"color_analogous","target":"minecraft:turtle_egg","label":"Couleurs analogues: Turtle Egg","confidence":0.868},{"type":"color_analogous","target":"minecraft:firefly_bush","label":"Couleurs analogues: Firefly Bush","confidence":0.861},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.934},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.927},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.927},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.839},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.637},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.616},{"type":"color_triad","target":"minecraft:cyan_candle","label":"Harmonie triadique: Cyan Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:snow","label":"Harmonie triadique: Snow","confidence":0.96},{"type":"color_triad","target":"minecraft:snow_block","label":"Harmonie triadique: Snow Block","confidence":0.96},{"type":"color_triad","target":"minecraft:powder_snow","label":"Harmonie triadique: Powder Snow","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_fan","label":"Harmonie triadique: Bubble Coral Fan","confidence":0.957},{"type":"color_triad","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie triadique: Bubble Coral Wall Fan","confidence":0.957},{"type":"color_triad","target":"minecraft:bubble_coral","label":"Harmonie triadique: Bubble Coral","confidence":0.953},{"type":"color_triad","target":"minecraft:warped_wart_block","label":"Harmonie triadique: Warped Wart Block","confidence":0.951},{"type":"color_square","target":"minecraft:cherry_log","label":"Harmonie carree: Cherry Log","confidence":0.941},{"type":"color_square","target":"minecraft:cherry_wood","label":"Harmonie carree: Cherry Wood","confidence":0.941},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.857},{"type":"color_square","target":"minecraft:oxidized_copper_lantern","label":"Harmonie carree: Oxidized Copper Lantern","confidence":0.841},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie carree: Waxed Oxidized Copper Lantern","confidence":0.841},{"type":"color_square","target":"minecraft:torchflower_crop","label":"Harmonie carree: Torchflower Crop","confidence":0.837},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.826},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.801},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.654},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.621},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.598},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.576},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.576},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.576},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.576},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.576}],"category":"natural"},{"id":"minecraft:acacia_shelf","name":"Acacia Shelf","entry_type":"block","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added shelves."},{"version":"wiki-history","status":"added","notes":"Added the align_items_to_bottom block state property, by default set to false, to display items at the bottom of the shelf rather than in the middle."}],"colors":{"primary":"#9c5636","dominant_hex":"#955c34","average_hex":"#9c5636","hue_group":"red","lightness":0.4118,"saturation":0.4857,"palette":["#955c34","#945434","#af5e3c","#c26342","#754025","#8c4c2c"],"color_groups":[{"hex":"#955c34","weight":0.2637,"lightness":0.3941,"saturation":0.4826,"hue_group":"red"},{"hex":"#945434","weight":0.2256,"lightness":0.3922,"saturation":0.48,"hue_group":"red"},{"hex":"#af5e3c","weight":0.2021,"lightness":0.4608,"saturation":0.4894,"hue_group":"red"},{"hex":"#c26342","weight":0.1348,"lightness":0.5098,"saturation":0.512,"hue_group":"red"},{"hex":"#754025","weight":0.1113,"lightness":0.302,"saturation":0.5195,"hue_group":"red"},{"hex":"#8c4c2c","weight":0.0625,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_shelf.png","family":"acacia_shelf","relations":[{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_acacia_log","label":"Palette proche: Stripped Acacia Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_acacia_wood","label":"Palette proche: Stripped Acacia Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_door","label":"Palette proche: Acacia Door","confidence":0.939},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.924},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.779},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.779},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.777},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.776},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.772},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.772},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.772},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.772},{"type":"color_analogous","target":"minecraft:copper_bulb","label":"Couleurs analogues: Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_bulb","label":"Couleurs analogues: Waxed Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_trapdoor","label":"Couleurs analogues: Acacia Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_door","label":"Couleurs analogues: Acacia Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_planks","label":"Couleurs analogues: Acacia Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.954},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.945},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.937},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.893},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.889},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.882},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.882},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.878},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.928},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.928},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.928},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.928},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.922},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.904},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.9},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.9},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.957},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.949},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.854},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.847},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.847},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.829},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.817},{"type":"value_contrast","target":"minecraft:cherry_trapdoor","label":"Contraste clair sombre: Cherry Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_sign","label":"Contraste clair sombre: Cherry Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_slab","label":"Contraste clair sombre: Cherry Slab","confidence":0.55}],"category":""},{"id":"minecraft:acacia_sign","name":"Acacia Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#a85a32","dominant_hex":"#a25432","average_hex":"#a85a32","hue_group":"red","lightness":0.4275,"saturation":0.5413,"palette":["#a25432","#bc6434","#ac5c34","#c46c3c","#8c442c","#8c4c2c"],"color_groups":[{"hex":"#a25432","weight":0.2461,"lightness":0.4157,"saturation":0.5283,"hue_group":"red"},{"hex":"#bc6434","weight":0.2148,"lightness":0.4706,"saturation":0.5667,"hue_group":"red"},{"hex":"#ac5c34","weight":0.1875,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"},{"hex":"#c46c3c","weight":0.1445,"lightness":0.502,"saturation":0.5354,"hue_group":"red"},{"hex":"#8c442c","weight":0.1133,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"},{"hex":"#8c4c2c","weight":0.0938,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_planks.png","family":"acacia_sign","relations":[{"type":"visual_neighbors","target":"minecraft:acacia_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_stairs","label":"Palette proche: Acacia Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_wall_sign","label":"Palette proche: Acacia Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_trapdoor","label":"Palette proche: Acacia Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.922},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.766},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.766},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.74},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.736},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_planks","label":"Couleurs analogues: Acacia Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_pressure_plate","label":"Couleurs analogues: Acacia Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_slab","label":"Couleurs analogues: Acacia Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_stairs","label":"Couleurs analogues: Acacia Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_sign","label":"Couleurs analogues: Acacia Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.958},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.905},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.903},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.9},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.877},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.954},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.879},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.868},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.865},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.865},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.865},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.865},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.858},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.913},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.895},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.895},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.882},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.864},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.771},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:acacia_slab","name":"Acacia Slab","entry_type":"block","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","history":[{"version":"1.7.2 1.7","status":"added","notes":"Added acacia and dark oak slabs."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped slabs."}],"colors":{"primary":"#a85a32","dominant_hex":"#a25432","average_hex":"#a85a32","hue_group":"red","lightness":0.4275,"saturation":0.5413,"palette":["#a25432","#bc6434","#ac5c34","#c46c3c","#8c442c","#8c4c2c"],"color_groups":[{"hex":"#a25432","weight":0.2461,"lightness":0.4157,"saturation":0.5283,"hue_group":"red"},{"hex":"#bc6434","weight":0.2148,"lightness":0.4706,"saturation":0.5667,"hue_group":"red"},{"hex":"#ac5c34","weight":0.1875,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"},{"hex":"#c46c3c","weight":0.1445,"lightness":0.502,"saturation":0.5354,"hue_group":"red"},{"hex":"#8c442c","weight":0.1133,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"},{"hex":"#8c4c2c","weight":0.0938,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_planks.png","family":"acacia","relations":[{"type":"variants","target":"minecraft:acacia_door","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_door","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_fence","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_fence","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_leaves","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_leaves","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_log","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_log","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_planks","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_planks","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_sapling","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_sapling","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_stairs","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_stairs","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_wood","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_wood","label":"Related set: acacia","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:acacia_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_stairs","label":"Palette proche: Acacia Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_wall_sign","label":"Palette proche: Acacia Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_trapdoor","label":"Palette proche: Acacia Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.922},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.766},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.766},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.74},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.736},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_planks","label":"Couleurs analogues: Acacia Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_pressure_plate","label":"Couleurs analogues: Acacia Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_sign","label":"Couleurs analogues: Acacia Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_stairs","label":"Couleurs analogues: Acacia Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_sign","label":"Couleurs analogues: Acacia Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.958},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.905},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.903},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.9},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.877},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.954},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.879},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.868},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.865},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.865},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.865},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.865},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.858},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.913},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.895},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.895},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.882},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.864},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.771},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:acacia_stairs","name":"Acacia Stairs","entry_type":"block","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","history":[{"version":"20100629","status":"added","notes":"Added \"wooden\" stairs."},{"version":"1.3.1 12w25a","status":"added","notes":"Added wooden stairs for the remaining three wood types (spruce, birch, and jungle)."},{"version":"12w26a","status":"added","notes":"Added crafting recipes for spruce, birch, and jungle wood stairs."}],"colors":{"primary":"#a85a32","dominant_hex":"#a25432","average_hex":"#a85a32","hue_group":"red","lightness":0.4275,"saturation":0.5413,"palette":["#a25432","#bc6434","#ac5c34","#c46c3c","#8c442c","#8c4c2c"],"color_groups":[{"hex":"#a25432","weight":0.2461,"lightness":0.4157,"saturation":0.5283,"hue_group":"red"},{"hex":"#bc6434","weight":0.2148,"lightness":0.4706,"saturation":0.5667,"hue_group":"red"},{"hex":"#ac5c34","weight":0.1875,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"},{"hex":"#c46c3c","weight":0.1445,"lightness":0.502,"saturation":0.5354,"hue_group":"red"},{"hex":"#8c442c","weight":0.1133,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"},{"hex":"#8c4c2c","weight":0.0938,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_planks.png","family":"acacia","relations":[{"type":"variants","target":"minecraft:acacia_door","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_door","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_fence","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_fence","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_leaves","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_leaves","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_log","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_log","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_planks","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_planks","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_sapling","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_sapling","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_slab","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_slab","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_wood","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_wood","label":"Related set: acacia","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:acacia_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_wall_sign","label":"Palette proche: Acacia Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_trapdoor","label":"Palette proche: Acacia Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.922},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.766},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.766},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.74},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.736},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_planks","label":"Couleurs analogues: Acacia Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_pressure_plate","label":"Couleurs analogues: Acacia Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_sign","label":"Couleurs analogues: Acacia Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_slab","label":"Couleurs analogues: Acacia Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_sign","label":"Couleurs analogues: Acacia Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.958},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.905},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.903},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.9},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.877},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.954},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.879},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.868},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.865},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.865},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.865},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.865},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.858},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.913},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.895},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.895},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.882},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.864},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.771},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:acacia_trapdoor","name":"Acacia Trapdoor","entry_type":"block","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","history":[{"version":"1.6","status":"added","notes":"Added wooden trapdoors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped trapdoors."}],"colors":{"primary":"#9d5733","dominant_hex":"#8c462c","average_hex":"#9d5733","hue_group":"red","lightness":0.4078,"saturation":0.5096,"palette":["#8c462c","#ac5c34","#bc6c3c","#cc7444","#9c542c","#595959"],"color_groups":[{"hex":"#8c462c","weight":0.4235,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"},{"hex":"#ac5c34","weight":0.1633,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"},{"hex":"#bc6c3c","weight":0.1531,"lightness":0.4863,"saturation":0.5161,"hue_group":"red"},{"hex":"#cc7444","weight":0.1276,"lightness":0.5333,"saturation":0.5714,"hue_group":"red"},{"hex":"#9c542c","weight":0.0714,"lightness":0.3922,"saturation":0.56,"hue_group":"red"},{"hex":"#595959","weight":0.0612,"lightness":0.349,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_trapdoor.png","family":"acacia_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_stairs","label":"Palette proche: Acacia Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_wall_sign","label":"Palette proche: Acacia Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.914},{"type":"color_neighbors","target":"minecraft:acacia_door","label":"Palette proche: Acacia Door","confidence":0.903},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.897},{"type":"color_bridge","target":"minecraft:stonecutter","label":"Pont de nuance par palette: Stonecutter","confidence":0.811},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.792},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.79},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.784},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.784},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.782},{"type":"color_bridge","target":"minecraft:damaged_anvil","label":"Pont de nuance par palette: Damaged Anvil","confidence":0.78},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.777},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.775},{"type":"color_bridge","target":"minecraft:dropper","label":"Pont de nuance par palette: Dropper","confidence":0.767},{"type":"color_analogous","target":"minecraft:acacia_shelf","label":"Couleurs analogues: Acacia Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_planks","label":"Couleurs analogues: Acacia Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_pressure_plate","label":"Couleurs analogues: Acacia Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_sign","label":"Couleurs analogues: Acacia Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_slab","label":"Couleurs analogues: Acacia Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.932},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.907},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.903},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.9},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.895},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.882},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.958},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.883},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.866},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.866},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.866},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.866},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.864},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.862},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.917},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.896},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.894},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.883},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.868},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.78},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.78},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.774},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_trapdoor","label":"Contraste clair sombre: Cherry Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_sign","label":"Contraste clair sombre: Cherry Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:acacia_wall_hanging_sign","name":"Acacia Wall Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#af5d3c","dominant_hex":"#b65c3c","average_hex":"#af5d3c","hue_group":"red","lightness":0.4608,"saturation":0.4894,"palette":["#b65c3c","#9e5c38","#ac5d3c","#b4643c","#bc643c","#c46444"],"color_groups":[{"hex":"#b65c3c","weight":0.2969,"lightness":0.4745,"saturation":0.5041,"hue_group":"red"},{"hex":"#9e5c38","weight":0.2539,"lightness":0.4196,"saturation":0.4766,"hue_group":"red"},{"hex":"#ac5d3c","weight":0.1719,"lightness":0.4549,"saturation":0.4828,"hue_group":"red"},{"hex":"#b4643c","weight":0.1211,"lightness":0.4706,"saturation":0.5,"hue_group":"red"},{"hex":"#bc643c","weight":0.0898,"lightness":0.4863,"saturation":0.5161,"hue_group":"red"},{"hex":"#c46444","weight":0.0664,"lightness":0.5176,"saturation":0.5203,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_acacia_log.png","family":"acacia_wall_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:acacia_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_acacia_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_acacia_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_acacia_log","label":"Palette proche: Stripped Acacia Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_acacia_wood","label":"Palette proche: Stripped Acacia Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_door","label":"Palette proche: Acacia Door","confidence":0.929},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.922},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.789},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.789},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.786},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.782},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.78},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.78},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.78},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.78},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.78},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.78},{"type":"color_analogous","target":"minecraft:acacia_hanging_sign","label":"Couleurs analogues: Acacia Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_acacia_log","label":"Couleurs analogues: Stripped Acacia Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_acacia_wood","label":"Couleurs analogues: Stripped Acacia Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_bulb","label":"Couleurs analogues: Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_bulb","label":"Couleurs analogues: Waxed Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:decorated_pot","label":"Couleurs analogues: Decorated Pot","confidence":0.96},{"type":"color_analogous","target":"minecraft:terracotta","label":"Couleurs analogues: Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite","label":"Couleurs analogues: Granite","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.946},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.942},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.936},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.936},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.9},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.883},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.873},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.96},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.838},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.914},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.914},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.897},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.884},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.856},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:acacia_wall_sign","name":"Acacia Wall Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#a85a32","dominant_hex":"#a25432","average_hex":"#a85a32","hue_group":"red","lightness":0.4275,"saturation":0.5413,"palette":["#a25432","#bc6434","#ac5c34","#c46c3c","#8c442c","#8c4c2c"],"color_groups":[{"hex":"#a25432","weight":0.2461,"lightness":0.4157,"saturation":0.5283,"hue_group":"red"},{"hex":"#bc6434","weight":0.2148,"lightness":0.4706,"saturation":0.5667,"hue_group":"red"},{"hex":"#ac5c34","weight":0.1875,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"},{"hex":"#c46c3c","weight":0.1445,"lightness":0.502,"saturation":0.5354,"hue_group":"red"},{"hex":"#8c442c","weight":0.1133,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"},{"hex":"#8c4c2c","weight":0.0938,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_planks.png","family":"acacia_wall_sign","relations":[{"type":"visual_neighbors","target":"minecraft:acacia_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_stairs","label":"Palette proche: Acacia Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_trapdoor","label":"Palette proche: Acacia Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.924},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.922},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.766},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.766},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.749},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.74},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.737},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.736},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_planks","label":"Couleurs analogues: Acacia Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_pressure_plate","label":"Couleurs analogues: Acacia Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_sign","label":"Couleurs analogues: Acacia Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_slab","label":"Couleurs analogues: Acacia Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_stairs","label":"Couleurs analogues: Acacia Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.958},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.905},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.903},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.9},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.877},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.954},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.879},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.868},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.865},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.865},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.865},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.865},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.858},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.913},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.895},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.895},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.882},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.864},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.779},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.771},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:acacia_wood","name":"Acacia Wood","entry_type":"block","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","history":[{"version":"1.3.1 12w30d","status":"added","notes":"Added six-sided wood blocks, which look similar to logs , but have the wood's \"bark\" texture (side texture when placed vertically) on all 6 sides."},{"version":"1.7.2 13w43a","status":"added","notes":"Added two new types of wood: acacia and dark oak."},{"version":"1","status":"added","notes":"Added top textures of the bark blocks."}],"colors":{"primary":"#676157","dominant_hex":"#6c645c","average_hex":"#676157","hue_group":"neutral","lightness":0.3725,"saturation":0.0842,"palette":["#6c645c","#5c544c","#7c746c","#544c44","#8c8474"],"color_groups":[{"hex":"#6c645c","weight":0.4219,"lightness":0.3922,"saturation":0.08,"hue_group":"neutral"},{"hex":"#5c544c","weight":0.293,"lightness":0.3294,"saturation":0.0952,"hue_group":"neutral"},{"hex":"#7c746c","weight":0.1641,"lightness":0.4549,"saturation":0.069,"hue_group":"neutral"},{"hex":"#544c44","weight":0.0742,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#8c8474","weight":0.0469,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_log.png","family":"acacia","relations":[{"type":"variants","target":"minecraft:acacia_door","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_door","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_fence","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_fence","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_leaves","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_leaves","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_log","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_log","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_planks","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_planks","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_sapling","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_sapling","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_slab","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_slab","label":"Related set: acacia","confidence":0.8},{"type":"variants","target":"minecraft:acacia_stairs","label":"Same family: acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:acacia_stairs","label":"Related set: acacia","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:acacia_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:peony","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lantern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_core","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frogspawn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_log","label":"Palette proche: Acacia Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral","label":"Palette proche: Dead Brain Coral","confidence":0.922},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.914},{"type":"color_neighbors","target":"minecraft:dead_fire_coral","label":"Palette proche: Dead Fire Coral","confidence":0.911},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_block","label":"Palette proche: Dead Fire Coral Block","confidence":0.911},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.911},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.911},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.908},{"type":"color_neighbors","target":"minecraft:dead_tube_coral","label":"Palette proche: Dead Tube Coral","confidence":0.908},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.902},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.9},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.9},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral","label":"Pont de nuance par palette: Dead Brain Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral","label":"Pont de nuance par palette: Dead Fire Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_block","label":"Pont de nuance par palette: Dead Fire Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_wall_fan","label":"Pont de nuance par palette: Dead Horn Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral","label":"Pont de nuance par palette: Dead Tube Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_block","label":"Pont de nuance par palette: Dead Tube Coral Block","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.587},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.554},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55}],"category":"building"},{"id":"minecraft:activator_rail","name":"Activator Rail","entry_type":"block","description":"An activator rail is a type of rail that, if powered, can eject entities from regular minecarts, lock hopper minecarts, ignite TNT minecarts, and activate the command in a command block minecart. If not powered, it can only unlock locked hopper minecarts.","history":[{"version":"1.5 13w02a","status":"added","notes":"Added activator rails."}],"colors":{"primary":"#73574a","dominant_hex":"#70736c","average_hex":"#73574a","hue_group":"red","lightness":0.3706,"saturation":0.2169,"palette":["#70736c","#a2a2a2","#5c0404","#594931","#9c7f4e","#340404"],"color_groups":[{"hex":"#70736c","weight":0.2051,"lightness":0.4373,"saturation":0.0314,"hue_group":"neutral"},{"hex":"#a2a2a2","weight":0.2051,"lightness":0.6353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c0404","weight":0.1923,"lightness":0.1882,"saturation":0.9167,"hue_group":"red"},{"hex":"#594931","weight":0.1538,"lightness":0.2706,"saturation":0.2899,"hue_group":"yellow"},{"hex":"#9c7f4e","weight":0.1538,"lightness":0.4588,"saturation":0.3333,"hue_group":"yellow"},{"hex":"#340404","weight":0.0897,"lightness":0.1098,"saturation":0.8571,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/activator_rail.png","family":"activator_rail","relations":[{"type":"visual_neighbors","target":"minecraft:purple_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewing_stand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_redstone_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanting_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pointed_dripstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:redstone_wall_torch","label":"Palette proche: Redstone Wall Torch","confidence":0.836},{"type":"color_neighbors","target":"minecraft:powered_rail","label":"Palette proche: Powered Rail","confidence":0.816},{"type":"color_neighbors","target":"minecraft:rail","label":"Palette proche: Rail","confidence":0.815},{"type":"color_neighbors","target":"minecraft:detector_rail","label":"Palette proche: Detector Rail","confidence":0.809},{"type":"color_neighbors","target":"minecraft:repeater","label":"Palette proche: Repeater","confidence":0.766},{"type":"color_neighbors","target":"minecraft:lever","label":"Palette proche: Lever","confidence":0.759},{"type":"color_neighbors","target":"minecraft:crafter","label":"Palette proche: Crafter","confidence":0.751},{"type":"color_neighbors","target":"minecraft:redstone_ore","label":"Palette proche: Redstone Ore","confidence":0.738},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.731},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.731},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.731},{"type":"color_neighbors","target":"minecraft:iron_bars","label":"Palette proche: Iron Bars","confidence":0.728},{"type":"color_bridge","target":"minecraft:redstone_wall_torch","label":"Pont de nuance par sous-ton: Redstone Wall Torch","confidence":0.865},{"type":"color_bridge","target":"minecraft:powered_rail","label":"Pont de nuance par sous-ton: Powered Rail","confidence":0.849},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par palette: Rail","confidence":0.847},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par palette: Detector Rail","confidence":0.842},{"type":"color_bridge","target":"minecraft:repeater","label":"Pont de nuance par palette: Repeater","confidence":0.807},{"type":"color_bridge","target":"minecraft:lever","label":"Pont de nuance par sous-ton: Lever","confidence":0.801},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par palette: Crafter","confidence":0.795},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par palette: Redstone Ore","confidence":0.784},{"type":"color_bridge","target":"minecraft:oak_trapdoor","label":"Pont de nuance par sous-ton: Oak Trapdoor","confidence":0.779},{"type":"color_bridge","target":"minecraft:barrel","label":"Pont de nuance par sous-ton: Barrel","confidence":0.778},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.588},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.554},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55}],"category":"redstone"},{"id":"minecraft:air","name":"Air","entry_type":"block","description":"Air is an invisible block used to define unoccupied space where other blocks and items could exist; it represents the absence of a block or an item. It is one of the few blocks in the game that players cannot normally interact with. Cave air\u200c[Java Edition only] is a variant found only underground in carver caves and some generated structures along with features like lava lakes. Void air\u200c[Java Edition only] is a variant used internally for the 'air' in unloaded chunks and outside of the world height limits (above Y=319 and below Y=-64 in the Overworld, and above Y=255 and below Y=0 in the Nether and the End dimensions).","history":[{"version":"Cave game tech test","status":"added","notes":"Added air, which is any space devoid of blocks."}],"colors":{"primary":"#20557c","dominant_hex":"#040404","average_hex":"#20557c","hue_group":"cyan","lightness":0.3059,"saturation":0.5897,"palette":["#040404","#0494fc","#54bcfc","#d4ecfc"],"color_groups":[{"hex":"#040404","weight":0.5128,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#0494fc","weight":0.2308,"lightness":0.502,"saturation":0.9764,"hue_group":"cyan"},{"hex":"#54bcfc","weight":0.1795,"lightness":0.6588,"saturation":0.9655,"hue_group":"cyan"},{"hex":"#d4ecfc","weight":0.0769,"lightness":0.9098,"saturation":0.8696,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/gui/sprites/hud/air.png","family":"air","relations":[{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:void_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:structure_void","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_crop","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cave_air","label":"Palette proche: Cave Air","confidence":0.94},{"type":"color_neighbors","target":"minecraft:void_air","label":"Palette proche: Void Air","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.58},{"type":"color_neighbors","target":"minecraft:deepslate_lapis_ore","label":"Palette proche: Deepslate Lapis Ore","confidence":0.58},{"type":"color_neighbors","target":"minecraft:lapis_ore","label":"Palette proche: Lapis Ore","confidence":0.58},{"type":"color_neighbors","target":"minecraft:diamond_ore","label":"Palette proche: Diamond Ore","confidence":0.58},{"type":"color_neighbors","target":"minecraft:heavy_core","label":"Palette proche: Heavy Core","confidence":0.58},{"type":"color_neighbors","target":"minecraft:deepslate_diamond_ore","label":"Palette proche: Deepslate Diamond Ore","confidence":0.58},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.58},{"type":"color_neighbors","target":"minecraft:jigsaw","label":"Palette proche: Jigsaw","confidence":0.58},{"type":"color_neighbors","target":"minecraft:reinforced_deepslate","label":"Palette proche: Reinforced Deepslate","confidence":0.58},{"type":"color_neighbors","target":"minecraft:structure_block","label":"Palette proche: Structure Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par sous-ton: Heavy Core","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:soul_torch","label":"Pont de nuance par sous-ton: Soul Torch","confidence":0.58},{"type":"color_bridge","target":"minecraft:soul_wall_torch","label":"Pont de nuance par sous-ton: Soul Wall Torch","confidence":0.58},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.58},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.58},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.58},{"type":"color_analogous","target":"minecraft:cave_air","label":"Couleurs analogues: Cave Air","confidence":0.96},{"type":"color_analogous","target":"minecraft:void_air","label":"Couleurs analogues: Void Air","confidence":0.96},{"type":"color_analogous","target":"minecraft:cornflower","label":"Couleurs analogues: Cornflower","confidence":0.924},{"type":"color_analogous","target":"minecraft:potted_cornflower","label":"Couleurs analogues: Potted Cornflower","confidence":0.924},{"type":"color_analogous","target":"minecraft:soul_lantern","label":"Couleurs analogues: Soul Lantern","confidence":0.919},{"type":"color_analogous","target":"minecraft:light_blue_concrete","label":"Couleurs analogues: Light Blue Concrete","confidence":0.911},{"type":"color_analogous","target":"minecraft:light_blue_candle","label":"Couleurs analogues: Light Blue Candle","confidence":0.891},{"type":"color_analogous","target":"minecraft:light_blue_glazed_terracotta","label":"Couleurs analogues: Light Blue Glazed Terracotta","confidence":0.891},{"type":"color_complement","target":"minecraft:brown_carpet","label":"Contraste complementaire: Brown Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_wool","label":"Contraste complementaire: Brown Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_shulker_box","label":"Contraste complementaire: Brown Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_concrete","label":"Contraste complementaire: Brown Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_concrete_powder","label":"Contraste complementaire: Brown Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:resin_clump","label":"Contraste complementaire: Resin Clump","confidence":0.96},{"type":"color_complement","target":"minecraft:jungle_button","label":"Contraste complementaire: Jungle Button","confidence":0.96},{"type":"color_complement","target":"minecraft:jungle_fence","label":"Contraste complementaire: Jungle Fence","confidence":0.96},{"type":"color_triad","target":"minecraft:lime_concrete_powder","label":"Harmonie triadique: Lime Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:lime_stained_glass_pane","label":"Harmonie triadique: Lime Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:lime_stained_glass","label":"Harmonie triadique: Lime Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.96},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.898},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.842},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.785},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.785},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.782},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.779},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.745},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.632},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.632},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.631},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.618},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.584},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.57},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.57},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.562}],"category":"technical"},{"id":"minecraft:allay","name":"Allay","entry_type":"mob","description":"An allay is a small flying passive mob that follows the player who has given it an item, or any note block instrument it has heard in the last 30 seconds. It searches for and collects dropped instances of its held item and drops them near the player or note block it is currently following.","history":[{"version":"1.19 22w13a","status":"added","notes":"Added allays."}],"colors":{"primary":"#3bc5ee","dominant_hex":"#29b0e8","average_hex":"#3bc5ee","hue_group":"cyan","lightness":0.5824,"saturation":0.8404,"palette":["#29b0e8","#23caf9","#55f2fc","#338ad5","#3ddff4","#a6fcfc"],"color_groups":[{"hex":"#29b0e8","weight":0.223,"lightness":0.5353,"saturation":0.8059,"hue_group":"cyan"},{"hex":"#23caf9","weight":0.2061,"lightness":0.5569,"saturation":0.9469,"hue_group":"cyan"},{"hex":"#55f2fc","weight":0.1993,"lightness":0.6608,"saturation":0.9653,"hue_group":"cyan"},{"hex":"#338ad5","weight":0.1959,"lightness":0.5176,"saturation":0.6585,"hue_group":"cyan"},{"hex":"#3ddff4","weight":0.1182,"lightness":0.598,"saturation":0.8927,"hue_group":"cyan"},{"hex":"#a6fcfc","weight":0.0574,"lightness":0.8196,"saturation":0.9348,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/allay/allay.png","family":"allay","relations":[{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_2","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_1","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_heart","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/yellow_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_bioluminescent_layer","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:allay_spawn_egg","name":"Allay Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#47b0d5","dominant_hex":"#3587b8","average_hex":"#47b0d5","hue_group":"cyan","lightness":0.5569,"saturation":0.6283,"palette":["#3587b8","#346c9c","#3ce4f4","#2fbcec","#aefcfc","#53e8f9"],"color_groups":[{"hex":"#3587b8","weight":0.2973,"lightness":0.4647,"saturation":0.5527,"hue_group":"cyan"},{"hex":"#346c9c","weight":0.1689,"lightness":0.4078,"saturation":0.5,"hue_group":"cyan"},{"hex":"#3ce4f4","weight":0.1486,"lightness":0.5961,"saturation":0.8932,"hue_group":"cyan"},{"hex":"#2fbcec","weight":0.1351,"lightness":0.5549,"saturation":0.8326,"hue_group":"cyan"},{"hex":"#aefcfc","weight":0.1351,"lightness":0.8353,"saturation":0.9286,"hue_group":"cyan"},{"hex":"#53e8f9","weight":0.1149,"lightness":0.651,"saturation":0.9326,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/allay_spawn_egg.png","family":"allay_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond_horse_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_nautilus_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_of_the_sea","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_helmet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_pearl","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:allium","name":"Allium","entry_type":"block","description":"An allium is a flower that can be crafted into magenta dye and suspicious stew.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added alliums."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell alliums."},{"version":"1.18","status":"added","notes":"Added meadows , in which alliums can generate."}],"colors":{"primary":"#9f89b8","dominant_hex":"#4a9728","average_hex":"#9f89b8","hue_group":"blue","lightness":0.6294,"saturation":0.2487,"palette":["#4a9728","#d4a4f4","#bc7cec","#a45ce4","#7c4ca4","#ecccfc"],"color_groups":[{"hex":"#4a9728","weight":0.2368,"lightness":0.3745,"saturation":0.5812,"hue_group":"green"},{"hex":"#d4a4f4","weight":0.2368,"lightness":0.8,"saturation":0.7843,"hue_group":"purple"},{"hex":"#bc7cec","weight":0.2105,"lightness":0.7059,"saturation":0.7467,"hue_group":"purple"},{"hex":"#a45ce4","weight":0.1316,"lightness":0.6275,"saturation":0.7158,"hue_group":"purple"},{"hex":"#7c4ca4","weight":0.1053,"lightness":0.4706,"saturation":0.3667,"hue_group":"purple"},{"hex":"#ecccfc","weight":0.0789,"lightness":0.8941,"saturation":0.8889,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/allium.png","family":"allium","relations":[{"type":"visual_neighbors","target":"minecraft:potted_allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeating_command_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:medium_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:budding_amethyst","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_cluster","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_allium","label":"Palette proche: Potted Allium","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lilac","label":"Palette proche: Lilac","confidence":0.736},{"type":"color_neighbors","target":"minecraft:large_amethyst_bud","label":"Palette proche: Large Amethyst Bud","confidence":0.649},{"type":"color_neighbors","target":"minecraft:medium_amethyst_bud","label":"Palette proche: Medium Amethyst Bud","confidence":0.645},{"type":"color_neighbors","target":"minecraft:peony","label":"Palette proche: Peony","confidence":0.638},{"type":"color_neighbors","target":"minecraft:budding_amethyst","label":"Palette proche: Budding Amethyst","confidence":0.632},{"type":"color_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Palette proche: Purple Glazed Terracotta","confidence":0.628},{"type":"color_neighbors","target":"minecraft:amethyst_cluster","label":"Palette proche: Amethyst Cluster","confidence":0.627},{"type":"color_neighbors","target":"minecraft:amethyst_block","label":"Palette proche: Amethyst Block","confidence":0.625},{"type":"color_neighbors","target":"minecraft:small_amethyst_bud","label":"Palette proche: Small Amethyst Bud","confidence":0.612},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.58},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.58},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.782},{"type":"color_bridge","target":"minecraft:peony","label":"Pont de nuance par sous-ton: Peony","confidence":0.702},{"type":"color_bridge","target":"minecraft:cornflower","label":"Pont de nuance par palette: Cornflower","confidence":0.618},{"type":"color_bridge","target":"minecraft:potted_cornflower","label":"Pont de nuance par palette: Potted Cornflower","confidence":0.618},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.58},{"type":"color_analogous","target":"minecraft:potted_allium","label":"Couleurs analogues: Potted Allium","confidence":0.96},{"type":"color_analogous","target":"minecraft:medium_amethyst_bud","label":"Couleurs analogues: Medium Amethyst Bud","confidence":0.96},{"type":"color_analogous","target":"minecraft:large_amethyst_bud","label":"Couleurs analogues: Large Amethyst Bud","confidence":0.96},{"type":"color_analogous","target":"minecraft:amethyst_cluster","label":"Couleurs analogues: Amethyst Cluster","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_portal","label":"Couleurs analogues: Nether Portal","confidence":0.892},{"type":"color_analogous","target":"minecraft:crying_obsidian","label":"Couleurs analogues: Crying Obsidian","confidence":0.891},{"type":"color_analogous","target":"minecraft:budding_amethyst","label":"Couleurs analogues: Budding Amethyst","confidence":0.888},{"type":"color_analogous","target":"minecraft:amethyst_block","label":"Couleurs analogues: Amethyst Block","confidence":0.879},{"type":"color_complement","target":"minecraft:azure_bluet","label":"Contraste complementaire: Azure Bluet","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_azure_bluet","label":"Contraste complementaire: Potted Azure Bluet","confidence":0.96},{"type":"color_complement","target":"minecraft:sugar_cane","label":"Contraste complementaire: Sugar Cane","confidence":0.96},{"type":"color_complement","target":"minecraft:cactus","label":"Contraste complementaire: Cactus","confidence":0.935},{"type":"color_complement","target":"minecraft:lime_carpet","label":"Contraste complementaire: Lime Carpet","confidence":0.932},{"type":"color_complement","target":"minecraft:lime_wool","label":"Contraste complementaire: Lime Wool","confidence":0.932},{"type":"color_complement","target":"minecraft:oak_sapling","label":"Contraste complementaire: Oak Sapling","confidence":0.923},{"type":"color_complement","target":"minecraft:potted_oak_sapling","label":"Contraste complementaire: Potted Oak Sapling","confidence":0.923},{"type":"color_triad","target":"minecraft:brown_mushroom_block","label":"Harmonie triadique: Brown Mushroom Block","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_quartz","label":"Harmonie triadique: Smooth Quartz","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_quartz_slab","label":"Harmonie triadique: Smooth Quartz Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_quartz_stairs","label":"Harmonie triadique: Smooth Quartz Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:glow_item_frame","label":"Harmonie triadique: Glow Item Frame","confidence":0.96},{"type":"color_triad","target":"minecraft:composter","label":"Harmonie triadique: Composter","confidence":0.96},{"type":"color_triad","target":"minecraft:redstone_wall_torch","label":"Harmonie triadique: Redstone Wall Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:orange_stained_glass_pane","label":"Harmonie triadique: Orange Stained Glass Pane","confidence":0.956},{"type":"color_square","target":"minecraft:stripped_warped_hyphae","label":"Harmonie carree: Stripped Warped Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_stem","label":"Harmonie carree: Stripped Warped Stem","confidence":0.96},{"type":"color_square","target":"minecraft:warped_hanging_sign","label":"Harmonie carree: Warped Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:warped_wall_hanging_sign","label":"Harmonie carree: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:nether_wart","label":"Harmonie carree: Nether Wart","confidence":0.958},{"type":"color_square","target":"minecraft:red_nether_brick_slab","label":"Harmonie carree: Red Nether Brick Slab","confidence":0.954},{"type":"color_square","target":"minecraft:red_nether_brick_stairs","label":"Harmonie carree: Red Nether Brick Stairs","confidence":0.954},{"type":"color_square","target":"minecraft:red_nether_brick_wall","label":"Harmonie carree: Red Nether Brick Wall","confidence":0.954},{"type":"value_contrast","target":"minecraft:warped_hyphae","label":"Contraste clair sombre: Warped Hyphae","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_stem","label":"Contraste clair sombre: Warped Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone","label":"Contraste clair sombre: Polished Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_button","label":"Contraste clair sombre: Polished Blackstone Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_pressure_plate","label":"Contraste clair sombre: Polished Blackstone Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_slab","label":"Contraste clair sombre: Polished Blackstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_stairs","label":"Contraste clair sombre: Polished Blackstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_wall","label":"Contraste clair sombre: Polished Blackstone Wall","confidence":0.55}],"category":""},{"id":"minecraft:amethyst_block","name":"Amethyst Block","entry_type":"block","description":"A block of amethyst, known internally as an amethyst block, is a block found in amethyst geodes or crafted from amethyst shards. It can be placed next to a sculk sensor to \"relay\" received vibrations to other sculk sensors.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added blocks of amethyst."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of amethyst, providing the football/regular effect to the mob."}],"colors":{"primary":"#8662bf","dominant_hex":"#7c5cb4","average_hex":"#8662bf","hue_group":"blue","lightness":0.5667,"saturation":0.4208,"palette":["#7c5cb4","#64449c","#8c6ccc","#a47cf4","#dda7ee","#5c3c9c"],"color_groups":[{"hex":"#7c5cb4","weight":0.293,"lightness":0.5333,"saturation":0.3697,"hue_group":"blue"},{"hex":"#64449c","weight":0.2266,"lightness":0.4392,"saturation":0.3929,"hue_group":"blue"},{"hex":"#8c6ccc","weight":0.1836,"lightness":0.6118,"saturation":0.4848,"hue_group":"blue"},{"hex":"#a47cf4","weight":0.125,"lightness":0.7216,"saturation":0.8451,"hue_group":"blue"},{"hex":"#dda7ee","weight":0.1016,"lightness":0.7941,"saturation":0.6762,"hue_group":"purple"},{"hex":"#5c3c9c","weight":0.0703,"lightness":0.4235,"saturation":0.4444,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/amethyst_block.png","family":"amethyst_block","relations":[{"type":"visual_neighbors","target":"minecraft:small_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:budding_amethyst","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:medium_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_cluster","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeating_command_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:budding_amethyst","label":"Palette proche: Budding Amethyst","confidence":0.94},{"type":"color_neighbors","target":"minecraft:small_amethyst_bud","label":"Palette proche: Small Amethyst Bud","confidence":0.94},{"type":"color_neighbors","target":"minecraft:medium_amethyst_bud","label":"Palette proche: Medium Amethyst Bud","confidence":0.9},{"type":"color_neighbors","target":"minecraft:amethyst_cluster","label":"Palette proche: Amethyst Cluster","confidence":0.899},{"type":"color_neighbors","target":"minecraft:large_amethyst_bud","label":"Palette proche: Large Amethyst Bud","confidence":0.87},{"type":"color_neighbors","target":"minecraft:repeating_command_block","label":"Palette proche: Repeating Command Block","confidence":0.767},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.745},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.727},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.69},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.683},{"type":"color_neighbors","target":"minecraft:purple_wool","label":"Palette proche: Purple Wool","confidence":0.683},{"type":"color_neighbors","target":"minecraft:blue_concrete_powder","label":"Palette proche: Blue Concrete Powder","confidence":0.672},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.718},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.674},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.662},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.662},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.662},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.652},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.635},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.606},{"type":"color_bridge","target":"minecraft:magenta_concrete_powder","label":"Pont de nuance par palette: Magenta Concrete Powder","confidence":0.603},{"type":"color_bridge","target":"minecraft:magenta_glazed_terracotta","label":"Pont de nuance par palette: Magenta Glazed Terracotta","confidence":0.596},{"type":"color_analogous","target":"minecraft:budding_amethyst","label":"Couleurs analogues: Budding Amethyst","confidence":0.96},{"type":"color_analogous","target":"minecraft:small_amethyst_bud","label":"Couleurs analogues: Small Amethyst Bud","confidence":0.956},{"type":"color_analogous","target":"minecraft:nether_portal","label":"Couleurs analogues: Nether Portal","confidence":0.919},{"type":"color_analogous","target":"minecraft:respawn_anchor","label":"Couleurs analogues: Respawn Anchor","confidence":0.898},{"type":"color_analogous","target":"minecraft:large_amethyst_bud","label":"Couleurs analogues: Large Amethyst Bud","confidence":0.894},{"type":"color_analogous","target":"minecraft:medium_amethyst_bud","label":"Couleurs analogues: Medium Amethyst Bud","confidence":0.885},{"type":"color_analogous","target":"minecraft:amethyst_cluster","label":"Couleurs analogues: Amethyst Cluster","confidence":0.882},{"type":"color_analogous","target":"minecraft:allium","label":"Couleurs analogues: Allium","confidence":0.879},{"type":"color_complement","target":"minecraft:oxeye_daisy","label":"Contraste complementaire: Oxeye Daisy","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_oxeye_daisy","label":"Contraste complementaire: Potted Oxeye Daisy","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_sapling","label":"Contraste complementaire: Birch Sapling","confidence":0.951},{"type":"color_complement","target":"minecraft:potted_birch_sapling","label":"Contraste complementaire: Potted Birch Sapling","confidence":0.951},{"type":"color_complement","target":"minecraft:potted_red_tulip","label":"Contraste complementaire: Potted Red Tulip","confidence":0.945},{"type":"color_complement","target":"minecraft:red_tulip","label":"Contraste complementaire: Red Tulip","confidence":0.945},{"type":"color_complement","target":"minecraft:bamboo","label":"Contraste complementaire: Bamboo","confidence":0.934},{"type":"color_complement","target":"minecraft:azalea_leaves","label":"Contraste complementaire: Azalea Leaves","confidence":0.927},{"type":"color_triad","target":"minecraft:command_block","label":"Harmonie triadique: Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:copper_lantern","label":"Harmonie triadique: Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_copper_lantern","label":"Harmonie triadique: Waxed Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:exposed_copper","label":"Harmonie triadique: Exposed Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:exposed_copper_chest","label":"Harmonie triadique: Exposed Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:exposed_copper_golem_statue","label":"Harmonie triadique: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_exposed_copper","label":"Harmonie triadique: Waxed Exposed Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_exposed_copper_chest","label":"Harmonie triadique: Waxed Exposed Copper Chest","confidence":0.96},{"type":"color_square","target":"minecraft:warped_trapdoor","label":"Harmonie carree: Warped Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:warped_button","label":"Harmonie carree: Warped Button","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence","label":"Harmonie carree: Warped Fence","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence_gate","label":"Harmonie carree: Warped Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_planks","label":"Harmonie carree: Warped Planks","confidence":0.96},{"type":"color_square","target":"minecraft:warped_pressure_plate","label":"Harmonie carree: Warped Pressure Plate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_sign","label":"Harmonie carree: Warped Sign","confidence":0.96},{"type":"color_square","target":"minecraft:warped_slab","label":"Harmonie carree: Warped Slab","confidence":0.96},{"type":"value_contrast","target":"minecraft:respawn_anchor","label":"Contraste clair sombre: Respawn Anchor","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.55},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.55},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:crying_obsidian","label":"Contraste clair sombre: Crying Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_slab","label":"Contraste clair sombre: Polished Blackstone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_stairs","label":"Contraste clair sombre: Polished Blackstone Brick Stairs","confidence":0.55}],"category":"resource"},{"id":"minecraft:amethyst_cluster","name":"Amethyst Cluster","entry_type":"block","description":"Amethyst buds are the first three stages of growth of amethyst clusters, which grow on budding amethyst. Amethyst clusters are the fourth and final growth stage of amethyst buds, which drop amethyst shards when mined.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added amethyst buds and amethyst clusters."}],"colors":{"primary":"#a47fcf","dominant_hex":"#cca4f4","average_hex":"#a47fcf","hue_group":"blue","lightness":0.6549,"saturation":0.4545,"palette":["#cca4f4","#7c5cb4","#8c6ccc","#64449c","#fcd7e0","#b48cf4"],"color_groups":[{"hex":"#cca4f4","weight":0.2571,"lightness":0.8,"saturation":0.7843,"hue_group":"purple"},{"hex":"#7c5cb4","weight":0.2357,"lightness":0.5333,"saturation":0.3697,"hue_group":"blue"},{"hex":"#8c6ccc","weight":0.1929,"lightness":0.6118,"saturation":0.4848,"hue_group":"blue"},{"hex":"#64449c","weight":0.1357,"lightness":0.4392,"saturation":0.3929,"hue_group":"blue"},{"hex":"#fcd7e0","weight":0.1214,"lightness":0.9157,"saturation":0.8605,"hue_group":"red"},{"hex":"#b48cf4","weight":0.0571,"lightness":0.7529,"saturation":0.8254,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/amethyst_cluster.png","family":"amethyst_cluster","relations":[{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:medium_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:budding_amethyst","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeating_command_block","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:medium_amethyst_bud","label":"Palette proche: Medium Amethyst Bud","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_amethyst_bud","label":"Palette proche: Large Amethyst Bud","confidence":0.94},{"type":"color_neighbors","target":"minecraft:small_amethyst_bud","label":"Palette proche: Small Amethyst Bud","confidence":0.922},{"type":"color_neighbors","target":"minecraft:amethyst_block","label":"Palette proche: Amethyst Block","confidence":0.899},{"type":"color_neighbors","target":"minecraft:budding_amethyst","label":"Palette proche: Budding Amethyst","confidence":0.889},{"type":"color_neighbors","target":"minecraft:repeating_command_block","label":"Palette proche: Repeating Command Block","confidence":0.696},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.649},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.635},{"type":"color_neighbors","target":"minecraft:allium","label":"Palette proche: Allium","confidence":0.627},{"type":"color_neighbors","target":"minecraft:potted_allium","label":"Palette proche: Potted Allium","confidence":0.627},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.598},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.595},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.636},{"type":"color_bridge","target":"minecraft:magenta_glazed_terracotta","label":"Pont de nuance par palette: Magenta Glazed Terracotta","confidence":0.619},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.616},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.616},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.616},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.607},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.603},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.58},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:structure_block","label":"Pont de nuance par sous-ton: Structure Block","confidence":0.58},{"type":"color_analogous","target":"minecraft:large_amethyst_bud","label":"Couleurs analogues: Large Amethyst Bud","confidence":0.96},{"type":"color_analogous","target":"minecraft:medium_amethyst_bud","label":"Couleurs analogues: Medium Amethyst Bud","confidence":0.96},{"type":"color_analogous","target":"minecraft:allium","label":"Couleurs analogues: Allium","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_allium","label":"Couleurs analogues: Potted Allium","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_portal","label":"Couleurs analogues: Nether Portal","confidence":0.895},{"type":"color_analogous","target":"minecraft:crying_obsidian","label":"Couleurs analogues: Crying Obsidian","confidence":0.893},{"type":"color_analogous","target":"minecraft:budding_amethyst","label":"Couleurs analogues: Budding Amethyst","confidence":0.891},{"type":"color_analogous","target":"minecraft:amethyst_block","label":"Couleurs analogues: Amethyst Block","confidence":0.882},{"type":"color_complement","target":"minecraft:azure_bluet","label":"Contraste complementaire: Azure Bluet","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_azure_bluet","label":"Contraste complementaire: Potted Azure Bluet","confidence":0.96},{"type":"color_complement","target":"minecraft:sugar_cane","label":"Contraste complementaire: Sugar Cane","confidence":0.96},{"type":"color_complement","target":"minecraft:lime_carpet","label":"Contraste complementaire: Lime Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:lime_wool","label":"Contraste complementaire: Lime Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:oak_sapling","label":"Contraste complementaire: Oak Sapling","confidence":0.953},{"type":"color_complement","target":"minecraft:potted_oak_sapling","label":"Contraste complementaire: Potted Oak Sapling","confidence":0.953},{"type":"color_complement","target":"minecraft:cactus","label":"Contraste complementaire: Cactus","confidence":0.945},{"type":"color_triad","target":"minecraft:orange_stained_glass_pane","label":"Harmonie triadique: Orange Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:orange_stained_glass","label":"Harmonie triadique: Orange Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:glow_item_frame","label":"Harmonie triadique: Glow Item Frame","confidence":0.96},{"type":"color_triad","target":"minecraft:composter","label":"Harmonie triadique: Composter","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_mushroom_block","label":"Harmonie triadique: Brown Mushroom Block","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_quartz","label":"Harmonie triadique: Smooth Quartz","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_quartz_slab","label":"Harmonie triadique: Smooth Quartz Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_quartz_stairs","label":"Harmonie triadique: Smooth Quartz Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_hyphae","label":"Harmonie carree: Stripped Warped Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_stem","label":"Harmonie carree: Stripped Warped Stem","confidence":0.96},{"type":"color_square","target":"minecraft:warped_hanging_sign","label":"Harmonie carree: Warped Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:warped_wall_hanging_sign","label":"Harmonie carree: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:nether_wart","label":"Harmonie carree: Nether Wart","confidence":0.96},{"type":"color_square","target":"minecraft:black_glazed_terracotta","label":"Harmonie carree: Black Glazed Terracotta","confidence":0.957},{"type":"color_square","target":"minecraft:red_nether_brick_slab","label":"Harmonie carree: Red Nether Brick Slab","confidence":0.957},{"type":"color_square","target":"minecraft:red_nether_brick_stairs","label":"Harmonie carree: Red Nether Brick Stairs","confidence":0.957},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.567},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.557},{"type":"value_contrast","target":"minecraft:respawn_anchor","label":"Contraste clair sombre: Respawn Anchor","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_basalt","label":"Contraste clair sombre: Smooth Basalt","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_hyphae","label":"Contraste clair sombre: Warped Hyphae","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_stem","label":"Contraste clair sombre: Warped Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:crying_obsidian","label":"Contraste clair sombre: Crying Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone","label":"Contraste clair sombre: Polished Blackstone","confidence":0.55}],"category":""},{"id":"minecraft:amethyst_shard","name":"Amethyst Shard","entry_type":"item","description":"An amethyst shard is a crystal obtained from mining a fully grown amethyst cluster in naturally spawning amethyst geodes. They can also be found in chests in ancient cities and trial chambers.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added amethyst shards."}],"colors":{"primary":"#9371c0","dominant_hex":"#6c4cac","average_hex":"#9371c0","hue_group":"blue","lightness":0.598,"saturation":0.3854,"palette":["#6c4cac","#543c8c","#8c6ccc","#fcd7e0","#b48cf4","#cca4f4"],"color_groups":[{"hex":"#6c4cac","weight":0.2697,"lightness":0.4863,"saturation":0.3871,"hue_group":"blue"},{"hex":"#543c8c","weight":0.2135,"lightness":0.3922,"saturation":0.4,"hue_group":"blue"},{"hex":"#8c6ccc","weight":0.1685,"lightness":0.6118,"saturation":0.4848,"hue_group":"blue"},{"hex":"#fcd7e0","weight":0.1461,"lightness":0.9157,"saturation":0.8605,"hue_group":"red"},{"hex":"#b48cf4","weight":0.1236,"lightness":0.7529,"saturation":0.8254,"hue_group":"blue"},{"hex":"#cca4f4","weight":0.0787,"lightness":0.8,"saturation":0.7843,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/amethyst_shard.png","family":"amethyst_shard","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:flow_armor_trim_smithing_template","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lingering_potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wind_charge","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_meal","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:ancient_debris","name":"Ancient Debris","entry_type":"block","description":"Ancient debris is a rare ore found in the Nether, and is the main source of netherite scraps, which can then be used to craft netherite ingots. Its high blast resistance makes it immune to normal explosions. In item form, it floats on lava and is completely immune to any form of fire.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added ancient debris."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb ancient debris, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#604038","dominant_hex":"#5c342c","average_hex":"#604038","hue_group":"red","lightness":0.298,"saturation":0.2632,"palette":["#5c342c","#644444","#4c2c24","#3e1c14","#7c645c","#94847c"],"color_groups":[{"hex":"#5c342c","weight":0.2773,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#644444","weight":0.2656,"lightness":0.3294,"saturation":0.1905,"hue_group":"red"},{"hex":"#4c2c24","weight":0.1562,"lightness":0.2196,"saturation":0.3571,"hue_group":"red"},{"hex":"#3e1c14","weight":0.125,"lightness":0.1608,"saturation":0.5122,"hue_group":"red"},{"hex":"#7c645c","weight":0.0898,"lightness":0.4235,"saturation":0.1481,"hue_group":"red"},{"hex":"#94847c","weight":0.0859,"lightness":0.5333,"saturation":0.1008,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/ancient_debris_side.png","family":"ancient_debris","relations":[{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pointed_dripstone","label":"Palette proche: Pointed Dripstone","confidence":0.856},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.851},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.851},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.851},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.851},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.851},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.851},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.851},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.851},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.851},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.851},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.851},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.881},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.877},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.866},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.861},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.856},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.843},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.843},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.836},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.826},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.826},{"type":"color_analogous","target":"minecraft:nether_gold_ore","label":"Couleurs analogues: Nether Gold Ore","confidence":0.96},{"type":"color_analogous","target":"minecraft:flower_pot","label":"Couleurs analogues: Flower Pot","confidence":0.956},{"type":"color_analogous","target":"minecraft:potted_bamboo","label":"Couleurs analogues: Potted Bamboo","confidence":0.956},{"type":"color_analogous","target":"minecraft:potted_cactus","label":"Couleurs analogues: Potted Cactus","confidence":0.956},{"type":"color_analogous","target":"minecraft:potted_mangrove_propagule","label":"Couleurs analogues: Potted Mangrove Propagule","confidence":0.956},{"type":"color_analogous","target":"minecraft:brick_slab","label":"Couleurs analogues: Brick Slab","confidence":0.94},{"type":"color_analogous","target":"minecraft:brick_stairs","label":"Couleurs analogues: Brick Stairs","confidence":0.94},{"type":"color_analogous","target":"minecraft:brick_wall","label":"Couleurs analogues: Brick Wall","confidence":0.94},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.904},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.886},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.861},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.858},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.849},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.83},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.83},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.82},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.816},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.792},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.792},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.792},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.792},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.771},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.645},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.927},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.909},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.909},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.898},{"type":"color_square","target":"minecraft:potted_spruce_sapling","label":"Harmonie carree: Potted Spruce Sapling","confidence":0.878},{"type":"color_square","target":"minecraft:spruce_sapling","label":"Harmonie carree: Spruce Sapling","confidence":0.878},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.872},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.869},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.657},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.623},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.612},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.612},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.612},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.612},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.601},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.569}],"category":""},{"id":"minecraft:andesite","name":"Andesite","entry_type":"block","description":"Andesite is a block of igneous rock, most often found in large pockets in the ground.","history":[{"version":"1.8 14w02a","status":"added","notes":"Added andesite."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb andesite, providing the football/regular effect to the mob."}],"colors":{"primary":"#888889","dominant_hex":"#8c8c8c","average_hex":"#888889","hue_group":"neutral","lightness":0.5353,"saturation":0.0042,"palette":["#8c8c8c","#7c7c7c","#9c9c9c","#747474","#acac9c","#6c6c6c"],"color_groups":[{"hex":"#8c8c8c","weight":0.3477,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.2148,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.1953,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1445,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acac9c","weight":0.0547,"lightness":0.6431,"saturation":0.0879,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.043,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/andesite.png","family":"andesite","relations":[{"type":"variants","target":"minecraft:andesite_slab","label":"Same family: andesite","confidence":0.75},{"type":"related_sets","target":"minecraft:andesite_slab","label":"Related set: andesite","confidence":0.8},{"type":"variants","target":"minecraft:andesite_stairs","label":"Same family: andesite","confidence":0.75},{"type":"related_sets","target":"minecraft:andesite_stairs","label":"Related set: andesite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_bars","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_pad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_stairs","label":"Pont de nuance par palette: Stone Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:tinted_glass","label":"Contraste clair sombre: Tinted Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55}],"category":""},{"id":"minecraft:andesite_slab","name":"Andesite Slab","entry_type":"block","description":"An andesite slab is a decorative slab variant of andesite that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added andesite slabs."}],"colors":{"primary":"#888889","dominant_hex":"#8c8c8c","average_hex":"#888889","hue_group":"neutral","lightness":0.5353,"saturation":0.0042,"palette":["#8c8c8c","#7c7c7c","#9c9c9c","#747474","#acac9c","#6c6c6c"],"color_groups":[{"hex":"#8c8c8c","weight":0.3477,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.2148,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.1953,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1445,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acac9c","weight":0.0547,"lightness":0.6431,"saturation":0.0879,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.043,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/andesite.png","family":"andesite","relations":[{"type":"variants","target":"minecraft:andesite","label":"Same family: andesite","confidence":0.75},{"type":"related_sets","target":"minecraft:andesite","label":"Related set: andesite","confidence":0.8},{"type":"variants","target":"minecraft:andesite_stairs","label":"Same family: andesite","confidence":0.75},{"type":"related_sets","target":"minecraft:andesite_stairs","label":"Related set: andesite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_bars","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_pad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_stairs","label":"Pont de nuance par palette: Stone Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:tinted_glass","label":"Contraste clair sombre: Tinted Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55}],"category":"building"},{"id":"minecraft:andesite_stairs","name":"Andesite Stairs","entry_type":"block","description":"Andesite stairs are a decorative stairs variant of andesite used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added andesite stairs."}],"colors":{"primary":"#888889","dominant_hex":"#8c8c8c","average_hex":"#888889","hue_group":"neutral","lightness":0.5353,"saturation":0.0042,"palette":["#8c8c8c","#7c7c7c","#9c9c9c","#747474","#acac9c","#6c6c6c"],"color_groups":[{"hex":"#8c8c8c","weight":0.3477,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.2148,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.1953,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1445,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acac9c","weight":0.0547,"lightness":0.6431,"saturation":0.0879,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.043,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/andesite.png","family":"andesite","relations":[{"type":"variants","target":"minecraft:andesite","label":"Same family: andesite","confidence":0.75},{"type":"related_sets","target":"minecraft:andesite","label":"Related set: andesite","confidence":0.8},{"type":"variants","target":"minecraft:andesite_slab","label":"Same family: andesite","confidence":0.75},{"type":"related_sets","target":"minecraft:andesite_slab","label":"Related set: andesite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_bars","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_pad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_stairs","label":"Pont de nuance par palette: Stone Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:tinted_glass","label":"Contraste clair sombre: Tinted Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55}],"category":"building"},{"id":"minecraft:andesite_wall","name":"Andesite Wall","entry_type":"block","description":"An andesite wall is a decorative wall variant of andesite that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added andesite walls."}],"colors":{"primary":"#888889","dominant_hex":"#8c8c8c","average_hex":"#888889","hue_group":"neutral","lightness":0.5353,"saturation":0.0042,"palette":["#8c8c8c","#7c7c7c","#9c9c9c","#747474","#acac9c","#6c6c6c"],"color_groups":[{"hex":"#8c8c8c","weight":0.3477,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.2148,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.1953,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1445,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acac9c","weight":0.0547,"lightness":0.6431,"saturation":0.0879,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.043,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/andesite.png","family":"andesite_wall","relations":[{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_bars","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_pad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_stairs","label":"Pont de nuance par palette: Stone Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:tinted_glass","label":"Contraste clair sombre: Tinted Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55}],"category":"building"},{"id":"minecraft:angler_pottery_sherd","name":"Angler Pottery Sherd","entry_type":"item","description":"An angler pottery sherd is a pottery sherd that depicts a fishing rod. It can be found in warm ocean ruins.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added angler pottery shards."}],"colors":{"primary":"#6e3e32","dominant_hex":"#734334","average_hex":"#6e3e32","hue_group":"red","lightness":0.3137,"saturation":0.375,"palette":["#734334","#5c342c","#844c3c","#9a5a4a","#44241c","#542c24"],"color_groups":[{"hex":"#734334","weight":0.2038,"lightness":0.3275,"saturation":0.3772,"hue_group":"red"},{"hex":"#5c342c","weight":0.1847,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#844c3c","weight":0.1847,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.1592,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"},{"hex":"#44241c","weight":0.1465,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#542c24","weight":0.121,"lightness":0.2353,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/angler_pottery_sherd.png","family":"angler_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:burn_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blade_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:anvil","name":"Anvil","entry_type":"block","description":"An anvil is a gravity-affected utility block used to rename items, combine enchantments and repair items without losing the enchantments. An anvil has limited durability, and as it is used or dropped too far, gradually becomes a chipped anvil, then a damaged anvil, then breaks and vanishes.","history":[{"version":"1.4.2 12w41a","status":"added","notes":"Added anvils. All anvil damage levels are available in the Creative inventory."},{"version":"1.4","status":"added","notes":"Added new sounds for the anvil."}],"colors":{"primary":"#454545","dominant_hex":"#3c3c3c","average_hex":"#454545","hue_group":"neutral","lightness":0.2706,"saturation":0.0,"palette":["#3c3c3c","#444444","#4c4c4c","#545454","#5c5c5c"],"color_groups":[{"hex":"#3c3c3c","weight":0.3828,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.2266,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1953,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1484,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0469,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/anvil.png","family":"anvil","relations":[{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Palette proche: Gray Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_stained_glass","label":"Palette proche: Gray Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:damaged_anvil","label":"Pont de nuance par palette: Damaged Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_stained_glass_pane","label":"Pont de nuance par palette: Gray Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_stained_glass","label":"Pont de nuance par palette: Gray Stained Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.692},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.659},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.636},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.632},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.631},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.631},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.631},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.631}],"category":"utility"},{"id":"minecraft:apple","name":"Apple","entry_type":"item","description":"Apples are food items that can be eaten by the player or crafted into golden apples.","history":[{"version":"0.31 20091231-2147","status":"added","notes":"Added apples."},{"version":"20100327","status":"added","notes":"added to multiplayer."},{"version":"1.7.2 13w43a","status":"added","notes":"Added dark oak leaves, which drop apples."}],"colors":{"primary":"#b01d1f","dominant_hex":"#b4141c","average_hex":"#b01d1f","hue_group":"red","lightness":0.402,"saturation":0.7171,"palette":["#b4141c","#ea1828","#742c04","#54120c","#9c1414","#fc818c"],"color_groups":[{"hex":"#b4141c","weight":0.2895,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#ea1828","weight":0.2719,"lightness":0.5059,"saturation":0.8333,"hue_group":"red"},{"hex":"#742c04","weight":0.1579,"lightness":0.2353,"saturation":0.9333,"hue_group":"red"},{"hex":"#54120c","weight":0.114,"lightness":0.1882,"saturation":0.75,"hue_group":"red"},{"hex":"#9c1414","weight":0.114,"lightness":0.3451,"saturation":0.7727,"hue_group":"red"},{"hex":"#fc818c","weight":0.0526,"lightness":0.7471,"saturation":0.9535,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/apple.png","family":"apple","relations":[{"type":"related_sets","target":"group:food","label":"Related set: food","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:orange_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:saddle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fermented_spider_eye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_stew","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_eye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rotten_flesh","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_soup","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beef","label":"Shared hue group: red","confidence":0.55}],"category":"food"},{"id":"minecraft:archer_pottery_sherd","name":"Archer Pottery Sherd","entry_type":"item","description":"An archer pottery sherd is a pottery sherd that depicts a bow. It can be found in desert pyramids.","history":[{"version":"1.19.4","status":"added","notes":"Added archer pottery shards behind the Update 1.20 experimental datapack ."}],"colors":{"primary":"#6b3c31","dominant_hex":"#5c342c","average_hex":"#6b3c31","hue_group":"red","lightness":0.3059,"saturation":0.3718,"palette":["#5c342c","#44241c","#734334","#844c3c","#9a5a4a","#542c24"],"color_groups":[{"hex":"#5c342c","weight":0.1975,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#44241c","weight":0.1847,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#734334","weight":0.1847,"lightness":0.3275,"saturation":0.3772,"hue_group":"red"},{"hex":"#844c3c","weight":0.1529,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.1465,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"},{"hex":"#542c24","weight":0.1338,"lightness":0.2353,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/archer_pottery_sherd.png","family":"archer_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:armadillo","name":"Armadillo","entry_type":"mob","description":"An armadillo is a passive mob found in badlands and savannas. It rolls up in response to being hurt or being near undead mobs or players that are sprinting or mounted. While in this state, it takes less damage. It also repels spiders and cave spiders. It is the only source of armadillo scutes, which the armadillo sheds over time, as well as when it is brushed.","history":[{"version":"1.20.5 23w51a","status":"added","notes":"Added armadillos."},{"version":"wiki-history","status":"added","notes":"Added new sounds for when an armadillo is damaged while rolled up."},{"version":"24w06a","status":"added","notes":"Added an animation for armadillos peeking out of their shell."}],"colors":{"primary":"#985e5b","dominant_hex":"#b17870","average_hex":"#985e5b","hue_group":"red","lightness":0.4765,"saturation":0.251,"palette":["#b17870","#89514e","#ce8e7e","#5c2c34","#743c3c","#a56464"],"color_groups":[{"hex":"#b17870","weight":0.2665,"lightness":0.5667,"saturation":0.2941,"hue_group":"red"},{"hex":"#89514e","weight":0.2335,"lightness":0.4216,"saturation":0.2744,"hue_group":"red"},{"hex":"#ce8e7e","weight":0.1582,"lightness":0.651,"saturation":0.4494,"hue_group":"red"},{"hex":"#5c2c34","weight":0.135,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#743c3c","weight":0.113,"lightness":0.3451,"saturation":0.3182,"hue_group":"red"},{"hex":"#a56464","weight":0.0939,"lightness":0.5196,"saturation":0.2653,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/armadillo.png","family":"armadillo","relations":[{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:armadillo_scute","name":"Armadillo Scute","entry_type":"item","description":"Armadillo scutes are items dropped by armadillos and can also be obtained by using a brush. They can be used to craft wolf armor, which can be equipped on wolves to provide more protection.","history":[{"version":"1.20.5 23w51a","status":"added","notes":"Added armadillo scutes."}],"colors":{"primary":"#985e5c","dominant_hex":"#9e615e","average_hex":"#985e5c","hue_group":"red","lightness":0.4784,"saturation":0.2459,"palette":["#9e615e","#b47c74","#844c4c","#c48c84","#5c2c34","#743c3c"],"color_groups":[{"hex":"#9e615e","weight":0.2833,"lightness":0.4941,"saturation":0.254,"hue_group":"red"},{"hex":"#b47c74","weight":0.2167,"lightness":0.5804,"saturation":0.2991,"hue_group":"red"},{"hex":"#844c4c","weight":0.15,"lightness":0.4078,"saturation":0.2692,"hue_group":"red"},{"hex":"#c48c84","weight":0.1333,"lightness":0.6431,"saturation":0.3516,"hue_group":"red"},{"hex":"#5c2c34","weight":0.1167,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#743c3c","weight":0.1,"lightness":0.3451,"saturation":0.3182,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/armadillo_scute.png","family":"armadillo_scute","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cherry_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brush","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_shell","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_harness","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:armadillo_spawn_egg","name":"Armadillo Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#845352","dominant_hex":"#7d4c50","average_hex":"#845352","hue_group":"red","lightness":0.4196,"saturation":0.2336,"palette":["#7d4c50","#523333","#b16f6c","#966262","#6b3c3c","#d28778"],"color_groups":[{"hex":"#7d4c50","weight":0.2581,"lightness":0.3941,"saturation":0.2438,"hue_group":"red"},{"hex":"#523333","weight":0.2258,"lightness":0.2608,"saturation":0.2331,"hue_group":"red"},{"hex":"#b16f6c","weight":0.1694,"lightness":0.5588,"saturation":0.3067,"hue_group":"red"},{"hex":"#966262","weight":0.1613,"lightness":0.4863,"saturation":0.2097,"hue_group":"red"},{"hex":"#6b3c3c","weight":0.1129,"lightness":0.3275,"saturation":0.2814,"hue_group":"red"},{"hex":"#d28778","weight":0.0726,"lightness":0.6471,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/armadillo_spawn_egg.png","family":"armadillo_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:wolf_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_scute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:writable_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_relic","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_harness","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:armor_stand","name":"Armor Stand","entry_type":"item","description":"An armor stand is an inanimate mob-like entity that can wear armor. In Bedrock Edition, armor stands can also hold items and be posed without the use of commands.","history":[{"version":"1.8 14w32a","status":"added","notes":"Added armor stands."},{"version":"14w33a","status":"added","notes":"added for the armor stand."}],"colors":{"primary":"#725d3d","dominant_hex":"#3c341c","average_hex":"#725d3d","hue_group":"yellow","lightness":0.3431,"saturation":0.3029,"palette":["#3c341c","#5c4c2c","#a48454","#b4945c","#8c7444","#acacac"],"color_groups":[{"hex":"#3c341c","weight":0.3,"lightness":0.1725,"saturation":0.3636,"hue_group":"yellow"},{"hex":"#5c4c2c","weight":0.2778,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"},{"hex":"#a48454","weight":0.1222,"lightness":0.4863,"saturation":0.3226,"hue_group":"yellow"},{"hex":"#b4945c","weight":0.1222,"lightness":0.5333,"saturation":0.3697,"hue_group":"yellow"},{"hex":"#8c7444","weight":0.1,"lightness":0.4078,"saturation":0.3462,"hue_group":"yellow"},{"hex":"#acacac","weight":0.0778,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/armor_stand.png","family":"armor_stand","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:lime_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_hide","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:arms_up_pottery_sherd","name":"Arms Up Pottery Sherd","entry_type":"item","description":"An arms up pottery sherd is a pottery sherd that depicts a humanoid figure raising their arms. It can be found in desert wells.","history":[{"version":"1.19.4","status":"added","notes":"Added arms up pottery shards behind the Update 1.20 experimental datapack ."}],"colors":{"primary":"#6b3c31","dominant_hex":"#5c342c","average_hex":"#6b3c31","hue_group":"red","lightness":0.3059,"saturation":0.3718,"palette":["#5c342c","#734334","#844c3c","#44241c","#542c24","#9a5a4a"],"color_groups":[{"hex":"#5c342c","weight":0.2293,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#734334","weight":0.2166,"lightness":0.3275,"saturation":0.3772,"hue_group":"red"},{"hex":"#844c3c","weight":0.1529,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#44241c","weight":0.1401,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#542c24","weight":0.1401,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.121,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/arms_up_pottery_sherd.png","family":"arms_up_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:arrow","name":"Arrow","entry_type":"item","description":"An arrow serves as ammunition for bows, crossbows, and dispensers. Arrows can be crafted into spectral arrows\u200c[Java Edition only] and tipped arrows to give status effects to players and mobs.","history":[{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"added as an object and are fired by pressing \u21b9 Tab ."},{"version":"0.31 20100122-2251","status":"added","notes":"added as items alongside with bows ."},{"version":"12w22a","status":"added","notes":"added jungle temples ."}],"colors":{"primary":"#7c7364","dominant_hex":"#dedede","average_hex":"#7c7364","hue_group":"neutral","lightness":0.4392,"saturation":0.1071,"palette":["#dedede","#2c1c0c","#8c6424","#444444","#3c3c3c","#949494"],"color_groups":[{"hex":"#dedede","weight":0.2632,"lightness":0.8706,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c1c0c","weight":0.1842,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#8c6424","weight":0.1842,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"},{"hex":"#444444","weight":0.1579,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c3c","weight":0.1053,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1053,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/arrow.png","family":"arrow","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wild_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stray_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coast_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_axe","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clay_ball","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trident","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:attached_melon_stem","name":"Attached Melon Stem","entry_type":"block","description":"Melon seeds are items obtained from melon slices that can be used to grow melon stems. Melon stems are plants grown on farmland that, over time, grow melons on dirt, mud and moss blocks adjacent to them.","history":[{"version":"1.8","status":"added","notes":"Added melon seeds."},{"version":"wiki-history","status":"added","notes":"Added the melon stem, with seven stages of growth."},{"version":"15w44a","status":"added","notes":"added to dungeon chests."}],"colors":{"primary":"#8e8e8e","dominant_hex":"#8c8c8c","average_hex":"#8e8e8e","hue_group":"neutral","lightness":0.5569,"saturation":0.0,"palette":["#8c8c8c","#646464","#c4c4c4","#b4b4b4"],"color_groups":[{"hex":"#8c8c8c","weight":0.4545,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#646464","weight":0.2727,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.1515,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.1212,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/attached_melon_stem.png","family":"attached_melon_stem","relations":[{"type":"visual_neighbors","target":"minecraft:oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_bars","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pumpkin_stem","label":"Palette proche: Pumpkin Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Palette proche: Attached Pumpkin Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:melon_stem","label":"Palette proche: Melon Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_bridge","target":"minecraft:pumpkin_stem","label":"Pont de nuance par palette: Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_pumpkin_stem","label":"Pont de nuance par palette: Attached Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:melon_stem","label":"Pont de nuance par palette: Melon Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55}],"category":"natural"},{"id":"minecraft:attached_pumpkin_stem","name":"Attached Pumpkin Stem","entry_type":"block","description":"Pumpkin seeds are items obtained from pumpkins that can be used to grow pumpkin stems. Pumpkin stems are plants grown on farmland that, over time, grow pumpkins on dirt, mud and moss blocks adjacent to them.","history":[{"version":"1.8","status":"added","notes":"Added pumpkin seeds."},{"version":"wiki-history","status":"added","notes":"Added the pumpkin stem, with seven stages of growth."},{"version":"15w44a","status":"added","notes":"added to dungeon chests."}],"colors":{"primary":"#8b8b8b","dominant_hex":"#8b8b8b","average_hex":"#8b8b8b","hue_group":"neutral","lightness":0.5451,"saturation":0.0,"palette":["#8b8b8b","#525252","#c9c9c9","#787878","#b4b4b4","#949494"],"color_groups":[{"hex":"#8b8b8b","weight":0.3333,"lightness":0.5451,"saturation":0.0,"hue_group":"neutral"},{"hex":"#525252","weight":0.2121,"lightness":0.3216,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c9c9c9","weight":0.1515,"lightness":0.7882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#787878","weight":0.1212,"lightness":0.4706,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.1212,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.0606,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/attached_pumpkin_stem.png","family":"attached_pumpkin_stem","relations":[{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_bars","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_pad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:melon_stem","label":"Palette proche: Melon Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pumpkin_stem","label":"Palette proche: Pumpkin Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:attached_melon_stem","label":"Palette proche: Attached Melon Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_leaves","label":"Palette proche: Mangrove Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:vine","label":"Palette proche: Vine","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_bridge","target":"minecraft:melon_stem","label":"Pont de nuance par palette: Melon Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:pumpkin_stem","label":"Pont de nuance par palette: Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_melon_stem","label":"Pont de nuance par palette: Attached Melon Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:mangrove_leaves","label":"Pont de nuance par palette: Mangrove Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:vine","label":"Pont de nuance par palette: Vine","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55}],"category":"natural"},{"id":"minecraft:axolotl/blue","name":"Axolotl / Blue","entry_type":"mob","description":"An axolotl is a passive aquatic mob found in lush caves that hunts most other aquatic mobs, and can assist players with aquatic combat and grant them Regeneration. They can also be carried around in a bucket.","history":[{"version":"1.17 20w51a","status":"added","notes":"Added axolotls."},{"version":"wiki-history","status":"added","notes":"Added Golden Dandelions , which can be used to prevent baby axolotls from growing up."}],"colors":{"primary":"#9994ed","dominant_hex":"#abb3fc","average_hex":"#9994ed","hue_group":"blue","lightness":0.7549,"saturation":0.712,"palette":["#abb3fc","#a49cfc","#6963e1","#8292f2","#b4b4fc","#c6723a"],"color_groups":[{"hex":"#abb3fc","weight":0.3003,"lightness":0.8294,"saturation":0.931,"hue_group":"blue"},{"hex":"#a49cfc","weight":0.2241,"lightness":0.8,"saturation":0.9412,"hue_group":"blue"},{"hex":"#6963e1","weight":0.221,"lightness":0.6353,"saturation":0.6774,"hue_group":"blue"},{"hex":"#8292f2","weight":0.1265,"lightness":0.7294,"saturation":0.8116,"hue_group":"blue"},{"hex":"#b4b4fc","weight":0.0793,"lightness":0.8471,"saturation":0.9231,"hue_group":"blue"},{"hex":"#c6723a","weight":0.0488,"lightness":0.502,"saturation":0.5512,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/axolotl/axolotl_blue.png","family":"axolotl","relations":[{"type":"variants","target":"minecraft:axolotl/cyan","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/cyan","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/gold","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/gold","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/lucy","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/lucy","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/wild","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/wild","label":"Related set: axolotl","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:axolotl/cyan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_wind","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_invulnerable","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/all_black","label":"Shared hue group: blue","confidence":0.55}],"category":"mob"},{"id":"minecraft:axolotl/cyan","name":"Axolotl / Cyan","entry_type":"mob","description":"An axolotl is a passive aquatic mob found in lush caves that hunts most other aquatic mobs, and can assist players with aquatic combat and grant them Regeneration. They can also be carried around in a bucket.","history":[{"version":"1.17 20w51a","status":"added","notes":"Added axolotls."},{"version":"wiki-history","status":"added","notes":"Added Golden Dandelions , which can be used to prevent baby axolotls from growing up."}],"colors":{"primary":"#bacaee","dominant_hex":"#e4ecfc","average_hex":"#bacaee","hue_group":"blue","lightness":0.8314,"saturation":0.6047,"palette":["#e4ecfc","#8dbaf2","#b4d4fc","#d4e3fa","#ca6198","#65acd9"],"color_groups":[{"hex":"#e4ecfc","weight":0.3095,"lightness":0.9412,"saturation":0.8,"hue_group":"blue"},{"hex":"#8dbaf2","weight":0.1936,"lightness":0.751,"saturation":0.7953,"hue_group":"blue"},{"hex":"#b4d4fc","weight":0.1677,"lightness":0.8471,"saturation":0.9231,"hue_group":"blue"},{"hex":"#d4e3fa","weight":0.1372,"lightness":0.9059,"saturation":0.7917,"hue_group":"blue"},{"hex":"#ca6198","weight":0.0976,"lightness":0.5863,"saturation":0.4976,"hue_group":"purple"},{"hex":"#65acd9","weight":0.0945,"lightness":0.6235,"saturation":0.6042,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/axolotl/axolotl_cyan.png","family":"axolotl","relations":[{"type":"variants","target":"minecraft:axolotl/blue","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/blue","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/gold","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/gold","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/lucy","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/lucy","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/wild","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/wild","label":"Related set: axolotl","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:parrot/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_wind","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_invulnerable","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/all_black","label":"Shared hue group: blue","confidence":0.55}],"category":"mob"},{"id":"minecraft:axolotl/gold","name":"Axolotl / Gold","entry_type":"mob","description":"An axolotl is a passive aquatic mob found in lush caves that hunts most other aquatic mobs, and can assist players with aquatic combat and grant them Regeneration. They can also be carried around in a bucket.","history":[{"version":"1.17 20w51a","status":"added","notes":"Added axolotls."},{"version":"wiki-history","status":"added","notes":"Added Golden Dandelions , which can be used to prevent baby axolotls from growing up."}],"colors":{"primary":"#e5aa21","dominant_hex":"#fcd41c","average_hex":"#e5aa21","hue_group":"yellow","lightness":0.5137,"saturation":0.7903,"palette":["#fcd41c","#d79a17","#ecac44","#c2730a","#f4c534","#854d1c"],"color_groups":[{"hex":"#fcd41c","weight":0.3003,"lightness":0.549,"saturation":0.9739,"hue_group":"yellow"},{"hex":"#d79a17","weight":0.2302,"lightness":0.4667,"saturation":0.8067,"hue_group":"yellow"},{"hex":"#ecac44","weight":0.1707,"lightness":0.5961,"saturation":0.8155,"hue_group":"yellow"},{"hex":"#c2730a","weight":0.1402,"lightness":0.4,"saturation":0.902,"hue_group":"yellow"},{"hex":"#f4c534","weight":0.122,"lightness":0.5804,"saturation":0.8972,"hue_group":"yellow"},{"hex":"#854d1c","weight":0.0366,"lightness":0.3157,"saturation":0.6522,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/axolotl/axolotl_gold.png","family":"axolotl","relations":[{"type":"variants","target":"minecraft:axolotl/blue","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/blue","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/cyan","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/cyan","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/lucy","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/lucy","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/wild","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/wild","label":"Related set: axolotl","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:shulker_yellow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/red","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/ocelot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_lime","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/persian","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/brown","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:axolotl/lucy","name":"Axolotl / Lucy","entry_type":"mob","description":"An axolotl is a passive aquatic mob found in lush caves that hunts most other aquatic mobs, and can assist players with aquatic combat and grant them Regeneration. They can also be carried around in a bucket.","history":[{"version":"1.17 20w51a","status":"added","notes":"Added axolotls."},{"version":"wiki-history","status":"added","notes":"Added Golden Dandelions , which can be used to prevent baby axolotls from growing up."}],"colors":{"primary":"#e189ba","dominant_hex":"#fcc4e4","average_hex":"#e189ba","hue_group":"purple","lightness":0.7098,"saturation":0.5946,"palette":["#fcc4e4","#ce5f99","#e484bc","#f4acd4","#ac3a7e","#e96994"],"color_groups":[{"hex":"#fcc4e4","weight":0.3049,"lightness":0.8784,"saturation":0.9032,"hue_group":"purple"},{"hex":"#ce5f99","weight":0.2317,"lightness":0.5902,"saturation":0.5311,"hue_group":"purple"},{"hex":"#e484bc","weight":0.1677,"lightness":0.7059,"saturation":0.64,"hue_group":"purple"},{"hex":"#f4acd4","weight":0.1174,"lightness":0.8157,"saturation":0.766,"hue_group":"purple"},{"hex":"#ac3a7e","weight":0.1037,"lightness":0.451,"saturation":0.4957,"hue_group":"purple"},{"hex":"#e96994","weight":0.0747,"lightness":0.6627,"saturation":0.7442,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/axolotl/axolotl_lucy.png","family":"axolotl","relations":[{"type":"variants","target":"minecraft:axolotl/blue","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/blue","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/cyan","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/cyan","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/gold","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/gold","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/wild","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/wild","label":"Related set: axolotl","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:shulker_magenta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_purple","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:endermite","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_fireball","label":"Shared hue group: purple","confidence":0.55}],"category":"mob"},{"id":"minecraft:axolotl/wild","name":"Axolotl / Wild","entry_type":"mob","description":"An axolotl is a passive aquatic mob found in lush caves that hunts most other aquatic mobs, and can assist players with aquatic combat and grant them Regeneration. They can also be carried around in a bucket.","history":[{"version":"1.17 20w51a","status":"added","notes":"Added axolotls."},{"version":"wiki-history","status":"added","notes":"Added Golden Dandelions , which can be used to prevent baby axolotls from growing up."}],"colors":{"primary":"#7b5f47","dominant_hex":"#a57d55","average_hex":"#7b5f47","hue_group":"red","lightness":0.3804,"saturation":0.268,"palette":["#a57d55","#7d624b","#644c3c","#543e36","#94745c","#392b25"],"color_groups":[{"hex":"#a57d55","weight":0.2668,"lightness":0.4902,"saturation":0.32,"hue_group":"red"},{"hex":"#7d624b","weight":0.2393,"lightness":0.3922,"saturation":0.25,"hue_group":"red"},{"hex":"#644c3c","weight":0.1845,"lightness":0.3137,"saturation":0.25,"hue_group":"red"},{"hex":"#543e36","weight":0.1296,"lightness":0.2706,"saturation":0.2174,"hue_group":"red"},{"hex":"#94745c","weight":0.122,"lightness":0.4706,"saturation":0.2333,"hue_group":"red"},{"hex":"#392b25","weight":0.0579,"lightness":0.1843,"saturation":0.2128,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/axolotl/axolotl_wild.png","family":"axolotl","relations":[{"type":"variants","target":"minecraft:axolotl/blue","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/blue","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/cyan","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/cyan","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/gold","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/gold","label":"Related set: axolotl","confidence":0.8},{"type":"variants","target":"minecraft:axolotl/lucy","label":"Same family: axolotl","confidence":0.75},{"type":"related_sets","target":"minecraft:axolotl/lucy","label":"Related set: axolotl","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/spotted","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:axolotl_bucket","name":"Axolotl Bucket","entry_type":"item","description":"A bucket of axolotl, internally known as an axolotl bucket, is an axolotl inside of a water bucket.","history":[{"version":"1.17 20w51a","status":"added","notes":"Added buckets of axolotls."}],"colors":{"primary":"#a2839d","dominant_hex":"#d095b0","average_hex":"#a2839d","hue_group":"purple","lightness":0.5745,"saturation":0.1429,"palette":["#d095b0","#343137","#b96a8d","#fcdef0","#5266a6","#dcdcdc"],"color_groups":[{"hex":"#d095b0","weight":0.2375,"lightness":0.7,"saturation":0.3856,"hue_group":"red"},{"hex":"#343137","weight":0.2062,"lightness":0.2039,"saturation":0.0577,"hue_group":"neutral"},{"hex":"#b96a8d","weight":0.175,"lightness":0.5706,"saturation":0.3607,"hue_group":"red"},{"hex":"#fcdef0","weight":0.1625,"lightness":0.9294,"saturation":0.8333,"hue_group":"purple"},{"hex":"#5266a6","weight":0.1375,"lightness":0.4863,"saturation":0.3387,"hue_group":"blue"},{"hex":"#dcdcdc","weight":0.0813,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/axolotl_bucket.png","family":"axolotl_bucket","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:spire_armor_trim_smithing_template","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_breath","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_crystal","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:popped_chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_shell","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_bundle","label":"Shared hue group: purple","confidence":0.55}],"category":"item"},{"id":"minecraft:axolotl_spawn_egg","name":"Axolotl Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#cc6ca2","dominant_hex":"#b44484","average_hex":"#cc6ca2","hue_group":"purple","lightness":0.6118,"saturation":0.4848,"palette":["#b44484","#9c2c6c","#fcc7e6","#e48cc4","#ec6c94","#cc649c"],"color_groups":[{"hex":"#b44484","weight":0.2464,"lightness":0.4863,"saturation":0.4516,"hue_group":"purple"},{"hex":"#9c2c6c","weight":0.2174,"lightness":0.3922,"saturation":0.56,"hue_group":"purple"},{"hex":"#fcc7e6","weight":0.2174,"lightness":0.8843,"saturation":0.8983,"hue_group":"purple"},{"hex":"#e48cc4","weight":0.1739,"lightness":0.7216,"saturation":0.6197,"hue_group":"purple"},{"hex":"#ec6c94","weight":0.087,"lightness":0.6745,"saturation":0.7711,"hue_group":"red"},{"hex":"#cc649c","weight":0.058,"lightness":0.5961,"saturation":0.5049,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/axolotl_spawn_egg.png","family":"axolotl_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:magenta_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_crystal","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spire_armor_trim_smithing_template","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_breath","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_bucket","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enderman_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:endermite_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_shell","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:popped_chorus_fruit","label":"Shared hue group: purple","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:azalea","name":"Azalea","entry_type":"block","description":"An azalea is a solid block that can be grown into an azalea tree.","history":[{"version":"1.17 21w05a","status":"added","notes":"Added azaleas."}],"colors":{"primary":"#667d30","dominant_hex":"#647434","average_hex":"#667d30","hue_group":"yellow","lightness":0.3392,"saturation":0.4451,"palette":["#647434","#74942c","#6c8434","#546c2c","#4c5c24"],"color_groups":[{"hex":"#647434","weight":0.2891,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#74942c","weight":0.2734,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"},{"hex":"#6c8434","weight":0.2617,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#546c2c","weight":0.168,"lightness":0.298,"saturation":0.4211,"hue_group":"yellow"},{"hex":"#4c5c24","weight":0.0078,"lightness":0.251,"saturation":0.4375,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/azalea_top.png","family":"azalea","relations":[{"type":"variants","target":"minecraft:azalea_leaves","label":"Same family: azalea","confidence":0.75},{"type":"related_sets","target":"minecraft:azalea_leaves","label":"Related set: azalea","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:potted_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_terracotta","label":"Palette proche: Lime Terracotta","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.926},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.925},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.916},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.71},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.71},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.71},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.71},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.682},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.68},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par sous-ton: Infested Mossy Stone Bricks","confidence":0.672},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par sous-ton: Mossy Stone Brick Slab","confidence":0.672},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par sous-ton: Mossy Stone Brick Stairs","confidence":0.672},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par sous-ton: Mossy Stone Brick Wall","confidence":0.672},{"type":"color_analogous","target":"minecraft:potted_azalea_bush","label":"Couleurs analogues: Potted Azalea Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete_powder","label":"Couleurs analogues: Green Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:cave_vines","label":"Couleurs analogues: Cave Vines","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:melon","label":"Couleurs analogues: Melon","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_carpet","label":"Couleurs analogues: Green Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_wool","label":"Couleurs analogues: Green Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.96},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.96},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.96},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.941},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.886},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.821},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.802},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.921},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.912},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.911},{"type":"color_triad","target":"minecraft:light_blue_carpet","label":"Harmonie triadique: Light Blue Carpet","confidence":0.902},{"type":"color_triad","target":"minecraft:light_blue_wool","label":"Harmonie triadique: Light Blue Wool","confidence":0.902},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.901},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.829},{"type":"color_square","target":"minecraft:prismarine_brick_slab","label":"Harmonie carree: Prismarine Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_brick_stairs","label":"Harmonie carree: Prismarine Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_bricks","label":"Harmonie carree: Prismarine Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:cracked_nether_bricks","label":"Harmonie carree: Cracked Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.954},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.945},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.942},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.942},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.602},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.569},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55}],"category":"natural"},{"id":"minecraft:azalea_leaves","name":"Azalea Leaves","entry_type":"block","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","history":[{"version":"0.0.14a","status":"added","notes":"Added leaves."},{"version":"1.2","status":"added","notes":"Added spruce and birch leaves, which are colored #619961 and #80a755 respectively, and do not vary across biomes."},{"version":"1.7","status":"added","notes":"Added shears , which collect leaves. Before, leaves could be obtained only via inventory editing."}],"colors":{"primary":"#5a732c","dominant_hex":"#546c2c","average_hex":"#5a732c","hue_group":"yellow","lightness":0.3118,"saturation":0.4465,"palette":["#546c2c","#74942c","#6c8434","#3c4c24"],"color_groups":[{"hex":"#546c2c","weight":0.3096,"lightness":0.298,"saturation":0.4211,"hue_group":"yellow"},{"hex":"#74942c","weight":0.2538,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"},{"hex":"#6c8434","weight":0.2335,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#3c4c24","weight":0.203,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/azalea_leaves.png","family":"azalea","relations":[{"type":"variants","target":"minecraft:azalea","label":"Same family: azalea","confidence":0.75},{"type":"related_sets","target":"minecraft:azalea","label":"Related set: azalea","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.919},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.919},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.914},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.91},{"type":"color_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Palette proche: Flowering Azalea Leaves","confidence":0.908},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.7},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.7},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.7},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.7},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.684},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.681},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par sous-ton: Infested Mossy Stone Bricks","confidence":0.663},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par sous-ton: Mossy Stone Brick Slab","confidence":0.663},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par sous-ton: Mossy Stone Brick Stairs","confidence":0.663},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par sous-ton: Mossy Stone Brick Wall","confidence":0.663},{"type":"color_analogous","target":"minecraft:big_dripleaf_stem","label":"Couleurs analogues: Big Dripleaf Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:small_dripleaf","label":"Couleurs analogues: Small Dripleaf","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass_pane","label":"Couleurs analogues: Green Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass","label":"Couleurs analogues: Green Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:big_dripleaf","label":"Couleurs analogues: Big Dripleaf","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_glazed_terracotta","label":"Couleurs analogues: Green Glazed Terracotta","confidence":0.955},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.927},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.908},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.9},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.861},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.861},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.861},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.861},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.958},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.952},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.937},{"type":"color_triad","target":"minecraft:soul_lantern","label":"Harmonie triadique: Soul Lantern","confidence":0.937},{"type":"color_triad","target":"minecraft:light_blue_concrete","label":"Harmonie triadique: Light Blue Concrete","confidence":0.915},{"type":"color_triad","target":"minecraft:light_blue_glazed_terracotta","label":"Harmonie triadique: Light Blue Glazed Terracotta","confidence":0.913},{"type":"color_triad","target":"minecraft:cornflower","label":"Harmonie triadique: Cornflower","confidence":0.905},{"type":"color_triad","target":"minecraft:potted_cornflower","label":"Harmonie triadique: Potted Cornflower","confidence":0.905},{"type":"color_square","target":"minecraft:cactus_flower","label":"Harmonie carree: Cactus Flower","confidence":0.96},{"type":"color_square","target":"minecraft:twisting_vines","label":"Harmonie carree: Twisting Vines","confidence":0.959},{"type":"color_square","target":"minecraft:nether_sprouts","label":"Harmonie carree: Nether Sprouts","confidence":0.948},{"type":"color_square","target":"minecraft:chiseled_nether_bricks","label":"Harmonie carree: Chiseled Nether Bricks","confidence":0.926},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.912},{"type":"color_square","target":"minecraft:potted_warped_roots","label":"Harmonie carree: Potted Warped Roots","confidence":0.909},{"type":"color_square","target":"minecraft:twisting_vines_plant","label":"Harmonie carree: Twisting Vines Plant","confidence":0.908},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.906},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.628},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.594},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.572},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.552},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.552},{"type":"value_contrast","target":"minecraft:oxeye_daisy","label":"Contraste clair sombre: Oxeye Daisy","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_oxeye_daisy","label":"Contraste clair sombre: Potted Oxeye Daisy","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55}],"category":"natural"},{"id":"minecraft:azure_bluet","name":"Azure Bluet","entry_type":"block","description":"An azure bluet is a flower that can be crafted into light gray dye and suspicious stew.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added azure bluets."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell azure bluets."},{"version":"1.18","status":"added","notes":"Added meadows , in which azure bluets can generate."}],"colors":{"primary":"#a9cd7f","dominant_hex":"#54ac2c","average_hex":"#a9cd7f","hue_group":"yellow","lightness":0.651,"saturation":0.4382,"palette":["#54ac2c","#f4f4f4","#d4ecec","#fcec4c","#549c2c","#4c8c2c"],"color_groups":[{"hex":"#54ac2c","weight":0.2326,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#f4f4f4","weight":0.2093,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d4ecec","weight":0.186,"lightness":0.8784,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#fcec4c","weight":0.1628,"lightness":0.6431,"saturation":0.967,"hue_group":"yellow"},{"hex":"#549c2c","weight":0.1395,"lightness":0.3922,"saturation":0.56,"hue_group":"green"},{"hex":"#4c8c2c","weight":0.0698,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/azure_bluet.png","family":"azure_bluet","relations":[{"type":"visual_neighbors","target":"minecraft:potted_azure_bluet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_crop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sugar_cane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_azure_bluet","label":"Palette proche: Potted Azure Bluet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxeye_daisy","label":"Palette proche: Oxeye Daisy","confidence":0.904},{"type":"color_neighbors","target":"minecraft:potted_oxeye_daisy","label":"Palette proche: Potted Oxeye Daisy","confidence":0.904},{"type":"color_neighbors","target":"minecraft:lily_of_the_valley","label":"Palette proche: Lily Of The Valley","confidence":0.754},{"type":"color_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Palette proche: Potted Lily Of The Valley","confidence":0.754},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.736},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.736},{"type":"color_neighbors","target":"minecraft:wildflowers","label":"Palette proche: Wildflowers","confidence":0.724},{"type":"color_neighbors","target":"minecraft:test_block","label":"Palette proche: Test Block","confidence":0.639},{"type":"color_neighbors","target":"minecraft:dandelion","label":"Palette proche: Dandelion","confidence":0.631},{"type":"color_neighbors","target":"minecraft:potted_dandelion","label":"Palette proche: Potted Dandelion","confidence":0.631},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.595},{"type":"color_bridge","target":"minecraft:wildflowers","label":"Pont de nuance par palette: Wildflowers","confidence":0.773},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.657},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.657},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.632},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par palette: White Candle","confidence":0.631},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par palette: White Concrete Powder","confidence":0.612},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par palette: White Shulker Box","confidence":0.606},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par palette: Cobweb","confidence":0.605},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par palette: Pale Oak Trapdoor","confidence":0.605},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.604},{"type":"color_analogous","target":"minecraft:potted_azure_bluet","label":"Couleurs analogues: Potted Azure Bluet","confidence":0.96},{"type":"color_analogous","target":"minecraft:sugar_cane","label":"Couleurs analogues: Sugar Cane","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_carpet","label":"Couleurs analogues: Lime Carpet","confidence":0.949},{"type":"color_analogous","target":"minecraft:lime_wool","label":"Couleurs analogues: Lime Wool","confidence":0.949},{"type":"color_analogous","target":"minecraft:lime_concrete_powder","label":"Couleurs analogues: Lime Concrete Powder","confidence":0.925},{"type":"color_analogous","target":"minecraft:lime_stained_glass","label":"Couleurs analogues: Lime Stained Glass","confidence":0.918},{"type":"color_analogous","target":"minecraft:lime_shulker_box","label":"Couleurs analogues: Lime Shulker Box","confidence":0.913},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.911},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.96},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.96},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.96},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.876},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.874},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.934},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.901},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.901},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.901},{"type":"color_triad","target":"minecraft:cherry_log","label":"Harmonie triadique: Cherry Log","confidence":0.896},{"type":"color_triad","target":"minecraft:cherry_wood","label":"Harmonie triadique: Cherry Wood","confidence":0.896},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.885},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.881},{"type":"color_square","target":"minecraft:stripped_warped_hyphae","label":"Harmonie carree: Stripped Warped Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_stem","label":"Harmonie carree: Stripped Warped Stem","confidence":0.96},{"type":"color_square","target":"minecraft:warped_hanging_sign","label":"Harmonie carree: Warped Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:warped_wall_hanging_sign","label":"Harmonie carree: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:black_glazed_terracotta","label":"Harmonie carree: Black Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:nether_wart","label":"Harmonie carree: Nether Wart","confidence":0.957},{"type":"color_square","target":"minecraft:red_nether_brick_slab","label":"Harmonie carree: Red Nether Brick Slab","confidence":0.953},{"type":"color_square","target":"minecraft:red_nether_brick_stairs","label":"Harmonie carree: Red Nether Brick Stairs","confidence":0.953},{"type":"value_contrast","target":"minecraft:oak_sapling","label":"Contraste clair sombre: Oak Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_oak_sapling","label":"Contraste clair sombre: Potted Oak Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sapling","label":"Contraste clair sombre: Dark Oak Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_dark_oak_sapling","label":"Contraste clair sombre: Potted Dark Oak Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_concrete","label":"Contraste clair sombre: Green Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:cave_vines_plant","label":"Contraste clair sombre: Cave Vines Plant","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_shulker_box","label":"Contraste clair sombre: Green Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_carpet","label":"Contraste clair sombre: Green Carpet","confidence":0.55}],"category":""},{"id":"minecraft:baked_potato","name":"Baked Potato","entry_type":"item","description":"A baked potato is a food item obtained by cooking the potato.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added baked potatoes."}],"colors":{"primary":"#b0812e","dominant_hex":"#9c7631","average_hex":"#b0812e","hue_group":"yellow","lightness":0.4353,"saturation":0.5856,"palette":["#9c7631","#c99c3b","#9c5404","#6c3404","#dcac54","#f4cc5c"],"color_groups":[{"hex":"#9c7631","weight":0.2797,"lightness":0.402,"saturation":0.522,"hue_group":"yellow"},{"hex":"#c99c3b","weight":0.2458,"lightness":0.5098,"saturation":0.568,"hue_group":"yellow"},{"hex":"#9c5404","weight":0.1525,"lightness":0.3137,"saturation":0.95,"hue_group":"yellow"},{"hex":"#6c3404","weight":0.1186,"lightness":0.2196,"saturation":0.9286,"hue_group":"red"},{"hex":"#dcac54","weight":0.1186,"lightness":0.5961,"saturation":0.6602,"hue_group":"yellow"},{"hex":"#f4cc5c","weight":0.0847,"lightness":0.6588,"saturation":0.8736,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/baked_potato.png","family":"baked_potato","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_boots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_chestplate","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:bamboo","name":"Bamboo","entry_type":"block","description":"Bamboo is a versatile, fast-growing plant found primarily in jungles, used for crafting (particularly scaffolding and bamboo wood), smelting, and breeding pandas. A bamboo shoot is the initial non-solid sapling form of planted bamboo.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added bamboo."},{"version":"wiki-history","status":"added","notes":"Added bamboo jungles , where bamboo naturally generates."}],"colors":{"primary":"#5e9014","dominant_hex":"#5d9505","average_hex":"#5e9014","hue_group":"yellow","lightness":0.3216,"saturation":0.7561,"palette":["#5d9505","#54840c","#8bc24b","#446c0c","#3c6414","#94d454"],"color_groups":[{"hex":"#5d9505","weight":0.4648,"lightness":0.302,"saturation":0.9351,"hue_group":"yellow"},{"hex":"#54840c","weight":0.2422,"lightness":0.2824,"saturation":0.8333,"hue_group":"yellow"},{"hex":"#8bc24b","weight":0.1172,"lightness":0.5275,"saturation":0.4938,"hue_group":"yellow"},{"hex":"#446c0c","weight":0.0703,"lightness":0.2353,"saturation":0.8,"hue_group":"yellow"},{"hex":"#3c6414","weight":0.0586,"lightness":0.2353,"saturation":0.6667,"hue_group":"green"},{"hex":"#94d454","weight":0.0469,"lightness":0.5804,"saturation":0.5981,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_stalk.png","family":"bamboo","relations":[{"type":"variants","target":"minecraft:bamboo_door","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_door","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_fence","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_fence","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_planks","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_planks","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_sapling","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_sapling","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_slab","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_slab","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_stairs","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_stairs","label":"Related set: bamboo","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:carved_pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:green_candle","label":"Palette proche: Green Candle","confidence":0.8},{"type":"color_neighbors","target":"minecraft:seagrass","label":"Palette proche: Seagrass","confidence":0.791},{"type":"color_neighbors","target":"minecraft:tall_seagrass","label":"Palette proche: Tall Seagrass","confidence":0.786},{"type":"color_neighbors","target":"minecraft:lime_shulker_box","label":"Palette proche: Lime Shulker Box","confidence":0.775},{"type":"color_neighbors","target":"minecraft:green_carpet","label":"Palette proche: Green Carpet","confidence":0.774},{"type":"color_neighbors","target":"minecraft:green_wool","label":"Palette proche: Green Wool","confidence":0.774},{"type":"color_neighbors","target":"minecraft:lime_candle","label":"Palette proche: Lime Candle","confidence":0.76},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.76},{"type":"color_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Palette proche: Lime Stained Glass Pane","confidence":0.754},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.736},{"type":"color_neighbors","target":"minecraft:lime_carpet","label":"Palette proche: Lime Carpet","confidence":0.727},{"type":"color_neighbors","target":"minecraft:lime_wool","label":"Palette proche: Lime Wool","confidence":0.727},{"type":"color_bridge","target":"minecraft:wheat","label":"Pont de nuance par palette: Wheat","confidence":0.66},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Door","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par sous-ton: Weathered Copper Door","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Copper","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chest","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Golem Statue","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par sous-ton: Weathered Copper","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_chest","label":"Pont de nuance par sous-ton: Weathered Copper Chest","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_golem_statue","label":"Pont de nuance par sous-ton: Weathered Copper Golem Statue","confidence":0.58},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.58},{"type":"color_analogous","target":"minecraft:potted_red_tulip","label":"Couleurs analogues: Potted Red Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_tulip","label":"Couleurs analogues: Red Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sapling","label":"Couleurs analogues: Birch Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_birch_sapling","label":"Couleurs analogues: Potted Birch Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_tulip","label":"Couleurs analogues: Orange Tulip","confidence":0.946},{"type":"color_analogous","target":"minecraft:potted_orange_tulip","label":"Couleurs analogues: Potted Orange Tulip","confidence":0.946},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.945},{"type":"color_analogous","target":"minecraft:oak_sapling","label":"Couleurs analogues: Oak Sapling","confidence":0.945},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.958},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.949},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.949},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.934},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.882},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.87},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.864},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.851},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral","label":"Harmonie triadique: Brain Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.959},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.948},{"type":"color_triad","target":"minecraft:light_blue_glazed_terracotta","label":"Harmonie triadique: Light Blue Glazed Terracotta","confidence":0.944},{"type":"color_triad","target":"minecraft:light_blue_concrete","label":"Harmonie triadique: Light Blue Concrete","confidence":0.942},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.939},{"type":"color_square","target":"minecraft:fire_coral_fan","label":"Harmonie carree: Fire Coral Fan","confidence":0.96},{"type":"color_square","target":"minecraft:fire_coral_wall_fan","label":"Harmonie carree: Fire Coral Wall Fan","confidence":0.96},{"type":"color_square","target":"minecraft:fire_coral_block","label":"Harmonie carree: Fire Coral Block","confidence":0.96},{"type":"color_square","target":"minecraft:warped_button","label":"Harmonie carree: Warped Button","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence","label":"Harmonie carree: Warped Fence","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence_gate","label":"Harmonie carree: Warped Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_planks","label":"Harmonie carree: Warped Planks","confidence":0.96},{"type":"color_square","target":"minecraft:warped_pressure_plate","label":"Harmonie carree: Warped Pressure Plate","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.608},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.575},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.553},{"type":"value_contrast","target":"minecraft:wildflowers","label":"Contraste clair sombre: Wildflowers","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55}],"category":"natural"},{"id":"minecraft:bamboo_block","name":"Bamboo Block","entry_type":"block","description":"A block of bamboo is a log-like block made of bamboo that can be used to craft bamboo planks.","history":[{"version":"1.19.3","status":"added","notes":"Added blocks of bamboo."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of bamboo, providing the bouncy/rubber ball effect to the mob."}],"colors":{"primary":"#7f903a","dominant_hex":"#85913b","average_hex":"#7f903a","hue_group":"yellow","lightness":0.3961,"saturation":0.4257,"palette":["#85913b","#90a040","#a3ba48","#748434","#647434","#5c642c"],"color_groups":[{"hex":"#85913b","weight":0.25,"lightness":0.4,"saturation":0.4216,"hue_group":"yellow"},{"hex":"#90a040","weight":0.2383,"lightness":0.4392,"saturation":0.4286,"hue_group":"yellow"},{"hex":"#a3ba48","weight":0.1484,"lightness":0.5059,"saturation":0.4524,"hue_group":"yellow"},{"hex":"#748434","weight":0.1406,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#647434","weight":0.1133,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#5c642c","weight":0.1094,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_block.png","family":"bamboo_block","relations":[{"type":"visual_neighbors","target":"minecraft:barrel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dirt_path","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lime_terracotta","label":"Palette proche: Lime Terracotta","confidence":0.928},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.896},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.893},{"type":"color_neighbors","target":"minecraft:cocoa","label":"Palette proche: Cocoa","confidence":0.892},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.883},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.883},{"type":"color_neighbors","target":"minecraft:wet_sponge","label":"Palette proche: Wet Sponge","confidence":0.871},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.864},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.862},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.861},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.86},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.858},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.717},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.717},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.716},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.715},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.715},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.715},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.715},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.705},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Cut Copper","confidence":0.7},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Weathered Cut Copper Slab","confidence":0.7},{"type":"color_analogous","target":"minecraft:lime_terracotta","label":"Couleurs analogues: Lime Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:flowering_azalea","label":"Couleurs analogues: Flowering Azalea","confidence":0.96},{"type":"color_analogous","target":"minecraft:dandelion","label":"Couleurs analogues: Dandelion","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_dandelion","label":"Couleurs analogues: Potted Dandelion","confidence":0.96},{"type":"color_analogous","target":"minecraft:flowering_azalea_leaves","label":"Couleurs analogues: Flowering Azalea Leaves","confidence":0.958},{"type":"color_analogous","target":"minecraft:cave_vines_plant","label":"Couleurs analogues: Cave Vines Plant","confidence":0.948},{"type":"color_analogous","target":"minecraft:green_terracotta","label":"Couleurs analogues: Green Terracotta","confidence":0.934},{"type":"color_analogous","target":"minecraft:potted_wither_rose","label":"Couleurs analogues: Potted Wither Rose","confidence":0.926},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.828},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.82},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.82},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.82},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.82},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.686},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.679},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.621},{"type":"color_triad","target":"minecraft:sculk_vein","label":"Harmonie triadique: Sculk Vein","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.909},{"type":"color_triad","target":"minecraft:glass_pane","label":"Harmonie triadique: Glass Pane","confidence":0.884},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.877},{"type":"color_triad","target":"minecraft:cyan_concrete","label":"Harmonie triadique: Cyan Concrete","confidence":0.86},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.854},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.851},{"type":"color_triad","target":"minecraft:light_blue_carpet","label":"Harmonie triadique: Light Blue Carpet","confidence":0.827},{"type":"color_square","target":"minecraft:pink_carpet","label":"Harmonie carree: Pink Carpet","confidence":0.932},{"type":"color_square","target":"minecraft:pink_wool","label":"Harmonie carree: Pink Wool","confidence":0.932},{"type":"color_square","target":"minecraft:crimson_roots","label":"Harmonie carree: Crimson Roots","confidence":0.928},{"type":"color_square","target":"minecraft:purple_terracotta","label":"Harmonie carree: Purple Terracotta","confidence":0.909},{"type":"color_square","target":"minecraft:pink_shulker_box","label":"Harmonie carree: Pink Shulker Box","confidence":0.902},{"type":"color_square","target":"minecraft:potted_crimson_roots","label":"Harmonie carree: Potted Crimson Roots","confidence":0.901},{"type":"color_square","target":"minecraft:pink_stained_glass","label":"Harmonie carree: Pink Stained Glass","confidence":0.899},{"type":"color_square","target":"minecraft:oxidized_copper_chain","label":"Harmonie carree: Oxidized Copper Chain","confidence":0.898},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone_slab","label":"Contraste clair sombre: Cut Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_slab","label":"Contraste clair sombre: Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_stairs","label":"Contraste clair sombre: Sandstone Stairs","confidence":0.55}],"category":"natural"},{"id":"minecraft:bamboo_button","name":"Bamboo Button","entry_type":"block","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added wooden buttons. They are currently uncraftable."},{"version":"12w34b","status":"added","notes":"Added crafting recipe for wooden buttons. Recipe"},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped buttons."}],"colors":{"primary":"#c1ad50","dominant_hex":"#cdb74f","average_hex":"#c1ad50","hue_group":"yellow","lightness":0.5353,"saturation":0.4768,"palette":["#cdb74f","#b9ac4c","#e5ce6e","#dcc45c","#9c8444","#947c3c"],"color_groups":[{"hex":"#cdb74f","weight":0.3281,"lightness":0.5569,"saturation":0.5575,"hue_group":"yellow"},{"hex":"#b9ac4c","weight":0.168,"lightness":0.5118,"saturation":0.4378,"hue_group":"yellow"},{"hex":"#e5ce6e","weight":0.1484,"lightness":0.6647,"saturation":0.6959,"hue_group":"yellow"},{"hex":"#dcc45c","weight":0.1328,"lightness":0.6118,"saturation":0.6465,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.1133,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#947c3c","weight":0.1094,"lightness":0.4078,"saturation":0.4231,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_planks.png","family":"bamboo_button","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_fence","label":"Palette proche: Bamboo Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_door","label":"Palette proche: Bamboo Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.736},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.723},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.722},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.717},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.708},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.706},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_slab","label":"Couleurs analogues: Bamboo Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_stairs","label":"Couleurs analogues: Bamboo Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_hanging_sign","label":"Couleurs analogues: Bamboo Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_sign","label":"Couleurs analogues: Bamboo Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.953},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.936},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.871},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.858},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.819},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.819},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.952},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.926},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.886},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.849},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.849},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.892},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.874},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.788},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.767},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.721},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.712},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:bamboo_chest_raft","name":"Bamboo Chest Raft","entry_type":"item","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#715d2b","dominant_hex":"#6b5a2b","average_hex":"#715d2b","hue_group":"yellow","lightness":0.3059,"saturation":0.4487,"palette":["#6b5a2b","#3d3923","#9a7425","#d4bc58","#3a2c16","#2c1c0c"],"color_groups":[{"hex":"#6b5a2b","weight":0.262,"lightness":0.2941,"saturation":0.4267,"hue_group":"yellow"},{"hex":"#3d3923","weight":0.1818,"lightness":0.1882,"saturation":0.2708,"hue_group":"yellow"},{"hex":"#9a7425","weight":0.1818,"lightness":0.3745,"saturation":0.6126,"hue_group":"yellow"},{"hex":"#d4bc58","weight":0.1658,"lightness":0.5882,"saturation":0.5905,"hue_group":"yellow"},{"hex":"#3a2c16","weight":0.107,"lightness":0.1569,"saturation":0.45,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1016,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/bamboo_chest_raft.png","family":"bamboo_chest_raft","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:mushroom_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:poisonous_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_shovel","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:bamboo_door","name":"Bamboo Door","entry_type":"block","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","history":[{"version":"20100607","status":"added","notes":"Added wooden doors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"18w49a","status":"added","notes":"Added snowy tundra villages, which generate with spruce doors."}],"colors":{"primary":"#bfab51","dominant_hex":"#afa147","average_hex":"#bfab51","hue_group":"yellow","lightness":0.5333,"saturation":0.4622,"palette":["#afa147","#9c8444","#c8b24c","#e5ce6f","#dcc45c","#d4bc54"],"color_groups":[{"hex":"#afa147","weight":0.226,"lightness":0.4824,"saturation":0.4228,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.2163,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#c8b24c","weight":0.1827,"lightness":0.5412,"saturation":0.5299,"hue_group":"yellow"},{"hex":"#e5ce6f","weight":0.1827,"lightness":0.6667,"saturation":0.6941,"hue_group":"yellow"},{"hex":"#dcc45c","weight":0.1202,"lightness":0.6118,"saturation":0.6465,"hue_group":"yellow"},{"hex":"#d4bc54","weight":0.0721,"lightness":0.5804,"saturation":0.5981,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_door_top.png","family":"bamboo","relations":[{"type":"variants","target":"minecraft:bamboo","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_fence","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_fence","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_planks","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_planks","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_sapling","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_sapling","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_slab","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_slab","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_stairs","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_stairs","label":"Related set: bamboo","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_trapdoor","label":"Palette proche: Bamboo Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.746},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.746},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.734},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.73},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.73},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.724},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.718},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.714},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.712},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.706},{"type":"color_analogous","target":"minecraft:bamboo_mosaic","label":"Couleurs analogues: Bamboo Mosaic","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_mosaic_slab","label":"Couleurs analogues: Bamboo Mosaic Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_mosaic_stairs","label":"Couleurs analogues: Bamboo Mosaic Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.945},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.879},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.867},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.828},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.828},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.914},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.873},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.837},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.836},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.903},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.887},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.775},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.76},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.76},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.754},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.707},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.699},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:bamboo_fence","name":"Bamboo Fence","entry_type":"block","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","history":[{"version":"20100629","status":"added","notes":"added to the game. There are three defined states: north-south, east-west and a cross. These models are currently unused."},{"version":"v1.0.17","status":"added","notes":"Added fences."},{"version":"1.8","status":"added","notes":"Added villages and strongholds , where wooden fences naturally generate."}],"colors":{"primary":"#cfba59","dominant_hex":"#e6d070","average_hex":"#cfba59","hue_group":"yellow","lightness":0.5804,"saturation":0.5514,"palette":["#e6d070","#b8ac4c","#dcc45c","#cab44c","#d4bc54","#89763a"],"color_groups":[{"hex":"#e6d070","weight":0.3099,"lightness":0.6706,"saturation":0.7024,"hue_group":"yellow"},{"hex":"#b8ac4c","weight":0.269,"lightness":0.5098,"saturation":0.432,"hue_group":"yellow"},{"hex":"#dcc45c","weight":0.1637,"lightness":0.6118,"saturation":0.6465,"hue_group":"yellow"},{"hex":"#cab44c","weight":0.1462,"lightness":0.5451,"saturation":0.5431,"hue_group":"yellow"},{"hex":"#d4bc54","weight":0.0819,"lightness":0.5804,"saturation":0.5981,"hue_group":"yellow"},{"hex":"#89763a","weight":0.0292,"lightness":0.3824,"saturation":0.4051,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_fence.png","family":"bamboo","relations":[{"type":"variants","target":"minecraft:bamboo","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_door","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_door","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_planks","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_planks","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_sapling","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_sapling","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_slab","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_slab","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_stairs","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_stairs","label":"Related set: bamboo","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:bamboo_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sponge","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_fence_gate","label":"Palette proche: Bamboo Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_trapdoor","label":"Palette proche: Bamboo Trapdoor","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.729},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.715},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.715},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.702},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.702},{"type":"color_bridge","target":"minecraft:jungle_leaves","label":"Pont de nuance par palette: Jungle Leaves","confidence":0.693},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.692},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.692},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.687},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.678},{"type":"color_analogous","target":"minecraft:bamboo_fence_gate","label":"Couleurs analogues: Bamboo Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_trapdoor","label":"Couleurs analogues: Bamboo Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_slab","label":"Couleurs analogues: Bamboo Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.959},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.946},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.88},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.868},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.829},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.829},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.948},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.948},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.948},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.93},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.889},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.853},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.852},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.901},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.871},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.783},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.77},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.724},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.713},{"type":"value_contrast","target":"minecraft:jungle_log","label":"Contraste clair sombre: Jungle Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_wood","label":"Contraste clair sombre: Jungle Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_trapdoor","label":"Contraste clair sombre: Dark Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_door","label":"Contraste clair sombre: Dark Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55}],"category":"building"},{"id":"minecraft:bamboo_fence_gate","name":"Bamboo Fence Gate","entry_type":"block","description":"A fence gate is a block that shares the functions of both the door and the fence.","history":[{"version":"Pre-release","status":"added","notes":"Added fence gates."},{"version":"14w32b","status":"added","notes":"Added spruce, birch, jungle, acacia, and dark oak fence gates."},{"version":"18w49a","status":"added","notes":"added snowy tundra villages."}],"colors":{"primary":"#ceba57","dominant_hex":"#baac4c","average_hex":"#ceba57","hue_group":"yellow","lightness":0.5745,"saturation":0.5484,"palette":["#baac4c","#e5ce6e","#dcc45c","#ccb44c","#c4b44c","#d4bc54"],"color_groups":[{"hex":"#baac4c","weight":0.2188,"lightness":0.5137,"saturation":0.4435,"hue_group":"yellow"},{"hex":"#e5ce6e","weight":0.2031,"lightness":0.6647,"saturation":0.6959,"hue_group":"yellow"},{"hex":"#dcc45c","weight":0.1927,"lightness":0.6118,"saturation":0.6465,"hue_group":"yellow"},{"hex":"#ccb44c","weight":0.1771,"lightness":0.549,"saturation":0.5565,"hue_group":"yellow"},{"hex":"#c4b44c","weight":0.1198,"lightness":0.5333,"saturation":0.5042,"hue_group":"yellow"},{"hex":"#d4bc54","weight":0.0885,"lightness":0.5804,"saturation":0.5981,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_fence_gate.png","family":"bamboo_fence_gate","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sponge","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_fence","label":"Palette proche: Bamboo Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_trapdoor","label":"Palette proche: Bamboo Trapdoor","confidence":0.94},{"type":"color_bridge","target":"minecraft:jungle_leaves","label":"Pont de nuance par palette: Jungle Leaves","confidence":0.692},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.69},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.684},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.677},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.677},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.668},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.668},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.663},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.663},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.663},{"type":"color_analogous","target":"minecraft:bamboo_fence","label":"Couleurs analogues: Bamboo Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_trapdoor","label":"Couleurs analogues: Bamboo Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:horn_coral_fan","label":"Couleurs analogues: Horn Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:horn_coral_wall_fan","label":"Couleurs analogues: Horn Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:horn_coral","label":"Couleurs analogues: Horn Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.942},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.939},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.926},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.86},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.848},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.809},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.809},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.958},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.926},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.926},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.926},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.912},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.876},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.875},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.876},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.846},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.808},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.799},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.799},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.795},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.749},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.738},{"type":"value_contrast","target":"minecraft:dark_oak_trapdoor","label":"Contraste clair sombre: Dark Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_door","label":"Contraste clair sombre: Dark Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:bamboo_hanging_sign","name":"Bamboo Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#c1ad50","dominant_hex":"#cdb74f","average_hex":"#c1ad50","hue_group":"yellow","lightness":0.5353,"saturation":0.4768,"palette":["#cdb74f","#b9ac4c","#e5ce6e","#dcc45c","#9c8444","#947c3c"],"color_groups":[{"hex":"#cdb74f","weight":0.3281,"lightness":0.5569,"saturation":0.5575,"hue_group":"yellow"},{"hex":"#b9ac4c","weight":0.168,"lightness":0.5118,"saturation":0.4378,"hue_group":"yellow"},{"hex":"#e5ce6e","weight":0.1484,"lightness":0.6647,"saturation":0.6959,"hue_group":"yellow"},{"hex":"#dcc45c","weight":0.1328,"lightness":0.6118,"saturation":0.6465,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.1133,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#947c3c","weight":0.1094,"lightness":0.4078,"saturation":0.4231,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_planks.png","family":"bamboo_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_fence","label":"Palette proche: Bamboo Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_door","label":"Palette proche: Bamboo Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.736},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.723},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.722},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.717},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.708},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.706},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_slab","label":"Couleurs analogues: Bamboo Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_stairs","label":"Couleurs analogues: Bamboo Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_hanging_sign","label":"Couleurs analogues: Bamboo Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_sign","label":"Couleurs analogues: Bamboo Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.953},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.936},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.871},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.858},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.819},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.819},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.952},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.926},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.886},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.849},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.849},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.892},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.874},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.788},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.767},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.721},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.712},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:bamboo_mosaic","name":"Bamboo Mosaic","entry_type":"block","description":"A bamboo mosaic is a decorative block crafted out of bamboo slabs.","history":[{"version":"1.19.3","status":"added","notes":"Added bamboo mosaics behind the \" Update 1.20 \" experimental data pack ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb bamboo mosaic, providing the bouncy/rubber ball effect to the mob."}],"colors":{"primary":"#beaa4e","dominant_hex":"#cbb44c","average_hex":"#beaa4e","hue_group":"yellow","lightness":0.5255,"saturation":0.4628,"palette":["#cbb44c","#e0c863","#b8ac4c","#9c8444","#94843c","#d4bc54"],"color_groups":[{"hex":"#cbb44c","weight":0.2305,"lightness":0.5471,"saturation":0.5498,"hue_group":"yellow"},{"hex":"#e0c863","weight":0.2188,"lightness":0.6333,"saturation":0.6684,"hue_group":"yellow"},{"hex":"#b8ac4c","weight":0.1953,"lightness":0.5098,"saturation":0.432,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.1367,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#94843c","weight":0.1133,"lightness":0.4078,"saturation":0.4231,"hue_group":"yellow"},{"hex":"#d4bc54","weight":0.1055,"lightness":0.5804,"saturation":0.5981,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_mosaic.png","family":"bamboo_mosaic","relations":[{"type":"variants","target":"minecraft:bamboo_mosaic_slab","label":"Same family: bamboo_mosaic","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_mosaic_slab","label":"Related set: bamboo_mosaic","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_mosaic_stairs","label":"Same family: bamboo_mosaic","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_mosaic_stairs","label":"Related set: bamboo_mosaic","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Palette proche: Bamboo Mosaic Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic_stairs","label":"Palette proche: Bamboo Mosaic Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.751},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.751},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.739},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.739},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.734},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.726},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.726},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.72},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.709},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.708},{"type":"color_analogous","target":"minecraft:bamboo_mosaic_slab","label":"Couleurs analogues: Bamboo Mosaic Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_mosaic_stairs","label":"Couleurs analogues: Bamboo Mosaic Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_door","label":"Couleurs analogues: Bamboo Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.954},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.938},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.873},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.86},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.821},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.821},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.957},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.957},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.957},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.921},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.881},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.845},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.844},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.895},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.879},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.783},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.768},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.768},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.762},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.716},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.707},{"type":"value_contrast","target":"minecraft:spruce_log","label":"Contraste clair sombre: Spruce Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_wood","label":"Contraste clair sombre: Spruce Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55}],"category":"natural"},{"id":"minecraft:bamboo_mosaic_slab","name":"Bamboo Mosaic Slab","entry_type":"block","description":"A bamboo mosaic slab is a decorative slab variant of bamboo mosaics that does not generate naturally and is used for building.","history":[{"version":"1.19.3","status":"added","notes":"Added bamboo mosaic slabs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#beaa4e","dominant_hex":"#cbb44c","average_hex":"#beaa4e","hue_group":"yellow","lightness":0.5255,"saturation":0.4628,"palette":["#cbb44c","#e0c863","#b8ac4c","#9c8444","#94843c","#d4bc54"],"color_groups":[{"hex":"#cbb44c","weight":0.2305,"lightness":0.5471,"saturation":0.5498,"hue_group":"yellow"},{"hex":"#e0c863","weight":0.2188,"lightness":0.6333,"saturation":0.6684,"hue_group":"yellow"},{"hex":"#b8ac4c","weight":0.1953,"lightness":0.5098,"saturation":0.432,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.1367,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#94843c","weight":0.1133,"lightness":0.4078,"saturation":0.4231,"hue_group":"yellow"},{"hex":"#d4bc54","weight":0.1055,"lightness":0.5804,"saturation":0.5981,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_mosaic.png","family":"bamboo_mosaic","relations":[{"type":"variants","target":"minecraft:bamboo_mosaic","label":"Same family: bamboo_mosaic","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_mosaic","label":"Related set: bamboo_mosaic","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_mosaic_stairs","label":"Same family: bamboo_mosaic","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_mosaic_stairs","label":"Related set: bamboo_mosaic","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic","label":"Palette proche: Bamboo Mosaic","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic_stairs","label":"Palette proche: Bamboo Mosaic Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.751},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.751},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.739},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.739},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.734},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.726},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.726},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.72},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.709},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.708},{"type":"color_analogous","target":"minecraft:bamboo_mosaic","label":"Couleurs analogues: Bamboo Mosaic","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_mosaic_stairs","label":"Couleurs analogues: Bamboo Mosaic Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_door","label":"Couleurs analogues: Bamboo Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.954},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.938},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.873},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.86},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.821},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.821},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.957},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.957},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.957},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.921},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.881},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.845},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.844},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.895},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.879},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.783},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.768},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.768},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.762},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.716},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.707},{"type":"value_contrast","target":"minecraft:spruce_log","label":"Contraste clair sombre: Spruce Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_wood","label":"Contraste clair sombre: Spruce Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55}],"category":"building"},{"id":"minecraft:bamboo_mosaic_stairs","name":"Bamboo Mosaic Stairs","entry_type":"block","description":"Bamboo mosaic stairs are a decorative stairs variant of bamboo mosaics that does not generate naturally and is used for building.","history":[{"version":"1.19.3","status":"added","notes":"Added bamboo mosaic stairs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#beaa4e","dominant_hex":"#cbb44c","average_hex":"#beaa4e","hue_group":"yellow","lightness":0.5255,"saturation":0.4628,"palette":["#cbb44c","#e0c863","#b8ac4c","#9c8444","#94843c","#d4bc54"],"color_groups":[{"hex":"#cbb44c","weight":0.2305,"lightness":0.5471,"saturation":0.5498,"hue_group":"yellow"},{"hex":"#e0c863","weight":0.2188,"lightness":0.6333,"saturation":0.6684,"hue_group":"yellow"},{"hex":"#b8ac4c","weight":0.1953,"lightness":0.5098,"saturation":0.432,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.1367,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#94843c","weight":0.1133,"lightness":0.4078,"saturation":0.4231,"hue_group":"yellow"},{"hex":"#d4bc54","weight":0.1055,"lightness":0.5804,"saturation":0.5981,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_mosaic.png","family":"bamboo_mosaic","relations":[{"type":"variants","target":"minecraft:bamboo_mosaic","label":"Same family: bamboo_mosaic","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_mosaic","label":"Related set: bamboo_mosaic","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_mosaic_slab","label":"Same family: bamboo_mosaic","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_mosaic_slab","label":"Related set: bamboo_mosaic","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic","label":"Palette proche: Bamboo Mosaic","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Palette proche: Bamboo Mosaic Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.751},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.751},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.739},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.739},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.734},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.726},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.726},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.72},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.709},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.708},{"type":"color_analogous","target":"minecraft:bamboo_mosaic","label":"Couleurs analogues: Bamboo Mosaic","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_mosaic_slab","label":"Couleurs analogues: Bamboo Mosaic Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_door","label":"Couleurs analogues: Bamboo Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.954},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.938},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.873},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.86},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.821},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.821},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.957},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.957},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.957},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.921},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.881},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.845},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.844},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.895},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.879},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.783},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.768},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.768},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.762},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.716},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.707},{"type":"value_contrast","target":"minecraft:spruce_log","label":"Contraste clair sombre: Spruce Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_wood","label":"Contraste clair sombre: Spruce Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55}],"category":"building"},{"id":"minecraft:bamboo_planks","name":"Bamboo Planks","entry_type":"block","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","history":[{"version":"rd-20090515","status":"added","notes":"Added wooden planks."},{"version":"1.2.4 release","status":"added","notes":"Added spruce, birch and jungle wood planks. They are crafted from their corresponding wood . The color of wood planks available to this point is now obtainable only from oak wood."},{"version":"18w07a","status":"added","notes":"Added stripped logs, a variant of logs , which can be used to craft wood planks."}],"colors":{"primary":"#c1ad50","dominant_hex":"#cdb74f","average_hex":"#c1ad50","hue_group":"yellow","lightness":0.5353,"saturation":0.4768,"palette":["#cdb74f","#b9ac4c","#e5ce6e","#dcc45c","#9c8444","#947c3c"],"color_groups":[{"hex":"#cdb74f","weight":0.3281,"lightness":0.5569,"saturation":0.5575,"hue_group":"yellow"},{"hex":"#b9ac4c","weight":0.168,"lightness":0.5118,"saturation":0.4378,"hue_group":"yellow"},{"hex":"#e5ce6e","weight":0.1484,"lightness":0.6647,"saturation":0.6959,"hue_group":"yellow"},{"hex":"#dcc45c","weight":0.1328,"lightness":0.6118,"saturation":0.6465,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.1133,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#947c3c","weight":0.1094,"lightness":0.4078,"saturation":0.4231,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_planks.png","family":"bamboo","relations":[{"type":"variants","target":"minecraft:bamboo","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_door","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_door","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_fence","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_fence","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_sapling","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_sapling","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_slab","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_slab","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_stairs","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_stairs","label":"Related set: bamboo","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_fence","label":"Palette proche: Bamboo Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_door","label":"Palette proche: Bamboo Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.736},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.723},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.722},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.717},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.708},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.706},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_slab","label":"Couleurs analogues: Bamboo Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_stairs","label":"Couleurs analogues: Bamboo Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_hanging_sign","label":"Couleurs analogues: Bamboo Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_sign","label":"Couleurs analogues: Bamboo Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.953},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.936},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.871},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.858},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.819},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.819},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.952},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.926},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.886},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.849},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.849},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.892},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.874},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.788},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.767},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.721},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.712},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:bamboo_pressure_plate","name":"Bamboo Pressure Plate","entry_type":"block","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","history":[{"version":"v1.0.1","status":"added","notes":"Added wooden pressure plates."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped pressure plates."},{"version":"1.19 22w11a","status":"added","notes":"Added mangrove pressure plates."}],"colors":{"primary":"#c1ad50","dominant_hex":"#cdb74f","average_hex":"#c1ad50","hue_group":"yellow","lightness":0.5353,"saturation":0.4768,"palette":["#cdb74f","#b9ac4c","#e5ce6e","#dcc45c","#9c8444","#947c3c"],"color_groups":[{"hex":"#cdb74f","weight":0.3281,"lightness":0.5569,"saturation":0.5575,"hue_group":"yellow"},{"hex":"#b9ac4c","weight":0.168,"lightness":0.5118,"saturation":0.4378,"hue_group":"yellow"},{"hex":"#e5ce6e","weight":0.1484,"lightness":0.6647,"saturation":0.6959,"hue_group":"yellow"},{"hex":"#dcc45c","weight":0.1328,"lightness":0.6118,"saturation":0.6465,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.1133,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#947c3c","weight":0.1094,"lightness":0.4078,"saturation":0.4231,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_planks.png","family":"bamboo_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_fence","label":"Palette proche: Bamboo Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_door","label":"Palette proche: Bamboo Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.736},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.723},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.722},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.717},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.708},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.706},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_slab","label":"Couleurs analogues: Bamboo Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_stairs","label":"Couleurs analogues: Bamboo Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_hanging_sign","label":"Couleurs analogues: Bamboo Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_sign","label":"Couleurs analogues: Bamboo Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.953},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.936},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.871},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.858},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.819},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.819},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.952},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.926},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.886},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.849},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.849},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.892},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.874},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.788},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.767},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.721},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.712},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:bamboo_raft","name":"Bamboo Raft","entry_type":"item","description":"Boats (including bamboo rafts) are drivable vehicle entities that can be ridden through water or at high speeds across all types of ice. Most mobs will ride nearby boats, which they cannot control or exit on their own.","history":[{"version":"v1.0.6","status":"added","notes":"Added boats."},{"version":"wiki-history","status":"added","notes":"added again."},{"version":"18w15a","status":"added","notes":"Added blue ice , which allows boats to travel even faster on it."}],"colors":{"primary":"#8c7f3e","dominant_hex":"#e0c863","average_hex":"#8c7f3e","hue_group":"yellow","lightness":0.3961,"saturation":0.3861,"palette":["#e0c863","#5d5a2d","#3c381f","#c4ac4c","#746434","#94843c"],"color_groups":[{"hex":"#e0c863","weight":0.2791,"lightness":0.6333,"saturation":0.6684,"hue_group":"yellow"},{"hex":"#5d5a2d","weight":0.2384,"lightness":0.2706,"saturation":0.3478,"hue_group":"yellow"},{"hex":"#3c381f","weight":0.1977,"lightness":0.1784,"saturation":0.3187,"hue_group":"yellow"},{"hex":"#c4ac4c","weight":0.1105,"lightness":0.5333,"saturation":0.5042,"hue_group":"yellow"},{"hex":"#746434","weight":0.093,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#94843c","weight":0.0814,"lightness":0.4078,"saturation":0.4231,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/bamboo_raft.png","family":"bamboo_raft","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:yellow_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spyglass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:poisonous_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:experience_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_hide","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_boat","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:bamboo_sapling","name":"Bamboo Sapling","entry_type":"block","description":"Bamboo is a versatile, fast-growing plant found primarily in jungles, used for crafting (particularly scaffolding and bamboo wood), smelting, and breeding pandas. A bamboo shoot is the initial non-solid sapling form of planted bamboo.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added bamboo."},{"version":"wiki-history","status":"added","notes":"Added bamboo jungles , where bamboo naturally generates."}],"colors":{"primary":"#5c5924","dominant_hex":"#543e1c","average_hex":"#5c5924","hue_group":"yellow","lightness":0.251,"saturation":0.4375,"palette":["#543e1c","#382610","#918a50","#645c1c","#3c6c0f","#549816"],"color_groups":[{"hex":"#543e1c","weight":0.2364,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"},{"hex":"#382610","weight":0.2182,"lightness":0.1412,"saturation":0.5556,"hue_group":"yellow"},{"hex":"#918a50","weight":0.2182,"lightness":0.4412,"saturation":0.2889,"hue_group":"yellow"},{"hex":"#645c1c","weight":0.1455,"lightness":0.251,"saturation":0.5625,"hue_group":"yellow"},{"hex":"#3c6c0f","weight":0.1091,"lightness":0.2412,"saturation":0.7561,"hue_group":"green"},{"hex":"#549816","weight":0.0727,"lightness":0.3412,"saturation":0.7471,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_stage0.png","family":"bamboo","relations":[{"type":"variants","target":"minecraft:bamboo","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_door","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_door","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_fence","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_fence","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_planks","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_planks","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_slab","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_slab","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_stairs","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_stairs","label":"Related set: bamboo","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:green_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rose_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sea_pickle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:podzol","label":"Palette proche: Podzol","confidence":0.813},{"type":"color_neighbors","target":"minecraft:jungle_log","label":"Palette proche: Jungle Log","confidence":0.81},{"type":"color_neighbors","target":"minecraft:jungle_wood","label":"Palette proche: Jungle Wood","confidence":0.81},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.793},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.793},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.793},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.793},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.793},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.793},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.793},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.793},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.793},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.727},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.722},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.716},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.714},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.713},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.713},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.705},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.701},{"type":"color_bridge","target":"minecraft:stonecutter","label":"Pont de nuance par palette: Stonecutter","confidence":0.7},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.696},{"type":"color_analogous","target":"minecraft:acacia_sapling","label":"Couleurs analogues: Acacia Sapling","confidence":0.937},{"type":"color_analogous","target":"minecraft:potted_acacia_sapling","label":"Couleurs analogues: Potted Acacia Sapling","confidence":0.937},{"type":"color_analogous","target":"minecraft:firefly_bush","label":"Couleurs analogues: Firefly Bush","confidence":0.922},{"type":"color_analogous","target":"minecraft:sponge","label":"Couleurs analogues: Sponge","confidence":0.917},{"type":"color_analogous","target":"minecraft:yellow_stained_glass_pane","label":"Couleurs analogues: Yellow Stained Glass Pane","confidence":0.873},{"type":"color_analogous","target":"minecraft:horn_coral_block","label":"Couleurs analogues: Horn Coral Block","confidence":0.869},{"type":"color_analogous","target":"minecraft:yellow_stained_glass","label":"Couleurs analogues: Yellow Stained Glass","confidence":0.869},{"type":"color_analogous","target":"minecraft:cocoa","label":"Couleurs analogues: Cocoa","confidence":0.865},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.952},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.926},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.925},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.776},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.738},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.71},{"type":"color_triad","target":"minecraft:beacon","label":"Harmonie triadique: Beacon","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_door","label":"Harmonie triadique: Warped Door","confidence":0.952},{"type":"color_triad","target":"minecraft:stripped_warped_hyphae","label":"Harmonie triadique: Stripped Warped Hyphae","confidence":0.95},{"type":"color_triad","target":"minecraft:stripped_warped_stem","label":"Harmonie triadique: Stripped Warped Stem","confidence":0.95},{"type":"color_triad","target":"minecraft:warped_hanging_sign","label":"Harmonie triadique: Warped Hanging Sign","confidence":0.95},{"type":"color_triad","target":"minecraft:warped_wall_hanging_sign","label":"Harmonie triadique: Warped Wall Hanging Sign","confidence":0.95},{"type":"color_triad","target":"minecraft:diamond_block","label":"Harmonie triadique: Diamond Block","confidence":0.946},{"type":"color_triad","target":"minecraft:warped_shelf","label":"Harmonie triadique: Warped Shelf","confidence":0.942},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.96},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.915},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.91},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.906},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.906},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.897},{"type":"color_square","target":"minecraft:cherry_log","label":"Harmonie carree: Cherry Log","confidence":0.851},{"type":"color_square","target":"minecraft:cherry_wood","label":"Harmonie carree: Cherry Wood","confidence":0.851},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.689},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.656},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.633},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.606},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.606},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.604},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.603},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.603}],"category":"natural"},{"id":"minecraft:bamboo_shelf","name":"Bamboo Shelf","entry_type":"block","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added shelves."},{"version":"wiki-history","status":"added","notes":"Added the align_items_to_bottom block state property, by default set to false, to display items at the bottom of the shelf rather than in the middle."}],"colors":{"primary":"#b6a44c","dominant_hex":"#ac9c44","average_hex":"#b6a44c","hue_group":"yellow","lightness":0.5059,"saturation":0.4206,"palette":["#ac9c44","#b5ac4c","#998141","#ccb64e","#e4cc6c","#dcc45c"],"color_groups":[{"hex":"#ac9c44","weight":0.3203,"lightness":0.4706,"saturation":0.4333,"hue_group":"yellow"},{"hex":"#b5ac4c","weight":0.1904,"lightness":0.5039,"saturation":0.415,"hue_group":"yellow"},{"hex":"#998141","weight":0.1738,"lightness":0.4275,"saturation":0.4037,"hue_group":"yellow"},{"hex":"#ccb64e","weight":0.1436,"lightness":0.5529,"saturation":0.5526,"hue_group":"yellow"},{"hex":"#e4cc6c","weight":0.0957,"lightness":0.6588,"saturation":0.6897,"hue_group":"yellow"},{"hex":"#dcc45c","weight":0.0762,"lightness":0.6118,"saturation":0.6465,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_shelf.png","family":"bamboo_shelf","relations":[{"type":"visual_neighbors","target":"minecraft:wet_sponge","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scaffolding","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lectern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beehive","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_trapdoor","label":"Palette proche: Bamboo Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_door","label":"Palette proche: Bamboo Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.76},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.76},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.747},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.747},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.738},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.737},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.734},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.731},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.725},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.716},{"type":"color_analogous","target":"minecraft:bamboo_mosaic","label":"Couleurs analogues: Bamboo Mosaic","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_mosaic_slab","label":"Couleurs analogues: Bamboo Mosaic Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_mosaic_stairs","label":"Couleurs analogues: Bamboo Mosaic Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_door","label":"Couleurs analogues: Bamboo Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.941},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.933},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.916},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.851},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.838},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.799},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.799},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.94},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.94},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.94},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.938},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.898},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.862},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.861},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.87},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.861},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.802},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.787},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.787},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.781},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.734},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.725},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55}],"category":"natural"},{"id":"minecraft:bamboo_sign","name":"Bamboo Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#c1ad50","dominant_hex":"#cdb74f","average_hex":"#c1ad50","hue_group":"yellow","lightness":0.5353,"saturation":0.4768,"palette":["#cdb74f","#b9ac4c","#e5ce6e","#dcc45c","#9c8444","#947c3c"],"color_groups":[{"hex":"#cdb74f","weight":0.3281,"lightness":0.5569,"saturation":0.5575,"hue_group":"yellow"},{"hex":"#b9ac4c","weight":0.168,"lightness":0.5118,"saturation":0.4378,"hue_group":"yellow"},{"hex":"#e5ce6e","weight":0.1484,"lightness":0.6647,"saturation":0.6959,"hue_group":"yellow"},{"hex":"#dcc45c","weight":0.1328,"lightness":0.6118,"saturation":0.6465,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.1133,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#947c3c","weight":0.1094,"lightness":0.4078,"saturation":0.4231,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_planks.png","family":"bamboo_sign","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_fence","label":"Palette proche: Bamboo Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_door","label":"Palette proche: Bamboo Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.736},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.723},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.722},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.717},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.708},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.706},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_slab","label":"Couleurs analogues: Bamboo Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_stairs","label":"Couleurs analogues: Bamboo Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_hanging_sign","label":"Couleurs analogues: Bamboo Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_sign","label":"Couleurs analogues: Bamboo Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.953},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.936},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.871},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.858},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.819},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.819},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.952},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.926},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.886},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.849},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.849},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.892},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.874},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.788},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.767},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.721},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.712},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:bamboo_slab","name":"Bamboo Slab","entry_type":"block","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","history":[{"version":"1.7.2 1.7","status":"added","notes":"Added acacia and dark oak slabs."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped slabs."}],"colors":{"primary":"#c1ad50","dominant_hex":"#cdb74f","average_hex":"#c1ad50","hue_group":"yellow","lightness":0.5353,"saturation":0.4768,"palette":["#cdb74f","#b9ac4c","#e5ce6e","#dcc45c","#9c8444","#947c3c"],"color_groups":[{"hex":"#cdb74f","weight":0.3281,"lightness":0.5569,"saturation":0.5575,"hue_group":"yellow"},{"hex":"#b9ac4c","weight":0.168,"lightness":0.5118,"saturation":0.4378,"hue_group":"yellow"},{"hex":"#e5ce6e","weight":0.1484,"lightness":0.6647,"saturation":0.6959,"hue_group":"yellow"},{"hex":"#dcc45c","weight":0.1328,"lightness":0.6118,"saturation":0.6465,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.1133,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#947c3c","weight":0.1094,"lightness":0.4078,"saturation":0.4231,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_planks.png","family":"bamboo","relations":[{"type":"variants","target":"minecraft:bamboo","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_door","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_door","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_fence","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_fence","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_planks","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_planks","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_sapling","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_sapling","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_stairs","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_stairs","label":"Related set: bamboo","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_fence","label":"Palette proche: Bamboo Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_door","label":"Palette proche: Bamboo Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.736},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.723},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.722},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.717},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.708},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.706},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_stairs","label":"Couleurs analogues: Bamboo Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_hanging_sign","label":"Couleurs analogues: Bamboo Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_sign","label":"Couleurs analogues: Bamboo Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.953},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.936},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.871},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.858},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.819},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.819},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.952},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.926},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.886},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.849},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.849},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.892},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.874},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.788},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.767},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.721},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.712},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:bamboo_stairs","name":"Bamboo Stairs","entry_type":"block","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","history":[{"version":"20100629","status":"added","notes":"Added \"wooden\" stairs."},{"version":"1.3.1 12w25a","status":"added","notes":"Added wooden stairs for the remaining three wood types (spruce, birch, and jungle)."},{"version":"12w26a","status":"added","notes":"Added crafting recipes for spruce, birch, and jungle wood stairs."}],"colors":{"primary":"#c1ad50","dominant_hex":"#cdb74f","average_hex":"#c1ad50","hue_group":"yellow","lightness":0.5353,"saturation":0.4768,"palette":["#cdb74f","#b9ac4c","#e5ce6e","#dcc45c","#9c8444","#947c3c"],"color_groups":[{"hex":"#cdb74f","weight":0.3281,"lightness":0.5569,"saturation":0.5575,"hue_group":"yellow"},{"hex":"#b9ac4c","weight":0.168,"lightness":0.5118,"saturation":0.4378,"hue_group":"yellow"},{"hex":"#e5ce6e","weight":0.1484,"lightness":0.6647,"saturation":0.6959,"hue_group":"yellow"},{"hex":"#dcc45c","weight":0.1328,"lightness":0.6118,"saturation":0.6465,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.1133,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#947c3c","weight":0.1094,"lightness":0.4078,"saturation":0.4231,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_planks.png","family":"bamboo","relations":[{"type":"variants","target":"minecraft:bamboo","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_door","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_door","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_fence","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_fence","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_planks","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_planks","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_sapling","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_sapling","label":"Related set: bamboo","confidence":0.8},{"type":"variants","target":"minecraft:bamboo_slab","label":"Same family: bamboo","confidence":0.75},{"type":"related_sets","target":"minecraft:bamboo_slab","label":"Related set: bamboo","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_fence","label":"Palette proche: Bamboo Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_door","label":"Palette proche: Bamboo Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.736},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.723},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.722},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.717},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.708},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.706},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_slab","label":"Couleurs analogues: Bamboo Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_hanging_sign","label":"Couleurs analogues: Bamboo Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_sign","label":"Couleurs analogues: Bamboo Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.953},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.936},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.871},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.858},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.819},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.819},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.952},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.926},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.886},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.849},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.849},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.892},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.874},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.788},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.767},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.721},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.712},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:bamboo_trapdoor","name":"Bamboo Trapdoor","entry_type":"block","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","history":[{"version":"1.6","status":"added","notes":"Added wooden trapdoors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped trapdoors."}],"colors":{"primary":"#c7b355","dominant_hex":"#e6cf70","average_hex":"#c7b355","hue_group":"yellow","lightness":0.5569,"saturation":0.5044,"palette":["#e6cf70","#d9c159","#b7ac4c","#c7b44c","#ac9c44","#9c8444"],"color_groups":[{"hex":"#e6cf70","weight":0.2547,"lightness":0.6706,"saturation":0.7024,"hue_group":"yellow"},{"hex":"#d9c159","weight":0.1981,"lightness":0.6,"saturation":0.6275,"hue_group":"yellow"},{"hex":"#b7ac4c","weight":0.1792,"lightness":0.5078,"saturation":0.4263,"hue_group":"yellow"},{"hex":"#c7b44c","weight":0.1462,"lightness":0.5392,"saturation":0.5234,"hue_group":"yellow"},{"hex":"#ac9c44","weight":0.1274,"lightness":0.4706,"saturation":0.4333,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.0943,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_trapdoor.png","family":"bamboo_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:sponge","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nest","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_door","label":"Palette proche: Bamboo Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_fence","label":"Palette proche: Bamboo Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.734},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.734},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.728},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.719},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.719},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.712},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.706},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.703},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.697},{"type":"color_bridge","target":"minecraft:jungle_leaves","label":"Pont de nuance par palette: Jungle Leaves","confidence":0.688},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_slab","label":"Couleurs analogues: Bamboo Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_stairs","label":"Couleurs analogues: Bamboo Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_hanging_sign","label":"Couleurs analogues: Bamboo Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.959},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.952},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.936},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.871},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.858},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.819},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.819},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.946},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.946},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.946},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.932},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.891},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.855},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.855},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.891},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.868},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.793},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.78},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.78},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.773},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.727},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.718},{"type":"value_contrast","target":"minecraft:dark_oak_trapdoor","label":"Contraste clair sombre: Dark Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55}],"category":"building"},{"id":"minecraft:bamboo_wall_hanging_sign","name":"Bamboo Wall Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#c1ad50","dominant_hex":"#cdb74f","average_hex":"#c1ad50","hue_group":"yellow","lightness":0.5353,"saturation":0.4768,"palette":["#cdb74f","#b9ac4c","#e5ce6e","#dcc45c","#9c8444","#947c3c"],"color_groups":[{"hex":"#cdb74f","weight":0.3281,"lightness":0.5569,"saturation":0.5575,"hue_group":"yellow"},{"hex":"#b9ac4c","weight":0.168,"lightness":0.5118,"saturation":0.4378,"hue_group":"yellow"},{"hex":"#e5ce6e","weight":0.1484,"lightness":0.6647,"saturation":0.6959,"hue_group":"yellow"},{"hex":"#dcc45c","weight":0.1328,"lightness":0.6118,"saturation":0.6465,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.1133,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#947c3c","weight":0.1094,"lightness":0.4078,"saturation":0.4231,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_planks.png","family":"bamboo_wall_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_fence","label":"Palette proche: Bamboo Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_door","label":"Palette proche: Bamboo Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.736},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.723},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.722},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.717},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.708},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.706},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_slab","label":"Couleurs analogues: Bamboo Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_stairs","label":"Couleurs analogues: Bamboo Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_sign","label":"Couleurs analogues: Bamboo Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.953},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.936},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.871},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.858},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.819},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.819},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.952},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.926},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.886},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.849},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.849},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.892},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.874},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.788},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.767},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.721},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.712},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:bamboo_wall_sign","name":"Bamboo Wall Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#c1ad50","dominant_hex":"#cdb74f","average_hex":"#c1ad50","hue_group":"yellow","lightness":0.5353,"saturation":0.4768,"palette":["#cdb74f","#b9ac4c","#e5ce6e","#dcc45c","#9c8444","#947c3c"],"color_groups":[{"hex":"#cdb74f","weight":0.3281,"lightness":0.5569,"saturation":0.5575,"hue_group":"yellow"},{"hex":"#b9ac4c","weight":0.168,"lightness":0.5118,"saturation":0.4378,"hue_group":"yellow"},{"hex":"#e5ce6e","weight":0.1484,"lightness":0.6647,"saturation":0.6959,"hue_group":"yellow"},{"hex":"#dcc45c","weight":0.1328,"lightness":0.6118,"saturation":0.6465,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.1133,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#947c3c","weight":0.1094,"lightness":0.4078,"saturation":0.4231,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bamboo_planks.png","family":"bamboo_wall_sign","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_bamboo_block","label":"Palette proche: Stripped Bamboo Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_fence","label":"Palette proche: Bamboo Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_door","label":"Palette proche: Bamboo Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.736},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.723},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.722},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.717},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.708},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.706},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_slab","label":"Couleurs analogues: Bamboo Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_stairs","label":"Couleurs analogues: Bamboo Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_hanging_sign","label":"Couleurs analogues: Bamboo Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.953},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.936},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.871},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.858},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.819},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.819},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.952},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.926},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.886},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.849},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.849},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.892},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.874},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.788},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.767},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.721},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.712},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:barrel","name":"Barrel","entry_type":"block","description":"A barrel is a solid block used to store items. Unlike a chest, it cannot connect to other barrels. It also serves as a fisherman's job site block.","history":[{"version":"1.14 18w44a","status":"added","notes":"Added barrels."},{"version":"wiki-history","status":"added","notes":"added to the Creative inventory ."},{"version":"19w03a","status":"added","notes":"added for barrels."}],"colors":{"primary":"#87653a","dominant_hex":"#9c7444","average_hex":"#87653a","hue_group":"yellow","lightness":0.3784,"saturation":0.399,"palette":["#9c7444","#8c643c","#6c5435","#845c34","#644c2c","#7c7c7c"],"color_groups":[{"hex":"#9c7444","weight":0.3555,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#8c643c","weight":0.25,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#6c5435","weight":0.1602,"lightness":0.3157,"saturation":0.3416,"hue_group":"yellow"},{"hex":"#845c34","weight":0.1602,"lightness":0.3608,"saturation":0.4348,"hue_group":"red"},{"hex":"#644c2c","weight":0.0625,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c7c7c","weight":0.0117,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/barrel_top.png","family":"barrel","relations":[{"type":"visual_neighbors","target":"minecraft:ladder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dirt_path","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_wall_sign","label":"Palette proche: Spruce Wall Sign","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.92},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.896},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.896},{"type":"color_bridge","target":"minecraft:iron_ore","label":"Pont de nuance par sous-ton: Iron Ore","confidence":0.882},{"type":"color_bridge","target":"minecraft:stonecutter","label":"Pont de nuance par palette: Stonecutter","confidence":0.86},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.842},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.833},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.833},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.826},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.824},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.824},{"type":"color_analogous","target":"minecraft:sniffer_egg","label":"Couleurs analogues: Sniffer Egg","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_button","label":"Couleurs analogues: Spruce Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence","label":"Couleurs analogues: Spruce Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence_gate","label":"Couleurs analogues: Spruce Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_planks","label":"Couleurs analogues: Spruce Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_pressure_plate","label":"Couleurs analogues: Spruce Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_sign","label":"Couleurs analogues: Spruce Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_slab","label":"Couleurs analogues: Spruce Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.845},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.819},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.786},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.769},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.762},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.754},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.958},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.956},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.95},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.95},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.96},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.957},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.933},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.933},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.928},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.927},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.882},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.573},{"type":"value_contrast","target":"minecraft:suspicious_sand","label":"Contraste clair sombre: Suspicious Sand","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone","label":"Contraste clair sombre: Cut Sandstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:sand","label":"Contraste clair sombre: Sand","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle","label":"Contraste clair sombre: Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone_slab","label":"Contraste clair sombre: Cut Sandstone Slab","confidence":0.55}],"category":"utility"},{"id":"minecraft:barrier","name":"Barrier","entry_type":"block","description":"A barrier is an invisible block used to create solid boundaries.","history":[{"version":"1.8 14w05a","status":"added","notes":"Added barriers."},{"version":"wiki-history","status":"added","notes":"added to the particle command . With this, the player can now see where there are barriers."}],"colors":{"primary":"#d50000","dominant_hex":"#e40404","average_hex":"#d50000","hue_group":"red","lightness":0.4176,"saturation":1.0,"palette":["#e40404","#b40404","#bc0404"],"color_groups":[{"hex":"#e40404","weight":0.678,"lightness":0.4549,"saturation":0.9655,"hue_group":"red"},{"hex":"#b40404","weight":0.1949,"lightness":0.3608,"saturation":0.9565,"hue_group":"red"},{"hex":"#bc0404","weight":0.1271,"lightness":0.3765,"saturation":0.9583,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/barrier.png","family":"barrier","relations":[{"type":"visual_neighbors","target":"minecraft:orange_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:redstone_block","label":"Palette proche: Redstone Block","confidence":0.858},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.792},{"type":"color_neighbors","target":"minecraft:weeping_vines","label":"Palette proche: Weeping Vines","confidence":0.786},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.774},{"type":"color_neighbors","target":"minecraft:red_mushroom_block","label":"Palette proche: Red Mushroom Block","confidence":0.75},{"type":"color_neighbors","target":"minecraft:orange_concrete","label":"Palette proche: Orange Concrete","confidence":0.746},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.735},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.735},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.728},{"type":"color_neighbors","target":"minecraft:potted_crimson_roots","label":"Palette proche: Potted Crimson Roots","confidence":0.727},{"type":"color_neighbors","target":"minecraft:crimson_roots","label":"Palette proche: Crimson Roots","confidence":0.724},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.719},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.696},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.656},{"type":"color_bridge","target":"minecraft:yellow_concrete","label":"Pont de nuance par palette: Yellow Concrete","confidence":0.58},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.58},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.58},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.58},{"type":"color_analogous","target":"minecraft:red_mushroom_block","label":"Couleurs analogues: Red Mushroom Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete","label":"Couleurs analogues: Red Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete_powder","label":"Couleurs analogues: Red Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass","label":"Couleurs analogues: Red Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_nylium","label":"Couleurs analogues: Crimson Nylium","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass_pane","label":"Couleurs analogues: Red Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_terracotta","label":"Couleurs analogues: Pink Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.96},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.956},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.948},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.919},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.919},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.904},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.915},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.914},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.881},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.871},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.871},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.854},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.828},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.793},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.959},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.959},{"type":"color_square","target":"minecraft:lime_shulker_box","label":"Harmonie carree: Lime Shulker Box","confidence":0.948},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.946},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.937},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.933},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.933},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_sign","label":"Contraste clair sombre: Cherry Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_slab","label":"Contraste clair sombre: Cherry Slab","confidence":0.55}],"category":"technical"},{"id":"minecraft:basalt","name":"Basalt","entry_type":"block","description":"Basalt is a block found in the Nether.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added basalt."},{"version":"20w15a","status":"added","notes":"Added the basalt deltas , a biome in which basalt is abundant."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb basalt, providing the football/regular effect to the mob."}],"colors":{"primary":"#49494e","dominant_hex":"#4c4c4c","average_hex":"#49494e","hue_group":"neutral","lightness":0.2961,"saturation":0.0331,"palette":["#4c4c4c","#5c5c5c","#3c3c4c","#34343c","#1c2434"],"color_groups":[{"hex":"#4c4c4c","weight":0.3711,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.293,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c4c","weight":0.1523,"lightness":0.2667,"saturation":0.1176,"hue_group":"neutral"},{"hex":"#34343c","weight":0.1367,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#1c2434","weight":0.0469,"lightness":0.1569,"saturation":0.3,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/basalt_side.png","family":"basalt","relations":[{"type":"visual_neighbors","target":"minecraft:smooth_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_basalt","label":"Palette proche: Polished Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:smooth_basalt","label":"Pont de nuance par palette: Smooth Basalt","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_basalt","label":"Pont de nuance par palette: Polished Basalt","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.649},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.627},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.626},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.626},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.616},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.593},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.59},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.59}],"category":"natural"},{"id":"minecraft:bat","name":"Bat","entry_type":"mob","description":"A bat is a flying passive mob that spawns in dark areas. It is the only ambient mob in the game, intended to complement the game's atmospheric settings.","history":[{"version":"1.4.2 12w38a","status":"added","notes":"Added bats."},{"version":"1.4","status":"added","notes":"Added sounds : entity.bat.ambient , entity.bat.hurt , entity.bat.death , entity.bat.takeoff ."}],"colors":{"primary":"#2e2724","dominant_hex":"#24241c","average_hex":"#2e2724","hue_group":"red","lightness":0.1608,"saturation":0.122,"palette":["#24241c","#1b1414","#342c24","#44342c","#6e5b65","#1c1c1c"],"color_groups":[{"hex":"#24241c","weight":0.3088,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#1b1414","weight":0.2324,"lightness":0.0922,"saturation":0.1489,"hue_group":"red"},{"hex":"#342c24","weight":0.2118,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#44342c","weight":0.1471,"lightness":0.2196,"saturation":0.2143,"hue_group":"red"},{"hex":"#6e5b65","weight":0.0647,"lightness":0.3941,"saturation":0.0945,"hue_group":"neutral"},{"hex":"#1c1c1c","weight":0.0353,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/bat.png","family":"bat","relations":[{"type":"visual_neighbors","target":"minecraft:spider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:bat_spawn_egg","name":"Bat Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#201a1a","dominant_hex":"#312a24","average_hex":"#201a1a","hue_group":"neutral","lightness":0.1137,"saturation":0.1034,"palette":["#312a24","#0c0c0c","#1c1515","#040404","#6a4c5f","#140c0c"],"color_groups":[{"hex":"#312a24","weight":0.2955,"lightness":0.1667,"saturation":0.1529,"hue_group":"red"},{"hex":"#0c0c0c","weight":0.2879,"lightness":0.0471,"saturation":0.0,"hue_group":"neutral"},{"hex":"#1c1515","weight":0.1667,"lightness":0.0961,"saturation":0.1429,"hue_group":"red"},{"hex":"#040404","weight":0.1061,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6a4c5f","weight":0.0909,"lightness":0.3569,"saturation":0.1648,"hue_group":"purple"},{"hex":"#140c0c","weight":0.053,"lightness":0.0627,"saturation":0.25,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/bat_spawn_egg.png","family":"bat_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:ender_dragon_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rib_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coal","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mellohi","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:beacon","name":"Beacon","entry_type":"block","description":"A beacon is a block that can be placed in view of the sky, on top of a pyramid made of valuable mineral blocks, to activate it. Once active, it projects a beam upward and can be set to provide constant status effects to all players in a radius around it. A beacon's range and available effects depend on the size of its pyramid base, between one and four layers.","history":[{"version":"1.4.2 12w32a","status":"added","notes":"Added a block named \"Work in Progress\"."}],"colors":{"primary":"#76ddd7","dominant_hex":"#2cccc4","average_hex":"#76ddd7","hue_group":"cyan","lightness":0.6647,"saturation":0.6023,"palette":["#2cccc4","#c5f3f6","#4cd4cc","#fafcfc","#2cbcb4","#6ce4dc"],"color_groups":[{"hex":"#2cccc4","weight":0.2344,"lightness":0.4863,"saturation":0.6452,"hue_group":"cyan"},{"hex":"#c5f3f6","weight":0.2266,"lightness":0.8686,"saturation":0.7313,"hue_group":"cyan"},{"hex":"#4cd4cc","weight":0.1875,"lightness":0.5647,"saturation":0.6126,"hue_group":"cyan"},{"hex":"#fafcfc","weight":0.1328,"lightness":0.9843,"saturation":0.25,"hue_group":"cyan"},{"hex":"#2cbcb4","weight":0.125,"lightness":0.4549,"saturation":0.6207,"hue_group":"cyan"},{"hex":"#6ce4dc","weight":0.0938,"lightness":0.6588,"saturation":0.6897,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/beacon.png","family":"beacon","relations":[{"type":"visual_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_fire","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:diamond_block","label":"Palette proche: Diamond Block","confidence":0.75},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.749},{"type":"color_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Palette proche: Light Blue Concrete Powder","confidence":0.726},{"type":"color_neighbors","target":"minecraft:soul_fire","label":"Palette proche: Soul Fire","confidence":0.702},{"type":"color_neighbors","target":"minecraft:light_blue_carpet","label":"Palette proche: Light Blue Carpet","confidence":0.695},{"type":"color_neighbors","target":"minecraft:light_blue_wool","label":"Palette proche: Light Blue Wool","confidence":0.695},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.683},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.677},{"type":"color_neighbors","target":"minecraft:stripped_warped_stem","label":"Palette proche: Stripped Warped Stem","confidence":0.677},{"type":"color_neighbors","target":"minecraft:warped_hanging_sign","label":"Palette proche: Warped Hanging Sign","confidence":0.677},{"type":"color_neighbors","target":"minecraft:warped_wall_hanging_sign","label":"Palette proche: Warped Wall Hanging Sign","confidence":0.677},{"type":"color_neighbors","target":"minecraft:light_blue_shulker_box","label":"Palette proche: Light Blue Shulker Box","confidence":0.669},{"type":"color_bridge","target":"minecraft:sea_lantern","label":"Pont de nuance par sous-ton: Sea Lantern","confidence":0.651},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par sous-ton: White Shulker Box","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.624},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par sous-ton: White Carpet","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par sous-ton: White Wool","confidence":0.58},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par sous-ton: Cobweb","confidence":0.58},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.58},{"type":"color_analogous","target":"minecraft:diamond_block","label":"Couleurs analogues: Diamond Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine","label":"Couleurs analogues: Prismarine","confidence":0.928},{"type":"color_analogous","target":"minecraft:prismarine_slab","label":"Couleurs analogues: Prismarine Slab","confidence":0.928},{"type":"color_analogous","target":"minecraft:prismarine_stairs","label":"Couleurs analogues: Prismarine Stairs","confidence":0.928},{"type":"color_analogous","target":"minecraft:prismarine_wall","label":"Couleurs analogues: Prismarine Wall","confidence":0.928},{"type":"color_analogous","target":"minecraft:warped_shelf","label":"Couleurs analogues: Warped Shelf","confidence":0.916},{"type":"color_analogous","target":"minecraft:warped_door","label":"Couleurs analogues: Warped Door","confidence":0.915},{"type":"color_analogous","target":"minecraft:stripped_warped_hyphae","label":"Couleurs analogues: Stripped Warped Hyphae","confidence":0.914},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_hyphae","label":"Contraste complementaire: Crimson Hyphae","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_stem","label":"Contraste complementaire: Crimson Stem","confidence":0.96},{"type":"color_complement","target":"minecraft:black_glazed_terracotta","label":"Contraste complementaire: Black Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.934},{"type":"color_triad","target":"minecraft:turtle_egg","label":"Harmonie triadique: Turtle Egg","confidence":0.913},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.885},{"type":"color_triad","target":"minecraft:potted_acacia_sapling","label":"Harmonie triadique: Potted Acacia Sapling","confidence":0.885},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.884},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.857},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.856},{"type":"color_square","target":"minecraft:lime_concrete_powder","label":"Harmonie carree: Lime Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:orange_tulip","label":"Harmonie carree: Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_orange_tulip","label":"Harmonie carree: Potted Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:oak_sapling","label":"Harmonie carree: Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_oak_sapling","label":"Harmonie carree: Potted Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:lime_stained_glass","label":"Harmonie carree: Lime Stained Glass","confidence":0.957},{"type":"color_square","target":"minecraft:large_amethyst_bud","label":"Harmonie carree: Large Amethyst Bud","confidence":0.954},{"type":"color_square","target":"minecraft:lime_stained_glass_pane","label":"Harmonie carree: Lime Stained Glass Pane","confidence":0.951},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.561},{"type":"value_contrast","target":"minecraft:warped_wart_block","label":"Contraste clair sombre: Warped Wart Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_button","label":"Contraste clair sombre: Warped Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_fence","label":"Contraste clair sombre: Warped Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_fence_gate","label":"Contraste clair sombre: Warped Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_planks","label":"Contraste clair sombre: Warped Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_pressure_plate","label":"Contraste clair sombre: Warped Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_sign","label":"Contraste clair sombre: Warped Sign","confidence":0.55}],"category":"utility"},{"id":"minecraft:bedrock","name":"Bedrock","entry_type":"block","description":"Bedrock is an indestructible block found in all three dimensions.","history":[{"version":"wiki-history","status":"added","notes":"Added bedrock."},{"version":"wiki-history","status":"added","notes":"Added End crystals , which are entities that sit atop a block of flaming bedrock."}],"colors":{"primary":"#555555","dominant_hex":"#343434","average_hex":"#555555","hue_group":"neutral","lightness":0.3333,"saturation":0.0,"palette":["#343434","#545454","#949494","#646464","#242424"],"color_groups":[{"hex":"#343434","weight":0.3438,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.2305,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1914,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#646464","weight":0.1641,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.0703,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bedrock.png","family":"bedrock","relations":[{"type":"visual_neighbors","target":"minecraft:blast_furnace","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_copper_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:observer","label":"Palette proche: Observer","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dropper","label":"Palette proche: Dropper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_leaves","label":"Palette proche: Spruce Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Palette proche: Cracked Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.94},{"type":"color_bridge","target":"minecraft:observer","label":"Pont de nuance par palette: Observer","confidence":0.86},{"type":"color_bridge","target":"minecraft:dropper","label":"Pont de nuance par palette: Dropper","confidence":0.86},{"type":"color_bridge","target":"minecraft:dispenser","label":"Pont de nuance par palette: Dispenser","confidence":0.86},{"type":"color_bridge","target":"minecraft:spruce_leaves","label":"Pont de nuance par palette: Spruce Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:damaged_anvil","label":"Pont de nuance par palette: Damaged Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_bricks","label":"Pont de nuance par palette: Cracked Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.633},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.599},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.577},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.572},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.571},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.571},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.571},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.571}],"category":"technical"},{"id":"minecraft:bee","name":"Bee","entry_type":"mob","description":"A bee is a flying arthropodan neutral mob that lives in a bee nest or beehive, and fills it with harvestable honey using nectar it gathers from flowers. Attacking a bee, or interfering with its home without proper precautions, causes it and all nearby bees to attack using their stingers. If a bee attacks something, it will lose its stinger and eventually die.","history":[{"version":"1.15 19w34a","status":"added","notes":"Added bees and baby bees."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby bees from growing up."}],"colors":{"primary":"#926d3d","dominant_hex":"#edc050","average_hex":"#926d3d","hue_group":"yellow","lightness":0.4059,"saturation":0.4106,"palette":["#edc050","#5a3224","#3b231f","#a76429","#151512","#ecf5ee"],"color_groups":[{"hex":"#edc050","weight":0.314,"lightness":0.6216,"saturation":0.8135,"hue_group":"yellow"},{"hex":"#5a3224","weight":0.1977,"lightness":0.2471,"saturation":0.4286,"hue_group":"red"},{"hex":"#3b231f","weight":0.1698,"lightness":0.1765,"saturation":0.3111,"hue_group":"red"},{"hex":"#a76429","weight":0.1442,"lightness":0.4078,"saturation":0.6058,"hue_group":"red"},{"hex":"#151512","weight":0.1047,"lightness":0.0765,"saturation":0.0769,"hue_group":"neutral"},{"hex":"#ecf5ee","weight":0.0698,"lightness":0.9431,"saturation":0.3103,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/bee/bee.png","family":"bee","relations":[{"type":"visual_neighbors","target":"minecraft:happy_ghast_ropes","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/cold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:bee_angry","name":"Bee Angry","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#996e3c","dominant_hex":"#4d2b21","average_hex":"#996e3c","hue_group":"yellow","lightness":0.4176,"saturation":0.4366,"palette":["#4d2b21","#f3cb55","#aa4c22","#d89b40","#14140c","#f4f8ef"],"color_groups":[{"hex":"#4d2b21","weight":0.3488,"lightness":0.2157,"saturation":0.4,"hue_group":"red"},{"hex":"#f3cb55","weight":0.2349,"lightness":0.6431,"saturation":0.8681,"hue_group":"yellow"},{"hex":"#aa4c22","weight":0.1442,"lightness":0.4,"saturation":0.6667,"hue_group":"red"},{"hex":"#d89b40","weight":0.1163,"lightness":0.549,"saturation":0.6609,"hue_group":"yellow"},{"hex":"#14140c","weight":0.086,"lightness":0.0627,"saturation":0.25,"hue_group":"yellow"},{"hex":"#f4f8ef","weight":0.0698,"lightness":0.9549,"saturation":0.3913,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/bee/bee_angry.png","family":"bee_angry","relations":[{"type":"visual_neighbors","target":"minecraft:bee","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_ropes","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/cold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:bee_angry_nectar","name":"Bee Angry Nectar","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#a67b49","dominant_hex":"#ebbe58","average_hex":"#a67b49","hue_group":"yellow","lightness":0.4686,"saturation":0.3891,"palette":["#ebbe58","#ae582b","#5a3224","#3b231e","#f4e8d6","#14140c"],"color_groups":[{"hex":"#ebbe58","weight":0.3465,"lightness":0.6333,"saturation":0.7861,"hue_group":"yellow"},{"hex":"#ae582b","weight":0.1814,"lightness":0.4255,"saturation":0.6037,"hue_group":"red"},{"hex":"#5a3224","weight":0.1512,"lightness":0.2471,"saturation":0.4286,"hue_group":"red"},{"hex":"#3b231e","weight":0.1233,"lightness":0.1745,"saturation":0.3258,"hue_group":"red"},{"hex":"#f4e8d6","weight":0.1209,"lightness":0.898,"saturation":0.5769,"hue_group":"yellow"},{"hex":"#14140c","weight":0.0767,"lightness":0.0627,"saturation":0.25,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/bee/bee_angry_nectar.png","family":"bee_angry_nectar","relations":[{"type":"visual_neighbors","target":"minecraft:bee_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_ropes","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/cold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:bee_nectar","name":"Bee Nectar","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#9e7a49","dominant_hex":"#ebbe58","average_hex":"#9e7a49","hue_group":"yellow","lightness":0.4529,"saturation":0.368,"palette":["#ebbe58","#a8662d","#5a3224","#3a2421","#f0e7d5","#161612"],"color_groups":[{"hex":"#ebbe58","weight":0.3372,"lightness":0.6333,"saturation":0.7861,"hue_group":"yellow"},{"hex":"#a8662d","weight":0.1535,"lightness":0.4176,"saturation":0.5775,"hue_group":"red"},{"hex":"#5a3224","weight":0.1512,"lightness":0.2471,"saturation":0.4286,"hue_group":"red"},{"hex":"#3a2421","weight":0.1419,"lightness":0.1784,"saturation":0.2747,"hue_group":"red"},{"hex":"#f0e7d5","weight":0.1209,"lightness":0.8882,"saturation":0.4737,"hue_group":"yellow"},{"hex":"#161612","weight":0.0953,"lightness":0.0784,"saturation":0.1,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/bee/bee_nectar.png","family":"bee_nectar","relations":[{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_ropes","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/cold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:bee_nest","name":"Bee Nest","entry_type":"block","description":"Bee nests are blocks found attached to certain trees. They house bees, which fill their homes with honey made from gathered flower nectar. Full bee nests can be harvested for honeycombs (using shears) or honey bottles (using glass bottles). Bees will attack players who harvest or break their homes without utilizing campfires or Silk Touch, respectively.","history":[{"version":"1.15 19w34a","status":"added","notes":"Added bee nests."}],"colors":{"primary":"#caa04b","dominant_hex":"#fcdc74","average_hex":"#caa04b","hue_group":"yellow","lightness":0.5431,"saturation":0.5451,"palette":["#fcdc74","#f4cc44","#7c542c","#a46c34","#cc8444"],"color_groups":[{"hex":"#fcdc74","weight":0.3047,"lightness":0.7216,"saturation":0.9577,"hue_group":"yellow"},{"hex":"#f4cc44","weight":0.2383,"lightness":0.6118,"saturation":0.8889,"hue_group":"yellow"},{"hex":"#7c542c","weight":0.2148,"lightness":0.3294,"saturation":0.4762,"hue_group":"yellow"},{"hex":"#a46c34","weight":0.207,"lightness":0.4235,"saturation":0.5185,"hue_group":"red"},{"hex":"#cc8444","weight":0.0352,"lightness":0.5333,"saturation":0.5714,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bee_nest_top.png","family":"bee_nest","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sponge","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:glowstone","label":"Palette proche: Glowstone","confidence":0.861},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.83},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.826},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.825},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.825},{"type":"color_neighbors","target":"minecraft:scaffolding","label":"Palette proche: Scaffolding","confidence":0.813},{"type":"color_neighbors","target":"minecraft:glow_item_frame","label":"Palette proche: Glow Item Frame","confidence":0.802},{"type":"color_neighbors","target":"minecraft:jack_o_lantern","label":"Palette proche: Jack O Lantern","confidence":0.789},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.785},{"type":"color_neighbors","target":"minecraft:bell","label":"Palette proche: Bell","confidence":0.785},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.777},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.774},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.701},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.699},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.665},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.665},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.663},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.659},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.657},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.656},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.656},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.656},{"type":"color_analogous","target":"minecraft:pitcher_crop","label":"Couleurs analogues: Pitcher Crop","confidence":0.96},{"type":"color_analogous","target":"minecraft:raw_gold_block","label":"Couleurs analogues: Raw Gold Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:short_dry_grass","label":"Couleurs analogues: Short Dry Grass","confidence":0.96},{"type":"color_analogous","target":"minecraft:tall_dry_grass","label":"Couleurs analogues: Tall Dry Grass","confidence":0.96},{"type":"color_analogous","target":"minecraft:honey_block","label":"Couleurs analogues: Honey Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_concrete","label":"Couleurs analogues: Yellow Concrete","confidence":0.953},{"type":"color_analogous","target":"minecraft:oak_hanging_sign","label":"Couleurs analogues: Oak Hanging Sign","confidence":0.952},{"type":"color_analogous","target":"minecraft:oak_wall_hanging_sign","label":"Couleurs analogues: Oak Wall Hanging Sign","confidence":0.952},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.96},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.921},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.914},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.894},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.893},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.886},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.86},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.849},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.947},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.947},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.945},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.945},{"type":"color_triad","target":"minecraft:purple_concrete_powder","label":"Harmonie triadique: Purple Concrete Powder","confidence":0.891},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.891},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.946},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.784},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.782},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.778},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.778},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.754},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.75},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.716},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":""},{"id":"minecraft:bee_spawn_egg","name":"Bee Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#ad874d","dominant_hex":"#eec64a","average_hex":"#ad874d","hue_group":"yellow","lightness":0.4902,"saturation":0.384,"palette":["#eec64a","#532d22","#d89645","#f4f7ed","#a76124","#1e160e"],"color_groups":[{"hex":"#eec64a","weight":0.2453,"lightness":0.6118,"saturation":0.8283,"hue_group":"yellow"},{"hex":"#532d22","weight":0.1792,"lightness":0.2294,"saturation":0.4188,"hue_group":"red"},{"hex":"#d89645","weight":0.1698,"lightness":0.5588,"saturation":0.6533,"hue_group":"yellow"},{"hex":"#f4f7ed","weight":0.1509,"lightness":0.949,"saturation":0.3846,"hue_group":"yellow"},{"hex":"#a76124","weight":0.1321,"lightness":0.398,"saturation":0.6453,"hue_group":"red"},{"hex":"#1e160e","weight":0.1226,"lightness":0.0863,"saturation":0.3636,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/bee_spawn_egg.png","family":"bee_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:totem_of_undying","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone_dust","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:experience_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_foot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spyglass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_nugget","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clock","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_hide","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:beef","name":"Beef","entry_type":"item","description":"Raw beef is a food item that can be eaten by the player or cooked in a furnace, smoker, or campfire to make steak.","history":[{"version":"1.8","status":"added","notes":"Added raw beef."}],"colors":{"primary":"#b73c34","dominant_hex":"#e77568","average_hex":"#b73c34","hue_group":"red","lightness":0.4608,"saturation":0.5574,"palette":["#e77568","#ac1c14","#e43c34","#e4544c","#440c04","#7c1414"],"color_groups":[{"hex":"#e77568","weight":0.2315,"lightness":0.6569,"saturation":0.7257,"hue_group":"red"},{"hex":"#ac1c14","weight":0.213,"lightness":0.3765,"saturation":0.7917,"hue_group":"red"},{"hex":"#e43c34","weight":0.1667,"lightness":0.549,"saturation":0.7652,"hue_group":"red"},{"hex":"#e4544c","weight":0.1574,"lightness":0.5961,"saturation":0.7379,"hue_group":"red"},{"hex":"#440c04","weight":0.1481,"lightness":0.1412,"saturation":0.8889,"hue_group":"red"},{"hex":"#7c1414","weight":0.0833,"lightness":0.2824,"saturation":0.7222,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/beef.png","family":"beef","relations":[{"type":"related_sets","target":"group:food","label":"Related set: food","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:glistering_melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chestplate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"food"},{"id":"minecraft:beehive","name":"Beehive","entry_type":"block","description":"Beehives are craftable blocks that house bees, which fill their homes with honey made from gathered flower nectar. Full beehives can be harvested for honeycombs (using shears) or honey bottles (using glass bottles). Bees will attack players who harvest or break their homes without utilizing campfires or Silk Touch, respectively.","history":[{"version":"1.15 19w34a","status":"added","notes":"Added bee hives."}],"colors":{"primary":"#b5925a","dominant_hex":"#bc945c","average_hex":"#b5925a","hue_group":"yellow","lightness":0.5314,"saturation":0.3808,"palette":["#bc945c","#c49c64","#ac8c54","#9c844c","#947444"],"color_groups":[{"hex":"#bc945c","weight":0.3477,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.293,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1953,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#9c844c","weight":0.1055,"lightness":0.4549,"saturation":0.3448,"hue_group":"yellow"},{"hex":"#947444","weight":0.0586,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/beehive_end.png","family":"beehive","relations":[{"type":"visual_neighbors","target":"minecraft:chiseled_bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lectern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_hanging_sign","label":"Palette proche: Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Palette proche: Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_oak_log","label":"Palette proche: Stripped Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_oak_wood","label":"Palette proche: Stripped Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.853},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.836},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.835},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.829},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.825},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.825},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.823},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.823},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.822},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.799},{"type":"color_analogous","target":"minecraft:chiseled_bookshelf","label":"Couleurs analogues: Chiseled Bookshelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_hanging_sign","label":"Couleurs analogues: Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wall_hanging_sign","label":"Couleurs analogues: Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_oak_log","label":"Couleurs analogues: Stripped Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_oak_wood","label":"Couleurs analogues: Stripped Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:lectern","label":"Couleurs analogues: Lectern","confidence":0.96},{"type":"color_analogous","target":"minecraft:scaffolding","label":"Couleurs analogues: Scaffolding","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.931},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.898},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.881},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.87},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.866},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.853},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.91},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.91},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.908},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.906},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.904},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.888},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.871},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.82},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55}],"category":""},{"id":"minecraft:beetroot","name":"Beetroot","entry_type":"item","description":"A beetroot is a food and dye ingredient.","history":[{"version":"wiki","status":"observed","notes":"Wiki revision 3514998 at 2026-04-03T09:22:33Z."}],"colors":{"primary":"#892c2a","dominant_hex":"#5c1c14","average_hex":"#892c2a","hue_group":"red","lightness":0.351,"saturation":0.5307,"palette":["#5c1c14","#74140c","#a4242c","#b44c4c","#8c2c2c","#cc898f"],"color_groups":[{"hex":"#5c1c14","weight":0.2609,"lightness":0.2196,"saturation":0.6429,"hue_group":"red"},{"hex":"#74140c","weight":0.2029,"lightness":0.251,"saturation":0.8125,"hue_group":"red"},{"hex":"#a4242c","weight":0.1884,"lightness":0.3922,"saturation":0.64,"hue_group":"red"},{"hex":"#b44c4c","weight":0.1739,"lightness":0.502,"saturation":0.4094,"hue_group":"red"},{"hex":"#8c2c2c","weight":0.1304,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"},{"hex":"#cc898f","weight":0.0435,"lightness":0.6686,"saturation":0.3964,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/beetroot.png","family":"beetroot","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:beetroot_seeds","name":"Beetroot Seeds","entry_type":"item","description":"Beetroot seeds are items that can be used to plant beetroot crops. Beetroot crops are planted in farmland and used to grow beetroot and beetroot seeds.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added beetroot seeds."},{"version":"wiki-history","status":"added","notes":"Added beetroot crops."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell beetroot seeds."}],"colors":{"primary":"#876e48","dominant_hex":"#54442c","average_hex":"#876e48","hue_group":"yellow","lightness":0.4059,"saturation":0.3043,"palette":["#54442c","#846c4c","#dcb474"],"color_groups":[{"hex":"#54442c","weight":0.4091,"lightness":0.251,"saturation":0.3125,"hue_group":"yellow"},{"hex":"#846c4c","weight":0.3485,"lightness":0.4078,"saturation":0.2692,"hue_group":"yellow"},{"hex":"#dcb474","weight":0.2424,"lightness":0.6588,"saturation":0.5977,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/beetroot_seeds.png","family":"beetroot_seeds","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:birch_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_hide","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spyglass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armor_stand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_foot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:beetroot_soup","name":"Beetroot Soup","entry_type":"item","description":"Beetroot soup is an unstackable food item.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added beetroot soup."}],"colors":{"primary":"#58290e","dominant_hex":"#3c2a0b","average_hex":"#58290e","hue_group":"red","lightness":0.2,"saturation":0.7255,"palette":["#3c2a0b","#49370c","#971c19","#1c1404","#744c0c","#6c1414"],"color_groups":[{"hex":"#3c2a0b","weight":0.2162,"lightness":0.1392,"saturation":0.6901,"hue_group":"yellow"},{"hex":"#49370c","weight":0.2027,"lightness":0.1667,"saturation":0.7176,"hue_group":"yellow"},{"hex":"#971c19","weight":0.2027,"lightness":0.3451,"saturation":0.7159,"hue_group":"red"},{"hex":"#1c1404","weight":0.1622,"lightness":0.0627,"saturation":0.75,"hue_group":"yellow"},{"hex":"#744c0c","weight":0.1216,"lightness":0.251,"saturation":0.8125,"hue_group":"yellow"},{"hex":"#6c1414","weight":0.0946,"lightness":0.251,"saturation":0.6875,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/beetroot_soup.png","family":"beetroot_soup","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:fermented_spider_eye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_eye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cube_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rotten_flesh","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:apple","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_stew","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa_beans","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:saddle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berries","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:beetroots","name":"Beetroots","entry_type":"block","description":"A beetroot is a food and dye ingredient.","history":[{"version":"wiki","status":"observed","notes":"Wiki revision 3514998 at 2026-04-03T09:22:33Z."}],"colors":{"primary":"#428a29","dominant_hex":"#4c8c2c","average_hex":"#428a29","hue_group":"green","lightness":0.351,"saturation":0.5419,"palette":["#4c8c2c","#54ac2c","#246424","#2c742c"],"color_groups":[{"hex":"#4c8c2c","weight":0.4,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#54ac2c","weight":0.2667,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#246424","weight":0.2,"lightness":0.2667,"saturation":0.4706,"hue_group":"green"},{"hex":"#2c742c","weight":0.1333,"lightness":0.3137,"saturation":0.45,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/beetroots_stage0.png","family":"beetroots","relations":[{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sunflower","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:emerald_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.94},{"type":"color_neighbors","target":"minecraft:carrots","label":"Palette proche: Carrots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.928},{"type":"color_neighbors","target":"minecraft:kelp","label":"Palette proche: Kelp","confidence":0.828},{"type":"color_neighbors","target":"minecraft:kelp_plant","label":"Palette proche: Kelp Plant","confidence":0.81},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.804},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.787},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.787},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.78},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.78},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.772},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.772},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.792},{"type":"color_bridge","target":"minecraft:poppy","label":"Pont de nuance par palette: Poppy","confidence":0.709},{"type":"color_bridge","target":"minecraft:potted_poppy","label":"Pont de nuance par palette: Potted Poppy","confidence":0.709},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.702},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.702},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.696},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.696},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.682},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.682},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Trapdoor","confidence":0.659},{"type":"color_analogous","target":"minecraft:sunflower","label":"Couleurs analogues: Sunflower","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_white_tulip","label":"Couleurs analogues: Potted White Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:white_tulip","label":"Couleurs analogues: White Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_tulip","label":"Couleurs analogues: Pink Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_pink_tulip","label":"Couleurs analogues: Potted Pink Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:potatoes","label":"Couleurs analogues: Potatoes","confidence":0.923},{"type":"color_analogous","target":"minecraft:slime_block","label":"Couleurs analogues: Slime Block","confidence":0.882},{"type":"color_analogous","target":"minecraft:test_block","label":"Couleurs analogues: Test Block","confidence":0.876},{"type":"color_complement","target":"minecraft:magenta_stained_glass","label":"Contraste complementaire: Magenta Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.947},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.759},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.73},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.73},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.706},{"type":"color_complement","target":"minecraft:purple_shulker_box","label":"Contraste complementaire: Purple Shulker Box","confidence":0.649},{"type":"color_complement","target":"minecraft:purple_candle","label":"Contraste complementaire: Purple Candle","confidence":0.641},{"type":"color_triad","target":"minecraft:tube_coral_fan","label":"Harmonie triadique: Tube Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:tube_coral_wall_fan","label":"Harmonie triadique: Tube Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:tube_coral_block","label":"Harmonie triadique: Tube Coral Block","confidence":0.954},{"type":"color_triad","target":"minecraft:tube_coral","label":"Harmonie triadique: Tube Coral","confidence":0.942},{"type":"color_triad","target":"minecraft:potted_crimson_roots","label":"Harmonie triadique: Potted Crimson Roots","confidence":0.928},{"type":"color_triad","target":"minecraft:black_concrete","label":"Harmonie triadique: Black Concrete","confidence":0.916},{"type":"color_triad","target":"minecraft:crimson_roots","label":"Harmonie triadique: Crimson Roots","confidence":0.903},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.877},{"type":"color_square","target":"minecraft:copper_chain","label":"Harmonie carree: Copper Chain","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_chain","label":"Harmonie carree: Waxed Copper Chain","confidence":0.96},{"type":"color_square","target":"minecraft:chiseled_copper","label":"Harmonie carree: Chiseled Copper","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_chiseled_copper","label":"Harmonie carree: Waxed Chiseled Copper","confidence":0.96},{"type":"color_square","target":"minecraft:copper_block","label":"Harmonie carree: Copper Block","confidence":0.96},{"type":"color_square","target":"minecraft:copper_chest","label":"Harmonie carree: Copper Chest","confidence":0.96},{"type":"color_square","target":"minecraft:copper_golem_statue","label":"Harmonie carree: Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_block","label":"Harmonie carree: Waxed Copper Block","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.584},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55}],"category":"natural"},{"id":"minecraft:bell","name":"Bell","entry_type":"block","description":"A bell is a block that can be rung by hand, with a projectile or using a redstone signal to make all nearby villagers run to their beds. In Java Edition, this also reveals all illager-related mobs in a large radius. It can be found in villages or purchased from villagers, and cannot be crafted.","history":[{"version":"1.14 18w44a","status":"added","notes":"Added bells, with \" floor \", \" wall \" and \" ceiling \" attachments. The \" wall \" attachment is inaccessible, and has no model ."},{"version":"wiki-history","status":"added","notes":"Added sounds for bells."},{"version":"19w03a","status":"added","notes":"added to bell model ."}],"colors":{"primary":"#bd942a","dominant_hex":"#7c5c0c","average_hex":"#bd942a","hue_group":"yellow","lightness":0.4529,"saturation":0.6364,"palette":["#7c5c0c","#f4bc4c","#fcdc5c","#8c6c0c","#ecb414","#ac8424"],"color_groups":[{"hex":"#7c5c0c","weight":0.3125,"lightness":0.2667,"saturation":0.8235,"hue_group":"yellow"},{"hex":"#f4bc4c","weight":0.2656,"lightness":0.6275,"saturation":0.8842,"hue_group":"yellow"},{"hex":"#fcdc5c","weight":0.1406,"lightness":0.6745,"saturation":0.9639,"hue_group":"yellow"},{"hex":"#8c6c0c","weight":0.125,"lightness":0.298,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#ecb414","weight":0.0938,"lightness":0.502,"saturation":0.8504,"hue_group":"yellow"},{"hex":"#ac8424","weight":0.0625,"lightness":0.4078,"saturation":0.6538,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bell_bottom.png","family":"bell","relations":[{"type":"visual_neighbors","target":"minecraft:lime_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hay_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jack_o_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jack_o_lantern","label":"Palette proche: Jack O Lantern","confidence":0.854},{"type":"color_neighbors","target":"minecraft:yellow_concrete","label":"Palette proche: Yellow Concrete","confidence":0.846},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.828},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.823},{"type":"color_neighbors","target":"minecraft:yellow_wool","label":"Palette proche: Yellow Wool","confidence":0.823},{"type":"color_neighbors","target":"minecraft:yellow_shulker_box","label":"Palette proche: Yellow Shulker Box","confidence":0.82},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.816},{"type":"color_neighbors","target":"minecraft:yellow_candle","label":"Palette proche: Yellow Candle","confidence":0.814},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.802},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.802},{"type":"color_neighbors","target":"minecraft:pumpkin","label":"Palette proche: Pumpkin","confidence":0.801},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.8},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.669},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.636},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.636},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.627},{"type":"color_bridge","target":"minecraft:weeping_vines_plant","label":"Pont de nuance par palette: Weeping Vines Plant","confidence":0.612},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.591},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.591},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.587},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.58},{"type":"color_analogous","target":"minecraft:yellow_candle","label":"Couleurs analogues: Yellow Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_concrete","label":"Couleurs analogues: Yellow Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_shulker_box","label":"Couleurs analogues: Yellow Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_shelf","label":"Couleurs analogues: Birch Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:fletching_table","label":"Couleurs analogues: Fletching Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:raw_gold_block","label":"Couleurs analogues: Raw Gold Block","confidence":0.953},{"type":"color_analogous","target":"minecraft:yellow_glazed_terracotta","label":"Couleurs analogues: Yellow Glazed Terracotta","confidence":0.95},{"type":"color_analogous","target":"minecraft:birch_hanging_sign","label":"Couleurs analogues: Birch Hanging Sign","confidence":0.95},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.953},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.922},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.909},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.897},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.828},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.835},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.835},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.82},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.82},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.818},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.818},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.839},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.837},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.81},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.648},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.647},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.642},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.642},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.617},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55}],"category":"utility"},{"id":"minecraft:big_dripleaf","name":"Big Dripleaf","entry_type":"block","description":"A big dripleaf is a plant that generates within lush caves. Its leaf is a temporary platform; when stood on, it tilts down and drops its burden, resetting a few seconds later. The leaf can be powered to prevent it from tilting.","history":[{"version":"1.17 21w05a","status":"added","notes":"Added big dripleaves."}],"colors":{"primary":"#708e34","dominant_hex":"#84ac3c","average_hex":"#708e34","hue_group":"yellow","lightness":0.3804,"saturation":0.4639,"palette":["#84ac3c","#74942c","#6c8434","#44542c","#546c2c","#9cc444"],"color_groups":[{"hex":"#84ac3c","weight":0.3664,"lightness":0.4549,"saturation":0.4828,"hue_group":"yellow"},{"hex":"#74942c","weight":0.2241,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"},{"hex":"#6c8434","weight":0.1509,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#44542c","weight":0.1207,"lightness":0.251,"saturation":0.3125,"hue_group":"yellow"},{"hex":"#546c2c","weight":0.0991,"lightness":0.298,"saturation":0.4211,"hue_group":"yellow"},{"hex":"#9cc444","weight":0.0388,"lightness":0.5176,"saturation":0.5203,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/big_dripleaf_top.png","family":"big_dripleaf","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cactus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.938},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.936},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.936},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.896},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.896},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.893},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.891},{"type":"color_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Palette proche: Flowering Azalea Leaves","confidence":0.87},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.714},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.714},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.714},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.714},{"type":"color_bridge","target":"minecraft:pitcher_crop","label":"Pont de nuance par palette: Pitcher Crop","confidence":0.702},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.688},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.685},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.685},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par sous-ton: Infested Mossy Stone Bricks","confidence":0.683},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par sous-ton: Mossy Stone Brick Slab","confidence":0.683},{"type":"color_analogous","target":"minecraft:green_stained_glass","label":"Couleurs analogues: Green Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass_pane","label":"Couleurs analogues: Green Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:azalea_leaves","label":"Couleurs analogues: Azalea Leaves","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_glazed_terracotta","label":"Couleurs analogues: Green Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:big_dripleaf_stem","label":"Couleurs analogues: Big Dripleaf Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:small_dripleaf","label":"Couleurs analogues: Small Dripleaf","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.953},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.897},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.897},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.897},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.897},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.888},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.87},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.869},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.91},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.895},{"type":"color_triad","target":"minecraft:soul_lantern","label":"Harmonie triadique: Soul Lantern","confidence":0.892},{"type":"color_triad","target":"minecraft:light_blue_concrete","label":"Harmonie triadique: Light Blue Concrete","confidence":0.873},{"type":"color_triad","target":"minecraft:light_blue_glazed_terracotta","label":"Harmonie triadique: Light Blue Glazed Terracotta","confidence":0.871},{"type":"color_triad","target":"minecraft:cornflower","label":"Harmonie triadique: Cornflower","confidence":0.86},{"type":"color_square","target":"minecraft:cactus_flower","label":"Harmonie carree: Cactus Flower","confidence":0.96},{"type":"color_square","target":"minecraft:chiseled_nether_bricks","label":"Harmonie carree: Chiseled Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.958},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.952},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.952},{"type":"color_square","target":"minecraft:nether_brick_stairs","label":"Harmonie carree: Nether Brick Stairs","confidence":0.952},{"type":"color_square","target":"minecraft:nether_brick_wall","label":"Harmonie carree: Nether Brick Wall","confidence":0.952},{"type":"color_square","target":"minecraft:nether_bricks","label":"Harmonie carree: Nether Bricks","confidence":0.952},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.562},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone","label":"Contraste clair sombre: Cut Sandstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone_slab","label":"Contraste clair sombre: Cut Sandstone Slab","confidence":0.55}],"category":"natural"},{"id":"minecraft:big_dripleaf_stem","name":"Big Dripleaf Stem","entry_type":"block","description":"A big dripleaf is a plant that generates within lush caves. Its leaf is a temporary platform; when stood on, it tilts down and drops its burden, resetting a few seconds later. The leaf can be powered to prevent it from tilting.","history":[{"version":"1.17 21w05a","status":"added","notes":"Added big dripleaves."}],"colors":{"primary":"#5b732e","dominant_hex":"#6c8434","average_hex":"#5b732e","hue_group":"yellow","lightness":0.3157,"saturation":0.4286,"palette":["#6c8434","#546c2c","#44542c","#74942c"],"color_groups":[{"hex":"#6c8434","weight":0.3095,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#546c2c","weight":0.2976,"lightness":0.298,"saturation":0.4211,"hue_group":"yellow"},{"hex":"#44542c","weight":0.2143,"lightness":0.251,"saturation":0.3125,"hue_group":"yellow"},{"hex":"#74942c","weight":0.1786,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/big_dripleaf_stem.png","family":"big_dripleaf_stem","relations":[{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.94},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.921},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.92},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.917},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.914},{"type":"color_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Palette proche: Flowering Azalea Leaves","confidence":0.894},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.711},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.711},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.711},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.711},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.7},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.696},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par sous-ton: Infested Mossy Stone Bricks","confidence":0.671},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par sous-ton: Mossy Stone Brick Slab","confidence":0.671},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par sous-ton: Mossy Stone Brick Stairs","confidence":0.671},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par sous-ton: Mossy Stone Brick Wall","confidence":0.671},{"type":"color_analogous","target":"minecraft:small_dripleaf","label":"Couleurs analogues: Small Dripleaf","confidence":0.96},{"type":"color_analogous","target":"minecraft:azalea_leaves","label":"Couleurs analogues: Azalea Leaves","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass_pane","label":"Couleurs analogues: Green Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass","label":"Couleurs analogues: Green Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:big_dripleaf","label":"Couleurs analogues: Big Dripleaf","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_glazed_terracotta","label":"Couleurs analogues: Green Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.921},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.902},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.893},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.872},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.872},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.872},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.872},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.948},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.941},{"type":"color_triad","target":"minecraft:soul_lantern","label":"Harmonie triadique: Soul Lantern","confidence":0.928},{"type":"color_triad","target":"minecraft:light_blue_concrete","label":"Harmonie triadique: Light Blue Concrete","confidence":0.904},{"type":"color_triad","target":"minecraft:light_blue_glazed_terracotta","label":"Harmonie triadique: Light Blue Glazed Terracotta","confidence":0.902},{"type":"color_triad","target":"minecraft:cornflower","label":"Harmonie triadique: Cornflower","confidence":0.896},{"type":"color_triad","target":"minecraft:potted_cornflower","label":"Harmonie triadique: Potted Cornflower","confidence":0.896},{"type":"color_square","target":"minecraft:twisting_vines","label":"Harmonie carree: Twisting Vines","confidence":0.96},{"type":"color_square","target":"minecraft:cactus_flower","label":"Harmonie carree: Cactus Flower","confidence":0.96},{"type":"color_square","target":"minecraft:chiseled_nether_bricks","label":"Harmonie carree: Chiseled Nether Bricks","confidence":0.938},{"type":"color_square","target":"minecraft:nether_sprouts","label":"Harmonie carree: Nether Sprouts","confidence":0.936},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.921},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.918},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.918},{"type":"color_square","target":"minecraft:nether_brick_stairs","label":"Harmonie carree: Nether Brick Stairs","confidence":0.918},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.624},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.591},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.569},{"type":"value_contrast","target":"minecraft:oxeye_daisy","label":"Contraste clair sombre: Oxeye Daisy","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_oxeye_daisy","label":"Contraste clair sombre: Potted Oxeye Daisy","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55}],"category":"natural"},{"id":"minecraft:big_sea_turtle","name":"Big Sea Turtle","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#75945b","dominant_hex":"#33873f","average_hex":"#75945b","hue_group":"green","lightness":0.4686,"saturation":0.2385,"palette":["#33873f","#948c64","#ac9c74","#848c54","#cdd495","#c4b484"],"color_groups":[{"hex":"#33873f","weight":0.4099,"lightness":0.3647,"saturation":0.4516,"hue_group":"green"},{"hex":"#948c64","weight":0.1993,"lightness":0.4863,"saturation":0.1935,"hue_group":"yellow"},{"hex":"#ac9c74","weight":0.1291,"lightness":0.5647,"saturation":0.2523,"hue_group":"yellow"},{"hex":"#848c54","weight":0.0947,"lightness":0.4392,"saturation":0.25,"hue_group":"yellow"},{"hex":"#cdd495","weight":0.0842,"lightness":0.7078,"saturation":0.4228,"hue_group":"yellow"},{"hex":"#c4b484","weight":0.0828,"lightness":0.6431,"saturation":0.3516,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/turtle/big_sea_turtle.png","family":"big_sea_turtle","relations":[{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_fox","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_fox_sleep","label":"Shared hue group: green","confidence":0.55}],"category":"mob"},{"id":"minecraft:birch_boat","name":"Birch Boat","entry_type":"item","description":"Boats (including bamboo rafts) are drivable vehicle entities that can be ridden through water or at high speeds across all types of ice. Most mobs will ride nearby boats, which they cannot control or exit on their own.","history":[{"version":"v1.0.6","status":"added","notes":"Added boats."},{"version":"wiki-history","status":"added","notes":"added again."},{"version":"18w15a","status":"added","notes":"Added blue ice , which allows boats to travel even faster on it."}],"colors":{"primary":"#9b8d62","dominant_hex":"#564c38","average_hex":"#9b8d62","hue_group":"yellow","lightness":0.4961,"saturation":0.2253,"palette":["#564c38","#d9d191","#84744c","#ccb47c","#9c8c64","#ac9c64"],"color_groups":[{"hex":"#564c38","weight":0.2424,"lightness":0.2784,"saturation":0.2113,"hue_group":"yellow"},{"hex":"#d9d191","weight":0.2303,"lightness":0.7098,"saturation":0.4865,"hue_group":"yellow"},{"hex":"#84744c","weight":0.2,"lightness":0.4078,"saturation":0.2692,"hue_group":"yellow"},{"hex":"#ccb47c","weight":0.1273,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"},{"hex":"#9c8c64","weight":0.1091,"lightness":0.502,"saturation":0.2205,"hue_group":"yellow"},{"hex":"#ac9c64","weight":0.0909,"lightness":0.5333,"saturation":0.3025,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/birch_boat.png","family":"birch_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:pufferfish_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_foot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:painting","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_porkchop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trader_llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:birch_button","name":"Birch Button","entry_type":"block","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added wooden buttons. They are currently uncraftable."},{"version":"12w34b","status":"added","notes":"Added crafting recipe for wooden buttons. Recipe"},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped buttons."}],"colors":{"primary":"#c0af79","dominant_hex":"#d4c484","average_hex":"#c0af79","hue_group":"yellow","lightness":0.6137,"saturation":0.3604,"palette":["#d4c484","#ccb47c","#bcac74","#a7976b","#d4cc8c","#9c8c64"],"color_groups":[{"hex":"#d4c484","weight":0.2031,"lightness":0.6745,"saturation":0.4819,"hue_group":"yellow"},{"hex":"#ccb47c","weight":0.1875,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"},{"hex":"#bcac74","weight":0.1836,"lightness":0.5961,"saturation":0.3495,"hue_group":"yellow"},{"hex":"#a7976b","weight":0.1641,"lightness":0.5373,"saturation":0.2542,"hue_group":"yellow"},{"hex":"#d4cc8c","weight":0.1484,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#9c8c64","weight":0.1133,"lightness":0.502,"saturation":0.2205,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_planks.png","family":"birch_button","relations":[{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_shelf","label":"Palette proche: Birch Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_log","label":"Palette proche: Stripped Birch Log","confidence":0.94},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.81},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.801},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.791},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.78},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.779},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.778},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_planks","label":"Couleurs analogues: Birch Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_pressure_plate","label":"Couleurs analogues: Birch Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sign","label":"Couleurs analogues: Birch Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_slab","label":"Couleurs analogues: Birch Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_stairs","label":"Couleurs analogues: Birch Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_sign","label":"Couleurs analogues: Birch Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.912},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.899},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.895},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.904},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.886},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.884},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.863},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.772},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.766},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.959},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.913},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.705},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.623},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.602},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.555},{"type":"value_contrast","target":"minecraft:mangrove_log","label":"Contraste clair sombre: Mangrove Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_wood","label":"Contraste clair sombre: Mangrove Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bamboo_sapling","label":"Contraste clair sombre: Bamboo Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_roots","label":"Contraste clair sombre: Mangrove Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_hanging_sign","label":"Contraste clair sombre: Dark Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wall_hanging_sign","label":"Contraste clair sombre: Dark Oak Wall Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_log","label":"Contraste clair sombre: Stripped Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_wood","label":"Contraste clair sombre: Stripped Dark Oak Wood","confidence":0.55}],"category":"building"},{"id":"minecraft:birch_chest_boat","name":"Birch Chest Boat","entry_type":"item","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#857247","dominant_hex":"#937438","average_hex":"#857247","hue_group":"yellow","lightness":0.4,"saturation":0.3039,"palette":["#937438","#d9d191","#3d3427","#635333","#32200c","#c3ad75"],"color_groups":[{"hex":"#937438","weight":0.2759,"lightness":0.398,"saturation":0.4483,"hue_group":"yellow"},{"hex":"#d9d191","weight":0.1897,"lightness":0.7098,"saturation":0.4865,"hue_group":"yellow"},{"hex":"#3d3427","weight":0.1609,"lightness":0.1961,"saturation":0.22,"hue_group":"yellow"},{"hex":"#635333","weight":0.1609,"lightness":0.2941,"saturation":0.32,"hue_group":"yellow"},{"hex":"#32200c","weight":0.1092,"lightness":0.1216,"saturation":0.6129,"hue_group":"yellow"},{"hex":"#c3ad75","weight":0.1034,"lightness":0.6118,"saturation":0.3939,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/birch_chest_boat.png","family":"birch_chest_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:beetroot_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_hide","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armor_stand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spyglass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_foot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:birch_door","name":"Birch Door","entry_type":"block","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","history":[{"version":"20100607","status":"added","notes":"Added wooden doors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"18w49a","status":"added","notes":"Added snowy tundra villages, which generate with spruce doors."}],"colors":{"primary":"#dcd2b0","dominant_hex":"#f1f1dc","average_hex":"#dcd2b0","hue_group":"yellow","lightness":0.7765,"saturation":0.386,"palette":["#f1f1dc","#d3c788","#98865b","#ded6a6","#ece4d4","#fcf5e4"],"color_groups":[{"hex":"#f1f1dc","weight":0.2578,"lightness":0.9039,"saturation":0.4286,"hue_group":"yellow"},{"hex":"#d3c788","weight":0.1719,"lightness":0.6804,"saturation":0.4601,"hue_group":"yellow"},{"hex":"#98865b","weight":0.168,"lightness":0.4765,"saturation":0.251,"hue_group":"yellow"},{"hex":"#ded6a6","weight":0.1523,"lightness":0.7608,"saturation":0.459,"hue_group":"yellow"},{"hex":"#ece4d4","weight":0.1328,"lightness":0.8784,"saturation":0.3871,"hue_group":"yellow"},{"hex":"#fcf5e4","weight":0.1172,"lightness":0.9412,"saturation":0.8,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_door_top.png","family":"birch","relations":[{"type":"variants","target":"minecraft:birch_fence","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_fence","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_leaves","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_leaves","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_log","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_log","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_planks","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_planks","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_sapling","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_sapling","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_slab","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_slab","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_stairs","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_stairs","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_wood","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_wood","label":"Related set: birch","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:turtle_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_trapdoor","label":"Palette proche: Birch Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.873},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.867},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.867},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.867},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.867},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Palette proche: Smooth Sandstone Slab","confidence":0.867},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Palette proche: Smooth Sandstone Stairs","confidence":0.867},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.863},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.863},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.863},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.858},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.763},{"type":"color_bridge","target":"minecraft:target","label":"Pont de nuance par palette: Target","confidence":0.738},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.728},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.722},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.717},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.71},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.698},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.698},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.696},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.692},{"type":"color_analogous","target":"minecraft:sand","label":"Couleurs analogues: Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:suspicious_sand","label":"Couleurs analogues: Suspicious Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone","label":"Couleurs analogues: Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_wall","label":"Couleurs analogues: Sandstone Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_sandstone","label":"Couleurs analogues: Chiseled Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.951},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.951},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.95},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.938},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.926},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.922},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.911},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.911},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.902},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.912},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.912},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.912},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.893},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.878},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.858},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.803},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.762},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.96},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.946},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.677},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.655},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.641},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.641},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.634},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.588},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.659},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.629},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.628},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.625},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.616},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.616},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.601},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.599}],"category":"building"},{"id":"minecraft:birch_fence","name":"Birch Fence","entry_type":"block","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","history":[{"version":"20100629","status":"added","notes":"added to the game. There are three defined states: north-south, east-west and a cross. These models are currently unused."},{"version":"v1.0.17","status":"added","notes":"Added fences."},{"version":"1.8","status":"added","notes":"Added villages and strongholds , where wooden fences naturally generate."}],"colors":{"primary":"#c0af79","dominant_hex":"#d4c484","average_hex":"#c0af79","hue_group":"yellow","lightness":0.6137,"saturation":0.3604,"palette":["#d4c484","#ccb47c","#bcac74","#a7976b","#d4cc8c","#9c8c64"],"color_groups":[{"hex":"#d4c484","weight":0.2031,"lightness":0.6745,"saturation":0.4819,"hue_group":"yellow"},{"hex":"#ccb47c","weight":0.1875,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"},{"hex":"#bcac74","weight":0.1836,"lightness":0.5961,"saturation":0.3495,"hue_group":"yellow"},{"hex":"#a7976b","weight":0.1641,"lightness":0.5373,"saturation":0.2542,"hue_group":"yellow"},{"hex":"#d4cc8c","weight":0.1484,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#9c8c64","weight":0.1133,"lightness":0.502,"saturation":0.2205,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_planks.png","family":"birch","relations":[{"type":"variants","target":"minecraft:birch_door","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_door","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_leaves","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_leaves","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_log","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_log","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_planks","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_planks","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_sapling","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_sapling","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_slab","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_slab","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_stairs","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_stairs","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_wood","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_wood","label":"Related set: birch","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_shelf","label":"Palette proche: Birch Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_log","label":"Palette proche: Stripped Birch Log","confidence":0.94},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.81},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.801},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.791},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.78},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.779},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.778},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_planks","label":"Couleurs analogues: Birch Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_pressure_plate","label":"Couleurs analogues: Birch Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sign","label":"Couleurs analogues: Birch Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_slab","label":"Couleurs analogues: Birch Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_stairs","label":"Couleurs analogues: Birch Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_sign","label":"Couleurs analogues: Birch Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.912},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.899},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.895},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.904},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.886},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.884},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.863},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.772},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.766},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.959},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.913},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.705},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.623},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.602},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.555},{"type":"value_contrast","target":"minecraft:mangrove_log","label":"Contraste clair sombre: Mangrove Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_wood","label":"Contraste clair sombre: Mangrove Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bamboo_sapling","label":"Contraste clair sombre: Bamboo Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_roots","label":"Contraste clair sombre: Mangrove Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_hanging_sign","label":"Contraste clair sombre: Dark Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wall_hanging_sign","label":"Contraste clair sombre: Dark Oak Wall Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_log","label":"Contraste clair sombre: Stripped Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_wood","label":"Contraste clair sombre: Stripped Dark Oak Wood","confidence":0.55}],"category":"building"},{"id":"minecraft:birch_fence_gate","name":"Birch Fence Gate","entry_type":"block","description":"A fence gate is a block that shares the functions of both the door and the fence.","history":[{"version":"Pre-release","status":"added","notes":"Added fence gates."},{"version":"14w32b","status":"added","notes":"Added spruce, birch, jungle, acacia, and dark oak fence gates."},{"version":"18w49a","status":"added","notes":"added snowy tundra villages."}],"colors":{"primary":"#c0af79","dominant_hex":"#d4c484","average_hex":"#c0af79","hue_group":"yellow","lightness":0.6137,"saturation":0.3604,"palette":["#d4c484","#ccb47c","#bcac74","#a7976b","#d4cc8c","#9c8c64"],"color_groups":[{"hex":"#d4c484","weight":0.2031,"lightness":0.6745,"saturation":0.4819,"hue_group":"yellow"},{"hex":"#ccb47c","weight":0.1875,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"},{"hex":"#bcac74","weight":0.1836,"lightness":0.5961,"saturation":0.3495,"hue_group":"yellow"},{"hex":"#a7976b","weight":0.1641,"lightness":0.5373,"saturation":0.2542,"hue_group":"yellow"},{"hex":"#d4cc8c","weight":0.1484,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#9c8c64","weight":0.1133,"lightness":0.502,"saturation":0.2205,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_planks.png","family":"birch_fence_gate","relations":[{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_shelf","label":"Palette proche: Birch Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_log","label":"Palette proche: Stripped Birch Log","confidence":0.94},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.81},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.801},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.791},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.78},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.779},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.778},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_planks","label":"Couleurs analogues: Birch Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_pressure_plate","label":"Couleurs analogues: Birch Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sign","label":"Couleurs analogues: Birch Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_slab","label":"Couleurs analogues: Birch Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_stairs","label":"Couleurs analogues: Birch Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_sign","label":"Couleurs analogues: Birch Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.912},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.899},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.895},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.904},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.886},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.884},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.863},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.772},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.766},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.959},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.913},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.705},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.623},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.602},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.555},{"type":"value_contrast","target":"minecraft:mangrove_log","label":"Contraste clair sombre: Mangrove Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_wood","label":"Contraste clair sombre: Mangrove Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bamboo_sapling","label":"Contraste clair sombre: Bamboo Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_roots","label":"Contraste clair sombre: Mangrove Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_hanging_sign","label":"Contraste clair sombre: Dark Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wall_hanging_sign","label":"Contraste clair sombre: Dark Oak Wall Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_log","label":"Contraste clair sombre: Stripped Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_wood","label":"Contraste clair sombre: Stripped Dark Oak Wood","confidence":0.55}],"category":"building"},{"id":"minecraft:birch_hanging_sign","name":"Birch Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#c5b076","dominant_hex":"#d0bf84","average_hex":"#c5b076","hue_group":"yellow","lightness":0.6176,"saturation":0.4051,"palette":["#d0bf84","#c4ad74","#bca971","#cbb47b","#b49e66","#ccbc7c"],"color_groups":[{"hex":"#d0bf84","weight":0.2148,"lightness":0.6667,"saturation":0.4471,"hue_group":"yellow"},{"hex":"#c4ad74","weight":0.1914,"lightness":0.6118,"saturation":0.404,"hue_group":"yellow"},{"hex":"#bca971","weight":0.1836,"lightness":0.5902,"saturation":0.3589,"hue_group":"yellow"},{"hex":"#cbb47b","weight":0.1719,"lightness":0.6392,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#b49e66","weight":0.1211,"lightness":0.5529,"saturation":0.3421,"hue_group":"yellow"},{"hex":"#ccbc7c","weight":0.1172,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_birch_log.png","family":"birch_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_log","label":"Palette proche: Stripped Birch Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_wood","label":"Palette proche: Stripped Birch Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.94},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.814},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.794},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.781},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.754},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.743},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.741},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.741},{"type":"color_analogous","target":"minecraft:birch_wall_hanging_sign","label":"Couleurs analogues: Birch Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_log","label":"Couleurs analogues: Stripped Birch Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_wood","label":"Couleurs analogues: Stripped Birch Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_planks","label":"Couleurs analogues: Birch Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_pressure_plate","label":"Couleurs analogues: Birch Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.95},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.928},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.918},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.863},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.851},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.848},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.949},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.823},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.823},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.821},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.821},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.821},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.808},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.89},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.851},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.775},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.615},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.615},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.613},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.609},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.593},{"type":"value_contrast","target":"minecraft:firefly_bush","label":"Contraste clair sombre: Firefly Bush","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_log","label":"Contraste clair sombre: Mangrove Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_wood","label":"Contraste clair sombre: Mangrove Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bamboo_sapling","label":"Contraste clair sombre: Bamboo Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_log","label":"Contraste clair sombre: Jungle Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_wood","label":"Contraste clair sombre: Jungle Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55}],"category":"building"},{"id":"minecraft:birch_leaves","name":"Birch Leaves","entry_type":"block","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","history":[{"version":"0.0.14a","status":"added","notes":"Added leaves."},{"version":"1.2","status":"added","notes":"Added spruce and birch leaves, which are colored #619961 and #80a755 respectively, and do not vary across biomes."},{"version":"1.7","status":"added","notes":"Added shears , which collect leaves. Before, leaves could be obtained only via inventory editing."}],"colors":{"primary":"#838182","dominant_hex":"#746c74","average_hex":"#838182","hue_group":"neutral","lightness":0.5098,"saturation":0.008,"palette":["#746c74","#8c8484","#9c9c9c","#b4bcb4"],"color_groups":[{"hex":"#746c74","weight":0.4583,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#8c8484","weight":0.2986,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.1875,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4bcb4","weight":0.0556,"lightness":0.7216,"saturation":0.0563,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_leaves.png","family":"birch","relations":[{"type":"variants","target":"minecraft:birch_door","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_door","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_fence","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_fence","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_log","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_log","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_planks","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_planks","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_sapling","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_sapling","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_slab","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_slab","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_stairs","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_stairs","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_wood","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_wood","label":"Related set: birch","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mangrove_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tripwire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gravel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_leaves","label":"Palette proche: Dark Oak Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_leaves","label":"Palette proche: Jungle Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_leaves","label":"Palette proche: Oak Leaves","confidence":0.923},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.921},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.921},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.921},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.921},{"type":"color_neighbors","target":"minecraft:stone_bricks","label":"Palette proche: Stone Bricks","confidence":0.921},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.913},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.913},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.901},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.901},{"type":"color_bridge","target":"minecraft:dark_oak_leaves","label":"Pont de nuance par palette: Dark Oak Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:jungle_leaves","label":"Pont de nuance par palette: Jungle Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:oak_leaves","label":"Pont de nuance par palette: Oak Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_stairs","label":"Pont de nuance par palette: Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_wall","label":"Pont de nuance par palette: Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_bricks","label":"Pont de nuance par palette: Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55}],"category":"natural"},{"id":"minecraft:birch_log","name":"Birch Log","entry_type":"block","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","history":[{"version":"0.0.14a","status":"added","notes":"Added wood."},{"version":"1.2","status":"added","notes":"Added spruce and birch wood."},{"version":"wiki-history","status":"added","notes":"Added \"Getting Wood\" achievement for picking up a wood item ."}],"colors":{"primary":"#d9d7d2","dominant_hex":"#f3edec","average_hex":"#d9d7d2","hue_group":"neutral","lightness":0.8373,"saturation":0.0843,"palette":["#f3edec","#fcfcfc","#d8d8c8","#dcd4d4","#645c54","#34342c"],"color_groups":[{"hex":"#f3edec","weight":0.2812,"lightness":0.9392,"saturation":0.2258,"hue_group":"red"},{"hex":"#fcfcfc","weight":0.2617,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d8d8c8","weight":0.25,"lightness":0.8157,"saturation":0.1702,"hue_group":"yellow"},{"hex":"#dcd4d4","weight":0.0898,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#645c54","weight":0.0703,"lightness":0.3608,"saturation":0.087,"hue_group":"neutral"},{"hex":"#34342c","weight":0.0469,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_log.png","family":"birch","relations":[{"type":"variants","target":"minecraft:birch_door","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_door","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_fence","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_fence","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_leaves","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_leaves","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_planks","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_planks","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_sapling","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_sapling","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_slab","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_slab","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_stairs","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_stairs","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_wood","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_wood","label":"Related set: birch","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:birch_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobweb","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_wood","label":"Palette proche: Birch Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.865},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.852},{"type":"color_neighbors","target":"minecraft:redstone_wire","label":"Palette proche: Redstone Wire","confidence":0.844},{"type":"color_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Palette proche: Pale Oak Trapdoor","confidence":0.836},{"type":"color_neighbors","target":"minecraft:pale_oak_door","label":"Palette proche: Pale Oak Door","confidence":0.832},{"type":"color_neighbors","target":"minecraft:white_stained_glass_pane","label":"Palette proche: White Stained Glass Pane","confidence":0.831},{"type":"color_neighbors","target":"minecraft:white_stained_glass","label":"Palette proche: White Stained Glass","confidence":0.824},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.819},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.819},{"type":"color_neighbors","target":"minecraft:chiseled_quartz_block","label":"Palette proche: Chiseled Quartz Block","confidence":0.815},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.814},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par palette: Birch Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par palette: Calcite","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par palette: Pale Oak Shelf","confidence":0.86},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par palette: Pale Oak Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_door","label":"Pont de nuance par palette: Pale Oak Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.855},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.851},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.851},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.726},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.723},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.718},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.697},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.697},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.697},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.697},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.696}],"category":"natural"},{"id":"minecraft:birch_planks","name":"Birch Planks","entry_type":"block","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","history":[{"version":"rd-20090515","status":"added","notes":"Added wooden planks."},{"version":"1.2.4 release","status":"added","notes":"Added spruce, birch and jungle wood planks. They are crafted from their corresponding wood . The color of wood planks available to this point is now obtainable only from oak wood."},{"version":"18w07a","status":"added","notes":"Added stripped logs, a variant of logs , which can be used to craft wood planks."}],"colors":{"primary":"#c0af79","dominant_hex":"#d4c484","average_hex":"#c0af79","hue_group":"yellow","lightness":0.6137,"saturation":0.3604,"palette":["#d4c484","#ccb47c","#bcac74","#a7976b","#d4cc8c","#9c8c64"],"color_groups":[{"hex":"#d4c484","weight":0.2031,"lightness":0.6745,"saturation":0.4819,"hue_group":"yellow"},{"hex":"#ccb47c","weight":0.1875,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"},{"hex":"#bcac74","weight":0.1836,"lightness":0.5961,"saturation":0.3495,"hue_group":"yellow"},{"hex":"#a7976b","weight":0.1641,"lightness":0.5373,"saturation":0.2542,"hue_group":"yellow"},{"hex":"#d4cc8c","weight":0.1484,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#9c8c64","weight":0.1133,"lightness":0.502,"saturation":0.2205,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_planks.png","family":"birch","relations":[{"type":"variants","target":"minecraft:birch_door","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_door","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_fence","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_fence","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_leaves","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_leaves","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_log","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_log","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_sapling","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_sapling","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_slab","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_slab","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_stairs","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_stairs","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_wood","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_wood","label":"Related set: birch","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_shelf","label":"Palette proche: Birch Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_log","label":"Palette proche: Stripped Birch Log","confidence":0.94},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.81},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.801},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.791},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.78},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.779},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.778},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_pressure_plate","label":"Couleurs analogues: Birch Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sign","label":"Couleurs analogues: Birch Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_slab","label":"Couleurs analogues: Birch Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_stairs","label":"Couleurs analogues: Birch Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_sign","label":"Couleurs analogues: Birch Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.912},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.899},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.895},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.904},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.886},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.884},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.863},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.772},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.766},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.959},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.913},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.705},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.623},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.602},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.555},{"type":"value_contrast","target":"minecraft:mangrove_log","label":"Contraste clair sombre: Mangrove Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_wood","label":"Contraste clair sombre: Mangrove Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bamboo_sapling","label":"Contraste clair sombre: Bamboo Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_roots","label":"Contraste clair sombre: Mangrove Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_hanging_sign","label":"Contraste clair sombre: Dark Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wall_hanging_sign","label":"Contraste clair sombre: Dark Oak Wall Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_log","label":"Contraste clair sombre: Stripped Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_wood","label":"Contraste clair sombre: Stripped Dark Oak Wood","confidence":0.55}],"category":"building"},{"id":"minecraft:birch_pressure_plate","name":"Birch Pressure Plate","entry_type":"block","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","history":[{"version":"v1.0.1","status":"added","notes":"Added wooden pressure plates."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped pressure plates."},{"version":"1.19 22w11a","status":"added","notes":"Added mangrove pressure plates."}],"colors":{"primary":"#c0af79","dominant_hex":"#d4c484","average_hex":"#c0af79","hue_group":"yellow","lightness":0.6137,"saturation":0.3604,"palette":["#d4c484","#ccb47c","#bcac74","#a7976b","#d4cc8c","#9c8c64"],"color_groups":[{"hex":"#d4c484","weight":0.2031,"lightness":0.6745,"saturation":0.4819,"hue_group":"yellow"},{"hex":"#ccb47c","weight":0.1875,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"},{"hex":"#bcac74","weight":0.1836,"lightness":0.5961,"saturation":0.3495,"hue_group":"yellow"},{"hex":"#a7976b","weight":0.1641,"lightness":0.5373,"saturation":0.2542,"hue_group":"yellow"},{"hex":"#d4cc8c","weight":0.1484,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#9c8c64","weight":0.1133,"lightness":0.502,"saturation":0.2205,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_planks.png","family":"birch_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_shelf","label":"Palette proche: Birch Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_log","label":"Palette proche: Stripped Birch Log","confidence":0.94},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.81},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.801},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.791},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.78},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.779},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.778},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_planks","label":"Couleurs analogues: Birch Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sign","label":"Couleurs analogues: Birch Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_slab","label":"Couleurs analogues: Birch Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_stairs","label":"Couleurs analogues: Birch Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_sign","label":"Couleurs analogues: Birch Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.912},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.899},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.895},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.904},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.886},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.884},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.863},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.772},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.766},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.959},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.913},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.705},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.623},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.602},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.555},{"type":"value_contrast","target":"minecraft:mangrove_log","label":"Contraste clair sombre: Mangrove Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_wood","label":"Contraste clair sombre: Mangrove Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bamboo_sapling","label":"Contraste clair sombre: Bamboo Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_roots","label":"Contraste clair sombre: Mangrove Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_hanging_sign","label":"Contraste clair sombre: Dark Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wall_hanging_sign","label":"Contraste clair sombre: Dark Oak Wall Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_log","label":"Contraste clair sombre: Stripped Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_wood","label":"Contraste clair sombre: Stripped Dark Oak Wood","confidence":0.55}],"category":"building"},{"id":"minecraft:birch_sapling","name":"Birch Sapling","entry_type":"block","description":"A sapling is a non-solid block that can be grown into a tree.","history":[{"version":"rd-161348","status":"added","notes":"Added saplings as the fifth placeable block in the game."},{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added tree growth."},{"version":"1.5","status":"added","notes":"Added spruce and birch saplings. Before, trees dropped only oak saplings, regardless of the tree."}],"colors":{"primary":"#80a150","dominant_hex":"#6c9c3c","average_hex":"#80a150","hue_group":"yellow","lightness":0.4725,"saturation":0.3361,"palette":["#6c9c3c","#5c7c34","#acbc64","#54742c","#ccd4a4","#e4dcbc"],"color_groups":[{"hex":"#6c9c3c","weight":0.3469,"lightness":0.4235,"saturation":0.4444,"hue_group":"green"},{"hex":"#5c7c34","weight":0.2143,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#acbc64","weight":0.1531,"lightness":0.5647,"saturation":0.3964,"hue_group":"yellow"},{"hex":"#54742c","weight":0.1224,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#ccd4a4","weight":0.0816,"lightness":0.7373,"saturation":0.3582,"hue_group":"yellow"},{"hex":"#e4dcbc","weight":0.0816,"lightness":0.8157,"saturation":0.4255,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_sapling.png","family":"birch","relations":[{"type":"variants","target":"minecraft:birch_door","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_door","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_fence","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_fence","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_leaves","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_leaves","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_log","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_log","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_planks","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_planks","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_slab","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_slab","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_stairs","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_stairs","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_wood","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_wood","label":"Related set: birch","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:potted_birch_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_birch_sapling","label":"Palette proche: Potted Birch Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.863},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.835},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.831},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.816},{"type":"color_neighbors","target":"minecraft:kelp","label":"Palette proche: Kelp","confidence":0.809},{"type":"color_neighbors","target":"minecraft:kelp_plant","label":"Palette proche: Kelp Plant","confidence":0.807},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.797},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.797},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.797},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.796},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.795},{"type":"color_bridge","target":"minecraft:pitcher_crop","label":"Pont de nuance par palette: Pitcher Crop","confidence":0.737},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.715},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.715},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.704},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.704},{"type":"color_bridge","target":"minecraft:pitcher_plant","label":"Pont de nuance par sous-ton: Pitcher Plant","confidence":0.701},{"type":"color_bridge","target":"minecraft:suspicious_sand","label":"Pont de nuance par palette: Suspicious Sand","confidence":0.701},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.699},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.699},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.699},{"type":"color_analogous","target":"minecraft:potted_birch_sapling","label":"Couleurs analogues: Potted Birch Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_stained_glass","label":"Couleurs analogues: Lime Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_red_tulip","label":"Couleurs analogues: Potted Red Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_tulip","label":"Couleurs analogues: Red Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo","label":"Couleurs analogues: Bamboo","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete_powder","label":"Couleurs analogues: Lime Concrete Powder","confidence":0.959},{"type":"color_analogous","target":"minecraft:oxeye_daisy","label":"Couleurs analogues: Oxeye Daisy","confidence":0.936},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.96},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.951},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.915},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.897},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.886},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.878},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.878},{"type":"color_triad","target":"minecraft:brain_coral","label":"Harmonie triadique: Brain Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:cornflower","label":"Harmonie triadique: Cornflower","confidence":0.952},{"type":"color_triad","target":"minecraft:potted_cornflower","label":"Harmonie triadique: Potted Cornflower","confidence":0.952},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.942},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.942},{"type":"color_square","target":"minecraft:prismarine","label":"Harmonie carree: Prismarine","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_slab","label":"Harmonie carree: Prismarine Slab","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_stairs","label":"Harmonie carree: Prismarine Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_wall","label":"Harmonie carree: Prismarine Wall","confidence":0.96},{"type":"color_square","target":"minecraft:warped_button","label":"Harmonie carree: Warped Button","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence","label":"Harmonie carree: Warped Fence","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence_gate","label":"Harmonie carree: Warped Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_planks","label":"Harmonie carree: Warped Planks","confidence":0.96},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55}],"category":"natural"},{"id":"minecraft:birch_shelf","name":"Birch Shelf","entry_type":"block","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added shelves."},{"version":"wiki-history","status":"added","notes":"Added the align_items_to_bottom block state property, by default set to false, to display items at the bottom of the shelf rather than in the middle."}],"colors":{"primary":"#af9c6a","dominant_hex":"#9c8c64","average_hex":"#af9c6a","hue_group":"yellow","lightness":0.551,"saturation":0.3013,"palette":["#9c8c64","#a49464","#d1c183","#c5b077","#b59f67","#887550"],"color_groups":[{"hex":"#9c8c64","weight":0.2139,"lightness":0.502,"saturation":0.2205,"hue_group":"yellow"},{"hex":"#a49464","weight":0.2021,"lightness":0.5176,"saturation":0.2602,"hue_group":"yellow"},{"hex":"#d1c183","weight":0.1689,"lightness":0.6667,"saturation":0.4588,"hue_group":"yellow"},{"hex":"#c5b077","weight":0.167,"lightness":0.6196,"saturation":0.4021,"hue_group":"yellow"},{"hex":"#b59f67","weight":0.1367,"lightness":0.5569,"saturation":0.3451,"hue_group":"yellow"},{"hex":"#887550","weight":0.1113,"lightness":0.4235,"saturation":0.2593,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_shelf.png","family":"birch_shelf","relations":[{"type":"visual_neighbors","target":"minecraft:fletching_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beehive","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.936},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.936},{"type":"color_neighbors","target":"minecraft:stripped_birch_log","label":"Palette proche: Stripped Birch Log","confidence":0.936},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.862},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.862},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.855},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.855},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.852},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.851},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.845},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.819},{"type":"color_analogous","target":"minecraft:fletching_table","label":"Couleurs analogues: Fletching Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_hanging_sign","label":"Couleurs analogues: Birch Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_hanging_sign","label":"Couleurs analogues: Birch Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_log","label":"Couleurs analogues: Stripped Birch Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_wood","label":"Couleurs analogues: Stripped Birch Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_candle","label":"Couleurs analogues: Yellow Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:bell","label":"Couleurs analogues: Bell","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_glazed_terracotta","label":"Couleurs analogues: Yellow Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.935},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.935},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.898},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.888},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.857},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.834},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.821},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.852},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.852},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.835},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.835},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.834},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.834},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.866},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.819},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.79},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.631},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.631},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.629},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.625},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.609},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_terracotta","label":"Contraste clair sombre: Gray Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55}],"category":""},{"id":"minecraft:birch_sign","name":"Birch Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#c0af79","dominant_hex":"#d4c484","average_hex":"#c0af79","hue_group":"yellow","lightness":0.6137,"saturation":0.3604,"palette":["#d4c484","#ccb47c","#bcac74","#a7976b","#d4cc8c","#9c8c64"],"color_groups":[{"hex":"#d4c484","weight":0.2031,"lightness":0.6745,"saturation":0.4819,"hue_group":"yellow"},{"hex":"#ccb47c","weight":0.1875,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"},{"hex":"#bcac74","weight":0.1836,"lightness":0.5961,"saturation":0.3495,"hue_group":"yellow"},{"hex":"#a7976b","weight":0.1641,"lightness":0.5373,"saturation":0.2542,"hue_group":"yellow"},{"hex":"#d4cc8c","weight":0.1484,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#9c8c64","weight":0.1133,"lightness":0.502,"saturation":0.2205,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_planks.png","family":"birch_sign","relations":[{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_shelf","label":"Palette proche: Birch Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_log","label":"Palette proche: Stripped Birch Log","confidence":0.94},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.81},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.801},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.791},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.78},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.779},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.778},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_planks","label":"Couleurs analogues: Birch Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_pressure_plate","label":"Couleurs analogues: Birch Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_slab","label":"Couleurs analogues: Birch Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_stairs","label":"Couleurs analogues: Birch Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_sign","label":"Couleurs analogues: Birch Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.912},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.899},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.895},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.904},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.886},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.884},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.863},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.772},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.766},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.959},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.913},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.705},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.623},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.602},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.555},{"type":"value_contrast","target":"minecraft:mangrove_log","label":"Contraste clair sombre: Mangrove Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_wood","label":"Contraste clair sombre: Mangrove Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bamboo_sapling","label":"Contraste clair sombre: Bamboo Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_roots","label":"Contraste clair sombre: Mangrove Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_hanging_sign","label":"Contraste clair sombre: Dark Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wall_hanging_sign","label":"Contraste clair sombre: Dark Oak Wall Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_log","label":"Contraste clair sombre: Stripped Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_wood","label":"Contraste clair sombre: Stripped Dark Oak Wood","confidence":0.55}],"category":"building"},{"id":"minecraft:birch_slab","name":"Birch Slab","entry_type":"block","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","history":[{"version":"1.7.2 1.7","status":"added","notes":"Added acacia and dark oak slabs."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped slabs."}],"colors":{"primary":"#c0af79","dominant_hex":"#d4c484","average_hex":"#c0af79","hue_group":"yellow","lightness":0.6137,"saturation":0.3604,"palette":["#d4c484","#ccb47c","#bcac74","#a7976b","#d4cc8c","#9c8c64"],"color_groups":[{"hex":"#d4c484","weight":0.2031,"lightness":0.6745,"saturation":0.4819,"hue_group":"yellow"},{"hex":"#ccb47c","weight":0.1875,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"},{"hex":"#bcac74","weight":0.1836,"lightness":0.5961,"saturation":0.3495,"hue_group":"yellow"},{"hex":"#a7976b","weight":0.1641,"lightness":0.5373,"saturation":0.2542,"hue_group":"yellow"},{"hex":"#d4cc8c","weight":0.1484,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#9c8c64","weight":0.1133,"lightness":0.502,"saturation":0.2205,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_planks.png","family":"birch","relations":[{"type":"variants","target":"minecraft:birch_door","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_door","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_fence","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_fence","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_leaves","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_leaves","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_log","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_log","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_planks","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_planks","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_sapling","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_sapling","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_stairs","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_stairs","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_wood","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_wood","label":"Related set: birch","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_shelf","label":"Palette proche: Birch Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_log","label":"Palette proche: Stripped Birch Log","confidence":0.94},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.81},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.801},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.791},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.78},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.779},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.778},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_planks","label":"Couleurs analogues: Birch Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_pressure_plate","label":"Couleurs analogues: Birch Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sign","label":"Couleurs analogues: Birch Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_stairs","label":"Couleurs analogues: Birch Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_sign","label":"Couleurs analogues: Birch Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.912},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.899},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.895},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.904},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.886},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.884},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.863},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.772},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.766},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.959},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.913},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.705},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.623},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.602},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.555},{"type":"value_contrast","target":"minecraft:mangrove_log","label":"Contraste clair sombre: Mangrove Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_wood","label":"Contraste clair sombre: Mangrove Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bamboo_sapling","label":"Contraste clair sombre: Bamboo Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_roots","label":"Contraste clair sombre: Mangrove Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_hanging_sign","label":"Contraste clair sombre: Dark Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wall_hanging_sign","label":"Contraste clair sombre: Dark Oak Wall Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_log","label":"Contraste clair sombre: Stripped Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_wood","label":"Contraste clair sombre: Stripped Dark Oak Wood","confidence":0.55}],"category":"building"},{"id":"minecraft:birch_stairs","name":"Birch Stairs","entry_type":"block","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","history":[{"version":"20100629","status":"added","notes":"Added \"wooden\" stairs."},{"version":"1.3.1 12w25a","status":"added","notes":"Added wooden stairs for the remaining three wood types (spruce, birch, and jungle)."},{"version":"12w26a","status":"added","notes":"Added crafting recipes for spruce, birch, and jungle wood stairs."}],"colors":{"primary":"#c0af79","dominant_hex":"#d4c484","average_hex":"#c0af79","hue_group":"yellow","lightness":0.6137,"saturation":0.3604,"palette":["#d4c484","#ccb47c","#bcac74","#a7976b","#d4cc8c","#9c8c64"],"color_groups":[{"hex":"#d4c484","weight":0.2031,"lightness":0.6745,"saturation":0.4819,"hue_group":"yellow"},{"hex":"#ccb47c","weight":0.1875,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"},{"hex":"#bcac74","weight":0.1836,"lightness":0.5961,"saturation":0.3495,"hue_group":"yellow"},{"hex":"#a7976b","weight":0.1641,"lightness":0.5373,"saturation":0.2542,"hue_group":"yellow"},{"hex":"#d4cc8c","weight":0.1484,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#9c8c64","weight":0.1133,"lightness":0.502,"saturation":0.2205,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_planks.png","family":"birch","relations":[{"type":"variants","target":"minecraft:birch_door","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_door","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_fence","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_fence","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_leaves","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_leaves","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_log","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_log","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_planks","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_planks","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_sapling","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_sapling","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_slab","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_slab","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_wood","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_wood","label":"Related set: birch","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_shelf","label":"Palette proche: Birch Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_log","label":"Palette proche: Stripped Birch Log","confidence":0.94},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.81},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.801},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.791},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.78},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.779},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.778},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_planks","label":"Couleurs analogues: Birch Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_pressure_plate","label":"Couleurs analogues: Birch Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sign","label":"Couleurs analogues: Birch Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_slab","label":"Couleurs analogues: Birch Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_sign","label":"Couleurs analogues: Birch Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.912},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.899},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.895},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.904},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.886},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.884},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.863},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.772},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.766},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.959},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.913},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.705},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.623},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.602},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.555},{"type":"value_contrast","target":"minecraft:mangrove_log","label":"Contraste clair sombre: Mangrove Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_wood","label":"Contraste clair sombre: Mangrove Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bamboo_sapling","label":"Contraste clair sombre: Bamboo Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_roots","label":"Contraste clair sombre: Mangrove Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_hanging_sign","label":"Contraste clair sombre: Dark Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wall_hanging_sign","label":"Contraste clair sombre: Dark Oak Wall Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_log","label":"Contraste clair sombre: Stripped Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_wood","label":"Contraste clair sombre: Stripped Dark Oak Wood","confidence":0.55}],"category":"building"},{"id":"minecraft:birch_trapdoor","name":"Birch Trapdoor","entry_type":"block","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","history":[{"version":"1.6","status":"added","notes":"Added wooden trapdoors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped trapdoors."}],"colors":{"primary":"#cfc29d","dominant_hex":"#f0edda","average_hex":"#cfc29d","hue_group":"yellow","lightness":0.7137,"saturation":0.3425,"palette":["#f0edda","#97865e","#d4c989","#a59564","#fcf4e4","#e1d9a9"],"color_groups":[{"hex":"#f0edda","weight":0.2734,"lightness":0.898,"saturation":0.4231,"hue_group":"yellow"},{"hex":"#97865e","weight":0.207,"lightness":0.4804,"saturation":0.2327,"hue_group":"yellow"},{"hex":"#d4c989","weight":0.207,"lightness":0.6843,"saturation":0.4658,"hue_group":"yellow"},{"hex":"#a59564","weight":0.1367,"lightness":0.5196,"saturation":0.2653,"hue_group":"yellow"},{"hex":"#fcf4e4","weight":0.0938,"lightness":0.9412,"saturation":0.8,"hue_group":"yellow"},{"hex":"#e1d9a9","weight":0.082,"lightness":0.7725,"saturation":0.4828,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_trapdoor.png","family":"birch_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:oxeye_daisy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_oxeye_daisy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sculk_shrieker","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_door","label":"Palette proche: Birch Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.872},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.872},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.872},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.872},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.872},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.872},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.872},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.872},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.872},{"type":"color_neighbors","target":"minecraft:birch_shelf","label":"Palette proche: Birch Shelf","confidence":0.864},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.847},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.771},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.75},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.746},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.746},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.739},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.733},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.731},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.731},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.729},{"type":"color_bridge","target":"minecraft:dead_brain_coral","label":"Pont de nuance par palette: Dead Brain Coral","confidence":0.719},{"type":"color_analogous","target":"minecraft:suspicious_sand","label":"Couleurs analogues: Suspicious Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_hanging_sign","label":"Couleurs analogues: Birch Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_hanging_sign","label":"Couleurs analogues: Birch Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_log","label":"Couleurs analogues: Stripped Birch Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_wood","label":"Couleurs analogues: Stripped Birch Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.953},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.953},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.953},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.945},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.933},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.923},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.869},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.856},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.852},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.95},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.93},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.84},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.84},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.84},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.815},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.815},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.814},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.908},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.861},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.755},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.595},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.595},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.594},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.589},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.573},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.601},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.571},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.568},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.567},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.558},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.558},{"type":"value_contrast","target":"minecraft:bookshelf","label":"Contraste clair sombre: Bookshelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:ladder","label":"Contraste clair sombre: Ladder","confidence":0.55}],"category":"building"},{"id":"minecraft:birch_wall_hanging_sign","name":"Birch Wall Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#c5b076","dominant_hex":"#d0bf84","average_hex":"#c5b076","hue_group":"yellow","lightness":0.6176,"saturation":0.4051,"palette":["#d0bf84","#c4ad74","#bca971","#cbb47b","#b49e66","#ccbc7c"],"color_groups":[{"hex":"#d0bf84","weight":0.2148,"lightness":0.6667,"saturation":0.4471,"hue_group":"yellow"},{"hex":"#c4ad74","weight":0.1914,"lightness":0.6118,"saturation":0.404,"hue_group":"yellow"},{"hex":"#bca971","weight":0.1836,"lightness":0.5902,"saturation":0.3589,"hue_group":"yellow"},{"hex":"#cbb47b","weight":0.1719,"lightness":0.6392,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#b49e66","weight":0.1211,"lightness":0.5529,"saturation":0.3421,"hue_group":"yellow"},{"hex":"#ccbc7c","weight":0.1172,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_birch_log.png","family":"birch_wall_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_log","label":"Palette proche: Stripped Birch Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_wood","label":"Palette proche: Stripped Birch Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.94},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.814},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.794},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.781},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.754},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.743},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.741},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.741},{"type":"color_analogous","target":"minecraft:birch_hanging_sign","label":"Couleurs analogues: Birch Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_log","label":"Couleurs analogues: Stripped Birch Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_wood","label":"Couleurs analogues: Stripped Birch Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_planks","label":"Couleurs analogues: Birch Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_pressure_plate","label":"Couleurs analogues: Birch Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.95},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.928},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.918},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.863},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.851},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.848},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.949},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.823},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.823},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.821},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.821},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.821},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.808},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.89},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.851},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.775},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.615},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.615},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.613},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.609},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.593},{"type":"value_contrast","target":"minecraft:firefly_bush","label":"Contraste clair sombre: Firefly Bush","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_log","label":"Contraste clair sombre: Mangrove Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_wood","label":"Contraste clair sombre: Mangrove Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bamboo_sapling","label":"Contraste clair sombre: Bamboo Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_log","label":"Contraste clair sombre: Jungle Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_wood","label":"Contraste clair sombre: Jungle Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55}],"category":"building"},{"id":"minecraft:birch_wall_sign","name":"Birch Wall Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#c0af79","dominant_hex":"#d4c484","average_hex":"#c0af79","hue_group":"yellow","lightness":0.6137,"saturation":0.3604,"palette":["#d4c484","#ccb47c","#bcac74","#a7976b","#d4cc8c","#9c8c64"],"color_groups":[{"hex":"#d4c484","weight":0.2031,"lightness":0.6745,"saturation":0.4819,"hue_group":"yellow"},{"hex":"#ccb47c","weight":0.1875,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"},{"hex":"#bcac74","weight":0.1836,"lightness":0.5961,"saturation":0.3495,"hue_group":"yellow"},{"hex":"#a7976b","weight":0.1641,"lightness":0.5373,"saturation":0.2542,"hue_group":"yellow"},{"hex":"#d4cc8c","weight":0.1484,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#9c8c64","weight":0.1133,"lightness":0.502,"saturation":0.2205,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_planks.png","family":"birch_wall_sign","relations":[{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_shelf","label":"Palette proche: Birch Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_log","label":"Palette proche: Stripped Birch Log","confidence":0.94},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.81},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.805},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.801},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.793},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.791},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.78},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.779},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.778},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_planks","label":"Couleurs analogues: Birch Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_pressure_plate","label":"Couleurs analogues: Birch Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sign","label":"Couleurs analogues: Birch Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_slab","label":"Couleurs analogues: Birch Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_stairs","label":"Couleurs analogues: Birch Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.933},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.912},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.899},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.895},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.904},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.886},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.884},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.863},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.772},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.766},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.959},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.913},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.705},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.623},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.608},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.602},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.555},{"type":"value_contrast","target":"minecraft:mangrove_log","label":"Contraste clair sombre: Mangrove Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_wood","label":"Contraste clair sombre: Mangrove Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bamboo_sapling","label":"Contraste clair sombre: Bamboo Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_roots","label":"Contraste clair sombre: Mangrove Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_hanging_sign","label":"Contraste clair sombre: Dark Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wall_hanging_sign","label":"Contraste clair sombre: Dark Oak Wall Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_log","label":"Contraste clair sombre: Stripped Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_wood","label":"Contraste clair sombre: Stripped Dark Oak Wood","confidence":0.55}],"category":"building"},{"id":"minecraft:birch_wood","name":"Birch Wood","entry_type":"block","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","history":[{"version":"1.3.1 12w30d","status":"added","notes":"Added six-sided wood blocks, which look similar to logs , but have the wood's \"bark\" texture (side texture when placed vertically) on all 6 sides."},{"version":"1.7.2 13w43a","status":"added","notes":"Added two new types of wood: acacia and dark oak."},{"version":"1","status":"added","notes":"Added top textures of the bark blocks."}],"colors":{"primary":"#d9d7d2","dominant_hex":"#f3edec","average_hex":"#d9d7d2","hue_group":"neutral","lightness":0.8373,"saturation":0.0843,"palette":["#f3edec","#fcfcfc","#d8d8c8","#dcd4d4","#645c54","#34342c"],"color_groups":[{"hex":"#f3edec","weight":0.2812,"lightness":0.9392,"saturation":0.2258,"hue_group":"red"},{"hex":"#fcfcfc","weight":0.2617,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d8d8c8","weight":0.25,"lightness":0.8157,"saturation":0.1702,"hue_group":"yellow"},{"hex":"#dcd4d4","weight":0.0898,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#645c54","weight":0.0703,"lightness":0.3608,"saturation":0.087,"hue_group":"neutral"},{"hex":"#34342c","weight":0.0469,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_log.png","family":"birch","relations":[{"type":"variants","target":"minecraft:birch_door","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_door","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_fence","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_fence","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_leaves","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_leaves","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_log","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_log","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_planks","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_planks","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_sapling","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_sapling","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_slab","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_slab","label":"Related set: birch","confidence":0.8},{"type":"variants","target":"minecraft:birch_stairs","label":"Same family: birch","confidence":0.75},{"type":"related_sets","target":"minecraft:birch_stairs","label":"Related set: birch","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobweb","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_log","label":"Palette proche: Birch Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.865},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.852},{"type":"color_neighbors","target":"minecraft:redstone_wire","label":"Palette proche: Redstone Wire","confidence":0.844},{"type":"color_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Palette proche: Pale Oak Trapdoor","confidence":0.836},{"type":"color_neighbors","target":"minecraft:pale_oak_door","label":"Palette proche: Pale Oak Door","confidence":0.832},{"type":"color_neighbors","target":"minecraft:white_stained_glass_pane","label":"Palette proche: White Stained Glass Pane","confidence":0.831},{"type":"color_neighbors","target":"minecraft:white_stained_glass","label":"Palette proche: White Stained Glass","confidence":0.824},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.819},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.819},{"type":"color_neighbors","target":"minecraft:chiseled_quartz_block","label":"Palette proche: Chiseled Quartz Block","confidence":0.815},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.814},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par palette: Birch Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par palette: Calcite","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par palette: Pale Oak Shelf","confidence":0.86},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par palette: Pale Oak Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_door","label":"Pont de nuance par palette: Pale Oak Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.855},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.851},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.851},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.726},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.723},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.718},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.697},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.697},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.697},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.697},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.696}],"category":"building"},{"id":"minecraft:black_banner","name":"Black Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"black_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_wall_banner","label":"Palette proche: Cyan Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_wall_banner","label":"Couleurs analogues: Brown Wall Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:black_bed","name":"Black Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"black_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_wall_banner","label":"Palette proche: Cyan Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_wall_banner","label":"Couleurs analogues: Brown Wall Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:black_bundle","name":"Black Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#36313f","dominant_hex":"#6c5d5b","average_hex":"#36313f","hue_group":"blue","lightness":0.2196,"saturation":0.125,"palette":["#6c5d5b","#242434","#3c344c","#2c2c44","#141414","#1c1c24"],"color_groups":[{"hex":"#6c5d5b","weight":0.2519,"lightness":0.3902,"saturation":0.0854,"hue_group":"neutral"},{"hex":"#242434","weight":0.1985,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#3c344c","weight":0.1603,"lightness":0.251,"saturation":0.1875,"hue_group":"blue"},{"hex":"#2c2c44","weight":0.1374,"lightness":0.2196,"saturation":0.2143,"hue_group":"blue"},{"hex":"#141414","weight":0.1298,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#1c1c24","weight":0.1221,"lightness":0.1255,"saturation":0.125,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/black_bundle.png","family":"black_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:ominous_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mace","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_meal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:black_candle","name":"Black Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#26253a","dominant_hex":"#1c1c24","average_hex":"#26253a","hue_group":"blue","lightness":0.1863,"saturation":0.2211,"palette":["#1c1c24","#24243c","#3c3454","#242434","#4c4c74"],"color_groups":[{"hex":"#1c1c24","weight":0.4286,"lightness":0.1255,"saturation":0.125,"hue_group":"blue"},{"hex":"#24243c","weight":0.2857,"lightness":0.1882,"saturation":0.25,"hue_group":"blue"},{"hex":"#3c3454","weight":0.1905,"lightness":0.2667,"saturation":0.2353,"hue_group":"blue"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#4c4c74","weight":0.0476,"lightness":0.3765,"saturation":0.2083,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/black_candle.png","family":"black_candle","relations":[{"type":"visual_neighbors","target":"minecraft:spawner","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chain","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_hyphae","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stem","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:respawn_anchor","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_gateway","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_chest","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tinted_glass","label":"Palette proche: Tinted Glass","confidence":0.89},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.873},{"type":"color_neighbors","target":"minecraft:spawner","label":"Palette proche: Spawner","confidence":0.864},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.861},{"type":"color_neighbors","target":"minecraft:blue_terracotta","label":"Palette proche: Blue Terracotta","confidence":0.832},{"type":"color_neighbors","target":"minecraft:black_carpet","label":"Palette proche: Black Carpet","confidence":0.832},{"type":"color_neighbors","target":"minecraft:black_wool","label":"Palette proche: Black Wool","confidence":0.832},{"type":"color_neighbors","target":"minecraft:iron_chain","label":"Palette proche: Iron Chain","confidence":0.815},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.794},{"type":"color_neighbors","target":"minecraft:respawn_anchor","label":"Palette proche: Respawn Anchor","confidence":0.793},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.78},{"type":"color_neighbors","target":"minecraft:vault","label":"Palette proche: Vault","confidence":0.766},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par sous-ton: Tinted Glass","confidence":0.9},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.895},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.885},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.862},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par sous-ton: Black Carpet","confidence":0.861},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par sous-ton: Black Wool","confidence":0.861},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.848},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.819},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.807},{"type":"color_bridge","target":"minecraft:chiseled_polished_blackstone","label":"Pont de nuance par palette: Chiseled Polished Blackstone","confidence":0.798},{"type":"color_analogous","target":"minecraft:blue_shulker_box","label":"Couleurs analogues: Blue Shulker Box","confidence":0.874},{"type":"color_analogous","target":"minecraft:blue_concrete","label":"Couleurs analogues: Blue Concrete","confidence":0.873},{"type":"color_analogous","target":"minecraft:blue_concrete_powder","label":"Couleurs analogues: Blue Concrete Powder","confidence":0.84},{"type":"color_analogous","target":"minecraft:blue_carpet","label":"Couleurs analogues: Blue Carpet","confidence":0.84},{"type":"color_analogous","target":"minecraft:blue_wool","label":"Couleurs analogues: Blue Wool","confidence":0.84},{"type":"color_analogous","target":"minecraft:end_gateway","label":"Couleurs analogues: End Gateway","confidence":0.659},{"type":"color_analogous","target":"minecraft:end_portal","label":"Couleurs analogues: End Portal","confidence":0.659},{"type":"color_analogous","target":"minecraft:ender_chest","label":"Couleurs analogues: Ender Chest","confidence":0.659},{"type":"color_complement","target":"minecraft:end_stone","label":"Contraste complementaire: End Stone","confidence":0.96},{"type":"color_complement","target":"minecraft:cocoa","label":"Contraste complementaire: Cocoa","confidence":0.945},{"type":"color_complement","target":"minecraft:wet_sponge","label":"Contraste complementaire: Wet Sponge","confidence":0.893},{"type":"color_complement","target":"minecraft:potted_flowering_azalea_bush","label":"Contraste complementaire: Potted Flowering Azalea Bush","confidence":0.891},{"type":"color_complement","target":"minecraft:end_stone_brick_slab","label":"Contraste complementaire: End Stone Brick Slab","confidence":0.874},{"type":"color_complement","target":"minecraft:end_stone_brick_stairs","label":"Contraste complementaire: End Stone Brick Stairs","confidence":0.874},{"type":"color_complement","target":"minecraft:end_stone_brick_wall","label":"Contraste complementaire: End Stone Brick Wall","confidence":0.874},{"type":"color_complement","target":"minecraft:end_stone_bricks","label":"Contraste complementaire: End Stone Bricks","confidence":0.874},{"type":"color_triad","target":"minecraft:mangrove_shelf","label":"Harmonie triadique: Mangrove Shelf","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_red_mushroom","label":"Harmonie triadique: Potted Red Mushroom","confidence":0.96},{"type":"color_triad","target":"minecraft:red_mushroom","label":"Harmonie triadique: Red Mushroom","confidence":0.96},{"type":"color_triad","target":"minecraft:red_glazed_terracotta","label":"Harmonie triadique: Red Glazed Terracotta","confidence":0.958},{"type":"color_triad","target":"minecraft:mangrove_door","label":"Harmonie triadique: Mangrove Door","confidence":0.945},{"type":"color_triad","target":"minecraft:nether_quartz_ore","label":"Harmonie triadique: Nether Quartz Ore","confidence":0.938},{"type":"color_triad","target":"minecraft:red_carpet","label":"Harmonie triadique: Red Carpet","confidence":0.93},{"type":"color_triad","target":"minecraft:red_wool","label":"Harmonie triadique: Red Wool","confidence":0.93},{"type":"color_square","target":"minecraft:torchflower_crop","label":"Harmonie carree: Torchflower Crop","confidence":0.96},{"type":"color_square","target":"minecraft:oxidized_copper_lantern","label":"Harmonie carree: Oxidized Copper Lantern","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie carree: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_button","label":"Harmonie carree: Crimson Button","confidence":0.917},{"type":"color_square","target":"minecraft:crimson_fence","label":"Harmonie carree: Crimson Fence","confidence":0.917},{"type":"color_square","target":"minecraft:crimson_fence_gate","label":"Harmonie carree: Crimson Fence Gate","confidence":0.917},{"type":"color_square","target":"minecraft:crimson_planks","label":"Harmonie carree: Crimson Planks","confidence":0.917},{"type":"color_square","target":"minecraft:crimson_pressure_plate","label":"Harmonie carree: Crimson Pressure Plate","confidence":0.917},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.748},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.714},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.692},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.689},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.689},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.674},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.658},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.639}],"category":"decorative"},{"id":"minecraft:black_candle_cake","name":"Black Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"black_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle_cake","label":"Palette proche: Orange Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_candle_cake","label":"Couleurs analogues: Light Blue Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:black_carpet","name":"Black Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#15151a","dominant_hex":"#0c0e13","average_hex":"#15151a","hue_group":"neutral","lightness":0.0922,"saturation":0.1064,"palette":["#0c0e13","#1b1c1c","#14141c","#1c1c24","#141414","#24242a"],"color_groups":[{"hex":"#0c0e13","weight":0.3398,"lightness":0.0608,"saturation":0.2258,"hue_group":"blue"},{"hex":"#1b1c1c","weight":0.1836,"lightness":0.1078,"saturation":0.0182,"hue_group":"neutral"},{"hex":"#14141c","weight":0.1484,"lightness":0.0941,"saturation":0.1667,"hue_group":"blue"},{"hex":"#1c1c24","weight":0.1133,"lightness":0.1255,"saturation":0.125,"hue_group":"blue"},{"hex":"#141414","weight":0.1094,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#24242a","weight":0.1055,"lightness":0.1529,"saturation":0.0769,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/black_wool.png","family":"black_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:black_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tinted_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_wool","label":"Palette proche: Black Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.936},{"type":"color_neighbors","target":"minecraft:tinted_glass","label":"Palette proche: Tinted Glass","confidence":0.837},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.832},{"type":"color_neighbors","target":"minecraft:black_concrete","label":"Palette proche: Black Concrete","confidence":0.819},{"type":"color_neighbors","target":"minecraft:gray_shulker_box","label":"Palette proche: Gray Shulker Box","confidence":0.814},{"type":"color_neighbors","target":"minecraft:deepslate_coal_ore","label":"Palette proche: Deepslate Coal Ore","confidence":0.767},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.766},{"type":"color_neighbors","target":"minecraft:basalt","label":"Palette proche: Basalt","confidence":0.764},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.761},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.761},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par sous-ton: Black Candle","confidence":0.861},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par palette: Black Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par palette: Black Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par palette: Black Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par palette: Tinted Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_concrete","label":"Pont de nuance par sous-ton: Black Concrete","confidence":0.851},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.847},{"type":"color_bridge","target":"minecraft:deepslate_coal_ore","label":"Pont de nuance par palette: Deepslate Coal Ore","confidence":0.808},{"type":"color_bridge","target":"minecraft:smooth_basalt","label":"Pont de nuance par palette: Smooth Basalt","confidence":0.807},{"type":"color_bridge","target":"minecraft:basalt","label":"Pont de nuance par palette: Basalt","confidence":0.806},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.84},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.822},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.821},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.821},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.807},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.785},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.785},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.785}],"category":"decorative"},{"id":"minecraft:black_concrete","name":"Black Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#080a0f","dominant_hex":"#0c0c14","average_hex":"#080a0f","hue_group":"blue","lightness":0.0451,"saturation":0.3043,"palette":["#0c0c14","#0c0c0c","#040c0c"],"color_groups":[{"hex":"#0c0c14","weight":0.4961,"lightness":0.0627,"saturation":0.25,"hue_group":"blue"},{"hex":"#0c0c0c","weight":0.2695,"lightness":0.0471,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040c0c","weight":0.2344,"lightness":0.0314,"saturation":0.5,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/black_concrete.png","family":"black_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:end_gateway","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_chest","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:obsidian","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spawner","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:respawn_anchor","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chain","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_hyphae","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stem","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.902},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.845},{"type":"color_neighbors","target":"minecraft:black_carpet","label":"Palette proche: Black Carpet","confidence":0.819},{"type":"color_neighbors","target":"minecraft:black_wool","label":"Palette proche: Black Wool","confidence":0.819},{"type":"color_neighbors","target":"minecraft:end_gateway","label":"Palette proche: End Gateway","confidence":0.745},{"type":"color_neighbors","target":"minecraft:end_portal","label":"Palette proche: End Portal","confidence":0.745},{"type":"color_neighbors","target":"minecraft:ender_chest","label":"Palette proche: Ender Chest","confidence":0.745},{"type":"color_neighbors","target":"minecraft:obsidian","label":"Palette proche: Obsidian","confidence":0.745},{"type":"color_neighbors","target":"minecraft:coal_block","label":"Palette proche: Coal Block","confidence":0.708},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.701},{"type":"color_neighbors","target":"minecraft:dragon_egg","label":"Palette proche: Dragon Egg","confidence":0.688},{"type":"color_neighbors","target":"minecraft:black_stained_glass_pane","label":"Palette proche: Black Stained Glass Pane","confidence":0.682},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.9},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.872},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par sous-ton: Black Carpet","confidence":0.851},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par sous-ton: Black Wool","confidence":0.851},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.759},{"type":"color_bridge","target":"minecraft:dragon_egg","label":"Pont de nuance par palette: Dragon Egg","confidence":0.743},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.739},{"type":"color_bridge","target":"minecraft:deepslate_coal_ore","label":"Pont de nuance par palette: Deepslate Coal Ore","confidence":0.725},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par palette: Tinted Glass","confidence":0.724},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.719},{"type":"color_analogous","target":"minecraft:lapis_block","label":"Couleurs analogues: Lapis Block","confidence":0.883},{"type":"color_analogous","target":"minecraft:tube_coral_fan","label":"Couleurs analogues: Tube Coral Fan","confidence":0.872},{"type":"color_analogous","target":"minecraft:tube_coral_wall_fan","label":"Couleurs analogues: Tube Coral Wall Fan","confidence":0.872},{"type":"color_analogous","target":"minecraft:spawner","label":"Couleurs analogues: Spawner","confidence":0.857},{"type":"color_analogous","target":"minecraft:tube_coral_block","label":"Couleurs analogues: Tube Coral Block","confidence":0.848},{"type":"color_analogous","target":"minecraft:tube_coral","label":"Couleurs analogues: Tube Coral","confidence":0.845},{"type":"color_analogous","target":"minecraft:blue_glazed_terracotta","label":"Couleurs analogues: Blue Glazed Terracotta","confidence":0.816},{"type":"color_analogous","target":"minecraft:blue_stained_glass_pane","label":"Couleurs analogues: Blue Stained Glass Pane","confidence":0.815},{"type":"color_complement","target":"minecraft:jungle_log","label":"Contraste complementaire: Jungle Log","confidence":0.96},{"type":"color_complement","target":"minecraft:jungle_wood","label":"Contraste complementaire: Jungle Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_shelf","label":"Contraste complementaire: Birch Shelf","confidence":0.96},{"type":"color_complement","target":"minecraft:fletching_table","label":"Contraste complementaire: Fletching Table","confidence":0.96},{"type":"color_complement","target":"minecraft:bell","label":"Contraste complementaire: Bell","confidence":0.953},{"type":"color_complement","target":"minecraft:birch_hanging_sign","label":"Contraste complementaire: Birch Hanging Sign","confidence":0.95},{"type":"color_complement","target":"minecraft:birch_wall_hanging_sign","label":"Contraste complementaire: Birch Wall Hanging Sign","confidence":0.95},{"type":"color_complement","target":"minecraft:stripped_birch_log","label":"Contraste complementaire: Stripped Birch Log","confidence":0.95},{"type":"color_triad","target":"minecraft:pink_tulip","label":"Harmonie triadique: Pink Tulip","confidence":0.952},{"type":"color_triad","target":"minecraft:potted_pink_tulip","label":"Harmonie triadique: Potted Pink Tulip","confidence":0.952},{"type":"color_triad","target":"minecraft:crimson_roots","label":"Harmonie triadique: Crimson Roots","confidence":0.948},{"type":"color_triad","target":"minecraft:potted_crimson_roots","label":"Harmonie triadique: Potted Crimson Roots","confidence":0.934},{"type":"color_triad","target":"minecraft:beetroots","label":"Harmonie triadique: Beetroots","confidence":0.916},{"type":"color_triad","target":"minecraft:potted_white_tulip","label":"Harmonie triadique: Potted White Tulip","confidence":0.898},{"type":"color_triad","target":"minecraft:white_tulip","label":"Harmonie triadique: White Tulip","confidence":0.898},{"type":"color_triad","target":"minecraft:sunflower","label":"Harmonie triadique: Sunflower","confidence":0.892},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.84},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.816},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.793},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.657},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.657},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.655},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.651},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.635},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.876},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.866},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.864},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.864},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.843},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.823},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.823},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.821}],"category":"building"},{"id":"minecraft:black_concrete_powder","name":"Black Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#191b20","dominant_hex":"#13141c","average_hex":"#191b20","hue_group":"blue","lightness":0.1118,"saturation":0.1228,"palette":["#13141c","#1c1d24","#252529","#1c1c1c","#141c1c","#34343c"],"color_groups":[{"hex":"#13141c","weight":0.4023,"lightness":0.0922,"saturation":0.1915,"hue_group":"blue"},{"hex":"#1c1d24","weight":0.1953,"lightness":0.1255,"saturation":0.125,"hue_group":"blue"},{"hex":"#252529","weight":0.168,"lightness":0.1529,"saturation":0.0513,"hue_group":"neutral"},{"hex":"#1c1c1c","weight":0.1211,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141c1c","weight":0.082,"lightness":0.0941,"saturation":0.1667,"hue_group":"cyan"},{"hex":"#34343c","weight":0.0312,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/black_concrete_powder.png","family":"black_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_hyphae","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stem","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chain","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spawner","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_gateway","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_chest","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:obsidian","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:respawn_anchor","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_carpet","label":"Palette proche: Black Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wool","label":"Palette proche: Black Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tinted_glass","label":"Palette proche: Tinted Glass","confidence":0.863},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.861},{"type":"color_neighbors","target":"minecraft:black_concrete","label":"Palette proche: Black Concrete","confidence":0.845},{"type":"color_neighbors","target":"minecraft:gray_shulker_box","label":"Palette proche: Gray Shulker Box","confidence":0.835},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.816},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.816},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.816},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.816},{"type":"color_neighbors","target":"minecraft:deepslate_coal_ore","label":"Palette proche: Deepslate Coal Ore","confidence":0.811},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par sous-ton: Black Candle","confidence":0.885},{"type":"color_bridge","target":"minecraft:black_concrete","label":"Pont de nuance par sous-ton: Black Concrete","confidence":0.872},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par palette: Black Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par palette: Black Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par palette: Black Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par palette: Tinted Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.849},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.849},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.849},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.819},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.807},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.806},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.806},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.785},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.765},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.765},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.765}],"category":"building"},{"id":"minecraft:black_dye","name":"Black Dye","entry_type":"item","description":"Black dye is one of the sixteen available dyes.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added black dye. Prior to this update ink sacs were used as the black dye variant."},{"version":"19w05a","status":"added","notes":"Added the wandering trader , which sell black dyes."},{"version":"1.17 20w45a","status":"added","notes":"added black candles ."}],"colors":{"primary":"#352c35","dominant_hex":"#1c1c24","average_hex":"#352c35","hue_group":"neutral","lightness":0.1902,"saturation":0.0928,"palette":["#1c1c24","#6e636d","#04040c","#401f1d","#4a3b4d","#24243c"],"color_groups":[{"hex":"#1c1c24","weight":0.2326,"lightness":0.1255,"saturation":0.125,"hue_group":"blue"},{"hex":"#6e636d","weight":0.2171,"lightness":0.4098,"saturation":0.0526,"hue_group":"neutral"},{"hex":"#04040c","weight":0.1705,"lightness":0.0314,"saturation":0.5,"hue_group":"blue"},{"hex":"#401f1d","weight":0.1705,"lightness":0.1824,"saturation":0.3763,"hue_group":"red"},{"hex":"#4a3b4d","weight":0.1085,"lightness":0.2667,"saturation":0.1324,"hue_group":"purple"},{"hex":"#24243c","weight":0.1008,"lightness":0.1882,"saturation":0.25,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/black_dye.png","family":"black_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:rib_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mellohi","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snout_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_blocks","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:black_glazed_terracotta","name":"Black Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#441e20","dominant_hex":"#1c1c21","average_hex":"#441e20","hue_group":"red","lightness":0.1922,"saturation":0.3878,"palette":["#1c1c21","#313339","#8c2222","#040404","#9c2424","#481212"],"color_groups":[{"hex":"#1c1c21","weight":0.3008,"lightness":0.1196,"saturation":0.082,"hue_group":"neutral"},{"hex":"#313339","weight":0.2109,"lightness":0.2078,"saturation":0.0755,"hue_group":"neutral"},{"hex":"#8c2222","weight":0.1953,"lightness":0.3412,"saturation":0.6092,"hue_group":"red"},{"hex":"#040404","weight":0.1133,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9c2424","weight":0.1016,"lightness":0.3765,"saturation":0.625,"hue_group":"red"},{"hex":"#481212","weight":0.0781,"lightness":0.1765,"saturation":0.6,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/black_glazed_terracotta.png","family":"black_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:brown_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:note_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_wall_torch","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherrack","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.878},{"type":"color_neighbors","target":"minecraft:smithing_table","label":"Palette proche: Smithing Table","confidence":0.835},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.797},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.788},{"type":"color_neighbors","target":"minecraft:gray_shulker_box","label":"Palette proche: Gray Shulker Box","confidence":0.769},{"type":"color_neighbors","target":"minecraft:black_carpet","label":"Palette proche: Black Carpet","confidence":0.76},{"type":"color_neighbors","target":"minecraft:black_wool","label":"Palette proche: Black Wool","confidence":0.76},{"type":"color_neighbors","target":"minecraft:tinted_glass","label":"Palette proche: Tinted Glass","confidence":0.756},{"type":"color_neighbors","target":"minecraft:deepslate_coal_ore","label":"Palette proche: Deepslate Coal Ore","confidence":0.734},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.729},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.729},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.729},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.864},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par palette: Black Shulker Box","confidence":0.833},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par palette: Black Concrete Powder","confidence":0.826},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.81},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par palette: Black Carpet","confidence":0.803},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par palette: Black Wool","confidence":0.803},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par palette: Tinted Glass","confidence":0.799},{"type":"color_bridge","target":"minecraft:deepslate_coal_ore","label":"Pont de nuance par palette: Deepslate Coal Ore","confidence":0.781},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.777},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.777},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_brick_slab","label":"Couleurs analogues: Red Nether Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_brick_stairs","label":"Couleurs analogues: Red Nether Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_brick_wall","label":"Couleurs analogues: Red Nether Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_bricks","label":"Couleurs analogues: Red Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_wart","label":"Couleurs analogues: Nether Wart","confidence":0.955},{"type":"color_analogous","target":"minecraft:fire_coral","label":"Couleurs analogues: Fire Coral","confidence":0.935},{"type":"color_complement","target":"minecraft:beacon","label":"Contraste complementaire: Beacon","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.954},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.954},{"type":"color_complement","target":"minecraft:warped_hanging_sign","label":"Contraste complementaire: Warped Hanging Sign","confidence":0.954},{"type":"color_complement","target":"minecraft:warped_wall_hanging_sign","label":"Contraste complementaire: Warped Wall Hanging Sign","confidence":0.954},{"type":"color_complement","target":"minecraft:warped_door","label":"Contraste complementaire: Warped Door","confidence":0.95},{"type":"color_complement","target":"minecraft:warped_shelf","label":"Contraste complementaire: Warped Shelf","confidence":0.942},{"type":"color_complement","target":"minecraft:diamond_block","label":"Contraste complementaire: Diamond Block","confidence":0.935},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.959},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.959},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.95},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.948},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.916},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.915},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.864},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.815},{"type":"color_square","target":"minecraft:oak_sapling","label":"Harmonie carree: Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_oak_sapling","label":"Harmonie carree: Potted Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:orange_tulip","label":"Harmonie carree: Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_orange_tulip","label":"Harmonie carree: Potted Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:large_amethyst_bud","label":"Harmonie carree: Large Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:azure_bluet","label":"Harmonie carree: Azure Bluet","confidence":0.96},{"type":"color_square","target":"minecraft:potted_azure_bluet","label":"Harmonie carree: Potted Azure Bluet","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_cluster","label":"Harmonie carree: Amethyst Cluster","confidence":0.957},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.754},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.721},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.711},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.711},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.711},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.711},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.699},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.663}],"category":"building"},{"id":"minecraft:black_harness","name":"Black Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#60483a","dominant_hex":"#93644c","average_hex":"#60483a","hue_group":"red","lightness":0.302,"saturation":0.2468,"palette":["#93644c","#502e16","#3c2922","#20202a","#70492f","#a2b0b2"],"color_groups":[{"hex":"#93644c","weight":0.227,"lightness":0.4373,"saturation":0.3184,"hue_group":"red"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#3c2922","weight":0.184,"lightness":0.1843,"saturation":0.2766,"hue_group":"red"},{"hex":"#20202a","weight":0.1534,"lightness":0.1451,"saturation":0.1351,"hue_group":"blue"},{"hex":"#70492f","weight":0.135,"lightness":0.3118,"saturation":0.4088,"hue_group":"red"},{"hex":"#a2b0b2","weight":0.1043,"lightness":0.6667,"saturation":0.0941,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/black_harness.png","family":"black_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_upgrade_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_relic","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_key","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_horse_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_pod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:black_shulker_box","name":"Black Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#19191e","dominant_hex":"#1c1c24","average_hex":"#19191e","hue_group":"neutral","lightness":0.1078,"saturation":0.0909,"palette":["#1c1c24","#14141c","#0c1414","#141414","#0c0c14","#242424"],"color_groups":[{"hex":"#1c1c24","weight":0.5312,"lightness":0.1255,"saturation":0.125,"hue_group":"blue"},{"hex":"#14141c","weight":0.1797,"lightness":0.0941,"saturation":0.1667,"hue_group":"blue"},{"hex":"#0c1414","weight":0.1094,"lightness":0.0627,"saturation":0.25,"hue_group":"cyan"},{"hex":"#141414","weight":0.1055,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#0c0c14","weight":0.0586,"lightness":0.0627,"saturation":0.25,"hue_group":"blue"},{"hex":"#242424","weight":0.0156,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/black_shulker_box.png","family":"black_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:black_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tinted_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_carpet","label":"Palette proche: Black Carpet","confidence":0.936},{"type":"color_neighbors","target":"minecraft:black_wool","label":"Palette proche: Black Wool","confidence":0.936},{"type":"color_neighbors","target":"minecraft:black_concrete","label":"Palette proche: Black Concrete","confidence":0.902},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.873},{"type":"color_neighbors","target":"minecraft:tinted_glass","label":"Palette proche: Tinted Glass","confidence":0.855},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.804},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.804},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.804},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.804},{"type":"color_neighbors","target":"minecraft:deepslate_coal_ore","label":"Palette proche: Deepslate Coal Ore","confidence":0.801},{"type":"color_neighbors","target":"minecraft:spawner","label":"Palette proche: Spawner","confidence":0.799},{"type":"color_bridge","target":"minecraft:black_concrete","label":"Pont de nuance par sous-ton: Black Concrete","confidence":0.9},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par sous-ton: Black Candle","confidence":0.895},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par palette: Black Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par palette: Black Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par palette: Black Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par palette: Tinted Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.839},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.839},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.839},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.839},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.826},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.807},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.806},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.806},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.792},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.77},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.77},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.77}],"category":""},{"id":"minecraft:black_stained_glass","name":"Black Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#191919","dominant_hex":"#1c1c1c","average_hex":"#191919","hue_group":"neutral","lightness":0.098,"saturation":0.0,"palette":["#1c1c1c"],"color_groups":[{"hex":"#1c1c1c","weight":1.0,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/black_stained_glass.png","family":"black_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:black_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coal_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_stained_glass_pane","label":"Palette proche: Black Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:coal_block","label":"Palette proche: Coal Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_egg","label":"Palette proche: Dragon Egg","confidence":0.92},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.916},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.913},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.91},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.91},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.91},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.91},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Palette proche: Cracked Deepslate Bricks","confidence":0.888},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.861},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.861},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dragon_egg","label":"Pont de nuance par palette: Dragon Egg","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_bricks","label":"Pont de nuance par palette: Cracked Deepslate Bricks","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.856},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.822},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.8},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.796},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.795},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.795},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.795},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.795}],"category":"building"},{"id":"minecraft:black_stained_glass_pane","name":"Black Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#181818","dominant_hex":"#1c1c1c","average_hex":"#181818","hue_group":"neutral","lightness":0.0941,"saturation":0.0,"palette":["#1c1c1c","#141414"],"color_groups":[{"hex":"#1c1c1c","weight":0.75,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.25,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/black_stained_glass_pane_top.png","family":"black_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:black_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coal_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_stained_glass","label":"Palette proche: Black Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:coal_block","label":"Palette proche: Coal Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_egg","label":"Palette proche: Dragon Egg","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.911},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.908},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.905},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.905},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.905},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.905},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Palette proche: Cracked Deepslate Bricks","confidence":0.883},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.857},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.857},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dragon_egg","label":"Pont de nuance par palette: Dragon Egg","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_bricks","label":"Pont de nuance par palette: Cracked Deepslate Bricks","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.826},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.804},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.799},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.798},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.798},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.798},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.798}],"category":"building"},{"id":"minecraft:black_terracotta","name":"Black Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#251710","dominant_hex":"#241414","average_hex":"#251710","hue_group":"red","lightness":0.1039,"saturation":0.3962,"palette":["#241414","#241c14","#24140c","#2c1c14"],"color_groups":[{"hex":"#241414","weight":0.5859,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#241c14","weight":0.2461,"lightness":0.1098,"saturation":0.2857,"hue_group":"yellow"},{"hex":"#24140c","weight":0.1641,"lightness":0.0941,"saturation":0.5,"hue_group":"red"},{"hex":"#2c1c14","weight":0.0039,"lightness":0.1255,"saturation":0.375,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/black_terracotta.png","family":"black_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:cracked_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:note_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_wall_torch","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherrack","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:nether_brick_fence","label":"Palette proche: Nether Brick Fence","confidence":0.851},{"type":"color_neighbors","target":"minecraft:nether_brick_slab","label":"Palette proche: Nether Brick Slab","confidence":0.851},{"type":"color_neighbors","target":"minecraft:nether_brick_stairs","label":"Palette proche: Nether Brick Stairs","confidence":0.851},{"type":"color_neighbors","target":"minecraft:nether_brick_wall","label":"Palette proche: Nether Brick Wall","confidence":0.851},{"type":"color_neighbors","target":"minecraft:nether_bricks","label":"Palette proche: Nether Bricks","confidence":0.851},{"type":"color_neighbors","target":"minecraft:cracked_nether_bricks","label":"Palette proche: Cracked Nether Bricks","confidence":0.838},{"type":"color_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Palette proche: Chiseled Nether Bricks","confidence":0.828},{"type":"color_neighbors","target":"minecraft:gray_terracotta","label":"Palette proche: Gray Terracotta","confidence":0.799},{"type":"color_neighbors","target":"minecraft:spruce_log","label":"Palette proche: Spruce Log","confidence":0.782},{"type":"color_neighbors","target":"minecraft:spruce_wood","label":"Palette proche: Spruce Wood","confidence":0.782},{"type":"color_neighbors","target":"minecraft:jukebox","label":"Palette proche: Jukebox","confidence":0.781},{"type":"color_neighbors","target":"minecraft:black_stained_glass","label":"Palette proche: Black Stained Glass","confidence":0.762},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.804},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.801},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.778},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.768},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.757},{"type":"color_bridge","target":"minecraft:potted_wither_rose","label":"Pont de nuance par palette: Potted Wither Rose","confidence":0.754},{"type":"color_bridge","target":"minecraft:wither_rose","label":"Pont de nuance par palette: Wither Rose","confidence":0.754},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.751},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.746},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.744},{"type":"color_analogous","target":"minecraft:item_frame","label":"Couleurs analogues: Item Frame","confidence":0.946},{"type":"color_analogous","target":"minecraft:brown_terracotta","label":"Couleurs analogues: Brown Terracotta","confidence":0.933},{"type":"color_analogous","target":"minecraft:acacia_trapdoor","label":"Couleurs analogues: Acacia Trapdoor","confidence":0.931},{"type":"color_analogous","target":"minecraft:chiseled_resin_bricks","label":"Couleurs analogues: Chiseled Resin Bricks","confidence":0.93},{"type":"color_analogous","target":"minecraft:jukebox","label":"Couleurs analogues: Jukebox","confidence":0.928},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.928},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.928},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.928},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.908},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.906},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.896},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.88},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.88},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.879},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.948},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.89},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.89},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.89},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.89},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.874},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.869},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.866},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.913},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.91},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.908},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.901},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.861},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.805},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.805},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.773},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.836},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.802},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.793},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.793},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.793},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.793},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.78},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.752}],"category":"building"},{"id":"minecraft:black_wall_banner","name":"Black Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"black_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_wall_banner","label":"Palette proche: Cyan Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_wall_banner","label":"Couleurs analogues: Brown Wall Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:black_wool","name":"Black Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#15151a","dominant_hex":"#0c0e13","average_hex":"#15151a","hue_group":"neutral","lightness":0.0922,"saturation":0.1064,"palette":["#0c0e13","#1b1c1c","#14141c","#1c1c24","#141414","#24242a"],"color_groups":[{"hex":"#0c0e13","weight":0.3398,"lightness":0.0608,"saturation":0.2258,"hue_group":"blue"},{"hex":"#1b1c1c","weight":0.1836,"lightness":0.1078,"saturation":0.0182,"hue_group":"neutral"},{"hex":"#14141c","weight":0.1484,"lightness":0.0941,"saturation":0.1667,"hue_group":"blue"},{"hex":"#1c1c24","weight":0.1133,"lightness":0.1255,"saturation":0.125,"hue_group":"blue"},{"hex":"#141414","weight":0.1094,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#24242a","weight":0.1055,"lightness":0.1529,"saturation":0.0769,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/black_wool.png","family":"black_wool","relations":[{"type":"visual_neighbors","target":"minecraft:black_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tinted_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_carpet","label":"Palette proche: Black Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.936},{"type":"color_neighbors","target":"minecraft:tinted_glass","label":"Palette proche: Tinted Glass","confidence":0.837},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.832},{"type":"color_neighbors","target":"minecraft:black_concrete","label":"Palette proche: Black Concrete","confidence":0.819},{"type":"color_neighbors","target":"minecraft:gray_shulker_box","label":"Palette proche: Gray Shulker Box","confidence":0.814},{"type":"color_neighbors","target":"minecraft:deepslate_coal_ore","label":"Palette proche: Deepslate Coal Ore","confidence":0.767},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.766},{"type":"color_neighbors","target":"minecraft:basalt","label":"Palette proche: Basalt","confidence":0.764},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.761},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.761},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par sous-ton: Black Candle","confidence":0.861},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par palette: Black Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par palette: Black Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par palette: Black Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par palette: Tinted Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_concrete","label":"Pont de nuance par sous-ton: Black Concrete","confidence":0.851},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.847},{"type":"color_bridge","target":"minecraft:deepslate_coal_ore","label":"Pont de nuance par palette: Deepslate Coal Ore","confidence":0.808},{"type":"color_bridge","target":"minecraft:smooth_basalt","label":"Pont de nuance par palette: Smooth Basalt","confidence":0.807},{"type":"color_bridge","target":"minecraft:basalt","label":"Pont de nuance par palette: Basalt","confidence":0.806},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.84},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.822},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.821},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.821},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.807},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.785},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.785},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.785}],"category":"decorative"},{"id":"minecraft:blackstone","name":"Blackstone","entry_type":"block","description":"Blackstone is a dark-colored block that functions similar to cobblestone or cobbled deepslate. It can be found only in the Nether.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added blackstone."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blackstone, providing the football/regular effect to the mob."}],"colors":{"primary":"#2a2429","dominant_hex":"#24241c","average_hex":"#2a2429","hue_group":"neutral","lightness":0.1529,"saturation":0.0769,"palette":["#24241c","#24141c","#342c34","#3c3c44","#140c14","#4c4c54"],"color_groups":[{"hex":"#24241c","weight":0.25,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#24141c","weight":0.2305,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#342c34","weight":0.2188,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.1406,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#140c14","weight":0.1172,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"},{"hex":"#4c4c54","weight":0.043,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blackstone.png","family":"blackstone","relations":[{"type":"variants","target":"minecraft:blackstone_slab","label":"Same family: blackstone","confidence":0.75},{"type":"related_sets","target":"minecraft:blackstone_slab","label":"Related set: blackstone","confidence":0.8},{"type":"variants","target":"minecraft:blackstone_stairs","label":"Same family: blackstone","confidence":0.75},{"type":"related_sets","target":"minecraft:blackstone_stairs","label":"Related set: blackstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tinted_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blackstone_wall","label":"Palette proche: Blackstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Palette proche: Cracked Polished Blackstone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:blackstone_wall","label":"Pont de nuance par palette: Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_polished_blackstone_bricks","label":"Pont de nuance par palette: Cracked Polished Blackstone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_wall","label":"Pont de nuance par palette: Polished Blackstone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_bricks","label":"Pont de nuance par palette: Polished Blackstone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.794},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.761},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.753},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.752},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.752},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.738},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.738},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.738}],"category":""},{"id":"minecraft:blackstone_slab","name":"Blackstone Slab","entry_type":"block","description":"A blackstone slab is a decorative slab variant of blackstone that generates in bastion remnants and is used for building.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added blackstone slabs."}],"colors":{"primary":"#2a242a","dominant_hex":"#342c34","average_hex":"#2a242a","hue_group":"neutral","lightness":0.1529,"saturation":0.0769,"palette":["#342c34","#24241c","#3c3c44","#140c14","#1c141c"],"color_groups":[{"hex":"#342c34","weight":0.25,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#24241c","weight":0.2422,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#3c3c44","weight":0.2188,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#140c14","weight":0.1484,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"},{"hex":"#1c141c","weight":0.1406,"lightness":0.0941,"saturation":0.1667,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blackstone_top.png","family":"blackstone","relations":[{"type":"variants","target":"minecraft:blackstone","label":"Same family: blackstone","confidence":0.75},{"type":"related_sets","target":"minecraft:blackstone","label":"Related set: blackstone","confidence":0.8},{"type":"variants","target":"minecraft:blackstone_stairs","label":"Same family: blackstone","confidence":0.75},{"type":"related_sets","target":"minecraft:blackstone_stairs","label":"Related set: blackstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tinted_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blackstone_stairs","label":"Palette proche: Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Palette proche: Chiseled Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:blackstone_stairs","label":"Pont de nuance par palette: Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_stairs","label":"Pont de nuance par palette: Polished Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_wall","label":"Pont de nuance par palette: Polished Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_polished_blackstone","label":"Pont de nuance par palette: Chiseled Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.793},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.759},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.755},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.754},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.754},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.737},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.736},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.736}],"category":"building"},{"id":"minecraft:blackstone_stairs","name":"Blackstone Stairs","entry_type":"block","description":"Blackstone stairs are a decorative stairs variant of blackstone that generates in bastion remnants and is used for building.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added blackstone stairs."}],"colors":{"primary":"#2a242a","dominant_hex":"#342c34","average_hex":"#2a242a","hue_group":"neutral","lightness":0.1529,"saturation":0.0769,"palette":["#342c34","#24241c","#3c3c44","#140c14","#1c141c"],"color_groups":[{"hex":"#342c34","weight":0.25,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#24241c","weight":0.2422,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#3c3c44","weight":0.2188,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#140c14","weight":0.1484,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"},{"hex":"#1c141c","weight":0.1406,"lightness":0.0941,"saturation":0.1667,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blackstone_top.png","family":"blackstone","relations":[{"type":"variants","target":"minecraft:blackstone","label":"Same family: blackstone","confidence":0.75},{"type":"related_sets","target":"minecraft:blackstone","label":"Related set: blackstone","confidence":0.8},{"type":"variants","target":"minecraft:blackstone_slab","label":"Same family: blackstone","confidence":0.75},{"type":"related_sets","target":"minecraft:blackstone_slab","label":"Related set: blackstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tinted_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blackstone_slab","label":"Palette proche: Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Palette proche: Chiseled Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:blackstone_slab","label":"Pont de nuance par palette: Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_stairs","label":"Pont de nuance par palette: Polished Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_wall","label":"Pont de nuance par palette: Polished Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_polished_blackstone","label":"Pont de nuance par palette: Chiseled Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.793},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.759},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.755},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.754},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.754},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.737},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.736},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.736}],"category":"building"},{"id":"minecraft:blackstone_wall","name":"Blackstone Wall","entry_type":"block","description":"A blackstone wall is a decorative wall variant of blackstone that generates in bastion remnants and is used for building.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added blackstone walls."}],"colors":{"primary":"#2a2429","dominant_hex":"#24241c","average_hex":"#2a2429","hue_group":"neutral","lightness":0.1529,"saturation":0.0769,"palette":["#24241c","#24141c","#342c34","#3c3c44","#140c14","#4c4c54"],"color_groups":[{"hex":"#24241c","weight":0.25,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#24141c","weight":0.2305,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#342c34","weight":0.2188,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.1406,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#140c14","weight":0.1172,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"},{"hex":"#4c4c54","weight":0.043,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blackstone.png","family":"blackstone_wall","relations":[{"type":"visual_neighbors","target":"minecraft:blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tinted_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blackstone","label":"Palette proche: Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Palette proche: Cracked Polished Blackstone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:blackstone","label":"Pont de nuance par palette: Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_polished_blackstone_bricks","label":"Pont de nuance par palette: Cracked Polished Blackstone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_wall","label":"Pont de nuance par palette: Polished Blackstone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_bricks","label":"Pont de nuance par palette: Polished Blackstone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.794},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.761},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.753},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.752},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.752},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.738},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.738},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.738}],"category":"building"},{"id":"minecraft:blade_pottery_sherd","name":"Blade Pottery Sherd","entry_type":"item","description":"A blade pottery sherd is a pottery sherd that depicts a sword. It can be found in cold ocean ruins.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added blade pottery shards."}],"colors":{"primary":"#6f3e33","dominant_hex":"#844c3c","average_hex":"#6f3e33","hue_group":"red","lightness":0.3176,"saturation":0.3704,"palette":["#844c3c","#734334","#5c342c","#995949","#44241c","#542c24"],"color_groups":[{"hex":"#844c3c","weight":0.2166,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#734334","weight":0.1847,"lightness":0.3275,"saturation":0.3772,"hue_group":"red"},{"hex":"#5c342c","weight":0.1783,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#995949","weight":0.1592,"lightness":0.4431,"saturation":0.354,"hue_group":"red"},{"hex":"#44241c","weight":0.1401,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#542c24","weight":0.121,"lightness":0.2353,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/blade_pottery_sherd.png","family":"blade_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:angler_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:burn_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:blast_furnace","name":"Blast Furnace","entry_type":"block","description":"A blast furnace is a block that smelts ores and metal items twice as quickly as a furnace, but cannot smelt anything else. It also serves as an armorer's job site block.","history":[{"version":"1.14 18w44a","status":"added","notes":"Added blast furnaces."},{"version":"19w03a","status":"added","notes":"added for blast furnaces."},{"version":"1.16 20w06a","status":"added","notes":"Added ancient debris , which can be smelted in blast furnaces."}],"colors":{"primary":"#515051","dominant_hex":"#4c4c4c","average_hex":"#515051","hue_group":"neutral","lightness":0.3157,"saturation":0.0062,"palette":["#4c4c4c","#5c5c5c","#3c3c44","#6c6c6c","#747474"],"color_groups":[{"hex":"#4c4c4c","weight":0.4609,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1992,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.1914,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0742,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.0742,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blast_furnace_top.png","family":"blast_furnace","relations":[{"type":"visual_neighbors","target":"minecraft:deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bedrock","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_basalt","label":"Palette proche: Polished Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:basalt","label":"Palette proche: Basalt","confidence":0.94},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_basalt","label":"Pont de nuance par palette: Polished Basalt","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.64},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.607},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.598},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.597},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.597},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.584},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.579},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.579}],"category":"utility"},{"id":"minecraft:blaze","name":"Blaze","entry_type":"mob","description":"A blaze is a fiery hostile mob found in Nether fortresses and is the only source of blaze rods. A blaze attacks by floating upward and shooting fireballs at its target in volleys of three at a time. It can also attack its target in melee range with its spinning rods.","history":[{"version":"1.0.0","status":"added","notes":"Added blazes."}],"colors":{"primary":"#bf8821","dominant_hex":"#7c3404","average_hex":"#bf8821","hue_group":"yellow","lightness":0.4392,"saturation":0.7054,"palette":["#7c3404","#fcbb1c","#fcfc44","#5b0404","#c47904","#fcfc88"],"color_groups":[{"hex":"#7c3404","weight":0.2785,"lightness":0.251,"saturation":0.9375,"hue_group":"red"},{"hex":"#fcbb1c","weight":0.2039,"lightness":0.549,"saturation":0.9739,"hue_group":"yellow"},{"hex":"#fcfc44","weight":0.1535,"lightness":0.6275,"saturation":0.9684,"hue_group":"yellow"},{"hex":"#5b0404","weight":0.1228,"lightness":0.1863,"saturation":0.9158,"hue_group":"red"},{"hex":"#c47904","weight":0.1206,"lightness":0.3922,"saturation":0.96,"hue_group":"yellow"},{"hex":"#fcfc88","weight":0.1206,"lightness":0.7608,"saturation":0.9508,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/blaze.png","family":"blaze","relations":[{"type":"visual_neighbors","target":"minecraft:shulker_lime","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_yellow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/red","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/ocelot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/creamy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/persian","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:blaze_powder","name":"Blaze Powder","entry_type":"item","description":"Blaze powder is an item made from a blaze rod, which is dropped by a blaze when killed. Its main uses are to fuel brewing stands, to brew potions of Strength, to make magma cream and to make eyes of ender, which take the player to the End.","history":[{"version":"1.0.0","status":"added","notes":"Added blaze powder."}],"colors":{"primary":"#c07113","dominant_hex":"#943404","average_hex":"#c07113","hue_group":"yellow","lightness":0.4137,"saturation":0.8199,"palette":["#943404","#fcdd21","#b84f04","#fa9f04","#fcfca4","#d18609"],"color_groups":[{"hex":"#943404","weight":0.4752,"lightness":0.298,"saturation":0.9474,"hue_group":"red"},{"hex":"#fcdd21","weight":0.1386,"lightness":0.5588,"saturation":0.9733,"hue_group":"yellow"},{"hex":"#b84f04","weight":0.1287,"lightness":0.3686,"saturation":0.9574,"hue_group":"red"},{"hex":"#fa9f04","weight":0.099,"lightness":0.498,"saturation":0.9685,"hue_group":"yellow"},{"hex":"#fcfca4","weight":0.0891,"lightness":0.8157,"saturation":0.9362,"hue_group":"yellow"},{"hex":"#d18609","weight":0.0693,"lightness":0.4275,"saturation":0.9174,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/blaze_powder.png","family":"blaze_powder","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:blaze_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_carrot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:blaze_rod","name":"Blaze Rod","entry_type":"item","description":"A blaze rod is an item obtained from blazes. It is required to craft brewing stands and fuel them in a powdered form, which is also required to craft eyes of ender.","history":[{"version":"1.0.0","status":"added","notes":"Added blaze rods."}],"colors":{"primary":"#c4871a","dominant_hex":"#c1981d","average_hex":"#c4871a","hue_group":"yellow","lightness":0.4353,"saturation":0.7658,"palette":["#c1981d","#fced3b","#a53d04","#b46a1b","#bc5c04","#ac6c1c"],"color_groups":[{"hex":"#c1981d","weight":0.2353,"lightness":0.4353,"saturation":0.7387,"hue_group":"yellow"},{"hex":"#fced3b","weight":0.2157,"lightness":0.6098,"saturation":0.9698,"hue_group":"yellow"},{"hex":"#a53d04","weight":0.1765,"lightness":0.3314,"saturation":0.9527,"hue_group":"red"},{"hex":"#b46a1b","weight":0.1569,"lightness":0.4059,"saturation":0.7391,"hue_group":"yellow"},{"hex":"#bc5c04","weight":0.1176,"lightness":0.3765,"saturation":0.9583,"hue_group":"red"},{"hex":"#ac6c1c","weight":0.098,"lightness":0.3922,"saturation":0.72,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/blaze_rod.png","family":"blaze_rod","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:blaze_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_nautilus_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_carrot","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:blaze_spawn_egg","name":"Blaze Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#b36f18","dominant_hex":"#4f0404","average_hex":"#b36f18","hue_group":"yellow","lightness":0.398,"saturation":0.7635,"palette":["#4f0404","#b76307","#8b3804","#fcee55","#f49c1c","#fcd42c"],"color_groups":[{"hex":"#4f0404","weight":0.2388,"lightness":0.1627,"saturation":0.9036,"hue_group":"red"},{"hex":"#b76307","weight":0.1791,"lightness":0.3725,"saturation":0.9263,"hue_group":"yellow"},{"hex":"#8b3804","weight":0.1642,"lightness":0.2804,"saturation":0.9441,"hue_group":"red"},{"hex":"#fcee55","weight":0.1567,"lightness":0.6608,"saturation":0.9653,"hue_group":"yellow"},{"hex":"#f49c1c","weight":0.1493,"lightness":0.5333,"saturation":0.9076,"hue_group":"yellow"},{"hex":"#fcd42c","weight":0.1119,"lightness":0.5804,"saturation":0.972,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/blaze_spawn_egg.png","family":"blaze_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:blaze_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_carrot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:blue_banner","name":"Blue Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"blue_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_wall_banner","label":"Palette proche: Cyan Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_wall_banner","label":"Couleurs analogues: Brown Wall Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:blue_bed","name":"Blue Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"blue_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_wall_banner","label":"Palette proche: Cyan Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_wall_banner","label":"Couleurs analogues: Brown Wall Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:blue_bundle","name":"Blue Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#495ea6","dominant_hex":"#304088","average_hex":"#495ea6","hue_group":"blue","lightness":0.4686,"saturation":0.3891,"palette":["#304088","#3c4ca4","#4474c4","#5c84dc","#445cbc","#9d784d"],"color_groups":[{"hex":"#304088","weight":0.2519,"lightness":0.3608,"saturation":0.4783,"hue_group":"blue"},{"hex":"#3c4ca4","weight":0.1985,"lightness":0.4392,"saturation":0.4643,"hue_group":"blue"},{"hex":"#4474c4","weight":0.1603,"lightness":0.5176,"saturation":0.5203,"hue_group":"blue"},{"hex":"#5c84dc","weight":0.1527,"lightness":0.6118,"saturation":0.6465,"hue_group":"blue"},{"hex":"#445cbc","weight":0.1374,"lightness":0.502,"saturation":0.4724,"hue_group":"blue"},{"hex":"#9d784d","weight":0.0992,"lightness":0.4588,"saturation":0.3419,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/blue_bundle.png","family":"blue_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:amethyst_shard","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_armor_trim_smithing_template","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_lazuli","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lingering_potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:blue_candle","name":"Blue Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#394ca1","dominant_hex":"#34449c","average_hex":"#394ca1","hue_group":"blue","lightness":0.4275,"saturation":0.4771,"palette":["#34449c","#3c4ca4","#445cbc","#242434","#446cc4"],"color_groups":[{"hex":"#34449c","weight":0.4286,"lightness":0.4078,"saturation":0.5,"hue_group":"blue"},{"hex":"#3c4ca4","weight":0.2857,"lightness":0.4392,"saturation":0.4643,"hue_group":"blue"},{"hex":"#445cbc","weight":0.1905,"lightness":0.502,"saturation":0.4724,"hue_group":"blue"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#446cc4","weight":0.0476,"lightness":0.5176,"saturation":0.5203,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blue_candle.png","family":"blue_candle","relations":[{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_shulker_box","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:budding_amethyst","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blue_carpet","label":"Palette proche: Blue Carpet","confidence":0.911},{"type":"color_neighbors","target":"minecraft:blue_wool","label":"Palette proche: Blue Wool","confidence":0.911},{"type":"color_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Palette proche: Blue Stained Glass Pane","confidence":0.899},{"type":"color_neighbors","target":"minecraft:blue_stained_glass","label":"Palette proche: Blue Stained Glass","confidence":0.881},{"type":"color_neighbors","target":"minecraft:blue_concrete_powder","label":"Palette proche: Blue Concrete Powder","confidence":0.861},{"type":"color_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Palette proche: Blue Glazed Terracotta","confidence":0.859},{"type":"color_neighbors","target":"minecraft:blue_shulker_box","label":"Palette proche: Blue Shulker Box","confidence":0.848},{"type":"color_neighbors","target":"minecraft:blue_concrete","label":"Palette proche: Blue Concrete","confidence":0.831},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.794},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.77},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.769},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.769},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.762},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.707},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par palette: Blue Terracotta","confidence":0.7},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.694},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par palette: Tinted Glass","confidence":0.689},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par sous-ton: Heavy Core","confidence":0.687},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.678},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.677},{"type":"color_bridge","target":"minecraft:chiseled_polished_blackstone","label":"Pont de nuance par palette: Chiseled Polished Blackstone","confidence":0.664},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.663},{"type":"color_analogous","target":"minecraft:blue_stained_glass_pane","label":"Couleurs analogues: Blue Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_stained_glass","label":"Couleurs analogues: Blue Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_glazed_terracotta","label":"Couleurs analogues: Blue Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:tube_coral","label":"Couleurs analogues: Tube Coral","confidence":0.92},{"type":"color_analogous","target":"minecraft:tube_coral_block","label":"Couleurs analogues: Tube Coral Block","confidence":0.908},{"type":"color_analogous","target":"minecraft:tube_coral_fan","label":"Couleurs analogues: Tube Coral Fan","confidence":0.881},{"type":"color_analogous","target":"minecraft:tube_coral_wall_fan","label":"Couleurs analogues: Tube Coral Wall Fan","confidence":0.881},{"type":"color_analogous","target":"minecraft:blue_carpet","label":"Couleurs analogues: Blue Carpet","confidence":0.805},{"type":"color_complement","target":"minecraft:bamboo_mosaic","label":"Contraste complementaire: Bamboo Mosaic","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_mosaic_slab","label":"Contraste complementaire: Bamboo Mosaic Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_mosaic_stairs","label":"Contraste complementaire: Bamboo Mosaic Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_button","label":"Contraste complementaire: Bamboo Button","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_hanging_sign","label":"Contraste complementaire: Bamboo Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_planks","label":"Contraste complementaire: Bamboo Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_pressure_plate","label":"Contraste complementaire: Bamboo Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_sign","label":"Contraste complementaire: Bamboo Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:enchanting_table","label":"Harmonie triadique: Enchanting Table","confidence":0.96},{"type":"color_triad","target":"minecraft:chiseled_nether_bricks","label":"Harmonie triadique: Chiseled Nether Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_brick_fence","label":"Harmonie triadique: Nether Brick Fence","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_brick_slab","label":"Harmonie triadique: Nether Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_brick_stairs","label":"Harmonie triadique: Nether Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_brick_wall","label":"Harmonie triadique: Nether Brick Wall","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_bricks","label":"Harmonie triadique: Nether Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:slime_block","label":"Harmonie triadique: Slime Block","confidence":0.957},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.907},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.888},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.759},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.759},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.753},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.706},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.698},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55}],"category":"decorative"},{"id":"minecraft:blue_candle_cake","name":"Blue Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"blue_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle_cake","label":"Palette proche: Orange Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_candle_cake","label":"Couleurs analogues: Light Blue Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:blue_carpet","name":"Blue Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#35399d","dominant_hex":"#3c47ab","average_hex":"#35399d","hue_group":"blue","lightness":0.4118,"saturation":0.4952,"palette":["#3c47ab","#3b3ca4","#2c3194","#343494","#34349c","#343c9c"],"color_groups":[{"hex":"#3c47ab","weight":0.2188,"lightness":0.4529,"saturation":0.4805,"hue_group":"blue"},{"hex":"#3b3ca4","weight":0.1836,"lightness":0.4373,"saturation":0.4709,"hue_group":"blue"},{"hex":"#2c3194","weight":0.1758,"lightness":0.3765,"saturation":0.5417,"hue_group":"blue"},{"hex":"#343494","weight":0.1641,"lightness":0.3922,"saturation":0.48,"hue_group":"blue"},{"hex":"#34349c","weight":0.1602,"lightness":0.4078,"saturation":0.5,"hue_group":"blue"},{"hex":"#343c9c","weight":0.0977,"lightness":0.4078,"saturation":0.5,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blue_wool.png","family":"blue_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_shulker_box","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blue_wool","label":"Palette proche: Blue Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_shulker_box","label":"Palette proche: Blue Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_concrete","label":"Palette proche: Blue Concrete","confidence":0.935},{"type":"color_neighbors","target":"minecraft:blue_concrete_powder","label":"Palette proche: Blue Concrete Powder","confidence":0.911},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.911},{"type":"color_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Palette proche: Blue Stained Glass Pane","confidence":0.871},{"type":"color_neighbors","target":"minecraft:blue_stained_glass","label":"Palette proche: Blue Stained Glass","confidence":0.864},{"type":"color_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Palette proche: Blue Glazed Terracotta","confidence":0.846},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.713},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.713},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.702},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.702},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.709},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.662},{"type":"color_bridge","target":"minecraft:purple_concrete_powder","label":"Pont de nuance par palette: Purple Concrete Powder","confidence":0.659},{"type":"color_bridge","target":"minecraft:purple_carpet","label":"Pont de nuance par palette: Purple Carpet","confidence":0.638},{"type":"color_bridge","target":"minecraft:purple_wool","label":"Pont de nuance par palette: Purple Wool","confidence":0.638},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.629},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par palette: Shulker Box","confidence":0.614},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.611},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.6},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.599},{"type":"color_analogous","target":"minecraft:blue_wool","label":"Couleurs analogues: Blue Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_concrete","label":"Couleurs analogues: Blue Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_shulker_box","label":"Couleurs analogues: Blue Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_concrete_powder","label":"Couleurs analogues: Blue Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_candle","label":"Couleurs analogues: Black Candle","confidence":0.84},{"type":"color_analogous","target":"minecraft:blue_candle","label":"Couleurs analogues: Blue Candle","confidence":0.805},{"type":"color_analogous","target":"minecraft:blue_glazed_terracotta","label":"Couleurs analogues: Blue Glazed Terracotta","confidence":0.781},{"type":"color_analogous","target":"minecraft:blue_stained_glass","label":"Couleurs analogues: Blue Stained Glass","confidence":0.781},{"type":"color_complement","target":"minecraft:sponge","label":"Contraste complementaire: Sponge","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_sapling","label":"Contraste complementaire: Bamboo Sapling","confidence":0.96},{"type":"color_complement","target":"minecraft:turtle_egg","label":"Contraste complementaire: Turtle Egg","confidence":0.96},{"type":"color_complement","target":"minecraft:acacia_sapling","label":"Contraste complementaire: Acacia Sapling","confidence":0.927},{"type":"color_complement","target":"minecraft:potted_acacia_sapling","label":"Contraste complementaire: Potted Acacia Sapling","confidence":0.927},{"type":"color_complement","target":"minecraft:yellow_stained_glass_pane","label":"Contraste complementaire: Yellow Stained Glass Pane","confidence":0.901},{"type":"color_complement","target":"minecraft:yellow_stained_glass","label":"Contraste complementaire: Yellow Stained Glass","confidence":0.895},{"type":"color_complement","target":"minecraft:cocoa","label":"Contraste complementaire: Cocoa","confidence":0.856},{"type":"color_triad","target":"minecraft:nether_wart","label":"Harmonie triadique: Nether Wart","confidence":0.96},{"type":"color_triad","target":"minecraft:black_glazed_terracotta","label":"Harmonie triadique: Black Glazed Terracotta","confidence":0.959},{"type":"color_triad","target":"minecraft:red_nether_brick_slab","label":"Harmonie triadique: Red Nether Brick Slab","confidence":0.959},{"type":"color_triad","target":"minecraft:red_nether_brick_stairs","label":"Harmonie triadique: Red Nether Brick Stairs","confidence":0.959},{"type":"color_triad","target":"minecraft:red_nether_brick_wall","label":"Harmonie triadique: Red Nether Brick Wall","confidence":0.959},{"type":"color_triad","target":"minecraft:red_nether_bricks","label":"Harmonie triadique: Red Nether Bricks","confidence":0.959},{"type":"color_triad","target":"minecraft:cherry_hanging_sign","label":"Harmonie triadique: Cherry Hanging Sign","confidence":0.955},{"type":"color_triad","target":"minecraft:cherry_wall_hanging_sign","label":"Harmonie triadique: Cherry Wall Hanging Sign","confidence":0.955},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.934},{"type":"color_square","target":"minecraft:cherry_log","label":"Harmonie carree: Cherry Log","confidence":0.884},{"type":"color_square","target":"minecraft:cherry_wood","label":"Harmonie carree: Cherry Wood","confidence":0.884},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.882},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.876},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.872},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.872},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.864},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:ice","label":"Contraste clair sombre: Ice","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55}],"category":"decorative"},{"id":"minecraft:blue_concrete","name":"Blue Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#2d2f8f","dominant_hex":"#2c2c8c","average_hex":"#2d2f8f","hue_group":"blue","lightness":0.3686,"saturation":0.5213,"palette":["#2c2c8c","#2c2c94","#2c3494"],"color_groups":[{"hex":"#2c2c8c","weight":0.5195,"lightness":0.3608,"saturation":0.5217,"hue_group":"blue"},{"hex":"#2c2c94","weight":0.4219,"lightness":0.3765,"saturation":0.5417,"hue_group":"blue"},{"hex":"#2c3494","weight":0.0586,"lightness":0.3765,"saturation":0.5417,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blue_concrete.png","family":"blue_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:blue_shulker_box","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blue_shulker_box","label":"Palette proche: Blue Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_carpet","label":"Palette proche: Blue Carpet","confidence":0.935},{"type":"color_neighbors","target":"minecraft:blue_wool","label":"Palette proche: Blue Wool","confidence":0.935},{"type":"color_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Palette proche: Blue Glazed Terracotta","confidence":0.855},{"type":"color_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Palette proche: Blue Stained Glass Pane","confidence":0.832},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.831},{"type":"color_neighbors","target":"minecraft:blue_concrete_powder","label":"Palette proche: Blue Concrete Powder","confidence":0.815},{"type":"color_neighbors","target":"minecraft:blue_stained_glass","label":"Palette proche: Blue Stained Glass","confidence":0.809},{"type":"color_neighbors","target":"minecraft:lapis_block","label":"Palette proche: Lapis Block","confidence":0.734},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.702},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.7},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.688},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.681},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.642},{"type":"color_bridge","target":"minecraft:purple_concrete_powder","label":"Pont de nuance par palette: Purple Concrete Powder","confidence":0.638},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.63},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.628},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.584},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.584},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.581},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_analogous","target":"minecraft:blue_shulker_box","label":"Couleurs analogues: Blue Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_carpet","label":"Couleurs analogues: Blue Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wool","label":"Couleurs analogues: Blue Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_concrete_powder","label":"Couleurs analogues: Blue Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_candle","label":"Couleurs analogues: Black Candle","confidence":0.873},{"type":"color_analogous","target":"minecraft:blue_candle","label":"Couleurs analogues: Blue Candle","confidence":0.772},{"type":"color_analogous","target":"minecraft:blue_glazed_terracotta","label":"Couleurs analogues: Blue Glazed Terracotta","confidence":0.766},{"type":"color_analogous","target":"minecraft:blue_stained_glass","label":"Couleurs analogues: Blue Stained Glass","confidence":0.749},{"type":"color_complement","target":"minecraft:sponge","label":"Contraste complementaire: Sponge","confidence":0.96},{"type":"color_complement","target":"minecraft:acacia_sapling","label":"Contraste complementaire: Acacia Sapling","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_acacia_sapling","label":"Contraste complementaire: Potted Acacia Sapling","confidence":0.96},{"type":"color_complement","target":"minecraft:turtle_egg","label":"Contraste complementaire: Turtle Egg","confidence":0.96},{"type":"color_complement","target":"minecraft:yellow_stained_glass_pane","label":"Contraste complementaire: Yellow Stained Glass Pane","confidence":0.94},{"type":"color_complement","target":"minecraft:yellow_stained_glass","label":"Contraste complementaire: Yellow Stained Glass","confidence":0.934},{"type":"color_complement","target":"minecraft:bamboo_sapling","label":"Contraste complementaire: Bamboo Sapling","confidence":0.925},{"type":"color_complement","target":"minecraft:cocoa","label":"Contraste complementaire: Cocoa","confidence":0.889},{"type":"color_triad","target":"minecraft:pink_terracotta","label":"Harmonie triadique: Pink Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_wart","label":"Harmonie triadique: Nether Wart","confidence":0.96},{"type":"color_triad","target":"minecraft:red_stained_glass_pane","label":"Harmonie triadique: Red Stained Glass Pane","confidence":0.951},{"type":"color_triad","target":"minecraft:red_stained_glass","label":"Harmonie triadique: Red Stained Glass","confidence":0.951},{"type":"color_triad","target":"minecraft:red_nether_brick_slab","label":"Harmonie triadique: Red Nether Brick Slab","confidence":0.95},{"type":"color_triad","target":"minecraft:red_nether_brick_stairs","label":"Harmonie triadique: Red Nether Brick Stairs","confidence":0.95},{"type":"color_triad","target":"minecraft:red_nether_brick_wall","label":"Harmonie triadique: Red Nether Brick Wall","confidence":0.95},{"type":"color_triad","target":"minecraft:red_nether_bricks","label":"Harmonie triadique: Red Nether Bricks","confidence":0.95},{"type":"color_square","target":"minecraft:cherry_log","label":"Harmonie carree: Cherry Log","confidence":0.927},{"type":"color_square","target":"minecraft:cherry_wood","label":"Harmonie carree: Cherry Wood","confidence":0.927},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.891},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.839},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.833},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.829},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.829},{"type":"color_square","target":"minecraft:oxidized_copper_lantern","label":"Harmonie carree: Oxidized Copper Lantern","confidence":0.827},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.565},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_stairs","label":"Contraste clair sombre: Polished Diorite Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:packed_ice","label":"Contraste clair sombre: Packed Ice","confidence":0.55},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:frosted_ice","label":"Contraste clair sombre: Frosted Ice","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:blue_concrete_powder","name":"Blue Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#4649a7","dominant_hex":"#4b4dab","average_hex":"#4649a7","hue_group":"blue","lightness":0.4647,"saturation":0.4093,"palette":["#4b4dab","#4444a4","#444ca4","#5156b7","#3c419a","#44449c"],"color_groups":[{"hex":"#4b4dab","weight":0.332,"lightness":0.4824,"saturation":0.3902,"hue_group":"blue"},{"hex":"#4444a4","weight":0.2344,"lightness":0.4549,"saturation":0.4138,"hue_group":"blue"},{"hex":"#444ca4","weight":0.1367,"lightness":0.4549,"saturation":0.4138,"hue_group":"blue"},{"hex":"#5156b7","weight":0.1328,"lightness":0.5176,"saturation":0.4146,"hue_group":"blue"},{"hex":"#3c419a","weight":0.1055,"lightness":0.4196,"saturation":0.4393,"hue_group":"blue"},{"hex":"#44449c","weight":0.0586,"lightness":0.4392,"saturation":0.3929,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blue_concrete_powder.png","family":"blue_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:budding_amethyst","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:medium_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blue_carpet","label":"Palette proche: Blue Carpet","confidence":0.911},{"type":"color_neighbors","target":"minecraft:blue_wool","label":"Palette proche: Blue Wool","confidence":0.911},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.861},{"type":"color_neighbors","target":"minecraft:blue_shulker_box","label":"Palette proche: Blue Shulker Box","confidence":0.847},{"type":"color_neighbors","target":"minecraft:blue_concrete","label":"Palette proche: Blue Concrete","confidence":0.815},{"type":"color_neighbors","target":"minecraft:blue_stained_glass","label":"Palette proche: Blue Stained Glass","confidence":0.814},{"type":"color_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Palette proche: Blue Stained Glass Pane","confidence":0.809},{"type":"color_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Palette proche: Blue Glazed Terracotta","confidence":0.802},{"type":"color_neighbors","target":"minecraft:light_blue_terracotta","label":"Palette proche: Light Blue Terracotta","confidence":0.76},{"type":"color_neighbors","target":"minecraft:small_amethyst_bud","label":"Palette proche: Small Amethyst Bud","confidence":0.674},{"type":"color_neighbors","target":"minecraft:amethyst_block","label":"Palette proche: Amethyst Block","confidence":0.672},{"type":"color_neighbors","target":"minecraft:repeating_command_block","label":"Palette proche: Repeating Command Block","confidence":0.661},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.803},{"type":"color_bridge","target":"minecraft:cyan_stained_glass_pane","label":"Pont de nuance par palette: Cyan Stained Glass Pane","confidence":0.685},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par palette: Shulker Box","confidence":0.674},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.664},{"type":"color_bridge","target":"minecraft:purple_concrete_powder","label":"Pont de nuance par palette: Purple Concrete Powder","confidence":0.637},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.636},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.632},{"type":"color_bridge","target":"minecraft:polished_andesite","label":"Pont de nuance par palette: Polished Andesite","confidence":0.624},{"type":"color_bridge","target":"minecraft:polished_andesite_slab","label":"Pont de nuance par palette: Polished Andesite Slab","confidence":0.624},{"type":"color_bridge","target":"minecraft:polished_andesite_stairs","label":"Pont de nuance par palette: Polished Andesite Stairs","confidence":0.624},{"type":"color_analogous","target":"minecraft:blue_carpet","label":"Couleurs analogues: Blue Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wool","label":"Couleurs analogues: Blue Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_concrete","label":"Couleurs analogues: Blue Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_shulker_box","label":"Couleurs analogues: Blue Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_candle","label":"Couleurs analogues: Black Candle","confidence":0.84},{"type":"color_analogous","target":"minecraft:blue_candle","label":"Couleurs analogues: Blue Candle","confidence":0.79},{"type":"color_analogous","target":"minecraft:blue_stained_glass","label":"Couleurs analogues: Blue Stained Glass","confidence":0.776},{"type":"color_analogous","target":"minecraft:blue_stained_glass_pane","label":"Couleurs analogues: Blue Stained Glass Pane","confidence":0.761},{"type":"color_complement","target":"minecraft:sponge","label":"Contraste complementaire: Sponge","confidence":0.96},{"type":"color_complement","target":"minecraft:turtle_egg","label":"Contraste complementaire: Turtle Egg","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_sapling","label":"Contraste complementaire: Bamboo Sapling","confidence":0.952},{"type":"color_complement","target":"minecraft:acacia_sapling","label":"Contraste complementaire: Acacia Sapling","confidence":0.934},{"type":"color_complement","target":"minecraft:potted_acacia_sapling","label":"Contraste complementaire: Potted Acacia Sapling","confidence":0.934},{"type":"color_complement","target":"minecraft:yellow_stained_glass_pane","label":"Contraste complementaire: Yellow Stained Glass Pane","confidence":0.907},{"type":"color_complement","target":"minecraft:yellow_stained_glass","label":"Contraste complementaire: Yellow Stained Glass","confidence":0.902},{"type":"color_complement","target":"minecraft:cocoa","label":"Contraste complementaire: Cocoa","confidence":0.879},{"type":"color_triad","target":"minecraft:nether_wart","label":"Harmonie triadique: Nether Wart","confidence":0.96},{"type":"color_triad","target":"minecraft:red_nether_brick_slab","label":"Harmonie triadique: Red Nether Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:red_nether_brick_stairs","label":"Harmonie triadique: Red Nether Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:red_nether_brick_wall","label":"Harmonie triadique: Red Nether Brick Wall","confidence":0.96},{"type":"color_triad","target":"minecraft:red_nether_bricks","label":"Harmonie triadique: Red Nether Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_terracotta","label":"Harmonie triadique: Pink Terracotta","confidence":0.951},{"type":"color_triad","target":"minecraft:black_glazed_terracotta","label":"Harmonie triadique: Black Glazed Terracotta","confidence":0.948},{"type":"color_triad","target":"minecraft:cherry_hanging_sign","label":"Harmonie triadique: Cherry Hanging Sign","confidence":0.935},{"type":"color_square","target":"minecraft:cherry_log","label":"Harmonie carree: Cherry Log","confidence":0.91},{"type":"color_square","target":"minecraft:cherry_wood","label":"Harmonie carree: Cherry Wood","confidence":0.91},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.908},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.856},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.851},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.847},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.847},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.838},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.55},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.55},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55}],"category":"building"},{"id":"minecraft:blue_dye","name":"Blue Dye","entry_type":"item","description":"Blue dye is one of the sixteen available dyes.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added blue dye. Prior to this update, lapis lazuli was used as the blue variant of dye ."},{"version":"19w05a","status":"added","notes":"Added the wandering trader , which sell blue dyes."},{"version":"1.17 20w45a","status":"added","notes":"added blue candles ."}],"colors":{"primary":"#364e85","dominant_hex":"#768ab2","average_hex":"#364e85","hue_group":"blue","lightness":0.3667,"saturation":0.4225,"palette":["#768ab2","#52322c","#144c9c","#345cc4","#0c347c","#042464"],"color_groups":[{"hex":"#768ab2","weight":0.2109,"lightness":0.5804,"saturation":0.2804,"hue_group":"blue"},{"hex":"#52322c","weight":0.1953,"lightness":0.2471,"saturation":0.3016,"hue_group":"red"},{"hex":"#144c9c","weight":0.1797,"lightness":0.3451,"saturation":0.7727,"hue_group":"blue"},{"hex":"#345cc4","weight":0.1484,"lightness":0.4863,"saturation":0.5806,"hue_group":"blue"},{"hex":"#0c347c","weight":0.1406,"lightness":0.2667,"saturation":0.8235,"hue_group":"blue"},{"hex":"#042464","weight":0.125,"lightness":0.2039,"saturation":0.9231,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/blue_dye.png","family":"blue_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_lazuli","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_shard","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mace","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ominous_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_armor_trim_smithing_template","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lingering_potion","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:blue_egg","name":"Blue Egg","entry_type":"item","description":"An egg is an item that is dropped by chickens and can be used to craft food items, such as cake, and can be thrown for a chance to spawn baby chickens on impact. They have three variants based on the variant of the corresponding chicken: the standard egg for temperate chickens, brown egg for warm chickens, and blue egg for cold chickens.","history":[{"version":"v1.0.14","status":"added","notes":"Added eggs."},{"version":"1 ]","status":"added","notes":"added egg throwing. [ 1 ]"},{"version":"19w07a","status":"added","notes":"Added foxes , which sometimes spawn with eggs in their mouths."}],"colors":{"primary":"#92ac9a","dominant_hex":"#c4e4d4","average_hex":"#92ac9a","hue_group":"green","lightness":0.6235,"saturation":0.1354,"palette":["#c4e4d4","#a4bca4","#44544c","#5c7464","#74947c","#e4fcf4"],"color_groups":[{"hex":"#c4e4d4","weight":0.3111,"lightness":0.8314,"saturation":0.3721,"hue_group":"cyan"},{"hex":"#a4bca4","weight":0.2556,"lightness":0.6902,"saturation":0.1519,"hue_group":"green"},{"hex":"#44544c","weight":0.1556,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#5c7464","weight":0.1556,"lightness":0.4078,"saturation":0.1154,"hue_group":"neutral"},{"hex":"#74947c","weight":0.0778,"lightness":0.5176,"saturation":0.1301,"hue_group":"green"},{"hex":"#e4fcf4","weight":0.0444,"lightness":0.9412,"saturation":0.8,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/blue_egg.png","family":"blue_egg","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:slime_ball","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_far","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_cat","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_hoe","label":"Shared hue group: green","confidence":0.55}],"category":"item"},{"id":"minecraft:blue_glazed_terracotta","name":"Blue Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#2f418b","dominant_hex":"#2c2c8c","average_hex":"#2f418b","hue_group":"blue","lightness":0.3647,"saturation":0.4946,"palette":["#2c2c8c","#3c44ac","#241c44","#4474d4","#241c3c","#248cc4"],"color_groups":[{"hex":"#2c2c8c","weight":0.2539,"lightness":0.3608,"saturation":0.5217,"hue_group":"blue"},{"hex":"#3c44ac","weight":0.1836,"lightness":0.4549,"saturation":0.4828,"hue_group":"blue"},{"hex":"#241c44","weight":0.1758,"lightness":0.1882,"saturation":0.4167,"hue_group":"blue"},{"hex":"#4474d4","weight":0.1758,"lightness":0.549,"saturation":0.6261,"hue_group":"blue"},{"hex":"#241c3c","weight":0.1328,"lightness":0.1725,"saturation":0.3636,"hue_group":"blue"},{"hex":"#248cc4","weight":0.0781,"lightness":0.4549,"saturation":0.6897,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blue_glazed_terracotta.png","family":"blue_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_shulker_box","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.859},{"type":"color_neighbors","target":"minecraft:blue_concrete","label":"Palette proche: Blue Concrete","confidence":0.855},{"type":"color_neighbors","target":"minecraft:blue_carpet","label":"Palette proche: Blue Carpet","confidence":0.846},{"type":"color_neighbors","target":"minecraft:blue_wool","label":"Palette proche: Blue Wool","confidence":0.846},{"type":"color_neighbors","target":"minecraft:blue_shulker_box","label":"Palette proche: Blue Shulker Box","confidence":0.84},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.811},{"type":"color_neighbors","target":"minecraft:blue_concrete_powder","label":"Palette proche: Blue Concrete Powder","confidence":0.802},{"type":"color_neighbors","target":"minecraft:blue_stained_glass","label":"Palette proche: Blue Stained Glass","confidence":0.764},{"type":"color_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Palette proche: Blue Stained Glass Pane","confidence":0.76},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.729},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.729},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.726},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par palette: Blue Terracotta","confidence":0.688},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.66},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par palette: Tinted Glass","confidence":0.653},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.65},{"type":"color_bridge","target":"minecraft:purple_candle","label":"Pont de nuance par palette: Purple Candle","confidence":0.64},{"type":"color_bridge","target":"minecraft:purple_stained_glass_pane","label":"Pont de nuance par palette: Purple Stained Glass Pane","confidence":0.639},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.637},{"type":"color_bridge","target":"minecraft:purple_glazed_terracotta","label":"Pont de nuance par palette: Purple Glazed Terracotta","confidence":0.632},{"type":"color_bridge","target":"minecraft:cyan_candle","label":"Pont de nuance par palette: Cyan Candle","confidence":0.631},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par sous-ton: Heavy Core","confidence":0.631},{"type":"color_analogous","target":"minecraft:blue_candle","label":"Couleurs analogues: Blue Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_stained_glass_pane","label":"Couleurs analogues: Blue Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_stained_glass","label":"Couleurs analogues: Blue Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:tube_coral","label":"Couleurs analogues: Tube Coral","confidence":0.925},{"type":"color_analogous","target":"minecraft:tube_coral_block","label":"Couleurs analogues: Tube Coral Block","confidence":0.913},{"type":"color_analogous","target":"minecraft:tube_coral_fan","label":"Couleurs analogues: Tube Coral Fan","confidence":0.886},{"type":"color_analogous","target":"minecraft:tube_coral_wall_fan","label":"Couleurs analogues: Tube Coral Wall Fan","confidence":0.886},{"type":"color_analogous","target":"minecraft:black_concrete","label":"Couleurs analogues: Black Concrete","confidence":0.816},{"type":"color_complement","target":"minecraft:bamboo_mosaic","label":"Contraste complementaire: Bamboo Mosaic","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_mosaic_slab","label":"Contraste complementaire: Bamboo Mosaic Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_mosaic_stairs","label":"Contraste complementaire: Bamboo Mosaic Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_button","label":"Contraste complementaire: Bamboo Button","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_hanging_sign","label":"Contraste complementaire: Bamboo Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_planks","label":"Contraste complementaire: Bamboo Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_pressure_plate","label":"Contraste complementaire: Bamboo Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_sign","label":"Contraste complementaire: Bamboo Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:potatoes","label":"Harmonie triadique: Potatoes","confidence":0.96},{"type":"color_triad","target":"minecraft:slime_block","label":"Harmonie triadique: Slime Block","confidence":0.96},{"type":"color_triad","target":"minecraft:test_block","label":"Harmonie triadique: Test Block","confidence":0.96},{"type":"color_triad","target":"minecraft:cracked_nether_bricks","label":"Harmonie triadique: Cracked Nether Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:enchanting_table","label":"Harmonie triadique: Enchanting Table","confidence":0.957},{"type":"color_triad","target":"minecraft:nether_brick_fence","label":"Harmonie triadique: Nether Brick Fence","confidence":0.955},{"type":"color_triad","target":"minecraft:nether_brick_slab","label":"Harmonie triadique: Nether Brick Slab","confidence":0.955},{"type":"color_triad","target":"minecraft:nether_brick_stairs","label":"Harmonie triadique: Nether Brick Stairs","confidence":0.955},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.94},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.919},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.743},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.728},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.728},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.722},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.675},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.667},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.568},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_stairs","label":"Contraste clair sombre: Polished Diorite Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:packed_ice","label":"Contraste clair sombre: Packed Ice","confidence":0.55},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:frosted_ice","label":"Contraste clair sombre: Frosted Ice","confidence":0.55}],"category":"building"},{"id":"minecraft:blue_harness","name":"Blue Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#65514f","dominant_hex":"#40548f","average_hex":"#65514f","hue_group":"red","lightness":0.3529,"saturation":0.1222,"palette":["#40548f","#976349","#502e16","#3c2414","#754525","#a2b0b2"],"color_groups":[{"hex":"#40548f","weight":0.2454,"lightness":0.4059,"saturation":0.3816,"hue_group":"blue"},{"hex":"#976349","weight":0.2147,"lightness":0.4392,"saturation":0.3482,"hue_group":"red"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"},{"hex":"#754525","weight":0.1104,"lightness":0.302,"saturation":0.5195,"hue_group":"red"},{"hex":"#a2b0b2","weight":0.1043,"lightness":0.6667,"saturation":0.0941,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/blue_harness.png","family":"blue_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:donkey_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raiser_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_lava_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:writable_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:blue_ice","name":"Blue Ice","entry_type":"block","description":"Blue ice is a solid block similar to packed ice and ice, but much more slippery. It is the fastest ice type for boat riding and can be used to generate basalt in conjunction with soul soil and lava.","history":[{"version":"1.13 18w15a","status":"added","notes":"Added blue ice."},{"version":"19w05a","status":"added","notes":"Added wandering traders , which sell blue ice."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blue ice, providing the hockey puck/fast sliding effect to the mob."}],"colors":{"primary":"#74a8fd","dominant_hex":"#6ca4fc","average_hex":"#74a8fd","hue_group":"blue","lightness":0.7235,"saturation":0.9716,"palette":["#6ca4fc","#74acfc","#6c9cfc","#8cbcfc","#acccfc"],"color_groups":[{"hex":"#6ca4fc","weight":0.3164,"lightness":0.7059,"saturation":0.96,"hue_group":"blue"},{"hex":"#74acfc","weight":0.2969,"lightness":0.7216,"saturation":0.9577,"hue_group":"blue"},{"hex":"#6c9cfc","weight":0.2305,"lightness":0.7059,"saturation":0.96,"hue_group":"blue"},{"hex":"#8cbcfc","weight":0.1328,"lightness":0.7686,"saturation":0.9492,"hue_group":"blue"},{"hex":"#acccfc","weight":0.0234,"lightness":0.8314,"saturation":0.9302,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blue_ice.png","family":"blue_ice","relations":[{"type":"visual_neighbors","target":"minecraft:frosted_ice","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ice","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_ice","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_cluster","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:frosted_ice","label":"Palette proche: Frosted Ice","confidence":0.94},{"type":"color_neighbors","target":"minecraft:ice","label":"Palette proche: Ice","confidence":0.938},{"type":"color_neighbors","target":"minecraft:packed_ice","label":"Palette proche: Packed Ice","confidence":0.931},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass","label":"Palette proche: Light Blue Stained Glass","confidence":0.619},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.59},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.59},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.58},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Palette proche: Light Blue Stained Glass Pane","confidence":0.58},{"type":"color_neighbors","target":"minecraft:diamond_block","label":"Palette proche: Diamond Block","confidence":0.58},{"type":"color_neighbors","target":"minecraft:light_blue_carpet","label":"Palette proche: Light Blue Carpet","confidence":0.58},{"type":"color_neighbors","target":"minecraft:light_blue_wool","label":"Palette proche: Light Blue Wool","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_block","label":"Pont de nuance par palette: Diamond Block","confidence":0.621},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par sous-ton: White Shulker Box","confidence":0.58},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par sous-ton: Cobweb","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par sous-ton: Light","confidence":0.58},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par sous-ton: White Carpet","confidence":0.58},{"type":"color_analogous","target":"minecraft:frosted_ice","label":"Couleurs analogues: Frosted Ice","confidence":0.96},{"type":"color_analogous","target":"minecraft:packed_ice","label":"Couleurs analogues: Packed Ice","confidence":0.954},{"type":"color_analogous","target":"minecraft:ice","label":"Couleurs analogues: Ice","confidence":0.951},{"type":"color_analogous","target":"minecraft:light_blue_stained_glass_pane","label":"Couleurs analogues: Light Blue Stained Glass Pane","confidence":0.893},{"type":"color_analogous","target":"minecraft:light_blue_stained_glass","label":"Couleurs analogues: Light Blue Stained Glass","confidence":0.89},{"type":"color_analogous","target":"minecraft:spawner","label":"Couleurs analogues: Spawner","confidence":0.882},{"type":"color_analogous","target":"minecraft:lapis_block","label":"Couleurs analogues: Lapis Block","confidence":0.857},{"type":"color_analogous","target":"minecraft:tube_coral_fan","label":"Couleurs analogues: Tube Coral Fan","confidence":0.797},{"type":"color_complement","target":"minecraft:jack_o_lantern","label":"Contraste complementaire: Jack O Lantern","confidence":0.951},{"type":"color_complement","target":"minecraft:candle","label":"Contraste complementaire: Candle","confidence":0.94},{"type":"color_complement","target":"minecraft:dark_oak_log","label":"Contraste complementaire: Dark Oak Log","confidence":0.937},{"type":"color_complement","target":"minecraft:dark_oak_wood","label":"Contraste complementaire: Dark Oak Wood","confidence":0.937},{"type":"color_complement","target":"minecraft:oak_trapdoor","label":"Contraste complementaire: Oak Trapdoor","confidence":0.935},{"type":"color_complement","target":"minecraft:beehive","label":"Contraste complementaire: Beehive","confidence":0.931},{"type":"color_complement","target":"minecraft:spruce_shelf","label":"Contraste complementaire: Spruce Shelf","confidence":0.931},{"type":"color_complement","target":"minecraft:oak_shelf","label":"Contraste complementaire: Oak Shelf","confidence":0.93},{"type":"color_triad","target":"minecraft:pink_candle","label":"Harmonie triadique: Pink Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:tall_seagrass","label":"Harmonie triadique: Tall Seagrass","confidence":0.958},{"type":"color_triad","target":"minecraft:cherry_leaves","label":"Harmonie triadique: Cherry Leaves","confidence":0.953},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.951},{"type":"color_triad","target":"minecraft:pink_concrete","label":"Harmonie triadique: Pink Concrete","confidence":0.95},{"type":"color_triad","target":"minecraft:pink_concrete_powder","label":"Harmonie triadique: Pink Concrete Powder","confidence":0.944},{"type":"color_triad","target":"minecraft:crimson_trapdoor","label":"Harmonie triadique: Crimson Trapdoor","confidence":0.911},{"type":"color_triad","target":"minecraft:pearlescent_froglight","label":"Harmonie triadique: Pearlescent Froglight","confidence":0.903},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.896},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.872},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.872},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.866},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.866},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.842},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.84},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.838},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.622},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.587},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.587},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.587},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.587},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.577},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.572},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.57}],"category":""},{"id":"minecraft:blue_orchid","name":"Blue Orchid","entry_type":"block","description":"A blue orchid is a flower that generates exclusively in swamp biomes. It is used to craft light blue dye and suspicious stew.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added blue orchids."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell blue orchids."},{"version":"1.18","status":"added","notes":"Added meadows , in which blue orchids can generate in."}],"colors":{"primary":"#2fa2a8","dominant_hex":"#24acf4","average_hex":"#2fa2a8","hue_group":"cyan","lightness":0.4216,"saturation":0.5628,"palette":["#24acf4","#1c94d4","#2cc0fc","#4c8c2c","#54ac2c","#147c04"],"color_groups":[{"hex":"#24acf4","weight":0.25,"lightness":0.549,"saturation":0.9043,"hue_group":"cyan"},{"hex":"#1c94d4","weight":0.2045,"lightness":0.4706,"saturation":0.7667,"hue_group":"cyan"},{"hex":"#2cc0fc","weight":0.2045,"lightness":0.5804,"saturation":0.972,"hue_group":"cyan"},{"hex":"#4c8c2c","weight":0.1591,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#54ac2c","weight":0.1136,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#147c04","weight":0.0682,"lightness":0.251,"saturation":0.9375,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blue_orchid.png","family":"blue_orchid","relations":[{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_fire","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_warped_stem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_hanging_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_hanging_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_shelf","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:void_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_blue_orchid","label":"Palette proche: Potted Blue Orchid","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.7},{"type":"color_neighbors","target":"minecraft:light_blue_concrete","label":"Palette proche: Light Blue Concrete","confidence":0.694},{"type":"color_neighbors","target":"minecraft:light_blue_shulker_box","label":"Palette proche: Light Blue Shulker Box","confidence":0.676},{"type":"color_neighbors","target":"minecraft:light_blue_carpet","label":"Palette proche: Light Blue Carpet","confidence":0.657},{"type":"color_neighbors","target":"minecraft:light_blue_wool","label":"Palette proche: Light Blue Wool","confidence":0.657},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.656},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.656},{"type":"color_neighbors","target":"minecraft:cornflower","label":"Palette proche: Cornflower","confidence":0.609},{"type":"color_neighbors","target":"minecraft:potted_cornflower","label":"Palette proche: Potted Cornflower","confidence":0.609},{"type":"color_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Palette proche: Light Blue Concrete Powder","confidence":0.594},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.585},{"type":"color_bridge","target":"minecraft:potted_white_tulip","label":"Pont de nuance par palette: Potted White Tulip","confidence":0.717},{"type":"color_bridge","target":"minecraft:white_tulip","label":"Pont de nuance par palette: White Tulip","confidence":0.717},{"type":"color_bridge","target":"minecraft:sunflower","label":"Pont de nuance par palette: Sunflower","confidence":0.658},{"type":"color_bridge","target":"minecraft:wheat","label":"Pont de nuance par palette: Wheat","confidence":0.614},{"type":"color_bridge","target":"minecraft:pitcher_plant","label":"Pont de nuance par palette: Pitcher Plant","confidence":0.609},{"type":"color_bridge","target":"minecraft:beetroots","label":"Pont de nuance par palette: Beetroots","confidence":0.608},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.603},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.603},{"type":"color_bridge","target":"minecraft:tube_coral_fan","label":"Pont de nuance par palette: Tube Coral Fan","confidence":0.601},{"type":"color_bridge","target":"minecraft:tube_coral_wall_fan","label":"Pont de nuance par palette: Tube Coral Wall Fan","confidence":0.601},{"type":"color_analogous","target":"minecraft:potted_blue_orchid","label":"Couleurs analogues: Potted Blue Orchid","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_carpet","label":"Couleurs analogues: Cyan Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_wool","label":"Couleurs analogues: Cyan Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_concrete_powder","label":"Couleurs analogues: Cyan Concrete Powder","confidence":0.958},{"type":"color_analogous","target":"minecraft:soul_fire","label":"Couleurs analogues: Soul Fire","confidence":0.957},{"type":"color_analogous","target":"minecraft:calibrated_sculk_sensor","label":"Couleurs analogues: Calibrated Sculk Sensor","confidence":0.948},{"type":"color_analogous","target":"minecraft:sculk_sensor","label":"Couleurs analogues: Sculk Sensor","confidence":0.948},{"type":"color_analogous","target":"minecraft:cyan_glazed_terracotta","label":"Couleurs analogues: Cyan Glazed Terracotta","confidence":0.942},{"type":"color_complement","target":"minecraft:red_glazed_terracotta","label":"Contraste complementaire: Red Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_shelf","label":"Contraste complementaire: Mangrove Shelf","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_red_mushroom","label":"Contraste complementaire: Potted Red Mushroom","confidence":0.96},{"type":"color_complement","target":"minecraft:red_mushroom","label":"Contraste complementaire: Red Mushroom","confidence":0.96},{"type":"color_complement","target":"minecraft:red_carpet","label":"Contraste complementaire: Red Carpet","confidence":0.956},{"type":"color_complement","target":"minecraft:red_wool","label":"Contraste complementaire: Red Wool","confidence":0.956},{"type":"color_complement","target":"minecraft:red_concrete_powder","label":"Contraste complementaire: Red Concrete Powder","confidence":0.949},{"type":"color_complement","target":"minecraft:red_candle","label":"Contraste complementaire: Red Candle","confidence":0.946},{"type":"color_triad","target":"minecraft:end_stone","label":"Harmonie triadique: End Stone","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_candle","label":"Harmonie triadique: Magenta Candle","confidence":0.953},{"type":"color_triad","target":"minecraft:magenta_concrete_powder","label":"Harmonie triadique: Magenta Concrete Powder","confidence":0.937},{"type":"color_triad","target":"minecraft:cocoa","label":"Harmonie triadique: Cocoa","confidence":0.933},{"type":"color_triad","target":"minecraft:magenta_concrete","label":"Harmonie triadique: Magenta Concrete","confidence":0.923},{"type":"color_triad","target":"minecraft:bubble_coral_block","label":"Harmonie triadique: Bubble Coral Block","confidence":0.922},{"type":"color_triad","target":"minecraft:magenta_shulker_box","label":"Harmonie triadique: Magenta Shulker Box","confidence":0.919},{"type":"color_triad","target":"minecraft:magenta_carpet","label":"Harmonie triadique: Magenta Carpet","confidence":0.917},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.96},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.958},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.947},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.935},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.923},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.908},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55}],"category":"natural"},{"id":"minecraft:blue_shulker_box","name":"Blue Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#2c2e8c","dominant_hex":"#34349c","average_hex":"#2c2e8c","hue_group":"blue","lightness":0.3608,"saturation":0.5217,"palette":["#34349c","#2c2c8b","#24247c","#222474","#2c3494","#1c1d6c"],"color_groups":[{"hex":"#34349c","weight":0.4844,"lightness":0.4078,"saturation":0.5,"hue_group":"blue"},{"hex":"#2c2c8b","weight":0.1719,"lightness":0.3588,"saturation":0.5191,"hue_group":"blue"},{"hex":"#24247c","weight":0.1133,"lightness":0.3137,"saturation":0.55,"hue_group":"blue"},{"hex":"#222474","weight":0.1094,"lightness":0.2941,"saturation":0.5467,"hue_group":"blue"},{"hex":"#2c3494","weight":0.0625,"lightness":0.3765,"saturation":0.5417,"hue_group":"blue"},{"hex":"#1c1d6c","weight":0.0586,"lightness":0.2667,"saturation":0.5882,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blue_shulker_box.png","family":"blue_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blue_concrete","label":"Palette proche: Blue Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_carpet","label":"Palette proche: Blue Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wool","label":"Palette proche: Blue Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.848},{"type":"color_neighbors","target":"minecraft:blue_concrete_powder","label":"Palette proche: Blue Concrete Powder","confidence":0.847},{"type":"color_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Palette proche: Blue Glazed Terracotta","confidence":0.84},{"type":"color_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Palette proche: Blue Stained Glass Pane","confidence":0.828},{"type":"color_neighbors","target":"minecraft:blue_stained_glass","label":"Palette proche: Blue Stained Glass","confidence":0.803},{"type":"color_neighbors","target":"minecraft:lapis_block","label":"Palette proche: Lapis Block","confidence":0.733},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.7},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.698},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.686},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.702},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.665},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.657},{"type":"color_bridge","target":"minecraft:purple_concrete_powder","label":"Pont de nuance par palette: Purple Concrete Powder","confidence":0.646},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.637},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.614},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.614},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.592},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.586},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.581},{"type":"color_analogous","target":"minecraft:blue_concrete","label":"Couleurs analogues: Blue Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_carpet","label":"Couleurs analogues: Blue Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wool","label":"Couleurs analogues: Blue Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_concrete_powder","label":"Couleurs analogues: Blue Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_candle","label":"Couleurs analogues: Black Candle","confidence":0.874},{"type":"color_analogous","target":"minecraft:blue_candle","label":"Couleurs analogues: Blue Candle","confidence":0.771},{"type":"color_analogous","target":"minecraft:blue_glazed_terracotta","label":"Couleurs analogues: Blue Glazed Terracotta","confidence":0.766},{"type":"color_analogous","target":"minecraft:blue_stained_glass","label":"Couleurs analogues: Blue Stained Glass","confidence":0.748},{"type":"color_complement","target":"minecraft:acacia_sapling","label":"Contraste complementaire: Acacia Sapling","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_acacia_sapling","label":"Contraste complementaire: Potted Acacia Sapling","confidence":0.96},{"type":"color_complement","target":"minecraft:sponge","label":"Contraste complementaire: Sponge","confidence":0.96},{"type":"color_complement","target":"minecraft:turtle_egg","label":"Contraste complementaire: Turtle Egg","confidence":0.96},{"type":"color_complement","target":"minecraft:yellow_stained_glass_pane","label":"Contraste complementaire: Yellow Stained Glass Pane","confidence":0.939},{"type":"color_complement","target":"minecraft:yellow_stained_glass","label":"Contraste complementaire: Yellow Stained Glass","confidence":0.933},{"type":"color_complement","target":"minecraft:bamboo_sapling","label":"Contraste complementaire: Bamboo Sapling","confidence":0.926},{"type":"color_complement","target":"minecraft:cocoa","label":"Contraste complementaire: Cocoa","confidence":0.888},{"type":"color_triad","target":"minecraft:nether_wart","label":"Harmonie triadique: Nether Wart","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_terracotta","label":"Harmonie triadique: Pink Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:red_nether_brick_slab","label":"Harmonie triadique: Red Nether Brick Slab","confidence":0.951},{"type":"color_triad","target":"minecraft:red_nether_brick_stairs","label":"Harmonie triadique: Red Nether Brick Stairs","confidence":0.951},{"type":"color_triad","target":"minecraft:red_nether_brick_wall","label":"Harmonie triadique: Red Nether Brick Wall","confidence":0.951},{"type":"color_triad","target":"minecraft:red_nether_bricks","label":"Harmonie triadique: Red Nether Bricks","confidence":0.951},{"type":"color_triad","target":"minecraft:red_stained_glass_pane","label":"Harmonie triadique: Red Stained Glass Pane","confidence":0.95},{"type":"color_triad","target":"minecraft:red_stained_glass","label":"Harmonie triadique: Red Stained Glass","confidence":0.95},{"type":"color_square","target":"minecraft:cherry_log","label":"Harmonie carree: Cherry Log","confidence":0.926},{"type":"color_square","target":"minecraft:cherry_wood","label":"Harmonie carree: Cherry Wood","confidence":0.926},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.892},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.84},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.835},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.831},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.831},{"type":"color_square","target":"minecraft:oxidized_copper_lantern","label":"Harmonie carree: Oxidized Copper Lantern","confidence":0.826},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.573},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_stairs","label":"Contraste clair sombre: Polished Diorite Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:packed_ice","label":"Contraste clair sombre: Packed Ice","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_ice","label":"Contraste clair sombre: Blue Ice","confidence":0.55},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:frosted_ice","label":"Contraste clair sombre: Frosted Ice","confidence":0.55}],"category":""},{"id":"minecraft:blue_stained_glass","name":"Blue Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#334cb2","dominant_hex":"#344cb4","average_hex":"#334cb2","hue_group":"blue","lightness":0.449,"saturation":0.5546,"palette":["#344cb4"],"color_groups":[{"hex":"#344cb4","weight":1.0,"lightness":0.4549,"saturation":0.5517,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blue_stained_glass.png","family":"blue_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_shulker_box","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Palette proche: Blue Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.881},{"type":"color_neighbors","target":"minecraft:blue_carpet","label":"Palette proche: Blue Carpet","confidence":0.864},{"type":"color_neighbors","target":"minecraft:blue_wool","label":"Palette proche: Blue Wool","confidence":0.864},{"type":"color_neighbors","target":"minecraft:blue_concrete_powder","label":"Palette proche: Blue Concrete Powder","confidence":0.814},{"type":"color_neighbors","target":"minecraft:blue_concrete","label":"Palette proche: Blue Concrete","confidence":0.809},{"type":"color_neighbors","target":"minecraft:blue_shulker_box","label":"Palette proche: Blue Shulker Box","confidence":0.803},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.782},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.777},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.774},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.774},{"type":"color_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Palette proche: Blue Glazed Terracotta","confidence":0.764},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.669},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.638},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.632},{"type":"color_bridge","target":"minecraft:purple_stained_glass","label":"Pont de nuance par palette: Purple Stained Glass","confidence":0.629},{"type":"color_bridge","target":"minecraft:purple_stained_glass_pane","label":"Pont de nuance par palette: Purple Stained Glass Pane","confidence":0.624},{"type":"color_bridge","target":"minecraft:purple_concrete_powder","label":"Pont de nuance par palette: Purple Concrete Powder","confidence":0.617},{"type":"color_bridge","target":"minecraft:purple_carpet","label":"Pont de nuance par palette: Purple Carpet","confidence":0.593},{"type":"color_bridge","target":"minecraft:purple_wool","label":"Pont de nuance par palette: Purple Wool","confidence":0.593},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_analogous","target":"minecraft:blue_stained_glass_pane","label":"Couleurs analogues: Blue Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle","label":"Couleurs analogues: Blue Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_glazed_terracotta","label":"Couleurs analogues: Blue Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:tube_coral","label":"Couleurs analogues: Tube Coral","confidence":0.943},{"type":"color_analogous","target":"minecraft:tube_coral_block","label":"Couleurs analogues: Tube Coral Block","confidence":0.931},{"type":"color_analogous","target":"minecraft:tube_coral_fan","label":"Couleurs analogues: Tube Coral Fan","confidence":0.904},{"type":"color_analogous","target":"minecraft:tube_coral_wall_fan","label":"Couleurs analogues: Tube Coral Wall Fan","confidence":0.904},{"type":"color_analogous","target":"minecraft:black_concrete","label":"Couleurs analogues: Black Concrete","confidence":0.801},{"type":"color_complement","target":"minecraft:bamboo_fence","label":"Contraste complementaire: Bamboo Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_door","label":"Contraste complementaire: Bamboo Door","confidence":0.96},{"type":"color_complement","target":"minecraft:yellow_concrete_powder","label":"Contraste complementaire: Yellow Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:cut_sandstone","label":"Contraste complementaire: Cut Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:wildflowers","label":"Contraste complementaire: Wildflowers","confidence":0.96},{"type":"color_complement","target":"minecraft:cut_sandstone_slab","label":"Contraste complementaire: Cut Sandstone Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:sandstone_slab","label":"Contraste complementaire: Sandstone Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:sandstone_stairs","label":"Contraste complementaire: Sandstone Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:potatoes","label":"Harmonie triadique: Potatoes","confidence":0.96},{"type":"color_triad","target":"minecraft:slime_block","label":"Harmonie triadique: Slime Block","confidence":0.96},{"type":"color_triad","target":"minecraft:test_block","label":"Harmonie triadique: Test Block","confidence":0.96},{"type":"color_triad","target":"minecraft:cracked_nether_bricks","label":"Harmonie triadique: Cracked Nether Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:enchanting_table","label":"Harmonie triadique: Enchanting Table","confidence":0.95},{"type":"color_triad","target":"minecraft:nether_brick_fence","label":"Harmonie triadique: Nether Brick Fence","confidence":0.948},{"type":"color_triad","target":"minecraft:nether_brick_slab","label":"Harmonie triadique: Nether Brick Slab","confidence":0.948},{"type":"color_triad","target":"minecraft:nether_brick_stairs","label":"Harmonie triadique: Nether Brick Stairs","confidence":0.948},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.948},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.918},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.736},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.727},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.727},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.723},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.677},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.665},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.55},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.55},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55}],"category":"building"},{"id":"minecraft:blue_stained_glass_pane","name":"Blue Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#314aab","dominant_hex":"#344cac","average_hex":"#314aab","hue_group":"blue","lightness":0.4314,"saturation":0.5545,"palette":["#344cac","#344cb4","#2c44a4"],"color_groups":[{"hex":"#344cac","weight":0.375,"lightness":0.4392,"saturation":0.5357,"hue_group":"blue"},{"hex":"#344cb4","weight":0.375,"lightness":0.4549,"saturation":0.5517,"hue_group":"blue"},{"hex":"#2c44a4","weight":0.25,"lightness":0.4078,"saturation":0.5769,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blue_stained_glass_pane_top.png","family":"blue_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_shulker_box","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blue_stained_glass","label":"Palette proche: Blue Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.899},{"type":"color_neighbors","target":"minecraft:blue_carpet","label":"Palette proche: Blue Carpet","confidence":0.871},{"type":"color_neighbors","target":"minecraft:blue_wool","label":"Palette proche: Blue Wool","confidence":0.871},{"type":"color_neighbors","target":"minecraft:blue_concrete","label":"Palette proche: Blue Concrete","confidence":0.832},{"type":"color_neighbors","target":"minecraft:blue_shulker_box","label":"Palette proche: Blue Shulker Box","confidence":0.828},{"type":"color_neighbors","target":"minecraft:blue_concrete_powder","label":"Palette proche: Blue Concrete Powder","confidence":0.809},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.807},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.804},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.798},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.798},{"type":"color_neighbors","target":"minecraft:lapis_block","label":"Palette proche: Lapis Block","confidence":0.785},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.659},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.641},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.641},{"type":"color_bridge","target":"minecraft:purple_stained_glass","label":"Pont de nuance par palette: Purple Stained Glass","confidence":0.618},{"type":"color_bridge","target":"minecraft:purple_stained_glass_pane","label":"Pont de nuance par palette: Purple Stained Glass Pane","confidence":0.618},{"type":"color_bridge","target":"minecraft:purple_concrete_powder","label":"Pont de nuance par palette: Purple Concrete Powder","confidence":0.613},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.607},{"type":"color_bridge","target":"minecraft:cyan_concrete_powder","label":"Pont de nuance par palette: Cyan Concrete Powder","confidence":0.606},{"type":"color_bridge","target":"minecraft:purple_carpet","label":"Pont de nuance par palette: Purple Carpet","confidence":0.6},{"type":"color_bridge","target":"minecraft:purple_wool","label":"Pont de nuance par palette: Purple Wool","confidence":0.6},{"type":"color_analogous","target":"minecraft:blue_stained_glass","label":"Couleurs analogues: Blue Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle","label":"Couleurs analogues: Blue Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_glazed_terracotta","label":"Couleurs analogues: Blue Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:tube_coral","label":"Couleurs analogues: Tube Coral","confidence":0.95},{"type":"color_analogous","target":"minecraft:tube_coral_block","label":"Couleurs analogues: Tube Coral Block","confidence":0.938},{"type":"color_analogous","target":"minecraft:tube_coral_fan","label":"Couleurs analogues: Tube Coral Fan","confidence":0.912},{"type":"color_analogous","target":"minecraft:tube_coral_wall_fan","label":"Couleurs analogues: Tube Coral Wall Fan","confidence":0.912},{"type":"color_analogous","target":"minecraft:black_concrete","label":"Couleurs analogues: Black Concrete","confidence":0.815},{"type":"color_complement","target":"minecraft:chiseled_sandstone","label":"Contraste complementaire: Chiseled Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:sandstone","label":"Contraste complementaire: Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:sandstone_wall","label":"Contraste complementaire: Sandstone Wall","confidence":0.96},{"type":"color_complement","target":"minecraft:cut_sandstone","label":"Contraste complementaire: Cut Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:gold_block","label":"Contraste complementaire: Gold Block","confidence":0.96},{"type":"color_complement","target":"minecraft:light_weighted_pressure_plate","label":"Contraste complementaire: Light Weighted Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:sand","label":"Contraste complementaire: Sand","confidence":0.96},{"type":"color_complement","target":"minecraft:wildflowers","label":"Contraste complementaire: Wildflowers","confidence":0.952},{"type":"color_triad","target":"minecraft:potatoes","label":"Harmonie triadique: Potatoes","confidence":0.96},{"type":"color_triad","target":"minecraft:slime_block","label":"Harmonie triadique: Slime Block","confidence":0.96},{"type":"color_triad","target":"minecraft:test_block","label":"Harmonie triadique: Test Block","confidence":0.96},{"type":"color_triad","target":"minecraft:cracked_nether_bricks","label":"Harmonie triadique: Cracked Nether Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:enchanting_table","label":"Harmonie triadique: Enchanting Table","confidence":0.931},{"type":"color_triad","target":"minecraft:nether_brick_fence","label":"Harmonie triadique: Nether Brick Fence","confidence":0.929},{"type":"color_triad","target":"minecraft:nether_brick_slab","label":"Harmonie triadique: Nether Brick Slab","confidence":0.929},{"type":"color_triad","target":"minecraft:nether_brick_stairs","label":"Harmonie triadique: Nether Brick Stairs","confidence":0.929},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.96},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.938},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.715},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.707},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.707},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.703},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.657},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.645},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.55},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.55},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55}],"category":"building"},{"id":"minecraft:blue_terracotta","name":"Blue Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#4a3c5b","dominant_hex":"#4c3c5c","average_hex":"#4a3c5b","hue_group":"blue","lightness":0.2961,"saturation":0.2053,"palette":["#4c3c5c","#443c5c","#4c445c"],"color_groups":[{"hex":"#4c3c5c","weight":0.9922,"lightness":0.298,"saturation":0.2105,"hue_group":"purple"},{"hex":"#443c5c","weight":0.0039,"lightness":0.298,"saturation":0.2105,"hue_group":"blue"},{"hex":"#4c445c","weight":0.0039,"lightness":0.3137,"saturation":0.15,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blue_terracotta.png","family":"blue_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:iron_chain","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_hyphae","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stem","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spawner","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:respawn_anchor","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeating_command_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.832},{"type":"color_neighbors","target":"minecraft:tinted_glass","label":"Palette proche: Tinted Glass","confidence":0.789},{"type":"color_neighbors","target":"minecraft:chorus_plant","label":"Palette proche: Chorus Plant","confidence":0.785},{"type":"color_neighbors","target":"minecraft:iron_chain","label":"Palette proche: Iron Chain","confidence":0.772},{"type":"color_neighbors","target":"minecraft:spawner","label":"Palette proche: Spawner","confidence":0.749},{"type":"color_neighbors","target":"minecraft:gray_concrete_powder","label":"Palette proche: Gray Concrete Powder","confidence":0.736},{"type":"color_neighbors","target":"minecraft:warped_hyphae","label":"Palette proche: Warped Hyphae","confidence":0.731},{"type":"color_neighbors","target":"minecraft:warped_stem","label":"Palette proche: Warped Stem","confidence":0.731},{"type":"color_neighbors","target":"minecraft:gray_carpet","label":"Palette proche: Gray Carpet","confidence":0.725},{"type":"color_neighbors","target":"minecraft:gray_wool","label":"Palette proche: Gray Wool","confidence":0.725},{"type":"color_neighbors","target":"minecraft:shulker_box","label":"Palette proche: Shulker Box","confidence":0.716},{"type":"color_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Palette proche: Chiseled Polished Blackstone","confidence":0.715},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par sous-ton: Black Candle","confidence":0.862},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par palette: Tinted Glass","confidence":0.826},{"type":"color_bridge","target":"minecraft:chorus_plant","label":"Pont de nuance par sous-ton: Chorus Plant","confidence":0.823},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par palette: Iron Chain","confidence":0.812},{"type":"color_bridge","target":"minecraft:spawner","label":"Pont de nuance par palette: Spawner","confidence":0.793},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.783},{"type":"color_bridge","target":"minecraft:warped_hyphae","label":"Pont de nuance par palette: Warped Hyphae","confidence":0.778},{"type":"color_bridge","target":"minecraft:warped_stem","label":"Pont de nuance par palette: Warped Stem","confidence":0.778},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.774},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.774},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.648},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.628},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.627},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.627},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.614},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.599},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.599},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.599}],"category":"building"},{"id":"minecraft:blue_wall_banner","name":"Blue Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"blue_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_wall_banner","label":"Palette proche: Cyan Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_wall_banner","label":"Couleurs analogues: Brown Wall Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:blue_wool","name":"Blue Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#35399d","dominant_hex":"#3c47ab","average_hex":"#35399d","hue_group":"blue","lightness":0.4118,"saturation":0.4952,"palette":["#3c47ab","#3b3ca4","#2c3194","#343494","#34349c","#343c9c"],"color_groups":[{"hex":"#3c47ab","weight":0.2188,"lightness":0.4529,"saturation":0.4805,"hue_group":"blue"},{"hex":"#3b3ca4","weight":0.1836,"lightness":0.4373,"saturation":0.4709,"hue_group":"blue"},{"hex":"#2c3194","weight":0.1758,"lightness":0.3765,"saturation":0.5417,"hue_group":"blue"},{"hex":"#343494","weight":0.1641,"lightness":0.3922,"saturation":0.48,"hue_group":"blue"},{"hex":"#34349c","weight":0.1602,"lightness":0.4078,"saturation":0.5,"hue_group":"blue"},{"hex":"#343c9c","weight":0.0977,"lightness":0.4078,"saturation":0.5,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blue_wool.png","family":"blue_wool","relations":[{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_shulker_box","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blue_carpet","label":"Palette proche: Blue Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_shulker_box","label":"Palette proche: Blue Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_concrete","label":"Palette proche: Blue Concrete","confidence":0.935},{"type":"color_neighbors","target":"minecraft:blue_concrete_powder","label":"Palette proche: Blue Concrete Powder","confidence":0.911},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.911},{"type":"color_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Palette proche: Blue Stained Glass Pane","confidence":0.871},{"type":"color_neighbors","target":"minecraft:blue_stained_glass","label":"Palette proche: Blue Stained Glass","confidence":0.864},{"type":"color_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Palette proche: Blue Glazed Terracotta","confidence":0.846},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.713},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.713},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.702},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.702},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.709},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.662},{"type":"color_bridge","target":"minecraft:purple_concrete_powder","label":"Pont de nuance par palette: Purple Concrete Powder","confidence":0.659},{"type":"color_bridge","target":"minecraft:purple_carpet","label":"Pont de nuance par palette: Purple Carpet","confidence":0.638},{"type":"color_bridge","target":"minecraft:purple_wool","label":"Pont de nuance par palette: Purple Wool","confidence":0.638},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.629},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par palette: Shulker Box","confidence":0.614},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.611},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.6},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.599},{"type":"color_analogous","target":"minecraft:blue_carpet","label":"Couleurs analogues: Blue Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_concrete","label":"Couleurs analogues: Blue Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_shulker_box","label":"Couleurs analogues: Blue Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_concrete_powder","label":"Couleurs analogues: Blue Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_candle","label":"Couleurs analogues: Black Candle","confidence":0.84},{"type":"color_analogous","target":"minecraft:blue_candle","label":"Couleurs analogues: Blue Candle","confidence":0.805},{"type":"color_analogous","target":"minecraft:blue_glazed_terracotta","label":"Couleurs analogues: Blue Glazed Terracotta","confidence":0.781},{"type":"color_analogous","target":"minecraft:blue_stained_glass","label":"Couleurs analogues: Blue Stained Glass","confidence":0.781},{"type":"color_complement","target":"minecraft:sponge","label":"Contraste complementaire: Sponge","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo_sapling","label":"Contraste complementaire: Bamboo Sapling","confidence":0.96},{"type":"color_complement","target":"minecraft:turtle_egg","label":"Contraste complementaire: Turtle Egg","confidence":0.96},{"type":"color_complement","target":"minecraft:acacia_sapling","label":"Contraste complementaire: Acacia Sapling","confidence":0.927},{"type":"color_complement","target":"minecraft:potted_acacia_sapling","label":"Contraste complementaire: Potted Acacia Sapling","confidence":0.927},{"type":"color_complement","target":"minecraft:yellow_stained_glass_pane","label":"Contraste complementaire: Yellow Stained Glass Pane","confidence":0.901},{"type":"color_complement","target":"minecraft:yellow_stained_glass","label":"Contraste complementaire: Yellow Stained Glass","confidence":0.895},{"type":"color_complement","target":"minecraft:cocoa","label":"Contraste complementaire: Cocoa","confidence":0.856},{"type":"color_triad","target":"minecraft:nether_wart","label":"Harmonie triadique: Nether Wart","confidence":0.96},{"type":"color_triad","target":"minecraft:black_glazed_terracotta","label":"Harmonie triadique: Black Glazed Terracotta","confidence":0.959},{"type":"color_triad","target":"minecraft:red_nether_brick_slab","label":"Harmonie triadique: Red Nether Brick Slab","confidence":0.959},{"type":"color_triad","target":"minecraft:red_nether_brick_stairs","label":"Harmonie triadique: Red Nether Brick Stairs","confidence":0.959},{"type":"color_triad","target":"minecraft:red_nether_brick_wall","label":"Harmonie triadique: Red Nether Brick Wall","confidence":0.959},{"type":"color_triad","target":"minecraft:red_nether_bricks","label":"Harmonie triadique: Red Nether Bricks","confidence":0.959},{"type":"color_triad","target":"minecraft:cherry_hanging_sign","label":"Harmonie triadique: Cherry Hanging Sign","confidence":0.955},{"type":"color_triad","target":"minecraft:cherry_wall_hanging_sign","label":"Harmonie triadique: Cherry Wall Hanging Sign","confidence":0.955},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.934},{"type":"color_square","target":"minecraft:cherry_log","label":"Harmonie carree: Cherry Log","confidence":0.884},{"type":"color_square","target":"minecraft:cherry_wood","label":"Harmonie carree: Cherry Wood","confidence":0.884},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.882},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.876},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.872},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.872},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.864},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:ice","label":"Contraste clair sombre: Ice","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55}],"category":"decorative"},{"id":"minecraft:bogged","name":"Bogged","entry_type":"mob","description":"A bogged is a mushroom-covered skeleton variant that spawns in swamps and mangrove swamps. Bogged behave similarly to skeletons, but have less health, fire their bows more slowly, take damage from powder snow, cannot convert to strays, and shoot tipped arrows of Poison.","history":[{"version":"1.20.3","status":"added","notes":"Added skeletons with Poison tipped arrows as placeholders for bogged in trial chambers."},{"version":"1.20.5","status":"added","notes":"Added bogged, replacing skeletons with Poison tipped arrows in trial chambers."}],"colors":{"primary":"#817b53","dominant_hex":"#505829","average_hex":"#817b53","hue_group":"yellow","lightness":0.4157,"saturation":0.217,"palette":["#505829","#828066","#394415","#c9b891","#bc8961","#979b7d"],"color_groups":[{"hex":"#505829","weight":0.2125,"lightness":0.2529,"saturation":0.3643,"hue_group":"yellow"},{"hex":"#828066","weight":0.1864,"lightness":0.4549,"saturation":0.1207,"hue_group":"yellow"},{"hex":"#394415","weight":0.1799,"lightness":0.1745,"saturation":0.5281,"hue_group":"yellow"},{"hex":"#c9b891","weight":0.1799,"lightness":0.6784,"saturation":0.3415,"hue_group":"yellow"},{"hex":"#bc8961","weight":0.1213,"lightness":0.5588,"saturation":0.4044,"hue_group":"red"},{"hex":"#979b7d","weight":0.1199,"lightness":0.549,"saturation":0.1304,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/skeleton/bogged.png","family":"bogged","relations":[{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:bogged_spawn_egg","name":"Bogged Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#71684a","dominant_hex":"#a9ab94","average_hex":"#71684a","hue_group":"yellow","lightness":0.3667,"saturation":0.2086,"palette":["#a9ab94","#3d4d15","#7b7b5f","#585b41","#34341c","#bd181d"],"color_groups":[{"hex":"#a9ab94","weight":0.25,"lightness":0.6255,"saturation":0.1204,"hue_group":"yellow"},{"hex":"#3d4d15","weight":0.2027,"lightness":0.1922,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#7b7b5f","weight":0.1824,"lightness":0.4275,"saturation":0.1284,"hue_group":"yellow"},{"hex":"#585b41","weight":0.1622,"lightness":0.3059,"saturation":0.1667,"hue_group":"yellow"},{"hex":"#34341c","weight":0.1216,"lightness":0.1569,"saturation":0.3,"hue_group":"yellow"},{"hex":"#bd181d","weight":0.0811,"lightness":0.4176,"saturation":0.7746,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/bogged_spawn_egg.png","family":"bogged_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:command_block_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fishing_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_shovel","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:bolt_armor_trim_smithing_template","name":"Bolt Armor Trim Smithing Template","entry_type":"item","description":"Bolt armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, a block of copper or waxed block of copper, and diamonds.","history":[{"version":"1.20.5","status":"added","notes":"Added the bolt armor trim smithing template."}],"colors":{"primary":"#9a634d","dominant_hex":"#cd7455","average_hex":"#9a634d","hue_group":"red","lightness":0.4529,"saturation":0.3333,"palette":["#cd7455","#a85e44","#642414","#57d4d8","#843c24","#944c34"],"color_groups":[{"hex":"#cd7455","weight":0.2848,"lightness":0.5686,"saturation":0.5455,"hue_group":"red"},{"hex":"#a85e44","weight":0.2606,"lightness":0.4627,"saturation":0.4237,"hue_group":"red"},{"hex":"#642414","weight":0.1273,"lightness":0.2353,"saturation":0.6667,"hue_group":"red"},{"hex":"#57d4d8","weight":0.1091,"lightness":0.5941,"saturation":0.6232,"hue_group":"cyan"},{"hex":"#843c24","weight":0.1091,"lightness":0.3294,"saturation":0.5714,"hue_group":"red"},{"hex":"#944c34","weight":0.1091,"lightness":0.3922,"saturation":0.48,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/bolt_armor_trim_smithing_template.png","family":"bolt_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_armor","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:bone","name":"Bone","entry_type":"item","description":"A bone is an item primarily obtained from skeletons and similar mobs. It can be crafted into bone meal or used to tame wild wolves.","history":[{"version":"1.2","status":"added","notes":"Added bones."},{"version":"1.4.2 12w36a","status":"added","notes":"Added wither skeletons , which has a chance to drop bones when killed."},{"version":"1.6.1 13w16a","status":"added","notes":"Added skeleton horses , which drop bones when killed."}],"colors":{"primary":"#cccbb7","dominant_hex":"#7c7c6c","average_hex":"#cccbb7","hue_group":"yellow","lightness":0.7588,"saturation":0.1707,"palette":["#7c7c6c","#fcfcec","#ccc4a4","#ece4d4","#fcfcfc"],"color_groups":[{"hex":"#7c7c6c","weight":0.2647,"lightness":0.4549,"saturation":0.069,"hue_group":"neutral"},{"hex":"#fcfcec","weight":0.25,"lightness":0.9569,"saturation":0.7273,"hue_group":"yellow"},{"hex":"#ccc4a4","weight":0.2353,"lightness":0.7216,"saturation":0.2817,"hue_group":"yellow"},{"hex":"#ece4d4","weight":0.1471,"lightness":0.8784,"saturation":0.3871,"hue_group":"yellow"},{"hex":"#fcfcfc","weight":0.1029,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/bone.png","family":"bone","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:guster_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:field_masoned_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bordure_indented_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mojang_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:filled_map","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:map","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:bone_block","name":"Bone Block","entry_type":"block","description":"Bone blocks are storage blocks equivalent to 9 pieces of bone meal.","history":[{"version":"1.10 16w20a","status":"added","notes":"Added bone blocks."},{"version":"wiki-history","status":"added","notes":"added for bone blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb bone blocks, providing the football/regular effect to the mob."}],"colors":{"primary":"#e5e2d0","dominant_hex":"#ece4d4","average_hex":"#e5e2d0","hue_group":"yellow","lightness":0.8569,"saturation":0.2877,"palette":["#ece4d4","#e4e4d4","#dcdcc4","#e4dccc"],"color_groups":[{"hex":"#ece4d4","weight":0.4609,"lightness":0.8784,"saturation":0.3871,"hue_group":"yellow"},{"hex":"#e4e4d4","weight":0.2461,"lightness":0.8627,"saturation":0.2286,"hue_group":"yellow"},{"hex":"#dcdcc4","weight":0.1562,"lightness":0.8157,"saturation":0.2553,"hue_group":"yellow"},{"hex":"#e4dccc","weight":0.1367,"lightness":0.8471,"saturation":0.3077,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bone_block_side.png","family":"bone_block","relations":[{"type":"visual_neighbors","target":"minecraft:quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_pillar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sculk_shrieker","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_quartz_block","label":"Palette proche: Chiseled Quartz Block","confidence":0.867},{"type":"color_neighbors","target":"minecraft:smooth_quartz","label":"Palette proche: Smooth Quartz","confidence":0.857},{"type":"color_neighbors","target":"minecraft:smooth_quartz_slab","label":"Palette proche: Smooth Quartz Slab","confidence":0.857},{"type":"color_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Palette proche: Smooth Quartz Stairs","confidence":0.857},{"type":"color_neighbors","target":"minecraft:quartz_block","label":"Palette proche: Quartz Block","confidence":0.849},{"type":"color_neighbors","target":"minecraft:quartz_slab","label":"Palette proche: Quartz Slab","confidence":0.849},{"type":"color_neighbors","target":"minecraft:quartz_stairs","label":"Palette proche: Quartz Stairs","confidence":0.849},{"type":"color_neighbors","target":"minecraft:quartz_bricks","label":"Palette proche: Quartz Bricks","confidence":0.841},{"type":"color_neighbors","target":"minecraft:birch_door","label":"Palette proche: Birch Door","confidence":0.805},{"type":"color_neighbors","target":"minecraft:quartz_pillar","label":"Palette proche: Quartz Pillar","confidence":0.795},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.792},{"type":"color_neighbors","target":"minecraft:sculk_shrieker","label":"Palette proche: Sculk Shrieker","confidence":0.785},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.829},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.807},{"type":"color_bridge","target":"minecraft:target","label":"Pont de nuance par palette: Target","confidence":0.788},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.75},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.75},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par palette: Pale Oak Shelf","confidence":0.737},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.684},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.682},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.682},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.682},{"type":"color_analogous","target":"minecraft:ochre_froglight","label":"Couleurs analogues: Ochre Froglight","confidence":0.933},{"type":"color_analogous","target":"minecraft:cut_sandstone_slab","label":"Couleurs analogues: Cut Sandstone Slab","confidence":0.927},{"type":"color_analogous","target":"minecraft:sandstone_slab","label":"Couleurs analogues: Sandstone Slab","confidence":0.927},{"type":"color_analogous","target":"minecraft:sandstone_stairs","label":"Couleurs analogues: Sandstone Stairs","confidence":0.927},{"type":"color_analogous","target":"minecraft:smooth_sandstone","label":"Couleurs analogues: Smooth Sandstone","confidence":0.927},{"type":"color_analogous","target":"minecraft:smooth_sandstone_slab","label":"Couleurs analogues: Smooth Sandstone Slab","confidence":0.927},{"type":"color_analogous","target":"minecraft:smooth_sandstone_stairs","label":"Couleurs analogues: Smooth Sandstone Stairs","confidence":0.927},{"type":"color_analogous","target":"minecraft:horn_coral","label":"Couleurs analogues: Horn Coral","confidence":0.916},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.901},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.874},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.865},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.849},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.784},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.771},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.77},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.77},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.949},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.936},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.913},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.912},{"type":"color_triad","target":"minecraft:warped_trapdoor","label":"Harmonie triadique: Warped Trapdoor","confidence":0.911},{"type":"color_triad","target":"minecraft:warped_roots","label":"Harmonie triadique: Warped Roots","confidence":0.907},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.894},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.886},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.858},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.844},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.844},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.838},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.793},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.792},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.791},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.782},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.737},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.708},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.704},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.699},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.695},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.695},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.679},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.678}],"category":""},{"id":"minecraft:bone_meal","name":"Bone Meal","entry_type":"item","description":"Bone meal is an item that can cause many plants and plantlike blocks to instantly grow when used on them by hand or via a dispenser. It can also be used as a crafting ingredient for dyes and bone blocks.","history":[{"version":"1.2","status":"added","notes":"Added bone meal."},{"version":"1.8 14w30a","status":"added","notes":"Added banners , which can be dyed with bone meal ."}],"colors":{"primary":"#9f9eb4","dominant_hex":"#7c7c9c","average_hex":"#9f9eb4","hue_group":"blue","lightness":0.6627,"saturation":0.1279,"palette":["#7c7c9c","#bcbccc","#444464","#ececec","#fcfcfc","#5c547c"],"color_groups":[{"hex":"#7c7c9c","weight":0.2117,"lightness":0.549,"saturation":0.1391,"hue_group":"blue"},{"hex":"#bcbccc","weight":0.2044,"lightness":0.7686,"saturation":0.1356,"hue_group":"blue"},{"hex":"#444464","weight":0.1606,"lightness":0.3294,"saturation":0.1905,"hue_group":"blue"},{"hex":"#ececec","weight":0.1606,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1387,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c547c","weight":0.1241,"lightness":0.4078,"saturation":0.1923,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/bone_meal.png","family":"bone_meal","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lingering_potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_armor_trim_smithing_template","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wind_charge","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mace","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_shard","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ominous_bottle","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:book","name":"Book","entry_type":"item","description":"A book is an item that can be used as a crafting material, or to store enchantments in a form that can be applied to any valid item using an anvil.","history":[{"version":"v1.0.11","status":"added","notes":"Added books."},{"version":"1.12 17w13a","status":"added","notes":"Added the knowledge book , a green-colored book that grants the player a recipe for crafting ."}],"colors":{"primary":"#5a4729","dominant_hex":"#644c16","average_hex":"#5a4729","hue_group":"yellow","lightness":0.2569,"saturation":0.374,"palette":["#644c16","#b0b0b0","#342404","#44240c","#543014","#141404"],"color_groups":[{"hex":"#644c16","weight":0.3092,"lightness":0.2392,"saturation":0.6393,"hue_group":"yellow"},{"hex":"#b0b0b0","weight":0.1645,"lightness":0.6902,"saturation":0.0,"hue_group":"neutral"},{"hex":"#342404","weight":0.1579,"lightness":0.1098,"saturation":0.8571,"hue_group":"yellow"},{"hex":"#44240c","weight":0.1382,"lightness":0.1569,"saturation":0.7,"hue_group":"red"},{"hex":"#543014","weight":0.125,"lightness":0.2039,"saturation":0.6154,"hue_group":"red"},{"hex":"#141404","weight":0.1053,"lightness":0.0471,"saturation":0.6667,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/book.png","family":"book","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:crossbow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stew","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:bookshelf","name":"Bookshelf","entry_type":"block","description":"A bookshelf is a block that improves enchantments applied with an enchanting table when placed around one, up to a maximum of fifteen bookshelves, at the expense of level requirement.","history":[{"version":"0.26","status":"added","notes":"Added bookshelves."}],"colors":{"primary":"#755f3c","dominant_hex":"#b89664","average_hex":"#755f3c","hue_group":"yellow","lightness":0.3471,"saturation":0.322,"palette":["#b89664","#927f36","#362c1a","#26637f","#66530b","#a41414"],"color_groups":[{"hex":"#b89664","weight":0.2266,"lightness":0.5569,"saturation":0.3717,"hue_group":"yellow"},{"hex":"#927f36","weight":0.2031,"lightness":0.3922,"saturation":0.46,"hue_group":"yellow"},{"hex":"#362c1a","weight":0.1875,"lightness":0.1569,"saturation":0.35,"hue_group":"yellow"},{"hex":"#26637f","weight":0.1484,"lightness":0.3235,"saturation":0.5394,"hue_group":"cyan"},{"hex":"#66530b","weight":0.125,"lightness":0.2216,"saturation":0.8053,"hue_group":"yellow"},{"hex":"#a41414","weight":0.1094,"lightness":0.3608,"saturation":0.7826,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bookshelf.png","family":"bookshelf","relations":[{"type":"visual_neighbors","target":"minecraft:flowering_azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafting_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ladder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lever","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Palette proche: Brown Glazed Terracotta","confidence":0.729},{"type":"color_neighbors","target":"minecraft:lectern","label":"Palette proche: Lectern","confidence":0.715},{"type":"color_neighbors","target":"minecraft:soul_torch","label":"Palette proche: Soul Torch","confidence":0.714},{"type":"color_neighbors","target":"minecraft:soul_wall_torch","label":"Palette proche: Soul Wall Torch","confidence":0.714},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.713},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.713},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.713},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.713},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.713},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.713},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.713},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.713},{"type":"color_bridge","target":"minecraft:brown_glazed_terracotta","label":"Pont de nuance par sous-ton: Brown Glazed Terracotta","confidence":0.776},{"type":"color_bridge","target":"minecraft:soul_torch","label":"Pont de nuance par sous-ton: Soul Torch","confidence":0.764},{"type":"color_bridge","target":"minecraft:soul_wall_torch","label":"Pont de nuance par sous-ton: Soul Wall Torch","confidence":0.764},{"type":"color_bridge","target":"minecraft:campfire","label":"Pont de nuance par sous-ton: Campfire","confidence":0.762},{"type":"color_bridge","target":"minecraft:soul_campfire","label":"Pont de nuance par sous-ton: Soul Campfire","confidence":0.762},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.738},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.735},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.718},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.713},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.707},{"type":"color_analogous","target":"minecraft:oak_trapdoor","label":"Couleurs analogues: Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:ladder","label":"Couleurs analogues: Ladder","confidence":0.96},{"type":"color_analogous","target":"minecraft:lever","label":"Couleurs analogues: Lever","confidence":0.96},{"type":"color_analogous","target":"minecraft:crafting_table","label":"Couleurs analogues: Crafting Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_log","label":"Couleurs analogues: Stripped Spruce Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_wood","label":"Couleurs analogues: Stripped Spruce Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.922},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.889},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.872},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.867},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.866},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.857},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.85},{"type":"color_triad","target":"minecraft:oxidized_copper_bars","label":"Harmonie triadique: Oxidized Copper Bars","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_bars","label":"Harmonie triadique: Waxed Oxidized Copper Bars","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_bulb","label":"Harmonie triadique: Oxidized Copper Bulb","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_bulb","label":"Harmonie triadique: Waxed Oxidized Copper Bulb","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper","label":"Harmonie triadique: Oxidized Cut Copper","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.909},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.909},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.907},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.903},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.898},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.887},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.87},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.818},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.604},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.571},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.557},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.557},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.557},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.557},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_terracotta","label":"Contraste clair sombre: White Terracotta","confidence":0.55}],"category":"utility"},{"id":"minecraft:bordure_indented_banner_pattern","name":"Bordure Indented Banner Pattern","entry_type":"item","description":"A bordure indented banner pattern is a banner pattern used to customize banners with a shape of a fancy border.","history":[{"version":"1.21.2 24w33a","status":"added","notes":"Added bordure indented banner patterns. Prior to that, they needed a loom to get the banner pattern."}],"colors":{"primary":"#b6ac9b","dominant_hex":"#ececec","average_hex":"#b6ac9b","hue_group":"yellow","lightness":0.6608,"saturation":0.1561,"palette":["#ececec","#65473d","#847454","#dcd4bc","#b4a484","#948c6c"],"color_groups":[{"hex":"#ececec","weight":0.3659,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#65473d","weight":0.1707,"lightness":0.3176,"saturation":0.2469,"hue_group":"red"},{"hex":"#847454","weight":0.1646,"lightness":0.4235,"saturation":0.2222,"hue_group":"yellow"},{"hex":"#dcd4bc","weight":0.128,"lightness":0.8,"saturation":0.3137,"hue_group":"yellow"},{"hex":"#b4a484","weight":0.1159,"lightness":0.6118,"saturation":0.2424,"hue_group":"yellow"},{"hex":"#948c6c","weight":0.0549,"lightness":0.502,"saturation":0.1575,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/bordure_indented_banner_pattern.png","family":"bordure_indented_banner_pattern","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:piglin_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:field_masoned_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mojang_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:bow","name":"Bow","entry_type":"item","description":"A bow is a ranged weapon that can fire arrows, tipped arrows, and spectral arrows\u200c[Java Edition only]. The damage and range of fired arrows depends on the arrow type, enchantments on the bow, and how long the use button was held before releasing.","history":[{"version":"0.31 20100110","status":"added","notes":"Added bow texture to items.png ."},{"version":"20100122-2251","status":"added","notes":"Added bows as item with changed texture. The right mouse button can be held down to fire in rapid succession. Each arrow deals 4 HP for each hit. They fly in a ballistic trajectory affected by gravity and drag in air or"}],"colors":{"primary":"#514228","dominant_hex":"#4c3414","average_hex":"#514228","hue_group":"yellow","lightness":0.2373,"saturation":0.3388,"palette":["#4c3414","#2c1c0c","#444444","#6c4c1c","#767676","#8c6424"],"color_groups":[{"hex":"#4c3414","weight":0.2857,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.2286,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#444444","weight":0.1429,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c4c1c","weight":0.1143,"lightness":0.2667,"saturation":0.5882,"hue_group":"yellow"},{"hex":"#767676","weight":0.1143,"lightness":0.4627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c6424","weight":0.1143,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/bow.png","family":"bow","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:crossbow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:book","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armor_stand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:bowl","name":"Bowl","entry_type":"item","description":"Bowls are containers that can hold certain foods.","history":[{"version":"0.31 20100129-2332","status":"added","notes":"Added bowls."},{"version":"1.0.0","status":"added","notes":"Added mooshrooms , which can be milked with a bowl."}],"colors":{"primary":"#463009","dominant_hex":"#3b2b0c","average_hex":"#463009","hue_group":"yellow","lightness":0.1549,"saturation":0.7722,"palette":["#3b2b0c","#543c0c","#744c0c","#1c1404","#44340c","#3c2404"],"color_groups":[{"hex":"#3b2b0c","weight":0.1892,"lightness":0.1392,"saturation":0.662,"hue_group":"yellow"},{"hex":"#543c0c","weight":0.1892,"lightness":0.1882,"saturation":0.75,"hue_group":"yellow"},{"hex":"#744c0c","weight":0.1757,"lightness":0.251,"saturation":0.8125,"hue_group":"yellow"},{"hex":"#1c1404","weight":0.1622,"lightness":0.0627,"saturation":0.75,"hue_group":"yellow"},{"hex":"#44340c","weight":0.1486,"lightness":0.1569,"saturation":0.7,"hue_group":"yellow"},{"hex":"#3c2404","weight":0.1351,"lightness":0.1255,"saturation":0.875,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/bowl.png","family":"bowl","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:carrot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:debug_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_carrot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:brain_coral","name":"Brain Coral","entry_type":"block","description":"Coral is a type of non-solid block that comes in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w10a","status":"added","notes":"Added coral plants."},{"version":"18w10d","status":"added","notes":"Added coral reefs , allowing coral plants to generate naturally."}],"colors":{"primary":"#c65598","dominant_hex":"#9c2c74","average_hex":"#c65598","hue_group":"purple","lightness":0.5549,"saturation":0.4978,"palette":["#9c2c74","#d4549c","#ec8cc4","#bc4494","#dc64a4","#e47cbc"],"color_groups":[{"hex":"#9c2c74","weight":0.2946,"lightness":0.3922,"saturation":0.56,"hue_group":"purple"},{"hex":"#d4549c","weight":0.25,"lightness":0.5804,"saturation":0.5981,"hue_group":"purple"},{"hex":"#ec8cc4","weight":0.1964,"lightness":0.7373,"saturation":0.7164,"hue_group":"purple"},{"hex":"#bc4494","weight":0.1696,"lightness":0.502,"saturation":0.4724,"hue_group":"purple"},{"hex":"#dc64a4","weight":0.0446,"lightness":0.6275,"saturation":0.6316,"hue_group":"purple"},{"hex":"#e47cbc","weight":0.0446,"lightness":0.6902,"saturation":0.6582,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brain_coral.png","family":"brain_coral","relations":[{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Palette proche: Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spore_blossom","label":"Palette proche: Spore Blossom","confidence":0.836},{"type":"color_neighbors","target":"minecraft:pink_concrete","label":"Palette proche: Pink Concrete","confidence":0.78},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.77},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.762},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.761},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.755},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.755},{"type":"color_neighbors","target":"minecraft:magenta_shulker_box","label":"Palette proche: Magenta Shulker Box","confidence":0.75},{"type":"color_neighbors","target":"minecraft:magenta_candle","label":"Palette proche: Magenta Candle","confidence":0.747},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.718},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.718},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.664},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.655},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.655},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.655},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.648},{"type":"color_bridge","target":"minecraft:magenta_stained_glass_pane","label":"Pont de nuance par palette: Magenta Stained Glass Pane","confidence":0.619},{"type":"color_bridge","target":"minecraft:red_glazed_terracotta","label":"Pont de nuance par palette: Red Glazed Terracotta","confidence":0.612},{"type":"color_bridge","target":"minecraft:closed_eyeblossom","label":"Pont de nuance par palette: Closed Eyeblossom","confidence":0.598},{"type":"color_analogous","target":"minecraft:brain_coral_fan","label":"Couleurs analogues: Brain Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:brain_coral_wall_fan","label":"Couleurs analogues: Brain Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:brain_coral_block","label":"Couleurs analogues: Brain Coral Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:spore_blossom","label":"Couleurs analogues: Spore Blossom","confidence":0.953},{"type":"color_analogous","target":"minecraft:pink_petals","label":"Couleurs analogues: Pink Petals","confidence":0.92},{"type":"color_analogous","target":"minecraft:cherry_log","label":"Couleurs analogues: Cherry Log","confidence":0.8},{"type":"color_analogous","target":"minecraft:cherry_wood","label":"Couleurs analogues: Cherry Wood","confidence":0.8},{"type":"color_analogous","target":"minecraft:crimson_hanging_sign","label":"Couleurs analogues: Crimson Hanging Sign","confidence":0.725},{"type":"color_complement","target":"minecraft:emerald_block","label":"Contraste complementaire: Emerald Block","confidence":0.741},{"type":"color_complement","target":"minecraft:sweet_berry_bush","label":"Contraste complementaire: Sweet Berry Bush","confidence":0.725},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.711},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.711},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.708},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.592},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.592},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.592},{"type":"color_triad","target":"minecraft:birch_sapling","label":"Harmonie triadique: Birch Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_birch_sapling","label":"Harmonie triadique: Potted Birch Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_red_tulip","label":"Harmonie triadique: Potted Red Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:red_tulip","label":"Harmonie triadique: Red Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo","label":"Harmonie triadique: Bamboo","confidence":0.96},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.954},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.954},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.954},{"type":"color_square","target":"minecraft:horn_coral_block","label":"Harmonie carree: Horn Coral Block","confidence":0.953},{"type":"color_square","target":"minecraft:firefly_bush","label":"Harmonie carree: Firefly Bush","confidence":0.942},{"type":"color_square","target":"minecraft:bamboo_sapling","label":"Harmonie carree: Bamboo Sapling","confidence":0.897},{"type":"color_square","target":"minecraft:orange_glazed_terracotta","label":"Harmonie carree: Orange Glazed Terracotta","confidence":0.895},{"type":"color_square","target":"minecraft:blue_carpet","label":"Harmonie carree: Blue Carpet","confidence":0.864},{"type":"color_square","target":"minecraft:blue_wool","label":"Harmonie carree: Blue Wool","confidence":0.864},{"type":"color_square","target":"minecraft:bone_block","label":"Harmonie carree: Bone Block","confidence":0.858},{"type":"color_square","target":"minecraft:sponge","label":"Harmonie carree: Sponge","confidence":0.85},{"type":"value_contrast","target":"minecraft:cherry_log","label":"Contraste clair sombre: Cherry Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_wood","label":"Contraste clair sombre: Cherry Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_glazed_terracotta","label":"Contraste clair sombre: Black Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone","label":"Contraste clair sombre: Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_wall","label":"Contraste clair sombre: Blackstone Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_nether_bricks","label":"Contraste clair sombre: Chiseled Nether Bricks","confidence":0.55}],"category":"natural"},{"id":"minecraft:brain_coral_block","name":"Brain Coral Block","entry_type":"block","description":"A coral block is a solid block that comes in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"20100629","status":"added","notes":"added to terrain.png ."},{"version":"1.13 18w09a","status":"added","notes":"Added coral."},{"version":"18w10d","status":"added","notes":"Added coral reefs , allowing coral to generate naturally."}],"colors":{"primary":"#cf5b9f","dominant_hex":"#bc4494","average_hex":"#cf5b9f","hue_group":"purple","lightness":0.5843,"saturation":0.5472,"palette":["#bc4494","#dc64a4","#e47cbc","#d4549c","#aa3382","#ec8cc4"],"color_groups":[{"hex":"#bc4494","weight":0.2305,"lightness":0.502,"saturation":0.4724,"hue_group":"purple"},{"hex":"#dc64a4","weight":0.2227,"lightness":0.6275,"saturation":0.6316,"hue_group":"purple"},{"hex":"#e47cbc","weight":0.2109,"lightness":0.6902,"saturation":0.6582,"hue_group":"purple"},{"hex":"#d4549c","weight":0.1602,"lightness":0.5804,"saturation":0.5981,"hue_group":"purple"},{"hex":"#aa3382","weight":0.1289,"lightness":0.4333,"saturation":0.5385,"hue_group":"purple"},{"hex":"#ec8cc4","weight":0.0469,"lightness":0.7373,"saturation":0.7164,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brain_coral_block.png","family":"brain_coral_block","relations":[{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Palette proche: Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brain_coral","label":"Palette proche: Brain Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spore_blossom","label":"Palette proche: Spore Blossom","confidence":0.845},{"type":"color_neighbors","target":"minecraft:pink_concrete","label":"Palette proche: Pink Concrete","confidence":0.802},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.797},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.794},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.771},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.771},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.764},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.749},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.749},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.719},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.719},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.661},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.659},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.659},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.659},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.651},{"type":"color_bridge","target":"minecraft:magenta_stained_glass_pane","label":"Pont de nuance par palette: Magenta Stained Glass Pane","confidence":0.63},{"type":"color_bridge","target":"minecraft:closed_eyeblossom","label":"Pont de nuance par palette: Closed Eyeblossom","confidence":0.604},{"type":"color_bridge","target":"minecraft:potted_closed_eyeblossom","label":"Pont de nuance par palette: Potted Closed Eyeblossom","confidence":0.604},{"type":"color_analogous","target":"minecraft:spore_blossom","label":"Couleurs analogues: Spore Blossom","confidence":0.96},{"type":"color_analogous","target":"minecraft:brain_coral_fan","label":"Couleurs analogues: Brain Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:brain_coral_wall_fan","label":"Couleurs analogues: Brain Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:brain_coral","label":"Couleurs analogues: Brain Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_petals","label":"Couleurs analogues: Pink Petals","confidence":0.935},{"type":"color_analogous","target":"minecraft:cherry_log","label":"Couleurs analogues: Cherry Log","confidence":0.803},{"type":"color_analogous","target":"minecraft:cherry_wood","label":"Couleurs analogues: Cherry Wood","confidence":0.803},{"type":"color_analogous","target":"minecraft:crimson_hanging_sign","label":"Couleurs analogues: Crimson Hanging Sign","confidence":0.728},{"type":"color_complement","target":"minecraft:emerald_block","label":"Contraste complementaire: Emerald Block","confidence":0.733},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.726},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.719},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.719},{"type":"color_complement","target":"minecraft:sweet_berry_bush","label":"Contraste complementaire: Sweet Berry Bush","confidence":0.706},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.601},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.601},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.601},{"type":"color_triad","target":"minecraft:birch_sapling","label":"Harmonie triadique: Birch Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_birch_sapling","label":"Harmonie triadique: Potted Birch Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_red_tulip","label":"Harmonie triadique: Potted Red Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:red_tulip","label":"Harmonie triadique: Red Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.96},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.96},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo","label":"Harmonie triadique: Bamboo","confidence":0.959},{"type":"color_square","target":"minecraft:horn_coral_block","label":"Harmonie carree: Horn Coral Block","confidence":0.94},{"type":"color_square","target":"minecraft:firefly_bush","label":"Harmonie carree: Firefly Bush","confidence":0.921},{"type":"color_square","target":"minecraft:bamboo_sapling","label":"Harmonie carree: Bamboo Sapling","confidence":0.91},{"type":"color_square","target":"minecraft:blue_carpet","label":"Harmonie carree: Blue Carpet","confidence":0.876},{"type":"color_square","target":"minecraft:blue_wool","label":"Harmonie carree: Blue Wool","confidence":0.876},{"type":"color_square","target":"minecraft:orange_glazed_terracotta","label":"Harmonie carree: Orange Glazed Terracotta","confidence":0.875},{"type":"color_square","target":"minecraft:sponge","label":"Harmonie carree: Sponge","confidence":0.864},{"type":"color_square","target":"minecraft:blue_concrete_powder","label":"Harmonie carree: Blue Concrete Powder","confidence":0.851},{"type":"value_contrast","target":"minecraft:cherry_log","label":"Contraste clair sombre: Cherry Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_wood","label":"Contraste clair sombre: Cherry Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_glazed_terracotta","label":"Contraste clair sombre: Black Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone","label":"Contraste clair sombre: Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_wall","label":"Contraste clair sombre: Blackstone Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_nether_bricks","label":"Contraste clair sombre: Chiseled Nether Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55}],"category":"natural"},{"id":"minecraft:brain_coral_fan","name":"Brain Coral Fan","entry_type":"block","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w11a","status":"added","notes":"Added coral fans."}],"colors":{"primary":"#cb549a","dominant_hex":"#bc4494","average_hex":"#cb549a","hue_group":"purple","lightness":0.5627,"saturation":0.5336,"palette":["#bc4494","#d4549c","#e47cbc","#dc64a4","#9c2c74"],"color_groups":[{"hex":"#bc4494","weight":0.3053,"lightness":0.502,"saturation":0.4724,"hue_group":"purple"},{"hex":"#d4549c","weight":0.2526,"lightness":0.5804,"saturation":0.5981,"hue_group":"purple"},{"hex":"#e47cbc","weight":0.1684,"lightness":0.6902,"saturation":0.6582,"hue_group":"purple"},{"hex":"#dc64a4","weight":0.1474,"lightness":0.6275,"saturation":0.6316,"hue_group":"purple"},{"hex":"#9c2c74","weight":0.1263,"lightness":0.3922,"saturation":0.56,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brain_coral_fan.png","family":"brain_coral_fan","relations":[{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Palette proche: Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brain_coral","label":"Palette proche: Brain Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spore_blossom","label":"Palette proche: Spore Blossom","confidence":0.83},{"type":"color_neighbors","target":"minecraft:pink_concrete","label":"Palette proche: Pink Concrete","confidence":0.801},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.774},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.773},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.773},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.762},{"type":"color_neighbors","target":"minecraft:magenta_shulker_box","label":"Palette proche: Magenta Shulker Box","confidence":0.758},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.757},{"type":"color_neighbors","target":"minecraft:magenta_candle","label":"Palette proche: Magenta Candle","confidence":0.756},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.694},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.694},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.676},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.664},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.664},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.664},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.657},{"type":"color_bridge","target":"minecraft:magenta_stained_glass_pane","label":"Pont de nuance par palette: Magenta Stained Glass Pane","confidence":0.636},{"type":"color_bridge","target":"minecraft:red_glazed_terracotta","label":"Pont de nuance par palette: Red Glazed Terracotta","confidence":0.619},{"type":"color_bridge","target":"minecraft:closed_eyeblossom","label":"Pont de nuance par palette: Closed Eyeblossom","confidence":0.613},{"type":"color_analogous","target":"minecraft:brain_coral_wall_fan","label":"Couleurs analogues: Brain Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:brain_coral_block","label":"Couleurs analogues: Brain Coral Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:brain_coral","label":"Couleurs analogues: Brain Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:spore_blossom","label":"Couleurs analogues: Spore Blossom","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_petals","label":"Couleurs analogues: Pink Petals","confidence":0.928},{"type":"color_analogous","target":"minecraft:cherry_log","label":"Couleurs analogues: Cherry Log","confidence":0.804},{"type":"color_analogous","target":"minecraft:cherry_wood","label":"Couleurs analogues: Cherry Wood","confidence":0.804},{"type":"color_analogous","target":"minecraft:crimson_hanging_sign","label":"Couleurs analogues: Crimson Hanging Sign","confidence":0.729},{"type":"color_complement","target":"minecraft:emerald_block","label":"Contraste complementaire: Emerald Block","confidence":0.736},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.721},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.716},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.716},{"type":"color_complement","target":"minecraft:sweet_berry_bush","label":"Contraste complementaire: Sweet Berry Bush","confidence":0.712},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.598},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.598},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.598},{"type":"color_triad","target":"minecraft:birch_sapling","label":"Harmonie triadique: Birch Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_birch_sapling","label":"Harmonie triadique: Potted Birch Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_red_tulip","label":"Harmonie triadique: Potted Red Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:red_tulip","label":"Harmonie triadique: Red Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.96},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.96},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo","label":"Harmonie triadique: Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:horn_coral_block","label":"Harmonie carree: Horn Coral Block","confidence":0.944},{"type":"color_square","target":"minecraft:firefly_bush","label":"Harmonie carree: Firefly Bush","confidence":0.928},{"type":"color_square","target":"minecraft:bamboo_sapling","label":"Harmonie carree: Bamboo Sapling","confidence":0.906},{"type":"color_square","target":"minecraft:orange_glazed_terracotta","label":"Harmonie carree: Orange Glazed Terracotta","confidence":0.881},{"type":"color_square","target":"minecraft:blue_carpet","label":"Harmonie carree: Blue Carpet","confidence":0.872},{"type":"color_square","target":"minecraft:blue_wool","label":"Harmonie carree: Blue Wool","confidence":0.872},{"type":"color_square","target":"minecraft:sponge","label":"Harmonie carree: Sponge","confidence":0.86},{"type":"color_square","target":"minecraft:blue_concrete_powder","label":"Harmonie carree: Blue Concrete Powder","confidence":0.847},{"type":"value_contrast","target":"minecraft:cherry_log","label":"Contraste clair sombre: Cherry Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_wood","label":"Contraste clair sombre: Cherry Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_glazed_terracotta","label":"Contraste clair sombre: Black Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone","label":"Contraste clair sombre: Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_wall","label":"Contraste clair sombre: Blackstone Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_nether_bricks","label":"Contraste clair sombre: Chiseled Nether Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55}],"category":"natural"},{"id":"minecraft:brain_coral_wall_fan","name":"Brain Coral Wall Fan","entry_type":"block","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w11a","status":"added","notes":"Added coral fans."}],"colors":{"primary":"#cb549a","dominant_hex":"#bc4494","average_hex":"#cb549a","hue_group":"purple","lightness":0.5627,"saturation":0.5336,"palette":["#bc4494","#d4549c","#e47cbc","#dc64a4","#9c2c74"],"color_groups":[{"hex":"#bc4494","weight":0.3053,"lightness":0.502,"saturation":0.4724,"hue_group":"purple"},{"hex":"#d4549c","weight":0.2526,"lightness":0.5804,"saturation":0.5981,"hue_group":"purple"},{"hex":"#e47cbc","weight":0.1684,"lightness":0.6902,"saturation":0.6582,"hue_group":"purple"},{"hex":"#dc64a4","weight":0.1474,"lightness":0.6275,"saturation":0.6316,"hue_group":"purple"},{"hex":"#9c2c74","weight":0.1263,"lightness":0.3922,"saturation":0.56,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brain_coral_fan.png","family":"brain_coral_wall_fan","relations":[{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brain_coral","label":"Palette proche: Brain Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spore_blossom","label":"Palette proche: Spore Blossom","confidence":0.83},{"type":"color_neighbors","target":"minecraft:pink_concrete","label":"Palette proche: Pink Concrete","confidence":0.801},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.774},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.773},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.773},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.762},{"type":"color_neighbors","target":"minecraft:magenta_shulker_box","label":"Palette proche: Magenta Shulker Box","confidence":0.758},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.757},{"type":"color_neighbors","target":"minecraft:magenta_candle","label":"Palette proche: Magenta Candle","confidence":0.756},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.694},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.694},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.676},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.664},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.664},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.664},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.657},{"type":"color_bridge","target":"minecraft:magenta_stained_glass_pane","label":"Pont de nuance par palette: Magenta Stained Glass Pane","confidence":0.636},{"type":"color_bridge","target":"minecraft:red_glazed_terracotta","label":"Pont de nuance par palette: Red Glazed Terracotta","confidence":0.619},{"type":"color_bridge","target":"minecraft:closed_eyeblossom","label":"Pont de nuance par palette: Closed Eyeblossom","confidence":0.613},{"type":"color_analogous","target":"minecraft:brain_coral_fan","label":"Couleurs analogues: Brain Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:brain_coral_block","label":"Couleurs analogues: Brain Coral Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:brain_coral","label":"Couleurs analogues: Brain Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:spore_blossom","label":"Couleurs analogues: Spore Blossom","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_petals","label":"Couleurs analogues: Pink Petals","confidence":0.928},{"type":"color_analogous","target":"minecraft:cherry_log","label":"Couleurs analogues: Cherry Log","confidence":0.804},{"type":"color_analogous","target":"minecraft:cherry_wood","label":"Couleurs analogues: Cherry Wood","confidence":0.804},{"type":"color_analogous","target":"minecraft:crimson_hanging_sign","label":"Couleurs analogues: Crimson Hanging Sign","confidence":0.729},{"type":"color_complement","target":"minecraft:emerald_block","label":"Contraste complementaire: Emerald Block","confidence":0.736},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.721},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.716},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.716},{"type":"color_complement","target":"minecraft:sweet_berry_bush","label":"Contraste complementaire: Sweet Berry Bush","confidence":0.712},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.598},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.598},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.598},{"type":"color_triad","target":"minecraft:birch_sapling","label":"Harmonie triadique: Birch Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_birch_sapling","label":"Harmonie triadique: Potted Birch Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_red_tulip","label":"Harmonie triadique: Potted Red Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:red_tulip","label":"Harmonie triadique: Red Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.96},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.96},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo","label":"Harmonie triadique: Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:horn_coral_block","label":"Harmonie carree: Horn Coral Block","confidence":0.944},{"type":"color_square","target":"minecraft:firefly_bush","label":"Harmonie carree: Firefly Bush","confidence":0.928},{"type":"color_square","target":"minecraft:bamboo_sapling","label":"Harmonie carree: Bamboo Sapling","confidence":0.906},{"type":"color_square","target":"minecraft:orange_glazed_terracotta","label":"Harmonie carree: Orange Glazed Terracotta","confidence":0.881},{"type":"color_square","target":"minecraft:blue_carpet","label":"Harmonie carree: Blue Carpet","confidence":0.872},{"type":"color_square","target":"minecraft:blue_wool","label":"Harmonie carree: Blue Wool","confidence":0.872},{"type":"color_square","target":"minecraft:sponge","label":"Harmonie carree: Sponge","confidence":0.86},{"type":"color_square","target":"minecraft:blue_concrete_powder","label":"Harmonie carree: Blue Concrete Powder","confidence":0.847},{"type":"value_contrast","target":"minecraft:cherry_log","label":"Contraste clair sombre: Cherry Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_wood","label":"Contraste clair sombre: Cherry Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_glazed_terracotta","label":"Contraste clair sombre: Black Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone","label":"Contraste clair sombre: Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_wall","label":"Contraste clair sombre: Blackstone Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_nether_bricks","label":"Contraste clair sombre: Chiseled Nether Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55}],"category":"natural"},{"id":"minecraft:bread","name":"Bread","entry_type":"item","description":"Bread is a food item that can be eaten by the player.","history":[{"version":"20100206-2034","status":"added","notes":"Added bread, which restores 5 HP ."}],"colors":{"primary":"#8a651e","dominant_hex":"#bc8c24","average_hex":"#8a651e","hue_group":"yellow","lightness":0.3294,"saturation":0.6429,"palette":["#bc8c24","#8c641c","#644c14","#3c2c0c","#a47c24","#4f3f14"],"color_groups":[{"hex":"#bc8c24","weight":0.3043,"lightness":0.4392,"saturation":0.6786,"hue_group":"yellow"},{"hex":"#8c641c","weight":0.2391,"lightness":0.3294,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#644c14","weight":0.1957,"lightness":0.2353,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#3c2c0c","weight":0.1087,"lightness":0.1412,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#a47c24","weight":0.1087,"lightness":0.3922,"saturation":0.64,"hue_group":"yellow"},{"hex":"#4f3f14","weight":0.0435,"lightness":0.1941,"saturation":0.596,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/bread.png","family":"bread","relations":[{"type":"related_sets","target":"group:food","label":"Related set: food","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:golden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_carrot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55}],"category":"food"},{"id":"minecraft:breeze","name":"Breeze","entry_type":"mob","description":"A breeze is a hostile mob spawned by certain trial spawners found in trial chambers. It moves via jumping large distances when attacking, attacks by firing wind charges, and deflects all projectiles that hit it except wind charges. Breezes are the only source of breeze rods, which are dropped upon death.","history":[{"version":"1.20.3","status":"added","notes":"Added breezes behind the \" Update 1.21 \" experimental data pack ."},{"version":"1.20.5","status":"added","notes":"Added new breeze sounds."}],"colors":{"primary":"#8588b3","dominant_hex":"#5d6fa2","average_hex":"#8588b3","hue_group":"blue","lightness":0.6118,"saturation":0.2323,"palette":["#5d6fa2","#b8a8cc","#385275","#8b89ce","#ac9ccc","#eee8e0"],"color_groups":[{"hex":"#5d6fa2","weight":0.2155,"lightness":0.5,"saturation":0.2706,"hue_group":"blue"},{"hex":"#b8a8cc","weight":0.1967,"lightness":0.7294,"saturation":0.2609,"hue_group":"blue"},{"hex":"#385275","weight":0.1925,"lightness":0.3392,"saturation":0.3526,"hue_group":"blue"},{"hex":"#8b89ce","weight":0.1841,"lightness":0.6725,"saturation":0.4132,"hue_group":"blue"},{"hex":"#ac9ccc","weight":0.1569,"lightness":0.7059,"saturation":0.32,"hue_group":"blue"},{"hex":"#eee8e0","weight":0.0544,"lightness":0.9059,"saturation":0.2917,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/breeze/breeze.png","family":"breeze","relations":[{"type":"visual_neighbors","target":"minecraft:vex","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_invulnerable","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/all_black","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/cyan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_wind","label":"Shared hue group: blue","confidence":0.55}],"category":"mob"},{"id":"minecraft:breeze_rod","name":"Breeze Rod","entry_type":"item","description":"A breeze rod is an item obtained by killing breezes. It can be used to craft wind charges and maces, duplicate flow armor trims, and brew potions of Wind Charging.","history":[{"version":"1.20.5","status":"added","notes":"Added breeze rods."}],"colors":{"primary":"#6d79a9","dominant_hex":"#566d9d","average_hex":"#6d79a9","hue_group":"blue","lightness":0.5451,"saturation":0.2586,"palette":["#566d9d","#8085c7","#3c5c84","#2c547c","#bcaccc","#b4a4cc"],"color_groups":[{"hex":"#566d9d","weight":0.2353,"lightness":0.4765,"saturation":0.2922,"hue_group":"blue"},{"hex":"#8085c7","weight":0.2353,"lightness":0.6412,"saturation":0.388,"hue_group":"blue"},{"hex":"#3c5c84","weight":0.1961,"lightness":0.3765,"saturation":0.375,"hue_group":"blue"},{"hex":"#2c547c","weight":0.1176,"lightness":0.3294,"saturation":0.4762,"hue_group":"blue"},{"hex":"#bcaccc","weight":0.1176,"lightness":0.7373,"saturation":0.2388,"hue_group":"purple"},{"hex":"#b4a4cc","weight":0.098,"lightness":0.7216,"saturation":0.2817,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/breeze_rod.png","family":"breeze_rod","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_armor_trim_smithing_template","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lingering_potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_shard","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_meal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wind_charge","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:breeze_spawn_egg","name":"Breeze Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#7e85ad","dominant_hex":"#ad9fce","average_hex":"#7e85ad","hue_group":"blue","lightness":0.5863,"saturation":0.2227,"palette":["#ad9fce","#5d6a96","#3c5a81","#ececf7","#747cb9","#2c3e59"],"color_groups":[{"hex":"#ad9fce","weight":0.2794,"lightness":0.7157,"saturation":0.3241,"hue_group":"blue"},{"hex":"#5d6a96","weight":0.1838,"lightness":0.4765,"saturation":0.2346,"hue_group":"blue"},{"hex":"#3c5a81","weight":0.1618,"lightness":0.3706,"saturation":0.3651,"hue_group":"blue"},{"hex":"#ececf7","weight":0.1324,"lightness":0.9471,"saturation":0.4074,"hue_group":"blue"},{"hex":"#747cb9","weight":0.125,"lightness":0.5902,"saturation":0.3301,"hue_group":"blue"},{"hex":"#2c3e59","weight":0.1176,"lightness":0.2608,"saturation":0.3383,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/breeze_spawn_egg.png","family":"breeze_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_armor_trim_smithing_template","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lingering_potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_meal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_shard","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wind_charge","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:breeze_wind","name":"Breeze Wind","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#e9ebf9","dominant_hex":"#f4f4fc","average_hex":"#e9ebf9","hue_group":"blue","lightness":0.9451,"saturation":0.5714,"palette":["#f4f4fc","#ecf4fc","#ccd4e4","#bcbcd4"],"color_groups":[{"hex":"#f4f4fc","weight":0.5799,"lightness":0.9725,"saturation":0.5714,"hue_group":"blue"},{"hex":"#ecf4fc","weight":0.2057,"lightness":0.9569,"saturation":0.7273,"hue_group":"blue"},{"hex":"#ccd4e4","weight":0.1704,"lightness":0.8471,"saturation":0.3077,"hue_group":"blue"},{"hex":"#bcbcd4","weight":0.044,"lightness":0.7843,"saturation":0.2182,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/breeze/breeze_wind.png","family":"breeze_wind","relations":[{"type":"visual_neighbors","target":"minecraft:axolotl/cyan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_invulnerable","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/all_black","label":"Shared hue group: blue","confidence":0.55}],"category":"mob"},{"id":"minecraft:brewer_pottery_sherd","name":"Brewer Pottery Sherd","entry_type":"item","description":"A brewer pottery sherd is a pottery sherd that depicts a potion. It can be found in desert wells.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added brewer pottery shards."}],"colors":{"primary":"#6c3c31","dominant_hex":"#44241c","average_hex":"#6c3c31","hue_group":"red","lightness":0.3078,"saturation":0.3758,"palette":["#44241c","#724234","#844c3c","#9a5a4a","#5c342c","#542c24"],"color_groups":[{"hex":"#44241c","weight":0.1975,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#724234","weight":0.1975,"lightness":0.3255,"saturation":0.3735,"hue_group":"red"},{"hex":"#844c3c","weight":0.1783,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.1529,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"},{"hex":"#5c342c","weight":0.1401,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#542c24","weight":0.1338,"lightness":0.2353,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/brewer_pottery_sherd.png","family":"brewer_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:angler_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:burn_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:brewing_stand","name":"Brewing Stand","entry_type":"block","description":"A brewing stand is a block used for brewing potions using water bottles and suitable ingredients. It also serves as a cleric's job site block.","history":[{"version":"Beta 1.9","status":"added","notes":"Added brewing stands."},{"version":"15w47b","status":"added","notes":"added for brewing stands."}],"colors":{"primary":"#7a6551","dominant_hex":"#353232","average_hex":"#7a6551","hue_group":"red","lightness":0.398,"saturation":0.202,"palette":["#353232","#626262","#d59e38","#444444","#aa3127","#c8e5e5"],"color_groups":[{"hex":"#353232","weight":0.2462,"lightness":0.202,"saturation":0.0291,"hue_group":"neutral"},{"hex":"#626262","weight":0.1846,"lightness":0.3843,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d59e38","weight":0.1846,"lightness":0.5275,"saturation":0.6515,"hue_group":"yellow"},{"hex":"#444444","weight":0.1538,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#aa3127","weight":0.1154,"lightness":0.4098,"saturation":0.6268,"hue_group":"red"},{"hex":"#c8e5e5","weight":0.1154,"lightness":0.8412,"saturation":0.358,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brewing_stand.png","family":"brewing_stand","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:activator_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pointed_dripstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanting_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:detector_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dripstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_redstone_ore","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.799},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.798},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.796},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.796},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.796},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.796},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.794},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.794},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.794},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.794},{"type":"color_neighbors","target":"minecraft:bedrock","label":"Palette proche: Bedrock","confidence":0.792},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Palette proche: Cracked Deepslate Bricks","confidence":0.788},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.835},{"type":"color_bridge","target":"minecraft:damaged_anvil","label":"Pont de nuance par palette: Damaged Anvil","confidence":0.834},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.832},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.832},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.832},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.832},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.831},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.831},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.831},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.831},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.561},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55}],"category":"utility"},{"id":"minecraft:brick","name":"Brick","entry_type":"item","description":"A brick is an item mainly obtained by smelting clay balls used to craft brick blocks, flower pots, and decorated pots.","history":[{"version":"v1.0.11","status":"added","notes":"Added brick items."}],"colors":{"primary":"#86422f","dominant_hex":"#b45c44","average_hex":"#86422f","hue_group":"red","lightness":0.3549,"saturation":0.4807,"palette":["#b45c44","#7c3c2c","#50251d","#8c4434","#2c1414","#c46444"],"color_groups":[{"hex":"#b45c44","weight":0.2667,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#7c3c2c","weight":0.2444,"lightness":0.3294,"saturation":0.4762,"hue_group":"red"},{"hex":"#50251d","weight":0.1778,"lightness":0.2137,"saturation":0.4679,"hue_group":"red"},{"hex":"#8c4434","weight":0.1185,"lightness":0.3765,"saturation":0.4583,"hue_group":"red"},{"hex":"#2c1414","weight":0.0963,"lightness":0.1255,"saturation":0.375,"hue_group":"red"},{"hex":"#c46444","weight":0.0963,"lightness":0.5176,"saturation":0.5203,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/brick.png","family":"brick","relations":[{"type":"variants","target":"minecraft:brick_slab","label":"Same family: brick","confidence":0.75},{"type":"related_sets","target":"minecraft:brick_slab","label":"Related set: brick","confidence":0.8},{"type":"variants","target":"minecraft:brick_stairs","label":"Same family: brick","confidence":0.75},{"type":"related_sets","target":"minecraft:brick_stairs","label":"Related set: brick","confidence":0.8},{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:brick_slab","name":"Brick Slab","entry_type":"block","description":"A brick slab is a decorative slab variant of bricks that generates in trail ruins and is used for building.","history":[{"version":"1.8","status":"added","notes":"Added bricks slabs."}],"colors":{"primary":"#976253","dominant_hex":"#794134","average_hex":"#976253","hue_group":"red","lightness":0.4588,"saturation":0.2906,"palette":["#794134","#a68880","#9c5444","#b9664e","#8c6c64","#8c543c"],"color_groups":[{"hex":"#794134","weight":0.207,"lightness":0.3392,"saturation":0.3988,"hue_group":"red"},{"hex":"#a68880","weight":0.1992,"lightness":0.5765,"saturation":0.1759,"hue_group":"red"},{"hex":"#9c5444","weight":0.1875,"lightness":0.4392,"saturation":0.3929,"hue_group":"red"},{"hex":"#b9664e","weight":0.1641,"lightness":0.5157,"saturation":0.4332,"hue_group":"red"},{"hex":"#8c6c64","weight":0.1445,"lightness":0.4706,"saturation":0.1667,"hue_group":"red"},{"hex":"#8c543c","weight":0.0977,"lightness":0.3922,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bricks.png","family":"brick","relations":[{"type":"variants","target":"minecraft:brick_stairs","label":"Same family: brick","confidence":0.75},{"type":"related_sets","target":"minecraft:brick_stairs","label":"Related set: brick","confidence":0.8},{"type":"variants","target":"minecraft:brick","label":"Same family: brick","confidence":0.75},{"type":"related_sets","target":"minecraft:brick","label":"Related set: brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_mushroom_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brick_stairs","label":"Palette proche: Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brick_wall","label":"Palette proche: Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bricks","label":"Palette proche: Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_terracotta","label":"Palette proche: Light Gray Terracotta","confidence":0.891},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.883},{"type":"color_neighbors","target":"minecraft:potted_bamboo","label":"Palette proche: Potted Bamboo","confidence":0.883},{"type":"color_neighbors","target":"minecraft:potted_cactus","label":"Palette proche: Potted Cactus","confidence":0.883},{"type":"color_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Palette proche: Potted Mangrove Propagule","confidence":0.883},{"type":"color_neighbors","target":"minecraft:decorated_pot","label":"Palette proche: Decorated Pot","confidence":0.881},{"type":"color_neighbors","target":"minecraft:terracotta","label":"Palette proche: Terracotta","confidence":0.881},{"type":"color_neighbors","target":"minecraft:copper_chain","label":"Palette proche: Copper Chain","confidence":0.872},{"type":"color_neighbors","target":"minecraft:granite","label":"Palette proche: Granite","confidence":0.872},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.9},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.876},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.872},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.867},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.867},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.859},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.859},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.859},{"type":"color_analogous","target":"minecraft:brick_stairs","label":"Couleurs analogues: Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_wall","label":"Couleurs analogues: Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:bricks","label":"Couleurs analogues: Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:flower_pot","label":"Couleurs analogues: Flower Pot","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_bamboo","label":"Couleurs analogues: Potted Bamboo","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_cactus","label":"Couleurs analogues: Potted Cactus","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_mangrove_propagule","label":"Couleurs analogues: Potted Mangrove Propagule","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.947},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.912},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.905},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.874},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.848},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.816},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.87},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.866},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.842},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.842},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.842},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.842},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.82},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.679},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.926},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.905},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.905},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:brick_stairs","name":"Brick Stairs","entry_type":"block","description":"Brick stairs are a decorative stairs variant of bricks that generates in trail ruins and is used for building.","history":[{"version":"1.8","status":"added","notes":"Added brick stairs."}],"colors":{"primary":"#976253","dominant_hex":"#794134","average_hex":"#976253","hue_group":"red","lightness":0.4588,"saturation":0.2906,"palette":["#794134","#a68880","#9c5444","#b9664e","#8c6c64","#8c543c"],"color_groups":[{"hex":"#794134","weight":0.207,"lightness":0.3392,"saturation":0.3988,"hue_group":"red"},{"hex":"#a68880","weight":0.1992,"lightness":0.5765,"saturation":0.1759,"hue_group":"red"},{"hex":"#9c5444","weight":0.1875,"lightness":0.4392,"saturation":0.3929,"hue_group":"red"},{"hex":"#b9664e","weight":0.1641,"lightness":0.5157,"saturation":0.4332,"hue_group":"red"},{"hex":"#8c6c64","weight":0.1445,"lightness":0.4706,"saturation":0.1667,"hue_group":"red"},{"hex":"#8c543c","weight":0.0977,"lightness":0.3922,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bricks.png","family":"brick","relations":[{"type":"variants","target":"minecraft:brick_slab","label":"Same family: brick","confidence":0.75},{"type":"related_sets","target":"minecraft:brick_slab","label":"Related set: brick","confidence":0.8},{"type":"variants","target":"minecraft:brick","label":"Same family: brick","confidence":0.75},{"type":"related_sets","target":"minecraft:brick","label":"Related set: brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_mushroom_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brick_slab","label":"Palette proche: Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brick_wall","label":"Palette proche: Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bricks","label":"Palette proche: Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_terracotta","label":"Palette proche: Light Gray Terracotta","confidence":0.891},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.883},{"type":"color_neighbors","target":"minecraft:potted_bamboo","label":"Palette proche: Potted Bamboo","confidence":0.883},{"type":"color_neighbors","target":"minecraft:potted_cactus","label":"Palette proche: Potted Cactus","confidence":0.883},{"type":"color_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Palette proche: Potted Mangrove Propagule","confidence":0.883},{"type":"color_neighbors","target":"minecraft:decorated_pot","label":"Palette proche: Decorated Pot","confidence":0.881},{"type":"color_neighbors","target":"minecraft:terracotta","label":"Palette proche: Terracotta","confidence":0.881},{"type":"color_neighbors","target":"minecraft:copper_chain","label":"Palette proche: Copper Chain","confidence":0.872},{"type":"color_neighbors","target":"minecraft:granite","label":"Palette proche: Granite","confidence":0.872},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.9},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.876},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.872},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.867},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.867},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.859},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.859},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.859},{"type":"color_analogous","target":"minecraft:brick_slab","label":"Couleurs analogues: Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_wall","label":"Couleurs analogues: Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:bricks","label":"Couleurs analogues: Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:flower_pot","label":"Couleurs analogues: Flower Pot","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_bamboo","label":"Couleurs analogues: Potted Bamboo","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_cactus","label":"Couleurs analogues: Potted Cactus","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_mangrove_propagule","label":"Couleurs analogues: Potted Mangrove Propagule","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.947},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.912},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.905},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.874},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.848},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.816},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.87},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.866},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.842},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.842},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.842},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.842},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.82},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.679},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.926},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.905},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.905},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:brick_wall","name":"Brick Wall","entry_type":"block","description":"A brick wall is a decorative wall variant of bricks that generates in trail ruins and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added brick walls."}],"colors":{"primary":"#976253","dominant_hex":"#794134","average_hex":"#976253","hue_group":"red","lightness":0.4588,"saturation":0.2906,"palette":["#794134","#a68880","#9c5444","#b9664e","#8c6c64","#8c543c"],"color_groups":[{"hex":"#794134","weight":0.207,"lightness":0.3392,"saturation":0.3988,"hue_group":"red"},{"hex":"#a68880","weight":0.1992,"lightness":0.5765,"saturation":0.1759,"hue_group":"red"},{"hex":"#9c5444","weight":0.1875,"lightness":0.4392,"saturation":0.3929,"hue_group":"red"},{"hex":"#b9664e","weight":0.1641,"lightness":0.5157,"saturation":0.4332,"hue_group":"red"},{"hex":"#8c6c64","weight":0.1445,"lightness":0.4706,"saturation":0.1667,"hue_group":"red"},{"hex":"#8c543c","weight":0.0977,"lightness":0.3922,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bricks.png","family":"brick_wall","relations":[{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_mushroom_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brick_slab","label":"Palette proche: Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brick_stairs","label":"Palette proche: Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bricks","label":"Palette proche: Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_terracotta","label":"Palette proche: Light Gray Terracotta","confidence":0.891},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.883},{"type":"color_neighbors","target":"minecraft:potted_bamboo","label":"Palette proche: Potted Bamboo","confidence":0.883},{"type":"color_neighbors","target":"minecraft:potted_cactus","label":"Palette proche: Potted Cactus","confidence":0.883},{"type":"color_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Palette proche: Potted Mangrove Propagule","confidence":0.883},{"type":"color_neighbors","target":"minecraft:decorated_pot","label":"Palette proche: Decorated Pot","confidence":0.881},{"type":"color_neighbors","target":"minecraft:terracotta","label":"Palette proche: Terracotta","confidence":0.881},{"type":"color_neighbors","target":"minecraft:copper_chain","label":"Palette proche: Copper Chain","confidence":0.872},{"type":"color_neighbors","target":"minecraft:granite","label":"Palette proche: Granite","confidence":0.872},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.9},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.876},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.872},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.867},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.867},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.859},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.859},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.859},{"type":"color_analogous","target":"minecraft:brick_slab","label":"Couleurs analogues: Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_stairs","label":"Couleurs analogues: Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bricks","label":"Couleurs analogues: Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:flower_pot","label":"Couleurs analogues: Flower Pot","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_bamboo","label":"Couleurs analogues: Potted Bamboo","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_cactus","label":"Couleurs analogues: Potted Cactus","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_mangrove_propagule","label":"Couleurs analogues: Potted Mangrove Propagule","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.947},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.912},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.905},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.874},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.848},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.816},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.87},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.866},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.842},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.842},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.842},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.842},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.82},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.679},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.926},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.905},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.905},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:bricks","name":"Bricks","entry_type":"block","description":"Bricks are a decorative building block.","history":[{"version":"0.26","status":"added","notes":"Added bricks."},{"version":"20100227-1414","status":"added","notes":"Added brick pyramids as naturally generated structures ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#976253","dominant_hex":"#794134","average_hex":"#976253","hue_group":"red","lightness":0.4588,"saturation":0.2906,"palette":["#794134","#a68880","#9c5444","#b9664e","#8c6c64","#8c543c"],"color_groups":[{"hex":"#794134","weight":0.207,"lightness":0.3392,"saturation":0.3988,"hue_group":"red"},{"hex":"#a68880","weight":0.1992,"lightness":0.5765,"saturation":0.1759,"hue_group":"red"},{"hex":"#9c5444","weight":0.1875,"lightness":0.4392,"saturation":0.3929,"hue_group":"red"},{"hex":"#b9664e","weight":0.1641,"lightness":0.5157,"saturation":0.4332,"hue_group":"red"},{"hex":"#8c6c64","weight":0.1445,"lightness":0.4706,"saturation":0.1667,"hue_group":"red"},{"hex":"#8c543c","weight":0.0977,"lightness":0.3922,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bricks.png","family":"bricks","relations":[{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_mushroom_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brick_slab","label":"Palette proche: Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brick_stairs","label":"Palette proche: Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brick_wall","label":"Palette proche: Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_terracotta","label":"Palette proche: Light Gray Terracotta","confidence":0.891},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.883},{"type":"color_neighbors","target":"minecraft:potted_bamboo","label":"Palette proche: Potted Bamboo","confidence":0.883},{"type":"color_neighbors","target":"minecraft:potted_cactus","label":"Palette proche: Potted Cactus","confidence":0.883},{"type":"color_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Palette proche: Potted Mangrove Propagule","confidence":0.883},{"type":"color_neighbors","target":"minecraft:decorated_pot","label":"Palette proche: Decorated Pot","confidence":0.881},{"type":"color_neighbors","target":"minecraft:terracotta","label":"Palette proche: Terracotta","confidence":0.881},{"type":"color_neighbors","target":"minecraft:copper_chain","label":"Palette proche: Copper Chain","confidence":0.872},{"type":"color_neighbors","target":"minecraft:granite","label":"Palette proche: Granite","confidence":0.872},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.9},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.876},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.872},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.867},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.867},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.859},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.859},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.859},{"type":"color_analogous","target":"minecraft:brick_slab","label":"Couleurs analogues: Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_stairs","label":"Couleurs analogues: Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_wall","label":"Couleurs analogues: Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:flower_pot","label":"Couleurs analogues: Flower Pot","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_bamboo","label":"Couleurs analogues: Potted Bamboo","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_cactus","label":"Couleurs analogues: Potted Cactus","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_mangrove_propagule","label":"Couleurs analogues: Potted Mangrove Propagule","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.947},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.912},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.905},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.874},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.848},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.816},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.87},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.866},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.842},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.842},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.842},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.842},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.82},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.679},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.926},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.905},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.905},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":""},{"id":"minecraft:brown_banner","name":"Brown Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"brown_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_wall_banner","label":"Palette proche: Cyan Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_wall_banner","label":"Couleurs analogues: Brown Wall Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:brown_bed","name":"Brown Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"brown_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_wall_banner","label":"Palette proche: Cyan Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_wall_banner","label":"Couleurs analogues: Brown Wall Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:brown_bundle","name":"Brown Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#a46d44","dominant_hex":"#915a3a","average_hex":"#a46d44","hue_group":"red","lightness":0.4549,"saturation":0.4138,"palette":["#915a3a","#ce8f5e","#eba675","#b47444","#5c341c","#7c4424"],"color_groups":[{"hex":"#915a3a","weight":0.2519,"lightness":0.398,"saturation":0.4286,"hue_group":"red"},{"hex":"#ce8f5e","weight":0.1985,"lightness":0.5882,"saturation":0.5333,"hue_group":"red"},{"hex":"#eba675","weight":0.1603,"lightness":0.6902,"saturation":0.7468,"hue_group":"red"},{"hex":"#b47444","weight":0.1374,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#5c341c","weight":0.1298,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#7c4424","weight":0.1221,"lightness":0.3137,"saturation":0.55,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/brown_bundle.png","family":"brown_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chestplate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bolt_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:brown_candle","name":"Brown Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#704629","dominant_hex":"#643c24","average_hex":"#704629","hue_group":"red","lightness":0.3,"saturation":0.4641,"palette":["#643c24","#74442c","#8c5c34","#242434","#9c643c"],"color_groups":[{"hex":"#643c24","weight":0.4286,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"},{"hex":"#74442c","weight":0.2857,"lightness":0.3137,"saturation":0.45,"hue_group":"red"},{"hex":"#8c5c34","weight":0.1905,"lightness":0.3765,"saturation":0.4583,"hue_group":"red"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#9c643c","weight":0.0476,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brown_candle.png","family":"brown_candle","relations":[{"type":"visual_neighbors","target":"minecraft:nether_gold_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherrack","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brown_carpet","label":"Palette proche: Brown Carpet","confidence":0.934},{"type":"color_neighbors","target":"minecraft:brown_wool","label":"Palette proche: Brown Wool","confidence":0.934},{"type":"color_neighbors","target":"minecraft:brown_shulker_box","label":"Palette proche: Brown Shulker Box","confidence":0.93},{"type":"color_neighbors","target":"minecraft:brown_concrete","label":"Palette proche: Brown Concrete","confidence":0.913},{"type":"color_neighbors","target":"minecraft:brown_concrete_powder","label":"Palette proche: Brown Concrete Powder","confidence":0.891},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.883},{"type":"color_neighbors","target":"minecraft:acacia_door","label":"Palette proche: Acacia Door","confidence":0.868},{"type":"color_neighbors","target":"minecraft:item_frame","label":"Palette proche: Item Frame","confidence":0.866},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.86},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.86},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.86},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.86},{"type":"color_bridge","target":"minecraft:brown_glazed_terracotta","label":"Pont de nuance par sous-ton: Brown Glazed Terracotta","confidence":0.83},{"type":"color_bridge","target":"minecraft:campfire","label":"Pont de nuance par sous-ton: Campfire","confidence":0.817},{"type":"color_bridge","target":"minecraft:soul_campfire","label":"Pont de nuance par sous-ton: Soul Campfire","confidence":0.817},{"type":"color_bridge","target":"minecraft:lantern","label":"Pont de nuance par sous-ton: Lantern","confidence":0.809},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.77},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.769},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.768},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.766},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.761},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.758},{"type":"color_analogous","target":"minecraft:brown_carpet","label":"Couleurs analogues: Brown Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_wool","label":"Couleurs analogues: Brown Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_shulker_box","label":"Couleurs analogues: Brown Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_concrete_powder","label":"Couleurs analogues: Brown Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:rooted_dirt","label":"Couleurs analogues: Rooted Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:redstone_lamp","label":"Couleurs analogues: Redstone Lamp","confidence":0.957},{"type":"color_analogous","target":"minecraft:brown_mushroom","label":"Couleurs analogues: Brown Mushroom","confidence":0.957},{"type":"color_analogous","target":"minecraft:potted_brown_mushroom","label":"Couleurs analogues: Potted Brown Mushroom","confidence":0.957},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.957},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.957},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.957},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.946},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.942},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.942},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.921},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.904},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.96},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.947},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.934},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.891},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.875},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.873},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.871},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.949},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.946},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.891},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.754},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.736},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.736},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.731},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.727},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.647},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.613},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.603},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.603},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.603},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.603},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.591},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.566}],"category":"decorative"},{"id":"minecraft:brown_candle_cake","name":"Brown Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"brown_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle_cake","label":"Palette proche: Orange Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_candle_cake","label":"Couleurs analogues: Light Blue Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:brown_carpet","name":"Brown Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#724829","dominant_hex":"#6d4424","average_hex":"#724829","hue_group":"red","lightness":0.3039,"saturation":0.471,"palette":["#6d4424","#643c24","#744b2c","#7c4c2c","#7c542c","#845434"],"color_groups":[{"hex":"#6d4424","weight":0.3008,"lightness":0.2843,"saturation":0.5034,"hue_group":"red"},{"hex":"#643c24","weight":0.1758,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"},{"hex":"#744b2c","weight":0.1523,"lightness":0.3137,"saturation":0.45,"hue_group":"red"},{"hex":"#7c4c2c","weight":0.1523,"lightness":0.3294,"saturation":0.4762,"hue_group":"red"},{"hex":"#7c542c","weight":0.1094,"lightness":0.3294,"saturation":0.4762,"hue_group":"yellow"},{"hex":"#845434","weight":0.1094,"lightness":0.3608,"saturation":0.4348,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brown_wool.png","family":"brown_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:brown_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_gold_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherrack","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brown_wool","label":"Palette proche: Brown Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_shulker_box","label":"Palette proche: Brown Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_concrete","label":"Palette proche: Brown Concrete","confidence":0.935},{"type":"color_neighbors","target":"minecraft:brown_candle","label":"Palette proche: Brown Candle","confidence":0.934},{"type":"color_neighbors","target":"minecraft:brown_concrete_powder","label":"Palette proche: Brown Concrete Powder","confidence":0.932},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.881},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.881},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.881},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.881},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.881},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.881},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.881},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.764},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.758},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.756},{"type":"color_bridge","target":"minecraft:brown_glazed_terracotta","label":"Pont de nuance par sous-ton: Brown Glazed Terracotta","confidence":0.756},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.754},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.752},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.752},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.744},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.744},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.744},{"type":"color_analogous","target":"minecraft:brown_wool","label":"Couleurs analogues: Brown Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle","label":"Couleurs analogues: Brown Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_shulker_box","label":"Couleurs analogues: Brown Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_concrete","label":"Couleurs analogues: Brown Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_concrete_powder","label":"Couleurs analogues: Brown Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:dirt","label":"Couleurs analogues: Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_slab","label":"Couleurs analogues: Mud Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_stairs","label":"Couleurs analogues: Mud Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.914},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.909},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.909},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.889},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.871},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.938},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.927},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.927},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.911},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.909},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.908},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.899},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.905},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.85},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.794},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.777},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.777},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.772},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.737},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.643},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.609},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.599},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.599},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.599},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.599},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.587},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.562}],"category":"decorative"},{"id":"minecraft:brown_concrete","name":"Brown Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#603c20","dominant_hex":"#643c24","average_hex":"#603c20","hue_group":"red","lightness":0.251,"saturation":0.5,"palette":["#643c24","#643c1c","#5c3c1c"],"color_groups":[{"hex":"#643c24","weight":0.5234,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"},{"hex":"#643c1c","weight":0.4023,"lightness":0.251,"saturation":0.5625,"hue_group":"red"},{"hex":"#5c3c1c","weight":0.0742,"lightness":0.2353,"saturation":0.5333,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brown_concrete.png","family":"brown_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:redstone_lamp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherrack","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_gold_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brown_shulker_box","label":"Palette proche: Brown Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_carpet","label":"Palette proche: Brown Carpet","confidence":0.935},{"type":"color_neighbors","target":"minecraft:brown_wool","label":"Palette proche: Brown Wool","confidence":0.935},{"type":"color_neighbors","target":"minecraft:brown_candle","label":"Palette proche: Brown Candle","confidence":0.913},{"type":"color_neighbors","target":"minecraft:podzol","label":"Palette proche: Podzol","confidence":0.891},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.887},{"type":"color_neighbors","target":"minecraft:dark_oak_door","label":"Palette proche: Dark Oak Door","confidence":0.885},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.879},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.874},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.874},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.874},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.874},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.741},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.737},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.732},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.727},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.727},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.72},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.716},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.706},{"type":"color_analogous","target":"minecraft:brown_shulker_box","label":"Couleurs analogues: Brown Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_carpet","label":"Couleurs analogues: Brown Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_wool","label":"Couleurs analogues: Brown Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:redstone_wall_torch","label":"Couleurs analogues: Redstone Wall Torch","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_concrete_powder","label":"Couleurs analogues: Brown Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:coarse_dirt","label":"Couleurs analogues: Coarse Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:dirt","label":"Couleurs analogues: Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:packed_mud","label":"Couleurs analogues: Packed Mud","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.892},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.881},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.881},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.866},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.842},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.955},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.939},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.935},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.933},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.931},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.909},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.909},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.906},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.871},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.823},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.816},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.811},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.811},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.806},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.772},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.692},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.658},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.648},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.648},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.648},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.648},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.636},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.612}],"category":"building"},{"id":"minecraft:brown_concrete_powder","name":"Brown Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#7e5536","dominant_hex":"#7c5434","average_hex":"#7e5536","hue_group":"red","lightness":0.3529,"saturation":0.4,"palette":["#7c5434","#745134","#8f613f","#84593c","#714c2c","#845434"],"color_groups":[{"hex":"#7c5434","weight":0.3398,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#745134","weight":0.207,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#8f613f","weight":0.1719,"lightness":0.4039,"saturation":0.3883,"hue_group":"red"},{"hex":"#84593c","weight":0.1211,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#714c2c","weight":0.0898,"lightness":0.3078,"saturation":0.4395,"hue_group":"red"},{"hex":"#845434","weight":0.0703,"lightness":0.3608,"saturation":0.4348,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brown_concrete_powder.png","family":"brown_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:flower_pot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_bamboo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cactus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brown_carpet","label":"Palette proche: Brown Carpet","confidence":0.932},{"type":"color_neighbors","target":"minecraft:brown_wool","label":"Palette proche: Brown Wool","confidence":0.932},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.915},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.915},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.915},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.915},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.915},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.915},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.915},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.915},{"type":"color_neighbors","target":"minecraft:spruce_wall_sign","label":"Palette proche: Spruce Wall Sign","confidence":0.915},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.914},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.816},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.814},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.803},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.803},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.801},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.798},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.798},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.793},{"type":"color_analogous","target":"minecraft:coarse_dirt","label":"Couleurs analogues: Coarse Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:dirt","label":"Couleurs analogues: Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_carpet","label":"Couleurs analogues: Brown Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_wool","label":"Couleurs analogues: Brown Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle","label":"Couleurs analogues: Brown Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:farmland","label":"Couleurs analogues: Farmland","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_shulker_box","label":"Couleurs analogues: Brown Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_trapdoor","label":"Couleurs analogues: Jungle Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.905},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.905},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.895},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.87},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.866},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.943},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.941},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.929},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.922},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.921},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.907},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.901},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.896},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.841},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.814},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.786},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.786},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.781},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.746},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.598},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.565},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.555},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.555},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.555},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.555},{"type":"value_contrast","target":"minecraft:white_terracotta","label":"Contraste clair sombre: White Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":"building"},{"id":"minecraft:brown_dye","name":"Brown Dye","entry_type":"item","description":"Brown dye is one of the sixteen available dyes. It can be crafted from cocoa beans.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added brown dye, prior to this update cocoa beans were used as the brown variant of dye."},{"version":"19w05a","status":"added","notes":"Added the wandering trader , which sell brown dyes."},{"version":"1.17 20w45a","status":"added","notes":"added brown candles ."}],"colors":{"primary":"#7a4d33","dominant_hex":"#83543c","average_hex":"#7a4d33","hue_group":"red","lightness":0.3392,"saturation":0.4104,"palette":["#83543c","#bb7b53","#63341c","#3c1c1c","#441c04","#927557"],"color_groups":[{"hex":"#83543c","weight":0.2467,"lightness":0.3745,"saturation":0.3717,"hue_group":"red"},{"hex":"#bb7b53","weight":0.2333,"lightness":0.5294,"saturation":0.4333,"hue_group":"red"},{"hex":"#63341c","weight":0.2067,"lightness":0.249,"saturation":0.5591,"hue_group":"red"},{"hex":"#3c1c1c","weight":0.1267,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#441c04","weight":0.1133,"lightness":0.1412,"saturation":0.8889,"hue_group":"red"},{"hex":"#927557","weight":0.0733,"lightness":0.4569,"saturation":0.2532,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/brown_dye.png","family":"brown_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:angler_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:burn_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blade_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:brown_egg","name":"Brown Egg","entry_type":"item","description":"An egg is an item that is dropped by chickens and can be used to craft food items, such as cake, and can be thrown for a chance to spawn baby chickens on impact. They have three variants based on the variant of the corresponding chicken: the standard egg for temperate chickens, brown egg for warm chickens, and blue egg for cold chickens.","history":[{"version":"v1.0.14","status":"added","notes":"Added eggs."},{"version":"1 ]","status":"added","notes":"added egg throwing. [ 1 ]"},{"version":"19w07a","status":"added","notes":"Added foxes , which sometimes spawn with eggs in their mouths."}],"colors":{"primary":"#a45a45","dominant_hex":"#b4644c","average_hex":"#a45a45","hue_group":"red","lightness":0.4569,"saturation":0.4077,"palette":["#b4644c","#d47454","#64342c","#7c4434","#945444","#e49474"],"color_groups":[{"hex":"#b4644c","weight":0.2889,"lightness":0.502,"saturation":0.4094,"hue_group":"red"},{"hex":"#d47454","weight":0.2444,"lightness":0.5804,"saturation":0.5981,"hue_group":"red"},{"hex":"#64342c","weight":0.1556,"lightness":0.2824,"saturation":0.3889,"hue_group":"red"},{"hex":"#7c4434","weight":0.1556,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#945444","weight":0.1111,"lightness":0.4235,"saturation":0.3704,"hue_group":"red"},{"hex":"#e49474","weight":0.0444,"lightness":0.6745,"saturation":0.6747,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/brown_egg.png","family":"brown_egg","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:brown_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bolt_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chestplate","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:brown_glazed_terracotta","name":"Brown Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#786a56","dominant_hex":"#865634","average_hex":"#786a56","hue_group":"yellow","lightness":0.4039,"saturation":0.165,"palette":["#865634","#a4754d","#5d422c","#cd957d","#14748c","#147e8e"],"color_groups":[{"hex":"#865634","weight":0.2539,"lightness":0.3647,"saturation":0.4409,"hue_group":"red"},{"hex":"#a4754d","weight":0.2031,"lightness":0.4725,"saturation":0.361,"hue_group":"red"},{"hex":"#5d422c","weight":0.168,"lightness":0.2686,"saturation":0.3577,"hue_group":"red"},{"hex":"#cd957d","weight":0.1602,"lightness":0.6471,"saturation":0.4444,"hue_group":"red"},{"hex":"#14748c","weight":0.1211,"lightness":0.3137,"saturation":0.75,"hue_group":"cyan"},{"hex":"#147e8e","weight":0.0938,"lightness":0.3176,"saturation":0.7531,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brown_glazed_terracotta.png","family":"brown_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:daylight_detector","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:loom","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brown_candle","label":"Palette proche: Brown Candle","confidence":0.794},{"type":"color_neighbors","target":"minecraft:coarse_dirt","label":"Palette proche: Coarse Dirt","confidence":0.782},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.781},{"type":"color_neighbors","target":"minecraft:soul_torch","label":"Palette proche: Soul Torch","confidence":0.771},{"type":"color_neighbors","target":"minecraft:soul_wall_torch","label":"Palette proche: Soul Wall Torch","confidence":0.771},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.769},{"type":"color_neighbors","target":"minecraft:brown_mushroom","label":"Palette proche: Brown Mushroom","confidence":0.76},{"type":"color_neighbors","target":"minecraft:potted_brown_mushroom","label":"Palette proche: Potted Brown Mushroom","confidence":0.76},{"type":"color_neighbors","target":"minecraft:packed_mud","label":"Palette proche: Packed Mud","confidence":0.741},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.74},{"type":"color_neighbors","target":"minecraft:bookshelf","label":"Palette proche: Bookshelf","confidence":0.729},{"type":"color_neighbors","target":"minecraft:mud_brick_slab","label":"Palette proche: Mud Brick Slab","confidence":0.727},{"type":"color_bridge","target":"minecraft:brown_candle","label":"Pont de nuance par sous-ton: Brown Candle","confidence":0.83},{"type":"color_bridge","target":"minecraft:coarse_dirt","label":"Pont de nuance par sous-ton: Coarse Dirt","confidence":0.821},{"type":"color_bridge","target":"minecraft:farmland","label":"Pont de nuance par sous-ton: Farmland","confidence":0.82},{"type":"color_bridge","target":"minecraft:soul_torch","label":"Pont de nuance par palette: Soul Torch","confidence":0.811},{"type":"color_bridge","target":"minecraft:soul_wall_torch","label":"Pont de nuance par palette: Soul Wall Torch","confidence":0.811},{"type":"color_bridge","target":"minecraft:dirt","label":"Pont de nuance par sous-ton: Dirt","confidence":0.81},{"type":"color_bridge","target":"minecraft:brown_mushroom","label":"Pont de nuance par sous-ton: Brown Mushroom","confidence":0.802},{"type":"color_bridge","target":"minecraft:potted_brown_mushroom","label":"Pont de nuance par sous-ton: Potted Brown Mushroom","confidence":0.802},{"type":"color_bridge","target":"minecraft:packed_mud","label":"Pont de nuance par sous-ton: Packed Mud","confidence":0.787},{"type":"color_bridge","target":"minecraft:barrel","label":"Pont de nuance par sous-ton: Barrel","confidence":0.786},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.555},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55}],"category":"building"},{"id":"minecraft:brown_harness","name":"Brown Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#79553b","dominant_hex":"#ad6b45","average_hex":"#79553b","hue_group":"red","lightness":0.3529,"saturation":0.3444,"palette":["#ad6b45","#794924","#502e16","#3c2414","#a2b0b2","#686e6f"],"color_groups":[{"hex":"#ad6b45","weight":0.2638,"lightness":0.4745,"saturation":0.4298,"hue_group":"red"},{"hex":"#794924","weight":0.227,"lightness":0.3078,"saturation":0.5414,"hue_group":"red"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"},{"hex":"#a2b0b2","weight":0.1043,"lightness":0.6667,"saturation":0.0941,"hue_group":"neutral"},{"hex":"#686e6f","weight":0.0798,"lightness":0.4216,"saturation":0.0326,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/brown_harness.png","family":"brown_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:jungle_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_pod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blade_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:brown_mushroom","name":"Brown Mushroom","entry_type":"block","description":"A brown mushroom is a variety of fungus that grows and spreads in dark areas. Brown mushrooms can generate small or huge in size.","history":[{"version":"0.0.20a","status":"added","notes":"Added brown mushrooms."},{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added mushrooms to world generation."},{"version":"1.4.2 12w34a","status":"added","notes":"added to flower pots ."}],"colors":{"primary":"#9a755c","dominant_hex":"#cc9c7c","average_hex":"#9a755c","hue_group":"red","lightness":0.4824,"saturation":0.252,"palette":["#cc9c7c","#946c54","#66493a","#745444","#b4947c","#64544c"],"color_groups":[{"hex":"#cc9c7c","weight":0.3235,"lightness":0.6431,"saturation":0.4396,"hue_group":"red"},{"hex":"#946c54","weight":0.2353,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#66493a","weight":0.1471,"lightness":0.3137,"saturation":0.275,"hue_group":"red"},{"hex":"#745444","weight":0.1471,"lightness":0.3608,"saturation":0.2609,"hue_group":"red"},{"hex":"#b4947c","weight":0.0882,"lightness":0.5961,"saturation":0.2718,"hue_group":"red"},{"hex":"#64544c","weight":0.0588,"lightness":0.3451,"saturation":0.1364,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brown_mushroom.png","family":"brown_mushroom","relations":[{"type":"visual_neighbors","target":"minecraft:potted_brown_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hanging_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_brown_mushroom","label":"Palette proche: Potted Brown Mushroom","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite","label":"Palette proche: Polished Granite","confidence":0.888},{"type":"color_neighbors","target":"minecraft:polished_granite_slab","label":"Palette proche: Polished Granite Slab","confidence":0.888},{"type":"color_neighbors","target":"minecraft:polished_granite_stairs","label":"Palette proche: Polished Granite Stairs","confidence":0.888},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.887},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.886},{"type":"color_neighbors","target":"minecraft:rooted_dirt","label":"Palette proche: Rooted Dirt","confidence":0.886},{"type":"color_neighbors","target":"minecraft:mud_brick_slab","label":"Palette proche: Mud Brick Slab","confidence":0.88},{"type":"color_neighbors","target":"minecraft:mud_brick_stairs","label":"Palette proche: Mud Brick Stairs","confidence":0.88},{"type":"color_neighbors","target":"minecraft:mud_brick_wall","label":"Palette proche: Mud Brick Wall","confidence":0.88},{"type":"color_neighbors","target":"minecraft:mud_bricks","label":"Palette proche: Mud Bricks","confidence":0.88},{"type":"color_neighbors","target":"minecraft:packed_mud","label":"Palette proche: Packed Mud","confidence":0.88},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.886},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.884},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.881},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.881},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.877},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.877},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.871},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.871},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.862},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.862},{"type":"color_analogous","target":"minecraft:potted_brown_mushroom","label":"Couleurs analogues: Potted Brown Mushroom","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper","label":"Couleurs analogues: Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_chest","label":"Couleurs analogues: Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_golem_statue","label":"Couleurs analogues: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper","label":"Couleurs analogues: Waxed Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_chest","label":"Couleurs analogues: Waxed Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Couleurs analogues: Waxed Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_button","label":"Couleurs analogues: Jungle Button","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.936},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.935},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.925},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.925},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.925},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.91},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.949},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.905},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.875},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.868},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.85},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.85},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.952},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.919},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.903},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.758},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.727},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.726},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.715},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.706},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55}],"category":"natural"},{"id":"minecraft:brown_mushroom_block","name":"Brown Mushroom Block","entry_type":"block","description":"A mushroom block is a solid block that makes up a huge mushroom, which consists of a mushroom stem and brown mushroom blocks or red mushroom blocks, depending on the color of the huge mushroom.","history":[{"version":"1.8","status":"added","notes":"Added mushroom blocks."},{"version":"wiki-history","status":"added","notes":"added as an item within the inventory . Before this, it could be found naturally or be placed with / setblock ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb mushroom blocks, providing the curling stone/slow sliding effect to the mob."}],"colors":{"primary":"#957051","dominant_hex":"#947454","average_hex":"#957051","hue_group":"red","lightness":0.451,"saturation":0.2957,"palette":["#947454","#946c54","#8c6c54","#9c7c5c"],"color_groups":[{"hex":"#947454","weight":0.582,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#946c54","weight":0.3008,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#8c6c54","weight":0.0898,"lightness":0.4392,"saturation":0.25,"hue_group":"red"},{"hex":"#9c7c5c","weight":0.0273,"lightness":0.4863,"saturation":0.2581,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brown_mushroom_block.png","family":"brown_mushroom_block","relations":[{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:packed_mud","label":"Palette proche: Packed Mud","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_brick_slab","label":"Palette proche: Mud Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_brick_stairs","label":"Palette proche: Mud Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_brick_wall","label":"Palette proche: Mud Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_bricks","label":"Palette proche: Mud Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dripstone_block","label":"Palette proche: Dripstone Block","confidence":0.895},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.893},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.893},{"type":"color_neighbors","target":"minecraft:light_gray_terracotta","label":"Palette proche: Light Gray Terracotta","confidence":0.887},{"type":"color_neighbors","target":"minecraft:pointed_dripstone","label":"Palette proche: Pointed Dripstone","confidence":0.885},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.884},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.884},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.9},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.871},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.871},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.864},{"type":"color_analogous","target":"minecraft:jungle_trapdoor","label":"Couleurs analogues: Jungle Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:packed_mud","label":"Couleurs analogues: Packed Mud","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_button","label":"Couleurs analogues: Jungle Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence","label":"Couleurs analogues: Jungle Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence_gate","label":"Couleurs analogues: Jungle Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_planks","label":"Couleurs analogues: Jungle Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_pressure_plate","label":"Couleurs analogues: Jungle Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sign","label":"Couleurs analogues: Jungle Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.907},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.907},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.907},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.864},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.864},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.834},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.826},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.809},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.96},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.96},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.957},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.875},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.862},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.918},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.886},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.841},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.841},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.836},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.824},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.801},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.775},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"natural"},{"id":"minecraft:brown_shulker_box","name":"Brown Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#6a4224","dominant_hex":"#744c2c","average_hex":"#6a4224","hue_group":"red","lightness":0.2784,"saturation":0.493,"palette":["#744c2c","#74442a","#5c391c","#644424","#643c23","#6c4424"],"color_groups":[{"hex":"#744c2c","weight":0.2812,"lightness":0.3137,"saturation":0.45,"hue_group":"red"},{"hex":"#74442a","weight":0.1914,"lightness":0.3098,"saturation":0.4684,"hue_group":"red"},{"hex":"#5c391c","weight":0.168,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#644424","weight":0.1484,"lightness":0.2667,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#643c23","weight":0.1367,"lightness":0.2647,"saturation":0.4815,"hue_group":"red"},{"hex":"#6c4424","weight":0.0742,"lightness":0.2824,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brown_shulker_box.png","family":"brown_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:brown_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_gold_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_lamp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherrack","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:poppy","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_poppy","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brown_carpet","label":"Palette proche: Brown Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wool","label":"Palette proche: Brown Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_concrete","label":"Palette proche: Brown Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle","label":"Palette proche: Brown Candle","confidence":0.93},{"type":"color_neighbors","target":"minecraft:brown_concrete_powder","label":"Palette proche: Brown Concrete Powder","confidence":0.91},{"type":"color_neighbors","target":"minecraft:dark_oak_door","label":"Palette proche: Dark Oak Door","confidence":0.896},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.893},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.887},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.887},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.887},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.887},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.887},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.762},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.756},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.75},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.75},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.748},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.744},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.736},{"type":"color_bridge","target":"minecraft:brown_glazed_terracotta","label":"Pont de nuance par sous-ton: Brown Glazed Terracotta","confidence":0.731},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.729},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.729},{"type":"color_analogous","target":"minecraft:brown_concrete","label":"Couleurs analogues: Brown Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_carpet","label":"Couleurs analogues: Brown Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_wool","label":"Couleurs analogues: Brown Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle","label":"Couleurs analogues: Brown Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:redstone_wall_torch","label":"Couleurs analogues: Redstone Wall Torch","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_concrete_powder","label":"Couleurs analogues: Brown Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:dirt","label":"Couleurs analogues: Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_slab","label":"Couleurs analogues: Mud Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.909},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.899},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.899},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.884},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.861},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.953},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.935},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.927},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.919},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.917},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.915},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.91},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.899},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.894},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.838},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.802},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.789},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.789},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.783},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.749},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.666},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.633},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.623},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.623},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.623},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.623},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.61},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.586}],"category":""},{"id":"minecraft:brown_stained_glass","name":"Brown Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#664c33","dominant_hex":"#644c34","average_hex":"#664c33","hue_group":"red","lightness":0.3,"saturation":0.3333,"palette":["#644c34"],"color_groups":[{"hex":"#644c34","weight":1.0,"lightness":0.298,"saturation":0.3158,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brown_stained_glass.png","family":"brown_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Palette proche: Brown Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.884},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.883},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.883},{"type":"color_neighbors","target":"minecraft:stripped_spruce_log","label":"Palette proche: Stripped Spruce Log","confidence":0.883},{"type":"color_neighbors","target":"minecraft:stripped_spruce_wood","label":"Palette proche: Stripped Spruce Wood","confidence":0.883},{"type":"color_neighbors","target":"minecraft:spruce_shelf","label":"Palette proche: Spruce Shelf","confidence":0.88},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.879},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.878},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.878},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.87},{"type":"color_neighbors","target":"minecraft:brown_concrete_powder","label":"Palette proche: Brown Concrete Powder","confidence":0.864},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.854},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.827},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.827},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.826},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.818},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.802},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.8},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.8},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.796},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.796},{"type":"color_analogous","target":"minecraft:brown_stained_glass_pane","label":"Couleurs analogues: Brown Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_button","label":"Couleurs analogues: Dark Oak Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence","label":"Couleurs analogues: Dark Oak Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence_gate","label":"Couleurs analogues: Dark Oak Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_planks","label":"Couleurs analogues: Dark Oak Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_pressure_plate","label":"Couleurs analogues: Dark Oak Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sign","label":"Couleurs analogues: Dark Oak Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_slab","label":"Couleurs analogues: Dark Oak Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.849},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.842},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.842},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.842},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.842},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.792},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.792},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.77},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.942},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.942},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.93},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.926},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.91},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.9},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.879},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.879},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.93},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.93},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.925},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.89},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.835},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.786},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.784},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.65},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.616},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.605},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.605},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.605},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.605},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.594},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.57}],"category":"building"},{"id":"minecraft:brown_stained_glass_pane","name":"Brown Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#624a31","dominant_hex":"#644c34","average_hex":"#624a31","hue_group":"yellow","lightness":0.2882,"saturation":0.3333,"palette":["#644c34","#5c442c"],"color_groups":[{"hex":"#644c34","weight":0.75,"lightness":0.298,"saturation":0.3158,"hue_group":"yellow"},{"hex":"#5c442c","weight":0.25,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brown_stained_glass_pane_top.png","family":"brown_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:firefly_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brown_stained_glass","label":"Palette proche: Brown Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.899},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.899},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.894},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.892},{"type":"color_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Palette proche: Dark Oak Hanging Sign","confidence":0.885},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Palette proche: Dark Oak Wall Hanging Sign","confidence":0.885},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Palette proche: Stripped Dark Oak Log","confidence":0.885},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Palette proche: Stripped Dark Oak Wood","confidence":0.885},{"type":"color_neighbors","target":"minecraft:spruce_shelf","label":"Palette proche: Spruce Shelf","confidence":0.885},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.88},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.88},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.849},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.832},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.824},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.821},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.821},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.795},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.794},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.794},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.793},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.793},{"type":"color_analogous","target":"minecraft:brown_stained_glass","label":"Couleurs analogues: Brown Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_door","label":"Couleurs analogues: Dark Oak Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_trapdoor","label":"Couleurs analogues: Dark Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:cartography_table","label":"Couleurs analogues: Cartography Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:carved_pumpkin","label":"Couleurs analogues: Carved Pumpkin","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_log","label":"Couleurs analogues: Spruce Log","confidence":0.959},{"type":"color_analogous","target":"minecraft:spruce_wood","label":"Couleurs analogues: Spruce Wood","confidence":0.959},{"type":"color_analogous","target":"minecraft:orange_concrete_powder","label":"Couleurs analogues: Orange Concrete Powder","confidence":0.953},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.889},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.882},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.802},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.802},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.802},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.755},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.752},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.752},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.925},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.925},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.896},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.896},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.89},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.886},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.884},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.882},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.94},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.836},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.834},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.831},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.661},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.627},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.616},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.616},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.616},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.616},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.605},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.581}],"category":"building"},{"id":"minecraft:brown_terracotta","name":"Brown Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#4d3324","dominant_hex":"#4c3424","average_hex":"#4d3324","hue_group":"red","lightness":0.2216,"saturation":0.3628,"palette":["#4c3424","#543424"],"color_groups":[{"hex":"#4c3424","weight":0.9297,"lightness":0.2196,"saturation":0.3571,"hue_group":"red"},{"hex":"#543424","weight":0.0703,"lightness":0.2353,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brown_terracotta.png","family":"brown_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:note_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Palette proche: Dark Oak Hanging Sign","confidence":0.887},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Palette proche: Dark Oak Wall Hanging Sign","confidence":0.887},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Palette proche: Stripped Dark Oak Log","confidence":0.887},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Palette proche: Stripped Dark Oak Wood","confidence":0.887},{"type":"color_neighbors","target":"minecraft:mangrove_roots","label":"Palette proche: Mangrove Roots","confidence":0.87},{"type":"color_neighbors","target":"minecraft:coarse_dirt","label":"Palette proche: Coarse Dirt","confidence":0.862},{"type":"color_neighbors","target":"minecraft:dark_oak_shelf","label":"Palette proche: Dark Oak Shelf","confidence":0.861},{"type":"color_neighbors","target":"minecraft:note_block","label":"Palette proche: Note Block","confidence":0.86},{"type":"color_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Palette proche: Brown Stained Glass Pane","confidence":0.859},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.859},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.859},{"type":"color_neighbors","target":"minecraft:brown_concrete","label":"Palette proche: Brown Concrete","confidence":0.85},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.831},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.82},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.757},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.754},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.75},{"type":"color_bridge","target":"minecraft:potted_wither_rose","label":"Pont de nuance par palette: Potted Wither Rose","confidence":0.744},{"type":"color_bridge","target":"minecraft:wither_rose","label":"Pont de nuance par palette: Wither Rose","confidence":0.744},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.719},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.719},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.718},{"type":"color_analogous","target":"minecraft:note_block","label":"Couleurs analogues: Note Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:jukebox","label":"Couleurs analogues: Jukebox","confidence":0.96},{"type":"color_analogous","target":"minecraft:soul_soil","label":"Couleurs analogues: Soul Soil","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.949},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.949},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.941},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.941},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.938},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.923},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.946},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.928},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.918},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.828},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.813},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.813},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.813},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.939},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.835},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.829},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.828},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.817},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.721},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.721},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.725},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.691},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.682},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.682},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.682},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.682},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.669},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.642}],"category":"building"},{"id":"minecraft:brown_wall_banner","name":"Brown Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"brown_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_wall_banner","label":"Palette proche: Cyan Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:brown_wool","name":"Brown Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#724829","dominant_hex":"#6d4424","average_hex":"#724829","hue_group":"red","lightness":0.3039,"saturation":0.471,"palette":["#6d4424","#643c24","#744b2c","#7c4c2c","#7c542c","#845434"],"color_groups":[{"hex":"#6d4424","weight":0.3008,"lightness":0.2843,"saturation":0.5034,"hue_group":"red"},{"hex":"#643c24","weight":0.1758,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"},{"hex":"#744b2c","weight":0.1523,"lightness":0.3137,"saturation":0.45,"hue_group":"red"},{"hex":"#7c4c2c","weight":0.1523,"lightness":0.3294,"saturation":0.4762,"hue_group":"red"},{"hex":"#7c542c","weight":0.1094,"lightness":0.3294,"saturation":0.4762,"hue_group":"yellow"},{"hex":"#845434","weight":0.1094,"lightness":0.3608,"saturation":0.4348,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brown_wool.png","family":"brown_wool","relations":[{"type":"visual_neighbors","target":"minecraft:brown_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_gold_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherrack","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brown_carpet","label":"Palette proche: Brown Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_shulker_box","label":"Palette proche: Brown Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_concrete","label":"Palette proche: Brown Concrete","confidence":0.935},{"type":"color_neighbors","target":"minecraft:brown_candle","label":"Palette proche: Brown Candle","confidence":0.934},{"type":"color_neighbors","target":"minecraft:brown_concrete_powder","label":"Palette proche: Brown Concrete Powder","confidence":0.932},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.881},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.881},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.881},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.881},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.881},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.881},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.881},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.764},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.758},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.756},{"type":"color_bridge","target":"minecraft:brown_glazed_terracotta","label":"Pont de nuance par sous-ton: Brown Glazed Terracotta","confidence":0.756},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.754},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.752},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.752},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.744},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.744},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.744},{"type":"color_analogous","target":"minecraft:brown_carpet","label":"Couleurs analogues: Brown Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle","label":"Couleurs analogues: Brown Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_shulker_box","label":"Couleurs analogues: Brown Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_concrete","label":"Couleurs analogues: Brown Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_concrete_powder","label":"Couleurs analogues: Brown Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:dirt","label":"Couleurs analogues: Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_slab","label":"Couleurs analogues: Mud Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_stairs","label":"Couleurs analogues: Mud Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.914},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.909},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.909},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.889},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.871},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.938},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.927},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.927},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.911},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.909},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.908},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.899},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.905},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.85},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.794},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.777},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.777},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.772},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.737},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.643},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.609},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.599},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.599},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.599},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.599},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.587},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.562}],"category":"decorative"},{"id":"minecraft:brush","name":"Brush","entry_type":"item","description":"A brush is a tool used in archaeology to excavate suspicious sand and suspicious gravel for different items. Brushes also can be used on armadillos to get armadillo scutes.","history":[{"version":"1.19.4","status":"added","notes":"Added brushes with an updated texture behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#a67e62","dominant_hex":"#7e6656","average_hex":"#a67e62","hue_group":"red","lightness":0.5176,"saturation":0.2764,"palette":["#7e6656","#dea493","#edc49e","#8d5925","#4b2f17","#b79179"],"color_groups":[{"hex":"#7e6656","weight":0.2444,"lightness":0.4157,"saturation":0.1887,"hue_group":"red"},{"hex":"#dea493","weight":0.1889,"lightness":0.7235,"saturation":0.5319,"hue_group":"red"},{"hex":"#edc49e","weight":0.1778,"lightness":0.7745,"saturation":0.687,"hue_group":"red"},{"hex":"#8d5925","weight":0.1444,"lightness":0.349,"saturation":0.5843,"hue_group":"red"},{"hex":"#4b2f17","weight":0.1333,"lightness":0.1922,"saturation":0.5306,"hue_group":"red"},{"hex":"#b79179","weight":0.1111,"lightness":0.5961,"saturation":0.301,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/brush.png","family":"brush","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cherry_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_scute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_shell","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_horse_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_harness","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:bubble_column","name":"Bubble Column","entry_type":"block","description":"A bubble column is an air-providing vertical water current. It is created by magma blocks and soul sand and, depending on the block used, will either pull entities downward or push them upward, respectively.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added bubble columns."}],"colors":{"primary":"#b1b1b1","dominant_hex":"#a4a4a4","average_hex":"#b1b1b1","hue_group":"neutral","lightness":0.6941,"saturation":0.0,"palette":["#a4a4a4","#acacac","#c4c4c4","#d4d4d4","#fcfcfc","#cccccc"],"color_groups":[{"hex":"#a4a4a4","weight":0.4027,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.3807,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.1382,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d4d4d4","weight":0.045,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.0255,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.0078,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/water_still.png","family":"bubble_column","relations":[{"type":"visual_neighbors","target":"minecraft:water","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leaf_litter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:water","label":"Palette proche: Water","confidence":0.94},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_trapdoor","label":"Palette proche: Iron Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.936},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.936},{"type":"color_neighbors","target":"minecraft:light_gray_stained_glass","label":"Palette proche: Light Gray Stained Glass","confidence":0.933},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.93},{"type":"color_neighbors","target":"minecraft:diorite","label":"Palette proche: Diorite","confidence":0.919},{"type":"color_neighbors","target":"minecraft:diorite_slab","label":"Palette proche: Diorite Slab","confidence":0.919},{"type":"color_bridge","target":"minecraft:water","label":"Pont de nuance par palette: Water","confidence":0.86},{"type":"color_bridge","target":"minecraft:leaf_litter","label":"Pont de nuance par palette: Leaf Litter","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_trapdoor","label":"Pont de nuance par palette: Iron Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_stained_glass","label":"Pont de nuance par palette: Light Gray Stained Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.599},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.591},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.586},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.569},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.566},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.565},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.565},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.565}],"category":""},{"id":"minecraft:bubble_coral","name":"Bubble Coral","entry_type":"block","description":"Coral is a type of non-solid block that comes in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w10a","status":"added","notes":"Added coral plants."},{"version":"18w10d","status":"added","notes":"Added coral reefs , allowing coral plants to generate naturally."}],"colors":{"primary":"#a118a0","dominant_hex":"#a41ca4","average_hex":"#a118a0","hue_group":"purple","lightness":0.3627,"saturation":0.7405,"palette":["#a41ca4","#cc1cbc","#7c0c84","#640474","#cc44bc"],"color_groups":[{"hex":"#a41ca4","weight":0.3083,"lightness":0.3765,"saturation":0.7083,"hue_group":"purple"},{"hex":"#cc1cbc","weight":0.2632,"lightness":0.4549,"saturation":0.7586,"hue_group":"purple"},{"hex":"#7c0c84","weight":0.2331,"lightness":0.2824,"saturation":0.8333,"hue_group":"purple"},{"hex":"#640474","weight":0.1128,"lightness":0.2353,"saturation":0.9333,"hue_group":"purple"},{"hex":"#cc44bc","weight":0.0827,"lightness":0.5333,"saturation":0.5714,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bubble_coral.png","family":"bubble_coral","relations":[{"type":"visual_neighbors","target":"minecraft:bubble_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bubble_coral_block","label":"Palette proche: Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_coral_fan","label":"Palette proche: Bubble Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Palette proche: Bubble Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_shulker_box","label":"Palette proche: Magenta Shulker Box","confidence":0.797},{"type":"color_neighbors","target":"minecraft:magenta_concrete","label":"Palette proche: Magenta Concrete","confidence":0.785},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.783},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.783},{"type":"color_neighbors","target":"minecraft:magenta_candle","label":"Palette proche: Magenta Candle","confidence":0.775},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.726},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.702},{"type":"color_neighbors","target":"minecraft:purple_shulker_box","label":"Palette proche: Purple Shulker Box","confidence":0.677},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.662},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.635},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.611},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.611},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.611},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.607},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.604},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.58},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.58},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.58},{"type":"color_analogous","target":"minecraft:bubble_coral_block","label":"Couleurs analogues: Bubble Coral Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral_fan","label":"Couleurs analogues: Bubble Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral_wall_fan","label":"Couleurs analogues: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:chorus_plant","label":"Couleurs analogues: Chorus Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_candle","label":"Couleurs analogues: Magenta Candle","confidence":0.908},{"type":"color_analogous","target":"minecraft:magenta_concrete","label":"Couleurs analogues: Magenta Concrete","confidence":0.887},{"type":"color_analogous","target":"minecraft:magenta_shulker_box","label":"Couleurs analogues: Magenta Shulker Box","confidence":0.882},{"type":"color_analogous","target":"minecraft:magenta_concrete_powder","label":"Couleurs analogues: Magenta Concrete Powder","confidence":0.876},{"type":"color_complement","target":"minecraft:wheat","label":"Contraste complementaire: Wheat","confidence":0.884},{"type":"color_complement","target":"minecraft:carrots","label":"Contraste complementaire: Carrots","confidence":0.815},{"type":"color_complement","target":"minecraft:verdant_froglight","label":"Contraste complementaire: Verdant Froglight","confidence":0.729},{"type":"color_complement","target":"minecraft:mangrove_propagule","label":"Contraste complementaire: Mangrove Propagule","confidence":0.684},{"type":"color_complement","target":"minecraft:potatoes","label":"Contraste complementaire: Potatoes","confidence":0.559},{"type":"color_complement","target":"minecraft:slime_block","label":"Contraste complementaire: Slime Block","confidence":0.556},{"type":"color_complement","target":"minecraft:test_block","label":"Contraste complementaire: Test Block","confidence":0.543},{"type":"color_complement","target":"minecraft:sunflower","label":"Contraste complementaire: Sunflower","confidence":0.52},{"type":"color_triad","target":"minecraft:cyan_candle","label":"Harmonie triadique: Cyan Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_wart_block","label":"Harmonie triadique: Warped Wart Block","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:snow","label":"Harmonie triadique: Snow","confidence":0.96},{"type":"color_triad","target":"minecraft:snow_block","label":"Harmonie triadique: Snow Block","confidence":0.96},{"type":"color_triad","target":"minecraft:powder_snow","label":"Harmonie triadique: Powder Snow","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.953},{"type":"color_square","target":"minecraft:carved_pumpkin","label":"Harmonie carree: Carved Pumpkin","confidence":0.96},{"type":"color_square","target":"minecraft:orange_concrete_powder","label":"Harmonie carree: Orange Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:potted_open_eyeblossom","label":"Harmonie carree: Potted Open Eyeblossom","confidence":0.96},{"type":"color_square","target":"minecraft:cartography_table","label":"Harmonie carree: Cartography Table","confidence":0.96},{"type":"color_square","target":"minecraft:brown_stained_glass_pane","label":"Harmonie carree: Brown Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:spruce_log","label":"Harmonie carree: Spruce Log","confidence":0.96},{"type":"color_square","target":"minecraft:spruce_wood","label":"Harmonie carree: Spruce Wood","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_trapdoor","label":"Harmonie carree: Dark Oak Trapdoor","confidence":0.953},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.574},{"type":"value_contrast","target":"minecraft:pink_carpet","label":"Contraste clair sombre: Pink Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_wool","label":"Contraste clair sombre: Pink Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_petals","label":"Contraste clair sombre: Pink Petals","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_stained_glass","label":"Contraste clair sombre: Pink Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_glazed_terracotta","label":"Contraste clair sombre: Pink Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_concrete_powder","label":"Contraste clair sombre: Pink Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite","label":"Contraste clair sombre: Diorite","confidence":0.55}],"category":"natural"},{"id":"minecraft:bubble_coral_block","name":"Bubble Coral Block","entry_type":"block","description":"A coral block is a solid block that comes in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"20100629","status":"added","notes":"added to terrain.png ."},{"version":"1.13 18w09a","status":"added","notes":"Added coral."},{"version":"18w10d","status":"added","notes":"Added coral reefs , allowing coral to generate naturally."}],"colors":{"primary":"#a51aa2","dominant_hex":"#a41ca4","average_hex":"#a51aa2","hue_group":"purple","lightness":0.3745,"saturation":0.7277,"palette":["#a41ca4","#941494","#cc1cbc","#7c0c84","#cc44bc","#640474"],"color_groups":[{"hex":"#a41ca4","weight":0.3242,"lightness":0.3765,"saturation":0.7083,"hue_group":"purple"},{"hex":"#941494","weight":0.2656,"lightness":0.3294,"saturation":0.7619,"hue_group":"purple"},{"hex":"#cc1cbc","weight":0.2344,"lightness":0.4549,"saturation":0.7586,"hue_group":"purple"},{"hex":"#7c0c84","weight":0.0859,"lightness":0.2824,"saturation":0.8333,"hue_group":"purple"},{"hex":"#cc44bc","weight":0.0625,"lightness":0.5333,"saturation":0.5714,"hue_group":"purple"},{"hex":"#640474","weight":0.0273,"lightness":0.2353,"saturation":0.9333,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bubble_coral_block.png","family":"bubble_coral_block","relations":[{"type":"visual_neighbors","target":"minecraft:bubble_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bubble_coral","label":"Palette proche: Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_coral_fan","label":"Palette proche: Bubble Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Palette proche: Bubble Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_shulker_box","label":"Palette proche: Magenta Shulker Box","confidence":0.819},{"type":"color_neighbors","target":"minecraft:magenta_concrete","label":"Palette proche: Magenta Concrete","confidence":0.807},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.803},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.803},{"type":"color_neighbors","target":"minecraft:magenta_candle","label":"Palette proche: Magenta Candle","confidence":0.797},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.745},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.722},{"type":"color_neighbors","target":"minecraft:purple_shulker_box","label":"Palette proche: Purple Shulker Box","confidence":0.686},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.675},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.651},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.624},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.624},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.624},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.621},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.617},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.58},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.58},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.58},{"type":"color_analogous","target":"minecraft:bubble_coral","label":"Couleurs analogues: Bubble Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral_fan","label":"Couleurs analogues: Bubble Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral_wall_fan","label":"Couleurs analogues: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:chorus_plant","label":"Couleurs analogues: Chorus Plant","confidence":0.956},{"type":"color_analogous","target":"minecraft:magenta_candle","label":"Couleurs analogues: Magenta Candle","confidence":0.93},{"type":"color_analogous","target":"minecraft:magenta_concrete","label":"Couleurs analogues: Magenta Concrete","confidence":0.908},{"type":"color_analogous","target":"minecraft:magenta_shulker_box","label":"Couleurs analogues: Magenta Shulker Box","confidence":0.903},{"type":"color_analogous","target":"minecraft:magenta_concrete_powder","label":"Couleurs analogues: Magenta Concrete Powder","confidence":0.897},{"type":"color_complement","target":"minecraft:wheat","label":"Contraste complementaire: Wheat","confidence":0.911},{"type":"color_complement","target":"minecraft:carrots","label":"Contraste complementaire: Carrots","confidence":0.788},{"type":"color_complement","target":"minecraft:verdant_froglight","label":"Contraste complementaire: Verdant Froglight","confidence":0.702},{"type":"color_complement","target":"minecraft:mangrove_propagule","label":"Contraste complementaire: Mangrove Propagule","confidence":0.657},{"type":"color_complement","target":"minecraft:potatoes","label":"Contraste complementaire: Potatoes","confidence":0.532},{"type":"color_complement","target":"minecraft:slime_block","label":"Contraste complementaire: Slime Block","confidence":0.528},{"type":"color_complement","target":"minecraft:sunflower","label":"Contraste complementaire: Sunflower","confidence":0.52},{"type":"color_complement","target":"minecraft:beetroots","label":"Contraste complementaire: Beetroots","confidence":0.52},{"type":"color_triad","target":"minecraft:warped_wart_block","label":"Harmonie triadique: Warped Wart Block","confidence":0.96},{"type":"color_triad","target":"minecraft:calibrated_sculk_sensor","label":"Harmonie triadique: Calibrated Sculk Sensor","confidence":0.96},{"type":"color_triad","target":"minecraft:sculk_sensor","label":"Harmonie triadique: Sculk Sensor","confidence":0.96},{"type":"color_triad","target":"minecraft:soul_fire","label":"Harmonie triadique: Soul Fire","confidence":0.96},{"type":"color_triad","target":"minecraft:cocoa","label":"Harmonie triadique: Cocoa","confidence":0.958},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.949},{"type":"color_triad","target":"minecraft:snow","label":"Harmonie triadique: Snow","confidence":0.949},{"type":"color_triad","target":"minecraft:snow_block","label":"Harmonie triadique: Snow Block","confidence":0.949},{"type":"color_square","target":"minecraft:pumpkin","label":"Harmonie carree: Pumpkin","confidence":0.96},{"type":"color_square","target":"minecraft:orange_concrete_powder","label":"Harmonie carree: Orange Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_trapdoor","label":"Harmonie carree: Dark Oak Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_door","label":"Harmonie carree: Dark Oak Door","confidence":0.96},{"type":"color_square","target":"minecraft:carved_pumpkin","label":"Harmonie carree: Carved Pumpkin","confidence":0.95},{"type":"color_square","target":"minecraft:brown_stained_glass_pane","label":"Harmonie carree: Brown Stained Glass Pane","confidence":0.94},{"type":"color_square","target":"minecraft:glowstone","label":"Harmonie carree: Glowstone","confidence":0.938},{"type":"color_square","target":"minecraft:fire","label":"Harmonie carree: Fire","confidence":0.937},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.563},{"type":"value_contrast","target":"minecraft:pink_carpet","label":"Contraste clair sombre: Pink Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_wool","label":"Contraste clair sombre: Pink Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_petals","label":"Contraste clair sombre: Pink Petals","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_glazed_terracotta","label":"Contraste clair sombre: Pink Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_concrete_powder","label":"Contraste clair sombre: Pink Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite","label":"Contraste clair sombre: Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite_slab","label":"Contraste clair sombre: Diorite Slab","confidence":0.55}],"category":"natural"},{"id":"minecraft:bubble_coral_fan","name":"Bubble Coral Fan","entry_type":"block","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w11a","status":"added","notes":"Added coral fans."}],"colors":{"primary":"#a0219f","dominant_hex":"#a41ca4","average_hex":"#a0219f","hue_group":"purple","lightness":0.3784,"saturation":0.658,"palette":["#a41ca4","#cc44bc","#7c0c84","#640474"],"color_groups":[{"hex":"#a41ca4","weight":0.3661,"lightness":0.3765,"saturation":0.7083,"hue_group":"purple"},{"hex":"#cc44bc","weight":0.2768,"lightness":0.5333,"saturation":0.5714,"hue_group":"purple"},{"hex":"#7c0c84","weight":0.2679,"lightness":0.2824,"saturation":0.8333,"hue_group":"purple"},{"hex":"#640474","weight":0.0893,"lightness":0.2353,"saturation":0.9333,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bubble_coral_fan.png","family":"bubble_coral_fan","relations":[{"type":"visual_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Palette proche: Bubble Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_coral","label":"Palette proche: Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_coral_block","label":"Palette proche: Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_shulker_box","label":"Palette proche: Magenta Shulker Box","confidence":0.807},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.792},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.792},{"type":"color_neighbors","target":"minecraft:magenta_candle","label":"Palette proche: Magenta Candle","confidence":0.79},{"type":"color_neighbors","target":"minecraft:magenta_concrete","label":"Palette proche: Magenta Concrete","confidence":0.789},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.738},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.709},{"type":"color_neighbors","target":"minecraft:purple_shulker_box","label":"Palette proche: Purple Shulker Box","confidence":0.674},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.669},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.645},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.629},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.623},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.623},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.623},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.616},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.58},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.58},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.58},{"type":"color_analogous","target":"minecraft:bubble_coral_wall_fan","label":"Couleurs analogues: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral_block","label":"Couleurs analogues: Bubble Coral Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral","label":"Couleurs analogues: Bubble Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:chorus_plant","label":"Couleurs analogues: Chorus Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_candle","label":"Couleurs analogues: Magenta Candle","confidence":0.912},{"type":"color_analogous","target":"minecraft:magenta_concrete","label":"Couleurs analogues: Magenta Concrete","confidence":0.891},{"type":"color_analogous","target":"minecraft:magenta_shulker_box","label":"Couleurs analogues: Magenta Shulker Box","confidence":0.886},{"type":"color_analogous","target":"minecraft:magenta_concrete_powder","label":"Couleurs analogues: Magenta Concrete Powder","confidence":0.88},{"type":"color_complement","target":"minecraft:wheat","label":"Contraste complementaire: Wheat","confidence":0.877},{"type":"color_complement","target":"minecraft:carrots","label":"Contraste complementaire: Carrots","confidence":0.822},{"type":"color_complement","target":"minecraft:verdant_froglight","label":"Contraste complementaire: Verdant Froglight","confidence":0.737},{"type":"color_complement","target":"minecraft:mangrove_propagule","label":"Contraste complementaire: Mangrove Propagule","confidence":0.691},{"type":"color_complement","target":"minecraft:potatoes","label":"Contraste complementaire: Potatoes","confidence":0.566},{"type":"color_complement","target":"minecraft:slime_block","label":"Contraste complementaire: Slime Block","confidence":0.563},{"type":"color_complement","target":"minecraft:test_block","label":"Contraste complementaire: Test Block","confidence":0.55},{"type":"color_complement","target":"minecraft:sunflower","label":"Contraste complementaire: Sunflower","confidence":0.52},{"type":"color_triad","target":"minecraft:warped_wart_block","label":"Harmonie triadique: Warped Wart Block","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_candle","label":"Harmonie triadique: Cyan Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:snow","label":"Harmonie triadique: Snow","confidence":0.96},{"type":"color_triad","target":"minecraft:snow_block","label":"Harmonie triadique: Snow Block","confidence":0.96},{"type":"color_triad","target":"minecraft:powder_snow","label":"Harmonie triadique: Powder Snow","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.957},{"type":"color_square","target":"minecraft:carved_pumpkin","label":"Harmonie carree: Carved Pumpkin","confidence":0.96},{"type":"color_square","target":"minecraft:orange_concrete_powder","label":"Harmonie carree: Orange Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_trapdoor","label":"Harmonie carree: Dark Oak Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:cartography_table","label":"Harmonie carree: Cartography Table","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_door","label":"Harmonie carree: Dark Oak Door","confidence":0.96},{"type":"color_square","target":"minecraft:potted_open_eyeblossom","label":"Harmonie carree: Potted Open Eyeblossom","confidence":0.96},{"type":"color_square","target":"minecraft:brown_stained_glass_pane","label":"Harmonie carree: Brown Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:spruce_log","label":"Harmonie carree: Spruce Log","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.561},{"type":"value_contrast","target":"minecraft:pink_glazed_terracotta","label":"Contraste clair sombre: Pink Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_concrete_powder","label":"Contraste clair sombre: Pink Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_carpet","label":"Contraste clair sombre: Pink Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_wool","label":"Contraste clair sombre: Pink Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_petals","label":"Contraste clair sombre: Pink Petals","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite","label":"Contraste clair sombre: Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite_slab","label":"Contraste clair sombre: Diorite Slab","confidence":0.55}],"category":"natural"},{"id":"minecraft:bubble_coral_wall_fan","name":"Bubble Coral Wall Fan","entry_type":"block","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w11a","status":"added","notes":"Added coral fans."}],"colors":{"primary":"#a0219f","dominant_hex":"#a41ca4","average_hex":"#a0219f","hue_group":"purple","lightness":0.3784,"saturation":0.658,"palette":["#a41ca4","#cc44bc","#7c0c84","#640474"],"color_groups":[{"hex":"#a41ca4","weight":0.3661,"lightness":0.3765,"saturation":0.7083,"hue_group":"purple"},{"hex":"#cc44bc","weight":0.2768,"lightness":0.5333,"saturation":0.5714,"hue_group":"purple"},{"hex":"#7c0c84","weight":0.2679,"lightness":0.2824,"saturation":0.8333,"hue_group":"purple"},{"hex":"#640474","weight":0.0893,"lightness":0.2353,"saturation":0.9333,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bubble_coral_fan.png","family":"bubble_coral_wall_fan","relations":[{"type":"visual_neighbors","target":"minecraft:bubble_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bubble_coral_fan","label":"Palette proche: Bubble Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_coral","label":"Palette proche: Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_coral_block","label":"Palette proche: Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_shulker_box","label":"Palette proche: Magenta Shulker Box","confidence":0.807},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.792},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.792},{"type":"color_neighbors","target":"minecraft:magenta_candle","label":"Palette proche: Magenta Candle","confidence":0.79},{"type":"color_neighbors","target":"minecraft:magenta_concrete","label":"Palette proche: Magenta Concrete","confidence":0.789},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.738},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.709},{"type":"color_neighbors","target":"minecraft:purple_shulker_box","label":"Palette proche: Purple Shulker Box","confidence":0.674},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.669},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.645},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.629},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.623},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.623},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.623},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.616},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.58},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.58},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.58},{"type":"color_analogous","target":"minecraft:bubble_coral_fan","label":"Couleurs analogues: Bubble Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral_block","label":"Couleurs analogues: Bubble Coral Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral","label":"Couleurs analogues: Bubble Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:chorus_plant","label":"Couleurs analogues: Chorus Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_candle","label":"Couleurs analogues: Magenta Candle","confidence":0.912},{"type":"color_analogous","target":"minecraft:magenta_concrete","label":"Couleurs analogues: Magenta Concrete","confidence":0.891},{"type":"color_analogous","target":"minecraft:magenta_shulker_box","label":"Couleurs analogues: Magenta Shulker Box","confidence":0.886},{"type":"color_analogous","target":"minecraft:magenta_concrete_powder","label":"Couleurs analogues: Magenta Concrete Powder","confidence":0.88},{"type":"color_complement","target":"minecraft:wheat","label":"Contraste complementaire: Wheat","confidence":0.877},{"type":"color_complement","target":"minecraft:carrots","label":"Contraste complementaire: Carrots","confidence":0.822},{"type":"color_complement","target":"minecraft:verdant_froglight","label":"Contraste complementaire: Verdant Froglight","confidence":0.737},{"type":"color_complement","target":"minecraft:mangrove_propagule","label":"Contraste complementaire: Mangrove Propagule","confidence":0.691},{"type":"color_complement","target":"minecraft:potatoes","label":"Contraste complementaire: Potatoes","confidence":0.566},{"type":"color_complement","target":"minecraft:slime_block","label":"Contraste complementaire: Slime Block","confidence":0.563},{"type":"color_complement","target":"minecraft:test_block","label":"Contraste complementaire: Test Block","confidence":0.55},{"type":"color_complement","target":"minecraft:sunflower","label":"Contraste complementaire: Sunflower","confidence":0.52},{"type":"color_triad","target":"minecraft:warped_wart_block","label":"Harmonie triadique: Warped Wart Block","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_candle","label":"Harmonie triadique: Cyan Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:snow","label":"Harmonie triadique: Snow","confidence":0.96},{"type":"color_triad","target":"minecraft:snow_block","label":"Harmonie triadique: Snow Block","confidence":0.96},{"type":"color_triad","target":"minecraft:powder_snow","label":"Harmonie triadique: Powder Snow","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.957},{"type":"color_square","target":"minecraft:carved_pumpkin","label":"Harmonie carree: Carved Pumpkin","confidence":0.96},{"type":"color_square","target":"minecraft:orange_concrete_powder","label":"Harmonie carree: Orange Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_trapdoor","label":"Harmonie carree: Dark Oak Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:cartography_table","label":"Harmonie carree: Cartography Table","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_door","label":"Harmonie carree: Dark Oak Door","confidence":0.96},{"type":"color_square","target":"minecraft:potted_open_eyeblossom","label":"Harmonie carree: Potted Open Eyeblossom","confidence":0.96},{"type":"color_square","target":"minecraft:brown_stained_glass_pane","label":"Harmonie carree: Brown Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:spruce_log","label":"Harmonie carree: Spruce Log","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.561},{"type":"value_contrast","target":"minecraft:pink_glazed_terracotta","label":"Contraste clair sombre: Pink Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_concrete_powder","label":"Contraste clair sombre: Pink Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_carpet","label":"Contraste clair sombre: Pink Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_wool","label":"Contraste clair sombre: Pink Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_petals","label":"Contraste clair sombre: Pink Petals","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite","label":"Contraste clair sombre: Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite_slab","label":"Contraste clair sombre: Diorite Slab","confidence":0.55}],"category":"natural"},{"id":"minecraft:bucket","name":"Bucket","entry_type":"item","description":"A bucket is a utility item used to carry water, lava, milk, powder snow, various aquatic mobs, and the sulfur cube.\u200b[upcoming: Chaos Cubed]","history":[{"version":"20100615","status":"added","notes":"Added buckets."},{"version":"1.0.0","status":"added","notes":"Added mooshrooms , which can be milked like normal cows ."},{"version":"15w50a","status":"added","notes":"Added sounds for buckets: item.bucket.fill , item.bucket.fill_lava , item.bucket.empty , and item.bucket.empty_lava ."}],"colors":{"primary":"#777777","dominant_hex":"#343434","average_hex":"#777777","hue_group":"neutral","lightness":0.4667,"saturation":0.0,"palette":["#343434","#747474","#e1e1e1","#acacac","#949494","#595959"],"color_groups":[{"hex":"#343434","weight":0.3288,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1781,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e1e1e1","weight":0.1438,"lightness":0.8824,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.137,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1233,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#595959","weight":0.089,"lightness":0.349,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/bucket.png","family":"bucket","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:chainmail_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nautilus_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chestplate","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:budding_amethyst","name":"Budding Amethyst","entry_type":"block","description":"Budding amethyst is a fragile block found in amethyst geodes that grows amethyst clusters over time. It drops nothing if it breaks, and cannot be moved from where it is found.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added budding amethyst."}],"colors":{"primary":"#8460bb","dominant_hex":"#61419a","average_hex":"#8460bb","hue_group":"blue","lightness":0.5549,"saturation":0.4009,"palette":["#61419a","#7c5cb4","#dca7ef","#8c6ccc","#a47cf4","#442c7c"],"color_groups":[{"hex":"#61419a","weight":0.3242,"lightness":0.4294,"saturation":0.4064,"hue_group":"blue"},{"hex":"#7c5cb4","weight":0.2188,"lightness":0.5333,"saturation":0.3697,"hue_group":"blue"},{"hex":"#dca7ef","weight":0.1602,"lightness":0.7961,"saturation":0.6923,"hue_group":"purple"},{"hex":"#8c6ccc","weight":0.1328,"lightness":0.6118,"saturation":0.4848,"hue_group":"blue"},{"hex":"#a47cf4","weight":0.0977,"lightness":0.7216,"saturation":0.8451,"hue_group":"blue"},{"hex":"#442c7c","weight":0.0664,"lightness":0.3294,"saturation":0.4762,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/budding_amethyst.png","family":"budding_amethyst","relations":[{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:medium_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeating_command_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_cluster","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:amethyst_block","label":"Palette proche: Amethyst Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:small_amethyst_bud","label":"Palette proche: Small Amethyst Bud","confidence":0.94},{"type":"color_neighbors","target":"minecraft:medium_amethyst_bud","label":"Palette proche: Medium Amethyst Bud","confidence":0.891},{"type":"color_neighbors","target":"minecraft:amethyst_cluster","label":"Palette proche: Amethyst Cluster","confidence":0.889},{"type":"color_neighbors","target":"minecraft:large_amethyst_bud","label":"Palette proche: Large Amethyst Bud","confidence":0.856},{"type":"color_neighbors","target":"minecraft:repeating_command_block","label":"Palette proche: Repeating Command Block","confidence":0.755},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.738},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.717},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.687},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.671},{"type":"color_neighbors","target":"minecraft:purple_wool","label":"Palette proche: Purple Wool","confidence":0.671},{"type":"color_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Palette proche: Purple Glazed Terracotta","confidence":0.654},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.706},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.665},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.663},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.653},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.653},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.653},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.644},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.604},{"type":"color_bridge","target":"minecraft:magenta_concrete_powder","label":"Pont de nuance par palette: Magenta Concrete Powder","confidence":0.597},{"type":"color_bridge","target":"minecraft:magenta_glazed_terracotta","label":"Pont de nuance par palette: Magenta Glazed Terracotta","confidence":0.592},{"type":"color_analogous","target":"minecraft:amethyst_block","label":"Couleurs analogues: Amethyst Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:small_amethyst_bud","label":"Couleurs analogues: Small Amethyst Bud","confidence":0.943},{"type":"color_analogous","target":"minecraft:nether_portal","label":"Couleurs analogues: Nether Portal","confidence":0.933},{"type":"color_analogous","target":"minecraft:respawn_anchor","label":"Couleurs analogues: Respawn Anchor","confidence":0.912},{"type":"color_analogous","target":"minecraft:large_amethyst_bud","label":"Couleurs analogues: Large Amethyst Bud","confidence":0.903},{"type":"color_analogous","target":"minecraft:medium_amethyst_bud","label":"Couleurs analogues: Medium Amethyst Bud","confidence":0.894},{"type":"color_analogous","target":"minecraft:amethyst_cluster","label":"Couleurs analogues: Amethyst Cluster","confidence":0.891},{"type":"color_analogous","target":"minecraft:allium","label":"Couleurs analogues: Allium","confidence":0.888},{"type":"color_complement","target":"minecraft:birch_sapling","label":"Contraste complementaire: Birch Sapling","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_birch_sapling","label":"Contraste complementaire: Potted Birch Sapling","confidence":0.96},{"type":"color_complement","target":"minecraft:oxeye_daisy","label":"Contraste complementaire: Oxeye Daisy","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_oxeye_daisy","label":"Contraste complementaire: Potted Oxeye Daisy","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_red_tulip","label":"Contraste complementaire: Potted Red Tulip","confidence":0.96},{"type":"color_complement","target":"minecraft:red_tulip","label":"Contraste complementaire: Red Tulip","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo","label":"Contraste complementaire: Bamboo","confidence":0.949},{"type":"color_complement","target":"minecraft:azalea_leaves","label":"Contraste complementaire: Azalea Leaves","confidence":0.908},{"type":"color_triad","target":"minecraft:command_block","label":"Harmonie triadique: Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:copper_lantern","label":"Harmonie triadique: Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_copper_lantern","label":"Harmonie triadique: Waxed Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:exposed_copper","label":"Harmonie triadique: Exposed Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:exposed_copper_chest","label":"Harmonie triadique: Exposed Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:exposed_copper_golem_statue","label":"Harmonie triadique: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_exposed_copper","label":"Harmonie triadique: Waxed Exposed Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_exposed_copper_chest","label":"Harmonie triadique: Waxed Exposed Copper Chest","confidence":0.96},{"type":"color_square","target":"minecraft:warped_trapdoor","label":"Harmonie carree: Warped Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:warped_button","label":"Harmonie carree: Warped Button","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence","label":"Harmonie carree: Warped Fence","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence_gate","label":"Harmonie carree: Warped Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_planks","label":"Harmonie carree: Warped Planks","confidence":0.96},{"type":"color_square","target":"minecraft:warped_pressure_plate","label":"Harmonie carree: Warped Pressure Plate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_sign","label":"Harmonie carree: Warped Sign","confidence":0.96},{"type":"color_square","target":"minecraft:warped_slab","label":"Harmonie carree: Warped Slab","confidence":0.96},{"type":"value_contrast","target":"minecraft:respawn_anchor","label":"Contraste clair sombre: Respawn Anchor","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.55},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.55},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_slab","label":"Contraste clair sombre: Polished Blackstone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_stairs","label":"Contraste clair sombre: Polished Blackstone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_wall","label":"Contraste clair sombre: Polished Blackstone Brick Wall","confidence":0.55}],"category":""},{"id":"minecraft:bundle","name":"Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#804929","dominant_hex":"#643424","average_hex":"#804929","hue_group":"red","lightness":0.3314,"saturation":0.5148,"palette":["#643424","#c8854d","#7e4834","#a4542c","#441c04","#4c2c14"],"color_groups":[{"hex":"#643424","weight":0.1985,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"},{"hex":"#c8854d","weight":0.1985,"lightness":0.5431,"saturation":0.5279,"hue_group":"red"},{"hex":"#7e4834","weight":0.1908,"lightness":0.349,"saturation":0.4157,"hue_group":"red"},{"hex":"#a4542c","weight":0.1603,"lightness":0.4078,"saturation":0.5769,"hue_group":"red"},{"hex":"#441c04","weight":0.1298,"lightness":0.1412,"saturation":0.8889,"hue_group":"red"},{"hex":"#4c2c14","weight":0.1221,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/bundle.png","family":"bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:burn_pottery_sherd","name":"Burn Pottery Sherd","entry_type":"item","description":"A burn pottery sherd is a pottery sherd that depicts a flame of fire. It can be found in trail ruins.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added burn pottery shards."}],"colors":{"primary":"#6e3d32","dominant_hex":"#724234","average_hex":"#6e3d32","hue_group":"red","lightness":0.3137,"saturation":0.375,"palette":["#724234","#5c342c","#844c3c","#9a5a4a","#44241c","#542c24"],"color_groups":[{"hex":"#724234","weight":0.2102,"lightness":0.3255,"saturation":0.3735,"hue_group":"red"},{"hex":"#5c342c","weight":0.172,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#844c3c","weight":0.172,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.1656,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"},{"hex":"#44241c","weight":0.1465,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#542c24","weight":0.1338,"lightness":0.2353,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/burn_pottery_sherd.png","family":"burn_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:angler_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blade_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:bush","name":"Bush","entry_type":"block","description":"A bush is a non-solid plant block found in many grassy biomes. Its color is biome-dependent, and matches the color of grass blocks.","history":[{"version":"1.21.5 25w05a","status":"added","notes":"Added bushes."},{"version":"25w06a","status":"added","notes":"Added bush to the #replaceable_by_mushrooms and #replaceable_by_trees block tags."}],"colors":{"primary":"#787978","dominant_hex":"#6c6c6c","average_hex":"#787978","hue_group":"neutral","lightness":0.4725,"saturation":0.0041,"palette":["#6c6c6c","#5c5c5c","#7c7c7c","#a4a4a4","#8c8c8c","#bcb4bc"],"color_groups":[{"hex":"#6c6c6c","weight":0.3071,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.2205,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.2205,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.1024,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.0945,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcb4bc","weight":0.0551,"lightness":0.7216,"saturation":0.0563,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/bush.png","family":"bush","relations":[{"type":"visual_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lodestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.94},{"type":"color_neighbors","target":"minecraft:short_grass","label":"Palette proche: Short Grass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:lily_pad","label":"Pont de nuance par palette: Lily Pad","confidence":0.86},{"type":"color_bridge","target":"minecraft:short_grass","label":"Pont de nuance par palette: Short Grass","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55}],"category":""},{"id":"minecraft:cactus","name":"Cactus","entry_type":"block","description":"A cactus is a plant block found in deserts and badlands. It grows over time and can sprout cactus flowers. It damages mobs and destroys minecarts and dropped items that touch it.","history":[{"version":"v1.0.6","status":"added","notes":"Added cacti. It currently renders as a full block ."},{"version":"13w39a","status":"added","notes":"Added red sand , which cacti can also grow on."},{"version":"15w43a","status":"added","notes":"added igloo ."}],"colors":{"primary":"#567f2b","dominant_hex":"#547c24","average_hex":"#567f2b","hue_group":"yellow","lightness":0.3333,"saturation":0.4941,"palette":["#547c24","#446424","#5c8c2c","#649c34","#3c5c1c","#a9ae7c"],"color_groups":[{"hex":"#547c24","weight":0.2704,"lightness":0.3137,"saturation":0.55,"hue_group":"yellow"},{"hex":"#446424","weight":0.2041,"lightness":0.2667,"saturation":0.4706,"hue_group":"green"},{"hex":"#5c8c2c","weight":0.1888,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#649c34","weight":0.1888,"lightness":0.4078,"saturation":0.5,"hue_group":"green"},{"hex":"#3c5c1c","weight":0.0969,"lightness":0.2353,"saturation":0.5333,"hue_group":"green"},{"hex":"#a9ae7c","weight":0.051,"lightness":0.5843,"saturation":0.2358,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cactus_top.png","family":"cactus","relations":[{"type":"visual_neighbors","target":"minecraft:kelp_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:kelp","label":"Palette proche: Kelp","confidence":0.882},{"type":"color_neighbors","target":"minecraft:kelp_plant","label":"Palette proche: Kelp Plant","confidence":0.882},{"type":"color_neighbors","target":"minecraft:birch_sapling","label":"Palette proche: Birch Sapling","confidence":0.863},{"type":"color_neighbors","target":"minecraft:potted_birch_sapling","label":"Palette proche: Potted Birch Sapling","confidence":0.863},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.831},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.831},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.829},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.829},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.827},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.822},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.82},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.819},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.708},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.708},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.708},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.708},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.692},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.687},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.687},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.684},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.684},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.684},{"type":"color_analogous","target":"minecraft:kelp_plant","label":"Couleurs analogues: Kelp Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sapling","label":"Couleurs analogues: Dark Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_dark_oak_sapling","label":"Couleurs analogues: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_shulker_box","label":"Couleurs analogues: Lime Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_candle","label":"Couleurs analogues: Lime Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete","label":"Couleurs analogues: Lime Concrete","confidence":0.952},{"type":"color_analogous","target":"minecraft:lime_carpet","label":"Couleurs analogues: Lime Carpet","confidence":0.945},{"type":"color_analogous","target":"minecraft:lime_wool","label":"Couleurs analogues: Lime Wool","confidence":0.945},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.945},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.945},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.935},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.935},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.926},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.922},{"type":"color_complement","target":"minecraft:purple_concrete","label":"Contraste complementaire: Purple Concrete","confidence":0.863},{"type":"color_complement","target":"minecraft:purple_stained_glass","label":"Contraste complementaire: Purple Stained Glass","confidence":0.861},{"type":"color_triad","target":"minecraft:cherry_log","label":"Harmonie triadique: Cherry Log","confidence":0.953},{"type":"color_triad","target":"minecraft:cherry_wood","label":"Harmonie triadique: Cherry Wood","confidence":0.953},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.877},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.844},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.844},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.844},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.843},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.833},{"type":"color_square","target":"minecraft:red_stained_glass_pane","label":"Harmonie carree: Red Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:red_stained_glass","label":"Harmonie carree: Red Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:red_concrete","label":"Harmonie carree: Red Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_nylium","label":"Harmonie carree: Crimson Nylium","confidence":0.96},{"type":"color_square","target":"minecraft:netherrack","label":"Harmonie carree: Netherrack","confidence":0.96},{"type":"color_square","target":"minecraft:pink_terracotta","label":"Harmonie carree: Pink Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:powder_snow","label":"Harmonie carree: Powder Snow","confidence":0.96},{"type":"color_square","target":"minecraft:snow","label":"Harmonie carree: Snow","confidence":0.953},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.604},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.571},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55}],"category":""},{"id":"minecraft:cactus_flower","name":"Cactus Flower","entry_type":"block","description":"A cactus flower is a type of flower that grows from cacti. It can be placed on any solid top surface or crafted into pink dye.","history":[{"version":"1.21.5 25w06a","status":"added","notes":"Added cactus flowers."}],"colors":{"primary":"#d27987","dominant_hex":"#d4748c","average_hex":"#d27987","hue_group":"red","lightness":0.649,"saturation":0.4972,"palette":["#d4748c","#a4547c","#fc8484","#fcb4ac","#547c24","#649c34"],"color_groups":[{"hex":"#d4748c","weight":0.4022,"lightness":0.6431,"saturation":0.5275,"hue_group":"red"},{"hex":"#a4547c","weight":0.2391,"lightness":0.4863,"saturation":0.3226,"hue_group":"red"},{"hex":"#fc8484","weight":0.1739,"lightness":0.7529,"saturation":0.9524,"hue_group":"red"},{"hex":"#fcb4ac","weight":0.163,"lightness":0.8314,"saturation":0.9302,"hue_group":"red"},{"hex":"#547c24","weight":0.0109,"lightness":0.3137,"saturation":0.55,"hue_group":"yellow"},{"hex":"#649c34","weight":0.0109,"lightness":0.4078,"saturation":0.5,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cactus_flower.png","family":"cactus_flower","relations":[{"type":"visual_neighbors","target":"minecraft:pink_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.761},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.75},{"type":"color_neighbors","target":"minecraft:pink_concrete","label":"Palette proche: Pink Concrete","confidence":0.73},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.721},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.705},{"type":"color_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Palette proche: Pink Stained Glass Pane","confidence":0.703},{"type":"color_neighbors","target":"minecraft:pink_concrete_powder","label":"Palette proche: Pink Concrete Powder","confidence":0.701},{"type":"color_neighbors","target":"minecraft:pink_carpet","label":"Palette proche: Pink Carpet","confidence":0.7},{"type":"color_neighbors","target":"minecraft:pink_wool","label":"Palette proche: Pink Wool","confidence":0.7},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.699},{"type":"color_neighbors","target":"minecraft:cherry_wall_hanging_sign","label":"Palette proche: Cherry Wall Hanging Sign","confidence":0.699},{"type":"color_neighbors","target":"minecraft:stripped_cherry_log","label":"Palette proche: Stripped Cherry Log","confidence":0.699},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.68},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.68},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.68},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.68},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.68},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.68},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.679},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.679},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.677},{"type":"color_bridge","target":"minecraft:magenta_glazed_terracotta","label":"Pont de nuance par palette: Magenta Glazed Terracotta","confidence":0.654},{"type":"color_analogous","target":"minecraft:enchanting_table","label":"Couleurs analogues: Enchanting Table","confidence":0.913},{"type":"color_analogous","target":"minecraft:chiseled_nether_bricks","label":"Couleurs analogues: Chiseled Nether Bricks","confidence":0.875},{"type":"color_analogous","target":"minecraft:fire_coral_block","label":"Couleurs analogues: Fire Coral Block","confidence":0.863},{"type":"color_analogous","target":"minecraft:nether_brick_fence","label":"Couleurs analogues: Nether Brick Fence","confidence":0.863},{"type":"color_analogous","target":"minecraft:nether_brick_slab","label":"Couleurs analogues: Nether Brick Slab","confidence":0.863},{"type":"color_analogous","target":"minecraft:nether_brick_stairs","label":"Couleurs analogues: Nether Brick Stairs","confidence":0.863},{"type":"color_analogous","target":"minecraft:nether_brick_wall","label":"Couleurs analogues: Nether Brick Wall","confidence":0.863},{"type":"color_analogous","target":"minecraft:nether_bricks","label":"Couleurs analogues: Nether Bricks","confidence":0.863},{"type":"color_complement","target":"minecraft:twisting_vines","label":"Contraste complementaire: Twisting Vines","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_nylium","label":"Contraste complementaire: Warped Nylium","confidence":0.944},{"type":"color_complement","target":"minecraft:nether_sprouts","label":"Contraste complementaire: Nether Sprouts","confidence":0.933},{"type":"color_complement","target":"minecraft:prismarine_brick_slab","label":"Contraste complementaire: Prismarine Brick Slab","confidence":0.912},{"type":"color_complement","target":"minecraft:prismarine_brick_stairs","label":"Contraste complementaire: Prismarine Brick Stairs","confidence":0.912},{"type":"color_complement","target":"minecraft:prismarine_bricks","label":"Contraste complementaire: Prismarine Bricks","confidence":0.912},{"type":"color_complement","target":"minecraft:potted_warped_roots","label":"Contraste complementaire: Potted Warped Roots","confidence":0.903},{"type":"color_complement","target":"minecraft:twisting_vines_plant","label":"Contraste complementaire: Twisting Vines Plant","confidence":0.902},{"type":"color_triad","target":"minecraft:blue_candle","label":"Harmonie triadique: Blue Candle","confidence":0.94},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.931},{"type":"color_triad","target":"minecraft:blue_glazed_terracotta","label":"Harmonie triadique: Blue Glazed Terracotta","confidence":0.911},{"type":"color_triad","target":"minecraft:blue_stained_glass","label":"Harmonie triadique: Blue Stained Glass","confidence":0.904},{"type":"color_triad","target":"minecraft:slime_block","label":"Harmonie triadique: Slime Block","confidence":0.897},{"type":"color_triad","target":"minecraft:potatoes","label":"Harmonie triadique: Potatoes","confidence":0.894},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.886},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.886},{"type":"color_square","target":"minecraft:small_amethyst_bud","label":"Harmonie carree: Small Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:big_dripleaf","label":"Harmonie carree: Big Dripleaf","confidence":0.96},{"type":"color_square","target":"minecraft:green_glazed_terracotta","label":"Harmonie carree: Green Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:green_stained_glass","label":"Harmonie carree: Green Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:green_stained_glass_pane","label":"Harmonie carree: Green Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:azalea_leaves","label":"Harmonie carree: Azalea Leaves","confidence":0.96},{"type":"color_square","target":"minecraft:big_dripleaf_stem","label":"Harmonie carree: Big Dripleaf Stem","confidence":0.96},{"type":"color_square","target":"minecraft:small_dripleaf","label":"Harmonie carree: Small Dripleaf","confidence":0.96},{"type":"value_contrast","target":"minecraft:netherrack","label":"Contraste clair sombre: Netherrack","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_hyphae","label":"Contraste clair sombre: Crimson Hyphae","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_stem","label":"Contraste clair sombre: Crimson Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_glazed_terracotta","label":"Contraste clair sombre: Black Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:nether_wart","label":"Contraste clair sombre: Nether Wart","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_nether_bricks","label":"Contraste clair sombre: Chiseled Nether Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:nether_brick_fence","label":"Contraste clair sombre: Nether Brick Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:nether_brick_slab","label":"Contraste clair sombre: Nether Brick Slab","confidence":0.55}],"category":"natural"},{"id":"minecraft:cake","name":"Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle_cake","label":"Palette proche: Orange Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_candle_cake","label":"Couleurs analogues: Light Blue Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":""},{"id":"minecraft:calcite","name":"Calcite","entry_type":"block","description":"Calcite is a block of carbonate mineral, which can be used as decoration.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added calcite."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb calcite, providing the football/regular effect to the mob."}],"colors":{"primary":"#dfe0dd","dominant_hex":"#dcdcd4","average_hex":"#dfe0dd","hue_group":"neutral","lightness":0.8725,"saturation":0.0462,"palette":["#dcdcd4","#ecece4","#ccccc4","#f4f4f4","#fcfcfc","#b4b4b4"],"color_groups":[{"hex":"#dcdcd4","weight":0.3086,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#ecece4","weight":0.2695,"lightness":0.9098,"saturation":0.1739,"hue_group":"yellow"},{"hex":"#ccccc4","weight":0.1641,"lightness":0.7843,"saturation":0.0727,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.1289,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.0742,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.0547,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/calcite.png","family":"calcite","relations":[{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobweb","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_quartz_block","label":"Palette proche: Chiseled Quartz Block","confidence":0.883},{"type":"color_neighbors","target":"minecraft:quartz_block","label":"Palette proche: Quartz Block","confidence":0.869},{"type":"color_neighbors","target":"minecraft:quartz_slab","label":"Palette proche: Quartz Slab","confidence":0.869},{"type":"color_neighbors","target":"minecraft:quartz_stairs","label":"Palette proche: Quartz Stairs","confidence":0.869},{"type":"color_neighbors","target":"minecraft:quartz_bricks","label":"Palette proche: Quartz Bricks","confidence":0.867},{"type":"color_neighbors","target":"minecraft:birch_log","label":"Palette proche: Birch Log","confidence":0.865},{"type":"color_neighbors","target":"minecraft:birch_wood","label":"Palette proche: Birch Wood","confidence":0.865},{"type":"color_neighbors","target":"minecraft:redstone_wire","label":"Palette proche: Redstone Wire","confidence":0.849},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.847},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.847},{"type":"color_neighbors","target":"minecraft:white_stained_glass_pane","label":"Palette proche: White Stained Glass Pane","confidence":0.845},{"type":"color_neighbors","target":"minecraft:quartz_pillar","label":"Palette proche: Quartz Pillar","confidence":0.842},{"type":"color_bridge","target":"minecraft:chiseled_quartz_block","label":"Pont de nuance par sous-ton: Chiseled Quartz Block","confidence":0.9},{"type":"color_bridge","target":"minecraft:quartz_block","label":"Pont de nuance par sous-ton: Quartz Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:quartz_slab","label":"Pont de nuance par sous-ton: Quartz Slab","confidence":0.892},{"type":"color_bridge","target":"minecraft:quartz_stairs","label":"Pont de nuance par sous-ton: Quartz Stairs","confidence":0.892},{"type":"color_bridge","target":"minecraft:quartz_bricks","label":"Pont de nuance par sous-ton: Quartz Bricks","confidence":0.89},{"type":"color_bridge","target":"minecraft:quartz_pillar","label":"Pont de nuance par sous-ton: Quartz Pillar","confidence":0.87},{"type":"color_bridge","target":"minecraft:smooth_quartz","label":"Pont de nuance par sous-ton: Smooth Quartz","confidence":0.868},{"type":"color_bridge","target":"minecraft:smooth_quartz_slab","label":"Pont de nuance par sous-ton: Smooth Quartz Slab","confidence":0.868},{"type":"color_bridge","target":"minecraft:smooth_quartz_stairs","label":"Pont de nuance par sous-ton: Smooth Quartz Stairs","confidence":0.868},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par palette: Birch Log","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.756},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.755},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.725},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.724},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.724},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.724},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.724}],"category":""},{"id":"minecraft:calibrated_sculk_sensor","name":"Calibrated Sculk Sensor","entry_type":"block","description":"A calibrated sculk sensor is a craftable type of sculk sensor that functions similarly, but detects vibrations more quickly and from further away. Its amethyst-covered input side can be powered to make the sensor only detect vibrations from specific sources, depending on the signal strength used. Placing an amethyst block next to a sculk sensor allows it to \"relay\" detected vibrations to other sculk sensors.","history":[{"version":"1.17 20w49a","status":"added","notes":"Added unused textures for calibrated sculk sensor to the game files (specifically to the assets/minecraft/textures/blocks directory)."},{"version":"20w45a, despite these textures being","status":"added","notes":"added after the amethyst block textures were redone twice, implying these textures come from a scrapped functionality of the sculk sensor coupled with amethyst."},{"version":"1.20 23w12a","status":"added","notes":"Added calibrated sculk sensors."}],"colors":{"primary":"#097b7f","dominant_hex":"#0c6c6c","average_hex":"#097b7f","hue_group":"cyan","lightness":0.2667,"saturation":0.8676,"palette":["#0c6c6c","#049494","#044654","#2cdcec","#042c34","#1cb4bc"],"color_groups":[{"hex":"#0c6c6c","weight":0.3026,"lightness":0.2353,"saturation":0.8,"hue_group":"cyan"},{"hex":"#049494","weight":0.2947,"lightness":0.298,"saturation":0.9474,"hue_group":"cyan"},{"hex":"#044654","weight":0.1965,"lightness":0.1725,"saturation":0.9091,"hue_group":"cyan"},{"hex":"#2cdcec","weight":0.1139,"lightness":0.549,"saturation":0.8348,"hue_group":"cyan"},{"hex":"#042c34","weight":0.0629,"lightness":0.1098,"saturation":0.8571,"hue_group":"cyan"},{"hex":"#1cb4bc","weight":0.0295,"lightness":0.4235,"saturation":0.7407,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sculk_sensor_tendril_active.png","family":"calibrated_sculk_sensor","relations":[{"type":"visual_neighbors","target":"minecraft:sculk_sensor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines_plant","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_sprouts","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:sculk_sensor","label":"Palette proche: Sculk Sensor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.865},{"type":"color_neighbors","target":"minecraft:sculk_vein","label":"Palette proche: Sculk Vein","confidence":0.838},{"type":"color_neighbors","target":"minecraft:soul_fire","label":"Palette proche: Soul Fire","confidence":0.838},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.826},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.818},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.818},{"type":"color_neighbors","target":"minecraft:structure_void","label":"Palette proche: Structure Void","confidence":0.797},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.789},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.782},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.781},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.78},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.58},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_analogous","target":"minecraft:sculk_sensor","label":"Couleurs analogues: Sculk Sensor","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_wart_block","label":"Couleurs analogues: Warped Wart Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_carpet","label":"Couleurs analogues: Cyan Carpet","confidence":0.958},{"type":"color_analogous","target":"minecraft:cyan_wool","label":"Couleurs analogues: Cyan Wool","confidence":0.958},{"type":"color_analogous","target":"minecraft:cyan_candle","label":"Couleurs analogues: Cyan Candle","confidence":0.953},{"type":"color_analogous","target":"minecraft:blue_orchid","label":"Couleurs analogues: Blue Orchid","confidence":0.948},{"type":"color_analogous","target":"minecraft:potted_blue_orchid","label":"Couleurs analogues: Potted Blue Orchid","confidence":0.948},{"type":"color_analogous","target":"minecraft:soul_fire","label":"Couleurs analogues: Soul Fire","confidence":0.947},{"type":"color_complement","target":"minecraft:weeping_vines_plant","label":"Contraste complementaire: Weeping Vines Plant","confidence":0.96},{"type":"color_complement","target":"minecraft:red_carpet","label":"Contraste complementaire: Red Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:red_wool","label":"Contraste complementaire: Red Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:red_candle","label":"Contraste complementaire: Red Candle","confidence":0.959},{"type":"color_complement","target":"minecraft:potted_red_mushroom","label":"Contraste complementaire: Potted Red Mushroom","confidence":0.953},{"type":"color_complement","target":"minecraft:red_mushroom","label":"Contraste complementaire: Red Mushroom","confidence":0.953},{"type":"color_complement","target":"minecraft:red_concrete_powder","label":"Contraste complementaire: Red Concrete Powder","confidence":0.95},{"type":"color_complement","target":"minecraft:mangrove_door","label":"Contraste complementaire: Mangrove Door","confidence":0.947},{"type":"color_triad","target":"minecraft:bubble_coral_block","label":"Harmonie triadique: Bubble Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:cocoa","label":"Harmonie triadique: Cocoa","confidence":0.945},{"type":"color_triad","target":"minecraft:end_stone","label":"Harmonie triadique: End Stone","confidence":0.943},{"type":"color_triad","target":"minecraft:bubble_coral","label":"Harmonie triadique: Bubble Coral","confidence":0.928},{"type":"color_triad","target":"minecraft:bubble_coral_fan","label":"Harmonie triadique: Bubble Coral Fan","confidence":0.923},{"type":"color_triad","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie triadique: Bubble Coral Wall Fan","confidence":0.923},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.914},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.91},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.949},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.947},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.937},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.937},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.912},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.912},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.899},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.897},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.678},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.678},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.669},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.643},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.61},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.597},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.597},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.587}],"category":""},{"id":"minecraft:camel","name":"Camel","entry_type":"mob","description":"A camel is a large passive mob found in deserts and desert villages. They can be saddled and ridden by up to two players at once. When standing, it is tall enough that its riders cannot be reached by most melee-attacking mobs on the ground.","history":[{"version":"1.19.3","status":"added","notes":"Added camels behind the \" Update 1.20 \" experimental data pack ."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby camels from growing up."}],"colors":{"primary":"#d9a145","dominant_hex":"#ab7c29","average_hex":"#d9a145","hue_group":"yellow","lightness":0.5608,"saturation":0.6607,"palette":["#ab7c29","#cc9435","#ecac4c","#dc9c3c","#f4bc5c","#fcc46c"],"color_groups":[{"hex":"#ab7c29","weight":0.2001,"lightness":0.4157,"saturation":0.6132,"hue_group":"yellow"},{"hex":"#cc9435","weight":0.1816,"lightness":0.5039,"saturation":0.5968,"hue_group":"yellow"},{"hex":"#ecac4c","weight":0.166,"lightness":0.6118,"saturation":0.8081,"hue_group":"yellow"},{"hex":"#dc9c3c","weight":0.1649,"lightness":0.549,"saturation":0.6957,"hue_group":"yellow"},{"hex":"#f4bc5c","weight":0.1565,"lightness":0.6588,"saturation":0.8736,"hue_group":"yellow"},{"hex":"#fcc46c","weight":0.1308,"lightness":0.7059,"saturation":0.96,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/camel/camel.png","family":"camel","relations":[{"type":"visual_neighbors","target":"minecraft:pufferfish/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_yellow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/red","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/ocelot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_lime","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/persian","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spark","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/creamy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:camel_husk","name":"Camel Husk","entry_type":"mob","description":"A camel husk is an undead variant of the camel that rarely spawns at night or during thunderstorms in deserts as a hostile mob, being ridden and controlled by an iron spear-wielding husk with a parched passenger, known as a camel husk jockey. It does not burn in sunlight, and is passive once separated from its riders.","history":[{"version":"1.21.11 25w44a","status":"added","notes":"Added adult and baby camel husks, along with camel husk jockeys."}],"colors":{"primary":"#3e352a","dominant_hex":"#443c2c","average_hex":"#3e352a","hue_group":"yellow","lightness":0.2039,"saturation":0.1923,"palette":["#443c2c","#3c3424","#2c241c","#544c34","#1c1414","#645444"],"color_groups":[{"hex":"#443c2c","weight":0.2169,"lightness":0.2196,"saturation":0.2143,"hue_group":"yellow"},{"hex":"#3c3424","weight":0.2004,"lightness":0.1882,"saturation":0.25,"hue_group":"yellow"},{"hex":"#2c241c","weight":0.1766,"lightness":0.1412,"saturation":0.2222,"hue_group":"yellow"},{"hex":"#544c34","weight":0.1601,"lightness":0.2667,"saturation":0.2353,"hue_group":"yellow"},{"hex":"#1c1414","weight":0.1302,"lightness":0.0941,"saturation":0.1667,"hue_group":"red"},{"hex":"#645444","weight":0.1158,"lightness":0.3294,"saturation":0.1905,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/camel/camel_husk.png","family":"camel_husk","relations":[{"type":"visual_neighbors","target":"minecraft:zombie_horse","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:camel_husk_spawn_egg","name":"Camel Husk Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#3d352a","dominant_hex":"#27271f","average_hex":"#3d352a","hue_group":"yellow","lightness":0.202,"saturation":0.1845,"palette":["#27271f","#3c3424","#554c35","#1c1414","#675747","#443c2c"],"color_groups":[{"hex":"#27271f","weight":0.2347,"lightness":0.1373,"saturation":0.1143,"hue_group":"neutral"},{"hex":"#3c3424","weight":0.2194,"lightness":0.1882,"saturation":0.25,"hue_group":"yellow"},{"hex":"#554c35","weight":0.2041,"lightness":0.2706,"saturation":0.2319,"hue_group":"yellow"},{"hex":"#1c1414","weight":0.1276,"lightness":0.0941,"saturation":0.1667,"hue_group":"red"},{"hex":"#675747","weight":0.1122,"lightness":0.3412,"saturation":0.1839,"hue_group":"yellow"},{"hex":"#443c2c","weight":0.102,"lightness":0.2196,"saturation":0.2143,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/camel_husk_spawn_egg.png","family":"camel_husk_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:dried_kelp","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:charcoal","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fishing_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:camel_spawn_egg","name":"Camel Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#c49244","dominant_hex":"#c9953d","average_hex":"#c49244","hue_group":"yellow","lightness":0.5176,"saturation":0.5203,"palette":["#c9953d","#f5bd5f","#9b662a","#795520","#fcd494","#e4ac4c"],"color_groups":[{"hex":"#c9953d","weight":0.3418,"lightness":0.5137,"saturation":0.5645,"hue_group":"yellow"},{"hex":"#f5bd5f","weight":0.1939,"lightness":0.6667,"saturation":0.8824,"hue_group":"yellow"},{"hex":"#9b662a","weight":0.1633,"lightness":0.3863,"saturation":0.5736,"hue_group":"yellow"},{"hex":"#795520","weight":0.148,"lightness":0.3,"saturation":0.5817,"hue_group":"yellow"},{"hex":"#fcd494","weight":0.0867,"lightness":0.7843,"saturation":0.9455,"hue_group":"yellow"},{"hex":"#e4ac4c","weight":0.0663,"lightness":0.5961,"saturation":0.7379,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/camel_spawn_egg.png","family":"camel_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:pumpkin_pie","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_chestplate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_nugget","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clock","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ocelot_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone_dust","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:campfire","name":"Campfire","entry_type":"block","description":"A campfire is a block that can be used to cook food, pacify bees, or act as a spread-proof light source, a smoke signal, or a damaging trap.","history":[{"version":"1.14 19w02a","status":"added","notes":"Added campfires."}],"colors":{"primary":"#4f4b44","dominant_hex":"#405062","average_hex":"#4f4b44","hue_group":"neutral","lightness":0.2882,"saturation":0.0748,"palette":["#405062","#2c3444","#9f7f4c","#1c2229","#745c34","#534327"],"color_groups":[{"hex":"#405062","weight":0.2308,"lightness":0.3176,"saturation":0.2099,"hue_group":"blue"},{"hex":"#2c3444","weight":0.2067,"lightness":0.2196,"saturation":0.2143,"hue_group":"blue"},{"hex":"#9f7f4c","weight":0.2067,"lightness":0.4608,"saturation":0.3532,"hue_group":"yellow"},{"hex":"#1c2229","weight":0.1779,"lightness":0.1353,"saturation":0.1884,"hue_group":"blue"},{"hex":"#745c34","weight":0.0962,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#534327","weight":0.0817,"lightness":0.2392,"saturation":0.3607,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/campfire_log.png","family":"campfire","relations":[{"type":"visual_neighbors","target":"minecraft:soul_campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jigsaw","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:structure_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_core","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:soul_campfire","label":"Palette proche: Soul Campfire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lantern","label":"Palette proche: Lantern","confidence":0.789},{"type":"color_neighbors","target":"minecraft:brown_candle","label":"Palette proche: Brown Candle","confidence":0.778},{"type":"color_neighbors","target":"minecraft:muddy_mangrove_roots","label":"Palette proche: Muddy Mangrove Roots","confidence":0.777},{"type":"color_neighbors","target":"minecraft:iron_chain","label":"Palette proche: Iron Chain","confidence":0.757},{"type":"color_neighbors","target":"minecraft:vault","label":"Palette proche: Vault","confidence":0.757},{"type":"color_neighbors","target":"minecraft:trial_spawner","label":"Palette proche: Trial Spawner","confidence":0.745},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.742},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.742},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.727},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.724},{"type":"color_neighbors","target":"minecraft:deepslate_iron_ore","label":"Palette proche: Deepslate Iron Ore","confidence":0.721},{"type":"color_bridge","target":"minecraft:soul_campfire","label":"Pont de nuance par palette: Soul Campfire","confidence":0.86},{"type":"color_bridge","target":"minecraft:lantern","label":"Pont de nuance par palette: Lantern","confidence":0.826},{"type":"color_bridge","target":"minecraft:brown_candle","label":"Pont de nuance par sous-ton: Brown Candle","confidence":0.817},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par palette: Muddy Mangrove Roots","confidence":0.816},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par palette: Iron Chain","confidence":0.8},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par palette: Vault","confidence":0.8},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par palette: Trial Spawner","confidence":0.79},{"type":"color_bridge","target":"minecraft:oak_log","label":"Pont de nuance par sous-ton: Oak Log","confidence":0.788},{"type":"color_bridge","target":"minecraft:oak_wood","label":"Pont de nuance par sous-ton: Oak Wood","confidence":0.788},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par sous-ton: Black Candle","confidence":0.775},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.668},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.634},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.623},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.622},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.613},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.613},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.613}],"category":""},{"id":"minecraft:candle","name":"Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#e8c999","dominant_hex":"#e4bc8c","average_hex":"#e8c999","hue_group":"yellow","lightness":0.7549,"saturation":0.632,"palette":["#e4bc8c","#fcdca4","#fcf4b4","#242434","#fcf4d4"],"color_groups":[{"hex":"#e4bc8c","weight":0.4286,"lightness":0.7216,"saturation":0.6197,"hue_group":"yellow"},{"hex":"#fcdca4","weight":0.2857,"lightness":0.8157,"saturation":0.9362,"hue_group":"yellow"},{"hex":"#fcf4b4","weight":0.1905,"lightness":0.8471,"saturation":0.9231,"hue_group":"yellow"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#fcf4d4","weight":0.0476,"lightness":0.9098,"saturation":0.8696,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/candle.png","family":"candle","relations":[{"type":"visual_neighbors","target":"minecraft:end_stone_brick_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wildflowers","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:ochre_froglight","label":"Palette proche: Ochre Froglight","confidence":0.818},{"type":"color_neighbors","target":"minecraft:lantern","label":"Palette proche: Lantern","confidence":0.717},{"type":"color_neighbors","target":"minecraft:turtle_egg","label":"Palette proche: Turtle Egg","confidence":0.715},{"type":"color_neighbors","target":"minecraft:shroomlight","label":"Palette proche: Shroomlight","confidence":0.699},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.693},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.691},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.686},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.686},{"type":"color_neighbors","target":"minecraft:glowstone","label":"Palette proche: Glowstone","confidence":0.669},{"type":"color_neighbors","target":"minecraft:bee_nest","label":"Palette proche: Bee Nest","confidence":0.663},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.659},{"type":"color_neighbors","target":"minecraft:jack_o_lantern","label":"Palette proche: Jack O Lantern","confidence":0.659},{"type":"color_bridge","target":"minecraft:lantern","label":"Pont de nuance par sous-ton: Lantern","confidence":0.767},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.669},{"type":"color_bridge","target":"minecraft:potted_torchflower","label":"Pont de nuance par sous-ton: Potted Torchflower","confidence":0.604},{"type":"color_bridge","target":"minecraft:torchflower","label":"Pont de nuance par sous-ton: Torchflower","confidence":0.604},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.601},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.599},{"type":"color_bridge","target":"minecraft:gilded_blackstone","label":"Pont de nuance par sous-ton: Gilded Blackstone","confidence":0.594},{"type":"color_bridge","target":"minecraft:end_portal_frame","label":"Pont de nuance par sous-ton: End Portal Frame","confidence":0.585},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.58},{"type":"color_bridge","target":"minecraft:campfire","label":"Pont de nuance par sous-ton: Campfire","confidence":0.58},{"type":"color_analogous","target":"minecraft:jack_o_lantern","label":"Couleurs analogues: Jack O Lantern","confidence":0.949},{"type":"color_analogous","target":"minecraft:lectern","label":"Couleurs analogues: Lectern","confidence":0.946},{"type":"color_analogous","target":"minecraft:beehive","label":"Couleurs analogues: Beehive","confidence":0.945},{"type":"color_analogous","target":"minecraft:scaffolding","label":"Couleurs analogues: Scaffolding","confidence":0.943},{"type":"color_analogous","target":"minecraft:quartz_pillar","label":"Couleurs analogues: Quartz Pillar","confidence":0.938},{"type":"color_analogous","target":"minecraft:honeycomb_block","label":"Couleurs analogues: Honeycomb Block","confidence":0.931},{"type":"color_analogous","target":"minecraft:chiseled_quartz_block","label":"Couleurs analogues: Chiseled Quartz Block","confidence":0.927},{"type":"color_analogous","target":"minecraft:chiseled_bookshelf","label":"Couleurs analogues: Chiseled Bookshelf","confidence":0.925},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.94},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.92},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.907},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.893},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.891},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.886},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.884},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.875},{"type":"color_triad","target":"minecraft:purple_carpet","label":"Harmonie triadique: Purple Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_wool","label":"Harmonie triadique: Purple Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.957},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.957},{"type":"color_triad","target":"minecraft:purple_concrete_powder","label":"Harmonie triadique: Purple Concrete Powder","confidence":0.956},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.954},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.954},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.932},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.926},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.926},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.899},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.891},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.859},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.632},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.604},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.603},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.599},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.59},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.59},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.574},{"type":"value_contrast","target":"minecraft:spruce_log","label":"Contraste clair sombre: Spruce Log","confidence":0.57}],"category":""},{"id":"minecraft:candle_cake","name":"Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle_cake","label":"Palette proche: Orange Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_candle_cake","label":"Couleurs analogues: Light Blue Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":""},{"id":"minecraft:carrot","name":"Carrot","entry_type":"item","description":"A carrot is a food item obtained from carrot crops that can be used to plant them, eaten or used as a crafting ingredient. Carrot crops are planted in farmland and used to grow carrots.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added carrots."},{"version":"wiki-history","status":"added","notes":"Added carrot crops."},{"version":"wiki-history","status":"added","notes":"Added rabbits , which can be bred and/or tamed using carrots. Rabbits also grief carrot crops."}],"colors":{"primary":"#797113","dominant_hex":"#eb8921","average_hex":"#797113","hue_group":"yellow","lightness":0.2745,"saturation":0.7286,"palette":["#eb8921","#046004","#742c04","#1c9c1c","#ac3c04","#34bc34"],"color_groups":[{"hex":"#eb8921","weight":0.3229,"lightness":0.5255,"saturation":0.8347,"hue_group":"yellow"},{"hex":"#046004","weight":0.2188,"lightness":0.1961,"saturation":0.92,"hue_group":"green"},{"hex":"#742c04","weight":0.1354,"lightness":0.2353,"saturation":0.9333,"hue_group":"red"},{"hex":"#1c9c1c","weight":0.1146,"lightness":0.3608,"saturation":0.6957,"hue_group":"green"},{"hex":"#ac3c04","weight":0.1146,"lightness":0.3451,"saturation":0.9545,"hue_group":"red"},{"hex":"#34bc34","weight":0.0938,"lightness":0.4706,"saturation":0.5667,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/carrot.png","family":"carrot","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:green_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_carrot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bread","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bowl","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:carrot_on_a_stick","name":"Carrot On A Stick","entry_type":"item","description":"A carrot on a stick is a tool that can be used to control saddled pigs.","history":[{"version":"1.4.2 12w36a","status":"added","notes":"Added carrot on a stick."}],"colors":{"primary":"#604a2a","dominant_hex":"#3a483a","average_hex":"#604a2a","hue_group":"yellow","lightness":0.2706,"saturation":0.3913,"palette":["#3a483a","#29210b","#4c3414","#bf560a","#808080","#7a5720"],"color_groups":[{"hex":"#3a483a","weight":0.2105,"lightness":0.2549,"saturation":0.1077,"hue_group":"neutral"},{"hex":"#29210b","weight":0.1842,"lightness":0.102,"saturation":0.5769,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.1842,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#bf560a","weight":0.1579,"lightness":0.3941,"saturation":0.9005,"hue_group":"red"},{"hex":"#808080","weight":0.1447,"lightness":0.502,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7a5720","weight":0.1184,"lightness":0.302,"saturation":0.5844,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/carrot_on_a_stick.png","family":"carrot_on_a_stick","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:spruce_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:book","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crossbow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_chest_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:carrots","name":"Carrots","entry_type":"block","description":"A carrot is a food item obtained from carrot crops that can be used to plant them, eaten or used as a crafting ingredient. Carrot crops are planted in farmland and used to grow carrots.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added carrots."},{"version":"wiki-history","status":"added","notes":"Added carrot crops."},{"version":"wiki-history","status":"added","notes":"Added rabbits , which can be bred and/or tamed using carrots. Rabbits also grief carrot crops."}],"colors":{"primary":"#2d6e28","dominant_hex":"#2c742c","average_hex":"#2d6e28","hue_group":"green","lightness":0.2941,"saturation":0.4667,"palette":["#2c742c","#246424","#4c8c2c"],"color_groups":[{"hex":"#2c742c","weight":0.4706,"lightness":0.3137,"saturation":0.45,"hue_group":"green"},{"hex":"#246424","weight":0.4118,"lightness":0.2667,"saturation":0.4706,"hue_group":"green"},{"hex":"#4c8c2c","weight":0.1176,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/carrots_stage0.png","family":"carrots","relations":[{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berry_bush","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sunflower","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.912},{"type":"color_neighbors","target":"minecraft:kelp","label":"Palette proche: Kelp","confidence":0.754},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.752},{"type":"color_neighbors","target":"minecraft:rose_bush","label":"Palette proche: Rose Bush","confidence":0.747},{"type":"color_neighbors","target":"minecraft:kelp_plant","label":"Palette proche: Kelp Plant","confidence":0.738},{"type":"color_neighbors","target":"minecraft:dark_oak_sapling","label":"Palette proche: Dark Oak Sapling","confidence":0.734},{"type":"color_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Palette proche: Potted Dark Oak Sapling","confidence":0.734},{"type":"color_neighbors","target":"minecraft:sweet_berry_bush","label":"Palette proche: Sweet Berry Bush","confidence":0.722},{"type":"color_neighbors","target":"minecraft:oak_sapling","label":"Palette proche: Oak Sapling","confidence":0.72},{"type":"color_neighbors","target":"minecraft:potted_oak_sapling","label":"Palette proche: Potted Oak Sapling","confidence":0.72},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.791},{"type":"color_bridge","target":"minecraft:melon","label":"Pont de nuance par palette: Melon","confidence":0.756},{"type":"color_bridge","target":"minecraft:potted_azalea_bush","label":"Pont de nuance par palette: Potted Azalea Bush","confidence":0.72},{"type":"color_bridge","target":"minecraft:cave_vines","label":"Pont de nuance par palette: Cave Vines","confidence":0.716},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.697},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.697},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.694},{"type":"color_bridge","target":"minecraft:poppy","label":"Pont de nuance par palette: Poppy","confidence":0.694},{"type":"color_bridge","target":"minecraft:potted_poppy","label":"Pont de nuance par palette: Potted Poppy","confidence":0.694},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.689},{"type":"color_analogous","target":"minecraft:mangrove_propagule","label":"Couleurs analogues: Mangrove Propagule","confidence":0.877},{"type":"color_analogous","target":"minecraft:verdant_froglight","label":"Couleurs analogues: Verdant Froglight","confidence":0.832},{"type":"color_analogous","target":"minecraft:wheat","label":"Couleurs analogues: Wheat","confidence":0.821},{"type":"color_analogous","target":"minecraft:potatoes","label":"Couleurs analogues: Potatoes","confidence":0.817},{"type":"color_analogous","target":"minecraft:slime_block","label":"Couleurs analogues: Slime Block","confidence":0.776},{"type":"color_analogous","target":"minecraft:test_block","label":"Couleurs analogues: Test Block","confidence":0.763},{"type":"color_analogous","target":"minecraft:sunflower","label":"Couleurs analogues: Sunflower","confidence":0.756},{"type":"color_analogous","target":"minecraft:beetroots","label":"Couleurs analogues: Beetroots","confidence":0.74},{"type":"color_complement","target":"minecraft:chorus_plant","label":"Contraste complementaire: Chorus Plant","confidence":0.835},{"type":"color_complement","target":"minecraft:bubble_coral_fan","label":"Contraste complementaire: Bubble Coral Fan","confidence":0.822},{"type":"color_complement","target":"minecraft:bubble_coral_wall_fan","label":"Contraste complementaire: Bubble Coral Wall Fan","confidence":0.822},{"type":"color_complement","target":"minecraft:bubble_coral","label":"Contraste complementaire: Bubble Coral","confidence":0.815},{"type":"color_complement","target":"minecraft:bubble_coral_block","label":"Contraste complementaire: Bubble Coral Block","confidence":0.788},{"type":"color_complement","target":"minecraft:magenta_concrete_powder","label":"Contraste complementaire: Magenta Concrete Powder","confidence":0.71},{"type":"color_complement","target":"minecraft:magenta_candle","label":"Contraste complementaire: Magenta Candle","confidence":0.709},{"type":"color_complement","target":"minecraft:magenta_carpet","label":"Contraste complementaire: Magenta Carpet","confidence":0.69},{"type":"color_triad","target":"minecraft:crimson_hyphae","label":"Harmonie triadique: Crimson Hyphae","confidence":0.96},{"type":"color_triad","target":"minecraft:crimson_stem","label":"Harmonie triadique: Crimson Stem","confidence":0.96},{"type":"color_triad","target":"minecraft:fire_coral","label":"Harmonie triadique: Fire Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:cherry_hanging_sign","label":"Harmonie triadique: Cherry Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:cherry_wall_hanging_sign","label":"Harmonie triadique: Cherry Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_cherry_log","label":"Harmonie triadique: Stripped Cherry Log","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_cherry_wood","label":"Harmonie triadique: Stripped Cherry Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:black_glazed_terracotta","label":"Harmonie triadique: Black Glazed Terracotta","confidence":0.95},{"type":"color_square","target":"minecraft:brown_carpet","label":"Harmonie carree: Brown Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:brown_wool","label":"Harmonie carree: Brown Wool","confidence":0.96},{"type":"color_square","target":"minecraft:brown_shulker_box","label":"Harmonie carree: Brown Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:brown_concrete","label":"Harmonie carree: Brown Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:air","label":"Harmonie carree: Air","confidence":0.96},{"type":"color_square","target":"minecraft:cave_air","label":"Harmonie carree: Cave Air","confidence":0.96},{"type":"color_square","target":"minecraft:void_air","label":"Harmonie carree: Void Air","confidence":0.96},{"type":"color_square","target":"minecraft:brown_concrete_powder","label":"Harmonie carree: Brown Concrete Powder","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.639},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.605},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.583},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.573},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.573},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.56},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:oxeye_daisy","label":"Contraste clair sombre: Oxeye Daisy","confidence":0.55}],"category":""},{"id":"minecraft:cartography_table","name":"Cartography Table","entry_type":"block","description":"A cartography table is a utility block used for cloning, zooming out, and locking maps. It also serves as a cartographer's job site block.","history":[{"version":"1.14 18w44a","status":"added","notes":"Added cartography tables."},{"version":"19w06a","status":"added","notes":"added for cartography tables."}],"colors":{"primary":"#442c14","dominant_hex":"#3c2a14","average_hex":"#442c14","hue_group":"yellow","lightness":0.1725,"saturation":0.5455,"palette":["#3c2a14","#5a3e1c","#4c341c","#4c2c14","#341c0c","#2c1c0c"],"color_groups":[{"hex":"#3c2a14","weight":0.2148,"lightness":0.1569,"saturation":0.5,"hue_group":"yellow"},{"hex":"#5a3e1c","weight":0.1992,"lightness":0.2314,"saturation":0.5254,"hue_group":"yellow"},{"hex":"#4c341c","weight":0.1797,"lightness":0.2039,"saturation":0.4615,"hue_group":"yellow"},{"hex":"#4c2c14","weight":0.1641,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"},{"hex":"#341c0c","weight":0.1406,"lightness":0.1255,"saturation":0.625,"hue_group":"red"},{"hex":"#2c1c0c","weight":0.1016,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cartography_table_side3.png","family":"cartography_table","relations":[{"type":"visual_neighbors","target":"minecraft:spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:podzol","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_log","label":"Palette proche: Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wood","label":"Palette proche: Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.928},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.762},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.744},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.74},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.74},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.721},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.704},{"type":"color_analogous","target":"minecraft:dark_oak_button","label":"Couleurs analogues: Dark Oak Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence","label":"Couleurs analogues: Dark Oak Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence_gate","label":"Couleurs analogues: Dark Oak Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_planks","label":"Couleurs analogues: Dark Oak Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_pressure_plate","label":"Couleurs analogues: Dark Oak Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sign","label":"Couleurs analogues: Dark Oak Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_slab","label":"Couleurs analogues: Dark Oak Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_stairs","label":"Couleurs analogues: Dark Oak Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.89},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.883},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.843},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.843},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.843},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.771},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.751},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.751},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.907},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.906},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.903},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.903},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.894},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.885},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.884},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.884},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.931},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.827},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.825},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.815},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.764},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.731},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.72},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.72},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.72},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.72},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.709},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.686}],"category":"utility"},{"id":"minecraft:carved_pumpkin","name":"Carved Pumpkin","entry_type":"block","description":"A carved pumpkin is a block obtained by using shears on a pumpkin. It is used to craft jack o'lanterns, build golems, and can be worn as a helmet.","history":[{"version":"v1.2.0 preview","status":"added","notes":"Added carved pumpkins, then simply called pumpkins as they were the only form of pumpkins at the time."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb carved pumpkins, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#965411","dominant_hex":"#9d570c","average_hex":"#965411","hue_group":"yellow","lightness":0.3275,"saturation":0.7964,"palette":["#9d570c","#e4941c","#441404","#c47414","#2c0404","#e4a44c"],"color_groups":[{"hex":"#9d570c","weight":0.2539,"lightness":0.3314,"saturation":0.858,"hue_group":"yellow"},{"hex":"#e4941c","weight":0.2148,"lightness":0.502,"saturation":0.7874,"hue_group":"yellow"},{"hex":"#441404","weight":0.1953,"lightness":0.1412,"saturation":0.8889,"hue_group":"red"},{"hex":"#c47414","weight":0.1484,"lightness":0.4235,"saturation":0.8148,"hue_group":"yellow"},{"hex":"#2c0404","weight":0.125,"lightness":0.0941,"saturation":0.8333,"hue_group":"red"},{"hex":"#e4a44c","weight":0.0625,"lightness":0.5961,"saturation":0.7379,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/carved_pumpkin.png","family":"carved_pumpkin","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pumpkin","label":"Palette proche: Pumpkin","confidence":0.914},{"type":"color_neighbors","target":"minecraft:jack_o_lantern","label":"Palette proche: Jack O Lantern","confidence":0.851},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.822},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.815},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.815},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.814},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.812},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.792},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.791},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.785},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.785},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.785},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.66},{"type":"color_bridge","target":"minecraft:potted_crimson_roots","label":"Pont de nuance par palette: Potted Crimson Roots","confidence":0.64},{"type":"color_bridge","target":"minecraft:crimson_roots","label":"Pont de nuance par palette: Crimson Roots","confidence":0.638},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.623},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.619},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.617},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.6},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.6},{"type":"color_bridge","target":"minecraft:gilded_blackstone","label":"Pont de nuance par sous-ton: Gilded Blackstone","confidence":0.599},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.581},{"type":"color_analogous","target":"minecraft:cartography_table","label":"Couleurs analogues: Cartography Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_stained_glass","label":"Couleurs analogues: Brown Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_stained_glass_pane","label":"Couleurs analogues: Brown Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_log","label":"Couleurs analogues: Spruce Log","confidence":0.959},{"type":"color_analogous","target":"minecraft:spruce_wood","label":"Couleurs analogues: Spruce Wood","confidence":0.959},{"type":"color_analogous","target":"minecraft:dark_oak_door","label":"Couleurs analogues: Dark Oak Door","confidence":0.954},{"type":"color_analogous","target":"minecraft:orange_concrete_powder","label":"Couleurs analogues: Orange Concrete Powder","confidence":0.952},{"type":"color_analogous","target":"minecraft:potted_open_eyeblossom","label":"Couleurs analogues: Potted Open Eyeblossom","confidence":0.952},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.882},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.865},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.82},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.82},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.82},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.749},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.743},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.74},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.892},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.886},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.878},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.877},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.874},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.874},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.873},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.873},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.95},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.946},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.816},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.8},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.61},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.576},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.565},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.565},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.565},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.565},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.554},{"type":"value_contrast","target":"minecraft:wildflowers","label":"Contraste clair sombre: Wildflowers","confidence":0.55}],"category":""},{"id":"minecraft:cat/all_black","name":"Cat / All Black","entry_type":"mob","description":"A cat is a passive mob found in villages and swamp huts. They can be tamed and used to repel creepers and phantoms.","history":[{"version":"1.2.1 12w04a","status":"added","notes":"Added cats, which can be tamed from ocelots ."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash cats."},{"version":"18w44a","status":"added","notes":"Added stray cats."}],"colors":{"primary":"#100f19","dominant_hex":"#141424","average_hex":"#100f19","hue_group":"blue","lightness":0.0784,"saturation":0.25,"palette":["#141424","#0c0c14","#04040c","#14141c","#040404","#bf8c54"],"color_groups":[{"hex":"#141424","weight":0.3611,"lightness":0.1098,"saturation":0.2857,"hue_group":"blue"},{"hex":"#0c0c14","weight":0.213,"lightness":0.0627,"saturation":0.25,"hue_group":"blue"},{"hex":"#04040c","weight":0.2024,"lightness":0.0314,"saturation":0.5,"hue_group":"blue"},{"hex":"#14141c","weight":0.1164,"lightness":0.0941,"saturation":0.1667,"hue_group":"blue"},{"hex":"#040404","weight":0.0992,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bf8c54","weight":0.0079,"lightness":0.5392,"saturation":0.4553,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cat/all_black.png","family":"cat","relations":[{"type":"variants","target":"minecraft:cat/black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/british_shorthair","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/british_shorthair","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/calico","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/calico","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/jellie","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/jellie","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ocelot","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ocelot","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/persian","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/persian","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ragdoll","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ragdoll","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/red","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/red","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/siamese","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/siamese","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/tabby","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/tabby","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/white","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/white","label":"Related set: cat","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:shulker_blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_invulnerable","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/cyan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_wind","label":"Shared hue group: blue","confidence":0.55}],"category":"mob"},{"id":"minecraft:cat/black","name":"Cat / Black","entry_type":"mob","description":"A cat is a passive mob found in villages and swamp huts. They can be tamed and used to repel creepers and phantoms.","history":[{"version":"1.2.1 12w04a","status":"added","notes":"Added cats, which can be tamed from ocelots ."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash cats."},{"version":"18w44a","status":"added","notes":"Added stray cats."}],"colors":{"primary":"#47444f","dominant_hex":"#1c1c24","average_hex":"#47444f","hue_group":"neutral","lightness":0.2882,"saturation":0.0748,"palette":["#1c1c24","#ececec","#252535","#cccccc","#afa3a9","#5c9c14"],"color_groups":[{"hex":"#1c1c24","weight":0.6779,"lightness":0.1255,"saturation":0.125,"hue_group":"blue"},{"hex":"#ececec","weight":0.1488,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#252535","weight":0.1074,"lightness":0.1765,"saturation":0.1778,"hue_group":"blue"},{"hex":"#cccccc","weight":0.0556,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#afa3a9","weight":0.0078,"lightness":0.6627,"saturation":0.0698,"hue_group":"neutral"},{"hex":"#5c9c14","weight":0.0026,"lightness":0.3451,"saturation":0.7727,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cat/black.png","family":"cat","relations":[{"type":"variants","target":"minecraft:cat/all_black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/all_black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/british_shorthair","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/british_shorthair","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/calico","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/calico","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/jellie","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/jellie","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ocelot","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ocelot","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/persian","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/persian","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ragdoll","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ragdoll","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/red","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/red","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/siamese","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/siamese","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/tabby","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/tabby","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/white","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/white","label":"Related set: cat","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:pillager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_fangs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:cat/british_shorthair","name":"Cat / British Shorthair","entry_type":"mob","description":"A cat is a passive mob found in villages and swamp huts. They can be tamed and used to repel creepers and phantoms.","history":[{"version":"1.2.1 12w04a","status":"added","notes":"Added cats, which can be tamed from ocelots ."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash cats."},{"version":"18w44a","status":"added","notes":"Added stray cats."}],"colors":{"primary":"#989a9a","dominant_hex":"#9c9c9c","average_hex":"#989a9a","hue_group":"neutral","lightness":0.6,"saturation":0.0098,"palette":["#9c9c9c","#848c8c","#a4a4a4","#7a7a82","#bcbcbc","#ecd494"],"color_groups":[{"hex":"#9c9c9c","weight":0.295,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#848c8c","weight":0.2262,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.213,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7a7a82","weight":0.1389,"lightness":0.4941,"saturation":0.0317,"hue_group":"neutral"},{"hex":"#bcbcbc","weight":0.1243,"lightness":0.7373,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ecd494","weight":0.0026,"lightness":0.7529,"saturation":0.6984,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cat/british_shorthair.png","family":"cat","relations":[{"type":"variants","target":"minecraft:cat/all_black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/all_black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/calico","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/calico","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/jellie","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/jellie","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ocelot","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ocelot","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/persian","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/persian","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ragdoll","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ragdoll","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/red","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/red","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/siamese","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/siamese","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/tabby","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/tabby","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/white","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/white","label":"Related set: cat","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/aggressive","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/lazy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/playful","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/weak","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/worried","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white_splotched","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:cat/calico","name":"Cat / Calico","entry_type":"mob","description":"A cat is a passive mob found in villages and swamp huts. They can be tamed and used to repel creepers and phantoms.","history":[{"version":"1.2.1 12w04a","status":"added","notes":"Added cats, which can be tamed from ocelots ."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash cats."},{"version":"18w44a","status":"added","notes":"Added stray cats."}],"colors":{"primary":"#c2b39f","dominant_hex":"#dcdcdc","average_hex":"#c2b39f","hue_group":"yellow","lightness":0.6922,"saturation":0.2229,"palette":["#dcdcdc","#ce9240","#cbcccc","#c9bcab","#46423b","#e9efef"],"color_groups":[{"hex":"#dcdcdc","weight":0.2249,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ce9240","weight":0.2183,"lightness":0.5294,"saturation":0.5917,"hue_group":"yellow"},{"hex":"#cbcccc","weight":0.1799,"lightness":0.798,"saturation":0.0097,"hue_group":"neutral"},{"hex":"#c9bcab","weight":0.172,"lightness":0.7294,"saturation":0.2174,"hue_group":"yellow"},{"hex":"#46423b","weight":0.1151,"lightness":0.2529,"saturation":0.0853,"hue_group":"neutral"},{"hex":"#e9efef","weight":0.0899,"lightness":0.9255,"saturation":0.1579,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cat/calico.png","family":"cat","relations":[{"type":"variants","target":"minecraft:cat/all_black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/all_black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/british_shorthair","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/british_shorthair","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/jellie","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/jellie","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ocelot","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ocelot","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/persian","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/persian","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ragdoll","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ragdoll","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/red","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/red","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/siamese","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/siamese","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/tabby","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/tabby","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/white","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/white","label":"Related set: cat","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:iron_golem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/gray","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/siamese","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/creamy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/grey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:cat/jellie","name":"Cat / Jellie","entry_type":"mob","description":"A cat is a passive mob found in villages and swamp huts. They can be tamed and used to repel creepers and phantoms.","history":[{"version":"1.2.1 12w04a","status":"added","notes":"Added cats, which can be tamed from ocelots ."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash cats."},{"version":"18w44a","status":"added","notes":"Added stray cats."}],"colors":{"primary":"#9e9d9d","dominant_hex":"#4f4f4f","average_hex":"#9e9d9d","hue_group":"neutral","lightness":0.6176,"saturation":0.0051,"palette":["#4f4f4f","#cecece","#f9f9f9","#e4e4e4","#434343","#6e6e6e"],"color_groups":[{"hex":"#4f4f4f","weight":0.2606,"lightness":0.3098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cecece","weight":0.2526,"lightness":0.8078,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f9f9f9","weight":0.1521,"lightness":0.9765,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.127,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#434343","weight":0.1045,"lightness":0.2627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6e6e6e","weight":0.1032,"lightness":0.4314,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cat/jellie.png","family":"cat","relations":[{"type":"variants","target":"minecraft:cat/all_black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/all_black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/british_shorthair","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/british_shorthair","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/calico","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/calico","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ocelot","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ocelot","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/persian","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/persian","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ragdoll","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ragdoll","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/red","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/red","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/siamese","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/siamese","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/tabby","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/tabby","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/white","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/white","label":"Related set: cat","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white_splotched","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/aggressive","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/lazy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/playful","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/weak","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/worried","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stray","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:cat/ocelot","name":"Cat / Ocelot","entry_type":"mob","description":"A cat is a passive mob found in villages and swamp huts. They can be tamed and used to repel creepers and phantoms.","history":[{"version":"1.2.1 12w04a","status":"added","notes":"Added cats, which can be tamed from ocelots ."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash cats."},{"version":"18w44a","status":"added","notes":"Added stray cats."}],"colors":{"primary":"#eac270","dominant_hex":"#fcdc74","average_hex":"#eac270","hue_group":"yellow","lightness":0.6784,"saturation":0.7439,"palette":["#fcdc74","#e9af5c","#f4cc74","#f4e5ae","#9c6b3b","#f4d49c"],"color_groups":[{"hex":"#fcdc74","weight":0.2771,"lightness":0.7216,"saturation":0.9577,"hue_group":"yellow"},{"hex":"#e9af5c","weight":0.2526,"lightness":0.6373,"saturation":0.7622,"hue_group":"yellow"},{"hex":"#f4cc74","weight":0.2049,"lightness":0.7059,"saturation":0.8533,"hue_group":"yellow"},{"hex":"#f4e5ae","weight":0.1018,"lightness":0.8196,"saturation":0.7609,"hue_group":"yellow"},{"hex":"#9c6b3b","weight":0.1005,"lightness":0.4216,"saturation":0.4512,"hue_group":"red"},{"hex":"#f4d49c","weight":0.0631,"lightness":0.7843,"saturation":0.8,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cat/ocelot.png","family":"cat","relations":[{"type":"variants","target":"minecraft:cat/all_black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/all_black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/british_shorthair","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/british_shorthair","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/calico","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/calico","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/jellie","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/jellie","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/persian","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/persian","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ragdoll","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ragdoll","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/red","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/red","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/siamese","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/siamese","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/tabby","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/tabby","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/white","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/white","label":"Related set: cat","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cat/red","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/persian","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_yellow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spark","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/creamy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_lime","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:cat/persian","name":"Cat / Persian","entry_type":"mob","description":"A cat is a passive mob found in villages and swamp huts. They can be tamed and used to repel creepers and phantoms.","history":[{"version":"1.2.1 12w04a","status":"added","notes":"Added cats, which can be tamed from ocelots ."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash cats."},{"version":"18w44a","status":"added","notes":"Added stray cats."}],"colors":{"primary":"#ecc998","dominant_hex":"#fce4b4","average_hex":"#ecc998","hue_group":"yellow","lightness":0.7608,"saturation":0.6885,"palette":["#fce4b4","#f4cc8c","#d4a46c","#fceccc","#9b7763","#64b4fc"],"color_groups":[{"hex":"#fce4b4","weight":0.3469,"lightness":0.8471,"saturation":0.9231,"hue_group":"yellow"},{"hex":"#f4cc8c","weight":0.2639,"lightness":0.7529,"saturation":0.8254,"hue_group":"yellow"},{"hex":"#d4a46c","weight":0.234,"lightness":0.6275,"saturation":0.5474,"hue_group":"yellow"},{"hex":"#fceccc","weight":0.1116,"lightness":0.8941,"saturation":0.8889,"hue_group":"yellow"},{"hex":"#9b7763","weight":0.0408,"lightness":0.498,"saturation":0.2205,"hue_group":"red"},{"hex":"#64b4fc","weight":0.0027,"lightness":0.6902,"saturation":0.962,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cat/persian.png","family":"cat","relations":[{"type":"variants","target":"minecraft:cat/all_black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/all_black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/british_shorthair","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/british_shorthair","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/calico","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/calico","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/jellie","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/jellie","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ocelot","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ocelot","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ragdoll","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ragdoll","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/red","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/red","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/siamese","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/siamese","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/tabby","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/tabby","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/white","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/white","label":"Related set: cat","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cat/ocelot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spark","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/red","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/creamy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_yellow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_lime","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:cat/ragdoll","name":"Cat / Ragdoll","entry_type":"mob","description":"A cat is a passive mob found in villages and swamp huts. They can be tamed and used to repel creepers and phantoms.","history":[{"version":"1.2.1 12w04a","status":"added","notes":"Added cats, which can be tamed from ocelots ."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash cats."},{"version":"18w44a","status":"added","notes":"Added stray cats."}],"colors":{"primary":"#cac3be","dominant_hex":"#dcd4d4","average_hex":"#cac3be","hue_group":"neutral","lightness":0.7686,"saturation":0.1017,"palette":["#dcd4d4","#ac9c94","#ececec","#8a736c","#f4f4f4","#fcfcfc"],"color_groups":[{"hex":"#dcd4d4","weight":0.2817,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#ac9c94","weight":0.2394,"lightness":0.6275,"saturation":0.1263,"hue_group":"red"},{"hex":"#ececec","weight":0.2116,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8a736c","weight":0.1481,"lightness":0.4824,"saturation":0.122,"hue_group":"red"},{"hex":"#f4f4f4","weight":0.1032,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.0159,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cat/ragdoll.png","family":"cat","relations":[{"type":"variants","target":"minecraft:cat/all_black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/all_black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/british_shorthair","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/british_shorthair","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/calico","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/calico","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/jellie","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/jellie","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ocelot","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ocelot","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/persian","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/persian","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/red","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/red","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/siamese","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/siamese","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/tabby","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/tabby","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/white","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/white","label":"Related set: cat","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:llama/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polarbear","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:cat/red","name":"Cat / Red","entry_type":"mob","description":"A cat is a passive mob found in villages and swamp huts. They can be tamed and used to repel creepers and phantoms.","history":[{"version":"1.2.1 12w04a","status":"added","notes":"Added cats, which can be tamed from ocelots ."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash cats."},{"version":"18w44a","status":"added","notes":"Added stray cats."}],"colors":{"primary":"#eab259","dominant_hex":"#ecac3c","average_hex":"#eab259","hue_group":"yellow","lightness":0.6333,"saturation":0.7754,"palette":["#ecac3c","#f3b445","#e69a34","#ececec","#dc872c","#ebd5aa"],"color_groups":[{"hex":"#ecac3c","weight":0.3814,"lightness":0.5804,"saturation":0.8224,"hue_group":"yellow"},{"hex":"#f3b445","weight":0.1907,"lightness":0.6118,"saturation":0.8788,"hue_group":"yellow"},{"hex":"#e69a34","weight":0.1482,"lightness":0.5529,"saturation":0.7807,"hue_group":"yellow"},{"hex":"#ececec","weight":0.1366,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dc872c","weight":0.0825,"lightness":0.5176,"saturation":0.7154,"hue_group":"yellow"},{"hex":"#ebd5aa","weight":0.0606,"lightness":0.7941,"saturation":0.619,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cat/red.png","family":"cat","relations":[{"type":"variants","target":"minecraft:cat/all_black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/all_black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/british_shorthair","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/british_shorthair","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/calico","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/calico","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/jellie","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/jellie","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ocelot","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ocelot","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/persian","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/persian","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ragdoll","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ragdoll","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/siamese","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/siamese","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/tabby","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/tabby","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/white","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/white","label":"Related set: cat","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cat/ocelot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_yellow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/persian","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spark","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_lime","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/creamy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/green","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:cat/siamese","name":"Cat / Siamese","entry_type":"mob","description":"A cat is a passive mob found in villages and swamp huts. They can be tamed and used to repel creepers and phantoms.","history":[{"version":"1.2.1 12w04a","status":"added","notes":"Added cats, which can be tamed from ocelots ."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash cats."},{"version":"18w44a","status":"added","notes":"Added stray cats."}],"colors":{"primary":"#b3a698","dominant_hex":"#eddfc9","average_hex":"#b3a698","hue_group":"yellow","lightness":0.649,"saturation":0.1508,"palette":["#eddfc9","#dcd4c4","#584840","#342424","#ccb9b1","#96938f"],"color_groups":[{"hex":"#eddfc9","weight":0.3673,"lightness":0.8588,"saturation":0.5,"hue_group":"yellow"},{"hex":"#dcd4c4","weight":0.1791,"lightness":0.8157,"saturation":0.2553,"hue_group":"yellow"},{"hex":"#584840","weight":0.1366,"lightness":0.298,"saturation":0.1579,"hue_group":"red"},{"hex":"#342424","weight":0.1314,"lightness":0.1725,"saturation":0.1818,"hue_group":"red"},{"hex":"#ccb9b1","weight":0.1198,"lightness":0.7471,"saturation":0.2093,"hue_group":"red"},{"hex":"#96938f","weight":0.0657,"lightness":0.5745,"saturation":0.0323,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cat/siamese.png","family":"cat","relations":[{"type":"variants","target":"minecraft:cat/all_black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/all_black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/british_shorthair","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/british_shorthair","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/calico","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/calico","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/jellie","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/jellie","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ocelot","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ocelot","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/persian","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/persian","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ragdoll","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ragdoll","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/red","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/red","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/tabby","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/tabby","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/white","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/white","label":"Related set: cat","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:iron_golem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/gray","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/calico","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/grey","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:cat/tabby","name":"Cat / Tabby","entry_type":"mob","description":"A cat is a passive mob found in villages and swamp huts. They can be tamed and used to repel creepers and phantoms.","history":[{"version":"1.2.1 12w04a","status":"added","notes":"Added cats, which can be tamed from ocelots ."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash cats."},{"version":"18w44a","status":"added","notes":"Added stray cats."}],"colors":{"primary":"#8e735b","dominant_hex":"#e7d4bf","average_hex":"#8e735b","hue_group":"red","lightness":0.4569,"saturation":0.2189,"palette":["#e7d4bf","#74543c","#5c442c","#84644c","#543c2c","#957553"],"color_groups":[{"hex":"#e7d4bf","weight":0.2354,"lightness":0.8275,"saturation":0.4545,"hue_group":"yellow"},{"hex":"#74543c","weight":0.1905,"lightness":0.3451,"saturation":0.3182,"hue_group":"red"},{"hex":"#5c442c","weight":0.1825,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"},{"hex":"#84644c","weight":0.1706,"lightness":0.4078,"saturation":0.2692,"hue_group":"red"},{"hex":"#543c2c","weight":0.1111,"lightness":0.251,"saturation":0.3125,"hue_group":"red"},{"hex":"#957553","weight":0.1098,"lightness":0.4549,"saturation":0.2845,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cat/tabby.png","family":"cat","relations":[{"type":"variants","target":"minecraft:cat/all_black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/all_black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/british_shorthair","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/british_shorthair","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/calico","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/calico","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/jellie","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/jellie","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ocelot","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ocelot","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/persian","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/persian","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ragdoll","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ragdoll","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/red","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/red","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/siamese","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/siamese","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/white","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/white","label":"Related set: cat","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:cat/white","name":"Cat / White","entry_type":"mob","description":"A cat is a passive mob found in villages and swamp huts. They can be tamed and used to repel creepers and phantoms.","history":[{"version":"1.2.1 12w04a","status":"added","notes":"Added cats, which can be tamed from ocelots ."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash cats."},{"version":"18w44a","status":"added","notes":"Added stray cats."}],"colors":{"primary":"#e9e8e9","dominant_hex":"#fcfcfc","average_hex":"#e9e8e9","hue_group":"neutral","lightness":0.9118,"saturation":0.0222,"palette":["#fcfcfc","#ececf4","#d4d4d4","#f4f4f4","#c4c2c3","#141c2c"],"color_groups":[{"hex":"#fcfcfc","weight":0.3664,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ececf4","weight":0.2077,"lightness":0.9412,"saturation":0.2667,"hue_group":"blue"},{"hex":"#d4d4d4","weight":0.205,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.1164,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c2c3","weight":0.1019,"lightness":0.7647,"saturation":0.0167,"hue_group":"neutral"},{"hex":"#141c2c","weight":0.0026,"lightness":0.1255,"saturation":0.375,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cat/white.png","family":"cat","relations":[{"type":"variants","target":"minecraft:cat/all_black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/all_black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/black","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/black","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/british_shorthair","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/british_shorthair","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/calico","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/calico","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/jellie","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/jellie","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ocelot","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ocelot","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/persian","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/persian","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/ragdoll","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/ragdoll","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/red","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/red","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/siamese","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/siamese","label":"Related set: cat","confidence":0.8},{"type":"variants","target":"minecraft:cat/tabby","label":"Same family: cat","confidence":0.75},{"type":"related_sets","target":"minecraft:cat/tabby","label":"Related set: cat","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:sheep/wool_undercoat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitefield","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/caerbannog","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:cat_spawn_egg","name":"Cat Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#6e6c6f","dominant_hex":"#262933","average_hex":"#6e6c6f","hue_group":"neutral","lightness":0.4294,"saturation":0.0137,"palette":["#262933","#646464","#4c4c4c","#b4aaaf","#6e6969","#ececec"],"color_groups":[{"hex":"#262933","weight":0.2059,"lightness":0.1745,"saturation":0.1461,"hue_group":"blue"},{"hex":"#646464","weight":0.2059,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1765,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4aaaf","weight":0.1765,"lightness":0.6863,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#6e6969","weight":0.1373,"lightness":0.4216,"saturation":0.0233,"hue_group":"neutral"},{"hex":"#ececec","weight":0.098,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cat_spawn_egg.png","family":"cat_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_nautilus_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:cauldron","name":"Cauldron","entry_type":"block","description":"A cauldron is a block that can contain water, lava or powder snow and, in certain situations, collect them from the environment. In Bedrock Edition, it can also hold dyed water or potions, and can be used to efficiently create tipped arrows. It also serves as a leatherworker's job site block.","history":[{"version":"wiki","status":"observed","notes":"Wiki revision 3526851 at 2026-04-10T12:08:59Z."}],"colors":{"primary":"#4a494a","dominant_hex":"#4c4c4c","average_hex":"#4a494a","hue_group":"neutral","lightness":0.2882,"saturation":0.0068,"palette":["#4c4c4c","#5c5c5c","#34343c","#3c3c44","#646464","#2c2c34"],"color_groups":[{"hex":"#4c4c4c","weight":0.4167,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1538,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#34343c","weight":0.1474,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.1282,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#646464","weight":0.0962,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c34","weight":0.0577,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cauldron_top.png","family":"cauldron","relations":[{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:basalt","label":"Palette proche: Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.94},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:basalt","label":"Pont de nuance par palette: Basalt","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.666},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.633},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.624},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.623},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.623},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.61},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.606},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.606}],"category":"utility"},{"id":"minecraft:cave_air","name":"Cave Air","entry_type":"block","description":"Air is an invisible block used to define unoccupied space where other blocks and items could exist; it represents the absence of a block or an item. It is one of the few blocks in the game that players cannot normally interact with. Cave air\u200c[Java Edition only] is a variant found only underground in carver caves and some generated structures along with features like lava lakes. Void air\u200c[Java Edition only] is a variant used internally for the 'air' in unloaded chunks and outside of the world height limits (above Y=319 and below Y=-64 in the Overworld, and above Y=255 and below Y=0 in the Nether and the End dimensions).","history":[{"version":"Cave game tech test","status":"added","notes":"Added air, which is any space devoid of blocks."}],"colors":{"primary":"#20557c","dominant_hex":"#040404","average_hex":"#20557c","hue_group":"cyan","lightness":0.3059,"saturation":0.5897,"palette":["#040404","#0494fc","#54bcfc","#d4ecfc"],"color_groups":[{"hex":"#040404","weight":0.5128,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#0494fc","weight":0.2308,"lightness":0.502,"saturation":0.9764,"hue_group":"cyan"},{"hex":"#54bcfc","weight":0.1795,"lightness":0.6588,"saturation":0.9655,"hue_group":"cyan"},{"hex":"#d4ecfc","weight":0.0769,"lightness":0.9098,"saturation":0.8696,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/gui/sprites/hud/air.png","family":"cave_air","relations":[{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:void_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:structure_void","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_crop","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:air","label":"Palette proche: Air","confidence":0.94},{"type":"color_neighbors","target":"minecraft:void_air","label":"Palette proche: Void Air","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.58},{"type":"color_neighbors","target":"minecraft:deepslate_lapis_ore","label":"Palette proche: Deepslate Lapis Ore","confidence":0.58},{"type":"color_neighbors","target":"minecraft:lapis_ore","label":"Palette proche: Lapis Ore","confidence":0.58},{"type":"color_neighbors","target":"minecraft:diamond_ore","label":"Palette proche: Diamond Ore","confidence":0.58},{"type":"color_neighbors","target":"minecraft:heavy_core","label":"Palette proche: Heavy Core","confidence":0.58},{"type":"color_neighbors","target":"minecraft:deepslate_diamond_ore","label":"Palette proche: Deepslate Diamond Ore","confidence":0.58},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.58},{"type":"color_neighbors","target":"minecraft:jigsaw","label":"Palette proche: Jigsaw","confidence":0.58},{"type":"color_neighbors","target":"minecraft:reinforced_deepslate","label":"Palette proche: Reinforced Deepslate","confidence":0.58},{"type":"color_neighbors","target":"minecraft:structure_block","label":"Palette proche: Structure Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par sous-ton: Heavy Core","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:soul_torch","label":"Pont de nuance par sous-ton: Soul Torch","confidence":0.58},{"type":"color_bridge","target":"minecraft:soul_wall_torch","label":"Pont de nuance par sous-ton: Soul Wall Torch","confidence":0.58},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.58},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.58},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.58},{"type":"color_analogous","target":"minecraft:air","label":"Couleurs analogues: Air","confidence":0.96},{"type":"color_analogous","target":"minecraft:void_air","label":"Couleurs analogues: Void Air","confidence":0.96},{"type":"color_analogous","target":"minecraft:cornflower","label":"Couleurs analogues: Cornflower","confidence":0.924},{"type":"color_analogous","target":"minecraft:potted_cornflower","label":"Couleurs analogues: Potted Cornflower","confidence":0.924},{"type":"color_analogous","target":"minecraft:soul_lantern","label":"Couleurs analogues: Soul Lantern","confidence":0.919},{"type":"color_analogous","target":"minecraft:light_blue_concrete","label":"Couleurs analogues: Light Blue Concrete","confidence":0.911},{"type":"color_analogous","target":"minecraft:light_blue_candle","label":"Couleurs analogues: Light Blue Candle","confidence":0.891},{"type":"color_analogous","target":"minecraft:light_blue_glazed_terracotta","label":"Couleurs analogues: Light Blue Glazed Terracotta","confidence":0.891},{"type":"color_complement","target":"minecraft:brown_carpet","label":"Contraste complementaire: Brown Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_wool","label":"Contraste complementaire: Brown Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_shulker_box","label":"Contraste complementaire: Brown Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_concrete","label":"Contraste complementaire: Brown Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_concrete_powder","label":"Contraste complementaire: Brown Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:resin_clump","label":"Contraste complementaire: Resin Clump","confidence":0.96},{"type":"color_complement","target":"minecraft:jungle_button","label":"Contraste complementaire: Jungle Button","confidence":0.96},{"type":"color_complement","target":"minecraft:jungle_fence","label":"Contraste complementaire: Jungle Fence","confidence":0.96},{"type":"color_triad","target":"minecraft:lime_concrete_powder","label":"Harmonie triadique: Lime Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:lime_stained_glass_pane","label":"Harmonie triadique: Lime Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:lime_stained_glass","label":"Harmonie triadique: Lime Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.96},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.898},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.842},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.785},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.785},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.782},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.779},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.745},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.632},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.632},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.631},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.618},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.584},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.57},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.57},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.562}],"category":""},{"id":"minecraft:cave_spider","name":"Cave Spider","entry_type":"mob","description":"A cave spider is a smaller spider variant that behaves similarly, but has less health and inflicts Poison with its attacks. They are only spawned by spawners in various structures, or they can spawn naturally in sulfur caves.\u200b[upcoming: Chaos Cubed]","history":[{"version":"1.8","status":"added","notes":"Added cave spiders."},{"version":"26.2 snap1","status":"added","notes":"Added the sulfur caves , which can naturally spawn cave spiders."}],"colors":{"primary":"#0e2320","dominant_hex":"#142424","average_hex":"#0e2320","hue_group":"cyan","lightness":0.0961,"saturation":0.4286,"palette":["#142424","#0d1b1b","#051414","#143c34","#042c34","#504840"],"color_groups":[{"hex":"#142424","weight":0.285,"lightness":0.1098,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#0d1b1b","weight":0.279,"lightness":0.0784,"saturation":0.35,"hue_group":"cyan"},{"hex":"#051414","weight":0.2061,"lightness":0.049,"saturation":0.6,"hue_group":"cyan"},{"hex":"#143c34","weight":0.1027,"lightness":0.1569,"saturation":0.5,"hue_group":"cyan"},{"hex":"#042c34","weight":0.0915,"lightness":0.1098,"saturation":0.8571,"hue_group":"cyan"},{"hex":"#504840","weight":0.0357,"lightness":0.2824,"saturation":0.1111,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/spider/cave_spider.png","family":"cave_spider","relations":[{"type":"visual_neighbors","target":"minecraft:warden_bioluminescent_layer","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_heart","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_1","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:cave_spider_spawn_egg","name":"Cave Spider Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#122623","dominant_hex":"#0e3634","average_hex":"#122623","hue_group":"cyan","lightness":0.1098,"saturation":0.3571,"palette":["#0e3634","#040404","#142424","#041414","#54594c","#0c1c1c"],"color_groups":[{"hex":"#0e3634","weight":0.2662,"lightness":0.1333,"saturation":0.5882,"hue_group":"cyan"},{"hex":"#040404","weight":0.2208,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#142424","weight":0.1818,"lightness":0.1098,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#041414","weight":0.1299,"lightness":0.0471,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#54594c","weight":0.1299,"lightness":0.3235,"saturation":0.0788,"hue_group":"neutral"},{"hex":"#0c1c1c","weight":0.0714,"lightness":0.0784,"saturation":0.4,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cave_spider_spawn_egg.png","family":"cave_spider_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:warden_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:disc_fragment_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silence_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:recovery_compass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_pearl","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_helmet","label":"Shared hue group: cyan","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:cave_vines","name":"Cave Vines","entry_type":"block","description":"Glow berries are a food item obtained from cave vines and can be used to plant them. Cave vines are a climbable plant that hangs off ceilings and grows glow berries. Cave vines with glow berries produce light.","history":[{"version":"1.17 21w05a","status":"added","notes":"Added glow berries."},{"version":"wiki-history","status":"added","notes":"Added cave vines."},{"version":"1 ]","status":"added","notes":"Added the texture for root vines in the game files, an early design for cave vines. [ 1 ]"}],"colors":{"primary":"#5a6d29","dominant_hex":"#74942c","average_hex":"#5a6d29","hue_group":"yellow","lightness":0.2941,"saturation":0.4533,"palette":["#74942c","#4c6424","#6c8434","#5e4416","#445429","#547434"],"color_groups":[{"hex":"#74942c","weight":0.2378,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"},{"hex":"#4c6424","weight":0.1958,"lightness":0.2667,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#6c8434","weight":0.1538,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#5e4416","weight":0.1469,"lightness":0.2275,"saturation":0.6207,"hue_group":"yellow"},{"hex":"#445429","weight":0.1329,"lightness":0.2451,"saturation":0.344,"hue_group":"yellow"},{"hex":"#547434","weight":0.1329,"lightness":0.3294,"saturation":0.381,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cave_vines.png","family":"cave_vines","relations":[{"type":"visual_neighbors","target":"minecraft:dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rose_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cave_vines_plant","label":"Palette proche: Cave Vines Plant","confidence":0.94},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.921},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.921},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.919},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.916},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.909},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.909},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.905},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.896},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.881},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.877},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.872},{"type":"color_bridge","target":"minecraft:podzol","label":"Pont de nuance par palette: Podzol","confidence":0.739},{"type":"color_bridge","target":"minecraft:dead_bush","label":"Pont de nuance par palette: Dead Bush","confidence":0.718},{"type":"color_bridge","target":"minecraft:potted_dead_bush","label":"Pont de nuance par palette: Potted Dead Bush","confidence":0.718},{"type":"color_bridge","target":"minecraft:carrots","label":"Pont de nuance par palette: Carrots","confidence":0.716},{"type":"color_bridge","target":"minecraft:dark_oak_door","label":"Pont de nuance par palette: Dark Oak Door","confidence":0.715},{"type":"color_bridge","target":"minecraft:dark_oak_trapdoor","label":"Pont de nuance par palette: Dark Oak Trapdoor","confidence":0.709},{"type":"color_bridge","target":"minecraft:spruce_shelf","label":"Pont de nuance par palette: Spruce Shelf","confidence":0.7},{"type":"color_bridge","target":"minecraft:cartography_table","label":"Pont de nuance par palette: Cartography Table","confidence":0.693},{"type":"color_bridge","target":"minecraft:dark_oak_button","label":"Pont de nuance par palette: Dark Oak Button","confidence":0.693},{"type":"color_bridge","target":"minecraft:dark_oak_fence","label":"Pont de nuance par palette: Dark Oak Fence","confidence":0.693},{"type":"color_analogous","target":"minecraft:green_concrete_powder","label":"Couleurs analogues: Green Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_azalea_bush","label":"Couleurs analogues: Potted Azalea Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:azalea","label":"Couleurs analogues: Azalea","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_carpet","label":"Couleurs analogues: Green Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_wool","label":"Couleurs analogues: Green Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:melon","label":"Couleurs analogues: Melon","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle","label":"Couleurs analogues: Green Candle","confidence":0.951},{"type":"color_analogous","target":"minecraft:green_shulker_box","label":"Couleurs analogues: Green Shulker Box","confidence":0.941},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.96},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.96},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.96},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.96},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.846},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.781},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.762},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.956},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.956},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.949},{"type":"color_triad","target":"minecraft:light_blue_carpet","label":"Harmonie triadique: Light Blue Carpet","confidence":0.947},{"type":"color_triad","target":"minecraft:light_blue_wool","label":"Harmonie triadique: Light Blue Wool","confidence":0.947},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.876},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.873},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.856},{"type":"color_square","target":"minecraft:cracked_nether_bricks","label":"Harmonie carree: Cracked Nether Bricks","confidence":0.939},{"type":"color_square","target":"minecraft:prismarine_brick_slab","label":"Harmonie carree: Prismarine Brick Slab","confidence":0.916},{"type":"color_square","target":"minecraft:prismarine_brick_stairs","label":"Harmonie carree: Prismarine Brick Stairs","confidence":0.916},{"type":"color_square","target":"minecraft:prismarine_bricks","label":"Harmonie carree: Prismarine Bricks","confidence":0.916},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.906},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.896},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.893},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.893},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.645},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.611},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.589},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.568},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.568},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.555},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.554},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.552}],"category":"natural"},{"id":"minecraft:cave_vines_plant","name":"Cave Vines Plant","entry_type":"block","description":"Glow berries are a food item obtained from cave vines and can be used to plant them. Cave vines are a climbable plant that hangs off ceilings and grows glow berries. Cave vines with glow berries produce light.","history":[{"version":"1.17 21w05a","status":"added","notes":"Added glow berries."},{"version":"wiki-history","status":"added","notes":"Added cave vines."},{"version":"1 ]","status":"added","notes":"Added the texture for root vines in the game files, an early design for cave vines. [ 1 ]"}],"colors":{"primary":"#586626","dominant_hex":"#4a6124","average_hex":"#586626","hue_group":"yellow","lightness":0.2745,"saturation":0.4571,"palette":["#4a6124","#547434","#664b17","#74942c","#6c8434","#4c3414"],"color_groups":[{"hex":"#4a6124","weight":0.2778,"lightness":0.2608,"saturation":0.4586,"hue_group":"yellow"},{"hex":"#547434","weight":0.2222,"lightness":0.3294,"saturation":0.381,"hue_group":"green"},{"hex":"#664b17","weight":0.1875,"lightness":0.2451,"saturation":0.632,"hue_group":"yellow"},{"hex":"#74942c","weight":0.1458,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"},{"hex":"#6c8434","weight":0.0903,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.0764,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cave_vines_plant.png","family":"cave_vines_plant","relations":[{"type":"visual_neighbors","target":"minecraft:cave_vines","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rose_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sea_pickle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.886},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.872},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.872},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.87},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.87},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.87},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.869},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.856},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.855},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.85},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.848},{"type":"color_bridge","target":"minecraft:podzol","label":"Pont de nuance par palette: Podzol","confidence":0.767},{"type":"color_bridge","target":"minecraft:dark_oak_door","label":"Pont de nuance par palette: Dark Oak Door","confidence":0.766},{"type":"color_bridge","target":"minecraft:dark_oak_trapdoor","label":"Pont de nuance par palette: Dark Oak Trapdoor","confidence":0.76},{"type":"color_bridge","target":"minecraft:dark_oak_button","label":"Pont de nuance par palette: Dark Oak Button","confidence":0.748},{"type":"color_bridge","target":"minecraft:dark_oak_fence","label":"Pont de nuance par palette: Dark Oak Fence","confidence":0.748},{"type":"color_bridge","target":"minecraft:dark_oak_fence_gate","label":"Pont de nuance par palette: Dark Oak Fence Gate","confidence":0.748},{"type":"color_bridge","target":"minecraft:dark_oak_planks","label":"Pont de nuance par palette: Dark Oak Planks","confidence":0.748},{"type":"color_bridge","target":"minecraft:dark_oak_pressure_plate","label":"Pont de nuance par palette: Dark Oak Pressure Plate","confidence":0.748},{"type":"color_bridge","target":"minecraft:dark_oak_sign","label":"Pont de nuance par palette: Dark Oak Sign","confidence":0.748},{"type":"color_bridge","target":"minecraft:dark_oak_slab","label":"Pont de nuance par palette: Dark Oak Slab","confidence":0.748},{"type":"color_analogous","target":"minecraft:lime_terracotta","label":"Couleurs analogues: Lime Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:flowering_azalea_leaves","label":"Couleurs analogues: Flowering Azalea Leaves","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_block","label":"Couleurs analogues: Bamboo Block","confidence":0.948},{"type":"color_analogous","target":"minecraft:green_terracotta","label":"Couleurs analogues: Green Terracotta","confidence":0.93},{"type":"color_analogous","target":"minecraft:dandelion","label":"Couleurs analogues: Dandelion","confidence":0.927},{"type":"color_analogous","target":"minecraft:potted_dandelion","label":"Couleurs analogues: Potted Dandelion","confidence":0.927},{"type":"color_analogous","target":"minecraft:potted_wither_rose","label":"Couleurs analogues: Potted Wither Rose","confidence":0.923},{"type":"color_analogous","target":"minecraft:wither_rose","label":"Couleurs analogues: Wither Rose","confidence":0.923},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.867},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.859},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.859},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.859},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.859},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.725},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.66},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.641},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:sculk_vein","label":"Harmonie triadique: Sculk Vein","confidence":0.933},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.902},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.901},{"type":"color_triad","target":"minecraft:light_blue_carpet","label":"Harmonie triadique: Light Blue Carpet","confidence":0.878},{"type":"color_triad","target":"minecraft:light_blue_wool","label":"Harmonie triadique: Light Blue Wool","confidence":0.878},{"type":"color_triad","target":"minecraft:glass_pane","label":"Harmonie triadique: Glass Pane","confidence":0.833},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.831},{"type":"color_square","target":"minecraft:potted_crimson_roots","label":"Harmonie carree: Potted Crimson Roots","confidence":0.956},{"type":"color_square","target":"minecraft:crimson_roots","label":"Harmonie carree: Crimson Roots","confidence":0.949},{"type":"color_square","target":"minecraft:pink_carpet","label":"Harmonie carree: Pink Carpet","confidence":0.881},{"type":"color_square","target":"minecraft:pink_wool","label":"Harmonie carree: Pink Wool","confidence":0.881},{"type":"color_square","target":"minecraft:purple_terracotta","label":"Harmonie carree: Purple Terracotta","confidence":0.854},{"type":"color_square","target":"minecraft:pink_shulker_box","label":"Harmonie carree: Pink Shulker Box","confidence":0.852},{"type":"color_square","target":"minecraft:pink_stained_glass","label":"Harmonie carree: Pink Stained Glass","confidence":0.848},{"type":"color_square","target":"minecraft:oxidized_copper_chain","label":"Harmonie carree: Oxidized Copper Chain","confidence":0.843},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.664},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.63},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.608},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.585},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.585},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.574},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.574},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.574}],"category":"natural"},{"id":"minecraft:chain_command_block","name":"Chain Command Block","entry_type":"block","description":"A command block is an indestructible block that can execute commands. Because it cannot be obtained, destroyed or used in Survival mode without cheats, it is primarily used in multiplayer servers, Creative worlds, and custom maps. There are 3 types of these blocks. An impulse command block is the default block type; it executes only once when activated. A chain command block executes every time when triggered. A repeating command block executes every game tick as long as it is activated.","history":[{"version":"1.4.2 12w32a","status":"added","notes":"Added command blocks."},{"version":"12w38a","status":"added","notes":"Added the game rule commandBlockOutput ."},{"version":"14w27a","status":"added","notes":"Added CommandStats NBT tag to command blocks."}],"colors":{"primary":"#84a597","dominant_hex":"#76ae93","average_hex":"#84a597","hue_group":"cyan","lightness":0.5824,"saturation":0.1549,"palette":["#76ae93","#556d62","#a4c4b4","#b3b2b9","#b6d1c4","#8cc4a4"],"color_groups":[{"hex":"#76ae93","weight":0.2744,"lightness":0.5725,"saturation":0.2569,"hue_group":"cyan"},{"hex":"#556d62","weight":0.2588,"lightness":0.3804,"saturation":0.1237,"hue_group":"cyan"},{"hex":"#a4c4b4","weight":0.1562,"lightness":0.7059,"saturation":0.2133,"hue_group":"cyan"},{"hex":"#b3b2b9","weight":0.1348,"lightness":0.7118,"saturation":0.0476,"hue_group":"neutral"},{"hex":"#b6d1c4","weight":0.1016,"lightness":0.7667,"saturation":0.2269,"hue_group":"cyan"},{"hex":"#8cc4a4","weight":0.0742,"lightness":0.6588,"saturation":0.3218,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chain_command_block_front.png","family":"chain_command_block","relations":[{"type":"visual_neighbors","target":"minecraft:light_gray_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_wall","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sea_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_bricks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_diamond_ore","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Palette proche: Waxed Weathered Copper Bulb","confidence":0.801},{"type":"color_neighbors","target":"minecraft:weathered_copper_bulb","label":"Palette proche: Weathered Copper Bulb","confidence":0.801},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.794},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.794},{"type":"color_neighbors","target":"minecraft:sea_lantern","label":"Palette proche: Sea Lantern","confidence":0.784},{"type":"color_neighbors","target":"minecraft:glow_lichen","label":"Palette proche: Glow Lichen","confidence":0.778},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.777},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.777},{"type":"color_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Palette proche: Waxed Weathered Lightning Rod","confidence":0.771},{"type":"color_neighbors","target":"minecraft:weathered_lightning_rod","label":"Palette proche: Weathered Lightning Rod","confidence":0.771},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.755},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Palette proche: Waxed Oxidized Chiseled Copper","confidence":0.755},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par palette: Waxed Weathered Copper Bulb","confidence":0.836},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par palette: Weathered Copper Bulb","confidence":0.836},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.83},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par palette: Weathered Chiseled Copper","confidence":0.83},{"type":"color_bridge","target":"minecraft:sea_lantern","label":"Pont de nuance par palette: Sea Lantern","confidence":0.822},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par palette: Glow Lichen","confidence":0.817},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.816},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par palette: Waxed Weathered Lightning Rod","confidence":0.811},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par palette: Weathered Lightning Rod","confidence":0.811},{"type":"value_contrast","target":"minecraft:potted_spruce_sapling","label":"Contraste clair sombre: Potted Spruce Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_sapling","label":"Contraste clair sombre: Spruce Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:spawner","label":"Contraste clair sombre: Spawner","confidence":0.55},{"type":"value_contrast","target":"minecraft:dried_kelp_block","label":"Contraste clair sombre: Dried Kelp Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle","label":"Contraste clair sombre: Black Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_deepslate","label":"Contraste clair sombre: Chiseled Deepslate","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55}],"category":"technical"},{"id":"minecraft:chainmail_boots","name":"Chainmail Boots","entry_type":"item","description":"Chainmail boots are an uncommon variant of boots that cannot be crafted, and are only obtainable through other means such as trading. They are the fourth-highest tier of boots, having the same armor points as leather, golden, and copper boots but with higher durability.","history":[{"version":"0.31 20091231-2147","status":"added","notes":"Added chain boots, which were taken from one of Notch 's games, Legend of the Chambered 2 ."},{"version":"20100218","status":"added","notes":"Added models for chain boots."},{"version":"15w50a","status":"added","notes":"Added equip sounds for boots."}],"colors":{"primary":"#626262","dominant_hex":"#1c1c1c","average_hex":"#626262","hue_group":"neutral","lightness":0.3843,"saturation":0.0,"palette":["#1c1c1c","#2c2c2c","#949494","#c4c4c4","#e4e4e4","#6c6c6c"],"color_groups":[{"hex":"#1c1c1c","weight":0.2955,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.25,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1477,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.1477,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.0909,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0682,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/chainmail_boots.png","family":"chainmail_armor","relations":[{"type":"variants","target":"minecraft:chainmail_chestplate","label":"Same family: chainmail_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:chainmail_chestplate","label":"Related set: chainmail_armor","confidence":0.8},{"type":"variants","target":"minecraft:chainmail_helmet","label":"Same family: chainmail_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:chainmail_helmet","label":"Related set: chainmail_armor","confidence":0.8},{"type":"variants","target":"minecraft:chainmail_leggings","label":"Same family: chainmail_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:chainmail_leggings","label":"Related set: chainmail_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:chainmail_armor","label":"Related set: chainmail_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_star","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elytra","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:chainmail_chestplate","name":"Chainmail Chestplate","entry_type":"item","description":"A chainmail chestplate is an uncommon variant of chestplate that cannot be crafted, and is only obtainable through other means such as trading. It is the fourth-highest tier of chestplate, having the same armor points as a golden chestplate but with higher durability.","history":[{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added the model and the texture for the unused chain chestplate ."},{"version":"20091231-2147","status":"added","notes":"Added the chain chestplate. It was taken from Legend of the Chambered 2 ."},{"version":"20100218","status":"added","notes":"Added models for chain chestplates."}],"colors":{"primary":"#7c7c7c","dominant_hex":"#949494","average_hex":"#7c7c7c","hue_group":"neutral","lightness":0.4863,"saturation":0.0,"palette":["#949494","#2c2c2c","#c4c4c4","#1c1c1c","#e1e1e1","#6c6c6c"],"color_groups":[{"hex":"#949494","weight":0.2391,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.1739,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.1667,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#1c1c1c","weight":0.1594,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e1e1e1","weight":0.1377,"lightness":0.8824,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1232,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/chainmail_chestplate.png","family":"chainmail_armor","relations":[{"type":"variants","target":"minecraft:chainmail_boots","label":"Same family: chainmail_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:chainmail_boots","label":"Related set: chainmail_armor","confidence":0.8},{"type":"variants","target":"minecraft:chainmail_helmet","label":"Same family: chainmail_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:chainmail_helmet","label":"Related set: chainmail_armor","confidence":0.8},{"type":"variants","target":"minecraft:chainmail_leggings","label":"Same family: chainmail_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:chainmail_leggings","label":"Related set: chainmail_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:chainmail_armor","label":"Related set: chainmail_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:leather_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nautilus_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_leggings","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:chainmail_helmet","name":"Chainmail Helmet","entry_type":"item","description":"A chainmail helmet is an uncommon variant of helmet that cannot be crafted, and is only obtainable through other means such as trading. It is the fourth-highest tier of helmet, having the same armor points and durability as an iron helmet but with higher enchantability.","history":[{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added the model and the texture for unused chain helmets ."},{"version":"20091231-2147","status":"added","notes":"Added chain helmets."},{"version":"20100218-0011","status":"added","notes":"Added models of chain helmets."}],"colors":{"primary":"#5c5c5c","dominant_hex":"#1c1c1c","average_hex":"#5c5c5c","hue_group":"neutral","lightness":0.3608,"saturation":0.0,"palette":["#1c1c1c","#2c2c2c","#dcdcdc","#949494","#6c6c6c","#fcfcfc"],"color_groups":[{"hex":"#1c1c1c","weight":0.3462,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.2436,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.1795,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1538,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0641,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.0128,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/chainmail_helmet.png","family":"chainmail_armor","relations":[{"type":"variants","target":"minecraft:chainmail_boots","label":"Same family: chainmail_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:chainmail_boots","label":"Related set: chainmail_armor","confidence":0.8},{"type":"variants","target":"minecraft:chainmail_chestplate","label":"Same family: chainmail_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:chainmail_chestplate","label":"Related set: chainmail_armor","confidence":0.8},{"type":"variants","target":"minecraft:chainmail_leggings","label":"Same family: chainmail_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:chainmail_leggings","label":"Related set: chainmail_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:chainmail_armor","label":"Related set: chainmail_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_star","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gunpowder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:furnace_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:chainmail_leggings","name":"Chainmail Leggings","entry_type":"item","description":"Chainmail leggings are an uncommon variant of leggings that cannot be crafted, and are only obtainable through other means such as trading. They are the fourth-highest tier of leggings, having higher armor points and durability than golden and copper leggings.","history":[{"version":"0.31 20091231-2147","status":"added","notes":"Added chain leggings. They were taken directly from one of Notch 's games, Legend of the Chambered 2 ."},{"version":"20100218-0011","status":"added","notes":"Added models for chain leggings."},{"version":"1.4.6 12w50a","status":"added","notes":"Added Thorns, which can be applied to chain leggings."}],"colors":{"primary":"#686868","dominant_hex":"#1c1c1c","average_hex":"#686868","hue_group":"neutral","lightness":0.4078,"saturation":0.0,"palette":["#1c1c1c","#949494","#2c2c2c","#c4c4c4","#6c6c6c","#e3e3e3"],"color_groups":[{"hex":"#1c1c1c","weight":0.3077,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1827,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.1731,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.1635,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0865,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e3e3e3","weight":0.0865,"lightness":0.8902,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/chainmail_leggings.png","family":"chainmail_armor","relations":[{"type":"variants","target":"minecraft:chainmail_boots","label":"Same family: chainmail_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:chainmail_boots","label":"Related set: chainmail_armor","confidence":0.8},{"type":"variants","target":"minecraft:chainmail_chestplate","label":"Same family: chainmail_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:chainmail_chestplate","label":"Related set: chainmail_armor","confidence":0.8},{"type":"variants","target":"minecraft:chainmail_helmet","label":"Same family: chainmail_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:chainmail_helmet","label":"Related set: chainmail_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:chainmail_armor","label":"Related set: chainmail_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nautilus_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_helmet","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:charcoal","name":"Charcoal","entry_type":"item","description":"Charcoal is an item obtained by smelting logs or wood. It is used as fuel, or for crafting torches and campfires. Unlike coal, charcoal cannot be traded with villagers or crafted into a block of coal. Coal and charcoal also cannot stack together. It can be used as a substitute for coal, as both charcoal and coal have an equivalent duration when smelted.","history":[{"version":"1.2","status":"added","notes":"Added charcoal, with the same texture as coal."}],"colors":{"primary":"#28231b","dominant_hex":"#1c1c14","average_hex":"#28231b","hue_group":"yellow","lightness":0.1314,"saturation":0.194,"palette":["#1c1c14","#14140c","#2c241c","#514737","#241c1c","#342c24"],"color_groups":[{"hex":"#1c1c14","weight":0.259,"lightness":0.0941,"saturation":0.1667,"hue_group":"yellow"},{"hex":"#14140c","weight":0.2158,"lightness":0.0627,"saturation":0.25,"hue_group":"yellow"},{"hex":"#2c241c","weight":0.1727,"lightness":0.1412,"saturation":0.2222,"hue_group":"yellow"},{"hex":"#514737","weight":0.1727,"lightness":0.2667,"saturation":0.1912,"hue_group":"yellow"},{"hex":"#241c1c","weight":0.1295,"lightness":0.1255,"saturation":0.125,"hue_group":"red"},{"hex":"#342c24","weight":0.0504,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/charcoal.png","family":"charcoal","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:dried_kelp","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fishing_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:cherry_boat","name":"Cherry Boat","entry_type":"item","description":"Boats (including bamboo rafts) are drivable vehicle entities that can be ridden through water or at high speeds across all types of ice. Most mobs will ride nearby boats, which they cannot control or exit on their own.","history":[{"version":"v1.0.6","status":"added","notes":"Added boats."},{"version":"wiki-history","status":"added","notes":"added again."},{"version":"18w15a","status":"added","notes":"Added blue ice , which allows boats to travel even faster on it."}],"colors":{"primary":"#d19592","dominant_hex":"#aa545c","average_hex":"#d19592","hue_group":"red","lightness":0.6961,"saturation":0.4065,"palette":["#aa545c","#e9c9c1","#cc8484","#e4bab2","#dc9c94","#e4aca4"],"color_groups":[{"hex":"#aa545c","weight":0.2424,"lightness":0.498,"saturation":0.3386,"hue_group":"red"},{"hex":"#e9c9c1","weight":0.2303,"lightness":0.8353,"saturation":0.4762,"hue_group":"red"},{"hex":"#cc8484","weight":0.2,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#e4bab2","weight":0.1333,"lightness":0.7961,"saturation":0.4808,"hue_group":"red"},{"hex":"#dc9c94","weight":0.103,"lightness":0.7216,"saturation":0.507,"hue_group":"red"},{"hex":"#e4aca4","weight":0.0909,"lightness":0.7686,"saturation":0.5424,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cherry_boat.png","family":"cherry_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:porkchop","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_horse_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:cherry_button","name":"Cherry Button","entry_type":"block","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added wooden buttons. They are currently uncraftable."},{"version":"12w34b","status":"added","notes":"Added crafting recipe for wooden buttons. Recipe"},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped buttons."}],"colors":{"primary":"#e3b3ad","dominant_hex":"#e4b2aa","average_hex":"#e3b3ad","hue_group":"red","lightness":0.7843,"saturation":0.4909,"palette":["#e4b2aa","#e4c4bc","#e4bcb4","#e4ccc4","#cc8484","#dc9c94"],"color_groups":[{"hex":"#e4b2aa","weight":0.2539,"lightness":0.7804,"saturation":0.5179,"hue_group":"red"},{"hex":"#e4c4bc","weight":0.2031,"lightness":0.8157,"saturation":0.4255,"hue_group":"red"},{"hex":"#e4bcb4","weight":0.1875,"lightness":0.8,"saturation":0.4706,"hue_group":"red"},{"hex":"#e4ccc4","weight":0.1484,"lightness":0.8314,"saturation":0.3721,"hue_group":"red"},{"hex":"#cc8484","weight":0.1133,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#dc9c94","weight":0.0938,"lightness":0.7216,"saturation":0.507,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_planks.png","family":"cherry_button","relations":[{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_leaves","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:target","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_stairs","label":"Palette proche: Cherry Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_wall_sign","label":"Palette proche: Cherry Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_trapdoor","label":"Palette proche: Cherry Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.857},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.763},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.739},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_sign","label":"Couleurs analogues: Cherry Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_slab","label":"Couleurs analogues: Cherry Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_stairs","label":"Couleurs analogues: Cherry Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_wall_sign","label":"Couleurs analogues: Cherry Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.954},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.946},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.934},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.915},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.913},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.87},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.849},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.832},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.694},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.693},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.666},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.654},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.654},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.607},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.9},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.9},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.899},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.89},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.669},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.639},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.638},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.626},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.626},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.611}],"category":"building"},{"id":"minecraft:cherry_chest_boat","name":"Cherry Chest Boat","entry_type":"item","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#a37662","dominant_hex":"#e7c2ba","average_hex":"#a37662","hue_group":"red","lightness":0.5118,"saturation":0.261,"palette":["#e7c2ba","#90671f","#a65159","#cf8887","#32200c","#393424"],"color_groups":[{"hex":"#e7c2ba","weight":0.2989,"lightness":0.8176,"saturation":0.4839,"hue_group":"red"},{"hex":"#90671f","weight":0.2011,"lightness":0.3431,"saturation":0.6457,"hue_group":"yellow"},{"hex":"#a65159","weight":0.1667,"lightness":0.4843,"saturation":0.3441,"hue_group":"red"},{"hex":"#cf8887","weight":0.1264,"lightness":0.6706,"saturation":0.4286,"hue_group":"red"},{"hex":"#32200c","weight":0.1092,"lightness":0.1216,"saturation":0.6129,"hue_group":"yellow"},{"hex":"#393424","weight":0.0977,"lightness":0.1824,"saturation":0.2258,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cherry_chest_boat.png","family":"cherry_chest_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:brush","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_scute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_shell","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_bucket","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:cherry_door","name":"Cherry Door","entry_type":"block","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","history":[{"version":"20100607","status":"added","notes":"Added wooden doors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"18w49a","status":"added","notes":"Added snowy tundra villages, which generate with spruce doors."}],"colors":{"primary":"#dfaba5","dominant_hex":"#e4b2ab","average_hex":"#dfaba5","hue_group":"red","lightness":0.7608,"saturation":0.4754,"palette":["#e4b2ab","#d6958e","#e4bcb4","#e4c4bc","#cc8483","#e5d1c8"],"color_groups":[{"hex":"#e4b2ab","weight":0.2545,"lightness":0.7824,"saturation":0.5135,"hue_group":"red"},{"hex":"#d6958e","weight":0.2136,"lightness":0.698,"saturation":0.4675,"hue_group":"red"},{"hex":"#e4bcb4","weight":0.2045,"lightness":0.8,"saturation":0.4706,"hue_group":"red"},{"hex":"#e4c4bc","weight":0.1364,"lightness":0.8157,"saturation":0.4255,"hue_group":"red"},{"hex":"#cc8483","weight":0.1318,"lightness":0.6569,"saturation":0.4171,"hue_group":"red"},{"hex":"#e5d1c8","weight":0.0591,"lightness":0.8412,"saturation":0.358,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_door_top.png","family":"cherry","relations":[{"type":"variants","target":"minecraft:cherry_fence","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_fence","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_leaves","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_leaves","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_log","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_log","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_planks","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_planks","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_sapling","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_sapling","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_slab","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_slab","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_stairs","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_stairs","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_wood","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_wood","label":"Related set: cherry","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_stairs","label":"Palette proche: Cherry Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_wall_sign","label":"Palette proche: Cherry Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_trapdoor","label":"Palette proche: Cherry Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.9},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.865},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.759},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.756},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.756},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.746},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.746},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.746},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.746},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.746},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.746},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.733},{"type":"color_analogous","target":"minecraft:cherry_trapdoor","label":"Couleurs analogues: Cherry Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_sign","label":"Couleurs analogues: Cherry Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_slab","label":"Couleurs analogues: Cherry Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.959},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.951},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.937},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.929},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.9},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.886},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.884},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.866},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.851},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.711},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.709},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.685},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.671},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.671},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.596},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.948},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.92},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.908},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.904},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.9},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.647},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.618},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.616},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.614},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.605},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.605},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.599},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.589}],"category":"building"},{"id":"minecraft:cherry_fence","name":"Cherry Fence","entry_type":"block","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","history":[{"version":"20100629","status":"added","notes":"added to the game. There are three defined states: north-south, east-west and a cross. These models are currently unused."},{"version":"v1.0.17","status":"added","notes":"Added fences."},{"version":"1.8","status":"added","notes":"Added villages and strongholds , where wooden fences naturally generate."}],"colors":{"primary":"#e3b3ad","dominant_hex":"#e4b2aa","average_hex":"#e3b3ad","hue_group":"red","lightness":0.7843,"saturation":0.4909,"palette":["#e4b2aa","#e4c4bc","#e4bcb4","#e4ccc4","#cc8484","#dc9c94"],"color_groups":[{"hex":"#e4b2aa","weight":0.2539,"lightness":0.7804,"saturation":0.5179,"hue_group":"red"},{"hex":"#e4c4bc","weight":0.2031,"lightness":0.8157,"saturation":0.4255,"hue_group":"red"},{"hex":"#e4bcb4","weight":0.1875,"lightness":0.8,"saturation":0.4706,"hue_group":"red"},{"hex":"#e4ccc4","weight":0.1484,"lightness":0.8314,"saturation":0.3721,"hue_group":"red"},{"hex":"#cc8484","weight":0.1133,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#dc9c94","weight":0.0938,"lightness":0.7216,"saturation":0.507,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_planks.png","family":"cherry","relations":[{"type":"variants","target":"minecraft:cherry_door","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_door","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_leaves","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_leaves","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_log","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_log","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_planks","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_planks","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_sapling","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_sapling","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_slab","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_slab","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_stairs","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_stairs","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_wood","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_wood","label":"Related set: cherry","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_leaves","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:target","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_stairs","label":"Palette proche: Cherry Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_wall_sign","label":"Palette proche: Cherry Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_trapdoor","label":"Palette proche: Cherry Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.857},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.763},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.739},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_sign","label":"Couleurs analogues: Cherry Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_slab","label":"Couleurs analogues: Cherry Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_stairs","label":"Couleurs analogues: Cherry Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_wall_sign","label":"Couleurs analogues: Cherry Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.954},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.946},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.934},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.915},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.913},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.87},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.849},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.832},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.694},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.693},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.666},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.654},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.654},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.607},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.9},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.9},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.899},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.89},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.669},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.639},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.638},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.626},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.626},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.611}],"category":"building"},{"id":"minecraft:cherry_fence_gate","name":"Cherry Fence Gate","entry_type":"block","description":"A fence gate is a block that shares the functions of both the door and the fence.","history":[{"version":"Pre-release","status":"added","notes":"Added fence gates."},{"version":"14w32b","status":"added","notes":"Added spruce, birch, jungle, acacia, and dark oak fence gates."},{"version":"18w49a","status":"added","notes":"added snowy tundra villages."}],"colors":{"primary":"#e3b3ad","dominant_hex":"#e4b2aa","average_hex":"#e3b3ad","hue_group":"red","lightness":0.7843,"saturation":0.4909,"palette":["#e4b2aa","#e4c4bc","#e4bcb4","#e4ccc4","#cc8484","#dc9c94"],"color_groups":[{"hex":"#e4b2aa","weight":0.2539,"lightness":0.7804,"saturation":0.5179,"hue_group":"red"},{"hex":"#e4c4bc","weight":0.2031,"lightness":0.8157,"saturation":0.4255,"hue_group":"red"},{"hex":"#e4bcb4","weight":0.1875,"lightness":0.8,"saturation":0.4706,"hue_group":"red"},{"hex":"#e4ccc4","weight":0.1484,"lightness":0.8314,"saturation":0.3721,"hue_group":"red"},{"hex":"#cc8484","weight":0.1133,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#dc9c94","weight":0.0938,"lightness":0.7216,"saturation":0.507,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_planks.png","family":"cherry_fence_gate","relations":[{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_leaves","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:target","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_stairs","label":"Palette proche: Cherry Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_wall_sign","label":"Palette proche: Cherry Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_trapdoor","label":"Palette proche: Cherry Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.857},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.763},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.739},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_sign","label":"Couleurs analogues: Cherry Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_slab","label":"Couleurs analogues: Cherry Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_stairs","label":"Couleurs analogues: Cherry Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_wall_sign","label":"Couleurs analogues: Cherry Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.954},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.946},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.934},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.915},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.913},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.87},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.849},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.832},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.694},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.693},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.666},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.654},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.654},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.607},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.9},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.9},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.899},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.89},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.669},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.639},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.638},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.626},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.626},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.611}],"category":"building"},{"id":"minecraft:cherry_hanging_sign","name":"Cherry Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#d79195","dominant_hex":"#dc949c","average_hex":"#d79195","hue_group":"red","lightness":0.7059,"saturation":0.4667,"palette":["#dc949c","#dc9c9d","#d48c94","#cc8484","#d48c8c","#cc7c7c"],"color_groups":[{"hex":"#dc949c","weight":0.2969,"lightness":0.7216,"saturation":0.507,"hue_group":"red"},{"hex":"#dc9c9d","weight":0.293,"lightness":0.7373,"saturation":0.4776,"hue_group":"red"},{"hex":"#d48c94","weight":0.1875,"lightness":0.6902,"saturation":0.4557,"hue_group":"red"},{"hex":"#cc8484","weight":0.1055,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#d48c8c","weight":0.0938,"lightness":0.6902,"saturation":0.4557,"hue_group":"red"},{"hex":"#cc7c7c","weight":0.0234,"lightness":0.6431,"saturation":0.4396,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_cherry_log.png","family":"cherry_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:cherry_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cactus_flower","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_wall_hanging_sign","label":"Palette proche: Cherry Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_cherry_log","label":"Palette proche: Stripped Cherry Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_cherry_wood","label":"Palette proche: Stripped Cherry Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.865},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.857},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.752},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.752},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.742},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.742},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.742},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.742},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.742},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.742},{"type":"color_bridge","target":"minecraft:dried_ghast","label":"Pont de nuance par palette: Dried Ghast","confidence":0.715},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.707},{"type":"color_analogous","target":"minecraft:cherry_wall_hanging_sign","label":"Couleurs analogues: Cherry Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_cherry_log","label":"Couleurs analogues: Stripped Cherry Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_cherry_wood","label":"Couleurs analogues: Stripped Cherry Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire_coral","label":"Couleurs analogues: Fire Coral","confidence":0.922},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.902},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.902},{"type":"color_analogous","target":"minecraft:cherry_shelf","label":"Couleurs analogues: Cherry Shelf","confidence":0.895},{"type":"color_analogous","target":"minecraft:pink_terracotta","label":"Couleurs analogues: Pink Terracotta","confidence":0.893},{"type":"color_complement","target":"minecraft:beacon","label":"Contraste complementaire: Beacon","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_door","label":"Contraste complementaire: Warped Door","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_shelf","label":"Contraste complementaire: Warped Shelf","confidence":0.959},{"type":"color_complement","target":"minecraft:diamond_block","label":"Contraste complementaire: Diamond Block","confidence":0.952},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.948},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.948},{"type":"color_complement","target":"minecraft:warped_hanging_sign","label":"Contraste complementaire: Warped Hanging Sign","confidence":0.948},{"type":"color_complement","target":"minecraft:warped_wall_hanging_sign","label":"Contraste complementaire: Warped Wall Hanging Sign","confidence":0.948},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.955},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.955},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.935},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.912},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.911},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.87},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.819},{"type":"color_square","target":"minecraft:large_amethyst_bud","label":"Harmonie carree: Large Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:lime_concrete_powder","label":"Harmonie carree: Lime Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:oak_sapling","label":"Harmonie carree: Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_oak_sapling","label":"Harmonie carree: Potted Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:orange_tulip","label":"Harmonie carree: Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_orange_tulip","label":"Harmonie carree: Potted Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:azure_bluet","label":"Harmonie carree: Azure Bluet","confidence":0.951},{"type":"color_square","target":"minecraft:potted_azure_bluet","label":"Harmonie carree: Potted Azure Bluet","confidence":0.951},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.596},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.566},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.562},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.56},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.554},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.554},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.551},{"type":"value_contrast","target":"minecraft:mangrove_hanging_sign","label":"Contraste clair sombre: Mangrove Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:cherry_leaves","name":"Cherry Leaves","entry_type":"block","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","history":[{"version":"0.0.14a","status":"added","notes":"Added leaves."},{"version":"1.2","status":"added","notes":"Added spruce and birch leaves, which are colored #619961 and #80a755 respectively, and do not vary across biomes."},{"version":"1.7","status":"added","notes":"Added shears , which collect leaves. Before, leaves could be obtained only via inventory editing."}],"colors":{"primary":"#e5adc2","dominant_hex":"#ee9cca","average_hex":"#e5adc2","hue_group":"red","lightness":0.7882,"saturation":0.5185,"palette":["#ee9cca","#fccce4","#f4dcec","#7e9329","#e677b1","#f4bcdc"],"color_groups":[{"hex":"#ee9cca","weight":0.2917,"lightness":0.7725,"saturation":0.7069,"hue_group":"purple"},{"hex":"#fccce4","weight":0.2222,"lightness":0.8941,"saturation":0.8889,"hue_group":"red"},{"hex":"#f4dcec","weight":0.1435,"lightness":0.9098,"saturation":0.5217,"hue_group":"purple"},{"hex":"#7e9329","weight":0.1157,"lightness":0.3686,"saturation":0.5638,"hue_group":"yellow"},{"hex":"#e677b1","weight":0.1157,"lightness":0.6843,"saturation":0.6894,"hue_group":"purple"},{"hex":"#f4bcdc","weight":0.1111,"lightness":0.8471,"saturation":0.7179,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_leaves.png","family":"cherry","relations":[{"type":"variants","target":"minecraft:cherry_door","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_door","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_fence","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_fence","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_log","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_log","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_planks","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_planks","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_sapling","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_sapling","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_slab","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_slab","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_stairs","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_stairs","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_wood","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_wood","label":"Related set: cherry","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:target","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pink_petals","label":"Palette proche: Pink Petals","confidence":0.878},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.74},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.722},{"type":"color_neighbors","target":"minecraft:pink_carpet","label":"Palette proche: Pink Carpet","confidence":0.72},{"type":"color_neighbors","target":"minecraft:pink_wool","label":"Palette proche: Pink Wool","confidence":0.72},{"type":"color_neighbors","target":"minecraft:pink_concrete_powder","label":"Palette proche: Pink Concrete Powder","confidence":0.719},{"type":"color_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Palette proche: Pink Stained Glass Pane","confidence":0.702},{"type":"color_neighbors","target":"minecraft:brain_coral","label":"Palette proche: Brain Coral","confidence":0.699},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.684},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.672},{"type":"color_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Palette proche: Brain Coral Wall Fan","confidence":0.672},{"type":"color_neighbors","target":"minecraft:spore_blossom","label":"Palette proche: Spore Blossom","confidence":0.656},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.713},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.713},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_door","label":"Pont de nuance par sous-ton: Pale Oak Door","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.58},{"type":"color_analogous","target":"minecraft:pink_concrete_powder","label":"Couleurs analogues: Pink Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_candle","label":"Couleurs analogues: Pink Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_concrete","label":"Couleurs analogues: Pink Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:pearlescent_froglight","label":"Couleurs analogues: Pearlescent Froglight","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_glazed_terracotta","label":"Couleurs analogues: Pink Glazed Terracotta","confidence":0.945},{"type":"color_analogous","target":"minecraft:pink_stained_glass_pane","label":"Couleurs analogues: Pink Stained Glass Pane","confidence":0.93},{"type":"color_analogous","target":"minecraft:pink_stained_glass","label":"Couleurs analogues: Pink Stained Glass","confidence":0.928},{"type":"color_analogous","target":"minecraft:pink_shulker_box","label":"Couleurs analogues: Pink Shulker Box","confidence":0.925},{"type":"color_complement","target":"minecraft:oxidized_copper","label":"Contraste complementaire: Oxidized Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_chest","label":"Contraste complementaire: Oxidized Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_golem_statue","label":"Contraste complementaire: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper","label":"Contraste complementaire: Waxed Oxidized Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chest","label":"Contraste complementaire: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Contraste complementaire: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.953},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.939},{"type":"color_triad","target":"minecraft:tall_seagrass","label":"Harmonie triadique: Tall Seagrass","confidence":0.939},{"type":"color_triad","target":"minecraft:frosted_ice","label":"Harmonie triadique: Frosted Ice","confidence":0.936},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.927},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.927},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.915},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.928},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.928},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.928},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.928},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.917},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.907},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.87},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.67},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.64},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.634},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.634},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.629},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.627},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.618}],"category":"natural"},{"id":"minecraft:cherry_log","name":"Cherry Log","entry_type":"block","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","history":[{"version":"0.0.14a","status":"added","notes":"Added wood."},{"version":"1.2","status":"added","notes":"Added spruce and birch wood."},{"version":"wiki-history","status":"added","notes":"Added \"Getting Wood\" achievement for picking up a wood item ."}],"colors":{"primary":"#37212c","dominant_hex":"#341c2c","average_hex":"#37212c","hue_group":"red","lightness":0.1725,"saturation":0.25,"palette":["#341c2c","#3c242c","#241424","#442c3c","#543444"],"color_groups":[{"hex":"#341c2c","weight":0.3242,"lightness":0.1569,"saturation":0.3,"hue_group":"purple"},{"hex":"#3c242c","weight":0.25,"lightness":0.1882,"saturation":0.25,"hue_group":"red"},{"hex":"#241424","weight":0.1953,"lightness":0.1098,"saturation":0.2857,"hue_group":"purple"},{"hex":"#442c3c","weight":0.1836,"lightness":0.2196,"saturation":0.2143,"hue_group":"purple"},{"hex":"#543444","weight":0.0469,"lightness":0.2667,"saturation":0.2353,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_log.png","family":"cherry","relations":[{"type":"variants","target":"minecraft:cherry_door","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_door","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_fence","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_fence","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_leaves","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_leaves","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_planks","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_planks","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_sapling","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_sapling","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_slab","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_slab","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_stairs","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_stairs","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_wood","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_wood","label":"Related set: cherry","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smithing_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gilded_blackstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_soil","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_wood","label":"Palette proche: Cherry Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_stairs","label":"Palette proche: Crimson Stairs","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_wall_sign","label":"Palette proche: Crimson Wall Sign","confidence":0.809},{"type":"color_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Palette proche: Cracked Polished Blackstone Bricks","confidence":0.778},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.776},{"type":"color_bridge","target":"minecraft:cracked_polished_blackstone_bricks","label":"Pont de nuance par sous-ton: Cracked Polished Blackstone Bricks","confidence":0.817},{"type":"color_bridge","target":"minecraft:blackstone","label":"Pont de nuance par sous-ton: Blackstone","confidence":0.813},{"type":"color_bridge","target":"minecraft:blackstone_wall","label":"Pont de nuance par sous-ton: Blackstone Wall","confidence":0.813},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par sous-ton: Polished Blackstone Brick Slab","confidence":0.8},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par sous-ton: Polished Blackstone Brick Stairs","confidence":0.8},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_wall","label":"Pont de nuance par sous-ton: Polished Blackstone Brick Wall","confidence":0.8},{"type":"color_bridge","target":"minecraft:polished_blackstone_bricks","label":"Pont de nuance par sous-ton: Polished Blackstone Bricks","confidence":0.8},{"type":"color_bridge","target":"minecraft:blackstone_slab","label":"Pont de nuance par sous-ton: Blackstone Slab","confidence":0.797},{"type":"color_bridge","target":"minecraft:blackstone_stairs","label":"Pont de nuance par sous-ton: Blackstone Stairs","confidence":0.797},{"type":"color_bridge","target":"minecraft:gilded_blackstone","label":"Pont de nuance par sous-ton: Gilded Blackstone","confidence":0.78},{"type":"color_analogous","target":"minecraft:cherry_wood","label":"Couleurs analogues: Cherry Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.873},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.873},{"type":"color_analogous","target":"minecraft:crimson_fence_gate","label":"Couleurs analogues: Crimson Fence Gate","confidence":0.873},{"type":"color_analogous","target":"minecraft:crimson_planks","label":"Couleurs analogues: Crimson Planks","confidence":0.873},{"type":"color_analogous","target":"minecraft:crimson_pressure_plate","label":"Couleurs analogues: Crimson Pressure Plate","confidence":0.873},{"type":"color_analogous","target":"minecraft:crimson_sign","label":"Couleurs analogues: Crimson Sign","confidence":0.873},{"type":"color_analogous","target":"minecraft:crimson_slab","label":"Couleurs analogues: Crimson Slab","confidence":0.873},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.915},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.915},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.869},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.797},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.797},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.797},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.763},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.763},{"type":"color_triad","target":"minecraft:dark_oak_sapling","label":"Harmonie triadique: Dark Oak Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie triadique: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp_plant","label":"Harmonie triadique: Kelp Plant","confidence":0.96},{"type":"color_triad","target":"minecraft:cactus","label":"Harmonie triadique: Cactus","confidence":0.953},{"type":"color_triad","target":"minecraft:lime_candle","label":"Harmonie triadique: Lime Candle","confidence":0.951},{"type":"color_triad","target":"minecraft:sugar_cane","label":"Harmonie triadique: Sugar Cane","confidence":0.936},{"type":"color_triad","target":"minecraft:jungle_sapling","label":"Harmonie triadique: Jungle Sapling","confidence":0.932},{"type":"color_triad","target":"minecraft:potted_jungle_sapling","label":"Harmonie triadique: Potted Jungle Sapling","confidence":0.932},{"type":"color_square","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie carree: Yellow Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:yellow_stained_glass","label":"Harmonie carree: Yellow Stained Glass","confidence":0.958},{"type":"color_square","target":"minecraft:acacia_sapling","label":"Harmonie carree: Acacia Sapling","confidence":0.941},{"type":"color_square","target":"minecraft:potted_acacia_sapling","label":"Harmonie carree: Potted Acacia Sapling","confidence":0.941},{"type":"color_square","target":"minecraft:blue_concrete","label":"Harmonie carree: Blue Concrete","confidence":0.927},{"type":"color_square","target":"minecraft:blue_shulker_box","label":"Harmonie carree: Blue Shulker Box","confidence":0.926},{"type":"color_square","target":"minecraft:cocoa","label":"Harmonie carree: Cocoa","confidence":0.922},{"type":"color_square","target":"minecraft:turtle_egg","label":"Harmonie carree: Turtle Egg","confidence":0.919},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.773},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.74},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.719},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.719},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.719},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.719},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.717},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.69}],"category":"natural"},{"id":"minecraft:cherry_planks","name":"Cherry Planks","entry_type":"block","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","history":[{"version":"rd-20090515","status":"added","notes":"Added wooden planks."},{"version":"1.2.4 release","status":"added","notes":"Added spruce, birch and jungle wood planks. They are crafted from their corresponding wood . The color of wood planks available to this point is now obtainable only from oak wood."},{"version":"18w07a","status":"added","notes":"Added stripped logs, a variant of logs , which can be used to craft wood planks."}],"colors":{"primary":"#e3b3ad","dominant_hex":"#e4b2aa","average_hex":"#e3b3ad","hue_group":"red","lightness":0.7843,"saturation":0.4909,"palette":["#e4b2aa","#e4c4bc","#e4bcb4","#e4ccc4","#cc8484","#dc9c94"],"color_groups":[{"hex":"#e4b2aa","weight":0.2539,"lightness":0.7804,"saturation":0.5179,"hue_group":"red"},{"hex":"#e4c4bc","weight":0.2031,"lightness":0.8157,"saturation":0.4255,"hue_group":"red"},{"hex":"#e4bcb4","weight":0.1875,"lightness":0.8,"saturation":0.4706,"hue_group":"red"},{"hex":"#e4ccc4","weight":0.1484,"lightness":0.8314,"saturation":0.3721,"hue_group":"red"},{"hex":"#cc8484","weight":0.1133,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#dc9c94","weight":0.0938,"lightness":0.7216,"saturation":0.507,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_planks.png","family":"cherry","relations":[{"type":"variants","target":"minecraft:cherry_door","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_door","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_fence","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_fence","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_leaves","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_leaves","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_log","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_log","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_sapling","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_sapling","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_slab","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_slab","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_stairs","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_stairs","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_wood","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_wood","label":"Related set: cherry","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_leaves","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:target","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_stairs","label":"Palette proche: Cherry Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_wall_sign","label":"Palette proche: Cherry Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_trapdoor","label":"Palette proche: Cherry Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.857},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.763},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.739},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_sign","label":"Couleurs analogues: Cherry Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_slab","label":"Couleurs analogues: Cherry Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_stairs","label":"Couleurs analogues: Cherry Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_wall_sign","label":"Couleurs analogues: Cherry Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.954},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.946},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.934},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.915},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.913},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.87},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.849},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.832},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.694},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.693},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.666},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.654},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.654},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.607},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.9},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.9},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.899},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.89},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.669},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.639},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.638},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.626},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.626},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.611}],"category":"building"},{"id":"minecraft:cherry_pressure_plate","name":"Cherry Pressure Plate","entry_type":"block","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","history":[{"version":"v1.0.1","status":"added","notes":"Added wooden pressure plates."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped pressure plates."},{"version":"1.19 22w11a","status":"added","notes":"Added mangrove pressure plates."}],"colors":{"primary":"#e3b3ad","dominant_hex":"#e4b2aa","average_hex":"#e3b3ad","hue_group":"red","lightness":0.7843,"saturation":0.4909,"palette":["#e4b2aa","#e4c4bc","#e4bcb4","#e4ccc4","#cc8484","#dc9c94"],"color_groups":[{"hex":"#e4b2aa","weight":0.2539,"lightness":0.7804,"saturation":0.5179,"hue_group":"red"},{"hex":"#e4c4bc","weight":0.2031,"lightness":0.8157,"saturation":0.4255,"hue_group":"red"},{"hex":"#e4bcb4","weight":0.1875,"lightness":0.8,"saturation":0.4706,"hue_group":"red"},{"hex":"#e4ccc4","weight":0.1484,"lightness":0.8314,"saturation":0.3721,"hue_group":"red"},{"hex":"#cc8484","weight":0.1133,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#dc9c94","weight":0.0938,"lightness":0.7216,"saturation":0.507,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_planks.png","family":"cherry_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_leaves","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:target","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_stairs","label":"Palette proche: Cherry Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_wall_sign","label":"Palette proche: Cherry Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_trapdoor","label":"Palette proche: Cherry Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.857},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.763},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.739},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_sign","label":"Couleurs analogues: Cherry Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_slab","label":"Couleurs analogues: Cherry Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_stairs","label":"Couleurs analogues: Cherry Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_wall_sign","label":"Couleurs analogues: Cherry Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.954},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.946},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.934},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.915},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.913},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.87},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.849},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.832},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.694},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.693},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.666},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.654},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.654},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.607},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.9},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.9},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.899},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.89},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.669},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.639},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.638},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.626},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.626},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.611}],"category":"building"},{"id":"minecraft:cherry_sapling","name":"Cherry Sapling","entry_type":"block","description":"A sapling is a non-solid block that can be grown into a tree.","history":[{"version":"rd-161348","status":"added","notes":"Added saplings as the fifth placeable block in the game."},{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added tree growth."},{"version":"1.5","status":"added","notes":"Added spruce and birch saplings. Before, trees dropped only oak saplings, regardless of the tree."}],"colors":{"primary":"#a4768f","dominant_hex":"#3e2433","average_hex":"#a4768f","hue_group":"purple","lightness":0.5529,"saturation":0.2018,"palette":["#3e2433","#f5bedd","#241424","#eca4cc","#ec92bc","#f4dcec"],"color_groups":[{"hex":"#3e2433","weight":0.2377,"lightness":0.1922,"saturation":0.2653,"hue_group":"purple"},{"hex":"#f5bedd","weight":0.2213,"lightness":0.8529,"saturation":0.7333,"hue_group":"purple"},{"hex":"#241424","weight":0.1721,"lightness":0.1098,"saturation":0.2857,"hue_group":"purple"},{"hex":"#eca4cc","weight":0.1393,"lightness":0.7843,"saturation":0.6545,"hue_group":"purple"},{"hex":"#ec92bc","weight":0.1311,"lightness":0.749,"saturation":0.7031,"hue_group":"red"},{"hex":"#f4dcec","weight":0.0984,"lightness":0.9098,"saturation":0.5217,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_sapling.png","family":"cherry","relations":[{"type":"variants","target":"minecraft:cherry_door","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_door","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_fence","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_fence","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_leaves","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_leaves","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_log","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_log","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_planks","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_planks","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_slab","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_slab","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_stairs","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_stairs","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_wood","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_wood","label":"Related set: cherry","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:potted_cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_slab","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_stairs","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_pillar","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_flower","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_plant","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_cherry_sapling","label":"Palette proche: Potted Cherry Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_petals","label":"Palette proche: Pink Petals","confidence":0.699},{"type":"color_neighbors","target":"minecraft:spore_blossom","label":"Palette proche: Spore Blossom","confidence":0.677},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.675},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.659},{"type":"color_neighbors","target":"minecraft:brain_coral","label":"Palette proche: Brain Coral","confidence":0.657},{"type":"color_neighbors","target":"minecraft:cherry_leaves","label":"Palette proche: Cherry Leaves","confidence":0.651},{"type":"color_neighbors","target":"minecraft:pink_concrete_powder","label":"Palette proche: Pink Concrete Powder","confidence":0.65},{"type":"color_neighbors","target":"minecraft:chorus_flower","label":"Palette proche: Chorus Flower","confidence":0.649},{"type":"color_neighbors","target":"minecraft:cherry_log","label":"Palette proche: Cherry Log","confidence":0.638},{"type":"color_neighbors","target":"minecraft:cherry_wood","label":"Palette proche: Cherry Wood","confidence":0.638},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.635},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par palette: Potted Cherry Sapling","confidence":0.86},{"type":"color_bridge","target":"minecraft:pink_petals","label":"Pont de nuance par sous-ton: Pink Petals","confidence":0.752},{"type":"color_bridge","target":"minecraft:spore_blossom","label":"Pont de nuance par sous-ton: Spore Blossom","confidence":0.734},{"type":"color_bridge","target":"minecraft:pink_candle","label":"Pont de nuance par sous-ton: Pink Candle","confidence":0.732},{"type":"color_bridge","target":"minecraft:brain_coral_block","label":"Pont de nuance par sous-ton: Brain Coral Block","confidence":0.719},{"type":"color_bridge","target":"minecraft:brain_coral","label":"Pont de nuance par sous-ton: Brain Coral","confidence":0.718},{"type":"color_bridge","target":"minecraft:cherry_leaves","label":"Pont de nuance par sous-ton: Cherry Leaves","confidence":0.713},{"type":"color_bridge","target":"minecraft:pink_concrete_powder","label":"Pont de nuance par sous-ton: Pink Concrete Powder","confidence":0.712},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par palette: Chorus Flower","confidence":0.711},{"type":"color_bridge","target":"minecraft:cherry_log","label":"Pont de nuance par sous-ton: Cherry Log","confidence":0.702},{"type":"value_contrast","target":"minecraft:cherry_log","label":"Contraste clair sombre: Cherry Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_wood","label":"Contraste clair sombre: Cherry Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone","label":"Contraste clair sombre: Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_wall","label":"Contraste clair sombre: Blackstone Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_terracotta","label":"Contraste clair sombre: Gray Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_polished_blackstone_bricks","label":"Contraste clair sombre: Cracked Polished Blackstone Bricks","confidence":0.55}],"category":"natural"},{"id":"minecraft:cherry_shelf","name":"Cherry Shelf","entry_type":"block","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added shelves."},{"version":"wiki-history","status":"added","notes":"Added the align_items_to_bottom block state property, by default set to false, to display items at the bottom of the shelf rather than in the middle."}],"colors":{"primary":"#cb8281","dominant_hex":"#c87878","average_hex":"#cb8281","hue_group":"red","lightness":0.651,"saturation":0.4157,"palette":["#c87878","#d99199","#cf8787","#a56060","#dc9c9e","#e4aca4"],"color_groups":[{"hex":"#c87878","weight":0.4258,"lightness":0.6275,"saturation":0.4211,"hue_group":"red"},{"hex":"#d99199","weight":0.1582,"lightness":0.7098,"saturation":0.4865,"hue_group":"red"},{"hex":"#cf8787","weight":0.123,"lightness":0.6706,"saturation":0.4286,"hue_group":"red"},{"hex":"#a56060","weight":0.1113,"lightness":0.5118,"saturation":0.2771,"hue_group":"red"},{"hex":"#dc9c9e","weight":0.1045,"lightness":0.7373,"saturation":0.4776,"hue_group":"red"},{"hex":"#e4aca4","weight":0.0771,"lightness":0.7686,"saturation":0.5424,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_shelf.png","family":"cherry_shelf","relations":[{"type":"visual_neighbors","target":"minecraft:cactus_flower","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_wall_hanging_sign","label":"Palette proche: Cherry Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_cherry_log","label":"Palette proche: Stripped Cherry Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_cherry_wood","label":"Palette proche: Stripped Cherry Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.9},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.895},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.851},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.839},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.839},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.839},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.839},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.839},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.839},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.798},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.798},{"type":"color_analogous","target":"minecraft:red_mushroom_block","label":"Couleurs analogues: Red Mushroom Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete_powder","label":"Couleurs analogues: Red Concrete Powder","confidence":0.94},{"type":"color_analogous","target":"minecraft:potted_red_mushroom","label":"Couleurs analogues: Potted Red Mushroom","confidence":0.937},{"type":"color_analogous","target":"minecraft:red_mushroom","label":"Couleurs analogues: Red Mushroom","confidence":0.937},{"type":"color_analogous","target":"minecraft:barrier","label":"Couleurs analogues: Barrier","confidence":0.935},{"type":"color_analogous","target":"minecraft:red_stained_glass","label":"Couleurs analogues: Red Stained Glass","confidence":0.932},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.931},{"type":"color_analogous","target":"minecraft:pink_terracotta","label":"Couleurs analogues: Pink Terracotta","confidence":0.93},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.96},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.959},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.955},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.943},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.943},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.939},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.914},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.914},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.913},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.912},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.906},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.897},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.874},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.874},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.859},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.8},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.945},{"type":"color_square","target":"minecraft:cactus","label":"Harmonie carree: Cactus","confidence":0.93},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.93},{"type":"value_contrast","target":"minecraft:netherrack","label":"Contraste clair sombre: Netherrack","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_glazed_terracotta","label":"Contraste clair sombre: Black Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_hyphae","label":"Contraste clair sombre: Crimson Hyphae","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_stem","label":"Contraste clair sombre: Crimson Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:creaking_heart","label":"Contraste clair sombre: Creaking Heart","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wall_torch","label":"Contraste clair sombre: Redstone Wall Torch","confidence":0.55},{"type":"value_contrast","target":"minecraft:jukebox","label":"Contraste clair sombre: Jukebox","confidence":0.55},{"type":"value_contrast","target":"minecraft:nether_wart","label":"Contraste clair sombre: Nether Wart","confidence":0.55}],"category":""},{"id":"minecraft:cherry_sign","name":"Cherry Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#e3b3ad","dominant_hex":"#e4b2aa","average_hex":"#e3b3ad","hue_group":"red","lightness":0.7843,"saturation":0.4909,"palette":["#e4b2aa","#e4c4bc","#e4bcb4","#e4ccc4","#cc8484","#dc9c94"],"color_groups":[{"hex":"#e4b2aa","weight":0.2539,"lightness":0.7804,"saturation":0.5179,"hue_group":"red"},{"hex":"#e4c4bc","weight":0.2031,"lightness":0.8157,"saturation":0.4255,"hue_group":"red"},{"hex":"#e4bcb4","weight":0.1875,"lightness":0.8,"saturation":0.4706,"hue_group":"red"},{"hex":"#e4ccc4","weight":0.1484,"lightness":0.8314,"saturation":0.3721,"hue_group":"red"},{"hex":"#cc8484","weight":0.1133,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#dc9c94","weight":0.0938,"lightness":0.7216,"saturation":0.507,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_planks.png","family":"cherry_sign","relations":[{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_leaves","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:target","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_stairs","label":"Palette proche: Cherry Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_wall_sign","label":"Palette proche: Cherry Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_trapdoor","label":"Palette proche: Cherry Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.857},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.763},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.739},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_slab","label":"Couleurs analogues: Cherry Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_stairs","label":"Couleurs analogues: Cherry Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_wall_sign","label":"Couleurs analogues: Cherry Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.954},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.946},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.934},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.915},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.913},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.87},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.849},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.832},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.694},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.693},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.666},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.654},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.654},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.607},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.9},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.9},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.899},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.89},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.669},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.639},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.638},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.626},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.626},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.611}],"category":"building"},{"id":"minecraft:cherry_slab","name":"Cherry Slab","entry_type":"block","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","history":[{"version":"1.7.2 1.7","status":"added","notes":"Added acacia and dark oak slabs."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped slabs."}],"colors":{"primary":"#e3b3ad","dominant_hex":"#e4b2aa","average_hex":"#e3b3ad","hue_group":"red","lightness":0.7843,"saturation":0.4909,"palette":["#e4b2aa","#e4c4bc","#e4bcb4","#e4ccc4","#cc8484","#dc9c94"],"color_groups":[{"hex":"#e4b2aa","weight":0.2539,"lightness":0.7804,"saturation":0.5179,"hue_group":"red"},{"hex":"#e4c4bc","weight":0.2031,"lightness":0.8157,"saturation":0.4255,"hue_group":"red"},{"hex":"#e4bcb4","weight":0.1875,"lightness":0.8,"saturation":0.4706,"hue_group":"red"},{"hex":"#e4ccc4","weight":0.1484,"lightness":0.8314,"saturation":0.3721,"hue_group":"red"},{"hex":"#cc8484","weight":0.1133,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#dc9c94","weight":0.0938,"lightness":0.7216,"saturation":0.507,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_planks.png","family":"cherry","relations":[{"type":"variants","target":"minecraft:cherry_door","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_door","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_fence","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_fence","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_leaves","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_leaves","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_log","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_log","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_planks","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_planks","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_sapling","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_sapling","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_stairs","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_stairs","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_wood","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_wood","label":"Related set: cherry","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_leaves","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:target","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_stairs","label":"Palette proche: Cherry Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_wall_sign","label":"Palette proche: Cherry Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_trapdoor","label":"Palette proche: Cherry Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.857},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.763},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.739},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_sign","label":"Couleurs analogues: Cherry Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_stairs","label":"Couleurs analogues: Cherry Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_wall_sign","label":"Couleurs analogues: Cherry Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.954},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.946},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.934},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.915},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.913},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.87},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.849},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.832},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.694},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.693},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.666},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.654},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.654},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.607},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.9},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.9},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.899},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.89},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.669},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.639},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.638},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.626},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.626},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.611}],"category":"building"},{"id":"minecraft:cherry_stairs","name":"Cherry Stairs","entry_type":"block","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","history":[{"version":"20100629","status":"added","notes":"Added \"wooden\" stairs."},{"version":"1.3.1 12w25a","status":"added","notes":"Added wooden stairs for the remaining three wood types (spruce, birch, and jungle)."},{"version":"12w26a","status":"added","notes":"Added crafting recipes for spruce, birch, and jungle wood stairs."}],"colors":{"primary":"#e3b3ad","dominant_hex":"#e4b2aa","average_hex":"#e3b3ad","hue_group":"red","lightness":0.7843,"saturation":0.4909,"palette":["#e4b2aa","#e4c4bc","#e4bcb4","#e4ccc4","#cc8484","#dc9c94"],"color_groups":[{"hex":"#e4b2aa","weight":0.2539,"lightness":0.7804,"saturation":0.5179,"hue_group":"red"},{"hex":"#e4c4bc","weight":0.2031,"lightness":0.8157,"saturation":0.4255,"hue_group":"red"},{"hex":"#e4bcb4","weight":0.1875,"lightness":0.8,"saturation":0.4706,"hue_group":"red"},{"hex":"#e4ccc4","weight":0.1484,"lightness":0.8314,"saturation":0.3721,"hue_group":"red"},{"hex":"#cc8484","weight":0.1133,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#dc9c94","weight":0.0938,"lightness":0.7216,"saturation":0.507,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_planks.png","family":"cherry","relations":[{"type":"variants","target":"minecraft:cherry_door","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_door","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_fence","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_fence","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_leaves","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_leaves","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_log","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_log","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_planks","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_planks","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_sapling","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_sapling","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_slab","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_slab","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_wood","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_wood","label":"Related set: cherry","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_leaves","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:target","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_wall_sign","label":"Palette proche: Cherry Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_trapdoor","label":"Palette proche: Cherry Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.857},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.763},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.739},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_sign","label":"Couleurs analogues: Cherry Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_slab","label":"Couleurs analogues: Cherry Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_wall_sign","label":"Couleurs analogues: Cherry Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.954},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.946},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.934},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.915},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.913},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.87},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.849},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.832},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.694},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.693},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.666},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.654},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.654},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.607},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.9},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.9},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.899},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.89},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.669},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.639},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.638},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.626},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.626},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.611}],"category":"building"},{"id":"minecraft:cherry_trapdoor","name":"Cherry Trapdoor","entry_type":"block","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","history":[{"version":"1.6","status":"added","notes":"Added wooden trapdoors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped trapdoors."}],"colors":{"primary":"#e2b3ac","dominant_hex":"#d99791","average_hex":"#e2b3ac","hue_group":"red","lightness":0.7804,"saturation":0.4821,"palette":["#d99791","#e4c4bc","#e4b4ac","#e4cfc7","#e4bcb4","#e4aca4"],"color_groups":[{"hex":"#d99791","weight":0.2455,"lightness":0.7098,"saturation":0.4865,"hue_group":"red"},{"hex":"#e4c4bc","weight":0.1818,"lightness":0.8157,"saturation":0.4255,"hue_group":"red"},{"hex":"#e4b4ac","weight":0.1636,"lightness":0.7843,"saturation":0.5091,"hue_group":"red"},{"hex":"#e4cfc7","weight":0.15,"lightness":0.8373,"saturation":0.3494,"hue_group":"red"},{"hex":"#e4bcb4","weight":0.1409,"lightness":0.8,"saturation":0.4706,"hue_group":"red"},{"hex":"#e4aca4","weight":0.1182,"lightness":0.7686,"saturation":0.5424,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_trapdoor.png","family":"cherry_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_leaves","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:target","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_stairs","label":"Palette proche: Cherry Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_wall_sign","label":"Palette proche: Cherry Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.849},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.839},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.767},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.74},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.74},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.74},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.74},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.74},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.74},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.74},{"type":"color_bridge","target":"minecraft:pale_oak_stairs","label":"Pont de nuance par sous-ton: Pale Oak Stairs","confidence":0.74},{"type":"color_bridge","target":"minecraft:pale_oak_wall_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Sign","confidence":0.74},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_sign","label":"Couleurs analogues: Cherry Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_slab","label":"Couleurs analogues: Cherry Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_stairs","label":"Couleurs analogues: Cherry Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.958},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.951},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.939},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.908},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.898},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.877},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.832},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.806},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.79},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.651},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.651},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.65},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.645},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.632},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.632},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.945},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.945},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.942},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.942},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.937},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.937},{"type":"color_square","target":"minecraft:potted_spruce_sapling","label":"Harmonie carree: Potted Spruce Sapling","confidence":0.924},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.665},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.636},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.635},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.632},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.623},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.623},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.617},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.607}],"category":"building"},{"id":"minecraft:cherry_wall_hanging_sign","name":"Cherry Wall Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#d79195","dominant_hex":"#dc949c","average_hex":"#d79195","hue_group":"red","lightness":0.7059,"saturation":0.4667,"palette":["#dc949c","#dc9c9d","#d48c94","#cc8484","#d48c8c","#cc7c7c"],"color_groups":[{"hex":"#dc949c","weight":0.2969,"lightness":0.7216,"saturation":0.507,"hue_group":"red"},{"hex":"#dc9c9d","weight":0.293,"lightness":0.7373,"saturation":0.4776,"hue_group":"red"},{"hex":"#d48c94","weight":0.1875,"lightness":0.6902,"saturation":0.4557,"hue_group":"red"},{"hex":"#cc8484","weight":0.1055,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#d48c8c","weight":0.0938,"lightness":0.6902,"saturation":0.4557,"hue_group":"red"},{"hex":"#cc7c7c","weight":0.0234,"lightness":0.6431,"saturation":0.4396,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_cherry_log.png","family":"cherry_wall_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:cherry_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cactus_flower","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_cherry_log","label":"Palette proche: Stripped Cherry Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_cherry_wood","label":"Palette proche: Stripped Cherry Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.865},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.857},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.752},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.752},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.742},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.742},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.742},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.742},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.742},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.742},{"type":"color_bridge","target":"minecraft:dried_ghast","label":"Pont de nuance par palette: Dried Ghast","confidence":0.715},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.707},{"type":"color_analogous","target":"minecraft:cherry_hanging_sign","label":"Couleurs analogues: Cherry Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_cherry_log","label":"Couleurs analogues: Stripped Cherry Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_cherry_wood","label":"Couleurs analogues: Stripped Cherry Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire_coral","label":"Couleurs analogues: Fire Coral","confidence":0.922},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.902},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.902},{"type":"color_analogous","target":"minecraft:cherry_shelf","label":"Couleurs analogues: Cherry Shelf","confidence":0.895},{"type":"color_analogous","target":"minecraft:pink_terracotta","label":"Couleurs analogues: Pink Terracotta","confidence":0.893},{"type":"color_complement","target":"minecraft:beacon","label":"Contraste complementaire: Beacon","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_door","label":"Contraste complementaire: Warped Door","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_shelf","label":"Contraste complementaire: Warped Shelf","confidence":0.959},{"type":"color_complement","target":"minecraft:diamond_block","label":"Contraste complementaire: Diamond Block","confidence":0.952},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.948},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.948},{"type":"color_complement","target":"minecraft:warped_hanging_sign","label":"Contraste complementaire: Warped Hanging Sign","confidence":0.948},{"type":"color_complement","target":"minecraft:warped_wall_hanging_sign","label":"Contraste complementaire: Warped Wall Hanging Sign","confidence":0.948},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.955},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.955},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.935},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.912},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.911},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.87},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.819},{"type":"color_square","target":"minecraft:large_amethyst_bud","label":"Harmonie carree: Large Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:lime_concrete_powder","label":"Harmonie carree: Lime Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:oak_sapling","label":"Harmonie carree: Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_oak_sapling","label":"Harmonie carree: Potted Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:orange_tulip","label":"Harmonie carree: Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_orange_tulip","label":"Harmonie carree: Potted Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:azure_bluet","label":"Harmonie carree: Azure Bluet","confidence":0.951},{"type":"color_square","target":"minecraft:potted_azure_bluet","label":"Harmonie carree: Potted Azure Bluet","confidence":0.951},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.596},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.566},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.562},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.56},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.554},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.554},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.551},{"type":"value_contrast","target":"minecraft:mangrove_hanging_sign","label":"Contraste clair sombre: Mangrove Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:cherry_wall_sign","name":"Cherry Wall Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#e3b3ad","dominant_hex":"#e4b2aa","average_hex":"#e3b3ad","hue_group":"red","lightness":0.7843,"saturation":0.4909,"palette":["#e4b2aa","#e4c4bc","#e4bcb4","#e4ccc4","#cc8484","#dc9c94"],"color_groups":[{"hex":"#e4b2aa","weight":0.2539,"lightness":0.7804,"saturation":0.5179,"hue_group":"red"},{"hex":"#e4c4bc","weight":0.2031,"lightness":0.8157,"saturation":0.4255,"hue_group":"red"},{"hex":"#e4bcb4","weight":0.1875,"lightness":0.8,"saturation":0.4706,"hue_group":"red"},{"hex":"#e4ccc4","weight":0.1484,"lightness":0.8314,"saturation":0.3721,"hue_group":"red"},{"hex":"#cc8484","weight":0.1133,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#dc9c94","weight":0.0938,"lightness":0.7216,"saturation":0.507,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_planks.png","family":"cherry_wall_sign","relations":[{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_leaves","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:target","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_stairs","label":"Palette proche: Cherry Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_trapdoor","label":"Palette proche: Cherry Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.857},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.763},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.741},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.739},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.739},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_sign","label":"Couleurs analogues: Cherry Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_slab","label":"Couleurs analogues: Cherry Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_stairs","label":"Couleurs analogues: Cherry Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.954},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.946},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.934},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.915},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.913},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.87},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.849},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.832},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.694},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.693},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.666},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.654},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.654},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.607},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.9},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.9},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.899},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.89},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.669},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.639},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.638},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.626},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.626},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.611}],"category":"building"},{"id":"minecraft:cherry_wood","name":"Cherry Wood","entry_type":"block","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","history":[{"version":"1.3.1 12w30d","status":"added","notes":"Added six-sided wood blocks, which look similar to logs , but have the wood's \"bark\" texture (side texture when placed vertically) on all 6 sides."},{"version":"1.7.2 13w43a","status":"added","notes":"Added two new types of wood: acacia and dark oak."},{"version":"1","status":"added","notes":"Added top textures of the bark blocks."}],"colors":{"primary":"#37212c","dominant_hex":"#341c2c","average_hex":"#37212c","hue_group":"red","lightness":0.1725,"saturation":0.25,"palette":["#341c2c","#3c242c","#241424","#442c3c","#543444"],"color_groups":[{"hex":"#341c2c","weight":0.3242,"lightness":0.1569,"saturation":0.3,"hue_group":"purple"},{"hex":"#3c242c","weight":0.25,"lightness":0.1882,"saturation":0.25,"hue_group":"red"},{"hex":"#241424","weight":0.1953,"lightness":0.1098,"saturation":0.2857,"hue_group":"purple"},{"hex":"#442c3c","weight":0.1836,"lightness":0.2196,"saturation":0.2143,"hue_group":"purple"},{"hex":"#543444","weight":0.0469,"lightness":0.2667,"saturation":0.2353,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_log.png","family":"cherry","relations":[{"type":"variants","target":"minecraft:cherry_door","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_door","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_fence","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_fence","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_leaves","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_leaves","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_log","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_log","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_planks","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_planks","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_sapling","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_sapling","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_slab","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_slab","label":"Related set: cherry","confidence":0.8},{"type":"variants","target":"minecraft:cherry_stairs","label":"Same family: cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:cherry_stairs","label":"Related set: cherry","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smithing_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gilded_blackstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_soil","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_log","label":"Palette proche: Cherry Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_stairs","label":"Palette proche: Crimson Stairs","confidence":0.809},{"type":"color_neighbors","target":"minecraft:crimson_wall_sign","label":"Palette proche: Crimson Wall Sign","confidence":0.809},{"type":"color_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Palette proche: Cracked Polished Blackstone Bricks","confidence":0.778},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.776},{"type":"color_bridge","target":"minecraft:cracked_polished_blackstone_bricks","label":"Pont de nuance par sous-ton: Cracked Polished Blackstone Bricks","confidence":0.817},{"type":"color_bridge","target":"minecraft:blackstone","label":"Pont de nuance par sous-ton: Blackstone","confidence":0.813},{"type":"color_bridge","target":"minecraft:blackstone_wall","label":"Pont de nuance par sous-ton: Blackstone Wall","confidence":0.813},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par sous-ton: Polished Blackstone Brick Slab","confidence":0.8},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par sous-ton: Polished Blackstone Brick Stairs","confidence":0.8},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_wall","label":"Pont de nuance par sous-ton: Polished Blackstone Brick Wall","confidence":0.8},{"type":"color_bridge","target":"minecraft:polished_blackstone_bricks","label":"Pont de nuance par sous-ton: Polished Blackstone Bricks","confidence":0.8},{"type":"color_bridge","target":"minecraft:blackstone_slab","label":"Pont de nuance par sous-ton: Blackstone Slab","confidence":0.797},{"type":"color_bridge","target":"minecraft:blackstone_stairs","label":"Pont de nuance par sous-ton: Blackstone Stairs","confidence":0.797},{"type":"color_bridge","target":"minecraft:gilded_blackstone","label":"Pont de nuance par sous-ton: Gilded Blackstone","confidence":0.78},{"type":"color_analogous","target":"minecraft:cherry_log","label":"Couleurs analogues: Cherry Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.873},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.873},{"type":"color_analogous","target":"minecraft:crimson_fence_gate","label":"Couleurs analogues: Crimson Fence Gate","confidence":0.873},{"type":"color_analogous","target":"minecraft:crimson_planks","label":"Couleurs analogues: Crimson Planks","confidence":0.873},{"type":"color_analogous","target":"minecraft:crimson_pressure_plate","label":"Couleurs analogues: Crimson Pressure Plate","confidence":0.873},{"type":"color_analogous","target":"minecraft:crimson_sign","label":"Couleurs analogues: Crimson Sign","confidence":0.873},{"type":"color_analogous","target":"minecraft:crimson_slab","label":"Couleurs analogues: Crimson Slab","confidence":0.873},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.915},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.915},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.869},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.797},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.797},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.797},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.763},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.763},{"type":"color_triad","target":"minecraft:dark_oak_sapling","label":"Harmonie triadique: Dark Oak Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie triadique: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp_plant","label":"Harmonie triadique: Kelp Plant","confidence":0.96},{"type":"color_triad","target":"minecraft:cactus","label":"Harmonie triadique: Cactus","confidence":0.953},{"type":"color_triad","target":"minecraft:lime_candle","label":"Harmonie triadique: Lime Candle","confidence":0.951},{"type":"color_triad","target":"minecraft:sugar_cane","label":"Harmonie triadique: Sugar Cane","confidence":0.936},{"type":"color_triad","target":"minecraft:jungle_sapling","label":"Harmonie triadique: Jungle Sapling","confidence":0.932},{"type":"color_triad","target":"minecraft:potted_jungle_sapling","label":"Harmonie triadique: Potted Jungle Sapling","confidence":0.932},{"type":"color_square","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie carree: Yellow Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:yellow_stained_glass","label":"Harmonie carree: Yellow Stained Glass","confidence":0.958},{"type":"color_square","target":"minecraft:acacia_sapling","label":"Harmonie carree: Acacia Sapling","confidence":0.941},{"type":"color_square","target":"minecraft:potted_acacia_sapling","label":"Harmonie carree: Potted Acacia Sapling","confidence":0.941},{"type":"color_square","target":"minecraft:blue_concrete","label":"Harmonie carree: Blue Concrete","confidence":0.927},{"type":"color_square","target":"minecraft:blue_shulker_box","label":"Harmonie carree: Blue Shulker Box","confidence":0.926},{"type":"color_square","target":"minecraft:cocoa","label":"Harmonie carree: Cocoa","confidence":0.922},{"type":"color_square","target":"minecraft:turtle_egg","label":"Harmonie carree: Turtle Egg","confidence":0.919},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.773},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.74},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.719},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.719},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.719},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.719},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.717},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.69}],"category":"building"},{"id":"minecraft:chest","name":"Chest","entry_type":"block","description":"A chest is a block used to store items. A large chest is the combination of two adjacent chests, and can store twice as many items.","history":[{"version":"0.31 20100124-2119","status":"added","notes":"Added chests and large chests."},{"version":"20100625-1917","status":"added","notes":"added monster rooms ."},{"version":"wiki-history","status":"added","notes":"Added chest opening and closing sounds, which used the door sounds."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"chest","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_wall_banner","label":"Palette proche: Cyan Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"utility"},{"id":"minecraft:chest_minecart","name":"Chest Minecart","entry_type":"item","description":"A minecart with chest is a single chest inside a minecart, and functions as such.","history":[{"version":"wiki","status":"observed","notes":"Wiki revision 3333540 at 2025-12-25T00:47:38Z."}],"colors":{"primary":"#655944","dominant_hex":"#292e2a","average_hex":"#655944","hue_group":"yellow","lightness":0.3314,"saturation":0.1953,"palette":["#292e2a","#9b6d1f","#999a9e","#4e4735","#696d74","#23180c"],"color_groups":[{"hex":"#292e2a","weight":0.2453,"lightness":0.1706,"saturation":0.0575,"hue_group":"neutral"},{"hex":"#9b6d1f","weight":0.2453,"lightness":0.3647,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#999a9e","weight":0.1824,"lightness":0.6098,"saturation":0.0251,"hue_group":"neutral"},{"hex":"#4e4735","weight":0.1195,"lightness":0.2569,"saturation":0.1908,"hue_group":"yellow"},{"hex":"#696d74","weight":0.1132,"lightness":0.4333,"saturation":0.0498,"hue_group":"neutral"},{"hex":"#23180c","weight":0.0943,"lightness":0.0922,"saturation":0.4894,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/chest_minecart.png","family":"chest_minecart","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fishing_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_hoe","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:chicken","name":"Chicken","entry_type":"item","description":"A chicken is a passive mob found in most grassy biomes, and the main source of raw chicken, feathers and eggs. They have three variants based on the temperature of the biome they spawn in.","history":[{"version":"v1.0.14","status":"added","notes":"Added chickens."},{"version":"Beta 1.9","status":"added","notes":"Added baby chickens."},{"version":"12w38a","status":"added","notes":"Added new step sounds for chickens."}],"colors":{"primary":"#ce9d8c","dominant_hex":"#eec1b0","average_hex":"#ce9d8c","hue_group":"red","lightness":0.6784,"saturation":0.4024,"palette":["#eec1b0","#b47c64","#dcac92","#845444","#fce4dc","#c49484"],"color_groups":[{"hex":"#eec1b0","weight":0.2727,"lightness":0.8118,"saturation":0.6458,"hue_group":"red"},{"hex":"#b47c64","weight":0.25,"lightness":0.549,"saturation":0.3478,"hue_group":"red"},{"hex":"#dcac92","weight":0.1515,"lightness":0.7176,"saturation":0.5139,"hue_group":"red"},{"hex":"#845444","weight":0.1288,"lightness":0.3922,"saturation":0.32,"hue_group":"red"},{"hex":"#fce4dc","weight":0.1061,"lightness":0.9255,"saturation":0.8421,"hue_group":"red"},{"hex":"#c49484","weight":0.0909,"lightness":0.6431,"saturation":0.3516,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/chicken.png","family":"chicken","relations":[{"type":"variants","target":"minecraft:chicken/cold","label":"Same family: chicken","confidence":0.75},{"type":"related_sets","target":"minecraft:chicken/cold","label":"Related set: chicken","confidence":0.8},{"type":"variants","target":"minecraft:chicken/temperate","label":"Same family: chicken","confidence":0.75},{"type":"related_sets","target":"minecraft:chicken/temperate","label":"Related set: chicken","confidence":0.8},{"type":"variants","target":"minecraft:chicken/warm","label":"Same family: chicken","confidence":0.75},{"type":"related_sets","target":"minecraft:chicken/warm","label":"Related set: chicken","confidence":0.8},{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:porkchop","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_horse_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:chicken/cold","name":"Chicken / Cold","entry_type":"mob","description":"A chicken is a passive mob found in most grassy biomes, and the main source of raw chicken, feathers and eggs. They have three variants based on the temperature of the biome they spawn in.","history":[{"version":"v1.0.14","status":"added","notes":"Added chickens."},{"version":"Beta 1.9","status":"added","notes":"Added baby chickens."},{"version":"12w38a","status":"added","notes":"Added new step sounds for chickens."}],"colors":{"primary":"#7c6575","dominant_hex":"#8d7a89","average_hex":"#7c6575","hue_group":"neutral","lightness":0.4412,"saturation":0.1022,"palette":["#8d7a89","#585368","#4a4056","#ae9aa6","#7c6c84","#ea0404"],"color_groups":[{"hex":"#8d7a89","weight":0.2792,"lightness":0.5157,"saturation":0.0769,"hue_group":"neutral"},{"hex":"#585368","weight":0.2529,"lightness":0.3667,"saturation":0.1123,"hue_group":"neutral"},{"hex":"#4a4056","weight":0.1506,"lightness":0.2941,"saturation":0.1467,"hue_group":"blue"},{"hex":"#ae9aa6","weight":0.1506,"lightness":0.6431,"saturation":0.1099,"hue_group":"neutral"},{"hex":"#7c6c84","weight":0.1199,"lightness":0.4706,"saturation":0.1,"hue_group":"neutral"},{"hex":"#ea0404","weight":0.0468,"lightness":0.4667,"saturation":0.9664,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/chicken/cold_chicken.png","family":"chicken","relations":[{"type":"variants","target":"minecraft:chicken","label":"Same family: chicken","confidence":0.75},{"type":"related_sets","target":"minecraft:chicken","label":"Related set: chicken","confidence":0.8},{"type":"variants","target":"minecraft:chicken/temperate","label":"Same family: chicken","confidence":0.75},{"type":"related_sets","target":"minecraft:chicken/temperate","label":"Related set: chicken","confidence":0.8},{"type":"variants","target":"minecraft:chicken/warm","label":"Same family: chicken","confidence":0.75},{"type":"related_sets","target":"minecraft:chicken/warm","label":"Related set: chicken","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_fangs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/warm","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/salt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_charging","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:chicken/temperate","name":"Chicken / Temperate","entry_type":"mob","description":"A chicken is a passive mob found in most grassy biomes, and the main source of raw chicken, feathers and eggs. They have three variants based on the temperature of the biome they spawn in.","history":[{"version":"v1.0.14","status":"added","notes":"Added chickens."},{"version":"Beta 1.9","status":"added","notes":"Added baby chickens."},{"version":"12w38a","status":"added","notes":"Added new step sounds for chickens."}],"colors":{"primary":"#ddcac3","dominant_hex":"#d4d4d4","average_hex":"#ddcac3","hue_group":"red","lightness":0.8157,"saturation":0.2766,"palette":["#d4d4d4","#e4e4e4","#fcfcfc","#c9c6b9","#9d7a38","#fc0404"],"color_groups":[{"hex":"#d4d4d4","weight":0.2364,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.2345,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.219,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c9c6b9","weight":0.1686,"lightness":0.7569,"saturation":0.129,"hue_group":"yellow"},{"hex":"#9d7a38","weight":0.0833,"lightness":0.4176,"saturation":0.4742,"hue_group":"yellow"},{"hex":"#fc0404","weight":0.0581,"lightness":0.502,"saturation":0.9764,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/chicken/temperate_chicken.png","family":"chicken","relations":[{"type":"variants","target":"minecraft:chicken","label":"Same family: chicken","confidence":0.75},{"type":"related_sets","target":"minecraft:chicken","label":"Related set: chicken","confidence":0.8},{"type":"variants","target":"minecraft:chicken/cold","label":"Same family: chicken","confidence":0.75},{"type":"related_sets","target":"minecraft:chicken/cold","label":"Related set: chicken","confidence":0.8},{"type":"variants","target":"minecraft:chicken/warm","label":"Same family: chicken","confidence":0.75},{"type":"related_sets","target":"minecraft:chicken/warm","label":"Related set: chicken","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:sheep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/red_blue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:chicken/warm","name":"Chicken / Warm","entry_type":"mob","description":"A chicken is a passive mob found in most grassy biomes, and the main source of raw chicken, feathers and eggs. They have three variants based on the temperature of the biome they spawn in.","history":[{"version":"v1.0.14","status":"added","notes":"Added chickens."},{"version":"Beta 1.9","status":"added","notes":"Added baby chickens."},{"version":"12w38a","status":"added","notes":"Added new step sounds for chickens."}],"colors":{"primary":"#e39456","dominant_hex":"#e07c3e","average_hex":"#e39456","hue_group":"red","lightness":0.6137,"saturation":0.7157,"palette":["#e07c3e","#f4ac64","#fcc46c","#fcdc94","#7a453b","#db210d"],"color_groups":[{"hex":"#e07c3e","weight":0.2616,"lightness":0.5608,"saturation":0.7232,"hue_group":"red"},{"hex":"#f4ac64","weight":0.2074,"lightness":0.6745,"saturation":0.8675,"hue_group":"yellow"},{"hex":"#fcc46c","weight":0.186,"lightness":0.7059,"saturation":0.96,"hue_group":"yellow"},{"hex":"#fcdc94","weight":0.1492,"lightness":0.7843,"saturation":0.9455,"hue_group":"yellow"},{"hex":"#7a453b","weight":0.1047,"lightness":0.3549,"saturation":0.3481,"hue_group":"red"},{"hex":"#db210d","weight":0.0911,"lightness":0.4549,"saturation":0.8879,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/chicken/warm_chicken.png","family":"chicken","relations":[{"type":"variants","target":"minecraft:chicken","label":"Same family: chicken","confidence":0.75},{"type":"related_sets","target":"minecraft:chicken","label":"Related set: chicken","confidence":0.8},{"type":"variants","target":"minecraft:chicken/cold","label":"Same family: chicken","confidence":0.75},{"type":"related_sets","target":"minecraft:chicken/cold","label":"Related set: chicken","confidence":0.8},{"type":"variants","target":"minecraft:chicken/temperate","label":"Same family: chicken","confidence":0.75},{"type":"related_sets","target":"minecraft:chicken/temperate","label":"Related set: chicken","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:pig/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_pink","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_orange","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:chicken_spawn_egg","name":"Chicken Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#b09c93","dominant_hex":"#835144","average_hex":"#b09c93","hue_group":"red","lightness":0.6333,"saturation":0.1551,"palette":["#835144","#977f6e","#e4e4e4","#bcbcbc","#aea18e","#fcfcfc"],"color_groups":[{"hex":"#835144","weight":0.2556,"lightness":0.3902,"saturation":0.3166,"hue_group":"red"},{"hex":"#977f6e","weight":0.2111,"lightness":0.5118,"saturation":0.1647,"hue_group":"red"},{"hex":"#e4e4e4","weight":0.2111,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcbc","weight":0.1667,"lightness":0.7373,"saturation":0.0,"hue_group":"neutral"},{"hex":"#aea18e","weight":0.1111,"lightness":0.6196,"saturation":0.1649,"hue_group":"yellow"},{"hex":"#fcfcfc","weight":0.0444,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/chicken_spawn_egg.png","family":"chicken_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:quartz","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_bucket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_shell","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shears","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_chest_boat","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:chipped_anvil","name":"Chipped Anvil","entry_type":"block","description":"An anvil is a gravity-affected utility block used to rename items, combine enchantments and repair items without losing the enchantments. An anvil has limited durability, and as it is used or dropped too far, gradually becomes a chipped anvil, then a damaged anvil, then breaks and vanishes.","history":[{"version":"1.4.2 12w41a","status":"added","notes":"Added anvils. All anvil damage levels are available in the Creative inventory."},{"version":"1.4","status":"added","notes":"Added new sounds for the anvil."}],"colors":{"primary":"#494949","dominant_hex":"#3c3c3c","average_hex":"#494949","hue_group":"neutral","lightness":0.2863,"saturation":0.0,"palette":["#3c3c3c","#444444","#4c4c4c","#545454","#5c5c5c","#747474"],"color_groups":[{"hex":"#3c3c3c","weight":0.275,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.225,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1875,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1562,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.0563,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chipped_anvil_top.png","family":"chipped_anvil","relations":[{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:anvil","label":"Palette proche: Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Palette proche: Gray Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_stained_glass","label":"Palette proche: Gray Stained Glass","confidence":0.94},{"type":"color_bridge","target":"minecraft:damaged_anvil","label":"Pont de nuance par palette: Damaged Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:anvil","label":"Pont de nuance par palette: Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_stained_glass_pane","label":"Pont de nuance par palette: Gray Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.677},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.622},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.617},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.616},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.616},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.616},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.616}],"category":""},{"id":"minecraft:chiseled_bookshelf","name":"Chiseled Bookshelf","entry_type":"block","description":"Chiseled bookshelves are blocks that can hold books, books and quills, written books, enchanted books, and knowledge books.","history":[{"version":"1.19.3","status":"added","notes":"Added chiseled bookshelves behind the \" Update 1.20 \" experimental data pack ."},{"version":"22w45a","status":"added","notes":"Added unique sounds for chiseled bookshelves, which previously used wood sounds and wood placing sounds for interacting."},{"version":"22w46a","status":"added","notes":"added and removed by interacting directly with the six slots, versus the former behavior of inserting into the first empty slot and removing from the last filled slot."}],"colors":{"primary":"#b29159","dominant_hex":"#c49c64","average_hex":"#b29159","hue_group":"yellow","lightness":0.5235,"saturation":0.3663,"palette":["#c49c64","#9c844c","#ac8c54","#bc945c","#947444","#ccac74"],"color_groups":[{"hex":"#c49c64","weight":0.2305,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#9c844c","weight":0.2148,"lightness":0.4549,"saturation":0.3448,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1562,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.1484,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#947444","weight":0.125,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#ccac74","weight":0.125,"lightness":0.6275,"saturation":0.4632,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chiseled_bookshelf_top.png","family":"chiseled_bookshelf","relations":[{"type":"visual_neighbors","target":"minecraft:oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beehive","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lectern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:beehive","label":"Palette proche: Beehive","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_hanging_sign","label":"Palette proche: Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Palette proche: Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_oak_log","label":"Palette proche: Stripped Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_oak_wood","label":"Palette proche: Stripped Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.857},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.842},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.832},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.824},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.824},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.823},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.823},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.821},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.814},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.8},{"type":"color_analogous","target":"minecraft:oak_hanging_sign","label":"Couleurs analogues: Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wall_hanging_sign","label":"Couleurs analogues: Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_oak_log","label":"Couleurs analogues: Stripped Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_oak_wood","label":"Couleurs analogues: Stripped Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:beehive","label":"Couleurs analogues: Beehive","confidence":0.96},{"type":"color_analogous","target":"minecraft:lectern","label":"Couleurs analogues: Lectern","confidence":0.96},{"type":"color_analogous","target":"minecraft:short_dry_grass","label":"Couleurs analogues: Short Dry Grass","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.924},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.922},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.907},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.901},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.892},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.841},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.824},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.939},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.874},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.874},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.868},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.852},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.836},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.784},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55}],"category":"utility"},{"id":"minecraft:chiseled_copper","name":"Chiseled Copper","entry_type":"block","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","history":[{"version":"1.20.3","status":"added","notes":"Added chiseled copper behind the \" Update 1.21 \" experimental data pack."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiseled copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#b8654a","dominant_hex":"#c46c4c","average_hex":"#b8654a","hue_group":"red","lightness":0.5059,"saturation":0.4365,"palette":["#c46c4c","#e08268","#944c34","#9c543c","#a45c44","#b46444"],"color_groups":[{"hex":"#c46c4c","weight":0.3281,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"},{"hex":"#e08268","weight":0.2109,"lightness":0.6431,"saturation":0.6593,"hue_group":"red"},{"hex":"#944c34","weight":0.1406,"lightness":0.3922,"saturation":0.48,"hue_group":"red"},{"hex":"#9c543c","weight":0.1211,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#a45c44","weight":0.1055,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#b46444","weight":0.0938,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chiseled_copper.png","family":"chiseled_copper","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_chiseled_copper","label":"Palette proche: Waxed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chest","label":"Palette proche: Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_golem_statue","label":"Palette proche: Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_block","label":"Palette proche: Waxed Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_chest","label":"Palette proche: Waxed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Palette proche: Waxed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_trapdoor","label":"Palette proche: Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Palette proche: Waxed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.806},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.806},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.806},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.806},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.806},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.806},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.784},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.784},{"type":"color_analogous","target":"minecraft:waxed_chiseled_copper","label":"Couleurs analogues: Waxed Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_slab","label":"Couleurs analogues: Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_stairs","label":"Couleurs analogues: Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper","label":"Couleurs analogues: Waxed Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_slab","label":"Couleurs analogues: Waxed Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_stairs","label":"Couleurs analogues: Waxed Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.939},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.939},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.88},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.877},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.823},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.921},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.916},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.903},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.903},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.903},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.903},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.889},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.747},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.941},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.92},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:chiseled_deepslate","name":"Chiseled Deepslate","entry_type":"block","description":"Chiseled deepslate is the chiseled version of deepslate.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added chiseled deepslate, then known as \"Chiseled Grimstone\"."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiseled deepslate, providing the football/regular effect to the mob."}],"colors":{"primary":"#363637","dominant_hex":"#242424","average_hex":"#363637","hue_group":"neutral","lightness":0.2137,"saturation":0.0092,"palette":["#242424","#4c4c4c","#2c2c2c","#3c3434","#444444","#5c5c5c"],"color_groups":[{"hex":"#242424","weight":0.2891,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1875,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.1719,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.1641,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#444444","weight":0.1562,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0312,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chiseled_deepslate.png","family":"chiseled_deepslate","relations":[{"type":"visual_neighbors","target":"minecraft:deepslate_tile_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Palette proche: Cracked Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_bricks","label":"Pont de nuance par palette: Cracked Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.728},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.704},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.703},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.703},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.694},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.672},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.667},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.667}],"category":""},{"id":"minecraft:chiseled_nether_bricks","name":"Chiseled Nether Bricks","entry_type":"block","description":"Chiseled Nether bricks are a decorative variant of Nether bricks, crafted from Nether brick slabs.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added chiseled Nether bricks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiseled Nether bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#2e171b","dominant_hex":"#1c0c14","average_hex":"#2e171b","hue_group":"red","lightness":0.1353,"saturation":0.3333,"palette":["#1c0c14","#331b1c","#3c1c24","#44242c","#241414","#3c1c1c"],"color_groups":[{"hex":"#1c0c14","weight":0.2617,"lightness":0.0784,"saturation":0.4,"hue_group":"red"},{"hex":"#331b1c","weight":0.2578,"lightness":0.1529,"saturation":0.3077,"hue_group":"red"},{"hex":"#3c1c24","weight":0.1758,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#44242c","weight":0.1289,"lightness":0.2039,"saturation":0.3077,"hue_group":"red"},{"hex":"#241414","weight":0.1094,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#3c1c1c","weight":0.0664,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chiseled_nether_bricks.png","family":"chiseled_nether_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:nether_brick_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:nether_brick_fence","label":"Palette proche: Nether Brick Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_slab","label":"Palette proche: Nether Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_stairs","label":"Palette proche: Nether Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_wall","label":"Palette proche: Nether Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_bricks","label":"Palette proche: Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_nether_bricks","label":"Palette proche: Cracked Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_terracotta","label":"Palette proche: Black Terracotta","confidence":0.828},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.776},{"type":"color_neighbors","target":"minecraft:cherry_log","label":"Palette proche: Cherry Log","confidence":0.774},{"type":"color_neighbors","target":"minecraft:cherry_wood","label":"Palette proche: Cherry Wood","confidence":0.774},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.772},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.772},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.78},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.773},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.773},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.765},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.76},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.753},{"type":"color_bridge","target":"minecraft:blackstone","label":"Pont de nuance par sous-ton: Blackstone","confidence":0.752},{"type":"color_bridge","target":"minecraft:blackstone_wall","label":"Pont de nuance par sous-ton: Blackstone Wall","confidence":0.752},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.749},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.749},{"type":"color_analogous","target":"minecraft:nether_brick_fence","label":"Couleurs analogues: Nether Brick Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_slab","label":"Couleurs analogues: Nether Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_stairs","label":"Couleurs analogues: Nether Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_wall","label":"Couleurs analogues: Nether Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_bricks","label":"Couleurs analogues: Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cracked_nether_bricks","label":"Couleurs analogues: Cracked Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:enchanting_table","label":"Couleurs analogues: Enchanting Table","confidence":0.932},{"type":"color_analogous","target":"minecraft:cactus_flower","label":"Couleurs analogues: Cactus Flower","confidence":0.875},{"type":"color_complement","target":"minecraft:warped_nylium","label":"Contraste complementaire: Warped Nylium","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_brick_slab","label":"Contraste complementaire: Prismarine Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_brick_stairs","label":"Contraste complementaire: Prismarine Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_bricks","label":"Contraste complementaire: Prismarine Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:twisting_vines","label":"Contraste complementaire: Twisting Vines","confidence":0.919},{"type":"color_complement","target":"minecraft:nether_sprouts","label":"Contraste complementaire: Nether Sprouts","confidence":0.884},{"type":"color_complement","target":"minecraft:warped_trapdoor","label":"Contraste complementaire: Warped Trapdoor","confidence":0.861},{"type":"color_complement","target":"minecraft:potted_warped_roots","label":"Contraste complementaire: Potted Warped Roots","confidence":0.853},{"type":"color_triad","target":"minecraft:blue_candle","label":"Harmonie triadique: Blue Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_glazed_terracotta","label":"Harmonie triadique: Blue Glazed Terracotta","confidence":0.937},{"type":"color_triad","target":"minecraft:slime_block","label":"Harmonie triadique: Slime Block","confidence":0.931},{"type":"color_triad","target":"minecraft:test_block","label":"Harmonie triadique: Test Block","confidence":0.931},{"type":"color_triad","target":"minecraft:blue_stained_glass","label":"Harmonie triadique: Blue Stained Glass","confidence":0.929},{"type":"color_triad","target":"minecraft:potatoes","label":"Harmonie triadique: Potatoes","confidence":0.92},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.911},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.901},{"type":"color_square","target":"minecraft:green_concrete","label":"Harmonie carree: Green Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:moss_block","label":"Harmonie carree: Moss Block","confidence":0.96},{"type":"color_square","target":"minecraft:moss_carpet","label":"Harmonie carree: Moss Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:green_shulker_box","label":"Harmonie carree: Green Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:green_stained_glass_pane","label":"Harmonie carree: Green Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:green_stained_glass","label":"Harmonie carree: Green Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:green_glazed_terracotta","label":"Harmonie carree: Green Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:big_dripleaf","label":"Harmonie carree: Big Dripleaf","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.809},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.776},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.764},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.764},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.764},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.764},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.753},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.722}],"category":"building"},{"id":"minecraft:chiseled_polished_blackstone","name":"Chiseled Polished Blackstone","entry_type":"block","description":"Chiseled polished blackstone is the chiseled variation of polished blackstone. It has a piglin nose figure.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added chiseled polished blackstone."}],"colors":{"primary":"#363139","dominant_hex":"#4c4c54","average_hex":"#363139","hue_group":"neutral","lightness":0.2078,"saturation":0.0755,"palette":["#4c4c54","#3c3c44","#342c34","#1c141c","#24241c","#140c14"],"color_groups":[{"hex":"#4c4c54","weight":0.25,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.2305,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#342c34","weight":0.207,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#1c141c","weight":0.1523,"lightness":0.0941,"saturation":0.1667,"hue_group":"purple"},{"hex":"#24241c","weight":0.1328,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#140c14","weight":0.0273,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chiseled_polished_blackstone.png","family":"chiseled_polished_blackstone","relations":[{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_slab","label":"Palette proche: Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_stairs","label":"Palette proche: Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_stairs","label":"Pont de nuance par palette: Polished Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_wall","label":"Pont de nuance par palette: Polished Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_slab","label":"Pont de nuance par palette: Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_stairs","label":"Pont de nuance par palette: Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.737},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.706},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.705},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.705},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.704},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.681},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.68},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.68}],"category":""},{"id":"minecraft:chiseled_quartz_block","name":"Chiseled Quartz Block","entry_type":"block","description":"A chiseled quartz block is a variant of the block of quartz that can be crafted from quartz slabs.","history":[{"version":"1.5 13w02a","status":"added","notes":"Added chiseled quartz blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiseled quartz blocks, providing the football/regular effect to the mob."}],"colors":{"primary":"#e8e3da","dominant_hex":"#ecece4","average_hex":"#e8e3da","hue_group":"yellow","lightness":0.8824,"saturation":0.2333,"palette":["#ecece4","#ece4dc","#dcdccc","#e4dcd4","#f4ecec"],"color_groups":[{"hex":"#ecece4","weight":0.3008,"lightness":0.9098,"saturation":0.1739,"hue_group":"yellow"},{"hex":"#ece4dc","weight":0.2617,"lightness":0.8941,"saturation":0.2963,"hue_group":"yellow"},{"hex":"#dcdccc","weight":0.2305,"lightness":0.8314,"saturation":0.186,"hue_group":"yellow"},{"hex":"#e4dcd4","weight":0.1602,"lightness":0.8627,"saturation":0.2286,"hue_group":"yellow"},{"hex":"#f4ecec","weight":0.0469,"lightness":0.9412,"saturation":0.2667,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chiseled_quartz_block.png","family":"chiseled_quartz_block","relations":[{"type":"visual_neighbors","target":"minecraft:quartz_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_pillar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sculk_shrieker","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:quartz_block","label":"Palette proche: Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_bricks","label":"Palette proche: Quartz Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_slab","label":"Palette proche: Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_stairs","label":"Palette proche: Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_pillar","label":"Palette proche: Quartz Pillar","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz","label":"Palette proche: Smooth Quartz","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_slab","label":"Palette proche: Smooth Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Palette proche: Smooth Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.883},{"type":"color_neighbors","target":"minecraft:bone_block","label":"Palette proche: Bone Block","confidence":0.867},{"type":"color_neighbors","target":"minecraft:birch_log","label":"Palette proche: Birch Log","confidence":0.815},{"type":"color_neighbors","target":"minecraft:birch_wood","label":"Palette proche: Birch Wood","confidence":0.815},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.9},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.848},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.848},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.847},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par palette: Pale Oak Shelf","confidence":0.831},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par palette: Pearlescent Froglight","confidence":0.799},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.779},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.779},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.779},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par palette: Pale Oak Planks","confidence":0.779},{"type":"color_analogous","target":"minecraft:short_dry_grass","label":"Couleurs analogues: Short Dry Grass","confidence":0.936},{"type":"color_analogous","target":"minecraft:candle","label":"Couleurs analogues: Candle","confidence":0.927},{"type":"color_analogous","target":"minecraft:tall_dry_grass","label":"Couleurs analogues: Tall Dry Grass","confidence":0.923},{"type":"color_analogous","target":"minecraft:oak_hanging_sign","label":"Couleurs analogues: Oak Hanging Sign","confidence":0.919},{"type":"color_analogous","target":"minecraft:oak_wall_hanging_sign","label":"Couleurs analogues: Oak Wall Hanging Sign","confidence":0.919},{"type":"color_analogous","target":"minecraft:stripped_oak_log","label":"Couleurs analogues: Stripped Oak Log","confidence":0.919},{"type":"color_analogous","target":"minecraft:stripped_oak_wood","label":"Couleurs analogues: Stripped Oak Wood","confidence":0.919},{"type":"color_analogous","target":"minecraft:quartz_pillar","label":"Couleurs analogues: Quartz Pillar","confidence":0.917},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.921},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.915},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.915},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.906},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.881},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.85},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.8},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.83},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.83},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.828},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.824},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.808},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.791},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.739},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.765},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.735},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.732},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.727},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.722},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.722},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.707},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.702}],"category":"resource"},{"id":"minecraft:chiseled_red_sandstone","name":"Chiseled Red Sandstone","entry_type":"block","description":"Chiseled red sandstone is the chiseled variant of red sandstone, crafted from red sandstone slabs.","history":[{"version":"1.8 14w32a","status":"added","notes":"Added chiseled red sandstone."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiseled red sandstone, providing the football/regular effect to the mob."}],"colors":{"primary":"#b7611c","dominant_hex":"#9c4c0c","average_hex":"#b7611c","hue_group":"red","lightness":0.4137,"saturation":0.7346,"palette":["#9c4c0c","#c46c24","#d6762e","#ac5414","#b4641c","#cc6c24"],"color_groups":[{"hex":"#9c4c0c","weight":0.2383,"lightness":0.3294,"saturation":0.8571,"hue_group":"red"},{"hex":"#c46c24","weight":0.207,"lightness":0.4549,"saturation":0.6897,"hue_group":"red"},{"hex":"#d6762e","weight":0.168,"lightness":0.5098,"saturation":0.672,"hue_group":"red"},{"hex":"#ac5414","weight":0.1562,"lightness":0.3765,"saturation":0.7917,"hue_group":"red"},{"hex":"#b4641c","weight":0.1484,"lightness":0.4078,"saturation":0.7308,"hue_group":"red"},{"hex":"#cc6c24","weight":0.082,"lightness":0.4706,"saturation":0.7,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chiseled_red_sandstone.png","family":"chiseled_red_sandstone","relations":[{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sand","label":"Palette proche: Red Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Palette proche: Smooth Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pumpkin","label":"Palette proche: Pumpkin","confidence":0.888},{"type":"color_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Palette proche: Orange Stained Glass Pane","confidence":0.884},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.678},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.642},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.642},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.639},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.639},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.634},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.634},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.634},{"type":"color_bridge","target":"minecraft:brown_glazed_terracotta","label":"Pont de nuance par sous-ton: Brown Glazed Terracotta","confidence":0.633},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.63},{"type":"color_analogous","target":"minecraft:red_sandstone","label":"Couleurs analogues: Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_wall","label":"Couleurs analogues: Red Sandstone Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone","label":"Couleurs analogues: Smooth Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_slab","label":"Couleurs analogues: Smooth Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_stairs","label":"Couleurs analogues: Smooth Red Sandstone Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.943},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.943},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.943},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.866},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.863},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.842},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.842},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.834},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.954},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.938},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.935},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.934},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.908},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.908},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.869},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.937},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.844},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.837},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.837},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.833},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.824},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.808},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.778},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:chiseled_resin_bricks","name":"Chiseled Resin Bricks","entry_type":"block","description":"Chiseled resin bricks are a variant of resin bricks, crafted from resin brick slabs.","history":[{"version":"1.21.4 24w44a","status":"added","notes":"Added chiseled resin bricks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiseled resin bricks, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#c95419","dominant_hex":"#b43c14","average_hex":"#c95419","hue_group":"red","lightness":0.4431,"saturation":0.7788,"palette":["#b43c14","#e56614","#a4341c","#c44c0c","#ec8434","#eca434"],"color_groups":[{"hex":"#b43c14","weight":0.2227,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#e56614","weight":0.2188,"lightness":0.4882,"saturation":0.8394,"hue_group":"red"},{"hex":"#a4341c","weight":0.2031,"lightness":0.3765,"saturation":0.7083,"hue_group":"red"},{"hex":"#c44c0c","weight":0.1953,"lightness":0.4078,"saturation":0.8846,"hue_group":"red"},{"hex":"#ec8434","weight":0.1016,"lightness":0.5647,"saturation":0.8288,"hue_group":"red"},{"hex":"#eca434","weight":0.0586,"lightness":0.5647,"saturation":0.8288,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chiseled_resin_bricks.png","family":"chiseled_resin_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_clump","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_brick_stairs","label":"Palette proche: Resin Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_brick_wall","label":"Palette proche: Resin Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_bricks","label":"Palette proche: Resin Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.906},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.905},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.886},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.856},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.85},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.84},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.84},{"type":"color_bridge","target":"minecraft:yellow_stained_glass","label":"Pont de nuance par palette: Yellow Stained Glass","confidence":0.656},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.645},{"type":"color_bridge","target":"minecraft:yellow_stained_glass_pane","label":"Pont de nuance par palette: Yellow Stained Glass Pane","confidence":0.639},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.632},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.617},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.616},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.616},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.609},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.609},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.606},{"type":"color_analogous","target":"minecraft:resin_brick_slab","label":"Couleurs analogues: Resin Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_brick_stairs","label":"Couleurs analogues: Resin Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_brick_wall","label":"Couleurs analogues: Resin Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_bricks","label":"Couleurs analogues: Resin Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_planks","label":"Couleurs analogues: Acacia Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.951},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.942},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.906},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.901},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.876},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.871},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.848},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.926},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.876},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.855},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.855},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.855},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.855},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.852},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.831},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.886},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.885},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.884},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.872},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.836},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.775},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.77},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.77},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:chiseled_sandstone","name":"Chiseled Sandstone","entry_type":"block","description":"Chiseled sandstone is a decorative variant of sandstone, crafted from sandstone slabs.","history":[{"version":"1.2.1 release","status":"added","notes":"added to the terrain.png file and might have been used as decorative sandstone variants. However, these textures do not appear in the game, at the moment."},{"version":"1.2.4 release","status":"added","notes":"Added chiseled sandstone with redone textures, [ 1 ] using the same in-game name as regular sandstone."},{"version":"12w21a","status":"added","notes":"Added desert pyramids , which use chiseled sandstone as building materials."}],"colors":{"primary":"#d8cb9b","dominant_hex":"#dcd4a4","average_hex":"#d8cb9b","hue_group":"yellow","lightness":0.7275,"saturation":0.4388,"palette":["#dcd4a4","#c4ac74","#e6e6c1","#d4bc8c","#e4dcb4","#d4c494"],"color_groups":[{"hex":"#dcd4a4","weight":0.2539,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#c4ac74","weight":0.1875,"lightness":0.6118,"saturation":0.404,"hue_group":"yellow"},{"hex":"#e6e6c1","weight":0.1875,"lightness":0.8294,"saturation":0.4253,"hue_group":"yellow"},{"hex":"#d4bc8c","weight":0.1641,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#e4dcb4","weight":0.1211,"lightness":0.8,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#d4c494","weight":0.0859,"lightness":0.7059,"saturation":0.4267,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chiseled_sandstone.png","family":"chiseled_sandstone","relations":[{"type":"visual_neighbors","target":"minecraft:sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azure_bluet","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Palette proche: Smooth Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Palette proche: Smooth Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tall_dry_grass","label":"Palette proche: Tall Dry Grass","confidence":0.892},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.766},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.752},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.731},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.711},{"type":"color_bridge","target":"minecraft:target","label":"Pont de nuance par palette: Target","confidence":0.696},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.693},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.675},{"type":"color_bridge","target":"minecraft:cherry_door","label":"Pont de nuance par palette: Cherry Door","confidence":0.669},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.669},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.658},{"type":"color_analogous","target":"minecraft:sandstone","label":"Couleurs analogues: Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_wall","label":"Couleurs analogues: Sandstone Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sand","label":"Couleurs analogues: Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:suspicious_sand","label":"Couleurs analogues: Suspicious Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_door","label":"Couleurs analogues: Birch Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:wildflowers","label":"Couleurs analogues: Wildflowers","confidence":0.96},{"type":"color_analogous","target":"minecraft:gold_block","label":"Couleurs analogues: Gold Block","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.959},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.956},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.939},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.935},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.927},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.888},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.888},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.94},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.94},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.94},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.93},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.849},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.839},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.83},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.799},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.96},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.96},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.695},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.68},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.68},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.674},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.645},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.627},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.611},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.581},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.58},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.577},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.568},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.568},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.553},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.551}],"category":""},{"id":"minecraft:chiseled_stone_bricks","name":"Chiseled Stone Bricks","entry_type":"block","description":"Chiseled stone bricks are a variant of stone bricks, crafted from stone brick slabs.","history":[{"version":"1.2.1 1.2","status":"added","notes":"Added chiseled stone bricks, which currently do not have their own distinct name, sharing a tooltip with every other stone bricks variant."},{"version":"1.8 14w02a","status":"added","notes":"added for chiseled stone bricks."}],"colors":{"primary":"#787778","dominant_hex":"#5e5e5e","average_hex":"#787778","hue_group":"neutral","lightness":0.4686,"saturation":0.0042,"palette":["#5e5e5e","#7c7c7c","#9c9c9c","#8c8c8c","#6c6c6c","#7c747c"],"color_groups":[{"hex":"#5e5e5e","weight":0.2969,"lightness":0.3686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1641,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.1602,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1445,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1172,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c747c","weight":0.1172,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chiseled_stone_bricks.png","family":"chiseled_stone_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bush","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vine","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lodestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_bricks","label":"Palette proche: Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bush","label":"Palette proche: Bush","confidence":0.94},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_stairs","label":"Pont de nuance par palette: Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_wall","label":"Pont de nuance par palette: Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_bricks","label":"Pont de nuance par palette: Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:chiseled_tuff","name":"Chiseled Tuff","entry_type":"block","description":"Chiseled tuff is a chiseled variant of tuff.","history":[{"version":"1.20.3","status":"added","notes":"Added chiseled tuff behind the \" Update 1.21 \" experimental data pack."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiselef tuff, providing the football/regular effect to the mob."}],"colors":{"primary":"#595e57","dominant_hex":"#444c44","average_hex":"#595e57","hue_group":"neutral","lightness":0.3549,"saturation":0.0387,"palette":["#444c44","#4c5444","#7b7a72","#646c6c","#5c645c","#545c54"],"color_groups":[{"hex":"#444c44","weight":0.25,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#4c5444","weight":0.2227,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#7b7a72","weight":0.2109,"lightness":0.4647,"saturation":0.038,"hue_group":"neutral"},{"hex":"#646c6c","weight":0.125,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#5c645c","weight":0.1133,"lightness":0.3765,"saturation":0.0417,"hue_group":"neutral"},{"hex":"#545c54","weight":0.0781,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chiseled_tuff.png","family":"chiseled_tuff","relations":[{"type":"visual_neighbors","target":"minecraft:polished_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_copper_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_core","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Palette proche: Chiseled Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_stairs","label":"Palette proche: Tuff Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_wall","label":"Palette proche: Tuff Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_bricks","label":"Palette proche: Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.846},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.844},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.841},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_slab","label":"Pont de nuance par palette: Tuff Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_stairs","label":"Pont de nuance par palette: Tuff Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_wall","label":"Pont de nuance par palette: Tuff Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_bricks","label":"Pont de nuance par palette: Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_stairs","label":"Pont de nuance par palette: Polished Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_wall","label":"Pont de nuance par palette: Polished Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.596},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.568},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.567},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.567},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.562},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55}],"category":""},{"id":"minecraft:chiseled_tuff_bricks","name":"Chiseled Tuff Bricks","entry_type":"block","description":"Chiseled tuff bricks are a variant of tuff bricks, featuring a large brick in the center of the block, with geometric design above and below.","history":[{"version":"1.20.3","status":"added","notes":"Added chiseled tuff bricks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiseled tuff bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#636760","dominant_hex":"#72746c","average_hex":"#636760","hue_group":"neutral","lightness":0.3902,"saturation":0.0352,"palette":["#72746c","#4c5444","#565e56","#86857d","#646c6c","#444c44"],"color_groups":[{"hex":"#72746c","weight":0.2734,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#4c5444","weight":0.2109,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#565e56","weight":0.1875,"lightness":0.3529,"saturation":0.0444,"hue_group":"neutral"},{"hex":"#86857d","weight":0.1406,"lightness":0.5078,"saturation":0.0359,"hue_group":"neutral"},{"hex":"#646c6c","weight":0.125,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#444c44","weight":0.0625,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chiseled_tuff_bricks.png","family":"chiseled_tuff_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_tuff","label":"Palette proche: Chiseled Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_stairs","label":"Palette proche: Tuff Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_wall","label":"Palette proche: Tuff Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_bricks","label":"Palette proche: Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.867},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.844},{"type":"color_neighbors","target":"minecraft:tuff_slab","label":"Palette proche: Tuff Slab","confidence":0.844},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_slab","label":"Pont de nuance par palette: Tuff Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_stairs","label":"Pont de nuance par palette: Tuff Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_wall","label":"Pont de nuance par palette: Tuff Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_bricks","label":"Pont de nuance par palette: Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_stairs","label":"Pont de nuance par palette: Polished Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_wall","label":"Pont de nuance par palette: Polished Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.564},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:chorus_flower","name":"Chorus Flower","entry_type":"block","description":"Chorus flowers are plant blocks harvested from chorus plants, and can be placed on End stone to grow more chorus plants. A chorus flower will only drop as an item if broken directly or shot with a projectile.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added chorus flowers."},{"version":"wiki-history","status":"added","notes":"Added the game rule projectilesCanBreakBlocks , which can control whether impact projectiles will destroy chorus flowers."}],"colors":{"primary":"#977998","dominant_hex":"#643e64","average_hex":"#977998","hue_group":"purple","lightness":0.5353,"saturation":0.1308,"palette":["#643e64","#4f294f","#a583a5","#fcf4fc","#ecd4ec","#d4bcd4"],"color_groups":[{"hex":"#643e64","weight":0.2891,"lightness":0.3176,"saturation":0.2346,"hue_group":"purple"},{"hex":"#4f294f","weight":0.2188,"lightness":0.2353,"saturation":0.3167,"hue_group":"purple"},{"hex":"#a583a5","weight":0.1641,"lightness":0.5804,"saturation":0.1589,"hue_group":"purple"},{"hex":"#fcf4fc","weight":0.1562,"lightness":0.9725,"saturation":0.5714,"hue_group":"purple"},{"hex":"#ecd4ec","weight":0.1016,"lightness":0.8784,"saturation":0.3871,"hue_group":"purple"},{"hex":"#d4bcd4","weight":0.0703,"lightness":0.7843,"saturation":0.2182,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chorus_flower.png","family":"chorus_flower","relations":[{"type":"visual_neighbors","target":"minecraft:cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_slab","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_stairs","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_pillar","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_plant","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chorus_plant","label":"Palette proche: Chorus Plant","confidence":0.813},{"type":"color_neighbors","target":"minecraft:purpur_block","label":"Palette proche: Purpur Block","confidence":0.802},{"type":"color_neighbors","target":"minecraft:purpur_slab","label":"Palette proche: Purpur Slab","confidence":0.802},{"type":"color_neighbors","target":"minecraft:purpur_stairs","label":"Palette proche: Purpur Stairs","confidence":0.802},{"type":"color_neighbors","target":"minecraft:purpur_pillar","label":"Palette proche: Purpur Pillar","confidence":0.798},{"type":"color_neighbors","target":"minecraft:shulker_box","label":"Palette proche: Shulker Box","confidence":0.761},{"type":"color_neighbors","target":"minecraft:blue_terracotta","label":"Palette proche: Blue Terracotta","confidence":0.672},{"type":"color_neighbors","target":"minecraft:open_eyeblossom","label":"Palette proche: Open Eyeblossom","confidence":0.665},{"type":"color_neighbors","target":"minecraft:structure_block","label":"Palette proche: Structure Block","confidence":0.662},{"type":"color_neighbors","target":"minecraft:cherry_sapling","label":"Palette proche: Cherry Sapling","confidence":0.649},{"type":"color_neighbors","target":"minecraft:potted_cherry_sapling","label":"Palette proche: Potted Cherry Sapling","confidence":0.649},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.647},{"type":"color_bridge","target":"minecraft:chorus_plant","label":"Pont de nuance par sous-ton: Chorus Plant","confidence":0.846},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par palette: Purpur Block","confidence":0.837},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par palette: Purpur Slab","confidence":0.837},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par palette: Purpur Stairs","confidence":0.837},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par palette: Purpur Pillar","confidence":0.834},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par palette: Shulker Box","confidence":0.804},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par palette: Blue Terracotta","confidence":0.73},{"type":"color_bridge","target":"minecraft:open_eyeblossom","label":"Pont de nuance par palette: Open Eyeblossom","confidence":0.724},{"type":"color_bridge","target":"minecraft:structure_block","label":"Pont de nuance par palette: Structure Block","confidence":0.722},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par palette: Cherry Sapling","confidence":0.711},{"type":"value_contrast","target":"minecraft:cracked_polished_blackstone_bricks","label":"Contraste clair sombre: Cracked Polished Blackstone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_slab","label":"Contraste clair sombre: Blackstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_stairs","label":"Contraste clair sombre: Blackstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:tinted_glass","label":"Contraste clair sombre: Tinted Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone","label":"Contraste clair sombre: Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_wall","label":"Contraste clair sombre: Blackstone Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_log","label":"Contraste clair sombre: Cherry Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_wood","label":"Contraste clair sombre: Cherry Wood","confidence":0.55}],"category":"natural"},{"id":"minecraft:chorus_fruit","name":"Chorus Fruit","entry_type":"item","description":"Chorus fruit is an item obtained by breaking chorus plants that can be eaten (even when full) to teleport to a random nearby location on the ground. It can also be popped via smelting as a prerequisite to making purpur.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added chorus fruit."},{"version":"15w50a","status":"added","notes":"Added a sound for chorus fruit: item.chorus_fruit.teleport ."}],"colors":{"primary":"#7e5d7d","dominant_hex":"#644c64","average_hex":"#7e5d7d","hue_group":"purple","lightness":0.4294,"saturation":0.1507,"palette":["#644c64","#936d93","#d0bad0","#7c5c7c","#3c143c","#5c2c5c"],"color_groups":[{"hex":"#644c64","weight":0.2455,"lightness":0.3451,"saturation":0.1364,"hue_group":"purple"},{"hex":"#936d93","weight":0.2182,"lightness":0.502,"saturation":0.1496,"hue_group":"purple"},{"hex":"#d0bad0","weight":0.1727,"lightness":0.7725,"saturation":0.1897,"hue_group":"purple"},{"hex":"#7c5c7c","weight":0.1364,"lightness":0.4235,"saturation":0.1481,"hue_group":"purple"},{"hex":"#3c143c","weight":0.1273,"lightness":0.1569,"saturation":0.5,"hue_group":"purple"},{"hex":"#5c2c5c","weight":0.1,"lightness":0.2667,"saturation":0.3529,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/chorus_fruit.png","family":"chorus_fruit","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:shulker_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:popped_chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_shell","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_bucket","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spire_armor_trim_smithing_template","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_breath","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_crystal","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enderman_spawn_egg","label":"Shared hue group: purple","confidence":0.55}],"category":"item"},{"id":"minecraft:chorus_plant","name":"Chorus Plant","entry_type":"block","description":"Chorus plants are blocks that naturally generate on the outer islands of the End. They drop chorus fruit when broken. They can also be grown using chorus flowers.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added chorus plants."}],"colors":{"primary":"#5e395e","dominant_hex":"#5d365d","average_hex":"#5e395e","hue_group":"purple","lightness":0.2961,"saturation":0.245,"palette":["#5d365d","#542c54","#421a42","#442444","#7c5c7c","#8c748c"],"color_groups":[{"hex":"#5d365d","weight":0.293,"lightness":0.2882,"saturation":0.2653,"hue_group":"purple"},{"hex":"#542c54","weight":0.1914,"lightness":0.251,"saturation":0.3125,"hue_group":"purple"},{"hex":"#421a42","weight":0.1445,"lightness":0.1804,"saturation":0.4348,"hue_group":"purple"},{"hex":"#442444","weight":0.1289,"lightness":0.2039,"saturation":0.3077,"hue_group":"purple"},{"hex":"#7c5c7c","weight":0.1211,"lightness":0.4235,"saturation":0.1481,"hue_group":"purple"},{"hex":"#8c748c","weight":0.1211,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chorus_plant.png","family":"chorus_plant","relations":[{"type":"visual_neighbors","target":"minecraft:shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_slab","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_stairs","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_pillar","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_flower","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:shulker_box","label":"Palette proche: Shulker Box","confidence":0.864},{"type":"color_neighbors","target":"minecraft:chorus_flower","label":"Palette proche: Chorus Flower","confidence":0.813},{"type":"color_neighbors","target":"minecraft:blue_terracotta","label":"Palette proche: Blue Terracotta","confidence":0.785},{"type":"color_neighbors","target":"minecraft:cherry_log","label":"Palette proche: Cherry Log","confidence":0.753},{"type":"color_neighbors","target":"minecraft:cherry_wood","label":"Palette proche: Cherry Wood","confidence":0.753},{"type":"color_neighbors","target":"minecraft:purpur_block","label":"Palette proche: Purpur Block","confidence":0.749},{"type":"color_neighbors","target":"minecraft:purpur_slab","label":"Palette proche: Purpur Slab","confidence":0.749},{"type":"color_neighbors","target":"minecraft:purpur_stairs","label":"Palette proche: Purpur Stairs","confidence":0.749},{"type":"color_neighbors","target":"minecraft:purpur_pillar","label":"Palette proche: Purpur Pillar","confidence":0.744},{"type":"color_neighbors","target":"minecraft:tinted_glass","label":"Palette proche: Tinted Glass","confidence":0.727},{"type":"color_neighbors","target":"minecraft:mycelium","label":"Palette proche: Mycelium","confidence":0.719},{"type":"color_neighbors","target":"minecraft:blackstone_slab","label":"Palette proche: Blackstone Slab","confidence":0.689},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.888},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.846},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.823},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.793},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.793},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.793},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.789},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par sous-ton: Tinted Glass","confidence":0.775},{"type":"color_bridge","target":"minecraft:mycelium","label":"Pont de nuance par palette: Mycelium","confidence":0.769},{"type":"color_bridge","target":"minecraft:blackstone_slab","label":"Pont de nuance par sous-ton: Blackstone Slab","confidence":0.744},{"type":"color_analogous","target":"minecraft:bubble_coral_fan","label":"Couleurs analogues: Bubble Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral_wall_fan","label":"Couleurs analogues: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral","label":"Couleurs analogues: Bubble Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral_block","label":"Couleurs analogues: Bubble Coral Block","confidence":0.956},{"type":"color_analogous","target":"minecraft:magenta_candle","label":"Couleurs analogues: Magenta Candle","confidence":0.885},{"type":"color_analogous","target":"minecraft:magenta_concrete","label":"Couleurs analogues: Magenta Concrete","confidence":0.864},{"type":"color_analogous","target":"minecraft:magenta_shulker_box","label":"Couleurs analogues: Magenta Shulker Box","confidence":0.859},{"type":"color_analogous","target":"minecraft:magenta_concrete_powder","label":"Couleurs analogues: Magenta Concrete Powder","confidence":0.853},{"type":"color_complement","target":"minecraft:carrots","label":"Contraste complementaire: Carrots","confidence":0.835},{"type":"color_complement","target":"minecraft:wheat","label":"Contraste complementaire: Wheat","confidence":0.82},{"type":"color_complement","target":"minecraft:verdant_froglight","label":"Contraste complementaire: Verdant Froglight","confidence":0.762},{"type":"color_complement","target":"minecraft:mangrove_propagule","label":"Contraste complementaire: Mangrove Propagule","confidence":0.725},{"type":"color_complement","target":"minecraft:test_block","label":"Contraste complementaire: Test Block","confidence":0.582},{"type":"color_complement","target":"minecraft:slime_block","label":"Contraste complementaire: Slime Block","confidence":0.58},{"type":"color_complement","target":"minecraft:potatoes","label":"Contraste complementaire: Potatoes","confidence":0.568},{"type":"color_complement","target":"minecraft:potted_spruce_sapling","label":"Contraste complementaire: Potted Spruce Sapling","confidence":0.52},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:powder_snow","label":"Harmonie triadique: Powder Snow","confidence":0.96},{"type":"color_triad","target":"minecraft:snow","label":"Harmonie triadique: Snow","confidence":0.96},{"type":"color_triad","target":"minecraft:snow_block","label":"Harmonie triadique: Snow Block","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_candle","label":"Harmonie triadique: Cyan Candle","confidence":0.959},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.958},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.942},{"type":"color_triad","target":"minecraft:potted_acacia_sapling","label":"Harmonie triadique: Potted Acacia Sapling","confidence":0.942},{"type":"color_square","target":"minecraft:brown_stained_glass","label":"Harmonie carree: Brown Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:brown_stained_glass_pane","label":"Harmonie carree: Brown Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:raw_iron_block","label":"Harmonie carree: Raw Iron Block","confidence":0.96},{"type":"color_square","target":"minecraft:cartography_table","label":"Harmonie carree: Cartography Table","confidence":0.96},{"type":"color_square","target":"minecraft:spruce_log","label":"Harmonie carree: Spruce Log","confidence":0.96},{"type":"color_square","target":"minecraft:spruce_wood","label":"Harmonie carree: Spruce Wood","confidence":0.96},{"type":"color_square","target":"minecraft:potted_open_eyeblossom","label":"Harmonie carree: Potted Open Eyeblossom","confidence":0.951},{"type":"color_square","target":"minecraft:dark_oak_button","label":"Harmonie carree: Dark Oak Button","confidence":0.95},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.652},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.618},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.596},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.575},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.575},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.562},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.56},{"type":"value_contrast","target":"minecraft:diorite","label":"Contraste clair sombre: Diorite","confidence":0.55}],"category":""},{"id":"minecraft:clay","name":"Clay","entry_type":"block","description":"Clay is a block that can be found abundantly in lush caves, in patches in shallow surface water or converted from mud using pointed dripstone. It can be smelted into terracotta or broken into clay balls which are smeltable into bricks.","history":[{"version":"v1.0.11","status":"added","notes":"Added clay blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb clay blocks, providing the football/regular effect to the mob."}],"colors":{"primary":"#a1a6b3","dominant_hex":"#a4a4b4","average_hex":"#a1a6b3","hue_group":"neutral","lightness":0.6667,"saturation":0.1059,"palette":["#a4a4b4","#9ca4b4","#acacbc","#9ca4ac","#949ca4","#acbcd4"],"color_groups":[{"hex":"#a4a4b4","weight":0.375,"lightness":0.6745,"saturation":0.0964,"hue_group":"neutral"},{"hex":"#9ca4b4","weight":0.1875,"lightness":0.6588,"saturation":0.1379,"hue_group":"blue"},{"hex":"#acacbc","weight":0.1797,"lightness":0.7059,"saturation":0.1067,"hue_group":"neutral"},{"hex":"#9ca4ac","weight":0.1641,"lightness":0.6431,"saturation":0.0879,"hue_group":"neutral"},{"hex":"#949ca4","weight":0.0547,"lightness":0.6118,"saturation":0.0808,"hue_group":"neutral"},{"hex":"#acbcd4","weight":0.0391,"lightness":0.7529,"saturation":0.3175,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/clay.png","family":"clay","relations":[{"type":"visual_neighbors","target":"minecraft:comparator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dried_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leaf_litter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeater","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_column","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tripwire_hook","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chain_command_block","label":"Palette proche: Chain Command Block","confidence":0.725},{"type":"color_neighbors","target":"minecraft:light_blue_terracotta","label":"Palette proche: Light Blue Terracotta","confidence":0.722},{"type":"color_neighbors","target":"minecraft:light_gray_glazed_terracotta","label":"Palette proche: Light Gray Glazed Terracotta","confidence":0.683},{"type":"color_neighbors","target":"minecraft:heavy_core","label":"Palette proche: Heavy Core","confidence":0.682},{"type":"color_neighbors","target":"minecraft:repeating_command_block","label":"Palette proche: Repeating Command Block","confidence":0.679},{"type":"color_neighbors","target":"minecraft:polished_andesite","label":"Palette proche: Polished Andesite","confidence":0.671},{"type":"color_neighbors","target":"minecraft:polished_andesite_slab","label":"Palette proche: Polished Andesite Slab","confidence":0.671},{"type":"color_neighbors","target":"minecraft:polished_andesite_stairs","label":"Palette proche: Polished Andesite Stairs","confidence":0.671},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.657},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.657},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.657},{"type":"color_neighbors","target":"minecraft:white_shulker_box","label":"Palette proche: White Shulker Box","confidence":0.657},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par palette: Chain Command Block","confidence":0.774},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par palette: Light Blue Terracotta","confidence":0.771},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par palette: Light Gray Glazed Terracotta","confidence":0.739},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par palette: Heavy Core","confidence":0.738},{"type":"color_bridge","target":"minecraft:repeating_command_block","label":"Pont de nuance par sous-ton: Repeating Command Block","confidence":0.736},{"type":"color_bridge","target":"minecraft:polished_andesite","label":"Pont de nuance par palette: Polished Andesite","confidence":0.729},{"type":"color_bridge","target":"minecraft:polished_andesite_slab","label":"Pont de nuance par palette: Polished Andesite Slab","confidence":0.729},{"type":"color_bridge","target":"minecraft:polished_andesite_stairs","label":"Pont de nuance par palette: Polished Andesite Stairs","confidence":0.729},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.718},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.718},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.584},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.573},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.552},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.552},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.552},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.552},{"type":"value_contrast","target":"minecraft:basalt","label":"Contraste clair sombre: Basalt","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_hyphae","label":"Contraste clair sombre: Warped Hyphae","confidence":0.55}],"category":"natural"},{"id":"minecraft:clay_ball","name":"Clay Ball","entry_type":"item","description":"A clay ball is the item obtained from clay used for crafting or making bricks.","history":[{"version":"v1.0.11","status":"added","notes":"Added clay."}],"colors":{"primary":"#747a8b","dominant_hex":"#a6a9bb","average_hex":"#747a8b","hue_group":"neutral","lightness":0.5,"saturation":0.0902,"palette":["#a6a9bb","#747c94","#343c44","#44445c","#5c6c8c","#949ca4"],"color_groups":[{"hex":"#a6a9bb","weight":0.3229,"lightness":0.6922,"saturation":0.1338,"hue_group":"blue"},{"hex":"#747c94","weight":0.2188,"lightness":0.5176,"saturation":0.1301,"hue_group":"blue"},{"hex":"#343c44","weight":0.1562,"lightness":0.2353,"saturation":0.1333,"hue_group":"blue"},{"hex":"#44445c","weight":0.1354,"lightness":0.3137,"saturation":0.15,"hue_group":"blue"},{"hex":"#5c6c8c","weight":0.0938,"lightness":0.4549,"saturation":0.2069,"hue_group":"blue"},{"hex":"#949ca4","weight":0.0729,"lightness":0.6118,"saturation":0.0808,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/clay_ball.png","family":"clay_ball","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:pufferfish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trident","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wild_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:clock","name":"Clock","entry_type":"item","description":"A clock is an item that shows the state of the daylight cycle in the Overworld. It spins randomly in dimensions that do not have daylight cycles.","history":[{"version":"v1.2.0 ?","status":"added","notes":"Added clocks."}],"colors":{"primary":"#b28f40","dominant_hex":"#eabf0f","average_hex":"#b28f40","hue_group":"yellow","lightness":0.4745,"saturation":0.4711,"palette":["#eabf0f","#435ec1","#b46414","#622707","#fcd44c","#fcf468"],"color_groups":[{"hex":"#eabf0f","weight":0.2216,"lightness":0.4882,"saturation":0.8795,"hue_group":"yellow"},{"hex":"#435ec1","weight":0.1705,"lightness":0.5098,"saturation":0.504,"hue_group":"blue"},{"hex":"#b46414","weight":0.1705,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#622707","weight":0.1648,"lightness":0.2059,"saturation":0.8667,"hue_group":"red"},{"hex":"#fcd44c","weight":0.1477,"lightness":0.6431,"saturation":0.967,"hue_group":"yellow"},{"hex":"#fcf468","weight":0.125,"lightness":0.698,"saturation":0.961,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/clock_00.png","family":"clock","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:gold_nugget","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone_dust","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:experience_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_chestplate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:totem_of_undying","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:closed_eyeblossom","name":"Closed Eyeblossom","entry_type":"block","description":"An eyeblossom is a unique flower found in the pale garden biome. It changes state depending on the daylight cycle, closing during the day and opening at night. Its \"eye\", visible only when the flower is open, glows in the dark but does not emit light in its surroundings.","history":[{"version":"1.21.4 24w44a","status":"added","notes":"Added eyeblossoms."}],"colors":{"primary":"#6c6265","dominant_hex":"#5c5454","average_hex":"#6c6265","hue_group":"neutral","lightness":0.4039,"saturation":0.0485,"palette":["#5c5454","#807078","#3c3434","#a4949c","#342c2c","#b4a4ac"],"color_groups":[{"hex":"#5c5454","weight":0.24,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#807078","weight":0.22,"lightness":0.4706,"saturation":0.0667,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.16,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#a4949c","weight":0.16,"lightness":0.6118,"saturation":0.0808,"hue_group":"neutral"},{"hex":"#342c2c","weight":0.12,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#b4a4ac","weight":0.1,"lightness":0.6745,"saturation":0.0964,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/closed_eyeblossom.png","family":"closed_eyeblossom","relations":[{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Palette proche: Potted Closed Eyeblossom","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_log","label":"Palette proche: Pale Oak Log","confidence":0.919},{"type":"color_neighbors","target":"minecraft:pale_oak_wood","label":"Palette proche: Pale Oak Wood","confidence":0.919},{"type":"color_neighbors","target":"minecraft:open_eyeblossom","label":"Palette proche: Open Eyeblossom","confidence":0.895},{"type":"color_neighbors","target":"minecraft:observer","label":"Palette proche: Observer","confidence":0.88},{"type":"color_neighbors","target":"minecraft:bedrock","label":"Palette proche: Bedrock","confidence":0.876},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.876},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.876},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.876},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.876},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.873},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.873},{"type":"color_bridge","target":"minecraft:potted_closed_eyeblossom","label":"Pont de nuance par palette: Potted Closed Eyeblossom","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:open_eyeblossom","label":"Pont de nuance par palette: Open Eyeblossom","confidence":0.86},{"type":"color_bridge","target":"minecraft:observer","label":"Pont de nuance par palette: Observer","confidence":0.86},{"type":"color_bridge","target":"minecraft:bedrock","label":"Pont de nuance par palette: Bedrock","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.562},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.55}],"category":""},{"id":"minecraft:coal","name":"Coal","entry_type":"item","description":"Coal is a mineral item mainly obtained from coal ore. It is primarily used for crafting torches and campfires, in addition to being used as fuel.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added coal."},{"version":"15w44a","status":"added","notes":"added to dungeon chests."}],"colors":{"primary":"#242225","dominant_hex":"#211924","average_hex":"#242225","hue_group":"neutral","lightness":0.1392,"saturation":0.0423,"palette":["#211924","#242424","#1c1c1c","#353537","#141414","#2c2c2c"],"color_groups":[{"hex":"#211924","weight":0.2661,"lightness":0.1196,"saturation":0.1803,"hue_group":"purple"},{"hex":"#242424","weight":0.2097,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#1c1c1c","weight":0.1371,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#353537","weight":0.1371,"lightness":0.2118,"saturation":0.0185,"hue_group":"neutral"},{"hex":"#141414","weight":0.129,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.121,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/coal.png","family":"coal","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_dragon_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_stal","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flint","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_11","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rib_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:coal_block","name":"Coal Block","entry_type":"block","description":"A block of coal, also known as a coal block, is a storage block, equivalent to nine coal, that can also be used as fuel.","history":[{"version":"2.0","status":"added","notes":"Added blocks of coal to the April Fools' \"update\", Minecraft 2.0 , using a recolored version of the block of redstone texture. When crafted back to coal, it would have an item data value of 32767 instead of 0, so it coul"},{"version":"1.6.1 13w18a","status":"added","notes":"Added blocks of coal."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of coal, providing the football/regular effect to the mob."}],"colors":{"primary":"#101010","dominant_hex":"#141414","average_hex":"#101010","hue_group":"neutral","lightness":0.0627,"saturation":0.0,"palette":["#141414","#040404","#0c0c0c","#1c1c1c","#2c2c2c"],"color_groups":[{"hex":"#141414","weight":0.3984,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.2773,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#0c0c0c","weight":0.2188,"lightness":0.0471,"saturation":0.0,"hue_group":"neutral"},{"hex":"#1c1c1c","weight":0.0898,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.0156,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/coal_block.png","family":"coal_block","relations":[{"type":"visual_neighbors","target":"minecraft:black_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_stained_glass_pane","label":"Palette proche: Black Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_stained_glass","label":"Palette proche: Black Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_egg","label":"Palette proche: Dragon Egg","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.913},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.91},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.91},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.91},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.91},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.908},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Palette proche: Cracked Deepslate Bricks","confidence":0.888},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.864},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.864},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:dragon_egg","label":"Pont de nuance par palette: Dragon Egg","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_bricks","label":"Pont de nuance par palette: Cracked Deepslate Bricks","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.88},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.856},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.834},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.829},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.828},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.828},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.828},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.828}],"category":"resource"},{"id":"minecraft:coal_ore","name":"Coal Ore","entry_type":"block","description":"Coal ore is a mineral block that drops coal when mined. Deepslate coal ore is a variant of coal ore that rarely generates at the top of the deepslate layer.","history":[{"version":"0.0.14a","status":"added","notes":"Added coal ore."},{"version":"21w10a","status":"added","notes":"Added deepslate variant of coal ore."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb coal ore, providing the football/regular effect to the mob."}],"colors":{"primary":"#6a6a69","dominant_hex":"#747474","average_hex":"#6a6a69","hue_group":"neutral","lightness":0.4137,"saturation":0.0047,"palette":["#747474","#7c7c7c","#2f2f2d","#5a5a58","#8c8c8c","#6c6c6c"],"color_groups":[{"hex":"#747474","weight":0.2734,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.2617,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2f2f2d","weight":0.1641,"lightness":0.1804,"saturation":0.0217,"hue_group":"neutral"},{"hex":"#5a5a58","weight":0.1602,"lightness":0.349,"saturation":0.0112,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1016,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0391,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/coal_ore.png","family":"coal_ore","relations":[{"type":"visual_neighbors","target":"minecraft:furnace","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dispenser","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dropper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:observer","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_moss_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_moss_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.932},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.932},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.932},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.932},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.932},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.932},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.927},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.919},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.919},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.916},{"type":"color_neighbors","target":"minecraft:dropper","label":"Palette proche: Dropper","confidence":0.916},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.914},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_stairs","label":"Pont de nuance par palette: Stone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:dispenser","label":"Pont de nuance par palette: Dispenser","confidence":0.86},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55}],"category":"resource"},{"id":"minecraft:coarse_dirt","name":"Coarse Dirt","entry_type":"block","description":"Coarse dirt is a variant of dirt of which grass blocks cannot spread to.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added coarse dirt. It currently shares the same name and texture as regular dirt."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb coarse dirt, providing the football/regular effect to the mob."}],"colors":{"primary":"#77563b","dominant_hex":"#7a543b","average_hex":"#77563b","hue_group":"red","lightness":0.349,"saturation":0.3371,"palette":["#7a543b","#5c412d","#946c4b","#442e1e","#ba835b","#676767"],"color_groups":[{"hex":"#7a543b","weight":0.3672,"lightness":0.3549,"saturation":0.3481,"hue_group":"red"},{"hex":"#5c412d","weight":0.1992,"lightness":0.2686,"saturation":0.3431,"hue_group":"red"},{"hex":"#946c4b","weight":0.1953,"lightness":0.4373,"saturation":0.3274,"hue_group":"red"},{"hex":"#442e1e","weight":0.1133,"lightness":0.1922,"saturation":0.3878,"hue_group":"red"},{"hex":"#ba835b","weight":0.0977,"lightness":0.5431,"saturation":0.4077,"hue_group":"red"},{"hex":"#676767","weight":0.0273,"lightness":0.4039,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/coarse_dirt.png","family":"coarse_dirt","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_quartz_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:rooted_dirt","label":"Palette proche: Rooted Dirt","confidence":0.927},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.919},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.91},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.91},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.91},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.91},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.91},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.91},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.91},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.91},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.854},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.853},{"type":"color_bridge","target":"minecraft:iron_ore","label":"Pont de nuance par sous-ton: Iron Ore","confidence":0.843},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.842},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.842},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.841},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.84},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.837},{"type":"color_bridge","target":"minecraft:stonecutter","label":"Pont de nuance par palette: Stonecutter","confidence":0.835},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.83},{"type":"color_analogous","target":"minecraft:brown_concrete_powder","label":"Couleurs analogues: Brown Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:dirt","label":"Couleurs analogues: Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:farmland","label":"Couleurs analogues: Farmland","confidence":0.96},{"type":"color_analogous","target":"minecraft:redstone_wall_torch","label":"Couleurs analogues: Redstone Wall Torch","confidence":0.96},{"type":"color_analogous","target":"minecraft:glow_item_frame","label":"Couleurs analogues: Glow Item Frame","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_slab","label":"Couleurs analogues: Mud Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_stairs","label":"Couleurs analogues: Mud Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_wall","label":"Couleurs analogues: Mud Brick Wall","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.923},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.923},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.923},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.872},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.872},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.85},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.833},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.825},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.96},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.951},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.951},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.947},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.892},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.879},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.936},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.868},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.842},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.83},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.83},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.824},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.793},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.79},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.604},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.57},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.56},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.56},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.56},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.56},{"type":"value_contrast","target":"minecraft:white_terracotta","label":"Contraste clair sombre: White Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":""},{"id":"minecraft:coast_armor_trim_smithing_template","name":"Coast Armor Trim Smithing Template","entry_type":"item","description":"Coast armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, cobblestone, and diamonds.","history":[{"version":"1.19.4","status":"added","notes":"Added the coast armor trim smithing template behind the \"Update 1.20\" experimental data pack."}],"colors":{"primary":"#5e686f","dominant_hex":"#737e84","average_hex":"#5e686f","hue_group":"neutral","lightness":0.402,"saturation":0.0829,"palette":["#737e84","#98b8bb","#59595e","#3b3b3d","#202031","#44444c"],"color_groups":[{"hex":"#737e84","weight":0.2663,"lightness":0.4843,"saturation":0.0688,"hue_group":"neutral"},{"hex":"#98b8bb","weight":0.2011,"lightness":0.6647,"saturation":0.2047,"hue_group":"cyan"},{"hex":"#59595e","weight":0.1848,"lightness":0.3588,"saturation":0.0273,"hue_group":"neutral"},{"hex":"#3b3b3d","weight":0.1413,"lightness":0.2353,"saturation":0.0167,"hue_group":"neutral"},{"hex":"#202031","weight":0.1359,"lightness":0.1588,"saturation":0.2099,"hue_group":"blue"},{"hex":"#44444c","weight":0.0707,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/coast_armor_trim_smithing_template.png","family":"coast_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:phantom_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stray_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wild_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_axe","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elytra","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:cobbled_deepslate","name":"Cobbled Deepslate","entry_type":"block","description":"Cobbled deepslate is a stone variant that functions similar to cobblestone or blackstone.","history":[{"version":"1.17 21w08a","status":"added","notes":"Added cobbled deepslate."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cobbled deepslate, providing the football/regular effect to the mob."}],"colors":{"primary":"#4d4d51","dominant_hex":"#4c4c4c","average_hex":"#4d4d51","hue_group":"neutral","lightness":0.3098,"saturation":0.0253,"palette":["#4c4c4c","#3c3c44","#34343c","#5c5c5c","#7c7c7c","#6c6c6c"],"color_groups":[{"hex":"#4c4c4c","weight":0.2422,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.2266,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#34343c","weight":0.1914,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1562,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.0938,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0898,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cobbled_deepslate.png","family":"cobbled_deepslate","relations":[{"type":"variants","target":"minecraft:cobbled_deepslate_slab","label":"Same family: cobbled_deepslate","confidence":0.75},{"type":"related_sets","target":"minecraft:cobbled_deepslate_slab","label":"Related set: cobbled_deepslate","confidence":0.8},{"type":"variants","target":"minecraft:cobbled_deepslate_stairs","label":"Same family: cobbled_deepslate","confidence":0.75},{"type":"related_sets","target":"minecraft:cobbled_deepslate_stairs","label":"Related set: cobbled_deepslate","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blast_furnace","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_basalt","label":"Palette proche: Polished Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.94},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_basalt","label":"Pont de nuance par palette: Smooth Basalt","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.613},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.612},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.612},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.603},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.58},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.577},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.577}],"category":""},{"id":"minecraft:cobbled_deepslate_slab","name":"Cobbled Deepslate Slab","entry_type":"block","description":"A cobbled deepslate slab is a decorative slab variant of cobbled deepslate that generates in ancient cities and is used for building.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added grimstone slabs."}],"colors":{"primary":"#4d4d51","dominant_hex":"#4c4c4c","average_hex":"#4d4d51","hue_group":"neutral","lightness":0.3098,"saturation":0.0253,"palette":["#4c4c4c","#3c3c44","#34343c","#5c5c5c","#7c7c7c","#6c6c6c"],"color_groups":[{"hex":"#4c4c4c","weight":0.2422,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.2266,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#34343c","weight":0.1914,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1562,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.0938,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0898,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cobbled_deepslate.png","family":"cobbled_deepslate","relations":[{"type":"variants","target":"minecraft:cobbled_deepslate","label":"Same family: cobbled_deepslate","confidence":0.75},{"type":"related_sets","target":"minecraft:cobbled_deepslate","label":"Related set: cobbled_deepslate","confidence":0.8},{"type":"variants","target":"minecraft:cobbled_deepslate_stairs","label":"Same family: cobbled_deepslate","confidence":0.75},{"type":"related_sets","target":"minecraft:cobbled_deepslate_stairs","label":"Related set: cobbled_deepslate","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blast_furnace","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_basalt","label":"Palette proche: Polished Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.94},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_basalt","label":"Pont de nuance par palette: Smooth Basalt","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.613},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.612},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.612},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.603},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.58},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.577},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.577}],"category":"building"},{"id":"minecraft:cobbled_deepslate_stairs","name":"Cobbled Deepslate Stairs","entry_type":"block","description":"Cobbled deepslate stairs are a decorative stairs variant of cobbled deepslate that generates in ancient cities and is used for building.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added grimstone stairs."}],"colors":{"primary":"#4d4d51","dominant_hex":"#4c4c4c","average_hex":"#4d4d51","hue_group":"neutral","lightness":0.3098,"saturation":0.0253,"palette":["#4c4c4c","#3c3c44","#34343c","#5c5c5c","#7c7c7c","#6c6c6c"],"color_groups":[{"hex":"#4c4c4c","weight":0.2422,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.2266,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#34343c","weight":0.1914,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1562,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.0938,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0898,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cobbled_deepslate.png","family":"cobbled_deepslate","relations":[{"type":"variants","target":"minecraft:cobbled_deepslate","label":"Same family: cobbled_deepslate","confidence":0.75},{"type":"related_sets","target":"minecraft:cobbled_deepslate","label":"Related set: cobbled_deepslate","confidence":0.8},{"type":"variants","target":"minecraft:cobbled_deepslate_slab","label":"Same family: cobbled_deepslate","confidence":0.75},{"type":"related_sets","target":"minecraft:cobbled_deepslate_slab","label":"Related set: cobbled_deepslate","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blast_furnace","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_basalt","label":"Palette proche: Polished Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.94},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_basalt","label":"Pont de nuance par palette: Smooth Basalt","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.613},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.612},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.612},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.603},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.58},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.577},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.577}],"category":"building"},{"id":"minecraft:cobbled_deepslate_wall","name":"Cobbled Deepslate Wall","entry_type":"block","description":"A cobbled deepslate wall is a decorative wall variant of cobbled deepslate that generates in ancient cities and is used for building.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added grimstone walls."}],"colors":{"primary":"#4d4d51","dominant_hex":"#4c4c4c","average_hex":"#4d4d51","hue_group":"neutral","lightness":0.3098,"saturation":0.0253,"palette":["#4c4c4c","#3c3c44","#34343c","#5c5c5c","#7c7c7c","#6c6c6c"],"color_groups":[{"hex":"#4c4c4c","weight":0.2422,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.2266,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#34343c","weight":0.1914,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1562,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.0938,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0898,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cobbled_deepslate.png","family":"cobbled_deepslate_wall","relations":[{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blast_furnace","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_basalt","label":"Palette proche: Polished Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.94},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_basalt","label":"Pont de nuance par palette: Smooth Basalt","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.613},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.612},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.612},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.603},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.58},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.577},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.577}],"category":"building"},{"id":"minecraft:cobblestone","name":"Cobblestone","entry_type":"block","description":"Cobblestone is a common block obtained from mining stone. It is mainly used for crafting or as a building block.","history":[{"version":"18-22, 2009","status":"added","notes":"Added logo to minecraft.net homepage."},{"version":"Cave game tech test","status":"added","notes":"Added stone , which uses the texture that will come to be used for cobblestone."},{"version":"rd-20090515","status":"added","notes":"Added cobblestone."}],"colors":{"primary":"#807f80","dominant_hex":"#8c848c","average_hex":"#807f80","hue_group":"neutral","lightness":0.5,"saturation":0.0039,"palette":["#8c848c","#646464","#6c6c6c","#a4a4a4","#b4b4b4","#545454"],"color_groups":[{"hex":"#8c848c","weight":0.293,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#646464","weight":0.2383,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1914,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.1445,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.0898,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.043,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cobblestone.png","family":"cobblestone","relations":[{"type":"variants","target":"minecraft:cobblestone_slab","label":"Same family: cobblestone","confidence":0.75},{"type":"related_sets","target":"minecraft:cobblestone_slab","label":"Related set: cobblestone","confidence":0.8},{"type":"variants","target":"minecraft:cobblestone_stairs","label":"Same family: cobblestone","confidence":0.75},{"type":"related_sets","target":"minecraft:cobblestone_stairs","label":"Related set: cobblestone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cobblestone_slab","label":"Palette proche: Cobblestone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobblestone_stairs","label":"Palette proche: Cobblestone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobblestone_wall","label":"Palette proche: Cobblestone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cobblestone","label":"Palette proche: Infested Cobblestone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:cobblestone_slab","label":"Pont de nuance par palette: Cobblestone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone_stairs","label":"Pont de nuance par palette: Cobblestone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone_wall","label":"Pont de nuance par palette: Cobblestone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cobblestone","label":"Pont de nuance par palette: Infested Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55}],"category":""},{"id":"minecraft:cobblestone_slab","name":"Cobblestone Slab","entry_type":"block","description":"A cobblestone slab is a decorative slab variant of cobblestone that generates in overworld structures and is used for building.","history":[{"version":"1.3","status":"added","notes":"Added stone slabs."}],"colors":{"primary":"#807f80","dominant_hex":"#8c848c","average_hex":"#807f80","hue_group":"neutral","lightness":0.5,"saturation":0.0039,"palette":["#8c848c","#646464","#6c6c6c","#a4a4a4","#b4b4b4","#545454"],"color_groups":[{"hex":"#8c848c","weight":0.293,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#646464","weight":0.2383,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1914,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.1445,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.0898,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.043,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cobblestone.png","family":"cobblestone","relations":[{"type":"variants","target":"minecraft:cobblestone","label":"Same family: cobblestone","confidence":0.75},{"type":"related_sets","target":"minecraft:cobblestone","label":"Related set: cobblestone","confidence":0.8},{"type":"variants","target":"minecraft:cobblestone_stairs","label":"Same family: cobblestone","confidence":0.75},{"type":"related_sets","target":"minecraft:cobblestone_stairs","label":"Related set: cobblestone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cobblestone","label":"Palette proche: Cobblestone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobblestone_stairs","label":"Palette proche: Cobblestone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobblestone_wall","label":"Palette proche: Cobblestone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cobblestone","label":"Palette proche: Infested Cobblestone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:cobblestone","label":"Pont de nuance par palette: Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone_stairs","label":"Pont de nuance par palette: Cobblestone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone_wall","label":"Pont de nuance par palette: Cobblestone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cobblestone","label":"Pont de nuance par palette: Infested Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55}],"category":"building"},{"id":"minecraft:cobblestone_stairs","name":"Cobblestone Stairs","entry_type":"block","description":"Cobblestone stairs are a decorative stairs variant of cobblestone that generates as parts of overworld structures and can be used for building.","history":[{"version":"20100629","status":"added","notes":"Added stone stairs."},{"version":"1.2.1 12w08a","status":"added","notes":"Added upside down stone stairs."}],"colors":{"primary":"#807f80","dominant_hex":"#8c848c","average_hex":"#807f80","hue_group":"neutral","lightness":0.5,"saturation":0.0039,"palette":["#8c848c","#646464","#6c6c6c","#a4a4a4","#b4b4b4","#545454"],"color_groups":[{"hex":"#8c848c","weight":0.293,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#646464","weight":0.2383,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1914,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.1445,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.0898,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.043,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cobblestone.png","family":"cobblestone","relations":[{"type":"variants","target":"minecraft:cobblestone","label":"Same family: cobblestone","confidence":0.75},{"type":"related_sets","target":"minecraft:cobblestone","label":"Related set: cobblestone","confidence":0.8},{"type":"variants","target":"minecraft:cobblestone_slab","label":"Same family: cobblestone","confidence":0.75},{"type":"related_sets","target":"minecraft:cobblestone_slab","label":"Related set: cobblestone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cobblestone","label":"Palette proche: Cobblestone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobblestone_slab","label":"Palette proche: Cobblestone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobblestone_wall","label":"Palette proche: Cobblestone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cobblestone","label":"Palette proche: Infested Cobblestone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:cobblestone","label":"Pont de nuance par palette: Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone_slab","label":"Pont de nuance par palette: Cobblestone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone_wall","label":"Pont de nuance par palette: Cobblestone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cobblestone","label":"Pont de nuance par palette: Infested Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55}],"category":"building"},{"id":"minecraft:cobblestone_wall","name":"Cobblestone Wall","entry_type":"block","description":"A cobblestone wall is a decorative wall variant of cobblestone that generates in overword structures and is used for building.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added cobblestone walls."}],"colors":{"primary":"#807f80","dominant_hex":"#8c848c","average_hex":"#807f80","hue_group":"neutral","lightness":0.5,"saturation":0.0039,"palette":["#8c848c","#646464","#6c6c6c","#a4a4a4","#b4b4b4","#545454"],"color_groups":[{"hex":"#8c848c","weight":0.293,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#646464","weight":0.2383,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1914,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.1445,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.0898,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.043,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cobblestone.png","family":"cobblestone_wall","relations":[{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cobblestone","label":"Palette proche: Cobblestone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobblestone_slab","label":"Palette proche: Cobblestone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobblestone_stairs","label":"Palette proche: Cobblestone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cobblestone","label":"Palette proche: Infested Cobblestone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:cobblestone","label":"Pont de nuance par palette: Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone_slab","label":"Pont de nuance par palette: Cobblestone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone_stairs","label":"Pont de nuance par palette: Cobblestone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cobblestone","label":"Pont de nuance par palette: Infested Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55}],"category":"building"},{"id":"minecraft:cobweb","name":"Cobweb","entry_type":"block","description":"A cobweb is a block that drastically slows down the movement of most entities touching it. The Weaving effect lessens this movement speed decrease.","history":[{"version":"0.26_SURVIVAL_TEST","status":"added","notes":"added to terrain.png . It is not currently associated with any block."},{"version":"1.5","status":"added","notes":"Added cobwebs."}],"colors":{"primary":"#e5e9ea","dominant_hex":"#fcfcfc","average_hex":"#e5e9ea","hue_group":"neutral","lightness":0.9078,"saturation":0.1064,"palette":["#fcfcfc","#e4ecec","#c4ccd4"],"color_groups":[{"hex":"#fcfcfc","weight":0.3714,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e4ecec","weight":0.3333,"lightness":0.9098,"saturation":0.1739,"hue_group":"cyan"},{"hex":"#c4ccd4","weight":0.2952,"lightness":0.8,"saturation":0.1569,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cobweb.png","family":"cobweb","relations":[{"type":"visual_neighbors","target":"minecraft:white_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_wire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:white_shulker_box","label":"Palette proche: White Shulker Box","confidence":0.913},{"type":"color_neighbors","target":"minecraft:white_candle","label":"Palette proche: White Candle","confidence":0.9},{"type":"color_neighbors","target":"minecraft:white_concrete_powder","label":"Palette proche: White Concrete Powder","confidence":0.897},{"type":"color_neighbors","target":"minecraft:white_carpet","label":"Palette proche: White Carpet","confidence":0.896},{"type":"color_neighbors","target":"minecraft:white_wool","label":"Palette proche: White Wool","confidence":0.896},{"type":"color_neighbors","target":"minecraft:white_concrete","label":"Palette proche: White Concrete","confidence":0.818},{"type":"color_neighbors","target":"minecraft:powder_snow","label":"Palette proche: Powder Snow","confidence":0.754},{"type":"color_neighbors","target":"minecraft:snow","label":"Palette proche: Snow","confidence":0.753},{"type":"color_neighbors","target":"minecraft:snow_block","label":"Palette proche: Snow Block","confidence":0.753},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.737},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.737},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.737},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par palette: White Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par palette: White Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par palette: White Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par palette: White Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par palette: White Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_concrete","label":"Pont de nuance par palette: White Concrete","confidence":0.85},{"type":"color_bridge","target":"minecraft:powder_snow","label":"Pont de nuance par sous-ton: Powder Snow","confidence":0.797},{"type":"color_bridge","target":"minecraft:snow","label":"Pont de nuance par sous-ton: Snow","confidence":0.796},{"type":"color_bridge","target":"minecraft:snow_block","label":"Pont de nuance par sous-ton: Snow Block","confidence":0.796},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.784},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.808},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.797},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.776},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.776},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.776},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.776},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.774},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.767}],"category":""},{"id":"minecraft:cocoa","name":"Cocoa","entry_type":"block","description":"Cocoa beans are items obtained from cocoa pods, and are used to plant more of them as well as to craft brown dye and cookies. Cocoa pods are plant blocks that can only be placed on jungle log sides and grow cocoa beans. They can be found naturally in jungles.","history":[{"version":"1.2","status":"added","notes":"Added Coco Beans."},{"version":"1.2_02","status":"added","notes":"Added an \u201ca\u201d in the end of \u201cCoco\u201d to correct it."},{"version":"12w19a","status":"added","notes":"Added cocoa. The top textures of cocoa always keep a completely constant rotation, regardless of what direction they face. They are also not shaded."}],"colors":{"primary":"#85873e","dominant_hex":"#757434","average_hex":"#85873e","hue_group":"yellow","lightness":0.3863,"saturation":0.3706,"palette":["#757434","#a4a94c","#65642c","#6c7434","#b4bc5c","#8c9444"],"color_groups":[{"hex":"#757434","weight":0.234,"lightness":0.3314,"saturation":0.3846,"hue_group":"yellow"},{"hex":"#a4a94c","weight":0.1915,"lightness":0.4804,"saturation":0.3796,"hue_group":"yellow"},{"hex":"#65642c","weight":0.1702,"lightness":0.2843,"saturation":0.3931,"hue_group":"yellow"},{"hex":"#6c7434","weight":0.1702,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#b4bc5c","weight":0.1277,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#8c9444","weight":0.1064,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cocoa_stage0.png","family":"cocoa","relations":[{"type":"visual_neighbors","target":"minecraft:torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dirt_path","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ladder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lime_terracotta","label":"Palette proche: Lime Terracotta","confidence":0.901},{"type":"color_neighbors","target":"minecraft:bamboo_block","label":"Palette proche: Bamboo Block","confidence":0.892},{"type":"color_neighbors","target":"minecraft:wet_sponge","label":"Palette proche: Wet Sponge","confidence":0.876},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.816},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.809},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.807},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.807},{"type":"color_neighbors","target":"minecraft:sponge","label":"Palette proche: Sponge","confidence":0.8},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.799},{"type":"color_neighbors","target":"minecraft:green_terracotta","label":"Palette proche: Green Terracotta","confidence":0.79},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.79},{"type":"color_neighbors","target":"minecraft:sea_pickle","label":"Palette proche: Sea Pickle","confidence":0.789},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.762},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.762},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.761},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.74},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.74},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.733},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.733},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.733},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.733},{"type":"color_bridge","target":"minecraft:light_gray_candle","label":"Pont de nuance par palette: Light Gray Candle","confidence":0.732},{"type":"color_analogous","target":"minecraft:yellow_stained_glass_pane","label":"Couleurs analogues: Yellow Stained Glass Pane","confidence":0.935},{"type":"color_analogous","target":"minecraft:yellow_stained_glass","label":"Couleurs analogues: Yellow Stained Glass","confidence":0.931},{"type":"color_analogous","target":"minecraft:acacia_sapling","label":"Couleurs analogues: Acacia Sapling","confidence":0.928},{"type":"color_analogous","target":"minecraft:potted_acacia_sapling","label":"Couleurs analogues: Potted Acacia Sapling","confidence":0.928},{"type":"color_analogous","target":"minecraft:end_stone","label":"Couleurs analogues: End Stone","confidence":0.903},{"type":"color_analogous","target":"minecraft:potted_flowering_azalea_bush","label":"Couleurs analogues: Potted Flowering Azalea Bush","confidence":0.9},{"type":"color_analogous","target":"minecraft:wet_sponge","label":"Couleurs analogues: Wet Sponge","confidence":0.895},{"type":"color_analogous","target":"minecraft:sponge","label":"Couleurs analogues: Sponge","confidence":0.89},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.945},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.889},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.888},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.879},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.856},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.856},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.569},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.542},{"type":"color_triad","target":"minecraft:soul_fire","label":"Harmonie triadique: Soul Fire","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_block","label":"Harmonie triadique: Bubble Coral Block","confidence":0.958},{"type":"color_triad","target":"minecraft:calibrated_sculk_sensor","label":"Harmonie triadique: Calibrated Sculk Sensor","confidence":0.945},{"type":"color_triad","target":"minecraft:sculk_sensor","label":"Harmonie triadique: Sculk Sensor","confidence":0.945},{"type":"color_triad","target":"minecraft:warped_wart_block","label":"Harmonie triadique: Warped Wart Block","confidence":0.936},{"type":"color_triad","target":"minecraft:blue_orchid","label":"Harmonie triadique: Blue Orchid","confidence":0.933},{"type":"color_triad","target":"minecraft:potted_blue_orchid","label":"Harmonie triadique: Potted Blue Orchid","confidence":0.933},{"type":"color_triad","target":"minecraft:bubble_coral_fan","label":"Harmonie triadique: Bubble Coral Fan","confidence":0.932},{"type":"color_square","target":"minecraft:oxidized_copper_lantern","label":"Harmonie carree: Oxidized Copper Lantern","confidence":0.959},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie carree: Waxed Oxidized Copper Lantern","confidence":0.959},{"type":"color_square","target":"minecraft:torchflower_crop","label":"Harmonie carree: Torchflower Crop","confidence":0.928},{"type":"color_square","target":"minecraft:cherry_log","label":"Harmonie carree: Cherry Log","confidence":0.922},{"type":"color_square","target":"minecraft:cherry_wood","label":"Harmonie carree: Cherry Wood","confidence":0.922},{"type":"color_square","target":"minecraft:crimson_button","label":"Harmonie carree: Crimson Button","confidence":0.874},{"type":"color_square","target":"minecraft:crimson_fence","label":"Harmonie carree: Crimson Fence","confidence":0.874},{"type":"color_square","target":"minecraft:crimson_fence_gate","label":"Harmonie carree: Crimson Fence Gate","confidence":0.874},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.562},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:sand","label":"Contraste clair sombre: Sand","confidence":0.55}],"category":""},{"id":"minecraft:cocoa_beans","name":"Cocoa Beans","entry_type":"item","description":"Cocoa beans are items obtained from cocoa pods, and are used to plant more of them as well as to craft brown dye and cookies. Cocoa pods are plant blocks that can only be placed on jungle log sides and grow cocoa beans. They can be found naturally in jungles.","history":[{"version":"1.2","status":"added","notes":"Added Coco Beans."},{"version":"1.2_02","status":"added","notes":"Added an \u201ca\u201d in the end of \u201cCoco\u201d to correct it."},{"version":"12w19a","status":"added","notes":"Added cocoa. The top textures of cocoa always keep a completely constant rotation, regardless of what direction they face. They are also not shaded."}],"colors":{"primary":"#56341c","dominant_hex":"#341c0c","average_hex":"#56341c","hue_group":"red","lightness":0.2235,"saturation":0.5088,"palette":["#341c0c","#744424","#4c2c14","#946444"],"color_groups":[{"hex":"#341c0c","weight":0.3818,"lightness":0.1255,"saturation":0.625,"hue_group":"red"},{"hex":"#744424","weight":0.2727,"lightness":0.298,"saturation":0.5263,"hue_group":"red"},{"hex":"#4c2c14","weight":0.2,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"},{"hex":"#946444","weight":0.1455,"lightness":0.4235,"saturation":0.3704,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cocoa_beans.png","family":"cocoa_beans","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:sweet_berries","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_pigstep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:cod","name":"Cod","entry_type":"item","description":"Cod are common bucketable aquatic passive mobs found in oceans that are a source of raw cod and, occasionally, bones\u200c[Bedrock Edition only] or bone meal.\u200c[Java Edition only]","history":[{"version":"1.13 18w08b","status":"added","notes":"Added cod as a mob."}],"colors":{"primary":"#a6825c","dominant_hex":"#9c6c4c","average_hex":"#a6825c","hue_group":"yellow","lightness":0.5059,"saturation":0.2937,"palette":["#9c6c4c","#c4a474","#b48c54","#6c442c","#d4c4ac","#040404"],"color_groups":[{"hex":"#9c6c4c","weight":0.2812,"lightness":0.4549,"saturation":0.3448,"hue_group":"red"},{"hex":"#c4a474","weight":0.2396,"lightness":0.6118,"saturation":0.404,"hue_group":"yellow"},{"hex":"#b48c54","weight":0.1979,"lightness":0.5176,"saturation":0.3902,"hue_group":"yellow"},{"hex":"#6c442c","weight":0.1562,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#d4c4ac","weight":0.1146,"lightness":0.7529,"saturation":0.3175,"hue_group":"yellow"},{"hex":"#040404","weight":0.0104,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cod.png","family":"cod","relations":[{"type":"variants","target":"minecraft:cod/mob","label":"Same family: cod","confidence":0.75},{"type":"related_sets","target":"minecraft:cod/mob","label":"Related set: cod","confidence":0.8},{"type":"related_sets","target":"group:food","label":"Related set: food","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:rabbit_foot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_porkchop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trader_llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_hide","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:totem_of_undying","label":"Shared hue group: yellow","confidence":0.55}],"category":"food"},{"id":"minecraft:cod/mob","name":"Cod / Mob","entry_type":"mob","description":"Cod are common bucketable aquatic passive mobs found in oceans that are a source of raw cod and, occasionally, bones\u200c[Bedrock Edition only] or bone meal.\u200c[Java Edition only]","history":[{"version":"1.13 18w08b","status":"added","notes":"Added cod as a mob."}],"colors":{"primary":"#b1977b","dominant_hex":"#c4ac85","average_hex":"#b1977b","hue_group":"yellow","lightness":0.5882,"saturation":0.2571,"palette":["#c4ac85","#94745c","#d4c4ac","#785b4d","#b4946b","#ecdcc4"],"color_groups":[{"hex":"#c4ac85","weight":0.2602,"lightness":0.6451,"saturation":0.3481,"hue_group":"yellow"},{"hex":"#94745c","weight":0.2296,"lightness":0.4706,"saturation":0.2333,"hue_group":"red"},{"hex":"#d4c4ac","weight":0.2041,"lightness":0.7529,"saturation":0.3175,"hue_group":"yellow"},{"hex":"#785b4d","weight":0.1378,"lightness":0.3863,"saturation":0.2183,"hue_group":"red"},{"hex":"#b4946b","weight":0.1224,"lightness":0.5627,"saturation":0.3274,"hue_group":"yellow"},{"hex":"#ecdcc4","weight":0.0459,"lightness":0.8471,"saturation":0.5128,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/cod.png","family":"cod","relations":[{"type":"variants","target":"minecraft:cod","label":"Same family: cod","confidence":0.75},{"type":"related_sets","target":"minecraft:cod","label":"Related set: cod","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_golem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/calico","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/siamese","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:cod_bucket","name":"Cod Bucket","entry_type":"item","description":"A bucket of cod, internally known as cod bucket, is a living cod inside of a water bucket.","history":[{"version":"1.13 18w08b","status":"added","notes":"Added cod buckets."}],"colors":{"primary":"#827d7d","dominant_hex":"#393532","average_hex":"#827d7d","hue_group":"neutral","lightness":0.5,"saturation":0.0196,"palette":["#393532","#b38c60","#858585","#e1e1e1","#b3b0ac","#335bdb"],"color_groups":[{"hex":"#393532","weight":0.2895,"lightness":0.2098,"saturation":0.0654,"hue_group":"neutral"},{"hex":"#b38c60","weight":0.1908,"lightness":0.5392,"saturation":0.3532,"hue_group":"yellow"},{"hex":"#858585","weight":0.1776,"lightness":0.5216,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e1e1e1","weight":0.1382,"lightness":0.8824,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b3b0ac","weight":0.1184,"lightness":0.6882,"saturation":0.044,"hue_group":"neutral"},{"hex":"#335bdb","weight":0.0855,"lightness":0.5294,"saturation":0.7,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cod_bucket.png","family":"cod_bucket","relations":[{"type":"related_sets","target":"group:food","label":"Related set: food","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:light_gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:milk_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clay_ball","label":"Shared hue group: neutral","confidence":0.55}],"category":"food"},{"id":"minecraft:cod_spawn_egg","name":"Cod Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#796f68","dominant_hex":"#5c443c","average_hex":"#796f68","hue_group":"neutral","lightness":0.4412,"saturation":0.0756,"palette":["#5c443c","#345c8f","#745c4c","#94745c","#b29269","#c0c5b4"],"color_groups":[{"hex":"#5c443c","weight":0.2206,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#345c8f","weight":0.1985,"lightness":0.3824,"saturation":0.4667,"hue_group":"blue"},{"hex":"#745c4c","weight":0.1618,"lightness":0.3765,"saturation":0.2083,"hue_group":"red"},{"hex":"#94745c","weight":0.1471,"lightness":0.4706,"saturation":0.2333,"hue_group":"red"},{"hex":"#b29269","weight":0.1471,"lightness":0.5549,"saturation":0.3216,"hue_group":"yellow"},{"hex":"#c0c5b4","weight":0.125,"lightness":0.7392,"saturation":0.1278,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cod_spawn_egg.png","family":"cod_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:wild_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coast_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stray_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:command_block","name":"Command Block","entry_type":"block","description":"A command block is an indestructible block that can execute commands. Because it cannot be obtained, destroyed or used in Survival mode without cheats, it is primarily used in multiplayer servers, Creative worlds, and custom maps. There are 3 types of these blocks. An impulse command block is the default block type; it executes only once when activated. A chain command block executes every time when triggered. A repeating command block executes every game tick as long as it is activated.","history":[{"version":"1.4.2 12w32a","status":"added","notes":"Added command blocks."},{"version":"12w38a","status":"added","notes":"Added the game rule commandBlockOutput ."},{"version":"14w27a","status":"added","notes":"Added CommandStats NBT tag to command blocks."}],"colors":{"primary":"#b5886c","dominant_hex":"#835837","average_hex":"#b5886c","hue_group":"red","lightness":0.5667,"saturation":0.3303,"palette":["#835837","#c27748","#b5b3bd","#cca48c","#cc8c68","#d4b49c"],"color_groups":[{"hex":"#835837","weight":0.2529,"lightness":0.3647,"saturation":0.4086,"hue_group":"red"},{"hex":"#c27748","weight":0.208,"lightness":0.5216,"saturation":0.5,"hue_group":"red"},{"hex":"#b5b3bd","weight":0.1797,"lightness":0.7216,"saturation":0.0704,"hue_group":"neutral"},{"hex":"#cca48c","weight":0.1562,"lightness":0.6745,"saturation":0.3855,"hue_group":"red"},{"hex":"#cc8c68","weight":0.1328,"lightness":0.6039,"saturation":0.495,"hue_group":"red"},{"hex":"#d4b49c","weight":0.0703,"lightness":0.7216,"saturation":0.3944,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/command_block_front.png","family":"command_block","relations":[{"type":"visual_neighbors","target":"minecraft:jungle_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.816},{"type":"color_neighbors","target":"minecraft:jungle_door","label":"Palette proche: Jungle Door","confidence":0.813},{"type":"color_neighbors","target":"minecraft:rooted_dirt","label":"Palette proche: Rooted Dirt","confidence":0.81},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.81},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.81},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.81},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.81},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.81},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.81},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.81},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.81},{"type":"color_neighbors","target":"minecraft:jungle_wall_sign","label":"Palette proche: Jungle Wall Sign","confidence":0.81},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.785},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.779},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.774},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.774},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.767},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.767},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.767},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.767},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.767},{"type":"color_analogous","target":"minecraft:exposed_copper","label":"Couleurs analogues: Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_chest","label":"Couleurs analogues: Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_golem_statue","label":"Couleurs analogues: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper","label":"Couleurs analogues: Waxed Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_chest","label":"Couleurs analogues: Waxed Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Couleurs analogues: Waxed Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_grate","label":"Couleurs analogues: Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_grate","label":"Couleurs analogues: Waxed Exposed Copper Grate","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.957},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.924},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.908},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.893},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.956},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.926},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.866},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.829},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.808},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.807},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.959},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.877},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.782},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.781},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.77},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.702},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.674},{"type":"value_contrast","target":"minecraft:dark_oak_shelf","label":"Contraste clair sombre: Dark Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_terracotta","label":"Contraste clair sombre: Gray Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"technical"},{"id":"minecraft:command_block_minecart","name":"Command Block Minecart","entry_type":"item","description":"A minecart with command block is an impulse\u200c[JE only] or repeating\u200c[BE & edu only] command block inside a minecart.","history":[{"version":"1.7.2 13w39a","status":"added","notes":"Added minecart with command block."}],"colors":{"primary":"#6a5e52","dominant_hex":"#939192","average_hex":"#6a5e52","hue_group":"yellow","lightness":0.3686,"saturation":0.1277,"palette":["#939192","#281a0c","#242c2c","#c28358","#865733","#3c4444"],"color_groups":[{"hex":"#939192","weight":0.3459,"lightness":0.5725,"saturation":0.0092,"hue_group":"neutral"},{"hex":"#281a0c","weight":0.1824,"lightness":0.102,"saturation":0.5385,"hue_group":"yellow"},{"hex":"#242c2c","weight":0.1698,"lightness":0.1569,"saturation":0.1,"hue_group":"neutral"},{"hex":"#c28358","weight":0.1321,"lightness":0.5529,"saturation":0.4649,"hue_group":"red"},{"hex":"#865733","weight":0.0943,"lightness":0.3627,"saturation":0.4486,"hue_group":"red"},{"hex":"#3c4444","weight":0.0755,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/command_block_minecart.png","family":"command_block_minecart","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:comparator","name":"Comparator","entry_type":"block","description":"A redstone comparator is a block that can produce a redstone signal from its front by reading chests, lecterns, copper bulbs, and similar blocks. It can also repeat a signal without changing its strength. It can also be set to either stop outputting a signal while its side input is receiving a stronger one (front torch off), or output a weaker signal based on its side input's signal strength (front torch on).","history":[{"version":"1.5 13w01a","status":"added","notes":"Added redstone comparators."},{"version":"13w01b","status":"added","notes":"added to redstone comparators to fix bugs."}],"colors":{"primary":"#a6a2a0","dominant_hex":"#878787","average_hex":"#a6a2a0","hue_group":"neutral","lightness":0.6392,"saturation":0.0326,"palette":["#878787","#bcbcbb","#c4ccc4","#acacac","#dcd1c7","#440404"],"color_groups":[{"hex":"#878787","weight":0.3047,"lightness":0.5294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcbb","weight":0.2617,"lightness":0.7353,"saturation":0.0074,"hue_group":"neutral"},{"hex":"#c4ccc4","weight":0.1367,"lightness":0.7843,"saturation":0.0727,"hue_group":"neutral"},{"hex":"#acacac","weight":0.1289,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcd1c7","weight":0.1055,"lightness":0.8216,"saturation":0.2308,"hue_group":"red"},{"hex":"#440404","weight":0.0625,"lightness":0.1412,"saturation":0.8889,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/comparator.png","family":"comparator","relations":[{"type":"visual_neighbors","target":"minecraft:repeater","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leaf_litter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dried_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:repeater","label":"Palette proche: Repeater","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.858},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.858},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.858},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.858},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.854},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.854},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.846},{"type":"color_neighbors","target":"minecraft:pumpkin_stem","label":"Palette proche: Pumpkin Stem","confidence":0.842},{"type":"color_neighbors","target":"minecraft:attached_melon_stem","label":"Palette proche: Attached Melon Stem","confidence":0.84},{"type":"color_neighbors","target":"minecraft:melon_stem","label":"Palette proche: Melon Stem","confidence":0.84},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.84},{"type":"color_bridge","target":"minecraft:repeater","label":"Pont de nuance par palette: Repeater","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:pumpkin_stem","label":"Pont de nuance par palette: Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_melon_stem","label":"Pont de nuance par palette: Attached Melon Stem","confidence":0.86},{"type":"value_contrast","target":"minecraft:deepslate_brick_slab","label":"Contraste clair sombre: Deepslate Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_brick_stairs","label":"Contraste clair sombre: Deepslate Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_brick_wall","label":"Contraste clair sombre: Deepslate Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_bricks","label":"Contraste clair sombre: Deepslate Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:anvil","label":"Contraste clair sombre: Anvil","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_deepslate_bricks","label":"Contraste clair sombre: Cracked Deepslate Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:creeper_head","label":"Contraste clair sombre: Creeper Head","confidence":0.55}],"category":"redstone"},{"id":"minecraft:compass","name":"Compass","entry_type":"item","description":"A compass is an item that points in the horizontal direction of the Overworld's spawn point. A lodestone compass is a compass variant that is obtained by using a compass or lodestone compass on a lodestone, and instead points toward that lodestone's horizontal position. If the target position of either type of compass is in a different dimension, or is a lodestone that has been broken, it spins in random directions.","history":[{"version":"v1.1.0","status":"added","notes":"Added compasses."},{"version":"1.5 13w02a","status":"added","notes":"added to the needle."},{"version":"1.16 20w13a","status":"added","notes":"Added lodestone compasses alongside lodestones ."}],"colors":{"primary":"#544f4f","dominant_hex":"#2c2c2c","average_hex":"#544f4f","hue_group":"neutral","lightness":0.3196,"saturation":0.0307,"palette":["#2c2c2c","#1c1414","#cccccc","#6f4e4e","#343434","#848484"],"color_groups":[{"hex":"#2c2c2c","weight":0.2857,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#1c1414","weight":0.1857,"lightness":0.0941,"saturation":0.1667,"hue_group":"red"},{"hex":"#cccccc","weight":0.1571,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6f4e4e","weight":0.15,"lightness":0.3706,"saturation":0.1746,"hue_group":"red"},{"hex":"#343434","weight":0.1429,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#848484","weight":0.0786,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/compass_16.png","family":"compass","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:hopper_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_horn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:furnace_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gunpowder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:composter","name":"Composter","entry_type":"block","description":"A composter is a block that converts some biological material into bone meal. It also serves as a farmer's job site block.","history":[{"version":"1.14 19w03a","status":"added","notes":"Added composters."}],"colors":{"primary":"#996334","dominant_hex":"#b4743c","average_hex":"#996334","hue_group":"red","lightness":0.402,"saturation":0.4927,"palette":["#b4743c","#7c4c1c","#845c2c","#a47444"],"color_groups":[{"hex":"#b4743c","weight":0.375,"lightness":0.4706,"saturation":0.5,"hue_group":"red"},{"hex":"#7c4c1c","weight":0.25,"lightness":0.298,"saturation":0.6316,"hue_group":"yellow"},{"hex":"#845c2c","weight":0.2143,"lightness":0.3451,"saturation":0.5,"hue_group":"yellow"},{"hex":"#a47444","weight":0.1607,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/composter_top.png","family":"composter","relations":[{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.88},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.871},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.871},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.871},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.871},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.871},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.871},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.871},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.871},{"type":"color_neighbors","target":"minecraft:spruce_wall_sign","label":"Palette proche: Spruce Wall Sign","confidence":0.871},{"type":"color_neighbors","target":"minecraft:scaffolding","label":"Palette proche: Scaffolding","confidence":0.861},{"type":"color_neighbors","target":"minecraft:brown_concrete_powder","label":"Palette proche: Brown Concrete Powder","confidence":0.853},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.788},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.788},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.772},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.771},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.771},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.771},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.766},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.764},{"type":"color_bridge","target":"minecraft:stonecutter","label":"Pont de nuance par palette: Stonecutter","confidence":0.759},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.753},{"type":"color_analogous","target":"minecraft:glow_item_frame","label":"Couleurs analogues: Glow Item Frame","confidence":0.96},{"type":"color_analogous","target":"minecraft:farmland","label":"Couleurs analogues: Farmland","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone","label":"Couleurs analogues: Smooth Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_slab","label":"Couleurs analogues: Smooth Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_stairs","label":"Couleurs analogues: Smooth Red Sandstone Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.907},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.907},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.907},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.835},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.826},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.826},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.815},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.81},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.96},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.869},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.842},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.906},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.894},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.88},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.88},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.875},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.841},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.802},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.747},{"type":"value_contrast","target":"minecraft:cherry_trapdoor","label":"Contraste clair sombre: Cherry Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_sign","label":"Contraste clair sombre: Cherry Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_slab","label":"Contraste clair sombre: Cherry Slab","confidence":0.55}],"category":"utility"},{"id":"minecraft:conduit","name":"Conduit","entry_type":"block","description":"A conduit is a block that can be placed underwater and surrounded by prismarine to activate it. Once active, it empowers nearby players touching water or rain, prevents them from drowning, and attacks wet monsters.","history":[{"version":"1.13 18w15a","status":"added","notes":"Added conduits."}],"colors":{"primary":"#a08c71","dominant_hex":"#b48c6c","average_hex":"#a08c71","hue_group":"yellow","lightness":0.5353,"saturation":0.1983,"palette":["#b48c6c","#bcac94","#847454","#55452c","#b4a484","#c4bcb4"],"color_groups":[{"hex":"#b48c6c","weight":0.2361,"lightness":0.5647,"saturation":0.3243,"hue_group":"red"},{"hex":"#bcac94","weight":0.2361,"lightness":0.6588,"saturation":0.2299,"hue_group":"yellow"},{"hex":"#847454","weight":0.1597,"lightness":0.4235,"saturation":0.2222,"hue_group":"yellow"},{"hex":"#55452c","weight":0.1458,"lightness":0.2529,"saturation":0.3178,"hue_group":"yellow"},{"hex":"#b4a484","weight":0.1319,"lightness":0.6118,"saturation":0.2424,"hue_group":"yellow"},{"hex":"#c4bcb4","weight":0.0903,"lightness":0.7373,"saturation":0.1194,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/conduit.png","family":"conduit","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:loom","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fletching_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:daylight_detector","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:loom","label":"Palette proche: Loom","confidence":0.855},{"type":"color_neighbors","target":"minecraft:daylight_detector","label":"Palette proche: Daylight Detector","confidence":0.849},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.844},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.844},{"type":"color_neighbors","target":"minecraft:jungle_hanging_sign","label":"Palette proche: Jungle Hanging Sign","confidence":0.843},{"type":"color_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Palette proche: Jungle Wall Hanging Sign","confidence":0.843},{"type":"color_neighbors","target":"minecraft:stripped_jungle_log","label":"Palette proche: Stripped Jungle Log","confidence":0.843},{"type":"color_neighbors","target":"minecraft:stripped_jungle_wood","label":"Palette proche: Stripped Jungle Wood","confidence":0.843},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.84},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.84},{"type":"color_neighbors","target":"minecraft:raw_iron_block","label":"Palette proche: Raw Iron Block","confidence":0.837},{"type":"color_neighbors","target":"minecraft:dripstone_block","label":"Palette proche: Dripstone Block","confidence":0.831},{"type":"color_bridge","target":"minecraft:jungle_hanging_sign","label":"Pont de nuance par sous-ton: Jungle Hanging Sign","confidence":0.871},{"type":"color_bridge","target":"minecraft:jungle_wall_hanging_sign","label":"Pont de nuance par sous-ton: Jungle Wall Hanging Sign","confidence":0.871},{"type":"color_bridge","target":"minecraft:stripped_jungle_log","label":"Pont de nuance par sous-ton: Stripped Jungle Log","confidence":0.871},{"type":"color_bridge","target":"minecraft:stripped_jungle_wood","label":"Pont de nuance par sous-ton: Stripped Jungle Wood","confidence":0.871},{"type":"color_bridge","target":"minecraft:raw_iron_block","label":"Pont de nuance par sous-ton: Raw Iron Block","confidence":0.866},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par palette: Loom","confidence":0.86},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par palette: Daylight Detector","confidence":0.86},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par palette: Exposed Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par palette: Waxed Exposed Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par palette: Exposed Copper Chain","confidence":0.86},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55}],"category":"utility"},{"id":"minecraft:cooked_beef","name":"Cooked Beef","entry_type":"item","description":"Steak is a food item obtained by cooking raw beef. Steak and cooked porkchops restore the most hunger out of all stackable foods.","history":[{"version":"1.8","status":"added","notes":"Added steak."}],"colors":{"primary":"#603626","dominant_hex":"#462419","average_hex":"#603626","hue_group":"red","lightness":0.2627,"saturation":0.4328,"palette":["#462419","#865139","#6d392c","#2c140c","#542c1c","#9c5c44"],"color_groups":[{"hex":"#462419","weight":0.2476,"lightness":0.1863,"saturation":0.4737,"hue_group":"red"},{"hex":"#865139","weight":0.2,"lightness":0.3745,"saturation":0.4031,"hue_group":"red"},{"hex":"#6d392c","weight":0.181,"lightness":0.3,"saturation":0.4248,"hue_group":"red"},{"hex":"#2c140c","weight":0.1429,"lightness":0.1098,"saturation":0.5714,"hue_group":"red"},{"hex":"#542c1c","weight":0.1333,"lightness":0.2196,"saturation":0.5,"hue_group":"red"},{"hex":"#9c5c44","weight":0.0952,"lightness":0.4392,"saturation":0.3929,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cooked_beef.png","family":"cooked_beef","relations":[{"type":"related_sets","target":"group:food","label":"Related set: food","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:enchanted_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:written_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_charge","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_pigstep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"food"},{"id":"minecraft:cooked_chicken","name":"Cooked Chicken","entry_type":"item","description":"Cooked chicken is a food item that is obtained by cooking raw chicken.","history":[{"version":"1.8","status":"added","notes":"Added cooked chicken."}],"colors":{"primary":"#b1704b","dominant_hex":"#954a28","average_hex":"#b1704b","hue_group":"red","lightness":0.4941,"saturation":0.4048,"palette":["#954a28","#dc9d7d","#cc7c4c","#5c2c14","#e5bea5","#d48c64"],"color_groups":[{"hex":"#954a28","weight":0.3409,"lightness":0.3706,"saturation":0.5767,"hue_group":"red"},{"hex":"#dc9d7d","weight":0.1667,"lightness":0.6765,"saturation":0.5758,"hue_group":"red"},{"hex":"#cc7c4c","weight":0.1439,"lightness":0.549,"saturation":0.5565,"hue_group":"red"},{"hex":"#5c2c14","weight":0.1288,"lightness":0.2196,"saturation":0.6429,"hue_group":"red"},{"hex":"#e5bea5","weight":0.1136,"lightness":0.7725,"saturation":0.5517,"hue_group":"red"},{"hex":"#d48c64","weight":0.1061,"lightness":0.6118,"saturation":0.5657,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cooked_chicken.png","family":"cooked_chicken","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_horse_armor","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:cooked_cod","name":"Cooked Cod","entry_type":"item","description":"Cooked cod is a food item obtained by cooking raw cod.","history":[{"version":"v1.2.0 ?","status":"added","notes":"Added cooked fish, which restores 5 HP ."},{"version":"18w08b","status":"added","notes":"added as mobs , which drop their cooked item form when killed with fire ."}],"colors":{"primary":"#b59977","dominant_hex":"#ad8c62","average_hex":"#b59977","hue_group":"yellow","lightness":0.5882,"saturation":0.2952,"palette":["#ad8c62","#8c6043","#d4c4ac","#e4e4c4","#c4a474","#ccbc8c"],"color_groups":[{"hex":"#ad8c62","weight":0.3176,"lightness":0.5314,"saturation":0.3138,"hue_group":"yellow"},{"hex":"#8c6043","weight":0.2588,"lightness":0.4059,"saturation":0.3527,"hue_group":"red"},{"hex":"#d4c4ac","weight":0.1882,"lightness":0.7529,"saturation":0.3175,"hue_group":"yellow"},{"hex":"#e4e4c4","weight":0.1059,"lightness":0.8314,"saturation":0.3721,"hue_group":"yellow"},{"hex":"#c4a474","weight":0.0706,"lightness":0.6118,"saturation":0.404,"hue_group":"yellow"},{"hex":"#ccbc8c","weight":0.0588,"lightness":0.6745,"saturation":0.3855,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cooked_cod.png","family":"cooked_cod","relations":[{"type":"related_sets","target":"group:food","label":"Related set: food","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:trader_llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_porkchop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:eye_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_foot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_seeds","label":"Shared hue group: yellow","confidence":0.55}],"category":"food"},{"id":"minecraft:cooked_mutton","name":"Cooked Mutton","entry_type":"item","description":"Cooked mutton is a food item obtained from cooking raw mutton.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added cooked mutton."}],"colors":{"primary":"#744635","dominant_hex":"#a17159","average_hex":"#744635","hue_group":"red","lightness":0.3314,"saturation":0.3728,"palette":["#a17159","#874c3f","#542c1c","#713f2c","#2c140c","#9c6444"],"color_groups":[{"hex":"#a17159","weight":0.2075,"lightness":0.4902,"saturation":0.288,"hue_group":"red"},{"hex":"#874c3f","weight":0.1981,"lightness":0.3882,"saturation":0.3636,"hue_group":"red"},{"hex":"#542c1c","weight":0.1698,"lightness":0.2196,"saturation":0.5,"hue_group":"red"},{"hex":"#713f2c","weight":0.1698,"lightness":0.3078,"saturation":0.4395,"hue_group":"red"},{"hex":"#2c140c","weight":0.1415,"lightness":0.1098,"saturation":0.5714,"hue_group":"red"},{"hex":"#9c6444","weight":0.1132,"lightness":0.4392,"saturation":0.3929,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cooked_mutton.png","family":"cooked_mutton","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:blade_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:angler_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:burn_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:cooked_porkchop","name":"Cooked Porkchop","entry_type":"item","description":"A cooked porkchop is a food item obtained by cooking a raw porkchop. Cooked porkchops and steak restore the most hunger out of all stackable foods.","history":[{"version":"20100219","status":"added","notes":"Added cooked porkchops."}],"colors":{"primary":"#ae9765","dominant_hex":"#d1c189","average_hex":"#ae9765","hue_group":"yellow","lightness":0.5392,"saturation":0.3106,"palette":["#d1c189","#9c7c44","#c1a974","#e0d0a8","#5c4c24","#8b6b33"],"color_groups":[{"hex":"#d1c189","weight":0.1961,"lightness":0.6784,"saturation":0.439,"hue_group":"yellow"},{"hex":"#9c7c44","weight":0.1863,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#c1a974","weight":0.1863,"lightness":0.6059,"saturation":0.3831,"hue_group":"yellow"},{"hex":"#e0d0a8","weight":0.1765,"lightness":0.7686,"saturation":0.4746,"hue_group":"yellow"},{"hex":"#5c4c24","weight":0.1373,"lightness":0.251,"saturation":0.4375,"hue_group":"yellow"},{"hex":"#8b6b33","weight":0.1176,"lightness":0.3725,"saturation":0.4632,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cooked_porkchop.png","family":"cooked_porkchop","relations":[{"type":"related_sets","target":"group:food","label":"Related set: food","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_foot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trader_llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_hide","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:totem_of_undying","label":"Shared hue group: yellow","confidence":0.55}],"category":"food"},{"id":"minecraft:cooked_rabbit","name":"Cooked Rabbit","entry_type":"item","description":"Cooked rabbit is a food item that can be eaten by the player.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added cooked rabbit. It is used to craft rabbit stew ."}],"colors":{"primary":"#aa7351","dominant_hex":"#e4bca4","average_hex":"#aa7351","hue_group":"red","lightness":0.4922,"saturation":0.3546,"palette":["#e4bca4","#5c2c14","#823f1f","#d48c64","#dca484","#ac5c34"],"color_groups":[{"hex":"#e4bca4","weight":0.2148,"lightness":0.7686,"saturation":0.5424,"hue_group":"red"},{"hex":"#5c2c14","weight":0.2,"lightness":0.2196,"saturation":0.6429,"hue_group":"red"},{"hex":"#823f1f","weight":0.2,"lightness":0.3157,"saturation":0.6149,"hue_group":"red"},{"hex":"#d48c64","weight":0.1704,"lightness":0.6118,"saturation":0.5657,"hue_group":"red"},{"hex":"#dca484","weight":0.1111,"lightness":0.6902,"saturation":0.557,"hue_group":"red"},{"hex":"#ac5c34","weight":0.1037,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cooked_rabbit.png","family":"cooked_rabbit","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:hoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_horse_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bolt_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brush","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:cooked_salmon","name":"Cooked Salmon","entry_type":"item","description":"Cooked salmon is a food item obtained by cooking raw salmon.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added cooked salmon."},{"version":"1.13 18w08b","status":"added","notes":"added as a mob , which drops raw salmon when killed (cooked while on fire )."}],"colors":{"primary":"#785338","dominant_hex":"#6d3f22","average_hex":"#785338","hue_group":"red","lightness":0.3451,"saturation":0.3636,"palette":["#6d3f22","#b14921","#cb8559","#252a25","#597361","#3c4c44"],"color_groups":[{"hex":"#6d3f22","weight":0.2333,"lightness":0.2804,"saturation":0.5245,"hue_group":"red"},{"hex":"#b14921","weight":0.2,"lightness":0.4118,"saturation":0.6857,"hue_group":"red"},{"hex":"#cb8559","weight":0.1667,"lightness":0.5725,"saturation":0.5229,"hue_group":"red"},{"hex":"#252a25","weight":0.1444,"lightness":0.1549,"saturation":0.0633,"hue_group":"neutral"},{"hex":"#597361","weight":0.1333,"lightness":0.4,"saturation":0.1275,"hue_group":"green"},{"hex":"#3c4c44","weight":0.1222,"lightness":0.2667,"saturation":0.1176,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cooked_salmon.png","family":"cooked_salmon","relations":[{"type":"related_sets","target":"group:food","label":"Related set: food","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:red_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blade_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:angler_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:burn_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"food"},{"id":"minecraft:cookie","name":"Cookie","entry_type":"item","description":"Cookies are food items that can be obtained in large quantities, but do not restore hunger or saturation significantly.","history":[{"version":"1.4","status":"added","notes":"Added cookies."}],"colors":{"primary":"#b57039","dominant_hex":"#ec9c54","average_hex":"#b57039","hue_group":"red","lightness":0.4667,"saturation":0.521,"palette":["#ec9c54","#dc843c","#bc7434","#442c14","#8c4c2c","#502c18"],"color_groups":[{"hex":"#ec9c54","weight":0.3214,"lightness":0.6275,"saturation":0.8,"hue_group":"red"},{"hex":"#dc843c","weight":0.2286,"lightness":0.549,"saturation":0.6957,"hue_group":"red"},{"hex":"#bc7434","weight":0.15,"lightness":0.4706,"saturation":0.5667,"hue_group":"red"},{"hex":"#442c14","weight":0.1071,"lightness":0.1725,"saturation":0.5455,"hue_group":"yellow"},{"hex":"#8c4c2c","weight":0.1071,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"},{"hex":"#502c18","weight":0.0857,"lightness":0.2039,"saturation":0.5385,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cookie.png","family":"cookie","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glistering_melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chestplate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nautilus_armor","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:copper_axe","name":"Copper Axe","entry_type":"item","description":"A copper axe is a variant of axe crafted from copper ingots. It can be used to cut down trees faster, to strip logs and scrape copper-based blocks, and as a melee weapon that disables shields. It is the fourth-highest tier of axe, having higher mining efficiency, durability, and enchantability than a stone axe.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper axes."}],"colors":{"primary":"#79472b","dominant_hex":"#533018","average_hex":"#79472b","hue_group":"red","lightness":0.3216,"saturation":0.4756,"palette":["#533018","#2c1c0c","#7f5323","#d46c4c","#441c14","#f5957d"],"color_groups":[{"hex":"#533018","weight":0.2667,"lightness":0.2098,"saturation":0.5514,"hue_group":"red"},{"hex":"#2c1c0c","weight":0.1667,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#7f5323","weight":0.1667,"lightness":0.3176,"saturation":0.5679,"hue_group":"yellow"},{"hex":"#d46c4c","weight":0.1667,"lightness":0.5647,"saturation":0.6126,"hue_group":"red"},{"hex":"#441c14","weight":0.1167,"lightness":0.1725,"saturation":0.5455,"hue_group":"red"},{"hex":"#f5957d","weight":0.1167,"lightness":0.7255,"saturation":0.8571,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_axe.png","family":"copper_tools","relations":[{"type":"variants","target":"minecraft:copper_hoe","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_hoe","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_pickaxe","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_pickaxe","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_shovel","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_shovel","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_sword","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_sword","label":"Related set: copper_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:copper_tools","label":"Related set: copper_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_pigstep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_chest_boat","label":"Shared hue group: red","confidence":0.55}],"category":"tool"},{"id":"minecraft:copper_bars","name":"Copper Bars","entry_type":"block","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper bars."}],"colors":{"primary":"#9c5137","dominant_hex":"#944c34","average_hex":"#9c5137","hue_group":"red","lightness":0.4137,"saturation":0.4787,"palette":["#944c34","#843c24","#a45c44","#b46444","#cc7454"],"color_groups":[{"hex":"#944c34","weight":0.319,"lightness":0.3922,"saturation":0.48,"hue_group":"red"},{"hex":"#843c24","weight":0.25,"lightness":0.3294,"saturation":0.5714,"hue_group":"red"},{"hex":"#a45c44","weight":0.1724,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#b46444","weight":0.1293,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#cc7454","weight":0.1293,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_bars.png","family":"copper_bars","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_copper_bars","label":"Palette proche: Waxed Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chain","label":"Palette proche: Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_chain","label":"Palette proche: Waxed Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_copper","label":"Palette proche: Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_chiseled_copper","label":"Palette proche: Waxed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.935},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.935},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.928},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.928},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.928},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.928},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.928},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.789},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.789},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.786},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.785},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.785},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.777},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.777},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.777},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.777},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.777},{"type":"color_analogous","target":"minecraft:waxed_copper_bars","label":"Couleurs analogues: Waxed Copper Bars","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chain","label":"Couleurs analogues: Copper Chain","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_chain","label":"Couleurs analogues: Waxed Copper Chain","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_grate","label":"Couleurs analogues: Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_grate","label":"Couleurs analogues: Waxed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_copper","label":"Couleurs analogues: Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_chiseled_copper","label":"Couleurs analogues: Waxed Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.908},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.857},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.842},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.946},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.94},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.928},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.928},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.928},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.928},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.92},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.771},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.957},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.93},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.93},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.915},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.896},{"type":"value_contrast","target":"minecraft:cherry_trapdoor","label":"Contraste clair sombre: Cherry Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_sign","label":"Contraste clair sombre: Cherry Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_slab","label":"Contraste clair sombre: Cherry Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:copper_block","name":"Copper Block","entry_type":"block","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed copper blocks and three variants of waxed copper blocks."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#c06c50","dominant_hex":"#9d553d","average_hex":"#c06c50","hue_group":"red","lightness":0.5333,"saturation":0.4706,"palette":["#9d553d","#cc7454","#c46c4c","#d47c5c","#b46444","#e4846c"],"color_groups":[{"hex":"#9d553d","weight":0.2109,"lightness":0.4275,"saturation":0.4404,"hue_group":"red"},{"hex":"#cc7454","weight":0.1836,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#c46c4c","weight":0.1758,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1484,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#b46444","weight":0.1445,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#e4846c","weight":0.1367,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_block.png","family":"copper_block","relations":[{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_chest","label":"Palette proche: Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_golem_statue","label":"Palette proche: Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_block","label":"Palette proche: Waxed Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_chest","label":"Palette proche: Waxed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Palette proche: Waxed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.779},{"type":"color_analogous","target":"minecraft:copper_chest","label":"Couleurs analogues: Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_golem_statue","label":"Couleurs analogues: Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_block","label":"Couleurs analogues: Waxed Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_chest","label":"Couleurs analogues: Waxed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_golem_statue","label":"Couleurs analogues: Waxed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_grate","label":"Couleurs analogues: Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_grate","label":"Couleurs analogues: Waxed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.945},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.893},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.871},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.828},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.929},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.924},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.911},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.911},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.911},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.911},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.903},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.754},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.95},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.95},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.933},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.911},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:copper_boots","name":"Copper Boots","entry_type":"item","description":"Copper boots are a variant of boots crafted from copper ingots. They are the sixth-highest tier of boots, having the same armor points as leather and golden boots but with higher durability.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper boots."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#85442f","dominant_hex":"#441c14","average_hex":"#85442f","hue_group":"red","lightness":0.3529,"saturation":0.4778,"palette":["#441c14","#5c2c1c","#d46c4c","#9c4c34","#fcaa96","#843c24"],"color_groups":[{"hex":"#441c14","weight":0.2955,"lightness":0.1725,"saturation":0.5455,"hue_group":"red"},{"hex":"#5c2c1c","weight":0.25,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#d46c4c","weight":0.1932,"lightness":0.5647,"saturation":0.6126,"hue_group":"red"},{"hex":"#9c4c34","weight":0.125,"lightness":0.4078,"saturation":0.5,"hue_group":"red"},{"hex":"#fcaa96","weight":0.0909,"lightness":0.7882,"saturation":0.9444,"hue_group":"red"},{"hex":"#843c24","weight":0.0455,"lightness":0.3294,"saturation":0.5714,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_boots.png","family":"copper_armor","relations":[{"type":"variants","target":"minecraft:copper_chestplate","label":"Same family: copper_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_chestplate","label":"Related set: copper_armor","confidence":0.8},{"type":"variants","target":"minecraft:copper_helmet","label":"Same family: copper_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_helmet","label":"Related set: copper_armor","confidence":0.8},{"type":"variants","target":"minecraft:copper_leggings","label":"Same family: copper_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_leggings","label":"Related set: copper_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:copper_armor","label":"Related set: copper_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_pigstep","label":"Shared hue group: red","confidence":0.55}],"category":"armor"},{"id":"minecraft:copper_bulb","name":"Copper Bulb","entry_type":"block","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","history":[{"version":"1.20.3","status":"added","notes":"Added copper bulbs behind the \" Update 1.21 \" experimental data pack ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb copper bulbs at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#9c5739","dominant_hex":"#c26c4c","average_hex":"#9c5739","hue_group":"red","lightness":0.4176,"saturation":0.4648,"palette":["#c26c4c","#5c3414","#9b533b","#df8267","#74441c","#844c2c"],"color_groups":[{"hex":"#c26c4c","weight":0.25,"lightness":0.5294,"saturation":0.4917,"hue_group":"red"},{"hex":"#5c3414","weight":0.1758,"lightness":0.2196,"saturation":0.6429,"hue_group":"red"},{"hex":"#9b533b","weight":0.1719,"lightness":0.4196,"saturation":0.4486,"hue_group":"red"},{"hex":"#df8267","weight":0.1562,"lightness":0.6392,"saturation":0.6522,"hue_group":"red"},{"hex":"#74441c","weight":0.1406,"lightness":0.2824,"saturation":0.6111,"hue_group":"red"},{"hex":"#844c2c","weight":0.1055,"lightness":0.3451,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_bulb.png","family":"copper_bulb","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_copper_bulb","label":"Palette proche: Waxed Copper Bulb","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_copper","label":"Palette proche: Chiseled Copper","confidence":0.911},{"type":"color_neighbors","target":"minecraft:waxed_chiseled_copper","label":"Palette proche: Waxed Chiseled Copper","confidence":0.911},{"type":"color_neighbors","target":"minecraft:acacia_door","label":"Palette proche: Acacia Door","confidence":0.888},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.887},{"type":"color_neighbors","target":"minecraft:copper_bars","label":"Palette proche: Copper Bars","confidence":0.881},{"type":"color_neighbors","target":"minecraft:waxed_copper_bars","label":"Palette proche: Waxed Copper Bars","confidence":0.881},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.879},{"type":"color_neighbors","target":"minecraft:copper_trapdoor","label":"Palette proche: Copper Trapdoor","confidence":0.879},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.879},{"type":"color_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Palette proche: Waxed Copper Trapdoor","confidence":0.879},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.877},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.768},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.768},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.763},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.763},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.755},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.755},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.755},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.755},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.755},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.755},{"type":"color_analogous","target":"minecraft:waxed_copper_bulb","label":"Couleurs analogues: Waxed Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_shelf","label":"Couleurs analogues: Acacia Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_door","label":"Couleurs analogues: Acacia Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_hanging_sign","label":"Couleurs analogues: Acacia Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_hanging_sign","label":"Couleurs analogues: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_acacia_log","label":"Couleurs analogues: Stripped Acacia Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_acacia_wood","label":"Couleurs analogues: Stripped Acacia Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:decorated_pot","label":"Couleurs analogues: Decorated Pot","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.935},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.918},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.915},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.913},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.901},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.901},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.854},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.954},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.954},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.954},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.954},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.945},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.93},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.877},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.96},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.875},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.875},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.854},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.842},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.829},{"type":"value_contrast","target":"minecraft:cherry_trapdoor","label":"Contraste clair sombre: Cherry Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_sign","label":"Contraste clair sombre: Cherry Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_slab","label":"Contraste clair sombre: Cherry Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:copper_chain","name":"Copper Chain","entry_type":"block","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper chains."}],"colors":{"primary":"#984f37","dominant_hex":"#84442c","average_hex":"#984f37","hue_group":"red","lightness":0.4059,"saturation":0.4686,"palette":["#84442c","#a45c44","#b46444"],"color_groups":[{"hex":"#84442c","weight":0.4643,"lightness":0.3451,"saturation":0.5,"hue_group":"red"},{"hex":"#a45c44","weight":0.4464,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#b46444","weight":0.0893,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_chain.png","family":"copper_chain","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_copper_chain","label":"Palette proche: Waxed Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_bars","label":"Palette proche: Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_bars","label":"Palette proche: Waxed Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_copper","label":"Palette proche: Chiseled Copper","confidence":0.914},{"type":"color_neighbors","target":"minecraft:waxed_chiseled_copper","label":"Palette proche: Waxed Chiseled Copper","confidence":0.914},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.911},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.902},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.902},{"type":"color_neighbors","target":"minecraft:stripped_acacia_log","label":"Palette proche: Stripped Acacia Log","confidence":0.902},{"type":"color_neighbors","target":"minecraft:stripped_acacia_wood","label":"Palette proche: Stripped Acacia Wood","confidence":0.902},{"type":"color_neighbors","target":"minecraft:decorated_pot","label":"Palette proche: Decorated Pot","confidence":0.901},{"type":"color_neighbors","target":"minecraft:terracotta","label":"Palette proche: Terracotta","confidence":0.901},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.804},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.799},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.798},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.786},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.786},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.781},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.781},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.778},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.778},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.778},{"type":"color_analogous","target":"minecraft:waxed_copper_chain","label":"Couleurs analogues: Waxed Copper Chain","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_bars","label":"Couleurs analogues: Copper Bars","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_bars","label":"Couleurs analogues: Waxed Copper Bars","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_copper","label":"Couleurs analogues: Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_chiseled_copper","label":"Couleurs analogues: Waxed Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chest","label":"Couleurs analogues: Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_golem_statue","label":"Couleurs analogues: Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.946},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.946},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.887},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.876},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.823},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.923},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.918},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.905},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.905},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.905},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.905},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.897},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.749},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.956},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.956},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.939},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.918},{"type":"value_contrast","target":"minecraft:cherry_trapdoor","label":"Contraste clair sombre: Cherry Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_sign","label":"Contraste clair sombre: Cherry Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_slab","label":"Contraste clair sombre: Cherry Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:copper_chest","name":"Copper Chest","entry_type":"block","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper chests."}],"colors":{"primary":"#c06c50","dominant_hex":"#9d553d","average_hex":"#c06c50","hue_group":"red","lightness":0.5333,"saturation":0.4706,"palette":["#9d553d","#cc7454","#c46c4c","#d47c5c","#b46444","#e4846c"],"color_groups":[{"hex":"#9d553d","weight":0.2109,"lightness":0.4275,"saturation":0.4404,"hue_group":"red"},{"hex":"#cc7454","weight":0.1836,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#c46c4c","weight":0.1758,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1484,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#b46444","weight":0.1445,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#e4846c","weight":0.1367,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_block.png","family":"copper_chest","relations":[{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_golem_statue","label":"Palette proche: Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_block","label":"Palette proche: Waxed Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_chest","label":"Palette proche: Waxed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Palette proche: Waxed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.779},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_golem_statue","label":"Couleurs analogues: Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_block","label":"Couleurs analogues: Waxed Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_chest","label":"Couleurs analogues: Waxed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_golem_statue","label":"Couleurs analogues: Waxed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_grate","label":"Couleurs analogues: Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_grate","label":"Couleurs analogues: Waxed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.945},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.893},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.871},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.828},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.929},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.924},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.911},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.911},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.911},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.911},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.903},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.754},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.95},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.95},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.933},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.911},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:copper_chestplate","name":"Copper Chestplate","entry_type":"item","description":"A copper chestplate is a variant of chestplate crafted from copper ingots. It is the sixth-highest tier of chestplate, having higher armor points and durability than a leather tunic.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper chestplate."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#a1543b","dominant_hex":"#d46c4c","average_hex":"#a1543b","hue_group":"red","lightness":0.4314,"saturation":0.4636,"palette":["#d46c4c","#5c2c1c","#441c14","#9c4c34","#fca691","#843c24"],"color_groups":[{"hex":"#d46c4c","weight":0.3333,"lightness":0.5647,"saturation":0.6126,"hue_group":"red"},{"hex":"#5c2c1c","weight":0.1739,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#441c14","weight":0.1594,"lightness":0.1725,"saturation":0.5455,"hue_group":"red"},{"hex":"#9c4c34","weight":0.1522,"lightness":0.4078,"saturation":0.5,"hue_group":"red"},{"hex":"#fca691","weight":0.1232,"lightness":0.7784,"saturation":0.9469,"hue_group":"red"},{"hex":"#843c24","weight":0.058,"lightness":0.3294,"saturation":0.5714,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_chestplate.png","family":"copper_armor","relations":[{"type":"variants","target":"minecraft:copper_boots","label":"Same family: copper_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_boots","label":"Related set: copper_armor","confidence":0.8},{"type":"variants","target":"minecraft:copper_helmet","label":"Same family: copper_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_helmet","label":"Related set: copper_armor","confidence":0.8},{"type":"variants","target":"minecraft:copper_leggings","label":"Same family: copper_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_leggings","label":"Related set: copper_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:copper_armor","label":"Related set: copper_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:frog_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55}],"category":"armor"},{"id":"minecraft:copper_door","name":"Copper Door","entry_type":"block","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","history":[{"version":"1.20.3","status":"added","notes":"Added copper doors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#c16d53","dominant_hex":"#cc7454","average_hex":"#c16d53","hue_group":"red","lightness":0.5412,"saturation":0.4701,"palette":["#cc7454","#b16244","#e4846c","#90543e","#d47c5c","#c46c4c"],"color_groups":[{"hex":"#cc7454","weight":0.2692,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#b16244","weight":0.1923,"lightness":0.4804,"saturation":0.4449,"hue_group":"red"},{"hex":"#e4846c","weight":0.1827,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#90543e","weight":0.1635,"lightness":0.4039,"saturation":0.3981,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1442,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#c46c4c","weight":0.0481,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_door_top.png","family":"copper","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_copper_door","label":"Palette proche: Waxed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chest","label":"Palette proche: Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_golem_statue","label":"Palette proche: Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_block","label":"Palette proche: Waxed Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_chest","label":"Palette proche: Waxed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Palette proche: Waxed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.823},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.823},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.795},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.795},{"type":"color_analogous","target":"minecraft:waxed_copper_door","label":"Couleurs analogues: Waxed Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_slab","label":"Couleurs analogues: Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_stairs","label":"Couleurs analogues: Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper","label":"Couleurs analogues: Waxed Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_slab","label":"Couleurs analogues: Waxed Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_stairs","label":"Couleurs analogues: Waxed Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.951},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.947},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.924},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.924},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.899},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.865},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.816},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.898},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.892},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.88},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.88},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.88},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.88},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.871},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.723},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.953},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.947},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.947},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.945},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:copper_golem","name":"Copper Golem","entry_type":"mob","description":"A copper golem is a buildable passive mob that takes items out of copper chests, and attempts to store them in nearby wooden chests and trapped chests. A chest examined by a copper golem must either be empty, or contain the item type it is holding, for the golem to place anything inside of it. If not waxed, a copper golem oxidizes over time and eventually turns into a copper golem statue, dropping its currently held items.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper golems."}],"colors":{"primary":"#ab5c43","dominant_hex":"#853d2d","average_hex":"#ab5c43","hue_group":"red","lightness":0.4667,"saturation":0.437,"palette":["#853d2d","#e4846c","#a85840","#d47c5c","#68230c","#bc6c54"],"color_groups":[{"hex":"#853d2d","weight":0.2183,"lightness":0.349,"saturation":0.4944,"hue_group":"red"},{"hex":"#e4846c","weight":0.1949,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#a85840","weight":0.1662,"lightness":0.4549,"saturation":0.4483,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1563,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#68230c","weight":0.1511,"lightness":0.2275,"saturation":0.7931,"hue_group":"red"},{"hex":"#bc6c54","weight":0.1133,"lightness":0.5333,"saturation":0.437,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/copper_golem/copper_golem.png","family":"copper_golem","relations":[{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:copper_golem_spawn_egg","name":"Copper Golem Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#9b4f37","dominant_hex":"#7c341c","average_hex":"#9b4f37","hue_group":"red","lightness":0.4118,"saturation":0.4762,"palette":["#7c341c","#944c34","#ac5c44","#e4846c","#5c240c","#cc7454"],"color_groups":[{"hex":"#7c341c","weight":0.2685,"lightness":0.298,"saturation":0.6316,"hue_group":"red"},{"hex":"#944c34","weight":0.1574,"lightness":0.3922,"saturation":0.48,"hue_group":"red"},{"hex":"#ac5c44","weight":0.1574,"lightness":0.4706,"saturation":0.4333,"hue_group":"red"},{"hex":"#e4846c","weight":0.1574,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#5c240c","weight":0.1296,"lightness":0.2039,"saturation":0.7692,"hue_group":"red"},{"hex":"#cc7454","weight":0.1296,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_golem_spawn_egg.png","family":"copper_golem_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:copper_chestplate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:copper_golem_statue","name":"Copper Golem Statue","entry_type":"block","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper golem statues."}],"colors":{"primary":"#c06c50","dominant_hex":"#9d553d","average_hex":"#c06c50","hue_group":"red","lightness":0.5333,"saturation":0.4706,"palette":["#9d553d","#cc7454","#c46c4c","#d47c5c","#b46444","#e4846c"],"color_groups":[{"hex":"#9d553d","weight":0.2109,"lightness":0.4275,"saturation":0.4404,"hue_group":"red"},{"hex":"#cc7454","weight":0.1836,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#c46c4c","weight":0.1758,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1484,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#b46444","weight":0.1445,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#e4846c","weight":0.1367,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_block.png","family":"copper_golem_statue","relations":[{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chest","label":"Palette proche: Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_block","label":"Palette proche: Waxed Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_chest","label":"Palette proche: Waxed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Palette proche: Waxed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.779},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chest","label":"Couleurs analogues: Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_block","label":"Couleurs analogues: Waxed Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_chest","label":"Couleurs analogues: Waxed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_golem_statue","label":"Couleurs analogues: Waxed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_grate","label":"Couleurs analogues: Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_grate","label":"Couleurs analogues: Waxed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.945},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.893},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.871},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.828},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.929},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.924},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.911},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.911},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.911},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.911},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.903},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.754},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.95},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.95},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.933},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.911},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:copper_grate","name":"Copper Grate","entry_type":"block","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","history":[{"version":"1.20.3","status":"added","notes":"Added copper grates behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#c06c4f","dominant_hex":"#9c543c","average_hex":"#c06c4f","hue_group":"red","lightness":0.5314,"saturation":0.4728,"palette":["#9c543c","#cc7454","#d47c5c","#c46c4c","#b46444","#e4846c"],"color_groups":[{"hex":"#9c543c","weight":0.2179,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#cc7454","weight":0.2179,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1788,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#c46c4c","weight":0.1508,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"},{"hex":"#b46444","weight":0.1285,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#e4846c","weight":0.1061,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_grate.png","family":"copper_grate","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chest","label":"Palette proche: Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_golem_statue","label":"Palette proche: Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_block","label":"Palette proche: Waxed Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_chest","label":"Palette proche: Waxed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Palette proche: Waxed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.779},{"type":"color_analogous","target":"minecraft:waxed_copper_grate","label":"Couleurs analogues: Waxed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chest","label":"Couleurs analogues: Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_golem_statue","label":"Couleurs analogues: Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_block","label":"Couleurs analogues: Waxed Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_chest","label":"Couleurs analogues: Waxed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_golem_statue","label":"Couleurs analogues: Waxed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.932},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.906},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.858},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.841},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.939},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.918},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.77},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.959},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.933},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.933},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.916},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.895},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_stairs","label":"Contraste clair sombre: Dark Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:copper_helmet","name":"Copper Helmet","entry_type":"item","description":"A copper helmet is a variant of helmet that is crafted from copper ingots. It is the sixth-highest tier of helmet, having the same armor points as a golden helmet but with higher durability.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper helmet."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#7c3e2a","dominant_hex":"#441c14","average_hex":"#7c3e2a","hue_group":"red","lightness":0.3255,"saturation":0.494,"palette":["#441c14","#5c2c1c","#d46c4c","#9c4c34","#843c24","#fca792"],"color_groups":[{"hex":"#441c14","weight":0.3462,"lightness":0.1725,"saturation":0.5455,"hue_group":"red"},{"hex":"#5c2c1c","weight":0.2436,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#d46c4c","weight":0.1667,"lightness":0.5647,"saturation":0.6126,"hue_group":"red"},{"hex":"#9c4c34","weight":0.1154,"lightness":0.4078,"saturation":0.5,"hue_group":"red"},{"hex":"#843c24","weight":0.0641,"lightness":0.3294,"saturation":0.5714,"hue_group":"red"},{"hex":"#fca792","weight":0.0641,"lightness":0.7804,"saturation":0.9464,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_helmet.png","family":"copper_armor","relations":[{"type":"variants","target":"minecraft:copper_boots","label":"Same family: copper_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_boots","label":"Related set: copper_armor","confidence":0.8},{"type":"variants","target":"minecraft:copper_chestplate","label":"Same family: copper_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_chestplate","label":"Related set: copper_armor","confidence":0.8},{"type":"variants","target":"minecraft:copper_leggings","label":"Same family: copper_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_leggings","label":"Related set: copper_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:copper_armor","label":"Related set: copper_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_pigstep","label":"Shared hue group: red","confidence":0.55}],"category":"armor"},{"id":"minecraft:copper_hoe","name":"Copper Hoe","entry_type":"item","description":"A copper hoe is a variant of hoe that is crafted from copper ingots. It is used to till dirt-related blocks into farmland, and to break leaves, haybales, and sculk-related blocks faster. It is the fourth-highest tier of hoe, having higher mining efficiency, durability, and enchantability than a stone hoe.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper hoe."}],"colors":{"primary":"#684023","dominant_hex":"#2c1c0c","average_hex":"#684023","hue_group":"red","lightness":0.2725,"saturation":0.4964,"palette":["#2c1c0c","#4c3414","#7c5820","#e07c60","#5c2c1c","#441c14"],"color_groups":[{"hex":"#2c1c0c","weight":0.2157,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.1961,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#7c5820","weight":0.1961,"lightness":0.3059,"saturation":0.5897,"hue_group":"yellow"},{"hex":"#e07c60","weight":0.1765,"lightness":0.6275,"saturation":0.6737,"hue_group":"red"},{"hex":"#5c2c1c","weight":0.1176,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#441c14","weight":0.098,"lightness":0.1725,"saturation":0.5455,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_hoe.png","family":"copper_tools","relations":[{"type":"variants","target":"minecraft:copper_axe","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_axe","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_pickaxe","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_pickaxe","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_shovel","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_shovel","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_sword","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_sword","label":"Related set: copper_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:copper_tools","label":"Related set: copper_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berries","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa_beans","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_pigstep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_book","label":"Shared hue group: red","confidence":0.55}],"category":"tool"},{"id":"minecraft:copper_horse_armor","name":"Copper Horse Armor","entry_type":"item","description":"Copper horse armor is the fifth-strongest tier of horse armor. Unlike other copper items, it cannot be crafted and is only obtainable from chest loot in various structures.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper horse armor."}],"colors":{"primary":"#b37f62","dominant_hex":"#9c4c34","average_hex":"#b37f62","hue_group":"red","lightness":0.5431,"saturation":0.3476,"palette":["#9c4c34","#fca894","#d46c4c","#4a9d88","#e47c54","#6cc49c"],"color_groups":[{"hex":"#9c4c34","weight":0.2809,"lightness":0.4078,"saturation":0.5,"hue_group":"red"},{"hex":"#fca894","weight":0.2022,"lightness":0.7843,"saturation":0.9455,"hue_group":"red"},{"hex":"#d46c4c","weight":0.1798,"lightness":0.5647,"saturation":0.6126,"hue_group":"red"},{"hex":"#4a9d88","weight":0.1461,"lightness":0.4529,"saturation":0.3593,"hue_group":"cyan"},{"hex":"#e47c54","weight":0.1124,"lightness":0.6118,"saturation":0.7273,"hue_group":"red"},{"hex":"#6cc49c","weight":0.0787,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_horse_armor.png","family":"copper_horse_armor","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:hoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brush","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bolt_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_dye","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:copper_ingot","name":"Copper Ingot","entry_type":"item","description":"Copper ingots are metal ingots obtained from smelting raw copper and from killing drowned or copper golems.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added copper ingots."}],"colors":{"primary":"#b65d3f","dominant_hex":"#c45c34","average_hex":"#b65d3f","hue_group":"red","lightness":0.4804,"saturation":0.4857,"palette":["#c45c34","#97442c","#9c4c34","#e47c54","#fc9f87","#6c3424"],"color_groups":[{"hex":"#c45c34","weight":0.2222,"lightness":0.4863,"saturation":0.5806,"hue_group":"red"},{"hex":"#97442c","weight":0.2074,"lightness":0.3824,"saturation":0.5487,"hue_group":"red"},{"hex":"#9c4c34","weight":0.1926,"lightness":0.4078,"saturation":0.5,"hue_group":"red"},{"hex":"#e47c54","weight":0.1704,"lightness":0.6118,"saturation":0.7273,"hue_group":"red"},{"hex":"#fc9f87","weight":0.1111,"lightness":0.7588,"saturation":0.9512,"hue_group":"red"},{"hex":"#6c3424","weight":0.0963,"lightness":0.2824,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_ingot.png","family":"copper_ingot","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chestplate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glistering_melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:copper_lantern","name":"Copper Lantern","entry_type":"block","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper lanterns."}],"colors":{"primary":"#9e6c4c","dominant_hex":"#9c543c","average_hex":"#9e6c4c","hue_group":"red","lightness":0.4588,"saturation":0.3504,"palette":["#9c543c","#c46c4c","#a45c44","#84442c","#aae4ac","#5ea464"],"color_groups":[{"hex":"#9c543c","weight":0.283,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#c46c4c","weight":0.2075,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"},{"hex":"#a45c44","weight":0.1698,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#84442c","weight":0.1509,"lightness":0.3451,"saturation":0.5,"hue_group":"red"},{"hex":"#aae4ac","weight":0.1132,"lightness":0.7804,"saturation":0.5179,"hue_group":"green"},{"hex":"#5ea464","weight":0.0755,"lightness":0.5059,"saturation":0.2778,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_lantern.png","family":"copper_lantern","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_copper_lantern","label":"Palette proche: Waxed Copper Lantern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chain","label":"Palette proche: Copper Chain","confidence":0.857},{"type":"color_neighbors","target":"minecraft:waxed_copper_chain","label":"Palette proche: Waxed Copper Chain","confidence":0.857},{"type":"color_neighbors","target":"minecraft:chiseled_copper","label":"Palette proche: Chiseled Copper","confidence":0.842},{"type":"color_neighbors","target":"minecraft:waxed_chiseled_copper","label":"Palette proche: Waxed Chiseled Copper","confidence":0.842},{"type":"color_neighbors","target":"minecraft:copper_bars","label":"Palette proche: Copper Bars","confidence":0.835},{"type":"color_neighbors","target":"minecraft:waxed_copper_bars","label":"Palette proche: Waxed Copper Bars","confidence":0.835},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.83},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.83},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.825},{"type":"color_neighbors","target":"minecraft:copper_chest","label":"Palette proche: Copper Chest","confidence":0.825},{"type":"color_neighbors","target":"minecraft:copper_golem_statue","label":"Palette proche: Copper Golem Statue","confidence":0.825},{"type":"color_bridge","target":"minecraft:exposed_copper_lantern","label":"Pont de nuance par sous-ton: Exposed Copper Lantern","confidence":0.799},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Lantern","confidence":0.799},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.766},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.766},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.764},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.764},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.764},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.761},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.761},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.761},{"type":"color_analogous","target":"minecraft:waxed_copper_lantern","label":"Couleurs analogues: Waxed Copper Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:rooted_dirt","label":"Couleurs analogues: Rooted Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_mushroom","label":"Couleurs analogues: Brown Mushroom","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_brown_mushroom","label":"Couleurs analogues: Potted Brown Mushroom","confidence":0.96},{"type":"color_analogous","target":"minecraft:command_block","label":"Couleurs analogues: Command Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper","label":"Couleurs analogues: Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_chest","label":"Couleurs analogues: Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_golem_statue","label":"Couleurs analogues: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.952},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.946},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.913},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.909},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.909},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.96},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.912},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.883},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.846},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.825},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.824},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.944},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.895},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.767},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.766},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.755},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.717},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.681},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:copper_leggings","name":"Copper Leggings","entry_type":"item","description":"Copper leggings are a variant of leggings crafted from copper ingots. They are the sixth-highest tier of leggings, having the same armor points as golden leggings but with higher durability.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper leggings."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#87452f","dominant_hex":"#441c14","average_hex":"#87452f","hue_group":"red","lightness":0.3569,"saturation":0.4835,"palette":["#441c14","#d46c4c","#5c2c1c","#9c4c34","#fca894","#843c24"],"color_groups":[{"hex":"#441c14","weight":0.3077,"lightness":0.1725,"saturation":0.5455,"hue_group":"red"},{"hex":"#d46c4c","weight":0.1923,"lightness":0.5647,"saturation":0.6126,"hue_group":"red"},{"hex":"#5c2c1c","weight":0.1731,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#9c4c34","weight":0.1635,"lightness":0.4078,"saturation":0.5,"hue_group":"red"},{"hex":"#fca894","weight":0.0865,"lightness":0.7843,"saturation":0.9455,"hue_group":"red"},{"hex":"#843c24","weight":0.0769,"lightness":0.3294,"saturation":0.5714,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_leggings.png","family":"copper_armor","relations":[{"type":"variants","target":"minecraft:copper_boots","label":"Same family: copper_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_boots","label":"Related set: copper_armor","confidence":0.8},{"type":"variants","target":"minecraft:copper_chestplate","label":"Same family: copper_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_chestplate","label":"Related set: copper_armor","confidence":0.8},{"type":"variants","target":"minecraft:copper_helmet","label":"Same family: copper_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_helmet","label":"Related set: copper_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:copper_armor","label":"Related set: copper_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55}],"category":"armor"},{"id":"minecraft:copper_nautilus_armor","name":"Copper Nautilus Armor","entry_type":"item","description":"Copper nautilus armor is a type of nautilus armor that can be equipped by a nautilus that reduces the damage received to the nautilus. It is the fifth-strongest tier of nautilus armor, having the lowest armor points with no armor toughness.","history":[{"version":"1.21.11 25w41a","status":"added","notes":"Added copper nautilus armor."}],"colors":{"primary":"#c67055","dominant_hex":"#b45c3c","average_hex":"#c67055","hue_group":"red","lightness":0.5549,"saturation":0.4978,"palette":["#b45c3c","#84442c","#fc9c84","#e47c54","#d46c4c","#fcd4cc"],"color_groups":[{"hex":"#b45c3c","weight":0.3026,"lightness":0.4706,"saturation":0.5,"hue_group":"red"},{"hex":"#84442c","weight":0.2303,"lightness":0.3451,"saturation":0.5,"hue_group":"red"},{"hex":"#fc9c84","weight":0.1842,"lightness":0.7529,"saturation":0.9524,"hue_group":"red"},{"hex":"#e47c54","weight":0.1053,"lightness":0.6118,"saturation":0.7273,"hue_group":"red"},{"hex":"#d46c4c","weight":0.0921,"lightness":0.5647,"saturation":0.6126,"hue_group":"red"},{"hex":"#fcd4cc","weight":0.0855,"lightness":0.8941,"saturation":0.8889,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_nautilus_armor.png","family":"copper_nautilus_armor","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:porkchop","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glistering_melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chestplate","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:copper_nugget","name":"Copper Nugget","entry_type":"item","description":"Copper nuggets are minimum pieces of copper that can be obtained by smelting copper tools, weapons, or armor or by crafting it with a copper ingot. One copper nugget is effectively worth one-ninth of a copper ingot.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper nuggets."}],"colors":{"primary":"#af5a3e","dominant_hex":"#9c442c","average_hex":"#af5a3e","hue_group":"red","lightness":0.4647,"saturation":0.4768,"palette":["#9c442c","#6c3424","#e47c54","#9c4c34","#fca690","#c45c34"],"color_groups":[{"hex":"#9c442c","weight":0.2727,"lightness":0.3922,"saturation":0.56,"hue_group":"red"},{"hex":"#6c3424","weight":0.2121,"lightness":0.2824,"saturation":0.5,"hue_group":"red"},{"hex":"#e47c54","weight":0.1818,"lightness":0.6118,"saturation":0.7273,"hue_group":"red"},{"hex":"#9c4c34","weight":0.1212,"lightness":0.4078,"saturation":0.5,"hue_group":"red"},{"hex":"#fca690","weight":0.1212,"lightness":0.7765,"saturation":0.9474,"hue_group":"red"},{"hex":"#c45c34","weight":0.0909,"lightness":0.4863,"saturation":0.5806,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_nugget.png","family":"copper_nugget","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chestplate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glistering_melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beef","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:copper_ore","name":"Copper Ore","entry_type":"block","description":"Copper ore is an ore block found underground. Deepslate copper ore is the deepslate variant of copper ore, usually found deeper underground.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added copper ore."},{"version":"21w10a","status":"added","notes":"Added deepslate variant of copper ore."},{"version":"wiki-history","status":"added","notes":"Added copper_ores block tag ."}],"colors":{"primary":"#7d7e78","dominant_hex":"#837a77","average_hex":"#7d7e78","hue_group":"neutral","lightness":0.4824,"saturation":0.0244,"palette":["#837a77","#757a71","#908d87","#4b6860","#6c6c6c","#ada09d"],"color_groups":[{"hex":"#837a77","weight":0.293,"lightness":0.4902,"saturation":0.048,"hue_group":"neutral"},{"hex":"#757a71","weight":0.2305,"lightness":0.4608,"saturation":0.0383,"hue_group":"neutral"},{"hex":"#908d87","weight":0.1992,"lightness":0.5471,"saturation":0.039,"hue_group":"neutral"},{"hex":"#4b6860","weight":0.1133,"lightness":0.351,"saturation":0.162,"hue_group":"cyan"},{"hex":"#6c6c6c","weight":0.0977,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ada09d","weight":0.0664,"lightness":0.6471,"saturation":0.0889,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_ore.png","family":"copper_ore","relations":[{"type":"visual_neighbors","target":"minecraft:test_instance_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lodestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_gravel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:iron_bars","label":"Palette proche: Iron Bars","confidence":0.871},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.866},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.866},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.861},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.86},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_block","label":"Palette proche: Dead Fire Coral Block","confidence":0.857},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.855},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.855},{"type":"color_neighbors","target":"minecraft:tall_grass","label":"Palette proche: Tall Grass","confidence":0.854},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.853},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.85},{"type":"color_neighbors","target":"minecraft:gravel","label":"Palette proche: Gravel","confidence":0.85},{"type":"color_bridge","target":"minecraft:iron_bars","label":"Pont de nuance par palette: Iron Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par palette: Waxed Weathered Copper Chain","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par palette: Weathered Copper Chain","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_block","label":"Pont de nuance par palette: Dead Tube Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_block","label":"Pont de nuance par palette: Dead Fire Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:tall_grass","label":"Pont de nuance par palette: Tall Grass","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55}],"category":"building"},{"id":"minecraft:copper_pickaxe","name":"Copper Pickaxe","entry_type":"item","description":"A copper pickaxe is a variant of pickaxe that is crafted from copper ingots. It is the fourth-highest tier of pickaxe, having higher mining efficiency, durability, and enchantability than a stone pickaxe. It has a mining level of 1, the same as a stone pickaxe, allowing it to mine copper ore, iron ore, and lapis lazuli ore.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper pickaxe."}],"colors":{"primary":"#6d4025","dominant_hex":"#533018","average_hex":"#6d4025","hue_group":"red","lightness":0.2863,"saturation":0.4932,"palette":["#533018","#441c14","#2c1c0c","#7c5820","#d46c4c","#eb8b73"],"color_groups":[{"hex":"#533018","weight":0.2647,"lightness":0.2098,"saturation":0.5514,"hue_group":"red"},{"hex":"#441c14","weight":0.2059,"lightness":0.1725,"saturation":0.5455,"hue_group":"red"},{"hex":"#2c1c0c","weight":0.1618,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#7c5820","weight":0.1471,"lightness":0.3059,"saturation":0.5897,"hue_group":"yellow"},{"hex":"#d46c4c","weight":0.1176,"lightness":0.5647,"saturation":0.6126,"hue_group":"red"},{"hex":"#eb8b73","weight":0.1029,"lightness":0.6863,"saturation":0.75,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_pickaxe.png","family":"copper_tools","relations":[{"type":"variants","target":"minecraft:copper_axe","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_axe","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_hoe","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_hoe","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_shovel","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_shovel","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_sword","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_sword","label":"Related set: copper_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:copper_tools","label":"Related set: copper_tools","confidence":0.85},{"type":"related_sets","target":"group:pickaxes","label":"Related set: pickaxes","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:copper_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_pigstep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berries","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa_beans","label":"Shared hue group: red","confidence":0.55}],"category":"tool"},{"id":"minecraft:copper_shovel","name":"Copper Shovel","entry_type":"item","description":"A copper shovel is a variant of shovel that is crafted from copper ingots. It is used to break dirt, sand, gravel and other related blocks faster, to create dirt paths from dirt-related blocks, and to extinguish campfires. It is the fourth-highest tier of shovel, having higher mining efficiency, durability, and enchantability than a stone shovel.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper shovel."}],"colors":{"primary":"#7d4c30","dominant_hex":"#f4947c","average_hex":"#7d4c30","hue_group":"red","lightness":0.3392,"saturation":0.4451,"palette":["#f4947c","#2c1c0c","#4c3414","#ac6836","#441c14","#61351c"],"color_groups":[{"hex":"#f4947c","weight":0.2264,"lightness":0.7216,"saturation":0.8451,"hue_group":"red"},{"hex":"#2c1c0c","weight":0.1698,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.1698,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#ac6836","weight":0.1698,"lightness":0.4431,"saturation":0.5221,"hue_group":"red"},{"hex":"#441c14","weight":0.1321,"lightness":0.1725,"saturation":0.5455,"hue_group":"red"},{"hex":"#61351c","weight":0.1321,"lightness":0.2451,"saturation":0.552,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_shovel.png","family":"copper_tools","relations":[{"type":"variants","target":"minecraft:copper_axe","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_axe","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_hoe","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_hoe","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_pickaxe","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_pickaxe","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_sword","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_sword","label":"Related set: copper_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:copper_tools","label":"Related set: copper_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:brown_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_pigstep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55}],"category":"tool"},{"id":"minecraft:copper_spear","name":"Copper Spear","entry_type":"item","description":"A copper spear is a variant of spear crafted from copper ingots. It can be used to perform slow jab attacks or held forward to deal increasing damage based on how quickly the wielder is moving. It is the fifth-highest tier of spear, dealing the same damage as a stone spear but with lower attack speed.","history":[{"version":"1.21.11 25w41a","status":"added","notes":"Added copper spears."}],"colors":{"primary":"#844e35","dominant_hex":"#b3603b","average_hex":"#844e35","hue_group":"red","lightness":0.3627,"saturation":0.427,"palette":["#b3603b","#5f2e19","#441c10","#fcbeaf","#2c1c0c","#4c3414"],"color_groups":[{"hex":"#b3603b","weight":0.3243,"lightness":0.4667,"saturation":0.5042,"hue_group":"red"},{"hex":"#5f2e19","weight":0.2027,"lightness":0.2353,"saturation":0.5833,"hue_group":"red"},{"hex":"#441c10","weight":0.1757,"lightness":0.1647,"saturation":0.619,"hue_group":"red"},{"hex":"#fcbeaf","weight":0.1351,"lightness":0.8373,"saturation":0.9277,"hue_group":"red"},{"hex":"#2c1c0c","weight":0.0811,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.0811,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_spear.png","family":"copper_spear","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:orange_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_mutton","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:copper_sword","name":"Copper Sword","entry_type":"item","description":"A copper sword is a variant of sword crafted from copper ingots. It is the fourth-highest tier of sword, dealing the same damage as a stone sword but having more durability.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper swords."}],"colors":{"primary":"#844d3b","dominant_hex":"#5b2d1b","average_hex":"#844d3b","hue_group":"red","lightness":0.3745,"saturation":0.3822,"palette":["#5b2d1b","#421c13","#894828","#fc9c84","#fcd4cc","#e4846c"],"color_groups":[{"hex":"#5b2d1b","weight":0.3095,"lightness":0.2314,"saturation":0.5424,"hue_group":"red"},{"hex":"#421c13","weight":0.2857,"lightness":0.1667,"saturation":0.5529,"hue_group":"red"},{"hex":"#894828","weight":0.131,"lightness":0.3471,"saturation":0.548,"hue_group":"red"},{"hex":"#fc9c84","weight":0.1071,"lightness":0.7529,"saturation":0.9524,"hue_group":"red"},{"hex":"#fcd4cc","weight":0.0952,"lightness":0.8941,"saturation":0.8889,"hue_group":"red"},{"hex":"#e4846c","weight":0.0714,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/copper_sword.png","family":"copper_tools","relations":[{"type":"variants","target":"minecraft:copper_axe","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_axe","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_hoe","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_hoe","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_pickaxe","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_pickaxe","label":"Related set: copper_tools","confidence":0.8},{"type":"variants","target":"minecraft:copper_shovel","label":"Same family: copper_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:copper_shovel","label":"Related set: copper_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:copper_tools","label":"Related set: copper_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:red_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:angler_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:burn_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blade_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_boat","label":"Shared hue group: red","confidence":0.55}],"category":"tool"},{"id":"minecraft:copper_torch","name":"Copper Torch","entry_type":"block","description":"A copper torch is a non-solid block that emits light. Copper torches can also be used to craft copper lanterns.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper torches."}],"colors":{"primary":"#756e49","dominant_hex":"#463923","average_hex":"#756e49","hue_group":"yellow","lightness":0.3725,"saturation":0.2316,"palette":["#463923","#9c7c54","#6c5434","#589c5c","#947444","#ccf4cc"],"color_groups":[{"hex":"#463923","weight":0.35,"lightness":0.2059,"saturation":0.3333,"hue_group":"yellow"},{"hex":"#9c7c54","weight":0.2,"lightness":0.4706,"saturation":0.3,"hue_group":"yellow"},{"hex":"#6c5434","weight":0.15,"lightness":0.3137,"saturation":0.35,"hue_group":"yellow"},{"hex":"#589c5c","weight":0.1,"lightness":0.4784,"saturation":0.2787,"hue_group":"green"},{"hex":"#947444","weight":0.1,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#ccf4cc","weight":0.1,"lightness":0.8784,"saturation":0.6452,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_torch.png","family":"copper_torch","relations":[{"type":"visual_neighbors","target":"minecraft:copper_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_flowering_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lever","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafting_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:loom","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powered_rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_wall_torch","label":"Palette proche: Copper Wall Torch","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lever","label":"Palette proche: Lever","confidence":0.863},{"type":"color_neighbors","target":"minecraft:torch","label":"Palette proche: Torch","confidence":0.839},{"type":"color_neighbors","target":"minecraft:wall_torch","label":"Palette proche: Wall Torch","confidence":0.839},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.827},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.827},{"type":"color_neighbors","target":"minecraft:soul_torch","label":"Palette proche: Soul Torch","confidence":0.823},{"type":"color_neighbors","target":"minecraft:soul_wall_torch","label":"Palette proche: Soul Wall Torch","confidence":0.823},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.82},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.812},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.804},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.803},{"type":"color_bridge","target":"minecraft:soul_torch","label":"Pont de nuance par sous-ton: Soul Torch","confidence":0.854},{"type":"color_bridge","target":"minecraft:soul_wall_torch","label":"Pont de nuance par sous-ton: Soul Wall Torch","confidence":0.854},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.807},{"type":"color_bridge","target":"minecraft:exposed_copper_lantern","label":"Pont de nuance par sous-ton: Exposed Copper Lantern","confidence":0.804},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Lantern","confidence":0.804},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.8},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.798},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.798},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.791},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.787},{"type":"color_analogous","target":"minecraft:copper_wall_torch","label":"Couleurs analogues: Copper Wall Torch","confidence":0.96},{"type":"color_analogous","target":"minecraft:horn_coral_fan","label":"Couleurs analogues: Horn Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:horn_coral_wall_fan","label":"Couleurs analogues: Horn Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:horn_coral","label":"Couleurs analogues: Horn Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_shelf","label":"Couleurs analogues: Bamboo Shelf","confidence":0.959},{"type":"color_analogous","target":"minecraft:bamboo_fence_gate","label":"Couleurs analogues: Bamboo Fence Gate","confidence":0.948},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.944},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.944},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.928},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.901},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.892},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.876},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.811},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.798},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.759},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.759},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.947},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.927},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.919},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.919},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.919},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.907},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.871},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.87},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.829},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.828},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.813},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.799},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.799},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.793},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.746},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.737},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.581},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone","label":"Contraste clair sombre: Cut Sandstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:sand","label":"Contraste clair sombre: Sand","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:suspicious_sand","label":"Contraste clair sombre: Suspicious Sand","confidence":0.55}],"category":"building"},{"id":"minecraft:copper_trapdoor","name":"Copper Trapdoor","entry_type":"block","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","history":[{"version":"1.20.3","status":"added","notes":"Added copper trapdoors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#bf6a50","dominant_hex":"#9a523a","average_hex":"#bf6a50","hue_group":"red","lightness":0.5314,"saturation":0.4644,"palette":["#9a523a","#e4846c","#c87050","#d47c5c","#b46444","#a45c44"],"color_groups":[{"hex":"#9a523a","weight":0.2255,"lightness":0.4157,"saturation":0.4528,"hue_group":"red"},{"hex":"#e4846c","weight":0.2108,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#c87050","weight":0.1961,"lightness":0.549,"saturation":0.5217,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1569,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#b46444","weight":0.1127,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#a45c44","weight":0.098,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_trapdoor.png","family":"copper_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Palette proche: Waxed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper","label":"Palette proche: Waxed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Palette proche: Waxed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Palette proche: Waxed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.805},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.805},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.805},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.778},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.778},{"type":"color_analogous","target":"minecraft:waxed_copper_trapdoor","label":"Couleurs analogues: Waxed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_slab","label":"Couleurs analogues: Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_stairs","label":"Couleurs analogues: Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper","label":"Couleurs analogues: Waxed Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_slab","label":"Couleurs analogues: Waxed Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_stairs","label":"Couleurs analogues: Waxed Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.946},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.944},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.919},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.919},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.86},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.821},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.893},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.888},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.875},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.875},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.875},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.875},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.866},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.719},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.95},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.948},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.942},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.942},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:copper_wall_torch","name":"Copper Wall Torch","entry_type":"block","description":"A copper torch is a non-solid block that emits light. Copper torches can also be used to craft copper lanterns.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper torches."}],"colors":{"primary":"#756e49","dominant_hex":"#463923","average_hex":"#756e49","hue_group":"yellow","lightness":0.3725,"saturation":0.2316,"palette":["#463923","#9c7c54","#6c5434","#589c5c","#947444","#ccf4cc"],"color_groups":[{"hex":"#463923","weight":0.35,"lightness":0.2059,"saturation":0.3333,"hue_group":"yellow"},{"hex":"#9c7c54","weight":0.2,"lightness":0.4706,"saturation":0.3,"hue_group":"yellow"},{"hex":"#6c5434","weight":0.15,"lightness":0.3137,"saturation":0.35,"hue_group":"yellow"},{"hex":"#589c5c","weight":0.1,"lightness":0.4784,"saturation":0.2787,"hue_group":"green"},{"hex":"#947444","weight":0.1,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#ccf4cc","weight":0.1,"lightness":0.8784,"saturation":0.6452,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_torch.png","family":"copper_wall_torch","relations":[{"type":"visual_neighbors","target":"minecraft:copper_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_flowering_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lever","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafting_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:loom","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powered_rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_torch","label":"Palette proche: Copper Torch","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lever","label":"Palette proche: Lever","confidence":0.863},{"type":"color_neighbors","target":"minecraft:torch","label":"Palette proche: Torch","confidence":0.839},{"type":"color_neighbors","target":"minecraft:wall_torch","label":"Palette proche: Wall Torch","confidence":0.839},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.827},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.827},{"type":"color_neighbors","target":"minecraft:soul_torch","label":"Palette proche: Soul Torch","confidence":0.823},{"type":"color_neighbors","target":"minecraft:soul_wall_torch","label":"Palette proche: Soul Wall Torch","confidence":0.823},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.82},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.812},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.804},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.803},{"type":"color_bridge","target":"minecraft:soul_torch","label":"Pont de nuance par sous-ton: Soul Torch","confidence":0.854},{"type":"color_bridge","target":"minecraft:soul_wall_torch","label":"Pont de nuance par sous-ton: Soul Wall Torch","confidence":0.854},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.807},{"type":"color_bridge","target":"minecraft:exposed_copper_lantern","label":"Pont de nuance par sous-ton: Exposed Copper Lantern","confidence":0.804},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Lantern","confidence":0.804},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.8},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.798},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.798},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.791},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.787},{"type":"color_analogous","target":"minecraft:copper_torch","label":"Couleurs analogues: Copper Torch","confidence":0.96},{"type":"color_analogous","target":"minecraft:horn_coral_fan","label":"Couleurs analogues: Horn Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:horn_coral_wall_fan","label":"Couleurs analogues: Horn Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:horn_coral","label":"Couleurs analogues: Horn Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_shelf","label":"Couleurs analogues: Bamboo Shelf","confidence":0.959},{"type":"color_analogous","target":"minecraft:bamboo_fence_gate","label":"Couleurs analogues: Bamboo Fence Gate","confidence":0.948},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.944},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.944},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.928},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.901},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.892},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.876},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.811},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.798},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.759},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.759},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.947},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.927},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.919},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.919},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.919},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.907},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.871},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.87},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.829},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.828},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.813},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.799},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.799},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.793},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.746},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.737},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.581},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone","label":"Contraste clair sombre: Cut Sandstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:sand","label":"Contraste clair sombre: Sand","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:suspicious_sand","label":"Contraste clair sombre: Suspicious Sand","confidence":0.55}],"category":"building"},{"id":"minecraft:cornflower","name":"Cornflower","entry_type":"block","description":"A cornflower is a flower that can be crafted into blue dye and suspicious stew.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added cornflowers."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell cornflowers."}],"colors":{"primary":"#507993","dominant_hex":"#3d5cd8","average_hex":"#507993","hue_group":"cyan","lightness":0.4451,"saturation":0.2952,"palette":["#3d5cd8","#548c4c","#317129","#5c9c54","#6e7ee2","#748cf4"],"color_groups":[{"hex":"#3d5cd8","weight":0.2857,"lightness":0.5431,"saturation":0.6652,"hue_group":"blue"},{"hex":"#548c4c","weight":0.2,"lightness":0.4235,"saturation":0.2963,"hue_group":"green"},{"hex":"#317129","weight":0.1714,"lightness":0.302,"saturation":0.4675,"hue_group":"green"},{"hex":"#5c9c54","weight":0.1143,"lightness":0.4706,"saturation":0.3,"hue_group":"green"},{"hex":"#6e7ee2","weight":0.1143,"lightness":0.6588,"saturation":0.6667,"hue_group":"blue"},{"hex":"#748cf4","weight":0.1143,"lightness":0.7059,"saturation":0.8533,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cornflower.png","family":"cornflower","relations":[{"type":"visual_neighbors","target":"minecraft:potted_cornflower","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_cornflower","label":"Palette proche: Potted Cornflower","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pitcher_plant","label":"Palette proche: Pitcher Plant","confidence":0.671},{"type":"color_neighbors","target":"minecraft:blue_orchid","label":"Palette proche: Blue Orchid","confidence":0.609},{"type":"color_neighbors","target":"minecraft:potted_blue_orchid","label":"Palette proche: Potted Blue Orchid","confidence":0.609},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.58},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Palette proche: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_neighbors","target":"minecraft:weathered_copper_bars","label":"Palette proche: Weathered Copper Bars","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.58},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.58},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Palette proche: Waxed Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:pitcher_plant","label":"Pont de nuance par sous-ton: Pitcher Plant","confidence":0.729},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par palette: Waxed Weathered Copper Bars","confidence":0.646},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par palette: Weathered Copper Bars","confidence":0.646},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par palette: Waxed Weathered Copper Lantern","confidence":0.641},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par palette: Weathered Copper Lantern","confidence":0.641},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.64},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.64},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par palette: Waxed Weathered Copper","confidence":0.635},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par palette: Waxed Weathered Copper Chest","confidence":0.635},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par palette: Waxed Weathered Copper Golem Statue","confidence":0.635},{"type":"color_analogous","target":"minecraft:potted_cornflower","label":"Couleurs analogues: Potted Cornflower","confidence":0.96},{"type":"color_analogous","target":"minecraft:soul_lantern","label":"Couleurs analogues: Soul Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_concrete","label":"Couleurs analogues: Light Blue Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_candle","label":"Couleurs analogues: Light Blue Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_glazed_terracotta","label":"Couleurs analogues: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_stained_glass","label":"Couleurs analogues: Cyan Stained Glass","confidence":0.932},{"type":"color_analogous","target":"minecraft:air","label":"Couleurs analogues: Air","confidence":0.924},{"type":"color_analogous","target":"minecraft:cave_air","label":"Couleurs analogues: Cave Air","confidence":0.924},{"type":"color_complement","target":"minecraft:rooted_dirt","label":"Contraste complementaire: Rooted Dirt","confidence":0.96},{"type":"color_complement","target":"minecraft:copper_lantern","label":"Contraste complementaire: Copper Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_copper_lantern","label":"Contraste complementaire: Waxed Copper Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_mushroom","label":"Contraste complementaire: Brown Mushroom","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_brown_mushroom","label":"Contraste complementaire: Potted Brown Mushroom","confidence":0.96},{"type":"color_complement","target":"minecraft:exposed_copper","label":"Contraste complementaire: Exposed Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:exposed_copper_chest","label":"Contraste complementaire: Exposed Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:exposed_copper_golem_statue","label":"Contraste complementaire: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:oxeye_daisy","label":"Harmonie triadique: Oxeye Daisy","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_oxeye_daisy","label":"Harmonie triadique: Potted Oxeye Daisy","confidence":0.96},{"type":"color_triad","target":"minecraft:birch_sapling","label":"Harmonie triadique: Birch Sapling","confidence":0.952},{"type":"color_triad","target":"minecraft:potted_birch_sapling","label":"Harmonie triadique: Potted Birch Sapling","confidence":0.952},{"type":"color_triad","target":"minecraft:brain_coral","label":"Harmonie triadique: Brain Coral","confidence":0.94},{"type":"color_triad","target":"minecraft:potted_red_tulip","label":"Harmonie triadique: Potted Red Tulip","confidence":0.934},{"type":"color_triad","target":"minecraft:red_tulip","label":"Harmonie triadique: Red Tulip","confidence":0.934},{"type":"color_triad","target":"minecraft:bamboo","label":"Harmonie triadique: Bamboo","confidence":0.928},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.945},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.885},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.768},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.767},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.756},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.716},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.671},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55}],"category":"natural"},{"id":"minecraft:cow/cold","name":"Cow / Cold","entry_type":"mob","description":"A cow is a passive mob found in most grassy biomes and are a source of leather, beef, and milk. They have three variants based on the temperature of the biome they spawn in.","history":[{"version":"v1.0.8","status":"added","notes":"Added cows."},{"version":"wiki-history","status":"added","notes":"Added raw beef , which drops from cows, and if killed on fire, they drop steak ."},{"version":"Beta 1.9","status":"added","notes":"Added baby cows."}],"colors":{"primary":"#ac693d","dominant_hex":"#c6804e","average_hex":"#ac693d","hue_group":"red","lightness":0.4569,"saturation":0.4764,"palette":["#c6804e","#bc6c2c","#8b4f39","#a45c2c","#694633","#e5a4a4"],"color_groups":[{"hex":"#c6804e","weight":0.3209,"lightness":0.5412,"saturation":0.5128,"hue_group":"red"},{"hex":"#bc6c2c","weight":0.2204,"lightness":0.4549,"saturation":0.6207,"hue_group":"red"},{"hex":"#8b4f39","weight":0.1616,"lightness":0.3843,"saturation":0.4184,"hue_group":"red"},{"hex":"#a45c2c","weight":0.1577,"lightness":0.4078,"saturation":0.5769,"hue_group":"red"},{"hex":"#694633","weight":0.1067,"lightness":0.3059,"saturation":0.3462,"hue_group":"red"},{"hex":"#e5a4a4","weight":0.0327,"lightness":0.7706,"saturation":0.5556,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cow/cold_cow.png","family":"cow","relations":[{"type":"variants","target":"minecraft:cow/temperate","label":"Same family: cow","confidence":0.75},{"type":"related_sets","target":"minecraft:cow/temperate","label":"Related set: cow","confidence":0.8},{"type":"variants","target":"minecraft:cow/warm","label":"Same family: cow","confidence":0.75},{"type":"related_sets","target":"minecraft:cow/warm","label":"Related set: cow","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:cow/temperate","name":"Cow / Temperate","entry_type":"mob","description":"A cow is a passive mob found in most grassy biomes and are a source of leather, beef, and milk. They have three variants based on the temperature of the biome they spawn in.","history":[{"version":"v1.0.8","status":"added","notes":"Added cows."},{"version":"wiki-history","status":"added","notes":"Added raw beef , which drops from cows, and if killed on fire, they drop steak ."},{"version":"Beta 1.9","status":"added","notes":"Added baby cows."}],"colors":{"primary":"#60544b","dominant_hex":"#403424","average_hex":"#60544b","hue_group":"red","lightness":0.3353,"saturation":0.1228,"palette":["#403424","#31291b","#c6b5b5","#aca1a1","#5b5548","#868181"],"color_groups":[{"hex":"#403424","weight":0.4648,"lightness":0.1961,"saturation":0.28,"hue_group":"yellow"},{"hex":"#31291b","weight":0.1624,"lightness":0.149,"saturation":0.2895,"hue_group":"yellow"},{"hex":"#c6b5b5","weight":0.1237,"lightness":0.7431,"saturation":0.1298,"hue_group":"red"},{"hex":"#aca1a1","weight":0.0979,"lightness":0.6529,"saturation":0.0621,"hue_group":"neutral"},{"hex":"#5b5548","weight":0.0785,"lightness":0.3196,"saturation":0.1166,"hue_group":"neutral"},{"hex":"#868181","weight":0.0727,"lightness":0.5157,"saturation":0.0202,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cow/temperate_cow.png","family":"cow","relations":[{"type":"variants","target":"minecraft:cow/cold","label":"Same family: cow","confidence":0.75},{"type":"related_sets","target":"minecraft:cow/cold","label":"Related set: cow","confidence":0.8},{"type":"variants","target":"minecraft:cow/warm","label":"Same family: cow","confidence":0.75},{"type":"related_sets","target":"minecraft:cow/warm","label":"Related set: cow","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:strider_cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:cow/warm","name":"Cow / Warm","entry_type":"mob","description":"A cow is a passive mob found in most grassy biomes and are a source of leather, beef, and milk. They have three variants based on the temperature of the biome they spawn in.","history":[{"version":"v1.0.8","status":"added","notes":"Added cows."},{"version":"wiki-history","status":"added","notes":"Added raw beef , which drops from cows, and if killed on fire, they drop steak ."},{"version":"Beta 1.9","status":"added","notes":"Added baby cows."}],"colors":{"primary":"#914f3e","dominant_hex":"#7f341f","average_hex":"#914f3e","hue_group":"red","lightness":0.4059,"saturation":0.401,"palette":["#7f341f","#924a32","#d99f8e","#813d2e","#4f2b22","#9e685d"],"color_groups":[{"hex":"#7f341f","weight":0.2998,"lightness":0.3098,"saturation":0.6076,"hue_group":"red"},{"hex":"#924a32","weight":0.1922,"lightness":0.3843,"saturation":0.4898,"hue_group":"red"},{"hex":"#d99f8e","weight":0.183,"lightness":0.7039,"saturation":0.4967,"hue_group":"red"},{"hex":"#813d2e","weight":0.1801,"lightness":0.3431,"saturation":0.4743,"hue_group":"red"},{"hex":"#4f2b22","weight":0.0857,"lightness":0.2216,"saturation":0.3982,"hue_group":"red"},{"hex":"#9e685d","weight":0.0593,"lightness":0.4922,"saturation":0.259,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cow/warm_cow.png","family":"cow","relations":[{"type":"variants","target":"minecraft:cow/cold","label":"Same family: cow","confidence":0.75},{"type":"related_sets","target":"minecraft:cow/cold","label":"Related set: cow","confidence":0.8},{"type":"variants","target":"minecraft:cow/temperate","label":"Same family: cow","confidence":0.75},{"type":"related_sets","target":"minecraft:cow/temperate","label":"Related set: cow","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_baby","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:cow_spawn_egg","name":"Cow Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#5b5651","dominant_hex":"#453629","average_hex":"#5b5651","hue_group":"neutral","lightness":0.3373,"saturation":0.0581,"palette":["#453629","#1d1a17","#bebebe","#505050","#848484","#34241c"],"color_groups":[{"hex":"#453629","weight":0.2778,"lightness":0.2157,"saturation":0.2545,"hue_group":"red"},{"hex":"#1d1a17","weight":0.2071,"lightness":0.102,"saturation":0.1154,"hue_group":"neutral"},{"hex":"#bebebe","weight":0.202,"lightness":0.7451,"saturation":0.0,"hue_group":"neutral"},{"hex":"#505050","weight":0.1162,"lightness":0.3137,"saturation":0.0,"hue_group":"neutral"},{"hex":"#848484","weight":0.1162,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"},{"hex":"#34241c","weight":0.0808,"lightness":0.1569,"saturation":0.3,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cow_spawn_egg.png","family":"cow_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ominous_trial_key","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:compass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:minecart","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:cracked_deepslate_bricks","name":"Cracked Deepslate Bricks","entry_type":"block","description":"Cracked deepslate bricks are the cracked variant of deepslate bricks.","history":[{"version":"1.17 21w10a","status":"added","notes":"Added cracked deepslate bricks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cracled deepslate bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#414141","dominant_hex":"#616161","average_hex":"#414141","hue_group":"neutral","lightness":0.2549,"saturation":0.0,"palette":["#616161","#3c3434","#232323","#444444","#2c2c2c","#4c4c4c"],"color_groups":[{"hex":"#616161","weight":0.2695,"lightness":0.3804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.1992,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#232323","weight":0.168,"lightness":0.1373,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.1289,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.1172,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1172,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cracked_deepslate_bricks.png","family":"cracked_deepslate_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.707},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.674},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.651},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.647},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.646},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.646},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.646},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.646}],"category":"building"},{"id":"minecraft:cracked_deepslate_tiles","name":"Cracked Deepslate Tiles","entry_type":"block","description":"Cracked deepslate tiles are a cracked variant of deepslate tiles.","history":[{"version":"1.17 21w10a","status":"added","notes":"Added cracked deepslate tiles."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cracked deepslate tiles, providing the football/regular effect to the mob."}],"colors":{"primary":"#353535","dominant_hex":"#2c2c2c","average_hex":"#353535","hue_group":"neutral","lightness":0.2078,"saturation":0.0,"palette":["#2c2c2c","#242424","#3c3434","#444444","#4c4c4c","#5c5c5c"],"color_groups":[{"hex":"#2c2c2c","weight":0.2656,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.25,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.1953,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#444444","weight":0.1602,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.0781,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0508,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cracked_deepslate_tiles.png","family":"cracked_deepslate_tiles","relations":[{"type":"visual_neighbors","target":"minecraft:deepslate_tile_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Palette proche: Cracked Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_bricks","label":"Pont de nuance par palette: Cracked Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.752},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.718},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.696},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.691},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.691},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.691},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.691},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.691}],"category":"building"},{"id":"minecraft:cracked_nether_bricks","name":"Cracked Nether Bricks","entry_type":"block","description":"Cracked Nether bricks are a decorative variant of Nether bricks, obtained by smelting Nether bricks.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added cracked Nether bricks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cracked Nether bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#281418","dominant_hex":"#1a0b12","average_hex":"#281418","hue_group":"red","lightness":0.1176,"saturation":0.3333,"palette":["#1a0b12","#341c1c","#241414","#3c1c1c","#402028","#2c141c"],"color_groups":[{"hex":"#1a0b12","weight":0.2891,"lightness":0.0725,"saturation":0.4054,"hue_group":"red"},{"hex":"#341c1c","weight":0.2109,"lightness":0.1569,"saturation":0.3,"hue_group":"red"},{"hex":"#241414","weight":0.1719,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#3c1c1c","weight":0.1172,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#402028","weight":0.1133,"lightness":0.1882,"saturation":0.3333,"hue_group":"red"},{"hex":"#2c141c","weight":0.0977,"lightness":0.1255,"saturation":0.375,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cracked_nether_bricks.png","family":"cracked_nether_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:nether_brick_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:nether_brick_fence","label":"Palette proche: Nether Brick Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_slab","label":"Palette proche: Nether Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_stairs","label":"Palette proche: Nether Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_wall","label":"Palette proche: Nether Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_bricks","label":"Palette proche: Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Palette proche: Chiseled Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_terracotta","label":"Palette proche: Black Terracotta","confidence":0.838},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.774},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.751},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.751},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.751},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.751},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.785},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.778},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.778},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.766},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.758},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.753},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.749},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.749},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.749},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.749},{"type":"color_analogous","target":"minecraft:nether_brick_fence","label":"Couleurs analogues: Nether Brick Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_slab","label":"Couleurs analogues: Nether Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_stairs","label":"Couleurs analogues: Nether Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_wall","label":"Couleurs analogues: Nether Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_bricks","label":"Couleurs analogues: Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_nether_bricks","label":"Couleurs analogues: Chiseled Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:enchanting_table","label":"Couleurs analogues: Enchanting Table","confidence":0.924},{"type":"color_analogous","target":"minecraft:potted_crimson_roots","label":"Couleurs analogues: Potted Crimson Roots","confidence":0.867},{"type":"color_complement","target":"minecraft:prismarine_brick_slab","label":"Contraste complementaire: Prismarine Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_brick_stairs","label":"Contraste complementaire: Prismarine Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_bricks","label":"Contraste complementaire: Prismarine Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_nylium","label":"Contraste complementaire: Warped Nylium","confidence":0.954},{"type":"color_complement","target":"minecraft:twisting_vines","label":"Contraste complementaire: Twisting Vines","confidence":0.867},{"type":"color_complement","target":"minecraft:nether_sprouts","label":"Contraste complementaire: Nether Sprouts","confidence":0.832},{"type":"color_complement","target":"minecraft:warped_trapdoor","label":"Contraste complementaire: Warped Trapdoor","confidence":0.809},{"type":"color_complement","target":"minecraft:potted_warped_roots","label":"Contraste complementaire: Potted Warped Roots","confidence":0.801},{"type":"color_triad","target":"minecraft:potatoes","label":"Harmonie triadique: Potatoes","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_glazed_terracotta","label":"Harmonie triadique: Blue Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_stained_glass","label":"Harmonie triadique: Blue Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:slime_block","label":"Harmonie triadique: Slime Block","confidence":0.96},{"type":"color_triad","target":"minecraft:test_block","label":"Harmonie triadique: Test Block","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_candle","label":"Harmonie triadique: Blue Candle","confidence":0.949},{"type":"color_triad","target":"minecraft:tube_coral","label":"Harmonie triadique: Tube Coral","confidence":0.897},{"type":"color_square","target":"minecraft:end_gateway","label":"Harmonie carree: End Gateway","confidence":0.96},{"type":"color_square","target":"minecraft:end_portal","label":"Harmonie carree: End Portal","confidence":0.96},{"type":"color_square","target":"minecraft:ender_chest","label":"Harmonie carree: Ender Chest","confidence":0.96},{"type":"color_square","target":"minecraft:obsidian","label":"Harmonie carree: Obsidian","confidence":0.96},{"type":"color_square","target":"minecraft:green_concrete_powder","label":"Harmonie carree: Green Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:potted_azalea_bush","label":"Harmonie carree: Potted Azalea Bush","confidence":0.96},{"type":"color_square","target":"minecraft:azalea","label":"Harmonie carree: Azalea","confidence":0.96},{"type":"color_square","target":"minecraft:green_carpet","label":"Harmonie carree: Green Carpet","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.826},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.792},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.78},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.78},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.78},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.78},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.77},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.739}],"category":"building"},{"id":"minecraft:cracked_polished_blackstone_bricks","name":"Cracked Polished Blackstone Bricks","entry_type":"block","description":"Cracked polished blackstone bricks are the cracked variant of polished blackstone bricks.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added cracked polished blackstone bricks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cracked polished blackstone bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#2c262c","dominant_hex":"#342c34","average_hex":"#2c262c","hue_group":"neutral","lightness":0.1608,"saturation":0.0732,"palette":["#342c34","#24141c","#140c14","#3c3c44","#24241c","#4c4c54"],"color_groups":[{"hex":"#342c34","weight":0.2031,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#24141c","weight":0.1953,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#140c14","weight":0.1914,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"},{"hex":"#3c3c44","weight":0.1758,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#24241c","weight":0.1484,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#4c4c54","weight":0.0859,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cracked_polished_blackstone_bricks.png","family":"cracked_polished_blackstone_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tinted_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blackstone","label":"Palette proche: Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_wall","label":"Palette proche: Blackstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:blackstone","label":"Pont de nuance par palette: Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_wall","label":"Pont de nuance par palette: Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_wall","label":"Pont de nuance par palette: Polished Blackstone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_bricks","label":"Pont de nuance par palette: Polished Blackstone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.785},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.752},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.747},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.746},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.746},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.729},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.728},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.728}],"category":"building"},{"id":"minecraft:cracked_stone_bricks","name":"Cracked Stone Bricks","entry_type":"block","description":"Cracked stone bricks are a variant of stone bricks, obtained through smelting and natural generation.","history":[{"version":"1.7","status":"added","notes":"added to the language file (en_US.lang). The variants of stone bricks did not originally have their own tooltips."},{"version":"1.8","status":"added","notes":"Added cracked stone bricks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cracked stone bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#767676","dominant_hex":"#7c7c7c","average_hex":"#767676","hue_group":"neutral","lightness":0.4627,"saturation":0.0,"palette":["#7c7c7c","#929292","#646464","#7c747c","#5c5c5c","#6c6c6c"],"color_groups":[{"hex":"#7c7c7c","weight":0.2344,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#929292","weight":0.2109,"lightness":0.5725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#646464","weight":0.1797,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c747c","weight":0.1602,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1211,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0938,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cracked_stone_bricks.png","family":"cracked_stone_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vine","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bush","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lodestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_bricks","label":"Palette proche: Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_stairs","label":"Pont de nuance par palette: Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_wall","label":"Pont de nuance par palette: Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_bricks","label":"Pont de nuance par palette: Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55}],"category":"building"},{"id":"minecraft:crafter","name":"Crafter","entry_type":"block","description":"A crafter is a low-capacity storage block that can use its contents to craft items when given a redstone signal, ejecting the results into the world or into a container it is facing. Its inventory slots can be individually locked so hoppers and similar blocks cannot fill them, while not affecting crafting recipes.","history":[{"version":"1.20.3","status":"added","notes":"Added crafters behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#706364","dominant_hex":"#421217","average_hex":"#706364","hue_group":"neutral","lightness":0.4137,"saturation":0.0616,"palette":["#421217","#8c8c8c","#7c7c7c","#a4a4a4","#6a6a6a","#545454"],"color_groups":[{"hex":"#421217","weight":0.2812,"lightness":0.1647,"saturation":0.5714,"hue_group":"red"},{"hex":"#8c8c8c","weight":0.2695,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1641,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.1133,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6a6a6a","weight":0.1055,"lightness":0.4157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.0664,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crafter_top.png","family":"crafter","relations":[{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.91},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.897},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.897},{"type":"color_neighbors","target":"minecraft:dropper","label":"Palette proche: Dropper","confidence":0.895},{"type":"color_neighbors","target":"minecraft:spruce_leaves","label":"Palette proche: Spruce Leaves","confidence":0.894},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.894},{"type":"color_neighbors","target":"minecraft:observer","label":"Palette proche: Observer","confidence":0.894},{"type":"color_neighbors","target":"minecraft:vine","label":"Palette proche: Vine","confidence":0.891},{"type":"color_neighbors","target":"minecraft:bush","label":"Palette proche: Bush","confidence":0.889},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.887},{"type":"color_neighbors","target":"minecraft:furnace","label":"Palette proche: Furnace","confidence":0.886},{"type":"color_neighbors","target":"minecraft:mangrove_leaves","label":"Palette proche: Mangrove Leaves","confidence":0.882},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:dropper","label":"Pont de nuance par palette: Dropper","confidence":0.86},{"type":"color_bridge","target":"minecraft:spruce_leaves","label":"Pont de nuance par palette: Spruce Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:dispenser","label":"Pont de nuance par palette: Dispenser","confidence":0.86},{"type":"color_bridge","target":"minecraft:observer","label":"Pont de nuance par palette: Observer","confidence":0.86},{"type":"color_bridge","target":"minecraft:vine","label":"Pont de nuance par palette: Vine","confidence":0.86},{"type":"color_bridge","target":"minecraft:bush","label":"Pont de nuance par palette: Bush","confidence":0.86},{"type":"color_bridge","target":"minecraft:lily_pad","label":"Pont de nuance par palette: Lily Pad","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.554},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55}],"category":""},{"id":"minecraft:crafting_table","name":"Crafting Table","entry_type":"block","description":"A crafting table is a utility block that gives access to all crafting recipes, including many not available from the inventory's crafting grid.","history":[{"version":"0.31 20100129-2332","status":"added","notes":"Added workbenches."}],"colors":{"primary":"#816a46","dominant_hex":"#2d1c10","average_hex":"#816a46","hue_group":"yellow","lightness":0.3902,"saturation":0.2965,"palette":["#2d1c10","#bf975f","#725b30","#9a804a","#ac8c54","#dcdcdc"],"color_groups":[{"hex":"#2d1c10","weight":0.3125,"lightness":0.1196,"saturation":0.4754,"hue_group":"red"},{"hex":"#bf975f","weight":0.207,"lightness":0.5608,"saturation":0.4286,"hue_group":"yellow"},{"hex":"#725b30","weight":0.1367,"lightness":0.3176,"saturation":0.4074,"hue_group":"yellow"},{"hex":"#9a804a","weight":0.1328,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1289,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#dcdcdc","weight":0.082,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crafting_table_front.png","family":"crafting_table","relations":[{"type":"visual_neighbors","target":"minecraft:powered_rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_flowering_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.884},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.884},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.884},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.884},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.884},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.884},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.884},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.884},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.884},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.884},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.884},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.884},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.857},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.828},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.815},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.809},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.774},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.774},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.771},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.766},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.766},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.765},{"type":"color_analogous","target":"minecraft:oak_door","label":"Couleurs analogues: Oak Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:bookshelf","label":"Couleurs analogues: Bookshelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_shelf","label":"Couleurs analogues: Oak Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:lever","label":"Couleurs analogues: Lever","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_trapdoor","label":"Couleurs analogues: Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:ladder","label":"Couleurs analogues: Ladder","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.959},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.912},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.879},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.872},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.862},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.856},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.855},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.847},{"type":"color_triad","target":"minecraft:oxidized_cut_copper","label":"Harmonie triadique: Oxidized Cut Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper_slab","label":"Harmonie triadique: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper_stairs","label":"Harmonie triadique: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_cut_copper","label":"Harmonie triadique: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Harmonie triadique: Waxed Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Harmonie triadique: Waxed Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_trapdoor","label":"Harmonie triadique: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Harmonie triadique: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.916},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.916},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.915},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.91},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.894},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.886},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.878},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.826},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.564},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle","label":"Contraste clair sombre: Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55}],"category":"utility"},{"id":"minecraft:creaking","name":"Creaking","entry_type":"mob","description":"A creaking is a hostile mob spawned by active creaking hearts at night. It moves to attack players with melee headbutts, but cannot move at all while any players in Survival or Adventure mode can see it. It is protected from all damage by the creaking heart that spawned it; breaking the creaking heart instantly kills the creaking. Hitting a protected creaking causes resin clumps to grow on pale oak logs near its linked creaking heart.","history":[{"version":"1.21.2","status":"added","notes":"Added creakings."}],"colors":{"primary":"#625956","dominant_hex":"#5b5454","average_hex":"#625956","hue_group":"neutral","lightness":0.3608,"saturation":0.0652,"palette":["#5b5454","#716d68","#4c4444","#443c3c","#afaaa1","#3c3434"],"color_groups":[{"hex":"#5b5454","weight":0.314,"lightness":0.3431,"saturation":0.04,"hue_group":"neutral"},{"hex":"#716d68","weight":0.2726,"lightness":0.4255,"saturation":0.0415,"hue_group":"neutral"},{"hex":"#4c4444","weight":0.1519,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#443c3c","weight":0.1131,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#afaaa1","weight":0.0803,"lightness":0.6588,"saturation":0.0805,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.0681,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/creaking/creaking.png","family":"creaking","relations":[{"type":"visual_neighbors","target":"minecraft:evoker_fangs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken/cold","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:creaking_heart","name":"Creaking Heart","entry_type":"block","description":"A creaking heart is a living block that can be crafted or found in pale oak trees in pale gardens. It activates if placed in a line between two pale oak logs; then, during nighttime, it spawns a creaking and protects it from all damage. Breaking a creaking heart that is protecting a creaking instantly kills it. Hitting a protected creaking causes resin clumps to grow on pale oak logs near its linked creaking heart.","history":[{"version":"1.21.2","status":"added","notes":"Added creaking hearts."},{"version":"wiki-history","status":"added","notes":"Added the natural block state and replaced creaking with a boolean active state."},{"version":"1.21.6 25w15a","status":"added","notes":"Added the advancement \"Heart Transplanter\"."}],"colors":{"primary":"#52443f","dominant_hex":"#726a6a","average_hex":"#52443f","hue_group":"red","lightness":0.2843,"saturation":0.131,"palette":["#726a6a","#47372f","#5a443d","#3c2c24","#5e544f","#2c241c"],"color_groups":[{"hex":"#726a6a","weight":0.2305,"lightness":0.4314,"saturation":0.0364,"hue_group":"neutral"},{"hex":"#47372f","weight":0.2188,"lightness":0.2314,"saturation":0.2034,"hue_group":"red"},{"hex":"#5a443d","weight":0.1445,"lightness":0.2961,"saturation":0.1921,"hue_group":"red"},{"hex":"#3c2c24","weight":0.1406,"lightness":0.1882,"saturation":0.25,"hue_group":"red"},{"hex":"#5e544f","weight":0.1406,"lightness":0.3392,"saturation":0.0867,"hue_group":"neutral"},{"hex":"#2c241c","weight":0.125,"lightness":0.1412,"saturation":0.2222,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/creaking_heart.png","family":"creaking_heart","relations":[{"type":"visual_neighbors","target":"minecraft:deepslate_redstone_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:soul_soil","label":"Palette proche: Soul Soil","confidence":0.919},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.905},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.905},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.905},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.905},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.905},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.905},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.905},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.905},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.905},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.905},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.905},{"type":"color_bridge","target":"minecraft:soul_soil","label":"Pont de nuance par sous-ton: Soul Soil","confidence":0.9},{"type":"color_bridge","target":"minecraft:creeper_head","label":"Pont de nuance par sous-ton: Creeper Head","confidence":0.9},{"type":"color_bridge","target":"minecraft:creeper_wall_head","label":"Pont de nuance par sous-ton: Creeper Wall Head","confidence":0.9},{"type":"color_bridge","target":"minecraft:dragon_head","label":"Pont de nuance par sous-ton: Dragon Head","confidence":0.9},{"type":"color_bridge","target":"minecraft:dragon_wall_head","label":"Pont de nuance par sous-ton: Dragon Wall Head","confidence":0.9},{"type":"color_bridge","target":"minecraft:piglin_head","label":"Pont de nuance par sous-ton: Piglin Head","confidence":0.9},{"type":"color_bridge","target":"minecraft:piglin_wall_head","label":"Pont de nuance par sous-ton: Piglin Wall Head","confidence":0.9},{"type":"color_bridge","target":"minecraft:player_head","label":"Pont de nuance par sous-ton: Player Head","confidence":0.9},{"type":"color_bridge","target":"minecraft:player_wall_head","label":"Pont de nuance par sous-ton: Player Wall Head","confidence":0.9},{"type":"color_bridge","target":"minecraft:skeleton_skull","label":"Pont de nuance par sous-ton: Skeleton Skull","confidence":0.9},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.673},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.639},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.625},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.624},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.624},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.622},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.622}],"category":""},{"id":"minecraft:creaking_spawn_egg","name":"Creaking Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#665f59","dominant_hex":"#5b544d","average_hex":"#665f59","hue_group":"neutral","lightness":0.3745,"saturation":0.0681,"palette":["#5b544d","#716d69","#8c948c","#362e2e","#443c3c","#ec9127"],"color_groups":[{"hex":"#5b544d","weight":0.2865,"lightness":0.3294,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#716d69","weight":0.276,"lightness":0.4275,"saturation":0.0367,"hue_group":"neutral"},{"hex":"#8c948c","weight":0.1719,"lightness":0.5647,"saturation":0.036,"hue_group":"neutral"},{"hex":"#362e2e","weight":0.1615,"lightness":0.1961,"saturation":0.08,"hue_group":"neutral"},{"hex":"#443c3c","weight":0.0781,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#ec9127","weight":0.026,"lightness":0.5392,"saturation":0.8383,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/creaking_spawn_egg.png","family":"creaking_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elytra","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coast_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:creeper","name":"Creeper","entry_type":"mob","description":"A creeper is a common hostile mob that quietly approaches a player, hisses, and will explode if not retreated from in time. Creeper explosions can destroy blocks and deal massive amounts of damage, which can be completely blocked using a shield. When struck by lightning, a creeper becomes a charged creeper, which amplifies its explosion power and enables mob heads to be obtained from piglins, zombies, skeletons and other creepers it kills. Due to its distinctive appearance and unique destructive method of attack, the creeper has become one of the most iconic mobs of Minecraft, being featured in promotional material and merchandise.","history":[{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added creepers."},{"version":"v1.0.3","status":"added","notes":"Added unique hurt sounds for creepers. Previously, they used the hurt sound for players."},{"version":"v1.0.14","status":"added","notes":"Added music discs \"13\" and \"cat\", which are dropped by creepers shot by skeletons ."}],"colors":{"primary":"#69b361","dominant_hex":"#4c9e46","average_hex":"#69b361","hue_group":"green","lightness":0.5412,"saturation":0.3504,"palette":["#4c9e46","#64c855","#1e6e1a","#8bd27f","#b1d6aa","#d1dacf"],"color_groups":[{"hex":"#4c9e46","weight":0.2778,"lightness":0.4471,"saturation":0.386,"hue_group":"green"},{"hex":"#64c855","weight":0.2338,"lightness":0.5588,"saturation":0.5111,"hue_group":"green"},{"hex":"#1e6e1a","weight":0.1505,"lightness":0.2667,"saturation":0.6176,"hue_group":"green"},{"hex":"#8bd27f","weight":0.1493,"lightness":0.6608,"saturation":0.4798,"hue_group":"green"},{"hex":"#b1d6aa","weight":0.1019,"lightness":0.7529,"saturation":0.3492,"hue_group":"green"},{"hex":"#d1dacf","weight":0.0868,"lightness":0.8333,"saturation":0.1294,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/creeper/creeper.png","family":"creeper","relations":[{"type":"visual_neighbors","target":"minecraft:slime","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_sea_turtle","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_fox","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_fox_sleep","label":"Shared hue group: green","confidence":0.55}],"category":"mob"},{"id":"minecraft:creeper_banner_pattern","name":"Creeper Banner Pattern","entry_type":"item","description":"A creeper charge banner pattern is a banner pattern used to customize banners with a shape of a creeper face.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added creeper charge banner patterns."},{"version":"1.21.2 24w33a","status":"added","notes":"Added a unique item icon texture for creeper charge banner patterns."}],"colors":{"primary":"#b6ac9a","dominant_hex":"#ececec","average_hex":"#b6ac9a","hue_group":"yellow","lightness":0.6588,"saturation":0.1609,"palette":["#ececec","#847454","#65473d","#dcd4bc","#b3a486","#948c6c"],"color_groups":[{"hex":"#ececec","weight":0.3476,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#847454","weight":0.1646,"lightness":0.4235,"saturation":0.2222,"hue_group":"yellow"},{"hex":"#65473d","weight":0.1585,"lightness":0.3176,"saturation":0.2469,"hue_group":"red"},{"hex":"#dcd4bc","weight":0.1402,"lightness":0.8,"saturation":0.3137,"hue_group":"yellow"},{"hex":"#b3a486","weight":0.128,"lightness":0.6137,"saturation":0.2284,"hue_group":"yellow"},{"hex":"#948c6c","weight":0.061,"lightness":0.502,"saturation":0.1575,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/creeper_banner_pattern.png","family":"creeper_banner_pattern","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:bordure_indented_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:field_masoned_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mojang_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:creeper_head","name":"Creeper Head","entry_type":"block","description":"A creeper head is the head of a creeper in the form of a block. It can only be obtained by killing a creeper using a different charged creeper's explosion.","history":[{"version":"1.4.2 12w36a","status":"added","notes":"Added creeper heads."}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"creeper_head","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Palette proche: Wither Skeleton Wall Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:skeleton_skull","label":"Couleurs analogues: Skeleton Skull","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":"decorative"},{"id":"minecraft:creeper_spawn_egg","name":"Creeper Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#3c863b","dominant_hex":"#80ca76","average_hex":"#3c863b","hue_group":"green","lightness":0.3784,"saturation":0.3886,"palette":["#80ca76","#325f2c","#153915","#1a962a","#3cb43c","#3c7c3c"],"color_groups":[{"hex":"#80ca76","weight":0.2388,"lightness":0.6275,"saturation":0.4421,"hue_group":"green"},{"hex":"#325f2c","weight":0.2015,"lightness":0.2725,"saturation":0.3669,"hue_group":"green"},{"hex":"#153915","weight":0.194,"lightness":0.1529,"saturation":0.4615,"hue_group":"green"},{"hex":"#1a962a","weight":0.1866,"lightness":0.3451,"saturation":0.7045,"hue_group":"green"},{"hex":"#3cb43c","weight":0.097,"lightness":0.4706,"saturation":0.5,"hue_group":"green"},{"hex":"#3c7c3c","weight":0.0821,"lightness":0.3608,"saturation":0.3478,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/creeper_spawn_egg.png","family":"creeper_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_scute","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_axe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_helmet","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:emerald","label":"Shared hue group: green","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:creeper_wall_head","name":"Creeper Wall Head","entry_type":"block","description":"A creeper head is the head of a creeper in the form of a block. It can only be obtained by killing a creeper using a different charged creeper's explosion.","history":[{"version":"1.4.2 12w36a","status":"added","notes":"Added creeper heads."}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"creeper_wall_head","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Palette proche: Wither Skeleton Wall Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:skeleton_skull","label":"Couleurs analogues: Skeleton Skull","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":"decorative"},{"id":"minecraft:crimson_button","name":"Crimson Button","entry_type":"block","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added wooden buttons. They are currently uncraftable."},{"version":"12w34b","status":"added","notes":"Added crafting recipe for wooden buttons. Recipe"},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped buttons."}],"colors":{"primary":"#653147","dominant_hex":"#7c3c54","average_hex":"#653147","hue_group":"red","lightness":0.2941,"saturation":0.3467,"palette":["#7c3c54","#6c344c","#5c3444","#472434","#843c5c","#3c1c2c"],"color_groups":[{"hex":"#7c3c54","weight":0.2031,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#6c344c","weight":0.1875,"lightness":0.3137,"saturation":0.35,"hue_group":"red"},{"hex":"#5c3444","weight":0.1836,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#472434","weight":0.1641,"lightness":0.2098,"saturation":0.3271,"hue_group":"red"},{"hex":"#843c5c","weight":0.1484,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#3c1c2c","weight":0.1133,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_planks.png","family":"crimson_button","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_stairs","label":"Palette proche: Crimson Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_wall_sign","label":"Palette proche: Crimson Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.744},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.743},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.743},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.724},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.723},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence_gate","label":"Couleurs analogues: Crimson Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_planks","label":"Couleurs analogues: Crimson Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_pressure_plate","label":"Couleurs analogues: Crimson Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_sign","label":"Couleurs analogues: Crimson Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_slab","label":"Couleurs analogues: Crimson Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_stairs","label":"Couleurs analogues: Crimson Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_wall_sign","label":"Couleurs analogues: Crimson Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.947},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.928},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.92},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.92},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.943},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.942},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.924},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.872},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.85},{"type":"color_triad","target":"minecraft:jungle_sapling","label":"Harmonie triadique: Jungle Sapling","confidence":0.834},{"type":"color_triad","target":"minecraft:potted_jungle_sapling","label":"Harmonie triadique: Potted Jungle Sapling","confidence":0.834},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.959},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.938},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.936},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.917},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.91},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.656},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.607},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.6},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.574}],"category":"building"},{"id":"minecraft:crimson_door","name":"Crimson Door","entry_type":"block","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","history":[{"version":"20100607","status":"added","notes":"Added wooden doors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"18w49a","status":"added","notes":"Added snowy tundra villages, which generate with spruce doors."}],"colors":{"primary":"#72374f","dominant_hex":"#5c3444","average_hex":"#72374f","hue_group":"red","lightness":0.3314,"saturation":0.3491,"palette":["#5c3444","#6c344c","#7b3d55","#9d476a","#843c5c","#4b2434"],"color_groups":[{"hex":"#5c3444","weight":0.2227,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#6c344c","weight":0.1992,"lightness":0.3137,"saturation":0.35,"hue_group":"red"},{"hex":"#7b3d55","weight":0.1797,"lightness":0.3608,"saturation":0.337,"hue_group":"red"},{"hex":"#9d476a","weight":0.1562,"lightness":0.4471,"saturation":0.3772,"hue_group":"red"},{"hex":"#843c5c","weight":0.1328,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#4b2434","weight":0.1094,"lightness":0.2176,"saturation":0.3514,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_door_top.png","family":"crimson","relations":[{"type":"variants","target":"minecraft:crimson_fence","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_fence","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_planks","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_planks","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_slab","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_slab","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_stairs","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_stairs","label":"Related set: crimson","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:coarse_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_stairs","label":"Palette proche: Crimson Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_wall_sign","label":"Palette proche: Crimson Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_shelf","label":"Palette proche: Crimson Shelf","confidence":0.913},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.91},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.746},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.746},{"type":"color_bridge","target":"minecraft:mycelium","label":"Pont de nuance par palette: Mycelium","confidence":0.744},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.739},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.735},{"type":"color_bridge","target":"minecraft:closed_eyeblossom","label":"Pont de nuance par palette: Closed Eyeblossom","confidence":0.732},{"type":"color_bridge","target":"minecraft:potted_closed_eyeblossom","label":"Pont de nuance par palette: Potted Closed Eyeblossom","confidence":0.732},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.729},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.724},{"type":"color_bridge","target":"minecraft:damaged_anvil","label":"Pont de nuance par palette: Damaged Anvil","confidence":0.723},{"type":"color_analogous","target":"minecraft:crimson_trapdoor","label":"Couleurs analogues: Crimson Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence_gate","label":"Couleurs analogues: Crimson Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_planks","label":"Couleurs analogues: Crimson Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_pressure_plate","label":"Couleurs analogues: Crimson Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_sign","label":"Couleurs analogues: Crimson Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_slab","label":"Couleurs analogues: Crimson Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.952},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.952},{"type":"color_complement","target":"minecraft:oxidized_copper_grate","label":"Contraste complementaire: Oxidized Copper Grate","confidence":0.944},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_grate","label":"Contraste complementaire: Waxed Oxidized Copper Grate","confidence":0.944},{"type":"color_complement","target":"minecraft:oxidized_cut_copper","label":"Contraste complementaire: Oxidized Cut Copper","confidence":0.94},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.958},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.91},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.905},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.904},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.887},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.887},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.868},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.868},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.96},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.921},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.876},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.62},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.587},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.572},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.572},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.572},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.572},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.565},{"type":"value_contrast","target":"minecraft:cherry_leaves","label":"Contraste clair sombre: Cherry Leaves","confidence":0.55}],"category":"building"},{"id":"minecraft:crimson_fence","name":"Crimson Fence","entry_type":"block","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","history":[{"version":"20100629","status":"added","notes":"added to the game. There are three defined states: north-south, east-west and a cross. These models are currently unused."},{"version":"v1.0.17","status":"added","notes":"Added fences."},{"version":"1.8","status":"added","notes":"Added villages and strongholds , where wooden fences naturally generate."}],"colors":{"primary":"#653147","dominant_hex":"#7c3c54","average_hex":"#653147","hue_group":"red","lightness":0.2941,"saturation":0.3467,"palette":["#7c3c54","#6c344c","#5c3444","#472434","#843c5c","#3c1c2c"],"color_groups":[{"hex":"#7c3c54","weight":0.2031,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#6c344c","weight":0.1875,"lightness":0.3137,"saturation":0.35,"hue_group":"red"},{"hex":"#5c3444","weight":0.1836,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#472434","weight":0.1641,"lightness":0.2098,"saturation":0.3271,"hue_group":"red"},{"hex":"#843c5c","weight":0.1484,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#3c1c2c","weight":0.1133,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_planks.png","family":"crimson","relations":[{"type":"variants","target":"minecraft:crimson_door","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_door","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_planks","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_planks","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_slab","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_slab","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_stairs","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_stairs","label":"Related set: crimson","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_stairs","label":"Palette proche: Crimson Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_wall_sign","label":"Palette proche: Crimson Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.744},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.743},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.743},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.724},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.723},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence_gate","label":"Couleurs analogues: Crimson Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_planks","label":"Couleurs analogues: Crimson Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_pressure_plate","label":"Couleurs analogues: Crimson Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_sign","label":"Couleurs analogues: Crimson Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_slab","label":"Couleurs analogues: Crimson Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_stairs","label":"Couleurs analogues: Crimson Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_wall_sign","label":"Couleurs analogues: Crimson Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.947},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.928},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.92},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.92},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.943},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.942},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.924},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.872},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.85},{"type":"color_triad","target":"minecraft:jungle_sapling","label":"Harmonie triadique: Jungle Sapling","confidence":0.834},{"type":"color_triad","target":"minecraft:potted_jungle_sapling","label":"Harmonie triadique: Potted Jungle Sapling","confidence":0.834},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.959},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.938},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.936},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.917},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.91},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.656},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.607},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.6},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.574}],"category":"building"},{"id":"minecraft:crimson_fence_gate","name":"Crimson Fence Gate","entry_type":"block","description":"A fence gate is a block that shares the functions of both the door and the fence.","history":[{"version":"Pre-release","status":"added","notes":"Added fence gates."},{"version":"14w32b","status":"added","notes":"Added spruce, birch, jungle, acacia, and dark oak fence gates."},{"version":"18w49a","status":"added","notes":"added snowy tundra villages."}],"colors":{"primary":"#653147","dominant_hex":"#7c3c54","average_hex":"#653147","hue_group":"red","lightness":0.2941,"saturation":0.3467,"palette":["#7c3c54","#6c344c","#5c3444","#472434","#843c5c","#3c1c2c"],"color_groups":[{"hex":"#7c3c54","weight":0.2031,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#6c344c","weight":0.1875,"lightness":0.3137,"saturation":0.35,"hue_group":"red"},{"hex":"#5c3444","weight":0.1836,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#472434","weight":0.1641,"lightness":0.2098,"saturation":0.3271,"hue_group":"red"},{"hex":"#843c5c","weight":0.1484,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#3c1c2c","weight":0.1133,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_planks.png","family":"crimson_fence_gate","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_stairs","label":"Palette proche: Crimson Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_wall_sign","label":"Palette proche: Crimson Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.744},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.743},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.743},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.724},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.723},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_planks","label":"Couleurs analogues: Crimson Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_pressure_plate","label":"Couleurs analogues: Crimson Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_sign","label":"Couleurs analogues: Crimson Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_slab","label":"Couleurs analogues: Crimson Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_stairs","label":"Couleurs analogues: Crimson Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_wall_sign","label":"Couleurs analogues: Crimson Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.947},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.928},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.92},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.92},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.943},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.942},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.924},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.872},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.85},{"type":"color_triad","target":"minecraft:jungle_sapling","label":"Harmonie triadique: Jungle Sapling","confidence":0.834},{"type":"color_triad","target":"minecraft:potted_jungle_sapling","label":"Harmonie triadique: Potted Jungle Sapling","confidence":0.834},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.959},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.938},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.936},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.917},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.91},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.656},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.607},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.6},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.574}],"category":"building"},{"id":"minecraft:crimson_fungus","name":"Crimson Fungus","entry_type":"block","description":"A crimson fungus is a mushroom-like block that generates in the Nether.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added crimson fungi."}],"colors":{"primary":"#8d2c1e","dominant_hex":"#8f3232","average_hex":"#8d2c1e","hue_group":"red","lightness":0.3353,"saturation":0.6491,"palette":["#8f3232","#54211a","#74040c","#fc7927","#c43334","#4c0404"],"color_groups":[{"hex":"#8f3232","weight":0.2667,"lightness":0.3784,"saturation":0.4819,"hue_group":"red"},{"hex":"#54211a","weight":0.2167,"lightness":0.2157,"saturation":0.5273,"hue_group":"red"},{"hex":"#74040c","weight":0.15,"lightness":0.2353,"saturation":0.9333,"hue_group":"red"},{"hex":"#fc7927","weight":0.15,"lightness":0.5706,"saturation":0.9726,"hue_group":"red"},{"hex":"#c43334","weight":0.1167,"lightness":0.4843,"saturation":0.587,"hue_group":"red"},{"hex":"#4c0404","weight":0.1,"lightness":0.1569,"saturation":0.9,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_fungus.png","family":"crimson_fungus","relations":[{"type":"visual_neighbors","target":"minecraft:potted_crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_nylium","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_crimson_fungus","label":"Palette proche: Potted Crimson Fungus","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.892},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.847},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.833},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.828},{"type":"color_neighbors","target":"minecraft:magma_block","label":"Palette proche: Magma Block","confidence":0.825},{"type":"color_neighbors","target":"minecraft:red_stained_glass_pane","label":"Palette proche: Red Stained Glass Pane","confidence":0.825},{"type":"color_neighbors","target":"minecraft:nether_gold_ore","label":"Palette proche: Nether Gold Ore","confidence":0.815},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.802},{"type":"color_neighbors","target":"minecraft:red_stained_glass","label":"Palette proche: Red Stained Glass","confidence":0.798},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.79},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.785},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.681},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.677},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.669},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.665},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.656},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.653},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.65},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.644},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.636},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.635},{"type":"color_analogous","target":"minecraft:potted_crimson_fungus","label":"Couleurs analogues: Potted Crimson Fungus","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_terracotta","label":"Couleurs analogues: Red Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:redstone_block","label":"Couleurs analogues: Redstone Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:redstone_torch","label":"Couleurs analogues: Redstone Torch","confidence":0.955},{"type":"color_analogous","target":"minecraft:mangrove_hanging_sign","label":"Couleurs analogues: Mangrove Hanging Sign","confidence":0.942},{"type":"color_analogous","target":"minecraft:mangrove_wall_hanging_sign","label":"Couleurs analogues: Mangrove Wall Hanging Sign","confidence":0.942},{"type":"color_analogous","target":"minecraft:stripped_mangrove_log","label":"Couleurs analogues: Stripped Mangrove Log","confidence":0.942},{"type":"color_analogous","target":"minecraft:stripped_mangrove_wood","label":"Couleurs analogues: Stripped Mangrove Wood","confidence":0.942},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.953},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.948},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.928},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.917},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.895},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.888},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.851},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.827},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.785},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.652},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.651},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.631},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.629},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.623},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.618},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.958},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.958},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.95},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.95},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.915},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.915},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.915},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.61},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.577},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.571},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.571},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.571},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.571},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.554},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55}],"category":"natural"},{"id":"minecraft:crimson_hanging_sign","name":"Crimson Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#89395a","dominant_hex":"#8c3c5c","average_hex":"#89395a","hue_group":"red","lightness":0.3804,"saturation":0.4124,"palette":["#8c3c5c","#973d65","#843c54","#7c3454","#843c5c","#7c2c4c"],"color_groups":[{"hex":"#8c3c5c","weight":0.3203,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#973d65","weight":0.293,"lightness":0.4157,"saturation":0.4245,"hue_group":"red"},{"hex":"#843c54","weight":0.1719,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#7c3454","weight":0.0898,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#843c5c","weight":0.0664,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#7c2c4c","weight":0.0586,"lightness":0.3294,"saturation":0.4762,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_crimson_stem.png","family":"crimson_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_pot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_bamboo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cactus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_crimson_hyphae","label":"Palette proche: Stripped Crimson Hyphae","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_crimson_stem","label":"Palette proche: Stripped Crimson Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_shelf","label":"Palette proche: Crimson Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.91},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:mycelium","label":"Pont de nuance par palette: Mycelium","confidence":0.741},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.726},{"type":"color_bridge","target":"minecraft:flower_pot","label":"Pont de nuance par palette: Flower Pot","confidence":0.715},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.715},{"type":"color_bridge","target":"minecraft:potted_bamboo","label":"Pont de nuance par palette: Potted Bamboo","confidence":0.715},{"type":"color_bridge","target":"minecraft:potted_cactus","label":"Pont de nuance par palette: Potted Cactus","confidence":0.715},{"type":"color_bridge","target":"minecraft:potted_mangrove_propagule","label":"Pont de nuance par palette: Potted Mangrove Propagule","confidence":0.715},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.707},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.695},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.689},{"type":"color_analogous","target":"minecraft:crimson_wall_hanging_sign","label":"Couleurs analogues: Crimson Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_crimson_hyphae","label":"Couleurs analogues: Stripped Crimson Hyphae","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_crimson_stem","label":"Couleurs analogues: Stripped Crimson Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_shelf","label":"Couleurs analogues: Crimson Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_door","label":"Couleurs analogues: Crimson Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_trapdoor","label":"Couleurs analogues: Crimson Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.935},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.935},{"type":"color_complement","target":"minecraft:oxidized_copper_grate","label":"Contraste complementaire: Oxidized Copper Grate","confidence":0.926},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_grate","label":"Contraste complementaire: Waxed Oxidized Copper Grate","confidence":0.926},{"type":"color_complement","target":"minecraft:oxidized_cut_copper","label":"Contraste complementaire: Oxidized Cut Copper","confidence":0.922},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.924},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.922},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.905},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.892},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.879},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.849},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.849},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.957},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.911},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.889},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.572},{"type":"value_contrast","target":"minecraft:cherry_leaves","label":"Contraste clair sombre: Cherry Leaves","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_concrete_powder","label":"Contraste clair sombre: Pink Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_glazed_terracotta","label":"Contraste clair sombre: Pink Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_carpet","label":"Contraste clair sombre: Pink Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_wool","label":"Contraste clair sombre: Pink Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.55}],"category":"building"},{"id":"minecraft:crimson_hyphae","name":"Crimson Hyphae","entry_type":"block","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","history":[{"version":"1.3.1 12w30d","status":"added","notes":"Added six-sided wood blocks, which look similar to logs , but have the wood's \"bark\" texture (side texture when placed vertically) on all 6 sides."},{"version":"1.7.2 13w43a","status":"added","notes":"Added two new types of wood: acacia and dark oak."},{"version":"1","status":"added","notes":"Added top textures of the bark blocks."}],"colors":{"primary":"#5d1a1e","dominant_hex":"#541c14","average_hex":"#5d1a1e","hue_group":"red","lightness":0.2333,"saturation":0.563,"palette":["#541c14","#442434","#4c2434","#7c0404","#941212","#542c3c"],"color_groups":[{"hex":"#541c14","weight":0.3164,"lightness":0.2039,"saturation":0.6154,"hue_group":"red"},{"hex":"#442434","weight":0.1758,"lightness":0.2039,"saturation":0.3077,"hue_group":"red"},{"hex":"#4c2434","weight":0.1523,"lightness":0.2196,"saturation":0.3571,"hue_group":"red"},{"hex":"#7c0404","weight":0.1492,"lightness":0.251,"saturation":0.9375,"hue_group":"red"},{"hex":"#941212","weight":0.1203,"lightness":0.3255,"saturation":0.7831,"hue_group":"red"},{"hex":"#542c3c","weight":0.0859,"lightness":0.251,"saturation":0.3125,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_stem.png","family":"crimson_hyphae","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_lamp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_stem","label":"Palette proche: Crimson Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.794},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.781},{"type":"color_neighbors","target":"minecraft:weeping_vines","label":"Palette proche: Weeping Vines","confidence":0.775},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.774},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.764},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.759},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.758},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.758},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.758},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.758},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.758},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.714},{"type":"color_bridge","target":"minecraft:gilded_blackstone","label":"Pont de nuance par sous-ton: Gilded Blackstone","confidence":0.709},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.689},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.681},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.678},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.678},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.678},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.678},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.677},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.677},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_glazed_terracotta","label":"Couleurs analogues: Black Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_wart","label":"Couleurs analogues: Nether Wart","confidence":0.954},{"type":"color_analogous","target":"minecraft:fire_coral","label":"Couleurs analogues: Fire Coral","confidence":0.953},{"type":"color_analogous","target":"minecraft:red_nether_brick_slab","label":"Couleurs analogues: Red Nether Brick Slab","confidence":0.946},{"type":"color_analogous","target":"minecraft:red_nether_brick_stairs","label":"Couleurs analogues: Red Nether Brick Stairs","confidence":0.946},{"type":"color_analogous","target":"minecraft:red_nether_brick_wall","label":"Couleurs analogues: Red Nether Brick Wall","confidence":0.946},{"type":"color_analogous","target":"minecraft:red_nether_bricks","label":"Couleurs analogues: Red Nether Bricks","confidence":0.946},{"type":"color_complement","target":"minecraft:warped_door","label":"Contraste complementaire: Warped Door","confidence":0.96},{"type":"color_complement","target":"minecraft:beacon","label":"Contraste complementaire: Beacon","confidence":0.96},{"type":"color_complement","target":"minecraft:diamond_block","label":"Contraste complementaire: Diamond Block","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_shelf","label":"Contraste complementaire: Warped Shelf","confidence":0.954},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.933},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.933},{"type":"color_complement","target":"minecraft:warped_hanging_sign","label":"Contraste complementaire: Warped Hanging Sign","confidence":0.933},{"type":"color_complement","target":"minecraft:warped_wall_hanging_sign","label":"Contraste complementaire: Warped Wall Hanging Sign","confidence":0.933},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.946},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.946},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.921},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.907},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.906},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.869},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.817},{"type":"color_square","target":"minecraft:oak_sapling","label":"Harmonie carree: Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_oak_sapling","label":"Harmonie carree: Potted Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:orange_tulip","label":"Harmonie carree: Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_orange_tulip","label":"Harmonie carree: Potted Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:lime_concrete_powder","label":"Harmonie carree: Lime Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:lime_stained_glass","label":"Harmonie carree: Lime Stained Glass","confidence":0.957},{"type":"color_square","target":"minecraft:large_amethyst_bud","label":"Harmonie carree: Large Amethyst Bud","confidence":0.953},{"type":"color_square","target":"minecraft:lime_stained_glass_pane","label":"Harmonie carree: Lime Stained Glass Pane","confidence":0.951},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.71},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.677},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.667},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.667},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.667},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.667},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.654},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.626}],"category":""},{"id":"minecraft:crimson_nylium","name":"Crimson Nylium","entry_type":"block","description":"Crimson nylium is a variant of netherrack that generates in the Nether.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added crimson nylium."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb crimson nylium, providing the football/regular effect to the mob."}],"colors":{"primary":"#831f1f","dominant_hex":"#7c0404","average_hex":"#831f1f","hue_group":"red","lightness":0.3176,"saturation":0.6173,"palette":["#7c0404","#743434","#941c1c","#844444","#b02828","#642c2c"],"color_groups":[{"hex":"#7c0404","weight":0.25,"lightness":0.251,"saturation":0.9375,"hue_group":"red"},{"hex":"#743434","weight":0.2266,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#941c1c","weight":0.2109,"lightness":0.3451,"saturation":0.6818,"hue_group":"red"},{"hex":"#844444","weight":0.1133,"lightness":0.3922,"saturation":0.32,"hue_group":"red"},{"hex":"#b02828","weight":0.1055,"lightness":0.4235,"saturation":0.6296,"hue_group":"red"},{"hex":"#642c2c","weight":0.0938,"lightness":0.2824,"saturation":0.3889,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_nylium.png","family":"crimson_nylium","relations":[{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:poppy","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_poppy","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.928},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.885},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.881},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.881},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.873},{"type":"color_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Palette proche: Mangrove Hanging Sign","confidence":0.868},{"type":"color_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Palette proche: Mangrove Wall Hanging Sign","confidence":0.868},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_log","label":"Palette proche: Stripped Mangrove Log","confidence":0.868},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Palette proche: Stripped Mangrove Wood","confidence":0.868},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.867},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.866},{"type":"color_neighbors","target":"minecraft:red_concrete","label":"Palette proche: Red Concrete","confidence":0.865},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.771},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.763},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.739},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.733},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.729},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.729},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.707},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.706},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.702},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.697},{"type":"color_analogous","target":"minecraft:red_concrete","label":"Couleurs analogues: Red Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass_pane","label":"Couleurs analogues: Red Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass","label":"Couleurs analogues: Red Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:netherrack","label":"Couleurs analogues: Netherrack","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_wart_block","label":"Couleurs analogues: Nether Wart Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:barrier","label":"Couleurs analogues: Barrier","confidence":0.96},{"type":"color_analogous","target":"minecraft:weeping_vines","label":"Couleurs analogues: Weeping Vines","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.942},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.918},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.918},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.945},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.944},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.912},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.901},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.901},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.858},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.844},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.823},{"type":"color_square","target":"minecraft:cactus","label":"Harmonie carree: Cactus","confidence":0.96},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.96},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.958},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.958},{"type":"color_square","target":"minecraft:lime_shulker_box","label":"Harmonie carree: Lime Shulker Box","confidence":0.955},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.629},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.596},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.586},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.586},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.586},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.586},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.573},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"natural"},{"id":"minecraft:crimson_planks","name":"Crimson Planks","entry_type":"block","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","history":[{"version":"rd-20090515","status":"added","notes":"Added wooden planks."},{"version":"1.2.4 release","status":"added","notes":"Added spruce, birch and jungle wood planks. They are crafted from their corresponding wood . The color of wood planks available to this point is now obtainable only from oak wood."},{"version":"18w07a","status":"added","notes":"Added stripped logs, a variant of logs , which can be used to craft wood planks."}],"colors":{"primary":"#653147","dominant_hex":"#7c3c54","average_hex":"#653147","hue_group":"red","lightness":0.2941,"saturation":0.3467,"palette":["#7c3c54","#6c344c","#5c3444","#472434","#843c5c","#3c1c2c"],"color_groups":[{"hex":"#7c3c54","weight":0.2031,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#6c344c","weight":0.1875,"lightness":0.3137,"saturation":0.35,"hue_group":"red"},{"hex":"#5c3444","weight":0.1836,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#472434","weight":0.1641,"lightness":0.2098,"saturation":0.3271,"hue_group":"red"},{"hex":"#843c5c","weight":0.1484,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#3c1c2c","weight":0.1133,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_planks.png","family":"crimson","relations":[{"type":"variants","target":"minecraft:crimson_door","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_door","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_fence","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_fence","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_slab","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_slab","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_stairs","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_stairs","label":"Related set: crimson","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_stairs","label":"Palette proche: Crimson Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_wall_sign","label":"Palette proche: Crimson Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.744},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.743},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.743},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.724},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.723},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence_gate","label":"Couleurs analogues: Crimson Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_pressure_plate","label":"Couleurs analogues: Crimson Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_sign","label":"Couleurs analogues: Crimson Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_slab","label":"Couleurs analogues: Crimson Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_stairs","label":"Couleurs analogues: Crimson Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_wall_sign","label":"Couleurs analogues: Crimson Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.947},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.928},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.92},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.92},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.943},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.942},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.924},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.872},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.85},{"type":"color_triad","target":"minecraft:jungle_sapling","label":"Harmonie triadique: Jungle Sapling","confidence":0.834},{"type":"color_triad","target":"minecraft:potted_jungle_sapling","label":"Harmonie triadique: Potted Jungle Sapling","confidence":0.834},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.959},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.938},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.936},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.917},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.91},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.656},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.607},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.6},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.574}],"category":"building"},{"id":"minecraft:crimson_pressure_plate","name":"Crimson Pressure Plate","entry_type":"block","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","history":[{"version":"v1.0.1","status":"added","notes":"Added wooden pressure plates."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped pressure plates."},{"version":"1.19 22w11a","status":"added","notes":"Added mangrove pressure plates."}],"colors":{"primary":"#653147","dominant_hex":"#7c3c54","average_hex":"#653147","hue_group":"red","lightness":0.2941,"saturation":0.3467,"palette":["#7c3c54","#6c344c","#5c3444","#472434","#843c5c","#3c1c2c"],"color_groups":[{"hex":"#7c3c54","weight":0.2031,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#6c344c","weight":0.1875,"lightness":0.3137,"saturation":0.35,"hue_group":"red"},{"hex":"#5c3444","weight":0.1836,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#472434","weight":0.1641,"lightness":0.2098,"saturation":0.3271,"hue_group":"red"},{"hex":"#843c5c","weight":0.1484,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#3c1c2c","weight":0.1133,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_planks.png","family":"crimson_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_stairs","label":"Palette proche: Crimson Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_wall_sign","label":"Palette proche: Crimson Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.744},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.743},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.743},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.724},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.723},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence_gate","label":"Couleurs analogues: Crimson Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_planks","label":"Couleurs analogues: Crimson Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_sign","label":"Couleurs analogues: Crimson Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_slab","label":"Couleurs analogues: Crimson Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_stairs","label":"Couleurs analogues: Crimson Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_wall_sign","label":"Couleurs analogues: Crimson Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.947},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.928},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.92},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.92},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.943},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.942},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.924},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.872},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.85},{"type":"color_triad","target":"minecraft:jungle_sapling","label":"Harmonie triadique: Jungle Sapling","confidence":0.834},{"type":"color_triad","target":"minecraft:potted_jungle_sapling","label":"Harmonie triadique: Potted Jungle Sapling","confidence":0.834},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.959},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.938},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.936},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.917},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.91},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.656},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.607},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.6},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.574}],"category":"building"},{"id":"minecraft:crimson_roots","name":"Crimson Roots","entry_type":"block","description":"Crimson roots are a non-solid \"plant\" block that generate naturally on nylium and soul soil in few Nether biomes. They resemble a colony of tall, thin mushrooms.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added crimson roots."}],"colors":{"primary":"#7e082a","dominant_hex":"#940434","average_hex":"#7e082a","hue_group":"red","lightness":0.2627,"saturation":0.8806,"palette":["#940434","#640424","#ac141c","#54042c"],"color_groups":[{"hex":"#940434","weight":0.3077,"lightness":0.298,"saturation":0.9474,"hue_group":"red"},{"hex":"#640424","weight":0.2857,"lightness":0.2039,"saturation":0.9231,"hue_group":"red"},{"hex":"#ac141c","weight":0.2088,"lightness":0.3765,"saturation":0.7917,"hue_group":"red"},{"hex":"#54042c","weight":0.1978,"lightness":0.1725,"saturation":0.9091,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_roots.png","family":"crimson_roots","relations":[{"type":"visual_neighbors","target":"minecraft:potted_crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines_plant","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_crimson_roots","label":"Palette proche: Potted Crimson Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.792},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.778},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.777},{"type":"color_neighbors","target":"minecraft:weeping_vines","label":"Palette proche: Weeping Vines","confidence":0.765},{"type":"color_neighbors","target":"minecraft:redstone_block","label":"Palette proche: Redstone Block","confidence":0.748},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.731},{"type":"color_neighbors","target":"minecraft:barrier","label":"Palette proche: Barrier","confidence":0.724},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.724},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.718},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.714},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.714},{"type":"color_bridge","target":"minecraft:carved_pumpkin","label":"Pont de nuance par palette: Carved Pumpkin","confidence":0.638},{"type":"color_bridge","target":"minecraft:resin_brick_slab","label":"Pont de nuance par palette: Resin Brick Slab","confidence":0.636},{"type":"color_bridge","target":"minecraft:resin_brick_stairs","label":"Pont de nuance par palette: Resin Brick Stairs","confidence":0.636},{"type":"color_bridge","target":"minecraft:resin_brick_wall","label":"Pont de nuance par palette: Resin Brick Wall","confidence":0.636},{"type":"color_bridge","target":"minecraft:resin_bricks","label":"Pont de nuance par palette: Resin Bricks","confidence":0.636},{"type":"color_bridge","target":"minecraft:lava","label":"Pont de nuance par palette: Lava","confidence":0.619},{"type":"color_bridge","target":"minecraft:resin_block","label":"Pont de nuance par palette: Resin Block","confidence":0.616},{"type":"color_bridge","target":"minecraft:chiseled_red_sandstone","label":"Pont de nuance par palette: Chiseled Red Sandstone","confidence":0.612},{"type":"color_bridge","target":"minecraft:red_sandstone","label":"Pont de nuance par palette: Red Sandstone","confidence":0.61},{"type":"color_bridge","target":"minecraft:red_sandstone_wall","label":"Pont de nuance par palette: Red Sandstone Wall","confidence":0.61},{"type":"color_analogous","target":"minecraft:potted_crimson_roots","label":"Couleurs analogues: Potted Crimson Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_terracotta","label":"Couleurs analogues: Purple Terracotta","confidence":0.919},{"type":"color_analogous","target":"minecraft:magenta_terracotta","label":"Couleurs analogues: Magenta Terracotta","confidence":0.892},{"type":"color_analogous","target":"minecraft:pink_carpet","label":"Couleurs analogues: Pink Carpet","confidence":0.862},{"type":"color_analogous","target":"minecraft:pink_wool","label":"Couleurs analogues: Pink Wool","confidence":0.862},{"type":"color_analogous","target":"minecraft:pink_shulker_box","label":"Couleurs analogues: Pink Shulker Box","confidence":0.854},{"type":"color_analogous","target":"minecraft:cracked_nether_bricks","label":"Couleurs analogues: Cracked Nether Bricks","confidence":0.853},{"type":"color_analogous","target":"minecraft:pink_stained_glass","label":"Couleurs analogues: Pink Stained Glass","confidence":0.851},{"type":"color_complement","target":"minecraft:oxidized_copper_chain","label":"Contraste complementaire: Oxidized Copper Chain","confidence":0.841},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chain","label":"Contraste complementaire: Waxed Oxidized Copper Chain","confidence":0.841},{"type":"color_complement","target":"minecraft:oxidized_copper_door","label":"Contraste complementaire: Oxidized Copper Door","confidence":0.828},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_door","label":"Contraste complementaire: Waxed Oxidized Copper Door","confidence":0.828},{"type":"color_complement","target":"minecraft:oxidized_lightning_rod","label":"Contraste complementaire: Oxidized Lightning Rod","confidence":0.827},{"type":"color_complement","target":"minecraft:waxed_oxidized_lightning_rod","label":"Contraste complementaire: Waxed Oxidized Lightning Rod","confidence":0.827},{"type":"color_complement","target":"minecraft:oxidized_copper","label":"Contraste complementaire: Oxidized Copper","confidence":0.781},{"type":"color_complement","target":"minecraft:oxidized_copper_chest","label":"Contraste complementaire: Oxidized Copper Chest","confidence":0.781},{"type":"color_triad","target":"minecraft:black_concrete","label":"Harmonie triadique: Black Concrete","confidence":0.948},{"type":"color_triad","target":"minecraft:tube_coral_fan","label":"Harmonie triadique: Tube Coral Fan","confidence":0.914},{"type":"color_triad","target":"minecraft:tube_coral_wall_fan","label":"Harmonie triadique: Tube Coral Wall Fan","confidence":0.914},{"type":"color_triad","target":"minecraft:pink_tulip","label":"Harmonie triadique: Pink Tulip","confidence":0.905},{"type":"color_triad","target":"minecraft:potted_pink_tulip","label":"Harmonie triadique: Potted Pink Tulip","confidence":0.905},{"type":"color_triad","target":"minecraft:beetroots","label":"Harmonie triadique: Beetroots","confidence":0.903},{"type":"color_triad","target":"minecraft:sunflower","label":"Harmonie triadique: Sunflower","confidence":0.892},{"type":"color_triad","target":"minecraft:lapis_block","label":"Harmonie triadique: Lapis Block","confidence":0.883},{"type":"color_square","target":"minecraft:lime_terracotta","label":"Harmonie carree: Lime Terracotta","confidence":0.951},{"type":"color_square","target":"minecraft:cave_vines_plant","label":"Harmonie carree: Cave Vines Plant","confidence":0.949},{"type":"color_square","target":"minecraft:flowering_azalea_leaves","label":"Harmonie carree: Flowering Azalea Leaves","confidence":0.932},{"type":"color_square","target":"minecraft:bamboo_block","label":"Harmonie carree: Bamboo Block","confidence":0.928},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.913},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.913},{"type":"color_square","target":"minecraft:lime_glazed_terracotta","label":"Harmonie carree: Lime Glazed Terracotta","confidence":0.893},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.88},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.671},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.637},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.624},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.624},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.624},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.624},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.615},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.593}],"category":"natural"},{"id":"minecraft:crimson_shelf","name":"Crimson Shelf","entry_type":"block","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added shelves."},{"version":"wiki-history","status":"added","notes":"Added the align_items_to_bottom block state property, by default set to false, to display items at the bottom of the shelf rather than in the middle."}],"colors":{"primary":"#813453","dominant_hex":"#7c2c4c","average_hex":"#813453","hue_group":"red","lightness":0.3549,"saturation":0.4254,"palette":["#7c2c4c","#7d3554","#8b3c5c","#652840","#a7476f","#943c64"],"color_groups":[{"hex":"#7c2c4c","weight":0.2861,"lightness":0.3294,"saturation":0.4762,"hue_group":"red"},{"hex":"#7d3554","weight":0.2568,"lightness":0.349,"saturation":0.4045,"hue_group":"red"},{"hex":"#8b3c5c","weight":0.1475,"lightness":0.3902,"saturation":0.397,"hue_group":"red"},{"hex":"#652840","weight":0.1113,"lightness":0.2765,"saturation":0.4326,"hue_group":"red"},{"hex":"#a7476f","weight":0.1006,"lightness":0.4667,"saturation":0.4034,"hue_group":"red"},{"hex":"#943c64","weight":0.0977,"lightness":0.4078,"saturation":0.4231,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_shelf.png","family":"crimson_shelf","relations":[{"type":"visual_neighbors","target":"minecraft:brown_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_pot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_bamboo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cactus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_crimson_hyphae","label":"Palette proche: Stripped Crimson Hyphae","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_crimson_stem","label":"Palette proche: Stripped Crimson Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.913},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.905},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.892},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.892},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.892},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.892},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.892},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.892},{"type":"color_bridge","target":"minecraft:mycelium","label":"Pont de nuance par palette: Mycelium","confidence":0.725},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.721},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.704},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.698},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.695},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.695},{"type":"color_bridge","target":"minecraft:closed_eyeblossom","label":"Pont de nuance par palette: Closed Eyeblossom","confidence":0.693},{"type":"color_bridge","target":"minecraft:potted_closed_eyeblossom","label":"Pont de nuance par palette: Potted Closed Eyeblossom","confidence":0.693},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.692},{"type":"color_bridge","target":"minecraft:magma_block","label":"Pont de nuance par palette: Magma Block","confidence":0.662},{"type":"color_analogous","target":"minecraft:crimson_hanging_sign","label":"Couleurs analogues: Crimson Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_wall_hanging_sign","label":"Couleurs analogues: Crimson Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_crimson_hyphae","label":"Couleurs analogues: Stripped Crimson Hyphae","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_crimson_stem","label":"Couleurs analogues: Stripped Crimson Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_door","label":"Couleurs analogues: Crimson Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_trapdoor","label":"Couleurs analogues: Crimson Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.953},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.953},{"type":"color_complement","target":"minecraft:oxidized_copper_grate","label":"Contraste complementaire: Oxidized Copper Grate","confidence":0.944},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_grate","label":"Contraste complementaire: Waxed Oxidized Copper Grate","confidence":0.944},{"type":"color_complement","target":"minecraft:oxidized_cut_copper","label":"Contraste complementaire: Oxidized Cut Copper","confidence":0.941},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.943},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.913},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.903},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.902},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.901},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.883},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.871},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.871},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.96},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.936},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.866},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.596},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.562},{"type":"value_contrast","target":"minecraft:cherry_leaves","label":"Contraste clair sombre: Cherry Leaves","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_concrete_powder","label":"Contraste clair sombre: Pink Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_glazed_terracotta","label":"Contraste clair sombre: Pink Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_carpet","label":"Contraste clair sombre: Pink Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_wool","label":"Contraste clair sombre: Pink Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_stained_glass","label":"Contraste clair sombre: Pink Stained Glass","confidence":0.55}],"category":""},{"id":"minecraft:crimson_sign","name":"Crimson Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#653147","dominant_hex":"#7c3c54","average_hex":"#653147","hue_group":"red","lightness":0.2941,"saturation":0.3467,"palette":["#7c3c54","#6c344c","#5c3444","#472434","#843c5c","#3c1c2c"],"color_groups":[{"hex":"#7c3c54","weight":0.2031,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#6c344c","weight":0.1875,"lightness":0.3137,"saturation":0.35,"hue_group":"red"},{"hex":"#5c3444","weight":0.1836,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#472434","weight":0.1641,"lightness":0.2098,"saturation":0.3271,"hue_group":"red"},{"hex":"#843c5c","weight":0.1484,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#3c1c2c","weight":0.1133,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_planks.png","family":"crimson_sign","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_stairs","label":"Palette proche: Crimson Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_wall_sign","label":"Palette proche: Crimson Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.744},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.743},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.743},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.724},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.723},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence_gate","label":"Couleurs analogues: Crimson Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_planks","label":"Couleurs analogues: Crimson Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_pressure_plate","label":"Couleurs analogues: Crimson Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_slab","label":"Couleurs analogues: Crimson Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_stairs","label":"Couleurs analogues: Crimson Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_wall_sign","label":"Couleurs analogues: Crimson Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.947},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.928},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.92},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.92},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.943},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.942},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.924},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.872},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.85},{"type":"color_triad","target":"minecraft:jungle_sapling","label":"Harmonie triadique: Jungle Sapling","confidence":0.834},{"type":"color_triad","target":"minecraft:potted_jungle_sapling","label":"Harmonie triadique: Potted Jungle Sapling","confidence":0.834},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.959},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.938},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.936},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.917},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.91},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.656},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.607},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.6},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.574}],"category":"building"},{"id":"minecraft:crimson_slab","name":"Crimson Slab","entry_type":"block","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","history":[{"version":"1.7.2 1.7","status":"added","notes":"Added acacia and dark oak slabs."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped slabs."}],"colors":{"primary":"#653147","dominant_hex":"#7c3c54","average_hex":"#653147","hue_group":"red","lightness":0.2941,"saturation":0.3467,"palette":["#7c3c54","#6c344c","#5c3444","#472434","#843c5c","#3c1c2c"],"color_groups":[{"hex":"#7c3c54","weight":0.2031,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#6c344c","weight":0.1875,"lightness":0.3137,"saturation":0.35,"hue_group":"red"},{"hex":"#5c3444","weight":0.1836,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#472434","weight":0.1641,"lightness":0.2098,"saturation":0.3271,"hue_group":"red"},{"hex":"#843c5c","weight":0.1484,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#3c1c2c","weight":0.1133,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_planks.png","family":"crimson","relations":[{"type":"variants","target":"minecraft:crimson_door","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_door","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_fence","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_fence","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_planks","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_planks","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_stairs","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_stairs","label":"Related set: crimson","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_stairs","label":"Palette proche: Crimson Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_wall_sign","label":"Palette proche: Crimson Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.744},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.743},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.743},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.724},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.723},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence_gate","label":"Couleurs analogues: Crimson Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_planks","label":"Couleurs analogues: Crimson Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_pressure_plate","label":"Couleurs analogues: Crimson Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_sign","label":"Couleurs analogues: Crimson Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_stairs","label":"Couleurs analogues: Crimson Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_wall_sign","label":"Couleurs analogues: Crimson Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.947},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.928},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.92},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.92},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.943},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.942},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.924},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.872},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.85},{"type":"color_triad","target":"minecraft:jungle_sapling","label":"Harmonie triadique: Jungle Sapling","confidence":0.834},{"type":"color_triad","target":"minecraft:potted_jungle_sapling","label":"Harmonie triadique: Potted Jungle Sapling","confidence":0.834},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.959},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.938},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.936},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.917},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.91},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.656},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.607},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.6},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.574}],"category":"building"},{"id":"minecraft:crimson_stairs","name":"Crimson Stairs","entry_type":"block","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","history":[{"version":"20100629","status":"added","notes":"Added \"wooden\" stairs."},{"version":"1.3.1 12w25a","status":"added","notes":"Added wooden stairs for the remaining three wood types (spruce, birch, and jungle)."},{"version":"12w26a","status":"added","notes":"Added crafting recipes for spruce, birch, and jungle wood stairs."}],"colors":{"primary":"#653147","dominant_hex":"#7c3c54","average_hex":"#653147","hue_group":"red","lightness":0.2941,"saturation":0.3467,"palette":["#7c3c54","#6c344c","#5c3444","#472434","#843c5c","#3c1c2c"],"color_groups":[{"hex":"#7c3c54","weight":0.2031,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#6c344c","weight":0.1875,"lightness":0.3137,"saturation":0.35,"hue_group":"red"},{"hex":"#5c3444","weight":0.1836,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#472434","weight":0.1641,"lightness":0.2098,"saturation":0.3271,"hue_group":"red"},{"hex":"#843c5c","weight":0.1484,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#3c1c2c","weight":0.1133,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_planks.png","family":"crimson","relations":[{"type":"variants","target":"minecraft:crimson_door","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_door","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_fence","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_fence","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_planks","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_planks","label":"Related set: crimson","confidence":0.8},{"type":"variants","target":"minecraft:crimson_slab","label":"Same family: crimson","confidence":0.75},{"type":"related_sets","target":"minecraft:crimson_slab","label":"Related set: crimson","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_wall_sign","label":"Palette proche: Crimson Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.744},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.743},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.743},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.724},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.723},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence_gate","label":"Couleurs analogues: Crimson Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_planks","label":"Couleurs analogues: Crimson Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_pressure_plate","label":"Couleurs analogues: Crimson Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_sign","label":"Couleurs analogues: Crimson Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_slab","label":"Couleurs analogues: Crimson Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_wall_sign","label":"Couleurs analogues: Crimson Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.947},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.928},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.92},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.92},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.943},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.942},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.924},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.872},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.85},{"type":"color_triad","target":"minecraft:jungle_sapling","label":"Harmonie triadique: Jungle Sapling","confidence":0.834},{"type":"color_triad","target":"minecraft:potted_jungle_sapling","label":"Harmonie triadique: Potted Jungle Sapling","confidence":0.834},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.959},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.938},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.936},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.917},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.91},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.656},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.607},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.6},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.574}],"category":"building"},{"id":"minecraft:crimson_stem","name":"Crimson Stem","entry_type":"block","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","history":[{"version":"0.0.14a","status":"added","notes":"Added wood."},{"version":"1.2","status":"added","notes":"Added spruce and birch wood."},{"version":"wiki-history","status":"added","notes":"Added \"Getting Wood\" achievement for picking up a wood item ."}],"colors":{"primary":"#5d1a1e","dominant_hex":"#541c14","average_hex":"#5d1a1e","hue_group":"red","lightness":0.2333,"saturation":0.563,"palette":["#541c14","#442434","#4c2434","#7c0404","#941212","#542c3c"],"color_groups":[{"hex":"#541c14","weight":0.3164,"lightness":0.2039,"saturation":0.6154,"hue_group":"red"},{"hex":"#442434","weight":0.1758,"lightness":0.2039,"saturation":0.3077,"hue_group":"red"},{"hex":"#4c2434","weight":0.1523,"lightness":0.2196,"saturation":0.3571,"hue_group":"red"},{"hex":"#7c0404","weight":0.1492,"lightness":0.251,"saturation":0.9375,"hue_group":"red"},{"hex":"#941212","weight":0.1203,"lightness":0.3255,"saturation":0.7831,"hue_group":"red"},{"hex":"#542c3c","weight":0.0859,"lightness":0.251,"saturation":0.3125,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_stem.png","family":"crimson_stem","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_lamp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_hyphae","label":"Palette proche: Crimson Hyphae","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.794},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.781},{"type":"color_neighbors","target":"minecraft:weeping_vines","label":"Palette proche: Weeping Vines","confidence":0.775},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.774},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.764},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.759},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.758},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.758},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.758},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.758},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.758},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.714},{"type":"color_bridge","target":"minecraft:gilded_blackstone","label":"Pont de nuance par sous-ton: Gilded Blackstone","confidence":0.709},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.689},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.681},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.678},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.678},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.678},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.678},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.677},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.677},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_glazed_terracotta","label":"Couleurs analogues: Black Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_wart","label":"Couleurs analogues: Nether Wart","confidence":0.954},{"type":"color_analogous","target":"minecraft:fire_coral","label":"Couleurs analogues: Fire Coral","confidence":0.953},{"type":"color_analogous","target":"minecraft:red_nether_brick_slab","label":"Couleurs analogues: Red Nether Brick Slab","confidence":0.946},{"type":"color_analogous","target":"minecraft:red_nether_brick_stairs","label":"Couleurs analogues: Red Nether Brick Stairs","confidence":0.946},{"type":"color_analogous","target":"minecraft:red_nether_brick_wall","label":"Couleurs analogues: Red Nether Brick Wall","confidence":0.946},{"type":"color_analogous","target":"minecraft:red_nether_bricks","label":"Couleurs analogues: Red Nether Bricks","confidence":0.946},{"type":"color_complement","target":"minecraft:warped_door","label":"Contraste complementaire: Warped Door","confidence":0.96},{"type":"color_complement","target":"minecraft:beacon","label":"Contraste complementaire: Beacon","confidence":0.96},{"type":"color_complement","target":"minecraft:diamond_block","label":"Contraste complementaire: Diamond Block","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_shelf","label":"Contraste complementaire: Warped Shelf","confidence":0.954},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.933},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.933},{"type":"color_complement","target":"minecraft:warped_hanging_sign","label":"Contraste complementaire: Warped Hanging Sign","confidence":0.933},{"type":"color_complement","target":"minecraft:warped_wall_hanging_sign","label":"Contraste complementaire: Warped Wall Hanging Sign","confidence":0.933},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.946},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.946},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.921},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.907},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.906},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.869},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.817},{"type":"color_square","target":"minecraft:oak_sapling","label":"Harmonie carree: Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_oak_sapling","label":"Harmonie carree: Potted Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:orange_tulip","label":"Harmonie carree: Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_orange_tulip","label":"Harmonie carree: Potted Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:lime_concrete_powder","label":"Harmonie carree: Lime Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:lime_stained_glass","label":"Harmonie carree: Lime Stained Glass","confidence":0.957},{"type":"color_square","target":"minecraft:large_amethyst_bud","label":"Harmonie carree: Large Amethyst Bud","confidence":0.953},{"type":"color_square","target":"minecraft:lime_stained_glass_pane","label":"Harmonie carree: Lime Stained Glass Pane","confidence":0.951},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.71},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.677},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.667},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.667},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.667},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.667},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.654},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.626}],"category":"natural"},{"id":"minecraft:crimson_trapdoor","name":"Crimson Trapdoor","entry_type":"block","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","history":[{"version":"1.6","status":"added","notes":"Added wooden trapdoors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped trapdoors."}],"colors":{"primary":"#683348","dominant_hex":"#5c3444","average_hex":"#683348","hue_group":"red","lightness":0.3039,"saturation":0.3419,"palette":["#5c3444","#4c2434","#944464","#843c5c","#7c3c54","#6c344c"],"color_groups":[{"hex":"#5c3444","weight":0.2963,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#4c2434","weight":0.287,"lightness":0.2196,"saturation":0.3571,"hue_group":"red"},{"hex":"#944464","weight":0.1528,"lightness":0.4235,"saturation":0.3704,"hue_group":"red"},{"hex":"#843c5c","weight":0.1111,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#7c3c54","weight":0.088,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#6c344c","weight":0.0648,"lightness":0.3137,"saturation":0.35,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_trapdoor.png","family":"crimson_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_stairs","label":"Palette proche: Crimson Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_wall_sign","label":"Palette proche: Crimson Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_shelf","label":"Palette proche: Crimson Shelf","confidence":0.905},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.753},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.753},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.74},{"type":"color_bridge","target":"minecraft:mycelium","label":"Pont de nuance par palette: Mycelium","confidence":0.733},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.73},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.73},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.73},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.73},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.73},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.73},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence_gate","label":"Couleurs analogues: Crimson Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_planks","label":"Couleurs analogues: Crimson Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_pressure_plate","label":"Couleurs analogues: Crimson Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_sign","label":"Couleurs analogues: Crimson Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_slab","label":"Couleurs analogues: Crimson Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_stairs","label":"Couleurs analogues: Crimson Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_cut_copper","label":"Contraste complementaire: Oxidized Cut Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_cut_copper_slab","label":"Contraste complementaire: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_cut_copper_stairs","label":"Contraste complementaire: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_cut_copper","label":"Contraste complementaire: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Contraste complementaire: Waxed Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.935},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.935},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.911},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.893},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.893},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.88},{"type":"color_triad","target":"minecraft:potted_spruce_sapling","label":"Harmonie triadique: Potted Spruce Sapling","confidence":0.88},{"type":"color_triad","target":"minecraft:spruce_sapling","label":"Harmonie triadique: Spruce Sapling","confidence":0.88},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.958},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.946},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.85},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.647},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.613},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.598},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.598},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.598},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.598},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.591},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.565}],"category":"building"},{"id":"minecraft:crimson_wall_hanging_sign","name":"Crimson Wall Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#89395a","dominant_hex":"#8c3c5c","average_hex":"#89395a","hue_group":"red","lightness":0.3804,"saturation":0.4124,"palette":["#8c3c5c","#973d65","#843c54","#7c3454","#843c5c","#7c2c4c"],"color_groups":[{"hex":"#8c3c5c","weight":0.3203,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#973d65","weight":0.293,"lightness":0.4157,"saturation":0.4245,"hue_group":"red"},{"hex":"#843c54","weight":0.1719,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#7c3454","weight":0.0898,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#843c5c","weight":0.0664,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#7c2c4c","weight":0.0586,"lightness":0.3294,"saturation":0.4762,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_crimson_stem.png","family":"crimson_wall_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_pot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_bamboo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cactus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_crimson_hyphae","label":"Palette proche: Stripped Crimson Hyphae","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_crimson_stem","label":"Palette proche: Stripped Crimson Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_shelf","label":"Palette proche: Crimson Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.91},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:mycelium","label":"Pont de nuance par palette: Mycelium","confidence":0.741},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.726},{"type":"color_bridge","target":"minecraft:flower_pot","label":"Pont de nuance par palette: Flower Pot","confidence":0.715},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.715},{"type":"color_bridge","target":"minecraft:potted_bamboo","label":"Pont de nuance par palette: Potted Bamboo","confidence":0.715},{"type":"color_bridge","target":"minecraft:potted_cactus","label":"Pont de nuance par palette: Potted Cactus","confidence":0.715},{"type":"color_bridge","target":"minecraft:potted_mangrove_propagule","label":"Pont de nuance par palette: Potted Mangrove Propagule","confidence":0.715},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.707},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.695},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.689},{"type":"color_analogous","target":"minecraft:crimson_hanging_sign","label":"Couleurs analogues: Crimson Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_crimson_hyphae","label":"Couleurs analogues: Stripped Crimson Hyphae","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_crimson_stem","label":"Couleurs analogues: Stripped Crimson Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_shelf","label":"Couleurs analogues: Crimson Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_door","label":"Couleurs analogues: Crimson Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_trapdoor","label":"Couleurs analogues: Crimson Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.935},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.935},{"type":"color_complement","target":"minecraft:oxidized_copper_grate","label":"Contraste complementaire: Oxidized Copper Grate","confidence":0.926},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_grate","label":"Contraste complementaire: Waxed Oxidized Copper Grate","confidence":0.926},{"type":"color_complement","target":"minecraft:oxidized_cut_copper","label":"Contraste complementaire: Oxidized Cut Copper","confidence":0.922},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.924},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.922},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.905},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.892},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.879},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.849},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.849},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.957},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.911},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.889},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.572},{"type":"value_contrast","target":"minecraft:cherry_leaves","label":"Contraste clair sombre: Cherry Leaves","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_concrete_powder","label":"Contraste clair sombre: Pink Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_glazed_terracotta","label":"Contraste clair sombre: Pink Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_carpet","label":"Contraste clair sombre: Pink Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_wool","label":"Contraste clair sombre: Pink Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.55}],"category":"building"},{"id":"minecraft:crimson_wall_sign","name":"Crimson Wall Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#653147","dominant_hex":"#7c3c54","average_hex":"#653147","hue_group":"red","lightness":0.2941,"saturation":0.3467,"palette":["#7c3c54","#6c344c","#5c3444","#472434","#843c5c","#3c1c2c"],"color_groups":[{"hex":"#7c3c54","weight":0.2031,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#6c344c","weight":0.1875,"lightness":0.3137,"saturation":0.35,"hue_group":"red"},{"hex":"#5c3444","weight":0.1836,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#472434","weight":0.1641,"lightness":0.2098,"saturation":0.3271,"hue_group":"red"},{"hex":"#843c5c","weight":0.1484,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#3c1c2c","weight":0.1133,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_planks.png","family":"crimson_wall_sign","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_stairs","label":"Palette proche: Crimson Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.744},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.743},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.743},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.724},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.724},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.723},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.723},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence_gate","label":"Couleurs analogues: Crimson Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_planks","label":"Couleurs analogues: Crimson Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_pressure_plate","label":"Couleurs analogues: Crimson Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_sign","label":"Couleurs analogues: Crimson Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_slab","label":"Couleurs analogues: Crimson Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_stairs","label":"Couleurs analogues: Crimson Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.947},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.947},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.928},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.922},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.92},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.92},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.943},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.942},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.924},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.872},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.85},{"type":"color_triad","target":"minecraft:jungle_sapling","label":"Harmonie triadique: Jungle Sapling","confidence":0.834},{"type":"color_triad","target":"minecraft:potted_jungle_sapling","label":"Harmonie triadique: Potted Jungle Sapling","confidence":0.834},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.959},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.938},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.938},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.936},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.917},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.91},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.656},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.607},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.607},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.6},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.574}],"category":"building"},{"id":"minecraft:crossbow","name":"Crossbow","entry_type":"item","description":"A crossbow is a ranged weapon that can load and fire arrows, arrow variants, and firework rockets. Holding use will load it and it will remain loaded until it is fired, after which it can be loaded again.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added crossbows."},{"version":"wiki-history","status":"added","notes":"Added pillagers , which can also spawn with and drop crossbows."},{"version":"1.16 20w07a","status":"added","notes":"Added piglins , which can spawn with and drop crossbows."}],"colors":{"primary":"#5c452b","dominant_hex":"#7b501e","average_hex":"#5c452b","hue_group":"yellow","lightness":0.2647,"saturation":0.363,"palette":["#7b501e","#8e8e8e","#4c2c14","#1c1404","#4f3f24","#311f0c"],"color_groups":[{"hex":"#7b501e","weight":0.2619,"lightness":0.3,"saturation":0.6078,"hue_group":"yellow"},{"hex":"#8e8e8e","weight":0.1825,"lightness":0.5569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c2c14","weight":0.1667,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"},{"hex":"#1c1404","weight":0.1508,"lightness":0.0627,"saturation":0.75,"hue_group":"yellow"},{"hex":"#4f3f24","weight":0.1429,"lightness":0.2255,"saturation":0.3739,"hue_group":"yellow"},{"hex":"#311f0c","weight":0.0952,"lightness":0.1196,"saturation":0.6066,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/crossbow_arrow.png","family":"crossbow","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:book","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stew","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:crying_obsidian","name":"Crying Obsidian","entry_type":"block","description":"Crying obsidian is a luminous variant of obsidian that can be used to craft a respawn anchor. Purple particles drip from its faces. Like obsidian, It has high hardness and blast resistance, making it immune to normal explosions. It can be obtained by mining it with a diamond or netherite pickaxe.","history":[{"version":"1.3","status":"added","notes":"added to terrain.png ."},{"version":"1.16 20w09a","status":"added","notes":"Added crying obsidian."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb crying obsidian, providing the football/regular effect to the mob."}],"colors":{"primary":"#210a3c","dominant_hex":"#04040c","average_hex":"#210a3c","hue_group":"blue","lightness":0.1373,"saturation":0.7143,"palette":["#04040c","#140c1c","#2d1f45","#040404","#6d06bc","#2c047c"],"color_groups":[{"hex":"#04040c","weight":0.2031,"lightness":0.0314,"saturation":0.5,"hue_group":"blue"},{"hex":"#140c1c","weight":0.1914,"lightness":0.0784,"saturation":0.4,"hue_group":"purple"},{"hex":"#2d1f45","weight":0.1836,"lightness":0.1961,"saturation":0.38,"hue_group":"blue"},{"hex":"#040404","weight":0.168,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6d06bc","weight":0.1406,"lightness":0.3804,"saturation":0.9381,"hue_group":"purple"},{"hex":"#2c047c","weight":0.1133,"lightness":0.251,"saturation":0.9375,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crying_obsidian.png","family":"crying_obsidian","relations":[{"type":"visual_neighbors","target":"minecraft:lapis_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:respawn_anchor","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_gateway","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_chest","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:obsidian","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_shulker_box","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:end_gateway","label":"Palette proche: End Gateway","confidence":0.909},{"type":"color_neighbors","target":"minecraft:end_portal","label":"Palette proche: End Portal","confidence":0.909},{"type":"color_neighbors","target":"minecraft:ender_chest","label":"Palette proche: Ender Chest","confidence":0.909},{"type":"color_neighbors","target":"minecraft:obsidian","label":"Palette proche: Obsidian","confidence":0.909},{"type":"color_neighbors","target":"minecraft:respawn_anchor","label":"Palette proche: Respawn Anchor","confidence":0.853},{"type":"color_neighbors","target":"minecraft:dragon_egg","label":"Palette proche: Dragon Egg","confidence":0.693},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.674},{"type":"color_neighbors","target":"minecraft:black_concrete","label":"Palette proche: Black Concrete","confidence":0.637},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.633},{"type":"color_neighbors","target":"minecraft:coal_block","label":"Palette proche: Coal Block","confidence":0.625},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.623},{"type":"color_neighbors","target":"minecraft:tinted_glass","label":"Palette proche: Tinted Glass","confidence":0.616},{"type":"color_bridge","target":"minecraft:black_concrete","label":"Pont de nuance par palette: Black Concrete","confidence":0.701},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.698},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.691},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.69},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par sous-ton: Tinted Glass","confidence":0.684},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par sous-ton: Black Carpet","confidence":0.669},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par sous-ton: Black Wool","confidence":0.669},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.666},{"type":"color_bridge","target":"minecraft:jigsaw","label":"Pont de nuance par sous-ton: Jigsaw","confidence":0.663},{"type":"color_bridge","target":"minecraft:structure_block","label":"Pont de nuance par sous-ton: Structure Block","confidence":0.651},{"type":"color_analogous","target":"minecraft:respawn_anchor","label":"Couleurs analogues: Respawn Anchor","confidence":0.918},{"type":"color_analogous","target":"minecraft:nether_portal","label":"Couleurs analogues: Nether Portal","confidence":0.898},{"type":"color_analogous","target":"minecraft:medium_amethyst_bud","label":"Couleurs analogues: Medium Amethyst Bud","confidence":0.897},{"type":"color_analogous","target":"minecraft:amethyst_cluster","label":"Couleurs analogues: Amethyst Cluster","confidence":0.893},{"type":"color_analogous","target":"minecraft:large_amethyst_bud","label":"Couleurs analogues: Large Amethyst Bud","confidence":0.891},{"type":"color_analogous","target":"minecraft:allium","label":"Couleurs analogues: Allium","confidence":0.891},{"type":"color_analogous","target":"minecraft:potted_allium","label":"Couleurs analogues: Potted Allium","confidence":0.891},{"type":"color_analogous","target":"minecraft:purple_concrete","label":"Couleurs analogues: Purple Concrete","confidence":0.836},{"type":"color_complement","target":"minecraft:lime_carpet","label":"Contraste complementaire: Lime Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:lime_wool","label":"Contraste complementaire: Lime Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:azure_bluet","label":"Contraste complementaire: Azure Bluet","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_azure_bluet","label":"Contraste complementaire: Potted Azure Bluet","confidence":0.96},{"type":"color_complement","target":"minecraft:orange_tulip","label":"Contraste complementaire: Orange Tulip","confidence":0.956},{"type":"color_complement","target":"minecraft:potted_orange_tulip","label":"Contraste complementaire: Potted Orange Tulip","confidence":0.956},{"type":"color_complement","target":"minecraft:lime_concrete_powder","label":"Contraste complementaire: Lime Concrete Powder","confidence":0.943},{"type":"color_complement","target":"minecraft:lime_shulker_box","label":"Contraste complementaire: Lime Shulker Box","confidence":0.942},{"type":"color_triad","target":"minecraft:cut_red_sandstone_slab","label":"Harmonie triadique: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:red_sandstone_slab","label":"Harmonie triadique: Red Sandstone Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:red_sandstone_stairs","label":"Harmonie triadique: Red Sandstone Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_red_sandstone","label":"Harmonie triadique: Smooth Red Sandstone","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_red_sandstone_slab","label":"Harmonie triadique: Smooth Red Sandstone Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_red_sandstone_stairs","label":"Harmonie triadique: Smooth Red Sandstone Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:chiseled_red_sandstone","label":"Harmonie triadique: Chiseled Red Sandstone","confidence":0.96},{"type":"color_triad","target":"minecraft:cut_red_sandstone","label":"Harmonie triadique: Cut Red Sandstone","confidence":0.96},{"type":"color_square","target":"minecraft:red_nether_brick_slab","label":"Harmonie carree: Red Nether Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:red_nether_brick_stairs","label":"Harmonie carree: Red Nether Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:red_nether_brick_wall","label":"Harmonie carree: Red Nether Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:red_nether_bricks","label":"Harmonie carree: Red Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:nether_wart","label":"Harmonie carree: Nether Wart","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_hyphae","label":"Harmonie carree: Stripped Warped Hyphae","confidence":0.959},{"type":"color_square","target":"minecraft:stripped_warped_stem","label":"Harmonie carree: Stripped Warped Stem","confidence":0.959},{"type":"color_square","target":"minecraft:warped_hanging_sign","label":"Harmonie carree: Warped Hanging Sign","confidence":0.959},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.783},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.75},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.728},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.717},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.717},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.702},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.686},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.675}],"category":""},{"id":"minecraft:cut_copper","name":"Cut Copper","entry_type":"block","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed cut copper and three variants of waxed cut copper."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cut copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#bf6b51","dominant_hex":"#e4846c","average_hex":"#bf6b51","hue_group":"red","lightness":0.5333,"saturation":0.4622,"palette":["#e4846c","#a45c44","#b46444","#cc7454","#9c543c","#d47c5c"],"color_groups":[{"hex":"#e4846c","weight":0.2266,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#a45c44","weight":0.2188,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#b46444","weight":0.1758,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#cc7454","weight":0.1523,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#9c543c","weight":0.1172,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1094,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cut_copper.png","family":"cut_copper","relations":[{"type":"variants","target":"minecraft:cut_copper_slab","label":"Same family: cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:cut_copper_slab","label":"Related set: cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:cut_copper_stairs","label":"Same family: cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:cut_copper_stairs","label":"Related set: cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper","label":"Palette proche: Waxed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Palette proche: Waxed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Palette proche: Waxed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_trapdoor","label":"Palette proche: Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Palette proche: Waxed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.778},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.778},{"type":"color_analogous","target":"minecraft:cut_copper_slab","label":"Couleurs analogues: Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_stairs","label":"Couleurs analogues: Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper","label":"Couleurs analogues: Waxed Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_slab","label":"Couleurs analogues: Waxed Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_stairs","label":"Couleurs analogues: Waxed Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_trapdoor","label":"Couleurs analogues: Waxed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.95},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.923},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.898},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.865},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.817},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.898},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.893},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.88},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.88},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.88},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.88},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.871},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.724},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.953},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.948},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.948},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.945},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:cut_copper_slab","name":"Cut Copper Slab","entry_type":"block","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper slabs and three variants of waxed cut copper slabs."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper slabs."}],"colors":{"primary":"#bf6b51","dominant_hex":"#e4846c","average_hex":"#bf6b51","hue_group":"red","lightness":0.5333,"saturation":0.4622,"palette":["#e4846c","#a45c44","#b46444","#cc7454","#9c543c","#d47c5c"],"color_groups":[{"hex":"#e4846c","weight":0.2266,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#a45c44","weight":0.2188,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#b46444","weight":0.1758,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#cc7454","weight":0.1523,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#9c543c","weight":0.1172,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1094,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cut_copper.png","family":"cut_copper","relations":[{"type":"variants","target":"minecraft:cut_copper","label":"Same family: cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:cut_copper","label":"Related set: cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:cut_copper_stairs","label":"Same family: cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:cut_copper_stairs","label":"Related set: cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper","label":"Palette proche: Waxed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Palette proche: Waxed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Palette proche: Waxed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_trapdoor","label":"Palette proche: Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Palette proche: Waxed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.778},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.778},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_stairs","label":"Couleurs analogues: Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper","label":"Couleurs analogues: Waxed Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_slab","label":"Couleurs analogues: Waxed Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_stairs","label":"Couleurs analogues: Waxed Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_trapdoor","label":"Couleurs analogues: Waxed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.95},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.923},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.898},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.865},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.817},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.898},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.893},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.88},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.88},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.88},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.88},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.871},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.724},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.953},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.948},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.948},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.945},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:cut_copper_stairs","name":"Cut Copper Stairs","entry_type":"block","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper stairs and three variants of waxed cut copper stairs: (waxed) cut copper stairs, (waxed) lightly weathered cut copper stairs, (waxed) semi-weathered cut copper stairs, and weathered cut"},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper stairs."}],"colors":{"primary":"#bf6b51","dominant_hex":"#e4846c","average_hex":"#bf6b51","hue_group":"red","lightness":0.5333,"saturation":0.4622,"palette":["#e4846c","#a45c44","#b46444","#cc7454","#9c543c","#d47c5c"],"color_groups":[{"hex":"#e4846c","weight":0.2266,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#a45c44","weight":0.2188,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#b46444","weight":0.1758,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#cc7454","weight":0.1523,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#9c543c","weight":0.1172,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1094,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cut_copper.png","family":"cut_copper","relations":[{"type":"variants","target":"minecraft:cut_copper","label":"Same family: cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:cut_copper","label":"Related set: cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:cut_copper_slab","label":"Same family: cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:cut_copper_slab","label":"Related set: cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper","label":"Palette proche: Waxed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Palette proche: Waxed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Palette proche: Waxed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_trapdoor","label":"Palette proche: Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Palette proche: Waxed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.778},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.778},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_slab","label":"Couleurs analogues: Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper","label":"Couleurs analogues: Waxed Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_slab","label":"Couleurs analogues: Waxed Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_stairs","label":"Couleurs analogues: Waxed Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_trapdoor","label":"Couleurs analogues: Waxed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.95},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.923},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.898},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.865},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.817},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.898},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.893},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.88},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.88},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.88},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.88},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.871},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.724},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.953},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.948},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.948},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.945},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:cut_red_sandstone","name":"Cut Red Sandstone","entry_type":"block","description":"Cut red sandstone is a variant of red sandstone, obtained through crafting.","history":[{"version":"1.8 14w32a","status":"added","notes":"Added smooth red sandstone."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cut red sandstone, providing the football/regular effect to the mob."}],"colors":{"primary":"#bd6620","dominant_hex":"#c46c24","average_hex":"#bd6620","hue_group":"red","lightness":0.4333,"saturation":0.7104,"palette":["#c46c24","#b4641c","#cc6c24","#d7772f","#9c4c0c","#ac5414"],"color_groups":[{"hex":"#c46c24","weight":0.3906,"lightness":0.4549,"saturation":0.6897,"hue_group":"red"},{"hex":"#b4641c","weight":0.1562,"lightness":0.4078,"saturation":0.7308,"hue_group":"red"},{"hex":"#cc6c24","weight":0.1445,"lightness":0.4706,"saturation":0.7,"hue_group":"red"},{"hex":"#d7772f","weight":0.1367,"lightness":0.5137,"saturation":0.6774,"hue_group":"red"},{"hex":"#9c4c0c","weight":0.1133,"lightness":0.3294,"saturation":0.8571,"hue_group":"red"},{"hex":"#ac5414","weight":0.0586,"lightness":0.3765,"saturation":0.7917,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cut_red_sandstone.png","family":"cut_red_sandstone","relations":[{"type":"variants","target":"minecraft:cut_red_sandstone_slab","label":"Same family: cut_red_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:cut_red_sandstone_slab","label":"Related set: cut_red_sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sand","label":"Palette proche: Red Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Palette proche: Smooth Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Palette proche: Orange Stained Glass Pane","confidence":0.906},{"type":"color_neighbors","target":"minecraft:orange_stained_glass","label":"Palette proche: Orange Stained Glass","confidence":0.902},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.682},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.663},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.663},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.659},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.659},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.647},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.647},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.645},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.645},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.644},{"type":"color_analogous","target":"minecraft:red_sand","label":"Couleurs analogues: Red Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone","label":"Couleurs analogues: Smooth Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_slab","label":"Couleurs analogues: Smooth Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_stairs","label":"Couleurs analogues: Smooth Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone","label":"Couleurs analogues: Red Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.944},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.944},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.944},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.867},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.865},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.843},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.843},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.835},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.941},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.938},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.931},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.912},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.912},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.87},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.937},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.844},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.841},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.841},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.833},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.827},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.809},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.778},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:cut_red_sandstone_slab","name":"Cut Red Sandstone Slab","entry_type":"block","description":"A cut red sandstone slab is a decorative slab variant of cut red sandstone that does not generate naturally and is used for building.","history":[{"version":"1.14 19w12a","status":"added","notes":"Added cut red sandstone slabs."}],"colors":{"primary":"#b5621f","dominant_hex":"#bc6424","average_hex":"#b5621f","hue_group":"red","lightness":0.4157,"saturation":0.7075,"palette":["#bc6424","#b4641c","#ac5c1c","#a45414","#cc6c24"],"color_groups":[{"hex":"#bc6424","weight":0.4375,"lightness":0.4392,"saturation":0.6786,"hue_group":"red"},{"hex":"#b4641c","weight":0.3281,"lightness":0.4078,"saturation":0.7308,"hue_group":"red"},{"hex":"#ac5c1c","weight":0.1602,"lightness":0.3922,"saturation":0.72,"hue_group":"red"},{"hex":"#a45414","weight":0.0391,"lightness":0.3608,"saturation":0.7826,"hue_group":"red"},{"hex":"#cc6c24","weight":0.0352,"lightness":0.4706,"saturation":0.7,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_sandstone_top.png","family":"cut_red_sandstone","relations":[{"type":"variants","target":"minecraft:cut_red_sandstone","label":"Same family: cut_red_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:cut_red_sandstone","label":"Related set: cut_red_sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Palette proche: Smooth Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sand","label":"Palette proche: Red Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_terracotta","label":"Palette proche: Orange Terracotta","confidence":0.899},{"type":"color_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Palette proche: Orange Stained Glass Pane","confidence":0.878},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.688},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.651},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.645},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.644},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.644},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.644},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.643},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.643},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone","label":"Couleurs analogues: Smooth Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_slab","label":"Couleurs analogues: Smooth Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_stairs","label":"Couleurs analogues: Smooth Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_red_sandstone","label":"Couleurs analogues: Chiseled Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone","label":"Couleurs analogues: Cut Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone","label":"Couleurs analogues: Red Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.943},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.943},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.943},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.866},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.863},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.842},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.842},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.834},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.959},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.943},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.94},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.929},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.914},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.914},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.868},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.935},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.846},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.843},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.831},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.83},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.811},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.776},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:cut_sandstone","name":"Cut Sandstone","entry_type":"block","description":"Cut sandstone is a variant of sandstone, obtained through crafting and stonecutting.","history":[{"version":"1.2.1 release","status":"added","notes":"added to the terrain.png file and might have been used as decorative sandstone variants. However, these textures do not appear in the game, at the moment."},{"version":"1.2.4 release","status":"added","notes":"added in 1.2.1 have been changed, and Mojang have actually added sandstone with these textures, [ 1 ] using the same in-game name as regular sandstone."},{"version":"12w21a","status":"added","notes":"Added desert temples , which use smooth sandstone as building materials."}],"colors":{"primary":"#dacea0","dominant_hex":"#dcd4a4","average_hex":"#dacea0","hue_group":"yellow","lightness":0.7412,"saturation":0.4394,"palette":["#dcd4a4","#d4c494","#e4dcb4","#e7e7c2","#c4ac74","#d4bc8c"],"color_groups":[{"hex":"#dcd4a4","weight":0.3906,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#d4c494","weight":0.1562,"lightness":0.7059,"saturation":0.4267,"hue_group":"yellow"},{"hex":"#e4dcb4","weight":0.1445,"lightness":0.8,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#e7e7c2","weight":0.1367,"lightness":0.8333,"saturation":0.4353,"hue_group":"yellow"},{"hex":"#c4ac74","weight":0.1133,"lightness":0.6118,"saturation":0.404,"hue_group":"yellow"},{"hex":"#d4bc8c","weight":0.0586,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cut_sandstone.png","family":"cut_sandstone","relations":[{"type":"variants","target":"minecraft:cut_sandstone_slab","label":"Same family: cut_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:cut_sandstone_slab","label":"Related set: cut_sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Palette proche: Smooth Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Palette proche: Smooth Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tall_dry_grass","label":"Palette proche: Tall Dry Grass","confidence":0.893},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.768},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.744},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.721},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.707},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.698},{"type":"color_bridge","target":"minecraft:target","label":"Pont de nuance par palette: Target","confidence":0.697},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.673},{"type":"color_bridge","target":"minecraft:cherry_door","label":"Pont de nuance par palette: Cherry Door","confidence":0.666},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.658},{"type":"color_bridge","target":"minecraft:cherry_trapdoor","label":"Pont de nuance par palette: Cherry Trapdoor","confidence":0.655},{"type":"color_analogous","target":"minecraft:sand","label":"Couleurs analogues: Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_sandstone","label":"Couleurs analogues: Chiseled Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone","label":"Couleurs analogues: Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_wall","label":"Couleurs analogues: Sandstone Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone_slab","label":"Couleurs analogues: Cut Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_slab","label":"Couleurs analogues: Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_stairs","label":"Couleurs analogues: Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone","label":"Couleurs analogues: Smooth Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.927},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.915},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.876},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.876},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.954},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.954},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.954},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.944},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.854},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.835},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.815},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.813},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.96},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.952},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.71},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.696},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.696},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.69},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.643},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.634},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.624},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.594},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.593},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.59},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.581},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.581},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.566},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.564}],"category":""},{"id":"minecraft:cut_sandstone_slab","name":"Cut Sandstone Slab","entry_type":"block","description":"A cut sandstone slab is a decorative slab variant of cut sandstone that does not generate naturally and is used for building.","history":[{"version":"1.14 19w12a","status":"added","notes":"Added cut sandstone slabs."}],"colors":{"primary":"#e0d6aa","dominant_hex":"#e4dcb4","average_hex":"#e0d6aa","hue_group":"yellow","lightness":0.7725,"saturation":0.4655,"palette":["#e4dcb4","#dcd4a4","#dccca4","#d4c494","#e4e4bc"],"color_groups":[{"hex":"#e4dcb4","weight":0.4375,"lightness":0.8,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#dcd4a4","weight":0.3281,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#dccca4","weight":0.1602,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#d4c494","weight":0.0391,"lightness":0.7059,"saturation":0.4267,"hue_group":"yellow"},{"hex":"#e4e4bc","weight":0.0352,"lightness":0.8157,"saturation":0.4255,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sandstone_top.png","family":"cut_sandstone","relations":[{"type":"variants","target":"minecraft:cut_sandstone","label":"Same family: cut_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:cut_sandstone","label":"Related set: cut_sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Palette proche: Smooth Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Palette proche: Smooth Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_door","label":"Palette proche: Birch Door","confidence":0.867},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.772},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.704},{"type":"color_bridge","target":"minecraft:target","label":"Pont de nuance par palette: Target","confidence":0.691},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.682},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.675},{"type":"color_bridge","target":"minecraft:cherry_trapdoor","label":"Pont de nuance par palette: Cherry Trapdoor","confidence":0.673},{"type":"color_bridge","target":"minecraft:cherry_door","label":"Pont de nuance par palette: Cherry Door","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_button","label":"Pont de nuance par palette: Cherry Button","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_fence","label":"Pont de nuance par palette: Cherry Fence","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_fence_gate","label":"Pont de nuance par palette: Cherry Fence Gate","confidence":0.672},{"type":"color_analogous","target":"minecraft:sandstone_slab","label":"Couleurs analogues: Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_stairs","label":"Couleurs analogues: Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone","label":"Couleurs analogues: Smooth Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone_slab","label":"Couleurs analogues: Smooth Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone_stairs","label":"Couleurs analogues: Smooth Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:ochre_froglight","label":"Couleurs analogues: Ochre Froglight","confidence":0.96},{"type":"color_analogous","target":"minecraft:wildflowers","label":"Couleurs analogues: Wildflowers","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.952},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.886},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.874},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.835},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.835},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.906},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.866},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.83},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.829},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.912},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.895},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.767},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.752},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.752},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.746},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.699},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.691},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.652},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.623},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.619},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.609},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.609},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.594},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.594}],"category":"building"},{"id":"minecraft:cyan_banner","name":"Cyan Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"cyan_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_wall_banner","label":"Palette proche: Cyan Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:cyan_bed","name":"Cyan Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"cyan_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_wall_banner","label":"Palette proche: Cyan Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:cyan_bundle","name":"Cyan Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#1e8d89","dominant_hex":"#0f8686","average_hex":"#1e8d89","hue_group":"cyan","lightness":0.3353,"saturation":0.6491,"palette":["#0f8686","#0c6060","#14b4b4","#14dcdc","#845434","#bba36b"],"color_groups":[{"hex":"#0f8686","weight":0.3359,"lightness":0.2922,"saturation":0.7987,"hue_group":"cyan"},{"hex":"#0c6060","weight":0.2519,"lightness":0.2118,"saturation":0.7778,"hue_group":"cyan"},{"hex":"#14b4b4","weight":0.1603,"lightness":0.3922,"saturation":0.8,"hue_group":"cyan"},{"hex":"#14dcdc","weight":0.1527,"lightness":0.4706,"saturation":0.8333,"hue_group":"cyan"},{"hex":"#845434","weight":0.0534,"lightness":0.3608,"saturation":0.4348,"hue_group":"red"},{"hex":"#bba36b","weight":0.0458,"lightness":0.5765,"saturation":0.3704,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cyan_bundle.png","family":"cyan_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:heart_of_the_sea","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_helmet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_pearl","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allay_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:echo_shard","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_bundle","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:cyan_candle","name":"Cyan Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#117c7c","dominant_hex":"#0c6c6c","average_hex":"#117c7c","hue_group":"cyan","lightness":0.2765,"saturation":0.7589,"palette":["#0c6c6c","#148c84","#149c9c","#14acac","#242434"],"color_groups":[{"hex":"#0c6c6c","weight":0.4286,"lightness":0.2353,"saturation":0.8,"hue_group":"cyan"},{"hex":"#148c84","weight":0.2857,"lightness":0.3137,"saturation":0.75,"hue_group":"cyan"},{"hex":"#149c9c","weight":0.1905,"lightness":0.3451,"saturation":0.7727,"hue_group":"cyan"},{"hex":"#14acac","weight":0.0476,"lightness":0.3765,"saturation":0.7917,"hue_group":"cyan"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cyan_candle.png","family":"cyan_candle","relations":[{"type":"visual_neighbors","target":"minecraft:cyan_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines_plant","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_sprouts","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sculk_sensor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.911},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.911},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.882},{"type":"color_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Palette proche: Calibrated Sculk Sensor","confidence":0.865},{"type":"color_neighbors","target":"minecraft:sculk_sensor","label":"Palette proche: Sculk Sensor","confidence":0.865},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.86},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.86},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.859},{"type":"color_neighbors","target":"minecraft:nether_sprouts","label":"Palette proche: Nether Sprouts","confidence":0.859},{"type":"color_neighbors","target":"minecraft:twisting_vines","label":"Palette proche: Twisting Vines","confidence":0.856},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.853},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.842},{"type":"color_bridge","target":"minecraft:warped_hyphae","label":"Pont de nuance par sous-ton: Warped Hyphae","confidence":0.786},{"type":"color_bridge","target":"minecraft:warped_stem","label":"Pont de nuance par sous-ton: Warped Stem","confidence":0.786},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.747},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.747},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par palette: Black Candle","confidence":0.679},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par palette: Iron Chain","confidence":0.673},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.654},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.649},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.647},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.647},{"type":"color_analogous","target":"minecraft:warped_wart_block","label":"Couleurs analogues: Warped Wart Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:calibrated_sculk_sensor","label":"Couleurs analogues: Calibrated Sculk Sensor","confidence":0.953},{"type":"color_analogous","target":"minecraft:sculk_sensor","label":"Couleurs analogues: Sculk Sensor","confidence":0.953},{"type":"color_analogous","target":"minecraft:stripped_warped_hyphae","label":"Couleurs analogues: Stripped Warped Hyphae","confidence":0.93},{"type":"color_analogous","target":"minecraft:stripped_warped_stem","label":"Couleurs analogues: Stripped Warped Stem","confidence":0.93},{"type":"color_analogous","target":"minecraft:warped_hanging_sign","label":"Couleurs analogues: Warped Hanging Sign","confidence":0.93},{"type":"color_analogous","target":"minecraft:warped_wall_hanging_sign","label":"Couleurs analogues: Warped Wall Hanging Sign","confidence":0.93},{"type":"color_analogous","target":"minecraft:soul_fire","label":"Couleurs analogues: Soul Fire","confidence":0.922},{"type":"color_complement","target":"minecraft:red_shulker_box","label":"Contraste complementaire: Red Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_nylium","label":"Contraste complementaire: Crimson Nylium","confidence":0.96},{"type":"color_complement","target":"minecraft:red_concrete","label":"Contraste complementaire: Red Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_wart_block","label":"Contraste complementaire: Nether Wart Block","confidence":0.96},{"type":"color_complement","target":"minecraft:netherrack","label":"Contraste complementaire: Netherrack","confidence":0.96},{"type":"color_complement","target":"minecraft:red_stained_glass_pane","label":"Contraste complementaire: Red Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:red_mushroom_block","label":"Contraste complementaire: Red Mushroom Block","confidence":0.96},{"type":"color_complement","target":"minecraft:red_stained_glass","label":"Contraste complementaire: Red Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_acacia_sapling","label":"Harmonie triadique: Potted Acacia Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral","label":"Harmonie triadique: Bubble Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_fan","label":"Harmonie triadique: Bubble Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie triadique: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:chorus_plant","label":"Harmonie triadique: Chorus Plant","confidence":0.959},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.96},{"type":"color_square","target":"minecraft:lime_shulker_box","label":"Harmonie carree: Lime Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.96},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.956},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.952},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.952},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.672},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.672},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.664},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.637},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.603},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.591},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.591},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.581}],"category":"decorative"},{"id":"minecraft:cyan_candle_cake","name":"Cyan Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"cyan_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle_cake","label":"Palette proche: Orange Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_candle_cake","label":"Couleurs analogues: Light Blue Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:cyan_carpet","name":"Cyan Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#158a91","dominant_hex":"#14848c","average_hex":"#158a91","hue_group":"cyan","lightness":0.3255,"saturation":0.747,"palette":["#14848c","#147c8c","#148c94","#149494","#14949c","#149c9c"],"color_groups":[{"hex":"#14848c","weight":0.2266,"lightness":0.3137,"saturation":0.75,"hue_group":"cyan"},{"hex":"#147c8c","weight":0.2227,"lightness":0.3137,"saturation":0.75,"hue_group":"cyan"},{"hex":"#148c94","weight":0.2148,"lightness":0.3294,"saturation":0.7619,"hue_group":"cyan"},{"hex":"#149494","weight":0.1172,"lightness":0.3294,"saturation":0.7619,"hue_group":"cyan"},{"hex":"#14949c","weight":0.1094,"lightness":0.3451,"saturation":0.7727,"hue_group":"cyan"},{"hex":"#149c9c","weight":0.1094,"lightness":0.3451,"saturation":0.7727,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cyan_wool.png","family":"cyan_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines_plant","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_sprouts","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_sprouts","label":"Palette proche: Nether Sprouts","confidence":0.912},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.911},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.906},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.899},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.898},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.897},{"type":"color_neighbors","target":"minecraft:twisting_vines","label":"Palette proche: Twisting Vines","confidence":0.891},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.841},{"type":"color_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Palette proche: Calibrated Sculk Sensor","confidence":0.818},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.649},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.649},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.59},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_analogous","target":"minecraft:cyan_wool","label":"Couleurs analogues: Cyan Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_concrete_powder","label":"Couleurs analogues: Cyan Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_orchid","label":"Couleurs analogues: Blue Orchid","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_blue_orchid","label":"Couleurs analogues: Potted Blue Orchid","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_glazed_terracotta","label":"Couleurs analogues: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:calibrated_sculk_sensor","label":"Couleurs analogues: Calibrated Sculk Sensor","confidence":0.958},{"type":"color_analogous","target":"minecraft:sculk_sensor","label":"Couleurs analogues: Sculk Sensor","confidence":0.958},{"type":"color_analogous","target":"minecraft:structure_void","label":"Couleurs analogues: Structure Void","confidence":0.939},{"type":"color_complement","target":"minecraft:red_glazed_terracotta","label":"Contraste complementaire: Red Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_red_mushroom","label":"Contraste complementaire: Potted Red Mushroom","confidence":0.96},{"type":"color_complement","target":"minecraft:red_mushroom","label":"Contraste complementaire: Red Mushroom","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_shelf","label":"Contraste complementaire: Mangrove Shelf","confidence":0.946},{"type":"color_complement","target":"minecraft:weeping_vines_plant","label":"Contraste complementaire: Weeping Vines Plant","confidence":0.944},{"type":"color_complement","target":"minecraft:red_carpet","label":"Contraste complementaire: Red Carpet","confidence":0.94},{"type":"color_complement","target":"minecraft:red_wool","label":"Contraste complementaire: Red Wool","confidence":0.94},{"type":"color_complement","target":"minecraft:mangrove_trapdoor","label":"Contraste complementaire: Mangrove Trapdoor","confidence":0.938},{"type":"color_triad","target":"minecraft:end_stone","label":"Harmonie triadique: End Stone","confidence":0.957},{"type":"color_triad","target":"minecraft:magenta_candle","label":"Harmonie triadique: Magenta Candle","confidence":0.954},{"type":"color_triad","target":"minecraft:magenta_concrete_powder","label":"Harmonie triadique: Magenta Concrete Powder","confidence":0.939},{"type":"color_triad","target":"minecraft:magenta_concrete","label":"Harmonie triadique: Magenta Concrete","confidence":0.924},{"type":"color_triad","target":"minecraft:magenta_shulker_box","label":"Harmonie triadique: Magenta Shulker Box","confidence":0.92},{"type":"color_triad","target":"minecraft:bubble_coral_block","label":"Harmonie triadique: Bubble Coral Block","confidence":0.918},{"type":"color_triad","target":"minecraft:magenta_carpet","label":"Harmonie triadique: Magenta Carpet","confidence":0.918},{"type":"color_triad","target":"minecraft:magenta_wool","label":"Harmonie triadique: Magenta Wool","confidence":0.918},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.96},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.953},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.925},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.903},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.625},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.625},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.616},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.591},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.558},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_ice","label":"Contraste clair sombre: Blue Ice","confidence":0.55}],"category":"decorative"},{"id":"minecraft:cyan_concrete","name":"Cyan Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#157788","dominant_hex":"#14748c","average_hex":"#157788","hue_group":"cyan","lightness":0.3078,"saturation":0.7325,"palette":["#14748c","#147c8c","#147484"],"color_groups":[{"hex":"#14748c","weight":0.4219,"lightness":0.3137,"saturation":0.75,"hue_group":"cyan"},{"hex":"#147c8c","weight":0.3828,"lightness":0.3137,"saturation":0.75,"hue_group":"cyan"},{"hex":"#147484","weight":0.1953,"lightness":0.298,"saturation":0.7368,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cyan_concrete.png","family":"cyan_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines_plant","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_sprouts","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.891},{"type":"color_neighbors","target":"minecraft:nether_sprouts","label":"Palette proche: Nether Sprouts","confidence":0.866},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.863},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.863},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.859},{"type":"color_neighbors","target":"minecraft:twisting_vines","label":"Palette proche: Twisting Vines","confidence":0.849},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.842},{"type":"color_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Palette proche: Cyan Glazed Terracotta","confidence":0.81},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.806},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.623},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.623},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_analogous","target":"minecraft:cyan_shulker_box","label":"Couleurs analogues: Cyan Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:glass_pane","label":"Couleurs analogues: Glass Pane","confidence":0.908},{"type":"color_analogous","target":"minecraft:structure_void","label":"Couleurs analogues: Structure Void","confidence":0.905},{"type":"color_analogous","target":"minecraft:cyan_glazed_terracotta","label":"Couleurs analogues: Cyan Glazed Terracotta","confidence":0.905},{"type":"color_analogous","target":"minecraft:sculk_vein","label":"Couleurs analogues: Sculk Vein","confidence":0.895},{"type":"color_analogous","target":"minecraft:cyan_concrete_powder","label":"Couleurs analogues: Cyan Concrete Powder","confidence":0.888},{"type":"color_analogous","target":"minecraft:cyan_carpet","label":"Couleurs analogues: Cyan Carpet","confidence":0.875},{"type":"color_analogous","target":"minecraft:cyan_wool","label":"Couleurs analogues: Cyan Wool","confidence":0.875},{"type":"color_complement","target":"minecraft:red_terracotta","label":"Contraste complementaire: Red Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_fungus","label":"Contraste complementaire: Crimson Fungus","confidence":0.948},{"type":"color_complement","target":"minecraft:potted_crimson_fungus","label":"Contraste complementaire: Potted Crimson Fungus","confidence":0.948},{"type":"color_complement","target":"minecraft:target","label":"Contraste complementaire: Target","confidence":0.947},{"type":"color_complement","target":"minecraft:cherry_trapdoor","label":"Contraste complementaire: Cherry Trapdoor","confidence":0.939},{"type":"color_complement","target":"minecraft:redstone_block","label":"Contraste complementaire: Redstone Block","confidence":0.917},{"type":"color_complement","target":"minecraft:nether_gold_ore","label":"Contraste complementaire: Nether Gold Ore","confidence":0.913},{"type":"color_complement","target":"minecraft:redstone_torch","label":"Contraste complementaire: Redstone Torch","confidence":0.91},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:sea_pickle","label":"Harmonie triadique: Sea Pickle","confidence":0.917},{"type":"color_triad","target":"minecraft:green_terracotta","label":"Harmonie triadique: Green Terracotta","confidence":0.915},{"type":"color_triad","target":"minecraft:flowering_azalea","label":"Harmonie triadique: Flowering Azalea","confidence":0.91},{"type":"color_triad","target":"minecraft:sculk_shrieker","label":"Harmonie triadique: Sculk Shrieker","confidence":0.908},{"type":"color_triad","target":"minecraft:dandelion","label":"Harmonie triadique: Dandelion","confidence":0.901},{"type":"color_triad","target":"minecraft:potted_dandelion","label":"Harmonie triadique: Potted Dandelion","confidence":0.901},{"type":"color_triad","target":"minecraft:potted_wither_rose","label":"Harmonie triadique: Potted Wither Rose","confidence":0.889},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.96},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.96},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.96},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.957},{"type":"color_square","target":"minecraft:potted_spruce_sapling","label":"Harmonie carree: Potted Spruce Sapling","confidence":0.95},{"type":"color_square","target":"minecraft:spruce_sapling","label":"Harmonie carree: Spruce Sapling","confidence":0.95},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.921},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.897},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.64},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.64},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.631},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.609},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.576},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.563},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.563},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.553}],"category":"building"},{"id":"minecraft:cyan_concrete_powder","name":"Cyan Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#25949d","dominant_hex":"#24949c","average_hex":"#25949d","hue_group":"cyan","lightness":0.3804,"saturation":0.6186,"palette":["#24949c","#248c9c","#25a0a6","#248993","#249c9c","#2dc1c1"],"color_groups":[{"hex":"#24949c","weight":0.2773,"lightness":0.3765,"saturation":0.625,"hue_group":"cyan"},{"hex":"#248c9c","weight":0.2344,"lightness":0.3765,"saturation":0.625,"hue_group":"cyan"},{"hex":"#25a0a6","weight":0.2266,"lightness":0.398,"saturation":0.6355,"hue_group":"cyan"},{"hex":"#248993","weight":0.1445,"lightness":0.3588,"saturation":0.6066,"hue_group":"cyan"},{"hex":"#249c9c","weight":0.0938,"lightness":0.3765,"saturation":0.625,"hue_group":"cyan"},{"hex":"#2dc1c1","weight":0.0234,"lightness":0.4667,"saturation":0.6218,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cyan_concrete_powder.png","family":"cyan_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:void_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_fire","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_shelf","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.841},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.841},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.821},{"type":"color_neighbors","target":"minecraft:stripped_warped_stem","label":"Palette proche: Stripped Warped Stem","confidence":0.821},{"type":"color_neighbors","target":"minecraft:warped_hanging_sign","label":"Palette proche: Warped Hanging Sign","confidence":0.821},{"type":"color_neighbors","target":"minecraft:warped_wall_hanging_sign","label":"Palette proche: Warped Wall Hanging Sign","confidence":0.821},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.817},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.816},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.811},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.806},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.798},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.79},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.647},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.634},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.634},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.624},{"type":"color_bridge","target":"minecraft:tube_coral_block","label":"Pont de nuance par palette: Tube Coral Block","confidence":0.611},{"type":"color_bridge","target":"minecraft:tube_coral_fan","label":"Pont de nuance par palette: Tube Coral Fan","confidence":0.61},{"type":"color_bridge","target":"minecraft:tube_coral_wall_fan","label":"Pont de nuance par palette: Tube Coral Wall Fan","confidence":0.61},{"type":"color_bridge","target":"minecraft:tube_coral","label":"Pont de nuance par palette: Tube Coral","confidence":0.609},{"type":"color_bridge","target":"minecraft:blue_glazed_terracotta","label":"Pont de nuance par palette: Blue Glazed Terracotta","confidence":0.608},{"type":"color_bridge","target":"minecraft:blue_stained_glass_pane","label":"Pont de nuance par palette: Blue Stained Glass Pane","confidence":0.606},{"type":"color_analogous","target":"minecraft:cyan_carpet","label":"Couleurs analogues: Cyan Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_wool","label":"Couleurs analogues: Cyan Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_glazed_terracotta","label":"Couleurs analogues: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_orchid","label":"Couleurs analogues: Blue Orchid","confidence":0.958},{"type":"color_analogous","target":"minecraft:potted_blue_orchid","label":"Couleurs analogues: Potted Blue Orchid","confidence":0.958},{"type":"color_analogous","target":"minecraft:structure_void","label":"Couleurs analogues: Structure Void","confidence":0.953},{"type":"color_analogous","target":"minecraft:cyan_shulker_box","label":"Couleurs analogues: Cyan Shulker Box","confidence":0.922},{"type":"color_analogous","target":"minecraft:calibrated_sculk_sensor","label":"Couleurs analogues: Calibrated Sculk Sensor","confidence":0.922},{"type":"color_complement","target":"minecraft:mangrove_hanging_sign","label":"Contraste complementaire: Mangrove Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_wall_hanging_sign","label":"Contraste complementaire: Mangrove Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_mangrove_log","label":"Contraste complementaire: Stripped Mangrove Log","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_mangrove_wood","label":"Contraste complementaire: Stripped Mangrove Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_button","label":"Contraste complementaire: Mangrove Button","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_fence","label":"Contraste complementaire: Mangrove Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_fence_gate","label":"Contraste complementaire: Mangrove Fence Gate","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_planks","label":"Contraste complementaire: Mangrove Planks","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_candle","label":"Harmonie triadique: Magenta Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_concrete","label":"Harmonie triadique: Magenta Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_shulker_box","label":"Harmonie triadique: Magenta Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_carpet","label":"Harmonie triadique: Magenta Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_wool","label":"Harmonie triadique: Magenta Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_concrete_powder","label":"Harmonie triadique: Magenta Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:wet_sponge","label":"Harmonie triadique: Wet Sponge","confidence":0.951},{"type":"color_triad","target":"minecraft:end_stone_brick_slab","label":"Harmonie triadique: End Stone Brick Slab","confidence":0.94},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.949},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.942},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.939},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.57},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.57},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.568},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55}],"category":"building"},{"id":"minecraft:cyan_dye","name":"Cyan Dye","entry_type":"item","description":"Cyan dye is one of the sixteen available dyes.","history":[{"version":"1.2","status":"added","notes":"Added cyan dye."},{"version":"1.4.2 12w34a","status":"added","notes":"Added the ability to dye leather armor and wolf collars."},{"version":"14w30a","status":"added","notes":"Added banners , which can be dyed."}],"colors":{"primary":"#3d6978","dominant_hex":"#247090","average_hex":"#3d6978","hue_group":"cyan","lightness":0.3549,"saturation":0.326,"palette":["#247090","#4a2a25","#55accd","#14546c","#9c8462","#0c455d"],"color_groups":[{"hex":"#247090","weight":0.302,"lightness":0.3529,"saturation":0.6,"hue_group":"cyan"},{"hex":"#4a2a25","weight":0.1946,"lightness":0.2176,"saturation":0.3333,"hue_group":"red"},{"hex":"#55accd","weight":0.1879,"lightness":0.5686,"saturation":0.5455,"hue_group":"cyan"},{"hex":"#14546c","weight":0.1141,"lightness":0.251,"saturation":0.6875,"hue_group":"cyan"},{"hex":"#9c8462","weight":0.1074,"lightness":0.498,"saturation":0.2283,"hue_group":"yellow"},{"hex":"#0c455d","weight":0.094,"lightness":0.2059,"saturation":0.7714,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cyan_dye.png","family":"cyan_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tide_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ward_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silence_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:recovery_compass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:cyan_glazed_terracotta","name":"Cyan Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#34777d","dominant_hex":"#16a4a4","average_hex":"#34777d","hue_group":"cyan","lightness":0.3471,"saturation":0.4124,"palette":["#16a4a4","#363c3e","#14768d","#444c54","#cecfd4","#146c7c"],"color_groups":[{"hex":"#16a4a4","weight":0.25,"lightness":0.3647,"saturation":0.7634,"hue_group":"cyan"},{"hex":"#363c3e","weight":0.2383,"lightness":0.2275,"saturation":0.069,"hue_group":"neutral"},{"hex":"#14768d","weight":0.2266,"lightness":0.3157,"saturation":0.7516,"hue_group":"cyan"},{"hex":"#444c54","weight":0.1133,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#cecfd4","weight":0.0938,"lightness":0.8196,"saturation":0.0652,"hue_group":"neutral"},{"hex":"#146c7c","weight":0.0781,"lightness":0.2824,"saturation":0.7222,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cyan_glazed_terracotta.png","family":"cyan_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_pressure_plate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.811},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.81},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.81},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.798},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.798},{"type":"color_neighbors","target":"minecraft:soul_lantern","label":"Palette proche: Soul Lantern","confidence":0.789},{"type":"color_neighbors","target":"minecraft:warped_nylium","label":"Palette proche: Warped Nylium","confidence":0.775},{"type":"color_neighbors","target":"minecraft:light_gray_glazed_terracotta","label":"Palette proche: Light Gray Glazed Terracotta","confidence":0.775},{"type":"color_neighbors","target":"minecraft:structure_void","label":"Palette proche: Structure Void","confidence":0.773},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.761},{"type":"color_neighbors","target":"minecraft:gray_carpet","label":"Palette proche: Gray Carpet","confidence":0.748},{"type":"color_neighbors","target":"minecraft:gray_wool","label":"Palette proche: Gray Wool","confidence":0.748},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.814},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.793},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.793},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.768},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.76},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.755},{"type":"color_bridge","target":"minecraft:gray_glazed_terracotta","label":"Pont de nuance par palette: Gray Glazed Terracotta","confidence":0.754},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.745},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.743},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.717},{"type":"color_analogous","target":"minecraft:cyan_concrete_powder","label":"Couleurs analogues: Cyan Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:structure_void","label":"Couleurs analogues: Structure Void","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_carpet","label":"Couleurs analogues: Cyan Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_wool","label":"Couleurs analogues: Cyan Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_orchid","label":"Couleurs analogues: Blue Orchid","confidence":0.942},{"type":"color_analogous","target":"minecraft:potted_blue_orchid","label":"Couleurs analogues: Potted Blue Orchid","confidence":0.942},{"type":"color_analogous","target":"minecraft:cyan_shulker_box","label":"Couleurs analogues: Cyan Shulker Box","confidence":0.939},{"type":"color_analogous","target":"minecraft:calibrated_sculk_sensor","label":"Couleurs analogues: Calibrated Sculk Sensor","confidence":0.92},{"type":"color_complement","target":"minecraft:mangrove_button","label":"Contraste complementaire: Mangrove Button","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_fence","label":"Contraste complementaire: Mangrove Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_fence_gate","label":"Contraste complementaire: Mangrove Fence Gate","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_planks","label":"Contraste complementaire: Mangrove Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_pressure_plate","label":"Contraste complementaire: Mangrove Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_sign","label":"Contraste complementaire: Mangrove Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_slab","label":"Contraste complementaire: Mangrove Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_stairs","label":"Contraste complementaire: Mangrove Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:wet_sponge","label":"Harmonie triadique: Wet Sponge","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_concrete","label":"Harmonie triadique: Magenta Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_shulker_box","label":"Harmonie triadique: Magenta Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_carpet","label":"Harmonie triadique: Magenta Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_wool","label":"Harmonie triadique: Magenta Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_concrete_powder","label":"Harmonie triadique: Magenta Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_candle","label":"Harmonie triadique: Magenta Candle","confidence":0.959},{"type":"color_triad","target":"minecraft:end_stone_brick_slab","label":"Harmonie triadique: End Stone Brick Slab","confidence":0.959},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.96},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.956},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.956},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.949},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.946},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.931},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.931},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.597},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.596},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.596},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.581},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:cyan_harness","name":"Cyan Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#5e5b4c","dominant_hex":"#1e7f86","average_hex":"#5e5b4c","hue_group":"neutral","lightness":0.3333,"saturation":0.1059,"palette":["#1e7f86","#976349","#502e16","#70492f","#3c2414","#a2b0b2"],"color_groups":[{"hex":"#1e7f86","weight":0.2209,"lightness":0.3216,"saturation":0.6341,"hue_group":"cyan"},{"hex":"#976349","weight":0.2147,"lightness":0.4392,"saturation":0.3482,"hue_group":"red"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#70492f","weight":0.135,"lightness":0.3118,"saturation":0.4088,"hue_group":"red"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"},{"hex":"#a2b0b2","weight":0.1043,"lightness":0.6667,"saturation":0.0941,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/cyan_harness.png","family":"cyan_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:vex_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wayfinder_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ominous_trial_key","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ink_sac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_axe","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:cyan_shulker_box","name":"Cyan Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#147987","dominant_hex":"#148494","average_hex":"#147987","hue_group":"cyan","lightness":0.3039,"saturation":0.7419,"palette":["#148494","#14748b","#146474","#146c7c","#0c5c6c","#14848c"],"color_groups":[{"hex":"#148494","weight":0.4727,"lightness":0.3294,"saturation":0.7619,"hue_group":"cyan"},{"hex":"#14748b","weight":0.1719,"lightness":0.3118,"saturation":0.7484,"hue_group":"cyan"},{"hex":"#146474","weight":0.1094,"lightness":0.2667,"saturation":0.7059,"hue_group":"cyan"},{"hex":"#146c7c","weight":0.0898,"lightness":0.2824,"saturation":0.7222,"hue_group":"cyan"},{"hex":"#0c5c6c","weight":0.082,"lightness":0.2353,"saturation":0.8,"hue_group":"cyan"},{"hex":"#14848c","weight":0.0742,"lightness":0.3137,"saturation":0.75,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cyan_shulker_box.png","family":"cyan_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:twisting_vines_plant","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_sprouts","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.882},{"type":"color_neighbors","target":"minecraft:nether_sprouts","label":"Palette proche: Nether Sprouts","confidence":0.87},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.869},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.868},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.866},{"type":"color_neighbors","target":"minecraft:twisting_vines","label":"Palette proche: Twisting Vines","confidence":0.855},{"type":"color_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Palette proche: Calibrated Sculk Sensor","confidence":0.826},{"type":"color_neighbors","target":"minecraft:sculk_sensor","label":"Palette proche: Sculk Sensor","confidence":0.826},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.632},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.632},{"type":"color_bridge","target":"minecraft:tube_coral","label":"Pont de nuance par palette: Tube Coral","confidence":0.588},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:warped_hyphae","label":"Pont de nuance par sous-ton: Warped Hyphae","confidence":0.58},{"type":"color_analogous","target":"minecraft:cyan_concrete","label":"Couleurs analogues: Cyan Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:structure_void","label":"Couleurs analogues: Structure Void","confidence":0.941},{"type":"color_analogous","target":"minecraft:cyan_glazed_terracotta","label":"Couleurs analogues: Cyan Glazed Terracotta","confidence":0.939},{"type":"color_analogous","target":"minecraft:cyan_concrete_powder","label":"Couleurs analogues: Cyan Concrete Powder","confidence":0.922},{"type":"color_analogous","target":"minecraft:cyan_carpet","label":"Couleurs analogues: Cyan Carpet","confidence":0.909},{"type":"color_analogous","target":"minecraft:cyan_wool","label":"Couleurs analogues: Cyan Wool","confidence":0.909},{"type":"color_analogous","target":"minecraft:glass","label":"Couleurs analogues: Glass","confidence":0.899},{"type":"color_analogous","target":"minecraft:blue_orchid","label":"Couleurs analogues: Blue Orchid","confidence":0.88},{"type":"color_complement","target":"minecraft:crimson_fungus","label":"Contraste complementaire: Crimson Fungus","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_crimson_fungus","label":"Contraste complementaire: Potted Crimson Fungus","confidence":0.96},{"type":"color_complement","target":"minecraft:redstone_block","label":"Contraste complementaire: Redstone Block","confidence":0.96},{"type":"color_complement","target":"minecraft:redstone_torch","label":"Contraste complementaire: Redstone Torch","confidence":0.96},{"type":"color_complement","target":"minecraft:target","label":"Contraste complementaire: Target","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_trapdoor","label":"Contraste complementaire: Cherry Trapdoor","confidence":0.958},{"type":"color_complement","target":"minecraft:cherry_button","label":"Contraste complementaire: Cherry Button","confidence":0.954},{"type":"color_complement","target":"minecraft:cherry_fence","label":"Contraste complementaire: Cherry Fence","confidence":0.954},{"type":"color_triad","target":"minecraft:sea_pickle","label":"Harmonie triadique: Sea Pickle","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_slab","label":"Harmonie triadique: End Stone Brick Slab","confidence":0.923},{"type":"color_triad","target":"minecraft:end_stone_brick_stairs","label":"Harmonie triadique: End Stone Brick Stairs","confidence":0.923},{"type":"color_triad","target":"minecraft:end_stone_brick_wall","label":"Harmonie triadique: End Stone Brick Wall","confidence":0.923},{"type":"color_triad","target":"minecraft:end_stone_bricks","label":"Harmonie triadique: End Stone Bricks","confidence":0.923},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.922},{"type":"color_triad","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie triadique: Potted Flowering Azalea Bush","confidence":0.912},{"type":"color_triad","target":"minecraft:wet_sponge","label":"Harmonie triadique: Wet Sponge","confidence":0.903},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.947},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.946},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.918},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.897},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.897},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.644},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.644},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.636},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.612},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.579},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.566},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.566},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.557}],"category":""},{"id":"minecraft:cyan_stained_glass","name":"Cyan Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#4c7f99","dominant_hex":"#4c7c9c","average_hex":"#4c7f99","hue_group":"cyan","lightness":0.449,"saturation":0.3362,"palette":["#4c7c9c"],"color_groups":[{"hex":"#4c7c9c","weight":1.0,"lightness":0.4549,"saturation":0.3448,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cyan_stained_glass.png","family":"cyan_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Palette proche: Cyan Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_concrete","label":"Palette proche: Light Blue Concrete","confidence":0.739},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.727},{"type":"color_neighbors","target":"minecraft:trial_spawner","label":"Palette proche: Trial Spawner","confidence":0.723},{"type":"color_neighbors","target":"minecraft:vault","label":"Palette proche: Vault","confidence":0.721},{"type":"color_neighbors","target":"minecraft:prismarine","label":"Palette proche: Prismarine","confidence":0.713},{"type":"color_neighbors","target":"minecraft:prismarine_slab","label":"Palette proche: Prismarine Slab","confidence":0.713},{"type":"color_neighbors","target":"minecraft:prismarine_stairs","label":"Palette proche: Prismarine Stairs","confidence":0.713},{"type":"color_neighbors","target":"minecraft:prismarine_wall","label":"Palette proche: Prismarine Wall","confidence":0.713},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.697},{"type":"color_neighbors","target":"minecraft:light_blue_shulker_box","label":"Palette proche: Light Blue Shulker Box","confidence":0.688},{"type":"color_neighbors","target":"minecraft:spawner","label":"Palette proche: Spawner","confidence":0.678},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.772},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.77},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.751},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par palette: Glow Lichen","confidence":0.72},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par palette: Light Blue Terracotta","confidence":0.717},{"type":"color_bridge","target":"minecraft:gray_glazed_terracotta","label":"Pont de nuance par palette: Gray Glazed Terracotta","confidence":0.688},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.673},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par sous-ton: Light","confidence":0.67},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.656},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.656},{"type":"color_analogous","target":"minecraft:cyan_stained_glass_pane","label":"Couleurs analogues: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_candle","label":"Couleurs analogues: Light Blue Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_concrete","label":"Couleurs analogues: Light Blue Concrete","confidence":0.941},{"type":"color_analogous","target":"minecraft:soul_lantern","label":"Couleurs analogues: Soul Lantern","confidence":0.938},{"type":"color_analogous","target":"minecraft:cornflower","label":"Couleurs analogues: Cornflower","confidence":0.932},{"type":"color_analogous","target":"minecraft:potted_cornflower","label":"Couleurs analogues: Potted Cornflower","confidence":0.932},{"type":"color_analogous","target":"minecraft:light_blue_shulker_box","label":"Couleurs analogues: Light Blue Shulker Box","confidence":0.93},{"type":"color_analogous","target":"minecraft:light_blue_glazed_terracotta","label":"Couleurs analogues: Light Blue Glazed Terracotta","confidence":0.906},{"type":"color_complement","target":"minecraft:hanging_roots","label":"Contraste complementaire: Hanging Roots","confidence":0.96},{"type":"color_complement","target":"minecraft:acacia_button","label":"Contraste complementaire: Acacia Button","confidence":0.96},{"type":"color_complement","target":"minecraft:acacia_fence","label":"Contraste complementaire: Acacia Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:acacia_fence_gate","label":"Contraste complementaire: Acacia Fence Gate","confidence":0.96},{"type":"color_complement","target":"minecraft:acacia_planks","label":"Contraste complementaire: Acacia Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:acacia_pressure_plate","label":"Contraste complementaire: Acacia Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:acacia_sign","label":"Contraste complementaire: Acacia Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:acacia_slab","label":"Contraste complementaire: Acacia Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:green_glazed_terracotta","label":"Harmonie triadique: Green Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:big_dripleaf","label":"Harmonie triadique: Big Dripleaf","confidence":0.96},{"type":"color_triad","target":"minecraft:green_stained_glass","label":"Harmonie triadique: Green Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:green_stained_glass_pane","label":"Harmonie triadique: Green Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:big_dripleaf_stem","label":"Harmonie triadique: Big Dripleaf Stem","confidence":0.96},{"type":"color_triad","target":"minecraft:small_dripleaf","label":"Harmonie triadique: Small Dripleaf","confidence":0.96},{"type":"color_triad","target":"minecraft:moss_block","label":"Harmonie triadique: Moss Block","confidence":0.96},{"type":"color_triad","target":"minecraft:moss_carpet","label":"Harmonie triadique: Moss Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.922},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.897},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.897},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.885},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.867},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.789},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.789},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.762},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55}],"category":"building"},{"id":"minecraft:cyan_stained_glass_pane","name":"Cyan Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#4a7b93","dominant_hex":"#4c7c94","average_hex":"#4a7b93","hue_group":"cyan","lightness":0.4333,"saturation":0.3303,"palette":["#4c7c94","#4c7c9c","#44748c"],"color_groups":[{"hex":"#4c7c94","weight":0.375,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#4c7c9c","weight":0.375,"lightness":0.4549,"saturation":0.3448,"hue_group":"cyan"},{"hex":"#44748c","weight":0.25,"lightness":0.4078,"saturation":0.3462,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cyan_stained_glass_pane_top.png","family":"cyan_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cornflower","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cornflower","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cyan_stained_glass","label":"Palette proche: Cyan Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:trial_spawner","label":"Palette proche: Trial Spawner","confidence":0.746},{"type":"color_neighbors","target":"minecraft:vault","label":"Palette proche: Vault","confidence":0.739},{"type":"color_neighbors","target":"minecraft:light_blue_concrete","label":"Palette proche: Light Blue Concrete","confidence":0.722},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.717},{"type":"color_neighbors","target":"minecraft:prismarine","label":"Palette proche: Prismarine","confidence":0.713},{"type":"color_neighbors","target":"minecraft:prismarine_slab","label":"Palette proche: Prismarine Slab","confidence":0.713},{"type":"color_neighbors","target":"minecraft:prismarine_stairs","label":"Palette proche: Prismarine Stairs","confidence":0.713},{"type":"color_neighbors","target":"minecraft:prismarine_wall","label":"Palette proche: Prismarine Wall","confidence":0.713},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.703},{"type":"color_neighbors","target":"minecraft:spawner","label":"Palette proche: Spawner","confidence":0.695},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.68},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.791},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.785},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.767},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par palette: Glow Lichen","confidence":0.726},{"type":"color_bridge","target":"minecraft:gray_glazed_terracotta","label":"Pont de nuance par palette: Gray Glazed Terracotta","confidence":0.721},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par palette: Light Blue Terracotta","confidence":0.707},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.698},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.698},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.693},{"type":"color_bridge","target":"minecraft:blue_concrete_powder","label":"Pont de nuance par palette: Blue Concrete Powder","confidence":0.685},{"type":"color_analogous","target":"minecraft:cyan_stained_glass","label":"Couleurs analogues: Cyan Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_candle","label":"Couleurs analogues: Light Blue Candle","confidence":0.948},{"type":"color_analogous","target":"minecraft:light_blue_shulker_box","label":"Couleurs analogues: Light Blue Shulker Box","confidence":0.939},{"type":"color_analogous","target":"minecraft:soul_lantern","label":"Couleurs analogues: Soul Lantern","confidence":0.929},{"type":"color_analogous","target":"minecraft:light_blue_concrete","label":"Couleurs analogues: Light Blue Concrete","confidence":0.926},{"type":"color_analogous","target":"minecraft:cornflower","label":"Couleurs analogues: Cornflower","confidence":0.919},{"type":"color_analogous","target":"minecraft:potted_cornflower","label":"Couleurs analogues: Potted Cornflower","confidence":0.919},{"type":"color_analogous","target":"minecraft:light_blue_carpet","label":"Couleurs analogues: Light Blue Carpet","confidence":0.893},{"type":"color_complement","target":"minecraft:acacia_door","label":"Contraste complementaire: Acacia Door","confidence":0.96},{"type":"color_complement","target":"minecraft:hanging_roots","label":"Contraste complementaire: Hanging Roots","confidence":0.96},{"type":"color_complement","target":"minecraft:acacia_trapdoor","label":"Contraste complementaire: Acacia Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:item_frame","label":"Contraste complementaire: Item Frame","confidence":0.96},{"type":"color_complement","target":"minecraft:white_terracotta","label":"Contraste complementaire: White Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:black_terracotta","label":"Contraste complementaire: Black Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:acacia_button","label":"Contraste complementaire: Acacia Button","confidence":0.958},{"type":"color_complement","target":"minecraft:acacia_fence","label":"Contraste complementaire: Acacia Fence","confidence":0.958},{"type":"color_triad","target":"minecraft:green_glazed_terracotta","label":"Harmonie triadique: Green Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:big_dripleaf","label":"Harmonie triadique: Big Dripleaf","confidence":0.96},{"type":"color_triad","target":"minecraft:green_stained_glass","label":"Harmonie triadique: Green Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:green_stained_glass_pane","label":"Harmonie triadique: Green Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:moss_block","label":"Harmonie triadique: Moss Block","confidence":0.96},{"type":"color_triad","target":"minecraft:moss_carpet","label":"Harmonie triadique: Moss Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:green_concrete","label":"Harmonie triadique: Green Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:green_shulker_box","label":"Harmonie triadique: Green Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.919},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.918},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.907},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.899},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.844},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.811},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.811},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.779},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55}],"category":"building"},{"id":"minecraft:cyan_terracotta","name":"Cyan Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#575b5b","dominant_hex":"#545c5c","average_hex":"#575b5b","hue_group":"neutral","lightness":0.349,"saturation":0.0225,"palette":["#545c5c","#5c5c5c","#545454","#5c645e","#54545c","#545c54"],"color_groups":[{"hex":"#545c5c","weight":0.6797,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.2695,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.0195,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c645e","weight":0.0156,"lightness":0.3765,"saturation":0.0417,"hue_group":"neutral"},{"hex":"#54545c","weight":0.0078,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#545c54","weight":0.0078,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cyan_terracotta.png","family":"cyan_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:polished_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_copper_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bedrock","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gray_concrete_powder","label":"Palette proche: Gray Concrete Powder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.868},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.868},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.868},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.868},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.849},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.848},{"type":"color_neighbors","target":"minecraft:gray_shulker_box","label":"Palette proche: Gray Shulker Box","confidence":0.845},{"type":"color_neighbors","target":"minecraft:chiseled_tuff","label":"Palette proche: Chiseled Tuff","confidence":0.844},{"type":"color_neighbors","target":"minecraft:deepslate_copper_ore","label":"Palette proche: Deepslate Copper Ore","confidence":0.843},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.841},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.841},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_stairs","label":"Pont de nuance par palette: Polished Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_wall","label":"Pont de nuance par palette: Polished Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_copper_ore","label":"Pont de nuance par palette: Deepslate Copper Ore","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.59},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.585},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.584},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.584},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.557},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55}],"category":"building"},{"id":"minecraft:cyan_wall_banner","name":"Cyan Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"cyan_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:cyan_wool","name":"Cyan Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#158a91","dominant_hex":"#14848c","average_hex":"#158a91","hue_group":"cyan","lightness":0.3255,"saturation":0.747,"palette":["#14848c","#147c8c","#148c94","#149494","#14949c","#149c9c"],"color_groups":[{"hex":"#14848c","weight":0.2266,"lightness":0.3137,"saturation":0.75,"hue_group":"cyan"},{"hex":"#147c8c","weight":0.2227,"lightness":0.3137,"saturation":0.75,"hue_group":"cyan"},{"hex":"#148c94","weight":0.2148,"lightness":0.3294,"saturation":0.7619,"hue_group":"cyan"},{"hex":"#149494","weight":0.1172,"lightness":0.3294,"saturation":0.7619,"hue_group":"cyan"},{"hex":"#14949c","weight":0.1094,"lightness":0.3451,"saturation":0.7727,"hue_group":"cyan"},{"hex":"#149c9c","weight":0.1094,"lightness":0.3451,"saturation":0.7727,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cyan_wool.png","family":"cyan_wool","relations":[{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines_plant","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_sprouts","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_sprouts","label":"Palette proche: Nether Sprouts","confidence":0.912},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.911},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.906},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.899},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.898},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.897},{"type":"color_neighbors","target":"minecraft:twisting_vines","label":"Palette proche: Twisting Vines","confidence":0.891},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.841},{"type":"color_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Palette proche: Calibrated Sculk Sensor","confidence":0.818},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.649},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.649},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.59},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_analogous","target":"minecraft:cyan_carpet","label":"Couleurs analogues: Cyan Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_concrete_powder","label":"Couleurs analogues: Cyan Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_orchid","label":"Couleurs analogues: Blue Orchid","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_blue_orchid","label":"Couleurs analogues: Potted Blue Orchid","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_glazed_terracotta","label":"Couleurs analogues: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:calibrated_sculk_sensor","label":"Couleurs analogues: Calibrated Sculk Sensor","confidence":0.958},{"type":"color_analogous","target":"minecraft:sculk_sensor","label":"Couleurs analogues: Sculk Sensor","confidence":0.958},{"type":"color_analogous","target":"minecraft:structure_void","label":"Couleurs analogues: Structure Void","confidence":0.939},{"type":"color_complement","target":"minecraft:red_glazed_terracotta","label":"Contraste complementaire: Red Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_red_mushroom","label":"Contraste complementaire: Potted Red Mushroom","confidence":0.96},{"type":"color_complement","target":"minecraft:red_mushroom","label":"Contraste complementaire: Red Mushroom","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_shelf","label":"Contraste complementaire: Mangrove Shelf","confidence":0.946},{"type":"color_complement","target":"minecraft:weeping_vines_plant","label":"Contraste complementaire: Weeping Vines Plant","confidence":0.944},{"type":"color_complement","target":"minecraft:red_carpet","label":"Contraste complementaire: Red Carpet","confidence":0.94},{"type":"color_complement","target":"minecraft:red_wool","label":"Contraste complementaire: Red Wool","confidence":0.94},{"type":"color_complement","target":"minecraft:mangrove_trapdoor","label":"Contraste complementaire: Mangrove Trapdoor","confidence":0.938},{"type":"color_triad","target":"minecraft:end_stone","label":"Harmonie triadique: End Stone","confidence":0.957},{"type":"color_triad","target":"minecraft:magenta_candle","label":"Harmonie triadique: Magenta Candle","confidence":0.954},{"type":"color_triad","target":"minecraft:magenta_concrete_powder","label":"Harmonie triadique: Magenta Concrete Powder","confidence":0.939},{"type":"color_triad","target":"minecraft:magenta_concrete","label":"Harmonie triadique: Magenta Concrete","confidence":0.924},{"type":"color_triad","target":"minecraft:magenta_shulker_box","label":"Harmonie triadique: Magenta Shulker Box","confidence":0.92},{"type":"color_triad","target":"minecraft:bubble_coral_block","label":"Harmonie triadique: Bubble Coral Block","confidence":0.918},{"type":"color_triad","target":"minecraft:magenta_carpet","label":"Harmonie triadique: Magenta Carpet","confidence":0.918},{"type":"color_triad","target":"minecraft:magenta_wool","label":"Harmonie triadique: Magenta Wool","confidence":0.918},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.96},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.953},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.925},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.903},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.625},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.625},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.616},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.591},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.558},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_ice","label":"Contraste clair sombre: Blue Ice","confidence":0.55}],"category":"decorative"},{"id":"minecraft:damaged_anvil","name":"Damaged Anvil","entry_type":"block","description":"An anvil is a gravity-affected utility block used to rename items, combine enchantments and repair items without losing the enchantments. An anvil has limited durability, and as it is used or dropped too far, gradually becomes a chipped anvil, then a damaged anvil, then breaks and vanishes.","history":[{"version":"1.4.2 12w41a","status":"added","notes":"Added anvils. All anvil damage levels are available in the Creative inventory."},{"version":"1.4","status":"added","notes":"Added new sounds for the anvil."}],"colors":{"primary":"#484848","dominant_hex":"#3c3c3c","average_hex":"#484848","hue_group":"neutral","lightness":0.2824,"saturation":0.0,"palette":["#3c3c3c","#4c4c4c","#444444","#545454","#5c5c5c","#747474"],"color_groups":[{"hex":"#3c3c3c","weight":0.3688,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1625,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.1562,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.125,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.125,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.0625,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/damaged_anvil_top.png","family":"damaged_anvil","relations":[{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:anvil","label":"Palette proche: Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Palette proche: Gray Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_stained_glass","label":"Palette proche: Gray Stained Glass","confidence":0.94},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:anvil","label":"Pont de nuance par palette: Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_stained_glass_pane","label":"Pont de nuance par palette: Gray Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.681},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.648},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.625},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.621},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.62},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.62},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.62},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.62}],"category":""},{"id":"minecraft:dandelion","name":"Dandelion","entry_type":"block","description":"A dandelion is a flower that can be crafted into yellow dye, suspicious stew, and golden dandelions, and used to breed rabbits.","history":[{"version":"0.0.20a","status":"added","notes":"Added dandelions."},{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added dandelions to world generation."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell dandelions."}],"colors":{"primary":"#94ac2b","dominant_hex":"#fcec4c","average_hex":"#94ac2b","hue_group":"yellow","lightness":0.4216,"saturation":0.6,"palette":["#fcec4c","#147c04","#4c8c2c","#d88424","#54ac2c","#fcd43c"],"color_groups":[{"hex":"#fcec4c","weight":0.2812,"lightness":0.6431,"saturation":0.967,"hue_group":"yellow"},{"hex":"#147c04","weight":0.25,"lightness":0.251,"saturation":0.9375,"hue_group":"green"},{"hex":"#4c8c2c","weight":0.1562,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#d88424","weight":0.125,"lightness":0.4941,"saturation":0.7143,"hue_group":"yellow"},{"hex":"#54ac2c","weight":0.0938,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#fcd43c","weight":0.0938,"lightness":0.6118,"saturation":0.9697,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dandelion.png","family":"dandelion","relations":[{"type":"visual_neighbors","target":"minecraft:potted_dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hay_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bell","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_dandelion","label":"Palette proche: Potted Dandelion","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.913},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.913},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.806},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.806},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.738},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.735},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.735},{"type":"color_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Palette proche: Lime Glazed Terracotta","confidence":0.691},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.691},{"type":"color_neighbors","target":"minecraft:seagrass","label":"Palette proche: Seagrass","confidence":0.69},{"type":"color_neighbors","target":"minecraft:tall_seagrass","label":"Palette proche: Tall Seagrass","confidence":0.687},{"type":"color_bridge","target":"minecraft:orange_concrete_powder","label":"Pont de nuance par palette: Orange Concrete Powder","confidence":0.683},{"type":"color_bridge","target":"minecraft:pumpkin","label":"Pont de nuance par palette: Pumpkin","confidence":0.683},{"type":"color_bridge","target":"minecraft:poppy","label":"Pont de nuance par palette: Poppy","confidence":0.663},{"type":"color_bridge","target":"minecraft:potted_poppy","label":"Pont de nuance par palette: Potted Poppy","confidence":0.663},{"type":"color_bridge","target":"minecraft:resin_clump","label":"Pont de nuance par palette: Resin Clump","confidence":0.661},{"type":"color_bridge","target":"minecraft:cut_red_sandstone","label":"Pont de nuance par palette: Cut Red Sandstone","confidence":0.659},{"type":"color_bridge","target":"minecraft:red_sand","label":"Pont de nuance par palette: Red Sand","confidence":0.658},{"type":"color_bridge","target":"minecraft:wheat","label":"Pont de nuance par palette: Wheat","confidence":0.65},{"type":"color_bridge","target":"minecraft:red_sandstone","label":"Pont de nuance par palette: Red Sandstone","confidence":0.645},{"type":"color_bridge","target":"minecraft:red_sandstone_wall","label":"Pont de nuance par palette: Red Sandstone Wall","confidence":0.645},{"type":"color_analogous","target":"minecraft:potted_dandelion","label":"Couleurs analogues: Potted Dandelion","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_block","label":"Couleurs analogues: Bamboo Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:flowering_azalea","label":"Couleurs analogues: Flowering Azalea","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_terracotta","label":"Couleurs analogues: Lime Terracotta","confidence":0.944},{"type":"color_analogous","target":"minecraft:green_terracotta","label":"Couleurs analogues: Green Terracotta","confidence":0.944},{"type":"color_analogous","target":"minecraft:flowering_azalea_leaves","label":"Couleurs analogues: Flowering Azalea Leaves","confidence":0.938},{"type":"color_analogous","target":"minecraft:potted_wither_rose","label":"Couleurs analogues: Potted Wither Rose","confidence":0.937},{"type":"color_analogous","target":"minecraft:wither_rose","label":"Couleurs analogues: Wither Rose","confidence":0.937},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.787},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.78},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.78},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.78},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.78},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.685},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.645},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.58},{"type":"color_triad","target":"minecraft:sculk_vein","label":"Harmonie triadique: Sculk Vein","confidence":0.955},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.907},{"type":"color_triad","target":"minecraft:cyan_concrete","label":"Harmonie triadique: Cyan Concrete","confidence":0.901},{"type":"color_triad","target":"minecraft:glass_pane","label":"Harmonie triadique: Glass Pane","confidence":0.897},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.896},{"type":"color_triad","target":"minecraft:cyan_shulker_box","label":"Harmonie triadique: Cyan Shulker Box","confidence":0.84},{"type":"color_triad","target":"minecraft:glass","label":"Harmonie triadique: Glass","confidence":0.821},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.817},{"type":"color_square","target":"minecraft:pink_carpet","label":"Harmonie carree: Pink Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:pink_wool","label":"Harmonie carree: Pink Wool","confidence":0.96},{"type":"color_square","target":"minecraft:pink_shulker_box","label":"Harmonie carree: Pink Shulker Box","confidence":0.945},{"type":"color_square","target":"minecraft:pink_stained_glass","label":"Harmonie carree: Pink Stained Glass","confidence":0.942},{"type":"color_square","target":"minecraft:pink_glazed_terracotta","label":"Harmonie carree: Pink Glazed Terracotta","confidence":0.936},{"type":"color_square","target":"minecraft:pink_stained_glass_pane","label":"Harmonie carree: Pink Stained Glass Pane","confidence":0.935},{"type":"color_square","target":"minecraft:purple_terracotta","label":"Harmonie carree: Purple Terracotta","confidence":0.924},{"type":"color_square","target":"minecraft:oxidized_copper_chain","label":"Harmonie carree: Oxidized Copper Chain","confidence":0.914},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":""},{"id":"minecraft:danger_pottery_sherd","name":"Danger Pottery Sherd","entry_type":"item","description":"A danger pottery sherd is a pottery sherd that depicts a creeper. It can be found in trail ruins.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added danger pottery shards."}],"colors":{"primary":"#6c3d32","dominant_hex":"#5c342c","average_hex":"#6c3d32","hue_group":"red","lightness":0.3098,"saturation":0.3671,"palette":["#5c342c","#724234","#844c3c","#9a5a4a","#44241c","#542c24"],"color_groups":[{"hex":"#5c342c","weight":0.2038,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#724234","weight":0.1911,"lightness":0.3255,"saturation":0.3735,"hue_group":"red"},{"hex":"#844c3c","weight":0.1592,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.1592,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"},{"hex":"#44241c","weight":0.1529,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#542c24","weight":0.1338,"lightness":0.2353,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/danger_pottery_sherd.png","family":"danger_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blade_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:angler_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:burn_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:dark_oak_boat","name":"Dark Oak Boat","entry_type":"item","description":"Boats (including bamboo rafts) are drivable vehicle entities that can be ridden through water or at high speeds across all types of ice. Most mobs will ride nearby boats, which they cannot control or exit on their own.","history":[{"version":"v1.0.6","status":"added","notes":"Added boats."},{"version":"wiki-history","status":"added","notes":"added again."},{"version":"18w15a","status":"added","notes":"Added blue ice , which allows boats to travel even faster on it."}],"colors":{"primary":"#462c14","dominant_hex":"#28140c","average_hex":"#462c14","hue_group":"red","lightness":0.1765,"saturation":0.5556,"palette":["#28140c","#6d4924","#34240c","#543c1c","#3c240c","#4c3414"],"color_groups":[{"hex":"#28140c","weight":0.2424,"lightness":0.102,"saturation":0.5385,"hue_group":"red"},{"hex":"#6d4924","weight":0.2303,"lightness":0.2843,"saturation":0.5034,"hue_group":"yellow"},{"hex":"#34240c","weight":0.2,"lightness":0.1255,"saturation":0.625,"hue_group":"yellow"},{"hex":"#543c1c","weight":0.1273,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"},{"hex":"#3c240c","weight":0.1091,"lightness":0.1412,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.0909,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/dark_oak_boat.png","family":"dark_oak_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cocoa_beans","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berries","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rotten_flesh","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_eye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_stew","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:dark_oak_button","name":"Dark Oak Button","entry_type":"block","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added wooden buttons. They are currently uncraftable."},{"version":"12w34b","status":"added","notes":"Added crafting recipe for wooden buttons. Recipe"},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped buttons."}],"colors":{"primary":"#432b14","dominant_hex":"#3c2a14","average_hex":"#432b14","hue_group":"red","lightness":0.1706,"saturation":0.5402,"palette":["#3c2a14","#4c341c","#4c2c14","#543c1c","#2c1c0c","#341c0c"],"color_groups":[{"hex":"#3c2a14","weight":0.2539,"lightness":0.1569,"saturation":0.5,"hue_group":"yellow"},{"hex":"#4c341c","weight":0.2031,"lightness":0.2039,"saturation":0.4615,"hue_group":"yellow"},{"hex":"#4c2c14","weight":0.1875,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"},{"hex":"#543c1c","weight":0.1484,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1133,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#341c0c","weight":0.0938,"lightness":0.1255,"saturation":0.625,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_planks.png","family":"dark_oak_button","relations":[{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_lamp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_log","label":"Palette proche: Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wood","label":"Palette proche: Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.932},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.771},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.748},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.723},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.708},{"type":"color_analogous","target":"minecraft:dark_oak_fence","label":"Couleurs analogues: Dark Oak Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence_gate","label":"Couleurs analogues: Dark Oak Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_planks","label":"Couleurs analogues: Dark Oak Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_pressure_plate","label":"Couleurs analogues: Dark Oak Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sign","label":"Couleurs analogues: Dark Oak Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_slab","label":"Couleurs analogues: Dark Oak Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_stairs","label":"Couleurs analogues: Dark Oak Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_wall_sign","label":"Couleurs analogues: Dark Oak Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.868},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.864},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.864},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.864},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.861},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.792},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.773},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.773},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.932},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.931},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.918},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.91},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.86},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.86},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.95},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.939},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.904},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.842},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.8},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.798},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.766},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.733},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.722},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.711},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.688}],"category":"building"},{"id":"minecraft:dark_oak_chest_boat","name":"Dark Oak Chest Boat","entry_type":"item","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#533818","dominant_hex":"#5e411f","average_hex":"#533818","hue_group":"yellow","lightness":0.2098,"saturation":0.5514,"palette":["#5e411f","#936721","#26140c","#38250c","#393424","#2c1c0c"],"color_groups":[{"hex":"#5e411f","weight":0.2701,"lightness":0.2451,"saturation":0.504,"hue_group":"yellow"},{"hex":"#936721","weight":0.2184,"lightness":0.3529,"saturation":0.6333,"hue_group":"yellow"},{"hex":"#26140c","weight":0.1667,"lightness":0.098,"saturation":0.52,"hue_group":"red"},{"hex":"#38250c","weight":0.1609,"lightness":0.1333,"saturation":0.6471,"hue_group":"yellow"},{"hex":"#393424","weight":0.1034,"lightness":0.1824,"saturation":0.2258,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.0805,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/dark_oak_chest_boat.png","family":"dark_oak_chest_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:wooden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:debug_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:dark_oak_door","name":"Dark Oak Door","entry_type":"block","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","history":[{"version":"20100607","status":"added","notes":"Added wooden doors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"18w49a","status":"added","notes":"Added snowy tundra villages, which generate with spruce doors."}],"colors":{"primary":"#4d3419","dominant_hex":"#6a4b27","average_hex":"#4d3419","hue_group":"yellow","lightness":0.2,"saturation":0.5098,"palette":["#6a4b27","#4c3414","#54341c","#2e1e0c","#3b2c16","#442c14"],"color_groups":[{"hex":"#6a4b27","weight":0.2383,"lightness":0.2843,"saturation":0.4621,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.2344,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#54341c","weight":0.207,"lightness":0.2196,"saturation":0.5,"hue_group":"red"},{"hex":"#2e1e0c","weight":0.125,"lightness":0.1137,"saturation":0.5862,"hue_group":"yellow"},{"hex":"#3b2c16","weight":0.1172,"lightness":0.1588,"saturation":0.4568,"hue_group":"yellow"},{"hex":"#442c14","weight":0.0781,"lightness":0.1725,"saturation":0.5455,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_door_top.png","family":"dark_oak","relations":[{"type":"variants","target":"minecraft:dark_oak_fence","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_fence","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_leaves","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_leaves","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_log","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_log","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_planks","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_planks","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_sapling","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_sapling","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_slab","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_slab","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_stairs","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_stairs","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_wood","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_wood","label":"Related set: dark_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cartography_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:podzol","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rose_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_log","label":"Palette proche: Spruce Log","confidence":0.927},{"type":"color_neighbors","target":"minecraft:spruce_wood","label":"Palette proche: Spruce Wood","confidence":0.927},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.924},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.924},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.924},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.924},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.924},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.924},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.924},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.924},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.924},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.769},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.769},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.768},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.766},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.759},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.759},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.742},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.74},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.74},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.737},{"type":"color_analogous","target":"minecraft:dark_oak_trapdoor","label":"Couleurs analogues: Dark Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:cartography_table","label":"Couleurs analogues: Cartography Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_log","label":"Couleurs analogues: Spruce Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wood","label":"Couleurs analogues: Spruce Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_shelf","label":"Couleurs analogues: Dark Oak Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_stained_glass_pane","label":"Couleurs analogues: Brown Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_button","label":"Couleurs analogues: Dark Oak Button","confidence":0.954},{"type":"color_analogous","target":"minecraft:dark_oak_fence","label":"Couleurs analogues: Dark Oak Fence","confidence":0.954},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.925},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.918},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.801},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.801},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.801},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.755},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.751},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.729},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.932},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.932},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.925},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.921},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.911},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.895},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.876},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.865},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.952},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.931},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.872},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.87},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.861},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.739},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.706},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.694},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.694},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.694},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.694},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.683},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.659}],"category":"building"},{"id":"minecraft:dark_oak_fence","name":"Dark Oak Fence","entry_type":"block","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","history":[{"version":"20100629","status":"added","notes":"added to the game. There are three defined states: north-south, east-west and a cross. These models are currently unused."},{"version":"v1.0.17","status":"added","notes":"Added fences."},{"version":"1.8","status":"added","notes":"Added villages and strongholds , where wooden fences naturally generate."}],"colors":{"primary":"#432b14","dominant_hex":"#3c2a14","average_hex":"#432b14","hue_group":"red","lightness":0.1706,"saturation":0.5402,"palette":["#3c2a14","#4c341c","#4c2c14","#543c1c","#2c1c0c","#341c0c"],"color_groups":[{"hex":"#3c2a14","weight":0.2539,"lightness":0.1569,"saturation":0.5,"hue_group":"yellow"},{"hex":"#4c341c","weight":0.2031,"lightness":0.2039,"saturation":0.4615,"hue_group":"yellow"},{"hex":"#4c2c14","weight":0.1875,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"},{"hex":"#543c1c","weight":0.1484,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1133,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#341c0c","weight":0.0938,"lightness":0.1255,"saturation":0.625,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_planks.png","family":"dark_oak","relations":[{"type":"variants","target":"minecraft:dark_oak_door","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_door","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_leaves","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_leaves","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_log","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_log","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_planks","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_planks","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_sapling","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_sapling","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_slab","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_slab","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_stairs","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_stairs","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_wood","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_wood","label":"Related set: dark_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_lamp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_log","label":"Palette proche: Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wood","label":"Palette proche: Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.932},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.771},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.748},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.723},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.708},{"type":"color_analogous","target":"minecraft:dark_oak_button","label":"Couleurs analogues: Dark Oak Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence_gate","label":"Couleurs analogues: Dark Oak Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_planks","label":"Couleurs analogues: Dark Oak Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_pressure_plate","label":"Couleurs analogues: Dark Oak Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sign","label":"Couleurs analogues: Dark Oak Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_slab","label":"Couleurs analogues: Dark Oak Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_stairs","label":"Couleurs analogues: Dark Oak Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_wall_sign","label":"Couleurs analogues: Dark Oak Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.868},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.864},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.864},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.864},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.861},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.792},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.773},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.773},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.932},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.931},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.918},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.91},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.86},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.86},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.95},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.939},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.904},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.842},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.8},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.798},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.766},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.733},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.722},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.711},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.688}],"category":"building"},{"id":"minecraft:dark_oak_fence_gate","name":"Dark Oak Fence Gate","entry_type":"block","description":"A fence gate is a block that shares the functions of both the door and the fence.","history":[{"version":"Pre-release","status":"added","notes":"Added fence gates."},{"version":"14w32b","status":"added","notes":"Added spruce, birch, jungle, acacia, and dark oak fence gates."},{"version":"18w49a","status":"added","notes":"added snowy tundra villages."}],"colors":{"primary":"#432b14","dominant_hex":"#3c2a14","average_hex":"#432b14","hue_group":"red","lightness":0.1706,"saturation":0.5402,"palette":["#3c2a14","#4c341c","#4c2c14","#543c1c","#2c1c0c","#341c0c"],"color_groups":[{"hex":"#3c2a14","weight":0.2539,"lightness":0.1569,"saturation":0.5,"hue_group":"yellow"},{"hex":"#4c341c","weight":0.2031,"lightness":0.2039,"saturation":0.4615,"hue_group":"yellow"},{"hex":"#4c2c14","weight":0.1875,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"},{"hex":"#543c1c","weight":0.1484,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1133,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#341c0c","weight":0.0938,"lightness":0.1255,"saturation":0.625,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_planks.png","family":"dark_oak_fence_gate","relations":[{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_lamp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_log","label":"Palette proche: Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wood","label":"Palette proche: Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.932},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.771},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.748},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.723},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.708},{"type":"color_analogous","target":"minecraft:dark_oak_button","label":"Couleurs analogues: Dark Oak Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence","label":"Couleurs analogues: Dark Oak Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_planks","label":"Couleurs analogues: Dark Oak Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_pressure_plate","label":"Couleurs analogues: Dark Oak Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sign","label":"Couleurs analogues: Dark Oak Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_slab","label":"Couleurs analogues: Dark Oak Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_stairs","label":"Couleurs analogues: Dark Oak Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_wall_sign","label":"Couleurs analogues: Dark Oak Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.868},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.864},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.864},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.864},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.861},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.792},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.773},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.773},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.932},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.931},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.918},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.91},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.86},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.86},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.95},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.939},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.904},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.842},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.8},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.798},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.766},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.733},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.722},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.711},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.688}],"category":"building"},{"id":"minecraft:dark_oak_hanging_sign","name":"Dark Oak Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#493924","dominant_hex":"#4c3c24","average_hex":"#493924","hue_group":"yellow","lightness":0.2137,"saturation":0.3394,"palette":["#4c3c24","#443424","#543c24","#3c3424"],"color_groups":[{"hex":"#4c3c24","weight":0.4258,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#443424","weight":0.2383,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#543c24","weight":0.2188,"lightness":0.2353,"saturation":0.4,"hue_group":"yellow"},{"hex":"#3c3424","weight":0.1172,"lightness":0.1882,"saturation":0.25,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_dark_oak_log.png","family":"dark_oak_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_roots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firefly_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Palette proche: Dark Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Palette proche: Stripped Dark Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Palette proche: Stripped Dark Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_shelf","label":"Palette proche: Dark Oak Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_roots","label":"Palette proche: Mangrove Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.898},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.898},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.896},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.888},{"type":"color_neighbors","target":"minecraft:brown_terracotta","label":"Palette proche: Brown Terracotta","confidence":0.887},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.894},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.826},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.812},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.786},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.786},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.765},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.739},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.739},{"type":"color_bridge","target":"minecraft:campfire","label":"Pont de nuance par sous-ton: Campfire","confidence":0.738},{"type":"color_bridge","target":"minecraft:soul_campfire","label":"Pont de nuance par sous-ton: Soul Campfire","confidence":0.738},{"type":"color_analogous","target":"minecraft:dark_oak_wall_hanging_sign","label":"Couleurs analogues: Dark Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_dark_oak_log","label":"Couleurs analogues: Stripped Dark Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_dark_oak_wood","label":"Couleurs analogues: Stripped Dark Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_roots","label":"Couleurs analogues: Mangrove Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_shelf","label":"Couleurs analogues: Dark Oak Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_trapdoor","label":"Couleurs analogues: Spruce Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:dead_bush","label":"Couleurs analogues: Dead Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_dead_bush","label":"Couleurs analogues: Potted Dead Bush","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.945},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.869},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.831},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.798},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.781},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.775},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.766},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.945},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.934},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.934},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.951},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.951},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.946},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.945},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.936},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.854},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.731},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.697},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.685},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.685},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.685},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.685},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.675},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.65}],"category":"building"},{"id":"minecraft:dark_oak_leaves","name":"Dark Oak Leaves","entry_type":"block","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","history":[{"version":"0.0.14a","status":"added","notes":"Added leaves."},{"version":"1.2","status":"added","notes":"Added spruce and birch leaves, which are colored #619961 and #80a755 respectively, and do not vary across biomes."},{"version":"1.7","status":"added","notes":"Added shears , which collect leaves. Before, leaves could be obtained only via inventory editing."}],"colors":{"primary":"#979797","dominant_hex":"#b4bcb4","average_hex":"#979797","hue_group":"neutral","lightness":0.5922,"saturation":0.0,"palette":["#b4bcb4","#9c9c9c","#746c74","#7c7c7c"],"color_groups":[{"hex":"#b4bcb4","weight":0.3408,"lightness":0.7216,"saturation":0.0563,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.3296,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#746c74","weight":0.2179,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1117,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_leaves.png","family":"dark_oak","relations":[{"type":"variants","target":"minecraft:dark_oak_door","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_door","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_fence","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_fence","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_log","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_log","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_planks","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_planks","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_sapling","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_sapling","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_slab","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_slab","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_stairs","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_stairs","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_wood","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_wood","label":"Related set: dark_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_leaves","label":"Palette proche: Birch Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_leaves","label":"Palette proche: Jungle Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.889},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.889},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.889},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.889},{"type":"color_neighbors","target":"minecraft:oak_leaves","label":"Palette proche: Oak Leaves","confidence":0.883},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.868},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.866},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.866},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.866},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.866},{"type":"color_bridge","target":"minecraft:birch_leaves","label":"Pont de nuance par palette: Birch Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:jungle_leaves","label":"Pont de nuance par palette: Jungle Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:oak_leaves","label":"Pont de nuance par palette: Oak Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_slab","label":"Contraste clair sombre: Deepslate Tile Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_stairs","label":"Contraste clair sombre: Deepslate Tile Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_wall","label":"Contraste clair sombre: Deepslate Tile Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tiles","label":"Contraste clair sombre: Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_deepslate_tiles","label":"Contraste clair sombre: Cracked Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55}],"category":"natural"},{"id":"minecraft:dark_oak_log","name":"Dark Oak Log","entry_type":"block","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","history":[{"version":"0.0.14a","status":"added","notes":"Added wood."},{"version":"1.2","status":"added","notes":"Added spruce and birch wood."},{"version":"wiki-history","status":"added","notes":"Added \"Getting Wood\" achievement for picking up a wood item ."}],"colors":{"primary":"#3c2f1a","dominant_hex":"#3c341c","average_hex":"#3c2f1a","hue_group":"yellow","lightness":0.1686,"saturation":0.3953,"palette":["#3c341c","#342414","#4c3c1c","#2c2414","#5c442c"],"color_groups":[{"hex":"#3c341c","weight":0.4219,"lightness":0.1725,"saturation":0.3636,"hue_group":"yellow"},{"hex":"#342414","weight":0.293,"lightness":0.1412,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#4c3c1c","weight":0.1641,"lightness":0.2039,"saturation":0.4615,"hue_group":"yellow"},{"hex":"#2c2414","weight":0.0742,"lightness":0.1255,"saturation":0.375,"hue_group":"yellow"},{"hex":"#5c442c","weight":0.0469,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_log.png","family":"dark_oak","relations":[{"type":"variants","target":"minecraft:dark_oak_door","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_door","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_fence","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_fence","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_leaves","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_leaves","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_planks","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_planks","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_sapling","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_sapling","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_slab","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_slab","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_stairs","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_stairs","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_wood","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_wood","label":"Related set: dark_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sea_pickle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_wood","label":"Palette proche: Dark Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_shelf","label":"Palette proche: Dark Oak Shelf","confidence":0.896},{"type":"color_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Palette proche: Dark Oak Hanging Sign","confidence":0.876},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Palette proche: Dark Oak Wall Hanging Sign","confidence":0.876},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Palette proche: Stripped Dark Oak Log","confidence":0.876},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Palette proche: Stripped Dark Oak Wood","confidence":0.876},{"type":"color_neighbors","target":"minecraft:dark_oak_door","label":"Palette proche: Dark Oak Door","confidence":0.867},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.865},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.865},{"type":"color_neighbors","target":"minecraft:jungle_log","label":"Palette proche: Jungle Log","confidence":0.862},{"type":"color_neighbors","target":"minecraft:jungle_wood","label":"Palette proche: Jungle Wood","confidence":0.862},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.859},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.817},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.782},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.776},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.771},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.761},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.717},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.712},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.712},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.708},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.708},{"type":"color_analogous","target":"minecraft:dark_oak_wood","label":"Couleurs analogues: Dark Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_log","label":"Couleurs analogues: Mangrove Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wood","label":"Couleurs analogues: Mangrove Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_shelf","label":"Couleurs analogues: Spruce Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_trapdoor","label":"Couleurs analogues: Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:bookshelf","label":"Couleurs analogues: Bookshelf","confidence":0.959},{"type":"color_analogous","target":"minecraft:oak_shelf","label":"Couleurs analogues: Oak Shelf","confidence":0.948},{"type":"color_analogous","target":"minecraft:crafting_table","label":"Couleurs analogues: Crafting Table","confidence":0.946},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.937},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.904},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.887},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.88},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.872},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.867},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.85},{"type":"color_triad","target":"minecraft:oxidized_copper_bars","label":"Harmonie triadique: Oxidized Copper Bars","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_bars","label":"Harmonie triadique: Waxed Oxidized Copper Bars","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_bulb","label":"Harmonie triadique: Oxidized Copper Bulb","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_bulb","label":"Harmonie triadique: Waxed Oxidized Copper Bulb","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper","label":"Harmonie triadique: Oxidized Cut Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper_slab","label":"Harmonie triadique: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper_stairs","label":"Harmonie triadique: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_cut_copper","label":"Harmonie triadique: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.913},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.906},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.906},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.904},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.9},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.884},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.867},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.815},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.772},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.738},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.725},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.725},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.725},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.725},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.716},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.691}],"category":"natural"},{"id":"minecraft:dark_oak_planks","name":"Dark Oak Planks","entry_type":"block","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","history":[{"version":"rd-20090515","status":"added","notes":"Added wooden planks."},{"version":"1.2.4 release","status":"added","notes":"Added spruce, birch and jungle wood planks. They are crafted from their corresponding wood . The color of wood planks available to this point is now obtainable only from oak wood."},{"version":"18w07a","status":"added","notes":"Added stripped logs, a variant of logs , which can be used to craft wood planks."}],"colors":{"primary":"#432b14","dominant_hex":"#3c2a14","average_hex":"#432b14","hue_group":"red","lightness":0.1706,"saturation":0.5402,"palette":["#3c2a14","#4c341c","#4c2c14","#543c1c","#2c1c0c","#341c0c"],"color_groups":[{"hex":"#3c2a14","weight":0.2539,"lightness":0.1569,"saturation":0.5,"hue_group":"yellow"},{"hex":"#4c341c","weight":0.2031,"lightness":0.2039,"saturation":0.4615,"hue_group":"yellow"},{"hex":"#4c2c14","weight":0.1875,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"},{"hex":"#543c1c","weight":0.1484,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1133,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#341c0c","weight":0.0938,"lightness":0.1255,"saturation":0.625,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_planks.png","family":"dark_oak","relations":[{"type":"variants","target":"minecraft:dark_oak_door","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_door","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_fence","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_fence","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_leaves","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_leaves","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_log","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_log","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_sapling","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_sapling","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_slab","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_slab","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_stairs","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_stairs","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_wood","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_wood","label":"Related set: dark_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_lamp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_log","label":"Palette proche: Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wood","label":"Palette proche: Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.932},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.771},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.748},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.723},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.708},{"type":"color_analogous","target":"minecraft:dark_oak_button","label":"Couleurs analogues: Dark Oak Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence","label":"Couleurs analogues: Dark Oak Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence_gate","label":"Couleurs analogues: Dark Oak Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_pressure_plate","label":"Couleurs analogues: Dark Oak Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sign","label":"Couleurs analogues: Dark Oak Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_slab","label":"Couleurs analogues: Dark Oak Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_stairs","label":"Couleurs analogues: Dark Oak Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_wall_sign","label":"Couleurs analogues: Dark Oak Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.868},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.864},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.864},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.864},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.861},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.792},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.773},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.773},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.932},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.931},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.918},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.91},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.86},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.86},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.95},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.939},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.904},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.842},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.8},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.798},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.766},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.733},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.722},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.711},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.688}],"category":"building"},{"id":"minecraft:dark_oak_pressure_plate","name":"Dark Oak Pressure Plate","entry_type":"block","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","history":[{"version":"v1.0.1","status":"added","notes":"Added wooden pressure plates."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped pressure plates."},{"version":"1.19 22w11a","status":"added","notes":"Added mangrove pressure plates."}],"colors":{"primary":"#432b14","dominant_hex":"#3c2a14","average_hex":"#432b14","hue_group":"red","lightness":0.1706,"saturation":0.5402,"palette":["#3c2a14","#4c341c","#4c2c14","#543c1c","#2c1c0c","#341c0c"],"color_groups":[{"hex":"#3c2a14","weight":0.2539,"lightness":0.1569,"saturation":0.5,"hue_group":"yellow"},{"hex":"#4c341c","weight":0.2031,"lightness":0.2039,"saturation":0.4615,"hue_group":"yellow"},{"hex":"#4c2c14","weight":0.1875,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"},{"hex":"#543c1c","weight":0.1484,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1133,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#341c0c","weight":0.0938,"lightness":0.1255,"saturation":0.625,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_planks.png","family":"dark_oak_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_lamp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_log","label":"Palette proche: Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wood","label":"Palette proche: Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.932},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.771},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.748},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.723},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.708},{"type":"color_analogous","target":"minecraft:dark_oak_button","label":"Couleurs analogues: Dark Oak Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence","label":"Couleurs analogues: Dark Oak Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence_gate","label":"Couleurs analogues: Dark Oak Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_planks","label":"Couleurs analogues: Dark Oak Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sign","label":"Couleurs analogues: Dark Oak Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_slab","label":"Couleurs analogues: Dark Oak Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_stairs","label":"Couleurs analogues: Dark Oak Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_wall_sign","label":"Couleurs analogues: Dark Oak Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.868},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.864},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.864},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.864},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.861},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.792},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.773},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.773},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.932},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.931},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.918},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.91},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.86},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.86},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.95},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.939},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.904},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.842},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.8},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.798},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.766},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.733},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.722},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.711},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.688}],"category":"building"},{"id":"minecraft:dark_oak_sapling","name":"Dark Oak Sapling","entry_type":"block","description":"A sapling is a non-solid block that can be grown into a tree.","history":[{"version":"rd-161348","status":"added","notes":"Added saplings as the fifth placeable block in the game."},{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added tree growth."},{"version":"1.5","status":"added","notes":"Added spruce and birch saplings. Before, trees dropped only oak saplings, regardless of the tree."}],"colors":{"primary":"#3d5b1f","dominant_hex":"#145414","average_hex":"#3d5b1f","hue_group":"green","lightness":0.2392,"saturation":0.4918,"palette":["#145414","#499631","#5c3c1c","#1c641c","#4c3414","#765830"],"color_groups":[{"hex":"#145414","weight":0.2273,"lightness":0.2039,"saturation":0.6154,"hue_group":"green"},{"hex":"#499631","weight":0.1818,"lightness":0.3902,"saturation":0.5075,"hue_group":"green"},{"hex":"#5c3c1c","weight":0.1727,"lightness":0.2353,"saturation":0.5333,"hue_group":"yellow"},{"hex":"#1c641c","weight":0.1636,"lightness":0.251,"saturation":0.5625,"hue_group":"green"},{"hex":"#4c3414","weight":0.1364,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#765830","weight":0.1182,"lightness":0.3255,"saturation":0.4217,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_sapling.png","family":"dark_oak","relations":[{"type":"variants","target":"minecraft:dark_oak_door","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_door","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_fence","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_fence","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_leaves","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_leaves","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_log","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_log","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_planks","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_planks","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_slab","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_slab","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_stairs","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_stairs","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_wood","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_wood","label":"Related set: dark_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berry_bush","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sunflower","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_spruce_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Palette proche: Potted Dark Oak Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_sapling","label":"Palette proche: Oak Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_oak_sapling","label":"Palette proche: Potted Oak Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_spruce_sapling","label":"Palette proche: Potted Spruce Sapling","confidence":0.748},{"type":"color_neighbors","target":"minecraft:spruce_sapling","label":"Palette proche: Spruce Sapling","confidence":0.748},{"type":"color_neighbors","target":"minecraft:bamboo_sapling","label":"Palette proche: Bamboo Sapling","confidence":0.739},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.737},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.736},{"type":"color_neighbors","target":"minecraft:carrots","label":"Palette proche: Carrots","confidence":0.734},{"type":"color_neighbors","target":"minecraft:podzol","label":"Palette proche: Podzol","confidence":0.727},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.712},{"type":"color_neighbors","target":"minecraft:cave_vines_plant","label":"Palette proche: Cave Vines Plant","confidence":0.71},{"type":"color_bridge","target":"minecraft:podzol","label":"Pont de nuance par palette: Podzol","confidence":0.775},{"type":"color_bridge","target":"minecraft:dark_oak_trapdoor","label":"Pont de nuance par palette: Dark Oak Trapdoor","confidence":0.763},{"type":"color_bridge","target":"minecraft:jungle_log","label":"Pont de nuance par palette: Jungle Log","confidence":0.761},{"type":"color_bridge","target":"minecraft:jungle_wood","label":"Pont de nuance par palette: Jungle Wood","confidence":0.761},{"type":"color_bridge","target":"minecraft:dark_oak_door","label":"Pont de nuance par palette: Dark Oak Door","confidence":0.759},{"type":"color_bridge","target":"minecraft:spruce_button","label":"Pont de nuance par palette: Spruce Button","confidence":0.755},{"type":"color_bridge","target":"minecraft:spruce_fence","label":"Pont de nuance par palette: Spruce Fence","confidence":0.755},{"type":"color_bridge","target":"minecraft:spruce_fence_gate","label":"Pont de nuance par palette: Spruce Fence Gate","confidence":0.755},{"type":"color_bridge","target":"minecraft:spruce_planks","label":"Pont de nuance par palette: Spruce Planks","confidence":0.755},{"type":"color_bridge","target":"minecraft:spruce_pressure_plate","label":"Pont de nuance par palette: Spruce Pressure Plate","confidence":0.755},{"type":"color_analogous","target":"minecraft:potted_dark_oak_sapling","label":"Couleurs analogues: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:cactus","label":"Couleurs analogues: Cactus","confidence":0.96},{"type":"color_analogous","target":"minecraft:kelp_plant","label":"Couleurs analogues: Kelp Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sapling","label":"Couleurs analogues: Jungle Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_jungle_sapling","label":"Couleurs analogues: Potted Jungle Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_candle","label":"Couleurs analogues: Lime Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_shulker_box","label":"Couleurs analogues: Lime Shulker Box","confidence":0.953},{"type":"color_analogous","target":"minecraft:lime_concrete","label":"Couleurs analogues: Lime Concrete","confidence":0.949},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.921},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.921},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.912},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.912},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.902},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.898},{"type":"color_complement","target":"minecraft:purple_concrete","label":"Contraste complementaire: Purple Concrete","confidence":0.886},{"type":"color_complement","target":"minecraft:purple_stained_glass","label":"Contraste complementaire: Purple Stained Glass","confidence":0.885},{"type":"color_triad","target":"minecraft:cherry_log","label":"Harmonie triadique: Cherry Log","confidence":0.96},{"type":"color_triad","target":"minecraft:cherry_wood","label":"Harmonie triadique: Cherry Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.87},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.86},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.85},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.817},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.817},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.817},{"type":"color_square","target":"minecraft:netherrack","label":"Harmonie carree: Netherrack","confidence":0.96},{"type":"color_square","target":"minecraft:red_stained_glass_pane","label":"Harmonie carree: Red Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_nylium","label":"Harmonie carree: Crimson Nylium","confidence":0.96},{"type":"color_square","target":"minecraft:red_stained_glass","label":"Harmonie carree: Red Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:red_concrete","label":"Harmonie carree: Red Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:red_shulker_box","label":"Harmonie carree: Red Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_candle","label":"Harmonie carree: Cyan Candle","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_shelf","label":"Harmonie carree: Cherry Shelf","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.694},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.638},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.62},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.62},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.608},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.586},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.586}],"category":"natural"},{"id":"minecraft:dark_oak_shelf","name":"Dark Oak Shelf","entry_type":"block","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added shelves."},{"version":"wiki-history","status":"added","notes":"Added the align_items_to_bottom block state property, by default set to false, to display items at the bottom of the shelf rather than in the middle."}],"colors":{"primary":"#423321","dominant_hex":"#3c3424","average_hex":"#423321","hue_group":"yellow","lightness":0.1941,"saturation":0.3333,"palette":["#3c3424","#443424","#4c3c24","#543c24","#342414","#2c1c0c"],"color_groups":[{"hex":"#3c3424","weight":0.3184,"lightness":0.1882,"saturation":0.25,"hue_group":"yellow"},{"hex":"#443424","weight":0.2607,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#4c3c24","weight":0.1943,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#543c24","weight":0.1035,"lightness":0.2353,"saturation":0.4,"hue_group":"yellow"},{"hex":"#342414","weight":0.0771,"lightness":0.1412,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.0459,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_shelf.png","family":"dark_oak_shelf","relations":[{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_roots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firefly_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Palette proche: Dark Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Palette proche: Dark Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Palette proche: Stripped Dark Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Palette proche: Stripped Dark Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.924},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.924},{"type":"color_neighbors","target":"minecraft:mangrove_roots","label":"Palette proche: Mangrove Roots","confidence":0.922},{"type":"color_neighbors","target":"minecraft:dark_oak_log","label":"Palette proche: Dark Oak Log","confidence":0.896},{"type":"color_neighbors","target":"minecraft:dark_oak_wood","label":"Palette proche: Dark Oak Wood","confidence":0.896},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.879},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.879},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.879},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.875},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.826},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.813},{"type":"color_bridge","target":"minecraft:potted_wither_rose","label":"Pont de nuance par palette: Potted Wither Rose","confidence":0.77},{"type":"color_bridge","target":"minecraft:wither_rose","label":"Pont de nuance par palette: Wither Rose","confidence":0.77},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.769},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.766},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.748},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.737},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.737},{"type":"color_analogous","target":"minecraft:dark_oak_hanging_sign","label":"Couleurs analogues: Dark Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_wall_hanging_sign","label":"Couleurs analogues: Dark Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_dark_oak_log","label":"Couleurs analogues: Stripped Dark Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_dark_oak_wood","label":"Couleurs analogues: Stripped Dark Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_door","label":"Couleurs analogues: Dark Oak Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_trapdoor","label":"Couleurs analogues: Spruce Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_trapdoor","label":"Couleurs analogues: Dark Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_door","label":"Couleurs analogues: Spruce Door","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.952},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.826},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.786},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.753},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.736},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.731},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.731},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.947},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.936},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.923},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.924},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.922},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.919},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.909},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.89},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.889},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.75},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.716},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.705},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.705},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.705},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.705},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.694},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.67}],"category":""},{"id":"minecraft:dark_oak_sign","name":"Dark Oak Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#432b14","dominant_hex":"#3c2a14","average_hex":"#432b14","hue_group":"red","lightness":0.1706,"saturation":0.5402,"palette":["#3c2a14","#4c341c","#4c2c14","#543c1c","#2c1c0c","#341c0c"],"color_groups":[{"hex":"#3c2a14","weight":0.2539,"lightness":0.1569,"saturation":0.5,"hue_group":"yellow"},{"hex":"#4c341c","weight":0.2031,"lightness":0.2039,"saturation":0.4615,"hue_group":"yellow"},{"hex":"#4c2c14","weight":0.1875,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"},{"hex":"#543c1c","weight":0.1484,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1133,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#341c0c","weight":0.0938,"lightness":0.1255,"saturation":0.625,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_planks.png","family":"dark_oak_sign","relations":[{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_lamp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_log","label":"Palette proche: Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wood","label":"Palette proche: Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.932},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.771},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.748},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.723},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.708},{"type":"color_analogous","target":"minecraft:dark_oak_button","label":"Couleurs analogues: Dark Oak Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence","label":"Couleurs analogues: Dark Oak Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence_gate","label":"Couleurs analogues: Dark Oak Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_planks","label":"Couleurs analogues: Dark Oak Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_pressure_plate","label":"Couleurs analogues: Dark Oak Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_slab","label":"Couleurs analogues: Dark Oak Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_stairs","label":"Couleurs analogues: Dark Oak Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_wall_sign","label":"Couleurs analogues: Dark Oak Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.868},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.864},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.864},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.864},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.861},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.792},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.773},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.773},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.932},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.931},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.918},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.91},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.86},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.86},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.95},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.939},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.904},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.842},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.8},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.798},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.766},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.733},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.722},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.711},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.688}],"category":"building"},{"id":"minecraft:dark_oak_slab","name":"Dark Oak Slab","entry_type":"block","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","history":[{"version":"1.7.2 1.7","status":"added","notes":"Added acacia and dark oak slabs."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped slabs."}],"colors":{"primary":"#432b14","dominant_hex":"#3c2a14","average_hex":"#432b14","hue_group":"red","lightness":0.1706,"saturation":0.5402,"palette":["#3c2a14","#4c341c","#4c2c14","#543c1c","#2c1c0c","#341c0c"],"color_groups":[{"hex":"#3c2a14","weight":0.2539,"lightness":0.1569,"saturation":0.5,"hue_group":"yellow"},{"hex":"#4c341c","weight":0.2031,"lightness":0.2039,"saturation":0.4615,"hue_group":"yellow"},{"hex":"#4c2c14","weight":0.1875,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"},{"hex":"#543c1c","weight":0.1484,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1133,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#341c0c","weight":0.0938,"lightness":0.1255,"saturation":0.625,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_planks.png","family":"dark_oak","relations":[{"type":"variants","target":"minecraft:dark_oak_door","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_door","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_fence","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_fence","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_leaves","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_leaves","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_log","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_log","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_planks","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_planks","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_sapling","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_sapling","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_stairs","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_stairs","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_wood","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_wood","label":"Related set: dark_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_lamp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_log","label":"Palette proche: Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wood","label":"Palette proche: Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.932},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.771},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.748},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.723},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.708},{"type":"color_analogous","target":"minecraft:dark_oak_button","label":"Couleurs analogues: Dark Oak Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence","label":"Couleurs analogues: Dark Oak Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence_gate","label":"Couleurs analogues: Dark Oak Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_planks","label":"Couleurs analogues: Dark Oak Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_pressure_plate","label":"Couleurs analogues: Dark Oak Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sign","label":"Couleurs analogues: Dark Oak Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_stairs","label":"Couleurs analogues: Dark Oak Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_wall_sign","label":"Couleurs analogues: Dark Oak Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.868},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.864},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.864},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.864},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.861},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.792},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.773},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.773},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.932},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.931},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.918},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.91},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.86},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.86},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.95},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.939},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.904},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.842},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.8},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.798},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.766},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.733},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.722},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.711},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.688}],"category":"building"},{"id":"minecraft:dark_oak_stairs","name":"Dark Oak Stairs","entry_type":"block","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","history":[{"version":"20100629","status":"added","notes":"Added \"wooden\" stairs."},{"version":"1.3.1 12w25a","status":"added","notes":"Added wooden stairs for the remaining three wood types (spruce, birch, and jungle)."},{"version":"12w26a","status":"added","notes":"Added crafting recipes for spruce, birch, and jungle wood stairs."}],"colors":{"primary":"#432b14","dominant_hex":"#3c2a14","average_hex":"#432b14","hue_group":"red","lightness":0.1706,"saturation":0.5402,"palette":["#3c2a14","#4c341c","#4c2c14","#543c1c","#2c1c0c","#341c0c"],"color_groups":[{"hex":"#3c2a14","weight":0.2539,"lightness":0.1569,"saturation":0.5,"hue_group":"yellow"},{"hex":"#4c341c","weight":0.2031,"lightness":0.2039,"saturation":0.4615,"hue_group":"yellow"},{"hex":"#4c2c14","weight":0.1875,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"},{"hex":"#543c1c","weight":0.1484,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1133,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#341c0c","weight":0.0938,"lightness":0.1255,"saturation":0.625,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_planks.png","family":"dark_oak","relations":[{"type":"variants","target":"minecraft:dark_oak_door","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_door","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_fence","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_fence","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_leaves","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_leaves","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_log","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_log","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_planks","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_planks","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_sapling","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_sapling","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_slab","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_slab","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_wood","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_wood","label":"Related set: dark_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_lamp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_log","label":"Palette proche: Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wood","label":"Palette proche: Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.932},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.771},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.748},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.723},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.708},{"type":"color_analogous","target":"minecraft:dark_oak_button","label":"Couleurs analogues: Dark Oak Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence","label":"Couleurs analogues: Dark Oak Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence_gate","label":"Couleurs analogues: Dark Oak Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_planks","label":"Couleurs analogues: Dark Oak Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_pressure_plate","label":"Couleurs analogues: Dark Oak Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sign","label":"Couleurs analogues: Dark Oak Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_slab","label":"Couleurs analogues: Dark Oak Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_wall_sign","label":"Couleurs analogues: Dark Oak Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.868},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.864},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.864},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.864},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.861},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.792},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.773},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.773},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.932},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.931},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.918},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.91},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.86},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.86},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.95},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.939},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.904},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.842},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.8},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.798},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.766},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.733},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.722},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.711},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.688}],"category":"building"},{"id":"minecraft:dark_oak_trapdoor","name":"Dark Oak Trapdoor","entry_type":"block","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","history":[{"version":"1.6","status":"added","notes":"Added wooden trapdoors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped trapdoors."}],"colors":{"primary":"#4b3217","dominant_hex":"#4c3414","average_hex":"#4b3217","hue_group":"yellow","lightness":0.1922,"saturation":0.5306,"palette":["#4c3414","#54341c","#6f4924","#2c1c0c","#3d2c14","#34240c"],"color_groups":[{"hex":"#4c3414","weight":0.3281,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#54341c","weight":0.2812,"lightness":0.2196,"saturation":0.5,"hue_group":"red"},{"hex":"#6f4924","weight":0.1406,"lightness":0.2882,"saturation":0.5102,"hue_group":"red"},{"hex":"#2c1c0c","weight":0.0938,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#3d2c14","weight":0.0938,"lightness":0.1588,"saturation":0.5062,"hue_group":"yellow"},{"hex":"#34240c","weight":0.0625,"lightness":0.1255,"saturation":0.625,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_trapdoor.png","family":"dark_oak_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:dark_oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cartography_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:podzol","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_door","label":"Palette proche: Dark Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_log","label":"Palette proche: Spruce Log","confidence":0.938},{"type":"color_neighbors","target":"minecraft:spruce_wood","label":"Palette proche: Spruce Wood","confidence":0.938},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.932},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.932},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.932},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.932},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.932},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.932},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.932},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.932},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.932},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.766},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.766},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.763},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.763},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.76},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.751},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.738},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.738},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.725},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.72},{"type":"color_analogous","target":"minecraft:dark_oak_door","label":"Couleurs analogues: Dark Oak Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:cartography_table","label":"Couleurs analogues: Cartography Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_log","label":"Couleurs analogues: Spruce Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wood","label":"Couleurs analogues: Spruce Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_shelf","label":"Couleurs analogues: Dark Oak Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_stained_glass_pane","label":"Couleurs analogues: Brown Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_button","label":"Couleurs analogues: Dark Oak Button","confidence":0.956},{"type":"color_analogous","target":"minecraft:dark_oak_fence","label":"Couleurs analogues: Dark Oak Fence","confidence":0.956},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.927},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.92},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.803},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.803},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.803},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.753},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.753},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.731},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.93},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.93},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.926},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.922},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.91},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.893},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.878},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.867},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.953},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.929},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.874},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.872},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.746},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.713},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.701},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.701},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.701},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.701},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.69},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.666}],"category":"building"},{"id":"minecraft:dark_oak_wall_hanging_sign","name":"Dark Oak Wall Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#493924","dominant_hex":"#4c3c24","average_hex":"#493924","hue_group":"yellow","lightness":0.2137,"saturation":0.3394,"palette":["#4c3c24","#443424","#543c24","#3c3424"],"color_groups":[{"hex":"#4c3c24","weight":0.4258,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#443424","weight":0.2383,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#543c24","weight":0.2188,"lightness":0.2353,"saturation":0.4,"hue_group":"yellow"},{"hex":"#3c3424","weight":0.1172,"lightness":0.1882,"saturation":0.25,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_dark_oak_log.png","family":"dark_oak_wall_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_roots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firefly_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Palette proche: Dark Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Palette proche: Stripped Dark Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Palette proche: Stripped Dark Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_shelf","label":"Palette proche: Dark Oak Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_roots","label":"Palette proche: Mangrove Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.898},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.898},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.896},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.888},{"type":"color_neighbors","target":"minecraft:brown_terracotta","label":"Palette proche: Brown Terracotta","confidence":0.887},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.894},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.826},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.812},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.786},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.786},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.765},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.739},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.739},{"type":"color_bridge","target":"minecraft:campfire","label":"Pont de nuance par sous-ton: Campfire","confidence":0.738},{"type":"color_bridge","target":"minecraft:soul_campfire","label":"Pont de nuance par sous-ton: Soul Campfire","confidence":0.738},{"type":"color_analogous","target":"minecraft:dark_oak_hanging_sign","label":"Couleurs analogues: Dark Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_dark_oak_log","label":"Couleurs analogues: Stripped Dark Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_dark_oak_wood","label":"Couleurs analogues: Stripped Dark Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_roots","label":"Couleurs analogues: Mangrove Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_shelf","label":"Couleurs analogues: Dark Oak Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_trapdoor","label":"Couleurs analogues: Spruce Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:dead_bush","label":"Couleurs analogues: Dead Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_dead_bush","label":"Couleurs analogues: Potted Dead Bush","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.945},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.869},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.831},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.798},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.781},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.775},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.766},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.945},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.934},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.934},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.951},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.951},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.946},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.945},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.936},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.854},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.731},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.697},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.685},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.685},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.685},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.685},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.675},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.65}],"category":"building"},{"id":"minecraft:dark_oak_wall_sign","name":"Dark Oak Wall Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#432b14","dominant_hex":"#3c2a14","average_hex":"#432b14","hue_group":"red","lightness":0.1706,"saturation":0.5402,"palette":["#3c2a14","#4c341c","#4c2c14","#543c1c","#2c1c0c","#341c0c"],"color_groups":[{"hex":"#3c2a14","weight":0.2539,"lightness":0.1569,"saturation":0.5,"hue_group":"yellow"},{"hex":"#4c341c","weight":0.2031,"lightness":0.2039,"saturation":0.4615,"hue_group":"yellow"},{"hex":"#4c2c14","weight":0.1875,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"},{"hex":"#543c1c","weight":0.1484,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1133,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#341c0c","weight":0.0938,"lightness":0.1255,"saturation":0.625,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_planks.png","family":"dark_oak_wall_sign","relations":[{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_lamp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_log","label":"Palette proche: Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wood","label":"Palette proche: Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.932},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.771},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.748},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.735},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.731},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.723},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.708},{"type":"color_analogous","target":"minecraft:dark_oak_button","label":"Couleurs analogues: Dark Oak Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence","label":"Couleurs analogues: Dark Oak Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence_gate","label":"Couleurs analogues: Dark Oak Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_planks","label":"Couleurs analogues: Dark Oak Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_pressure_plate","label":"Couleurs analogues: Dark Oak Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sign","label":"Couleurs analogues: Dark Oak Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_slab","label":"Couleurs analogues: Dark Oak Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_stairs","label":"Couleurs analogues: Dark Oak Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.868},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.864},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.864},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.864},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.861},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.792},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.773},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.773},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.932},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.931},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.928},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.918},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.91},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.86},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.86},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.95},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.944},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.939},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.904},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.842},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.8},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.798},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.766},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.733},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.722},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.722},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.711},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.688}],"category":"building"},{"id":"minecraft:dark_oak_wood","name":"Dark Oak Wood","entry_type":"block","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","history":[{"version":"1.3.1 12w30d","status":"added","notes":"Added six-sided wood blocks, which look similar to logs , but have the wood's \"bark\" texture (side texture when placed vertically) on all 6 sides."},{"version":"1.7.2 13w43a","status":"added","notes":"Added two new types of wood: acacia and dark oak."},{"version":"1","status":"added","notes":"Added top textures of the bark blocks."}],"colors":{"primary":"#3c2f1a","dominant_hex":"#3c341c","average_hex":"#3c2f1a","hue_group":"yellow","lightness":0.1686,"saturation":0.3953,"palette":["#3c341c","#342414","#4c3c1c","#2c2414","#5c442c"],"color_groups":[{"hex":"#3c341c","weight":0.4219,"lightness":0.1725,"saturation":0.3636,"hue_group":"yellow"},{"hex":"#342414","weight":0.293,"lightness":0.1412,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#4c3c1c","weight":0.1641,"lightness":0.2039,"saturation":0.4615,"hue_group":"yellow"},{"hex":"#2c2414","weight":0.0742,"lightness":0.1255,"saturation":0.375,"hue_group":"yellow"},{"hex":"#5c442c","weight":0.0469,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_log.png","family":"dark_oak","relations":[{"type":"variants","target":"minecraft:dark_oak_door","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_door","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_fence","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_fence","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_leaves","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_leaves","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_log","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_log","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_planks","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_planks","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_sapling","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_sapling","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_slab","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_slab","label":"Related set: dark_oak","confidence":0.8},{"type":"variants","target":"minecraft:dark_oak_stairs","label":"Same family: dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_oak_stairs","label":"Related set: dark_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sea_pickle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_log","label":"Palette proche: Dark Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_shelf","label":"Palette proche: Dark Oak Shelf","confidence":0.896},{"type":"color_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Palette proche: Dark Oak Hanging Sign","confidence":0.876},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Palette proche: Dark Oak Wall Hanging Sign","confidence":0.876},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Palette proche: Stripped Dark Oak Log","confidence":0.876},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Palette proche: Stripped Dark Oak Wood","confidence":0.876},{"type":"color_neighbors","target":"minecraft:dark_oak_door","label":"Palette proche: Dark Oak Door","confidence":0.867},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.865},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.865},{"type":"color_neighbors","target":"minecraft:jungle_log","label":"Palette proche: Jungle Log","confidence":0.862},{"type":"color_neighbors","target":"minecraft:jungle_wood","label":"Palette proche: Jungle Wood","confidence":0.862},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.859},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.817},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.782},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.776},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.771},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.761},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.717},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.712},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.712},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.708},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.708},{"type":"color_analogous","target":"minecraft:dark_oak_log","label":"Couleurs analogues: Dark Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_log","label":"Couleurs analogues: Mangrove Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wood","label":"Couleurs analogues: Mangrove Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_shelf","label":"Couleurs analogues: Spruce Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_trapdoor","label":"Couleurs analogues: Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:bookshelf","label":"Couleurs analogues: Bookshelf","confidence":0.959},{"type":"color_analogous","target":"minecraft:oak_shelf","label":"Couleurs analogues: Oak Shelf","confidence":0.948},{"type":"color_analogous","target":"minecraft:crafting_table","label":"Couleurs analogues: Crafting Table","confidence":0.946},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.937},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.904},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.887},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.88},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.872},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.867},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.85},{"type":"color_triad","target":"minecraft:oxidized_copper_bars","label":"Harmonie triadique: Oxidized Copper Bars","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_bars","label":"Harmonie triadique: Waxed Oxidized Copper Bars","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_bulb","label":"Harmonie triadique: Oxidized Copper Bulb","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_bulb","label":"Harmonie triadique: Waxed Oxidized Copper Bulb","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper","label":"Harmonie triadique: Oxidized Cut Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper_slab","label":"Harmonie triadique: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper_stairs","label":"Harmonie triadique: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_cut_copper","label":"Harmonie triadique: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.913},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.906},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.906},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.904},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.9},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.884},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.867},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.815},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.772},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.738},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.725},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.725},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.725},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.725},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.716},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.691}],"category":"building"},{"id":"minecraft:dark_prismarine","name":"Dark Prismarine","entry_type":"block","description":"Dark prismarine is a variant of prismarine that has a dark cyan color with a tight grid pattern. It is one of the building blocks of ocean monuments along with other prismarine variants.","history":[{"version":"1.8 14w25a","status":"added","notes":"Added dark prismarine."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb dark prismarine, providing the football/regular effect to the mob."}],"colors":{"primary":"#345c4c","dominant_hex":"#345444","average_hex":"#345c4c","hue_group":"cyan","lightness":0.2824,"saturation":0.2778,"palette":["#345444","#243c34","#3c6c5c","#3c846c","#34544c","#3c6454"],"color_groups":[{"hex":"#345444","weight":0.2461,"lightness":0.2667,"saturation":0.2353,"hue_group":"cyan"},{"hex":"#243c34","weight":0.2188,"lightness":0.1882,"saturation":0.25,"hue_group":"cyan"},{"hex":"#3c6c5c","weight":0.1836,"lightness":0.3294,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#3c846c","weight":0.168,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#34544c","weight":0.1211,"lightness":0.2667,"saturation":0.2353,"hue_group":"cyan"},{"hex":"#3c6454","weight":0.0625,"lightness":0.3137,"saturation":0.25,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_prismarine.png","family":"dark_prismarine","relations":[{"type":"variants","target":"minecraft:dark_prismarine_slab","label":"Same family: dark_prismarine","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_prismarine_slab","label":"Related set: dark_prismarine","confidence":0.8},{"type":"variants","target":"minecraft:dark_prismarine_stairs","label":"Same family: dark_prismarine","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_prismarine_stairs","label":"Related set: dark_prismarine","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dark_prismarine_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_spawner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vault","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_prismarine_slab","label":"Palette proche: Dark Prismarine Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_prismarine_stairs","label":"Palette proche: Dark Prismarine Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chain","label":"Palette proche: Oxidized Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Palette proche: Waxed Oxidized Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bars","label":"Palette proche: Oxidized Copper Bars","confidence":0.927},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Palette proche: Waxed Oxidized Copper Bars","confidence":0.927},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Palette proche: Oxidized Copper Bulb","confidence":0.907},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Palette proche: Waxed Oxidized Copper Bulb","confidence":0.907},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.862},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.862},{"type":"color_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Palette proche: Oxidized Lightning Rod","confidence":0.85},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Palette proche: Waxed Oxidized Lightning Rod","confidence":0.85},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.886},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.886},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.815},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.815},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.792},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.792},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.782},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.782},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.78},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.78},{"type":"color_analogous","target":"minecraft:dark_prismarine_slab","label":"Couleurs analogues: Dark Prismarine Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_prismarine_stairs","label":"Couleurs analogues: Dark Prismarine Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_bars","label":"Couleurs analogues: Oxidized Copper Bars","confidence":0.947},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bars","label":"Couleurs analogues: Waxed Oxidized Copper Bars","confidence":0.947},{"type":"color_analogous","target":"minecraft:oxidized_copper_bulb","label":"Couleurs analogues: Oxidized Copper Bulb","confidence":0.939},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bulb","label":"Couleurs analogues: Waxed Oxidized Copper Bulb","confidence":0.939},{"type":"color_analogous","target":"minecraft:oxidized_chiseled_copper","label":"Couleurs analogues: Oxidized Chiseled Copper","confidence":0.939},{"type":"color_analogous","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Couleurs analogues: Waxed Oxidized Chiseled Copper","confidence":0.939},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_hanging_sign","label":"Contraste complementaire: Crimson Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_wall_hanging_sign","label":"Contraste complementaire: Crimson Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_crimson_hyphae","label":"Contraste complementaire: Stripped Crimson Hyphae","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_crimson_stem","label":"Contraste complementaire: Stripped Crimson Stem","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_button","label":"Contraste complementaire: Crimson Button","confidence":0.947},{"type":"color_triad","target":"minecraft:mangrove_log","label":"Harmonie triadique: Mangrove Log","confidence":0.96},{"type":"color_triad","target":"minecraft:mangrove_wood","label":"Harmonie triadique: Mangrove Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:bookshelf","label":"Harmonie triadique: Bookshelf","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_log","label":"Harmonie triadique: Oak Log","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_wood","label":"Harmonie triadique: Oak Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:lever","label":"Harmonie triadique: Lever","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_hanging_sign","label":"Harmonie triadique: Spruce Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_wall_hanging_sign","label":"Harmonie triadique: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.96},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.932},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.865},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.649},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.647},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.646},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.646},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.616},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.596},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.596},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.593}],"category":""},{"id":"minecraft:dark_prismarine_slab","name":"Dark Prismarine Slab","entry_type":"block","description":"A dark prismarine slab is a decorative slab variant of dark prismarine that does not generate naturally and is used for building.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added dark prismarine slabs."}],"colors":{"primary":"#345c4c","dominant_hex":"#345444","average_hex":"#345c4c","hue_group":"cyan","lightness":0.2824,"saturation":0.2778,"palette":["#345444","#243c34","#3c6c5c","#3c846c","#34544c","#3c6454"],"color_groups":[{"hex":"#345444","weight":0.2461,"lightness":0.2667,"saturation":0.2353,"hue_group":"cyan"},{"hex":"#243c34","weight":0.2188,"lightness":0.1882,"saturation":0.25,"hue_group":"cyan"},{"hex":"#3c6c5c","weight":0.1836,"lightness":0.3294,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#3c846c","weight":0.168,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#34544c","weight":0.1211,"lightness":0.2667,"saturation":0.2353,"hue_group":"cyan"},{"hex":"#3c6454","weight":0.0625,"lightness":0.3137,"saturation":0.25,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_prismarine.png","family":"dark_prismarine","relations":[{"type":"variants","target":"minecraft:dark_prismarine","label":"Same family: dark_prismarine","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_prismarine","label":"Related set: dark_prismarine","confidence":0.8},{"type":"variants","target":"minecraft:dark_prismarine_stairs","label":"Same family: dark_prismarine","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_prismarine_stairs","label":"Related set: dark_prismarine","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dark_prismarine","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_spawner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vault","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_prismarine","label":"Palette proche: Dark Prismarine","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_prismarine_stairs","label":"Palette proche: Dark Prismarine Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chain","label":"Palette proche: Oxidized Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Palette proche: Waxed Oxidized Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bars","label":"Palette proche: Oxidized Copper Bars","confidence":0.927},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Palette proche: Waxed Oxidized Copper Bars","confidence":0.927},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Palette proche: Oxidized Copper Bulb","confidence":0.907},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Palette proche: Waxed Oxidized Copper Bulb","confidence":0.907},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.862},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.862},{"type":"color_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Palette proche: Oxidized Lightning Rod","confidence":0.85},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Palette proche: Waxed Oxidized Lightning Rod","confidence":0.85},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.886},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.886},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.815},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.815},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.792},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.792},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.782},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.782},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.78},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.78},{"type":"color_analogous","target":"minecraft:dark_prismarine","label":"Couleurs analogues: Dark Prismarine","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_prismarine_stairs","label":"Couleurs analogues: Dark Prismarine Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_bars","label":"Couleurs analogues: Oxidized Copper Bars","confidence":0.947},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bars","label":"Couleurs analogues: Waxed Oxidized Copper Bars","confidence":0.947},{"type":"color_analogous","target":"minecraft:oxidized_copper_bulb","label":"Couleurs analogues: Oxidized Copper Bulb","confidence":0.939},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bulb","label":"Couleurs analogues: Waxed Oxidized Copper Bulb","confidence":0.939},{"type":"color_analogous","target":"minecraft:oxidized_chiseled_copper","label":"Couleurs analogues: Oxidized Chiseled Copper","confidence":0.939},{"type":"color_analogous","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Couleurs analogues: Waxed Oxidized Chiseled Copper","confidence":0.939},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_hanging_sign","label":"Contraste complementaire: Crimson Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_wall_hanging_sign","label":"Contraste complementaire: Crimson Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_crimson_hyphae","label":"Contraste complementaire: Stripped Crimson Hyphae","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_crimson_stem","label":"Contraste complementaire: Stripped Crimson Stem","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_button","label":"Contraste complementaire: Crimson Button","confidence":0.947},{"type":"color_triad","target":"minecraft:mangrove_log","label":"Harmonie triadique: Mangrove Log","confidence":0.96},{"type":"color_triad","target":"minecraft:mangrove_wood","label":"Harmonie triadique: Mangrove Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:bookshelf","label":"Harmonie triadique: Bookshelf","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_log","label":"Harmonie triadique: Oak Log","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_wood","label":"Harmonie triadique: Oak Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:lever","label":"Harmonie triadique: Lever","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_hanging_sign","label":"Harmonie triadique: Spruce Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_wall_hanging_sign","label":"Harmonie triadique: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.96},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.932},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.865},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.649},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.647},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.646},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.646},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.616},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.596},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.596},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.593}],"category":"building"},{"id":"minecraft:dark_prismarine_stairs","name":"Dark Prismarine Stairs","entry_type":"block","description":"Dark prismarine stairs are a decorative stairs variant of dark prismarine that does not generate naturally and is used for building.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added dark prismarine stairs."}],"colors":{"primary":"#345c4c","dominant_hex":"#345444","average_hex":"#345c4c","hue_group":"cyan","lightness":0.2824,"saturation":0.2778,"palette":["#345444","#243c34","#3c6c5c","#3c846c","#34544c","#3c6454"],"color_groups":[{"hex":"#345444","weight":0.2461,"lightness":0.2667,"saturation":0.2353,"hue_group":"cyan"},{"hex":"#243c34","weight":0.2188,"lightness":0.1882,"saturation":0.25,"hue_group":"cyan"},{"hex":"#3c6c5c","weight":0.1836,"lightness":0.3294,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#3c846c","weight":0.168,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#34544c","weight":0.1211,"lightness":0.2667,"saturation":0.2353,"hue_group":"cyan"},{"hex":"#3c6454","weight":0.0625,"lightness":0.3137,"saturation":0.25,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_prismarine.png","family":"dark_prismarine","relations":[{"type":"variants","target":"minecraft:dark_prismarine","label":"Same family: dark_prismarine","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_prismarine","label":"Related set: dark_prismarine","confidence":0.8},{"type":"variants","target":"minecraft:dark_prismarine_slab","label":"Same family: dark_prismarine","confidence":0.75},{"type":"related_sets","target":"minecraft:dark_prismarine_slab","label":"Related set: dark_prismarine","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dark_prismarine","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_spawner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vault","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_prismarine","label":"Palette proche: Dark Prismarine","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_prismarine_slab","label":"Palette proche: Dark Prismarine Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chain","label":"Palette proche: Oxidized Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Palette proche: Waxed Oxidized Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bars","label":"Palette proche: Oxidized Copper Bars","confidence":0.927},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Palette proche: Waxed Oxidized Copper Bars","confidence":0.927},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Palette proche: Oxidized Copper Bulb","confidence":0.907},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Palette proche: Waxed Oxidized Copper Bulb","confidence":0.907},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.862},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.862},{"type":"color_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Palette proche: Oxidized Lightning Rod","confidence":0.85},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Palette proche: Waxed Oxidized Lightning Rod","confidence":0.85},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.886},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.886},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.815},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.815},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.792},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.792},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.782},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.782},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.78},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.78},{"type":"color_analogous","target":"minecraft:dark_prismarine","label":"Couleurs analogues: Dark Prismarine","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_prismarine_slab","label":"Couleurs analogues: Dark Prismarine Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_bars","label":"Couleurs analogues: Oxidized Copper Bars","confidence":0.947},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bars","label":"Couleurs analogues: Waxed Oxidized Copper Bars","confidence":0.947},{"type":"color_analogous","target":"minecraft:oxidized_copper_bulb","label":"Couleurs analogues: Oxidized Copper Bulb","confidence":0.939},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bulb","label":"Couleurs analogues: Waxed Oxidized Copper Bulb","confidence":0.939},{"type":"color_analogous","target":"minecraft:oxidized_chiseled_copper","label":"Couleurs analogues: Oxidized Chiseled Copper","confidence":0.939},{"type":"color_analogous","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Couleurs analogues: Waxed Oxidized Chiseled Copper","confidence":0.939},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_hanging_sign","label":"Contraste complementaire: Crimson Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_wall_hanging_sign","label":"Contraste complementaire: Crimson Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_crimson_hyphae","label":"Contraste complementaire: Stripped Crimson Hyphae","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_crimson_stem","label":"Contraste complementaire: Stripped Crimson Stem","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_button","label":"Contraste complementaire: Crimson Button","confidence":0.947},{"type":"color_triad","target":"minecraft:mangrove_log","label":"Harmonie triadique: Mangrove Log","confidence":0.96},{"type":"color_triad","target":"minecraft:mangrove_wood","label":"Harmonie triadique: Mangrove Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:bookshelf","label":"Harmonie triadique: Bookshelf","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_log","label":"Harmonie triadique: Oak Log","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_wood","label":"Harmonie triadique: Oak Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:lever","label":"Harmonie triadique: Lever","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_hanging_sign","label":"Harmonie triadique: Spruce Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_wall_hanging_sign","label":"Harmonie triadique: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.96},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.932},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.865},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.649},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.647},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.646},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.646},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.616},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.596},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.596},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.593}],"category":"building"},{"id":"minecraft:daylight_detector","name":"Daylight Detector","entry_type":"block","description":"A daylight detector is a block that outputs a redstone signal based on its exposure to sky light. Using the detector inverts it, causing it instead to output a constant strong signal that weakens from exposure to sky light.","history":[{"version":"1.5 13w01a","status":"added","notes":"Added daylight sensors."}],"colors":{"primary":"#83745f","dominant_hex":"#d8c9b4","average_hex":"#83745f","hue_group":"yellow","lightness":0.4431,"saturation":0.1593,"palette":["#d8c9b4","#3c3424","#443c2c","#644c34","#ccb49c","#bcac8c"],"color_groups":[{"hex":"#d8c9b4","weight":0.2812,"lightness":0.7765,"saturation":0.3158,"hue_group":"yellow"},{"hex":"#3c3424","weight":0.2344,"lightness":0.1882,"saturation":0.25,"hue_group":"yellow"},{"hex":"#443c2c","weight":0.2031,"lightness":0.2196,"saturation":0.2143,"hue_group":"yellow"},{"hex":"#644c34","weight":0.1406,"lightness":0.298,"saturation":0.3158,"hue_group":"yellow"},{"hex":"#ccb49c","weight":0.0742,"lightness":0.7059,"saturation":0.32,"hue_group":"yellow"},{"hex":"#bcac8c","weight":0.0664,"lightness":0.6431,"saturation":0.2637,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/daylight_detector_top.png","family":"daylight_detector","relations":[{"type":"visual_neighbors","target":"minecraft:rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:loom","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:conduit","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:conduit","label":"Palette proche: Conduit","confidence":0.849},{"type":"color_neighbors","target":"minecraft:brown_stained_glass","label":"Palette proche: Brown Stained Glass","confidence":0.823},{"type":"color_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Palette proche: Brown Stained Glass Pane","confidence":0.817},{"type":"color_neighbors","target":"minecraft:loom","label":"Palette proche: Loom","confidence":0.802},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.79},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.79},{"type":"color_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Palette proche: Dark Oak Hanging Sign","confidence":0.789},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Palette proche: Dark Oak Wall Hanging Sign","confidence":0.789},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Palette proche: Stripped Dark Oak Log","confidence":0.789},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Palette proche: Stripped Dark Oak Wood","confidence":0.789},{"type":"color_neighbors","target":"minecraft:dark_oak_shelf","label":"Palette proche: Dark Oak Shelf","confidence":0.789},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.785},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par palette: Conduit","confidence":0.86},{"type":"color_bridge","target":"minecraft:brown_stained_glass","label":"Pont de nuance par sous-ton: Brown Stained Glass","confidence":0.854},{"type":"color_bridge","target":"minecraft:brown_stained_glass_pane","label":"Pont de nuance par sous-ton: Brown Stained Glass Pane","confidence":0.849},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par palette: Loom","confidence":0.837},{"type":"color_bridge","target":"minecraft:oak_log","label":"Pont de nuance par sous-ton: Oak Log","confidence":0.827},{"type":"color_bridge","target":"minecraft:oak_wood","label":"Pont de nuance par sous-ton: Oak Wood","confidence":0.827},{"type":"color_bridge","target":"minecraft:dark_oak_hanging_sign","label":"Pont de nuance par sous-ton: Dark Oak Hanging Sign","confidence":0.826},{"type":"color_bridge","target":"minecraft:dark_oak_wall_hanging_sign","label":"Pont de nuance par sous-ton: Dark Oak Wall Hanging Sign","confidence":0.826},{"type":"color_bridge","target":"minecraft:stripped_dark_oak_log","label":"Pont de nuance par sous-ton: Stripped Dark Oak Log","confidence":0.826},{"type":"color_bridge","target":"minecraft:stripped_dark_oak_wood","label":"Pont de nuance par sous-ton: Stripped Dark Oak Wood","confidence":0.826},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55}],"category":""},{"id":"minecraft:dead_brain_coral","name":"Dead Brain Coral","entry_type":"block","description":"A dead coral is the dead variant of coral. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13.1 18w32a","status":"added","notes":"Added dead coral."}],"colors":{"primary":"#867d79","dominant_hex":"#746c64","average_hex":"#867d79","hue_group":"neutral","lightness":0.5,"saturation":0.051,"palette":["#746c64","#847c74","#a4a49c","#7c746c","#8c847c","#9c948c"],"color_groups":[{"hex":"#746c64","weight":0.2946,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#847c74","weight":0.25,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.1964,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"},{"hex":"#7c746c","weight":0.1696,"lightness":0.4549,"saturation":0.069,"hue_group":"neutral"},{"hex":"#8c847c","weight":0.0446,"lightness":0.5176,"saturation":0.065,"hue_group":"neutral"},{"hex":"#9c948c","weight":0.0446,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_brain_coral.png","family":"dead_brain_coral","relations":[{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_fire_coral","label":"Palette proche: Dead Fire Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral","label":"Palette proche: Dead Horn Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_block","label":"Palette proche: Dead Fire Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Palette proche: Dead Bubble Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_wall_fan","label":"Palette proche: Dead Bubble Coral Wall Fan","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_fire_coral","label":"Pont de nuance par palette: Dead Fire Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_wall_fan","label":"Pont de nuance par palette: Dead Horn Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_block","label":"Pont de nuance par palette: Dead Fire Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_fan","label":"Pont de nuance par palette: Dead Brain Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_wall_fan","label":"Pont de nuance par palette: Dead Brain Coral Wall Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_brain_coral_block","name":"Dead Brain Coral Block","entry_type":"block","description":"A dead coral block is a dead variant of a coral block. These blocks are always gray. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w09a","status":"added","notes":"Added dead coral."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb dead coral blocks, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#7c7672","dominant_hex":"#6c6464","average_hex":"#7c7672","hue_group":"neutral","lightness":0.4667,"saturation":0.042,"palette":["#6c6464","#847c74","#9c948c","#746c64","#5c5c5c","#a4a49c"],"color_groups":[{"hex":"#6c6464","weight":0.2305,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#847c74","weight":0.2227,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#9c948c","weight":0.2109,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#746c64","weight":0.1602,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1289,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.0469,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_brain_coral_block.png","family":"dead_brain_coral_block","relations":[{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stonecutter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_instance_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_block","label":"Palette proche: Dead Fire Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_block","label":"Pont de nuance par palette: Dead Tube Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_wall_fan","label":"Pont de nuance par palette: Dead Tube Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_block","label":"Pont de nuance par palette: Dead Fire Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_brain_coral_fan","name":"Dead Brain Coral Fan","entry_type":"block","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 pre8","status":"added","notes":"Added dead coral fans."}],"colors":{"primary":"#857d79","dominant_hex":"#847c74","average_hex":"#857d79","hue_group":"neutral","lightness":0.498,"saturation":0.0472,"palette":["#847c74","#746c64","#9c948c","#a4a49c","#5c5c5c","#948484"],"color_groups":[{"hex":"#847c74","weight":0.2737,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#746c64","weight":0.2421,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#9c948c","weight":0.1684,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.1684,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1263,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#948484","weight":0.0211,"lightness":0.549,"saturation":0.0696,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_brain_coral_fan.png","family":"dead_brain_coral_fan","relations":[{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_brain_coral_wall_fan","label":"Pont de nuance par palette: Dead Brain Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_wall_fan","label":"Pont de nuance par palette: Dead Horn Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_wall_fan","label":"Pont de nuance par palette: Dead Tube Coral Wall Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_brain_coral_wall_fan","name":"Dead Brain Coral Wall Fan","entry_type":"block","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 pre8","status":"added","notes":"Added dead coral fans."}],"colors":{"primary":"#857d79","dominant_hex":"#847c74","average_hex":"#857d79","hue_group":"neutral","lightness":0.498,"saturation":0.0472,"palette":["#847c74","#746c64","#9c948c","#a4a49c","#5c5c5c","#948484"],"color_groups":[{"hex":"#847c74","weight":0.2737,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#746c64","weight":0.2421,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#9c948c","weight":0.1684,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.1684,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1263,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#948484","weight":0.0211,"lightness":0.549,"saturation":0.0696,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_brain_coral_fan.png","family":"dead_brain_coral_wall_fan","relations":[{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_brain_coral_fan","label":"Pont de nuance par palette: Dead Brain Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_wall_fan","label":"Pont de nuance par palette: Dead Horn Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_wall_fan","label":"Pont de nuance par palette: Dead Tube Coral Wall Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_bubble_coral","name":"Dead Bubble Coral","entry_type":"block","description":"A dead coral is the dead variant of coral. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13.1 18w32a","status":"added","notes":"Added dead coral."}],"colors":{"primary":"#857d79","dominant_hex":"#847c74","average_hex":"#857d79","hue_group":"neutral","lightness":0.498,"saturation":0.0472,"palette":["#847c74","#9c948c","#746c64","#5c5c5c","#a4a49c"],"color_groups":[{"hex":"#847c74","weight":0.3083,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#9c948c","weight":0.2632,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#746c64","weight":0.2331,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1128,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.0827,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_bubble_coral.png","family":"dead_bubble_coral","relations":[{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_wall_fan","label":"Pont de nuance par palette: Dead Horn Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_fan","label":"Pont de nuance par palette: Dead Brain Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_wall_fan","label":"Pont de nuance par palette: Dead Brain Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_wall_fan","label":"Pont de nuance par palette: Dead Tube Coral Wall Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_bubble_coral_block","name":"Dead Bubble Coral Block","entry_type":"block","description":"A dead coral block is a dead variant of a coral block. These blocks are always gray. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w09a","status":"added","notes":"Added dead coral."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb dead coral blocks, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#847c77","dominant_hex":"#847c74","average_hex":"#847c77","hue_group":"neutral","lightness":0.4922,"saturation":0.0518,"palette":["#847c74","#746c64","#9c948c","#6c6464","#a4a49c","#5c5c5c"],"color_groups":[{"hex":"#847c74","weight":0.3242,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#746c64","weight":0.2656,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#9c948c","weight":0.2344,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#6c6464","weight":0.0859,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.0625,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0273,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_bubble_coral_block.png","family":"dead_bubble_coral_block","relations":[{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_block","label":"Palette proche: Dead Fire Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_block","label":"Pont de nuance par palette: Dead Tube Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_block","label":"Pont de nuance par palette: Dead Fire Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_wall_fan","label":"Pont de nuance par palette: Dead Tube Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_bubble_coral_fan","name":"Dead Bubble Coral Fan","entry_type":"block","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 pre8","status":"added","notes":"Added dead coral fans."}],"colors":{"primary":"#8d8782","dominant_hex":"#9c948c","average_hex":"#8d8782","hue_group":"neutral","lightness":0.5314,"saturation":0.046,"palette":["#9c948c","#a4a49c","#746c64","#5c5c5c"],"color_groups":[{"hex":"#9c948c","weight":0.3661,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.2768,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"},{"hex":"#746c64","weight":0.2679,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0893,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_bubble_coral_fan.png","family":"dead_bubble_coral_fan","relations":[{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_wall_fan","label":"Palette proche: Dead Bubble Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_wall_fan","label":"Pont de nuance par palette: Dead Bubble Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_wall_fan","label":"Pont de nuance par palette: Dead Tube Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_fan","label":"Pont de nuance par palette: Dead Brain Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_wall_fan","label":"Pont de nuance par palette: Dead Brain Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_bubble_coral_wall_fan","name":"Dead Bubble Coral Wall Fan","entry_type":"block","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 pre8","status":"added","notes":"Added dead coral fans."}],"colors":{"primary":"#8d8782","dominant_hex":"#9c948c","average_hex":"#8d8782","hue_group":"neutral","lightness":0.5314,"saturation":0.046,"palette":["#9c948c","#a4a49c","#746c64","#5c5c5c"],"color_groups":[{"hex":"#9c948c","weight":0.3661,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.2768,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"},{"hex":"#746c64","weight":0.2679,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0893,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_bubble_coral_fan.png","family":"dead_bubble_coral_wall_fan","relations":[{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Palette proche: Dead Bubble Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_fan","label":"Pont de nuance par palette: Dead Bubble Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_wall_fan","label":"Pont de nuance par palette: Dead Tube Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_fan","label":"Pont de nuance par palette: Dead Brain Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_wall_fan","label":"Pont de nuance par palette: Dead Brain Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_bush","name":"Dead Bush","entry_type":"block","description":"A dead bush is a non-solid plant block found in deserts, badlands, swamps and old growth taigas. It can only be obtained with shears, and otherwise drops sticks when broken.","history":[{"version":"1.6","status":"added","notes":"Added dead bushes."}],"colors":{"primary":"#6b4f29","dominant_hex":"#543c24","average_hex":"#6b4f29","hue_group":"yellow","lightness":0.2902,"saturation":0.4459,"palette":["#543c24","#64542c","#94642c","#b47c34"],"color_groups":[{"hex":"#543c24","weight":0.3718,"lightness":0.2353,"saturation":0.4,"hue_group":"yellow"},{"hex":"#64542c","weight":0.3718,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#94642c","weight":0.2179,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"},{"hex":"#b47c34","weight":0.0385,"lightness":0.4549,"saturation":0.5517,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_bush.png","family":"dead_bush","relations":[{"type":"visual_neighbors","target":"minecraft:oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rose_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_dead_bush","label":"Palette proche: Potted Dead Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_shelf","label":"Palette proche: Spruce Shelf","confidence":0.929},{"type":"color_neighbors","target":"minecraft:ladder","label":"Palette proche: Ladder","confidence":0.927},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.897},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.894},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.894},{"type":"color_neighbors","target":"minecraft:stripped_spruce_log","label":"Palette proche: Stripped Spruce Log","confidence":0.894},{"type":"color_neighbors","target":"minecraft:stripped_spruce_wood","label":"Palette proche: Stripped Spruce Wood","confidence":0.894},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.889},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.889},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.882},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.882},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.841},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.818},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.816},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.778},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.759},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.757},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.753},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.753},{"type":"color_analogous","target":"minecraft:potted_dead_bush","label":"Couleurs analogues: Potted Dead Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_trapdoor","label":"Couleurs analogues: Spruce Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_log","label":"Couleurs analogues: Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wood","label":"Couleurs analogues: Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_log","label":"Couleurs analogues: Stripped Spruce Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_wood","label":"Couleurs analogues: Stripped Spruce Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.956},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.939},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.875},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.858},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.825},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.808},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.802},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.793},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.953},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.947},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.934},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.924},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.842},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.655},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.609},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.609},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.609},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.609},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.599},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.574}],"category":""},{"id":"minecraft:dead_fire_coral","name":"Dead Fire Coral","entry_type":"block","description":"A dead coral is the dead variant of coral. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13.1 18w32a","status":"added","notes":"Added dead coral."}],"colors":{"primary":"#89807c","dominant_hex":"#746c64","average_hex":"#89807c","hue_group":"neutral","lightness":0.5118,"saturation":0.0522,"palette":["#746c64","#847c74","#9c948c","#a4a49c"],"color_groups":[{"hex":"#746c64","weight":0.3303,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#847c74","weight":0.2936,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#9c948c","weight":0.2202,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.156,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_fire_coral.png","family":"dead_fire_coral","relations":[{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_brain_coral","label":"Palette proche: Dead Brain Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_block","label":"Palette proche: Dead Fire Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral","label":"Palette proche: Dead Horn Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Palette proche: Dead Bubble Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_wall_fan","label":"Palette proche: Dead Bubble Coral Wall Fan","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_brain_coral","label":"Pont de nuance par palette: Dead Brain Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_wall_fan","label":"Pont de nuance par palette: Dead Horn Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_block","label":"Pont de nuance par palette: Dead Fire Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_fan","label":"Pont de nuance par palette: Dead Brain Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_wall_fan","label":"Pont de nuance par palette: Dead Brain Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.86},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_fire_coral_block","name":"Dead Fire Coral Block","entry_type":"block","description":"A dead coral block is a dead variant of a coral block. These blocks are always gray. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w09a","status":"added","notes":"Added dead coral."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb dead coral blocks, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#847c78","dominant_hex":"#847c74","average_hex":"#847c78","hue_group":"neutral","lightness":0.4941,"saturation":0.0476,"palette":["#847c74","#9c948c","#746c64","#6c6464","#a4a49c"],"color_groups":[{"hex":"#847c74","weight":0.3125,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#9c948c","weight":0.2617,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#746c64","weight":0.1992,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#6c6464","weight":0.1758,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.0508,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_fire_coral_block.png","family":"dead_fire_coral_block","relations":[{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral","label":"Palette proche: Dead Fire Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_block","label":"Pont de nuance par palette: Dead Tube Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_wall_fan","label":"Pont de nuance par palette: Dead Tube Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_wall_fan","label":"Pont de nuance par palette: Dead Horn Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral","label":"Pont de nuance par palette: Dead Fire Coral","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_fire_coral_fan","name":"Dead Fire Coral Fan","entry_type":"block","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 pre8","status":"added","notes":"Added dead coral fans."}],"colors":{"primary":"#7d7673","dominant_hex":"#5c5c5c","average_hex":"#7d7673","hue_group":"neutral","lightness":0.4706,"saturation":0.0417,"palette":["#5c5c5c","#847c74","#9c948c","#746c64","#a4a49c"],"color_groups":[{"hex":"#5c5c5c","weight":0.3238,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#847c74","weight":0.2857,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#9c948c","weight":0.1905,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#746c64","weight":0.1143,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.0857,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_fire_coral_fan.png","family":"dead_fire_coral_fan","relations":[{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_instance_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stonecutter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lodestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_wall_fan","label":"Pont de nuance par palette: Dead Horn Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_fan","label":"Pont de nuance par palette: Dead Brain Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_wall_fan","label":"Pont de nuance par palette: Dead Brain Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_wall_fan","label":"Pont de nuance par palette: Dead Tube Coral Wall Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_fire_coral_wall_fan","name":"Dead Fire Coral Wall Fan","entry_type":"block","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 pre8","status":"added","notes":"Added dead coral fans."}],"colors":{"primary":"#7d7673","dominant_hex":"#5c5c5c","average_hex":"#7d7673","hue_group":"neutral","lightness":0.4706,"saturation":0.0417,"palette":["#5c5c5c","#847c74","#9c948c","#746c64","#a4a49c"],"color_groups":[{"hex":"#5c5c5c","weight":0.3238,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#847c74","weight":0.2857,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#9c948c","weight":0.1905,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#746c64","weight":0.1143,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.0857,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_fire_coral_fan.png","family":"dead_fire_coral_wall_fan","relations":[{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_instance_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stonecutter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lodestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_wall_fan","label":"Pont de nuance par palette: Dead Horn Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_fan","label":"Pont de nuance par palette: Dead Brain Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_wall_fan","label":"Pont de nuance par palette: Dead Brain Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_wall_fan","label":"Pont de nuance par palette: Dead Tube Coral Wall Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_horn_coral","name":"Dead Horn Coral","entry_type":"block","description":"A dead coral is the dead variant of coral. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13.1 18w32a","status":"added","notes":"Added dead coral."}],"colors":{"primary":"#8f8782","dominant_hex":"#9c948c","average_hex":"#8f8782","hue_group":"neutral","lightness":0.5353,"saturation":0.0549,"palette":["#9c948c","#8c847c","#7c746c","#a4a49c","#847c74"],"color_groups":[{"hex":"#9c948c","weight":0.4,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#8c847c","weight":0.25,"lightness":0.5176,"saturation":0.065,"hue_group":"neutral"},{"hex":"#7c746c","weight":0.24,"lightness":0.4549,"saturation":0.069,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.09,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"},{"hex":"#847c74","weight":0.02,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_horn_coral.png","family":"dead_horn_coral","relations":[{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_brain_coral","label":"Palette proche: Dead Brain Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral","label":"Palette proche: Dead Fire Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_block","label":"Palette proche: Dead Fire Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Palette proche: Dead Bubble Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_wall_fan","label":"Palette proche: Dead Bubble Coral Wall Fan","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_brain_coral","label":"Pont de nuance par palette: Dead Brain Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral","label":"Pont de nuance par palette: Dead Fire Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_wall_fan","label":"Pont de nuance par palette: Dead Horn Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_block","label":"Pont de nuance par palette: Dead Fire Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_fan","label":"Pont de nuance par palette: Dead Brain Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_wall_fan","label":"Pont de nuance par palette: Dead Brain Coral Wall Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_horn_coral_block","name":"Dead Horn Coral Block","entry_type":"block","description":"A dead coral block is a dead variant of a coral block. These blocks are always gray. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w09a","status":"added","notes":"Added dead coral."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb dead coral blocks, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#867e7a","dominant_hex":"#746c64","average_hex":"#867e7a","hue_group":"neutral","lightness":0.502,"saturation":0.0472,"palette":["#746c64","#847c74","#a4a49c","#9c948c","#5c5c5c","#6c6464"],"color_groups":[{"hex":"#746c64","weight":0.2773,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#847c74","weight":0.207,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.207,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"},{"hex":"#9c948c","weight":0.1719,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0703,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6464","weight":0.0664,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_horn_coral_block.png","family":"dead_horn_coral_block","relations":[{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_block","label":"Palette proche: Dead Fire Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_block","label":"Pont de nuance par palette: Dead Tube Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_wall_fan","label":"Pont de nuance par palette: Dead Tube Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_block","label":"Pont de nuance par palette: Dead Fire Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_horn_coral_fan","name":"Dead Horn Coral Fan","entry_type":"block","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 pre8","status":"added","notes":"Added dead coral fans."}],"colors":{"primary":"#867e79","dominant_hex":"#847c74","average_hex":"#867e79","hue_group":"neutral","lightness":0.5,"saturation":0.051,"palette":["#847c74","#746c64","#9c948c","#a4a49c","#5c5c5c"],"color_groups":[{"hex":"#847c74","weight":0.3191,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#746c64","weight":0.2766,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#9c948c","weight":0.234,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.1064,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0638,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_horn_coral_fan.png","family":"dead_horn_coral_fan","relations":[{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral","label":"Palette proche: Dead Fire Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_wall_fan","label":"Pont de nuance par palette: Dead Horn Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_fan","label":"Pont de nuance par palette: Dead Brain Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_wall_fan","label":"Pont de nuance par palette: Dead Brain Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral","label":"Pont de nuance par palette: Dead Fire Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_horn_coral_wall_fan","name":"Dead Horn Coral Wall Fan","entry_type":"block","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 pre8","status":"added","notes":"Added dead coral fans."}],"colors":{"primary":"#867e79","dominant_hex":"#847c74","average_hex":"#867e79","hue_group":"neutral","lightness":0.5,"saturation":0.051,"palette":["#847c74","#746c64","#9c948c","#a4a49c","#5c5c5c"],"color_groups":[{"hex":"#847c74","weight":0.3191,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#746c64","weight":0.2766,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#9c948c","weight":0.234,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.1064,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0638,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_horn_coral_fan.png","family":"dead_horn_coral_wall_fan","relations":[{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral","label":"Palette proche: Dead Fire Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_fan","label":"Pont de nuance par palette: Dead Brain Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_wall_fan","label":"Pont de nuance par palette: Dead Brain Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral","label":"Pont de nuance par palette: Dead Fire Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_tube_coral","name":"Dead Tube Coral","entry_type":"block","description":"A dead coral is the dead variant of coral. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13.1 18w32a","status":"added","notes":"Added dead coral."}],"colors":{"primary":"#766f6c","dominant_hex":"#746c64","average_hex":"#766f6c","hue_group":"neutral","lightness":0.4431,"saturation":0.0442,"palette":["#746c64","#5c5c5c","#8c847c","#7c746c","#6c6464","#a4a49c"],"color_groups":[{"hex":"#746c64","weight":0.2484,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.2353,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c847c","weight":0.1765,"lightness":0.5176,"saturation":0.065,"hue_group":"neutral"},{"hex":"#7c746c","weight":0.1373,"lightness":0.4549,"saturation":0.069,"hue_group":"neutral"},{"hex":"#6c6464","weight":0.1176,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.085,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_tube_coral.png","family":"dead_tube_coral","relations":[{"type":"visual_neighbors","target":"minecraft:light_gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stonecutter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_moss_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_moss_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Palette proche: Dead Brain Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_wall_fan","label":"Pont de nuance par palette: Dead Tube Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_block","label":"Pont de nuance par palette: Dead Tube Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_fan","label":"Pont de nuance par palette: Dead Brain Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_wall_fan","label":"Pont de nuance par palette: Dead Brain Coral Wall Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_tube_coral_block","name":"Dead Tube Coral Block","entry_type":"block","description":"A dead coral block is a dead variant of a coral block. These blocks are always gray. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w09a","status":"added","notes":"Added dead coral."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb dead coral blocks, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#827b78","dominant_hex":"#847c74","average_hex":"#827b78","hue_group":"neutral","lightness":0.4902,"saturation":0.04,"palette":["#847c74","#6c6464","#9c948c","#a4a49c","#746c64","#5c5c5c"],"color_groups":[{"hex":"#847c74","weight":0.3633,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#6c6464","weight":0.2344,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#9c948c","weight":0.1758,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.1094,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"},{"hex":"#746c64","weight":0.0742,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.043,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_tube_coral_block.png","family":"dead_tube_coral_block","relations":[{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_instance_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_block","label":"Palette proche: Dead Fire Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Palette proche: Dead Brain Coral Fan","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_block","label":"Pont de nuance par palette: Dead Fire Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_wall_fan","label":"Pont de nuance par palette: Dead Tube Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_tube_coral_fan","name":"Dead Tube Coral Fan","entry_type":"block","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 pre8","status":"added","notes":"Added dead coral fans."}],"colors":{"primary":"#807a76","dominant_hex":"#9c948c","average_hex":"#807a76","hue_group":"neutral","lightness":0.4824,"saturation":0.0407,"palette":["#9c948c","#746c64","#6c6464","#a4a49c","#5c5c5c","#867e76"],"color_groups":[{"hex":"#9c948c","weight":0.2658,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#746c64","weight":0.2532,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#6c6464","weight":0.1772,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.1266,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1139,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#867e76","weight":0.0633,"lightness":0.4941,"saturation":0.0635,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_tube_coral_fan.png","family":"dead_tube_coral_fan","relations":[{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_instance_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Palette proche: Dead Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_block","label":"Palette proche: Dead Fire Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Palette proche: Dead Bubble Coral Fan","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_tube_coral_wall_fan","label":"Pont de nuance par palette: Dead Tube Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_block","label":"Pont de nuance par palette: Dead Tube Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_block","label":"Pont de nuance par palette: Dead Fire Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55}],"category":"natural"},{"id":"minecraft:dead_tube_coral_wall_fan","name":"Dead Tube Coral Wall Fan","entry_type":"block","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 pre8","status":"added","notes":"Added dead coral fans."}],"colors":{"primary":"#807a76","dominant_hex":"#9c948c","average_hex":"#807a76","hue_group":"neutral","lightness":0.4824,"saturation":0.0407,"palette":["#9c948c","#746c64","#6c6464","#a4a49c","#5c5c5c","#867e76"],"color_groups":[{"hex":"#9c948c","weight":0.2658,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#746c64","weight":0.2532,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#6c6464","weight":0.1772,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.1266,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1139,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#867e76","weight":0.0633,"lightness":0.4941,"saturation":0.0635,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_tube_coral_fan.png","family":"dead_tube_coral_wall_fan","relations":[{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_instance_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Palette proche: Dead Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_block","label":"Palette proche: Dead Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_block","label":"Palette proche: Dead Fire Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral","label":"Palette proche: Dead Bubble Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Palette proche: Dead Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Palette proche: Dead Bubble Coral Fan","confidence":0.94},{"type":"color_bridge","target":"minecraft:dead_tube_coral_fan","label":"Pont de nuance par palette: Dead Tube Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_block","label":"Pont de nuance par palette: Dead Horn Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_block","label":"Pont de nuance par palette: Dead Tube Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_block","label":"Pont de nuance par palette: Dead Fire Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral","label":"Pont de nuance par palette: Dead Bubble Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_fan","label":"Pont de nuance par palette: Dead Fire Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_fire_coral_wall_fan","label":"Pont de nuance par palette: Dead Fire Coral Wall Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_horn_coral_fan","label":"Pont de nuance par palette: Dead Horn Coral Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55}],"category":"natural"},{"id":"minecraft:debug_stick","name":"Debug Stick","entry_type":"item","description":"The debug stick is an item used to edit the block states of blocks. It is visually identical to a regular stick, but with a glint (as if enchanted).","history":[{"version":"1.13 17w47a","status":"added","notes":"Added debug sticks."},{"version":"1.16 20w10a","status":"added","notes":"added hitbox."}],"colors":{"primary":"#4c3916","dominant_hex":"#2c1c0c","average_hex":"#4c3916","hue_group":"yellow","lightness":0.1922,"saturation":0.551,"palette":["#2c1c0c","#4c3414","#8c6424","#6c4c1c"],"color_groups":[{"hex":"#2c1c0c","weight":0.3784,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.3243,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#8c6424","weight":0.1892,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"},{"hex":"#6c4c1c","weight":0.1081,"lightness":0.2667,"saturation":0.5882,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/stick.png","family":"debug_stick","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:decorated_pot","name":"Decorated Pot","entry_type":"block","description":"A decorated pot is a storage block crafted from bricks and/or pottery sherds, with the items used individually affecting the appearance of its four side faces. It can store a single inventory slot's worth of items, which cannot be seen or retrieved by hand without breaking the pot.","history":[{"version":"1.19.4","status":"added","notes":"Added decorated pots."},{"version":"16 new side textures correspondi","status":"added","notes":"Added 16 new side textures corresponding to the 16 new pottery sherds."}],"colors":{"primary":"#985e44","dominant_hex":"#945c44","average_hex":"#985e44","hue_group":"red","lightness":0.4314,"saturation":0.3818,"palette":["#945c44","#9c5c44","#9c6444"],"color_groups":[{"hex":"#945c44","weight":0.4141,"lightness":0.4235,"saturation":0.3704,"hue_group":"red"},{"hex":"#9c5c44","weight":0.3672,"lightness":0.4392,"saturation":0.3929,"hue_group":"red"},{"hex":"#9c6444","weight":0.2188,"lightness":0.4392,"saturation":0.3929,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/terracotta.png","family":"decorated_pot","relations":[{"type":"visual_neighbors","target":"minecraft:terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:farmland","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:terracotta","label":"Palette proche: Terracotta","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chain","label":"Palette proche: Copper Chain","confidence":0.901},{"type":"color_neighbors","target":"minecraft:waxed_copper_chain","label":"Palette proche: Waxed Copper Chain","confidence":0.901},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.889},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.889},{"type":"color_neighbors","target":"minecraft:stripped_acacia_log","label":"Palette proche: Stripped Acacia Log","confidence":0.889},{"type":"color_neighbors","target":"minecraft:stripped_acacia_wood","label":"Palette proche: Stripped Acacia Wood","confidence":0.889},{"type":"color_neighbors","target":"minecraft:brick_slab","label":"Palette proche: Brick Slab","confidence":0.881},{"type":"color_neighbors","target":"minecraft:brick_stairs","label":"Palette proche: Brick Stairs","confidence":0.881},{"type":"color_neighbors","target":"minecraft:brick_wall","label":"Palette proche: Brick Wall","confidence":0.881},{"type":"color_neighbors","target":"minecraft:bricks","label":"Palette proche: Bricks","confidence":0.881},{"type":"color_neighbors","target":"minecraft:copper_bars","label":"Palette proche: Copper Bars","confidence":0.878},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.848},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.845},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.844},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.815},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.815},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.813},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.813},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.811},{"type":"color_analogous","target":"minecraft:terracotta","label":"Couleurs analogues: Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_bulb","label":"Couleurs analogues: Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_bulb","label":"Couleurs analogues: Waxed Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_door","label":"Couleurs analogues: Acacia Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_shelf","label":"Couleurs analogues: Acacia Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_hanging_sign","label":"Couleurs analogues: Acacia Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_hanging_sign","label":"Couleurs analogues: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_acacia_log","label":"Couleurs analogues: Stripped Acacia Log","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.956},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.943},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.939},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.897},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.894},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.88},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.88},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.86},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.944},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.944},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.944},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.944},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.923},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.922},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.918},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.892},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.959},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.863},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.863},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.852},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.832},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.819},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":""},{"id":"minecraft:deepslate","name":"Deepslate","entry_type":"block","description":"Deepslate is a stone type found deep underground in the Overworld that functions similarly to regular stone, but takes significantly longer to mine.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added grimstone."},{"version":"21w08a","status":"added","notes":"Added top texture."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb deepslate, providing the football/regular effect to the mob."}],"colors":{"primary":"#505053","dominant_hex":"#545454","average_hex":"#505053","hue_group":"neutral","lightness":0.3196,"saturation":0.0184,"palette":["#545454","#3c3c44","#646464","#2c2c34","#7c7c7c"],"color_groups":[{"hex":"#545454","weight":0.3047,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.2734,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#646464","weight":0.2266,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c34","weight":0.1016,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.0938,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate.png","family":"deepslate","relations":[{"type":"visual_neighbors","target":"minecraft:infested_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blast_furnace","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bedrock","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_deepslate","label":"Palette proche: Infested Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_coal_ore","label":"Palette proche: Deepslate Coal Ore","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_bridge","target":"minecraft:infested_deepslate","label":"Pont de nuance par palette: Infested Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_coal_ore","label":"Pont de nuance par palette: Deepslate Coal Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.627},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.604},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.603},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.603},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.594},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.571},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.567},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.567}],"category":""},{"id":"minecraft:deepslate_brick_slab","name":"Deepslate Brick Slab","entry_type":"block","description":"A deepslate brick slab is a decorative slab variant of deepslate bricks that generates in ancient cities and is used for building.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added grimstone brick slabs."}],"colors":{"primary":"#474747","dominant_hex":"#5c5c5c","average_hex":"#474747","hue_group":"neutral","lightness":0.2784,"saturation":0.0,"palette":["#5c5c5c","#282828","#3c3434","#444444","#4c4c4c","#6c6c6c"],"color_groups":[{"hex":"#5c5c5c","weight":0.2617,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#282828","weight":0.1914,"lightness":0.1569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.1797,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#444444","weight":0.1328,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1211,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1133,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_bricks.png","family":"deepslate_brick","relations":[{"type":"variants","target":"minecraft:deepslate_brick_stairs","label":"Same family: deepslate_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:deepslate_brick_stairs","label":"Related set: deepslate_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.94},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.685},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.651},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.629},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.624},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.624},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.624},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.624},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.624}],"category":"building"},{"id":"minecraft:deepslate_brick_stairs","name":"Deepslate Brick Stairs","entry_type":"block","description":"Deepslate brick stairs are a decorative stairs variant of deepslate bricks that generates in ancient cities and is used for building.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added grimstone brick stairs."}],"colors":{"primary":"#474747","dominant_hex":"#5c5c5c","average_hex":"#474747","hue_group":"neutral","lightness":0.2784,"saturation":0.0,"palette":["#5c5c5c","#282828","#3c3434","#444444","#4c4c4c","#6c6c6c"],"color_groups":[{"hex":"#5c5c5c","weight":0.2617,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#282828","weight":0.1914,"lightness":0.1569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.1797,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#444444","weight":0.1328,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1211,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1133,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_bricks.png","family":"deepslate_brick","relations":[{"type":"variants","target":"minecraft:deepslate_brick_slab","label":"Same family: deepslate_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:deepslate_brick_slab","label":"Related set: deepslate_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.94},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.685},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.651},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.629},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.624},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.624},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.624},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.624},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.624}],"category":"building"},{"id":"minecraft:deepslate_brick_wall","name":"Deepslate Brick Wall","entry_type":"block","description":"A deepslate brick wall is a decorative wall variant of deepslate bricks that generates in ancient cities and is used for building.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added grimstone brick walls."}],"colors":{"primary":"#474747","dominant_hex":"#5c5c5c","average_hex":"#474747","hue_group":"neutral","lightness":0.2784,"saturation":0.0,"palette":["#5c5c5c","#282828","#3c3434","#444444","#4c4c4c","#6c6c6c"],"color_groups":[{"hex":"#5c5c5c","weight":0.2617,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#282828","weight":0.1914,"lightness":0.1569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.1797,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#444444","weight":0.1328,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1211,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1133,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_bricks.png","family":"deepslate_brick_wall","relations":[{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.94},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.685},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.651},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.629},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.624},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.624},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.624},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.624},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.624}],"category":"building"},{"id":"minecraft:deepslate_bricks","name":"Deepslate Bricks","entry_type":"block","description":"Deepslate bricks are the brick version of deepslate.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added deepslate bricks, then known as grimstone bricks. At the time, they were only obtainable from the Creative inventory."},{"version":"21w10a","status":"added","notes":"Added the crafting recipe for deepslate bricks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb deepslate bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#474747","dominant_hex":"#5c5c5c","average_hex":"#474747","hue_group":"neutral","lightness":0.2784,"saturation":0.0,"palette":["#5c5c5c","#282828","#3c3434","#444444","#4c4c4c","#6c6c6c"],"color_groups":[{"hex":"#5c5c5c","weight":0.2617,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#282828","weight":0.1914,"lightness":0.1569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.1797,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#444444","weight":0.1328,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1211,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1133,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_bricks.png","family":"deepslate_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.94},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.685},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.651},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.629},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.624},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.624},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.624},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.624},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.624}],"category":"building"},{"id":"minecraft:deepslate_coal_ore","name":"Deepslate Coal Ore","entry_type":"block","description":"Coal ore is a mineral block that drops coal when mined. Deepslate coal ore is a variant of coal ore that rarely generates at the top of the deepslate layer.","history":[{"version":"0.0.14a","status":"added","notes":"Added coal ore."},{"version":"21w10a","status":"added","notes":"Added deepslate variant of coal ore."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb coal ore, providing the football/regular effect to the mob."}],"colors":{"primary":"#4a4a4c","dominant_hex":"#545454","average_hex":"#4a4a4c","hue_group":"neutral","lightness":0.2941,"saturation":0.0133,"palette":["#545454","#646464","#2c2c31","#3e3e43","#7c7c7c","#121212"],"color_groups":[{"hex":"#545454","weight":0.2148,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#646464","weight":0.2109,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c31","weight":0.1875,"lightness":0.1824,"saturation":0.0538,"hue_group":"neutral"},{"hex":"#3e3e43","weight":0.1719,"lightness":0.2529,"saturation":0.0388,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.125,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#121212","weight":0.0898,"lightness":0.0706,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_coal_ore.png","family":"deepslate_coal_ore","relations":[{"type":"visual_neighbors","target":"minecraft:hopper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_deepslate","label":"Palette proche: Infested Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_bridge","target":"minecraft:deepslate","label":"Pont de nuance par palette: Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_deepslate","label":"Pont de nuance par palette: Infested Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.652},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.628},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.627},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.627},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.618},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.596},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.591},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.591}],"category":"resource"},{"id":"minecraft:deepslate_copper_ore","name":"Deepslate Copper Ore","entry_type":"block","description":"Copper ore is an ore block found underground. Deepslate copper ore is the deepslate variant of copper ore, usually found deeper underground.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added copper ore."},{"version":"21w10a","status":"added","notes":"Added deepslate variant of copper ore."},{"version":"wiki-history","status":"added","notes":"Added copper_ores block tag ."}],"colors":{"primary":"#5c5d59","dominant_hex":"#907a6d","average_hex":"#5c5d59","hue_group":"neutral","lightness":0.3569,"saturation":0.022,"palette":["#907a6d","#535554","#3c3c44","#646464","#478976","#2c2c34"],"color_groups":[{"hex":"#907a6d","weight":0.2617,"lightness":0.4961,"saturation":0.1383,"hue_group":"red"},{"hex":"#535554","weight":0.2109,"lightness":0.3294,"saturation":0.0119,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.1836,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#646464","weight":0.168,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#478976","weight":0.0898,"lightness":0.4078,"saturation":0.3173,"hue_group":"cyan"},{"hex":"#2c2c34","weight":0.0859,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_copper_ore.png","family":"deepslate_copper_ore","relations":[{"type":"visual_neighbors","target":"minecraft:polished_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dropper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bedrock","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dispenser","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.881},{"type":"color_neighbors","target":"minecraft:infested_deepslate","label":"Palette proche: Infested Deepslate","confidence":0.881},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.865},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.865},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.865},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.865},{"type":"color_neighbors","target":"minecraft:deepslate_coal_ore","label":"Palette proche: Deepslate Coal Ore","confidence":0.86},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.853},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.853},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.853},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.853},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.852},{"type":"color_bridge","target":"minecraft:deepslate","label":"Pont de nuance par palette: Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_deepslate","label":"Pont de nuance par palette: Infested Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_coal_ore","label":"Pont de nuance par palette: Deepslate Coal Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.598},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.565},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.562},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.561},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.561},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55}],"category":"building"},{"id":"minecraft:deepslate_diamond_ore","name":"Deepslate Diamond Ore","entry_type":"block","description":"Diamond ore is a rare ore that generates deep underground, and drops diamonds when mined. Deepslate diamond ore is a variant of diamond ore that can generate in deepslate and tuff blobs, and is more common than its regular variant.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added diamond ore. Initially, it was referred to as \"emerald ore\"."},{"version":"21w08a","status":"added","notes":"Added the deepslate diamond ore, which take place of diamond ores that generate in deepslate."},{"version":"wiki-history","status":"added","notes":"Added diamond_ores block tag ."}],"colors":{"primary":"#536a6b","dominant_hex":"#608483","average_hex":"#536a6b","hue_group":"cyan","lightness":0.3725,"saturation":0.1263,"palette":["#608483","#545454","#383840","#646464","#65e3da","#344444"],"color_groups":[{"hex":"#608483","weight":0.2578,"lightness":0.4471,"saturation":0.1579,"hue_group":"cyan"},{"hex":"#545454","weight":0.2148,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#383840","weight":0.2031,"lightness":0.2353,"saturation":0.0667,"hue_group":"neutral"},{"hex":"#646464","weight":0.1641,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#65e3da","weight":0.1055,"lightness":0.6431,"saturation":0.6923,"hue_group":"cyan"},{"hex":"#344444","weight":0.0547,"lightness":0.2353,"saturation":0.1333,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_diamond_ore.png","family":"deepslate_diamond_ore","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_spawner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vault","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.849},{"type":"color_neighbors","target":"minecraft:infested_deepslate","label":"Palette proche: Infested Deepslate","confidence":0.849},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.843},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.841},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.841},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.841},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.841},{"type":"color_neighbors","target":"minecraft:basalt","label":"Palette proche: Basalt","confidence":0.838},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.837},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.835},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.835},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.835},{"type":"color_bridge","target":"minecraft:deepslate","label":"Pont de nuance par palette: Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_deepslate","label":"Pont de nuance par palette: Infested Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:basalt","label":"Pont de nuance par palette: Basalt","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_basalt","label":"Pont de nuance par palette: Smooth Basalt","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.566},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.565},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.564},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.564},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55}],"category":"resource"},{"id":"minecraft:deepslate_emerald_ore","name":"Deepslate Emerald Ore","entry_type":"block","description":"Emerald ore is a rare mineral block that generates only in mountains and windswept hills biomes. It drops emeralds when mined, or itself if mined with a pickaxe with the Silk Touch enchantment. Deepslate emerald ore is a very rare variant of emerald ore that can generate in deepslate and tuff blobs.","history":[{"version":"1.3.1 12w21a","status":"added","notes":"Added emerald ore."},{"version":"21w10a","status":"added","notes":"Added deepslate variant of emerald ore, which does not generate naturally."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb emerald ore, providing the football/regular effect to the mob."}],"colors":{"primary":"#4e6858","dominant_hex":"#819d8c","average_hex":"#4e6858","hue_group":"green","lightness":0.3569,"saturation":0.1429,"palette":["#819d8c","#3b4043","#646464","#545454","#10aa3b","#2c2c34"],"color_groups":[{"hex":"#819d8c","weight":0.207,"lightness":0.5608,"saturation":0.125,"hue_group":"green"},{"hex":"#3b4043","weight":0.1992,"lightness":0.2471,"saturation":0.0635,"hue_group":"neutral"},{"hex":"#646464","weight":0.1914,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1797,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#10aa3b","weight":0.125,"lightness":0.3647,"saturation":0.828,"hue_group":"green"},{"hex":"#2c2c34","weight":0.0977,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_emerald_ore.png","family":"deepslate_emerald_ore","relations":[{"type":"visual_neighbors","target":"minecraft:potted_warped_fungus","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal_frame","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_plant","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:emerald_ore","label":"Palette proche: Emerald Ore","confidence":0.851},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.831},{"type":"color_neighbors","target":"minecraft:infested_deepslate","label":"Palette proche: Infested Deepslate","confidence":0.831},{"type":"color_neighbors","target":"minecraft:deepslate_diamond_ore","label":"Palette proche: Deepslate Diamond Ore","confidence":0.827},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.818},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.818},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.818},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.818},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.814},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.811},{"type":"color_neighbors","target":"minecraft:deepslate_coal_ore","label":"Palette proche: Deepslate Coal Ore","confidence":0.811},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.81},{"type":"color_bridge","target":"minecraft:emerald_ore","label":"Pont de nuance par palette: Emerald Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate","label":"Pont de nuance par palette: Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_deepslate","label":"Pont de nuance par palette: Infested Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par palette: Deepslate Diamond Ore","confidence":0.857},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.85},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.85},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.85},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.85},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.846},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.845},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.585},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.576},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.575},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.575},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.551},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55}],"category":"resource"},{"id":"minecraft:deepslate_gold_ore","name":"Deepslate Gold Ore","entry_type":"block","description":"Gold ore is a rare mineral block found underground that drops raw gold when mined with an iron pickaxe or better. Deepslate gold ore is a variant of gold ore that can generate in deepslate and tuff.","history":[{"version":"0.0.14a","status":"added","notes":"Added gold ore."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb gold ore, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#73674e","dominant_hex":"#ce9522","average_hex":"#73674e","hue_group":"yellow","lightness":0.3784,"saturation":0.1917,"palette":["#ce9522","#84847f","#545454","#646464","#3c3c44","#2c2c34"],"color_groups":[{"hex":"#ce9522","weight":0.2188,"lightness":0.4706,"saturation":0.7167,"hue_group":"yellow"},{"hex":"#84847f","weight":0.1992,"lightness":0.5078,"saturation":0.0199,"hue_group":"neutral"},{"hex":"#545454","weight":0.1914,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#646464","weight":0.1641,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.1406,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#2c2c34","weight":0.0859,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_gold_ore.png","family":"deepslate_gold_ore","relations":[{"type":"visual_neighbors","target":"minecraft:copper_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_flowering_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lever","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:daylight_detector","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:loom","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.895},{"type":"color_neighbors","target":"minecraft:infested_deepslate","label":"Palette proche: Infested Deepslate","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.873},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.873},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.873},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.873},{"type":"color_neighbors","target":"minecraft:deepslate_coal_ore","label":"Palette proche: Deepslate Coal Ore","confidence":0.873},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.87},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.863},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.863},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.863},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.863},{"type":"color_bridge","target":"minecraft:deepslate","label":"Pont de nuance par palette: Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_deepslate","label":"Pont de nuance par palette: Infested Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_coal_ore","label":"Pont de nuance par palette: Deepslate Coal Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.578},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:suspicious_sand","label":"Contraste clair sombre: Suspicious Sand","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone","label":"Contraste clair sombre: Cut Sandstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55}],"category":"resource"},{"id":"minecraft:deepslate_iron_ore","name":"Deepslate Iron Ore","entry_type":"block","description":"Iron ore is a mineral block typically found underground. It is a source of raw iron, which can be smelted into iron ingots. Deepslate iron ore is the deepslate variant of iron ore. It is found in deepslate layers.","history":[{"version":"0.0.14a","status":"added","notes":"Added iron ore."},{"version":"21w08a","status":"added","notes":"Added deepslate iron ore."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb iron ore, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#6b645f","dominant_hex":"#383840","average_hex":"#6b645f","hue_group":"neutral","lightness":0.3961,"saturation":0.0594,"palette":["#383840","#676460","#545454","#7c7c7c","#c29c84","#8c7454"],"color_groups":[{"hex":"#383840","weight":0.2383,"lightness":0.2353,"saturation":0.0667,"hue_group":"neutral"},{"hex":"#676460","weight":0.1953,"lightness":0.3902,"saturation":0.0352,"hue_group":"neutral"},{"hex":"#545454","weight":0.1758,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1758,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c29c84","weight":0.1406,"lightness":0.6392,"saturation":0.337,"hue_group":"red"},{"hex":"#8c7454","weight":0.0742,"lightness":0.4392,"saturation":0.25,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_iron_ore.png","family":"deepslate_iron_ore","relations":[{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.919},{"type":"color_neighbors","target":"minecraft:infested_deepslate","label":"Palette proche: Infested Deepslate","confidence":0.919},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.913},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.913},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.913},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.913},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.904},{"type":"color_neighbors","target":"minecraft:deepslate_coal_ore","label":"Palette proche: Deepslate Coal Ore","confidence":0.899},{"type":"color_neighbors","target":"minecraft:polished_basalt","label":"Palette proche: Polished Basalt","confidence":0.897},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.894},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.893},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.893},{"type":"color_bridge","target":"minecraft:deepslate","label":"Pont de nuance par palette: Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_deepslate","label":"Pont de nuance par palette: Infested Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_coal_ore","label":"Pont de nuance par palette: Deepslate Coal Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_basalt","label":"Pont de nuance par palette: Polished Basalt","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.568},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55}],"category":"resource"},{"id":"minecraft:deepslate_lapis_ore","name":"Deepslate Lapis Ore","entry_type":"block","description":"Lapis lazuli ore, internally known as lapis ore, is the ore block from which lapis lazuli is obtained. Deepslate lapis lazuli ore, internally known as deepslate lapis ore, is a variant of lapis lazuli ore that generates in deepslate layers.","history":[{"version":"1.2","status":"added","notes":"Added lapis lazuli ore."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb lapis lazuli ore, providing the football/regular effect to the mob."}],"colors":{"primary":"#505b73","dominant_hex":"#646464","average_hex":"#505b73","hue_group":"blue","lightness":0.3824,"saturation":0.1795,"palette":["#646464","#303f5c","#545454","#7c7c7c","#3661cf","#2c2c34"],"color_groups":[{"hex":"#646464","weight":0.2109,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#303f5c","weight":0.1914,"lightness":0.2745,"saturation":0.3143,"hue_group":"blue"},{"hex":"#545454","weight":0.1914,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1914,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3661cf","weight":0.1719,"lightness":0.5118,"saturation":0.6145,"hue_group":"blue"},{"hex":"#2c2c34","weight":0.043,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_lapis_ore.png","family":"deepslate_lapis_ore","relations":[{"type":"visual_neighbors","target":"minecraft:blue_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chain","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_hyphae","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stem","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spawner","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeating_command_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.894},{"type":"color_neighbors","target":"minecraft:infested_deepslate","label":"Palette proche: Infested Deepslate","confidence":0.894},{"type":"color_neighbors","target":"minecraft:polished_basalt","label":"Palette proche: Polished Basalt","confidence":0.889},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.879},{"type":"color_neighbors","target":"minecraft:deepslate_coal_ore","label":"Palette proche: Deepslate Coal Ore","confidence":0.877},{"type":"color_neighbors","target":"minecraft:basalt","label":"Palette proche: Basalt","confidence":0.874},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.874},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.874},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.874},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.874},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.872},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.872},{"type":"color_bridge","target":"minecraft:deepslate","label":"Pont de nuance par palette: Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_deepslate","label":"Pont de nuance par palette: Infested Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_basalt","label":"Pont de nuance par palette: Polished Basalt","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_basalt","label":"Pont de nuance par palette: Smooth Basalt","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_coal_ore","label":"Pont de nuance par palette: Deepslate Coal Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:basalt","label":"Pont de nuance par palette: Basalt","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.56},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.552},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.551},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.551},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_stairs","label":"Contraste clair sombre: Polished Diorite Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55}],"category":"resource"},{"id":"minecraft:deepslate_redstone_ore","name":"Deepslate Redstone Ore","entry_type":"block","description":"Redstone ore is the ore block from which redstone is obtained. Deepslate redstone ore is a variant of redstone ore that can generate in deepslate and tuff blobs.","history":[{"version":"v1.0.1","status":"added","notes":"Added redstone ore in Seecret Friday Update 3 ."},{"version":"21w08a","status":"added","notes":"Added deepslate redstone ore."},{"version":"wiki-history","status":"added","notes":"Added redstone_ores block tag ."}],"colors":{"primary":"#69494b","dominant_hex":"#3b363d","average_hex":"#69494b","hue_group":"red","lightness":0.349,"saturation":0.1798,"palette":["#3b363d","#6c6262","#545454","#8c7e7e","#ac0404","#f82c2c"],"color_groups":[{"hex":"#3b363d","weight":0.3047,"lightness":0.2255,"saturation":0.0609,"hue_group":"neutral"},{"hex":"#6c6262","weight":0.2578,"lightness":0.4039,"saturation":0.0485,"hue_group":"neutral"},{"hex":"#545454","weight":0.2031,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c7e7e","weight":0.0938,"lightness":0.5216,"saturation":0.0574,"hue_group":"neutral"},{"hex":"#ac0404","weight":0.0781,"lightness":0.3451,"saturation":0.9545,"hue_group":"red"},{"hex":"#f82c2c","weight":0.0625,"lightness":0.5725,"saturation":0.9358,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_redstone_ore.png","family":"deepslate_redstone_ore","relations":[{"type":"visual_neighbors","target":"minecraft:activator_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewing_stand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pointed_dripstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:detector_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dripstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.866},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.864},{"type":"color_neighbors","target":"minecraft:infested_deepslate","label":"Palette proche: Infested Deepslate","confidence":0.864},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.86},{"type":"color_neighbors","target":"minecraft:pale_oak_log","label":"Palette proche: Pale Oak Log","confidence":0.857},{"type":"color_neighbors","target":"minecraft:pale_oak_wood","label":"Palette proche: Pale Oak Wood","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.856},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.856},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.856},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.856},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.856},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.856},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate","label":"Pont de nuance par palette: Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_deepslate","label":"Pont de nuance par palette: Infested Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.612},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.578},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.563},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.562},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.562},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.561},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.561},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.561}],"category":"redstone"},{"id":"minecraft:deepslate_tile_slab","name":"Deepslate Tile Slab","entry_type":"block","description":"A deepslate tile slab is a decorative slab variant of deepslate tiles that generates in ancient cities and is used for building.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added grimstone tile slabs."}],"colors":{"primary":"#373737","dominant_hex":"#2c2c2c","average_hex":"#373737","hue_group":"neutral","lightness":0.2157,"saturation":0.0,"palette":["#2c2c2c","#3c3434","#444444","#242424","#4c4c4c","#5c5c5c"],"color_groups":[{"hex":"#2c2c2c","weight":0.2578,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.2031,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#444444","weight":0.1992,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.1875,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.0898,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0625,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_tiles.png","family":"deepslate_tile","relations":[{"type":"variants","target":"minecraft:deepslate_tile_stairs","label":"Same family: deepslate_tile","confidence":0.75},{"type":"related_sets","target":"minecraft:deepslate_tile_stairs","label":"Related set: deepslate_tile","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Palette proche: Cracked Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_bricks","label":"Pont de nuance par palette: Cracked Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.744},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.711},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.688},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.684},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.683},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.683},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.683},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.683}],"category":"building"},{"id":"minecraft:deepslate_tile_stairs","name":"Deepslate Tile Stairs","entry_type":"block","description":"Deepslate tile stairs are a decorative stairs variant of deepslate tiles that generates in ancient cities and is used for building.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added grimstone tile stairs."}],"colors":{"primary":"#373737","dominant_hex":"#2c2c2c","average_hex":"#373737","hue_group":"neutral","lightness":0.2157,"saturation":0.0,"palette":["#2c2c2c","#3c3434","#444444","#242424","#4c4c4c","#5c5c5c"],"color_groups":[{"hex":"#2c2c2c","weight":0.2578,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.2031,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#444444","weight":0.1992,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.1875,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.0898,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0625,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_tiles.png","family":"deepslate_tile","relations":[{"type":"variants","target":"minecraft:deepslate_tile_slab","label":"Same family: deepslate_tile","confidence":0.75},{"type":"related_sets","target":"minecraft:deepslate_tile_slab","label":"Related set: deepslate_tile","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Palette proche: Cracked Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_bricks","label":"Pont de nuance par palette: Cracked Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.744},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.711},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.688},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.684},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.683},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.683},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.683},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.683}],"category":"building"},{"id":"minecraft:deepslate_tile_wall","name":"Deepslate Tile Wall","entry_type":"block","description":"A deepslate tile wall is a decorative wall variant of deepslate tiles that generates in ancient cities and is used for building.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added grimstone tile walls."}],"colors":{"primary":"#373737","dominant_hex":"#2c2c2c","average_hex":"#373737","hue_group":"neutral","lightness":0.2157,"saturation":0.0,"palette":["#2c2c2c","#3c3434","#444444","#242424","#4c4c4c","#5c5c5c"],"color_groups":[{"hex":"#2c2c2c","weight":0.2578,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.2031,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#444444","weight":0.1992,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.1875,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.0898,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0625,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_tiles.png","family":"deepslate_tile_wall","relations":[{"type":"visual_neighbors","target":"minecraft:deepslate_tile_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Palette proche: Cracked Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_bricks","label":"Pont de nuance par palette: Cracked Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.744},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.711},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.688},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.684},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.683},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.683},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.683},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.683}],"category":"building"},{"id":"minecraft:deepslate_tiles","name":"Deepslate Tiles","entry_type":"block","description":"Deepslate tiles are a decorative variant of deepslate.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added grimstone tiles. At the time, they were only obtainable from the Creative inventory."},{"version":"1.17 21w10a","status":"added","notes":"Added crafting recipe for deepslate tiles."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb deepslate tiles, providing the football/regular effect to the mob."}],"colors":{"primary":"#373737","dominant_hex":"#2c2c2c","average_hex":"#373737","hue_group":"neutral","lightness":0.2157,"saturation":0.0,"palette":["#2c2c2c","#3c3434","#444444","#242424","#4c4c4c","#5c5c5c"],"color_groups":[{"hex":"#2c2c2c","weight":0.2578,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.2031,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#444444","weight":0.1992,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.1875,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.0898,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0625,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate_tiles.png","family":"deepslate_tiles","relations":[{"type":"visual_neighbors","target":"minecraft:deepslate_tile_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Palette proche: Cracked Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_bricks","label":"Pont de nuance par palette: Cracked Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.744},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.711},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.688},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.684},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.683},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.683},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.683},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.683}],"category":"building"},{"id":"minecraft:detector_rail","name":"Detector Rail","entry_type":"block","description":"The detector rail is a type of rail that produces a redstone signal while a minecart is on it.","history":[{"version":"1.5","status":"added","notes":"Added detector rails."}],"colors":{"primary":"#7b695a","dominant_hex":"#592b1d","average_hex":"#7b695a","hue_group":"red","lightness":0.4176,"saturation":0.1549,"palette":["#592b1d","#927749","#9c9c9c","#6c6c6c","#747c6c","#acacac"],"color_groups":[{"hex":"#592b1d","weight":0.3077,"lightness":0.2314,"saturation":0.5085,"hue_group":"red"},{"hex":"#927749","weight":0.1795,"lightness":0.4294,"saturation":0.3333,"hue_group":"yellow"},{"hex":"#9c9c9c","weight":0.1538,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.141,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747c6c","weight":0.109,"lightness":0.4549,"saturation":0.069,"hue_group":"neutral"},{"hex":"#acacac","weight":0.109,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/detector_rail.png","family":"detector_rail","relations":[{"type":"visual_neighbors","target":"minecraft:pointed_dripstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dripstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewing_stand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_redstone_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_ore","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:powered_rail","label":"Palette proche: Powered Rail","confidence":0.909},{"type":"color_neighbors","target":"minecraft:rail","label":"Palette proche: Rail","confidence":0.904},{"type":"color_neighbors","target":"minecraft:iron_bars","label":"Palette proche: Iron Bars","confidence":0.859},{"type":"color_neighbors","target":"minecraft:stonecutter","label":"Palette proche: Stonecutter","confidence":0.857},{"type":"color_neighbors","target":"minecraft:mangrove_leaves","label":"Palette proche: Mangrove Leaves","confidence":0.838},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.829},{"type":"color_neighbors","target":"minecraft:tripwire_hook","label":"Palette proche: Tripwire Hook","confidence":0.829},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.828},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.826},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.826},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.826},{"type":"color_neighbors","target":"minecraft:furnace","label":"Palette proche: Furnace","confidence":0.823},{"type":"color_bridge","target":"minecraft:powered_rail","label":"Pont de nuance par sous-ton: Powered Rail","confidence":0.9},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par palette: Rail","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_bars","label":"Pont de nuance par palette: Iron Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:stonecutter","label":"Pont de nuance par palette: Stonecutter","confidence":0.86},{"type":"color_bridge","target":"minecraft:mangrove_leaves","label":"Pont de nuance par palette: Mangrove Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.859},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par palette: Tripwire Hook","confidence":0.859},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.859},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.857},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.857},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55}],"category":"redstone"},{"id":"minecraft:diamond","name":"Diamond","entry_type":"item","description":"A diamond is a mineral that can be obtained from diamond ore along with various loot chests, vaults, ominous vaults, and suspicious sand. It is required to craft diamond tools, armor, and enchanting tables and is also used to duplicate smithing templates.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added diamonds, known at the time as emeralds. They are not related to the modern emeralds ."},{"version":"wiki-history","status":"added","notes":"Added desert pyramids , with a hidden chest room and loot containing diamonds."},{"version":"12w22a","status":"added","notes":"Added jungle pyramids , which contain loot chests with diamonds."}],"colors":{"primary":"#55beb5","dominant_hex":"#21baad","average_hex":"#55beb5","hue_group":"cyan","lightness":0.5392,"saturation":0.4468,"palette":["#21baad","#eefcf9","#145c54","#4aecdc","#167c84","#a4fcec"],"color_groups":[{"hex":"#21baad","weight":0.25,"lightness":0.4294,"saturation":0.6986,"hue_group":"cyan"},{"hex":"#eefcf9","weight":0.1667,"lightness":0.9608,"saturation":0.7,"hue_group":"cyan"},{"hex":"#145c54","weight":0.1583,"lightness":0.2196,"saturation":0.6429,"hue_group":"cyan"},{"hex":"#4aecdc","weight":0.1583,"lightness":0.6078,"saturation":0.81,"hue_group":"cyan"},{"hex":"#167c84","weight":0.1417,"lightness":0.302,"saturation":0.7143,"hue_group":"cyan"},{"hex":"#a4fcec","weight":0.125,"lightness":0.8157,"saturation":0.9362,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/diamond.png","family":"diamond","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond_nautilus_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_horse_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tide_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allay_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_shard","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:diamond_axe","name":"Diamond Axe","entry_type":"item","description":"A diamond axe is a variant of axe that is crafted from diamonds. It can be used to cut down trees faster, to strip logs and scrape copper-based blocks, and as a melee weapon that disables shields. It is the second-highest tier of axe, having higher mining efficiency, attack speed, and durability than an iron axe. It can be upgraded into a netherite axe using a netherite ingot and netherite upgrade at a smithing table.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added diamond axes, then known as emerald axes."},{"version":"wiki-history","status":"added","notes":"added to the item chest in the Indev house."},{"version":"3","status":"added","notes":"added for diamond axes, which adds 1 damage and 0.5 seconds (10 game ticks ) of shield stunning per level and is mutually exclusive with Sharpness ."}],"colors":{"primary":"#316148","dominant_hex":"#614419","average_hex":"#316148","hue_group":"green","lightness":0.2863,"saturation":0.3288,"palette":["#614419","#24b199","#2c1c0c","#0c2424","#0c3c34","#34eccc"],"color_groups":[{"hex":"#614419","weight":0.2833,"lightness":0.2392,"saturation":0.5902,"hue_group":"yellow"},{"hex":"#24b199","weight":0.2333,"lightness":0.4176,"saturation":0.662,"hue_group":"cyan"},{"hex":"#2c1c0c","weight":0.1667,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#0c2424","weight":0.1167,"lightness":0.0941,"saturation":0.5,"hue_group":"cyan"},{"hex":"#0c3c34","weight":0.1167,"lightness":0.1412,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#34eccc","weight":0.0833,"lightness":0.5647,"saturation":0.8288,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/diamond_axe.png","family":"diamond_tools","relations":[{"type":"variants","target":"minecraft:diamond_hoe","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_hoe","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_pickaxe","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_pickaxe","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_shovel","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_shovel","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_sword","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_sword","label":"Related set: diamond_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:diamond_tools","label":"Related set: diamond_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_hoe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_horse_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_helmet","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55}],"category":"tool"},{"id":"minecraft:diamond_block","name":"Diamond Block","entry_type":"block","description":"A block of diamond, known internally as a diamond block, is a precious mineral block equivalent to nine diamonds.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added diamond blocks, then known as emerald blocks."},{"version":"26.2 snap1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of diamond, providing the football/regular effect to the mob."}],"colors":{"primary":"#62ede4","dominant_hex":"#64f4e4","average_hex":"#62ede4","hue_group":"cyan","lightness":0.6569,"saturation":0.7943,"palette":["#64f4e4","#4cece4","#affcef","#74fcf4","#10c0c0","#3ce4e4"],"color_groups":[{"hex":"#64f4e4","weight":0.2148,"lightness":0.6745,"saturation":0.8675,"hue_group":"cyan"},{"hex":"#4cece4","weight":0.2031,"lightness":0.6118,"saturation":0.8081,"hue_group":"cyan"},{"hex":"#affcef","weight":0.2031,"lightness":0.8373,"saturation":0.9277,"hue_group":"cyan"},{"hex":"#74fcf4","weight":0.1445,"lightness":0.7216,"saturation":0.9577,"hue_group":"cyan"},{"hex":"#10c0c0","weight":0.1211,"lightness":0.4078,"saturation":0.8462,"hue_group":"cyan"},{"hex":"#3ce4e4","weight":0.1133,"lightness":0.5647,"saturation":0.7568,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/diamond_block.png","family":"diamond_block","relations":[{"type":"visual_neighbors","target":"minecraft:beacon","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_sprouts","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_fire","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:soul_fire","label":"Palette proche: Soul Fire","confidence":0.808},{"type":"color_neighbors","target":"minecraft:beacon","label":"Palette proche: Beacon","confidence":0.75},{"type":"color_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Palette proche: Calibrated Sculk Sensor","confidence":0.723},{"type":"color_neighbors","target":"minecraft:sculk_sensor","label":"Palette proche: Sculk Sensor","confidence":0.723},{"type":"color_neighbors","target":"minecraft:light_blue_carpet","label":"Palette proche: Light Blue Carpet","confidence":0.69},{"type":"color_neighbors","target":"minecraft:light_blue_wool","label":"Palette proche: Light Blue Wool","confidence":0.69},{"type":"color_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Palette proche: Light Blue Concrete Powder","confidence":0.677},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.659},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.656},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.656},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.654},{"type":"color_neighbors","target":"minecraft:nether_sprouts","label":"Palette proche: Nether Sprouts","confidence":0.637},{"type":"color_bridge","target":"minecraft:emerald_block","label":"Pont de nuance par palette: Emerald Block","confidence":0.636},{"type":"color_bridge","target":"minecraft:blue_ice","label":"Pont de nuance par palette: Blue Ice","confidence":0.621},{"type":"color_bridge","target":"minecraft:packed_ice","label":"Pont de nuance par palette: Packed Ice","confidence":0.589},{"type":"color_bridge","target":"minecraft:frosted_ice","label":"Pont de nuance par palette: Frosted Ice","confidence":0.581},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:sea_lantern","label":"Pont de nuance par sous-ton: Sea Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.58},{"type":"color_analogous","target":"minecraft:beacon","label":"Couleurs analogues: Beacon","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine","label":"Couleurs analogues: Prismarine","confidence":0.938},{"type":"color_analogous","target":"minecraft:prismarine_slab","label":"Couleurs analogues: Prismarine Slab","confidence":0.938},{"type":"color_analogous","target":"minecraft:prismarine_stairs","label":"Couleurs analogues: Prismarine Stairs","confidence":0.938},{"type":"color_analogous","target":"minecraft:prismarine_wall","label":"Couleurs analogues: Prismarine Wall","confidence":0.938},{"type":"color_analogous","target":"minecraft:warped_shelf","label":"Couleurs analogues: Warped Shelf","confidence":0.927},{"type":"color_analogous","target":"minecraft:warped_door","label":"Couleurs analogues: Warped Door","confidence":0.925},{"type":"color_analogous","target":"minecraft:stripped_warped_hyphae","label":"Couleurs analogues: Stripped Warped Hyphae","confidence":0.907},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_hyphae","label":"Contraste complementaire: Crimson Hyphae","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_stem","label":"Contraste complementaire: Crimson Stem","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.952},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.952},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.952},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.952},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.937},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.946},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.904},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.892},{"type":"color_triad","target":"minecraft:turtle_egg","label":"Harmonie triadique: Turtle Egg","confidence":0.883},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.864},{"type":"color_triad","target":"minecraft:potted_acacia_sapling","label":"Harmonie triadique: Potted Acacia Sapling","confidence":0.864},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.857},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.849},{"type":"color_square","target":"minecraft:lime_stained_glass","label":"Harmonie carree: Lime Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:lime_stained_glass_pane","label":"Harmonie carree: Lime Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:lime_concrete_powder","label":"Harmonie carree: Lime Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:nether_portal","label":"Harmonie carree: Nether Portal","confidence":0.96},{"type":"color_square","target":"minecraft:orange_tulip","label":"Harmonie carree: Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_orange_tulip","label":"Harmonie carree: Potted Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:oak_sapling","label":"Harmonie carree: Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_oak_sapling","label":"Harmonie carree: Potted Oak Sapling","confidence":0.96},{"type":"value_contrast","target":"minecraft:cyan_candle","label":"Contraste clair sombre: Cyan Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_wart_block","label":"Contraste clair sombre: Warped Wart Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:calibrated_sculk_sensor","label":"Contraste clair sombre: Calibrated Sculk Sensor","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_sensor","label":"Contraste clair sombre: Sculk Sensor","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_button","label":"Contraste clair sombre: Warped Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_fence","label":"Contraste clair sombre: Warped Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_fence_gate","label":"Contraste clair sombre: Warped Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_planks","label":"Contraste clair sombre: Warped Planks","confidence":0.55}],"category":"resource"},{"id":"minecraft:diamond_boots","name":"Diamond Boots","entry_type":"item","description":"Diamond boots are a variant of boots crafted from diamonds. They are the second-highest tier of boots, having higher armor points, armor toughness, durability, and enchantability than iron boots. They can be upgraded into netherite boots using a netherite ingot and netherite upgrade at a smithing table.","history":[{"version":"20100212-1210","status":"added","notes":"Added diamond boots."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#2a8075","dominant_hex":"#0c2424","average_hex":"#2a8075","hue_group":"cyan","lightness":0.3333,"saturation":0.5059,"palette":["#0c2424","#0c3c34","#4cecdc","#24c4b4","#bafcf0","#1caca4"],"color_groups":[{"hex":"#0c2424","weight":0.2955,"lightness":0.0941,"saturation":0.5,"hue_group":"cyan"},{"hex":"#0c3c34","weight":0.25,"lightness":0.1412,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#4cecdc","weight":0.1932,"lightness":0.6118,"saturation":0.8081,"hue_group":"cyan"},{"hex":"#24c4b4","weight":0.125,"lightness":0.4549,"saturation":0.6897,"hue_group":"cyan"},{"hex":"#bafcf0","weight":0.0909,"lightness":0.8588,"saturation":0.9167,"hue_group":"cyan"},{"hex":"#1caca4","weight":0.0455,"lightness":0.3922,"saturation":0.72,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/diamond_boots.png","family":"diamond_armor","relations":[{"type":"variants","target":"minecraft:diamond_chestplate","label":"Same family: diamond_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_chestplate","label":"Related set: diamond_armor","confidence":0.8},{"type":"variants","target":"minecraft:diamond_helmet","label":"Same family: diamond_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_helmet","label":"Related set: diamond_armor","confidence":0.8},{"type":"variants","target":"minecraft:diamond_leggings","label":"Same family: diamond_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_leggings","label":"Related set: diamond_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:diamond_armor","label":"Related set: diamond_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_helmet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_pearl","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_nautilus_armor","label":"Shared hue group: cyan","confidence":0.55}],"category":"armor"},{"id":"minecraft:diamond_chestplate","name":"Diamond Chestplate","entry_type":"item","description":"A diamond chestplate is a variant of chestplate crafted from diamonds. It is the second-highest tier of chestplate, having higher armor points, armor toughness, durability, and enchantability than an iron chestplate. It can be upgraded into a netherite chestplate using a netherite ingot and netherite upgrade at a smithing table.","history":[{"version":"20100212-1210","status":"added","notes":"Added the item form of diamond chestplates."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#39a799","dominant_hex":"#4cecdc","average_hex":"#39a799","hue_group":"cyan","lightness":0.4392,"saturation":0.4911,"palette":["#4cecdc","#0c3c34","#0c2424","#24c4b4","#b4fcef","#1caca4"],"color_groups":[{"hex":"#4cecdc","weight":0.3333,"lightness":0.6118,"saturation":0.8081,"hue_group":"cyan"},{"hex":"#0c3c34","weight":0.1739,"lightness":0.1412,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#0c2424","weight":0.1594,"lightness":0.0941,"saturation":0.5,"hue_group":"cyan"},{"hex":"#24c4b4","weight":0.1522,"lightness":0.4549,"saturation":0.6897,"hue_group":"cyan"},{"hex":"#b4fcef","weight":0.1232,"lightness":0.8471,"saturation":0.9231,"hue_group":"cyan"},{"hex":"#1caca4","weight":0.058,"lightness":0.3922,"saturation":0.72,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/diamond_chestplate.png","family":"diamond_armor","relations":[{"type":"variants","target":"minecraft:diamond_boots","label":"Same family: diamond_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_boots","label":"Related set: diamond_armor","confidence":0.8},{"type":"variants","target":"minecraft:diamond_helmet","label":"Same family: diamond_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_helmet","label":"Related set: diamond_armor","confidence":0.8},{"type":"variants","target":"minecraft:diamond_leggings","label":"Same family: diamond_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_leggings","label":"Related set: diamond_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:diamond_armor","label":"Related set: diamond_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:light_blue_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_nautilus_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_horse_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_helmet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tide_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55}],"category":"armor"},{"id":"minecraft:diamond_helmet","name":"Diamond Helmet","entry_type":"item","description":"A diamond helmet is a variant of helmet that is crafted from diamonds. It is the second-highest tier of helmet, having higher armor points, armor toughness, durability, and enchantability than turtle shells. It can be upgraded into a netherite helmet using a netherite ingot and netherite upgrade at a smithing table.","history":[{"version":"20100212-1210","status":"added","notes":"Added diamond helmets."},{"version":"20100218","status":"added","notes":"Added models of diamond helmets."},{"version":"1.16 20w07a","status":"added","notes":"Added textures and models for diamond helmets when they are used by piglins ."}],"colors":{"primary":"#23756b","dominant_hex":"#0c2424","average_hex":"#23756b","hue_group":"cyan","lightness":0.298,"saturation":0.5395,"palette":["#0c2424","#0c3c34","#4cecdc","#24c4b4","#1caca4","#b6fcef"],"color_groups":[{"hex":"#0c2424","weight":0.3462,"lightness":0.0941,"saturation":0.5,"hue_group":"cyan"},{"hex":"#0c3c34","weight":0.2436,"lightness":0.1412,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#4cecdc","weight":0.1667,"lightness":0.6118,"saturation":0.8081,"hue_group":"cyan"},{"hex":"#24c4b4","weight":0.1154,"lightness":0.4549,"saturation":0.6897,"hue_group":"cyan"},{"hex":"#1caca4","weight":0.0641,"lightness":0.3922,"saturation":0.72,"hue_group":"cyan"},{"hex":"#b6fcef","weight":0.0641,"lightness":0.851,"saturation":0.9211,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/diamond_helmet.png","family":"diamond_armor","relations":[{"type":"variants","target":"minecraft:diamond_boots","label":"Same family: diamond_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_boots","label":"Related set: diamond_armor","confidence":0.8},{"type":"variants","target":"minecraft:diamond_chestplate","label":"Same family: diamond_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_chestplate","label":"Related set: diamond_armor","confidence":0.8},{"type":"variants","target":"minecraft:diamond_leggings","label":"Same family: diamond_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_leggings","label":"Related set: diamond_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:diamond_armor","label":"Related set: diamond_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_pearl","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_of_the_sea","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55}],"category":"armor"},{"id":"minecraft:diamond_hoe","name":"Diamond Hoe","entry_type":"item","description":"A diamond hoe is a variant of hoe that is crafted from diamonds. It is used to till dirt-related blocks into farmland, and to break leaves, haybales, and sculk-related blocks faster. It is the second-highest tier of hoe, having higher mining efficiency, attack speed, and durability than an iron hoe. It can be upgraded into a netherite hoe using a netherite ingot and netherite upgrade at a smithing table.","history":[{"version":"20100206-2034","status":"added","notes":"Added diamond hoes."},{"version":"15w50a","status":"added","notes":"Added a sound for hoes: item.hoe.till ."}],"colors":{"primary":"#385034","dominant_hex":"#0c312d","average_hex":"#385034","hue_group":"green","lightness":0.2588,"saturation":0.2121,"palette":["#0c312d","#2c1c0c","#4c3414","#29c1a8","#6c4c1c","#8c6424"],"color_groups":[{"hex":"#0c312d","weight":0.2157,"lightness":0.1196,"saturation":0.6066,"hue_group":"cyan"},{"hex":"#2c1c0c","weight":0.2157,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.1961,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#29c1a8","weight":0.1765,"lightness":0.4588,"saturation":0.6496,"hue_group":"cyan"},{"hex":"#6c4c1c","weight":0.098,"lightness":0.2667,"saturation":0.5882,"hue_group":"yellow"},{"hex":"#8c6424","weight":0.098,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/diamond_hoe.png","family":"diamond_tools","relations":[{"type":"variants","target":"minecraft:diamond_axe","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_axe","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_pickaxe","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_pickaxe","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_shovel","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_shovel","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_sword","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_sword","label":"Related set: diamond_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:diamond_tools","label":"Related set: diamond_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_cat","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_far","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_axe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_horse_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator","label":"Shared hue group: green","confidence":0.55}],"category":"tool"},{"id":"minecraft:diamond_horse_armor","name":"Diamond Horse Armor","entry_type":"item","description":"Diamond horse armor is the second-strongest tier of horse armor. Unlike other diamond items, it cannot be crafted and is only obtainable from chest loot in various structures.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added diamond horse armor."},{"version":"1.9 15w31a","status":"added","notes":"added to end city chests."}],"colors":{"primary":"#5ec499","dominant_hex":"#1caca4","average_hex":"#5ec499","hue_group":"cyan","lightness":0.5686,"saturation":0.4636,"palette":["#1caca4","#b8fcf0","#24c4b4","#8d8d06","#4cecdc","#c4bc0c"],"color_groups":[{"hex":"#1caca4","weight":0.2809,"lightness":0.3922,"saturation":0.72,"hue_group":"cyan"},{"hex":"#b8fcf0","weight":0.2022,"lightness":0.8549,"saturation":0.9189,"hue_group":"cyan"},{"hex":"#24c4b4","weight":0.1798,"lightness":0.4549,"saturation":0.6897,"hue_group":"cyan"},{"hex":"#8d8d06","weight":0.1461,"lightness":0.2882,"saturation":0.9184,"hue_group":"yellow"},{"hex":"#4cecdc","weight":0.1124,"lightness":0.6118,"saturation":0.8081,"hue_group":"cyan"},{"hex":"#c4bc0c","weight":0.0787,"lightness":0.4078,"saturation":0.8846,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/diamond_horse_armor.png","family":"diamond_horse_armor","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_nautilus_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allay_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tide_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_shard","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:diamond_leggings","name":"Diamond Leggings","entry_type":"item","description":"Diamond leggings are a variant of leggings crafted from diamonds. They are the second-highest tier of leggings, having higher armor points, armor toughness, durability, and enchantability than iron leggings. They can be upgraded into netherite leggings using a netherite ingot and netherite upgrade at a smithing table.","history":[{"version":"20100212-1210","status":"added","notes":"Added diamond leggings."},{"version":"20100218-0011","status":"added","notes":"Added a model for diamond leggings."},{"version":"1.4.6 12w50a","status":"added","notes":"Added Thorns, which can be applied to diamond leggings."}],"colors":{"primary":"#2a877c","dominant_hex":"#0c2424","average_hex":"#2a877c","hue_group":"cyan","lightness":0.3471,"saturation":0.5254,"palette":["#0c2424","#4cecdc","#0c3c34","#24c4b4","#b8fcf0","#1caca4"],"color_groups":[{"hex":"#0c2424","weight":0.3077,"lightness":0.0941,"saturation":0.5,"hue_group":"cyan"},{"hex":"#4cecdc","weight":0.1923,"lightness":0.6118,"saturation":0.8081,"hue_group":"cyan"},{"hex":"#0c3c34","weight":0.1731,"lightness":0.1412,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#24c4b4","weight":0.1635,"lightness":0.4549,"saturation":0.6897,"hue_group":"cyan"},{"hex":"#b8fcf0","weight":0.0865,"lightness":0.8549,"saturation":0.9189,"hue_group":"cyan"},{"hex":"#1caca4","weight":0.0769,"lightness":0.3922,"saturation":0.72,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/diamond_leggings.png","family":"diamond_armor","relations":[{"type":"variants","target":"minecraft:diamond_boots","label":"Same family: diamond_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_boots","label":"Related set: diamond_armor","confidence":0.8},{"type":"variants","target":"minecraft:diamond_chestplate","label":"Same family: diamond_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_chestplate","label":"Related set: diamond_armor","confidence":0.8},{"type":"variants","target":"minecraft:diamond_helmet","label":"Same family: diamond_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_helmet","label":"Related set: diamond_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:diamond_armor","label":"Related set: diamond_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_helmet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_pearl","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_of_the_sea","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_nautilus_armor","label":"Shared hue group: cyan","confidence":0.55}],"category":"armor"},{"id":"minecraft:diamond_nautilus_armor","name":"Diamond Nautilus Armor","entry_type":"item","description":"Diamond nautilus armor is a rare type of nautilus armor that can be equipped by a nautilus that reduces the damage received to the nautilus. It is the second-strongest tier of nautilus armor, having higher armor points and armor toughness than golden nautilus armor. It can be upgraded into netherite nautilus armor using a netherite ingot and netherite upgrade at a smithing table.","history":[{"version":"1.21.11 25w41a","status":"added","notes":"Added diamond nautilus armor."}],"colors":{"primary":"#49b8ad","dominant_hex":"#1c9c94","average_hex":"#49b8ad","hue_group":"cyan","lightness":0.5039,"saturation":0.4387,"palette":["#1c9c94","#147c7c","#a4fcec","#44dccc","#1cb4ac","#fcfcfc"],"color_groups":[{"hex":"#1c9c94","weight":0.3026,"lightness":0.3608,"saturation":0.6957,"hue_group":"cyan"},{"hex":"#147c7c","weight":0.2303,"lightness":0.2824,"saturation":0.7222,"hue_group":"cyan"},{"hex":"#a4fcec","weight":0.1842,"lightness":0.8157,"saturation":0.9362,"hue_group":"cyan"},{"hex":"#44dccc","weight":0.1053,"lightness":0.5647,"saturation":0.6847,"hue_group":"cyan"},{"hex":"#1cb4ac","weight":0.0921,"lightness":0.4078,"saturation":0.7308,"hue_group":"cyan"},{"hex":"#fcfcfc","weight":0.0855,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/diamond_nautilus_armor.png","family":"diamond_nautilus_armor","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_horse_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tide_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_shard","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allay_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:diamond_ore","name":"Diamond Ore","entry_type":"block","description":"Diamond ore is a rare ore that generates deep underground, and drops diamonds when mined. Deepslate diamond ore is a variant of diamond ore that can generate in deepslate and tuff blobs, and is more common than its regular variant.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added diamond ore. Initially, it was referred to as \"emerald ore\"."},{"version":"21w08a","status":"added","notes":"Added the deepslate diamond ore, which take place of diamond ores that generate in deepslate."},{"version":"wiki-history","status":"added","notes":"Added diamond_ores block tag ."}],"colors":{"primary":"#798d8d","dominant_hex":"#797979","average_hex":"#798d8d","hue_group":"neutral","lightness":0.5137,"saturation":0.0806,"palette":["#797979","#8c8c8c","#646464","#65e3da","#92aab0","#24949c"],"color_groups":[{"hex":"#797979","weight":0.4453,"lightness":0.4745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1914,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#646464","weight":0.1172,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#65e3da","weight":0.1055,"lightness":0.6431,"saturation":0.6923,"hue_group":"cyan"},{"hex":"#92aab0","weight":0.1016,"lightness":0.6314,"saturation":0.1596,"hue_group":"cyan"},{"hex":"#24949c","weight":0.0391,"lightness":0.3765,"saturation":0.625,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/diamond_ore.png","family":"diamond_ore","relations":[{"type":"visual_neighbors","target":"minecraft:tripwire_hook","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_lichen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lapis_ore","label":"Palette proche: Lapis Ore","confidence":0.894},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.878},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.878},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.878},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.878},{"type":"color_neighbors","target":"minecraft:lodestone","label":"Palette proche: Lodestone","confidence":0.864},{"type":"color_neighbors","target":"minecraft:bush","label":"Palette proche: Bush","confidence":0.862},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.858},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.858},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.858},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.858},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.858},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par palette: Lapis Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:lodestone","label":"Pont de nuance par palette: Lodestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:bush","label":"Pont de nuance par palette: Bush","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":"resource"},{"id":"minecraft:diamond_pickaxe","name":"Diamond Pickaxe","entry_type":"item","description":"A diamond pickaxe is a variant of pickaxe that is crafted from diamonds. It is the second-highest tier of pickaxe, having higher mining efficiency, durability, and attack damage than an iron pickaxe. It has a mining level of 3, allowing it to mine obsidian and ancient debris. It can be upgraded into a netherite pickaxe using a netherite ingot and netherite upgrade at a smithing table.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added diamond pickaxes, then known as emerald pickaxes."}],"colors":{"primary":"#2f543c","dominant_hex":"#64461a","average_hex":"#2f543c","hue_group":"green","lightness":0.2569,"saturation":0.2824,"palette":["#64461a","#0c2424","#2c1c0c","#0c3c34","#24b49c","#2ecfb5"],"color_groups":[{"hex":"#64461a","weight":0.2941,"lightness":0.2471,"saturation":0.5873,"hue_group":"yellow"},{"hex":"#0c2424","weight":0.2059,"lightness":0.0941,"saturation":0.5,"hue_group":"cyan"},{"hex":"#2c1c0c","weight":0.1618,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#0c3c34","weight":0.1176,"lightness":0.1412,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#24b49c","weight":0.1176,"lightness":0.4235,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#2ecfb5","weight":0.1029,"lightness":0.4961,"saturation":0.6364,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/diamond_pickaxe.png","family":"diamond_tools","relations":[{"type":"variants","target":"minecraft:diamond_axe","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_axe","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_hoe","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_hoe","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_shovel","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_shovel","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_sword","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_sword","label":"Related set: diamond_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:diamond_tools","label":"Related set: diamond_tools","confidence":0.85},{"type":"related_sets","target":"group:pickaxes","label":"Related set: pickaxes","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond_hoe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_axe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_horse_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_cat","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_far","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55}],"category":"tool"},{"id":"minecraft:diamond_shovel","name":"Diamond Shovel","entry_type":"item","description":"A diamond shovel is a variant of shovel that is crafted from diamonds. It is used to break dirt, sand, gravel and other related blocks faster, to create dirt paths from dirt-related blocks, and to extinguish campfires. It is the second-highest tier of shovel, having higher mining efficiency, attack damage, and durability than an iron shovel. It can be upgraded into a netherite shovel using a netherite ingot and netherite upgrade at a smithing table.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added diamond shovels, then known as emerald shovels."},{"version":"wiki-history","status":"added","notes":"added to the item chest in the Indev house."},{"version":"15w50a","status":"added","notes":"added to diamond shovels."}],"colors":{"primary":"#34664b","dominant_hex":"#2ed4b8","average_hex":"#34664b","hue_group":"green","lightness":0.302,"saturation":0.3247,"palette":["#2ed4b8","#523815","#2c1c0c","#0c2424","#0c3c34","#8c6424"],"color_groups":[{"hex":"#2ed4b8","weight":0.3019,"lightness":0.5059,"saturation":0.6587,"hue_group":"cyan"},{"hex":"#523815","weight":0.2075,"lightness":0.202,"saturation":0.5922,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1698,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#0c2424","weight":0.1321,"lightness":0.0941,"saturation":0.5,"hue_group":"cyan"},{"hex":"#0c3c34","weight":0.0943,"lightness":0.1412,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#8c6424","weight":0.0943,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/diamond_shovel.png","family":"diamond_tools","relations":[{"type":"variants","target":"minecraft:diamond_axe","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_axe","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_hoe","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_hoe","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_pickaxe","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_pickaxe","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_sword","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_sword","label":"Related set: diamond_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:diamond_tools","label":"Related set: diamond_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond_axe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_hoe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_horse_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55}],"category":"tool"},{"id":"minecraft:diamond_spear","name":"Diamond Spear","entry_type":"item","description":"A diamond spear is a variant of spear crafted from diamonds. It can be used to perform slow jab attacks or held forward to deal increasing damage based on how quickly the wielder is moving. It is the second-highest tier of spear, dealing more damage and having higher durability than an iron spear, at the cost of lower attack speed. It can be upgraded into a netherite spear using a netherite ingot and netherite upgrade at a smithing table.","history":[{"version":"1.21.11 25w41a","status":"added","notes":"Added diamond spears."}],"colors":{"primary":"#49705a","dominant_hex":"#0c312c","average_hex":"#49705a","hue_group":"green","lightness":0.3627,"saturation":0.2108,"palette":["#0c312c","#44270d","#31ddc0","#ccfcf8","#935b25","#1c8c74"],"color_groups":[{"hex":"#0c312c","weight":0.2838,"lightness":0.1196,"saturation":0.6066,"hue_group":"cyan"},{"hex":"#44270d","weight":0.2432,"lightness":0.1588,"saturation":0.679,"hue_group":"red"},{"hex":"#31ddc0","weight":0.1486,"lightness":0.5294,"saturation":0.7167,"hue_group":"cyan"},{"hex":"#ccfcf8","weight":0.1351,"lightness":0.8941,"saturation":0.8889,"hue_group":"cyan"},{"hex":"#935b25","weight":0.1216,"lightness":0.3608,"saturation":0.5978,"hue_group":"red"},{"hex":"#1c8c74","weight":0.0676,"lightness":0.3294,"saturation":0.6667,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/diamond_spear.png","family":"diamond_spear","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_hoe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_ball","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_cat","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_spawn_egg","label":"Shared hue group: green","confidence":0.55}],"category":"item"},{"id":"minecraft:diamond_sword","name":"Diamond Sword","entry_type":"item","description":"A diamond sword is a variant of sword that is crafted from diamonds. It is the second-highest tier of sword, dealing more damage than an iron sword and having higher durability. It can be upgraded into a netherite sword using a netherite ingot and netherite upgrade at a smithing table.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added diamond swords, then known as emerald swords."},{"version":"wiki-history","status":"added","notes":"added to the item chest in the starting house ."},{"version":"1.8","status":"added","notes":"Added the ability to block with a diamond sword, giving the player more options in combat. Blocking deflects 50% of incoming melee damage, non-magical projectiles like arrows and explosion damage, and a bit of knockback."}],"colors":{"primary":"#276c5c","dominant_hex":"#132521","average_hex":"#276c5c","hue_group":"cyan","lightness":0.2882,"saturation":0.4694,"palette":["#132521","#133d32","#25765d","#34eccc","#a4fcf4","#2cc4ac"],"color_groups":[{"hex":"#132521","weight":0.3095,"lightness":0.1098,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#133d32","weight":0.3095,"lightness":0.1569,"saturation":0.525,"hue_group":"cyan"},{"hex":"#25765d","weight":0.1071,"lightness":0.3039,"saturation":0.5226,"hue_group":"cyan"},{"hex":"#34eccc","weight":0.1071,"lightness":0.5647,"saturation":0.8288,"hue_group":"cyan"},{"hex":"#a4fcf4","weight":0.0952,"lightness":0.8157,"saturation":0.9362,"hue_group":"cyan"},{"hex":"#2cc4ac","weight":0.0714,"lightness":0.4706,"saturation":0.6333,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/diamond_sword.png","family":"diamond_tools","relations":[{"type":"variants","target":"minecraft:diamond_axe","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_axe","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_hoe","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_hoe","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_pickaxe","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_pickaxe","label":"Related set: diamond_tools","confidence":0.8},{"type":"variants","target":"minecraft:diamond_shovel","label":"Same family: diamond_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:diamond_shovel","label":"Related set: diamond_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:diamond_tools","label":"Related set: diamond_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_helmet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_pearl","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_bundle","label":"Shared hue group: cyan","confidence":0.55}],"category":"tool"},{"id":"minecraft:diorite","name":"Diorite","entry_type":"block","description":"Diorite is a block of igneous rock, found in large pockets underground.","history":[{"version":"1.8 14w02a","status":"added","notes":"Added diorite."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb diorite, providing the football/regular effect to the mob."}],"colors":{"primary":"#bdbcbd","dominant_hex":"#ececec","average_hex":"#bdbcbd","hue_group":"neutral","lightness":0.7392,"saturation":0.0075,"palette":["#ececec","#a4a4a4","#bcbcc4","#8c8c8c","#cccccc","#7c7c7c"],"color_groups":[{"hex":"#ececec","weight":0.2695,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.2305,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcc4","weight":0.1953,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1367,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.1367,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.0312,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/diorite.png","family":"diorite","relations":[{"type":"variants","target":"minecraft:diorite_slab","label":"Same family: diorite","confidence":0.75},{"type":"related_sets","target":"minecraft:diorite_slab","label":"Related set: diorite","confidence":0.8},{"type":"variants","target":"minecraft:diorite_stairs","label":"Same family: diorite","confidence":0.75},{"type":"related_sets","target":"minecraft:diorite_stairs","label":"Related set: diorite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_column","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leaf_litter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:diorite_slab","label":"Palette proche: Diorite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_stairs","label":"Palette proche: Diorite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_wall","label":"Palette proche: Diorite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.919},{"type":"color_neighbors","target":"minecraft:water","label":"Palette proche: Water","confidence":0.919},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.918},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.91},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.896},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.896},{"type":"color_bridge","target":"minecraft:diorite_slab","label":"Pont de nuance par palette: Diorite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_stairs","label":"Pont de nuance par palette: Diorite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_wall","label":"Pont de nuance par palette: Diorite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite_stairs","label":"Pont de nuance par palette: Polished Diorite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:bubble_column","label":"Pont de nuance par palette: Bubble Column","confidence":0.86},{"type":"color_bridge","target":"minecraft:water","label":"Pont de nuance par palette: Water","confidence":0.86},{"type":"color_bridge","target":"minecraft:leaf_litter","label":"Pont de nuance par palette: Leaf Litter","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.643},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.638},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.633},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.617},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.617},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.617},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.617},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.603}],"category":""},{"id":"minecraft:diorite_slab","name":"Diorite Slab","entry_type":"block","description":"A diorite slab is a decorative slab variant of diorite that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added diorite slabs."}],"colors":{"primary":"#bdbcbd","dominant_hex":"#ececec","average_hex":"#bdbcbd","hue_group":"neutral","lightness":0.7392,"saturation":0.0075,"palette":["#ececec","#a4a4a4","#bcbcc4","#8c8c8c","#cccccc","#7c7c7c"],"color_groups":[{"hex":"#ececec","weight":0.2695,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.2305,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcc4","weight":0.1953,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1367,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.1367,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.0312,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/diorite.png","family":"diorite","relations":[{"type":"variants","target":"minecraft:diorite","label":"Same family: diorite","confidence":0.75},{"type":"related_sets","target":"minecraft:diorite","label":"Related set: diorite","confidence":0.8},{"type":"variants","target":"minecraft:diorite_stairs","label":"Same family: diorite","confidence":0.75},{"type":"related_sets","target":"minecraft:diorite_stairs","label":"Related set: diorite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_column","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leaf_litter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:diorite","label":"Palette proche: Diorite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_stairs","label":"Palette proche: Diorite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_wall","label":"Palette proche: Diorite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.919},{"type":"color_neighbors","target":"minecraft:water","label":"Palette proche: Water","confidence":0.919},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.918},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.91},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.896},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.896},{"type":"color_bridge","target":"minecraft:diorite","label":"Pont de nuance par palette: Diorite","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_stairs","label":"Pont de nuance par palette: Diorite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_wall","label":"Pont de nuance par palette: Diorite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite_stairs","label":"Pont de nuance par palette: Polished Diorite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:bubble_column","label":"Pont de nuance par palette: Bubble Column","confidence":0.86},{"type":"color_bridge","target":"minecraft:water","label":"Pont de nuance par palette: Water","confidence":0.86},{"type":"color_bridge","target":"minecraft:leaf_litter","label":"Pont de nuance par palette: Leaf Litter","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.643},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.638},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.633},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.617},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.617},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.617},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.617},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.603}],"category":"building"},{"id":"minecraft:diorite_stairs","name":"Diorite Stairs","entry_type":"block","description":"Diorite stairs are a decorative stairs variant of diorite that generates in snowy tundra villages and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added diorite stairs."}],"colors":{"primary":"#bdbcbd","dominant_hex":"#ececec","average_hex":"#bdbcbd","hue_group":"neutral","lightness":0.7392,"saturation":0.0075,"palette":["#ececec","#a4a4a4","#bcbcc4","#8c8c8c","#cccccc","#7c7c7c"],"color_groups":[{"hex":"#ececec","weight":0.2695,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.2305,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcc4","weight":0.1953,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1367,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.1367,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.0312,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/diorite.png","family":"diorite","relations":[{"type":"variants","target":"minecraft:diorite","label":"Same family: diorite","confidence":0.75},{"type":"related_sets","target":"minecraft:diorite","label":"Related set: diorite","confidence":0.8},{"type":"variants","target":"minecraft:diorite_slab","label":"Same family: diorite","confidence":0.75},{"type":"related_sets","target":"minecraft:diorite_slab","label":"Related set: diorite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_column","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leaf_litter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:diorite","label":"Palette proche: Diorite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_slab","label":"Palette proche: Diorite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_wall","label":"Palette proche: Diorite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.919},{"type":"color_neighbors","target":"minecraft:water","label":"Palette proche: Water","confidence":0.919},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.918},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.91},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.896},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.896},{"type":"color_bridge","target":"minecraft:diorite","label":"Pont de nuance par palette: Diorite","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_slab","label":"Pont de nuance par palette: Diorite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_wall","label":"Pont de nuance par palette: Diorite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite_stairs","label":"Pont de nuance par palette: Polished Diorite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:bubble_column","label":"Pont de nuance par palette: Bubble Column","confidence":0.86},{"type":"color_bridge","target":"minecraft:water","label":"Pont de nuance par palette: Water","confidence":0.86},{"type":"color_bridge","target":"minecraft:leaf_litter","label":"Pont de nuance par palette: Leaf Litter","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.643},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.638},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.633},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.617},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.617},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.617},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.617},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.603}],"category":"building"},{"id":"minecraft:diorite_wall","name":"Diorite Wall","entry_type":"block","description":"A diorite wall is a decorative wall variant of diorite that generates in snowy tundra villages and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added diorite walls."}],"colors":{"primary":"#bdbcbd","dominant_hex":"#ececec","average_hex":"#bdbcbd","hue_group":"neutral","lightness":0.7392,"saturation":0.0075,"palette":["#ececec","#a4a4a4","#bcbcc4","#8c8c8c","#cccccc","#7c7c7c"],"color_groups":[{"hex":"#ececec","weight":0.2695,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.2305,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcc4","weight":0.1953,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1367,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.1367,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.0312,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/diorite.png","family":"diorite_wall","relations":[{"type":"visual_neighbors","target":"minecraft:diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_column","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leaf_litter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:diorite","label":"Palette proche: Diorite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_slab","label":"Palette proche: Diorite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_stairs","label":"Palette proche: Diorite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.919},{"type":"color_neighbors","target":"minecraft:water","label":"Palette proche: Water","confidence":0.919},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.918},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.91},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.896},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.896},{"type":"color_bridge","target":"minecraft:diorite","label":"Pont de nuance par palette: Diorite","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_slab","label":"Pont de nuance par palette: Diorite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_stairs","label":"Pont de nuance par palette: Diorite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite_stairs","label":"Pont de nuance par palette: Polished Diorite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:bubble_column","label":"Pont de nuance par palette: Bubble Column","confidence":0.86},{"type":"color_bridge","target":"minecraft:water","label":"Pont de nuance par palette: Water","confidence":0.86},{"type":"color_bridge","target":"minecraft:leaf_litter","label":"Pont de nuance par palette: Leaf Litter","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.643},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.638},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.633},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.617},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.617},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.617},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.617},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.603}],"category":"building"},{"id":"minecraft:dirt","name":"Dirt","entry_type":"block","description":"Dirt is a block found abundantly in most biomes under a layer of grass blocks at the top of the Overworld as well as in patches underground.","history":[{"version":"rd-20090515","status":"added","notes":"Added dirt."},{"version":"22, 2009","status":"added","notes":"added to the game."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb dirt, providing the football/regular effect to the mob."}],"colors":{"primary":"#866043","dominant_hex":"#7c543c","average_hex":"#866043","hue_group":"red","lightness":0.3941,"saturation":0.3333,"palette":["#7c543c","#946c4c","#bc845c","#5c3c2c","#848484","#6c6c6c"],"color_groups":[{"hex":"#7c543c","weight":0.4219,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#946c4c","weight":0.2656,"lightness":0.4392,"saturation":0.3214,"hue_group":"red"},{"hex":"#bc845c","weight":0.1523,"lightness":0.549,"saturation":0.4174,"hue_group":"red"},{"hex":"#5c3c2c","weight":0.1328,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#848484","weight":0.0156,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0117,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dirt.png","family":"dirt","relations":[{"type":"visual_neighbors","target":"minecraft:farmland","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coarse_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_quartz_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanting_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.94},{"type":"color_neighbors","target":"minecraft:coarse_dirt","label":"Palette proche: Coarse Dirt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:rooted_dirt","label":"Palette proche: Rooted Dirt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.919},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.913},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.913},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.913},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.913},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.913},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.913},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.913},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.913},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.883},{"type":"color_bridge","target":"minecraft:iron_ore","label":"Pont de nuance par sous-ton: Iron Ore","confidence":0.877},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.863},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.862},{"type":"color_bridge","target":"minecraft:stonecutter","label":"Pont de nuance par palette: Stonecutter","confidence":0.854},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.846},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.844},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.84},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.84},{"type":"color_analogous","target":"minecraft:farmland","label":"Couleurs analogues: Farmland","confidence":0.96},{"type":"color_analogous","target":"minecraft:coarse_dirt","label":"Couleurs analogues: Coarse Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_trapdoor","label":"Couleurs analogues: Jungle Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_slab","label":"Couleurs analogues: Mud Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_stairs","label":"Couleurs analogues: Mud Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_wall","label":"Couleurs analogues: Mud Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_bricks","label":"Couleurs analogues: Mud Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:packed_mud","label":"Couleurs analogues: Packed Mud","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.957},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.957},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.957},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.907},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.907},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.884},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.868},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.859},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.943},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.931},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.922},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.921},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.918},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.912},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.912},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.909},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.885},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.836},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.825},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.786},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.786},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.781},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.747},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.561},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55}],"category":"natural"},{"id":"minecraft:dirt_path","name":"Dirt Path","entry_type":"block","description":"Dirt paths are decorative blocks. They are mainly found in villages as a path for the villagers.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added grass paths."},{"version":"19w05a","status":"added","notes":"Added wandering traders , which sell podzol, making it a renewable resource ."}],"colors":{"primary":"#947a41","dominant_hex":"#947444","average_hex":"#947a41","hue_group":"yellow","lightness":0.4176,"saturation":0.3897,"palette":["#947444","#9c8444","#ac8c4c","#846c3c"],"color_groups":[{"hex":"#947444","weight":0.5,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.2656,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#ac8c4c","weight":0.1211,"lightness":0.4863,"saturation":0.3871,"hue_group":"yellow"},{"hex":"#846c3c","weight":0.1133,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dirt_path_top.png","family":"dirt_path","relations":[{"type":"visual_neighbors","target":"minecraft:oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ladder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scaffolding","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.932},{"type":"color_neighbors","target":"minecraft:oak_shelf","label":"Palette proche: Oak Shelf","confidence":0.93},{"type":"color_neighbors","target":"minecraft:lectern","label":"Palette proche: Lectern","confidence":0.93},{"type":"color_neighbors","target":"minecraft:jungle_shelf","label":"Palette proche: Jungle Shelf","confidence":0.923},{"type":"color_neighbors","target":"minecraft:oak_hanging_sign","label":"Palette proche: Oak Hanging Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Palette proche: Oak Wall Hanging Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:stripped_oak_log","label":"Palette proche: Stripped Oak Log","confidence":0.922},{"type":"color_neighbors","target":"minecraft:stripped_oak_wood","label":"Palette proche: Stripped Oak Wood","confidence":0.922},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.92},{"type":"color_neighbors","target":"minecraft:beehive","label":"Palette proche: Beehive","confidence":0.917},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.915},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.915},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.845},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.838},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.838},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.833},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.833},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.818},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.817},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.813},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.806},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.801},{"type":"color_analogous","target":"minecraft:pitcher_crop","label":"Couleurs analogues: Pitcher Crop","confidence":0.96},{"type":"color_analogous","target":"minecraft:raw_gold_block","label":"Couleurs analogues: Raw Gold Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_concrete","label":"Couleurs analogues: Yellow Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:torch","label":"Couleurs analogues: Torch","confidence":0.952},{"type":"color_analogous","target":"minecraft:wall_torch","label":"Couleurs analogues: Wall Torch","confidence":0.952},{"type":"color_analogous","target":"minecraft:bee_nest","label":"Couleurs analogues: Bee Nest","confidence":0.952},{"type":"color_analogous","target":"minecraft:bell","label":"Couleurs analogues: Bell","confidence":0.947},{"type":"color_analogous","target":"minecraft:yellow_terracotta","label":"Couleurs analogues: Yellow Terracotta","confidence":0.947},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.941},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.936},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.874},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.87},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.868},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.868},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.864},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.843},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.934},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.934},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.919},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.919},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.917},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.917},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.91},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.883},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.892},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.772},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.732},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.732},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.731},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.731},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.726},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.71},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55}],"category":""},{"id":"minecraft:disc_fragment_5","name":"Disc Fragment 5","entry_type":"item","description":"A disc fragment is a music disc fragment obtained from ancient city loot chests. Nine fragments can be combined in a crafting table to make music disc \"5\".","history":[{"version":"1.19 22w16a","status":"added","notes":"Added disc fragments."}],"colors":{"primary":"#2c3b3f","dominant_hex":"#0c1414","average_hex":"#2c3b3f","hue_group":"cyan","lightness":0.2098,"saturation":0.1776,"palette":["#0c1414","#3c3c44","#545454","#047171","#2c2c34","#646464"],"color_groups":[{"hex":"#0c1414","weight":0.325,"lightness":0.0627,"saturation":0.25,"hue_group":"cyan"},{"hex":"#3c3c44","weight":0.2,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#545454","weight":0.2,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#047171","weight":0.125,"lightness":0.2294,"saturation":0.9316,"hue_group":"cyan"},{"hex":"#2c2c34","weight":0.075,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#646464","weight":0.075,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/disc_fragment_5.png","family":"disc_fragment_5","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:recovery_compass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silence_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ward_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_shard","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:dispenser","name":"Dispenser","entry_type":"block","description":"A dispenser is a low-capacity storage block that can fire projectiles, use certain items or tools or place certain blocks, fluids or entities when given a redstone signal. Items that do not have unique dispenser functions are instead ejected into the world.","history":[{"version":"1.2","status":"added","notes":"Added dispensers."}],"colors":{"primary":"#636262","dominant_hex":"#888888","average_hex":"#636262","hue_group":"neutral","lightness":0.3863,"saturation":0.0051,"palette":["#888888","#747474","#6c6c6c","#2f2f2f","#544c4c","#5c5c5c"],"color_groups":[{"hex":"#888888","weight":0.2109,"lightness":0.5333,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1797,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1758,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2f2f2f","weight":0.1719,"lightness":0.1843,"saturation":0.0,"hue_group":"neutral"},{"hex":"#544c4c","weight":0.1562,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1055,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dispenser_front_vertical.png","family":"dispenser","relations":[{"type":"visual_neighbors","target":"minecraft:dropper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:observer","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dropper","label":"Palette proche: Dropper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:furnace","label":"Palette proche: Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:observer","label":"Palette proche: Observer","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bedrock","label":"Palette proche: Bedrock","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:dropper","label":"Pont de nuance par palette: Dropper","confidence":0.86},{"type":"color_bridge","target":"minecraft:furnace","label":"Pont de nuance par palette: Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:observer","label":"Pont de nuance par palette: Observer","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:bedrock","label":"Pont de nuance par palette: Bedrock","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.582},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55}],"category":"redstone"},{"id":"minecraft:dolphin","name":"Dolphin","entry_type":"mob","description":"Dolphins are aquatic neutral mobs that live in non-frozen oceans. They grant a speed boost to players that swim near them and follow the player while swimming.","history":[{"version":"1.13 18w15a","status":"added","notes":"Added dolphins."},{"version":"1.21.2 24w33a","status":"added","notes":"Added baby variants of dolphins, to match parity with Bedrock Edition."},{"version":"wiki-history","status":"added","notes":"Added golden dandelions , which can be used to prevent baby dolphins from growing up."}],"colors":{"primary":"#aabcce","dominant_hex":"#bdd3dc","average_hex":"#aabcce","hue_group":"blue","lightness":0.7373,"saturation":0.2687,"palette":["#bdd3dc","#8b99b2","#a4bcd0","#b4c4dc","#9cb4cc","#b4c4cc"],"color_groups":[{"hex":"#bdd3dc","weight":0.3081,"lightness":0.802,"saturation":0.3069,"hue_group":"cyan"},{"hex":"#8b99b2","weight":0.1647,"lightness":0.6216,"saturation":0.2021,"hue_group":"blue"},{"hex":"#a4bcd0","weight":0.1522,"lightness":0.7294,"saturation":0.3188,"hue_group":"cyan"},{"hex":"#b4c4dc","weight":0.1419,"lightness":0.7843,"saturation":0.3636,"hue_group":"blue"},{"hex":"#9cb4cc","weight":0.1272,"lightness":0.7059,"saturation":0.32,"hue_group":"blue"},{"hex":"#b4c4cc","weight":0.1059,"lightness":0.7529,"saturation":0.1905,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/dolphin.png","family":"dolphin","relations":[{"type":"visual_neighbors","target":"minecraft:breeze","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_invulnerable","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/cyan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_wind","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/all_black","label":"Shared hue group: blue","confidence":0.55}],"category":"mob"},{"id":"minecraft:dolphin_spawn_egg","name":"Dolphin Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#7e90ac","dominant_hex":"#94abc5","average_hex":"#7e90ac","hue_group":"blue","lightness":0.5843,"saturation":0.217,"palette":["#94abc5","#c8d8ed","#5f6d88","#7d87a8","#2f4c81","#4c546c"],"color_groups":[{"hex":"#94abc5","weight":0.2599,"lightness":0.6765,"saturation":0.297,"hue_group":"blue"},{"hex":"#c8d8ed","weight":0.209,"lightness":0.8569,"saturation":0.5068,"hue_group":"blue"},{"hex":"#5f6d88","weight":0.1808,"lightness":0.4529,"saturation":0.1775,"hue_group":"blue"},{"hex":"#7d87a8","weight":0.1299,"lightness":0.5745,"saturation":0.1982,"hue_group":"blue"},{"hex":"#2f4c81","weight":0.1243,"lightness":0.3451,"saturation":0.4659,"hue_group":"blue"},{"hex":"#4c546c","weight":0.096,"lightness":0.3608,"saturation":0.1739,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/dolphin_spawn_egg.png","family":"dolphin_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_armor_trim_smithing_template","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lingering_potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_meal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_shard","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wind_charge","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:donkey","name":"Donkey","entry_type":"mob","description":"A donkey is a passive mob similar to a horse that, when tamed, can be saddled, ridden and equipped with a chest to transport items.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added donkeys, assisted by DrZhark (John Olarte), creator of the Mo' Creatures mod, whose horses are a baseline for Minecraft's donkey models . [ 1 ]"},{"version":"wiki-history","status":"added","notes":"Added leads , which can be used to leash tamed donkeys."},{"version":"13w21a","status":"added","notes":"Added a new GUI for donkeys, to control their saddle and inventory."}],"colors":{"primary":"#6c5f51","dominant_hex":"#8a755c","average_hex":"#6c5f51","hue_group":"yellow","lightness":0.3706,"saturation":0.1429,"palette":["#8a755c","#57483f","#201f1c","#6e6456","#64544b","#bcb4a5"],"color_groups":[{"hex":"#8a755c","weight":0.3247,"lightness":0.451,"saturation":0.2,"hue_group":"yellow"},{"hex":"#57483f","weight":0.1695,"lightness":0.2941,"saturation":0.16,"hue_group":"red"},{"hex":"#201f1c","weight":0.163,"lightness":0.1176,"saturation":0.0667,"hue_group":"neutral"},{"hex":"#6e6456","weight":0.1605,"lightness":0.3843,"saturation":0.1224,"hue_group":"yellow"},{"hex":"#64544b","weight":0.0965,"lightness":0.3431,"saturation":0.1429,"hue_group":"red"},{"hex":"#bcb4a5","weight":0.0858,"lightness":0.6922,"saturation":0.1465,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/donkey.png","family":"donkey","relations":[{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:donkey_spawn_egg","name":"Donkey Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#665a4f","dominant_hex":"#63534b","average_hex":"#665a4f","hue_group":"red","lightness":0.3549,"saturation":0.1271,"palette":["#63534b","#453e36","#907e6a","#272222","#846c5c","#c1bdb1"],"color_groups":[{"hex":"#63534b","weight":0.2108,"lightness":0.3412,"saturation":0.1379,"hue_group":"red"},{"hex":"#453e36","weight":0.1961,"lightness":0.2412,"saturation":0.122,"hue_group":"yellow"},{"hex":"#907e6a","weight":0.1961,"lightness":0.4902,"saturation":0.152,"hue_group":"yellow"},{"hex":"#272222","weight":0.1716,"lightness":0.1431,"saturation":0.0685,"hue_group":"neutral"},{"hex":"#846c5c","weight":0.1569,"lightness":0.4392,"saturation":0.1786,"hue_group":"red"},{"hex":"#c1bdb1","weight":0.0686,"lightness":0.7255,"saturation":0.1143,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/donkey_spawn_egg.png","family":"donkey_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:blue_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raiser_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_lava_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:writable_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:dragon","name":"Dragon","entry_type":"mob","description":"The ender dragon is a giant flying hostile boss mob found when first entering the End. It is the largest naturally spawning mob in the game. Its attacks involve charging at the player and shooting fireballs that create damaging effect clouds. The ender dragon can be re-summoned by placing four End crystals around the exit portal. Defeating the ender dragon the first time activates the exit portal which allows safe return to the Overworld. Each time it is defeated, an End gateway is created on the outskirts of the central island which can be used to teleport to the outer End islands.","history":[{"version":"1.0.0","status":"added","notes":"Added the ender dragon."},{"version":"Beta 1.9","status":"added","notes":"Added the ability for the ender dragon to take damage and die, which now has a unique animation. It still does not spawn naturally however."},{"version":"1.19.3 22w44a","status":"added","notes":"Added spawn eggs for ender dragons, which can be obtained only with commands as to avoid potential destruction of Creative builds. [ 5 ]"}],"colors":{"primary":"#262626","dominant_hex":"#1c1c1c","average_hex":"#262626","hue_group":"neutral","lightness":0.149,"saturation":0.0,"palette":["#1c1c1c","#141414","#0c0c0c","#747474","#8e8291","#4d4d4d"],"color_groups":[{"hex":"#1c1c1c","weight":0.5257,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1794,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#0c0c0c","weight":0.1402,"lightness":0.0471,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1002,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8e8291","weight":0.0408,"lightness":0.5392,"saturation":0.0638,"hue_group":"neutral"},{"hex":"#4d4d4d","weight":0.0137,"lightness":0.302,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/enderdragon/dragon.png","family":"dragon","relations":[{"type":"visual_neighbors","target":"minecraft:wither_skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enderman","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_blackdots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:dragon_breath","name":"Dragon Breath","entry_type":"item","description":"The dragon's breath is a brewing item that is used solely to make lingering potions.","history":[{"version":"1.9 15w33a","status":"added","notes":"Added dragon's breath."}],"colors":{"primary":"#b9a0be","dominant_hex":"#d491b3","average_hex":"#b9a0be","hue_group":"purple","lightness":0.6863,"saturation":0.1875,"palette":["#d491b3","#5c8cc4","#e4d9e9","#b5425d","#b4ccec","#f4ecec"],"color_groups":[{"hex":"#d491b3","weight":0.2152,"lightness":0.7,"saturation":0.4379,"hue_group":"purple"},{"hex":"#5c8cc4","weight":0.2025,"lightness":0.5647,"saturation":0.4685,"hue_group":"blue"},{"hex":"#e4d9e9","weight":0.2025,"lightness":0.8824,"saturation":0.2667,"hue_group":"purple"},{"hex":"#b5425d","weight":0.1772,"lightness":0.4843,"saturation":0.4656,"hue_group":"red"},{"hex":"#b4ccec","weight":0.1139,"lightness":0.8157,"saturation":0.5957,"hue_group":"blue"},{"hex":"#f4ecec","weight":0.0886,"lightness":0.9412,"saturation":0.2667,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/dragon_breath.png","family":"dragon_breath","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:end_crystal","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_bucket","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spire_armor_trim_smithing_template","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:popped_chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_shell","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_bundle","label":"Shared hue group: purple","confidence":0.55}],"category":"item"},{"id":"minecraft:dragon_egg","name":"Dragon Egg","entry_type":"block","description":"The dragon egg is a gravity-affected block that can be obtained only once per world (or twice in Bedrock Edition) by defeating the ender dragon. It teleports to avoid being mined, but drops as an item if it falls onto a non-full block such as a torch or is pushed by a piston.","history":[{"version":"1.0.0","status":"added","notes":"Added the dragon egg."}],"colors":{"primary":"#0d0910","dominant_hex":"#0c0c0c","average_hex":"#0d0910","hue_group":"purple","lightness":0.049,"saturation":0.28,"palette":["#0c0c0c","#141414","#2c0434"],"color_groups":[{"hex":"#0c0c0c","weight":0.6875,"lightness":0.0471,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.2422,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c0434","weight":0.0703,"lightness":0.1098,"saturation":0.8571,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dragon_egg.png","family":"dragon_egg","relations":[{"type":"visual_neighbors","target":"minecraft:chorus_plant","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_slab","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_stairs","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_pillar","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:coal_block","label":"Palette proche: Coal Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_stained_glass_pane","label":"Palette proche: Black Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_stained_glass","label":"Palette proche: Black Stained Glass","confidence":0.92},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.836},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.833},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.83},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.83},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.83},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.83},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Palette proche: Cracked Deepslate Bricks","confidence":0.807},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.781},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.781},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_bricks","label":"Pont de nuance par palette: Cracked Deepslate Bricks","confidence":0.841},{"type":"color_analogous","target":"minecraft:purple_shulker_box","label":"Couleurs analogues: Purple Shulker Box","confidence":0.935},{"type":"color_analogous","target":"minecraft:purple_candle","label":"Couleurs analogues: Purple Candle","confidence":0.93},{"type":"color_analogous","target":"minecraft:purple_stained_glass_pane","label":"Couleurs analogues: Purple Stained Glass Pane","confidence":0.908},{"type":"color_analogous","target":"minecraft:purple_concrete","label":"Couleurs analogues: Purple Concrete","confidence":0.905},{"type":"color_analogous","target":"minecraft:purple_glazed_terracotta","label":"Couleurs analogues: Purple Glazed Terracotta","confidence":0.898},{"type":"color_analogous","target":"minecraft:purple_stained_glass","label":"Couleurs analogues: Purple Stained Glass","confidence":0.895},{"type":"color_analogous","target":"minecraft:purple_carpet","label":"Couleurs analogues: Purple Carpet","confidence":0.873},{"type":"color_analogous","target":"minecraft:purple_wool","label":"Couleurs analogues: Purple Wool","confidence":0.873},{"type":"color_complement","target":"minecraft:dried_kelp_block","label":"Contraste complementaire: Dried Kelp Block","confidence":0.96},{"type":"color_complement","target":"minecraft:kelp","label":"Contraste complementaire: Kelp","confidence":0.95},{"type":"color_complement","target":"minecraft:jungle_sapling","label":"Contraste complementaire: Jungle Sapling","confidence":0.851},{"type":"color_complement","target":"minecraft:potted_jungle_sapling","label":"Contraste complementaire: Potted Jungle Sapling","confidence":0.851},{"type":"color_complement","target":"minecraft:lime_concrete","label":"Contraste complementaire: Lime Concrete","confidence":0.844},{"type":"color_complement","target":"minecraft:lily_of_the_valley","label":"Contraste complementaire: Lily Of The Valley","confidence":0.838},{"type":"color_complement","target":"minecraft:potted_lily_of_the_valley","label":"Contraste complementaire: Potted Lily Of The Valley","confidence":0.838},{"type":"color_complement","target":"minecraft:dark_oak_sapling","label":"Contraste complementaire: Dark Oak Sapling","confidence":0.836},{"type":"color_triad","target":"minecraft:dark_oak_hanging_sign","label":"Harmonie triadique: Dark Oak Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_oak_wall_hanging_sign","label":"Harmonie triadique: Dark Oak Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_dark_oak_log","label":"Harmonie triadique: Stripped Dark Oak Log","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_dark_oak_wood","label":"Harmonie triadique: Stripped Dark Oak Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:mangrove_roots","label":"Harmonie triadique: Mangrove Roots","confidence":0.96},{"type":"color_triad","target":"minecraft:dead_bush","label":"Harmonie triadique: Dead Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_dead_bush","label":"Harmonie triadique: Potted Dead Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:podzol","label":"Harmonie triadique: Podzol","confidence":0.96},{"type":"color_square","target":"minecraft:nether_quartz_ore","label":"Harmonie carree: Nether Quartz Ore","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_trapdoor","label":"Harmonie carree: Mangrove Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_button","label":"Harmonie carree: Mangrove Button","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_fence","label":"Harmonie carree: Mangrove Fence","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_fence_gate","label":"Harmonie carree: Mangrove Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_planks","label":"Harmonie carree: Mangrove Planks","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_pressure_plate","label":"Harmonie carree: Mangrove Pressure Plate","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_sign","label":"Harmonie carree: Mangrove Sign","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.88},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.848},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.825},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.813},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.813},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.797},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.781},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.772}],"category":""},{"id":"minecraft:dragon_exploding","name":"Dragon Exploding","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#ffffff","dominant_hex":"#fcfcfc","average_hex":"#ffffff","hue_group":"neutral","lightness":1.0,"saturation":0.0,"palette":["#fcfcfc"],"color_groups":[{"hex":"#fcfcfc","weight":1.0,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/enderdragon/dragon_exploding.png","family":"dragon_exploding","relations":[{"type":"visual_neighbors","target":"minecraft:horse/markings_white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitedots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:dragon_fireball","name":"Dragon Fireball","entry_type":"mob","description":"The ender dragon is a giant flying hostile boss mob found when first entering the End. It is the largest naturally spawning mob in the game. Its attacks involve charging at the player and shooting fireballs that create damaging effect clouds. The ender dragon can be re-summoned by placing four End crystals around the exit portal. Defeating the ender dragon the first time activates the exit portal which allows safe return to the Overworld. Each time it is defeated, an End gateway is created on the outskirts of the central island which can be used to teleport to the outer End islands.","history":[{"version":"1.0.0","status":"added","notes":"Added the ender dragon."},{"version":"Beta 1.9","status":"added","notes":"Added the ability for the ender dragon to take damage and die, which now has a unique animation. It still does not spawn naturally however."},{"version":"1.19.3 22w44a","status":"added","notes":"Added spawn eggs for ender dragons, which can be obtained only with commands as to avoid potential destruction of Creative builds. [ 5 ]"}],"colors":{"primary":"#5a4050","dominant_hex":"#624e52","average_hex":"#5a4050","hue_group":"purple","lightness":0.302,"saturation":0.1688,"palette":["#624e52","#b269bf","#1c1414","#4c442c","#342c2c","#2c2c24"],"color_groups":[{"hex":"#624e52","weight":0.2589,"lightness":0.3451,"saturation":0.1136,"hue_group":"neutral"},{"hex":"#b269bf","weight":0.2054,"lightness":0.5804,"saturation":0.4019,"hue_group":"purple"},{"hex":"#1c1414","weight":0.1696,"lightness":0.0941,"saturation":0.1667,"hue_group":"red"},{"hex":"#4c442c","weight":0.1518,"lightness":0.2353,"saturation":0.2667,"hue_group":"yellow"},{"hex":"#342c2c","weight":0.1161,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#2c2c24","weight":0.0982,"lightness":0.1569,"saturation":0.1,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/enderdragon/dragon_fireball.png","family":"dragon_fireball","relations":[{"type":"visual_neighbors","target":"minecraft:endermite","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_purple","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_magenta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/lucy","label":"Shared hue group: purple","confidence":0.55}],"category":"mob"},{"id":"minecraft:dragon_head","name":"Dragon Head","entry_type":"block","description":"A dragon head is a block that resembles a smaller version of the ender dragon's head. It can only be obtained from End ships.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added dragon heads."}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"dragon_head","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Palette proche: Wither Skeleton Wall Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:skeleton_skull","label":"Couleurs analogues: Skeleton Skull","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":"decorative"},{"id":"minecraft:dragon_wall_head","name":"Dragon Wall Head","entry_type":"block","description":"A dragon head is a block that resembles a smaller version of the ender dragon's head. It can only be obtained from End ships.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added dragon heads."}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"dragon_wall_head","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Palette proche: Wither Skeleton Wall Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:skeleton_skull","label":"Couleurs analogues: Skeleton Skull","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":"decorative"},{"id":"minecraft:dried_ghast","name":"Dried Ghast","entry_type":"block","description":"A dried ghast is an immobile, shriveled, harmless ghast in the form of a block. It can be found near Nether fossils or obtained through bartering or crafting. Placing it in water causes it to hydrate over time until it becomes a ghastling.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added dried ghasts."},{"version":"wiki-history","status":"added","notes":"added ( )."},{"version":"wiki-history","status":"added","notes":"Added footstep and placing sounds."}],"colors":{"primary":"#9f9191","dominant_hex":"#9c8c8c","average_hex":"#9f9191","hue_group":"neutral","lightness":0.5961,"saturation":0.068,"palette":["#9c8c8c","#ac9c9c","#747474","#848484"],"color_groups":[{"hex":"#9c8c8c","weight":0.4609,"lightness":0.5804,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#ac9c9c","weight":0.4102,"lightness":0.6431,"saturation":0.0879,"hue_group":"neutral"},{"hex":"#747474","weight":0.0859,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#848484","weight":0.043,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dried_ghast_hydration_0_top.png","family":"dried_ghast","relations":[{"type":"visual_neighbors","target":"minecraft:jungle_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeater","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:comparator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.939},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.938},{"type":"color_neighbors","target":"minecraft:short_grass","label":"Palette proche: Short Grass","confidence":0.938},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.931},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.931},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.931},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.931},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.931},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:lily_pad","label":"Pont de nuance par palette: Lily Pad","confidence":0.86},{"type":"color_bridge","target":"minecraft:short_grass","label":"Pont de nuance par palette: Short Grass","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_slab","label":"Contraste clair sombre: Deepslate Tile Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_stairs","label":"Contraste clair sombre: Deepslate Tile Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_wall","label":"Contraste clair sombre: Deepslate Tile Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tiles","label":"Contraste clair sombre: Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_deepslate_tiles","label":"Contraste clair sombre: Cracked Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55}],"category":""},{"id":"minecraft:dried_kelp","name":"Dried Kelp","entry_type":"item","description":"Dried kelp is a food item that can be eaten by the player. It can also be crafted into dried kelp blocks. A player can eat dried kelp twice as fast as any other food item.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added dried kelp."}],"colors":{"primary":"#322d24","dominant_hex":"#24241c","average_hex":"#322d24","hue_group":"yellow","lightness":0.1686,"saturation":0.1628,"palette":["#24241c","#0c0c0c","#3c3424","#443c34","#645c54"],"color_groups":[{"hex":"#24241c","weight":0.28,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#0c0c0c","weight":0.2333,"lightness":0.0471,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3424","weight":0.2067,"lightness":0.1882,"saturation":0.25,"hue_group":"yellow"},{"hex":"#443c34","weight":0.14,"lightness":0.2353,"saturation":0.1333,"hue_group":"yellow"},{"hex":"#645c54","weight":0.14,"lightness":0.3608,"saturation":0.087,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/dried_kelp.png","family":"dried_kelp","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:camel_husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:charcoal","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fishing_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:dried_kelp_block","name":"Dried Kelp Block","entry_type":"block","description":"Dried kelp blocks are storage blocks equivalent to nine dried kelp. They can also be used as fuel.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added dried kelp blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb dried kelp blocks, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#26311e","dominant_hex":"#242c14","average_hex":"#26311e","hue_group":"green","lightness":0.1549,"saturation":0.2405,"palette":["#242c14","#142414","#2c341c","#1c1c14","#2c3c24","#8b8b7b"],"color_groups":[{"hex":"#242c14","weight":0.4102,"lightness":0.1255,"saturation":0.375,"hue_group":"yellow"},{"hex":"#142414","weight":0.1641,"lightness":0.1098,"saturation":0.2857,"hue_group":"green"},{"hex":"#2c341c","weight":0.1484,"lightness":0.1569,"saturation":0.3,"hue_group":"yellow"},{"hex":"#1c1c14","weight":0.1289,"lightness":0.0941,"saturation":0.1667,"hue_group":"yellow"},{"hex":"#2c3c24","weight":0.0859,"lightness":0.1882,"saturation":0.25,"hue_group":"green"},{"hex":"#8b8b7b","weight":0.0625,"lightness":0.5137,"saturation":0.0645,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dried_kelp_side.png","family":"dried_kelp_block","relations":[{"type":"visual_neighbors","target":"minecraft:potted_spruce_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berry_bush","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_fungus","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_emerald_ore","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_wither_rose","label":"Palette proche: Potted Wither Rose","confidence":0.793},{"type":"color_neighbors","target":"minecraft:wither_rose","label":"Palette proche: Wither Rose","confidence":0.793},{"type":"color_neighbors","target":"minecraft:firefly_bush","label":"Palette proche: Firefly Bush","confidence":0.75},{"type":"color_neighbors","target":"minecraft:green_terracotta","label":"Palette proche: Green Terracotta","confidence":0.735},{"type":"color_neighbors","target":"minecraft:potted_spruce_sapling","label":"Palette proche: Potted Spruce Sapling","confidence":0.735},{"type":"color_neighbors","target":"minecraft:spruce_sapling","label":"Palette proche: Spruce Sapling","confidence":0.735},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.709},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.708},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.708},{"type":"color_neighbors","target":"minecraft:green_concrete","label":"Palette proche: Green Concrete","confidence":0.703},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.701},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.7},{"type":"color_bridge","target":"minecraft:firefly_bush","label":"Pont de nuance par palette: Firefly Bush","confidence":0.794},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.753},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.752},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.752},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.752},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.752},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.746},{"type":"color_bridge","target":"minecraft:coal_ore","label":"Pont de nuance par palette: Coal Ore","confidence":0.737},{"type":"color_bridge","target":"minecraft:tuff_brick_slab","label":"Pont de nuance par palette: Tuff Brick Slab","confidence":0.733},{"type":"color_bridge","target":"minecraft:tuff_brick_stairs","label":"Pont de nuance par palette: Tuff Brick Stairs","confidence":0.733},{"type":"color_analogous","target":"minecraft:kelp","label":"Couleurs analogues: Kelp","confidence":0.93},{"type":"color_analogous","target":"minecraft:jungle_sapling","label":"Couleurs analogues: Jungle Sapling","confidence":0.908},{"type":"color_analogous","target":"minecraft:potted_jungle_sapling","label":"Couleurs analogues: Potted Jungle Sapling","confidence":0.908},{"type":"color_analogous","target":"minecraft:tall_seagrass","label":"Couleurs analogues: Tall Seagrass","confidence":0.906},{"type":"color_analogous","target":"minecraft:seagrass","label":"Couleurs analogues: Seagrass","confidence":0.898},{"type":"color_analogous","target":"minecraft:potted_spruce_sapling","label":"Couleurs analogues: Potted Spruce Sapling","confidence":0.895},{"type":"color_analogous","target":"minecraft:spruce_sapling","label":"Couleurs analogues: Spruce Sapling","confidence":0.895},{"type":"color_analogous","target":"minecraft:dark_oak_sapling","label":"Couleurs analogues: Dark Oak Sapling","confidence":0.878},{"type":"color_complement","target":"minecraft:dragon_egg","label":"Contraste complementaire: Dragon Egg","confidence":0.96},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.946},{"type":"color_complement","target":"minecraft:purple_shulker_box","label":"Contraste complementaire: Purple Shulker Box","confidence":0.945},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.938},{"type":"color_complement","target":"minecraft:purple_candle","label":"Contraste complementaire: Purple Candle","confidence":0.937},{"type":"color_complement","target":"minecraft:purple_stained_glass","label":"Contraste complementaire: Purple Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.9},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.9},{"type":"color_triad","target":"minecraft:crimson_button","label":"Harmonie triadique: Crimson Button","confidence":0.96},{"type":"color_triad","target":"minecraft:crimson_fence","label":"Harmonie triadique: Crimson Fence","confidence":0.96},{"type":"color_triad","target":"minecraft:crimson_fence_gate","label":"Harmonie triadique: Crimson Fence Gate","confidence":0.96},{"type":"color_triad","target":"minecraft:crimson_planks","label":"Harmonie triadique: Crimson Planks","confidence":0.96},{"type":"color_triad","target":"minecraft:crimson_pressure_plate","label":"Harmonie triadique: Crimson Pressure Plate","confidence":0.96},{"type":"color_triad","target":"minecraft:crimson_sign","label":"Harmonie triadique: Crimson Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:crimson_slab","label":"Harmonie triadique: Crimson Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:crimson_stairs","label":"Harmonie triadique: Crimson Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:nether_quartz_ore","label":"Harmonie carree: Nether Quartz Ore","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_trapdoor","label":"Harmonie carree: Mangrove Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_button","label":"Harmonie carree: Mangrove Button","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_fence","label":"Harmonie carree: Mangrove Fence","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_fence_gate","label":"Harmonie carree: Mangrove Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_planks","label":"Harmonie carree: Mangrove Planks","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_pressure_plate","label":"Harmonie carree: Mangrove Pressure Plate","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_sign","label":"Harmonie carree: Mangrove Sign","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.781},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.725},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.709},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.709},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.696},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.674},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.673}],"category":"natural"},{"id":"minecraft:dripstone_block","name":"Dripstone Block","entry_type":"block","description":"Dripstone block is a rock block that allows pointed dripstone to grow beneath it.","history":[{"version":"1.17 20w48a","status":"added","notes":"Added dripstone blocks."},{"version":"26.2 snap1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb dripstone blocks, providing the football/regular effect to the mob."}],"colors":{"primary":"#866c5d","dominant_hex":"#947c64","average_hex":"#866c5d","hue_group":"red","lightness":0.4451,"saturation":0.1806,"palette":["#947c64","#846454","#745454","#a48c74","#644c44"],"color_groups":[{"hex":"#947c64","weight":0.3047,"lightness":0.4863,"saturation":0.1935,"hue_group":"red"},{"hex":"#846454","weight":0.2578,"lightness":0.4235,"saturation":0.2222,"hue_group":"red"},{"hex":"#745454","weight":0.1797,"lightness":0.3922,"saturation":0.16,"hue_group":"red"},{"hex":"#a48c74","weight":0.1641,"lightness":0.549,"saturation":0.2087,"hue_group":"yellow"},{"hex":"#644c44","weight":0.0938,"lightness":0.3294,"saturation":0.1905,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dripstone_block.png","family":"dripstone_block","relations":[{"type":"visual_neighbors","target":"minecraft:pointed_dripstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:detector_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewing_stand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pointed_dripstone","label":"Palette proche: Pointed Dripstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_brick_slab","label":"Palette proche: Mud Brick Slab","confidence":0.924},{"type":"color_neighbors","target":"minecraft:mud_brick_stairs","label":"Palette proche: Mud Brick Stairs","confidence":0.924},{"type":"color_neighbors","target":"minecraft:mud_brick_wall","label":"Palette proche: Mud Brick Wall","confidence":0.924},{"type":"color_neighbors","target":"minecraft:mud_bricks","label":"Palette proche: Mud Bricks","confidence":0.924},{"type":"color_neighbors","target":"minecraft:packed_mud","label":"Palette proche: Packed Mud","confidence":0.911},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.897},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.897},{"type":"color_neighbors","target":"minecraft:brown_mushroom_block","label":"Palette proche: Brown Mushroom Block","confidence":0.895},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.894},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.894},{"type":"color_neighbors","target":"minecraft:light_gray_terracotta","label":"Palette proche: Light Gray Terracotta","confidence":0.891},{"type":"color_bridge","target":"minecraft:mud_brick_slab","label":"Pont de nuance par sous-ton: Mud Brick Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:mud_brick_stairs","label":"Pont de nuance par sous-ton: Mud Brick Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:mud_brick_wall","label":"Pont de nuance par sous-ton: Mud Brick Wall","confidence":0.9},{"type":"color_bridge","target":"minecraft:mud_bricks","label":"Pont de nuance par sous-ton: Mud Bricks","confidence":0.9},{"type":"color_bridge","target":"minecraft:packed_mud","label":"Pont de nuance par sous-ton: Packed Mud","confidence":0.9},{"type":"color_bridge","target":"minecraft:brown_mushroom_block","label":"Pont de nuance par sous-ton: Brown Mushroom Block","confidence":0.9},{"type":"color_bridge","target":"minecraft:granite","label":"Pont de nuance par sous-ton: Granite","confidence":0.894},{"type":"color_bridge","target":"minecraft:granite_slab","label":"Pont de nuance par sous-ton: Granite Slab","confidence":0.894},{"type":"color_bridge","target":"minecraft:granite_stairs","label":"Pont de nuance par sous-ton: Granite Stairs","confidence":0.894},{"type":"color_bridge","target":"minecraft:granite_wall","label":"Pont de nuance par sous-ton: Granite Wall","confidence":0.894},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":""},{"id":"minecraft:dropper","name":"Dropper","entry_type":"block","description":"A dropper is a low-capacity storage block that can eject its contents into the world or into other containers when given a redstone signal.","history":[{"version":"1.5 13w03a","status":"added","notes":"Added droppers."}],"colors":{"primary":"#626161","dominant_hex":"#898989","average_hex":"#626161","hue_group":"neutral","lightness":0.3824,"saturation":0.0051,"palette":["#898989","#2e2e2e","#544c4c","#6c6c6c","#5c5c5c","#747474"],"color_groups":[{"hex":"#898989","weight":0.2148,"lightness":0.5373,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2e2e2e","weight":0.1719,"lightness":0.1804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#544c4c","weight":0.1562,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1562,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1523,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1484,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dropper_front_vertical.png","family":"dropper","relations":[{"type":"visual_neighbors","target":"minecraft:dispenser","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:observer","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.94},{"type":"color_neighbors","target":"minecraft:furnace","label":"Palette proche: Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:observer","label":"Palette proche: Observer","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bedrock","label":"Palette proche: Bedrock","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:dispenser","label":"Pont de nuance par palette: Dispenser","confidence":0.86},{"type":"color_bridge","target":"minecraft:furnace","label":"Pont de nuance par palette: Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:observer","label":"Pont de nuance par palette: Observer","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:bedrock","label":"Pont de nuance par palette: Bedrock","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.586},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.552},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55}],"category":"redstone"},{"id":"minecraft:drowned","name":"Drowned","entry_type":"mob","description":"Drowned are common neutral underwater zombie variants that spawn in oceans, rivers, and dripstone caves, or when zombies drown. They primarily attack through melee attacks, but may also come armed with tridents that they can throw at range. A baby drowned is referred to as a gurgle.","history":[{"version":"1.13 18w11a","status":"added","notes":"Added drowned mobs."}],"colors":{"primary":"#2f5b56","dominant_hex":"#24544c","average_hex":"#2f5b56","hue_group":"cyan","lightness":0.2706,"saturation":0.3188,"palette":["#24544c","#3c5c5c","#546c6c","#4cc3c2","#51897f","#34748c"],"color_groups":[{"hex":"#24544c","weight":0.761,"lightness":0.2353,"saturation":0.4,"hue_group":"cyan"},{"hex":"#3c5c5c","weight":0.0754,"lightness":0.298,"saturation":0.2105,"hue_group":"cyan"},{"hex":"#546c6c","weight":0.0741,"lightness":0.3765,"saturation":0.125,"hue_group":"cyan"},{"hex":"#4cc3c2","weight":0.0362,"lightness":0.5314,"saturation":0.4979,"hue_group":"cyan"},{"hex":"#51897f","weight":0.0349,"lightness":0.4275,"saturation":0.2569,"hue_group":"cyan"},{"hex":"#34748c","weight":0.0184,"lightness":0.3765,"saturation":0.4583,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/zombie/drowned.png","family":"drowned","relations":[{"type":"visual_neighbors","target":"minecraft:squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_bioluminescent_layer","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_1","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_2","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:drowned_spawn_egg","name":"Drowned Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#486c47","dominant_hex":"#53392c","average_hex":"#486c47","hue_group":"green","lightness":0.351,"saturation":0.2067,"palette":["#53392c","#54b196","#4f7571","#2a7e04","#2c1c14","#7c5c3c"],"color_groups":[{"hex":"#53392c","weight":0.2239,"lightness":0.249,"saturation":0.3071,"hue_group":"red"},{"hex":"#54b196","weight":0.2239,"lightness":0.5118,"saturation":0.3735,"hue_group":"cyan"},{"hex":"#4f7571","weight":0.194,"lightness":0.3843,"saturation":0.1939,"hue_group":"cyan"},{"hex":"#2a7e04","weight":0.1866,"lightness":0.2549,"saturation":0.9385,"hue_group":"green"},{"hex":"#2c1c14","weight":0.1045,"lightness":0.1255,"saturation":0.375,"hue_group":"red"},{"hex":"#7c5c3c","weight":0.0672,"lightness":0.3608,"saturation":0.3478,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/drowned_spawn_egg.png","family":"drowned_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_hoe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_cat","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_ball","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_axe","label":"Shared hue group: green","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:dune_armor_trim_smithing_template","name":"Dune Armor Trim Smithing Template","entry_type":"item","description":"Dune armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, sandstone, and seven diamonds.","history":[{"version":"1.19.4","status":"added","notes":"Added the dune armor trim smithing template behind the \"Update 1.20\" experimental data pack."}],"colors":{"primary":"#b3b58b","dominant_hex":"#e3e1be","average_hex":"#b3b58b","hue_group":"yellow","lightness":0.6275,"saturation":0.2211,"palette":["#e3e1be","#b49454","#d4c494","#846c34","#57d3da","#bca474"],"color_groups":[{"hex":"#e3e1be","weight":0.2667,"lightness":0.8176,"saturation":0.3978,"hue_group":"yellow"},{"hex":"#b49454","weight":0.1818,"lightness":0.5176,"saturation":0.3902,"hue_group":"yellow"},{"hex":"#d4c494","weight":0.1455,"lightness":0.7059,"saturation":0.4267,"hue_group":"yellow"},{"hex":"#846c34","weight":0.1394,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#57d3da","weight":0.1333,"lightness":0.598,"saturation":0.639,"hue_group":"cyan"},{"hex":"#bca474","weight":0.1333,"lightness":0.5961,"saturation":0.3495,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/dune_armor_trim_smithing_template.png","family":"dune_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mojang_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:eye_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bordure_indented_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:field_masoned_banner_pattern","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:echo_shard","name":"Echo Shard","entry_type":"item","description":"An echo shard is an item found only in ancient cities which can be used to craft recovery compasses.","history":[{"version":"1.19 22w14a","status":"added","notes":"Added echo shards."}],"colors":{"primary":"#0a343d","dominant_hex":"#141c24","average_hex":"#0a343d","hue_group":"cyan","lightness":0.1392,"saturation":0.7183,"palette":["#141c24","#042c34","#0c1414","#044454","#0c5464","#099d9f"],"color_groups":[{"hex":"#141c24","weight":0.2277,"lightness":0.1098,"saturation":0.2857,"hue_group":"blue"},{"hex":"#042c34","weight":0.2079,"lightness":0.1098,"saturation":0.8571,"hue_group":"cyan"},{"hex":"#0c1414","weight":0.1782,"lightness":0.0627,"saturation":0.25,"hue_group":"cyan"},{"hex":"#044454","weight":0.1683,"lightness":0.1725,"saturation":0.9091,"hue_group":"cyan"},{"hex":"#0c5464","weight":0.1386,"lightness":0.2196,"saturation":0.7857,"hue_group":"cyan"},{"hex":"#099d9f","weight":0.0792,"lightness":0.3294,"saturation":0.8929,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/echo_shard.png","family":"echo_shard","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:heart_of_the_sea","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_pearl","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_helmet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allay_spawn_egg","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:egg","name":"Egg","entry_type":"item","description":"An egg is an item that is dropped by chickens and can be used to craft food items, such as cake, and can be thrown for a chance to spawn baby chickens on impact. They have three variants based on the variant of the corresponding chicken: the standard egg for temperate chickens, brown egg for warm chickens, and blue egg for cold chickens.","history":[{"version":"v1.0.14","status":"added","notes":"Added eggs."},{"version":"1 ]","status":"added","notes":"added egg throwing. [ 1 ]"},{"version":"19w07a","status":"added","notes":"Added foxes , which sometimes spawn with eggs in their mouths."}],"colors":{"primary":"#ab9e78","dominant_hex":"#dccc9c","average_hex":"#ab9e78","hue_group":"yellow","lightness":0.5706,"saturation":0.2329,"palette":["#dccc9c","#b4a47c","#544c3c","#746c54","#8c845c","#f4e4c4"],"color_groups":[{"hex":"#dccc9c","weight":0.3556,"lightness":0.7373,"saturation":0.4776,"hue_group":"yellow"},{"hex":"#b4a47c","weight":0.2333,"lightness":0.5961,"saturation":0.2718,"hue_group":"yellow"},{"hex":"#544c3c","weight":0.1556,"lightness":0.2824,"saturation":0.1667,"hue_group":"yellow"},{"hex":"#746c54","weight":0.1556,"lightness":0.3922,"saturation":0.16,"hue_group":"yellow"},{"hex":"#8c845c","weight":0.0556,"lightness":0.4549,"saturation":0.2069,"hue_group":"yellow"},{"hex":"#f4e4c4","weight":0.0444,"lightness":0.8627,"saturation":0.6857,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/egg.png","family":"egg","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:trader_llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_porkchop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:eye_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:elder_guardian","name":"Elder Guardian","entry_type":"mob","description":"An elder guardian is a large hostile mob and a variant of the guardian. It is the largest and strongest aquatic mob. It attacks the same way as a normal guardian, and it also applies Mining Fatigue to players in a large radius around itself. They are only found in ocean monuments; three of them generate in each one.","history":[{"version":"1.8 14w25a","status":"added","notes":"Added elder guardians."}],"colors":{"primary":"#a39f8f","dominant_hex":"#aca494","average_hex":"#a39f8f","hue_group":"neutral","lightness":0.6,"saturation":0.098,"palette":["#aca494","#9d9d84","#b4b4a4","#8c8477","#c4c3b4","#454455"],"color_groups":[{"hex":"#aca494","weight":0.2748,"lightness":0.6275,"saturation":0.1263,"hue_group":"yellow"},{"hex":"#9d9d84","weight":0.2162,"lightness":0.5667,"saturation":0.1131,"hue_group":"neutral"},{"hex":"#b4b4a4","weight":0.1701,"lightness":0.6745,"saturation":0.0964,"hue_group":"neutral"},{"hex":"#8c8477","weight":0.1483,"lightness":0.5078,"saturation":0.0837,"hue_group":"neutral"},{"hex":"#c4c3b4","weight":0.1402,"lightness":0.7373,"saturation":0.1194,"hue_group":"neutral"},{"hex":"#454455","weight":0.0505,"lightness":0.3,"saturation":0.1111,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/guardian_elder.png","family":"elder_guardian","relations":[{"type":"visual_neighbors","target":"minecraft:vex_charging","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/warm","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/salt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/aggressive","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:elder_guardian_spawn_egg","name":"Elder Guardian Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#6f747a","dominant_hex":"#2a3868","average_hex":"#6f747a","hue_group":"neutral","lightness":0.4569,"saturation":0.0472,"palette":["#2a3868","#938b7f","#b0bbb2","#7c7464","#466490","#695b49"],"color_groups":[{"hex":"#2a3868","weight":0.1931,"lightness":0.2863,"saturation":0.4247,"hue_group":"blue"},{"hex":"#938b7f","weight":0.1881,"lightness":0.5373,"saturation":0.0847,"hue_group":"neutral"},{"hex":"#b0bbb2","weight":0.1782,"lightness":0.7118,"saturation":0.0748,"hue_group":"neutral"},{"hex":"#7c7464","weight":0.1535,"lightness":0.4392,"saturation":0.1071,"hue_group":"neutral"},{"hex":"#466490","weight":0.1485,"lightness":0.4196,"saturation":0.3458,"hue_group":"blue"},{"hex":"#695b49","weight":0.1386,"lightness":0.349,"saturation":0.1798,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/elder_guardian_spawn_egg.png","family":"elder_guardian_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:salmon_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nautilus_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:elytra","name":"Elytra","entry_type":"item","description":"Elytra are endgame equipment that can be found only in end ships, which are located in the outer islands of the End. While worn in the chest armor slot, they allow for gliding by pressing jump while midair. Firework rockets can be used as propulsion while gliding, allowing for true flight.","history":[{"version":"1.9 15w41a","status":"added","notes":"Added elytra."},{"version":"wiki-history","status":"added","notes":"Added the game rule disableElytraMovementCheck ."},{"version":"1.21.4 24w44a","status":"added","notes":"added as \"Elytra swooshes\"."}],"colors":{"primary":"#5f5f67","dominant_hex":"#83839d","average_hex":"#5f5f67","hue_group":"neutral","lightness":0.3882,"saturation":0.0404,"palette":["#83839d","#4c4c4c","#343434","#747474","#746c8c","#6c6c6c"],"color_groups":[{"hex":"#83839d","weight":0.2459,"lightness":0.5647,"saturation":0.1171,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.2377,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#343434","weight":0.2295,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1148,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#746c8c","weight":0.0984,"lightness":0.4863,"saturation":0.129,"hue_group":"blue"},{"hex":"#6c6c6c","weight":0.0738,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/elytra.png","family":"elytra","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_helmet","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:emerald","name":"Emerald","entry_type":"item","description":"Emeralds are minerals that are used primarily as the currency for trading with villagers and wandering traders.","history":[{"version":"1.3.1 12w21a","status":"added","notes":"Added emeralds and emerald ore ."},{"version":"wiki-history","status":"added","notes":"Added desert pyramids , with a hidden chest room and loot containing emeralds."},{"version":"wiki-history","status":"added","notes":"Added jungle pyramids , which contain loot chests with emeralds."}],"colors":{"primary":"#2da74f","dominant_hex":"#04610c","average_hex":"#2da74f","hue_group":"green","lightness":0.4157,"saturation":0.5755,"palette":["#04610c","#a7fac7","#04a52c","#14dc64","#042c04","#44f484"],"color_groups":[{"hex":"#04610c","weight":0.2292,"lightness":0.198,"saturation":0.9208,"hue_group":"green"},{"hex":"#a7fac7","weight":0.2188,"lightness":0.8176,"saturation":0.8925,"hue_group":"green"},{"hex":"#04a52c","weight":0.1771,"lightness":0.3314,"saturation":0.9527,"hue_group":"green"},{"hex":"#14dc64","weight":0.1667,"lightness":0.4706,"saturation":0.8333,"hue_group":"green"},{"hex":"#042c04","weight":0.1354,"lightness":0.0941,"saturation":0.8333,"hue_group":"green"},{"hex":"#44f484","weight":0.0729,"lightness":0.6118,"saturation":0.8889,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/emerald.png","family":"emerald","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:turtle_scute","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wheat_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_helmet","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_axe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator","label":"Shared hue group: green","confidence":0.55}],"category":"item"},{"id":"minecraft:emerald_block","name":"Emerald Block","entry_type":"block","description":"A block of emerald, internally known as an emerald block, is a mineral block equivalent to nine emeralds.","history":[{"version":"1.3.1 12w22a","status":"added","notes":"Added blocks of emerald."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of emerald, providing the football/regular effect to the mob."}],"colors":{"primary":"#2acb58","dominant_hex":"#14c444","average_hex":"#2acb58","hue_group":"green","lightness":0.4804,"saturation":0.6571,"palette":["#14c444","#1cac34","#14dc64","#44f484","#84f4ac","#1c9c2c"],"color_groups":[{"hex":"#14c444","weight":0.3047,"lightness":0.4235,"saturation":0.8148,"hue_group":"green"},{"hex":"#1cac34","weight":0.1836,"lightness":0.3922,"saturation":0.72,"hue_group":"green"},{"hex":"#14dc64","weight":0.1484,"lightness":0.4706,"saturation":0.8333,"hue_group":"green"},{"hex":"#44f484","weight":0.1367,"lightness":0.6118,"saturation":0.8889,"hue_group":"green"},{"hex":"#84f4ac","weight":0.1172,"lightness":0.7373,"saturation":0.8358,"hue_group":"green"},{"hex":"#1c9c2c","weight":0.1094,"lightness":0.3608,"saturation":0.6957,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/emerald_block.png","family":"emerald_block","relations":[{"type":"visual_neighbors","target":"minecraft:sunflower","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_propagule","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:wheat","label":"Palette proche: Wheat","confidence":0.684},{"type":"color_neighbors","target":"minecraft:nether_sprouts","label":"Palette proche: Nether Sprouts","confidence":0.58},{"type":"color_neighbors","target":"minecraft:twisting_vines","label":"Palette proche: Twisting Vines","confidence":0.58},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.58},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.58},{"type":"color_neighbors","target":"minecraft:diamond_block","label":"Palette proche: Diamond Block","confidence":0.58},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.58},{"type":"color_neighbors","target":"minecraft:lime_concrete","label":"Palette proche: Lime Concrete","confidence":0.58},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.58},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.58},{"type":"color_neighbors","target":"minecraft:carrots","label":"Palette proche: Carrots","confidence":0.58},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_block","label":"Pont de nuance par palette: Diamond Block","confidence":0.636},{"type":"color_bridge","target":"minecraft:lime_concrete","label":"Pont de nuance par palette: Lime Concrete","confidence":0.625},{"type":"color_bridge","target":"minecraft:emerald_ore","label":"Pont de nuance par sous-ton: Emerald Ore","confidence":0.598},{"type":"color_bridge","target":"minecraft:lime_shulker_box","label":"Pont de nuance par palette: Lime Shulker Box","confidence":0.596},{"type":"color_bridge","target":"minecraft:deepslate_emerald_ore","label":"Pont de nuance par sous-ton: Deepslate Emerald Ore","confidence":0.59},{"type":"color_bridge","target":"minecraft:lime_carpet","label":"Pont de nuance par palette: Lime Carpet","confidence":0.589},{"type":"color_bridge","target":"minecraft:lime_wool","label":"Pont de nuance par palette: Lime Wool","confidence":0.589},{"type":"color_bridge","target":"minecraft:warped_wart_block","label":"Pont de nuance par palette: Warped Wart Block","confidence":0.582},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.58},{"type":"color_analogous","target":"minecraft:sweet_berry_bush","label":"Couleurs analogues: Sweet Berry Bush","confidence":0.944},{"type":"color_analogous","target":"minecraft:wheat","label":"Couleurs analogues: Wheat","confidence":0.655},{"type":"color_analogous","target":"minecraft:oxidized_copper_lantern","label":"Couleurs analogues: Oxidized Copper Lantern","confidence":0.649},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_lantern","label":"Couleurs analogues: Waxed Oxidized Copper Lantern","confidence":0.649},{"type":"color_analogous","target":"minecraft:torchflower_crop","label":"Couleurs analogues: Torchflower Crop","confidence":0.6},{"type":"color_analogous","target":"minecraft:oxidized_chiseled_copper","label":"Couleurs analogues: Oxidized Chiseled Copper","confidence":0.56},{"type":"color_analogous","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Couleurs analogues: Waxed Oxidized Chiseled Copper","confidence":0.56},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.553},{"type":"color_complement","target":"minecraft:brain_coral","label":"Contraste complementaire: Brain Coral","confidence":0.741},{"type":"color_complement","target":"minecraft:brain_coral_fan","label":"Contraste complementaire: Brain Coral Fan","confidence":0.736},{"type":"color_complement","target":"minecraft:brain_coral_wall_fan","label":"Contraste complementaire: Brain Coral Wall Fan","confidence":0.736},{"type":"color_complement","target":"minecraft:brain_coral_block","label":"Contraste complementaire: Brain Coral Block","confidence":0.733},{"type":"color_complement","target":"minecraft:magenta_glazed_terracotta","label":"Contraste complementaire: Magenta Glazed Terracotta","confidence":0.713},{"type":"color_complement","target":"minecraft:pink_petals","label":"Contraste complementaire: Pink Petals","confidence":0.708},{"type":"color_complement","target":"minecraft:spore_blossom","label":"Contraste complementaire: Spore Blossom","confidence":0.686},{"type":"color_complement","target":"minecraft:magenta_concrete","label":"Contraste complementaire: Magenta Concrete","confidence":0.584},{"type":"color_triad","target":"minecraft:acacia_hanging_sign","label":"Harmonie triadique: Acacia Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_wall_hanging_sign","label":"Harmonie triadique: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_acacia_log","label":"Harmonie triadique: Stripped Acacia Log","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_acacia_wood","label":"Harmonie triadique: Stripped Acacia Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:magma_block","label":"Harmonie triadique: Magma Block","confidence":0.96},{"type":"color_triad","target":"minecraft:poppy","label":"Harmonie triadique: Poppy","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_poppy","label":"Harmonie triadique: Potted Poppy","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_square","target":"minecraft:blue_stained_glass_pane","label":"Harmonie carree: Blue Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:gold_block","label":"Harmonie carree: Gold Block","confidence":0.96},{"type":"color_square","target":"minecraft:light_weighted_pressure_plate","label":"Harmonie carree: Light Weighted Pressure Plate","confidence":0.96},{"type":"color_square","target":"minecraft:chiseled_sandstone","label":"Harmonie carree: Chiseled Sandstone","confidence":0.96},{"type":"color_square","target":"minecraft:sandstone","label":"Harmonie carree: Sandstone","confidence":0.96},{"type":"color_square","target":"minecraft:sandstone_wall","label":"Harmonie carree: Sandstone Wall","confidence":0.96},{"type":"color_square","target":"minecraft:cut_sandstone","label":"Harmonie carree: Cut Sandstone","confidence":0.96},{"type":"color_square","target":"minecraft:sand","label":"Harmonie carree: Sand","confidence":0.96},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55}],"category":"resource"},{"id":"minecraft:emerald_ore","name":"Emerald Ore","entry_type":"block","description":"Emerald ore is a rare mineral block that generates only in mountains and windswept hills biomes. It drops emeralds when mined, or itself if mined with a pickaxe with the Silk Touch enchantment. Deepslate emerald ore is a very rare variant of emerald ore that can generate in deepslate and tuff blobs.","history":[{"version":"1.3.1 12w21a","status":"added","notes":"Added emerald ore."},{"version":"21w10a","status":"added","notes":"Added deepslate variant of emerald ore, which does not generate naturally."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb emerald ore, providing the football/regular effect to the mob."}],"colors":{"primary":"#6c8874","dominant_hex":"#7c7c7c","average_hex":"#6c8874","hue_group":"neutral","lightness":0.4784,"saturation":0.1148,"palette":["#7c7c7c","#8da496","#747474","#10aa3b","#4c684e","#6c6c6c"],"color_groups":[{"hex":"#7c7c7c","weight":0.3008,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8da496","weight":0.2422,"lightness":0.598,"saturation":0.1122,"hue_group":"neutral"},{"hex":"#747474","weight":0.1797,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#10aa3b","weight":0.125,"lightness":0.3647,"saturation":0.828,"hue_group":"green"},{"hex":"#4c684e","weight":0.1094,"lightness":0.3529,"saturation":0.1556,"hue_group":"green"},{"hex":"#6c6c6c","weight":0.043,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/emerald_ore.png","family":"emerald_ore","relations":[{"type":"visual_neighbors","target":"minecraft:light_blue_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_lichen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tripwire_hook","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:deepslate_emerald_ore","label":"Palette proche: Deepslate Emerald Ore","confidence":0.851},{"type":"color_neighbors","target":"minecraft:tall_grass","label":"Palette proche: Tall Grass","confidence":0.844},{"type":"color_neighbors","target":"minecraft:diamond_ore","label":"Palette proche: Diamond Ore","confidence":0.829},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.811},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.811},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.811},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.811},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.807},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.807},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.807},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.807},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.807},{"type":"color_bridge","target":"minecraft:deepslate_emerald_ore","label":"Pont de nuance par palette: Deepslate Emerald Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:tall_grass","label":"Pont de nuance par palette: Tall Grass","confidence":0.86},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par palette: Diamond Ore","confidence":0.859},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.844},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.844},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.844},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.844},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.841},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.841},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.841},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55}],"category":"resource"},{"id":"minecraft:enchanted_book","name":"Enchanted Book","entry_type":"item","description":"An enchanted book is a type of book that stores one or more enchantments of any type. It can be applied to any valid item using an anvil, which enchants the item and consumes the book.","history":[{"version":"1.4.6 12w49a","status":"added","notes":"Added enchanted books."},{"version":"wiki-history","status":"added","notes":"added to the Creative inventory . All levels for each enchanted book can be found in the search tab, and only the maximum level in the Tools and Combat tabs."},{"version":"1.16 20w11a","status":"added","notes":"Added Soul Speed enchanted book, which increases player's speed on soul sand and soul soil . It can be obtained only via the bartering ."}],"colors":{"primary":"#664329","dominant_hex":"#82441f","average_hex":"#664329","hue_group":"red","lightness":0.2804,"saturation":0.4266,"palette":["#82441f","#532d14","#342404","#b2b2b2","#141404","#44240c"],"color_groups":[{"hex":"#82441f","weight":0.3618,"lightness":0.3157,"saturation":0.6149,"hue_group":"red"},{"hex":"#532d14","weight":0.1842,"lightness":0.202,"saturation":0.6117,"hue_group":"red"},{"hex":"#342404","weight":0.1382,"lightness":0.1098,"saturation":0.8571,"hue_group":"yellow"},{"hex":"#b2b2b2","weight":0.1382,"lightness":0.698,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141404","weight":0.0921,"lightness":0.0471,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#44240c","weight":0.0855,"lightness":0.1569,"saturation":0.7,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/enchanted_book.png","family":"enchanted_book","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cooked_beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:written_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_pigstep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_charge","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:enchanted_golden_apple","name":"Enchanted Golden Apple","entry_type":"item","description":"An enchanted golden apple is an uncraftable food item that, upon consumption, grants much more powerful effects than a regular golden apple. Despite its name and enchantment glint, enchanted golden apples do not actually have any enchantments.","history":[{"version":"1.3.1 12w21a","status":"added","notes":"Added a second tier of the golden apple that provides greater benefits, similar to the golden apple before 1.1."},{"version":"12w21b","status":"added","notes":"Added the enchanted golden apple to the Creative inventory ."},{"version":"wiki-history","status":"added","notes":"added to monster room , desert pyramid , and mineshaft chests."}],"colors":{"primary":"#bd8c29","dominant_hex":"#dca414","average_hex":"#bd8c29","hue_group":"yellow","lightness":0.451,"saturation":0.6435,"palette":["#dca414","#f0f177","#742c04","#eccc44","#b46414","#54180c"],"color_groups":[{"hex":"#dca414","weight":0.2895,"lightness":0.4706,"saturation":0.8333,"hue_group":"yellow"},{"hex":"#f0f177","weight":0.1754,"lightness":0.7059,"saturation":0.8133,"hue_group":"yellow"},{"hex":"#742c04","weight":0.1491,"lightness":0.2353,"saturation":0.9333,"hue_group":"red"},{"hex":"#eccc44","weight":0.1491,"lightness":0.5961,"saturation":0.8155,"hue_group":"yellow"},{"hex":"#b46414","weight":0.1228,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#54180c","weight":0.114,"lightness":0.1882,"saturation":0.75,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_apple.png","family":"enchanted_golden_apple","relations":[{"type":"related_sets","target":"group:food","label":"Related set: food","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_nautilus_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55}],"category":"food"},{"id":"minecraft:enchanting_table","name":"Enchanting Table","entry_type":"block","description":"An enchanting table is a block used to spend experience and lapis lazuli to apply enchantments to tools, armor and books. Surrounding it with up to fifteen bookshelves increases both its enchanting power and level requirement.","history":[{"version":"1.0.0","status":"added","notes":"Added enchantment tables. They have no name in the inventory."},{"version":"1.10 16w20a","status":"added","notes":"Added a sound for enchanting an item in the enchantment table."}],"colors":{"primary":"#814b55","dominant_hex":"#a42c2c","average_hex":"#814b55","hue_group":"red","lightness":0.4,"saturation":0.2647,"palette":["#a42c2c","#62162e","#bcf8ee","#6c042c","#41e1c9","#7c042c"],"color_groups":[{"hex":"#a42c2c","weight":0.2969,"lightness":0.4078,"saturation":0.5769,"hue_group":"red"},{"hex":"#62162e","weight":0.2656,"lightness":0.2353,"saturation":0.6333,"hue_group":"red"},{"hex":"#bcf8ee","weight":0.1406,"lightness":0.8549,"saturation":0.8108,"hue_group":"cyan"},{"hex":"#6c042c","weight":0.125,"lightness":0.2196,"saturation":0.9286,"hue_group":"red"},{"hex":"#41e1c9","weight":0.0938,"lightness":0.5686,"saturation":0.7273,"hue_group":"cyan"},{"hex":"#7c042c","weight":0.0781,"lightness":0.251,"saturation":0.9375,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/enchanting_table_top.png","family":"enchanting_table","relations":[{"type":"visual_neighbors","target":"minecraft:mud_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewing_stand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.67},{"type":"color_neighbors","target":"minecraft:crimson_roots","label":"Palette proche: Crimson Roots","confidence":0.634},{"type":"color_neighbors","target":"minecraft:potted_crimson_roots","label":"Palette proche: Potted Crimson Roots","confidence":0.633},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.62},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.616},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.616},{"type":"color_neighbors","target":"minecraft:fire_coral","label":"Palette proche: Fire Coral","confidence":0.613},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.611},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.611},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.608},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.604},{"type":"color_neighbors","target":"minecraft:red_glazed_terracotta","label":"Palette proche: Red Glazed Terracotta","confidence":0.592},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.645},{"type":"color_bridge","target":"minecraft:sniffer_egg","label":"Pont de nuance par palette: Sniffer Egg","confidence":0.639},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.63},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.63},{"type":"color_bridge","target":"minecraft:warped_hyphae","label":"Pont de nuance par sous-ton: Warped Hyphae","confidence":0.586},{"type":"color_bridge","target":"minecraft:warped_stem","label":"Pont de nuance par sous-ton: Warped Stem","confidence":0.586},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.58},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.58},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.58},{"type":"color_analogous","target":"minecraft:nether_brick_fence","label":"Couleurs analogues: Nether Brick Fence","confidence":0.941},{"type":"color_analogous","target":"minecraft:nether_brick_slab","label":"Couleurs analogues: Nether Brick Slab","confidence":0.941},{"type":"color_analogous","target":"minecraft:nether_brick_stairs","label":"Couleurs analogues: Nether Brick Stairs","confidence":0.941},{"type":"color_analogous","target":"minecraft:nether_brick_wall","label":"Couleurs analogues: Nether Brick Wall","confidence":0.941},{"type":"color_analogous","target":"minecraft:nether_bricks","label":"Couleurs analogues: Nether Bricks","confidence":0.941},{"type":"color_analogous","target":"minecraft:chiseled_nether_bricks","label":"Couleurs analogues: Chiseled Nether Bricks","confidence":0.932},{"type":"color_analogous","target":"minecraft:cracked_nether_bricks","label":"Couleurs analogues: Cracked Nether Bricks","confidence":0.924},{"type":"color_analogous","target":"minecraft:cactus_flower","label":"Couleurs analogues: Cactus Flower","confidence":0.913},{"type":"color_complement","target":"minecraft:prismarine_brick_slab","label":"Contraste complementaire: Prismarine Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_brick_stairs","label":"Contraste complementaire: Prismarine Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_bricks","label":"Contraste complementaire: Prismarine Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_nylium","label":"Contraste complementaire: Warped Nylium","confidence":0.96},{"type":"color_complement","target":"minecraft:twisting_vines","label":"Contraste complementaire: Twisting Vines","confidence":0.89},{"type":"color_complement","target":"minecraft:nether_sprouts","label":"Contraste complementaire: Nether Sprouts","confidence":0.854},{"type":"color_complement","target":"minecraft:warped_trapdoor","label":"Contraste complementaire: Warped Trapdoor","confidence":0.832},{"type":"color_complement","target":"minecraft:potted_warped_roots","label":"Contraste complementaire: Potted Warped Roots","confidence":0.824},{"type":"color_triad","target":"minecraft:blue_candle","label":"Harmonie triadique: Blue Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_glazed_terracotta","label":"Harmonie triadique: Blue Glazed Terracotta","confidence":0.957},{"type":"color_triad","target":"minecraft:slime_block","label":"Harmonie triadique: Slime Block","confidence":0.952},{"type":"color_triad","target":"minecraft:test_block","label":"Harmonie triadique: Test Block","confidence":0.951},{"type":"color_triad","target":"minecraft:blue_stained_glass","label":"Harmonie triadique: Blue Stained Glass","confidence":0.95},{"type":"color_triad","target":"minecraft:potatoes","label":"Harmonie triadique: Potatoes","confidence":0.94},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.931},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.869},{"type":"color_square","target":"minecraft:moss_block","label":"Harmonie carree: Moss Block","confidence":0.96},{"type":"color_square","target":"minecraft:moss_carpet","label":"Harmonie carree: Moss Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:green_shulker_box","label":"Harmonie carree: Green Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:green_concrete","label":"Harmonie carree: Green Concrete","confidence":0.955},{"type":"color_square","target":"minecraft:green_stained_glass","label":"Harmonie carree: Green Stained Glass","confidence":0.952},{"type":"color_square","target":"minecraft:green_candle","label":"Harmonie carree: Green Candle","confidence":0.95},{"type":"color_square","target":"minecraft:green_carpet","label":"Harmonie carree: Green Carpet","confidence":0.949},{"type":"color_square","target":"minecraft:green_wool","label":"Harmonie carree: Green Wool","confidence":0.949},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.56},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55}],"category":"utility"},{"id":"minecraft:end_crystal","name":"End Crystal","entry_type":"item","description":"An End crystal is an entity that can be crafted or found on the End's main island, where it heals the ender dragon. It can be placed only on obsidian or bedrock, and it explodes instantly when attacked or damaged in most ways.","history":[{"version":"1.0.0","status":"added","notes":"Added ender crystals."},{"version":"wiki-history","status":"added","notes":"Added crafting recipe for End crystals, making End crystals renewable ."}],"colors":{"primary":"#b692c2","dominant_hex":"#bc94d4","average_hex":"#b692c2","hue_group":"purple","lightness":0.6667,"saturation":0.2824,"palette":["#bc94d4","#87195e","#acd1d4","#944cbc","#fcfcfc","#d0b8de"],"color_groups":[{"hex":"#bc94d4","weight":0.1875,"lightness":0.7059,"saturation":0.4267,"hue_group":"purple"},{"hex":"#87195e","weight":0.1806,"lightness":0.3137,"saturation":0.6875,"hue_group":"purple"},{"hex":"#acd1d4","weight":0.1806,"lightness":0.7529,"saturation":0.3175,"hue_group":"cyan"},{"hex":"#944cbc","weight":0.1736,"lightness":0.5176,"saturation":0.4553,"hue_group":"purple"},{"hex":"#fcfcfc","weight":0.1597,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d0b8de","weight":0.1181,"lightness":0.7961,"saturation":0.3654,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/end_crystal.png","family":"end_crystal","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:dragon_breath","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spire_armor_trim_smithing_template","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_bucket","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_shell","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:popped_chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_bundle","label":"Shared hue group: purple","confidence":0.55}],"category":"item"},{"id":"minecraft:end_gateway","name":"End Gateway","entry_type":"block","description":"End gateways are intradimensional portals generated in the End: some are spawned around the central island after each death of the ender dragon; others are randomly generated throughout the outer islands. On the central island, up to 20 gateways can be spawned. These can send the player far away to the outer islands, each of which has a corresponding gateway that returns the player back to the central island. There are other randomly-generated gateways that always lead the player back to the End platform. They provide quick access to the different parts of the End dimension.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added End gateways."}],"colors":{"primary":"#0f0b19","dominant_hex":"#04040c","average_hex":"#0f0b19","hue_group":"blue","lightness":0.0706,"saturation":0.3889,"palette":["#04040c","#140c1c","#040404","#241c3c","#3c2454"],"color_groups":[{"hex":"#04040c","weight":0.293,"lightness":0.0314,"saturation":0.5,"hue_group":"blue"},{"hex":"#140c1c","weight":0.2578,"lightness":0.0784,"saturation":0.4,"hue_group":"purple"},{"hex":"#040404","weight":0.25,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#241c3c","weight":0.125,"lightness":0.1725,"saturation":0.3636,"hue_group":"blue"},{"hex":"#3c2454","weight":0.0742,"lightness":0.2353,"saturation":0.4,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/obsidian.png","family":"end_gateway","relations":[{"type":"visual_neighbors","target":"minecraft:end_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_chest","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:obsidian","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:respawn_anchor","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spawner","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chain","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crying_obsidian","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:end_portal","label":"Palette proche: End Portal","confidence":0.94},{"type":"color_neighbors","target":"minecraft:ender_chest","label":"Palette proche: Ender Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:obsidian","label":"Palette proche: Obsidian","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crying_obsidian","label":"Palette proche: Crying Obsidian","confidence":0.909},{"type":"color_neighbors","target":"minecraft:respawn_anchor","label":"Palette proche: Respawn Anchor","confidence":0.83},{"type":"color_neighbors","target":"minecraft:black_concrete","label":"Palette proche: Black Concrete","confidence":0.745},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.733},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.721},{"type":"color_neighbors","target":"minecraft:coal_block","label":"Palette proche: Coal Block","confidence":0.713},{"type":"color_neighbors","target":"minecraft:black_carpet","label":"Palette proche: Black Carpet","confidence":0.696},{"type":"color_neighbors","target":"minecraft:black_wool","label":"Palette proche: Black Wool","confidence":0.696},{"type":"color_neighbors","target":"minecraft:dragon_egg","label":"Palette proche: Dragon Egg","confidence":0.694},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.78},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.771},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.764},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par sous-ton: Black Carpet","confidence":0.75},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par sous-ton: Black Wool","confidence":0.75},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par sous-ton: Tinted Glass","confidence":0.738},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.723},{"type":"color_bridge","target":"minecraft:jigsaw","label":"Pont de nuance par sous-ton: Jigsaw","confidence":0.72},{"type":"color_bridge","target":"minecraft:structure_block","label":"Pont de nuance par sous-ton: Structure Block","confidence":0.711},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.706},{"type":"color_analogous","target":"minecraft:end_portal","label":"Couleurs analogues: End Portal","confidence":0.96},{"type":"color_analogous","target":"minecraft:ender_chest","label":"Couleurs analogues: Ender Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:obsidian","label":"Couleurs analogues: Obsidian","confidence":0.96},{"type":"color_analogous","target":"minecraft:repeating_command_block","label":"Couleurs analogues: Repeating Command Block","confidence":0.89},{"type":"color_analogous","target":"minecraft:respawn_anchor","label":"Couleurs analogues: Respawn Anchor","confidence":0.833},{"type":"color_analogous","target":"minecraft:small_amethyst_bud","label":"Couleurs analogues: Small Amethyst Bud","confidence":0.808},{"type":"color_analogous","target":"minecraft:amethyst_block","label":"Couleurs analogues: Amethyst Block","confidence":0.766},{"type":"color_analogous","target":"minecraft:budding_amethyst","label":"Couleurs analogues: Budding Amethyst","confidence":0.757},{"type":"color_complement","target":"minecraft:cave_vines","label":"Contraste complementaire: Cave Vines","confidence":0.96},{"type":"color_complement","target":"minecraft:green_concrete_powder","label":"Contraste complementaire: Green Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_azalea_bush","label":"Contraste complementaire: Potted Azalea Bush","confidence":0.96},{"type":"color_complement","target":"minecraft:azalea","label":"Contraste complementaire: Azalea","confidence":0.96},{"type":"color_complement","target":"minecraft:melon","label":"Contraste complementaire: Melon","confidence":0.953},{"type":"color_complement","target":"minecraft:green_carpet","label":"Contraste complementaire: Green Carpet","confidence":0.941},{"type":"color_complement","target":"minecraft:green_wool","label":"Contraste complementaire: Green Wool","confidence":0.941},{"type":"color_complement","target":"minecraft:green_candle","label":"Contraste complementaire: Green Candle","confidence":0.933},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:poppy","label":"Harmonie triadique: Poppy","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_poppy","label":"Harmonie triadique: Potted Poppy","confidence":0.96},{"type":"color_triad","target":"minecraft:magma_block","label":"Harmonie triadique: Magma Block","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_hanging_sign","label":"Harmonie triadique: Acacia Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_wall_hanging_sign","label":"Harmonie triadique: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_acacia_log","label":"Harmonie triadique: Stripped Acacia Log","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_acacia_wood","label":"Harmonie triadique: Stripped Acacia Wood","confidence":0.96},{"type":"color_square","target":"minecraft:cracked_nether_bricks","label":"Harmonie carree: Cracked Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_brick_slab","label":"Harmonie carree: Prismarine Brick Slab","confidence":0.937},{"type":"color_square","target":"minecraft:prismarine_brick_stairs","label":"Harmonie carree: Prismarine Brick Stairs","confidence":0.937},{"type":"color_square","target":"minecraft:prismarine_bricks","label":"Harmonie carree: Prismarine Bricks","confidence":0.937},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.917},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.917},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.914},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.914},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.855},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.821},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.799},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.791},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.791},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.776},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.76},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.746}],"category":""},{"id":"minecraft:end_portal","name":"End Portal","entry_type":"block","description":"An End portal is a naturally occurring generated structure that is used to travel into the End. It can only be found in the portal room of a stronghold.","history":[{"version":"1.12 17w17a","status":"added","notes":"Added new sounds when placing eyes of ender to the portal frames and when activating the portal."},{"version":"1.19.3 22w44a","status":"added","notes":"Added the gamerule globalSoundEvents , which prevents the End portal's activation sound from playing when disabled."}],"colors":{"primary":"#0f0b19","dominant_hex":"#04040c","average_hex":"#0f0b19","hue_group":"blue","lightness":0.0706,"saturation":0.3889,"palette":["#04040c","#140c1c","#040404","#241c3c","#3c2454"],"color_groups":[{"hex":"#04040c","weight":0.293,"lightness":0.0314,"saturation":0.5,"hue_group":"blue"},{"hex":"#140c1c","weight":0.2578,"lightness":0.0784,"saturation":0.4,"hue_group":"purple"},{"hex":"#040404","weight":0.25,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#241c3c","weight":0.125,"lightness":0.1725,"saturation":0.3636,"hue_group":"blue"},{"hex":"#3c2454","weight":0.0742,"lightness":0.2353,"saturation":0.4,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/obsidian.png","family":"end_portal","relations":[{"type":"visual_neighbors","target":"minecraft:end_gateway","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_chest","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:obsidian","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:respawn_anchor","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spawner","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chain","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crying_obsidian","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:end_gateway","label":"Palette proche: End Gateway","confidence":0.94},{"type":"color_neighbors","target":"minecraft:ender_chest","label":"Palette proche: Ender Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:obsidian","label":"Palette proche: Obsidian","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crying_obsidian","label":"Palette proche: Crying Obsidian","confidence":0.909},{"type":"color_neighbors","target":"minecraft:respawn_anchor","label":"Palette proche: Respawn Anchor","confidence":0.83},{"type":"color_neighbors","target":"minecraft:black_concrete","label":"Palette proche: Black Concrete","confidence":0.745},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.733},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.721},{"type":"color_neighbors","target":"minecraft:coal_block","label":"Palette proche: Coal Block","confidence":0.713},{"type":"color_neighbors","target":"minecraft:black_carpet","label":"Palette proche: Black Carpet","confidence":0.696},{"type":"color_neighbors","target":"minecraft:black_wool","label":"Palette proche: Black Wool","confidence":0.696},{"type":"color_neighbors","target":"minecraft:dragon_egg","label":"Palette proche: Dragon Egg","confidence":0.694},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.78},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.771},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.764},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par sous-ton: Black Carpet","confidence":0.75},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par sous-ton: Black Wool","confidence":0.75},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par sous-ton: Tinted Glass","confidence":0.738},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.723},{"type":"color_bridge","target":"minecraft:jigsaw","label":"Pont de nuance par sous-ton: Jigsaw","confidence":0.72},{"type":"color_bridge","target":"minecraft:structure_block","label":"Pont de nuance par sous-ton: Structure Block","confidence":0.711},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.706},{"type":"color_analogous","target":"minecraft:end_gateway","label":"Couleurs analogues: End Gateway","confidence":0.96},{"type":"color_analogous","target":"minecraft:ender_chest","label":"Couleurs analogues: Ender Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:obsidian","label":"Couleurs analogues: Obsidian","confidence":0.96},{"type":"color_analogous","target":"minecraft:repeating_command_block","label":"Couleurs analogues: Repeating Command Block","confidence":0.89},{"type":"color_analogous","target":"minecraft:respawn_anchor","label":"Couleurs analogues: Respawn Anchor","confidence":0.833},{"type":"color_analogous","target":"minecraft:small_amethyst_bud","label":"Couleurs analogues: Small Amethyst Bud","confidence":0.808},{"type":"color_analogous","target":"minecraft:amethyst_block","label":"Couleurs analogues: Amethyst Block","confidence":0.766},{"type":"color_analogous","target":"minecraft:budding_amethyst","label":"Couleurs analogues: Budding Amethyst","confidence":0.757},{"type":"color_complement","target":"minecraft:cave_vines","label":"Contraste complementaire: Cave Vines","confidence":0.96},{"type":"color_complement","target":"minecraft:green_concrete_powder","label":"Contraste complementaire: Green Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_azalea_bush","label":"Contraste complementaire: Potted Azalea Bush","confidence":0.96},{"type":"color_complement","target":"minecraft:azalea","label":"Contraste complementaire: Azalea","confidence":0.96},{"type":"color_complement","target":"minecraft:melon","label":"Contraste complementaire: Melon","confidence":0.953},{"type":"color_complement","target":"minecraft:green_carpet","label":"Contraste complementaire: Green Carpet","confidence":0.941},{"type":"color_complement","target":"minecraft:green_wool","label":"Contraste complementaire: Green Wool","confidence":0.941},{"type":"color_complement","target":"minecraft:green_candle","label":"Contraste complementaire: Green Candle","confidence":0.933},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:poppy","label":"Harmonie triadique: Poppy","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_poppy","label":"Harmonie triadique: Potted Poppy","confidence":0.96},{"type":"color_triad","target":"minecraft:magma_block","label":"Harmonie triadique: Magma Block","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_hanging_sign","label":"Harmonie triadique: Acacia Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_wall_hanging_sign","label":"Harmonie triadique: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_acacia_log","label":"Harmonie triadique: Stripped Acacia Log","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_acacia_wood","label":"Harmonie triadique: Stripped Acacia Wood","confidence":0.96},{"type":"color_square","target":"minecraft:cracked_nether_bricks","label":"Harmonie carree: Cracked Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_brick_slab","label":"Harmonie carree: Prismarine Brick Slab","confidence":0.937},{"type":"color_square","target":"minecraft:prismarine_brick_stairs","label":"Harmonie carree: Prismarine Brick Stairs","confidence":0.937},{"type":"color_square","target":"minecraft:prismarine_bricks","label":"Harmonie carree: Prismarine Bricks","confidence":0.937},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.917},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.917},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.914},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.914},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.855},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.821},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.799},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.791},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.791},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.776},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.76},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.746}],"category":""},{"id":"minecraft:end_portal_frame","name":"End Portal Frame","entry_type":"block","description":"An End portal frame is an indestructible block, 12 of which form an End portal. Eyes of ender must be inserted into all 12 empty frames (if not already present upon generation) for the portal to activate and allow passage into the End dimension.","history":[{"version":"1.0.0","status":"added","notes":"Added End portal frames. Frames have a cross model and filled End portal frames have a cube model; both have a full cube hitbox."}],"colors":{"primary":"#5b7961","dominant_hex":"#447464","average_hex":"#5b7961","hue_group":"green","lightness":0.4157,"saturation":0.1415,"palette":["#447464","#b5bb85","#2c5c4c","#041a12","#e9eeb6","#24443c"],"color_groups":[{"hex":"#447464","weight":0.3281,"lightness":0.3608,"saturation":0.2609,"hue_group":"cyan"},{"hex":"#b5bb85","weight":0.1953,"lightness":0.6275,"saturation":0.2842,"hue_group":"yellow"},{"hex":"#2c5c4c","weight":0.1523,"lightness":0.2667,"saturation":0.3529,"hue_group":"cyan"},{"hex":"#041a12","weight":0.1406,"lightness":0.0588,"saturation":0.7333,"hue_group":"cyan"},{"hex":"#e9eeb6","weight":0.1016,"lightness":0.8235,"saturation":0.6222,"hue_group":"yellow"},{"hex":"#24443c","weight":0.082,"lightness":0.2039,"saturation":0.3077,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/end_portal_frame_top.png","family":"end_portal_frame","relations":[{"type":"visual_neighbors","target":"minecraft:pitcher_plant","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_emerald_ore","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.761},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.761},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Palette proche: Waxed Weathered Copper Bars","confidence":0.702},{"type":"color_neighbors","target":"minecraft:weathered_copper_bars","label":"Palette proche: Weathered Copper Bars","confidence":0.702},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bars","label":"Palette proche: Oxidized Copper Bars","confidence":0.7},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Palette proche: Waxed Oxidized Copper Bars","confidence":0.7},{"type":"color_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Palette proche: Oxidized Copper Lantern","confidence":0.698},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_lantern","label":"Palette proche: Waxed Oxidized Copper Lantern","confidence":0.698},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Palette proche: Waxed Weathered Copper Lantern","confidence":0.697},{"type":"color_neighbors","target":"minecraft:weathered_copper_lantern","label":"Palette proche: Weathered Copper Lantern","confidence":0.697},{"type":"color_neighbors","target":"minecraft:turtle_egg","label":"Palette proche: Turtle Egg","confidence":0.693},{"type":"color_neighbors","target":"minecraft:dark_prismarine","label":"Palette proche: Dark Prismarine","confidence":0.684},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par palette: Waxed Weathered Copper Chain","confidence":0.804},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par palette: Weathered Copper Chain","confidence":0.804},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par palette: Waxed Weathered Copper Bars","confidence":0.754},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par palette: Weathered Copper Bars","confidence":0.754},{"type":"color_bridge","target":"minecraft:oxidized_copper_bars","label":"Pont de nuance par sous-ton: Oxidized Copper Bars","confidence":0.753},{"type":"color_bridge","target":"minecraft:waxed_oxidized_copper_bars","label":"Pont de nuance par sous-ton: Waxed Oxidized Copper Bars","confidence":0.753},{"type":"color_bridge","target":"minecraft:oxidized_copper_lantern","label":"Pont de nuance par sous-ton: Oxidized Copper Lantern","confidence":0.751},{"type":"color_bridge","target":"minecraft:waxed_oxidized_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Oxidized Copper Lantern","confidence":0.751},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par palette: Waxed Weathered Copper Lantern","confidence":0.75},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par palette: Weathered Copper Lantern","confidence":0.75},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55}],"category":""},{"id":"minecraft:end_rod","name":"End Rod","entry_type":"block","description":"An End rod is a decorative light source that emits white particles.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added End rods."},{"version":"15w44b","status":"added","notes":"Added crafting recipe for End rods."}],"colors":{"primary":"#d0c6bb","dominant_hex":"#f5e8cc","average_hex":"#d0c6bb","hue_group":"yellow","lightness":0.7745,"saturation":0.1826,"palette":["#f5e8cc","#8c847c","#fbf4e2","#fcfbfb","#b4acac","#746464"],"color_groups":[{"hex":"#f5e8cc","weight":0.2586,"lightness":0.8804,"saturation":0.6721,"hue_group":"yellow"},{"hex":"#8c847c","weight":0.1724,"lightness":0.5176,"saturation":0.065,"hue_group":"neutral"},{"hex":"#fbf4e2","weight":0.1724,"lightness":0.9353,"saturation":0.7576,"hue_group":"yellow"},{"hex":"#fcfbfb","weight":0.1552,"lightness":0.9863,"saturation":0.1429,"hue_group":"red"},{"hex":"#b4acac","weight":0.1379,"lightness":0.6902,"saturation":0.0506,"hue_group":"neutral"},{"hex":"#746464","weight":0.1034,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/end_rod.png","family":"end_rod","relations":[{"type":"visual_neighbors","target":"minecraft:mushroom_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sculk_shrieker","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_pillar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:conduit","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.794},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.794},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.794},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.794},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.794},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.794},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.794},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.794},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.794},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.794},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.794},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.794},{"type":"color_bridge","target":"minecraft:black_candle_cake","label":"Pont de nuance par sous-ton: Black Candle Cake","confidence":0.83},{"type":"color_bridge","target":"minecraft:blue_candle_cake","label":"Pont de nuance par sous-ton: Blue Candle Cake","confidence":0.83},{"type":"color_bridge","target":"minecraft:brown_candle_cake","label":"Pont de nuance par sous-ton: Brown Candle Cake","confidence":0.83},{"type":"color_bridge","target":"minecraft:cake","label":"Pont de nuance par sous-ton: Cake","confidence":0.83},{"type":"color_bridge","target":"minecraft:candle_cake","label":"Pont de nuance par sous-ton: Candle Cake","confidence":0.83},{"type":"color_bridge","target":"minecraft:cyan_candle_cake","label":"Pont de nuance par sous-ton: Cyan Candle Cake","confidence":0.83},{"type":"color_bridge","target":"minecraft:gray_candle_cake","label":"Pont de nuance par sous-ton: Gray Candle Cake","confidence":0.83},{"type":"color_bridge","target":"minecraft:green_candle_cake","label":"Pont de nuance par sous-ton: Green Candle Cake","confidence":0.83},{"type":"color_bridge","target":"minecraft:light_blue_candle_cake","label":"Pont de nuance par sous-ton: Light Blue Candle Cake","confidence":0.83},{"type":"color_bridge","target":"minecraft:light_gray_candle_cake","label":"Pont de nuance par sous-ton: Light Gray Candle Cake","confidence":0.83},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.668},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.665},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.663},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.642},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.642},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.642},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.642},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.636}],"category":""},{"id":"minecraft:end_stone","name":"End Stone","entry_type":"block","description":"End stone is a block that appears in the End and, apart from generated structures, makes up all of the solid ground that exists in that dimension.","history":[{"version":"1.0.0","status":"added","notes":"added to the terrain.png presumably to be used as End stone; however it wasn't used by any block at the time. Language files from 1.1 suggest this texture to be the original texture for End stone, as the internal name an"},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb end stone, providing the football/regular effect to the mob."}],"colors":{"primary":"#dcdf9e","dominant_hex":"#d4dc94","average_hex":"#dcdf9e","hue_group":"yellow","lightness":0.7471,"saturation":0.5039,"palette":["#d4dc94","#ecf4b4","#dce4a4","#ccc48c","#c4bc8c","#f4fcbc"],"color_groups":[{"hex":"#d4dc94","weight":0.293,"lightness":0.7216,"saturation":0.507,"hue_group":"yellow"},{"hex":"#ecf4b4","weight":0.2383,"lightness":0.8314,"saturation":0.7442,"hue_group":"yellow"},{"hex":"#dce4a4","weight":0.1914,"lightness":0.7686,"saturation":0.5424,"hue_group":"yellow"},{"hex":"#ccc48c","weight":0.1445,"lightness":0.6745,"saturation":0.3855,"hue_group":"yellow"},{"hex":"#c4bc8c","weight":0.0898,"lightness":0.6588,"saturation":0.3218,"hue_group":"yellow"},{"hex":"#f4fcbc","weight":0.043,"lightness":0.8627,"saturation":0.9143,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/end_stone.png","family":"end_stone","relations":[{"type":"visual_neighbors","target":"minecraft:end_stone_brick_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:end_stone_brick_slab","label":"Palette proche: End Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Palette proche: End Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone_brick_wall","label":"Palette proche: End Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone_bricks","label":"Palette proche: End Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.796},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.791},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.791},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.79},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.781},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.781},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.781},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.781},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.711},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.662},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.658},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.623},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.621},{"type":"color_bridge","target":"minecraft:jungle_leaves","label":"Pont de nuance par palette: Jungle Leaves","confidence":0.616},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.612},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.609},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_fan","label":"Pont de nuance par palette: Dead Bubble Coral Fan","confidence":0.606},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_wall_fan","label":"Pont de nuance par palette: Dead Bubble Coral Wall Fan","confidence":0.606},{"type":"color_analogous","target":"minecraft:end_stone_brick_slab","label":"Couleurs analogues: End Stone Brick Slab","confidence":0.931},{"type":"color_analogous","target":"minecraft:end_stone_brick_stairs","label":"Couleurs analogues: End Stone Brick Stairs","confidence":0.931},{"type":"color_analogous","target":"minecraft:end_stone_brick_wall","label":"Couleurs analogues: End Stone Brick Wall","confidence":0.931},{"type":"color_analogous","target":"minecraft:end_stone_bricks","label":"Couleurs analogues: End Stone Bricks","confidence":0.931},{"type":"color_analogous","target":"minecraft:cocoa","label":"Couleurs analogues: Cocoa","confidence":0.903},{"type":"color_analogous","target":"minecraft:yellow_stained_glass","label":"Couleurs analogues: Yellow Stained Glass","confidence":0.899},{"type":"color_analogous","target":"minecraft:yellow_stained_glass_pane","label":"Couleurs analogues: Yellow Stained Glass Pane","confidence":0.895},{"type":"color_analogous","target":"minecraft:wet_sponge","label":"Couleurs analogues: Wet Sponge","confidence":0.89},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.865},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.864},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.836},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.83},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.83},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.54},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.52},{"type":"color_triad","target":"minecraft:blue_orchid","label":"Harmonie triadique: Blue Orchid","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_blue_orchid","label":"Harmonie triadique: Potted Blue Orchid","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_carpet","label":"Harmonie triadique: Cyan Carpet","confidence":0.957},{"type":"color_triad","target":"minecraft:cyan_wool","label":"Harmonie triadique: Cyan Wool","confidence":0.957},{"type":"color_triad","target":"minecraft:soul_fire","label":"Harmonie triadique: Soul Fire","confidence":0.95},{"type":"color_triad","target":"minecraft:calibrated_sculk_sensor","label":"Harmonie triadique: Calibrated Sculk Sensor","confidence":0.943},{"type":"color_triad","target":"minecraft:sculk_sensor","label":"Harmonie triadique: Sculk Sensor","confidence":0.943},{"type":"color_triad","target":"minecraft:magenta_candle","label":"Harmonie triadique: Magenta Candle","confidence":0.942},{"type":"color_square","target":"minecraft:oxidized_copper_lantern","label":"Harmonie carree: Oxidized Copper Lantern","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie carree: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_square","target":"minecraft:torchflower_crop","label":"Harmonie carree: Torchflower Crop","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_button","label":"Harmonie carree: Crimson Button","confidence":0.91},{"type":"color_square","target":"minecraft:crimson_fence","label":"Harmonie carree: Crimson Fence","confidence":0.91},{"type":"color_square","target":"minecraft:crimson_fence_gate","label":"Harmonie carree: Crimson Fence Gate","confidence":0.91},{"type":"color_square","target":"minecraft:crimson_planks","label":"Harmonie carree: Crimson Planks","confidence":0.91},{"type":"color_square","target":"minecraft:crimson_pressure_plate","label":"Harmonie carree: Crimson Pressure Plate","confidence":0.91},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.625},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.595},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.591},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.591},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.583},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.583},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.574},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.574}],"category":""},{"id":"minecraft:end_stone_brick_slab","name":"End Stone Brick Slab","entry_type":"block","description":"An End stone brick slab is a decorative slab variant of End stone bricks that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added End stone brick slabs."}],"colors":{"primary":"#dae0a2","dominant_hex":"#ecf4b9","average_hex":"#dae0a2","hue_group":"yellow","lightness":0.7569,"saturation":0.5,"palette":["#ecf4b9","#dce4a4","#d2d294","#ecfcac","#c4bc8c","#aca474"],"color_groups":[{"hex":"#ecf4b9","weight":0.3086,"lightness":0.8412,"saturation":0.7284,"hue_group":"yellow"},{"hex":"#dce4a4","weight":0.2188,"lightness":0.7686,"saturation":0.5424,"hue_group":"yellow"},{"hex":"#d2d294","weight":0.1758,"lightness":0.702,"saturation":0.4079,"hue_group":"yellow"},{"hex":"#ecfcac","weight":0.1211,"lightness":0.8314,"saturation":0.9302,"hue_group":"yellow"},{"hex":"#c4bc8c","weight":0.1016,"lightness":0.6588,"saturation":0.3218,"hue_group":"yellow"},{"hex":"#aca474","weight":0.0742,"lightness":0.5647,"saturation":0.2523,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/end_stone_bricks.png","family":"end_stone_brick","relations":[{"type":"variants","target":"minecraft:end_stone_brick_stairs","label":"Same family: end_stone_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:end_stone_brick_stairs","label":"Related set: end_stone_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Palette proche: End Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone_brick_wall","label":"Palette proche: End Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone_bricks","label":"Palette proche: End Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone","label":"Palette proche: End Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.776},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.771},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.771},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.771},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.761},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.757},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.755},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.755},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.694},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.682},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.666},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.659},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.651},{"type":"color_bridge","target":"minecraft:dead_fire_coral","label":"Pont de nuance par palette: Dead Fire Coral","confidence":0.637},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_fan","label":"Pont de nuance par palette: Dead Bubble Coral Fan","confidence":0.635},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_wall_fan","label":"Pont de nuance par palette: Dead Bubble Coral Wall Fan","confidence":0.635},{"type":"color_analogous","target":"minecraft:end_stone_brick_stairs","label":"Couleurs analogues: End Stone Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:end_stone_brick_wall","label":"Couleurs analogues: End Stone Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:end_stone_bricks","label":"Couleurs analogues: End Stone Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:wet_sponge","label":"Couleurs analogues: Wet Sponge","confidence":0.938},{"type":"color_analogous","target":"minecraft:end_stone","label":"Couleurs analogues: End Stone","confidence":0.931},{"type":"color_analogous","target":"minecraft:potted_flowering_azalea_bush","label":"Couleurs analogues: Potted Flowering Azalea Bush","confidence":0.919},{"type":"color_analogous","target":"minecraft:sculk_shrieker","label":"Couleurs analogues: Sculk Shrieker","confidence":0.896},{"type":"color_analogous","target":"minecraft:sea_pickle","label":"Couleurs analogues: Sea Pickle","confidence":0.868},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.874},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.764},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.763},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.736},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.729},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.729},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.619},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.611},{"type":"color_triad","target":"minecraft:magenta_carpet","label":"Harmonie triadique: Magenta Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_wool","label":"Harmonie triadique: Magenta Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_shulker_box","label":"Harmonie triadique: Magenta Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_concrete","label":"Harmonie triadique: Magenta Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_glazed_terracotta","label":"Harmonie triadique: Cyan Glazed Terracotta","confidence":0.959},{"type":"color_triad","target":"minecraft:glass","label":"Harmonie triadique: Glass","confidence":0.945},{"type":"color_triad","target":"minecraft:magenta_concrete_powder","label":"Harmonie triadique: Magenta Concrete Powder","confidence":0.943},{"type":"color_square","target":"minecraft:crimson_hanging_sign","label":"Harmonie carree: Crimson Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_wall_hanging_sign","label":"Harmonie carree: Crimson Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_crimson_hyphae","label":"Harmonie carree: Stripped Crimson Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_crimson_stem","label":"Harmonie carree: Stripped Crimson Stem","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_shelf","label":"Harmonie carree: Crimson Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_door","label":"Harmonie carree: Crimson Door","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_trapdoor","label":"Harmonie carree: Crimson Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:dark_prismarine","label":"Harmonie carree: Dark Prismarine","confidence":0.96},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.634},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.604},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.6},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.599},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.593},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.593},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.585},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.585}],"category":"building"},{"id":"minecraft:end_stone_brick_stairs","name":"End Stone Brick Stairs","entry_type":"block","description":"End stone brick stairs are a decorative stairs variant of End stone bricks that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added End stone brick stairs."}],"colors":{"primary":"#dae0a2","dominant_hex":"#ecf4b9","average_hex":"#dae0a2","hue_group":"yellow","lightness":0.7569,"saturation":0.5,"palette":["#ecf4b9","#dce4a4","#d2d294","#ecfcac","#c4bc8c","#aca474"],"color_groups":[{"hex":"#ecf4b9","weight":0.3086,"lightness":0.8412,"saturation":0.7284,"hue_group":"yellow"},{"hex":"#dce4a4","weight":0.2188,"lightness":0.7686,"saturation":0.5424,"hue_group":"yellow"},{"hex":"#d2d294","weight":0.1758,"lightness":0.702,"saturation":0.4079,"hue_group":"yellow"},{"hex":"#ecfcac","weight":0.1211,"lightness":0.8314,"saturation":0.9302,"hue_group":"yellow"},{"hex":"#c4bc8c","weight":0.1016,"lightness":0.6588,"saturation":0.3218,"hue_group":"yellow"},{"hex":"#aca474","weight":0.0742,"lightness":0.5647,"saturation":0.2523,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/end_stone_bricks.png","family":"end_stone_brick","relations":[{"type":"variants","target":"minecraft:end_stone_brick_slab","label":"Same family: end_stone_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:end_stone_brick_slab","label":"Related set: end_stone_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:end_stone_brick_slab","label":"Palette proche: End Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone_brick_wall","label":"Palette proche: End Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone_bricks","label":"Palette proche: End Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone","label":"Palette proche: End Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.776},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.771},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.771},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.771},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.761},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.757},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.755},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.755},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.694},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.682},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.666},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.659},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.651},{"type":"color_bridge","target":"minecraft:dead_fire_coral","label":"Pont de nuance par palette: Dead Fire Coral","confidence":0.637},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_fan","label":"Pont de nuance par palette: Dead Bubble Coral Fan","confidence":0.635},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_wall_fan","label":"Pont de nuance par palette: Dead Bubble Coral Wall Fan","confidence":0.635},{"type":"color_analogous","target":"minecraft:end_stone_brick_slab","label":"Couleurs analogues: End Stone Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:end_stone_brick_wall","label":"Couleurs analogues: End Stone Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:end_stone_bricks","label":"Couleurs analogues: End Stone Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:wet_sponge","label":"Couleurs analogues: Wet Sponge","confidence":0.938},{"type":"color_analogous","target":"minecraft:end_stone","label":"Couleurs analogues: End Stone","confidence":0.931},{"type":"color_analogous","target":"minecraft:potted_flowering_azalea_bush","label":"Couleurs analogues: Potted Flowering Azalea Bush","confidence":0.919},{"type":"color_analogous","target":"minecraft:sculk_shrieker","label":"Couleurs analogues: Sculk Shrieker","confidence":0.896},{"type":"color_analogous","target":"minecraft:sea_pickle","label":"Couleurs analogues: Sea Pickle","confidence":0.868},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.874},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.764},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.763},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.736},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.729},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.729},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.619},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.611},{"type":"color_triad","target":"minecraft:magenta_carpet","label":"Harmonie triadique: Magenta Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_wool","label":"Harmonie triadique: Magenta Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_shulker_box","label":"Harmonie triadique: Magenta Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_concrete","label":"Harmonie triadique: Magenta Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_glazed_terracotta","label":"Harmonie triadique: Cyan Glazed Terracotta","confidence":0.959},{"type":"color_triad","target":"minecraft:glass","label":"Harmonie triadique: Glass","confidence":0.945},{"type":"color_triad","target":"minecraft:magenta_concrete_powder","label":"Harmonie triadique: Magenta Concrete Powder","confidence":0.943},{"type":"color_square","target":"minecraft:crimson_hanging_sign","label":"Harmonie carree: Crimson Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_wall_hanging_sign","label":"Harmonie carree: Crimson Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_crimson_hyphae","label":"Harmonie carree: Stripped Crimson Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_crimson_stem","label":"Harmonie carree: Stripped Crimson Stem","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_shelf","label":"Harmonie carree: Crimson Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_door","label":"Harmonie carree: Crimson Door","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_trapdoor","label":"Harmonie carree: Crimson Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:dark_prismarine","label":"Harmonie carree: Dark Prismarine","confidence":0.96},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.634},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.604},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.6},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.599},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.593},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.593},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.585},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.585}],"category":"building"},{"id":"minecraft:end_stone_brick_wall","name":"End Stone Brick Wall","entry_type":"block","description":"An End stone brick wall is a decorative wall variant of End stone bricks that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added End stone walls."}],"colors":{"primary":"#dae0a2","dominant_hex":"#ecf4b9","average_hex":"#dae0a2","hue_group":"yellow","lightness":0.7569,"saturation":0.5,"palette":["#ecf4b9","#dce4a4","#d2d294","#ecfcac","#c4bc8c","#aca474"],"color_groups":[{"hex":"#ecf4b9","weight":0.3086,"lightness":0.8412,"saturation":0.7284,"hue_group":"yellow"},{"hex":"#dce4a4","weight":0.2188,"lightness":0.7686,"saturation":0.5424,"hue_group":"yellow"},{"hex":"#d2d294","weight":0.1758,"lightness":0.702,"saturation":0.4079,"hue_group":"yellow"},{"hex":"#ecfcac","weight":0.1211,"lightness":0.8314,"saturation":0.9302,"hue_group":"yellow"},{"hex":"#c4bc8c","weight":0.1016,"lightness":0.6588,"saturation":0.3218,"hue_group":"yellow"},{"hex":"#aca474","weight":0.0742,"lightness":0.5647,"saturation":0.2523,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/end_stone_bricks.png","family":"end_stone_brick_wall","relations":[{"type":"visual_neighbors","target":"minecraft:end_stone_brick_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:end_stone_brick_slab","label":"Palette proche: End Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Palette proche: End Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone_bricks","label":"Palette proche: End Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone","label":"Palette proche: End Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.776},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.771},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.771},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.771},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.761},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.757},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.755},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.755},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.694},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.682},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.666},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.659},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.651},{"type":"color_bridge","target":"minecraft:dead_fire_coral","label":"Pont de nuance par palette: Dead Fire Coral","confidence":0.637},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_fan","label":"Pont de nuance par palette: Dead Bubble Coral Fan","confidence":0.635},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_wall_fan","label":"Pont de nuance par palette: Dead Bubble Coral Wall Fan","confidence":0.635},{"type":"color_analogous","target":"minecraft:end_stone_brick_slab","label":"Couleurs analogues: End Stone Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:end_stone_brick_stairs","label":"Couleurs analogues: End Stone Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:end_stone_bricks","label":"Couleurs analogues: End Stone Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:wet_sponge","label":"Couleurs analogues: Wet Sponge","confidence":0.938},{"type":"color_analogous","target":"minecraft:end_stone","label":"Couleurs analogues: End Stone","confidence":0.931},{"type":"color_analogous","target":"minecraft:potted_flowering_azalea_bush","label":"Couleurs analogues: Potted Flowering Azalea Bush","confidence":0.919},{"type":"color_analogous","target":"minecraft:sculk_shrieker","label":"Couleurs analogues: Sculk Shrieker","confidence":0.896},{"type":"color_analogous","target":"minecraft:sea_pickle","label":"Couleurs analogues: Sea Pickle","confidence":0.868},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.874},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.764},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.763},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.736},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.729},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.729},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.619},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.611},{"type":"color_triad","target":"minecraft:magenta_carpet","label":"Harmonie triadique: Magenta Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_wool","label":"Harmonie triadique: Magenta Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_shulker_box","label":"Harmonie triadique: Magenta Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_concrete","label":"Harmonie triadique: Magenta Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_glazed_terracotta","label":"Harmonie triadique: Cyan Glazed Terracotta","confidence":0.959},{"type":"color_triad","target":"minecraft:glass","label":"Harmonie triadique: Glass","confidence":0.945},{"type":"color_triad","target":"minecraft:magenta_concrete_powder","label":"Harmonie triadique: Magenta Concrete Powder","confidence":0.943},{"type":"color_square","target":"minecraft:crimson_hanging_sign","label":"Harmonie carree: Crimson Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_wall_hanging_sign","label":"Harmonie carree: Crimson Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_crimson_hyphae","label":"Harmonie carree: Stripped Crimson Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_crimson_stem","label":"Harmonie carree: Stripped Crimson Stem","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_shelf","label":"Harmonie carree: Crimson Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_door","label":"Harmonie carree: Crimson Door","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_trapdoor","label":"Harmonie carree: Crimson Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:dark_prismarine","label":"Harmonie carree: Dark Prismarine","confidence":0.96},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.634},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.604},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.6},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.599},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.593},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.593},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.585},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.585}],"category":"building"},{"id":"minecraft:end_stone_bricks","name":"End Stone Bricks","entry_type":"block","description":"End stone bricks are decorative building blocks made of End stone that generate in End cities.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added End stone bricks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb end stone bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#dae0a2","dominant_hex":"#ecf4b9","average_hex":"#dae0a2","hue_group":"yellow","lightness":0.7569,"saturation":0.5,"palette":["#ecf4b9","#dce4a4","#d2d294","#ecfcac","#c4bc8c","#aca474"],"color_groups":[{"hex":"#ecf4b9","weight":0.3086,"lightness":0.8412,"saturation":0.7284,"hue_group":"yellow"},{"hex":"#dce4a4","weight":0.2188,"lightness":0.7686,"saturation":0.5424,"hue_group":"yellow"},{"hex":"#d2d294","weight":0.1758,"lightness":0.702,"saturation":0.4079,"hue_group":"yellow"},{"hex":"#ecfcac","weight":0.1211,"lightness":0.8314,"saturation":0.9302,"hue_group":"yellow"},{"hex":"#c4bc8c","weight":0.1016,"lightness":0.6588,"saturation":0.3218,"hue_group":"yellow"},{"hex":"#aca474","weight":0.0742,"lightness":0.5647,"saturation":0.2523,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/end_stone_bricks.png","family":"end_stone_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:end_stone_brick_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:end_stone_brick_slab","label":"Palette proche: End Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Palette proche: End Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone_brick_wall","label":"Palette proche: End Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_stone","label":"Palette proche: End Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.776},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.771},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.771},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.771},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.761},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.757},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.755},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.755},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.694},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.682},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.666},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.659},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.651},{"type":"color_bridge","target":"minecraft:dead_fire_coral","label":"Pont de nuance par palette: Dead Fire Coral","confidence":0.637},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_fan","label":"Pont de nuance par palette: Dead Bubble Coral Fan","confidence":0.635},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_wall_fan","label":"Pont de nuance par palette: Dead Bubble Coral Wall Fan","confidence":0.635},{"type":"color_analogous","target":"minecraft:end_stone_brick_slab","label":"Couleurs analogues: End Stone Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:end_stone_brick_stairs","label":"Couleurs analogues: End Stone Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:end_stone_brick_wall","label":"Couleurs analogues: End Stone Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:wet_sponge","label":"Couleurs analogues: Wet Sponge","confidence":0.938},{"type":"color_analogous","target":"minecraft:end_stone","label":"Couleurs analogues: End Stone","confidence":0.931},{"type":"color_analogous","target":"minecraft:potted_flowering_azalea_bush","label":"Couleurs analogues: Potted Flowering Azalea Bush","confidence":0.919},{"type":"color_analogous","target":"minecraft:sculk_shrieker","label":"Couleurs analogues: Sculk Shrieker","confidence":0.896},{"type":"color_analogous","target":"minecraft:sea_pickle","label":"Couleurs analogues: Sea Pickle","confidence":0.868},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.874},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.764},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.763},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.736},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.729},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.729},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.619},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.611},{"type":"color_triad","target":"minecraft:magenta_carpet","label":"Harmonie triadique: Magenta Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_wool","label":"Harmonie triadique: Magenta Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_shulker_box","label":"Harmonie triadique: Magenta Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_concrete","label":"Harmonie triadique: Magenta Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_glazed_terracotta","label":"Harmonie triadique: Cyan Glazed Terracotta","confidence":0.959},{"type":"color_triad","target":"minecraft:glass","label":"Harmonie triadique: Glass","confidence":0.945},{"type":"color_triad","target":"minecraft:magenta_concrete_powder","label":"Harmonie triadique: Magenta Concrete Powder","confidence":0.943},{"type":"color_square","target":"minecraft:crimson_hanging_sign","label":"Harmonie carree: Crimson Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_wall_hanging_sign","label":"Harmonie carree: Crimson Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_crimson_hyphae","label":"Harmonie carree: Stripped Crimson Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_crimson_stem","label":"Harmonie carree: Stripped Crimson Stem","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_shelf","label":"Harmonie carree: Crimson Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_door","label":"Harmonie carree: Crimson Door","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_trapdoor","label":"Harmonie carree: Crimson Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:dark_prismarine","label":"Harmonie carree: Dark Prismarine","confidence":0.96},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.634},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.604},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.6},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.599},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.593},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.593},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.585},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.585}],"category":"building"},{"id":"minecraft:ender_chest","name":"Ender Chest","entry_type":"block","description":"An ender chest is a type of chest whose contents are exclusive to each player, and they can be placed and accessed from anywhere in any dimension.","history":[{"version":"1.3.1 12w21a","status":"added","notes":"Added ender chests."}],"colors":{"primary":"#0f0b19","dominant_hex":"#04040c","average_hex":"#0f0b19","hue_group":"blue","lightness":0.0706,"saturation":0.3889,"palette":["#04040c","#140c1c","#040404","#241c3c","#3c2454"],"color_groups":[{"hex":"#04040c","weight":0.293,"lightness":0.0314,"saturation":0.5,"hue_group":"blue"},{"hex":"#140c1c","weight":0.2578,"lightness":0.0784,"saturation":0.4,"hue_group":"purple"},{"hex":"#040404","weight":0.25,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#241c3c","weight":0.125,"lightness":0.1725,"saturation":0.3636,"hue_group":"blue"},{"hex":"#3c2454","weight":0.0742,"lightness":0.2353,"saturation":0.4,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/obsidian.png","family":"ender_chest","relations":[{"type":"visual_neighbors","target":"minecraft:end_gateway","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:obsidian","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:respawn_anchor","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spawner","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chain","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crying_obsidian","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:end_gateway","label":"Palette proche: End Gateway","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_portal","label":"Palette proche: End Portal","confidence":0.94},{"type":"color_neighbors","target":"minecraft:obsidian","label":"Palette proche: Obsidian","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crying_obsidian","label":"Palette proche: Crying Obsidian","confidence":0.909},{"type":"color_neighbors","target":"minecraft:respawn_anchor","label":"Palette proche: Respawn Anchor","confidence":0.83},{"type":"color_neighbors","target":"minecraft:black_concrete","label":"Palette proche: Black Concrete","confidence":0.745},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.733},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.721},{"type":"color_neighbors","target":"minecraft:coal_block","label":"Palette proche: Coal Block","confidence":0.713},{"type":"color_neighbors","target":"minecraft:black_carpet","label":"Palette proche: Black Carpet","confidence":0.696},{"type":"color_neighbors","target":"minecraft:black_wool","label":"Palette proche: Black Wool","confidence":0.696},{"type":"color_neighbors","target":"minecraft:dragon_egg","label":"Palette proche: Dragon Egg","confidence":0.694},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.78},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.771},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.764},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par sous-ton: Black Carpet","confidence":0.75},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par sous-ton: Black Wool","confidence":0.75},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par sous-ton: Tinted Glass","confidence":0.738},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.723},{"type":"color_bridge","target":"minecraft:jigsaw","label":"Pont de nuance par sous-ton: Jigsaw","confidence":0.72},{"type":"color_bridge","target":"minecraft:structure_block","label":"Pont de nuance par sous-ton: Structure Block","confidence":0.711},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.706},{"type":"color_analogous","target":"minecraft:end_gateway","label":"Couleurs analogues: End Gateway","confidence":0.96},{"type":"color_analogous","target":"minecraft:end_portal","label":"Couleurs analogues: End Portal","confidence":0.96},{"type":"color_analogous","target":"minecraft:obsidian","label":"Couleurs analogues: Obsidian","confidence":0.96},{"type":"color_analogous","target":"minecraft:repeating_command_block","label":"Couleurs analogues: Repeating Command Block","confidence":0.89},{"type":"color_analogous","target":"minecraft:respawn_anchor","label":"Couleurs analogues: Respawn Anchor","confidence":0.833},{"type":"color_analogous","target":"minecraft:small_amethyst_bud","label":"Couleurs analogues: Small Amethyst Bud","confidence":0.808},{"type":"color_analogous","target":"minecraft:amethyst_block","label":"Couleurs analogues: Amethyst Block","confidence":0.766},{"type":"color_analogous","target":"minecraft:budding_amethyst","label":"Couleurs analogues: Budding Amethyst","confidence":0.757},{"type":"color_complement","target":"minecraft:cave_vines","label":"Contraste complementaire: Cave Vines","confidence":0.96},{"type":"color_complement","target":"minecraft:green_concrete_powder","label":"Contraste complementaire: Green Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_azalea_bush","label":"Contraste complementaire: Potted Azalea Bush","confidence":0.96},{"type":"color_complement","target":"minecraft:azalea","label":"Contraste complementaire: Azalea","confidence":0.96},{"type":"color_complement","target":"minecraft:melon","label":"Contraste complementaire: Melon","confidence":0.953},{"type":"color_complement","target":"minecraft:green_carpet","label":"Contraste complementaire: Green Carpet","confidence":0.941},{"type":"color_complement","target":"minecraft:green_wool","label":"Contraste complementaire: Green Wool","confidence":0.941},{"type":"color_complement","target":"minecraft:green_candle","label":"Contraste complementaire: Green Candle","confidence":0.933},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:poppy","label":"Harmonie triadique: Poppy","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_poppy","label":"Harmonie triadique: Potted Poppy","confidence":0.96},{"type":"color_triad","target":"minecraft:magma_block","label":"Harmonie triadique: Magma Block","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_hanging_sign","label":"Harmonie triadique: Acacia Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_wall_hanging_sign","label":"Harmonie triadique: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_acacia_log","label":"Harmonie triadique: Stripped Acacia Log","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_acacia_wood","label":"Harmonie triadique: Stripped Acacia Wood","confidence":0.96},{"type":"color_square","target":"minecraft:cracked_nether_bricks","label":"Harmonie carree: Cracked Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_brick_slab","label":"Harmonie carree: Prismarine Brick Slab","confidence":0.937},{"type":"color_square","target":"minecraft:prismarine_brick_stairs","label":"Harmonie carree: Prismarine Brick Stairs","confidence":0.937},{"type":"color_square","target":"minecraft:prismarine_bricks","label":"Harmonie carree: Prismarine Bricks","confidence":0.937},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.917},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.917},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.914},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.914},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.855},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.821},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.799},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.791},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.791},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.776},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.76},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.746}],"category":"utility"},{"id":"minecraft:ender_dragon_spawn_egg","name":"Ender Dragon Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#201c21","dominant_hex":"#0c0c0c","average_hex":"#201c21","hue_group":"neutral","lightness":0.1196,"saturation":0.082,"palette":["#0c0c0c","#212121","#444144","#141414","#040404","#a434bc"],"color_groups":[{"hex":"#0c0c0c","weight":0.2423,"lightness":0.0471,"saturation":0.0,"hue_group":"neutral"},{"hex":"#212121","weight":0.2216,"lightness":0.1294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444144","weight":0.2062,"lightness":0.2608,"saturation":0.0226,"hue_group":"neutral"},{"hex":"#141414","weight":0.1546,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.1443,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a434bc","weight":0.0309,"lightness":0.4706,"saturation":0.5667,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/ender_dragon_spawn_egg.png","family":"ender_dragon_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:bat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coal","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rib_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:ender_eye","name":"Ender Eye","entry_type":"item","description":"An eye of ender is a craftable item that can be thrown in the Overworld to show the direction of the nearest stronghold, which may break the eye. Up to 12 eyes of ender are required to activate a stronghold's End portal, which leads to the End dimension.","history":[{"version":"1.0.0","status":"added","notes":"Added eyes of ender."},{"version":"1.12 17w17a","status":"added","notes":"Added a new sound when placing eyes of ender to the portal frames, and a new pop sound when a thrown eye of ender bursts."}],"colors":{"primary":"#497858","dominant_hex":"#7cb552","average_hex":"#497858","hue_group":"green","lightness":0.3784,"saturation":0.2435,"palette":["#7cb552","#1c4c34","#6ea585","#346464","#152c2f","#4c8484"],"color_groups":[{"hex":"#7cb552","weight":0.2397,"lightness":0.5157,"saturation":0.4008,"hue_group":"green"},{"hex":"#1c4c34","weight":0.1736,"lightness":0.2039,"saturation":0.4615,"hue_group":"cyan"},{"hex":"#6ea585","weight":0.1736,"lightness":0.5392,"saturation":0.234,"hue_group":"green"},{"hex":"#346464","weight":0.157,"lightness":0.298,"saturation":0.3158,"hue_group":"cyan"},{"hex":"#152c2f","weight":0.1488,"lightness":0.1333,"saturation":0.3824,"hue_group":"cyan"},{"hex":"#4c8484","weight":0.1074,"lightness":0.4078,"saturation":0.2692,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/ender_eye.png","family":"ender_eye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_ball","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_hoe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55}],"category":"item"},{"id":"minecraft:ender_pearl","name":"Ender Pearl","entry_type":"item","description":"An ender pearl is an item that can be thrown to teleport to where it lands, or used to craft eyes of ender, which are required to access the End.","history":[{"version":"1.8","status":"added","notes":"Added ender pearls along with endermen ."},{"version":"Beta 1.9","status":"added","notes":"Added teleporting feature to ender pearls."},{"version":"1.20.2 pre1","status":"added","notes":"Added the game rule enderPearlsVanishOnDeath ."}],"colors":{"primary":"#15594d","dominant_hex":"#042424","average_hex":"#15594d","hue_group":"cyan","lightness":0.2157,"saturation":0.6182,"palette":["#042424","#083834","#3fb5a3","#0c4c44","#145c54","#238373"],"color_groups":[{"hex":"#042424","weight":0.2479,"lightness":0.0784,"saturation":0.8,"hue_group":"cyan"},{"hex":"#083834","weight":0.1901,"lightness":0.1255,"saturation":0.75,"hue_group":"cyan"},{"hex":"#3fb5a3","weight":0.1653,"lightness":0.4784,"saturation":0.4836,"hue_group":"cyan"},{"hex":"#0c4c44","weight":0.1488,"lightness":0.1725,"saturation":0.7273,"hue_group":"cyan"},{"hex":"#145c54","weight":0.1405,"lightness":0.2196,"saturation":0.6429,"hue_group":"cyan"},{"hex":"#238373","weight":0.1074,"lightness":0.3255,"saturation":0.5783,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/ender_pearl.png","family":"ender_pearl","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cyan_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_helmet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:echo_shard","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_of_the_sea","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allay_spawn_egg","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:enderman","name":"Enderman","entry_type":"mob","description":"An enderman is a neutral mob found in all three dimensions that has a chance of dropping ender pearls when it is killed. It becomes hostile to players that damage it or look directly at its face, using its arms to attack. Endermen teleport erratically, as well as away from dangers such as lava, projectiles, and water. They also occasionally pick up and move certain blocks.","history":[{"version":"1.8","status":"added","notes":"Added endermen."}],"colors":{"primary":"#0f0f0f","dominant_hex":"#141414","average_hex":"#0f0f0f","hue_group":"neutral","lightness":0.0588,"saturation":0.0,"palette":["#141414","#040404","#fcfcfc"],"color_groups":[{"hex":"#141414","weight":0.6238,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.3705,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.0057,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/enderman/enderman.png","family":"enderman","relations":[{"type":"visual_neighbors","target":"minecraft:horse/markings_blackdots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:enderman_spawn_egg","name":"Enderman Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#421e4c","dominant_hex":"#2a2a2a","average_hex":"#421e4c","hue_group":"purple","lightness":0.2078,"saturation":0.434,"palette":["#2a2a2a","#171717","#ca36f0","#0c0c0c","#5f1273","#040404"],"color_groups":[{"hex":"#2a2a2a","weight":0.2989,"lightness":0.1647,"saturation":0.0,"hue_group":"neutral"},{"hex":"#171717","weight":0.2011,"lightness":0.0902,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ca36f0","weight":0.1897,"lightness":0.5765,"saturation":0.8611,"hue_group":"purple"},{"hex":"#0c0c0c","weight":0.1207,"lightness":0.0471,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5f1273","weight":0.0977,"lightness":0.2608,"saturation":0.7293,"hue_group":"purple"},{"hex":"#040404","weight":0.092,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/enderman_spawn_egg.png","family":"enderman_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:endermite_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_shell","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:popped_chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spire_armor_trim_smithing_template","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_crystal","label":"Shared hue group: purple","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:endermite","name":"Endermite","entry_type":"mob","description":"Endermites are small arthropod hostile mobs that attack by biting. They sometimes spawn when a player throws an ender pearl. Endermen are hostile toward endermites.","history":[{"version":"1.8 14w11a","status":"added","notes":"Added endermites."}],"colors":{"primary":"#3a294a","dominant_hex":"#3b2a4a","average_hex":"#3a294a","hue_group":"purple","lightness":0.2255,"saturation":0.287,"palette":["#3b2a4a","#44345c","#1d1425","#442c54","#3c2c54","#443454"],"color_groups":[{"hex":"#3b2a4a","weight":0.2958,"lightness":0.2275,"saturation":0.2759,"hue_group":"purple"},{"hex":"#44345c","weight":0.2125,"lightness":0.2824,"saturation":0.2778,"hue_group":"blue"},{"hex":"#1d1425","weight":0.1708,"lightness":0.1118,"saturation":0.2982,"hue_group":"purple"},{"hex":"#442c54","weight":0.1375,"lightness":0.251,"saturation":0.3125,"hue_group":"purple"},{"hex":"#3c2c54","weight":0.0958,"lightness":0.251,"saturation":0.3125,"hue_group":"blue"},{"hex":"#443454","weight":0.0875,"lightness":0.2667,"saturation":0.2353,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/endermite.png","family":"endermite","relations":[{"type":"visual_neighbors","target":"minecraft:dragon_fireball","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_purple","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_magenta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/lucy","label":"Shared hue group: purple","confidence":0.55}],"category":"mob"},{"id":"minecraft:endermite_spawn_egg","name":"Endermite Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#521b68","dominant_hex":"#472f5a","average_hex":"#521b68","hue_group":"purple","lightness":0.2569,"saturation":0.5878,"palette":["#472f5a","#38223b","#68058b","#1a1221","#c322ee","#241434"],"color_groups":[{"hex":"#472f5a","weight":0.2333,"lightness":0.2686,"saturation":0.3139,"hue_group":"purple"},{"hex":"#38223b","weight":0.2,"lightness":0.1824,"saturation":0.2688,"hue_group":"purple"},{"hex":"#68058b","weight":0.1889,"lightness":0.2824,"saturation":0.9306,"hue_group":"purple"},{"hex":"#1a1221","weight":0.1556,"lightness":0.1,"saturation":0.2941,"hue_group":"purple"},{"hex":"#c322ee","weight":0.1556,"lightness":0.5333,"saturation":0.8571,"hue_group":"purple"},{"hex":"#241434","weight":0.0667,"lightness":0.1412,"saturation":0.4444,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/endermite_spawn_egg.png","family":"endermite_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:purple_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enderman_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_shell","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:popped_chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spire_armor_trim_smithing_template","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_crystal","label":"Shared hue group: purple","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:evoker","name":"Evoker","entry_type":"mob","description":"An evoker is a spell-casting illager that can be found in woodland mansions and as part of raids. They are the only source of totems of undying. Evokers use two spells to attack: one that summons armor-piercing fangs and one that summons vexes. This is the only way for vexes to spawn (without using Creative mode or commands).","history":[{"version":"1.11 16w39a","status":"added","notes":"Added evokers and evocation fangs."},{"version":"16w43a","status":"added","notes":"Added the [NBT Compound / JSON Object] Owner tag to evocation fangs."}],"colors":{"primary":"#464845","dominant_hex":"#1c1c1b","average_hex":"#464845","hue_group":"neutral","lightness":0.2765,"saturation":0.0213,"palette":["#1c1c1b","#333a3a","#505555","#9ea398","#8f9284","#1e1d24"],"color_groups":[{"hex":"#1c1c1b","weight":0.3806,"lightness":0.1078,"saturation":0.0182,"hue_group":"neutral"},{"hex":"#333a3a","weight":0.1507,"lightness":0.2137,"saturation":0.0642,"hue_group":"neutral"},{"hex":"#505555","weight":0.14,"lightness":0.3235,"saturation":0.0303,"hue_group":"neutral"},{"hex":"#9ea398","weight":0.1275,"lightness":0.6176,"saturation":0.0564,"hue_group":"neutral"},{"hex":"#8f9284","weight":0.1185,"lightness":0.5451,"saturation":0.0603,"hue_group":"neutral"},{"hex":"#1e1d24","weight":0.0827,"lightness":0.1275,"saturation":0.1077,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/illager/evoker.png","family":"evoker","relations":[{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:evoker_fangs","name":"Evoker Fangs","entry_type":"mob","description":"An evoker is a spell-casting illager that can be found in woodland mansions and as part of raids. They are the only source of totems of undying. Evokers use two spells to attack: one that summons armor-piercing fangs and one that summons vexes. This is the only way for vexes to spawn (without using Creative mode or commands).","history":[{"version":"1.11 16w39a","status":"added","notes":"Added evokers and evocation fangs."},{"version":"16w43a","status":"added","notes":"Added the [NBT Compound / JSON Object] Owner tag to evocation fangs."}],"colors":{"primary":"#625c55","dominant_hex":"#645c5c","average_hex":"#625c55","hue_group":"neutral","lightness":0.3588,"saturation":0.071,"palette":["#645c5c","#5c544c","#4c4444","#8a8a78","#ccc7af","#343434"],"color_groups":[{"hex":"#645c5c","weight":0.3966,"lightness":0.3765,"saturation":0.0417,"hue_group":"neutral"},{"hex":"#5c544c","weight":0.3107,"lightness":0.3294,"saturation":0.0952,"hue_group":"neutral"},{"hex":"#4c4444","weight":0.1751,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#8a8a78","weight":0.0497,"lightness":0.5059,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#ccc7af","weight":0.0463,"lightness":0.7431,"saturation":0.2214,"hue_group":"yellow"},{"hex":"#343434","weight":0.0215,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/illager/evoker_fangs.png","family":"evoker_fangs","relations":[{"type":"visual_neighbors","target":"minecraft:creaking","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken/cold","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:evoker_spawn_egg","name":"Evoker Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#5c5c54","dominant_hex":"#424543","average_hex":"#5c5c54","hue_group":"neutral","lightness":0.3451,"saturation":0.0455,"palette":["#424543","#0e0e0e","#7f7f71","#9b9d8d","#6e5e47","#b0b7af"],"color_groups":[{"hex":"#424543","weight":0.3657,"lightness":0.2647,"saturation":0.0222,"hue_group":"neutral"},{"hex":"#0e0e0e","weight":0.1567,"lightness":0.0549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7f7f71","weight":0.1567,"lightness":0.4706,"saturation":0.0583,"hue_group":"neutral"},{"hex":"#9b9d8d","weight":0.1567,"lightness":0.5843,"saturation":0.0755,"hue_group":"neutral"},{"hex":"#6e5e47","weight":0.097,"lightness":0.3549,"saturation":0.2155,"hue_group":"yellow"},{"hex":"#b0b7af","weight":0.0672,"lightness":0.702,"saturation":0.0526,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/evoker_spawn_egg.png","family":"evoker_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:compass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:experience_bottle","name":"Experience Bottle","entry_type":"item","description":"A bottle o' enchanting is an item that can be thrown to break it and release experience orbs.","history":[{"version":"1.2.1 12w04a","status":"added","notes":"Added bottles o' enchanting."}],"colors":{"primary":"#8ea343","dominant_hex":"#dce45c","average_hex":"#8ea343","hue_group":"yellow","lightness":0.451,"saturation":0.4174,"palette":["#dce45c","#543c04","#57a543","#e6fc8d","#bae45c","#2c2404"],"color_groups":[{"hex":"#dce45c","weight":0.2035,"lightness":0.6275,"saturation":0.7158,"hue_group":"yellow"},{"hex":"#543c04","weight":0.1947,"lightness":0.1725,"saturation":0.9091,"hue_group":"yellow"},{"hex":"#57a543","weight":0.1858,"lightness":0.4549,"saturation":0.4224,"hue_group":"green"},{"hex":"#e6fc8d","weight":0.1593,"lightness":0.7706,"saturation":0.9487,"hue_group":"yellow"},{"hex":"#bae45c","weight":0.1327,"lightness":0.6275,"saturation":0.7158,"hue_group":"yellow"},{"hex":"#2c2404","weight":0.1239,"lightness":0.0941,"saturation":0.8333,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/experience_bottle.png","family":"experience_bottle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:totem_of_undying","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone_dust","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clock","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spyglass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:poisonous_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_nugget","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:explorer_pottery_sherd","name":"Explorer Pottery Sherd","entry_type":"item","description":"An explorer pottery sherd is a pottery sherd that depicts a map. It can be found in cold ocean ruins.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added explorer pottery shards."}],"colors":{"primary":"#673a2f","dominant_hex":"#44241c","average_hex":"#673a2f","hue_group":"red","lightness":0.2941,"saturation":0.3733,"palette":["#44241c","#5c342c","#724234","#542c24","#9a5a4a","#844c3c"],"color_groups":[{"hex":"#44241c","weight":0.1975,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#5c342c","weight":0.1975,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#724234","weight":0.1975,"lightness":0.3255,"saturation":0.3735,"hue_group":"red"},{"hex":"#542c24","weight":0.172,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.1401,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"},{"hex":"#844c3c","weight":0.0955,"lightness":0.3765,"saturation":0.375,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/explorer_pottery_sherd.png","family":"explorer_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:heart_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:plenty_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:exposed_chiseled_copper","name":"Exposed Chiseled Copper","entry_type":"block","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","history":[{"version":"1.20.3","status":"added","notes":"Added chiseled copper behind the \" Update 1.21 \" experimental data pack."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiseled copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#9b7765","dominant_hex":"#967966","average_hex":"#9b7765","hue_group":"red","lightness":0.502,"saturation":0.2126,"palette":["#967966","#ac7464","#7c6c5c","#746454","#cc8c84","#bc8474"],"color_groups":[{"hex":"#967966","weight":0.2578,"lightness":0.4941,"saturation":0.1905,"hue_group":"red"},{"hex":"#ac7464","weight":0.1914,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#7c6c5c","weight":0.1836,"lightness":0.4235,"saturation":0.1481,"hue_group":"yellow"},{"hex":"#746454","weight":0.1445,"lightness":0.3922,"saturation":0.16,"hue_group":"yellow"},{"hex":"#cc8c84","weight":0.1406,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#bc8474","weight":0.082,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_chiseled_copper.png","family":"exposed_chiseled_copper","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Palette proche: Waxed Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Palette proche: Exposed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Palette proche: Exposed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Palette proche: Waxed Exposed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Palette proche: Waxed Exposed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Palette proche: Waxed Exposed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_door","label":"Pont de nuance par sous-ton: Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_door","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_grate","label":"Pont de nuance par sous-ton: Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_grate","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chest","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Golem Statue","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:exposed_copper","name":"Exposed Copper","entry_type":"block","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed copper blocks and three variants of waxed copper blocks."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#a17e68","dominant_hex":"#ac7464","average_hex":"#a17e68","hue_group":"red","lightness":0.5196,"saturation":0.2327,"palette":["#ac7464","#998e6c","#7c7054","#bc8474","#947464","#cc8c84"],"color_groups":[{"hex":"#ac7464","weight":0.2422,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#998e6c","weight":0.1953,"lightness":0.5118,"saturation":0.1807,"hue_group":"yellow"},{"hex":"#7c7054","weight":0.1875,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#bc8474","weight":0.1562,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#947464","weight":0.1094,"lightness":0.4863,"saturation":0.1935,"hue_group":"red"},{"hex":"#cc8c84","weight":0.1094,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper.png","family":"exposed_copper","relations":[{"type":"variants","target":"minecraft:exposed_copper_door","label":"Same family: exposed_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:exposed_copper_door","label":"Related set: exposed_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Palette proche: Waxed Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Palette proche: Waxed Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_analogous","target":"minecraft:exposed_copper_chest","label":"Couleurs analogues: Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_golem_statue","label":"Couleurs analogues: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper","label":"Couleurs analogues: Waxed Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_chest","label":"Couleurs analogues: Waxed Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Couleurs analogues: Waxed Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_grate","label":"Couleurs analogues: Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_grate","label":"Couleurs analogues: Waxed Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_trapdoor","label":"Couleurs analogues: Exposed Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.943},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.91},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.893},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.888},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.954},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.913},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.864},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.826},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.809},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.809},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.945},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.875},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.768},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.768},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.756},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.714},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.661},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:exposed_copper_bars","name":"Exposed Copper Bars","entry_type":"block","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper bars."}],"colors":{"primary":"#866c59","dominant_hex":"#7c6c54","average_hex":"#866c59","hue_group":"red","lightness":0.4373,"saturation":0.2018,"palette":["#7c6c54","#645c4c","#8c745c","#ac7464","#b47c74","#9c8c6c"],"color_groups":[{"hex":"#7c6c54","weight":0.3017,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#645c4c","weight":0.25,"lightness":0.3451,"saturation":0.1364,"hue_group":"yellow"},{"hex":"#8c745c","weight":0.1724,"lightness":0.4549,"saturation":0.2069,"hue_group":"red"},{"hex":"#ac7464","weight":0.1293,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#b47c74","weight":0.1293,"lightness":0.5804,"saturation":0.2991,"hue_group":"red"},{"hex":"#9c8c6c","weight":0.0172,"lightness":0.5176,"saturation":0.1951,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper_bars.png","family":"exposed_copper_bars","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dripstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pointed_dripstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewing_stand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:detector_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_lightning_rod","label":"Palette proche: Exposed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Palette proche: Waxed Exposed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.939},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.939},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.938},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.938},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.938},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.938},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.938},{"type":"color_bridge","target":"minecraft:exposed_lightning_rod","label":"Pont de nuance par sous-ton: Exposed Lightning Rod","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Exposed Lightning Rod","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_grate","label":"Pont de nuance par sous-ton: Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_grate","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chest","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Golem Statue","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:exposed_copper_bulb","name":"Exposed Copper Bulb","entry_type":"block","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","history":[{"version":"1.20.3","status":"added","notes":"Added copper bulbs behind the \" Update 1.21 \" experimental data pack ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb copper bulbs at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#876c5a","dominant_hex":"#c5887d","average_hex":"#876c5a","hue_group":"red","lightness":0.4412,"saturation":0.2,"palette":["#c5887d","#a47a66","#544c3c","#7b6354","#6c5c4c","#7c7555"],"color_groups":[{"hex":"#c5887d","weight":0.1914,"lightness":0.6314,"saturation":0.383,"hue_group":"red"},{"hex":"#a47a66","weight":0.1836,"lightness":0.5216,"saturation":0.2541,"hue_group":"red"},{"hex":"#544c3c","weight":0.1758,"lightness":0.2824,"saturation":0.1667,"hue_group":"yellow"},{"hex":"#7b6354","weight":0.1719,"lightness":0.4059,"saturation":0.1884,"hue_group":"red"},{"hex":"#6c5c4c","weight":0.1406,"lightness":0.3608,"saturation":0.1739,"hue_group":"yellow"},{"hex":"#7c7555","weight":0.1367,"lightness":0.4098,"saturation":0.1866,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper_bulb.png","family":"exposed_copper_bulb","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dripstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pointed_dripstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewing_stand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:detector_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bulb","label":"Palette proche: Waxed Exposed Copper Bulb","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_lightning_rod","label":"Palette proche: Exposed Lightning Rod","confidence":0.931},{"type":"color_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Palette proche: Waxed Exposed Lightning Rod","confidence":0.931},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.916},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Palette proche: Exposed Cut Copper Slab","confidence":0.916},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Palette proche: Exposed Cut Copper Stairs","confidence":0.916},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Palette proche: Waxed Exposed Cut Copper","confidence":0.916},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Palette proche: Waxed Exposed Cut Copper Slab","confidence":0.916},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Palette proche: Waxed Exposed Cut Copper Stairs","confidence":0.916},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.912},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.912},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.912},{"type":"color_bridge","target":"minecraft:exposed_lightning_rod","label":"Pont de nuance par sous-ton: Exposed Lightning Rod","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Exposed Lightning Rod","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_trapdoor","label":"Pont de nuance par sous-ton: Exposed Copper Trapdoor","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Trapdoor","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_grate","label":"Pont de nuance par sous-ton: Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_grate","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_door","label":"Pont de nuance par sous-ton: Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:exposed_copper_chain","name":"Exposed Copper Chain","entry_type":"block","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper chains."}],"colors":{"primary":"#7e6654","dominant_hex":"#645c4c","average_hex":"#7e6654","hue_group":"red","lightness":0.4118,"saturation":0.2,"palette":["#645c4c","#8c745c","#ac7464","#9c8c6c"],"color_groups":[{"hex":"#645c4c","weight":0.4643,"lightness":0.3451,"saturation":0.1364,"hue_group":"yellow"},{"hex":"#8c745c","weight":0.4286,"lightness":0.4549,"saturation":0.2069,"hue_group":"red"},{"hex":"#ac7464","weight":0.0893,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#9c8c6c","weight":0.0179,"lightness":0.5176,"saturation":0.1951,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper_chain.png","family":"exposed_copper_chain","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewing_stand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pointed_dripstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:detector_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dripstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:activator_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanting_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_lightning_rod","label":"Palette proche: Exposed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Palette proche: Waxed Exposed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.91},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.91},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.91},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.91},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.91},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Palette proche: Waxed Exposed Copper Golem Statue","confidence":0.91},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.909},{"type":"color_bridge","target":"minecraft:exposed_lightning_rod","label":"Pont de nuance par sous-ton: Exposed Lightning Rod","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Exposed Lightning Rod","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chest","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_grate","label":"Pont de nuance par sous-ton: Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_grate","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Grate","confidence":0.9},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:exposed_copper_chest","name":"Exposed Copper Chest","entry_type":"block","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper chests."}],"colors":{"primary":"#a17e68","dominant_hex":"#ac7464","average_hex":"#a17e68","hue_group":"red","lightness":0.5196,"saturation":0.2327,"palette":["#ac7464","#998e6c","#7c7054","#bc8474","#947464","#cc8c84"],"color_groups":[{"hex":"#ac7464","weight":0.2422,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#998e6c","weight":0.1953,"lightness":0.5118,"saturation":0.1807,"hue_group":"yellow"},{"hex":"#7c7054","weight":0.1875,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#bc8474","weight":0.1562,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#947464","weight":0.1094,"lightness":0.4863,"saturation":0.1935,"hue_group":"red"},{"hex":"#cc8c84","weight":0.1094,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper.png","family":"exposed_copper_chest","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Palette proche: Waxed Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Palette proche: Waxed Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_analogous","target":"minecraft:exposed_copper","label":"Couleurs analogues: Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_golem_statue","label":"Couleurs analogues: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper","label":"Couleurs analogues: Waxed Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_chest","label":"Couleurs analogues: Waxed Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Couleurs analogues: Waxed Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_grate","label":"Couleurs analogues: Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_grate","label":"Couleurs analogues: Waxed Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_trapdoor","label":"Couleurs analogues: Exposed Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.943},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.91},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.893},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.888},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.954},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.913},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.864},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.826},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.809},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.809},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.945},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.875},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.768},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.768},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.756},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.714},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.661},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:exposed_copper_door","name":"Exposed Copper Door","entry_type":"block","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","history":[{"version":"1.20.3","status":"added","notes":"Added copper doors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#a47b6a","dominant_hex":"#b37b6b","average_hex":"#a47b6a","hue_group":"red","lightness":0.5294,"saturation":0.2417,"palette":["#b37b6b","#766553","#cc8c84","#947464","#bc8474","#9a8d6c"],"color_groups":[{"hex":"#b37b6b","weight":0.2356,"lightness":0.5608,"saturation":0.3214,"hue_group":"red"},{"hex":"#766553","weight":0.2019,"lightness":0.3941,"saturation":0.1741,"hue_group":"yellow"},{"hex":"#cc8c84","weight":0.1827,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#947464","weight":0.1538,"lightness":0.4863,"saturation":0.1935,"hue_group":"red"},{"hex":"#bc8474","weight":0.1442,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#9a8d6c","weight":0.0817,"lightness":0.5137,"saturation":0.1855,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper_door_top.png","family":"exposed_copper","relations":[{"type":"variants","target":"minecraft:exposed_copper","label":"Same family: exposed_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:exposed_copper","label":"Related set: exposed_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Palette proche: Waxed Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Palette proche: Waxed Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_door","label":"Couleurs analogues: Waxed Exposed Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_lightning_rod","label":"Couleurs analogues: Exposed Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_lightning_rod","label":"Couleurs analogues: Waxed Exposed Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite","label":"Couleurs analogues: Polished Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_slab","label":"Couleurs analogues: Polished Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_stairs","label":"Couleurs analogues: Polished Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_hanging_sign","label":"Couleurs analogues: Acacia Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_hanging_sign","label":"Couleurs analogues: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.956},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.92},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.916},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.913},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.901},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.899},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.899},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.841},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.959},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.953},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.95},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.843},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.893},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.893},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.861},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.849},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.845},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55}],"category":"building"},{"id":"minecraft:exposed_copper_golem","name":"Exposed Copper Golem","entry_type":"mob","description":"A copper golem is a buildable passive mob that takes items out of copper chests, and attempts to store them in nearby wooden chests and trapped chests. A chest examined by a copper golem must either be empty, or contain the item type it is holding, for the golem to place anything inside of it. If not waxed, a copper golem oxidizes over time and eventually turns into a copper golem statue, dropping its currently held items.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper golems."}],"colors":{"primary":"#917160","dominant_hex":"#595141","average_hex":"#917160","hue_group":"red","lightness":0.4725,"saturation":0.2033,"palette":["#595141","#7c6c54","#cc8c84","#a77c67","#bc8474","#8c745c"],"color_groups":[{"hex":"#595141","weight":0.2424,"lightness":0.302,"saturation":0.1558,"hue_group":"yellow"},{"hex":"#7c6c54","weight":0.2009,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#cc8c84","weight":0.1911,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#a77c67","weight":0.145,"lightness":0.5294,"saturation":0.2667,"hue_group":"red"},{"hex":"#bc8474","weight":0.1231,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#8c745c","weight":0.0974,"lightness":0.4549,"saturation":0.2069,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/copper_golem/exposed_copper_golem.png","family":"exposed_copper_golem","relations":[{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:exposed_copper_golem_statue","name":"Exposed Copper Golem Statue","entry_type":"block","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper golem statues."}],"colors":{"primary":"#a17e68","dominant_hex":"#ac7464","average_hex":"#a17e68","hue_group":"red","lightness":0.5196,"saturation":0.2327,"palette":["#ac7464","#998e6c","#7c7054","#bc8474","#947464","#cc8c84"],"color_groups":[{"hex":"#ac7464","weight":0.2422,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#998e6c","weight":0.1953,"lightness":0.5118,"saturation":0.1807,"hue_group":"yellow"},{"hex":"#7c7054","weight":0.1875,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#bc8474","weight":0.1562,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#947464","weight":0.1094,"lightness":0.4863,"saturation":0.1935,"hue_group":"red"},{"hex":"#cc8c84","weight":0.1094,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper.png","family":"exposed_copper_golem_statue","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Palette proche: Waxed Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Palette proche: Waxed Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_analogous","target":"minecraft:exposed_copper","label":"Couleurs analogues: Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_chest","label":"Couleurs analogues: Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper","label":"Couleurs analogues: Waxed Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_chest","label":"Couleurs analogues: Waxed Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Couleurs analogues: Waxed Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_grate","label":"Couleurs analogues: Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_grate","label":"Couleurs analogues: Waxed Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_trapdoor","label":"Couleurs analogues: Exposed Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.943},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.91},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.893},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.888},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.954},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.913},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.864},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.826},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.809},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.809},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.945},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.875},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.768},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.768},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.756},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.714},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.661},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:exposed_copper_grate","name":"Exposed Copper Grate","entry_type":"block","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","history":[{"version":"1.20.3","status":"added","notes":"Added copper grates behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#a27e69","dominant_hex":"#ac7464","average_hex":"#a27e69","hue_group":"red","lightness":0.5235,"saturation":0.2346,"palette":["#ac7464","#7c6f54","#998d6c","#bc8474","#cc8c84","#947464"],"color_groups":[{"hex":"#ac7464","weight":0.2179,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#7c6f54","weight":0.1955,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#998d6c","weight":0.1899,"lightness":0.5118,"saturation":0.1807,"hue_group":"yellow"},{"hex":"#bc8474","weight":0.1564,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#cc8c84","weight":0.1341,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#947464","weight":0.1061,"lightness":0.4863,"saturation":0.1935,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper_grate.png","family":"exposed_copper_grate","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Palette proche: Waxed Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Palette proche: Waxed Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_grate","label":"Couleurs analogues: Waxed Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_trapdoor","label":"Couleurs analogues: Exposed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Couleurs analogues: Waxed Exposed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper","label":"Couleurs analogues: Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_chest","label":"Couleurs analogues: Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_golem_statue","label":"Couleurs analogues: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper","label":"Couleurs analogues: Waxed Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_chest","label":"Couleurs analogues: Waxed Exposed Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.955},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.955},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.945},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.933},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.93},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.928},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.911},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.953},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.942},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.924},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.913},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.823},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.797},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.797},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.797},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.935},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.831},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.812},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.812},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.8},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.704},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.704},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55}],"category":"building"},{"id":"minecraft:exposed_copper_lantern","name":"Exposed Copper Lantern","entry_type":"block","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper lanterns."}],"colors":{"primary":"#948369","dominant_hex":"#b37d6c","average_hex":"#948369","hue_group":"yellow","lightness":0.4961,"saturation":0.17,"palette":["#b37d6c","#8c745c","#7fca83","#5f634c","#7c6c54","#dcf0dd"],"color_groups":[{"hex":"#b37d6c","weight":0.3585,"lightness":0.5627,"saturation":0.3184,"hue_group":"red"},{"hex":"#8c745c","weight":0.283,"lightness":0.4549,"saturation":0.2069,"hue_group":"red"},{"hex":"#7fca83","weight":0.1321,"lightness":0.6451,"saturation":0.4144,"hue_group":"green"},{"hex":"#5f634c","weight":0.1132,"lightness":0.3431,"saturation":0.1314,"hue_group":"yellow"},{"hex":"#7c6c54","weight":0.0755,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#dcf0dd","weight":0.0377,"lightness":0.902,"saturation":0.4,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper_lantern.png","family":"exposed_copper_lantern","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:daylight_detector","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:conduit","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:loom","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fletching_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_lantern","label":"Palette proche: Waxed Exposed Copper Lantern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.901},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.901},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.893},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.893},{"type":"color_neighbors","target":"minecraft:exposed_lightning_rod","label":"Palette proche: Exposed Lightning Rod","confidence":0.871},{"type":"color_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Palette proche: Waxed Exposed Lightning Rod","confidence":0.871},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.866},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.866},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.86},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.86},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:exposed_lightning_rod","label":"Pont de nuance par sous-ton: Exposed Lightning Rod","confidence":0.894},{"type":"color_bridge","target":"minecraft:waxed_exposed_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Exposed Lightning Rod","confidence":0.894},{"type":"color_bridge","target":"minecraft:exposed_copper_door","label":"Pont de nuance par sous-ton: Exposed Copper Door","confidence":0.89},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_door","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Door","confidence":0.89},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.885},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.885},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Copper","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chest","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chest","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Golem Statue","confidence":0.885},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:exposed_copper_trapdoor","name":"Exposed Copper Trapdoor","entry_type":"block","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","history":[{"version":"1.20.3","status":"added","notes":"Added copper trapdoors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#a17d69","dominant_hex":"#7c7054","average_hex":"#a17d69","hue_group":"red","lightness":0.5216,"saturation":0.2295,"palette":["#7c7054","#cc8c84","#ac7464","#bc8474","#988e6c","#947464"],"color_groups":[{"hex":"#7c7054","weight":0.2892,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#cc8c84","weight":0.1961,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#ac7464","weight":0.1422,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#bc8474","weight":0.1373,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#988e6c","weight":0.1225,"lightness":0.5098,"saturation":0.176,"hue_group":"yellow"},{"hex":"#947464","weight":0.1127,"lightness":0.4863,"saturation":0.1935,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper_trapdoor.png","family":"exposed_copper_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Palette proche: Waxed Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Palette proche: Waxed Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Couleurs analogues: Waxed Exposed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_grate","label":"Couleurs analogues: Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_grate","label":"Couleurs analogues: Waxed Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper","label":"Couleurs analogues: Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_chest","label":"Couleurs analogues: Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_golem_statue","label":"Couleurs analogues: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper","label":"Couleurs analogues: Waxed Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_chest","label":"Couleurs analogues: Waxed Exposed Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.939},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.933},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.932},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.932},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.91},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.907},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.916},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.898},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.887},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.822},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.822},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.822},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.822},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.907},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.84},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.839},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.828},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.802},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.732},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.732},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55}],"category":"building"},{"id":"minecraft:exposed_cut_copper","name":"Exposed Cut Copper","entry_type":"block","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed cut copper and three variants of waxed cut copper."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cut copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#9b7a65","dominant_hex":"#967a66","average_hex":"#9b7a65","hue_group":"red","lightness":0.502,"saturation":0.2126,"palette":["#967a66","#7c7a58","#bc8474","#ac7464","#746454","#cc8c84"],"color_groups":[{"hex":"#967a66","weight":0.2383,"lightness":0.4941,"saturation":0.1905,"hue_group":"red"},{"hex":"#7c7a58","weight":0.2305,"lightness":0.4157,"saturation":0.1698,"hue_group":"yellow"},{"hex":"#bc8474","weight":0.1719,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#ac7464","weight":0.1484,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#746454","weight":0.1133,"lightness":0.3922,"saturation":0.16,"hue_group":"yellow"},{"hex":"#cc8c84","weight":0.0977,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_cut_copper.png","family":"exposed_cut_copper","relations":[{"type":"variants","target":"minecraft:exposed_cut_copper_slab","label":"Same family: exposed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:exposed_cut_copper_slab","label":"Related set: exposed_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:exposed_cut_copper_stairs","label":"Same family: exposed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:exposed_cut_copper_stairs","label":"Related set: exposed_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Palette proche: Exposed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Palette proche: Exposed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Palette proche: Waxed Exposed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Palette proche: Waxed Exposed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Palette proche: Waxed Exposed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Palette proche: Waxed Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_door","label":"Pont de nuance par sous-ton: Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_door","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_grate","label":"Pont de nuance par sous-ton: Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chest","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_grate","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Grate","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:exposed_cut_copper_slab","name":"Exposed Cut Copper Slab","entry_type":"block","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper slabs and three variants of waxed cut copper slabs."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper slabs."}],"colors":{"primary":"#9b7a65","dominant_hex":"#967a66","average_hex":"#9b7a65","hue_group":"red","lightness":0.502,"saturation":0.2126,"palette":["#967a66","#7c7a58","#bc8474","#ac7464","#746454","#cc8c84"],"color_groups":[{"hex":"#967a66","weight":0.2383,"lightness":0.4941,"saturation":0.1905,"hue_group":"red"},{"hex":"#7c7a58","weight":0.2305,"lightness":0.4157,"saturation":0.1698,"hue_group":"yellow"},{"hex":"#bc8474","weight":0.1719,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#ac7464","weight":0.1484,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#746454","weight":0.1133,"lightness":0.3922,"saturation":0.16,"hue_group":"yellow"},{"hex":"#cc8c84","weight":0.0977,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_cut_copper.png","family":"exposed_cut_copper","relations":[{"type":"variants","target":"minecraft:exposed_cut_copper","label":"Same family: exposed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:exposed_cut_copper","label":"Related set: exposed_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:exposed_cut_copper_stairs","label":"Same family: exposed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:exposed_cut_copper_stairs","label":"Related set: exposed_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Palette proche: Exposed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Palette proche: Waxed Exposed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Palette proche: Waxed Exposed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Palette proche: Waxed Exposed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Palette proche: Waxed Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_door","label":"Pont de nuance par sous-ton: Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_door","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_grate","label":"Pont de nuance par sous-ton: Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chest","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_grate","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Grate","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:exposed_cut_copper_stairs","name":"Exposed Cut Copper Stairs","entry_type":"block","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper stairs and three variants of waxed cut copper stairs: (waxed) cut copper stairs, (waxed) lightly weathered cut copper stairs, (waxed) semi-weathered cut copper stairs, and weathered cut"},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper stairs."}],"colors":{"primary":"#9b7a65","dominant_hex":"#967a66","average_hex":"#9b7a65","hue_group":"red","lightness":0.502,"saturation":0.2126,"palette":["#967a66","#7c7a58","#bc8474","#ac7464","#746454","#cc8c84"],"color_groups":[{"hex":"#967a66","weight":0.2383,"lightness":0.4941,"saturation":0.1905,"hue_group":"red"},{"hex":"#7c7a58","weight":0.2305,"lightness":0.4157,"saturation":0.1698,"hue_group":"yellow"},{"hex":"#bc8474","weight":0.1719,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#ac7464","weight":0.1484,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#746454","weight":0.1133,"lightness":0.3922,"saturation":0.16,"hue_group":"yellow"},{"hex":"#cc8c84","weight":0.0977,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_cut_copper.png","family":"exposed_cut_copper","relations":[{"type":"variants","target":"minecraft:exposed_cut_copper","label":"Same family: exposed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:exposed_cut_copper","label":"Related set: exposed_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:exposed_cut_copper_slab","label":"Same family: exposed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:exposed_cut_copper_slab","label":"Related set: exposed_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Palette proche: Exposed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Palette proche: Waxed Exposed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Palette proche: Waxed Exposed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Palette proche: Waxed Exposed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Palette proche: Waxed Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_door","label":"Pont de nuance par sous-ton: Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_door","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_grate","label":"Pont de nuance par sous-ton: Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chest","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_grate","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Grate","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:exposed_lightning_rod","name":"Exposed Lightning Rod","entry_type":"block","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added lightning rods."},{"version":"wiki-history","status":"added","notes":"Added exposed, weathered and oxidized variants of lightning rods."}],"colors":{"primary":"#9f7868","dominant_hex":"#bc8474","average_hex":"#9f7868","hue_group":"red","lightness":0.5157,"saturation":0.2227,"palette":["#bc8474","#7c6c54","#a77b66","#8c745c","#cc8c84","#645c4c"],"color_groups":[{"hex":"#bc8474","weight":0.3,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#7c6c54","weight":0.175,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#a77b66","weight":0.175,"lightness":0.5275,"saturation":0.2697,"hue_group":"red"},{"hex":"#8c745c","weight":0.125,"lightness":0.4549,"saturation":0.2069,"hue_group":"red"},{"hex":"#cc8c84","weight":0.125,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#645c4c","weight":0.1,"lightness":0.3451,"saturation":0.1364,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_lightning_rod.png","family":"exposed_lightning_rod","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Palette proche: Waxed Exposed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Palette proche: Waxed Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_analogous","target":"minecraft:waxed_exposed_lightning_rod","label":"Couleurs analogues: Waxed Exposed Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_door","label":"Couleurs analogues: Exposed Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_door","label":"Couleurs analogues: Waxed Exposed Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite","label":"Couleurs analogues: Polished Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_slab","label":"Couleurs analogues: Polished Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_stairs","label":"Couleurs analogues: Polished Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite","label":"Couleurs analogues: Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_slab","label":"Couleurs analogues: Granite Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.95},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.919},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.915},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.901},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.901},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.895},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.839},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.957},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.953},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.836},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.959},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.897},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.897},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.865},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.853},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.849},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55}],"category":""},{"id":"minecraft:eye_armor_trim_smithing_template","name":"Eye Armor Trim Smithing Template","entry_type":"item","description":"An eye armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, end stone, and diamonds.","history":[{"version":"1.19.4","status":"added","notes":"Added the eye armor trim smithing template behind the \"Update 1.20\" experimental data pack."}],"colors":{"primary":"#b9c08f","dominant_hex":"#d7df9b","average_hex":"#b9c08f","hue_group":"yellow","lightness":0.6569,"saturation":0.28,"palette":["#d7df9b","#bcac74","#8c6c4c","#9c946c","#64dee4","#ecf4b4"],"color_groups":[{"hex":"#d7df9b","weight":0.4061,"lightness":0.7412,"saturation":0.5152,"hue_group":"yellow"},{"hex":"#bcac74","weight":0.1515,"lightness":0.5961,"saturation":0.3495,"hue_group":"yellow"},{"hex":"#8c6c4c","weight":0.1273,"lightness":0.4235,"saturation":0.2963,"hue_group":"red"},{"hex":"#9c946c","weight":0.1212,"lightness":0.5176,"saturation":0.1951,"hue_group":"yellow"},{"hex":"#64dee4","weight":0.097,"lightness":0.6431,"saturation":0.7033,"hue_group":"cyan"},{"hex":"#ecf4b4","weight":0.097,"lightness":0.8314,"saturation":0.7442,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/eye_armor_trim_smithing_template.png","family":"eye_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cooked_cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trader_llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bordure_indented_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:field_masoned_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mojang_banner_pattern","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:farmland","name":"Farmland","entry_type":"block","description":"Farmland is a block created by using a hoe on most types of dirt, and cannot be obtained in the inventory in Survival mode. It is required to grow all types of seeds, as well as carrots and potatoes. Hydrated farmland (wet farmland) is farmland that becomes soaked with water from a water block within 4 blocks horizontally and on the same level or 1 block above the farmland block.","history":[{"version":"20100206-2034","status":"added","notes":"Added farmland."}],"colors":{"primary":"#8f6747","dominant_hex":"#946c4c","average_hex":"#8f6747","hue_group":"red","lightness":0.4196,"saturation":0.3364,"palette":["#946c4c","#7c543c","#bc845c","#5c3c2c","#545454","#6c6c6c"],"color_groups":[{"hex":"#946c4c","weight":0.3711,"lightness":0.4392,"saturation":0.3214,"hue_group":"red"},{"hex":"#7c543c","weight":0.2461,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#bc845c","weight":0.2461,"lightness":0.549,"saturation":0.4174,"hue_group":"red"},{"hex":"#5c3c2c","weight":0.1211,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#545454","weight":0.0117,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0039,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/farmland.png","family":"farmland","relations":[{"type":"visual_neighbors","target":"minecraft:dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:decorated_pot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:coarse_dirt","label":"Palette proche: Coarse Dirt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:rooted_dirt","label":"Palette proche: Rooted Dirt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.924},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.919},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.919},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.919},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.919},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.919},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.919},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.919},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.919},{"type":"color_bridge","target":"minecraft:iron_ore","label":"Pont de nuance par sous-ton: Iron Ore","confidence":0.87},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.865},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.864},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.86},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.847},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.847},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.845},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.845},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.842},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.842},{"type":"color_analogous","target":"minecraft:dirt","label":"Couleurs analogues: Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_trapdoor","label":"Couleurs analogues: Jungle Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:glow_item_frame","label":"Couleurs analogues: Glow Item Frame","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_slab","label":"Couleurs analogues: Mud Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_stairs","label":"Couleurs analogues: Mud Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_wall","label":"Couleurs analogues: Mud Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_bricks","label":"Couleurs analogues: Mud Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:packed_mud","label":"Couleurs analogues: Packed Mud","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.934},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.934},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.934},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.883},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.883},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.861},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.845},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.836},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.949},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.948},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.938},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.938},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.934},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.904},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.892},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.95},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.856},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.854},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.816},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.816},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.811},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.807},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.776},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_trapdoor","label":"Contraste clair sombre: Cherry Trapdoor","confidence":0.55}],"category":""},{"id":"minecraft:feather","name":"Feather","entry_type":"item","description":"Feathers are items dropped by chickens and parrots, and can be found in loot chests of certain structures. Tamed cats will give players feathers as morning gifts. Feathers can be used in an array of crafting recipes.","history":[{"version":"0.31 20100130","status":"added","notes":"Added feathers."},{"version":"19w07a","status":"added","notes":"Added foxes , which sometimes spawn with feathers in their mouths."}],"colors":{"primary":"#cfcfcf","dominant_hex":"#d4d4d4","average_hex":"#cfcfcf","hue_group":"neutral","lightness":0.8118,"saturation":0.0,"palette":["#d4d4d4","#fcfcfc","#949494","#bcbcbc"],"color_groups":[{"hex":"#d4d4d4","weight":0.4308,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.2462,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.2,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcbc","weight":0.1231,"lightness":0.7373,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/feather.png","family":"feather","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:paper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sugar","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polar_bear_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tipped_arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_tears","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:fermented_spider_eye","name":"Fermented Spider Eye","entry_type":"item","description":"A fermented spider eye is an item used to corrupt the effects of certain potions via brewing, and is required to brew potions of Weakness.","history":[{"version":"1.0.0","status":"added","notes":"Added fermented spider eyes."}],"colors":{"primary":"#671027","dominant_hex":"#7c0c24","average_hex":"#671027","hue_group":"red","lightness":0.2333,"saturation":0.7311,"palette":["#7c0c24","#a7303e","#2c0617","#420424","#540424","#64042c"],"color_groups":[{"hex":"#7c0c24","weight":0.2838,"lightness":0.2667,"saturation":0.8235,"hue_group":"red"},{"hex":"#a7303e","weight":0.2162,"lightness":0.4216,"saturation":0.5535,"hue_group":"red"},{"hex":"#2c0617","weight":0.1892,"lightness":0.098,"saturation":0.76,"hue_group":"red"},{"hex":"#420424","weight":0.1757,"lightness":0.1373,"saturation":0.8857,"hue_group":"purple"},{"hex":"#540424","weight":0.0811,"lightness":0.1725,"saturation":0.9091,"hue_group":"red"},{"hex":"#64042c","weight":0.0541,"lightness":0.2039,"saturation":0.9231,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/fermented_spider_eye.png","family":"fermented_spider_eye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:beetroot_soup","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_eye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cube_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rotten_flesh","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:apple","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_stew","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:saddle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa_beans","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berries","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:fern","name":"Fern","entry_type":"block","description":"Ferns are a non-solid plant block found only in certain biomes and have the same characteristics as grass.","history":[{"version":"1.6","status":"added","notes":"Added ferns. [ 1 ]"}],"colors":{"primary":"#7c7d7c","dominant_hex":"#6c6c6c","average_hex":"#7c7d7c","hue_group":"neutral","lightness":0.4882,"saturation":0.004,"palette":["#6c6c6c","#5c5c5c","#7c7c7c","#a4a4a4","#8c8c8c","#949494"],"color_groups":[{"hex":"#6c6c6c","weight":0.2247,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.2022,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1798,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.1798,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1236,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.0899,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/fern.png","family":"fern","relations":[{"type":"visual_neighbors","target":"minecraft:potted_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bush","label":"Palette proche: Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:lily_pad","label":"Pont de nuance par palette: Lily Pad","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:bush","label":"Pont de nuance par palette: Bush","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55}],"category":""},{"id":"minecraft:field_masoned_banner_pattern","name":"Field Masoned Banner Pattern","entry_type":"item","description":"A field masoned banner pattern is a banner pattern used to customize banners with a shape of bricks.","history":[{"version":"1.21.2 24w33a","status":"added","notes":"Added field masoned banner patterns."}],"colors":{"primary":"#b7ae9d","dominant_hex":"#ececec","average_hex":"#b7ae9d","hue_group":"yellow","lightness":0.6667,"saturation":0.1529,"palette":["#ececec","#847454","#65473c","#b3a488","#dcd4bc","#948c6c"],"color_groups":[{"hex":"#ececec","weight":0.3659,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#847454","weight":0.1646,"lightness":0.4235,"saturation":0.2222,"hue_group":"yellow"},{"hex":"#65473c","weight":0.1463,"lightness":0.3157,"saturation":0.2547,"hue_group":"red"},{"hex":"#b3a488","weight":0.1402,"lightness":0.6176,"saturation":0.2205,"hue_group":"yellow"},{"hex":"#dcd4bc","weight":0.128,"lightness":0.8,"saturation":0.3137,"hue_group":"yellow"},{"hex":"#948c6c","weight":0.0549,"lightness":0.502,"saturation":0.1575,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/field_masoned_banner_pattern.png","family":"field_masoned_banner_pattern","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:bordure_indented_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mojang_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:filled_map","name":"Filled Map","entry_type":"item","description":"A map is an item used to view explored surface terrain and, in Java Edition, players. Maps can be cloned, zoomed out and locked using a cartography table. A locator map is a variant in Bedrock Edition which shows player locations.","history":[{"version":"1.6","status":"added","notes":"Added maps."},{"version":"4 ]","status":"added","notes":"added to maps for different blocks . [ 4 ]"},{"version":"wiki-history","status":"added","notes":"added for zooming in maps."}],"colors":{"primary":"#d5d6ab","dominant_hex":"#fcfcf4","average_hex":"#d5d6ab","hue_group":"yellow","lightness":0.7549,"saturation":0.344,"palette":["#fcfcf4","#848c3c","#a4ac4c","#dcdcac","#ececc4","#bcc474"],"color_groups":[{"hex":"#fcfcf4","weight":0.4286,"lightness":0.9725,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#848c3c","weight":0.1633,"lightness":0.3922,"saturation":0.4,"hue_group":"yellow"},{"hex":"#a4ac4c","weight":0.1429,"lightness":0.4863,"saturation":0.3871,"hue_group":"yellow"},{"hex":"#dcdcac","weight":0.1224,"lightness":0.7686,"saturation":0.4068,"hue_group":"yellow"},{"hex":"#ececc4","weight":0.1224,"lightness":0.8471,"saturation":0.5128,"hue_group":"yellow"},{"hex":"#bcc474","weight":0.0204,"lightness":0.6118,"saturation":0.404,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/filled_map.png","family":"filled_map","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:map","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:eye_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trader_llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_porkchop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:fire","name":"Fire","entry_type":"block","description":"Fire is a non-solid block that can spread to nearby flammable blocks and destroy them.","history":[{"version":"0.31 20100109-1939","status":"added","notes":"Added fire."},{"version":"20100617-1531","status":"added","notes":"Added a backup fire texture for if the animation could not be loaded."},{"version":"wiki-history","status":"added","notes":"added to terrain.png corresponding to the second fire texture."}],"colors":{"primary":"#d48c36","dominant_hex":"#ca6e04","average_hex":"#d48c36","hue_group":"yellow","lightness":0.5216,"saturation":0.6475,"palette":["#ca6e04","#db9816","#be5504","#fcfaf2","#b44604","#efce5b"],"color_groups":[{"hex":"#ca6e04","weight":0.2061,"lightness":0.4039,"saturation":0.9612,"hue_group":"yellow"},{"hex":"#db9816","weight":0.1984,"lightness":0.4725,"saturation":0.8174,"hue_group":"yellow"},{"hex":"#be5504","weight":0.1961,"lightness":0.3804,"saturation":0.9588,"hue_group":"red"},{"hex":"#fcfaf2","weight":0.1627,"lightness":0.9686,"saturation":0.625,"hue_group":"yellow"},{"hex":"#b44604","weight":0.1369,"lightness":0.3608,"saturation":0.9565,"hue_group":"red"},{"hex":"#efce5b","weight":0.0997,"lightness":0.6471,"saturation":0.8222,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/fire_0.png","family":"fire","relations":[{"type":"visual_neighbors","target":"minecraft:jack_o_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bell","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nest","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.835},{"type":"color_neighbors","target":"minecraft:jack_o_lantern","label":"Palette proche: Jack O Lantern","confidence":0.818},{"type":"color_neighbors","target":"minecraft:pumpkin","label":"Palette proche: Pumpkin","confidence":0.816},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.799},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.788},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.788},{"type":"color_neighbors","target":"minecraft:orange_concrete","label":"Palette proche: Orange Concrete","confidence":0.787},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.786},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.782},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.782},{"type":"color_neighbors","target":"minecraft:orange_candle","label":"Palette proche: Orange Candle","confidence":0.781},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.781},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.679},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.637},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.637},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.619},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.58},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.58},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.58},{"type":"color_analogous","target":"minecraft:pumpkin","label":"Couleurs analogues: Pumpkin","confidence":0.96},{"type":"color_analogous","target":"minecraft:glowstone","label":"Couleurs analogues: Glowstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_hanging_sign","label":"Couleurs analogues: Jungle Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_wall_hanging_sign","label":"Couleurs analogues: Jungle Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_jungle_log","label":"Couleurs analogues: Stripped Jungle Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_jungle_wood","label":"Couleurs analogues: Stripped Jungle Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:sniffer_egg","label":"Couleurs analogues: Sniffer Egg","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_button","label":"Couleurs analogues: Spruce Button","confidence":0.958},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.815},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.792},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.782},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.766},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.759},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.753},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.958},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.945},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.942},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.934},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.946},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.937},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.929},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.913},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.908},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.908},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.9},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.897},{"type":"value_contrast","target":"minecraft:spruce_log","label":"Contraste clair sombre: Spruce Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_wood","label":"Contraste clair sombre: Spruce Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:fire_charge","name":"Fire Charge","entry_type":"item","description":"A fire charge is an item that can be used as a single-use version of a flint and steel or shot as a small fireball from a dispenser.","history":[{"version":"1.0.0","status":"added","notes":"Added the fire charge texture. It is currently only used by fireballs and small fireballs , both of which are entities, and is not used by any items."},{"version":"1.2.1 12w04a","status":"added","notes":"Added fire charges, which use the above texture. They can be crafted only with coal ."},{"version":"1.19.4 23w06a","status":"added","notes":"Added the fire charge to the \"Ingredients\" tab in the creative inventory."}],"colors":{"primary":"#5c4229","dominant_hex":"#7b6952","average_hex":"#5c4229","hue_group":"red","lightness":0.2608,"saturation":0.3835,"palette":["#7b6952","#34302c","#1c1414","#544c34","#b4560a","#542c04"],"color_groups":[{"hex":"#7b6952","weight":0.25,"lightness":0.402,"saturation":0.2,"hue_group":"yellow"},{"hex":"#34302c","weight":0.2143,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#1c1414","weight":0.1696,"lightness":0.0941,"saturation":0.1667,"hue_group":"red"},{"hex":"#544c34","weight":0.1518,"lightness":0.2667,"saturation":0.2353,"hue_group":"yellow"},{"hex":"#b4560a","weight":0.1518,"lightness":0.3725,"saturation":0.8947,"hue_group":"red"},{"hex":"#542c04","weight":0.0625,"lightness":0.1725,"saturation":0.9091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/fire_charge.png","family":"fire_charge","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:wandering_trader_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:written_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:fire_coral","name":"Fire Coral","entry_type":"block","description":"Coral is a type of non-solid block that comes in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w10a","status":"added","notes":"Added coral plants."},{"version":"18w10d","status":"added","notes":"Added coral reefs , allowing coral plants to generate naturally."}],"colors":{"primary":"#a7262f","dominant_hex":"#7c1c24","average_hex":"#a7262f","hue_group":"red","lightness":0.402,"saturation":0.6293,"palette":["#7c1c24","#a4242c","#c42c34","#e43c34"],"color_groups":[{"hex":"#7c1c24","weight":0.3303,"lightness":0.298,"saturation":0.6316,"hue_group":"red"},{"hex":"#a4242c","weight":0.2936,"lightness":0.3922,"saturation":0.64,"hue_group":"red"},{"hex":"#c42c34","weight":0.2202,"lightness":0.4706,"saturation":0.6333,"hue_group":"red"},{"hex":"#e43c34","weight":0.156,"lightness":0.549,"saturation":0.7652,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/fire_coral.png","family":"fire_coral","relations":[{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_torch","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_mushroom_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.905},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.905},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.899},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.881},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.881},{"type":"color_neighbors","target":"minecraft:red_mushroom_block","label":"Palette proche: Red Mushroom Block","confidence":0.87},{"type":"color_neighbors","target":"minecraft:red_glazed_terracotta","label":"Palette proche: Red Glazed Terracotta","confidence":0.866},{"type":"color_neighbors","target":"minecraft:red_concrete","label":"Palette proche: Red Concrete","confidence":0.842},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.832},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.686},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.666},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.654},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.653},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.652},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.638},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.636},{"type":"color_bridge","target":"minecraft:podzol","label":"Pont de nuance par palette: Podzol","confidence":0.636},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.625},{"type":"color_bridge","target":"minecraft:raw_gold_block","label":"Pont de nuance par palette: Raw Gold Block","confidence":0.619},{"type":"color_analogous","target":"minecraft:fire_coral_block","label":"Couleurs analogues: Fire Coral Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire_coral_fan","label":"Couleurs analogues: Fire Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire_coral_wall_fan","label":"Couleurs analogues: Fire Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.953},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.953},{"type":"color_analogous","target":"minecraft:black_glazed_terracotta","label":"Couleurs analogues: Black Glazed Terracotta","confidence":0.935},{"type":"color_analogous","target":"minecraft:cherry_hanging_sign","label":"Couleurs analogues: Cherry Hanging Sign","confidence":0.922},{"type":"color_analogous","target":"minecraft:cherry_wall_hanging_sign","label":"Couleurs analogues: Cherry Wall Hanging Sign","confidence":0.922},{"type":"color_complement","target":"minecraft:warped_shelf","label":"Contraste complementaire: Warped Shelf","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_door","label":"Contraste complementaire: Warped Door","confidence":0.96},{"type":"color_complement","target":"minecraft:beacon","label":"Contraste complementaire: Beacon","confidence":0.96},{"type":"color_complement","target":"minecraft:diamond_block","label":"Contraste complementaire: Diamond Block","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_button","label":"Contraste complementaire: Warped Button","confidence":0.925},{"type":"color_complement","target":"minecraft:warped_fence","label":"Contraste complementaire: Warped Fence","confidence":0.925},{"type":"color_complement","target":"minecraft:warped_fence_gate","label":"Contraste complementaire: Warped Fence Gate","confidence":0.925},{"type":"color_complement","target":"minecraft:warped_planks","label":"Contraste complementaire: Warped Planks","confidence":0.925},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.917},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.917},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.893},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.886},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.878},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.877},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.835},{"type":"color_square","target":"minecraft:lime_concrete_powder","label":"Harmonie carree: Lime Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:orange_tulip","label":"Harmonie carree: Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_orange_tulip","label":"Harmonie carree: Potted Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:lime_stained_glass_pane","label":"Harmonie carree: Lime Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:lime_stained_glass","label":"Harmonie carree: Lime Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:oak_sapling","label":"Harmonie carree: Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_oak_sapling","label":"Harmonie carree: Potted Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:nether_portal","label":"Harmonie carree: Nether Portal","confidence":0.959},{"type":"value_contrast","target":"minecraft:pink_glazed_terracotta","label":"Contraste clair sombre: Pink Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_sign","label":"Contraste clair sombre: Cherry Sign","confidence":0.55}],"category":"natural"},{"id":"minecraft:fire_coral_block","name":"Fire Coral Block","entry_type":"block","description":"A coral block is a solid block that comes in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"20100629","status":"added","notes":"added to terrain.png ."},{"version":"1.13 18w09a","status":"added","notes":"Added coral."},{"version":"18w10d","status":"added","notes":"Added coral reefs , allowing coral to generate naturally."}],"colors":{"primary":"#a4232f","dominant_hex":"#a4242c","average_hex":"#a4232f","hue_group":"red","lightness":0.3902,"saturation":0.6482,"palette":["#a4242c","#c42c34","#8c1c2c","#7c1c24","#e43c34"],"color_groups":[{"hex":"#a4242c","weight":0.3125,"lightness":0.3922,"saturation":0.64,"hue_group":"red"},{"hex":"#c42c34","weight":0.2617,"lightness":0.4706,"saturation":0.6333,"hue_group":"red"},{"hex":"#8c1c2c","weight":0.1992,"lightness":0.3294,"saturation":0.6667,"hue_group":"red"},{"hex":"#7c1c24","weight":0.1758,"lightness":0.298,"saturation":0.6316,"hue_group":"red"},{"hex":"#e43c34","weight":0.0508,"lightness":0.549,"saturation":0.7652,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/fire_coral_block.png","family":"fire_coral_block","relations":[{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fire_coral","label":"Palette proche: Fire Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.91},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.91},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.906},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.889},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.886},{"type":"color_neighbors","target":"minecraft:red_mushroom_block","label":"Palette proche: Red Mushroom Block","confidence":0.874},{"type":"color_neighbors","target":"minecraft:red_glazed_terracotta","label":"Palette proche: Red Glazed Terracotta","confidence":0.865},{"type":"color_neighbors","target":"minecraft:red_concrete","label":"Palette proche: Red Concrete","confidence":0.853},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.835},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.687},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.67},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.658},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.656},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.649},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.642},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.639},{"type":"color_bridge","target":"minecraft:podzol","label":"Pont de nuance par palette: Podzol","confidence":0.636},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.629},{"type":"color_bridge","target":"minecraft:sniffer_egg","label":"Pont de nuance par palette: Sniffer Egg","confidence":0.621},{"type":"color_analogous","target":"minecraft:fire_coral_fan","label":"Couleurs analogues: Fire Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire_coral_wall_fan","label":"Couleurs analogues: Fire Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire_coral","label":"Couleurs analogues: Fire Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.924},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.924},{"type":"color_analogous","target":"minecraft:black_glazed_terracotta","label":"Couleurs analogues: Black Glazed Terracotta","confidence":0.907},{"type":"color_analogous","target":"minecraft:nether_wart","label":"Couleurs analogues: Nether Wart","confidence":0.892},{"type":"color_analogous","target":"minecraft:cherry_hanging_sign","label":"Couleurs analogues: Cherry Hanging Sign","confidence":0.889},{"type":"color_complement","target":"minecraft:warped_button","label":"Contraste complementaire: Warped Button","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_fence","label":"Contraste complementaire: Warped Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_fence_gate","label":"Contraste complementaire: Warped Fence Gate","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_planks","label":"Contraste complementaire: Warped Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_pressure_plate","label":"Contraste complementaire: Warped Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_sign","label":"Contraste complementaire: Warped Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_slab","label":"Contraste complementaire: Warped Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_stairs","label":"Contraste complementaire: Warped Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.939},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.936},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.888},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.862},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.862},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.838},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.823},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.822},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.96},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.952},{"type":"color_square","target":"minecraft:nether_portal","label":"Harmonie carree: Nether Portal","confidence":0.942},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.558},{"type":"value_contrast","target":"minecraft:pink_glazed_terracotta","label":"Contraste clair sombre: Pink Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55}],"category":"natural"},{"id":"minecraft:fire_coral_fan","name":"Fire Coral Fan","entry_type":"block","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w11a","status":"added","notes":"Added coral fans."}],"colors":{"primary":"#9f232e","dominant_hex":"#7c1c24","average_hex":"#9f232e","hue_group":"red","lightness":0.3804,"saturation":0.6392,"palette":["#7c1c24","#a4242c","#c42c34","#8c1c2c","#e43c34"],"color_groups":[{"hex":"#7c1c24","weight":0.3429,"lightness":0.298,"saturation":0.6316,"hue_group":"red"},{"hex":"#a4242c","weight":0.2857,"lightness":0.3922,"saturation":0.64,"hue_group":"red"},{"hex":"#c42c34","weight":0.1905,"lightness":0.4706,"saturation":0.6333,"hue_group":"red"},{"hex":"#8c1c2c","weight":0.0952,"lightness":0.3294,"saturation":0.6667,"hue_group":"red"},{"hex":"#e43c34","weight":0.0857,"lightness":0.549,"saturation":0.7652,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/fire_coral_fan.png","family":"fire_coral_fan","relations":[{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fire_coral","label":"Palette proche: Fire Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.908},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.906},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.906},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.887},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.883},{"type":"color_neighbors","target":"minecraft:red_glazed_terracotta","label":"Palette proche: Red Glazed Terracotta","confidence":0.866},{"type":"color_neighbors","target":"minecraft:red_mushroom_block","label":"Palette proche: Red Mushroom Block","confidence":0.865},{"type":"color_neighbors","target":"minecraft:red_concrete","label":"Palette proche: Red Concrete","confidence":0.852},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.83},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.683},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.676},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.656},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.652},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.651},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.641},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.638},{"type":"color_bridge","target":"minecraft:podzol","label":"Pont de nuance par palette: Podzol","confidence":0.636},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.623},{"type":"color_bridge","target":"minecraft:raw_gold_block","label":"Pont de nuance par palette: Raw Gold Block","confidence":0.616},{"type":"color_analogous","target":"minecraft:fire_coral_wall_fan","label":"Couleurs analogues: Fire Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire_coral_block","label":"Couleurs analogues: Fire Coral Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire_coral","label":"Couleurs analogues: Fire Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.932},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.932},{"type":"color_analogous","target":"minecraft:black_glazed_terracotta","label":"Couleurs analogues: Black Glazed Terracotta","confidence":0.914},{"type":"color_analogous","target":"minecraft:nether_wart","label":"Couleurs analogues: Nether Wart","confidence":0.9},{"type":"color_analogous","target":"minecraft:cherry_hanging_sign","label":"Couleurs analogues: Cherry Hanging Sign","confidence":0.893},{"type":"color_complement","target":"minecraft:warped_shelf","label":"Contraste complementaire: Warped Shelf","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_button","label":"Contraste complementaire: Warped Button","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_fence","label":"Contraste complementaire: Warped Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_fence_gate","label":"Contraste complementaire: Warped Fence Gate","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_planks","label":"Contraste complementaire: Warped Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_pressure_plate","label":"Contraste complementaire: Warped Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_sign","label":"Contraste complementaire: Warped Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_slab","label":"Contraste complementaire: Warped Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.946},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.929},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.878},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.873},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.873},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.848},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.834},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.833},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:nether_portal","label":"Harmonie carree: Nether Portal","confidence":0.953},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.953},{"type":"color_square","target":"minecraft:lime_stained_glass_pane","label":"Harmonie carree: Lime Stained Glass Pane","confidence":0.947},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.568},{"type":"value_contrast","target":"minecraft:pink_glazed_terracotta","label":"Contraste clair sombre: Pink Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_concrete_powder","label":"Contraste clair sombre: Pink Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_carpet","label":"Contraste clair sombre: Pink Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_wool","label":"Contraste clair sombre: Pink Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55}],"category":"natural"},{"id":"minecraft:fire_coral_wall_fan","name":"Fire Coral Wall Fan","entry_type":"block","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w11a","status":"added","notes":"Added coral fans."}],"colors":{"primary":"#9f232e","dominant_hex":"#7c1c24","average_hex":"#9f232e","hue_group":"red","lightness":0.3804,"saturation":0.6392,"palette":["#7c1c24","#a4242c","#c42c34","#8c1c2c","#e43c34"],"color_groups":[{"hex":"#7c1c24","weight":0.3429,"lightness":0.298,"saturation":0.6316,"hue_group":"red"},{"hex":"#a4242c","weight":0.2857,"lightness":0.3922,"saturation":0.64,"hue_group":"red"},{"hex":"#c42c34","weight":0.1905,"lightness":0.4706,"saturation":0.6333,"hue_group":"red"},{"hex":"#8c1c2c","weight":0.0952,"lightness":0.3294,"saturation":0.6667,"hue_group":"red"},{"hex":"#e43c34","weight":0.0857,"lightness":0.549,"saturation":0.7652,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/fire_coral_fan.png","family":"fire_coral_wall_fan","relations":[{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fire_coral","label":"Palette proche: Fire Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.908},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.906},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.906},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.887},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.883},{"type":"color_neighbors","target":"minecraft:red_glazed_terracotta","label":"Palette proche: Red Glazed Terracotta","confidence":0.866},{"type":"color_neighbors","target":"minecraft:red_mushroom_block","label":"Palette proche: Red Mushroom Block","confidence":0.865},{"type":"color_neighbors","target":"minecraft:red_concrete","label":"Palette proche: Red Concrete","confidence":0.852},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.83},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.683},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.676},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.656},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.652},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.651},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.641},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.638},{"type":"color_bridge","target":"minecraft:podzol","label":"Pont de nuance par palette: Podzol","confidence":0.636},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.623},{"type":"color_bridge","target":"minecraft:raw_gold_block","label":"Pont de nuance par palette: Raw Gold Block","confidence":0.616},{"type":"color_analogous","target":"minecraft:fire_coral_fan","label":"Couleurs analogues: Fire Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire_coral_block","label":"Couleurs analogues: Fire Coral Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire_coral","label":"Couleurs analogues: Fire Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.932},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.932},{"type":"color_analogous","target":"minecraft:black_glazed_terracotta","label":"Couleurs analogues: Black Glazed Terracotta","confidence":0.914},{"type":"color_analogous","target":"minecraft:nether_wart","label":"Couleurs analogues: Nether Wart","confidence":0.9},{"type":"color_analogous","target":"minecraft:cherry_hanging_sign","label":"Couleurs analogues: Cherry Hanging Sign","confidence":0.893},{"type":"color_complement","target":"minecraft:warped_shelf","label":"Contraste complementaire: Warped Shelf","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_button","label":"Contraste complementaire: Warped Button","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_fence","label":"Contraste complementaire: Warped Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_fence_gate","label":"Contraste complementaire: Warped Fence Gate","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_planks","label":"Contraste complementaire: Warped Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_pressure_plate","label":"Contraste complementaire: Warped Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_sign","label":"Contraste complementaire: Warped Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_slab","label":"Contraste complementaire: Warped Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.946},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.929},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.878},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.873},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.873},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.848},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.834},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.833},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:nether_portal","label":"Harmonie carree: Nether Portal","confidence":0.953},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.953},{"type":"color_square","target":"minecraft:lime_stained_glass_pane","label":"Harmonie carree: Lime Stained Glass Pane","confidence":0.947},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.568},{"type":"value_contrast","target":"minecraft:pink_glazed_terracotta","label":"Contraste clair sombre: Pink Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_concrete_powder","label":"Contraste clair sombre: Pink Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_carpet","label":"Contraste clair sombre: Pink Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_wool","label":"Contraste clair sombre: Pink Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55}],"category":"natural"},{"id":"minecraft:firefly_bush","name":"Firefly Bush","entry_type":"block","description":"A firefly bush is a decorative plant that produces firefly particles around it when exposed to darkness.","history":[{"version":"1.21.5 25w05a","status":"added","notes":"Added firefly bushes."}],"colors":{"primary":"#58532b","dominant_hex":"#444c24","average_hex":"#58532b","hue_group":"yellow","lightness":0.2569,"saturation":0.3435,"palette":["#444c24","#343c1c","#9c7c34","#746c44","#2c2c14","#5c5c34"],"color_groups":[{"hex":"#444c24","weight":0.1883,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#343c1c","weight":0.1753,"lightness":0.1725,"saturation":0.3636,"hue_group":"yellow"},{"hex":"#9c7c34","weight":0.1753,"lightness":0.4078,"saturation":0.5,"hue_group":"yellow"},{"hex":"#746c44","weight":0.1623,"lightness":0.3608,"saturation":0.2609,"hue_group":"yellow"},{"hex":"#2c2c14","weight":0.1558,"lightness":0.1255,"saturation":0.375,"hue_group":"yellow"},{"hex":"#5c5c34","weight":0.1429,"lightness":0.2824,"saturation":0.2778,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/firefly_bush.png","family":"firefly_bush","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_roots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:green_terracotta","label":"Palette proche: Green Terracotta","confidence":0.861},{"type":"color_neighbors","target":"minecraft:lime_terracotta","label":"Palette proche: Lime Terracotta","confidence":0.78},{"type":"color_neighbors","target":"minecraft:cocoa","label":"Palette proche: Cocoa","confidence":0.771},{"type":"color_neighbors","target":"minecraft:sea_pickle","label":"Palette proche: Sea Pickle","confidence":0.765},{"type":"color_neighbors","target":"minecraft:green_concrete","label":"Palette proche: Green Concrete","confidence":0.761},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.756},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.756},{"type":"color_neighbors","target":"minecraft:dried_kelp_block","label":"Palette proche: Dried Kelp Block","confidence":0.75},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.745},{"type":"color_neighbors","target":"minecraft:bamboo_block","label":"Palette proche: Bamboo Block","confidence":0.742},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.741},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.741},{"type":"color_bridge","target":"minecraft:dried_kelp_block","label":"Pont de nuance par palette: Dried Kelp Block","confidence":0.794},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.763},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.763},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.758},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.758},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.74},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.74},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.738},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.738},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.727},{"type":"color_analogous","target":"minecraft:horn_coral_block","label":"Couleurs analogues: Horn Coral Block","confidence":0.935},{"type":"color_analogous","target":"minecraft:orange_glazed_terracotta","label":"Couleurs analogues: Orange Glazed Terracotta","confidence":0.933},{"type":"color_analogous","target":"minecraft:bamboo_sapling","label":"Couleurs analogues: Bamboo Sapling","confidence":0.922},{"type":"color_analogous","target":"minecraft:copper_torch","label":"Couleurs analogues: Copper Torch","confidence":0.913},{"type":"color_analogous","target":"minecraft:copper_wall_torch","label":"Couleurs analogues: Copper Wall Torch","confidence":0.913},{"type":"color_analogous","target":"minecraft:horn_coral_fan","label":"Couleurs analogues: Horn Coral Fan","confidence":0.883},{"type":"color_analogous","target":"minecraft:horn_coral_wall_fan","label":"Couleurs analogues: Horn Coral Wall Fan","confidence":0.883},{"type":"color_analogous","target":"minecraft:horn_coral","label":"Couleurs analogues: Horn Coral","confidence":0.883},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.843},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.84},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.84},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.833},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.816},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.807},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.802},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.801},{"type":"color_triad","target":"minecraft:warped_button","label":"Harmonie triadique: Warped Button","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_fence","label":"Harmonie triadique: Warped Fence","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_fence_gate","label":"Harmonie triadique: Warped Fence Gate","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_planks","label":"Harmonie triadique: Warped Planks","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_pressure_plate","label":"Harmonie triadique: Warped Pressure Plate","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_sign","label":"Harmonie triadique: Warped Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_slab","label":"Harmonie triadique: Warped Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_stairs","label":"Harmonie triadique: Warped Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.942},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.928},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.928},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.921},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.875},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.866},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.718},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.717},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.687},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.653},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.637},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.637},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.637},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.637},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.631},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.603}],"category":""},{"id":"minecraft:firework_rocket","name":"Firework Rocket","entry_type":"item","description":"A firework rocket is an item that provides a speed boost when used while flying with elytra. It can also be launched as a projectile either by hand or from a crossbow or dispenser. It can also be crafted using extra gunpowder to fly farther or with up to seven firework stars to add customizable damage-dealing explosions.","history":[{"version":"1.4.6 12w49a","status":"added","notes":"Added firework rockets."},{"version":"12w50a","status":"added","notes":"Added sound and more effects to firework rockets."},{"version":"1.13 17w47a","status":"added","notes":"added by combining the firework star with dyes ."}],"colors":{"primary":"#9e5352","dominant_hex":"#be2c2c","average_hex":"#9e5352","hue_group":"red","lightness":0.4706,"saturation":0.3167,"palette":["#be2c2c","#9c2c2c","#2c140c","#b4ccd4","#761717","#f4f4f4"],"color_groups":[{"hex":"#be2c2c","weight":0.3023,"lightness":0.4588,"saturation":0.6239,"hue_group":"red"},{"hex":"#9c2c2c","weight":0.186,"lightness":0.3922,"saturation":0.56,"hue_group":"red"},{"hex":"#2c140c","weight":0.1395,"lightness":0.1098,"saturation":0.5714,"hue_group":"red"},{"hex":"#b4ccd4","weight":0.1395,"lightness":0.7686,"saturation":0.2712,"hue_group":"cyan"},{"hex":"#761717","weight":0.1163,"lightness":0.2765,"saturation":0.6738,"hue_group":"red"},{"hex":"#f4f4f4","weight":0.1163,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/firework_rocket.png","family":"firework_rocket","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:bolt_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_scute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brush","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_chest_boat","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:firework_star","name":"Firework Star","entry_type":"item","description":"A firework star is a crafting ingredient used to create explosive firework rockets, which deal damage based on the number of stars added. Firework stars can be crafted using various combinations of dyes and other items, which affect the appearance, colors and visual effects of the resulting explosions.","history":[{"version":"1.4.6 12w49a","status":"added","notes":"Added firework stars."},{"version":"1.13 17w47a","status":"added","notes":"added by combining the firework star with dyes ."}],"colors":{"primary":"#585858","dominant_hex":"#4c4c4c","average_hex":"#585858","hue_group":"neutral","lightness":0.3451,"saturation":0.0,"palette":["#4c4c4c","#747474","#2c2c2c","#8c8c8c","#545454","#646464"],"color_groups":[{"hex":"#4c4c4c","weight":0.3889,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.2917,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.1667,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.0972,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.0278,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#646464","weight":0.0278,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/firework_star.png","family":"firework_star","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gunpowder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:furnace_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_helmet","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:fishing_rod","name":"Fishing Rod","entry_type":"item","description":"A fishing rod is a tool that casts a bobber used to fish in water or to hook and pull mobs, items\u200c[JE only], and some other entities towards the player.","history":[{"version":"v1.1.1","status":"added","notes":"Added fishing rods."},{"version":"1.4.2 12w36a","status":"added","notes":"Added the carrot on a stick , which can be crafted using a fishing rod and a carrot ."},{"version":"17w16a","status":"added","notes":"Added sounds for reeling in fishing bobbers."}],"colors":{"primary":"#594f3d","dominant_hex":"#515151","average_hex":"#594f3d","hue_group":"yellow","lightness":0.2941,"saturation":0.1867,"palette":["#515151","#47341b","#2c1c0c","#c7c7c7","#6c4c1c","#8c6424"],"color_groups":[{"hex":"#515151","weight":0.2836,"lightness":0.3176,"saturation":0.0,"hue_group":"neutral"},{"hex":"#47341b","weight":0.2687,"lightness":0.1922,"saturation":0.449,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.194,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#c7c7c7","weight":0.1194,"lightness":0.7804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c4c1c","weight":0.0746,"lightness":0.2667,"saturation":0.5882,"hue_group":"yellow"},{"hex":"#8c6424","weight":0.0597,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/fishing_rod.png","family":"fishing_rod","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:fletching_table","name":"Fletching Table","entry_type":"block","description":"The fletching table is a fletcher's job site block that can generate naturally in villages. It is used to turn an unemployed villager into a fletcher.","history":[{"version":"1.14 18w44a","status":"added","notes":"Added fletching tables."}],"colors":{"primary":"#ad9b6f","dominant_hex":"#a0926c","average_hex":"#ad9b6f","hue_group":"yellow","lightness":0.5569,"saturation":0.2743,"palette":["#a0926c","#dbc787","#513519","#bcac74","#ccb47c","#e2e2e2"],"color_groups":[{"hex":"#a0926c","weight":0.3125,"lightness":0.5255,"saturation":0.2149,"hue_group":"yellow"},{"hex":"#dbc787","weight":0.2695,"lightness":0.6941,"saturation":0.5385,"hue_group":"yellow"},{"hex":"#513519","weight":0.1641,"lightness":0.2078,"saturation":0.5283,"hue_group":"yellow"},{"hex":"#bcac74","weight":0.1094,"lightness":0.5961,"saturation":0.3495,"hue_group":"yellow"},{"hex":"#ccb47c","weight":0.0898,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"},{"hex":"#e2e2e2","weight":0.0547,"lightness":0.8863,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/fletching_table_front.png","family":"fletching_table","relations":[{"type":"visual_neighbors","target":"minecraft:birch_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:conduit","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beehive","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.881},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.881},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.881},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.881},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.881},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.881},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.881},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.881},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.881},{"type":"color_neighbors","target":"minecraft:birch_shelf","label":"Palette proche: Birch Shelf","confidence":0.869},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.86},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.86},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.818},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.818},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.788},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.786},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.786},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.784},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.784},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.782},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.777},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.767},{"type":"color_analogous","target":"minecraft:birch_shelf","label":"Couleurs analogues: Birch Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:pitcher_crop","label":"Couleurs analogues: Pitcher Crop","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_candle","label":"Couleurs analogues: Yellow Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:raw_gold_block","label":"Couleurs analogues: Raw Gold Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:bell","label":"Couleurs analogues: Bell","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_glazed_terracotta","label":"Couleurs analogues: Yellow Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_concrete","label":"Couleurs analogues: Yellow Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_shulker_box","label":"Couleurs analogues: Yellow Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.903},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.903},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.866},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.856},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.84},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.813},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.954},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.927},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.884},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.884},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.867},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.867},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.866},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.866},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.826},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.825},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.779},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.666},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.666},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.664},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.66},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.644},{"type":"value_contrast","target":"minecraft:dark_oak_shelf","label":"Contraste clair sombre: Dark Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_terracotta","label":"Contraste clair sombre: Gray Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_trapdoor","label":"Contraste clair sombre: Dark Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55}],"category":"utility"},{"id":"minecraft:flint","name":"Flint","entry_type":"item","description":"Flint is a mineral obtained from gravel that can be used to craft a flint and steel, fletching table, and arrows.","history":[{"version":"20100219","status":"added","notes":"Added flint."}],"colors":{"primary":"#333232","dominant_hex":"#3c3c3c","average_hex":"#333232","hue_group":"neutral","lightness":0.198,"saturation":0.0099,"palette":["#3c3c3c","#2c2c2c","#242424","#0c0c0c","#545454","#8a8a8a"],"color_groups":[{"hex":"#3c3c3c","weight":0.2328,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.2241,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.2155,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#0c0c0c","weight":0.1724,"lightness":0.0471,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.0948,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8a8a8a","weight":0.0603,"lightness":0.5412,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/flint.png","family":"flint","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_11","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_stal","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flint_and_steel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_strad","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:flint_and_steel","name":"Flint And Steel","entry_type":"item","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#414141","dominant_hex":"#484848","average_hex":"#414141","hue_group":"neutral","lightness":0.2549,"saturation":0.0,"palette":["#484848","#343434","#979797","#141414","#040404","#2c2c2c"],"color_groups":[{"hex":"#484848","weight":0.2235,"lightness":0.2824,"saturation":0.0,"hue_group":"neutral"},{"hex":"#343434","weight":0.2,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#979797","weight":0.2,"lightness":0.5922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1529,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.1294,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.0941,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/flint_and_steel.png","family":"flint_and_steel","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_strad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_11","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flint","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gunpowder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_stal","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_horn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_13","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:furnace_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_star","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:flow_armor_trim_smithing_template","name":"Flow Armor Trim Smithing Template","entry_type":"item","description":"Flow armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, a breeze rod, and seven diamonds.","history":[{"version":"1.20.5","status":"added","notes":"Added the flow armor trim smithing template."}],"colors":{"primary":"#7287b5","dominant_hex":"#8a89cd","average_hex":"#7287b5","hue_group":"blue","lightness":0.5784,"saturation":0.3116,"palette":["#8a89cd","#6474ac","#aca4cc","#63e1e3","#344c6c","#4c5c8c"],"color_groups":[{"hex":"#8a89cd","weight":0.297,"lightness":0.6706,"saturation":0.4048,"hue_group":"blue"},{"hex":"#6474ac","weight":0.1818,"lightness":0.5333,"saturation":0.3025,"hue_group":"blue"},{"hex":"#aca4cc","weight":0.1455,"lightness":0.7216,"saturation":0.2817,"hue_group":"blue"},{"hex":"#63e1e3","weight":0.1333,"lightness":0.6392,"saturation":0.6957,"hue_group":"cyan"},{"hex":"#344c6c","weight":0.1273,"lightness":0.3137,"saturation":0.35,"hue_group":"blue"},{"hex":"#4c5c8c","weight":0.1152,"lightness":0.4235,"saturation":0.2963,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/flow_armor_trim_smithing_template.png","family":"flow_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_shard","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lingering_potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wind_charge","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_meal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:flow_banner_pattern","name":"Flow Banner Pattern","entry_type":"item","description":"A flow banner pattern is a banner pattern used to customize banners with a shape of a spiral. It can only be found in trial chambers and cannot be crafted.","history":[{"version":"1.20.5","status":"added","notes":"Added flow banner patterns."},{"version":"1.21.2 24w33a","status":"added","notes":"Added a unique item icon texture for flow banner patterns."}],"colors":{"primary":"#b1a694","dominant_hex":"#ececec","average_hex":"#b1a694","hue_group":"yellow","lightness":0.6373,"saturation":0.1568,"palette":["#ececec","#65483e","#847454","#b2a489","#dcd4bc","#948c6c"],"color_groups":[{"hex":"#ececec","weight":0.3086,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#65483e","weight":0.1852,"lightness":0.3196,"saturation":0.2393,"hue_group":"red"},{"hex":"#847454","weight":0.1728,"lightness":0.4235,"saturation":0.2222,"hue_group":"yellow"},{"hex":"#b2a489","weight":0.1481,"lightness":0.6176,"saturation":0.2103,"hue_group":"yellow"},{"hex":"#dcd4bc","weight":0.1296,"lightness":0.8,"saturation":0.3137,"hue_group":"yellow"},{"hex":"#948c6c","weight":0.0556,"lightness":0.502,"saturation":0.1575,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/flow_banner_pattern.png","family":"flow_banner_pattern","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mojang_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bordure_indented_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:field_masoned_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:flow_pottery_sherd","name":"Flow Pottery Sherd","entry_type":"item","description":"A flow pottery sherd is a pottery sherd that depicts a spiral or a wind charge. It can be found in trial chambers.","history":[{"version":"1.20.5","status":"added","notes":"Added flow pottery sherds."}],"colors":{"primary":"#673a30","dominant_hex":"#744336","average_hex":"#673a30","hue_group":"red","lightness":0.2961,"saturation":0.3642,"palette":["#744336","#5c342c","#542c24","#44241c","#995949","#844c3c"],"color_groups":[{"hex":"#744336","weight":0.2611,"lightness":0.3333,"saturation":0.3647,"hue_group":"red"},{"hex":"#5c342c","weight":0.2293,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#542c24","weight":0.172,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#44241c","weight":0.1529,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#995949","weight":0.0955,"lightness":0.4431,"saturation":0.354,"hue_group":"red"},{"hex":"#844c3c","weight":0.0892,"lightness":0.3765,"saturation":0.375,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/flow_pottery_sherd.png","family":"flow_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:plenty_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:flower_banner_pattern","name":"Flower Banner Pattern","entry_type":"item","description":"A flower charge banner pattern is a banner pattern used to customize banners with a shape of a flower.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added flower charge banner patterns."},{"version":"1.21.2 24w33a","status":"added","notes":"Added a unique item icon texture for flower charge banner patterns."}],"colors":{"primary":"#ada18f","dominant_hex":"#ececec","average_hex":"#ada18f","hue_group":"yellow","lightness":0.6196,"saturation":0.1546,"palette":["#ececec","#65483f","#847454","#b3a488","#dcd4bc","#948c6c"],"color_groups":[{"hex":"#ececec","weight":0.2744,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#65483f","weight":0.2195,"lightness":0.3216,"saturation":0.2317,"hue_group":"red"},{"hex":"#847454","weight":0.1646,"lightness":0.4235,"saturation":0.2222,"hue_group":"yellow"},{"hex":"#b3a488","weight":0.1402,"lightness":0.6176,"saturation":0.2205,"hue_group":"yellow"},{"hex":"#dcd4bc","weight":0.1402,"lightness":0.8,"saturation":0.3137,"hue_group":"yellow"},{"hex":"#948c6c","weight":0.061,"lightness":0.502,"saturation":0.1575,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/flower_banner_pattern.png","family":"flower_banner_pattern","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mojang_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bordure_indented_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:field_masoned_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:flower_pot","name":"Flower Pot","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#7c4535","dominant_hex":"#8c4c3c","average_hex":"#7c4535","hue_group":"red","lightness":0.3471,"saturation":0.4011,"palette":["#8c4c3c","#743c34","#7c4434","#844c3c","#643c2c"],"color_groups":[{"hex":"#8c4c3c","weight":0.24,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#743c34","weight":0.22,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#7c4434","weight":0.22,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#844c3c","weight":0.22,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#643c2c","weight":0.1,"lightness":0.2824,"saturation":0.3889,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/flower_pot.png","family":"flower_pot","relations":[{"type":"visual_neighbors","target":"minecraft:potted_bamboo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cactus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_bamboo","label":"Palette proche: Potted Bamboo","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_cactus","label":"Palette proche: Potted Cactus","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Palette proche: Potted Mangrove Propagule","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.815},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.809},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.796},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.793},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.793},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.782},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.771},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.771},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.771},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.769},{"type":"color_analogous","target":"minecraft:potted_bamboo","label":"Couleurs analogues: Potted Bamboo","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_cactus","label":"Couleurs analogues: Potted Cactus","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_mangrove_propagule","label":"Couleurs analogues: Potted Mangrove Propagule","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_slab","label":"Couleurs analogues: Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_stairs","label":"Couleurs analogues: Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_wall","label":"Couleurs analogues: Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:bricks","label":"Couleurs analogues: Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chain","label":"Couleurs analogues: Copper Chain","confidence":0.959},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.926},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.922},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.914},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.895},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.895},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.845},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.836},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.878},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.872},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.86},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.86},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.86},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.86},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.84},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.699},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.946},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.925},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.925},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.92},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.606},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.572},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.565},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.565},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.565},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.565},{"type":"value_contrast","target":"minecraft:white_terracotta","label":"Contraste clair sombre: White Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55}],"category":"natural"},{"id":"minecraft:flowering_azalea","name":"Flowering Azalea","entry_type":"block","description":"A flowering azalea is a variant of azalea that counts as a flower for all purposes, including pollination by bees, except for crafting dyes.","history":[{"version":"1.17 21w05a","status":"added","notes":"Added flowering azaleas."}],"colors":{"primary":"#707a40","dominant_hex":"#6c8434","average_hex":"#707a40","hue_group":"yellow","lightness":0.3647,"saturation":0.3118,"palette":["#6c8434","#647434","#74942c","#54692a","#ae5db1","#d47ce4"],"color_groups":[{"hex":"#6c8434","weight":0.2656,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#647434","weight":0.2422,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#74942c","weight":0.2344,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"},{"hex":"#54692a","weight":0.1406,"lightness":0.2882,"saturation":0.4286,"hue_group":"yellow"},{"hex":"#ae5db1","weight":0.082,"lightness":0.5294,"saturation":0.35,"hue_group":"purple"},{"hex":"#d47ce4","weight":0.0352,"lightness":0.6902,"saturation":0.6582,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/flowering_azalea_top.png","family":"flowering_azalea","relations":[{"type":"variants","target":"minecraft:flowering_azalea_leaves","label":"Same family: flowering_azalea","confidence":0.75},{"type":"related_sets","target":"minecraft:flowering_azalea_leaves","label":"Related set: flowering_azalea","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafting_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_flowering_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powered_rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lever","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ladder","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_flowering_azalea_bush","label":"Palette proche: Potted Flowering Azalea Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Palette proche: Flowering Azalea Leaves","confidence":0.938},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.899},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.899},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.884},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.884},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.866},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.866},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.866},{"type":"color_neighbors","target":"minecraft:lime_terracotta","label":"Palette proche: Lime Terracotta","confidence":0.854},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.851},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.851},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.786},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.786},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.786},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.786},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.769},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par sous-ton: Infested Mossy Stone Bricks","confidence":0.742},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par sous-ton: Mossy Stone Brick Slab","confidence":0.742},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par sous-ton: Mossy Stone Brick Stairs","confidence":0.742},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par sous-ton: Mossy Stone Brick Wall","confidence":0.742},{"type":"color_bridge","target":"minecraft:mossy_stone_bricks","label":"Pont de nuance par sous-ton: Mossy Stone Bricks","confidence":0.742},{"type":"color_analogous","target":"minecraft:bamboo_block","label":"Couleurs analogues: Bamboo Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_terracotta","label":"Couleurs analogues: Green Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:dandelion","label":"Couleurs analogues: Dandelion","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_dandelion","label":"Couleurs analogues: Potted Dandelion","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_wither_rose","label":"Couleurs analogues: Potted Wither Rose","confidence":0.941},{"type":"color_analogous","target":"minecraft:wither_rose","label":"Couleurs analogues: Wither Rose","confidence":0.941},{"type":"color_analogous","target":"minecraft:lime_terracotta","label":"Couleurs analogues: Lime Terracotta","confidence":0.937},{"type":"color_analogous","target":"minecraft:flowering_azalea_leaves","label":"Couleurs analogues: Flowering Azalea Leaves","confidence":0.931},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.789},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.766},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.766},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.766},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.766},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.741},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.624},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.593},{"type":"color_triad","target":"minecraft:glass_pane","label":"Harmonie triadique: Glass Pane","confidence":0.94},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.926},{"type":"color_triad","target":"minecraft:cyan_concrete","label":"Harmonie triadique: Cyan Concrete","confidence":0.91},{"type":"color_triad","target":"minecraft:sculk_vein","label":"Harmonie triadique: Sculk Vein","confidence":0.901},{"type":"color_triad","target":"minecraft:glass","label":"Harmonie triadique: Glass","confidence":0.865},{"type":"color_triad","target":"minecraft:cyan_shulker_box","label":"Harmonie triadique: Cyan Shulker Box","confidence":0.849},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.842},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.786},{"type":"color_square","target":"minecraft:oxidized_copper_chain","label":"Harmonie carree: Oxidized Copper Chain","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie carree: Waxed Oxidized Copper Chain","confidence":0.96},{"type":"color_square","target":"minecraft:purple_terracotta","label":"Harmonie carree: Purple Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_terracotta","label":"Harmonie carree: Magenta Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:pink_shulker_box","label":"Harmonie carree: Pink Shulker Box","confidence":0.956},{"type":"color_square","target":"minecraft:oxidized_copper_door","label":"Harmonie carree: Oxidized Copper Door","confidence":0.953},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie carree: Waxed Oxidized Copper Door","confidence":0.953},{"type":"color_square","target":"minecraft:pink_stained_glass","label":"Harmonie carree: Pink Stained Glass","confidence":0.953},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.583},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55}],"category":"natural"},{"id":"minecraft:flowering_azalea_leaves","name":"Flowering Azalea Leaves","entry_type":"block","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","history":[{"version":"0.0.14a","status":"added","notes":"Added leaves."},{"version":"1.2","status":"added","notes":"Added spruce and birch leaves, which are colored #619961 and #80a755 respectively, and do not vary across biomes."},{"version":"1.7","status":"added","notes":"Added shears , which collect leaves. Before, leaves could be obtained only via inventory editing."}],"colors":{"primary":"#646f3d","dominant_hex":"#546c2c","average_hex":"#646f3d","hue_group":"yellow","lightness":0.3373,"saturation":0.2907,"palette":["#546c2c","#6c8434","#3c4c24","#74942c","#c56dd5","#9c548c"],"color_groups":[{"hex":"#546c2c","weight":0.2732,"lightness":0.298,"saturation":0.4211,"hue_group":"yellow"},{"hex":"#6c8434","weight":0.2098,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#3c4c24","weight":0.2049,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#74942c","weight":0.1951,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"},{"hex":"#c56dd5","weight":0.078,"lightness":0.6314,"saturation":0.5532,"hue_group":"purple"},{"hex":"#9c548c","weight":0.039,"lightness":0.4706,"saturation":0.3,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/flowering_azalea_leaves.png","family":"flowering_azalea","relations":[{"type":"variants","target":"minecraft:flowering_azalea","label":"Same family: flowering_azalea","confidence":0.75},{"type":"related_sets","target":"minecraft:flowering_azalea","label":"Related set: flowering_azalea","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lever","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafting_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_flowering_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powered_rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:flowering_azalea","label":"Palette proche: Flowering Azalea","confidence":0.938},{"type":"color_neighbors","target":"minecraft:potted_flowering_azalea_bush","label":"Palette proche: Potted Flowering Azalea Bush","confidence":0.927},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.908},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.894},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.894},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.878},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.874},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.87},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.869},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.869},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.835},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.83},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.781},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.781},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.781},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.781},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par sous-ton: Infested Mossy Stone Bricks","confidence":0.757},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par sous-ton: Mossy Stone Brick Slab","confidence":0.757},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par sous-ton: Mossy Stone Brick Stairs","confidence":0.757},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par sous-ton: Mossy Stone Brick Wall","confidence":0.757},{"type":"color_bridge","target":"minecraft:mossy_stone_bricks","label":"Pont de nuance par sous-ton: Mossy Stone Bricks","confidence":0.757},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.74},{"type":"color_analogous","target":"minecraft:lime_terracotta","label":"Couleurs analogues: Lime Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:cave_vines_plant","label":"Couleurs analogues: Cave Vines Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_block","label":"Couleurs analogues: Bamboo Block","confidence":0.958},{"type":"color_analogous","target":"minecraft:dandelion","label":"Couleurs analogues: Dandelion","confidence":0.938},{"type":"color_analogous","target":"minecraft:potted_dandelion","label":"Couleurs analogues: Potted Dandelion","confidence":0.938},{"type":"color_analogous","target":"minecraft:lime_glazed_terracotta","label":"Couleurs analogues: Lime Glazed Terracotta","confidence":0.935},{"type":"color_analogous","target":"minecraft:flowering_azalea","label":"Couleurs analogues: Flowering Azalea","confidence":0.931},{"type":"color_analogous","target":"minecraft:melon","label":"Couleurs analogues: Melon","confidence":0.924},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.886},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.859},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.859},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.859},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.859},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.717},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.653},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.648},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.95},{"type":"color_triad","target":"minecraft:sculk_vein","label":"Harmonie triadique: Sculk Vein","confidence":0.916},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.894},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.891},{"type":"color_triad","target":"minecraft:light_blue_carpet","label":"Harmonie triadique: Light Blue Carpet","confidence":0.867},{"type":"color_triad","target":"minecraft:light_blue_wool","label":"Harmonie triadique: Light Blue Wool","confidence":0.867},{"type":"color_triad","target":"minecraft:glass_pane","label":"Harmonie triadique: Glass Pane","confidence":0.829},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.815},{"type":"color_square","target":"minecraft:potted_crimson_roots","label":"Harmonie carree: Potted Crimson Roots","confidence":0.946},{"type":"color_square","target":"minecraft:crimson_roots","label":"Harmonie carree: Crimson Roots","confidence":0.932},{"type":"color_square","target":"minecraft:pink_carpet","label":"Harmonie carree: Pink Carpet","confidence":0.865},{"type":"color_square","target":"minecraft:pink_wool","label":"Harmonie carree: Pink Wool","confidence":0.865},{"type":"color_square","target":"minecraft:purple_terracotta","label":"Harmonie carree: Purple Terracotta","confidence":0.864},{"type":"color_square","target":"minecraft:magenta_terracotta","label":"Harmonie carree: Magenta Terracotta","confidence":0.851},{"type":"color_square","target":"minecraft:oxidized_copper_chain","label":"Harmonie carree: Oxidized Copper Chain","confidence":0.85},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie carree: Waxed Oxidized Copper Chain","confidence":0.85},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.609},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.576},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.553},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55}],"category":"natural"},{"id":"minecraft:fox","name":"Fox","entry_type":"mob","description":"A fox is a neutral mob found in taigas and similar biomes. It hunts small animals, can carry items in its mouth and will eat anything that is edible. A fox will trust and defend a player that spawned it through breeding, but will run away from non-sneaking players in any other circumstance.","history":[{"version":"1.14 19w07a","status":"added","notes":"Added foxes, baby foxes, snow foxes, and baby snow foxes."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby foxes from growing up."}],"colors":{"primary":"#c47a47","dominant_hex":"#be5f24","average_hex":"#c47a47","hue_group":"red","lightness":0.5235,"saturation":0.5144,"palette":["#be5f24","#e4802b","#d4b49c","#f4ece9","#b48c84","#0e0b11"],"color_groups":[{"hex":"#be5f24","weight":0.482,"lightness":0.4431,"saturation":0.6814,"hue_group":"red"},{"hex":"#e4802b","weight":0.2164,"lightness":0.5314,"saturation":0.7741,"hue_group":"red"},{"hex":"#d4b49c","weight":0.1072,"lightness":0.7216,"saturation":0.3944,"hue_group":"red"},{"hex":"#f4ece9","weight":0.0902,"lightness":0.9353,"saturation":0.3333,"hue_group":"red"},{"hex":"#b48c84","weight":0.0581,"lightness":0.6118,"saturation":0.2424,"hue_group":"red"},{"hex":"#0e0b11","weight":0.0461,"lightness":0.0549,"saturation":0.2143,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fox/fox.png","family":"fox","relations":[{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_pink","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_red","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:fox_sleep","name":"Fox Sleep","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#c37946","dominant_hex":"#be5f24","average_hex":"#c37946","hue_group":"red","lightness":0.5196,"saturation":0.5102,"palette":["#be5f24","#e4802c","#d4b49c","#f4ece9","#b48c84","#0e0b11"],"color_groups":[{"hex":"#be5f24","weight":0.478,"lightness":0.4431,"saturation":0.6814,"hue_group":"red"},{"hex":"#e4802c","weight":0.2204,"lightness":0.5333,"saturation":0.7731,"hue_group":"red"},{"hex":"#d4b49c","weight":0.1072,"lightness":0.7216,"saturation":0.3944,"hue_group":"red"},{"hex":"#f4ece9","weight":0.0862,"lightness":0.9353,"saturation":0.3333,"hue_group":"red"},{"hex":"#b48c84","weight":0.0581,"lightness":0.6118,"saturation":0.2424,"hue_group":"red"},{"hex":"#0e0b11","weight":0.0501,"lightness":0.0549,"saturation":0.2143,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fox/fox_sleep.png","family":"fox_sleep","relations":[{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_pink","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_red","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:fox_spawn_egg","name":"Fox Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#a9714c","dominant_hex":"#e6802a","average_hex":"#a9714c","hue_group":"red","lightness":0.4804,"saturation":0.3796,"palette":["#e6802a","#dbc4b9","#683320","#b25324","#6c5b53","#04040c"],"color_groups":[{"hex":"#e6802a","weight":0.2636,"lightness":0.5333,"saturation":0.7899,"hue_group":"red"},{"hex":"#dbc4b9","weight":0.2455,"lightness":0.7922,"saturation":0.3208,"hue_group":"red"},{"hex":"#683320","weight":0.1636,"lightness":0.2667,"saturation":0.5294,"hue_group":"red"},{"hex":"#b25324","weight":0.1364,"lightness":0.4196,"saturation":0.6636,"hue_group":"red"},{"hex":"#6c5b53","weight":0.1182,"lightness":0.3745,"saturation":0.1309,"hue_group":"red"},{"hex":"#04040c","weight":0.0727,"lightness":0.0314,"saturation":0.5,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/fox_spawn_egg.png","family":"fox_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bolt_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_horse_armor","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:friend_pottery_sherd","name":"Friend Pottery Sherd","entry_type":"item","description":"A friend pottery sherd is a pottery sherd that depicts the unibrow and nose of a villager or iron golem. The design features a single continuous unibrow spanning the entire forehead and lacks a mouth, making the icon particularly similar to the facial features of an iron golem. However, this is difficult to determine with certainty. It can be found in trail ruins.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added friend pottery shards."}],"colors":{"primary":"#6a3b30","dominant_hex":"#5c342c","average_hex":"#6a3b30","hue_group":"red","lightness":0.302,"saturation":0.3766,"palette":["#5c342c","#724234","#44241c","#542c24","#844c3c","#995949"],"color_groups":[{"hex":"#5c342c","weight":0.2038,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#724234","weight":0.1911,"lightness":0.3255,"saturation":0.3735,"hue_group":"red"},{"hex":"#44241c","weight":0.1783,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#542c24","weight":0.1465,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#844c3c","weight":0.1401,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#995949","weight":0.1401,"lightness":0.4431,"saturation":0.354,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/friend_pottery_sherd.png","family":"friend_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:frog/cold","name":"Frog / Cold","entry_type":"mob","description":"A frog is a passive mob found in swamps and mangrove swamps. It performs large jumps, swims, and uses its long tongue to eat small slimes and small magma cubes. Froglights are created when frogs eat magma cubes; different frog types create different froglight colors.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added frogs."}],"colors":{"primary":"#677531","dominant_hex":"#bb9a61","average_hex":"#677531","hue_group":"yellow","lightness":0.3255,"saturation":0.4096,"palette":["#bb9a61","#4c6c1c","#548424","#679531","#3a571a","#2d1d16"],"color_groups":[{"hex":"#bb9a61","weight":0.25,"lightness":0.5569,"saturation":0.3982,"hue_group":"yellow"},{"hex":"#4c6c1c","weight":0.2339,"lightness":0.2667,"saturation":0.5882,"hue_group":"yellow"},{"hex":"#548424","weight":0.1525,"lightness":0.3294,"saturation":0.5714,"hue_group":"green"},{"hex":"#679531","weight":0.1456,"lightness":0.3882,"saturation":0.5051,"hue_group":"yellow"},{"hex":"#3a571a","weight":0.1193,"lightness":0.2216,"saturation":0.5398,"hue_group":"yellow"},{"hex":"#2d1d16","weight":0.0986,"lightness":0.1314,"saturation":0.3433,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/frog/cold_frog.png","family":"frog","relations":[{"type":"variants","target":"minecraft:frog/temperate","label":"Same family: frog","confidence":0.75},{"type":"related_sets","target":"minecraft:frog/temperate","label":"Related set: frog","confidence":0.8},{"type":"variants","target":"minecraft:frog/warm","label":"Same family: frog","confidence":0.75},{"type":"related_sets","target":"minecraft:frog/warm","label":"Related set: frog","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:shulker_brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_ropes","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_horse","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/creamy","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:frog/temperate","name":"Frog / Temperate","entry_type":"mob","description":"A frog is a passive mob found in swamps and mangrove swamps. It performs large jumps, swims, and uses its long tongue to eat small slimes and small magma cubes. Froglights are created when frogs eat magma cubes; different frog types create different froglight colors.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added frogs."}],"colors":{"primary":"#b67046","dominant_hex":"#d99159","average_hex":"#b67046","hue_group":"red","lightness":0.4941,"saturation":0.4444,"palette":["#d99159","#ad633c","#d57345","#e6ae78","#8d4f2a","#3b1d07"],"color_groups":[{"hex":"#d99159","weight":0.2511,"lightness":0.6,"saturation":0.6275,"hue_group":"red"},{"hex":"#ad633c","weight":0.2374,"lightness":0.4569,"saturation":0.485,"hue_group":"red"},{"hex":"#d57345","weight":0.164,"lightness":0.5529,"saturation":0.6316,"hue_group":"red"},{"hex":"#e6ae78","weight":0.1284,"lightness":0.6863,"saturation":0.6875,"hue_group":"red"},{"hex":"#8d4f2a","weight":0.1204,"lightness":0.3588,"saturation":0.541,"hue_group":"red"},{"hex":"#3b1d07","weight":0.0986,"lightness":0.1294,"saturation":0.7879,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/frog/temperate_frog.png","family":"frog","relations":[{"type":"variants","target":"minecraft:frog/cold","label":"Same family: frog","confidence":0.75},{"type":"related_sets","target":"minecraft:frog/cold","label":"Related set: frog","confidence":0.8},{"type":"variants","target":"minecraft:frog/warm","label":"Same family: frog","confidence":0.75},{"type":"related_sets","target":"minecraft:frog/warm","label":"Related set: frog","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:frog/warm","name":"Frog / Warm","entry_type":"mob","description":"A frog is a passive mob found in swamps and mangrove swamps. It performs large jumps, swims, and uses its long tongue to eat small slimes and small magma cubes. Froglights are created when frogs eat magma cubes; different frog types create different froglight colors.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added frogs."}],"colors":{"primary":"#9a9582","dominant_hex":"#c1bba4","average_hex":"#9a9582","hue_group":"neutral","lightness":0.5569,"saturation":0.1062,"palette":["#c1bba4","#97927b","#b4b49c","#7e715e","#2c2c2c","#a4ac94"],"color_groups":[{"hex":"#c1bba4","weight":0.2523,"lightness":0.7,"saturation":0.1895,"hue_group":"yellow"},{"hex":"#97927b","weight":0.2248,"lightness":0.5373,"saturation":0.1186,"hue_group":"neutral"},{"hex":"#b4b49c","weight":0.2099,"lightness":0.6588,"saturation":0.1379,"hue_group":"yellow"},{"hex":"#7e715e","weight":0.1158,"lightness":0.4314,"saturation":0.1455,"hue_group":"yellow"},{"hex":"#2c2c2c","weight":0.0986,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4ac94","weight":0.0986,"lightness":0.6275,"saturation":0.1263,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/frog/warm_frog.png","family":"frog","relations":[{"type":"variants","target":"minecraft:frog/cold","label":"Same family: frog","confidence":0.75},{"type":"related_sets","target":"minecraft:frog/cold","label":"Related set: frog","confidence":0.8},{"type":"variants","target":"minecraft:frog/temperate","label":"Same family: frog","confidence":0.75},{"type":"related_sets","target":"minecraft:frog/temperate","label":"Related set: frog","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:rabbit/salt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_charging","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken/cold","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/aggressive","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/lazy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/playful","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/weak","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:frog_spawn_egg","name":"Frog Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#a0603b","dominant_hex":"#cf814f","average_hex":"#a0603b","hue_group":"red","lightness":0.4294,"saturation":0.4612,"palette":["#cf814f","#743c24","#ab663d","#542c1c","#e8ad78","#94542c"],"color_groups":[{"hex":"#cf814f","weight":0.3083,"lightness":0.5608,"saturation":0.5714,"hue_group":"red"},{"hex":"#743c24","weight":0.2667,"lightness":0.298,"saturation":0.5263,"hue_group":"red"},{"hex":"#ab663d","weight":0.175,"lightness":0.4549,"saturation":0.4741,"hue_group":"red"},{"hex":"#542c1c","weight":0.1167,"lightness":0.2196,"saturation":0.5,"hue_group":"red"},{"hex":"#e8ad78","weight":0.075,"lightness":0.6902,"saturation":0.7089,"hue_group":"red"},{"hex":"#94542c","weight":0.0583,"lightness":0.3765,"saturation":0.5417,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/frog_spawn_egg.png","family":"frog_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:copper_chestplate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:frogspawn","name":"Frogspawn","entry_type":"block","description":"Frogspawn is a non-solid block laid by frogs when they are bred, which hatches into tadpoles over time. It cannot be obtained as an item or moved by a piston.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added frogspawn."}],"colors":{"primary":"#6e5f57","dominant_hex":"#74645c","average_hex":"#6e5f57","hue_group":"neutral","lightness":0.3863,"saturation":0.1168,"palette":["#74645c","#7c6c64","#140c04","#64544c","#94847c"],"color_groups":[{"hex":"#74645c","weight":0.3333,"lightness":0.4078,"saturation":0.1154,"hue_group":"neutral"},{"hex":"#7c6c64","weight":0.3333,"lightness":0.4392,"saturation":0.1071,"hue_group":"neutral"},{"hex":"#140c04","weight":0.1111,"lightness":0.0471,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#64544c","weight":0.1111,"lightness":0.3451,"saturation":0.1364,"hue_group":"red"},{"hex":"#94847c","weight":0.1111,"lightness":0.5333,"saturation":0.1008,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/frogspawn.png","family":"frogspawn","relations":[{"type":"visual_neighbors","target":"minecraft:lantern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:peony","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_log","label":"Palette proche: Acacia Log","confidence":0.88},{"type":"color_neighbors","target":"minecraft:acacia_wood","label":"Palette proche: Acacia Wood","confidence":0.88},{"type":"color_neighbors","target":"minecraft:light_gray_terracotta","label":"Palette proche: Light Gray Terracotta","confidence":0.875},{"type":"color_neighbors","target":"minecraft:pointed_dripstone","label":"Palette proche: Pointed Dripstone","confidence":0.858},{"type":"color_neighbors","target":"minecraft:dripstone_block","label":"Palette proche: Dripstone Block","confidence":0.854},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_block","label":"Palette proche: Dead Fire Coral Block","confidence":0.849},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.848},{"type":"color_neighbors","target":"minecraft:dead_tube_coral","label":"Palette proche: Dead Tube Coral","confidence":0.845},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.844},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.843},{"type":"color_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Palette proche: Dead Horn Coral Fan","confidence":0.843},{"type":"color_bridge","target":"minecraft:ancient_debris","label":"Pont de nuance par sous-ton: Ancient Debris","confidence":0.866},{"type":"color_bridge","target":"minecraft:mud_brick_slab","label":"Pont de nuance par sous-ton: Mud Brick Slab","confidence":0.861},{"type":"color_bridge","target":"minecraft:mud_brick_stairs","label":"Pont de nuance par sous-ton: Mud Brick Stairs","confidence":0.861},{"type":"color_bridge","target":"minecraft:mud_brick_wall","label":"Pont de nuance par sous-ton: Mud Brick Wall","confidence":0.861},{"type":"color_bridge","target":"minecraft:mud_bricks","label":"Pont de nuance par sous-ton: Mud Bricks","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par palette: Light Gray Terracotta","confidence":0.86},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par palette: Pointed Dripstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par palette: Dripstone Block","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.576},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55}],"category":""},{"id":"minecraft:frosted_ice","name":"Frosted Ice","entry_type":"block","description":"Frosted ice is a translucent block created when a mob or entity wearing Frost Walker-enchanted boots moves over water. It cannot be obtained as an item and will quickly crack and melt if exposed to light or sunlight.","history":[{"version":"1.9 15w42a","status":"added","notes":"Added frosted ice."}],"colors":{"primary":"#8cb5fd","dominant_hex":"#84acfc","average_hex":"#8cb5fd","hue_group":"blue","lightness":0.7706,"saturation":0.9658,"palette":["#84acfc","#94bcfc","#a4c4fc","#74a4fc","#cce4fc","#ccdcfc"],"color_groups":[{"hex":"#84acfc","weight":0.4609,"lightness":0.7529,"saturation":0.9524,"hue_group":"blue"},{"hex":"#94bcfc","weight":0.3438,"lightness":0.7843,"saturation":0.9455,"hue_group":"blue"},{"hex":"#a4c4fc","weight":0.1289,"lightness":0.8157,"saturation":0.9362,"hue_group":"blue"},{"hex":"#74a4fc","weight":0.0352,"lightness":0.7216,"saturation":0.9577,"hue_group":"blue"},{"hex":"#cce4fc","weight":0.0195,"lightness":0.8941,"saturation":0.8889,"hue_group":"blue"},{"hex":"#ccdcfc","weight":0.0117,"lightness":0.8941,"saturation":0.8889,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/frosted_ice_0.png","family":"frosted_ice","relations":[{"type":"visual_neighbors","target":"minecraft:ice","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_ice","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_ice","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_cluster","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:ice","label":"Palette proche: Ice","confidence":0.94},{"type":"color_neighbors","target":"minecraft:packed_ice","label":"Palette proche: Packed Ice","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_ice","label":"Palette proche: Blue Ice","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass","label":"Palette proche: Light Blue Stained Glass","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.58},{"type":"color_neighbors","target":"minecraft:diamond_block","label":"Palette proche: Diamond Block","confidence":0.58},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Palette proche: Light Blue Stained Glass Pane","confidence":0.58},{"type":"color_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Palette proche: Light Blue Glazed Terracotta","confidence":0.58},{"type":"color_neighbors","target":"minecraft:clay","label":"Palette proche: Clay","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_block","label":"Pont de nuance par palette: Diamond Block","confidence":0.581},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.58},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par sous-ton: Cobweb","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par sous-ton: White Carpet","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par sous-ton: White Wool","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par sous-ton: White Concrete Powder","confidence":0.58},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par sous-ton: Light","confidence":0.58},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_analogous","target":"minecraft:ice","label":"Couleurs analogues: Ice","confidence":0.96},{"type":"color_analogous","target":"minecraft:packed_ice","label":"Couleurs analogues: Packed Ice","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_ice","label":"Couleurs analogues: Blue Ice","confidence":0.96},{"type":"color_analogous","target":"minecraft:spawner","label":"Couleurs analogues: Spawner","confidence":0.875},{"type":"color_analogous","target":"minecraft:lapis_block","label":"Couleurs analogues: Lapis Block","confidence":0.87},{"type":"color_analogous","target":"minecraft:light_blue_stained_glass_pane","label":"Couleurs analogues: Light Blue Stained Glass Pane","confidence":0.861},{"type":"color_analogous","target":"minecraft:light_blue_stained_glass","label":"Couleurs analogues: Light Blue Stained Glass","confidence":0.858},{"type":"color_analogous","target":"minecraft:tube_coral_fan","label":"Couleurs analogues: Tube Coral Fan","confidence":0.81},{"type":"color_complement","target":"minecraft:yellow_terracotta","label":"Contraste complementaire: Yellow Terracotta","confidence":0.948},{"type":"color_complement","target":"minecraft:oak_hanging_sign","label":"Contraste complementaire: Oak Hanging Sign","confidence":0.94},{"type":"color_complement","target":"minecraft:oak_wall_hanging_sign","label":"Contraste complementaire: Oak Wall Hanging Sign","confidence":0.94},{"type":"color_complement","target":"minecraft:stripped_oak_log","label":"Contraste complementaire: Stripped Oak Log","confidence":0.94},{"type":"color_complement","target":"minecraft:stripped_oak_wood","label":"Contraste complementaire: Stripped Oak Wood","confidence":0.94},{"type":"color_complement","target":"minecraft:honey_block","label":"Contraste complementaire: Honey Block","confidence":0.927},{"type":"color_complement","target":"minecraft:chiseled_bookshelf","label":"Contraste complementaire: Chiseled Bookshelf","confidence":0.924},{"type":"color_complement","target":"minecraft:short_dry_grass","label":"Contraste complementaire: Short Dry Grass","confidence":0.923},{"type":"color_triad","target":"minecraft:tall_seagrass","label":"Harmonie triadique: Tall Seagrass","confidence":0.96},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_concrete_powder","label":"Harmonie triadique: Pink Concrete Powder","confidence":0.957},{"type":"color_triad","target":"minecraft:pink_concrete","label":"Harmonie triadique: Pink Concrete","confidence":0.949},{"type":"color_triad","target":"minecraft:pearlescent_froglight","label":"Harmonie triadique: Pearlescent Froglight","confidence":0.939},{"type":"color_triad","target":"minecraft:cherry_leaves","label":"Harmonie triadique: Cherry Leaves","confidence":0.936},{"type":"color_triad","target":"minecraft:pink_candle","label":"Harmonie triadique: Pink Candle","confidence":0.932},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.92},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.938},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.831},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.83},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.825},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.825},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.801},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.798},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.796},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.667},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.632},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.632},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.632},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.632},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.622},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.617},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.615}],"category":""},{"id":"minecraft:furnace","name":"Furnace","entry_type":"block","description":"A furnace is a block with two functions: it can be used for either smelting or cooking, by placing fuel and an appropriate item inside together.","history":[{"version":"20100219","status":"added","notes":"Added furnaces."},{"version":"15w50a","status":"added","notes":"Added a sound to furnaces: block.furnace.fire_crackle"},{"version":"1.13 18w06a","status":"added","notes":"added for smelting using furnaces. It can be used only for the input slot."}],"colors":{"primary":"#6e6e6e","dominant_hex":"#4c4747","average_hex":"#6e6e6e","hue_group":"neutral","lightness":0.4314,"saturation":0.0,"palette":["#4c4747","#949494","#848484","#747474","#6c6c6c","#5c5c5c"],"color_groups":[{"hex":"#4c4747","weight":0.2461,"lightness":0.2882,"saturation":0.034,"hue_group":"neutral"},{"hex":"#949494","weight":0.2031,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#848484","weight":0.1562,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1484,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1328,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1133,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/furnace_top.png","family":"furnace","relations":[{"type":"visual_neighbors","target":"minecraft:coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vine","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_moss_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_moss_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dropper","label":"Palette proche: Dropper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:vine","label":"Palette proche: Vine","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_leaves","label":"Palette proche: Mangrove Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bush","label":"Palette proche: Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_bridge","target":"minecraft:lily_pad","label":"Pont de nuance par palette: Lily Pad","confidence":0.86},{"type":"color_bridge","target":"minecraft:dispenser","label":"Pont de nuance par palette: Dispenser","confidence":0.86},{"type":"color_bridge","target":"minecraft:dropper","label":"Pont de nuance par palette: Dropper","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:vine","label":"Pont de nuance par palette: Vine","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:mangrove_leaves","label":"Pont de nuance par palette: Mangrove Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:bush","label":"Pont de nuance par palette: Bush","confidence":0.86},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"utility"},{"id":"minecraft:furnace_minecart","name":"Furnace Minecart","entry_type":"item","description":"A minecart with furnace is a furnace inside a minecart. It can be powered with exclusively coal or charcoal to propel it across a rail line for a limited time, which can be used to move other minecarts.","history":[{"version":"3 minutes after the last fuel.","status":"added","notes":"added to the minecart, it would never move for more than 3 minutes after the last fuel."}],"colors":{"primary":"#545656","dominant_hex":"#838488","average_hex":"#545656","hue_group":"neutral","lightness":0.3333,"saturation":0.0118,"palette":["#838488","#242c2c","#565050","#25180c","#3c3c3c","#3c4444"],"color_groups":[{"hex":"#838488","weight":0.4025,"lightness":0.5235,"saturation":0.0206,"hue_group":"neutral"},{"hex":"#242c2c","weight":0.1698,"lightness":0.1569,"saturation":0.1,"hue_group":"neutral"},{"hex":"#565050","weight":0.1384,"lightness":0.3255,"saturation":0.0361,"hue_group":"neutral"},{"hex":"#25180c","weight":0.1132,"lightness":0.0961,"saturation":0.5102,"hue_group":"red"},{"hex":"#3c3c3c","weight":0.1006,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c4444","weight":0.0755,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/furnace_minecart.png","family":"furnace_minecart","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:gunpowder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_star","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:compass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:ghast","name":"Ghast","entry_type":"mob","description":"Ghasts are large, floating, ghost-like hostile mobs found in the Nether, and are the only source of ghast tears. Ghasts wander aimlessly and shoot explosive fireballs at players, which can be hit back to kill them instantly upon direct impact.","history":[{"version":"v1.2.0 preview","status":"added","notes":"Added ghasts, along with the Nether ."}],"colors":{"primary":"#ecebeb","dominant_hex":"#f4f4f4","average_hex":"#ecebeb","hue_group":"neutral","lightness":0.9235,"saturation":0.0256,"palette":["#f4f4f4","#fcfcfc","#dccccc","#e4e4e4","#dcdcdc","#808080"],"color_groups":[{"hex":"#f4f4f4","weight":0.6425,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.135,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dccccc","weight":0.0992,"lightness":0.8314,"saturation":0.186,"hue_group":"red"},{"hex":"#e4e4e4","weight":0.0596,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.0568,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#808080","weight":0.0069,"lightness":0.502,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/ghast/ghast.png","family":"ghast","relations":[{"type":"visual_neighbors","target":"minecraft:happy_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool_undercoat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitefield","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/caerbannog","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:ghast_shooting","name":"Ghast Shooting","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#ebe8e8","dominant_hex":"#f4f4f4","average_hex":"#ebe8e8","hue_group":"neutral","lightness":0.9157,"saturation":0.0698,"palette":["#f4f4f4","#fcfcfc","#dbcccc","#e4e4e4","#dcdcdc","#7d3939"],"color_groups":[{"hex":"#f4f4f4","weight":0.6206,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1436,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dbcccc","weight":0.1001,"lightness":0.8294,"saturation":0.1724,"hue_group":"red"},{"hex":"#e4e4e4","weight":0.0614,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.0565,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7d3939","weight":0.0178,"lightness":0.3569,"saturation":0.3736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/ghast/ghast_shooting.png","family":"ghast_shooting","relations":[{"type":"visual_neighbors","target":"minecraft:polarbear","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool_undercoat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/caerbannog","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitefield","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:ghast_spawn_egg","name":"Ghast Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#c4bebe","dominant_hex":"#f4f4f4","average_hex":"#c4bebe","hue_group":"neutral","lightness":0.7569,"saturation":0.0484,"palette":["#f4f4f4","#dccccc","#b4acac","#746c6c","#5c5c5c","#fcfcfc"],"color_groups":[{"hex":"#f4f4f4","weight":0.3333,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dccccc","weight":0.2586,"lightness":0.8314,"saturation":0.186,"hue_group":"red"},{"hex":"#b4acac","weight":0.1264,"lightness":0.6902,"saturation":0.0506,"hue_group":"neutral"},{"hex":"#746c6c","weight":0.1207,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1092,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.0517,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/ghast_spawn_egg.png","family":"ghast_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:happy_ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polar_bear_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:paper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sugar","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:feather","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_tears","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tipped_arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:splash_potion","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:ghast_tear","name":"Ghast Tear","entry_type":"item","description":"Ghast tears are items dropped by ghasts that are used to make dried ghasts, End crystals and potions of Regeneration.","history":[{"version":"1.0.0","status":"added","notes":"Added ghast tears."},{"version":"Beta 1.9","status":"added","notes":"added to create potions of Healing, instead."}],"colors":{"primary":"#7f9b9b","dominant_hex":"#344c4c","average_hex":"#7f9b9b","hue_group":"cyan","lightness":0.5529,"saturation":0.1228,"palette":["#344c4c","#3c5c5c","#b4dcdc","#9cc4c4","#ccf4f4","#fcfcfc"],"color_groups":[{"hex":"#344c4c","weight":0.2941,"lightness":0.251,"saturation":0.1875,"hue_group":"cyan"},{"hex":"#3c5c5c","weight":0.1765,"lightness":0.298,"saturation":0.2105,"hue_group":"cyan"},{"hex":"#b4dcdc","weight":0.1765,"lightness":0.7843,"saturation":0.3636,"hue_group":"cyan"},{"hex":"#9cc4c4","weight":0.1471,"lightness":0.6902,"saturation":0.2532,"hue_group":"cyan"},{"hex":"#ccf4f4","weight":0.1471,"lightness":0.8784,"saturation":0.6452,"hue_group":"cyan"},{"hex":"#fcfcfc","weight":0.0588,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/ghast_tear.png","family":"ghast_tear","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:vex_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_crystals","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_shard","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tide_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ward_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_horse_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:recovery_compass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_nautilus_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silence_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:gilded_blackstone","name":"Gilded Blackstone","entry_type":"block","description":"Gilded blackstone is a variant of blackstone found exclusively in bastion remnants, that can drop itself or gold nuggets when mined.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added gilded blackstone."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb gilded blackstone, providing the football/regular effect to the mob."}],"colors":{"primary":"#382b26","dominant_hex":"#39353d","average_hex":"#382b26","hue_group":"red","lightness":0.1843,"saturation":0.1915,"palette":["#39353d","#24241c","#24141c","#592b07","#140c14","#e6ae1f"],"color_groups":[{"hex":"#39353d","weight":0.3789,"lightness":0.2235,"saturation":0.0702,"hue_group":"neutral"},{"hex":"#24241c","weight":0.2227,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#24141c","weight":0.1758,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#592b07","weight":0.1055,"lightness":0.1882,"saturation":0.8542,"hue_group":"red"},{"hex":"#140c14","weight":0.0781,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"},{"hex":"#e6ae1f","weight":0.0391,"lightness":0.5118,"saturation":0.7992,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gilded_blackstone.png","family":"gilded_blackstone","relations":[{"type":"visual_neighbors","target":"minecraft:smithing_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_soil","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blackstone","label":"Palette proche: Blackstone","confidence":0.882},{"type":"color_neighbors","target":"minecraft:blackstone_wall","label":"Palette proche: Blackstone Wall","confidence":0.882},{"type":"color_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Palette proche: Cracked Polished Blackstone Bricks","confidence":0.876},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.867},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.867},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.867},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.867},{"type":"color_neighbors","target":"minecraft:blackstone_slab","label":"Palette proche: Blackstone Slab","confidence":0.854},{"type":"color_neighbors","target":"minecraft:blackstone_stairs","label":"Palette proche: Blackstone Stairs","confidence":0.854},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.831},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.831},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.831},{"type":"color_bridge","target":"minecraft:blackstone","label":"Pont de nuance par palette: Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_wall","label":"Pont de nuance par palette: Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_polished_blackstone_bricks","label":"Pont de nuance par palette: Cracked Polished Blackstone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_wall","label":"Pont de nuance par palette: Polished Blackstone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_bricks","label":"Pont de nuance par palette: Polished Blackstone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_slab","label":"Pont de nuance par palette: Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_stairs","label":"Pont de nuance par palette: Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.766},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.732},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.722},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.721},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.721},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.718},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.718},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.718}],"category":""},{"id":"minecraft:glass","name":"Glass","entry_type":"block","description":"Glass is a transparent solid block that can be dyed into stained glass, or crafted into tinted glass.","history":[{"version":"0.0.19a","status":"added","notes":"Added glass."},{"version":"Beta 1.9","status":"added","notes":"added on top of strongholds ."},{"version":"Pre-release","status":"added","notes":"Added glass."}],"colors":{"primary":"#b0d6db","dominant_hex":"#d4ecec","average_hex":"#b0d6db","hue_group":"cyan","lightness":0.7745,"saturation":0.3739,"palette":["#d4ecec","#8cc4cc","#acd4dc","#7cacb4"],"color_groups":[{"hex":"#d4ecec","weight":0.4769,"lightness":0.8784,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#8cc4cc","weight":0.2923,"lightness":0.6745,"saturation":0.3855,"hue_group":"cyan"},{"hex":"#acd4dc","weight":0.1692,"lightness":0.7686,"saturation":0.4068,"hue_group":"cyan"},{"hex":"#7cacb4","weight":0.0615,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/glass.png","family":"glass","relations":[{"type":"visual_neighbors","target":"minecraft:glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sea_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_bricks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:glass_pane","label":"Palette proche: Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:white_shulker_box","label":"Palette proche: White Shulker Box","confidence":0.735},{"type":"color_neighbors","target":"minecraft:prismarine_brick_slab","label":"Palette proche: Prismarine Brick Slab","confidence":0.703},{"type":"color_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Palette proche: Prismarine Brick Stairs","confidence":0.703},{"type":"color_neighbors","target":"minecraft:prismarine_bricks","label":"Palette proche: Prismarine Bricks","confidence":0.703},{"type":"color_neighbors","target":"minecraft:beacon","label":"Palette proche: Beacon","confidence":0.656},{"type":"color_neighbors","target":"minecraft:sea_lantern","label":"Palette proche: Sea Lantern","confidence":0.643},{"type":"color_neighbors","target":"minecraft:prismarine","label":"Palette proche: Prismarine","confidence":0.63},{"type":"color_neighbors","target":"minecraft:prismarine_slab","label":"Palette proche: Prismarine Slab","confidence":0.63},{"type":"color_neighbors","target":"minecraft:prismarine_stairs","label":"Palette proche: Prismarine Stairs","confidence":0.63},{"type":"color_neighbors","target":"minecraft:prismarine_wall","label":"Palette proche: Prismarine Wall","confidence":0.63},{"type":"color_neighbors","target":"minecraft:clay","label":"Palette proche: Clay","confidence":0.621},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par sous-ton: White Shulker Box","confidence":0.781},{"type":"color_bridge","target":"minecraft:sea_lantern","label":"Pont de nuance par sous-ton: Sea Lantern","confidence":0.706},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.688},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.668},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.668},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par sous-ton: White Carpet","confidence":0.664},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par sous-ton: White Wool","confidence":0.664},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par sous-ton: Cobweb","confidence":0.662},{"type":"color_bridge","target":"minecraft:white_concrete","label":"Pont de nuance par palette: White Concrete","confidence":0.639},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par sous-ton: White Concrete Powder","confidence":0.628},{"type":"color_analogous","target":"minecraft:glass_pane","label":"Couleurs analogues: Glass Pane","confidence":0.953},{"type":"color_analogous","target":"minecraft:cyan_shulker_box","label":"Couleurs analogues: Cyan Shulker Box","confidence":0.899},{"type":"color_analogous","target":"minecraft:cyan_glazed_terracotta","label":"Couleurs analogues: Cyan Glazed Terracotta","confidence":0.869},{"type":"color_analogous","target":"minecraft:cyan_concrete_powder","label":"Couleurs analogues: Cyan Concrete Powder","confidence":0.866},{"type":"color_analogous","target":"minecraft:cyan_concrete","label":"Couleurs analogues: Cyan Concrete","confidence":0.865},{"type":"color_analogous","target":"minecraft:structure_void","label":"Couleurs analogues: Structure Void","confidence":0.854},{"type":"color_analogous","target":"minecraft:blue_orchid","label":"Couleurs analogues: Blue Orchid","confidence":0.84},{"type":"color_analogous","target":"minecraft:potted_blue_orchid","label":"Couleurs analogues: Potted Blue Orchid","confidence":0.84},{"type":"color_complement","target":"minecraft:cherry_trapdoor","label":"Contraste complementaire: Cherry Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_door","label":"Contraste complementaire: Cherry Door","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_button","label":"Contraste complementaire: Cherry Button","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_fence","label":"Contraste complementaire: Cherry Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_fence_gate","label":"Contraste complementaire: Cherry Fence Gate","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_planks","label":"Contraste complementaire: Cherry Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_pressure_plate","label":"Contraste complementaire: Cherry Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_sign","label":"Contraste complementaire: Cherry Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:sea_pickle","label":"Harmonie triadique: Sea Pickle","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie triadique: Potted Flowering Azalea Bush","confidence":0.954},{"type":"color_triad","target":"minecraft:end_stone_brick_slab","label":"Harmonie triadique: End Stone Brick Slab","confidence":0.945},{"type":"color_triad","target":"minecraft:end_stone_brick_stairs","label":"Harmonie triadique: End Stone Brick Stairs","confidence":0.945},{"type":"color_triad","target":"minecraft:end_stone_brick_wall","label":"Harmonie triadique: End Stone Brick Wall","confidence":0.945},{"type":"color_triad","target":"minecraft:end_stone_bricks","label":"Harmonie triadique: End Stone Bricks","confidence":0.945},{"type":"color_triad","target":"minecraft:wet_sponge","label":"Harmonie triadique: Wet Sponge","confidence":0.934},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.914},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.938},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.912},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.912},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.903},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.903},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.676},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.638},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.638},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.632},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.632},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.631},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.616},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.616}],"category":"building"},{"id":"minecraft:glass_bottle","name":"Glass Bottle","entry_type":"item","description":"A glass bottle is an item that can hold water, potions, honey, or dragon's breath.","history":[{"version":"1.0.0","status":"added","notes":"Added glass bottles."},{"version":"15w50a","status":"added","notes":"Added sounds : item.bottle.fill and item.bottle.fill_dragonbreath ."}],"colors":{"primary":"#95a3bb","dominant_hex":"#5c8cc4","average_hex":"#95a3bb","hue_group":"blue","lightness":0.6588,"saturation":0.2184,"palette":["#5c8cc4","#b4ccec","#b54f2f","#d4e4f4","#8cacd4","#ccaca4"],"color_groups":[{"hex":"#5c8cc4","weight":0.381,"lightness":0.5647,"saturation":0.4685,"hue_group":"blue"},{"hex":"#b4ccec","weight":0.2143,"lightness":0.8157,"saturation":0.5957,"hue_group":"blue"},{"hex":"#b54f2f","weight":0.1429,"lightness":0.4471,"saturation":0.5877,"hue_group":"red"},{"hex":"#d4e4f4","weight":0.119,"lightness":0.8941,"saturation":0.5926,"hue_group":"blue"},{"hex":"#8cacd4","weight":0.0714,"lightness":0.6902,"saturation":0.4557,"hue_group":"blue"},{"hex":"#ccaca4","weight":0.0714,"lightness":0.7216,"saturation":0.2817,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/glass_bottle.png","family":"glass_bottle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lingering_potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_meal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_armor_trim_smithing_template","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wind_charge","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_shard","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:glass_pane","name":"Glass Pane","entry_type":"block","description":"A glass pane is a transparent block that can be used as a more efficient alternative to glass blocks. It can be dyed into stained glass panes.","history":[{"version":"1.8","status":"added","notes":"Added glass panes, which use the same model as iron bars ."}],"colors":{"primary":"#aad2d9","dominant_hex":"#acd4dc","average_hex":"#aad2d9","hue_group":"cyan","lightness":0.7588,"saturation":0.3821,"palette":["#acd4dc","#d4ecec","#8cc4cc","#7cacb4"],"color_groups":[{"hex":"#acd4dc","weight":0.5,"lightness":0.7686,"saturation":0.4068,"hue_group":"cyan"},{"hex":"#d4ecec","weight":0.25,"lightness":0.8784,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#8cc4cc","weight":0.2188,"lightness":0.6745,"saturation":0.3855,"hue_group":"cyan"},{"hex":"#7cacb4","weight":0.0312,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/glass_pane_top.png","family":"glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:glass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sea_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_bricks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beacon","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:glass","label":"Palette proche: Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:white_shulker_box","label":"Palette proche: White Shulker Box","confidence":0.726},{"type":"color_neighbors","target":"minecraft:prismarine_brick_slab","label":"Palette proche: Prismarine Brick Slab","confidence":0.7},{"type":"color_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Palette proche: Prismarine Brick Stairs","confidence":0.7},{"type":"color_neighbors","target":"minecraft:prismarine_bricks","label":"Palette proche: Prismarine Bricks","confidence":0.7},{"type":"color_neighbors","target":"minecraft:clay","label":"Palette proche: Clay","confidence":0.643},{"type":"color_neighbors","target":"minecraft:sea_lantern","label":"Palette proche: Sea Lantern","confidence":0.638},{"type":"color_neighbors","target":"minecraft:beacon","label":"Palette proche: Beacon","confidence":0.633},{"type":"color_neighbors","target":"minecraft:prismarine","label":"Palette proche: Prismarine","confidence":0.625},{"type":"color_neighbors","target":"minecraft:prismarine_slab","label":"Palette proche: Prismarine Slab","confidence":0.625},{"type":"color_neighbors","target":"minecraft:prismarine_stairs","label":"Palette proche: Prismarine Stairs","confidence":0.625},{"type":"color_neighbors","target":"minecraft:prismarine_wall","label":"Palette proche: Prismarine Wall","confidence":0.625},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par sous-ton: White Shulker Box","confidence":0.774},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.706},{"type":"color_bridge","target":"minecraft:sea_lantern","label":"Pont de nuance par sous-ton: Sea Lantern","confidence":0.702},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.674},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.666},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par sous-ton: Cobweb","confidence":0.658},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par sous-ton: White Carpet","confidence":0.657},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par sous-ton: White Wool","confidence":0.657},{"type":"color_bridge","target":"minecraft:white_concrete","label":"Pont de nuance par palette: White Concrete","confidence":0.64},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par sous-ton: White Concrete Powder","confidence":0.618},{"type":"color_analogous","target":"minecraft:glass","label":"Couleurs analogues: Glass","confidence":0.953},{"type":"color_analogous","target":"minecraft:cyan_concrete","label":"Couleurs analogues: Cyan Concrete","confidence":0.908},{"type":"color_analogous","target":"minecraft:cyan_shulker_box","label":"Couleurs analogues: Cyan Shulker Box","confidence":0.873},{"type":"color_analogous","target":"minecraft:light_blue_concrete_powder","label":"Couleurs analogues: Light Blue Concrete Powder","confidence":0.852},{"type":"color_analogous","target":"minecraft:cyan_glazed_terracotta","label":"Couleurs analogues: Cyan Glazed Terracotta","confidence":0.829},{"type":"color_analogous","target":"minecraft:cyan_concrete_powder","label":"Couleurs analogues: Cyan Concrete Powder","confidence":0.826},{"type":"color_analogous","target":"minecraft:structure_void","label":"Couleurs analogues: Structure Void","confidence":0.814},{"type":"color_analogous","target":"minecraft:sculk_vein","label":"Couleurs analogues: Sculk Vein","confidence":0.806},{"type":"color_complement","target":"minecraft:red_terracotta","label":"Contraste complementaire: Red Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_trapdoor","label":"Contraste complementaire: Cherry Trapdoor","confidence":0.951},{"type":"color_complement","target":"minecraft:target","label":"Contraste complementaire: Target","confidence":0.949},{"type":"color_complement","target":"minecraft:nether_gold_ore","label":"Contraste complementaire: Nether Gold Ore","confidence":0.933},{"type":"color_complement","target":"minecraft:crimson_fungus","label":"Contraste complementaire: Crimson Fungus","confidence":0.928},{"type":"color_complement","target":"minecraft:potted_crimson_fungus","label":"Contraste complementaire: Potted Crimson Fungus","confidence":0.928},{"type":"color_complement","target":"minecraft:pale_oak_hanging_sign","label":"Contraste complementaire: Pale Oak Hanging Sign","confidence":0.919},{"type":"color_complement","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste complementaire: Pale Oak Wall Hanging Sign","confidence":0.919},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:green_terracotta","label":"Harmonie triadique: Green Terracotta","confidence":0.945},{"type":"color_triad","target":"minecraft:flowering_azalea","label":"Harmonie triadique: Flowering Azalea","confidence":0.94},{"type":"color_triad","target":"minecraft:sculk_shrieker","label":"Harmonie triadique: Sculk Shrieker","confidence":0.938},{"type":"color_triad","target":"minecraft:sea_pickle","label":"Harmonie triadique: Sea Pickle","confidence":0.937},{"type":"color_triad","target":"minecraft:potted_wither_rose","label":"Harmonie triadique: Potted Wither Rose","confidence":0.919},{"type":"color_triad","target":"minecraft:wither_rose","label":"Harmonie triadique: Wither Rose","confidence":0.919},{"type":"color_triad","target":"minecraft:dandelion","label":"Harmonie triadique: Dandelion","confidence":0.897},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.96},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.96},{"type":"color_square","target":"minecraft:potted_spruce_sapling","label":"Harmonie carree: Potted Spruce Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:spruce_sapling","label":"Harmonie carree: Spruce Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.934},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.926},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.924},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.886},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.662},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.624},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.623},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.617},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.617},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.617},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.601},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.601}],"category":"building"},{"id":"minecraft:glistering_melon_slice","name":"Glistering Melon Slice","entry_type":"item","description":"A glistering melon slice is an inedible item used as a brewing ingredient for potions of Healing.","history":[{"version":"1.0.0","status":"added","notes":"Added glistering melons."}],"colors":{"primary":"#b96c34","dominant_hex":"#bf3920","average_hex":"#b96c34","hue_group":"red","lightness":0.4647,"saturation":0.5612,"palette":["#bf3920","#d69720","#a77b1c","#f1cbc6","#5c540c","#ac140c"],"color_groups":[{"hex":"#bf3920","weight":0.2547,"lightness":0.4373,"saturation":0.713,"hue_group":"red"},{"hex":"#d69720","weight":0.1792,"lightness":0.4824,"saturation":0.7398,"hue_group":"yellow"},{"hex":"#a77b1c","weight":0.1698,"lightness":0.3824,"saturation":0.7128,"hue_group":"yellow"},{"hex":"#f1cbc6","weight":0.1604,"lightness":0.8608,"saturation":0.6056,"hue_group":"red"},{"hex":"#5c540c","weight":0.1321,"lightness":0.2039,"saturation":0.7692,"hue_group":"yellow"},{"hex":"#ac140c","weight":0.1038,"lightness":0.3608,"saturation":0.8696,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/glistering_melon_slice.png","family":"glistering_melon_slice","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chestplate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:globe_banner_pattern","name":"Globe Banner Pattern","entry_type":"item","description":"The globe banner pattern is a banner pattern used to customize banners with a shape of a cube-shaped earth. It can only be obtained from trading and cannot be crafted.","history":[{"version":"1.14 19w11a","status":"added","notes":"Added globe banner patterns."},{"version":"1.21.2 24w33a","status":"added","notes":"Added a unique item icon texture for globe banner patterns."}],"colors":{"primary":"#b0a694","dominant_hex":"#ececec","average_hex":"#b0a694","hue_group":"yellow","lightness":0.6353,"saturation":0.1505,"palette":["#ececec","#65483e","#847454","#b2a48a","#dcd4bc","#948c6c"],"color_groups":[{"hex":"#ececec","weight":0.2927,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#65483e","weight":0.1829,"lightness":0.3196,"saturation":0.2393,"hue_group":"red"},{"hex":"#847454","weight":0.1646,"lightness":0.4235,"saturation":0.2222,"hue_group":"yellow"},{"hex":"#b2a48a","weight":0.1585,"lightness":0.6196,"saturation":0.2062,"hue_group":"yellow"},{"hex":"#dcd4bc","weight":0.1402,"lightness":0.8,"saturation":0.3137,"hue_group":"yellow"},{"hex":"#948c6c","weight":0.061,"lightness":0.502,"saturation":0.1575,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/globe_banner_pattern.png","family":"globe_banner_pattern","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:flow_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mojang_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bordure_indented_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:field_masoned_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:glow_berries","name":"Glow Berries","entry_type":"item","description":"Glow berries are a food item obtained from cave vines and can be used to plant them. Cave vines are a climbable plant that hangs off ceilings and grows glow berries. Cave vines with glow berries produce light.","history":[{"version":"1.17 21w05a","status":"added","notes":"Added glow berries."},{"version":"wiki-history","status":"added","notes":"Added cave vines."},{"version":"1 ]","status":"added","notes":"Added the texture for root vines in the game files, an early design for cave vines. [ 1 ]"}],"colors":{"primary":"#9f752a","dominant_hex":"#c26816","average_hex":"#9f752a","hue_group":"yellow","lightness":0.3941,"saturation":0.5821,"palette":["#c26816","#325a23","#64671f","#f49444","#94441c","#e2ce4f"],"color_groups":[{"hex":"#c26816","weight":0.2301,"lightness":0.4235,"saturation":0.7963,"hue_group":"red"},{"hex":"#325a23","weight":0.1681,"lightness":0.2451,"saturation":0.44,"hue_group":"green"},{"hex":"#64671f","weight":0.1681,"lightness":0.2627,"saturation":0.5373,"hue_group":"yellow"},{"hex":"#f49444","weight":0.1504,"lightness":0.6118,"saturation":0.8889,"hue_group":"red"},{"hex":"#94441c","weight":0.1416,"lightness":0.3451,"saturation":0.6818,"hue_group":"red"},{"hex":"#e2ce4f","weight":0.1416,"lightness":0.598,"saturation":0.7171,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/glow_berries.png","family":"glow_berries","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_boots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_shovel","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:glow_ink_sac","name":"Glow Ink Sac","entry_type":"item","description":"A glow ink sac is an item dropped by a glow squid upon death. It can be used on signs to make glowing text and can be used to craft glow item frames.","history":[{"version":"1.17 21w03a","status":"added","notes":"Added glow ink sacs."}],"colors":{"primary":"#2c6e6a","dominant_hex":"#145454","average_hex":"#2c6e6a","hue_group":"cyan","lightness":0.302,"saturation":0.4286,"palette":["#145454","#1c3434","#4ac7b8","#147272","#2e989e","#9e7466"],"color_groups":[{"hex":"#145454","weight":0.3175,"lightness":0.2039,"saturation":0.6154,"hue_group":"cyan"},{"hex":"#1c3434","weight":0.2222,"lightness":0.1569,"saturation":0.3,"hue_group":"cyan"},{"hex":"#4ac7b8","weight":0.2222,"lightness":0.5353,"saturation":0.5274,"hue_group":"cyan"},{"hex":"#147272","weight":0.1111,"lightness":0.2627,"saturation":0.7015,"hue_group":"cyan"},{"hex":"#2e989e","weight":0.0635,"lightness":0.4,"saturation":0.549,"hue_group":"cyan"},{"hex":"#9e7466","weight":0.0635,"lightness":0.5098,"saturation":0.224,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/glow_ink_sac.png","family":"glow_ink_sac","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_helmet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_nautilus_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:glow_item_frame","name":"Glow Item Frame","entry_type":"block","description":"A glow item frame is an entity\u200c[Java Edition only] or block\u200c[Bedrock Edition only] that keeps itself and the item inside it, illuminated, even in the dark.","history":[{"version":"1.17 21w03a","status":"added","notes":"Added glow item frames."},{"version":"21w10a","status":"added","notes":"Added new subtitles for glow item frames."}],"colors":{"primary":"#946740","dominant_hex":"#f5c67c","average_hex":"#946740","hue_group":"red","lightness":0.4157,"saturation":0.3962,"palette":["#f5c67c","#78442c","#ba6f37","#332b2b","#884c2c","#34342c"],"color_groups":[{"hex":"#f5c67c","weight":0.25,"lightness":0.7235,"saturation":0.8582,"hue_group":"yellow"},{"hex":"#78442c","weight":0.2031,"lightness":0.3216,"saturation":0.4634,"hue_group":"red"},{"hex":"#ba6f37","weight":0.1797,"lightness":0.4725,"saturation":0.5436,"hue_group":"red"},{"hex":"#332b2b","weight":0.1367,"lightness":0.1843,"saturation":0.0851,"hue_group":"neutral"},{"hex":"#884c2c","weight":0.1328,"lightness":0.3529,"saturation":0.5111,"hue_group":"red"},{"hex":"#34342c","weight":0.0977,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/glow_item_frame.png","family":"glow_item_frame","relations":[{"type":"visual_neighbors","target":"minecraft:decorated_pot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:farmland","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_pot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_bamboo","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:item_frame","label":"Palette proche: Item Frame","confidence":0.875},{"type":"color_neighbors","target":"minecraft:acacia_trapdoor","label":"Palette proche: Acacia Trapdoor","confidence":0.82},{"type":"color_neighbors","target":"minecraft:bee_nest","label":"Palette proche: Bee Nest","confidence":0.802},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.79},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.79},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.79},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.79},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.79},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.79},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.79},{"type":"color_neighbors","target":"minecraft:acacia_stairs","label":"Palette proche: Acacia Stairs","confidence":0.79},{"type":"color_neighbors","target":"minecraft:acacia_wall_sign","label":"Palette proche: Acacia Wall Sign","confidence":0.79},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.737},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.731},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.721},{"type":"color_bridge","target":"minecraft:brown_glazed_terracotta","label":"Pont de nuance par sous-ton: Brown Glazed Terracotta","confidence":0.719},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.718},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.712},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.712},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.711},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.711},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.71},{"type":"color_analogous","target":"minecraft:farmland","label":"Couleurs analogues: Farmland","confidence":0.96},{"type":"color_analogous","target":"minecraft:composter","label":"Couleurs analogues: Composter","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_mushroom_block","label":"Couleurs analogues: Brown Mushroom Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:coarse_dirt","label":"Couleurs analogues: Coarse Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:redstone_wall_torch","label":"Couleurs analogues: Redstone Wall Torch","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.9},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.9},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.9},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.837},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.837},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.828},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.804},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.802},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.96},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.96},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.863},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.851},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.905},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.899},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.87},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.87},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.865},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.83},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.811},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.757},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_trapdoor","label":"Contraste clair sombre: Cherry Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55}],"category":""},{"id":"minecraft:glow_lichen","name":"Glow Lichen","entry_type":"block","description":"A glow lichen is a non-solid, light-emitting block. It can generate, or be placed, on any side of a solid block. It primarily generates on the side of blocks in caves.","history":[{"version":"1.17 21w03a","status":"added","notes":"Added glow lichen."}],"colors":{"primary":"#70837a","dominant_hex":"#6c7c7c","average_hex":"#70837a","hue_group":"neutral","lightness":0.4765,"saturation":0.0782,"palette":["#6c7c7c","#74847c","#64746c","#749484","#acac8c"],"color_groups":[{"hex":"#6c7c7c","weight":0.3714,"lightness":0.4549,"saturation":0.069,"hue_group":"neutral"},{"hex":"#74847c","weight":0.2476,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#64746c","weight":0.2286,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#749484","weight":0.0952,"lightness":0.5176,"saturation":0.1301,"hue_group":"cyan"},{"hex":"#acac8c","weight":0.0571,"lightness":0.6118,"saturation":0.1616,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/glow_lichen.png","family":"glow_lichen","relations":[{"type":"visual_neighbors","target":"minecraft:emerald_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.847},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.839},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.839},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.839},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.839},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.803},{"type":"color_neighbors","target":"minecraft:tuff_brick_stairs","label":"Palette proche: Tuff Brick Stairs","confidence":0.803},{"type":"color_neighbors","target":"minecraft:tuff_brick_wall","label":"Palette proche: Tuff Brick Wall","confidence":0.803},{"type":"color_neighbors","target":"minecraft:tuff_bricks","label":"Palette proche: Tuff Bricks","confidence":0.803},{"type":"color_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Palette proche: Chiseled Tuff Bricks","confidence":0.784},{"type":"color_neighbors","target":"minecraft:chiseled_tuff","label":"Palette proche: Chiseled Tuff","confidence":0.783},{"type":"color_neighbors","target":"minecraft:chain_command_block","label":"Palette proche: Chain Command Block","confidence":0.778},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_stairs","label":"Pont de nuance par palette: Polished Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_wall","label":"Pont de nuance par palette: Polished Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_slab","label":"Pont de nuance par palette: Tuff Brick Slab","confidence":0.838},{"type":"color_bridge","target":"minecraft:tuff_brick_stairs","label":"Pont de nuance par palette: Tuff Brick Stairs","confidence":0.838},{"type":"color_bridge","target":"minecraft:tuff_brick_wall","label":"Pont de nuance par palette: Tuff Brick Wall","confidence":0.838},{"type":"color_bridge","target":"minecraft:tuff_bricks","label":"Pont de nuance par palette: Tuff Bricks","confidence":0.838},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.822},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55}],"category":""},{"id":"minecraft:glow_squid","name":"Glow Squid","entry_type":"mob","description":"A glow squid is a variant of the normal squid found in dark underwater areas, typically in ocean depths, canyons, and underground lakes. It has an aqua luminescent texture, and is the only source of glow ink sacs.","history":[{"version":"1.17 21w03a","status":"added","notes":"Added the glow squid, but without the glow texture animation found in the Minecraft Earth version."},{"version":"1.21.2 24w33a","status":"added","notes":"Added baby variants of glow squid."},{"version":"wiki-history","status":"added","notes":"Added golden dandelions , which can be used to prevent baby glow squid from growing up."}],"colors":{"primary":"#288781","dominant_hex":"#0c5454","average_hex":"#288781","hue_group":"cyan","lightness":0.3431,"saturation":0.5429,"palette":["#0c5454","#146c6c","#39aea3","#2c939a","#247c84","#97f6cd"],"color_groups":[{"hex":"#0c5454","weight":0.2666,"lightness":0.1882,"saturation":0.75,"hue_group":"cyan"},{"hex":"#146c6c","weight":0.2235,"lightness":0.251,"saturation":0.6875,"hue_group":"cyan"},{"hex":"#39aea3","weight":0.2119,"lightness":0.4529,"saturation":0.5065,"hue_group":"cyan"},{"hex":"#2c939a","weight":0.1175,"lightness":0.3882,"saturation":0.5556,"hue_group":"cyan"},{"hex":"#247c84","weight":0.0944,"lightness":0.3294,"saturation":0.5714,"hue_group":"cyan"},{"hex":"#97f6cd","weight":0.0861,"lightness":0.7784,"saturation":0.8407,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/squid/glow_squid.png","family":"glow_squid","relations":[{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_bioluminescent_layer","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_1","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_2","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_heart","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:glow_squid_spawn_egg","name":"Glow Squid Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#29777b","dominant_hex":"#36a1a1","average_hex":"#29777b","hue_group":"cyan","lightness":0.3216,"saturation":0.5,"palette":["#36a1a1","#157572","#263262","#0b4c4b","#287b8e","#7cecb4"],"color_groups":[{"hex":"#36a1a1","weight":0.2533,"lightness":0.4216,"saturation":0.4977,"hue_group":"cyan"},{"hex":"#157572","weight":0.2067,"lightness":0.2706,"saturation":0.6957,"hue_group":"cyan"},{"hex":"#263262","weight":0.1733,"lightness":0.2667,"saturation":0.4412,"hue_group":"blue"},{"hex":"#0b4c4b","weight":0.1667,"lightness":0.1706,"saturation":0.7471,"hue_group":"cyan"},{"hex":"#287b8e","weight":0.12,"lightness":0.3569,"saturation":0.5604,"hue_group":"cyan"},{"hex":"#7cecb4","weight":0.08,"lightness":0.7059,"saturation":0.7467,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/glow_squid_spawn_egg.png","family":"glow_squid_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_helmet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_pearl","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_of_the_sea","label":"Shared hue group: cyan","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:glowstone","name":"Glowstone","entry_type":"block","description":"Glowstone is a light-emitting block found hanging from ceilings and overhangs in the Nether. It can be used as a crafting material, broken into glowstone dust, and is required to fuel respawn anchors.","history":[{"version":"v1.2.0 preview","status":"added","notes":"Added glowstone."},{"version":"19w05a","status":"added","notes":"Added wandering traders , which sell glowstone."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glowstone, providing the football/regular effect to the mob."}],"colors":{"primary":"#ac8354","dominant_hex":"#fce9ab","average_hex":"#ac8354","hue_group":"yellow","lightness":0.502,"saturation":0.3465,"palette":["#fce9ab","#6c4424","#cc8454","#84542c","#8c6c3c","#744c24"],"color_groups":[{"hex":"#fce9ab","weight":0.2773,"lightness":0.8294,"saturation":0.931,"hue_group":"yellow"},{"hex":"#6c4424","weight":0.1953,"lightness":0.2824,"saturation":0.5,"hue_group":"red"},{"hex":"#cc8454","weight":0.1602,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#84542c","weight":0.1289,"lightness":0.3451,"saturation":0.5,"hue_group":"red"},{"hex":"#8c6c3c","weight":0.1289,"lightness":0.3922,"saturation":0.4,"hue_group":"yellow"},{"hex":"#744c24","weight":0.1094,"lightness":0.298,"saturation":0.5263,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/glowstone.png","family":"glowstone","relations":[{"type":"visual_neighbors","target":"minecraft:jungle_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lectern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bee_nest","label":"Palette proche: Bee Nest","confidence":0.861},{"type":"color_neighbors","target":"minecraft:scaffolding","label":"Palette proche: Scaffolding","confidence":0.798},{"type":"color_neighbors","target":"minecraft:acacia_door","label":"Palette proche: Acacia Door","confidence":0.788},{"type":"color_neighbors","target":"minecraft:glow_item_frame","label":"Palette proche: Glow Item Frame","confidence":0.784},{"type":"color_neighbors","target":"minecraft:jungle_door","label":"Palette proche: Jungle Door","confidence":0.778},{"type":"color_neighbors","target":"minecraft:brown_carpet","label":"Palette proche: Brown Carpet","confidence":0.778},{"type":"color_neighbors","target":"minecraft:brown_wool","label":"Palette proche: Brown Wool","confidence":0.778},{"type":"color_neighbors","target":"minecraft:composter","label":"Palette proche: Composter","confidence":0.775},{"type":"color_neighbors","target":"minecraft:copper_bulb","label":"Palette proche: Copper Bulb","confidence":0.77},{"type":"color_neighbors","target":"minecraft:waxed_copper_bulb","label":"Palette proche: Waxed Copper Bulb","confidence":0.77},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.769},{"type":"color_neighbors","target":"minecraft:torch","label":"Palette proche: Torch","confidence":0.766},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.736},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.712},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.705},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.703},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.701},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.701},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.698},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.698},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.693},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.693},{"type":"color_analogous","target":"minecraft:jungle_hanging_sign","label":"Couleurs analogues: Jungle Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_wall_hanging_sign","label":"Couleurs analogues: Jungle Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_jungle_log","label":"Couleurs analogues: Stripped Jungle Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_jungle_wood","label":"Couleurs analogues: Stripped Jungle Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire","label":"Couleurs analogues: Fire","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_concrete_powder","label":"Couleurs analogues: Orange Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:pumpkin","label":"Couleurs analogues: Pumpkin","confidence":0.96},{"type":"color_analogous","target":"minecraft:sniffer_egg","label":"Couleurs analogues: Sniffer Egg","confidence":0.955},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.938},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.931},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.802},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.765},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.755},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.755},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.755},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.732},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.946},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.942},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.938},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.922},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.909},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.898},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.938},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.91},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.91},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.907},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.902},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.896},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.892},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55}],"category":""},{"id":"minecraft:glowstone_dust","name":"Glowstone Dust","entry_type":"item","description":"Glowstone dust is an item obtained from mining glowstone, and is mainly used to create potions with increased strength and decreased duration.","history":[{"version":"v1.2.0","status":"added","notes":"Added glowstone dust."},{"version":"wiki-history","status":"added","notes":"added to extended potions ."}],"colors":{"primary":"#b47d44","dominant_hex":"#b47444","average_hex":"#b47d44","hue_group":"yellow","lightness":0.4863,"saturation":0.4516,"palette":["#b47444","#5c3c1c","#804e26","#fcbc5c","#ecac4c","#fcd49c"],"color_groups":[{"hex":"#b47444","weight":0.2273,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#5c3c1c","weight":0.1932,"lightness":0.2353,"saturation":0.5333,"hue_group":"yellow"},{"hex":"#804e26","weight":0.1818,"lightness":0.3255,"saturation":0.5422,"hue_group":"red"},{"hex":"#fcbc5c","weight":0.1705,"lightness":0.6745,"saturation":0.9639,"hue_group":"yellow"},{"hex":"#ecac4c","weight":0.125,"lightness":0.6118,"saturation":0.8081,"hue_group":"yellow"},{"hex":"#fcd49c","weight":0.1023,"lightness":0.8,"saturation":0.9412,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/glowstone_dust.png","family":"glowstone_dust","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:clock","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_nugget","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:totem_of_undying","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:experience_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_chestplate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:poisonous_potato","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:goat","name":"Goat","entry_type":"mob","description":"A goat is a neutral mob found in certain mountainous biomes. It can jump especially high and is milkable. Goats occasionally ram other mobs and players, and cannot be provoked. Ramming into certain blocks causes a goat horn to drop from an adult goat if it has any.","history":[{"version":"1.17 21w13a","status":"added","notes":"Added goats."},{"version":"1.18","status":"added","notes":"added snowy slopes , jagged peaks , and frozen peaks biomes."},{"version":"3","status":"added","notes":"Added the stony peaks biome, where goats can also spawn."}],"colors":{"primary":"#d4cec3","dominant_hex":"#fcfcfc","average_hex":"#d4cec3","hue_group":"yellow","lightness":0.798,"saturation":0.165,"palette":["#fcfcfc","#dcd4c4","#ece4dc","#766b60","#f4ecec","#c4ac94"],"color_groups":[{"hex":"#fcfcfc","weight":0.2088,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcd4c4","weight":0.1987,"lightness":0.8157,"saturation":0.2553,"hue_group":"yellow"},{"hex":"#ece4dc","weight":0.175,"lightness":0.8941,"saturation":0.2963,"hue_group":"yellow"},{"hex":"#766b60","weight":0.1556,"lightness":0.4196,"saturation":0.1028,"hue_group":"neutral"},{"hex":"#f4ecec","weight":0.1409,"lightness":0.9412,"saturation":0.2667,"hue_group":"red"},{"hex":"#c4ac94","weight":0.121,"lightness":0.6745,"saturation":0.2892,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/goat/goat.png","family":"goat","relations":[{"type":"visual_neighbors","target":"minecraft:parrot/grey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/gray","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/siamese","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/calico","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_golem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_coral","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:goat_horn","name":"Goat Horn","entry_type":"item","description":"A goat horn is a horn dropped by goats. It has eight variants, and each plays a unique sound when used which can be heard by players in a large radius.","history":[{"version":"1.19 22w17a","status":"added","notes":"Added goat horns."}],"colors":{"primary":"#4e4c49","dominant_hex":"#5f5f5f","average_hex":"#4e4c49","hue_group":"neutral","lightness":0.2961,"saturation":0.0331,"palette":["#5f5f5f","#4c4c44","#2c2424","#342d2d","#8e887e","#443c3c"],"color_groups":[{"hex":"#5f5f5f","weight":0.2929,"lightness":0.3725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c44","weight":0.2525,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#2c2424","weight":0.1414,"lightness":0.1569,"saturation":0.1,"hue_group":"neutral"},{"hex":"#342d2d","weight":0.1212,"lightness":0.1902,"saturation":0.0722,"hue_group":"neutral"},{"hex":"#8e887e","weight":0.101,"lightness":0.5255,"saturation":0.0661,"hue_group":"neutral"},{"hex":"#443c3c","weight":0.0909,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/goat_horn.png","family":"goat_horn","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:compass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:furnace_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_strad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gunpowder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:goat_spawn_egg","name":"Goat Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#a89d90","dominant_hex":"#c8b89d","average_hex":"#a89d90","hue_group":"yellow","lightness":0.6118,"saturation":0.1212,"palette":["#c8b89d","#f6f0f0","#907864","#675a54","#312f2f","#e4dcd4"],"color_groups":[{"hex":"#c8b89d","weight":0.2439,"lightness":0.7,"saturation":0.281,"hue_group":"yellow"},{"hex":"#f6f0f0","weight":0.2256,"lightness":0.9529,"saturation":0.25,"hue_group":"red"},{"hex":"#907864","weight":0.1951,"lightness":0.4784,"saturation":0.1803,"hue_group":"red"},{"hex":"#675a54","weight":0.1402,"lightness":0.3667,"saturation":0.1016,"hue_group":"neutral"},{"hex":"#312f2f","weight":0.128,"lightness":0.1882,"saturation":0.0208,"hue_group":"neutral"},{"hex":"#e4dcd4","weight":0.0671,"lightness":0.8627,"saturation":0.2286,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/goat_spawn_egg.png","family":"goat_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mojang_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bordure_indented_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:field_masoned_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:gold_block","name":"Gold Block","entry_type":"block","description":"A block of gold, internally known as a gold block, is a precious metal block equivalent to nine gold ingots.","history":[{"version":"0.0.20a","status":"added","notes":"Added blocks of gold."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of gold, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#f6d03e","dominant_hex":"#fce84c","average_hex":"#f6d03e","hue_group":"yellow","lightness":0.6039,"saturation":0.9109,"palette":["#fce84c","#fcdc3c","#f4cc24","#d0902d","#fcbc24","#fcfc9f"],"color_groups":[{"hex":"#fce84c","weight":0.2891,"lightness":0.6431,"saturation":0.967,"hue_group":"yellow"},{"hex":"#fcdc3c","weight":0.2148,"lightness":0.6118,"saturation":0.9697,"hue_group":"yellow"},{"hex":"#f4cc24","weight":0.2031,"lightness":0.549,"saturation":0.9043,"hue_group":"yellow"},{"hex":"#d0902d","weight":0.1211,"lightness":0.4961,"saturation":0.6443,"hue_group":"yellow"},{"hex":"#fcbc24","weight":0.1133,"lightness":0.5647,"saturation":0.973,"hue_group":"yellow"},{"hex":"#fcfc9f","weight":0.0586,"lightness":0.8059,"saturation":0.9394,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gold_block.png","family":"gold_block","relations":[{"type":"visual_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wildflowers","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.929},{"type":"color_neighbors","target":"minecraft:yellow_wool","label":"Palette proche: Yellow Wool","confidence":0.929},{"type":"color_neighbors","target":"minecraft:yellow_shulker_box","label":"Palette proche: Yellow Shulker Box","confidence":0.904},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.896},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.89},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.882},{"type":"color_neighbors","target":"minecraft:yellow_concrete_powder","label":"Palette proche: Yellow Concrete Powder","confidence":0.876},{"type":"color_neighbors","target":"minecraft:yellow_candle","label":"Palette proche: Yellow Candle","confidence":0.856},{"type":"color_neighbors","target":"minecraft:jack_o_lantern","label":"Palette proche: Jack O Lantern","confidence":0.849},{"type":"color_neighbors","target":"minecraft:yellow_concrete","label":"Palette proche: Yellow Concrete","confidence":0.843},{"type":"color_neighbors","target":"minecraft:bee_nest","label":"Palette proche: Bee Nest","confidence":0.825},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.704},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.62},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.62},{"type":"color_bridge","target":"minecraft:crimson_fungus","label":"Pont de nuance par palette: Crimson Fungus","confidence":0.614},{"type":"color_bridge","target":"minecraft:potted_crimson_fungus","label":"Pont de nuance par palette: Potted Crimson Fungus","confidence":0.614},{"type":"color_bridge","target":"minecraft:jungle_leaves","label":"Pont de nuance par palette: Jungle Leaves","confidence":0.59},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.58},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.58},{"type":"color_analogous","target":"minecraft:light_weighted_pressure_plate","label":"Couleurs analogues: Light Weighted Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_concrete_powder","label":"Couleurs analogues: Yellow Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:wildflowers","label":"Couleurs analogues: Wildflowers","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_sandstone","label":"Couleurs analogues: Chiseled Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone","label":"Couleurs analogues: Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_wall","label":"Couleurs analogues: Sandstone Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sand","label":"Couleurs analogues: Sand","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.945},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.937},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.913},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.909},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.903},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.866},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.866},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.918},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.918},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.918},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.909},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.867},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.829},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.829},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.802},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.96},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.913},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.683},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.674},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.674},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.67},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.665},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.613},{"type":"value_contrast","target":"minecraft:jungle_log","label":"Contraste clair sombre: Jungle Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_wood","label":"Contraste clair sombre: Jungle Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:podzol","label":"Contraste clair sombre: Podzol","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_trapdoor","label":"Contraste clair sombre: Dark Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:nether_wart_block","label":"Contraste clair sombre: Nether Wart Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_door","label":"Contraste clair sombre: Dark Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle","label":"Contraste clair sombre: Green Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55}],"category":"resource"},{"id":"minecraft:gold_ingot","name":"Gold Ingot","entry_type":"item","description":"A gold ingot is a metal ingot used to craft armor, tools, and items, and also used as currency for bartering with piglins.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added gold ingots."},{"version":"1.3.1 12w21a","status":"added","notes":"Added desert pyramids , with a hidden chest room and loot containing gold ingots."},{"version":"12w22a","status":"added","notes":"Added jungle pyramids , which contain loot chests with gold ingots."}],"colors":{"primary":"#dcb343","dominant_hex":"#fcf67d","average_hex":"#dcb343","hue_group":"yellow","lightness":0.5627,"saturation":0.6861,"palette":["#fcf67d","#b46414","#fcd44c","#742c04","#dc9414","#ecb414"],"color_groups":[{"hex":"#fcf67d","weight":0.4,"lightness":0.7392,"saturation":0.9549,"hue_group":"yellow"},{"hex":"#b46414","weight":0.163,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#fcd44c","weight":0.1259,"lightness":0.6431,"saturation":0.967,"hue_group":"yellow"},{"hex":"#742c04","weight":0.1111,"lightness":0.2353,"saturation":0.9333,"hue_group":"red"},{"hex":"#dc9414","weight":0.1037,"lightness":0.4706,"saturation":0.8333,"hue_group":"yellow"},{"hex":"#ecb414","weight":0.0963,"lightness":0.502,"saturation":0.8504,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/gold_ingot.png","family":"gold_ingot","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:yellow_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_nautilus_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_pie","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:gold_nugget","name":"Gold Nugget","entry_type":"item","description":"Gold nuggets are minimum pieces of gold used to craft gold ingots and other various golden items. They can be obtained by smelting golden tools, weapons, or armor. One gold nugget is effectively worth one-ninth of a gold ingot.","history":[{"version":"1.0.0","status":"added","notes":"Added gold nuggets."}],"colors":{"primary":"#ba9841","dominant_hex":"#7c540c","average_hex":"#ba9841","hue_group":"yellow","lightness":0.4922,"saturation":0.4821,"palette":["#7c540c","#6c440c","#e19f14","#fcfc6c","#fcd46c","#fcfcfc"],"color_groups":[{"hex":"#7c540c","weight":0.2703,"lightness":0.2667,"saturation":0.8235,"hue_group":"yellow"},{"hex":"#6c440c","weight":0.1892,"lightness":0.2353,"saturation":0.8,"hue_group":"yellow"},{"hex":"#e19f14","weight":0.1622,"lightness":0.4804,"saturation":0.8367,"hue_group":"yellow"},{"hex":"#fcfc6c","weight":0.1622,"lightness":0.7059,"saturation":0.96,"hue_group":"yellow"},{"hex":"#fcd46c","weight":0.1081,"lightness":0.7059,"saturation":0.96,"hue_group":"yellow"},{"hex":"#fcfcfc","weight":0.1081,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/gold_nugget.png","family":"gold_nugget","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:clock","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone_dust","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_chestplate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:totem_of_undying","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_pie","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:experience_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:gold_ore","name":"Gold Ore","entry_type":"block","description":"Gold ore is a rare mineral block found underground that drops raw gold when mined with an iron pickaxe or better. Deepslate gold ore is a variant of gold ore that can generate in deepslate and tuff.","history":[{"version":"0.0.14a","status":"added","notes":"Added gold ore."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb gold ore, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#91866b","dominant_hex":"#7c7c7c","average_hex":"#91866b","hue_group":"yellow","lightness":0.4941,"saturation":0.1508,"palette":["#7c7c7c","#969696","#c38818","#747474","#676767","#fcef62"],"color_groups":[{"hex":"#7c7c7c","weight":0.2344,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#969696","weight":0.2188,"lightness":0.5882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c38818","weight":0.1758,"lightness":0.4294,"saturation":0.7808,"hue_group":"yellow"},{"hex":"#747474","weight":0.1641,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#676767","weight":0.1523,"lightness":0.4039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcef62","weight":0.0547,"lightness":0.6863,"saturation":0.9625,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gold_ore.png","family":"gold_ore","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:daylight_detector","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:conduit","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:loom","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:stonecutter","label":"Palette proche: Stonecutter","confidence":0.908},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.897},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.897},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.897},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.897},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.897},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.897},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.893},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.893},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.893},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.893},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.89},{"type":"color_bridge","target":"minecraft:stonecutter","label":"Pont de nuance par palette: Stonecutter","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_stairs","label":"Pont de nuance par palette: Stone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55}],"category":"resource"},{"id":"minecraft:golden_apple","name":"Golden Apple","entry_type":"item","description":"A golden apple is a food item that bestows beneficial effects when consumed (Absorption and Regeneration) and is also used to cure a zombie villager under the Weakness effect into a normal villager.","history":[{"version":"20100227-1414","status":"added","notes":"Added golden apples."},{"version":"wiki-history","status":"added","notes":"added to desert pyramid and mineshaft chests."}],"colors":{"primary":"#bd8c29","dominant_hex":"#dca414","average_hex":"#bd8c29","hue_group":"yellow","lightness":0.451,"saturation":0.6435,"palette":["#dca414","#f0f177","#742c04","#eccc44","#b46414","#54180c"],"color_groups":[{"hex":"#dca414","weight":0.2895,"lightness":0.4706,"saturation":0.8333,"hue_group":"yellow"},{"hex":"#f0f177","weight":0.1754,"lightness":0.7059,"saturation":0.8133,"hue_group":"yellow"},{"hex":"#742c04","weight":0.1491,"lightness":0.2353,"saturation":0.9333,"hue_group":"red"},{"hex":"#eccc44","weight":0.1491,"lightness":0.5961,"saturation":0.8155,"hue_group":"yellow"},{"hex":"#b46414","weight":0.1228,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#54180c","weight":0.114,"lightness":0.1882,"saturation":0.75,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_apple.png","family":"golden_apple","relations":[{"type":"related_sets","target":"group:food","label":"Related set: food","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_nautilus_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55}],"category":"food"},{"id":"minecraft:golden_axe","name":"Golden Axe","entry_type":"item","description":"A golden axe is a variant of axe that is crafted from gold ingots. It can be used to cut down trees faster, to strip logs and scrape copper-based blocks, and as a melee weapon that disables shields. It is the sixth-highest tier of axe, having the lowest durability, and having the lowest attack damage alongside wooden axes, despite having the highest mining efficiency and the highest attack speed alongside diamond and netherite axes. It can be admired by piglins, and has the highest enchantability.","history":[{"version":"0.31 20100130","status":"added","notes":"Added golden axes."},{"version":"1.16.2 20w27a","status":"added","notes":"Added piglin brutes , which can spawn with and drop golden axes."},{"version":"3","status":"added","notes":"added for golden axes, which adds 1 damage and 0.5 seconds (10 game ticks ) of shield stunning per level and is mutually exclusive with Sharpness ."}],"colors":{"primary":"#83691e","dominant_hex":"#7e581a","average_hex":"#83691e","hue_group":"yellow","lightness":0.3157,"saturation":0.6273,"palette":["#7e581a","#e9af14","#2c1c0c","#4c3414","#3c2c0c","#f7f76b"],"color_groups":[{"hex":"#7e581a","weight":0.25,"lightness":0.298,"saturation":0.6579,"hue_group":"yellow"},{"hex":"#e9af14","weight":0.2,"lightness":0.4961,"saturation":0.8419,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1667,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.15,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#3c2c0c","weight":0.1167,"lightness":0.1412,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#f7f76b","weight":0.1167,"lightness":0.6941,"saturation":0.8974,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_axe.png","family":"golden_tools","relations":[{"type":"variants","target":"minecraft:golden_hoe","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_hoe","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_pickaxe","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_pickaxe","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_shovel","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_shovel","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_sword","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_sword","label":"Related set: golden_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:golden_tools","label":"Related set: golden_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:bread","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_carrot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:golden_boots","name":"Golden Boots","entry_type":"item","description":"Golden boots are a variant of boots crafted from gold ingots. They are the sixth-highest tier of boots, having the same armor points as leather boots but with higher durability and enchantability. Like all golden armor, piglins are attracted to golden boots, and do not attack any player wearing them.","history":[{"version":"20100212-1210","status":"added","notes":"Added golden boots."},{"version":"20100218-0011","status":"added","notes":"Added a model for golden boots."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#9e872c","dominant_hex":"#3c2c0c","average_hex":"#9e872c","hue_group":"yellow","lightness":0.3961,"saturation":0.5644,"palette":["#3c2c0c","#845c14","#ecec54","#ecb414","#fcfc96","#dc9414"],"color_groups":[{"hex":"#3c2c0c","weight":0.2955,"lightness":0.1412,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#845c14","weight":0.25,"lightness":0.298,"saturation":0.7368,"hue_group":"yellow"},{"hex":"#ecec54","weight":0.1932,"lightness":0.6275,"saturation":0.8,"hue_group":"yellow"},{"hex":"#ecb414","weight":0.125,"lightness":0.502,"saturation":0.8504,"hue_group":"yellow"},{"hex":"#fcfc96","weight":0.0909,"lightness":0.7882,"saturation":0.9444,"hue_group":"yellow"},{"hex":"#dc9414","weight":0.0455,"lightness":0.4706,"saturation":0.8333,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_boots.png","family":"golden_armor","relations":[{"type":"variants","target":"minecraft:golden_chestplate","label":"Same family: golden_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_chestplate","label":"Related set: golden_armor","confidence":0.8},{"type":"variants","target":"minecraft:golden_helmet","label":"Same family: golden_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_helmet","label":"Related set: golden_armor","confidence":0.8},{"type":"variants","target":"minecraft:golden_leggings","label":"Same family: golden_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_leggings","label":"Related set: golden_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:golden_armor","label":"Related set: golden_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_chestplate","label":"Shared hue group: yellow","confidence":0.55}],"category":"armor"},{"id":"minecraft:golden_carrot","name":"Golden Carrot","entry_type":"item","description":"A golden carrot is a food item that provides the most saturation out of all stackable foods when eaten. It is also a brewing ingredient for potions of Night Vision and Invisibility. In Java Edition, due to its high saturation, a golden carrot restores the most health via saturation boost of any stackable food item.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added golden carrots."}],"colors":{"primary":"#8f651b","dominant_hex":"#e7c743","average_hex":"#8f651b","hue_group":"yellow","lightness":0.3333,"saturation":0.6824,"palette":["#e7c743","#4b140a","#542c04","#543c04","#b46414","#74540c"],"color_groups":[{"hex":"#e7c743","weight":0.3229,"lightness":0.5843,"saturation":0.7736,"hue_group":"yellow"},{"hex":"#4b140a","weight":0.1875,"lightness":0.1667,"saturation":0.7647,"hue_group":"red"},{"hex":"#542c04","weight":0.1667,"lightness":0.1725,"saturation":0.9091,"hue_group":"yellow"},{"hex":"#543c04","weight":0.1146,"lightness":0.1725,"saturation":0.9091,"hue_group":"yellow"},{"hex":"#b46414","weight":0.1146,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#74540c","weight":0.0938,"lightness":0.251,"saturation":0.8125,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_carrot.png","family":"golden_carrot","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:bread","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_shovel","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:golden_chestplate","name":"Golden Chestplate","entry_type":"item","description":"A golden chestplate is a variant of chestplate crafted from gold ingots. It is the fifth-highest tier of chestplate, having higher armor points than a copper chestplate. Like all golden armor, piglins are attracted to golden chestplates, and do not attack any player wearing one.","history":[{"version":"20100206-2034","status":"added","notes":"Added the item form of golden chestplates."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#beaa39","dominant_hex":"#ecec54","average_hex":"#beaa39","hue_group":"yellow","lightness":0.4843,"saturation":0.5385,"palette":["#ecec54","#845c14","#3c2c0c","#ecb414","#fcfc8c","#dc9414"],"color_groups":[{"hex":"#ecec54","weight":0.3333,"lightness":0.6275,"saturation":0.8,"hue_group":"yellow"},{"hex":"#845c14","weight":0.1739,"lightness":0.298,"saturation":0.7368,"hue_group":"yellow"},{"hex":"#3c2c0c","weight":0.1594,"lightness":0.1412,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#ecb414","weight":0.1522,"lightness":0.502,"saturation":0.8504,"hue_group":"yellow"},{"hex":"#fcfc8c","weight":0.1232,"lightness":0.7686,"saturation":0.9492,"hue_group":"yellow"},{"hex":"#dc9414","weight":0.058,"lightness":0.4706,"saturation":0.8333,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_chestplate.png","family":"golden_armor","relations":[{"type":"variants","target":"minecraft:golden_boots","label":"Same family: golden_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_boots","label":"Related set: golden_armor","confidence":0.8},{"type":"variants","target":"minecraft:golden_helmet","label":"Same family: golden_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_helmet","label":"Related set: golden_armor","confidence":0.8},{"type":"variants","target":"minecraft:golden_leggings","label":"Same family: golden_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_leggings","label":"Related set: golden_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:golden_armor","label":"Related set: golden_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_nugget","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_pie","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clock","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone_dust","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_nautilus_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_boots","label":"Shared hue group: yellow","confidence":0.55}],"category":"armor"},{"id":"minecraft:golden_helmet","name":"Golden Helmet","entry_type":"item","description":"A golden helmet is a variant of helmet that is crafted from gold ingots. It is the seventh-highest tier of helmet, having higher armor points and durability than a leather cap. Like all golden armor, piglins are attracted to golden helmets, and do not attack any player wearing one.","history":[{"version":"20100206-2034","status":"added","notes":"Added golden helmets."},{"version":"20100218","status":"added","notes":"Added models of gold helmets."},{"version":"1.16 20w07a","status":"added","notes":"Added textures and models for golden helmets when they are used by piglins ."}],"colors":{"primary":"#967d26","dominant_hex":"#3c2c0c","average_hex":"#967d26","hue_group":"yellow","lightness":0.3686,"saturation":0.5957,"palette":["#3c2c0c","#845c14","#ecec54","#ecb414","#dc9414","#fcfc8f"],"color_groups":[{"hex":"#3c2c0c","weight":0.3462,"lightness":0.1412,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#845c14","weight":0.2436,"lightness":0.298,"saturation":0.7368,"hue_group":"yellow"},{"hex":"#ecec54","weight":0.1667,"lightness":0.6275,"saturation":0.8,"hue_group":"yellow"},{"hex":"#ecb414","weight":0.1154,"lightness":0.502,"saturation":0.8504,"hue_group":"yellow"},{"hex":"#dc9414","weight":0.0641,"lightness":0.4706,"saturation":0.8333,"hue_group":"yellow"},{"hex":"#fcfc8f","weight":0.0641,"lightness":0.7745,"saturation":0.9478,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_helmet.png","family":"golden_armor","relations":[{"type":"variants","target":"minecraft:golden_boots","label":"Same family: golden_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_boots","label":"Related set: golden_armor","confidence":0.8},{"type":"variants","target":"minecraft:golden_chestplate","label":"Same family: golden_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_chestplate","label":"Related set: golden_armor","confidence":0.8},{"type":"variants","target":"minecraft:golden_leggings","label":"Same family: golden_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_leggings","label":"Related set: golden_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:golden_armor","label":"Related set: golden_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_boots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bread","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_shovel","label":"Shared hue group: yellow","confidence":0.55}],"category":"armor"},{"id":"minecraft:golden_hoe","name":"Golden Hoe","entry_type":"item","description":"A golden hoe is a variant of hoe that is crafted from gold ingots. It is used to till dirt-related blocks into farmland, and to break leaves, haybales, and sculk-related blocks faster. It is the sixth-highest tier of hoe, having the lowest durability, and having the lowest attack speed alongside wooden hoes, despite having the highest mining efficiency. It can be admired by piglins, and has the highest enchantability.","history":[{"version":"20100206-2034","status":"added","notes":"Added golden hoe."},{"version":"15w50a","status":"added","notes":"Added a sound for hoes: item.hoe.till ."}],"colors":{"primary":"#6e581c","dominant_hex":"#88601b","average_hex":"#6e581c","hue_group":"yellow","lightness":0.2706,"saturation":0.5942,"palette":["#88601b","#2c1c0c","#4c3414","#eed53b","#3c2c0c","#6c4c1c"],"color_groups":[{"hex":"#88601b","weight":0.2157,"lightness":0.3196,"saturation":0.6687,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1961,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.1961,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#eed53b","weight":0.1765,"lightness":0.5824,"saturation":0.8404,"hue_group":"yellow"},{"hex":"#3c2c0c","weight":0.1176,"lightness":0.1412,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#6c4c1c","weight":0.098,"lightness":0.2667,"saturation":0.5882,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_hoe.png","family":"golden_tools","relations":[{"type":"variants","target":"minecraft:golden_axe","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_axe","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_pickaxe","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_pickaxe","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_shovel","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_shovel","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_sword","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_sword","label":"Related set: golden_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:golden_tools","label":"Related set: golden_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bread","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:debug_stick","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:golden_horse_armor","name":"Golden Horse Armor","entry_type":"item","description":"Golden horse armor is the third-strongest tier of horse armor. Unlike other gold items, it cannot be crafted and is only obtainable from chest loot in various structures.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added gold horse armor."},{"version":"1.9 15w31a","status":"added","notes":"added to end city chests."}],"colors":{"primary":"#b38125","dominant_hex":"#b46414","average_hex":"#b38125","hue_group":"yellow","lightness":0.4235,"saturation":0.6574,"palette":["#b46414","#3d0404","#dca414","#ece454","#eccc44","#fcfc74"],"color_groups":[{"hex":"#b46414","weight":0.2809,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#3d0404","weight":0.2247,"lightness":0.1275,"saturation":0.8769,"hue_group":"red"},{"hex":"#dca414","weight":0.1798,"lightness":0.4706,"saturation":0.8333,"hue_group":"yellow"},{"hex":"#ece454","weight":0.1348,"lightness":0.6275,"saturation":0.8,"hue_group":"yellow"},{"hex":"#eccc44","weight":0.1011,"lightness":0.5961,"saturation":0.8155,"hue_group":"yellow"},{"hex":"#fcfc74","weight":0.0787,"lightness":0.7216,"saturation":0.9577,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_horse_armor.png","family":"golden_horse_armor","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_nautilus_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bread","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_carrot","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:golden_leggings","name":"Golden Leggings","entry_type":"item","description":"Golden leggings are a variant of leggings crafted from gold ingots. They are the sixth-highest tier of leggings, having higher armor points and durability than leather pants. Like all golden armor, piglins are attracted to golden leggings, and do not attack any player wearing them.","history":[{"version":"20100206-2034","status":"added","notes":"Added the item form of golden leggings."},{"version":"1.19 22w12a","status":"added","notes":"Added the Swift Sneak enchantment, which can be applied only to leggings."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#a48b2b","dominant_hex":"#3c2c0c","average_hex":"#a48b2b","hue_group":"yellow","lightness":0.4059,"saturation":0.5845,"palette":["#3c2c0c","#ecec54","#845c14","#ecb414","#fcfc92","#dc9414"],"color_groups":[{"hex":"#3c2c0c","weight":0.3077,"lightness":0.1412,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#ecec54","weight":0.1923,"lightness":0.6275,"saturation":0.8,"hue_group":"yellow"},{"hex":"#845c14","weight":0.1731,"lightness":0.298,"saturation":0.7368,"hue_group":"yellow"},{"hex":"#ecb414","weight":0.1635,"lightness":0.502,"saturation":0.8504,"hue_group":"yellow"},{"hex":"#fcfc92","weight":0.0865,"lightness":0.7804,"saturation":0.9464,"hue_group":"yellow"},{"hex":"#dc9414","weight":0.0769,"lightness":0.4706,"saturation":0.8333,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_leggings.png","family":"golden_armor","relations":[{"type":"variants","target":"minecraft:golden_boots","label":"Same family: golden_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_boots","label":"Related set: golden_armor","confidence":0.8},{"type":"variants","target":"minecraft:golden_chestplate","label":"Same family: golden_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_chestplate","label":"Related set: golden_armor","confidence":0.8},{"type":"variants","target":"minecraft:golden_helmet","label":"Same family: golden_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_helmet","label":"Related set: golden_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:golden_armor","label":"Related set: golden_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_boots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55}],"category":"armor"},{"id":"minecraft:golden_nautilus_armor","name":"Golden Nautilus Armor","entry_type":"item","description":"Golden nautilus armor is a type of nautilus armor that can be equipped by a nautilus that reduces the damage received to the nautilus. It is the third-strongest tier of nautilus armor, having higher armor points than iron nautilus armor.","history":[{"version":"1.21.11 25w41a","status":"added","notes":"Added golden nautilus armor."}],"colors":{"primary":"#ca9c2c","dominant_hex":"#bc7c14","average_hex":"#ca9c2c","hue_group":"yellow","lightness":0.4824,"saturation":0.6423,"palette":["#bc7c14","#94540c","#ece454","#eccc44","#d49414","#fcfc74"],"color_groups":[{"hex":"#bc7c14","weight":0.3026,"lightness":0.4078,"saturation":0.8077,"hue_group":"yellow"},{"hex":"#94540c","weight":0.2303,"lightness":0.3137,"saturation":0.85,"hue_group":"yellow"},{"hex":"#ece454","weight":0.1842,"lightness":0.6275,"saturation":0.8,"hue_group":"yellow"},{"hex":"#eccc44","weight":0.1053,"lightness":0.5961,"saturation":0.8155,"hue_group":"yellow"},{"hex":"#d49414","weight":0.0921,"lightness":0.4549,"saturation":0.8276,"hue_group":"yellow"},{"hex":"#fcfc74","weight":0.0855,"lightness":0.7216,"saturation":0.9577,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_nautilus_armor.png","family":"golden_nautilus_armor","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:raw_gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_chestplate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_ingot","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:golden_pickaxe","name":"Golden Pickaxe","entry_type":"item","description":"A golden pickaxe is a variant of pickaxe that is crafted from gold ingots. It is the sixth-highest tier of pickaxe, having the lowest durability, and having the lowest attack damage alongside wooden pickaxes, despite having the highest mining efficiency. It has a mining level of 0, the same as a wooden pickaxe, allowing it to mine stone and coal ore. It can be admired by piglins, and has the highest enchantability.","history":[{"version":"0.31 20100130","status":"added","notes":"Added golden pickaxes."}],"colors":{"primary":"#735c1c","dominant_hex":"#805a1b","average_hex":"#735c1c","hue_group":"yellow","lightness":0.2804,"saturation":0.6084,"palette":["#805a1b","#3c2c0c","#2c1c0c","#4c3414","#ecb414","#f1f15d"],"color_groups":[{"hex":"#805a1b","weight":0.2647,"lightness":0.3039,"saturation":0.6516,"hue_group":"yellow"},{"hex":"#3c2c0c","weight":0.2059,"lightness":0.1412,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1618,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.1471,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#ecb414","weight":0.1176,"lightness":0.502,"saturation":0.8504,"hue_group":"yellow"},{"hex":"#f1f15d","weight":0.1029,"lightness":0.6549,"saturation":0.8409,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_pickaxe.png","family":"golden_tools","relations":[{"type":"variants","target":"minecraft:golden_axe","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_axe","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_hoe","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_hoe","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_shovel","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_shovel","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_sword","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_sword","label":"Related set: golden_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:golden_tools","label":"Related set: golden_tools","confidence":0.85},{"type":"related_sets","target":"group:pickaxes","label":"Related set: pickaxes","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bread","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_carrot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_shovel","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:golden_shovel","name":"Golden Shovel","entry_type":"item","description":"A golden shovel is a variant of shovel that is crafted from gold ingots. It is used to break dirt, sand, gravel and other related blocks faster, to create dirt paths from dirt-related blocks, and to extinguish campfires. It is the sixth-highest tier of shovel, having the lowest durability, and having the lowest attack damage alongside wooden shovels, despite having the highest mining efficiency. It can be admired by piglins, and has the highest enchantability.","history":[{"version":"0.31 20100130","status":"added","notes":"Added golden shovels."},{"version":"15w50a","status":"added","notes":"added to golden shovels."}],"colors":{"primary":"#827028","dominant_hex":"#f4e654","average_hex":"#827028","hue_group":"yellow","lightness":0.3333,"saturation":0.5294,"palette":["#f4e654","#2c1c0c","#4c3414","#3c2c0c","#7d5716","#8c6424"],"color_groups":[{"hex":"#f4e654","weight":0.3019,"lightness":0.6431,"saturation":0.8791,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1698,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.1698,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#3c2c0c","weight":0.1321,"lightness":0.1412,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#7d5716","weight":0.1321,"lightness":0.2882,"saturation":0.7007,"hue_group":"yellow"},{"hex":"#8c6424","weight":0.0943,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_shovel.png","family":"golden_tools","relations":[{"type":"variants","target":"minecraft:golden_axe","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_axe","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_hoe","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_hoe","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_pickaxe","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_pickaxe","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_sword","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_sword","label":"Related set: golden_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:golden_tools","label":"Related set: golden_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:lime_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_boots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_chest_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bread","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:golden_spear","name":"Golden Spear","entry_type":"item","description":"A golden spear is a variant of spear crafted from gold ingots. It can be used to perform slow jab attacks or held forward to deal increasing damage based on how quickly the wielder is moving. It is the seventh-highest tier of spear, dealing the same damage as a wooden spear but with lower attack speed and durability. It can be admired by piglins, and has the highest enchantability.","history":[{"version":"1.21.11 25w41a","status":"added","notes":"Added golden spears."}],"colors":{"primary":"#927430","dominant_hex":"#8b5c1c","average_hex":"#927430","hue_group":"yellow","lightness":0.3804,"saturation":0.5052,"palette":["#8b5c1c","#eabc2c","#3e280a","#fcfcb8","#543111","#2c1c0c"],"color_groups":[{"hex":"#8b5c1c","weight":0.2703,"lightness":0.3275,"saturation":0.6647,"hue_group":"yellow"},{"hex":"#eabc2c","weight":0.2162,"lightness":0.5451,"saturation":0.819,"hue_group":"yellow"},{"hex":"#3e280a","weight":0.1757,"lightness":0.1412,"saturation":0.7222,"hue_group":"yellow"},{"hex":"#fcfcb8","weight":0.1351,"lightness":0.8549,"saturation":0.9189,"hue_group":"yellow"},{"hex":"#543111","weight":0.1216,"lightness":0.198,"saturation":0.6634,"hue_group":"red"},{"hex":"#2c1c0c","weight":0.0811,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_spear.png","family":"golden_spear","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:poisonous_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_boots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:golden_sword","name":"Golden Sword","entry_type":"item","description":"A golden sword is a variant of sword crafted from gold ingots. It is the seventh-highest tier of sword, dealing the same damage as a wooden sword but having less durability. It can be admired by piglins, and has the highest enchantability.","history":[{"version":"0.31 20100129-2332","status":"added","notes":"Added golden swords."},{"version":"1.8","status":"added","notes":"Added the ability to block with a sword ."},{"version":"wiki-history","status":"added","notes":"Added Sweeping Edge enchantment."}],"colors":{"primary":"#968039","dominant_hex":"#835b15","average_hex":"#968039","hue_group":"yellow","lightness":0.4059,"saturation":0.4493,"palette":["#835b15","#3c2b0d","#fcfc74","#e4a414","#fcfcfc","#ecec54"],"color_groups":[{"hex":"#835b15","weight":0.3214,"lightness":0.298,"saturation":0.7237,"hue_group":"yellow"},{"hex":"#3c2b0d","weight":0.3095,"lightness":0.1431,"saturation":0.6438,"hue_group":"yellow"},{"hex":"#fcfc74","weight":0.1071,"lightness":0.7216,"saturation":0.9577,"hue_group":"yellow"},{"hex":"#e4a414","weight":0.0952,"lightness":0.4863,"saturation":0.8387,"hue_group":"yellow"},{"hex":"#fcfcfc","weight":0.0952,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ecec54","weight":0.0714,"lightness":0.6275,"saturation":0.8,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/golden_sword.png","family":"golden_tools","relations":[{"type":"variants","target":"minecraft:golden_axe","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_axe","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_hoe","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_hoe","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_pickaxe","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_pickaxe","label":"Related set: golden_tools","confidence":0.8},{"type":"variants","target":"minecraft:golden_shovel","label":"Same family: golden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:golden_shovel","label":"Related set: golden_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:golden_tools","label":"Related set: golden_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:poisonous_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:experience_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone_dust","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clock","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_chest_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spyglass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_nugget","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:granite","name":"Granite","entry_type":"block","description":"Granite is a block of igneous rock, found in large pockets underground.","history":[{"version":"1.8 14w02a","status":"added","notes":"Added granite."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb granite, providing the football/regular effect to the mob."}],"colors":{"primary":"#956756","dominant_hex":"#9c6c5c","average_hex":"#956756","hue_group":"red","lightness":0.4608,"saturation":0.2681,"palette":["#9c6c5c","#7c5444","#ad7666","#946454","#584032","#c2a194"],"color_groups":[{"hex":"#9c6c5c","weight":0.3438,"lightness":0.4863,"saturation":0.2581,"hue_group":"red"},{"hex":"#7c5444","weight":0.1914,"lightness":0.3765,"saturation":0.2917,"hue_group":"red"},{"hex":"#ad7666","weight":0.1875,"lightness":0.5392,"saturation":0.3021,"hue_group":"red"},{"hex":"#946454","weight":0.1562,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#584032","weight":0.0742,"lightness":0.2706,"saturation":0.2754,"hue_group":"red"},{"hex":"#c2a194","weight":0.0469,"lightness":0.6706,"saturation":0.2738,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/granite.png","family":"granite","relations":[{"type":"variants","target":"minecraft:granite_slab","label":"Same family: granite","confidence":0.75},{"type":"related_sets","target":"minecraft:granite_slab","label":"Related set: granite","confidence":0.8},{"type":"variants","target":"minecraft:granite_stairs","label":"Same family: granite","confidence":0.75},{"type":"related_sets","target":"minecraft:granite_stairs","label":"Related set: granite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:granite_slab","label":"Palette proche: Granite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_stairs","label":"Palette proche: Granite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_wall","label":"Palette proche: Granite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite","label":"Palette proche: Polished Granite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite_slab","label":"Palette proche: Polished Granite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite_stairs","label":"Palette proche: Polished Granite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:rooted_dirt","label":"Palette proche: Rooted Dirt","confidence":0.893},{"type":"color_neighbors","target":"minecraft:packed_mud","label":"Palette proche: Packed Mud","confidence":0.889},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.888},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.888},{"type":"color_neighbors","target":"minecraft:hanging_roots","label":"Palette proche: Hanging Roots","confidence":0.886},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.885},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.896},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.895},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.895},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.895},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.895},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.895},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.895},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.894},{"type":"color_analogous","target":"minecraft:granite_slab","label":"Couleurs analogues: Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_stairs","label":"Couleurs analogues: Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_wall","label":"Couleurs analogues: Granite Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite","label":"Couleurs analogues: Polished Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_slab","label":"Couleurs analogues: Polished Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_stairs","label":"Couleurs analogues: Polished Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_lightning_rod","label":"Couleurs analogues: Exposed Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_lightning_rod","label":"Couleurs analogues: Waxed Exposed Lightning Rod","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.912},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.885},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.876},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.858},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.954},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.954},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.954},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.954},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.932},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.791},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.953},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.953},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.924},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.922},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.911},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.91},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.909},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.905},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":""},{"id":"minecraft:granite_slab","name":"Granite Slab","entry_type":"block","description":"A granite slab is a decorative slab variant of granite that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added granite slabs."}],"colors":{"primary":"#956756","dominant_hex":"#9c6c5c","average_hex":"#956756","hue_group":"red","lightness":0.4608,"saturation":0.2681,"palette":["#9c6c5c","#7c5444","#ad7666","#946454","#584032","#c2a194"],"color_groups":[{"hex":"#9c6c5c","weight":0.3438,"lightness":0.4863,"saturation":0.2581,"hue_group":"red"},{"hex":"#7c5444","weight":0.1914,"lightness":0.3765,"saturation":0.2917,"hue_group":"red"},{"hex":"#ad7666","weight":0.1875,"lightness":0.5392,"saturation":0.3021,"hue_group":"red"},{"hex":"#946454","weight":0.1562,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#584032","weight":0.0742,"lightness":0.2706,"saturation":0.2754,"hue_group":"red"},{"hex":"#c2a194","weight":0.0469,"lightness":0.6706,"saturation":0.2738,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/granite.png","family":"granite","relations":[{"type":"variants","target":"minecraft:granite","label":"Same family: granite","confidence":0.75},{"type":"related_sets","target":"minecraft:granite","label":"Related set: granite","confidence":0.8},{"type":"variants","target":"minecraft:granite_stairs","label":"Same family: granite","confidence":0.75},{"type":"related_sets","target":"minecraft:granite_stairs","label":"Related set: granite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:granite","label":"Palette proche: Granite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_stairs","label":"Palette proche: Granite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_wall","label":"Palette proche: Granite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite","label":"Palette proche: Polished Granite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite_slab","label":"Palette proche: Polished Granite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite_stairs","label":"Palette proche: Polished Granite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:rooted_dirt","label":"Palette proche: Rooted Dirt","confidence":0.893},{"type":"color_neighbors","target":"minecraft:packed_mud","label":"Palette proche: Packed Mud","confidence":0.889},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.888},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.888},{"type":"color_neighbors","target":"minecraft:hanging_roots","label":"Palette proche: Hanging Roots","confidence":0.886},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.885},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.896},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.895},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.895},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.895},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.895},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.895},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.895},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.894},{"type":"color_analogous","target":"minecraft:granite","label":"Couleurs analogues: Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_stairs","label":"Couleurs analogues: Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_wall","label":"Couleurs analogues: Granite Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite","label":"Couleurs analogues: Polished Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_slab","label":"Couleurs analogues: Polished Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_stairs","label":"Couleurs analogues: Polished Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_lightning_rod","label":"Couleurs analogues: Exposed Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_lightning_rod","label":"Couleurs analogues: Waxed Exposed Lightning Rod","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.912},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.885},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.876},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.858},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.954},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.954},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.954},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.954},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.932},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.791},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.953},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.953},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.924},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.922},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.911},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.91},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.909},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.905},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:granite_stairs","name":"Granite Stairs","entry_type":"block","description":"Granite stairs are a decorative stairs variant of granite that generates in desert villages and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added granite stairs."}],"colors":{"primary":"#956756","dominant_hex":"#9c6c5c","average_hex":"#956756","hue_group":"red","lightness":0.4608,"saturation":0.2681,"palette":["#9c6c5c","#7c5444","#ad7666","#946454","#584032","#c2a194"],"color_groups":[{"hex":"#9c6c5c","weight":0.3438,"lightness":0.4863,"saturation":0.2581,"hue_group":"red"},{"hex":"#7c5444","weight":0.1914,"lightness":0.3765,"saturation":0.2917,"hue_group":"red"},{"hex":"#ad7666","weight":0.1875,"lightness":0.5392,"saturation":0.3021,"hue_group":"red"},{"hex":"#946454","weight":0.1562,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#584032","weight":0.0742,"lightness":0.2706,"saturation":0.2754,"hue_group":"red"},{"hex":"#c2a194","weight":0.0469,"lightness":0.6706,"saturation":0.2738,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/granite.png","family":"granite","relations":[{"type":"variants","target":"minecraft:granite","label":"Same family: granite","confidence":0.75},{"type":"related_sets","target":"minecraft:granite","label":"Related set: granite","confidence":0.8},{"type":"variants","target":"minecraft:granite_slab","label":"Same family: granite","confidence":0.75},{"type":"related_sets","target":"minecraft:granite_slab","label":"Related set: granite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:granite","label":"Palette proche: Granite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_slab","label":"Palette proche: Granite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_wall","label":"Palette proche: Granite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite","label":"Palette proche: Polished Granite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite_slab","label":"Palette proche: Polished Granite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite_stairs","label":"Palette proche: Polished Granite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:rooted_dirt","label":"Palette proche: Rooted Dirt","confidence":0.893},{"type":"color_neighbors","target":"minecraft:packed_mud","label":"Palette proche: Packed Mud","confidence":0.889},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.888},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.888},{"type":"color_neighbors","target":"minecraft:hanging_roots","label":"Palette proche: Hanging Roots","confidence":0.886},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.885},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.896},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.895},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.895},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.895},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.895},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.895},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.895},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.894},{"type":"color_analogous","target":"minecraft:granite","label":"Couleurs analogues: Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_slab","label":"Couleurs analogues: Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_wall","label":"Couleurs analogues: Granite Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite","label":"Couleurs analogues: Polished Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_slab","label":"Couleurs analogues: Polished Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_stairs","label":"Couleurs analogues: Polished Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_lightning_rod","label":"Couleurs analogues: Exposed Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_lightning_rod","label":"Couleurs analogues: Waxed Exposed Lightning Rod","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.912},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.885},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.876},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.858},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.954},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.954},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.954},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.954},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.932},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.791},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.953},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.953},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.924},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.922},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.911},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.91},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.909},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.905},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:granite_wall","name":"Granite Wall","entry_type":"block","description":"A granite wall is a decorative wall variant of granite that generates in desert villages and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added granite walls."}],"colors":{"primary":"#956756","dominant_hex":"#9c6c5c","average_hex":"#956756","hue_group":"red","lightness":0.4608,"saturation":0.2681,"palette":["#9c6c5c","#7c5444","#ad7666","#946454","#584032","#c2a194"],"color_groups":[{"hex":"#9c6c5c","weight":0.3438,"lightness":0.4863,"saturation":0.2581,"hue_group":"red"},{"hex":"#7c5444","weight":0.1914,"lightness":0.3765,"saturation":0.2917,"hue_group":"red"},{"hex":"#ad7666","weight":0.1875,"lightness":0.5392,"saturation":0.3021,"hue_group":"red"},{"hex":"#946454","weight":0.1562,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#584032","weight":0.0742,"lightness":0.2706,"saturation":0.2754,"hue_group":"red"},{"hex":"#c2a194","weight":0.0469,"lightness":0.6706,"saturation":0.2738,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/granite.png","family":"granite_wall","relations":[{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:granite","label":"Palette proche: Granite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_slab","label":"Palette proche: Granite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_stairs","label":"Palette proche: Granite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite","label":"Palette proche: Polished Granite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite_slab","label":"Palette proche: Polished Granite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite_stairs","label":"Palette proche: Polished Granite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:rooted_dirt","label":"Palette proche: Rooted Dirt","confidence":0.893},{"type":"color_neighbors","target":"minecraft:packed_mud","label":"Palette proche: Packed Mud","confidence":0.889},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.888},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.888},{"type":"color_neighbors","target":"minecraft:hanging_roots","label":"Palette proche: Hanging Roots","confidence":0.886},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.885},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.896},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.895},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.895},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.895},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.895},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.895},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.895},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.894},{"type":"color_analogous","target":"minecraft:granite","label":"Couleurs analogues: Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_slab","label":"Couleurs analogues: Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_stairs","label":"Couleurs analogues: Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite","label":"Couleurs analogues: Polished Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_slab","label":"Couleurs analogues: Polished Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_stairs","label":"Couleurs analogues: Polished Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_lightning_rod","label":"Couleurs analogues: Exposed Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_lightning_rod","label":"Couleurs analogues: Waxed Exposed Lightning Rod","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.912},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.885},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.876},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.858},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.954},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.954},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.954},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.954},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.932},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.791},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.953},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.953},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.924},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.922},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.911},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.91},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.909},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.905},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:grass_block","name":"Grass Block","entry_type":"block","description":"A grass block is a natural block that generates abundantly across the surface of the Overworld.","history":[{"version":"Cave game tech test","status":"added","notes":"Added grass blocks, internally called just \"grass\"."},{"version":"v1.0.4","status":"added","notes":"Added snowy grass blocks."},{"version":"1.4.2 12w38a","status":"added","notes":"added for walking on grass blocks."}],"colors":{"primary":"#939393","dominant_hex":"#949494","average_hex":"#939393","hue_group":"neutral","lightness":0.5765,"saturation":0.0,"palette":["#949494","#8c8c8c","#a0a0a0","#848484","#b2b2b2","#7b7b7b"],"color_groups":[{"hex":"#949494","weight":0.1914,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1797,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a0a0a0","weight":0.1758,"lightness":0.6275,"saturation":0.0,"hue_group":"neutral"},{"hex":"#848484","weight":0.168,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b2b2b2","weight":0.1641,"lightness":0.698,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7b7b7b","weight":0.1211,"lightness":0.4824,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/grass_block_top.png","family":"grass_block","relations":[{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Palette proche: Light Gray Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_stained_glass_pane","label":"Pont de nuance par palette: Light Gray Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:deepslate_tile_slab","label":"Contraste clair sombre: Deepslate Tile Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_stairs","label":"Contraste clair sombre: Deepslate Tile Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_wall","label":"Contraste clair sombre: Deepslate Tile Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tiles","label":"Contraste clair sombre: Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_deepslate_tiles","label":"Contraste clair sombre: Cracked Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55}],"category":"natural"},{"id":"minecraft:gravel","name":"Gravel","entry_type":"block","description":"Gravel is a gravity-affected block found in the Overworld and the Nether. It is a source of flint, which has a chance to drop when gravel is broken.","history":[{"version":"0.0.14a","status":"added","notes":"Added gravel."},{"version":"wiki-history","status":"added","notes":"added during this update."},{"version":"wiki-history","status":"added","notes":"Added extreme hills M , where the surface is covered in several-block-deep layers of gravel."}],"colors":{"primary":"#847f7f","dominant_hex":"#847c7c","average_hex":"#847f7f","hue_group":"neutral","lightness":0.5078,"saturation":0.0199,"palette":["#847c7c","#999797","#746c6c","#8c847c","#645c5c","#948c8c"],"color_groups":[{"hex":"#847c7c","weight":0.3398,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"},{"hex":"#999797","weight":0.1953,"lightness":0.5961,"saturation":0.0097,"hue_group":"neutral"},{"hex":"#746c6c","weight":0.1914,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#8c847c","weight":0.1914,"lightness":0.5176,"saturation":0.065,"hue_group":"neutral"},{"hex":"#645c5c","weight":0.0508,"lightness":0.3765,"saturation":0.0417,"hue_group":"neutral"},{"hex":"#948c8c","weight":0.0312,"lightness":0.5647,"saturation":0.036,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gravel.png","family":"gravel","relations":[{"type":"visual_neighbors","target":"minecraft:suspicious_gravel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:open_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tripwire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:suspicious_gravel","label":"Palette proche: Suspicious Gravel","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:furnace","label":"Palette proche: Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.938},{"type":"color_bridge","target":"minecraft:suspicious_gravel","label":"Pont de nuance par palette: Suspicious Gravel","confidence":0.86},{"type":"color_bridge","target":"minecraft:lily_pad","label":"Pont de nuance par palette: Lily Pad","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:furnace","label":"Pont de nuance par palette: Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"natural"},{"id":"minecraft:gray_banner","name":"Gray Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"gray_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:gray_bed","name":"Gray Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"gray_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:gray_bundle","name":"Gray Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#5e6968","dominant_hex":"#585a54","average_hex":"#5e6968","hue_group":"neutral","lightness":0.3902,"saturation":0.0553,"palette":["#585a54","#8a9791","#6c7c84","#5c6c6c","#3c444c","#3c5454"],"color_groups":[{"hex":"#585a54","weight":0.2519,"lightness":0.3412,"saturation":0.0345,"hue_group":"neutral"},{"hex":"#8a9791","weight":0.1985,"lightness":0.5667,"saturation":0.0588,"hue_group":"neutral"},{"hex":"#6c7c84","weight":0.1603,"lightness":0.4706,"saturation":0.1,"hue_group":"neutral"},{"hex":"#5c6c6c","weight":0.1374,"lightness":0.3922,"saturation":0.08,"hue_group":"neutral"},{"hex":"#3c444c","weight":0.1298,"lightness":0.2667,"saturation":0.1176,"hue_group":"neutral"},{"hex":"#3c5454","weight":0.1221,"lightness":0.2824,"saturation":0.1667,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/gray_bundle.png","family":"gray_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:elytra","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coast_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:gray_candle","name":"Gray Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#505e61","dominant_hex":"#4c5c5c","average_hex":"#505e61","hue_group":"neutral","lightness":0.3471,"saturation":0.096,"palette":["#4c5c5c","#546464","#647474","#242434","#6c747c"],"color_groups":[{"hex":"#4c5c5c","weight":0.4286,"lightness":0.3294,"saturation":0.0952,"hue_group":"neutral"},{"hex":"#546464","weight":0.2857,"lightness":0.3608,"saturation":0.087,"hue_group":"neutral"},{"hex":"#647474","weight":0.1905,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#6c747c","weight":0.0476,"lightness":0.4549,"saturation":0.069,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gray_candle.png","family":"gray_candle","relations":[{"type":"visual_neighbors","target":"minecraft:structure_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_core","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:peony","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lantern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frogspawn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jigsaw","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gray_carpet","label":"Palette proche: Gray Carpet","confidence":0.865},{"type":"color_neighbors","target":"minecraft:gray_wool","label":"Palette proche: Gray Wool","confidence":0.865},{"type":"color_neighbors","target":"minecraft:gray_concrete_powder","label":"Palette proche: Gray Concrete Powder","confidence":0.863},{"type":"color_neighbors","target":"minecraft:glow_lichen","label":"Palette proche: Glow Lichen","confidence":0.847},{"type":"color_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Palette proche: Gray Glazed Terracotta","confidence":0.841},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.835},{"type":"color_neighbors","target":"minecraft:vault","label":"Palette proche: Vault","confidence":0.831},{"type":"color_neighbors","target":"minecraft:gray_shulker_box","label":"Palette proche: Gray Shulker Box","confidence":0.824},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.821},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.821},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.821},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.821},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par palette: Glow Lichen","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_glazed_terracotta","label":"Pont de nuance par palette: Gray Glazed Terracotta","confidence":0.86},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.86},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par palette: Vault","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.855},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.852},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.852},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.591},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.588},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.586},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.586},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.558},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55}],"category":"decorative"},{"id":"minecraft:gray_candle_cake","name":"Gray Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"gray_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle_cake","label":"Palette proche: Orange Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_candle_cake","label":"Couleurs analogues: Light Blue Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:gray_carpet","name":"Gray Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#3f4448","dominant_hex":"#444c4c","average_hex":"#3f4448","hue_group":"neutral","lightness":0.2647,"saturation":0.0667,"palette":["#444c4c","#3c3c43","#3c4446","#444c54","#44444c","#343c3c"],"color_groups":[{"hex":"#444c4c","weight":0.2617,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#3c3c43","weight":0.2422,"lightness":0.249,"saturation":0.0551,"hue_group":"neutral"},{"hex":"#3c4446","weight":0.2305,"lightness":0.2549,"saturation":0.0769,"hue_group":"neutral"},{"hex":"#444c54","weight":0.1094,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#44444c","weight":0.082,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#343c3c","weight":0.0742,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gray_wool.png","family":"gray_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:gray_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jigsaw","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gray_wool","label":"Palette proche: Gray Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_concrete_powder","label":"Palette proche: Gray Concrete Powder","confidence":0.92},{"type":"color_neighbors","target":"minecraft:gray_shulker_box","label":"Palette proche: Gray Shulker Box","confidence":0.916},{"type":"color_neighbors","target":"minecraft:gray_concrete","label":"Palette proche: Gray Concrete","confidence":0.916},{"type":"color_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Palette proche: Gray Glazed Terracotta","confidence":0.881},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.865},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.82},{"type":"color_neighbors","target":"minecraft:iron_chain","label":"Palette proche: Iron Chain","confidence":0.812},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.804},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.804},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.804},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.804},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_glazed_terracotta","label":"Pont de nuance par palette: Gray Glazed Terracotta","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.851},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par palette: Iron Chain","confidence":0.846},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.838},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.838},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.673},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.662},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.661},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.661},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.639},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.624},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.624},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.617}],"category":"decorative"},{"id":"minecraft:gray_concrete","name":"Gray Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#373a3e","dominant_hex":"#343c3c","average_hex":"#373a3e","hue_group":"neutral","lightness":0.2294,"saturation":0.0598,"palette":["#343c3c","#3c3c3c"],"color_groups":[{"hex":"#343c3c","weight":0.9766,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#3c3c3c","weight":0.0234,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gray_concrete.png","family":"gray_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gray_shulker_box","label":"Palette proche: Gray Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_carpet","label":"Palette proche: Gray Carpet","confidence":0.916},{"type":"color_neighbors","target":"minecraft:gray_wool","label":"Palette proche: Gray Wool","confidence":0.916},{"type":"color_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Palette proche: Gray Glazed Terracotta","confidence":0.885},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.83},{"type":"color_neighbors","target":"minecraft:gray_concrete_powder","label":"Palette proche: Gray Concrete Powder","confidence":0.82},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.82},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.819},{"type":"color_neighbors","target":"minecraft:deepslate_diamond_ore","label":"Palette proche: Deepslate Diamond Ore","confidence":0.819},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.818},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.818},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.818},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_glazed_terracotta","label":"Pont de nuance par palette: Gray Glazed Terracotta","confidence":0.86},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.852},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.852},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.851},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par palette: Deepslate Diamond Ore","confidence":0.851},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.85},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.708},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.695},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.694},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.694},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.674},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.656},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.656},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.652}],"category":"building"},{"id":"minecraft:gray_concrete_powder","name":"Gray Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#4d5155","dominant_hex":"#4c5454","average_hex":"#4d5155","hue_group":"neutral","lightness":0.3176,"saturation":0.0494,"palette":["#4c5454","#4c4c53","#555e60","#54545c","#444a4c","#545454"],"color_groups":[{"hex":"#4c5454","weight":0.3281,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#4c4c53","weight":0.293,"lightness":0.3118,"saturation":0.044,"hue_group":"neutral"},{"hex":"#555e60","weight":0.125,"lightness":0.3549,"saturation":0.0608,"hue_group":"neutral"},{"hex":"#54545c","weight":0.1055,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#444a4c","weight":0.0859,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#545454","weight":0.0625,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gray_concrete_powder.png","family":"gray_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_carpet","label":"Palette proche: Gray Carpet","confidence":0.92},{"type":"color_neighbors","target":"minecraft:gray_wool","label":"Palette proche: Gray Wool","confidence":0.92},{"type":"color_neighbors","target":"minecraft:gray_shulker_box","label":"Palette proche: Gray Shulker Box","confidence":0.888},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.874},{"type":"color_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Palette proche: Gray Glazed Terracotta","confidence":0.874},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.872},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.868},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.868},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.868},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.868},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.865},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_glazed_terracotta","label":"Pont de nuance par palette: Gray Glazed Terracotta","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.624},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.611},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.61},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.61},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.59},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.573},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.573},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.568}],"category":"building"},{"id":"minecraft:gray_dye","name":"Gray Dye","entry_type":"item","description":"Gray dye is one of the sixteen available dyes.","history":[{"version":"1.2","status":"added","notes":"Added gray dye."},{"version":"1.4.2 12w34a","status":"added","notes":"Added the ability to dye leather armor and wolf collars."},{"version":"1.8 14w30a","status":"added","notes":"Added banners , which can be dyed."}],"colors":{"primary":"#625a55","dominant_hex":"#7e746a","average_hex":"#625a55","hue_group":"neutral","lightness":0.3588,"saturation":0.071,"palette":["#7e746a","#5c5c5c","#574c47","#3e1d1d","#9c988e","#3c3c3c"],"color_groups":[{"hex":"#7e746a","weight":0.2207,"lightness":0.4549,"saturation":0.0862,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1931,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#574c47","weight":0.1655,"lightness":0.3098,"saturation":0.1013,"hue_group":"neutral"},{"hex":"#3e1d1d","weight":0.1517,"lightness":0.1784,"saturation":0.3626,"hue_group":"red"},{"hex":"#9c988e","weight":0.1448,"lightness":0.5843,"saturation":0.066,"hue_group":"neutral"},{"hex":"#3c3c3c","weight":0.1241,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/gray_dye.png","family":"gray_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ominous_trial_key","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:gray_glazed_terracotta","name":"Gray Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#535a5e","dominant_hex":"#485055","average_hex":"#535a5e","hue_group":"neutral","lightness":0.3471,"saturation":0.0621,"palette":["#485055","#353d3d","#5f6f75","#9b9b9b","#34343c","#444c4c"],"color_groups":[{"hex":"#485055","weight":0.25,"lightness":0.3078,"saturation":0.0828,"hue_group":"neutral"},{"hex":"#353d3d","weight":0.2383,"lightness":0.2235,"saturation":0.0702,"hue_group":"neutral"},{"hex":"#5f6f75","weight":0.2227,"lightness":0.4157,"saturation":0.1038,"hue_group":"neutral"},{"hex":"#9b9b9b","weight":0.1523,"lightness":0.6078,"saturation":0.0,"hue_group":"neutral"},{"hex":"#34343c","weight":0.0898,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#444c4c","weight":0.0469,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gray_glazed_terracotta.png","family":"gray_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:heavy_core","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:peony","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_copper_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gray_concrete","label":"Palette proche: Gray Concrete","confidence":0.885},{"type":"color_neighbors","target":"minecraft:gray_carpet","label":"Palette proche: Gray Carpet","confidence":0.881},{"type":"color_neighbors","target":"minecraft:gray_wool","label":"Palette proche: Gray Wool","confidence":0.881},{"type":"color_neighbors","target":"minecraft:gray_concrete_powder","label":"Palette proche: Gray Concrete Powder","confidence":0.874},{"type":"color_neighbors","target":"minecraft:gray_shulker_box","label":"Palette proche: Gray Shulker Box","confidence":0.851},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.841},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.832},{"type":"color_neighbors","target":"minecraft:deepslate_diamond_ore","label":"Palette proche: Deepslate Diamond Ore","confidence":0.807},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.796},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.796},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.796},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.796},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par palette: Deepslate Diamond Ore","confidence":0.841},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.832},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.832},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.594},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.585},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.584},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.584},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.561},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:gray_harness","name":"Gray Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#695343","dominant_hex":"#555e60","average_hex":"#695343","hue_group":"red","lightness":0.3373,"saturation":0.2209,"palette":["#555e60","#502e16","#9f5f3e","#3c2414","#754525","#a2b0b2"],"color_groups":[{"hex":"#555e60","weight":0.2883,"lightness":0.3549,"saturation":0.0608,"hue_group":"neutral"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#9f5f3e","weight":0.1718,"lightness":0.4333,"saturation":0.4389,"hue_group":"red"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"},{"hex":"#754525","weight":0.1104,"lightness":0.302,"saturation":0.5195,"hue_group":"red"},{"hex":"#a2b0b2","weight":0.1043,"lightness":0.6667,"saturation":0.0941,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/gray_harness.png","family":"gray_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_relic","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_upgrade_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_key","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_lava_chicken","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:gray_shulker_box","name":"Gray Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#373b3e","dominant_hex":"#3c4444","average_hex":"#373b3e","hue_group":"neutral","lightness":0.2294,"saturation":0.0598,"palette":["#3c4444","#343b3c","#2c2d34","#343434","#3c3c44","#2c2c2c"],"color_groups":[{"hex":"#3c4444","weight":0.4727,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#343b3c","weight":0.1797,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#2c2d34","weight":0.1406,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#343434","weight":0.082,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.0742,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.0508,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gray_shulker_box.png","family":"gray_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gray_concrete","label":"Palette proche: Gray Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_carpet","label":"Palette proche: Gray Carpet","confidence":0.916},{"type":"color_neighbors","target":"minecraft:gray_wool","label":"Palette proche: Gray Wool","confidence":0.916},{"type":"color_neighbors","target":"minecraft:gray_concrete_powder","label":"Palette proche: Gray Concrete Powder","confidence":0.888},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.869},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.869},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.869},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.869},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.866},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.858},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.858},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.858},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.706},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.696},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.695},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.695},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.673},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.657},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.657},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.651}],"category":""},{"id":"minecraft:gray_stained_glass","name":"Gray Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#4c4c4c","dominant_hex":"#4c4c4c","average_hex":"#4c4c4c","hue_group":"neutral","lightness":0.298,"saturation":0.0,"palette":["#4c4c4c"],"color_groups":[{"hex":"#4c4c4c","weight":1.0,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gray_stained_glass.png","family":"gray_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Palette proche: Gray Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:anvil","label":"Palette proche: Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:gray_stained_glass_pane","label":"Pont de nuance par palette: Gray Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:anvil","label":"Pont de nuance par palette: Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:damaged_anvil","label":"Pont de nuance par palette: Damaged Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.666},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.633},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.61},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.606},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.605},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.605},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.605},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.605}],"category":"building"},{"id":"minecraft:gray_stained_glass_pane","name":"Gray Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#4a4a4a","dominant_hex":"#4c4c4c","average_hex":"#4a4a4a","hue_group":"neutral","lightness":0.2902,"saturation":0.0,"palette":["#4c4c4c","#444444"],"color_groups":[{"hex":"#4c4c4c","weight":0.75,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.25,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gray_stained_glass_pane_top.png","family":"gray_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gray_stained_glass","label":"Palette proche: Gray Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:anvil","label":"Palette proche: Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:gray_stained_glass","label":"Pont de nuance par palette: Gray Stained Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:anvil","label":"Pont de nuance par palette: Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:damaged_anvil","label":"Pont de nuance par palette: Damaged Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.674},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.64},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.618},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.613},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.612},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.612},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.612},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.612}],"category":"building"},{"id":"minecraft:gray_terracotta","name":"Gray Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#3a2a24","dominant_hex":"#3c2c24","average_hex":"#3a2a24","hue_group":"red","lightness":0.1843,"saturation":0.234,"palette":["#3c2c24","#342c24"],"color_groups":[{"hex":"#3c2c24","weight":0.9883,"lightness":0.1882,"saturation":0.25,"hue_group":"red"},{"hex":"#342c24","weight":0.0117,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gray_terracotta.png","family":"gray_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:smithing_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gilded_blackstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_soil","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:soul_soil","label":"Palette proche: Soul Soil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_roots","label":"Palette proche: Mangrove Roots","confidence":0.923},{"type":"color_neighbors","target":"minecraft:creaking_heart","label":"Palette proche: Creaking Heart","confidence":0.891},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.891},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.891},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.875},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.875},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.875},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.875},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.875},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.875},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.875},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.889},{"type":"color_bridge","target":"minecraft:potted_wither_rose","label":"Pont de nuance par palette: Potted Wither Rose","confidence":0.849},{"type":"color_bridge","target":"minecraft:wither_rose","label":"Pont de nuance par palette: Wither Rose","confidence":0.849},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.784},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.782},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.782},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.782},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.782},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.779},{"type":"color_analogous","target":"minecraft:magma_block","label":"Couleurs analogues: Magma Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite","label":"Couleurs analogues: Granite","confidence":0.941},{"type":"color_analogous","target":"minecraft:granite_slab","label":"Couleurs analogues: Granite Slab","confidence":0.941},{"type":"color_analogous","target":"minecraft:granite_stairs","label":"Couleurs analogues: Granite Stairs","confidence":0.941},{"type":"color_analogous","target":"minecraft:granite_wall","label":"Couleurs analogues: Granite Wall","confidence":0.941},{"type":"color_analogous","target":"minecraft:poppy","label":"Couleurs analogues: Poppy","confidence":0.939},{"type":"color_analogous","target":"minecraft:potted_poppy","label":"Couleurs analogues: Potted Poppy","confidence":0.939},{"type":"color_analogous","target":"minecraft:polished_granite","label":"Couleurs analogues: Polished Granite","confidence":0.936},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.956},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.953},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.939},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.939},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.914},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.878},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.876},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.86},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.958},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.958},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.958},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.958},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.936},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.795},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.943},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.943},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.928},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.915},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.915},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.912},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.899},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.895},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.765},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.731},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.717},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.717},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.717},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.717},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.709},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.678}],"category":"building"},{"id":"minecraft:gray_wall_banner","name":"Gray Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"gray_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:gray_wool","name":"Gray Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#3f4448","dominant_hex":"#444c4c","average_hex":"#3f4448","hue_group":"neutral","lightness":0.2647,"saturation":0.0667,"palette":["#444c4c","#3c3c43","#3c4446","#444c54","#44444c","#343c3c"],"color_groups":[{"hex":"#444c4c","weight":0.2617,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#3c3c43","weight":0.2422,"lightness":0.249,"saturation":0.0551,"hue_group":"neutral"},{"hex":"#3c4446","weight":0.2305,"lightness":0.2549,"saturation":0.0769,"hue_group":"neutral"},{"hex":"#444c54","weight":0.1094,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#44444c","weight":0.082,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#343c3c","weight":0.0742,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gray_wool.png","family":"gray_wool","relations":[{"type":"visual_neighbors","target":"minecraft:gray_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jigsaw","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gray_carpet","label":"Palette proche: Gray Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_concrete_powder","label":"Palette proche: Gray Concrete Powder","confidence":0.92},{"type":"color_neighbors","target":"minecraft:gray_shulker_box","label":"Palette proche: Gray Shulker Box","confidence":0.916},{"type":"color_neighbors","target":"minecraft:gray_concrete","label":"Palette proche: Gray Concrete","confidence":0.916},{"type":"color_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Palette proche: Gray Glazed Terracotta","confidence":0.881},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.865},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.82},{"type":"color_neighbors","target":"minecraft:iron_chain","label":"Palette proche: Iron Chain","confidence":0.812},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.804},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.804},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.804},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.804},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_glazed_terracotta","label":"Pont de nuance par palette: Gray Glazed Terracotta","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.851},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par palette: Iron Chain","confidence":0.846},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.838},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.838},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.673},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.662},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.661},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.661},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.639},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.624},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.624},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.617}],"category":"decorative"},{"id":"minecraft:green_banner","name":"Green Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"green_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:green_bed","name":"Green Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"green_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:green_bundle","name":"Green Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#627c1a","dominant_hex":"#4c6414","average_hex":"#627c1a","hue_group":"yellow","lightness":0.2941,"saturation":0.6533,"palette":["#4c6414","#80a22a","#6d771d","#90c41a","#34440c","#3c5414"],"color_groups":[{"hex":"#4c6414","weight":0.1985,"lightness":0.2353,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#80a22a","weight":0.1985,"lightness":0.4,"saturation":0.5882,"hue_group":"yellow"},{"hex":"#6d771d","weight":0.1908,"lightness":0.2902,"saturation":0.6081,"hue_group":"yellow"},{"hex":"#90c41a","weight":0.1603,"lightness":0.4353,"saturation":0.7658,"hue_group":"yellow"},{"hex":"#34440c","weight":0.1298,"lightness":0.1569,"saturation":0.7,"hue_group":"yellow"},{"hex":"#3c5414","weight":0.1221,"lightness":0.2039,"saturation":0.6154,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/green_bundle.png","family":"green_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:bread","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_carrot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:green_candle","name":"Green Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#496015","dominant_hex":"#3c5414","average_hex":"#496015","hue_group":"yellow","lightness":0.2294,"saturation":0.641,"palette":["#3c5414","#4c6414","#648414","#242434","#64841c"],"color_groups":[{"hex":"#3c5414","weight":0.4286,"lightness":0.2039,"saturation":0.6154,"hue_group":"yellow"},{"hex":"#4c6414","weight":0.2857,"lightness":0.2353,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#648414","weight":0.1905,"lightness":0.298,"saturation":0.7368,"hue_group":"yellow"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#64841c","weight":0.0476,"lightness":0.3137,"saturation":0.65,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/green_candle.png","family":"green_candle","relations":[{"type":"visual_neighbors","target":"minecraft:podzol","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:green_carpet","label":"Palette proche: Green Carpet","confidence":0.883},{"type":"color_neighbors","target":"minecraft:green_wool","label":"Palette proche: Green Wool","confidence":0.883},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.851},{"type":"color_neighbors","target":"minecraft:bamboo","label":"Palette proche: Bamboo","confidence":0.8},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.795},{"type":"color_neighbors","target":"minecraft:acacia_sapling","label":"Palette proche: Acacia Sapling","confidence":0.782},{"type":"color_neighbors","target":"minecraft:potted_acacia_sapling","label":"Palette proche: Potted Acacia Sapling","confidence":0.782},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.78},{"type":"color_neighbors","target":"minecraft:green_concrete","label":"Palette proche: Green Concrete","confidence":0.776},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.772},{"type":"color_neighbors","target":"minecraft:kelp_plant","label":"Palette proche: Kelp Plant","confidence":0.772},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.77},{"type":"color_bridge","target":"minecraft:chiseled_polished_blackstone","label":"Pont de nuance par sous-ton: Chiseled Polished Blackstone","confidence":0.643},{"type":"color_bridge","target":"minecraft:podzol","label":"Pont de nuance par palette: Podzol","confidence":0.643},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par sous-ton: Polished Blackstone","confidence":0.642},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par sous-ton: Polished Blackstone Button","confidence":0.642},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par sous-ton: Polished Blackstone Pressure Plate","confidence":0.642},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par sous-ton: Polished Blackstone Slab","confidence":0.642},{"type":"color_bridge","target":"minecraft:polished_blackstone_stairs","label":"Pont de nuance par sous-ton: Polished Blackstone Stairs","confidence":0.642},{"type":"color_bridge","target":"minecraft:polished_blackstone_wall","label":"Pont de nuance par sous-ton: Polished Blackstone Wall","confidence":0.642},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par sous-ton: Polished Blackstone Brick Slab","confidence":0.626},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par sous-ton: Polished Blackstone Brick Stairs","confidence":0.626},{"type":"color_analogous","target":"minecraft:green_carpet","label":"Couleurs analogues: Green Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_wool","label":"Couleurs analogues: Green Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_shulker_box","label":"Couleurs analogues: Green Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete","label":"Couleurs analogues: Green Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete_powder","label":"Couleurs analogues: Green Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:azalea","label":"Couleurs analogues: Azalea","confidence":0.96},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.933},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.933},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.933},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.933},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.906},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.882},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.817},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.798},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.924},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.904},{"type":"color_triad","target":"minecraft:light_blue_carpet","label":"Harmonie triadique: Light Blue Carpet","confidence":0.899},{"type":"color_triad","target":"minecraft:light_blue_wool","label":"Harmonie triadique: Light Blue Wool","confidence":0.899},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.881},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.878},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.863},{"type":"color_square","target":"minecraft:prismarine_brick_slab","label":"Harmonie carree: Prismarine Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_brick_stairs","label":"Harmonie carree: Prismarine Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_bricks","label":"Harmonie carree: Prismarine Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.959},{"type":"color_square","target":"minecraft:cracked_nether_bricks","label":"Harmonie carree: Cracked Nether Bricks","confidence":0.959},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.95},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.947},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.947},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.7},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.667},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.645},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.624},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.624},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.611},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.61},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.607}],"category":"decorative"},{"id":"minecraft:green_candle_cake","name":"Green Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"green_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle_cake","label":"Palette proche: Orange Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_candle_cake","label":"Couleurs analogues: Light Blue Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:green_carpet","name":"Green Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#556e1c","dominant_hex":"#566f1c","average_hex":"#556e1c","hue_group":"yellow","lightness":0.2706,"saturation":0.5942,"palette":["#566f1c","#5c7914","#4c6422","#4c5c24","#64841c","#54641c"],"color_groups":[{"hex":"#566f1c","weight":0.3555,"lightness":0.2725,"saturation":0.5971,"hue_group":"yellow"},{"hex":"#5c7914","weight":0.2109,"lightness":0.2765,"saturation":0.7163,"hue_group":"yellow"},{"hex":"#4c6422","weight":0.1641,"lightness":0.2627,"saturation":0.4925,"hue_group":"yellow"},{"hex":"#4c5c24","weight":0.1094,"lightness":0.251,"saturation":0.4375,"hue_group":"yellow"},{"hex":"#64841c","weight":0.082,"lightness":0.3137,"saturation":0.65,"hue_group":"yellow"},{"hex":"#54641c","weight":0.0781,"lightness":0.251,"saturation":0.5625,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/green_wool.png","family":"green_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:podzol","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:green_wool","label":"Palette proche: Green Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_concrete","label":"Palette proche: Green Concrete","confidence":0.927},{"type":"color_neighbors","target":"minecraft:green_candle","label":"Palette proche: Green Candle","confidence":0.883},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.879},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.879},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.869},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.86},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.846},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.846},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.846},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.846},{"type":"color_bridge","target":"minecraft:podzol","label":"Pont de nuance par palette: Podzol","confidence":0.664},{"type":"color_bridge","target":"minecraft:dead_bush","label":"Pont de nuance par palette: Dead Bush","confidence":0.61},{"type":"color_bridge","target":"minecraft:potted_dead_bush","label":"Pont de nuance par palette: Potted Dead Bush","confidence":0.61},{"type":"color_bridge","target":"minecraft:spruce_shelf","label":"Pont de nuance par palette: Spruce Shelf","confidence":0.608},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.608},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.608},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.608},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.608},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.603},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.599},{"type":"color_analogous","target":"minecraft:green_wool","label":"Couleurs analogues: Green Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_shulker_box","label":"Couleurs analogues: Green Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle","label":"Couleurs analogues: Green Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:cave_vines","label":"Couleurs analogues: Cave Vines","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete","label":"Couleurs analogues: Green Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete_powder","label":"Couleurs analogues: Green Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.941},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.941},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.941},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.941},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.914},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.883},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.818},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.799},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.924},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.904},{"type":"color_triad","target":"minecraft:light_blue_carpet","label":"Harmonie triadique: Light Blue Carpet","confidence":0.899},{"type":"color_triad","target":"minecraft:light_blue_wool","label":"Harmonie triadique: Light Blue Wool","confidence":0.899},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.888},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.886},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.855},{"type":"color_square","target":"minecraft:cracked_nether_bricks","label":"Harmonie carree: Cracked Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_brick_slab","label":"Harmonie carree: Prismarine Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_brick_stairs","label":"Harmonie carree: Prismarine Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_bricks","label":"Harmonie carree: Prismarine Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.959},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.949},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.946},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.946},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.663},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.629},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.607},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.586},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.586},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.573},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.572},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.569}],"category":"decorative"},{"id":"minecraft:green_concrete","name":"Green Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#495b24","dominant_hex":"#4c5c24","average_hex":"#495b24","hue_group":"yellow","lightness":0.249,"saturation":0.4331,"palette":["#4c5c24"],"color_groups":[{"hex":"#4c5c24","weight":1.0,"lightness":0.251,"saturation":0.4375,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/green_concrete.png","family":"green_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rose_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sea_pickle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_carpet","label":"Palette proche: Green Carpet","confidence":0.927},{"type":"color_neighbors","target":"minecraft:green_wool","label":"Palette proche: Green Wool","confidence":0.927},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.916},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.898},{"type":"color_neighbors","target":"minecraft:green_terracotta","label":"Palette proche: Green Terracotta","confidence":0.876},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.87},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.864},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.864},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:spruce_shelf","label":"Pont de nuance par palette: Spruce Shelf","confidence":0.649},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.644},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.644},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.644},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.644},{"type":"color_bridge","target":"minecraft:dead_bush","label":"Pont de nuance par palette: Dead Bush","confidence":0.641},{"type":"color_bridge","target":"minecraft:potted_dead_bush","label":"Pont de nuance par palette: Potted Dead Bush","confidence":0.641},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.638},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.634},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par palette: Muddy Mangrove Roots","confidence":0.634},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_shulker_box","label":"Couleurs analogues: Green Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass_pane","label":"Couleurs analogues: Green Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass","label":"Couleurs analogues: Green Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_carpet","label":"Couleurs analogues: Green Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_wool","label":"Couleurs analogues: Green Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle","label":"Couleurs analogues: Green Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.944},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.912},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.912},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.912},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.912},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.885},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.879},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.86},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.907},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.894},{"type":"color_triad","target":"minecraft:soul_lantern","label":"Harmonie triadique: Soul Lantern","confidence":0.88},{"type":"color_triad","target":"minecraft:light_blue_concrete","label":"Harmonie triadique: Light Blue Concrete","confidence":0.857},{"type":"color_triad","target":"minecraft:light_blue_glazed_terracotta","label":"Harmonie triadique: Light Blue Glazed Terracotta","confidence":0.855},{"type":"color_triad","target":"minecraft:cornflower","label":"Harmonie triadique: Cornflower","confidence":0.849},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.96},{"type":"color_square","target":"minecraft:chiseled_nether_bricks","label":"Harmonie carree: Chiseled Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_stairs","label":"Harmonie carree: Nether Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_wall","label":"Harmonie carree: Nether Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:nether_bricks","label":"Harmonie carree: Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:cactus_flower","label":"Harmonie carree: Cactus Flower","confidence":0.956},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.688},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.654},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.632},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.611},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.611},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.599},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.597},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.594}],"category":"building"},{"id":"minecraft:green_concrete_powder","name":"Green Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#61772d","dominant_hex":"#647b2c","average_hex":"#61772d","hue_group":"yellow","lightness":0.3216,"saturation":0.4512,"palette":["#647b2c","#6c8628","#5f7434","#5c742b","#596b2c","#5c6c34"],"color_groups":[{"hex":"#647b2c","weight":0.2617,"lightness":0.3275,"saturation":0.4731,"hue_group":"yellow"},{"hex":"#6c8628","weight":0.1914,"lightness":0.3412,"saturation":0.5402,"hue_group":"yellow"},{"hex":"#5f7434","weight":0.1797,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#5c742b","weight":0.1523,"lightness":0.3118,"saturation":0.4591,"hue_group":"yellow"},{"hex":"#596b2c","weight":0.1172,"lightness":0.2961,"saturation":0.4172,"hue_group":"yellow"},{"hex":"#5c6c34","weight":0.0977,"lightness":0.3137,"saturation":0.35,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/green_concrete_powder.png","family":"green_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.936},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.936},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.935},{"type":"color_neighbors","target":"minecraft:lime_terracotta","label":"Palette proche: Lime Terracotta","confidence":0.921},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.92},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.92},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.919},{"type":"color_neighbors","target":"minecraft:green_concrete","label":"Palette proche: Green Concrete","confidence":0.898},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.896},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.709},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.709},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.709},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.709},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.695},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.693},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par sous-ton: Infested Mossy Stone Bricks","confidence":0.679},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par sous-ton: Mossy Stone Brick Slab","confidence":0.679},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par sous-ton: Mossy Stone Brick Stairs","confidence":0.679},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par sous-ton: Mossy Stone Brick Wall","confidence":0.679},{"type":"color_analogous","target":"minecraft:azalea","label":"Couleurs analogues: Azalea","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_azalea_bush","label":"Couleurs analogues: Potted Azalea Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:cave_vines","label":"Couleurs analogues: Cave Vines","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_carpet","label":"Couleurs analogues: Green Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_wool","label":"Couleurs analogues: Green Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:melon","label":"Couleurs analogues: Melon","confidence":0.96},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.96},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.96},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.96},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.943},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.882},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.817},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.798},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.918},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.915},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.914},{"type":"color_triad","target":"minecraft:light_blue_carpet","label":"Harmonie triadique: Light Blue Carpet","confidence":0.905},{"type":"color_triad","target":"minecraft:light_blue_wool","label":"Harmonie triadique: Light Blue Wool","confidence":0.905},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.898},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.831},{"type":"color_square","target":"minecraft:cracked_nether_bricks","label":"Harmonie carree: Cracked Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_brick_slab","label":"Harmonie carree: Prismarine Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_brick_stairs","label":"Harmonie carree: Prismarine Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_bricks","label":"Harmonie carree: Prismarine Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.951},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.941},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.938},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.938},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.619},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.585},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.563},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55}],"category":"building"},{"id":"minecraft:green_dye","name":"Green Dye","entry_type":"item","description":"Green dye is one of the sixteen available dyes.","history":[{"version":"1.2","status":"added","notes":"Added cactus green, together with all other dyes."},{"version":"1.4.2 12w34a","status":"added","notes":"Added the ability to dye leather armor and wolf collars."},{"version":"1.8 14w30a","status":"added","notes":"Added banners , which can be dyed."}],"colors":{"primary":"#4b5d1a","dominant_hex":"#748c2a","average_hex":"#4b5d1a","hue_group":"yellow","lightness":0.2333,"saturation":0.563,"palette":["#748c2a","#4d6b1d","#3c1c1c","#2c440c","#243404","#34540c"],"color_groups":[{"hex":"#748c2a","weight":0.2905,"lightness":0.3569,"saturation":0.5385,"hue_group":"yellow"},{"hex":"#4d6b1d","weight":0.2703,"lightness":0.2667,"saturation":0.5735,"hue_group":"yellow"},{"hex":"#3c1c1c","weight":0.1284,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#2c440c","weight":0.1149,"lightness":0.1569,"saturation":0.7,"hue_group":"yellow"},{"hex":"#243404","weight":0.1081,"lightness":0.1098,"saturation":0.8571,"hue_group":"yellow"},{"hex":"#34540c","weight":0.0878,"lightness":0.1882,"saturation":0.75,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/green_dye.png","family":"green_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:debug_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:green_glazed_terracotta","name":"Green Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#758e43","dominant_hex":"#749e24","average_hex":"#758e43","hue_group":"yellow","lightness":0.4098,"saturation":0.3589,"palette":["#749e24","#5f8016","#4a5a24","#d1d2d4","#8ca45c","#4f6727"],"color_groups":[{"hex":"#749e24","weight":0.2305,"lightness":0.3804,"saturation":0.6289,"hue_group":"yellow"},{"hex":"#5f8016","weight":0.2148,"lightness":0.2941,"saturation":0.7067,"hue_group":"yellow"},{"hex":"#4a5a24","weight":0.1758,"lightness":0.2471,"saturation":0.4286,"hue_group":"yellow"},{"hex":"#d1d2d4","weight":0.1562,"lightness":0.8255,"saturation":0.0337,"hue_group":"neutral"},{"hex":"#8ca45c","weight":0.1172,"lightness":0.502,"saturation":0.2835,"hue_group":"yellow"},{"hex":"#4f6727","weight":0.1055,"lightness":0.2784,"saturation":0.4507,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/green_glazed_terracotta.png","family":"green_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dirt_path","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powered_rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:green_carpet","label":"Palette proche: Green Carpet","confidence":0.797},{"type":"color_neighbors","target":"minecraft:green_wool","label":"Palette proche: Green Wool","confidence":0.797},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.793},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.793},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.782},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.781},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.781},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.779},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.779},{"type":"color_neighbors","target":"minecraft:green_concrete","label":"Palette proche: Green Concrete","confidence":0.777},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.774},{"type":"color_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Palette proche: Flowering Azalea Leaves","confidence":0.773},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.705},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.705},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.705},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.705},{"type":"color_bridge","target":"minecraft:pitcher_plant","label":"Pont de nuance par sous-ton: Pitcher Plant","confidence":0.693},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Copper","confidence":0.676},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chest","confidence":0.676},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Golem Statue","confidence":0.676},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par sous-ton: Weathered Copper","confidence":0.676},{"type":"color_bridge","target":"minecraft:weathered_copper_chest","label":"Pont de nuance par sous-ton: Weathered Copper Chest","confidence":0.676},{"type":"color_analogous","target":"minecraft:big_dripleaf","label":"Couleurs analogues: Big Dripleaf","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass","label":"Couleurs analogues: Green Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass_pane","label":"Couleurs analogues: Green Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:big_dripleaf_stem","label":"Couleurs analogues: Big Dripleaf Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:small_dripleaf","label":"Couleurs analogues: Small Dripleaf","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete","label":"Couleurs analogues: Green Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.95},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.902},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.902},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.902},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.902},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.886},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.88},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.871},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.902},{"type":"color_triad","target":"minecraft:soul_lantern","label":"Harmonie triadique: Soul Lantern","confidence":0.9},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.887},{"type":"color_triad","target":"minecraft:cornflower","label":"Harmonie triadique: Cornflower","confidence":0.869},{"type":"color_triad","target":"minecraft:potted_cornflower","label":"Harmonie triadique: Potted Cornflower","confidence":0.869},{"type":"color_triad","target":"minecraft:light_blue_concrete","label":"Harmonie triadique: Light Blue Concrete","confidence":0.865},{"type":"color_square","target":"minecraft:chiseled_nether_bricks","label":"Harmonie carree: Chiseled Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_stairs","label":"Harmonie carree: Nether Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_wall","label":"Harmonie carree: Nether Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:nether_bricks","label":"Harmonie carree: Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:cactus_flower","label":"Harmonie carree: Cactus Flower","confidence":0.96},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.951},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone_slab","label":"Contraste clair sombre: Cut Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_slab","label":"Contraste clair sombre: Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_stairs","label":"Contraste clair sombre: Sandstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_sandstone","label":"Contraste clair sombre: Smooth Sandstone","confidence":0.55}],"category":"building"},{"id":"minecraft:green_harness","name":"Green Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#685636","dominant_hex":"#93644c","average_hex":"#685636","hue_group":"yellow","lightness":0.3098,"saturation":0.3165,"palette":["#93644c","#502e16","#715a29","#3c5c20","#3c2414","#a2b0b2"],"color_groups":[{"hex":"#93644c","weight":0.227,"lightness":0.4373,"saturation":0.3184,"hue_group":"red"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#715a29","weight":0.1902,"lightness":0.302,"saturation":0.4675,"hue_group":"yellow"},{"hex":"#3c5c20","weight":0.1534,"lightness":0.2431,"saturation":0.4839,"hue_group":"green"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"},{"hex":"#a2b0b2","weight":0.1043,"lightness":0.6667,"saturation":0.0941,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/green_harness.png","family":"green_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:lime_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armor_stand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crossbow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:book","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:green_shulker_box","name":"Green Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#4f6520","dominant_hex":"#546c1c","average_hex":"#4f6520","hue_group":"yellow","lightness":0.2608,"saturation":0.5188,"palette":["#546c1c","#4c5c24","#4c6424","#445424","#54641c","#445c24"],"color_groups":[{"hex":"#546c1c","weight":0.5039,"lightness":0.2667,"saturation":0.5882,"hue_group":"yellow"},{"hex":"#4c5c24","weight":0.1992,"lightness":0.251,"saturation":0.4375,"hue_group":"yellow"},{"hex":"#4c6424","weight":0.1758,"lightness":0.2667,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#445424","weight":0.0586,"lightness":0.2353,"saturation":0.4,"hue_group":"yellow"},{"hex":"#54641c","weight":0.0391,"lightness":0.251,"saturation":0.5625,"hue_group":"yellow"},{"hex":"#445c24","weight":0.0234,"lightness":0.251,"saturation":0.4375,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/green_shulker_box.png","family":"green_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:dark_oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rose_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cactus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:green_carpet","label":"Palette proche: Green Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_wool","label":"Palette proche: Green Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_concrete","label":"Palette proche: Green Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.906},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.906},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.884},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.884},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.877},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.873},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.871},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.871},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.863},{"type":"color_bridge","target":"minecraft:podzol","label":"Pont de nuance par palette: Podzol","confidence":0.661},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.63},{"type":"color_bridge","target":"minecraft:dead_bush","label":"Pont de nuance par palette: Dead Bush","confidence":0.628},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.628},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.628},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.628},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.628},{"type":"color_bridge","target":"minecraft:potted_dead_bush","label":"Pont de nuance par palette: Potted Dead Bush","confidence":0.628},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.623},{"type":"color_bridge","target":"minecraft:spruce_shelf","label":"Pont de nuance par palette: Spruce Shelf","confidence":0.623},{"type":"color_analogous","target":"minecraft:green_carpet","label":"Couleurs analogues: Green Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_wool","label":"Couleurs analogues: Green Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete","label":"Couleurs analogues: Green Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle","label":"Couleurs analogues: Green Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass","label":"Couleurs analogues: Green Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete_powder","label":"Couleurs analogues: Green Concrete Powder","confidence":0.959},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.921},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.921},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.921},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.921},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.919},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.893},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.854},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.835},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.942},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.933},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.881},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.862},{"type":"color_triad","target":"minecraft:light_blue_carpet","label":"Harmonie triadique: Light Blue Carpet","confidence":0.861},{"type":"color_triad","target":"minecraft:light_blue_wool","label":"Harmonie triadique: Light Blue Wool","confidence":0.861},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.859},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.96},{"type":"color_square","target":"minecraft:chiseled_nether_bricks","label":"Harmonie carree: Chiseled Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_stairs","label":"Harmonie carree: Nether Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_wall","label":"Harmonie carree: Nether Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:nether_bricks","label":"Harmonie carree: Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.674},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.641},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.618},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.598},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.598},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.585},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.583},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.581}],"category":""},{"id":"minecraft:green_stained_glass","name":"Green Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#667f33","dominant_hex":"#647c34","average_hex":"#667f33","hue_group":"yellow","lightness":0.349,"saturation":0.427,"palette":["#647c34"],"color_groups":[{"hex":"#647c34","weight":1.0,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/green_stained_glass.png","family":"green_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:green_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ladder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.935},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.925},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.925},{"type":"color_neighbors","target":"minecraft:lime_terracotta","label":"Palette proche: Lime Terracotta","confidence":0.919},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.914},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.914},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.914},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.914},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.91},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.891},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.864},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.717},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.717},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.717},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.717},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.688},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par sous-ton: Infested Mossy Stone Bricks","confidence":0.687},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par sous-ton: Mossy Stone Brick Slab","confidence":0.687},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par sous-ton: Mossy Stone Brick Stairs","confidence":0.687},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par sous-ton: Mossy Stone Brick Wall","confidence":0.687},{"type":"color_bridge","target":"minecraft:mossy_stone_bricks","label":"Pont de nuance par sous-ton: Mossy Stone Bricks","confidence":0.687},{"type":"color_analogous","target":"minecraft:green_stained_glass_pane","label":"Couleurs analogues: Green Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:big_dripleaf_stem","label":"Couleurs analogues: Big Dripleaf Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:small_dripleaf","label":"Couleurs analogues: Small Dripleaf","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:big_dripleaf","label":"Couleurs analogues: Big Dripleaf","confidence":0.96},{"type":"color_analogous","target":"minecraft:azalea_leaves","label":"Couleurs analogues: Azalea Leaves","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_glazed_terracotta","label":"Couleurs analogues: Green Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.948},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.91},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.91},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.91},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.91},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.883},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.882},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.864},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.902},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.897},{"type":"color_triad","target":"minecraft:soul_lantern","label":"Harmonie triadique: Soul Lantern","confidence":0.885},{"type":"color_triad","target":"minecraft:light_blue_concrete","label":"Harmonie triadique: Light Blue Concrete","confidence":0.86},{"type":"color_triad","target":"minecraft:light_blue_glazed_terracotta","label":"Harmonie triadique: Light Blue Glazed Terracotta","confidence":0.858},{"type":"color_triad","target":"minecraft:cornflower","label":"Harmonie triadique: Cornflower","confidence":0.853},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.96},{"type":"color_square","target":"minecraft:chiseled_nether_bricks","label":"Harmonie carree: Chiseled Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_stairs","label":"Harmonie carree: Nether Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_wall","label":"Harmonie carree: Nether Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:nether_bricks","label":"Harmonie carree: Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:cactus_flower","label":"Harmonie carree: Cactus Flower","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.593},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.56},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55}],"category":"building"},{"id":"minecraft:green_stained_glass_pane","name":"Green Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#627b31","dominant_hex":"#647c34","average_hex":"#627b31","hue_group":"yellow","lightness":0.3373,"saturation":0.4302,"palette":["#647c34","#5c742c"],"color_groups":[{"hex":"#647c34","weight":0.75,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#5c742c","weight":0.25,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/green_stained_glass_pane_top.png","family":"green_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:potted_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.927},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.926},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.922},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.922},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.917},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.917},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.914},{"type":"color_neighbors","target":"minecraft:lime_terracotta","label":"Palette proche: Lime Terracotta","confidence":0.912},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.893},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.872},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.713},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.713},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.713},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.713},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.69},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par sous-ton: Infested Mossy Stone Bricks","confidence":0.686},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par sous-ton: Mossy Stone Brick Slab","confidence":0.686},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par sous-ton: Mossy Stone Brick Stairs","confidence":0.686},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par sous-ton: Mossy Stone Brick Wall","confidence":0.686},{"type":"color_bridge","target":"minecraft:mossy_stone_bricks","label":"Pont de nuance par sous-ton: Mossy Stone Bricks","confidence":0.686},{"type":"color_analogous","target":"minecraft:green_stained_glass","label":"Couleurs analogues: Green Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:big_dripleaf_stem","label":"Couleurs analogues: Big Dripleaf Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:small_dripleaf","label":"Couleurs analogues: Small Dripleaf","confidence":0.96},{"type":"color_analogous","target":"minecraft:azalea_leaves","label":"Couleurs analogues: Azalea Leaves","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:big_dripleaf","label":"Couleurs analogues: Big Dripleaf","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete","label":"Couleurs analogues: Green Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.901},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.892},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.892},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.892},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.892},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.882},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.873},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.918},{"type":"color_triad","target":"minecraft:soul_lantern","label":"Harmonie triadique: Soul Lantern","confidence":0.905},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.882},{"type":"color_triad","target":"minecraft:light_blue_concrete","label":"Harmonie triadique: Light Blue Concrete","confidence":0.881},{"type":"color_triad","target":"minecraft:light_blue_glazed_terracotta","label":"Harmonie triadique: Light Blue Glazed Terracotta","confidence":0.879},{"type":"color_triad","target":"minecraft:cornflower","label":"Harmonie triadique: Cornflower","confidence":0.873},{"type":"color_square","target":"minecraft:chiseled_nether_bricks","label":"Harmonie carree: Chiseled Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:cactus_flower","label":"Harmonie carree: Cactus Flower","confidence":0.96},{"type":"color_square","target":"minecraft:twisting_vines","label":"Harmonie carree: Twisting Vines","confidence":0.955},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.946},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.943},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.943},{"type":"color_square","target":"minecraft:nether_brick_stairs","label":"Harmonie carree: Nether Brick Stairs","confidence":0.943},{"type":"color_square","target":"minecraft:nether_brick_wall","label":"Harmonie carree: Nether Brick Wall","confidence":0.943},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.604},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.57},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55}],"category":"building"},{"id":"minecraft:green_terracotta","name":"Green Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#4c532a","dominant_hex":"#4c542c","average_hex":"#4c532a","hue_group":"yellow","lightness":0.2451,"saturation":0.328,"palette":["#4c542c","#4c5424","#54542c"],"color_groups":[{"hex":"#4c542c","weight":0.9844,"lightness":0.251,"saturation":0.3125,"hue_group":"yellow"},{"hex":"#4c5424","weight":0.0117,"lightness":0.2353,"saturation":0.4,"hue_group":"yellow"},{"hex":"#54542c","weight":0.0039,"lightness":0.251,"saturation":0.3125,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/green_terracotta.png","family":"green_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firefly_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_roots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:green_concrete","label":"Palette proche: Green Concrete","confidence":0.876},{"type":"color_neighbors","target":"minecraft:firefly_bush","label":"Palette proche: Firefly Bush","confidence":0.861},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.854},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.854},{"type":"color_neighbors","target":"minecraft:lime_terracotta","label":"Palette proche: Lime Terracotta","confidence":0.841},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.833},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.832},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.832},{"type":"color_neighbors","target":"minecraft:bamboo_block","label":"Palette proche: Bamboo Block","confidence":0.821},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.814},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.809},{"type":"color_neighbors","target":"minecraft:green_carpet","label":"Palette proche: Green Carpet","confidence":0.806},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.75},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.72},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.72},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.72},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.72},{"type":"color_bridge","target":"minecraft:mud","label":"Pont de nuance par palette: Mud","confidence":0.714},{"type":"color_bridge","target":"minecraft:creeper_head","label":"Pont de nuance par palette: Creeper Head","confidence":0.706},{"type":"color_bridge","target":"minecraft:creeper_wall_head","label":"Pont de nuance par palette: Creeper Wall Head","confidence":0.706},{"type":"color_bridge","target":"minecraft:dragon_head","label":"Pont de nuance par palette: Dragon Head","confidence":0.706},{"type":"color_bridge","target":"minecraft:dragon_wall_head","label":"Pont de nuance par palette: Dragon Wall Head","confidence":0.706},{"type":"color_analogous","target":"minecraft:potted_wither_rose","label":"Couleurs analogues: Potted Wither Rose","confidence":0.96},{"type":"color_analogous","target":"minecraft:wither_rose","label":"Couleurs analogues: Wither Rose","confidence":0.96},{"type":"color_analogous","target":"minecraft:flowering_azalea","label":"Couleurs analogues: Flowering Azalea","confidence":0.96},{"type":"color_analogous","target":"minecraft:dandelion","label":"Couleurs analogues: Dandelion","confidence":0.944},{"type":"color_analogous","target":"minecraft:potted_dandelion","label":"Couleurs analogues: Potted Dandelion","confidence":0.944},{"type":"color_analogous","target":"minecraft:bamboo_block","label":"Couleurs analogues: Bamboo Block","confidence":0.934},{"type":"color_analogous","target":"minecraft:sea_pickle","label":"Couleurs analogues: Sea Pickle","confidence":0.931},{"type":"color_analogous","target":"minecraft:cave_vines_plant","label":"Couleurs analogues: Cave Vines Plant","confidence":0.93},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.784},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.764},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.764},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.764},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.764},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.743},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.622},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.598},{"type":"color_triad","target":"minecraft:glass_pane","label":"Harmonie triadique: Glass Pane","confidence":0.945},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_triad","target":"minecraft:cyan_concrete","label":"Harmonie triadique: Cyan Concrete","confidence":0.915},{"type":"color_triad","target":"minecraft:sculk_vein","label":"Harmonie triadique: Sculk Vein","confidence":0.898},{"type":"color_triad","target":"minecraft:glass","label":"Harmonie triadique: Glass","confidence":0.871},{"type":"color_triad","target":"minecraft:cyan_shulker_box","label":"Harmonie triadique: Cyan Shulker Box","confidence":0.854},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.839},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.79},{"type":"color_square","target":"minecraft:oxidized_copper_chain","label":"Harmonie carree: Oxidized Copper Chain","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie carree: Waxed Oxidized Copper Chain","confidence":0.96},{"type":"color_square","target":"minecraft:purple_terracotta","label":"Harmonie carree: Purple Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_terracotta","label":"Harmonie carree: Magenta Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:pink_shulker_box","label":"Harmonie carree: Pink Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:pink_stained_glass","label":"Harmonie carree: Pink Stained Glass","confidence":0.958},{"type":"color_square","target":"minecraft:oxidized_copper_door","label":"Harmonie carree: Oxidized Copper Door","confidence":0.957},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie carree: Waxed Oxidized Copper Door","confidence":0.957},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.696},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.663},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.64},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.617},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.617},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.607},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.607},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.607}],"category":"building"},{"id":"minecraft:green_wall_banner","name":"Green Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"green_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:green_wool","name":"Green Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#556e1c","dominant_hex":"#566f1c","average_hex":"#556e1c","hue_group":"yellow","lightness":0.2706,"saturation":0.5942,"palette":["#566f1c","#5c7914","#4c6422","#4c5c24","#64841c","#54641c"],"color_groups":[{"hex":"#566f1c","weight":0.3555,"lightness":0.2725,"saturation":0.5971,"hue_group":"yellow"},{"hex":"#5c7914","weight":0.2109,"lightness":0.2765,"saturation":0.7163,"hue_group":"yellow"},{"hex":"#4c6422","weight":0.1641,"lightness":0.2627,"saturation":0.4925,"hue_group":"yellow"},{"hex":"#4c5c24","weight":0.1094,"lightness":0.251,"saturation":0.4375,"hue_group":"yellow"},{"hex":"#64841c","weight":0.082,"lightness":0.3137,"saturation":0.65,"hue_group":"yellow"},{"hex":"#54641c","weight":0.0781,"lightness":0.251,"saturation":0.5625,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/green_wool.png","family":"green_wool","relations":[{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:podzol","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:green_carpet","label":"Palette proche: Green Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_concrete","label":"Palette proche: Green Concrete","confidence":0.927},{"type":"color_neighbors","target":"minecraft:green_candle","label":"Palette proche: Green Candle","confidence":0.883},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.879},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.879},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.869},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.86},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.846},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.846},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.846},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.846},{"type":"color_bridge","target":"minecraft:podzol","label":"Pont de nuance par palette: Podzol","confidence":0.664},{"type":"color_bridge","target":"minecraft:dead_bush","label":"Pont de nuance par palette: Dead Bush","confidence":0.61},{"type":"color_bridge","target":"minecraft:potted_dead_bush","label":"Pont de nuance par palette: Potted Dead Bush","confidence":0.61},{"type":"color_bridge","target":"minecraft:spruce_shelf","label":"Pont de nuance par palette: Spruce Shelf","confidence":0.608},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.608},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.608},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.608},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.608},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.603},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.599},{"type":"color_analogous","target":"minecraft:green_carpet","label":"Couleurs analogues: Green Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_shulker_box","label":"Couleurs analogues: Green Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle","label":"Couleurs analogues: Green Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:cave_vines","label":"Couleurs analogues: Cave Vines","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete","label":"Couleurs analogues: Green Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete_powder","label":"Couleurs analogues: Green Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.941},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.941},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.941},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.941},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.914},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.883},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.818},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.799},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.924},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.904},{"type":"color_triad","target":"minecraft:light_blue_carpet","label":"Harmonie triadique: Light Blue Carpet","confidence":0.899},{"type":"color_triad","target":"minecraft:light_blue_wool","label":"Harmonie triadique: Light Blue Wool","confidence":0.899},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.888},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.886},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.855},{"type":"color_square","target":"minecraft:cracked_nether_bricks","label":"Harmonie carree: Cracked Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_brick_slab","label":"Harmonie carree: Prismarine Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_brick_stairs","label":"Harmonie carree: Prismarine Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_bricks","label":"Harmonie carree: Prismarine Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.959},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.949},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.946},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.946},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.663},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.629},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.607},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.586},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.586},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.573},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.572},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.569}],"category":"decorative"},{"id":"minecraft:grindstone","name":"Grindstone","entry_type":"block","description":"A grindstone is a block used to remove all enchantments (except for curses) from items, refunding some experience orbs. Additionally, it can repair tools, weapons, and armor. It also serves as a weaponsmith's job site block.","history":[{"version":"1.14 18w44a","status":"added","notes":"Added grindstones."},{"version":"18w45a","status":"added","notes":"Added cullface argument to the feet of the grindstone."},{"version":"wiki-history","status":"added","notes":"Added a crafting recipe for grindstones."}],"colors":{"primary":"#8c8c8c","dominant_hex":"#737373","average_hex":"#8c8c8c","hue_group":"neutral","lightness":0.549,"saturation":0.0,"palette":["#737373","#8c8c8c","#7c7c7c","#a4a4a4","#b4b4b4","#9c9c9c"],"color_groups":[{"hex":"#737373","weight":0.2639,"lightness":0.451,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.2222,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.2083,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.1319,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.0903,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.0833,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/grindstone_side.png","family":"grindstone","relations":[{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_bars","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_pad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55}],"category":"utility"},{"id":"minecraft:guardian","name":"Guardian","entry_type":"mob","description":"Guardians are aquatic hostile mobs that spawn in ocean monuments. They attack with a slow-charging laser beam, and inflict retaliatory damage when damaged by a melee attack.","history":[{"version":"1.8 14w25a","status":"added","notes":"Added guardians."}],"colors":{"primary":"#647d6b","dominant_hex":"#6d9389","average_hex":"#647d6b","hue_group":"neutral","lightness":0.4412,"saturation":0.1111,"palette":["#6d9389","#5d7c74","#4c7c64","#406d58","#6d5146","#df7532"],"color_groups":[{"hex":"#6d9389","weight":0.3004,"lightness":0.502,"saturation":0.1496,"hue_group":"cyan"},{"hex":"#5d7c74","weight":0.2505,"lightness":0.4255,"saturation":0.1429,"hue_group":"cyan"},{"hex":"#4c7c64","weight":0.1777,"lightness":0.3922,"saturation":0.24,"hue_group":"cyan"},{"hex":"#406d58","weight":0.1252,"lightness":0.3392,"saturation":0.2601,"hue_group":"cyan"},{"hex":"#6d5146","weight":0.0886,"lightness":0.351,"saturation":0.2179,"hue_group":"red"},{"hex":"#df7532","weight":0.0576,"lightness":0.5353,"saturation":0.73,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/guardian.png","family":"guardian","relations":[{"type":"visual_neighbors","target":"minecraft:chicken/cold","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/warm","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/salt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_fangs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_charging","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:guardian_spawn_egg","name":"Guardian Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#5d625a","dominant_hex":"#325242","average_hex":"#5d625a","hue_group":"neutral","lightness":0.3686,"saturation":0.0426,"palette":["#325242","#73999e","#c5461f","#4a7a6c","#263262","#3c6454"],"color_groups":[{"hex":"#325242","weight":0.2011,"lightness":0.2588,"saturation":0.2424,"hue_group":"cyan"},{"hex":"#73999e","weight":0.1954,"lightness":0.5353,"saturation":0.1814,"hue_group":"cyan"},{"hex":"#c5461f","weight":0.1954,"lightness":0.4471,"saturation":0.7281,"hue_group":"red"},{"hex":"#4a7a6c","weight":0.1839,"lightness":0.3843,"saturation":0.2449,"hue_group":"cyan"},{"hex":"#263262","weight":0.1494,"lightness":0.2667,"saturation":0.4412,"hue_group":"blue"},{"hex":"#3c6454","weight":0.0747,"lightness":0.3137,"saturation":0.25,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/guardian_spawn_egg.png","family":"guardian_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elytra","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:gunpowder","name":"Gunpowder","entry_type":"item","description":"Gunpowder is an item used for explosion-related recipes, and as an ingredient in potions to create splash potions.","history":[{"version":"0.31 20100130","status":"added","notes":"Added gunpowder, then known as sulphur."},{"version":"v1.2.0 preview","status":"added","notes":"Added ghasts , which drop sulphur upon death ."},{"version":"19w05a","status":"added","notes":"Added wandering traders , which sell gunpowder."}],"colors":{"primary":"#535353","dominant_hex":"#545454","average_hex":"#535353","hue_group":"neutral","lightness":0.3255,"saturation":0.0,"palette":["#545454","#4c4c4c","#747474","#2c2c2c","#8c8c8c","#3c3c3c"],"color_groups":[{"hex":"#545454","weight":0.2386,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.2159,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.2045,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.1932,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.0909,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c3c","weight":0.0568,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/gunpowder.png","family":"gunpowder","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:furnace_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_star","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:compass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_strad","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:guster_banner_pattern","name":"Guster Banner Pattern","entry_type":"item","description":"A guster banner pattern is a banner pattern used to customize banners with the appearance of a breeze. It can only be found in trial chambers and cannot be crafted.","history":[{"version":"1.20.5","status":"added","notes":"Added guster banner patterns."},{"version":"1.21.2 24w33a","status":"added","notes":"Added a unique item icon texture for guster banner patterns."}],"colors":{"primary":"#b9b09f","dominant_hex":"#ececec","average_hex":"#b9b09f","hue_group":"yellow","lightness":0.6745,"saturation":0.1566,"palette":["#ececec","#847454","#b3a488","#dcd4bc","#66463a","#948c6c"],"color_groups":[{"hex":"#ececec","weight":0.3704,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#847454","weight":0.1728,"lightness":0.4235,"saturation":0.2222,"hue_group":"yellow"},{"hex":"#b3a488","weight":0.142,"lightness":0.6176,"saturation":0.2205,"hue_group":"yellow"},{"hex":"#dcd4bc","weight":0.1358,"lightness":0.8,"saturation":0.3137,"hue_group":"yellow"},{"hex":"#66463a","weight":0.1235,"lightness":0.3137,"saturation":0.275,"hue_group":"red"},{"hex":"#948c6c","weight":0.0556,"lightness":0.502,"saturation":0.1575,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/guster_banner_pattern.png","family":"guster_banner_pattern","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:field_masoned_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bordure_indented_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mojang_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:guster_pottery_sherd","name":"Guster Pottery Sherd","entry_type":"item","description":"A guster pottery sherd is a pottery sherd that depicts a breeze. It can be found in trial chambers.","history":[{"version":"1.20.5","status":"added","notes":"Added guster pottery sherds."}],"colors":{"primary":"#6c3c31","dominant_hex":"#734334","average_hex":"#6c3c31","hue_group":"red","lightness":0.3078,"saturation":0.3758,"palette":["#734334","#5c342c","#844c3c","#44241c","#9a5a4a","#542c24"],"color_groups":[{"hex":"#734334","weight":0.1975,"lightness":0.3275,"saturation":0.3772,"hue_group":"red"},{"hex":"#5c342c","weight":0.1783,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#844c3c","weight":0.1783,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#44241c","weight":0.172,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.1465,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"},{"hex":"#542c24","weight":0.1274,"lightness":0.2353,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/guster_pottery_sherd.png","family":"guster_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:angler_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:burn_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:hanging_roots","name":"Hanging Roots","entry_type":"block","description":"Hanging roots are a natural decorative block found underground in the lush caves biome.","history":[{"version":"1.17 21w05a","status":"added","notes":"Added hanging roots."}],"colors":{"primary":"#a1735c","dominant_hex":"#ac7c64","average_hex":"#a1735c","hue_group":"red","lightness":0.4961,"saturation":0.2727,"palette":["#ac7c64","#945444","#bc948c","#7c543c","#946c4c","#bc845c"],"color_groups":[{"hex":"#ac7c64","weight":0.28,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#945444","weight":0.2533,"lightness":0.4235,"saturation":0.3704,"hue_group":"red"},{"hex":"#bc948c","weight":0.2133,"lightness":0.6431,"saturation":0.2637,"hue_group":"red"},{"hex":"#7c543c","weight":0.12,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#946c4c","weight":0.08,"lightness":0.4392,"saturation":0.3214,"hue_group":"red"},{"hex":"#bc845c","weight":0.0533,"lightness":0.549,"saturation":0.4174,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/hanging_roots.png","family":"hanging_roots","relations":[{"type":"visual_neighbors","target":"minecraft:polished_granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_brown_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:rooted_dirt","label":"Palette proche: Rooted Dirt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.906},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.904},{"type":"color_neighbors","target":"minecraft:granite","label":"Palette proche: Granite","confidence":0.886},{"type":"color_neighbors","target":"minecraft:granite_slab","label":"Palette proche: Granite Slab","confidence":0.886},{"type":"color_neighbors","target":"minecraft:granite_stairs","label":"Palette proche: Granite Stairs","confidence":0.886},{"type":"color_neighbors","target":"minecraft:granite_wall","label":"Palette proche: Granite Wall","confidence":0.886},{"type":"color_neighbors","target":"minecraft:coarse_dirt","label":"Palette proche: Coarse Dirt","confidence":0.878},{"type":"color_neighbors","target":"minecraft:polished_granite","label":"Palette proche: Polished Granite","confidence":0.878},{"type":"color_neighbors","target":"minecraft:polished_granite_slab","label":"Palette proche: Polished Granite Slab","confidence":0.878},{"type":"color_neighbors","target":"minecraft:polished_granite_stairs","label":"Palette proche: Polished Granite Stairs","confidence":0.878},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.875},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.884},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.884},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.883},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.883},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.879},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.879},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.873},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.873},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.873},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.873},{"type":"color_analogous","target":"minecraft:exposed_copper_trapdoor","label":"Couleurs analogues: Exposed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Couleurs analogues: Waxed Exposed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_door","label":"Couleurs analogues: Acacia Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_planks","label":"Couleurs analogues: Acacia Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_pressure_plate","label":"Couleurs analogues: Acacia Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.918},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.896},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.888},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.888},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.867},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.881},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.881},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.881},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.881},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.868},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.864},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.863},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.906},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.903},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.902},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.891},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.851},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.795},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.795},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.763},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"natural"},{"id":"minecraft:happy_ghast","name":"Happy Ghast","entry_type":"mob","description":"A happy ghast is a passive counterpart of ghasts that can be harnessed and ridden by up to four players at once as a flying mount. It can also be used in conjunction with leads to airlift and transport boats and leashable mobs.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added happy ghasts."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent ghastlings from growing up."}],"colors":{"primary":"#ecebeb","dominant_hex":"#f4f4f4","average_hex":"#ecebeb","hue_group":"neutral","lightness":0.9235,"saturation":0.0256,"palette":["#f4f4f4","#fcfcfc","#dccccc","#e4e4e4","#dcdcdc","#818181"],"color_groups":[{"hex":"#f4f4f4","weight":0.6433,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.135,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dccccc","weight":0.0986,"lightness":0.8314,"saturation":0.186,"hue_group":"red"},{"hex":"#e4e4e4","weight":0.0596,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.0563,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#818181","weight":0.0072,"lightness":0.5059,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/ghast/happy_ghast.png","family":"happy_ghast","relations":[{"type":"visual_neighbors","target":"minecraft:ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool_undercoat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitefield","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/caerbannog","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:happy_ghast_baby","name":"Happy Ghast Baby","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#e0b1ab","dominant_hex":"#efeeee","average_hex":"#e0b1ab","hue_group":"red","lightness":0.7745,"saturation":0.4609,"palette":["#efeeee","#cb6d5d","#fcfcfc","#db857d","#e49484","#d47c74"],"color_groups":[{"hex":"#efeeee","weight":0.384,"lightness":0.9353,"saturation":0.0303,"hue_group":"neutral"},{"hex":"#cb6d5d","weight":0.3113,"lightness":0.5804,"saturation":0.514,"hue_group":"red"},{"hex":"#fcfcfc","weight":0.1059,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#db857d","weight":0.0847,"lightness":0.6745,"saturation":0.5663,"hue_group":"red"},{"hex":"#e49484","weight":0.0705,"lightness":0.7059,"saturation":0.64,"hue_group":"red"},{"hex":"#d47c74","weight":0.0436,"lightness":0.6431,"saturation":0.5275,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/ghast/happy_ghast_baby.png","family":"happy_ghast_baby","relations":[{"type":"visual_neighbors","target":"minecraft:parrot/red_blue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_pink","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:happy_ghast_ropes","name":"Happy Ghast Ropes","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#8a6a3c","dominant_hex":"#6c5434","average_hex":"#8a6a3c","hue_group":"yellow","lightness":0.3882,"saturation":0.3939,"palette":["#6c5434","#7c643c","#a3845b","#745c3c","#e9a91c","#cc640c"],"color_groups":[{"hex":"#6c5434","weight":0.2597,"lightness":0.3137,"saturation":0.35,"hue_group":"yellow"},{"hex":"#7c643c","weight":0.2519,"lightness":0.3608,"saturation":0.3478,"hue_group":"yellow"},{"hex":"#a3845b","weight":0.208,"lightness":0.498,"saturation":0.2835,"hue_group":"yellow"},{"hex":"#745c3c","weight":0.1641,"lightness":0.3451,"saturation":0.3182,"hue_group":"yellow"},{"hex":"#e9a91c","weight":0.0814,"lightness":0.5118,"saturation":0.8233,"hue_group":"yellow"},{"hex":"#cc640c","weight":0.0349,"lightness":0.4235,"saturation":0.8889,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/ghast/happy_ghast_ropes.png","family":"happy_ghast_ropes","relations":[{"type":"visual_neighbors","target":"minecraft:bee","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/cold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:happy_ghast_spawn_egg","name":"Happy Ghast Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#c3bebe","dominant_hex":"#f4f4f4","average_hex":"#c3bebe","hue_group":"neutral","lightness":0.7549,"saturation":0.04,"palette":["#f4f4f4","#dccccc","#776f6f","#b4acac","#5c5c5c","#fcfcfc"],"color_groups":[{"hex":"#f4f4f4","weight":0.3218,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dccccc","weight":0.2701,"lightness":0.8314,"saturation":0.186,"hue_group":"red"},{"hex":"#776f6f","weight":0.1322,"lightness":0.451,"saturation":0.0348,"hue_group":"neutral"},{"hex":"#b4acac","weight":0.1149,"lightness":0.6902,"saturation":0.0506,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1092,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.0517,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/happy_ghast_spawn_egg.png","family":"happy_ghast_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:white_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polar_bear_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:paper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sugar","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:feather","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_tears","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tipped_arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:splash_potion","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:hay_block","name":"Hay Block","entry_type":"block","description":"Hay bales are storage blocks equivalent to nine pieces of wheat. They are used as a crafting ingredient, to feed llamas and all horse variants, reduce fall damage, and extend campfire smoke.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added the hay bale."},{"version":"18w47a","status":"added","notes":"Added pillager outposts , which sometimes generate with scarecrows made of hay bales."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb hay bales, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#a68826","dominant_hex":"#ac9424","average_hex":"#a68826","hue_group":"yellow","lightness":0.4,"saturation":0.6275,"palette":["#ac9424","#94841c","#8c7424","#bcac34","#ccb434","#9d4c28"],"color_groups":[{"hex":"#ac9424","weight":0.2539,"lightness":0.4078,"saturation":0.6538,"hue_group":"yellow"},{"hex":"#94841c","weight":0.2109,"lightness":0.3451,"saturation":0.6818,"hue_group":"yellow"},{"hex":"#8c7424","weight":0.1484,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"},{"hex":"#bcac34","weight":0.1328,"lightness":0.4706,"saturation":0.5667,"hue_group":"yellow"},{"hex":"#ccb434","weight":0.1289,"lightness":0.502,"saturation":0.5984,"hue_group":"yellow"},{"hex":"#9d4c28","weight":0.125,"lightness":0.3863,"saturation":0.5939,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/hay_block_side.png","family":"hay_block","relations":[{"type":"visual_neighbors","target":"minecraft:dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bell","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:horn_coral_fan","label":"Palette proche: Horn Coral Fan","confidence":0.853},{"type":"color_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Palette proche: Horn Coral Wall Fan","confidence":0.853},{"type":"color_neighbors","target":"minecraft:orange_terracotta","label":"Palette proche: Orange Terracotta","confidence":0.828},{"type":"color_neighbors","target":"minecraft:horn_coral","label":"Palette proche: Horn Coral","confidence":0.828},{"type":"color_neighbors","target":"minecraft:yellow_terracotta","label":"Palette proche: Yellow Terracotta","confidence":0.828},{"type":"color_neighbors","target":"minecraft:horn_coral_block","label":"Palette proche: Horn Coral Block","confidence":0.817},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic","label":"Palette proche: Bamboo Mosaic","confidence":0.806},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Palette proche: Bamboo Mosaic Slab","confidence":0.806},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic_stairs","label":"Palette proche: Bamboo Mosaic Stairs","confidence":0.806},{"type":"color_neighbors","target":"minecraft:sponge","label":"Palette proche: Sponge","confidence":0.793},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.792},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.792},{"type":"color_bridge","target":"minecraft:red_carpet","label":"Pont de nuance par palette: Red Carpet","confidence":0.735},{"type":"color_bridge","target":"minecraft:red_wool","label":"Pont de nuance par palette: Red Wool","confidence":0.735},{"type":"color_bridge","target":"minecraft:red_candle","label":"Pont de nuance par palette: Red Candle","confidence":0.71},{"type":"color_bridge","target":"minecraft:red_glazed_terracotta","label":"Pont de nuance par palette: Red Glazed Terracotta","confidence":0.704},{"type":"color_bridge","target":"minecraft:red_concrete_powder","label":"Pont de nuance par palette: Red Concrete Powder","confidence":0.697},{"type":"color_bridge","target":"minecraft:red_concrete","label":"Pont de nuance par palette: Red Concrete","confidence":0.695},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.688},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.688},{"type":"color_bridge","target":"minecraft:red_shulker_box","label":"Pont de nuance par palette: Red Shulker Box","confidence":0.684},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.682},{"type":"color_analogous","target":"minecraft:rose_bush","label":"Couleurs analogues: Rose Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_carpet","label":"Couleurs analogues: Yellow Carpet","confidence":0.954},{"type":"color_analogous","target":"minecraft:yellow_wool","label":"Couleurs analogues: Yellow Wool","confidence":0.954},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.951},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.951},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.951},{"type":"color_analogous","target":"minecraft:birch_planks","label":"Couleurs analogues: Birch Planks","confidence":0.951},{"type":"color_analogous","target":"minecraft:birch_pressure_plate","label":"Couleurs analogues: Birch Pressure Plate","confidence":0.951},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.949},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.949},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.934},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.918},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.909},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.882},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.913},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.889},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.876},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.876},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.876},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.868},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.805},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.765},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.951},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.947},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.699},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.636},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.627},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.627},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.623},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.589},{"type":"value_contrast","target":"minecraft:cut_sandstone_slab","label":"Contraste clair sombre: Cut Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_slab","label":"Contraste clair sombre: Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_stairs","label":"Contraste clair sombre: Sandstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_sandstone","label":"Contraste clair sombre: Smooth Sandstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_sandstone_slab","label":"Contraste clair sombre: Smooth Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_sandstone_stairs","label":"Contraste clair sombre: Smooth Sandstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55}],"category":""},{"id":"minecraft:heart_of_the_sea","name":"Heart Of The Sea","entry_type":"item","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#166583","dominant_hex":"#0c4252","average_hex":"#166583","hue_group":"cyan","lightness":0.3,"saturation":0.7124,"palette":["#0c4252","#1c9ab8","#2484a4","#1c6c8c","#0c2454","#0c5c74"],"color_groups":[{"hex":"#0c4252","weight":0.2297,"lightness":0.1843,"saturation":0.7447,"hue_group":"cyan"},{"hex":"#1c9ab8","weight":0.223,"lightness":0.4157,"saturation":0.7358,"hue_group":"cyan"},{"hex":"#2484a4","weight":0.1689,"lightness":0.3922,"saturation":0.64,"hue_group":"cyan"},{"hex":"#1c6c8c","weight":0.1622,"lightness":0.3294,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#0c2454","weight":0.1149,"lightness":0.1882,"saturation":0.75,"hue_group":"blue"},{"hex":"#0c5c74","weight":0.1014,"lightness":0.251,"saturation":0.8125,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/heart_of_the_sea.png","family":"heart_of_the_sea","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cyan_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:echo_shard","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_helmet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_pearl","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allay_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_bundle","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:heart_pottery_sherd","name":"Heart Pottery Sherd","entry_type":"item","description":"A heart pottery sherd is a pottery sherd that depicts a heart. It can be found in trail ruins.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added heart pottery shards."}],"colors":{"primary":"#66392f","dominant_hex":"#5c342c","average_hex":"#66392f","hue_group":"red","lightness":0.2922,"saturation":0.3691,"palette":["#5c342c","#724234","#44241c","#542c24","#9a5a4a","#844c3c"],"color_groups":[{"hex":"#5c342c","weight":0.2038,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#724234","weight":0.2038,"lightness":0.3255,"saturation":0.3735,"hue_group":"red"},{"hex":"#44241c","weight":0.1911,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#542c24","weight":0.1847,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.1274,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"},{"hex":"#844c3c","weight":0.0892,"lightness":0.3765,"saturation":0.375,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/heart_pottery_sherd.png","family":"heart_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:plenty_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:heartbreak_pottery_sherd","name":"Heartbreak Pottery Sherd","entry_type":"item","description":"A heartbreak pottery sherd is a pottery sherd that depicts a broken heart. It can be found in trail ruins.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added heartbreak pottery shards."}],"colors":{"primary":"#693b30","dominant_hex":"#724234","average_hex":"#693b30","hue_group":"red","lightness":0.3,"saturation":0.3725,"palette":["#724234","#5c342c","#44241c","#542c24","#844c3c","#9a5a4a"],"color_groups":[{"hex":"#724234","weight":0.2038,"lightness":0.3255,"saturation":0.3735,"hue_group":"red"},{"hex":"#5c342c","weight":0.1847,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#44241c","weight":0.1783,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#542c24","weight":0.1592,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#844c3c","weight":0.1401,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.1338,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/heartbreak_pottery_sherd.png","family":"heartbreak_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:heavy_core","name":"Heavy Core","entry_type":"block","description":"A heavy core is a rare block that can only be obtained from ominous vaults found in trial chambers. It can be combined with a breeze rod to craft a mace.","history":[{"version":"1.20.5","status":"added","notes":"Added heavy cores."}],"colors":{"primary":"#52565e","dominant_hex":"#2d2d2d","average_hex":"#52565e","hue_group":"neutral","lightness":0.3451,"saturation":0.0682,"palette":["#2d2d2d","#3c3c44","#5c646c","#4c545c","#949cac","#7c8494"],"color_groups":[{"hex":"#2d2d2d","weight":0.2656,"lightness":0.1765,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.1927,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#5c646c","weight":0.1458,"lightness":0.3922,"saturation":0.08,"hue_group":"neutral"},{"hex":"#4c545c","weight":0.1406,"lightness":0.3294,"saturation":0.0952,"hue_group":"neutral"},{"hex":"#949cac","weight":0.1354,"lightness":0.6275,"saturation":0.1263,"hue_group":"blue"},{"hex":"#7c8494","weight":0.1198,"lightness":0.5333,"saturation":0.1008,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/heavy_core.png","family":"heavy_core","relations":[{"type":"visual_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:peony","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:structure_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jigsaw","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gray_concrete_powder","label":"Palette proche: Gray Concrete Powder","confidence":0.832},{"type":"color_neighbors","target":"minecraft:reinforced_deepslate","label":"Palette proche: Reinforced Deepslate","confidence":0.816},{"type":"color_neighbors","target":"minecraft:gray_shulker_box","label":"Palette proche: Gray Shulker Box","confidence":0.816},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.814},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.811},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.811},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.811},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.811},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.808},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.807},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.807},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.807},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:reinforced_deepslate","label":"Pont de nuance par palette: Reinforced Deepslate","confidence":0.849},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.848},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.846},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.845},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.845},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.845},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.845},{"type":"color_bridge","target":"minecraft:smooth_basalt","label":"Pont de nuance par palette: Smooth Basalt","confidence":0.842},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.841},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.598},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.584},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.583},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.583},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.565},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_stairs","label":"Contraste clair sombre: Polished Diorite Stairs","confidence":0.55}],"category":""},{"id":"minecraft:heavy_weighted_pressure_plate","name":"Heavy Weighted Pressure Plate","entry_type":"block","description":"A heavy weighted pressure plate is a type of pressure plate that produces a redstone signal while an entity is touching it. Depending on how many entities are touching it between 1 and the maximum of 141, the outputted signal strength will range from 1 to 15.","history":[{"version":"1.5 13w01a","status":"added","notes":"Added weighted pressure plates."},{"version":"1.21.5 25w02a","status":"added","notes":"Added new break, place, step, fall and hit sounds."}],"colors":{"primary":"#dcdcdc","dominant_hex":"#e4e4e4","average_hex":"#dcdcdc","hue_group":"neutral","lightness":0.8627,"saturation":0.0,"palette":["#e4e4e4","#d9d9d9","#c9c6c6","#b9b9b9","#f4f4f4","#ececec"],"color_groups":[{"hex":"#e4e4e4","weight":0.4336,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d9d9d9","weight":0.1641,"lightness":0.851,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c9c6c6","weight":0.1367,"lightness":0.7824,"saturation":0.027,"hue_group":"neutral"},{"hex":"#b9b9b9","weight":0.0977,"lightness":0.7255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.0898,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ececec","weight":0.0781,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/iron_block.png","family":"heavy_weighted_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:iron_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_wire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_trapdoor","label":"Palette proche: Iron Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:redstone_wire","label":"Palette proche: Redstone Wire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:white_stained_glass_pane","label":"Palette proche: White Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.936},{"type":"color_neighbors","target":"minecraft:water","label":"Palette proche: Water","confidence":0.936},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.921},{"type":"color_neighbors","target":"minecraft:white_stained_glass","label":"Palette proche: White Stained Glass","confidence":0.904},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.9},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.9},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.9},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_trapdoor","label":"Pont de nuance par palette: Iron Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:bubble_column","label":"Pont de nuance par palette: Bubble Column","confidence":0.86},{"type":"color_bridge","target":"minecraft:water","label":"Pont de nuance par palette: Water","confidence":0.86},{"type":"color_bridge","target":"minecraft:leaf_litter","label":"Pont de nuance par palette: Leaf Litter","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.759},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.751},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.746},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.729},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.726},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.725},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.725},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.725}],"category":"building"},{"id":"minecraft:hoglin","name":"Hoglin","entry_type":"mob","description":"A hoglin is a breedable hostile mob found in the Nether, and a source of porkchops and leather. Hoglins are repelled by warped fungi that is placed in the world as well as active Nether portals and respawn anchors. It attacks by thrusting its tusks upward, which can also launch its target a short distance into the air. Baby hoglins behave similarly, but have a much weaker attack (the weakest attack in the game) with normal knockback, and flee when hit.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added hoglins."},{"version":"20w07a","status":"added","notes":"Added baby hoglins."}],"colors":{"primary":"#b1785f","dominant_hex":"#9a6354","average_hex":"#b1785f","hue_group":"red","lightness":0.5333,"saturation":0.3445,"palette":["#9a6354","#ebb07a","#bc745c","#cc8464","#d4947c","#2d2d2d"],"color_groups":[{"hex":"#9a6354","weight":0.3166,"lightness":0.4667,"saturation":0.2941,"hue_group":"red"},{"hex":"#ebb07a","weight":0.184,"lightness":0.7,"saturation":0.7386,"hue_group":"red"},{"hex":"#bc745c","weight":0.1429,"lightness":0.549,"saturation":0.4174,"hue_group":"red"},{"hex":"#cc8464","weight":0.1339,"lightness":0.5961,"saturation":0.5049,"hue_group":"red"},{"hex":"#d4947c","weight":0.1291,"lightness":0.6588,"saturation":0.5057,"hue_group":"red"},{"hex":"#2d2d2d","weight":0.0935,"lightness":0.1765,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/hoglin/hoglin.png","family":"hoglin","relations":[{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:hoglin_spawn_egg","name":"Hoglin Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#ac7657","dominant_hex":"#af7255","average_hex":"#ac7657","hue_group":"red","lightness":0.5078,"saturation":0.3386,"palette":["#af7255","#84462b","#db997a","#48342b","#f1d995","#cc8464"],"color_groups":[{"hex":"#af7255","weight":0.2879,"lightness":0.5098,"saturation":0.36,"hue_group":"red"},{"hex":"#84462b","weight":0.202,"lightness":0.3431,"saturation":0.5086,"hue_group":"red"},{"hex":"#db997a","weight":0.197,"lightness":0.6686,"saturation":0.574,"hue_group":"red"},{"hex":"#48342b","weight":0.1111,"lightness":0.2255,"saturation":0.2522,"hue_group":"red"},{"hex":"#f1d995","weight":0.1061,"lightness":0.7647,"saturation":0.7667,"hue_group":"yellow"},{"hex":"#cc8464","weight":0.096,"lightness":0.5961,"saturation":0.5049,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/hoglin_spawn_egg.png","family":"hoglin_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cooked_rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_horse_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bolt_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brush","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:honey_block","name":"Honey Block","entry_type":"block","description":"A honey block is a storage block equivalent to the contents of four honey bottles. It is sticky, can prevent jumping, and can be used in conjunction with pistons to move blocks and adhered entities.","history":[{"version":"1.15 19w41a","status":"added","notes":"Added honey blocks."}],"colors":{"primary":"#fbbc3a","dominant_hex":"#fcac1c","average_hex":"#fbbc3a","hue_group":"yellow","lightness":0.6059,"saturation":0.9602,"palette":["#fcac1c","#fcc434","#fccc5c","#f49c0c","#f4dc74","#fce48c"],"color_groups":[{"hex":"#fcac1c","weight":0.2578,"lightness":0.549,"saturation":0.9739,"hue_group":"yellow"},{"hex":"#fcc434","weight":0.2383,"lightness":0.5961,"saturation":0.9709,"hue_group":"yellow"},{"hex":"#fccc5c","weight":0.2031,"lightness":0.6745,"saturation":0.9639,"hue_group":"yellow"},{"hex":"#f49c0c","weight":0.1445,"lightness":0.502,"saturation":0.9134,"hue_group":"yellow"},{"hex":"#f4dc74","weight":0.1328,"lightness":0.7059,"saturation":0.8533,"hue_group":"yellow"},{"hex":"#fce48c","weight":0.0234,"lightness":0.7686,"saturation":0.9492,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/honey_block_side.png","family":"honey_block","relations":[{"type":"visual_neighbors","target":"minecraft:gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wildflowers","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.935},{"type":"color_neighbors","target":"minecraft:yellow_shulker_box","label":"Palette proche: Yellow Shulker Box","confidence":0.917},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.908},{"type":"color_neighbors","target":"minecraft:yellow_wool","label":"Palette proche: Yellow Wool","confidence":0.908},{"type":"color_neighbors","target":"minecraft:yellow_concrete","label":"Palette proche: Yellow Concrete","confidence":0.888},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.882},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.882},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.867},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.849},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.836},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.836},{"type":"color_neighbors","target":"minecraft:jack_o_lantern","label":"Palette proche: Jack O Lantern","confidence":0.834},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.628},{"type":"color_bridge","target":"minecraft:weeping_vines_plant","label":"Pont de nuance par palette: Weeping Vines Plant","confidence":0.598},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.589},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.589},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.58},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.58},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.58},{"type":"color_analogous","target":"minecraft:bee_nest","label":"Couleurs analogues: Bee Nest","confidence":0.96},{"type":"color_analogous","target":"minecraft:pitcher_crop","label":"Couleurs analogues: Pitcher Crop","confidence":0.96},{"type":"color_analogous","target":"minecraft:tall_dry_grass","label":"Couleurs analogues: Tall Dry Grass","confidence":0.96},{"type":"color_analogous","target":"minecraft:short_dry_grass","label":"Couleurs analogues: Short Dry Grass","confidence":0.957},{"type":"color_analogous","target":"minecraft:raw_gold_block","label":"Couleurs analogues: Raw Gold Block","confidence":0.953},{"type":"color_analogous","target":"minecraft:yellow_concrete","label":"Couleurs analogues: Yellow Concrete","confidence":0.946},{"type":"color_analogous","target":"minecraft:yellow_glazed_terracotta","label":"Couleurs analogues: Yellow Glazed Terracotta","confidence":0.945},{"type":"color_analogous","target":"minecraft:dirt_path","label":"Couleurs analogues: Dirt Path","confidence":0.945},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.96},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.947},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.945},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.927},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.853},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.843},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.833},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.918},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.918},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.903},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.903},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.902},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.902},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.867},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.848},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.902},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.74},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.74},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.734},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.734},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.71},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.708},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.706},{"type":"value_contrast","target":"minecraft:podzol","label":"Contraste clair sombre: Podzol","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_log","label":"Contraste clair sombre: Jungle Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_wood","label":"Contraste clair sombre: Jungle Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:nether_wart_block","label":"Contraste clair sombre: Nether Wart Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:weeping_vines","label":"Contraste clair sombre: Weeping Vines","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_trapdoor","label":"Contraste clair sombre: Dark Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_door","label":"Contraste clair sombre: Dark Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_lamp","label":"Contraste clair sombre: Redstone Lamp","confidence":0.55}],"category":""},{"id":"minecraft:honey_bottle","name":"Honey Bottle","entry_type":"item","description":"A honey bottle is a consumable drink item obtainable by using a glass bottle on a full beehive or bee nest. Honey bottles remove Poison when drunk and can be used to craft honey blocks and sugar.","history":[{"version":"1.15 19w34a","status":"added","notes":"Added honey bottles."}],"colors":{"primary":"#bb9972","dominant_hex":"#bac8e0","average_hex":"#bb9972","hue_group":"yellow","lightness":0.5902,"saturation":0.3493,"palette":["#bac8e0","#5c8cc4","#d46c23","#fc9414","#b3511e","#fcd42c"],"color_groups":[{"hex":"#bac8e0","weight":0.2564,"lightness":0.8039,"saturation":0.38,"hue_group":"blue"},{"hex":"#5c8cc4","weight":0.2051,"lightness":0.5647,"saturation":0.4685,"hue_group":"blue"},{"hex":"#d46c23","weight":0.1667,"lightness":0.4843,"saturation":0.7166,"hue_group":"red"},{"hex":"#fc9414","weight":0.141,"lightness":0.5333,"saturation":0.9748,"hue_group":"yellow"},{"hex":"#b3511e","weight":0.1282,"lightness":0.4098,"saturation":0.7129,"hue_group":"red"},{"hex":"#fcd42c","weight":0.1026,"lightness":0.5804,"saturation":0.972,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/honey_bottle.png","family":"honey_bottle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cooked_cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trader_llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_porkchop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:eye_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_foot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:totem_of_undying","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:honeycomb","name":"Honeycomb","entry_type":"item","description":"Honeycombs are items obtained by shearing full bee nests and beehives. They are used to craft beehives, candles and honeycomb blocks, and can be applied as wax to many copper blocks to prevent them from oxidizing over time, as well as to signs to prevent them from being edited.","history":[{"version":"1.15 19w34a","status":"added","notes":"Added honeycombs."}],"colors":{"primary":"#ea9924","dominant_hex":"#ec8c14","average_hex":"#ea9924","hue_group":"yellow","lightness":0.5294,"saturation":0.825,"palette":["#ec8c14","#d46c2c","#fcbc2c","#fcdc2c","#e47c24"],"color_groups":[{"hex":"#ec8c14","weight":0.2754,"lightness":0.502,"saturation":0.8504,"hue_group":"yellow"},{"hex":"#d46c2c","weight":0.2536,"lightness":0.502,"saturation":0.6614,"hue_group":"red"},{"hex":"#fcbc2c","weight":0.1739,"lightness":0.5804,"saturation":0.972,"hue_group":"yellow"},{"hex":"#fcdc2c","weight":0.1739,"lightness":0.5804,"saturation":0.972,"hue_group":"yellow"},{"hex":"#e47c24","weight":0.1232,"lightness":0.5176,"saturation":0.7805,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/honeycomb.png","family":"honeycomb","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:blaze_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_ingot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_nautilus_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_pie","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:honeycomb_block","name":"Honeycomb Block","entry_type":"block","description":"Honeycomb blocks are decorative blocks crafted from honeycombs.","history":[{"version":"1.15 19w41a","status":"added","notes":"Added honeycomb blocks."},{"version":"26.2 snap1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb honeycomb blocks, providing the sticky effect to the mob."}],"colors":{"primary":"#e5941e","dominant_hex":"#ec8c0c","average_hex":"#e5941e","hue_group":"yellow","lightness":0.5078,"saturation":0.7928,"palette":["#ec8c0c","#cc6c0c","#fcac1c","#dc7c04","#fccc5c","#fce47c"],"color_groups":[{"hex":"#ec8c0c","weight":0.2656,"lightness":0.4863,"saturation":0.9032,"hue_group":"yellow"},{"hex":"#cc6c0c","weight":0.2383,"lightness":0.4235,"saturation":0.8889,"hue_group":"red"},{"hex":"#fcac1c","weight":0.1602,"lightness":0.549,"saturation":0.9739,"hue_group":"yellow"},{"hex":"#dc7c04","weight":0.1445,"lightness":0.4392,"saturation":0.9643,"hue_group":"yellow"},{"hex":"#fccc5c","weight":0.1094,"lightness":0.6745,"saturation":0.9639,"hue_group":"yellow"},{"hex":"#fce47c","weight":0.082,"lightness":0.7373,"saturation":0.9552,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/honeycomb_block.png","family":"honeycomb_block","relations":[{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jack_o_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.935},{"type":"color_neighbors","target":"minecraft:yellow_shulker_box","label":"Palette proche: Yellow Shulker Box","confidence":0.884},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.88},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.88},{"type":"color_neighbors","target":"minecraft:jack_o_lantern","label":"Palette proche: Jack O Lantern","confidence":0.872},{"type":"color_neighbors","target":"minecraft:shroomlight","label":"Palette proche: Shroomlight","confidence":0.869},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.858},{"type":"color_neighbors","target":"minecraft:orange_concrete","label":"Palette proche: Orange Concrete","confidence":0.856},{"type":"color_neighbors","target":"minecraft:yellow_concrete","label":"Palette proche: Yellow Concrete","confidence":0.855},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.854},{"type":"color_neighbors","target":"minecraft:yellow_wool","label":"Palette proche: Yellow Wool","confidence":0.854},{"type":"color_neighbors","target":"minecraft:orange_candle","label":"Palette proche: Orange Candle","confidence":0.851},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.716},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.651},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.614},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.614},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.58},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.58},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.58},{"type":"color_analogous","target":"minecraft:jack_o_lantern","label":"Couleurs analogues: Jack O Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:lectern","label":"Couleurs analogues: Lectern","confidence":0.96},{"type":"color_analogous","target":"minecraft:scaffolding","label":"Couleurs analogues: Scaffolding","confidence":0.96},{"type":"color_analogous","target":"minecraft:beehive","label":"Couleurs analogues: Beehive","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_shelf","label":"Couleurs analogues: Jungle Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_door","label":"Couleurs analogues: Oak Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:ladder","label":"Couleurs analogues: Ladder","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.927},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.907},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.899},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.894},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.877},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.875},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.871},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.831},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_carpet","label":"Harmonie triadique: Purple Carpet","confidence":0.944},{"type":"color_triad","target":"minecraft:purple_wool","label":"Harmonie triadique: Purple Wool","confidence":0.944},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.943},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.943},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.943},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.942},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.955},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.955},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.949},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.949},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.925},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.923},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.909},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.841},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:hopper","name":"Hopper","entry_type":"block","description":"A hopper is a low-capacity storage block that can be used to collect item entities directly above it, as well as to transfer items into and out of other containers. A hopper can be locked with redstone power to stop it from moving items into or out of itself.","history":[{"version":"1.5 13w01a","status":"added","notes":"Added hoppers."}],"colors":{"primary":"#4c4a4c","dominant_hex":"#4c4c4c","average_hex":"#4c4a4c","hue_group":"neutral","lightness":0.2941,"saturation":0.0133,"palette":["#4c4c4c","#3c3c44","#5c5c5c","#646464","#34343c"],"color_groups":[{"hex":"#4c4c4c","weight":0.4872,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.2564,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1282,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#646464","weight":0.1026,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#34343c","weight":0.0256,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/hopper_top.png","family":"hopper","relations":[{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:basalt","label":"Palette proche: Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.94},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:basalt","label":"Pont de nuance par palette: Basalt","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.661},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.627},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.619},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.618},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.618},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.605},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.6},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.6}],"category":"redstone"},{"id":"minecraft:hopper_minecart","name":"Hopper Minecart","entry_type":"item","description":"A minecart with hopper is a minecart with a hopper inside. Unlike a normal hopper, it pulls items from containers much more quickly, cannot push items into containers, can collect item entities through a single layer of solid blocks, and is locked and unlocked via activator rails.","history":[{"version":"1.5 13w03a","status":"added","notes":"Added minecart with hopper."}],"colors":{"primary":"#515455","dominant_hex":"#797a7e","average_hex":"#515455","hue_group":"neutral","lightness":0.3255,"saturation":0.0241,"palette":["#797a7e","#202727","#4c4c4c","#3c4444","#3c3c3c","#343434"],"color_groups":[{"hex":"#797a7e","weight":0.4088,"lightness":0.4843,"saturation":0.0202,"hue_group":"neutral"},{"hex":"#202727","weight":0.1509,"lightness":0.1392,"saturation":0.0986,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1384,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c4444","weight":0.1195,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#3c3c3c","weight":0.1006,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#343434","weight":0.0818,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/hopper_minecart.png","family":"hopper_minecart","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:compass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:furnace_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gunpowder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_horn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_star","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:horn_coral","name":"Horn Coral","entry_type":"block","description":"Coral is a type of non-solid block that comes in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w10a","status":"added","notes":"Added coral plants."},{"version":"18w10d","status":"added","notes":"Added coral reefs , allowing coral plants to generate naturally."}],"colors":{"primary":"#d1ba3f","dominant_hex":"#d4b444","average_hex":"#d1ba3f","hue_group":"yellow","lightness":0.5333,"saturation":0.6134,"palette":["#d4b444","#b48c34","#d4cc3c","#e4dc4c","#ecec4c","#bca434"],"color_groups":[{"hex":"#d4b444","weight":0.25,"lightness":0.549,"saturation":0.6261,"hue_group":"yellow"},{"hex":"#b48c34","weight":0.24,"lightness":0.4549,"saturation":0.5517,"hue_group":"yellow"},{"hex":"#d4cc3c","weight":0.21,"lightness":0.5333,"saturation":0.6387,"hue_group":"yellow"},{"hex":"#e4dc4c","weight":0.19,"lightness":0.5961,"saturation":0.7379,"hue_group":"yellow"},{"hex":"#ecec4c","weight":0.09,"lightness":0.6118,"saturation":0.8081,"hue_group":"yellow"},{"hex":"#bca434","weight":0.02,"lightness":0.4706,"saturation":0.5667,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/horn_coral.png","family":"horn_coral","relations":[{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jack_o_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bell","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:horn_coral_block","label":"Palette proche: Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:horn_coral_fan","label":"Palette proche: Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Palette proche: Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sponge","label":"Palette proche: Sponge","confidence":0.878},{"type":"color_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Palette proche: Yellow Stained Glass Pane","confidence":0.869},{"type":"color_neighbors","target":"minecraft:bamboo_fence_gate","label":"Palette proche: Bamboo Fence Gate","confidence":0.862},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.861},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.861},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.861},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.861},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.861},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.861},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.675},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.675},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.667},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.661},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.661},{"type":"color_bridge","target":"minecraft:jungle_leaves","label":"Pont de nuance par palette: Jungle Leaves","confidence":0.658},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.656},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.654},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.649},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.647},{"type":"color_analogous","target":"minecraft:horn_coral_fan","label":"Couleurs analogues: Horn Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:horn_coral_wall_fan","label":"Couleurs analogues: Horn Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_fence_gate","label":"Couleurs analogues: Bamboo Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.936},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.915},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.912},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.899},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.845},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.833},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.794},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.794},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.941},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.928},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.905},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.905},{"type":"color_triad","target":"minecraft:warped_roots","label":"Harmonie triadique: Warped Roots","confidence":0.9},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.896},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.896},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.855},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.829},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.82},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.82},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.816},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.815},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.78},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.759},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"natural"},{"id":"minecraft:horn_coral_block","name":"Horn Coral Block","entry_type":"block","description":"A coral block is a solid block that comes in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"20100629","status":"added","notes":"added to terrain.png ."},{"version":"1.13 18w09a","status":"added","notes":"Added coral."},{"version":"18w10d","status":"added","notes":"Added coral reefs , allowing coral to generate naturally."}],"colors":{"primary":"#d8c842","dominant_hex":"#d4cc3c","average_hex":"#d8c842","hue_group":"yellow","lightness":0.5529,"saturation":0.6579,"palette":["#d4cc3c","#d4b444","#ecec4c","#e4dc4c","#b48c34","#bca434"],"color_groups":[{"hex":"#d4cc3c","weight":0.2773,"lightness":0.5333,"saturation":0.6387,"hue_group":"yellow"},{"hex":"#d4b444","weight":0.207,"lightness":0.549,"saturation":0.6261,"hue_group":"yellow"},{"hex":"#ecec4c","weight":0.207,"lightness":0.6118,"saturation":0.8081,"hue_group":"yellow"},{"hex":"#e4dc4c","weight":0.1719,"lightness":0.5961,"saturation":0.7379,"hue_group":"yellow"},{"hex":"#b48c34","weight":0.0703,"lightness":0.4549,"saturation":0.5517,"hue_group":"yellow"},{"hex":"#bca434","weight":0.0664,"lightness":0.4706,"saturation":0.5667,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/horn_coral_block.png","family":"horn_coral_block","relations":[{"type":"visual_neighbors","target":"minecraft:jack_o_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bell","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nest","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:horn_coral","label":"Palette proche: Horn Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:horn_coral_fan","label":"Palette proche: Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Palette proche: Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sponge","label":"Palette proche: Sponge","confidence":0.888},{"type":"color_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Palette proche: Yellow Stained Glass Pane","confidence":0.887},{"type":"color_neighbors","target":"minecraft:bamboo_fence_gate","label":"Palette proche: Bamboo Fence Gate","confidence":0.861},{"type":"color_neighbors","target":"minecraft:yellow_stained_glass","label":"Palette proche: Yellow Stained Glass","confidence":0.859},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.857},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.857},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.857},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.857},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.857},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.662},{"type":"color_bridge","target":"minecraft:copper_grate","label":"Pont de nuance par palette: Copper Grate","confidence":0.659},{"type":"color_bridge","target":"minecraft:waxed_copper_grate","label":"Pont de nuance par palette: Waxed Copper Grate","confidence":0.659},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.659},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.659},{"type":"color_bridge","target":"minecraft:copper_block","label":"Pont de nuance par palette: Copper Block","confidence":0.658},{"type":"color_bridge","target":"minecraft:copper_chest","label":"Pont de nuance par palette: Copper Chest","confidence":0.658},{"type":"color_bridge","target":"minecraft:copper_golem_statue","label":"Pont de nuance par palette: Copper Golem Statue","confidence":0.658},{"type":"color_bridge","target":"minecraft:waxed_copper_block","label":"Pont de nuance par palette: Waxed Copper Block","confidence":0.658},{"type":"color_bridge","target":"minecraft:waxed_copper_chest","label":"Pont de nuance par palette: Waxed Copper Chest","confidence":0.658},{"type":"color_analogous","target":"minecraft:orange_glazed_terracotta","label":"Couleurs analogues: Orange Glazed Terracotta","confidence":0.959},{"type":"color_analogous","target":"minecraft:firefly_bush","label":"Couleurs analogues: Firefly Bush","confidence":0.935},{"type":"color_analogous","target":"minecraft:horn_coral","label":"Couleurs analogues: Horn Coral","confidence":0.928},{"type":"color_analogous","target":"minecraft:horn_coral_fan","label":"Couleurs analogues: Horn Coral Fan","confidence":0.925},{"type":"color_analogous","target":"minecraft:horn_coral_wall_fan","label":"Couleurs analogues: Horn Coral Wall Fan","confidence":0.925},{"type":"color_analogous","target":"minecraft:bamboo_fence_gate","label":"Couleurs analogues: Bamboo Fence Gate","confidence":0.914},{"type":"color_analogous","target":"minecraft:bamboo_trapdoor","label":"Couleurs analogues: Bamboo Trapdoor","confidence":0.908},{"type":"color_analogous","target":"minecraft:bamboo_shelf","label":"Couleurs analogues: Bamboo Shelf","confidence":0.906},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.847},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.847},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.83},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.824},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.815},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.814},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.809},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.806},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_roots","label":"Harmonie triadique: Warped Roots","confidence":0.96},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_trapdoor","label":"Harmonie triadique: Warped Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_button","label":"Harmonie triadique: Warped Button","confidence":0.958},{"type":"color_triad","target":"minecraft:warped_fence","label":"Harmonie triadique: Warped Fence","confidence":0.958},{"type":"color_triad","target":"minecraft:warped_fence_gate","label":"Harmonie triadique: Warped Fence Gate","confidence":0.958},{"type":"color_triad","target":"minecraft:warped_planks","label":"Harmonie triadique: Warped Planks","confidence":0.958},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.953},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.944},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.944},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.94},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.911},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.883},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.731},{"type":"color_square","target":"minecraft:cherry_log","label":"Harmonie carree: Cherry Log","confidence":0.701},{"type":"value_contrast","target":"minecraft:dark_oak_trapdoor","label":"Contraste clair sombre: Dark Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55}],"category":"natural"},{"id":"minecraft:horn_coral_fan","name":"Horn Coral Fan","entry_type":"block","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w11a","status":"added","notes":"Added coral fans."}],"colors":{"primary":"#ceb73d","dominant_hex":"#d4b444","average_hex":"#ceb73d","hue_group":"yellow","lightness":0.5235,"saturation":0.5967,"palette":["#d4b444","#bca434","#d4cc3c","#ecec4c","#b48c34"],"color_groups":[{"hex":"#d4b444","weight":0.3085,"lightness":0.549,"saturation":0.6261,"hue_group":"yellow"},{"hex":"#bca434","weight":0.2766,"lightness":0.4706,"saturation":0.5667,"hue_group":"yellow"},{"hex":"#d4cc3c","weight":0.2447,"lightness":0.5333,"saturation":0.6387,"hue_group":"yellow"},{"hex":"#ecec4c","weight":0.1064,"lightness":0.6118,"saturation":0.8081,"hue_group":"yellow"},{"hex":"#b48c34","weight":0.0638,"lightness":0.4549,"saturation":0.5517,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/horn_coral_fan.png","family":"horn_coral_fan","relations":[{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jack_o_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sponge","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Palette proche: Horn Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:horn_coral_block","label":"Palette proche: Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:horn_coral","label":"Palette proche: Horn Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sponge","label":"Palette proche: Sponge","confidence":0.874},{"type":"color_neighbors","target":"minecraft:bamboo_fence_gate","label":"Palette proche: Bamboo Fence Gate","confidence":0.872},{"type":"color_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Palette proche: Yellow Stained Glass Pane","confidence":0.872},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic","label":"Palette proche: Bamboo Mosaic","confidence":0.87},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Palette proche: Bamboo Mosaic Slab","confidence":0.87},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic_stairs","label":"Palette proche: Bamboo Mosaic Stairs","confidence":0.87},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.868},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.867},{"type":"color_neighbors","target":"minecraft:bamboo_door","label":"Palette proche: Bamboo Door","confidence":0.867},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.684},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.684},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.669},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.669},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.664},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.659},{"type":"color_bridge","target":"minecraft:jungle_leaves","label":"Pont de nuance par palette: Jungle Leaves","confidence":0.658},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.657},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.656},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.654},{"type":"color_analogous","target":"minecraft:horn_coral_wall_fan","label":"Couleurs analogues: Horn Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:horn_coral","label":"Couleurs analogues: Horn Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_fence_gate","label":"Couleurs analogues: Bamboo Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_mosaic","label":"Couleurs analogues: Bamboo Mosaic","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_mosaic_slab","label":"Couleurs analogues: Bamboo Mosaic Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_mosaic_stairs","label":"Couleurs analogues: Bamboo Mosaic Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.94},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.919},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.916},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.903},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.846},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.834},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.795},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.795},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.937},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.932},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.901},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.901},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.9},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.9},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.9},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.856},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.828},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.819},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.819},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.819},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.815},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.776},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.758},{"type":"value_contrast","target":"minecraft:spruce_log","label":"Contraste clair sombre: Spruce Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_wood","label":"Contraste clair sombre: Spruce Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55}],"category":"natural"},{"id":"minecraft:horn_coral_wall_fan","name":"Horn Coral Wall Fan","entry_type":"block","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w11a","status":"added","notes":"Added coral fans."}],"colors":{"primary":"#ceb73d","dominant_hex":"#d4b444","average_hex":"#ceb73d","hue_group":"yellow","lightness":0.5235,"saturation":0.5967,"palette":["#d4b444","#bca434","#d4cc3c","#ecec4c","#b48c34"],"color_groups":[{"hex":"#d4b444","weight":0.3085,"lightness":0.549,"saturation":0.6261,"hue_group":"yellow"},{"hex":"#bca434","weight":0.2766,"lightness":0.4706,"saturation":0.5667,"hue_group":"yellow"},{"hex":"#d4cc3c","weight":0.2447,"lightness":0.5333,"saturation":0.6387,"hue_group":"yellow"},{"hex":"#ecec4c","weight":0.1064,"lightness":0.6118,"saturation":0.8081,"hue_group":"yellow"},{"hex":"#b48c34","weight":0.0638,"lightness":0.4549,"saturation":0.5517,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/horn_coral_fan.png","family":"horn_coral_wall_fan","relations":[{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jack_o_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sponge","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:horn_coral_fan","label":"Palette proche: Horn Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:horn_coral_block","label":"Palette proche: Horn Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:horn_coral","label":"Palette proche: Horn Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sponge","label":"Palette proche: Sponge","confidence":0.874},{"type":"color_neighbors","target":"minecraft:bamboo_fence_gate","label":"Palette proche: Bamboo Fence Gate","confidence":0.872},{"type":"color_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Palette proche: Yellow Stained Glass Pane","confidence":0.872},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic","label":"Palette proche: Bamboo Mosaic","confidence":0.87},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Palette proche: Bamboo Mosaic Slab","confidence":0.87},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic_stairs","label":"Palette proche: Bamboo Mosaic Stairs","confidence":0.87},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.868},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.867},{"type":"color_neighbors","target":"minecraft:bamboo_door","label":"Palette proche: Bamboo Door","confidence":0.867},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.684},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.684},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.669},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.669},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.664},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.659},{"type":"color_bridge","target":"minecraft:jungle_leaves","label":"Pont de nuance par palette: Jungle Leaves","confidence":0.658},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.657},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.656},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.654},{"type":"color_analogous","target":"minecraft:horn_coral_fan","label":"Couleurs analogues: Horn Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:horn_coral","label":"Couleurs analogues: Horn Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_fence_gate","label":"Couleurs analogues: Bamboo Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_mosaic","label":"Couleurs analogues: Bamboo Mosaic","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_mosaic_slab","label":"Couleurs analogues: Bamboo Mosaic Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_mosaic_stairs","label":"Couleurs analogues: Bamboo Mosaic Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.94},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.919},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.916},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.903},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.846},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.834},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.795},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.795},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.937},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.932},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.901},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.901},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.9},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.9},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.9},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.856},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.828},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.819},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.819},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.819},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.815},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.776},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.758},{"type":"value_contrast","target":"minecraft:spruce_log","label":"Contraste clair sombre: Spruce Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_wood","label":"Contraste clair sombre: Spruce Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55}],"category":"natural"},{"id":"minecraft:horse/black","name":"Horse / Black","entry_type":"mob","description":"A horse is a passive mob that can be ridden when tamed and saddled, and can wear horse armor. Different horses have different run speeds, jump heights and health points, and these attributes can be inherited and improved through breeding.","history":[{"version":"1, 2013","status":"added","notes":"Added horses and ponies to the April Fools update, Minecraft 2.0 . Horses are actually retextured cows and ponies are actually retextured pigs."},{"version":"1.6.1 13w16a","status":"added","notes":"Added horses."},{"version":"13w22a","status":"added","notes":"added to horses."}],"colors":{"primary":"#17181d","dominant_hex":"#1c242c","average_hex":"#17181d","hue_group":"neutral","lightness":0.102,"saturation":0.1154,"palette":["#1c242c","#27272f","#1c1c1e","#040404","#14141c","#0c0c14"],"color_groups":[{"hex":"#1c242c","weight":0.1803,"lightness":0.1412,"saturation":0.2222,"hue_group":"blue"},{"hex":"#27272f","weight":0.1803,"lightness":0.1686,"saturation":0.093,"hue_group":"neutral"},{"hex":"#1c1c1e","weight":0.1798,"lightness":0.1137,"saturation":0.0345,"hue_group":"neutral"},{"hex":"#040404","weight":0.1581,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#14141c","weight":0.1533,"lightness":0.0941,"saturation":0.1667,"hue_group":"blue"},{"hex":"#0c0c14","weight":0.1481,"lightness":0.0627,"saturation":0.25,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/horse_black.png","family":"horse","relations":[{"type":"variants","target":"minecraft:horse/brown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/brown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/chestnut","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/chestnut","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/creamy","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/creamy","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/darkbrown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/darkbrown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/gray","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/gray","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_blackdots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_blackdots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_white","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitedots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitedots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitefield","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitefield","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/white","label":"Related set: horse","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:rabbit/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enderman","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_blackdots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:horse/brown","name":"Horse / Brown","entry_type":"mob","description":"A horse is a passive mob that can be ridden when tamed and saddled, and can wear horse armor. Different horses have different run speeds, jump heights and health points, and these attributes can be inherited and improved through breeding.","history":[{"version":"1, 2013","status":"added","notes":"Added horses and ponies to the April Fools update, Minecraft 2.0 . Horses are actually retextured cows and ponies are actually retextured pigs."},{"version":"1.6.1 13w16a","status":"added","notes":"Added horses."},{"version":"13w22a","status":"added","notes":"added to horses."}],"colors":{"primary":"#391908","dominant_hex":"#1b0804","average_hex":"#391908","hue_group":"red","lightness":0.1275,"saturation":0.7538,"palette":["#1b0804","#4c220c","#552710","#2c1304","#3b1d0d","#3c1c04"],"color_groups":[{"hex":"#1b0804","weight":0.2298,"lightness":0.0608,"saturation":0.7419,"hue_group":"red"},{"hex":"#4c220c","weight":0.2063,"lightness":0.1725,"saturation":0.7273,"hue_group":"red"},{"hex":"#552710","weight":0.1546,"lightness":0.198,"saturation":0.6832,"hue_group":"red"},{"hex":"#2c1304","weight":0.1503,"lightness":0.0941,"saturation":0.8333,"hue_group":"red"},{"hex":"#3b1d0d","weight":0.1329,"lightness":0.1412,"saturation":0.6389,"hue_group":"red"},{"hex":"#3c1c04","weight":0.126,"lightness":0.1255,"saturation":0.875,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/horse_brown.png","family":"horse","relations":[{"type":"variants","target":"minecraft:horse/black","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/black","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/chestnut","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/chestnut","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/creamy","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/creamy","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/darkbrown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/darkbrown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/gray","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/gray","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_blackdots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_blackdots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_white","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitedots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitedots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitefield","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitefield","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/white","label":"Related set: horse","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:magma_cube/magmacube","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/darkbrown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/chestnut","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_orange","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:horse/chestnut","name":"Horse / Chestnut","entry_type":"mob","description":"A horse is a passive mob that can be ridden when tamed and saddled, and can wear horse armor. Different horses have different run speeds, jump heights and health points, and these attributes can be inherited and improved through breeding.","history":[{"version":"1, 2013","status":"added","notes":"Added horses and ponies to the April Fools update, Minecraft 2.0 . Horses are actually retextured cows and ponies are actually retextured pigs."},{"version":"1.6.1 13w16a","status":"added","notes":"Added horses."},{"version":"13w22a","status":"added","notes":"added to horses."}],"colors":{"primary":"#6f3b21","dominant_hex":"#7f3c19","average_hex":"#6f3b21","hue_group":"red","lightness":0.2824,"saturation":0.5417,"palette":["#7f3c19","#5e2416","#cca774","#441d0c","#541d13","#32150d"],"color_groups":[{"hex":"#7f3c19","weight":0.3197,"lightness":0.298,"saturation":0.6711,"hue_group":"red"},{"hex":"#5e2416","weight":0.1707,"lightness":0.2275,"saturation":0.6207,"hue_group":"red"},{"hex":"#cca774","weight":0.1434,"lightness":0.6275,"saturation":0.4632,"hue_group":"yellow"},{"hex":"#441d0c","weight":0.1312,"lightness":0.1569,"saturation":0.7,"hue_group":"red"},{"hex":"#541d13","weight":0.1277,"lightness":0.202,"saturation":0.6311,"hue_group":"red"},{"hex":"#32150d","weight":0.1073,"lightness":0.1235,"saturation":0.5873,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/horse_chestnut.png","family":"horse","relations":[{"type":"variants","target":"minecraft:horse/black","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/black","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/brown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/brown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/creamy","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/creamy","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/darkbrown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/darkbrown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/gray","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/gray","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_blackdots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_blackdots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_white","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitedots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitedots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitefield","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitefield","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/white","label":"Related set: horse","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:shulker_red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/darkbrown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mule","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:horse/creamy","name":"Horse / Creamy","entry_type":"mob","description":"A horse is a passive mob that can be ridden when tamed and saddled, and can wear horse armor. Different horses have different run speeds, jump heights and health points, and these attributes can be inherited and improved through breeding.","history":[{"version":"1, 2013","status":"added","notes":"Added horses and ponies to the April Fools update, Minecraft 2.0 . Horses are actually retextured cows and ponies are actually retextured pigs."},{"version":"1.6.1 13w16a","status":"added","notes":"Added horses."},{"version":"13w22a","status":"added","notes":"added to horses."}],"colors":{"primary":"#64401a","dominant_hex":"#60380c","average_hex":"#64401a","hue_group":"yellow","lightness":0.2471,"saturation":0.5873,"palette":["#60380c","#825223","#9b6f46","#190704","#6c4415","#432c0e"],"color_groups":[{"hex":"#60380c","weight":0.2302,"lightness":0.2118,"saturation":0.7778,"hue_group":"yellow"},{"hex":"#825223","weight":0.2076,"lightness":0.3235,"saturation":0.5758,"hue_group":"red"},{"hex":"#9b6f46","weight":0.1781,"lightness":0.4412,"saturation":0.3778,"hue_group":"red"},{"hex":"#190704","weight":0.1594,"lightness":0.0569,"saturation":0.7241,"hue_group":"red"},{"hex":"#6c4415","weight":0.1234,"lightness":0.2529,"saturation":0.6744,"hue_group":"yellow"},{"hex":"#432c0e","weight":0.1012,"lightness":0.1588,"saturation":0.6543,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/horse_creamy.png","family":"horse","relations":[{"type":"variants","target":"minecraft:horse/black","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/black","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/brown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/brown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/chestnut","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/chestnut","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/darkbrown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/darkbrown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/gray","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/gray","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_blackdots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_blackdots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_white","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitedots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitedots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitefield","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitefield","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/white","label":"Related set: horse","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:shulker_lime","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/cold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_ropes","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_horse","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:horse/darkbrown","name":"Horse / Darkbrown","entry_type":"mob","description":"A horse is a passive mob that can be ridden when tamed and saddled, and can wear horse armor. Different horses have different run speeds, jump heights and health points, and these attributes can be inherited and improved through breeding.","history":[{"version":"1, 2013","status":"added","notes":"Added horses and ponies to the April Fools update, Minecraft 2.0 . Horses are actually retextured cows and ponies are actually retextured pigs."},{"version":"1.6.1 13w16a","status":"added","notes":"Added horses."},{"version":"13w22a","status":"added","notes":"added to horses."}],"colors":{"primary":"#201109","dominant_hex":"#2c140c","average_hex":"#201109","hue_group":"red","lightness":0.0804,"saturation":0.561,"palette":["#2c140c","#362018","#1c0c04","#0c0404","#140c04","#24140c"],"color_groups":[{"hex":"#2c140c","weight":0.222,"lightness":0.1098,"saturation":0.5714,"hue_group":"red"},{"hex":"#362018","weight":0.1811,"lightness":0.1529,"saturation":0.3846,"hue_group":"red"},{"hex":"#1c0c04","weight":0.156,"lightness":0.0627,"saturation":0.75,"hue_group":"red"},{"hex":"#0c0404","weight":0.1546,"lightness":0.0314,"saturation":0.5,"hue_group":"red"},{"hex":"#140c04","weight":0.149,"lightness":0.0471,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#24140c","weight":0.1373,"lightness":0.0941,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/horse_darkbrown.png","family":"horse","relations":[{"type":"variants","target":"minecraft:horse/black","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/black","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/brown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/brown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/chestnut","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/chestnut","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/creamy","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/creamy","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/gray","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/gray","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_blackdots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_blackdots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_white","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitedots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitedots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitefield","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitefield","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/white","label":"Related set: horse","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:horse/chestnut","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cube/magmacube","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:horse/gray","name":"Horse / Gray","entry_type":"mob","description":"A horse is a passive mob that can be ridden when tamed and saddled, and can wear horse armor. Different horses have different run speeds, jump heights and health points, and these attributes can be inherited and improved through breeding.","history":[{"version":"1, 2013","status":"added","notes":"Added horses and ponies to the April Fools update, Minecraft 2.0 . Horses are actually retextured cows and ponies are actually retextured pigs."},{"version":"1.6.1 13w16a","status":"added","notes":"Added horses."},{"version":"13w22a","status":"added","notes":"added to horses."}],"colors":{"primary":"#464646","dominant_hex":"#444444","average_hex":"#464646","hue_group":"neutral","lightness":0.2745,"saturation":0.0,"palette":["#444444","#545454","#656565","#2c2c2c","#3c3c3c","#343434"],"color_groups":[{"hex":"#444444","weight":0.2937,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.2211,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#656565","weight":0.1803,"lightness":0.3961,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.1564,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c3c","weight":0.1464,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#343434","weight":0.0022,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/horse_gray.png","family":"horse","relations":[{"type":"variants","target":"minecraft:horse/black","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/black","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/brown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/brown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/chestnut","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/chestnut","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/creamy","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/creamy","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/darkbrown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/darkbrown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_blackdots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_blackdots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_white","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitedots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitedots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitefield","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitefield","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/white","label":"Related set: horse","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:horse/markings_blackdots","name":"Horse / Markings Blackdots","entry_type":"mob","description":"A horse is a passive mob that can be ridden when tamed and saddled, and can wear horse armor. Different horses have different run speeds, jump heights and health points, and these attributes can be inherited and improved through breeding.","history":[{"version":"1, 2013","status":"added","notes":"Added horses and ponies to the April Fools update, Minecraft 2.0 . Horses are actually retextured cows and ponies are actually retextured pigs."},{"version":"1.6.1 13w16a","status":"added","notes":"Added horses."},{"version":"13w22a","status":"added","notes":"added to horses."}],"colors":{"primary":"#000000","dominant_hex":"#040404","average_hex":"#000000","hue_group":"neutral","lightness":0.0,"saturation":0.0,"palette":["#040404"],"color_groups":[{"hex":"#040404","weight":1.0,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/horse_markings_blackdots.png","family":"horse","relations":[{"type":"variants","target":"minecraft:horse/black","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/black","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/brown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/brown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/chestnut","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/chestnut","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/creamy","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/creamy","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/darkbrown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/darkbrown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/gray","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/gray","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_white","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitedots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitedots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitefield","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitefield","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/white","label":"Related set: horse","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:enderman","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:horse/markings_white","name":"Horse / Markings White","entry_type":"mob","description":"A horse is a passive mob that can be ridden when tamed and saddled, and can wear horse armor. Different horses have different run speeds, jump heights and health points, and these attributes can be inherited and improved through breeding.","history":[{"version":"1, 2013","status":"added","notes":"Added horses and ponies to the April Fools update, Minecraft 2.0 . Horses are actually retextured cows and ponies are actually retextured pigs."},{"version":"1.6.1 13w16a","status":"added","notes":"Added horses."},{"version":"13w22a","status":"added","notes":"added to horses."}],"colors":{"primary":"#ffffff","dominant_hex":"#fcfcfc","average_hex":"#ffffff","hue_group":"neutral","lightness":1.0,"saturation":0.0,"palette":["#fcfcfc"],"color_groups":[{"hex":"#fcfcfc","weight":1.0,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/horse_markings_white.png","family":"horse","relations":[{"type":"variants","target":"minecraft:horse/black","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/black","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/brown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/brown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/chestnut","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/chestnut","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/creamy","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/creamy","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/darkbrown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/darkbrown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/gray","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/gray","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_blackdots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_blackdots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitedots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitedots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitefield","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitefield","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/white","label":"Related set: horse","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dragon_exploding","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitedots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:horse/markings_whitedots","name":"Horse / Markings Whitedots","entry_type":"mob","description":"A horse is a passive mob that can be ridden when tamed and saddled, and can wear horse armor. Different horses have different run speeds, jump heights and health points, and these attributes can be inherited and improved through breeding.","history":[{"version":"1, 2013","status":"added","notes":"Added horses and ponies to the April Fools update, Minecraft 2.0 . Horses are actually retextured cows and ponies are actually retextured pigs."},{"version":"1.6.1 13w16a","status":"added","notes":"Added horses."},{"version":"13w22a","status":"added","notes":"added to horses."}],"colors":{"primary":"#f5f5f5","dominant_hex":"#fcfcfc","average_hex":"#f5f5f5","hue_group":"neutral","lightness":0.9608,"saturation":0.0,"palette":["#fcfcfc","#f4f4f4","#bcbcbc","#ececec","#d6d6d6","#e4e4e4"],"color_groups":[{"hex":"#fcfcfc","weight":0.684,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.1043,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcbc","weight":0.0613,"lightness":0.7373,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ececec","weight":0.0583,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d6d6d6","weight":0.046,"lightness":0.8392,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.046,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/horse_markings_whitedots.png","family":"horse","relations":[{"type":"variants","target":"minecraft:horse/black","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/black","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/brown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/brown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/chestnut","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/chestnut","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/creamy","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/creamy","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/darkbrown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/darkbrown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/gray","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/gray","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_blackdots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_blackdots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_white","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitefield","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitefield","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/white","label":"Related set: horse","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_exploding","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:horse/markings_whitefield","name":"Horse / Markings Whitefield","entry_type":"mob","description":"A horse is a passive mob that can be ridden when tamed and saddled, and can wear horse armor. Different horses have different run speeds, jump heights and health points, and these attributes can be inherited and improved through breeding.","history":[{"version":"1, 2013","status":"added","notes":"Added horses and ponies to the April Fools update, Minecraft 2.0 . Horses are actually retextured cows and ponies are actually retextured pigs."},{"version":"1.6.1 13w16a","status":"added","notes":"Added horses."},{"version":"13w22a","status":"added","notes":"added to horses."}],"colors":{"primary":"#e7e7e7","dominant_hex":"#fcfcfc","average_hex":"#e7e7e7","hue_group":"neutral","lightness":0.9059,"saturation":0.0,"palette":["#fcfcfc","#cecece","#e4e4e4","#ececec","#dcdcdc","#f4f4f4"],"color_groups":[{"hex":"#fcfcfc","weight":0.2853,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cecece","weight":0.25,"lightness":0.8078,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.1294,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ececec","weight":0.1206,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.1118,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.1029,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/horse_markings_whitefield.png","family":"horse","relations":[{"type":"variants","target":"minecraft:horse/black","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/black","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/brown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/brown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/chestnut","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/chestnut","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/creamy","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/creamy","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/darkbrown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/darkbrown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/gray","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/gray","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_blackdots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_blackdots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_white","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitedots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitedots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/white","label":"Related set: horse","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool_undercoat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:horse/white","name":"Horse / White","entry_type":"mob","description":"A horse is a passive mob that can be ridden when tamed and saddled, and can wear horse armor. Different horses have different run speeds, jump heights and health points, and these attributes can be inherited and improved through breeding.","history":[{"version":"1, 2013","status":"added","notes":"Added horses and ponies to the April Fools update, Minecraft 2.0 . Horses are actually retextured cows and ponies are actually retextured pigs."},{"version":"1.6.1 13w16a","status":"added","notes":"Added horses."},{"version":"13w22a","status":"added","notes":"added to horses."}],"colors":{"primary":"#b8b8b8","dominant_hex":"#9c9c9c","average_hex":"#b8b8b8","hue_group":"neutral","lightness":0.7216,"saturation":0.0,"palette":["#9c9c9c","#cccccc","#bcbcbc","#b4b4b4","#dcdcdc","#4f4540"],"color_groups":[{"hex":"#9c9c9c","weight":0.2585,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.1968,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcbc","weight":0.1738,"lightness":0.7373,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.1712,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.1703,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4f4540","weight":0.0295,"lightness":0.2804,"saturation":0.1049,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/horse_white.png","family":"horse","relations":[{"type":"variants","target":"minecraft:horse/black","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/black","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/brown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/brown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/chestnut","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/chestnut","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/creamy","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/creamy","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/darkbrown","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/darkbrown","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/gray","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/gray","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_blackdots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_blackdots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_white","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_white","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitedots","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitedots","label":"Related set: horse","confidence":0.8},{"type":"variants","target":"minecraft:horse/markings_whitefield","label":"Same family: horse","confidence":0.75},{"type":"related_sets","target":"minecraft:horse/markings_whitefield","label":"Related set: horse","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:tropical_a","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white_splotched","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:horse_spawn_egg","name":"Horse Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#5d3d1c","dominant_hex":"#653d0f","average_hex":"#5d3d1c","hue_group":"yellow","lightness":0.2373,"saturation":0.5372,"palette":["#653d0f","#8b5d2d","#402509","#291904","#040404","#e7d4c4"],"color_groups":[{"hex":"#653d0f","weight":0.2727,"lightness":0.2275,"saturation":0.7414,"hue_group":"yellow"},{"hex":"#8b5d2d","weight":0.2475,"lightness":0.3608,"saturation":0.5109,"hue_group":"yellow"},{"hex":"#402509","weight":0.2222,"lightness":0.1431,"saturation":0.7534,"hue_group":"yellow"},{"hex":"#291904","weight":0.1566,"lightness":0.0882,"saturation":0.8222,"hue_group":"yellow"},{"hex":"#040404","weight":0.0556,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e7d4c4","weight":0.0455,"lightness":0.8373,"saturation":0.4217,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/horse_spawn_egg.png","family":"horse_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:debug_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_chest_boat","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:host_armor_trim_smithing_template","name":"Host Armor Trim Smithing Template","entry_type":"item","description":"Host armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, terracotta, and diamonds.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added the host armor trim smithing template."}],"colors":{"primary":"#54473e","dominant_hex":"#7f5f4f","average_hex":"#54473e","hue_group":"red","lightness":0.2863,"saturation":0.1507,"palette":["#7f5f4f","#5c4434","#4c342c","#342424","#241414","#3cb9c6"],"color_groups":[{"hex":"#7f5f4f","weight":0.2788,"lightness":0.4039,"saturation":0.233,"hue_group":"red"},{"hex":"#5c4434","weight":0.2606,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#4c342c","weight":0.1515,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#342424","weight":0.1455,"lightness":0.1725,"saturation":0.1818,"hue_group":"red"},{"hex":"#241414","weight":0.103,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#3cb9c6","weight":0.0606,"lightness":0.5059,"saturation":0.5476,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/host_armor_trim_smithing_template.png","family":"host_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raiser_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_lava_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_upgrade_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_chirp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_spear","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:howl_pottery_sherd","name":"Howl Pottery Sherd","entry_type":"item","description":"A howl pottery sherd is a pottery sherd that depicts a wolf. It can be found in trail ruins.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added howl pottery shards."}],"colors":{"primary":"#6c3d32","dominant_hex":"#5c342c","average_hex":"#6c3d32","hue_group":"red","lightness":0.3098,"saturation":0.3671,"palette":["#5c342c","#734334","#844c3c","#995949","#44241c","#542c24"],"color_groups":[{"hex":"#5c342c","weight":0.2484,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#734334","weight":0.1847,"lightness":0.3275,"saturation":0.3772,"hue_group":"red"},{"hex":"#844c3c","weight":0.1592,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#995949","weight":0.1529,"lightness":0.4431,"saturation":0.354,"hue_group":"red"},{"hex":"#44241c","weight":0.1465,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#542c24","weight":0.1083,"lightness":0.2353,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/howl_pottery_sherd.png","family":"howl_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blade_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:angler_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:burn_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:husk","name":"Husk","entry_type":"mob","description":"A husk is a variant of the zombie that spawns in deserts. They function similarly to zombies, except they do not burn in sunlight, and they inflict Hunger with their unarmed attacks.","history":[{"version":"1.10 16w20a","status":"added","notes":"Added husks and baby husks."},{"version":"wiki-history","status":"added","notes":"Added husk spawn eggs , which husks can be spawned from."},{"version":"wiki-history","status":"added","notes":"Added exclusive sounds for husks: their sounds are a more raspy version of regular zombie sounds. Before this, husks used to sound like regular zombies."}],"colors":{"primary":"#7a6a4a","dominant_hex":"#362b1c","average_hex":"#7a6a4a","hue_group":"yellow","lightness":0.3843,"saturation":0.2449,"palette":["#362b1c","#655a47","#4e4633","#d5bb7f","#b79f67","#968660"],"color_groups":[{"hex":"#362b1c","weight":0.2154,"lightness":0.1608,"saturation":0.3171,"hue_group":"yellow"},{"hex":"#655a47","weight":0.1875,"lightness":0.3373,"saturation":0.1744,"hue_group":"yellow"},{"hex":"#4e4633","weight":0.1731,"lightness":0.2529,"saturation":0.2093,"hue_group":"yellow"},{"hex":"#d5bb7f","weight":0.1588,"lightness":0.6667,"saturation":0.5059,"hue_group":"yellow"},{"hex":"#b79f67","weight":0.1427,"lightness":0.5608,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#968660","weight":0.1225,"lightness":0.4824,"saturation":0.2195,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/zombie/husk.png","family":"husk","relations":[{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_ropes","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:husk_spawn_egg","name":"Husk Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#746547","dominant_hex":"#4c412e","average_hex":"#746547","hue_group":"yellow","lightness":0.3667,"saturation":0.2406,"palette":["#4c412e","#cdae76","#91815e","#6f5f4c","#19150a","#5c5444"],"color_groups":[{"hex":"#4c412e","weight":0.2313,"lightness":0.2392,"saturation":0.2459,"hue_group":"yellow"},{"hex":"#cdae76","weight":0.209,"lightness":0.6333,"saturation":0.4652,"hue_group":"yellow"},{"hex":"#91815e","weight":0.194,"lightness":0.4686,"saturation":0.2134,"hue_group":"yellow"},{"hex":"#6f5f4c","weight":0.1866,"lightness":0.3667,"saturation":0.1872,"hue_group":"yellow"},{"hex":"#19150a","weight":0.1269,"lightness":0.0686,"saturation":0.4286,"hue_group":"yellow"},{"hex":"#5c5444","weight":0.0522,"lightness":0.3137,"saturation":0.15,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/husk_spawn_egg.png","family":"husk_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armor_stand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:command_block_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:ice","name":"Ice","entry_type":"block","description":"Ice is a transparent block formed from frozen water, which it can melt into if broken or exposed to bright light. Its top face is slippery for most entities and causes ridden boats to move at high speeds.","history":[{"version":"v1.0.4","status":"added","notes":"Added ice."}],"colors":{"primary":"#92b8fe","dominant_hex":"#94bcfc","average_hex":"#92b8fe","hue_group":"blue","lightness":0.7843,"saturation":0.9818,"palette":["#94bcfc","#8cb4fc","#84acfc","#a4c4fc","#bcd4fc","#ccdcfc"],"color_groups":[{"hex":"#94bcfc","weight":0.4258,"lightness":0.7843,"saturation":0.9455,"hue_group":"blue"},{"hex":"#8cb4fc","weight":0.2344,"lightness":0.7686,"saturation":0.9492,"hue_group":"blue"},{"hex":"#84acfc","weight":0.1836,"lightness":0.7529,"saturation":0.9524,"hue_group":"blue"},{"hex":"#a4c4fc","weight":0.125,"lightness":0.8157,"saturation":0.9362,"hue_group":"blue"},{"hex":"#bcd4fc","weight":0.0195,"lightness":0.8627,"saturation":0.9143,"hue_group":"blue"},{"hex":"#ccdcfc","weight":0.0117,"lightness":0.8941,"saturation":0.8889,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/ice.png","family":"ice","relations":[{"type":"visual_neighbors","target":"minecraft:frosted_ice","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_ice","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_ice","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_cluster","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:frosted_ice","label":"Palette proche: Frosted Ice","confidence":0.94},{"type":"color_neighbors","target":"minecraft:packed_ice","label":"Palette proche: Packed Ice","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_ice","label":"Palette proche: Blue Ice","confidence":0.938},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass","label":"Palette proche: Light Blue Stained Glass","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.58},{"type":"color_neighbors","target":"minecraft:diamond_block","label":"Palette proche: Diamond Block","confidence":0.58},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Palette proche: Light Blue Stained Glass Pane","confidence":0.58},{"type":"color_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Palette proche: Light Blue Glazed Terracotta","confidence":0.58},{"type":"color_neighbors","target":"minecraft:clay","label":"Palette proche: Clay","confidence":0.58},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.58},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par sous-ton: Cobweb","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par sous-ton: White Carpet","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par sous-ton: White Wool","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par sous-ton: White Concrete Powder","confidence":0.58},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par sous-ton: Light","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.58},{"type":"color_analogous","target":"minecraft:frosted_ice","label":"Couleurs analogues: Frosted Ice","confidence":0.96},{"type":"color_analogous","target":"minecraft:packed_ice","label":"Couleurs analogues: Packed Ice","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_ice","label":"Couleurs analogues: Blue Ice","confidence":0.951},{"type":"color_analogous","target":"minecraft:lapis_block","label":"Couleurs analogues: Lapis Block","confidence":0.881},{"type":"color_analogous","target":"minecraft:spawner","label":"Couleurs analogues: Spawner","confidence":0.857},{"type":"color_analogous","target":"minecraft:light_blue_stained_glass_pane","label":"Couleurs analogues: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_analogous","target":"minecraft:light_blue_stained_glass","label":"Couleurs analogues: Light Blue Stained Glass","confidence":0.84},{"type":"color_analogous","target":"minecraft:tube_coral_fan","label":"Couleurs analogues: Tube Coral Fan","confidence":0.822},{"type":"color_complement","target":"minecraft:yellow_terracotta","label":"Contraste complementaire: Yellow Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:honey_block","label":"Contraste complementaire: Honey Block","confidence":0.947},{"type":"color_complement","target":"minecraft:short_dry_grass","label":"Contraste complementaire: Short Dry Grass","confidence":0.933},{"type":"color_complement","target":"minecraft:torch","label":"Contraste complementaire: Torch","confidence":0.928},{"type":"color_complement","target":"minecraft:wall_torch","label":"Contraste complementaire: Wall Torch","confidence":0.928},{"type":"color_complement","target":"minecraft:oak_hanging_sign","label":"Contraste complementaire: Oak Hanging Sign","confidence":0.917},{"type":"color_complement","target":"minecraft:oak_wall_hanging_sign","label":"Contraste complementaire: Oak Wall Hanging Sign","confidence":0.917},{"type":"color_complement","target":"minecraft:stripped_oak_log","label":"Contraste complementaire: Stripped Oak Log","confidence":0.917},{"type":"color_triad","target":"minecraft:tall_seagrass","label":"Harmonie triadique: Tall Seagrass","confidence":0.96},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.96},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.944},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.944},{"type":"color_triad","target":"minecraft:pink_stained_glass_pane","label":"Harmonie triadique: Pink Stained Glass Pane","confidence":0.943},{"type":"color_triad","target":"minecraft:pink_glazed_terracotta","label":"Harmonie triadique: Pink Glazed Terracotta","confidence":0.942},{"type":"color_triad","target":"minecraft:pink_stained_glass","label":"Harmonie triadique: Pink Stained Glass","confidence":0.937},{"type":"color_triad","target":"minecraft:pink_shulker_box","label":"Harmonie triadique: Pink Shulker Box","confidence":0.933},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.802},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.802},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.796},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.796},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.772},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.769},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.768},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.68},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.645},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.645},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.645},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.645},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.634},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.629},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.627}],"category":"natural"},{"id":"minecraft:illusioner","name":"Illusioner","entry_type":"mob","description":"The illusioner is an unused illager armed with a bow. It attacks using illusions and can also fire arrows.","history":[{"version":"1.12 17w16a","status":"added","notes":"Added illusioners."},{"version":"18w46a","status":"added","notes":"added to illusioners."}],"colors":{"primary":"#375b76","dominant_hex":"#145c94","average_hex":"#375b76","hue_group":"cyan","lightness":0.3392,"saturation":0.3642,"palette":["#145c94","#8b9697","#4c5155","#253136","#175882","#0c4a7a"],"color_groups":[{"hex":"#145c94","weight":0.2198,"lightness":0.3294,"saturation":0.7619,"hue_group":"cyan"},{"hex":"#8b9697","weight":0.1974,"lightness":0.5686,"saturation":0.0545,"hue_group":"neutral"},{"hex":"#4c5155","weight":0.1735,"lightness":0.3157,"saturation":0.0559,"hue_group":"neutral"},{"hex":"#253136","weight":0.1554,"lightness":0.1784,"saturation":0.1868,"hue_group":"cyan"},{"hex":"#175882","weight":0.1346,"lightness":0.3,"saturation":0.6993,"hue_group":"cyan"},{"hex":"#0c4a7a","weight":0.1193,"lightness":0.2627,"saturation":0.8209,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/illager/illusioner.png","family":"illusioner","relations":[{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_bioluminescent_layer","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_1","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/yellow_blue","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:infested_chiseled_stone_bricks","name":"Infested Chiseled Stone Bricks","entry_type":"block","description":"An infested block is a stone, stone variant or deepslate block inhabited by a silverfish, which can break out if it is mined or a nearby silverfish is attacked. Infested blocks break more quickly, do not drop as items and can be safely cleaned of infestation using Silk Touch.","history":[{"version":"1.8","status":"added","notes":"Added monster eggs."},{"version":"1.7.2 13w36a","status":"added","notes":"Added mossy stone brick monster egg, cracked stone brick monster egg and chiseled stone brick monster egg variants, likely as a fix for MC-7449 . These are available in the Creative inventory."},{"version":"1.17 21w10a","status":"added","notes":"Added infested deepslate."}],"colors":{"primary":"#787778","dominant_hex":"#5e5e5e","average_hex":"#787778","hue_group":"neutral","lightness":0.4686,"saturation":0.0042,"palette":["#5e5e5e","#7c7c7c","#9c9c9c","#8c8c8c","#6c6c6c","#7c747c"],"color_groups":[{"hex":"#5e5e5e","weight":0.2969,"lightness":0.3686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1641,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.1602,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1445,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1172,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c747c","weight":0.1172,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chiseled_stone_bricks.png","family":"infested_chiseled_stone_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bush","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vine","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lodestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_bricks","label":"Palette proche: Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bush","label":"Palette proche: Bush","confidence":0.94},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_stairs","label":"Pont de nuance par palette: Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_wall","label":"Pont de nuance par palette: Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_bricks","label":"Pont de nuance par palette: Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:infested_cobblestone","name":"Infested Cobblestone","entry_type":"block","description":"An infested block is a stone, stone variant or deepslate block inhabited by a silverfish, which can break out if it is mined or a nearby silverfish is attacked. Infested blocks break more quickly, do not drop as items and can be safely cleaned of infestation using Silk Touch.","history":[{"version":"1.8","status":"added","notes":"Added monster eggs."},{"version":"1.7.2 13w36a","status":"added","notes":"Added mossy stone brick monster egg, cracked stone brick monster egg and chiseled stone brick monster egg variants, likely as a fix for MC-7449 . These are available in the Creative inventory."},{"version":"1.17 21w10a","status":"added","notes":"Added infested deepslate."}],"colors":{"primary":"#807f80","dominant_hex":"#8c848c","average_hex":"#807f80","hue_group":"neutral","lightness":0.5,"saturation":0.0039,"palette":["#8c848c","#646464","#6c6c6c","#a4a4a4","#b4b4b4","#545454"],"color_groups":[{"hex":"#8c848c","weight":0.293,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#646464","weight":0.2383,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1914,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.1445,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.0898,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.043,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cobblestone.png","family":"infested_cobblestone","relations":[{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cobblestone","label":"Palette proche: Cobblestone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobblestone_slab","label":"Palette proche: Cobblestone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobblestone_stairs","label":"Palette proche: Cobblestone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobblestone_wall","label":"Palette proche: Cobblestone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:cobblestone","label":"Pont de nuance par palette: Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone_slab","label":"Pont de nuance par palette: Cobblestone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone_stairs","label":"Pont de nuance par palette: Cobblestone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone_wall","label":"Pont de nuance par palette: Cobblestone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55}],"category":""},{"id":"minecraft:infested_cracked_stone_bricks","name":"Infested Cracked Stone Bricks","entry_type":"block","description":"An infested block is a stone, stone variant or deepslate block inhabited by a silverfish, which can break out if it is mined or a nearby silverfish is attacked. Infested blocks break more quickly, do not drop as items and can be safely cleaned of infestation using Silk Touch.","history":[{"version":"1.8","status":"added","notes":"Added monster eggs."},{"version":"1.7.2 13w36a","status":"added","notes":"Added mossy stone brick monster egg, cracked stone brick monster egg and chiseled stone brick monster egg variants, likely as a fix for MC-7449 . These are available in the Creative inventory."},{"version":"1.17 21w10a","status":"added","notes":"Added infested deepslate."}],"colors":{"primary":"#767676","dominant_hex":"#7c7c7c","average_hex":"#767676","hue_group":"neutral","lightness":0.4627,"saturation":0.0,"palette":["#7c7c7c","#929292","#646464","#7c747c","#5c5c5c","#6c6c6c"],"color_groups":[{"hex":"#7c7c7c","weight":0.2344,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#929292","weight":0.2109,"lightness":0.5725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#646464","weight":0.1797,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c747c","weight":0.1602,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1211,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0938,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cracked_stone_bricks.png","family":"infested_cracked_stone_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vine","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bush","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lodestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_bricks","label":"Palette proche: Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_stairs","label":"Pont de nuance par palette: Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_wall","label":"Pont de nuance par palette: Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_bricks","label":"Pont de nuance par palette: Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55}],"category":"building"},{"id":"minecraft:infested_deepslate","name":"Infested Deepslate","entry_type":"block","description":"An infested block is a stone, stone variant or deepslate block inhabited by a silverfish, which can break out if it is mined or a nearby silverfish is attacked. Infested blocks break more quickly, do not drop as items and can be safely cleaned of infestation using Silk Touch.","history":[{"version":"1.8","status":"added","notes":"Added monster eggs."},{"version":"1.7.2 13w36a","status":"added","notes":"Added mossy stone brick monster egg, cracked stone brick monster egg and chiseled stone brick monster egg variants, likely as a fix for MC-7449 . These are available in the Creative inventory."},{"version":"1.17 21w10a","status":"added","notes":"Added infested deepslate."}],"colors":{"primary":"#505053","dominant_hex":"#545454","average_hex":"#505053","hue_group":"neutral","lightness":0.3196,"saturation":0.0184,"palette":["#545454","#3c3c44","#646464","#2c2c34","#7c7c7c"],"color_groups":[{"hex":"#545454","weight":0.3047,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.2734,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#646464","weight":0.2266,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c34","weight":0.1016,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.0938,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/deepslate.png","family":"infested_deepslate","relations":[{"type":"visual_neighbors","target":"minecraft:deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blast_furnace","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bedrock","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_coal_ore","label":"Palette proche: Deepslate Coal Ore","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_bridge","target":"minecraft:deepslate","label":"Pont de nuance par palette: Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_coal_ore","label":"Pont de nuance par palette: Deepslate Coal Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.627},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.604},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.603},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.603},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.594},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.571},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.567},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.567}],"category":""},{"id":"minecraft:infested_mossy_stone_bricks","name":"Infested Mossy Stone Bricks","entry_type":"block","description":"An infested block is a stone, stone variant or deepslate block inhabited by a silverfish, which can break out if it is mined or a nearby silverfish is attacked. Infested blocks break more quickly, do not drop as items and can be safely cleaned of infestation using Silk Touch.","history":[{"version":"1.8","status":"added","notes":"Added monster eggs."},{"version":"1.7.2 13w36a","status":"added","notes":"Added mossy stone brick monster egg, cracked stone brick monster egg and chiseled stone brick monster egg variants, likely as a fix for MC-7449 . These are available in the Creative inventory."},{"version":"1.17 21w10a","status":"added","notes":"Added infested deepslate."}],"colors":{"primary":"#737969","dominant_hex":"#6f824d","average_hex":"#737969","hue_group":"neutral","lightness":0.4431,"saturation":0.0708,"palette":["#6f824d","#797279","#7c7c7c","#929292","#586540","#5f5f5f"],"color_groups":[{"hex":"#6f824d","weight":0.1992,"lightness":0.4059,"saturation":0.256,"hue_group":"yellow"},{"hex":"#797279","weight":0.1875,"lightness":0.4608,"saturation":0.0298,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1836,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#929292","weight":0.1797,"lightness":0.5725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#586540","weight":0.1406,"lightness":0.3235,"saturation":0.2242,"hue_group":"yellow"},{"hex":"#5f5f5f","weight":0.1094,"lightness":0.3725,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mossy_stone_bricks.png","family":"infested_mossy_stone_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stonecutter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_lichen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_slab","label":"Palette proche: Mossy Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_stairs","label":"Palette proche: Mossy Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_wall","label":"Palette proche: Mossy Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_bricks","label":"Palette proche: Mossy Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone","label":"Palette proche: Mossy Cobblestone","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Palette proche: Mossy Cobblestone Slab","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Palette proche: Mossy Cobblestone Stairs","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Palette proche: Mossy Cobblestone Wall","confidence":0.907},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.9},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.9},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par palette: Mossy Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par palette: Mossy Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par palette: Mossy Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_bricks","label":"Pont de nuance par palette: Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par palette: Mossy Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par palette: Mossy Cobblestone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par palette: Mossy Cobblestone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par palette: Mossy Cobblestone Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55}],"category":"building"},{"id":"minecraft:infested_stone","name":"Infested Stone","entry_type":"block","description":"An infested block is a stone, stone variant or deepslate block inhabited by a silverfish, which can break out if it is mined or a nearby silverfish is attacked. Infested blocks break more quickly, do not drop as items and can be safely cleaned of infestation using Silk Touch.","history":[{"version":"1.8","status":"added","notes":"Added monster eggs."},{"version":"1.7.2 13w36a","status":"added","notes":"Added mossy stone brick monster egg, cracked stone brick monster egg and chiseled stone brick monster egg variants, likely as a fix for MC-7449 . These are available in the Creative inventory."},{"version":"1.17 21w10a","status":"added","notes":"Added infested deepslate."}],"colors":{"primary":"#7e7e7e","dominant_hex":"#7c7c7c","average_hex":"#7e7e7e","hue_group":"neutral","lightness":0.4941,"saturation":0.0,"palette":["#7c7c7c","#747474","#8c8c8c","#6c6c6c"],"color_groups":[{"hex":"#7c7c7c","weight":0.4609,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.2773,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1953,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0664,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stone.png","family":"infested_stone","relations":[{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_stairs","label":"Pont de nuance par palette: Stone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":""},{"id":"minecraft:infested_stone_bricks","name":"Infested Stone Bricks","entry_type":"block","description":"An infested block is a stone, stone variant or deepslate block inhabited by a silverfish, which can break out if it is mined or a nearby silverfish is attacked. Infested blocks break more quickly, do not drop as items and can be safely cleaned of infestation using Silk Touch.","history":[{"version":"1.8","status":"added","notes":"Added monster eggs."},{"version":"1.7.2 13w36a","status":"added","notes":"Added mossy stone brick monster egg, cracked stone brick monster egg and chiseled stone brick monster egg variants, likely as a fix for MC-7449 . These are available in the Creative inventory."},{"version":"1.17 21w10a","status":"added","notes":"Added infested deepslate."}],"colors":{"primary":"#7a7a7a","dominant_hex":"#696969","average_hex":"#7a7a7a","hue_group":"neutral","lightness":0.4784,"saturation":0.0,"palette":["#696969","#7c7c7c","#8c8c8c","#7c747c","#9c9c9c","#5c5c5c"],"color_groups":[{"hex":"#696969","weight":0.2383,"lightness":0.4118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.2344,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1641,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c747c","weight":0.1523,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.1211,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0898,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stone_bricks.png","family":"infested_stone_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bush","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_bricks","label":"Palette proche: Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_stairs","label":"Pont de nuance par palette: Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_wall","label":"Pont de nuance par palette: Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_bricks","label":"Pont de nuance par palette: Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"building"},{"id":"minecraft:ink_sac","name":"Ink Sac","entry_type":"item","description":"An ink sac is an item dropped by a squid upon death used to create black dye, dark prismarine,\u200c[BE only] as well as books and quills.","history":[{"version":"1.2","status":"added","notes":"Added ink sacks, together with all other dyes."},{"version":"1.4.2 12w34a","status":"added","notes":"Added the ability to dye leather armor and wolf collars."},{"version":"14w30a","status":"added","notes":"Added banners , which can be dyed with ink sacs."}],"colors":{"primary":"#494354","dominant_hex":"#363650","average_hex":"#494354","hue_group":"neutral","lightness":0.2961,"saturation":0.1126,"palette":["#363650","#886a6f","#1c1c34","#4c444c","#545464","#646474"],"color_groups":[{"hex":"#363650","weight":0.3492,"lightness":0.2627,"saturation":0.194,"hue_group":"blue"},{"hex":"#886a6f","weight":0.1746,"lightness":0.4745,"saturation":0.124,"hue_group":"red"},{"hex":"#1c1c34","weight":0.1587,"lightness":0.1569,"saturation":0.3,"hue_group":"blue"},{"hex":"#4c444c","weight":0.127,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#545464","weight":0.0952,"lightness":0.3608,"saturation":0.087,"hue_group":"neutral"},{"hex":"#646474","weight":0.0952,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/ink_sac.png","family":"ink_sac","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:wayfinder_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ominous_trial_key","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snout_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mellohi","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_blocks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_horn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_13","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:iron_axe","name":"Iron Axe","entry_type":"item","description":"An iron axe is a variant of axe and can be crafted from iron ingots. It can be used to cut down trees faster, to strip logs and scrape copper-based blocks, and as a melee weapon that disables shields. It is the third-highest tier of axe, having higher mining efficiency, attack speed, durability, and enchantability than a copper axe.","history":[{"version":"0.31 20100110","status":"added","notes":"Added iron axes."},{"version":"3","status":"added","notes":"added for iron axes, which adds 1 damage and 0.5 seconds (10 game ticks ) of shield stunning per level and is mutually exclusive with Sharpness ."}],"colors":{"primary":"#6d6556","dominant_hex":"#614419","average_hex":"#6d6556","hue_group":"neutral","lightness":0.3824,"saturation":0.1179,"palette":["#614419","#c1c1c1","#2c1c0c","#1c1c1c","#444444","#fcfcfc"],"color_groups":[{"hex":"#614419","weight":0.2833,"lightness":0.2392,"saturation":0.5902,"hue_group":"yellow"},{"hex":"#c1c1c1","weight":0.2333,"lightness":0.7569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c1c0c","weight":0.1667,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#1c1c1c","weight":0.1167,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.1167,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.0833,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_axe.png","family":"iron_tools","relations":[{"type":"variants","target":"minecraft:iron_hoe","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_hoe","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_pickaxe","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_pickaxe","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_shovel","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_shovel","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_sword","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_sword","label":"Related set: iron_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:iron_tools","label":"Related set: iron_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:stray_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coast_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wild_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"tool"},{"id":"minecraft:iron_bars","name":"Iron Bars","entry_type":"block","description":"Iron bars are the iron variant of bars.","history":[{"version":"1.8","status":"added","notes":"Added iron bars."},{"version":"1.21.5 25w02a","status":"added","notes":"Added new break, place, step, fall and hit sounds."}],"colors":{"primary":"#898b88","dominant_hex":"#747c6c","average_hex":"#898b88","hue_group":"neutral","lightness":0.5392,"saturation":0.0128,"palette":["#747c6c","#6c6c6c","#9c9c9c","#acacac","#c4c4c4"],"color_groups":[{"hex":"#747c6c","weight":0.319,"lightness":0.4549,"saturation":0.069,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.25,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.1724,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.1293,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.1293,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/iron_bars.png","family":"iron_bars","relations":[{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_pad","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.914},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.914},{"type":"color_neighbors","target":"minecraft:tall_grass","label":"Palette proche: Tall Grass","confidence":0.91},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.906},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.906},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.904},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.9},{"type":"color_neighbors","target":"minecraft:mangrove_leaves","label":"Palette proche: Mangrove Leaves","confidence":0.9},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.895},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.895},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.894},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.894},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tall_grass","label":"Pont de nuance par palette: Tall Grass","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:leaf_litter","label":"Pont de nuance par palette: Leaf Litter","confidence":0.86},{"type":"color_bridge","target":"minecraft:mangrove_leaves","label":"Pont de nuance par palette: Mangrove Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:dried_kelp_block","label":"Contraste clair sombre: Dried Kelp Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55}],"category":""},{"id":"minecraft:iron_block","name":"Iron Block","entry_type":"block","description":"A block of iron, known internally as an iron block, is a precious metal block equivalent to nine iron ingots.","history":[{"version":"0.26","status":"added","notes":"Added blocks of iron."},{"version":"1.21.5 25w02a","status":"added","notes":"Added new break, place, step, fall and hit sounds."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of iron, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#dcdcdc","dominant_hex":"#e4e4e4","average_hex":"#dcdcdc","hue_group":"neutral","lightness":0.8627,"saturation":0.0,"palette":["#e4e4e4","#d9d9d9","#c9c6c6","#b9b9b9","#f4f4f4","#ececec"],"color_groups":[{"hex":"#e4e4e4","weight":0.4336,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d9d9d9","weight":0.1641,"lightness":0.851,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c9c6c6","weight":0.1367,"lightness":0.7824,"saturation":0.027,"hue_group":"neutral"},{"hex":"#b9b9b9","weight":0.0977,"lightness":0.7255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.0898,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ececec","weight":0.0781,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/iron_block.png","family":"iron_block","relations":[{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_wire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_trapdoor","label":"Palette proche: Iron Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:redstone_wire","label":"Palette proche: Redstone Wire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:white_stained_glass_pane","label":"Palette proche: White Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.936},{"type":"color_neighbors","target":"minecraft:water","label":"Palette proche: Water","confidence":0.936},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.921},{"type":"color_neighbors","target":"minecraft:white_stained_glass","label":"Palette proche: White Stained Glass","confidence":0.904},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.9},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.9},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.9},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_trapdoor","label":"Pont de nuance par palette: Iron Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:bubble_column","label":"Pont de nuance par palette: Bubble Column","confidence":0.86},{"type":"color_bridge","target":"minecraft:water","label":"Pont de nuance par palette: Water","confidence":0.86},{"type":"color_bridge","target":"minecraft:leaf_litter","label":"Pont de nuance par palette: Leaf Litter","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.759},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.751},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.746},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.729},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.726},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.725},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.725},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.725}],"category":"resource"},{"id":"minecraft:iron_boots","name":"Iron Boots","entry_type":"item","description":"Iron boots are a variant of boots that are crafted from iron ingots. They are the third-highest tier of boots, having higher armor points than leather, golden, copper, and chainmail boots.","history":[{"version":"0.31 20091231-2147","status":"added","notes":"Added iron boots, which were taken from one if notch 's games Legend of the Chambered 2"},{"version":"20100218","status":"added","notes":"Added a model for iron boots."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#656565","dominant_hex":"#1c1c1c","average_hex":"#656565","hue_group":"neutral","lightness":0.3961,"saturation":0.0,"palette":["#1c1c1c","#2c2c2c","#c4c4c4","#949494","#e4e4e4","#6c6c6c"],"color_groups":[{"hex":"#1c1c1c","weight":0.2955,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.25,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.1932,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.125,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.0909,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0455,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_boots.png","family":"iron_armor","relations":[{"type":"variants","target":"minecraft:iron_chestplate","label":"Same family: iron_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_chestplate","label":"Related set: iron_armor","confidence":0.8},{"type":"variants","target":"minecraft:iron_helmet","label":"Same family: iron_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_helmet","label":"Related set: iron_armor","confidence":0.8},{"type":"variants","target":"minecraft:iron_leggings","label":"Same family: iron_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_leggings","label":"Related set: iron_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:iron_armor","label":"Related set: iron_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:leather_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nautilus_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elytra","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:iron_chain","name":"Iron Chain","entry_type":"block","description":"Iron chains are metallic decoration blocks and the iron variant of the chain.","history":[{"version":"1.16 20w16a","status":"added","notes":"Added chains."},{"version":"wiki-history","status":"added","notes":"added bastion remnants , and can be found in their chests ."},{"version":"20w17a","status":"added","notes":"added for chains."}],"colors":{"primary":"#333a4a","dominant_hex":"#242c3c","average_hex":"#333a4a","hue_group":"blue","lightness":0.2451,"saturation":0.184,"palette":["#242c3c","#3c4454","#4c5464"],"color_groups":[{"hex":"#242c3c","weight":0.4643,"lightness":0.1882,"saturation":0.25,"hue_group":"blue"},{"hex":"#3c4454","weight":0.4464,"lightness":0.2824,"saturation":0.1667,"hue_group":"blue"},{"hex":"#4c5464","weight":0.0893,"lightness":0.3451,"saturation":0.1364,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/iron_chain.png","family":"iron_chain","relations":[{"type":"visual_neighbors","target":"minecraft:warped_hyphae","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stem","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spawner","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:respawn_anchor","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_gateway","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:soul_lantern","label":"Palette proche: Soul Lantern","confidence":0.905},{"type":"color_neighbors","target":"minecraft:vault","label":"Palette proche: Vault","confidence":0.862},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.815},{"type":"color_neighbors","target":"minecraft:gray_carpet","label":"Palette proche: Gray Carpet","confidence":0.812},{"type":"color_neighbors","target":"minecraft:gray_wool","label":"Palette proche: Gray Wool","confidence":0.812},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.806},{"type":"color_neighbors","target":"minecraft:lantern","label":"Palette proche: Lantern","confidence":0.797},{"type":"color_neighbors","target":"minecraft:trial_spawner","label":"Palette proche: Trial Spawner","confidence":0.794},{"type":"color_neighbors","target":"minecraft:spawner","label":"Palette proche: Spawner","confidence":0.791},{"type":"color_neighbors","target":"minecraft:blue_terracotta","label":"Palette proche: Blue Terracotta","confidence":0.772},{"type":"color_neighbors","target":"minecraft:gray_concrete_powder","label":"Palette proche: Gray Concrete Powder","confidence":0.766},{"type":"color_neighbors","target":"minecraft:gray_shulker_box","label":"Palette proche: Gray Shulker Box","confidence":0.762},{"type":"color_bridge","target":"minecraft:soul_lantern","label":"Pont de nuance par sous-ton: Soul Lantern","confidence":0.9},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par palette: Vault","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par sous-ton: Black Candle","confidence":0.848},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.846},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.846},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.841},{"type":"color_bridge","target":"minecraft:lantern","label":"Pont de nuance par palette: Lantern","confidence":0.833},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par palette: Trial Spawner","confidence":0.831},{"type":"color_bridge","target":"minecraft:spawner","label":"Pont de nuance par sous-ton: Spawner","confidence":0.828},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par palette: Blue Terracotta","confidence":0.812},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.69},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.682},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.681},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.681},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.657},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.64},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.64},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.64}],"category":""},{"id":"minecraft:iron_chestplate","name":"Iron Chestplate","entry_type":"item","description":"An iron chestplate is a variant of chestplate that is crafted from iron ingots. It is the third-highest tier of chestplate, having higher armor points than golden and chainmail chestplates.","history":[{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added plate armor, which included chestplates."},{"version":"20091231-2147","status":"added","notes":"Added the iron chestplate. The texture is taken from Legend of the Chambered 2 ."},{"version":"20100218","status":"added","notes":"Added a model for iron chestplates."}],"colors":{"primary":"#868686","dominant_hex":"#c4c4c4","average_hex":"#868686","hue_group":"neutral","lightness":0.5255,"saturation":0.0,"palette":["#c4c4c4","#2c2c2c","#1c1c1c","#949494","#e2e2e2","#6c6c6c"],"color_groups":[{"hex":"#c4c4c4","weight":0.3333,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.1739,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#1c1c1c","weight":0.1594,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1522,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e2e2e2","weight":0.1232,"lightness":0.8863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.058,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_chestplate.png","family":"iron_armor","relations":[{"type":"variants","target":"minecraft:iron_boots","label":"Same family: iron_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_boots","label":"Related set: iron_armor","confidence":0.8},{"type":"variants","target":"minecraft:iron_helmet","label":"Same family: iron_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_helmet","label":"Related set: iron_armor","confidence":0.8},{"type":"variants","target":"minecraft:iron_leggings","label":"Same family: iron_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_leggings","label":"Related set: iron_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:iron_armor","label":"Related set: iron_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:leather_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:milk_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nautilus_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ingot","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:iron_door","name":"Iron Door","entry_type":"block","description":"The iron door is a variant of the door made of iron that can only be opened using redstone. Iron doors are more secure than wooden and copper doors because they cannot be opened by hand and cannot be broken by zombies. They are also more resistant to explosions, and immune to fire and lava.","history":[{"version":"v1.0.1","status":"added","notes":"Added iron doors."},{"version":"1.21.5 25w02a","status":"added","notes":"Added new break, place, step, fall and hit sounds."}],"colors":{"primary":"#c2c1c1","dominant_hex":"#cccccc","average_hex":"#c2c1c1","hue_group":"neutral","lightness":0.7588,"saturation":0.0081,"palette":["#cccccc","#b5b5b5","#d4d4d4","#949494","#dcdcdc","#e4e4e4"],"color_groups":[{"hex":"#cccccc","weight":0.2981,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b5b5b5","weight":0.2404,"lightness":0.7098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d4d4d4","weight":0.1731,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1394,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.0913,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.0577,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/iron_door_top.png","family":"iron","relations":[{"type":"visual_neighbors","target":"minecraft:polished_diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_column","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leaf_litter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water","label":"Palette proche: Water","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_trapdoor","label":"Palette proche: Iron Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.94},{"type":"color_neighbors","target":"minecraft:melon_stem","label":"Palette proche: Melon Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pumpkin_stem","label":"Palette proche: Pumpkin Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Palette proche: Attached Pumpkin Stem","confidence":0.935},{"type":"color_neighbors","target":"minecraft:attached_melon_stem","label":"Palette proche: Attached Melon Stem","confidence":0.932},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.926},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.924},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:bubble_column","label":"Pont de nuance par palette: Bubble Column","confidence":0.86},{"type":"color_bridge","target":"minecraft:water","label":"Pont de nuance par palette: Water","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_trapdoor","label":"Pont de nuance par palette: Iron Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:leaf_litter","label":"Pont de nuance par palette: Leaf Litter","confidence":0.86},{"type":"color_bridge","target":"minecraft:melon_stem","label":"Pont de nuance par palette: Melon Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:pumpkin_stem","label":"Pont de nuance par palette: Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_pumpkin_stem","label":"Pont de nuance par palette: Attached Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_melon_stem","label":"Pont de nuance par palette: Attached Melon Stem","confidence":0.86},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.66},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.653},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.648},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.631},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.627},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.626},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.626},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.626}],"category":"building"},{"id":"minecraft:iron_golem","name":"Iron Golem","entry_type":"mob","description":"An iron golem is a buildable neutral mob that attacks monsters with its arms, knocking them into the air. Iron golems are created by villagers to patrol and protect their villages. Villager-created iron golems will retaliate against players if attacked, and are hostile to players that have low popularity or reputation with their village.","history":[{"version":"1.2.1 12w08a","status":"added","notes":"Added iron golems."},{"version":"1.2","status":"added","notes":"added for the iron golem."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash iron golems."}],"colors":{"primary":"#baad98","dominant_hex":"#cbac8d","average_hex":"#baad98","hue_group":"yellow","lightness":0.6627,"saturation":0.1977,"palette":["#cbac8d","#777649","#ddd2cc","#b9b2ab","#d4bcac","#c4cbcb"],"color_groups":[{"hex":"#cbac8d","weight":0.2673,"lightness":0.6745,"saturation":0.3735,"hue_group":"yellow"},{"hex":"#777649","weight":0.2044,"lightness":0.3765,"saturation":0.2396,"hue_group":"yellow"},{"hex":"#ddd2cc","weight":0.1948,"lightness":0.8333,"saturation":0.2,"hue_group":"red"},{"hex":"#b9b2ab","weight":0.1304,"lightness":0.698,"saturation":0.0909,"hue_group":"neutral"},{"hex":"#d4bcac","weight":0.1122,"lightness":0.7529,"saturation":0.3175,"hue_group":"red"},{"hex":"#c4cbcb","weight":0.091,"lightness":0.7824,"saturation":0.0631,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/iron_golem/iron_golem.png","family":"iron_golem","relations":[{"type":"visual_neighbors","target":"minecraft:cat/calico","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/siamese","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/gray","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:iron_golem_spawn_egg","name":"Iron Golem Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#92876d","dominant_hex":"#857870","average_hex":"#92876d","hue_group":"yellow","lightness":0.5,"saturation":0.1451,"palette":["#857870","#594330","#bea379","#62842f","#e1dbd8","#d0c2b6"],"color_groups":[{"hex":"#857870","weight":0.2701,"lightness":0.4804,"saturation":0.0857,"hue_group":"neutral"},{"hex":"#594330","weight":0.2184,"lightness":0.2686,"saturation":0.2993,"hue_group":"red"},{"hex":"#bea379","weight":0.1839,"lightness":0.6098,"saturation":0.3467,"hue_group":"yellow"},{"hex":"#62842f","weight":0.1207,"lightness":0.351,"saturation":0.4749,"hue_group":"yellow"},{"hex":"#e1dbd8","weight":0.1149,"lightness":0.8647,"saturation":0.1304,"hue_group":"red"},{"hex":"#d0c2b6","weight":0.092,"lightness":0.7647,"saturation":0.2167,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_golem_spawn_egg.png","family":"iron_golem_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:painting","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:command_block_minecart","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:iron_helmet","name":"Iron Helmet","entry_type":"item","description":"An iron helmet is a variant of helmet that is crafted from iron ingots. It is the fifth-highest tier of helmet, having the same armor points as a copper helmet but with higher durability.","history":[{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added plate helmets ."},{"version":"20091231-2147","status":"added","notes":"Added iron helmets. They were taken from one of notch 's games, Legend of the Chambered 2 ."},{"version":"20100218","status":"added","notes":"Added models for iron helmets."}],"colors":{"primary":"#5b5b5b","dominant_hex":"#1c1c1c","average_hex":"#5b5b5b","hue_group":"neutral","lightness":0.3569,"saturation":0.0,"palette":["#1c1c1c","#2c2c2c","#c4c4c4","#949494","#6c6c6c","#e2e2e2"],"color_groups":[{"hex":"#1c1c1c","weight":0.3462,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.2436,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.1667,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1154,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0641,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e2e2e2","weight":0.0641,"lightness":0.8863,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_helmet.png","family":"iron_armor","relations":[{"type":"variants","target":"minecraft:iron_boots","label":"Same family: iron_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_boots","label":"Related set: iron_armor","confidence":0.8},{"type":"variants","target":"minecraft:iron_chestplate","label":"Same family: iron_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_chestplate","label":"Related set: iron_armor","confidence":0.8},{"type":"variants","target":"minecraft:iron_leggings","label":"Same family: iron_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_leggings","label":"Related set: iron_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:iron_armor","label":"Related set: iron_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:chainmail_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_star","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gunpowder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:furnace_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:iron_hoe","name":"Iron Hoe","entry_type":"item","description":"An iron hoe is a variant of hoe that is crafted from iron ingots. It is used to till dirt-related blocks into farmland, and to break leaves, haybales, and sculk-related blocks faster. It is the third-highest tier of hoe, having higher mining efficiency, attack speed, durability, and enchantability than a copper hoe.","history":[{"version":"20100206-2034","status":"added","notes":"Added iron hoe."},{"version":"15w50a","status":"added","notes":"Added a sound for hoes: item.hoe.till ."}],"colors":{"primary":"#5b513f","dominant_hex":"#1c1c1c","average_hex":"#5b513f","hue_group":"yellow","lightness":0.302,"saturation":0.1818,"palette":["#1c1c1c","#4c3414","#d5d5d5","#444444","#6c4c1c","#8c6424"],"color_groups":[{"hex":"#1c1c1c","weight":0.3137,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c3414","weight":0.1961,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#d5d5d5","weight":0.1765,"lightness":0.8353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.1176,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c4c1c","weight":0.098,"lightness":0.2667,"saturation":0.5882,"hue_group":"yellow"},{"hex":"#8c6424","weight":0.098,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_hoe.png","family":"iron_tools","relations":[{"type":"variants","target":"minecraft:iron_axe","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_axe","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_pickaxe","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_pickaxe","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_shovel","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_shovel","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_sword","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_sword","label":"Related set: iron_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:iron_tools","label":"Related set: iron_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:fishing_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:iron_horse_armor","name":"Iron Horse Armor","entry_type":"item","description":"Iron horse armor is the fourth-strongest tier of horse armor. Unlike other iron items, it cannot be crafted and is only obtainable from chest loot in various structures.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added iron horse armor."},{"version":"1.9 15w31a","status":"added","notes":"added to End city chests."}],"colors":{"primary":"#615b5b","dominant_hex":"#3c3c3c","average_hex":"#615b5b","hue_group":"neutral","lightness":0.3686,"saturation":0.0319,"palette":["#3c3c3c","#290d0d","#6c6c6c","#acacac","#848484","#c7c7c7"],"color_groups":[{"hex":"#3c3c3c","weight":0.2809,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#290d0d","weight":0.2247,"lightness":0.1059,"saturation":0.5185,"hue_group":"red"},{"hex":"#6c6c6c","weight":0.1798,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.1461,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#848484","weight":0.1011,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c7c7c7","weight":0.0674,"lightness":0.7804,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_horse_armor.png","family":"iron_horse_armor","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elytra","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:iron_ingot","name":"Iron Ingot","entry_type":"item","description":"An iron ingot is a common metal ingot. It can be smelted from raw iron and is used to craft many items and tools.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added iron ingots."},{"version":"1.3.1 12w21a","status":"added","notes":"Added desert pyramids , with a hidden chest room and loot containing iron ingots."},{"version":"12w22a","status":"added","notes":"Added jungle pyramids , which contain loot chests with iron ingots."}],"colors":{"primary":"#9c9c9c","dominant_hex":"#dcdcdc","average_hex":"#9c9c9c","hue_group":"neutral","lightness":0.6118,"saturation":0.0,"palette":["#dcdcdc","#7b7b7b","#acacac","#5c5c5c","#343434","#fcfcfc"],"color_groups":[{"hex":"#dcdcdc","weight":0.2667,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7b7b7b","weight":0.2148,"lightness":0.4824,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.1704,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1556,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#343434","weight":0.0963,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.0963,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_ingot.png","family":"iron_ingot","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tipped_arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:milk_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_tears","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_boat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:iron_leggings","name":"Iron Leggings","entry_type":"item","description":"Iron leggings are a variant of leggings that are crafted from iron ingots. They are the third-highest tier of leggings, having higher armor points than chainmail leggings.","history":[{"version":"0.31 20091231-2147","status":"added","notes":"Added iron leggings, which were taken from one of Notch 's games, Legend of the Chambered 2 ."},{"version":"20100218-0011","status":"added","notes":"Added a model for iron leggings."},{"version":"1.4.6 12w50a","status":"added","notes":"Added Thorns, which can be applied to iron leggings."}],"colors":{"primary":"#696969","dominant_hex":"#1c1c1c","average_hex":"#696969","hue_group":"neutral","lightness":0.4118,"saturation":0.0,"palette":["#1c1c1c","#c4c4c4","#2c2c2c","#949494","#e3e3e3","#6c6c6c"],"color_groups":[{"hex":"#1c1c1c","weight":0.3077,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.1827,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.1731,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1731,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e3e3e3","weight":0.0865,"lightness":0.8902,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0769,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_leggings.png","family":"iron_armor","relations":[{"type":"variants","target":"minecraft:iron_boots","label":"Same family: iron_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_boots","label":"Related set: iron_armor","confidence":0.8},{"type":"variants","target":"minecraft:iron_chestplate","label":"Same family: iron_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_chestplate","label":"Related set: iron_armor","confidence":0.8},{"type":"variants","target":"minecraft:iron_helmet","label":"Same family: iron_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_helmet","label":"Related set: iron_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:iron_armor","label":"Related set: iron_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:chainmail_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nautilus_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bucket","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:iron_nautilus_armor","name":"Iron Nautilus Armor","entry_type":"item","description":"Iron nautilus armor is a type of nautilus armor that can be equipped by a nautilus that reduces the damage received to the nautilus. It is the fourth-strongest tier of nautilus armor, having higher armor points than copper nautilus armor.","history":[{"version":"1.21.11 25w41a","status":"added","notes":"Added iron nautilus armor."}],"colors":{"primary":"#707070","dominant_hex":"#545454","average_hex":"#707070","hue_group":"neutral","lightness":0.4392,"saturation":0.0,"palette":["#545454","#343434","#acacac","#848484","#6c6c6c","#dcdcdc"],"color_groups":[{"hex":"#545454","weight":0.3026,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#343434","weight":0.2303,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.1842,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#848484","weight":0.1053,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0921,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.0855,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_nautilus_armor.png","family":"iron_nautilus_armor","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:leather_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:iron_nugget","name":"Iron Nugget","entry_type":"item","description":"Iron nuggets are small pieces of iron that are used to craft various items such as iron ingots. They can be obtained by smelting iron tools or weapons or iron and chainmail armor. One iron nugget is effectively worth one-ninth of an iron ingot.","history":[{"version":"1.11.1 16w50a","status":"added","notes":"Added iron nuggets."}],"colors":{"primary":"#858d95","dominant_hex":"#606572","average_hex":"#858d95","hue_group":"neutral","lightness":0.5529,"saturation":0.0702,"palette":["#606572","#3c3c44","#dcdce4","#bcccdc","#a4b4bc","#f4f4f4"],"color_groups":[{"hex":"#606572","weight":0.3235,"lightness":0.4118,"saturation":0.0857,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.2353,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#dcdce4","weight":0.1471,"lightness":0.8784,"saturation":0.129,"hue_group":"blue"},{"hex":"#bcccdc","weight":0.1176,"lightness":0.8,"saturation":0.3137,"hue_group":"blue"},{"hex":"#a4b4bc","weight":0.0882,"lightness":0.6902,"saturation":0.1519,"hue_group":"cyan"},{"hex":"#f4f4f4","weight":0.0882,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_nugget.png","family":"iron_nugget","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_boat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:milk_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trident","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_membrane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clay_ball","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:iron_ore","name":"Iron Ore","entry_type":"block","description":"Iron ore is a mineral block typically found underground. It is a source of raw iron, which can be smelted into iron ingots. Deepslate iron ore is the deepslate variant of iron ore. It is found in deepslate layers.","history":[{"version":"0.0.14a","status":"added","notes":"Added iron ore."},{"version":"21w08a","status":"added","notes":"Added deepslate iron ore."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb iron ore, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#88817b","dominant_hex":"#7c7c7c","average_hex":"#88817b","hue_group":"neutral","lightness":0.5078,"saturation":0.0518,"palette":["#7c7c7c","#8c8c8c","#747474","#c29c84","#856f52","#6c6c6c"],"color_groups":[{"hex":"#7c7c7c","weight":0.2891,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.207,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1758,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c29c84","weight":0.1406,"lightness":0.6392,"saturation":0.337,"hue_group":"red"},{"hex":"#856f52","weight":0.1055,"lightness":0.4216,"saturation":0.2372,"hue_group":"yellow"},{"hex":"#6c6c6c","weight":0.082,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/iron_ore.png","family":"iron_ore","relations":[{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:open_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.938},{"type":"color_bridge","target":"minecraft:lever","label":"Pont de nuance par sous-ton: Lever","confidence":0.888},{"type":"color_bridge","target":"minecraft:barrel","label":"Pont de nuance par sous-ton: Barrel","confidence":0.882},{"type":"color_bridge","target":"minecraft:dirt","label":"Pont de nuance par sous-ton: Dirt","confidence":0.877},{"type":"color_bridge","target":"minecraft:farmland","label":"Pont de nuance par sous-ton: Farmland","confidence":0.87},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_stairs","label":"Pont de nuance par palette: Stone Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"resource"},{"id":"minecraft:iron_pickaxe","name":"Iron Pickaxe","entry_type":"item","description":"An iron pickaxe is a variant of pickaxe that is crafted from iron ingots. It is the third-highest tier of pickaxe, having higher mining efficiency, durability, attack damage, and enchantability than a copper pickaxe. It has a mining level of 2, allowing it to mine gold ore, redstone ore, emerald ore, and diamond ore.","history":[{"version":"0.31 20100110","status":"added","notes":"Added pickaxes. At this point, iron pickaxes are the only type ingame."}],"colors":{"primary":"#5e5545","dominant_hex":"#64461a","average_hex":"#5e5545","hue_group":"yellow","lightness":0.3196,"saturation":0.1534,"palette":["#64461a","#1c1c1c","#2c1c0c","#444444","#c4c4c4","#e5e5e5"],"color_groups":[{"hex":"#64461a","weight":0.2941,"lightness":0.2471,"saturation":0.5873,"hue_group":"yellow"},{"hex":"#1c1c1c","weight":0.2059,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c1c0c","weight":0.1618,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#444444","weight":0.1176,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.1176,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e5e5e5","weight":0.1029,"lightness":0.898,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_pickaxe.png","family":"iron_tools","relations":[{"type":"variants","target":"minecraft:iron_axe","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_axe","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_hoe","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_hoe","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_shovel","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_shovel","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_sword","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_sword","label":"Related set: iron_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:iron_tools","label":"Related set: iron_tools","confidence":0.85},{"type":"related_sets","target":"group:pickaxes","label":"Related set: pickaxes","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fishing_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:command_block_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:iron_shovel","name":"Iron Shovel","entry_type":"item","description":"An iron shovel is a variant of shovel that is crafted from iron ingots. It is used to break dirt, sand, gravel and other related blocks faster, to create dirt paths from dirt-related blocks, and to extinguish campfires. It is the third-highest tier of shovel, having higher mining efficiency, attack damage, durability, and enchantability than a copper shovel.","history":[{"version":"0.31 20091231-2147","status":"added","notes":"Added shovels. At this point, iron shovels are the only tier of shovel in the game. Shovels are located in the player's inventory ."},{"version":"15w50a","status":"added","notes":"added to iron shovels."}],"colors":{"primary":"#736a59","dominant_hex":"#e6e6e6","average_hex":"#736a59","hue_group":"yellow","lightness":0.4,"saturation":0.1275,"palette":["#e6e6e6","#523815","#2c1c0c","#1c1c1c","#444444","#8c6424"],"color_groups":[{"hex":"#e6e6e6","weight":0.3019,"lightness":0.902,"saturation":0.0,"hue_group":"neutral"},{"hex":"#523815","weight":0.2075,"lightness":0.202,"saturation":0.5922,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1698,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#1c1c1c","weight":0.1321,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.0943,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c6424","weight":0.0943,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_shovel.png","family":"iron_tools","relations":[{"type":"variants","target":"minecraft:iron_axe","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_axe","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_hoe","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_hoe","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_pickaxe","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_pickaxe","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_sword","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_sword","label":"Related set: iron_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:iron_tools","label":"Related set: iron_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:command_block_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:painting","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:iron_spear","name":"Iron Spear","entry_type":"item","description":"An iron spear is a variant of spear crafted from iron ingots. It can be used to perform slow jab attacks or held forward to deal increasing damage based on how quickly the wielder is moving. It is the third-highest tier of spear, dealing more damage and having higher durability than a stone spear, at the cost of lower attack speed.","history":[{"version":"1.21.11 25w41a","status":"added","notes":"Added iron spears."}],"colors":{"primary":"#695c50","dominant_hex":"#4a4a4c","average_hex":"#695c50","hue_group":"red","lightness":0.3627,"saturation":0.1351,"palette":["#4a4a4c","#896747","#dedede","#1c1c1c","#563412","#341c09"],"color_groups":[{"hex":"#4a4a4c","weight":0.2297,"lightness":0.2941,"saturation":0.0133,"hue_group":"neutral"},{"hex":"#896747","weight":0.1892,"lightness":0.4078,"saturation":0.3173,"hue_group":"red"},{"hex":"#dedede","weight":0.1892,"lightness":0.8706,"saturation":0.0,"hue_group":"neutral"},{"hex":"#1c1c1c","weight":0.1351,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#563412","weight":0.1351,"lightness":0.2039,"saturation":0.6538,"hue_group":"yellow"},{"hex":"#341c09","weight":0.1216,"lightness":0.1196,"saturation":0.7049,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_spear.png","family":"iron_spear","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:donkey_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_lava_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raiser_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:writable_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:iron_sword","name":"Iron Sword","entry_type":"item","description":"An iron sword is a variant of sword crafted from iron ingots. It is the third-highest tier of sword, dealing more damage and having more durability than stone and copper swords.","history":[{"version":"0.31 20091231-2147","status":"added","notes":"Added swords. At this point, iron swords are the only tier of sword in the game."},{"version":"wiki-history","status":"added","notes":"added to the player's inventory during world creation."},{"version":"20100110","status":"added","notes":"added to the player's inventory during world creation."}],"colors":{"primary":"#6a6865","dominant_hex":"#47433e","average_hex":"#6a6865","hue_group":"neutral","lightness":0.4059,"saturation":0.0242,"palette":["#47433e","#1d1c1b","#acacac","#dcdcdc","#fcfcfc","#726a5e"],"color_groups":[{"hex":"#47433e","weight":0.3333,"lightness":0.2608,"saturation":0.0677,"hue_group":"neutral"},{"hex":"#1d1c1b","weight":0.2857,"lightness":0.1098,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#acacac","weight":0.119,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.1071,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.0952,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#726a5e","weight":0.0595,"lightness":0.4078,"saturation":0.0962,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/iron_sword.png","family":"iron_tools","relations":[{"type":"variants","target":"minecraft:iron_axe","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_axe","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_hoe","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_hoe","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_pickaxe","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_pickaxe","label":"Related set: iron_tools","confidence":0.8},{"type":"variants","target":"minecraft:iron_shovel","label":"Same family: iron_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:iron_shovel","label":"Related set: iron_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:iron_tools","label":"Related set: iron_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:panda_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elytra","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_bundle","label":"Shared hue group: neutral","confidence":0.55}],"category":"tool"},{"id":"minecraft:iron_trapdoor","name":"Iron Trapdoor","entry_type":"block","description":"An iron trapdoor is a variant of the trapdoor that can be only opened using redstone mechanisms.","history":[{"version":"1.8 14w07a","status":"added","notes":"Added iron trapdoors."},{"version":"1.21.5 25w02a","status":"added","notes":"Added new break, place, step, fall and hit sounds."}],"colors":{"primary":"#cbcaca","dominant_hex":"#d4cccc","average_hex":"#cbcaca","hue_group":"neutral","lightness":0.7941,"saturation":0.0095,"palette":["#d4cccc","#c4c4c4","#d4d4d4","#bbbbbb","#dcdcdc","#e4e4e4"],"color_groups":[{"hex":"#d4cccc","weight":0.3636,"lightness":0.8157,"saturation":0.0851,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.2364,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d4d4d4","weight":0.1727,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bbbbbb","weight":0.1636,"lightness":0.7333,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.0364,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.0273,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/iron_trapdoor.png","family":"iron_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:iron_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_column","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water","label":"Palette proche: Water","confidence":0.94},{"type":"color_neighbors","target":"minecraft:redstone_wire","label":"Palette proche: Redstone Wire","confidence":0.914},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.914},{"type":"color_neighbors","target":"minecraft:pumpkin_stem","label":"Palette proche: Pumpkin Stem","confidence":0.884},{"type":"color_neighbors","target":"minecraft:melon_stem","label":"Palette proche: Melon Stem","confidence":0.883},{"type":"color_neighbors","target":"minecraft:diorite","label":"Palette proche: Diorite","confidence":0.881},{"type":"color_neighbors","target":"minecraft:diorite_slab","label":"Palette proche: Diorite Slab","confidence":0.881},{"type":"color_neighbors","target":"minecraft:diorite_stairs","label":"Palette proche: Diorite Stairs","confidence":0.881},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:bubble_column","label":"Pont de nuance par palette: Bubble Column","confidence":0.86},{"type":"color_bridge","target":"minecraft:water","label":"Pont de nuance par palette: Water","confidence":0.86},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.86},{"type":"color_bridge","target":"minecraft:leaf_litter","label":"Pont de nuance par palette: Leaf Litter","confidence":0.86},{"type":"color_bridge","target":"minecraft:pumpkin_stem","label":"Pont de nuance par palette: Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:melon_stem","label":"Pont de nuance par palette: Melon Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite","label":"Pont de nuance par palette: Diorite","confidence":0.86},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.694},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.686},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.681},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.664},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.66},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.66},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.66},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.66}],"category":"building"},{"id":"minecraft:item_frame","name":"Item Frame","entry_type":"block","description":"An item frame is an entity\u200c[JE only] or block\u200c[BE only] that displays the item or block that is inside it.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added item frames."},{"version":"15w50a","status":"added","notes":"Added sounds to item frames: entity.itemframe.add_item , entity.itemframe.break , entity.itemframe.place , entity.itemframe.remove_item , and entity.itemframe.rotate_item ."},{"version":"1.16 20w10a","status":"added","notes":"added to item frames."}],"colors":{"primary":"#75432b","dominant_hex":"#884c2c","average_hex":"#75432b","hue_group":"red","lightness":0.3137,"saturation":0.4625,"palette":["#884c2c","#a75734","#7c442c","#332b2b","#74442c","#34342c"],"color_groups":[{"hex":"#884c2c","weight":0.3008,"lightness":0.3529,"saturation":0.5111,"hue_group":"red"},{"hex":"#a75734","weight":0.1797,"lightness":0.4294,"saturation":0.5251,"hue_group":"red"},{"hex":"#7c442c","weight":0.1719,"lightness":0.3294,"saturation":0.4762,"hue_group":"red"},{"hex":"#332b2b","weight":0.1367,"lightness":0.1843,"saturation":0.0851,"hue_group":"neutral"},{"hex":"#74442c","weight":0.1133,"lightness":0.3137,"saturation":0.45,"hue_group":"red"},{"hex":"#34342c","weight":0.0977,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/item_frame.png","family":"item_frame","relations":[{"type":"visual_neighbors","target":"minecraft:nether_gold_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jukebox","label":"Palette proche: Jukebox","confidence":0.89},{"type":"color_neighbors","target":"minecraft:acacia_trapdoor","label":"Palette proche: Acacia Trapdoor","confidence":0.885},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.878},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.878},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.878},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.878},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.878},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.878},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.878},{"type":"color_neighbors","target":"minecraft:acacia_stairs","label":"Palette proche: Acacia Stairs","confidence":0.878},{"type":"color_neighbors","target":"minecraft:acacia_wall_sign","label":"Palette proche: Acacia Wall Sign","confidence":0.878},{"type":"color_neighbors","target":"minecraft:glow_item_frame","label":"Palette proche: Glow Item Frame","confidence":0.875},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.795},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.793},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.793},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.793},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.793},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.79},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.777},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.776},{"type":"color_bridge","target":"minecraft:cracked_deepslate_bricks","label":"Pont de nuance par palette: Cracked Deepslate Bricks","confidence":0.773},{"type":"color_analogous","target":"minecraft:poppy","label":"Couleurs analogues: Poppy","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_poppy","label":"Couleurs analogues: Potted Poppy","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_shelf","label":"Couleurs analogues: Acacia Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_trapdoor","label":"Couleurs analogues: Acacia Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_door","label":"Couleurs analogues: Acacia Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_resin_bricks","label":"Couleurs analogues: Chiseled Resin Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.958},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.958},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.921},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.897},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.881},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.872},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.87},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.868},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.927},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.905},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.905},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.905},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.905},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.895},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.881},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.877},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.938},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.929},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.925},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.882},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.834},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.822},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.822},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.801},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.635},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.601},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.592},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.592},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.592},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.592},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.579},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.553}],"category":""},{"id":"minecraft:jack_o_lantern","name":"Jack O Lantern","entry_type":"block","description":"A jack o'lantern is a variant of pumpkin that emits light, and can be used to build golems.","history":[{"version":"v1.2.0","status":"added","notes":"Added jack 'o' lanterns."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb jack 'o' lanterns, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#d79835","dominant_hex":"#e3951d","average_hex":"#d79835","hue_group":"yellow","lightness":0.5255,"saturation":0.6694,"palette":["#e3951d","#9c560d","#f4b95c","#c47414","#fce454","#fcfca4"],"color_groups":[{"hex":"#e3951d","weight":0.2539,"lightness":0.502,"saturation":0.7795,"hue_group":"yellow"},{"hex":"#9c560d","weight":0.2031,"lightness":0.3314,"saturation":0.8462,"hue_group":"yellow"},{"hex":"#f4b95c","weight":0.1836,"lightness":0.6588,"saturation":0.8736,"hue_group":"yellow"},{"hex":"#c47414","weight":0.1797,"lightness":0.4235,"saturation":0.8148,"hue_group":"yellow"},{"hex":"#fce454","weight":0.0898,"lightness":0.6588,"saturation":0.9655,"hue_group":"yellow"},{"hex":"#fcfca4","weight":0.0898,"lightness":0.8157,"saturation":0.9362,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jack_o_lantern.png","family":"jack_o_lantern","relations":[{"type":"visual_neighbors","target":"minecraft:fire","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bell","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pumpkin","label":"Palette proche: Pumpkin","confidence":0.899},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.872},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.866},{"type":"color_neighbors","target":"minecraft:bell","label":"Palette proche: Bell","confidence":0.854},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.852},{"type":"color_neighbors","target":"minecraft:carved_pumpkin","label":"Palette proche: Carved Pumpkin","confidence":0.851},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.849},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.849},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.834},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.826},{"type":"color_neighbors","target":"minecraft:fire","label":"Palette proche: Fire","confidence":0.818},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.811},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.705},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.687},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.601},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.598},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.598},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.587},{"type":"color_bridge","target":"minecraft:fire_coral","label":"Pont de nuance par palette: Fire Coral","confidence":0.581},{"type":"color_bridge","target":"minecraft:fire_coral_block","label":"Pont de nuance par palette: Fire Coral Block","confidence":0.581},{"type":"color_bridge","target":"minecraft:fire_coral_fan","label":"Pont de nuance par palette: Fire Coral Fan","confidence":0.581},{"type":"color_bridge","target":"minecraft:fire_coral_wall_fan","label":"Pont de nuance par palette: Fire Coral Wall Fan","confidence":0.581},{"type":"color_analogous","target":"minecraft:honeycomb_block","label":"Couleurs analogues: Honeycomb Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:beehive","label":"Couleurs analogues: Beehive","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_bookshelf","label":"Couleurs analogues: Chiseled Bookshelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_hanging_sign","label":"Couleurs analogues: Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wall_hanging_sign","label":"Couleurs analogues: Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_oak_log","label":"Couleurs analogues: Stripped Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_oak_wood","label":"Couleurs analogues: Stripped Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:lectern","label":"Couleurs analogues: Lectern","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.951},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.923},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.918},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.901},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.895},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.883},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.88},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.875},{"type":"color_triad","target":"minecraft:purple_carpet","label":"Harmonie triadique: Purple Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_wool","label":"Harmonie triadique: Purple Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_concrete_powder","label":"Harmonie triadique: Purple Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.954},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.951},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.951},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.92},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.919},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.914},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.914},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.897},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.89},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.887},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.853},{"type":"value_contrast","target":"minecraft:spruce_log","label":"Contraste clair sombre: Spruce Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_wood","label":"Contraste clair sombre: Spruce Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:jigsaw","name":"Jigsaw","entry_type":"block","description":"Jigsaw blocks are technical blocks commonly used as a way to construct large structures from smaller sections.","history":[{"version":"1.14 18w46a","status":"added","notes":"Added the jigsaw block. It has a GUI, however, they are useless for players at the moment and are used only during world generation (similar to Structure Blocks in data mode)."},{"version":"1.20.3 23w43a","status":"added","notes":"Added \"Selection Priority\" and \"Placement Priority\" options."}],"colors":{"primary":"#504651","dominant_hex":"#141414","average_hex":"#504651","hue_group":"neutral","lightness":0.2961,"saturation":0.0728,"palette":["#141414","#241c2c","#d4c4d4","#343434","#7d6a7d","#ccaccc"],"color_groups":[{"hex":"#141414","weight":0.3125,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#241c2c","weight":0.2539,"lightness":0.1412,"saturation":0.2222,"hue_group":"purple"},{"hex":"#d4c4d4","weight":0.125,"lightness":0.8,"saturation":0.1569,"hue_group":"purple"},{"hex":"#343434","weight":0.1094,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7d6a7d","weight":0.1016,"lightness":0.4529,"saturation":0.0823,"hue_group":"neutral"},{"hex":"#ccaccc","weight":0.0977,"lightness":0.7373,"saturation":0.2388,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jigsaw_top.png","family":"jigsaw","relations":[{"type":"visual_neighbors","target":"minecraft:campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:structure_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_core","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:structure_block","label":"Palette proche: Structure Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:netherite_block","label":"Palette proche: Netherite Block","confidence":0.781},{"type":"color_neighbors","target":"minecraft:closed_eyeblossom","label":"Palette proche: Closed Eyeblossom","confidence":0.777},{"type":"color_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Palette proche: Potted Closed Eyeblossom","confidence":0.777},{"type":"color_neighbors","target":"minecraft:open_eyeblossom","label":"Palette proche: Open Eyeblossom","confidence":0.776},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.774},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.773},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.773},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.773},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.773},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.771},{"type":"color_neighbors","target":"minecraft:bedrock","label":"Palette proche: Bedrock","confidence":0.764},{"type":"color_bridge","target":"minecraft:structure_block","label":"Pont de nuance par palette: Structure Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par palette: Netherite Block","confidence":0.819},{"type":"color_bridge","target":"minecraft:closed_eyeblossom","label":"Pont de nuance par palette: Closed Eyeblossom","confidence":0.816},{"type":"color_bridge","target":"minecraft:potted_closed_eyeblossom","label":"Pont de nuance par palette: Potted Closed Eyeblossom","confidence":0.816},{"type":"color_bridge","target":"minecraft:open_eyeblossom","label":"Pont de nuance par palette: Open Eyeblossom","confidence":0.816},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.814},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.813},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.813},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.813},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.813},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.656},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.622},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.62},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.619},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.619},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.6},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.599},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.599}],"category":"technical"},{"id":"minecraft:jukebox","name":"Jukebox","entry_type":"block","description":"A jukebox is a block used to insert and play music discs. Playing a disc causes it to produce a redstone signal and allows nearby allays to duplicate when given amethyst shards.","history":[{"version":"v1.0.14","status":"added","notes":"Added jukeboxes."},{"version":"1.6","status":"added","notes":"added the 16th music disc well over a decade later."},{"version":"1.20 23w18a","status":"added","notes":"added to the \"Redstone Blocks\" tab in the Creative inventory."}],"colors":{"primary":"#5e402f","dominant_hex":"#7c543c","average_hex":"#5e402f","hue_group":"red","lightness":0.2765,"saturation":0.3333,"palette":["#7c543c","#5c3b2b","#342c2c","#945c44","#2c2c24","#1c1414"],"color_groups":[{"hex":"#7c543c","weight":0.3359,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#5c3b2b","weight":0.2266,"lightness":0.2647,"saturation":0.363,"hue_group":"red"},{"hex":"#342c2c","weight":0.1406,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#945c44","weight":0.125,"lightness":0.4235,"saturation":0.3704,"hue_group":"red"},{"hex":"#2c2c24","weight":0.1172,"lightness":0.1569,"saturation":0.1,"hue_group":"neutral"},{"hex":"#1c1414","weight":0.0547,"lightness":0.0941,"saturation":0.1667,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jukebox_top.png","family":"jukebox","relations":[{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:note_block","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:note_block","label":"Palette proche: Note Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:item_frame","label":"Palette proche: Item Frame","confidence":0.89},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.885},{"type":"color_neighbors","target":"minecraft:coarse_dirt","label":"Palette proche: Coarse Dirt","confidence":0.878},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.878},{"type":"color_neighbors","target":"minecraft:rooted_dirt","label":"Palette proche: Rooted Dirt","confidence":0.858},{"type":"color_neighbors","target":"minecraft:decorated_pot","label":"Palette proche: Decorated Pot","confidence":0.842},{"type":"color_neighbors","target":"minecraft:terracotta","label":"Palette proche: Terracotta","confidence":0.842},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.841},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.841},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.841},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.841},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.835},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.833},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.833},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.833},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.833},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.831},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.826},{"type":"color_bridge","target":"minecraft:cracked_deepslate_bricks","label":"Pont de nuance par palette: Cracked Deepslate Bricks","confidence":0.813},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.813},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.813},{"type":"color_analogous","target":"minecraft:note_block","label":"Couleurs analogues: Note Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_terracotta","label":"Couleurs analogues: Brown Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.959},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.952},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.943},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.943},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.927},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.934},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.916},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.906},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.82},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.82},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.82},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.82},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.926},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.837},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.836},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.825},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.822},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.729},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.729},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.673},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.64},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.631},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.631},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.631},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.631},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.618},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.591}],"category":"utility"},{"id":"minecraft:jungle_boat","name":"Jungle Boat","entry_type":"item","description":"Boats (including bamboo rafts) are drivable vehicle entities that can be ridden through water or at high speeds across all types of ice. Most mobs will ride nearby boats, which they cannot control or exit on their own.","history":[{"version":"v1.0.6","status":"added","notes":"Added boats."},{"version":"wiki-history","status":"added","notes":"added again."},{"version":"18w15a","status":"added","notes":"Added blue ice , which allows boats to travel even faster on it."}],"colors":{"primary":"#76533a","dominant_hex":"#402a1a","average_hex":"#76533a","hue_group":"red","lightness":0.3451,"saturation":0.3409,"palette":["#402a1a","#be8969","#543c2c","#946c44","#64442c","#7c543c"],"color_groups":[{"hex":"#402a1a","weight":0.2424,"lightness":0.1765,"saturation":0.4222,"hue_group":"red"},{"hex":"#be8969","weight":0.2303,"lightness":0.5784,"saturation":0.3953,"hue_group":"red"},{"hex":"#543c2c","weight":0.2,"lightness":0.251,"saturation":0.3125,"hue_group":"red"},{"hex":"#946c44","weight":0.1273,"lightness":0.4235,"saturation":0.3704,"hue_group":"red"},{"hex":"#64442c","weight":0.1091,"lightness":0.2824,"saturation":0.3889,"hue_group":"red"},{"hex":"#7c543c","weight":0.0909,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/jungle_boat.png","family":"jungle_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:brown_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_pod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blade_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:jungle_button","name":"Jungle Button","entry_type":"block","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added wooden buttons. They are currently uncraftable."},{"version":"12w34b","status":"added","notes":"Added crafting recipe for wooden buttons. Recipe"},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped buttons."}],"colors":{"primary":"#a07351","dominant_hex":"#9a724a","average_hex":"#a07351","hue_group":"red","lightness":0.4725,"saturation":0.3278,"palette":["#9a724a","#bc8464","#ac7c54","#bc8c6c","#6c442c","#7c5434"],"color_groups":[{"hex":"#9a724a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc8464","weight":0.2031,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#ac7c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"red"},{"hex":"#bc8c6c","weight":0.1484,"lightness":0.5804,"saturation":0.3738,"hue_group":"red"},{"hex":"#6c442c","weight":0.1133,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#7c5434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_planks.png","family":"jungle_button","relations":[{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_wall_sign","label":"Palette proche: Jungle Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_door","label":"Palette proche: Jungle Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.919},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.913},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.847},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.846},{"type":"color_analogous","target":"minecraft:jungle_fence","label":"Couleurs analogues: Jungle Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence_gate","label":"Couleurs analogues: Jungle Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_planks","label":"Couleurs analogues: Jungle Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_pressure_plate","label":"Couleurs analogues: Jungle Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sign","label":"Couleurs analogues: Jungle Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_slab","label":"Couleurs analogues: Jungle Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_stairs","label":"Couleurs analogues: Jungle Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_wall_sign","label":"Couleurs analogues: Jungle Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.889},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.863},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.936},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.936},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.924},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.916},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.915},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.914},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.907},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.907},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.89},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.842},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.819},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.775},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.74},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55}],"category":"building"},{"id":"minecraft:jungle_chest_boat","name":"Jungle Chest Boat","entry_type":"item","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#715130","dominant_hex":"#946a2d","average_hex":"#715130","hue_group":"yellow","lightness":0.3157,"saturation":0.4037,"palette":["#946a2d","#be8969","#442e1b","#5c4129","#2f1f0f","#343424"],"color_groups":[{"hex":"#946a2d","weight":0.2644,"lightness":0.3784,"saturation":0.5337,"hue_group":"yellow"},{"hex":"#be8969","weight":0.1897,"lightness":0.5784,"saturation":0.3953,"hue_group":"red"},{"hex":"#442e1b","weight":0.1724,"lightness":0.1863,"saturation":0.4316,"hue_group":"red"},{"hex":"#5c4129","weight":0.1667,"lightness":0.2608,"saturation":0.3835,"hue_group":"red"},{"hex":"#2f1f0f","weight":0.1379,"lightness":0.1216,"saturation":0.5161,"hue_group":"red"},{"hex":"#343424","weight":0.069,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/jungle_chest_boat.png","family":"jungle_chest_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_chest_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:book","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crossbow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:jungle_door","name":"Jungle Door","entry_type":"block","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","history":[{"version":"20100607","status":"added","notes":"Added wooden doors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"18w49a","status":"added","notes":"Added snowy tundra villages, which generate with spruce doors."}],"colors":{"primary":"#a47855","dominant_hex":"#bc8464","average_hex":"#a47855","hue_group":"red","lightness":0.4882,"saturation":0.3173,"palette":["#bc8464","#724e33","#a97957","#916c47","#c4946c","#d4a47c"],"color_groups":[{"hex":"#bc8464","weight":0.2434,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#724e33","weight":0.2345,"lightness":0.3235,"saturation":0.3818,"hue_group":"red"},{"hex":"#a97957","weight":0.1947,"lightness":0.502,"saturation":0.3228,"hue_group":"red"},{"hex":"#916c47","weight":0.1195,"lightness":0.4235,"saturation":0.3426,"hue_group":"yellow"},{"hex":"#c4946c","weight":0.1062,"lightness":0.5961,"saturation":0.4272,"hue_group":"red"},{"hex":"#d4a47c","weight":0.1018,"lightness":0.6588,"saturation":0.5057,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_door_top.png","family":"jungle","relations":[{"type":"variants","target":"minecraft:jungle_fence","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_fence","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_leaves","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_leaves","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_log","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_log","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_planks","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_planks","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_sapling","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_sapling","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_slab","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_slab","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_stairs","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_stairs","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_wood","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_wood","label":"Related set: jungle","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_wall_sign","label":"Palette proche: Jungle Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.909},{"type":"color_neighbors","target":"minecraft:coarse_dirt","label":"Palette proche: Coarse Dirt","confidence":0.905},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.862},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.862},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.855},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.855},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.855},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.855},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.855},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.855},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.847},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_analogous","target":"minecraft:jungle_button","label":"Couleurs analogues: Jungle Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence","label":"Couleurs analogues: Jungle Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence_gate","label":"Couleurs analogues: Jungle Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_planks","label":"Couleurs analogues: Jungle Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_pressure_plate","label":"Couleurs analogues: Jungle Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sign","label":"Couleurs analogues: Jungle Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_slab","label":"Couleurs analogues: Jungle Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_stairs","label":"Couleurs analogues: Jungle Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.935},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.935},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.935},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.888},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.888},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.862},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.849},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.837},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.944},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.943},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.937},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.937},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.929},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.906},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.894},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.952},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.858},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.852},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.811},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.811},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.809},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.805},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.771},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55}],"category":"building"},{"id":"minecraft:jungle_fence","name":"Jungle Fence","entry_type":"block","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","history":[{"version":"20100629","status":"added","notes":"added to the game. There are three defined states: north-south, east-west and a cross. These models are currently unused."},{"version":"v1.0.17","status":"added","notes":"Added fences."},{"version":"1.8","status":"added","notes":"Added villages and strongholds , where wooden fences naturally generate."}],"colors":{"primary":"#a07351","dominant_hex":"#9a724a","average_hex":"#a07351","hue_group":"red","lightness":0.4725,"saturation":0.3278,"palette":["#9a724a","#bc8464","#ac7c54","#bc8c6c","#6c442c","#7c5434"],"color_groups":[{"hex":"#9a724a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc8464","weight":0.2031,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#ac7c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"red"},{"hex":"#bc8c6c","weight":0.1484,"lightness":0.5804,"saturation":0.3738,"hue_group":"red"},{"hex":"#6c442c","weight":0.1133,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#7c5434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_planks.png","family":"jungle","relations":[{"type":"variants","target":"minecraft:jungle_door","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_door","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_leaves","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_leaves","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_log","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_log","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_planks","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_planks","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_sapling","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_sapling","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_slab","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_slab","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_stairs","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_stairs","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_wood","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_wood","label":"Related set: jungle","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_wall_sign","label":"Palette proche: Jungle Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_door","label":"Palette proche: Jungle Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.919},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.913},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.847},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.846},{"type":"color_analogous","target":"minecraft:jungle_button","label":"Couleurs analogues: Jungle Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence_gate","label":"Couleurs analogues: Jungle Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_planks","label":"Couleurs analogues: Jungle Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_pressure_plate","label":"Couleurs analogues: Jungle Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sign","label":"Couleurs analogues: Jungle Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_slab","label":"Couleurs analogues: Jungle Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_stairs","label":"Couleurs analogues: Jungle Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_wall_sign","label":"Couleurs analogues: Jungle Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.889},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.863},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.936},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.936},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.924},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.916},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.915},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.914},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.907},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.907},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.89},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.842},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.819},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.775},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.74},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55}],"category":"building"},{"id":"minecraft:jungle_fence_gate","name":"Jungle Fence Gate","entry_type":"block","description":"A fence gate is a block that shares the functions of both the door and the fence.","history":[{"version":"Pre-release","status":"added","notes":"Added fence gates."},{"version":"14w32b","status":"added","notes":"Added spruce, birch, jungle, acacia, and dark oak fence gates."},{"version":"18w49a","status":"added","notes":"added snowy tundra villages."}],"colors":{"primary":"#a07351","dominant_hex":"#9a724a","average_hex":"#a07351","hue_group":"red","lightness":0.4725,"saturation":0.3278,"palette":["#9a724a","#bc8464","#ac7c54","#bc8c6c","#6c442c","#7c5434"],"color_groups":[{"hex":"#9a724a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc8464","weight":0.2031,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#ac7c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"red"},{"hex":"#bc8c6c","weight":0.1484,"lightness":0.5804,"saturation":0.3738,"hue_group":"red"},{"hex":"#6c442c","weight":0.1133,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#7c5434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_planks.png","family":"jungle_fence_gate","relations":[{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_wall_sign","label":"Palette proche: Jungle Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_door","label":"Palette proche: Jungle Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.919},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.913},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.847},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.846},{"type":"color_analogous","target":"minecraft:jungle_button","label":"Couleurs analogues: Jungle Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence","label":"Couleurs analogues: Jungle Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_planks","label":"Couleurs analogues: Jungle Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_pressure_plate","label":"Couleurs analogues: Jungle Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sign","label":"Couleurs analogues: Jungle Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_slab","label":"Couleurs analogues: Jungle Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_stairs","label":"Couleurs analogues: Jungle Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_wall_sign","label":"Couleurs analogues: Jungle Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.889},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.863},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.936},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.936},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.924},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.916},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.915},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.914},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.907},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.907},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.89},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.842},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.819},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.775},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.74},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55}],"category":"building"},{"id":"minecraft:jungle_hanging_sign","name":"Jungle Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#ab8555","dominant_hex":"#9c844c","average_hex":"#ab8555","hue_group":"yellow","lightness":0.502,"saturation":0.3386,"palette":["#9c844c","#b4845c","#bc8c64","#947c44","#ac8454","#bc9464"],"color_groups":[{"hex":"#9c844c","weight":0.2188,"lightness":0.4549,"saturation":0.3448,"hue_group":"yellow"},{"hex":"#b4845c","weight":0.2109,"lightness":0.5333,"saturation":0.3697,"hue_group":"red"},{"hex":"#bc8c64","weight":0.207,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#947c44","weight":0.168,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#ac8454","weight":0.1445,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#bc9464","weight":0.0508,"lightness":0.5647,"saturation":0.3964,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_jungle_log.png","family":"jungle_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lectern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_birch_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Palette proche: Jungle Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_jungle_log","label":"Palette proche: Stripped Jungle Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_jungle_wood","label":"Palette proche: Stripped Jungle Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_shelf","label":"Palette proche: Jungle Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:beehive","label":"Palette proche: Beehive","confidence":0.939},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.935},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.926},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.926},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.926},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.926},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.926},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.926},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.871},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.845},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.844},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.838},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.838},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.838},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.838},{"type":"color_analogous","target":"minecraft:jungle_wall_hanging_sign","label":"Couleurs analogues: Jungle Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_jungle_log","label":"Couleurs analogues: Stripped Jungle Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_jungle_wood","label":"Couleurs analogues: Stripped Jungle Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:glowstone","label":"Couleurs analogues: Glowstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:powered_rail","label":"Couleurs analogues: Powered Rail","confidence":0.96},{"type":"color_analogous","target":"minecraft:sniffer_egg","label":"Couleurs analogues: Sniffer Egg","confidence":0.96},{"type":"color_analogous","target":"minecraft:barrel","label":"Couleurs analogues: Barrel","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire","label":"Couleurs analogues: Fire","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.85},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.812},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.779},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.762},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.756},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.747},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.956},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.956},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.953},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.952},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.956},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.954},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.952},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.922},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.921},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.877},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:jungle_leaves","name":"Jungle Leaves","entry_type":"block","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","history":[{"version":"0.0.14a","status":"added","notes":"Added leaves."},{"version":"1.2","status":"added","notes":"Added spruce and birch leaves, which are colored #619961 and #80a755 respectively, and do not vary across biomes."},{"version":"1.7","status":"added","notes":"Added shears , which collect leaves. Before, leaves could be obtained only via inventory editing."}],"colors":{"primary":"#9d9a90","dominant_hex":"#8c8484","average_hex":"#9d9a90","hue_group":"neutral","lightness":0.5902,"saturation":0.0622,"palette":["#8c8484","#9c9c9c","#b5bdb4","#746c74","#dec661","#b19024"],"color_groups":[{"hex":"#8c8484","weight":0.2809,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.2753,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b5bdb4","weight":0.2584,"lightness":0.7235,"saturation":0.0638,"hue_group":"neutral"},{"hex":"#746c74","weight":0.0899,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#dec661","weight":0.0506,"lightness":0.6255,"saturation":0.6545,"hue_group":"yellow"},{"hex":"#b19024","weight":0.0449,"lightness":0.4176,"saturation":0.662,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_leaves.png","family":"jungle","relations":[{"type":"variants","target":"minecraft:jungle_door","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_door","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_fence","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_fence","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_log","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_log","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_planks","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_planks","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_sapling","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_sapling","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_slab","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_slab","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_stairs","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_stairs","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_wood","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_wood","label":"Related set: jungle","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dried_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeater","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_leaves","label":"Palette proche: Birch Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_leaves","label":"Palette proche: Dark Oak Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.88},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.88},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.88},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.88},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.866},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.857},{"type":"color_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Palette proche: Light Gray Stained Glass Pane","confidence":0.854},{"type":"color_neighbors","target":"minecraft:oak_leaves","label":"Palette proche: Oak Leaves","confidence":0.853},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.853},{"type":"color_neighbors","target":"minecraft:repeater","label":"Palette proche: Repeater","confidence":0.853},{"type":"color_bridge","target":"minecraft:birch_leaves","label":"Pont de nuance par palette: Birch Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:dark_oak_leaves","label":"Pont de nuance par palette: Dark Oak Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_stained_glass_pane","label":"Pont de nuance par palette: Light Gray Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:oak_leaves","label":"Pont de nuance par palette: Oak Leaves","confidence":0.86},{"type":"value_contrast","target":"minecraft:muddy_mangrove_roots","label":"Contraste clair sombre: Muddy Mangrove Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_slab","label":"Contraste clair sombre: Deepslate Tile Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_stairs","label":"Contraste clair sombre: Deepslate Tile Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_wall","label":"Contraste clair sombre: Deepslate Tile Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tiles","label":"Contraste clair sombre: Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_roots","label":"Contraste clair sombre: Mangrove Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_deepslate_tiles","label":"Contraste clair sombre: Cracked Deepslate Tiles","confidence":0.55}],"category":"natural"},{"id":"minecraft:jungle_log","name":"Jungle Log","entry_type":"block","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","history":[{"version":"0.0.14a","status":"added","notes":"Added wood."},{"version":"1.2","status":"added","notes":"Added spruce and birch wood."},{"version":"wiki-history","status":"added","notes":"Added \"Getting Wood\" achievement for picking up a wood item ."}],"colors":{"primary":"#554419","dominant_hex":"#5b451c","average_hex":"#554419","hue_group":"yellow","lightness":0.2157,"saturation":0.5455,"palette":["#5b451c","#443414","#6a4f24","#543c14","#3c3414","#7a5e24"],"color_groups":[{"hex":"#5b451c","weight":0.3242,"lightness":0.2333,"saturation":0.5294,"hue_group":"yellow"},{"hex":"#443414","weight":0.1953,"lightness":0.1725,"saturation":0.5455,"hue_group":"yellow"},{"hex":"#6a4f24","weight":0.1836,"lightness":0.2784,"saturation":0.493,"hue_group":"yellow"},{"hex":"#543c14","weight":0.1523,"lightness":0.2039,"saturation":0.6154,"hue_group":"yellow"},{"hex":"#3c3414","weight":0.0781,"lightness":0.1569,"saturation":0.5,"hue_group":"yellow"},{"hex":"#7a5e24","weight":0.0664,"lightness":0.3098,"saturation":0.5443,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_log.png","family":"jungle","relations":[{"type":"variants","target":"minecraft:jungle_door","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_door","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_fence","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_fence","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_leaves","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_leaves","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_planks","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_planks","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_sapling","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_sapling","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_slab","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_slab","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_stairs","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_stairs","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_wood","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_wood","label":"Related set: jungle","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cartography_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:podzol","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_wood","label":"Palette proche: Jungle Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_door","label":"Palette proche: Dark Oak Door","confidence":0.891},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.889},{"type":"color_neighbors","target":"minecraft:podzol","label":"Palette proche: Podzol","confidence":0.877},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.875},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.872},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.872},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.872},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.872},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.872},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.872},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.872},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.768},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.768},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.761},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.761},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.76},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.747},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.725},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.717},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.699},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.699},{"type":"color_analogous","target":"minecraft:jungle_wood","label":"Couleurs analogues: Jungle Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:bell","label":"Couleurs analogues: Bell","confidence":0.947},{"type":"color_analogous","target":"minecraft:yellow_candle","label":"Couleurs analogues: Yellow Candle","confidence":0.933},{"type":"color_analogous","target":"minecraft:rose_bush","label":"Couleurs analogues: Rose Bush","confidence":0.923},{"type":"color_analogous","target":"minecraft:birch_shelf","label":"Couleurs analogues: Birch Shelf","confidence":0.922},{"type":"color_analogous","target":"minecraft:fletching_table","label":"Couleurs analogues: Fletching Table","confidence":0.922},{"type":"color_analogous","target":"minecraft:dirt_path","label":"Couleurs analogues: Dirt Path","confidence":0.92},{"type":"color_analogous","target":"minecraft:yellow_concrete","label":"Couleurs analogues: Yellow Concrete","confidence":0.918},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.944},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.944},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.907},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.897},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.897},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.842},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.826},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.852},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.852},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.837},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.837},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.836},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.836},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.835},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.828},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.818},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.665},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.664},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.66},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.66},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.636},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.721},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.688},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.674},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.674},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.674},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.674},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.666},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.64}],"category":"natural"},{"id":"minecraft:jungle_planks","name":"Jungle Planks","entry_type":"block","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","history":[{"version":"rd-20090515","status":"added","notes":"Added wooden planks."},{"version":"1.2.4 release","status":"added","notes":"Added spruce, birch and jungle wood planks. They are crafted from their corresponding wood . The color of wood planks available to this point is now obtainable only from oak wood."},{"version":"18w07a","status":"added","notes":"Added stripped logs, a variant of logs , which can be used to craft wood planks."}],"colors":{"primary":"#a07351","dominant_hex":"#9a724a","average_hex":"#a07351","hue_group":"red","lightness":0.4725,"saturation":0.3278,"palette":["#9a724a","#bc8464","#ac7c54","#bc8c6c","#6c442c","#7c5434"],"color_groups":[{"hex":"#9a724a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc8464","weight":0.2031,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#ac7c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"red"},{"hex":"#bc8c6c","weight":0.1484,"lightness":0.5804,"saturation":0.3738,"hue_group":"red"},{"hex":"#6c442c","weight":0.1133,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#7c5434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_planks.png","family":"jungle","relations":[{"type":"variants","target":"minecraft:jungle_door","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_door","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_fence","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_fence","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_leaves","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_leaves","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_log","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_log","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_sapling","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_sapling","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_slab","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_slab","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_stairs","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_stairs","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_wood","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_wood","label":"Related set: jungle","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_wall_sign","label":"Palette proche: Jungle Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_door","label":"Palette proche: Jungle Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.919},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.913},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.847},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.846},{"type":"color_analogous","target":"minecraft:jungle_button","label":"Couleurs analogues: Jungle Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence","label":"Couleurs analogues: Jungle Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence_gate","label":"Couleurs analogues: Jungle Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_pressure_plate","label":"Couleurs analogues: Jungle Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sign","label":"Couleurs analogues: Jungle Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_slab","label":"Couleurs analogues: Jungle Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_stairs","label":"Couleurs analogues: Jungle Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_wall_sign","label":"Couleurs analogues: Jungle Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.889},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.863},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.936},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.936},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.924},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.916},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.915},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.914},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.907},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.907},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.89},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.842},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.819},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.775},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.74},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55}],"category":"building"},{"id":"minecraft:jungle_pressure_plate","name":"Jungle Pressure Plate","entry_type":"block","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","history":[{"version":"v1.0.1","status":"added","notes":"Added wooden pressure plates."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped pressure plates."},{"version":"1.19 22w11a","status":"added","notes":"Added mangrove pressure plates."}],"colors":{"primary":"#a07351","dominant_hex":"#9a724a","average_hex":"#a07351","hue_group":"red","lightness":0.4725,"saturation":0.3278,"palette":["#9a724a","#bc8464","#ac7c54","#bc8c6c","#6c442c","#7c5434"],"color_groups":[{"hex":"#9a724a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc8464","weight":0.2031,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#ac7c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"red"},{"hex":"#bc8c6c","weight":0.1484,"lightness":0.5804,"saturation":0.3738,"hue_group":"red"},{"hex":"#6c442c","weight":0.1133,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#7c5434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_planks.png","family":"jungle_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_wall_sign","label":"Palette proche: Jungle Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_door","label":"Palette proche: Jungle Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.919},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.913},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.847},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.846},{"type":"color_analogous","target":"minecraft:jungle_button","label":"Couleurs analogues: Jungle Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence","label":"Couleurs analogues: Jungle Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence_gate","label":"Couleurs analogues: Jungle Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_planks","label":"Couleurs analogues: Jungle Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sign","label":"Couleurs analogues: Jungle Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_slab","label":"Couleurs analogues: Jungle Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_stairs","label":"Couleurs analogues: Jungle Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_wall_sign","label":"Couleurs analogues: Jungle Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.889},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.863},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.936},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.936},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.924},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.916},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.915},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.914},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.907},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.907},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.89},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.842},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.819},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.775},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.74},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55}],"category":"building"},{"id":"minecraft:jungle_sapling","name":"Jungle Sapling","entry_type":"block","description":"A sapling is a non-solid block that can be grown into a tree.","history":[{"version":"rd-161348","status":"added","notes":"Added saplings as the fifth placeable block in the game."},{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added tree growth."},{"version":"1.5","status":"added","notes":"Added spruce and birch saplings. Before, trees dropped only oak saplings, regardless of the tree."}],"colors":{"primary":"#305111","dominant_hex":"#2c4c0c","average_hex":"#305111","hue_group":"green","lightness":0.1922,"saturation":0.6531,"palette":["#2c4c0c","#2b320b","#2c6c1c","#348424","#3c3c0c","#34340c"],"color_groups":[{"hex":"#2c4c0c","weight":0.2558,"lightness":0.1725,"saturation":0.7273,"hue_group":"green"},{"hex":"#2b320b","weight":0.2209,"lightness":0.1196,"saturation":0.6393,"hue_group":"yellow"},{"hex":"#2c6c1c","weight":0.186,"lightness":0.2667,"saturation":0.5882,"hue_group":"green"},{"hex":"#348424","weight":0.1744,"lightness":0.3294,"saturation":0.5714,"hue_group":"green"},{"hex":"#3c3c0c","weight":0.1047,"lightness":0.1412,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#34340c","weight":0.0581,"lightness":0.1255,"saturation":0.625,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_sapling.png","family":"jungle","relations":[{"type":"variants","target":"minecraft:jungle_door","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_door","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_fence","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_fence","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_leaves","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_leaves","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_log","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_log","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_planks","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_planks","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_slab","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_slab","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_stairs","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_stairs","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_wood","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_wood","label":"Related set: jungle","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:potted_jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sunflower","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wheat","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:emerald_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:seagrass","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_jungle_sapling","label":"Palette proche: Potted Jungle Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle","label":"Palette proche: Green Candle","confidence":0.739},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.735},{"type":"color_neighbors","target":"minecraft:green_carpet","label":"Palette proche: Green Carpet","confidence":0.713},{"type":"color_neighbors","target":"minecraft:green_wool","label":"Palette proche: Green Wool","confidence":0.713},{"type":"color_neighbors","target":"minecraft:kelp","label":"Palette proche: Kelp","confidence":0.709},{"type":"color_neighbors","target":"minecraft:kelp_plant","label":"Palette proche: Kelp Plant","confidence":0.706},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.702},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.694},{"type":"color_neighbors","target":"minecraft:dark_oak_sapling","label":"Palette proche: Dark Oak Sapling","confidence":0.693},{"type":"color_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Palette proche: Potted Dark Oak Sapling","confidence":0.693},{"type":"color_neighbors","target":"minecraft:bamboo","label":"Palette proche: Bamboo","confidence":0.691},{"type":"color_bridge","target":"minecraft:jungle_log","label":"Pont de nuance par palette: Jungle Log","confidence":0.637},{"type":"color_bridge","target":"minecraft:jungle_wood","label":"Pont de nuance par palette: Jungle Wood","confidence":0.637},{"type":"color_bridge","target":"minecraft:podzol","label":"Pont de nuance par palette: Podzol","confidence":0.632},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.607},{"type":"color_bridge","target":"minecraft:dark_oak_trapdoor","label":"Pont de nuance par palette: Dark Oak Trapdoor","confidence":0.599},{"type":"color_bridge","target":"minecraft:spruce_log","label":"Pont de nuance par palette: Spruce Log","confidence":0.585},{"type":"color_bridge","target":"minecraft:spruce_wood","label":"Pont de nuance par palette: Spruce Wood","confidence":0.585},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.582},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.58},{"type":"color_analogous","target":"minecraft:potted_jungle_sapling","label":"Couleurs analogues: Potted Jungle Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sapling","label":"Couleurs analogues: Dark Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_dark_oak_sapling","label":"Couleurs analogues: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete","label":"Couleurs analogues: Lime Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:kelp_plant","label":"Couleurs analogues: Kelp Plant","confidence":0.942},{"type":"color_analogous","target":"minecraft:lime_candle","label":"Couleurs analogues: Lime Candle","confidence":0.937},{"type":"color_analogous","target":"minecraft:cactus","label":"Couleurs analogues: Cactus","confidence":0.935},{"type":"color_analogous","target":"minecraft:lime_shulker_box","label":"Couleurs analogues: Lime Shulker Box","confidence":0.923},{"type":"color_complement","target":"minecraft:purple_concrete","label":"Contraste complementaire: Purple Concrete","confidence":0.934},{"type":"color_complement","target":"minecraft:purple_stained_glass","label":"Contraste complementaire: Purple Stained Glass","confidence":0.901},{"type":"color_complement","target":"minecraft:purple_candle","label":"Contraste complementaire: Purple Candle","confidence":0.895},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.886},{"type":"color_complement","target":"minecraft:purple_shulker_box","label":"Contraste complementaire: Purple Shulker Box","confidence":0.885},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.883},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.874},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.874},{"type":"color_triad","target":"minecraft:cherry_log","label":"Harmonie triadique: Cherry Log","confidence":0.932},{"type":"color_triad","target":"minecraft:cherry_wood","label":"Harmonie triadique: Cherry Wood","confidence":0.932},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.91},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.892},{"type":"color_triad","target":"minecraft:crimson_button","label":"Harmonie triadique: Crimson Button","confidence":0.834},{"type":"color_triad","target":"minecraft:crimson_fence","label":"Harmonie triadique: Crimson Fence","confidence":0.834},{"type":"color_triad","target":"minecraft:crimson_fence_gate","label":"Harmonie triadique: Crimson Fence Gate","confidence":0.834},{"type":"color_triad","target":"minecraft:crimson_planks","label":"Harmonie triadique: Crimson Planks","confidence":0.834},{"type":"color_square","target":"minecraft:warped_wart_block","label":"Harmonie carree: Warped Wart Block","confidence":0.96},{"type":"color_square","target":"minecraft:red_shulker_box","label":"Harmonie carree: Red Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:red_candle","label":"Harmonie carree: Red Candle","confidence":0.96},{"type":"color_square","target":"minecraft:red_mushroom_block","label":"Harmonie carree: Red Mushroom Block","confidence":0.96},{"type":"color_square","target":"minecraft:red_concrete_powder","label":"Harmonie carree: Red Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:soul_fire","label":"Harmonie carree: Soul Fire","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_shelf","label":"Harmonie carree: Cherry Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:red_concrete","label":"Harmonie carree: Red Concrete","confidence":0.959},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.733},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.7},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.678},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.66},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.66},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.648},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.626},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.626}],"category":"natural"},{"id":"minecraft:jungle_shelf","name":"Jungle Shelf","entry_type":"block","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added shelves."},{"version":"wiki-history","status":"added","notes":"Added the align_items_to_bottom block state property, by default set to false, to display items at the bottom of the shelf rather than in the middle."}],"colors":{"primary":"#9c7a4a","dominant_hex":"#88683e","average_hex":"#9c7a4a","hue_group":"yellow","lightness":0.451,"saturation":0.3565,"palette":["#88683e","#947c44","#b18459","#9c844c","#bc8c64","#bc9464"],"color_groups":[{"hex":"#88683e","weight":0.374,"lightness":0.3882,"saturation":0.3737,"hue_group":"yellow"},{"hex":"#947c44","weight":0.2295,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#b18459","weight":0.1123,"lightness":0.5216,"saturation":0.3607,"hue_group":"red"},{"hex":"#9c844c","weight":0.1084,"lightness":0.4549,"saturation":0.3448,"hue_group":"yellow"},{"hex":"#bc8c64","weight":0.0898,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#bc9464","weight":0.0859,"lightness":0.5647,"saturation":0.3964,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_shelf.png","family":"jungle_shelf","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_hanging_sign","label":"Palette proche: Jungle Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Palette proche: Jungle Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_jungle_log","label":"Palette proche: Stripped Jungle Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_jungle_wood","label":"Palette proche: Stripped Jungle Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:beehive","label":"Palette proche: Beehive","confidence":0.937},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.934},{"type":"color_neighbors","target":"minecraft:lectern","label":"Palette proche: Lectern","confidence":0.933},{"type":"color_neighbors","target":"minecraft:dirt_path","label":"Palette proche: Dirt Path","confidence":0.923},{"type":"color_neighbors","target":"minecraft:oak_hanging_sign","label":"Palette proche: Oak Hanging Sign","confidence":0.919},{"type":"color_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Palette proche: Oak Wall Hanging Sign","confidence":0.919},{"type":"color_neighbors","target":"minecraft:stripped_oak_log","label":"Palette proche: Stripped Oak Log","confidence":0.919},{"type":"color_neighbors","target":"minecraft:stripped_oak_wood","label":"Palette proche: Stripped Oak Wood","confidence":0.919},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.848},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.848},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.839},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.838},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.838},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.837},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.837},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.837},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.837},{"type":"color_analogous","target":"minecraft:oak_door","label":"Couleurs analogues: Oak Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:scaffolding","label":"Couleurs analogues: Scaffolding","confidence":0.96},{"type":"color_analogous","target":"minecraft:lectern","label":"Couleurs analogues: Lectern","confidence":0.96},{"type":"color_analogous","target":"minecraft:powered_rail","label":"Couleurs analogues: Powered Rail","confidence":0.96},{"type":"color_analogous","target":"minecraft:ladder","label":"Couleurs analogues: Ladder","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_log","label":"Couleurs analogues: Stripped Spruce Log","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.927},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.911},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.903},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.868},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.835},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.819},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.812},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.803},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.946},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.94},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.937},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.945},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.893},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.829},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55}],"category":""},{"id":"minecraft:jungle_sign","name":"Jungle Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#a07351","dominant_hex":"#9a724a","average_hex":"#a07351","hue_group":"red","lightness":0.4725,"saturation":0.3278,"palette":["#9a724a","#bc8464","#ac7c54","#bc8c6c","#6c442c","#7c5434"],"color_groups":[{"hex":"#9a724a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc8464","weight":0.2031,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#ac7c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"red"},{"hex":"#bc8c6c","weight":0.1484,"lightness":0.5804,"saturation":0.3738,"hue_group":"red"},{"hex":"#6c442c","weight":0.1133,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#7c5434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_planks.png","family":"jungle_sign","relations":[{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_wall_sign","label":"Palette proche: Jungle Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_door","label":"Palette proche: Jungle Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.919},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.913},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.847},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.846},{"type":"color_analogous","target":"minecraft:jungle_button","label":"Couleurs analogues: Jungle Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence","label":"Couleurs analogues: Jungle Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence_gate","label":"Couleurs analogues: Jungle Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_planks","label":"Couleurs analogues: Jungle Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_pressure_plate","label":"Couleurs analogues: Jungle Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_slab","label":"Couleurs analogues: Jungle Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_stairs","label":"Couleurs analogues: Jungle Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_wall_sign","label":"Couleurs analogues: Jungle Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.889},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.863},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.936},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.936},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.924},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.916},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.915},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.914},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.907},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.907},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.89},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.842},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.819},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.775},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.74},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55}],"category":"building"},{"id":"minecraft:jungle_slab","name":"Jungle Slab","entry_type":"block","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","history":[{"version":"1.7.2 1.7","status":"added","notes":"Added acacia and dark oak slabs."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped slabs."}],"colors":{"primary":"#a07351","dominant_hex":"#9a724a","average_hex":"#a07351","hue_group":"red","lightness":0.4725,"saturation":0.3278,"palette":["#9a724a","#bc8464","#ac7c54","#bc8c6c","#6c442c","#7c5434"],"color_groups":[{"hex":"#9a724a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc8464","weight":0.2031,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#ac7c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"red"},{"hex":"#bc8c6c","weight":0.1484,"lightness":0.5804,"saturation":0.3738,"hue_group":"red"},{"hex":"#6c442c","weight":0.1133,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#7c5434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_planks.png","family":"jungle","relations":[{"type":"variants","target":"minecraft:jungle_door","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_door","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_fence","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_fence","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_leaves","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_leaves","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_log","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_log","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_planks","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_planks","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_sapling","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_sapling","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_stairs","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_stairs","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_wood","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_wood","label":"Related set: jungle","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_wall_sign","label":"Palette proche: Jungle Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_door","label":"Palette proche: Jungle Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.919},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.913},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.847},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.846},{"type":"color_analogous","target":"minecraft:jungle_button","label":"Couleurs analogues: Jungle Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence","label":"Couleurs analogues: Jungle Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence_gate","label":"Couleurs analogues: Jungle Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_planks","label":"Couleurs analogues: Jungle Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_pressure_plate","label":"Couleurs analogues: Jungle Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sign","label":"Couleurs analogues: Jungle Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_stairs","label":"Couleurs analogues: Jungle Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_wall_sign","label":"Couleurs analogues: Jungle Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.889},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.863},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.936},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.936},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.924},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.916},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.915},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.914},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.907},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.907},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.89},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.842},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.819},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.775},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.74},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55}],"category":"building"},{"id":"minecraft:jungle_stairs","name":"Jungle Stairs","entry_type":"block","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","history":[{"version":"20100629","status":"added","notes":"Added \"wooden\" stairs."},{"version":"1.3.1 12w25a","status":"added","notes":"Added wooden stairs for the remaining three wood types (spruce, birch, and jungle)."},{"version":"12w26a","status":"added","notes":"Added crafting recipes for spruce, birch, and jungle wood stairs."}],"colors":{"primary":"#a07351","dominant_hex":"#9a724a","average_hex":"#a07351","hue_group":"red","lightness":0.4725,"saturation":0.3278,"palette":["#9a724a","#bc8464","#ac7c54","#bc8c6c","#6c442c","#7c5434"],"color_groups":[{"hex":"#9a724a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc8464","weight":0.2031,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#ac7c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"red"},{"hex":"#bc8c6c","weight":0.1484,"lightness":0.5804,"saturation":0.3738,"hue_group":"red"},{"hex":"#6c442c","weight":0.1133,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#7c5434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_planks.png","family":"jungle","relations":[{"type":"variants","target":"minecraft:jungle_door","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_door","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_fence","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_fence","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_leaves","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_leaves","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_log","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_log","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_planks","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_planks","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_sapling","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_sapling","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_slab","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_slab","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_wood","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_wood","label":"Related set: jungle","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_wall_sign","label":"Palette proche: Jungle Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_door","label":"Palette proche: Jungle Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.919},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.913},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.847},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.846},{"type":"color_analogous","target":"minecraft:jungle_button","label":"Couleurs analogues: Jungle Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence","label":"Couleurs analogues: Jungle Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence_gate","label":"Couleurs analogues: Jungle Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_planks","label":"Couleurs analogues: Jungle Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_pressure_plate","label":"Couleurs analogues: Jungle Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sign","label":"Couleurs analogues: Jungle Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_slab","label":"Couleurs analogues: Jungle Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_wall_sign","label":"Couleurs analogues: Jungle Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.889},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.863},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.936},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.936},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.924},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.916},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.915},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.914},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.907},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.907},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.89},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.842},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.819},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.775},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.74},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55}],"category":"building"},{"id":"minecraft:jungle_trapdoor","name":"Jungle Trapdoor","entry_type":"block","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","history":[{"version":"1.6","status":"added","notes":"Added wooden trapdoors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped trapdoors."}],"colors":{"primary":"#996e4d","dominant_hex":"#9a724b","average_hex":"#996e4d","hue_group":"red","lightness":0.451,"saturation":0.3304,"palette":["#9a724b","#b4845c","#745434","#bc8464","#634431","#c4946c"],"color_groups":[{"hex":"#9a724b","weight":0.2477,"lightness":0.449,"saturation":0.345,"hue_group":"red"},{"hex":"#b4845c","weight":0.2383,"lightness":0.5333,"saturation":0.3697,"hue_group":"red"},{"hex":"#745434","weight":0.1963,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#bc8464","weight":0.1449,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#634431","weight":0.1075,"lightness":0.2902,"saturation":0.3378,"hue_group":"red"},{"hex":"#c4946c","weight":0.0654,"lightness":0.5961,"saturation":0.4272,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_trapdoor.png","family":"jungle_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_wall_sign","label":"Palette proche: Jungle Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_door","label":"Palette proche: Jungle Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.924},{"type":"color_neighbors","target":"minecraft:coarse_dirt","label":"Palette proche: Coarse Dirt","confidence":0.919},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.853},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.852},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.852},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.85},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.849},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.849},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.844},{"type":"color_analogous","target":"minecraft:jungle_button","label":"Couleurs analogues: Jungle Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence","label":"Couleurs analogues: Jungle Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence_gate","label":"Couleurs analogues: Jungle Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_planks","label":"Couleurs analogues: Jungle Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_pressure_plate","label":"Couleurs analogues: Jungle Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sign","label":"Couleurs analogues: Jungle Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_slab","label":"Couleurs analogues: Jungle Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_stairs","label":"Couleurs analogues: Jungle Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.953},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.953},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.953},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.904},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.904},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.881},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.866},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.856},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.945},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.927},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.925},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.924},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.915},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.915},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.915},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.91},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.881},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.832},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.829},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.79},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.79},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.784},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.75},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"building"},{"id":"minecraft:jungle_wall_hanging_sign","name":"Jungle Wall Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#ab8555","dominant_hex":"#9c844c","average_hex":"#ab8555","hue_group":"yellow","lightness":0.502,"saturation":0.3386,"palette":["#9c844c","#b4845c","#bc8c64","#947c44","#ac8454","#bc9464"],"color_groups":[{"hex":"#9c844c","weight":0.2188,"lightness":0.4549,"saturation":0.3448,"hue_group":"yellow"},{"hex":"#b4845c","weight":0.2109,"lightness":0.5333,"saturation":0.3697,"hue_group":"red"},{"hex":"#bc8c64","weight":0.207,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#947c44","weight":0.168,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#ac8454","weight":0.1445,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#bc9464","weight":0.0508,"lightness":0.5647,"saturation":0.3964,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_jungle_log.png","family":"jungle_wall_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:jungle_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lectern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_birch_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_hanging_sign","label":"Palette proche: Jungle Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_jungle_log","label":"Palette proche: Stripped Jungle Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_jungle_wood","label":"Palette proche: Stripped Jungle Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_shelf","label":"Palette proche: Jungle Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:beehive","label":"Palette proche: Beehive","confidence":0.939},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.935},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.926},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.926},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.926},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.926},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.926},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.926},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.871},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.845},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.844},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.838},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.838},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.838},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.838},{"type":"color_analogous","target":"minecraft:jungle_hanging_sign","label":"Couleurs analogues: Jungle Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_jungle_log","label":"Couleurs analogues: Stripped Jungle Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_jungle_wood","label":"Couleurs analogues: Stripped Jungle Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:glowstone","label":"Couleurs analogues: Glowstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:powered_rail","label":"Couleurs analogues: Powered Rail","confidence":0.96},{"type":"color_analogous","target":"minecraft:sniffer_egg","label":"Couleurs analogues: Sniffer Egg","confidence":0.96},{"type":"color_analogous","target":"minecraft:barrel","label":"Couleurs analogues: Barrel","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire","label":"Couleurs analogues: Fire","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.85},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.812},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.779},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.762},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.756},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.747},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.956},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.956},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.953},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.952},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.956},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.954},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.952},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.922},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.921},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.877},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:jungle_wall_sign","name":"Jungle Wall Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#a07351","dominant_hex":"#9a724a","average_hex":"#a07351","hue_group":"red","lightness":0.4725,"saturation":0.3278,"palette":["#9a724a","#bc8464","#ac7c54","#bc8c6c","#6c442c","#7c5434"],"color_groups":[{"hex":"#9a724a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc8464","weight":0.2031,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#ac7c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"red"},{"hex":"#bc8c6c","weight":0.1484,"lightness":0.5804,"saturation":0.3738,"hue_group":"red"},{"hex":"#6c442c","weight":0.1133,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#7c5434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_planks.png","family":"jungle_wall_sign","relations":[{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_door","label":"Palette proche: Jungle Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.919},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.913},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.852},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.849},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.847},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.846},{"type":"color_analogous","target":"minecraft:jungle_button","label":"Couleurs analogues: Jungle Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence","label":"Couleurs analogues: Jungle Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_fence_gate","label":"Couleurs analogues: Jungle Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_planks","label":"Couleurs analogues: Jungle Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_pressure_plate","label":"Couleurs analogues: Jungle Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sign","label":"Couleurs analogues: Jungle Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_slab","label":"Couleurs analogues: Jungle Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_stairs","label":"Couleurs analogues: Jungle Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.889},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.863},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.936},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.936},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.924},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.916},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.915},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.914},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.907},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.907},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.89},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.842},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.819},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.775},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.74},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55}],"category":"building"},{"id":"minecraft:jungle_wood","name":"Jungle Wood","entry_type":"block","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","history":[{"version":"1.3.1 12w30d","status":"added","notes":"Added six-sided wood blocks, which look similar to logs , but have the wood's \"bark\" texture (side texture when placed vertically) on all 6 sides."},{"version":"1.7.2 13w43a","status":"added","notes":"Added two new types of wood: acacia and dark oak."},{"version":"1","status":"added","notes":"Added top textures of the bark blocks."}],"colors":{"primary":"#554419","dominant_hex":"#5b451c","average_hex":"#554419","hue_group":"yellow","lightness":0.2157,"saturation":0.5455,"palette":["#5b451c","#443414","#6a4f24","#543c14","#3c3414","#7a5e24"],"color_groups":[{"hex":"#5b451c","weight":0.3242,"lightness":0.2333,"saturation":0.5294,"hue_group":"yellow"},{"hex":"#443414","weight":0.1953,"lightness":0.1725,"saturation":0.5455,"hue_group":"yellow"},{"hex":"#6a4f24","weight":0.1836,"lightness":0.2784,"saturation":0.493,"hue_group":"yellow"},{"hex":"#543c14","weight":0.1523,"lightness":0.2039,"saturation":0.6154,"hue_group":"yellow"},{"hex":"#3c3414","weight":0.0781,"lightness":0.1569,"saturation":0.5,"hue_group":"yellow"},{"hex":"#7a5e24","weight":0.0664,"lightness":0.3098,"saturation":0.5443,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_log.png","family":"jungle","relations":[{"type":"variants","target":"minecraft:jungle_door","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_door","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_fence","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_fence","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_leaves","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_leaves","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_log","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_log","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_planks","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_planks","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_sapling","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_sapling","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_slab","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_slab","label":"Related set: jungle","confidence":0.8},{"type":"variants","target":"minecraft:jungle_stairs","label":"Same family: jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:jungle_stairs","label":"Related set: jungle","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cartography_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:podzol","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_log","label":"Palette proche: Jungle Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_door","label":"Palette proche: Dark Oak Door","confidence":0.891},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.889},{"type":"color_neighbors","target":"minecraft:podzol","label":"Palette proche: Podzol","confidence":0.877},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.875},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.872},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.872},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.872},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.872},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.872},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.872},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.872},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.768},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.768},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.761},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.761},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.76},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.747},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.725},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.717},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.699},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.699},{"type":"color_analogous","target":"minecraft:jungle_log","label":"Couleurs analogues: Jungle Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:bell","label":"Couleurs analogues: Bell","confidence":0.947},{"type":"color_analogous","target":"minecraft:yellow_candle","label":"Couleurs analogues: Yellow Candle","confidence":0.933},{"type":"color_analogous","target":"minecraft:rose_bush","label":"Couleurs analogues: Rose Bush","confidence":0.923},{"type":"color_analogous","target":"minecraft:birch_shelf","label":"Couleurs analogues: Birch Shelf","confidence":0.922},{"type":"color_analogous","target":"minecraft:fletching_table","label":"Couleurs analogues: Fletching Table","confidence":0.922},{"type":"color_analogous","target":"minecraft:dirt_path","label":"Couleurs analogues: Dirt Path","confidence":0.92},{"type":"color_analogous","target":"minecraft:yellow_concrete","label":"Couleurs analogues: Yellow Concrete","confidence":0.918},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.944},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.944},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.907},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.897},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.897},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.842},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.826},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.852},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.852},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.837},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.837},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.836},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.836},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.835},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.828},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.818},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.665},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.664},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.66},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.66},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.636},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.721},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.688},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.674},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.674},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.674},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.674},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.666},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.64}],"category":"building"},{"id":"minecraft:kelp","name":"Kelp","entry_type":"block","description":"Kelp is aquatic algae found in most oceans. It can be planted underwater and grows over time (though not forever) or from bone meal usage. Smelting it results in dried kelp, which is edible and craftable into dried kelp blocks.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added kelp."},{"version":"6","status":"added","notes":"Added 5 new sound events that apply to kelp: block.wet_grass.break , block.wet_grass.fall , block.wet_grass.hit , block.wet_grass.place , and block.wet_grass.step ."},{"version":"3 emeralds .","status":"added","notes":"Added wandering traders , which can sell kelp for 3 emeralds ."}],"colors":{"primary":"#578c2d","dominant_hex":"#5cac34","average_hex":"#578c2d","hue_group":"green","lightness":0.3627,"saturation":0.5135,"palette":["#5cac34","#5c8434","#54742c","#4e5e1c","#5c7424","#44541c"],"color_groups":[{"hex":"#5cac34","weight":0.4478,"lightness":0.4392,"saturation":0.5357,"hue_group":"green"},{"hex":"#5c8434","weight":0.2141,"lightness":0.3608,"saturation":0.4348,"hue_group":"green"},{"hex":"#54742c","weight":0.1406,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#4e5e1c","weight":0.0817,"lightness":0.2392,"saturation":0.541,"hue_group":"yellow"},{"hex":"#5c7424","weight":0.0745,"lightness":0.298,"saturation":0.5263,"hue_group":"yellow"},{"hex":"#44541c","weight":0.0414,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/kelp.png","family":"kelp","relations":[{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sunflower","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:emerald_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berry_bush","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_block","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:kelp_plant","label":"Palette proche: Kelp Plant","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.882},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.85},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.85},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.85},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.849},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.845},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.845},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.842},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.841},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.832},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.692},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.692},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.69},{"type":"color_bridge","target":"minecraft:firefly_bush","label":"Pont de nuance par palette: Firefly Bush","confidence":0.684},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Door","confidence":0.673},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par sous-ton: Weathered Copper Door","confidence":0.673},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Trapdoor","confidence":0.665},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Weathered Copper Trapdoor","confidence":0.665},{"type":"color_analogous","target":"minecraft:lime_concrete","label":"Couleurs analogues: Lime Concrete","confidence":0.943},{"type":"color_analogous","target":"minecraft:dried_kelp_block","label":"Couleurs analogues: Dried Kelp Block","confidence":0.93},{"type":"color_analogous","target":"minecraft:lime_candle","label":"Couleurs analogues: Lime Candle","confidence":0.914},{"type":"color_analogous","target":"minecraft:kelp_plant","label":"Couleurs analogues: Kelp Plant","confidence":0.91},{"type":"color_analogous","target":"minecraft:jungle_sapling","label":"Couleurs analogues: Jungle Sapling","confidence":0.91},{"type":"color_analogous","target":"minecraft:potted_jungle_sapling","label":"Couleurs analogues: Potted Jungle Sapling","confidence":0.91},{"type":"color_analogous","target":"minecraft:cactus","label":"Couleurs analogues: Cactus","confidence":0.901},{"type":"color_analogous","target":"minecraft:lime_shulker_box","label":"Couleurs analogues: Lime Shulker Box","confidence":0.901},{"type":"color_complement","target":"minecraft:purple_concrete","label":"Contraste complementaire: Purple Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:purple_candle","label":"Contraste complementaire: Purple Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:purple_stained_glass","label":"Contraste complementaire: Purple Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:purple_shulker_box","label":"Contraste complementaire: Purple Shulker Box","confidence":0.956},{"type":"color_complement","target":"minecraft:dragon_egg","label":"Contraste complementaire: Dragon Egg","confidence":0.95},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.923},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.885},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:crimson_button","label":"Harmonie triadique: Crimson Button","confidence":0.943},{"type":"color_triad","target":"minecraft:crimson_fence","label":"Harmonie triadique: Crimson Fence","confidence":0.943},{"type":"color_triad","target":"minecraft:crimson_fence_gate","label":"Harmonie triadique: Crimson Fence Gate","confidence":0.943},{"type":"color_triad","target":"minecraft:crimson_planks","label":"Harmonie triadique: Crimson Planks","confidence":0.943},{"type":"color_triad","target":"minecraft:crimson_pressure_plate","label":"Harmonie triadique: Crimson Pressure Plate","confidence":0.943},{"type":"color_triad","target":"minecraft:crimson_sign","label":"Harmonie triadique: Crimson Sign","confidence":0.943},{"type":"color_square","target":"minecraft:blue_orchid","label":"Harmonie carree: Blue Orchid","confidence":0.96},{"type":"color_square","target":"minecraft:potted_blue_orchid","label":"Harmonie carree: Potted Blue Orchid","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_shelf","label":"Harmonie carree: Mangrove Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:red_glazed_terracotta","label":"Harmonie carree: Red Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_carpet","label":"Harmonie carree: Cyan Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_wool","label":"Harmonie carree: Cyan Wool","confidence":0.96},{"type":"color_square","target":"minecraft:potted_red_mushroom","label":"Harmonie carree: Potted Red Mushroom","confidence":0.96},{"type":"color_square","target":"minecraft:red_mushroom","label":"Harmonie carree: Red Mushroom","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.575},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55}],"category":"natural"},{"id":"minecraft:kelp_plant","name":"Kelp Plant","entry_type":"block","description":"Kelp is aquatic algae found in most oceans. It can be planted underwater and grows over time (though not forever) or from bone meal usage. Smelting it results in dried kelp, which is edible and craftable into dried kelp blocks.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added kelp."},{"version":"6","status":"added","notes":"Added 5 new sound events that apply to kelp: block.wet_grass.break , block.wet_grass.fall , block.wet_grass.hit , block.wet_grass.place , and block.wet_grass.step ."},{"version":"3 emeralds .","status":"added","notes":"Added wandering traders , which can sell kelp for 3 emeralds ."}],"colors":{"primary":"#57822b","dominant_hex":"#5c8434","average_hex":"#57822b","hue_group":"yellow","lightness":0.3392,"saturation":0.5029,"palette":["#5c8434","#5cac34","#4f5f1c","#54742c","#5c7424","#44541c"],"color_groups":[{"hex":"#5c8434","weight":0.2935,"lightness":0.3608,"saturation":0.4348,"hue_group":"green"},{"hex":"#5cac34","weight":0.2844,"lightness":0.4392,"saturation":0.5357,"hue_group":"green"},{"hex":"#4f5f1c","weight":0.1392,"lightness":0.2412,"saturation":0.5447,"hue_group":"yellow"},{"hex":"#54742c","weight":0.107,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#5c7424","weight":0.0955,"lightness":0.298,"saturation":0.5263,"hue_group":"yellow"},{"hex":"#44541c","weight":0.0804,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/kelp_plant.png","family":"kelp_plant","relations":[{"type":"visual_neighbors","target":"minecraft:cactus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:kelp","label":"Palette proche: Kelp","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.882},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.864},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.864},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.863},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.859},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.857},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.856},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.853},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.853},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.85},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.843},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.687},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.687},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.684},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.684},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.674},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Door","confidence":0.673},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par sous-ton: Weathered Copper Door","confidence":0.673},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.662},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.661},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.661},{"type":"color_analogous","target":"minecraft:cactus","label":"Couleurs analogues: Cactus","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sapling","label":"Couleurs analogues: Dark Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_dark_oak_sapling","label":"Couleurs analogues: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete","label":"Couleurs analogues: Lime Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_candle","label":"Couleurs analogues: Lime Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_shulker_box","label":"Couleurs analogues: Lime Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sapling","label":"Couleurs analogues: Jungle Sapling","confidence":0.942},{"type":"color_analogous","target":"minecraft:potted_jungle_sapling","label":"Couleurs analogues: Potted Jungle Sapling","confidence":0.942},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.932},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.932},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.922},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.922},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.913},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.91},{"type":"color_complement","target":"minecraft:purple_concrete","label":"Contraste complementaire: Purple Concrete","confidence":0.876},{"type":"color_complement","target":"minecraft:purple_stained_glass","label":"Contraste complementaire: Purple Stained Glass","confidence":0.873},{"type":"color_triad","target":"minecraft:cherry_log","label":"Harmonie triadique: Cherry Log","confidence":0.96},{"type":"color_triad","target":"minecraft:cherry_wood","label":"Harmonie triadique: Cherry Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.864},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.858},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.848},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.831},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.831},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.831},{"type":"color_square","target":"minecraft:red_stained_glass_pane","label":"Harmonie carree: Red Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:red_stained_glass","label":"Harmonie carree: Red Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:red_concrete","label":"Harmonie carree: Red Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_nylium","label":"Harmonie carree: Crimson Nylium","confidence":0.96},{"type":"color_square","target":"minecraft:netherrack","label":"Harmonie carree: Netherrack","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_candle","label":"Harmonie carree: Cyan Candle","confidence":0.96},{"type":"color_square","target":"minecraft:pink_terracotta","label":"Harmonie carree: Pink Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:powder_snow","label":"Harmonie carree: Powder Snow","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.599},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.565},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55}],"category":"natural"},{"id":"minecraft:knowledge_book","name":"Knowledge Book","entry_type":"item","description":"A knowledge book is a utility item that reveals available crafting recipes to the player when used.","history":[{"version":"1.12 17w13a","status":"added","notes":"Added knowledge books."}],"colors":{"primary":"#4b7749","dominant_hex":"#2c5c2c","average_hex":"#4b7749","hue_group":"green","lightness":0.3765,"saturation":0.2396,"palette":["#2c5c2c","#54ac54","#408140","#b0b0b0","#141404","#1c341c"],"color_groups":[{"hex":"#2c5c2c","weight":0.2434,"lightness":0.2667,"saturation":0.3529,"hue_group":"green"},{"hex":"#54ac54","weight":0.2237,"lightness":0.502,"saturation":0.3465,"hue_group":"green"},{"hex":"#408140","weight":0.1842,"lightness":0.3784,"saturation":0.3368,"hue_group":"green"},{"hex":"#b0b0b0","weight":0.1645,"lightness":0.6902,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141404","weight":0.1053,"lightness":0.0471,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#1c341c","weight":0.0789,"lightness":0.1569,"saturation":0.3,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/knowledge_book.png","family":"knowledge_book","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_ball","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_hoe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55}],"category":"item"},{"id":"minecraft:ladder","name":"Ladder","entry_type":"block","description":"The ladder is a block used for climbing walls either vertically or horizontally. They can be placed only on the sides of other blocks.","history":[{"version":"20100607","status":"added","notes":"Added ladders. In an interview with Rock, Paper, Shotgun , Notch stated that he never originally wanted to add ladders because they are never fun, and that the fans convinced him to do it. [ 1 ]"},{"version":"1.4.2 12w38a","status":"added","notes":"Added a sound for climbing up ladders."},{"version":"1.5 13w02a","status":"added","notes":"Added death messages for ladders: \"Player fell off a ladder\"."}],"colors":{"primary":"#7d6137","dominant_hex":"#64542c","average_hex":"#7d6137","hue_group":"yellow","lightness":0.3529,"saturation":0.3889,"palette":["#64542c","#b48c54","#543c24","#947444","#7c6434","#3c2c1c"],"color_groups":[{"hex":"#64542c","weight":0.2778,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#b48c54","weight":0.2361,"lightness":0.5176,"saturation":0.3902,"hue_group":"yellow"},{"hex":"#543c24","weight":0.1667,"lightness":0.2353,"saturation":0.4,"hue_group":"yellow"},{"hex":"#947444","weight":0.1389,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.125,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#3c2c1c","weight":0.0556,"lightness":0.1725,"saturation":0.3636,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/ladder.png","family":"ladder","relations":[{"type":"visual_neighbors","target":"minecraft:oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.937},{"type":"color_neighbors","target":"minecraft:oak_shelf","label":"Palette proche: Oak Shelf","confidence":0.937},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.937},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.932},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.932},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.932},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.932},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.932},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.932},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.932},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.881},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.877},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.837},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.814},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.814},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.812},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.811},{"type":"color_analogous","target":"minecraft:oak_trapdoor","label":"Couleurs analogues: Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_log","label":"Couleurs analogues: Stripped Spruce Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_wood","label":"Couleurs analogues: Stripped Spruce Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:bookshelf","label":"Couleurs analogues: Bookshelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_log","label":"Couleurs analogues: Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wood","label":"Couleurs analogues: Oak Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.901},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.901},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.885},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.868},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.851},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.844},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.836},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.959},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.959},{"type":"color_triad","target":"minecraft:purple_carpet","label":"Harmonie triadique: Purple Carpet","confidence":0.958},{"type":"color_triad","target":"minecraft:purple_wool","label":"Harmonie triadique: Purple Wool","confidence":0.958},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.949},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.949},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.947},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.943},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.911},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.868},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.859},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.597},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.564},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.551},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.551},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.551},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.551},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone","label":"Contraste clair sombre: Sandstone","confidence":0.55}],"category":""},{"id":"minecraft:lantern","name":"Lantern","entry_type":"block","description":"Lanterns are blocks that emit light.","history":[{"version":"1.14 18w46a","status":"added","notes":"Added lanterns."}],"colors":{"primary":"#6a5b54","dominant_hex":"#3c4454","average_hex":"#6a5b54","hue_group":"neutral","lightness":0.3725,"saturation":0.1158,"palette":["#3c4454","#4c5464","#f5be69","#8f4f2b","#444c5c","#242c3c"],"color_groups":[{"hex":"#3c4454","weight":0.2642,"lightness":0.2824,"saturation":0.1667,"hue_group":"blue"},{"hex":"#4c5464","weight":0.2264,"lightness":0.3451,"saturation":0.1364,"hue_group":"blue"},{"hex":"#f5be69","weight":0.1698,"lightness":0.6863,"saturation":0.875,"hue_group":"yellow"},{"hex":"#8f4f2b","weight":0.1509,"lightness":0.3647,"saturation":0.5376,"hue_group":"red"},{"hex":"#444c5c","weight":0.1132,"lightness":0.3137,"saturation":0.15,"hue_group":"blue"},{"hex":"#242c3c","weight":0.0755,"lightness":0.1882,"saturation":0.25,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lantern.png","family":"lantern","relations":[{"type":"visual_neighbors","target":"minecraft:frogspawn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:peony","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:structure_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_core","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:iron_chain","label":"Palette proche: Iron Chain","confidence":0.797},{"type":"color_neighbors","target":"minecraft:campfire","label":"Palette proche: Campfire","confidence":0.789},{"type":"color_neighbors","target":"minecraft:soul_campfire","label":"Palette proche: Soul Campfire","confidence":0.789},{"type":"color_neighbors","target":"minecraft:trial_spawner","label":"Palette proche: Trial Spawner","confidence":0.788},{"type":"color_neighbors","target":"minecraft:brown_candle","label":"Palette proche: Brown Candle","confidence":0.768},{"type":"color_neighbors","target":"minecraft:candle","label":"Palette proche: Candle","confidence":0.717},{"type":"color_neighbors","target":"minecraft:soul_lantern","label":"Palette proche: Soul Lantern","confidence":0.717},{"type":"color_neighbors","target":"minecraft:gray_concrete_powder","label":"Palette proche: Gray Concrete Powder","confidence":0.704},{"type":"color_neighbors","target":"minecraft:vault","label":"Palette proche: Vault","confidence":0.698},{"type":"color_neighbors","target":"minecraft:yellow_candle","label":"Palette proche: Yellow Candle","confidence":0.695},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.693},{"type":"color_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Palette proche: Gray Glazed Terracotta","confidence":0.677},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par palette: Iron Chain","confidence":0.833},{"type":"color_bridge","target":"minecraft:campfire","label":"Pont de nuance par palette: Campfire","confidence":0.826},{"type":"color_bridge","target":"minecraft:soul_campfire","label":"Pont de nuance par palette: Soul Campfire","confidence":0.826},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par palette: Trial Spawner","confidence":0.825},{"type":"color_bridge","target":"minecraft:brown_candle","label":"Pont de nuance par sous-ton: Brown Candle","confidence":0.809},{"type":"color_bridge","target":"minecraft:candle","label":"Pont de nuance par sous-ton: Candle","confidence":0.767},{"type":"color_bridge","target":"minecraft:soul_lantern","label":"Pont de nuance par sous-ton: Soul Lantern","confidence":0.767},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.756},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par palette: Vault","confidence":0.751},{"type":"color_bridge","target":"minecraft:yellow_candle","label":"Pont de nuance par sous-ton: Yellow Candle","confidence":0.749},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.589},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.556},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55}],"category":""},{"id":"minecraft:lapis_block","name":"Lapis Block","entry_type":"block","description":"A block of lapis lazuli, internally known as a lapis block, is a mineral block equivalent to nine pieces of lapis lazuli.","history":[{"version":"1.2","status":"added","notes":"Added lapis lazuli blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of lapis lazuli, providing the football/regular effect to the mob."}],"colors":{"primary":"#1f438c","dominant_hex":"#1b4282","average_hex":"#1f438c","hue_group":"blue","lightness":0.3353,"saturation":0.6374,"palette":["#1b4282","#244d8d","#1c3c94","#1c3488","#285899","#245cac"],"color_groups":[{"hex":"#1b4282","weight":0.2891,"lightness":0.3078,"saturation":0.6561,"hue_group":"blue"},{"hex":"#244d8d","weight":0.2422,"lightness":0.3471,"saturation":0.5932,"hue_group":"blue"},{"hex":"#1c3c94","weight":0.1992,"lightness":0.3451,"saturation":0.6818,"hue_group":"blue"},{"hex":"#1c3488","weight":0.1133,"lightness":0.3216,"saturation":0.6585,"hue_group":"blue"},{"hex":"#285899","weight":0.1016,"lightness":0.3784,"saturation":0.5855,"hue_group":"blue"},{"hex":"#245cac","weight":0.0547,"lightness":0.4078,"saturation":0.6538,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lapis_block.png","family":"lapis_block","relations":[{"type":"visual_neighbors","target":"minecraft:blue_shulker_box","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.829},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.817},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.815},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.815},{"type":"color_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Palette proche: Blue Stained Glass Pane","confidence":0.785},{"type":"color_neighbors","target":"minecraft:light_blue_concrete","label":"Palette proche: Light Blue Concrete","confidence":0.735},{"type":"color_neighbors","target":"minecraft:blue_concrete","label":"Palette proche: Blue Concrete","confidence":0.734},{"type":"color_neighbors","target":"minecraft:blue_shulker_box","label":"Palette proche: Blue Shulker Box","confidence":0.733},{"type":"color_neighbors","target":"minecraft:blue_stained_glass","label":"Palette proche: Blue Stained Glass","confidence":0.731},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.722},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.705},{"type":"color_neighbors","target":"minecraft:blue_carpet","label":"Palette proche: Blue Carpet","confidence":0.698},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.668},{"type":"color_bridge","target":"minecraft:warped_wart_block","label":"Pont de nuance par palette: Warped Wart Block","confidence":0.649},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.634},{"type":"color_bridge","target":"minecraft:potted_warped_roots","label":"Pont de nuance par palette: Potted Warped Roots","confidence":0.618},{"type":"color_bridge","target":"minecraft:warped_roots","label":"Pont de nuance par palette: Warped Roots","confidence":0.616},{"type":"color_bridge","target":"minecraft:twisting_vines_plant","label":"Pont de nuance par palette: Twisting Vines Plant","confidence":0.614},{"type":"color_bridge","target":"minecraft:nether_sprouts","label":"Pont de nuance par palette: Nether Sprouts","confidence":0.611},{"type":"color_bridge","target":"minecraft:twisting_vines","label":"Pont de nuance par palette: Twisting Vines","confidence":0.608},{"type":"color_bridge","target":"minecraft:cyan_candle","label":"Pont de nuance par palette: Cyan Candle","confidence":0.604},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.596},{"type":"color_analogous","target":"minecraft:spawner","label":"Couleurs analogues: Spawner","confidence":0.918},{"type":"color_analogous","target":"minecraft:packed_ice","label":"Couleurs analogues: Packed Ice","confidence":0.885},{"type":"color_analogous","target":"minecraft:black_concrete","label":"Couleurs analogues: Black Concrete","confidence":0.883},{"type":"color_analogous","target":"minecraft:ice","label":"Couleurs analogues: Ice","confidence":0.881},{"type":"color_analogous","target":"minecraft:tube_coral_fan","label":"Couleurs analogues: Tube Coral Fan","confidence":0.871},{"type":"color_analogous","target":"minecraft:tube_coral_wall_fan","label":"Couleurs analogues: Tube Coral Wall Fan","confidence":0.871},{"type":"color_analogous","target":"minecraft:frosted_ice","label":"Couleurs analogues: Frosted Ice","confidence":0.87},{"type":"color_analogous","target":"minecraft:blue_ice","label":"Couleurs analogues: Blue Ice","confidence":0.857},{"type":"color_complement","target":"minecraft:bee_nest","label":"Contraste complementaire: Bee Nest","confidence":0.96},{"type":"color_complement","target":"minecraft:tall_dry_grass","label":"Contraste complementaire: Tall Dry Grass","confidence":0.96},{"type":"color_complement","target":"minecraft:honey_block","label":"Contraste complementaire: Honey Block","confidence":0.96},{"type":"color_complement","target":"minecraft:yellow_terracotta","label":"Contraste complementaire: Yellow Terracotta","confidence":0.954},{"type":"color_complement","target":"minecraft:dirt_path","label":"Contraste complementaire: Dirt Path","confidence":0.941},{"type":"color_complement","target":"minecraft:torch","label":"Contraste complementaire: Torch","confidence":0.94},{"type":"color_complement","target":"minecraft:wall_torch","label":"Contraste complementaire: Wall Torch","confidence":0.94},{"type":"color_complement","target":"minecraft:raw_gold_block","label":"Contraste complementaire: Raw Gold Block","confidence":0.936},{"type":"color_triad","target":"minecraft:purple_terracotta","label":"Harmonie triadique: Purple Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_shulker_box","label":"Harmonie triadique: Pink Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_stained_glass_pane","label":"Harmonie triadique: Pink Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_glazed_terracotta","label":"Harmonie triadique: Pink Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_carpet","label":"Harmonie triadique: Pink Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_wool","label":"Harmonie triadique: Pink Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_stained_glass","label":"Harmonie triadique: Pink Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_terracotta","label":"Harmonie triadique: Magenta Terracotta","confidence":0.95},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.938},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.776},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.775},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.77},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.77},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.746},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.743},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.71},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.6},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.6},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.596},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.591},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.557},{"type":"value_contrast","target":"minecraft:packed_ice","label":"Contraste clair sombre: Packed Ice","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_ice","label":"Contraste clair sombre: Blue Ice","confidence":0.55},{"type":"value_contrast","target":"minecraft:frosted_ice","label":"Contraste clair sombre: Frosted Ice","confidence":0.55}],"category":"resource"},{"id":"minecraft:lapis_lazuli","name":"Lapis Lazuli","entry_type":"item","description":"Lapis lazuli is a mineral required to enchant items in an enchanting table. It is also a major source of blue dye.","history":[{"version":"1.2","status":"added","notes":"Added lapis lazuli."},{"version":"1.11 16w39a","status":"added","notes":"Added the ability to dye shulker boxes ."},{"version":"17w15a","status":"added","notes":"Added the ability to dye beds ."}],"colors":{"primary":"#2a53a8","dominant_hex":"#345cc4","average_hex":"#2a53a8","hue_group":"blue","lightness":0.4118,"saturation":0.6,"palette":["#345cc4","#6187e6","#042464","#1c54ac","#1c3c8c","#14448c"],"color_groups":[{"hex":"#345cc4","weight":0.2233,"lightness":0.4863,"saturation":0.5806,"hue_group":"blue"},{"hex":"#6187e6","weight":0.2039,"lightness":0.6412,"saturation":0.7268,"hue_group":"blue"},{"hex":"#042464","weight":0.1845,"lightness":0.2039,"saturation":0.9231,"hue_group":"blue"},{"hex":"#1c54ac","weight":0.1748,"lightness":0.3922,"saturation":0.72,"hue_group":"blue"},{"hex":"#1c3c8c","weight":0.1165,"lightness":0.3294,"saturation":0.6667,"hue_group":"blue"},{"hex":"#14448c","weight":0.0971,"lightness":0.3137,"saturation":0.75,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/lapis_lazuli.png","family":"lapis_lazuli","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_shard","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_armor_trim_smithing_template","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mace","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ominous_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lingering_potion","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:lapis_ore","name":"Lapis Ore","entry_type":"block","description":"Lapis lazuli ore, internally known as lapis ore, is the ore block from which lapis lazuli is obtained. Deepslate lapis lazuli ore, internally known as deepslate lapis ore, is a variant of lapis lazuli ore that generates in deepslate layers.","history":[{"version":"1.2","status":"added","notes":"Added lapis lazuli ore."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb lapis lazuli ore, providing the football/regular effect to the mob."}],"colors":{"primary":"#6b768d","dominant_hex":"#7c7c7c","average_hex":"#6b768d","hue_group":"blue","lightness":0.4863,"saturation":0.1371,"palette":["#7c7c7c","#2552b7","#656565","#8c8c8c","#747474","#96a0b7"],"color_groups":[{"hex":"#7c7c7c","weight":0.25,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2552b7","weight":0.207,"lightness":0.4314,"saturation":0.6636,"hue_group":"blue"},{"hex":"#656565","weight":0.1523,"lightness":0.3961,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1406,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1367,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#96a0b7","weight":0.1133,"lightness":0.6529,"saturation":0.1864,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lapis_ore.png","family":"lapis_ore","relations":[{"type":"visual_neighbors","target":"minecraft:deepslate_lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_hyphae","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stem","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeating_command_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chain","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:budding_amethyst","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:diamond_ore","label":"Palette proche: Diamond Ore","confidence":0.894},{"type":"color_neighbors","target":"minecraft:deepslate_lapis_ore","label":"Palette proche: Deepslate Lapis Ore","confidence":0.869},{"type":"color_neighbors","target":"minecraft:lodestone","label":"Palette proche: Lodestone","confidence":0.858},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.853},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.853},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.853},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.853},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.853},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.853},{"type":"color_neighbors","target":"minecraft:stone_bricks","label":"Palette proche: Stone Bricks","confidence":0.853},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.853},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.853},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par palette: Diamond Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par palette: Deepslate Lapis Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:lodestone","label":"Pont de nuance par palette: Lodestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_stairs","label":"Pont de nuance par palette: Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_wall","label":"Pont de nuance par palette: Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_bricks","label":"Pont de nuance par palette: Stone Bricks","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55}],"category":"resource"},{"id":"minecraft:large_amethyst_bud","name":"Large Amethyst Bud","entry_type":"block","description":"Amethyst buds are the first three stages of growth of amethyst clusters, which grow on budding amethyst. Amethyst clusters are the fourth and final growth stage of amethyst buds, which drop amethyst shards when mined.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added amethyst buds and amethyst clusters."}],"colors":{"primary":"#a17ecb","dominant_hex":"#c79ff4","average_hex":"#a17ecb","hue_group":"blue","lightness":0.6451,"saturation":0.4254,"palette":["#c79ff4","#8c6ccc","#64449c","#7c5cb4","#fccce4","#fcfcd4"],"color_groups":[{"hex":"#c79ff4","weight":0.2436,"lightness":0.7902,"saturation":0.7944,"hue_group":"blue"},{"hex":"#8c6ccc","weight":0.2179,"lightness":0.6118,"saturation":0.4848,"hue_group":"blue"},{"hex":"#64449c","weight":0.2051,"lightness":0.4392,"saturation":0.3929,"hue_group":"blue"},{"hex":"#7c5cb4","weight":0.1795,"lightness":0.5333,"saturation":0.3697,"hue_group":"blue"},{"hex":"#fccce4","weight":0.0897,"lightness":0.8941,"saturation":0.8889,"hue_group":"red"},{"hex":"#fcfcd4","weight":0.0641,"lightness":0.9098,"saturation":0.8696,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/large_amethyst_bud.png","family":"large_amethyst_bud","relations":[{"type":"visual_neighbors","target":"minecraft:medium_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_cluster","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:budding_amethyst","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeating_command_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:medium_amethyst_bud","label":"Palette proche: Medium Amethyst Bud","confidence":0.94},{"type":"color_neighbors","target":"minecraft:amethyst_cluster","label":"Palette proche: Amethyst Cluster","confidence":0.94},{"type":"color_neighbors","target":"minecraft:small_amethyst_bud","label":"Palette proche: Small Amethyst Bud","confidence":0.883},{"type":"color_neighbors","target":"minecraft:amethyst_block","label":"Palette proche: Amethyst Block","confidence":0.87},{"type":"color_neighbors","target":"minecraft:budding_amethyst","label":"Palette proche: Budding Amethyst","confidence":0.856},{"type":"color_neighbors","target":"minecraft:repeating_command_block","label":"Palette proche: Repeating Command Block","confidence":0.686},{"type":"color_neighbors","target":"minecraft:allium","label":"Palette proche: Allium","confidence":0.649},{"type":"color_neighbors","target":"minecraft:potted_allium","label":"Palette proche: Potted Allium","confidence":0.649},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.63},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.614},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.58},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.633},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.61},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.61},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.61},{"type":"color_bridge","target":"minecraft:magenta_glazed_terracotta","label":"Pont de nuance par palette: Magenta Glazed Terracotta","confidence":0.604},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.603},{"type":"color_bridge","target":"minecraft:pink_petals","label":"Pont de nuance par palette: Pink Petals","confidence":0.601},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.601},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.58},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.58},{"type":"color_analogous","target":"minecraft:medium_amethyst_bud","label":"Couleurs analogues: Medium Amethyst Bud","confidence":0.96},{"type":"color_analogous","target":"minecraft:amethyst_cluster","label":"Couleurs analogues: Amethyst Cluster","confidence":0.96},{"type":"color_analogous","target":"minecraft:allium","label":"Couleurs analogues: Allium","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_allium","label":"Couleurs analogues: Potted Allium","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_portal","label":"Couleurs analogues: Nether Portal","confidence":0.907},{"type":"color_analogous","target":"minecraft:budding_amethyst","label":"Couleurs analogues: Budding Amethyst","confidence":0.903},{"type":"color_analogous","target":"minecraft:amethyst_block","label":"Couleurs analogues: Amethyst Block","confidence":0.894},{"type":"color_analogous","target":"minecraft:crying_obsidian","label":"Couleurs analogues: Crying Obsidian","confidence":0.891},{"type":"color_complement","target":"minecraft:azure_bluet","label":"Contraste complementaire: Azure Bluet","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_azure_bluet","label":"Contraste complementaire: Potted Azure Bluet","confidence":0.96},{"type":"color_complement","target":"minecraft:oak_sapling","label":"Contraste complementaire: Oak Sapling","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_oak_sapling","label":"Contraste complementaire: Potted Oak Sapling","confidence":0.96},{"type":"color_complement","target":"minecraft:lime_carpet","label":"Contraste complementaire: Lime Carpet","confidence":0.958},{"type":"color_complement","target":"minecraft:lime_wool","label":"Contraste complementaire: Lime Wool","confidence":0.958},{"type":"color_complement","target":"minecraft:sugar_cane","label":"Contraste complementaire: Sugar Cane","confidence":0.953},{"type":"color_complement","target":"minecraft:orange_tulip","label":"Contraste complementaire: Orange Tulip","confidence":0.952},{"type":"color_triad","target":"minecraft:jungle_door","label":"Harmonie triadique: Jungle Door","confidence":0.96},{"type":"color_triad","target":"minecraft:glow_item_frame","label":"Harmonie triadique: Glow Item Frame","confidence":0.96},{"type":"color_triad","target":"minecraft:orange_stained_glass_pane","label":"Harmonie triadique: Orange Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_mushroom_block","label":"Harmonie triadique: Brown Mushroom Block","confidence":0.96},{"type":"color_triad","target":"minecraft:farmland","label":"Harmonie triadique: Farmland","confidence":0.96},{"type":"color_triad","target":"minecraft:orange_stained_glass","label":"Harmonie triadique: Orange Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:composter","label":"Harmonie triadique: Composter","confidence":0.96},{"type":"color_triad","target":"minecraft:coarse_dirt","label":"Harmonie triadique: Coarse Dirt","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_hanging_sign","label":"Harmonie carree: Cherry Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_wall_hanging_sign","label":"Harmonie carree: Cherry Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_cherry_log","label":"Harmonie carree: Stripped Cherry Log","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_cherry_wood","label":"Harmonie carree: Stripped Cherry Wood","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_hyphae","label":"Harmonie carree: Stripped Warped Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_stem","label":"Harmonie carree: Stripped Warped Stem","confidence":0.96},{"type":"color_square","target":"minecraft:warped_hanging_sign","label":"Harmonie carree: Warped Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:warped_wall_hanging_sign","label":"Harmonie carree: Warped Wall Hanging Sign","confidence":0.96},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.559},{"type":"value_contrast","target":"minecraft:respawn_anchor","label":"Contraste clair sombre: Respawn Anchor","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_hyphae","label":"Contraste clair sombre: Warped Hyphae","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_stem","label":"Contraste clair sombre: Warped Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone","label":"Contraste clair sombre: Polished Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_button","label":"Contraste clair sombre: Polished Blackstone Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_pressure_plate","label":"Contraste clair sombre: Polished Blackstone Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_slab","label":"Contraste clair sombre: Polished Blackstone Slab","confidence":0.55}],"category":""},{"id":"minecraft:large_fern","name":"Large Fern","entry_type":"block","description":"A large fern is the 2-block tall variant of the fern.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added large ferns."}],"colors":{"primary":"#848484","dominant_hex":"#8c8c8c","average_hex":"#848484","hue_group":"neutral","lightness":0.5176,"saturation":0.0,"palette":["#8c8c8c","#7c7c7c","#a4a4a4","#6c6c6c","#545454"],"color_groups":[{"hex":"#8c8c8c","weight":0.2898,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.2727,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.2045,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1818,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.0511,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/large_fern_bottom.png","family":"large_fern","relations":[{"type":"visual_neighbors","target":"minecraft:lily_pad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tripwire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bush","label":"Palette proche: Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:bush","label":"Pont de nuance par palette: Bush","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:lily_pad","label":"Pont de nuance par palette: Lily Pad","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone","label":"Contraste clair sombre: Blackstone","confidence":0.55}],"category":""},{"id":"minecraft:lava","name":"Lava","entry_type":"block","description":"Lava is a light-emitting fluid that causes fire damage, mostly found in the lower reaches of the Overworld and the Nether.","history":[{"version":"0.0.12a release","status":"added","notes":"Added lava."},{"version":"0.0.19a","status":"added","notes":"Added a procedural animated texture to lava. Old texture is still retained for use as a placeholder ."},{"version":"wiki-history","status":"added","notes":"Added lava layer to the bottom of the map."}],"colors":{"primary":"#d45a12","dominant_hex":"#cc420b","average_hex":"#d45a12","hue_group":"red","lightness":0.451,"saturation":0.8435,"palette":["#cc420b","#d24c0c","#dc6c19","#d45e14","#d4540c","#e28c2d"],"color_groups":[{"hex":"#cc420b","weight":0.2484,"lightness":0.4216,"saturation":0.8977,"hue_group":"red"},{"hex":"#d24c0c","weight":0.1756,"lightness":0.4353,"saturation":0.8919,"hue_group":"red"},{"hex":"#dc6c19","weight":0.1695,"lightness":0.4804,"saturation":0.7959,"hue_group":"red"},{"hex":"#d45e14","weight":0.1488,"lightness":0.4549,"saturation":0.8276,"hue_group":"red"},{"hex":"#d4540c","weight":0.1359,"lightness":0.4392,"saturation":0.8929,"hue_group":"red"},{"hex":"#e28c2d","weight":0.1217,"lightness":0.5314,"saturation":0.7573,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lava_still.png","family":"lava","relations":[{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_clump","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.927},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.914},{"type":"color_neighbors","target":"minecraft:resin_brick_stairs","label":"Palette proche: Resin Brick Stairs","confidence":0.914},{"type":"color_neighbors","target":"minecraft:resin_brick_wall","label":"Palette proche: Resin Brick Wall","confidence":0.914},{"type":"color_neighbors","target":"minecraft:resin_bricks","label":"Palette proche: Resin Bricks","confidence":0.914},{"type":"color_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Palette proche: Chiseled Resin Bricks","confidence":0.906},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.898},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.883},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.873},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.871},{"type":"color_neighbors","target":"minecraft:orange_concrete","label":"Palette proche: Orange Concrete","confidence":0.87},{"type":"color_neighbors","target":"minecraft:pumpkin","label":"Palette proche: Pumpkin","confidence":0.865},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.652},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.641},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.631},{"type":"color_bridge","target":"minecraft:potted_crimson_roots","label":"Pont de nuance par palette: Potted Crimson Roots","confidence":0.621},{"type":"color_bridge","target":"minecraft:crimson_roots","label":"Pont de nuance par palette: Crimson Roots","confidence":0.619},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.611},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.611},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.591},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.584},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.58},{"type":"color_analogous","target":"minecraft:resin_brick_slab","label":"Couleurs analogues: Resin Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_brick_stairs","label":"Couleurs analogues: Resin Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_brick_wall","label":"Couleurs analogues: Resin Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_bricks","label":"Couleurs analogues: Resin Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_block","label":"Couleurs analogues: Resin Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_terracotta","label":"Couleurs analogues: Orange Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_lantern","label":"Couleurs analogues: Copper Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_lantern","label":"Couleurs analogues: Waxed Copper Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.941},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.937},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.911},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.911},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.882},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.869},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.929},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.929},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.908},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.898},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.878},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.788},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.785},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.774},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.954},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.92},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.791},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.79},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.777},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.68},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.675},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:lava_bucket","name":"Lava Bucket","entry_type":"item","description":"A lava bucket is a bucket filled with lava.","history":[{"version":"20100615","status":"added","notes":"Added lava buckets."},{"version":"1.9 15w50a","status":"added","notes":"Added sounds for filling and pouring lava buckets."}],"colors":{"primary":"#96806f","dominant_hex":"#3c3533","average_hex":"#96806f","hue_group":"red","lightness":0.5118,"saturation":0.1566,"palette":["#3c3533","#bfb991","#d76533","#e1e1e1","#9a908e","#747474"],"color_groups":[{"hex":"#3c3533","weight":0.2945,"lightness":0.2176,"saturation":0.0811,"hue_group":"neutral"},{"hex":"#bfb991","weight":0.2055,"lightness":0.6588,"saturation":0.2644,"hue_group":"yellow"},{"hex":"#d76533","weight":0.1507,"lightness":0.5216,"saturation":0.6721,"hue_group":"red"},{"hex":"#e1e1e1","weight":0.1438,"lightness":0.8824,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9a908e","weight":0.1301,"lightness":0.5804,"saturation":0.0561,"hue_group":"neutral"},{"hex":"#747474","weight":0.0753,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/lava_bucket.png","family":"lava_bucket","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:zombified_piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shears","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_shell","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_scute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brush","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:lava_cauldron","name":"Lava Cauldron","entry_type":"block","description":"A cauldron is a block that can contain water, lava or powder snow and, in certain situations, collect them from the environment. In Bedrock Edition, it can also hold dyed water or potions, and can be used to efficiently create tipped arrows. It also serves as a leatherworker's job site block.","history":[{"version":"wiki","status":"observed","notes":"Wiki revision 3526851 at 2026-04-10T12:08:59Z."}],"colors":{"primary":"#4a494a","dominant_hex":"#4c4c4c","average_hex":"#4a494a","hue_group":"neutral","lightness":0.2882,"saturation":0.0068,"palette":["#4c4c4c","#5c5c5c","#34343c","#3c3c44","#646464","#2c2c34"],"color_groups":[{"hex":"#4c4c4c","weight":0.4167,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1538,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#34343c","weight":0.1474,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.1282,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#646464","weight":0.0962,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c34","weight":0.0577,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cauldron_top.png","family":"lava_cauldron","relations":[{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:basalt","label":"Palette proche: Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.94},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:basalt","label":"Pont de nuance par palette: Basalt","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.666},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.633},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.624},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.623},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.623},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.61},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.606},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.606}],"category":""},{"id":"minecraft:lead","name":"Lead","entry_type":"item","description":"Leads are utility items used to leash and lead certain entities. Leashed entities can be tied to fences or other entities by using the fence or entity while sneaking. A lead can be removed from an entity by shearing it.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added leads."},{"version":"wiki-history","status":"added","notes":"Added horses , donkeys , mules , skeleton horses , and zombie horses , which can be leashed, when tamed ."},{"version":"1.8 14w27a","status":"added","notes":"Added rabbits , which can be leashed."}],"colors":{"primary":"#86502c","dominant_hex":"#5c2c14","average_hex":"#86502c","hue_group":"red","lightness":0.349,"saturation":0.5056,"palette":["#5c2c14","#84441c","#aa744d","#a1643e","#a49c94","#b4ac9c"],"color_groups":[{"hex":"#5c2c14","weight":0.3462,"lightness":0.2196,"saturation":0.6429,"hue_group":"red"},{"hex":"#84441c","weight":0.2308,"lightness":0.3137,"saturation":0.65,"hue_group":"red"},{"hex":"#aa744d","weight":0.2051,"lightness":0.4843,"saturation":0.3765,"hue_group":"red"},{"hex":"#a1643e","weight":0.1795,"lightness":0.4373,"saturation":0.4439,"hue_group":"red"},{"hex":"#a49c94","weight":0.0256,"lightness":0.6118,"saturation":0.0808,"hue_group":"neutral"},{"hex":"#b4ac9c","weight":0.0128,"lightness":0.6588,"saturation":0.1379,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/lead.png","family":"lead","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:leaf_litter","name":"Leaf Litter","entry_type":"block","description":"Leaf litter is a thin decorative block resembling fallen leaves. Up to four can be placed in the same block space.","history":[{"version":"1.21.5 25w02a","status":"added","notes":"Added leaf litter."}],"colors":{"primary":"#ababab","dominant_hex":"#999999","average_hex":"#ababab","hue_group":"neutral","lightness":0.6706,"saturation":0.0,"palette":["#999999","#a4a4a4","#dddddd","#c2c2c2","#7c7c7c","#acacac"],"color_groups":[{"hex":"#999999","weight":0.2308,"lightness":0.6,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.2222,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dddddd","weight":0.188,"lightness":0.8667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c2c2c2","weight":0.1538,"lightness":0.7608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1453,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.0598,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/leaf_litter.png","family":"leaf_litter","relations":[{"type":"visual_neighbors","target":"minecraft:bubble_column","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:comparator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeater","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water","label":"Palette proche: Water","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:melon_stem","label":"Palette proche: Melon Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pumpkin_stem","label":"Palette proche: Pumpkin Stem","confidence":0.938},{"type":"color_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Palette proche: Attached Pumpkin Stem","confidence":0.936},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.935},{"type":"color_bridge","target":"minecraft:bubble_column","label":"Pont de nuance par palette: Bubble Column","confidence":0.86},{"type":"color_bridge","target":"minecraft:water","label":"Pont de nuance par palette: Water","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:melon_stem","label":"Pont de nuance par palette: Melon Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:pumpkin_stem","label":"Pont de nuance par palette: Pumpkin Stem","confidence":0.86},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.577},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.569},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.564},{"type":"value_contrast","target":"minecraft:gray_stained_glass","label":"Contraste clair sombre: Gray Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_stained_glass_pane","label":"Contraste clair sombre: Gray Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:chipped_anvil","label":"Contraste clair sombre: Chipped Anvil","confidence":0.55},{"type":"value_contrast","target":"minecraft:damaged_anvil","label":"Contraste clair sombre: Damaged Anvil","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_brick_slab","label":"Contraste clair sombre: Deepslate Brick Slab","confidence":0.55}],"category":""},{"id":"minecraft:leather","name":"Leather","entry_type":"item","description":"Leather is an item used to craft bundles, books, saddles, armor and other items.","history":[{"version":"v1.0.8","status":"added","notes":"Added leather."},{"version":"1.4.2 12w34a","status":"added","notes":"added item frames ."},{"version":"19w07a","status":"added","notes":"Added foxes , which sometimes spawn with leather in their mouths."}],"colors":{"primary":"#8e4227","dominant_hex":"#c45c34","average_hex":"#8e4227","hue_group":"red","lightness":0.3549,"saturation":0.5691,"palette":["#c45c34","#9c4c2c","#542414","#3c1c14","#d46c44","#8c3c24"],"color_groups":[{"hex":"#c45c34","weight":0.2422,"lightness":0.4863,"saturation":0.5806,"hue_group":"red"},{"hex":"#9c4c2c","weight":0.1953,"lightness":0.3922,"saturation":0.56,"hue_group":"red"},{"hex":"#542414","weight":0.1875,"lightness":0.2039,"saturation":0.6154,"hue_group":"red"},{"hex":"#3c1c14","weight":0.1719,"lightness":0.1569,"saturation":0.5,"hue_group":"red"},{"hex":"#d46c44","weight":0.1172,"lightness":0.549,"saturation":0.6261,"hue_group":"red"},{"hex":"#8c3c24","weight":0.0859,"lightness":0.3451,"saturation":0.5909,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/leather.png","family":"leather","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:saddle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_stew","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:leather_boots","name":"Leather Boots","entry_type":"item","description":"Leather boots are a variant of boots that are crafted from leather. They are the seventh-highest tier of boots, having the same armor points as golden, copper, and chainmail boots but with lower durability. Wearing them allows an entity to walk on and climb through powder snow. Like all leather armor, they can be dyed and protect the wearer from freezing.","history":[{"version":"0.31 20091231-2147","status":"added","notes":"Added cloth boots."},{"version":"20100218-0011","status":"added","notes":"Added a model for cloth boots."},{"version":"15w50a","status":"added","notes":"Added equip sounds for boots."}],"colors":{"primary":"#7e7e7e","dominant_hex":"#545454","average_hex":"#7e7e7e","hue_group":"neutral","lightness":0.4941,"saturation":0.0,"palette":["#545454","#b4b4b4","#343434","#cccccc","#949494"],"color_groups":[{"hex":"#545454","weight":0.32,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.28,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#343434","weight":0.2,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.16,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.04,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/leather_boots.png","family":"leather_armor","relations":[{"type":"variants","target":"minecraft:leather_chestplate","label":"Same family: leather_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:leather_chestplate","label":"Related set: leather_armor","confidence":0.8},{"type":"variants","target":"minecraft:leather_helmet","label":"Same family: leather_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:leather_helmet","label":"Related set: leather_armor","confidence":0.8},{"type":"variants","target":"minecraft:leather_leggings","label":"Same family: leather_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:leather_leggings","label":"Related set: leather_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:leather_armor","label":"Related set: leather_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:chainmail_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nautilus_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:milk_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_bucket","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:leather_chestplate","name":"Leather Chestplate","entry_type":"item","description":"A leather tunic is a variant of chestplate that is crafted from leather. It is the seventh-highest tier of chestplate, having the lowest armor points and durability. Like all leather armor, it can be dyed and protects the wearer from freezing.","history":[{"version":"0.31 20091231-2147","status":"added","notes":"Added cloth tunics, which were taken directly from one of notch's games, Legend of the Chambered ."},{"version":"20100218","status":"added","notes":"Added a model for cloth tunics."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#878787","dominant_hex":"#b4b4b4","average_hex":"#878787","hue_group":"neutral","lightness":0.5294,"saturation":0.0,"palette":["#b4b4b4","#949494","#545454","#343434","#cccccc","#747474"],"color_groups":[{"hex":"#b4b4b4","weight":0.2826,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1812,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1739,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#343434","weight":0.1594,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.1159,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.087,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/leather_chestplate.png","family":"leather_armor","relations":[{"type":"variants","target":"minecraft:leather_boots","label":"Same family: leather_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:leather_boots","label":"Related set: leather_armor","confidence":0.8},{"type":"variants","target":"minecraft:leather_helmet","label":"Same family: leather_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:leather_helmet","label":"Related set: leather_armor","confidence":0.8},{"type":"variants","target":"minecraft:leather_leggings","label":"Same family: leather_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:leather_leggings","label":"Related set: leather_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:leather_armor","label":"Related set: leather_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:milk_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_boat","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:leather_helmet","name":"Leather Helmet","entry_type":"item","description":"A leather cap is a variant of helmet that is crafted from leather. It is the eighth-highest tier of helmet, having the lowest armor points and durability. Like all leather armor, it can be dyed and protects the wearer from freezing.","history":[{"version":"0.31 20091231-2147","status":"added","notes":"Added cloth cap."},{"version":"20100218-0011","status":"added","notes":"Added a model of cloth caps."},{"version":"15w50a","status":"added","notes":"Added equip sounds for leather caps."}],"colors":{"primary":"#666666","dominant_hex":"#343434","average_hex":"#666666","hue_group":"neutral","lightness":0.4,"saturation":0.0,"palette":["#343434","#545454","#949494","#747474","#b4b4b4","#cccccc"],"color_groups":[{"hex":"#343434","weight":0.3,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.3,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.16,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.1,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.04,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/leather_helmet.png","family":"leather_armor","relations":[{"type":"variants","target":"minecraft:leather_boots","label":"Same family: leather_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:leather_boots","label":"Related set: leather_armor","confidence":0.8},{"type":"variants","target":"minecraft:leather_chestplate","label":"Same family: leather_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:leather_chestplate","label":"Related set: leather_armor","confidence":0.8},{"type":"variants","target":"minecraft:leather_leggings","label":"Same family: leather_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:leather_leggings","label":"Related set: leather_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:leather_armor","label":"Related set: leather_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nautilus_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:leather_horse_armor","name":"Leather Horse Armor","entry_type":"item","description":"Leather horse armor is the weakest tier of horse armor. It is the only type that is craftable. Similarly to leather armor, leather horse armor can be dyed and protects the wearer from freezing.","history":[{"version":"1.14 19w08a","status":"added","notes":"Added leather horse armor, crafted from 7 leather and can be dyed 12,326,391 different colors, similar to leather armor ."}],"colors":{"primary":"#bcbcbc","dominant_hex":"#9c9c9c","average_hex":"#bcbcbc","hue_group":"neutral","lightness":0.7373,"saturation":0.0,"palette":["#9c9c9c","#cccccc","#c4c4c4","#ececec","#dcdcdc"],"color_groups":[{"hex":"#9c9c9c","weight":0.3636,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.2727,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.2045,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ececec","weight":0.0909,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.0682,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/leather_horse_armor.png","family":"leather_horse_armor","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:polar_bear_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tipped_arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:feather","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_tears","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:paper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sugar","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:leather_leggings","name":"Leather Leggings","entry_type":"item","description":"Leather pants are a variant of leggings that are crafted from leather. They are the seventh-highest tier of leggings, having the lowest armor points and durability. Like all leather armor, they can be dyed and protect the wearer from freezing.","history":[{"version":"0.31 20091231-2147","status":"added","notes":"Added cloth pants. They were taken directly from one of Notch 's games, Legend of the Chambered ."},{"version":"20100218-0011","status":"added","notes":"Added a model for cloth pants."},{"version":"1.4.6 12w50a","status":"added","notes":"Added Thorns, which can be applied to leather pants."}],"colors":{"primary":"#707070","dominant_hex":"#343434","average_hex":"#707070","hue_group":"neutral","lightness":0.4392,"saturation":0.0,"palette":["#343434","#545454","#b4b4b4","#cccccc","#747474","#949494"],"color_groups":[{"hex":"#343434","weight":0.35,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.175,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.1625,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.1125,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/leather_leggings.png","family":"leather_armor","relations":[{"type":"variants","target":"minecraft:leather_boots","label":"Same family: leather_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:leather_boots","label":"Related set: leather_armor","confidence":0.8},{"type":"variants","target":"minecraft:leather_chestplate","label":"Same family: leather_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:leather_chestplate","label":"Related set: leather_armor","confidence":0.8},{"type":"variants","target":"minecraft:leather_helmet","label":"Same family: leather_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:leather_helmet","label":"Related set: leather_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:leather_armor","label":"Related set: leather_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_nautilus_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:lectern","name":"Lectern","entry_type":"block","description":"A lectern is a block used to display a book and quill or written book for reading. Turning a page triggers a redstone pulse. It also serves as a librarian's job site block.","history":[{"version":"1.14 18w44a","status":"added","notes":"Added lecterns."}],"colors":{"primary":"#ae8a53","dominant_hex":"#b48c54","average_hex":"#ae8a53","hue_group":"yellow","lightness":0.5039,"saturation":0.3597,"palette":["#b48c54","#a4844c","#c49c6c","#bc945c","#947444","#7c6434"],"color_groups":[{"hex":"#b48c54","weight":0.2539,"lightness":0.5176,"saturation":0.3902,"hue_group":"yellow"},{"hex":"#a4844c","weight":0.2305,"lightness":0.4706,"saturation":0.3667,"hue_group":"yellow"},{"hex":"#c49c6c","weight":0.1797,"lightness":0.5961,"saturation":0.4272,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.1562,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#947444","weight":0.1484,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0312,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lectern_top.png","family":"lectern","relations":[{"type":"visual_neighbors","target":"minecraft:glowstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:beehive","label":"Palette proche: Beehive","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_hanging_sign","label":"Palette proche: Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Palette proche: Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_oak_log","label":"Palette proche: Stripped Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_oak_wood","label":"Palette proche: Stripped Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.877},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.842},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.842},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.842},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.838},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.838},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.833},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.827},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.823},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.823},{"type":"color_analogous","target":"minecraft:chiseled_bookshelf","label":"Couleurs analogues: Chiseled Bookshelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:beehive","label":"Couleurs analogues: Beehive","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.941},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.907},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.89},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.874},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.873},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.857},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.85},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.842},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_carpet","label":"Harmonie triadique: Purple Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_wool","label":"Harmonie triadique: Purple Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.936},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.936},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.934},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.93},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.914},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.897},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.877},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.845},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55}],"category":"utility"},{"id":"minecraft:lever","name":"Lever","entry_type":"block","description":"The lever is a non-solid block that can be switched to provide redstone power.","history":[{"version":"v1.0.1","status":"added","notes":"Added levers."}],"colors":{"primary":"#6f5d43","dominant_hex":"#463923","average_hex":"#6f5d43","hue_group":"yellow","lightness":0.349,"saturation":0.2472,"palette":["#463923","#6c5434","#947444","#9c7c54","#747474","#808080"],"color_groups":[{"hex":"#463923","weight":0.35,"lightness":0.2059,"saturation":0.3333,"hue_group":"yellow"},{"hex":"#6c5434","weight":0.15,"lightness":0.3137,"saturation":0.35,"hue_group":"yellow"},{"hex":"#947444","weight":0.15,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#9c7c54","weight":0.15,"lightness":0.4706,"saturation":0.3,"hue_group":"yellow"},{"hex":"#747474","weight":0.1,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#808080","weight":0.1,"lightness":0.502,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lever.png","family":"lever","relations":[{"type":"visual_neighbors","target":"minecraft:copper_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_flowering_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafting_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powered_rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.914},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.913},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.907},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.907},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.894},{"type":"color_neighbors","target":"minecraft:tripwire_hook","label":"Palette proche: Tripwire Hook","confidence":0.885},{"type":"color_neighbors","target":"minecraft:redstone_wall_torch","label":"Palette proche: Redstone Wall Torch","confidence":0.883},{"type":"color_neighbors","target":"minecraft:stonecutter","label":"Palette proche: Stonecutter","confidence":0.876},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.873},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.872},{"type":"color_neighbors","target":"minecraft:rail","label":"Palette proche: Rail","confidence":0.869},{"type":"color_neighbors","target":"minecraft:dirt_path","label":"Palette proche: Dirt Path","confidence":0.864},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.9},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.892},{"type":"color_bridge","target":"minecraft:iron_ore","label":"Pont de nuance par sous-ton: Iron Ore","confidence":0.888},{"type":"color_bridge","target":"minecraft:stonecutter","label":"Pont de nuance par palette: Stonecutter","confidence":0.86},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.846},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.843},{"type":"color_bridge","target":"minecraft:soul_torch","label":"Pont de nuance par sous-ton: Soul Torch","confidence":0.843},{"type":"color_bridge","target":"minecraft:soul_wall_torch","label":"Pont de nuance par sous-ton: Soul Wall Torch","confidence":0.843},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.837},{"type":"color_bridge","target":"minecraft:smoker","label":"Pont de nuance par palette: Smoker","confidence":0.835},{"type":"color_analogous","target":"minecraft:bookshelf","label":"Couleurs analogues: Bookshelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:crafting_table","label":"Couleurs analogues: Crafting Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:ladder","label":"Couleurs analogues: Ladder","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_trapdoor","label":"Couleurs analogues: Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_log","label":"Couleurs analogues: Stripped Spruce Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_wood","label":"Couleurs analogues: Stripped Spruce Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.92},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.905},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.889},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.868},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.836},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.819},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.812},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.803},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.952},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.938},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.938},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.926},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.959},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.955},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.939},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.922},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.87},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.834},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.605},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.572},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.554},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.554},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.554},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.554},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55}],"category":"redstone"},{"id":"minecraft:light","name":"Light","entry_type":"block","description":"Light (or lighting) in Minecraft is a game mechanic that affects visibility, mob spawning, and the growth of some plants. There are three aspects of Minecraft's lighting system: light level, internal light level, and rendered brightness.","history":[{"version":"0.31 20091223-0040","status":"added","notes":"Added 10 degrees of brightness, with a maximum of 9 for full daylight and a minimum of 0 for almost complete darkness. Brightness is a linear scale and represents its value divided by 8; for example 8 is 100% ( 8 \u2044 8 ) a"},{"version":"v1.2.0 preview","status":"added","notes":"Added the Nether , where light decreases by 10% each level, rather than the normal 20%."},{"version":"1.3","status":"added","notes":"added with the help of MrMessiah. [ 1 ]"}],"colors":{"primary":"#889186","dominant_hex":"#575751","average_hex":"#889186","hue_group":"neutral","lightness":0.5471,"saturation":0.0476,"palette":["#575751","#9dc3d5","#ecbc44","#4a7796","#8c7c84","#649cbc"],"color_groups":[{"hex":"#575751","weight":0.1967,"lightness":0.3294,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#9dc3d5","weight":0.1967,"lightness":0.7255,"saturation":0.4,"hue_group":"cyan"},{"hex":"#ecbc44","weight":0.1967,"lightness":0.5961,"saturation":0.8155,"hue_group":"yellow"},{"hex":"#4a7796","weight":0.1639,"lightness":0.4392,"saturation":0.3393,"hue_group":"cyan"},{"hex":"#8c7c84","weight":0.1475,"lightness":0.5176,"saturation":0.065,"hue_group":"neutral"},{"hex":"#649cbc","weight":0.0984,"lightness":0.5647,"saturation":0.3964,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/light_00.png","family":"light","relations":[{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_bars","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:diamond_ore","label":"Palette proche: Diamond Ore","confidence":0.665},{"type":"color_neighbors","target":"minecraft:lapis_ore","label":"Palette proche: Lapis Ore","confidence":0.661},{"type":"color_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Palette proche: Chiseled Tuff Bricks","confidence":0.648},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.643},{"type":"color_neighbors","target":"minecraft:tuff_slab","label":"Palette proche: Tuff Slab","confidence":0.643},{"type":"color_neighbors","target":"minecraft:tuff_stairs","label":"Palette proche: Tuff Stairs","confidence":0.643},{"type":"color_neighbors","target":"minecraft:tuff_wall","label":"Palette proche: Tuff Wall","confidence":0.643},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.64},{"type":"color_neighbors","target":"minecraft:tuff_brick_stairs","label":"Palette proche: Tuff Brick Stairs","confidence":0.64},{"type":"color_neighbors","target":"minecraft:tuff_brick_wall","label":"Palette proche: Tuff Brick Wall","confidence":0.64},{"type":"color_neighbors","target":"minecraft:tuff_bricks","label":"Palette proche: Tuff Bricks","confidence":0.64},{"type":"color_neighbors","target":"minecraft:mycelium","label":"Palette proche: Mycelium","confidence":0.636},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par palette: Diamond Ore","confidence":0.724},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par palette: Lapis Ore","confidence":0.721},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.71},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.706},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.706},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.706},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.706},{"type":"color_bridge","target":"minecraft:tuff_brick_slab","label":"Pont de nuance par palette: Tuff Brick Slab","confidence":0.704},{"type":"color_bridge","target":"minecraft:tuff_brick_stairs","label":"Pont de nuance par palette: Tuff Brick Stairs","confidence":0.704},{"type":"color_bridge","target":"minecraft:tuff_brick_wall","label":"Pont de nuance par palette: Tuff Brick Wall","confidence":0.704},{"type":"value_contrast","target":"minecraft:dried_kelp_block","label":"Contraste clair sombre: Dried Kelp Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55}],"category":"technical"},{"id":"minecraft:light_blue_banner","name":"Light Blue Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"light_blue_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:light_blue_bed","name":"Light Blue Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"light_blue_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:light_blue_bundle","name":"Light Blue Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#3a8cb6","dominant_hex":"#247cb4","average_hex":"#3a8cb6","hue_group":"cyan","lightness":0.4706,"saturation":0.5167,"palette":["#247cb4","#84c2d4","#3a5a6d","#34ace4","#248cbc","#1c6cac"],"color_groups":[{"hex":"#247cb4","weight":0.1985,"lightness":0.4235,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#84c2d4","weight":0.1985,"lightness":0.6745,"saturation":0.4819,"hue_group":"cyan"},{"hex":"#3a5a6d","weight":0.1832,"lightness":0.3275,"saturation":0.3054,"hue_group":"cyan"},{"hex":"#34ace4","weight":0.1603,"lightness":0.549,"saturation":0.7652,"hue_group":"cyan"},{"hex":"#248cbc","weight":0.1374,"lightness":0.4392,"saturation":0.6786,"hue_group":"cyan"},{"hex":"#1c6cac","weight":0.1221,"lightness":0.3922,"saturation":0.72,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/light_blue_bundle.png","family":"light_blue_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_nautilus_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_leggings","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_horse_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_helmet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allay_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tide_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:light_blue_candle","name":"Light Blue Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#238ac5","dominant_hex":"#2484c4","average_hex":"#238ac5","hue_group":"cyan","lightness":0.4549,"saturation":0.6983,"palette":["#2484c4","#248ccc","#2ca4d4","#242434","#34acdc"],"color_groups":[{"hex":"#2484c4","weight":0.4286,"lightness":0.4549,"saturation":0.6897,"hue_group":"cyan"},{"hex":"#248ccc","weight":0.2857,"lightness":0.4706,"saturation":0.7,"hue_group":"cyan"},{"hex":"#2ca4d4","weight":0.1905,"lightness":0.502,"saturation":0.6614,"hue_group":"cyan"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#34acdc","weight":0.0476,"lightness":0.5333,"saturation":0.7059,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_blue_candle.png","family":"light_blue_candle","relations":[{"type":"visual_neighbors","target":"minecraft:light_blue_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_fire","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_blue_concrete","label":"Palette proche: Light Blue Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_shulker_box","label":"Palette proche: Light Blue Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_carpet","label":"Palette proche: Light Blue Carpet","confidence":0.912},{"type":"color_neighbors","target":"minecraft:light_blue_wool","label":"Palette proche: Light Blue Wool","confidence":0.912},{"type":"color_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Palette proche: Light Blue Concrete Powder","confidence":0.833},{"type":"color_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Palette proche: Blue Glazed Terracotta","confidence":0.811},{"type":"color_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Palette proche: Light Blue Glazed Terracotta","confidence":0.769},{"type":"color_neighbors","target":"minecraft:soul_lantern","label":"Palette proche: Soul Lantern","confidence":0.736},{"type":"color_neighbors","target":"minecraft:cyan_stained_glass","label":"Palette proche: Cyan Stained Glass","confidence":0.727},{"type":"color_neighbors","target":"minecraft:lapis_block","label":"Palette proche: Lapis Block","confidence":0.722},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.71},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.703},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par palette: Black Candle","confidence":0.72},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.691},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.679},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.679},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.633},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.612},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.611},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.608},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.608},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par sous-ton: Heavy Core","confidence":0.602},{"type":"color_analogous","target":"minecraft:light_blue_concrete","label":"Couleurs analogues: Light Blue Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_stained_glass","label":"Couleurs analogues: Cyan Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:cornflower","label":"Couleurs analogues: Cornflower","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_cornflower","label":"Couleurs analogues: Potted Cornflower","confidence":0.96},{"type":"color_analogous","target":"minecraft:soul_lantern","label":"Couleurs analogues: Soul Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_stained_glass_pane","label":"Couleurs analogues: Cyan Stained Glass Pane","confidence":0.948},{"type":"color_analogous","target":"minecraft:light_blue_glazed_terracotta","label":"Couleurs analogues: Light Blue Glazed Terracotta","confidence":0.943},{"type":"color_analogous","target":"minecraft:light_blue_shulker_box","label":"Couleurs analogues: Light Blue Shulker Box","confidence":0.896},{"type":"color_complement","target":"minecraft:resin_brick_slab","label":"Contraste complementaire: Resin Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:resin_brick_stairs","label":"Contraste complementaire: Resin Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:resin_brick_wall","label":"Contraste complementaire: Resin Brick Wall","confidence":0.96},{"type":"color_complement","target":"minecraft:resin_bricks","label":"Contraste complementaire: Resin Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:lava","label":"Contraste complementaire: Lava","confidence":0.96},{"type":"color_complement","target":"minecraft:orange_terracotta","label":"Contraste complementaire: Orange Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_terracotta","label":"Contraste complementaire: Brown Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:jukebox","label":"Contraste complementaire: Jukebox","confidence":0.959},{"type":"color_triad","target":"minecraft:azalea_leaves","label":"Harmonie triadique: Azalea Leaves","confidence":0.952},{"type":"color_triad","target":"minecraft:big_dripleaf_stem","label":"Harmonie triadique: Big Dripleaf Stem","confidence":0.941},{"type":"color_triad","target":"minecraft:small_dripleaf","label":"Harmonie triadique: Small Dripleaf","confidence":0.941},{"type":"color_triad","target":"minecraft:green_stained_glass_pane","label":"Harmonie triadique: Green Stained Glass Pane","confidence":0.918},{"type":"color_triad","target":"minecraft:oxeye_daisy","label":"Harmonie triadique: Oxeye Daisy","confidence":0.914},{"type":"color_triad","target":"minecraft:potted_oxeye_daisy","label":"Harmonie triadique: Potted Oxeye Daisy","confidence":0.914},{"type":"color_triad","target":"minecraft:big_dripleaf","label":"Harmonie triadique: Big Dripleaf","confidence":0.91},{"type":"color_triad","target":"minecraft:bamboo","label":"Harmonie triadique: Bamboo","confidence":0.905},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.915},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.821},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.82},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.819},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.806},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.709},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.704},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":"decorative"},{"id":"minecraft:light_blue_candle_cake","name":"Light Blue Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"light_blue_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle_cake","label":"Palette proche: Orange Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:light_blue_carpet","name":"Light Blue Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#3aafd9","dominant_hex":"#4bc4e4","average_hex":"#3aafd9","hue_group":"cyan","lightness":0.5392,"saturation":0.6766,"palette":["#4bc4e4","#33a7d4","#2996ce","#44bcdf","#3cb4dc","#3cbcdc"],"color_groups":[{"hex":"#4bc4e4","weight":0.2461,"lightness":0.5941,"saturation":0.7391,"hue_group":"cyan"},{"hex":"#33a7d4","weight":0.2266,"lightness":0.5157,"saturation":0.6518,"hue_group":"cyan"},{"hex":"#2996ce","weight":0.2227,"lightness":0.4843,"saturation":0.668,"hue_group":"cyan"},{"hex":"#44bcdf","weight":0.125,"lightness":0.5706,"saturation":0.7078,"hue_group":"cyan"},{"hex":"#3cb4dc","weight":0.1094,"lightness":0.549,"saturation":0.6957,"hue_group":"cyan"},{"hex":"#3cbcdc","weight":0.0703,"lightness":0.549,"saturation":0.6957,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_blue_wool.png","family":"light_blue_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:light_blue_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_fire","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beacon","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_blue_wool","label":"Palette proche: Light Blue Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_shulker_box","label":"Palette proche: Light Blue Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Palette proche: Light Blue Concrete Powder","confidence":0.927},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.912},{"type":"color_neighbors","target":"minecraft:light_blue_concrete","label":"Palette proche: Light Blue Concrete","confidence":0.885},{"type":"color_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Palette proche: Light Blue Glazed Terracotta","confidence":0.776},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.711},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass","label":"Palette proche: Light Blue Stained Glass","confidence":0.706},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.701},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.701},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.697},{"type":"color_neighbors","target":"minecraft:beacon","label":"Palette proche: Beacon","confidence":0.695},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par sous-ton: Light","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.58},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.58},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.58},{"type":"color_analogous","target":"minecraft:light_blue_wool","label":"Couleurs analogues: Light Blue Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_shulker_box","label":"Couleurs analogues: Light Blue Shulker Box","confidence":0.954},{"type":"color_analogous","target":"minecraft:light_blue_concrete_powder","label":"Couleurs analogues: Light Blue Concrete Powder","confidence":0.95},{"type":"color_analogous","target":"minecraft:sculk_catalyst","label":"Couleurs analogues: Sculk Catalyst","confidence":0.909},{"type":"color_analogous","target":"minecraft:sculk","label":"Couleurs analogues: Sculk","confidence":0.907},{"type":"color_analogous","target":"minecraft:cyan_stained_glass_pane","label":"Couleurs analogues: Cyan Stained Glass Pane","confidence":0.893},{"type":"color_analogous","target":"minecraft:cyan_stained_glass","label":"Couleurs analogues: Cyan Stained Glass","confidence":0.884},{"type":"color_analogous","target":"minecraft:light_blue_candle","label":"Couleurs analogues: Light Blue Candle","confidence":0.85},{"type":"color_complement","target":"minecraft:copper_grate","label":"Contraste complementaire: Copper Grate","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_copper_grate","label":"Contraste complementaire: Waxed Copper Grate","confidence":0.96},{"type":"color_complement","target":"minecraft:magma_block","label":"Contraste complementaire: Magma Block","confidence":0.96},{"type":"color_complement","target":"minecraft:copper_bars","label":"Contraste complementaire: Copper Bars","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_copper_bars","label":"Contraste complementaire: Waxed Copper Bars","confidence":0.96},{"type":"color_complement","target":"minecraft:black_candle_cake","label":"Contraste complementaire: Black Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle_cake","label":"Contraste complementaire: Blue Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_candle_cake","label":"Contraste complementaire: Brown Candle Cake","confidence":0.96},{"type":"color_triad","target":"minecraft:melon","label":"Harmonie triadique: Melon","confidence":0.96},{"type":"color_triad","target":"minecraft:cave_vines","label":"Harmonie triadique: Cave Vines","confidence":0.947},{"type":"color_triad","target":"minecraft:lime_glazed_terracotta","label":"Harmonie triadique: Lime Glazed Terracotta","confidence":0.946},{"type":"color_triad","target":"minecraft:potted_azalea_bush","label":"Harmonie triadique: Potted Azalea Bush","confidence":0.914},{"type":"color_triad","target":"minecraft:green_concrete_powder","label":"Harmonie triadique: Green Concrete Powder","confidence":0.905},{"type":"color_triad","target":"minecraft:azalea","label":"Harmonie triadique: Azalea","confidence":0.902},{"type":"color_triad","target":"minecraft:green_carpet","label":"Harmonie triadique: Green Carpet","confidence":0.899},{"type":"color_triad","target":"minecraft:green_wool","label":"Harmonie triadique: Green Wool","confidence":0.899},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.956},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.956},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.935},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.908},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.904},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.898},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.898},{"type":"value_contrast","target":"minecraft:sculk_vein","label":"Contraste clair sombre: Sculk Vein","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55}],"category":"decorative"},{"id":"minecraft:light_blue_concrete","name":"Light Blue Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#2489c7","dominant_hex":"#248cc4","average_hex":"#2489c7","hue_group":"cyan","lightness":0.4608,"saturation":0.6936,"palette":["#248cc4","#248ccc","#2484c4"],"color_groups":[{"hex":"#248cc4","weight":0.5742,"lightness":0.4549,"saturation":0.6897,"hue_group":"cyan"},{"hex":"#248ccc","weight":0.3867,"lightness":0.4706,"saturation":0.7,"hue_group":"cyan"},{"hex":"#2484c4","weight":0.0391,"lightness":0.4549,"saturation":0.6897,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_blue_concrete.png","family":"light_blue_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:light_blue_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_fire","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_shulker_box","label":"Palette proche: Light Blue Shulker Box","confidence":0.934},{"type":"color_neighbors","target":"minecraft:light_blue_carpet","label":"Palette proche: Light Blue Carpet","confidence":0.885},{"type":"color_neighbors","target":"minecraft:light_blue_wool","label":"Palette proche: Light Blue Wool","confidence":0.885},{"type":"color_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Palette proche: Light Blue Concrete Powder","confidence":0.782},{"type":"color_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Palette proche: Light Blue Glazed Terracotta","confidence":0.751},{"type":"color_neighbors","target":"minecraft:cyan_stained_glass","label":"Palette proche: Cyan Stained Glass","confidence":0.739},{"type":"color_neighbors","target":"minecraft:lapis_block","label":"Palette proche: Lapis Block","confidence":0.735},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.725},{"type":"color_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Palette proche: Cyan Stained Glass Pane","confidence":0.722},{"type":"color_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Palette proche: Blue Glazed Terracotta","confidence":0.7},{"type":"color_neighbors","target":"minecraft:blue_orchid","label":"Palette proche: Blue Orchid","confidence":0.694},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par sous-ton: Light","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.58},{"type":"color_analogous","target":"minecraft:light_blue_candle","label":"Couleurs analogues: Light Blue Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_glazed_terracotta","label":"Couleurs analogues: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:cornflower","label":"Couleurs analogues: Cornflower","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_cornflower","label":"Couleurs analogues: Potted Cornflower","confidence":0.96},{"type":"color_analogous","target":"minecraft:soul_lantern","label":"Couleurs analogues: Soul Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_stained_glass","label":"Couleurs analogues: Cyan Stained Glass","confidence":0.941},{"type":"color_analogous","target":"minecraft:cyan_stained_glass_pane","label":"Couleurs analogues: Cyan Stained Glass Pane","confidence":0.926},{"type":"color_analogous","target":"minecraft:air","label":"Couleurs analogues: Air","confidence":0.911},{"type":"color_complement","target":"minecraft:resin_block","label":"Contraste complementaire: Resin Block","confidence":0.96},{"type":"color_complement","target":"minecraft:lava","label":"Contraste complementaire: Lava","confidence":0.96},{"type":"color_complement","target":"minecraft:orange_terracotta","label":"Contraste complementaire: Orange Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:redstone_lamp","label":"Contraste complementaire: Redstone Lamp","confidence":0.96},{"type":"color_complement","target":"minecraft:command_block","label":"Contraste complementaire: Command Block","confidence":0.957},{"type":"color_complement","target":"minecraft:note_block","label":"Contraste complementaire: Note Block","confidence":0.957},{"type":"color_complement","target":"minecraft:soul_soil","label":"Contraste complementaire: Soul Soil","confidence":0.952},{"type":"color_complement","target":"minecraft:copper_lantern","label":"Contraste complementaire: Copper Lantern","confidence":0.946},{"type":"color_triad","target":"minecraft:oxeye_daisy","label":"Harmonie triadique: Oxeye Daisy","confidence":0.951},{"type":"color_triad","target":"minecraft:potted_oxeye_daisy","label":"Harmonie triadique: Potted Oxeye Daisy","confidence":0.951},{"type":"color_triad","target":"minecraft:bamboo","label":"Harmonie triadique: Bamboo","confidence":0.942},{"type":"color_triad","target":"minecraft:potted_red_tulip","label":"Harmonie triadique: Potted Red Tulip","confidence":0.932},{"type":"color_triad","target":"minecraft:red_tulip","label":"Harmonie triadique: Red Tulip","confidence":0.932},{"type":"color_triad","target":"minecraft:brain_coral","label":"Harmonie triadique: Brain Coral","confidence":0.923},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.915},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.915},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.955},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.943},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.861},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.78},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.779},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.766},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.679},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.678},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55}],"category":"building"},{"id":"minecraft:light_blue_concrete_powder","name":"Light Blue Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#4ab5d5","dominant_hex":"#4cb6d4","average_hex":"#4ab5d5","hue_group":"cyan","lightness":0.5627,"saturation":0.6233,"palette":["#4cb6d4","#3da2cb","#42acd2","#5fc9e0","#54c3dd","#4ab9dc"],"color_groups":[{"hex":"#4cb6d4","weight":0.2812,"lightness":0.5647,"saturation":0.6126,"hue_group":"cyan"},{"hex":"#3da2cb","weight":0.1836,"lightness":0.5176,"saturation":0.5772,"hue_group":"cyan"},{"hex":"#42acd2","weight":0.168,"lightness":0.5412,"saturation":0.6154,"hue_group":"cyan"},{"hex":"#5fc9e0","weight":0.1328,"lightness":0.6255,"saturation":0.6754,"hue_group":"cyan"},{"hex":"#54c3dd","weight":0.1289,"lightness":0.598,"saturation":0.6683,"hue_group":"cyan"},{"hex":"#4ab9dc","weight":0.1055,"lightness":0.5765,"saturation":0.6759,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_blue_concrete_powder.png","family":"light_blue_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:light_blue_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_fire","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beacon","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_blue_carpet","label":"Palette proche: Light Blue Carpet","confidence":0.927},{"type":"color_neighbors","target":"minecraft:light_blue_wool","label":"Palette proche: Light Blue Wool","confidence":0.927},{"type":"color_neighbors","target":"minecraft:light_blue_shulker_box","label":"Palette proche: Light Blue Shulker Box","confidence":0.904},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.833},{"type":"color_neighbors","target":"minecraft:light_blue_concrete","label":"Palette proche: Light Blue Concrete","confidence":0.782},{"type":"color_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Palette proche: Light Blue Glazed Terracotta","confidence":0.755},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass","label":"Palette proche: Light Blue Stained Glass","confidence":0.754},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Palette proche: Light Blue Stained Glass Pane","confidence":0.743},{"type":"color_neighbors","target":"minecraft:beacon","label":"Palette proche: Beacon","confidence":0.726},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.711},{"type":"color_neighbors","target":"minecraft:diamond_block","label":"Palette proche: Diamond Block","confidence":0.677},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.656},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par sous-ton: Light","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.58},{"type":"color_analogous","target":"minecraft:light_blue_carpet","label":"Couleurs analogues: Light Blue Carpet","confidence":0.95},{"type":"color_analogous","target":"minecraft:light_blue_wool","label":"Couleurs analogues: Light Blue Wool","confidence":0.95},{"type":"color_analogous","target":"minecraft:light_blue_shulker_box","label":"Couleurs analogues: Light Blue Shulker Box","confidence":0.904},{"type":"color_analogous","target":"minecraft:sculk_vein","label":"Couleurs analogues: Sculk Vein","confidence":0.873},{"type":"color_analogous","target":"minecraft:sculk_catalyst","label":"Couleurs analogues: Sculk Catalyst","confidence":0.867},{"type":"color_analogous","target":"minecraft:sculk","label":"Couleurs analogues: Sculk","confidence":0.866},{"type":"color_analogous","target":"minecraft:glass_pane","label":"Couleurs analogues: Glass Pane","confidence":0.852},{"type":"color_analogous","target":"minecraft:cyan_stained_glass_pane","label":"Couleurs analogues: Cyan Stained Glass Pane","confidence":0.843},{"type":"color_complement","target":"minecraft:copper_door","label":"Contraste complementaire: Copper Door","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_copper_door","label":"Contraste complementaire: Waxed Copper Door","confidence":0.96},{"type":"color_complement","target":"minecraft:cut_copper","label":"Contraste complementaire: Cut Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:cut_copper_slab","label":"Contraste complementaire: Cut Copper Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:cut_copper_stairs","label":"Contraste complementaire: Cut Copper Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_cut_copper","label":"Contraste complementaire: Waxed Cut Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_cut_copper_slab","label":"Contraste complementaire: Waxed Cut Copper Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_cut_copper_stairs","label":"Contraste complementaire: Waxed Cut Copper Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:lime_glazed_terracotta","label":"Harmonie triadique: Lime Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:cave_vines_plant","label":"Harmonie triadique: Cave Vines Plant","confidence":0.96},{"type":"color_triad","target":"minecraft:flowering_azalea_leaves","label":"Harmonie triadique: Flowering Azalea Leaves","confidence":0.95},{"type":"color_triad","target":"minecraft:lime_terracotta","label":"Harmonie triadique: Lime Terracotta","confidence":0.946},{"type":"color_triad","target":"minecraft:bamboo_block","label":"Harmonie triadique: Bamboo Block","confidence":0.909},{"type":"color_triad","target":"minecraft:dandelion","label":"Harmonie triadique: Dandelion","confidence":0.896},{"type":"color_triad","target":"minecraft:potted_dandelion","label":"Harmonie triadique: Potted Dandelion","confidence":0.896},{"type":"color_triad","target":"minecraft:melon","label":"Harmonie triadique: Melon","confidence":0.892},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.95},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.919},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.919},{"type":"value_contrast","target":"minecraft:sculk_vein","label":"Contraste clair sombre: Sculk Vein","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:light_blue_dye","name":"Light Blue Dye","entry_type":"item","description":"Light blue dye is one of the sixteen available dyes.","history":[{"version":"1.2","status":"added","notes":"Added light blue dye."},{"version":"1.4.2 12w34a","status":"added","notes":"Added the ability to dye leather armor and wolf collars."},{"version":"1.8 14w30a","status":"added","notes":"Added banners , which can be dyed."}],"colors":{"primary":"#65789b","dominant_hex":"#2d558d","average_hex":"#65789b","hue_group":"blue","lightness":0.502,"saturation":0.2126,"palette":["#2d558d","#482823","#548cdc","#84b4f4","#9c8462","#c4e4fc"],"color_groups":[{"hex":"#2d558d","weight":0.2336,"lightness":0.3647,"saturation":0.5161,"hue_group":"blue"},{"hex":"#482823","weight":0.2117,"lightness":0.2098,"saturation":0.3458,"hue_group":"red"},{"hex":"#548cdc","weight":0.1679,"lightness":0.5961,"saturation":0.6602,"hue_group":"blue"},{"hex":"#84b4f4","weight":0.1606,"lightness":0.7373,"saturation":0.8358,"hue_group":"blue"},{"hex":"#9c8462","weight":0.1168,"lightness":0.498,"saturation":0.2283,"hue_group":"yellow"},{"hex":"#c4e4fc","weight":0.1095,"lightness":0.8784,"saturation":0.9032,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/light_blue_dye.png","family":"light_blue_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_armor_trim_smithing_template","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mace","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lingering_potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ominous_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_meal","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:light_blue_glazed_terracotta","name":"Light Blue Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#5fa5d1","dominant_hex":"#2489c1","average_hex":"#5fa5d1","hue_group":"cyan","lightness":0.5961,"saturation":0.5534,"palette":["#2489c1","#3bb3dc","#4ebcdc","#2f3290","#fcfcfc","#d1f6fc"],"color_groups":[{"hex":"#2489c1","weight":0.2383,"lightness":0.449,"saturation":0.6856,"hue_group":"cyan"},{"hex":"#3bb3dc","weight":0.1875,"lightness":0.5471,"saturation":0.697,"hue_group":"cyan"},{"hex":"#4ebcdc","weight":0.1719,"lightness":0.5843,"saturation":0.6698,"hue_group":"cyan"},{"hex":"#2f3290","weight":0.168,"lightness":0.3745,"saturation":0.5079,"hue_group":"blue"},{"hex":"#fcfcfc","weight":0.1328,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d1f6fc","weight":0.1016,"lightness":0.9039,"saturation":0.8776,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_blue_glazed_terracotta.png","family":"light_blue_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beacon","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_fire","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_blue_shulker_box","label":"Palette proche: Light Blue Shulker Box","confidence":0.788},{"type":"color_neighbors","target":"minecraft:light_blue_carpet","label":"Palette proche: Light Blue Carpet","confidence":0.776},{"type":"color_neighbors","target":"minecraft:light_blue_wool","label":"Palette proche: Light Blue Wool","confidence":0.776},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.769},{"type":"color_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Palette proche: Light Blue Concrete Powder","confidence":0.755},{"type":"color_neighbors","target":"minecraft:light_blue_concrete","label":"Palette proche: Light Blue Concrete","confidence":0.751},{"type":"color_neighbors","target":"minecraft:white_glazed_terracotta","label":"Palette proche: White Glazed Terracotta","confidence":0.721},{"type":"color_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Palette proche: Blue Glazed Terracotta","confidence":0.709},{"type":"color_neighbors","target":"minecraft:beacon","label":"Palette proche: Beacon","confidence":0.651},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.63},{"type":"color_neighbors","target":"minecraft:blue_carpet","label":"Palette proche: Blue Carpet","confidence":0.626},{"type":"color_neighbors","target":"minecraft:blue_wool","label":"Palette proche: Blue Wool","confidence":0.626},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.771},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.613},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.611},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.611},{"type":"color_bridge","target":"minecraft:polished_diorite_stairs","label":"Pont de nuance par palette: Polished Diorite Stairs","confidence":0.611},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par sous-ton: White Candle","confidence":0.61},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.606},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.582},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par sous-ton: Cobweb","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_analogous","target":"minecraft:light_blue_concrete","label":"Couleurs analogues: Light Blue Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:cornflower","label":"Couleurs analogues: Cornflower","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_cornflower","label":"Couleurs analogues: Potted Cornflower","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_candle","label":"Couleurs analogues: Light Blue Candle","confidence":0.943},{"type":"color_analogous","target":"minecraft:soul_lantern","label":"Couleurs analogues: Soul Lantern","confidence":0.936},{"type":"color_analogous","target":"minecraft:cyan_stained_glass","label":"Couleurs analogues: Cyan Stained Glass","confidence":0.906},{"type":"color_analogous","target":"minecraft:cyan_stained_glass_pane","label":"Couleurs analogues: Cyan Stained Glass Pane","confidence":0.891},{"type":"color_analogous","target":"minecraft:air","label":"Couleurs analogues: Air","confidence":0.891},{"type":"color_complement","target":"minecraft:command_block","label":"Contraste complementaire: Command Block","confidence":0.96},{"type":"color_complement","target":"minecraft:orange_terracotta","label":"Contraste complementaire: Orange Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:copper_lantern","label":"Contraste complementaire: Copper Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_copper_lantern","label":"Contraste complementaire: Waxed Copper Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:resin_block","label":"Contraste complementaire: Resin Block","confidence":0.96},{"type":"color_complement","target":"minecraft:exposed_copper","label":"Contraste complementaire: Exposed Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:exposed_copper_chest","label":"Contraste complementaire: Exposed Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:exposed_copper_golem_statue","label":"Contraste complementaire: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:oxeye_daisy","label":"Harmonie triadique: Oxeye Daisy","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_oxeye_daisy","label":"Harmonie triadique: Potted Oxeye Daisy","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_red_tulip","label":"Harmonie triadique: Potted Red Tulip","confidence":0.95},{"type":"color_triad","target":"minecraft:red_tulip","label":"Harmonie triadique: Red Tulip","confidence":0.95},{"type":"color_triad","target":"minecraft:brain_coral","label":"Harmonie triadique: Brain Coral","confidence":0.947},{"type":"color_triad","target":"minecraft:bamboo","label":"Harmonie triadique: Bamboo","confidence":0.944},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.939},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.939},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.94},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.887},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.777},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.776},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.763},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.69},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.687},{"type":"value_contrast","target":"minecraft:structure_void","label":"Contraste clair sombre: Structure Void","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_shulker_box","label":"Contraste clair sombre: Gray Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_vein","label":"Contraste clair sombre: Sculk Vein","confidence":0.55}],"category":"building"},{"id":"minecraft:light_blue_harness","name":"Light Blue Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#635b56","dominant_hex":"#3081b4","average_hex":"#635b56","hue_group":"neutral","lightness":0.3627,"saturation":0.0703,"palette":["#3081b4","#976349","#502e16","#70492f","#3c2414","#a2b0b2"],"color_groups":[{"hex":"#3081b4","weight":0.2209,"lightness":0.4471,"saturation":0.5789,"hue_group":"cyan"},{"hex":"#976349","weight":0.2147,"lightness":0.4392,"saturation":0.3482,"hue_group":"red"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#70492f","weight":0.135,"lightness":0.3118,"saturation":0.4088,"hue_group":"red"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"},{"hex":"#a2b0b2","weight":0.1043,"lightness":0.6667,"saturation":0.0941,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/light_blue_harness.png","family":"light_blue_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coast_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:light_blue_shulker_box","name":"Light Blue Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#31a4d4","dominant_hex":"#3cb4dc","average_hex":"#31a4d4","hue_group":"cyan","lightness":0.5118,"saturation":0.6546,"palette":["#3cb4dc","#2c9cd4","#248cca","#2494cc","#34acd5","#2484c3"],"color_groups":[{"hex":"#3cb4dc","weight":0.4727,"lightness":0.549,"saturation":0.6957,"hue_group":"cyan"},{"hex":"#2c9cd4","weight":0.1797,"lightness":0.502,"saturation":0.6614,"hue_group":"cyan"},{"hex":"#248cca","weight":0.1406,"lightness":0.4667,"saturation":0.6975,"hue_group":"cyan"},{"hex":"#2494cc","weight":0.082,"lightness":0.4706,"saturation":0.7,"hue_group":"cyan"},{"hex":"#34acd5","weight":0.0742,"lightness":0.5196,"saturation":0.6571,"hue_group":"cyan"},{"hex":"#2484c3","weight":0.0508,"lightness":0.4529,"saturation":0.6883,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_blue_shulker_box.png","family":"light_blue_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:light_blue_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_fire","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beacon","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_blue_carpet","label":"Palette proche: Light Blue Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_wool","label":"Palette proche: Light Blue Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_concrete","label":"Palette proche: Light Blue Concrete","confidence":0.934},{"type":"color_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Palette proche: Light Blue Concrete Powder","confidence":0.904},{"type":"color_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Palette proche: Light Blue Glazed Terracotta","confidence":0.788},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.72},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.71},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.71},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.707},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass","label":"Palette proche: Light Blue Stained Glass","confidence":0.706},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.698},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.58},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par sous-ton: Light","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.58},{"type":"color_analogous","target":"minecraft:light_blue_carpet","label":"Couleurs analogues: Light Blue Carpet","confidence":0.954},{"type":"color_analogous","target":"minecraft:light_blue_wool","label":"Couleurs analogues: Light Blue Wool","confidence":0.954},{"type":"color_analogous","target":"minecraft:cyan_stained_glass_pane","label":"Couleurs analogues: Cyan Stained Glass Pane","confidence":0.939},{"type":"color_analogous","target":"minecraft:cyan_stained_glass","label":"Couleurs analogues: Cyan Stained Glass","confidence":0.93},{"type":"color_analogous","target":"minecraft:light_blue_concrete_powder","label":"Couleurs analogues: Light Blue Concrete Powder","confidence":0.904},{"type":"color_analogous","target":"minecraft:light_blue_candle","label":"Couleurs analogues: Light Blue Candle","confidence":0.896},{"type":"color_analogous","target":"minecraft:light_blue_concrete","label":"Couleurs analogues: Light Blue Concrete","confidence":0.875},{"type":"color_analogous","target":"minecraft:sculk_catalyst","label":"Couleurs analogues: Sculk Catalyst","confidence":0.874},{"type":"color_complement","target":"minecraft:acacia_hanging_sign","label":"Contraste complementaire: Acacia Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:acacia_wall_hanging_sign","label":"Contraste complementaire: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_acacia_log","label":"Contraste complementaire: Stripped Acacia Log","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_acacia_wood","label":"Contraste complementaire: Stripped Acacia Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:magma_block","label":"Contraste complementaire: Magma Block","confidence":0.96},{"type":"color_complement","target":"minecraft:copper_bulb","label":"Contraste complementaire: Copper Bulb","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_copper_bulb","label":"Contraste complementaire: Waxed Copper Bulb","confidence":0.96},{"type":"color_complement","target":"minecraft:poppy","label":"Contraste complementaire: Poppy","confidence":0.96},{"type":"color_triad","target":"minecraft:green_carpet","label":"Harmonie triadique: Green Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:green_wool","label":"Harmonie triadique: Green Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:green_candle","label":"Harmonie triadique: Green Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:azalea","label":"Harmonie triadique: Azalea","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_azalea_bush","label":"Harmonie triadique: Potted Azalea Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:green_concrete_powder","label":"Harmonie triadique: Green Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:melon","label":"Harmonie triadique: Melon","confidence":0.957},{"type":"color_triad","target":"minecraft:cave_vines","label":"Harmonie triadique: Cave Vines","confidence":0.949},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.887},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.882},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.882},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.86},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.834},{"type":"value_contrast","target":"minecraft:sculk_vein","label":"Contraste clair sombre: Sculk Vein","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55}],"category":""},{"id":"minecraft:light_blue_stained_glass","name":"Light Blue Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#6699d8","dominant_hex":"#649cdc","average_hex":"#6699d8","hue_group":"blue","lightness":0.6235,"saturation":0.5938,"palette":["#649cdc"],"color_groups":[{"hex":"#649cdc","weight":1.0,"lightness":0.6275,"saturation":0.6316,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_blue_stained_glass.png","family":"light_blue_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:medium_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_cluster","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Palette proche: Light Blue Stained Glass Pane","confidence":0.899},{"type":"color_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Palette proche: Light Blue Concrete Powder","confidence":0.754},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.746},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.746},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.74},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.725},{"type":"color_neighbors","target":"minecraft:light_blue_carpet","label":"Palette proche: Light Blue Carpet","confidence":0.706},{"type":"color_neighbors","target":"minecraft:light_blue_wool","label":"Palette proche: Light Blue Wool","confidence":0.706},{"type":"color_neighbors","target":"minecraft:light_blue_shulker_box","label":"Palette proche: Light Blue Shulker Box","confidence":0.706},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.673},{"type":"color_neighbors","target":"minecraft:light_blue_concrete","label":"Palette proche: Light Blue Concrete","confidence":0.669},{"type":"color_neighbors","target":"minecraft:lapis_block","label":"Palette proche: Lapis Block","confidence":0.623},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.628},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par sous-ton: Light","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par sous-ton: Heavy Core","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_analogous","target":"minecraft:light_blue_stained_glass_pane","label":"Couleurs analogues: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_ice","label":"Couleurs analogues: Blue Ice","confidence":0.89},{"type":"color_analogous","target":"minecraft:frosted_ice","label":"Couleurs analogues: Frosted Ice","confidence":0.858},{"type":"color_analogous","target":"minecraft:packed_ice","label":"Couleurs analogues: Packed Ice","confidence":0.844},{"type":"color_analogous","target":"minecraft:ice","label":"Couleurs analogues: Ice","confidence":0.84},{"type":"color_analogous","target":"minecraft:spawner","label":"Couleurs analogues: Spawner","confidence":0.811},{"type":"color_analogous","target":"minecraft:lapis_block","label":"Couleurs analogues: Lapis Block","confidence":0.786},{"type":"color_analogous","target":"minecraft:light_blue_glazed_terracotta","label":"Couleurs analogues: Light Blue Glazed Terracotta","confidence":0.772},{"type":"color_complement","target":"minecraft:fire","label":"Contraste complementaire: Fire","confidence":0.96},{"type":"color_complement","target":"minecraft:jungle_hanging_sign","label":"Contraste complementaire: Jungle Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:jungle_wall_hanging_sign","label":"Contraste complementaire: Jungle Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_jungle_log","label":"Contraste complementaire: Stripped Jungle Log","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_jungle_wood","label":"Contraste complementaire: Stripped Jungle Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:barrel","label":"Contraste complementaire: Barrel","confidence":0.96},{"type":"color_complement","target":"minecraft:sniffer_egg","label":"Contraste complementaire: Sniffer Egg","confidence":0.96},{"type":"color_complement","target":"minecraft:spruce_button","label":"Contraste complementaire: Spruce Button","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.96},{"type":"color_triad","target":"minecraft:crimson_button","label":"Harmonie triadique: Crimson Button","confidence":0.924},{"type":"color_triad","target":"minecraft:crimson_fence","label":"Harmonie triadique: Crimson Fence","confidence":0.924},{"type":"color_triad","target":"minecraft:crimson_fence_gate","label":"Harmonie triadique: Crimson Fence Gate","confidence":0.924},{"type":"color_triad","target":"minecraft:crimson_planks","label":"Harmonie triadique: Crimson Planks","confidence":0.924},{"type":"color_triad","target":"minecraft:crimson_pressure_plate","label":"Harmonie triadique: Crimson Pressure Plate","confidence":0.924},{"type":"color_triad","target":"minecraft:crimson_sign","label":"Harmonie triadique: Crimson Sign","confidence":0.924},{"type":"color_triad","target":"minecraft:crimson_slab","label":"Harmonie triadique: Crimson Slab","confidence":0.924},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.955},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.938},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.922},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.918},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.916},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.916},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.912},{"type":"value_contrast","target":"minecraft:structure_void","label":"Contraste clair sombre: Structure Void","confidence":0.55},{"type":"value_contrast","target":"minecraft:vault","label":"Contraste clair sombre: Vault","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_chain","label":"Contraste clair sombre: Iron Chain","confidence":0.55},{"type":"value_contrast","target":"minecraft:spawner","label":"Contraste clair sombre: Spawner","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_concrete","label":"Contraste clair sombre: Gray Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_shulker_box","label":"Contraste clair sombre: Gray Shulker Box","confidence":0.55}],"category":"building"},{"id":"minecraft:light_blue_stained_glass_pane","name":"Light Blue Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#6293d1","dominant_hex":"#649cd4","average_hex":"#6293d1","hue_group":"blue","lightness":0.602,"saturation":0.5468,"palette":["#649cd4","#6494cc","#5c8ccc","#6494d4"],"color_groups":[{"hex":"#649cd4","weight":0.375,"lightness":0.6118,"saturation":0.5657,"hue_group":"blue"},{"hex":"#6494cc","weight":0.3438,"lightness":0.5961,"saturation":0.5049,"hue_group":"blue"},{"hex":"#5c8ccc","weight":0.25,"lightness":0.5804,"saturation":0.5234,"hue_group":"blue"},{"hex":"#6494d4","weight":0.0312,"lightness":0.6118,"saturation":0.5657,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_blue_stained_glass_pane_top.png","family":"light_blue_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:medium_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_cluster","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass","label":"Palette proche: Light Blue Stained Glass","confidence":0.899},{"type":"color_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Palette proche: Light Blue Concrete Powder","confidence":0.743},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.729},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.729},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.723},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.72},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.708},{"type":"color_neighbors","target":"minecraft:light_blue_carpet","label":"Palette proche: Light Blue Carpet","confidence":0.684},{"type":"color_neighbors","target":"minecraft:light_blue_wool","label":"Palette proche: Light Blue Wool","confidence":0.684},{"type":"color_neighbors","target":"minecraft:light_blue_shulker_box","label":"Palette proche: Light Blue Shulker Box","confidence":0.684},{"type":"color_neighbors","target":"minecraft:blue_stained_glass","label":"Palette proche: Blue Stained Glass","confidence":0.674},{"type":"color_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Palette proche: Blue Stained Glass Pane","confidence":0.665},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.678},{"type":"color_bridge","target":"minecraft:prismarine","label":"Pont de nuance par palette: Prismarine","confidence":0.598},{"type":"color_bridge","target":"minecraft:prismarine_slab","label":"Pont de nuance par palette: Prismarine Slab","confidence":0.598},{"type":"color_bridge","target":"minecraft:prismarine_stairs","label":"Pont de nuance par palette: Prismarine Stairs","confidence":0.598},{"type":"color_bridge","target":"minecraft:prismarine_wall","label":"Pont de nuance par palette: Prismarine Wall","confidence":0.598},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par sous-ton: Light","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par sous-ton: Heavy Core","confidence":0.58},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.58},{"type":"color_analogous","target":"minecraft:light_blue_stained_glass","label":"Couleurs analogues: Light Blue Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_ice","label":"Couleurs analogues: Blue Ice","confidence":0.893},{"type":"color_analogous","target":"minecraft:frosted_ice","label":"Couleurs analogues: Frosted Ice","confidence":0.861},{"type":"color_analogous","target":"minecraft:packed_ice","label":"Couleurs analogues: Packed Ice","confidence":0.847},{"type":"color_analogous","target":"minecraft:ice","label":"Couleurs analogues: Ice","confidence":0.844},{"type":"color_analogous","target":"minecraft:spawner","label":"Couleurs analogues: Spawner","confidence":0.824},{"type":"color_analogous","target":"minecraft:lapis_block","label":"Couleurs analogues: Lapis Block","confidence":0.798},{"type":"color_analogous","target":"minecraft:light_blue_glazed_terracotta","label":"Couleurs analogues: Light Blue Glazed Terracotta","confidence":0.769},{"type":"color_complement","target":"minecraft:fire","label":"Contraste complementaire: Fire","confidence":0.96},{"type":"color_complement","target":"minecraft:jungle_hanging_sign","label":"Contraste complementaire: Jungle Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:jungle_wall_hanging_sign","label":"Contraste complementaire: Jungle Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_jungle_log","label":"Contraste complementaire: Stripped Jungle Log","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_jungle_wood","label":"Contraste complementaire: Stripped Jungle Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:barrel","label":"Contraste complementaire: Barrel","confidence":0.96},{"type":"color_complement","target":"minecraft:powered_rail","label":"Contraste complementaire: Powered Rail","confidence":0.96},{"type":"color_complement","target":"minecraft:sniffer_egg","label":"Contraste complementaire: Sniffer Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.96},{"type":"color_triad","target":"minecraft:crimson_button","label":"Harmonie triadique: Crimson Button","confidence":0.942},{"type":"color_triad","target":"minecraft:crimson_fence","label":"Harmonie triadique: Crimson Fence","confidence":0.942},{"type":"color_triad","target":"minecraft:crimson_fence_gate","label":"Harmonie triadique: Crimson Fence Gate","confidence":0.942},{"type":"color_triad","target":"minecraft:crimson_planks","label":"Harmonie triadique: Crimson Planks","confidence":0.942},{"type":"color_triad","target":"minecraft:crimson_pressure_plate","label":"Harmonie triadique: Crimson Pressure Plate","confidence":0.942},{"type":"color_triad","target":"minecraft:crimson_sign","label":"Harmonie triadique: Crimson Sign","confidence":0.942},{"type":"color_triad","target":"minecraft:crimson_slab","label":"Harmonie triadique: Crimson Slab","confidence":0.942},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.96},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.957},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.939},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.936},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.935},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.935},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.893},{"type":"value_contrast","target":"minecraft:structure_void","label":"Contraste clair sombre: Structure Void","confidence":0.55},{"type":"value_contrast","target":"minecraft:spawner","label":"Contraste clair sombre: Spawner","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_concrete","label":"Contraste clair sombre: Gray Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_shulker_box","label":"Contraste clair sombre: Gray Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55}],"category":"building"},{"id":"minecraft:light_blue_terracotta","name":"Light Blue Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#716d8a","dominant_hex":"#746c8c","average_hex":"#716d8a","hue_group":"neutral","lightness":0.4843,"saturation":0.1174,"palette":["#746c8c","#6c6c8c","#746c84","#6c6c84","#74748c"],"color_groups":[{"hex":"#746c8c","weight":0.8203,"lightness":0.4863,"saturation":0.129,"hue_group":"blue"},{"hex":"#6c6c8c","weight":0.1641,"lightness":0.4863,"saturation":0.129,"hue_group":"blue"},{"hex":"#746c84","weight":0.0078,"lightness":0.4706,"saturation":0.1,"hue_group":"neutral"},{"hex":"#6c6c84","weight":0.0039,"lightness":0.4706,"saturation":0.1,"hue_group":"neutral"},{"hex":"#74748c","weight":0.0039,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_blue_terracotta.png","family":"light_blue_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:emerald_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tripwire_hook","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_lichen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:shulker_box","label":"Palette proche: Shulker Box","confidence":0.782},{"type":"color_neighbors","target":"minecraft:blue_concrete_powder","label":"Palette proche: Blue Concrete Powder","confidence":0.76},{"type":"color_neighbors","target":"minecraft:polished_andesite","label":"Palette proche: Polished Andesite","confidence":0.745},{"type":"color_neighbors","target":"minecraft:polished_andesite_slab","label":"Palette proche: Polished Andesite Slab","confidence":0.745},{"type":"color_neighbors","target":"minecraft:polished_andesite_stairs","label":"Palette proche: Polished Andesite Stairs","confidence":0.745},{"type":"color_neighbors","target":"minecraft:purpur_block","label":"Palette proche: Purpur Block","confidence":0.723},{"type":"color_neighbors","target":"minecraft:purpur_slab","label":"Palette proche: Purpur Slab","confidence":0.723},{"type":"color_neighbors","target":"minecraft:purpur_stairs","label":"Palette proche: Purpur Stairs","confidence":0.723},{"type":"color_neighbors","target":"minecraft:clay","label":"Palette proche: Clay","confidence":0.722},{"type":"color_neighbors","target":"minecraft:purpur_pillar","label":"Palette proche: Purpur Pillar","confidence":0.718},{"type":"color_neighbors","target":"minecraft:blue_terracotta","label":"Palette proche: Blue Terracotta","confidence":0.712},{"type":"color_neighbors","target":"minecraft:heavy_core","label":"Palette proche: Heavy Core","confidence":0.712},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par palette: Shulker Box","confidence":0.82},{"type":"color_bridge","target":"minecraft:blue_concrete_powder","label":"Pont de nuance par sous-ton: Blue Concrete Powder","confidence":0.803},{"type":"color_bridge","target":"minecraft:polished_andesite","label":"Pont de nuance par palette: Polished Andesite","confidence":0.79},{"type":"color_bridge","target":"minecraft:polished_andesite_slab","label":"Pont de nuance par palette: Polished Andesite Slab","confidence":0.79},{"type":"color_bridge","target":"minecraft:polished_andesite_stairs","label":"Pont de nuance par palette: Polished Andesite Stairs","confidence":0.79},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par palette: Purpur Block","confidence":0.772},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par palette: Purpur Slab","confidence":0.772},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par palette: Purpur Stairs","confidence":0.772},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par palette: Clay","confidence":0.771},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par palette: Purpur Pillar","confidence":0.768},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.55}],"category":"building"},{"id":"minecraft:light_blue_wall_banner","name":"Light Blue Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"light_blue_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:light_blue_wool","name":"Light Blue Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#3aafd9","dominant_hex":"#4bc4e4","average_hex":"#3aafd9","hue_group":"cyan","lightness":0.5392,"saturation":0.6766,"palette":["#4bc4e4","#33a7d4","#2996ce","#44bcdf","#3cb4dc","#3cbcdc"],"color_groups":[{"hex":"#4bc4e4","weight":0.2461,"lightness":0.5941,"saturation":0.7391,"hue_group":"cyan"},{"hex":"#33a7d4","weight":0.2266,"lightness":0.5157,"saturation":0.6518,"hue_group":"cyan"},{"hex":"#2996ce","weight":0.2227,"lightness":0.4843,"saturation":0.668,"hue_group":"cyan"},{"hex":"#44bcdf","weight":0.125,"lightness":0.5706,"saturation":0.7078,"hue_group":"cyan"},{"hex":"#3cb4dc","weight":0.1094,"lightness":0.549,"saturation":0.6957,"hue_group":"cyan"},{"hex":"#3cbcdc","weight":0.0703,"lightness":0.549,"saturation":0.6957,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_blue_wool.png","family":"light_blue_wool","relations":[{"type":"visual_neighbors","target":"minecraft:light_blue_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_fire","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beacon","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_blue_carpet","label":"Palette proche: Light Blue Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_shulker_box","label":"Palette proche: Light Blue Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Palette proche: Light Blue Concrete Powder","confidence":0.927},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.912},{"type":"color_neighbors","target":"minecraft:light_blue_concrete","label":"Palette proche: Light Blue Concrete","confidence":0.885},{"type":"color_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Palette proche: Light Blue Glazed Terracotta","confidence":0.776},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.711},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass","label":"Palette proche: Light Blue Stained Glass","confidence":0.706},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.701},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.701},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.697},{"type":"color_neighbors","target":"minecraft:beacon","label":"Palette proche: Beacon","confidence":0.695},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par sous-ton: Light","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.58},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.58},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.58},{"type":"color_analogous","target":"minecraft:light_blue_carpet","label":"Couleurs analogues: Light Blue Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_shulker_box","label":"Couleurs analogues: Light Blue Shulker Box","confidence":0.954},{"type":"color_analogous","target":"minecraft:light_blue_concrete_powder","label":"Couleurs analogues: Light Blue Concrete Powder","confidence":0.95},{"type":"color_analogous","target":"minecraft:sculk_catalyst","label":"Couleurs analogues: Sculk Catalyst","confidence":0.909},{"type":"color_analogous","target":"minecraft:sculk","label":"Couleurs analogues: Sculk","confidence":0.907},{"type":"color_analogous","target":"minecraft:cyan_stained_glass_pane","label":"Couleurs analogues: Cyan Stained Glass Pane","confidence":0.893},{"type":"color_analogous","target":"minecraft:cyan_stained_glass","label":"Couleurs analogues: Cyan Stained Glass","confidence":0.884},{"type":"color_analogous","target":"minecraft:light_blue_candle","label":"Couleurs analogues: Light Blue Candle","confidence":0.85},{"type":"color_complement","target":"minecraft:copper_grate","label":"Contraste complementaire: Copper Grate","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_copper_grate","label":"Contraste complementaire: Waxed Copper Grate","confidence":0.96},{"type":"color_complement","target":"minecraft:magma_block","label":"Contraste complementaire: Magma Block","confidence":0.96},{"type":"color_complement","target":"minecraft:copper_bars","label":"Contraste complementaire: Copper Bars","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_copper_bars","label":"Contraste complementaire: Waxed Copper Bars","confidence":0.96},{"type":"color_complement","target":"minecraft:black_candle_cake","label":"Contraste complementaire: Black Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle_cake","label":"Contraste complementaire: Blue Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_candle_cake","label":"Contraste complementaire: Brown Candle Cake","confidence":0.96},{"type":"color_triad","target":"minecraft:melon","label":"Harmonie triadique: Melon","confidence":0.96},{"type":"color_triad","target":"minecraft:cave_vines","label":"Harmonie triadique: Cave Vines","confidence":0.947},{"type":"color_triad","target":"minecraft:lime_glazed_terracotta","label":"Harmonie triadique: Lime Glazed Terracotta","confidence":0.946},{"type":"color_triad","target":"minecraft:potted_azalea_bush","label":"Harmonie triadique: Potted Azalea Bush","confidence":0.914},{"type":"color_triad","target":"minecraft:green_concrete_powder","label":"Harmonie triadique: Green Concrete Powder","confidence":0.905},{"type":"color_triad","target":"minecraft:azalea","label":"Harmonie triadique: Azalea","confidence":0.902},{"type":"color_triad","target":"minecraft:green_carpet","label":"Harmonie triadique: Green Carpet","confidence":0.899},{"type":"color_triad","target":"minecraft:green_wool","label":"Harmonie triadique: Green Wool","confidence":0.899},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.956},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.956},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.935},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.908},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.904},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.898},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.898},{"type":"value_contrast","target":"minecraft:sculk_vein","label":"Contraste clair sombre: Sculk Vein","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55}],"category":"decorative"},{"id":"minecraft:light_gray_banner","name":"Light Gray Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"light_gray_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:light_gray_bed","name":"Light Gray Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"light_gray_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:light_gray_bundle","name":"Light Gray Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#878277","dominant_hex":"#6c6c6c","average_hex":"#878277","hue_group":"neutral","lightness":0.498,"saturation":0.063,"palette":["#6c6c6c","#685a50","#8e8977","#b4aca4","#c5c4b2","#4c544c"],"color_groups":[{"hex":"#6c6c6c","weight":0.1985,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#685a50","weight":0.1756,"lightness":0.3608,"saturation":0.1304,"hue_group":"red"},{"hex":"#8e8977","weight":0.1756,"lightness":0.5118,"saturation":0.0924,"hue_group":"neutral"},{"hex":"#b4aca4","weight":0.1603,"lightness":0.6745,"saturation":0.0964,"hue_group":"neutral"},{"hex":"#c5c4b2","weight":0.1603,"lightness":0.7353,"saturation":0.1407,"hue_group":"yellow"},{"hex":"#4c544c","weight":0.1298,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/light_gray_bundle.png","family":"light_gray_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:tropical_fish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clay_ball","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:light_gray_candle","name":"Light Gray Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#767970","dominant_hex":"#6c6c64","average_hex":"#767970","hue_group":"neutral","lightness":0.4569,"saturation":0.0386,"palette":["#6c6c64","#7c7c74","#94948c","#242434","#a4a49c"],"color_groups":[{"hex":"#6c6c64","weight":0.4286,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#7c7c74","weight":0.2857,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"},{"hex":"#94948c","weight":0.1905,"lightness":0.5647,"saturation":0.036,"hue_group":"neutral"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#a4a49c","weight":0.0476,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_gray_candle.png","family":"light_gray_candle","relations":[{"type":"visual_neighbors","target":"minecraft:light_gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stonecutter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_instance_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_concrete","label":"Palette proche: Light Gray Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_carpet","label":"Palette proche: Light Gray Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_wool","label":"Palette proche: Light Gray Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.91},{"type":"color_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Palette proche: Light Gray Concrete Powder","confidence":0.894},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.877},{"type":"color_neighbors","target":"minecraft:tuff_slab","label":"Palette proche: Tuff Slab","confidence":0.877},{"type":"color_neighbors","target":"minecraft:tuff_stairs","label":"Palette proche: Tuff Stairs","confidence":0.877},{"type":"color_neighbors","target":"minecraft:tuff_wall","label":"Palette proche: Tuff Wall","confidence":0.877},{"type":"color_neighbors","target":"minecraft:dead_brain_coral","label":"Palette proche: Dead Brain Coral","confidence":0.855},{"type":"color_neighbors","target":"minecraft:dead_fire_coral","label":"Palette proche: Dead Fire Coral","confidence":0.853},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_concrete","label":"Pont de nuance par palette: Light Gray Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55}],"category":"decorative"},{"id":"minecraft:light_gray_candle_cake","name":"Light Gray Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"light_gray_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle_cake","label":"Palette proche: Orange Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:light_gray_carpet","name":"Light Gray Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#8e8e87","dominant_hex":"#9c9c94","average_hex":"#8e8e87","hue_group":"neutral","lightness":0.5431,"saturation":0.03,"palette":["#9c9c94","#8c8c84","#84847c","#94948d","#7c7c74","#848474"],"color_groups":[{"hex":"#9c9c94","weight":0.2461,"lightness":0.5961,"saturation":0.0388,"hue_group":"neutral"},{"hex":"#8c8c84","weight":0.2305,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#84847c","weight":0.2188,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"},{"hex":"#94948d","weight":0.207,"lightness":0.5667,"saturation":0.0317,"hue_group":"neutral"},{"hex":"#7c7c74","weight":0.0625,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"},{"hex":"#848474","weight":0.0352,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_gray_wool.png","family":"light_gray_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:light_gray_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_bars","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_gray_wool","label":"Palette proche: Light Gray Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Palette proche: Light Gray Concrete Powder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_concrete","label":"Palette proche: Light Gray Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle","label":"Palette proche: Light Gray Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.89},{"type":"color_neighbors","target":"minecraft:tuff_slab","label":"Palette proche: Tuff Slab","confidence":0.89},{"type":"color_neighbors","target":"minecraft:tuff_stairs","label":"Palette proche: Tuff Stairs","confidence":0.89},{"type":"color_neighbors","target":"minecraft:tuff_wall","label":"Palette proche: Tuff Wall","confidence":0.89},{"type":"color_neighbors","target":"minecraft:dead_brain_coral","label":"Palette proche: Dead Brain Coral","confidence":0.885},{"type":"color_neighbors","target":"minecraft:dead_fire_coral","label":"Palette proche: Dead Fire Coral","confidence":0.883},{"type":"color_neighbors","target":"minecraft:dead_horn_coral","label":"Palette proche: Dead Horn Coral","confidence":0.88},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_concrete","label":"Pont de nuance par palette: Light Gray Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_candle","label":"Pont de nuance par palette: Light Gray Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral","label":"Pont de nuance par palette: Dead Brain Coral","confidence":0.86},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:dried_kelp_block","label":"Contraste clair sombre: Dried Kelp Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55}],"category":"decorative"},{"id":"minecraft:light_gray_concrete","name":"Light Gray Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#7d7d73","dominant_hex":"#7c7c74","average_hex":"#7d7d73","hue_group":"neutral","lightness":0.4706,"saturation":0.0417,"palette":["#7c7c74"],"color_groups":[{"hex":"#7c7c74","weight":1.0,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_gray_concrete.png","family":"light_gray_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_instance_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stonecutter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lodestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_carpet","label":"Palette proche: Light Gray Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_wool","label":"Palette proche: Light Gray Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle","label":"Palette proche: Light Gray Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.883},{"type":"color_neighbors","target":"minecraft:tuff_slab","label":"Palette proche: Tuff Slab","confidence":0.883},{"type":"color_neighbors","target":"minecraft:tuff_stairs","label":"Palette proche: Tuff Stairs","confidence":0.883},{"type":"color_neighbors","target":"minecraft:tuff_wall","label":"Palette proche: Tuff Wall","confidence":0.883},{"type":"color_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Palette proche: Light Gray Concrete Powder","confidence":0.857},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.855},{"type":"color_neighbors","target":"minecraft:dead_brain_coral","label":"Palette proche: Dead Brain Coral","confidence":0.836},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.834},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_candle","label":"Pont de nuance par palette: Light Gray Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.86},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:light_gray_concrete_powder","name":"Light Gray Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#9b9b94","dominant_hex":"#9c9c94","average_hex":"#9b9b94","hue_group":"neutral","lightness":0.5941,"saturation":0.0338,"palette":["#9c9c94","#94948c","#a4a49e","#9c9c9c","#afafa7","#8b8c84"],"color_groups":[{"hex":"#9c9c94","weight":0.2812,"lightness":0.5961,"saturation":0.0388,"hue_group":"neutral"},{"hex":"#94948c","weight":0.2734,"lightness":0.5647,"saturation":0.036,"hue_group":"neutral"},{"hex":"#a4a49e","weight":0.1523,"lightness":0.6314,"saturation":0.0319,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.1055,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#afafa7","weight":0.1016,"lightness":0.6706,"saturation":0.0476,"hue_group":"neutral"},{"hex":"#8b8c84","weight":0.0859,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_gray_concrete_powder.png","family":"light_gray_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:jungle_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dried_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeater","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:comparator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_gray_carpet","label":"Palette proche: Light Gray Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_wool","label":"Palette proche: Light Gray Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.903},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.903},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.903},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.903},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.897},{"type":"color_neighbors","target":"minecraft:light_gray_candle","label":"Palette proche: Light Gray Candle","confidence":0.894},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Palette proche: Dead Bubble Coral Fan","confidence":0.88},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_wall_fan","label":"Palette proche: Dead Bubble Coral Wall Fan","confidence":0.88},{"type":"color_neighbors","target":"minecraft:dead_horn_coral","label":"Palette proche: Dead Horn Coral","confidence":0.877},{"type":"color_neighbors","target":"minecraft:light_gray_stained_glass","label":"Palette proche: Light Gray Stained Glass","confidence":0.871},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_candle","label":"Pont de nuance par palette: Light Gray Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_fan","label":"Pont de nuance par palette: Dead Bubble Coral Fan","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_wall_fan","label":"Pont de nuance par palette: Dead Bubble Coral Wall Fan","confidence":0.86},{"type":"value_contrast","target":"minecraft:muddy_mangrove_roots","label":"Contraste clair sombre: Muddy Mangrove Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_slab","label":"Contraste clair sombre: Deepslate Tile Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_stairs","label":"Contraste clair sombre: Deepslate Tile Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_wall","label":"Contraste clair sombre: Deepslate Tile Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tiles","label":"Contraste clair sombre: Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_deepslate_tiles","label":"Contraste clair sombre: Cracked Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55}],"category":"building"},{"id":"minecraft:light_gray_dye","name":"Light Gray Dye","entry_type":"item","description":"Light gray dye is one of the sixteen available dyes.","history":[{"version":"1.2","status":"added","notes":"Added light gray dye."},{"version":"1.4.2 12w34a","status":"added","notes":"Added the ability to dye leather armor and wolf collars."},{"version":"1.8 14w30a","status":"added","notes":"Added banners , which can be dyed."}],"colors":{"primary":"#7f787c","dominant_hex":"#86848f","average_hex":"#7f787c","hue_group":"neutral","lightness":0.4843,"saturation":0.0283,"palette":["#86848f","#6c666d","#aeaaa2","#3c1c1c","#cccccc","#554c53"],"color_groups":[{"hex":"#86848f","weight":0.227,"lightness":0.5392,"saturation":0.0468,"hue_group":"neutral"},{"hex":"#6c666d","weight":0.2057,"lightness":0.4137,"saturation":0.0332,"hue_group":"neutral"},{"hex":"#aeaaa2","weight":0.1773,"lightness":0.6588,"saturation":0.069,"hue_group":"neutral"},{"hex":"#3c1c1c","weight":0.1489,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#cccccc","weight":0.1348,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#554c53","weight":0.1064,"lightness":0.3157,"saturation":0.0559,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/light_gray_dye.png","family":"light_gray_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_chestplate","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:light_gray_glazed_terracotta","name":"Light Gray Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#90a6a8","dominant_hex":"#cdd5d5","average_hex":"#90a6a8","hue_group":"cyan","lightness":0.6118,"saturation":0.1212,"palette":["#cdd5d5","#9b9b9b","#5d6d6f","#149f9f","#748484","#c4c4cc"],"color_groups":[{"hex":"#cdd5d5","weight":0.3555,"lightness":0.8196,"saturation":0.087,"hue_group":"neutral"},{"hex":"#9b9b9b","weight":0.1992,"lightness":0.6078,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5d6d6f","weight":0.1953,"lightness":0.4,"saturation":0.0882,"hue_group":"neutral"},{"hex":"#149f9f","weight":0.1172,"lightness":0.351,"saturation":0.7765,"hue_group":"cyan"},{"hex":"#748484","weight":0.0664,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#c4c4cc","weight":0.0664,"lightness":0.7843,"saturation":0.0727,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_gray_glazed_terracotta.png","family":"light_gray_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:chain_command_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sea_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_wall","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_diamond_ore","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_bricks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:white_concrete","label":"Palette proche: White Concrete","confidence":0.785},{"type":"color_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Palette proche: Cyan Glazed Terracotta","confidence":0.775},{"type":"color_neighbors","target":"minecraft:white_shulker_box","label":"Palette proche: White Shulker Box","confidence":0.771},{"type":"color_neighbors","target":"minecraft:diamond_ore","label":"Palette proche: Diamond Ore","confidence":0.767},{"type":"color_neighbors","target":"minecraft:glow_lichen","label":"Palette proche: Glow Lichen","confidence":0.758},{"type":"color_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Palette proche: Gray Glazed Terracotta","confidence":0.75},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.73},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.73},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.73},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.724},{"type":"color_neighbors","target":"minecraft:lodestone","label":"Palette proche: Lodestone","confidence":0.723},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.706},{"type":"color_bridge","target":"minecraft:white_concrete","label":"Pont de nuance par palette: White Concrete","confidence":0.823},{"type":"color_bridge","target":"minecraft:cyan_glazed_terracotta","label":"Pont de nuance par sous-ton: Cyan Glazed Terracotta","confidence":0.814},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par palette: White Shulker Box","confidence":0.812},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par palette: Diamond Ore","confidence":0.808},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par palette: Glow Lichen","confidence":0.8},{"type":"color_bridge","target":"minecraft:gray_glazed_terracotta","label":"Pont de nuance par palette: Gray Glazed Terracotta","confidence":0.794},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.777},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.777},{"type":"color_bridge","target":"minecraft:polished_diorite_stairs","label":"Pont de nuance par palette: Polished Diorite Stairs","confidence":0.777},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.772},{"type":"value_contrast","target":"minecraft:gray_shulker_box","label":"Contraste clair sombre: Gray Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_concrete","label":"Contraste clair sombre: Gray Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_chain","label":"Contraste clair sombre: Iron Chain","confidence":0.55},{"type":"value_contrast","target":"minecraft:spawner","label":"Contraste clair sombre: Spawner","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_deepslate","label":"Contraste clair sombre: Chiseled Deepslate","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:structure_void","label":"Contraste clair sombre: Structure Void","confidence":0.55}],"category":"building"},{"id":"minecraft:light_gray_harness","name":"Light Gray Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#715948","dominant_hex":"#6a6c6b","average_hex":"#715948","hue_group":"red","lightness":0.3627,"saturation":0.2216,"palette":["#6a6c6b","#502e16","#9f5f3e","#9aa3a5","#3c2414","#754525"],"color_groups":[{"hex":"#6a6c6b","weight":0.2331,"lightness":0.4196,"saturation":0.0093,"hue_group":"neutral"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#9f5f3e","weight":0.1718,"lightness":0.4333,"saturation":0.4389,"hue_group":"red"},{"hex":"#9aa3a5","weight":0.1595,"lightness":0.6255,"saturation":0.0576,"hue_group":"neutral"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"},{"hex":"#754525","weight":0.1104,"lightness":0.302,"saturation":0.5195,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/light_gray_harness.png","family":"light_gray_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_relic","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_key","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_upgrade_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:light_gray_shulker_box","name":"Light Gray Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#7c7c73","dominant_hex":"#8c8c84","average_hex":"#7c7c73","hue_group":"neutral","lightness":0.4686,"saturation":0.0377,"palette":["#8c8c84","#7c7c73","#64645c","#6c6c64","#5c5c54","#84847c"],"color_groups":[{"hex":"#8c8c84","weight":0.4727,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#7c7c73","weight":0.1719,"lightness":0.4686,"saturation":0.0377,"hue_group":"neutral"},{"hex":"#64645c","weight":0.1094,"lightness":0.3765,"saturation":0.0417,"hue_group":"neutral"},{"hex":"#6c6c64","weight":0.0898,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#5c5c54","weight":0.082,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#84847c","weight":0.0742,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_gray_shulker_box.png","family":"light_gray_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_instance_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stonecutter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lodestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_gray_carpet","label":"Palette proche: Light Gray Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_wool","label":"Palette proche: Light Gray Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_concrete","label":"Palette proche: Light Gray Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle","label":"Palette proche: Light Gray Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.927},{"type":"color_neighbors","target":"minecraft:tuff_slab","label":"Palette proche: Tuff Slab","confidence":0.927},{"type":"color_neighbors","target":"minecraft:tuff_stairs","label":"Palette proche: Tuff Stairs","confidence":0.927},{"type":"color_neighbors","target":"minecraft:tuff_wall","label":"Palette proche: Tuff Wall","confidence":0.927},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.904},{"type":"color_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Palette proche: Light Gray Concrete Powder","confidence":0.897},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.867},{"type":"color_neighbors","target":"minecraft:tuff_brick_stairs","label":"Palette proche: Tuff Brick Stairs","confidence":0.867},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_concrete","label":"Pont de nuance par palette: Light Gray Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_candle","label":"Pont de nuance par palette: Light Gray Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.86},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55}],"category":""},{"id":"minecraft:light_gray_stained_glass","name":"Light Gray Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#999999","dominant_hex":"#9c9c9c","average_hex":"#999999","hue_group":"neutral","lightness":0.6,"saturation":0.0,"palette":["#9c9c9c"],"color_groups":[{"hex":"#9c9c9c","weight":1.0,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_gray_stained_glass.png","family":"light_gray_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeater","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Palette proche: Light Gray Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_leaves","label":"Palette proche: Spruce Leaves","confidence":0.933},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.933},{"type":"color_bridge","target":"minecraft:light_gray_stained_glass_pane","label":"Pont de nuance par palette: Light Gray Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_slab","label":"Contraste clair sombre: Deepslate Tile Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_stairs","label":"Contraste clair sombre: Deepslate Tile Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_wall","label":"Contraste clair sombre: Deepslate Tile Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tiles","label":"Contraste clair sombre: Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_deepslate_tiles","label":"Contraste clair sombre: Cracked Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55}],"category":"building"},{"id":"minecraft:light_gray_stained_glass_pane","name":"Light Gray Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#939393","dominant_hex":"#949494","average_hex":"#939393","hue_group":"neutral","lightness":0.5765,"saturation":0.0,"palette":["#949494","#9c9c9c","#8c8c8c"],"color_groups":[{"hex":"#949494","weight":0.375,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.375,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.25,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_gray_stained_glass_pane_top.png","family":"light_gray_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_gray_stained_glass","label":"Palette proche: Light Gray Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_leaves","label":"Palette proche: Spruce Leaves","confidence":0.94},{"type":"color_bridge","target":"minecraft:light_gray_stained_glass","label":"Pont de nuance par palette: Light Gray Stained Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"value_contrast","target":"minecraft:deepslate_tile_slab","label":"Contraste clair sombre: Deepslate Tile Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_stairs","label":"Contraste clair sombre: Deepslate Tile Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_wall","label":"Contraste clair sombre: Deepslate Tile Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tiles","label":"Contraste clair sombre: Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_deepslate_tiles","label":"Contraste clair sombre: Cracked Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55}],"category":"building"},{"id":"minecraft:light_gray_terracotta","name":"Light Gray Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#876b62","dominant_hex":"#846c64","average_hex":"#876b62","hue_group":"red","lightness":0.4569,"saturation":0.1588,"palette":["#846c64","#8c6c64","#846c5c","#84645c"],"color_groups":[{"hex":"#846c64","weight":0.6602,"lightness":0.4549,"saturation":0.1379,"hue_group":"red"},{"hex":"#8c6c64","weight":0.2852,"lightness":0.4706,"saturation":0.1667,"hue_group":"red"},{"hex":"#846c5c","weight":0.0508,"lightness":0.4392,"saturation":0.1786,"hue_group":"red"},{"hex":"#84645c","weight":0.0039,"lightness":0.4392,"saturation":0.1786,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_gray_terracotta.png","family":"light_gray_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:dripstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:detector_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pointed_dripstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brick_slab","label":"Palette proche: Brick Slab","confidence":0.891},{"type":"color_neighbors","target":"minecraft:brick_stairs","label":"Palette proche: Brick Stairs","confidence":0.891},{"type":"color_neighbors","target":"minecraft:brick_wall","label":"Palette proche: Brick Wall","confidence":0.891},{"type":"color_neighbors","target":"minecraft:bricks","label":"Palette proche: Bricks","confidence":0.891},{"type":"color_neighbors","target":"minecraft:dripstone_block","label":"Palette proche: Dripstone Block","confidence":0.891},{"type":"color_neighbors","target":"minecraft:brown_mushroom_block","label":"Palette proche: Brown Mushroom Block","confidence":0.887},{"type":"color_neighbors","target":"minecraft:pointed_dripstone","label":"Palette proche: Pointed Dripstone","confidence":0.886},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.879},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.879},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.875},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.875},{"type":"color_neighbors","target":"minecraft:frogspawn","label":"Palette proche: Frogspawn","confidence":0.875},{"type":"color_bridge","target":"minecraft:brick_slab","label":"Pont de nuance par sous-ton: Brick Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:brick_stairs","label":"Pont de nuance par sous-ton: Brick Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:brick_wall","label":"Pont de nuance par sous-ton: Brick Wall","confidence":0.9},{"type":"color_bridge","target":"minecraft:bricks","label":"Pont de nuance par sous-ton: Bricks","confidence":0.9},{"type":"color_bridge","target":"minecraft:brown_mushroom_block","label":"Pont de nuance par sous-ton: Brown Mushroom Block","confidence":0.9},{"type":"color_bridge","target":"minecraft:granite","label":"Pont de nuance par sous-ton: Granite","confidence":0.896},{"type":"color_bridge","target":"minecraft:granite_slab","label":"Pont de nuance par sous-ton: Granite Slab","confidence":0.896},{"type":"color_bridge","target":"minecraft:granite_stairs","label":"Pont de nuance par sous-ton: Granite Stairs","confidence":0.896},{"type":"color_bridge","target":"minecraft:granite_wall","label":"Pont de nuance par sous-ton: Granite Wall","confidence":0.896},{"type":"color_bridge","target":"minecraft:polished_granite","label":"Pont de nuance par sous-ton: Polished Granite","confidence":0.896},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:light_gray_wall_banner","name":"Light Gray Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"light_gray_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:light_gray_wool","name":"Light Gray Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#8e8e87","dominant_hex":"#9c9c94","average_hex":"#8e8e87","hue_group":"neutral","lightness":0.5431,"saturation":0.03,"palette":["#9c9c94","#8c8c84","#84847c","#94948d","#7c7c74","#848474"],"color_groups":[{"hex":"#9c9c94","weight":0.2461,"lightness":0.5961,"saturation":0.0388,"hue_group":"neutral"},{"hex":"#8c8c84","weight":0.2305,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#84847c","weight":0.2188,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"},{"hex":"#94948d","weight":0.207,"lightness":0.5667,"saturation":0.0317,"hue_group":"neutral"},{"hex":"#7c7c74","weight":0.0625,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"},{"hex":"#848474","weight":0.0352,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/light_gray_wool.png","family":"light_gray_wool","relations":[{"type":"visual_neighbors","target":"minecraft:light_gray_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_bars","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_gray_carpet","label":"Palette proche: Light Gray Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Palette proche: Light Gray Concrete Powder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_concrete","label":"Palette proche: Light Gray Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle","label":"Palette proche: Light Gray Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.89},{"type":"color_neighbors","target":"minecraft:tuff_slab","label":"Palette proche: Tuff Slab","confidence":0.89},{"type":"color_neighbors","target":"minecraft:tuff_stairs","label":"Palette proche: Tuff Stairs","confidence":0.89},{"type":"color_neighbors","target":"minecraft:tuff_wall","label":"Palette proche: Tuff Wall","confidence":0.89},{"type":"color_neighbors","target":"minecraft:dead_brain_coral","label":"Palette proche: Dead Brain Coral","confidence":0.885},{"type":"color_neighbors","target":"minecraft:dead_fire_coral","label":"Palette proche: Dead Fire Coral","confidence":0.883},{"type":"color_neighbors","target":"minecraft:dead_horn_coral","label":"Palette proche: Dead Horn Coral","confidence":0.88},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_concrete","label":"Pont de nuance par palette: Light Gray Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_candle","label":"Pont de nuance par palette: Light Gray Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral","label":"Pont de nuance par palette: Dead Brain Coral","confidence":0.86},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:dried_kelp_block","label":"Contraste clair sombre: Dried Kelp Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55}],"category":"decorative"},{"id":"minecraft:light_weighted_pressure_plate","name":"Light Weighted Pressure Plate","entry_type":"block","description":"A light weighted pressure plate is a type of pressure plate that outputs a variable redstone signal strength equal to the number of entities touching it, but no higher than 15.","history":[{"version":"1.5 13w01a","status":"added","notes":"Added weighted pressure plates."}],"colors":{"primary":"#f6d03e","dominant_hex":"#fce84c","average_hex":"#f6d03e","hue_group":"yellow","lightness":0.6039,"saturation":0.9109,"palette":["#fce84c","#fcdc3c","#f4cc24","#d0902d","#fcbc24","#fcfc9f"],"color_groups":[{"hex":"#fce84c","weight":0.2891,"lightness":0.6431,"saturation":0.967,"hue_group":"yellow"},{"hex":"#fcdc3c","weight":0.2148,"lightness":0.6118,"saturation":0.9697,"hue_group":"yellow"},{"hex":"#f4cc24","weight":0.2031,"lightness":0.549,"saturation":0.9043,"hue_group":"yellow"},{"hex":"#d0902d","weight":0.1211,"lightness":0.4961,"saturation":0.6443,"hue_group":"yellow"},{"hex":"#fcbc24","weight":0.1133,"lightness":0.5647,"saturation":0.973,"hue_group":"yellow"},{"hex":"#fcfc9f","weight":0.0586,"lightness":0.8059,"saturation":0.9394,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/gold_block.png","family":"light_weighted_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wildflowers","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.929},{"type":"color_neighbors","target":"minecraft:yellow_wool","label":"Palette proche: Yellow Wool","confidence":0.929},{"type":"color_neighbors","target":"minecraft:yellow_shulker_box","label":"Palette proche: Yellow Shulker Box","confidence":0.904},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.896},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.89},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.882},{"type":"color_neighbors","target":"minecraft:yellow_concrete_powder","label":"Palette proche: Yellow Concrete Powder","confidence":0.876},{"type":"color_neighbors","target":"minecraft:yellow_candle","label":"Palette proche: Yellow Candle","confidence":0.856},{"type":"color_neighbors","target":"minecraft:jack_o_lantern","label":"Palette proche: Jack O Lantern","confidence":0.849},{"type":"color_neighbors","target":"minecraft:yellow_concrete","label":"Palette proche: Yellow Concrete","confidence":0.843},{"type":"color_neighbors","target":"minecraft:bee_nest","label":"Palette proche: Bee Nest","confidence":0.825},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.704},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.62},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.62},{"type":"color_bridge","target":"minecraft:crimson_fungus","label":"Pont de nuance par palette: Crimson Fungus","confidence":0.614},{"type":"color_bridge","target":"minecraft:potted_crimson_fungus","label":"Pont de nuance par palette: Potted Crimson Fungus","confidence":0.614},{"type":"color_bridge","target":"minecraft:jungle_leaves","label":"Pont de nuance par palette: Jungle Leaves","confidence":0.59},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.58},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.58},{"type":"color_analogous","target":"minecraft:gold_block","label":"Couleurs analogues: Gold Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_concrete_powder","label":"Couleurs analogues: Yellow Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:wildflowers","label":"Couleurs analogues: Wildflowers","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_sandstone","label":"Couleurs analogues: Chiseled Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone","label":"Couleurs analogues: Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_wall","label":"Couleurs analogues: Sandstone Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sand","label":"Couleurs analogues: Sand","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.945},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.937},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.913},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.909},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.903},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.866},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.866},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.918},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.918},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.918},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.909},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.867},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.829},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.829},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.802},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.96},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.913},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.683},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.674},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.674},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.67},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.665},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.613},{"type":"value_contrast","target":"minecraft:jungle_log","label":"Contraste clair sombre: Jungle Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_wood","label":"Contraste clair sombre: Jungle Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:podzol","label":"Contraste clair sombre: Podzol","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_trapdoor","label":"Contraste clair sombre: Dark Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:nether_wart_block","label":"Contraste clair sombre: Nether Wart Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_door","label":"Contraste clair sombre: Dark Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle","label":"Contraste clair sombre: Green Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55}],"category":"building"},{"id":"minecraft:lightning_rod","name":"Lightning Rod","entry_type":"block","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added lightning rods."},{"version":"wiki-history","status":"added","notes":"Added exposed, weathered and oxidized variants of lightning rods."}],"colors":{"primary":"#c56f53","dominant_hex":"#d47c5c","average_hex":"#c56f53","hue_group":"red","lightness":0.549,"saturation":0.4957,"palette":["#d47c5c","#cc7454","#a45c44","#e4846c","#9c543c","#b46444"],"color_groups":[{"hex":"#d47c5c","weight":0.3,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#cc7454","weight":0.25,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#a45c44","weight":0.125,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#e4846c","weight":0.125,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#9c543c","weight":0.1,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#b46444","weight":0.1,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lightning_rod.png","family":"lightning_rod","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper","label":"Palette proche: Waxed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Palette proche: Waxed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Palette proche: Waxed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_trapdoor","label":"Palette proche: Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Palette proche: Waxed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.777},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.777},{"type":"color_analogous","target":"minecraft:waxed_lightning_rod","label":"Couleurs analogues: Waxed Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_door","label":"Couleurs analogues: Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_door","label":"Couleurs analogues: Waxed Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chest","label":"Couleurs analogues: Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_golem_statue","label":"Couleurs analogues: Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_block","label":"Couleurs analogues: Waxed Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_chest","label":"Couleurs analogues: Waxed Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.956},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.945},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.945},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.886},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.883},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.817},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.917},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.911},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.899},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.899},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.899},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.899},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.895},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.742},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.959},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.959},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.946},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.924},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_stairs","label":"Contraste clair sombre: Dark Oak Stairs","confidence":0.55}],"category":""},{"id":"minecraft:lilac","name":"Lilac","entry_type":"block","description":"A lilac is a tall flower that can be crafted into magenta dye.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added lilacs."}],"colors":{"primary":"#897c7f","dominant_hex":"#50982c","average_hex":"#897c7f","hue_group":"neutral","lightness":0.5118,"saturation":0.0522,"palette":["#50982c","#9c649c","#d484d4","#b46cb4","#147c04","#dc94f4"],"color_groups":[{"hex":"#50982c","weight":0.2222,"lightness":0.3843,"saturation":0.551,"hue_group":"green"},{"hex":"#9c649c","weight":0.2111,"lightness":0.502,"saturation":0.2205,"hue_group":"purple"},{"hex":"#d484d4","weight":0.1778,"lightness":0.6745,"saturation":0.4819,"hue_group":"purple"},{"hex":"#b46cb4","weight":0.1667,"lightness":0.5647,"saturation":0.3243,"hue_group":"purple"},{"hex":"#147c04","weight":0.1556,"lightness":0.251,"saturation":0.9375,"hue_group":"green"},{"hex":"#dc94f4","weight":0.0667,"lightness":0.7686,"saturation":0.8136,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lilac_bottom.png","family":"lilac","relations":[{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pink_tulip","label":"Palette proche: Pink Tulip","confidence":0.756},{"type":"color_neighbors","target":"minecraft:potted_pink_tulip","label":"Palette proche: Potted Pink Tulip","confidence":0.756},{"type":"color_neighbors","target":"minecraft:allium","label":"Palette proche: Allium","confidence":0.736},{"type":"color_neighbors","target":"minecraft:potted_allium","label":"Palette proche: Potted Allium","confidence":0.736},{"type":"color_neighbors","target":"minecraft:flowering_azalea","label":"Palette proche: Flowering Azalea","confidence":0.719},{"type":"color_neighbors","target":"minecraft:potted_flowering_azalea_bush","label":"Palette proche: Potted Flowering Azalea Bush","confidence":0.719},{"type":"color_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Palette proche: Flowering Azalea Leaves","confidence":0.685},{"type":"color_neighbors","target":"minecraft:purpur_block","label":"Palette proche: Purpur Block","confidence":0.682},{"type":"color_neighbors","target":"minecraft:purpur_slab","label":"Palette proche: Purpur Slab","confidence":0.682},{"type":"color_neighbors","target":"minecraft:purpur_stairs","label":"Palette proche: Purpur Stairs","confidence":0.682},{"type":"color_neighbors","target":"minecraft:purpur_pillar","label":"Palette proche: Purpur Pillar","confidence":0.676},{"type":"color_neighbors","target":"minecraft:shulker_box","label":"Palette proche: Shulker Box","confidence":0.672},{"type":"color_bridge","target":"minecraft:pink_tulip","label":"Pont de nuance par sous-ton: Pink Tulip","confidence":0.799},{"type":"color_bridge","target":"minecraft:potted_pink_tulip","label":"Pont de nuance par sous-ton: Potted Pink Tulip","confidence":0.799},{"type":"color_bridge","target":"minecraft:allium","label":"Pont de nuance par sous-ton: Allium","confidence":0.782},{"type":"color_bridge","target":"minecraft:potted_allium","label":"Pont de nuance par sous-ton: Potted Allium","confidence":0.782},{"type":"color_bridge","target":"minecraft:flowering_azalea","label":"Pont de nuance par sous-ton: Flowering Azalea","confidence":0.769},{"type":"color_bridge","target":"minecraft:potted_flowering_azalea_bush","label":"Pont de nuance par sous-ton: Potted Flowering Azalea Bush","confidence":0.769},{"type":"color_bridge","target":"minecraft:flowering_azalea_leaves","label":"Pont de nuance par sous-ton: Flowering Azalea Leaves","confidence":0.74},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par palette: Purpur Block","confidence":0.738},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par palette: Purpur Slab","confidence":0.738},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par palette: Purpur Stairs","confidence":0.738},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_nether_bricks","label":"Contraste clair sombre: Chiseled Nether Bricks","confidence":0.55}],"category":""},{"id":"minecraft:lily_of_the_valley","name":"Lily Of The Valley","entry_type":"block","description":"A lily of the valley is a flower often found in forested biomes that can be crafted into white dye and suspicious stew.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added lilies of the valley."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell lilies of the valley."}],"colors":{"primary":"#7baf5f","dominant_hex":"#347c14","average_hex":"#7baf5f","hue_group":"green","lightness":0.5294,"saturation":0.3333,"palette":["#347c14","#54942c","#64b434","#e0e0e0","#fcfcfc","#7cc45c"],"color_groups":[{"hex":"#347c14","weight":0.2692,"lightness":0.2824,"saturation":0.7222,"hue_group":"green"},{"hex":"#54942c","weight":0.2115,"lightness":0.3765,"saturation":0.5417,"hue_group":"green"},{"hex":"#64b434","weight":0.1538,"lightness":0.4549,"saturation":0.5517,"hue_group":"green"},{"hex":"#e0e0e0","weight":0.1538,"lightness":0.8784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1154,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7cc45c","weight":0.0962,"lightness":0.5647,"saturation":0.4685,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lily_of_the_valley.png","family":"lily_of_the_valley","relations":[{"type":"visual_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_propagule","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Palette proche: Potted Lily Of The Valley","confidence":0.94},{"type":"color_neighbors","target":"minecraft:test_block","label":"Palette proche: Test Block","confidence":0.756},{"type":"color_neighbors","target":"minecraft:azure_bluet","label":"Palette proche: Azure Bluet","confidence":0.754},{"type":"color_neighbors","target":"minecraft:potted_azure_bluet","label":"Palette proche: Potted Azure Bluet","confidence":0.754},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.723},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.685},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.685},{"type":"color_neighbors","target":"minecraft:oxeye_daisy","label":"Palette proche: Oxeye Daisy","confidence":0.683},{"type":"color_neighbors","target":"minecraft:potted_oxeye_daisy","label":"Palette proche: Potted Oxeye Daisy","confidence":0.683},{"type":"color_neighbors","target":"minecraft:birch_sapling","label":"Palette proche: Birch Sapling","confidence":0.678},{"type":"color_neighbors","target":"minecraft:potted_birch_sapling","label":"Palette proche: Potted Birch Sapling","confidence":0.678},{"type":"color_neighbors","target":"minecraft:slime_block","label":"Palette proche: Slime Block","confidence":0.673},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par palette: Birch Log","confidence":0.687},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par palette: Birch Wood","confidence":0.687},{"type":"color_bridge","target":"minecraft:iron_bars","label":"Pont de nuance par palette: Iron Bars","confidence":0.669},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par palette: Pale Oak Trapdoor","confidence":0.641},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.627},{"type":"color_bridge","target":"minecraft:pale_oak_door","label":"Pont de nuance par palette: Pale Oak Door","confidence":0.623},{"type":"color_bridge","target":"minecraft:tall_grass","label":"Pont de nuance par palette: Tall Grass","confidence":0.617},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.616},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.612},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.612},{"type":"color_analogous","target":"minecraft:potted_lily_of_the_valley","label":"Couleurs analogues: Potted Lily Of The Valley","confidence":0.96},{"type":"color_analogous","target":"minecraft:seagrass","label":"Couleurs analogues: Seagrass","confidence":0.932},{"type":"color_analogous","target":"minecraft:potted_spruce_sapling","label":"Couleurs analogues: Potted Spruce Sapling","confidence":0.929},{"type":"color_analogous","target":"minecraft:spruce_sapling","label":"Couleurs analogues: Spruce Sapling","confidence":0.929},{"type":"color_analogous","target":"minecraft:tall_seagrass","label":"Couleurs analogues: Tall Seagrass","confidence":0.924},{"type":"color_analogous","target":"minecraft:pink_tulip","label":"Couleurs analogues: Pink Tulip","confidence":0.874},{"type":"color_analogous","target":"minecraft:potted_pink_tulip","label":"Couleurs analogues: Potted Pink Tulip","confidence":0.874},{"type":"color_analogous","target":"minecraft:potted_white_tulip","label":"Couleurs analogues: Potted White Tulip","confidence":0.846},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.927},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.894},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.894},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.874},{"type":"color_complement","target":"minecraft:dragon_egg","label":"Contraste complementaire: Dragon Egg","confidence":0.838},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.837},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.813},{"type":"color_complement","target":"minecraft:purple_shulker_box","label":"Contraste complementaire: Purple Shulker Box","confidence":0.813},{"type":"color_triad","target":"minecraft:magenta_terracotta","label":"Harmonie triadique: Magenta Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:pearlescent_froglight","label":"Harmonie triadique: Pearlescent Froglight","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_terracotta","label":"Harmonie triadique: Purple Terracotta","confidence":0.955},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.949},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.948},{"type":"color_triad","target":"minecraft:pink_glazed_terracotta","label":"Harmonie triadique: Pink Glazed Terracotta","confidence":0.944},{"type":"color_triad","target":"minecraft:ice","label":"Harmonie triadique: Ice","confidence":0.944},{"type":"color_triad","target":"minecraft:pink_stained_glass_pane","label":"Harmonie triadique: Pink Stained Glass Pane","confidence":0.938},{"type":"color_square","target":"minecraft:glass_pane","label":"Harmonie carree: Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:red_terracotta","label":"Harmonie carree: Red Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_concrete","label":"Harmonie carree: Cyan Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_trapdoor","label":"Harmonie carree: Cherry Trapdoor","confidence":0.937},{"type":"color_square","target":"minecraft:target","label":"Harmonie carree: Target","confidence":0.936},{"type":"color_square","target":"minecraft:nether_gold_ore","label":"Harmonie carree: Nether Gold Ore","confidence":0.919},{"type":"color_square","target":"minecraft:crimson_fungus","label":"Harmonie carree: Crimson Fungus","confidence":0.915},{"type":"color_square","target":"minecraft:potted_crimson_fungus","label":"Harmonie carree: Potted Crimson Fungus","confidence":0.915},{"type":"value_contrast","target":"minecraft:dried_kelp_block","label":"Contraste clair sombre: Dried Kelp Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55}],"category":""},{"id":"minecraft:lily_pad","name":"Lily Pad","entry_type":"block","description":"A lily pad is a plant block found in swamps, mangrove swamps and as fishing loot. It can only be placed on water or waterlogged blocks and can be stood on as a platform.","history":[{"version":"1.0.0","status":"added","notes":"Added lily pads."},{"version":"15w50a","status":"added","notes":"Added a sound to lily pads: block.waterlily.place ."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell lily pads."}],"colors":{"primary":"#868686","dominant_hex":"#949494","average_hex":"#868686","hue_group":"neutral","lightness":0.5255,"saturation":0.0,"palette":["#949494","#5c5c5c","#a4a4a4","#7c7c7c","#6c6c6c"],"color_groups":[{"hex":"#949494","weight":0.36,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.26,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.2333,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0467,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lily_pad.png","family":"lily_pad","relations":[{"type":"visual_neighbors","target":"minecraft:large_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tripwire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bush","label":"Palette proche: Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:furnace","label":"Palette proche: Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:bush","label":"Pont de nuance par palette: Bush","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:furnace","label":"Pont de nuance par palette: Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone","label":"Contraste clair sombre: Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_wall","label":"Contraste clair sombre: Blackstone Wall","confidence":0.55}],"category":""},{"id":"minecraft:lime_banner","name":"Lime Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"lime_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:lime_bed","name":"Lime Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"lime_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:lime_bundle","name":"Lime Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#76ad2a","dominant_hex":"#519619","average_hex":"#76ad2a","hue_group":"yellow","lightness":0.4216,"saturation":0.6093,"palette":["#519619","#a1d044","#b6f25e","#74bc1c","#3c6c0c","#845434"],"color_groups":[{"hex":"#519619","weight":0.3206,"lightness":0.3431,"saturation":0.7143,"hue_group":"green"},{"hex":"#a1d044","weight":0.1985,"lightness":0.5412,"saturation":0.5983,"hue_group":"yellow"},{"hex":"#b6f25e","weight":0.1603,"lightness":0.6588,"saturation":0.8506,"hue_group":"yellow"},{"hex":"#74bc1c","weight":0.1374,"lightness":0.4235,"saturation":0.7407,"hue_group":"yellow"},{"hex":"#3c6c0c","weight":0.1298,"lightness":0.2353,"saturation":0.8,"hue_group":"green"},{"hex":"#845434","weight":0.0534,"lightness":0.3608,"saturation":0.4348,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/lime_bundle.png","family":"lime_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_boots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_nautilus_armor","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:lime_candle","name":"Lime Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#62ac17","dominant_hex":"#5ca414","average_hex":"#62ac17","hue_group":"yellow","lightness":0.3824,"saturation":0.7641,"palette":["#5ca414","#64b41c","#7cc41c","#242434","#8ccc2c"],"color_groups":[{"hex":"#5ca414","weight":0.4286,"lightness":0.3608,"saturation":0.7826,"hue_group":"green"},{"hex":"#64b41c","weight":0.2857,"lightness":0.4078,"saturation":0.7308,"hue_group":"green"},{"hex":"#7cc41c","weight":0.1905,"lightness":0.4392,"saturation":0.75,"hue_group":"yellow"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#8ccc2c","weight":0.0476,"lightness":0.4863,"saturation":0.6452,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lime_candle.png","family":"lime_candle","relations":[{"type":"visual_neighbors","target":"minecraft:lime_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carved_pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lime_carpet","label":"Palette proche: Lime Carpet","confidence":0.937},{"type":"color_neighbors","target":"minecraft:lime_wool","label":"Palette proche: Lime Wool","confidence":0.937},{"type":"color_neighbors","target":"minecraft:lime_shulker_box","label":"Palette proche: Lime Shulker Box","confidence":0.929},{"type":"color_neighbors","target":"minecraft:lime_concrete","label":"Palette proche: Lime Concrete","confidence":0.91},{"type":"color_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Palette proche: Lime Stained Glass Pane","confidence":0.909},{"type":"color_neighbors","target":"minecraft:lime_stained_glass","label":"Palette proche: Lime Stained Glass","confidence":0.892},{"type":"color_neighbors","target":"minecraft:lime_concrete_powder","label":"Palette proche: Lime Concrete Powder","confidence":0.859},{"type":"color_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Palette proche: Lime Glazed Terracotta","confidence":0.84},{"type":"color_neighbors","target":"minecraft:bamboo","label":"Palette proche: Bamboo","confidence":0.76},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.76},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.75},{"type":"color_neighbors","target":"minecraft:green_candle","label":"Palette proche: Green Candle","confidence":0.724},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.616},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.616},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.609},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.609},{"type":"color_bridge","target":"minecraft:pitcher_plant","label":"Pont de nuance par sous-ton: Pitcher Plant","confidence":0.606},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.604},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.604},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.604},{"type":"color_bridge","target":"minecraft:horn_coral_fan","label":"Pont de nuance par palette: Horn Coral Fan","confidence":0.602},{"type":"color_bridge","target":"minecraft:horn_coral_wall_fan","label":"Pont de nuance par palette: Horn Coral Wall Fan","confidence":0.602},{"type":"color_analogous","target":"minecraft:lime_shulker_box","label":"Couleurs analogues: Lime Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete","label":"Couleurs analogues: Lime Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:kelp_plant","label":"Couleurs analogues: Kelp Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:cactus","label":"Couleurs analogues: Cactus","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sapling","label":"Couleurs analogues: Dark Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_dark_oak_sapling","label":"Couleurs analogues: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_carpet","label":"Couleurs analogues: Lime Carpet","confidence":0.944},{"type":"color_analogous","target":"minecraft:lime_wool","label":"Couleurs analogues: Lime Wool","confidence":0.944},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.922},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.901},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.901},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.891},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.891},{"type":"color_complement","target":"minecraft:purple_concrete","label":"Contraste complementaire: Purple Concrete","confidence":0.886},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.882},{"type":"color_complement","target":"minecraft:purple_stained_glass","label":"Contraste complementaire: Purple Stained Glass","confidence":0.852},{"type":"color_triad","target":"minecraft:cherry_log","label":"Harmonie triadique: Cherry Log","confidence":0.951},{"type":"color_triad","target":"minecraft:cherry_wood","label":"Harmonie triadique: Cherry Wood","confidence":0.951},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.857},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.842},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.84},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.83},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.818},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.818},{"type":"color_square","target":"minecraft:cyan_candle","label":"Harmonie carree: Cyan Candle","confidence":0.96},{"type":"color_square","target":"minecraft:red_shulker_box","label":"Harmonie carree: Red Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:red_concrete","label":"Harmonie carree: Red Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_nylium","label":"Harmonie carree: Crimson Nylium","confidence":0.96},{"type":"color_square","target":"minecraft:red_stained_glass_pane","label":"Harmonie carree: Red Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:red_stained_glass","label":"Harmonie carree: Red Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:barrier","label":"Harmonie carree: Barrier","confidence":0.96},{"type":"color_square","target":"minecraft:netherrack","label":"Harmonie carree: Netherrack","confidence":0.96},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone_slab","label":"Contraste clair sombre: Cut Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_slab","label":"Contraste clair sombre: Sandstone Slab","confidence":0.55}],"category":"decorative"},{"id":"minecraft:lime_candle_cake","name":"Lime Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"lime_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle_cake","label":"Palette proche: Orange Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:lime_carpet","name":"Lime Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#70b91a","dominant_hex":"#73bc1c","average_hex":"#70b91a","hue_group":"yellow","lightness":0.4137,"saturation":0.7536,"palette":["#73bc1c","#6cb41c","#7cc41c","#62ac1c","#64b41c","#84cc24"],"color_groups":[{"hex":"#73bc1c","weight":0.25,"lightness":0.4235,"saturation":0.7407,"hue_group":"yellow"},{"hex":"#6cb41c","weight":0.2031,"lightness":0.4078,"saturation":0.7308,"hue_group":"yellow"},{"hex":"#7cc41c","weight":0.1914,"lightness":0.4392,"saturation":0.75,"hue_group":"yellow"},{"hex":"#62ac1c","weight":0.1758,"lightness":0.3922,"saturation":0.72,"hue_group":"green"},{"hex":"#64b41c","weight":0.0977,"lightness":0.4078,"saturation":0.7308,"hue_group":"green"},{"hex":"#84cc24","weight":0.082,"lightness":0.4706,"saturation":0.7,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lime_wool.png","family":"lime_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:lime_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carved_pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hay_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lime_wool","label":"Palette proche: Lime Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_shulker_box","label":"Palette proche: Lime Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_concrete","label":"Palette proche: Lime Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Palette proche: Lime Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_stained_glass","label":"Palette proche: Lime Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle","label":"Palette proche: Lime Candle","confidence":0.937},{"type":"color_neighbors","target":"minecraft:lime_concrete_powder","label":"Palette proche: Lime Concrete Powder","confidence":0.903},{"type":"color_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Palette proche: Lime Glazed Terracotta","confidence":0.855},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.781},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.753},{"type":"color_neighbors","target":"minecraft:sugar_cane","label":"Palette proche: Sugar Cane","confidence":0.73},{"type":"color_neighbors","target":"minecraft:bamboo","label":"Palette proche: Bamboo","confidence":0.727},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.626},{"type":"color_bridge","target":"minecraft:yellow_terracotta","label":"Pont de nuance par palette: Yellow Terracotta","confidence":0.607},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.598},{"type":"color_bridge","target":"minecraft:emerald_block","label":"Pont de nuance par palette: Emerald Block","confidence":0.589},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.588},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.588},{"type":"color_bridge","target":"minecraft:yellow_candle","label":"Pont de nuance par palette: Yellow Candle","confidence":0.583},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Door","confidence":0.58},{"type":"color_analogous","target":"minecraft:lime_wool","label":"Couleurs analogues: Lime Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete_powder","label":"Couleurs analogues: Lime Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_tulip","label":"Couleurs analogues: Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_orange_tulip","label":"Couleurs analogues: Potted Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_shulker_box","label":"Couleurs analogues: Lime Shulker Box","confidence":0.957},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.954},{"type":"color_analogous","target":"minecraft:lime_stained_glass","label":"Couleurs analogues: Lime Stained Glass","confidence":0.954},{"type":"color_analogous","target":"minecraft:oak_sapling","label":"Couleurs analogues: Oak Sapling","confidence":0.949},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.96},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.96},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.958},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.932},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.932},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.912},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.847},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.93},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.915},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.906},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.906},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.906},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.879},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.873},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.873},{"type":"color_square","target":"minecraft:nether_wart","label":"Harmonie carree: Nether Wart","confidence":0.96},{"type":"color_square","target":"minecraft:red_nether_brick_slab","label":"Harmonie carree: Red Nether Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:red_nether_brick_stairs","label":"Harmonie carree: Red Nether Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:red_nether_brick_wall","label":"Harmonie carree: Red Nether Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:red_nether_bricks","label":"Harmonie carree: Red Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_hyphae","label":"Harmonie carree: Stripped Warped Hyphae","confidence":0.954},{"type":"color_square","target":"minecraft:stripped_warped_stem","label":"Harmonie carree: Stripped Warped Stem","confidence":0.954},{"type":"color_square","target":"minecraft:warped_hanging_sign","label":"Harmonie carree: Warped Hanging Sign","confidence":0.954},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55}],"category":"decorative"},{"id":"minecraft:lime_concrete","name":"Lime Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#5ea918","dominant_hex":"#5cac1c","average_hex":"#5ea918","hue_group":"green","lightness":0.3784,"saturation":0.7513,"palette":["#5cac1c","#5ca41c","#64ac1c"],"color_groups":[{"hex":"#5cac1c","weight":0.7578,"lightness":0.3922,"saturation":0.72,"hue_group":"green"},{"hex":"#5ca41c","weight":0.1602,"lightness":0.3765,"saturation":0.7083,"hue_group":"green"},{"hex":"#64ac1c","weight":0.082,"lightness":0.3922,"saturation":0.72,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lime_concrete.png","family":"lime_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:sunflower","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:emerald_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wheat","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:seagrass","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_seagrass","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lime_carpet","label":"Palette proche: Lime Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_wool","label":"Palette proche: Lime Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_shulker_box","label":"Palette proche: Lime Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle","label":"Palette proche: Lime Candle","confidence":0.91},{"type":"color_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Palette proche: Lime Stained Glass Pane","confidence":0.865},{"type":"color_neighbors","target":"minecraft:lime_stained_glass","label":"Palette proche: Lime Stained Glass","confidence":0.856},{"type":"color_neighbors","target":"minecraft:lime_concrete_powder","label":"Palette proche: Lime Concrete Powder","confidence":0.829},{"type":"color_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Palette proche: Lime Glazed Terracotta","confidence":0.828},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.797},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.776},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.748},{"type":"color_neighbors","target":"minecraft:seagrass","label":"Palette proche: Seagrass","confidence":0.74},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.635},{"type":"color_bridge","target":"minecraft:emerald_block","label":"Pont de nuance par palette: Emerald Block","confidence":0.625},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.599},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.581},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.581},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Trapdoor","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Weathered Copper Trapdoor","confidence":0.58},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.58},{"type":"color_analogous","target":"minecraft:lime_candle","label":"Couleurs analogues: Lime Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:kelp_plant","label":"Couleurs analogues: Kelp Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sapling","label":"Couleurs analogues: Jungle Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_jungle_sapling","label":"Couleurs analogues: Potted Jungle Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_shulker_box","label":"Couleurs analogues: Lime Shulker Box","confidence":0.958},{"type":"color_analogous","target":"minecraft:cactus","label":"Couleurs analogues: Cactus","confidence":0.952},{"type":"color_analogous","target":"minecraft:dark_oak_sapling","label":"Couleurs analogues: Dark Oak Sapling","confidence":0.949},{"type":"color_analogous","target":"minecraft:potted_dark_oak_sapling","label":"Couleurs analogues: Potted Dark Oak Sapling","confidence":0.949},{"type":"color_complement","target":"minecraft:purple_concrete","label":"Contraste complementaire: Purple Concrete","confidence":0.929},{"type":"color_complement","target":"minecraft:purple_stained_glass","label":"Contraste complementaire: Purple Stained Glass","confidence":0.894},{"type":"color_complement","target":"minecraft:purple_candle","label":"Contraste complementaire: Purple Candle","confidence":0.888},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.882},{"type":"color_complement","target":"minecraft:purple_shulker_box","label":"Contraste complementaire: Purple Shulker Box","confidence":0.88},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.879},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.861},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.861},{"type":"color_triad","target":"minecraft:cherry_log","label":"Harmonie triadique: Cherry Log","confidence":0.92},{"type":"color_triad","target":"minecraft:cherry_wood","label":"Harmonie triadique: Cherry Wood","confidence":0.92},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.906},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.888},{"type":"color_triad","target":"minecraft:crimson_button","label":"Harmonie triadique: Crimson Button","confidence":0.83},{"type":"color_triad","target":"minecraft:crimson_fence","label":"Harmonie triadique: Crimson Fence","confidence":0.83},{"type":"color_triad","target":"minecraft:crimson_fence_gate","label":"Harmonie triadique: Crimson Fence Gate","confidence":0.83},{"type":"color_triad","target":"minecraft:crimson_planks","label":"Harmonie triadique: Crimson Planks","confidence":0.83},{"type":"color_square","target":"minecraft:red_candle","label":"Harmonie carree: Red Candle","confidence":0.96},{"type":"color_square","target":"minecraft:red_shulker_box","label":"Harmonie carree: Red Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:warped_wart_block","label":"Harmonie carree: Warped Wart Block","confidence":0.96},{"type":"color_square","target":"minecraft:red_mushroom_block","label":"Harmonie carree: Red Mushroom Block","confidence":0.96},{"type":"color_square","target":"minecraft:red_concrete_powder","label":"Harmonie carree: Red Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:soul_fire","label":"Harmonie carree: Soul Fire","confidence":0.96},{"type":"color_square","target":"minecraft:nether_wart_block","label":"Harmonie carree: Nether Wart Block","confidence":0.96},{"type":"color_square","target":"minecraft:weeping_vines","label":"Harmonie carree: Weeping Vines","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.554},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55}],"category":"building"},{"id":"minecraft:lime_concrete_powder","name":"Lime Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#7dbd2a","dominant_hex":"#7dbb2b","average_hex":"#7dbd2a","hue_group":"yellow","lightness":0.4529,"saturation":0.6364,"palette":["#7dbb2b","#87c62c","#72b22a","#74bc2c","#7cc42c","#a7d95f"],"color_groups":[{"hex":"#7dbb2b","weight":0.3906,"lightness":0.451,"saturation":0.6261,"hue_group":"yellow"},{"hex":"#87c62c","weight":0.2891,"lightness":0.4745,"saturation":0.6364,"hue_group":"yellow"},{"hex":"#72b22a","weight":0.1953,"lightness":0.4314,"saturation":0.6182,"hue_group":"yellow"},{"hex":"#74bc2c","weight":0.0586,"lightness":0.4549,"saturation":0.6207,"hue_group":"green"},{"hex":"#7cc42c","weight":0.0547,"lightness":0.4706,"saturation":0.6333,"hue_group":"yellow"},{"hex":"#a7d95f","weight":0.0117,"lightness":0.6118,"saturation":0.6162,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lime_concrete_powder.png","family":"lime_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:bell","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hay_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jack_o_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lime_carpet","label":"Palette proche: Lime Carpet","confidence":0.903},{"type":"color_neighbors","target":"minecraft:lime_wool","label":"Palette proche: Lime Wool","confidence":0.903},{"type":"color_neighbors","target":"minecraft:lime_stained_glass","label":"Palette proche: Lime Stained Glass","confidence":0.88},{"type":"color_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Palette proche: Lime Stained Glass Pane","confidence":0.876},{"type":"color_neighbors","target":"minecraft:lime_candle","label":"Palette proche: Lime Candle","confidence":0.859},{"type":"color_neighbors","target":"minecraft:lime_shulker_box","label":"Palette proche: Lime Shulker Box","confidence":0.854},{"type":"color_neighbors","target":"minecraft:sugar_cane","label":"Palette proche: Sugar Cane","confidence":0.833},{"type":"color_neighbors","target":"minecraft:lime_concrete","label":"Palette proche: Lime Concrete","confidence":0.829},{"type":"color_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Palette proche: Lime Glazed Terracotta","confidence":0.816},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.794},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.783},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.78},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.658},{"type":"color_bridge","target":"minecraft:pitcher_crop","label":"Pont de nuance par palette: Pitcher Crop","confidence":0.632},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.631},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.631},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Trapdoor","confidence":0.624},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Weathered Copper Trapdoor","confidence":0.624},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Door","confidence":0.621},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par sous-ton: Weathered Copper Door","confidence":0.621},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.614},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.614},{"type":"color_analogous","target":"minecraft:lime_stained_glass","label":"Couleurs analogues: Lime Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_carpet","label":"Couleurs analogues: Lime Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_wool","label":"Couleurs analogues: Lime Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_tulip","label":"Couleurs analogues: Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_orange_tulip","label":"Couleurs analogues: Potted Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_sapling","label":"Couleurs analogues: Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_oak_sapling","label":"Couleurs analogues: Potted Oak Sapling","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.948},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.943},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.941},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.928},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.924},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.906},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.897},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.896},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.96},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.96},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.96},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.943},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.937},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.937},{"type":"color_square","target":"minecraft:fire_coral","label":"Harmonie carree: Fire Coral","confidence":0.96},{"type":"color_square","target":"minecraft:warped_door","label":"Harmonie carree: Warped Door","confidence":0.96},{"type":"color_square","target":"minecraft:beacon","label":"Harmonie carree: Beacon","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_hyphae","label":"Harmonie carree: Crimson Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_stem","label":"Harmonie carree: Crimson Stem","confidence":0.96},{"type":"color_square","target":"minecraft:diamond_block","label":"Harmonie carree: Diamond Block","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_hanging_sign","label":"Harmonie carree: Cherry Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_wall_hanging_sign","label":"Harmonie carree: Cherry Wall Hanging Sign","confidence":0.96},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"building"},{"id":"minecraft:lime_dye","name":"Lime Dye","entry_type":"item","description":"Lime dye is one of the sixteen available dyes.","history":[{"version":"1.2","status":"added","notes":"Added lime dye."},{"version":"1.4.2 12w34a","status":"added","notes":"Added the ability to dye leather armor and wolf collars."},{"version":"1.8 14w30a","status":"added","notes":"Added banners , which can be dyed."}],"colors":{"primary":"#638b29","dominant_hex":"#acd462","average_hex":"#638b29","hue_group":"yellow","lightness":0.3529,"saturation":0.5444,"palette":["#acd462","#74c414","#4c6637","#5c9c0c","#3c1c1c","#24441c"],"color_groups":[{"hex":"#acd462","weight":0.2137,"lightness":0.6078,"saturation":0.57,"hue_group":"yellow"},{"hex":"#74c414","weight":0.2061,"lightness":0.4235,"saturation":0.8148,"hue_group":"yellow"},{"hex":"#4c6637","weight":0.1679,"lightness":0.3078,"saturation":0.2994,"hue_group":"green"},{"hex":"#5c9c0c","weight":0.145,"lightness":0.3294,"saturation":0.8571,"hue_group":"yellow"},{"hex":"#3c1c1c","weight":0.1374,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#24441c","weight":0.1298,"lightness":0.1882,"saturation":0.4167,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/lime_dye.png","family":"lime_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:golden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_boots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bread","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:poisonous_potato","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:lime_glazed_terracotta","name":"Lime Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#a3c637","dominant_hex":"#d1ed83","average_hex":"#a3c637","hue_group":"yellow","lightness":0.4961,"saturation":0.5652,"palette":["#d1ed83","#83c51c","#f2b214","#5ca414","#85cf24","#5cac1c"],"color_groups":[{"hex":"#d1ed83","weight":0.2734,"lightness":0.7216,"saturation":0.7465,"hue_group":"yellow"},{"hex":"#83c51c","weight":0.1875,"lightness":0.4412,"saturation":0.7511,"hue_group":"yellow"},{"hex":"#f2b214","weight":0.1836,"lightness":0.5137,"saturation":0.8952,"hue_group":"yellow"},{"hex":"#5ca414","weight":0.1367,"lightness":0.3608,"saturation":0.7826,"hue_group":"green"},{"hex":"#85cf24","weight":0.1211,"lightness":0.4765,"saturation":0.7037,"hue_group":"yellow"},{"hex":"#5cac1c","weight":0.0977,"lightness":0.3922,"saturation":0.72,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lime_glazed_terracotta.png","family":"lime_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sponge","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bell","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lime_carpet","label":"Palette proche: Lime Carpet","confidence":0.855},{"type":"color_neighbors","target":"minecraft:lime_wool","label":"Palette proche: Lime Wool","confidence":0.855},{"type":"color_neighbors","target":"minecraft:lime_candle","label":"Palette proche: Lime Candle","confidence":0.84},{"type":"color_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Palette proche: Lime Stained Glass Pane","confidence":0.838},{"type":"color_neighbors","target":"minecraft:lime_stained_glass","label":"Palette proche: Lime Stained Glass","confidence":0.83},{"type":"color_neighbors","target":"minecraft:lime_shulker_box","label":"Palette proche: Lime Shulker Box","confidence":0.83},{"type":"color_neighbors","target":"minecraft:lime_concrete","label":"Palette proche: Lime Concrete","confidence":0.828},{"type":"color_neighbors","target":"minecraft:lime_concrete_powder","label":"Palette proche: Lime Concrete Powder","confidence":0.816},{"type":"color_neighbors","target":"minecraft:yellow_concrete","label":"Palette proche: Yellow Concrete","confidence":0.735},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.71},{"type":"color_neighbors","target":"minecraft:bamboo","label":"Palette proche: Bamboo","confidence":0.709},{"type":"color_neighbors","target":"minecraft:yellow_concrete_powder","label":"Palette proche: Yellow Concrete Powder","confidence":0.704},{"type":"color_bridge","target":"minecraft:honeycomb_block","label":"Pont de nuance par palette: Honeycomb Block","confidence":0.716},{"type":"color_bridge","target":"minecraft:jack_o_lantern","label":"Pont de nuance par palette: Jack O Lantern","confidence":0.705},{"type":"color_bridge","target":"minecraft:orange_concrete_powder","label":"Pont de nuance par palette: Orange Concrete Powder","confidence":0.69},{"type":"color_bridge","target":"minecraft:potted_open_eyeblossom","label":"Pont de nuance par palette: Potted Open Eyeblossom","confidence":0.688},{"type":"color_bridge","target":"minecraft:pumpkin","label":"Pont de nuance par palette: Pumpkin","confidence":0.685},{"type":"color_bridge","target":"minecraft:fire","label":"Pont de nuance par palette: Fire","confidence":0.679},{"type":"color_bridge","target":"minecraft:resin_block","label":"Pont de nuance par palette: Resin Block","confidence":0.646},{"type":"color_bridge","target":"minecraft:orange_carpet","label":"Pont de nuance par palette: Orange Carpet","confidence":0.645},{"type":"color_bridge","target":"minecraft:orange_wool","label":"Pont de nuance par palette: Orange Wool","confidence":0.645},{"type":"color_bridge","target":"minecraft:lava","label":"Pont de nuance par palette: Lava","confidence":0.641},{"type":"color_analogous","target":"minecraft:flowering_azalea_leaves","label":"Couleurs analogues: Flowering Azalea Leaves","confidence":0.935},{"type":"color_analogous","target":"minecraft:lime_terracotta","label":"Couleurs analogues: Lime Terracotta","confidence":0.929},{"type":"color_analogous","target":"minecraft:melon","label":"Couleurs analogues: Melon","confidence":0.928},{"type":"color_analogous","target":"minecraft:cave_vines_plant","label":"Couleurs analogues: Cave Vines Plant","confidence":0.921},{"type":"color_analogous","target":"minecraft:bamboo_block","label":"Couleurs analogues: Bamboo Block","confidence":0.917},{"type":"color_analogous","target":"minecraft:cave_vines","label":"Couleurs analogues: Cave Vines","confidence":0.913},{"type":"color_analogous","target":"minecraft:dandelion","label":"Couleurs analogues: Dandelion","confidence":0.907},{"type":"color_analogous","target":"minecraft:potted_dandelion","label":"Couleurs analogues: Potted Dandelion","confidence":0.907},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.908},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.9},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.9},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.9},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.9},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.766},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.701},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.682},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.955},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.952},{"type":"color_triad","target":"minecraft:light_blue_carpet","label":"Harmonie triadique: Light Blue Carpet","confidence":0.946},{"type":"color_triad","target":"minecraft:light_blue_wool","label":"Harmonie triadique: Light Blue Wool","confidence":0.946},{"type":"color_triad","target":"minecraft:sculk_vein","label":"Harmonie triadique: Sculk Vein","confidence":0.881},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.878},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.787},{"type":"color_square","target":"minecraft:potted_crimson_roots","label":"Harmonie carree: Potted Crimson Roots","confidence":0.92},{"type":"color_square","target":"minecraft:crimson_roots","label":"Harmonie carree: Crimson Roots","confidence":0.893},{"type":"color_square","target":"minecraft:cracked_nether_bricks","label":"Harmonie carree: Cracked Nether Bricks","confidence":0.843},{"type":"color_square","target":"minecraft:pink_carpet","label":"Harmonie carree: Pink Carpet","confidence":0.825},{"type":"color_square","target":"minecraft:pink_wool","label":"Harmonie carree: Pink Wool","confidence":0.825},{"type":"color_square","target":"minecraft:prismarine_brick_slab","label":"Harmonie carree: Prismarine Brick Slab","confidence":0.821},{"type":"color_square","target":"minecraft:prismarine_brick_stairs","label":"Harmonie carree: Prismarine Brick Stairs","confidence":0.821},{"type":"color_square","target":"minecraft:prismarine_bricks","label":"Harmonie carree: Prismarine Bricks","confidence":0.821},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55}],"category":"building"},{"id":"minecraft:lime_harness","name":"Lime Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#6c5f3a","dominant_hex":"#987844","average_hex":"#6c5f3a","hue_group":"yellow","lightness":0.3255,"saturation":0.3012,"palette":["#987844","#502e16","#497c3a","#3c2414","#754525","#a2b0b2"],"color_groups":[{"hex":"#987844","weight":0.2699,"lightness":0.4314,"saturation":0.3818,"hue_group":"yellow"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#497c3a","weight":0.1902,"lightness":0.3569,"saturation":0.3626,"hue_group":"green"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"},{"hex":"#754525","weight":0.1104,"lightness":0.302,"saturation":0.5195,"hue_group":"red"},{"hex":"#a2b0b2","weight":0.1043,"lightness":0.6667,"saturation":0.0941,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/lime_harness.png","family":"lime_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:armor_stand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crossbow","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:lime_shulker_box","name":"Lime Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#64ad17","dominant_hex":"#74bc1c","average_hex":"#64ad17","hue_group":"yellow","lightness":0.3843,"saturation":0.7653,"palette":["#74bc1c","#6cbc1c","#64ac1c","#4c8a14","#559b14","#6cb41c"],"color_groups":[{"hex":"#74bc1c","weight":0.2812,"lightness":0.4235,"saturation":0.7407,"hue_group":"yellow"},{"hex":"#6cbc1c","weight":0.2031,"lightness":0.4235,"saturation":0.7407,"hue_group":"green"},{"hex":"#64ac1c","weight":0.1719,"lightness":0.3922,"saturation":0.72,"hue_group":"green"},{"hex":"#4c8a14","weight":0.168,"lightness":0.3098,"saturation":0.7468,"hue_group":"green"},{"hex":"#559b14","weight":0.1133,"lightness":0.3431,"saturation":0.7714,"hue_group":"green"},{"hex":"#6cb41c","weight":0.0625,"lightness":0.4078,"saturation":0.7308,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lime_shulker_box.png","family":"lime_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:lime_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carved_pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lime_carpet","label":"Palette proche: Lime Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_wool","label":"Palette proche: Lime Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_concrete","label":"Palette proche: Lime Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle","label":"Palette proche: Lime Candle","confidence":0.929},{"type":"color_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Palette proche: Lime Stained Glass Pane","confidence":0.922},{"type":"color_neighbors","target":"minecraft:lime_stained_glass","label":"Palette proche: Lime Stained Glass","confidence":0.915},{"type":"color_neighbors","target":"minecraft:lime_concrete_powder","label":"Palette proche: Lime Concrete Powder","confidence":0.854},{"type":"color_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Palette proche: Lime Glazed Terracotta","confidence":0.83},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.811},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.777},{"type":"color_neighbors","target":"minecraft:bamboo","label":"Palette proche: Bamboo","confidence":0.775},{"type":"color_neighbors","target":"minecraft:seagrass","label":"Palette proche: Seagrass","confidence":0.745},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.619},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.615},{"type":"color_bridge","target":"minecraft:emerald_block","label":"Pont de nuance par palette: Emerald Block","confidence":0.596},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.583},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.583},{"type":"color_bridge","target":"minecraft:yellow_terracotta","label":"Pont de nuance par palette: Yellow Terracotta","confidence":0.583},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.58},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.58},{"type":"color_analogous","target":"minecraft:lime_candle","label":"Couleurs analogues: Lime Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:kelp_plant","label":"Couleurs analogues: Kelp Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:cactus","label":"Couleurs analogues: Cactus","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete","label":"Couleurs analogues: Lime Concrete","confidence":0.958},{"type":"color_analogous","target":"minecraft:lime_carpet","label":"Couleurs analogues: Lime Carpet","confidence":0.957},{"type":"color_analogous","target":"minecraft:lime_wool","label":"Couleurs analogues: Lime Wool","confidence":0.957},{"type":"color_analogous","target":"minecraft:dark_oak_sapling","label":"Couleurs analogues: Dark Oak Sapling","confidence":0.953},{"type":"color_analogous","target":"minecraft:potted_dark_oak_sapling","label":"Couleurs analogues: Potted Dark Oak Sapling","confidence":0.953},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.942},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.921},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.921},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.911},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.911},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.902},{"type":"color_complement","target":"minecraft:purple_concrete","label":"Contraste complementaire: Purple Concrete","confidence":0.866},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.859},{"type":"color_triad","target":"minecraft:cherry_log","label":"Harmonie triadique: Cherry Log","confidence":0.928},{"type":"color_triad","target":"minecraft:cherry_wood","label":"Harmonie triadique: Cherry Wood","confidence":0.928},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.865},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.853},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.841},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.841},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.841},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.834},{"type":"color_square","target":"minecraft:cyan_candle","label":"Harmonie carree: Cyan Candle","confidence":0.96},{"type":"color_square","target":"minecraft:pink_terracotta","label":"Harmonie carree: Pink Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:snow","label":"Harmonie carree: Snow","confidence":0.96},{"type":"color_square","target":"minecraft:snow_block","label":"Harmonie carree: Snow Block","confidence":0.96},{"type":"color_square","target":"minecraft:red_concrete","label":"Harmonie carree: Red Concrete","confidence":0.955},{"type":"color_square","target":"minecraft:crimson_nylium","label":"Harmonie carree: Crimson Nylium","confidence":0.955},{"type":"color_square","target":"minecraft:nether_wart","label":"Harmonie carree: Nether Wart","confidence":0.954},{"type":"color_square","target":"minecraft:red_nether_brick_slab","label":"Harmonie carree: Red Nether Brick Slab","confidence":0.95},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone_slab","label":"Contraste clair sombre: Cut Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_slab","label":"Contraste clair sombre: Sandstone Slab","confidence":0.55}],"category":""},{"id":"minecraft:lime_stained_glass","name":"Lime Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#7fcc19","dominant_hex":"#7ccc1c","average_hex":"#7fcc19","hue_group":"yellow","lightness":0.449,"saturation":0.7817,"palette":["#7ccc1c"],"color_groups":[{"hex":"#7ccc1c","weight":1.0,"lightness":0.4549,"saturation":0.7586,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lime_stained_glass.png","family":"lime_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Palette proche: Lime Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_carpet","label":"Palette proche: Lime Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_wool","label":"Palette proche: Lime Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_shulker_box","label":"Palette proche: Lime Shulker Box","confidence":0.915},{"type":"color_neighbors","target":"minecraft:lime_candle","label":"Palette proche: Lime Candle","confidence":0.892},{"type":"color_neighbors","target":"minecraft:lime_concrete_powder","label":"Palette proche: Lime Concrete Powder","confidence":0.88},{"type":"color_neighbors","target":"minecraft:lime_concrete","label":"Palette proche: Lime Concrete","confidence":0.856},{"type":"color_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Palette proche: Lime Glazed Terracotta","confidence":0.83},{"type":"color_neighbors","target":"minecraft:sugar_cane","label":"Palette proche: Sugar Cane","confidence":0.716},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.714},{"type":"color_neighbors","target":"minecraft:bamboo","label":"Palette proche: Bamboo","confidence":0.698},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.694},{"type":"color_bridge","target":"minecraft:yellow_terracotta","label":"Pont de nuance par palette: Yellow Terracotta","confidence":0.583},{"type":"color_bridge","target":"minecraft:yellow_candle","label":"Pont de nuance par palette: Yellow Candle","confidence":0.581},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Door","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par sous-ton: Weathered Copper Door","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Trapdoor","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Weathered Copper Trapdoor","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete_powder","label":"Couleurs analogues: Lime Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_tulip","label":"Couleurs analogues: Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_orange_tulip","label":"Couleurs analogues: Potted Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sapling","label":"Couleurs analogues: Birch Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_birch_sapling","label":"Couleurs analogues: Potted Birch Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_sapling","label":"Couleurs analogues: Oak Sapling","confidence":0.956},{"type":"color_analogous","target":"minecraft:potted_oak_sapling","label":"Couleurs analogues: Potted Oak Sapling","confidence":0.956},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.96},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.934},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.916},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.903},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.902},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.899},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.893},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.878},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.96},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.96},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.96},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.943},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.938},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.938},{"type":"color_square","target":"minecraft:fire_coral","label":"Harmonie carree: Fire Coral","confidence":0.96},{"type":"color_square","target":"minecraft:diamond_block","label":"Harmonie carree: Diamond Block","confidence":0.96},{"type":"color_square","target":"minecraft:warped_door","label":"Harmonie carree: Warped Door","confidence":0.96},{"type":"color_square","target":"minecraft:beacon","label":"Harmonie carree: Beacon","confidence":0.957},{"type":"color_square","target":"minecraft:crimson_hyphae","label":"Harmonie carree: Crimson Hyphae","confidence":0.957},{"type":"color_square","target":"minecraft:crimson_stem","label":"Harmonie carree: Crimson Stem","confidence":0.957},{"type":"color_square","target":"minecraft:warped_shelf","label":"Harmonie carree: Warped Shelf","confidence":0.955},{"type":"color_square","target":"minecraft:cherry_hanging_sign","label":"Harmonie carree: Cherry Hanging Sign","confidence":0.943},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"building"},{"id":"minecraft:lime_stained_glass_pane","name":"Lime Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#7bc518","dominant_hex":"#7cc41c","average_hex":"#7bc518","hue_group":"yellow","lightness":0.4333,"saturation":0.7828,"palette":["#7cc41c","#7ccc1c","#74bc14"],"color_groups":[{"hex":"#7cc41c","weight":0.375,"lightness":0.4392,"saturation":0.75,"hue_group":"yellow"},{"hex":"#7ccc1c","weight":0.375,"lightness":0.4549,"saturation":0.7586,"hue_group":"yellow"},{"hex":"#74bc14","weight":0.25,"lightness":0.4078,"saturation":0.8077,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lime_stained_glass_pane_top.png","family":"lime_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carved_pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lime_stained_glass","label":"Palette proche: Lime Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_carpet","label":"Palette proche: Lime Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_wool","label":"Palette proche: Lime Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_shulker_box","label":"Palette proche: Lime Shulker Box","confidence":0.922},{"type":"color_neighbors","target":"minecraft:lime_candle","label":"Palette proche: Lime Candle","confidence":0.909},{"type":"color_neighbors","target":"minecraft:lime_concrete_powder","label":"Palette proche: Lime Concrete Powder","confidence":0.876},{"type":"color_neighbors","target":"minecraft:lime_concrete","label":"Palette proche: Lime Concrete","confidence":0.865},{"type":"color_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Palette proche: Lime Glazed Terracotta","confidence":0.838},{"type":"color_neighbors","target":"minecraft:bamboo","label":"Palette proche: Bamboo","confidence":0.754},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.733},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.7},{"type":"color_neighbors","target":"minecraft:sugar_cane","label":"Palette proche: Sugar Cane","confidence":0.699},{"type":"color_bridge","target":"minecraft:yellow_terracotta","label":"Pont de nuance par palette: Yellow Terracotta","confidence":0.604},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.599},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Trapdoor","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Weathered Copper Trapdoor","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Door","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par sous-ton: Weathered Copper Door","confidence":0.58},{"type":"color_analogous","target":"minecraft:lime_stained_glass","label":"Couleurs analogues: Lime Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete_powder","label":"Couleurs analogues: Lime Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_tulip","label":"Couleurs analogues: Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_orange_tulip","label":"Couleurs analogues: Potted Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sapling","label":"Couleurs analogues: Birch Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_birch_sapling","label":"Couleurs analogues: Potted Birch Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_sapling","label":"Couleurs analogues: Oak Sapling","confidence":0.956},{"type":"color_analogous","target":"minecraft:potted_oak_sapling","label":"Couleurs analogues: Potted Oak Sapling","confidence":0.956},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.96},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.929},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.911},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.907},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.898},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.898},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.894},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.883},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.96},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.96},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.96},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.949},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.943},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.943},{"type":"color_square","target":"minecraft:fire_coral","label":"Harmonie carree: Fire Coral","confidence":0.96},{"type":"color_square","target":"minecraft:diamond_block","label":"Harmonie carree: Diamond Block","confidence":0.96},{"type":"color_square","target":"minecraft:warped_shelf","label":"Harmonie carree: Warped Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:warped_door","label":"Harmonie carree: Warped Door","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_hyphae","label":"Harmonie carree: Crimson Hyphae","confidence":0.951},{"type":"color_square","target":"minecraft:crimson_stem","label":"Harmonie carree: Crimson Stem","confidence":0.951},{"type":"color_square","target":"minecraft:beacon","label":"Harmonie carree: Beacon","confidence":0.951},{"type":"color_square","target":"minecraft:fire_coral_fan","label":"Harmonie carree: Fire Coral Fan","confidence":0.947},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"building"},{"id":"minecraft:lime_terracotta","name":"Lime Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#687635","dominant_hex":"#647434","average_hex":"#687635","hue_group":"yellow","lightness":0.3353,"saturation":0.3801,"palette":["#647434","#6c7434","#6c7c34","#6c7c3c","#6c743c"],"color_groups":[{"hex":"#647434","weight":0.6016,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#6c7434","weight":0.2383,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#6c7c34","weight":0.0977,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#6c7c3c","weight":0.0547,"lightness":0.3608,"saturation":0.3478,"hue_group":"yellow"},{"hex":"#6c743c","weight":0.0078,"lightness":0.3451,"saturation":0.3182,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lime_terracotta.png","family":"lime_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ladder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.934},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.934},{"type":"color_neighbors","target":"minecraft:bamboo_block","label":"Palette proche: Bamboo Block","confidence":0.928},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.921},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.919},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.912},{"type":"color_neighbors","target":"minecraft:cocoa","label":"Palette proche: Cocoa","confidence":0.901},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.868},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.868},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.864},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.74},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.74},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.74},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.74},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.736},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.736},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.717},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.717},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.717},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.717},{"type":"color_analogous","target":"minecraft:flowering_azalea_leaves","label":"Couleurs analogues: Flowering Azalea Leaves","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_block","label":"Couleurs analogues: Bamboo Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:cave_vines_plant","label":"Couleurs analogues: Cave Vines Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:dandelion","label":"Couleurs analogues: Dandelion","confidence":0.944},{"type":"color_analogous","target":"minecraft:potted_dandelion","label":"Couleurs analogues: Potted Dandelion","confidence":0.944},{"type":"color_analogous","target":"minecraft:flowering_azalea","label":"Couleurs analogues: Flowering Azalea","confidence":0.937},{"type":"color_analogous","target":"minecraft:lime_glazed_terracotta","label":"Couleurs analogues: Lime Glazed Terracotta","confidence":0.929},{"type":"color_analogous","target":"minecraft:green_terracotta","label":"Couleurs analogues: Green Terracotta","confidence":0.922},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.868},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.858},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.858},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.858},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.858},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.717},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.653},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.649},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.946},{"type":"color_triad","target":"minecraft:sculk_vein","label":"Harmonie triadique: Sculk Vein","confidence":0.934},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.891},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.888},{"type":"color_triad","target":"minecraft:light_blue_carpet","label":"Harmonie triadique: Light Blue Carpet","confidence":0.864},{"type":"color_triad","target":"minecraft:light_blue_wool","label":"Harmonie triadique: Light Blue Wool","confidence":0.864},{"type":"color_triad","target":"minecraft:glass_pane","label":"Harmonie triadique: Glass Pane","confidence":0.846},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.832},{"type":"color_square","target":"minecraft:crimson_roots","label":"Harmonie carree: Crimson Roots","confidence":0.951},{"type":"color_square","target":"minecraft:potted_crimson_roots","label":"Harmonie carree: Potted Crimson Roots","confidence":0.942},{"type":"color_square","target":"minecraft:pink_carpet","label":"Harmonie carree: Pink Carpet","confidence":0.884},{"type":"color_square","target":"minecraft:pink_wool","label":"Harmonie carree: Pink Wool","confidence":0.884},{"type":"color_square","target":"minecraft:purple_terracotta","label":"Harmonie carree: Purple Terracotta","confidence":0.868},{"type":"color_square","target":"minecraft:oxidized_copper_chain","label":"Harmonie carree: Oxidized Copper Chain","confidence":0.858},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie carree: Waxed Oxidized Copper Chain","confidence":0.858},{"type":"color_square","target":"minecraft:magenta_terracotta","label":"Harmonie carree: Magenta Terracotta","confidence":0.855},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.608},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.575},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.553},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55}],"category":"building"},{"id":"minecraft:lime_wall_banner","name":"Lime Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"lime_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:lime_wool","name":"Lime Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#70b91a","dominant_hex":"#73bc1c","average_hex":"#70b91a","hue_group":"yellow","lightness":0.4137,"saturation":0.7536,"palette":["#73bc1c","#6cb41c","#7cc41c","#62ac1c","#64b41c","#84cc24"],"color_groups":[{"hex":"#73bc1c","weight":0.25,"lightness":0.4235,"saturation":0.7407,"hue_group":"yellow"},{"hex":"#6cb41c","weight":0.2031,"lightness":0.4078,"saturation":0.7308,"hue_group":"yellow"},{"hex":"#7cc41c","weight":0.1914,"lightness":0.4392,"saturation":0.75,"hue_group":"yellow"},{"hex":"#62ac1c","weight":0.1758,"lightness":0.3922,"saturation":0.72,"hue_group":"green"},{"hex":"#64b41c","weight":0.0977,"lightness":0.4078,"saturation":0.7308,"hue_group":"green"},{"hex":"#84cc24","weight":0.082,"lightness":0.4706,"saturation":0.7,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lime_wool.png","family":"lime_wool","relations":[{"type":"visual_neighbors","target":"minecraft:lime_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carved_pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hay_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lime_carpet","label":"Palette proche: Lime Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_shulker_box","label":"Palette proche: Lime Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_concrete","label":"Palette proche: Lime Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Palette proche: Lime Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_stained_glass","label":"Palette proche: Lime Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle","label":"Palette proche: Lime Candle","confidence":0.937},{"type":"color_neighbors","target":"minecraft:lime_concrete_powder","label":"Palette proche: Lime Concrete Powder","confidence":0.903},{"type":"color_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Palette proche: Lime Glazed Terracotta","confidence":0.855},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.781},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.753},{"type":"color_neighbors","target":"minecraft:sugar_cane","label":"Palette proche: Sugar Cane","confidence":0.73},{"type":"color_neighbors","target":"minecraft:bamboo","label":"Palette proche: Bamboo","confidence":0.727},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.626},{"type":"color_bridge","target":"minecraft:yellow_terracotta","label":"Pont de nuance par palette: Yellow Terracotta","confidence":0.607},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.598},{"type":"color_bridge","target":"minecraft:emerald_block","label":"Pont de nuance par palette: Emerald Block","confidence":0.589},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.588},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.588},{"type":"color_bridge","target":"minecraft:yellow_candle","label":"Pont de nuance par palette: Yellow Candle","confidence":0.583},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Door","confidence":0.58},{"type":"color_analogous","target":"minecraft:lime_carpet","label":"Couleurs analogues: Lime Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete_powder","label":"Couleurs analogues: Lime Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_tulip","label":"Couleurs analogues: Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_orange_tulip","label":"Couleurs analogues: Potted Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_shulker_box","label":"Couleurs analogues: Lime Shulker Box","confidence":0.957},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.954},{"type":"color_analogous","target":"minecraft:lime_stained_glass","label":"Couleurs analogues: Lime Stained Glass","confidence":0.954},{"type":"color_analogous","target":"minecraft:oak_sapling","label":"Couleurs analogues: Oak Sapling","confidence":0.949},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.96},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.96},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.958},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.932},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.932},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.912},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.847},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.93},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.915},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.906},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.906},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.906},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.879},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.873},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.873},{"type":"color_square","target":"minecraft:nether_wart","label":"Harmonie carree: Nether Wart","confidence":0.96},{"type":"color_square","target":"minecraft:red_nether_brick_slab","label":"Harmonie carree: Red Nether Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:red_nether_brick_stairs","label":"Harmonie carree: Red Nether Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:red_nether_brick_wall","label":"Harmonie carree: Red Nether Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:red_nether_bricks","label":"Harmonie carree: Red Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_hyphae","label":"Harmonie carree: Stripped Warped Hyphae","confidence":0.954},{"type":"color_square","target":"minecraft:stripped_warped_stem","label":"Harmonie carree: Stripped Warped Stem","confidence":0.954},{"type":"color_square","target":"minecraft:warped_hanging_sign","label":"Harmonie carree: Warped Hanging Sign","confidence":0.954},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55}],"category":"decorative"},{"id":"minecraft:lingering_potion","name":"Lingering Potion","entry_type":"item","description":"Lingering potions are variants of splash potions that can be thrown to leave clouds with status effects that linger on the ground in an area.","history":[{"version":"1.9 15w33a","status":"added","notes":"Added lingering potions."},{"version":"wiki-history","status":"added","notes":"Added lingering water bottle, and Mundane, Thick, and Awkward lingering potions."},{"version":"15w44b","status":"added","notes":"Added uncraftable lingering potions and lingering potions of Luck . Uncraftable lingering potions currently look identical to lingering water bottles."}],"colors":{"primary":"#91a4c1","dominant_hex":"#5c8cc4","average_hex":"#91a4c1","hue_group":"blue","lightness":0.6627,"saturation":0.2791,"palette":["#5c8cc4","#b4ccec","#d4e4f4","#8cacd4","#943414","#d46c4c"],"color_groups":[{"hex":"#5c8cc4","weight":0.4,"lightness":0.5647,"saturation":0.4685,"hue_group":"blue"},{"hex":"#b4ccec","weight":0.2333,"lightness":0.8157,"saturation":0.5957,"hue_group":"blue"},{"hex":"#d4e4f4","weight":0.1333,"lightness":0.8941,"saturation":0.5926,"hue_group":"blue"},{"hex":"#8cacd4","weight":0.1,"lightness":0.6902,"saturation":0.4557,"hue_group":"blue"},{"hex":"#943414","weight":0.0667,"lightness":0.3294,"saturation":0.7619,"hue_group":"red"},{"hex":"#d46c4c","weight":0.0667,"lightness":0.5647,"saturation":0.6126,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/lingering_potion.png","family":"lingering_potion","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_armor_trim_smithing_template","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wind_charge","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_meal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_shard","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:llama/brown","name":"Llama / Brown","entry_type":"mob","description":"A llama is a tameable neutral mob that can be equipped with a chest to transport items, and can also wear carpets. If attacked, it will retaliate using its spit.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added llamas."},{"version":"wiki-history","status":"added","notes":"Added baby llamas."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby llamas from growing up."}],"colors":{"primary":"#8d6432","dominant_hex":"#9a6825","average_hex":"#8d6432","hue_group":"yellow","lightness":0.3745,"saturation":0.4764,"palette":["#9a6825","#774f1c","#8c5c24","#edd6ab","#322c21","#845424"],"color_groups":[{"hex":"#9a6825","weight":0.3027,"lightness":0.3745,"saturation":0.6126,"hue_group":"yellow"},{"hex":"#774f1c","weight":0.2302,"lightness":0.2882,"saturation":0.619,"hue_group":"yellow"},{"hex":"#8c5c24","weight":0.1437,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"},{"hex":"#edd6ab","weight":0.1139,"lightness":0.8,"saturation":0.6471,"hue_group":"yellow"},{"hex":"#322c21","weight":0.1104,"lightness":0.1627,"saturation":0.2048,"hue_group":"yellow"},{"hex":"#845424","weight":0.0991,"lightness":0.3294,"saturation":0.5714,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/llama/brown.png","family":"llama","relations":[{"type":"variants","target":"minecraft:llama/creamy","label":"Same family: llama","confidence":0.75},{"type":"related_sets","target":"minecraft:llama/creamy","label":"Related set: llama","confidence":0.8},{"type":"variants","target":"minecraft:llama/gray","label":"Same family: llama","confidence":0.75},{"type":"related_sets","target":"minecraft:llama/gray","label":"Related set: llama","confidence":0.8},{"type":"variants","target":"minecraft:llama/white","label":"Same family: llama","confidence":0.75},{"type":"related_sets","target":"minecraft:llama/white","label":"Related set: llama","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_ropes","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/cold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_lime","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/creamy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:llama/creamy","name":"Llama / Creamy","entry_type":"mob","description":"A llama is a tameable neutral mob that can be equipped with a chest to transport items, and can also wear carpets. If attacked, it will retaliate using its spit.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added llamas."},{"version":"wiki-history","status":"added","notes":"Added baby llamas."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby llamas from growing up."}],"colors":{"primary":"#d5bf93","dominant_hex":"#e5cd96","average_hex":"#d5bf93","hue_group":"yellow","lightness":0.7059,"saturation":0.44,"palette":["#e5cd96","#f4e4bc","#5b4522","#f4dcac","#ecdcac","#fcecc4"],"color_groups":[{"hex":"#e5cd96","weight":0.2682,"lightness":0.7431,"saturation":0.6031,"hue_group":"yellow"},{"hex":"#f4e4bc","weight":0.1785,"lightness":0.8471,"saturation":0.7179,"hue_group":"yellow"},{"hex":"#5b4522","weight":0.1746,"lightness":0.2451,"saturation":0.456,"hue_group":"yellow"},{"hex":"#f4dcac","weight":0.1703,"lightness":0.8157,"saturation":0.766,"hue_group":"yellow"},{"hex":"#ecdcac","weight":0.119,"lightness":0.8,"saturation":0.6275,"hue_group":"yellow"},{"hex":"#fcecc4","weight":0.0893,"lightness":0.8784,"saturation":0.9032,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/llama/creamy.png","family":"llama","relations":[{"type":"variants","target":"minecraft:llama/brown","label":"Same family: llama","confidence":0.75},{"type":"related_sets","target":"minecraft:llama/brown","label":"Related set: llama","confidence":0.8},{"type":"variants","target":"minecraft:llama/gray","label":"Same family: llama","confidence":0.75},{"type":"related_sets","target":"minecraft:llama/gray","label":"Related set: llama","confidence":0.8},{"type":"variants","target":"minecraft:llama/white","label":"Same family: llama","confidence":0.75},{"type":"related_sets","target":"minecraft:llama/white","label":"Related set: llama","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:spark","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/calico","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_golem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/persian","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/ocelot","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:llama/gray","name":"Llama / Gray","entry_type":"mob","description":"A llama is a tameable neutral mob that can be equipped with a chest to transport items, and can also wear carpets. If attacked, it will retaliate using its spit.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added llamas."},{"version":"wiki-history","status":"added","notes":"Added baby llamas."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby llamas from growing up."}],"colors":{"primary":"#b9b5a5","dominant_hex":"#c1c1b9","average_hex":"#b9b5a5","hue_group":"yellow","lightness":0.6863,"saturation":0.125,"palette":["#c1c1b9","#acaba2","#e4e4d4","#5b4522","#d4d4c4","#ececdc"],"color_groups":[{"hex":"#c1c1b9","weight":0.2008,"lightness":0.7412,"saturation":0.0606,"hue_group":"neutral"},{"hex":"#acaba2","weight":0.1871,"lightness":0.6549,"saturation":0.0568,"hue_group":"neutral"},{"hex":"#e4e4d4","weight":0.1785,"lightness":0.8627,"saturation":0.2286,"hue_group":"yellow"},{"hex":"#5b4522","weight":0.1738,"lightness":0.2451,"saturation":0.456,"hue_group":"yellow"},{"hex":"#d4d4c4","weight":0.1706,"lightness":0.8,"saturation":0.1569,"hue_group":"yellow"},{"hex":"#ececdc","weight":0.0892,"lightness":0.8941,"saturation":0.2963,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/llama/gray.png","family":"llama","relations":[{"type":"variants","target":"minecraft:llama/brown","label":"Same family: llama","confidence":0.75},{"type":"related_sets","target":"minecraft:llama/brown","label":"Related set: llama","confidence":0.8},{"type":"variants","target":"minecraft:llama/creamy","label":"Same family: llama","confidence":0.75},{"type":"related_sets","target":"minecraft:llama/creamy","label":"Related set: llama","confidence":0.8},{"type":"variants","target":"minecraft:llama/white","label":"Same family: llama","confidence":0.75},{"type":"related_sets","target":"minecraft:llama/white","label":"Related set: llama","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cat/siamese","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_golem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/calico","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/grey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:llama/white","name":"Llama / White","entry_type":"mob","description":"A llama is a tameable neutral mob that can be equipped with a chest to transport items, and can also wear carpets. If attacked, it will retaliate using its spit.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added llamas."},{"version":"wiki-history","status":"added","notes":"Added baby llamas."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby llamas from growing up."}],"colors":{"primary":"#cbc7bf","dominant_hex":"#cecdcd","average_hex":"#cbc7bf","hue_group":"neutral","lightness":0.7725,"saturation":0.1034,"palette":["#cecdcd","#f4f4ec","#5b4623","#ececec","#dcdcdc","#fcfcf4"],"color_groups":[{"hex":"#cecdcd","weight":0.2665,"lightness":0.8059,"saturation":0.0101,"hue_group":"neutral"},{"hex":"#f4f4ec","weight":0.1781,"lightness":0.9412,"saturation":0.2667,"hue_group":"yellow"},{"hex":"#5b4623","weight":0.1765,"lightness":0.2471,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#ececec","weight":0.1663,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.119,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcf4","weight":0.0935,"lightness":0.9725,"saturation":0.5714,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/llama/white.png","family":"llama","relations":[{"type":"variants","target":"minecraft:llama/brown","label":"Same family: llama","confidence":0.75},{"type":"related_sets","target":"minecraft:llama/brown","label":"Related set: llama","confidence":0.8},{"type":"variants","target":"minecraft:llama/creamy","label":"Same family: llama","confidence":0.75},{"type":"related_sets","target":"minecraft:llama/creamy","label":"Related set: llama","confidence":0.8},{"type":"variants","target":"minecraft:llama/gray","label":"Same family: llama","confidence":0.75},{"type":"related_sets","target":"minecraft:llama/gray","label":"Related set: llama","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cat/ragdoll","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polarbear","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:llama_spawn_egg","name":"Llama Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#c7af87","dominant_hex":"#c7ad7f","average_hex":"#c7af87","hue_group":"yellow","lightness":0.6549,"saturation":0.3636,"palette":["#c7ad7f","#f4dcac","#7c644c","#947454","#f4e4bc","#fcf4d4"],"color_groups":[{"hex":"#c7ad7f","weight":0.3041,"lightness":0.6392,"saturation":0.3913,"hue_group":"yellow"},{"hex":"#f4dcac","weight":0.2165,"lightness":0.8157,"saturation":0.766,"hue_group":"yellow"},{"hex":"#7c644c","weight":0.1546,"lightness":0.3922,"saturation":0.24,"hue_group":"yellow"},{"hex":"#947454","weight":0.1443,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#f4e4bc","weight":0.0979,"lightness":0.8471,"saturation":0.7179,"hue_group":"yellow"},{"hex":"#fcf4d4","weight":0.0825,"lightness":0.9098,"saturation":0.8696,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/llama_spawn_egg.png","family":"llama_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:pumpkin_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:eye_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:filled_map","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:map","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trader_llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_porkchop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:totem_of_undying","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ocelot_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:lodestone","name":"Lodestone","entry_type":"block","description":"A lodestone is a block that can be used to alter compasses to point toward it.","history":[{"version":"1.16 20w13a","status":"added","notes":"Added lodestones."}],"colors":{"primary":"#77787b","dominant_hex":"#7a7a7a","average_hex":"#77787b","hue_group":"neutral","lightness":0.4745,"saturation":0.0165,"palette":["#7a7a7a","#8c8c8c","#a5a6ae","#6c6c6c","#4c4c54","#3c3c3c"],"color_groups":[{"hex":"#7a7a7a","weight":0.2695,"lightness":0.4784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.2031,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a5a6ae","weight":0.1758,"lightness":0.6647,"saturation":0.0526,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1328,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c54","weight":0.1211,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#3c3c3c","weight":0.0977,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lodestone_side.png","family":"lodestone","relations":[{"type":"visual_neighbors","target":"minecraft:bush","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_instance_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bush","label":"Palette proche: Bush","confidence":0.909},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.902},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.897},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.897},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.897},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.897},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.895},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.894},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.894},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.893},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.893},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.893},{"type":"color_bridge","target":"minecraft:bush","label":"Pont de nuance par palette: Bush","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55}],"category":"utility"},{"id":"minecraft:loom","name":"Loom","entry_type":"block","description":"A loom is a block used to apply customizable and layerable designs to banners using dyes. Some designs require banner patterns to apply. It also serves as a shepherd's job site block.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added looms."}],"colors":{"primary":"#8e775c","dominant_hex":"#5b4927","average_hex":"#8e775c","hue_group":"yellow","lightness":0.4588,"saturation":0.2137,"palette":["#5b4927","#c0b0a5","#ac8757","#34241c","#aa928a","#cca474"],"color_groups":[{"hex":"#5b4927","weight":0.2773,"lightness":0.2549,"saturation":0.4,"hue_group":"yellow"},{"hex":"#c0b0a5","weight":0.2188,"lightness":0.7,"saturation":0.1765,"hue_group":"red"},{"hex":"#ac8757","weight":0.2148,"lightness":0.5078,"saturation":0.3386,"hue_group":"yellow"},{"hex":"#34241c","weight":0.1055,"lightness":0.1569,"saturation":0.3,"hue_group":"red"},{"hex":"#aa928a","weight":0.1016,"lightness":0.6039,"saturation":0.1584,"hue_group":"red"},{"hex":"#cca474","weight":0.082,"lightness":0.6275,"saturation":0.4632,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/loom_top.png","family":"loom","relations":[{"type":"visual_neighbors","target":"minecraft:orange_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:daylight_detector","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:conduit","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powered_rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:ladder","label":"Palette proche: Ladder","confidence":0.856},{"type":"color_neighbors","target":"minecraft:conduit","label":"Palette proche: Conduit","confidence":0.855},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.852},{"type":"color_neighbors","target":"minecraft:lectern","label":"Palette proche: Lectern","confidence":0.851},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.85},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.85},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.85},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.85},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.85},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.85},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.85},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.85},{"type":"color_bridge","target":"minecraft:ladder","label":"Pont de nuance par sous-ton: Ladder","confidence":0.881},{"type":"color_bridge","target":"minecraft:oak_door","label":"Pont de nuance par sous-ton: Oak Door","confidence":0.878},{"type":"color_bridge","target":"minecraft:lectern","label":"Pont de nuance par sous-ton: Lectern","confidence":0.877},{"type":"color_bridge","target":"minecraft:black_banner","label":"Pont de nuance par sous-ton: Black Banner","confidence":0.876},{"type":"color_bridge","target":"minecraft:black_bed","label":"Pont de nuance par sous-ton: Black Bed","confidence":0.876},{"type":"color_bridge","target":"minecraft:black_wall_banner","label":"Pont de nuance par sous-ton: Black Wall Banner","confidence":0.876},{"type":"color_bridge","target":"minecraft:blue_banner","label":"Pont de nuance par sous-ton: Blue Banner","confidence":0.876},{"type":"color_bridge","target":"minecraft:blue_bed","label":"Pont de nuance par sous-ton: Blue Bed","confidence":0.876},{"type":"color_bridge","target":"minecraft:blue_wall_banner","label":"Pont de nuance par sous-ton: Blue Wall Banner","confidence":0.876},{"type":"color_bridge","target":"minecraft:brown_banner","label":"Pont de nuance par sous-ton: Brown Banner","confidence":0.876},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55}],"category":"utility"},{"id":"minecraft:mace","name":"Mace","entry_type":"item","description":"A mace is a melee weapon that can do smash attacks which deal more damage the farther the user falls before hitting an entity. Landing a successful smash attack causes the user to land without taking any fall damage accumulated prior to attacking. It is crafted with a heavy core which only drops from ominous vaults at a chance of 7.5%, and a breeze rod which is obtained from breezes.","history":[{"version":"1.20.5","status":"added","notes":"Added maces. No enchantments can be applied to it in Survival."},{"version":"wiki-history","status":"added","notes":"Added an even stronger knockback effect for when falling more than five blocks before performing a smash attack."},{"version":"wiki-history","status":"added","notes":"Added Density , Breach , and Wind Burst enchantments, which are unique to the mace."}],"colors":{"primary":"#515869","dominant_hex":"#3f4458","average_hex":"#515869","hue_group":"blue","lightness":0.3647,"saturation":0.129,"palette":["#3f4458","#1c242c","#aab0c4","#58637e","#7c84a4","#2c343c"],"color_groups":[{"hex":"#3f4458","weight":0.3232,"lightness":0.2961,"saturation":0.1656,"hue_group":"blue"},{"hex":"#1c242c","weight":0.202,"lightness":0.1412,"saturation":0.2222,"hue_group":"blue"},{"hex":"#aab0c4","weight":0.1616,"lightness":0.7176,"saturation":0.1806,"hue_group":"blue"},{"hex":"#58637e","weight":0.1515,"lightness":0.4196,"saturation":0.1776,"hue_group":"blue"},{"hex":"#7c84a4","weight":0.0909,"lightness":0.5647,"saturation":0.1802,"hue_group":"blue"},{"hex":"#2c343c","weight":0.0707,"lightness":0.2039,"saturation":0.1538,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/mace.png","family":"mace","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:ominous_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_meal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:magenta_banner","name":"Magenta Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"magenta_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:magenta_bed","name":"Magenta Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"magenta_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:magenta_bundle","name":"Magenta Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#a73e94","dominant_hex":"#9c2c94","average_hex":"#a73e94","hue_group":"purple","lightness":0.449,"saturation":0.4585,"palette":["#9c2c94","#732c5c","#b4519c","#cc4cbc","#dc69c9","#841c7c"],"color_groups":[{"hex":"#9c2c94","weight":0.1985,"lightness":0.3922,"saturation":0.56,"hue_group":"purple"},{"hex":"#732c5c","weight":0.1832,"lightness":0.3118,"saturation":0.4465,"hue_group":"purple"},{"hex":"#b4519c","weight":0.1756,"lightness":0.5118,"saturation":0.3976,"hue_group":"purple"},{"hex":"#cc4cbc","weight":0.1603,"lightness":0.549,"saturation":0.5565,"hue_group":"purple"},{"hex":"#dc69c9","weight":0.1603,"lightness":0.6373,"saturation":0.6216,"hue_group":"purple"},{"hex":"#841c7c","weight":0.1221,"lightness":0.3137,"saturation":0.65,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/magenta_bundle.png","family":"magenta_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:purple_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enderman_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_shell","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:popped_chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:endermite_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spire_armor_trim_smithing_template","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_crystal","label":"Shared hue group: purple","confidence":0.55}],"category":"item"},{"id":"minecraft:magenta_candle","name":"Magenta Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#a12e99","dominant_hex":"#9c2c94","average_hex":"#a12e99","hue_group":"purple","lightness":0.4059,"saturation":0.5556,"palette":["#9c2c94","#a42c9c","#bc3cb4","#242434","#c444b4"],"color_groups":[{"hex":"#9c2c94","weight":0.4286,"lightness":0.3922,"saturation":0.56,"hue_group":"purple"},{"hex":"#a42c9c","weight":0.2857,"lightness":0.4078,"saturation":0.5769,"hue_group":"purple"},{"hex":"#bc3cb4","weight":0.1905,"lightness":0.4863,"saturation":0.5161,"hue_group":"purple"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#c444b4","weight":0.0476,"lightness":0.5176,"saturation":0.5203,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/magenta_candle.png","family":"magenta_candle","relations":[{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:magenta_shulker_box","label":"Palette proche: Magenta Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_concrete","label":"Palette proche: Magenta Concrete","confidence":0.927},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.913},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.913},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.854},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.799},{"type":"color_neighbors","target":"minecraft:bubble_coral_block","label":"Palette proche: Bubble Coral Block","confidence":0.797},{"type":"color_neighbors","target":"minecraft:bubble_coral_fan","label":"Palette proche: Bubble Coral Fan","confidence":0.79},{"type":"color_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Palette proche: Bubble Coral Wall Fan","confidence":0.79},{"type":"color_neighbors","target":"minecraft:bubble_coral","label":"Palette proche: Bubble Coral","confidence":0.775},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.756},{"type":"color_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Palette proche: Brain Coral Wall Fan","confidence":0.756},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.756},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par palette: Black Candle","confidence":0.745},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par sous-ton: Tinted Glass","confidence":0.735},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.706},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.706},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.706},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.701},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.677},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.659},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par palette: Iron Chain","confidence":0.648},{"type":"color_analogous","target":"minecraft:magenta_concrete","label":"Couleurs analogues: Magenta Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_shulker_box","label":"Couleurs analogues: Magenta Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_carpet","label":"Couleurs analogues: Magenta Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_wool","label":"Couleurs analogues: Magenta Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_concrete_powder","label":"Couleurs analogues: Magenta Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral_block","label":"Couleurs analogues: Bubble Coral Block","confidence":0.93},{"type":"color_analogous","target":"minecraft:bubble_coral_fan","label":"Couleurs analogues: Bubble Coral Fan","confidence":0.912},{"type":"color_analogous","target":"minecraft:bubble_coral_wall_fan","label":"Couleurs analogues: Bubble Coral Wall Fan","confidence":0.912},{"type":"color_complement","target":"minecraft:wheat","label":"Contraste complementaire: Wheat","confidence":0.947},{"type":"color_complement","target":"minecraft:carrots","label":"Contraste complementaire: Carrots","confidence":0.709},{"type":"color_complement","target":"minecraft:verdant_froglight","label":"Contraste complementaire: Verdant Froglight","confidence":0.623},{"type":"color_complement","target":"minecraft:mangrove_propagule","label":"Contraste complementaire: Mangrove Propagule","confidence":0.578},{"type":"color_complement","target":"minecraft:sweet_berry_bush","label":"Contraste complementaire: Sweet Berry Bush","confidence":0.566},{"type":"color_complement","target":"minecraft:emerald_block","label":"Contraste complementaire: Emerald Block","confidence":0.558},{"type":"color_complement","target":"minecraft:beetroots","label":"Contraste complementaire: Beetroots","confidence":0.52},{"type":"color_complement","target":"minecraft:potatoes","label":"Contraste complementaire: Potatoes","confidence":0.52},{"type":"color_triad","target":"minecraft:cyan_concrete_powder","label":"Harmonie triadique: Cyan Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_glazed_terracotta","label":"Harmonie triadique: Cyan Glazed Terracotta","confidence":0.959},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.955},{"type":"color_triad","target":"minecraft:cyan_carpet","label":"Harmonie triadique: Cyan Carpet","confidence":0.954},{"type":"color_triad","target":"minecraft:cyan_wool","label":"Harmonie triadique: Cyan Wool","confidence":0.954},{"type":"color_triad","target":"minecraft:blue_orchid","label":"Harmonie triadique: Blue Orchid","confidence":0.953},{"type":"color_triad","target":"minecraft:potted_blue_orchid","label":"Harmonie triadique: Potted Blue Orchid","confidence":0.953},{"type":"color_triad","target":"minecraft:wet_sponge","label":"Harmonie triadique: Wet Sponge","confidence":0.944},{"type":"color_square","target":"minecraft:barrel","label":"Harmonie carree: Barrel","confidence":0.96},{"type":"color_square","target":"minecraft:powered_rail","label":"Harmonie carree: Powered Rail","confidence":0.96},{"type":"color_square","target":"minecraft:dead_bush","label":"Harmonie carree: Dead Bush","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dead_bush","label":"Harmonie carree: Potted Dead Bush","confidence":0.96},{"type":"color_square","target":"minecraft:podzol","label":"Harmonie carree: Podzol","confidence":0.96},{"type":"color_square","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie carree: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_hanging_sign","label":"Harmonie carree: Dark Oak Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_wall_hanging_sign","label":"Harmonie carree: Dark Oak Wall Hanging Sign","confidence":0.96},{"type":"value_contrast","target":"minecraft:cherry_leaves","label":"Contraste clair sombre: Cherry Leaves","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_petals","label":"Contraste clair sombre: Pink Petals","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"decorative"},{"id":"minecraft:magenta_candle_cake","name":"Magenta Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"magenta_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle_cake","label":"Palette proche: Orange Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:magenta_carpet","name":"Magenta Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#be45b4","dominant_hex":"#b53cac","average_hex":"#be45b4","hue_group":"purple","lightness":0.5078,"saturation":0.4821,"palette":["#b53cac","#be44b2","#c44cbb","#ad34a4","#cc54c2","#d462d2"],"color_groups":[{"hex":"#b53cac","weight":0.2461,"lightness":0.4725,"saturation":0.5021,"hue_group":"purple"},{"hex":"#be44b2","weight":0.1836,"lightness":0.5059,"saturation":0.4841,"hue_group":"purple"},{"hex":"#c44cbb","weight":0.1836,"lightness":0.5333,"saturation":0.5042,"hue_group":"purple"},{"hex":"#ad34a4","weight":0.168,"lightness":0.4412,"saturation":0.5378,"hue_group":"purple"},{"hex":"#cc54c2","weight":0.1133,"lightness":0.5647,"saturation":0.5405,"hue_group":"purple"},{"hex":"#d462d2","weight":0.1055,"lightness":0.6078,"saturation":0.57,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/magenta_wool.png","family":"magenta_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_shulker_box","label":"Palette proche: Magenta Shulker Box","confidence":0.939},{"type":"color_neighbors","target":"minecraft:magenta_concrete","label":"Palette proche: Magenta Concrete","confidence":0.927},{"type":"color_neighbors","target":"minecraft:magenta_candle","label":"Palette proche: Magenta Candle","confidence":0.913},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.879},{"type":"color_neighbors","target":"minecraft:bubble_coral_block","label":"Palette proche: Bubble Coral Block","confidence":0.803},{"type":"color_neighbors","target":"minecraft:bubble_coral_fan","label":"Palette proche: Bubble Coral Fan","confidence":0.792},{"type":"color_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Palette proche: Bubble Coral Wall Fan","confidence":0.792},{"type":"color_neighbors","target":"minecraft:bubble_coral","label":"Palette proche: Bubble Coral","confidence":0.783},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.773},{"type":"color_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Palette proche: Brain Coral Wall Fan","confidence":0.773},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.777},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.777},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.777},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.773},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.763},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.681},{"type":"color_bridge","target":"minecraft:birch_leaves","label":"Pont de nuance par palette: Birch Leaves","confidence":0.606},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par palette: Light Blue Terracotta","confidence":0.6},{"type":"color_bridge","target":"minecraft:cobblestone","label":"Pont de nuance par palette: Cobblestone","confidence":0.596},{"type":"color_bridge","target":"minecraft:cobblestone_slab","label":"Pont de nuance par palette: Cobblestone Slab","confidence":0.596},{"type":"color_analogous","target":"minecraft:magenta_wool","label":"Couleurs analogues: Magenta Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_concrete_powder","label":"Couleurs analogues: Magenta Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_shulker_box","label":"Couleurs analogues: Magenta Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_concrete","label":"Couleurs analogues: Magenta Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_candle","label":"Couleurs analogues: Magenta Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_glazed_terracotta","label":"Couleurs analogues: Magenta Glazed Terracotta","confidence":0.893},{"type":"color_analogous","target":"minecraft:bubble_coral_block","label":"Couleurs analogues: Bubble Coral Block","confidence":0.892},{"type":"color_analogous","target":"minecraft:bubble_coral_fan","label":"Couleurs analogues: Bubble Coral Fan","confidence":0.874},{"type":"color_complement","target":"minecraft:wheat","label":"Contraste complementaire: Wheat","confidence":0.914},{"type":"color_complement","target":"minecraft:carrots","label":"Contraste complementaire: Carrots","confidence":0.69},{"type":"color_complement","target":"minecraft:verdant_froglight","label":"Contraste complementaire: Verdant Froglight","confidence":0.605},{"type":"color_complement","target":"minecraft:sweet_berry_bush","label":"Contraste complementaire: Sweet Berry Bush","confidence":0.599},{"type":"color_complement","target":"minecraft:emerald_block","label":"Contraste complementaire: Emerald Block","confidence":0.576},{"type":"color_complement","target":"minecraft:mangrove_propagule","label":"Contraste complementaire: Mangrove Propagule","confidence":0.559},{"type":"color_complement","target":"minecraft:slime_block","label":"Contraste complementaire: Slime Block","confidence":0.52},{"type":"color_complement","target":"minecraft:potted_white_tulip","label":"Contraste complementaire: Potted White Tulip","confidence":0.52},{"type":"color_triad","target":"minecraft:wet_sponge","label":"Harmonie triadique: Wet Sponge","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_glazed_terracotta","label":"Harmonie triadique: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_concrete_powder","label":"Harmonie triadique: Cyan Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_slab","label":"Harmonie triadique: End Stone Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_stairs","label":"Harmonie triadique: End Stone Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_wall","label":"Harmonie triadique: End Stone Brick Wall","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_bricks","label":"Harmonie triadique: End Stone Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_shelf","label":"Harmonie carree: Jungle Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:dead_bush","label":"Harmonie carree: Dead Bush","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dead_bush","label":"Harmonie carree: Potted Dead Bush","confidence":0.96},{"type":"color_square","target":"minecraft:spruce_hanging_sign","label":"Harmonie carree: Spruce Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:spruce_wall_hanging_sign","label":"Harmonie carree: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_spruce_log","label":"Harmonie carree: Stripped Spruce Log","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_spruce_wood","label":"Harmonie carree: Stripped Spruce Wood","confidence":0.96},{"type":"color_square","target":"minecraft:oak_log","label":"Harmonie carree: Oak Log","confidence":0.96},{"type":"value_contrast","target":"minecraft:respawn_anchor","label":"Contraste clair sombre: Respawn Anchor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55}],"category":"decorative"},{"id":"minecraft:magenta_concrete","name":"Magenta Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#a9309f","dominant_hex":"#ac34a4","average_hex":"#a9309f","hue_group":"purple","lightness":0.4255,"saturation":0.5576,"palette":["#ac34a4","#ac349c","#ac2c9c","#a42c9c"],"color_groups":[{"hex":"#ac34a4","weight":0.4727,"lightness":0.4392,"saturation":0.5357,"hue_group":"purple"},{"hex":"#ac349c","weight":0.332,"lightness":0.4392,"saturation":0.5357,"hue_group":"purple"},{"hex":"#ac2c9c","weight":0.125,"lightness":0.4235,"saturation":0.5926,"hue_group":"purple"},{"hex":"#a42c9c","weight":0.0703,"lightness":0.4078,"saturation":0.5769,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/magenta_concrete.png","family":"magenta_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:magenta_shulker_box","label":"Palette proche: Magenta Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle","label":"Palette proche: Magenta Candle","confidence":0.927},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.927},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.927},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.838},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.818},{"type":"color_neighbors","target":"minecraft:bubble_coral_block","label":"Palette proche: Bubble Coral Block","confidence":0.807},{"type":"color_neighbors","target":"minecraft:bubble_coral_fan","label":"Palette proche: Bubble Coral Fan","confidence":0.789},{"type":"color_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Palette proche: Bubble Coral Wall Fan","confidence":0.789},{"type":"color_neighbors","target":"minecraft:bubble_coral","label":"Palette proche: Bubble Coral","confidence":0.785},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.741},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.736},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.747},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.686},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.686},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.686},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.68},{"type":"color_bridge","target":"minecraft:mycelium","label":"Pont de nuance par palette: Mycelium","confidence":0.621},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.619},{"type":"color_bridge","target":"minecraft:birch_leaves","label":"Pont de nuance par palette: Birch Leaves","confidence":0.599},{"type":"color_bridge","target":"minecraft:red_concrete_powder","label":"Pont de nuance par palette: Red Concrete Powder","confidence":0.58},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.58},{"type":"color_analogous","target":"minecraft:magenta_candle","label":"Couleurs analogues: Magenta Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_shulker_box","label":"Couleurs analogues: Magenta Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_carpet","label":"Couleurs analogues: Magenta Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_wool","label":"Couleurs analogues: Magenta Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_concrete_powder","label":"Couleurs analogues: Magenta Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral_block","label":"Couleurs analogues: Bubble Coral Block","confidence":0.908},{"type":"color_analogous","target":"minecraft:bubble_coral_fan","label":"Couleurs analogues: Bubble Coral Fan","confidence":0.891},{"type":"color_analogous","target":"minecraft:bubble_coral_wall_fan","label":"Couleurs analogues: Bubble Coral Wall Fan","confidence":0.891},{"type":"color_complement","target":"minecraft:wheat","label":"Contraste complementaire: Wheat","confidence":0.921},{"type":"color_complement","target":"minecraft:carrots","label":"Contraste complementaire: Carrots","confidence":0.683},{"type":"color_complement","target":"minecraft:verdant_froglight","label":"Contraste complementaire: Verdant Froglight","confidence":0.597},{"type":"color_complement","target":"minecraft:sweet_berry_bush","label":"Contraste complementaire: Sweet Berry Bush","confidence":0.592},{"type":"color_complement","target":"minecraft:emerald_block","label":"Contraste complementaire: Emerald Block","confidence":0.584},{"type":"color_complement","target":"minecraft:mangrove_propagule","label":"Contraste complementaire: Mangrove Propagule","confidence":0.551},{"type":"color_complement","target":"minecraft:beetroots","label":"Contraste complementaire: Beetroots","confidence":0.52},{"type":"color_complement","target":"minecraft:potted_white_tulip","label":"Contraste complementaire: Potted White Tulip","confidence":0.52},{"type":"color_triad","target":"minecraft:cyan_concrete_powder","label":"Harmonie triadique: Cyan Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:wet_sponge","label":"Harmonie triadique: Wet Sponge","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_glazed_terracotta","label":"Harmonie triadique: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_slab","label":"Harmonie triadique: End Stone Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_stairs","label":"Harmonie triadique: End Stone Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_wall","label":"Harmonie triadique: End Stone Brick Wall","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_bricks","label":"Harmonie triadique: End Stone Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_shelf","label":"Harmonie carree: Jungle Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:dead_bush","label":"Harmonie carree: Dead Bush","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dead_bush","label":"Harmonie carree: Potted Dead Bush","confidence":0.96},{"type":"color_square","target":"minecraft:podzol","label":"Harmonie carree: Podzol","confidence":0.96},{"type":"color_square","target":"minecraft:oak_log","label":"Harmonie carree: Oak Log","confidence":0.96},{"type":"color_square","target":"minecraft:oak_wood","label":"Harmonie carree: Oak Wood","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_roots","label":"Harmonie carree: Mangrove Roots","confidence":0.96},{"type":"color_square","target":"minecraft:quartz_pillar","label":"Harmonie carree: Quartz Pillar","confidence":0.96},{"type":"value_contrast","target":"minecraft:cherry_leaves","label":"Contraste clair sombre: Cherry Leaves","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_petals","label":"Contraste clair sombre: Pink Petals","confidence":0.55},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55}],"category":"building"},{"id":"minecraft:magenta_concrete_powder","name":"Magenta Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#c154b9","dominant_hex":"#c457bd","average_hex":"#c154b9","hue_group":"purple","lightness":0.5431,"saturation":0.4678,"palette":["#c457bd","#bd4cb3","#d065ca","#bd54b4","#b344aa","#b44cac"],"color_groups":[{"hex":"#c457bd","weight":0.3281,"lightness":0.5549,"saturation":0.4802,"hue_group":"purple"},{"hex":"#bd4cb3","weight":0.1953,"lightness":0.5196,"saturation":0.4612,"hue_group":"purple"},{"hex":"#d065ca","weight":0.1797,"lightness":0.6059,"saturation":0.5323,"hue_group":"purple"},{"hex":"#bd54b4","weight":0.1289,"lightness":0.5353,"saturation":0.443,"hue_group":"purple"},{"hex":"#b344aa","weight":0.0859,"lightness":0.4843,"saturation":0.4494,"hue_group":"purple"},{"hex":"#b44cac","weight":0.082,"lightness":0.502,"saturation":0.4094,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/magenta_concrete_powder.png","family":"magenta_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_shulker_box","label":"Palette proche: Magenta Shulker Box","confidence":0.879},{"type":"color_neighbors","target":"minecraft:magenta_candle","label":"Palette proche: Magenta Candle","confidence":0.854},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.852},{"type":"color_neighbors","target":"minecraft:magenta_concrete","label":"Palette proche: Magenta Concrete","confidence":0.838},{"type":"color_neighbors","target":"minecraft:purpur_block","label":"Palette proche: Purpur Block","confidence":0.766},{"type":"color_neighbors","target":"minecraft:purpur_slab","label":"Palette proche: Purpur Slab","confidence":0.766},{"type":"color_neighbors","target":"minecraft:purpur_stairs","label":"Palette proche: Purpur Stairs","confidence":0.766},{"type":"color_neighbors","target":"minecraft:purpur_pillar","label":"Palette proche: Purpur Pillar","confidence":0.757},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.757},{"type":"color_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Palette proche: Brain Coral Wall Fan","confidence":0.757},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.808},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.808},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.8},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.783},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.71},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par palette: Light Blue Terracotta","confidence":0.63},{"type":"color_bridge","target":"minecraft:cobblestone","label":"Pont de nuance par palette: Cobblestone","confidence":0.629},{"type":"color_bridge","target":"minecraft:cobblestone_slab","label":"Pont de nuance par palette: Cobblestone Slab","confidence":0.629},{"type":"color_bridge","target":"minecraft:cobblestone_stairs","label":"Pont de nuance par palette: Cobblestone Stairs","confidence":0.629},{"type":"color_analogous","target":"minecraft:magenta_carpet","label":"Couleurs analogues: Magenta Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_wool","label":"Couleurs analogues: Magenta Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_shulker_box","label":"Couleurs analogues: Magenta Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_concrete","label":"Couleurs analogues: Magenta Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_candle","label":"Couleurs analogues: Magenta Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral_block","label":"Couleurs analogues: Bubble Coral Block","confidence":0.897},{"type":"color_analogous","target":"minecraft:magenta_glazed_terracotta","label":"Couleurs analogues: Magenta Glazed Terracotta","confidence":0.888},{"type":"color_analogous","target":"minecraft:bubble_coral_fan","label":"Couleurs analogues: Bubble Coral Fan","confidence":0.88},{"type":"color_complement","target":"minecraft:wheat","label":"Contraste complementaire: Wheat","confidence":0.931},{"type":"color_complement","target":"minecraft:carrots","label":"Contraste complementaire: Carrots","confidence":0.71},{"type":"color_complement","target":"minecraft:verdant_froglight","label":"Contraste complementaire: Verdant Froglight","confidence":0.625},{"type":"color_complement","target":"minecraft:sweet_berry_bush","label":"Contraste complementaire: Sweet Berry Bush","confidence":0.582},{"type":"color_complement","target":"minecraft:mangrove_propagule","label":"Contraste complementaire: Mangrove Propagule","confidence":0.579},{"type":"color_complement","target":"minecraft:emerald_block","label":"Contraste complementaire: Emerald Block","confidence":0.556},{"type":"color_complement","target":"minecraft:slime_block","label":"Contraste complementaire: Slime Block","confidence":0.52},{"type":"color_complement","target":"minecraft:potted_white_tulip","label":"Contraste complementaire: Potted White Tulip","confidence":0.52},{"type":"color_triad","target":"minecraft:cyan_glazed_terracotta","label":"Harmonie triadique: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_concrete_powder","label":"Harmonie triadique: Cyan Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:wet_sponge","label":"Harmonie triadique: Wet Sponge","confidence":0.959},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.957},{"type":"color_triad","target":"minecraft:end_stone_brick_slab","label":"Harmonie triadique: End Stone Brick Slab","confidence":0.943},{"type":"color_triad","target":"minecraft:end_stone_brick_stairs","label":"Harmonie triadique: End Stone Brick Stairs","confidence":0.943},{"type":"color_triad","target":"minecraft:end_stone_brick_wall","label":"Harmonie triadique: End Stone Brick Wall","confidence":0.943},{"type":"color_triad","target":"minecraft:end_stone_bricks","label":"Harmonie triadique: End Stone Bricks","confidence":0.943},{"type":"color_square","target":"minecraft:jungle_shelf","label":"Harmonie carree: Jungle Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:dead_bush","label":"Harmonie carree: Dead Bush","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dead_bush","label":"Harmonie carree: Potted Dead Bush","confidence":0.96},{"type":"color_square","target":"minecraft:oak_log","label":"Harmonie carree: Oak Log","confidence":0.96},{"type":"color_square","target":"minecraft:oak_wood","label":"Harmonie carree: Oak Wood","confidence":0.96},{"type":"color_square","target":"minecraft:podzol","label":"Harmonie carree: Podzol","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_hanging_sign","label":"Harmonie carree: Dark Oak Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_wall_hanging_sign","label":"Harmonie carree: Dark Oak Wall Hanging Sign","confidence":0.96},{"type":"value_contrast","target":"minecraft:cracked_polished_blackstone_bricks","label":"Contraste clair sombre: Cracked Polished Blackstone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_slab","label":"Contraste clair sombre: Blackstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_stairs","label":"Contraste clair sombre: Blackstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone","label":"Contraste clair sombre: Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_wall","label":"Contraste clair sombre: Blackstone Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_slab","label":"Contraste clair sombre: Polished Blackstone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_stairs","label":"Contraste clair sombre: Polished Blackstone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_wall","label":"Contraste clair sombre: Polished Blackstone Brick Wall","confidence":0.55}],"category":"building"},{"id":"minecraft:magenta_dye","name":"Magenta Dye","entry_type":"item","description":"Magenta dye is one of the sixteen available dyes.","history":[{"version":"1.2","status":"added","notes":"Added magenta dye."},{"version":"1.4.2 12w34a","status":"added","notes":"Added the ability to dye leather armor and wolf collars."},{"version":"1.8 14w30a","status":"added","notes":"Added banners , which can be dyed."}],"colors":{"primary":"#a05e97","dominant_hex":"#e49ce4","average_hex":"#a05e97","hue_group":"purple","lightness":0.498,"saturation":0.2598,"palette":["#e49ce4","#753860","#c777b6","#81468c","#ac4cac","#3c1c1c"],"color_groups":[{"hex":"#e49ce4","weight":0.2483,"lightness":0.7529,"saturation":0.5714,"hue_group":"purple"},{"hex":"#753860","weight":0.1724,"lightness":0.3392,"saturation":0.3526,"hue_group":"purple"},{"hex":"#c777b6","weight":0.1724,"lightness":0.6235,"saturation":0.4167,"hue_group":"purple"},{"hex":"#81468c","weight":0.1448,"lightness":0.4118,"saturation":0.3333,"hue_group":"purple"},{"hex":"#ac4cac","weight":0.1379,"lightness":0.4863,"saturation":0.3871,"hue_group":"purple"},{"hex":"#3c1c1c","weight":0.1241,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/magenta_dye.png","family":"magenta_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:spire_armor_trim_smithing_template","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_shell","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:popped_chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_crystal","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_bucket","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_breath","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_bundle","label":"Shared hue group: purple","confidence":0.55}],"category":"item"},{"id":"minecraft:magenta_glazed_terracotta","name":"Magenta Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#d064c0","dominant_hex":"#c44cbc","average_hex":"#d064c0","hue_group":"purple","lightness":0.6039,"saturation":0.5347,"palette":["#c44cbc","#ac33a0","#cd5ac5","#dc6cdc","#f4b4cc","#f4a4bc"],"color_groups":[{"hex":"#c44cbc","weight":0.2266,"lightness":0.5333,"saturation":0.5042,"hue_group":"purple"},{"hex":"#ac33a0","weight":0.1875,"lightness":0.4373,"saturation":0.5426,"hue_group":"purple"},{"hex":"#cd5ac5","weight":0.1797,"lightness":0.5784,"saturation":0.5349,"hue_group":"purple"},{"hex":"#dc6cdc","weight":0.1797,"lightness":0.6431,"saturation":0.6154,"hue_group":"purple"},{"hex":"#f4b4cc","weight":0.125,"lightness":0.8314,"saturation":0.7442,"hue_group":"red"},{"hex":"#f4a4bc","weight":0.1016,"lightness":0.8,"saturation":0.7843,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/magenta_glazed_terracotta.png","family":"magenta_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.879},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.879},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.852},{"type":"color_neighbors","target":"minecraft:magenta_concrete","label":"Palette proche: Magenta Concrete","confidence":0.818},{"type":"color_neighbors","target":"minecraft:magenta_shulker_box","label":"Palette proche: Magenta Shulker Box","confidence":0.809},{"type":"color_neighbors","target":"minecraft:magenta_candle","label":"Palette proche: Magenta Candle","confidence":0.799},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.764},{"type":"color_neighbors","target":"minecraft:brain_coral","label":"Palette proche: Brain Coral","confidence":0.762},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.762},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.744},{"type":"color_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Palette proche: Brain Coral Wall Fan","confidence":0.744},{"type":"color_neighbors","target":"minecraft:pink_carpet","label":"Palette proche: Pink Carpet","confidence":0.742},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.731},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.731},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.731},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.726},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.671},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.663},{"type":"color_bridge","target":"minecraft:cactus_flower","label":"Pont de nuance par palette: Cactus Flower","confidence":0.654},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.642},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.642},{"type":"color_bridge","target":"minecraft:amethyst_cluster","label":"Pont de nuance par palette: Amethyst Cluster","confidence":0.619},{"type":"color_analogous","target":"minecraft:magenta_carpet","label":"Couleurs analogues: Magenta Carpet","confidence":0.893},{"type":"color_analogous","target":"minecraft:magenta_wool","label":"Couleurs analogues: Magenta Wool","confidence":0.893},{"type":"color_analogous","target":"minecraft:magenta_concrete_powder","label":"Couleurs analogues: Magenta Concrete Powder","confidence":0.888},{"type":"color_analogous","target":"minecraft:magenta_shulker_box","label":"Couleurs analogues: Magenta Shulker Box","confidence":0.882},{"type":"color_analogous","target":"minecraft:magenta_concrete","label":"Couleurs analogues: Magenta Concrete","confidence":0.877},{"type":"color_analogous","target":"minecraft:magenta_candle","label":"Couleurs analogues: Magenta Candle","confidence":0.856},{"type":"color_analogous","target":"minecraft:bubble_coral_block","label":"Couleurs analogues: Bubble Coral Block","confidence":0.785},{"type":"color_analogous","target":"minecraft:bubble_coral_fan","label":"Couleurs analogues: Bubble Coral Fan","confidence":0.768},{"type":"color_complement","target":"minecraft:wheat","label":"Contraste complementaire: Wheat","confidence":0.788},{"type":"color_complement","target":"minecraft:sweet_berry_bush","label":"Contraste complementaire: Sweet Berry Bush","confidence":0.725},{"type":"color_complement","target":"minecraft:emerald_block","label":"Contraste complementaire: Emerald Block","confidence":0.713},{"type":"color_complement","target":"minecraft:carrots","label":"Contraste complementaire: Carrots","confidence":0.554},{"type":"color_complement","target":"minecraft:test_block","label":"Contraste complementaire: Test Block","confidence":0.52},{"type":"color_complement","target":"minecraft:slime_block","label":"Contraste complementaire: Slime Block","confidence":0.52},{"type":"color_complement","target":"minecraft:mangrove_propagule","label":"Contraste complementaire: Mangrove Propagule","confidence":0.52},{"type":"color_complement","target":"minecraft:potatoes","label":"Contraste complementaire: Potatoes","confidence":0.52},{"type":"color_triad","target":"minecraft:glass_pane","label":"Harmonie triadique: Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_concrete","label":"Harmonie triadique: Cyan Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:sea_pickle","label":"Harmonie triadique: Sea Pickle","confidence":0.932},{"type":"color_triad","target":"minecraft:green_terracotta","label":"Harmonie triadique: Green Terracotta","confidence":0.931},{"type":"color_triad","target":"minecraft:flowering_azalea","label":"Harmonie triadique: Flowering Azalea","confidence":0.926},{"type":"color_triad","target":"minecraft:sculk_shrieker","label":"Harmonie triadique: Sculk Shrieker","confidence":0.924},{"type":"color_triad","target":"minecraft:cyan_shulker_box","label":"Harmonie triadique: Cyan Shulker Box","confidence":0.922},{"type":"color_triad","target":"minecraft:glass","label":"Harmonie triadique: Glass","confidence":0.914},{"type":"color_square","target":"minecraft:short_dry_grass","label":"Harmonie carree: Short Dry Grass","confidence":0.96},{"type":"color_square","target":"minecraft:oak_hanging_sign","label":"Harmonie carree: Oak Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:oak_wall_hanging_sign","label":"Harmonie carree: Oak Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_oak_log","label":"Harmonie carree: Stripped Oak Log","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_oak_wood","label":"Harmonie carree: Stripped Oak Wood","confidence":0.96},{"type":"color_square","target":"minecraft:yellow_terracotta","label":"Harmonie carree: Yellow Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:torch","label":"Harmonie carree: Torch","confidence":0.96},{"type":"color_square","target":"minecraft:wall_torch","label":"Harmonie carree: Wall Torch","confidence":0.96},{"type":"value_contrast","target":"minecraft:blackstone","label":"Contraste clair sombre: Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_wall","label":"Contraste clair sombre: Blackstone Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:mud","label":"Contraste clair sombre: Mud","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_polished_blackstone_bricks","label":"Contraste clair sombre: Cracked Polished Blackstone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_hyphae","label":"Contraste clair sombre: Crimson Hyphae","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_stem","label":"Contraste clair sombre: Crimson Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_slab","label":"Contraste clair sombre: Blackstone Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:magenta_harness","name":"Magenta Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#7a4e4f","dominant_hex":"#83478c","average_hex":"#7a4e4f","hue_group":"red","lightness":0.3922,"saturation":0.22,"palette":["#83478c","#502e16","#9f5f3e","#b393ad","#70492f","#3c2414"],"color_groups":[{"hex":"#83478c","weight":0.2086,"lightness":0.4137,"saturation":0.327,"hue_group":"purple"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#9f5f3e","weight":0.1718,"lightness":0.4333,"saturation":0.4389,"hue_group":"red"},{"hex":"#b393ad","weight":0.1595,"lightness":0.6392,"saturation":0.1739,"hue_group":"purple"},{"hex":"#70492f","weight":0.135,"lightness":0.3118,"saturation":0.4088,"hue_group":"red"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/magenta_harness.png","family":"magenta_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:writable_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_relic","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:magenta_shulker_box","name":"Magenta Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#ae36a4","dominant_hex":"#bc3cac","average_hex":"#ae36a4","hue_group":"purple","lightness":0.4471,"saturation":0.5263,"palette":["#bc3cac","#ac34a4","#972c8c","#b43cac","#a42c95","#9c2c94"],"color_groups":[{"hex":"#bc3cac","weight":0.4297,"lightness":0.4863,"saturation":0.5161,"hue_group":"purple"},{"hex":"#ac34a4","weight":0.1758,"lightness":0.4392,"saturation":0.5357,"hue_group":"purple"},{"hex":"#972c8c","weight":0.125,"lightness":0.3824,"saturation":0.5487,"hue_group":"purple"},{"hex":"#b43cac","weight":0.1133,"lightness":0.4706,"saturation":0.5,"hue_group":"purple"},{"hex":"#a42c95","weight":0.0898,"lightness":0.4078,"saturation":0.5769,"hue_group":"purple"},{"hex":"#9c2c94","weight":0.0664,"lightness":0.3922,"saturation":0.56,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/magenta_shulker_box.png","family":"magenta_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:magenta_concrete","label":"Palette proche: Magenta Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle","label":"Palette proche: Magenta Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.939},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.939},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.879},{"type":"color_neighbors","target":"minecraft:bubble_coral_block","label":"Palette proche: Bubble Coral Block","confidence":0.819},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.809},{"type":"color_neighbors","target":"minecraft:bubble_coral_fan","label":"Palette proche: Bubble Coral Fan","confidence":0.807},{"type":"color_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Palette proche: Bubble Coral Wall Fan","confidence":0.807},{"type":"color_neighbors","target":"minecraft:bubble_coral","label":"Palette proche: Bubble Coral","confidence":0.797},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.758},{"type":"color_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Palette proche: Brain Coral Wall Fan","confidence":0.758},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.77},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.724},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.724},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.724},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.718},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.646},{"type":"color_bridge","target":"minecraft:mycelium","label":"Pont de nuance par palette: Mycelium","confidence":0.623},{"type":"color_bridge","target":"minecraft:birch_leaves","label":"Pont de nuance par palette: Birch Leaves","confidence":0.602},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par palette: Light Blue Terracotta","confidence":0.6},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.596},{"type":"color_analogous","target":"minecraft:magenta_concrete","label":"Couleurs analogues: Magenta Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_candle","label":"Couleurs analogues: Magenta Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_carpet","label":"Couleurs analogues: Magenta Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_wool","label":"Couleurs analogues: Magenta Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_concrete_powder","label":"Couleurs analogues: Magenta Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:bubble_coral_block","label":"Couleurs analogues: Bubble Coral Block","confidence":0.903},{"type":"color_analogous","target":"minecraft:bubble_coral_fan","label":"Couleurs analogues: Bubble Coral Fan","confidence":0.886},{"type":"color_analogous","target":"minecraft:bubble_coral_wall_fan","label":"Couleurs analogues: Bubble Coral Wall Fan","confidence":0.886},{"type":"color_complement","target":"minecraft:wheat","label":"Contraste complementaire: Wheat","confidence":0.917},{"type":"color_complement","target":"minecraft:carrots","label":"Contraste complementaire: Carrots","confidence":0.685},{"type":"color_complement","target":"minecraft:verdant_froglight","label":"Contraste complementaire: Verdant Froglight","confidence":0.599},{"type":"color_complement","target":"minecraft:sweet_berry_bush","label":"Contraste complementaire: Sweet Berry Bush","confidence":0.596},{"type":"color_complement","target":"minecraft:emerald_block","label":"Contraste complementaire: Emerald Block","confidence":0.582},{"type":"color_complement","target":"minecraft:mangrove_propagule","label":"Contraste complementaire: Mangrove Propagule","confidence":0.553},{"type":"color_complement","target":"minecraft:potted_white_tulip","label":"Contraste complementaire: Potted White Tulip","confidence":0.52},{"type":"color_complement","target":"minecraft:white_tulip","label":"Contraste complementaire: White Tulip","confidence":0.52},{"type":"color_triad","target":"minecraft:wet_sponge","label":"Harmonie triadique: Wet Sponge","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_concrete_powder","label":"Harmonie triadique: Cyan Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_glazed_terracotta","label":"Harmonie triadique: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_slab","label":"Harmonie triadique: End Stone Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_stairs","label":"Harmonie triadique: End Stone Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_wall","label":"Harmonie triadique: End Stone Brick Wall","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_bricks","label":"Harmonie triadique: End Stone Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_shelf","label":"Harmonie carree: Jungle Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:dead_bush","label":"Harmonie carree: Dead Bush","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dead_bush","label":"Harmonie carree: Potted Dead Bush","confidence":0.96},{"type":"color_square","target":"minecraft:spruce_hanging_sign","label":"Harmonie carree: Spruce Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:spruce_wall_hanging_sign","label":"Harmonie carree: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_spruce_log","label":"Harmonie carree: Stripped Spruce Log","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_spruce_wood","label":"Harmonie carree: Stripped Spruce Wood","confidence":0.96},{"type":"color_square","target":"minecraft:oak_log","label":"Harmonie carree: Oak Log","confidence":0.96},{"type":"value_contrast","target":"minecraft:pink_petals","label":"Contraste clair sombre: Pink Petals","confidence":0.55},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.55},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.55}],"category":""},{"id":"minecraft:magenta_stained_glass","name":"Magenta Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#b24cd8","dominant_hex":"#b44cdc","average_hex":"#b24cd8","hue_group":"purple","lightness":0.5725,"saturation":0.6422,"palette":["#b44cdc"],"color_groups":[{"hex":"#b44cdc","weight":1.0,"lightness":0.5804,"saturation":0.6729,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/magenta_stained_glass.png","family":"magenta_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Palette proche: Magenta Stained Glass Pane","confidence":0.906},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.749},{"type":"color_neighbors","target":"minecraft:purple_wool","label":"Palette proche: Purple Wool","confidence":0.749},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.715},{"type":"color_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Palette proche: Purple Glazed Terracotta","confidence":0.693},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.693},{"type":"color_neighbors","target":"minecraft:purple_shulker_box","label":"Palette proche: Purple Shulker Box","confidence":0.676},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.667},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.667},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.648},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.64},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.631},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.613},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.613},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.613},{"type":"color_bridge","target":"minecraft:brain_coral_block","label":"Pont de nuance par palette: Brain Coral Block","confidence":0.6},{"type":"color_bridge","target":"minecraft:brain_coral_fan","label":"Pont de nuance par palette: Brain Coral Fan","confidence":0.599},{"type":"color_bridge","target":"minecraft:brain_coral_wall_fan","label":"Pont de nuance par palette: Brain Coral Wall Fan","confidence":0.599},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.597},{"type":"color_bridge","target":"minecraft:brain_coral","label":"Pont de nuance par palette: Brain Coral","confidence":0.584},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.58},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.58},{"type":"color_analogous","target":"minecraft:magenta_stained_glass_pane","label":"Couleurs analogues: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_concrete_powder","label":"Couleurs analogues: Purple Concrete Powder","confidence":0.836},{"type":"color_analogous","target":"minecraft:purple_carpet","label":"Couleurs analogues: Purple Carpet","confidence":0.813},{"type":"color_analogous","target":"minecraft:purple_wool","label":"Couleurs analogues: Purple Wool","confidence":0.813},{"type":"color_analogous","target":"minecraft:purple_glazed_terracotta","label":"Couleurs analogues: Purple Glazed Terracotta","confidence":0.787},{"type":"color_analogous","target":"minecraft:purple_stained_glass_pane","label":"Couleurs analogues: Purple Stained Glass Pane","confidence":0.757},{"type":"color_analogous","target":"minecraft:purple_stained_glass","label":"Couleurs analogues: Purple Stained Glass","confidence":0.751},{"type":"color_analogous","target":"minecraft:purple_shulker_box","label":"Couleurs analogues: Purple Shulker Box","confidence":0.751},{"type":"color_complement","target":"minecraft:beetroots","label":"Contraste complementaire: Beetroots","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_tulip","label":"Contraste complementaire: Pink Tulip","confidence":0.958},{"type":"color_complement","target":"minecraft:potted_pink_tulip","label":"Contraste complementaire: Potted Pink Tulip","confidence":0.958},{"type":"color_complement","target":"minecraft:sunflower","label":"Contraste complementaire: Sunflower","confidence":0.956},{"type":"color_complement","target":"minecraft:potted_white_tulip","label":"Contraste complementaire: Potted White Tulip","confidence":0.922},{"type":"color_complement","target":"minecraft:white_tulip","label":"Contraste complementaire: White Tulip","confidence":0.922},{"type":"color_complement","target":"minecraft:potatoes","label":"Contraste complementaire: Potatoes","confidence":0.849},{"type":"color_complement","target":"minecraft:slime_block","label":"Contraste complementaire: Slime Block","confidence":0.837},{"type":"color_triad","target":"minecraft:yellow_candle","label":"Harmonie triadique: Yellow Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:bell","label":"Harmonie triadique: Bell","confidence":0.96},{"type":"color_triad","target":"minecraft:birch_hanging_sign","label":"Harmonie triadique: Birch Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:birch_wall_hanging_sign","label":"Harmonie triadique: Birch Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_birch_log","label":"Harmonie triadique: Stripped Birch Log","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_birch_wood","label":"Harmonie triadique: Stripped Birch Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_shulker_box","label":"Harmonie triadique: Yellow Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:birch_shelf","label":"Harmonie triadique: Birch Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:light_blue_concrete_powder","label":"Harmonie carree: Light Blue Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:copper_door","label":"Harmonie carree: Copper Door","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_door","label":"Harmonie carree: Waxed Copper Door","confidence":0.96},{"type":"color_square","target":"minecraft:copper_trapdoor","label":"Harmonie carree: Copper Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_trapdoor","label":"Harmonie carree: Waxed Copper Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:cut_copper","label":"Harmonie carree: Cut Copper","confidence":0.96},{"type":"color_square","target":"minecraft:cut_copper_slab","label":"Harmonie carree: Cut Copper Slab","confidence":0.96},{"type":"color_square","target":"minecraft:cut_copper_stairs","label":"Harmonie carree: Cut Copper Stairs","confidence":0.96},{"type":"value_contrast","target":"minecraft:crying_obsidian","label":"Contraste clair sombre: Crying Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:respawn_anchor","label":"Contraste clair sombre: Respawn Anchor","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_polished_blackstone","label":"Contraste clair sombre: Chiseled Polished Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_slab","label":"Contraste clair sombre: Polished Blackstone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_stairs","label":"Contraste clair sombre: Polished Blackstone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_wall","label":"Contraste clair sombre: Polished Blackstone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_bricks","label":"Contraste clair sombre: Polished Blackstone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:tinted_glass","label":"Contraste clair sombre: Tinted Glass","confidence":0.55}],"category":"building"},{"id":"minecraft:magenta_stained_glass_pane","name":"Magenta Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#ab4ad1","dominant_hex":"#b44cd4","average_hex":"#ab4ad1","hue_group":"purple","lightness":0.5549,"saturation":0.5947,"palette":["#b44cd4","#ac4ccc","#a444cc","#ac4cd4"],"color_groups":[{"hex":"#b44cd4","weight":0.375,"lightness":0.5647,"saturation":0.6126,"hue_group":"purple"},{"hex":"#ac4ccc","weight":0.3438,"lightness":0.549,"saturation":0.5565,"hue_group":"purple"},{"hex":"#a444cc","weight":0.25,"lightness":0.5333,"saturation":0.5714,"hue_group":"purple"},{"hex":"#ac4cd4","weight":0.0312,"lightness":0.5647,"saturation":0.6126,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/magenta_stained_glass_pane_top.png","family":"magenta_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass","label":"Palette proche: Magenta Stained Glass","confidence":0.906},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.829},{"type":"color_neighbors","target":"minecraft:purple_wool","label":"Palette proche: Purple Wool","confidence":0.829},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.828},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.753},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.753},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.749},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.749},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.744},{"type":"color_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Palette proche: Purple Glazed Terracotta","confidence":0.741},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.733},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.684},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.69},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.69},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.69},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.674},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.649},{"type":"color_bridge","target":"minecraft:brain_coral_fan","label":"Pont de nuance par palette: Brain Coral Fan","confidence":0.636},{"type":"color_bridge","target":"minecraft:brain_coral_wall_fan","label":"Pont de nuance par palette: Brain Coral Wall Fan","confidence":0.636},{"type":"color_bridge","target":"minecraft:brain_coral_block","label":"Pont de nuance par palette: Brain Coral Block","confidence":0.63},{"type":"color_bridge","target":"minecraft:brain_coral","label":"Pont de nuance par palette: Brain Coral","confidence":0.619},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.593},{"type":"color_analogous","target":"minecraft:magenta_stained_glass","label":"Couleurs analogues: Magenta Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_concrete_powder","label":"Couleurs analogues: Purple Concrete Powder","confidence":0.853},{"type":"color_analogous","target":"minecraft:purple_carpet","label":"Couleurs analogues: Purple Carpet","confidence":0.83},{"type":"color_analogous","target":"minecraft:purple_wool","label":"Couleurs analogues: Purple Wool","confidence":0.83},{"type":"color_analogous","target":"minecraft:purple_glazed_terracotta","label":"Couleurs analogues: Purple Glazed Terracotta","confidence":0.804},{"type":"color_analogous","target":"minecraft:purple_stained_glass_pane","label":"Couleurs analogues: Purple Stained Glass Pane","confidence":0.773},{"type":"color_analogous","target":"minecraft:purple_stained_glass","label":"Couleurs analogues: Purple Stained Glass","confidence":0.768},{"type":"color_analogous","target":"minecraft:purple_shulker_box","label":"Couleurs analogues: Purple Shulker Box","confidence":0.768},{"type":"color_complement","target":"minecraft:beetroots","label":"Contraste complementaire: Beetroots","confidence":0.947},{"type":"color_complement","target":"minecraft:pink_tulip","label":"Contraste complementaire: Pink Tulip","confidence":0.943},{"type":"color_complement","target":"minecraft:potted_pink_tulip","label":"Contraste complementaire: Potted Pink Tulip","confidence":0.943},{"type":"color_complement","target":"minecraft:sunflower","label":"Contraste complementaire: Sunflower","confidence":0.934},{"type":"color_complement","target":"minecraft:potted_white_tulip","label":"Contraste complementaire: Potted White Tulip","confidence":0.907},{"type":"color_complement","target":"minecraft:white_tulip","label":"Contraste complementaire: White Tulip","confidence":0.907},{"type":"color_complement","target":"minecraft:lily_of_the_valley","label":"Contraste complementaire: Lily Of The Valley","confidence":0.837},{"type":"color_complement","target":"minecraft:potted_lily_of_the_valley","label":"Contraste complementaire: Potted Lily Of The Valley","confidence":0.837},{"type":"color_triad","target":"minecraft:yellow_candle","label":"Harmonie triadique: Yellow Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:bell","label":"Harmonie triadique: Bell","confidence":0.96},{"type":"color_triad","target":"minecraft:birch_shelf","label":"Harmonie triadique: Birch Shelf","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_glazed_terracotta","label":"Harmonie triadique: Yellow Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:jungle_log","label":"Harmonie triadique: Jungle Log","confidence":0.96},{"type":"color_triad","target":"minecraft:jungle_wood","label":"Harmonie triadique: Jungle Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:fletching_table","label":"Harmonie triadique: Fletching Table","confidence":0.954},{"type":"color_triad","target":"minecraft:birch_hanging_sign","label":"Harmonie triadique: Birch Hanging Sign","confidence":0.949},{"type":"color_square","target":"minecraft:light_blue_concrete_powder","label":"Harmonie carree: Light Blue Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:brick_slab","label":"Harmonie carree: Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:brick_stairs","label":"Harmonie carree: Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:brick_wall","label":"Harmonie carree: Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:bricks","label":"Harmonie carree: Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:flower_pot","label":"Harmonie carree: Flower Pot","confidence":0.96},{"type":"color_square","target":"minecraft:potted_bamboo","label":"Harmonie carree: Potted Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:potted_cactus","label":"Harmonie carree: Potted Cactus","confidence":0.96},{"type":"value_contrast","target":"minecraft:crying_obsidian","label":"Contraste clair sombre: Crying Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:respawn_anchor","label":"Contraste clair sombre: Respawn Anchor","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_slab","label":"Contraste clair sombre: Polished Blackstone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_stairs","label":"Contraste clair sombre: Polished Blackstone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_wall","label":"Contraste clair sombre: Polished Blackstone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_bricks","label":"Contraste clair sombre: Polished Blackstone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:tinted_glass","label":"Contraste clair sombre: Tinted Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_polished_blackstone_bricks","label":"Contraste clair sombre: Cracked Polished Blackstone Bricks","confidence":0.55}],"category":"building"},{"id":"minecraft:magenta_terracotta","name":"Magenta Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#96586d","dominant_hex":"#94546c","average_hex":"#96586d","hue_group":"red","lightness":0.4667,"saturation":0.2605,"palette":["#94546c","#945c6c","#9c5c6c","#9c5c74","#945c74","#8c546c"],"color_groups":[{"hex":"#94546c","weight":0.418,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#945c6c","weight":0.3789,"lightness":0.4706,"saturation":0.2333,"hue_group":"red"},{"hex":"#9c5c6c","weight":0.1367,"lightness":0.4863,"saturation":0.2581,"hue_group":"red"},{"hex":"#9c5c74","weight":0.0547,"lightness":0.4863,"saturation":0.2581,"hue_group":"red"},{"hex":"#945c74","weight":0.0078,"lightness":0.4706,"saturation":0.2333,"hue_group":"red"},{"hex":"#8c546c","weight":0.0039,"lightness":0.4392,"saturation":0.25,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/magenta_terracotta.png","family":"magenta_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_brown_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purple_terracotta","label":"Palette proche: Purple Terracotta","confidence":0.863},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.821},{"type":"color_neighbors","target":"minecraft:light_gray_terracotta","label":"Palette proche: Light Gray Terracotta","confidence":0.814},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.797},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.797},{"type":"color_neighbors","target":"minecraft:stripped_crimson_hyphae","label":"Palette proche: Stripped Crimson Hyphae","confidence":0.797},{"type":"color_neighbors","target":"minecraft:stripped_crimson_stem","label":"Palette proche: Stripped Crimson Stem","confidence":0.797},{"type":"color_neighbors","target":"minecraft:crimson_shelf","label":"Palette proche: Crimson Shelf","confidence":0.796},{"type":"color_neighbors","target":"minecraft:shulker_box","label":"Palette proche: Shulker Box","confidence":0.795},{"type":"color_neighbors","target":"minecraft:crimson_trapdoor","label":"Palette proche: Crimson Trapdoor","confidence":0.794},{"type":"color_neighbors","target":"minecraft:mycelium","label":"Palette proche: Mycelium","confidence":0.786},{"type":"color_neighbors","target":"minecraft:pink_terracotta","label":"Palette proche: Pink Terracotta","confidence":0.781},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.846},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par palette: Shulker Box","confidence":0.831},{"type":"color_bridge","target":"minecraft:mycelium","label":"Pont de nuance par palette: Mycelium","confidence":0.824},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.793},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.791},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.786},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.786},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.786},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.786},{"type":"color_analogous","target":"minecraft:purple_terracotta","label":"Couleurs analogues: Purple Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_stained_glass_pane","label":"Couleurs analogues: Pink Stained Glass Pane","confidence":0.951},{"type":"color_analogous","target":"minecraft:pink_shulker_box","label":"Couleurs analogues: Pink Shulker Box","confidence":0.948},{"type":"color_analogous","target":"minecraft:pink_glazed_terracotta","label":"Couleurs analogues: Pink Glazed Terracotta","confidence":0.939},{"type":"color_analogous","target":"minecraft:pink_stained_glass","label":"Couleurs analogues: Pink Stained Glass","confidence":0.938},{"type":"color_analogous","target":"minecraft:pink_concrete","label":"Couleurs analogues: Pink Concrete","confidence":0.926},{"type":"color_analogous","target":"minecraft:pink_candle","label":"Couleurs analogues: Pink Candle","confidence":0.92},{"type":"color_analogous","target":"minecraft:pink_carpet","label":"Couleurs analogues: Pink Carpet","confidence":0.919},{"type":"color_complement","target":"minecraft:oxidized_copper_door","label":"Contraste complementaire: Oxidized Copper Door","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_door","label":"Contraste complementaire: Waxed Oxidized Copper Door","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_lightning_rod","label":"Contraste complementaire: Oxidized Lightning Rod","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_lightning_rod","label":"Contraste complementaire: Waxed Oxidized Lightning Rod","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_chain","label":"Contraste complementaire: Oxidized Copper Chain","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chain","label":"Contraste complementaire: Waxed Oxidized Copper Chain","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_bulb","label":"Contraste complementaire: Oxidized Copper Bulb","confidence":0.931},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_bulb","label":"Contraste complementaire: Waxed Oxidized Copper Bulb","confidence":0.931},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_spruce_sapling","label":"Harmonie triadique: Potted Spruce Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_sapling","label":"Harmonie triadique: Spruce Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:lapis_block","label":"Harmonie triadique: Lapis Block","confidence":0.95},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.926},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.917},{"type":"color_triad","target":"minecraft:ice","label":"Harmonie triadique: Ice","confidence":0.912},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.96},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.96},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.944},{"type":"color_square","target":"minecraft:wither_rose","label":"Harmonie carree: Wither Rose","confidence":0.944},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.911},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.911},{"type":"color_square","target":"minecraft:bamboo_block","label":"Harmonie carree: Bamboo Block","confidence":0.896},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55}],"category":"building"},{"id":"minecraft:magenta_wall_banner","name":"Magenta Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"magenta_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:magenta_wool","name":"Magenta Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#be45b4","dominant_hex":"#b53cac","average_hex":"#be45b4","hue_group":"purple","lightness":0.5078,"saturation":0.4821,"palette":["#b53cac","#be44b2","#c44cbb","#ad34a4","#cc54c2","#d462d2"],"color_groups":[{"hex":"#b53cac","weight":0.2461,"lightness":0.4725,"saturation":0.5021,"hue_group":"purple"},{"hex":"#be44b2","weight":0.1836,"lightness":0.5059,"saturation":0.4841,"hue_group":"purple"},{"hex":"#c44cbb","weight":0.1836,"lightness":0.5333,"saturation":0.5042,"hue_group":"purple"},{"hex":"#ad34a4","weight":0.168,"lightness":0.4412,"saturation":0.5378,"hue_group":"purple"},{"hex":"#cc54c2","weight":0.1133,"lightness":0.5647,"saturation":0.5405,"hue_group":"purple"},{"hex":"#d462d2","weight":0.1055,"lightness":0.6078,"saturation":0.57,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/magenta_wool.png","family":"magenta_wool","relations":[{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_shulker_box","label":"Palette proche: Magenta Shulker Box","confidence":0.939},{"type":"color_neighbors","target":"minecraft:magenta_concrete","label":"Palette proche: Magenta Concrete","confidence":0.927},{"type":"color_neighbors","target":"minecraft:magenta_candle","label":"Palette proche: Magenta Candle","confidence":0.913},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.879},{"type":"color_neighbors","target":"minecraft:bubble_coral_block","label":"Palette proche: Bubble Coral Block","confidence":0.803},{"type":"color_neighbors","target":"minecraft:bubble_coral_fan","label":"Palette proche: Bubble Coral Fan","confidence":0.792},{"type":"color_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Palette proche: Bubble Coral Wall Fan","confidence":0.792},{"type":"color_neighbors","target":"minecraft:bubble_coral","label":"Palette proche: Bubble Coral","confidence":0.783},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.773},{"type":"color_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Palette proche: Brain Coral Wall Fan","confidence":0.773},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.777},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.777},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.777},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.773},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.763},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.681},{"type":"color_bridge","target":"minecraft:birch_leaves","label":"Pont de nuance par palette: Birch Leaves","confidence":0.606},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par palette: Light Blue Terracotta","confidence":0.6},{"type":"color_bridge","target":"minecraft:cobblestone","label":"Pont de nuance par palette: Cobblestone","confidence":0.596},{"type":"color_bridge","target":"minecraft:cobblestone_slab","label":"Pont de nuance par palette: Cobblestone Slab","confidence":0.596},{"type":"color_analogous","target":"minecraft:magenta_carpet","label":"Couleurs analogues: Magenta Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_concrete_powder","label":"Couleurs analogues: Magenta Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_shulker_box","label":"Couleurs analogues: Magenta Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_concrete","label":"Couleurs analogues: Magenta Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_candle","label":"Couleurs analogues: Magenta Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_glazed_terracotta","label":"Couleurs analogues: Magenta Glazed Terracotta","confidence":0.893},{"type":"color_analogous","target":"minecraft:bubble_coral_block","label":"Couleurs analogues: Bubble Coral Block","confidence":0.892},{"type":"color_analogous","target":"minecraft:bubble_coral_fan","label":"Couleurs analogues: Bubble Coral Fan","confidence":0.874},{"type":"color_complement","target":"minecraft:wheat","label":"Contraste complementaire: Wheat","confidence":0.914},{"type":"color_complement","target":"minecraft:carrots","label":"Contraste complementaire: Carrots","confidence":0.69},{"type":"color_complement","target":"minecraft:verdant_froglight","label":"Contraste complementaire: Verdant Froglight","confidence":0.605},{"type":"color_complement","target":"minecraft:sweet_berry_bush","label":"Contraste complementaire: Sweet Berry Bush","confidence":0.599},{"type":"color_complement","target":"minecraft:emerald_block","label":"Contraste complementaire: Emerald Block","confidence":0.576},{"type":"color_complement","target":"minecraft:mangrove_propagule","label":"Contraste complementaire: Mangrove Propagule","confidence":0.559},{"type":"color_complement","target":"minecraft:slime_block","label":"Contraste complementaire: Slime Block","confidence":0.52},{"type":"color_complement","target":"minecraft:potted_white_tulip","label":"Contraste complementaire: Potted White Tulip","confidence":0.52},{"type":"color_triad","target":"minecraft:wet_sponge","label":"Harmonie triadique: Wet Sponge","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_glazed_terracotta","label":"Harmonie triadique: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_concrete_powder","label":"Harmonie triadique: Cyan Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_slab","label":"Harmonie triadique: End Stone Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_stairs","label":"Harmonie triadique: End Stone Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_wall","label":"Harmonie triadique: End Stone Brick Wall","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_bricks","label":"Harmonie triadique: End Stone Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_shelf","label":"Harmonie carree: Jungle Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:dead_bush","label":"Harmonie carree: Dead Bush","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dead_bush","label":"Harmonie carree: Potted Dead Bush","confidence":0.96},{"type":"color_square","target":"minecraft:spruce_hanging_sign","label":"Harmonie carree: Spruce Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:spruce_wall_hanging_sign","label":"Harmonie carree: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_spruce_log","label":"Harmonie carree: Stripped Spruce Log","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_spruce_wood","label":"Harmonie carree: Stripped Spruce Wood","confidence":0.96},{"type":"color_square","target":"minecraft:oak_log","label":"Harmonie carree: Oak Log","confidence":0.96},{"type":"value_contrast","target":"minecraft:respawn_anchor","label":"Contraste clair sombre: Respawn Anchor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55}],"category":"decorative"},{"id":"minecraft:magma_block","name":"Magma Block","entry_type":"block","description":"A magma block is a light-emitting block found underwater in the Overworld, and more abundantly in the Nether. It deals burning damage while stood on, which can be prevented by sneaking. Underwater magma blocks produce bubble columns that pull entities downward and provide air.","history":[{"version":"1.10 16w20a","status":"added","notes":"Added magma blocks."},{"version":"26.2 snap1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb magma blocks, providing the football/regular effect to the mob."},{"version":"wiki-history","status":"added","notes":"Added sulfur springs , which generate magma blocks."}],"colors":{"primary":"#8f3f20","dominant_hex":"#ee7a23","average_hex":"#8f3f20","hue_group":"red","lightness":0.3431,"saturation":0.6343,"palette":["#ee7a23","#642c2c","#541c1c","#441414","#743434","#cc4c04"],"color_groups":[{"hex":"#ee7a23","weight":0.2773,"lightness":0.5353,"saturation":0.8565,"hue_group":"red"},{"hex":"#642c2c","weight":0.2422,"lightness":0.2824,"saturation":0.3889,"hue_group":"red"},{"hex":"#541c1c","weight":0.1589,"lightness":0.2196,"saturation":0.5,"hue_group":"red"},{"hex":"#441414","weight":0.1172,"lightness":0.1725,"saturation":0.5455,"hue_group":"red"},{"hex":"#743434","weight":0.1068,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#cc4c04","weight":0.0977,"lightness":0.4078,"saturation":0.9615,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/magma.png","family":"magma_block","relations":[{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_nylium","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:nether_gold_ore","label":"Palette proche: Nether Gold Ore","confidence":0.866},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.842},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.839},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.832},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.828},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.828},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.828},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.828},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.828},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.828},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.828},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.828},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.694},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.694},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.693},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.692},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.684},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.681},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.671},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.671},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.663},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.663},{"type":"color_analogous","target":"minecraft:poppy","label":"Couleurs analogues: Poppy","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_poppy","label":"Couleurs analogues: Potted Poppy","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_hanging_sign","label":"Couleurs analogues: Acacia Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_hanging_sign","label":"Couleurs analogues: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_acacia_log","label":"Couleurs analogues: Stripped Acacia Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_acacia_wood","label":"Couleurs analogues: Stripped Acacia Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite","label":"Couleurs analogues: Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_slab","label":"Couleurs analogues: Granite Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.947},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.943},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.901},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.871},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.853},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.809},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.945},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.934},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.933},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.926},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.921},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.921},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.9},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.873},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.602},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.568},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.56},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.56},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.56},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.56},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle","label":"Contraste clair sombre: Candle","confidence":0.55}],"category":""},{"id":"minecraft:magma_cream","name":"Magma Cream","entry_type":"item","description":"Magma cream is an item dropped by magma cubes or crafted with blaze powder and slimeballs, used to brew potions of Fire Resistance and craft magma blocks.","history":[{"version":"1.0.0","status":"added","notes":"Added magma cream."}],"colors":{"primary":"#aa8839","dominant_hex":"#c0d14a","average_hex":"#aa8839","hue_group":"yellow","lightness":0.4451,"saturation":0.4978,"palette":["#c0d14a","#641c1c","#bc3f26","#54742c","#f6f078","#df9324"],"color_groups":[{"hex":"#c0d14a","weight":0.25,"lightness":0.5549,"saturation":0.5947,"hue_group":"yellow"},{"hex":"#641c1c","weight":0.1696,"lightness":0.251,"saturation":0.5625,"hue_group":"red"},{"hex":"#bc3f26","weight":0.1696,"lightness":0.4431,"saturation":0.6637,"hue_group":"red"},{"hex":"#54742c","weight":0.1518,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#f6f078","weight":0.1429,"lightness":0.7176,"saturation":0.875,"hue_group":"yellow"},{"hex":"#df9324","weight":0.1161,"lightness":0.5078,"saturation":0.745,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/magma_cream.png","family":"magma_cream","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:yellow_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clock","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_nugget","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_chestplate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:experience_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone_dust","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:magma_cube/magmacube","name":"Magma Cube / Magmacube","entry_type":"mob","description":"A magma cube is a hostile mob found in the Nether. A magma cube behaves similarly to a slime in that it splits into smaller magma cubes on death, all the way down to tiny size, but is fireproof, jumps higher and less often, and deals more damage. Magma cubes are a source of magma cream and the only source of froglights if eaten by a frog while small.","history":[{"version":"1.0.0","status":"added","notes":"Added magma cubes."}],"colors":{"primary":"#310902","dominant_hex":"#140404","average_hex":"#310902","hue_group":"red","lightness":0.1,"saturation":0.9216,"palette":["#140404","#2c0404","#340404","#1c0404","#da6a1c","#340c04"],"color_groups":[{"hex":"#140404","weight":0.2602,"lightness":0.0471,"saturation":0.6667,"hue_group":"red"},{"hex":"#2c0404","weight":0.2515,"lightness":0.0941,"saturation":0.8333,"hue_group":"red"},{"hex":"#340404","weight":0.2515,"lightness":0.1098,"saturation":0.8571,"hue_group":"red"},{"hex":"#1c0404","weight":0.1032,"lightness":0.0627,"saturation":0.75,"hue_group":"red"},{"hex":"#da6a1c","weight":0.0756,"lightness":0.4824,"saturation":0.7724,"hue_group":"red"},{"hex":"#340c04","weight":0.0581,"lightness":0.1098,"saturation":0.8571,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/slime/magmacube.png","family":"magma_cube","relations":[{"type":"visual_neighbors","target":"minecraft:horse/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/darkbrown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_orange","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/chestnut","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:magma_cube_spawn_egg","name":"Magma Cube Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#521d0a","dominant_hex":"#370808","average_hex":"#521d0a","hue_group":"red","lightness":0.1804,"saturation":0.7826,"palette":["#370808","#6d180a","#df7f2a","#0c0404","#040404","#140404"],"color_groups":[{"hex":"#370808","weight":0.3046,"lightness":0.1235,"saturation":0.746,"hue_group":"red"},{"hex":"#6d180a","weight":0.2529,"lightness":0.2333,"saturation":0.8319,"hue_group":"red"},{"hex":"#df7f2a","weight":0.1667,"lightness":0.5196,"saturation":0.7388,"hue_group":"red"},{"hex":"#0c0404","weight":0.0977,"lightness":0.0314,"saturation":0.5,"hue_group":"red"},{"hex":"#040404","weight":0.092,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#140404","weight":0.0862,"lightness":0.0471,"saturation":0.6667,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/magma_cube_spawn_egg.png","family":"magma_cube_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:beetroot_soup","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fermented_spider_eye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_eye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rotten_flesh","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:apple","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_stew","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa_beans","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:saddle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_bundle","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:mangrove_boat","name":"Mangrove Boat","entry_type":"item","description":"Boats (including bamboo rafts) are drivable vehicle entities that can be ridden through water or at high speeds across all types of ice. Most mobs will ride nearby boats, which they cannot control or exit on their own.","history":[{"version":"v1.0.6","status":"added","notes":"Added boats."},{"version":"wiki-history","status":"added","notes":"added again."},{"version":"18w15a","status":"added","notes":"Added blue ice , which allows boats to travel even faster on it."}],"colors":{"primary":"#632925","dominant_hex":"#401414","average_hex":"#632925","hue_group":"red","lightness":0.2667,"saturation":0.4559,"palette":["#401414","#854939","#541c1c","#743434","#5c2424","#6c2c2c"],"color_groups":[{"hex":"#401414","weight":0.2424,"lightness":0.1647,"saturation":0.5238,"hue_group":"red"},{"hex":"#854939","weight":0.2303,"lightness":0.3725,"saturation":0.4,"hue_group":"red"},{"hex":"#541c1c","weight":0.2,"lightness":0.2196,"saturation":0.5,"hue_group":"red"},{"hex":"#743434","weight":0.1273,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#5c2424","weight":0.1091,"lightness":0.251,"saturation":0.4375,"hue_group":"red"},{"hex":"#6c2c2c","weight":0.0909,"lightness":0.298,"saturation":0.4211,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/mangrove_boat.png","family":"mangrove_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cooked_beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_pigstep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:written_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_charge","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berries","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:mangrove_button","name":"Mangrove Button","entry_type":"block","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added wooden buttons. They are currently uncraftable."},{"version":"12w34b","status":"added","notes":"Added crafting recipe for wooden buttons. Recipe"},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped buttons."}],"colors":{"primary":"#763631","dominant_hex":"#723232","average_hex":"#763631","hue_group":"red","lightness":0.3275,"saturation":0.4132,"palette":["#723232","#7c4434","#743c34","#8c4c3c","#5c1c1c","#642424"],"color_groups":[{"hex":"#723232","weight":0.2461,"lightness":0.3216,"saturation":0.3902,"hue_group":"red"},{"hex":"#7c4434","weight":0.2031,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#743c34","weight":0.1953,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#8c4c3c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#5c1c1c","weight":0.1133,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#642424","weight":0.0938,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_planks.png","family":"mangrove_button","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_trapdoor","label":"Palette proche: Mangrove Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.798},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.791},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.766},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.759},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.752},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.752},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.751},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.749},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_planks","label":"Couleurs analogues: Mangrove Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_pressure_plate","label":"Couleurs analogues: Mangrove Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_sign","label":"Couleurs analogues: Mangrove Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_slab","label":"Couleurs analogues: Mangrove Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_stairs","label":"Couleurs analogues: Mangrove Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wall_sign","label":"Couleurs analogues: Mangrove Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.952},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.935},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.935},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.908},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.932},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.927},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.777},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.776},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.761},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.737},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.737},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.664},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.956},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.955},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.932},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.625},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.592},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.585},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.569},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:mangrove_chest_boat","name":"Mangrove Chest Boat","entry_type":"item","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#633722","dominant_hex":"#763e30","average_hex":"#633722","hue_group":"red","lightness":0.2608,"saturation":0.4887,"palette":["#763e30","#9a672a","#2f190f","#441912","#561e1e","#393424"],"color_groups":[{"hex":"#763e30","weight":0.2701,"lightness":0.3255,"saturation":0.4217,"hue_group":"red"},{"hex":"#9a672a","weight":0.2184,"lightness":0.3843,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#2f190f","weight":0.1379,"lightness":0.1216,"saturation":0.5161,"hue_group":"red"},{"hex":"#441912","weight":0.1379,"lightness":0.1686,"saturation":0.5814,"hue_group":"red"},{"hex":"#561e1e","weight":0.1322,"lightness":0.2275,"saturation":0.4828,"hue_group":"red"},{"hex":"#393424","weight":0.1034,"lightness":0.1824,"saturation":0.2258,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/mangrove_chest_boat.png","family":"mangrove_chest_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:copper_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berries","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa_beans","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_pigstep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:mangrove_door","name":"Mangrove Door","entry_type":"block","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","history":[{"version":"20100607","status":"added","notes":"Added wooden doors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"18w49a","status":"added","notes":"Added snowy tundra villages, which generate with spruce doors."}],"colors":{"primary":"#71312f","dominant_hex":"#733333","average_hex":"#71312f","hue_group":"red","lightness":0.3137,"saturation":0.4125,"palette":["#733333","#763e34","#5b1d1d","#642424","#8c4c3c","#915647"],"color_groups":[{"hex":"#733333","weight":0.2969,"lightness":0.3255,"saturation":0.3855,"hue_group":"red"},{"hex":"#763e34","weight":0.2383,"lightness":0.3333,"saturation":0.3882,"hue_group":"red"},{"hex":"#5b1d1d","weight":0.2109,"lightness":0.2353,"saturation":0.5167,"hue_group":"red"},{"hex":"#642424","weight":0.1367,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"},{"hex":"#8c4c3c","weight":0.0586,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#915647","weight":0.0586,"lightness":0.4235,"saturation":0.3426,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_door_top.png","family":"mangrove","relations":[{"type":"variants","target":"minecraft:mangrove_fence","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_fence","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_leaves","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_leaves","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_log","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_log","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_planks","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_planks","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_slab","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_slab","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_stairs","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_stairs","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_wood","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_wood","label":"Related set: mangrove","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_trapdoor","label":"Palette proche: Mangrove Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Palette proche: Mangrove Hanging Sign","confidence":0.936},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.809},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.806},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.773},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.768},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.764},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.764},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.759},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.759},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.759},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.759},{"type":"color_analogous","target":"minecraft:mangrove_shelf","label":"Couleurs analogues: Mangrove Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_candle","label":"Couleurs analogues: Red Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete_powder","label":"Couleurs analogues: Red Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_carpet","label":"Couleurs analogues: Red Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_wool","label":"Couleurs analogues: Red Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:weeping_vines_plant","label":"Couleurs analogues: Weeping Vines Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_nylium","label":"Couleurs analogues: Crimson Nylium","confidence":0.959},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.96},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.947},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.947},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.946},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.946},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.933},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.925},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.914},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.945},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.898},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.874},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.873},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.858},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.835},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.835},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.761},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.944},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.944},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.94},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.935},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.929},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.923},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.918},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.918},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.639},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.605},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.597},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.597},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.597},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.597},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.583},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:mangrove_fence","name":"Mangrove Fence","entry_type":"block","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","history":[{"version":"20100629","status":"added","notes":"added to the game. There are three defined states: north-south, east-west and a cross. These models are currently unused."},{"version":"v1.0.17","status":"added","notes":"Added fences."},{"version":"1.8","status":"added","notes":"Added villages and strongholds , where wooden fences naturally generate."}],"colors":{"primary":"#763631","dominant_hex":"#723232","average_hex":"#763631","hue_group":"red","lightness":0.3275,"saturation":0.4132,"palette":["#723232","#7c4434","#743c34","#8c4c3c","#5c1c1c","#642424"],"color_groups":[{"hex":"#723232","weight":0.2461,"lightness":0.3216,"saturation":0.3902,"hue_group":"red"},{"hex":"#7c4434","weight":0.2031,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#743c34","weight":0.1953,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#8c4c3c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#5c1c1c","weight":0.1133,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#642424","weight":0.0938,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_planks.png","family":"mangrove","relations":[{"type":"variants","target":"minecraft:mangrove_door","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_door","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_leaves","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_leaves","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_log","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_log","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_planks","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_planks","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_slab","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_slab","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_stairs","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_stairs","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_wood","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_wood","label":"Related set: mangrove","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_trapdoor","label":"Palette proche: Mangrove Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.798},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.791},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.766},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.759},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.752},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.752},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.751},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.749},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_planks","label":"Couleurs analogues: Mangrove Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_pressure_plate","label":"Couleurs analogues: Mangrove Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_sign","label":"Couleurs analogues: Mangrove Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_slab","label":"Couleurs analogues: Mangrove Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_stairs","label":"Couleurs analogues: Mangrove Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wall_sign","label":"Couleurs analogues: Mangrove Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.952},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.935},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.935},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.908},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.932},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.927},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.777},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.776},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.761},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.737},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.737},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.664},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.956},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.955},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.932},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.625},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.592},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.585},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.569},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:mangrove_fence_gate","name":"Mangrove Fence Gate","entry_type":"block","description":"A fence gate is a block that shares the functions of both the door and the fence.","history":[{"version":"Pre-release","status":"added","notes":"Added fence gates."},{"version":"14w32b","status":"added","notes":"Added spruce, birch, jungle, acacia, and dark oak fence gates."},{"version":"18w49a","status":"added","notes":"added snowy tundra villages."}],"colors":{"primary":"#763631","dominant_hex":"#723232","average_hex":"#763631","hue_group":"red","lightness":0.3275,"saturation":0.4132,"palette":["#723232","#7c4434","#743c34","#8c4c3c","#5c1c1c","#642424"],"color_groups":[{"hex":"#723232","weight":0.2461,"lightness":0.3216,"saturation":0.3902,"hue_group":"red"},{"hex":"#7c4434","weight":0.2031,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#743c34","weight":0.1953,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#8c4c3c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#5c1c1c","weight":0.1133,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#642424","weight":0.0938,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_planks.png","family":"mangrove_fence_gate","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_trapdoor","label":"Palette proche: Mangrove Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.798},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.791},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.766},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.759},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.752},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.752},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.751},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.749},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_planks","label":"Couleurs analogues: Mangrove Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_pressure_plate","label":"Couleurs analogues: Mangrove Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_sign","label":"Couleurs analogues: Mangrove Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_slab","label":"Couleurs analogues: Mangrove Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_stairs","label":"Couleurs analogues: Mangrove Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wall_sign","label":"Couleurs analogues: Mangrove Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.952},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.935},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.935},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.908},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.932},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.927},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.777},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.776},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.761},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.737},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.737},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.664},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.956},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.955},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.932},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.625},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.592},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.585},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.569},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:mangrove_hanging_sign","name":"Mangrove Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#783630","dominant_hex":"#7c3434","average_hex":"#783630","hue_group":"red","lightness":0.3294,"saturation":0.4286,"palette":["#7c3434","#7c3c2c","#743434","#6c2c2c","#844434"],"color_groups":[{"hex":"#7c3434","weight":0.3359,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#7c3c2c","weight":0.2891,"lightness":0.3294,"saturation":0.4762,"hue_group":"red"},{"hex":"#743434","weight":0.2383,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#6c2c2c","weight":0.1172,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#844434","weight":0.0195,"lightness":0.3608,"saturation":0.4348,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_mangrove_log.png","family":"mangrove_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Palette proche: Mangrove Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_log","label":"Palette proche: Stripped Mangrove Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Palette proche: Stripped Mangrove Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.782},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.756},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.756},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.752},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.751},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.734},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.734},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.73},{"type":"color_bridge","target":"minecraft:anvil","label":"Pont de nuance par palette: Anvil","confidence":0.729},{"type":"color_analogous","target":"minecraft:mangrove_wall_hanging_sign","label":"Couleurs analogues: Mangrove Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_mangrove_log","label":"Couleurs analogues: Stripped Mangrove Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_mangrove_wood","label":"Couleurs analogues: Stripped Mangrove Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_planks","label":"Couleurs analogues: Mangrove Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_pressure_plate","label":"Couleurs analogues: Mangrove Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.929},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.919},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.919},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.914},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.914},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.908},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.901},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.753},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.752},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.735},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.714},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.714},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.64},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.958},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.955},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.947},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.944},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.93},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.929},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.623},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.589},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.583},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.583},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.583},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.583},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.567},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:mangrove_leaves","name":"Mangrove Leaves","entry_type":"block","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","history":[{"version":"0.0.14a","status":"added","notes":"Added leaves."},{"version":"1.2","status":"added","notes":"Added spruce and birch leaves, which are colored #619961 and #80a755 respectively, and do not vary across biomes."},{"version":"1.7","status":"added","notes":"Added shears , which collect leaves. Before, leaves could be obtained only via inventory editing."}],"colors":{"primary":"#828181","dominant_hex":"#6c6c6c","average_hex":"#828181","hue_group":"neutral","lightness":0.5078,"saturation":0.004,"palette":["#6c6c6c","#9c9c9c","#8c8484","#4c4c4c","#b4b4b4"],"color_groups":[{"hex":"#6c6c6c","weight":0.2736,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.2028,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8484","weight":0.1934,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1698,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.1604,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_leaves.png","family":"mangrove","relations":[{"type":"variants","target":"minecraft:mangrove_door","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_door","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_fence","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_fence","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_log","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_log","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_planks","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_planks","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_slab","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_slab","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_stairs","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_stairs","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_wood","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_wood","label":"Related set: mangrove","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:tripwire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gravel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:vine","label":"Palette proche: Vine","confidence":0.94},{"type":"color_neighbors","target":"minecraft:melon_stem","label":"Palette proche: Melon Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Palette proche: Attached Pumpkin Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_leaves","label":"Palette proche: Spruce Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:furnace","label":"Palette proche: Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:vine","label":"Pont de nuance par palette: Vine","confidence":0.86},{"type":"color_bridge","target":"minecraft:melon_stem","label":"Pont de nuance par palette: Melon Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_pumpkin_stem","label":"Pont de nuance par palette: Attached Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:spruce_leaves","label":"Pont de nuance par palette: Spruce Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:furnace","label":"Pont de nuance par palette: Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55}],"category":"natural"},{"id":"minecraft:mangrove_log","name":"Mangrove Log","entry_type":"block","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","history":[{"version":"0.0.14a","status":"added","notes":"Added wood."},{"version":"1.2","status":"added","notes":"Added spruce and birch wood."},{"version":"wiki-history","status":"added","notes":"Added \"Getting Wood\" achievement for picking up a wood item ."}],"colors":{"primary":"#544329","dominant_hex":"#4c3c24","average_hex":"#544329","hue_group":"yellow","lightness":0.2451,"saturation":0.344,"palette":["#4c3c24","#5c4c2c","#645434","#443424","#3c2c24"],"color_groups":[{"hex":"#4c3c24","weight":0.3164,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#5c4c2c","weight":0.3047,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"},{"hex":"#645434","weight":0.1758,"lightness":0.298,"saturation":0.3158,"hue_group":"yellow"},{"hex":"#443424","weight":0.1523,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#3c2c24","weight":0.0508,"lightness":0.1882,"saturation":0.25,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_log.png","family":"mangrove","relations":[{"type":"variants","target":"minecraft:mangrove_door","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_door","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_fence","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_fence","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_leaves","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_leaves","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_planks","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_planks","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_slab","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_slab","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_stairs","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_stairs","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_wood","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_wood","label":"Related set: mangrove","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mangrove_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firefly_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_roots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_roots","label":"Palette proche: Mangrove Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Palette proche: Dark Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Palette proche: Dark Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Palette proche: Stripped Dark Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Palette proche: Stripped Dark Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.934},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.934},{"type":"color_neighbors","target":"minecraft:dark_oak_shelf","label":"Palette proche: Dark Oak Shelf","confidence":0.924},{"type":"color_neighbors","target":"minecraft:spruce_shelf","label":"Palette proche: Spruce Shelf","confidence":0.91},{"type":"color_neighbors","target":"minecraft:muddy_mangrove_roots","label":"Palette proche: Muddy Mangrove Roots","confidence":0.9},{"type":"color_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Palette proche: Brown Stained Glass Pane","confidence":0.899},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.9},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.837},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.82},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.816},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.807},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.796},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.778},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.778},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.774},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.774},{"type":"color_analogous","target":"minecraft:mangrove_wood","label":"Couleurs analogues: Mangrove Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_roots","label":"Couleurs analogues: Mangrove Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_shelf","label":"Couleurs analogues: Spruce Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_log","label":"Couleurs analogues: Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wood","label":"Couleurs analogues: Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_log","label":"Couleurs analogues: Stripped Spruce Log","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.943},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.906},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.888},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.873},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.871},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.856},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.849},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.841},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.934},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.934},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.932},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.928},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.912},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.876},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.843},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.701},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.667},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.655},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.655},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.655},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.655},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.645},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.62}],"category":"natural"},{"id":"minecraft:mangrove_planks","name":"Mangrove Planks","entry_type":"block","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","history":[{"version":"rd-20090515","status":"added","notes":"Added wooden planks."},{"version":"1.2.4 release","status":"added","notes":"Added spruce, birch and jungle wood planks. They are crafted from their corresponding wood . The color of wood planks available to this point is now obtainable only from oak wood."},{"version":"18w07a","status":"added","notes":"Added stripped logs, a variant of logs , which can be used to craft wood planks."}],"colors":{"primary":"#763631","dominant_hex":"#723232","average_hex":"#763631","hue_group":"red","lightness":0.3275,"saturation":0.4132,"palette":["#723232","#7c4434","#743c34","#8c4c3c","#5c1c1c","#642424"],"color_groups":[{"hex":"#723232","weight":0.2461,"lightness":0.3216,"saturation":0.3902,"hue_group":"red"},{"hex":"#7c4434","weight":0.2031,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#743c34","weight":0.1953,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#8c4c3c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#5c1c1c","weight":0.1133,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#642424","weight":0.0938,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_planks.png","family":"mangrove","relations":[{"type":"variants","target":"minecraft:mangrove_door","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_door","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_fence","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_fence","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_leaves","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_leaves","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_log","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_log","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_slab","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_slab","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_stairs","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_stairs","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_wood","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_wood","label":"Related set: mangrove","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_trapdoor","label":"Palette proche: Mangrove Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.798},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.791},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.766},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.759},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.752},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.752},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.751},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.749},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_pressure_plate","label":"Couleurs analogues: Mangrove Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_sign","label":"Couleurs analogues: Mangrove Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_slab","label":"Couleurs analogues: Mangrove Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_stairs","label":"Couleurs analogues: Mangrove Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wall_sign","label":"Couleurs analogues: Mangrove Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.952},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.935},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.935},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.908},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.932},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.927},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.777},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.776},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.761},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.737},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.737},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.664},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.956},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.955},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.932},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.625},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.592},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.585},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.569},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:mangrove_pressure_plate","name":"Mangrove Pressure Plate","entry_type":"block","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","history":[{"version":"v1.0.1","status":"added","notes":"Added wooden pressure plates."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped pressure plates."},{"version":"1.19 22w11a","status":"added","notes":"Added mangrove pressure plates."}],"colors":{"primary":"#763631","dominant_hex":"#723232","average_hex":"#763631","hue_group":"red","lightness":0.3275,"saturation":0.4132,"palette":["#723232","#7c4434","#743c34","#8c4c3c","#5c1c1c","#642424"],"color_groups":[{"hex":"#723232","weight":0.2461,"lightness":0.3216,"saturation":0.3902,"hue_group":"red"},{"hex":"#7c4434","weight":0.2031,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#743c34","weight":0.1953,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#8c4c3c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#5c1c1c","weight":0.1133,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#642424","weight":0.0938,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_planks.png","family":"mangrove_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_trapdoor","label":"Palette proche: Mangrove Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.798},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.791},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.766},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.759},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.752},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.752},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.751},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.749},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_planks","label":"Couleurs analogues: Mangrove Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_sign","label":"Couleurs analogues: Mangrove Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_slab","label":"Couleurs analogues: Mangrove Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_stairs","label":"Couleurs analogues: Mangrove Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wall_sign","label":"Couleurs analogues: Mangrove Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.952},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.935},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.935},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.908},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.932},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.927},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.777},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.776},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.761},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.737},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.737},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.664},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.956},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.955},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.932},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.625},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.592},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.585},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.569},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:mangrove_propagule","name":"Mangrove Propagule","entry_type":"block","description":"A mangrove propagule is a block that can be grown into a mangrove tree, similar to a sapling.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added mangrove propagules."}],"colors":{"primary":"#60af54","dominant_hex":"#51c959","average_hex":"#60af54","hue_group":"green","lightness":0.5078,"saturation":0.3625,"palette":["#51c959","#7fab51","#54b454","#5c843f","#4ca44c","#74c474"],"color_groups":[{"hex":"#51c959","weight":0.2121,"lightness":0.5529,"saturation":0.5263,"hue_group":"green"},{"hex":"#7fab51","weight":0.2121,"lightness":0.4941,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#54b454","weight":0.1818,"lightness":0.5176,"saturation":0.3902,"hue_group":"green"},{"hex":"#5c843f","weight":0.1515,"lightness":0.3824,"saturation":0.3538,"hue_group":"green"},{"hex":"#4ca44c","weight":0.1212,"lightness":0.4706,"saturation":0.3667,"hue_group":"green"},{"hex":"#74c474","weight":0.1212,"lightness":0.6118,"saturation":0.404,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_propagule.png","family":"mangrove_propagule","relations":[{"type":"visual_neighbors","target":"minecraft:lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:slime_block","label":"Palette proche: Slime Block","confidence":0.817},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.767},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.767},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.766},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.766},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Palette proche: Waxed Weathered Copper Trapdoor","confidence":0.762},{"type":"color_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Palette proche: Weathered Copper Trapdoor","confidence":0.762},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.758},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Palette proche: Waxed Weathered Copper Chest","confidence":0.758},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Palette proche: Waxed Weathered Copper Golem Statue","confidence":0.758},{"type":"color_neighbors","target":"minecraft:weathered_copper","label":"Palette proche: Weathered Copper","confidence":0.758},{"type":"color_neighbors","target":"minecraft:weathered_copper_chest","label":"Palette proche: Weathered Copper Chest","confidence":0.758},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Door","confidence":0.808},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par sous-ton: Weathered Copper Door","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.808},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Trapdoor","confidence":0.804},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Weathered Copper Trapdoor","confidence":0.804},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Copper","confidence":0.801},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chest","confidence":0.801},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Golem Statue","confidence":0.801},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par sous-ton: Weathered Copper","confidence":0.801},{"type":"color_analogous","target":"minecraft:verdant_froglight","label":"Couleurs analogues: Verdant Froglight","confidence":0.9},{"type":"color_analogous","target":"minecraft:slime_block","label":"Couleurs analogues: Slime Block","confidence":0.899},{"type":"color_analogous","target":"minecraft:test_block","label":"Couleurs analogues: Test Block","confidence":0.886},{"type":"color_analogous","target":"minecraft:carrots","label":"Couleurs analogues: Carrots","confidence":0.877},{"type":"color_analogous","target":"minecraft:potatoes","label":"Couleurs analogues: Potatoes","confidence":0.872},{"type":"color_analogous","target":"minecraft:potted_white_tulip","label":"Couleurs analogues: Potted White Tulip","confidence":0.841},{"type":"color_analogous","target":"minecraft:white_tulip","label":"Couleurs analogues: White Tulip","confidence":0.841},{"type":"color_analogous","target":"minecraft:pink_tulip","label":"Couleurs analogues: Pink Tulip","confidence":0.812},{"type":"color_complement","target":"minecraft:chorus_plant","label":"Contraste complementaire: Chorus Plant","confidence":0.725},{"type":"color_complement","target":"minecraft:magenta_stained_glass","label":"Contraste complementaire: Magenta Stained Glass","confidence":0.693},{"type":"color_complement","target":"minecraft:bubble_coral_fan","label":"Contraste complementaire: Bubble Coral Fan","confidence":0.691},{"type":"color_complement","target":"minecraft:bubble_coral_wall_fan","label":"Contraste complementaire: Bubble Coral Wall Fan","confidence":0.691},{"type":"color_complement","target":"minecraft:bubble_coral","label":"Contraste complementaire: Bubble Coral","confidence":0.684},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.678},{"type":"color_complement","target":"minecraft:bubble_coral_block","label":"Contraste complementaire: Bubble Coral Block","confidence":0.657},{"type":"color_complement","target":"minecraft:magenta_concrete_powder","label":"Contraste complementaire: Magenta Concrete Powder","confidence":0.579},{"type":"color_triad","target":"minecraft:cactus_flower","label":"Harmonie triadique: Cactus Flower","confidence":0.931},{"type":"color_triad","target":"minecraft:chiseled_nether_bricks","label":"Harmonie triadique: Chiseled Nether Bricks","confidence":0.901},{"type":"color_triad","target":"minecraft:fire_coral_block","label":"Harmonie triadique: Fire Coral Block","confidence":0.888},{"type":"color_triad","target":"minecraft:nether_brick_fence","label":"Harmonie triadique: Nether Brick Fence","confidence":0.882},{"type":"color_triad","target":"minecraft:nether_brick_slab","label":"Harmonie triadique: Nether Brick Slab","confidence":0.882},{"type":"color_triad","target":"minecraft:nether_brick_stairs","label":"Harmonie triadique: Nether Brick Stairs","confidence":0.882},{"type":"color_triad","target":"minecraft:nether_brick_wall","label":"Harmonie triadique: Nether Brick Wall","confidence":0.882},{"type":"color_triad","target":"minecraft:nether_bricks","label":"Harmonie triadique: Nether Bricks","confidence":0.882},{"type":"color_square","target":"minecraft:raw_copper_block","label":"Harmonie carree: Raw Copper Block","confidence":0.96},{"type":"color_square","target":"minecraft:exposed_copper_grate","label":"Harmonie carree: Exposed Copper Grate","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_exposed_copper_grate","label":"Harmonie carree: Waxed Exposed Copper Grate","confidence":0.96},{"type":"color_square","target":"minecraft:exposed_copper_trapdoor","label":"Harmonie carree: Exposed Copper Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Harmonie carree: Waxed Exposed Copper Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:soul_lantern","label":"Harmonie carree: Soul Lantern","confidence":0.96},{"type":"color_square","target":"minecraft:light_blue_candle","label":"Harmonie carree: Light Blue Candle","confidence":0.96},{"type":"color_square","target":"minecraft:jukebox","label":"Harmonie carree: Jukebox","confidence":0.96},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55}],"category":""},{"id":"minecraft:mangrove_roots","name":"Mangrove Roots","entry_type":"block","description":"Mangrove roots are blocks that form as part of mangrove trees. Unlike similar blocks such as copper grates, mangrove roots are capable of conducting redstone power.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added mangrove roots."}],"colors":{"primary":"#4b3c27","dominant_hex":"#4c3c24","average_hex":"#4b3c27","hue_group":"yellow","lightness":0.2235,"saturation":0.3158,"palette":["#4c3c24","#3c2c24","#5c4c2c","#443424","#645434"],"color_groups":[{"hex":"#4c3c24","weight":0.3446,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#3c2c24","weight":0.2938,"lightness":0.1882,"saturation":0.25,"hue_group":"red"},{"hex":"#5c4c2c","weight":0.2316,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"},{"hex":"#443424","weight":0.113,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#645434","weight":0.0169,"lightness":0.298,"saturation":0.3158,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_roots_top.png","family":"mangrove_roots","relations":[{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firefly_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Palette proche: Dark Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Palette proche: Dark Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Palette proche: Stripped Dark Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Palette proche: Stripped Dark Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_terracotta","label":"Palette proche: Gray Terracotta","confidence":0.923},{"type":"color_neighbors","target":"minecraft:dark_oak_shelf","label":"Palette proche: Dark Oak Shelf","confidence":0.922},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.917},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.917},{"type":"color_neighbors","target":"minecraft:muddy_mangrove_roots","label":"Palette proche: Muddy Mangrove Roots","confidence":0.905},{"type":"color_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Palette proche: Brown Stained Glass Pane","confidence":0.879},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.9},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.856},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.824},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.814},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.79},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.778},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.767},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.767},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.764},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.764},{"type":"color_analogous","target":"minecraft:dark_oak_hanging_sign","label":"Couleurs analogues: Dark Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_wall_hanging_sign","label":"Couleurs analogues: Dark Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_dark_oak_log","label":"Couleurs analogues: Stripped Dark Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_dark_oak_wood","label":"Couleurs analogues: Stripped Dark Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_log","label":"Couleurs analogues: Mangrove Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wood","label":"Couleurs analogues: Mangrove Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_log","label":"Couleurs analogues: Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wood","label":"Couleurs analogues: Oak Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.927},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.911},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.903},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.86},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.827},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.81},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.804},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.795},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.958},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.958},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.958},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.954},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.948},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.942},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.938},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.946},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.82},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.722},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.689},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.675},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.675},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.675},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.675},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.666},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.642}],"category":"natural"},{"id":"minecraft:mangrove_shelf","name":"Mangrove Shelf","entry_type":"block","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added shelves."},{"version":"wiki-history","status":"added","notes":"Added the align_items_to_bottom block state property, by default set to false, to display items at the bottom of the shelf rather than in the middle."}],"colors":{"primary":"#6d2d2a","dominant_hex":"#602222","average_hex":"#6d2d2a","hue_group":"red","lightness":0.2961,"saturation":0.4437,"palette":["#602222","#6c2c2c","#844535","#7c3434","#7c3c2c","#743434"],"color_groups":[{"hex":"#602222","weight":0.3799,"lightness":0.2549,"saturation":0.4769,"hue_group":"red"},{"hex":"#6c2c2c","weight":0.2588,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#844535","weight":0.0957,"lightness":0.3627,"saturation":0.427,"hue_group":"red"},{"hex":"#7c3434","weight":0.0947,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#7c3c2c","weight":0.0908,"lightness":0.3294,"saturation":0.4762,"hue_group":"red"},{"hex":"#743434","weight":0.0801,"lightness":0.3294,"saturation":0.381,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_shelf.png","family":"mangrove_shelf","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherrack","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_gold_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Palette proche: Mangrove Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Palette proche: Mangrove Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_log","label":"Palette proche: Stripped Mangrove Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Palette proche: Stripped Mangrove Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_trapdoor","label":"Palette proche: Mangrove Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.772},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.761},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.756},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.756},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.753},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.749},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.734},{"type":"color_bridge","target":"minecraft:gray_stained_glass_pane","label":"Pont de nuance par palette: Gray Stained Glass Pane","confidence":0.728},{"type":"color_bridge","target":"minecraft:anvil","label":"Pont de nuance par palette: Anvil","confidence":0.727},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.727},{"type":"color_analogous","target":"minecraft:mangrove_trapdoor","label":"Couleurs analogues: Mangrove Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_door","label":"Couleurs analogues: Mangrove Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_candle","label":"Couleurs analogues: Red Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_carpet","label":"Couleurs analogues: Red Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_wool","label":"Couleurs analogues: Red Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:weeping_vines_plant","label":"Couleurs analogues: Weeping Vines Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.957},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.957},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.951},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.946},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.946},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.936},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.936},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.922},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.934},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.843},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.842},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.823},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.804},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.804},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.73},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.96},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.95},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.926},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.92},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.913},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.91},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.654},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.621},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.613},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.613},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.613},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.613},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.598},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.566}],"category":""},{"id":"minecraft:mangrove_sign","name":"Mangrove Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#763631","dominant_hex":"#723232","average_hex":"#763631","hue_group":"red","lightness":0.3275,"saturation":0.4132,"palette":["#723232","#7c4434","#743c34","#8c4c3c","#5c1c1c","#642424"],"color_groups":[{"hex":"#723232","weight":0.2461,"lightness":0.3216,"saturation":0.3902,"hue_group":"red"},{"hex":"#7c4434","weight":0.2031,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#743c34","weight":0.1953,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#8c4c3c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#5c1c1c","weight":0.1133,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#642424","weight":0.0938,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_planks.png","family":"mangrove_sign","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_trapdoor","label":"Palette proche: Mangrove Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.798},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.791},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.766},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.759},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.752},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.752},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.751},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.749},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_planks","label":"Couleurs analogues: Mangrove Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_pressure_plate","label":"Couleurs analogues: Mangrove Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_slab","label":"Couleurs analogues: Mangrove Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_stairs","label":"Couleurs analogues: Mangrove Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wall_sign","label":"Couleurs analogues: Mangrove Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.952},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.935},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.935},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.908},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.932},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.927},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.777},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.776},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.761},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.737},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.737},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.664},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.956},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.955},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.932},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.625},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.592},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.585},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.569},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:mangrove_slab","name":"Mangrove Slab","entry_type":"block","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","history":[{"version":"1.7.2 1.7","status":"added","notes":"Added acacia and dark oak slabs."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped slabs."}],"colors":{"primary":"#763631","dominant_hex":"#723232","average_hex":"#763631","hue_group":"red","lightness":0.3275,"saturation":0.4132,"palette":["#723232","#7c4434","#743c34","#8c4c3c","#5c1c1c","#642424"],"color_groups":[{"hex":"#723232","weight":0.2461,"lightness":0.3216,"saturation":0.3902,"hue_group":"red"},{"hex":"#7c4434","weight":0.2031,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#743c34","weight":0.1953,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#8c4c3c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#5c1c1c","weight":0.1133,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#642424","weight":0.0938,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_planks.png","family":"mangrove","relations":[{"type":"variants","target":"minecraft:mangrove_door","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_door","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_fence","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_fence","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_leaves","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_leaves","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_log","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_log","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_planks","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_planks","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_stairs","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_stairs","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_wood","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_wood","label":"Related set: mangrove","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_trapdoor","label":"Palette proche: Mangrove Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.798},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.791},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.766},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.759},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.752},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.752},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.751},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.749},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_planks","label":"Couleurs analogues: Mangrove Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_pressure_plate","label":"Couleurs analogues: Mangrove Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_sign","label":"Couleurs analogues: Mangrove Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_stairs","label":"Couleurs analogues: Mangrove Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wall_sign","label":"Couleurs analogues: Mangrove Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.952},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.935},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.935},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.908},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.932},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.927},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.777},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.776},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.761},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.737},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.737},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.664},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.956},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.955},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.932},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.625},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.592},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.585},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.569},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:mangrove_stairs","name":"Mangrove Stairs","entry_type":"block","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","history":[{"version":"20100629","status":"added","notes":"Added \"wooden\" stairs."},{"version":"1.3.1 12w25a","status":"added","notes":"Added wooden stairs for the remaining three wood types (spruce, birch, and jungle)."},{"version":"12w26a","status":"added","notes":"Added crafting recipes for spruce, birch, and jungle wood stairs."}],"colors":{"primary":"#763631","dominant_hex":"#723232","average_hex":"#763631","hue_group":"red","lightness":0.3275,"saturation":0.4132,"palette":["#723232","#7c4434","#743c34","#8c4c3c","#5c1c1c","#642424"],"color_groups":[{"hex":"#723232","weight":0.2461,"lightness":0.3216,"saturation":0.3902,"hue_group":"red"},{"hex":"#7c4434","weight":0.2031,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#743c34","weight":0.1953,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#8c4c3c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#5c1c1c","weight":0.1133,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#642424","weight":0.0938,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_planks.png","family":"mangrove","relations":[{"type":"variants","target":"minecraft:mangrove_door","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_door","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_fence","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_fence","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_leaves","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_leaves","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_log","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_log","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_planks","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_planks","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_slab","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_slab","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_wood","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_wood","label":"Related set: mangrove","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_trapdoor","label":"Palette proche: Mangrove Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.798},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.791},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.766},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.759},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.752},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.752},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.751},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.749},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_planks","label":"Couleurs analogues: Mangrove Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_pressure_plate","label":"Couleurs analogues: Mangrove Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_sign","label":"Couleurs analogues: Mangrove Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_slab","label":"Couleurs analogues: Mangrove Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wall_sign","label":"Couleurs analogues: Mangrove Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.952},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.935},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.935},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.908},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.932},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.927},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.777},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.776},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.761},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.737},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.737},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.664},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.956},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.955},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.932},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.625},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.592},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.585},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.569},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:mangrove_trapdoor","name":"Mangrove Trapdoor","entry_type":"block","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","history":[{"version":"1.6","status":"added","notes":"Added wooden trapdoors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped trapdoors."}],"colors":{"primary":"#6f2f2a","dominant_hex":"#642424","average_hex":"#6f2f2a","hue_group":"red","lightness":0.3,"saturation":0.451,"palette":["#642424","#5c1c1c","#8e4e3e","#7c4434","#6c2c2c","#743b34"],"color_groups":[{"hex":"#642424","weight":0.2768,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"},{"hex":"#5c1c1c","weight":0.2321,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#8e4e3e","weight":0.1429,"lightness":0.4,"saturation":0.3922,"hue_group":"red"},{"hex":"#7c4434","weight":0.125,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#6c2c2c","weight":0.1161,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#743b34","weight":0.1071,"lightness":0.3294,"saturation":0.381,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_trapdoor.png","family":"mangrove_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_gold_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherrack","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Palette proche: Mangrove Hanging Sign","confidence":0.93},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.776},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.771},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.766},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.756},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.754},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.749},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.749},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.744},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.744},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.733},{"type":"color_analogous","target":"minecraft:mangrove_shelf","label":"Couleurs analogues: Mangrove Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_hanging_sign","label":"Couleurs analogues: Mangrove Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wall_hanging_sign","label":"Couleurs analogues: Mangrove Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_mangrove_log","label":"Couleurs analogues: Stripped Mangrove Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_mangrove_wood","label":"Couleurs analogues: Stripped Mangrove Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.956},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.943},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.943},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.938},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.938},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.905},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.935},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.924},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.78},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.779},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.758},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.74},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.74},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.667},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.959},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.958},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.935},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.65},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.617},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.61},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.61},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.61},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.61},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.594},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.563}],"category":"building"},{"id":"minecraft:mangrove_wall_hanging_sign","name":"Mangrove Wall Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#783630","dominant_hex":"#7c3434","average_hex":"#783630","hue_group":"red","lightness":0.3294,"saturation":0.4286,"palette":["#7c3434","#7c3c2c","#743434","#6c2c2c","#844434"],"color_groups":[{"hex":"#7c3434","weight":0.3359,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#7c3c2c","weight":0.2891,"lightness":0.3294,"saturation":0.4762,"hue_group":"red"},{"hex":"#743434","weight":0.2383,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#6c2c2c","weight":0.1172,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#844434","weight":0.0195,"lightness":0.3608,"saturation":0.4348,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_mangrove_log.png","family":"mangrove_wall_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Palette proche: Mangrove Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_log","label":"Palette proche: Stripped Mangrove Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Palette proche: Stripped Mangrove Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.782},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.756},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.756},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.752},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.751},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.734},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.734},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.73},{"type":"color_bridge","target":"minecraft:anvil","label":"Pont de nuance par palette: Anvil","confidence":0.729},{"type":"color_analogous","target":"minecraft:mangrove_hanging_sign","label":"Couleurs analogues: Mangrove Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_mangrove_log","label":"Couleurs analogues: Stripped Mangrove Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_mangrove_wood","label":"Couleurs analogues: Stripped Mangrove Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_planks","label":"Couleurs analogues: Mangrove Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_pressure_plate","label":"Couleurs analogues: Mangrove Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.929},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.919},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.919},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.914},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.914},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.908},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.901},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.753},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.752},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.735},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.714},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.714},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.64},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.958},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.955},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.947},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.944},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.93},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.929},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.623},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.589},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.583},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.583},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.583},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.583},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.567},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:mangrove_wall_sign","name":"Mangrove Wall Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#763631","dominant_hex":"#723232","average_hex":"#763631","hue_group":"red","lightness":0.3275,"saturation":0.4132,"palette":["#723232","#7c4434","#743c34","#8c4c3c","#5c1c1c","#642424"],"color_groups":[{"hex":"#723232","weight":0.2461,"lightness":0.3216,"saturation":0.3902,"hue_group":"red"},{"hex":"#7c4434","weight":0.2031,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#743c34","weight":0.1953,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#8c4c3c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#5c1c1c","weight":0.1133,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#642424","weight":0.0938,"lightness":0.2667,"saturation":0.4706,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_planks.png","family":"mangrove_wall_sign","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_trapdoor","label":"Palette proche: Mangrove Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.798},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.791},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.766},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.759},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.752},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.752},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.751},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.749},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_planks","label":"Couleurs analogues: Mangrove Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_pressure_plate","label":"Couleurs analogues: Mangrove Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_sign","label":"Couleurs analogues: Mangrove Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_slab","label":"Couleurs analogues: Mangrove Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_stairs","label":"Couleurs analogues: Mangrove Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.952},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.939},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.935},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.935},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.908},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.932},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.927},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.777},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.776},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.761},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.737},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.737},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.664},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.956},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.955},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.932},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.625},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.592},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.585},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.585},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.569},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:mangrove_wood","name":"Mangrove Wood","entry_type":"block","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","history":[{"version":"1.3.1 12w30d","status":"added","notes":"Added six-sided wood blocks, which look similar to logs , but have the wood's \"bark\" texture (side texture when placed vertically) on all 6 sides."},{"version":"1.7.2 13w43a","status":"added","notes":"Added two new types of wood: acacia and dark oak."},{"version":"1","status":"added","notes":"Added top textures of the bark blocks."}],"colors":{"primary":"#544329","dominant_hex":"#4c3c24","average_hex":"#544329","hue_group":"yellow","lightness":0.2451,"saturation":0.344,"palette":["#4c3c24","#5c4c2c","#645434","#443424","#3c2c24"],"color_groups":[{"hex":"#4c3c24","weight":0.3164,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#5c4c2c","weight":0.3047,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"},{"hex":"#645434","weight":0.1758,"lightness":0.298,"saturation":0.3158,"hue_group":"yellow"},{"hex":"#443424","weight":0.1523,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#3c2c24","weight":0.0508,"lightness":0.1882,"saturation":0.25,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mangrove_log.png","family":"mangrove","relations":[{"type":"variants","target":"minecraft:mangrove_door","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_door","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_fence","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_fence","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_leaves","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_leaves","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_log","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_log","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_planks","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_planks","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_slab","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_slab","label":"Related set: mangrove","confidence":0.8},{"type":"variants","target":"minecraft:mangrove_stairs","label":"Same family: mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:mangrove_stairs","label":"Related set: mangrove","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firefly_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_roots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_roots","label":"Palette proche: Mangrove Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Palette proche: Dark Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Palette proche: Dark Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Palette proche: Stripped Dark Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Palette proche: Stripped Dark Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.934},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.934},{"type":"color_neighbors","target":"minecraft:dark_oak_shelf","label":"Palette proche: Dark Oak Shelf","confidence":0.924},{"type":"color_neighbors","target":"minecraft:spruce_shelf","label":"Palette proche: Spruce Shelf","confidence":0.91},{"type":"color_neighbors","target":"minecraft:muddy_mangrove_roots","label":"Palette proche: Muddy Mangrove Roots","confidence":0.9},{"type":"color_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Palette proche: Brown Stained Glass Pane","confidence":0.899},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.9},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.837},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.82},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.816},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.807},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.796},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.778},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.778},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.774},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.774},{"type":"color_analogous","target":"minecraft:mangrove_log","label":"Couleurs analogues: Mangrove Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_roots","label":"Couleurs analogues: Mangrove Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_shelf","label":"Couleurs analogues: Spruce Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_log","label":"Couleurs analogues: Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wood","label":"Couleurs analogues: Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_log","label":"Couleurs analogues: Stripped Spruce Log","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.943},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.906},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.888},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.873},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.871},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.856},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.849},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.841},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.934},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.934},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.932},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.928},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.912},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.876},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.843},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.701},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.667},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.655},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.655},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.655},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.655},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.645},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.62}],"category":"building"},{"id":"minecraft:map","name":"Map","entry_type":"item","description":"A map is an item used to view explored surface terrain and, in Java Edition, players. Maps can be cloned, zoomed out and locked using a cartography table. A locator map is a variant in Bedrock Edition which shows player locations.","history":[{"version":"1.6","status":"added","notes":"Added maps."},{"version":"4 ]","status":"added","notes":"added to maps for different blocks . [ 4 ]"},{"version":"wiki-history","status":"added","notes":"added for zooming in maps."}],"colors":{"primary":"#d5d6ab","dominant_hex":"#fcfcf4","average_hex":"#d5d6ab","hue_group":"yellow","lightness":0.7549,"saturation":0.344,"palette":["#fcfcf4","#848c3c","#a4ac4c","#dcdcac","#ececc4","#bcc474"],"color_groups":[{"hex":"#fcfcf4","weight":0.4286,"lightness":0.9725,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#848c3c","weight":0.1633,"lightness":0.3922,"saturation":0.4,"hue_group":"yellow"},{"hex":"#a4ac4c","weight":0.1429,"lightness":0.4863,"saturation":0.3871,"hue_group":"yellow"},{"hex":"#dcdcac","weight":0.1224,"lightness":0.7686,"saturation":0.4068,"hue_group":"yellow"},{"hex":"#ececc4","weight":0.1224,"lightness":0.8471,"saturation":0.5128,"hue_group":"yellow"},{"hex":"#bcc474","weight":0.0204,"lightness":0.6118,"saturation":0.404,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/map.png","family":"map","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:filled_map","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:eye_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trader_llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_porkchop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:medium_amethyst_bud","name":"Medium Amethyst Bud","entry_type":"block","description":"Amethyst buds are the first three stages of growth of amethyst clusters, which grow on budding amethyst. Amethyst clusters are the fourth and final growth stage of amethyst buds, which drop amethyst shards when mined.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added amethyst buds and amethyst clusters."}],"colors":{"primary":"#9e78ca","dominant_hex":"#cca4f4","average_hex":"#9e78ca","hue_group":"blue","lightness":0.6314,"saturation":0.4362,"palette":["#cca4f4","#64449c","#7c5cb4","#8c6ccc","#fccce4"],"color_groups":[{"hex":"#cca4f4","weight":0.2745,"lightness":0.8,"saturation":0.7843,"hue_group":"purple"},{"hex":"#64449c","weight":0.2353,"lightness":0.4392,"saturation":0.3929,"hue_group":"blue"},{"hex":"#7c5cb4","weight":0.2353,"lightness":0.5333,"saturation":0.3697,"hue_group":"blue"},{"hex":"#8c6ccc","weight":0.1373,"lightness":0.6118,"saturation":0.4848,"hue_group":"blue"},{"hex":"#fccce4","weight":0.1176,"lightness":0.8941,"saturation":0.8889,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/medium_amethyst_bud.png","family":"medium_amethyst_bud","relations":[{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_cluster","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:budding_amethyst","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeating_command_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:amethyst_cluster","label":"Palette proche: Amethyst Cluster","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_amethyst_bud","label":"Palette proche: Large Amethyst Bud","confidence":0.94},{"type":"color_neighbors","target":"minecraft:small_amethyst_bud","label":"Palette proche: Small Amethyst Bud","confidence":0.914},{"type":"color_neighbors","target":"minecraft:amethyst_block","label":"Palette proche: Amethyst Block","confidence":0.9},{"type":"color_neighbors","target":"minecraft:budding_amethyst","label":"Palette proche: Budding Amethyst","confidence":0.891},{"type":"color_neighbors","target":"minecraft:repeating_command_block","label":"Palette proche: Repeating Command Block","confidence":0.703},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.675},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.658},{"type":"color_neighbors","target":"minecraft:allium","label":"Palette proche: Allium","confidence":0.645},{"type":"color_neighbors","target":"minecraft:potted_allium","label":"Palette proche: Potted Allium","confidence":0.645},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.62},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.612},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.654},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.627},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.627},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.627},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.622},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.618},{"type":"color_bridge","target":"minecraft:magenta_glazed_terracotta","label":"Pont de nuance par palette: Magenta Glazed Terracotta","confidence":0.617},{"type":"color_bridge","target":"minecraft:pink_petals","label":"Pont de nuance par palette: Pink Petals","confidence":0.608},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.58},{"type":"color_analogous","target":"minecraft:large_amethyst_bud","label":"Couleurs analogues: Large Amethyst Bud","confidence":0.96},{"type":"color_analogous","target":"minecraft:amethyst_cluster","label":"Couleurs analogues: Amethyst Cluster","confidence":0.96},{"type":"color_analogous","target":"minecraft:allium","label":"Couleurs analogues: Allium","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_allium","label":"Couleurs analogues: Potted Allium","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_portal","label":"Couleurs analogues: Nether Portal","confidence":0.898},{"type":"color_analogous","target":"minecraft:crying_obsidian","label":"Couleurs analogues: Crying Obsidian","confidence":0.897},{"type":"color_analogous","target":"minecraft:budding_amethyst","label":"Couleurs analogues: Budding Amethyst","confidence":0.894},{"type":"color_analogous","target":"minecraft:amethyst_block","label":"Couleurs analogues: Amethyst Block","confidence":0.885},{"type":"color_complement","target":"minecraft:azure_bluet","label":"Contraste complementaire: Azure Bluet","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_azure_bluet","label":"Contraste complementaire: Potted Azure Bluet","confidence":0.96},{"type":"color_complement","target":"minecraft:sugar_cane","label":"Contraste complementaire: Sugar Cane","confidence":0.96},{"type":"color_complement","target":"minecraft:lime_carpet","label":"Contraste complementaire: Lime Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:lime_wool","label":"Contraste complementaire: Lime Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:oak_sapling","label":"Contraste complementaire: Oak Sapling","confidence":0.951},{"type":"color_complement","target":"minecraft:potted_oak_sapling","label":"Contraste complementaire: Potted Oak Sapling","confidence":0.951},{"type":"color_complement","target":"minecraft:cactus","label":"Contraste complementaire: Cactus","confidence":0.945},{"type":"color_triad","target":"minecraft:glow_item_frame","label":"Harmonie triadique: Glow Item Frame","confidence":0.96},{"type":"color_triad","target":"minecraft:orange_stained_glass_pane","label":"Harmonie triadique: Orange Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:orange_stained_glass","label":"Harmonie triadique: Orange Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_mushroom_block","label":"Harmonie triadique: Brown Mushroom Block","confidence":0.96},{"type":"color_triad","target":"minecraft:composter","label":"Harmonie triadique: Composter","confidence":0.96},{"type":"color_triad","target":"minecraft:coarse_dirt","label":"Harmonie triadique: Coarse Dirt","confidence":0.96},{"type":"color_triad","target":"minecraft:redstone_wall_torch","label":"Harmonie triadique: Redstone Wall Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_quartz","label":"Harmonie triadique: Smooth Quartz","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_hyphae","label":"Harmonie carree: Stripped Warped Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_stem","label":"Harmonie carree: Stripped Warped Stem","confidence":0.96},{"type":"color_square","target":"minecraft:warped_hanging_sign","label":"Harmonie carree: Warped Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:warped_wall_hanging_sign","label":"Harmonie carree: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:nether_wart","label":"Harmonie carree: Nether Wart","confidence":0.96},{"type":"color_square","target":"minecraft:red_nether_brick_slab","label":"Harmonie carree: Red Nether Brick Slab","confidence":0.957},{"type":"color_square","target":"minecraft:red_nether_brick_stairs","label":"Harmonie carree: Red Nether Brick Stairs","confidence":0.957},{"type":"color_square","target":"minecraft:red_nether_brick_wall","label":"Harmonie carree: Red Nether Brick Wall","confidence":0.957},{"type":"value_contrast","target":"minecraft:respawn_anchor","label":"Contraste clair sombre: Respawn Anchor","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_hyphae","label":"Contraste clair sombre: Warped Hyphae","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_stem","label":"Contraste clair sombre: Warped Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone","label":"Contraste clair sombre: Polished Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_button","label":"Contraste clair sombre: Polished Blackstone Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_pressure_plate","label":"Contraste clair sombre: Polished Blackstone Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_slab","label":"Contraste clair sombre: Polished Blackstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_stairs","label":"Contraste clair sombre: Polished Blackstone Stairs","confidence":0.55}],"category":""},{"id":"minecraft:melon","name":"Melon","entry_type":"block","description":"A melon is a fruit block that grows from a fully-grown melon stem, which in turn is grown from melon seeds.","history":[{"version":"1.8","status":"added","notes":"Added melons."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb melons, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#72921e","dominant_hex":"#a4ac1c","average_hex":"#72921e","hue_group":"yellow","lightness":0.3451,"saturation":0.6591,"palette":["#a4ac1c","#6c9424","#54841c","#347c1c","#346c1c"],"color_groups":[{"hex":"#a4ac1c","weight":0.3633,"lightness":0.3922,"saturation":0.72,"hue_group":"yellow"},{"hex":"#6c9424","weight":0.2383,"lightness":0.3608,"saturation":0.6087,"hue_group":"yellow"},{"hex":"#54841c","weight":0.2227,"lightness":0.3137,"saturation":0.65,"hue_group":"yellow"},{"hex":"#347c1c","weight":0.0938,"lightness":0.298,"saturation":0.6316,"hue_group":"green"},{"hex":"#346c1c","weight":0.082,"lightness":0.2667,"saturation":0.5882,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/melon_side.png","family":"melon","relations":[{"type":"visual_neighbors","target":"minecraft:orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hay_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bell","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:green_carpet","label":"Palette proche: Green Carpet","confidence":0.814},{"type":"color_neighbors","target":"minecraft:green_wool","label":"Palette proche: Green Wool","confidence":0.814},{"type":"color_neighbors","target":"minecraft:lime_shulker_box","label":"Palette proche: Lime Shulker Box","confidence":0.811},{"type":"color_neighbors","target":"minecraft:lime_concrete","label":"Palette proche: Lime Concrete","confidence":0.797},{"type":"color_neighbors","target":"minecraft:green_candle","label":"Palette proche: Green Candle","confidence":0.795},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.791},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.789},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.785},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.784},{"type":"color_neighbors","target":"minecraft:lime_concrete_powder","label":"Palette proche: Lime Concrete Powder","confidence":0.783},{"type":"color_neighbors","target":"minecraft:lime_carpet","label":"Palette proche: Lime Carpet","confidence":0.781},{"type":"color_neighbors","target":"minecraft:lime_wool","label":"Palette proche: Lime Wool","confidence":0.781},{"type":"color_bridge","target":"minecraft:carrots","label":"Pont de nuance par palette: Carrots","confidence":0.756},{"type":"color_bridge","target":"minecraft:poppy","label":"Pont de nuance par palette: Poppy","confidence":0.637},{"type":"color_bridge","target":"minecraft:potted_poppy","label":"Pont de nuance par palette: Potted Poppy","confidence":0.637},{"type":"color_bridge","target":"minecraft:wheat","label":"Pont de nuance par palette: Wheat","confidence":0.619},{"type":"color_bridge","target":"minecraft:cut_red_sandstone_slab","label":"Pont de nuance par palette: Cut Red Sandstone Slab","confidence":0.599},{"type":"color_bridge","target":"minecraft:red_sandstone_slab","label":"Pont de nuance par palette: Red Sandstone Slab","confidence":0.599},{"type":"color_bridge","target":"minecraft:red_sandstone_stairs","label":"Pont de nuance par palette: Red Sandstone Stairs","confidence":0.599},{"type":"color_bridge","target":"minecraft:smooth_red_sandstone","label":"Pont de nuance par palette: Smooth Red Sandstone","confidence":0.599},{"type":"color_bridge","target":"minecraft:smooth_red_sandstone_slab","label":"Pont de nuance par palette: Smooth Red Sandstone Slab","confidence":0.599},{"type":"color_bridge","target":"minecraft:smooth_red_sandstone_stairs","label":"Pont de nuance par palette: Smooth Red Sandstone Stairs","confidence":0.599},{"type":"color_analogous","target":"minecraft:azalea","label":"Couleurs analogues: Azalea","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_azalea_bush","label":"Couleurs analogues: Potted Azalea Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete_powder","label":"Couleurs analogues: Green Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:cave_vines","label":"Couleurs analogues: Cave Vines","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_carpet","label":"Couleurs analogues: Green Carpet","confidence":0.946},{"type":"color_analogous","target":"minecraft:green_wool","label":"Couleurs analogues: Green Wool","confidence":0.946},{"type":"color_analogous","target":"minecraft:green_candle","label":"Couleurs analogues: Green Candle","confidence":0.936},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.929},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.96},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.953},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.953},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.953},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.953},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.819},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.754},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.735},{"type":"color_triad","target":"minecraft:light_blue_carpet","label":"Harmonie triadique: Light Blue Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_wool","label":"Harmonie triadique: Light Blue Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.957},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.95},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.947},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.892},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.852},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.832},{"type":"color_square","target":"minecraft:cracked_nether_bricks","label":"Harmonie carree: Cracked Nether Bricks","confidence":0.914},{"type":"color_square","target":"minecraft:prismarine_brick_slab","label":"Harmonie carree: Prismarine Brick Slab","confidence":0.891},{"type":"color_square","target":"minecraft:prismarine_brick_stairs","label":"Harmonie carree: Prismarine Brick Stairs","confidence":0.891},{"type":"color_square","target":"minecraft:prismarine_bricks","label":"Harmonie carree: Prismarine Bricks","confidence":0.891},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.881},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.871},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.868},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.868},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.59},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.557},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55}],"category":""},{"id":"minecraft:melon_seeds","name":"Melon Seeds","entry_type":"item","description":"Melon seeds are items obtained from melon slices that can be used to grow melon stems. Melon stems are plants grown on farmland that, over time, grow melons on dirt, mud and moss blocks adjacent to them.","history":[{"version":"1.8","status":"added","notes":"Added melon seeds."},{"version":"wiki-history","status":"added","notes":"Added the melon stem, with seven stages of growth."},{"version":"15w44a","status":"added","notes":"added to dungeon chests."}],"colors":{"primary":"#393018","dominant_hex":"#2c240c","average_hex":"#393018","hue_group":"yellow","lightness":0.1588,"saturation":0.4074,"palette":["#2c240c","#645434","#1c1404"],"color_groups":[{"hex":"#2c240c","weight":0.3714,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#645434","weight":0.3429,"lightness":0.298,"saturation":0.3158,"hue_group":"yellow"},{"hex":"#1c1404","weight":0.2857,"lightness":0.0627,"saturation":0.75,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/melon_seeds.png","family":"melon_seeds","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:sniffer_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:book","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crossbow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_pickaxe","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:melon_slice","name":"Melon Slice","entry_type":"item","description":"Melon slices are food items obtained by breaking melons.","history":[{"version":"1.8","status":"added","notes":"Added melons."}],"colors":{"primary":"#9b5a2d","dominant_hex":"#bc3424","average_hex":"#9b5a2d","hue_group":"red","lightness":0.3922,"saturation":0.55,"palette":["#bc3424","#4d5011","#d0ac94","#a5150c","#ab952e","#848c24"],"color_groups":[{"hex":"#bc3424","weight":0.283,"lightness":0.4392,"saturation":0.6786,"hue_group":"red"},{"hex":"#4d5011","weight":0.2453,"lightness":0.1902,"saturation":0.6495,"hue_group":"yellow"},{"hex":"#d0ac94","weight":0.1509,"lightness":0.698,"saturation":0.3896,"hue_group":"red"},{"hex":"#a5150c","weight":0.1321,"lightness":0.3471,"saturation":0.8644,"hue_group":"red"},{"hex":"#ab952e","weight":0.1038,"lightness":0.4255,"saturation":0.576,"hue_group":"yellow"},{"hex":"#848c24","weight":0.0849,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/melon_slice.png","family":"melon_slice","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glistering_melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:melon_stem","name":"Melon Stem","entry_type":"block","description":"Melon seeds are items obtained from melon slices that can be used to grow melon stems. Melon stems are plants grown on farmland that, over time, grow melons on dirt, mud and moss blocks adjacent to them.","history":[{"version":"1.8","status":"added","notes":"Added melon seeds."},{"version":"wiki-history","status":"added","notes":"Added the melon stem, with seven stages of growth."},{"version":"15w44a","status":"added","notes":"added to dungeon chests."}],"colors":{"primary":"#9a9a9a","dominant_hex":"#b5b5b5","average_hex":"#9a9a9a","hue_group":"neutral","lightness":0.6039,"saturation":0.0,"palette":["#b5b5b5","#777777","#cccccc","#949494","#4c4c4c","#898989"],"color_groups":[{"hex":"#b5b5b5","weight":0.3143,"lightness":0.7098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#777777","weight":0.1714,"lightness":0.4667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.1714,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1429,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1143,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#898989","weight":0.0857,"lightness":0.5373,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/melon_stem.png","family":"melon_stem","relations":[{"type":"visual_neighbors","target":"minecraft:pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeater","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Palette proche: Attached Pumpkin Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_leaves","label":"Palette proche: Mangrove Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pumpkin_stem","label":"Palette proche: Pumpkin Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:attached_melon_stem","label":"Palette proche: Attached Melon Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:vine","label":"Palette proche: Vine","confidence":0.94},{"type":"color_bridge","target":"minecraft:attached_pumpkin_stem","label":"Pont de nuance par palette: Attached Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:mangrove_leaves","label":"Pont de nuance par palette: Mangrove Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:pumpkin_stem","label":"Pont de nuance par palette: Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_melon_stem","label":"Pont de nuance par palette: Attached Melon Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_slab","label":"Contraste clair sombre: Deepslate Tile Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_stairs","label":"Contraste clair sombre: Deepslate Tile Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_wall","label":"Contraste clair sombre: Deepslate Tile Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tiles","label":"Contraste clair sombre: Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_deepslate_tiles","label":"Contraste clair sombre: Cracked Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55}],"category":"natural"},{"id":"minecraft:milk_bucket","name":"Milk Bucket","entry_type":"item","description":"A milk bucket is a drink obtained from using a bucket on cows, mooshrooms and goats that can be consumed to clear all effects.","history":[{"version":"wiki","status":"observed","notes":"Wiki revision 3488280 at 2026-03-22T07:35:19Z."}],"colors":{"primary":"#8b8d8e","dominant_hex":"#343434","average_hex":"#8b8d8e","hue_group":"neutral","lightness":0.551,"saturation":0.0131,"palette":["#343434","#d2ddde","#969696","#acacac","#767676","#fcfcfc"],"color_groups":[{"hex":"#343434","weight":0.3288,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d2ddde","weight":0.1986,"lightness":0.8471,"saturation":0.1538,"hue_group":"cyan"},{"hex":"#969696","weight":0.1233,"lightness":0.5882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.1233,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#767676","weight":0.1164,"lightness":0.4627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1096,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/milk_bucket.png","family":"milk_bucket","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_boat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_chestplate","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:minecart","name":"Minecart","entry_type":"item","description":"A minecart is a ridable vehicle entity that runs on rails and can be used to transport both players and mobs.","history":[{"version":"20100618","status":"added","notes":"Added minecarts."},{"version":"13w06a","status":"added","notes":"Added minecart with spawner ."},{"version":"1.7.2 13w39a","status":"added","notes":"Added minecart with command block ."}],"colors":{"primary":"#474d51","dominant_hex":"#85878d","average_hex":"#474d51","hue_group":"neutral","lightness":0.298,"saturation":0.0658,"palette":["#85878d","#2c343c","#212828","#3c4444","#444c54","#242c34"],"color_groups":[{"hex":"#85878d","weight":0.277,"lightness":0.5373,"saturation":0.0339,"hue_group":"neutral"},{"hex":"#2c343c","weight":0.2095,"lightness":0.2039,"saturation":0.1538,"hue_group":"blue"},{"hex":"#212828","weight":0.1959,"lightness":0.1431,"saturation":0.0959,"hue_group":"neutral"},{"hex":"#3c4444","weight":0.1757,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#444c54","weight":0.0743,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#242c34","weight":0.0676,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/minecart.png","family":"minecart","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:goat_horn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ominous_trial_key","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wayfinder_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ink_sac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:compass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_13","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:miner_pottery_sherd","name":"Miner Pottery Sherd","entry_type":"item","description":"A miner pottery sherd is a pottery sherd that depicts a pickaxe. It can be found in desert pyramids.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added miner pottery shards."}],"colors":{"primary":"#6d3d32","dominant_hex":"#5c342c","average_hex":"#6d3d32","hue_group":"red","lightness":0.3118,"saturation":0.3711,"palette":["#5c342c","#724234","#844c3c","#995949","#542c24","#44241c"],"color_groups":[{"hex":"#5c342c","weight":0.1975,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#724234","weight":0.1975,"lightness":0.3255,"saturation":0.3735,"hue_group":"red"},{"hex":"#844c3c","weight":0.172,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#995949","weight":0.1592,"lightness":0.4431,"saturation":0.354,"hue_group":"red"},{"hex":"#542c24","weight":0.1401,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#44241c","weight":0.1338,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/miner_pottery_sherd.png","family":"miner_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:angler_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:burn_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blade_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:mojang_banner_pattern","name":"Mojang Banner Pattern","entry_type":"item","description":"A thing banner pattern is a banner pattern used to customize banners with a shape of the old Mojang logo.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added thing banner patterns."},{"version":"1.21.2 24w33a","status":"added","notes":"Added a unique item icon texture for thing banner patterns."}],"colors":{"primary":"#b2a796","dominant_hex":"#ececec","average_hex":"#b2a796","hue_group":"yellow","lightness":0.6431,"saturation":0.1538,"palette":["#ececec","#65483e","#847454","#dcd4bc","#b3a487","#948c6c"],"color_groups":[{"hex":"#ececec","weight":0.3171,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#65483e","weight":0.1829,"lightness":0.3196,"saturation":0.2393,"hue_group":"red"},{"hex":"#847454","weight":0.1646,"lightness":0.4235,"saturation":0.2222,"hue_group":"yellow"},{"hex":"#dcd4bc","weight":0.1402,"lightness":0.8,"saturation":0.3137,"hue_group":"yellow"},{"hex":"#b3a487","weight":0.1341,"lightness":0.6157,"saturation":0.2245,"hue_group":"yellow"},{"hex":"#948c6c","weight":0.061,"lightness":0.502,"saturation":0.1575,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/mojang_banner_pattern.png","family":"mojang_banner_pattern","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:flow_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bordure_indented_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:field_masoned_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:mooshroom/brown","name":"Mooshroom / Brown","entry_type":"mob","description":"A mooshroom is a mushroom-covered variant of a cow exclusive to the rare mushroom fields biome. Mooshrooms are a great source of mushroom stew and leather.","history":[{"version":"1.0.0","status":"added","notes":"Added mooshrooms."},{"version":"wiki-history","status":"added","notes":"Added baby mooshrooms."},{"version":"1.4.2 12w38a","status":"added","notes":"Added new step, hurt, and idle sounds for mooshroom."}],"colors":{"primary":"#9b7358","dominant_hex":"#87614a","average_hex":"#9b7358","hue_group":"red","lightness":0.4765,"saturation":0.2757,"palette":["#87614a","#947454","#d4a08d","#bc8c6d","#a37c5d","#1b1b1b"],"color_groups":[{"hex":"#87614a","weight":0.3834,"lightness":0.4098,"saturation":0.2919,"hue_group":"red"},{"hex":"#947454","weight":0.3013,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#d4a08d","weight":0.1424,"lightness":0.6922,"saturation":0.4522,"hue_group":"red"},{"hex":"#bc8c6d","weight":0.0826,"lightness":0.5824,"saturation":0.3709,"hue_group":"red"},{"hex":"#a37c5d","weight":0.0651,"lightness":0.502,"saturation":0.2756,"hue_group":"red"},{"hex":"#1b1b1b","weight":0.0252,"lightness":0.1059,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cow/brown_mooshroom.png","family":"mooshroom","relations":[{"type":"variants","target":"minecraft:mooshroom/red","label":"Same family: mooshroom","confidence":0.75},{"type":"related_sets","target":"minecraft:mooshroom/red","label":"Related set: mooshroom","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:mooshroom/red","name":"Mooshroom / Red","entry_type":"mob","description":"A mooshroom is a mushroom-covered variant of a cow exclusive to the rare mushroom fields biome. Mooshrooms are a great source of mushroom stew and leather.","history":[{"version":"1.0.0","status":"added","notes":"Added mooshrooms."},{"version":"wiki-history","status":"added","notes":"Added baby mooshrooms."},{"version":"1.4.2 12w38a","status":"added","notes":"Added new step, hurt, and idle sounds for mooshroom."}],"colors":{"primary":"#9c3f41","dominant_hex":"#ac1414","average_hex":"#9c3f41","hue_group":"red","lightness":0.4294,"saturation":0.4247,"palette":["#ac1414","#9c1414","#740e15","#8b6b6b","#c5b3b3","#aca1a1"],"color_groups":[{"hex":"#ac1414","weight":0.2409,"lightness":0.3765,"saturation":0.7917,"hue_group":"red"},{"hex":"#9c1414","weight":0.221,"lightness":0.3451,"saturation":0.7727,"hue_group":"red"},{"hex":"#740e15","weight":0.1665,"lightness":0.2549,"saturation":0.7846,"hue_group":"red"},{"hex":"#8b6b6b","weight":0.1501,"lightness":0.4824,"saturation":0.1301,"hue_group":"red"},{"hex":"#c5b3b3","weight":0.1202,"lightness":0.7373,"saturation":0.1343,"hue_group":"red"},{"hex":"#aca1a1","weight":0.1014,"lightness":0.6529,"saturation":0.0621,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/cow/red_mooshroom.png","family":"mooshroom","relations":[{"type":"variants","target":"minecraft:mooshroom/brown","label":"Same family: mooshroom","confidence":0.75},{"type":"related_sets","target":"minecraft:mooshroom/brown","label":"Related set: mooshroom","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:mooshroom_spawn_egg","name":"Mooshroom Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#7b4a4c","dominant_hex":"#ab1017","average_hex":"#7b4a4c","hue_group":"red","lightness":0.3863,"saturation":0.2487,"palette":["#ab1017","#bdbdbd","#2b1d20","#530911","#897e7e","#4f4f4f"],"color_groups":[{"hex":"#ab1017","weight":0.2273,"lightness":0.3667,"saturation":0.8289,"hue_group":"red"},{"hex":"#bdbdbd","weight":0.2071,"lightness":0.7412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2b1d20","weight":0.1869,"lightness":0.1412,"saturation":0.1944,"hue_group":"red"},{"hex":"#530911","weight":0.1465,"lightness":0.1804,"saturation":0.8043,"hue_group":"red"},{"hex":"#897e7e","weight":0.1364,"lightness":0.5157,"saturation":0.0445,"hue_group":"neutral"},{"hex":"#4f4f4f","weight":0.096,"lightness":0.3098,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/mooshroom_spawn_egg.png","family":"mooshroom_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:magenta_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_key","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_relic","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:moss_block","name":"Moss Block","entry_type":"block","description":"A moss block is a natural block that can be spread to other blocks by using bone meal.","history":[{"version":"1.17 21w05a","status":"added","notes":"Added moss blocks."},{"version":"21w10a","status":"added","notes":"added lush caves biome."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb moss blocks, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#596e2d","dominant_hex":"#647434","average_hex":"#596e2d","hue_group":"yellow","lightness":0.3039,"saturation":0.4194,"palette":["#647434","#4c5c24","#546c2c","#6c8434","#74942c","#44542c"],"color_groups":[{"hex":"#647434","weight":0.2773,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#4c5c24","weight":0.2656,"lightness":0.251,"saturation":0.4375,"hue_group":"yellow"},{"hex":"#546c2c","weight":0.1719,"lightness":0.298,"saturation":0.4211,"hue_group":"yellow"},{"hex":"#6c8434","weight":0.125,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#74942c","weight":0.0898,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"},{"hex":"#44542c","weight":0.0703,"lightness":0.251,"saturation":0.3125,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/moss_block.png","family":"moss_block","relations":[{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_concrete","label":"Palette proche: Green Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.936},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.936},{"type":"color_neighbors","target":"minecraft:lime_terracotta","label":"Palette proche: Lime Terracotta","confidence":0.934},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.922},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.914},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.712},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.712},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.712},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.712},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.701},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.698},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.678},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.678},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.678},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.678},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:big_dripleaf_stem","label":"Couleurs analogues: Big Dripleaf Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:small_dripleaf","label":"Couleurs analogues: Small Dripleaf","confidence":0.96},{"type":"color_analogous","target":"minecraft:azalea_leaves","label":"Couleurs analogues: Azalea Leaves","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass_pane","label":"Couleurs analogues: Green Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete_powder","label":"Couleurs analogues: Green Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass","label":"Couleurs analogues: Green Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:azalea","label":"Couleurs analogues: Azalea","confidence":0.96},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.936},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.922},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.922},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.922},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.922},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.895},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.872},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.853},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.915},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.883},{"type":"color_triad","target":"minecraft:soul_lantern","label":"Harmonie triadique: Soul Lantern","confidence":0.872},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.855},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.852},{"type":"color_triad","target":"minecraft:light_blue_concrete","label":"Harmonie triadique: Light Blue Concrete","confidence":0.846},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.96},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.96},{"type":"color_square","target":"minecraft:chiseled_nether_bricks","label":"Harmonie carree: Chiseled Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_stairs","label":"Harmonie carree: Nether Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_wall","label":"Harmonie carree: Nether Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:nether_bricks","label":"Harmonie carree: Nether Bricks","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.603},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.58},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.56},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.56},{"type":"value_contrast","target":"minecraft:oxeye_daisy","label":"Contraste clair sombre: Oxeye Daisy","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_oxeye_daisy","label":"Contraste clair sombre: Potted Oxeye Daisy","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55}],"category":"natural"},{"id":"minecraft:moss_carpet","name":"Moss Carpet","entry_type":"block","description":"A moss carpet is a thin decorative variant of the moss block, resembling a carpet in functionality.","history":[{"version":"1.17 21w05a","status":"added","notes":"Added moss carpets."}],"colors":{"primary":"#596e2d","dominant_hex":"#647434","average_hex":"#596e2d","hue_group":"yellow","lightness":0.3039,"saturation":0.4194,"palette":["#647434","#4c5c24","#546c2c","#6c8434","#74942c","#44542c"],"color_groups":[{"hex":"#647434","weight":0.2773,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#4c5c24","weight":0.2656,"lightness":0.251,"saturation":0.4375,"hue_group":"yellow"},{"hex":"#546c2c","weight":0.1719,"lightness":0.298,"saturation":0.4211,"hue_group":"yellow"},{"hex":"#6c8434","weight":0.125,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#74942c","weight":0.0898,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"},{"hex":"#44542c","weight":0.0703,"lightness":0.251,"saturation":0.3125,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/moss_block.png","family":"moss_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_concrete","label":"Palette proche: Green Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.936},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.936},{"type":"color_neighbors","target":"minecraft:lime_terracotta","label":"Palette proche: Lime Terracotta","confidence":0.934},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.922},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.914},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.712},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.712},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.712},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.712},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.701},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.698},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.678},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.678},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.678},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.678},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:big_dripleaf_stem","label":"Couleurs analogues: Big Dripleaf Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:small_dripleaf","label":"Couleurs analogues: Small Dripleaf","confidence":0.96},{"type":"color_analogous","target":"minecraft:azalea_leaves","label":"Couleurs analogues: Azalea Leaves","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass_pane","label":"Couleurs analogues: Green Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete_powder","label":"Couleurs analogues: Green Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass","label":"Couleurs analogues: Green Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:azalea","label":"Couleurs analogues: Azalea","confidence":0.96},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.936},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.922},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.922},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.922},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.922},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.895},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.872},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.853},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.915},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.883},{"type":"color_triad","target":"minecraft:soul_lantern","label":"Harmonie triadique: Soul Lantern","confidence":0.872},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.855},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.852},{"type":"color_triad","target":"minecraft:light_blue_concrete","label":"Harmonie triadique: Light Blue Concrete","confidence":0.846},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.96},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.96},{"type":"color_square","target":"minecraft:chiseled_nether_bricks","label":"Harmonie carree: Chiseled Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_stairs","label":"Harmonie carree: Nether Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:nether_brick_wall","label":"Harmonie carree: Nether Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:nether_bricks","label":"Harmonie carree: Nether Bricks","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.636},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.603},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.58},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.56},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.56},{"type":"value_contrast","target":"minecraft:oxeye_daisy","label":"Contraste clair sombre: Oxeye Daisy","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_oxeye_daisy","label":"Contraste clair sombre: Potted Oxeye Daisy","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55}],"category":"decorative"},{"id":"minecraft:mossy_cobblestone","name":"Mossy Cobblestone","entry_type":"block","description":"Mossy cobblestone is a variant of cobblestone with moss on it. It is mainly used for crafting or as building block.","history":[{"version":"0.26","status":"added","notes":"Added moss stone."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb mossy cobblestone, providing the football/regular effect to the mob."}],"colors":{"primary":"#6e765f","dominant_hex":"#938e93","average_hex":"#6e765f","hue_group":"neutral","lightness":0.4176,"saturation":0.108,"palette":["#938e93","#545c3d","#696969","#647c44","#768654","#5c6c44"],"color_groups":[{"hex":"#938e93","weight":0.2734,"lightness":0.5667,"saturation":0.0226,"hue_group":"neutral"},{"hex":"#545c3d","weight":0.2227,"lightness":0.3,"saturation":0.2026,"hue_group":"yellow"},{"hex":"#696969","weight":0.1914,"lightness":0.4118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#647c44","weight":0.1172,"lightness":0.3765,"saturation":0.2917,"hue_group":"yellow"},{"hex":"#768654","weight":0.1133,"lightness":0.4275,"saturation":0.2294,"hue_group":"yellow"},{"hex":"#5c6c44","weight":0.082,"lightness":0.3451,"saturation":0.2273,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mossy_cobblestone.png","family":"mossy_cobblestone","relations":[{"type":"variants","target":"minecraft:mossy_cobblestone_slab","label":"Same family: mossy_cobblestone","confidence":0.75},{"type":"related_sets","target":"minecraft:mossy_cobblestone_slab","label":"Related set: mossy_cobblestone","confidence":0.8},{"type":"variants","target":"minecraft:mossy_cobblestone_stairs","label":"Same family: mossy_cobblestone","confidence":0.75},{"type":"related_sets","target":"minecraft:mossy_cobblestone_stairs","label":"Related set: mossy_cobblestone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frogspawn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lantern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Palette proche: Mossy Cobblestone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Palette proche: Mossy Cobblestone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Palette proche: Mossy Cobblestone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Palette proche: Infested Mossy Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_slab","label":"Palette proche: Mossy Stone Brick Slab","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_stairs","label":"Palette proche: Mossy Stone Brick Stairs","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_wall","label":"Palette proche: Mossy Stone Brick Wall","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_bricks","label":"Palette proche: Mossy Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:cobblestone","label":"Palette proche: Cobblestone","confidence":0.816},{"type":"color_neighbors","target":"minecraft:cobblestone_slab","label":"Palette proche: Cobblestone Slab","confidence":0.816},{"type":"color_neighbors","target":"minecraft:cobblestone_stairs","label":"Palette proche: Cobblestone Stairs","confidence":0.816},{"type":"color_neighbors","target":"minecraft:cobblestone_wall","label":"Palette proche: Cobblestone Wall","confidence":0.816},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par palette: Mossy Cobblestone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par palette: Mossy Cobblestone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par palette: Mossy Cobblestone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par palette: Infested Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par palette: Mossy Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par palette: Mossy Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par palette: Mossy Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_bricks","label":"Pont de nuance par palette: Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone","label":"Pont de nuance par palette: Cobblestone","confidence":0.848},{"type":"color_bridge","target":"minecraft:cobblestone_slab","label":"Pont de nuance par palette: Cobblestone Slab","confidence":0.848},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55}],"category":"natural"},{"id":"minecraft:mossy_cobblestone_slab","name":"Mossy Cobblestone Slab","entry_type":"block","description":"A mossy cobblestone slab is a decorative slab variant of mossy cobblestone that generates in pillager outposts and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added mossy cobblestone slabs."}],"colors":{"primary":"#6e765f","dominant_hex":"#938e93","average_hex":"#6e765f","hue_group":"neutral","lightness":0.4176,"saturation":0.108,"palette":["#938e93","#545c3d","#696969","#647c44","#768654","#5c6c44"],"color_groups":[{"hex":"#938e93","weight":0.2734,"lightness":0.5667,"saturation":0.0226,"hue_group":"neutral"},{"hex":"#545c3d","weight":0.2227,"lightness":0.3,"saturation":0.2026,"hue_group":"yellow"},{"hex":"#696969","weight":0.1914,"lightness":0.4118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#647c44","weight":0.1172,"lightness":0.3765,"saturation":0.2917,"hue_group":"yellow"},{"hex":"#768654","weight":0.1133,"lightness":0.4275,"saturation":0.2294,"hue_group":"yellow"},{"hex":"#5c6c44","weight":0.082,"lightness":0.3451,"saturation":0.2273,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mossy_cobblestone.png","family":"mossy_cobblestone","relations":[{"type":"variants","target":"minecraft:mossy_cobblestone","label":"Same family: mossy_cobblestone","confidence":0.75},{"type":"related_sets","target":"minecraft:mossy_cobblestone","label":"Related set: mossy_cobblestone","confidence":0.8},{"type":"variants","target":"minecraft:mossy_cobblestone_stairs","label":"Same family: mossy_cobblestone","confidence":0.75},{"type":"related_sets","target":"minecraft:mossy_cobblestone_stairs","label":"Related set: mossy_cobblestone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frogspawn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lantern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone","label":"Palette proche: Mossy Cobblestone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Palette proche: Mossy Cobblestone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Palette proche: Mossy Cobblestone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Palette proche: Infested Mossy Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_slab","label":"Palette proche: Mossy Stone Brick Slab","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_stairs","label":"Palette proche: Mossy Stone Brick Stairs","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_wall","label":"Palette proche: Mossy Stone Brick Wall","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_bricks","label":"Palette proche: Mossy Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:cobblestone","label":"Palette proche: Cobblestone","confidence":0.816},{"type":"color_neighbors","target":"minecraft:cobblestone_slab","label":"Palette proche: Cobblestone Slab","confidence":0.816},{"type":"color_neighbors","target":"minecraft:cobblestone_stairs","label":"Palette proche: Cobblestone Stairs","confidence":0.816},{"type":"color_neighbors","target":"minecraft:cobblestone_wall","label":"Palette proche: Cobblestone Wall","confidence":0.816},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par palette: Mossy Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par palette: Mossy Cobblestone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par palette: Mossy Cobblestone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par palette: Infested Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par palette: Mossy Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par palette: Mossy Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par palette: Mossy Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_bricks","label":"Pont de nuance par palette: Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone","label":"Pont de nuance par palette: Cobblestone","confidence":0.848},{"type":"color_bridge","target":"minecraft:cobblestone_slab","label":"Pont de nuance par palette: Cobblestone Slab","confidence":0.848},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:mossy_cobblestone_stairs","name":"Mossy Cobblestone Stairs","entry_type":"block","description":"Mossy cobblestone stairs are a decorative stairs variant of mossy cobblestone that generates in pillager outposts and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added mossy cobblestone stairs."}],"colors":{"primary":"#6e765f","dominant_hex":"#938e93","average_hex":"#6e765f","hue_group":"neutral","lightness":0.4176,"saturation":0.108,"palette":["#938e93","#545c3d","#696969","#647c44","#768654","#5c6c44"],"color_groups":[{"hex":"#938e93","weight":0.2734,"lightness":0.5667,"saturation":0.0226,"hue_group":"neutral"},{"hex":"#545c3d","weight":0.2227,"lightness":0.3,"saturation":0.2026,"hue_group":"yellow"},{"hex":"#696969","weight":0.1914,"lightness":0.4118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#647c44","weight":0.1172,"lightness":0.3765,"saturation":0.2917,"hue_group":"yellow"},{"hex":"#768654","weight":0.1133,"lightness":0.4275,"saturation":0.2294,"hue_group":"yellow"},{"hex":"#5c6c44","weight":0.082,"lightness":0.3451,"saturation":0.2273,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mossy_cobblestone.png","family":"mossy_cobblestone","relations":[{"type":"variants","target":"minecraft:mossy_cobblestone","label":"Same family: mossy_cobblestone","confidence":0.75},{"type":"related_sets","target":"minecraft:mossy_cobblestone","label":"Related set: mossy_cobblestone","confidence":0.8},{"type":"variants","target":"minecraft:mossy_cobblestone_slab","label":"Same family: mossy_cobblestone","confidence":0.75},{"type":"related_sets","target":"minecraft:mossy_cobblestone_slab","label":"Related set: mossy_cobblestone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frogspawn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lantern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone","label":"Palette proche: Mossy Cobblestone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Palette proche: Mossy Cobblestone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Palette proche: Mossy Cobblestone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Palette proche: Infested Mossy Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_slab","label":"Palette proche: Mossy Stone Brick Slab","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_stairs","label":"Palette proche: Mossy Stone Brick Stairs","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_wall","label":"Palette proche: Mossy Stone Brick Wall","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_bricks","label":"Palette proche: Mossy Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:cobblestone","label":"Palette proche: Cobblestone","confidence":0.816},{"type":"color_neighbors","target":"minecraft:cobblestone_slab","label":"Palette proche: Cobblestone Slab","confidence":0.816},{"type":"color_neighbors","target":"minecraft:cobblestone_stairs","label":"Palette proche: Cobblestone Stairs","confidence":0.816},{"type":"color_neighbors","target":"minecraft:cobblestone_wall","label":"Palette proche: Cobblestone Wall","confidence":0.816},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par palette: Mossy Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par palette: Mossy Cobblestone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par palette: Mossy Cobblestone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par palette: Infested Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par palette: Mossy Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par palette: Mossy Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par palette: Mossy Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_bricks","label":"Pont de nuance par palette: Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone","label":"Pont de nuance par palette: Cobblestone","confidence":0.848},{"type":"color_bridge","target":"minecraft:cobblestone_slab","label":"Pont de nuance par palette: Cobblestone Slab","confidence":0.848},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:mossy_cobblestone_wall","name":"Mossy Cobblestone Wall","entry_type":"block","description":"A mossy cobblestone wall is a decorative wall variant of mossy cobblestone that generates as part of pillager outposts and is used for building.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added mossy cobblestone Walls."}],"colors":{"primary":"#6e765f","dominant_hex":"#938e93","average_hex":"#6e765f","hue_group":"neutral","lightness":0.4176,"saturation":0.108,"palette":["#938e93","#545c3d","#696969","#647c44","#768654","#5c6c44"],"color_groups":[{"hex":"#938e93","weight":0.2734,"lightness":0.5667,"saturation":0.0226,"hue_group":"neutral"},{"hex":"#545c3d","weight":0.2227,"lightness":0.3,"saturation":0.2026,"hue_group":"yellow"},{"hex":"#696969","weight":0.1914,"lightness":0.4118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#647c44","weight":0.1172,"lightness":0.3765,"saturation":0.2917,"hue_group":"yellow"},{"hex":"#768654","weight":0.1133,"lightness":0.4275,"saturation":0.2294,"hue_group":"yellow"},{"hex":"#5c6c44","weight":0.082,"lightness":0.3451,"saturation":0.2273,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mossy_cobblestone.png","family":"mossy_cobblestone_wall","relations":[{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frogspawn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lantern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone","label":"Palette proche: Mossy Cobblestone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Palette proche: Mossy Cobblestone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Palette proche: Mossy Cobblestone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Palette proche: Infested Mossy Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_slab","label":"Palette proche: Mossy Stone Brick Slab","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_stairs","label":"Palette proche: Mossy Stone Brick Stairs","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_wall","label":"Palette proche: Mossy Stone Brick Wall","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_stone_bricks","label":"Palette proche: Mossy Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:cobblestone","label":"Palette proche: Cobblestone","confidence":0.816},{"type":"color_neighbors","target":"minecraft:cobblestone_slab","label":"Palette proche: Cobblestone Slab","confidence":0.816},{"type":"color_neighbors","target":"minecraft:cobblestone_stairs","label":"Palette proche: Cobblestone Stairs","confidence":0.816},{"type":"color_neighbors","target":"minecraft:cobblestone_wall","label":"Palette proche: Cobblestone Wall","confidence":0.816},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par palette: Mossy Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par palette: Mossy Cobblestone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par palette: Mossy Cobblestone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par palette: Infested Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par palette: Mossy Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par palette: Mossy Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par palette: Mossy Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_bricks","label":"Pont de nuance par palette: Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobblestone","label":"Pont de nuance par palette: Cobblestone","confidence":0.848},{"type":"color_bridge","target":"minecraft:cobblestone_slab","label":"Pont de nuance par palette: Cobblestone Slab","confidence":0.848},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:mossy_stone_brick_slab","name":"Mossy Stone Brick Slab","entry_type":"block","description":"A mossy stone brick slab is a decorative slab variant of mossy stone bricks that generates in ruined portals and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added mossy stone brick slabs."}],"colors":{"primary":"#737969","dominant_hex":"#6f824d","average_hex":"#737969","hue_group":"neutral","lightness":0.4431,"saturation":0.0708,"palette":["#6f824d","#797279","#7c7c7c","#929292","#586540","#5f5f5f"],"color_groups":[{"hex":"#6f824d","weight":0.1992,"lightness":0.4059,"saturation":0.256,"hue_group":"yellow"},{"hex":"#797279","weight":0.1875,"lightness":0.4608,"saturation":0.0298,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1836,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#929292","weight":0.1797,"lightness":0.5725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#586540","weight":0.1406,"lightness":0.3235,"saturation":0.2242,"hue_group":"yellow"},{"hex":"#5f5f5f","weight":0.1094,"lightness":0.3725,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mossy_stone_bricks.png","family":"mossy_stone_brick","relations":[{"type":"variants","target":"minecraft:mossy_stone_brick_stairs","label":"Same family: mossy_stone_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:mossy_stone_brick_stairs","label":"Related set: mossy_stone_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stonecutter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_lichen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Palette proche: Infested Mossy Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_stairs","label":"Palette proche: Mossy Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_wall","label":"Palette proche: Mossy Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_bricks","label":"Palette proche: Mossy Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone","label":"Palette proche: Mossy Cobblestone","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Palette proche: Mossy Cobblestone Slab","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Palette proche: Mossy Cobblestone Stairs","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Palette proche: Mossy Cobblestone Wall","confidence":0.907},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.9},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.9},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par palette: Infested Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par palette: Mossy Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par palette: Mossy Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_bricks","label":"Pont de nuance par palette: Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par palette: Mossy Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par palette: Mossy Cobblestone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par palette: Mossy Cobblestone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par palette: Mossy Cobblestone Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55}],"category":"building"},{"id":"minecraft:mossy_stone_brick_stairs","name":"Mossy Stone Brick Stairs","entry_type":"block","description":"Mossy stone brick stairs are a stairs variant of mossy stone bricks that generates in ruined portals and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added mossy stone brick stairs."}],"colors":{"primary":"#737969","dominant_hex":"#6f824d","average_hex":"#737969","hue_group":"neutral","lightness":0.4431,"saturation":0.0708,"palette":["#6f824d","#797279","#7c7c7c","#929292","#586540","#5f5f5f"],"color_groups":[{"hex":"#6f824d","weight":0.1992,"lightness":0.4059,"saturation":0.256,"hue_group":"yellow"},{"hex":"#797279","weight":0.1875,"lightness":0.4608,"saturation":0.0298,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1836,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#929292","weight":0.1797,"lightness":0.5725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#586540","weight":0.1406,"lightness":0.3235,"saturation":0.2242,"hue_group":"yellow"},{"hex":"#5f5f5f","weight":0.1094,"lightness":0.3725,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mossy_stone_bricks.png","family":"mossy_stone_brick","relations":[{"type":"variants","target":"minecraft:mossy_stone_brick_slab","label":"Same family: mossy_stone_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:mossy_stone_brick_slab","label":"Related set: mossy_stone_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stonecutter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_lichen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Palette proche: Infested Mossy Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_slab","label":"Palette proche: Mossy Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_wall","label":"Palette proche: Mossy Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_bricks","label":"Palette proche: Mossy Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone","label":"Palette proche: Mossy Cobblestone","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Palette proche: Mossy Cobblestone Slab","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Palette proche: Mossy Cobblestone Stairs","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Palette proche: Mossy Cobblestone Wall","confidence":0.907},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.9},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.9},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par palette: Infested Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par palette: Mossy Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par palette: Mossy Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_bricks","label":"Pont de nuance par palette: Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par palette: Mossy Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par palette: Mossy Cobblestone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par palette: Mossy Cobblestone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par palette: Mossy Cobblestone Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55}],"category":"building"},{"id":"minecraft:mossy_stone_brick_wall","name":"Mossy Stone Brick Wall","entry_type":"block","description":"A mossy stone brick wall is a decorative wall variant of mossy stone bricks that generates in ruined portals and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added mossy stone brick walls."}],"colors":{"primary":"#737969","dominant_hex":"#6f824d","average_hex":"#737969","hue_group":"neutral","lightness":0.4431,"saturation":0.0708,"palette":["#6f824d","#797279","#7c7c7c","#929292","#586540","#5f5f5f"],"color_groups":[{"hex":"#6f824d","weight":0.1992,"lightness":0.4059,"saturation":0.256,"hue_group":"yellow"},{"hex":"#797279","weight":0.1875,"lightness":0.4608,"saturation":0.0298,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1836,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#929292","weight":0.1797,"lightness":0.5725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#586540","weight":0.1406,"lightness":0.3235,"saturation":0.2242,"hue_group":"yellow"},{"hex":"#5f5f5f","weight":0.1094,"lightness":0.3725,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mossy_stone_bricks.png","family":"mossy_stone_brick_wall","relations":[{"type":"visual_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stonecutter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_lichen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Palette proche: Infested Mossy Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_slab","label":"Palette proche: Mossy Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_stairs","label":"Palette proche: Mossy Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_bricks","label":"Palette proche: Mossy Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone","label":"Palette proche: Mossy Cobblestone","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Palette proche: Mossy Cobblestone Slab","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Palette proche: Mossy Cobblestone Stairs","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Palette proche: Mossy Cobblestone Wall","confidence":0.907},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.9},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.9},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par palette: Infested Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par palette: Mossy Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par palette: Mossy Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_bricks","label":"Pont de nuance par palette: Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par palette: Mossy Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par palette: Mossy Cobblestone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par palette: Mossy Cobblestone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par palette: Mossy Cobblestone Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55}],"category":"building"},{"id":"minecraft:mossy_stone_bricks","name":"Mossy Stone Bricks","entry_type":"block","description":"Mossy stone bricks are a variant of stone bricks.","history":[{"version":"1.7","status":"added","notes":"added to the language file (en_US.lang). The variants of stone bricks did not originally have their own tooltips."},{"version":"1.8","status":"added","notes":"Added Mossy stone bricks."},{"version":"1.8 14w02a","status":"added","notes":"added for mossy stone bricks."}],"colors":{"primary":"#737969","dominant_hex":"#6f824d","average_hex":"#737969","hue_group":"neutral","lightness":0.4431,"saturation":0.0708,"palette":["#6f824d","#797279","#7c7c7c","#929292","#586540","#5f5f5f"],"color_groups":[{"hex":"#6f824d","weight":0.1992,"lightness":0.4059,"saturation":0.256,"hue_group":"yellow"},{"hex":"#797279","weight":0.1875,"lightness":0.4608,"saturation":0.0298,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1836,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#929292","weight":0.1797,"lightness":0.5725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#586540","weight":0.1406,"lightness":0.3235,"saturation":0.2242,"hue_group":"yellow"},{"hex":"#5f5f5f","weight":0.1094,"lightness":0.3725,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mossy_stone_bricks.png","family":"mossy_stone_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mossy_stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stonecutter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_lichen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Palette proche: Infested Mossy Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_slab","label":"Palette proche: Mossy Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_stairs","label":"Palette proche: Mossy Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mossy_stone_brick_wall","label":"Palette proche: Mossy Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone","label":"Palette proche: Mossy Cobblestone","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_slab","label":"Palette proche: Mossy Cobblestone Slab","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_stairs","label":"Palette proche: Mossy Cobblestone Stairs","confidence":0.907},{"type":"color_neighbors","target":"minecraft:mossy_cobblestone_wall","label":"Palette proche: Mossy Cobblestone Wall","confidence":0.907},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.9},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.9},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par palette: Infested Mossy Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par palette: Mossy Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par palette: Mossy Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par palette: Mossy Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par palette: Mossy Cobblestone","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par palette: Mossy Cobblestone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par palette: Mossy Cobblestone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par palette: Mossy Cobblestone Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55}],"category":"building"},{"id":"minecraft:mourner_pottery_sherd","name":"Mourner Pottery Sherd","entry_type":"item","description":"A mourner pottery sherd is a pottery sherd that depicts a creature resembling the warden. It can be found in cold ocean ruins.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added mourner pottery shards."}],"colors":{"primary":"#683a2f","dominant_hex":"#44241c","average_hex":"#683a2f","hue_group":"red","lightness":0.2961,"saturation":0.3775,"palette":["#44241c","#724234","#844c3c","#542c24","#5c342c","#9a5a4a"],"color_groups":[{"hex":"#44241c","weight":0.2038,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#724234","weight":0.1847,"lightness":0.3255,"saturation":0.3735,"hue_group":"red"},{"hex":"#844c3c","weight":0.172,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#542c24","weight":0.1656,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#5c342c","weight":0.1656,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.1083,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/mourner_pottery_sherd.png","family":"mourner_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:plenty_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:moving_piston","name":"Moving Piston","entry_type":"block","description":"Pistons and sticky pistons have 2 technical blocks that cannot be obtained. These include the piston head and moving piston blocks.","history":[{"version":"1.8 14w29a","status":"added","notes":"Added the \"short=true/false\" block state to piston_head."},{"version":"1.11.1 16w50a","status":"added","notes":"Added a new byte tag source for the piston_extension block entity, which is true if the block represents the piston head itself, and false if it represents a block being pushed."}],"colors":{"primary":"#6e6961","dominant_hex":"#9b8f7a","average_hex":"#6e6961","hue_group":"neutral","lightness":0.4059,"saturation":0.0628,"palette":["#9b8f7a","#59554d","#757473","#6c6c6c","#444444","#313131"],"color_groups":[{"hex":"#9b8f7a","weight":0.3047,"lightness":0.5431,"saturation":0.1416,"hue_group":"yellow"},{"hex":"#59554d","weight":0.2148,"lightness":0.3255,"saturation":0.0723,"hue_group":"neutral"},{"hex":"#757473","weight":0.1523,"lightness":0.4549,"saturation":0.0086,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.125,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.1133,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#313131","weight":0.0898,"lightness":0.1922,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/piston_side.png","family":"moving_piston","relations":[{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:piston","label":"Palette proche: Piston","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piston_head","label":"Palette proche: Piston Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sticky_piston","label":"Palette proche: Sticky Piston","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.9},{"type":"color_neighbors","target":"minecraft:dead_tube_coral","label":"Palette proche: Dead Tube Coral","confidence":0.898},{"type":"color_neighbors","target":"minecraft:dropper","label":"Palette proche: Dropper","confidence":0.897},{"type":"color_neighbors","target":"minecraft:smoker","label":"Palette proche: Smoker","confidence":0.897},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.896},{"type":"color_neighbors","target":"minecraft:acacia_log","label":"Palette proche: Acacia Log","confidence":0.895},{"type":"color_neighbors","target":"minecraft:acacia_wood","label":"Palette proche: Acacia Wood","confidence":0.895},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.893},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.892},{"type":"color_bridge","target":"minecraft:piston","label":"Pont de nuance par palette: Piston","confidence":0.86},{"type":"color_bridge","target":"minecraft:piston_head","label":"Pont de nuance par palette: Piston Head","confidence":0.86},{"type":"color_bridge","target":"minecraft:sticky_piston","label":"Pont de nuance par palette: Sticky Piston","confidence":0.86},{"type":"color_bridge","target":"minecraft:dispenser","label":"Pont de nuance par palette: Dispenser","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral","label":"Pont de nuance par palette: Dead Tube Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dropper","label":"Pont de nuance par palette: Dropper","confidence":0.86},{"type":"color_bridge","target":"minecraft:smoker","label":"Pont de nuance par palette: Smoker","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.556},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55}],"category":"technical"},{"id":"minecraft:mud","name":"Mud","entry_type":"block","description":"Mud is a block found abundantly in mangrove swamps or created by using a water bottle on any type of dirt block. It can be used for crafting or converted into clay using pointed dripstone.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added mud."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb mud, providing the football/regular effect to the mob."}],"colors":{"primary":"#3c393d","dominant_hex":"#34343c","average_hex":"#3c393d","hue_group":"neutral","lightness":0.2314,"saturation":0.0339,"palette":["#34343c","#3c3c3c","#454545","#44443c","#3c3c34","#342c34"],"color_groups":[{"hex":"#34343c","weight":0.2422,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#3c3c3c","weight":0.2305,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#454545","weight":0.1719,"lightness":0.2706,"saturation":0.0,"hue_group":"neutral"},{"hex":"#44443c","weight":0.1562,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#3c3c34","weight":0.1484,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#342c34","weight":0.0508,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mud.png","family":"mud","relations":[{"type":"visual_neighbors","target":"minecraft:gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tile_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.905},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.905},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.905},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.905},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.902},{"type":"color_neighbors","target":"minecraft:basalt","label":"Palette proche: Basalt","confidence":0.894},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.892},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.892},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.892},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.892},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.891},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.886},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:basalt","label":"Pont de nuance par palette: Basalt","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.717},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.684},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.681},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.68},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.68},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.661},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.658},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.658}],"category":""},{"id":"minecraft:mud_brick_slab","name":"Mud Brick Slab","entry_type":"block","description":"A mud brick slab is a decorative slab variant of mud bricks that generates in trail ruins and is used for building.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added mud brick slabs."}],"colors":{"primary":"#89684f","dominant_hex":"#947454","average_hex":"#89684f","hue_group":"red","lightness":0.4235,"saturation":0.2685,"palette":["#947454","#a07e5e","#7c5c4c","#8c644c","#5c4c44","#6c5444"],"color_groups":[{"hex":"#947454","weight":0.293,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#a07e5e","weight":0.2227,"lightness":0.498,"saturation":0.2598,"hue_group":"red"},{"hex":"#7c5c4c","weight":0.1758,"lightness":0.3922,"saturation":0.24,"hue_group":"red"},{"hex":"#8c644c","weight":0.1211,"lightness":0.4235,"saturation":0.2963,"hue_group":"red"},{"hex":"#5c4c44","weight":0.0977,"lightness":0.3137,"saturation":0.15,"hue_group":"red"},{"hex":"#6c5444","weight":0.0898,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mud_bricks.png","family":"mud_brick","relations":[{"type":"variants","target":"minecraft:mud_brick_stairs","label":"Same family: mud_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:mud_brick_stairs","label":"Related set: mud_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mud_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanting_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mud_brick_stairs","label":"Palette proche: Mud Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_brick_wall","label":"Palette proche: Mud Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_bricks","label":"Palette proche: Mud Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:packed_mud","label":"Palette proche: Packed Mud","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_mushroom_block","label":"Palette proche: Brown Mushroom Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dripstone_block","label":"Palette proche: Dripstone Block","confidence":0.924},{"type":"color_neighbors","target":"minecraft:pointed_dripstone","label":"Palette proche: Pointed Dripstone","confidence":0.922},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.902},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.902},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.882},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.882},{"type":"color_neighbors","target":"minecraft:brown_mushroom","label":"Palette proche: Brown Mushroom","confidence":0.88},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.884},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.884},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.884},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.873},{"type":"color_analogous","target":"minecraft:mud_brick_stairs","label":"Couleurs analogues: Mud Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_wall","label":"Couleurs analogues: Mud Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_bricks","label":"Couleurs analogues: Mud Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:packed_mud","label":"Couleurs analogues: Packed Mud","confidence":0.96},{"type":"color_analogous","target":"minecraft:rooted_dirt","label":"Couleurs analogues: Rooted Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:farmland","label":"Couleurs analogues: Farmland","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_mushroom_block","label":"Couleurs analogues: Brown Mushroom Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_trapdoor","label":"Couleurs analogues: Jungle Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.954},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.954},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.954},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.911},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.911},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.881},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.878},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.856},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.933},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.93},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.917},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.913},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.913},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.913},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.912},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.908},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.884},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.835},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.826},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.777},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.777},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.772},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.737},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"building"},{"id":"minecraft:mud_brick_stairs","name":"Mud Brick Stairs","entry_type":"block","description":"Mud brick stairs are a decorative stairs variant of mud bricks that generates in trail ruins and is used for building.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added mud brick stairs."}],"colors":{"primary":"#89684f","dominant_hex":"#947454","average_hex":"#89684f","hue_group":"red","lightness":0.4235,"saturation":0.2685,"palette":["#947454","#a07e5e","#7c5c4c","#8c644c","#5c4c44","#6c5444"],"color_groups":[{"hex":"#947454","weight":0.293,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#a07e5e","weight":0.2227,"lightness":0.498,"saturation":0.2598,"hue_group":"red"},{"hex":"#7c5c4c","weight":0.1758,"lightness":0.3922,"saturation":0.24,"hue_group":"red"},{"hex":"#8c644c","weight":0.1211,"lightness":0.4235,"saturation":0.2963,"hue_group":"red"},{"hex":"#5c4c44","weight":0.0977,"lightness":0.3137,"saturation":0.15,"hue_group":"red"},{"hex":"#6c5444","weight":0.0898,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mud_bricks.png","family":"mud_brick","relations":[{"type":"variants","target":"minecraft:mud_brick_slab","label":"Same family: mud_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:mud_brick_slab","label":"Related set: mud_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mud_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanting_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mud_brick_slab","label":"Palette proche: Mud Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_brick_wall","label":"Palette proche: Mud Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_bricks","label":"Palette proche: Mud Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:packed_mud","label":"Palette proche: Packed Mud","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_mushroom_block","label":"Palette proche: Brown Mushroom Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dripstone_block","label":"Palette proche: Dripstone Block","confidence":0.924},{"type":"color_neighbors","target":"minecraft:pointed_dripstone","label":"Palette proche: Pointed Dripstone","confidence":0.922},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.902},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.902},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.882},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.882},{"type":"color_neighbors","target":"minecraft:brown_mushroom","label":"Palette proche: Brown Mushroom","confidence":0.88},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.884},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.884},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.884},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.873},{"type":"color_analogous","target":"minecraft:mud_brick_slab","label":"Couleurs analogues: Mud Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_wall","label":"Couleurs analogues: Mud Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_bricks","label":"Couleurs analogues: Mud Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:packed_mud","label":"Couleurs analogues: Packed Mud","confidence":0.96},{"type":"color_analogous","target":"minecraft:rooted_dirt","label":"Couleurs analogues: Rooted Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:farmland","label":"Couleurs analogues: Farmland","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_mushroom_block","label":"Couleurs analogues: Brown Mushroom Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_trapdoor","label":"Couleurs analogues: Jungle Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.954},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.954},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.954},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.911},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.911},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.881},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.878},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.856},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.933},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.93},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.917},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.913},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.913},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.913},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.912},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.908},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.884},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.835},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.826},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.777},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.777},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.772},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.737},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"building"},{"id":"minecraft:mud_brick_wall","name":"Mud Brick Wall","entry_type":"block","description":"A mud brick wall is a decorative wall variant of mud bricks that generates in trail ruins and is used for building.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added mud brick walls."}],"colors":{"primary":"#89684f","dominant_hex":"#947454","average_hex":"#89684f","hue_group":"red","lightness":0.4235,"saturation":0.2685,"palette":["#947454","#a07e5e","#7c5c4c","#8c644c","#5c4c44","#6c5444"],"color_groups":[{"hex":"#947454","weight":0.293,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#a07e5e","weight":0.2227,"lightness":0.498,"saturation":0.2598,"hue_group":"red"},{"hex":"#7c5c4c","weight":0.1758,"lightness":0.3922,"saturation":0.24,"hue_group":"red"},{"hex":"#8c644c","weight":0.1211,"lightness":0.4235,"saturation":0.2963,"hue_group":"red"},{"hex":"#5c4c44","weight":0.0977,"lightness":0.3137,"saturation":0.15,"hue_group":"red"},{"hex":"#6c5444","weight":0.0898,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mud_bricks.png","family":"mud_brick_wall","relations":[{"type":"visual_neighbors","target":"minecraft:mud_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanting_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mud_brick_slab","label":"Palette proche: Mud Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_brick_stairs","label":"Palette proche: Mud Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_bricks","label":"Palette proche: Mud Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:packed_mud","label":"Palette proche: Packed Mud","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_mushroom_block","label":"Palette proche: Brown Mushroom Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dripstone_block","label":"Palette proche: Dripstone Block","confidence":0.924},{"type":"color_neighbors","target":"minecraft:pointed_dripstone","label":"Palette proche: Pointed Dripstone","confidence":0.922},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.902},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.902},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.882},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.882},{"type":"color_neighbors","target":"minecraft:brown_mushroom","label":"Palette proche: Brown Mushroom","confidence":0.88},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.884},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.884},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.884},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.873},{"type":"color_analogous","target":"minecraft:mud_brick_slab","label":"Couleurs analogues: Mud Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_stairs","label":"Couleurs analogues: Mud Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_bricks","label":"Couleurs analogues: Mud Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:packed_mud","label":"Couleurs analogues: Packed Mud","confidence":0.96},{"type":"color_analogous","target":"minecraft:rooted_dirt","label":"Couleurs analogues: Rooted Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:farmland","label":"Couleurs analogues: Farmland","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_mushroom_block","label":"Couleurs analogues: Brown Mushroom Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_trapdoor","label":"Couleurs analogues: Jungle Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.954},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.954},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.954},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.911},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.911},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.881},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.878},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.856},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.933},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.93},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.917},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.913},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.913},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.913},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.912},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.908},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.884},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.835},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.826},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.777},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.777},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.772},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.737},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"building"},{"id":"minecraft:mud_bricks","name":"Mud Bricks","entry_type":"block","description":"Mud bricks are a block obtained by crafting 4 packed mud.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added mud bricks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb mud bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#89684f","dominant_hex":"#947454","average_hex":"#89684f","hue_group":"red","lightness":0.4235,"saturation":0.2685,"palette":["#947454","#a07e5e","#7c5c4c","#8c644c","#5c4c44","#6c5444"],"color_groups":[{"hex":"#947454","weight":0.293,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#a07e5e","weight":0.2227,"lightness":0.498,"saturation":0.2598,"hue_group":"red"},{"hex":"#7c5c4c","weight":0.1758,"lightness":0.3922,"saturation":0.24,"hue_group":"red"},{"hex":"#8c644c","weight":0.1211,"lightness":0.4235,"saturation":0.2963,"hue_group":"red"},{"hex":"#5c4c44","weight":0.0977,"lightness":0.3137,"saturation":0.15,"hue_group":"red"},{"hex":"#6c5444","weight":0.0898,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mud_bricks.png","family":"mud_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:mud_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanting_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mud_brick_slab","label":"Palette proche: Mud Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_brick_stairs","label":"Palette proche: Mud Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_brick_wall","label":"Palette proche: Mud Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:packed_mud","label":"Palette proche: Packed Mud","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_mushroom_block","label":"Palette proche: Brown Mushroom Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dripstone_block","label":"Palette proche: Dripstone Block","confidence":0.924},{"type":"color_neighbors","target":"minecraft:pointed_dripstone","label":"Palette proche: Pointed Dripstone","confidence":0.922},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.902},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.902},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.882},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.882},{"type":"color_neighbors","target":"minecraft:brown_mushroom","label":"Palette proche: Brown Mushroom","confidence":0.88},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.884},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.884},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.884},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.873},{"type":"color_analogous","target":"minecraft:mud_brick_slab","label":"Couleurs analogues: Mud Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_stairs","label":"Couleurs analogues: Mud Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_wall","label":"Couleurs analogues: Mud Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:packed_mud","label":"Couleurs analogues: Packed Mud","confidence":0.96},{"type":"color_analogous","target":"minecraft:rooted_dirt","label":"Couleurs analogues: Rooted Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:farmland","label":"Couleurs analogues: Farmland","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_mushroom_block","label":"Couleurs analogues: Brown Mushroom Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_trapdoor","label":"Couleurs analogues: Jungle Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.954},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.954},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.954},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.911},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.911},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.881},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.878},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.856},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.933},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.93},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.917},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.913},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.913},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.913},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.912},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.908},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.884},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.835},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.826},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.777},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.777},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.772},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.737},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"building"},{"id":"minecraft:muddy_mangrove_roots","name":"Muddy Mangrove Roots","entry_type":"block","description":"Muddy mangrove roots are a decorative variant of mangrove roots with dirt-like properties.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added muddy mangrove roots."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb muddy mangrove roots, providing the football/regular effect to the mob."}],"colors":{"primary":"#443b30","dominant_hex":"#40403c","average_hex":"#443b30","hue_group":"yellow","lightness":0.2275,"saturation":0.1724,"palette":["#40403c","#5c4c2c","#4c3c24","#34333b","#443424","#3c2c24"],"color_groups":[{"hex":"#40403c","weight":0.3203,"lightness":0.2431,"saturation":0.0323,"hue_group":"neutral"},{"hex":"#5c4c2c","weight":0.1562,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"},{"hex":"#4c3c24","weight":0.1484,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#34333b","weight":0.1328,"lightness":0.2157,"saturation":0.0727,"hue_group":"neutral"},{"hex":"#443424","weight":0.1289,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#3c2c24","weight":0.1133,"lightness":0.1882,"saturation":0.25,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/muddy_mangrove_roots_side.png","family":"muddy_mangrove_roots","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_roots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_roots","label":"Palette proche: Mangrove Roots","confidence":0.905},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.9},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.9},{"type":"color_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Palette proche: Dark Oak Hanging Sign","confidence":0.871},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Palette proche: Dark Oak Wall Hanging Sign","confidence":0.871},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Palette proche: Stripped Dark Oak Log","confidence":0.871},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Palette proche: Stripped Dark Oak Wood","confidence":0.871},{"type":"color_neighbors","target":"minecraft:gray_terracotta","label":"Palette proche: Gray Terracotta","confidence":0.865},{"type":"color_neighbors","target":"minecraft:dark_oak_shelf","label":"Palette proche: Dark Oak Shelf","confidence":0.848},{"type":"color_neighbors","target":"minecraft:mud","label":"Palette proche: Mud","confidence":0.844},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.828},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.828},{"type":"color_bridge","target":"minecraft:mangrove_roots","label":"Pont de nuance par sous-ton: Mangrove Roots","confidence":0.9},{"type":"color_bridge","target":"minecraft:mangrove_log","label":"Pont de nuance par sous-ton: Mangrove Log","confidence":0.9},{"type":"color_bridge","target":"minecraft:mangrove_wood","label":"Pont de nuance par sous-ton: Mangrove Wood","confidence":0.9},{"type":"color_bridge","target":"minecraft:dark_oak_hanging_sign","label":"Pont de nuance par sous-ton: Dark Oak Hanging Sign","confidence":0.894},{"type":"color_bridge","target":"minecraft:dark_oak_wall_hanging_sign","label":"Pont de nuance par sous-ton: Dark Oak Wall Hanging Sign","confidence":0.894},{"type":"color_bridge","target":"minecraft:stripped_dark_oak_log","label":"Pont de nuance par sous-ton: Stripped Dark Oak Log","confidence":0.894},{"type":"color_bridge","target":"minecraft:stripped_dark_oak_wood","label":"Pont de nuance par sous-ton: Stripped Dark Oak Wood","confidence":0.894},{"type":"color_bridge","target":"minecraft:gray_terracotta","label":"Pont de nuance par sous-ton: Gray Terracotta","confidence":0.889},{"type":"color_bridge","target":"minecraft:dark_oak_shelf","label":"Pont de nuance par sous-ton: Dark Oak Shelf","confidence":0.875},{"type":"color_bridge","target":"minecraft:mud","label":"Pont de nuance par palette: Mud","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.723},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.689},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.683},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.682},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.682},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.674},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.674},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.674}],"category":"natural"},{"id":"minecraft:mule","name":"Mule","entry_type":"mob","description":"A mule is a passive mob created by breeding a horse and a donkey together. It is very similar to a donkey, except it cannot breed.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added mules, assisted by DrZhark (John Olarte), creator of the Mo' Creatures mod, whose horses are a baseline for Minecraft's mule models . [ 1 ]"},{"version":"wiki-history","status":"added","notes":"Added leads , which can be used to leash tamed mules."},{"version":"13w21a","status":"added","notes":"Added new GUI for mules, to control their saddles and inventories ."}],"colors":{"primary":"#432d21","dominant_hex":"#4a2a1e","average_hex":"#432d21","hue_group":"red","lightness":0.1961,"saturation":0.34,"palette":["#4a2a1e","#3c1e16","#221818","#2c1816","#917958","#141414"],"color_groups":[{"hex":"#4a2a1e","weight":0.3916,"lightness":0.2039,"saturation":0.4231,"hue_group":"red"},{"hex":"#3c1e16","weight":0.1613,"lightness":0.1608,"saturation":0.4634,"hue_group":"red"},{"hex":"#221818","weight":0.1388,"lightness":0.1137,"saturation":0.1724,"hue_group":"red"},{"hex":"#2c1816","weight":0.1252,"lightness":0.1294,"saturation":0.3333,"hue_group":"red"},{"hex":"#917958","weight":0.124,"lightness":0.4569,"saturation":0.2446,"hue_group":"yellow"},{"hex":"#141414","weight":0.0591,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/mule.png","family":"mule","relations":[{"type":"visual_neighbors","target":"minecraft:tadpole","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/chestnut","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:mule_spawn_egg","name":"Mule Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#42291e","dominant_hex":"#562e1c","average_hex":"#42291e","hue_group":"red","lightness":0.1882,"saturation":0.375,"palette":["#562e1c","#3b2316","#251515","#1a0e0e","#63442e","#927d66"],"color_groups":[{"hex":"#562e1c","weight":0.2353,"lightness":0.2235,"saturation":0.5088,"hue_group":"red"},{"hex":"#3b2316","weight":0.2157,"lightness":0.1588,"saturation":0.4568,"hue_group":"red"},{"hex":"#251515","weight":0.2108,"lightness":0.1137,"saturation":0.2759,"hue_group":"red"},{"hex":"#1a0e0e","weight":0.1471,"lightness":0.0784,"saturation":0.3,"hue_group":"red"},{"hex":"#63442e","weight":0.1225,"lightness":0.2843,"saturation":0.3655,"hue_group":"red"},{"hex":"#927d66","weight":0.0686,"lightness":0.4863,"saturation":0.1774,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/mule_spawn_egg.png","family":"mule_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:nether_brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_charge","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:written_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_scrap","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:mushroom_stem","name":"Mushroom Stem","entry_type":"block","description":"A mushroom block is a solid block that makes up a huge mushroom, which consists of a mushroom stem and brown mushroom blocks or red mushroom blocks, depending on the color of the huge mushroom.","history":[{"version":"1.8","status":"added","notes":"Added mushroom blocks."},{"version":"wiki-history","status":"added","notes":"added as an item within the inventory . Before this, it could be found naturally or be placed with / setblock ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb mushroom blocks, providing the curling stone/slow sliding effect to the mob."}],"colors":{"primary":"#cbc5ba","dominant_hex":"#d4ccc4","average_hex":"#cbc5ba","hue_group":"yellow","lightness":0.7627,"saturation":0.1405,"palette":["#d4ccc4","#ccc4bc","#c4c4b4","#c4bcac"],"color_groups":[{"hex":"#d4ccc4","weight":0.3008,"lightness":0.8,"saturation":0.1569,"hue_group":"yellow"},{"hex":"#ccc4bc","weight":0.2578,"lightness":0.7686,"saturation":0.1356,"hue_group":"yellow"},{"hex":"#c4c4b4","weight":0.25,"lightness":0.7373,"saturation":0.1194,"hue_group":"neutral"},{"hex":"#c4bcac","weight":0.1914,"lightness":0.7216,"saturation":0.169,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mushroom_stem.png","family":"mushroom_stem","relations":[{"type":"visual_neighbors","target":"minecraft:end_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sculk_shrieker","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_pillar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:sculk_shrieker","label":"Palette proche: Sculk Shrieker","confidence":0.818},{"type":"color_neighbors","target":"minecraft:chiseled_quartz_block","label":"Palette proche: Chiseled Quartz Block","confidence":0.814},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.804},{"type":"color_neighbors","target":"minecraft:conduit","label":"Palette proche: Conduit","confidence":0.802},{"type":"color_neighbors","target":"minecraft:quartz_bricks","label":"Palette proche: Quartz Bricks","confidence":0.802},{"type":"color_neighbors","target":"minecraft:quartz_block","label":"Palette proche: Quartz Block","confidence":0.801},{"type":"color_neighbors","target":"minecraft:quartz_slab","label":"Palette proche: Quartz Slab","confidence":0.801},{"type":"color_neighbors","target":"minecraft:quartz_stairs","label":"Palette proche: Quartz Stairs","confidence":0.801},{"type":"color_neighbors","target":"minecraft:white_terracotta","label":"Palette proche: White Terracotta","confidence":0.789},{"type":"color_neighbors","target":"minecraft:quartz_pillar","label":"Palette proche: Quartz Pillar","confidence":0.78},{"type":"color_neighbors","target":"minecraft:iron_trapdoor","label":"Palette proche: Iron Trapdoor","confidence":0.774},{"type":"color_neighbors","target":"minecraft:bone_block","label":"Palette proche: Bone Block","confidence":0.765},{"type":"color_bridge","target":"minecraft:sculk_shrieker","label":"Pont de nuance par sous-ton: Sculk Shrieker","confidence":0.85},{"type":"color_bridge","target":"minecraft:chiseled_quartz_block","label":"Pont de nuance par sous-ton: Chiseled Quartz Block","confidence":0.847},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par palette: Calcite","confidence":0.839},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par palette: Conduit","confidence":0.837},{"type":"color_bridge","target":"minecraft:quartz_bricks","label":"Pont de nuance par sous-ton: Quartz Bricks","confidence":0.837},{"type":"color_bridge","target":"minecraft:quartz_block","label":"Pont de nuance par sous-ton: Quartz Block","confidence":0.836},{"type":"color_bridge","target":"minecraft:quartz_slab","label":"Pont de nuance par sous-ton: Quartz Slab","confidence":0.836},{"type":"color_bridge","target":"minecraft:quartz_stairs","label":"Pont de nuance par sous-ton: Quartz Stairs","confidence":0.836},{"type":"color_bridge","target":"minecraft:white_terracotta","label":"Pont de nuance par sous-ton: White Terracotta","confidence":0.826},{"type":"color_bridge","target":"minecraft:quartz_pillar","label":"Pont de nuance par sous-ton: Quartz Pillar","confidence":0.819},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.654},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.654},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.65},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.628},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.628},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.628},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.628},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.624}],"category":"natural"},{"id":"minecraft:mushroom_stew","name":"Mushroom Stew","entry_type":"item","description":"Mushroom stew is a food item crafted from mushrooms.","history":[{"version":"0.31 20100130","status":"added","notes":"Added mushroom stew."}],"colors":{"primary":"#6a4927","dominant_hex":"#3c2a0b","average_hex":"#6a4927","hue_group":"yellow","lightness":0.2843,"saturation":0.4621,"palette":["#3c2a0b","#49370c","#cc9171","#1c1404","#744c0c","#bc7c5c"],"color_groups":[{"hex":"#3c2a0b","weight":0.2162,"lightness":0.1392,"saturation":0.6901,"hue_group":"yellow"},{"hex":"#49370c","weight":0.2027,"lightness":0.1667,"saturation":0.7176,"hue_group":"yellow"},{"hex":"#cc9171","weight":0.2027,"lightness":0.6216,"saturation":0.4715,"hue_group":"red"},{"hex":"#1c1404","weight":0.1622,"lightness":0.0627,"saturation":0.75,"hue_group":"yellow"},{"hex":"#744c0c","weight":0.1216,"lightness":0.251,"saturation":0.8125,"hue_group":"yellow"},{"hex":"#bc7c5c","weight":0.0946,"lightness":0.549,"saturation":0.4174,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/mushroom_stew.png","family":"mushroom_stew","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:spruce_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_chest_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:poisonous_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:book","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crossbow","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_11","name":"Music Disc 11","entry_type":"item","description":"\"11\" refers to both a song composed by C418, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from creepers killed by skeletons.","history":[{"version":"v1.0.16","status":"added","notes":"added to the game's assets."},{"version":"1.0.0","status":"added","notes":"Added music disc \"11\". It is unobtainable in Survival mode."}],"colors":{"primary":"#303030","dominant_hex":"#141414","average_hex":"#303030","hue_group":"neutral","lightness":0.1882,"saturation":0.0,"palette":["#141414","#444444","#343434","#242424","#545454","#8c8c8c"],"color_groups":[{"hex":"#141414","weight":0.2931,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.2414,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#343434","weight":0.181,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.1379,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1379,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.0086,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_11.png","family":"music_disc_11","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_stal","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flint","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flint_and_steel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_strad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coal","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_13","name":"Music Disc 13","entry_type":"item","description":"\"13\" (in-game) or Thirteen (soundtrack name) refers to both a song composed by C418, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from creepers killed by skeletons, or from various structures, where it is commonly found in monster rooms and woodland mansions.","history":[{"version":"v1.0.14","status":"added","notes":"Added music disc \"13\"."}],"colors":{"primary":"#44433a","dominant_hex":"#444444","average_hex":"#44433a","hue_group":"neutral","lightness":0.2471,"saturation":0.0794,"palette":["#444444","#242424","#545454","#141414","#fcdc04","#fcfcfc"],"color_groups":[{"hex":"#444444","weight":0.3898,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.2966,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1186,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1102,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcdc04","weight":0.0424,"lightness":0.502,"saturation":0.9764,"hue_group":"yellow"},{"hex":"#fcfcfc","weight":0.0424,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_13.png","family":"music_disc_13","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snout_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mellohi","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_blocks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_5","name":"Music Disc 5","entry_type":"item","description":"\"5\" refers to both a song composed by Samuel \u00c5berg, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from crafting with disc fragments.","history":[{"version":"1.19 22w16a","status":"added","notes":"Added music disc \"5\"."}],"colors":{"primary":"#304146","dominant_hex":"#20333e","average_hex":"#304146","hue_group":"cyan","lightness":0.2314,"saturation":0.1864,"palette":["#20333e","#2b484b","#545454","#567071","#111f27","#0c1414"],"color_groups":[{"hex":"#20333e","weight":0.2542,"lightness":0.1843,"saturation":0.3191,"hue_group":"cyan"},{"hex":"#2b484b","weight":0.2288,"lightness":0.2314,"saturation":0.2712,"hue_group":"cyan"},{"hex":"#545454","weight":0.1695,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#567071","weight":0.1525,"lightness":0.3902,"saturation":0.1357,"hue_group":"cyan"},{"hex":"#111f27","weight":0.1017,"lightness":0.1098,"saturation":0.3929,"hue_group":"cyan"},{"hex":"#0c1414","weight":0.0932,"lightness":0.0627,"saturation":0.25,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_5.png","family":"music_disc_5","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:disc_fragment_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:recovery_compass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silence_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ward_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_shard","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_blocks","name":"Music Disc Blocks","entry_type":"item","description":"\"blocks\" refers to both a song composed by C418, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from creepers killed by skeletons.","history":[{"version":"1.0.0","status":"added","notes":"Added music disc \"blocks\". It is currently unobtainable in Survival mode."}],"colors":{"primary":"#423634","dominant_hex":"#444444","average_hex":"#423634","hue_group":"neutral","lightness":0.2314,"saturation":0.1186,"palette":["#444444","#242424","#545454","#141414","#e4543c"],"color_groups":[{"hex":"#444444","weight":0.3898,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.2966,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1186,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1102,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e4543c","weight":0.0847,"lightness":0.5647,"saturation":0.7568,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_blocks.png","family":"music_disc_blocks","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mellohi","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snout_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_13","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ink_sac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rib_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_cat","name":"Music Disc Cat","entry_type":"item","description":"\"cat\" refers to both a song composed by C418, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from creepers killed by skeletons, or from various structures, where it is commonly found in monster rooms and woodland mansions.","history":[{"version":"v1.0.14","status":"added","notes":"Added music disc \"cat\"."}],"colors":{"primary":"#34422f","dominant_hex":"#444444","average_hex":"#34422f","hue_group":"green","lightness":0.2216,"saturation":0.1681,"palette":["#444444","#242424","#545454","#141414","#4cfc04","#1c6c04"],"color_groups":[{"hex":"#444444","weight":0.3898,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.2966,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1186,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1102,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4cfc04","weight":0.0678,"lightness":0.502,"saturation":0.9764,"hue_group":"green"},{"hex":"#1c6c04","weight":0.0169,"lightness":0.2196,"saturation":0.9286,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_cat.png","family":"music_disc_cat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_far","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_hoe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_horse_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_axe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator","label":"Shared hue group: green","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_chirp","name":"Music Disc Chirp","entry_type":"item","description":"\"chirp\" refers to both a song composed by C418, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from creepers killed by skeletons.","history":[{"version":"1.0.0","status":"added","notes":"Added music disc \"chirp\". It is unobtainable in Survival mode."}],"colors":{"primary":"#3e2f2f","dominant_hex":"#444444","average_hex":"#3e2f2f","hue_group":"red","lightness":0.2137,"saturation":0.1376,"palette":["#444444","#242424","#545454","#141414","#7c0404","#fc0404"],"color_groups":[{"hex":"#444444","weight":0.3898,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.2966,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1186,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1102,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c0404","weight":0.0508,"lightness":0.251,"saturation":0.9375,"hue_group":"red"},{"hex":"#fc0404","weight":0.0339,"lightness":0.502,"saturation":0.9764,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_chirp.png","family":"music_disc_chirp","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raiser_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_creator","name":"Music Disc Creator","entry_type":"item","description":"\"Creator\" refers to both a song composed by Lena Raine, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from trial chambers, as a rare reward given by ominous vaults.","history":[{"version":"1.21 24w18a","status":"added","notes":"Added music disc \"Creator\"."}],"colors":{"primary":"#58886b","dominant_hex":"#2e5248","average_hex":"#58886b","hue_group":"green","lightness":0.4392,"saturation":0.2143,"palette":["#2e5248","#63bb98","#4c9484","#54a47c","#e3cb81","#243c2c"],"color_groups":[{"hex":"#2e5248","weight":0.2881,"lightness":0.251,"saturation":0.2813,"hue_group":"cyan"},{"hex":"#63bb98","weight":0.2203,"lightness":0.5608,"saturation":0.3929,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1271,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1271,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#e3cb81","weight":0.1271,"lightness":0.698,"saturation":0.6364,"hue_group":"yellow"},{"hex":"#243c2c","weight":0.1102,"lightness":0.1882,"saturation":0.25,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_creator.png","family":"music_disc_creator","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_ball","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_hoe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_creator_music_box","name":"Music Disc Creator Music Box","entry_type":"item","description":"\"Creator (Music Box)\" refers to both a song composed by Lena Raine, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from trial chambers, as a rare drop from decorated pots.","history":[{"version":"1.21 24w18a","status":"added","notes":"Added music disc \"Creator (Music Box)\"."}],"colors":{"primary":"#aa6648","dominant_hex":"#dd8862","average_hex":"#aa6648","hue_group":"red","lightness":0.4745,"saturation":0.405,"palette":["#dd8862","#c46c4c","#6c3424","#4c241c","#f7d78a","#8c4c34"],"color_groups":[{"hex":"#dd8862","weight":0.2627,"lightness":0.6255,"saturation":0.644,"hue_group":"red"},{"hex":"#c46c4c","weight":0.2542,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"},{"hex":"#6c3424","weight":0.2203,"lightness":0.2824,"saturation":0.5,"hue_group":"red"},{"hex":"#4c241c","weight":0.1102,"lightness":0.2039,"saturation":0.4615,"hue_group":"red"},{"hex":"#f7d78a","weight":0.0847,"lightness":0.7549,"saturation":0.872,"hue_group":"yellow"},{"hex":"#8c4c34","weight":0.0678,"lightness":0.3765,"saturation":0.4583,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_creator_music_box.png","family":"music_disc_creator_music_box","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bolt_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_far","name":"Music Disc Far","entry_type":"item","description":"\"far\" refers to both a song composed by C418, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from creepers killed by skeletons.","history":[{"version":"1.0.0","status":"added","notes":"Added music disc \"far\". It is unobtainable in Survival mode."}],"colors":{"primary":"#384434","dominant_hex":"#444444","average_hex":"#384434","hue_group":"green","lightness":0.2353,"saturation":0.1333,"palette":["#444444","#242424","#545454","#141414","#b4fc04","#04fc94"],"color_groups":[{"hex":"#444444","weight":0.3898,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.2966,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1186,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1102,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4fc04","weight":0.0508,"lightness":0.502,"saturation":0.9764,"hue_group":"yellow"},{"hex":"#04fc94","weight":0.0339,"lightness":0.502,"saturation":0.9764,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_far.png","family":"music_disc_far","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_cat","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_hoe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_horse_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_axe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator","label":"Shared hue group: green","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_lava_chicken","name":"Music Disc Lava Chicken","entry_type":"item","description":"\"Lava Chicken\" refers to both a cover of \"Steve's Lava Chicken\" composed by Hyper Potions, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained by killing chicken jockeys.","history":[{"version":"1.21.7","status":"added","notes":"Added the \"Lava Chicken\" music disc."}],"colors":{"primary":"#5e4645","dominant_hex":"#484848","average_hex":"#5e4645","hue_group":"red","lightness":0.3196,"saturation":0.1534,"palette":["#484848","#242424","#dac8c8","#541414","#dc1c1c","#3c3c3c"],"color_groups":[{"hex":"#484848","weight":0.5085,"lightness":0.2824,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.1525,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dac8c8","weight":0.1102,"lightness":0.8196,"saturation":0.1957,"hue_group":"red"},{"hex":"#541414","weight":0.0847,"lightness":0.2039,"saturation":0.6154,"hue_group":"red"},{"hex":"#dc1c1c","weight":0.0847,"lightness":0.4863,"saturation":0.7742,"hue_group":"red"},{"hex":"#3c3c3c","weight":0.0593,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_lava_chicken.png","family":"music_disc_lava_chicken","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raiser_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_relic","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_mall","name":"Music Disc Mall","entry_type":"item","description":"\"mall\" refers to both a song composed by C418, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from creepers killed by skeletons.","history":[{"version":"1.0.0","status":"added","notes":"Added music disc \"mall\". It is unobtainable in Survival mode."}],"colors":{"primary":"#3a3744","dominant_hex":"#444444","average_hex":"#3a3744","hue_group":"neutral","lightness":0.2412,"saturation":0.1057,"palette":["#444444","#242424","#545454","#141414","#9c74fc","#4c04fc"],"color_groups":[{"hex":"#444444","weight":0.3898,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.2966,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1186,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1102,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9c74fc","weight":0.0678,"lightness":0.7216,"saturation":0.9577,"hue_group":"blue"},{"hex":"#4c04fc","weight":0.0169,"lightness":0.502,"saturation":0.9764,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_mall.png","family":"music_disc_mall","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_mellohi","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snout_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_blocks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_13","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ink_sac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rib_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_mellohi","name":"Music Disc Mellohi","entry_type":"item","description":"\"mellohi\" refers to both a song composed by C418, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from creepers killed by skeletons.","history":[{"version":"1.0.0","status":"added","notes":"Added music disc \"mellohi\". It is unobtainable in Survival mode."}],"colors":{"primary":"#413744","dominant_hex":"#444444","average_hex":"#413744","hue_group":"neutral","lightness":0.2412,"saturation":0.1057,"palette":["#444444","#242424","#545454","#141414","#b404fc","#fcfcfc"],"color_groups":[{"hex":"#444444","weight":0.3898,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.2966,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1186,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1102,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b404fc","weight":0.0508,"lightness":0.502,"saturation":0.9764,"hue_group":"purple"},{"hex":"#fcfcfc","weight":0.0339,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_mellohi.png","family":"music_disc_mellohi","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snout_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_blocks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_13","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ink_sac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rib_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_otherside","name":"Music Disc Otherside","entry_type":"item","description":"\"otherside\" refers to both a song composed by Lena Raine, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from various structures, but is most commonly found in ancient cities.","history":[{"version":"1.18 21w42a","status":"added","notes":"Added music disc \"otherside\"."}],"colors":{"primary":"#343d3a","dominant_hex":"#444444","average_hex":"#343d3a","hue_group":"neutral","lightness":0.2216,"saturation":0.0796,"palette":["#444444","#242424","#576a53","#141414","#1e825a","#3faff7"],"color_groups":[{"hex":"#444444","weight":0.3898,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.2966,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#576a53","weight":0.1441,"lightness":0.3706,"saturation":0.1217,"hue_group":"green"},{"hex":"#141414","weight":0.1102,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#1e825a","weight":0.0339,"lightness":0.3137,"saturation":0.625,"hue_group":"cyan"},{"hex":"#3faff7","weight":0.0254,"lightness":0.6078,"saturation":0.92,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_otherside.png","family":"music_disc_otherside","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_13","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mellohi","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snout_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_pigstep","name":"Music Disc Pigstep","entry_type":"item","description":"\"Pigstep\" refers to both a song composed by Lena Raine, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from bastion remnants.","history":[{"version":"1.16 20w16a","status":"added","notes":"Added music disc \"Pigstep\"."}],"colors":{"primary":"#6e3629","dominant_hex":"#7b3b38","average_hex":"#6e3629","hue_group":"red","lightness":0.2961,"saturation":0.457,"palette":["#7b3b38","#542424","#4c1414","#1c0404","#f9c93d","#6c2424"],"color_groups":[{"hex":"#7b3b38","weight":0.4576,"lightness":0.351,"saturation":0.3743,"hue_group":"red"},{"hex":"#542424","weight":0.178,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#4c1414","weight":0.1186,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"},{"hex":"#1c0404","weight":0.1102,"lightness":0.0627,"saturation":0.75,"hue_group":"red"},{"hex":"#f9c93d","weight":0.0847,"lightness":0.6078,"saturation":0.94,"hue_group":"yellow"},{"hex":"#6c2424","weight":0.0508,"lightness":0.2824,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_pigstep.png","family":"music_disc_pigstep","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:mangrove_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_precipice","name":"Music Disc Precipice","entry_type":"item","description":"\"Precipice\" refers to both a song composed by Aaron Cherof, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from trial chambers, as a rare reward given by vaults or found in reward chests.","history":[{"version":"1.21 24w18a","status":"added","notes":"Added music disc \"Precipice\"."}],"colors":{"primary":"#696b62","dominant_hex":"#636e6d","average_hex":"#696b62","hue_group":"neutral","lightness":0.402,"saturation":0.0439,"palette":["#636e6d","#403d34","#86867d","#74746c","#d28370","#73b99b"],"color_groups":[{"hex":"#636e6d","weight":0.3136,"lightness":0.4098,"saturation":0.0526,"hue_group":"neutral"},{"hex":"#403d34","weight":0.2966,"lightness":0.2275,"saturation":0.1034,"hue_group":"neutral"},{"hex":"#86867d","weight":0.1271,"lightness":0.5078,"saturation":0.0359,"hue_group":"neutral"},{"hex":"#74746c","weight":0.0932,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#d28370","weight":0.0932,"lightness":0.6314,"saturation":0.5213,"hue_group":"red"},{"hex":"#73b99b","weight":0.0763,"lightness":0.5882,"saturation":0.3333,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_precipice.png","family":"music_disc_precipice","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:elytra","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coast_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_boots","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_relic","name":"Music Disc Relic","entry_type":"item","description":"\"Relic\" refers to both a song composed by Aaron Cherof, and a music disc that plays the song when inserted in a jukebox. This music disc is obtained from brushing suspicious gravel in trail ruins.","history":[{"version":"1.20 23w17a","status":"added","notes":"Added music disc \"Relic\"."}],"colors":{"primary":"#6b4b44","dominant_hex":"#734434","average_hex":"#6b4b44","hue_group":"red","lightness":0.3431,"saturation":0.2229,"palette":["#734434","#8f5c4c","#44241c","#341c14","#5bbef4","#b1794e"],"color_groups":[{"hex":"#734434","weight":0.3644,"lightness":0.3275,"saturation":0.3772,"hue_group":"red"},{"hex":"#8f5c4c","weight":0.2034,"lightness":0.4294,"saturation":0.3059,"hue_group":"red"},{"hex":"#44241c","weight":0.178,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#341c14","weight":0.1102,"lightness":0.1412,"saturation":0.4444,"hue_group":"red"},{"hex":"#5bbef4","weight":0.0847,"lightness":0.6569,"saturation":0.8743,"hue_group":"cyan"},{"hex":"#b1794e","weight":0.0593,"lightness":0.5,"saturation":0.3882,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_relic.png","family":"music_disc_relic","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_upgrade_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_key","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_stal","name":"Music Disc Stal","entry_type":"item","description":"\"stal\" refers to both a song composed by C418, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from creepers killed by skeletons.","history":[{"version":"1.0.0","status":"added","notes":"Added music disc \"stal\". It is unobtainable in Survival mode."}],"colors":{"primary":"#2f2f2f","dominant_hex":"#444444","average_hex":"#2f2f2f","hue_group":"neutral","lightness":0.1843,"saturation":0.0,"palette":["#444444","#242424","#545454","#141414","#040404"],"color_groups":[{"hex":"#444444","weight":0.3898,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.2966,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1186,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1102,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.0847,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_stal.png","family":"music_disc_stal","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_11","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flint","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flint_and_steel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_strad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coal","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rib_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_strad","name":"Music Disc Strad","entry_type":"item","description":"\"strad\" refers to both a song composed by C418, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from creepers killed by skeletons.","history":[{"version":"1.0.0","status":"added","notes":"Added music disc \"strad\". It is unobtainable in Survival mode."}],"colors":{"primary":"#444444","dominant_hex":"#444444","average_hex":"#444444","hue_group":"neutral","lightness":0.2667,"saturation":0.0,"palette":["#444444","#242424","#545454","#141414","#fcfcfc"],"color_groups":[{"hex":"#444444","weight":0.3898,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.2966,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1186,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1102,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.0847,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_strad.png","family":"music_disc_strad","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:flint_and_steel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gunpowder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_horn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:furnace_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_star","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_11","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flint","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_stal","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:compass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_helmet","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_tears","name":"Music Disc Tears","entry_type":"item","description":"\"Tears\" refers to both a song composed by Amos Roddy, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained by killing ghasts by a player-deflected ghast fireball.","history":[{"version":"1.21.6 25w20a","status":"added","notes":"Added music disc \"Tears\"."}],"colors":{"primary":"#abaeae","dominant_hex":"#ece4e4","average_hex":"#abaeae","hue_group":"neutral","lightness":0.6765,"saturation":0.0182,"palette":["#ece4e4","#545656","#fcfcfc","#3c3c3c","#8c8c8c","#a1c9c9"],"color_groups":[{"hex":"#ece4e4","weight":0.3898,"lightness":0.9098,"saturation":0.1739,"hue_group":"red"},{"hex":"#545656","weight":0.1864,"lightness":0.3333,"saturation":0.0118,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1186,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c3c","weight":0.1102,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1102,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a1c9c9","weight":0.0847,"lightness":0.7098,"saturation":0.2703,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_tears.png","family":"music_disc_tears","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:tipped_arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polar_bear_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:splash_potion","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_star","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_wait","name":"Music Disc Wait","entry_type":"item","description":"\"wait\", previously known as \"where are we now\", refers to both a song composed by C418, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from creepers killed by skeletons.","history":[{"version":"wiki","status":"observed","notes":"Wiki revision 3477747 at 2026-03-14T22:08:28Z."}],"colors":{"primary":"#383b41","dominant_hex":"#444444","average_hex":"#383b41","hue_group":"neutral","lightness":0.2373,"saturation":0.0744,"palette":["#444444","#242424","#545454","#141414","#5c84c4","#84ace4"],"color_groups":[{"hex":"#444444","weight":0.3898,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.2966,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1186,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1102,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c84c4","weight":0.0508,"lightness":0.5647,"saturation":0.4685,"hue_group":"blue"},{"hex":"#84ace4","weight":0.0339,"lightness":0.7059,"saturation":0.64,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_wait.png","family":"music_disc_wait","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_13","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mellohi","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snout_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_blocks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:music_disc_ward","name":"Music Disc Ward","entry_type":"item","description":"\"ward\" refers to both a song composed by C418, and a music disc that plays the song when inserted in a jukebox. The music disc is obtained from creepers killed by skeletons.","history":[{"version":"1.0.0","status":"added","notes":"Added music disc \"ward\". It is unobtainable in Survival mode."}],"colors":{"primary":"#353c32","dominant_hex":"#444444","average_hex":"#353c32","hue_group":"neutral","lightness":0.2157,"saturation":0.0909,"palette":["#444444","#242424","#545454","#141414","#046c54","#8cc404"],"color_groups":[{"hex":"#444444","weight":0.3898,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.2966,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1186,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1102,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#046c54","weight":0.0424,"lightness":0.2196,"saturation":0.9286,"hue_group":"cyan"},{"hex":"#8cc404","weight":0.0424,"lightness":0.3922,"saturation":0.96,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/music_disc_ward.png","family":"music_disc_ward","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rib_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mellohi","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snout_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_13","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_blocks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:mutton","name":"Mutton","entry_type":"item","description":"Cooked mutton is a food item obtained from cooking raw mutton.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added cooked mutton."}],"colors":{"primary":"#b53f38","dominant_hex":"#d7322a","average_hex":"#b53f38","hue_group":"red","lightness":0.4647,"saturation":0.5274,"palette":["#d7322a","#e46a62","#94241c","#b13129","#440c04","#ec8c84"],"color_groups":[{"hex":"#d7322a","weight":0.1981,"lightness":0.5039,"saturation":0.6838,"hue_group":"red"},{"hex":"#e46a62","weight":0.1792,"lightness":0.6392,"saturation":0.7065,"hue_group":"red"},{"hex":"#94241c","weight":0.1698,"lightness":0.3451,"saturation":0.6818,"hue_group":"red"},{"hex":"#b13129","weight":0.1698,"lightness":0.4275,"saturation":0.6239,"hue_group":"red"},{"hex":"#440c04","weight":0.1415,"lightness":0.1412,"saturation":0.8889,"hue_group":"red"},{"hex":"#ec8c84","weight":0.1415,"lightness":0.7216,"saturation":0.7324,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/mutton.png","family":"mutton","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glistering_melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chestplate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:mycelium","name":"Mycelium","entry_type":"block","description":"Mycelium is a particularly rare variant of dirt that is only found naturally in mushroom fields biomes. It has a particle effect that resembles tiny spores being released constantly from the surface.","history":[{"version":"1.0.0","status":"added","notes":"Added mycelium."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb mycelium, providing the curling stone/slow sliding effect to the mob."}],"colors":{"primary":"#6f6365","dominant_hex":"#6c5c64","average_hex":"#6f6365","hue_group":"neutral","lightness":0.4118,"saturation":0.0571,"palette":["#6c5c64","#6c646c","#746464","#7c6c74","#866e6e","#5c5c54"],"color_groups":[{"hex":"#6c5c64","weight":0.25,"lightness":0.3922,"saturation":0.08,"hue_group":"neutral"},{"hex":"#6c646c","weight":0.2266,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#746464","weight":0.2109,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#7c6c74","weight":0.1133,"lightness":0.4549,"saturation":0.069,"hue_group":"neutral"},{"hex":"#866e6e","weight":0.1055,"lightness":0.4784,"saturation":0.0984,"hue_group":"neutral"},{"hex":"#5c5c54","weight":0.0938,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/mycelium_top.png","family":"mycelium","relations":[{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.886},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.886},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.879},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.879},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.879},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.879},{"type":"color_neighbors","target":"minecraft:stone_bricks","label":"Palette proche: Stone Bricks","confidence":0.879},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.874},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.874},{"type":"color_neighbors","target":"minecraft:coal_ore","label":"Palette proche: Coal Ore","confidence":0.873},{"type":"color_neighbors","target":"minecraft:suspicious_gravel","label":"Palette proche: Suspicious Gravel","confidence":0.87},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.868},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_stairs","label":"Pont de nuance par palette: Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_wall","label":"Pont de nuance par palette: Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_bricks","label":"Pont de nuance par palette: Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:coal_ore","label":"Pont de nuance par palette: Coal Ore","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.555},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55}],"category":""},{"id":"minecraft:name_tag","name":"Name Tag","entry_type":"item","description":"A name tag is an item used to give a name to a mob after writing one on the tag using an anvil. Most named mobs do not despawn or count towards the mob cap.","history":[{"version":"1.6.1 13w16b","status":"added","notes":"Added name tags. They can now be found in dungeon chests ."},{"version":"14w27a","status":"added","notes":"added and naming one \"Toast\" gives it a special memorial skin."},{"version":"1.9 15w44a","status":"added","notes":"Added name tags to mineshaft chests ."}],"colors":{"primary":"#a69b7f","dominant_hex":"#d4c29a","average_hex":"#a69b7f","hue_group":"yellow","lightness":0.5745,"saturation":0.1797,"palette":["#d4c29a","#746c5c","#ccac6c","#7b939c","#5c4414","#dee8e8"],"color_groups":[{"hex":"#d4c29a","weight":0.2963,"lightness":0.7176,"saturation":0.4028,"hue_group":"yellow"},{"hex":"#746c5c","weight":0.213,"lightness":0.4078,"saturation":0.1154,"hue_group":"neutral"},{"hex":"#ccac6c","weight":0.1389,"lightness":0.6118,"saturation":0.4848,"hue_group":"yellow"},{"hex":"#7b939c","weight":0.1296,"lightness":0.5471,"saturation":0.1429,"hue_group":"cyan"},{"hex":"#5c4414","weight":0.1204,"lightness":0.2196,"saturation":0.6429,"hue_group":"yellow"},{"hex":"#dee8e8","weight":0.1019,"lightness":0.8902,"saturation":0.1786,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/name_tag.png","family":"name_tag","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mojang_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:painting","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bordure_indented_banner_pattern","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:nautilus","name":"Nautilus","entry_type":"mob","description":"A nautilus is a neutral mob that can be tamed, saddled, and ridden as an underwater mount that can dash and protects the rider from drowning. With no rider, it uses its dash to hunt pufferfish and to briefly retaliate if attacked. It can also be equipped with nautilus armor.","history":[{"version":"1.21.11 25w41a","status":"added","notes":"Added nautiluses."},{"version":"wiki-history","status":"added","notes":"Added inventory UI for the nautilus."},{"version":"wiki-history","status":"added","notes":"Added ambient, dash, recovering, hurting and dying sounds for when nautiluses and baby nautiluses are on land."}],"colors":{"primary":"#bf6f5d","dominant_hex":"#98352d","average_hex":"#bf6f5d","hue_group":"red","lightness":0.5569,"saturation":0.4336,"palette":["#98352d","#ea654d","#e6d8ce","#be4c36","#c5ad95","#a97f61"],"color_groups":[{"hex":"#98352d","weight":0.3016,"lightness":0.3863,"saturation":0.5431,"hue_group":"red"},{"hex":"#ea654d","weight":0.2025,"lightness":0.6098,"saturation":0.7889,"hue_group":"red"},{"hex":"#e6d8ce","weight":0.1458,"lightness":0.8549,"saturation":0.3243,"hue_group":"red"},{"hex":"#be4c36","weight":0.1293,"lightness":0.4784,"saturation":0.5574,"hue_group":"red"},{"hex":"#c5ad95","weight":0.1138,"lightness":0.6784,"saturation":0.2927,"hue_group":"yellow"},{"hex":"#a97f61","weight":0.1069,"lightness":0.5216,"saturation":0.2951,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/nautilus/nautilus.png","family":"nautilus","relations":[{"type":"visual_neighbors","target":"minecraft:nautilus_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:nautilus_baby","name":"Nautilus Baby","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#bf7868","dominant_hex":"#df7463","average_hex":"#bf7868","hue_group":"red","lightness":0.5784,"saturation":0.4047,"palette":["#df7463","#b4413b","#ad8d71","#96322e","#e3dbd2","#ccc4ac"],"color_groups":[{"hex":"#df7463","weight":0.2417,"lightness":0.6314,"saturation":0.6596,"hue_group":"red"},{"hex":"#b4413b","weight":0.1937,"lightness":0.4686,"saturation":0.5063,"hue_group":"red"},{"hex":"#ad8d71","weight":0.19,"lightness":0.5608,"saturation":0.2679,"hue_group":"red"},{"hex":"#96322e","weight":0.1642,"lightness":0.3843,"saturation":0.5306,"hue_group":"red"},{"hex":"#e3dbd2","weight":0.1144,"lightness":0.8569,"saturation":0.2329,"hue_group":"yellow"},{"hex":"#ccc4ac","weight":0.0959,"lightness":0.7373,"saturation":0.2388,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/nautilus/nautilus_baby.png","family":"nautilus_baby","relations":[{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:nautilus_shell","name":"Nautilus Shell","entry_type":"item","description":"A nautilus shell is an item rarely dropped by killed nautiluses, or always dropped by drowned that hold them, as well as being able to be fished out of water. Nautilus shells, along with hearts of the sea, are required to craft conduits.","history":[{"version":"1.13 18w15a","status":"added","notes":"Added nautilus shells."},{"version":"1.14 19w05a","status":"added","notes":"Added wandering traders , which sell nautilus shells."},{"version":"1.21.11 25w41a","status":"added","notes":"Added nautiluses , which can drop nautilus shells when killed."}],"colors":{"primary":"#a38671","dominant_hex":"#a4846c","average_hex":"#a38671","hue_group":"red","lightness":0.5412,"saturation":0.2137,"palette":["#a4846c","#c0a591","#664f37","#d4ccc4","#94624c","#cc744c"],"color_groups":[{"hex":"#a4846c","weight":0.2405,"lightness":0.5333,"saturation":0.2353,"hue_group":"red"},{"hex":"#c0a591","weight":0.2215,"lightness":0.6608,"saturation":0.2717,"hue_group":"red"},{"hex":"#664f37","weight":0.2152,"lightness":0.3078,"saturation":0.2994,"hue_group":"yellow"},{"hex":"#d4ccc4","weight":0.1519,"lightness":0.8,"saturation":0.1569,"hue_group":"yellow"},{"hex":"#94624c","weight":0.1329,"lightness":0.4392,"saturation":0.3214,"hue_group":"red"},{"hex":"#cc744c","weight":0.038,"lightness":0.549,"saturation":0.5565,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/nautilus_shell.png","family":"nautilus_shell","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:zoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brush","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_bucket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_scute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shears","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_horse_armor","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:nautilus_spawn_egg","name":"Nautilus Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#926963","dominant_hex":"#c5bfb0","average_hex":"#926963","hue_group":"red","lightness":0.4804,"saturation":0.1918,"palette":["#c5bfb0","#33588c","#653d2a","#de5f47","#84543c","#b34232"],"color_groups":[{"hex":"#c5bfb0","weight":0.232,"lightness":0.7314,"saturation":0.1533,"hue_group":"yellow"},{"hex":"#33588c","weight":0.1959,"lightness":0.3745,"saturation":0.466,"hue_group":"blue"},{"hex":"#653d2a","weight":0.1701,"lightness":0.2804,"saturation":0.4126,"hue_group":"red"},{"hex":"#de5f47","weight":0.1701,"lightness":0.5745,"saturation":0.6959,"hue_group":"red"},{"hex":"#84543c","weight":0.1289,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#b34232","weight":0.1031,"lightness":0.449,"saturation":0.5633,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/nautilus_spawn_egg.png","family":"nautilus_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:zombified_piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_scute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shears","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_bucket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_shell","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:writable_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:nether_brick","name":"Nether Brick","entry_type":"item","description":"A Nether brick is an item made by smelting netherrack in a furnace, and is used to craft the Nether bricks block and its variants.","history":[{"version":"1.5 13w01a","status":"added","notes":"Added Nether brick items."}],"colors":{"primary":"#3e2025","dominant_hex":"#3a1c24","average_hex":"#3e2025","hue_group":"red","lightness":0.1843,"saturation":0.3191,"palette":["#3a1c24","#44242c","#341c1c","#4c282c","#542c34","#1c1414"],"color_groups":[{"hex":"#3a1c24","weight":0.2963,"lightness":0.1686,"saturation":0.3488,"hue_group":"red"},{"hex":"#44242c","weight":0.1852,"lightness":0.2039,"saturation":0.3077,"hue_group":"red"},{"hex":"#341c1c","weight":0.1778,"lightness":0.1569,"saturation":0.3,"hue_group":"red"},{"hex":"#4c282c","weight":0.1259,"lightness":0.2275,"saturation":0.3103,"hue_group":"red"},{"hex":"#542c34","weight":0.1185,"lightness":0.251,"saturation":0.3125,"hue_group":"red"},{"hex":"#1c1414","weight":0.0963,"lightness":0.0941,"saturation":0.1667,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/nether_brick.png","family":"nether_brick","relations":[{"type":"variants","target":"minecraft:nether_brick_fence","label":"Same family: nether_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:nether_brick_fence","label":"Related set: nether_brick","confidence":0.8},{"type":"variants","target":"minecraft:nether_brick_slab","label":"Same family: nether_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:nether_brick_slab","label":"Related set: nether_brick","confidence":0.8},{"type":"variants","target":"minecraft:nether_brick_stairs","label":"Same family: nether_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:nether_brick_stairs","label":"Related set: nether_brick","confidence":0.8},{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_scrap","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mule_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_horse_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_pod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_charge","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:plenty_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:written_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:nether_brick_fence","name":"Nether Brick Fence","entry_type":"block","description":"A Nether brick fence is a Nether brick variant of fences used to form Nether fortresses in the Nether.","history":[{"version":"1.0.0","status":"added","notes":"Added Nether brick fences."}],"colors":{"primary":"#2c161a","dominant_hex":"#331b1c","average_hex":"#2c161a","hue_group":"red","lightness":0.1294,"saturation":0.3333,"palette":["#331b1c","#1c0c14","#241414","#3c1c1c","#44242c","#3c1c24"],"color_groups":[{"hex":"#331b1c","weight":0.3359,"lightness":0.1529,"saturation":0.3077,"hue_group":"red"},{"hex":"#1c0c14","weight":0.2031,"lightness":0.0784,"saturation":0.4,"hue_group":"red"},{"hex":"#241414","weight":0.1641,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#3c1c1c","weight":0.1445,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#44242c","weight":0.082,"lightness":0.2039,"saturation":0.3077,"hue_group":"red"},{"hex":"#3c1c24","weight":0.0703,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/nether_bricks.png","family":"nether_brick","relations":[{"type":"variants","target":"minecraft:nether_brick_slab","label":"Same family: nether_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:nether_brick_slab","label":"Related set: nether_brick","confidence":0.8},{"type":"variants","target":"minecraft:nether_brick_stairs","label":"Same family: nether_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:nether_brick_stairs","label":"Related set: nether_brick","confidence":0.8},{"type":"variants","target":"minecraft:nether_brick","label":"Same family: nether_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:nether_brick","label":"Related set: nether_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Palette proche: Chiseled Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_slab","label":"Palette proche: Nether Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_stairs","label":"Palette proche: Nether Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_wall","label":"Palette proche: Nether Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_bricks","label":"Palette proche: Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_nether_bricks","label":"Palette proche: Cracked Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_terracotta","label":"Palette proche: Black Terracotta","confidence":0.851},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.79},{"type":"color_neighbors","target":"minecraft:cherry_log","label":"Palette proche: Cherry Log","confidence":0.762},{"type":"color_neighbors","target":"minecraft:cherry_wood","label":"Palette proche: Cherry Wood","confidence":0.762},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.753},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.753},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.795},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.783},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.782},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.773},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.77},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.761},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.757},{"type":"color_analogous","target":"minecraft:nether_brick_slab","label":"Couleurs analogues: Nether Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_stairs","label":"Couleurs analogues: Nether Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_wall","label":"Couleurs analogues: Nether Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_bricks","label":"Couleurs analogues: Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_nether_bricks","label":"Couleurs analogues: Chiseled Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cracked_nether_bricks","label":"Couleurs analogues: Cracked Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:enchanting_table","label":"Couleurs analogues: Enchanting Table","confidence":0.941},{"type":"color_analogous","target":"minecraft:cactus_flower","label":"Couleurs analogues: Cactus Flower","confidence":0.863},{"type":"color_complement","target":"minecraft:warped_nylium","label":"Contraste complementaire: Warped Nylium","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_brick_slab","label":"Contraste complementaire: Prismarine Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_brick_stairs","label":"Contraste complementaire: Prismarine Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_bricks","label":"Contraste complementaire: Prismarine Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:twisting_vines","label":"Contraste complementaire: Twisting Vines","confidence":0.903},{"type":"color_complement","target":"minecraft:nether_sprouts","label":"Contraste complementaire: Nether Sprouts","confidence":0.868},{"type":"color_complement","target":"minecraft:warped_trapdoor","label":"Contraste complementaire: Warped Trapdoor","confidence":0.845},{"type":"color_complement","target":"minecraft:potted_warped_roots","label":"Contraste complementaire: Potted Warped Roots","confidence":0.838},{"type":"color_triad","target":"minecraft:blue_candle","label":"Harmonie triadique: Blue Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_glazed_terracotta","label":"Harmonie triadique: Blue Glazed Terracotta","confidence":0.955},{"type":"color_triad","target":"minecraft:slime_block","label":"Harmonie triadique: Slime Block","confidence":0.949},{"type":"color_triad","target":"minecraft:test_block","label":"Harmonie triadique: Test Block","confidence":0.949},{"type":"color_triad","target":"minecraft:blue_stained_glass","label":"Harmonie triadique: Blue Stained Glass","confidence":0.948},{"type":"color_triad","target":"minecraft:potatoes","label":"Harmonie triadique: Potatoes","confidence":0.938},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.929},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.882},{"type":"color_square","target":"minecraft:green_concrete","label":"Harmonie carree: Green Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:moss_block","label":"Harmonie carree: Moss Block","confidence":0.96},{"type":"color_square","target":"minecraft:moss_carpet","label":"Harmonie carree: Moss Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:green_shulker_box","label":"Harmonie carree: Green Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:green_stained_glass","label":"Harmonie carree: Green Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:green_glazed_terracotta","label":"Harmonie carree: Green Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:big_dripleaf","label":"Harmonie carree: Big Dripleaf","confidence":0.952},{"type":"color_square","target":"minecraft:green_candle","label":"Harmonie carree: Green Candle","confidence":0.947},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.815},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.781},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.769},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.769},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.769},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.769},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.759},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.728}],"category":"building"},{"id":"minecraft:nether_brick_slab","name":"Nether Brick Slab","entry_type":"block","description":"A Nether brick slab is a decorative slab variant of Nether bricks that does not generate naturally and is used for building.","history":[{"version":"1.4.6 12w49a","status":"added","notes":"Added Nether brick slabs."}],"colors":{"primary":"#2c161a","dominant_hex":"#331b1c","average_hex":"#2c161a","hue_group":"red","lightness":0.1294,"saturation":0.3333,"palette":["#331b1c","#1c0c14","#241414","#3c1c1c","#44242c","#3c1c24"],"color_groups":[{"hex":"#331b1c","weight":0.3359,"lightness":0.1529,"saturation":0.3077,"hue_group":"red"},{"hex":"#1c0c14","weight":0.2031,"lightness":0.0784,"saturation":0.4,"hue_group":"red"},{"hex":"#241414","weight":0.1641,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#3c1c1c","weight":0.1445,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#44242c","weight":0.082,"lightness":0.2039,"saturation":0.3077,"hue_group":"red"},{"hex":"#3c1c24","weight":0.0703,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/nether_bricks.png","family":"nether_brick","relations":[{"type":"variants","target":"minecraft:nether_brick_fence","label":"Same family: nether_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:nether_brick_fence","label":"Related set: nether_brick","confidence":0.8},{"type":"variants","target":"minecraft:nether_brick_stairs","label":"Same family: nether_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:nether_brick_stairs","label":"Related set: nether_brick","confidence":0.8},{"type":"variants","target":"minecraft:nether_brick","label":"Same family: nether_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:nether_brick","label":"Related set: nether_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:nether_brick_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Palette proche: Chiseled Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_fence","label":"Palette proche: Nether Brick Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_stairs","label":"Palette proche: Nether Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_wall","label":"Palette proche: Nether Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_bricks","label":"Palette proche: Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_nether_bricks","label":"Palette proche: Cracked Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_terracotta","label":"Palette proche: Black Terracotta","confidence":0.851},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.79},{"type":"color_neighbors","target":"minecraft:cherry_log","label":"Palette proche: Cherry Log","confidence":0.762},{"type":"color_neighbors","target":"minecraft:cherry_wood","label":"Palette proche: Cherry Wood","confidence":0.762},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.753},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.753},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.795},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.783},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.782},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.773},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.77},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.761},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.757},{"type":"color_analogous","target":"minecraft:nether_brick_fence","label":"Couleurs analogues: Nether Brick Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_stairs","label":"Couleurs analogues: Nether Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_wall","label":"Couleurs analogues: Nether Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_bricks","label":"Couleurs analogues: Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_nether_bricks","label":"Couleurs analogues: Chiseled Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cracked_nether_bricks","label":"Couleurs analogues: Cracked Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:enchanting_table","label":"Couleurs analogues: Enchanting Table","confidence":0.941},{"type":"color_analogous","target":"minecraft:cactus_flower","label":"Couleurs analogues: Cactus Flower","confidence":0.863},{"type":"color_complement","target":"minecraft:warped_nylium","label":"Contraste complementaire: Warped Nylium","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_brick_slab","label":"Contraste complementaire: Prismarine Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_brick_stairs","label":"Contraste complementaire: Prismarine Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_bricks","label":"Contraste complementaire: Prismarine Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:twisting_vines","label":"Contraste complementaire: Twisting Vines","confidence":0.903},{"type":"color_complement","target":"minecraft:nether_sprouts","label":"Contraste complementaire: Nether Sprouts","confidence":0.868},{"type":"color_complement","target":"minecraft:warped_trapdoor","label":"Contraste complementaire: Warped Trapdoor","confidence":0.845},{"type":"color_complement","target":"minecraft:potted_warped_roots","label":"Contraste complementaire: Potted Warped Roots","confidence":0.838},{"type":"color_triad","target":"minecraft:blue_candle","label":"Harmonie triadique: Blue Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_glazed_terracotta","label":"Harmonie triadique: Blue Glazed Terracotta","confidence":0.955},{"type":"color_triad","target":"minecraft:slime_block","label":"Harmonie triadique: Slime Block","confidence":0.949},{"type":"color_triad","target":"minecraft:test_block","label":"Harmonie triadique: Test Block","confidence":0.949},{"type":"color_triad","target":"minecraft:blue_stained_glass","label":"Harmonie triadique: Blue Stained Glass","confidence":0.948},{"type":"color_triad","target":"minecraft:potatoes","label":"Harmonie triadique: Potatoes","confidence":0.938},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.929},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.882},{"type":"color_square","target":"minecraft:green_concrete","label":"Harmonie carree: Green Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:moss_block","label":"Harmonie carree: Moss Block","confidence":0.96},{"type":"color_square","target":"minecraft:moss_carpet","label":"Harmonie carree: Moss Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:green_shulker_box","label":"Harmonie carree: Green Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:green_stained_glass","label":"Harmonie carree: Green Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:green_glazed_terracotta","label":"Harmonie carree: Green Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:big_dripleaf","label":"Harmonie carree: Big Dripleaf","confidence":0.952},{"type":"color_square","target":"minecraft:green_candle","label":"Harmonie carree: Green Candle","confidence":0.947},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.815},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.781},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.769},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.769},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.769},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.769},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.759},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.728}],"category":"building"},{"id":"minecraft:nether_brick_stairs","name":"Nether Brick Stairs","entry_type":"block","description":"Nether brick stairs are a decorative stairs variant of Nether bricks that generate in Nether fortress staircases and are used for building.","history":[{"version":"1.0.0","status":"added","notes":"Added Nether brick stairs."}],"colors":{"primary":"#2c161a","dominant_hex":"#331b1c","average_hex":"#2c161a","hue_group":"red","lightness":0.1294,"saturation":0.3333,"palette":["#331b1c","#1c0c14","#241414","#3c1c1c","#44242c","#3c1c24"],"color_groups":[{"hex":"#331b1c","weight":0.3359,"lightness":0.1529,"saturation":0.3077,"hue_group":"red"},{"hex":"#1c0c14","weight":0.2031,"lightness":0.0784,"saturation":0.4,"hue_group":"red"},{"hex":"#241414","weight":0.1641,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#3c1c1c","weight":0.1445,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#44242c","weight":0.082,"lightness":0.2039,"saturation":0.3077,"hue_group":"red"},{"hex":"#3c1c24","weight":0.0703,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/nether_bricks.png","family":"nether_brick","relations":[{"type":"variants","target":"minecraft:nether_brick_fence","label":"Same family: nether_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:nether_brick_fence","label":"Related set: nether_brick","confidence":0.8},{"type":"variants","target":"minecraft:nether_brick_slab","label":"Same family: nether_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:nether_brick_slab","label":"Related set: nether_brick","confidence":0.8},{"type":"variants","target":"minecraft:nether_brick","label":"Same family: nether_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:nether_brick","label":"Related set: nether_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:nether_brick_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Palette proche: Chiseled Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_fence","label":"Palette proche: Nether Brick Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_slab","label":"Palette proche: Nether Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_wall","label":"Palette proche: Nether Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_bricks","label":"Palette proche: Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_nether_bricks","label":"Palette proche: Cracked Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_terracotta","label":"Palette proche: Black Terracotta","confidence":0.851},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.79},{"type":"color_neighbors","target":"minecraft:cherry_log","label":"Palette proche: Cherry Log","confidence":0.762},{"type":"color_neighbors","target":"minecraft:cherry_wood","label":"Palette proche: Cherry Wood","confidence":0.762},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.753},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.753},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.795},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.783},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.782},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.773},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.77},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.761},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.757},{"type":"color_analogous","target":"minecraft:nether_brick_fence","label":"Couleurs analogues: Nether Brick Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_slab","label":"Couleurs analogues: Nether Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_wall","label":"Couleurs analogues: Nether Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_bricks","label":"Couleurs analogues: Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_nether_bricks","label":"Couleurs analogues: Chiseled Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cracked_nether_bricks","label":"Couleurs analogues: Cracked Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:enchanting_table","label":"Couleurs analogues: Enchanting Table","confidence":0.941},{"type":"color_analogous","target":"minecraft:cactus_flower","label":"Couleurs analogues: Cactus Flower","confidence":0.863},{"type":"color_complement","target":"minecraft:warped_nylium","label":"Contraste complementaire: Warped Nylium","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_brick_slab","label":"Contraste complementaire: Prismarine Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_brick_stairs","label":"Contraste complementaire: Prismarine Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_bricks","label":"Contraste complementaire: Prismarine Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:twisting_vines","label":"Contraste complementaire: Twisting Vines","confidence":0.903},{"type":"color_complement","target":"minecraft:nether_sprouts","label":"Contraste complementaire: Nether Sprouts","confidence":0.868},{"type":"color_complement","target":"minecraft:warped_trapdoor","label":"Contraste complementaire: Warped Trapdoor","confidence":0.845},{"type":"color_complement","target":"minecraft:potted_warped_roots","label":"Contraste complementaire: Potted Warped Roots","confidence":0.838},{"type":"color_triad","target":"minecraft:blue_candle","label":"Harmonie triadique: Blue Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_glazed_terracotta","label":"Harmonie triadique: Blue Glazed Terracotta","confidence":0.955},{"type":"color_triad","target":"minecraft:slime_block","label":"Harmonie triadique: Slime Block","confidence":0.949},{"type":"color_triad","target":"minecraft:test_block","label":"Harmonie triadique: Test Block","confidence":0.949},{"type":"color_triad","target":"minecraft:blue_stained_glass","label":"Harmonie triadique: Blue Stained Glass","confidence":0.948},{"type":"color_triad","target":"minecraft:potatoes","label":"Harmonie triadique: Potatoes","confidence":0.938},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.929},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.882},{"type":"color_square","target":"minecraft:green_concrete","label":"Harmonie carree: Green Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:moss_block","label":"Harmonie carree: Moss Block","confidence":0.96},{"type":"color_square","target":"minecraft:moss_carpet","label":"Harmonie carree: Moss Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:green_shulker_box","label":"Harmonie carree: Green Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:green_stained_glass","label":"Harmonie carree: Green Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:green_glazed_terracotta","label":"Harmonie carree: Green Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:big_dripleaf","label":"Harmonie carree: Big Dripleaf","confidence":0.952},{"type":"color_square","target":"minecraft:green_candle","label":"Harmonie carree: Green Candle","confidence":0.947},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.815},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.781},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.769},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.769},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.769},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.769},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.759},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.728}],"category":"building"},{"id":"minecraft:nether_brick_wall","name":"Nether Brick Wall","entry_type":"block","description":"A Nether brick wall is a decorative wall variant of Nether bricks that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added Nether brick walls."}],"colors":{"primary":"#2c161a","dominant_hex":"#331b1c","average_hex":"#2c161a","hue_group":"red","lightness":0.1294,"saturation":0.3333,"palette":["#331b1c","#1c0c14","#241414","#3c1c1c","#44242c","#3c1c24"],"color_groups":[{"hex":"#331b1c","weight":0.3359,"lightness":0.1529,"saturation":0.3077,"hue_group":"red"},{"hex":"#1c0c14","weight":0.2031,"lightness":0.0784,"saturation":0.4,"hue_group":"red"},{"hex":"#241414","weight":0.1641,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#3c1c1c","weight":0.1445,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#44242c","weight":0.082,"lightness":0.2039,"saturation":0.3077,"hue_group":"red"},{"hex":"#3c1c24","weight":0.0703,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/nether_bricks.png","family":"nether_brick_wall","relations":[{"type":"visual_neighbors","target":"minecraft:nether_brick_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Palette proche: Chiseled Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_fence","label":"Palette proche: Nether Brick Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_slab","label":"Palette proche: Nether Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_stairs","label":"Palette proche: Nether Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_bricks","label":"Palette proche: Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_nether_bricks","label":"Palette proche: Cracked Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_terracotta","label":"Palette proche: Black Terracotta","confidence":0.851},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.79},{"type":"color_neighbors","target":"minecraft:cherry_log","label":"Palette proche: Cherry Log","confidence":0.762},{"type":"color_neighbors","target":"minecraft:cherry_wood","label":"Palette proche: Cherry Wood","confidence":0.762},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.753},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.753},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.795},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.783},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.782},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.773},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.77},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.761},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.757},{"type":"color_analogous","target":"minecraft:nether_brick_fence","label":"Couleurs analogues: Nether Brick Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_slab","label":"Couleurs analogues: Nether Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_stairs","label":"Couleurs analogues: Nether Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_bricks","label":"Couleurs analogues: Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_nether_bricks","label":"Couleurs analogues: Chiseled Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cracked_nether_bricks","label":"Couleurs analogues: Cracked Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:enchanting_table","label":"Couleurs analogues: Enchanting Table","confidence":0.941},{"type":"color_analogous","target":"minecraft:cactus_flower","label":"Couleurs analogues: Cactus Flower","confidence":0.863},{"type":"color_complement","target":"minecraft:warped_nylium","label":"Contraste complementaire: Warped Nylium","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_brick_slab","label":"Contraste complementaire: Prismarine Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_brick_stairs","label":"Contraste complementaire: Prismarine Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_bricks","label":"Contraste complementaire: Prismarine Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:twisting_vines","label":"Contraste complementaire: Twisting Vines","confidence":0.903},{"type":"color_complement","target":"minecraft:nether_sprouts","label":"Contraste complementaire: Nether Sprouts","confidence":0.868},{"type":"color_complement","target":"minecraft:warped_trapdoor","label":"Contraste complementaire: Warped Trapdoor","confidence":0.845},{"type":"color_complement","target":"minecraft:potted_warped_roots","label":"Contraste complementaire: Potted Warped Roots","confidence":0.838},{"type":"color_triad","target":"minecraft:blue_candle","label":"Harmonie triadique: Blue Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_glazed_terracotta","label":"Harmonie triadique: Blue Glazed Terracotta","confidence":0.955},{"type":"color_triad","target":"minecraft:slime_block","label":"Harmonie triadique: Slime Block","confidence":0.949},{"type":"color_triad","target":"minecraft:test_block","label":"Harmonie triadique: Test Block","confidence":0.949},{"type":"color_triad","target":"minecraft:blue_stained_glass","label":"Harmonie triadique: Blue Stained Glass","confidence":0.948},{"type":"color_triad","target":"minecraft:potatoes","label":"Harmonie triadique: Potatoes","confidence":0.938},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.929},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.882},{"type":"color_square","target":"minecraft:green_concrete","label":"Harmonie carree: Green Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:moss_block","label":"Harmonie carree: Moss Block","confidence":0.96},{"type":"color_square","target":"minecraft:moss_carpet","label":"Harmonie carree: Moss Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:green_shulker_box","label":"Harmonie carree: Green Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:green_stained_glass","label":"Harmonie carree: Green Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:green_glazed_terracotta","label":"Harmonie carree: Green Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:big_dripleaf","label":"Harmonie carree: Big Dripleaf","confidence":0.952},{"type":"color_square","target":"minecraft:green_candle","label":"Harmonie carree: Green Candle","confidence":0.947},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.815},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.781},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.769},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.769},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.769},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.769},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.759},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.728}],"category":"building"},{"id":"minecraft:nether_bricks","name":"Nether Bricks","entry_type":"block","description":"Nether bricks are the building blocks of Nether fortresses in the Nether.","history":[{"version":"1.0.0","status":"added","notes":"Added Nether brick, which can be crafted into Nether brick stairs and fences ."},{"version":"1.5 13w01a","status":"added","notes":"Added crafting recipe, using Nether brick items."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb Nether bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#2c161a","dominant_hex":"#331b1c","average_hex":"#2c161a","hue_group":"red","lightness":0.1294,"saturation":0.3333,"palette":["#331b1c","#1c0c14","#241414","#3c1c1c","#44242c","#3c1c24"],"color_groups":[{"hex":"#331b1c","weight":0.3359,"lightness":0.1529,"saturation":0.3077,"hue_group":"red"},{"hex":"#1c0c14","weight":0.2031,"lightness":0.0784,"saturation":0.4,"hue_group":"red"},{"hex":"#241414","weight":0.1641,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#3c1c1c","weight":0.1445,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#44242c","weight":0.082,"lightness":0.2039,"saturation":0.3077,"hue_group":"red"},{"hex":"#3c1c24","weight":0.0703,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/nether_bricks.png","family":"nether_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:nether_brick_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_nether_bricks","label":"Palette proche: Chiseled Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_fence","label":"Palette proche: Nether Brick Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_slab","label":"Palette proche: Nether Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_stairs","label":"Palette proche: Nether Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_brick_wall","label":"Palette proche: Nether Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_nether_bricks","label":"Palette proche: Cracked Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_terracotta","label":"Palette proche: Black Terracotta","confidence":0.851},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.79},{"type":"color_neighbors","target":"minecraft:cherry_log","label":"Palette proche: Cherry Log","confidence":0.762},{"type":"color_neighbors","target":"minecraft:cherry_wood","label":"Palette proche: Cherry Wood","confidence":0.762},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.753},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.753},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.795},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.783},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.782},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.773},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.77},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.761},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.757},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.757},{"type":"color_analogous","target":"minecraft:nether_brick_fence","label":"Couleurs analogues: Nether Brick Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_slab","label":"Couleurs analogues: Nether Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_stairs","label":"Couleurs analogues: Nether Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_brick_wall","label":"Couleurs analogues: Nether Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_nether_bricks","label":"Couleurs analogues: Chiseled Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cracked_nether_bricks","label":"Couleurs analogues: Cracked Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:enchanting_table","label":"Couleurs analogues: Enchanting Table","confidence":0.941},{"type":"color_analogous","target":"minecraft:cactus_flower","label":"Couleurs analogues: Cactus Flower","confidence":0.863},{"type":"color_complement","target":"minecraft:warped_nylium","label":"Contraste complementaire: Warped Nylium","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_brick_slab","label":"Contraste complementaire: Prismarine Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_brick_stairs","label":"Contraste complementaire: Prismarine Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:prismarine_bricks","label":"Contraste complementaire: Prismarine Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:twisting_vines","label":"Contraste complementaire: Twisting Vines","confidence":0.903},{"type":"color_complement","target":"minecraft:nether_sprouts","label":"Contraste complementaire: Nether Sprouts","confidence":0.868},{"type":"color_complement","target":"minecraft:warped_trapdoor","label":"Contraste complementaire: Warped Trapdoor","confidence":0.845},{"type":"color_complement","target":"minecraft:potted_warped_roots","label":"Contraste complementaire: Potted Warped Roots","confidence":0.838},{"type":"color_triad","target":"minecraft:blue_candle","label":"Harmonie triadique: Blue Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_glazed_terracotta","label":"Harmonie triadique: Blue Glazed Terracotta","confidence":0.955},{"type":"color_triad","target":"minecraft:slime_block","label":"Harmonie triadique: Slime Block","confidence":0.949},{"type":"color_triad","target":"minecraft:test_block","label":"Harmonie triadique: Test Block","confidence":0.949},{"type":"color_triad","target":"minecraft:blue_stained_glass","label":"Harmonie triadique: Blue Stained Glass","confidence":0.948},{"type":"color_triad","target":"minecraft:potatoes","label":"Harmonie triadique: Potatoes","confidence":0.938},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.929},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.882},{"type":"color_square","target":"minecraft:green_concrete","label":"Harmonie carree: Green Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:moss_block","label":"Harmonie carree: Moss Block","confidence":0.96},{"type":"color_square","target":"minecraft:moss_carpet","label":"Harmonie carree: Moss Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:green_shulker_box","label":"Harmonie carree: Green Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:green_stained_glass","label":"Harmonie carree: Green Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:green_glazed_terracotta","label":"Harmonie carree: Green Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:big_dripleaf","label":"Harmonie carree: Big Dripleaf","confidence":0.952},{"type":"color_square","target":"minecraft:green_candle","label":"Harmonie carree: Green Candle","confidence":0.947},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.815},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.781},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.769},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.769},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.769},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.769},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.759},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.728}],"category":"building"},{"id":"minecraft:nether_gold_ore","name":"Nether Gold Ore","entry_type":"block","description":"Nether gold ore is a type of gold ore found in the Nether that drops gold nuggets instead of raw gold when broken. As with other gold blocks, breaking Nether gold ore will anger nearby piglins.","history":[{"version":"1.16 20w11a","status":"added","notes":"Added Nether gold ore."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb Nether gold ore, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#73372a","dominant_hex":"#813b32","average_hex":"#73372a","hue_group":"red","lightness":0.3078,"saturation":0.465,"palette":["#813b32","#642c2c","#541c1c","#4f1414","#fcd454","#542424"],"color_groups":[{"hex":"#813b32","weight":0.3555,"lightness":0.351,"saturation":0.4413,"hue_group":"red"},{"hex":"#642c2c","weight":0.2656,"lightness":0.2824,"saturation":0.3889,"hue_group":"red"},{"hex":"#541c1c","weight":0.1367,"lightness":0.2196,"saturation":0.5,"hue_group":"red"},{"hex":"#4f1414","weight":0.1094,"lightness":0.1941,"saturation":0.596,"hue_group":"red"},{"hex":"#fcd454","weight":0.0742,"lightness":0.6588,"saturation":0.9655,"hue_group":"yellow"},{"hex":"#542424","weight":0.0586,"lightness":0.2353,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/nether_gold_ore.png","family":"nether_gold_ore","relations":[{"type":"visual_neighbors","target":"minecraft:item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.914},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.896},{"type":"color_neighbors","target":"minecraft:mangrove_trapdoor","label":"Palette proche: Mangrove Trapdoor","confidence":0.895},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.894},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.893},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.893},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.893},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.893},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.893},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.893},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.893},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.893},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.767},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.729},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.729},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.728},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.716},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.708},{"type":"color_bridge","target":"minecraft:anvil","label":"Pont de nuance par palette: Anvil","confidence":0.706},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.704},{"type":"color_bridge","target":"minecraft:damaged_anvil","label":"Pont de nuance par palette: Damaged Anvil","confidence":0.703},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.702},{"type":"color_analogous","target":"minecraft:ancient_debris","label":"Couleurs analogues: Ancient Debris","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_terracotta","label":"Couleurs analogues: Red Terracotta","confidence":0.944},{"type":"color_analogous","target":"minecraft:flower_pot","label":"Couleurs analogues: Flower Pot","confidence":0.929},{"type":"color_analogous","target":"minecraft:potted_bamboo","label":"Couleurs analogues: Potted Bamboo","confidence":0.929},{"type":"color_analogous","target":"minecraft:potted_cactus","label":"Couleurs analogues: Potted Cactus","confidence":0.929},{"type":"color_analogous","target":"minecraft:potted_mangrove_propagule","label":"Couleurs analogues: Potted Mangrove Propagule","confidence":0.929},{"type":"color_analogous","target":"minecraft:crimson_fungus","label":"Couleurs analogues: Crimson Fungus","confidence":0.925},{"type":"color_analogous","target":"minecraft:potted_crimson_fungus","label":"Couleurs analogues: Potted Crimson Fungus","confidence":0.925},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.933},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.927},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.913},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.88},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.867},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.86},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.834},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.831},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.764},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.758},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.746},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.746},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.746},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.746},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.736},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.693},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.919},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.919},{"type":"color_square","target":"minecraft:potted_spruce_sapling","label":"Harmonie carree: Potted Spruce Sapling","confidence":0.917},{"type":"color_square","target":"minecraft:spruce_sapling","label":"Harmonie carree: Spruce Sapling","confidence":0.917},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.889},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.868},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.86},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.641},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.608},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.601},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.601},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.601},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.601},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.586},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.558}],"category":"resource"},{"id":"minecraft:nether_portal","name":"Nether Portal","entry_type":"block","description":"The Nether portal is a manufactured structure made of obsidian that acts as a gateway between the Overworld and the Nether dimensions.","history":[{"version":"v1.2.0 preview","status":"added","notes":"Added Nether portals."},{"version":"1.16 20w16a","status":"added","notes":"Added ruined portals ."}],"colors":{"primary":"#570bbf","dominant_hex":"#5305c0","average_hex":"#570bbf","hue_group":"blue","lightness":0.3961,"saturation":0.8911,"palette":["#5305c0","#6b11ce","#4404b4","#882ada","#3c04ac","#3a04a3"],"color_groups":[{"hex":"#5305c0","weight":0.3256,"lightness":0.3863,"saturation":0.9492,"hue_group":"blue"},{"hex":"#6b11ce","weight":0.1956,"lightness":0.4373,"saturation":0.8475,"hue_group":"blue"},{"hex":"#4404b4","weight":0.1444,"lightness":0.3608,"saturation":0.9565,"hue_group":"blue"},{"hex":"#882ada","weight":0.1372,"lightness":0.5098,"saturation":0.704,"hue_group":"purple"},{"hex":"#3c04ac","weight":0.1088,"lightness":0.3451,"saturation":0.9545,"hue_group":"blue"},{"hex":"#3a04a3","weight":0.0885,"lightness":0.3275,"saturation":0.9521,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/nether_portal.png","family":"nether_portal","relations":[{"type":"visual_neighbors","target":"minecraft:lapis_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_ice","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_shulker_box","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_ice","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purple_concrete","label":"Palette proche: Purple Concrete","confidence":0.755},{"type":"color_neighbors","target":"minecraft:purple_shulker_box","label":"Palette proche: Purple Shulker Box","confidence":0.753},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.743},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.74},{"type":"color_neighbors","target":"minecraft:purple_wool","label":"Palette proche: Purple Wool","confidence":0.74},{"type":"color_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Palette proche: Purple Glazed Terracotta","confidence":0.693},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.681},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.668},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.667},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass","label":"Palette proche: Magenta Stained Glass","confidence":0.622},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Palette proche: Magenta Stained Glass Pane","confidence":0.599},{"type":"color_neighbors","target":"minecraft:budding_amethyst","label":"Palette proche: Budding Amethyst","confidence":0.595},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.58},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.58},{"type":"color_bridge","target":"minecraft:warped_hyphae","label":"Pont de nuance par sous-ton: Warped Hyphae","confidence":0.58},{"type":"color_bridge","target":"minecraft:warped_stem","label":"Pont de nuance par sous-ton: Warped Stem","confidence":0.58},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par sous-ton: Chorus Flower","confidence":0.58},{"type":"color_analogous","target":"minecraft:budding_amethyst","label":"Couleurs analogues: Budding Amethyst","confidence":0.933},{"type":"color_analogous","target":"minecraft:respawn_anchor","label":"Couleurs analogues: Respawn Anchor","confidence":0.92},{"type":"color_analogous","target":"minecraft:amethyst_block","label":"Couleurs analogues: Amethyst Block","confidence":0.919},{"type":"color_analogous","target":"minecraft:large_amethyst_bud","label":"Couleurs analogues: Large Amethyst Bud","confidence":0.907},{"type":"color_analogous","target":"minecraft:crying_obsidian","label":"Couleurs analogues: Crying Obsidian","confidence":0.898},{"type":"color_analogous","target":"minecraft:medium_amethyst_bud","label":"Couleurs analogues: Medium Amethyst Bud","confidence":0.898},{"type":"color_analogous","target":"minecraft:amethyst_cluster","label":"Couleurs analogues: Amethyst Cluster","confidence":0.895},{"type":"color_analogous","target":"minecraft:allium","label":"Couleurs analogues: Allium","confidence":0.892},{"type":"color_complement","target":"minecraft:lime_stained_glass_pane","label":"Contraste complementaire: Lime Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:lime_stained_glass","label":"Contraste complementaire: Lime Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo","label":"Contraste complementaire: Bamboo","confidence":0.949},{"type":"color_complement","target":"minecraft:lime_concrete_powder","label":"Contraste complementaire: Lime Concrete Powder","confidence":0.948},{"type":"color_complement","target":"minecraft:potted_red_tulip","label":"Contraste complementaire: Potted Red Tulip","confidence":0.938},{"type":"color_complement","target":"minecraft:red_tulip","label":"Contraste complementaire: Red Tulip","confidence":0.938},{"type":"color_complement","target":"minecraft:orange_tulip","label":"Contraste complementaire: Orange Tulip","confidence":0.937},{"type":"color_complement","target":"minecraft:potted_orange_tulip","label":"Contraste complementaire: Potted Orange Tulip","confidence":0.937},{"type":"color_triad","target":"minecraft:orange_candle","label":"Harmonie triadique: Orange Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:orange_shulker_box","label":"Harmonie triadique: Orange Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:orange_concrete","label":"Harmonie triadique: Orange Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:resin_clump","label":"Harmonie triadique: Resin Clump","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_carpet","label":"Harmonie triadique: Brown Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_wool","label":"Harmonie triadique: Brown Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_shulker_box","label":"Harmonie triadique: Brown Shulker Box","confidence":0.953},{"type":"color_triad","target":"minecraft:orange_carpet","label":"Harmonie triadique: Orange Carpet","confidence":0.951},{"type":"color_square","target":"minecraft:warped_shelf","label":"Harmonie carree: Warped Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:diamond_block","label":"Harmonie carree: Diamond Block","confidence":0.96},{"type":"color_square","target":"minecraft:fire_coral","label":"Harmonie carree: Fire Coral","confidence":0.959},{"type":"color_square","target":"minecraft:warped_door","label":"Harmonie carree: Warped Door","confidence":0.955},{"type":"color_square","target":"minecraft:fire_coral_fan","label":"Harmonie carree: Fire Coral Fan","confidence":0.953},{"type":"color_square","target":"minecraft:fire_coral_wall_fan","label":"Harmonie carree: Fire Coral Wall Fan","confidence":0.953},{"type":"color_square","target":"minecraft:fire_coral_block","label":"Harmonie carree: Fire Coral Block","confidence":0.942},{"type":"color_square","target":"minecraft:crimson_hyphae","label":"Harmonie carree: Crimson Hyphae","confidence":0.929},{"type":"value_contrast","target":"minecraft:packed_ice","label":"Contraste clair sombre: Packed Ice","confidence":0.55},{"type":"value_contrast","target":"minecraft:frosted_ice","label":"Contraste clair sombre: Frosted Ice","confidence":0.55},{"type":"value_contrast","target":"minecraft:ice","label":"Contraste clair sombre: Ice","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_stairs","label":"Contraste clair sombre: Polished Diorite Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55}],"category":""},{"id":"minecraft:nether_quartz_ore","name":"Nether Quartz Ore","entry_type":"block","description":"Nether quartz ore is an ore found in the Nether, and is a source of quartz.","history":[{"version":"1.5 13w01a","status":"added","notes":"Added Nether quartz ore."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb Nether quartz ore, providing the football/regular effect to the mob."}],"colors":{"primary":"#76423e","dominant_hex":"#753a38","average_hex":"#76423e","hue_group":"red","lightness":0.3529,"saturation":0.3111,"palette":["#753a38","#642c2c","#c2a799","#541c1c","#4e1414","#542424"],"color_groups":[{"hex":"#753a38","weight":0.332,"lightness":0.3392,"saturation":0.3526,"hue_group":"red"},{"hex":"#642c2c","weight":0.2031,"lightness":0.2824,"saturation":0.3889,"hue_group":"red"},{"hex":"#c2a799","weight":0.1914,"lightness":0.6804,"saturation":0.2515,"hue_group":"red"},{"hex":"#541c1c","weight":0.1133,"lightness":0.2196,"saturation":0.5,"hue_group":"red"},{"hex":"#4e1414","weight":0.1055,"lightness":0.1922,"saturation":0.5918,"hue_group":"red"},{"hex":"#542424","weight":0.0547,"lightness":0.2353,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/nether_quartz_ore.png","family":"nether_quartz_ore","relations":[{"type":"visual_neighbors","target":"minecraft:coarse_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:farmland","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanting_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.92},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.892},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.879},{"type":"color_neighbors","target":"minecraft:mangrove_trapdoor","label":"Palette proche: Mangrove Trapdoor","confidence":0.879},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.874},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.874},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.874},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.874},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.874},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.874},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.874},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.874},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.785},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.777},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.769},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.766},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.766},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.758},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.758},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.751},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.75},{"type":"color_bridge","target":"minecraft:closed_eyeblossom","label":"Pont de nuance par palette: Closed Eyeblossom","confidence":0.749},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_planks","label":"Couleurs analogues: Mangrove Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_pressure_plate","label":"Couleurs analogues: Mangrove Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_sign","label":"Couleurs analogues: Mangrove Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_slab","label":"Couleurs analogues: Mangrove Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_stairs","label":"Couleurs analogues: Mangrove Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.94},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.931},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.931},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.926},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.904},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.938},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.926},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.771},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.77},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.756},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.732},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.732},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.658},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.95},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.949},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.921},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.604},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.571},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.562},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.562},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.562},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.562},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_terracotta","label":"Contraste clair sombre: White Terracotta","confidence":0.55}],"category":"resource"},{"id":"minecraft:nether_sprouts","name":"Nether Sprouts","entry_type":"block","description":"Nether sprouts are a non-solid fungi block that generate in warped forests. Unlike other warped forest plants, it does not have a crimson equivalent.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added Nether sprouts."}],"colors":{"primary":"#149785","dominant_hex":"#149c84","average_hex":"#149785","hue_group":"cyan","lightness":0.3353,"saturation":0.7661,"palette":["#149c84","#147c84","#14b484"],"color_groups":[{"hex":"#149c84","weight":0.3871,"lightness":0.3451,"saturation":0.7727,"hue_group":"cyan"},{"hex":"#147c84","weight":0.3548,"lightness":0.298,"saturation":0.7368,"hue_group":"cyan"},{"hex":"#14b484","weight":0.2581,"lightness":0.3922,"saturation":0.8,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/nether_sprouts.png","family":"nether_sprouts","relations":[{"type":"visual_neighbors","target":"minecraft:twisting_vines","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines_plant","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sculk_sensor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:twisting_vines","label":"Palette proche: Twisting Vines","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.912},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.912},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.87},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.866},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.859},{"type":"color_neighbors","target":"minecraft:warped_nylium","label":"Palette proche: Warped Nylium","confidence":0.81},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.783},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.719},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.719},{"type":"color_bridge","target":"minecraft:lapis_block","label":"Pont de nuance par palette: Lapis Block","confidence":0.611},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.593},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.593},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.58},{"type":"color_analogous","target":"minecraft:twisting_vines","label":"Couleurs analogues: Twisting Vines","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_roots","label":"Couleurs analogues: Warped Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:twisting_vines_plant","label":"Couleurs analogues: Twisting Vines Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_warped_roots","label":"Couleurs analogues: Potted Warped Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_trapdoor","label":"Couleurs analogues: Warped Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.937},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.937},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.937},{"type":"color_complement","target":"minecraft:cactus_flower","label":"Contraste complementaire: Cactus Flower","confidence":0.933},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.899},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.89},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.89},{"type":"color_complement","target":"minecraft:chiseled_nether_bricks","label":"Contraste complementaire: Chiseled Nether Bricks","confidence":0.884},{"type":"color_complement","target":"minecraft:nether_brick_fence","label":"Contraste complementaire: Nether Brick Fence","confidence":0.868},{"type":"color_complement","target":"minecraft:nether_brick_slab","label":"Contraste complementaire: Nether Brick Slab","confidence":0.868},{"type":"color_complement","target":"minecraft:nether_brick_stairs","label":"Contraste complementaire: Nether Brick Stairs","confidence":0.868},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.949},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.941},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.937},{"type":"color_triad","target":"minecraft:horn_coral_wall_fan","label":"Harmonie triadique: Horn Coral Wall Fan","confidence":0.937},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.935},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.92},{"type":"color_triad","target":"minecraft:bamboo_fence_gate","label":"Harmonie triadique: Bamboo Fence Gate","confidence":0.912},{"type":"color_triad","target":"minecraft:copper_torch","label":"Harmonie triadique: Copper Torch","confidence":0.907},{"type":"color_square","target":"minecraft:small_amethyst_bud","label":"Harmonie carree: Small Amethyst Bud","confidence":0.953},{"type":"color_square","target":"minecraft:azalea_leaves","label":"Harmonie carree: Azalea Leaves","confidence":0.948},{"type":"color_square","target":"minecraft:big_dripleaf_stem","label":"Harmonie carree: Big Dripleaf Stem","confidence":0.936},{"type":"color_square","target":"minecraft:small_dripleaf","label":"Harmonie carree: Small Dripleaf","confidence":0.936},{"type":"color_square","target":"minecraft:green_stained_glass_pane","label":"Harmonie carree: Green Stained Glass Pane","confidence":0.911},{"type":"color_square","target":"minecraft:amethyst_block","label":"Harmonie carree: Amethyst Block","confidence":0.911},{"type":"color_square","target":"minecraft:big_dripleaf","label":"Harmonie carree: Big Dripleaf","confidence":0.903},{"type":"color_square","target":"minecraft:oxeye_daisy","label":"Harmonie carree: Oxeye Daisy","confidence":0.899},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.613},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.613},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.605},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.582},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55}],"category":""},{"id":"minecraft:nether_star","name":"Nether Star","entry_type":"item","description":"A Nether star is an item that is dropped by the wither upon death. It is used to craft a beacon, and cannot be destroyed with explosions.","history":[{"version":"12w36a","status":"added","notes":"Added Nether stars."}],"colors":{"primary":"#9aae9e","dominant_hex":"#546c6c","average_hex":"#9aae9e","hue_group":"neutral","lightness":0.6431,"saturation":0.1099,"palette":["#546c6c","#8ca4a4","#f5f596","#bccccc","#cfd7d7","#649494"],"color_groups":[{"hex":"#546c6c","weight":0.2346,"lightness":0.3765,"saturation":0.125,"hue_group":"cyan"},{"hex":"#8ca4a4","weight":0.2222,"lightness":0.5961,"saturation":0.1165,"hue_group":"neutral"},{"hex":"#f5f596","weight":0.1605,"lightness":0.7745,"saturation":0.8261,"hue_group":"yellow"},{"hex":"#bccccc","weight":0.1358,"lightness":0.7686,"saturation":0.1356,"hue_group":"cyan"},{"hex":"#cfd7d7","weight":0.1358,"lightness":0.8275,"saturation":0.0909,"hue_group":"neutral"},{"hex":"#649494","weight":0.1111,"lightness":0.4863,"saturation":0.1935,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/nether_star.png","family":"nether_star","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:splash_potion","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_membrane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trident","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_tears","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_boat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tipped_arrow","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:nether_wart","name":"Nether Wart","entry_type":"block","description":"Nether wart is a fungus harvested from Nether wart crops and is used to plant them. It is an essential ingredient in almost every potion. Unlike other crimson plants, Nether wart doesn't have a warped equivalent, although warped wart blocks exist. Nether wart crops are found in Nether fortresses and bastion remnants and used to grow Nether wart, which only requires soul sand to grow.","history":[{"version":"1.0.0","status":"added","notes":"Added Nether wart."},{"version":"19w03a","status":"added","notes":"added to Nether wart. Before this version, Nether wart made stone sounds."}],"colors":{"primary":"#761316","dominant_hex":"#841c24","average_hex":"#761316","hue_group":"red","lightness":0.2686,"saturation":0.7226,"palette":["#841c24","#4c0404","#a4242c","#74040c","#c4343c"],"color_groups":[{"hex":"#841c24","weight":0.4091,"lightness":0.3137,"saturation":0.65,"hue_group":"red"},{"hex":"#4c0404","weight":0.3182,"lightness":0.1569,"saturation":0.9,"hue_group":"red"},{"hex":"#a4242c","weight":0.1591,"lightness":0.3922,"saturation":0.64,"hue_group":"red"},{"hex":"#74040c","weight":0.0909,"lightness":0.2353,"saturation":0.9333,"hue_group":"red"},{"hex":"#c4343c","weight":0.0227,"lightness":0.4863,"saturation":0.5806,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/nether_wart_stage0.png","family":"nether_wart","relations":[{"type":"visual_neighbors","target":"minecraft:weeping_vines_plant","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_nylium","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.933},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.931},{"type":"color_neighbors","target":"minecraft:red_nether_brick_slab","label":"Palette proche: Red Nether Brick Slab","confidence":0.896},{"type":"color_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Palette proche: Red Nether Brick Stairs","confidence":0.896},{"type":"color_neighbors","target":"minecraft:red_nether_brick_wall","label":"Palette proche: Red Nether Brick Wall","confidence":0.896},{"type":"color_neighbors","target":"minecraft:red_nether_bricks","label":"Palette proche: Red Nether Bricks","confidence":0.896},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.894},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.889},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.887},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.887},{"type":"color_neighbors","target":"minecraft:fire_coral","label":"Palette proche: Fire Coral","confidence":0.881},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.867},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.7},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.699},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.684},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.663},{"type":"color_bridge","target":"minecraft:repeater","label":"Pont de nuance par palette: Repeater","confidence":0.611},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.606},{"type":"color_bridge","target":"minecraft:bookshelf","label":"Pont de nuance par palette: Bookshelf","confidence":0.605},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.599},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.597},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.595},{"type":"color_analogous","target":"minecraft:red_nether_brick_slab","label":"Couleurs analogues: Red Nether Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_brick_stairs","label":"Couleurs analogues: Red Nether Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_brick_wall","label":"Couleurs analogues: Red Nether Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_bricks","label":"Couleurs analogues: Red Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:netherrack","label":"Couleurs analogues: Netherrack","confidence":0.959},{"type":"color_analogous","target":"minecraft:black_glazed_terracotta","label":"Couleurs analogues: Black Glazed Terracotta","confidence":0.955},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.954},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.954},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_hanging_sign","label":"Contraste complementaire: Warped Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wall_hanging_sign","label":"Contraste complementaire: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.939},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.939},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.936},{"type":"color_complement","target":"minecraft:beacon","label":"Contraste complementaire: Beacon","confidence":0.932},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.885},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.788},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.783},{"type":"color_square","target":"minecraft:crying_obsidian","label":"Harmonie carree: Crying Obsidian","confidence":0.96},{"type":"color_square","target":"minecraft:lime_carpet","label":"Harmonie carree: Lime Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:lime_wool","label":"Harmonie carree: Lime Wool","confidence":0.96},{"type":"color_square","target":"minecraft:medium_amethyst_bud","label":"Harmonie carree: Medium Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_cluster","label":"Harmonie carree: Amethyst Cluster","confidence":0.96},{"type":"color_square","target":"minecraft:allium","label":"Harmonie carree: Allium","confidence":0.958},{"type":"color_square","target":"minecraft:potted_allium","label":"Harmonie carree: Potted Allium","confidence":0.958},{"type":"color_square","target":"minecraft:azure_bluet","label":"Harmonie carree: Azure Bluet","confidence":0.957},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.672},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.639},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.629},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.629},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.629},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.629},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.616},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.598}],"category":""},{"id":"minecraft:nether_wart_block","name":"Nether Wart Block","entry_type":"block","description":"Nether wart blocks are decorative blocks found in crimson forests and crafted using Nether wart.","history":[{"version":"1.10 16w20a","status":"added","notes":"Added Nether wart blocks."},{"version":"wiki-history","status":"added","notes":"added for Nether wart blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb Nether wart blocks, providing the curling stone/slow sliding effect to the mob."}],"colors":{"primary":"#730302","dominant_hex":"#7c0404","average_hex":"#730302","hue_group":"red","lightness":0.2294,"saturation":0.9658,"palette":["#7c0404","#5c0404","#6c0404","#941c1c","#ac2424"],"color_groups":[{"hex":"#7c0404","weight":0.4961,"lightness":0.251,"saturation":0.9375,"hue_group":"red"},{"hex":"#5c0404","weight":0.2344,"lightness":0.1882,"saturation":0.9167,"hue_group":"red"},{"hex":"#6c0404","weight":0.1914,"lightness":0.2196,"saturation":0.9286,"hue_group":"red"},{"hex":"#941c1c","weight":0.043,"lightness":0.3451,"saturation":0.6818,"hue_group":"red"},{"hex":"#ac2424","weight":0.0352,"lightness":0.4078,"saturation":0.6538,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/nether_wart_block.png","family":"nether_wart_block","relations":[{"type":"visual_neighbors","target":"minecraft:weeping_vines","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines_plant","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrier","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:weeping_vines","label":"Palette proche: Weeping Vines","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.931},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.928},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.869},{"type":"color_neighbors","target":"minecraft:red_nether_brick_slab","label":"Palette proche: Red Nether Brick Slab","confidence":0.864},{"type":"color_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Palette proche: Red Nether Brick Stairs","confidence":0.864},{"type":"color_neighbors","target":"minecraft:red_nether_brick_wall","label":"Palette proche: Red Nether Brick Wall","confidence":0.864},{"type":"color_neighbors","target":"minecraft:red_nether_bricks","label":"Palette proche: Red Nether Bricks","confidence":0.864},{"type":"color_neighbors","target":"minecraft:redstone_block","label":"Palette proche: Redstone Block","confidence":0.857},{"type":"color_neighbors","target":"minecraft:crimson_fungus","label":"Palette proche: Crimson Fungus","confidence":0.847},{"type":"color_neighbors","target":"minecraft:potted_crimson_fungus","label":"Palette proche: Potted Crimson Fungus","confidence":0.847},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.746},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.699},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.696},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.622},{"type":"color_bridge","target":"minecraft:comparator","label":"Pont de nuance par sous-ton: Comparator","confidence":0.58},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.58},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.58},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.58},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.58},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.58},{"type":"color_analogous","target":"minecraft:weeping_vines","label":"Couleurs analogues: Weeping Vines","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_nylium","label":"Couleurs analogues: Crimson Nylium","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete","label":"Couleurs analogues: Red Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:netherrack","label":"Couleurs analogues: Netherrack","confidence":0.96},{"type":"color_analogous","target":"minecraft:weeping_vines_plant","label":"Couleurs analogues: Weeping Vines Plant","confidence":0.957},{"type":"color_analogous","target":"minecraft:red_stained_glass_pane","label":"Couleurs analogues: Red Stained Glass Pane","confidence":0.957},{"type":"color_analogous","target":"minecraft:mangrove_door","label":"Couleurs analogues: Mangrove Door","confidence":0.955},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.96},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.957},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.957},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.941},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.94},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.94},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.925},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.897},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.896},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.877},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.864},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.853},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.853},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.851},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.775},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.958},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.958},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.953},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.94},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.94},{"type":"color_square","target":"minecraft:lime_shulker_box","label":"Harmonie carree: Lime Shulker Box","confidence":0.929},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.926},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.702},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.669},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.66},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.66},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.66},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.646},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.628}],"category":""},{"id":"minecraft:netherite_axe","name":"Netherite Axe","entry_type":"item","description":"A netherite axe is a late-game variant of axe obtained by upgrading a diamond axe using a netherite ingot and netherite upgrade at a smithing table. It can be used to cut down trees faster, to strip logs and scrape copper-based blocks, and as a melee weapon that disables shields. It is the highest tier of axe, having higher mining efficiency, attack damage, durability, and enchantability than a diamond axe.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added netherite axes."}],"colors":{"primary":"#443035","dominant_hex":"#4e3c3c","average_hex":"#443035","hue_group":"red","lightness":0.2275,"saturation":0.1724,"palette":["#4e3c3c","#241414","#2d2424","#4c2c44","#664e52","#7e727e"],"color_groups":[{"hex":"#4e3c3c","weight":0.3,"lightness":0.2706,"saturation":0.1304,"hue_group":"red"},{"hex":"#241414","weight":0.2833,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#2d2424","weight":0.1333,"lightness":0.1588,"saturation":0.1111,"hue_group":"neutral"},{"hex":"#4c2c44","weight":0.1167,"lightness":0.2353,"saturation":0.2667,"hue_group":"purple"},{"hex":"#664e52","weight":0.0833,"lightness":0.3529,"saturation":0.1333,"hue_group":"red"},{"hex":"#7e727e","weight":0.0833,"lightness":0.4706,"saturation":0.05,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_axe.png","family":"netherite_tools","relations":[{"type":"variants","target":"minecraft:netherite_hoe","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_hoe","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_pickaxe","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_pickaxe","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_shovel","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_shovel","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_sword","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_sword","label":"Related set: netherite_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:netherite_tools","label":"Related set: netherite_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_chirp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_lava_chicken","label":"Shared hue group: red","confidence":0.55}],"category":"tool"},{"id":"minecraft:netherite_block","name":"Netherite Block","entry_type":"block","description":"A block of netherite, internally known as a netherite block, is a precious metal block made from nine netherite ingots. In item form, it is resistant to fire and lava, but can still be destroyed by cacti.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added blocks of netherite."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of netherite, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#433d40","dominant_hex":"#393434","average_hex":"#433d40","hue_group":"neutral","lightness":0.251,"saturation":0.0469,"palette":["#393434","#4c4c4c","#4c444a","#444444","#5c545c","#241c1c"],"color_groups":[{"hex":"#393434","weight":0.2969,"lightness":0.2137,"saturation":0.0459,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.2266,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c444a","weight":0.1953,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#444444","weight":0.1055,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c545c","weight":0.0898,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#241c1c","weight":0.0859,"lightness":0.1255,"saturation":0.125,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/netherite_block.png","family":"netherite_block","relations":[{"type":"visual_neighbors","target":"minecraft:mud","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Palette proche: Gray Stained Glass Pane","confidence":0.939},{"type":"color_neighbors","target":"minecraft:anvil","label":"Palette proche: Anvil","confidence":0.936},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.932},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.932},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.932},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.932},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.932},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.931},{"type":"color_neighbors","target":"minecraft:gray_stained_glass","label":"Palette proche: Gray Stained Glass","confidence":0.93},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.929},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.929},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.929},{"type":"color_bridge","target":"minecraft:gray_stained_glass_pane","label":"Pont de nuance par palette: Gray Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:anvil","label":"Pont de nuance par palette: Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_stained_glass","label":"Pont de nuance par palette: Gray Stained Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.705},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.671},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.656},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.655},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.655},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.649},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.647},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.647}],"category":"resource"},{"id":"minecraft:netherite_boots","name":"Netherite Boots","entry_type":"item","description":"Netherite boots are a late-game variant of boots obtained by upgrading diamond boots using a netherite ingot and netherite upgrade at a smithing table. They are the highest tier of boots, having higher armor toughness, durability, and enchantability than diamond boots. Like all netherite armor, netherite boots provide 10% knockback resistance when worn, are immune to burning from fire and lava in item form, and take no durability damage from lava when worn.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added netherite boots."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#322c2d","dominant_hex":"#141414","average_hex":"#322c2d","hue_group":"neutral","lightness":0.1843,"saturation":0.0638,"palette":["#141414","#241c24","#4e4d4e","#443c3c","#342c2c","#746c74"],"color_groups":[{"hex":"#141414","weight":0.2927,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#241c24","weight":0.2439,"lightness":0.1255,"saturation":0.125,"hue_group":"purple"},{"hex":"#4e4d4e","weight":0.2195,"lightness":0.3039,"saturation":0.0065,"hue_group":"neutral"},{"hex":"#443c3c","weight":0.1463,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#342c2c","weight":0.0732,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#746c74","weight":0.0244,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_boots.png","family":"netherite_armor","relations":[{"type":"variants","target":"minecraft:netherite_chestplate","label":"Same family: netherite_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_chestplate","label":"Related set: netherite_armor","confidence":0.8},{"type":"variants","target":"minecraft:netherite_helmet","label":"Same family: netherite_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_helmet","label":"Related set: netherite_armor","confidence":0.8},{"type":"variants","target":"minecraft:netherite_leggings","label":"Same family: netherite_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_leggings","label":"Related set: netherite_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:netherite_armor","label":"Related set: netherite_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rib_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_stal","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coal","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:netherite_chestplate","name":"Netherite Chestplate","entry_type":"item","description":"A netherite chestplate is a late-game variant of chestplate obtained by upgrading a diamond chestplate using a netherite ingot and netherite upgrade at a smithing table. It is the highest tier of chestplate, having higher armor toughness, durability, and enchantability than a diamond chestplate. Like all netherite armor, a netherite chestplate provides 10% knockback resistance when worn, is immune to burning from fire and lava in item form, and takes no durability damage from lava when worn.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added netherite chestplate."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#3a3336","dominant_hex":"#241c23","average_hex":"#3a3336","hue_group":"neutral","lightness":0.2137,"saturation":0.0642,"palette":["#241c23","#464141","#655d65","#141414","#343434","#342c2c"],"color_groups":[{"hex":"#241c23","weight":0.2246,"lightness":0.1255,"saturation":0.125,"hue_group":"purple"},{"hex":"#464141","weight":0.1884,"lightness":0.2647,"saturation":0.037,"hue_group":"neutral"},{"hex":"#655d65","weight":0.1884,"lightness":0.3804,"saturation":0.0412,"hue_group":"neutral"},{"hex":"#141414","weight":0.1667,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#343434","weight":0.1594,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#342c2c","weight":0.0725,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_chestplate.png","family":"netherite_armor","relations":[{"type":"variants","target":"minecraft:netherite_boots","label":"Same family: netherite_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_boots","label":"Related set: netherite_armor","confidence":0.8},{"type":"variants","target":"minecraft:netherite_helmet","label":"Same family: netherite_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_helmet","label":"Related set: netherite_armor","confidence":0.8},{"type":"variants","target":"minecraft:netherite_leggings","label":"Same family: netherite_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_leggings","label":"Related set: netherite_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:netherite_armor","label":"Related set: netherite_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_13","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rib_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:netherite_helmet","name":"Netherite Helmet","entry_type":"item","description":"A netherite helmet is a late-game variant of helmet obtained by upgrading a diamond helmet using a netherite ingot and netherite upgrade at a smithing table. It is the highest tier of helmet, having higher armor toughness, durability, and enchantability than a diamond helmet. Like all netherite armor, a netherite helmet provides 10% knockback resistance when worn, is immune to burning from fire and lava in item form, and takes no durability damage from lava when worn.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added netherite helmets."},{"version":"20w07a","status":"added","notes":"Added textures and models for netherite helmets when they are used by piglins ."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#342e30","dominant_hex":"#241c24","average_hex":"#342e30","hue_group":"neutral","lightness":0.1922,"saturation":0.0612,"palette":["#241c24","#4c4c4c","#141414","#443c3c","#342c2c","#645c64"],"color_groups":[{"hex":"#241c24","weight":0.2821,"lightness":0.1255,"saturation":0.125,"hue_group":"purple"},{"hex":"#4c4c4c","weight":0.2692,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.2308,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#443c3c","weight":0.1282,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#342c2c","weight":0.0513,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#645c64","weight":0.0385,"lightness":0.3765,"saturation":0.0417,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_helmet.png","family":"netherite_armor","relations":[{"type":"variants","target":"minecraft:netherite_boots","label":"Same family: netherite_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_boots","label":"Related set: netherite_armor","confidence":0.8},{"type":"variants","target":"minecraft:netherite_chestplate","label":"Same family: netherite_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_chestplate","label":"Related set: netherite_armor","confidence":0.8},{"type":"variants","target":"minecraft:netherite_leggings","label":"Same family: netherite_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_leggings","label":"Related set: netherite_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:netherite_armor","label":"Related set: netherite_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rib_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flint","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_11","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:netherite_hoe","name":"Netherite Hoe","entry_type":"item","description":"A netherite hoe is a late-game variant of hoe obtained by upgrading a diamond hoe using a netherite ingot and netherite upgrade at a smithing table. It is used to till dirt-related blocks into farmland, and to break leaves, haybales, and sculk-related blocks faster. It is the highest tier of hoe, having higher mining efficiency, durability, damage\u200c[BE only] and enchantability than a diamond hoe.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added netherite hoes."}],"colors":{"primary":"#403034","dominant_hex":"#1c1414","average_hex":"#403034","hue_group":"red","lightness":0.2196,"saturation":0.1429,"palette":["#1c1414","#2d2424","#48353e","#6c494c","#7f747f","#643434"],"color_groups":[{"hex":"#1c1414","weight":0.3137,"lightness":0.0941,"saturation":0.1667,"hue_group":"red"},{"hex":"#2d2424","weight":0.2157,"lightness":0.1588,"saturation":0.1111,"hue_group":"neutral"},{"hex":"#48353e","weight":0.1765,"lightness":0.2451,"saturation":0.152,"hue_group":"red"},{"hex":"#6c494c","weight":0.1176,"lightness":0.3549,"saturation":0.1934,"hue_group":"red"},{"hex":"#7f747f","weight":0.1176,"lightness":0.4765,"saturation":0.0453,"hue_group":"neutral"},{"hex":"#643434","weight":0.0588,"lightness":0.298,"saturation":0.3158,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_hoe.png","family":"netherite_tools","relations":[{"type":"variants","target":"minecraft:netherite_axe","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_axe","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_pickaxe","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_pickaxe","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_shovel","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_shovel","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_sword","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_sword","label":"Related set: netherite_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:netherite_tools","label":"Related set: netherite_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_chirp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raiser_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55}],"category":"tool"},{"id":"minecraft:netherite_horse_armor","name":"Netherite Horse Armor","entry_type":"item","description":"Netherite horse armor is the strongest tier of horse armor.","history":[{"version":"1.21.11 25w45a","status":"added","notes":"Added netherite horse armor."}],"colors":{"primary":"#624333","dominant_hex":"#342424","average_hex":"#624333","hue_group":"red","lightness":0.2922,"saturation":0.3154,"palette":["#342424","#615961","#4c3c3c","#b04804","#54444c","#d47c04"],"color_groups":[{"hex":"#342424","weight":0.2809,"lightness":0.1725,"saturation":0.1818,"hue_group":"red"},{"hex":"#615961","weight":0.2022,"lightness":0.3647,"saturation":0.043,"hue_group":"neutral"},{"hex":"#4c3c3c","weight":0.1798,"lightness":0.2667,"saturation":0.1176,"hue_group":"neutral"},{"hex":"#b04804","weight":0.1461,"lightness":0.3529,"saturation":0.9556,"hue_group":"red"},{"hex":"#54444c","weight":0.1124,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#d47c04","weight":0.0787,"lightness":0.4235,"saturation":0.963,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_horse_armor.png","family":"netherite_horse_armor","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:pitcher_pod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:plenty_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_scrap","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:netherite_ingot","name":"Netherite Ingot","entry_type":"item","description":"A netherite ingot is an item obtained from crafting four netherite scraps and four gold ingots together, as well as loot from bastion remnant loot chests. Unlike other items, it is immune to being destroyed by fire and lava. They are primarily used to upgrade diamond gear.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added netherite ingots."}],"colors":{"primary":"#3f393b","dominant_hex":"#4c474a","average_hex":"#3f393b","hue_group":"neutral","lightness":0.2353,"saturation":0.05,"palette":["#4c474a","#3c3838","#686368","#342c2c","#241c1c","#141414"],"color_groups":[{"hex":"#4c474a","weight":0.2296,"lightness":0.2882,"saturation":0.034,"hue_group":"neutral"},{"hex":"#3c3838","weight":0.2074,"lightness":0.2275,"saturation":0.0345,"hue_group":"neutral"},{"hex":"#686368","weight":0.1852,"lightness":0.398,"saturation":0.0246,"hue_group":"neutral"},{"hex":"#342c2c","weight":0.163,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#241c1c","weight":0.1185,"lightness":0.1255,"saturation":0.125,"hue_group":"red"},{"hex":"#141414","weight":0.0963,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_ingot.png","family":"netherite_ingot","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_13","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mellohi","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snout_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:netherite_leggings","name":"Netherite Leggings","entry_type":"item","description":"Netherite leggings are a late-game variant of leggings obtained by upgrading diamond leggings using a netherite ingot and netherite upgrade at a smithing table. They are the highest tier of leggings, having higher armor toughness, durability, and enchantability than diamond leggings. Like all netherite armor, netherite leggings provide 10% knockback resistance when worn, are immune to burning from fire and lava in item form, and take no durability damage from lava when worn.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added netherite leggings."},{"version":"1.19 22w12a","status":"added","notes":"Added the Swift Sneak enchantment, which can be applied to netherite leggings."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#342e30","dominant_hex":"#141414","average_hex":"#342e30","hue_group":"neutral","lightness":0.1922,"saturation":0.0612,"palette":["#141414","#4c4c4c","#241c24","#443c3c","#615961","#342c2c"],"color_groups":[{"hex":"#141414","weight":0.3077,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1923,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#241c24","weight":0.1731,"lightness":0.1255,"saturation":0.125,"hue_group":"purple"},{"hex":"#443c3c","weight":0.1635,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#615961","weight":0.0865,"lightness":0.3647,"saturation":0.043,"hue_group":"neutral"},{"hex":"#342c2c","weight":0.0769,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_leggings.png","family":"netherite_armor","relations":[{"type":"variants","target":"minecraft:netherite_boots","label":"Same family: netherite_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_boots","label":"Related set: netherite_armor","confidence":0.8},{"type":"variants","target":"minecraft:netherite_chestplate","label":"Same family: netherite_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_chestplate","label":"Related set: netherite_armor","confidence":0.8},{"type":"variants","target":"minecraft:netherite_helmet","label":"Same family: netherite_armor","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_helmet","label":"Related set: netherite_armor","confidence":0.8},{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:netherite_armor","label":"Related set: netherite_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rib_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flint","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_11","label":"Shared hue group: neutral","confidence":0.55}],"category":"armor"},{"id":"minecraft:netherite_nautilus_armor","name":"Netherite Nautilus Armor","entry_type":"item","description":"Netherite nautilus armor is a rare type of nautilus armor that can be equipped by a nautilus that reduces the damage received to the nautilus. It is obtained by upgrading a diamond nautilus armor using a netherite ingot and netherite upgrade at a smithing table. It is the strongest tier of nautilus armor, having higher armor points and armor toughness than diamond nautilus armor.","history":[{"version":"1.21.11 25w41a","status":"added","notes":"Added netherite nautilus armor."}],"colors":{"primary":"#382b30","dominant_hex":"#2c1c24","average_hex":"#382b30","hue_group":"red","lightness":0.1941,"saturation":0.1313,"palette":["#2c1c24","#1c0c0c","#54444c","#3c3c3c","#342c2c","#746474"],"color_groups":[{"hex":"#2c1c24","weight":0.3026,"lightness":0.1412,"saturation":0.2222,"hue_group":"red"},{"hex":"#1c0c0c","weight":0.2303,"lightness":0.0784,"saturation":0.4,"hue_group":"red"},{"hex":"#54444c","weight":0.1842,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#3c3c3c","weight":0.1053,"lightness":0.2353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#342c2c","weight":0.0921,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#746474","weight":0.0855,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_nautilus_armor.png","family":"netherite_nautilus_armor","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_chirp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raiser_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:netherite_pickaxe","name":"Netherite Pickaxe","entry_type":"item","description":"A netherite pickaxe is a late-game variant of pickaxe obtained by upgrading a diamond pickaxe using a netherite ingot and netherite upgrade at a smithing table. It is the highest tier of pickaxe, having higher mining efficiency, durability, attack damage, and enchantability than a diamond pickaxe. It has a mining level of 4, which is functionally identical to a mining level of 3, allowing it to mine obsidian and ancient debris.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added netherite pickaxes."}],"colors":{"primary":"#422e34","dominant_hex":"#241414","average_hex":"#422e34","hue_group":"red","lightness":0.2196,"saturation":0.1786,"palette":["#241414","#493341","#2c2424","#807680","#6f3f3f","#5c545c"],"color_groups":[{"hex":"#241414","weight":0.3676,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#493341","weight":0.2206,"lightness":0.2431,"saturation":0.1774,"hue_group":"purple"},{"hex":"#2c2424","weight":0.1471,"lightness":0.1569,"saturation":0.1,"hue_group":"neutral"},{"hex":"#807680","weight":0.1176,"lightness":0.4824,"saturation":0.0407,"hue_group":"neutral"},{"hex":"#6f3f3f","weight":0.0882,"lightness":0.3412,"saturation":0.2759,"hue_group":"red"},{"hex":"#5c545c","weight":0.0588,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_pickaxe.png","family":"netherite_tools","relations":[{"type":"variants","target":"minecraft:netherite_axe","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_axe","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_hoe","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_hoe","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_shovel","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_shovel","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_sword","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_sword","label":"Related set: netherite_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:netherite_tools","label":"Related set: netherite_tools","confidence":0.85},{"type":"related_sets","target":"group:pickaxes","label":"Related set: pickaxes","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_chirp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_upgrade_smithing_template","label":"Shared hue group: red","confidence":0.55}],"category":"tool"},{"id":"minecraft:netherite_scrap","name":"Netherite Scrap","entry_type":"item","description":"Netherite scrap is a material smelted from ancient debris, which is found in the Nether. It is used solely for crafting netherite ingots. Like all netherite-related items, it is not flammable.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added netherite scrap."}],"colors":{"primary":"#51322a","dominant_hex":"#644444","average_hex":"#51322a","hue_group":"red","lightness":0.2412,"saturation":0.3171,"palette":["#644444","#24140c","#5c342c","#441c14","#4c2c1c","#87726a"],"color_groups":[{"hex":"#644444","weight":0.2727,"lightness":0.3294,"saturation":0.1905,"hue_group":"red"},{"hex":"#24140c","weight":0.2066,"lightness":0.0941,"saturation":0.5,"hue_group":"red"},{"hex":"#5c342c","weight":0.1983,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#441c14","weight":0.1405,"lightness":0.1725,"saturation":0.5455,"hue_group":"red"},{"hex":"#4c2c1c","weight":0.1074,"lightness":0.2039,"saturation":0.4615,"hue_group":"red"},{"hex":"#87726a","weight":0.0744,"lightness":0.4725,"saturation":0.1203,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_scrap.png","family":"netherite_scrap","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_horse_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_pod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_charge","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:plenty_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:written_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:netherite_shovel","name":"Netherite Shovel","entry_type":"item","description":"A netherite shovel is a late-game variant of shovel obtained by upgrading a diamond shovel using a netherite ingot and netherite upgrade at a smithing table. It is used to break dirt, sand, gravel and other related blocks faster, to create dirt paths from dirt-related blocks, and to extinguish campfires. It is the highest tier of shovel, having higher mining efficiency, attack damage, durability, and enchantability than a diamond shovel.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added netherite shovels."}],"colors":{"primary":"#47343a","dominant_hex":"#241414","average_hex":"#47343a","hue_group":"red","lightness":0.2412,"saturation":0.1545,"palette":["#241414","#4b3440","#2c2424","#654e53","#746474","#847c84"],"color_groups":[{"hex":"#241414","weight":0.283,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#4b3440","weight":0.2264,"lightness":0.249,"saturation":0.1811,"hue_group":"purple"},{"hex":"#2c2424","weight":0.1698,"lightness":0.1569,"saturation":0.1,"hue_group":"neutral"},{"hex":"#654e53","weight":0.1509,"lightness":0.351,"saturation":0.1285,"hue_group":"red"},{"hex":"#746474","weight":0.0943,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#847c84","weight":0.0755,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_shovel.png","family":"netherite_tools","relations":[{"type":"variants","target":"minecraft:netherite_axe","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_axe","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_hoe","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_hoe","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_pickaxe","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_pickaxe","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_sword","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_sword","label":"Related set: netherite_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:netherite_tools","label":"Related set: netherite_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_chirp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_lava_chicken","label":"Shared hue group: red","confidence":0.55}],"category":"tool"},{"id":"minecraft:netherite_spear","name":"Netherite Spear","entry_type":"item","description":"A netherite spear is a late-game variant of spear obtained by upgrading a diamond spear using a netherite ingot and netherite upgrade at a smithing table. It can be used to perform slow jab attacks or held forward to deal increasing damage based on how quickly the wielder is moving. It is the highest tier of spear, dealing more damage and having higher durability than a diamond spear, at the cost of lower attack speed.","history":[{"version":"1.21.11 25w41a","status":"added","notes":"Added netherite spears."}],"colors":{"primary":"#433137","dominant_hex":"#241414","average_hex":"#433137","hue_group":"red","lightness":0.2275,"saturation":0.1552,"palette":["#241414","#4b3242","#654b50","#372f2f","#2c2424","#847c84"],"color_groups":[{"hex":"#241414","weight":0.2568,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#4b3242","weight":0.2297,"lightness":0.2451,"saturation":0.2,"hue_group":"purple"},{"hex":"#654b50","weight":0.1757,"lightness":0.3451,"saturation":0.1477,"hue_group":"red"},{"hex":"#372f2f","weight":0.1351,"lightness":0.2,"saturation":0.0784,"hue_group":"neutral"},{"hex":"#2c2424","weight":0.1216,"lightness":0.1569,"saturation":0.1,"hue_group":"neutral"},{"hex":"#847c84","weight":0.0811,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_spear.png","family":"netherite_spear","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_chirp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_lava_chicken","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:netherite_sword","name":"Netherite Sword","entry_type":"item","description":"A netherite sword is a late-game variant of sword obtained by upgrading a diamond sword using a netherite ingot and netherite upgrade at a smithing table. It is the highest tier of sword, dealing more damage than a diamond sword and having higher durability.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added netherite swords."}],"colors":{"primary":"#46323b","dominant_hex":"#4c3042","average_hex":"#46323b","hue_group":"red","lightness":0.2353,"saturation":0.1667,"palette":["#4c3042","#231414","#5a4a51","#322424","#746474","#847c84"],"color_groups":[{"hex":"#4c3042","weight":0.3452,"lightness":0.2431,"saturation":0.2258,"hue_group":"purple"},{"hex":"#231414","weight":0.2738,"lightness":0.1078,"saturation":0.2727,"hue_group":"red"},{"hex":"#5a4a51","weight":0.131,"lightness":0.3216,"saturation":0.0976,"hue_group":"neutral"},{"hex":"#322424","weight":0.1071,"lightness":0.1686,"saturation":0.1628,"hue_group":"red"},{"hex":"#746474","weight":0.0714,"lightness":0.4235,"saturation":0.0741,"hue_group":"neutral"},{"hex":"#847c84","weight":0.0714,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_sword.png","family":"netherite_tools","relations":[{"type":"variants","target":"minecraft:netherite_axe","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_axe","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_hoe","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_hoe","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_pickaxe","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_pickaxe","label":"Related set: netherite_tools","confidence":0.8},{"type":"variants","target":"minecraft:netherite_shovel","label":"Same family: netherite_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:netherite_shovel","label":"Related set: netherite_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:netherite_tools","label":"Related set: netherite_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_chirp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_lava_chicken","label":"Shared hue group: red","confidence":0.55}],"category":"tool"},{"id":"minecraft:netherite_upgrade_smithing_template","name":"Netherite Upgrade Smithing Template","entry_type":"item","description":"A netherite upgrade is a type of smithing template used in smithing tables to upgrade armor and tools from diamond to netherite. It is consumed when used, but can be duplicated using an existing template, netherrack, and diamonds.","history":[{"version":"1.19.4","status":"added","notes":"Added the netherite upgrade smithing template behind the \"Update 1.20\" experimental data pack."}],"colors":{"primary":"#5c3a3b","dominant_hex":"#743434","average_hex":"#5c3a3b","hue_group":"red","lightness":0.2941,"saturation":0.2267,"palette":["#743434","#340c0c","#642c2c","#844444","#3ebcca","#541414"],"color_groups":[{"hex":"#743434","weight":0.2361,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#340c0c","weight":0.1944,"lightness":0.1255,"saturation":0.625,"hue_group":"red"},{"hex":"#642c2c","weight":0.1944,"lightness":0.2824,"saturation":0.3889,"hue_group":"red"},{"hex":"#844444","weight":0.1528,"lightness":0.3922,"saturation":0.32,"hue_group":"red"},{"hex":"#3ebcca","weight":0.125,"lightness":0.5176,"saturation":0.5691,"hue_group":"cyan"},{"hex":"#541414","weight":0.0972,"lightness":0.2039,"saturation":0.6154,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/netherite_upgrade_smithing_template.png","family":"netherite_upgrade_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:black_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_relic","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_horse_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_key","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_lava_chicken","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:netherrack","name":"Netherrack","entry_type":"block","description":"Netherrack is a frail stone block found abundantly in the Nether. Fire lit on top of netherrack burns indefinitely and cannot be extinguished by rain.","history":[{"version":"v1.2.0 preview","status":"added","notes":"Added netherrack, referred to by Notch at one point as \"netherstone\". [ 1 ]"},{"version":"wiki-history","status":"added","notes":"added for netherrack."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb netherrack, providing the football/regular effect to the mob."}],"colors":{"primary":"#622626","dominant_hex":"#773737","average_hex":"#622626","hue_group":"red","lightness":0.2667,"saturation":0.4412,"palette":["#773737","#642c2c","#541c1c","#541414","#542424","#441414"],"color_groups":[{"hex":"#773737","weight":0.3203,"lightness":0.3412,"saturation":0.3678,"hue_group":"red"},{"hex":"#642c2c","weight":0.2812,"lightness":0.2824,"saturation":0.3889,"hue_group":"red"},{"hex":"#541c1c","weight":0.1758,"lightness":0.2196,"saturation":0.5,"hue_group":"red"},{"hex":"#541414","weight":0.1016,"lightness":0.2039,"saturation":0.6154,"hue_group":"red"},{"hex":"#542424","weight":0.0664,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#441414","weight":0.0547,"lightness":0.1725,"saturation":0.5455,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/netherrack.png","family":"netherrack","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_gold_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_wall_torch","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_door","label":"Palette proche: Mangrove Door","confidence":0.935},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.933},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.922},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.922},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.922},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.922},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.922},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.922},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.922},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:mangrove_trapdoor","label":"Palette proche: Mangrove Trapdoor","confidence":0.92},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.795},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.78},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.78},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.765},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.749},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.745},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.745},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.745},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.745},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.745},{"type":"color_analogous","target":"minecraft:red_stained_glass_pane","label":"Couleurs analogues: Red Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_nylium","label":"Couleurs analogues: Crimson Nylium","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass","label":"Couleurs analogues: Red Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete","label":"Couleurs analogues: Red Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_wart_block","label":"Couleurs analogues: Nether Wart Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:weeping_vines","label":"Couleurs analogues: Weeping Vines","confidence":0.96},{"type":"color_analogous","target":"minecraft:barrier","label":"Couleurs analogues: Barrier","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.956},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.935},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.935},{"type":"color_complement","target":"minecraft:warped_hanging_sign","label":"Contraste complementaire: Warped Hanging Sign","confidence":0.935},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.946},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.945},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.926},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.907},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.907},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.873},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.833},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.83},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:cactus","label":"Harmonie carree: Cactus","confidence":0.96},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.96},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.944},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.944},{"type":"color_square","target":"minecraft:sugar_cane","label":"Harmonie carree: Sugar Cane","confidence":0.944},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.683},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.649},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.64},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.64},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.64},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.64},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.627},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.592}],"category":""},{"id":"minecraft:note_block","name":"Note Block","entry_type":"block","description":"A note block is a block that emits sounds when attacked, used, or powered. The sound produced can be altered in various ways by using it or putting certain blocks directly above or below it. Allays are affected by note blocks, staying nearby and dropping held items next to it for a short while upon hearing its sound.","history":[{"version":"1.2","status":"added","notes":"Added note blocks."},{"version":"wiki-history","status":"added","notes":"added in the sound files, but is currently unused."},{"version":"1.12 17w16a","status":"added","notes":"Added sound events (but not the sounds themselves) for additional instruments (bell, chime, flute, guitar, xylophone) to note blocks."}],"colors":{"primary":"#593b29","dominant_hex":"#2c2c24","average_hex":"#593b29","hue_group":"red","lightness":0.2549,"saturation":0.3692,"palette":["#2c2c24","#442c1c","#945c44","#5c3424","#7c543c","#5c3c2c"],"color_groups":[{"hex":"#2c2c24","weight":0.2344,"lightness":0.1569,"saturation":0.1,"hue_group":"neutral"},{"hex":"#442c1c","weight":0.1914,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#945c44","weight":0.168,"lightness":0.4235,"saturation":0.3704,"hue_group":"red"},{"hex":"#5c3424","weight":0.1602,"lightness":0.251,"saturation":0.4375,"hue_group":"red"},{"hex":"#7c543c","weight":0.1602,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#5c3c2c","weight":0.0859,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/note_block.png","family":"note_block","relations":[{"type":"visual_neighbors","target":"minecraft:brown_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_wall_torch","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jukebox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jukebox","label":"Palette proche: Jukebox","confidence":0.94},{"type":"color_neighbors","target":"minecraft:coarse_dirt","label":"Palette proche: Coarse Dirt","confidence":0.884},{"type":"color_neighbors","target":"minecraft:item_frame","label":"Palette proche: Item Frame","confidence":0.869},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.868},{"type":"color_neighbors","target":"minecraft:brown_terracotta","label":"Palette proche: Brown Terracotta","confidence":0.86},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.852},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.845},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.845},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.845},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.845},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.845},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.845},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.828},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.809},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.801},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.801},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.794},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.793},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.776},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.776},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.772},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.771},{"type":"color_analogous","target":"minecraft:brown_terracotta","label":"Couleurs analogues: Brown Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:jukebox","label":"Couleurs analogues: Jukebox","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.957},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.945},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.922},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.904},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.96},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.95},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.949},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.939},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.849},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.812},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.792},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.792},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.858},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.807},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.806},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.795},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.698},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.698},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.659},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.65},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.65},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.65},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.65},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.611}],"category":"utility"},{"id":"minecraft:oak_boat","name":"Oak Boat","entry_type":"item","description":"Boats (including bamboo rafts) are drivable vehicle entities that can be ridden through water or at high speeds across all types of ice. Most mobs will ride nearby boats, which they cannot control or exit on their own.","history":[{"version":"v1.0.6","status":"added","notes":"Added boats."},{"version":"wiki-history","status":"added","notes":"added again."},{"version":"18w15a","status":"added","notes":"Added blue ice , which allows boats to travel even faster on it."}],"colors":{"primary":"#7a643f","dominant_hex":"#423622","average_hex":"#7a643f","hue_group":"yellow","lightness":0.3627,"saturation":0.3189,"palette":["#423622","#be9e6b","#5c4c2c","#9c844c","#6c5c3c","#846c3c"],"color_groups":[{"hex":"#423622","weight":0.2424,"lightness":0.1961,"saturation":0.32,"hue_group":"yellow"},{"hex":"#be9e6b","weight":0.2303,"lightness":0.5824,"saturation":0.3897,"hue_group":"yellow"},{"hex":"#5c4c2c","weight":0.2,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"},{"hex":"#9c844c","weight":0.1273,"lightness":0.4549,"saturation":0.3448,"hue_group":"yellow"},{"hex":"#6c5c3c","weight":0.1091,"lightness":0.3294,"saturation":0.2857,"hue_group":"yellow"},{"hex":"#846c3c","weight":0.0909,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/oak_boat.png","family":"oak_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:armor_stand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_hide","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spyglass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:oak_button","name":"Oak Button","entry_type":"block","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added wooden buttons. They are currently uncraftable."},{"version":"12w34b","status":"added","notes":"Added crafting recipe for wooden buttons. Recipe"},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped buttons."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"oak_button","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:oak_chest_boat","name":"Oak Chest Boat","entry_type":"item","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#735a33","dominant_hex":"#997530","average_hex":"#735a33","hue_group":"yellow","lightness":0.3255,"saturation":0.3855,"palette":["#997530","#be9e6b","#64502b","#443820","#382d20","#2c1c0c"],"color_groups":[{"hex":"#997530","weight":0.2471,"lightness":0.3941,"saturation":0.5224,"hue_group":"yellow"},{"hex":"#be9e6b","weight":0.1897,"lightness":0.5824,"saturation":0.3897,"hue_group":"yellow"},{"hex":"#64502b","weight":0.1839,"lightness":0.2804,"saturation":0.3986,"hue_group":"yellow"},{"hex":"#443820","weight":0.1724,"lightness":0.1961,"saturation":0.36,"hue_group":"yellow"},{"hex":"#382d20","weight":0.1264,"lightness":0.1725,"saturation":0.2727,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.0805,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/oak_chest_boat.png","family":"oak_chest_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:book","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_chest_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crossbow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armor_stand","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:oak_door","name":"Oak Door","entry_type":"block","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","history":[{"version":"20100607","status":"added","notes":"Added wooden doors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"18w49a","status":"added","notes":"Added snowy tundra villages, which generate with spruce doors."}],"colors":{"primary":"#8d6f42","dominant_hex":"#927446","average_hex":"#8d6f42","hue_group":"yellow","lightness":0.4059,"saturation":0.3623,"palette":["#927446","#61502b","#a18553","#bc945c","#7c6434","#b48c54"],"color_groups":[{"hex":"#927446","weight":0.3125,"lightness":0.4235,"saturation":0.3519,"hue_group":"yellow"},{"hex":"#61502b","weight":0.2837,"lightness":0.2745,"saturation":0.3857,"hue_group":"yellow"},{"hex":"#a18553","weight":0.1923,"lightness":0.4784,"saturation":0.3197,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.0913,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0625,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#b48c54","weight":0.0577,"lightness":0.5176,"saturation":0.3902,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_door_top.png","family":"oak","relations":[{"type":"variants","target":"minecraft:oak_fence","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_fence","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_leaves","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_leaves","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_log","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_log","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_planks","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_planks","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_sapling","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_sapling","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_slab","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_slab","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_stairs","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_stairs","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_wood","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_wood","label":"Related set: oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:green_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dirt_path","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powered_rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oak_shelf","label":"Palette proche: Oak Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lectern","label":"Palette proche: Lectern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.878},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.859},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.855},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.841},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.841},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.825},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.824},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.822},{"type":"color_analogous","target":"minecraft:oak_shelf","label":"Couleurs analogues: Oak Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_shelf","label":"Couleurs analogues: Jungle Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:crafting_table","label":"Couleurs analogues: Crafting Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_trapdoor","label":"Couleurs analogues: Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:ladder","label":"Couleurs analogues: Ladder","confidence":0.96},{"type":"color_analogous","target":"minecraft:bookshelf","label":"Couleurs analogues: Bookshelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.932},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.899},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.898},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.882},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.865},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.848},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.842},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.833},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_carpet","label":"Harmonie triadique: Purple Carpet","confidence":0.956},{"type":"color_triad","target":"minecraft:purple_wool","label":"Harmonie triadique: Purple Wool","confidence":0.956},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.947},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.947},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.945},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.941},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.925},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.908},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.866},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.857},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone_slab","label":"Contraste clair sombre: Cut Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_slab","label":"Contraste clair sombre: Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_stairs","label":"Contraste clair sombre: Sandstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_sandstone","label":"Contraste clair sombre: Smooth Sandstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_sandstone_slab","label":"Contraste clair sombre: Smooth Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_sandstone_stairs","label":"Contraste clair sombre: Smooth Sandstone Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:oak_fence","name":"Oak Fence","entry_type":"block","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","history":[{"version":"20100629","status":"added","notes":"added to the game. There are three defined states: north-south, east-west and a cross. These models are currently unused."},{"version":"v1.0.17","status":"added","notes":"Added fences."},{"version":"1.8","status":"added","notes":"Added villages and strongholds , where wooden fences naturally generate."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"oak","relations":[{"type":"variants","target":"minecraft:oak_door","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_door","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_leaves","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_leaves","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_log","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_log","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_planks","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_planks","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_sapling","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_sapling","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_slab","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_slab","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_stairs","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_stairs","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_wood","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_wood","label":"Related set: oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:oak_fence_gate","name":"Oak Fence Gate","entry_type":"block","description":"A fence gate is a block that shares the functions of both the door and the fence.","history":[{"version":"Pre-release","status":"added","notes":"Added fence gates."},{"version":"14w32b","status":"added","notes":"Added spruce, birch, jungle, acacia, and dark oak fence gates."},{"version":"18w49a","status":"added","notes":"added snowy tundra villages."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"oak_fence_gate","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:oak_hanging_sign","name":"Oak Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#b19056","dominant_hex":"#bc965c","average_hex":"#b19056","hue_group":"yellow","lightness":0.5157,"saturation":0.3684,"palette":["#bc965c","#c39e64","#ae8c54","#a4854c","#997944","#b4945b"],"color_groups":[{"hex":"#bc965c","weight":0.25,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#c39e64","weight":0.2188,"lightness":0.5784,"saturation":0.4419,"hue_group":"yellow"},{"hex":"#ae8c54","weight":0.1836,"lightness":0.5059,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#a4854c","weight":0.1328,"lightness":0.4706,"saturation":0.3667,"hue_group":"yellow"},{"hex":"#997944","weight":0.1133,"lightness":0.4333,"saturation":0.3846,"hue_group":"yellow"},{"hex":"#b4945b","weight":0.1016,"lightness":0.5314,"saturation":0.3724,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_oak_log.png","family":"oak_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lectern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beehive","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Palette proche: Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_oak_log","label":"Palette proche: Stripped Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_oak_wood","label":"Palette proche: Stripped Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:beehive","label":"Palette proche: Beehive","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lectern","label":"Palette proche: Lectern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.849},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.842},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.824},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.824},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.822},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.822},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.821},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.814},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.803},{"type":"color_analogous","target":"minecraft:oak_wall_hanging_sign","label":"Couleurs analogues: Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_oak_log","label":"Couleurs analogues: Stripped Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_oak_wood","label":"Couleurs analogues: Stripped Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_bookshelf","label":"Couleurs analogues: Chiseled Bookshelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:beehive","label":"Couleurs analogues: Beehive","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.94},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.924},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.908},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.906},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.84},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.825},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_trapdoor","label":"Harmonie triadique: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Harmonie triadique: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.854},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.854},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.852},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.848},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.832},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.816},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.764},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:oak_leaves","name":"Oak Leaves","entry_type":"block","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","history":[{"version":"0.0.14a","status":"added","notes":"Added leaves."},{"version":"1.2","status":"added","notes":"Added spruce and birch leaves, which are colored #619961 and #80a755 respectively, and do not vary across biomes."},{"version":"1.7","status":"added","notes":"Added shears , which collect leaves. Before, leaves could be obtained only via inventory editing."}],"colors":{"primary":"#909090","dominant_hex":"#9c9c9c","average_hex":"#909090","hue_group":"neutral","lightness":0.5647,"saturation":0.0,"palette":["#9c9c9c","#bcbcbc","#747474","#6c646c"],"color_groups":[{"hex":"#9c9c9c","weight":0.3314,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcbc","weight":0.2616,"lightness":0.7373,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.2093,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c646c","weight":0.1977,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_leaves.png","family":"oak","relations":[{"type":"variants","target":"minecraft:oak_door","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_door","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_fence","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_fence","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_log","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_log","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_planks","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_planks","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_sapling","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_sapling","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_slab","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_slab","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_stairs","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_stairs","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_wood","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_wood","label":"Related set: oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:attached_melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_bricks","label":"Palette proche: Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.937},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.937},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.937},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.937},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.934},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_stairs","label":"Pont de nuance par palette: Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_wall","label":"Pont de nuance par palette: Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_bricks","label":"Pont de nuance par palette: Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55}],"category":"natural"},{"id":"minecraft:oak_log","name":"Oak Log","entry_type":"block","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","history":[{"version":"0.0.14a","status":"added","notes":"Added wood."},{"version":"1.2","status":"added","notes":"Added spruce and birch wood."},{"version":"wiki-history","status":"added","notes":"Added \"Getting Wood\" achievement for picking up a wood item ."}],"colors":{"primary":"#6d5533","dominant_hex":"#745c34","average_hex":"#6d5533","hue_group":"yellow","lightness":0.3137,"saturation":0.3625,"palette":["#745c34","#947444","#5c4c2c","#4c3c24","#3c2c1c","#9c7c4c"],"color_groups":[{"hex":"#745c34","weight":0.4219,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#947444","weight":0.1641,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#5c4c2c","weight":0.1484,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"},{"hex":"#4c3c24","weight":0.1445,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#3c2c1c","weight":0.0742,"lightness":0.1725,"saturation":0.3636,"hue_group":"yellow"},{"hex":"#9c7c4c","weight":0.0469,"lightness":0.4549,"saturation":0.3448,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_log.png","family":"oak","relations":[{"type":"variants","target":"minecraft:oak_door","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_door","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_fence","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_fence","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_leaves","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_leaves","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_planks","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_planks","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_sapling","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_sapling","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_slab","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_slab","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_stairs","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_stairs","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_wood","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_wood","label":"Related set: oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:ladder","label":"Palette proche: Ladder","confidence":0.937},{"type":"color_neighbors","target":"minecraft:oak_shelf","label":"Palette proche: Oak Shelf","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_shelf","label":"Palette proche: Spruce Shelf","confidence":0.935},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.934},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.934},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.929},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.929},{"type":"color_neighbors","target":"minecraft:stripped_spruce_log","label":"Palette proche: Stripped Spruce Log","confidence":0.929},{"type":"color_neighbors","target":"minecraft:stripped_spruce_wood","label":"Palette proche: Stripped Spruce Wood","confidence":0.929},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.864},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.859},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.857},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.843},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.83},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.83},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.827},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.815},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.815},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.804},{"type":"color_analogous","target":"minecraft:oak_wood","label":"Couleurs analogues: Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_log","label":"Couleurs analogues: Stripped Spruce Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_wood","label":"Couleurs analogues: Stripped Spruce Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:ladder","label":"Couleurs analogues: Ladder","confidence":0.96},{"type":"color_analogous","target":"minecraft:dead_bush","label":"Couleurs analogues: Dead Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_dead_bush","label":"Couleurs analogues: Potted Dead Bush","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.926},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.91},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.904},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.871},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.838},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.821},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.814},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.805},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.959},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.945},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.939},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.935},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.943},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.891},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.831},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.635},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.602},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.589},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.589},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.589},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.589},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.579},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.555}],"category":"natural"},{"id":"minecraft:oak_planks","name":"Oak Planks","entry_type":"block","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","history":[{"version":"rd-20090515","status":"added","notes":"Added wooden planks."},{"version":"1.2.4 release","status":"added","notes":"Added spruce, birch and jungle wood planks. They are crafted from their corresponding wood . The color of wood planks available to this point is now obtainable only from oak wood."},{"version":"18w07a","status":"added","notes":"Added stripped logs, a variant of logs , which can be used to craft wood planks."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"oak","relations":[{"type":"variants","target":"minecraft:oak_door","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_door","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_fence","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_fence","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_leaves","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_leaves","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_log","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_log","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_sapling","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_sapling","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_slab","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_slab","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_stairs","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_stairs","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_wood","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_wood","label":"Related set: oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:oak_pressure_plate","name":"Oak Pressure Plate","entry_type":"block","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","history":[{"version":"v1.0.1","status":"added","notes":"Added wooden pressure plates."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped pressure plates."},{"version":"1.19 22w11a","status":"added","notes":"Added mangrove pressure plates."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"oak_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:oak_sapling","name":"Oak Sapling","entry_type":"block","description":"A sapling is a non-solid block that can be grown into a tree.","history":[{"version":"rd-161348","status":"added","notes":"Added saplings as the fifth placeable block in the game."},{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added tree growth."},{"version":"1.5","status":"added","notes":"Added spruce and birch saplings. Before, trees dropped only oak saplings, regardless of the tree."}],"colors":{"primary":"#4e6b29","dominant_hex":"#75562e","average_hex":"#4e6b29","hue_group":"yellow","lightness":0.2902,"saturation":0.4459,"palette":["#75562e","#195e19","#448c2c","#54ac3c","#5c3c1c","#4c3414"],"color_groups":[{"hex":"#75562e","weight":0.2523,"lightness":0.3196,"saturation":0.4356,"hue_group":"yellow"},{"hex":"#195e19","weight":0.1892,"lightness":0.2333,"saturation":0.5798,"hue_group":"green"},{"hex":"#448c2c","weight":0.1802,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#54ac3c","weight":0.1712,"lightness":0.4549,"saturation":0.4828,"hue_group":"green"},{"hex":"#5c3c1c","weight":0.1261,"lightness":0.2353,"saturation":0.5333,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.0811,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_sapling.png","family":"oak","relations":[{"type":"variants","target":"minecraft:oak_door","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_door","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_fence","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_fence","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_leaves","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_leaves","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_log","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_log","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_planks","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_planks","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_slab","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_slab","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_stairs","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_stairs","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_wood","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_wood","label":"Related set: oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rose_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_oak_sapling","label":"Palette proche: Potted Oak Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sapling","label":"Palette proche: Dark Oak Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Palette proche: Potted Dark Oak Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sapling","label":"Palette proche: Bamboo Sapling","confidence":0.74},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.74},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.73},{"type":"color_neighbors","target":"minecraft:potted_spruce_sapling","label":"Palette proche: Potted Spruce Sapling","confidence":0.73},{"type":"color_neighbors","target":"minecraft:spruce_sapling","label":"Palette proche: Spruce Sapling","confidence":0.73},{"type":"color_neighbors","target":"minecraft:cave_vines_plant","label":"Palette proche: Cave Vines Plant","confidence":0.726},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.726},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.726},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.726},{"type":"color_bridge","target":"minecraft:spruce_button","label":"Pont de nuance par palette: Spruce Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_fence","label":"Pont de nuance par palette: Spruce Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_fence_gate","label":"Pont de nuance par palette: Spruce Fence Gate","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_planks","label":"Pont de nuance par palette: Spruce Planks","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_pressure_plate","label":"Pont de nuance par palette: Spruce Pressure Plate","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_sign","label":"Pont de nuance par palette: Spruce Sign","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_slab","label":"Pont de nuance par palette: Spruce Slab","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_stairs","label":"Pont de nuance par palette: Spruce Stairs","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_wall_sign","label":"Pont de nuance par palette: Spruce Wall Sign","confidence":0.774},{"type":"color_bridge","target":"minecraft:dark_oak_door","label":"Pont de nuance par palette: Dark Oak Door","confidence":0.769},{"type":"color_analogous","target":"minecraft:potted_oak_sapling","label":"Couleurs analogues: Potted Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_tulip","label":"Couleurs analogues: Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_orange_tulip","label":"Couleurs analogues: Potted Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete_powder","label":"Couleurs analogues: Lime Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.956},{"type":"color_analogous","target":"minecraft:lime_stained_glass","label":"Couleurs analogues: Lime Stained Glass","confidence":0.956},{"type":"color_analogous","target":"minecraft:potted_red_tulip","label":"Couleurs analogues: Potted Red Tulip","confidence":0.95},{"type":"color_analogous","target":"minecraft:red_tulip","label":"Couleurs analogues: Red Tulip","confidence":0.95},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.953},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.951},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.932},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.923},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.923},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.921},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.917},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.96},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.953},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.953},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.953},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.936},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.933},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.929},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.929},{"type":"color_square","target":"minecraft:warped_door","label":"Harmonie carree: Warped Door","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_hyphae","label":"Harmonie carree: Crimson Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_stem","label":"Harmonie carree: Crimson Stem","confidence":0.96},{"type":"color_square","target":"minecraft:black_glazed_terracotta","label":"Harmonie carree: Black Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:fire_coral","label":"Harmonie carree: Fire Coral","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_hanging_sign","label":"Harmonie carree: Cherry Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_wall_hanging_sign","label":"Harmonie carree: Cherry Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_cherry_log","label":"Harmonie carree: Stripped Cherry Log","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.647},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.614},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.591},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.573},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.573},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.56},{"type":"value_contrast","target":"minecraft:azure_bluet","label":"Contraste clair sombre: Azure Bluet","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_azure_bluet","label":"Contraste clair sombre: Potted Azure Bluet","confidence":0.55}],"category":"natural"},{"id":"minecraft:oak_shelf","name":"Oak Shelf","entry_type":"block","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added shelves."},{"version":"wiki-history","status":"added","notes":"Added the align_items_to_bottom block state property, by default set to false, to display items at the bottom of the shelf rather than in the middle."}],"colors":{"primary":"#917343","dominant_hex":"#be9a60","average_hex":"#917343","hue_group":"yellow","lightness":0.4157,"saturation":0.3679,"palette":["#be9a60","#745c34","#7c6434","#a98850","#5e4e29","#977844"],"color_groups":[{"hex":"#be9a60","weight":0.2568,"lightness":0.5608,"saturation":0.4196,"hue_group":"yellow"},{"hex":"#745c34","weight":0.2129,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.1748,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#a98850","weight":0.1357,"lightness":0.4882,"saturation":0.3574,"hue_group":"yellow"},{"hex":"#5e4e29","weight":0.1113,"lightness":0.2647,"saturation":0.3926,"hue_group":"yellow"},{"hex":"#977844","weight":0.1084,"lightness":0.4294,"saturation":0.379,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_shelf.png","family":"oak_shelf","relations":[{"type":"visual_neighbors","target":"minecraft:green_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dirt_path","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powered_rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.87},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.848},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.845},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.833},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.833},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.824},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.824},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.821},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.815},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.813},{"type":"color_analogous","target":"minecraft:oak_door","label":"Couleurs analogues: Oak Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_trapdoor","label":"Couleurs analogues: Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:crafting_table","label":"Couleurs analogues: Crafting Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.93},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.897},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.88},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.873},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.868},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.864},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.852},{"type":"color_triad","target":"minecraft:oxidized_copper_bulb","label":"Harmonie triadique: Oxidized Copper Bulb","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_bulb","label":"Harmonie triadique: Waxed Oxidized Copper Bulb","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper","label":"Harmonie triadique: Oxidized Cut Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper_slab","label":"Harmonie triadique: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper_stairs","label":"Harmonie triadique: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_cut_copper","label":"Harmonie triadique: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Harmonie triadique: Waxed Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Harmonie triadique: Waxed Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.909},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.909},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.907},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.905},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.903},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.887},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.87},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.819},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55}],"category":""},{"id":"minecraft:oak_sign","name":"Oak Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"oak_sign","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:oak_slab","name":"Oak Slab","entry_type":"block","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","history":[{"version":"1.7.2 1.7","status":"added","notes":"Added acacia and dark oak slabs."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped slabs."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"oak","relations":[{"type":"variants","target":"minecraft:oak_door","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_door","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_fence","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_fence","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_leaves","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_leaves","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_log","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_log","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_planks","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_planks","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_sapling","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_sapling","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_stairs","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_stairs","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_wood","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_wood","label":"Related set: oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:oak_stairs","name":"Oak Stairs","entry_type":"block","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","history":[{"version":"20100629","status":"added","notes":"Added \"wooden\" stairs."},{"version":"1.3.1 12w25a","status":"added","notes":"Added wooden stairs for the remaining three wood types (spruce, birch, and jungle)."},{"version":"12w26a","status":"added","notes":"Added crafting recipes for spruce, birch, and jungle wood stairs."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"oak","relations":[{"type":"variants","target":"minecraft:oak_door","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_door","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_fence","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_fence","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_leaves","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_leaves","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_log","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_log","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_planks","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_planks","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_sapling","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_sapling","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_slab","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_slab","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_wood","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_wood","label":"Related set: oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:oak_trapdoor","name":"Oak Trapdoor","entry_type":"block","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","history":[{"version":"1.6","status":"added","notes":"Added wooden trapdoors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped trapdoors."}],"colors":{"primary":"#7d6339","dominant_hex":"#9c7c4c","average_hex":"#7d6339","hue_group":"yellow","lightness":0.3569,"saturation":0.3736,"palette":["#9c7c4c","#64542c","#4c3c24","#8c7444","#b48c54","#745c34"],"color_groups":[{"hex":"#9c7c4c","weight":0.2773,"lightness":0.4549,"saturation":0.3448,"hue_group":"yellow"},{"hex":"#64542c","weight":0.2136,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#4c3c24","weight":0.1955,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#8c7444","weight":0.1818,"lightness":0.4078,"saturation":0.3462,"hue_group":"yellow"},{"hex":"#b48c54","weight":0.0909,"lightness":0.5176,"saturation":0.3902,"hue_group":"yellow"},{"hex":"#745c34","weight":0.0409,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_trapdoor.png","family":"oak_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:ladder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:ladder","label":"Palette proche: Ladder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_shelf","label":"Palette proche: Oak Shelf","confidence":0.937},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.936},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.936},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.936},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.936},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.936},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.936},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.936},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.874},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.867},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.856},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.842},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.842},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.836},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.836},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.825},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.825},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.825},{"type":"color_analogous","target":"minecraft:ladder","label":"Couleurs analogues: Ladder","confidence":0.96},{"type":"color_analogous","target":"minecraft:bookshelf","label":"Couleurs analogues: Bookshelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_log","label":"Couleurs analogues: Stripped Spruce Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_wood","label":"Couleurs analogues: Stripped Spruce Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_shelf","label":"Couleurs analogues: Oak Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_door","label":"Couleurs analogues: Oak Door","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.935},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.902},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.885},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.878},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.869},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.865},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.848},{"type":"color_triad","target":"minecraft:oxidized_copper_bars","label":"Harmonie triadique: Oxidized Copper Bars","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_bars","label":"Harmonie triadique: Waxed Oxidized Copper Bars","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_bulb","label":"Harmonie triadique: Oxidized Copper Bulb","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_bulb","label":"Harmonie triadique: Waxed Oxidized Copper Bulb","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper","label":"Harmonie triadique: Oxidized Cut Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper_slab","label":"Harmonie triadique: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper_stairs","label":"Harmonie triadique: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_cut_copper","label":"Harmonie triadique: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.911},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.904},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.904},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.902},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.898},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.882},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.865},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.813},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.594},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.56},{"type":"value_contrast","target":"minecraft:sandstone","label":"Contraste clair sombre: Sandstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_wall","label":"Contraste clair sombre: Sandstone Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_sandstone","label":"Contraste clair sombre: Chiseled Sandstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:suspicious_sand","label":"Contraste clair sombre: Suspicious Sand","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone","label":"Contraste clair sombre: Cut Sandstone","confidence":0.55}],"category":"building"},{"id":"minecraft:oak_wall_hanging_sign","name":"Oak Wall Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#b19056","dominant_hex":"#bc965c","average_hex":"#b19056","hue_group":"yellow","lightness":0.5157,"saturation":0.3684,"palette":["#bc965c","#c39e64","#ae8c54","#a4854c","#997944","#b4945b"],"color_groups":[{"hex":"#bc965c","weight":0.25,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#c39e64","weight":0.2188,"lightness":0.5784,"saturation":0.4419,"hue_group":"yellow"},{"hex":"#ae8c54","weight":0.1836,"lightness":0.5059,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#a4854c","weight":0.1328,"lightness":0.4706,"saturation":0.3667,"hue_group":"yellow"},{"hex":"#997944","weight":0.1133,"lightness":0.4333,"saturation":0.3846,"hue_group":"yellow"},{"hex":"#b4945b","weight":0.1016,"lightness":0.5314,"saturation":0.3724,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_oak_log.png","family":"oak_wall_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lectern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beehive","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oak_hanging_sign","label":"Palette proche: Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_oak_log","label":"Palette proche: Stripped Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_oak_wood","label":"Palette proche: Stripped Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:beehive","label":"Palette proche: Beehive","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lectern","label":"Palette proche: Lectern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.849},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.842},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.824},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.824},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.822},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.822},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.821},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.814},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.803},{"type":"color_analogous","target":"minecraft:oak_hanging_sign","label":"Couleurs analogues: Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_oak_log","label":"Couleurs analogues: Stripped Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_oak_wood","label":"Couleurs analogues: Stripped Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_bookshelf","label":"Couleurs analogues: Chiseled Bookshelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:beehive","label":"Couleurs analogues: Beehive","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.94},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.924},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.908},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.906},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.84},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.825},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_trapdoor","label":"Harmonie triadique: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Harmonie triadique: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.854},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.854},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.852},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.848},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.832},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.816},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.764},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:oak_wall_sign","name":"Oak Wall Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"oak_wall_sign","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:oak_wood","name":"Oak Wood","entry_type":"block","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","history":[{"version":"1.3.1 12w30d","status":"added","notes":"Added six-sided wood blocks, which look similar to logs , but have the wood's \"bark\" texture (side texture when placed vertically) on all 6 sides."},{"version":"1.7.2 13w43a","status":"added","notes":"Added two new types of wood: acacia and dark oak."},{"version":"1","status":"added","notes":"Added top textures of the bark blocks."}],"colors":{"primary":"#6d5533","dominant_hex":"#745c34","average_hex":"#6d5533","hue_group":"yellow","lightness":0.3137,"saturation":0.3625,"palette":["#745c34","#947444","#5c4c2c","#4c3c24","#3c2c1c","#9c7c4c"],"color_groups":[{"hex":"#745c34","weight":0.4219,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#947444","weight":0.1641,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#5c4c2c","weight":0.1484,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"},{"hex":"#4c3c24","weight":0.1445,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#3c2c1c","weight":0.0742,"lightness":0.1725,"saturation":0.3636,"hue_group":"yellow"},{"hex":"#9c7c4c","weight":0.0469,"lightness":0.4549,"saturation":0.3448,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_log.png","family":"oak","relations":[{"type":"variants","target":"minecraft:oak_door","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_door","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_fence","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_fence","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_leaves","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_leaves","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_log","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_log","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_planks","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_planks","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_sapling","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_sapling","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_slab","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_slab","label":"Related set: oak","confidence":0.8},{"type":"variants","target":"minecraft:oak_stairs","label":"Same family: oak","confidence":0.75},{"type":"related_sets","target":"minecraft:oak_stairs","label":"Related set: oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:ladder","label":"Palette proche: Ladder","confidence":0.937},{"type":"color_neighbors","target":"minecraft:oak_shelf","label":"Palette proche: Oak Shelf","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_shelf","label":"Palette proche: Spruce Shelf","confidence":0.935},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.934},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.934},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.929},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.929},{"type":"color_neighbors","target":"minecraft:stripped_spruce_log","label":"Palette proche: Stripped Spruce Log","confidence":0.929},{"type":"color_neighbors","target":"minecraft:stripped_spruce_wood","label":"Palette proche: Stripped Spruce Wood","confidence":0.929},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.864},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.859},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.857},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.843},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.83},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.83},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.827},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.815},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.815},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.804},{"type":"color_analogous","target":"minecraft:oak_log","label":"Couleurs analogues: Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_log","label":"Couleurs analogues: Stripped Spruce Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_wood","label":"Couleurs analogues: Stripped Spruce Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:ladder","label":"Couleurs analogues: Ladder","confidence":0.96},{"type":"color_analogous","target":"minecraft:dead_bush","label":"Couleurs analogues: Dead Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_dead_bush","label":"Couleurs analogues: Potted Dead Bush","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.926},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.91},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.904},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.871},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.838},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.821},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.814},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.805},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.959},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.945},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.939},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.935},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.943},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.891},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.831},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.635},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.602},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.589},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.589},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.589},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.589},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.579},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.555}],"category":"building"},{"id":"minecraft:observer","name":"Observer","entry_type":"block","description":"An observer is a block that emits a quick redstone pulse from its back whenever its \"face\" detects that the block, fluid, or air directly in front of it has changed.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added observers."},{"version":"10 ]","status":"added","notes":"added shape updates instead of neighbor updates . This change has made observer behavior much more predictable, as unexpected/invisible block updates would no longer trigger observers. [ 10 ]"}],"colors":{"primary":"#626262","dominant_hex":"#646464","average_hex":"#626262","hue_group":"neutral","lightness":0.3843,"saturation":0.0,"palette":["#646464","#7b7b7b","#999999","#2e2e2e","#3d3d3d","#535353"],"color_groups":[{"hex":"#646464","weight":0.2148,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7b7b7b","weight":0.207,"lightness":0.4824,"saturation":0.0,"hue_group":"neutral"},{"hex":"#999999","weight":0.1758,"lightness":0.6,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2e2e2e","weight":0.1562,"lightness":0.1804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3d3d3d","weight":0.1367,"lightness":0.2392,"saturation":0.0,"hue_group":"neutral"},{"hex":"#535353","weight":0.1094,"lightness":0.3255,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/observer_top.png","family":"observer","relations":[{"type":"visual_neighbors","target":"minecraft:dropper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dispenser","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bedrock","label":"Palette proche: Bedrock","confidence":0.94},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dropper","label":"Palette proche: Dropper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_leaves","label":"Palette proche: Spruce Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:furnace","label":"Palette proche: Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:bedrock","label":"Pont de nuance par palette: Bedrock","confidence":0.86},{"type":"color_bridge","target":"minecraft:damaged_anvil","label":"Pont de nuance par palette: Damaged Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:dropper","label":"Pont de nuance par palette: Dropper","confidence":0.86},{"type":"color_bridge","target":"minecraft:dispenser","label":"Pont de nuance par palette: Dispenser","confidence":0.86},{"type":"color_bridge","target":"minecraft:spruce_leaves","label":"Pont de nuance par palette: Spruce Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:furnace","label":"Pont de nuance par palette: Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:lily_pad","label":"Pont de nuance par palette: Lily Pad","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.584},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.551},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55}],"category":"redstone"},{"id":"minecraft:obsidian","name":"Obsidian","entry_type":"block","description":"Obsidian is a block found naturally in all dimensions, and created when water flows over a lava source in the Overworld, or as part of structures in the Nether and the End. It has high hardness and blast resistance, making it immune to normal explosions. Obsidian can be used to craft beacons, enchanting tables, and ender chests, and build the frame of a Nether portal. Obsidian is only obtainable with a diamond or netherite pickaxe.","history":[{"version":"0.28","status":"added","notes":"Added obsidian."},{"version":"20100227-1414","status":"added","notes":"Added the obsidian wall , which marks the X and Z axis, intersecting at 0,0. This creates two intersecting planes extending just above the surface of the solid material that surrounds them."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb obsidian, providing the football/regular effect to the mob."}],"colors":{"primary":"#0f0b19","dominant_hex":"#04040c","average_hex":"#0f0b19","hue_group":"blue","lightness":0.0706,"saturation":0.3889,"palette":["#04040c","#140c1c","#040404","#241c3c","#3c2454"],"color_groups":[{"hex":"#04040c","weight":0.293,"lightness":0.0314,"saturation":0.5,"hue_group":"blue"},{"hex":"#140c1c","weight":0.2578,"lightness":0.0784,"saturation":0.4,"hue_group":"purple"},{"hex":"#040404","weight":0.25,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#241c3c","weight":0.125,"lightness":0.1725,"saturation":0.3636,"hue_group":"blue"},{"hex":"#3c2454","weight":0.0742,"lightness":0.2353,"saturation":0.4,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/obsidian.png","family":"obsidian","relations":[{"type":"visual_neighbors","target":"minecraft:end_gateway","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_chest","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:respawn_anchor","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spawner","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chain","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crying_obsidian","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:end_gateway","label":"Palette proche: End Gateway","confidence":0.94},{"type":"color_neighbors","target":"minecraft:end_portal","label":"Palette proche: End Portal","confidence":0.94},{"type":"color_neighbors","target":"minecraft:ender_chest","label":"Palette proche: Ender Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crying_obsidian","label":"Palette proche: Crying Obsidian","confidence":0.909},{"type":"color_neighbors","target":"minecraft:respawn_anchor","label":"Palette proche: Respawn Anchor","confidence":0.83},{"type":"color_neighbors","target":"minecraft:black_concrete","label":"Palette proche: Black Concrete","confidence":0.745},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.733},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.721},{"type":"color_neighbors","target":"minecraft:coal_block","label":"Palette proche: Coal Block","confidence":0.713},{"type":"color_neighbors","target":"minecraft:black_carpet","label":"Palette proche: Black Carpet","confidence":0.696},{"type":"color_neighbors","target":"minecraft:black_wool","label":"Palette proche: Black Wool","confidence":0.696},{"type":"color_neighbors","target":"minecraft:dragon_egg","label":"Palette proche: Dragon Egg","confidence":0.694},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.78},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.771},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.764},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par sous-ton: Black Carpet","confidence":0.75},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par sous-ton: Black Wool","confidence":0.75},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par sous-ton: Tinted Glass","confidence":0.738},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.723},{"type":"color_bridge","target":"minecraft:jigsaw","label":"Pont de nuance par sous-ton: Jigsaw","confidence":0.72},{"type":"color_bridge","target":"minecraft:structure_block","label":"Pont de nuance par sous-ton: Structure Block","confidence":0.711},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.706},{"type":"color_analogous","target":"minecraft:end_gateway","label":"Couleurs analogues: End Gateway","confidence":0.96},{"type":"color_analogous","target":"minecraft:end_portal","label":"Couleurs analogues: End Portal","confidence":0.96},{"type":"color_analogous","target":"minecraft:ender_chest","label":"Couleurs analogues: Ender Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:repeating_command_block","label":"Couleurs analogues: Repeating Command Block","confidence":0.89},{"type":"color_analogous","target":"minecraft:respawn_anchor","label":"Couleurs analogues: Respawn Anchor","confidence":0.833},{"type":"color_analogous","target":"minecraft:small_amethyst_bud","label":"Couleurs analogues: Small Amethyst Bud","confidence":0.808},{"type":"color_analogous","target":"minecraft:amethyst_block","label":"Couleurs analogues: Amethyst Block","confidence":0.766},{"type":"color_analogous","target":"minecraft:budding_amethyst","label":"Couleurs analogues: Budding Amethyst","confidence":0.757},{"type":"color_complement","target":"minecraft:cave_vines","label":"Contraste complementaire: Cave Vines","confidence":0.96},{"type":"color_complement","target":"minecraft:green_concrete_powder","label":"Contraste complementaire: Green Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_azalea_bush","label":"Contraste complementaire: Potted Azalea Bush","confidence":0.96},{"type":"color_complement","target":"minecraft:azalea","label":"Contraste complementaire: Azalea","confidence":0.96},{"type":"color_complement","target":"minecraft:melon","label":"Contraste complementaire: Melon","confidence":0.953},{"type":"color_complement","target":"minecraft:green_carpet","label":"Contraste complementaire: Green Carpet","confidence":0.941},{"type":"color_complement","target":"minecraft:green_wool","label":"Contraste complementaire: Green Wool","confidence":0.941},{"type":"color_complement","target":"minecraft:green_candle","label":"Contraste complementaire: Green Candle","confidence":0.933},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:poppy","label":"Harmonie triadique: Poppy","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_poppy","label":"Harmonie triadique: Potted Poppy","confidence":0.96},{"type":"color_triad","target":"minecraft:magma_block","label":"Harmonie triadique: Magma Block","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_hanging_sign","label":"Harmonie triadique: Acacia Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_wall_hanging_sign","label":"Harmonie triadique: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_acacia_log","label":"Harmonie triadique: Stripped Acacia Log","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_acacia_wood","label":"Harmonie triadique: Stripped Acacia Wood","confidence":0.96},{"type":"color_square","target":"minecraft:cracked_nether_bricks","label":"Harmonie carree: Cracked Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_brick_slab","label":"Harmonie carree: Prismarine Brick Slab","confidence":0.937},{"type":"color_square","target":"minecraft:prismarine_brick_stairs","label":"Harmonie carree: Prismarine Brick Stairs","confidence":0.937},{"type":"color_square","target":"minecraft:prismarine_bricks","label":"Harmonie carree: Prismarine Bricks","confidence":0.937},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.917},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.917},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.914},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.914},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.855},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.821},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.799},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.791},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.791},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.776},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.76},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.746}],"category":""},{"id":"minecraft:ocelot_spawn_egg","name":"Ocelot Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#cca365","dominant_hex":"#fbda73","average_hex":"#cca365","hue_group":"yellow","lightness":0.598,"saturation":0.5024,"palette":["#fbda73","#844e2a","#d39d59","#a4743c","#f4d49c","#fcf3d5"],"color_groups":[{"hex":"#fbda73","weight":0.2059,"lightness":0.7176,"saturation":0.9444,"hue_group":"yellow"},{"hex":"#844e2a","weight":0.1961,"lightness":0.3412,"saturation":0.5172,"hue_group":"red"},{"hex":"#d39d59","weight":0.1961,"lightness":0.5882,"saturation":0.581,"hue_group":"yellow"},{"hex":"#a4743c","weight":0.1765,"lightness":0.4392,"saturation":0.4643,"hue_group":"yellow"},{"hex":"#f4d49c","weight":0.1176,"lightness":0.7843,"saturation":0.8,"hue_group":"yellow"},{"hex":"#fcf3d5","weight":0.1078,"lightness":0.9118,"saturation":0.8667,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/ocelot_spawn_egg.png","family":"ocelot_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:pumpkin_pie","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_nugget","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_chestplate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clock","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone_dust","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:totem_of_undying","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:ochre_froglight","name":"Ochre Froglight","entry_type":"block","description":"A froglight is a light-emitting block that is obtained when a frog eats a tiny magma cube. It comes in three variants based on the variant of frog that eats the magma cube.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added pearlescent, verdant, and ochre froglights."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb all 3 froglights, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#f5e9b6","dominant_hex":"#fcfccc","average_hex":"#f5e9b6","hue_group":"yellow","lightness":0.8373,"saturation":0.759,"palette":["#fcfccc","#fcfcec","#fcecb4","#f4dc94","#d7af63","#eccc84"],"color_groups":[{"hex":"#fcfccc","weight":0.2539,"lightness":0.8941,"saturation":0.8889,"hue_group":"yellow"},{"hex":"#fcfcec","weight":0.2422,"lightness":0.9569,"saturation":0.7273,"hue_group":"yellow"},{"hex":"#fcecb4","weight":0.1758,"lightness":0.8471,"saturation":0.9231,"hue_group":"yellow"},{"hex":"#f4dc94","weight":0.1211,"lightness":0.7686,"saturation":0.8136,"hue_group":"yellow"},{"hex":"#d7af63","weight":0.1133,"lightness":0.6157,"saturation":0.5918,"hue_group":"yellow"},{"hex":"#eccc84","weight":0.0938,"lightness":0.7216,"saturation":0.7324,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/ochre_froglight_side.png","family":"ochre_froglight","relations":[{"type":"visual_neighbors","target":"minecraft:wildflowers","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:candle","label":"Palette proche: Candle","confidence":0.818},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.736},{"type":"color_neighbors","target":"minecraft:turtle_egg","label":"Palette proche: Turtle Egg","confidence":0.733},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.719},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.719},{"type":"color_neighbors","target":"minecraft:end_stone","label":"Palette proche: End Stone","confidence":0.714},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.711},{"type":"color_neighbors","target":"minecraft:jack_o_lantern","label":"Palette proche: Jack O Lantern","confidence":0.709},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.709},{"type":"color_neighbors","target":"minecraft:glowstone","label":"Palette proche: Glowstone","confidence":0.707},{"type":"color_neighbors","target":"minecraft:birch_door","label":"Palette proche: Birch Door","confidence":0.706},{"type":"color_neighbors","target":"minecraft:bamboo_fence","label":"Palette proche: Bamboo Fence","confidence":0.704},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.703},{"type":"color_bridge","target":"minecraft:target","label":"Pont de nuance par palette: Target","confidence":0.634},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.584},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.58},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.58},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.58},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.58},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.58},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.58},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.58},{"type":"color_analogous","target":"minecraft:wildflowers","label":"Couleurs analogues: Wildflowers","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone_slab","label":"Couleurs analogues: Cut Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_slab","label":"Couleurs analogues: Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_stairs","label":"Couleurs analogues: Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone","label":"Couleurs analogues: Smooth Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone_slab","label":"Couleurs analogues: Smooth Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone_stairs","label":"Couleurs analogues: Smooth Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.959},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.956},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.951},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.896},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.886},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.849},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.849},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.958},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.917},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.877},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.838},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.837},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.932},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.885},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.735},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.726},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.726},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.722},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.71},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.665},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.705},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.675},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.674},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.672},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.662},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.662},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.647},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.646}],"category":""},{"id":"minecraft:ominous_bottle","name":"Ominous Bottle","entry_type":"item","description":"An ominous bottle is an item that gives a player the Bad Omen effect for 100 minutes when drank, which can cause an ominous event to start.","history":[{"version":"1.20.5","status":"added","notes":"Added ominous bottles."}],"colors":{"primary":"#444f5d","dominant_hex":"#5c7b80","average_hex":"#444f5d","hue_group":"blue","lightness":0.3157,"saturation":0.1553,"palette":["#5c7b80","#7a2c44","#221d2d","#1c4454","#4cccd4","#0c041c"],"color_groups":[{"hex":"#5c7b80","weight":0.25,"lightness":0.4314,"saturation":0.1636,"hue_group":"cyan"},{"hex":"#7a2c44","weight":0.2105,"lightness":0.3255,"saturation":0.4699,"hue_group":"red"},{"hex":"#221d2d","weight":0.1711,"lightness":0.1451,"saturation":0.2162,"hue_group":"blue"},{"hex":"#1c4454","weight":0.1447,"lightness":0.2196,"saturation":0.5,"hue_group":"cyan"},{"hex":"#4cccd4","weight":0.1184,"lightness":0.5647,"saturation":0.6126,"hue_group":"cyan"},{"hex":"#0c041c","weight":0.1053,"lightness":0.0627,"saturation":0.75,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/ominous_bottle.png","family":"ominous_bottle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:mace","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_meal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:ominous_trial_key","name":"Ominous Trial Key","entry_type":"item","description":"An ominous trial key is a type of trial key that can only be obtained from ominous trial spawners. It is used to unlock an ominous vault and obtain its loot.","history":[{"version":"1.20.5","status":"added","notes":"Added ominous trial keys."}],"colors":{"primary":"#4b5950","dominant_hex":"#385046","average_hex":"#4b5950","hue_group":"neutral","lightness":0.3216,"saturation":0.0854,"palette":["#385046","#5a7065","#2c2c2c","#343c34","#71b898","#b12941"],"color_groups":[{"hex":"#385046","weight":0.2791,"lightness":0.2667,"saturation":0.1765,"hue_group":"cyan"},{"hex":"#5a7065","weight":0.2248,"lightness":0.3961,"saturation":0.1089,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.155,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#343c34","weight":0.155,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#71b898","weight":0.1395,"lightness":0.5824,"saturation":0.3333,"hue_group":"cyan"},{"hex":"#b12941","weight":0.0465,"lightness":0.4275,"saturation":0.6239,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/ominous_trial_key.png","family":"ominous_trial_key","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cyan_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wayfinder_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ink_sac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:compass","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:open_eyeblossom","name":"Open Eyeblossom","entry_type":"block","description":"An eyeblossom is a unique flower found in the pale garden biome. It changes state depending on the daylight cycle, closing during the day and opening at night. Its \"eye\", visible only when the flower is open, glows in the dark but does not emit light in its surroundings.","history":[{"version":"1.21.4 24w44a","status":"added","notes":"Added eyeblossoms."}],"colors":{"primary":"#857d80","dominant_hex":"#958890","average_hex":"#857d80","hue_group":"neutral","lightness":0.5059,"saturation":0.0317,"palette":["#958890","#5c5454","#3c3434","#e4dce4","#342c2c","#fcfcfc"],"color_groups":[{"hex":"#958890","weight":0.2407,"lightness":0.5588,"saturation":0.0578,"hue_group":"neutral"},{"hex":"#5c5454","weight":0.2037,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.1852,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#e4dce4","weight":0.1481,"lightness":0.8784,"saturation":0.129,"hue_group":"purple"},{"hex":"#342c2c","weight":0.1111,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1111,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/open_eyeblossom.png","family":"open_eyeblossom","relations":[{"type":"visual_neighbors","target":"minecraft:gravel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_gravel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_instance_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:closed_eyeblossom","label":"Palette proche: Closed Eyeblossom","confidence":0.895},{"type":"color_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Palette proche: Potted Closed Eyeblossom","confidence":0.895},{"type":"color_neighbors","target":"minecraft:test_instance_block","label":"Palette proche: Test Instance Block","confidence":0.866},{"type":"color_neighbors","target":"minecraft:pale_oak_log","label":"Palette proche: Pale Oak Log","confidence":0.854},{"type":"color_neighbors","target":"minecraft:pale_oak_wood","label":"Palette proche: Pale Oak Wood","confidence":0.854},{"type":"color_neighbors","target":"minecraft:bedrock","label":"Palette proche: Bedrock","confidence":0.834},{"type":"color_neighbors","target":"minecraft:observer","label":"Palette proche: Observer","confidence":0.819},{"type":"color_neighbors","target":"minecraft:bush","label":"Palette proche: Bush","confidence":0.819},{"type":"color_neighbors","target":"minecraft:dropper","label":"Palette proche: Dropper","confidence":0.818},{"type":"color_neighbors","target":"minecraft:cobblestone","label":"Palette proche: Cobblestone","confidence":0.816},{"type":"color_neighbors","target":"minecraft:cobblestone_slab","label":"Palette proche: Cobblestone Slab","confidence":0.816},{"type":"color_neighbors","target":"minecraft:cobblestone_stairs","label":"Palette proche: Cobblestone Stairs","confidence":0.816},{"type":"color_bridge","target":"minecraft:closed_eyeblossom","label":"Pont de nuance par palette: Closed Eyeblossom","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_closed_eyeblossom","label":"Pont de nuance par palette: Potted Closed Eyeblossom","confidence":0.86},{"type":"color_bridge","target":"minecraft:test_instance_block","label":"Pont de nuance par palette: Test Instance Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:bedrock","label":"Pont de nuance par palette: Bedrock","confidence":0.86},{"type":"color_bridge","target":"minecraft:observer","label":"Pont de nuance par palette: Observer","confidence":0.851},{"type":"color_bridge","target":"minecraft:bush","label":"Pont de nuance par palette: Bush","confidence":0.851},{"type":"color_bridge","target":"minecraft:dropper","label":"Pont de nuance par palette: Dropper","confidence":0.85},{"type":"color_bridge","target":"minecraft:cobblestone","label":"Pont de nuance par palette: Cobblestone","confidence":0.848},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55}],"category":""},{"id":"minecraft:orange_banner","name":"Orange Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"orange_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:orange_bed","name":"Orange Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"orange_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:orange_bundle","name":"Orange Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#cc711f","dominant_hex":"#c45c04","average_hex":"#cc711f","hue_group":"red","lightness":0.4608,"saturation":0.7362,"palette":["#c45c04","#edb05f","#8f4312","#fc9424","#e46c0c","#ac4c04"],"color_groups":[{"hex":"#c45c04","weight":0.1985,"lightness":0.3922,"saturation":0.96,"hue_group":"red"},{"hex":"#edb05f","weight":0.1985,"lightness":0.651,"saturation":0.7978,"hue_group":"yellow"},{"hex":"#8f4312","weight":0.1832,"lightness":0.3157,"saturation":0.7764,"hue_group":"red"},{"hex":"#fc9424","weight":0.1603,"lightness":0.5647,"saturation":0.973,"hue_group":"yellow"},{"hex":"#e46c0c","weight":0.1374,"lightness":0.4706,"saturation":0.9,"hue_group":"red"},{"hex":"#ac4c04","weight":0.1221,"lightness":0.3451,"saturation":0.9545,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/orange_bundle.png","family":"orange_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:apple","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glistering_melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:saddle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fermented_spider_eye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:orange_candle","name":"Orange Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#db6409","dominant_hex":"#d45c04","average_hex":"#db6409","hue_group":"red","lightness":0.4471,"saturation":0.9211,"palette":["#d45c04","#e46404","#fc841c","#242434","#fc9c2c"],"color_groups":[{"hex":"#d45c04","weight":0.4286,"lightness":0.4235,"saturation":0.963,"hue_group":"red"},{"hex":"#e46404","weight":0.2857,"lightness":0.4549,"saturation":0.9655,"hue_group":"red"},{"hex":"#fc841c","weight":0.1905,"lightness":0.549,"saturation":0.9739,"hue_group":"red"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#fc9c2c","weight":0.0476,"lightness":0.5804,"saturation":0.972,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/orange_candle.png","family":"orange_candle","relations":[{"type":"visual_neighbors","target":"minecraft:orange_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrier","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:orange_concrete","label":"Palette proche: Orange Concrete","confidence":0.938},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.927},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.927},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.916},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.851},{"type":"color_neighbors","target":"minecraft:shroomlight","label":"Palette proche: Shroomlight","confidence":0.847},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.843},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.838},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.831},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.819},{"type":"color_neighbors","target":"minecraft:resin_brick_stairs","label":"Palette proche: Resin Brick Stairs","confidence":0.819},{"type":"color_neighbors","target":"minecraft:resin_brick_wall","label":"Palette proche: Resin Brick Wall","confidence":0.819},{"type":"color_bridge","target":"minecraft:lantern","label":"Pont de nuance par sous-ton: Lantern","confidence":0.732},{"type":"color_bridge","target":"minecraft:gilded_blackstone","label":"Pont de nuance par sous-ton: Gilded Blackstone","confidence":0.684},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.673},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.673},{"type":"color_bridge","target":"minecraft:potted_torchflower","label":"Pont de nuance par sous-ton: Potted Torchflower","confidence":0.631},{"type":"color_bridge","target":"minecraft:torchflower","label":"Pont de nuance par sous-ton: Torchflower","confidence":0.631},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.63},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.629},{"type":"color_bridge","target":"minecraft:campfire","label":"Pont de nuance par sous-ton: Campfire","confidence":0.618},{"type":"color_bridge","target":"minecraft:soul_campfire","label":"Pont de nuance par sous-ton: Soul Campfire","confidence":0.618},{"type":"color_analogous","target":"minecraft:orange_shulker_box","label":"Couleurs analogues: Orange Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_concrete","label":"Couleurs analogues: Orange Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_carpet","label":"Couleurs analogues: Orange Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_wool","label":"Couleurs analogues: Orange Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_clump","label":"Couleurs analogues: Resin Clump","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sand","label":"Couleurs analogues: Red Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone","label":"Couleurs analogues: Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_wall","label":"Couleurs analogues: Red Sandstone Wall","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.948},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.948},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.871},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.868},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.847},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.847},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.839},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.922},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.911},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.895},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.892},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.882},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.871},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.866},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.952},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.847},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.801},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.793},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.793},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.792},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.779},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.764},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55}],"category":"decorative"},{"id":"minecraft:orange_candle_cake","name":"Orange Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"orange_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:orange_carpet","name":"Orange Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#f17614","dominant_hex":"#ec6d0c","average_hex":"#f17614","hue_group":"red","lightness":0.5118,"saturation":0.8876,"palette":["#ec6d0c","#f47714","#e46504","#fc8521","#f77c1c","#fc942c"],"color_groups":[{"hex":"#ec6d0c","weight":0.2656,"lightness":0.4863,"saturation":0.9032,"hue_group":"red"},{"hex":"#f47714","weight":0.1953,"lightness":0.5176,"saturation":0.9106,"hue_group":"red"},{"hex":"#e46504","weight":0.168,"lightness":0.4549,"saturation":0.9655,"hue_group":"red"},{"hex":"#fc8521","weight":0.1523,"lightness":0.5588,"saturation":0.9733,"hue_group":"red"},{"hex":"#f77c1c","weight":0.125,"lightness":0.5392,"saturation":0.9319,"hue_group":"red"},{"hex":"#fc942c","weight":0.0938,"lightness":0.5804,"saturation":0.972,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/orange_wool.png","family":"orange_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:orange_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_clump","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shroomlight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_concrete","label":"Palette proche: Orange Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle","label":"Palette proche: Orange Candle","confidence":0.927},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.893},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.885},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.883},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.88},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.871},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.861},{"type":"color_neighbors","target":"minecraft:shroomlight","label":"Palette proche: Shroomlight","confidence":0.859},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.852},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.645},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.634},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.634},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.589},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.589},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.589},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.58},{"type":"color_analogous","target":"minecraft:orange_wool","label":"Couleurs analogues: Orange Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_shulker_box","label":"Couleurs analogues: Orange Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_clump","label":"Couleurs analogues: Resin Clump","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_candle","label":"Couleurs analogues: Orange Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:shroomlight","label":"Couleurs analogues: Shroomlight","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_concrete","label":"Couleurs analogues: Orange Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_stained_glass","label":"Couleurs analogues: Orange Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_stained_glass_pane","label":"Couleurs analogues: Orange Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.931},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.931},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.854},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.852},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.83},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.83},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.823},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.951},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.948},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.937},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.921},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.918},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.892},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.892},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.861},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.929},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.829},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.825},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.821},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.821},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.807},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.792},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.77},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"decorative"},{"id":"minecraft:orange_concrete","name":"Orange Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#e06101","dominant_hex":"#e46404","average_hex":"#e06101","hue_group":"red","lightness":0.4412,"saturation":0.9911,"palette":["#e46404","#dc6404"],"color_groups":[{"hex":"#e46404","weight":0.7773,"lightness":0.4549,"saturation":0.9655,"hue_group":"red"},{"hex":"#dc6404","weight":0.2227,"lightness":0.4392,"saturation":0.9643,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/orange_concrete.png","family":"orange_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:barrier","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle","label":"Palette proche: Orange Candle","confidence":0.938},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.87},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.856},{"type":"color_neighbors","target":"minecraft:shroomlight","label":"Palette proche: Shroomlight","confidence":0.849},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.831},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.829},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.814},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.814},{"type":"color_neighbors","target":"minecraft:resin_brick_stairs","label":"Palette proche: Resin Brick Stairs","confidence":0.814},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.59},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.585},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.583},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.583},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.58},{"type":"color_analogous","target":"minecraft:orange_candle","label":"Couleurs analogues: Orange Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_shulker_box","label":"Couleurs analogues: Orange Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_carpet","label":"Couleurs analogues: Orange Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_wool","label":"Couleurs analogues: Orange Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_clump","label":"Couleurs analogues: Resin Clump","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sand","label":"Couleurs analogues: Red Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone","label":"Couleurs analogues: Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_wall","label":"Couleurs analogues: Red Sandstone Wall","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.947},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.947},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.947},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.87},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.867},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.846},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.846},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.838},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.91},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.899},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.883},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.883},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.88},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.872},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.854},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.953},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.849},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.794},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.788},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.78},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.78},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.767},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.751},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:orange_concrete_powder","name":"Orange Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#e38420","dominant_hex":"#e68621","average_hex":"#e38420","hue_group":"yellow","lightness":0.5078,"saturation":0.7769,"palette":["#e68621","#ea9532","#da7813","#dc7c1c","#e47c1c","#e57d14"],"color_groups":[{"hex":"#e68621","weight":0.3594,"lightness":0.5157,"saturation":0.7976,"hue_group":"yellow"},{"hex":"#ea9532","weight":0.2148,"lightness":0.5569,"saturation":0.8142,"hue_group":"yellow"},{"hex":"#da7813","weight":0.1602,"lightness":0.4647,"saturation":0.8397,"hue_group":"yellow"},{"hex":"#dc7c1c","weight":0.1016,"lightness":0.4863,"saturation":0.7742,"hue_group":"red"},{"hex":"#e47c1c","weight":0.0898,"lightness":0.502,"saturation":0.7874,"hue_group":"red"},{"hex":"#e57d14","weight":0.0742,"lightness":0.4882,"saturation":0.8394,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/orange_concrete_powder.png","family":"orange_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jack_o_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.931},{"type":"color_neighbors","target":"minecraft:pumpkin","label":"Palette proche: Pumpkin","confidence":0.911},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.899},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.898},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.88},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.871},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.871},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.868},{"type":"color_neighbors","target":"minecraft:resin_brick_stairs","label":"Palette proche: Resin Brick Stairs","confidence":0.868},{"type":"color_neighbors","target":"minecraft:resin_brick_wall","label":"Palette proche: Resin Brick Wall","confidence":0.868},{"type":"color_neighbors","target":"minecraft:resin_bricks","label":"Palette proche: Resin Bricks","confidence":0.868},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.864},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.69},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.683},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.683},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.672},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.62},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.62},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.609},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.603},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.595},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.586},{"type":"color_analogous","target":"minecraft:potted_open_eyeblossom","label":"Couleurs analogues: Potted Open Eyeblossom","confidence":0.96},{"type":"color_analogous","target":"minecraft:pumpkin","label":"Couleurs analogues: Pumpkin","confidence":0.96},{"type":"color_analogous","target":"minecraft:glowstone","label":"Couleurs analogues: Glowstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:raw_iron_block","label":"Couleurs analogues: Raw Iron Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire","label":"Couleurs analogues: Fire","confidence":0.955},{"type":"color_analogous","target":"minecraft:brown_stained_glass_pane","label":"Couleurs analogues: Brown Stained Glass Pane","confidence":0.953},{"type":"color_analogous","target":"minecraft:carved_pumpkin","label":"Couleurs analogues: Carved Pumpkin","confidence":0.952},{"type":"color_analogous","target":"minecraft:jungle_hanging_sign","label":"Couleurs analogues: Jungle Hanging Sign","confidence":0.938},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.886},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.803},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.803},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.803},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.765},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.732},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.727},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.909},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.895},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.895},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.894},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.875},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.873},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.862},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.859},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.925},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.84},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.824},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:orange_dye","name":"Orange Dye","entry_type":"item","description":"Orange dye is one of the sixteen available dyes.","history":[{"version":"1.2","status":"added","notes":"Added orange dye."},{"version":"1.4.2 12w34a","status":"added","notes":"Added the ability to dye leather armor and wolf collars."},{"version":"1.8 14w30a","status":"added","notes":"Added banners , which can be dyed."}],"colors":{"primary":"#b17029","dominant_hex":"#a84e04","average_hex":"#b17029","hue_group":"yellow","lightness":0.4275,"saturation":0.6239,"palette":["#a84e04","#eec476","#d47414","#f49c1c","#3e1d1d","#80624b"],"color_groups":[{"hex":"#a84e04","weight":0.226,"lightness":0.3373,"saturation":0.9535,"hue_group":"red"},{"hex":"#eec476","weight":0.1712,"lightness":0.698,"saturation":0.7792,"hue_group":"yellow"},{"hex":"#d47414","weight":0.1644,"lightness":0.4549,"saturation":0.8276,"hue_group":"red"},{"hex":"#f49c1c","weight":0.1644,"lightness":0.5333,"saturation":0.9076,"hue_group":"yellow"},{"hex":"#3e1d1d","weight":0.1507,"lightness":0.1784,"saturation":0.3626,"hue_group":"red"},{"hex":"#80624b","weight":0.1233,"lightness":0.398,"saturation":0.2611,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/orange_dye.png","family":"orange_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_nautilus_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_helmet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_boots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:orange_glazed_terracotta","name":"Orange Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#9b935c","dominant_hex":"#fc9227","average_hex":"#9b935c","hue_group":"yellow","lightness":0.4843,"saturation":0.2551,"palette":["#fc9227","#14969b","#e36304","#1cc2c2","#f46404","#fcf6ec"],"color_groups":[{"hex":"#fc9227","weight":0.3242,"lightness":0.5706,"saturation":0.9726,"hue_group":"yellow"},{"hex":"#14969b","weight":0.2422,"lightness":0.3431,"saturation":0.7714,"hue_group":"cyan"},{"hex":"#e36304","weight":0.168,"lightness":0.4529,"saturation":0.9654,"hue_group":"red"},{"hex":"#1cc2c2","weight":0.1562,"lightness":0.4353,"saturation":0.7477,"hue_group":"cyan"},{"hex":"#f46404","weight":0.0625,"lightness":0.4863,"saturation":0.9677,"hue_group":"red"},{"hex":"#fcf6ec","weight":0.0469,"lightness":0.9569,"saturation":0.7273,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/orange_glazed_terracotta.png","family":"orange_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:loom","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fletching_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_birch_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:orange_candle","label":"Palette proche: Orange Candle","confidence":0.768},{"type":"color_neighbors","target":"minecraft:potted_warped_fungus","label":"Palette proche: Potted Warped Fungus","confidence":0.709},{"type":"color_neighbors","target":"minecraft:warped_fungus","label":"Palette proche: Warped Fungus","confidence":0.709},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.621},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.621},{"type":"color_neighbors","target":"minecraft:orange_concrete","label":"Palette proche: Orange Concrete","confidence":0.618},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.601},{"type":"color_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Palette proche: Brown Glazed Terracotta","confidence":0.58},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.58},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.58},{"type":"color_neighbors","target":"minecraft:fire","label":"Palette proche: Fire","confidence":0.58},{"type":"color_neighbors","target":"minecraft:white_glazed_terracotta","label":"Palette proche: White Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.76},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.76},{"type":"color_bridge","target":"minecraft:brown_glazed_terracotta","label":"Pont de nuance par sous-ton: Brown Glazed Terracotta","confidence":0.653},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.637},{"type":"color_bridge","target":"minecraft:potted_torchflower","label":"Pont de nuance par sous-ton: Potted Torchflower","confidence":0.616},{"type":"color_bridge","target":"minecraft:torchflower","label":"Pont de nuance par sous-ton: Torchflower","confidence":0.616},{"type":"color_bridge","target":"minecraft:potted_red_mushroom","label":"Pont de nuance par palette: Potted Red Mushroom","confidence":0.613},{"type":"color_bridge","target":"minecraft:red_mushroom","label":"Pont de nuance par palette: Red Mushroom","confidence":0.613},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par palette: Trial Spawner","confidence":0.588},{"type":"color_bridge","target":"minecraft:lantern","label":"Pont de nuance par sous-ton: Lantern","confidence":0.582},{"type":"color_analogous","target":"minecraft:horn_coral_block","label":"Couleurs analogues: Horn Coral Block","confidence":0.959},{"type":"color_analogous","target":"minecraft:horn_coral_fan","label":"Couleurs analogues: Horn Coral Fan","confidence":0.95},{"type":"color_analogous","target":"minecraft:horn_coral_wall_fan","label":"Couleurs analogues: Horn Coral Wall Fan","confidence":0.95},{"type":"color_analogous","target":"minecraft:horn_coral","label":"Couleurs analogues: Horn Coral","confidence":0.949},{"type":"color_analogous","target":"minecraft:bamboo_shelf","label":"Couleurs analogues: Bamboo Shelf","confidence":0.939},{"type":"color_analogous","target":"minecraft:copper_torch","label":"Couleurs analogues: Copper Torch","confidence":0.935},{"type":"color_analogous","target":"minecraft:copper_wall_torch","label":"Couleurs analogues: Copper Wall Torch","confidence":0.935},{"type":"color_analogous","target":"minecraft:firefly_bush","label":"Couleurs analogues: Firefly Bush","confidence":0.933},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.866},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.839},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.83},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.814},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.799},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.799},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.792},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.761},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.947},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.946},{"type":"color_triad","target":"minecraft:warped_trapdoor","label":"Harmonie triadique: Warped Trapdoor","confidence":0.945},{"type":"color_triad","target":"minecraft:warped_roots","label":"Harmonie triadique: Warped Roots","confidence":0.941},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.935},{"type":"color_triad","target":"minecraft:warped_button","label":"Harmonie triadique: Warped Button","confidence":0.917},{"type":"color_triad","target":"minecraft:warped_fence","label":"Harmonie triadique: Warped Fence","confidence":0.917},{"type":"color_triad","target":"minecraft:warped_fence_gate","label":"Harmonie triadique: Warped Fence Gate","confidence":0.917},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.895},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.881},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.881},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.875},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.828},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.819},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.751},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.75},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:orange_harness","name":"Orange Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#855536","dominant_hex":"#93644c","average_hex":"#855536","hue_group":"red","lightness":0.3667,"saturation":0.4225,"palette":["#93644c","#d4671d","#502e16","#70492f","#3c2414","#a2b0b2"],"color_groups":[{"hex":"#93644c","weight":0.227,"lightness":0.4373,"saturation":0.3184,"hue_group":"red"},{"hex":"#d4671d","weight":0.2086,"lightness":0.4725,"saturation":0.7593,"hue_group":"red"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#70492f","weight":0.135,"lightness":0.3118,"saturation":0.4088,"hue_group":"red"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"},{"hex":"#a2b0b2","weight":0.1043,"lightness":0.6667,"saturation":0.0941,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/orange_harness.png","family":"orange_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:copper_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_boots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_leggings","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_book","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:orange_shulker_box","name":"Orange Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#ea6a09","dominant_hex":"#f47414","average_hex":"#ea6a09","hue_group":"red","lightness":0.4765,"saturation":0.9259,"palette":["#f47414","#f4740c","#ec6b04","#ce5904","#e26404","#f46c0c"],"color_groups":[{"hex":"#f47414","weight":0.2812,"lightness":0.5176,"saturation":0.9106,"hue_group":"red"},{"hex":"#f4740c","weight":0.2031,"lightness":0.502,"saturation":0.9134,"hue_group":"red"},{"hex":"#ec6b04","weight":0.1719,"lightness":0.4706,"saturation":0.9667,"hue_group":"red"},{"hex":"#ce5904","weight":0.1641,"lightness":0.4118,"saturation":0.9619,"hue_group":"red"},{"hex":"#e26404","weight":0.1172,"lightness":0.451,"saturation":0.9652,"hue_group":"red"},{"hex":"#f46c0c","weight":0.0625,"lightness":0.502,"saturation":0.9134,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/orange_shulker_box.png","family":"orange_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:orange_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrier","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_clump","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_concrete","label":"Palette proche: Orange Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle","label":"Palette proche: Orange Candle","confidence":0.916},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.895},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.882},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.88},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.873},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.866},{"type":"color_neighbors","target":"minecraft:resin_brick_stairs","label":"Palette proche: Resin Brick Stairs","confidence":0.866},{"type":"color_neighbors","target":"minecraft:resin_brick_wall","label":"Palette proche: Resin Brick Wall","confidence":0.866},{"type":"color_neighbors","target":"minecraft:resin_bricks","label":"Palette proche: Resin Bricks","confidence":0.866},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.636},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.611},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.611},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.594},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.584},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.584},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.58},{"type":"color_analogous","target":"minecraft:orange_candle","label":"Couleurs analogues: Orange Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_carpet","label":"Couleurs analogues: Orange Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_wool","label":"Couleurs analogues: Orange Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_concrete","label":"Couleurs analogues: Orange Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_clump","label":"Couleurs analogues: Resin Clump","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sand","label":"Couleurs analogues: Red Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone","label":"Couleurs analogues: Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_wall","label":"Couleurs analogues: Red Sandstone Wall","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.952},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.952},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.952},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.875},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.872},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.851},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.851},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.843},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.916},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.906},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.89},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.887},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.886},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.876},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.861},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.957},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.853},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.797},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.795},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.787},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.787},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.773},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.758},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:orange_stained_glass","name":"Orange Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#d87f33","dominant_hex":"#dc7c34","average_hex":"#d87f33","hue_group":"red","lightness":0.5235,"saturation":0.679,"palette":["#dc7c34"],"color_groups":[{"hex":"#dc7c34","weight":1.0,"lightness":0.5333,"saturation":0.7059,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/orange_stained_glass.png","family":"orange_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:potted_red_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_mushroom_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_sand","label":"Palette proche: Red Sand","confidence":0.93},{"type":"color_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Palette proche: Orange Stained Glass Pane","confidence":0.912},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.902},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.883},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.883},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.876},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.876},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.876},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.876},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.876},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.876},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Palette proche: Smooth Red Sandstone Stairs","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.642},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.637},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.637},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.629},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.629},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.629},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.629},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.629},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.629},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.629},{"type":"color_analogous","target":"minecraft:orange_stained_glass_pane","label":"Couleurs analogues: Orange Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sand","label":"Couleurs analogues: Red Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone","label":"Couleurs analogues: Cut Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone","label":"Couleurs analogues: Smooth Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_slab","label":"Couleurs analogues: Smooth Red Sandstone Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.918},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.918},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.918},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.838},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.838},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.817},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.817},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.807},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.948},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.948},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.894},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.838},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.903},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.88},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.88},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.878},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.867},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.844},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.799},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.743},{"type":"value_contrast","target":"minecraft:spruce_log","label":"Contraste clair sombre: Spruce Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_wood","label":"Contraste clair sombre: Spruce Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:orange_stained_glass_pane","name":"Orange Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#d17b31","dominant_hex":"#d47c34","average_hex":"#d17b31","hue_group":"red","lightness":0.5059,"saturation":0.6349,"palette":["#d47c34","#cc7c34","#cc742c"],"color_groups":[{"hex":"#d47c34","weight":0.4062,"lightness":0.5176,"saturation":0.6504,"hue_group":"red"},{"hex":"#cc7c34","weight":0.3438,"lightness":0.502,"saturation":0.5984,"hue_group":"red"},{"hex":"#cc742c","weight":0.25,"lightness":0.4863,"saturation":0.6452,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/orange_stained_glass_pane_top.png","family":"orange_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:red_mushroom_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_torch","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_sand","label":"Palette proche: Red Sand","confidence":0.918},{"type":"color_neighbors","target":"minecraft:orange_stained_glass","label":"Palette proche: Orange Stained Glass","confidence":0.912},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.906},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.897},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.897},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.884},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.878},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.878},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.878},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.878},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.878},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Palette proche: Smooth Red Sandstone Stairs","confidence":0.878},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.69},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.69},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.69},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.689},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.684},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.684},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.684},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.684},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.684},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.684},{"type":"color_analogous","target":"minecraft:orange_stained_glass","label":"Couleurs analogues: Orange Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sand","label":"Couleurs analogues: Red Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone","label":"Couleurs analogues: Cut Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone","label":"Couleurs analogues: Smooth Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_slab","label":"Couleurs analogues: Smooth Red Sandstone Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.918},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.918},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.918},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.839},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.83},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.817},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.817},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.816},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.956},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.956},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.887},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.837},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.902},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.885},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.885},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.88},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.875},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.845},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.797},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.742},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:orange_terracotta","name":"Orange Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#a25426","dominant_hex":"#a45424","average_hex":"#a25426","hue_group":"red","lightness":0.3922,"saturation":0.62,"palette":["#a45424","#9c5424","#a4542c","#a45c2c","#a45c24","#ac5c2c"],"color_groups":[{"hex":"#a45424","weight":0.5898,"lightness":0.3922,"saturation":0.64,"hue_group":"red"},{"hex":"#9c5424","weight":0.2461,"lightness":0.3765,"saturation":0.625,"hue_group":"red"},{"hex":"#a4542c","weight":0.1016,"lightness":0.4078,"saturation":0.5769,"hue_group":"red"},{"hex":"#a45c2c","weight":0.0508,"lightness":0.4078,"saturation":0.5769,"hue_group":"red"},{"hex":"#a45c24","weight":0.0078,"lightness":0.3922,"saturation":0.64,"hue_group":"red"},{"hex":"#ac5c2c","weight":0.0039,"lightness":0.4235,"saturation":0.5926,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/orange_terracotta.png","family":"orange_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_torch","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_nylium","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.899},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.899},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.899},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.899},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.899},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Palette proche: Smooth Red Sandstone Stairs","confidence":0.899},{"type":"color_neighbors","target":"minecraft:acacia_trapdoor","label":"Palette proche: Acacia Trapdoor","confidence":0.893},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.888},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.888},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.888},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.888},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.888},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.703},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.7},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.695},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.695},{"type":"color_bridge","target":"minecraft:brown_glazed_terracotta","label":"Pont de nuance par sous-ton: Brown Glazed Terracotta","confidence":0.687},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.684},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.684},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.683},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.682},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.682},{"type":"color_analogous","target":"minecraft:resin_brick_slab","label":"Couleurs analogues: Resin Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_brick_stairs","label":"Couleurs analogues: Resin Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_brick_wall","label":"Couleurs analogues: Resin Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_bricks","label":"Couleurs analogues: Resin Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:lava","label":"Couleurs analogues: Lava","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_block","label":"Couleurs analogues: Resin Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_lantern","label":"Couleurs analogues: Copper Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_lantern","label":"Couleurs analogues: Waxed Copper Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.959},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.933},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.933},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.905},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.891},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.947},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.947},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.926},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.916},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.86},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.8},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.792},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.787},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.938},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.844},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.809},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.808},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.796},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.697},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.555},{"type":"value_contrast","target":"minecraft:candle","label":"Contraste clair sombre: Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_trapdoor","label":"Contraste clair sombre: Cherry Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55}],"category":"building"},{"id":"minecraft:orange_tulip","name":"Orange Tulip","entry_type":"block","description":"Tulips are a kind of flower found in plains and flower forests that come in multiple colored variants: red, orange, white, and pink. They yield dyes of their respective colors, with the exception of white tulips, which yield light gray dye, and all of them are used to craft suspicious stew.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added tulips."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell tulips."}],"colors":{"primary":"#5d8e1f","dominant_hex":"#147c04","average_hex":"#5d8e1f","hue_group":"yellow","lightness":0.3392,"saturation":0.6416,"palette":["#147c04","#54ac2c","#4c8c2c","#c6722a","#f49c24","#549c2c"],"color_groups":[{"hex":"#147c04","weight":0.2927,"lightness":0.251,"saturation":0.9375,"hue_group":"green"},{"hex":"#54ac2c","weight":0.2195,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#4c8c2c","weight":0.1951,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#c6722a","weight":0.122,"lightness":0.4706,"saturation":0.65,"hue_group":"red"},{"hex":"#f49c24","weight":0.0976,"lightness":0.549,"saturation":0.9043,"hue_group":"yellow"},{"hex":"#549c2c","weight":0.0732,"lightness":0.3922,"saturation":0.56,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/orange_tulip.png","family":"orange_tulip","relations":[{"type":"visual_neighbors","target":"minecraft:potted_orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hay_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bell","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.931},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.931},{"type":"color_neighbors","target":"minecraft:dandelion","label":"Palette proche: Dandelion","confidence":0.913},{"type":"color_neighbors","target":"minecraft:potted_dandelion","label":"Palette proche: Potted Dandelion","confidence":0.913},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.882},{"type":"color_neighbors","target":"minecraft:seagrass","label":"Palette proche: Seagrass","confidence":0.791},{"type":"color_neighbors","target":"minecraft:tall_seagrass","label":"Palette proche: Tall Seagrass","confidence":0.788},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.787},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.774},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.774},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.755},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.759},{"type":"color_bridge","target":"minecraft:poppy","label":"Pont de nuance par palette: Poppy","confidence":0.752},{"type":"color_bridge","target":"minecraft:potted_poppy","label":"Pont de nuance par palette: Potted Poppy","confidence":0.752},{"type":"color_bridge","target":"minecraft:cut_red_sandstone","label":"Pont de nuance par palette: Cut Red Sandstone","confidence":0.663},{"type":"color_bridge","target":"minecraft:yellow_terracotta","label":"Pont de nuance par palette: Yellow Terracotta","confidence":0.66},{"type":"color_bridge","target":"minecraft:red_sand","label":"Pont de nuance par palette: Red Sand","confidence":0.659},{"type":"color_bridge","target":"minecraft:cut_red_sandstone_slab","label":"Pont de nuance par palette: Cut Red Sandstone Slab","confidence":0.651},{"type":"color_bridge","target":"minecraft:red_sandstone_slab","label":"Pont de nuance par palette: Red Sandstone Slab","confidence":0.651},{"type":"color_bridge","target":"minecraft:red_sandstone_stairs","label":"Pont de nuance par palette: Red Sandstone Stairs","confidence":0.651},{"type":"color_bridge","target":"minecraft:smooth_red_sandstone","label":"Pont de nuance par palette: Smooth Red Sandstone","confidence":0.651},{"type":"color_analogous","target":"minecraft:potted_orange_tulip","label":"Couleurs analogues: Potted Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete_powder","label":"Couleurs analogues: Lime Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_carpet","label":"Couleurs analogues: Lime Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_wool","label":"Couleurs analogues: Lime Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_sapling","label":"Couleurs analogues: Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_oak_sapling","label":"Couleurs analogues: Potted Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_stained_glass","label":"Couleurs analogues: Lime Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.956},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.952},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.939},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.937},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.936},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.907},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.907},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.893},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.96},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.955},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.955},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.955},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.947},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.929},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.923},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.923},{"type":"color_square","target":"minecraft:fire_coral","label":"Harmonie carree: Fire Coral","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_hyphae","label":"Harmonie carree: Crimson Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_stem","label":"Harmonie carree: Crimson Stem","confidence":0.96},{"type":"color_square","target":"minecraft:black_glazed_terracotta","label":"Harmonie carree: Black Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:beacon","label":"Harmonie carree: Beacon","confidence":0.96},{"type":"color_square","target":"minecraft:diamond_block","label":"Harmonie carree: Diamond Block","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_hanging_sign","label":"Harmonie carree: Cherry Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_wall_hanging_sign","label":"Harmonie carree: Cherry Wall Hanging Sign","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.595},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.561},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55}],"category":"natural"},{"id":"minecraft:orange_wall_banner","name":"Orange Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"orange_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:orange_wool","name":"Orange Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#f17614","dominant_hex":"#ec6d0c","average_hex":"#f17614","hue_group":"red","lightness":0.5118,"saturation":0.8876,"palette":["#ec6d0c","#f47714","#e46504","#fc8521","#f77c1c","#fc942c"],"color_groups":[{"hex":"#ec6d0c","weight":0.2656,"lightness":0.4863,"saturation":0.9032,"hue_group":"red"},{"hex":"#f47714","weight":0.1953,"lightness":0.5176,"saturation":0.9106,"hue_group":"red"},{"hex":"#e46504","weight":0.168,"lightness":0.4549,"saturation":0.9655,"hue_group":"red"},{"hex":"#fc8521","weight":0.1523,"lightness":0.5588,"saturation":0.9733,"hue_group":"red"},{"hex":"#f77c1c","weight":0.125,"lightness":0.5392,"saturation":0.9319,"hue_group":"red"},{"hex":"#fc942c","weight":0.0938,"lightness":0.5804,"saturation":0.972,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/orange_wool.png","family":"orange_wool","relations":[{"type":"visual_neighbors","target":"minecraft:orange_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_clump","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shroomlight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_concrete","label":"Palette proche: Orange Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_candle","label":"Palette proche: Orange Candle","confidence":0.927},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.893},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.885},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.883},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.88},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.871},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.861},{"type":"color_neighbors","target":"minecraft:shroomlight","label":"Palette proche: Shroomlight","confidence":0.859},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.852},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.645},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.634},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.634},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.589},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.589},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.589},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.58},{"type":"color_analogous","target":"minecraft:orange_carpet","label":"Couleurs analogues: Orange Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_shulker_box","label":"Couleurs analogues: Orange Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_clump","label":"Couleurs analogues: Resin Clump","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_candle","label":"Couleurs analogues: Orange Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:shroomlight","label":"Couleurs analogues: Shroomlight","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_concrete","label":"Couleurs analogues: Orange Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_stained_glass","label":"Couleurs analogues: Orange Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_stained_glass_pane","label":"Couleurs analogues: Orange Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.931},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.931},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.854},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.852},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.83},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.83},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.823},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.951},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.948},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.937},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.921},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.918},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.892},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.892},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.861},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.929},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.829},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.825},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.821},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.821},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.807},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.792},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.77},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"decorative"},{"id":"minecraft:oxeye_daisy","name":"Oxeye Daisy","entry_type":"block","description":"An oxeye daisy is a flower that can be crafted into light gray dye, suspicious stew, and flower charge banner patterns.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added oxeye daisies."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell oxeye daisies."},{"version":"1.18","status":"added","notes":"Added meadows , in which oxeye daisies can generate in."}],"colors":{"primary":"#b3ca8f","dominant_hex":"#d4ecec","average_hex":"#b3ca8f","hue_group":"yellow","lightness":0.6765,"saturation":0.3576,"palette":["#d4ecec","#f4f4f4","#f8c833","#147c04","#54a52c","#9cbcbc"],"color_groups":[{"hex":"#d4ecec","weight":0.2353,"lightness":0.8784,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#f4f4f4","weight":0.2353,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f8c833","weight":0.1765,"lightness":0.5863,"saturation":0.9336,"hue_group":"yellow"},{"hex":"#147c04","weight":0.1373,"lightness":0.251,"saturation":0.9375,"hue_group":"green"},{"hex":"#54a52c","weight":0.1373,"lightness":0.4098,"saturation":0.5789,"hue_group":"green"},{"hex":"#9cbcbc","weight":0.0784,"lightness":0.6745,"saturation":0.1928,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxeye_daisy.png","family":"oxeye_daisy","relations":[{"type":"visual_neighbors","target":"minecraft:potted_oxeye_daisy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_oxeye_daisy","label":"Palette proche: Potted Oxeye Daisy","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azure_bluet","label":"Palette proche: Azure Bluet","confidence":0.904},{"type":"color_neighbors","target":"minecraft:potted_azure_bluet","label":"Palette proche: Potted Azure Bluet","confidence":0.904},{"type":"color_neighbors","target":"minecraft:wildflowers","label":"Palette proche: Wildflowers","confidence":0.809},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.771},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.771},{"type":"color_neighbors","target":"minecraft:lily_of_the_valley","label":"Palette proche: Lily Of The Valley","confidence":0.683},{"type":"color_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Palette proche: Potted Lily Of The Valley","confidence":0.683},{"type":"color_neighbors","target":"minecraft:white_candle","label":"Palette proche: White Candle","confidence":0.631},{"type":"color_neighbors","target":"minecraft:white_glazed_terracotta","label":"Palette proche: White Glazed Terracotta","confidence":0.622},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.592},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.592},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par palette: White Candle","confidence":0.696},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.689},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par palette: White Shulker Box","confidence":0.656},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par palette: Cobweb","confidence":0.651},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par palette: White Concrete Powder","confidence":0.65},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.639},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.639},{"type":"color_bridge","target":"minecraft:white_concrete","label":"Pont de nuance par palette: White Concrete","confidence":0.628},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par palette: Light","confidence":0.62},{"type":"color_bridge","target":"minecraft:diorite","label":"Pont de nuance par palette: Diorite","confidence":0.618},{"type":"color_analogous","target":"minecraft:potted_oxeye_daisy","label":"Couleurs analogues: Potted Oxeye Daisy","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sapling","label":"Couleurs analogues: Birch Sapling","confidence":0.936},{"type":"color_analogous","target":"minecraft:potted_birch_sapling","label":"Couleurs analogues: Potted Birch Sapling","confidence":0.936},{"type":"color_analogous","target":"minecraft:bamboo","label":"Couleurs analogues: Bamboo","confidence":0.911},{"type":"color_analogous","target":"minecraft:potted_red_tulip","label":"Couleurs analogues: Potted Red Tulip","confidence":0.906},{"type":"color_analogous","target":"minecraft:red_tulip","label":"Couleurs analogues: Red Tulip","confidence":0.906},{"type":"color_analogous","target":"minecraft:lime_stained_glass","label":"Couleurs analogues: Lime Stained Glass","confidence":0.901},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.901},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.96},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.96},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.923},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.882},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.864},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.845},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.845},{"type":"color_triad","target":"minecraft:light_blue_glazed_terracotta","label":"Harmonie triadique: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:cornflower","label":"Harmonie triadique: Cornflower","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_cornflower","label":"Harmonie triadique: Potted Cornflower","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_concrete","label":"Harmonie triadique: Light Blue Concrete","confidence":0.951},{"type":"color_triad","target":"minecraft:brain_coral","label":"Harmonie triadique: Brain Coral","confidence":0.949},{"type":"color_triad","target":"minecraft:soul_lantern","label":"Harmonie triadique: Soul Lantern","confidence":0.949},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.935},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.935},{"type":"color_square","target":"minecraft:warped_trapdoor","label":"Harmonie carree: Warped Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:warped_button","label":"Harmonie carree: Warped Button","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence","label":"Harmonie carree: Warped Fence","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence_gate","label":"Harmonie carree: Warped Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_planks","label":"Harmonie carree: Warped Planks","confidence":0.96},{"type":"color_square","target":"minecraft:warped_pressure_plate","label":"Harmonie carree: Warped Pressure Plate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_sign","label":"Harmonie carree: Warped Sign","confidence":0.96},{"type":"color_square","target":"minecraft:warped_slab","label":"Harmonie carree: Warped Slab","confidence":0.96},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.559},{"type":"value_contrast","target":"minecraft:big_dripleaf_stem","label":"Contraste clair sombre: Big Dripleaf Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:small_dripleaf","label":"Contraste clair sombre: Small Dripleaf","confidence":0.55},{"type":"value_contrast","target":"minecraft:azalea_leaves","label":"Contraste clair sombre: Azalea Leaves","confidence":0.55},{"type":"value_contrast","target":"minecraft:moss_block","label":"Contraste clair sombre: Moss Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:moss_carpet","label":"Contraste clair sombre: Moss Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:oak_sapling","label":"Contraste clair sombre: Oak Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_oak_sapling","label":"Contraste clair sombre: Potted Oak Sapling","confidence":0.55}],"category":""},{"id":"minecraft:oxidized_chiseled_copper","name":"Oxidized Chiseled Copper","entry_type":"block","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","history":[{"version":"1.20.3","status":"added","notes":"Added chiseled copper behind the \" Update 1.21 \" experimental data pack."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiseled copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#54a284","dominant_hex":"#5cb494","average_hex":"#54a284","hue_group":"cyan","lightness":0.4824,"saturation":0.3171,"palette":["#5cb494","#6ac29c","#3c745c","#3c846c","#4c9484","#54a47c"],"color_groups":[{"hex":"#5cb494","weight":0.3242,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#6ac29c","weight":0.2148,"lightness":0.5882,"saturation":0.419,"hue_group":"cyan"},{"hex":"#3c745c","weight":0.1406,"lightness":0.3451,"saturation":0.3182,"hue_group":"cyan"},{"hex":"#3c846c","weight":0.1211,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1055,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.0938,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_chiseled_copper.png","family":"oxidized_chiseled_copper","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Palette proche: Waxed Oxidized Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.823},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.823},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.81},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.81},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.807},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.807},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Chiseled Copper","confidence":0.802},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Weathered Chiseled Copper","confidence":0.802},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.801},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.801},{"type":"color_analogous","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Couleurs analogues: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Couleurs analogues: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_grate","label":"Couleurs analogues: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.953},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.952},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.949},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.948},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.94},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.957},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.939},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.939},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.939},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.939},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.927},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.861},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55}],"category":"building"},{"id":"minecraft:oxidized_copper","name":"Oxidized Copper","entry_type":"block","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed copper blocks and three variants of waxed copper blocks."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#52a385","dominant_hex":"#5cb494","average_hex":"#52a385","hue_group":"cyan","lightness":0.4804,"saturation":0.3306,"palette":["#5cb494","#4cac94","#54a47c","#3c6c5b","#4c9484","#6cc49c"],"color_groups":[{"hex":"#5cb494","weight":0.2578,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#4cac94","weight":0.1992,"lightness":0.4863,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1914,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#3c6c5b","weight":0.1328,"lightness":0.3294,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1172,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1016,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper.png","family":"oxidized_copper","relations":[{"type":"variants","target":"minecraft:oxidized_copper_door","label":"Same family: oxidized_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:oxidized_copper_door","label":"Related set: oxidized_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Palette proche: Waxed Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.805},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.799},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.795},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.795},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.787},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper","label":"Couleurs analogues: Waxed Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_chest","label":"Couleurs analogues: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Couleurs analogues: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_grate","label":"Couleurs analogues: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.947},{"type":"color_complement","target":"minecraft:magenta_terracotta","label":"Contraste complementaire: Magenta Terracotta","confidence":0.93},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.926},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.921},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.904},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.897},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.892},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55}],"category":"building"},{"id":"minecraft:oxidized_copper_bars","name":"Oxidized Copper Bars","entry_type":"block","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper bars."}],"colors":{"primary":"#407b65","dominant_hex":"#3c6c5c","average_hex":"#407b65","hue_group":"cyan","lightness":0.3667,"saturation":0.3155,"palette":["#3c6c5c","#3c6454","#3c846c","#4c9484","#54a47c"],"color_groups":[{"hex":"#3c6c5c","weight":0.319,"lightness":0.3294,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#3c6454","weight":0.25,"lightness":0.3137,"saturation":0.25,"hue_group":"cyan"},{"hex":"#3c846c","weight":0.1724,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1293,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1293,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper_bars.png","family":"oxidized_copper_bars","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Palette proche: Waxed Oxidized Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chain","label":"Palette proche: Oxidized Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Palette proche: Waxed Oxidized Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.933},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.933},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.933},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.933},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.933},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.933},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.932},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.932},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.932},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.885},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.835},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.835},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.824},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.824},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.824},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.824},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.822},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.822},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bars","label":"Couleurs analogues: Waxed Oxidized Copper Bars","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_bulb","label":"Couleurs analogues: Oxidized Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bulb","label":"Couleurs analogues: Waxed Oxidized Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper","label":"Couleurs analogues: Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_slab","label":"Couleurs analogues: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_stairs","label":"Couleurs analogues: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper","label":"Couleurs analogues: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Couleurs analogues: Waxed Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.951},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.93},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.929},{"type":"color_triad","target":"minecraft:bookshelf","label":"Harmonie triadique: Bookshelf","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_trapdoor","label":"Harmonie triadique: Oak Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_shelf","label":"Harmonie triadique: Oak Shelf","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_shelf","label":"Harmonie triadique: Spruce Shelf","confidence":0.96},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.928},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.909},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.909},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.909},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.909},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.897},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.89},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.569},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.568},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.567},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.567},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55}],"category":"building"},{"id":"minecraft:oxidized_copper_bulb","name":"Oxidized Copper Bulb","entry_type":"block","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","history":[{"version":"1.20.3","status":"added","notes":"Added copper bulbs behind the \" Update 1.21 \" experimental data pack ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb copper bulbs at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#46846d","dominant_hex":"#3c705e","average_hex":"#46846d","hue_group":"cyan","lightness":0.3961,"saturation":0.3069,"palette":["#3c705e","#3c6454","#4da18a","#345444","#5cb494","#6cc49c"],"color_groups":[{"hex":"#3c705e","weight":0.1992,"lightness":0.3373,"saturation":0.3023,"hue_group":"cyan"},{"hex":"#3c6454","weight":0.1953,"lightness":0.3137,"saturation":0.25,"hue_group":"cyan"},{"hex":"#4da18a","weight":0.1953,"lightness":0.4667,"saturation":0.3529,"hue_group":"cyan"},{"hex":"#345444","weight":0.1758,"lightness":0.2667,"saturation":0.2353,"hue_group":"cyan"},{"hex":"#5cb494","weight":0.1172,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1172,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper_bulb.png","family":"oxidized_copper_bulb","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cornflower","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cornflower","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Palette proche: Waxed Oxidized Copper Bulb","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Palette proche: Waxed Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.939},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.939},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.939},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.939},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.939},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.854},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.854},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.814},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.814},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.805},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.803},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.803},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.802},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.802},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bulb","label":"Couleurs analogues: Waxed Oxidized Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_bars","label":"Couleurs analogues: Oxidized Copper Bars","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bars","label":"Couleurs analogues: Waxed Oxidized Copper Bars","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper","label":"Couleurs analogues: Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_slab","label":"Couleurs analogues: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_stairs","label":"Couleurs analogues: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper","label":"Couleurs analogues: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Couleurs analogues: Waxed Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.946},{"type":"color_complement","target":"minecraft:magenta_terracotta","label":"Contraste complementaire: Magenta Terracotta","confidence":0.931},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.925},{"type":"color_triad","target":"minecraft:oak_shelf","label":"Harmonie triadique: Oak Shelf","confidence":0.96},{"type":"color_triad","target":"minecraft:bookshelf","label":"Harmonie triadique: Bookshelf","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_trapdoor","label":"Harmonie triadique: Oak Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.924},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.904},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.894},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.892},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55}],"category":"building"},{"id":"minecraft:oxidized_copper_chain","name":"Oxidized Copper Chain","entry_type":"block","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper chains."}],"colors":{"primary":"#3e7663","dominant_hex":"#3c6454","average_hex":"#3e7663","hue_group":"cyan","lightness":0.3529,"saturation":0.3111,"palette":["#3c6454","#3c846c","#4c9484"],"color_groups":[{"hex":"#3c6454","weight":0.4643,"lightness":0.3137,"saturation":0.25,"hue_group":"cyan"},{"hex":"#3c846c","weight":0.4464,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.0893,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper_chain.png","family":"oxidized_copper_chain","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Palette proche: Waxed Oxidized Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bars","label":"Palette proche: Oxidized Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Palette proche: Waxed Oxidized Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_prismarine","label":"Palette proche: Dark Prismarine","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_prismarine_slab","label":"Palette proche: Dark Prismarine Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_prismarine_stairs","label":"Palette proche: Dark Prismarine Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Palette proche: Oxidized Copper Lantern","confidence":0.917},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_lantern","label":"Palette proche: Waxed Oxidized Copper Lantern","confidence":0.917},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Palette proche: Oxidized Copper Bulb","confidence":0.91},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Palette proche: Waxed Oxidized Copper Bulb","confidence":0.91},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.893},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.893},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.885},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.818},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.818},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.796},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.796},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.796},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.796},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.791},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.781},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_chain","label":"Couleurs analogues: Waxed Oxidized Copper Chain","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_lightning_rod","label":"Couleurs analogues: Oxidized Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_lightning_rod","label":"Couleurs analogues: Waxed Oxidized Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_door","label":"Couleurs analogues: Oxidized Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_door","label":"Couleurs analogues: Waxed Oxidized Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_bars","label":"Couleurs analogues: Oxidized Copper Bars","confidence":0.952},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bars","label":"Couleurs analogues: Waxed Oxidized Copper Bars","confidence":0.952},{"type":"color_analogous","target":"minecraft:oxidized_copper_bulb","label":"Couleurs analogues: Oxidized Copper Bulb","confidence":0.949},{"type":"color_complement","target":"minecraft:purple_terracotta","label":"Contraste complementaire: Purple Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:magenta_terracotta","label":"Contraste complementaire: Magenta Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_glazed_terracotta","label":"Contraste complementaire: Pink Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_stained_glass_pane","label":"Contraste complementaire: Pink Stained Glass Pane","confidence":0.954},{"type":"color_complement","target":"minecraft:pink_shulker_box","label":"Contraste complementaire: Pink Shulker Box","confidence":0.951},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.943},{"type":"color_complement","target":"minecraft:pink_stained_glass","label":"Contraste complementaire: Pink Stained Glass","confidence":0.932},{"type":"color_complement","target":"minecraft:pink_carpet","label":"Contraste complementaire: Pink Carpet","confidence":0.918},{"type":"color_triad","target":"minecraft:torch","label":"Harmonie triadique: Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:wall_torch","label":"Harmonie triadique: Wall Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:short_dry_grass","label":"Harmonie triadique: Short Dry Grass","confidence":0.96},{"type":"color_triad","target":"minecraft:tall_dry_grass","label":"Harmonie triadique: Tall Dry Grass","confidence":0.96},{"type":"color_triad","target":"minecraft:bee_nest","label":"Harmonie triadique: Bee Nest","confidence":0.96},{"type":"color_triad","target":"minecraft:chiseled_quartz_block","label":"Harmonie triadique: Chiseled Quartz Block","confidence":0.953},{"type":"color_triad","target":"minecraft:yellow_terracotta","label":"Harmonie triadique: Yellow Terracotta","confidence":0.943},{"type":"color_triad","target":"minecraft:oak_hanging_sign","label":"Harmonie triadique: Oak Hanging Sign","confidence":0.942},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.96},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.96},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.946},{"type":"color_square","target":"minecraft:wither_rose","label":"Harmonie carree: Wither Rose","confidence":0.946},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.914},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.914},{"type":"color_square","target":"minecraft:bamboo_block","label":"Harmonie carree: Bamboo Block","confidence":0.898},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.582},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.581},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.581},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.581},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55}],"category":"building"},{"id":"minecraft:oxidized_copper_chest","name":"Oxidized Copper Chest","entry_type":"block","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper chests."}],"colors":{"primary":"#52a385","dominant_hex":"#5cb494","average_hex":"#52a385","hue_group":"cyan","lightness":0.4804,"saturation":0.3306,"palette":["#5cb494","#4cac94","#54a47c","#3c6c5b","#4c9484","#6cc49c"],"color_groups":[{"hex":"#5cb494","weight":0.2578,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#4cac94","weight":0.1992,"lightness":0.4863,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1914,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#3c6c5b","weight":0.1328,"lightness":0.3294,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1172,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1016,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper.png","family":"oxidized_copper_chest","relations":[{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Palette proche: Waxed Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.805},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.799},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.795},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.795},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.787},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper","label":"Couleurs analogues: Waxed Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_chest","label":"Couleurs analogues: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Couleurs analogues: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_grate","label":"Couleurs analogues: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.947},{"type":"color_complement","target":"minecraft:magenta_terracotta","label":"Contraste complementaire: Magenta Terracotta","confidence":0.93},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.926},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.921},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.904},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.897},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.892},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55}],"category":"building"},{"id":"minecraft:oxidized_copper_door","name":"Oxidized Copper Door","entry_type":"block","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","history":[{"version":"1.20.3","status":"added","notes":"Added copper doors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#52a085","dominant_hex":"#4cac94","average_hex":"#52a085","hue_group":"cyan","lightness":0.4745,"saturation":0.3223,"palette":["#4cac94","#3e6e5d","#6cc49c","#4c9484","#5cb494","#54a47c"],"color_groups":[{"hex":"#4cac94","weight":0.2452,"lightness":0.4863,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#3e6e5d","weight":0.2019,"lightness":0.3373,"saturation":0.2791,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1827,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1538,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#5cb494","weight":0.1442,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.0721,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper_door_top.png","family":"oxidized_copper","relations":[{"type":"variants","target":"minecraft:oxidized_copper","label":"Same family: oxidized_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:oxidized_copper","label":"Related set: oxidized_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Palette proche: Waxed Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.823},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.823},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.81},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.81},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.804},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.804},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.799},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.799},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Chiseled Copper","confidence":0.792},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Weathered Chiseled Copper","confidence":0.792},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_door","label":"Couleurs analogues: Waxed Oxidized Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_lightning_rod","label":"Couleurs analogues: Oxidized Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_lightning_rod","label":"Couleurs analogues: Waxed Oxidized Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper","label":"Couleurs analogues: Waxed Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_chest","label":"Couleurs analogues: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:magenta_terracotta","label":"Contraste complementaire: Magenta Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:purple_terracotta","label":"Contraste complementaire: Purple Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.955},{"type":"color_complement","target":"minecraft:pink_glazed_terracotta","label":"Contraste complementaire: Pink Glazed Terracotta","confidence":0.948},{"type":"color_complement","target":"minecraft:pink_stained_glass_pane","label":"Contraste complementaire: Pink Stained Glass Pane","confidence":0.941},{"type":"color_complement","target":"minecraft:pink_shulker_box","label":"Contraste complementaire: Pink Shulker Box","confidence":0.938},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.928},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.923},{"type":"color_triad","target":"minecraft:torch","label":"Harmonie triadique: Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:wall_torch","label":"Harmonie triadique: Wall Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:short_dry_grass","label":"Harmonie triadique: Short Dry Grass","confidence":0.96},{"type":"color_triad","target":"minecraft:tall_dry_grass","label":"Harmonie triadique: Tall Dry Grass","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_terracotta","label":"Harmonie triadique: Yellow Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:chiseled_quartz_block","label":"Harmonie triadique: Chiseled Quartz Block","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_hanging_sign","label":"Harmonie triadique: Oak Hanging Sign","confidence":0.958},{"type":"color_triad","target":"minecraft:oak_wall_hanging_sign","label":"Harmonie triadique: Oak Wall Hanging Sign","confidence":0.958},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.957},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.953},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.951},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.93},{"type":"color_square","target":"minecraft:wither_rose","label":"Harmonie carree: Wither Rose","confidence":0.93},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.915},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.897},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.897},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55}],"category":"building"},{"id":"minecraft:oxidized_copper_golem","name":"Oxidized Copper Golem","entry_type":"mob","description":"A copper golem is a buildable passive mob that takes items out of copper chests, and attempts to store them in nearby wooden chests and trapped chests. A chest examined by a copper golem must either be empty, or contain the item type it is holding, for the golem to place anything inside of it. If not waxed, a copper golem oxidizes over time and eventually turns into a copper golem statue, dropping its currently held items.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper golems."}],"colors":{"primary":"#4d9378","dominant_hex":"#56b191","average_hex":"#4d9378","hue_group":"cyan","lightness":0.4392,"saturation":0.3125,"palette":["#56b191","#519677","#6cc49c","#345444","#3c7464","#346454"],"color_groups":[{"hex":"#56b191","weight":0.2289,"lightness":0.5157,"saturation":0.3684,"hue_group":"cyan"},{"hex":"#519677","weight":0.2062,"lightness":0.4529,"saturation":0.2987,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1949,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#345444","weight":0.1329,"lightness":0.2667,"saturation":0.2353,"hue_group":"cyan"},{"hex":"#3c7464","weight":0.1292,"lightness":0.3451,"saturation":0.3182,"hue_group":"cyan"},{"hex":"#346454","weight":0.108,"lightness":0.298,"saturation":0.3158,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/copper_golem/oxidized_copper_golem.png","family":"oxidized_copper_golem","relations":[{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_bioluminescent_layer","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/yellow_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_golem","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:oxidized_copper_golem_statue","name":"Oxidized Copper Golem Statue","entry_type":"block","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper golem statues."}],"colors":{"primary":"#52a385","dominant_hex":"#5cb494","average_hex":"#52a385","hue_group":"cyan","lightness":0.4804,"saturation":0.3306,"palette":["#5cb494","#4cac94","#54a47c","#3c6c5b","#4c9484","#6cc49c"],"color_groups":[{"hex":"#5cb494","weight":0.2578,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#4cac94","weight":0.1992,"lightness":0.4863,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1914,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#3c6c5b","weight":0.1328,"lightness":0.3294,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1172,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1016,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper.png","family":"oxidized_copper_golem_statue","relations":[{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Palette proche: Waxed Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.805},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.799},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.795},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.795},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.787},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper","label":"Couleurs analogues: Waxed Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_chest","label":"Couleurs analogues: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Couleurs analogues: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_grate","label":"Couleurs analogues: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.947},{"type":"color_complement","target":"minecraft:magenta_terracotta","label":"Contraste complementaire: Magenta Terracotta","confidence":0.93},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.926},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.921},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.904},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.897},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.892},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55}],"category":"building"},{"id":"minecraft:oxidized_copper_grate","name":"Oxidized Copper Grate","entry_type":"block","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","history":[{"version":"1.20.3","status":"added","notes":"Added copper grates behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#52a183","dominant_hex":"#4cac94","average_hex":"#52a183","hue_group":"cyan","lightness":0.4765,"saturation":0.3251,"palette":["#4cac94","#5cb494","#54a47c","#3c6858","#6cc49c","#4b9382"],"color_groups":[{"hex":"#4cac94","weight":0.2179,"lightness":0.4863,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#5cb494","weight":0.2179,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1955,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#3c6858","weight":0.162,"lightness":0.3216,"saturation":0.2683,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1229,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#4b9382","weight":0.0838,"lightness":0.4353,"saturation":0.3243,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper_grate.png","family":"oxidized_copper_grate","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Palette proche: Waxed Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.827},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.827},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.806},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.806},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.804},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.804},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.799},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.799},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.796},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Chiseled Copper","confidence":0.789},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_grate","label":"Couleurs analogues: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper","label":"Couleurs analogues: Waxed Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_chest","label":"Couleurs analogues: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Couleurs analogues: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.958},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.958},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.95},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.944},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.944},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.944},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.927},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.927},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.927},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.927},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.915},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.874},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55}],"category":"building"},{"id":"minecraft:oxidized_copper_lantern","name":"Oxidized Copper Lantern","entry_type":"block","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper lanterns."}],"colors":{"primary":"#4e8b6f","dominant_hex":"#3c6454","average_hex":"#4e8b6f","hue_group":"cyan","lightness":0.4255,"saturation":0.2811,"palette":["#3c6454","#3c846c","#4c9484","#3d765a","#aae4ac","#5faa72"],"color_groups":[{"hex":"#3c6454","weight":0.2358,"lightness":0.3137,"saturation":0.25,"hue_group":"cyan"},{"hex":"#3c846c","weight":0.2358,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1698,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#3d765a","weight":0.1509,"lightness":0.351,"saturation":0.3184,"hue_group":"cyan"},{"hex":"#aae4ac","weight":0.1132,"lightness":0.7804,"saturation":0.5179,"hue_group":"green"},{"hex":"#5faa72","weight":0.0943,"lightness":0.5196,"saturation":0.3061,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper_lantern.png","family":"oxidized_copper_lantern","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cornflower","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cornflower","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_lantern","label":"Palette proche: Waxed Oxidized Copper Lantern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chain","label":"Palette proche: Oxidized Copper Chain","confidence":0.917},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Palette proche: Waxed Oxidized Copper Chain","confidence":0.917},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bars","label":"Palette proche: Oxidized Copper Bars","confidence":0.914},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Palette proche: Waxed Oxidized Copper Bars","confidence":0.914},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.867},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.867},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.867},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.867},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.867},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.867},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Palette proche: Oxidized Copper Bulb","confidence":0.866},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.855},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.855},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.854},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.854},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.842},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.842},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.842},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.842},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.824},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.824},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_lantern","label":"Couleurs analogues: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:torchflower_crop","label":"Couleurs analogues: Torchflower Crop","confidence":0.952},{"type":"color_analogous","target":"minecraft:dark_prismarine","label":"Couleurs analogues: Dark Prismarine","confidence":0.893},{"type":"color_analogous","target":"minecraft:dark_prismarine_slab","label":"Couleurs analogues: Dark Prismarine Slab","confidence":0.893},{"type":"color_analogous","target":"minecraft:dark_prismarine_stairs","label":"Couleurs analogues: Dark Prismarine Stairs","confidence":0.893},{"type":"color_analogous","target":"minecraft:oxidized_chiseled_copper","label":"Couleurs analogues: Oxidized Chiseled Copper","confidence":0.889},{"type":"color_analogous","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Couleurs analogues: Waxed Oxidized Chiseled Copper","confidence":0.889},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper","label":"Couleurs analogues: Oxidized Cut Copper","confidence":0.886},{"type":"color_complement","target":"minecraft:crimson_button","label":"Contraste complementaire: Crimson Button","confidence":0.922},{"type":"color_complement","target":"minecraft:crimson_fence","label":"Contraste complementaire: Crimson Fence","confidence":0.922},{"type":"color_complement","target":"minecraft:crimson_fence_gate","label":"Contraste complementaire: Crimson Fence Gate","confidence":0.922},{"type":"color_complement","target":"minecraft:crimson_planks","label":"Contraste complementaire: Crimson Planks","confidence":0.922},{"type":"color_complement","target":"minecraft:crimson_pressure_plate","label":"Contraste complementaire: Crimson Pressure Plate","confidence":0.922},{"type":"color_complement","target":"minecraft:crimson_sign","label":"Contraste complementaire: Crimson Sign","confidence":0.922},{"type":"color_complement","target":"minecraft:crimson_slab","label":"Contraste complementaire: Crimson Slab","confidence":0.922},{"type":"color_complement","target":"minecraft:crimson_stairs","label":"Contraste complementaire: Crimson Stairs","confidence":0.922},{"type":"color_triad","target":"minecraft:sniffer_egg","label":"Harmonie triadique: Sniffer Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:glowstone","label":"Harmonie triadique: Glowstone","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_door","label":"Harmonie triadique: Spruce Door","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_trapdoor","label":"Harmonie triadique: Spruce Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_button","label":"Harmonie triadique: Spruce Button","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_fence","label":"Harmonie triadique: Spruce Fence","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_fence_gate","label":"Harmonie triadique: Spruce Fence Gate","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_planks","label":"Harmonie triadique: Spruce Planks","confidence":0.96},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.96},{"type":"color_square","target":"minecraft:cocoa","label":"Harmonie carree: Cocoa","confidence":0.959},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.864},{"type":"color_square","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie carree: Yellow Stained Glass Pane","confidence":0.863},{"type":"color_square","target":"minecraft:yellow_stained_glass","label":"Harmonie carree: Yellow Stained Glass","confidence":0.858},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.851},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.843},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55}],"category":"building"},{"id":"minecraft:oxidized_copper_trapdoor","name":"Oxidized Copper Trapdoor","entry_type":"block","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","history":[{"version":"1.20.3","status":"added","notes":"Added copper trapdoors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#54a184","dominant_hex":"#5cb494","average_hex":"#54a184","hue_group":"cyan","lightness":0.4804,"saturation":0.3143,"palette":["#5cb494","#6cc49c","#4c9484","#3c6c5b","#54a47c","#4cac94"],"color_groups":[{"hex":"#5cb494","weight":0.2108,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1863,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1814,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#3c6c5b","weight":0.1667,"lightness":0.3294,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1618,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#4cac94","weight":0.0931,"lightness":0.4863,"saturation":0.3871,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper_trapdoor.png","family":"oxidized_copper_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Palette proche: Waxed Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.813},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.813},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.81},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.81},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.804},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.804},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.796},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Chiseled Copper","confidence":0.795},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Couleurs analogues: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_chiseled_copper","label":"Couleurs analogues: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Couleurs analogues: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_grate","label":"Couleurs analogues: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.958},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.956},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.937},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.936},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.937},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.919},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.919},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.919},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.919},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.907},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.881},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55}],"category":"building"},{"id":"minecraft:oxidized_cut_copper","name":"Oxidized Cut Copper","entry_type":"block","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed cut copper and three variants of waxed cut copper."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cut copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#509a7e","dominant_hex":"#57a98d","average_hex":"#509a7e","hue_group":"cyan","lightness":0.4588,"saturation":0.3162,"palette":["#57a98d","#4c9484","#54a47c","#6cc49c","#346454","#3c7c64"],"color_groups":[{"hex":"#57a98d","weight":0.3281,"lightness":0.502,"saturation":0.3228,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1797,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1328,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.125,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#346454","weight":0.1172,"lightness":0.298,"saturation":0.3158,"hue_group":"cyan"},{"hex":"#3c7c64","weight":0.1172,"lightness":0.3608,"saturation":0.3478,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_cut_copper.png","family":"oxidized_cut_copper","relations":[{"type":"variants","target":"minecraft:oxidized_cut_copper_slab","label":"Same family: oxidized_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:oxidized_cut_copper_slab","label":"Related set: oxidized_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:oxidized_cut_copper_stairs","label":"Same family: oxidized_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:oxidized_cut_copper_stairs","label":"Related set: oxidized_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.812},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.812},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.809},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.809},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.798},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.797},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.797},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.796},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_slab","label":"Couleurs analogues: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_stairs","label":"Couleurs analogues: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper","label":"Couleurs analogues: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Couleurs analogues: Waxed Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Couleurs analogues: Waxed Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Couleurs analogues: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.952},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.941},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.94},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.942},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.923},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.911},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.876},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:oxidized_cut_copper_slab","name":"Oxidized Cut Copper Slab","entry_type":"block","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper slabs and three variants of waxed cut copper slabs."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper slabs."}],"colors":{"primary":"#509a7e","dominant_hex":"#57a98d","average_hex":"#509a7e","hue_group":"cyan","lightness":0.4588,"saturation":0.3162,"palette":["#57a98d","#4c9484","#54a47c","#6cc49c","#346454","#3c7c64"],"color_groups":[{"hex":"#57a98d","weight":0.3281,"lightness":0.502,"saturation":0.3228,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1797,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1328,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.125,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#346454","weight":0.1172,"lightness":0.298,"saturation":0.3158,"hue_group":"cyan"},{"hex":"#3c7c64","weight":0.1172,"lightness":0.3608,"saturation":0.3478,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_cut_copper.png","family":"oxidized_cut_copper","relations":[{"type":"variants","target":"minecraft:oxidized_cut_copper","label":"Same family: oxidized_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:oxidized_cut_copper","label":"Related set: oxidized_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:oxidized_cut_copper_stairs","label":"Same family: oxidized_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:oxidized_cut_copper_stairs","label":"Related set: oxidized_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.812},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.812},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.809},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.809},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.798},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.797},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.797},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.796},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper","label":"Couleurs analogues: Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_stairs","label":"Couleurs analogues: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper","label":"Couleurs analogues: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Couleurs analogues: Waxed Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Couleurs analogues: Waxed Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Couleurs analogues: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.952},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.941},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.94},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.942},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.923},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.911},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.876},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:oxidized_cut_copper_stairs","name":"Oxidized Cut Copper Stairs","entry_type":"block","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper stairs and three variants of waxed cut copper stairs: (waxed) cut copper stairs, (waxed) lightly weathered cut copper stairs, (waxed) semi-weathered cut copper stairs, and weathered cut"},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper stairs."}],"colors":{"primary":"#509a7e","dominant_hex":"#57a98d","average_hex":"#509a7e","hue_group":"cyan","lightness":0.4588,"saturation":0.3162,"palette":["#57a98d","#4c9484","#54a47c","#6cc49c","#346454","#3c7c64"],"color_groups":[{"hex":"#57a98d","weight":0.3281,"lightness":0.502,"saturation":0.3228,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1797,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1328,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.125,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#346454","weight":0.1172,"lightness":0.298,"saturation":0.3158,"hue_group":"cyan"},{"hex":"#3c7c64","weight":0.1172,"lightness":0.3608,"saturation":0.3478,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_cut_copper.png","family":"oxidized_cut_copper","relations":[{"type":"variants","target":"minecraft:oxidized_cut_copper","label":"Same family: oxidized_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:oxidized_cut_copper","label":"Related set: oxidized_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:oxidized_cut_copper_slab","label":"Same family: oxidized_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:oxidized_cut_copper_slab","label":"Related set: oxidized_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.812},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.812},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.809},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.809},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.798},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.797},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.797},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.796},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper","label":"Couleurs analogues: Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_slab","label":"Couleurs analogues: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper","label":"Couleurs analogues: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Couleurs analogues: Waxed Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Couleurs analogues: Waxed Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Couleurs analogues: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.952},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.941},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.94},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.942},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.923},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.911},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.876},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:oxidized_lightning_rod","name":"Oxidized Lightning Rod","entry_type":"block","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added lightning rods."},{"version":"wiki-history","status":"added","notes":"Added exposed, weathered and oxidized variants of lightning rods."}],"colors":{"primary":"#4f9a80","dominant_hex":"#4e917a","average_hex":"#4f9a80","hue_group":"cyan","lightness":0.4569,"saturation":0.3219,"palette":["#4e917a","#5cb494","#4cac8c","#3c7464","#6cc49c","#346454"],"color_groups":[{"hex":"#4e917a","weight":0.25,"lightness":0.4373,"saturation":0.3004,"hue_group":"cyan"},{"hex":"#5cb494","weight":0.2,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#4cac8c","weight":0.175,"lightness":0.4863,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#3c7464","weight":0.15,"lightness":0.3451,"saturation":0.3182,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.125,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#346454","weight":0.1,"lightness":0.298,"saturation":0.3158,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_lightning_rod.png","family":"oxidized_lightning_rod","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Palette proche: Waxed Oxidized Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.831},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.796},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.796},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.792},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.792},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.786},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.786},{"type":"color_analogous","target":"minecraft:waxed_oxidized_lightning_rod","label":"Couleurs analogues: Waxed Oxidized Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_door","label":"Couleurs analogues: Oxidized Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_door","label":"Couleurs analogues: Waxed Oxidized Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper","label":"Couleurs analogues: Waxed Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_chest","label":"Couleurs analogues: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:magenta_terracotta","label":"Contraste complementaire: Magenta Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:purple_terracotta","label":"Contraste complementaire: Purple Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.956},{"type":"color_complement","target":"minecraft:pink_glazed_terracotta","label":"Contraste complementaire: Pink Glazed Terracotta","confidence":0.947},{"type":"color_complement","target":"minecraft:pink_stained_glass_pane","label":"Contraste complementaire: Pink Stained Glass Pane","confidence":0.94},{"type":"color_complement","target":"minecraft:pink_shulker_box","label":"Contraste complementaire: Pink Shulker Box","confidence":0.937},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.929},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.924},{"type":"color_triad","target":"minecraft:torch","label":"Harmonie triadique: Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:wall_torch","label":"Harmonie triadique: Wall Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:short_dry_grass","label":"Harmonie triadique: Short Dry Grass","confidence":0.96},{"type":"color_triad","target":"minecraft:tall_dry_grass","label":"Harmonie triadique: Tall Dry Grass","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_terracotta","label":"Harmonie triadique: Yellow Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:chiseled_quartz_block","label":"Harmonie triadique: Chiseled Quartz Block","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_hanging_sign","label":"Harmonie triadique: Oak Hanging Sign","confidence":0.959},{"type":"color_triad","target":"minecraft:oak_wall_hanging_sign","label":"Harmonie triadique: Oak Wall Hanging Sign","confidence":0.959},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.956},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.951},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.95},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.929},{"type":"color_square","target":"minecraft:wither_rose","label":"Harmonie carree: Wither Rose","confidence":0.929},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.916},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.896},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.896},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55}],"category":""},{"id":"minecraft:packed_ice","name":"Packed Ice","entry_type":"block","description":"Packed ice is a variant of ice that functions almost identically, but does not melt and is opaque instead of transparent. Like other types of ice, it can only be obtained using a Silk Touch tool.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added packed ice."},{"version":"wiki-history","status":"added","notes":"Added icebergs to frozen oceans , which contain packed ice."},{"version":"19w05a","status":"added","notes":"Added wandering traders , which sell packed ice."}],"colors":{"primary":"#8eb4fa","dominant_hex":"#94bcfc","average_hex":"#8eb4fa","hue_group":"blue","lightness":0.7686,"saturation":0.9153,"palette":["#94bcfc","#84acfc","#7ca4f4","#a4c4fc","#bcd4fc","#ccdcfc"],"color_groups":[{"hex":"#94bcfc","weight":0.3242,"lightness":0.7843,"saturation":0.9455,"hue_group":"blue"},{"hex":"#84acfc","weight":0.2969,"lightness":0.7529,"saturation":0.9524,"hue_group":"blue"},{"hex":"#7ca4f4","weight":0.1914,"lightness":0.7216,"saturation":0.8451,"hue_group":"blue"},{"hex":"#a4c4fc","weight":0.1602,"lightness":0.8157,"saturation":0.9362,"hue_group":"blue"},{"hex":"#bcd4fc","weight":0.0195,"lightness":0.8627,"saturation":0.9143,"hue_group":"blue"},{"hex":"#ccdcfc","weight":0.0078,"lightness":0.8941,"saturation":0.8889,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/packed_ice.png","family":"packed_ice","relations":[{"type":"visual_neighbors","target":"minecraft:frosted_ice","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ice","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_ice","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_cluster","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:frosted_ice","label":"Palette proche: Frosted Ice","confidence":0.94},{"type":"color_neighbors","target":"minecraft:ice","label":"Palette proche: Ice","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_ice","label":"Palette proche: Blue Ice","confidence":0.931},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass","label":"Palette proche: Light Blue Stained Glass","confidence":0.608},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.595},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.595},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.585},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.58},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Palette proche: Light Blue Stained Glass Pane","confidence":0.58},{"type":"color_neighbors","target":"minecraft:diamond_block","label":"Palette proche: Diamond Block","confidence":0.58},{"type":"color_neighbors","target":"minecraft:clay","label":"Palette proche: Clay","confidence":0.58},{"type":"color_neighbors","target":"minecraft:light_blue_carpet","label":"Palette proche: Light Blue Carpet","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_block","label":"Pont de nuance par palette: Diamond Block","confidence":0.589},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.58},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par sous-ton: Cobweb","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par sous-ton: White Carpet","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par sous-ton: White Wool","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par sous-ton: White Concrete Powder","confidence":0.58},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par sous-ton: Light","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_analogous","target":"minecraft:frosted_ice","label":"Couleurs analogues: Frosted Ice","confidence":0.96},{"type":"color_analogous","target":"minecraft:ice","label":"Couleurs analogues: Ice","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_ice","label":"Couleurs analogues: Blue Ice","confidence":0.954},{"type":"color_analogous","target":"minecraft:lapis_block","label":"Couleurs analogues: Lapis Block","confidence":0.885},{"type":"color_analogous","target":"minecraft:spawner","label":"Couleurs analogues: Spawner","confidence":0.86},{"type":"color_analogous","target":"minecraft:light_blue_stained_glass_pane","label":"Couleurs analogues: Light Blue Stained Glass Pane","confidence":0.847},{"type":"color_analogous","target":"minecraft:light_blue_stained_glass","label":"Couleurs analogues: Light Blue Stained Glass","confidence":0.844},{"type":"color_analogous","target":"minecraft:tube_coral_fan","label":"Couleurs analogues: Tube Coral Fan","confidence":0.825},{"type":"color_complement","target":"minecraft:yellow_terracotta","label":"Contraste complementaire: Yellow Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:honey_block","label":"Contraste complementaire: Honey Block","confidence":0.945},{"type":"color_complement","target":"minecraft:short_dry_grass","label":"Contraste complementaire: Short Dry Grass","confidence":0.94},{"type":"color_complement","target":"minecraft:torch","label":"Contraste complementaire: Torch","confidence":0.935},{"type":"color_complement","target":"minecraft:wall_torch","label":"Contraste complementaire: Wall Torch","confidence":0.935},{"type":"color_complement","target":"minecraft:oak_hanging_sign","label":"Contraste complementaire: Oak Hanging Sign","confidence":0.924},{"type":"color_complement","target":"minecraft:oak_wall_hanging_sign","label":"Contraste complementaire: Oak Wall Hanging Sign","confidence":0.924},{"type":"color_complement","target":"minecraft:stripped_oak_log","label":"Contraste complementaire: Stripped Oak Log","confidence":0.924},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.96},{"type":"color_triad","target":"minecraft:tall_seagrass","label":"Harmonie triadique: Tall Seagrass","confidence":0.96},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.949},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.949},{"type":"color_triad","target":"minecraft:pink_stained_glass_pane","label":"Harmonie triadique: Pink Stained Glass Pane","confidence":0.948},{"type":"color_triad","target":"minecraft:pink_glazed_terracotta","label":"Harmonie triadique: Pink Glazed Terracotta","confidence":0.947},{"type":"color_triad","target":"minecraft:pink_stained_glass","label":"Harmonie triadique: Pink Stained Glass","confidence":0.943},{"type":"color_triad","target":"minecraft:pink_shulker_box","label":"Harmonie triadique: Pink Shulker Box","confidence":0.939},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.808},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.807},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.802},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.802},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.777},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.775},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.773},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.667},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.632},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.632},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.632},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.632},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.621},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.616},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.614}],"category":""},{"id":"minecraft:packed_mud","name":"Packed Mud","entry_type":"block","description":"Packed mud is a block crafted from mud and wheat. It is used to create mud bricks.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added packed mud."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb packed mud, providing the football/regular effect to the mob."}],"colors":{"primary":"#8e6b50","dominant_hex":"#8c644c","average_hex":"#8e6b50","hue_group":"red","lightness":0.4353,"saturation":0.2793,"palette":["#8c644c","#947454","#9c745c","#7c5c44","#a4845c","#74544c"],"color_groups":[{"hex":"#8c644c","weight":0.3828,"lightness":0.4235,"saturation":0.2963,"hue_group":"red"},{"hex":"#947454","weight":0.2305,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#9c745c","weight":0.2031,"lightness":0.4863,"saturation":0.2581,"hue_group":"red"},{"hex":"#7c5c44","weight":0.1211,"lightness":0.3765,"saturation":0.2917,"hue_group":"red"},{"hex":"#a4845c","weight":0.0352,"lightness":0.502,"saturation":0.2835,"hue_group":"yellow"},{"hex":"#74544c","weight":0.0273,"lightness":0.3765,"saturation":0.2083,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/packed_mud.png","family":"packed_mud","relations":[{"type":"visual_neighbors","target":"minecraft:mud_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_mushroom_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brown_mushroom_block","label":"Palette proche: Brown Mushroom Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_brick_slab","label":"Palette proche: Mud Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_brick_stairs","label":"Palette proche: Mud Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_brick_wall","label":"Palette proche: Mud Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_bricks","label":"Palette proche: Mud Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dripstone_block","label":"Palette proche: Dripstone Block","confidence":0.911},{"type":"color_neighbors","target":"minecraft:pointed_dripstone","label":"Palette proche: Pointed Dripstone","confidence":0.91},{"type":"color_neighbors","target":"minecraft:rooted_dirt","label":"Palette proche: Rooted Dirt","confidence":0.889},{"type":"color_neighbors","target":"minecraft:granite","label":"Palette proche: Granite","confidence":0.889},{"type":"color_neighbors","target":"minecraft:granite_slab","label":"Palette proche: Granite Slab","confidence":0.889},{"type":"color_neighbors","target":"minecraft:granite_stairs","label":"Palette proche: Granite Stairs","confidence":0.889},{"type":"color_neighbors","target":"minecraft:granite_wall","label":"Palette proche: Granite Wall","confidence":0.889},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.9},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.893},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.891},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.891},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.879},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.879},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.878},{"type":"color_analogous","target":"minecraft:mud_brick_slab","label":"Couleurs analogues: Mud Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_stairs","label":"Couleurs analogues: Mud Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_wall","label":"Couleurs analogues: Mud Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_bricks","label":"Couleurs analogues: Mud Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_mushroom_block","label":"Couleurs analogues: Brown Mushroom Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_trapdoor","label":"Couleurs analogues: Jungle Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:farmland","label":"Couleurs analogues: Farmland","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_button","label":"Couleurs analogues: Jungle Button","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.946},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.946},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.946},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.904},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.904},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.874},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.868},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.848},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.944},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.924},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.923},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.922},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.922},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.92},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.909},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.908},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.874},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.836},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.825},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.789},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.789},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.784},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.749},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":""},{"id":"minecraft:painting","name":"Painting","entry_type":"item","description":"Paintings are decorative entities that hang on walls. They have many different variants with different sizes when placed, which are chosen based on both the available space and random chance.","history":[{"version":"20100223","status":"added","notes":"Added paintings."},{"version":"v1.1.1","status":"added","notes":"Added five more painting canvases, for a total of 24."},{"version":"1.2_01","status":"added","notes":"Added a new painting, although it uses an untextured part of kz.png due to the painting texture not yet being implemented."}],"colors":{"primary":"#93836f","dominant_hex":"#a0988c","average_hex":"#93836f","hue_group":"yellow","lightness":0.5059,"saturation":0.1429,"palette":["#a0988c","#ccc4bc","#282318","#7c440c","#8e724f","#643c14"],"color_groups":[{"hex":"#a0988c","weight":0.3179,"lightness":0.5882,"saturation":0.0952,"hue_group":"neutral"},{"hex":"#ccc4bc","weight":0.2781,"lightness":0.7686,"saturation":0.1356,"hue_group":"yellow"},{"hex":"#282318","weight":0.1258,"lightness":0.1255,"saturation":0.25,"hue_group":"yellow"},{"hex":"#7c440c","weight":0.1192,"lightness":0.2667,"saturation":0.8235,"hue_group":"yellow"},{"hex":"#8e724f","weight":0.106,"lightness":0.4333,"saturation":0.2851,"hue_group":"yellow"},{"hex":"#643c14","weight":0.053,"lightness":0.2353,"saturation":0.6667,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/painting.png","family":"painting","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_banner_pattern","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:pale_hanging_moss","name":"Pale Hanging Moss","entry_type":"block","description":"Pale hanging moss is a block found under the logs and leaves of pale oaks. When attached to a pale oak log or leaves, it emits ambient sounds.","history":[{"version":"1.21.2","status":"added","notes":"Added pale hanging moss."}],"colors":{"primary":"#636862","dominant_hex":"#545454","average_hex":"#636862","hue_group":"neutral","lightness":0.3961,"saturation":0.0297,"palette":["#545454","#6c746c","#7c8474"],"color_groups":[{"hex":"#545454","weight":0.4508,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c746c","weight":0.3525,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#7c8474","weight":0.1967,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_hanging_moss.png","family":"pale_hanging_moss","relations":[{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_moss_block","label":"Palette proche: Pale Moss Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_moss_carpet","label":"Palette proche: Pale Moss Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_sapling","label":"Palette proche: Pale Oak Sapling","confidence":0.904},{"type":"color_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Palette proche: Potted Pale Oak Sapling","confidence":0.904},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.843},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.839},{"type":"color_neighbors","target":"minecraft:tall_grass","label":"Palette proche: Tall Grass","confidence":0.838},{"type":"color_neighbors","target":"minecraft:iron_bars","label":"Palette proche: Iron Bars","confidence":0.832},{"type":"color_neighbors","target":"minecraft:copper_ore","label":"Palette proche: Copper Ore","confidence":0.829},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.827},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.826},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.826},{"type":"color_bridge","target":"minecraft:pale_moss_block","label":"Pont de nuance par palette: Pale Moss Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_moss_carpet","label":"Pont de nuance par palette: Pale Moss Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_sapling","label":"Pont de nuance par palette: Pale Oak Sapling","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_pale_oak_sapling","label":"Pont de nuance par palette: Potted Pale Oak Sapling","confidence":0.86},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:damaged_anvil","label":"Pont de nuance par palette: Damaged Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:tall_grass","label":"Pont de nuance par palette: Tall Grass","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_bars","label":"Pont de nuance par palette: Iron Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:copper_ore","label":"Pont de nuance par palette: Copper Ore","confidence":0.859},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.858},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.556},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55}],"category":"natural"},{"id":"minecraft:pale_moss_block","name":"Pale Moss Block","entry_type":"block","description":"A pale moss block is a block that generates in pale gardens. Unlike regular moss blocks, pale moss blocks are flammable.","history":[{"version":"1.21.2","status":"added","notes":"Added pale moss blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb pale moss blocks, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#6b7069","dominant_hex":"#5c5c5c","average_hex":"#6b7069","hue_group":"neutral","lightness":0.4255,"saturation":0.0323,"palette":["#5c5c5c","#6c746c","#7c8474","#646c64","#8c9484","#545454"],"color_groups":[{"hex":"#5c5c5c","weight":0.2461,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c746c","weight":0.2422,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#7c8474","weight":0.1602,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#646c64","weight":0.1562,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#8c9484","weight":0.1328,"lightness":0.549,"saturation":0.0696,"hue_group":"neutral"},{"hex":"#545454","weight":0.0625,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_moss_block.png","family":"pale_moss_block","relations":[{"type":"visual_neighbors","target":"minecraft:pale_moss_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_moss_carpet","label":"Palette proche: Pale Moss Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_hanging_moss","label":"Palette proche: Pale Hanging Moss","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_sapling","label":"Palette proche: Pale Oak Sapling","confidence":0.913},{"type":"color_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Palette proche: Potted Pale Oak Sapling","confidence":0.913},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.859},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.859},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.859},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.859},{"type":"color_neighbors","target":"minecraft:tall_grass","label":"Palette proche: Tall Grass","confidence":0.859},{"type":"color_neighbors","target":"minecraft:copper_ore","label":"Palette proche: Copper Ore","confidence":0.847},{"type":"color_neighbors","target":"minecraft:iron_bars","label":"Palette proche: Iron Bars","confidence":0.844},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.836},{"type":"color_bridge","target":"minecraft:pale_moss_carpet","label":"Pont de nuance par palette: Pale Moss Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_hanging_moss","label":"Pont de nuance par palette: Pale Hanging Moss","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_sapling","label":"Pont de nuance par palette: Pale Oak Sapling","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_pale_oak_sapling","label":"Pont de nuance par palette: Potted Pale Oak Sapling","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_stairs","label":"Pont de nuance par palette: Polished Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_wall","label":"Pont de nuance par palette: Polished Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:tall_grass","label":"Pont de nuance par palette: Tall Grass","confidence":0.86},{"type":"color_bridge","target":"minecraft:copper_ore","label":"Pont de nuance par palette: Copper Ore","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55}],"category":"natural"},{"id":"minecraft:pale_moss_carpet","name":"Pale Moss Carpet","entry_type":"block","description":"A pale moss carpet is a block that causes vine-like pale moss to grow on the side of neighboring blocks.","history":[{"version":"1.21.2","status":"added","notes":"Added pale moss carpets."}],"colors":{"primary":"#6b7069","dominant_hex":"#5c5c5c","average_hex":"#6b7069","hue_group":"neutral","lightness":0.4255,"saturation":0.0323,"palette":["#5c5c5c","#6c746c","#7c8474","#646c64","#8c9484","#545454"],"color_groups":[{"hex":"#5c5c5c","weight":0.2461,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c746c","weight":0.2422,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#7c8474","weight":0.1602,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#646c64","weight":0.1562,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#8c9484","weight":0.1328,"lightness":0.549,"saturation":0.0696,"hue_group":"neutral"},{"hex":"#545454","weight":0.0625,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_moss_carpet.png","family":"pale_moss_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:pale_moss_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_moss_block","label":"Palette proche: Pale Moss Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_hanging_moss","label":"Palette proche: Pale Hanging Moss","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_sapling","label":"Palette proche: Pale Oak Sapling","confidence":0.913},{"type":"color_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Palette proche: Potted Pale Oak Sapling","confidence":0.913},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.859},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.859},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.859},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.859},{"type":"color_neighbors","target":"minecraft:tall_grass","label":"Palette proche: Tall Grass","confidence":0.859},{"type":"color_neighbors","target":"minecraft:copper_ore","label":"Palette proche: Copper Ore","confidence":0.847},{"type":"color_neighbors","target":"minecraft:iron_bars","label":"Palette proche: Iron Bars","confidence":0.844},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.836},{"type":"color_bridge","target":"minecraft:pale_moss_block","label":"Pont de nuance par palette: Pale Moss Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_hanging_moss","label":"Pont de nuance par palette: Pale Hanging Moss","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_sapling","label":"Pont de nuance par palette: Pale Oak Sapling","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_pale_oak_sapling","label":"Pont de nuance par palette: Potted Pale Oak Sapling","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_stairs","label":"Pont de nuance par palette: Polished Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_wall","label":"Pont de nuance par palette: Polished Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:tall_grass","label":"Pont de nuance par palette: Tall Grass","confidence":0.86},{"type":"color_bridge","target":"minecraft:copper_ore","label":"Pont de nuance par palette: Copper Ore","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55}],"category":"decorative"},{"id":"minecraft:pale_oak_boat","name":"Pale Oak Boat","entry_type":"item","description":"Boats (including bamboo rafts) are drivable vehicle entities that can be ridden through water or at high speeds across all types of ice. Most mobs will ride nearby boats, which they cannot control or exit on their own.","history":[{"version":"v1.0.6","status":"added","notes":"Added boats."},{"version":"wiki-history","status":"added","notes":"added again."},{"version":"18w15a","status":"added","notes":"Added blue ice , which allows boats to travel even faster on it."}],"colors":{"primary":"#968c8b","dominant_hex":"#463e3e","average_hex":"#968c8b","hue_group":"neutral","lightness":0.5667,"saturation":0.0498,"palette":["#463e3e","#ebe6e6","#6c6464","#d4c4c4","#8c7474","#a49494"],"color_groups":[{"hex":"#463e3e","weight":0.2424,"lightness":0.2588,"saturation":0.0606,"hue_group":"neutral"},{"hex":"#ebe6e6","weight":0.2303,"lightness":0.9118,"saturation":0.1111,"hue_group":"neutral"},{"hex":"#6c6464","weight":0.2,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#d4c4c4","weight":0.1273,"lightness":0.8,"saturation":0.1569,"hue_group":"red"},{"hex":"#8c7474","weight":0.1091,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"},{"hex":"#a49494","weight":0.0909,"lightness":0.6118,"saturation":0.0808,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/pale_oak_boat.png","family":"pale_oak_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:milk_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_membrane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_bucket","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:pale_oak_button","name":"Pale Oak Button","entry_type":"block","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added wooden buttons. They are currently uncraftable."},{"version":"12w34b","status":"added","notes":"Added crafting recipe for wooden buttons. Recipe"},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped buttons."}],"colors":{"primary":"#e4dad8","dominant_hex":"#dacaca","average_hex":"#e4dad8","hue_group":"red","lightness":0.8706,"saturation":0.1818,"palette":["#dacaca","#fcecec","#e4e4e4","#fcfcfc","#c4b4b4","#c4bcbc"],"color_groups":[{"hex":"#dacaca","weight":0.2539,"lightness":0.8235,"saturation":0.1778,"hue_group":"red"},{"hex":"#fcecec","weight":0.2031,"lightness":0.9569,"saturation":0.7273,"hue_group":"red"},{"hex":"#e4e4e4","weight":0.1875,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1484,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4b4b4","weight":0.1133,"lightness":0.7373,"saturation":0.1194,"hue_group":"neutral"},{"hex":"#c4bcbc","weight":0.0938,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_planks.png","family":"pale_oak_button","relations":[{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_stairs","label":"Palette proche: Pale Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Palette proche: Pale Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Palette proche: Pale Oak Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_door","label":"Palette proche: Pale Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.933},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_log","label":"Pont de nuance par sous-ton: Stripped Pale Oak Log","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_wood","label":"Pont de nuance par sous-ton: Stripped Pale Oak Wood","confidence":0.9},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par sous-ton: Pearlescent Froglight","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par palette: Pale Oak Planks","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par palette: Pale Oak Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par palette: Pale Oak Sign","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.762},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.76},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.758},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.736},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.736},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.736},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.736},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.73}],"category":"building"},{"id":"minecraft:pale_oak_chest_boat","name":"Pale Oak Chest Boat","entry_type":"item","description":"Boats with chests (including bamboo rafts with chests) are boats with single chests occupying their passenger seats. A boat's chest can be accessed by using the boat while sneaking, or while riding it.","history":[{"version":"1.19.3","status":"added","notes":"Added bamboo rafts with chests behind the \" Update 1.20 \" experimental data pack ."},{"version":"1.19.4","status":"added","notes":"Added cherry boats with chests behind the \" Update 1.20 \" experimental data pack ."},{"version":"1.21.2","status":"added","notes":"Added pale oak boats with chests."}],"colors":{"primary":"#847462","dominant_hex":"#886b40","average_hex":"#847462","hue_group":"yellow","lightness":0.451,"saturation":0.1478,"palette":["#886b40","#ebe6e6","#373127","#54463a","#32200c","#c7b7b7"],"color_groups":[{"hex":"#886b40","weight":0.2931,"lightness":0.3922,"saturation":0.36,"hue_group":"yellow"},{"hex":"#ebe6e6","weight":0.1897,"lightness":0.9118,"saturation":0.1111,"hue_group":"neutral"},{"hex":"#373127","weight":0.1609,"lightness":0.1843,"saturation":0.1702,"hue_group":"yellow"},{"hex":"#54463a","weight":0.1437,"lightness":0.2784,"saturation":0.1831,"hue_group":"red"},{"hex":"#32200c","weight":0.1092,"lightness":0.1216,"saturation":0.6129,"hue_group":"yellow"},{"hex":"#c7b7b7","weight":0.1034,"lightness":0.749,"saturation":0.125,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/pale_oak_chest_boat.png","family":"pale_oak_chest_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:painting","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:command_block_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:pale_oak_door","name":"Pale Oak Door","entry_type":"block","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","history":[{"version":"20100607","status":"added","notes":"Added wooden doors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"18w49a","status":"added","notes":"Added snowy tundra villages, which generate with spruce doors."}],"colors":{"primary":"#d8d0cf","dominant_hex":"#fcecec","average_hex":"#d8d0cf","hue_group":"neutral","lightness":0.8294,"saturation":0.1034,"palette":["#fcecec","#fcfcfc","#dccccc","#e4e4e4","#5c5c5c","#c0b6b6"],"color_groups":[{"hex":"#fcecec","weight":0.2383,"lightness":0.9569,"saturation":0.7273,"hue_group":"red"},{"hex":"#fcfcfc","weight":0.1953,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dccccc","weight":0.1836,"lightness":0.8314,"saturation":0.186,"hue_group":"red"},{"hex":"#e4e4e4","weight":0.1406,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1289,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c0b6b6","weight":0.1133,"lightness":0.7333,"saturation":0.0735,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_door_top.png","family":"pale_oak","relations":[{"type":"variants","target":"minecraft:pale_oak_fence","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_fence","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_leaves","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_leaves","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_log","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_log","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_planks","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_planks","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_sapling","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_sapling","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_slab","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_slab","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_stairs","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_stairs","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_wood","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_wood","label":"Related set: pale_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:white_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobweb","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Palette proche: Pale Oak Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_stairs","label":"Palette proche: Pale Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Palette proche: Pale Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.908},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.871},{"type":"color_bridge","target":"minecraft:pale_oak_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Hanging Sign","confidence":0.874},{"type":"color_bridge","target":"minecraft:pale_oak_wall_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Hanging Sign","confidence":0.874},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_log","label":"Pont de nuance par sous-ton: Stripped Pale Oak Log","confidence":0.874},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_wood","label":"Pont de nuance par sous-ton: Stripped Pale Oak Wood","confidence":0.874},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par sous-ton: Pearlescent Froglight","confidence":0.87},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par palette: Pale Oak Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par palette: Pale Oak Planks","confidence":0.86},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.723},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.721},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.717},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.695},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.695},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.695},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.695},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.694}],"category":"building"},{"id":"minecraft:pale_oak_fence","name":"Pale Oak Fence","entry_type":"block","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","history":[{"version":"20100629","status":"added","notes":"added to the game. There are three defined states: north-south, east-west and a cross. These models are currently unused."},{"version":"v1.0.17","status":"added","notes":"Added fences."},{"version":"1.8","status":"added","notes":"Added villages and strongholds , where wooden fences naturally generate."}],"colors":{"primary":"#e4dad8","dominant_hex":"#dacaca","average_hex":"#e4dad8","hue_group":"red","lightness":0.8706,"saturation":0.1818,"palette":["#dacaca","#fcecec","#e4e4e4","#fcfcfc","#c4b4b4","#c4bcbc"],"color_groups":[{"hex":"#dacaca","weight":0.2539,"lightness":0.8235,"saturation":0.1778,"hue_group":"red"},{"hex":"#fcecec","weight":0.2031,"lightness":0.9569,"saturation":0.7273,"hue_group":"red"},{"hex":"#e4e4e4","weight":0.1875,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1484,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4b4b4","weight":0.1133,"lightness":0.7373,"saturation":0.1194,"hue_group":"neutral"},{"hex":"#c4bcbc","weight":0.0938,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_planks.png","family":"pale_oak","relations":[{"type":"variants","target":"minecraft:pale_oak_door","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_door","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_leaves","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_leaves","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_log","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_log","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_planks","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_planks","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_sapling","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_sapling","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_slab","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_slab","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_stairs","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_stairs","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_wood","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_wood","label":"Related set: pale_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_stairs","label":"Palette proche: Pale Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Palette proche: Pale Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Palette proche: Pale Oak Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_door","label":"Palette proche: Pale Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.933},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_log","label":"Pont de nuance par sous-ton: Stripped Pale Oak Log","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_wood","label":"Pont de nuance par sous-ton: Stripped Pale Oak Wood","confidence":0.9},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par sous-ton: Pearlescent Froglight","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par palette: Pale Oak Planks","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par palette: Pale Oak Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par palette: Pale Oak Sign","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.762},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.76},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.758},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.736},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.736},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.736},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.736},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.73}],"category":"building"},{"id":"minecraft:pale_oak_fence_gate","name":"Pale Oak Fence Gate","entry_type":"block","description":"A fence gate is a block that shares the functions of both the door and the fence.","history":[{"version":"Pre-release","status":"added","notes":"Added fence gates."},{"version":"14w32b","status":"added","notes":"Added spruce, birch, jungle, acacia, and dark oak fence gates."},{"version":"18w49a","status":"added","notes":"added snowy tundra villages."}],"colors":{"primary":"#e4dad8","dominant_hex":"#dacaca","average_hex":"#e4dad8","hue_group":"red","lightness":0.8706,"saturation":0.1818,"palette":["#dacaca","#fcecec","#e4e4e4","#fcfcfc","#c4b4b4","#c4bcbc"],"color_groups":[{"hex":"#dacaca","weight":0.2539,"lightness":0.8235,"saturation":0.1778,"hue_group":"red"},{"hex":"#fcecec","weight":0.2031,"lightness":0.9569,"saturation":0.7273,"hue_group":"red"},{"hex":"#e4e4e4","weight":0.1875,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1484,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4b4b4","weight":0.1133,"lightness":0.7373,"saturation":0.1194,"hue_group":"neutral"},{"hex":"#c4bcbc","weight":0.0938,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_planks.png","family":"pale_oak_fence_gate","relations":[{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_stairs","label":"Palette proche: Pale Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Palette proche: Pale Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Palette proche: Pale Oak Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_door","label":"Palette proche: Pale Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.933},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_log","label":"Pont de nuance par sous-ton: Stripped Pale Oak Log","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_wood","label":"Pont de nuance par sous-ton: Stripped Pale Oak Wood","confidence":0.9},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par sous-ton: Pearlescent Froglight","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par palette: Pale Oak Planks","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par palette: Pale Oak Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par palette: Pale Oak Sign","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.762},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.76},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.758},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.736},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.736},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.736},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.736},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.73}],"category":"building"},{"id":"minecraft:pale_oak_hanging_sign","name":"Pale Oak Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#f6eeed","dominant_hex":"#fcf4f4","average_hex":"#f6eeed","hue_group":"red","lightness":0.9471,"saturation":0.3333,"palette":["#fcf4f4","#fcfcfc","#f4e4e4","#ece4e4","#e4dcdc"],"color_groups":[{"hex":"#fcf4f4","weight":0.3672,"lightness":0.9725,"saturation":0.5714,"hue_group":"red"},{"hex":"#fcfcfc","weight":0.2539,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4e4e4","weight":0.2383,"lightness":0.9255,"saturation":0.4211,"hue_group":"red"},{"hex":"#ece4e4","weight":0.0977,"lightness":0.9098,"saturation":0.1739,"hue_group":"red"},{"hex":"#e4dcdc","weight":0.043,"lightness":0.8784,"saturation":0.129,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_pale_oak_log.png","family":"pale_oak_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_pale_oak_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_pale_oak_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_hanging_sign","label":"Palette proche: Pale Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_pale_oak_log","label":"Palette proche: Stripped Pale Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_pale_oak_wood","label":"Palette proche: Stripped Pale Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pearlescent_froglight","label":"Palette proche: Pearlescent Froglight","confidence":0.927},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.882},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_stairs","label":"Pont de nuance par sous-ton: Pale Oak Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Sign","confidence":0.9},{"type":"color_analogous","target":"minecraft:pale_oak_wall_hanging_sign","label":"Couleurs analogues: Pale Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_pale_oak_log","label":"Couleurs analogues: Stripped Pale Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_pale_oak_wood","label":"Couleurs analogues: Stripped Pale Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.938},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.934},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.93},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.919},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.899},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.887},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.854},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.845},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.837},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.681},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.68},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.666},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.642},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.642},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.617},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.955},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.948},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.912},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.903},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.903},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.897},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.828},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.798},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.795},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.793},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.785},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.785},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.78},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.77}],"category":"building"},{"id":"minecraft:pale_oak_leaves","name":"Pale Oak Leaves","entry_type":"block","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","history":[{"version":"0.0.14a","status":"added","notes":"Added leaves."},{"version":"1.2","status":"added","notes":"Added spruce and birch leaves, which are colored #619961 and #80a755 respectively, and do not vary across biomes."},{"version":"1.7","status":"added","notes":"Added shears , which collect leaves. Before, leaves could be obtained only via inventory editing."}],"colors":{"primary":"#757a73","dominant_hex":"#6c6c64","average_hex":"#757a73","hue_group":"neutral","lightness":0.4647,"saturation":0.0295,"palette":["#6c6c64","#848c84","#a4a49c","#5c5c54","#3c443c"],"color_groups":[{"hex":"#6c6c64","weight":0.25,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#848c84","weight":0.2404,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.2308,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"},{"hex":"#5c5c54","weight":0.1923,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#3c443c","weight":0.0865,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_leaves.png","family":"pale_oak","relations":[{"type":"variants","target":"minecraft:pale_oak_door","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_door","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_fence","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_fence","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_log","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_log","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_planks","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_planks","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_sapling","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_sapling","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_slab","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_slab","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_stairs","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_stairs","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_wood","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_wood","label":"Related set: pale_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:light_gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_instance_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lodestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stonecutter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:light_gray_candle","label":"Palette proche: Light Gray Candle","confidence":0.91},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.904},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.878},{"type":"color_neighbors","target":"minecraft:tuff_slab","label":"Palette proche: Tuff Slab","confidence":0.878},{"type":"color_neighbors","target":"minecraft:tuff_stairs","label":"Palette proche: Tuff Stairs","confidence":0.878},{"type":"color_neighbors","target":"minecraft:tuff_wall","label":"Palette proche: Tuff Wall","confidence":0.878},{"type":"color_neighbors","target":"minecraft:light_gray_carpet","label":"Palette proche: Light Gray Carpet","confidence":0.878},{"type":"color_neighbors","target":"minecraft:light_gray_wool","label":"Palette proche: Light Gray Wool","confidence":0.878},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.869},{"type":"color_neighbors","target":"minecraft:tuff_brick_stairs","label":"Palette proche: Tuff Brick Stairs","confidence":0.869},{"type":"color_neighbors","target":"minecraft:tuff_brick_wall","label":"Palette proche: Tuff Brick Wall","confidence":0.869},{"type":"color_neighbors","target":"minecraft:tuff_bricks","label":"Palette proche: Tuff Bricks","confidence":0.869},{"type":"color_bridge","target":"minecraft:light_gray_candle","label":"Pont de nuance par palette: Light Gray Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_slab","label":"Pont de nuance par palette: Tuff Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_stairs","label":"Pont de nuance par palette: Tuff Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55}],"category":"natural"},{"id":"minecraft:pale_oak_log","name":"Pale Oak Log","entry_type":"block","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","history":[{"version":"0.0.14a","status":"added","notes":"Added wood."},{"version":"1.2","status":"added","notes":"Added spruce and birch wood."},{"version":"wiki-history","status":"added","notes":"Added \"Getting Wood\" achievement for picking up a wood item ."}],"colors":{"primary":"#584e4b","dominant_hex":"#5c5454","average_hex":"#584e4b","hue_group":"neutral","lightness":0.3196,"saturation":0.0798,"palette":["#5c5454","#4c4444","#6c6464","#443c3c","#3c3434","#7c7474"],"color_groups":[{"hex":"#5c5454","weight":0.3945,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#4c4444","weight":0.1719,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#6c6464","weight":0.1719,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#443c3c","weight":0.1328,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.1016,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#7c7474","weight":0.0273,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_log.png","family":"pale_oak","relations":[{"type":"variants","target":"minecraft:pale_oak_door","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_door","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_fence","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_fence","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_leaves","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_leaves","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_planks","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_planks","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_sapling","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_sapling","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_slab","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_slab","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_stairs","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_stairs","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_wood","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_wood","label":"Related set: pale_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:pale_oak_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:structure_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jigsaw","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_core","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:peony","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_wood","label":"Palette proche: Pale Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.94},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:dispenser","label":"Pont de nuance par palette: Dispenser","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.641},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.608},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.59},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.589},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.589},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.587},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.587},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.587}],"category":"natural"},{"id":"minecraft:pale_oak_planks","name":"Pale Oak Planks","entry_type":"block","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","history":[{"version":"rd-20090515","status":"added","notes":"Added wooden planks."},{"version":"1.2.4 release","status":"added","notes":"Added spruce, birch and jungle wood planks. They are crafted from their corresponding wood . The color of wood planks available to this point is now obtainable only from oak wood."},{"version":"18w07a","status":"added","notes":"Added stripped logs, a variant of logs , which can be used to craft wood planks."}],"colors":{"primary":"#e4dad8","dominant_hex":"#dacaca","average_hex":"#e4dad8","hue_group":"red","lightness":0.8706,"saturation":0.1818,"palette":["#dacaca","#fcecec","#e4e4e4","#fcfcfc","#c4b4b4","#c4bcbc"],"color_groups":[{"hex":"#dacaca","weight":0.2539,"lightness":0.8235,"saturation":0.1778,"hue_group":"red"},{"hex":"#fcecec","weight":0.2031,"lightness":0.9569,"saturation":0.7273,"hue_group":"red"},{"hex":"#e4e4e4","weight":0.1875,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1484,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4b4b4","weight":0.1133,"lightness":0.7373,"saturation":0.1194,"hue_group":"neutral"},{"hex":"#c4bcbc","weight":0.0938,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_planks.png","family":"pale_oak","relations":[{"type":"variants","target":"minecraft:pale_oak_door","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_door","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_fence","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_fence","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_leaves","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_leaves","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_log","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_log","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_sapling","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_sapling","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_slab","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_slab","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_stairs","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_stairs","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_wood","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_wood","label":"Related set: pale_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_stairs","label":"Palette proche: Pale Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Palette proche: Pale Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Palette proche: Pale Oak Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_door","label":"Palette proche: Pale Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.933},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_log","label":"Pont de nuance par sous-ton: Stripped Pale Oak Log","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_wood","label":"Pont de nuance par sous-ton: Stripped Pale Oak Wood","confidence":0.9},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par sous-ton: Pearlescent Froglight","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par palette: Pale Oak Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par palette: Pale Oak Sign","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.762},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.76},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.758},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.736},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.736},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.736},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.736},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.73}],"category":"building"},{"id":"minecraft:pale_oak_pressure_plate","name":"Pale Oak Pressure Plate","entry_type":"block","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","history":[{"version":"v1.0.1","status":"added","notes":"Added wooden pressure plates."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped pressure plates."},{"version":"1.19 22w11a","status":"added","notes":"Added mangrove pressure plates."}],"colors":{"primary":"#e4dad8","dominant_hex":"#dacaca","average_hex":"#e4dad8","hue_group":"red","lightness":0.8706,"saturation":0.1818,"palette":["#dacaca","#fcecec","#e4e4e4","#fcfcfc","#c4b4b4","#c4bcbc"],"color_groups":[{"hex":"#dacaca","weight":0.2539,"lightness":0.8235,"saturation":0.1778,"hue_group":"red"},{"hex":"#fcecec","weight":0.2031,"lightness":0.9569,"saturation":0.7273,"hue_group":"red"},{"hex":"#e4e4e4","weight":0.1875,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1484,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4b4b4","weight":0.1133,"lightness":0.7373,"saturation":0.1194,"hue_group":"neutral"},{"hex":"#c4bcbc","weight":0.0938,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_planks.png","family":"pale_oak_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_stairs","label":"Palette proche: Pale Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Palette proche: Pale Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Palette proche: Pale Oak Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_door","label":"Palette proche: Pale Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.933},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_log","label":"Pont de nuance par sous-ton: Stripped Pale Oak Log","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_wood","label":"Pont de nuance par sous-ton: Stripped Pale Oak Wood","confidence":0.9},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par sous-ton: Pearlescent Froglight","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par palette: Pale Oak Planks","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par palette: Pale Oak Sign","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.762},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.76},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.758},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.736},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.736},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.736},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.736},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.73}],"category":"building"},{"id":"minecraft:pale_oak_sapling","name":"Pale Oak Sapling","entry_type":"block","description":"A sapling is a non-solid block that can be grown into a tree.","history":[{"version":"rd-161348","status":"added","notes":"Added saplings as the fifth placeable block in the game."},{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added tree growth."},{"version":"1.5","status":"added","notes":"Added spruce and birch saplings. Before, trees dropped only oak saplings, regardless of the tree."}],"colors":{"primary":"#6e6a64","dominant_hex":"#7c8474","average_hex":"#6e6a64","hue_group":"neutral","lightness":0.4118,"saturation":0.0476,"palette":["#7c8474","#8c9484","#443c3c","#5b5454","#745c5c","#76716c"],"color_groups":[{"hex":"#7c8474","weight":0.2039,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#8c9484","weight":0.1942,"lightness":0.549,"saturation":0.0696,"hue_group":"neutral"},{"hex":"#443c3c","weight":0.165,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#5b5454","weight":0.165,"lightness":0.3431,"saturation":0.04,"hue_group":"neutral"},{"hex":"#745c5c","weight":0.1553,"lightness":0.4078,"saturation":0.1154,"hue_group":"neutral"},{"hex":"#76716c","weight":0.1165,"lightness":0.4431,"saturation":0.0442,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_sapling.png","family":"pale_oak","relations":[{"type":"variants","target":"minecraft:pale_oak_door","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_door","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_fence","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_fence","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_leaves","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_leaves","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_log","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_log","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_planks","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_planks","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_slab","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_slab","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_stairs","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_stairs","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_wood","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_wood","label":"Related set: pale_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Palette proche: Potted Pale Oak Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_moss_block","label":"Palette proche: Pale Moss Block","confidence":0.913},{"type":"color_neighbors","target":"minecraft:pale_moss_carpet","label":"Palette proche: Pale Moss Carpet","confidence":0.913},{"type":"color_neighbors","target":"minecraft:pale_hanging_moss","label":"Palette proche: Pale Hanging Moss","confidence":0.904},{"type":"color_neighbors","target":"minecraft:pale_oak_log","label":"Palette proche: Pale Oak Log","confidence":0.893},{"type":"color_neighbors","target":"minecraft:pale_oak_wood","label":"Palette proche: Pale Oak Wood","confidence":0.893},{"type":"color_neighbors","target":"minecraft:dead_tube_coral","label":"Palette proche: Dead Tube Coral","confidence":0.892},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.885},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.882},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.881},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.876},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.876},{"type":"color_bridge","target":"minecraft:potted_pale_oak_sapling","label":"Pont de nuance par palette: Potted Pale Oak Sapling","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_moss_block","label":"Pont de nuance par palette: Pale Moss Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_moss_carpet","label":"Pont de nuance par palette: Pale Moss Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_hanging_moss","label":"Pont de nuance par palette: Pale Hanging Moss","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral","label":"Pont de nuance par palette: Dead Tube Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_block","label":"Pont de nuance par palette: Dead Tube Coral Block","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.551},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55}],"category":"natural"},{"id":"minecraft:pale_oak_shelf","name":"Pale Oak Shelf","entry_type":"block","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added shelves."},{"version":"wiki-history","status":"added","notes":"Added the align_items_to_bottom block state property, by default set to false, to display items at the bottom of the shelf rather than in the middle."}],"colors":{"primary":"#e4d9d8","dominant_hex":"#d6c6c6","average_hex":"#e4d9d8","hue_group":"red","lightness":0.8706,"saturation":0.1818,"palette":["#d6c6c6","#ede4e4","#e4d5d5","#fcf4f4","#fcfcfc","#bdb2b2"],"color_groups":[{"hex":"#d6c6c6","weight":0.249,"lightness":0.8078,"saturation":0.1633,"hue_group":"red"},{"hex":"#ede4e4","weight":0.1797,"lightness":0.9118,"saturation":0.2,"hue_group":"red"},{"hex":"#e4d5d5","weight":0.1758,"lightness":0.8647,"saturation":0.2174,"hue_group":"red"},{"hex":"#fcf4f4","weight":0.1455,"lightness":0.9725,"saturation":0.5714,"hue_group":"red"},{"hex":"#fcfcfc","weight":0.1387,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bdb2b2","weight":0.1113,"lightness":0.7196,"saturation":0.0769,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_shelf.png","family":"pale_oak_shelf","relations":[{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_hanging_sign","label":"Palette proche: Pale Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_hanging_sign","label":"Palette proche: Pale Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_pale_oak_log","label":"Palette proche: Stripped Pale Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_pale_oak_wood","label":"Palette proche: Stripped Pale Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Palette proche: Pale Oak Trapdoor","confidence":0.937},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.933},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.933},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.933},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.933},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.933},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.933},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.933},{"type":"color_bridge","target":"minecraft:pale_oak_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_log","label":"Pont de nuance par sous-ton: Stripped Pale Oak Log","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_wood","label":"Pont de nuance par sous-ton: Stripped Pale Oak Wood","confidence":0.9},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par sous-ton: Pearlescent Froglight","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par palette: Pale Oak Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par palette: Pale Oak Planks","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.763},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.76},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.758},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.737},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.737},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.737},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.737},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.731}],"category":""},{"id":"minecraft:pale_oak_sign","name":"Pale Oak Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#e4dad8","dominant_hex":"#dacaca","average_hex":"#e4dad8","hue_group":"red","lightness":0.8706,"saturation":0.1818,"palette":["#dacaca","#fcecec","#e4e4e4","#fcfcfc","#c4b4b4","#c4bcbc"],"color_groups":[{"hex":"#dacaca","weight":0.2539,"lightness":0.8235,"saturation":0.1778,"hue_group":"red"},{"hex":"#fcecec","weight":0.2031,"lightness":0.9569,"saturation":0.7273,"hue_group":"red"},{"hex":"#e4e4e4","weight":0.1875,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1484,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4b4b4","weight":0.1133,"lightness":0.7373,"saturation":0.1194,"hue_group":"neutral"},{"hex":"#c4bcbc","weight":0.0938,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_planks.png","family":"pale_oak_sign","relations":[{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_stairs","label":"Palette proche: Pale Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Palette proche: Pale Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Palette proche: Pale Oak Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_door","label":"Palette proche: Pale Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.933},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_log","label":"Pont de nuance par sous-ton: Stripped Pale Oak Log","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_wood","label":"Pont de nuance par sous-ton: Stripped Pale Oak Wood","confidence":0.9},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par sous-ton: Pearlescent Froglight","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par palette: Pale Oak Planks","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par palette: Pale Oak Pressure Plate","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.762},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.76},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.758},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.736},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.736},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.736},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.736},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.73}],"category":"building"},{"id":"minecraft:pale_oak_slab","name":"Pale Oak Slab","entry_type":"block","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","history":[{"version":"1.7.2 1.7","status":"added","notes":"Added acacia and dark oak slabs."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped slabs."}],"colors":{"primary":"#e4dad8","dominant_hex":"#dacaca","average_hex":"#e4dad8","hue_group":"red","lightness":0.8706,"saturation":0.1818,"palette":["#dacaca","#fcecec","#e4e4e4","#fcfcfc","#c4b4b4","#c4bcbc"],"color_groups":[{"hex":"#dacaca","weight":0.2539,"lightness":0.8235,"saturation":0.1778,"hue_group":"red"},{"hex":"#fcecec","weight":0.2031,"lightness":0.9569,"saturation":0.7273,"hue_group":"red"},{"hex":"#e4e4e4","weight":0.1875,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1484,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4b4b4","weight":0.1133,"lightness":0.7373,"saturation":0.1194,"hue_group":"neutral"},{"hex":"#c4bcbc","weight":0.0938,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_planks.png","family":"pale_oak","relations":[{"type":"variants","target":"minecraft:pale_oak_door","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_door","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_fence","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_fence","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_leaves","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_leaves","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_log","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_log","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_planks","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_planks","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_sapling","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_sapling","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_stairs","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_stairs","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_wood","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_wood","label":"Related set: pale_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_stairs","label":"Palette proche: Pale Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Palette proche: Pale Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Palette proche: Pale Oak Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_door","label":"Palette proche: Pale Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.933},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_log","label":"Pont de nuance par sous-ton: Stripped Pale Oak Log","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_wood","label":"Pont de nuance par sous-ton: Stripped Pale Oak Wood","confidence":0.9},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par sous-ton: Pearlescent Froglight","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par palette: Pale Oak Planks","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par palette: Pale Oak Pressure Plate","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.762},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.76},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.758},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.736},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.736},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.736},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.736},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.73}],"category":"building"},{"id":"minecraft:pale_oak_stairs","name":"Pale Oak Stairs","entry_type":"block","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","history":[{"version":"20100629","status":"added","notes":"Added \"wooden\" stairs."},{"version":"1.3.1 12w25a","status":"added","notes":"Added wooden stairs for the remaining three wood types (spruce, birch, and jungle)."},{"version":"12w26a","status":"added","notes":"Added crafting recipes for spruce, birch, and jungle wood stairs."}],"colors":{"primary":"#e4dad8","dominant_hex":"#dacaca","average_hex":"#e4dad8","hue_group":"red","lightness":0.8706,"saturation":0.1818,"palette":["#dacaca","#fcecec","#e4e4e4","#fcfcfc","#c4b4b4","#c4bcbc"],"color_groups":[{"hex":"#dacaca","weight":0.2539,"lightness":0.8235,"saturation":0.1778,"hue_group":"red"},{"hex":"#fcecec","weight":0.2031,"lightness":0.9569,"saturation":0.7273,"hue_group":"red"},{"hex":"#e4e4e4","weight":0.1875,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1484,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4b4b4","weight":0.1133,"lightness":0.7373,"saturation":0.1194,"hue_group":"neutral"},{"hex":"#c4bcbc","weight":0.0938,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_planks.png","family":"pale_oak","relations":[{"type":"variants","target":"minecraft:pale_oak_door","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_door","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_fence","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_fence","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_leaves","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_leaves","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_log","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_log","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_planks","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_planks","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_sapling","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_sapling","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_slab","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_slab","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_wood","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_wood","label":"Related set: pale_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Palette proche: Pale Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Palette proche: Pale Oak Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_door","label":"Palette proche: Pale Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.933},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_log","label":"Pont de nuance par sous-ton: Stripped Pale Oak Log","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_wood","label":"Pont de nuance par sous-ton: Stripped Pale Oak Wood","confidence":0.9},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par sous-ton: Pearlescent Froglight","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par palette: Pale Oak Planks","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par palette: Pale Oak Pressure Plate","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.762},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.76},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.758},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.736},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.736},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.736},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.736},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.73}],"category":"building"},{"id":"minecraft:pale_oak_trapdoor","name":"Pale Oak Trapdoor","entry_type":"block","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","history":[{"version":"1.6","status":"added","notes":"Added wooden trapdoors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped trapdoors."}],"colors":{"primary":"#e6dcdb","dominant_hex":"#fcfcfc","average_hex":"#e6dcdb","hue_group":"red","lightness":0.8804,"saturation":0.1803,"palette":["#fcfcfc","#fcecec","#dccccc","#beb4b4","#e4e4e4","#5c5c5c"],"color_groups":[{"hex":"#fcfcfc","weight":0.2578,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcecec","weight":0.2461,"lightness":0.9569,"saturation":0.7273,"hue_group":"red"},{"hex":"#dccccc","weight":0.2422,"lightness":0.8314,"saturation":0.186,"hue_group":"red"},{"hex":"#beb4b4","weight":0.1562,"lightness":0.7255,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.0742,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0234,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_trapdoor.png","family":"pale_oak_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_door","label":"Palette proche: Pale Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_stairs","label":"Palette proche: Pale Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_sign","label":"Palette proche: Pale Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.937},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.886},{"type":"color_bridge","target":"minecraft:pale_oak_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_log","label":"Pont de nuance par sous-ton: Stripped Pale Oak Log","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_wood","label":"Pont de nuance par sous-ton: Stripped Pale Oak Wood","confidence":0.9},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par sous-ton: Pearlescent Froglight","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_door","label":"Pont de nuance par palette: Pale Oak Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par palette: Pale Oak Planks","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.772},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.77},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.768},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.746},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.746},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.746},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.746},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.74}],"category":"building"},{"id":"minecraft:pale_oak_wall_hanging_sign","name":"Pale Oak Wall Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#f6eeed","dominant_hex":"#fcf4f4","average_hex":"#f6eeed","hue_group":"red","lightness":0.9471,"saturation":0.3333,"palette":["#fcf4f4","#fcfcfc","#f4e4e4","#ece4e4","#e4dcdc"],"color_groups":[{"hex":"#fcf4f4","weight":0.3672,"lightness":0.9725,"saturation":0.5714,"hue_group":"red"},{"hex":"#fcfcfc","weight":0.2539,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4e4e4","weight":0.2383,"lightness":0.9255,"saturation":0.4211,"hue_group":"red"},{"hex":"#ece4e4","weight":0.0977,"lightness":0.9098,"saturation":0.1739,"hue_group":"red"},{"hex":"#e4dcdc","weight":0.043,"lightness":0.8784,"saturation":0.129,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_pale_oak_log.png","family":"pale_oak_wall_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:pale_oak_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_pale_oak_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_pale_oak_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_hanging_sign","label":"Palette proche: Pale Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_pale_oak_log","label":"Palette proche: Stripped Pale Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_pale_oak_wood","label":"Palette proche: Stripped Pale Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pearlescent_froglight","label":"Palette proche: Pearlescent Froglight","confidence":0.927},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.882},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_stairs","label":"Pont de nuance par sous-ton: Pale Oak Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Sign","confidence":0.9},{"type":"color_analogous","target":"minecraft:pale_oak_hanging_sign","label":"Couleurs analogues: Pale Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_pale_oak_log","label":"Couleurs analogues: Stripped Pale Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_pale_oak_wood","label":"Couleurs analogues: Stripped Pale Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.938},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.934},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.93},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.919},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.899},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.887},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.854},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.845},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.837},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.681},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.68},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.666},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.642},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.642},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.617},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.955},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.948},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.912},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.903},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.903},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.897},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.828},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.798},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.795},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.793},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.785},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.785},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.78},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.77}],"category":"building"},{"id":"minecraft:pale_oak_wall_sign","name":"Pale Oak Wall Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#e4dad8","dominant_hex":"#dacaca","average_hex":"#e4dad8","hue_group":"red","lightness":0.8706,"saturation":0.1818,"palette":["#dacaca","#fcecec","#e4e4e4","#fcfcfc","#c4b4b4","#c4bcbc"],"color_groups":[{"hex":"#dacaca","weight":0.2539,"lightness":0.8235,"saturation":0.1778,"hue_group":"red"},{"hex":"#fcecec","weight":0.2031,"lightness":0.9569,"saturation":0.7273,"hue_group":"red"},{"hex":"#e4e4e4","weight":0.1875,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1484,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4b4b4","weight":0.1133,"lightness":0.7373,"saturation":0.1194,"hue_group":"neutral"},{"hex":"#c4bcbc","weight":0.0938,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_planks.png","family":"pale_oak_wall_sign","relations":[{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_stairs","label":"Palette proche: Pale Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Palette proche: Pale Oak Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_door","label":"Palette proche: Pale Oak Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.933},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_hanging_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Hanging Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_log","label":"Pont de nuance par sous-ton: Stripped Pale Oak Log","confidence":0.9},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_wood","label":"Pont de nuance par sous-ton: Stripped Pale Oak Wood","confidence":0.9},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par sous-ton: Pearlescent Froglight","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par palette: Pale Oak Planks","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par palette: Pale Oak Pressure Plate","confidence":0.86},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.762},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.76},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.758},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.736},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.736},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.736},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.736},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.73}],"category":"building"},{"id":"minecraft:pale_oak_wood","name":"Pale Oak Wood","entry_type":"block","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","history":[{"version":"1.3.1 12w30d","status":"added","notes":"Added six-sided wood blocks, which look similar to logs , but have the wood's \"bark\" texture (side texture when placed vertically) on all 6 sides."},{"version":"1.7.2 13w43a","status":"added","notes":"Added two new types of wood: acacia and dark oak."},{"version":"1","status":"added","notes":"Added top textures of the bark blocks."}],"colors":{"primary":"#584e4b","dominant_hex":"#5c5454","average_hex":"#584e4b","hue_group":"neutral","lightness":0.3196,"saturation":0.0798,"palette":["#5c5454","#4c4444","#6c6464","#443c3c","#3c3434","#7c7474"],"color_groups":[{"hex":"#5c5454","weight":0.3945,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#4c4444","weight":0.1719,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#6c6464","weight":0.1719,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#443c3c","weight":0.1328,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.1016,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#7c7474","weight":0.0273,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_log.png","family":"pale_oak","relations":[{"type":"variants","target":"minecraft:pale_oak_door","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_door","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_fence","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_fence","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_leaves","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_leaves","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_log","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_log","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_planks","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_planks","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_sapling","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_sapling","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_slab","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_slab","label":"Related set: pale_oak","confidence":0.8},{"type":"variants","target":"minecraft:pale_oak_stairs","label":"Same family: pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:pale_oak_stairs","label":"Related set: pale_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:pale_oak_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:structure_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jigsaw","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_core","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:peony","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_log","label":"Palette proche: Pale Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.94},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.94},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:dispenser","label":"Pont de nuance par palette: Dispenser","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.641},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.608},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.59},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.589},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.589},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.587},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.587},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.587}],"category":"building"},{"id":"minecraft:panda","name":"Panda","entry_type":"mob","description":"A panda is a rare neutral mob that resides in jungles. Certain aspects of a panda's behavior and appearance vary depending on its personality.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added pandas."},{"version":"wiki-history","status":"added","notes":"Added baby pandas."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby pandas from growing up."}],"colors":{"primary":"#868687","dominant_hex":"#e4e4e4","average_hex":"#868687","hue_group":"neutral","lightness":0.5275,"saturation":0.0041,"palette":["#e4e4e4","#080808","#dcdcd4","#17171f","#acacac","#949494"],"color_groups":[{"hex":"#e4e4e4","weight":0.263,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#080808","weight":0.2154,"lightness":0.0314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcd4","weight":0.1696,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#17171f","weight":0.1481,"lightness":0.1059,"saturation":0.1481,"hue_group":"blue"},{"hex":"#acacac","weight":0.1065,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.0974,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/panda/panda.png","family":"panda","relations":[{"type":"variants","target":"minecraft:panda/aggressive","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/aggressive","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/brown","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/brown","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/lazy","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/lazy","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/playful","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/playful","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/weak","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/weak","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/worried","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/worried","label":"Related set: panda","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:panda/lazy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/playful","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/weak","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/worried","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/aggressive","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/toast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/warm","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:panda/aggressive","name":"Panda / Aggressive","entry_type":"mob","description":"A panda is a rare neutral mob that resides in jungles. Certain aspects of a panda's behavior and appearance vary depending on its personality.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added pandas."},{"version":"wiki-history","status":"added","notes":"Added baby pandas."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby pandas from growing up."}],"colors":{"primary":"#878788","dominant_hex":"#e4e4e4","average_hex":"#878788","hue_group":"neutral","lightness":0.5314,"saturation":0.0042,"palette":["#e4e4e4","#080808","#dcdcd4","#181820","#acacac","#949494"],"color_groups":[{"hex":"#e4e4e4","weight":0.2627,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#080808","weight":0.2154,"lightness":0.0314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcd4","weight":0.1693,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#181820","weight":0.1438,"lightness":0.1098,"saturation":0.1429,"hue_group":"blue"},{"hex":"#acacac","weight":0.1086,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1001,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/panda/aggressive_panda.png","family":"panda","relations":[{"type":"variants","target":"minecraft:panda","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/brown","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/brown","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/lazy","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/lazy","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/playful","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/playful","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/weak","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/weak","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/worried","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/worried","label":"Related set: panda","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:panda","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/lazy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/playful","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/weak","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/worried","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/toast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/warm","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:panda/brown","name":"Panda / Brown","entry_type":"mob","description":"A panda is a rare neutral mob that resides in jungles. Certain aspects of a panda's behavior and appearance vary depending on its personality.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added pandas."},{"version":"wiki-history","status":"added","notes":"Added baby pandas."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby pandas from growing up."}],"colors":{"primary":"#9b9691","dominant_hex":"#e4e4e4","average_hex":"#9b9691","hue_group":"neutral","lightness":0.5882,"saturation":0.0476,"palette":["#e4e4e4","#332b23","#dcdcd4","#664b3b","#acacac","#949494"],"color_groups":[{"hex":"#e4e4e4","weight":0.263,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#332b23","weight":0.216,"lightness":0.1686,"saturation":0.186,"hue_group":"yellow"},{"hex":"#dcdcd4","weight":0.1696,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#664b3b","weight":0.1475,"lightness":0.3157,"saturation":0.2671,"hue_group":"red"},{"hex":"#acacac","weight":0.1065,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.0974,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/panda/brown_panda.png","family":"panda","relations":[{"type":"variants","target":"minecraft:panda","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/aggressive","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/aggressive","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/lazy","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/lazy","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/playful","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/playful","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/weak","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/weak","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/worried","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/worried","label":"Related set: panda","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_charging","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/warm","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/salt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/aggressive","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/lazy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/playful","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/weak","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:panda/lazy","name":"Panda / Lazy","entry_type":"mob","description":"A panda is a rare neutral mob that resides in jungles. Certain aspects of a panda's behavior and appearance vary depending on its personality.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added pandas."},{"version":"wiki-history","status":"added","notes":"Added baby pandas."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby pandas from growing up."}],"colors":{"primary":"#868687","dominant_hex":"#e4e4e4","average_hex":"#868687","hue_group":"neutral","lightness":0.5275,"saturation":0.0041,"palette":["#e4e4e4","#080808","#dcdcd4","#17171f","#acacac","#949494"],"color_groups":[{"hex":"#e4e4e4","weight":0.2624,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#080808","weight":0.2154,"lightness":0.0314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcd4","weight":0.1699,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#17171f","weight":0.1481,"lightness":0.1059,"saturation":0.1481,"hue_group":"blue"},{"hex":"#acacac","weight":0.1065,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.0977,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/panda/lazy_panda.png","family":"panda","relations":[{"type":"variants","target":"minecraft:panda","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/aggressive","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/aggressive","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/brown","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/brown","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/playful","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/playful","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/weak","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/weak","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/worried","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/worried","label":"Related set: panda","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:panda","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/playful","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/weak","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/worried","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/aggressive","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/toast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/warm","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:panda/playful","name":"Panda / Playful","entry_type":"mob","description":"A panda is a rare neutral mob that resides in jungles. Certain aspects of a panda's behavior and appearance vary depending on its personality.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added pandas."},{"version":"wiki-history","status":"added","notes":"Added baby pandas."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby pandas from growing up."}],"colors":{"primary":"#868687","dominant_hex":"#e4e4e4","average_hex":"#868687","hue_group":"neutral","lightness":0.5275,"saturation":0.0041,"palette":["#e4e4e4","#080808","#dcdcd4","#181820","#acacac","#949394"],"color_groups":[{"hex":"#e4e4e4","weight":0.2624,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#080808","weight":0.2154,"lightness":0.0314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcd4","weight":0.1693,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#181820","weight":0.1481,"lightness":0.1098,"saturation":0.1429,"hue_group":"blue"},{"hex":"#acacac","weight":0.1059,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949394","weight":0.0989,"lightness":0.5784,"saturation":0.0047,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/panda/playful_panda.png","family":"panda","relations":[{"type":"variants","target":"minecraft:panda","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/aggressive","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/aggressive","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/brown","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/brown","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/lazy","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/lazy","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/weak","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/weak","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/worried","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/worried","label":"Related set: panda","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:panda","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/lazy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/weak","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/worried","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/aggressive","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/toast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/warm","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:panda/weak","name":"Panda / Weak","entry_type":"mob","description":"A panda is a rare neutral mob that resides in jungles. Certain aspects of a panda's behavior and appearance vary depending on its personality.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added pandas."},{"version":"wiki-history","status":"added","notes":"Added baby pandas."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby pandas from growing up."}],"colors":{"primary":"#868687","dominant_hex":"#e4e4e4","average_hex":"#868687","hue_group":"neutral","lightness":0.5275,"saturation":0.0041,"palette":["#e4e4e4","#080808","#dcdcd4","#181820","#acacac","#939493"],"color_groups":[{"hex":"#e4e4e4","weight":0.263,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#080808","weight":0.2154,"lightness":0.0314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcd4","weight":0.169,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#181820","weight":0.1475,"lightness":0.1098,"saturation":0.1429,"hue_group":"blue"},{"hex":"#acacac","weight":0.1062,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#939493","weight":0.0989,"lightness":0.5784,"saturation":0.0047,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/panda/weak_panda.png","family":"panda","relations":[{"type":"variants","target":"minecraft:panda","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/aggressive","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/aggressive","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/brown","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/brown","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/lazy","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/lazy","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/playful","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/playful","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/worried","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/worried","label":"Related set: panda","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:panda","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/lazy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/playful","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/worried","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/aggressive","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/toast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/warm","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:panda/worried","name":"Panda / Worried","entry_type":"mob","description":"A panda is a rare neutral mob that resides in jungles. Certain aspects of a panda's behavior and appearance vary depending on its personality.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added pandas."},{"version":"wiki-history","status":"added","notes":"Added baby pandas."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby pandas from growing up."}],"colors":{"primary":"#868687","dominant_hex":"#e4e4e4","average_hex":"#868687","hue_group":"neutral","lightness":0.5275,"saturation":0.0041,"palette":["#e4e4e4","#080808","#dcdcd4","#181820","#acacac","#949494"],"color_groups":[{"hex":"#e4e4e4","weight":0.2637,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#080808","weight":0.2154,"lightness":0.0314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcd4","weight":0.1687,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#181820","weight":0.1475,"lightness":0.1098,"saturation":0.1429,"hue_group":"blue"},{"hex":"#acacac","weight":0.1065,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.0983,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/panda/worried_panda.png","family":"panda","relations":[{"type":"variants","target":"minecraft:panda","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/aggressive","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/aggressive","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/brown","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/brown","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/lazy","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/lazy","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/playful","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/playful","label":"Related set: panda","confidence":0.8},{"type":"variants","target":"minecraft:panda/weak","label":"Same family: panda","confidence":0.75},{"type":"related_sets","target":"minecraft:panda/weak","label":"Related set: panda","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:panda","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/lazy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/playful","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/weak","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/aggressive","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/toast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/warm","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:panda_spawn_egg","name":"Panda Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#636366","dominant_hex":"#22222d","average_hex":"#636366","hue_group":"neutral","lightness":0.3941,"saturation":0.0149,"palette":["#22222d","#e6e6e6","#050505","#acacac","#6d6d6d","#141414"],"color_groups":[{"hex":"#22222d","weight":0.2172,"lightness":0.1549,"saturation":0.1392,"hue_group":"blue"},{"hex":"#e6e6e6","weight":0.2071,"lightness":0.902,"saturation":0.0,"hue_group":"neutral"},{"hex":"#050505","weight":0.1919,"lightness":0.0196,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.1768,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6d6d6d","weight":0.1111,"lightness":0.4275,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.096,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/panda_spawn_egg.png","family":"panda_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elytra","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_bundle","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:paper","name":"Paper","entry_type":"item","description":"Paper is an item crafted from sugar cane, required for crafting books, maps, cartography tables, firework rockets and banner patterns.","history":[{"version":"v1.0.11","status":"added","notes":"Added paper, which can be used to craft books ."},{"version":"1.11 16w39a","status":"added","notes":"Added cartographer villagers , which buy paper as their tier 1 trade."}],"colors":{"primary":"#d6d6d2","dominant_hex":"#fcfcf4","average_hex":"#d6d6d2","hue_group":"neutral","lightness":0.8314,"saturation":0.0465,"palette":["#fcfcf4","#848484","#acacac","#d4d4d4","#ececec","#c4c4c4"],"color_groups":[{"hex":"#fcfcf4","weight":0.4286,"lightness":0.9725,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#848484","weight":0.1633,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.1429,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d4d4d4","weight":0.1224,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ececec","weight":0.1224,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.0204,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/paper.png","family":"paper","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:feather","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sugar","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polar_bear_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_tears","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tipped_arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:splash_potion","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:parched","name":"Parched","entry_type":"mob","description":"A parched is a skeleton variant that spawns in deserts. Parched behave similarly to skeletons, but have less health, do not burn in sunlight, fire their bows more slowly, take freeze damage, cannot convert to strays, and shoot tipped arrows of Weakness.","history":[{"version":"1.21.11 25w44a","status":"added","notes":"Added parched."}],"colors":{"primary":"#897d61","dominant_hex":"#716b5a","average_hex":"#897d61","hue_group":"yellow","lightness":0.4588,"saturation":0.1709,"palette":["#716b5a","#4c4b3c","#908366","#b7a26d","#ccb484","#ddc58e"],"color_groups":[{"hex":"#716b5a","weight":0.286,"lightness":0.398,"saturation":0.1133,"hue_group":"neutral"},{"hex":"#4c4b3c","weight":0.222,"lightness":0.2667,"saturation":0.1176,"hue_group":"neutral"},{"hex":"#908366","weight":0.1711,"lightness":0.4824,"saturation":0.1707,"hue_group":"yellow"},{"hex":"#b7a26d","weight":0.1693,"lightness":0.5725,"saturation":0.3394,"hue_group":"yellow"},{"hex":"#ccb484","weight":0.0811,"lightness":0.6588,"saturation":0.4138,"hue_group":"yellow"},{"hex":"#ddc58e","weight":0.0705,"lightness":0.7118,"saturation":0.5374,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/skeleton/parched.png","family":"parched","relations":[{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:parched_spawn_egg","name":"Parched Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#786e57","dominant_hex":"#736d65","average_hex":"#786e57","hue_group":"yellow","lightness":0.4059,"saturation":0.1594,"palette":["#736d65","#494335","#776744","#a8996f","#cfb784","#54544c"],"color_groups":[{"hex":"#736d65","weight":0.2761,"lightness":0.4235,"saturation":0.0648,"hue_group":"neutral"},{"hex":"#494335","weight":0.2463,"lightness":0.2471,"saturation":0.1587,"hue_group":"yellow"},{"hex":"#776744","weight":0.1269,"lightness":0.3667,"saturation":0.2727,"hue_group":"yellow"},{"hex":"#a8996f","weight":0.1269,"lightness":0.5471,"saturation":0.2468,"hue_group":"yellow"},{"hex":"#cfb784","weight":0.1194,"lightness":0.6647,"saturation":0.4386,"hue_group":"yellow"},{"hex":"#54544c","weight":0.1045,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/parched_spawn_egg.png","family":"parched_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:command_block_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:painting","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:parrot/blue","name":"Parrot / Blue","entry_type":"mob","description":"A parrot is a tameable passive mob that spawns in jungle biomes. Parrots imitate sounds of nearby monsters and can perch on the player's shoulders.","history":[{"version":"1.12 17w13a","status":"added","notes":"Added parrots."},{"version":"17w13b","status":"added","notes":"Added gray-yellow parrot."}],"colors":{"primary":"#bdc3e9","dominant_hex":"#fcfbf9","average_hex":"#bdc3e9","hue_group":"blue","lightness":0.8275,"saturation":0.5,"palette":["#fcfbf9","#0c26de","#0e26b0","#0c26cc","#0c1f8f","#1a0f0f"],"color_groups":[{"hex":"#fcfbf9","weight":0.7295,"lightness":0.9824,"saturation":0.3333,"hue_group":"yellow"},{"hex":"#0c26de","weight":0.1287,"lightness":0.4588,"saturation":0.8974,"hue_group":"blue"},{"hex":"#0e26b0","weight":0.0679,"lightness":0.3725,"saturation":0.8526,"hue_group":"blue"},{"hex":"#0c26cc","weight":0.0263,"lightness":0.4235,"saturation":0.8889,"hue_group":"blue"},{"hex":"#0c1f8f","weight":0.0243,"lightness":0.3039,"saturation":0.8452,"hue_group":"blue"},{"hex":"#1a0f0f","weight":0.0233,"lightness":0.0804,"saturation":0.2683,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/parrot/parrot_blue.png","family":"parrot","relations":[{"type":"variants","target":"minecraft:parrot/green","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/green","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/grey","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/grey","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/red_blue","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/red_blue","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/yellow_blue","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/yellow_blue","label":"Related set: parrot","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:axolotl/cyan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_wind","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_invulnerable","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/all_black","label":"Shared hue group: blue","confidence":0.55}],"category":"mob"},{"id":"minecraft:parrot/green","name":"Parrot / Green","entry_type":"mob","description":"A parrot is a tameable passive mob that spawns in jungle biomes. Parrots imitate sounds of nearby monsters and can perch on the player's shoulders.","history":[{"version":"1.12 17w13a","status":"added","notes":"Added parrots."},{"version":"17w13b","status":"added","notes":"Added gray-yellow parrot."}],"colors":{"primary":"#dbe8bb","dominant_hex":"#fcfbfb","average_hex":"#dbe8bb","hue_group":"yellow","lightness":0.8216,"saturation":0.4945,"palette":["#fcfbfb","#8ccc04","#759d04","#89bc04","#97d204","#101010"],"color_groups":[{"hex":"#fcfbfb","weight":0.7366,"lightness":0.9863,"saturation":0.1429,"hue_group":"red"},{"hex":"#8ccc04","weight":0.0983,"lightness":0.4078,"saturation":0.9615,"hue_group":"yellow"},{"hex":"#759d04","weight":0.0902,"lightness":0.3157,"saturation":0.9503,"hue_group":"yellow"},{"hex":"#89bc04","weight":0.0263,"lightness":0.3765,"saturation":0.9583,"hue_group":"yellow"},{"hex":"#97d204","weight":0.0263,"lightness":0.4196,"saturation":0.9626,"hue_group":"yellow"},{"hex":"#101010","weight":0.0223,"lightness":0.0627,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/parrot/parrot_green.png","family":"parrot","relations":[{"type":"variants","target":"minecraft:parrot/blue","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/blue","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/grey","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/grey","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/red_blue","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/red_blue","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/yellow_blue","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/yellow_blue","label":"Related set: parrot","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:spark","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/creamy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/persian","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/ocelot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/calico","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/grey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_golem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:parrot/grey","name":"Parrot / Grey","entry_type":"mob","description":"A parrot is a tameable passive mob that spawns in jungle biomes. Parrots imitate sounds of nearby monsters and can perch on the player's shoulders.","history":[{"version":"1.12 17w13a","status":"added","notes":"Added parrots."},{"version":"17w13b","status":"added","notes":"Added gray-yellow parrot."}],"colors":{"primary":"#e8e7e0","dominant_hex":"#fcfcfc","average_hex":"#e8e7e0","hue_group":"yellow","lightness":0.8941,"saturation":0.1481,"palette":["#fcfcfc","#b5b4b4","#8f8f8f","#9c9c9c","#fce13b","#101010"],"color_groups":[{"hex":"#fcfcfc","weight":0.7416,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b5b4b4","weight":0.1023,"lightness":0.7078,"saturation":0.0067,"hue_group":"neutral"},{"hex":"#8f8f8f","weight":0.0486,"lightness":0.5608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.0446,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fce13b","weight":0.0405,"lightness":0.6098,"saturation":0.9698,"hue_group":"yellow"},{"hex":"#101010","weight":0.0223,"lightness":0.0627,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/parrot/parrot_grey.png","family":"parrot","relations":[{"type":"variants","target":"minecraft:parrot/blue","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/blue","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/green","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/green","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/red_blue","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/red_blue","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/yellow_blue","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/yellow_blue","label":"Related set: parrot","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:goat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/gray","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/siamese","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/calico","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_golem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:parrot/red_blue","name":"Parrot / Red Blue","entry_type":"mob","description":"A parrot is a tameable passive mob that spawns in jungle biomes. Parrots imitate sounds of nearby monsters and can perch on the player's shoulders.","history":[{"version":"1.12 17w13a","status":"added","notes":"Added parrots."},{"version":"17w13b","status":"added","notes":"Added gray-yellow parrot."}],"colors":{"primary":"#edc4c3","dominant_hex":"#fcfbfb","average_hex":"#edc4c3","hue_group":"red","lightness":0.8471,"saturation":0.5385,"palette":["#fcfbfb","#eb0404","#f50505","#0a4a9a","#f3da15","#c70404"],"color_groups":[{"hex":"#fcfbfb","weight":0.7295,"lightness":0.9863,"saturation":0.1429,"hue_group":"red"},{"hex":"#eb0404","weight":0.1114,"lightness":0.4686,"saturation":0.9665,"hue_group":"red"},{"hex":"#f50505","weight":0.0669,"lightness":0.4902,"saturation":0.96,"hue_group":"red"},{"hex":"#0a4a9a","weight":0.0567,"lightness":0.3216,"saturation":0.878,"hue_group":"blue"},{"hex":"#f3da15","weight":0.0294,"lightness":0.5176,"saturation":0.9024,"hue_group":"yellow"},{"hex":"#c70404","weight":0.0061,"lightness":0.398,"saturation":0.9606,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/parrot/parrot_red_blue.png","family":"parrot","relations":[{"type":"variants","target":"minecraft:parrot/blue","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/blue","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/green","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/green","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/grey","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/grey","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/yellow_blue","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/yellow_blue","label":"Related set: parrot","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:happy_ghast_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_pink","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:parrot/yellow_blue","name":"Parrot / Yellow Blue","entry_type":"mob","description":"A parrot is a tameable passive mob that spawns in jungle biomes. Parrots imitate sounds of nearby monsters and can perch on the player's shoulders.","history":[{"version":"1.12 17w13a","status":"added","notes":"Added parrots."},{"version":"17w13b","status":"added","notes":"Added gray-yellow parrot."}],"colors":{"primary":"#cee8e5","dominant_hex":"#fbfbfb","average_hex":"#cee8e5","hue_group":"cyan","lightness":0.8588,"saturation":0.3611,"palette":["#fbfbfb","#1bbff9","#1fa9d2","#fac504","#101010","#0ad34e"],"color_groups":[{"hex":"#fbfbfb","weight":0.7325,"lightness":0.9843,"saturation":0.0,"hue_group":"neutral"},{"hex":"#1bbff9","weight":0.1003,"lightness":0.5412,"saturation":0.9487,"hue_group":"cyan"},{"hex":"#1fa9d2","weight":0.076,"lightness":0.4725,"saturation":0.7427,"hue_group":"cyan"},{"hex":"#fac504","weight":0.0557,"lightness":0.498,"saturation":0.9685,"hue_group":"yellow"},{"hex":"#101010","weight":0.0223,"lightness":0.0627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#0ad34e","weight":0.0132,"lightness":0.4333,"saturation":0.9095,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/parrot/parrot_yellow_blue.png","family":"parrot","relations":[{"type":"variants","target":"minecraft:parrot/blue","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/blue","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/green","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/green","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/grey","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/grey","label":"Related set: parrot","confidence":0.8},{"type":"variants","target":"minecraft:parrot/red_blue","label":"Same family: parrot","confidence":0.75},{"type":"related_sets","target":"minecraft:parrot/red_blue","label":"Related set: parrot","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:snow_golem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allay","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:parrot_spawn_egg","name":"Parrot Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#8e3d3a","dominant_hex":"#88041a","average_hex":"#8e3d3a","hue_group":"red","lightness":0.3922,"saturation":0.42,"palette":["#88041a","#0544be","#dab004","#f63030","#bc0404","#202020"],"color_groups":[{"hex":"#88041a","weight":0.2233,"lightness":0.2745,"saturation":0.9429,"hue_group":"red"},{"hex":"#0544be","weight":0.2136,"lightness":0.3824,"saturation":0.9487,"hue_group":"blue"},{"hex":"#dab004","weight":0.1942,"lightness":0.4353,"saturation":0.964,"hue_group":"yellow"},{"hex":"#f63030","weight":0.1942,"lightness":0.5765,"saturation":0.9167,"hue_group":"red"},{"hex":"#bc0404","weight":0.0971,"lightness":0.3765,"saturation":0.9583,"hue_group":"red"},{"hex":"#202020","weight":0.0777,"lightness":0.1255,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/parrot_spawn_egg.png","family":"parrot_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:orange_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chestplate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:pearlescent_froglight","name":"Pearlescent Froglight","entry_type":"block","description":"A froglight is a light-emitting block that is obtained when a frog eats a tiny magma cube. It comes in three variants based on the variant of frog that eats the magma cube.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added pearlescent, verdant, and ochre froglights."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb all 3 froglights, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#ece1e5","dominant_hex":"#fcf4f4","average_hex":"#ece1e5","hue_group":"red","lightness":0.9039,"saturation":0.2245,"palette":["#fcf4f4","#fcfcfc","#ece4e4","#e4d4d4","#bc9bc0","#d4bccc"],"color_groups":[{"hex":"#fcf4f4","weight":0.2539,"lightness":0.9725,"saturation":0.5714,"hue_group":"red"},{"hex":"#fcfcfc","weight":0.2422,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ece4e4","weight":0.1758,"lightness":0.9098,"saturation":0.1739,"hue_group":"red"},{"hex":"#e4d4d4","weight":0.1211,"lightness":0.8627,"saturation":0.2286,"hue_group":"red"},{"hex":"#bc9bc0","weight":0.1133,"lightness":0.6804,"saturation":0.227,"hue_group":"purple"},{"hex":"#d4bccc","weight":0.0938,"lightness":0.7843,"saturation":0.2182,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pearlescent_froglight_side.png","family":"pearlescent_froglight","relations":[{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.933},{"type":"color_neighbors","target":"minecraft:pale_oak_hanging_sign","label":"Palette proche: Pale Oak Hanging Sign","confidence":0.927},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_hanging_sign","label":"Palette proche: Pale Oak Wall Hanging Sign","confidence":0.927},{"type":"color_neighbors","target":"minecraft:stripped_pale_oak_log","label":"Palette proche: Stripped Pale Oak Log","confidence":0.927},{"type":"color_neighbors","target":"minecraft:stripped_pale_oak_wood","label":"Palette proche: Stripped Pale Oak Wood","confidence":0.927},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.878},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.878},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.878},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.878},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.878},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.878},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.878},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_stairs","label":"Pont de nuance par sous-ton: Pale Oak Stairs","confidence":0.899},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.899},{"type":"color_analogous","target":"minecraft:cherry_leaves","label":"Couleurs analogues: Cherry Leaves","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_concrete_powder","label":"Couleurs analogues: Pink Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_glazed_terracotta","label":"Couleurs analogues: Pink Glazed Terracotta","confidence":0.937},{"type":"color_analogous","target":"minecraft:pink_concrete","label":"Couleurs analogues: Pink Concrete","confidence":0.932},{"type":"color_analogous","target":"minecraft:pink_candle","label":"Couleurs analogues: Pink Candle","confidence":0.922},{"type":"color_analogous","target":"minecraft:pink_stained_glass_pane","label":"Couleurs analogues: Pink Stained Glass Pane","confidence":0.922},{"type":"color_analogous","target":"minecraft:pink_stained_glass","label":"Couleurs analogues: Pink Stained Glass","confidence":0.92},{"type":"color_analogous","target":"minecraft:pink_shulker_box","label":"Couleurs analogues: Pink Shulker Box","confidence":0.917},{"type":"color_complement","target":"minecraft:oxidized_copper_trapdoor","label":"Contraste complementaire: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Contraste complementaire: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper","label":"Contraste complementaire: Oxidized Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_chest","label":"Contraste complementaire: Oxidized Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_golem_statue","label":"Contraste complementaire: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper","label":"Contraste complementaire: Waxed Oxidized Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chest","label":"Contraste complementaire: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Contraste complementaire: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_spruce_sapling","label":"Harmonie triadique: Potted Spruce Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_sapling","label":"Harmonie triadique: Spruce Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.96},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.942},{"type":"color_triad","target":"minecraft:tall_seagrass","label":"Harmonie triadique: Tall Seagrass","confidence":0.941},{"type":"color_triad","target":"minecraft:frosted_ice","label":"Harmonie triadique: Frosted Ice","confidence":0.939},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.951},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.91},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.906},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.906},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.903},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.879},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.879},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.879},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.788},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.758},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.755},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.752},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.752},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.739},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.738},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.737}],"category":""},{"id":"minecraft:peony","name":"Peony","entry_type":"block","description":"A peony is a tall flower that can be crafted into pink dye.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added peonies as a double flower."}],"colors":{"primary":"#57655e","dominant_hex":"#1c3c1c","average_hex":"#57655e","hue_group":"neutral","lightness":0.3686,"saturation":0.0745,"palette":["#1c3c1c","#244424","#e9bdf8","#245c24","#de97f4","#246424"],"color_groups":[{"hex":"#1c3c1c","weight":0.2695,"lightness":0.1725,"saturation":0.3636,"hue_group":"green"},{"hex":"#244424","weight":0.1915,"lightness":0.2039,"saturation":0.3077,"hue_group":"green"},{"hex":"#e9bdf8","weight":0.1702,"lightness":0.8569,"saturation":0.8082,"hue_group":"purple"},{"hex":"#245c24","weight":0.1631,"lightness":0.251,"saturation":0.4375,"hue_group":"green"},{"hex":"#de97f4","weight":0.1064,"lightness":0.7745,"saturation":0.8087,"hue_group":"purple"},{"hex":"#246424","weight":0.0993,"lightness":0.2667,"saturation":0.4706,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/peony_bottom.png","family":"peony","relations":[{"type":"visual_neighbors","target":"minecraft:acacia_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_core","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lantern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pink_tulip","label":"Palette proche: Pink Tulip","confidence":0.646},{"type":"color_neighbors","target":"minecraft:potted_pink_tulip","label":"Palette proche: Potted Pink Tulip","confidence":0.646},{"type":"color_neighbors","target":"minecraft:allium","label":"Palette proche: Allium","confidence":0.638},{"type":"color_neighbors","target":"minecraft:potted_allium","label":"Palette proche: Potted Allium","confidence":0.638},{"type":"color_neighbors","target":"minecraft:carrots","label":"Palette proche: Carrots","confidence":0.589},{"type":"color_neighbors","target":"minecraft:rose_bush","label":"Palette proche: Rose Bush","confidence":0.584},{"type":"color_neighbors","target":"minecraft:potted_spruce_sapling","label":"Palette proche: Potted Spruce Sapling","confidence":0.58},{"type":"color_neighbors","target":"minecraft:spruce_sapling","label":"Palette proche: Spruce Sapling","confidence":0.58},{"type":"color_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Palette proche: Flowering Azalea Leaves","confidence":0.58},{"type":"color_neighbors","target":"minecraft:cornflower","label":"Palette proche: Cornflower","confidence":0.58},{"type":"color_neighbors","target":"minecraft:potted_cornflower","label":"Palette proche: Potted Cornflower","confidence":0.58},{"type":"color_neighbors","target":"minecraft:dried_kelp_block","label":"Palette proche: Dried Kelp Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:pink_tulip","label":"Pont de nuance par sous-ton: Pink Tulip","confidence":0.709},{"type":"color_bridge","target":"minecraft:potted_pink_tulip","label":"Pont de nuance par sous-ton: Potted Pink Tulip","confidence":0.709},{"type":"color_bridge","target":"minecraft:allium","label":"Pont de nuance par sous-ton: Allium","confidence":0.702},{"type":"color_bridge","target":"minecraft:potted_allium","label":"Pont de nuance par sous-ton: Potted Allium","confidence":0.702},{"type":"color_bridge","target":"minecraft:carrots","label":"Pont de nuance par sous-ton: Carrots","confidence":0.661},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.657},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par sous-ton: Potted Spruce Sapling","confidence":0.636},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par sous-ton: Spruce Sapling","confidence":0.636},{"type":"color_bridge","target":"minecraft:flowering_azalea_leaves","label":"Pont de nuance par palette: Flowering Azalea Leaves","confidence":0.631},{"type":"color_bridge","target":"minecraft:cornflower","label":"Pont de nuance par palette: Cornflower","confidence":0.626},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.574},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.564},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.563},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.563},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55}],"category":""},{"id":"minecraft:petrified_oak_slab","name":"Petrified Oak Slab","entry_type":"block","description":"A petrified oak slab, known generically as a wooden slab in Bedrock Edition, is a unique type of slab available through commands or by upgrading from legacy versions. Unlike all other slabs, they are unobtainable in vanilla Survival gameplay.","history":[{"version":"1.3","status":"added","notes":"Added petrified oak slabs."},{"version":"1.3.1 12w17a","status":"added","notes":"added for wooden slabs, to account for the addition of slabs with new wood types. This new ID also has the characteristics of normal wood blocks. As of this version, the petrified oak slab, still called \"Wooden Slab\", is"}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"petrified_oak","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:phantom","name":"Phantom","entry_type":"mob","description":"Phantoms are flying undead hostile mobs that spawn in the night sky when the player has not lain in a bed or died for three or more in-game days. They attack by diving at the player from the sky to bite them.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added phantoms with a placeholder drop of 1-4 leather ."}],"colors":{"primary":"#545362","dominant_hex":"#a08a81","average_hex":"#545362","hue_group":"neutral","lightness":0.3549,"saturation":0.0829,"palette":["#a08a81","#324352","#282a48","#040404","#4b5b97","#344474"],"color_groups":[{"hex":"#a08a81","weight":0.3507,"lightness":0.5667,"saturation":0.1403,"hue_group":"red"},{"hex":"#324352","weight":0.1574,"lightness":0.2588,"saturation":0.2424,"hue_group":"cyan"},{"hex":"#282a48","weight":0.1319,"lightness":0.2196,"saturation":0.2857,"hue_group":"blue"},{"hex":"#040404","weight":0.1296,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4b5b97","weight":0.1204,"lightness":0.4431,"saturation":0.3363,"hue_group":"blue"},{"hex":"#344474","weight":0.11,"lightness":0.3294,"saturation":0.381,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/phantom.png","family":"phantom","relations":[{"type":"visual_neighbors","target":"minecraft:evoker_fangs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken/cold","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:phantom_membrane","name":"Phantom Membrane","entry_type":"item","description":"Phantom membranes are items obtained from killing phantoms. They are used to repair elytra and brew potions of Slow Falling.","history":[{"version":"1.13 18w14a","status":"added","notes":"Added phantom membranes."}],"colors":{"primary":"#a1928c","dominant_hex":"#826a76","average_hex":"#a1928c","hue_group":"neutral","lightness":0.5902,"saturation":0.1005,"palette":["#826a76","#dcdcc4","#8f817c","#c4bca4","#6c546c","#a99984"],"color_groups":[{"hex":"#826a76","weight":0.2245,"lightness":0.4627,"saturation":0.1017,"hue_group":"neutral"},{"hex":"#dcdcc4","weight":0.1973,"lightness":0.8157,"saturation":0.2553,"hue_group":"yellow"},{"hex":"#8f817c","weight":0.1905,"lightness":0.5235,"saturation":0.0782,"hue_group":"neutral"},{"hex":"#c4bca4","weight":0.1633,"lightness":0.7059,"saturation":0.2133,"hue_group":"yellow"},{"hex":"#6c546c","weight":0.1429,"lightness":0.3765,"saturation":0.125,"hue_group":"purple"},{"hex":"#a99984","weight":0.0816,"lightness":0.5902,"saturation":0.177,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/phantom_membrane.png","family":"phantom_membrane","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:powder_snow_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:splash_potion","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_star","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trident","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_boat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clay_ball","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_bucket","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:phantom_spawn_egg","name":"Phantom Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#616370","dominant_hex":"#475791","average_hex":"#616370","hue_group":"neutral","lightness":0.4098,"saturation":0.0718,"palette":["#475791","#8d8375","#2c3a53","#d1ccb4","#1a2238","#554542"],"color_groups":[{"hex":"#475791","weight":0.2313,"lightness":0.4235,"saturation":0.3426,"hue_group":"blue"},{"hex":"#8d8375","weight":0.1866,"lightness":0.5059,"saturation":0.0952,"hue_group":"neutral"},{"hex":"#2c3a53","weight":0.1716,"lightness":0.249,"saturation":0.3071,"hue_group":"blue"},{"hex":"#d1ccb4","weight":0.1567,"lightness":0.7627,"saturation":0.2397,"hue_group":"yellow"},{"hex":"#1a2238","weight":0.1269,"lightness":0.1608,"saturation":0.3659,"hue_group":"blue"},{"hex":"#554542","weight":0.1269,"lightness":0.2961,"saturation":0.1258,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/phantom_spawn_egg.png","family":"phantom_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:coast_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stray_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wild_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elytra","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:pig/cold","name":"Pig / Cold","entry_type":"mob","description":"A pig is a passive mob found commonly in most grassy biomes. Adult pigs are a source of porkchops and can be ridden using a saddle and a carrot on a stick. They have three variants based on the temperature of the biome they spawn in.","history":[{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added pigs. The eyes on their texture have been slightly changed."},{"version":"20100625-1917","status":"added","notes":"added along with the ability to ride pigs. However, they currently cannot be controlled."},{"version":"v1.0.17","status":"added","notes":"added to multiplayer ."}],"colors":{"primary":"#c79b78","dominant_hex":"#bc8c6c","average_hex":"#c79b78","hue_group":"red","lightness":0.6255,"saturation":0.4136,"palette":["#bc8c6c","#dcbc84","#946853","#e4cc94","#d4a47c","#ecddbd"],"color_groups":[{"hex":"#bc8c6c","weight":0.4251,"lightness":0.5804,"saturation":0.3738,"hue_group":"red"},{"hex":"#dcbc84","weight":0.1561,"lightness":0.6902,"saturation":0.557,"hue_group":"yellow"},{"hex":"#946853","weight":0.1504,"lightness":0.4529,"saturation":0.2814,"hue_group":"red"},{"hex":"#e4cc94","weight":0.1301,"lightness":0.7373,"saturation":0.597,"hue_group":"yellow"},{"hex":"#d4a47c","weight":0.0911,"lightness":0.6588,"saturation":0.5057,"hue_group":"red"},{"hex":"#ecddbd","weight":0.0473,"lightness":0.8333,"saturation":0.5529,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/pig/cold_pig.png","family":"pig","relations":[{"type":"variants","target":"minecraft:pig/temperate","label":"Same family: pig","confidence":0.75},{"type":"related_sets","target":"minecraft:pig/temperate","label":"Related set: pig","confidence":0.8},{"type":"variants","target":"minecraft:pig/warm","label":"Same family: pig","confidence":0.75},{"type":"related_sets","target":"minecraft:pig/warm","label":"Related set: pig","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:nautilus_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_pink","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:pig/temperate","name":"Pig / Temperate","entry_type":"mob","description":"A pig is a passive mob found commonly in most grassy biomes. Adult pigs are a source of porkchops and can be ridden using a saddle and a carrot on a stick. They have three variants based on the temperature of the biome they spawn in.","history":[{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added pigs. The eyes on their texture have been slightly changed."},{"version":"20100625-1917","status":"added","notes":"added along with the ability to ride pigs. However, they currently cannot be controlled."},{"version":"v1.0.17","status":"added","notes":"added to multiplayer ."}],"colors":{"primary":"#e38580","dominant_hex":"#f1a0a0","average_hex":"#e38580","hue_group":"red","lightness":0.6961,"saturation":0.6387,"palette":["#f1a0a0","#e4948c","#e47c74","#bc5f58","#e48484","#e46c6c"],"color_groups":[{"hex":"#f1a0a0","weight":0.2786,"lightness":0.7863,"saturation":0.7431,"hue_group":"red"},{"hex":"#e4948c","weight":0.1907,"lightness":0.7216,"saturation":0.6197,"hue_group":"red"},{"hex":"#e47c74","weight":0.1586,"lightness":0.6745,"saturation":0.6747,"hue_group":"red"},{"hex":"#bc5f58","weight":0.1405,"lightness":0.5412,"saturation":0.4274,"hue_group":"red"},{"hex":"#e48484","weight":0.1256,"lightness":0.7059,"saturation":0.64,"hue_group":"red"},{"hex":"#e46c6c","weight":0.106,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/pig/temperate_pig.png","family":"pig","relations":[{"type":"variants","target":"minecraft:pig/cold","label":"Same family: pig","confidence":0.75},{"type":"related_sets","target":"minecraft:pig/cold","label":"Related set: pig","confidence":0.8},{"type":"variants","target":"minecraft:pig/warm","label":"Same family: pig","confidence":0.75},{"type":"related_sets","target":"minecraft:pig/warm","label":"Related set: pig","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:chicken/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_pink","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/red_blue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:pig/warm","name":"Pig / Warm","entry_type":"mob","description":"A pig is a passive mob found commonly in most grassy biomes. Adult pigs are a source of porkchops and can be ridden using a saddle and a carrot on a stick. They have three variants based on the temperature of the biome they spawn in.","history":[{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added pigs. The eyes on their texture have been slightly changed."},{"version":"20100625-1917","status":"added","notes":"added along with the ability to ride pigs. However, they currently cannot be controlled."},{"version":"v1.0.17","status":"added","notes":"added to multiplayer ."}],"colors":{"primary":"#af5d33","dominant_hex":"#7e3826","average_hex":"#af5d33","hue_group":"red","lightness":0.4431,"saturation":0.5487,"palette":["#7e3826","#cc743c","#d7894a","#b45c34","#a44c2c","#bc642c"],"color_groups":[{"hex":"#7e3826","weight":0.2896,"lightness":0.3216,"saturation":0.5366,"hue_group":"red"},{"hex":"#cc743c","weight":0.1931,"lightness":0.5176,"saturation":0.5854,"hue_group":"red"},{"hex":"#d7894a","weight":0.1845,"lightness":0.5667,"saturation":0.638,"hue_group":"red"},{"hex":"#b45c34","weight":0.1201,"lightness":0.4549,"saturation":0.5517,"hue_group":"red"},{"hex":"#a44c2c","weight":0.1083,"lightness":0.4078,"saturation":0.5769,"hue_group":"red"},{"hex":"#bc642c","weight":0.1044,"lightness":0.4549,"saturation":0.6207,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/pig/warm_pig.png","family":"pig","relations":[{"type":"variants","target":"minecraft:pig/cold","label":"Same family: pig","confidence":0.75},{"type":"related_sets","target":"minecraft:pig/cold","label":"Related set: pig","confidence":0.8},{"type":"variants","target":"minecraft:pig/temperate","label":"Same family: pig","confidence":0.75},{"type":"related_sets","target":"minecraft:pig/temperate","label":"Related set: pig","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/chestnut","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:pig_spawn_egg","name":"Pig Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#d27370","dominant_hex":"#e4746c","average_hex":"#d27370","hue_group":"red","lightness":0.6314,"saturation":0.5213,"palette":["#e4746c","#f6a4a2","#a44c4c","#944444","#ec8c84","#c4645c"],"color_groups":[{"hex":"#e4746c","weight":0.2612,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#f6a4a2","weight":0.2463,"lightness":0.8,"saturation":0.8235,"hue_group":"red"},{"hex":"#a44c4c","weight":0.1642,"lightness":0.4706,"saturation":0.3667,"hue_group":"red"},{"hex":"#944444","weight":0.1343,"lightness":0.4235,"saturation":0.3704,"hue_group":"red"},{"hex":"#ec8c84","weight":0.1194,"lightness":0.7216,"saturation":0.7324,"hue_group":"red"},{"hex":"#c4645c","weight":0.0746,"lightness":0.5647,"saturation":0.4685,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/pig_spawn_egg.png","family":"pig_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:porkchop","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glistering_melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beef","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:piglin","name":"Piglin","entry_type":"mob","description":"A piglin is a neutral mob found in the Nether. It is hostile to players unless they wear at least one piece of golden armor. It can be given gold ingots to barter for various items. It wields either a golden sword, golden spear, or crossbow and uses either melee, spear charge, or ranged attacks, respectively. Baby piglins do not grow up, are passive, and take gold without giving anything in return.","history":[{"version":"1.16 20w07a","status":"added","notes":"Added piglins and baby piglins."},{"version":"20w11a","status":"added","notes":"added to the items that can be bartered from piglins."},{"version":"21w14a","status":"added","notes":"Added raw gold , which piglins attempt to pick up."}],"colors":{"primary":"#a76a4c","dominant_hex":"#7c4228","average_hex":"#a76a4c","hue_group":"red","lightness":0.4765,"saturation":0.3745,"palette":["#7c4228","#eeb07b","#b15e3d","#40271d","#d4947c","#cc8464"],"color_groups":[{"hex":"#7c4228","weight":0.2138,"lightness":0.3216,"saturation":0.5122,"hue_group":"red"},{"hex":"#eeb07b","weight":0.1952,"lightness":0.7078,"saturation":0.7718,"hue_group":"red"},{"hex":"#b15e3d","weight":0.1883,"lightness":0.4667,"saturation":0.4874,"hue_group":"red"},{"hex":"#40271d","weight":0.1516,"lightness":0.1824,"saturation":0.3763,"hue_group":"red"},{"hex":"#d4947c","weight":0.15,"lightness":0.6588,"saturation":0.5057,"hue_group":"red"},{"hex":"#cc8464","weight":0.1011,"lightness":0.5961,"saturation":0.5049,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/piglin/piglin.png","family":"piglin","relations":[{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:piglin_banner_pattern","name":"Piglin Banner Pattern","entry_type":"item","description":"A snout banner pattern is a banner pattern used to customize banners with a shape of a piglin snout. It can only be found in bastion remnants and cannot be crafted.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added piglin banner patterns."},{"version":"1.21.2 24w33a","status":"added","notes":"Added a unique item icon texture for snout banner patterns."}],"colors":{"primary":"#b6ac9b","dominant_hex":"#ececec","average_hex":"#b6ac9b","hue_group":"yellow","lightness":0.6608,"saturation":0.1561,"palette":["#ececec","#847454","#b2a48a","#65473c","#dcd4bc","#948c6c"],"color_groups":[{"hex":"#ececec","weight":0.3354,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#847454","weight":0.1646,"lightness":0.4235,"saturation":0.2222,"hue_group":"yellow"},{"hex":"#b2a48a","weight":0.1524,"lightness":0.6196,"saturation":0.2062,"hue_group":"yellow"},{"hex":"#65473c","weight":0.1463,"lightness":0.3157,"saturation":0.2547,"hue_group":"red"},{"hex":"#dcd4bc","weight":0.1402,"lightness":0.8,"saturation":0.3137,"hue_group":"yellow"},{"hex":"#948c6c","weight":0.061,"lightness":0.502,"saturation":0.1575,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/piglin_banner_pattern.png","family":"piglin_banner_pattern","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:bordure_indented_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:field_masoned_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mojang_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:piglin_brute","name":"Piglin Brute","entry_type":"mob","description":"A piglin brute is a hostile and stronger variant of the piglin. It wields a golden axe and appears in all types of bastion remnants. Unlike piglins, piglin brutes do not barter, retreat, or get distracted by gold.","history":[{"version":"1.16.2 20w27a","status":"added","notes":"Added piglin brutes."}],"colors":{"primary":"#905f41","dominant_hex":"#272323","average_hex":"#905f41","hue_group":"red","lightness":0.4098,"saturation":0.378,"palette":["#272323","#62371a","#efb475","#c9794c","#9a4f32","#d4947c"],"color_groups":[{"hex":"#272323","weight":0.2161,"lightness":0.1451,"saturation":0.0541,"hue_group":"neutral"},{"hex":"#62371a","weight":0.2098,"lightness":0.2431,"saturation":0.5806,"hue_group":"red"},{"hex":"#efb475","weight":0.171,"lightness":0.698,"saturation":0.7922,"hue_group":"yellow"},{"hex":"#c9794c","weight":0.1554,"lightness":0.5431,"saturation":0.5365,"hue_group":"red"},{"hex":"#9a4f32","weight":0.1375,"lightness":0.4,"saturation":0.5098,"hue_group":"red"},{"hex":"#d4947c","weight":0.1103,"lightness":0.6588,"saturation":0.5057,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/piglin/piglin_brute.png","family":"piglin_brute","relations":[{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:piglin_brute_spawn_egg","name":"Piglin Brute Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#a26b4a","dominant_hex":"#622e1d","average_hex":"#a26b4a","hue_group":"red","lightness":0.4627,"saturation":0.3729,"palette":["#622e1d","#956040","#efbe7c","#b67854","#d4947c","#ce855a"],"color_groups":[{"hex":"#622e1d","weight":0.3269,"lightness":0.249,"saturation":0.5433,"hue_group":"red"},{"hex":"#956040","weight":0.1795,"lightness":0.4176,"saturation":0.3991,"hue_group":"red"},{"hex":"#efbe7c","weight":0.1603,"lightness":0.7118,"saturation":0.7823,"hue_group":"yellow"},{"hex":"#b67854","weight":0.1282,"lightness":0.5216,"saturation":0.4016,"hue_group":"red"},{"hex":"#d4947c","weight":0.109,"lightness":0.6588,"saturation":0.5057,"hue_group":"red"},{"hex":"#ce855a","weight":0.0962,"lightness":0.5804,"saturation":0.5421,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/piglin_brute_spawn_egg.png","family":"piglin_brute_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bolt_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_sword","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:piglin_head","name":"Piglin Head","entry_type":"block","description":"A piglin head is the head of a piglin in the form of a block. It can only be obtained by killing a piglin using a charged creeper's explosion.","history":[{"version":"1.19.3","status":"added","notes":"Added piglin heads behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"piglin_head","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Palette proche: Wither Skeleton Wall Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:skeleton_skull","label":"Couleurs analogues: Skeleton Skull","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":"decorative"},{"id":"minecraft:piglin_spawn_egg","name":"Piglin Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#a46c4b","dominant_hex":"#6d331d","average_hex":"#a46c4b","hue_group":"red","lightness":0.4686,"saturation":0.3724,"palette":["#6d331d","#926446","#eebd7f","#d4947c","#b67a56","#cd855e"],"color_groups":[{"hex":"#6d331d","weight":0.3462,"lightness":0.2706,"saturation":0.5797,"hue_group":"red"},{"hex":"#926446","weight":0.1603,"lightness":0.4235,"saturation":0.3519,"hue_group":"red"},{"hex":"#eebd7f","weight":0.1538,"lightness":0.7157,"saturation":0.7655,"hue_group":"yellow"},{"hex":"#d4947c","weight":0.1346,"lightness":0.6588,"saturation":0.5057,"hue_group":"red"},{"hex":"#b67a56","weight":0.1282,"lightness":0.5255,"saturation":0.3967,"hue_group":"red"},{"hex":"#cd855e","weight":0.0769,"lightness":0.5863,"saturation":0.5261,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/piglin_spawn_egg.png","family":"piglin_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:piglin_brute_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bolt_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_horse_armor","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:piglin_wall_head","name":"Piglin Wall Head","entry_type":"block","description":"A piglin head is the head of a piglin in the form of a block. It can only be obtained by killing a piglin using a charged creeper's explosion.","history":[{"version":"1.19.3","status":"added","notes":"Added piglin heads behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"piglin_wall_head","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Palette proche: Wither Skeleton Wall Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:skeleton_skull","label":"Couleurs analogues: Skeleton Skull","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":"decorative"},{"id":"minecraft:pillager","name":"Pillager","entry_type":"mob","description":"A pillager is an illager armed with a crossbow found in wandering patrols, in pillager outposts, or as a participant in raids. It attacks by firing arrows at the player.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added pillagers."}],"colors":{"primary":"#524948","dominant_hex":"#43231d","average_hex":"#524948","hue_group":"neutral","lightness":0.302,"saturation":0.0649,"palette":["#43231d","#919999","#252f2f","#261413","#686e6e","#1d1d1d"],"color_groups":[{"hex":"#43231d","weight":0.2983,"lightness":0.1882,"saturation":0.3958,"hue_group":"red"},{"hex":"#919999","weight":0.2767,"lightness":0.5843,"saturation":0.0377,"hue_group":"neutral"},{"hex":"#252f2f","weight":0.1501,"lightness":0.1647,"saturation":0.119,"hue_group":"neutral"},{"hex":"#261413","weight":0.1075,"lightness":0.1118,"saturation":0.3333,"hue_group":"red"},{"hex":"#686e6e","weight":0.0897,"lightness":0.4196,"saturation":0.028,"hue_group":"neutral"},{"hex":"#1d1d1d","weight":0.0776,"lightness":0.1137,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/illager/pillager.png","family":"pillager","relations":[{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_fangs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:pillager_spawn_egg","name":"Pillager Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#585b5b","dominant_hex":"#444948","average_hex":"#585b5b","hue_group":"neutral","lightness":0.351,"saturation":0.0168,"palette":["#444948","#281d1d","#717e7e","#94a09e","#b1b9b9","#5c5c5c"],"color_groups":[{"hex":"#444948","weight":0.3806,"lightness":0.2765,"saturation":0.0355,"hue_group":"neutral"},{"hex":"#281d1d","weight":0.2164,"lightness":0.1353,"saturation":0.1594,"hue_group":"red"},{"hex":"#717e7e","weight":0.1418,"lightness":0.4686,"saturation":0.0544,"hue_group":"neutral"},{"hex":"#94a09e","weight":0.1343,"lightness":0.6039,"saturation":0.0594,"hue_group":"neutral"},{"hex":"#b1b9b9","weight":0.0746,"lightness":0.7098,"saturation":0.0541,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0522,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/pillager_spawn_egg.png","family":"pillager_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:firework_star","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:furnace_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gunpowder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:pink_banner","name":"Pink Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"pink_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:pink_bed","name":"Pink Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"pink_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:pink_bundle","name":"Pink Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#d77a94","dominant_hex":"#d66d8c","average_hex":"#d77a94","hue_group":"red","lightness":0.6608,"saturation":0.5376,"palette":["#d66d8c","#8f4350","#fba5ba","#fcc4d4","#f47ca4","#bc4474"],"color_groups":[{"hex":"#d66d8c","weight":0.2366,"lightness":0.6333,"saturation":0.5615,"hue_group":"red"},{"hex":"#8f4350","weight":0.1832,"lightness":0.4118,"saturation":0.3619,"hue_group":"red"},{"hex":"#fba5ba","weight":0.1679,"lightness":0.8157,"saturation":0.9149,"hue_group":"red"},{"hex":"#fcc4d4","weight":0.1527,"lightness":0.8784,"saturation":0.9032,"hue_group":"red"},{"hex":"#f47ca4","weight":0.1374,"lightness":0.7216,"saturation":0.8451,"hue_group":"red"},{"hex":"#bc4474","weight":0.1221,"lightness":0.502,"saturation":0.4724,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/pink_bundle.png","family":"pink_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:pig_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:porkchop","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glistering_melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:pink_candle","name":"Pink Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#d0668e","dominant_hex":"#c45c84","average_hex":"#d0668e","hue_group":"red","lightness":0.6078,"saturation":0.53,"palette":["#c45c84","#dc6494","#f48cac","#242434","#f49cb4"],"color_groups":[{"hex":"#c45c84","weight":0.4286,"lightness":0.5647,"saturation":0.4685,"hue_group":"red"},{"hex":"#dc6494","weight":0.2857,"lightness":0.6275,"saturation":0.6316,"hue_group":"red"},{"hex":"#f48cac","weight":0.1905,"lightness":0.7529,"saturation":0.8254,"hue_group":"red"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#f49cb4","weight":0.0476,"lightness":0.7843,"saturation":0.8,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pink_candle.png","family":"pink_candle","relations":[{"type":"visual_neighbors","target":"minecraft:pink_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cactus_flower","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_carpet","label":"Palette proche: Pink Carpet","confidence":0.874},{"type":"color_neighbors","target":"minecraft:pink_wool","label":"Palette proche: Pink Wool","confidence":0.874},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.87},{"type":"color_neighbors","target":"minecraft:pink_concrete","label":"Palette proche: Pink Concrete","confidence":0.84},{"type":"color_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Palette proche: Pink Stained Glass Pane","confidence":0.826},{"type":"color_neighbors","target":"minecraft:pink_concrete_powder","label":"Palette proche: Pink Concrete Powder","confidence":0.801},{"type":"color_neighbors","target":"minecraft:spore_blossom","label":"Palette proche: Spore Blossom","confidence":0.797},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.794},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.774},{"type":"color_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Palette proche: Brain Coral Wall Fan","confidence":0.774},{"type":"color_neighbors","target":"minecraft:pink_stained_glass","label":"Palette proche: Pink Stained Glass","confidence":0.774},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.732},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.732},{"type":"color_bridge","target":"minecraft:copper_grate","label":"Pont de nuance par palette: Copper Grate","confidence":0.627},{"type":"color_bridge","target":"minecraft:waxed_copper_grate","label":"Pont de nuance par palette: Waxed Copper Grate","confidence":0.627},{"type":"color_bridge","target":"minecraft:structure_block","label":"Pont de nuance par sous-ton: Structure Block","confidence":0.614},{"type":"color_bridge","target":"minecraft:dried_ghast","label":"Pont de nuance par palette: Dried Ghast","confidence":0.609},{"type":"color_bridge","target":"minecraft:closed_eyeblossom","label":"Pont de nuance par palette: Closed Eyeblossom","confidence":0.604},{"type":"color_bridge","target":"minecraft:potted_closed_eyeblossom","label":"Pont de nuance par palette: Potted Closed Eyeblossom","confidence":0.604},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.602},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.599},{"type":"color_analogous","target":"minecraft:pink_concrete","label":"Couleurs analogues: Pink Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_concrete_powder","label":"Couleurs analogues: Pink Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_leaves","label":"Couleurs analogues: Cherry Leaves","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_stained_glass_pane","label":"Couleurs analogues: Pink Stained Glass Pane","confidence":0.927},{"type":"color_analogous","target":"minecraft:pink_shulker_box","label":"Couleurs analogues: Pink Shulker Box","confidence":0.925},{"type":"color_analogous","target":"minecraft:pearlescent_froglight","label":"Couleurs analogues: Pearlescent Froglight","confidence":0.922},{"type":"color_analogous","target":"minecraft:magenta_terracotta","label":"Couleurs analogues: Magenta Terracotta","confidence":0.92},{"type":"color_analogous","target":"minecraft:crimson_shelf","label":"Couleurs analogues: Crimson Shelf","confidence":0.916},{"type":"color_complement","target":"minecraft:oxidized_copper","label":"Contraste complementaire: Oxidized Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_chest","label":"Contraste complementaire: Oxidized Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_golem_statue","label":"Contraste complementaire: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper","label":"Contraste complementaire: Waxed Oxidized Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chest","label":"Contraste complementaire: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Contraste complementaire: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.96},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.96},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.935},{"type":"color_triad","target":"minecraft:tall_seagrass","label":"Harmonie triadique: Tall Seagrass","confidence":0.934},{"type":"color_triad","target":"minecraft:frosted_ice","label":"Harmonie triadique: Frosted Ice","confidence":0.932},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.921},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.921},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.91},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.933},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.933},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.933},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.933},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.922},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.912},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.864},{"type":"value_contrast","target":"minecraft:crimson_hyphae","label":"Contraste clair sombre: Crimson Hyphae","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_stem","label":"Contraste clair sombre: Crimson Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_glazed_terracotta","label":"Contraste clair sombre: Black Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_log","label":"Contraste clair sombre: Cherry Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_wood","label":"Contraste clair sombre: Cherry Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_nether_bricks","label":"Contraste clair sombre: Chiseled Nether Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:nether_brick_fence","label":"Contraste clair sombre: Nether Brick Fence","confidence":0.55}],"category":"decorative"},{"id":"minecraft:pink_candle_cake","name":"Pink Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"pink_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:pink_carpet","name":"Pink Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#ee8dac","dominant_hex":"#ec80a1","average_hex":"#ee8dac","hue_group":"red","lightness":0.7431,"saturation":0.7405,"palette":["#ec80a1","#f498b4","#df6e97","#f4a3bf","#f4b2c9","#f48dac"],"color_groups":[{"hex":"#ec80a1","weight":0.2578,"lightness":0.7137,"saturation":0.7397,"hue_group":"red"},{"hex":"#f498b4","weight":0.1797,"lightness":0.7765,"saturation":0.807,"hue_group":"red"},{"hex":"#df6e97","weight":0.1758,"lightness":0.6529,"saturation":0.6384,"hue_group":"red"},{"hex":"#f4a3bf","weight":0.1523,"lightness":0.798,"saturation":0.7864,"hue_group":"red"},{"hex":"#f4b2c9","weight":0.1211,"lightness":0.8275,"saturation":0.75,"hue_group":"red"},{"hex":"#f48dac","weight":0.1133,"lightness":0.7549,"saturation":0.824,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pink_wool.png","family":"pink_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:pink_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pink_wool","label":"Palette proche: Pink Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Palette proche: Pink Stained Glass Pane","confidence":0.919},{"type":"color_neighbors","target":"minecraft:pink_stained_glass","label":"Palette proche: Pink Stained Glass","confidence":0.891},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.874},{"type":"color_neighbors","target":"minecraft:pink_concrete_powder","label":"Palette proche: Pink Concrete Powder","confidence":0.862},{"type":"color_neighbors","target":"minecraft:pink_petals","label":"Palette proche: Pink Petals","confidence":0.791},{"type":"color_neighbors","target":"minecraft:pink_concrete","label":"Palette proche: Pink Concrete","confidence":0.786},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.746},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.742},{"type":"color_neighbors","target":"minecraft:cherry_leaves","label":"Palette proche: Cherry Leaves","confidence":0.72},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.689},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.689},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_stairs","label":"Pont de nuance par sous-ton: Pale Oak Stairs","confidence":0.58},{"type":"color_analogous","target":"minecraft:pink_wool","label":"Couleurs analogues: Pink Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_stained_glass_pane","label":"Couleurs analogues: Pink Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_stained_glass","label":"Couleurs analogues: Pink Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_glazed_terracotta","label":"Couleurs analogues: Pink Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_shulker_box","label":"Couleurs analogues: Pink Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_concrete_powder","label":"Couleurs analogues: Pink Concrete Powder","confidence":0.934},{"type":"color_analogous","target":"minecraft:magenta_terracotta","label":"Couleurs analogues: Magenta Terracotta","confidence":0.919},{"type":"color_analogous","target":"minecraft:cherry_leaves","label":"Couleurs analogues: Cherry Leaves","confidence":0.917},{"type":"color_complement","target":"minecraft:oxidized_copper_chain","label":"Contraste complementaire: Oxidized Copper Chain","confidence":0.918},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chain","label":"Contraste complementaire: Waxed Oxidized Copper Chain","confidence":0.918},{"type":"color_complement","target":"minecraft:oxidized_copper_door","label":"Contraste complementaire: Oxidized Copper Door","confidence":0.905},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_door","label":"Contraste complementaire: Waxed Oxidized Copper Door","confidence":0.905},{"type":"color_complement","target":"minecraft:oxidized_lightning_rod","label":"Contraste complementaire: Oxidized Lightning Rod","confidence":0.904},{"type":"color_complement","target":"minecraft:waxed_oxidized_lightning_rod","label":"Contraste complementaire: Waxed Oxidized Lightning Rod","confidence":0.904},{"type":"color_complement","target":"minecraft:oxidized_copper","label":"Contraste complementaire: Oxidized Copper","confidence":0.857},{"type":"color_complement","target":"minecraft:oxidized_copper_chest","label":"Contraste complementaire: Oxidized Copper Chest","confidence":0.857},{"type":"color_triad","target":"minecraft:lapis_block","label":"Harmonie triadique: Lapis Block","confidence":0.96},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.912},{"type":"color_triad","target":"minecraft:ice","label":"Harmonie triadique: Ice","confidence":0.906},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.897},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.897},{"type":"color_triad","target":"minecraft:potted_spruce_sapling","label":"Harmonie triadique: Potted Spruce Sapling","confidence":0.895},{"type":"color_triad","target":"minecraft:spruce_sapling","label":"Harmonie triadique: Spruce Sapling","confidence":0.895},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.892},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.96},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.96},{"type":"color_square","target":"minecraft:wither_rose","label":"Harmonie carree: Wither Rose","confidence":0.96},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.946},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.943},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.939},{"type":"color_square","target":"minecraft:bamboo_block","label":"Harmonie carree: Bamboo Block","confidence":0.932},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.591},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.587},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.584},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.584},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.581},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.579},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.568}],"category":"decorative"},{"id":"minecraft:pink_concrete","name":"Pink Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#d6658f","dominant_hex":"#d4648c","average_hex":"#d6658f","hue_group":"red","lightness":0.6176,"saturation":0.5795,"palette":["#d4648c","#d46494"],"color_groups":[{"hex":"#d4648c","weight":0.6992,"lightness":0.6118,"saturation":0.5657,"hue_group":"red"},{"hex":"#d46494","weight":0.3008,"lightness":0.6118,"saturation":0.5657,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pink_concrete.png","family":"pink_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:pink_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cactus_flower","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.866},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.84},{"type":"color_neighbors","target":"minecraft:pink_concrete_powder","label":"Palette proche: Pink Concrete Powder","confidence":0.836},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.825},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.802},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.801},{"type":"color_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Palette proche: Brain Coral Wall Fan","confidence":0.801},{"type":"color_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Palette proche: Pink Stained Glass Pane","confidence":0.797},{"type":"color_neighbors","target":"minecraft:pink_carpet","label":"Palette proche: Pink Carpet","confidence":0.786},{"type":"color_neighbors","target":"minecraft:pink_wool","label":"Palette proche: Pink Wool","confidence":0.786},{"type":"color_neighbors","target":"minecraft:brain_coral","label":"Palette proche: Brain Coral","confidence":0.78},{"type":"color_neighbors","target":"minecraft:cactus_flower","label":"Palette proche: Cactus Flower","confidence":0.73},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.612},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.612},{"type":"color_bridge","target":"minecraft:dried_ghast","label":"Pont de nuance par palette: Dried Ghast","confidence":0.611},{"type":"color_bridge","target":"minecraft:light_gray_stained_glass","label":"Pont de nuance par palette: Light Gray Stained Glass","confidence":0.602},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.599},{"type":"color_bridge","target":"minecraft:exposed_copper_door","label":"Pont de nuance par palette: Exposed Copper Door","confidence":0.589},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_door","label":"Pont de nuance par palette: Waxed Exposed Copper Door","confidence":0.589},{"type":"color_bridge","target":"minecraft:light_gray_stained_glass_pane","label":"Pont de nuance par palette: Light Gray Stained Glass Pane","confidence":0.589},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.581},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.581},{"type":"color_analogous","target":"minecraft:pink_candle","label":"Couleurs analogues: Pink Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_concrete_powder","label":"Couleurs analogues: Pink Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_leaves","label":"Couleurs analogues: Cherry Leaves","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_stained_glass_pane","label":"Couleurs analogues: Pink Stained Glass Pane","confidence":0.937},{"type":"color_analogous","target":"minecraft:pink_shulker_box","label":"Couleurs analogues: Pink Shulker Box","confidence":0.934},{"type":"color_analogous","target":"minecraft:pearlescent_froglight","label":"Couleurs analogues: Pearlescent Froglight","confidence":0.932},{"type":"color_analogous","target":"minecraft:magenta_terracotta","label":"Couleurs analogues: Magenta Terracotta","confidence":0.926},{"type":"color_analogous","target":"minecraft:pink_glazed_terracotta","label":"Couleurs analogues: Pink Glazed Terracotta","confidence":0.925},{"type":"color_complement","target":"minecraft:oxidized_copper","label":"Contraste complementaire: Oxidized Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_chest","label":"Contraste complementaire: Oxidized Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_golem_statue","label":"Contraste complementaire: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper","label":"Contraste complementaire: Waxed Oxidized Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chest","label":"Contraste complementaire: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Contraste complementaire: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_trapdoor","label":"Contraste complementaire: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Contraste complementaire: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.96},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.952},{"type":"color_triad","target":"minecraft:tall_seagrass","label":"Harmonie triadique: Tall Seagrass","confidence":0.951},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.95},{"type":"color_triad","target":"minecraft:frosted_ice","label":"Harmonie triadique: Frosted Ice","confidence":0.949},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.93},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.93},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.927},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.915},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.915},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.915},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.915},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.904},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.893},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.874},{"type":"value_contrast","target":"minecraft:crimson_hyphae","label":"Contraste clair sombre: Crimson Hyphae","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_stem","label":"Contraste clair sombre: Crimson Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_glazed_terracotta","label":"Contraste clair sombre: Black Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_log","label":"Contraste clair sombre: Cherry Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_wood","label":"Contraste clair sombre: Cherry Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:netherite_block","label":"Contraste clair sombre: Netherite Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_nether_bricks","label":"Contraste clair sombre: Chiseled Nether Bricks","confidence":0.55}],"category":"building"},{"id":"minecraft:pink_concrete_powder","name":"Pink Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#e599b5","dominant_hex":"#e08eac","average_hex":"#e599b5","hue_group":"red","lightness":0.749,"saturation":0.5938,"palette":["#e08eac","#eba3bd","#eeb5ca","#e594b4","#da82a5","#e59cb4"],"color_groups":[{"hex":"#e08eac","weight":0.2383,"lightness":0.7176,"saturation":0.5694,"hue_group":"red"},{"hex":"#eba3bd","weight":0.1992,"lightness":0.7804,"saturation":0.6429,"hue_group":"red"},{"hex":"#eeb5ca","weight":0.168,"lightness":0.8216,"saturation":0.6264,"hue_group":"red"},{"hex":"#e594b4","weight":0.1562,"lightness":0.7392,"saturation":0.609,"hue_group":"red"},{"hex":"#da82a5","weight":0.1289,"lightness":0.6824,"saturation":0.5432,"hue_group":"red"},{"hex":"#e59cb4","weight":0.1094,"lightness":0.7549,"saturation":0.584,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pink_concrete_powder.png","family":"pink_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:target","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_leaves","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.872},{"type":"color_neighbors","target":"minecraft:pink_carpet","label":"Palette proche: Pink Carpet","confidence":0.862},{"type":"color_neighbors","target":"minecraft:pink_wool","label":"Palette proche: Pink Wool","confidence":0.862},{"type":"color_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Palette proche: Pink Stained Glass Pane","confidence":0.843},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.842},{"type":"color_neighbors","target":"minecraft:pink_concrete","label":"Palette proche: Pink Concrete","confidence":0.836},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.801},{"type":"color_neighbors","target":"minecraft:pink_stained_glass","label":"Palette proche: Pink Stained Glass","confidence":0.767},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.748},{"type":"color_neighbors","target":"minecraft:cherry_wall_hanging_sign","label":"Palette proche: Cherry Wall Hanging Sign","confidence":0.748},{"type":"color_neighbors","target":"minecraft:stripped_cherry_log","label":"Palette proche: Stripped Cherry Log","confidence":0.748},{"type":"color_neighbors","target":"minecraft:stripped_cherry_wood","label":"Palette proche: Stripped Cherry Wood","confidence":0.748},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.712},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.712},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.618},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.614},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.614},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.614},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.614},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.614},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.614},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.614},{"type":"color_analogous","target":"minecraft:cherry_leaves","label":"Couleurs analogues: Cherry Leaves","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_concrete","label":"Couleurs analogues: Pink Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_candle","label":"Couleurs analogues: Pink Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:pearlescent_froglight","label":"Couleurs analogues: Pearlescent Froglight","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_glazed_terracotta","label":"Couleurs analogues: Pink Glazed Terracotta","confidence":0.956},{"type":"color_analogous","target":"minecraft:pink_stained_glass_pane","label":"Couleurs analogues: Pink Stained Glass Pane","confidence":0.947},{"type":"color_analogous","target":"minecraft:pink_stained_glass","label":"Couleurs analogues: Pink Stained Glass","confidence":0.944},{"type":"color_analogous","target":"minecraft:pink_shulker_box","label":"Couleurs analogues: Pink Shulker Box","confidence":0.941},{"type":"color_complement","target":"minecraft:oxidized_copper","label":"Contraste complementaire: Oxidized Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_chest","label":"Contraste complementaire: Oxidized Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_golem_statue","label":"Contraste complementaire: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper","label":"Contraste complementaire: Waxed Oxidized Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chest","label":"Contraste complementaire: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Contraste complementaire: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_bulb","label":"Contraste complementaire: Oxidized Copper Bulb","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_bulb","label":"Contraste complementaire: Waxed Oxidized Copper Bulb","confidence":0.96},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.96},{"type":"color_triad","target":"minecraft:tall_seagrass","label":"Harmonie triadique: Tall Seagrass","confidence":0.96},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.96},{"type":"color_triad","target":"minecraft:frosted_ice","label":"Harmonie triadique: Frosted Ice","confidence":0.957},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.944},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.937},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.937},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.936},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.905},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.905},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.905},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.905},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.895},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.884},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.881},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.63},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.6},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.597},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.594},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.594},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.59},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.588},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.579}],"category":"building"},{"id":"minecraft:pink_dye","name":"Pink Dye","entry_type":"item","description":"Pink dye is one of the sixteen available dyes, crafted from various flowers or with a combination of red and white dyes.","history":[{"version":"1.2","status":"added","notes":"Added pink dye."},{"version":"1.4.2 12w34a","status":"added","notes":"Added the ability to dye leather armor and wolf collars."},{"version":"1.8 14w30a","status":"added","notes":"Added banners , which can be dyed."}],"colors":{"primary":"#b57c95","dominant_hex":"#86515f","average_hex":"#b57c95","hue_group":"red","lightness":0.598,"saturation":0.278,"palette":["#86515f","#db8aaa","#f4b4d4","#fcdce4","#9c4c94","#3d1d1c"],"color_groups":[{"hex":"#86515f","weight":0.1931,"lightness":0.4216,"saturation":0.2465,"hue_group":"red"},{"hex":"#db8aaa","weight":0.1862,"lightness":0.7,"saturation":0.5294,"hue_group":"red"},{"hex":"#f4b4d4","weight":0.1724,"lightness":0.8314,"saturation":0.7442,"hue_group":"red"},{"hex":"#fcdce4","weight":0.1655,"lightness":0.9255,"saturation":0.8421,"hue_group":"red"},{"hex":"#9c4c94","weight":0.1448,"lightness":0.4549,"saturation":0.3448,"hue_group":"purple"},{"hex":"#3d1d1c","weight":0.1379,"lightness":0.1745,"saturation":0.3708,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/pink_dye.png","family":"pink_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:brush","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_shell","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_horse_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_scute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_armor","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:pink_glazed_terracotta","name":"Pink Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#eb9bb6","dominant_hex":"#f4b4cc","average_hex":"#eb9bb6","hue_group":"red","lightness":0.7647,"saturation":0.6667,"palette":["#f4b4cc","#f48cac","#dc749c","#d4648c","#f494b4","#b9b4ac"],"color_groups":[{"hex":"#f4b4cc","weight":0.4609,"lightness":0.8314,"saturation":0.7442,"hue_group":"red"},{"hex":"#f48cac","weight":0.2031,"lightness":0.7529,"saturation":0.8254,"hue_group":"red"},{"hex":"#dc749c","weight":0.1094,"lightness":0.6588,"saturation":0.5977,"hue_group":"red"},{"hex":"#d4648c","weight":0.0938,"lightness":0.6118,"saturation":0.5657,"hue_group":"red"},{"hex":"#f494b4","weight":0.0859,"lightness":0.7686,"saturation":0.8136,"hue_group":"red"},{"hex":"#b9b4ac","weight":0.0469,"lightness":0.7,"saturation":0.085,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pink_glazed_terracotta.png","family":"pink_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:pink_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:target","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_leaves","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pink_carpet","label":"Palette proche: Pink Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_wool","label":"Palette proche: Pink Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.916},{"type":"color_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Palette proche: Pink Stained Glass Pane","confidence":0.879},{"type":"color_neighbors","target":"minecraft:pink_concrete_powder","label":"Palette proche: Pink Concrete Powder","confidence":0.872},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.87},{"type":"color_neighbors","target":"minecraft:pink_stained_glass","label":"Palette proche: Pink Stained Glass","confidence":0.855},{"type":"color_neighbors","target":"minecraft:pink_concrete","label":"Palette proche: Pink Concrete","confidence":0.825},{"type":"color_neighbors","target":"minecraft:pink_petals","label":"Palette proche: Pink Petals","confidence":0.782},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.762},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.749},{"type":"color_neighbors","target":"minecraft:cherry_leaves","label":"Palette proche: Cherry Leaves","confidence":0.74},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.699},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.699},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par palette: Mushroom Stem","confidence":0.68},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.673},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.673},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.673},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.673},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.673},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.673},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.673},{"type":"color_analogous","target":"minecraft:pink_carpet","label":"Couleurs analogues: Pink Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_wool","label":"Couleurs analogues: Pink Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_shulker_box","label":"Couleurs analogues: Pink Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_stained_glass_pane","label":"Couleurs analogues: Pink Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_stained_glass","label":"Couleurs analogues: Pink Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_concrete_powder","label":"Couleurs analogues: Pink Concrete Powder","confidence":0.956},{"type":"color_analogous","target":"minecraft:cherry_leaves","label":"Couleurs analogues: Cherry Leaves","confidence":0.945},{"type":"color_analogous","target":"minecraft:magenta_terracotta","label":"Couleurs analogues: Magenta Terracotta","confidence":0.939},{"type":"color_complement","target":"minecraft:oxidized_copper_chain","label":"Contraste complementaire: Oxidized Copper Chain","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chain","label":"Contraste complementaire: Waxed Oxidized Copper Chain","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_door","label":"Contraste complementaire: Oxidized Copper Door","confidence":0.948},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_door","label":"Contraste complementaire: Waxed Oxidized Copper Door","confidence":0.948},{"type":"color_complement","target":"minecraft:oxidized_lightning_rod","label":"Contraste complementaire: Oxidized Lightning Rod","confidence":0.947},{"type":"color_complement","target":"minecraft:waxed_oxidized_lightning_rod","label":"Contraste complementaire: Waxed Oxidized Lightning Rod","confidence":0.947},{"type":"color_complement","target":"minecraft:oxidized_copper","label":"Contraste complementaire: Oxidized Copper","confidence":0.901},{"type":"color_complement","target":"minecraft:oxidized_copper_chest","label":"Contraste complementaire: Oxidized Copper Chest","confidence":0.901},{"type":"color_triad","target":"minecraft:lapis_block","label":"Harmonie triadique: Lapis Block","confidence":0.96},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.947},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.944},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.944},{"type":"color_triad","target":"minecraft:ice","label":"Harmonie triadique: Ice","confidence":0.942},{"type":"color_triad","target":"minecraft:potted_spruce_sapling","label":"Harmonie triadique: Potted Spruce Sapling","confidence":0.942},{"type":"color_triad","target":"minecraft:spruce_sapling","label":"Harmonie triadique: Spruce Sapling","confidence":0.942},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.928},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.952},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.947},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.945},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.936},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.936},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.924},{"type":"color_square","target":"minecraft:wither_rose","label":"Harmonie carree: Wither Rose","confidence":0.924},{"type":"color_square","target":"minecraft:bamboo_block","label":"Harmonie carree: Bamboo Block","confidence":0.893},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.643},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.613},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.61},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.606},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.606},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.604},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.601},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.591}],"category":"building"},{"id":"minecraft:pink_harness","name":"Pink Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#85554b","dominant_hex":"#93644c","average_hex":"#85554b","hue_group":"red","lightness":0.4078,"saturation":0.2788,"palette":["#93644c","#502e16","#bea3b0","#c85676","#70492f","#3c2414"],"color_groups":[{"hex":"#93644c","weight":0.227,"lightness":0.4373,"saturation":0.3184,"hue_group":"red"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#bea3b0","weight":0.1595,"lightness":0.6922,"saturation":0.172,"hue_group":"red"},{"hex":"#c85676","weight":0.1534,"lightness":0.5608,"saturation":0.5089,"hue_group":"red"},{"hex":"#70492f","weight":0.135,"lightness":0.3118,"saturation":0.4088,"hue_group":"red"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/pink_harness.png","family":"pink_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:wolf_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_key","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bolt_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:pink_petals","name":"Pink Petals","entry_type":"block","description":"Pink petals are a decorative block that generates in cherry grove biomes.","history":[{"version":"1.19.4","status":"added","notes":"Added pink petals behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#f7b5db","dominant_hex":"#fccce4","average_hex":"#f7b5db","hue_group":"purple","lightness":0.8392,"saturation":0.8049,"palette":["#fccce4","#f49ed1","#f4dcec","#f5bcdd","#e764a5","#fcacdc"],"color_groups":[{"hex":"#fccce4","weight":0.3495,"lightness":0.8941,"saturation":0.8889,"hue_group":"red"},{"hex":"#f49ed1","weight":0.1942,"lightness":0.7882,"saturation":0.7963,"hue_group":"purple"},{"hex":"#f4dcec","weight":0.1553,"lightness":0.9098,"saturation":0.5217,"hue_group":"purple"},{"hex":"#f5bcdd","weight":0.1359,"lightness":0.849,"saturation":0.7403,"hue_group":"purple"},{"hex":"#e764a5","weight":0.1068,"lightness":0.649,"saturation":0.7318,"hue_group":"red"},{"hex":"#fcacdc","weight":0.0583,"lightness":0.8314,"saturation":0.9302,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pink_petals.png","family":"pink_petals","relations":[{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_leaves","label":"Palette proche: Cherry Leaves","confidence":0.878},{"type":"color_neighbors","target":"minecraft:pink_carpet","label":"Palette proche: Pink Carpet","confidence":0.791},{"type":"color_neighbors","target":"minecraft:pink_wool","label":"Palette proche: Pink Wool","confidence":0.791},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.782},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.734},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.734},{"type":"color_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Palette proche: Pink Stained Glass Pane","confidence":0.731},{"type":"color_neighbors","target":"minecraft:pink_concrete_powder","label":"Palette proche: Pink Concrete Powder","confidence":0.722},{"type":"color_neighbors","target":"minecraft:spore_blossom","label":"Palette proche: Spore Blossom","confidence":0.721},{"type":"color_neighbors","target":"minecraft:brain_coral","label":"Palette proche: Brain Coral","confidence":0.71},{"type":"color_neighbors","target":"minecraft:cherry_sapling","label":"Palette proche: Cherry Sapling","confidence":0.699},{"type":"color_neighbors","target":"minecraft:potted_cherry_sapling","label":"Palette proche: Potted Cherry Sapling","confidence":0.699},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.752},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.752},{"type":"color_bridge","target":"minecraft:medium_amethyst_bud","label":"Pont de nuance par palette: Medium Amethyst Bud","confidence":0.608},{"type":"color_bridge","target":"minecraft:large_amethyst_bud","label":"Pont de nuance par palette: Large Amethyst Bud","confidence":0.601},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.58},{"type":"color_analogous","target":"minecraft:spore_blossom","label":"Couleurs analogues: Spore Blossom","confidence":0.935},{"type":"color_analogous","target":"minecraft:brain_coral_block","label":"Couleurs analogues: Brain Coral Block","confidence":0.935},{"type":"color_analogous","target":"minecraft:brain_coral_fan","label":"Couleurs analogues: Brain Coral Fan","confidence":0.928},{"type":"color_analogous","target":"minecraft:brain_coral_wall_fan","label":"Couleurs analogues: Brain Coral Wall Fan","confidence":0.928},{"type":"color_analogous","target":"minecraft:brain_coral","label":"Couleurs analogues: Brain Coral","confidence":0.92},{"type":"color_analogous","target":"minecraft:cherry_log","label":"Couleurs analogues: Cherry Log","confidence":0.766},{"type":"color_analogous","target":"minecraft:cherry_wood","label":"Couleurs analogues: Cherry Wood","confidence":0.766},{"type":"color_analogous","target":"minecraft:cherry_leaves","label":"Couleurs analogues: Cherry Leaves","confidence":0.722},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.721},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.714},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.714},{"type":"color_complement","target":"minecraft:emerald_block","label":"Contraste complementaire: Emerald Block","confidence":0.708},{"type":"color_complement","target":"minecraft:sweet_berry_bush","label":"Contraste complementaire: Sweet Berry Bush","confidence":0.66},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.596},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.596},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.596},{"type":"color_triad","target":"minecraft:lime_stained_glass","label":"Harmonie triadique: Lime Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:lime_stained_glass_pane","label":"Harmonie triadique: Lime Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:lime_concrete_powder","label":"Harmonie triadique: Lime Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.96},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.96},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo","label":"Harmonie triadique: Bamboo","confidence":0.948},{"type":"color_triad","target":"minecraft:orange_tulip","label":"Harmonie triadique: Orange Tulip","confidence":0.947},{"type":"color_square","target":"minecraft:bamboo_sapling","label":"Harmonie carree: Bamboo Sapling","confidence":0.915},{"type":"color_square","target":"minecraft:horn_coral_block","label":"Harmonie carree: Horn Coral Block","confidence":0.911},{"type":"color_square","target":"minecraft:blue_carpet","label":"Harmonie carree: Blue Carpet","confidence":0.882},{"type":"color_square","target":"minecraft:blue_wool","label":"Harmonie carree: Blue Wool","confidence":0.882},{"type":"color_square","target":"minecraft:firefly_bush","label":"Harmonie carree: Firefly Bush","confidence":0.875},{"type":"color_square","target":"minecraft:sponge","label":"Harmonie carree: Sponge","confidence":0.869},{"type":"color_square","target":"minecraft:blue_concrete_powder","label":"Harmonie carree: Blue Concrete Powder","confidence":0.856},{"type":"color_square","target":"minecraft:turtle_egg","label":"Harmonie carree: Turtle Egg","confidence":0.848},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.708},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.678},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.675},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.675},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.674},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.662},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.66},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.654}],"category":""},{"id":"minecraft:pink_shulker_box","name":"Pink Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#e67a9e","dominant_hex":"#f48cac","average_hex":"#e67a9e","hue_group":"red","lightness":0.6902,"saturation":0.6835,"palette":["#f48cac","#e4749c","#d3638d","#ef81a4","#dd6c94","#c55c84"],"color_groups":[{"hex":"#f48cac","weight":0.4297,"lightness":0.7529,"saturation":0.8254,"hue_group":"red"},{"hex":"#e4749c","weight":0.1641,"lightness":0.6745,"saturation":0.6747,"hue_group":"red"},{"hex":"#d3638d","weight":0.1328,"lightness":0.6078,"saturation":0.56,"hue_group":"red"},{"hex":"#ef81a4","weight":0.1172,"lightness":0.7216,"saturation":0.7746,"hue_group":"red"},{"hex":"#dd6c94","weight":0.0977,"lightness":0.6451,"saturation":0.6243,"hue_group":"red"},{"hex":"#c55c84","weight":0.0586,"lightness":0.5667,"saturation":0.4751,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pink_shulker_box.png","family":"pink_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cactus_flower","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:target","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pink_carpet","label":"Palette proche: Pink Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_wool","label":"Palette proche: Pink Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Palette proche: Pink Stained Glass Pane","confidence":0.937},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.916},{"type":"color_neighbors","target":"minecraft:pink_stained_glass","label":"Palette proche: Pink Stained Glass","confidence":0.886},{"type":"color_neighbors","target":"minecraft:pink_concrete","label":"Palette proche: Pink Concrete","confidence":0.866},{"type":"color_neighbors","target":"minecraft:pink_concrete_powder","label":"Palette proche: Pink Concrete Powder","confidence":0.842},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.797},{"type":"color_neighbors","target":"minecraft:brain_coral","label":"Palette proche: Brain Coral","confidence":0.77},{"type":"color_neighbors","target":"minecraft:spore_blossom","label":"Palette proche: Spore Blossom","confidence":0.768},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.762},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.693},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.693},{"type":"color_bridge","target":"minecraft:raw_copper_block","label":"Pont de nuance par palette: Raw Copper Block","confidence":0.611},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.58},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.58},{"type":"color_analogous","target":"minecraft:pink_stained_glass_pane","label":"Couleurs analogues: Pink Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_glazed_terracotta","label":"Couleurs analogues: Pink Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_carpet","label":"Couleurs analogues: Pink Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_wool","label":"Couleurs analogues: Pink Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_stained_glass","label":"Couleurs analogues: Pink Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_terracotta","label":"Couleurs analogues: Magenta Terracotta","confidence":0.948},{"type":"color_analogous","target":"minecraft:pink_concrete_powder","label":"Couleurs analogues: Pink Concrete Powder","confidence":0.941},{"type":"color_analogous","target":"minecraft:purple_terracotta","label":"Couleurs analogues: Purple Terracotta","confidence":0.936},{"type":"color_complement","target":"minecraft:oxidized_copper_chain","label":"Contraste complementaire: Oxidized Copper Chain","confidence":0.951},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chain","label":"Contraste complementaire: Waxed Oxidized Copper Chain","confidence":0.951},{"type":"color_complement","target":"minecraft:oxidized_copper_door","label":"Contraste complementaire: Oxidized Copper Door","confidence":0.938},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_door","label":"Contraste complementaire: Waxed Oxidized Copper Door","confidence":0.938},{"type":"color_complement","target":"minecraft:oxidized_lightning_rod","label":"Contraste complementaire: Oxidized Lightning Rod","confidence":0.937},{"type":"color_complement","target":"minecraft:waxed_oxidized_lightning_rod","label":"Contraste complementaire: Waxed Oxidized Lightning Rod","confidence":0.937},{"type":"color_complement","target":"minecraft:oxidized_copper","label":"Contraste complementaire: Oxidized Copper","confidence":0.891},{"type":"color_complement","target":"minecraft:oxidized_copper_chest","label":"Contraste complementaire: Oxidized Copper Chest","confidence":0.891},{"type":"color_triad","target":"minecraft:lapis_block","label":"Harmonie triadique: Lapis Block","confidence":0.96},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.939},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.934},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.934},{"type":"color_triad","target":"minecraft:ice","label":"Harmonie triadique: Ice","confidence":0.933},{"type":"color_triad","target":"minecraft:potted_spruce_sapling","label":"Harmonie triadique: Potted Spruce Sapling","confidence":0.931},{"type":"color_triad","target":"minecraft:spruce_sapling","label":"Harmonie triadique: Spruce Sapling","confidence":0.931},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.92},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.956},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.954},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.945},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.945},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.933},{"type":"color_square","target":"minecraft:wither_rose","label":"Harmonie carree: Wither Rose","confidence":0.933},{"type":"color_square","target":"minecraft:bamboo_block","label":"Harmonie carree: Bamboo Block","confidence":0.902},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.572},{"type":"value_contrast","target":"minecraft:crimson_nylium","label":"Contraste clair sombre: Crimson Nylium","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_roots","label":"Contraste clair sombre: Crimson Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_crimson_roots","label":"Contraste clair sombre: Potted Crimson Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:nether_wart","label":"Contraste clair sombre: Nether Wart","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_trapdoor","label":"Contraste clair sombre: Crimson Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_button","label":"Contraste clair sombre: Crimson Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_fence","label":"Contraste clair sombre: Crimson Fence","confidence":0.55}],"category":""},{"id":"minecraft:pink_stained_glass","name":"Pink Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#f27fa5","dominant_hex":"#f47ca4","average_hex":"#f27fa5","hue_group":"red","lightness":0.7235,"saturation":0.8156,"palette":["#f47ca4"],"color_groups":[{"hex":"#f47ca4","weight":1.0,"lightness":0.7216,"saturation":0.8451,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pink_stained_glass.png","family":"pink_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:pink_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shroomlight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_clump","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_wool","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Palette proche: Pink Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_carpet","label":"Palette proche: Pink Carpet","confidence":0.891},{"type":"color_neighbors","target":"minecraft:pink_wool","label":"Palette proche: Pink Wool","confidence":0.891},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.886},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.855},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.774},{"type":"color_neighbors","target":"minecraft:pink_concrete_powder","label":"Palette proche: Pink Concrete Powder","confidence":0.767},{"type":"color_neighbors","target":"minecraft:pink_petals","label":"Palette proche: Pink Petals","confidence":0.69},{"type":"color_neighbors","target":"minecraft:spore_blossom","label":"Palette proche: Spore Blossom","confidence":0.673},{"type":"color_neighbors","target":"minecraft:pink_concrete","label":"Palette proche: Pink Concrete","confidence":0.648},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.625},{"type":"color_neighbors","target":"minecraft:cherry_leaves","label":"Palette proche: Cherry Leaves","confidence":0.625},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.601},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.601},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_stairs","label":"Pont de nuance par sous-ton: Pale Oak Stairs","confidence":0.58},{"type":"color_analogous","target":"minecraft:pink_carpet","label":"Couleurs analogues: Pink Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_wool","label":"Couleurs analogues: Pink Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_stained_glass_pane","label":"Couleurs analogues: Pink Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_shulker_box","label":"Couleurs analogues: Pink Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_glazed_terracotta","label":"Couleurs analogues: Pink Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_concrete_powder","label":"Couleurs analogues: Pink Concrete Powder","confidence":0.944},{"type":"color_analogous","target":"minecraft:magenta_terracotta","label":"Couleurs analogues: Magenta Terracotta","confidence":0.938},{"type":"color_analogous","target":"minecraft:cherry_leaves","label":"Couleurs analogues: Cherry Leaves","confidence":0.928},{"type":"color_complement","target":"minecraft:oxidized_copper_chain","label":"Contraste complementaire: Oxidized Copper Chain","confidence":0.932},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chain","label":"Contraste complementaire: Waxed Oxidized Copper Chain","confidence":0.932},{"type":"color_complement","target":"minecraft:oxidized_copper_door","label":"Contraste complementaire: Oxidized Copper Door","confidence":0.919},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_door","label":"Contraste complementaire: Waxed Oxidized Copper Door","confidence":0.919},{"type":"color_complement","target":"minecraft:oxidized_lightning_rod","label":"Contraste complementaire: Oxidized Lightning Rod","confidence":0.918},{"type":"color_complement","target":"minecraft:waxed_oxidized_lightning_rod","label":"Contraste complementaire: Waxed Oxidized Lightning Rod","confidence":0.918},{"type":"color_complement","target":"minecraft:oxidized_copper","label":"Contraste complementaire: Oxidized Copper","confidence":0.872},{"type":"color_complement","target":"minecraft:oxidized_copper_chest","label":"Contraste complementaire: Oxidized Copper Chest","confidence":0.872},{"type":"color_triad","target":"minecraft:lapis_block","label":"Harmonie triadique: Lapis Block","confidence":0.96},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.943},{"type":"color_triad","target":"minecraft:ice","label":"Harmonie triadique: Ice","confidence":0.937},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.923},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.916},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.916},{"type":"color_triad","target":"minecraft:tall_seagrass","label":"Harmonie triadique: Tall Seagrass","confidence":0.916},{"type":"color_triad","target":"minecraft:potted_spruce_sapling","label":"Harmonie triadique: Potted Spruce Sapling","confidence":0.914},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.958},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.953},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.951},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.942},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.942},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.93},{"type":"color_square","target":"minecraft:wither_rose","label":"Harmonie carree: Wither Rose","confidence":0.93},{"type":"color_square","target":"minecraft:bamboo_block","label":"Harmonie carree: Bamboo Block","confidence":0.899},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.6},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.57},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.566},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.563},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.563},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.56},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.558},{"type":"value_contrast","target":"minecraft:crimson_roots","label":"Contraste clair sombre: Crimson Roots","confidence":0.55}],"category":"building"},{"id":"minecraft:pink_stained_glass_pane","name":"Pink Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#e97ba0","dominant_hex":"#f47ca4","average_hex":"#e97ba0","hue_group":"red","lightness":0.698,"saturation":0.7143,"palette":["#f47ca4","#e47c9c","#e4749c","#ec7ca4"],"color_groups":[{"hex":"#f47ca4","weight":0.375,"lightness":0.7216,"saturation":0.8451,"hue_group":"red"},{"hex":"#e47c9c","weight":0.3438,"lightness":0.6902,"saturation":0.6582,"hue_group":"red"},{"hex":"#e4749c","weight":0.25,"lightness":0.6745,"saturation":0.6747,"hue_group":"red"},{"hex":"#ec7ca4","weight":0.0312,"lightness":0.7059,"saturation":0.7467,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pink_stained_glass_pane_top.png","family":"pink_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:pink_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pink_stained_glass","label":"Palette proche: Pink Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.937},{"type":"color_neighbors","target":"minecraft:pink_carpet","label":"Palette proche: Pink Carpet","confidence":0.919},{"type":"color_neighbors","target":"minecraft:pink_wool","label":"Palette proche: Pink Wool","confidence":0.919},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.879},{"type":"color_neighbors","target":"minecraft:pink_concrete_powder","label":"Palette proche: Pink Concrete Powder","confidence":0.843},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.826},{"type":"color_neighbors","target":"minecraft:pink_concrete","label":"Palette proche: Pink Concrete","confidence":0.797},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.739},{"type":"color_neighbors","target":"minecraft:pink_petals","label":"Palette proche: Pink Petals","confidence":0.731},{"type":"color_neighbors","target":"minecraft:brain_coral","label":"Palette proche: Brain Coral","confidence":0.709},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.705},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.658},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.658},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_stairs","label":"Pont de nuance par sous-ton: Pale Oak Stairs","confidence":0.58},{"type":"color_analogous","target":"minecraft:pink_shulker_box","label":"Couleurs analogues: Pink Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_carpet","label":"Couleurs analogues: Pink Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_wool","label":"Couleurs analogues: Pink Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_stained_glass","label":"Couleurs analogues: Pink Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_glazed_terracotta","label":"Couleurs analogues: Pink Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:magenta_terracotta","label":"Couleurs analogues: Magenta Terracotta","confidence":0.951},{"type":"color_analogous","target":"minecraft:pink_concrete_powder","label":"Couleurs analogues: Pink Concrete Powder","confidence":0.947},{"type":"color_analogous","target":"minecraft:pink_concrete","label":"Couleurs analogues: Pink Concrete","confidence":0.937},{"type":"color_complement","target":"minecraft:oxidized_copper_chain","label":"Contraste complementaire: Oxidized Copper Chain","confidence":0.954},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chain","label":"Contraste complementaire: Waxed Oxidized Copper Chain","confidence":0.954},{"type":"color_complement","target":"minecraft:oxidized_copper_door","label":"Contraste complementaire: Oxidized Copper Door","confidence":0.941},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_door","label":"Contraste complementaire: Waxed Oxidized Copper Door","confidence":0.941},{"type":"color_complement","target":"minecraft:oxidized_lightning_rod","label":"Contraste complementaire: Oxidized Lightning Rod","confidence":0.94},{"type":"color_complement","target":"minecraft:waxed_oxidized_lightning_rod","label":"Contraste complementaire: Waxed Oxidized Lightning Rod","confidence":0.94},{"type":"color_complement","target":"minecraft:oxidized_copper","label":"Contraste complementaire: Oxidized Copper","confidence":0.894},{"type":"color_complement","target":"minecraft:oxidized_copper_chest","label":"Contraste complementaire: Oxidized Copper Chest","confidence":0.894},{"type":"color_triad","target":"minecraft:lapis_block","label":"Harmonie triadique: Lapis Block","confidence":0.96},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.948},{"type":"color_triad","target":"minecraft:ice","label":"Harmonie triadique: Ice","confidence":0.943},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.938},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.938},{"type":"color_triad","target":"minecraft:potted_spruce_sapling","label":"Harmonie triadique: Potted Spruce Sapling","confidence":0.935},{"type":"color_triad","target":"minecraft:spruce_sapling","label":"Harmonie triadique: Spruce Sapling","confidence":0.935},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.929},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.951},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.946},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.944},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.935},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.935},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.923},{"type":"color_square","target":"minecraft:wither_rose","label":"Harmonie carree: Wither Rose","confidence":0.923},{"type":"color_square","target":"minecraft:bamboo_block","label":"Harmonie carree: Bamboo Block","confidence":0.892},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.578},{"type":"value_contrast","target":"minecraft:crimson_roots","label":"Contraste clair sombre: Crimson Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_crimson_roots","label":"Contraste clair sombre: Potted Crimson Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:red_shulker_box","label":"Contraste clair sombre: Red Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:nether_wart","label":"Contraste clair sombre: Nether Wart","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_nylium","label":"Contraste clair sombre: Crimson Nylium","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_fungus","label":"Contraste clair sombre: Crimson Fungus","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_crimson_fungus","label":"Contraste clair sombre: Potted Crimson Fungus","confidence":0.55}],"category":"building"},{"id":"minecraft:pink_terracotta","name":"Pink Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#a24e4f","dominant_hex":"#a44c4c","average_hex":"#a24e4f","hue_group":"red","lightness":0.4706,"saturation":0.35,"palette":["#a44c4c","#a45454","#9c4c4c","#a44c54","#a4544c","#ac5454"],"color_groups":[{"hex":"#a44c4c","weight":0.4609,"lightness":0.4706,"saturation":0.3667,"hue_group":"red"},{"hex":"#a45454","weight":0.2656,"lightness":0.4863,"saturation":0.3226,"hue_group":"red"},{"hex":"#9c4c4c","weight":0.168,"lightness":0.4549,"saturation":0.3448,"hue_group":"red"},{"hex":"#a44c54","weight":0.043,"lightness":0.4706,"saturation":0.3667,"hue_group":"red"},{"hex":"#a4544c","weight":0.0352,"lightness":0.4706,"saturation":0.3667,"hue_group":"red"},{"hex":"#ac5454","weight":0.0273,"lightness":0.502,"saturation":0.3465,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pink_terracotta.png","family":"pink_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.83},{"type":"color_neighbors","target":"minecraft:brick_slab","label":"Palette proche: Brick Slab","confidence":0.821},{"type":"color_neighbors","target":"minecraft:brick_stairs","label":"Palette proche: Brick Stairs","confidence":0.821},{"type":"color_neighbors","target":"minecraft:brick_wall","label":"Palette proche: Brick Wall","confidence":0.821},{"type":"color_neighbors","target":"minecraft:bricks","label":"Palette proche: Bricks","confidence":0.821},{"type":"color_neighbors","target":"minecraft:red_stained_glass","label":"Palette proche: Red Stained Glass","confidence":0.821},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.814},{"type":"color_neighbors","target":"minecraft:light_gray_terracotta","label":"Palette proche: Light Gray Terracotta","confidence":0.812},{"type":"color_neighbors","target":"minecraft:red_stained_glass_pane","label":"Palette proche: Red Stained Glass Pane","confidence":0.811},{"type":"color_neighbors","target":"minecraft:decorated_pot","label":"Palette proche: Decorated Pot","confidence":0.802},{"type":"color_neighbors","target":"minecraft:terracotta","label":"Palette proche: Terracotta","confidence":0.802},{"type":"color_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Palette proche: Mangrove Hanging Sign","confidence":0.787},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.808},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.806},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.801},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.797},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.797},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.797},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.797},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.797},{"type":"color_analogous","target":"minecraft:red_stained_glass","label":"Couleurs analogues: Red Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass_pane","label":"Couleurs analogues: Red Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_mushroom_block","label":"Couleurs analogues: Red Mushroom Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:barrier","label":"Couleurs analogues: Barrier","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete","label":"Couleurs analogues: Red Concrete","confidence":0.959},{"type":"color_analogous","target":"minecraft:crimson_nylium","label":"Couleurs analogues: Crimson Nylium","confidence":0.954},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.945},{"type":"color_analogous","target":"minecraft:netherrack","label":"Couleurs analogues: Netherrack","confidence":0.943},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.956},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.95},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.95},{"type":"color_complement","target":"minecraft:warped_hanging_sign","label":"Contraste complementaire: Warped Hanging Sign","confidence":0.95},{"type":"color_complement","target":"minecraft:warped_wall_hanging_sign","label":"Contraste complementaire: Warped Wall Hanging Sign","confidence":0.95},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.94},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.94},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.935},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.951},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.927},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.927},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.853},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.852},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.795},{"type":"color_square","target":"minecraft:sugar_cane","label":"Harmonie carree: Sugar Cane","confidence":0.96},{"type":"color_square","target":"minecraft:cactus","label":"Harmonie carree: Cactus","confidence":0.96},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.96},{"type":"color_square","target":"minecraft:lime_shulker_box","label":"Harmonie carree: Lime Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.959},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.959},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.945},{"type":"color_square","target":"minecraft:allium","label":"Harmonie carree: Allium","confidence":0.942},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:pink_tulip","name":"Pink Tulip","entry_type":"block","description":"Tulips are a kind of flower found in plains and flower forests that come in multiple colored variants: red, orange, white, and pink. They yield dyes of their respective colors, with the exception of white tulips, which yield light gray dye, and all of them are used to craft suspicious stew.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added tulips."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell tulips."}],"colors":{"primary":"#639d4e","dominant_hex":"#147c04","average_hex":"#639d4e","hue_group":"green","lightness":0.4608,"saturation":0.3362,"palette":["#147c04","#54ac2c","#4c8c2c","#efcffc","#549c2c","#e4acf4"],"color_groups":[{"hex":"#147c04","weight":0.2683,"lightness":0.251,"saturation":0.9375,"hue_group":"green"},{"hex":"#54ac2c","weight":0.2439,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#4c8c2c","weight":0.1707,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#efcffc","weight":0.1463,"lightness":0.9,"saturation":0.8824,"hue_group":"purple"},{"hex":"#549c2c","weight":0.0976,"lightness":0.3922,"saturation":0.56,"hue_group":"green"},{"hex":"#e4acf4","weight":0.0732,"lightness":0.8157,"saturation":0.766,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pink_tulip.png","family":"pink_tulip","relations":[{"type":"visual_neighbors","target":"minecraft:potted_pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_propagule","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_pink_tulip","label":"Palette proche: Potted Pink Tulip","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.783},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.783},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.761},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.761},{"type":"color_neighbors","target":"minecraft:lilac","label":"Palette proche: Lilac","confidence":0.756},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.746},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.746},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.722},{"type":"color_neighbors","target":"minecraft:lily_of_the_valley","label":"Palette proche: Lily Of The Valley","confidence":0.656},{"type":"color_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Palette proche: Potted Lily Of The Valley","confidence":0.656},{"type":"color_neighbors","target":"minecraft:peony","label":"Palette proche: Peony","confidence":0.646},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.799},{"type":"color_bridge","target":"minecraft:peony","label":"Pont de nuance par sous-ton: Peony","confidence":0.709},{"type":"color_bridge","target":"minecraft:potted_flowering_azalea_bush","label":"Pont de nuance par palette: Potted Flowering Azalea Bush","confidence":0.687},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.596},{"type":"color_bridge","target":"minecraft:cornflower","label":"Pont de nuance par palette: Cornflower","confidence":0.587},{"type":"color_bridge","target":"minecraft:potted_cornflower","label":"Pont de nuance par palette: Potted Cornflower","confidence":0.587},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.58},{"type":"color_analogous","target":"minecraft:potted_pink_tulip","label":"Couleurs analogues: Potted Pink Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_white_tulip","label":"Couleurs analogues: Potted White Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:white_tulip","label":"Couleurs analogues: White Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:beetroots","label":"Couleurs analogues: Beetroots","confidence":0.96},{"type":"color_analogous","target":"minecraft:sunflower","label":"Couleurs analogues: Sunflower","confidence":0.952},{"type":"color_analogous","target":"minecraft:slime_block","label":"Couleurs analogues: Slime Block","confidence":0.893},{"type":"color_analogous","target":"minecraft:potatoes","label":"Couleurs analogues: Potatoes","confidence":0.89},{"type":"color_analogous","target":"minecraft:test_block","label":"Couleurs analogues: Test Block","confidence":0.887},{"type":"color_complement","target":"minecraft:magenta_stained_glass","label":"Contraste complementaire: Magenta Stained Glass","confidence":0.958},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.943},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.759},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.726},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.726},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.706},{"type":"color_complement","target":"minecraft:dragon_egg","label":"Contraste complementaire: Dragon Egg","confidence":0.669},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.645},{"type":"color_triad","target":"minecraft:tube_coral_fan","label":"Harmonie triadique: Tube Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:tube_coral_wall_fan","label":"Harmonie triadique: Tube Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:black_concrete","label":"Harmonie triadique: Black Concrete","confidence":0.952},{"type":"color_triad","target":"minecraft:potted_crimson_roots","label":"Harmonie triadique: Potted Crimson Roots","confidence":0.93},{"type":"color_triad","target":"minecraft:tube_coral_block","label":"Harmonie triadique: Tube Coral Block","confidence":0.919},{"type":"color_triad","target":"minecraft:tube_coral","label":"Harmonie triadique: Tube Coral","confidence":0.907},{"type":"color_triad","target":"minecraft:crimson_roots","label":"Harmonie triadique: Crimson Roots","confidence":0.905},{"type":"color_triad","target":"minecraft:cracked_nether_bricks","label":"Harmonie triadique: Cracked Nether Bricks","confidence":0.848},{"type":"color_square","target":"minecraft:brick_slab","label":"Harmonie carree: Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:brick_stairs","label":"Harmonie carree: Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:brick_wall","label":"Harmonie carree: Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:bricks","label":"Harmonie carree: Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:chiseled_copper","label":"Harmonie carree: Chiseled Copper","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_chiseled_copper","label":"Harmonie carree: Waxed Chiseled Copper","confidence":0.96},{"type":"color_square","target":"minecraft:cut_copper","label":"Harmonie carree: Cut Copper","confidence":0.96},{"type":"color_square","target":"minecraft:cut_copper_slab","label":"Harmonie carree: Cut Copper Slab","confidence":0.96},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55}],"category":"natural"},{"id":"minecraft:pink_wall_banner","name":"Pink Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"pink_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:pink_wool","name":"Pink Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#ee8dac","dominant_hex":"#ec80a1","average_hex":"#ee8dac","hue_group":"red","lightness":0.7431,"saturation":0.7405,"palette":["#ec80a1","#f498b4","#df6e97","#f4a3bf","#f4b2c9","#f48dac"],"color_groups":[{"hex":"#ec80a1","weight":0.2578,"lightness":0.7137,"saturation":0.7397,"hue_group":"red"},{"hex":"#f498b4","weight":0.1797,"lightness":0.7765,"saturation":0.807,"hue_group":"red"},{"hex":"#df6e97","weight":0.1758,"lightness":0.6529,"saturation":0.6384,"hue_group":"red"},{"hex":"#f4a3bf","weight":0.1523,"lightness":0.798,"saturation":0.7864,"hue_group":"red"},{"hex":"#f4b2c9","weight":0.1211,"lightness":0.8275,"saturation":0.75,"hue_group":"red"},{"hex":"#f48dac","weight":0.1133,"lightness":0.7549,"saturation":0.824,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pink_wool.png","family":"pink_wool","relations":[{"type":"visual_neighbors","target":"minecraft:pink_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pink_carpet","label":"Palette proche: Pink Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Palette proche: Pink Stained Glass Pane","confidence":0.919},{"type":"color_neighbors","target":"minecraft:pink_stained_glass","label":"Palette proche: Pink Stained Glass","confidence":0.891},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.874},{"type":"color_neighbors","target":"minecraft:pink_concrete_powder","label":"Palette proche: Pink Concrete Powder","confidence":0.862},{"type":"color_neighbors","target":"minecraft:pink_petals","label":"Palette proche: Pink Petals","confidence":0.791},{"type":"color_neighbors","target":"minecraft:pink_concrete","label":"Palette proche: Pink Concrete","confidence":0.786},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.746},{"type":"color_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Palette proche: Magenta Glazed Terracotta","confidence":0.742},{"type":"color_neighbors","target":"minecraft:cherry_leaves","label":"Palette proche: Cherry Leaves","confidence":0.72},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.689},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.689},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.58},{"type":"color_bridge","target":"minecraft:pale_oak_stairs","label":"Pont de nuance par sous-ton: Pale Oak Stairs","confidence":0.58},{"type":"color_analogous","target":"minecraft:pink_carpet","label":"Couleurs analogues: Pink Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_stained_glass_pane","label":"Couleurs analogues: Pink Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_stained_glass","label":"Couleurs analogues: Pink Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_glazed_terracotta","label":"Couleurs analogues: Pink Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_shulker_box","label":"Couleurs analogues: Pink Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_concrete_powder","label":"Couleurs analogues: Pink Concrete Powder","confidence":0.934},{"type":"color_analogous","target":"minecraft:magenta_terracotta","label":"Couleurs analogues: Magenta Terracotta","confidence":0.919},{"type":"color_analogous","target":"minecraft:cherry_leaves","label":"Couleurs analogues: Cherry Leaves","confidence":0.917},{"type":"color_complement","target":"minecraft:oxidized_copper_chain","label":"Contraste complementaire: Oxidized Copper Chain","confidence":0.918},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chain","label":"Contraste complementaire: Waxed Oxidized Copper Chain","confidence":0.918},{"type":"color_complement","target":"minecraft:oxidized_copper_door","label":"Contraste complementaire: Oxidized Copper Door","confidence":0.905},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_door","label":"Contraste complementaire: Waxed Oxidized Copper Door","confidence":0.905},{"type":"color_complement","target":"minecraft:oxidized_lightning_rod","label":"Contraste complementaire: Oxidized Lightning Rod","confidence":0.904},{"type":"color_complement","target":"minecraft:waxed_oxidized_lightning_rod","label":"Contraste complementaire: Waxed Oxidized Lightning Rod","confidence":0.904},{"type":"color_complement","target":"minecraft:oxidized_copper","label":"Contraste complementaire: Oxidized Copper","confidence":0.857},{"type":"color_complement","target":"minecraft:oxidized_copper_chest","label":"Contraste complementaire: Oxidized Copper Chest","confidence":0.857},{"type":"color_triad","target":"minecraft:lapis_block","label":"Harmonie triadique: Lapis Block","confidence":0.96},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.912},{"type":"color_triad","target":"minecraft:ice","label":"Harmonie triadique: Ice","confidence":0.906},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.897},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.897},{"type":"color_triad","target":"minecraft:potted_spruce_sapling","label":"Harmonie triadique: Potted Spruce Sapling","confidence":0.895},{"type":"color_triad","target":"minecraft:spruce_sapling","label":"Harmonie triadique: Spruce Sapling","confidence":0.895},{"type":"color_triad","target":"minecraft:seagrass","label":"Harmonie triadique: Seagrass","confidence":0.892},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.96},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.96},{"type":"color_square","target":"minecraft:wither_rose","label":"Harmonie carree: Wither Rose","confidence":0.96},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.946},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.943},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.939},{"type":"color_square","target":"minecraft:bamboo_block","label":"Harmonie carree: Bamboo Block","confidence":0.932},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.591},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.587},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.584},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.584},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.581},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.579},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.568}],"category":"decorative"},{"id":"minecraft:piston","name":"Piston","entry_type":"block","description":"A piston is a block capable of pushing most entities and blocks when given a redstone signal. Some blocks cannot be moved, break when pushed or have other interactions with pistons. A piston can move up to twelve blocks at once.","history":[{"version":"1.7","status":"added","notes":"Added pistons, alongside associated head and moving blocks."},{"version":"18w46a","status":"added","notes":"Added support for directional opacity of blocks. As such, extended pistons now allow light to only pass through certain faces."},{"version":"1.15 19w41a","status":"added","notes":"Added honey blocks, which have multiple different types of interactions with pistons."}],"colors":{"primary":"#6e6961","dominant_hex":"#9b8f7a","average_hex":"#6e6961","hue_group":"neutral","lightness":0.4059,"saturation":0.0628,"palette":["#9b8f7a","#59554d","#757473","#6c6c6c","#444444","#313131"],"color_groups":[{"hex":"#9b8f7a","weight":0.3047,"lightness":0.5431,"saturation":0.1416,"hue_group":"yellow"},{"hex":"#59554d","weight":0.2148,"lightness":0.3255,"saturation":0.0723,"hue_group":"neutral"},{"hex":"#757473","weight":0.1523,"lightness":0.4549,"saturation":0.0086,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.125,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.1133,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#313131","weight":0.0898,"lightness":0.1922,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/piston_side.png","family":"piston","relations":[{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:moving_piston","label":"Palette proche: Moving Piston","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piston_head","label":"Palette proche: Piston Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sticky_piston","label":"Palette proche: Sticky Piston","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.9},{"type":"color_neighbors","target":"minecraft:dead_tube_coral","label":"Palette proche: Dead Tube Coral","confidence":0.898},{"type":"color_neighbors","target":"minecraft:dropper","label":"Palette proche: Dropper","confidence":0.897},{"type":"color_neighbors","target":"minecraft:smoker","label":"Palette proche: Smoker","confidence":0.897},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.896},{"type":"color_neighbors","target":"minecraft:acacia_log","label":"Palette proche: Acacia Log","confidence":0.895},{"type":"color_neighbors","target":"minecraft:acacia_wood","label":"Palette proche: Acacia Wood","confidence":0.895},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.893},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.892},{"type":"color_bridge","target":"minecraft:moving_piston","label":"Pont de nuance par palette: Moving Piston","confidence":0.86},{"type":"color_bridge","target":"minecraft:piston_head","label":"Pont de nuance par palette: Piston Head","confidence":0.86},{"type":"color_bridge","target":"minecraft:sticky_piston","label":"Pont de nuance par palette: Sticky Piston","confidence":0.86},{"type":"color_bridge","target":"minecraft:dispenser","label":"Pont de nuance par palette: Dispenser","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral","label":"Pont de nuance par palette: Dead Tube Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dropper","label":"Pont de nuance par palette: Dropper","confidence":0.86},{"type":"color_bridge","target":"minecraft:smoker","label":"Pont de nuance par palette: Smoker","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.556},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55}],"category":"redstone"},{"id":"minecraft:piston_head","name":"Piston Head","entry_type":"block","description":"Pistons and sticky pistons have 2 technical blocks that cannot be obtained. These include the piston head and moving piston blocks.","history":[{"version":"1.8 14w29a","status":"added","notes":"Added the \"short=true/false\" block state to piston_head."},{"version":"1.11.1 16w50a","status":"added","notes":"Added a new byte tag source for the piston_extension block entity, which is true if the block represents the piston head itself, and false if it represents a block being pushed."}],"colors":{"primary":"#6e6961","dominant_hex":"#9b8f7a","average_hex":"#6e6961","hue_group":"neutral","lightness":0.4059,"saturation":0.0628,"palette":["#9b8f7a","#59554d","#757473","#6c6c6c","#444444","#313131"],"color_groups":[{"hex":"#9b8f7a","weight":0.3047,"lightness":0.5431,"saturation":0.1416,"hue_group":"yellow"},{"hex":"#59554d","weight":0.2148,"lightness":0.3255,"saturation":0.0723,"hue_group":"neutral"},{"hex":"#757473","weight":0.1523,"lightness":0.4549,"saturation":0.0086,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.125,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.1133,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#313131","weight":0.0898,"lightness":0.1922,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/piston_side.png","family":"piston_head","relations":[{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:moving_piston","label":"Palette proche: Moving Piston","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piston","label":"Palette proche: Piston","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sticky_piston","label":"Palette proche: Sticky Piston","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.9},{"type":"color_neighbors","target":"minecraft:dead_tube_coral","label":"Palette proche: Dead Tube Coral","confidence":0.898},{"type":"color_neighbors","target":"minecraft:dropper","label":"Palette proche: Dropper","confidence":0.897},{"type":"color_neighbors","target":"minecraft:smoker","label":"Palette proche: Smoker","confidence":0.897},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.896},{"type":"color_neighbors","target":"minecraft:acacia_log","label":"Palette proche: Acacia Log","confidence":0.895},{"type":"color_neighbors","target":"minecraft:acacia_wood","label":"Palette proche: Acacia Wood","confidence":0.895},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.893},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.892},{"type":"color_bridge","target":"minecraft:moving_piston","label":"Pont de nuance par palette: Moving Piston","confidence":0.86},{"type":"color_bridge","target":"minecraft:piston","label":"Pont de nuance par palette: Piston","confidence":0.86},{"type":"color_bridge","target":"minecraft:sticky_piston","label":"Pont de nuance par palette: Sticky Piston","confidence":0.86},{"type":"color_bridge","target":"minecraft:dispenser","label":"Pont de nuance par palette: Dispenser","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral","label":"Pont de nuance par palette: Dead Tube Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dropper","label":"Pont de nuance par palette: Dropper","confidence":0.86},{"type":"color_bridge","target":"minecraft:smoker","label":"Pont de nuance par palette: Smoker","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.556},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55}],"category":"redstone"},{"id":"minecraft:pitcher_crop","name":"Pitcher Crop","entry_type":"block","description":"A pitcher pod is an ancient bulbous seed that has a chance to be dropped by sniffers when they finish digging. It is the seed of pitcher plants.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added pitcher crops and pods."}],"colors":{"primary":"#c2a667","dominant_hex":"#ccac6c","average_hex":"#c2a667","hue_group":"yellow","lightness":0.5824,"saturation":0.4272,"palette":["#ccac6c","#c4a46c","#c49c64","#9c945c","#74884c","#b49c64"],"color_groups":[{"hex":"#ccac6c","weight":0.44,"lightness":0.6118,"saturation":0.4848,"hue_group":"yellow"},{"hex":"#c4a46c","weight":0.32,"lightness":0.5961,"saturation":0.4272,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.12,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#9c945c","weight":0.06,"lightness":0.4863,"saturation":0.2581,"hue_group":"yellow"},{"hex":"#74884c","weight":0.04,"lightness":0.4157,"saturation":0.283,"hue_group":"yellow"},{"hex":"#b49c64","weight":0.02,"lightness":0.549,"saturation":0.3478,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pitcher_crop_top.png","family":"pitcher_crop","relations":[{"type":"visual_neighbors","target":"minecraft:sugar_cane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azure_bluet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_azure_bluet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.922},{"type":"color_neighbors","target":"minecraft:beehive","label":"Palette proche: Beehive","confidence":0.918},{"type":"color_neighbors","target":"minecraft:oak_hanging_sign","label":"Palette proche: Oak Hanging Sign","confidence":0.906},{"type":"color_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Palette proche: Oak Wall Hanging Sign","confidence":0.906},{"type":"color_neighbors","target":"minecraft:stripped_oak_log","label":"Palette proche: Stripped Oak Log","confidence":0.906},{"type":"color_neighbors","target":"minecraft:stripped_oak_wood","label":"Palette proche: Stripped Oak Wood","confidence":0.906},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.894},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.894},{"type":"color_neighbors","target":"minecraft:stripped_birch_log","label":"Palette proche: Stripped Birch Log","confidence":0.894},{"type":"color_neighbors","target":"minecraft:stripped_birch_wood","label":"Palette proche: Stripped Birch Wood","confidence":0.894},{"type":"color_neighbors","target":"minecraft:birch_shelf","label":"Palette proche: Birch Shelf","confidence":0.882},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.882},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.819},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.809},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.804},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.786},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.786},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.781},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.781},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.781},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.778},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.778},{"type":"color_analogous","target":"minecraft:bee_nest","label":"Couleurs analogues: Bee Nest","confidence":0.96},{"type":"color_analogous","target":"minecraft:fletching_table","label":"Couleurs analogues: Fletching Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:dirt_path","label":"Couleurs analogues: Dirt Path","confidence":0.96},{"type":"color_analogous","target":"minecraft:raw_gold_block","label":"Couleurs analogues: Raw Gold Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_glazed_terracotta","label":"Couleurs analogues: Yellow Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_concrete","label":"Couleurs analogues: Yellow Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:honey_block","label":"Couleurs analogues: Honey Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:tall_dry_grass","label":"Couleurs analogues: Tall Dry Grass","confidence":0.951},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.944},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.934},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.883},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.883},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.863},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.859},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.856},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.846},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.926},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.918},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.918},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.903},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.903},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.902},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.902},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.899},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.881},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.783},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.748},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.721},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.721},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.72},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.715},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.699},{"type":"value_contrast","target":"minecraft:jungle_log","label":"Contraste clair sombre: Jungle Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_wood","label":"Contraste clair sombre: Jungle Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_hanging_sign","label":"Contraste clair sombre: Dark Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wall_hanging_sign","label":"Contraste clair sombre: Dark Oak Wall Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_log","label":"Contraste clair sombre: Stripped Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_wood","label":"Contraste clair sombre: Stripped Dark Oak Wood","confidence":0.55}],"category":""},{"id":"minecraft:pitcher_plant","name":"Pitcher Plant","entry_type":"block","description":"A pitcher plant is a tall ancient flower that grows from a pitcher pod.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added pitcher plants."}],"colors":{"primary":"#687e5d","dominant_hex":"#446c44","average_hex":"#687e5d","hue_group":"green","lightness":0.4294,"saturation":0.1507,"palette":["#446c44","#97a453","#6c844c","#3c4c3c","#7484b4","#7cacc4"],"color_groups":[{"hex":"#446c44","weight":0.2561,"lightness":0.3451,"saturation":0.2273,"hue_group":"green"},{"hex":"#97a453","weight":0.2561,"lightness":0.4843,"saturation":0.3279,"hue_group":"yellow"},{"hex":"#6c844c","weight":0.1829,"lightness":0.4078,"saturation":0.2692,"hue_group":"yellow"},{"hex":"#3c4c3c","weight":0.1341,"lightness":0.2667,"saturation":0.1176,"hue_group":"neutral"},{"hex":"#7484b4","weight":0.122,"lightness":0.5804,"saturation":0.2991,"hue_group":"blue"},{"hex":"#7cacc4","weight":0.0488,"lightness":0.6275,"saturation":0.3789,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pitcher_crop_bottom_stage_4.png","family":"pitcher_plant","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal_frame","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_tuff","label":"Palette proche: Chiseled Tuff","confidence":0.773},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Palette proche: Waxed Weathered Copper Bulb","confidence":0.772},{"type":"color_neighbors","target":"minecraft:weathered_copper_bulb","label":"Palette proche: Weathered Copper Bulb","confidence":0.772},{"type":"color_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Palette proche: Chiseled Tuff Bricks","confidence":0.759},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Palette proche: Waxed Weathered Copper Bars","confidence":0.756},{"type":"color_neighbors","target":"minecraft:weathered_copper_bars","label":"Palette proche: Weathered Copper Bars","confidence":0.756},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Palette proche: Waxed Weathered Copper Lantern","confidence":0.752},{"type":"color_neighbors","target":"minecraft:weathered_copper_lantern","label":"Palette proche: Weathered Copper Lantern","confidence":0.752},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.749},{"type":"color_neighbors","target":"minecraft:tuff_brick_stairs","label":"Palette proche: Tuff Brick Stairs","confidence":0.749},{"type":"color_neighbors","target":"minecraft:tuff_brick_wall","label":"Palette proche: Tuff Brick Wall","confidence":0.749},{"type":"color_neighbors","target":"minecraft:tuff_bricks","label":"Palette proche: Tuff Bricks","confidence":0.749},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.813},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par palette: Waxed Weathered Copper Bulb","confidence":0.813},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par palette: Weathered Copper Bulb","confidence":0.813},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.802},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par palette: Waxed Weathered Copper Bars","confidence":0.799},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par palette: Weathered Copper Bars","confidence":0.799},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par palette: Waxed Weathered Copper Lantern","confidence":0.796},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par palette: Weathered Copper Lantern","confidence":0.796},{"type":"color_bridge","target":"minecraft:tuff_brick_slab","label":"Pont de nuance par palette: Tuff Brick Slab","confidence":0.793},{"type":"color_bridge","target":"minecraft:tuff_brick_stairs","label":"Pont de nuance par palette: Tuff Brick Stairs","confidence":0.793},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55}],"category":""},{"id":"minecraft:pitcher_pod","name":"Pitcher Pod","entry_type":"item","description":"A pitcher pod is an ancient bulbous seed that has a chance to be dropped by sniffers when they finish digging. It is the seed of pitcher plants.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added pitcher crops and pods."}],"colors":{"primary":"#684434","dominant_hex":"#4c3424","average_hex":"#684434","hue_group":"red","lightness":0.3059,"saturation":0.3333,"palette":["#4c3424","#643c34","#7c544c","#34241c","#c08352","#7c4424"],"color_groups":[{"hex":"#4c3424","weight":0.2435,"lightness":0.2196,"saturation":0.3571,"hue_group":"red"},{"hex":"#643c34","weight":0.2087,"lightness":0.298,"saturation":0.3158,"hue_group":"red"},{"hex":"#7c544c","weight":0.1913,"lightness":0.3922,"saturation":0.24,"hue_group":"red"},{"hex":"#34241c","weight":0.1826,"lightness":0.1569,"saturation":0.3,"hue_group":"red"},{"hex":"#c08352","weight":0.1304,"lightness":0.5373,"saturation":0.4661,"hue_group":"red"},{"hex":"#7c4424","weight":0.0435,"lightness":0.3137,"saturation":0.55,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/pitcher_pod.png","family":"pitcher_pod","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_horse_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:plenty_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:player_head","name":"Player Head","entry_type":"block","description":"The player head is a block based on the head of a player's skin (Steve by default). Player heads cannot be obtained in Survival.","history":[{"version":"1.4.2 12w36a","status":"added","notes":"Added heads, obtainable only from the Creative inventory ."},{"version":"1 ]","status":"added","notes":"Added as a hidden and disabled feature, player heads can now have the skin of a specific player . A line in the language file implies that there either used to be, or in a future update, the possibility of obtaining a sp"}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"player_head","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Palette proche: Wither Skeleton Wall Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:skeleton_skull","label":"Couleurs analogues: Skeleton Skull","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":"decorative"},{"id":"minecraft:player_wall_head","name":"Player Wall Head","entry_type":"block","description":"The player head is a block based on the head of a player's skin (Steve by default). Player heads cannot be obtained in Survival.","history":[{"version":"1.4.2 12w36a","status":"added","notes":"Added heads, obtainable only from the Creative inventory ."},{"version":"1 ]","status":"added","notes":"Added as a hidden and disabled feature, player heads can now have the skin of a specific player . A line in the language file implies that there either used to be, or in a future update, the possibility of obtaining a sp"}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"player_wall_head","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Palette proche: Wither Skeleton Wall Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:skeleton_skull","label":"Couleurs analogues: Skeleton Skull","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":"decorative"},{"id":"minecraft:plenty_pottery_sherd","name":"Plenty Pottery Sherd","entry_type":"item","description":"A plenty pottery sherd is a pottery sherd that depicts an open chest. It can be found in cold ocean ruins.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added plenty pottery shards."}],"colors":{"primary":"#673a30","dominant_hex":"#5c342c","average_hex":"#673a30","hue_group":"red","lightness":0.2961,"saturation":0.3642,"palette":["#5c342c","#8c5141","#542c24","#744434","#44241c","#6c3c34"],"color_groups":[{"hex":"#5c342c","weight":0.242,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#8c5141","weight":0.2229,"lightness":0.402,"saturation":0.3659,"hue_group":"red"},{"hex":"#542c24","weight":0.1656,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#744434","weight":0.1529,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#44241c","weight":0.1465,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#6c3c34","weight":0.0701,"lightness":0.3137,"saturation":0.35,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/plenty_pottery_sherd.png","family":"plenty_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:flow_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:podzol","name":"Podzol","entry_type":"block","description":"Podzol is a dirt-type block that naturally blankets the surface of the old growth taiga and bamboo jungles, along with their respective variants. Grass blocks and mycelium cannot spread to this block.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added podzol."},{"version":"19w05a","status":"added","notes":"Added wandering traders , which sell podzol, making it renewable ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb podzol, providing the football/regular effect to the mob."}],"colors":{"primary":"#5c3f18","dominant_hex":"#543c1c","average_hex":"#5c3f18","hue_group":"yellow","lightness":0.2275,"saturation":0.5862,"palette":["#543c1c","#6c441c","#4c341c","#544c14","#8c5c24","#ac6424"],"color_groups":[{"hex":"#543c1c","weight":0.3672,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"},{"hex":"#6c441c","weight":0.2578,"lightness":0.2667,"saturation":0.5882,"hue_group":"yellow"},{"hex":"#4c341c","weight":0.2188,"lightness":0.2039,"saturation":0.4615,"hue_group":"yellow"},{"hex":"#544c14","weight":0.0742,"lightness":0.2039,"saturation":0.6154,"hue_group":"yellow"},{"hex":"#8c5c24","weight":0.0625,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"},{"hex":"#ac6424","weight":0.0195,"lightness":0.4078,"saturation":0.6538,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/podzol_top.png","family":"podzol","relations":[{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cartography_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.915},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.915},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.915},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.915},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.915},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.915},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.915},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.915},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.915},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.905},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.897},{"type":"color_neighbors","target":"minecraft:brown_concrete","label":"Palette proche: Brown Concrete","confidence":0.891},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.779},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.775},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.775},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.767},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.765},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.765},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.751},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.743},{"type":"color_bridge","target":"minecraft:cave_vines","label":"Pont de nuance par palette: Cave Vines","confidence":0.739},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.721},{"type":"color_analogous","target":"minecraft:dead_bush","label":"Couleurs analogues: Dead Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_dead_bush","label":"Couleurs analogues: Potted Dead Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_hanging_sign","label":"Couleurs analogues: Dark Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_wall_hanging_sign","label":"Couleurs analogues: Dark Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_dark_oak_log","label":"Couleurs analogues: Stripped Dark Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_dark_oak_wood","label":"Couleurs analogues: Stripped Dark Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_roots","label":"Couleurs analogues: Mangrove Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_log","label":"Couleurs analogues: Oak Log","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.957},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.868},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.856},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.835},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.818},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.811},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.802},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.952},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.944},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.942},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.936},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.941},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.859},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.71},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.677},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.665},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.665},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.665},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.665},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.655},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.633}],"category":""},{"id":"minecraft:pointed_dripstone","name":"Pointed Dripstone","entry_type":"block","description":"Pointed dripstone is a block that forms stalactites and stalagmites. Stalactites (which point downward) grow over time under certain conditions, can serve as falling projectiles, can renewably drip water and lava into cauldrons and convert mud into clay. Stalagmites (which point upward) deal extra damage to players and mobs that land on them.","history":[{"version":"1.17 20w48a","status":"added","notes":"Added pointed dripstone."}],"colors":{"primary":"#81675a","dominant_hex":"#644c44","average_hex":"#81675a","hue_group":"red","lightness":0.4294,"saturation":0.1781,"palette":["#644c44","#846454","#947c64","#745454","#a48c74"],"color_groups":[{"hex":"#644c44","weight":0.2174,"lightness":0.3294,"saturation":0.1905,"hue_group":"red"},{"hex":"#846454","weight":0.2174,"lightness":0.4235,"saturation":0.2222,"hue_group":"red"},{"hex":"#947c64","weight":0.2,"lightness":0.4863,"saturation":0.1935,"hue_group":"red"},{"hex":"#745454","weight":0.1826,"lightness":0.3922,"saturation":0.16,"hue_group":"red"},{"hex":"#a48c74","weight":0.1826,"lightness":0.549,"saturation":0.2087,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pointed_dripstone_down_base.png","family":"pointed_dripstone","relations":[{"type":"visual_neighbors","target":"minecraft:dripstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:detector_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewing_stand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_redstone_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dripstone_block","label":"Palette proche: Dripstone Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mud_brick_slab","label":"Palette proche: Mud Brick Slab","confidence":0.922},{"type":"color_neighbors","target":"minecraft:mud_brick_stairs","label":"Palette proche: Mud Brick Stairs","confidence":0.922},{"type":"color_neighbors","target":"minecraft:mud_brick_wall","label":"Palette proche: Mud Brick Wall","confidence":0.922},{"type":"color_neighbors","target":"minecraft:mud_bricks","label":"Palette proche: Mud Bricks","confidence":0.922},{"type":"color_neighbors","target":"minecraft:packed_mud","label":"Palette proche: Packed Mud","confidence":0.91},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.891},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.891},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.888},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.888},{"type":"color_neighbors","target":"minecraft:light_gray_terracotta","label":"Palette proche: Light Gray Terracotta","confidence":0.886},{"type":"color_neighbors","target":"minecraft:brown_mushroom_block","label":"Palette proche: Brown Mushroom Block","confidence":0.885},{"type":"color_bridge","target":"minecraft:mud_brick_slab","label":"Pont de nuance par sous-ton: Mud Brick Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:mud_brick_stairs","label":"Pont de nuance par sous-ton: Mud Brick Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:mud_brick_wall","label":"Pont de nuance par sous-ton: Mud Brick Wall","confidence":0.9},{"type":"color_bridge","target":"minecraft:mud_bricks","label":"Pont de nuance par sous-ton: Mud Bricks","confidence":0.9},{"type":"color_bridge","target":"minecraft:packed_mud","label":"Pont de nuance par sous-ton: Packed Mud","confidence":0.9},{"type":"color_bridge","target":"minecraft:brown_mushroom_block","label":"Pont de nuance par sous-ton: Brown Mushroom Block","confidence":0.9},{"type":"color_bridge","target":"minecraft:creeper_head","label":"Pont de nuance par sous-ton: Creeper Head","confidence":0.894},{"type":"color_bridge","target":"minecraft:creeper_wall_head","label":"Pont de nuance par sous-ton: Creeper Wall Head","confidence":0.894},{"type":"color_bridge","target":"minecraft:dragon_head","label":"Pont de nuance par sous-ton: Dragon Head","confidence":0.894},{"type":"color_bridge","target":"minecraft:dragon_wall_head","label":"Pont de nuance par sous-ton: Dragon Wall Head","confidence":0.894},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":""},{"id":"minecraft:poisonous_potato","name":"Poisonous Potato","entry_type":"item","description":"A poisonous potato is a type of potato that can poison the player.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added poisonous potatoes."}],"colors":{"primary":"#8d8336","dominant_hex":"#ccc54f","average_hex":"#8d8336","hue_group":"yellow","lightness":0.3824,"saturation":0.4462,"palette":["#ccc54f","#824204","#6d833c","#bf8d3f","#4c643c","#345434"],"color_groups":[{"hex":"#ccc54f","weight":0.2778,"lightness":0.5549,"saturation":0.5507,"hue_group":"yellow"},{"hex":"#824204","weight":0.1852,"lightness":0.2627,"saturation":0.9403,"hue_group":"red"},{"hex":"#6d833c","weight":0.1574,"lightness":0.3745,"saturation":0.3717,"hue_group":"yellow"},{"hex":"#bf8d3f","weight":0.1574,"lightness":0.498,"saturation":0.5039,"hue_group":"yellow"},{"hex":"#4c643c","weight":0.1204,"lightness":0.3137,"saturation":0.25,"hue_group":"green"},{"hex":"#345434","weight":0.1019,"lightness":0.2667,"saturation":0.2353,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/poisonous_potato.png","family":"poisonous_potato","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:golden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_chest_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:experience_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone_dust","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clock","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:polar_bear_spawn_egg","name":"Polar Bear Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#bebbb8","dominant_hex":"#d4d4cc","average_hex":"#bebbb8","hue_group":"neutral","lightness":0.7333,"saturation":0.0441,"palette":["#d4d4cc","#7e7676","#f4f4ec","#fcfcfc","#2b2b35","#aca49c"],"color_groups":[{"hex":"#d4d4cc","weight":0.2789,"lightness":0.8157,"saturation":0.0851,"hue_group":"neutral"},{"hex":"#7e7676","weight":0.2632,"lightness":0.4784,"saturation":0.0328,"hue_group":"neutral"},{"hex":"#f4f4ec","weight":0.2632,"lightness":0.9412,"saturation":0.2667,"hue_group":"yellow"},{"hex":"#fcfcfc","weight":0.0895,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2b2b35","weight":0.0526,"lightness":0.1882,"saturation":0.1042,"hue_group":"neutral"},{"hex":"#aca49c","weight":0.0526,"lightness":0.6431,"saturation":0.0879,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/polar_bear_spawn_egg.png","family":"polar_bear_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:white_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_tears","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:paper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tipped_arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sugar","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:feather","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:splash_potion","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:polarbear","name":"Polarbear","entry_type":"mob","description":"Polar bears are large neutral mobs that live in icy biomes. Adult polar bears are protective of their babies, attacking players that get too close or attack any babies near them.","history":[{"version":"1.10 16w20a","status":"added","notes":"Added polar bears."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby polar bears from growing up."}],"colors":{"primary":"#e9e9e4","dominant_hex":"#f4f4f4","average_hex":"#e9e9e4","hue_group":"neutral","lightness":0.9039,"saturation":0.102,"palette":["#f4f4f4","#d4d4cc","#ececdc","#e4e4dc","#bbb4ac","#1c241c"],"color_groups":[{"hex":"#f4f4f4","weight":0.5059,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d4d4cc","weight":0.1878,"lightness":0.8157,"saturation":0.0851,"hue_group":"neutral"},{"hex":"#ececdc","weight":0.1502,"lightness":0.8941,"saturation":0.2963,"hue_group":"yellow"},{"hex":"#e4e4dc","weight":0.1171,"lightness":0.8784,"saturation":0.129,"hue_group":"yellow"},{"hex":"#bbb4ac","weight":0.0317,"lightness":0.7039,"saturation":0.0993,"hue_group":"neutral"},{"hex":"#1c241c","weight":0.0074,"lightness":0.1255,"saturation":0.125,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/bear/polarbear.png","family":"polarbear","relations":[{"type":"visual_neighbors","target":"minecraft:ghast_shooting","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool_undercoat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/caerbannog","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitefield","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:polished_andesite","name":"Polished Andesite","entry_type":"block","description":"Polished andesite is the polished version of andesite.","history":[{"version":"1.8 14w02a","status":"added","notes":"Added polished andesite."}],"colors":{"primary":"#848786","dominant_hex":"#848c84","average_hex":"#848786","hue_group":"neutral","lightness":0.5235,"saturation":0.0123,"palette":["#848c84","#797980","#8c9296","#5c5c5c","#b4b4ac","#a4a49c"],"color_groups":[{"hex":"#848c84","weight":0.3242,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#797980","weight":0.2891,"lightness":0.4882,"saturation":0.0281,"hue_group":"neutral"},{"hex":"#8c9296","weight":0.1562,"lightness":0.5686,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0938,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4ac","weight":0.0938,"lightness":0.6902,"saturation":0.0506,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.043,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_andesite.png","family":"polished_andesite","relations":[{"type":"variants","target":"minecraft:polished_andesite_slab","label":"Same family: polished_andesite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_andesite_slab","label":"Related set: polished_andesite","confidence":0.8},{"type":"variants","target":"minecraft:polished_andesite_stairs","label":"Same family: polished_andesite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_andesite_stairs","label":"Related set: polished_andesite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:polished_andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_pad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_bars","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gravel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_andesite_slab","label":"Palette proche: Polished Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_andesite_stairs","label":"Palette proche: Polished Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.811},{"type":"color_neighbors","target":"minecraft:pale_moss_block","label":"Palette proche: Pale Moss Block","confidence":0.804},{"type":"color_neighbors","target":"minecraft:pale_moss_carpet","label":"Palette proche: Pale Moss Carpet","confidence":0.804},{"type":"color_neighbors","target":"minecraft:pale_hanging_moss","label":"Palette proche: Pale Hanging Moss","confidence":0.801},{"type":"color_neighbors","target":"minecraft:reinforced_deepslate","label":"Palette proche: Reinforced Deepslate","confidence":0.795},{"type":"color_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Palette proche: Light Gray Concrete Powder","confidence":0.787},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.766},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.766},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.766},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.766},{"type":"color_bridge","target":"minecraft:polished_andesite_slab","label":"Pont de nuance par palette: Polished Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_andesite_stairs","label":"Pont de nuance par palette: Polished Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.844},{"type":"color_bridge","target":"minecraft:pale_moss_block","label":"Pont de nuance par palette: Pale Moss Block","confidence":0.839},{"type":"color_bridge","target":"minecraft:pale_moss_carpet","label":"Pont de nuance par palette: Pale Moss Carpet","confidence":0.839},{"type":"color_bridge","target":"minecraft:pale_hanging_moss","label":"Pont de nuance par palette: Pale Hanging Moss","confidence":0.836},{"type":"color_bridge","target":"minecraft:reinforced_deepslate","label":"Pont de nuance par palette: Reinforced Deepslate","confidence":0.831},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.825},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.808},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.808},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:dried_kelp_block","label":"Contraste clair sombre: Dried Kelp Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55}],"category":""},{"id":"minecraft:polished_andesite_slab","name":"Polished Andesite Slab","entry_type":"block","description":"A polished andesite slab is a decorative slab variant of polished andesite that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added polished andesite slabs."}],"colors":{"primary":"#848786","dominant_hex":"#848c84","average_hex":"#848786","hue_group":"neutral","lightness":0.5235,"saturation":0.0123,"palette":["#848c84","#797980","#8c9296","#5c5c5c","#b4b4ac","#a4a49c"],"color_groups":[{"hex":"#848c84","weight":0.3242,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#797980","weight":0.2891,"lightness":0.4882,"saturation":0.0281,"hue_group":"neutral"},{"hex":"#8c9296","weight":0.1562,"lightness":0.5686,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0938,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4ac","weight":0.0938,"lightness":0.6902,"saturation":0.0506,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.043,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_andesite.png","family":"polished_andesite","relations":[{"type":"variants","target":"minecraft:polished_andesite","label":"Same family: polished_andesite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_andesite","label":"Related set: polished_andesite","confidence":0.8},{"type":"variants","target":"minecraft:polished_andesite_stairs","label":"Same family: polished_andesite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_andesite_stairs","label":"Related set: polished_andesite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:polished_andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_pad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_bars","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gravel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_andesite","label":"Palette proche: Polished Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_andesite_stairs","label":"Palette proche: Polished Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.811},{"type":"color_neighbors","target":"minecraft:pale_moss_block","label":"Palette proche: Pale Moss Block","confidence":0.804},{"type":"color_neighbors","target":"minecraft:pale_moss_carpet","label":"Palette proche: Pale Moss Carpet","confidence":0.804},{"type":"color_neighbors","target":"minecraft:pale_hanging_moss","label":"Palette proche: Pale Hanging Moss","confidence":0.801},{"type":"color_neighbors","target":"minecraft:reinforced_deepslate","label":"Palette proche: Reinforced Deepslate","confidence":0.795},{"type":"color_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Palette proche: Light Gray Concrete Powder","confidence":0.787},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.766},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.766},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.766},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.766},{"type":"color_bridge","target":"minecraft:polished_andesite","label":"Pont de nuance par palette: Polished Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_andesite_stairs","label":"Pont de nuance par palette: Polished Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.844},{"type":"color_bridge","target":"minecraft:pale_moss_block","label":"Pont de nuance par palette: Pale Moss Block","confidence":0.839},{"type":"color_bridge","target":"minecraft:pale_moss_carpet","label":"Pont de nuance par palette: Pale Moss Carpet","confidence":0.839},{"type":"color_bridge","target":"minecraft:pale_hanging_moss","label":"Pont de nuance par palette: Pale Hanging Moss","confidence":0.836},{"type":"color_bridge","target":"minecraft:reinforced_deepslate","label":"Pont de nuance par palette: Reinforced Deepslate","confidence":0.831},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.825},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.808},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.808},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:dried_kelp_block","label":"Contraste clair sombre: Dried Kelp Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55}],"category":"building"},{"id":"minecraft:polished_andesite_stairs","name":"Polished Andesite Stairs","entry_type":"block","description":"Polished andesite stairs are a decorative stairs variant of polished andesite used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added polished andesite stairs."}],"colors":{"primary":"#848786","dominant_hex":"#848c84","average_hex":"#848786","hue_group":"neutral","lightness":0.5235,"saturation":0.0123,"palette":["#848c84","#797980","#8c9296","#5c5c5c","#b4b4ac","#a4a49c"],"color_groups":[{"hex":"#848c84","weight":0.3242,"lightness":0.5333,"saturation":0.0336,"hue_group":"neutral"},{"hex":"#797980","weight":0.2891,"lightness":0.4882,"saturation":0.0281,"hue_group":"neutral"},{"hex":"#8c9296","weight":0.1562,"lightness":0.5686,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0938,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4ac","weight":0.0938,"lightness":0.6902,"saturation":0.0506,"hue_group":"neutral"},{"hex":"#a4a49c","weight":0.043,"lightness":0.6275,"saturation":0.0421,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_andesite.png","family":"polished_andesite","relations":[{"type":"variants","target":"minecraft:polished_andesite","label":"Same family: polished_andesite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_andesite","label":"Related set: polished_andesite","confidence":0.8},{"type":"variants","target":"minecraft:polished_andesite_slab","label":"Same family: polished_andesite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_andesite_slab","label":"Related set: polished_andesite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:polished_andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_pad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_bars","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gravel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_andesite","label":"Palette proche: Polished Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_andesite_slab","label":"Palette proche: Polished Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.811},{"type":"color_neighbors","target":"minecraft:pale_moss_block","label":"Palette proche: Pale Moss Block","confidence":0.804},{"type":"color_neighbors","target":"minecraft:pale_moss_carpet","label":"Palette proche: Pale Moss Carpet","confidence":0.804},{"type":"color_neighbors","target":"minecraft:pale_hanging_moss","label":"Palette proche: Pale Hanging Moss","confidence":0.801},{"type":"color_neighbors","target":"minecraft:reinforced_deepslate","label":"Palette proche: Reinforced Deepslate","confidence":0.795},{"type":"color_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Palette proche: Light Gray Concrete Powder","confidence":0.787},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.766},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.766},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.766},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.766},{"type":"color_bridge","target":"minecraft:polished_andesite","label":"Pont de nuance par palette: Polished Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_andesite_slab","label":"Pont de nuance par palette: Polished Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.844},{"type":"color_bridge","target":"minecraft:pale_moss_block","label":"Pont de nuance par palette: Pale Moss Block","confidence":0.839},{"type":"color_bridge","target":"minecraft:pale_moss_carpet","label":"Pont de nuance par palette: Pale Moss Carpet","confidence":0.839},{"type":"color_bridge","target":"minecraft:pale_hanging_moss","label":"Pont de nuance par palette: Pale Hanging Moss","confidence":0.836},{"type":"color_bridge","target":"minecraft:reinforced_deepslate","label":"Pont de nuance par palette: Reinforced Deepslate","confidence":0.831},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.825},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.808},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.808},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:dried_kelp_block","label":"Contraste clair sombre: Dried Kelp Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55}],"category":"building"},{"id":"minecraft:polished_basalt","name":"Polished Basalt","entry_type":"block","description":"Polished basalt is the polished version of basalt and can be found as part of ancient cities and bastion remnants.","history":[{"version":"1.16 20w12a","status":"added","notes":"Added polished basalt."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb polished basalt, providing the football/regular effect to the mob."}],"colors":{"primary":"#59585c","dominant_hex":"#747474","average_hex":"#59585c","hue_group":"neutral","lightness":0.3529,"saturation":0.0222,"palette":["#747474","#5c5c5c","#4c4c4c","#3c3c4c","#34343c","#1c2434"],"color_groups":[{"hex":"#747474","weight":0.3281,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.2617,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1992,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c4c","weight":0.1016,"lightness":0.2667,"saturation":0.1176,"hue_group":"neutral"},{"hex":"#34343c","weight":0.0781,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#1c2434","weight":0.0312,"lightness":0.1569,"saturation":0.3,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_basalt_side.png","family":"polished_basalt","relations":[{"type":"visual_neighbors","target":"minecraft:deepslate_copper_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bedrock","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:basalt","label":"Palette proche: Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_bridge","target":"minecraft:smooth_basalt","label":"Pont de nuance par palette: Smooth Basalt","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:basalt","label":"Pont de nuance par palette: Basalt","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.598},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.57},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.569},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.569},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.564},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_stairs","label":"Contraste clair sombre: Polished Diorite Stairs","confidence":0.55}],"category":"natural"},{"id":"minecraft:polished_blackstone","name":"Polished Blackstone","entry_type":"block","description":"Polished blackstone is the stone-like polished variation of blackstone.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added polished blackstone."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb polished blackstone, providing the football/regular effect to the mob."}],"colors":{"primary":"#353139","dominant_hex":"#3c3c44","average_hex":"#353139","hue_group":"neutral","lightness":0.2078,"saturation":0.0755,"palette":["#3c3c44","#342c34","#24241c","#4c4c54","#1c141c","#140c14"],"color_groups":[{"hex":"#3c3c44","weight":0.3125,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#342c34","weight":0.3086,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#24241c","weight":0.1797,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#4c4c54","weight":0.1328,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#1c141c","weight":0.0586,"lightness":0.0941,"saturation":0.1667,"hue_group":"purple"},{"hex":"#140c14","weight":0.0078,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_blackstone.png","family":"polished_blackstone","relations":[{"type":"variants","target":"minecraft:polished_blackstone_slab","label":"Same family: polished_blackstone","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_blackstone_slab","label":"Related set: polished_blackstone","confidence":0.8},{"type":"variants","target":"minecraft:polished_blackstone_stairs","label":"Same family: polished_blackstone","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_blackstone_stairs","label":"Related set: polished_blackstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Palette proche: Chiseled Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_slab","label":"Palette proche: Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_stairs","label":"Palette proche: Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:chiseled_polished_blackstone","label":"Pont de nuance par palette: Chiseled Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_stairs","label":"Pont de nuance par palette: Polished Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_wall","label":"Pont de nuance par palette: Polished Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_slab","label":"Pont de nuance par palette: Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_stairs","label":"Pont de nuance par palette: Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.736},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.707},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.706},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.706},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.703},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.68},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.679},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.679}],"category":""},{"id":"minecraft:polished_blackstone_brick_slab","name":"Polished Blackstone Brick Slab","entry_type":"block","description":"A polished blackstone brick slab is a decorative slab variant of polished blackstone bricks that generates in ruined portals and is used for building.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added polished blackstone brick slabs."}],"colors":{"primary":"#302b32","dominant_hex":"#3c3c44","average_hex":"#302b32","hue_group":"neutral","lightness":0.1824,"saturation":0.0753,"palette":["#3c3c44","#342c34","#24241c","#24141c","#4c4c54","#140c14"],"color_groups":[{"hex":"#3c3c44","weight":0.2617,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#342c34","weight":0.2305,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#24241c","weight":0.1758,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#24141c","weight":0.1602,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#4c4c54","weight":0.0898,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#140c14","weight":0.082,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_blackstone_bricks.png","family":"polished_blackstone_brick","relations":[{"type":"variants","target":"minecraft:polished_blackstone_brick_stairs","label":"Same family: polished_blackstone_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_blackstone_brick_stairs","label":"Related set: polished_blackstone_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tinted_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blackstone","label":"Palette proche: Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_wall","label":"Palette proche: Blackstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Palette proche: Cracked Polished Blackstone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:blackstone","label":"Pont de nuance par palette: Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_wall","label":"Pont de nuance par palette: Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_polished_blackstone_bricks","label":"Pont de nuance par palette: Cracked Polished Blackstone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_wall","label":"Pont de nuance par palette: Polished Blackstone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_bricks","label":"Pont de nuance par palette: Polished Blackstone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.762},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.729},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.729},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.728},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.728},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.706},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.705},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.705}],"category":"building"},{"id":"minecraft:polished_blackstone_brick_stairs","name":"Polished Blackstone Brick Stairs","entry_type":"block","description":"Polished blackstone brick stairs are a decorative stairs variant of polished blackstone bricks that generates in Nether structures and is used for building.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added polished blackstone brick stairs."}],"colors":{"primary":"#302b32","dominant_hex":"#3c3c44","average_hex":"#302b32","hue_group":"neutral","lightness":0.1824,"saturation":0.0753,"palette":["#3c3c44","#342c34","#24241c","#24141c","#4c4c54","#140c14"],"color_groups":[{"hex":"#3c3c44","weight":0.2617,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#342c34","weight":0.2305,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#24241c","weight":0.1758,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#24141c","weight":0.1602,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#4c4c54","weight":0.0898,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#140c14","weight":0.082,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_blackstone_bricks.png","family":"polished_blackstone_brick","relations":[{"type":"variants","target":"minecraft:polished_blackstone_brick_slab","label":"Same family: polished_blackstone_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_blackstone_brick_slab","label":"Related set: polished_blackstone_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tinted_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blackstone","label":"Palette proche: Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_wall","label":"Palette proche: Blackstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Palette proche: Cracked Polished Blackstone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:blackstone","label":"Pont de nuance par palette: Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_wall","label":"Pont de nuance par palette: Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_polished_blackstone_bricks","label":"Pont de nuance par palette: Cracked Polished Blackstone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_wall","label":"Pont de nuance par palette: Polished Blackstone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_bricks","label":"Pont de nuance par palette: Polished Blackstone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.762},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.729},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.729},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.728},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.728},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.706},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.705},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.705}],"category":"building"},{"id":"minecraft:polished_blackstone_brick_wall","name":"Polished Blackstone Brick Wall","entry_type":"block","description":"A polished blackstone brick wall is a decorative wall variant of polished blackstone bricks that generates in ruined portals and is used for building.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added polished blackstone brick walls."}],"colors":{"primary":"#302b32","dominant_hex":"#3c3c44","average_hex":"#302b32","hue_group":"neutral","lightness":0.1824,"saturation":0.0753,"palette":["#3c3c44","#342c34","#24241c","#24141c","#4c4c54","#140c14"],"color_groups":[{"hex":"#3c3c44","weight":0.2617,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#342c34","weight":0.2305,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#24241c","weight":0.1758,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#24141c","weight":0.1602,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#4c4c54","weight":0.0898,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#140c14","weight":0.082,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_blackstone_bricks.png","family":"polished_blackstone_brick_wall","relations":[{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tinted_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blackstone","label":"Palette proche: Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_wall","label":"Palette proche: Blackstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Palette proche: Cracked Polished Blackstone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:blackstone","label":"Pont de nuance par palette: Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_wall","label":"Pont de nuance par palette: Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_polished_blackstone_bricks","label":"Pont de nuance par palette: Cracked Polished Blackstone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_bricks","label":"Pont de nuance par palette: Polished Blackstone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.762},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.729},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.729},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.728},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.728},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.706},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.705},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.705}],"category":"building"},{"id":"minecraft:polished_blackstone_bricks","name":"Polished Blackstone Bricks","entry_type":"block","description":"Polished blackstone bricks are a decorative version of polished blackstone.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added polished blackstone bricks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb polished blackstone bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#302b32","dominant_hex":"#3c3c44","average_hex":"#302b32","hue_group":"neutral","lightness":0.1824,"saturation":0.0753,"palette":["#3c3c44","#342c34","#24241c","#24141c","#4c4c54","#140c14"],"color_groups":[{"hex":"#3c3c44","weight":0.2617,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#342c34","weight":0.2305,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#24241c","weight":0.1758,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#24141c","weight":0.1602,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#4c4c54","weight":0.0898,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#140c14","weight":0.082,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_blackstone_bricks.png","family":"polished_blackstone_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tinted_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blackstone","label":"Palette proche: Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_wall","label":"Palette proche: Blackstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Palette proche: Cracked Polished Blackstone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:blackstone","label":"Pont de nuance par palette: Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_wall","label":"Pont de nuance par palette: Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_polished_blackstone_bricks","label":"Pont de nuance par palette: Cracked Polished Blackstone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_wall","label":"Pont de nuance par palette: Polished Blackstone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.762},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.729},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.729},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.728},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.728},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.706},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.705},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.705}],"category":"building"},{"id":"minecraft:polished_blackstone_button","name":"Polished Blackstone Button","entry_type":"block","description":"A polished blackstone button is a variant of the button that shares many common properties with stone buttons. Like stone buttons, a polished blackstone button is a non-solid block that produces a temporary redstone signal when pressed.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added polished blackstone buttons."}],"colors":{"primary":"#353139","dominant_hex":"#3c3c44","average_hex":"#353139","hue_group":"neutral","lightness":0.2078,"saturation":0.0755,"palette":["#3c3c44","#342c34","#24241c","#4c4c54","#1c141c","#140c14"],"color_groups":[{"hex":"#3c3c44","weight":0.3125,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#342c34","weight":0.3086,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#24241c","weight":0.1797,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#4c4c54","weight":0.1328,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#1c141c","weight":0.0586,"lightness":0.0941,"saturation":0.1667,"hue_group":"purple"},{"hex":"#140c14","weight":0.0078,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_blackstone.png","family":"polished_blackstone_button","relations":[{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Palette proche: Chiseled Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_slab","label":"Palette proche: Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_stairs","label":"Palette proche: Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:chiseled_polished_blackstone","label":"Pont de nuance par palette: Chiseled Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_stairs","label":"Pont de nuance par palette: Polished Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_wall","label":"Pont de nuance par palette: Polished Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_slab","label":"Pont de nuance par palette: Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_stairs","label":"Pont de nuance par palette: Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.736},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.707},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.706},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.706},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.703},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.68},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.679},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.679}],"category":"building"},{"id":"minecraft:polished_blackstone_pressure_plate","name":"Polished Blackstone Pressure Plate","entry_type":"block","description":"A polished blackstone pressure plate is a polished blackstone variant of the pressure plate that can detect only players and mobs.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added polished blackstone pressure plate."}],"colors":{"primary":"#353139","dominant_hex":"#3c3c44","average_hex":"#353139","hue_group":"neutral","lightness":0.2078,"saturation":0.0755,"palette":["#3c3c44","#342c34","#24241c","#4c4c54","#1c141c","#140c14"],"color_groups":[{"hex":"#3c3c44","weight":0.3125,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#342c34","weight":0.3086,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#24241c","weight":0.1797,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#4c4c54","weight":0.1328,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#1c141c","weight":0.0586,"lightness":0.0941,"saturation":0.1667,"hue_group":"purple"},{"hex":"#140c14","weight":0.0078,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_blackstone.png","family":"polished_blackstone_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Palette proche: Chiseled Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_slab","label":"Palette proche: Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_stairs","label":"Palette proche: Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:chiseled_polished_blackstone","label":"Pont de nuance par palette: Chiseled Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_stairs","label":"Pont de nuance par palette: Polished Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_wall","label":"Pont de nuance par palette: Polished Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_slab","label":"Pont de nuance par palette: Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_stairs","label":"Pont de nuance par palette: Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.736},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.707},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.706},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.706},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.703},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.68},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.679},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.679}],"category":"building"},{"id":"minecraft:polished_blackstone_slab","name":"Polished Blackstone Slab","entry_type":"block","description":"A polished blackstone slab is a decorative slab variant of polished blackstone that generates in ruined portals and is used for building.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added polished blackstone slabs."}],"colors":{"primary":"#353139","dominant_hex":"#3c3c44","average_hex":"#353139","hue_group":"neutral","lightness":0.2078,"saturation":0.0755,"palette":["#3c3c44","#342c34","#24241c","#4c4c54","#1c141c","#140c14"],"color_groups":[{"hex":"#3c3c44","weight":0.3125,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#342c34","weight":0.3086,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#24241c","weight":0.1797,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#4c4c54","weight":0.1328,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#1c141c","weight":0.0586,"lightness":0.0941,"saturation":0.1667,"hue_group":"purple"},{"hex":"#140c14","weight":0.0078,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_blackstone.png","family":"polished_blackstone","relations":[{"type":"variants","target":"minecraft:polished_blackstone","label":"Same family: polished_blackstone","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_blackstone","label":"Related set: polished_blackstone","confidence":0.8},{"type":"variants","target":"minecraft:polished_blackstone_stairs","label":"Same family: polished_blackstone","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_blackstone_stairs","label":"Related set: polished_blackstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Palette proche: Chiseled Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_slab","label":"Palette proche: Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_stairs","label":"Palette proche: Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:chiseled_polished_blackstone","label":"Pont de nuance par palette: Chiseled Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_stairs","label":"Pont de nuance par palette: Polished Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_wall","label":"Pont de nuance par palette: Polished Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_slab","label":"Pont de nuance par palette: Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_stairs","label":"Pont de nuance par palette: Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.736},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.707},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.706},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.706},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.703},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.68},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.679},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.679}],"category":"building"},{"id":"minecraft:polished_blackstone_stairs","name":"Polished Blackstone Stairs","entry_type":"block","description":"Polished blackstone stairs are a decorative stairs variant of polished blackstone that generates in ruined portals and is used for building.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added polished blackstone stairs."}],"colors":{"primary":"#353139","dominant_hex":"#3c3c44","average_hex":"#353139","hue_group":"neutral","lightness":0.2078,"saturation":0.0755,"palette":["#3c3c44","#342c34","#24241c","#4c4c54","#1c141c","#140c14"],"color_groups":[{"hex":"#3c3c44","weight":0.3125,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#342c34","weight":0.3086,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#24241c","weight":0.1797,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#4c4c54","weight":0.1328,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#1c141c","weight":0.0586,"lightness":0.0941,"saturation":0.1667,"hue_group":"purple"},{"hex":"#140c14","weight":0.0078,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_blackstone.png","family":"polished_blackstone","relations":[{"type":"variants","target":"minecraft:polished_blackstone","label":"Same family: polished_blackstone","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_blackstone","label":"Related set: polished_blackstone","confidence":0.8},{"type":"variants","target":"minecraft:polished_blackstone_slab","label":"Same family: polished_blackstone","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_blackstone_slab","label":"Related set: polished_blackstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Palette proche: Chiseled Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_wall","label":"Palette proche: Polished Blackstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_slab","label":"Palette proche: Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_stairs","label":"Palette proche: Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:chiseled_polished_blackstone","label":"Pont de nuance par palette: Chiseled Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_wall","label":"Pont de nuance par palette: Polished Blackstone Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_slab","label":"Pont de nuance par palette: Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_stairs","label":"Pont de nuance par palette: Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.736},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.707},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.706},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.706},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.703},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.68},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.679},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.679}],"category":"building"},{"id":"minecraft:polished_blackstone_wall","name":"Polished Blackstone Wall","entry_type":"block","description":"A polished blackstone wall is a decorative wall variant of polished blackstone that does not generate naturally and is used for building.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added polished blackstone walls."}],"colors":{"primary":"#353139","dominant_hex":"#3c3c44","average_hex":"#353139","hue_group":"neutral","lightness":0.2078,"saturation":0.0755,"palette":["#3c3c44","#342c34","#24241c","#4c4c54","#1c141c","#140c14"],"color_groups":[{"hex":"#3c3c44","weight":0.3125,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#342c34","weight":0.3086,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#24241c","weight":0.1797,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#4c4c54","weight":0.1328,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#1c141c","weight":0.0586,"lightness":0.0941,"saturation":0.1667,"hue_group":"purple"},{"hex":"#140c14","weight":0.0078,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_blackstone.png","family":"polished_blackstone_wall","relations":[{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Palette proche: Chiseled Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_button","label":"Palette proche: Polished Blackstone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_pressure_plate","label":"Palette proche: Polished Blackstone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_slab","label":"Palette proche: Polished Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_stairs","label":"Palette proche: Polished Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_slab","label":"Palette proche: Blackstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blackstone_stairs","label":"Palette proche: Blackstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:chiseled_polished_blackstone","label":"Pont de nuance par palette: Chiseled Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_stairs","label":"Pont de nuance par palette: Polished Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_slab","label":"Pont de nuance par palette: Blackstone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:blackstone_stairs","label":"Pont de nuance par palette: Blackstone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.736},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.707},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.706},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.706},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.703},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.68},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.679},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.679}],"category":"building"},{"id":"minecraft:polished_deepslate","name":"Polished Deepslate","entry_type":"block","description":"Polished deepslate is the stone-like polished version of deepslate.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added polished grimstone."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb polished deepslate, providing the football/regular effect to the mob."}],"colors":{"primary":"#484949","dominant_hex":"#5c5c5c","average_hex":"#484949","hue_group":"neutral","lightness":0.2843,"saturation":0.0069,"palette":["#5c5c5c","#2a2a2a","#4c4c4c","#444444","#6c6c6c","#3c3434"],"color_groups":[{"hex":"#5c5c5c","weight":0.2969,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2a2a2a","weight":0.1992,"lightness":0.1647,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1875,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.1602,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0859,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.0703,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_deepslate.png","family":"polished_deepslate","relations":[{"type":"variants","target":"minecraft:polished_deepslate_slab","label":"Same family: polished_deepslate","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_deepslate_slab","label":"Related set: polished_deepslate","confidence":0.8},{"type":"variants","target":"minecraft:polished_deepslate_stairs","label":"Same family: polished_deepslate","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_deepslate_stairs","label":"Related set: polished_deepslate","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.94},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.652},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.646},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.645},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.645},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.618},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.602},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.602},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.596}],"category":""},{"id":"minecraft:polished_deepslate_slab","name":"Polished Deepslate Slab","entry_type":"block","description":"A polished deepslate slab is a decorative slab variant of polished deepslate that generates in ancient cities and is used for building.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added polished grimstone slabs."}],"colors":{"primary":"#484949","dominant_hex":"#5c5c5c","average_hex":"#484949","hue_group":"neutral","lightness":0.2843,"saturation":0.0069,"palette":["#5c5c5c","#2a2a2a","#4c4c4c","#444444","#6c6c6c","#3c3434"],"color_groups":[{"hex":"#5c5c5c","weight":0.2969,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2a2a2a","weight":0.1992,"lightness":0.1647,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1875,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.1602,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0859,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.0703,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_deepslate.png","family":"polished_deepslate","relations":[{"type":"variants","target":"minecraft:polished_deepslate","label":"Same family: polished_deepslate","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_deepslate","label":"Related set: polished_deepslate","confidence":0.8},{"type":"variants","target":"minecraft:polished_deepslate_stairs","label":"Same family: polished_deepslate","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_deepslate_stairs","label":"Related set: polished_deepslate","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.94},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.652},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.646},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.645},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.645},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.618},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.602},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.602},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.596}],"category":"building"},{"id":"minecraft:polished_deepslate_stairs","name":"Polished Deepslate Stairs","entry_type":"block","description":"Polished deepslate stairs are a decorative stairs variant of polished deepslate that generates in ancient cities and is used for building.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added polished grimstone stairs."}],"colors":{"primary":"#484949","dominant_hex":"#5c5c5c","average_hex":"#484949","hue_group":"neutral","lightness":0.2843,"saturation":0.0069,"palette":["#5c5c5c","#2a2a2a","#4c4c4c","#444444","#6c6c6c","#3c3434"],"color_groups":[{"hex":"#5c5c5c","weight":0.2969,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2a2a2a","weight":0.1992,"lightness":0.1647,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1875,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.1602,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0859,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.0703,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_deepslate.png","family":"polished_deepslate","relations":[{"type":"variants","target":"minecraft:polished_deepslate","label":"Same family: polished_deepslate","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_deepslate","label":"Related set: polished_deepslate","confidence":0.8},{"type":"variants","target":"minecraft:polished_deepslate_slab","label":"Same family: polished_deepslate","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_deepslate_slab","label":"Related set: polished_deepslate","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.94},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.652},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.646},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.645},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.645},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.618},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.602},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.602},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.596}],"category":"building"},{"id":"minecraft:polished_deepslate_wall","name":"Polished Deepslate Wall","entry_type":"block","description":"A polished deepslate wall is a decorative wall variant of polished deepslate that generates in ancient cities and is used for building.","history":[{"version":"1.17 21w07a","status":"added","notes":"Added polished grimstone walls."}],"colors":{"primary":"#484949","dominant_hex":"#5c5c5c","average_hex":"#484949","hue_group":"neutral","lightness":0.2843,"saturation":0.0069,"palette":["#5c5c5c","#2a2a2a","#4c4c4c","#444444","#6c6c6c","#3c3434"],"color_groups":[{"hex":"#5c5c5c","weight":0.2969,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2a2a2a","weight":0.1992,"lightness":0.1647,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1875,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.1602,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0859,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.0703,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_deepslate.png","family":"polished_deepslate_wall","relations":[{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.94},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.652},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.646},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.645},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.645},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.618},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.602},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.602},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.596}],"category":"building"},{"id":"minecraft:polished_diorite","name":"Polished Diorite","entry_type":"block","description":"Polished diorite is the polished version of diorite.","history":[{"version":"1.8 14w02a","status":"added","notes":"Added polished diorite."}],"colors":{"primary":"#c1c1c3","dominant_hex":"#cccccc","average_hex":"#c1c1c3","hue_group":"neutral","lightness":0.7608,"saturation":0.0164,"palette":["#cccccc","#dcdcdc","#bcbcc4","#e4e4e4","#727276","#acacac"],"color_groups":[{"hex":"#cccccc","weight":0.2344,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.2266,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcc4","weight":0.1836,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.1562,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#727276","weight":0.1211,"lightness":0.4549,"saturation":0.0172,"hue_group":"neutral"},{"hex":"#acacac","weight":0.0781,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_diorite.png","family":"polished_diorite","relations":[{"type":"variants","target":"minecraft:polished_diorite_slab","label":"Same family: polished_diorite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_diorite_slab","label":"Related set: polished_diorite","confidence":0.8},{"type":"variants","target":"minecraft:polished_diorite_stairs","label":"Same family: polished_diorite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_diorite_stairs","label":"Related set: polished_diorite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:polished_diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_column","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leaf_litter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite","label":"Palette proche: Diorite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_slab","label":"Palette proche: Diorite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_stairs","label":"Palette proche: Diorite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_wall","label":"Palette proche: Diorite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.898},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.891},{"type":"color_neighbors","target":"minecraft:water","label":"Palette proche: Water","confidence":0.891},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.888},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.888},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.883},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite_stairs","label":"Pont de nuance par palette: Polished Diorite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite","label":"Pont de nuance par palette: Diorite","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_slab","label":"Pont de nuance par palette: Diorite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_stairs","label":"Pont de nuance par palette: Diorite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_wall","label":"Pont de nuance par palette: Diorite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:bubble_column","label":"Pont de nuance par palette: Bubble Column","confidence":0.86},{"type":"color_bridge","target":"minecraft:water","label":"Pont de nuance par palette: Water","confidence":0.86},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.668},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.662},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.644},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.641},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.641},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.641},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.641},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.632}],"category":""},{"id":"minecraft:polished_diorite_slab","name":"Polished Diorite Slab","entry_type":"block","description":"A polished diorite slab is a decorative slab variant of polished diorite that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added polished diorite slabs."}],"colors":{"primary":"#c1c1c3","dominant_hex":"#cccccc","average_hex":"#c1c1c3","hue_group":"neutral","lightness":0.7608,"saturation":0.0164,"palette":["#cccccc","#dcdcdc","#bcbcc4","#e4e4e4","#727276","#acacac"],"color_groups":[{"hex":"#cccccc","weight":0.2344,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.2266,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcc4","weight":0.1836,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.1562,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#727276","weight":0.1211,"lightness":0.4549,"saturation":0.0172,"hue_group":"neutral"},{"hex":"#acacac","weight":0.0781,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_diorite.png","family":"polished_diorite","relations":[{"type":"variants","target":"minecraft:polished_diorite","label":"Same family: polished_diorite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_diorite","label":"Related set: polished_diorite","confidence":0.8},{"type":"variants","target":"minecraft:polished_diorite_stairs","label":"Same family: polished_diorite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_diorite_stairs","label":"Related set: polished_diorite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:polished_diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_column","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leaf_litter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite","label":"Palette proche: Diorite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_slab","label":"Palette proche: Diorite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_stairs","label":"Palette proche: Diorite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_wall","label":"Palette proche: Diorite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.898},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.891},{"type":"color_neighbors","target":"minecraft:water","label":"Palette proche: Water","confidence":0.891},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.888},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.888},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.883},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite_stairs","label":"Pont de nuance par palette: Polished Diorite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite","label":"Pont de nuance par palette: Diorite","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_slab","label":"Pont de nuance par palette: Diorite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_stairs","label":"Pont de nuance par palette: Diorite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_wall","label":"Pont de nuance par palette: Diorite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:bubble_column","label":"Pont de nuance par palette: Bubble Column","confidence":0.86},{"type":"color_bridge","target":"minecraft:water","label":"Pont de nuance par palette: Water","confidence":0.86},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.668},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.662},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.644},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.641},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.641},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.641},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.641},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.632}],"category":"building"},{"id":"minecraft:polished_diorite_stairs","name":"Polished Diorite Stairs","entry_type":"block","description":"Polished diorite stairs are a decorative stairs variant of polished diorite used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added polished diorite stairs."}],"colors":{"primary":"#c1c1c3","dominant_hex":"#cccccc","average_hex":"#c1c1c3","hue_group":"neutral","lightness":0.7608,"saturation":0.0164,"palette":["#cccccc","#dcdcdc","#bcbcc4","#e4e4e4","#727276","#acacac"],"color_groups":[{"hex":"#cccccc","weight":0.2344,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.2266,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcc4","weight":0.1836,"lightness":0.7529,"saturation":0.0635,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.1562,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#727276","weight":0.1211,"lightness":0.4549,"saturation":0.0172,"hue_group":"neutral"},{"hex":"#acacac","weight":0.0781,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_diorite.png","family":"polished_diorite","relations":[{"type":"variants","target":"minecraft:polished_diorite","label":"Same family: polished_diorite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_diorite","label":"Related set: polished_diorite","confidence":0.8},{"type":"variants","target":"minecraft:polished_diorite_slab","label":"Same family: polished_diorite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_diorite_slab","label":"Related set: polished_diorite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:polished_diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_column","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leaf_litter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite","label":"Palette proche: Diorite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_slab","label":"Palette proche: Diorite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_stairs","label":"Palette proche: Diorite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:diorite_wall","label":"Palette proche: Diorite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.898},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.891},{"type":"color_neighbors","target":"minecraft:water","label":"Palette proche: Water","confidence":0.891},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.888},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.888},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.883},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite","label":"Pont de nuance par palette: Diorite","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_slab","label":"Pont de nuance par palette: Diorite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_stairs","label":"Pont de nuance par palette: Diorite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:diorite_wall","label":"Pont de nuance par palette: Diorite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:bubble_column","label":"Pont de nuance par palette: Bubble Column","confidence":0.86},{"type":"color_bridge","target":"minecraft:water","label":"Pont de nuance par palette: Water","confidence":0.86},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.668},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.662},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.644},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.641},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.641},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.641},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.641},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.632}],"category":"building"},{"id":"minecraft:polished_granite","name":"Polished Granite","entry_type":"block","description":"Polished granite is a processed and polished decorative form of granite.","history":[{"version":"1.8 14w02a","status":"added","notes":"Added polished granite."}],"colors":{"primary":"#9a6b59","dominant_hex":"#9c6c5c","average_hex":"#9a6b59","hue_group":"red","lightness":0.4765,"saturation":0.2675,"palette":["#9c6c5c","#946454","#bd9280","#584032","#ac7464","#7c5444"],"color_groups":[{"hex":"#9c6c5c","weight":0.4492,"lightness":0.4863,"saturation":0.2581,"hue_group":"red"},{"hex":"#946454","weight":0.1836,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#bd9280","weight":0.1445,"lightness":0.6216,"saturation":0.3161,"hue_group":"red"},{"hex":"#584032","weight":0.0781,"lightness":0.2706,"saturation":0.2754,"hue_group":"red"},{"hex":"#ac7464","weight":0.0781,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#7c5444","weight":0.0664,"lightness":0.3765,"saturation":0.2917,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_granite.png","family":"polished_granite","relations":[{"type":"variants","target":"minecraft:polished_granite_slab","label":"Same family: polished_granite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_granite_slab","label":"Related set: polished_granite","confidence":0.8},{"type":"variants","target":"minecraft:polished_granite_stairs","label":"Same family: polished_granite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_granite_stairs","label":"Related set: polished_granite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:polished_granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_brown_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hanging_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_granite_slab","label":"Palette proche: Polished Granite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite_stairs","label":"Palette proche: Polished Granite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite","label":"Palette proche: Granite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_slab","label":"Palette proche: Granite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_stairs","label":"Palette proche: Granite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_wall","label":"Palette proche: Granite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.891},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.891},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.89},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.89},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.89},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.89},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.897},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.897},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.897},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.897},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.897},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.897},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.896},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.894},{"type":"color_analogous","target":"minecraft:polished_granite_slab","label":"Couleurs analogues: Polished Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_stairs","label":"Couleurs analogues: Polished Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite","label":"Couleurs analogues: Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_slab","label":"Couleurs analogues: Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_stairs","label":"Couleurs analogues: Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_wall","label":"Couleurs analogues: Granite Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_lightning_rod","label":"Couleurs analogues: Exposed Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_lightning_rod","label":"Couleurs analogues: Waxed Exposed Lightning Rod","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.951},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.89},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.872},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.871},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.949},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.808},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.941},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.936},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.936},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.928},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.928},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.904},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.891},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.888},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":""},{"id":"minecraft:polished_granite_slab","name":"Polished Granite Slab","entry_type":"block","description":"A polished granite slab is a decorative slab variant of polished granite that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added polished granite slabs."}],"colors":{"primary":"#9a6b59","dominant_hex":"#9c6c5c","average_hex":"#9a6b59","hue_group":"red","lightness":0.4765,"saturation":0.2675,"palette":["#9c6c5c","#946454","#bd9280","#584032","#ac7464","#7c5444"],"color_groups":[{"hex":"#9c6c5c","weight":0.4492,"lightness":0.4863,"saturation":0.2581,"hue_group":"red"},{"hex":"#946454","weight":0.1836,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#bd9280","weight":0.1445,"lightness":0.6216,"saturation":0.3161,"hue_group":"red"},{"hex":"#584032","weight":0.0781,"lightness":0.2706,"saturation":0.2754,"hue_group":"red"},{"hex":"#ac7464","weight":0.0781,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#7c5444","weight":0.0664,"lightness":0.3765,"saturation":0.2917,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_granite.png","family":"polished_granite","relations":[{"type":"variants","target":"minecraft:polished_granite","label":"Same family: polished_granite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_granite","label":"Related set: polished_granite","confidence":0.8},{"type":"variants","target":"minecraft:polished_granite_stairs","label":"Same family: polished_granite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_granite_stairs","label":"Related set: polished_granite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:polished_granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_brown_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hanging_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_granite","label":"Palette proche: Polished Granite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite_stairs","label":"Palette proche: Polished Granite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite","label":"Palette proche: Granite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_slab","label":"Palette proche: Granite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_stairs","label":"Palette proche: Granite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_wall","label":"Palette proche: Granite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.891},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.891},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.89},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.89},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.89},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.89},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.897},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.897},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.897},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.897},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.897},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.897},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.896},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.894},{"type":"color_analogous","target":"minecraft:polished_granite","label":"Couleurs analogues: Polished Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_stairs","label":"Couleurs analogues: Polished Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite","label":"Couleurs analogues: Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_slab","label":"Couleurs analogues: Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_stairs","label":"Couleurs analogues: Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_wall","label":"Couleurs analogues: Granite Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_lightning_rod","label":"Couleurs analogues: Exposed Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_lightning_rod","label":"Couleurs analogues: Waxed Exposed Lightning Rod","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.951},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.89},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.872},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.871},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.949},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.808},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.941},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.936},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.936},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.928},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.928},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.904},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.891},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.888},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:polished_granite_stairs","name":"Polished Granite Stairs","entry_type":"block","description":"Polished granite stairs are a decorative stairs variant of polished granite used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added polished granite stairs."}],"colors":{"primary":"#9a6b59","dominant_hex":"#9c6c5c","average_hex":"#9a6b59","hue_group":"red","lightness":0.4765,"saturation":0.2675,"palette":["#9c6c5c","#946454","#bd9280","#584032","#ac7464","#7c5444"],"color_groups":[{"hex":"#9c6c5c","weight":0.4492,"lightness":0.4863,"saturation":0.2581,"hue_group":"red"},{"hex":"#946454","weight":0.1836,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#bd9280","weight":0.1445,"lightness":0.6216,"saturation":0.3161,"hue_group":"red"},{"hex":"#584032","weight":0.0781,"lightness":0.2706,"saturation":0.2754,"hue_group":"red"},{"hex":"#ac7464","weight":0.0781,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#7c5444","weight":0.0664,"lightness":0.3765,"saturation":0.2917,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_granite.png","family":"polished_granite","relations":[{"type":"variants","target":"minecraft:polished_granite","label":"Same family: polished_granite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_granite","label":"Related set: polished_granite","confidence":0.8},{"type":"variants","target":"minecraft:polished_granite_slab","label":"Same family: polished_granite","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_granite_slab","label":"Related set: polished_granite","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:polished_granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_brown_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hanging_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_granite","label":"Palette proche: Polished Granite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite_slab","label":"Palette proche: Polished Granite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite","label":"Palette proche: Granite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_slab","label":"Palette proche: Granite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_stairs","label":"Palette proche: Granite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:granite_wall","label":"Palette proche: Granite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.891},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.891},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.89},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.89},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.89},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.89},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.897},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.897},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.897},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.897},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.897},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.897},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.896},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.894},{"type":"color_analogous","target":"minecraft:polished_granite","label":"Couleurs analogues: Polished Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_slab","label":"Couleurs analogues: Polished Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite","label":"Couleurs analogues: Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_slab","label":"Couleurs analogues: Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_stairs","label":"Couleurs analogues: Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_wall","label":"Couleurs analogues: Granite Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_lightning_rod","label":"Couleurs analogues: Exposed Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_lightning_rod","label":"Couleurs analogues: Waxed Exposed Lightning Rod","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.951},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.89},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.872},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.871},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.949},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.808},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.941},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.936},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.936},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.928},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.928},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.904},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.891},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.888},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:polished_tuff","name":"Polished Tuff","entry_type":"block","description":"Polished tuff is the polished version of tuff.","history":[{"version":"1.20.3","status":"added","notes":"Added polished tuff behind the \" Update 1.21 \" experimental data pack ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb polished tuff, providing the football/regular effect to the mob."}],"colors":{"primary":"#626864","dominant_hex":"#646c6c","average_hex":"#626864","hue_group":"neutral","lightness":0.3961,"saturation":0.0297,"palette":["#646c6c","#5c645c","#50584e","#6c746c","#84847c","#74746c"],"color_groups":[{"hex":"#646c6c","weight":0.3047,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#5c645c","weight":0.25,"lightness":0.3765,"saturation":0.0417,"hue_group":"neutral"},{"hex":"#50584e","weight":0.1797,"lightness":0.3255,"saturation":0.0602,"hue_group":"neutral"},{"hex":"#6c746c","weight":0.1602,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#84847c","weight":0.0586,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"},{"hex":"#74746c","weight":0.0469,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_tuff.png","family":"polished_tuff","relations":[{"type":"variants","target":"minecraft:polished_tuff_slab","label":"Same family: polished_tuff","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_tuff_slab","label":"Related set: polished_tuff","confidence":0.8},{"type":"variants","target":"minecraft:polished_tuff_stairs","label":"Same family: polished_tuff","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_tuff_stairs","label":"Related set: polished_tuff","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_stairs","label":"Palette proche: Tuff Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_wall","label":"Palette proche: Tuff Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_bricks","label":"Palette proche: Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff","label":"Palette proche: Chiseled Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Palette proche: Chiseled Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.868},{"type":"color_neighbors","target":"minecraft:pale_moss_block","label":"Palette proche: Pale Moss Block","confidence":0.859},{"type":"color_neighbors","target":"minecraft:pale_moss_carpet","label":"Palette proche: Pale Moss Carpet","confidence":0.859},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_stairs","label":"Pont de nuance par palette: Polished Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_wall","label":"Pont de nuance par palette: Polished Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_slab","label":"Pont de nuance par palette: Tuff Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_stairs","label":"Pont de nuance par palette: Tuff Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_wall","label":"Pont de nuance par palette: Tuff Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_bricks","label":"Pont de nuance par palette: Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.551},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55}],"category":""},{"id":"minecraft:polished_tuff_slab","name":"Polished Tuff Slab","entry_type":"block","description":"A polished tuff slab is a decorative slab variant of polished tuff that generates in trial chambers and is used for building.","history":[{"version":"1.20.3","status":"added","notes":"Added polished tuff slabs."}],"colors":{"primary":"#626864","dominant_hex":"#646c6c","average_hex":"#626864","hue_group":"neutral","lightness":0.3961,"saturation":0.0297,"palette":["#646c6c","#5c645c","#50584e","#6c746c","#84847c","#74746c"],"color_groups":[{"hex":"#646c6c","weight":0.3047,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#5c645c","weight":0.25,"lightness":0.3765,"saturation":0.0417,"hue_group":"neutral"},{"hex":"#50584e","weight":0.1797,"lightness":0.3255,"saturation":0.0602,"hue_group":"neutral"},{"hex":"#6c746c","weight":0.1602,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#84847c","weight":0.0586,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"},{"hex":"#74746c","weight":0.0469,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_tuff.png","family":"polished_tuff","relations":[{"type":"variants","target":"minecraft:polished_tuff","label":"Same family: polished_tuff","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_tuff","label":"Related set: polished_tuff","confidence":0.8},{"type":"variants","target":"minecraft:polished_tuff_stairs","label":"Same family: polished_tuff","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_tuff_stairs","label":"Related set: polished_tuff","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_stairs","label":"Palette proche: Tuff Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_wall","label":"Palette proche: Tuff Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_bricks","label":"Palette proche: Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff","label":"Palette proche: Chiseled Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Palette proche: Chiseled Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.868},{"type":"color_neighbors","target":"minecraft:pale_moss_block","label":"Palette proche: Pale Moss Block","confidence":0.859},{"type":"color_neighbors","target":"minecraft:pale_moss_carpet","label":"Palette proche: Pale Moss Carpet","confidence":0.859},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_stairs","label":"Pont de nuance par palette: Polished Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_wall","label":"Pont de nuance par palette: Polished Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_slab","label":"Pont de nuance par palette: Tuff Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_stairs","label":"Pont de nuance par palette: Tuff Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_wall","label":"Pont de nuance par palette: Tuff Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_bricks","label":"Pont de nuance par palette: Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.551},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:polished_tuff_stairs","name":"Polished Tuff Stairs","entry_type":"block","description":"Polished tuff stairs are a decorative stairs variant of polished tuff that does not generate naturally and is used for building.","history":[{"version":"1.20.3","status":"added","notes":"Added polished tuff stairs."}],"colors":{"primary":"#626864","dominant_hex":"#646c6c","average_hex":"#626864","hue_group":"neutral","lightness":0.3961,"saturation":0.0297,"palette":["#646c6c","#5c645c","#50584e","#6c746c","#84847c","#74746c"],"color_groups":[{"hex":"#646c6c","weight":0.3047,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#5c645c","weight":0.25,"lightness":0.3765,"saturation":0.0417,"hue_group":"neutral"},{"hex":"#50584e","weight":0.1797,"lightness":0.3255,"saturation":0.0602,"hue_group":"neutral"},{"hex":"#6c746c","weight":0.1602,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#84847c","weight":0.0586,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"},{"hex":"#74746c","weight":0.0469,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_tuff.png","family":"polished_tuff","relations":[{"type":"variants","target":"minecraft:polished_tuff","label":"Same family: polished_tuff","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_tuff","label":"Related set: polished_tuff","confidence":0.8},{"type":"variants","target":"minecraft:polished_tuff_slab","label":"Same family: polished_tuff","confidence":0.75},{"type":"related_sets","target":"minecraft:polished_tuff_slab","label":"Related set: polished_tuff","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_stairs","label":"Palette proche: Tuff Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_wall","label":"Palette proche: Tuff Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_bricks","label":"Palette proche: Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff","label":"Palette proche: Chiseled Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Palette proche: Chiseled Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.868},{"type":"color_neighbors","target":"minecraft:pale_moss_block","label":"Palette proche: Pale Moss Block","confidence":0.859},{"type":"color_neighbors","target":"minecraft:pale_moss_carpet","label":"Palette proche: Pale Moss Carpet","confidence":0.859},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_wall","label":"Pont de nuance par palette: Polished Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_slab","label":"Pont de nuance par palette: Tuff Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_stairs","label":"Pont de nuance par palette: Tuff Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_wall","label":"Pont de nuance par palette: Tuff Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_bricks","label":"Pont de nuance par palette: Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.551},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:polished_tuff_wall","name":"Polished Tuff Wall","entry_type":"block","description":"A polished tuff wall is a decorative wall variant of polished tuff that does not generate naturally and is used for building.","history":[{"version":"1.20.3","status":"added","notes":"Added polished tuff walls."}],"colors":{"primary":"#626864","dominant_hex":"#646c6c","average_hex":"#626864","hue_group":"neutral","lightness":0.3961,"saturation":0.0297,"palette":["#646c6c","#5c645c","#50584e","#6c746c","#84847c","#74746c"],"color_groups":[{"hex":"#646c6c","weight":0.3047,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#5c645c","weight":0.25,"lightness":0.3765,"saturation":0.0417,"hue_group":"neutral"},{"hex":"#50584e","weight":0.1797,"lightness":0.3255,"saturation":0.0602,"hue_group":"neutral"},{"hex":"#6c746c","weight":0.1602,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#84847c","weight":0.0586,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"},{"hex":"#74746c","weight":0.0469,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/polished_tuff.png","family":"polished_tuff_wall","relations":[{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_stairs","label":"Palette proche: Tuff Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_wall","label":"Palette proche: Tuff Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_bricks","label":"Palette proche: Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff","label":"Palette proche: Chiseled Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Palette proche: Chiseled Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.868},{"type":"color_neighbors","target":"minecraft:pale_moss_block","label":"Palette proche: Pale Moss Block","confidence":0.859},{"type":"color_neighbors","target":"minecraft:pale_moss_carpet","label":"Palette proche: Pale Moss Carpet","confidence":0.859},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_stairs","label":"Pont de nuance par palette: Polished Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_slab","label":"Pont de nuance par palette: Tuff Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_stairs","label":"Pont de nuance par palette: Tuff Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_wall","label":"Pont de nuance par palette: Tuff Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_bricks","label":"Pont de nuance par palette: Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.551},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:popped_chorus_fruit","name":"Popped Chorus Fruit","entry_type":"item","description":"Popped chorus fruit is an item obtained by smelting chorus fruit, and used to craft End rods and purpur blocks. Unlike raw chorus fruit, popped chorus fruit is inedible.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added popped chorus fruit."}],"colors":{"primary":"#7a517a","dominant_hex":"#643c64","average_hex":"#7a517a","hue_group":"purple","lightness":0.398,"saturation":0.202,"palette":["#643c64","#8c648c","#744c74","#a57da5","#4c2c4c","#542c54"],"color_groups":[{"hex":"#643c64","weight":0.2603,"lightness":0.3137,"saturation":0.25,"hue_group":"purple"},{"hex":"#8c648c","weight":0.2397,"lightness":0.4706,"saturation":0.1667,"hue_group":"purple"},{"hex":"#744c74","weight":0.2329,"lightness":0.3765,"saturation":0.2083,"hue_group":"purple"},{"hex":"#a57da5","weight":0.1507,"lightness":0.5686,"saturation":0.1818,"hue_group":"purple"},{"hex":"#4c2c4c","weight":0.0959,"lightness":0.2353,"saturation":0.2667,"hue_group":"purple"},{"hex":"#542c54","weight":0.0205,"lightness":0.251,"saturation":0.3125,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/popped_chorus_fruit.png","family":"popped_chorus_fruit","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:shulker_shell","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spire_armor_trim_smithing_template","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_bucket","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_breath","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_crystal","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enderman_spawn_egg","label":"Shared hue group: purple","confidence":0.55}],"category":"item"},{"id":"minecraft:poppy","name":"Poppy","entry_type":"block","description":"A poppy is a red flower that can be crafted into red dye and suspicious stew.","history":[{"version":"0.0.20a","status":"added","notes":"Added roses."},{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added roses to world generation."},{"version":"1.2.1 12w08a","status":"added","notes":"Added iron golems , which drop roses upon death."}],"colors":{"primary":"#814126","dominant_hex":"#ec342c","average_hex":"#814126","hue_group":"red","lightness":0.3275,"saturation":0.5449,"palette":["#ec342c","#244424","#256025","#942417","#bc242c","#4c8c2c"],"color_groups":[{"hex":"#ec342c","weight":0.2571,"lightness":0.549,"saturation":0.8348,"hue_group":"red"},{"hex":"#244424","weight":0.2,"lightness":0.2039,"saturation":0.3077,"hue_group":"green"},{"hex":"#256025","weight":0.1714,"lightness":0.2608,"saturation":0.4436,"hue_group":"green"},{"hex":"#942417","weight":0.1429,"lightness":0.3353,"saturation":0.731,"hue_group":"red"},{"hex":"#bc242c","weight":0.1429,"lightness":0.4392,"saturation":0.6786,"hue_group":"red"},{"hex":"#4c8c2c","weight":0.0857,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/poppy.png","family":"poppy","relations":[{"type":"visual_neighbors","target":"minecraft:potted_poppy","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_nylium","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_gold_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_poppy","label":"Palette proche: Potted Poppy","confidence":0.94},{"type":"color_neighbors","target":"minecraft:rose_bush","label":"Palette proche: Rose Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.804},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.804},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.7},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.699},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.699},{"type":"color_neighbors","target":"minecraft:sniffer_egg","label":"Palette proche: Sniffer Egg","confidence":0.681},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.647},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.643},{"type":"color_neighbors","target":"minecraft:dark_oak_sapling","label":"Palette proche: Dark Oak Sapling","confidence":0.63},{"type":"color_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Palette proche: Potted Dark Oak Sapling","confidence":0.63},{"type":"color_bridge","target":"minecraft:potted_red_tulip","label":"Pont de nuance par palette: Potted Red Tulip","confidence":0.839},{"type":"color_bridge","target":"minecraft:red_tulip","label":"Pont de nuance par palette: Red Tulip","confidence":0.839},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.752},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.752},{"type":"color_bridge","target":"minecraft:beetroots","label":"Pont de nuance par palette: Beetroots","confidence":0.709},{"type":"color_bridge","target":"minecraft:potatoes","label":"Pont de nuance par palette: Potatoes","confidence":0.706},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.695},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.695},{"type":"color_bridge","target":"minecraft:carrots","label":"Pont de nuance par palette: Carrots","confidence":0.694},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.693},{"type":"color_analogous","target":"minecraft:potted_poppy","label":"Couleurs analogues: Potted Poppy","confidence":0.96},{"type":"color_analogous","target":"minecraft:item_frame","label":"Couleurs analogues: Item Frame","confidence":0.96},{"type":"color_analogous","target":"minecraft:magma_block","label":"Couleurs analogues: Magma Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_shelf","label":"Couleurs analogues: Acacia Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_bulb","label":"Couleurs analogues: Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_bulb","label":"Couleurs analogues: Waxed Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_hanging_sign","label":"Couleurs analogues: Acacia Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_hanging_sign","label":"Couleurs analogues: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.922},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.922},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.921},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.917},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.897},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.859},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.938},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.934},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.856},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.96},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.885},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.885},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.877},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.864},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.827},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.619},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.586},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.577},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.577},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.577},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.577},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.563},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55}],"category":""},{"id":"minecraft:porkchop","name":"Porkchop","entry_type":"item","description":"Porkchop may refer to:","history":[{"version":"wiki","status":"observed","notes":"Wiki revision 3401391 at 2026-01-24T07:45:04Z."}],"colors":{"primary":"#d17171","dominant_hex":"#fc7d7d","average_hex":"#d17171","hue_group":"red","lightness":0.6314,"saturation":0.5106,"palette":["#fc7d7d","#fcb4b4","#ec7474","#a45454","#843c3c","#542424"],"color_groups":[{"hex":"#fc7d7d","weight":0.2393,"lightness":0.7392,"saturation":0.9549,"hue_group":"red"},{"hex":"#fcb4b4","weight":0.2137,"lightness":0.8471,"saturation":0.9231,"hue_group":"red"},{"hex":"#ec7474","weight":0.1966,"lightness":0.6902,"saturation":0.7595,"hue_group":"red"},{"hex":"#a45454","weight":0.1453,"lightness":0.4863,"saturation":0.3226,"hue_group":"red"},{"hex":"#843c3c","weight":0.1111,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#542424","weight":0.094,"lightness":0.2353,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/porkchop.png","family":"porkchop","relations":[{"type":"related_sets","target":"group:food","label":"Related set: food","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:pig_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glistering_melon_slice","label":"Shared hue group: red","confidence":0.55}],"category":"food"},{"id":"minecraft:potato","name":"Potato","entry_type":"item","description":"A potato is a food item obtained from potato crops that can be used to plant them, consumed raw or cooked to make baked potatoes. Potato crops are planted in farmland and used to grow potatoes and, rarely, poisonous potatoes.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added potatoes."},{"version":"wiki-history","status":"added","notes":"Added potato crops."},{"version":"19w03a","status":"added","notes":"Added placement and new breaking sounds to potatoes."}],"colors":{"primary":"#b38133","dominant_hex":"#e4b55e","average_hex":"#b38133","hue_group":"yellow","lightness":0.451,"saturation":0.5565,"palette":["#e4b55e","#6c3404","#9c5404","#cc943c","#98732f","#ac8444"],"color_groups":[{"hex":"#e4b55e","weight":0.3371,"lightness":0.6314,"saturation":0.7128,"hue_group":"yellow"},{"hex":"#6c3404","weight":0.1685,"lightness":0.2196,"saturation":0.9286,"hue_group":"red"},{"hex":"#9c5404","weight":0.1461,"lightness":0.3137,"saturation":0.95,"hue_group":"yellow"},{"hex":"#cc943c","weight":0.1461,"lightness":0.5176,"saturation":0.5854,"hue_group":"yellow"},{"hex":"#98732f","weight":0.1236,"lightness":0.3902,"saturation":0.5276,"hue_group":"yellow"},{"hex":"#ac8444","weight":0.0787,"lightness":0.4706,"saturation":0.4333,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/potato.png","family":"potato","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_chestplate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_boots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:potatoes","name":"Potatoes","entry_type":"block","description":"A potato is a food item obtained from potato crops that can be used to plant them, consumed raw or cooked to make baked potatoes. Potato crops are planted in farmland and used to grow potatoes and, rarely, poisonous potatoes.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added potatoes."},{"version":"wiki-history","status":"added","notes":"Added potato crops."},{"version":"19w03a","status":"added","notes":"Added placement and new breaking sounds to potatoes."}],"colors":{"primary":"#3b8229","dominant_hex":"#246424","average_hex":"#3b8229","hue_group":"green","lightness":0.3353,"saturation":0.5205,"palette":["#246424","#54ac2c","#2c742c","#4c8c2c"],"color_groups":[{"hex":"#246424","weight":0.3333,"lightness":0.2667,"saturation":0.4706,"hue_group":"green"},{"hex":"#54ac2c","weight":0.2667,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#2c742c","weight":0.2,"lightness":0.3137,"saturation":0.45,"hue_group":"green"},{"hex":"#4c8c2c","weight":0.2,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/potatoes_stage0.png","family":"potatoes","relations":[{"type":"visual_neighbors","target":"minecraft:kelp","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sunflower","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berry_bush","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:carrots","label":"Palette proche: Carrots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.925},{"type":"color_neighbors","target":"minecraft:kelp","label":"Palette proche: Kelp","confidence":0.804},{"type":"color_neighbors","target":"minecraft:kelp_plant","label":"Palette proche: Kelp Plant","confidence":0.785},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.784},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.755},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.755},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.748},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.748},{"type":"color_neighbors","target":"minecraft:rose_bush","label":"Palette proche: Rose Bush","confidence":0.746},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.74},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.791},{"type":"color_bridge","target":"minecraft:poppy","label":"Pont de nuance par palette: Poppy","confidence":0.706},{"type":"color_bridge","target":"minecraft:potted_poppy","label":"Pont de nuance par palette: Potted Poppy","confidence":0.706},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.702},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.702},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.695},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.695},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.683},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.683},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.664},{"type":"color_analogous","target":"minecraft:slime_block","label":"Couleurs analogues: Slime Block","confidence":0.953},{"type":"color_analogous","target":"minecraft:test_block","label":"Couleurs analogues: Test Block","confidence":0.946},{"type":"color_analogous","target":"minecraft:sunflower","label":"Couleurs analogues: Sunflower","confidence":0.934},{"type":"color_analogous","target":"minecraft:beetroots","label":"Couleurs analogues: Beetroots","confidence":0.923},{"type":"color_analogous","target":"minecraft:potted_white_tulip","label":"Couleurs analogues: Potted White Tulip","confidence":0.918},{"type":"color_analogous","target":"minecraft:white_tulip","label":"Couleurs analogues: White Tulip","confidence":0.918},{"type":"color_analogous","target":"minecraft:pink_tulip","label":"Couleurs analogues: Pink Tulip","confidence":0.89},{"type":"color_analogous","target":"minecraft:potted_pink_tulip","label":"Couleurs analogues: Potted Pink Tulip","confidence":0.89},{"type":"color_complement","target":"minecraft:magenta_stained_glass","label":"Contraste complementaire: Magenta Stained Glass","confidence":0.849},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.834},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.65},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.617},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.617},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.597},{"type":"color_complement","target":"minecraft:chorus_plant","label":"Contraste complementaire: Chorus Plant","confidence":0.568},{"type":"color_complement","target":"minecraft:bubble_coral_fan","label":"Contraste complementaire: Bubble Coral Fan","confidence":0.566},{"type":"color_triad","target":"minecraft:blue_glazed_terracotta","label":"Harmonie triadique: Blue Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_stained_glass","label":"Harmonie triadique: Blue Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:cracked_nether_bricks","label":"Harmonie triadique: Cracked Nether Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_candle","label":"Harmonie triadique: Blue Candle","confidence":0.951},{"type":"color_triad","target":"minecraft:enchanting_table","label":"Harmonie triadique: Enchanting Table","confidence":0.94},{"type":"color_triad","target":"minecraft:nether_brick_fence","label":"Harmonie triadique: Nether Brick Fence","confidence":0.938},{"type":"color_triad","target":"minecraft:nether_brick_slab","label":"Harmonie triadique: Nether Brick Slab","confidence":0.938},{"type":"color_square","target":"minecraft:poppy","label":"Harmonie carree: Poppy","confidence":0.96},{"type":"color_square","target":"minecraft:potted_poppy","label":"Harmonie carree: Potted Poppy","confidence":0.96},{"type":"color_square","target":"minecraft:copper_bulb","label":"Harmonie carree: Copper Bulb","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_bulb","label":"Harmonie carree: Waxed Copper Bulb","confidence":0.96},{"type":"color_square","target":"minecraft:acacia_hanging_sign","label":"Harmonie carree: Acacia Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:acacia_wall_hanging_sign","label":"Harmonie carree: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_acacia_log","label":"Harmonie carree: Stripped Acacia Log","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_acacia_wood","label":"Harmonie carree: Stripped Acacia Wood","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.599},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.566},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55}],"category":""},{"id":"minecraft:potion","name":"Potion","entry_type":"item","description":"Potions are bottled consumable liquids that give effects for a certain amount of time when drunk. They are primarily obtained from brewing. Every potion is brewed starting from a water bottle, which is considered a type of potion that has no effects.","history":[{"version":"1.0.0","status":"added","notes":"Added effects ."},{"version":"wiki-history","status":"added","notes":"Added glass bottles. Their only use is collecting potions from cauldrons."},{"version":"64 and can have multiple effects","status":"added","notes":"Added potions. They stack to 64 and can have multiple effects, including negative effects, depending on the ingredients used to make them. They are always given one of 32 generic names , with their actual effects being l"}],"colors":{"primary":"#95a3bb","dominant_hex":"#5c8cc4","average_hex":"#95a3bb","hue_group":"blue","lightness":0.6588,"saturation":0.2184,"palette":["#5c8cc4","#b4ccec","#b54f2f","#d4e4f4","#8cacd4","#ccaca4"],"color_groups":[{"hex":"#5c8cc4","weight":0.381,"lightness":0.5647,"saturation":0.4685,"hue_group":"blue"},{"hex":"#b4ccec","weight":0.2143,"lightness":0.8157,"saturation":0.5957,"hue_group":"blue"},{"hex":"#b54f2f","weight":0.1429,"lightness":0.4471,"saturation":0.5877,"hue_group":"red"},{"hex":"#d4e4f4","weight":0.119,"lightness":0.8941,"saturation":0.5926,"hue_group":"blue"},{"hex":"#8cacd4","weight":0.0714,"lightness":0.6902,"saturation":0.4557,"hue_group":"blue"},{"hex":"#ccaca4","weight":0.0714,"lightness":0.7216,"saturation":0.2817,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/potion.png","family":"potion","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lingering_potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_meal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_armor_trim_smithing_template","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wind_charge","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_shard","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:potted_acacia_sapling","name":"Potted Acacia Sapling","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#777618","dominant_hex":"#7c5c14","average_hex":"#777618","hue_group":"yellow","lightness":0.2804,"saturation":0.6643,"palette":["#7c5c14","#647c14","#748c1c","#7c9c24","#8c6c1c","#6c4c0c"],"color_groups":[{"hex":"#7c5c14","weight":0.2072,"lightness":0.2824,"saturation":0.7222,"hue_group":"yellow"},{"hex":"#647c14","weight":0.1982,"lightness":0.2824,"saturation":0.7222,"hue_group":"yellow"},{"hex":"#748c1c","weight":0.1712,"lightness":0.3294,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#7c9c24","weight":0.1622,"lightness":0.3765,"saturation":0.625,"hue_group":"yellow"},{"hex":"#8c6c1c","weight":0.1351,"lightness":0.3294,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#6c4c0c","weight":0.1261,"lightness":0.2353,"saturation":0.8,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/acacia_sapling.png","family":"potted_acacia","relations":[{"type":"visual_neighbors","target":"minecraft:acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:podzol","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hay_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_sapling","label":"Palette proche: Acacia Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_carpet","label":"Palette proche: Green Carpet","confidence":0.817},{"type":"color_neighbors","target":"minecraft:green_wool","label":"Palette proche: Green Wool","confidence":0.817},{"type":"color_neighbors","target":"minecraft:cave_vines_plant","label":"Palette proche: Cave Vines Plant","confidence":0.799},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.797},{"type":"color_neighbors","target":"minecraft:green_candle","label":"Palette proche: Green Candle","confidence":0.782},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.778},{"type":"color_neighbors","target":"minecraft:hay_block","label":"Palette proche: Hay Block","confidence":0.773},{"type":"color_neighbors","target":"minecraft:yellow_terracotta","label":"Palette proche: Yellow Terracotta","confidence":0.741},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.741},{"type":"color_neighbors","target":"minecraft:jungle_log","label":"Palette proche: Jungle Log","confidence":0.731},{"type":"color_neighbors","target":"minecraft:jungle_wood","label":"Palette proche: Jungle Wood","confidence":0.731},{"type":"color_bridge","target":"minecraft:copper_bulb","label":"Pont de nuance par palette: Copper Bulb","confidence":0.654},{"type":"color_bridge","target":"minecraft:waxed_copper_bulb","label":"Pont de nuance par palette: Waxed Copper Bulb","confidence":0.654},{"type":"color_bridge","target":"minecraft:seagrass","label":"Pont de nuance par palette: Seagrass","confidence":0.635},{"type":"color_bridge","target":"minecraft:tall_seagrass","label":"Pont de nuance par palette: Tall Seagrass","confidence":0.625},{"type":"color_bridge","target":"minecraft:acacia_shelf","label":"Pont de nuance par palette: Acacia Shelf","confidence":0.61},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.605},{"type":"color_bridge","target":"minecraft:sunflower","label":"Pont de nuance par palette: Sunflower","confidence":0.604},{"type":"color_bridge","target":"minecraft:item_frame","label":"Pont de nuance par palette: Item Frame","confidence":0.599},{"type":"color_bridge","target":"minecraft:acacia_trapdoor","label":"Pont de nuance par palette: Acacia Trapdoor","confidence":0.595},{"type":"color_bridge","target":"minecraft:acacia_button","label":"Pont de nuance par palette: Acacia Button","confidence":0.594},{"type":"color_analogous","target":"minecraft:acacia_sapling","label":"Couleurs analogues: Acacia Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sapling","label":"Couleurs analogues: Bamboo Sapling","confidence":0.937},{"type":"color_analogous","target":"minecraft:yellow_stained_glass_pane","label":"Couleurs analogues: Yellow Stained Glass Pane","confidence":0.936},{"type":"color_analogous","target":"minecraft:yellow_stained_glass","label":"Couleurs analogues: Yellow Stained Glass","confidence":0.932},{"type":"color_analogous","target":"minecraft:cocoa","label":"Couleurs analogues: Cocoa","confidence":0.928},{"type":"color_analogous","target":"minecraft:sponge","label":"Couleurs analogues: Sponge","confidence":0.92},{"type":"color_analogous","target":"minecraft:turtle_egg","label":"Couleurs analogues: Turtle Egg","confidence":0.868},{"type":"color_analogous","target":"minecraft:firefly_bush","label":"Couleurs analogues: Firefly Bush","confidence":0.861},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.934},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.927},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.927},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.839},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.637},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.616},{"type":"color_triad","target":"minecraft:cyan_candle","label":"Harmonie triadique: Cyan Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:snow","label":"Harmonie triadique: Snow","confidence":0.96},{"type":"color_triad","target":"minecraft:snow_block","label":"Harmonie triadique: Snow Block","confidence":0.96},{"type":"color_triad","target":"minecraft:powder_snow","label":"Harmonie triadique: Powder Snow","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_fan","label":"Harmonie triadique: Bubble Coral Fan","confidence":0.957},{"type":"color_triad","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie triadique: Bubble Coral Wall Fan","confidence":0.957},{"type":"color_triad","target":"minecraft:bubble_coral","label":"Harmonie triadique: Bubble Coral","confidence":0.953},{"type":"color_triad","target":"minecraft:warped_wart_block","label":"Harmonie triadique: Warped Wart Block","confidence":0.951},{"type":"color_square","target":"minecraft:cherry_log","label":"Harmonie carree: Cherry Log","confidence":0.941},{"type":"color_square","target":"minecraft:cherry_wood","label":"Harmonie carree: Cherry Wood","confidence":0.941},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.857},{"type":"color_square","target":"minecraft:oxidized_copper_lantern","label":"Harmonie carree: Oxidized Copper Lantern","confidence":0.841},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie carree: Waxed Oxidized Copper Lantern","confidence":0.841},{"type":"color_square","target":"minecraft:torchflower_crop","label":"Harmonie carree: Torchflower Crop","confidence":0.837},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.826},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.801},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.654},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.621},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.598},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.576},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.576},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.576},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.576},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.576}],"category":"natural"},{"id":"minecraft:potted_allium","name":"Potted Allium","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#9f89b8","dominant_hex":"#4a9728","average_hex":"#9f89b8","hue_group":"blue","lightness":0.6294,"saturation":0.2487,"palette":["#4a9728","#d4a4f4","#bc7cec","#a45ce4","#7c4ca4","#ecccfc"],"color_groups":[{"hex":"#4a9728","weight":0.2368,"lightness":0.3745,"saturation":0.5812,"hue_group":"green"},{"hex":"#d4a4f4","weight":0.2368,"lightness":0.8,"saturation":0.7843,"hue_group":"purple"},{"hex":"#bc7cec","weight":0.2105,"lightness":0.7059,"saturation":0.7467,"hue_group":"purple"},{"hex":"#a45ce4","weight":0.1316,"lightness":0.6275,"saturation":0.7158,"hue_group":"purple"},{"hex":"#7c4ca4","weight":0.1053,"lightness":0.4706,"saturation":0.3667,"hue_group":"purple"},{"hex":"#ecccfc","weight":0.0789,"lightness":0.8941,"saturation":0.8889,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/allium.png","family":"potted_allium","relations":[{"type":"visual_neighbors","target":"minecraft:allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeating_command_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:medium_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:budding_amethyst","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_cluster","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:allium","label":"Palette proche: Allium","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lilac","label":"Palette proche: Lilac","confidence":0.736},{"type":"color_neighbors","target":"minecraft:large_amethyst_bud","label":"Palette proche: Large Amethyst Bud","confidence":0.649},{"type":"color_neighbors","target":"minecraft:medium_amethyst_bud","label":"Palette proche: Medium Amethyst Bud","confidence":0.645},{"type":"color_neighbors","target":"minecraft:peony","label":"Palette proche: Peony","confidence":0.638},{"type":"color_neighbors","target":"minecraft:budding_amethyst","label":"Palette proche: Budding Amethyst","confidence":0.632},{"type":"color_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Palette proche: Purple Glazed Terracotta","confidence":0.628},{"type":"color_neighbors","target":"minecraft:amethyst_cluster","label":"Palette proche: Amethyst Cluster","confidence":0.627},{"type":"color_neighbors","target":"minecraft:amethyst_block","label":"Palette proche: Amethyst Block","confidence":0.625},{"type":"color_neighbors","target":"minecraft:small_amethyst_bud","label":"Palette proche: Small Amethyst Bud","confidence":0.612},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.58},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.58},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.782},{"type":"color_bridge","target":"minecraft:peony","label":"Pont de nuance par sous-ton: Peony","confidence":0.702},{"type":"color_bridge","target":"minecraft:cornflower","label":"Pont de nuance par palette: Cornflower","confidence":0.618},{"type":"color_bridge","target":"minecraft:potted_cornflower","label":"Pont de nuance par palette: Potted Cornflower","confidence":0.618},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.58},{"type":"color_analogous","target":"minecraft:allium","label":"Couleurs analogues: Allium","confidence":0.96},{"type":"color_analogous","target":"minecraft:medium_amethyst_bud","label":"Couleurs analogues: Medium Amethyst Bud","confidence":0.96},{"type":"color_analogous","target":"minecraft:large_amethyst_bud","label":"Couleurs analogues: Large Amethyst Bud","confidence":0.96},{"type":"color_analogous","target":"minecraft:amethyst_cluster","label":"Couleurs analogues: Amethyst Cluster","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_portal","label":"Couleurs analogues: Nether Portal","confidence":0.892},{"type":"color_analogous","target":"minecraft:crying_obsidian","label":"Couleurs analogues: Crying Obsidian","confidence":0.891},{"type":"color_analogous","target":"minecraft:budding_amethyst","label":"Couleurs analogues: Budding Amethyst","confidence":0.888},{"type":"color_analogous","target":"minecraft:amethyst_block","label":"Couleurs analogues: Amethyst Block","confidence":0.879},{"type":"color_complement","target":"minecraft:azure_bluet","label":"Contraste complementaire: Azure Bluet","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_azure_bluet","label":"Contraste complementaire: Potted Azure Bluet","confidence":0.96},{"type":"color_complement","target":"minecraft:sugar_cane","label":"Contraste complementaire: Sugar Cane","confidence":0.96},{"type":"color_complement","target":"minecraft:cactus","label":"Contraste complementaire: Cactus","confidence":0.935},{"type":"color_complement","target":"minecraft:lime_carpet","label":"Contraste complementaire: Lime Carpet","confidence":0.932},{"type":"color_complement","target":"minecraft:lime_wool","label":"Contraste complementaire: Lime Wool","confidence":0.932},{"type":"color_complement","target":"minecraft:oak_sapling","label":"Contraste complementaire: Oak Sapling","confidence":0.923},{"type":"color_complement","target":"minecraft:potted_oak_sapling","label":"Contraste complementaire: Potted Oak Sapling","confidence":0.923},{"type":"color_triad","target":"minecraft:brown_mushroom_block","label":"Harmonie triadique: Brown Mushroom Block","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_quartz","label":"Harmonie triadique: Smooth Quartz","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_quartz_slab","label":"Harmonie triadique: Smooth Quartz Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_quartz_stairs","label":"Harmonie triadique: Smooth Quartz Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:glow_item_frame","label":"Harmonie triadique: Glow Item Frame","confidence":0.96},{"type":"color_triad","target":"minecraft:composter","label":"Harmonie triadique: Composter","confidence":0.96},{"type":"color_triad","target":"minecraft:redstone_wall_torch","label":"Harmonie triadique: Redstone Wall Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:orange_stained_glass_pane","label":"Harmonie triadique: Orange Stained Glass Pane","confidence":0.956},{"type":"color_square","target":"minecraft:stripped_warped_hyphae","label":"Harmonie carree: Stripped Warped Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_stem","label":"Harmonie carree: Stripped Warped Stem","confidence":0.96},{"type":"color_square","target":"minecraft:warped_hanging_sign","label":"Harmonie carree: Warped Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:warped_wall_hanging_sign","label":"Harmonie carree: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:nether_wart","label":"Harmonie carree: Nether Wart","confidence":0.958},{"type":"color_square","target":"minecraft:red_nether_brick_slab","label":"Harmonie carree: Red Nether Brick Slab","confidence":0.954},{"type":"color_square","target":"minecraft:red_nether_brick_stairs","label":"Harmonie carree: Red Nether Brick Stairs","confidence":0.954},{"type":"color_square","target":"minecraft:red_nether_brick_wall","label":"Harmonie carree: Red Nether Brick Wall","confidence":0.954},{"type":"value_contrast","target":"minecraft:warped_hyphae","label":"Contraste clair sombre: Warped Hyphae","confidence":0.55},{"type":"value_contrast","target":"minecraft:warped_stem","label":"Contraste clair sombre: Warped Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone","label":"Contraste clair sombre: Polished Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_button","label":"Contraste clair sombre: Polished Blackstone Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_pressure_plate","label":"Contraste clair sombre: Polished Blackstone Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_slab","label":"Contraste clair sombre: Polished Blackstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_stairs","label":"Contraste clair sombre: Polished Blackstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_wall","label":"Contraste clair sombre: Polished Blackstone Wall","confidence":0.55}],"category":""},{"id":"minecraft:potted_azalea_bush","name":"Potted Azalea Bush","entry_type":"block","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#657b30","dominant_hex":"#647434","average_hex":"#657b30","hue_group":"yellow","lightness":0.3353,"saturation":0.4386,"palette":["#647434","#74942c","#6c8434","#546c2c"],"color_groups":[{"hex":"#647434","weight":0.375,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#74942c","weight":0.2344,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"},{"hex":"#6c8434","weight":0.2031,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#546c2c","weight":0.1875,"lightness":0.298,"saturation":0.4211,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/potted_azalea_bush_top.png","family":"potted_azalea_bush","relations":[{"type":"visual_neighbors","target":"minecraft:green_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_terracotta","label":"Palette proche: Lime Terracotta","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.938},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.927},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.925},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.905},{"type":"color_bridge","target":"minecraft:carrots","label":"Pont de nuance par palette: Carrots","confidence":0.72},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.712},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.712},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.712},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.712},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.687},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.684},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par sous-ton: Infested Mossy Stone Bricks","confidence":0.675},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par sous-ton: Mossy Stone Brick Slab","confidence":0.675},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par sous-ton: Mossy Stone Brick Stairs","confidence":0.675},{"type":"color_analogous","target":"minecraft:azalea","label":"Couleurs analogues: Azalea","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_concrete_powder","label":"Couleurs analogues: Green Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:cave_vines","label":"Couleurs analogues: Cave Vines","confidence":0.96},{"type":"color_analogous","target":"minecraft:melon","label":"Couleurs analogues: Melon","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_carpet","label":"Couleurs analogues: Green Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_wool","label":"Couleurs analogues: Green Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle","label":"Couleurs analogues: Green Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.954},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.96},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.96},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.96},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.952},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.876},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.811},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.792},{"type":"color_triad","target":"minecraft:light_blue_shulker_box","label":"Harmonie triadique: Light Blue Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.925},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.923},{"type":"color_triad","target":"minecraft:light_blue_carpet","label":"Harmonie triadique: Light Blue Carpet","confidence":0.914},{"type":"color_triad","target":"minecraft:light_blue_wool","label":"Harmonie triadique: Light Blue Wool","confidence":0.914},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.91},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.89},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.84},{"type":"color_square","target":"minecraft:cracked_nether_bricks","label":"Harmonie carree: Cracked Nether Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_brick_slab","label":"Harmonie carree: Prismarine Brick Slab","confidence":0.952},{"type":"color_square","target":"minecraft:prismarine_brick_stairs","label":"Harmonie carree: Prismarine Brick Stairs","confidence":0.952},{"type":"color_square","target":"minecraft:prismarine_bricks","label":"Harmonie carree: Prismarine Bricks","confidence":0.952},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.94},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.932},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.929},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.929},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.606},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.573},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_azure_bluet","name":"Potted Azure Bluet","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#a9cd7f","dominant_hex":"#54ac2c","average_hex":"#a9cd7f","hue_group":"yellow","lightness":0.651,"saturation":0.4382,"palette":["#54ac2c","#f4f4f4","#d4ecec","#fcec4c","#549c2c","#4c8c2c"],"color_groups":[{"hex":"#54ac2c","weight":0.2326,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#f4f4f4","weight":0.2093,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d4ecec","weight":0.186,"lightness":0.8784,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#fcec4c","weight":0.1628,"lightness":0.6431,"saturation":0.967,"hue_group":"yellow"},{"hex":"#549c2c","weight":0.1395,"lightness":0.3922,"saturation":0.56,"hue_group":"green"},{"hex":"#4c8c2c","weight":0.0698,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/azure_bluet.png","family":"potted_azure_bluet","relations":[{"type":"visual_neighbors","target":"minecraft:azure_bluet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_crop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sugar_cane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:azure_bluet","label":"Palette proche: Azure Bluet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxeye_daisy","label":"Palette proche: Oxeye Daisy","confidence":0.904},{"type":"color_neighbors","target":"minecraft:potted_oxeye_daisy","label":"Palette proche: Potted Oxeye Daisy","confidence":0.904},{"type":"color_neighbors","target":"minecraft:lily_of_the_valley","label":"Palette proche: Lily Of The Valley","confidence":0.754},{"type":"color_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Palette proche: Potted Lily Of The Valley","confidence":0.754},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.736},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.736},{"type":"color_neighbors","target":"minecraft:wildflowers","label":"Palette proche: Wildflowers","confidence":0.724},{"type":"color_neighbors","target":"minecraft:test_block","label":"Palette proche: Test Block","confidence":0.639},{"type":"color_neighbors","target":"minecraft:dandelion","label":"Palette proche: Dandelion","confidence":0.631},{"type":"color_neighbors","target":"minecraft:potted_dandelion","label":"Palette proche: Potted Dandelion","confidence":0.631},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.595},{"type":"color_bridge","target":"minecraft:wildflowers","label":"Pont de nuance par palette: Wildflowers","confidence":0.773},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.657},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.657},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.632},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par palette: White Candle","confidence":0.631},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par palette: White Concrete Powder","confidence":0.612},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par palette: White Shulker Box","confidence":0.606},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par palette: Cobweb","confidence":0.605},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par palette: Pale Oak Trapdoor","confidence":0.605},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.604},{"type":"color_analogous","target":"minecraft:azure_bluet","label":"Couleurs analogues: Azure Bluet","confidence":0.96},{"type":"color_analogous","target":"minecraft:sugar_cane","label":"Couleurs analogues: Sugar Cane","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_carpet","label":"Couleurs analogues: Lime Carpet","confidence":0.949},{"type":"color_analogous","target":"minecraft:lime_wool","label":"Couleurs analogues: Lime Wool","confidence":0.949},{"type":"color_analogous","target":"minecraft:lime_concrete_powder","label":"Couleurs analogues: Lime Concrete Powder","confidence":0.925},{"type":"color_analogous","target":"minecraft:lime_stained_glass","label":"Couleurs analogues: Lime Stained Glass","confidence":0.918},{"type":"color_analogous","target":"minecraft:lime_shulker_box","label":"Couleurs analogues: Lime Shulker Box","confidence":0.913},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.911},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.96},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.96},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.96},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.876},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.874},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.934},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.901},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.901},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.901},{"type":"color_triad","target":"minecraft:cherry_log","label":"Harmonie triadique: Cherry Log","confidence":0.896},{"type":"color_triad","target":"minecraft:cherry_wood","label":"Harmonie triadique: Cherry Wood","confidence":0.896},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.885},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.881},{"type":"color_square","target":"minecraft:stripped_warped_hyphae","label":"Harmonie carree: Stripped Warped Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_stem","label":"Harmonie carree: Stripped Warped Stem","confidence":0.96},{"type":"color_square","target":"minecraft:warped_hanging_sign","label":"Harmonie carree: Warped Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:warped_wall_hanging_sign","label":"Harmonie carree: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:black_glazed_terracotta","label":"Harmonie carree: Black Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:nether_wart","label":"Harmonie carree: Nether Wart","confidence":0.957},{"type":"color_square","target":"minecraft:red_nether_brick_slab","label":"Harmonie carree: Red Nether Brick Slab","confidence":0.953},{"type":"color_square","target":"minecraft:red_nether_brick_stairs","label":"Harmonie carree: Red Nether Brick Stairs","confidence":0.953},{"type":"value_contrast","target":"minecraft:oak_sapling","label":"Contraste clair sombre: Oak Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_oak_sapling","label":"Contraste clair sombre: Potted Oak Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sapling","label":"Contraste clair sombre: Dark Oak Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_dark_oak_sapling","label":"Contraste clair sombre: Potted Dark Oak Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_concrete","label":"Contraste clair sombre: Green Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:cave_vines_plant","label":"Contraste clair sombre: Cave Vines Plant","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_shulker_box","label":"Contraste clair sombre: Green Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_carpet","label":"Contraste clair sombre: Green Carpet","confidence":0.55}],"category":""},{"id":"minecraft:potted_bamboo","name":"Potted Bamboo","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#7c4535","dominant_hex":"#8c4c3c","average_hex":"#7c4535","hue_group":"red","lightness":0.3471,"saturation":0.4011,"palette":["#8c4c3c","#743c34","#7c4434","#844c3c","#643c2c"],"color_groups":[{"hex":"#8c4c3c","weight":0.24,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#743c34","weight":0.22,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#7c4434","weight":0.22,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#844c3c","weight":0.22,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#643c2c","weight":0.1,"lightness":0.2824,"saturation":0.3889,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/flower_pot.png","family":"potted_bamboo","relations":[{"type":"visual_neighbors","target":"minecraft:flower_pot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cactus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_cactus","label":"Palette proche: Potted Cactus","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Palette proche: Potted Mangrove Propagule","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.815},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.809},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.796},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.793},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.793},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.782},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.771},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.771},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.771},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.769},{"type":"color_analogous","target":"minecraft:flower_pot","label":"Couleurs analogues: Flower Pot","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_cactus","label":"Couleurs analogues: Potted Cactus","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_mangrove_propagule","label":"Couleurs analogues: Potted Mangrove Propagule","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_slab","label":"Couleurs analogues: Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_stairs","label":"Couleurs analogues: Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_wall","label":"Couleurs analogues: Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:bricks","label":"Couleurs analogues: Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chain","label":"Couleurs analogues: Copper Chain","confidence":0.959},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.926},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.922},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.914},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.895},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.895},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.845},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.836},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.878},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.872},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.86},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.86},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.86},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.86},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.84},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.699},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.946},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.925},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.925},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.92},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.606},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.572},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.565},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.565},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.565},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.565},{"type":"value_contrast","target":"minecraft:white_terracotta","label":"Contraste clair sombre: White Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_birch_sapling","name":"Potted Birch Sapling","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#80a150","dominant_hex":"#6c9c3c","average_hex":"#80a150","hue_group":"yellow","lightness":0.4725,"saturation":0.3361,"palette":["#6c9c3c","#5c7c34","#acbc64","#54742c","#ccd4a4","#e4dcbc"],"color_groups":[{"hex":"#6c9c3c","weight":0.3469,"lightness":0.4235,"saturation":0.4444,"hue_group":"green"},{"hex":"#5c7c34","weight":0.2143,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#acbc64","weight":0.1531,"lightness":0.5647,"saturation":0.3964,"hue_group":"yellow"},{"hex":"#54742c","weight":0.1224,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#ccd4a4","weight":0.0816,"lightness":0.7373,"saturation":0.3582,"hue_group":"yellow"},{"hex":"#e4dcbc","weight":0.0816,"lightness":0.8157,"saturation":0.4255,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/birch_sapling.png","family":"potted_birch","relations":[{"type":"visual_neighbors","target":"minecraft:birch_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_sapling","label":"Palette proche: Birch Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.863},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.835},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.831},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.816},{"type":"color_neighbors","target":"minecraft:kelp","label":"Palette proche: Kelp","confidence":0.809},{"type":"color_neighbors","target":"minecraft:kelp_plant","label":"Palette proche: Kelp Plant","confidence":0.807},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.797},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.797},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.797},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.796},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.795},{"type":"color_bridge","target":"minecraft:pitcher_crop","label":"Pont de nuance par palette: Pitcher Crop","confidence":0.737},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.715},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.715},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.704},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.704},{"type":"color_bridge","target":"minecraft:pitcher_plant","label":"Pont de nuance par sous-ton: Pitcher Plant","confidence":0.701},{"type":"color_bridge","target":"minecraft:suspicious_sand","label":"Pont de nuance par palette: Suspicious Sand","confidence":0.701},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.699},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.699},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.699},{"type":"color_analogous","target":"minecraft:birch_sapling","label":"Couleurs analogues: Birch Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_stained_glass","label":"Couleurs analogues: Lime Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_red_tulip","label":"Couleurs analogues: Potted Red Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_tulip","label":"Couleurs analogues: Red Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo","label":"Couleurs analogues: Bamboo","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete_powder","label":"Couleurs analogues: Lime Concrete Powder","confidence":0.959},{"type":"color_analogous","target":"minecraft:oxeye_daisy","label":"Couleurs analogues: Oxeye Daisy","confidence":0.936},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.96},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.951},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.915},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.897},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.886},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.878},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.878},{"type":"color_triad","target":"minecraft:brain_coral","label":"Harmonie triadique: Brain Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:cornflower","label":"Harmonie triadique: Cornflower","confidence":0.952},{"type":"color_triad","target":"minecraft:potted_cornflower","label":"Harmonie triadique: Potted Cornflower","confidence":0.952},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.942},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.942},{"type":"color_square","target":"minecraft:prismarine","label":"Harmonie carree: Prismarine","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_slab","label":"Harmonie carree: Prismarine Slab","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_stairs","label":"Harmonie carree: Prismarine Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:prismarine_wall","label":"Harmonie carree: Prismarine Wall","confidence":0.96},{"type":"color_square","target":"minecraft:warped_button","label":"Harmonie carree: Warped Button","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence","label":"Harmonie carree: Warped Fence","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence_gate","label":"Harmonie carree: Warped Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_planks","label":"Harmonie carree: Warped Planks","confidence":0.96},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_blue_orchid","name":"Potted Blue Orchid","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#2fa2a8","dominant_hex":"#24acf4","average_hex":"#2fa2a8","hue_group":"cyan","lightness":0.4216,"saturation":0.5628,"palette":["#24acf4","#1c94d4","#2cc0fc","#4c8c2c","#54ac2c","#147c04"],"color_groups":[{"hex":"#24acf4","weight":0.25,"lightness":0.549,"saturation":0.9043,"hue_group":"cyan"},{"hex":"#1c94d4","weight":0.2045,"lightness":0.4706,"saturation":0.7667,"hue_group":"cyan"},{"hex":"#2cc0fc","weight":0.2045,"lightness":0.5804,"saturation":0.972,"hue_group":"cyan"},{"hex":"#4c8c2c","weight":0.1591,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#54ac2c","weight":0.1136,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#147c04","weight":0.0682,"lightness":0.251,"saturation":0.9375,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/blue_orchid.png","family":"potted_blue_orchid","relations":[{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_fire","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_warped_stem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_hanging_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_hanging_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_shelf","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:void_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:blue_orchid","label":"Palette proche: Blue Orchid","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.7},{"type":"color_neighbors","target":"minecraft:light_blue_concrete","label":"Palette proche: Light Blue Concrete","confidence":0.694},{"type":"color_neighbors","target":"minecraft:light_blue_shulker_box","label":"Palette proche: Light Blue Shulker Box","confidence":0.676},{"type":"color_neighbors","target":"minecraft:light_blue_carpet","label":"Palette proche: Light Blue Carpet","confidence":0.657},{"type":"color_neighbors","target":"minecraft:light_blue_wool","label":"Palette proche: Light Blue Wool","confidence":0.657},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.656},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.656},{"type":"color_neighbors","target":"minecraft:cornflower","label":"Palette proche: Cornflower","confidence":0.609},{"type":"color_neighbors","target":"minecraft:potted_cornflower","label":"Palette proche: Potted Cornflower","confidence":0.609},{"type":"color_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Palette proche: Light Blue Concrete Powder","confidence":0.594},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.585},{"type":"color_bridge","target":"minecraft:potted_white_tulip","label":"Pont de nuance par palette: Potted White Tulip","confidence":0.717},{"type":"color_bridge","target":"minecraft:white_tulip","label":"Pont de nuance par palette: White Tulip","confidence":0.717},{"type":"color_bridge","target":"minecraft:sunflower","label":"Pont de nuance par palette: Sunflower","confidence":0.658},{"type":"color_bridge","target":"minecraft:wheat","label":"Pont de nuance par palette: Wheat","confidence":0.614},{"type":"color_bridge","target":"minecraft:pitcher_plant","label":"Pont de nuance par palette: Pitcher Plant","confidence":0.609},{"type":"color_bridge","target":"minecraft:beetroots","label":"Pont de nuance par palette: Beetroots","confidence":0.608},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.603},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.603},{"type":"color_bridge","target":"minecraft:tube_coral_fan","label":"Pont de nuance par palette: Tube Coral Fan","confidence":0.601},{"type":"color_bridge","target":"minecraft:tube_coral_wall_fan","label":"Pont de nuance par palette: Tube Coral Wall Fan","confidence":0.601},{"type":"color_analogous","target":"minecraft:blue_orchid","label":"Couleurs analogues: Blue Orchid","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_carpet","label":"Couleurs analogues: Cyan Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_wool","label":"Couleurs analogues: Cyan Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_concrete_powder","label":"Couleurs analogues: Cyan Concrete Powder","confidence":0.958},{"type":"color_analogous","target":"minecraft:soul_fire","label":"Couleurs analogues: Soul Fire","confidence":0.957},{"type":"color_analogous","target":"minecraft:calibrated_sculk_sensor","label":"Couleurs analogues: Calibrated Sculk Sensor","confidence":0.948},{"type":"color_analogous","target":"minecraft:sculk_sensor","label":"Couleurs analogues: Sculk Sensor","confidence":0.948},{"type":"color_analogous","target":"minecraft:cyan_glazed_terracotta","label":"Couleurs analogues: Cyan Glazed Terracotta","confidence":0.942},{"type":"color_complement","target":"minecraft:red_glazed_terracotta","label":"Contraste complementaire: Red Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_shelf","label":"Contraste complementaire: Mangrove Shelf","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_red_mushroom","label":"Contraste complementaire: Potted Red Mushroom","confidence":0.96},{"type":"color_complement","target":"minecraft:red_mushroom","label":"Contraste complementaire: Red Mushroom","confidence":0.96},{"type":"color_complement","target":"minecraft:red_carpet","label":"Contraste complementaire: Red Carpet","confidence":0.956},{"type":"color_complement","target":"minecraft:red_wool","label":"Contraste complementaire: Red Wool","confidence":0.956},{"type":"color_complement","target":"minecraft:red_concrete_powder","label":"Contraste complementaire: Red Concrete Powder","confidence":0.949},{"type":"color_complement","target":"minecraft:red_candle","label":"Contraste complementaire: Red Candle","confidence":0.946},{"type":"color_triad","target":"minecraft:end_stone","label":"Harmonie triadique: End Stone","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_candle","label":"Harmonie triadique: Magenta Candle","confidence":0.953},{"type":"color_triad","target":"minecraft:magenta_concrete_powder","label":"Harmonie triadique: Magenta Concrete Powder","confidence":0.937},{"type":"color_triad","target":"minecraft:cocoa","label":"Harmonie triadique: Cocoa","confidence":0.933},{"type":"color_triad","target":"minecraft:magenta_concrete","label":"Harmonie triadique: Magenta Concrete","confidence":0.923},{"type":"color_triad","target":"minecraft:bubble_coral_block","label":"Harmonie triadique: Bubble Coral Block","confidence":0.922},{"type":"color_triad","target":"minecraft:magenta_shulker_box","label":"Harmonie triadique: Magenta Shulker Box","confidence":0.919},{"type":"color_triad","target":"minecraft:magenta_carpet","label":"Harmonie triadique: Magenta Carpet","confidence":0.917},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.96},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.958},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.947},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.935},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.923},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.908},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_brown_mushroom","name":"Potted Brown Mushroom","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#9a755c","dominant_hex":"#cc9c7c","average_hex":"#9a755c","hue_group":"red","lightness":0.4824,"saturation":0.252,"palette":["#cc9c7c","#946c54","#66493a","#745444","#b4947c","#64544c"],"color_groups":[{"hex":"#cc9c7c","weight":0.3235,"lightness":0.6431,"saturation":0.4396,"hue_group":"red"},{"hex":"#946c54","weight":0.2353,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#66493a","weight":0.1471,"lightness":0.3137,"saturation":0.275,"hue_group":"red"},{"hex":"#745444","weight":0.1471,"lightness":0.3608,"saturation":0.2609,"hue_group":"red"},{"hex":"#b4947c","weight":0.0882,"lightness":0.5961,"saturation":0.2718,"hue_group":"red"},{"hex":"#64544c","weight":0.0588,"lightness":0.3451,"saturation":0.1364,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/brown_mushroom.png","family":"potted_brown_mushroom","relations":[{"type":"visual_neighbors","target":"minecraft:brown_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hanging_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:granite_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brown_mushroom","label":"Palette proche: Brown Mushroom","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_granite","label":"Palette proche: Polished Granite","confidence":0.888},{"type":"color_neighbors","target":"minecraft:polished_granite_slab","label":"Palette proche: Polished Granite Slab","confidence":0.888},{"type":"color_neighbors","target":"minecraft:polished_granite_stairs","label":"Palette proche: Polished Granite Stairs","confidence":0.888},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.887},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.886},{"type":"color_neighbors","target":"minecraft:rooted_dirt","label":"Palette proche: Rooted Dirt","confidence":0.886},{"type":"color_neighbors","target":"minecraft:mud_brick_slab","label":"Palette proche: Mud Brick Slab","confidence":0.88},{"type":"color_neighbors","target":"minecraft:mud_brick_stairs","label":"Palette proche: Mud Brick Stairs","confidence":0.88},{"type":"color_neighbors","target":"minecraft:mud_brick_wall","label":"Palette proche: Mud Brick Wall","confidence":0.88},{"type":"color_neighbors","target":"minecraft:mud_bricks","label":"Palette proche: Mud Bricks","confidence":0.88},{"type":"color_neighbors","target":"minecraft:packed_mud","label":"Palette proche: Packed Mud","confidence":0.88},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.886},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.884},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.881},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.881},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.877},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.877},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.871},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.871},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.862},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.862},{"type":"color_analogous","target":"minecraft:brown_mushroom","label":"Couleurs analogues: Brown Mushroom","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper","label":"Couleurs analogues: Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_chest","label":"Couleurs analogues: Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_golem_statue","label":"Couleurs analogues: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper","label":"Couleurs analogues: Waxed Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_chest","label":"Couleurs analogues: Waxed Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Couleurs analogues: Waxed Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_button","label":"Couleurs analogues: Jungle Button","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.936},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.935},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.925},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.925},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.925},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.91},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.949},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.905},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.875},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.868},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.85},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.85},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.952},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.919},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.903},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.758},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.727},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.726},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.715},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.706},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_cactus","name":"Potted Cactus","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#7c4535","dominant_hex":"#8c4c3c","average_hex":"#7c4535","hue_group":"red","lightness":0.3471,"saturation":0.4011,"palette":["#8c4c3c","#743c34","#7c4434","#844c3c","#643c2c"],"color_groups":[{"hex":"#8c4c3c","weight":0.24,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#743c34","weight":0.22,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#7c4434","weight":0.22,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#844c3c","weight":0.22,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#643c2c","weight":0.1,"lightness":0.2824,"saturation":0.3889,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/flower_pot.png","family":"potted_cactus","relations":[{"type":"visual_neighbors","target":"minecraft:flower_pot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_bamboo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_bamboo","label":"Palette proche: Potted Bamboo","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Palette proche: Potted Mangrove Propagule","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.815},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.809},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.796},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.793},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.793},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.782},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.771},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.771},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.771},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.769},{"type":"color_analogous","target":"minecraft:flower_pot","label":"Couleurs analogues: Flower Pot","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_bamboo","label":"Couleurs analogues: Potted Bamboo","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_mangrove_propagule","label":"Couleurs analogues: Potted Mangrove Propagule","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_slab","label":"Couleurs analogues: Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_stairs","label":"Couleurs analogues: Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_wall","label":"Couleurs analogues: Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:bricks","label":"Couleurs analogues: Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chain","label":"Couleurs analogues: Copper Chain","confidence":0.959},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.926},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.922},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.914},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.895},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.895},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.845},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.836},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.878},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.872},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.86},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.86},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.86},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.86},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.84},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.699},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.946},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.925},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.925},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.92},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.606},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.572},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.565},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.565},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.565},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.565},{"type":"value_contrast","target":"minecraft:white_terracotta","label":"Contraste clair sombre: White Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55}],"category":""},{"id":"minecraft:potted_cherry_sapling","name":"Potted Cherry Sapling","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#a4768f","dominant_hex":"#3e2433","average_hex":"#a4768f","hue_group":"purple","lightness":0.5529,"saturation":0.2018,"palette":["#3e2433","#f5bedd","#241424","#eca4cc","#ec92bc","#f4dcec"],"color_groups":[{"hex":"#3e2433","weight":0.2377,"lightness":0.1922,"saturation":0.2653,"hue_group":"purple"},{"hex":"#f5bedd","weight":0.2213,"lightness":0.8529,"saturation":0.7333,"hue_group":"purple"},{"hex":"#241424","weight":0.1721,"lightness":0.1098,"saturation":0.2857,"hue_group":"purple"},{"hex":"#eca4cc","weight":0.1393,"lightness":0.7843,"saturation":0.6545,"hue_group":"purple"},{"hex":"#ec92bc","weight":0.1311,"lightness":0.749,"saturation":0.7031,"hue_group":"red"},{"hex":"#f4dcec","weight":0.0984,"lightness":0.9098,"saturation":0.5217,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cherry_sapling.png","family":"potted_cherry","relations":[{"type":"visual_neighbors","target":"minecraft:cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_slab","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_stairs","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_pillar","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_flower","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_plant","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_sapling","label":"Palette proche: Cherry Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pink_petals","label":"Palette proche: Pink Petals","confidence":0.699},{"type":"color_neighbors","target":"minecraft:spore_blossom","label":"Palette proche: Spore Blossom","confidence":0.677},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.675},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.659},{"type":"color_neighbors","target":"minecraft:brain_coral","label":"Palette proche: Brain Coral","confidence":0.657},{"type":"color_neighbors","target":"minecraft:cherry_leaves","label":"Palette proche: Cherry Leaves","confidence":0.651},{"type":"color_neighbors","target":"minecraft:pink_concrete_powder","label":"Palette proche: Pink Concrete Powder","confidence":0.65},{"type":"color_neighbors","target":"minecraft:chorus_flower","label":"Palette proche: Chorus Flower","confidence":0.649},{"type":"color_neighbors","target":"minecraft:cherry_log","label":"Palette proche: Cherry Log","confidence":0.638},{"type":"color_neighbors","target":"minecraft:cherry_wood","label":"Palette proche: Cherry Wood","confidence":0.638},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.635},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par palette: Cherry Sapling","confidence":0.86},{"type":"color_bridge","target":"minecraft:pink_petals","label":"Pont de nuance par sous-ton: Pink Petals","confidence":0.752},{"type":"color_bridge","target":"minecraft:spore_blossom","label":"Pont de nuance par sous-ton: Spore Blossom","confidence":0.734},{"type":"color_bridge","target":"minecraft:pink_candle","label":"Pont de nuance par sous-ton: Pink Candle","confidence":0.732},{"type":"color_bridge","target":"minecraft:brain_coral_block","label":"Pont de nuance par sous-ton: Brain Coral Block","confidence":0.719},{"type":"color_bridge","target":"minecraft:brain_coral","label":"Pont de nuance par sous-ton: Brain Coral","confidence":0.718},{"type":"color_bridge","target":"minecraft:cherry_leaves","label":"Pont de nuance par sous-ton: Cherry Leaves","confidence":0.713},{"type":"color_bridge","target":"minecraft:pink_concrete_powder","label":"Pont de nuance par sous-ton: Pink Concrete Powder","confidence":0.712},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par palette: Chorus Flower","confidence":0.711},{"type":"color_bridge","target":"minecraft:cherry_log","label":"Pont de nuance par sous-ton: Cherry Log","confidence":0.702},{"type":"value_contrast","target":"minecraft:cherry_log","label":"Contraste clair sombre: Cherry Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_wood","label":"Contraste clair sombre: Cherry Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone","label":"Contraste clair sombre: Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_wall","label":"Contraste clair sombre: Blackstone Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_terracotta","label":"Contraste clair sombre: Gray Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_polished_blackstone_bricks","label":"Contraste clair sombre: Cracked Polished Blackstone Bricks","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_closed_eyeblossom","name":"Potted Closed Eyeblossom","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#6c6265","dominant_hex":"#5c5454","average_hex":"#6c6265","hue_group":"neutral","lightness":0.4039,"saturation":0.0485,"palette":["#5c5454","#807078","#3c3434","#a4949c","#342c2c","#b4a4ac"],"color_groups":[{"hex":"#5c5454","weight":0.24,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#807078","weight":0.22,"lightness":0.4706,"saturation":0.0667,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.16,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#a4949c","weight":0.16,"lightness":0.6118,"saturation":0.0808,"hue_group":"neutral"},{"hex":"#342c2c","weight":0.12,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#b4a4ac","weight":0.1,"lightness":0.6745,"saturation":0.0964,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/closed_eyeblossom.png","family":"potted_closed_eyeblossom","relations":[{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:closed_eyeblossom","label":"Palette proche: Closed Eyeblossom","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_log","label":"Palette proche: Pale Oak Log","confidence":0.919},{"type":"color_neighbors","target":"minecraft:pale_oak_wood","label":"Palette proche: Pale Oak Wood","confidence":0.919},{"type":"color_neighbors","target":"minecraft:open_eyeblossom","label":"Palette proche: Open Eyeblossom","confidence":0.895},{"type":"color_neighbors","target":"minecraft:observer","label":"Palette proche: Observer","confidence":0.88},{"type":"color_neighbors","target":"minecraft:bedrock","label":"Palette proche: Bedrock","confidence":0.876},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.876},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.876},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.876},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.876},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.873},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.873},{"type":"color_bridge","target":"minecraft:closed_eyeblossom","label":"Pont de nuance par palette: Closed Eyeblossom","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:open_eyeblossom","label":"Pont de nuance par palette: Open Eyeblossom","confidence":0.86},{"type":"color_bridge","target":"minecraft:observer","label":"Pont de nuance par palette: Observer","confidence":0.86},{"type":"color_bridge","target":"minecraft:bedrock","label":"Pont de nuance par palette: Bedrock","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.562},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.55}],"category":""},{"id":"minecraft:potted_cornflower","name":"Potted Cornflower","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#507993","dominant_hex":"#3d5cd8","average_hex":"#507993","hue_group":"cyan","lightness":0.4451,"saturation":0.2952,"palette":["#3d5cd8","#548c4c","#317129","#5c9c54","#6e7ee2","#748cf4"],"color_groups":[{"hex":"#3d5cd8","weight":0.2857,"lightness":0.5431,"saturation":0.6652,"hue_group":"blue"},{"hex":"#548c4c","weight":0.2,"lightness":0.4235,"saturation":0.2963,"hue_group":"green"},{"hex":"#317129","weight":0.1714,"lightness":0.302,"saturation":0.4675,"hue_group":"green"},{"hex":"#5c9c54","weight":0.1143,"lightness":0.4706,"saturation":0.3,"hue_group":"green"},{"hex":"#6e7ee2","weight":0.1143,"lightness":0.6588,"saturation":0.6667,"hue_group":"blue"},{"hex":"#748cf4","weight":0.1143,"lightness":0.7059,"saturation":0.8533,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cornflower.png","family":"potted_cornflower","relations":[{"type":"visual_neighbors","target":"minecraft:cornflower","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cornflower","label":"Palette proche: Cornflower","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pitcher_plant","label":"Palette proche: Pitcher Plant","confidence":0.671},{"type":"color_neighbors","target":"minecraft:blue_orchid","label":"Palette proche: Blue Orchid","confidence":0.609},{"type":"color_neighbors","target":"minecraft:potted_blue_orchid","label":"Palette proche: Potted Blue Orchid","confidence":0.609},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.58},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Palette proche: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_neighbors","target":"minecraft:weathered_copper_bars","label":"Palette proche: Weathered Copper Bars","confidence":0.58},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.58},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.58},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Palette proche: Waxed Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:pitcher_plant","label":"Pont de nuance par sous-ton: Pitcher Plant","confidence":0.729},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par palette: Waxed Weathered Copper Bars","confidence":0.646},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par palette: Weathered Copper Bars","confidence":0.646},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par palette: Waxed Weathered Copper Lantern","confidence":0.641},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par palette: Weathered Copper Lantern","confidence":0.641},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.64},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.64},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par palette: Waxed Weathered Copper","confidence":0.635},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par palette: Waxed Weathered Copper Chest","confidence":0.635},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par palette: Waxed Weathered Copper Golem Statue","confidence":0.635},{"type":"color_analogous","target":"minecraft:cornflower","label":"Couleurs analogues: Cornflower","confidence":0.96},{"type":"color_analogous","target":"minecraft:soul_lantern","label":"Couleurs analogues: Soul Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_concrete","label":"Couleurs analogues: Light Blue Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_candle","label":"Couleurs analogues: Light Blue Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_glazed_terracotta","label":"Couleurs analogues: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_stained_glass","label":"Couleurs analogues: Cyan Stained Glass","confidence":0.932},{"type":"color_analogous","target":"minecraft:air","label":"Couleurs analogues: Air","confidence":0.924},{"type":"color_analogous","target":"minecraft:cave_air","label":"Couleurs analogues: Cave Air","confidence":0.924},{"type":"color_complement","target":"minecraft:rooted_dirt","label":"Contraste complementaire: Rooted Dirt","confidence":0.96},{"type":"color_complement","target":"minecraft:copper_lantern","label":"Contraste complementaire: Copper Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_copper_lantern","label":"Contraste complementaire: Waxed Copper Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_mushroom","label":"Contraste complementaire: Brown Mushroom","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_brown_mushroom","label":"Contraste complementaire: Potted Brown Mushroom","confidence":0.96},{"type":"color_complement","target":"minecraft:exposed_copper","label":"Contraste complementaire: Exposed Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:exposed_copper_chest","label":"Contraste complementaire: Exposed Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:exposed_copper_golem_statue","label":"Contraste complementaire: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:oxeye_daisy","label":"Harmonie triadique: Oxeye Daisy","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_oxeye_daisy","label":"Harmonie triadique: Potted Oxeye Daisy","confidence":0.96},{"type":"color_triad","target":"minecraft:birch_sapling","label":"Harmonie triadique: Birch Sapling","confidence":0.952},{"type":"color_triad","target":"minecraft:potted_birch_sapling","label":"Harmonie triadique: Potted Birch Sapling","confidence":0.952},{"type":"color_triad","target":"minecraft:brain_coral","label":"Harmonie triadique: Brain Coral","confidence":0.94},{"type":"color_triad","target":"minecraft:potted_red_tulip","label":"Harmonie triadique: Potted Red Tulip","confidence":0.934},{"type":"color_triad","target":"minecraft:red_tulip","label":"Harmonie triadique: Red Tulip","confidence":0.934},{"type":"color_triad","target":"minecraft:bamboo","label":"Harmonie triadique: Bamboo","confidence":0.928},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.945},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.885},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.768},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.767},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.756},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.716},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.671},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_crimson_fungus","name":"Potted Crimson Fungus","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#8d2c1e","dominant_hex":"#8f3232","average_hex":"#8d2c1e","hue_group":"red","lightness":0.3353,"saturation":0.6491,"palette":["#8f3232","#54211a","#74040c","#fc7927","#c43334","#4c0404"],"color_groups":[{"hex":"#8f3232","weight":0.2667,"lightness":0.3784,"saturation":0.4819,"hue_group":"red"},{"hex":"#54211a","weight":0.2167,"lightness":0.2157,"saturation":0.5273,"hue_group":"red"},{"hex":"#74040c","weight":0.15,"lightness":0.2353,"saturation":0.9333,"hue_group":"red"},{"hex":"#fc7927","weight":0.15,"lightness":0.5706,"saturation":0.9726,"hue_group":"red"},{"hex":"#c43334","weight":0.1167,"lightness":0.4843,"saturation":0.587,"hue_group":"red"},{"hex":"#4c0404","weight":0.1,"lightness":0.1569,"saturation":0.9,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_fungus.png","family":"potted_crimson_fungus","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_nylium","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_fungus","label":"Palette proche: Crimson Fungus","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.892},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.847},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.833},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.828},{"type":"color_neighbors","target":"minecraft:magma_block","label":"Palette proche: Magma Block","confidence":0.825},{"type":"color_neighbors","target":"minecraft:red_stained_glass_pane","label":"Palette proche: Red Stained Glass Pane","confidence":0.825},{"type":"color_neighbors","target":"minecraft:nether_gold_ore","label":"Palette proche: Nether Gold Ore","confidence":0.815},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.802},{"type":"color_neighbors","target":"minecraft:red_stained_glass","label":"Palette proche: Red Stained Glass","confidence":0.798},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.79},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.785},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.681},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.677},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.669},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.665},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.656},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.653},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.65},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.644},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.636},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.635},{"type":"color_analogous","target":"minecraft:crimson_fungus","label":"Couleurs analogues: Crimson Fungus","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_terracotta","label":"Couleurs analogues: Red Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:redstone_block","label":"Couleurs analogues: Redstone Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:redstone_torch","label":"Couleurs analogues: Redstone Torch","confidence":0.955},{"type":"color_analogous","target":"minecraft:mangrove_hanging_sign","label":"Couleurs analogues: Mangrove Hanging Sign","confidence":0.942},{"type":"color_analogous","target":"minecraft:mangrove_wall_hanging_sign","label":"Couleurs analogues: Mangrove Wall Hanging Sign","confidence":0.942},{"type":"color_analogous","target":"minecraft:stripped_mangrove_log","label":"Couleurs analogues: Stripped Mangrove Log","confidence":0.942},{"type":"color_analogous","target":"minecraft:stripped_mangrove_wood","label":"Couleurs analogues: Stripped Mangrove Wood","confidence":0.942},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.953},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.948},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.928},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.917},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.895},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.888},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.851},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.827},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.785},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.652},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.651},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.631},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.629},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.623},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.618},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.958},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.958},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.95},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.95},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.915},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.915},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.915},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.61},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.577},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.571},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.571},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.571},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.571},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.554},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_crimson_roots","name":"Potted Crimson Roots","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#7f0829","dominant_hex":"#640424","average_hex":"#7f0829","hue_group":"red","lightness":0.2647,"saturation":0.8815,"palette":["#640424","#940434","#ac141c","#54042c"],"color_groups":[{"hex":"#640424","weight":0.3,"lightness":0.2039,"saturation":0.9231,"hue_group":"red"},{"hex":"#940434","weight":0.2833,"lightness":0.298,"saturation":0.9474,"hue_group":"red"},{"hex":"#ac141c","weight":0.2333,"lightness":0.3765,"saturation":0.7917,"hue_group":"red"},{"hex":"#54042c","weight":0.1833,"lightness":0.1725,"saturation":0.9091,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/crimson_roots_pot.png","family":"potted_crimson_roots","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines_plant","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_roots","label":"Palette proche: Crimson Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.794},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.78},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.779},{"type":"color_neighbors","target":"minecraft:weeping_vines","label":"Palette proche: Weeping Vines","confidence":0.765},{"type":"color_neighbors","target":"minecraft:redstone_block","label":"Palette proche: Redstone Block","confidence":0.749},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.733},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.728},{"type":"color_neighbors","target":"minecraft:barrier","label":"Palette proche: Barrier","confidence":0.727},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.721},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.718},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.718},{"type":"color_bridge","target":"minecraft:carved_pumpkin","label":"Pont de nuance par palette: Carved Pumpkin","confidence":0.64},{"type":"color_bridge","target":"minecraft:lava","label":"Pont de nuance par palette: Lava","confidence":0.621},{"type":"color_bridge","target":"minecraft:resin_block","label":"Pont de nuance par palette: Resin Block","confidence":0.62},{"type":"color_bridge","target":"minecraft:chiseled_red_sandstone","label":"Pont de nuance par palette: Chiseled Red Sandstone","confidence":0.616},{"type":"color_bridge","target":"minecraft:red_sandstone","label":"Pont de nuance par palette: Red Sandstone","confidence":0.614},{"type":"color_bridge","target":"minecraft:red_sandstone_wall","label":"Pont de nuance par palette: Red Sandstone Wall","confidence":0.614},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.606},{"type":"color_bridge","target":"minecraft:cut_red_sandstone","label":"Pont de nuance par palette: Cut Red Sandstone","confidence":0.606},{"type":"color_bridge","target":"minecraft:pumpkin","label":"Pont de nuance par palette: Pumpkin","confidence":0.603},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.592},{"type":"color_analogous","target":"minecraft:crimson_roots","label":"Couleurs analogues: Crimson Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_terracotta","label":"Couleurs analogues: Purple Terracotta","confidence":0.905},{"type":"color_analogous","target":"minecraft:magenta_terracotta","label":"Couleurs analogues: Magenta Terracotta","confidence":0.878},{"type":"color_analogous","target":"minecraft:cracked_nether_bricks","label":"Couleurs analogues: Cracked Nether Bricks","confidence":0.867},{"type":"color_analogous","target":"minecraft:enchanting_table","label":"Couleurs analogues: Enchanting Table","confidence":0.85},{"type":"color_analogous","target":"minecraft:pink_carpet","label":"Couleurs analogues: Pink Carpet","confidence":0.848},{"type":"color_analogous","target":"minecraft:pink_wool","label":"Couleurs analogues: Pink Wool","confidence":0.848},{"type":"color_analogous","target":"minecraft:nether_brick_fence","label":"Couleurs analogues: Nether Brick Fence","confidence":0.846},{"type":"color_complement","target":"minecraft:oxidized_copper_chain","label":"Contraste complementaire: Oxidized Copper Chain","confidence":0.819},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chain","label":"Contraste complementaire: Waxed Oxidized Copper Chain","confidence":0.819},{"type":"color_complement","target":"minecraft:oxidized_copper_door","label":"Contraste complementaire: Oxidized Copper Door","confidence":0.806},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_door","label":"Contraste complementaire: Waxed Oxidized Copper Door","confidence":0.806},{"type":"color_complement","target":"minecraft:oxidized_lightning_rod","label":"Contraste complementaire: Oxidized Lightning Rod","confidence":0.805},{"type":"color_complement","target":"minecraft:waxed_oxidized_lightning_rod","label":"Contraste complementaire: Waxed Oxidized Lightning Rod","confidence":0.805},{"type":"color_complement","target":"minecraft:prismarine_brick_slab","label":"Contraste complementaire: Prismarine Brick Slab","confidence":0.771},{"type":"color_complement","target":"minecraft:prismarine_brick_stairs","label":"Contraste complementaire: Prismarine Brick Stairs","confidence":0.771},{"type":"color_triad","target":"minecraft:tube_coral_fan","label":"Harmonie triadique: Tube Coral Fan","confidence":0.939},{"type":"color_triad","target":"minecraft:tube_coral_wall_fan","label":"Harmonie triadique: Tube Coral Wall Fan","confidence":0.939},{"type":"color_triad","target":"minecraft:black_concrete","label":"Harmonie triadique: Black Concrete","confidence":0.934},{"type":"color_triad","target":"minecraft:pink_tulip","label":"Harmonie triadique: Pink Tulip","confidence":0.93},{"type":"color_triad","target":"minecraft:potted_pink_tulip","label":"Harmonie triadique: Potted Pink Tulip","confidence":0.93},{"type":"color_triad","target":"minecraft:beetroots","label":"Harmonie triadique: Beetroots","confidence":0.928},{"type":"color_triad","target":"minecraft:sunflower","label":"Harmonie triadique: Sunflower","confidence":0.917},{"type":"color_triad","target":"minecraft:tube_coral_block","label":"Harmonie triadique: Tube Coral Block","confidence":0.894},{"type":"color_square","target":"minecraft:cave_vines_plant","label":"Harmonie carree: Cave Vines Plant","confidence":0.956},{"type":"color_square","target":"minecraft:flowering_azalea_leaves","label":"Harmonie carree: Flowering Azalea Leaves","confidence":0.946},{"type":"color_square","target":"minecraft:lime_terracotta","label":"Harmonie carree: Lime Terracotta","confidence":0.942},{"type":"color_square","target":"minecraft:lime_glazed_terracotta","label":"Harmonie carree: Lime Glazed Terracotta","confidence":0.92},{"type":"color_square","target":"minecraft:bamboo_block","label":"Harmonie carree: Bamboo Block","confidence":0.901},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.886},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.886},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.853},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.669},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.635},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.622},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.622},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.622},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.613},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.591}],"category":"natural"},{"id":"minecraft:potted_dandelion","name":"Potted Dandelion","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#94ac2b","dominant_hex":"#fcec4c","average_hex":"#94ac2b","hue_group":"yellow","lightness":0.4216,"saturation":0.6,"palette":["#fcec4c","#147c04","#4c8c2c","#d88424","#54ac2c","#fcd43c"],"color_groups":[{"hex":"#fcec4c","weight":0.2812,"lightness":0.6431,"saturation":0.967,"hue_group":"yellow"},{"hex":"#147c04","weight":0.25,"lightness":0.251,"saturation":0.9375,"hue_group":"green"},{"hex":"#4c8c2c","weight":0.1562,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#d88424","weight":0.125,"lightness":0.4941,"saturation":0.7143,"hue_group":"yellow"},{"hex":"#54ac2c","weight":0.0938,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#fcd43c","weight":0.0938,"lightness":0.6118,"saturation":0.9697,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dandelion.png","family":"potted_dandelion","relations":[{"type":"visual_neighbors","target":"minecraft:dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hay_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bell","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dandelion","label":"Palette proche: Dandelion","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.913},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.913},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.806},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.806},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.738},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.735},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.735},{"type":"color_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Palette proche: Lime Glazed Terracotta","confidence":0.691},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.691},{"type":"color_neighbors","target":"minecraft:seagrass","label":"Palette proche: Seagrass","confidence":0.69},{"type":"color_neighbors","target":"minecraft:tall_seagrass","label":"Palette proche: Tall Seagrass","confidence":0.687},{"type":"color_bridge","target":"minecraft:orange_concrete_powder","label":"Pont de nuance par palette: Orange Concrete Powder","confidence":0.683},{"type":"color_bridge","target":"minecraft:pumpkin","label":"Pont de nuance par palette: Pumpkin","confidence":0.683},{"type":"color_bridge","target":"minecraft:poppy","label":"Pont de nuance par palette: Poppy","confidence":0.663},{"type":"color_bridge","target":"minecraft:potted_poppy","label":"Pont de nuance par palette: Potted Poppy","confidence":0.663},{"type":"color_bridge","target":"minecraft:resin_clump","label":"Pont de nuance par palette: Resin Clump","confidence":0.661},{"type":"color_bridge","target":"minecraft:cut_red_sandstone","label":"Pont de nuance par palette: Cut Red Sandstone","confidence":0.659},{"type":"color_bridge","target":"minecraft:red_sand","label":"Pont de nuance par palette: Red Sand","confidence":0.658},{"type":"color_bridge","target":"minecraft:wheat","label":"Pont de nuance par palette: Wheat","confidence":0.65},{"type":"color_bridge","target":"minecraft:red_sandstone","label":"Pont de nuance par palette: Red Sandstone","confidence":0.645},{"type":"color_bridge","target":"minecraft:red_sandstone_wall","label":"Pont de nuance par palette: Red Sandstone Wall","confidence":0.645},{"type":"color_analogous","target":"minecraft:dandelion","label":"Couleurs analogues: Dandelion","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_block","label":"Couleurs analogues: Bamboo Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:flowering_azalea","label":"Couleurs analogues: Flowering Azalea","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_terracotta","label":"Couleurs analogues: Lime Terracotta","confidence":0.944},{"type":"color_analogous","target":"minecraft:green_terracotta","label":"Couleurs analogues: Green Terracotta","confidence":0.944},{"type":"color_analogous","target":"minecraft:flowering_azalea_leaves","label":"Couleurs analogues: Flowering Azalea Leaves","confidence":0.938},{"type":"color_analogous","target":"minecraft:potted_wither_rose","label":"Couleurs analogues: Potted Wither Rose","confidence":0.937},{"type":"color_analogous","target":"minecraft:wither_rose","label":"Couleurs analogues: Wither Rose","confidence":0.937},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.787},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.78},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.78},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.78},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.78},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.685},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.645},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.58},{"type":"color_triad","target":"minecraft:sculk_vein","label":"Harmonie triadique: Sculk Vein","confidence":0.955},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.907},{"type":"color_triad","target":"minecraft:cyan_concrete","label":"Harmonie triadique: Cyan Concrete","confidence":0.901},{"type":"color_triad","target":"minecraft:glass_pane","label":"Harmonie triadique: Glass Pane","confidence":0.897},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.896},{"type":"color_triad","target":"minecraft:cyan_shulker_box","label":"Harmonie triadique: Cyan Shulker Box","confidence":0.84},{"type":"color_triad","target":"minecraft:glass","label":"Harmonie triadique: Glass","confidence":0.821},{"type":"color_triad","target":"minecraft:sculk","label":"Harmonie triadique: Sculk","confidence":0.817},{"type":"color_square","target":"minecraft:pink_carpet","label":"Harmonie carree: Pink Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:pink_wool","label":"Harmonie carree: Pink Wool","confidence":0.96},{"type":"color_square","target":"minecraft:pink_shulker_box","label":"Harmonie carree: Pink Shulker Box","confidence":0.945},{"type":"color_square","target":"minecraft:pink_stained_glass","label":"Harmonie carree: Pink Stained Glass","confidence":0.942},{"type":"color_square","target":"minecraft:pink_glazed_terracotta","label":"Harmonie carree: Pink Glazed Terracotta","confidence":0.936},{"type":"color_square","target":"minecraft:pink_stained_glass_pane","label":"Harmonie carree: Pink Stained Glass Pane","confidence":0.935},{"type":"color_square","target":"minecraft:purple_terracotta","label":"Harmonie carree: Purple Terracotta","confidence":0.924},{"type":"color_square","target":"minecraft:oxidized_copper_chain","label":"Harmonie carree: Oxidized Copper Chain","confidence":0.914},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":""},{"id":"minecraft:potted_dark_oak_sapling","name":"Potted Dark Oak Sapling","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#3d5b1f","dominant_hex":"#145414","average_hex":"#3d5b1f","hue_group":"green","lightness":0.2392,"saturation":0.4918,"palette":["#145414","#499631","#5c3c1c","#1c641c","#4c3414","#765830"],"color_groups":[{"hex":"#145414","weight":0.2273,"lightness":0.2039,"saturation":0.6154,"hue_group":"green"},{"hex":"#499631","weight":0.1818,"lightness":0.3902,"saturation":0.5075,"hue_group":"green"},{"hex":"#5c3c1c","weight":0.1727,"lightness":0.2353,"saturation":0.5333,"hue_group":"yellow"},{"hex":"#1c641c","weight":0.1636,"lightness":0.251,"saturation":0.5625,"hue_group":"green"},{"hex":"#4c3414","weight":0.1364,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#765830","weight":0.1182,"lightness":0.3255,"saturation":0.4217,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dark_oak_sapling.png","family":"potted_dark_oak","relations":[{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berry_bush","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sunflower","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_spruce_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_sapling","label":"Palette proche: Dark Oak Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_sapling","label":"Palette proche: Oak Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_oak_sapling","label":"Palette proche: Potted Oak Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_spruce_sapling","label":"Palette proche: Potted Spruce Sapling","confidence":0.748},{"type":"color_neighbors","target":"minecraft:spruce_sapling","label":"Palette proche: Spruce Sapling","confidence":0.748},{"type":"color_neighbors","target":"minecraft:bamboo_sapling","label":"Palette proche: Bamboo Sapling","confidence":0.739},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.737},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.736},{"type":"color_neighbors","target":"minecraft:carrots","label":"Palette proche: Carrots","confidence":0.734},{"type":"color_neighbors","target":"minecraft:podzol","label":"Palette proche: Podzol","confidence":0.727},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.712},{"type":"color_neighbors","target":"minecraft:cave_vines_plant","label":"Palette proche: Cave Vines Plant","confidence":0.71},{"type":"color_bridge","target":"minecraft:podzol","label":"Pont de nuance par palette: Podzol","confidence":0.775},{"type":"color_bridge","target":"minecraft:dark_oak_trapdoor","label":"Pont de nuance par palette: Dark Oak Trapdoor","confidence":0.763},{"type":"color_bridge","target":"minecraft:jungle_log","label":"Pont de nuance par palette: Jungle Log","confidence":0.761},{"type":"color_bridge","target":"minecraft:jungle_wood","label":"Pont de nuance par palette: Jungle Wood","confidence":0.761},{"type":"color_bridge","target":"minecraft:dark_oak_door","label":"Pont de nuance par palette: Dark Oak Door","confidence":0.759},{"type":"color_bridge","target":"minecraft:spruce_button","label":"Pont de nuance par palette: Spruce Button","confidence":0.755},{"type":"color_bridge","target":"minecraft:spruce_fence","label":"Pont de nuance par palette: Spruce Fence","confidence":0.755},{"type":"color_bridge","target":"minecraft:spruce_fence_gate","label":"Pont de nuance par palette: Spruce Fence Gate","confidence":0.755},{"type":"color_bridge","target":"minecraft:spruce_planks","label":"Pont de nuance par palette: Spruce Planks","confidence":0.755},{"type":"color_bridge","target":"minecraft:spruce_pressure_plate","label":"Pont de nuance par palette: Spruce Pressure Plate","confidence":0.755},{"type":"color_analogous","target":"minecraft:dark_oak_sapling","label":"Couleurs analogues: Dark Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:cactus","label":"Couleurs analogues: Cactus","confidence":0.96},{"type":"color_analogous","target":"minecraft:kelp_plant","label":"Couleurs analogues: Kelp Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_sapling","label":"Couleurs analogues: Jungle Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_jungle_sapling","label":"Couleurs analogues: Potted Jungle Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_candle","label":"Couleurs analogues: Lime Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_shulker_box","label":"Couleurs analogues: Lime Shulker Box","confidence":0.953},{"type":"color_analogous","target":"minecraft:lime_concrete","label":"Couleurs analogues: Lime Concrete","confidence":0.949},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.921},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.921},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.912},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.912},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.902},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.898},{"type":"color_complement","target":"minecraft:purple_concrete","label":"Contraste complementaire: Purple Concrete","confidence":0.886},{"type":"color_complement","target":"minecraft:purple_stained_glass","label":"Contraste complementaire: Purple Stained Glass","confidence":0.885},{"type":"color_triad","target":"minecraft:cherry_log","label":"Harmonie triadique: Cherry Log","confidence":0.96},{"type":"color_triad","target":"minecraft:cherry_wood","label":"Harmonie triadique: Cherry Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.87},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.86},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.85},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.817},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.817},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.817},{"type":"color_square","target":"minecraft:netherrack","label":"Harmonie carree: Netherrack","confidence":0.96},{"type":"color_square","target":"minecraft:red_stained_glass_pane","label":"Harmonie carree: Red Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_nylium","label":"Harmonie carree: Crimson Nylium","confidence":0.96},{"type":"color_square","target":"minecraft:red_stained_glass","label":"Harmonie carree: Red Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:red_concrete","label":"Harmonie carree: Red Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:red_shulker_box","label":"Harmonie carree: Red Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_candle","label":"Harmonie carree: Cyan Candle","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_shelf","label":"Harmonie carree: Cherry Shelf","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.694},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.638},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.62},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.62},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.608},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.586},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.586}],"category":"natural"},{"id":"minecraft:potted_dead_bush","name":"Potted Dead Bush","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#6b4f29","dominant_hex":"#543c24","average_hex":"#6b4f29","hue_group":"yellow","lightness":0.2902,"saturation":0.4459,"palette":["#543c24","#64542c","#94642c","#b47c34"],"color_groups":[{"hex":"#543c24","weight":0.3718,"lightness":0.2353,"saturation":0.4,"hue_group":"yellow"},{"hex":"#64542c","weight":0.3718,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#94642c","weight":0.2179,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"},{"hex":"#b47c34","weight":0.0385,"lightness":0.4549,"saturation":0.5517,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/dead_bush.png","family":"potted_dead_bush","relations":[{"type":"visual_neighbors","target":"minecraft:dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rose_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dead_bush","label":"Palette proche: Dead Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_shelf","label":"Palette proche: Spruce Shelf","confidence":0.929},{"type":"color_neighbors","target":"minecraft:ladder","label":"Palette proche: Ladder","confidence":0.927},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.897},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.894},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.894},{"type":"color_neighbors","target":"minecraft:stripped_spruce_log","label":"Palette proche: Stripped Spruce Log","confidence":0.894},{"type":"color_neighbors","target":"minecraft:stripped_spruce_wood","label":"Palette proche: Stripped Spruce Wood","confidence":0.894},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.889},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.889},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.882},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.882},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.841},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.818},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.816},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.778},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.759},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.757},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.757},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.753},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.753},{"type":"color_analogous","target":"minecraft:dead_bush","label":"Couleurs analogues: Dead Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_trapdoor","label":"Couleurs analogues: Spruce Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_log","label":"Couleurs analogues: Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wood","label":"Couleurs analogues: Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_log","label":"Couleurs analogues: Stripped Spruce Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_wood","label":"Couleurs analogues: Stripped Spruce Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.956},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.939},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.875},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.858},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.825},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.808},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.802},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.793},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.953},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.947},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.934},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.924},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.842},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.655},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.609},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.609},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.609},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.609},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.599},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.574}],"category":""},{"id":"minecraft:potted_fern","name":"Potted Fern","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#7c7d7c","dominant_hex":"#6c6c6c","average_hex":"#7c7d7c","hue_group":"neutral","lightness":0.4882,"saturation":0.004,"palette":["#6c6c6c","#5c5c5c","#7c7c7c","#a4a4a4","#8c8c8c","#949494"],"color_groups":[{"hex":"#6c6c6c","weight":0.2247,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.2022,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.1798,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.1798,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1236,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.0899,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/fern.png","family":"potted_fern","relations":[{"type":"visual_neighbors","target":"minecraft:fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bush","label":"Palette proche: Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:lily_pad","label":"Pont de nuance par palette: Lily Pad","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:bush","label":"Pont de nuance par palette: Bush","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55}],"category":""},{"id":"minecraft:potted_flowering_azalea_bush","name":"Potted Flowering Azalea Bush","entry_type":"block","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#737846","dominant_hex":"#647434","average_hex":"#737846","hue_group":"yellow","lightness":0.3725,"saturation":0.2632,"palette":["#647434","#74942c","#6c8434","#546929","#ae5db1","#d47ce4"],"color_groups":[{"hex":"#647434","weight":0.3281,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#74942c","weight":0.2188,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"},{"hex":"#6c8434","weight":0.1719,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#546929","weight":0.125,"lightness":0.2863,"saturation":0.4384,"hue_group":"yellow"},{"hex":"#ae5db1","weight":0.1094,"lightness":0.5294,"saturation":0.35,"hue_group":"purple"},{"hex":"#d47ce4","weight":0.0469,"lightness":0.6902,"saturation":0.6582,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/potted_flowering_azalea_bush_top.png","family":"potted_flowering_azalea_bush","relations":[{"type":"visual_neighbors","target":"minecraft:copper_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lever","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafting_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powered_rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:flowering_azalea","label":"Palette proche: Flowering Azalea","confidence":0.94},{"type":"color_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Palette proche: Flowering Azalea Leaves","confidence":0.927},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.867},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.866},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.852},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.852},{"type":"color_neighbors","target":"minecraft:lime_terracotta","label":"Palette proche: Lime Terracotta","confidence":0.829},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.826},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.826},{"type":"color_neighbors","target":"minecraft:small_dripleaf","label":"Palette proche: Small Dripleaf","confidence":0.826},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.821},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.816},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.783},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.783},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.783},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.783},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.769},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par sous-ton: Infested Mossy Stone Bricks","confidence":0.74},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par sous-ton: Mossy Stone Brick Slab","confidence":0.74},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par sous-ton: Mossy Stone Brick Stairs","confidence":0.74},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par sous-ton: Mossy Stone Brick Wall","confidence":0.74},{"type":"color_bridge","target":"minecraft:mossy_stone_bricks","label":"Pont de nuance par sous-ton: Mossy Stone Bricks","confidence":0.74},{"type":"color_analogous","target":"minecraft:wet_sponge","label":"Couleurs analogues: Wet Sponge","confidence":0.96},{"type":"color_analogous","target":"minecraft:sea_pickle","label":"Couleurs analogues: Sea Pickle","confidence":0.949},{"type":"color_analogous","target":"minecraft:end_stone_brick_slab","label":"Couleurs analogues: End Stone Brick Slab","confidence":0.919},{"type":"color_analogous","target":"minecraft:end_stone_brick_stairs","label":"Couleurs analogues: End Stone Brick Stairs","confidence":0.919},{"type":"color_analogous","target":"minecraft:end_stone_brick_wall","label":"Couleurs analogues: End Stone Brick Wall","confidence":0.919},{"type":"color_analogous","target":"minecraft:end_stone_bricks","label":"Couleurs analogues: End Stone Bricks","confidence":0.919},{"type":"color_analogous","target":"minecraft:flowering_azalea","label":"Couleurs analogues: Flowering Azalea","confidence":0.902},{"type":"color_analogous","target":"minecraft:cocoa","label":"Couleurs analogues: Cocoa","confidence":0.9},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.891},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.733},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.732},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.724},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.7},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.7},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.643},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.616},{"type":"color_triad","target":"minecraft:glass","label":"Harmonie triadique: Glass","confidence":0.954},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.948},{"type":"color_triad","target":"minecraft:cyan_glazed_terracotta","label":"Harmonie triadique: Cyan Glazed Terracotta","confidence":0.947},{"type":"color_triad","target":"minecraft:magenta_carpet","label":"Harmonie triadique: Magenta Carpet","confidence":0.942},{"type":"color_triad","target":"minecraft:magenta_wool","label":"Harmonie triadique: Magenta Wool","confidence":0.942},{"type":"color_triad","target":"minecraft:magenta_shulker_box","label":"Harmonie triadique: Magenta Shulker Box","confidence":0.94},{"type":"color_triad","target":"minecraft:magenta_concrete","label":"Harmonie triadique: Magenta Concrete","confidence":0.936},{"type":"color_triad","target":"minecraft:magenta_concrete_powder","label":"Harmonie triadique: Magenta Concrete Powder","confidence":0.922},{"type":"color_square","target":"minecraft:crimson_door","label":"Harmonie carree: Crimson Door","confidence":0.96},{"type":"color_square","target":"minecraft:dark_prismarine","label":"Harmonie carree: Dark Prismarine","confidence":0.96},{"type":"color_square","target":"minecraft:dark_prismarine_slab","label":"Harmonie carree: Dark Prismarine Slab","confidence":0.96},{"type":"color_square","target":"minecraft:dark_prismarine_stairs","label":"Harmonie carree: Dark Prismarine Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_trapdoor","label":"Harmonie carree: Crimson Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_shelf","label":"Harmonie carree: Crimson Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_hanging_sign","label":"Harmonie carree: Crimson Hanging Sign","confidence":0.957},{"type":"color_square","target":"minecraft:crimson_wall_hanging_sign","label":"Harmonie carree: Crimson Wall Hanging Sign","confidence":0.957},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.578},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_jungle_sapling","name":"Potted Jungle Sapling","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#305111","dominant_hex":"#2c4c0c","average_hex":"#305111","hue_group":"green","lightness":0.1922,"saturation":0.6531,"palette":["#2c4c0c","#2b320b","#2c6c1c","#348424","#3c3c0c","#34340c"],"color_groups":[{"hex":"#2c4c0c","weight":0.2558,"lightness":0.1725,"saturation":0.7273,"hue_group":"green"},{"hex":"#2b320b","weight":0.2209,"lightness":0.1196,"saturation":0.6393,"hue_group":"yellow"},{"hex":"#2c6c1c","weight":0.186,"lightness":0.2667,"saturation":0.5882,"hue_group":"green"},{"hex":"#348424","weight":0.1744,"lightness":0.3294,"saturation":0.5714,"hue_group":"green"},{"hex":"#3c3c0c","weight":0.1047,"lightness":0.1412,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#34340c","weight":0.0581,"lightness":0.1255,"saturation":0.625,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/jungle_sapling.png","family":"potted_jungle","relations":[{"type":"visual_neighbors","target":"minecraft:jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sunflower","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wheat","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:emerald_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:seagrass","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_sapling","label":"Palette proche: Jungle Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle","label":"Palette proche: Green Candle","confidence":0.739},{"type":"color_neighbors","target":"minecraft:melon","label":"Palette proche: Melon","confidence":0.735},{"type":"color_neighbors","target":"minecraft:green_carpet","label":"Palette proche: Green Carpet","confidence":0.713},{"type":"color_neighbors","target":"minecraft:green_wool","label":"Palette proche: Green Wool","confidence":0.713},{"type":"color_neighbors","target":"minecraft:kelp","label":"Palette proche: Kelp","confidence":0.709},{"type":"color_neighbors","target":"minecraft:kelp_plant","label":"Palette proche: Kelp Plant","confidence":0.706},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.702},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.694},{"type":"color_neighbors","target":"minecraft:dark_oak_sapling","label":"Palette proche: Dark Oak Sapling","confidence":0.693},{"type":"color_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Palette proche: Potted Dark Oak Sapling","confidence":0.693},{"type":"color_neighbors","target":"minecraft:bamboo","label":"Palette proche: Bamboo","confidence":0.691},{"type":"color_bridge","target":"minecraft:jungle_log","label":"Pont de nuance par palette: Jungle Log","confidence":0.637},{"type":"color_bridge","target":"minecraft:jungle_wood","label":"Pont de nuance par palette: Jungle Wood","confidence":0.637},{"type":"color_bridge","target":"minecraft:podzol","label":"Pont de nuance par palette: Podzol","confidence":0.632},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.607},{"type":"color_bridge","target":"minecraft:dark_oak_trapdoor","label":"Pont de nuance par palette: Dark Oak Trapdoor","confidence":0.599},{"type":"color_bridge","target":"minecraft:spruce_log","label":"Pont de nuance par palette: Spruce Log","confidence":0.585},{"type":"color_bridge","target":"minecraft:spruce_wood","label":"Pont de nuance par palette: Spruce Wood","confidence":0.585},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.582},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.58},{"type":"color_analogous","target":"minecraft:jungle_sapling","label":"Couleurs analogues: Jungle Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sapling","label":"Couleurs analogues: Dark Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_dark_oak_sapling","label":"Couleurs analogues: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete","label":"Couleurs analogues: Lime Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:kelp_plant","label":"Couleurs analogues: Kelp Plant","confidence":0.942},{"type":"color_analogous","target":"minecraft:lime_candle","label":"Couleurs analogues: Lime Candle","confidence":0.937},{"type":"color_analogous","target":"minecraft:cactus","label":"Couleurs analogues: Cactus","confidence":0.935},{"type":"color_analogous","target":"minecraft:lime_shulker_box","label":"Couleurs analogues: Lime Shulker Box","confidence":0.923},{"type":"color_complement","target":"minecraft:purple_concrete","label":"Contraste complementaire: Purple Concrete","confidence":0.934},{"type":"color_complement","target":"minecraft:purple_stained_glass","label":"Contraste complementaire: Purple Stained Glass","confidence":0.901},{"type":"color_complement","target":"minecraft:purple_candle","label":"Contraste complementaire: Purple Candle","confidence":0.895},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.886},{"type":"color_complement","target":"minecraft:purple_shulker_box","label":"Contraste complementaire: Purple Shulker Box","confidence":0.885},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.883},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.874},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.874},{"type":"color_triad","target":"minecraft:cherry_log","label":"Harmonie triadique: Cherry Log","confidence":0.932},{"type":"color_triad","target":"minecraft:cherry_wood","label":"Harmonie triadique: Cherry Wood","confidence":0.932},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.91},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.892},{"type":"color_triad","target":"minecraft:crimson_button","label":"Harmonie triadique: Crimson Button","confidence":0.834},{"type":"color_triad","target":"minecraft:crimson_fence","label":"Harmonie triadique: Crimson Fence","confidence":0.834},{"type":"color_triad","target":"minecraft:crimson_fence_gate","label":"Harmonie triadique: Crimson Fence Gate","confidence":0.834},{"type":"color_triad","target":"minecraft:crimson_planks","label":"Harmonie triadique: Crimson Planks","confidence":0.834},{"type":"color_square","target":"minecraft:warped_wart_block","label":"Harmonie carree: Warped Wart Block","confidence":0.96},{"type":"color_square","target":"minecraft:red_shulker_box","label":"Harmonie carree: Red Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:red_candle","label":"Harmonie carree: Red Candle","confidence":0.96},{"type":"color_square","target":"minecraft:red_mushroom_block","label":"Harmonie carree: Red Mushroom Block","confidence":0.96},{"type":"color_square","target":"minecraft:red_concrete_powder","label":"Harmonie carree: Red Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:soul_fire","label":"Harmonie carree: Soul Fire","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_shelf","label":"Harmonie carree: Cherry Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:red_concrete","label":"Harmonie carree: Red Concrete","confidence":0.959},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.733},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.7},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.678},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.66},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.66},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.648},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.626},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.626}],"category":"natural"},{"id":"minecraft:potted_lily_of_the_valley","name":"Potted Lily Of The Valley","entry_type":"block","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#7baf5f","dominant_hex":"#347c14","average_hex":"#7baf5f","hue_group":"green","lightness":0.5294,"saturation":0.3333,"palette":["#347c14","#54942c","#64b434","#e0e0e0","#fcfcfc","#7cc45c"],"color_groups":[{"hex":"#347c14","weight":0.2692,"lightness":0.2824,"saturation":0.7222,"hue_group":"green"},{"hex":"#54942c","weight":0.2115,"lightness":0.3765,"saturation":0.5417,"hue_group":"green"},{"hex":"#64b434","weight":0.1538,"lightness":0.4549,"saturation":0.5517,"hue_group":"green"},{"hex":"#e0e0e0","weight":0.1538,"lightness":0.8784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1154,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7cc45c","weight":0.0962,"lightness":0.5647,"saturation":0.4685,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lily_of_the_valley.png","family":"potted_lily_of_the_valley","relations":[{"type":"visual_neighbors","target":"minecraft:lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_propagule","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lily_of_the_valley","label":"Palette proche: Lily Of The Valley","confidence":0.94},{"type":"color_neighbors","target":"minecraft:test_block","label":"Palette proche: Test Block","confidence":0.756},{"type":"color_neighbors","target":"minecraft:azure_bluet","label":"Palette proche: Azure Bluet","confidence":0.754},{"type":"color_neighbors","target":"minecraft:potted_azure_bluet","label":"Palette proche: Potted Azure Bluet","confidence":0.754},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.723},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.685},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.685},{"type":"color_neighbors","target":"minecraft:oxeye_daisy","label":"Palette proche: Oxeye Daisy","confidence":0.683},{"type":"color_neighbors","target":"minecraft:potted_oxeye_daisy","label":"Palette proche: Potted Oxeye Daisy","confidence":0.683},{"type":"color_neighbors","target":"minecraft:birch_sapling","label":"Palette proche: Birch Sapling","confidence":0.678},{"type":"color_neighbors","target":"minecraft:potted_birch_sapling","label":"Palette proche: Potted Birch Sapling","confidence":0.678},{"type":"color_neighbors","target":"minecraft:slime_block","label":"Palette proche: Slime Block","confidence":0.673},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par palette: Birch Log","confidence":0.687},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par palette: Birch Wood","confidence":0.687},{"type":"color_bridge","target":"minecraft:iron_bars","label":"Pont de nuance par palette: Iron Bars","confidence":0.669},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par palette: Pale Oak Trapdoor","confidence":0.641},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.627},{"type":"color_bridge","target":"minecraft:pale_oak_door","label":"Pont de nuance par palette: Pale Oak Door","confidence":0.623},{"type":"color_bridge","target":"minecraft:tall_grass","label":"Pont de nuance par palette: Tall Grass","confidence":0.617},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.616},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.612},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.612},{"type":"color_analogous","target":"minecraft:lily_of_the_valley","label":"Couleurs analogues: Lily Of The Valley","confidence":0.96},{"type":"color_analogous","target":"minecraft:seagrass","label":"Couleurs analogues: Seagrass","confidence":0.932},{"type":"color_analogous","target":"minecraft:potted_spruce_sapling","label":"Couleurs analogues: Potted Spruce Sapling","confidence":0.929},{"type":"color_analogous","target":"minecraft:spruce_sapling","label":"Couleurs analogues: Spruce Sapling","confidence":0.929},{"type":"color_analogous","target":"minecraft:tall_seagrass","label":"Couleurs analogues: Tall Seagrass","confidence":0.924},{"type":"color_analogous","target":"minecraft:pink_tulip","label":"Couleurs analogues: Pink Tulip","confidence":0.874},{"type":"color_analogous","target":"minecraft:potted_pink_tulip","label":"Couleurs analogues: Potted Pink Tulip","confidence":0.874},{"type":"color_analogous","target":"minecraft:potted_white_tulip","label":"Couleurs analogues: Potted White Tulip","confidence":0.846},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.927},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.894},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.894},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.874},{"type":"color_complement","target":"minecraft:dragon_egg","label":"Contraste complementaire: Dragon Egg","confidence":0.838},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.837},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.813},{"type":"color_complement","target":"minecraft:purple_shulker_box","label":"Contraste complementaire: Purple Shulker Box","confidence":0.813},{"type":"color_triad","target":"minecraft:magenta_terracotta","label":"Harmonie triadique: Magenta Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:pearlescent_froglight","label":"Harmonie triadique: Pearlescent Froglight","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_terracotta","label":"Harmonie triadique: Purple Terracotta","confidence":0.955},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.949},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.948},{"type":"color_triad","target":"minecraft:pink_glazed_terracotta","label":"Harmonie triadique: Pink Glazed Terracotta","confidence":0.944},{"type":"color_triad","target":"minecraft:ice","label":"Harmonie triadique: Ice","confidence":0.944},{"type":"color_triad","target":"minecraft:pink_stained_glass_pane","label":"Harmonie triadique: Pink Stained Glass Pane","confidence":0.938},{"type":"color_square","target":"minecraft:glass_pane","label":"Harmonie carree: Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:red_terracotta","label":"Harmonie carree: Red Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_concrete","label":"Harmonie carree: Cyan Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_trapdoor","label":"Harmonie carree: Cherry Trapdoor","confidence":0.937},{"type":"color_square","target":"minecraft:target","label":"Harmonie carree: Target","confidence":0.936},{"type":"color_square","target":"minecraft:nether_gold_ore","label":"Harmonie carree: Nether Gold Ore","confidence":0.919},{"type":"color_square","target":"minecraft:crimson_fungus","label":"Harmonie carree: Crimson Fungus","confidence":0.915},{"type":"color_square","target":"minecraft:potted_crimson_fungus","label":"Harmonie carree: Potted Crimson Fungus","confidence":0.915},{"type":"value_contrast","target":"minecraft:dried_kelp_block","label":"Contraste clair sombre: Dried Kelp Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55}],"category":""},{"id":"minecraft:potted_mangrove_propagule","name":"Potted Mangrove Propagule","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#7c4535","dominant_hex":"#8c4c3c","average_hex":"#7c4535","hue_group":"red","lightness":0.3471,"saturation":0.4011,"palette":["#8c4c3c","#743c34","#7c4434","#844c3c","#643c2c"],"color_groups":[{"hex":"#8c4c3c","weight":0.24,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#743c34","weight":0.22,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#7c4434","weight":0.22,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#844c3c","weight":0.22,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#643c2c","weight":0.1,"lightness":0.2824,"saturation":0.3889,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/flower_pot.png","family":"potted_mangrove_propagule","relations":[{"type":"visual_neighbors","target":"minecraft:flower_pot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_bamboo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cactus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_bamboo","label":"Palette proche: Potted Bamboo","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_cactus","label":"Palette proche: Potted Cactus","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_sign","label":"Palette proche: Mangrove Wall Sign","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.815},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.809},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.796},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.793},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.793},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.782},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.771},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.771},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.771},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.769},{"type":"color_analogous","target":"minecraft:flower_pot","label":"Couleurs analogues: Flower Pot","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_bamboo","label":"Couleurs analogues: Potted Bamboo","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_cactus","label":"Couleurs analogues: Potted Cactus","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_slab","label":"Couleurs analogues: Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_stairs","label":"Couleurs analogues: Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:brick_wall","label":"Couleurs analogues: Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:bricks","label":"Couleurs analogues: Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chain","label":"Couleurs analogues: Copper Chain","confidence":0.959},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.926},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.922},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.914},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.895},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.895},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.845},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.836},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.878},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.872},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.86},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.86},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.86},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.86},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.84},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.699},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.946},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.925},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.925},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.92},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.606},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.572},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.565},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.565},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.565},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.565},{"type":"value_contrast","target":"minecraft:white_terracotta","label":"Contraste clair sombre: White Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55}],"category":""},{"id":"minecraft:potted_oak_sapling","name":"Potted Oak Sapling","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#4e6b29","dominant_hex":"#75562e","average_hex":"#4e6b29","hue_group":"yellow","lightness":0.2902,"saturation":0.4459,"palette":["#75562e","#195e19","#448c2c","#54ac3c","#5c3c1c","#4c3414"],"color_groups":[{"hex":"#75562e","weight":0.2523,"lightness":0.3196,"saturation":0.4356,"hue_group":"yellow"},{"hex":"#195e19","weight":0.1892,"lightness":0.2333,"saturation":0.5798,"hue_group":"green"},{"hex":"#448c2c","weight":0.1802,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#54ac3c","weight":0.1712,"lightness":0.4549,"saturation":0.4828,"hue_group":"green"},{"hex":"#5c3c1c","weight":0.1261,"lightness":0.2353,"saturation":0.5333,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.0811,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_sapling.png","family":"potted_oak","relations":[{"type":"visual_neighbors","target":"minecraft:dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rose_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oak_sapling","label":"Palette proche: Oak Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sapling","label":"Palette proche: Dark Oak Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Palette proche: Potted Dark Oak Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sapling","label":"Palette proche: Bamboo Sapling","confidence":0.74},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.74},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.73},{"type":"color_neighbors","target":"minecraft:potted_spruce_sapling","label":"Palette proche: Potted Spruce Sapling","confidence":0.73},{"type":"color_neighbors","target":"minecraft:spruce_sapling","label":"Palette proche: Spruce Sapling","confidence":0.73},{"type":"color_neighbors","target":"minecraft:cave_vines_plant","label":"Palette proche: Cave Vines Plant","confidence":0.726},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.726},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.726},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.726},{"type":"color_bridge","target":"minecraft:spruce_button","label":"Pont de nuance par palette: Spruce Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_fence","label":"Pont de nuance par palette: Spruce Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_fence_gate","label":"Pont de nuance par palette: Spruce Fence Gate","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_planks","label":"Pont de nuance par palette: Spruce Planks","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_pressure_plate","label":"Pont de nuance par palette: Spruce Pressure Plate","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_sign","label":"Pont de nuance par palette: Spruce Sign","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_slab","label":"Pont de nuance par palette: Spruce Slab","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_stairs","label":"Pont de nuance par palette: Spruce Stairs","confidence":0.774},{"type":"color_bridge","target":"minecraft:spruce_wall_sign","label":"Pont de nuance par palette: Spruce Wall Sign","confidence":0.774},{"type":"color_bridge","target":"minecraft:dark_oak_door","label":"Pont de nuance par palette: Dark Oak Door","confidence":0.769},{"type":"color_analogous","target":"minecraft:oak_sapling","label":"Couleurs analogues: Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_tulip","label":"Couleurs analogues: Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_orange_tulip","label":"Couleurs analogues: Potted Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete_powder","label":"Couleurs analogues: Lime Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.956},{"type":"color_analogous","target":"minecraft:lime_stained_glass","label":"Couleurs analogues: Lime Stained Glass","confidence":0.956},{"type":"color_analogous","target":"minecraft:potted_red_tulip","label":"Couleurs analogues: Potted Red Tulip","confidence":0.95},{"type":"color_analogous","target":"minecraft:red_tulip","label":"Couleurs analogues: Red Tulip","confidence":0.95},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.953},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.951},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.932},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.923},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.923},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.921},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.917},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.96},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.953},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.953},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.953},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.936},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.933},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.929},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.929},{"type":"color_square","target":"minecraft:warped_door","label":"Harmonie carree: Warped Door","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_hyphae","label":"Harmonie carree: Crimson Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_stem","label":"Harmonie carree: Crimson Stem","confidence":0.96},{"type":"color_square","target":"minecraft:black_glazed_terracotta","label":"Harmonie carree: Black Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:fire_coral","label":"Harmonie carree: Fire Coral","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_hanging_sign","label":"Harmonie carree: Cherry Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_wall_hanging_sign","label":"Harmonie carree: Cherry Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_cherry_log","label":"Harmonie carree: Stripped Cherry Log","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.647},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.614},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.591},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.573},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.573},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.56},{"type":"value_contrast","target":"minecraft:azure_bluet","label":"Contraste clair sombre: Azure Bluet","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_azure_bluet","label":"Contraste clair sombre: Potted Azure Bluet","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_open_eyeblossom","name":"Potted Open Eyeblossom","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#ee8a26","dominant_hex":"#ec7414","average_hex":"#ee8a26","hue_group":"red","lightness":0.5412,"saturation":0.8547,"palette":["#ec7414","#eca434"],"color_groups":[{"hex":"#ec7414","weight":0.5,"lightness":0.502,"saturation":0.8504,"hue_group":"red"},{"hex":"#eca434","weight":0.5,"lightness":0.5647,"saturation":0.8288,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/open_eyeblossom_emissive.png","family":"potted_open_eyeblossom","relations":[{"type":"visual_neighbors","target":"minecraft:orange_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shroomlight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_clump","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.931},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.901},{"type":"color_neighbors","target":"minecraft:resin_brick_stairs","label":"Palette proche: Resin Brick Stairs","confidence":0.901},{"type":"color_neighbors","target":"minecraft:resin_brick_wall","label":"Palette proche: Resin Brick Wall","confidence":0.901},{"type":"color_neighbors","target":"minecraft:resin_bricks","label":"Palette proche: Resin Bricks","confidence":0.901},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.896},{"type":"color_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Palette proche: Chiseled Resin Bricks","confidence":0.886},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.885},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.885},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.882},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.871},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.688},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.644},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.644},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.636},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.598},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.598},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.58},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.58},{"type":"color_analogous","target":"minecraft:orange_concrete_powder","label":"Couleurs analogues: Orange Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:raw_iron_block","label":"Couleurs analogues: Raw Iron Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:carved_pumpkin","label":"Couleurs analogues: Carved Pumpkin","confidence":0.952},{"type":"color_analogous","target":"minecraft:glowstone","label":"Couleurs analogues: Glowstone","confidence":0.947},{"type":"color_analogous","target":"minecraft:orange_stained_glass","label":"Couleurs analogues: Orange Stained Glass","confidence":0.944},{"type":"color_analogous","target":"minecraft:orange_stained_glass_pane","label":"Couleurs analogues: Orange Stained Glass Pane","confidence":0.943},{"type":"color_analogous","target":"minecraft:pumpkin","label":"Couleurs analogues: Pumpkin","confidence":0.939},{"type":"color_analogous","target":"minecraft:brown_stained_glass","label":"Couleurs analogues: Brown Stained Glass","confidence":0.939},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.869},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.852},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.821},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.821},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.821},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.747},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.745},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.742},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.896},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.882},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.881},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.878},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.878},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.873},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.861},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.86},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.951},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.936},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.852},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.802},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.79},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:potted_orange_tulip","name":"Potted Orange Tulip","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#5d8e1f","dominant_hex":"#147c04","average_hex":"#5d8e1f","hue_group":"yellow","lightness":0.3392,"saturation":0.6416,"palette":["#147c04","#54ac2c","#4c8c2c","#c6722a","#f49c24","#549c2c"],"color_groups":[{"hex":"#147c04","weight":0.2927,"lightness":0.251,"saturation":0.9375,"hue_group":"green"},{"hex":"#54ac2c","weight":0.2195,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#4c8c2c","weight":0.1951,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#c6722a","weight":0.122,"lightness":0.4706,"saturation":0.65,"hue_group":"red"},{"hex":"#f49c24","weight":0.0976,"lightness":0.549,"saturation":0.9043,"hue_group":"yellow"},{"hex":"#549c2c","weight":0.0732,"lightness":0.3922,"saturation":0.56,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/orange_tulip.png","family":"potted_orange_tulip","relations":[{"type":"visual_neighbors","target":"minecraft:orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hay_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bell","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.931},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.931},{"type":"color_neighbors","target":"minecraft:dandelion","label":"Palette proche: Dandelion","confidence":0.913},{"type":"color_neighbors","target":"minecraft:potted_dandelion","label":"Palette proche: Potted Dandelion","confidence":0.913},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.882},{"type":"color_neighbors","target":"minecraft:seagrass","label":"Palette proche: Seagrass","confidence":0.791},{"type":"color_neighbors","target":"minecraft:tall_seagrass","label":"Palette proche: Tall Seagrass","confidence":0.788},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.787},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.774},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.774},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.755},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.759},{"type":"color_bridge","target":"minecraft:poppy","label":"Pont de nuance par palette: Poppy","confidence":0.752},{"type":"color_bridge","target":"minecraft:potted_poppy","label":"Pont de nuance par palette: Potted Poppy","confidence":0.752},{"type":"color_bridge","target":"minecraft:cut_red_sandstone","label":"Pont de nuance par palette: Cut Red Sandstone","confidence":0.663},{"type":"color_bridge","target":"minecraft:yellow_terracotta","label":"Pont de nuance par palette: Yellow Terracotta","confidence":0.66},{"type":"color_bridge","target":"minecraft:red_sand","label":"Pont de nuance par palette: Red Sand","confidence":0.659},{"type":"color_bridge","target":"minecraft:cut_red_sandstone_slab","label":"Pont de nuance par palette: Cut Red Sandstone Slab","confidence":0.651},{"type":"color_bridge","target":"minecraft:red_sandstone_slab","label":"Pont de nuance par palette: Red Sandstone Slab","confidence":0.651},{"type":"color_bridge","target":"minecraft:red_sandstone_stairs","label":"Pont de nuance par palette: Red Sandstone Stairs","confidence":0.651},{"type":"color_bridge","target":"minecraft:smooth_red_sandstone","label":"Pont de nuance par palette: Smooth Red Sandstone","confidence":0.651},{"type":"color_analogous","target":"minecraft:orange_tulip","label":"Couleurs analogues: Orange Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_concrete_powder","label":"Couleurs analogues: Lime Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_carpet","label":"Couleurs analogues: Lime Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_wool","label":"Couleurs analogues: Lime Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_sapling","label":"Couleurs analogues: Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_oak_sapling","label":"Couleurs analogues: Potted Oak Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_stained_glass","label":"Couleurs analogues: Lime Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.956},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.952},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.939},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.937},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.936},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.907},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.907},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.893},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.96},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.955},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.955},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.955},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.947},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.929},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.923},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.923},{"type":"color_square","target":"minecraft:fire_coral","label":"Harmonie carree: Fire Coral","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_hyphae","label":"Harmonie carree: Crimson Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_stem","label":"Harmonie carree: Crimson Stem","confidence":0.96},{"type":"color_square","target":"minecraft:black_glazed_terracotta","label":"Harmonie carree: Black Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:beacon","label":"Harmonie carree: Beacon","confidence":0.96},{"type":"color_square","target":"minecraft:diamond_block","label":"Harmonie carree: Diamond Block","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_hanging_sign","label":"Harmonie carree: Cherry Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_wall_hanging_sign","label":"Harmonie carree: Cherry Wall Hanging Sign","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.595},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.561},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_oxeye_daisy","name":"Potted Oxeye Daisy","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#b3ca8f","dominant_hex":"#d4ecec","average_hex":"#b3ca8f","hue_group":"yellow","lightness":0.6765,"saturation":0.3576,"palette":["#d4ecec","#f4f4f4","#f8c833","#147c04","#54a52c","#9cbcbc"],"color_groups":[{"hex":"#d4ecec","weight":0.2353,"lightness":0.8784,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#f4f4f4","weight":0.2353,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f8c833","weight":0.1765,"lightness":0.5863,"saturation":0.9336,"hue_group":"yellow"},{"hex":"#147c04","weight":0.1373,"lightness":0.251,"saturation":0.9375,"hue_group":"green"},{"hex":"#54a52c","weight":0.1373,"lightness":0.4098,"saturation":0.5789,"hue_group":"green"},{"hex":"#9cbcbc","weight":0.0784,"lightness":0.6745,"saturation":0.1928,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxeye_daisy.png","family":"potted_oxeye_daisy","relations":[{"type":"visual_neighbors","target":"minecraft:oxeye_daisy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxeye_daisy","label":"Palette proche: Oxeye Daisy","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azure_bluet","label":"Palette proche: Azure Bluet","confidence":0.904},{"type":"color_neighbors","target":"minecraft:potted_azure_bluet","label":"Palette proche: Potted Azure Bluet","confidence":0.904},{"type":"color_neighbors","target":"minecraft:wildflowers","label":"Palette proche: Wildflowers","confidence":0.809},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.771},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.771},{"type":"color_neighbors","target":"minecraft:lily_of_the_valley","label":"Palette proche: Lily Of The Valley","confidence":0.683},{"type":"color_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Palette proche: Potted Lily Of The Valley","confidence":0.683},{"type":"color_neighbors","target":"minecraft:white_candle","label":"Palette proche: White Candle","confidence":0.631},{"type":"color_neighbors","target":"minecraft:white_glazed_terracotta","label":"Palette proche: White Glazed Terracotta","confidence":0.622},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.592},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.592},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par palette: White Candle","confidence":0.696},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.689},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par palette: White Shulker Box","confidence":0.656},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par palette: Cobweb","confidence":0.651},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par palette: White Concrete Powder","confidence":0.65},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.639},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.639},{"type":"color_bridge","target":"minecraft:white_concrete","label":"Pont de nuance par palette: White Concrete","confidence":0.628},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par palette: Light","confidence":0.62},{"type":"color_bridge","target":"minecraft:diorite","label":"Pont de nuance par palette: Diorite","confidence":0.618},{"type":"color_analogous","target":"minecraft:oxeye_daisy","label":"Couleurs analogues: Oxeye Daisy","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sapling","label":"Couleurs analogues: Birch Sapling","confidence":0.936},{"type":"color_analogous","target":"minecraft:potted_birch_sapling","label":"Couleurs analogues: Potted Birch Sapling","confidence":0.936},{"type":"color_analogous","target":"minecraft:bamboo","label":"Couleurs analogues: Bamboo","confidence":0.911},{"type":"color_analogous","target":"minecraft:potted_red_tulip","label":"Couleurs analogues: Potted Red Tulip","confidence":0.906},{"type":"color_analogous","target":"minecraft:red_tulip","label":"Couleurs analogues: Red Tulip","confidence":0.906},{"type":"color_analogous","target":"minecraft:lime_stained_glass","label":"Couleurs analogues: Lime Stained Glass","confidence":0.901},{"type":"color_analogous","target":"minecraft:lime_stained_glass_pane","label":"Couleurs analogues: Lime Stained Glass Pane","confidence":0.901},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.96},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.96},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.923},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.882},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.864},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.845},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.845},{"type":"color_triad","target":"minecraft:light_blue_glazed_terracotta","label":"Harmonie triadique: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:cornflower","label":"Harmonie triadique: Cornflower","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_cornflower","label":"Harmonie triadique: Potted Cornflower","confidence":0.96},{"type":"color_triad","target":"minecraft:light_blue_concrete","label":"Harmonie triadique: Light Blue Concrete","confidence":0.951},{"type":"color_triad","target":"minecraft:brain_coral","label":"Harmonie triadique: Brain Coral","confidence":0.949},{"type":"color_triad","target":"minecraft:soul_lantern","label":"Harmonie triadique: Soul Lantern","confidence":0.949},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.935},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.935},{"type":"color_square","target":"minecraft:warped_trapdoor","label":"Harmonie carree: Warped Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:warped_button","label":"Harmonie carree: Warped Button","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence","label":"Harmonie carree: Warped Fence","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence_gate","label":"Harmonie carree: Warped Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_planks","label":"Harmonie carree: Warped Planks","confidence":0.96},{"type":"color_square","target":"minecraft:warped_pressure_plate","label":"Harmonie carree: Warped Pressure Plate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_sign","label":"Harmonie carree: Warped Sign","confidence":0.96},{"type":"color_square","target":"minecraft:warped_slab","label":"Harmonie carree: Warped Slab","confidence":0.96},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.559},{"type":"value_contrast","target":"minecraft:big_dripleaf_stem","label":"Contraste clair sombre: Big Dripleaf Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:small_dripleaf","label":"Contraste clair sombre: Small Dripleaf","confidence":0.55},{"type":"value_contrast","target":"minecraft:azalea_leaves","label":"Contraste clair sombre: Azalea Leaves","confidence":0.55},{"type":"value_contrast","target":"minecraft:moss_block","label":"Contraste clair sombre: Moss Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:moss_carpet","label":"Contraste clair sombre: Moss Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:oak_sapling","label":"Contraste clair sombre: Oak Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_oak_sapling","label":"Contraste clair sombre: Potted Oak Sapling","confidence":0.55}],"category":""},{"id":"minecraft:potted_pale_oak_sapling","name":"Potted Pale Oak Sapling","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#6e6a64","dominant_hex":"#7c8474","average_hex":"#6e6a64","hue_group":"neutral","lightness":0.4118,"saturation":0.0476,"palette":["#7c8474","#8c9484","#443c3c","#5b5454","#745c5c","#76716c"],"color_groups":[{"hex":"#7c8474","weight":0.2039,"lightness":0.4863,"saturation":0.0645,"hue_group":"neutral"},{"hex":"#8c9484","weight":0.1942,"lightness":0.549,"saturation":0.0696,"hue_group":"neutral"},{"hex":"#443c3c","weight":0.165,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#5b5454","weight":0.165,"lightness":0.3431,"saturation":0.04,"hue_group":"neutral"},{"hex":"#745c5c","weight":0.1553,"lightness":0.4078,"saturation":0.1154,"hue_group":"neutral"},{"hex":"#76716c","weight":0.1165,"lightness":0.4431,"saturation":0.0442,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pale_oak_sapling.png","family":"potted_pale_oak","relations":[{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sticky_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_sapling","label":"Palette proche: Pale Oak Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_moss_block","label":"Palette proche: Pale Moss Block","confidence":0.913},{"type":"color_neighbors","target":"minecraft:pale_moss_carpet","label":"Palette proche: Pale Moss Carpet","confidence":0.913},{"type":"color_neighbors","target":"minecraft:pale_hanging_moss","label":"Palette proche: Pale Hanging Moss","confidence":0.904},{"type":"color_neighbors","target":"minecraft:pale_oak_log","label":"Palette proche: Pale Oak Log","confidence":0.893},{"type":"color_neighbors","target":"minecraft:pale_oak_wood","label":"Palette proche: Pale Oak Wood","confidence":0.893},{"type":"color_neighbors","target":"minecraft:dead_tube_coral","label":"Palette proche: Dead Tube Coral","confidence":0.892},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.885},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.882},{"type":"color_neighbors","target":"minecraft:dead_tube_coral_block","label":"Palette proche: Dead Tube Coral Block","confidence":0.881},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.876},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.876},{"type":"color_bridge","target":"minecraft:pale_oak_sapling","label":"Pont de nuance par palette: Pale Oak Sapling","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_moss_block","label":"Pont de nuance par palette: Pale Moss Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_moss_carpet","label":"Pont de nuance par palette: Pale Moss Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_hanging_moss","label":"Pont de nuance par palette: Pale Hanging Moss","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral","label":"Pont de nuance par palette: Dead Tube Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral_block","label":"Pont de nuance par palette: Dead Tube Coral Block","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.551},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_pink_tulip","name":"Potted Pink Tulip","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#639d4e","dominant_hex":"#147c04","average_hex":"#639d4e","hue_group":"green","lightness":0.4608,"saturation":0.3362,"palette":["#147c04","#54ac2c","#4c8c2c","#efcffc","#549c2c","#e4acf4"],"color_groups":[{"hex":"#147c04","weight":0.2683,"lightness":0.251,"saturation":0.9375,"hue_group":"green"},{"hex":"#54ac2c","weight":0.2439,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#4c8c2c","weight":0.1707,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#efcffc","weight":0.1463,"lightness":0.9,"saturation":0.8824,"hue_group":"purple"},{"hex":"#549c2c","weight":0.0976,"lightness":0.3922,"saturation":0.56,"hue_group":"green"},{"hex":"#e4acf4","weight":0.0732,"lightness":0.8157,"saturation":0.766,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pink_tulip.png","family":"potted_pink_tulip","relations":[{"type":"visual_neighbors","target":"minecraft:pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_propagule","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pink_tulip","label":"Palette proche: Pink Tulip","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.783},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.783},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.761},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.761},{"type":"color_neighbors","target":"minecraft:lilac","label":"Palette proche: Lilac","confidence":0.756},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.746},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.746},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.722},{"type":"color_neighbors","target":"minecraft:lily_of_the_valley","label":"Palette proche: Lily Of The Valley","confidence":0.656},{"type":"color_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Palette proche: Potted Lily Of The Valley","confidence":0.656},{"type":"color_neighbors","target":"minecraft:peony","label":"Palette proche: Peony","confidence":0.646},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.799},{"type":"color_bridge","target":"minecraft:peony","label":"Pont de nuance par sous-ton: Peony","confidence":0.709},{"type":"color_bridge","target":"minecraft:potted_flowering_azalea_bush","label":"Pont de nuance par palette: Potted Flowering Azalea Bush","confidence":0.687},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.596},{"type":"color_bridge","target":"minecraft:cornflower","label":"Pont de nuance par palette: Cornflower","confidence":0.587},{"type":"color_bridge","target":"minecraft:potted_cornflower","label":"Pont de nuance par palette: Potted Cornflower","confidence":0.587},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.58},{"type":"color_analogous","target":"minecraft:pink_tulip","label":"Couleurs analogues: Pink Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_white_tulip","label":"Couleurs analogues: Potted White Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:white_tulip","label":"Couleurs analogues: White Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:beetroots","label":"Couleurs analogues: Beetroots","confidence":0.96},{"type":"color_analogous","target":"minecraft:sunflower","label":"Couleurs analogues: Sunflower","confidence":0.952},{"type":"color_analogous","target":"minecraft:slime_block","label":"Couleurs analogues: Slime Block","confidence":0.893},{"type":"color_analogous","target":"minecraft:potatoes","label":"Couleurs analogues: Potatoes","confidence":0.89},{"type":"color_analogous","target":"minecraft:test_block","label":"Couleurs analogues: Test Block","confidence":0.887},{"type":"color_complement","target":"minecraft:magenta_stained_glass","label":"Contraste complementaire: Magenta Stained Glass","confidence":0.958},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.943},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.759},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.726},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.726},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.706},{"type":"color_complement","target":"minecraft:dragon_egg","label":"Contraste complementaire: Dragon Egg","confidence":0.669},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.645},{"type":"color_triad","target":"minecraft:tube_coral_fan","label":"Harmonie triadique: Tube Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:tube_coral_wall_fan","label":"Harmonie triadique: Tube Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:black_concrete","label":"Harmonie triadique: Black Concrete","confidence":0.952},{"type":"color_triad","target":"minecraft:potted_crimson_roots","label":"Harmonie triadique: Potted Crimson Roots","confidence":0.93},{"type":"color_triad","target":"minecraft:tube_coral_block","label":"Harmonie triadique: Tube Coral Block","confidence":0.919},{"type":"color_triad","target":"minecraft:tube_coral","label":"Harmonie triadique: Tube Coral","confidence":0.907},{"type":"color_triad","target":"minecraft:crimson_roots","label":"Harmonie triadique: Crimson Roots","confidence":0.905},{"type":"color_triad","target":"minecraft:cracked_nether_bricks","label":"Harmonie triadique: Cracked Nether Bricks","confidence":0.848},{"type":"color_square","target":"minecraft:brick_slab","label":"Harmonie carree: Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:brick_stairs","label":"Harmonie carree: Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:brick_wall","label":"Harmonie carree: Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:bricks","label":"Harmonie carree: Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:chiseled_copper","label":"Harmonie carree: Chiseled Copper","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_chiseled_copper","label":"Harmonie carree: Waxed Chiseled Copper","confidence":0.96},{"type":"color_square","target":"minecraft:cut_copper","label":"Harmonie carree: Cut Copper","confidence":0.96},{"type":"color_square","target":"minecraft:cut_copper_slab","label":"Harmonie carree: Cut Copper Slab","confidence":0.96},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_poppy","name":"Potted Poppy","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#814126","dominant_hex":"#ec342c","average_hex":"#814126","hue_group":"red","lightness":0.3275,"saturation":0.5449,"palette":["#ec342c","#244424","#256025","#942417","#bc242c","#4c8c2c"],"color_groups":[{"hex":"#ec342c","weight":0.2571,"lightness":0.549,"saturation":0.8348,"hue_group":"red"},{"hex":"#244424","weight":0.2,"lightness":0.2039,"saturation":0.3077,"hue_group":"green"},{"hex":"#256025","weight":0.1714,"lightness":0.2608,"saturation":0.4436,"hue_group":"green"},{"hex":"#942417","weight":0.1429,"lightness":0.3353,"saturation":0.731,"hue_group":"red"},{"hex":"#bc242c","weight":0.1429,"lightness":0.4392,"saturation":0.6786,"hue_group":"red"},{"hex":"#4c8c2c","weight":0.0857,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/poppy.png","family":"potted_poppy","relations":[{"type":"visual_neighbors","target":"minecraft:poppy","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_nylium","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_gold_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:poppy","label":"Palette proche: Poppy","confidence":0.94},{"type":"color_neighbors","target":"minecraft:rose_bush","label":"Palette proche: Rose Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.804},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.804},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.7},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.699},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.699},{"type":"color_neighbors","target":"minecraft:sniffer_egg","label":"Palette proche: Sniffer Egg","confidence":0.681},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.647},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.643},{"type":"color_neighbors","target":"minecraft:dark_oak_sapling","label":"Palette proche: Dark Oak Sapling","confidence":0.63},{"type":"color_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Palette proche: Potted Dark Oak Sapling","confidence":0.63},{"type":"color_bridge","target":"minecraft:potted_red_tulip","label":"Pont de nuance par palette: Potted Red Tulip","confidence":0.839},{"type":"color_bridge","target":"minecraft:red_tulip","label":"Pont de nuance par palette: Red Tulip","confidence":0.839},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.752},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.752},{"type":"color_bridge","target":"minecraft:beetroots","label":"Pont de nuance par palette: Beetroots","confidence":0.709},{"type":"color_bridge","target":"minecraft:potatoes","label":"Pont de nuance par palette: Potatoes","confidence":0.706},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.695},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.695},{"type":"color_bridge","target":"minecraft:carrots","label":"Pont de nuance par palette: Carrots","confidence":0.694},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.693},{"type":"color_analogous","target":"minecraft:poppy","label":"Couleurs analogues: Poppy","confidence":0.96},{"type":"color_analogous","target":"minecraft:item_frame","label":"Couleurs analogues: Item Frame","confidence":0.96},{"type":"color_analogous","target":"minecraft:magma_block","label":"Couleurs analogues: Magma Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_shelf","label":"Couleurs analogues: Acacia Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_bulb","label":"Couleurs analogues: Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_bulb","label":"Couleurs analogues: Waxed Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_hanging_sign","label":"Couleurs analogues: Acacia Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_hanging_sign","label":"Couleurs analogues: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.922},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.922},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.921},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.917},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.897},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.859},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.938},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.934},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.856},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.96},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.885},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.885},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.877},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.864},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.827},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.619},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.586},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.577},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.577},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.577},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.577},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.563},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55}],"category":""},{"id":"minecraft:potted_red_mushroom","name":"Potted Red Mushroom","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#d94b44","dominant_hex":"#e41414","average_hex":"#d94b44","hue_group":"red","lightness":0.5588,"saturation":0.6622,"palette":["#e41414","#fc2c2c","#d3cf9b","#97b7b9","#c41c24","#ac141c"],"color_groups":[{"hex":"#e41414","weight":0.3125,"lightness":0.4863,"saturation":0.8387,"hue_group":"red"},{"hex":"#fc2c2c","weight":0.25,"lightness":0.5804,"saturation":0.972,"hue_group":"red"},{"hex":"#d3cf9b","weight":0.1875,"lightness":0.7176,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#97b7b9","weight":0.0938,"lightness":0.6588,"saturation":0.1954,"hue_group":"cyan"},{"hex":"#c41c24","weight":0.0938,"lightness":0.4392,"saturation":0.75,"hue_group":"red"},{"hex":"#ac141c","weight":0.0625,"lightness":0.3765,"saturation":0.7917,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_mushroom.png","family":"potted_red_mushroom","relations":[{"type":"visual_neighbors","target":"minecraft:red_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_mushroom_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_torch","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_candle","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_mushroom","label":"Palette proche: Red Mushroom","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_mushroom_block","label":"Palette proche: Red Mushroom Block","confidence":0.722},{"type":"color_neighbors","target":"minecraft:red_glazed_terracotta","label":"Palette proche: Red Glazed Terracotta","confidence":0.718},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.715},{"type":"color_neighbors","target":"minecraft:fire_coral","label":"Palette proche: Fire Coral","confidence":0.713},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.71},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.71},{"type":"color_neighbors","target":"minecraft:barrier","label":"Palette proche: Barrier","confidence":0.694},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.67},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.668},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.668},{"type":"color_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Palette proche: Chiseled Resin Bricks","confidence":0.665},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.67},{"type":"color_bridge","target":"minecraft:cut_sandstone","label":"Pont de nuance par palette: Cut Sandstone","confidence":0.64},{"type":"color_bridge","target":"minecraft:sandstone","label":"Pont de nuance par palette: Sandstone","confidence":0.633},{"type":"color_bridge","target":"minecraft:sandstone_wall","label":"Pont de nuance par palette: Sandstone Wall","confidence":0.633},{"type":"color_bridge","target":"minecraft:chiseled_sandstone","label":"Pont de nuance par palette: Chiseled Sandstone","confidence":0.631},{"type":"color_bridge","target":"minecraft:suspicious_sand","label":"Pont de nuance par palette: Suspicious Sand","confidence":0.629},{"type":"color_bridge","target":"minecraft:sand","label":"Pont de nuance par palette: Sand","confidence":0.62},{"type":"color_bridge","target":"minecraft:orange_glazed_terracotta","label":"Pont de nuance par palette: Orange Glazed Terracotta","confidence":0.613},{"type":"color_bridge","target":"minecraft:raw_gold_block","label":"Pont de nuance par palette: Raw Gold Block","confidence":0.613},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.611},{"type":"color_analogous","target":"minecraft:red_mushroom","label":"Couleurs analogues: Red Mushroom","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_glazed_terracotta","label":"Couleurs analogues: Red Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete_powder","label":"Couleurs analogues: Red Concrete Powder","confidence":0.946},{"type":"color_analogous","target":"minecraft:red_carpet","label":"Couleurs analogues: Red Carpet","confidence":0.945},{"type":"color_analogous","target":"minecraft:red_wool","label":"Couleurs analogues: Red Wool","confidence":0.945},{"type":"color_analogous","target":"minecraft:mangrove_shelf","label":"Couleurs analogues: Mangrove Shelf","confidence":0.945},{"type":"color_analogous","target":"minecraft:red_mushroom_block","label":"Couleurs analogues: Red Mushroom Block","confidence":0.939},{"type":"color_analogous","target":"minecraft:cherry_shelf","label":"Couleurs analogues: Cherry Shelf","confidence":0.937},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.953},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.953},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.953},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.94},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.956},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.833},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.832},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.8},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.789},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.789},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.711},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.946},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.943},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.936},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.921},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.921},{"type":"value_contrast","target":"minecraft:red_nether_brick_slab","label":"Contraste clair sombre: Red Nether Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:red_nether_brick_stairs","label":"Contraste clair sombre: Red Nether Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:red_nether_brick_wall","label":"Contraste clair sombre: Red Nether Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:red_nether_bricks","label":"Contraste clair sombre: Red Nether Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_glazed_terracotta","label":"Contraste clair sombre: Black Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_red_tulip","name":"Potted Red Tulip","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#5a8121","dominant_hex":"#147c04","average_hex":"#5a8121","hue_group":"yellow","lightness":0.3176,"saturation":0.5926,"palette":["#147c04","#54ac2c","#549c2c","#4c8c2c","#ef3731","#ac2424"],"color_groups":[{"hex":"#147c04","weight":0.2653,"lightness":0.251,"saturation":0.9375,"hue_group":"green"},{"hex":"#54ac2c","weight":0.2449,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#549c2c","weight":0.1633,"lightness":0.3922,"saturation":0.56,"hue_group":"green"},{"hex":"#4c8c2c","weight":0.1429,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#ef3731","weight":0.102,"lightness":0.5647,"saturation":0.8559,"hue_group":"red"},{"hex":"#ac2424","weight":0.0816,"lightness":0.4078,"saturation":0.6538,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_tulip.png","family":"potted_red_tulip","relations":[{"type":"visual_neighbors","target":"minecraft:red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:podzol","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.931},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.931},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.872},{"type":"color_neighbors","target":"minecraft:dandelion","label":"Palette proche: Dandelion","confidence":0.806},{"type":"color_neighbors","target":"minecraft:potted_dandelion","label":"Palette proche: Potted Dandelion","confidence":0.806},{"type":"color_neighbors","target":"minecraft:poppy","label":"Palette proche: Poppy","confidence":0.804},{"type":"color_neighbors","target":"minecraft:potted_poppy","label":"Palette proche: Potted Poppy","confidence":0.804},{"type":"color_neighbors","target":"minecraft:rose_bush","label":"Palette proche: Rose Bush","confidence":0.789},{"type":"color_neighbors","target":"minecraft:pink_tulip","label":"Palette proche: Pink Tulip","confidence":0.783},{"type":"color_neighbors","target":"minecraft:potted_pink_tulip","label":"Palette proche: Potted Pink Tulip","confidence":0.783},{"type":"color_neighbors","target":"minecraft:seagrass","label":"Palette proche: Seagrass","confidence":0.78},{"type":"color_bridge","target":"minecraft:poppy","label":"Pont de nuance par palette: Poppy","confidence":0.839},{"type":"color_bridge","target":"minecraft:potted_poppy","label":"Pont de nuance par palette: Potted Poppy","confidence":0.839},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.826},{"type":"color_bridge","target":"minecraft:wheat","label":"Pont de nuance par palette: Wheat","confidence":0.698},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.664},{"type":"color_bridge","target":"minecraft:raw_copper_block","label":"Pont de nuance par palette: Raw Copper Block","confidence":0.654},{"type":"color_bridge","target":"minecraft:sniffer_egg","label":"Pont de nuance par palette: Sniffer Egg","confidence":0.646},{"type":"color_bridge","target":"minecraft:red_candle","label":"Pont de nuance par palette: Red Candle","confidence":0.601},{"type":"color_bridge","target":"minecraft:red_carpet","label":"Pont de nuance par palette: Red Carpet","confidence":0.594},{"type":"color_bridge","target":"minecraft:red_wool","label":"Pont de nuance par palette: Red Wool","confidence":0.594},{"type":"color_analogous","target":"minecraft:red_tulip","label":"Couleurs analogues: Red Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo","label":"Couleurs analogues: Bamboo","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sapling","label":"Couleurs analogues: Birch Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_birch_sapling","label":"Couleurs analogues: Potted Birch Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_sapling","label":"Couleurs analogues: Oak Sapling","confidence":0.95},{"type":"color_analogous","target":"minecraft:potted_oak_sapling","label":"Couleurs analogues: Potted Oak Sapling","confidence":0.95},{"type":"color_analogous","target":"minecraft:orange_tulip","label":"Couleurs analogues: Orange Tulip","confidence":0.949},{"type":"color_analogous","target":"minecraft:potted_orange_tulip","label":"Couleurs analogues: Potted Orange Tulip","confidence":0.949},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.96},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.945},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.938},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.887},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.88},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.88},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.874},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral","label":"Harmonie triadique: Brain Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.959},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.959},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.959},{"type":"color_triad","target":"minecraft:light_blue_glazed_terracotta","label":"Harmonie triadique: Light Blue Glazed Terracotta","confidence":0.95},{"type":"color_square","target":"minecraft:fire_coral_fan","label":"Harmonie carree: Fire Coral Fan","confidence":0.96},{"type":"color_square","target":"minecraft:fire_coral_wall_fan","label":"Harmonie carree: Fire Coral Wall Fan","confidence":0.96},{"type":"color_square","target":"minecraft:fire_coral_block","label":"Harmonie carree: Fire Coral Block","confidence":0.96},{"type":"color_square","target":"minecraft:warped_button","label":"Harmonie carree: Warped Button","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence","label":"Harmonie carree: Warped Fence","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence_gate","label":"Harmonie carree: Warped Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_planks","label":"Harmonie carree: Warped Planks","confidence":0.96},{"type":"color_square","target":"minecraft:warped_pressure_plate","label":"Harmonie carree: Warped Pressure Plate","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.617},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.584},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.561},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_spruce_sapling","name":"Potted Spruce Sapling","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#2d3c25","dominant_hex":"#243424","average_hex":"#2d3c25","hue_group":"green","lightness":0.1902,"saturation":0.2371,"palette":["#243424","#2c4c2c","#3c5c3c","#2c1c0c","#140c04","#54341c"],"color_groups":[{"hex":"#243424","weight":0.3253,"lightness":0.1725,"saturation":0.1818,"hue_group":"green"},{"hex":"#2c4c2c","weight":0.241,"lightness":0.2353,"saturation":0.2667,"hue_group":"green"},{"hex":"#3c5c3c","weight":0.2048,"lightness":0.298,"saturation":0.2105,"hue_group":"green"},{"hex":"#2c1c0c","weight":0.1084,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#140c04","weight":0.0602,"lightness":0.0471,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#54341c","weight":0.0602,"lightness":0.2196,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_sapling.png","family":"potted_spruce","relations":[{"type":"visual_neighbors","target":"minecraft:spruce_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dried_kelp_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berry_bush","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_fungus","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_emerald_ore","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_sapling","label":"Palette proche: Spruce Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sapling","label":"Palette proche: Dark Oak Sapling","confidence":0.748},{"type":"color_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Palette proche: Potted Dark Oak Sapling","confidence":0.748},{"type":"color_neighbors","target":"minecraft:dried_kelp_block","label":"Palette proche: Dried Kelp Block","confidence":0.735},{"type":"color_neighbors","target":"minecraft:oak_sapling","label":"Palette proche: Oak Sapling","confidence":0.73},{"type":"color_neighbors","target":"minecraft:potted_oak_sapling","label":"Palette proche: Potted Oak Sapling","confidence":0.73},{"type":"color_neighbors","target":"minecraft:sweet_berry_bush","label":"Palette proche: Sweet Berry Bush","confidence":0.702},{"type":"color_neighbors","target":"minecraft:rose_bush","label":"Palette proche: Rose Bush","confidence":0.701},{"type":"color_neighbors","target":"minecraft:note_block","label":"Palette proche: Note Block","confidence":0.697},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.695},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.695},{"type":"color_neighbors","target":"minecraft:chiseled_tuff","label":"Palette proche: Chiseled Tuff","confidence":0.693},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.754},{"type":"color_bridge","target":"minecraft:note_block","label":"Pont de nuance par palette: Note Block","confidence":0.751},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.749},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.749},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.747},{"type":"color_bridge","target":"minecraft:dark_oak_door","label":"Pont de nuance par palette: Dark Oak Door","confidence":0.74},{"type":"color_bridge","target":"minecraft:dark_oak_trapdoor","label":"Pont de nuance par palette: Dark Oak Trapdoor","confidence":0.738},{"type":"color_bridge","target":"minecraft:pitcher_plant","label":"Pont de nuance par sous-ton: Pitcher Plant","confidence":0.738},{"type":"color_bridge","target":"minecraft:dark_oak_shelf","label":"Pont de nuance par palette: Dark Oak Shelf","confidence":0.737},{"type":"color_bridge","target":"minecraft:brown_candle","label":"Pont de nuance par palette: Brown Candle","confidence":0.736},{"type":"color_analogous","target":"minecraft:spruce_sapling","label":"Couleurs analogues: Spruce Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:seagrass","label":"Couleurs analogues: Seagrass","confidence":0.96},{"type":"color_analogous","target":"minecraft:tall_seagrass","label":"Couleurs analogues: Tall Seagrass","confidence":0.96},{"type":"color_analogous","target":"minecraft:lily_of_the_valley","label":"Couleurs analogues: Lily Of The Valley","confidence":0.929},{"type":"color_analogous","target":"minecraft:potted_lily_of_the_valley","label":"Couleurs analogues: Potted Lily Of The Valley","confidence":0.929},{"type":"color_analogous","target":"minecraft:dried_kelp_block","label":"Couleurs analogues: Dried Kelp Block","confidence":0.895},{"type":"color_analogous","target":"minecraft:beetroots","label":"Couleurs analogues: Beetroots","confidence":0.848},{"type":"color_analogous","target":"minecraft:sunflower","label":"Couleurs analogues: Sunflower","confidence":0.843},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.913},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.88},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.88},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.86},{"type":"color_complement","target":"minecraft:dragon_egg","label":"Contraste complementaire: Dragon Egg","confidence":0.834},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.832},{"type":"color_complement","target":"minecraft:magenta_stained_glass","label":"Contraste complementaire: Magenta Stained Glass","confidence":0.807},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.799},{"type":"color_triad","target":"minecraft:purple_terracotta","label":"Harmonie triadique: Purple Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_terracotta","label":"Harmonie triadique: Magenta Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:pearlescent_froglight","label":"Harmonie triadique: Pearlescent Froglight","confidence":0.96},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.945},{"type":"color_triad","target":"minecraft:pink_glazed_terracotta","label":"Harmonie triadique: Pink Glazed Terracotta","confidence":0.942},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.936},{"type":"color_triad","target":"minecraft:pink_stained_glass_pane","label":"Harmonie triadique: Pink Stained Glass Pane","confidence":0.935},{"type":"color_triad","target":"minecraft:pink_shulker_box","label":"Harmonie triadique: Pink Shulker Box","confidence":0.931},{"type":"color_square","target":"minecraft:red_terracotta","label":"Harmonie carree: Red Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:glass_pane","label":"Harmonie carree: Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_concrete","label":"Harmonie carree: Cyan Concrete","confidence":0.95},{"type":"color_square","target":"minecraft:cherry_trapdoor","label":"Harmonie carree: Cherry Trapdoor","confidence":0.924},{"type":"color_square","target":"minecraft:target","label":"Harmonie carree: Target","confidence":0.923},{"type":"color_square","target":"minecraft:nether_gold_ore","label":"Harmonie carree: Nether Gold Ore","confidence":0.917},{"type":"color_square","target":"minecraft:crimson_fungus","label":"Harmonie carree: Crimson Fungus","confidence":0.902},{"type":"color_square","target":"minecraft:potted_crimson_fungus","label":"Harmonie carree: Potted Crimson Fungus","confidence":0.902},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.747},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.713},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.691},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.676},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.676},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.663},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.642},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.639}],"category":"natural"},{"id":"minecraft:potted_torchflower","name":"Potted Torchflower","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#65654d","dominant_hex":"#7b2d5e","average_hex":"#65654d","hue_group":"yellow","lightness":0.349,"saturation":0.1348,"palette":["#7b2d5e","#f0b042","#1c5c3c","#144434","#24845c","#576769"],"color_groups":[{"hex":"#7b2d5e","weight":0.2268,"lightness":0.3294,"saturation":0.4643,"hue_group":"purple"},{"hex":"#f0b042","weight":0.2062,"lightness":0.6,"saturation":0.8529,"hue_group":"yellow"},{"hex":"#1c5c3c","weight":0.1649,"lightness":0.2353,"saturation":0.5333,"hue_group":"cyan"},{"hex":"#144434","weight":0.1443,"lightness":0.1725,"saturation":0.5455,"hue_group":"cyan"},{"hex":"#24845c","weight":0.134,"lightness":0.3294,"saturation":0.5714,"hue_group":"cyan"},{"hex":"#576769","weight":0.1237,"lightness":0.3765,"saturation":0.0937,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/torchflower.png","family":"potted_torchflower","relations":[{"type":"visual_neighbors","target":"minecraft:torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lever","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:daylight_detector","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_flowering_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:muddy_mangrove_roots","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:torchflower","label":"Palette proche: Torchflower","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_warped_fungus","label":"Palette proche: Potted Warped Fungus","confidence":0.679},{"type":"color_neighbors","target":"minecraft:warped_fungus","label":"Palette proche: Warped Fungus","confidence":0.679},{"type":"color_neighbors","target":"minecraft:lantern","label":"Palette proche: Lantern","confidence":0.628},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.625},{"type":"color_neighbors","target":"minecraft:torchflower_crop","label":"Palette proche: Torchflower Crop","confidence":0.622},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.621},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.621},{"type":"color_neighbors","target":"minecraft:gray_concrete_powder","label":"Palette proche: Gray Concrete Powder","confidence":0.606},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.599},{"type":"color_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Palette proche: Gray Glazed Terracotta","confidence":0.596},{"type":"color_neighbors","target":"minecraft:glow_lichen","label":"Palette proche: Glow Lichen","confidence":0.585},{"type":"color_bridge","target":"minecraft:torchflower","label":"Pont de nuance par palette: Torchflower","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par palette: Potted Warped Fungus","confidence":0.736},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par palette: Warped Fungus","confidence":0.736},{"type":"color_bridge","target":"minecraft:lantern","label":"Pont de nuance par palette: Lantern","confidence":0.694},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.691},{"type":"color_bridge","target":"minecraft:torchflower_crop","label":"Pont de nuance par sous-ton: Torchflower Crop","confidence":0.689},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par palette: Waxed Weathered Copper Chain","confidence":0.688},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par palette: Weathered Copper Chain","confidence":0.688},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.676},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.67},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.605},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.571},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.57},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.569},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.569},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.554},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.554},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.554}],"category":"natural"},{"id":"minecraft:potted_warped_fungus","name":"Potted Warped Fungus","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#4a6d58","dominant_hex":"#1c5f5c","average_hex":"#4a6d58","hue_group":"green","lightness":0.3588,"saturation":0.1913,"palette":["#1c5f5c","#4c2636","#14b484","#f75e12","#147c84","#149c84"],"color_groups":[{"hex":"#1c5f5c","weight":0.2,"lightness":0.2412,"saturation":0.5447,"hue_group":"cyan"},{"hex":"#4c2636","weight":0.2,"lightness":0.2235,"saturation":0.3333,"hue_group":"red"},{"hex":"#14b484","weight":0.18,"lightness":0.3922,"saturation":0.8,"hue_group":"cyan"},{"hex":"#f75e12","weight":0.18,"lightness":0.5196,"saturation":0.9347,"hue_group":"red"},{"hex":"#147c84","weight":0.14,"lightness":0.298,"saturation":0.7368,"hue_group":"cyan"},{"hex":"#149c84","weight":0.1,"lightness":0.3451,"saturation":0.7727,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_fungus.png","family":"potted_warped_fungus","relations":[{"type":"visual_neighbors","target":"minecraft:warped_fungus","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_emerald_ore","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal_frame","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_plant","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:warped_fungus","label":"Palette proche: Warped Fungus","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_glazed_terracotta","label":"Palette proche: Orange Glazed Terracotta","confidence":0.709},{"type":"color_neighbors","target":"minecraft:warped_hyphae","label":"Palette proche: Warped Hyphae","confidence":0.705},{"type":"color_neighbors","target":"minecraft:warped_stem","label":"Palette proche: Warped Stem","confidence":0.705},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.693},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.681},{"type":"color_neighbors","target":"minecraft:potted_torchflower","label":"Palette proche: Potted Torchflower","confidence":0.679},{"type":"color_neighbors","target":"minecraft:torchflower","label":"Palette proche: Torchflower","confidence":0.679},{"type":"color_neighbors","target":"minecraft:twisting_vines","label":"Palette proche: Twisting Vines","confidence":0.663},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.663},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.661},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.66},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par palette: Warped Fungus","confidence":0.86},{"type":"color_bridge","target":"minecraft:orange_glazed_terracotta","label":"Pont de nuance par sous-ton: Orange Glazed Terracotta","confidence":0.76},{"type":"color_bridge","target":"minecraft:warped_hyphae","label":"Pont de nuance par palette: Warped Hyphae","confidence":0.757},{"type":"color_bridge","target":"minecraft:warped_stem","label":"Pont de nuance par palette: Warped Stem","confidence":0.757},{"type":"color_bridge","target":"minecraft:cyan_candle","label":"Pont de nuance par sous-ton: Cyan Candle","confidence":0.747},{"type":"color_bridge","target":"minecraft:warped_wart_block","label":"Pont de nuance par sous-ton: Warped Wart Block","confidence":0.737},{"type":"color_bridge","target":"minecraft:potted_torchflower","label":"Pont de nuance par palette: Potted Torchflower","confidence":0.736},{"type":"color_bridge","target":"minecraft:torchflower","label":"Pont de nuance par palette: Torchflower","confidence":0.736},{"type":"color_bridge","target":"minecraft:twisting_vines","label":"Pont de nuance par sous-ton: Twisting Vines","confidence":0.723},{"type":"color_bridge","target":"minecraft:warped_roots","label":"Pont de nuance par sous-ton: Warped Roots","confidence":0.722},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.581},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.575},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.574},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.574},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_warped_roots","name":"Potted Warped Roots","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#15897b","dominant_hex":"#147c84","average_hex":"#15897b","hue_group":"cyan","lightness":0.3098,"saturation":0.7342,"palette":["#147c84","#14645c","#149c84","#14b484"],"color_groups":[{"hex":"#147c84","weight":0.338,"lightness":0.298,"saturation":0.7368,"hue_group":"cyan"},{"hex":"#14645c","weight":0.2394,"lightness":0.2353,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#149c84","weight":0.2113,"lightness":0.3451,"saturation":0.7727,"hue_group":"cyan"},{"hex":"#14b484","weight":0.2113,"lightness":0.3922,"saturation":0.8,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_roots_pot.png","family":"potted_warped_roots","relations":[{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines_plant","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_sprouts","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:twisting_vines","label":"Palette proche: Twisting Vines","confidence":0.94},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_sprouts","label":"Palette proche: Nether Sprouts","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.898},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.898},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.869},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.863},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.859},{"type":"color_neighbors","target":"minecraft:warped_nylium","label":"Palette proche: Warped Nylium","confidence":0.843},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.782},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.721},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.721},{"type":"color_bridge","target":"minecraft:lapis_block","label":"Pont de nuance par palette: Lapis Block","confidence":0.618},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.599},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.599},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.58},{"type":"color_analogous","target":"minecraft:warped_roots","label":"Couleurs analogues: Warped Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:twisting_vines_plant","label":"Couleurs analogues: Twisting Vines Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_sprouts","label":"Couleurs analogues: Nether Sprouts","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_trapdoor","label":"Couleurs analogues: Warped Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_planks","label":"Couleurs analogues: Warped Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.936},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.927},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.927},{"type":"color_complement","target":"minecraft:cactus_flower","label":"Contraste complementaire: Cactus Flower","confidence":0.903},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.888},{"type":"color_complement","target":"minecraft:crimson_hyphae","label":"Contraste complementaire: Crimson Hyphae","confidence":0.861},{"type":"color_complement","target":"minecraft:crimson_stem","label":"Contraste complementaire: Crimson Stem","confidence":0.861},{"type":"color_complement","target":"minecraft:chiseled_nether_bricks","label":"Contraste complementaire: Chiseled Nether Bricks","confidence":0.853},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.947},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.947},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.913},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.905},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.901},{"type":"color_triad","target":"minecraft:horn_coral_wall_fan","label":"Harmonie triadique: Horn Coral Wall Fan","confidence":0.901},{"type":"color_triad","target":"minecraft:bamboo_fence_gate","label":"Harmonie triadique: Bamboo Fence Gate","confidence":0.876},{"type":"color_square","target":"minecraft:amethyst_block","label":"Harmonie carree: Amethyst Block","confidence":0.955},{"type":"color_square","target":"minecraft:oxeye_daisy","label":"Harmonie carree: Oxeye Daisy","confidence":0.944},{"type":"color_square","target":"minecraft:potted_oxeye_daisy","label":"Harmonie carree: Potted Oxeye Daisy","confidence":0.944},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.938},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.933},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.922},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.921},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.921},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.639},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.639},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.63},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.607},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.574},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.559},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.559},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.551}],"category":"natural"},{"id":"minecraft:potted_white_tulip","name":"Potted White Tulip","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#5ea547","dominant_hex":"#54ac2c","average_hex":"#5ea547","hue_group":"green","lightness":0.4627,"saturation":0.3983,"palette":["#54ac2c","#147c04","#549c2c","#e4f0f0","#4c8c2c","#9cbcbc"],"color_groups":[{"hex":"#54ac2c","weight":0.2889,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#147c04","weight":0.2222,"lightness":0.251,"saturation":0.9375,"hue_group":"green"},{"hex":"#549c2c","weight":0.1778,"lightness":0.3922,"saturation":0.56,"hue_group":"green"},{"hex":"#e4f0f0","weight":0.1333,"lightness":0.9176,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#4c8c2c","weight":0.1111,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#9cbcbc","weight":0.0667,"lightness":0.6745,"saturation":0.1928,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/white_tulip.png","family":"potted_white_tulip","relations":[{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_propagule","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.85},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.774},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.774},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.772},{"type":"color_neighbors","target":"minecraft:oxeye_daisy","label":"Palette proche: Oxeye Daisy","confidence":0.771},{"type":"color_neighbors","target":"minecraft:potted_oxeye_daisy","label":"Palette proche: Potted Oxeye Daisy","confidence":0.771},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.765},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.765},{"type":"color_neighbors","target":"minecraft:pink_tulip","label":"Palette proche: Pink Tulip","confidence":0.761},{"type":"color_neighbors","target":"minecraft:potted_pink_tulip","label":"Palette proche: Potted Pink Tulip","confidence":0.761},{"type":"color_neighbors","target":"minecraft:seagrass","label":"Palette proche: Seagrass","confidence":0.749},{"type":"color_bridge","target":"minecraft:blue_orchid","label":"Pont de nuance par palette: Blue Orchid","confidence":0.717},{"type":"color_bridge","target":"minecraft:potted_blue_orchid","label":"Pont de nuance par palette: Potted Blue Orchid","confidence":0.717},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.707},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Trapdoor","confidence":0.671},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Weathered Copper Trapdoor","confidence":0.671},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Door","confidence":0.648},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par sous-ton: Weathered Copper Door","confidence":0.648},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.644},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.644},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.641},{"type":"color_analogous","target":"minecraft:white_tulip","label":"Couleurs analogues: White Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_tulip","label":"Couleurs analogues: Pink Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_pink_tulip","label":"Couleurs analogues: Potted Pink Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:beetroots","label":"Couleurs analogues: Beetroots","confidence":0.96},{"type":"color_analogous","target":"minecraft:sunflower","label":"Couleurs analogues: Sunflower","confidence":0.96},{"type":"color_analogous","target":"minecraft:slime_block","label":"Couleurs analogues: Slime Block","confidence":0.922},{"type":"color_analogous","target":"minecraft:potatoes","label":"Couleurs analogues: Potatoes","confidence":0.918},{"type":"color_analogous","target":"minecraft:test_block","label":"Couleurs analogues: Test Block","confidence":0.916},{"type":"color_complement","target":"minecraft:magenta_stained_glass","label":"Contraste complementaire: Magenta Stained Glass","confidence":0.922},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.907},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.723},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.69},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.69},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.67},{"type":"color_complement","target":"minecraft:dragon_egg","label":"Contraste complementaire: Dragon Egg","confidence":0.62},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.609},{"type":"color_triad","target":"minecraft:tube_coral","label":"Harmonie triadique: Tube Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:tube_coral_block","label":"Harmonie triadique: Tube Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:tube_coral_fan","label":"Harmonie triadique: Tube Coral Fan","confidence":0.947},{"type":"color_triad","target":"minecraft:tube_coral_wall_fan","label":"Harmonie triadique: Tube Coral Wall Fan","confidence":0.947},{"type":"color_triad","target":"minecraft:black_concrete","label":"Harmonie triadique: Black Concrete","confidence":0.898},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.896},{"type":"color_triad","target":"minecraft:cracked_nether_bricks","label":"Harmonie triadique: Cracked Nether Bricks","confidence":0.892},{"type":"color_triad","target":"minecraft:potted_crimson_roots","label":"Harmonie triadique: Potted Crimson Roots","confidence":0.886},{"type":"color_square","target":"minecraft:chiseled_copper","label":"Harmonie carree: Chiseled Copper","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_chiseled_copper","label":"Harmonie carree: Waxed Chiseled Copper","confidence":0.96},{"type":"color_square","target":"minecraft:copper_bars","label":"Harmonie carree: Copper Bars","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_bars","label":"Harmonie carree: Waxed Copper Bars","confidence":0.96},{"type":"color_square","target":"minecraft:copper_chain","label":"Harmonie carree: Copper Chain","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_chain","label":"Harmonie carree: Waxed Copper Chain","confidence":0.96},{"type":"color_square","target":"minecraft:copper_grate","label":"Harmonie carree: Copper Grate","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_grate","label":"Harmonie carree: Waxed Copper Grate","confidence":0.96},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55}],"category":"natural"},{"id":"minecraft:potted_wither_rose","name":"Potted Wither Rose","entry_type":"block","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added flower pots."},{"version":"13w37a","status":"added","notes":"Added / setblock , allowing for the aforementioned potted plants to be obtained without map editing."},{"version":"14w07a","status":"added","notes":"added iron trapdoor also renders in flower pots when created with commands."}],"colors":{"primary":"#292d17","dominant_hex":"#293114","average_hex":"#292d17","hue_group":"yellow","lightness":0.1333,"saturation":0.3235,"palette":["#293114","#3c441c","#191414","#281c18","#122a0c","#44342c"],"color_groups":[{"hex":"#293114","weight":0.2432,"lightness":0.1353,"saturation":0.4203,"hue_group":"yellow"},{"hex":"#3c441c","weight":0.2162,"lightness":0.1882,"saturation":0.4167,"hue_group":"yellow"},{"hex":"#191414","weight":0.1622,"lightness":0.0882,"saturation":0.1111,"hue_group":"neutral"},{"hex":"#281c18","weight":0.1622,"lightness":0.1255,"saturation":0.25,"hue_group":"red"},{"hex":"#122a0c","weight":0.1081,"lightness":0.1059,"saturation":0.5556,"hue_group":"green"},{"hex":"#44342c","weight":0.1081,"lightness":0.2196,"saturation":0.2143,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/wither_rose.png","family":"potted_wither_rose","relations":[{"type":"visual_neighbors","target":"minecraft:wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_roots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:wither_rose","label":"Palette proche: Wither Rose","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_terracotta","label":"Palette proche: Gray Terracotta","confidence":0.817},{"type":"color_neighbors","target":"minecraft:soul_soil","label":"Palette proche: Soul Soil","confidence":0.801},{"type":"color_neighbors","target":"minecraft:dried_kelp_block","label":"Palette proche: Dried Kelp Block","confidence":0.793},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.784},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.784},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.784},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.784},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.784},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.784},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.784},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.784},{"type":"color_bridge","target":"minecraft:gray_terracotta","label":"Pont de nuance par palette: Gray Terracotta","confidence":0.849},{"type":"color_bridge","target":"minecraft:soul_soil","label":"Pont de nuance par palette: Soul Soil","confidence":0.836},{"type":"color_bridge","target":"minecraft:creeper_head","label":"Pont de nuance par palette: Creeper Head","confidence":0.822},{"type":"color_bridge","target":"minecraft:creeper_wall_head","label":"Pont de nuance par palette: Creeper Wall Head","confidence":0.822},{"type":"color_bridge","target":"minecraft:dragon_head","label":"Pont de nuance par palette: Dragon Head","confidence":0.822},{"type":"color_bridge","target":"minecraft:dragon_wall_head","label":"Pont de nuance par palette: Dragon Wall Head","confidence":0.822},{"type":"color_bridge","target":"minecraft:piglin_head","label":"Pont de nuance par palette: Piglin Head","confidence":0.822},{"type":"color_bridge","target":"minecraft:piglin_wall_head","label":"Pont de nuance par palette: Piglin Wall Head","confidence":0.822},{"type":"color_bridge","target":"minecraft:player_head","label":"Pont de nuance par palette: Player Head","confidence":0.822},{"type":"color_bridge","target":"minecraft:player_wall_head","label":"Pont de nuance par palette: Player Wall Head","confidence":0.822},{"type":"color_analogous","target":"minecraft:wither_rose","label":"Couleurs analogues: Wither Rose","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_terracotta","label":"Couleurs analogues: Green Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:flowering_azalea","label":"Couleurs analogues: Flowering Azalea","confidence":0.941},{"type":"color_analogous","target":"minecraft:dandelion","label":"Couleurs analogues: Dandelion","confidence":0.937},{"type":"color_analogous","target":"minecraft:potted_dandelion","label":"Couleurs analogues: Potted Dandelion","confidence":0.937},{"type":"color_analogous","target":"minecraft:bamboo_block","label":"Couleurs analogues: Bamboo Block","confidence":0.926},{"type":"color_analogous","target":"minecraft:cave_vines_plant","label":"Couleurs analogues: Cave Vines Plant","confidence":0.923},{"type":"color_analogous","target":"minecraft:lime_terracotta","label":"Couleurs analogues: Lime Terracotta","confidence":0.915},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.807},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.786},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.786},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.786},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.786},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.721},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.644},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.58},{"type":"color_triad","target":"minecraft:sculk_vein","label":"Harmonie triadique: Sculk Vein","confidence":0.923},{"type":"color_triad","target":"minecraft:glass_pane","label":"Harmonie triadique: Glass Pane","confidence":0.919},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.905},{"type":"color_triad","target":"minecraft:cyan_concrete","label":"Harmonie triadique: Cyan Concrete","confidence":0.889},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.864},{"type":"color_triad","target":"minecraft:glass","label":"Harmonie triadique: Glass","confidence":0.845},{"type":"color_triad","target":"minecraft:cyan_shulker_box","label":"Harmonie triadique: Cyan Shulker Box","confidence":0.828},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.809},{"type":"color_square","target":"minecraft:pink_carpet","label":"Harmonie carree: Pink Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:pink_wool","label":"Harmonie carree: Pink Wool","confidence":0.96},{"type":"color_square","target":"minecraft:purple_terracotta","label":"Harmonie carree: Purple Terracotta","confidence":0.957},{"type":"color_square","target":"minecraft:oxidized_copper_chain","label":"Harmonie carree: Oxidized Copper Chain","confidence":0.946},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie carree: Waxed Oxidized Copper Chain","confidence":0.946},{"type":"color_square","target":"minecraft:magenta_terracotta","label":"Harmonie carree: Magenta Terracotta","confidence":0.944},{"type":"color_square","target":"minecraft:pink_shulker_box","label":"Harmonie carree: Pink Shulker Box","confidence":0.933},{"type":"color_square","target":"minecraft:oxidized_copper_door","label":"Harmonie carree: Oxidized Copper Door","confidence":0.93},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.802},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.769},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.746},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.723},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.723},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.713},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.713},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.713}],"category":""},{"id":"minecraft:powder_snow","name":"Powder Snow","entry_type":"block","description":"Powder snow is a non-solid block found in snowy slopes and groves, or collected from snowfall using cauldrons. It slows down and deals freezing damage to most entities within it. Wearing any leather armor prevents freezing, and worn leather boots allow powder snow to be walked on and climbed through. It can only be obtained using a bucket and melts when placed inside water.","history":[{"version":"1.17 20w46a","status":"added","notes":"Added powder snow."},{"version":"wiki-history","status":"added","notes":"Added the freezeDamage gamerule, which stops entities from taking freezing damage if it is set to false ."},{"version":"26.2 snap1","status":"added","notes":"Added sulfur cubes, which are immune to freezing only if they absorbed a block."}],"colors":{"primary":"#f8fdfd","dominant_hex":"#fcfcfc","average_hex":"#f8fdfd","hue_group":"cyan","lightness":0.9824,"saturation":0.5556,"palette":["#fcfcfc","#f4fcfc","#ecfcfc"],"color_groups":[{"hex":"#fcfcfc","weight":0.5156,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4fcfc","weight":0.293,"lightness":0.9725,"saturation":0.5714,"hue_group":"cyan"},{"hex":"#ecfcfc","weight":0.1914,"lightness":0.9569,"saturation":0.7273,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/powder_snow.png","family":"powder_snow","relations":[{"type":"visual_neighbors","target":"minecraft:snow","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beacon","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_fire","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:snow","label":"Palette proche: Snow","confidence":0.94},{"type":"color_neighbors","target":"minecraft:snow_block","label":"Palette proche: Snow Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobweb","label":"Palette proche: Cobweb","confidence":0.754},{"type":"color_neighbors","target":"minecraft:white_concrete_powder","label":"Palette proche: White Concrete Powder","confidence":0.729},{"type":"color_neighbors","target":"minecraft:white_carpet","label":"Palette proche: White Carpet","confidence":0.725},{"type":"color_neighbors","target":"minecraft:white_wool","label":"Palette proche: White Wool","confidence":0.725},{"type":"color_neighbors","target":"minecraft:white_candle","label":"Palette proche: White Candle","confidence":0.709},{"type":"color_neighbors","target":"minecraft:white_shulker_box","label":"Palette proche: White Shulker Box","confidence":0.652},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.617},{"type":"color_neighbors","target":"minecraft:white_concrete","label":"Palette proche: White Concrete","confidence":0.605},{"type":"color_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Palette proche: Light Blue Glazed Terracotta","confidence":0.584},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.58},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par sous-ton: Cobweb","confidence":0.797},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par sous-ton: White Concrete Powder","confidence":0.777},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.776},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par sous-ton: White Carpet","confidence":0.774},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par sous-ton: White Wool","confidence":0.774},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.766},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par sous-ton: White Candle","confidence":0.761},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par sous-ton: White Shulker Box","confidence":0.714},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par palette: Calcite","confidence":0.684},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par palette: Pale Oak Shelf","confidence":0.68},{"type":"color_analogous","target":"minecraft:snow","label":"Couleurs analogues: Snow","confidence":0.96},{"type":"color_analogous","target":"minecraft:snow_block","label":"Couleurs analogues: Snow Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:soul_fire","label":"Couleurs analogues: Soul Fire","confidence":0.864},{"type":"color_analogous","target":"minecraft:beacon","label":"Couleurs analogues: Beacon","confidence":0.859},{"type":"color_analogous","target":"minecraft:cyan_candle","label":"Couleurs analogues: Cyan Candle","confidence":0.859},{"type":"color_analogous","target":"minecraft:diamond_block","label":"Couleurs analogues: Diamond Block","confidence":0.849},{"type":"color_analogous","target":"minecraft:warped_wart_block","label":"Couleurs analogues: Warped Wart Block","confidence":0.846},{"type":"color_analogous","target":"minecraft:stripped_warped_hyphae","label":"Couleurs analogues: Stripped Warped Hyphae","confidence":0.842},{"type":"color_complement","target":"minecraft:red_mushroom_block","label":"Contraste complementaire: Red Mushroom Block","confidence":0.96},{"type":"color_complement","target":"minecraft:red_stained_glass","label":"Contraste complementaire: Red Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:red_stained_glass_pane","label":"Contraste complementaire: Red Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:red_concrete","label":"Contraste complementaire: Red Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:red_shulker_box","label":"Contraste complementaire: Red Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_nylium","label":"Contraste complementaire: Crimson Nylium","confidence":0.96},{"type":"color_complement","target":"minecraft:netherrack","label":"Contraste complementaire: Netherrack","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_shelf","label":"Contraste complementaire: Cherry Shelf","confidence":0.959},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_fan","label":"Harmonie triadique: Bubble Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie triadique: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral","label":"Harmonie triadique: Bubble Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_acacia_sapling","label":"Harmonie triadique: Potted Acacia Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:chorus_plant","label":"Harmonie triadique: Chorus Plant","confidence":0.96},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.96},{"type":"color_square","target":"minecraft:cactus","label":"Harmonie carree: Cactus","confidence":0.96},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.953},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.953},{"type":"color_square","target":"minecraft:lime_shulker_box","label":"Harmonie carree: Lime Shulker Box","confidence":0.95},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.866},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.833},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.829},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.824},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.822},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.822},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.807},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.807}],"category":""},{"id":"minecraft:powder_snow_bucket","name":"Powder Snow Bucket","entry_type":"item","description":"A powder snow bucket is a bucket filled with powder snow, which is the only way to carry it as an item.","history":[{"version":"1.17 20w46a","status":"added","notes":"Added powder snow buckets."}],"colors":{"primary":"#92a0a1","dominant_hex":"#343434","average_hex":"#92a0a1","hue_group":"neutral","lightness":0.602,"saturation":0.0739,"palette":["#343434","#e9e9e9","#a2a2a2","#c9f4f4","#74c4d4","#747474"],"color_groups":[{"hex":"#343434","weight":0.26,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e9e9e9","weight":0.2067,"lightness":0.9137,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a2a2a2","weight":0.2,"lightness":0.6353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c9f4f4","weight":0.16,"lightness":0.8725,"saturation":0.6615,"hue_group":"cyan"},{"hex":"#74c4d4","weight":0.0933,"lightness":0.6431,"saturation":0.5275,"hue_group":"cyan"},{"hex":"#747474","weight":0.08,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/powder_snow_bucket.png","family":"powder_snow_bucket","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_membrane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:splash_potion","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_boat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_star","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_bucket","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:powder_snow_cauldron","name":"Powder Snow Cauldron","entry_type":"block","description":"A cauldron is a block that can contain water, lava or powder snow and, in certain situations, collect them from the environment. In Bedrock Edition, it can also hold dyed water or potions, and can be used to efficiently create tipped arrows. It also serves as a leatherworker's job site block.","history":[{"version":"wiki","status":"observed","notes":"Wiki revision 3526851 at 2026-04-10T12:08:59Z."}],"colors":{"primary":"#4a494a","dominant_hex":"#4c4c4c","average_hex":"#4a494a","hue_group":"neutral","lightness":0.2882,"saturation":0.0068,"palette":["#4c4c4c","#5c5c5c","#34343c","#3c3c44","#646464","#2c2c34"],"color_groups":[{"hex":"#4c4c4c","weight":0.4167,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1538,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#34343c","weight":0.1474,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.1282,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#646464","weight":0.0962,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c34","weight":0.0577,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cauldron_top.png","family":"powder_snow_cauldron","relations":[{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:basalt","label":"Palette proche: Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.94},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:basalt","label":"Pont de nuance par palette: Basalt","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.666},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.633},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.624},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.623},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.623},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.61},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.606},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.606}],"category":""},{"id":"minecraft:powered_rail","name":"Powered Rail","entry_type":"block","description":"A powered rail is a type of rail that either increases or halts the velocity of minecarts depending on its power state, and can be used to accelerate a minecart from a standstill when placed facing a conductive block.","history":[{"version":"1.5","status":"added","notes":"Added powered rails."}],"colors":{"primary":"#8a6e4a","dominant_hex":"#532419","average_hex":"#8a6e4a","hue_group":"yellow","lightness":0.4157,"saturation":0.3019,"palette":["#532419","#70736c","#dda826","#9c7f4e","#9c9c9c","#acacac"],"color_groups":[{"hex":"#532419","weight":0.3023,"lightness":0.2118,"saturation":0.537,"hue_group":"red"},{"hex":"#70736c","weight":0.186,"lightness":0.4373,"saturation":0.0314,"hue_group":"neutral"},{"hex":"#dda826","weight":0.186,"lightness":0.5078,"saturation":0.7291,"hue_group":"yellow"},{"hex":"#9c7f4e","weight":0.1395,"lightness":0.4588,"saturation":0.3333,"hue_group":"yellow"},{"hex":"#9c9c9c","weight":0.1105,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.0756,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/powered_rail.png","family":"powered_rail","relations":[{"type":"visual_neighbors","target":"minecraft:crafting_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_flowering_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dirt_path","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:detector_rail","label":"Palette proche: Detector Rail","confidence":0.909},{"type":"color_neighbors","target":"minecraft:rail","label":"Palette proche: Rail","confidence":0.821},{"type":"color_neighbors","target":"minecraft:activator_rail","label":"Palette proche: Activator Rail","confidence":0.816},{"type":"color_neighbors","target":"minecraft:tripwire_hook","label":"Palette proche: Tripwire Hook","confidence":0.774},{"type":"color_neighbors","target":"minecraft:stonecutter","label":"Palette proche: Stonecutter","confidence":0.767},{"type":"color_neighbors","target":"minecraft:crafting_table","label":"Palette proche: Crafting Table","confidence":0.762},{"type":"color_neighbors","target":"minecraft:iron_bars","label":"Palette proche: Iron Bars","confidence":0.753},{"type":"color_neighbors","target":"minecraft:crafter","label":"Palette proche: Crafter","confidence":0.75},{"type":"color_neighbors","target":"minecraft:lever","label":"Palette proche: Lever","confidence":0.75},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.748},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.746},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.742},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.9},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.852},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.849},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.814},{"type":"color_bridge","target":"minecraft:stonecutter","label":"Pont de nuance par palette: Stonecutter","confidence":0.808},{"type":"color_bridge","target":"minecraft:iron_bars","label":"Pont de nuance par palette: Iron Bars","confidence":0.796},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par palette: Crafter","confidence":0.794},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.788},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.788},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.784},{"type":"color_analogous","target":"minecraft:sniffer_egg","label":"Couleurs analogues: Sniffer Egg","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_shelf","label":"Couleurs analogues: Jungle Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:barrel","label":"Couleurs analogues: Barrel","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_hanging_sign","label":"Couleurs analogues: Jungle Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_wall_hanging_sign","label":"Couleurs analogues: Jungle Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_jungle_log","label":"Couleurs analogues: Stripped Jungle Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_jungle_wood","label":"Couleurs analogues: Stripped Jungle Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_trapdoor","label":"Couleurs analogues: Spruce Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.951},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.863},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.817},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.784},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.767},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.761},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.752},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.954},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.949},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.949},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.948},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.959},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.945},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.935},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.935},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.93},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.929},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.864},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55}],"category":"redstone"},{"id":"minecraft:prismarine","name":"Prismarine","entry_type":"block","description":"Prismarine is a type of stone that appears underwater in ocean ruins and ocean monuments. It periodically changes color between blue and green.","history":[{"version":"1.8 14w25a","status":"added","notes":"Added prismarine."},{"version":"1.20 23w12a","status":"added","notes":"added to the game."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb prismarine, providing the football/regular effect to the mob."}],"colors":{"primary":"#639c97","dominant_hex":"#587a9a","average_hex":"#639c97","hue_group":"cyan","lightness":0.5,"saturation":0.2235,"palette":["#587a9a","#7cb4a8","#368561","#9cccbc","#5ca490","#5c9ca4"],"color_groups":[{"hex":"#587a9a","weight":0.2568,"lightness":0.4745,"saturation":0.2727,"hue_group":"cyan"},{"hex":"#7cb4a8","weight":0.2031,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#368561","weight":0.1875,"lightness":0.3667,"saturation":0.4225,"hue_group":"cyan"},{"hex":"#9cccbc","weight":0.1445,"lightness":0.7059,"saturation":0.32,"hue_group":"cyan"},{"hex":"#5ca490","weight":0.1387,"lightness":0.502,"saturation":0.2835,"hue_group":"cyan"},{"hex":"#5c9ca4","weight":0.0693,"lightness":0.502,"saturation":0.2835,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/prismarine.png","family":"prismarine","relations":[{"type":"variants","target":"minecraft:prismarine_slab","label":"Same family: prismarine","confidence":0.75},{"type":"related_sets","target":"minecraft:prismarine_slab","label":"Related set: prismarine","confidence":0.8},{"type":"variants","target":"minecraft:prismarine_stairs","label":"Same family: prismarine","confidence":0.75},{"type":"related_sets","target":"minecraft:prismarine_stairs","label":"Related set: prismarine","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:prismarine_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_wall","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_bricks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:prismarine_slab","label":"Palette proche: Prismarine Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_stairs","label":"Palette proche: Prismarine Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_wall","label":"Palette proche: Prismarine Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_brick_slab","label":"Palette proche: Prismarine Brick Slab","confidence":0.833},{"type":"color_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Palette proche: Prismarine Brick Stairs","confidence":0.833},{"type":"color_neighbors","target":"minecraft:prismarine_bricks","label":"Palette proche: Prismarine Bricks","confidence":0.833},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.808},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.808},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.808},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.808},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.808},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.795},{"type":"color_bridge","target":"minecraft:sea_lantern","label":"Pont de nuance par sous-ton: Sea Lantern","confidence":0.784},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.771},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.771},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.753},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.753},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Chiseled Copper","confidence":0.743},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Weathered Chiseled Copper","confidence":0.743},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.741},{"type":"color_analogous","target":"minecraft:prismarine_slab","label":"Couleurs analogues: Prismarine Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine_stairs","label":"Couleurs analogues: Prismarine Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine_wall","label":"Couleurs analogues: Prismarine Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_shelf","label":"Couleurs analogues: Warped Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_door","label":"Couleurs analogues: Warped Door","confidence":0.948},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.946},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.946},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.946},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.956},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.956},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.947},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.924},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.915},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.915},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.915},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.915},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.936},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.922},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.907},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.904},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.868},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.851},{"type":"color_triad","target":"minecraft:turtle_egg","label":"Harmonie triadique: Turtle Egg","confidence":0.848},{"type":"color_triad","target":"minecraft:copper_torch","label":"Harmonie triadique: Copper Torch","confidence":0.835},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.955},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.955},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.955},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.944},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.935},{"type":"color_square","target":"minecraft:oxeye_daisy","label":"Harmonie carree: Oxeye Daisy","confidence":0.933},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":""},{"id":"minecraft:prismarine_brick_slab","name":"Prismarine Brick Slab","entry_type":"block","description":"A prismarine brick slab is a decorative slab variant of prismarine bricks that does not generate naturally and is used for building.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added prismarine bricks slabs."}],"colors":{"primary":"#63ac9e","dominant_hex":"#5caca4","average_hex":"#63ac9e","hue_group":"cyan","lightness":0.5314,"saturation":0.3054,"palette":["#5caca4","#6cbcac","#448870","#64a49c","#8dc9c1","#549c84"],"color_groups":[{"hex":"#5caca4","weight":0.2305,"lightness":0.5176,"saturation":0.3252,"hue_group":"cyan"},{"hex":"#6cbcac","weight":0.2305,"lightness":0.5804,"saturation":0.3738,"hue_group":"cyan"},{"hex":"#448870","weight":0.1602,"lightness":0.4,"saturation":0.3333,"hue_group":"cyan"},{"hex":"#64a49c","weight":0.1523,"lightness":0.5176,"saturation":0.2602,"hue_group":"cyan"},{"hex":"#8dc9c1","weight":0.1523,"lightness":0.6706,"saturation":0.3571,"hue_group":"cyan"},{"hex":"#549c84","weight":0.0742,"lightness":0.4706,"saturation":0.3,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/prismarine_bricks.png","family":"prismarine_brick","relations":[{"type":"variants","target":"minecraft:prismarine_brick_stairs","label":"Same family: prismarine_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:prismarine_brick_stairs","label":"Related set: prismarine_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_bricks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Palette proche: Prismarine Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_bricks","label":"Palette proche: Prismarine Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.861},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.861},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.861},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.861},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.861},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.861},{"type":"color_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Palette proche: Oxidized Lightning Rod","confidence":0.857},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Palette proche: Waxed Oxidized Lightning Rod","confidence":0.857},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.851},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Palette proche: Waxed Oxidized Chiseled Copper","confidence":0.851},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.786},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.777},{"type":"color_bridge","target":"minecraft:sea_lantern","label":"Pont de nuance par sous-ton: Sea Lantern","confidence":0.774},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.771},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.771},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.762},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.762},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.749},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.749},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.737},{"type":"color_analogous","target":"minecraft:prismarine_brick_stairs","label":"Couleurs analogues: Prismarine Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine_bricks","label":"Couleurs analogues: Prismarine Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_nylium","label":"Couleurs analogues: Warped Nylium","confidence":0.944},{"type":"color_analogous","target":"minecraft:twisting_vines","label":"Couleurs analogues: Twisting Vines","confidence":0.908},{"type":"color_analogous","target":"minecraft:nether_sprouts","label":"Couleurs analogues: Nether Sprouts","confidence":0.888},{"type":"color_analogous","target":"minecraft:potted_warped_roots","label":"Couleurs analogues: Potted Warped Roots","confidence":0.861},{"type":"color_analogous","target":"minecraft:twisting_vines_plant","label":"Couleurs analogues: Twisting Vines Plant","confidence":0.86},{"type":"color_analogous","target":"minecraft:warped_roots","label":"Couleurs analogues: Warped Roots","confidence":0.858},{"type":"color_complement","target":"minecraft:enchanting_table","label":"Contraste complementaire: Enchanting Table","confidence":0.96},{"type":"color_complement","target":"minecraft:chiseled_nether_bricks","label":"Contraste complementaire: Chiseled Nether Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_fence","label":"Contraste complementaire: Nether Brick Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_slab","label":"Contraste complementaire: Nether Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_stairs","label":"Contraste complementaire: Nether Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_wall","label":"Contraste complementaire: Nether Brick Wall","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_bricks","label":"Contraste complementaire: Nether Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:cracked_nether_bricks","label":"Contraste complementaire: Cracked Nether Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_door","label":"Harmonie triadique: Bamboo Door","confidence":0.96},{"type":"color_triad","target":"minecraft:cut_sandstone_slab","label":"Harmonie triadique: Cut Sandstone Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:sandstone_slab","label":"Harmonie triadique: Sandstone Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:sandstone_stairs","label":"Harmonie triadique: Sandstone Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_sandstone","label":"Harmonie triadique: Smooth Sandstone","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_sandstone_slab","label":"Harmonie triadique: Smooth Sandstone Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_sandstone_stairs","label":"Harmonie triadique: Smooth Sandstone Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:wildflowers","label":"Harmonie triadique: Wildflowers","confidence":0.96},{"type":"color_square","target":"minecraft:azalea","label":"Harmonie carree: Azalea","confidence":0.96},{"type":"color_square","target":"minecraft:green_concrete_powder","label":"Harmonie carree: Green Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:green_carpet","label":"Harmonie carree: Green Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:green_wool","label":"Harmonie carree: Green Wool","confidence":0.96},{"type":"color_square","target":"minecraft:green_candle","label":"Harmonie carree: Green Candle","confidence":0.96},{"type":"color_square","target":"minecraft:green_shulker_box","label":"Harmonie carree: Green Shulker Box","confidence":0.956},{"type":"color_square","target":"minecraft:moss_block","label":"Harmonie carree: Moss Block","confidence":0.954},{"type":"color_square","target":"minecraft:moss_carpet","label":"Harmonie carree: Moss Carpet","confidence":0.954},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55}],"category":"building"},{"id":"minecraft:prismarine_brick_stairs","name":"Prismarine Brick Stairs","entry_type":"block","description":"Prismarine brick stairs are a decorative stairs variant of prismarine bricks that does not generate naturally and is used for building.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added prismarine bricks stairs."}],"colors":{"primary":"#63ac9e","dominant_hex":"#5caca4","average_hex":"#63ac9e","hue_group":"cyan","lightness":0.5314,"saturation":0.3054,"palette":["#5caca4","#6cbcac","#448870","#64a49c","#8dc9c1","#549c84"],"color_groups":[{"hex":"#5caca4","weight":0.2305,"lightness":0.5176,"saturation":0.3252,"hue_group":"cyan"},{"hex":"#6cbcac","weight":0.2305,"lightness":0.5804,"saturation":0.3738,"hue_group":"cyan"},{"hex":"#448870","weight":0.1602,"lightness":0.4,"saturation":0.3333,"hue_group":"cyan"},{"hex":"#64a49c","weight":0.1523,"lightness":0.5176,"saturation":0.2602,"hue_group":"cyan"},{"hex":"#8dc9c1","weight":0.1523,"lightness":0.6706,"saturation":0.3571,"hue_group":"cyan"},{"hex":"#549c84","weight":0.0742,"lightness":0.4706,"saturation":0.3,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/prismarine_bricks.png","family":"prismarine_brick","relations":[{"type":"variants","target":"minecraft:prismarine_brick_slab","label":"Same family: prismarine_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:prismarine_brick_slab","label":"Related set: prismarine_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_bricks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:prismarine_brick_slab","label":"Palette proche: Prismarine Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_bricks","label":"Palette proche: Prismarine Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.861},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.861},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.861},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.861},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.861},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.861},{"type":"color_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Palette proche: Oxidized Lightning Rod","confidence":0.857},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Palette proche: Waxed Oxidized Lightning Rod","confidence":0.857},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.851},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Palette proche: Waxed Oxidized Chiseled Copper","confidence":0.851},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.786},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.777},{"type":"color_bridge","target":"minecraft:sea_lantern","label":"Pont de nuance par sous-ton: Sea Lantern","confidence":0.774},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.771},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.771},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.762},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.762},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.749},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.749},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.737},{"type":"color_analogous","target":"minecraft:prismarine_brick_slab","label":"Couleurs analogues: Prismarine Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine_bricks","label":"Couleurs analogues: Prismarine Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_nylium","label":"Couleurs analogues: Warped Nylium","confidence":0.944},{"type":"color_analogous","target":"minecraft:twisting_vines","label":"Couleurs analogues: Twisting Vines","confidence":0.908},{"type":"color_analogous","target":"minecraft:nether_sprouts","label":"Couleurs analogues: Nether Sprouts","confidence":0.888},{"type":"color_analogous","target":"minecraft:potted_warped_roots","label":"Couleurs analogues: Potted Warped Roots","confidence":0.861},{"type":"color_analogous","target":"minecraft:twisting_vines_plant","label":"Couleurs analogues: Twisting Vines Plant","confidence":0.86},{"type":"color_analogous","target":"minecraft:warped_roots","label":"Couleurs analogues: Warped Roots","confidence":0.858},{"type":"color_complement","target":"minecraft:enchanting_table","label":"Contraste complementaire: Enchanting Table","confidence":0.96},{"type":"color_complement","target":"minecraft:chiseled_nether_bricks","label":"Contraste complementaire: Chiseled Nether Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_fence","label":"Contraste complementaire: Nether Brick Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_slab","label":"Contraste complementaire: Nether Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_stairs","label":"Contraste complementaire: Nether Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_wall","label":"Contraste complementaire: Nether Brick Wall","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_bricks","label":"Contraste complementaire: Nether Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:cracked_nether_bricks","label":"Contraste complementaire: Cracked Nether Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_door","label":"Harmonie triadique: Bamboo Door","confidence":0.96},{"type":"color_triad","target":"minecraft:cut_sandstone_slab","label":"Harmonie triadique: Cut Sandstone Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:sandstone_slab","label":"Harmonie triadique: Sandstone Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:sandstone_stairs","label":"Harmonie triadique: Sandstone Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_sandstone","label":"Harmonie triadique: Smooth Sandstone","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_sandstone_slab","label":"Harmonie triadique: Smooth Sandstone Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_sandstone_stairs","label":"Harmonie triadique: Smooth Sandstone Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:wildflowers","label":"Harmonie triadique: Wildflowers","confidence":0.96},{"type":"color_square","target":"minecraft:azalea","label":"Harmonie carree: Azalea","confidence":0.96},{"type":"color_square","target":"minecraft:green_concrete_powder","label":"Harmonie carree: Green Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:green_carpet","label":"Harmonie carree: Green Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:green_wool","label":"Harmonie carree: Green Wool","confidence":0.96},{"type":"color_square","target":"minecraft:green_candle","label":"Harmonie carree: Green Candle","confidence":0.96},{"type":"color_square","target":"minecraft:green_shulker_box","label":"Harmonie carree: Green Shulker Box","confidence":0.956},{"type":"color_square","target":"minecraft:moss_block","label":"Harmonie carree: Moss Block","confidence":0.954},{"type":"color_square","target":"minecraft:moss_carpet","label":"Harmonie carree: Moss Carpet","confidence":0.954},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55}],"category":"building"},{"id":"minecraft:prismarine_bricks","name":"Prismarine Bricks","entry_type":"block","description":"Prismarine bricks are a variant of prismarine, appearing as cyan bricks with chiseled patterns.","history":[{"version":"1.8 14w25a","status":"added","notes":"Added prismarine bricks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb prismarine bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#63ac9e","dominant_hex":"#5caca4","average_hex":"#63ac9e","hue_group":"cyan","lightness":0.5314,"saturation":0.3054,"palette":["#5caca4","#6cbcac","#448870","#64a49c","#8dc9c1","#549c84"],"color_groups":[{"hex":"#5caca4","weight":0.2305,"lightness":0.5176,"saturation":0.3252,"hue_group":"cyan"},{"hex":"#6cbcac","weight":0.2305,"lightness":0.5804,"saturation":0.3738,"hue_group":"cyan"},{"hex":"#448870","weight":0.1602,"lightness":0.4,"saturation":0.3333,"hue_group":"cyan"},{"hex":"#64a49c","weight":0.1523,"lightness":0.5176,"saturation":0.2602,"hue_group":"cyan"},{"hex":"#8dc9c1","weight":0.1523,"lightness":0.6706,"saturation":0.3571,"hue_group":"cyan"},{"hex":"#549c84","weight":0.0742,"lightness":0.4706,"saturation":0.3,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/prismarine_bricks.png","family":"prismarine_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:prismarine_brick_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:prismarine_brick_slab","label":"Palette proche: Prismarine Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Palette proche: Prismarine Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.861},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.861},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.861},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.861},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.861},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.861},{"type":"color_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Palette proche: Oxidized Lightning Rod","confidence":0.857},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Palette proche: Waxed Oxidized Lightning Rod","confidence":0.857},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.851},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Palette proche: Waxed Oxidized Chiseled Copper","confidence":0.851},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.786},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.777},{"type":"color_bridge","target":"minecraft:sea_lantern","label":"Pont de nuance par sous-ton: Sea Lantern","confidence":0.774},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.771},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.771},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.762},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.762},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.749},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.749},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.737},{"type":"color_analogous","target":"minecraft:prismarine_brick_slab","label":"Couleurs analogues: Prismarine Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine_brick_stairs","label":"Couleurs analogues: Prismarine Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_nylium","label":"Couleurs analogues: Warped Nylium","confidence":0.944},{"type":"color_analogous","target":"minecraft:twisting_vines","label":"Couleurs analogues: Twisting Vines","confidence":0.908},{"type":"color_analogous","target":"minecraft:nether_sprouts","label":"Couleurs analogues: Nether Sprouts","confidence":0.888},{"type":"color_analogous","target":"minecraft:potted_warped_roots","label":"Couleurs analogues: Potted Warped Roots","confidence":0.861},{"type":"color_analogous","target":"minecraft:twisting_vines_plant","label":"Couleurs analogues: Twisting Vines Plant","confidence":0.86},{"type":"color_analogous","target":"minecraft:warped_roots","label":"Couleurs analogues: Warped Roots","confidence":0.858},{"type":"color_complement","target":"minecraft:enchanting_table","label":"Contraste complementaire: Enchanting Table","confidence":0.96},{"type":"color_complement","target":"minecraft:chiseled_nether_bricks","label":"Contraste complementaire: Chiseled Nether Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_fence","label":"Contraste complementaire: Nether Brick Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_slab","label":"Contraste complementaire: Nether Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_stairs","label":"Contraste complementaire: Nether Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_wall","label":"Contraste complementaire: Nether Brick Wall","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_bricks","label":"Contraste complementaire: Nether Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:cracked_nether_bricks","label":"Contraste complementaire: Cracked Nether Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_door","label":"Harmonie triadique: Bamboo Door","confidence":0.96},{"type":"color_triad","target":"minecraft:cut_sandstone_slab","label":"Harmonie triadique: Cut Sandstone Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:sandstone_slab","label":"Harmonie triadique: Sandstone Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:sandstone_stairs","label":"Harmonie triadique: Sandstone Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_sandstone","label":"Harmonie triadique: Smooth Sandstone","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_sandstone_slab","label":"Harmonie triadique: Smooth Sandstone Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:smooth_sandstone_stairs","label":"Harmonie triadique: Smooth Sandstone Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:wildflowers","label":"Harmonie triadique: Wildflowers","confidence":0.96},{"type":"color_square","target":"minecraft:azalea","label":"Harmonie carree: Azalea","confidence":0.96},{"type":"color_square","target":"minecraft:green_concrete_powder","label":"Harmonie carree: Green Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:green_carpet","label":"Harmonie carree: Green Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:green_wool","label":"Harmonie carree: Green Wool","confidence":0.96},{"type":"color_square","target":"minecraft:green_candle","label":"Harmonie carree: Green Candle","confidence":0.96},{"type":"color_square","target":"minecraft:green_shulker_box","label":"Harmonie carree: Green Shulker Box","confidence":0.956},{"type":"color_square","target":"minecraft:moss_block","label":"Harmonie carree: Moss Block","confidence":0.954},{"type":"color_square","target":"minecraft:moss_carpet","label":"Harmonie carree: Moss Carpet","confidence":0.954},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55}],"category":"building"},{"id":"minecraft:prismarine_crystals","name":"Prismarine Crystals","entry_type":"item","description":"Prismarine crystals are items obtained by defeating guardians or elder guardians. They are used along with prismarine shards to craft sea lanterns.","history":[{"version":"1.8 14w25a","status":"added","notes":"Added prismarine crystals."}],"colors":{"primary":"#8dafa3","dominant_hex":"#4c645c","average_hex":"#8dafa3","hue_group":"cyan","lightness":0.6196,"saturation":0.1753,"palette":["#4c645c","#74a49c","#dcecdc","#b4dccc","#94c4b4"],"color_groups":[{"hex":"#4c645c","weight":0.266,"lightness":0.3451,"saturation":0.1364,"hue_group":"cyan"},{"hex":"#74a49c","weight":0.2234,"lightness":0.549,"saturation":0.2087,"hue_group":"cyan"},{"hex":"#dcecdc","weight":0.2021,"lightness":0.8941,"saturation":0.2963,"hue_group":"green"},{"hex":"#b4dccc","weight":0.1809,"lightness":0.7843,"saturation":0.3636,"hue_group":"cyan"},{"hex":"#94c4b4","weight":0.1277,"lightness":0.6745,"saturation":0.2892,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/prismarine_crystals.png","family":"prismarine_crystals","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:vex_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_tear","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_shard","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tide_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snowball","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ward_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_horse_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:recovery_compass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_nautilus_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silence_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:prismarine_shard","name":"Prismarine Shard","entry_type":"item","description":"A prismarine shard is an item obtained by defeating guardians or elder guardians. It can be used to craft various prismarine blocks as well as sea lanterns.","history":[{"version":"1.8 14w25a","status":"added","notes":"Added prismarine shards."}],"colors":{"primary":"#6da492","dominant_hex":"#539b85","average_hex":"#6da492","hue_group":"cyan","lightness":0.5353,"saturation":0.2321,"palette":["#539b85","#94c4ac","#a4d4c4","#7cb4a4","#346757","#2c6454"],"color_groups":[{"hex":"#539b85","weight":0.2727,"lightness":0.4667,"saturation":0.3025,"hue_group":"cyan"},{"hex":"#94c4ac","weight":0.1932,"lightness":0.6745,"saturation":0.2892,"hue_group":"cyan"},{"hex":"#a4d4c4","weight":0.1932,"lightness":0.7373,"saturation":0.3582,"hue_group":"cyan"},{"hex":"#7cb4a4","weight":0.1364,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#346757","weight":0.1136,"lightness":0.3039,"saturation":0.329,"hue_group":"cyan"},{"hex":"#2c6454","weight":0.0909,"lightness":0.2824,"saturation":0.3889,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/prismarine_shard.png","family":"prismarine_shard","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:vex_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tide_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_tear","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_crystals","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_nautilus_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_horse_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ward_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silence_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snowball","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:prismarine_slab","name":"Prismarine Slab","entry_type":"block","description":"A prismarine slab is a decorative slab variant of prismarine that does not generate naturally and is used for building.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added prismarine slabs."}],"colors":{"primary":"#639c97","dominant_hex":"#587a9a","average_hex":"#639c97","hue_group":"cyan","lightness":0.5,"saturation":0.2235,"palette":["#587a9a","#7cb4a8","#368561","#9cccbc","#5ca490","#5c9ca4"],"color_groups":[{"hex":"#587a9a","weight":0.2568,"lightness":0.4745,"saturation":0.2727,"hue_group":"cyan"},{"hex":"#7cb4a8","weight":0.2031,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#368561","weight":0.1875,"lightness":0.3667,"saturation":0.4225,"hue_group":"cyan"},{"hex":"#9cccbc","weight":0.1445,"lightness":0.7059,"saturation":0.32,"hue_group":"cyan"},{"hex":"#5ca490","weight":0.1387,"lightness":0.502,"saturation":0.2835,"hue_group":"cyan"},{"hex":"#5c9ca4","weight":0.0693,"lightness":0.502,"saturation":0.2835,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/prismarine.png","family":"prismarine","relations":[{"type":"variants","target":"minecraft:prismarine","label":"Same family: prismarine","confidence":0.75},{"type":"related_sets","target":"minecraft:prismarine","label":"Related set: prismarine","confidence":0.8},{"type":"variants","target":"minecraft:prismarine_stairs","label":"Same family: prismarine","confidence":0.75},{"type":"related_sets","target":"minecraft:prismarine_stairs","label":"Related set: prismarine","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:prismarine","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_wall","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_bricks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:prismarine","label":"Palette proche: Prismarine","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_stairs","label":"Palette proche: Prismarine Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_wall","label":"Palette proche: Prismarine Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_brick_slab","label":"Palette proche: Prismarine Brick Slab","confidence":0.833},{"type":"color_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Palette proche: Prismarine Brick Stairs","confidence":0.833},{"type":"color_neighbors","target":"minecraft:prismarine_bricks","label":"Palette proche: Prismarine Bricks","confidence":0.833},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.808},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.808},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.808},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.808},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.808},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.795},{"type":"color_bridge","target":"minecraft:sea_lantern","label":"Pont de nuance par sous-ton: Sea Lantern","confidence":0.784},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.771},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.771},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.753},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.753},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Chiseled Copper","confidence":0.743},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Weathered Chiseled Copper","confidence":0.743},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.741},{"type":"color_analogous","target":"minecraft:prismarine","label":"Couleurs analogues: Prismarine","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine_stairs","label":"Couleurs analogues: Prismarine Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine_wall","label":"Couleurs analogues: Prismarine Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_shelf","label":"Couleurs analogues: Warped Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_door","label":"Couleurs analogues: Warped Door","confidence":0.948},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.946},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.946},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.946},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.956},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.956},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.947},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.924},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.915},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.915},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.915},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.915},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.936},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.922},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.907},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.904},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.868},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.851},{"type":"color_triad","target":"minecraft:turtle_egg","label":"Harmonie triadique: Turtle Egg","confidence":0.848},{"type":"color_triad","target":"minecraft:copper_torch","label":"Harmonie triadique: Copper Torch","confidence":0.835},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.955},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.955},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.955},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.944},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.935},{"type":"color_square","target":"minecraft:oxeye_daisy","label":"Harmonie carree: Oxeye Daisy","confidence":0.933},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:prismarine_stairs","name":"Prismarine Stairs","entry_type":"block","description":"Prismarine stairs are a decorative stairs variant of prismarine that does not generate naturally and is used for building.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added prismarine stairs."}],"colors":{"primary":"#639c97","dominant_hex":"#587a9a","average_hex":"#639c97","hue_group":"cyan","lightness":0.5,"saturation":0.2235,"palette":["#587a9a","#7cb4a8","#368561","#9cccbc","#5ca490","#5c9ca4"],"color_groups":[{"hex":"#587a9a","weight":0.2568,"lightness":0.4745,"saturation":0.2727,"hue_group":"cyan"},{"hex":"#7cb4a8","weight":0.2031,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#368561","weight":0.1875,"lightness":0.3667,"saturation":0.4225,"hue_group":"cyan"},{"hex":"#9cccbc","weight":0.1445,"lightness":0.7059,"saturation":0.32,"hue_group":"cyan"},{"hex":"#5ca490","weight":0.1387,"lightness":0.502,"saturation":0.2835,"hue_group":"cyan"},{"hex":"#5c9ca4","weight":0.0693,"lightness":0.502,"saturation":0.2835,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/prismarine.png","family":"prismarine","relations":[{"type":"variants","target":"minecraft:prismarine","label":"Same family: prismarine","confidence":0.75},{"type":"related_sets","target":"minecraft:prismarine","label":"Related set: prismarine","confidence":0.8},{"type":"variants","target":"minecraft:prismarine_slab","label":"Same family: prismarine","confidence":0.75},{"type":"related_sets","target":"minecraft:prismarine_slab","label":"Related set: prismarine","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:prismarine","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_wall","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_bricks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:prismarine","label":"Palette proche: Prismarine","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_slab","label":"Palette proche: Prismarine Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_wall","label":"Palette proche: Prismarine Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_brick_slab","label":"Palette proche: Prismarine Brick Slab","confidence":0.833},{"type":"color_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Palette proche: Prismarine Brick Stairs","confidence":0.833},{"type":"color_neighbors","target":"minecraft:prismarine_bricks","label":"Palette proche: Prismarine Bricks","confidence":0.833},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.808},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.808},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.808},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.808},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.808},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.795},{"type":"color_bridge","target":"minecraft:sea_lantern","label":"Pont de nuance par sous-ton: Sea Lantern","confidence":0.784},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.771},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.771},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.753},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.753},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Chiseled Copper","confidence":0.743},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Weathered Chiseled Copper","confidence":0.743},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.741},{"type":"color_analogous","target":"minecraft:prismarine","label":"Couleurs analogues: Prismarine","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine_slab","label":"Couleurs analogues: Prismarine Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine_wall","label":"Couleurs analogues: Prismarine Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_shelf","label":"Couleurs analogues: Warped Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_door","label":"Couleurs analogues: Warped Door","confidence":0.948},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.946},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.946},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.946},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.956},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.956},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.947},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.924},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.915},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.915},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.915},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.915},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.936},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.922},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.907},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.904},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.868},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.851},{"type":"color_triad","target":"minecraft:turtle_egg","label":"Harmonie triadique: Turtle Egg","confidence":0.848},{"type":"color_triad","target":"minecraft:copper_torch","label":"Harmonie triadique: Copper Torch","confidence":0.835},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.955},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.955},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.955},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.944},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.935},{"type":"color_square","target":"minecraft:oxeye_daisy","label":"Harmonie carree: Oxeye Daisy","confidence":0.933},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:prismarine_wall","name":"Prismarine Wall","entry_type":"block","description":"A prismarine wall is a decorative wall variant of prismarine that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added prismarine walls."}],"colors":{"primary":"#639c97","dominant_hex":"#587a9a","average_hex":"#639c97","hue_group":"cyan","lightness":0.5,"saturation":0.2235,"palette":["#587a9a","#7cb4a8","#368561","#9cccbc","#5ca490","#5c9ca4"],"color_groups":[{"hex":"#587a9a","weight":0.2568,"lightness":0.4745,"saturation":0.2727,"hue_group":"cyan"},{"hex":"#7cb4a8","weight":0.2031,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#368561","weight":0.1875,"lightness":0.3667,"saturation":0.4225,"hue_group":"cyan"},{"hex":"#9cccbc","weight":0.1445,"lightness":0.7059,"saturation":0.32,"hue_group":"cyan"},{"hex":"#5ca490","weight":0.1387,"lightness":0.502,"saturation":0.2835,"hue_group":"cyan"},{"hex":"#5c9ca4","weight":0.0693,"lightness":0.502,"saturation":0.2835,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/prismarine.png","family":"prismarine_wall","relations":[{"type":"visual_neighbors","target":"minecraft:prismarine","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_bricks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:prismarine","label":"Palette proche: Prismarine","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_slab","label":"Palette proche: Prismarine Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_stairs","label":"Palette proche: Prismarine Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:prismarine_brick_slab","label":"Palette proche: Prismarine Brick Slab","confidence":0.833},{"type":"color_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Palette proche: Prismarine Brick Stairs","confidence":0.833},{"type":"color_neighbors","target":"minecraft:prismarine_bricks","label":"Palette proche: Prismarine Bricks","confidence":0.833},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.808},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.808},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.808},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.808},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.808},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.795},{"type":"color_bridge","target":"minecraft:sea_lantern","label":"Pont de nuance par sous-ton: Sea Lantern","confidence":0.784},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.771},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.771},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.753},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.753},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Chiseled Copper","confidence":0.743},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Weathered Chiseled Copper","confidence":0.743},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.741},{"type":"color_analogous","target":"minecraft:prismarine","label":"Couleurs analogues: Prismarine","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine_slab","label":"Couleurs analogues: Prismarine Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine_stairs","label":"Couleurs analogues: Prismarine Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_shelf","label":"Couleurs analogues: Warped Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_door","label":"Couleurs analogues: Warped Door","confidence":0.948},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.946},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.946},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.946},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.956},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.956},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.947},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.924},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.915},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.915},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.915},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.915},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.936},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.922},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.907},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.904},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.868},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.851},{"type":"color_triad","target":"minecraft:turtle_egg","label":"Harmonie triadique: Turtle Egg","confidence":0.848},{"type":"color_triad","target":"minecraft:copper_torch","label":"Harmonie triadique: Copper Torch","confidence":0.835},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.955},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.955},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.955},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.944},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.935},{"type":"color_square","target":"minecraft:oxeye_daisy","label":"Harmonie carree: Oxeye Daisy","confidence":0.933},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:prize_pottery_sherd","name":"Prize Pottery Sherd","entry_type":"item","description":"A prize pottery sherd is a pottery sherd that depicts a gemstone. It can be found in desert pyramids.","history":[{"version":"1.19.4","status":"added","notes":"Added prize pottery shards behind the Update 1.20 experimental datapack ."}],"colors":{"primary":"#6b3c31","dominant_hex":"#724234","average_hex":"#6b3c31","hue_group":"red","lightness":0.3059,"saturation":0.3718,"palette":["#724234","#542c24","#5c342c","#844c3c","#44241c","#995949"],"color_groups":[{"hex":"#724234","weight":0.2357,"lightness":0.3255,"saturation":0.3735,"hue_group":"red"},{"hex":"#542c24","weight":0.1847,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#5c342c","weight":0.172,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#844c3c","weight":0.1529,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#44241c","weight":0.1274,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#995949","weight":0.1274,"lightness":0.4431,"saturation":0.354,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/prize_pottery_sherd.png","family":"prize_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:pufferfish","name":"Pufferfish","entry_type":"item","description":"Pufferfish are bucketable aquatic neutral mobs found in oceans. Although they never seek out mobs to attack, they defensively inflate themselves when approached too closely by players, axolotls, or non-aquatic mobs, dealing damage and inflicting Poison on them.","history":[{"version":"1.13 18w08b","status":"added","notes":"Added \"puffer fish\"."}],"colors":{"primary":"#be9a52","dominant_hex":"#f4dab0","average_hex":"#be9a52","hue_group":"yellow","lightness":0.5333,"saturation":0.4538,"palette":["#f4dab0","#eba115","#7b5112","#b9811f","#65a4ba","#d4a44c"],"color_groups":[{"hex":"#f4dab0","weight":0.2345,"lightness":0.8235,"saturation":0.7556,"hue_group":"yellow"},{"hex":"#eba115","weight":0.2069,"lightness":0.502,"saturation":0.8425,"hue_group":"yellow"},{"hex":"#7b5112","weight":0.2,"lightness":0.2765,"saturation":0.7447,"hue_group":"yellow"},{"hex":"#b9811f","weight":0.1379,"lightness":0.4235,"saturation":0.713,"hue_group":"yellow"},{"hex":"#65a4ba","weight":0.1103,"lightness":0.5627,"saturation":0.3812,"hue_group":"cyan"},{"hex":"#d4a44c","weight":0.1103,"lightness":0.5647,"saturation":0.6126,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/pufferfish.png","family":"pufferfish","relations":[{"type":"variants","target":"minecraft:pufferfish/mob","label":"Same family: pufferfish","confidence":0.75},{"type":"related_sets","target":"minecraft:pufferfish/mob","label":"Related set: pufferfish","confidence":0.8},{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:glowstone_dust","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_nugget","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clock","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:totem_of_undying","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_pie","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ocelot_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:experience_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:pufferfish/mob","name":"Pufferfish / Mob","entry_type":"mob","description":"Pufferfish are bucketable aquatic neutral mobs found in oceans. Although they never seek out mobs to attack, they defensively inflate themselves when approached too closely by players, axolotls, or non-aquatic mobs, dealing damage and inflicting Poison on them.","history":[{"version":"1.13 18w08b","status":"added","notes":"Added \"puffer fish\"."}],"colors":{"primary":"#d3a85b","dominant_hex":"#b68020","average_hex":"#d3a85b","hue_group":"yellow","lightness":0.5922,"saturation":0.5769,"palette":["#b68020","#fce4bd","#dbc498","#e79d16","#d4a44c","#242b20"],"color_groups":[{"hex":"#b68020","weight":0.2898,"lightness":0.4196,"saturation":0.7009,"hue_group":"yellow"},{"hex":"#fce4bd","weight":0.2094,"lightness":0.8647,"saturation":0.913,"hue_group":"yellow"},{"hex":"#dbc498","weight":0.2031,"lightness":0.7275,"saturation":0.482,"hue_group":"yellow"},{"hex":"#e79d16","weight":0.1717,"lightness":0.4961,"saturation":0.8261,"hue_group":"yellow"},{"hex":"#d4a44c","weight":0.0913,"lightness":0.5647,"saturation":0.6126,"hue_group":"yellow"},{"hex":"#242b20","weight":0.0346,"lightness":0.1471,"saturation":0.1467,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/pufferfish.png","family":"pufferfish","relations":[{"type":"variants","target":"minecraft:pufferfish","label":"Same family: pufferfish","confidence":0.75},{"type":"related_sets","target":"minecraft:pufferfish","label":"Related set: pufferfish","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:camel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spark","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/red","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/creamy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/ocelot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_lime","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/persian","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_yellow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/green","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:pufferfish_bucket","name":"Pufferfish Bucket","entry_type":"item","description":"A bucket of pufferfish, internally known as a pufferfish bucket, is a living pufferfish inside of a water bucket. They can also be used to tame and breed nautiluses.","history":[{"version":"1.13 18w08b","status":"added","notes":"Added \"Puffer Fish\" buckets."},{"version":"1.13.1 18w33a","status":"added","notes":"added for buckets of pufferfish."},{"version":"19w05a","status":"added","notes":"Added wandering traders , which sell buckets of pufferfish."}],"colors":{"primary":"#8c8677","dominant_hex":"#cc9018","average_hex":"#8c8677","hue_group":"neutral","lightness":0.5078,"saturation":0.0837,"palette":["#cc9018","#313332","#848484","#e6e2dc","#3569d1","#9bacb2"],"color_groups":[{"hex":"#cc9018","weight":0.227,"lightness":0.4471,"saturation":0.7895,"hue_group":"yellow"},{"hex":"#313332","weight":0.2086,"lightness":0.1961,"saturation":0.02,"hue_group":"neutral"},{"hex":"#848484","weight":0.1595,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e6e2dc","weight":0.1595,"lightness":0.8824,"saturation":0.1667,"hue_group":"yellow"},{"hex":"#3569d1","weight":0.1227,"lightness":0.5137,"saturation":0.629,"hue_group":"blue"},{"hex":"#9bacb2","weight":0.1227,"lightness":0.6529,"saturation":0.1299,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/pufferfish_bucket.png","family":"pufferfish_bucket","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:tropical_fish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clay_ball","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trident","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wild_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:pufferfish_spawn_egg","name":"Pufferfish Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#988e5e","dominant_hex":"#346287","average_hex":"#988e5e","hue_group":"yellow","lightness":0.4824,"saturation":0.2358,"palette":["#346287","#c4951d","#e7c795","#fcac0c","#866634","#65adcc"],"color_groups":[{"hex":"#346287","weight":0.2828,"lightness":0.3667,"saturation":0.4439,"hue_group":"cyan"},{"hex":"#c4951d","weight":0.1793,"lightness":0.4412,"saturation":0.7422,"hue_group":"yellow"},{"hex":"#e7c795","weight":0.1655,"lightness":0.7451,"saturation":0.6308,"hue_group":"yellow"},{"hex":"#fcac0c","weight":0.1448,"lightness":0.5176,"saturation":0.9756,"hue_group":"yellow"},{"hex":"#866634","weight":0.1379,"lightness":0.3647,"saturation":0.4409,"hue_group":"yellow"},{"hex":"#65adcc","weight":0.0897,"lightness":0.598,"saturation":0.5024,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/pufferfish_spawn_egg.png","family":"pufferfish_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:birch_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_foot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:painting","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_porkchop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trader_llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_hide","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:pumpkin","name":"Pumpkin","entry_type":"block","description":"A pumpkin is a block found in patches in grassy biomes or grown from pumpkin seeds, which it can also be crafted into. Using shears on a pumpkin carves a face into it and drops pumpkin seeds.","history":[{"version":"v1.2.0 preview","status":"added","notes":"Added pumpkins, which are always carved ."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell pumpkins."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb pumpkins, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#c47318","dominant_hex":"#e48c1c","average_hex":"#c47318","hue_group":"yellow","lightness":0.4314,"saturation":0.7818,"palette":["#e48c1c","#a4540c","#c46c14","#7c3c0c","#e4a44c","#ac6414"],"color_groups":[{"hex":"#e48c1c","weight":0.4102,"lightness":0.502,"saturation":0.7874,"hue_group":"yellow"},{"hex":"#a4540c","weight":0.2461,"lightness":0.3451,"saturation":0.8636,"hue_group":"red"},{"hex":"#c46c14","weight":0.1875,"lightness":0.4235,"saturation":0.8148,"hue_group":"red"},{"hex":"#7c3c0c","weight":0.082,"lightness":0.2667,"saturation":0.8235,"hue_group":"red"},{"hex":"#e4a44c","weight":0.0586,"lightness":0.5961,"saturation":0.7379,"hue_group":"yellow"},{"hex":"#ac6414","weight":0.0156,"lightness":0.3765,"saturation":0.7917,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pumpkin_side.png","family":"pumpkin","relations":[{"type":"visual_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carved_pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:carved_pumpkin","label":"Palette proche: Carved Pumpkin","confidence":0.914},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.911},{"type":"color_neighbors","target":"minecraft:jack_o_lantern","label":"Palette proche: Jack O Lantern","confidence":0.899},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.888},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.883},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.883},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.876},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.866},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.866},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.866},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.866},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.866},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.685},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.683},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.683},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.681},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.645},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.624},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.622},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.622},{"type":"color_bridge","target":"minecraft:potted_crimson_roots","label":"Pont de nuance par palette: Potted Crimson Roots","confidence":0.603},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.601},{"type":"color_analogous","target":"minecraft:orange_concrete_powder","label":"Couleurs analogues: Orange Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire","label":"Couleurs analogues: Fire","confidence":0.96},{"type":"color_analogous","target":"minecraft:sniffer_egg","label":"Couleurs analogues: Sniffer Egg","confidence":0.96},{"type":"color_analogous","target":"minecraft:glowstone","label":"Couleurs analogues: Glowstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_button","label":"Couleurs analogues: Spruce Button","confidence":0.956},{"type":"color_analogous","target":"minecraft:spruce_fence","label":"Couleurs analogues: Spruce Fence","confidence":0.956},{"type":"color_analogous","target":"minecraft:spruce_fence_gate","label":"Couleurs analogues: Spruce Fence Gate","confidence":0.956},{"type":"color_analogous","target":"minecraft:spruce_planks","label":"Couleurs analogues: Spruce Planks","confidence":0.956},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.934},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.918},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.798},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.77},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.77},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.77},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.765},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.748},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.946},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.932},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.932},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.931},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.912},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.899},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.896},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.89},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.942},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.937},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.937},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.919},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.884},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.881},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.864},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:pumpkin_pie","name":"Pumpkin Pie","entry_type":"item","description":"Pumpkin pie is a food item that can be eaten by the player.","history":[{"version":"1.4.2 12w37a","status":"added","notes":"Added pumpkin pies."}],"colors":{"primary":"#c98c4e","dominant_hex":"#875619","average_hex":"#c98c4e","hue_group":"yellow","lightness":0.5471,"saturation":0.5325,"palette":["#875619","#da8a49","#ecb266","#ac745c","#ec9c64","#fbc97c"],"color_groups":[{"hex":"#875619","weight":0.2333,"lightness":0.3137,"saturation":0.6875,"hue_group":"yellow"},{"hex":"#da8a49","weight":0.2167,"lightness":0.5706,"saturation":0.6621,"hue_group":"red"},{"hex":"#ecb266","weight":0.2,"lightness":0.6627,"saturation":0.7791,"hue_group":"yellow"},{"hex":"#ac745c","weight":0.1417,"lightness":0.5176,"saturation":0.3252,"hue_group":"red"},{"hex":"#ec9c64","weight":0.1083,"lightness":0.6588,"saturation":0.7816,"hue_group":"red"},{"hex":"#fbc97c","weight":0.1,"lightness":0.7353,"saturation":0.9407,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/pumpkin_pie.png","family":"pumpkin_pie","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:camel_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_chestplate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ocelot_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_nugget","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clock","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone_dust","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:pumpkin_seeds","name":"Pumpkin Seeds","entry_type":"item","description":"Pumpkin seeds are items obtained from pumpkins that can be used to grow pumpkin stems. Pumpkin stems are plants grown on farmland that, over time, grow pumpkins on dirt, mud and moss blocks adjacent to them.","history":[{"version":"1.8","status":"added","notes":"Added pumpkin seeds."},{"version":"wiki-history","status":"added","notes":"Added the pumpkin stem, with seven stages of growth."},{"version":"15w44a","status":"added","notes":"added to dungeon chests."}],"colors":{"primary":"#cac893","dominant_hex":"#ccc48c","average_hex":"#cac893","hue_group":"yellow","lightness":0.6843,"saturation":0.3416,"palette":["#ccc48c","#ccd4ac","#ccb46c"],"color_groups":[{"hex":"#ccc48c","weight":0.4242,"lightness":0.6745,"saturation":0.3855,"hue_group":"yellow"},{"hex":"#ccd4ac","weight":0.3939,"lightness":0.7529,"saturation":0.3175,"hue_group":"yellow"},{"hex":"#ccb46c","weight":0.1818,"lightness":0.6118,"saturation":0.4848,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/pumpkin_seeds.png","family":"pumpkin_seeds","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:filled_map","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:map","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:eye_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trader_llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_porkchop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:field_masoned_banner_pattern","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:pumpkin_stem","name":"Pumpkin Stem","entry_type":"block","description":"Pumpkin seeds are items obtained from pumpkins that can be used to grow pumpkin stems. Pumpkin stems are plants grown on farmland that, over time, grow pumpkins on dirt, mud and moss blocks adjacent to them.","history":[{"version":"1.8","status":"added","notes":"Added pumpkin seeds."},{"version":"wiki-history","status":"added","notes":"Added the pumpkin stem, with seven stages of growth."},{"version":"15w44a","status":"added","notes":"added to dungeon chests."}],"colors":{"primary":"#9a9a9a","dominant_hex":"#8c8c8c","average_hex":"#9a9a9a","hue_group":"neutral","lightness":0.6039,"saturation":0.0,"palette":["#8c8c8c","#b4b4b4","#646464","#c4c4c4"],"color_groups":[{"hex":"#8c8c8c","weight":0.3143,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.2857,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#646464","weight":0.2,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.2,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/pumpkin_stem.png","family":"pumpkin_stem","relations":[{"type":"visual_neighbors","target":"minecraft:melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeater","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:attached_melon_stem","label":"Palette proche: Attached Melon Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Palette proche: Attached Pumpkin Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:melon_stem","label":"Palette proche: Melon Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_leaves","label":"Palette proche: Mangrove Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:vine","label":"Palette proche: Vine","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_bridge","target":"minecraft:attached_melon_stem","label":"Pont de nuance par palette: Attached Melon Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_pumpkin_stem","label":"Pont de nuance par palette: Attached Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:melon_stem","label":"Pont de nuance par palette: Melon Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:mangrove_leaves","label":"Pont de nuance par palette: Mangrove Leaves","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_slab","label":"Contraste clair sombre: Deepslate Tile Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_stairs","label":"Contraste clair sombre: Deepslate Tile Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_wall","label":"Contraste clair sombre: Deepslate Tile Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tiles","label":"Contraste clair sombre: Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_deepslate_tiles","label":"Contraste clair sombre: Cracked Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55}],"category":"natural"},{"id":"minecraft:purple_banner","name":"Purple Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"purple_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:purple_bed","name":"Purple Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"purple_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:purple_bundle","name":"Purple Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#7d2da9","dominant_hex":"#8925c8","average_hex":"#7d2da9","hue_group":"purple","lightness":0.4196,"saturation":0.5794,"palette":["#8925c8","#581888","#6c1cac","#ac3ce4","#845434","#bba36b"],"color_groups":[{"hex":"#8925c8","weight":0.2977,"lightness":0.4647,"saturation":0.6878,"hue_group":"purple"},{"hex":"#581888","weight":0.2519,"lightness":0.3137,"saturation":0.7,"hue_group":"purple"},{"hex":"#6c1cac","weight":0.1985,"lightness":0.3922,"saturation":0.72,"hue_group":"purple"},{"hex":"#ac3ce4","weight":0.1527,"lightness":0.5647,"saturation":0.7568,"hue_group":"purple"},{"hex":"#845434","weight":0.0534,"lightness":0.3608,"saturation":0.4348,"hue_group":"red"},{"hex":"#bba36b","weight":0.0458,"lightness":0.5765,"saturation":0.3704,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/purple_bundle.png","family":"purple_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:magenta_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:endermite_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enderman_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_shell","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:popped_chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spire_armor_trim_smithing_template","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_crystal","label":"Shared hue group: purple","confidence":0.55}],"category":"item"},{"id":"minecraft:purple_candle","name":"Purple Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#69229f","dominant_hex":"#641c9c","average_hex":"#69229f","hue_group":"purple","lightness":0.3784,"saturation":0.6477,"palette":["#641c9c","#6c24a4","#842cb4","#242434","#8c34bc"],"color_groups":[{"hex":"#641c9c","weight":0.4286,"lightness":0.3608,"saturation":0.6957,"hue_group":"purple"},{"hex":"#6c24a4","weight":0.2857,"lightness":0.3922,"saturation":0.64,"hue_group":"purple"},{"hex":"#842cb4","weight":0.1905,"lightness":0.4392,"saturation":0.6071,"hue_group":"purple"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#8c34bc","weight":0.0476,"lightness":0.4706,"saturation":0.5667,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/purple_candle.png","family":"purple_candle","relations":[{"type":"visual_neighbors","target":"minecraft:bubble_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_wool","label":"Palette proche: Purple Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_shulker_box","label":"Palette proche: Purple Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_concrete","label":"Palette proche: Purple Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Palette proche: Purple Glazed Terracotta","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.874},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.819},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.817},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Palette proche: Magenta Stained Glass Pane","confidence":0.753},{"type":"color_neighbors","target":"minecraft:nether_portal","label":"Palette proche: Nether Portal","confidence":0.743},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.715},{"type":"color_neighbors","target":"minecraft:respawn_anchor","label":"Palette proche: Respawn Anchor","confidence":0.697},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par sous-ton: Tinted Glass","confidence":0.711},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.704},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par palette: Iron Chain","confidence":0.675},{"type":"color_bridge","target":"minecraft:spawner","label":"Pont de nuance par palette: Spawner","confidence":0.664},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.65},{"type":"color_bridge","target":"minecraft:blue_glazed_terracotta","label":"Pont de nuance par palette: Blue Glazed Terracotta","confidence":0.64},{"type":"color_bridge","target":"minecraft:warped_hyphae","label":"Pont de nuance par sous-ton: Warped Hyphae","confidence":0.624},{"type":"color_bridge","target":"minecraft:warped_stem","label":"Pont de nuance par sous-ton: Warped Stem","confidence":0.624},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par palette: Black Concrete Powder","confidence":0.62},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.606},{"type":"color_analogous","target":"minecraft:purple_shulker_box","label":"Couleurs analogues: Purple Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_concrete","label":"Couleurs analogues: Purple Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_glazed_terracotta","label":"Couleurs analogues: Purple Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_stained_glass_pane","label":"Couleurs analogues: Purple Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_stained_glass","label":"Couleurs analogues: Purple Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_carpet","label":"Couleurs analogues: Purple Carpet","confidence":0.934},{"type":"color_analogous","target":"minecraft:purple_wool","label":"Couleurs analogues: Purple Wool","confidence":0.934},{"type":"color_analogous","target":"minecraft:dragon_egg","label":"Couleurs analogues: Dragon Egg","confidence":0.93},{"type":"color_complement","target":"minecraft:kelp","label":"Contraste complementaire: Kelp","confidence":0.96},{"type":"color_complement","target":"minecraft:dried_kelp_block","label":"Contraste complementaire: Dried Kelp Block","confidence":0.937},{"type":"color_complement","target":"minecraft:jungle_sapling","label":"Contraste complementaire: Jungle Sapling","confidence":0.895},{"type":"color_complement","target":"minecraft:potted_jungle_sapling","label":"Contraste complementaire: Potted Jungle Sapling","confidence":0.895},{"type":"color_complement","target":"minecraft:lime_concrete","label":"Contraste complementaire: Lime Concrete","confidence":0.888},{"type":"color_complement","target":"minecraft:dark_oak_sapling","label":"Contraste complementaire: Dark Oak Sapling","confidence":0.848},{"type":"color_complement","target":"minecraft:potted_dark_oak_sapling","label":"Contraste complementaire: Potted Dark Oak Sapling","confidence":0.848},{"type":"color_complement","target":"minecraft:lime_candle","label":"Contraste complementaire: Lime Candle","confidence":0.846},{"type":"color_triad","target":"minecraft:podzol","label":"Harmonie triadique: Podzol","confidence":0.96},{"type":"color_triad","target":"minecraft:dead_bush","label":"Harmonie triadique: Dead Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_dead_bush","label":"Harmonie triadique: Potted Dead Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:powered_rail","label":"Harmonie triadique: Powered Rail","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_oak_hanging_sign","label":"Harmonie triadique: Dark Oak Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_oak_wall_hanging_sign","label":"Harmonie triadique: Dark Oak Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_dark_oak_log","label":"Harmonie triadique: Stripped Dark Oak Log","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_dark_oak_wood","label":"Harmonie triadique: Stripped Dark Oak Wood","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_concrete_powder","label":"Harmonie carree: Cyan Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_carpet","label":"Harmonie carree: Cyan Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_wool","label":"Harmonie carree: Cyan Wool","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_button","label":"Harmonie carree: Mangrove Button","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_fence","label":"Harmonie carree: Mangrove Fence","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_fence_gate","label":"Harmonie carree: Mangrove Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_planks","label":"Harmonie carree: Mangrove Planks","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_pressure_plate","label":"Harmonie carree: Mangrove Pressure Plate","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.558},{"type":"value_contrast","target":"minecraft:diorite","label":"Contraste clair sombre: Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite_slab","label":"Contraste clair sombre: Diorite Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite_stairs","label":"Contraste clair sombre: Diorite Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite_wall","label":"Contraste clair sombre: Diorite Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_stairs","label":"Contraste clair sombre: Polished Diorite Stairs","confidence":0.55}],"category":"decorative"},{"id":"minecraft:purple_candle_cake","name":"Purple Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"purple_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:purple_carpet","name":"Purple Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#7a2aad","dominant_hex":"#6a24a1","average_hex":"#7a2aad","hue_group":"purple","lightness":0.4216,"saturation":0.6093,"palette":["#6a24a1","#7424a6","#7c2cac","#842cb4","#8634b6","#9444cc"],"color_groups":[{"hex":"#6a24a1","weight":0.2734,"lightness":0.3863,"saturation":0.6345,"hue_group":"purple"},{"hex":"#7424a6","weight":0.2031,"lightness":0.3961,"saturation":0.6436,"hue_group":"purple"},{"hex":"#7c2cac","weight":0.1875,"lightness":0.4235,"saturation":0.5926,"hue_group":"purple"},{"hex":"#842cb4","weight":0.1523,"lightness":0.4392,"saturation":0.6071,"hue_group":"purple"},{"hex":"#8634b6","weight":0.1016,"lightness":0.4588,"saturation":0.5556,"hue_group":"purple"},{"hex":"#9444cc","weight":0.082,"lightness":0.5333,"saturation":0.5714,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/purple_wool.png","family":"purple_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:purple_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purple_wool","label":"Palette proche: Purple Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_shulker_box","label":"Palette proche: Purple Shulker Box","confidence":0.932},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.921},{"type":"color_neighbors","target":"minecraft:purple_concrete","label":"Palette proche: Purple Concrete","confidence":0.915},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.861},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.851},{"type":"color_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Palette proche: Purple Glazed Terracotta","confidence":0.847},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Palette proche: Magenta Stained Glass Pane","confidence":0.829},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass","label":"Palette proche: Magenta Stained Glass","confidence":0.749},{"type":"color_neighbors","target":"minecraft:nether_portal","label":"Palette proche: Nether Portal","confidence":0.74},{"type":"color_neighbors","target":"minecraft:magenta_concrete","label":"Palette proche: Magenta Concrete","confidence":0.7},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.669},{"type":"color_bridge","target":"minecraft:blue_carpet","label":"Pont de nuance par palette: Blue Carpet","confidence":0.638},{"type":"color_bridge","target":"minecraft:blue_wool","label":"Pont de nuance par palette: Blue Wool","confidence":0.638},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.636},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.621},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.609},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.609},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.609},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.602},{"type":"color_bridge","target":"minecraft:blue_stained_glass_pane","label":"Pont de nuance par palette: Blue Stained Glass Pane","confidence":0.6},{"type":"color_analogous","target":"minecraft:purple_wool","label":"Couleurs analogues: Purple Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_glazed_terracotta","label":"Couleurs analogues: Purple Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_concrete_powder","label":"Couleurs analogues: Purple Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_shulker_box","label":"Couleurs analogues: Purple Shulker Box","confidence":0.939},{"type":"color_analogous","target":"minecraft:purple_candle","label":"Couleurs analogues: Purple Candle","confidence":0.934},{"type":"color_analogous","target":"minecraft:purple_stained_glass_pane","label":"Couleurs analogues: Purple Stained Glass Pane","confidence":0.931},{"type":"color_analogous","target":"minecraft:purple_stained_glass","label":"Couleurs analogues: Purple Stained Glass","confidence":0.918},{"type":"color_analogous","target":"minecraft:purple_concrete","label":"Couleurs analogues: Purple Concrete","confidence":0.906},{"type":"color_complement","target":"minecraft:seagrass","label":"Contraste complementaire: Seagrass","confidence":0.917},{"type":"color_complement","target":"minecraft:tall_seagrass","label":"Contraste complementaire: Tall Seagrass","confidence":0.915},{"type":"color_complement","target":"minecraft:dried_kelp_block","label":"Contraste complementaire: Dried Kelp Block","confidence":0.9},{"type":"color_complement","target":"minecraft:lily_of_the_valley","label":"Contraste complementaire: Lily Of The Valley","confidence":0.894},{"type":"color_complement","target":"minecraft:potted_lily_of_the_valley","label":"Contraste complementaire: Potted Lily Of The Valley","confidence":0.894},{"type":"color_complement","target":"minecraft:kelp","label":"Contraste complementaire: Kelp","confidence":0.885},{"type":"color_complement","target":"minecraft:potted_spruce_sapling","label":"Contraste complementaire: Potted Spruce Sapling","confidence":0.88},{"type":"color_complement","target":"minecraft:spruce_sapling","label":"Contraste complementaire: Spruce Sapling","confidence":0.88},{"type":"color_triad","target":"minecraft:jack_o_lantern","label":"Harmonie triadique: Jack O Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_shelf","label":"Harmonie triadique: Oak Shelf","confidence":0.96},{"type":"color_triad","target":"minecraft:scaffolding","label":"Harmonie triadique: Scaffolding","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_trapdoor","label":"Harmonie triadique: Oak Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:crafting_table","label":"Harmonie triadique: Crafting Table","confidence":0.96},{"type":"color_triad","target":"minecraft:lectern","label":"Harmonie triadique: Lectern","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_square","target":"minecraft:redstone_torch","label":"Harmonie carree: Redstone Torch","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_shulker_box","label":"Harmonie carree: Cyan Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_door","label":"Harmonie carree: Cherry Door","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_button","label":"Harmonie carree: Cherry Button","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_fence","label":"Harmonie carree: Cherry Fence","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_fence_gate","label":"Harmonie carree: Cherry Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_planks","label":"Harmonie carree: Cherry Planks","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_pressure_plate","label":"Harmonie carree: Cherry Pressure Plate","confidence":0.96},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"decorative"},{"id":"minecraft:purple_concrete","name":"Purple Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#64209c","dominant_hex":"#64249c","average_hex":"#64209c","hue_group":"purple","lightness":0.3686,"saturation":0.6596,"palette":["#64249c","#641c9c"],"color_groups":[{"hex":"#64249c","weight":0.5039,"lightness":0.3765,"saturation":0.625,"hue_group":"purple"},{"hex":"#641c9c","weight":0.4961,"lightness":0.3608,"saturation":0.6957,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/purple_concrete.png","family":"purple_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:purple_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purple_shulker_box","label":"Palette proche: Purple Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.915},{"type":"color_neighbors","target":"minecraft:purple_wool","label":"Palette proche: Purple Wool","confidence":0.915},{"type":"color_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Palette proche: Purple Glazed Terracotta","confidence":0.835},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.79},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.781},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.775},{"type":"color_neighbors","target":"minecraft:nether_portal","label":"Palette proche: Nether Portal","confidence":0.755},{"type":"color_neighbors","target":"minecraft:bubble_coral_block","label":"Palette proche: Bubble Coral Block","confidence":0.674},{"type":"color_neighbors","target":"minecraft:bubble_coral","label":"Palette proche: Bubble Coral","confidence":0.658},{"type":"color_neighbors","target":"minecraft:bubble_coral_fan","label":"Palette proche: Bubble Coral Fan","confidence":0.655},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.664},{"type":"color_bridge","target":"minecraft:blue_glazed_terracotta","label":"Pont de nuance par palette: Blue Glazed Terracotta","confidence":0.604},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.591},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:warped_hyphae","label":"Pont de nuance par sous-ton: Warped Hyphae","confidence":0.58},{"type":"color_bridge","target":"minecraft:warped_stem","label":"Pont de nuance par sous-ton: Warped Stem","confidence":0.58},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par sous-ton: Tinted Glass","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.58},{"type":"color_analogous","target":"minecraft:purple_shulker_box","label":"Couleurs analogues: Purple Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_candle","label":"Couleurs analogues: Purple Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_stained_glass_pane","label":"Couleurs analogues: Purple Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_stained_glass","label":"Couleurs analogues: Purple Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_glazed_terracotta","label":"Couleurs analogues: Purple Glazed Terracotta","confidence":0.932},{"type":"color_analogous","target":"minecraft:purple_carpet","label":"Couleurs analogues: Purple Carpet","confidence":0.906},{"type":"color_analogous","target":"minecraft:purple_wool","label":"Couleurs analogues: Purple Wool","confidence":0.906},{"type":"color_analogous","target":"minecraft:dragon_egg","label":"Couleurs analogues: Dragon Egg","confidence":0.905},{"type":"color_complement","target":"minecraft:kelp","label":"Contraste complementaire: Kelp","confidence":0.96},{"type":"color_complement","target":"minecraft:jungle_sapling","label":"Contraste complementaire: Jungle Sapling","confidence":0.934},{"type":"color_complement","target":"minecraft:potted_jungle_sapling","label":"Contraste complementaire: Potted Jungle Sapling","confidence":0.934},{"type":"color_complement","target":"minecraft:lime_concrete","label":"Contraste complementaire: Lime Concrete","confidence":0.929},{"type":"color_complement","target":"minecraft:dried_kelp_block","label":"Contraste complementaire: Dried Kelp Block","confidence":0.897},{"type":"color_complement","target":"minecraft:lime_candle","label":"Contraste complementaire: Lime Candle","confidence":0.886},{"type":"color_complement","target":"minecraft:dark_oak_sapling","label":"Contraste complementaire: Dark Oak Sapling","confidence":0.886},{"type":"color_complement","target":"minecraft:potted_dark_oak_sapling","label":"Contraste complementaire: Potted Dark Oak Sapling","confidence":0.886},{"type":"color_triad","target":"minecraft:fire","label":"Harmonie triadique: Fire","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_button","label":"Harmonie triadique: Spruce Button","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_fence","label":"Harmonie triadique: Spruce Fence","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_fence_gate","label":"Harmonie triadique: Spruce Fence Gate","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_planks","label":"Harmonie triadique: Spruce Planks","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_pressure_plate","label":"Harmonie triadique: Spruce Pressure Plate","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_sign","label":"Harmonie triadique: Spruce Sign","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_carpet","label":"Harmonie carree: Cyan Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_wool","label":"Harmonie carree: Cyan Wool","confidence":0.96},{"type":"color_square","target":"minecraft:blue_orchid","label":"Harmonie carree: Blue Orchid","confidence":0.96},{"type":"color_square","target":"minecraft:potted_blue_orchid","label":"Harmonie carree: Potted Blue Orchid","confidence":0.96},{"type":"color_square","target":"minecraft:red_glazed_terracotta","label":"Harmonie carree: Red Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:potted_red_mushroom","label":"Harmonie carree: Potted Red Mushroom","confidence":0.96},{"type":"color_square","target":"minecraft:red_mushroom","label":"Harmonie carree: Red Mushroom","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_shelf","label":"Harmonie carree: Mangrove Shelf","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.566},{"type":"value_contrast","target":"minecraft:diorite","label":"Contraste clair sombre: Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite_slab","label":"Contraste clair sombre: Diorite Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite_stairs","label":"Contraste clair sombre: Diorite Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite_wall","label":"Contraste clair sombre: Diorite Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_stairs","label":"Contraste clair sombre: Polished Diorite Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:purple_concrete_powder","name":"Purple Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#8438b2","dominant_hex":"#7b33aa","average_hex":"#8438b2","hue_group":"purple","lightness":0.4588,"saturation":0.5214,"palette":["#7b33aa","#8334b4","#913fbe","#8c3cb4","#8434ac","#843cb4"],"color_groups":[{"hex":"#7b33aa","weight":0.3086,"lightness":0.4333,"saturation":0.5385,"hue_group":"purple"},{"hex":"#8334b4","weight":0.1914,"lightness":0.4549,"saturation":0.5517,"hue_group":"purple"},{"hex":"#913fbe","weight":0.1836,"lightness":0.4961,"saturation":0.502,"hue_group":"purple"},{"hex":"#8c3cb4","weight":0.1719,"lightness":0.4706,"saturation":0.5,"hue_group":"purple"},{"hex":"#8434ac","weight":0.0742,"lightness":0.4392,"saturation":0.5357,"hue_group":"purple"},{"hex":"#843cb4","weight":0.0703,"lightness":0.4706,"saturation":0.5,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/purple_concrete_powder.png","family":"purple_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.934},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.932},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.921},{"type":"color_neighbors","target":"minecraft:purple_wool","label":"Palette proche: Purple Wool","confidence":0.921},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.874},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Palette proche: Magenta Stained Glass Pane","confidence":0.828},{"type":"color_neighbors","target":"minecraft:purple_shulker_box","label":"Palette proche: Purple Shulker Box","confidence":0.821},{"type":"color_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Palette proche: Purple Glazed Terracotta","confidence":0.82},{"type":"color_neighbors","target":"minecraft:purple_concrete","label":"Palette proche: Purple Concrete","confidence":0.79},{"type":"color_neighbors","target":"minecraft:magenta_shulker_box","label":"Palette proche: Magenta Shulker Box","confidence":0.737},{"type":"color_neighbors","target":"minecraft:magenta_concrete","label":"Palette proche: Magenta Concrete","confidence":0.736},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.733},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.721},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.688},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.669},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.669},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.669},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.664},{"type":"color_bridge","target":"minecraft:blue_carpet","label":"Pont de nuance par palette: Blue Carpet","confidence":0.659},{"type":"color_bridge","target":"minecraft:blue_wool","label":"Pont de nuance par palette: Blue Wool","confidence":0.659},{"type":"color_bridge","target":"minecraft:blue_shulker_box","label":"Pont de nuance par palette: Blue Shulker Box","confidence":0.646},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.642},{"type":"color_analogous","target":"minecraft:purple_carpet","label":"Couleurs analogues: Purple Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_wool","label":"Couleurs analogues: Purple Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_glazed_terracotta","label":"Couleurs analogues: Purple Glazed Terracotta","confidence":0.951},{"type":"color_analogous","target":"minecraft:purple_stained_glass_pane","label":"Couleurs analogues: Purple Stained Glass Pane","confidence":0.92},{"type":"color_analogous","target":"minecraft:purple_shulker_box","label":"Couleurs analogues: Purple Shulker Box","confidence":0.915},{"type":"color_analogous","target":"minecraft:purple_candle","label":"Couleurs analogues: Purple Candle","confidence":0.911},{"type":"color_analogous","target":"minecraft:purple_stained_glass","label":"Couleurs analogues: Purple Stained Glass","confidence":0.909},{"type":"color_analogous","target":"minecraft:purple_concrete","label":"Couleurs analogues: Purple Concrete","confidence":0.883},{"type":"color_complement","target":"minecraft:seagrass","label":"Contraste complementaire: Seagrass","confidence":0.933},{"type":"color_complement","target":"minecraft:tall_seagrass","label":"Contraste complementaire: Tall Seagrass","confidence":0.93},{"type":"color_complement","target":"minecraft:lily_of_the_valley","label":"Contraste complementaire: Lily Of The Valley","confidence":0.927},{"type":"color_complement","target":"minecraft:potted_lily_of_the_valley","label":"Contraste complementaire: Potted Lily Of The Valley","confidence":0.927},{"type":"color_complement","target":"minecraft:potted_spruce_sapling","label":"Contraste complementaire: Potted Spruce Sapling","confidence":0.913},{"type":"color_complement","target":"minecraft:spruce_sapling","label":"Contraste complementaire: Spruce Sapling","confidence":0.913},{"type":"color_complement","target":"minecraft:dried_kelp_block","label":"Contraste complementaire: Dried Kelp Block","confidence":0.884},{"type":"color_complement","target":"minecraft:kelp","label":"Contraste complementaire: Kelp","confidence":0.869},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_fungus","label":"Harmonie carree: Crimson Fungus","confidence":0.96},{"type":"color_square","target":"minecraft:potted_crimson_fungus","label":"Harmonie carree: Potted Crimson Fungus","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_shulker_box","label":"Harmonie carree: Cyan Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:target","label":"Harmonie carree: Target","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_button","label":"Harmonie carree: Cherry Button","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_fence","label":"Harmonie carree: Cherry Fence","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_fence_gate","label":"Harmonie carree: Cherry Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_planks","label":"Harmonie carree: Cherry Planks","confidence":0.96},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.55},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.55},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"building"},{"id":"minecraft:purple_dye","name":"Purple Dye","entry_type":"item","description":"Purple dye is one of the sixteen available dyes. Crafting it is possible only with other dyes.","history":[{"version":"1.2","status":"added","notes":"Added purple dye."},{"version":"1.4.2 12w34a","status":"added","notes":"Added the ability to dye leather armor and wolf collars."},{"version":"14w30a","status":"added","notes":"Added banners which can be dyed."}],"colors":{"primary":"#824b96","dominant_hex":"#542585","average_hex":"#824b96","hue_group":"purple","lightness":0.4412,"saturation":0.3333,"palette":["#542585","#c889cd","#a454dc","#3c1c1c","#7c3cb4","#86684e"],"color_groups":[{"hex":"#542585","weight":0.2276,"lightness":0.3333,"saturation":0.5647,"hue_group":"blue"},{"hex":"#c889cd","weight":0.2138,"lightness":0.6706,"saturation":0.4048,"hue_group":"purple"},{"hex":"#a454dc","weight":0.1862,"lightness":0.5961,"saturation":0.6602,"hue_group":"purple"},{"hex":"#3c1c1c","weight":0.1379,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#7c3cb4","weight":0.131,"lightness":0.4706,"saturation":0.5,"hue_group":"purple"},{"hex":"#86684e","weight":0.1034,"lightness":0.4157,"saturation":0.2642,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/purple_dye.png","family":"purple_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:magenta_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_shell","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:popped_chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spire_armor_trim_smithing_template","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_crystal","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_bucket","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enderman_spawn_egg","label":"Shared hue group: purple","confidence":0.55}],"category":"item"},{"id":"minecraft:purple_glazed_terracotta","name":"Purple Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#6e3098","dominant_hex":"#8c34bc","average_hex":"#6e3098","hue_group":"purple","lightness":0.3922,"saturation":0.52,"palette":["#8c34bc","#621c99","#2c2c34","#a454e4","#9434cc","#34343c"],"color_groups":[{"hex":"#8c34bc","weight":0.3086,"lightness":0.4706,"saturation":0.5667,"hue_group":"purple"},{"hex":"#621c99","weight":0.2969,"lightness":0.3549,"saturation":0.6906,"hue_group":"purple"},{"hex":"#2c2c34","weight":0.1719,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#a454e4","weight":0.1211,"lightness":0.6118,"saturation":0.7273,"hue_group":"purple"},{"hex":"#9434cc","weight":0.0586,"lightness":0.502,"saturation":0.5984,"hue_group":"purple"},{"hex":"#34343c","weight":0.043,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/purple_glazed_terracotta.png","family":"purple_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.847},{"type":"color_neighbors","target":"minecraft:purple_wool","label":"Palette proche: Purple Wool","confidence":0.847},{"type":"color_neighbors","target":"minecraft:purple_concrete","label":"Palette proche: Purple Concrete","confidence":0.835},{"type":"color_neighbors","target":"minecraft:purple_shulker_box","label":"Palette proche: Purple Shulker Box","confidence":0.834},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.82},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.779},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.778},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Palette proche: Magenta Stained Glass Pane","confidence":0.741},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.704},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass","label":"Palette proche: Magenta Stained Glass","confidence":0.693},{"type":"color_neighbors","target":"minecraft:nether_portal","label":"Palette proche: Nether Portal","confidence":0.693},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par sous-ton: Tinted Glass","confidence":0.734},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.686},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par palette: Iron Chain","confidence":0.674},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.672},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.672},{"type":"color_bridge","target":"minecraft:spawner","label":"Pont de nuance par palette: Spawner","confidence":0.656},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.655},{"type":"color_bridge","target":"minecraft:polished_blackstone_button","label":"Pont de nuance par palette: Polished Blackstone Button","confidence":0.655},{"type":"color_bridge","target":"minecraft:polished_blackstone_pressure_plate","label":"Pont de nuance par palette: Polished Blackstone Pressure Plate","confidence":0.655},{"type":"color_bridge","target":"minecraft:polished_blackstone_slab","label":"Pont de nuance par palette: Polished Blackstone Slab","confidence":0.655},{"type":"color_analogous","target":"minecraft:purple_carpet","label":"Couleurs analogues: Purple Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_wool","label":"Couleurs analogues: Purple Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_candle","label":"Couleurs analogues: Purple Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_shulker_box","label":"Couleurs analogues: Purple Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_concrete_powder","label":"Couleurs analogues: Purple Concrete Powder","confidence":0.951},{"type":"color_analogous","target":"minecraft:purple_stained_glass_pane","label":"Couleurs analogues: Purple Stained Glass Pane","confidence":0.944},{"type":"color_analogous","target":"minecraft:purple_concrete","label":"Couleurs analogues: Purple Concrete","confidence":0.932},{"type":"color_analogous","target":"minecraft:purple_stained_glass","label":"Couleurs analogues: Purple Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:dried_kelp_block","label":"Contraste complementaire: Dried Kelp Block","confidence":0.938},{"type":"color_complement","target":"minecraft:kelp","label":"Contraste complementaire: Kelp","confidence":0.923},{"type":"color_complement","target":"minecraft:seagrass","label":"Contraste complementaire: Seagrass","confidence":0.879},{"type":"color_complement","target":"minecraft:tall_seagrass","label":"Contraste complementaire: Tall Seagrass","confidence":0.877},{"type":"color_complement","target":"minecraft:lily_of_the_valley","label":"Contraste complementaire: Lily Of The Valley","confidence":0.874},{"type":"color_complement","target":"minecraft:potted_lily_of_the_valley","label":"Contraste complementaire: Potted Lily Of The Valley","confidence":0.874},{"type":"color_complement","target":"minecraft:potted_spruce_sapling","label":"Contraste complementaire: Potted Spruce Sapling","confidence":0.86},{"type":"color_complement","target":"minecraft:spruce_sapling","label":"Contraste complementaire: Spruce Sapling","confidence":0.86},{"type":"color_triad","target":"minecraft:oak_door","label":"Harmonie triadique: Oak Door","confidence":0.96},{"type":"color_triad","target":"minecraft:ladder","label":"Harmonie triadique: Ladder","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_hanging_sign","label":"Harmonie triadique: Spruce Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_wall_hanging_sign","label":"Harmonie triadique: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_spruce_log","label":"Harmonie triadique: Stripped Spruce Log","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_spruce_wood","label":"Harmonie triadique: Stripped Spruce Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:jungle_shelf","label":"Harmonie triadique: Jungle Shelf","confidence":0.96},{"type":"color_triad","target":"minecraft:scaffolding","label":"Harmonie triadique: Scaffolding","confidence":0.96},{"type":"color_square","target":"minecraft:tnt","label":"Harmonie carree: Tnt","confidence":0.96},{"type":"color_square","target":"minecraft:redstone_torch","label":"Harmonie carree: Redstone Torch","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_hanging_sign","label":"Harmonie carree: Mangrove Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_wall_hanging_sign","label":"Harmonie carree: Mangrove Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_mangrove_log","label":"Harmonie carree: Stripped Mangrove Log","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_mangrove_wood","label":"Harmonie carree: Stripped Mangrove Wood","confidence":0.96},{"type":"color_square","target":"minecraft:structure_void","label":"Harmonie carree: Structure Void","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_door","label":"Harmonie carree: Cherry Door","confidence":0.96},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_stairs","label":"Contraste clair sombre: Polished Diorite Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55}],"category":"building"},{"id":"minecraft:purple_harness","name":"Purple Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#724b52","dominant_hex":"#976349","average_hex":"#724b52","hue_group":"red","lightness":0.3706,"saturation":0.2063,"palette":["#976349","#502e16","#643496","#a58dbb","#70492f","#3c2414"],"color_groups":[{"hex":"#976349","weight":0.2147,"lightness":0.4392,"saturation":0.3482,"hue_group":"red"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#643496","weight":0.1656,"lightness":0.3961,"saturation":0.4851,"hue_group":"blue"},{"hex":"#a58dbb","weight":0.1595,"lightness":0.6431,"saturation":0.2527,"hue_group":"purple"},{"hex":"#70492f","weight":0.135,"lightness":0.3118,"saturation":0.4088,"hue_group":"red"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/purple_harness.png","family":"purple_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_relic","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:writable_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_key","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_spear","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:purple_shulker_box","name":"Purple Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#67209c","dominant_hex":"#7424ab","average_hex":"#67209c","hue_group":"purple","lightness":0.3686,"saturation":0.6596,"palette":["#7424ab","#641c9c","#541c86","#5c1c8d","#6c24a4","#541484"],"color_groups":[{"hex":"#7424ab","weight":0.4727,"lightness":0.4059,"saturation":0.6522,"hue_group":"purple"},{"hex":"#641c9c","weight":0.1641,"lightness":0.3608,"saturation":0.6957,"hue_group":"purple"},{"hex":"#541c86","weight":0.1406,"lightness":0.3176,"saturation":0.6543,"hue_group":"purple"},{"hex":"#5c1c8d","weight":0.0977,"lightness":0.3314,"saturation":0.6686,"hue_group":"purple"},{"hex":"#6c24a4","weight":0.0742,"lightness":0.3922,"saturation":0.64,"hue_group":"purple"},{"hex":"#541484","weight":0.0508,"lightness":0.298,"saturation":0.7368,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/purple_shulker_box.png","family":"purple_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:purple_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purple_concrete","label":"Palette proche: Purple Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.932},{"type":"color_neighbors","target":"minecraft:purple_wool","label":"Palette proche: Purple Wool","confidence":0.932},{"type":"color_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Palette proche: Purple Glazed Terracotta","confidence":0.834},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.821},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.781},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.765},{"type":"color_neighbors","target":"minecraft:nether_portal","label":"Palette proche: Nether Portal","confidence":0.753},{"type":"color_neighbors","target":"minecraft:bubble_coral_block","label":"Palette proche: Bubble Coral Block","confidence":0.686},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Palette proche: Magenta Stained Glass Pane","confidence":0.678},{"type":"color_neighbors","target":"minecraft:bubble_coral","label":"Palette proche: Bubble Coral","confidence":0.677},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.68},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.596},{"type":"color_bridge","target":"minecraft:blue_glazed_terracotta","label":"Pont de nuance par palette: Blue Glazed Terracotta","confidence":0.585},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:warped_hyphae","label":"Pont de nuance par sous-ton: Warped Hyphae","confidence":0.58},{"type":"color_bridge","target":"minecraft:warped_stem","label":"Pont de nuance par sous-ton: Warped Stem","confidence":0.58},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par sous-ton: Tinted Glass","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.58},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.58},{"type":"color_analogous","target":"minecraft:purple_concrete","label":"Couleurs analogues: Purple Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_candle","label":"Couleurs analogues: Purple Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_glazed_terracotta","label":"Couleurs analogues: Purple Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_stained_glass_pane","label":"Couleurs analogues: Purple Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_stained_glass","label":"Couleurs analogues: Purple Stained Glass","confidence":0.958},{"type":"color_analogous","target":"minecraft:purple_carpet","label":"Couleurs analogues: Purple Carpet","confidence":0.939},{"type":"color_analogous","target":"minecraft:purple_wool","label":"Couleurs analogues: Purple Wool","confidence":0.939},{"type":"color_analogous","target":"minecraft:dragon_egg","label":"Couleurs analogues: Dragon Egg","confidence":0.935},{"type":"color_complement","target":"minecraft:kelp","label":"Contraste complementaire: Kelp","confidence":0.956},{"type":"color_complement","target":"minecraft:dried_kelp_block","label":"Contraste complementaire: Dried Kelp Block","confidence":0.945},{"type":"color_complement","target":"minecraft:jungle_sapling","label":"Contraste complementaire: Jungle Sapling","confidence":0.885},{"type":"color_complement","target":"minecraft:potted_jungle_sapling","label":"Contraste complementaire: Potted Jungle Sapling","confidence":0.885},{"type":"color_complement","target":"minecraft:lime_concrete","label":"Contraste complementaire: Lime Concrete","confidence":0.88},{"type":"color_complement","target":"minecraft:seagrass","label":"Contraste complementaire: Seagrass","confidence":0.846},{"type":"color_complement","target":"minecraft:tall_seagrass","label":"Contraste complementaire: Tall Seagrass","confidence":0.843},{"type":"color_complement","target":"minecraft:lime_candle","label":"Contraste complementaire: Lime Candle","confidence":0.838},{"type":"color_triad","target":"minecraft:podzol","label":"Harmonie triadique: Podzol","confidence":0.96},{"type":"color_triad","target":"minecraft:dead_bush","label":"Harmonie triadique: Dead Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_dead_bush","label":"Harmonie triadique: Potted Dead Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_oak_hanging_sign","label":"Harmonie triadique: Dark Oak Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_oak_wall_hanging_sign","label":"Harmonie triadique: Dark Oak Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_dark_oak_log","label":"Harmonie triadique: Stripped Dark Oak Log","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_dark_oak_wood","label":"Harmonie triadique: Stripped Dark Oak Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:powered_rail","label":"Harmonie triadique: Powered Rail","confidence":0.948},{"type":"color_square","target":"minecraft:cyan_concrete_powder","label":"Harmonie carree: Cyan Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_button","label":"Harmonie carree: Mangrove Button","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_fence","label":"Harmonie carree: Mangrove Fence","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_fence_gate","label":"Harmonie carree: Mangrove Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_planks","label":"Harmonie carree: Mangrove Planks","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_pressure_plate","label":"Harmonie carree: Mangrove Pressure Plate","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_sign","label":"Harmonie carree: Mangrove Sign","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_slab","label":"Harmonie carree: Mangrove Slab","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.567},{"type":"value_contrast","target":"minecraft:diorite","label":"Contraste clair sombre: Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite_slab","label":"Contraste clair sombre: Diorite Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite_stairs","label":"Contraste clair sombre: Diorite Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:diorite_wall","label":"Contraste clair sombre: Diorite Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_slab","label":"Contraste clair sombre: Polished Diorite Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite_stairs","label":"Contraste clair sombre: Polished Diorite Stairs","confidence":0.55}],"category":""},{"id":"minecraft:purple_stained_glass","name":"Purple Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#7f3fb2","dominant_hex":"#7c3cb4","average_hex":"#7f3fb2","hue_group":"purple","lightness":0.4725,"saturation":0.4772,"palette":["#7c3cb4"],"color_groups":[{"hex":"#7c3cb4","weight":1.0,"lightness":0.4706,"saturation":0.5,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/purple_stained_glass.png","family":"purple_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.934},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.851},{"type":"color_neighbors","target":"minecraft:purple_wool","label":"Palette proche: Purple Wool","confidence":0.851},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.817},{"type":"color_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Palette proche: Purple Glazed Terracotta","confidence":0.779},{"type":"color_neighbors","target":"minecraft:purple_concrete","label":"Palette proche: Purple Concrete","confidence":0.775},{"type":"color_neighbors","target":"minecraft:purple_shulker_box","label":"Palette proche: Purple Shulker Box","confidence":0.765},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Palette proche: Magenta Stained Glass Pane","confidence":0.753},{"type":"color_neighbors","target":"minecraft:small_amethyst_bud","label":"Palette proche: Small Amethyst Bud","confidence":0.727},{"type":"color_neighbors","target":"minecraft:amethyst_block","label":"Palette proche: Amethyst Block","confidence":0.727},{"type":"color_neighbors","target":"minecraft:budding_amethyst","label":"Palette proche: Budding Amethyst","confidence":0.717},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.719},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.704},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.651},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.648},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.648},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.648},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.642},{"type":"color_bridge","target":"minecraft:blue_stained_glass","label":"Pont de nuance par palette: Blue Stained Glass","confidence":0.629},{"type":"color_bridge","target":"minecraft:blue_glazed_terracotta","label":"Pont de nuance par palette: Blue Glazed Terracotta","confidence":0.628},{"type":"color_bridge","target":"minecraft:blue_candle","label":"Pont de nuance par palette: Blue Candle","confidence":0.627},{"type":"color_analogous","target":"minecraft:purple_stained_glass_pane","label":"Couleurs analogues: Purple Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_candle","label":"Couleurs analogues: Purple Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_concrete","label":"Couleurs analogues: Purple Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_shulker_box","label":"Couleurs analogues: Purple Shulker Box","confidence":0.958},{"type":"color_analogous","target":"minecraft:purple_glazed_terracotta","label":"Couleurs analogues: Purple Glazed Terracotta","confidence":0.931},{"type":"color_analogous","target":"minecraft:purple_carpet","label":"Couleurs analogues: Purple Carpet","confidence":0.918},{"type":"color_analogous","target":"minecraft:purple_wool","label":"Couleurs analogues: Purple Wool","confidence":0.918},{"type":"color_analogous","target":"minecraft:purple_concrete_powder","label":"Couleurs analogues: Purple Concrete Powder","confidence":0.909},{"type":"color_complement","target":"minecraft:kelp","label":"Contraste complementaire: Kelp","confidence":0.96},{"type":"color_complement","target":"minecraft:dried_kelp_block","label":"Contraste complementaire: Dried Kelp Block","confidence":0.931},{"type":"color_complement","target":"minecraft:jungle_sapling","label":"Contraste complementaire: Jungle Sapling","confidence":0.901},{"type":"color_complement","target":"minecraft:potted_jungle_sapling","label":"Contraste complementaire: Potted Jungle Sapling","confidence":0.901},{"type":"color_complement","target":"minecraft:lime_concrete","label":"Contraste complementaire: Lime Concrete","confidence":0.894},{"type":"color_complement","target":"minecraft:dark_oak_sapling","label":"Contraste complementaire: Dark Oak Sapling","confidence":0.885},{"type":"color_complement","target":"minecraft:potted_dark_oak_sapling","label":"Contraste complementaire: Potted Dark Oak Sapling","confidence":0.885},{"type":"color_complement","target":"minecraft:kelp_plant","label":"Contraste complementaire: Kelp Plant","confidence":0.873},{"type":"color_triad","target":"minecraft:jungle_hanging_sign","label":"Harmonie triadique: Jungle Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:jungle_wall_hanging_sign","label":"Harmonie triadique: Jungle Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_jungle_log","label":"Harmonie triadique: Stripped Jungle Log","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_jungle_wood","label":"Harmonie triadique: Stripped Jungle Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:barrel","label":"Harmonie triadique: Barrel","confidence":0.96},{"type":"color_triad","target":"minecraft:sniffer_egg","label":"Harmonie triadique: Sniffer Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:powered_rail","label":"Harmonie triadique: Powered Rail","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_button","label":"Harmonie triadique: Spruce Button","confidence":0.96},{"type":"color_square","target":"minecraft:red_glazed_terracotta","label":"Harmonie carree: Red Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:blue_orchid","label":"Harmonie carree: Blue Orchid","confidence":0.96},{"type":"color_square","target":"minecraft:potted_blue_orchid","label":"Harmonie carree: Potted Blue Orchid","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_shelf","label":"Harmonie carree: Mangrove Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:potted_red_mushroom","label":"Harmonie carree: Potted Red Mushroom","confidence":0.96},{"type":"color_square","target":"minecraft:red_mushroom","label":"Harmonie carree: Red Mushroom","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_carpet","label":"Harmonie carree: Cyan Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_wool","label":"Harmonie carree: Cyan Wool","confidence":0.96},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.55},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.55},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:purple_stained_glass_pane","name":"Purple Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#7b3dab","dominant_hex":"#7c3cac","average_hex":"#7b3dab","hue_group":"purple","lightness":0.4549,"saturation":0.4741,"palette":["#7c3cac","#7c3cb4","#743ca4"],"color_groups":[{"hex":"#7c3cac","weight":0.375,"lightness":0.4549,"saturation":0.4828,"hue_group":"purple"},{"hex":"#7c3cb4","weight":0.375,"lightness":0.4706,"saturation":0.5,"hue_group":"purple"},{"hex":"#743ca4","weight":0.25,"lightness":0.4392,"saturation":0.4643,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/purple_stained_glass_pane_top.png","family":"purple_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:purple_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.932},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.861},{"type":"color_neighbors","target":"minecraft:purple_wool","label":"Palette proche: Purple Wool","confidence":0.861},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.819},{"type":"color_neighbors","target":"minecraft:purple_shulker_box","label":"Palette proche: Purple Shulker Box","confidence":0.781},{"type":"color_neighbors","target":"minecraft:purple_concrete","label":"Palette proche: Purple Concrete","confidence":0.781},{"type":"color_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Palette proche: Purple Glazed Terracotta","confidence":0.778},{"type":"color_neighbors","target":"minecraft:small_amethyst_bud","label":"Palette proche: Small Amethyst Bud","confidence":0.746},{"type":"color_neighbors","target":"minecraft:amethyst_block","label":"Palette proche: Amethyst Block","confidence":0.745},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Palette proche: Magenta Stained Glass Pane","confidence":0.744},{"type":"color_neighbors","target":"minecraft:budding_amethyst","label":"Palette proche: Budding Amethyst","confidence":0.738},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.721},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.715},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.687},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.65},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.65},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.65},{"type":"color_bridge","target":"minecraft:blue_candle","label":"Pont de nuance par palette: Blue Candle","confidence":0.645},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.644},{"type":"color_bridge","target":"minecraft:blue_glazed_terracotta","label":"Pont de nuance par palette: Blue Glazed Terracotta","confidence":0.639},{"type":"color_bridge","target":"minecraft:blue_stained_glass","label":"Pont de nuance par palette: Blue Stained Glass","confidence":0.624},{"type":"color_analogous","target":"minecraft:purple_stained_glass","label":"Couleurs analogues: Purple Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_candle","label":"Couleurs analogues: Purple Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_shulker_box","label":"Couleurs analogues: Purple Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_concrete","label":"Couleurs analogues: Purple Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_glazed_terracotta","label":"Couleurs analogues: Purple Glazed Terracotta","confidence":0.944},{"type":"color_analogous","target":"minecraft:purple_carpet","label":"Couleurs analogues: Purple Carpet","confidence":0.931},{"type":"color_analogous","target":"minecraft:purple_wool","label":"Couleurs analogues: Purple Wool","confidence":0.931},{"type":"color_analogous","target":"minecraft:purple_concrete_powder","label":"Couleurs analogues: Purple Concrete Powder","confidence":0.92},{"type":"color_complement","target":"minecraft:kelp","label":"Contraste complementaire: Kelp","confidence":0.96},{"type":"color_complement","target":"minecraft:dried_kelp_block","label":"Contraste complementaire: Dried Kelp Block","confidence":0.946},{"type":"color_complement","target":"minecraft:jungle_sapling","label":"Contraste complementaire: Jungle Sapling","confidence":0.886},{"type":"color_complement","target":"minecraft:potted_jungle_sapling","label":"Contraste complementaire: Potted Jungle Sapling","confidence":0.886},{"type":"color_complement","target":"minecraft:lime_concrete","label":"Contraste complementaire: Lime Concrete","confidence":0.879},{"type":"color_complement","target":"minecraft:dark_oak_sapling","label":"Contraste complementaire: Dark Oak Sapling","confidence":0.871},{"type":"color_complement","target":"minecraft:potted_dark_oak_sapling","label":"Contraste complementaire: Potted Dark Oak Sapling","confidence":0.871},{"type":"color_complement","target":"minecraft:kelp_plant","label":"Contraste complementaire: Kelp Plant","confidence":0.858},{"type":"color_triad","target":"minecraft:barrel","label":"Harmonie triadique: Barrel","confidence":0.96},{"type":"color_triad","target":"minecraft:jungle_hanging_sign","label":"Harmonie triadique: Jungle Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:jungle_wall_hanging_sign","label":"Harmonie triadique: Jungle Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_jungle_log","label":"Harmonie triadique: Stripped Jungle Log","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_jungle_wood","label":"Harmonie triadique: Stripped Jungle Wood","confidence":0.96},{"type":"color_triad","target":"minecraft:sniffer_egg","label":"Harmonie triadique: Sniffer Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:powered_rail","label":"Harmonie triadique: Powered Rail","confidence":0.96},{"type":"color_triad","target":"minecraft:dead_bush","label":"Harmonie triadique: Dead Bush","confidence":0.96},{"type":"color_square","target":"minecraft:red_glazed_terracotta","label":"Harmonie carree: Red Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_concrete_powder","label":"Harmonie carree: Cyan Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_button","label":"Harmonie carree: Mangrove Button","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_fence","label":"Harmonie carree: Mangrove Fence","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_fence_gate","label":"Harmonie carree: Mangrove Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_planks","label":"Harmonie carree: Mangrove Planks","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_pressure_plate","label":"Harmonie carree: Mangrove Pressure Plate","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_sign","label":"Harmonie carree: Mangrove Sign","confidence":0.96},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.55},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.55},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55}],"category":"building"},{"id":"minecraft:purple_terracotta","name":"Purple Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#764656","dominant_hex":"#744454","average_hex":"#764656","hue_group":"red","lightness":0.3686,"saturation":0.2553,"palette":["#744454","#7c4c5c","#744c54","#7c4c54","#744c5c","#74445c"],"color_groups":[{"hex":"#744454","weight":0.6602,"lightness":0.3608,"saturation":0.2609,"hue_group":"red"},{"hex":"#7c4c5c","weight":0.1992,"lightness":0.3922,"saturation":0.24,"hue_group":"red"},{"hex":"#744c54","weight":0.0742,"lightness":0.3765,"saturation":0.2083,"hue_group":"red"},{"hex":"#7c4c54","weight":0.0391,"lightness":0.3922,"saturation":0.24,"hue_group":"red"},{"hex":"#744c5c","weight":0.0195,"lightness":0.3765,"saturation":0.2083,"hue_group":"red"},{"hex":"#74445c","weight":0.0078,"lightness":0.3608,"saturation":0.2609,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/purple_terracotta.png","family":"purple_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:activator_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanting_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_quartz_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ancient_debris","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewing_stand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_redstone_ore","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.868},{"type":"color_neighbors","target":"minecraft:magenta_terracotta","label":"Palette proche: Magenta Terracotta","confidence":0.863},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.862},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.862},{"type":"color_neighbors","target":"minecraft:stripped_crimson_hyphae","label":"Palette proche: Stripped Crimson Hyphae","confidence":0.862},{"type":"color_neighbors","target":"minecraft:stripped_crimson_stem","label":"Palette proche: Stripped Crimson Stem","confidence":0.862},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.862},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.862},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.862},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.862},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.862},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.862},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.845},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.841},{"type":"color_bridge","target":"minecraft:mycelium","label":"Pont de nuance par palette: Mycelium","confidence":0.829},{"type":"color_bridge","target":"minecraft:packed_mud","label":"Pont de nuance par palette: Packed Mud","confidence":0.828},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.804},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.804},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.802},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par palette: Shulker Box","confidence":0.802},{"type":"color_bridge","target":"minecraft:creeper_head","label":"Pont de nuance par palette: Creeper Head","confidence":0.789},{"type":"color_bridge","target":"minecraft:creeper_wall_head","label":"Pont de nuance par palette: Creeper Wall Head","confidence":0.789},{"type":"color_analogous","target":"minecraft:magenta_terracotta","label":"Couleurs analogues: Magenta Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_shulker_box","label":"Couleurs analogues: Pink Shulker Box","confidence":0.936},{"type":"color_analogous","target":"minecraft:pink_stained_glass_pane","label":"Couleurs analogues: Pink Stained Glass Pane","confidence":0.93},{"type":"color_analogous","target":"minecraft:pink_stained_glass","label":"Couleurs analogues: Pink Stained Glass","confidence":0.925},{"type":"color_analogous","target":"minecraft:crimson_roots","label":"Couleurs analogues: Crimson Roots","confidence":0.919},{"type":"color_analogous","target":"minecraft:pink_glazed_terracotta","label":"Couleurs analogues: Pink Glazed Terracotta","confidence":0.915},{"type":"color_analogous","target":"minecraft:pink_carpet","label":"Couleurs analogues: Pink Carpet","confidence":0.907},{"type":"color_analogous","target":"minecraft:pink_wool","label":"Couleurs analogues: Pink Wool","confidence":0.907},{"type":"color_complement","target":"minecraft:oxidized_copper_chain","label":"Contraste complementaire: Oxidized Copper Chain","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_chain","label":"Contraste complementaire: Waxed Oxidized Copper Chain","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_lightning_rod","label":"Contraste complementaire: Oxidized Lightning Rod","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_lightning_rod","label":"Contraste complementaire: Waxed Oxidized Lightning Rod","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_door","label":"Contraste complementaire: Oxidized Copper Door","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_door","label":"Contraste complementaire: Waxed Oxidized Copper Door","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_copper_bulb","label":"Contraste complementaire: Oxidized Copper Bulb","confidence":0.92},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_bulb","label":"Contraste complementaire: Waxed Oxidized Copper Bulb","confidence":0.92},{"type":"color_triad","target":"minecraft:potted_spruce_sapling","label":"Harmonie triadique: Potted Spruce Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_sapling","label":"Harmonie triadique: Spruce Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:lapis_block","label":"Harmonie triadique: Lapis Block","confidence":0.96},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.955},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.955},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.913},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.904},{"type":"color_triad","target":"minecraft:ice","label":"Harmonie triadique: Ice","confidence":0.899},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.96},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.96},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.957},{"type":"color_square","target":"minecraft:wither_rose","label":"Harmonie carree: Wither Rose","confidence":0.957},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.924},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.924},{"type":"color_square","target":"minecraft:bamboo_block","label":"Harmonie carree: Bamboo Block","confidence":0.909},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.589},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.555},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_leaves","label":"Contraste clair sombre: Cherry Leaves","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_concrete_powder","label":"Contraste clair sombre: Pink Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"building"},{"id":"minecraft:purple_wall_banner","name":"Purple Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"purple_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:purple_wool","name":"Purple Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#7a2aad","dominant_hex":"#6a24a1","average_hex":"#7a2aad","hue_group":"purple","lightness":0.4216,"saturation":0.6093,"palette":["#6a24a1","#7424a6","#7c2cac","#842cb4","#8634b6","#9444cc"],"color_groups":[{"hex":"#6a24a1","weight":0.2734,"lightness":0.3863,"saturation":0.6345,"hue_group":"purple"},{"hex":"#7424a6","weight":0.2031,"lightness":0.3961,"saturation":0.6436,"hue_group":"purple"},{"hex":"#7c2cac","weight":0.1875,"lightness":0.4235,"saturation":0.5926,"hue_group":"purple"},{"hex":"#842cb4","weight":0.1523,"lightness":0.4392,"saturation":0.6071,"hue_group":"purple"},{"hex":"#8634b6","weight":0.1016,"lightness":0.4588,"saturation":0.5556,"hue_group":"purple"},{"hex":"#9444cc","weight":0.082,"lightness":0.5333,"saturation":0.5714,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/purple_wool.png","family":"purple_wool","relations":[{"type":"visual_neighbors","target":"minecraft:purple_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_candle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bubble_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purple_shulker_box","label":"Palette proche: Purple Shulker Box","confidence":0.932},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.921},{"type":"color_neighbors","target":"minecraft:purple_concrete","label":"Palette proche: Purple Concrete","confidence":0.915},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.861},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.851},{"type":"color_neighbors","target":"minecraft:purple_glazed_terracotta","label":"Palette proche: Purple Glazed Terracotta","confidence":0.847},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Palette proche: Magenta Stained Glass Pane","confidence":0.829},{"type":"color_neighbors","target":"minecraft:magenta_stained_glass","label":"Palette proche: Magenta Stained Glass","confidence":0.749},{"type":"color_neighbors","target":"minecraft:nether_portal","label":"Palette proche: Nether Portal","confidence":0.74},{"type":"color_neighbors","target":"minecraft:magenta_concrete","label":"Palette proche: Magenta Concrete","confidence":0.7},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.669},{"type":"color_bridge","target":"minecraft:blue_carpet","label":"Pont de nuance par palette: Blue Carpet","confidence":0.638},{"type":"color_bridge","target":"minecraft:blue_wool","label":"Pont de nuance par palette: Blue Wool","confidence":0.638},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.636},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.621},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.609},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.609},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.609},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.602},{"type":"color_bridge","target":"minecraft:blue_stained_glass_pane","label":"Pont de nuance par palette: Blue Stained Glass Pane","confidence":0.6},{"type":"color_analogous","target":"minecraft:purple_carpet","label":"Couleurs analogues: Purple Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_glazed_terracotta","label":"Couleurs analogues: Purple Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_concrete_powder","label":"Couleurs analogues: Purple Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:purple_shulker_box","label":"Couleurs analogues: Purple Shulker Box","confidence":0.939},{"type":"color_analogous","target":"minecraft:purple_candle","label":"Couleurs analogues: Purple Candle","confidence":0.934},{"type":"color_analogous","target":"minecraft:purple_stained_glass_pane","label":"Couleurs analogues: Purple Stained Glass Pane","confidence":0.931},{"type":"color_analogous","target":"minecraft:purple_stained_glass","label":"Couleurs analogues: Purple Stained Glass","confidence":0.918},{"type":"color_analogous","target":"minecraft:purple_concrete","label":"Couleurs analogues: Purple Concrete","confidence":0.906},{"type":"color_complement","target":"minecraft:seagrass","label":"Contraste complementaire: Seagrass","confidence":0.917},{"type":"color_complement","target":"minecraft:tall_seagrass","label":"Contraste complementaire: Tall Seagrass","confidence":0.915},{"type":"color_complement","target":"minecraft:dried_kelp_block","label":"Contraste complementaire: Dried Kelp Block","confidence":0.9},{"type":"color_complement","target":"minecraft:lily_of_the_valley","label":"Contraste complementaire: Lily Of The Valley","confidence":0.894},{"type":"color_complement","target":"minecraft:potted_lily_of_the_valley","label":"Contraste complementaire: Potted Lily Of The Valley","confidence":0.894},{"type":"color_complement","target":"minecraft:kelp","label":"Contraste complementaire: Kelp","confidence":0.885},{"type":"color_complement","target":"minecraft:potted_spruce_sapling","label":"Contraste complementaire: Potted Spruce Sapling","confidence":0.88},{"type":"color_complement","target":"minecraft:spruce_sapling","label":"Contraste complementaire: Spruce Sapling","confidence":0.88},{"type":"color_triad","target":"minecraft:jack_o_lantern","label":"Harmonie triadique: Jack O Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_shelf","label":"Harmonie triadique: Oak Shelf","confidence":0.96},{"type":"color_triad","target":"minecraft:scaffolding","label":"Harmonie triadique: Scaffolding","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_trapdoor","label":"Harmonie triadique: Oak Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:crafting_table","label":"Harmonie triadique: Crafting Table","confidence":0.96},{"type":"color_triad","target":"minecraft:lectern","label":"Harmonie triadique: Lectern","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_square","target":"minecraft:redstone_torch","label":"Harmonie carree: Redstone Torch","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_shulker_box","label":"Harmonie carree: Cyan Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_door","label":"Harmonie carree: Cherry Door","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_button","label":"Harmonie carree: Cherry Button","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_fence","label":"Harmonie carree: Cherry Fence","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_fence_gate","label":"Harmonie carree: Cherry Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_planks","label":"Harmonie carree: Cherry Planks","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_pressure_plate","label":"Harmonie carree: Cherry Pressure Plate","confidence":0.96},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":"decorative"},{"id":"minecraft:purpur_block","name":"Purpur Block","entry_type":"block","description":"Purpur blocks are decorative blocks that can be crafted with popped chorus fruit and are naturally generated in End cities and End ships.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added purpur blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb purpur blocks, providing the football/regular effect to the mob."}],"colors":{"primary":"#aa7eaa","dominant_hex":"#a272a2","average_hex":"#aa7eaa","hue_group":"purple","lightness":0.5804,"saturation":0.2056,"palette":["#a272a2","#b484b4","#ac7cac","#946494","#bc94bc","#c4acc4"],"color_groups":[{"hex":"#a272a2","weight":0.2383,"lightness":0.5412,"saturation":0.2051,"hue_group":"purple"},{"hex":"#b484b4","weight":0.1992,"lightness":0.6118,"saturation":0.2424,"hue_group":"purple"},{"hex":"#ac7cac","weight":0.1836,"lightness":0.5804,"saturation":0.2243,"hue_group":"purple"},{"hex":"#946494","weight":0.1758,"lightness":0.4863,"saturation":0.1935,"hue_group":"purple"},{"hex":"#bc94bc","weight":0.1172,"lightness":0.6588,"saturation":0.2299,"hue_group":"purple"},{"hex":"#c4acc4","weight":0.0859,"lightness":0.7216,"saturation":0.169,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/purpur_block.png","family":"purpur_block","relations":[{"type":"visual_neighbors","target":"minecraft:purpur_slab","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_stairs","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_pillar","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_flower","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_plant","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purpur_slab","label":"Palette proche: Purpur Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purpur_stairs","label":"Palette proche: Purpur Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purpur_pillar","label":"Palette proche: Purpur Pillar","confidence":0.94},{"type":"color_neighbors","target":"minecraft:shulker_box","label":"Palette proche: Shulker Box","confidence":0.904},{"type":"color_neighbors","target":"minecraft:chorus_flower","label":"Palette proche: Chorus Flower","confidence":0.802},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.766},{"type":"color_neighbors","target":"minecraft:chorus_plant","label":"Palette proche: Chorus Plant","confidence":0.749},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.729},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.729},{"type":"color_neighbors","target":"minecraft:structure_block","label":"Palette proche: Structure Block","confidence":0.724},{"type":"color_neighbors","target":"minecraft:cobblestone","label":"Palette proche: Cobblestone","confidence":0.724},{"type":"color_neighbors","target":"minecraft:cobblestone_slab","label":"Palette proche: Cobblestone Slab","confidence":0.724},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par palette: Purpur Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par palette: Purpur Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par palette: Purpur Pillar","confidence":0.86},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par palette: Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par palette: Chorus Flower","confidence":0.837},{"type":"color_bridge","target":"minecraft:magenta_concrete_powder","label":"Pont de nuance par sous-ton: Magenta Concrete Powder","confidence":0.808},{"type":"color_bridge","target":"minecraft:chorus_plant","label":"Pont de nuance par sous-ton: Chorus Plant","confidence":0.793},{"type":"color_bridge","target":"minecraft:magenta_carpet","label":"Pont de nuance par sous-ton: Magenta Carpet","confidence":0.777},{"type":"color_bridge","target":"minecraft:magenta_wool","label":"Pont de nuance par sous-ton: Magenta Wool","confidence":0.777},{"type":"color_bridge","target":"minecraft:structure_block","label":"Pont de nuance par palette: Structure Block","confidence":0.773},{"type":"value_contrast","target":"minecraft:cracked_polished_blackstone_bricks","label":"Contraste clair sombre: Cracked Polished Blackstone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_slab","label":"Contraste clair sombre: Blackstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_stairs","label":"Contraste clair sombre: Blackstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_polished_blackstone","label":"Contraste clair sombre: Chiseled Polished Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_log","label":"Contraste clair sombre: Cherry Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_wood","label":"Contraste clair sombre: Cherry Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_slab","label":"Contraste clair sombre: Polished Blackstone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_stairs","label":"Contraste clair sombre: Polished Blackstone Brick Stairs","confidence":0.55}],"category":""},{"id":"minecraft:purpur_pillar","name":"Purpur Pillar","entry_type":"block","description":"Purpur pillars are decorative blocks that can be crafted with purpur slabs and are naturally generated in End cities and End ships.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added purpur pillars."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb purpur pillars, providing the football/regular effect to the mob."}],"colors":{"primary":"#ac82ac","dominant_hex":"#b484b4","average_hex":"#ac82ac","hue_group":"purple","lightness":0.5922,"saturation":0.2019,"palette":["#b484b4","#9e6e9e","#946494","#bc94bc","#c4acc4","#ac7cac"],"color_groups":[{"hex":"#b484b4","weight":0.2344,"lightness":0.6118,"saturation":0.2424,"hue_group":"purple"},{"hex":"#9e6e9e","weight":0.1914,"lightness":0.5255,"saturation":0.1983,"hue_group":"purple"},{"hex":"#946494","weight":0.1719,"lightness":0.4863,"saturation":0.1935,"hue_group":"purple"},{"hex":"#bc94bc","weight":0.1484,"lightness":0.6588,"saturation":0.2299,"hue_group":"purple"},{"hex":"#c4acc4","weight":0.1328,"lightness":0.7216,"saturation":0.169,"hue_group":"purple"},{"hex":"#ac7cac","weight":0.1211,"lightness":0.5804,"saturation":0.2243,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/purpur_pillar.png","family":"purpur_pillar","relations":[{"type":"visual_neighbors","target":"minecraft:purpur_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_slab","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_stairs","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_flower","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_plant","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purpur_block","label":"Palette proche: Purpur Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purpur_slab","label":"Palette proche: Purpur Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purpur_stairs","label":"Palette proche: Purpur Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:shulker_box","label":"Palette proche: Shulker Box","confidence":0.899},{"type":"color_neighbors","target":"minecraft:chorus_flower","label":"Palette proche: Chorus Flower","confidence":0.798},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.757},{"type":"color_neighbors","target":"minecraft:chorus_plant","label":"Palette proche: Chorus Plant","confidence":0.744},{"type":"color_neighbors","target":"minecraft:structure_block","label":"Palette proche: Structure Block","confidence":0.729},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.724},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.724},{"type":"color_neighbors","target":"minecraft:cobblestone","label":"Palette proche: Cobblestone","confidence":0.718},{"type":"color_neighbors","target":"minecraft:cobblestone_slab","label":"Palette proche: Cobblestone Slab","confidence":0.718},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par palette: Purpur Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par palette: Purpur Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par palette: Purpur Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par palette: Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par palette: Chorus Flower","confidence":0.834},{"type":"color_bridge","target":"minecraft:magenta_concrete_powder","label":"Pont de nuance par sous-ton: Magenta Concrete Powder","confidence":0.8},{"type":"color_bridge","target":"minecraft:chorus_plant","label":"Pont de nuance par sous-ton: Chorus Plant","confidence":0.789},{"type":"color_bridge","target":"minecraft:structure_block","label":"Pont de nuance par palette: Structure Block","confidence":0.777},{"type":"color_bridge","target":"minecraft:magenta_carpet","label":"Pont de nuance par sous-ton: Magenta Carpet","confidence":0.773},{"type":"color_bridge","target":"minecraft:magenta_wool","label":"Pont de nuance par sous-ton: Magenta Wool","confidence":0.773},{"type":"value_contrast","target":"minecraft:mud","label":"Contraste clair sombre: Mud","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_polished_blackstone_bricks","label":"Contraste clair sombre: Cracked Polished Blackstone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_slab","label":"Contraste clair sombre: Blackstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_stairs","label":"Contraste clair sombre: Blackstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_polished_blackstone","label":"Contraste clair sombre: Chiseled Polished Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_slab","label":"Contraste clair sombre: Polished Blackstone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_stairs","label":"Contraste clair sombre: Polished Blackstone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_wall","label":"Contraste clair sombre: Polished Blackstone Brick Wall","confidence":0.55}],"category":"building"},{"id":"minecraft:purpur_slab","name":"Purpur Slab","entry_type":"block","description":"A purpur slab is a decorative slab variant of purpur that generates in End cities and is used for building.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added purpur slabs."}],"colors":{"primary":"#aa7eaa","dominant_hex":"#a272a2","average_hex":"#aa7eaa","hue_group":"purple","lightness":0.5804,"saturation":0.2056,"palette":["#a272a2","#b484b4","#ac7cac","#946494","#bc94bc","#c4acc4"],"color_groups":[{"hex":"#a272a2","weight":0.2383,"lightness":0.5412,"saturation":0.2051,"hue_group":"purple"},{"hex":"#b484b4","weight":0.1992,"lightness":0.6118,"saturation":0.2424,"hue_group":"purple"},{"hex":"#ac7cac","weight":0.1836,"lightness":0.5804,"saturation":0.2243,"hue_group":"purple"},{"hex":"#946494","weight":0.1758,"lightness":0.4863,"saturation":0.1935,"hue_group":"purple"},{"hex":"#bc94bc","weight":0.1172,"lightness":0.6588,"saturation":0.2299,"hue_group":"purple"},{"hex":"#c4acc4","weight":0.0859,"lightness":0.7216,"saturation":0.169,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/purpur_block.png","family":"purpur","relations":[{"type":"variants","target":"minecraft:purpur_stairs","label":"Same family: purpur","confidence":0.75},{"type":"related_sets","target":"minecraft:purpur_stairs","label":"Related set: purpur","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:purpur_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_stairs","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_pillar","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_flower","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_plant","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purpur_block","label":"Palette proche: Purpur Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purpur_stairs","label":"Palette proche: Purpur Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purpur_pillar","label":"Palette proche: Purpur Pillar","confidence":0.94},{"type":"color_neighbors","target":"minecraft:shulker_box","label":"Palette proche: Shulker Box","confidence":0.904},{"type":"color_neighbors","target":"minecraft:chorus_flower","label":"Palette proche: Chorus Flower","confidence":0.802},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.766},{"type":"color_neighbors","target":"minecraft:chorus_plant","label":"Palette proche: Chorus Plant","confidence":0.749},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.729},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.729},{"type":"color_neighbors","target":"minecraft:structure_block","label":"Palette proche: Structure Block","confidence":0.724},{"type":"color_neighbors","target":"minecraft:cobblestone","label":"Palette proche: Cobblestone","confidence":0.724},{"type":"color_neighbors","target":"minecraft:cobblestone_slab","label":"Palette proche: Cobblestone Slab","confidence":0.724},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par palette: Purpur Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par palette: Purpur Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par palette: Purpur Pillar","confidence":0.86},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par palette: Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par palette: Chorus Flower","confidence":0.837},{"type":"color_bridge","target":"minecraft:magenta_concrete_powder","label":"Pont de nuance par sous-ton: Magenta Concrete Powder","confidence":0.808},{"type":"color_bridge","target":"minecraft:chorus_plant","label":"Pont de nuance par sous-ton: Chorus Plant","confidence":0.793},{"type":"color_bridge","target":"minecraft:magenta_carpet","label":"Pont de nuance par sous-ton: Magenta Carpet","confidence":0.777},{"type":"color_bridge","target":"minecraft:magenta_wool","label":"Pont de nuance par sous-ton: Magenta Wool","confidence":0.777},{"type":"color_bridge","target":"minecraft:structure_block","label":"Pont de nuance par palette: Structure Block","confidence":0.773},{"type":"value_contrast","target":"minecraft:cracked_polished_blackstone_bricks","label":"Contraste clair sombre: Cracked Polished Blackstone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_slab","label":"Contraste clair sombre: Blackstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_stairs","label":"Contraste clair sombre: Blackstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_polished_blackstone","label":"Contraste clair sombre: Chiseled Polished Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_log","label":"Contraste clair sombre: Cherry Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_wood","label":"Contraste clair sombre: Cherry Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_slab","label":"Contraste clair sombre: Polished Blackstone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_stairs","label":"Contraste clair sombre: Polished Blackstone Brick Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:purpur_stairs","name":"Purpur Stairs","entry_type":"block","description":"Purpur stairs are a decorative stairs variant of purpur that generates in End cities and is used for building.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added purpur stairs."}],"colors":{"primary":"#aa7eaa","dominant_hex":"#a272a2","average_hex":"#aa7eaa","hue_group":"purple","lightness":0.5804,"saturation":0.2056,"palette":["#a272a2","#b484b4","#ac7cac","#946494","#bc94bc","#c4acc4"],"color_groups":[{"hex":"#a272a2","weight":0.2383,"lightness":0.5412,"saturation":0.2051,"hue_group":"purple"},{"hex":"#b484b4","weight":0.1992,"lightness":0.6118,"saturation":0.2424,"hue_group":"purple"},{"hex":"#ac7cac","weight":0.1836,"lightness":0.5804,"saturation":0.2243,"hue_group":"purple"},{"hex":"#946494","weight":0.1758,"lightness":0.4863,"saturation":0.1935,"hue_group":"purple"},{"hex":"#bc94bc","weight":0.1172,"lightness":0.6588,"saturation":0.2299,"hue_group":"purple"},{"hex":"#c4acc4","weight":0.0859,"lightness":0.7216,"saturation":0.169,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/purpur_block.png","family":"purpur","relations":[{"type":"variants","target":"minecraft:purpur_slab","label":"Same family: purpur","confidence":0.75},{"type":"related_sets","target":"minecraft:purpur_slab","label":"Related set: purpur","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:purpur_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_slab","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_pillar","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_flower","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_plant","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spore_blossom","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purpur_block","label":"Palette proche: Purpur Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purpur_slab","label":"Palette proche: Purpur Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:purpur_pillar","label":"Palette proche: Purpur Pillar","confidence":0.94},{"type":"color_neighbors","target":"minecraft:shulker_box","label":"Palette proche: Shulker Box","confidence":0.904},{"type":"color_neighbors","target":"minecraft:chorus_flower","label":"Palette proche: Chorus Flower","confidence":0.802},{"type":"color_neighbors","target":"minecraft:magenta_concrete_powder","label":"Palette proche: Magenta Concrete Powder","confidence":0.766},{"type":"color_neighbors","target":"minecraft:chorus_plant","label":"Palette proche: Chorus Plant","confidence":0.749},{"type":"color_neighbors","target":"minecraft:magenta_carpet","label":"Palette proche: Magenta Carpet","confidence":0.729},{"type":"color_neighbors","target":"minecraft:magenta_wool","label":"Palette proche: Magenta Wool","confidence":0.729},{"type":"color_neighbors","target":"minecraft:structure_block","label":"Palette proche: Structure Block","confidence":0.724},{"type":"color_neighbors","target":"minecraft:cobblestone","label":"Palette proche: Cobblestone","confidence":0.724},{"type":"color_neighbors","target":"minecraft:cobblestone_slab","label":"Palette proche: Cobblestone Slab","confidence":0.724},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par palette: Purpur Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par palette: Purpur Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par palette: Purpur Pillar","confidence":0.86},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par palette: Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:chorus_flower","label":"Pont de nuance par palette: Chorus Flower","confidence":0.837},{"type":"color_bridge","target":"minecraft:magenta_concrete_powder","label":"Pont de nuance par sous-ton: Magenta Concrete Powder","confidence":0.808},{"type":"color_bridge","target":"minecraft:chorus_plant","label":"Pont de nuance par sous-ton: Chorus Plant","confidence":0.793},{"type":"color_bridge","target":"minecraft:magenta_carpet","label":"Pont de nuance par sous-ton: Magenta Carpet","confidence":0.777},{"type":"color_bridge","target":"minecraft:magenta_wool","label":"Pont de nuance par sous-ton: Magenta Wool","confidence":0.777},{"type":"color_bridge","target":"minecraft:structure_block","label":"Pont de nuance par palette: Structure Block","confidence":0.773},{"type":"value_contrast","target":"minecraft:cracked_polished_blackstone_bricks","label":"Contraste clair sombre: Cracked Polished Blackstone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_slab","label":"Contraste clair sombre: Blackstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_stairs","label":"Contraste clair sombre: Blackstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_polished_blackstone","label":"Contraste clair sombre: Chiseled Polished Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_log","label":"Contraste clair sombre: Cherry Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_wood","label":"Contraste clair sombre: Cherry Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_slab","label":"Contraste clair sombre: Polished Blackstone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_stairs","label":"Contraste clair sombre: Polished Blackstone Brick Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:quartz","name":"Quartz","entry_type":"item","description":"Quartz may refer to: Nether Quartz Nether Quartz Ore Block of Quartz Quartz Pillar Chiseled Quartz Block Smooth Quartz Block Quartz Bricks","history":[{"version":"wiki","status":"observed","notes":"Wiki revision 3487428 at 2026-03-21T22:33:35Z."}],"colors":{"primary":"#baada1","dominant_hex":"#ece6e1","average_hex":"#baada1","hue_group":"red","lightness":0.6804,"saturation":0.1534,"palette":["#ece6e1","#b4a494","#d7cfbf","#6c5c5c","#b4a48c","#8c7c74"],"color_groups":[{"hex":"#ece6e1","weight":0.2308,"lightness":0.9039,"saturation":0.2245,"hue_group":"red"},{"hex":"#b4a494","weight":0.1987,"lightness":0.6431,"saturation":0.1758,"hue_group":"yellow"},{"hex":"#d7cfbf","weight":0.1923,"lightness":0.7961,"saturation":0.2308,"hue_group":"yellow"},{"hex":"#6c5c5c","weight":0.1282,"lightness":0.3922,"saturation":0.08,"hue_group":"neutral"},{"hex":"#b4a48c","weight":0.1282,"lightness":0.6275,"saturation":0.2105,"hue_group":"yellow"},{"hex":"#8c7c74","weight":0.1218,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/quartz.png","family":"quartz","relations":[{"type":"variants","target":"minecraft:quartz_slab","label":"Same family: quartz","confidence":0.75},{"type":"related_sets","target":"minecraft:quartz_slab","label":"Related set: quartz","confidence":0.8},{"type":"variants","target":"minecraft:quartz_stairs","label":"Same family: quartz","confidence":0.75},{"type":"related_sets","target":"minecraft:quartz_stairs","label":"Related set: quartz","confidence":0.8},{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:sheep_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_bucket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_shell","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shears","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:quartz_block","name":"Quartz Block","entry_type":"block","description":"A block of quartz, internally known as a quartz block, is a mineral block used for decoration. It can be turned into a quartz slab, chiseled quartz block, quartz pillar, quartz bricks, or smooth quartz block.","history":[{"version":"1.5 13w02a","status":"added","notes":"Added blocks of quartz."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb block of quartz, providing the football/regular effect to the mob."}],"colors":{"primary":"#ece6df","dominant_hex":"#ece4dc","average_hex":"#ece6df","hue_group":"yellow","lightness":0.9,"saturation":0.2549,"palette":["#ece4dc","#ecece4","#f4ecec","#dcdccc","#e4dcd4"],"color_groups":[{"hex":"#ece4dc","weight":0.4961,"lightness":0.8941,"saturation":0.2963,"hue_group":"yellow"},{"hex":"#ecece4","weight":0.2812,"lightness":0.9098,"saturation":0.1739,"hue_group":"yellow"},{"hex":"#f4ecec","weight":0.1055,"lightness":0.9412,"saturation":0.2667,"hue_group":"red"},{"hex":"#dcdccc","weight":0.0625,"lightness":0.8314,"saturation":0.186,"hue_group":"yellow"},{"hex":"#e4dcd4","weight":0.0547,"lightness":0.8627,"saturation":0.2286,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/quartz_block_side.png","family":"quartz_block","relations":[{"type":"visual_neighbors","target":"minecraft:quartz_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_pillar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sculk_shrieker","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_quartz_block","label":"Palette proche: Chiseled Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_bricks","label":"Palette proche: Quartz Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_slab","label":"Palette proche: Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_stairs","label":"Palette proche: Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_pillar","label":"Palette proche: Quartz Pillar","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz","label":"Palette proche: Smooth Quartz","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_slab","label":"Palette proche: Smooth Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Palette proche: Smooth Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.869},{"type":"color_neighbors","target":"minecraft:bone_block","label":"Palette proche: Bone Block","confidence":0.849},{"type":"color_neighbors","target":"minecraft:mushroom_stem","label":"Palette proche: Mushroom Stem","confidence":0.801},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.8},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.892},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.836},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.835},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.829},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.829},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par palette: Pearlescent Froglight","confidence":0.806},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.774},{"type":"color_analogous","target":"minecraft:quartz_slab","label":"Couleurs analogues: Quartz Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:quartz_stairs","label":"Couleurs analogues: Quartz Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:quartz_bricks","label":"Couleurs analogues: Quartz Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:quartz_pillar","label":"Couleurs analogues: Quartz Pillar","confidence":0.94},{"type":"color_analogous","target":"minecraft:fire","label":"Couleurs analogues: Fire","confidence":0.917},{"type":"color_analogous","target":"minecraft:glowstone","label":"Couleurs analogues: Glowstone","confidence":0.915},{"type":"color_analogous","target":"minecraft:smooth_quartz","label":"Couleurs analogues: Smooth Quartz","confidence":0.897},{"type":"color_analogous","target":"minecraft:smooth_quartz_slab","label":"Couleurs analogues: Smooth Quartz Slab","confidence":0.897},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.938},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.931},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.816},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.764},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.737},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.737},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.737},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.731},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.949},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.945},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.941},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.924},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.922},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.9},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.92},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.903},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.9},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.898},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.896},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.891},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.891},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.883},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.782},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.752},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.749},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.739},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.739},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.724},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.723}],"category":"resource"},{"id":"minecraft:quartz_bricks","name":"Quartz Bricks","entry_type":"block","description":"Quartz bricks are the brick variant of the block of quartz, obtained through crafting.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added quartz bricks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb quartz bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#ebe5de","dominant_hex":"#ece4dc","average_hex":"#ebe5de","hue_group":"yellow","lightness":0.8961,"saturation":0.2453,"palette":["#ece4dc","#ecece4","#f4ecec","#dcdccc","#e4dcd4"],"color_groups":[{"hex":"#ece4dc","weight":0.4219,"lightness":0.8941,"saturation":0.2963,"hue_group":"yellow"},{"hex":"#ecece4","weight":0.2227,"lightness":0.9098,"saturation":0.1739,"hue_group":"yellow"},{"hex":"#f4ecec","weight":0.1523,"lightness":0.9412,"saturation":0.2667,"hue_group":"red"},{"hex":"#dcdccc","weight":0.1172,"lightness":0.8314,"saturation":0.186,"hue_group":"yellow"},{"hex":"#e4dcd4","weight":0.0859,"lightness":0.8627,"saturation":0.2286,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/quartz_bricks.png","family":"quartz_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:quartz_pillar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sculk_shrieker","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_quartz_block","label":"Palette proche: Chiseled Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_block","label":"Palette proche: Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_slab","label":"Palette proche: Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_stairs","label":"Palette proche: Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_pillar","label":"Palette proche: Quartz Pillar","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz","label":"Palette proche: Smooth Quartz","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_slab","label":"Palette proche: Smooth Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Palette proche: Smooth Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.867},{"type":"color_neighbors","target":"minecraft:bone_block","label":"Palette proche: Bone Block","confidence":0.841},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.803},{"type":"color_neighbors","target":"minecraft:mushroom_stem","label":"Palette proche: Mushroom Stem","confidence":0.802},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.89},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.838},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.837},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.835},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.835},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par palette: Pearlescent Froglight","confidence":0.806},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.779},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.779},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.779},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.779},{"type":"color_analogous","target":"minecraft:quartz_block","label":"Couleurs analogues: Quartz Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:quartz_slab","label":"Couleurs analogues: Quartz Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:quartz_stairs","label":"Couleurs analogues: Quartz Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:quartz_pillar","label":"Couleurs analogues: Quartz Pillar","confidence":0.939},{"type":"color_analogous","target":"minecraft:fire","label":"Couleurs analogues: Fire","confidence":0.917},{"type":"color_analogous","target":"minecraft:glowstone","label":"Couleurs analogues: Glowstone","confidence":0.915},{"type":"color_analogous","target":"minecraft:smooth_quartz","label":"Couleurs analogues: Smooth Quartz","confidence":0.896},{"type":"color_analogous","target":"minecraft:smooth_quartz_slab","label":"Couleurs analogues: Smooth Quartz Slab","confidence":0.896},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.937},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.93},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.815},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.763},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.736},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.736},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.736},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.731},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.948},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.944},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.94},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.924},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.921},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.9},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.919},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.904},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.899},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.897},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.895},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.891},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.891},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.882},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.779},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.749},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.745},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.736},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.736},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.721},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.719}],"category":"building"},{"id":"minecraft:quartz_pillar","name":"Quartz Pillar","entry_type":"block","description":"A quartz pillar is a variant of the block of quartz, obtained through crafting.","history":[{"version":"1.5 13w02a","status":"added","notes":"Added quartz pillars."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb quartz pillars, providing the football/regular effect to the mob."}],"colors":{"primary":"#ece7e0","dominant_hex":"#f4ecec","average_hex":"#ece7e0","hue_group":"yellow","lightness":0.902,"saturation":0.24,"palette":["#f4ecec","#ece4dc","#e4dcd4","#ecece4"],"color_groups":[{"hex":"#f4ecec","weight":0.3125,"lightness":0.9412,"saturation":0.2667,"hue_group":"red"},{"hex":"#ece4dc","weight":0.2812,"lightness":0.8941,"saturation":0.2963,"hue_group":"yellow"},{"hex":"#e4dcd4","weight":0.2188,"lightness":0.8627,"saturation":0.2286,"hue_group":"yellow"},{"hex":"#ecece4","weight":0.1875,"lightness":0.9098,"saturation":0.1739,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/quartz_pillar.png","family":"quartz_pillar","relations":[{"type":"visual_neighbors","target":"minecraft:quartz_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sculk_shrieker","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:quartz_block","label":"Palette proche: Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_slab","label":"Palette proche: Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_stairs","label":"Palette proche: Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_bricks","label":"Palette proche: Quartz Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_quartz_block","label":"Palette proche: Chiseled Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz","label":"Palette proche: Smooth Quartz","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_slab","label":"Palette proche: Smooth Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Palette proche: Smooth Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.842},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.821},{"type":"color_neighbors","target":"minecraft:pale_oak_hanging_sign","label":"Palette proche: Pale Oak Hanging Sign","confidence":0.809},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_hanging_sign","label":"Palette proche: Pale Oak Wall Hanging Sign","confidence":0.809},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.87},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.853},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.826},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.826},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.819},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par palette: Pearlescent Froglight","confidence":0.812},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.786},{"type":"color_analogous","target":"minecraft:quartz_block","label":"Couleurs analogues: Quartz Block","confidence":0.94},{"type":"color_analogous","target":"minecraft:quartz_slab","label":"Couleurs analogues: Quartz Slab","confidence":0.94},{"type":"color_analogous","target":"minecraft:quartz_stairs","label":"Couleurs analogues: Quartz Stairs","confidence":0.94},{"type":"color_analogous","target":"minecraft:quartz_bricks","label":"Couleurs analogues: Quartz Bricks","confidence":0.939},{"type":"color_analogous","target":"minecraft:candle","label":"Couleurs analogues: Candle","confidence":0.938},{"type":"color_analogous","target":"minecraft:chiseled_quartz_block","label":"Couleurs analogues: Chiseled Quartz Block","confidence":0.917},{"type":"color_analogous","target":"minecraft:honeycomb_block","label":"Couleurs analogues: Honeycomb Block","confidence":0.908},{"type":"color_analogous","target":"minecraft:jungle_shelf","label":"Couleurs analogues: Jungle Shelf","confidence":0.907},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.92},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.904},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.903},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.853},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.82},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.803},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.796},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.787},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.959},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.959},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.959},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.948},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.942},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.936},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.932},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.957},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.94},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.888},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.814},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.784},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.754},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.751},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.741},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.741},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.726},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.724}],"category":"building"},{"id":"minecraft:quartz_slab","name":"Quartz Slab","entry_type":"block","description":"A quartz slab is a decorative slab variant of quartz that does not generate naturally and is used for building.","history":[{"version":"1.5 13w02a","status":"added","notes":"Added quartz slabs."}],"colors":{"primary":"#ece6df","dominant_hex":"#ece4dc","average_hex":"#ece6df","hue_group":"yellow","lightness":0.9,"saturation":0.2549,"palette":["#ece4dc","#ecece4","#f4ecec","#dcdccc","#e4dcd4"],"color_groups":[{"hex":"#ece4dc","weight":0.4961,"lightness":0.8941,"saturation":0.2963,"hue_group":"yellow"},{"hex":"#ecece4","weight":0.2812,"lightness":0.9098,"saturation":0.1739,"hue_group":"yellow"},{"hex":"#f4ecec","weight":0.1055,"lightness":0.9412,"saturation":0.2667,"hue_group":"red"},{"hex":"#dcdccc","weight":0.0625,"lightness":0.8314,"saturation":0.186,"hue_group":"yellow"},{"hex":"#e4dcd4","weight":0.0547,"lightness":0.8627,"saturation":0.2286,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/quartz_block_top.png","family":"quartz","relations":[{"type":"variants","target":"minecraft:quartz_stairs","label":"Same family: quartz","confidence":0.75},{"type":"related_sets","target":"minecraft:quartz_stairs","label":"Related set: quartz","confidence":0.8},{"type":"variants","target":"minecraft:quartz","label":"Same family: quartz","confidence":0.75},{"type":"related_sets","target":"minecraft:quartz","label":"Related set: quartz","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_pillar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sculk_shrieker","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_quartz_block","label":"Palette proche: Chiseled Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_block","label":"Palette proche: Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_bricks","label":"Palette proche: Quartz Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_stairs","label":"Palette proche: Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_pillar","label":"Palette proche: Quartz Pillar","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz","label":"Palette proche: Smooth Quartz","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_slab","label":"Palette proche: Smooth Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Palette proche: Smooth Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.869},{"type":"color_neighbors","target":"minecraft:bone_block","label":"Palette proche: Bone Block","confidence":0.849},{"type":"color_neighbors","target":"minecraft:mushroom_stem","label":"Palette proche: Mushroom Stem","confidence":0.801},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.8},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.892},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.836},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.835},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.829},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.829},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par palette: Pearlescent Froglight","confidence":0.806},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.774},{"type":"color_analogous","target":"minecraft:quartz_block","label":"Couleurs analogues: Quartz Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:quartz_stairs","label":"Couleurs analogues: Quartz Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:quartz_bricks","label":"Couleurs analogues: Quartz Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:quartz_pillar","label":"Couleurs analogues: Quartz Pillar","confidence":0.94},{"type":"color_analogous","target":"minecraft:fire","label":"Couleurs analogues: Fire","confidence":0.917},{"type":"color_analogous","target":"minecraft:glowstone","label":"Couleurs analogues: Glowstone","confidence":0.915},{"type":"color_analogous","target":"minecraft:smooth_quartz","label":"Couleurs analogues: Smooth Quartz","confidence":0.897},{"type":"color_analogous","target":"minecraft:smooth_quartz_slab","label":"Couleurs analogues: Smooth Quartz Slab","confidence":0.897},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.938},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.931},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.816},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.764},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.737},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.737},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.737},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.731},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.949},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.945},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.941},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.924},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.922},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.9},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.92},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.903},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.9},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.898},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.896},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.891},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.891},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.883},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.782},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.752},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.749},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.739},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.739},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.724},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.723}],"category":"building"},{"id":"minecraft:quartz_stairs","name":"Quartz Stairs","entry_type":"block","description":"Quartz stairs are a decorative stairs variant of quartz that does not generate naturally and is used for building.","history":[{"version":"1.5 13w02a","status":"added","notes":"Added quartz stairs."}],"colors":{"primary":"#ece6df","dominant_hex":"#ece4dc","average_hex":"#ece6df","hue_group":"yellow","lightness":0.9,"saturation":0.2549,"palette":["#ece4dc","#ecece4","#f4ecec","#dcdccc","#e4dcd4"],"color_groups":[{"hex":"#ece4dc","weight":0.4961,"lightness":0.8941,"saturation":0.2963,"hue_group":"yellow"},{"hex":"#ecece4","weight":0.2812,"lightness":0.9098,"saturation":0.1739,"hue_group":"yellow"},{"hex":"#f4ecec","weight":0.1055,"lightness":0.9412,"saturation":0.2667,"hue_group":"red"},{"hex":"#dcdccc","weight":0.0625,"lightness":0.8314,"saturation":0.186,"hue_group":"yellow"},{"hex":"#e4dcd4","weight":0.0547,"lightness":0.8627,"saturation":0.2286,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/quartz_block_top.png","family":"quartz","relations":[{"type":"variants","target":"minecraft:quartz_slab","label":"Same family: quartz","confidence":0.75},{"type":"related_sets","target":"minecraft:quartz_slab","label":"Related set: quartz","confidence":0.8},{"type":"variants","target":"minecraft:quartz","label":"Same family: quartz","confidence":0.75},{"type":"related_sets","target":"minecraft:quartz","label":"Related set: quartz","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_pillar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sculk_shrieker","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_quartz_block","label":"Palette proche: Chiseled Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_block","label":"Palette proche: Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_bricks","label":"Palette proche: Quartz Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_slab","label":"Palette proche: Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_pillar","label":"Palette proche: Quartz Pillar","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz","label":"Palette proche: Smooth Quartz","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_slab","label":"Palette proche: Smooth Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Palette proche: Smooth Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.869},{"type":"color_neighbors","target":"minecraft:bone_block","label":"Palette proche: Bone Block","confidence":0.849},{"type":"color_neighbors","target":"minecraft:mushroom_stem","label":"Palette proche: Mushroom Stem","confidence":0.801},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.8},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.892},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.836},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.835},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.829},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.829},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par palette: Pearlescent Froglight","confidence":0.806},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.774},{"type":"color_analogous","target":"minecraft:quartz_block","label":"Couleurs analogues: Quartz Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:quartz_slab","label":"Couleurs analogues: Quartz Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:quartz_bricks","label":"Couleurs analogues: Quartz Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:quartz_pillar","label":"Couleurs analogues: Quartz Pillar","confidence":0.94},{"type":"color_analogous","target":"minecraft:fire","label":"Couleurs analogues: Fire","confidence":0.917},{"type":"color_analogous","target":"minecraft:glowstone","label":"Couleurs analogues: Glowstone","confidence":0.915},{"type":"color_analogous","target":"minecraft:smooth_quartz","label":"Couleurs analogues: Smooth Quartz","confidence":0.897},{"type":"color_analogous","target":"minecraft:smooth_quartz_slab","label":"Couleurs analogues: Smooth Quartz Slab","confidence":0.897},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.938},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.931},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.816},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.764},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.737},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.737},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.737},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.731},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.949},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.945},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.941},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.924},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.922},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.9},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.92},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.903},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.9},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.898},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.896},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.891},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.891},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.883},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.782},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.752},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.749},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.739},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.739},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.724},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.723}],"category":"building"},{"id":"minecraft:rabbit","name":"Rabbit","entry_type":"item","description":"A rabbit is a passive mob found in many snowy and forested biomes, as well as deserts. It runs away from players that are not holding its food, and is able to jump over fences. Rabbits are a source of raw rabbit, rabbit hide and rabbit's feet. The Killer Bunny is a hostile rabbit variant exclusive to Java Edition that can only be spawned using commands.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added rabbits."},{"version":"wiki-history","status":"added","notes":"Added baby rabbits."},{"version":"15w47b","status":"added","notes":"Added The Killer Bunny attack sounds ."}],"colors":{"primary":"#d0a191","dominant_hex":"#fce4d4","average_hex":"#d0a191","hue_group":"red","lightness":0.6922,"saturation":0.4013,"palette":["#fce4d4","#845444","#b77f6a","#ecbcac","#dca48c","#f4ccbc"],"color_groups":[{"hex":"#fce4d4","weight":0.2148,"lightness":0.9098,"saturation":0.8696,"hue_group":"red"},{"hex":"#845444","weight":0.2,"lightness":0.3922,"saturation":0.32,"hue_group":"red"},{"hex":"#b77f6a","weight":0.2,"lightness":0.5667,"saturation":0.3484,"hue_group":"red"},{"hex":"#ecbcac","weight":0.163,"lightness":0.8,"saturation":0.6275,"hue_group":"red"},{"hex":"#dca48c","weight":0.1111,"lightness":0.7059,"saturation":0.5333,"hue_group":"red"},{"hex":"#f4ccbc","weight":0.1111,"lightness":0.8471,"saturation":0.7179,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/rabbit.png","family":"rabbit","relations":[{"type":"variants","target":"minecraft:rabbit/black","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/black","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/brown","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/brown","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/caerbannog","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/caerbannog","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/gold","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/gold","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/salt","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/salt","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/toast","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/toast","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white_splotched","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white_splotched","label":"Related set: rabbit","confidence":0.8},{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cherry_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:porkchop","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_horse_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:rabbit/black","name":"Rabbit / Black","entry_type":"mob","description":"A rabbit is a passive mob found in many snowy and forested biomes, as well as deserts. It runs away from players that are not holding its food, and is able to jump over fences. Rabbits are a source of raw rabbit, rabbit hide and rabbit's feet. The Killer Bunny is a hostile rabbit variant exclusive to Java Edition that can only be spawned using commands.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added rabbits."},{"version":"wiki-history","status":"added","notes":"Added baby rabbits."},{"version":"15w47b","status":"added","notes":"Added The Killer Bunny attack sounds ."}],"colors":{"primary":"#1f1e1e","dominant_hex":"#2e2e2e","average_hex":"#1f1e1e","hue_group":"neutral","lightness":0.1196,"saturation":0.0164,"palette":["#2e2e2e","#242424","#1c1c1c","#040404","#141414","#f4d5e9"],"color_groups":[{"hex":"#2e2e2e","weight":0.3552,"lightness":0.1804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.2416,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#1c1c1c","weight":0.1414,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.1359,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1192,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4d5e9","weight":0.0067,"lightness":0.8961,"saturation":0.5849,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/rabbit/black.png","family":"rabbit","relations":[{"type":"variants","target":"minecraft:rabbit","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/brown","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/brown","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/caerbannog","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/caerbannog","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/gold","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/gold","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/salt","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/salt","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/toast","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/toast","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white_splotched","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white_splotched","label":"Related set: rabbit","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wither","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enderman","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_blackdots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:rabbit/brown","name":"Rabbit / Brown","entry_type":"mob","description":"A rabbit is a passive mob found in many snowy and forested biomes, as well as deserts. It runs away from players that are not holding its food, and is able to jump over fences. Rabbits are a source of raw rabbit, rabbit hide and rabbit's feet. The Killer Bunny is a hostile rabbit variant exclusive to Java Edition that can only be spawned using commands.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added rabbits."},{"version":"wiki-history","status":"added","notes":"Added baby rabbits."},{"version":"15w47b","status":"added","notes":"Added The Killer Bunny attack sounds ."}],"colors":{"primary":"#816e55","dominant_hex":"#957d65","average_hex":"#816e55","hue_group":"yellow","lightness":0.4196,"saturation":0.2056,"palette":["#957d65","#8c745c","#7c6c4c","#544c3c","#6c5c44","#cfb9b9"],"color_groups":[{"hex":"#957d65","weight":0.3419,"lightness":0.4902,"saturation":0.192,"hue_group":"red"},{"hex":"#8c745c","weight":0.2416,"lightness":0.4549,"saturation":0.2069,"hue_group":"red"},{"hex":"#7c6c4c","weight":0.1414,"lightness":0.3922,"saturation":0.24,"hue_group":"yellow"},{"hex":"#544c3c","weight":0.1381,"lightness":0.2824,"saturation":0.1667,"hue_group":"yellow"},{"hex":"#6c5c44","weight":0.1214,"lightness":0.3451,"saturation":0.2273,"hue_group":"yellow"},{"hex":"#cfb9b9","weight":0.0156,"lightness":0.7686,"saturation":0.1864,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/rabbit/brown.png","family":"rabbit","relations":[{"type":"variants","target":"minecraft:rabbit","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/black","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/black","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/caerbannog","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/caerbannog","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/gold","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/gold","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/salt","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/salt","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/toast","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/toast","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white_splotched","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white_splotched","label":"Related set: rabbit","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:rabbit/caerbannog","name":"Rabbit / Caerbannog","entry_type":"mob","description":"A rabbit is a passive mob found in many snowy and forested biomes, as well as deserts. It runs away from players that are not holding its food, and is able to jump over fences. Rabbits are a source of raw rabbit, rabbit hide and rabbit's feet. The Killer Bunny is a hostile rabbit variant exclusive to Java Edition that can only be spawned using commands.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added rabbits."},{"version":"wiki-history","status":"added","notes":"Added baby rabbits."},{"version":"15w47b","status":"added","notes":"Added The Killer Bunny attack sounds ."}],"colors":{"primary":"#e1dfdf","dominant_hex":"#f4f4f4","average_hex":"#e1dfdf","hue_group":"neutral","lightness":0.8784,"saturation":0.0323,"palette":["#f4f4f4","#e4e4e4","#bab6b6","#e4dcdc","#d4d4d4","#fcfcfc"],"color_groups":[{"hex":"#f4f4f4","weight":0.3207,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.2461,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bab6b6","weight":0.1537,"lightness":0.7216,"saturation":0.0282,"hue_group":"neutral"},{"hex":"#e4dcdc","weight":0.1437,"lightness":0.8784,"saturation":0.129,"hue_group":"red"},{"hex":"#d4d4d4","weight":0.1192,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.0167,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/rabbit/caerbannog.png","family":"rabbit","relations":[{"type":"variants","target":"minecraft:rabbit","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/black","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/black","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/brown","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/brown","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/gold","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/gold","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/salt","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/salt","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/toast","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/toast","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white_splotched","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white_splotched","label":"Related set: rabbit","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:rabbit/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool_undercoat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitefield","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_shooting","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:rabbit/gold","name":"Rabbit / Gold","entry_type":"mob","description":"A rabbit is a passive mob found in many snowy and forested biomes, as well as deserts. It runs away from players that are not holding its food, and is able to jump over fences. Rabbits are a source of raw rabbit, rabbit hide and rabbit's feet. The Killer Bunny is a hostile rabbit variant exclusive to Java Edition that can only be spawned using commands.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added rabbits."},{"version":"wiki-history","status":"added","notes":"Added baby rabbits."},{"version":"15w47b","status":"added","notes":"Added The Killer Bunny attack sounds ."}],"colors":{"primary":"#f6e7ac","dominant_hex":"#fcedb5","average_hex":"#f6e7ac","hue_group":"yellow","lightness":0.8196,"saturation":0.8043,"palette":["#fcedb5","#fcecac","#f4e4a4","#e8d798","#ece4a4","#faf1d8"],"color_groups":[{"hex":"#fcedb5","weight":0.3296,"lightness":0.849,"saturation":0.9221,"hue_group":"yellow"},{"hex":"#fcecac","weight":0.2416,"lightness":0.8314,"saturation":0.9302,"hue_group":"yellow"},{"hex":"#f4e4a4","weight":0.1414,"lightness":0.8,"saturation":0.7843,"hue_group":"yellow"},{"hex":"#e8d798","weight":0.1403,"lightness":0.7529,"saturation":0.6349,"hue_group":"yellow"},{"hex":"#ece4a4","weight":0.1192,"lightness":0.7843,"saturation":0.6545,"hue_group":"yellow"},{"hex":"#faf1d8","weight":0.0278,"lightness":0.9137,"saturation":0.7727,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/rabbit/gold.png","family":"rabbit","relations":[{"type":"variants","target":"minecraft:rabbit","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/black","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/black","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/brown","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/brown","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/caerbannog","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/caerbannog","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/salt","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/salt","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/toast","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/toast","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white_splotched","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white_splotched","label":"Related set: rabbit","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cat/persian","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/ocelot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/red","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_yellow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spark","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/creamy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_lime","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:rabbit/salt","name":"Rabbit / Salt","entry_type":"mob","description":"A rabbit is a passive mob found in many snowy and forested biomes, as well as deserts. It runs away from players that are not holding its food, and is able to jump over fences. Rabbits are a source of raw rabbit, rabbit hide and rabbit's feet. The Killer Bunny is a hostile rabbit variant exclusive to Java Edition that can only be spawned using commands.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added rabbits."},{"version":"wiki-history","status":"added","notes":"Added baby rabbits."},{"version":"15w47b","status":"added","notes":"Added The Killer Bunny attack sounds ."}],"colors":{"primary":"#9a9082","dominant_hex":"#9c8c7b","average_hex":"#9a9082","hue_group":"neutral","lightness":0.5569,"saturation":0.1062,"palette":["#9c8c7b","#d7d6d7","#94846c","#5e5146","#7c7464","#adaaa8"],"color_groups":[{"hex":"#9c8c7b","weight":0.2695,"lightness":0.5471,"saturation":0.1429,"hue_group":"yellow"},{"hex":"#d7d6d7","weight":0.1982,"lightness":0.8412,"saturation":0.0123,"hue_group":"neutral"},{"hex":"#94846c","weight":0.1849,"lightness":0.502,"saturation":0.1575,"hue_group":"yellow"},{"hex":"#5e5146","weight":0.1626,"lightness":0.3216,"saturation":0.1463,"hue_group":"red"},{"hex":"#7c7464","weight":0.098,"lightness":0.4392,"saturation":0.1071,"hue_group":"neutral"},{"hex":"#adaaa8","weight":0.0869,"lightness":0.6686,"saturation":0.0296,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/rabbit/salt.png","family":"rabbit","relations":[{"type":"variants","target":"minecraft:rabbit","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/black","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/black","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/brown","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/brown","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/caerbannog","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/caerbannog","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/gold","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/gold","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/toast","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/toast","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white_splotched","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white_splotched","label":"Related set: rabbit","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:frog/warm","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_charging","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken/cold","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/aggressive","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/lazy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/playful","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/weak","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:rabbit/toast","name":"Rabbit / Toast","entry_type":"mob","description":"A rabbit is a passive mob found in many snowy and forested biomes, as well as deserts. It runs away from players that are not holding its food, and is able to jump over fences. Rabbits are a source of raw rabbit, rabbit hide and rabbit's feet. The Killer Bunny is a hostile rabbit variant exclusive to Java Edition that can only be spawned using commands.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added rabbits."},{"version":"wiki-history","status":"added","notes":"Added baby rabbits."},{"version":"15w47b","status":"added","notes":"Added The Killer Bunny attack sounds ."}],"colors":{"primary":"#838383","dominant_hex":"#181818","average_hex":"#838383","hue_group":"neutral","lightness":0.5137,"saturation":0.0,"palette":["#181818","#313131","#f5f5f5","#ddd8d8","#e4e4e4","#bcbcbc"],"color_groups":[{"hex":"#181818","weight":0.2862,"lightness":0.0941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#313131","weight":0.1982,"lightness":0.1922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f5f5f5","weight":0.1581,"lightness":0.9608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ddd8d8","weight":0.147,"lightness":0.8569,"saturation":0.0685,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.1414,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcbc","weight":0.069,"lightness":0.7373,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/rabbit/toast.png","family":"rabbit","relations":[{"type":"variants","target":"minecraft:rabbit","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/black","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/black","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/brown","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/brown","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/caerbannog","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/caerbannog","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/gold","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/gold","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/salt","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/salt","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white_splotched","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white_splotched","label":"Related set: rabbit","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:panda","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/lazy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/playful","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/weak","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/worried","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/aggressive","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:rabbit/white","name":"Rabbit / White","entry_type":"mob","description":"A rabbit is a passive mob found in many snowy and forested biomes, as well as deserts. It runs away from players that are not holding its food, and is able to jump over fences. Rabbits are a source of raw rabbit, rabbit hide and rabbit's feet. The Killer Bunny is a hostile rabbit variant exclusive to Java Edition that can only be spawned using commands.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added rabbits."},{"version":"wiki-history","status":"added","notes":"Added baby rabbits."},{"version":"15w47b","status":"added","notes":"Added The Killer Bunny attack sounds ."}],"colors":{"primary":"#e2e0e0","dominant_hex":"#f4f4f4","average_hex":"#e2e0e0","hue_group":"neutral","lightness":0.8824,"saturation":0.0333,"palette":["#f4f4f4","#e5e4e4","#e5dcdc","#beb9b9","#d4d4d4","#fcfcfc"],"color_groups":[{"hex":"#f4f4f4","weight":0.3252,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e5e4e4","weight":0.2506,"lightness":0.8961,"saturation":0.0189,"hue_group":"neutral"},{"hex":"#e5dcdc","weight":0.1481,"lightness":0.8804,"saturation":0.1475,"hue_group":"red"},{"hex":"#beb9b9","weight":0.1403,"lightness":0.7353,"saturation":0.037,"hue_group":"neutral"},{"hex":"#d4d4d4","weight":0.1192,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.0167,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/rabbit/white.png","family":"rabbit","relations":[{"type":"variants","target":"minecraft:rabbit","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/black","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/black","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/brown","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/brown","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/caerbannog","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/caerbannog","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/gold","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/gold","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/salt","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/salt","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/toast","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/toast","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white_splotched","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white_splotched","label":"Related set: rabbit","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:rabbit/caerbannog","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool_undercoat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitefield","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_shooting","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:rabbit/white_splotched","name":"Rabbit / White Splotched","entry_type":"mob","description":"A rabbit is a passive mob found in many snowy and forested biomes, as well as deserts. It runs away from players that are not holding its food, and is able to jump over fences. Rabbits are a source of raw rabbit, rabbit hide and rabbit's feet. The Killer Bunny is a hostile rabbit variant exclusive to Java Edition that can only be spawned using commands.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added rabbits."},{"version":"wiki-history","status":"added","notes":"Added baby rabbits."},{"version":"15w47b","status":"added","notes":"Added The Killer Bunny attack sounds ."}],"colors":{"primary":"#aeadad","dominant_hex":"#272727","average_hex":"#aeadad","hue_group":"neutral","lightness":0.6804,"saturation":0.0061,"palette":["#272727","#f4f4f4","#e5e4e4","#bcbcbc","#e5dbdc","#d4d4d4"],"color_groups":[{"hex":"#272727","weight":0.2639,"lightness":0.1529,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.2105,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e5e4e4","weight":0.1815,"lightness":0.8961,"saturation":0.0189,"hue_group":"neutral"},{"hex":"#bcbcbc","weight":0.1269,"lightness":0.7373,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e5dbdc","weight":0.1158,"lightness":0.8784,"saturation":0.1613,"hue_group":"red"},{"hex":"#d4d4d4","weight":0.1013,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/rabbit/white_splotched.png","family":"rabbit","relations":[{"type":"variants","target":"minecraft:rabbit","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/black","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/black","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/brown","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/brown","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/caerbannog","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/caerbannog","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/gold","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/gold","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/salt","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/salt","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/toast","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/toast","label":"Related set: rabbit","confidence":0.8},{"type":"variants","target":"minecraft:rabbit/white","label":"Same family: rabbit","confidence":0.75},{"type":"related_sets","target":"minecraft:rabbit/white","label":"Related set: rabbit","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:tropical_b","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:rabbit_foot","name":"Rabbit Foot","entry_type":"item","description":"A rabbit's foot is a brewing and tempting item obtained from rabbits and camel husk husk riders.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added rabbit's foot."},{"version":"wiki-history","status":"added","notes":"Added the potion of Leaping ; it is brewed by adding a rabbit's foot to an awkward potion . The rabbit's foot also creates the mundane potion when brewed into a water bottle ."},{"version":"19w07a","status":"added","notes":"Added foxes , which sometimes spawn with rabbit's feet in their mouths."}],"colors":{"primary":"#a48158","dominant_hex":"#644c3c","average_hex":"#a48158","hue_group":"yellow","lightness":0.4941,"saturation":0.3016,"palette":["#644c3c","#c49c64","#846444","#dcb484","#b48c5c"],"color_groups":[{"hex":"#644c3c","weight":0.2317,"lightness":0.3137,"saturation":0.25,"hue_group":"red"},{"hex":"#c49c64","weight":0.2317,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#846444","weight":0.1829,"lightness":0.3922,"saturation":0.32,"hue_group":"red"},{"hex":"#dcb484","weight":0.1829,"lightness":0.6902,"saturation":0.557,"hue_group":"yellow"},{"hex":"#b48c5c","weight":0.1707,"lightness":0.5333,"saturation":0.3697,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/rabbit_foot.png","family":"rabbit_foot","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:snow_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_porkchop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_hide","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trader_llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:totem_of_undying","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:rabbit_hide","name":"Rabbit Hide","entry_type":"item","description":"Rabbit hide is an item dropped by rabbits.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added rabbit hide."},{"version":"19w07a","status":"added","notes":"Added foxes , which sometimes spawn with rabbit hides in their mouths."}],"colors":{"primary":"#926f4a","dominant_hex":"#846444","average_hex":"#926f4a","hue_group":"yellow","lightness":0.4314,"saturation":0.3273,"palette":["#846444","#4c3c24","#b48c5c","#c49c64","#ac8454"],"color_groups":[{"hex":"#846444","weight":0.2636,"lightness":0.3922,"saturation":0.32,"hue_group":"red"},{"hex":"#4c3c24","weight":0.2182,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#b48c5c","weight":0.1818,"lightness":0.5333,"saturation":0.3697,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1727,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#ac8454","weight":0.1636,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/rabbit_hide.png","family":"rabbit_hide","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:spyglass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_foot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:experience_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armor_stand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_porkchop","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:rabbit_spawn_egg","name":"Rabbit Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#845e43","dominant_hex":"#966d45","average_hex":"#845e43","hue_group":"red","lightness":0.3902,"saturation":0.3266,"palette":["#966d45","#513323","#7c5434","#b4916f","#643d2c","#d6b0a0"],"color_groups":[{"hex":"#966d45","weight":0.2672,"lightness":0.4294,"saturation":0.3699,"hue_group":"red"},{"hex":"#513323","weight":0.2366,"lightness":0.2275,"saturation":0.3966,"hue_group":"red"},{"hex":"#7c5434","weight":0.2061,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#b4916f","weight":0.145,"lightness":0.5706,"saturation":0.3151,"hue_group":"red"},{"hex":"#643d2c","weight":0.084,"lightness":0.2824,"saturation":0.3889,"hue_group":"red"},{"hex":"#d6b0a0","weight":0.0611,"lightness":0.7333,"saturation":0.3971,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/rabbit_spawn_egg.png","family":"rabbit_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:raw_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bolt_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:rabbit_stew","name":"Rabbit Stew","entry_type":"item","description":"Rabbit stew is a food item that can be eaten by the player.","history":[{"version":"1.8 14w27a","status":"added","notes":"Added rabbit stew."}],"colors":{"primary":"#7f4d1f","dominant_hex":"#e08c46","average_hex":"#7f4d1f","hue_group":"red","lightness":0.3098,"saturation":0.6076,"palette":["#e08c46","#41300b","#a35128","#1c1404","#744c0c","#5d3612"],"color_groups":[{"hex":"#e08c46","weight":0.2632,"lightness":0.5765,"saturation":0.713,"hue_group":"red"},{"hex":"#41300b","weight":0.1974,"lightness":0.149,"saturation":0.7105,"hue_group":"yellow"},{"hex":"#a35128","weight":0.1711,"lightness":0.398,"saturation":0.6059,"hue_group":"red"},{"hex":"#1c1404","weight":0.1447,"lightness":0.0627,"saturation":0.75,"hue_group":"yellow"},{"hex":"#744c0c","weight":0.1184,"lightness":0.251,"saturation":0.8125,"hue_group":"yellow"},{"hex":"#5d3612","weight":0.1053,"lightness":0.2176,"saturation":0.6757,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/rabbit_stew.png","family":"rabbit_stew","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:rotten_flesh","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:saddle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:rail","name":"Rail","entry_type":"block","description":"A rail is a non-solid block that provides a path along which minecarts can travel, and can be placed either flat on the ground, as a ramp, or curved. A curved rail allows minecarts to turn corners, and can rotate to connect to a different rail line while powered.","history":[{"version":"20100618","status":"added","notes":"Added rails in the first \"Seecret Friday Update\" to Infdev."}],"colors":{"primary":"#7e7059","dominant_hex":"#8d703e","average_hex":"#7e7059","hue_group":"yellow","lightness":0.4216,"saturation":0.1721,"palette":["#8d703e","#a2a2a2","#64542c","#6c6c6c","#543c24","#747c6c"],"color_groups":[{"hex":"#8d703e","weight":0.2778,"lightness":0.398,"saturation":0.3892,"hue_group":"yellow"},{"hex":"#a2a2a2","weight":0.2222,"lightness":0.6353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#64542c","weight":0.1597,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#6c6c6c","weight":0.125,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#543c24","weight":0.1181,"lightness":0.2353,"saturation":0.4,"hue_group":"yellow"},{"hex":"#747c6c","weight":0.0972,"lightness":0.4549,"saturation":0.069,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/rail.png","family":"rail","relations":[{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:daylight_detector","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:loom","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:detector_rail","label":"Palette proche: Detector Rail","confidence":0.904},{"type":"color_neighbors","target":"minecraft:stonecutter","label":"Palette proche: Stonecutter","confidence":0.89},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.874},{"type":"color_neighbors","target":"minecraft:tripwire_hook","label":"Palette proche: Tripwire Hook","confidence":0.871},{"type":"color_neighbors","target":"minecraft:lever","label":"Palette proche: Lever","confidence":0.869},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.867},{"type":"color_neighbors","target":"minecraft:ladder","label":"Palette proche: Ladder","confidence":0.851},{"type":"color_neighbors","target":"minecraft:iron_ore","label":"Palette proche: Iron Ore","confidence":0.839},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.838},{"type":"color_neighbors","target":"minecraft:iron_bars","label":"Palette proche: Iron Bars","confidence":0.834},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.828},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.826},{"type":"color_bridge","target":"minecraft:barrel","label":"Pont de nuance par sous-ton: Barrel","confidence":0.896},{"type":"color_bridge","target":"minecraft:lever","label":"Pont de nuance par sous-ton: Lever","confidence":0.892},{"type":"color_bridge","target":"minecraft:spruce_trapdoor","label":"Pont de nuance par sous-ton: Spruce Trapdoor","confidence":0.89},{"type":"color_bridge","target":"minecraft:ladder","label":"Pont de nuance par sous-ton: Ladder","confidence":0.877},{"type":"color_bridge","target":"minecraft:oak_trapdoor","label":"Pont de nuance par sous-ton: Oak Trapdoor","confidence":0.867},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par palette: Detector Rail","confidence":0.86},{"type":"color_bridge","target":"minecraft:stonecutter","label":"Pont de nuance par palette: Stonecutter","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par palette: Tripwire Hook","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_ore","label":"Pont de nuance par palette: Iron Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_bars","label":"Pont de nuance par palette: Iron Bars","confidence":0.86},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55}],"category":"redstone"},{"id":"minecraft:raiser_armor_trim_smithing_template","name":"Raiser Armor Trim Smithing Template","entry_type":"item","description":"Raiser armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, terracotta, and diamonds.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added the raiser armor trim smithing template."}],"colors":{"primary":"#564b42","dominant_hex":"#826252","average_hex":"#564b42","hue_group":"red","lightness":0.298,"saturation":0.1316,"palette":["#826252","#5c4434","#342424","#4c342c","#241414","#45c1c9"],"color_groups":[{"hex":"#826252","weight":0.3091,"lightness":0.4157,"saturation":0.2264,"hue_group":"red"},{"hex":"#5c4434","weight":0.2182,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#342424","weight":0.1455,"lightness":0.1725,"saturation":0.1818,"hue_group":"red"},{"hex":"#4c342c","weight":0.1455,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#241414","weight":0.103,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#45c1c9","weight":0.0788,"lightness":0.5294,"saturation":0.55,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/raiser_armor_trim_smithing_template.png","family":"raiser_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_lava_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_chirp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_sword","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:ravager","name":"Ravager","entry_type":"mob","description":"A ravager is a large hostile mob that only spawns alongside illagers during raids. It attacks players, adult villagers, wandering traders, and iron golems by charging, biting, and roaring at them. A ravager can sometimes become stunned if its attack is blocked with a shield.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added illager beasts."}],"colors":{"primary":"#585651","dominant_hex":"#404040","average_hex":"#585651","hue_group":"neutral","lightness":0.3314,"saturation":0.0414,"palette":["#404040","#4c4444","#625348","#5f615f","#a3b6b6","#688481"],"color_groups":[{"hex":"#404040","weight":0.2975,"lightness":0.251,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4444","weight":0.218,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#625348","weight":0.1943,"lightness":0.3333,"saturation":0.1529,"hue_group":"red"},{"hex":"#5f615f","weight":0.1616,"lightness":0.3765,"saturation":0.0104,"hue_group":"neutral"},{"hex":"#a3b6b6","weight":0.0727,"lightness":0.6765,"saturation":0.1152,"hue_group":"neutral"},{"hex":"#688481","weight":0.0558,"lightness":0.4627,"saturation":0.1186,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/illager/ravager.png","family":"ravager","relations":[{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_fangs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:ravager_spawn_egg","name":"Ravager Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#515956","dominant_hex":"#3f4644","average_hex":"#515956","hue_group":"neutral","lightness":0.3333,"saturation":0.0471,"palette":["#3f4644","#819996","#66635f","#212121","#446464","#5c544c"],"color_groups":[{"hex":"#3f4644","weight":0.3366,"lightness":0.2608,"saturation":0.0526,"hue_group":"neutral"},{"hex":"#819996","weight":0.1881,"lightness":0.5529,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#66635f","weight":0.1436,"lightness":0.3863,"saturation":0.0355,"hue_group":"neutral"},{"hex":"#212121","weight":0.1287,"lightness":0.1294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#446464","weight":0.104,"lightness":0.3294,"saturation":0.1905,"hue_group":"cyan"},{"hex":"#5c544c","weight":0.099,"lightness":0.3294,"saturation":0.0952,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/ravager_spawn_egg.png","family":"ravager_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:compass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:furnace_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ominous_trial_key","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:raw_copper","name":"Raw Copper","entry_type":"item","description":"Raw copper is a raw metal resource obtained from mining copper ore.","history":[{"version":"1.17 21w14a","status":"added","notes":"Added raw copper."}],"colors":{"primary":"#896046","dominant_hex":"#366a5a","average_hex":"#896046","hue_group":"red","lightness":0.4059,"saturation":0.3237,"palette":["#366a5a","#eb9a7b","#9f562c","#8c3c24","#6a3c2a","#cc5c34"],"color_groups":[{"hex":"#366a5a","weight":0.2771,"lightness":0.3137,"saturation":0.325,"hue_group":"cyan"},{"hex":"#eb9a7b","weight":0.1747,"lightness":0.702,"saturation":0.7368,"hue_group":"red"},{"hex":"#9f562c","weight":0.1687,"lightness":0.398,"saturation":0.5665,"hue_group":"red"},{"hex":"#8c3c24","weight":0.1627,"lightness":0.3451,"saturation":0.5909,"hue_group":"red"},{"hex":"#6a3c2a","weight":0.1205,"lightness":0.2902,"saturation":0.4324,"hue_group":"red"},{"hex":"#cc5c34","weight":0.0964,"lightness":0.502,"saturation":0.5984,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/raw_copper.png","family":"raw_copper","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:rabbit_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bolt_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:raw_copper_block","name":"Raw Copper Block","entry_type":"block","description":"A block of raw copper, internally known as a raw copper block, is a raw metal block equivalent to nine raw copper.","history":[{"version":"1.17 21w15a","status":"added","notes":"Added blocks of raw copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of raw copper, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#9a6a4f","dominant_hex":"#667252","average_hex":"#9a6a4f","hue_group":"red","lightness":0.4569,"saturation":0.3219,"palette":["#667252","#9c553c","#b76c4e","#844c3c","#f08e7c","#d47c5c"],"color_groups":[{"hex":"#667252","weight":0.2891,"lightness":0.3843,"saturation":0.1633,"hue_group":"yellow"},{"hex":"#9c553c","weight":0.1914,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#b76c4e","weight":0.1875,"lightness":0.5118,"saturation":0.4217,"hue_group":"red"},{"hex":"#844c3c","weight":0.1523,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#f08e7c","weight":0.1055,"lightness":0.7137,"saturation":0.7945,"hue_group":"red"},{"hex":"#d47c5c","weight":0.0742,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/raw_copper_block.png","family":"raw_copper_block","relations":[{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.88},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.88},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.878},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.878},{"type":"color_neighbors","target":"minecraft:copper_door","label":"Palette proche: Copper Door","confidence":0.875},{"type":"color_neighbors","target":"minecraft:waxed_copper_door","label":"Palette proche: Waxed Copper Door","confidence":0.875},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.873},{"type":"color_neighbors","target":"minecraft:copper_chest","label":"Palette proche: Copper Chest","confidence":0.873},{"type":"color_neighbors","target":"minecraft:copper_golem_statue","label":"Palette proche: Copper Golem Statue","confidence":0.873},{"type":"color_neighbors","target":"minecraft:waxed_copper_block","label":"Palette proche: Waxed Copper Block","confidence":0.873},{"type":"color_neighbors","target":"minecraft:waxed_copper_chest","label":"Palette proche: Waxed Copper Chest","confidence":0.873},{"type":"color_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Palette proche: Waxed Copper Golem Statue","confidence":0.873},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.84},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.84},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.84},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.84},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.84},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.84},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.825},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.825},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.822},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.822},{"type":"color_analogous","target":"minecraft:exposed_copper_trapdoor","label":"Couleurs analogues: Exposed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Couleurs analogues: Waxed Exposed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_grate","label":"Couleurs analogues: Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_grate","label":"Couleurs analogues: Waxed Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence_gate","label":"Couleurs analogues: Acacia Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_planks","label":"Couleurs analogues: Acacia Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.954},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.954},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.941},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.941},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.937},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.925},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.922},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.93},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.912},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.901},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.823},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.823},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.823},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.823},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.921},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.84},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.84},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.828},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.817},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.732},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.732},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:raw_gold","name":"Raw Gold","entry_type":"item","description":"Raw gold is a raw metal resource obtained from mining gold ore.","history":[{"version":"1.17 21w14a","status":"added","notes":"Added raw gold."}],"colors":{"primary":"#d29f31","dominant_hex":"#e49404","average_hex":"#d29f31","hue_group":"yellow","lightness":0.5078,"saturation":0.6414,"palette":["#e49404","#f4c434","#b46414","#6c441c","#fcf7c5","#fcec2c"],"color_groups":[{"hex":"#e49404","weight":0.2125,"lightness":0.4549,"saturation":0.9655,"hue_group":"yellow"},{"hex":"#f4c434","weight":0.2,"lightness":0.5804,"saturation":0.8972,"hue_group":"yellow"},{"hex":"#b46414","weight":0.1938,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#6c441c","weight":0.15,"lightness":0.2667,"saturation":0.5882,"hue_group":"yellow"},{"hex":"#fcf7c5","weight":0.1313,"lightness":0.8804,"saturation":0.9016,"hue_group":"yellow"},{"hex":"#fcec2c","weight":0.1125,"lightness":0.5804,"saturation":0.972,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/raw_gold.png","family":"raw_gold","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:golden_nautilus_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_ingot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_chestplate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:raw_gold_block","name":"Raw Gold Block","entry_type":"block","description":"A block of raw gold, internally known as a raw gold block, is a raw metal block equivalent to nine raw gold.","history":[{"version":"1.17 21w15a","status":"added","notes":"Added the block of raw gold."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of raw gold, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#dea92f","dominant_hex":"#cc8c1c","average_hex":"#dea92f","hue_group":"yellow","lightness":0.5275,"saturation":0.7261,"palette":["#cc8c1c","#f4c434","#eca41c","#ac6c24","#fcec2c","#fcf49c"],"color_groups":[{"hex":"#cc8c1c","weight":0.2656,"lightness":0.4549,"saturation":0.7586,"hue_group":"yellow"},{"hex":"#f4c434","weight":0.1875,"lightness":0.5804,"saturation":0.8972,"hue_group":"yellow"},{"hex":"#eca41c","weight":0.1758,"lightness":0.5176,"saturation":0.8455,"hue_group":"yellow"},{"hex":"#ac6c24","weight":0.1719,"lightness":0.4078,"saturation":0.6538,"hue_group":"yellow"},{"hex":"#fcec2c","weight":0.1094,"lightness":0.5804,"saturation":0.972,"hue_group":"yellow"},{"hex":"#fcf49c","weight":0.0898,"lightness":0.8,"saturation":0.9412,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/raw_gold_block.png","family":"raw_gold_block","relations":[{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jack_o_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.89},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.89},{"type":"color_neighbors","target":"minecraft:yellow_shulker_box","label":"Palette proche: Yellow Shulker Box","confidence":0.88},{"type":"color_neighbors","target":"minecraft:yellow_concrete","label":"Palette proche: Yellow Concrete","confidence":0.869},{"type":"color_neighbors","target":"minecraft:jack_o_lantern","label":"Palette proche: Jack O Lantern","confidence":0.866},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.864},{"type":"color_neighbors","target":"minecraft:yellow_wool","label":"Palette proche: Yellow Wool","confidence":0.864},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.862},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.849},{"type":"color_neighbors","target":"minecraft:yellow_concrete_powder","label":"Palette proche: Yellow Concrete Powder","confidence":0.841},{"type":"color_neighbors","target":"minecraft:yellow_candle","label":"Palette proche: Yellow Candle","confidence":0.835},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.834},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.713},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.649},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.649},{"type":"color_bridge","target":"minecraft:red_mushroom_block","label":"Pont de nuance par palette: Red Mushroom Block","confidence":0.636},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.633},{"type":"color_bridge","target":"minecraft:red_carpet","label":"Pont de nuance par palette: Red Carpet","confidence":0.624},{"type":"color_bridge","target":"minecraft:red_wool","label":"Pont de nuance par palette: Red Wool","confidence":0.624},{"type":"color_bridge","target":"minecraft:fire_coral_block","label":"Pont de nuance par palette: Fire Coral Block","confidence":0.62},{"type":"color_bridge","target":"minecraft:fire_coral","label":"Pont de nuance par palette: Fire Coral","confidence":0.619},{"type":"color_bridge","target":"minecraft:red_glazed_terracotta","label":"Pont de nuance par palette: Red Glazed Terracotta","confidence":0.617},{"type":"color_analogous","target":"minecraft:yellow_candle","label":"Couleurs analogues: Yellow Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_concrete","label":"Couleurs analogues: Yellow Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:bee_nest","label":"Couleurs analogues: Bee Nest","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_glazed_terracotta","label":"Couleurs analogues: Yellow Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:pitcher_crop","label":"Couleurs analogues: Pitcher Crop","confidence":0.96},{"type":"color_analogous","target":"minecraft:fletching_table","label":"Couleurs analogues: Fletching Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:dirt_path","label":"Couleurs analogues: Dirt Path","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_shelf","label":"Couleurs analogues: Birch Shelf","confidence":0.959},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.936},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.924},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.904},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.904},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.883},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.876},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.865},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.856},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.94},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.921},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.883},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.883},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.868},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.868},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.867},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.867},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.862},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.773},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.772},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.7},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.699},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.694},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.694},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.67},{"type":"value_contrast","target":"minecraft:spruce_log","label":"Contraste clair sombre: Spruce Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_wood","label":"Contraste clair sombre: Spruce Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55}],"category":"resource"},{"id":"minecraft:raw_iron","name":"Raw Iron","entry_type":"item","description":"Raw Iron is an item obtained by mining iron ore. It can be smelted in a furnace or blast furnace to produce iron ingots, which are used in crafting and building.","history":[{"version":"1.17 21w14a","status":"added","notes":"Added raw iron."}],"colors":{"primary":"#9b8570","dominant_hex":"#f6dbca","average_hex":"#9b8570","hue_group":"red","lightness":0.5235,"saturation":0.177,"palette":["#f6dbca","#544c3c","#ac8c74","#3c342c","#8c7454","#dcac94"],"color_groups":[{"hex":"#f6dbca","weight":0.25,"lightness":0.8784,"saturation":0.7097,"hue_group":"red"},{"hex":"#544c3c","weight":0.2321,"lightness":0.2824,"saturation":0.1667,"hue_group":"yellow"},{"hex":"#ac8c74","weight":0.1607,"lightness":0.5647,"saturation":0.2523,"hue_group":"red"},{"hex":"#3c342c","weight":0.1429,"lightness":0.2039,"saturation":0.1538,"hue_group":"yellow"},{"hex":"#8c7454","weight":0.119,"lightness":0.4392,"saturation":0.25,"hue_group":"yellow"},{"hex":"#dcac94","weight":0.0952,"lightness":0.7216,"saturation":0.507,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/raw_iron.png","family":"raw_iron","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:zombified_piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_bucket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_shell","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shears","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brush","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_scute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:writable_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:raw_iron_block","name":"Raw Iron Block","entry_type":"block","description":"A block of raw iron, known internally as a raw iron block, is a raw metal block equivalent to nine raw iron.","history":[{"version":"21w15a","status":"added","notes":"Added block of raw iron."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of raw iron, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#a6886b","dominant_hex":"#ac8c74","average_hex":"#a6886b","hue_group":"red","lightness":0.5353,"saturation":0.2489,"palette":["#ac8c74","#8c7454","#7c643c","#dcac94","#eeceb8","#645434"],"color_groups":[{"hex":"#ac8c74","weight":0.2422,"lightness":0.5647,"saturation":0.2523,"hue_group":"red"},{"hex":"#8c7454","weight":0.2266,"lightness":0.4392,"saturation":0.25,"hue_group":"yellow"},{"hex":"#7c643c","weight":0.1758,"lightness":0.3608,"saturation":0.3478,"hue_group":"yellow"},{"hex":"#dcac94","weight":0.1758,"lightness":0.7216,"saturation":0.507,"hue_group":"red"},{"hex":"#eeceb8","weight":0.1016,"lightness":0.8275,"saturation":0.6136,"hue_group":"red"},{"hex":"#645434","weight":0.0781,"lightness":0.298,"saturation":0.3158,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/raw_iron_block.png","family":"raw_iron_block","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_door","label":"Palette proche: Jungle Door","confidence":0.845},{"type":"color_neighbors","target":"minecraft:jungle_shelf","label":"Palette proche: Jungle Shelf","confidence":0.838},{"type":"color_neighbors","target":"minecraft:conduit","label":"Palette proche: Conduit","confidence":0.837},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.835},{"type":"color_neighbors","target":"minecraft:brown_mushroom","label":"Palette proche: Brown Mushroom","confidence":0.827},{"type":"color_neighbors","target":"minecraft:exposed_lightning_rod","label":"Palette proche: Exposed Lightning Rod","confidence":0.827},{"type":"color_neighbors","target":"minecraft:potted_brown_mushroom","label":"Palette proche: Potted Brown Mushroom","confidence":0.827},{"type":"color_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Palette proche: Waxed Exposed Lightning Rod","confidence":0.827},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.826},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.825},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.825},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.825},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.866},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.852},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.852},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.846},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.845},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.845},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.844},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.839},{"type":"color_analogous","target":"minecraft:orange_concrete_powder","label":"Couleurs analogues: Orange Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_open_eyeblossom","label":"Couleurs analogues: Potted Open Eyeblossom","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_stained_glass","label":"Couleurs analogues: Orange Stained Glass","confidence":0.956},{"type":"color_analogous","target":"minecraft:orange_stained_glass_pane","label":"Couleurs analogues: Orange Stained Glass Pane","confidence":0.955},{"type":"color_analogous","target":"minecraft:brown_stained_glass","label":"Couleurs analogues: Brown Stained Glass","confidence":0.951},{"type":"color_analogous","target":"minecraft:carved_pumpkin","label":"Couleurs analogues: Carved Pumpkin","confidence":0.942},{"type":"color_analogous","target":"minecraft:glow_item_frame","label":"Couleurs analogues: Glow Item Frame","confidence":0.94},{"type":"color_analogous","target":"minecraft:composter","label":"Couleurs analogues: Composter","confidence":0.938},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.843},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.836},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.831},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.831},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.831},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.788},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.788},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.759},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.946},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.946},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.92},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.917},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.901},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.89},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.883},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.883},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.926},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.926},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.921},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.887},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.825},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.782},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.78},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55}],"category":"resource"},{"id":"minecraft:recovery_compass","name":"Recovery Compass","entry_type":"item","description":"A recovery compass is an item that can be held by a player who has died to point to where their most recent death occurred, as long as they are in the same dimension. If these conditions are not met, it will spin in random directions.","history":[{"version":"1.19 22w14a","status":"added","notes":"Added recovery compasses."}],"colors":{"primary":"#364e4f","dominant_hex":"#81acb0","average_hex":"#364e4f","hue_group":"cyan","lightness":0.2608,"saturation":0.188,"palette":["#81acb0","#0c1414","#242c2c","#304a4d","#446a70","#0c0c0c"],"color_groups":[{"hex":"#81acb0","weight":0.2056,"lightness":0.598,"saturation":0.2293,"hue_group":"cyan"},{"hex":"#0c1414","weight":0.1778,"lightness":0.0627,"saturation":0.25,"hue_group":"cyan"},{"hex":"#242c2c","weight":0.1778,"lightness":0.1569,"saturation":0.1,"hue_group":"neutral"},{"hex":"#304a4d","weight":0.1722,"lightness":0.2451,"saturation":0.232,"hue_group":"cyan"},{"hex":"#446a70","weight":0.1556,"lightness":0.3529,"saturation":0.2444,"hue_group":"cyan"},{"hex":"#0c0c0c","weight":0.1111,"lightness":0.0471,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/recovery_compass_16.png","family":"recovery_compass","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silence_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:disc_fragment_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ward_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_shard","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider_spawn_egg","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:red_banner","name":"Red Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"red_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:red_bed","name":"Red Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"red_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:red_bundle","name":"Red Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#aa3228","dominant_hex":"#9c241c","average_hex":"#aa3228","hue_group":"red","lightness":0.4118,"saturation":0.619,"palette":["#9c241c","#e15a47","#a73d2e","#d43c2c","#641414","#8c1c1c"],"color_groups":[{"hex":"#9c241c","weight":0.1985,"lightness":0.3608,"saturation":0.6957,"hue_group":"red"},{"hex":"#e15a47","weight":0.1985,"lightness":0.5804,"saturation":0.7196,"hue_group":"red"},{"hex":"#a73d2e","weight":0.1908,"lightness":0.4176,"saturation":0.5681,"hue_group":"red"},{"hex":"#d43c2c","weight":0.1603,"lightness":0.502,"saturation":0.6614,"hue_group":"red"},{"hex":"#641414","weight":0.1298,"lightness":0.2353,"saturation":0.6667,"hue_group":"red"},{"hex":"#8c1c1c","weight":0.1221,"lightness":0.3294,"saturation":0.6667,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/red_bundle.png","family":"red_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:saddle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:apple","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glistering_melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_stew","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rotten_flesh","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:red_candle","name":"Red Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#992724","dominant_hex":"#942424","average_hex":"#992724","hue_group":"red","lightness":0.3706,"saturation":0.619,"palette":["#942424","#a42424","#b4342c","#242434","#bc3c34"],"color_groups":[{"hex":"#942424","weight":0.4286,"lightness":0.3608,"saturation":0.6087,"hue_group":"red"},{"hex":"#a42424","weight":0.2857,"lightness":0.3922,"saturation":0.64,"hue_group":"red"},{"hex":"#b4342c","weight":0.1905,"lightness":0.4392,"saturation":0.6071,"hue_group":"red"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#bc3c34","weight":0.0476,"lightness":0.4706,"saturation":0.5667,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_candle.png","family":"red_candle","relations":[{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_nylium","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_concrete","label":"Palette proche: Red Concrete","confidence":0.922},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.921},{"type":"color_neighbors","target":"minecraft:red_glazed_terracotta","label":"Palette proche: Red Glazed Terracotta","confidence":0.914},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.893},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.886},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.883},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.883},{"type":"color_neighbors","target":"minecraft:fire_coral","label":"Palette proche: Fire Coral","confidence":0.881},{"type":"color_neighbors","target":"minecraft:red_stained_glass_pane","label":"Palette proche: Red Stained Glass Pane","confidence":0.88},{"type":"color_neighbors","target":"minecraft:black_glazed_terracotta","label":"Palette proche: Black Glazed Terracotta","confidence":0.878},{"type":"color_bridge","target":"minecraft:lantern","label":"Pont de nuance par sous-ton: Lantern","confidence":0.747},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.733},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.731},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.714},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.713},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.71},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.692},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.68},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.68},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.678},{"type":"color_analogous","target":"minecraft:red_carpet","label":"Couleurs analogues: Red Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_wool","label":"Couleurs analogues: Red Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete","label":"Couleurs analogues: Red Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass_pane","label":"Couleurs analogues: Red Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete_powder","label":"Couleurs analogues: Red Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass","label":"Couleurs analogues: Red Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_mushroom_block","label":"Couleurs analogues: Red Mushroom Block","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.96},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.959},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.959},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.946},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.946},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.942},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.939},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.917},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.903},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.886},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.885},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.853},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.842},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.842},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.764},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.94},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.926},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.926},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.916},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.912},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.578},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55}],"category":"decorative"},{"id":"minecraft:red_candle_cake","name":"Red Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"red_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:red_carpet","name":"Red Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#a12723","dominant_hex":"#932424","average_hex":"#a12723","hue_group":"red","lightness":0.3843,"saturation":0.6429,"palette":["#932424","#9c2424","#ac2c24","#a42c24","#bc342c","#a42424"],"color_groups":[{"hex":"#932424","weight":0.25,"lightness":0.3588,"saturation":0.6066,"hue_group":"red"},{"hex":"#9c2424","weight":0.25,"lightness":0.3765,"saturation":0.625,"hue_group":"red"},{"hex":"#ac2c24","weight":0.2109,"lightness":0.4078,"saturation":0.6538,"hue_group":"red"},{"hex":"#a42c24","weight":0.1484,"lightness":0.3922,"saturation":0.64,"hue_group":"red"},{"hex":"#bc342c","weight":0.082,"lightness":0.4549,"saturation":0.6207,"hue_group":"red"},{"hex":"#a42424","weight":0.0586,"lightness":0.3922,"saturation":0.64,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_wool.png","family":"red_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:red_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_glazed_terracotta","label":"Palette proche: Red Glazed Terracotta","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_concrete","label":"Palette proche: Red Concrete","confidence":0.939},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.91},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.906},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.906},{"type":"color_neighbors","target":"minecraft:fire_coral","label":"Palette proche: Fire Coral","confidence":0.905},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.901},{"type":"color_neighbors","target":"minecraft:red_mushroom_block","label":"Palette proche: Red Mushroom Block","confidence":0.893},{"type":"color_neighbors","target":"minecraft:red_stained_glass_pane","label":"Palette proche: Red Stained Glass Pane","confidence":0.893},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.735},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.713},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.697},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.672},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.67},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.667},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.65},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.643},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.635},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.635},{"type":"color_analogous","target":"minecraft:red_wool","label":"Couleurs analogues: Red Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_candle","label":"Couleurs analogues: Red Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete_powder","label":"Couleurs analogues: Red Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_door","label":"Couleurs analogues: Mangrove Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_shelf","label":"Couleurs analogues: Mangrove Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:weeping_vines_plant","label":"Couleurs analogues: Weeping Vines Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass_pane","label":"Couleurs analogues: Red Stained Glass Pane","confidence":0.958},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.96},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.956},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.956},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.953},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.94},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.94},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.93},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.919},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.87},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.869},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.837},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.826},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.826},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.748},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.959},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.959},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.957},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.955},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.925},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.924},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.909},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.909},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.565},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55}],"category":"decorative"},{"id":"minecraft:red_concrete","name":"Red Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#8e2121","dominant_hex":"#8c2424","average_hex":"#8e2121","hue_group":"red","lightness":0.3431,"saturation":0.6229,"palette":["#8c2424"],"color_groups":[{"hex":"#8c2424","weight":1.0,"lightness":0.3451,"saturation":0.5909,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_concrete.png","family":"red_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:magma_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_nylium","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.939},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.939},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.922},{"type":"color_neighbors","target":"minecraft:red_stained_glass_pane","label":"Palette proche: Red Stained Glass Pane","confidence":0.905},{"type":"color_neighbors","target":"minecraft:red_glazed_terracotta","label":"Palette proche: Red Glazed Terracotta","confidence":0.89},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.866},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.865},{"type":"color_neighbors","target":"minecraft:red_stained_glass","label":"Palette proche: Red Stained Glass","confidence":0.859},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.853},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.852},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.852},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.695},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.662},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.662},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.656},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.656},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.652},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.651},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.644},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.643},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.641},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_nylium","label":"Couleurs analogues: Crimson Nylium","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_candle","label":"Couleurs analogues: Red Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass_pane","label":"Couleurs analogues: Red Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass","label":"Couleurs analogues: Red Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:netherrack","label":"Couleurs analogues: Netherrack","confidence":0.96},{"type":"color_analogous","target":"minecraft:barrier","label":"Couleurs analogues: Barrier","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_wart_block","label":"Couleurs analogues: Nether Wart Block","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.942},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.918},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.918},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.945},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.944},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.912},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.901},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.901},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.858},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.845},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.823},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.96},{"type":"color_square","target":"minecraft:cactus","label":"Harmonie carree: Cactus","confidence":0.96},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.959},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.959},{"type":"color_square","target":"minecraft:lime_shulker_box","label":"Harmonie carree: Lime Shulker Box","confidence":0.955},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.605},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.571},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.562},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.562},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.562},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.562},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste clair sombre: Cherry Wall Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:red_concrete_powder","name":"Red Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#a83633","dominant_hex":"#a43434","average_hex":"#a83633","hue_group":"red","lightness":0.4294,"saturation":0.5342,"palette":["#a43434","#ac3434","#b73e37","#99322c","#ac3c34","#9c3434"],"color_groups":[{"hex":"#a43434","weight":0.4062,"lightness":0.4235,"saturation":0.5185,"hue_group":"red"},{"hex":"#ac3434","weight":0.207,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"},{"hex":"#b73e37","weight":0.1914,"lightness":0.4667,"saturation":0.5378,"hue_group":"red"},{"hex":"#99322c","weight":0.0859,"lightness":0.3863,"saturation":0.5533,"hue_group":"red"},{"hex":"#ac3c34","weight":0.0625,"lightness":0.4392,"saturation":0.5357,"hue_group":"red"},{"hex":"#9c3434","weight":0.0469,"lightness":0.4078,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_concrete_powder.png","family":"red_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:acacia_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_stained_glass","label":"Palette proche: Red Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_stained_glass_pane","label":"Palette proche: Red Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.901},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.901},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.893},{"type":"color_neighbors","target":"minecraft:red_terracotta","label":"Palette proche: Red Terracotta","confidence":0.887},{"type":"color_neighbors","target":"minecraft:red_glazed_terracotta","label":"Palette proche: Red Glazed Terracotta","confidence":0.869},{"type":"color_neighbors","target":"minecraft:red_concrete","label":"Palette proche: Red Concrete","confidence":0.866},{"type":"color_neighbors","target":"minecraft:red_mushroom_block","label":"Palette proche: Red Mushroom Block","confidence":0.858},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.848},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.835},{"type":"color_neighbors","target":"minecraft:fire_coral","label":"Palette proche: Fire Coral","confidence":0.832},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.738},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.72},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.72},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.709},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.699},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.699},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.697},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.694},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.694},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.689},{"type":"color_analogous","target":"minecraft:red_stained_glass","label":"Couleurs analogues: Red Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_candle","label":"Couleurs analogues: Red Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_carpet","label":"Couleurs analogues: Red Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_wool","label":"Couleurs analogues: Red Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_mushroom_block","label":"Couleurs analogues: Red Mushroom Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_door","label":"Couleurs analogues: Mangrove Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:barrier","label":"Couleurs analogues: Barrier","confidence":0.96},{"type":"color_analogous","target":"minecraft:weeping_vines_plant","label":"Couleurs analogues: Weeping Vines Plant","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.954},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.95},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.95},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.949},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.949},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.947},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.931},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.924},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.897},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.893},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.892},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.859},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.849},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.849},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.771},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.933},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.933},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.933},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.919},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.918},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:red_dye","name":"Red Dye","entry_type":"item","description":"Red dye is one of the sixteen available dyes.","history":[{"version":"1.2","status":"added","notes":"Added rose red."},{"version":"1.4.2 12w34a","status":"added","notes":"Added the ability to dye leather armor and wolf collars."},{"version":"1.8 14w30a","status":"added","notes":"Added banners , which can be dyed."}],"colors":{"primary":"#a64042","dominant_hex":"#e57566","average_hex":"#a64042","hue_group":"red","lightness":0.451,"saturation":0.4435,"palette":["#e57566","#a53a47","#8a2634","#d43434","#3c1c1c","#741c24"],"color_groups":[{"hex":"#e57566","weight":0.2786,"lightness":0.649,"saturation":0.7095,"hue_group":"red"},{"hex":"#a53a47","weight":0.2,"lightness":0.4373,"saturation":0.4798,"hue_group":"red"},{"hex":"#8a2634","weight":0.15,"lightness":0.3451,"saturation":0.5682,"hue_group":"red"},{"hex":"#d43434","weight":0.15,"lightness":0.5176,"saturation":0.6504,"hue_group":"red"},{"hex":"#3c1c1c","weight":0.1429,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#741c24","weight":0.0786,"lightness":0.2824,"saturation":0.6111,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/red_dye.png","family":"red_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:brown_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chestplate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator_music_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:red_glazed_terracotta","name":"Red Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#b63c35","dominant_hex":"#ce4e48","average_hex":"#b63c35","hue_group":"red","lightness":0.4608,"saturation":0.5489,"palette":["#ce4e48","#b52c24","#8f2323","#ac2c24","#cc443c","#cc947c"],"color_groups":[{"hex":"#ce4e48","weight":0.3164,"lightness":0.5451,"saturation":0.5776,"hue_group":"red"},{"hex":"#b52c24","weight":0.2969,"lightness":0.4255,"saturation":0.6682,"hue_group":"red"},{"hex":"#8f2323","weight":0.2109,"lightness":0.349,"saturation":0.6067,"hue_group":"red"},{"hex":"#ac2c24","weight":0.0625,"lightness":0.4078,"saturation":0.6538,"hue_group":"red"},{"hex":"#cc443c","weight":0.0586,"lightness":0.5176,"saturation":0.5854,"hue_group":"red"},{"hex":"#cc947c","weight":0.0547,"lightness":0.6431,"saturation":0.4396,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_glazed_terracotta.png","family":"red_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:acacia_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.914},{"type":"color_neighbors","target":"minecraft:red_concrete","label":"Palette proche: Red Concrete","confidence":0.89},{"type":"color_neighbors","target":"minecraft:red_mushroom_block","label":"Palette proche: Red Mushroom Block","confidence":0.88},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.874},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.869},{"type":"color_neighbors","target":"minecraft:fire_coral","label":"Palette proche: Fire Coral","confidence":0.866},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.866},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.866},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.865},{"type":"color_neighbors","target":"minecraft:red_stained_glass_pane","label":"Palette proche: Red Stained Glass Pane","confidence":0.84},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.709},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.704},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.701},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.701},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.695},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.695},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.694},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.694},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.694},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.694},{"type":"color_analogous","target":"minecraft:potted_red_mushroom","label":"Couleurs analogues: Potted Red Mushroom","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_mushroom","label":"Couleurs analogues: Red Mushroom","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete_powder","label":"Couleurs analogues: Red Concrete Powder","confidence":0.956},{"type":"color_analogous","target":"minecraft:nether_quartz_ore","label":"Couleurs analogues: Nether Quartz Ore","confidence":0.956},{"type":"color_analogous","target":"minecraft:red_carpet","label":"Couleurs analogues: Red Carpet","confidence":0.955},{"type":"color_analogous","target":"minecraft:red_wool","label":"Couleurs analogues: Red Wool","confidence":0.955},{"type":"color_analogous","target":"minecraft:mangrove_shelf","label":"Couleurs analogues: Mangrove Shelf","confidence":0.954},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.949},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.952},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.942},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.93},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.929},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.96},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.958},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.825},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.825},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.792},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.782},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.782},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.703},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.958},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.945},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.936},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.914},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:red_harness","name":"Red Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#7a4939","dominant_hex":"#ad5138","average_hex":"#7a4939","hue_group":"red","lightness":0.351,"saturation":0.3631,"palette":["#ad5138","#502e16","#6f5644","#3c2414","#7c1c2c","#a2b0b2"],"color_groups":[{"hex":"#ad5138","weight":0.2638,"lightness":0.449,"saturation":0.5109,"hue_group":"red"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#6f5644","weight":0.1902,"lightness":0.351,"saturation":0.2402,"hue_group":"red"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"},{"hex":"#7c1c2c","weight":0.1166,"lightness":0.298,"saturation":0.6316,"hue_group":"red"},{"hex":"#a2b0b2","weight":0.1043,"lightness":0.6667,"saturation":0.0941,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/red_harness.png","family":"red_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cooked_salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blade_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:angler_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:burn_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:red_mushroom","name":"Red Mushroom","entry_type":"block","description":"A red mushroom is a variety of fungus that grows and spreads in dark areas. Mushrooms can generate small or huge in size.","history":[{"version":"0.0.20a","status":"added","notes":"Added red mushrooms."},{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added mushrooms to world generation."},{"version":"1.4.2 12w34a","status":"added","notes":"added to flower pots ."}],"colors":{"primary":"#d94b44","dominant_hex":"#e41414","average_hex":"#d94b44","hue_group":"red","lightness":0.5588,"saturation":0.6622,"palette":["#e41414","#fc2c2c","#d3cf9b","#97b7b9","#c41c24","#ac141c"],"color_groups":[{"hex":"#e41414","weight":0.3125,"lightness":0.4863,"saturation":0.8387,"hue_group":"red"},{"hex":"#fc2c2c","weight":0.25,"lightness":0.5804,"saturation":0.972,"hue_group":"red"},{"hex":"#d3cf9b","weight":0.1875,"lightness":0.7176,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#97b7b9","weight":0.0938,"lightness":0.6588,"saturation":0.1954,"hue_group":"cyan"},{"hex":"#c41c24","weight":0.0938,"lightness":0.4392,"saturation":0.75,"hue_group":"red"},{"hex":"#ac141c","weight":0.0625,"lightness":0.3765,"saturation":0.7917,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_mushroom.png","family":"red_mushroom","relations":[{"type":"visual_neighbors","target":"minecraft:potted_red_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_mushroom_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_torch","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_candle","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_red_mushroom","label":"Palette proche: Potted Red Mushroom","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_mushroom_block","label":"Palette proche: Red Mushroom Block","confidence":0.722},{"type":"color_neighbors","target":"minecraft:red_glazed_terracotta","label":"Palette proche: Red Glazed Terracotta","confidence":0.718},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.715},{"type":"color_neighbors","target":"minecraft:fire_coral","label":"Palette proche: Fire Coral","confidence":0.713},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.71},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.71},{"type":"color_neighbors","target":"minecraft:barrier","label":"Palette proche: Barrier","confidence":0.694},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.67},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.668},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.668},{"type":"color_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Palette proche: Chiseled Resin Bricks","confidence":0.665},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.67},{"type":"color_bridge","target":"minecraft:cut_sandstone","label":"Pont de nuance par palette: Cut Sandstone","confidence":0.64},{"type":"color_bridge","target":"minecraft:sandstone","label":"Pont de nuance par palette: Sandstone","confidence":0.633},{"type":"color_bridge","target":"minecraft:sandstone_wall","label":"Pont de nuance par palette: Sandstone Wall","confidence":0.633},{"type":"color_bridge","target":"minecraft:chiseled_sandstone","label":"Pont de nuance par palette: Chiseled Sandstone","confidence":0.631},{"type":"color_bridge","target":"minecraft:suspicious_sand","label":"Pont de nuance par palette: Suspicious Sand","confidence":0.629},{"type":"color_bridge","target":"minecraft:sand","label":"Pont de nuance par palette: Sand","confidence":0.62},{"type":"color_bridge","target":"minecraft:orange_glazed_terracotta","label":"Pont de nuance par palette: Orange Glazed Terracotta","confidence":0.613},{"type":"color_bridge","target":"minecraft:raw_gold_block","label":"Pont de nuance par palette: Raw Gold Block","confidence":0.613},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.611},{"type":"color_analogous","target":"minecraft:potted_red_mushroom","label":"Couleurs analogues: Potted Red Mushroom","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_glazed_terracotta","label":"Couleurs analogues: Red Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete_powder","label":"Couleurs analogues: Red Concrete Powder","confidence":0.946},{"type":"color_analogous","target":"minecraft:red_carpet","label":"Couleurs analogues: Red Carpet","confidence":0.945},{"type":"color_analogous","target":"minecraft:red_wool","label":"Couleurs analogues: Red Wool","confidence":0.945},{"type":"color_analogous","target":"minecraft:mangrove_shelf","label":"Couleurs analogues: Mangrove Shelf","confidence":0.945},{"type":"color_analogous","target":"minecraft:red_mushroom_block","label":"Couleurs analogues: Red Mushroom Block","confidence":0.939},{"type":"color_analogous","target":"minecraft:cherry_shelf","label":"Couleurs analogues: Cherry Shelf","confidence":0.937},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.953},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.953},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.953},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.94},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.956},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.833},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.832},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.8},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.789},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.789},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.711},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.96},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.946},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.943},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.936},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.921},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.921},{"type":"value_contrast","target":"minecraft:red_nether_brick_slab","label":"Contraste clair sombre: Red Nether Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:red_nether_brick_stairs","label":"Contraste clair sombre: Red Nether Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:red_nether_brick_wall","label":"Contraste clair sombre: Red Nether Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:red_nether_bricks","label":"Contraste clair sombre: Red Nether Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_glazed_terracotta","label":"Contraste clair sombre: Black Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.55}],"category":"natural"},{"id":"minecraft:red_mushroom_block","name":"Red Mushroom Block","entry_type":"block","description":"A mushroom block is a solid block that makes up a huge mushroom, which consists of a mushroom stem and brown mushroom blocks or red mushroom blocks, depending on the color of the huge mushroom.","history":[{"version":"1.8","status":"added","notes":"Added mushroom blocks."},{"version":"wiki-history","status":"added","notes":"added as an item within the inventory . Before this, it could be found naturally or be placed with / setblock ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb mushroom blocks, providing the curling stone/slow sliding effect to the mob."}],"colors":{"primary":"#c82f2d","dominant_hex":"#cc2c2c","average_hex":"#c82f2d","hue_group":"red","lightness":0.4804,"saturation":0.6327,"palette":["#cc2c2c","#c42c24","#bc2424","#fc9c9c","#fcbcbc"],"color_groups":[{"hex":"#cc2c2c","weight":0.4453,"lightness":0.4863,"saturation":0.6452,"hue_group":"red"},{"hex":"#c42c24","weight":0.3555,"lightness":0.4549,"saturation":0.6897,"hue_group":"red"},{"hex":"#bc2424","weight":0.1523,"lightness":0.4392,"saturation":0.6786,"hue_group":"red"},{"hex":"#fc9c9c","weight":0.0234,"lightness":0.8,"saturation":0.9412,"hue_group":"red"},{"hex":"#fcbcbc","weight":0.0234,"lightness":0.8627,"saturation":0.9143,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_mushroom_block.png","family":"red_mushroom_block","relations":[{"type":"visual_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_torch","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_red_mushroom","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.893},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.893},{"type":"color_neighbors","target":"minecraft:red_glazed_terracotta","label":"Palette proche: Red Glazed Terracotta","confidence":0.88},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.874},{"type":"color_neighbors","target":"minecraft:fire_coral","label":"Palette proche: Fire Coral","confidence":0.87},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.865},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.865},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.858},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.858},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.832},{"type":"color_neighbors","target":"minecraft:red_stained_glass","label":"Palette proche: Red Stained Glass","confidence":0.802},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.798},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.709},{"type":"color_bridge","target":"minecraft:yellow_terracotta","label":"Pont de nuance par palette: Yellow Terracotta","confidence":0.694},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.647},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.644},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.637},{"type":"color_bridge","target":"minecraft:raw_gold_block","label":"Pont de nuance par palette: Raw Gold Block","confidence":0.636},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.622},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.622},{"type":"color_bridge","target":"minecraft:bee_nest","label":"Pont de nuance par palette: Bee Nest","confidence":0.614},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.612},{"type":"color_analogous","target":"minecraft:red_concrete_powder","label":"Couleurs analogues: Red Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_candle","label":"Couleurs analogues: Red Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass","label":"Couleurs analogues: Red Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass_pane","label":"Couleurs analogues: Red Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_terracotta","label":"Couleurs analogues: Pink Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:barrier","label":"Couleurs analogues: Barrier","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_shelf","label":"Couleurs analogues: Cherry Shelf","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.96},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.935},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.935},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.914},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.913},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.887},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.881},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.875},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.87},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.87},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.792},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.956},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.956},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.949},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.943},{"type":"color_square","target":"minecraft:cactus","label":"Harmonie carree: Cactus","confidence":0.927},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"natural"},{"id":"minecraft:red_nether_brick_slab","name":"Red Nether Brick Slab","entry_type":"block","description":"A red Nether brick slab is a decorative slab variant of red Nether bricks that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added red Nether brick slabs."}],"colors":{"primary":"#460709","dominant_hex":"#430404","average_hex":"#460709","hue_group":"red","lightness":0.151,"saturation":0.8182,"palette":["#430404","#2c0404","#340404","#540c14","#74141c","#6c1414"],"color_groups":[{"hex":"#430404","weight":0.3359,"lightness":0.1392,"saturation":0.8873,"hue_group":"red"},{"hex":"#2c0404","weight":0.2031,"lightness":0.0941,"saturation":0.8333,"hue_group":"red"},{"hex":"#340404","weight":0.1641,"lightness":0.1098,"saturation":0.8571,"hue_group":"red"},{"hex":"#540c14","weight":0.1445,"lightness":0.1882,"saturation":0.75,"hue_group":"red"},{"hex":"#74141c","weight":0.082,"lightness":0.2667,"saturation":0.7059,"hue_group":"red"},{"hex":"#6c1414","weight":0.0703,"lightness":0.251,"saturation":0.6875,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_nether_bricks.png","family":"red_nether_brick","relations":[{"type":"variants","target":"minecraft:red_nether_brick_stairs","label":"Same family: red_nether_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:red_nether_brick_stairs","label":"Related set: red_nether_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines_plant","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Palette proche: Red Nether Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_nether_brick_wall","label":"Palette proche: Red Nether Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_nether_bricks","label":"Palette proche: Red Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.896},{"type":"color_neighbors","target":"minecraft:weeping_vines","label":"Palette proche: Weeping Vines","confidence":0.868},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.864},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.832},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.815},{"type":"color_neighbors","target":"minecraft:crimson_fungus","label":"Palette proche: Crimson Fungus","confidence":0.783},{"type":"color_neighbors","target":"minecraft:potted_crimson_fungus","label":"Palette proche: Potted Crimson Fungus","confidence":0.783},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.776},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.754},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.696},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.626},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.624},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.593},{"type":"color_bridge","target":"minecraft:gilded_blackstone","label":"Pont de nuance par sous-ton: Gilded Blackstone","confidence":0.58},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.58},{"type":"color_bridge","target":"minecraft:comparator","label":"Pont de nuance par sous-ton: Comparator","confidence":0.58},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.58},{"type":"color_analogous","target":"minecraft:red_nether_brick_stairs","label":"Couleurs analogues: Red Nether Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_brick_wall","label":"Couleurs analogues: Red Nether Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_bricks","label":"Couleurs analogues: Red Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_wart","label":"Couleurs analogues: Nether Wart","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_glazed_terracotta","label":"Couleurs analogues: Black Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.946},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.946},{"type":"color_analogous","target":"minecraft:netherrack","label":"Couleurs analogues: Netherrack","confidence":0.935},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_hanging_sign","label":"Contraste complementaire: Warped Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wall_hanging_sign","label":"Contraste complementaire: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:diamond_block","label":"Contraste complementaire: Diamond Block","confidence":0.932},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.931},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.926},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.926},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.959},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.959},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.951},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.95},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.88},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.787},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.784},{"type":"color_square","target":"minecraft:crying_obsidian","label":"Harmonie carree: Crying Obsidian","confidence":0.96},{"type":"color_square","target":"minecraft:lime_carpet","label":"Harmonie carree: Lime Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:lime_wool","label":"Harmonie carree: Lime Wool","confidence":0.96},{"type":"color_square","target":"minecraft:medium_amethyst_bud","label":"Harmonie carree: Medium Amethyst Bud","confidence":0.957},{"type":"color_square","target":"minecraft:amethyst_cluster","label":"Harmonie carree: Amethyst Cluster","confidence":0.957},{"type":"color_square","target":"minecraft:allium","label":"Harmonie carree: Allium","confidence":0.954},{"type":"color_square","target":"minecraft:potted_allium","label":"Harmonie carree: Potted Allium","confidence":0.954},{"type":"color_square","target":"minecraft:azure_bluet","label":"Harmonie carree: Azure Bluet","confidence":0.953},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.781},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.738},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.738},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.738},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.738},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.725},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.706}],"category":"building"},{"id":"minecraft:red_nether_brick_stairs","name":"Red Nether Brick Stairs","entry_type":"block","description":"Red Nether brick stairs are a decorative stairs variant of red Nether bricks that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added red Nether brick stairs."}],"colors":{"primary":"#460709","dominant_hex":"#430404","average_hex":"#460709","hue_group":"red","lightness":0.151,"saturation":0.8182,"palette":["#430404","#2c0404","#340404","#540c14","#74141c","#6c1414"],"color_groups":[{"hex":"#430404","weight":0.3359,"lightness":0.1392,"saturation":0.8873,"hue_group":"red"},{"hex":"#2c0404","weight":0.2031,"lightness":0.0941,"saturation":0.8333,"hue_group":"red"},{"hex":"#340404","weight":0.1641,"lightness":0.1098,"saturation":0.8571,"hue_group":"red"},{"hex":"#540c14","weight":0.1445,"lightness":0.1882,"saturation":0.75,"hue_group":"red"},{"hex":"#74141c","weight":0.082,"lightness":0.2667,"saturation":0.7059,"hue_group":"red"},{"hex":"#6c1414","weight":0.0703,"lightness":0.251,"saturation":0.6875,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_nether_bricks.png","family":"red_nether_brick","relations":[{"type":"variants","target":"minecraft:red_nether_brick_slab","label":"Same family: red_nether_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:red_nether_brick_slab","label":"Related set: red_nether_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines_plant","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_nether_brick_slab","label":"Palette proche: Red Nether Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_nether_brick_wall","label":"Palette proche: Red Nether Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_nether_bricks","label":"Palette proche: Red Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.896},{"type":"color_neighbors","target":"minecraft:weeping_vines","label":"Palette proche: Weeping Vines","confidence":0.868},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.864},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.832},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.815},{"type":"color_neighbors","target":"minecraft:crimson_fungus","label":"Palette proche: Crimson Fungus","confidence":0.783},{"type":"color_neighbors","target":"minecraft:potted_crimson_fungus","label":"Palette proche: Potted Crimson Fungus","confidence":0.783},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.776},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.754},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.696},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.626},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.624},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.593},{"type":"color_bridge","target":"minecraft:gilded_blackstone","label":"Pont de nuance par sous-ton: Gilded Blackstone","confidence":0.58},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.58},{"type":"color_bridge","target":"minecraft:comparator","label":"Pont de nuance par sous-ton: Comparator","confidence":0.58},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.58},{"type":"color_analogous","target":"minecraft:red_nether_brick_slab","label":"Couleurs analogues: Red Nether Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_brick_wall","label":"Couleurs analogues: Red Nether Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_bricks","label":"Couleurs analogues: Red Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_wart","label":"Couleurs analogues: Nether Wart","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_glazed_terracotta","label":"Couleurs analogues: Black Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.946},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.946},{"type":"color_analogous","target":"minecraft:netherrack","label":"Couleurs analogues: Netherrack","confidence":0.935},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_hanging_sign","label":"Contraste complementaire: Warped Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wall_hanging_sign","label":"Contraste complementaire: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:diamond_block","label":"Contraste complementaire: Diamond Block","confidence":0.932},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.931},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.926},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.926},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.959},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.959},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.951},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.95},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.88},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.787},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.784},{"type":"color_square","target":"minecraft:crying_obsidian","label":"Harmonie carree: Crying Obsidian","confidence":0.96},{"type":"color_square","target":"minecraft:lime_carpet","label":"Harmonie carree: Lime Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:lime_wool","label":"Harmonie carree: Lime Wool","confidence":0.96},{"type":"color_square","target":"minecraft:medium_amethyst_bud","label":"Harmonie carree: Medium Amethyst Bud","confidence":0.957},{"type":"color_square","target":"minecraft:amethyst_cluster","label":"Harmonie carree: Amethyst Cluster","confidence":0.957},{"type":"color_square","target":"minecraft:allium","label":"Harmonie carree: Allium","confidence":0.954},{"type":"color_square","target":"minecraft:potted_allium","label":"Harmonie carree: Potted Allium","confidence":0.954},{"type":"color_square","target":"minecraft:azure_bluet","label":"Harmonie carree: Azure Bluet","confidence":0.953},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.781},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.738},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.738},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.738},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.738},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.725},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.706}],"category":"building"},{"id":"minecraft:red_nether_brick_wall","name":"Red Nether Brick Wall","entry_type":"block","description":"A red Nether brick wall is a decorative wall variant of red Nether bricks that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added red Nether brick walls."}],"colors":{"primary":"#460709","dominant_hex":"#430404","average_hex":"#460709","hue_group":"red","lightness":0.151,"saturation":0.8182,"palette":["#430404","#2c0404","#340404","#540c14","#74141c","#6c1414"],"color_groups":[{"hex":"#430404","weight":0.3359,"lightness":0.1392,"saturation":0.8873,"hue_group":"red"},{"hex":"#2c0404","weight":0.2031,"lightness":0.0941,"saturation":0.8333,"hue_group":"red"},{"hex":"#340404","weight":0.1641,"lightness":0.1098,"saturation":0.8571,"hue_group":"red"},{"hex":"#540c14","weight":0.1445,"lightness":0.1882,"saturation":0.75,"hue_group":"red"},{"hex":"#74141c","weight":0.082,"lightness":0.2667,"saturation":0.7059,"hue_group":"red"},{"hex":"#6c1414","weight":0.0703,"lightness":0.251,"saturation":0.6875,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_nether_bricks.png","family":"red_nether_brick_wall","relations":[{"type":"visual_neighbors","target":"minecraft:red_nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines_plant","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_nether_brick_slab","label":"Palette proche: Red Nether Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Palette proche: Red Nether Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_nether_bricks","label":"Palette proche: Red Nether Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.896},{"type":"color_neighbors","target":"minecraft:weeping_vines","label":"Palette proche: Weeping Vines","confidence":0.868},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.864},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.832},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.815},{"type":"color_neighbors","target":"minecraft:crimson_fungus","label":"Palette proche: Crimson Fungus","confidence":0.783},{"type":"color_neighbors","target":"minecraft:potted_crimson_fungus","label":"Palette proche: Potted Crimson Fungus","confidence":0.783},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.776},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.754},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.696},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.626},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.624},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.593},{"type":"color_bridge","target":"minecraft:gilded_blackstone","label":"Pont de nuance par sous-ton: Gilded Blackstone","confidence":0.58},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.58},{"type":"color_bridge","target":"minecraft:comparator","label":"Pont de nuance par sous-ton: Comparator","confidence":0.58},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.58},{"type":"color_analogous","target":"minecraft:red_nether_brick_slab","label":"Couleurs analogues: Red Nether Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_brick_stairs","label":"Couleurs analogues: Red Nether Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_bricks","label":"Couleurs analogues: Red Nether Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_wart","label":"Couleurs analogues: Nether Wart","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_glazed_terracotta","label":"Couleurs analogues: Black Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.946},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.946},{"type":"color_analogous","target":"minecraft:netherrack","label":"Couleurs analogues: Netherrack","confidence":0.935},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_hanging_sign","label":"Contraste complementaire: Warped Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wall_hanging_sign","label":"Contraste complementaire: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:diamond_block","label":"Contraste complementaire: Diamond Block","confidence":0.932},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.931},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.926},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.926},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.959},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.959},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.951},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.95},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.88},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.787},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.784},{"type":"color_square","target":"minecraft:crying_obsidian","label":"Harmonie carree: Crying Obsidian","confidence":0.96},{"type":"color_square","target":"minecraft:lime_carpet","label":"Harmonie carree: Lime Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:lime_wool","label":"Harmonie carree: Lime Wool","confidence":0.96},{"type":"color_square","target":"minecraft:medium_amethyst_bud","label":"Harmonie carree: Medium Amethyst Bud","confidence":0.957},{"type":"color_square","target":"minecraft:amethyst_cluster","label":"Harmonie carree: Amethyst Cluster","confidence":0.957},{"type":"color_square","target":"minecraft:allium","label":"Harmonie carree: Allium","confidence":0.954},{"type":"color_square","target":"minecraft:potted_allium","label":"Harmonie carree: Potted Allium","confidence":0.954},{"type":"color_square","target":"minecraft:azure_bluet","label":"Harmonie carree: Azure Bluet","confidence":0.953},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.781},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.738},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.738},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.738},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.738},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.725},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.706}],"category":"building"},{"id":"minecraft:red_nether_bricks","name":"Red Nether Bricks","entry_type":"block","description":"Red Nether bricks are a decorative variant of Nether bricks that do not naturally generate.","history":[{"version":"1.10 16w20a","status":"added","notes":"Added red Nether brick."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb red Nether bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#460709","dominant_hex":"#430404","average_hex":"#460709","hue_group":"red","lightness":0.151,"saturation":0.8182,"palette":["#430404","#2c0404","#340404","#540c14","#74141c","#6c1414"],"color_groups":[{"hex":"#430404","weight":0.3359,"lightness":0.1392,"saturation":0.8873,"hue_group":"red"},{"hex":"#2c0404","weight":0.2031,"lightness":0.0941,"saturation":0.8333,"hue_group":"red"},{"hex":"#340404","weight":0.1641,"lightness":0.1098,"saturation":0.8571,"hue_group":"red"},{"hex":"#540c14","weight":0.1445,"lightness":0.1882,"saturation":0.75,"hue_group":"red"},{"hex":"#74141c","weight":0.082,"lightness":0.2667,"saturation":0.7059,"hue_group":"red"},{"hex":"#6c1414","weight":0.0703,"lightness":0.251,"saturation":0.6875,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_nether_bricks.png","family":"red_nether_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:red_nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines_plant","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_nether_brick_slab","label":"Palette proche: Red Nether Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Palette proche: Red Nether Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_nether_brick_wall","label":"Palette proche: Red Nether Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.896},{"type":"color_neighbors","target":"minecraft:weeping_vines","label":"Palette proche: Weeping Vines","confidence":0.868},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.864},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.832},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.815},{"type":"color_neighbors","target":"minecraft:crimson_fungus","label":"Palette proche: Crimson Fungus","confidence":0.783},{"type":"color_neighbors","target":"minecraft:potted_crimson_fungus","label":"Palette proche: Potted Crimson Fungus","confidence":0.783},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.776},{"type":"color_neighbors","target":"minecraft:netherrack","label":"Palette proche: Netherrack","confidence":0.754},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.696},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.626},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.624},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.593},{"type":"color_bridge","target":"minecraft:gilded_blackstone","label":"Pont de nuance par sous-ton: Gilded Blackstone","confidence":0.58},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.58},{"type":"color_bridge","target":"minecraft:comparator","label":"Pont de nuance par sous-ton: Comparator","confidence":0.58},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.58},{"type":"color_analogous","target":"minecraft:red_nether_brick_slab","label":"Couleurs analogues: Red Nether Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_brick_stairs","label":"Couleurs analogues: Red Nether Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_nether_brick_wall","label":"Couleurs analogues: Red Nether Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_wart","label":"Couleurs analogues: Nether Wart","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_glazed_terracotta","label":"Couleurs analogues: Black Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.946},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.946},{"type":"color_analogous","target":"minecraft:netherrack","label":"Couleurs analogues: Netherrack","confidence":0.935},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_hanging_sign","label":"Contraste complementaire: Warped Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wall_hanging_sign","label":"Contraste complementaire: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:diamond_block","label":"Contraste complementaire: Diamond Block","confidence":0.932},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.931},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.926},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.926},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.959},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.959},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.951},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.95},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.88},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.787},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.784},{"type":"color_square","target":"minecraft:crying_obsidian","label":"Harmonie carree: Crying Obsidian","confidence":0.96},{"type":"color_square","target":"minecraft:lime_carpet","label":"Harmonie carree: Lime Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:lime_wool","label":"Harmonie carree: Lime Wool","confidence":0.96},{"type":"color_square","target":"minecraft:medium_amethyst_bud","label":"Harmonie carree: Medium Amethyst Bud","confidence":0.957},{"type":"color_square","target":"minecraft:amethyst_cluster","label":"Harmonie carree: Amethyst Cluster","confidence":0.957},{"type":"color_square","target":"minecraft:allium","label":"Harmonie carree: Allium","confidence":0.954},{"type":"color_square","target":"minecraft:potted_allium","label":"Harmonie carree: Potted Allium","confidence":0.954},{"type":"color_square","target":"minecraft:azure_bluet","label":"Harmonie carree: Azure Bluet","confidence":0.953},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.781},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.738},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.738},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.738},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.738},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.725},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.706}],"category":"building"},{"id":"minecraft:red_sand","name":"Red Sand","entry_type":"block","description":"Red sand is a variant of sand found exclusively in badlands biomes. It can be used in place of sand in many crafting recipes, with the exception of concrete powder.","history":[{"version":"1.7.2 13w39a","status":"added","notes":"Added red sand."},{"version":"19w05a","status":"added","notes":"Added wandering traders , which sell red sand, making red sand a renewable resource ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb red sand, providing the football/regular effect to the mob."}],"colors":{"primary":"#bf6721","dominant_hex":"#bc6424","average_hex":"#bf6721","hue_group":"red","lightness":0.4392,"saturation":0.7054,"palette":["#bc6424","#b4641c","#cc6c24","#ac5414","#d4742c","#dc7c34"],"color_groups":[{"hex":"#bc6424","weight":0.4219,"lightness":0.4392,"saturation":0.6786,"hue_group":"red"},{"hex":"#b4641c","weight":0.2617,"lightness":0.4078,"saturation":0.7308,"hue_group":"red"},{"hex":"#cc6c24","weight":0.2266,"lightness":0.4706,"saturation":0.7,"hue_group":"red"},{"hex":"#ac5414","weight":0.0391,"lightness":0.3765,"saturation":0.7917,"hue_group":"red"},{"hex":"#d4742c","weight":0.0312,"lightness":0.502,"saturation":0.6614,"hue_group":"red"},{"hex":"#dc7c34","weight":0.0195,"lightness":0.5333,"saturation":0.7059,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_sand.png","family":"red_sand","relations":[{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Palette proche: Smooth Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_stained_glass","label":"Palette proche: Orange Stained Glass","confidence":0.93},{"type":"color_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Palette proche: Orange Stained Glass Pane","confidence":0.918},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.694},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.659},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.659},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.658},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.658},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.656},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.656},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.656},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.653},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.653},{"type":"color_analogous","target":"minecraft:cut_red_sandstone","label":"Couleurs analogues: Cut Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone","label":"Couleurs analogues: Smooth Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_slab","label":"Couleurs analogues: Smooth Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_stairs","label":"Couleurs analogues: Smooth Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone","label":"Couleurs analogues: Red Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.95},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.95},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.873},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.871},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.849},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.849},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.842},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.951},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.937},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.935},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.931},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.906},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.906},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.877},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.945},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.84},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.837},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.834},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.834},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.821},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.802},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.785},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:red_sandstone","name":"Red Sandstone","entry_type":"block","description":"Red sandstone is a variant of sandstone. It comes in three other variants: cut red sandstone, chiseled red sandstone, and smooth red sandstone.","history":[{"version":"1.8 14w32a","status":"added","notes":"Added red sandstone as a solution to MC-55228 ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb red sandstone, providing the football/regular effect to the mob."}],"colors":{"primary":"#bb631d","dominant_hex":"#c46c24","average_hex":"#bb631d","hue_group":"red","lightness":0.4235,"saturation":0.7315,"palette":["#c46c24","#ac5414","#d5752d","#9c4c0c","#cc6c24","#b4641c"],"color_groups":[{"hex":"#c46c24","weight":0.2578,"lightness":0.4549,"saturation":0.6897,"hue_group":"red"},{"hex":"#ac5414","weight":0.1914,"lightness":0.3765,"saturation":0.7917,"hue_group":"red"},{"hex":"#d5752d","weight":0.1836,"lightness":0.5059,"saturation":0.6667,"hue_group":"red"},{"hex":"#9c4c0c","weight":0.1523,"lightness":0.3294,"saturation":0.8571,"hue_group":"red"},{"hex":"#cc6c24","weight":0.125,"lightness":0.4706,"saturation":0.7,"hue_group":"red"},{"hex":"#b4641c","weight":0.0898,"lightness":0.4078,"saturation":0.7308,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_sandstone.png","family":"red_sandstone","relations":[{"type":"variants","target":"minecraft:red_sandstone_slab","label":"Same family: red_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:red_sandstone_slab","label":"Related set: red_sandstone","confidence":0.8},{"type":"variants","target":"minecraft:red_sandstone_stairs","label":"Same family: red_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:red_sandstone_stairs","label":"Related set: red_sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sand","label":"Palette proche: Red Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Palette proche: Smooth Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Palette proche: Orange Stained Glass Pane","confidence":0.897},{"type":"color_neighbors","target":"minecraft:orange_stained_glass","label":"Palette proche: Orange Stained Glass","confidence":0.883},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.679},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.645},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.645},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.641},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.641},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.639},{"type":"color_bridge","target":"minecraft:brown_glazed_terracotta","label":"Pont de nuance par sous-ton: Brown Glazed Terracotta","confidence":0.637},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.636},{"type":"color_analogous","target":"minecraft:red_sandstone_wall","label":"Couleurs analogues: Red Sandstone Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_red_sandstone","label":"Couleurs analogues: Chiseled Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone","label":"Couleurs analogues: Cut Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone","label":"Couleurs analogues: Smooth Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_slab","label":"Couleurs analogues: Smooth Red Sandstone Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.948},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.948},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.871},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.868},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.846},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.846},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.839},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.959},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.949},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.939},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.933},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.929},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.904},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.904},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.875},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.943},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.839},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.838},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.832},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.832},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.819},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.803},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.783},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:red_sandstone_slab","name":"Red Sandstone Slab","entry_type":"block","description":"A red sandstone slab is a decorative slab variant of red sandstone that does not generate naturally and is used for building.","history":[{"version":"1.8 14w32a","status":"added","notes":"Added red sandstone slabs."}],"colors":{"primary":"#b5621f","dominant_hex":"#bc6424","average_hex":"#b5621f","hue_group":"red","lightness":0.4157,"saturation":0.7075,"palette":["#bc6424","#b4641c","#ac5c1c","#a45414","#cc6c24"],"color_groups":[{"hex":"#bc6424","weight":0.4375,"lightness":0.4392,"saturation":0.6786,"hue_group":"red"},{"hex":"#b4641c","weight":0.3281,"lightness":0.4078,"saturation":0.7308,"hue_group":"red"},{"hex":"#ac5c1c","weight":0.1602,"lightness":0.3922,"saturation":0.72,"hue_group":"red"},{"hex":"#a45414","weight":0.0391,"lightness":0.3608,"saturation":0.7826,"hue_group":"red"},{"hex":"#cc6c24","weight":0.0352,"lightness":0.4706,"saturation":0.7,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_sandstone_top.png","family":"red_sandstone","relations":[{"type":"variants","target":"minecraft:red_sandstone","label":"Same family: red_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:red_sandstone","label":"Related set: red_sandstone","confidence":0.8},{"type":"variants","target":"minecraft:red_sandstone_stairs","label":"Same family: red_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:red_sandstone_stairs","label":"Related set: red_sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Palette proche: Smooth Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sand","label":"Palette proche: Red Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_terracotta","label":"Palette proche: Orange Terracotta","confidence":0.899},{"type":"color_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Palette proche: Orange Stained Glass Pane","confidence":0.878},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.688},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.651},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.645},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.644},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.644},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.644},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.643},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.643},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone","label":"Couleurs analogues: Smooth Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_slab","label":"Couleurs analogues: Smooth Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_stairs","label":"Couleurs analogues: Smooth Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_red_sandstone","label":"Couleurs analogues: Chiseled Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone","label":"Couleurs analogues: Cut Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone","label":"Couleurs analogues: Red Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.943},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.943},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.943},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.866},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.863},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.842},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.842},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.834},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.959},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.943},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.94},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.929},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.914},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.914},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.868},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.935},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.846},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.843},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.831},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.83},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.811},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.776},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:red_sandstone_stairs","name":"Red Sandstone Stairs","entry_type":"block","description":"Red sandstone stairs are a decorative stairs variant of red sandstone that does not generate naturally and is used for building.","history":[{"version":"1.8 14w32a","status":"added","notes":"Added red sandstone stairs."}],"colors":{"primary":"#b5621f","dominant_hex":"#bc6424","average_hex":"#b5621f","hue_group":"red","lightness":0.4157,"saturation":0.7075,"palette":["#bc6424","#b4641c","#ac5c1c","#a45414","#cc6c24"],"color_groups":[{"hex":"#bc6424","weight":0.4375,"lightness":0.4392,"saturation":0.6786,"hue_group":"red"},{"hex":"#b4641c","weight":0.3281,"lightness":0.4078,"saturation":0.7308,"hue_group":"red"},{"hex":"#ac5c1c","weight":0.1602,"lightness":0.3922,"saturation":0.72,"hue_group":"red"},{"hex":"#a45414","weight":0.0391,"lightness":0.3608,"saturation":0.7826,"hue_group":"red"},{"hex":"#cc6c24","weight":0.0352,"lightness":0.4706,"saturation":0.7,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_sandstone_top.png","family":"red_sandstone","relations":[{"type":"variants","target":"minecraft:red_sandstone","label":"Same family: red_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:red_sandstone","label":"Related set: red_sandstone","confidence":0.8},{"type":"variants","target":"minecraft:red_sandstone_slab","label":"Same family: red_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:red_sandstone_slab","label":"Related set: red_sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Palette proche: Smooth Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sand","label":"Palette proche: Red Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_terracotta","label":"Palette proche: Orange Terracotta","confidence":0.899},{"type":"color_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Palette proche: Orange Stained Glass Pane","confidence":0.878},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.688},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.651},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.645},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.644},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.644},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.644},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.643},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.643},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone","label":"Couleurs analogues: Smooth Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_slab","label":"Couleurs analogues: Smooth Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_stairs","label":"Couleurs analogues: Smooth Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_red_sandstone","label":"Couleurs analogues: Chiseled Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone","label":"Couleurs analogues: Cut Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone","label":"Couleurs analogues: Red Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.943},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.943},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.943},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.866},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.863},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.842},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.842},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.834},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.959},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.943},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.94},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.929},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.914},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.914},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.868},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.935},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.846},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.843},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.831},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.83},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.811},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.776},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:red_sandstone_wall","name":"Red Sandstone Wall","entry_type":"block","description":"A red sandstone wall is a decorative wall variant of red sandstone that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added red sandstone walls."}],"colors":{"primary":"#bb631d","dominant_hex":"#c46c24","average_hex":"#bb631d","hue_group":"red","lightness":0.4235,"saturation":0.7315,"palette":["#c46c24","#ac5414","#d5752d","#9c4c0c","#cc6c24","#b4641c"],"color_groups":[{"hex":"#c46c24","weight":0.2578,"lightness":0.4549,"saturation":0.6897,"hue_group":"red"},{"hex":"#ac5414","weight":0.1914,"lightness":0.3765,"saturation":0.7917,"hue_group":"red"},{"hex":"#d5752d","weight":0.1836,"lightness":0.5059,"saturation":0.6667,"hue_group":"red"},{"hex":"#9c4c0c","weight":0.1523,"lightness":0.3294,"saturation":0.8571,"hue_group":"red"},{"hex":"#cc6c24","weight":0.125,"lightness":0.4706,"saturation":0.7,"hue_group":"red"},{"hex":"#b4641c","weight":0.0898,"lightness":0.4078,"saturation":0.7308,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_sandstone.png","family":"red_sandstone_wall","relations":[{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sand","label":"Palette proche: Red Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Palette proche: Smooth Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Palette proche: Orange Stained Glass Pane","confidence":0.897},{"type":"color_neighbors","target":"minecraft:orange_stained_glass","label":"Palette proche: Orange Stained Glass","confidence":0.883},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.679},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.645},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.645},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.641},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.641},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.639},{"type":"color_bridge","target":"minecraft:brown_glazed_terracotta","label":"Pont de nuance par sous-ton: Brown Glazed Terracotta","confidence":0.637},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.636},{"type":"color_analogous","target":"minecraft:red_sandstone","label":"Couleurs analogues: Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_red_sandstone","label":"Couleurs analogues: Chiseled Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone","label":"Couleurs analogues: Cut Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone","label":"Couleurs analogues: Smooth Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_slab","label":"Couleurs analogues: Smooth Red Sandstone Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.948},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.948},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.871},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.868},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.846},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.846},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.839},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.959},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.949},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.939},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.933},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.929},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.904},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.904},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.875},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.943},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.839},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.838},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.832},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.832},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.819},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.803},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.783},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:red_shulker_box","name":"Red Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#8c1f1e","dominant_hex":"#9c2424","average_hex":"#8c1f1e","hue_group":"red","lightness":0.3333,"saturation":0.6471,"palette":["#9c2424","#841c1c","#741414","#7c1a1c","#942424","#6c1414"],"color_groups":[{"hex":"#9c2424","weight":0.4727,"lightness":0.3765,"saturation":0.625,"hue_group":"red"},{"hex":"#841c1c","weight":0.1719,"lightness":0.3137,"saturation":0.65,"hue_group":"red"},{"hex":"#741414","weight":0.1172,"lightness":0.2667,"saturation":0.7059,"hue_group":"red"},{"hex":"#7c1a1c","weight":0.1133,"lightness":0.2941,"saturation":0.6533,"hue_group":"red"},{"hex":"#942424","weight":0.0742,"lightness":0.3608,"saturation":0.6087,"hue_group":"red"},{"hex":"#6c1414","weight":0.0508,"lightness":0.251,"saturation":0.6875,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_shulker_box.png","family":"red_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_nylium","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_concrete","label":"Palette proche: Red Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.921},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.908},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.908},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.906},{"type":"color_neighbors","target":"minecraft:fire_coral","label":"Palette proche: Fire Coral","confidence":0.899},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.894},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.885},{"type":"color_neighbors","target":"minecraft:red_stained_glass_pane","label":"Palette proche: Red Stained Glass Pane","confidence":0.877},{"type":"color_neighbors","target":"minecraft:red_glazed_terracotta","label":"Palette proche: Red Glazed Terracotta","confidence":0.874},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.684},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.671},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.664},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.659},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.659},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.644},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.638},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.63},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.63},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.63},{"type":"color_analogous","target":"minecraft:red_concrete","label":"Couleurs analogues: Red Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_nylium","label":"Couleurs analogues: Crimson Nylium","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_candle","label":"Couleurs analogues: Red Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_carpet","label":"Couleurs analogues: Red Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_wool","label":"Couleurs analogues: Red Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass_pane","label":"Couleurs analogues: Red Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_mushroom_block","label":"Couleurs analogues: Red Mushroom Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass","label":"Couleurs analogues: Red Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.96},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.958},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.928},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.928},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.922},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.921},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.889},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.878},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.878},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.877},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.868},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.8},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.951},{"type":"color_square","target":"minecraft:cactus","label":"Harmonie carree: Cactus","confidence":0.935},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.613},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.58},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.571},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.571},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.571},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.571},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.557},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":""},{"id":"minecraft:red_stained_glass","name":"Red Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#993333","dominant_hex":"#9c3434","average_hex":"#993333","hue_group":"red","lightness":0.4,"saturation":0.5,"palette":["#9c3434"],"color_groups":[{"hex":"#9c3434","weight":1.0,"lightness":0.4078,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_stained_glass.png","family":"red_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_stained_glass_pane","label":"Palette proche: Red Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_terracotta","label":"Palette proche: Red Terracotta","confidence":0.889},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.871},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.871},{"type":"color_neighbors","target":"minecraft:red_concrete","label":"Palette proche: Red Concrete","confidence":0.859},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.855},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.841},{"type":"color_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Palette proche: Mangrove Hanging Sign","confidence":0.839},{"type":"color_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Palette proche: Mangrove Wall Hanging Sign","confidence":0.839},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_log","label":"Palette proche: Stripped Mangrove Log","confidence":0.839},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Palette proche: Stripped Mangrove Wood","confidence":0.839},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.732},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.73},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.722},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.708},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.696},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.696},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.689},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.689},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.688},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.688},{"type":"color_analogous","target":"minecraft:red_stained_glass_pane","label":"Couleurs analogues: Red Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete_powder","label":"Couleurs analogues: Red Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_candle","label":"Couleurs analogues: Red Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete","label":"Couleurs analogues: Red Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_nylium","label":"Couleurs analogues: Crimson Nylium","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_terracotta","label":"Couleurs analogues: Pink Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_mushroom_block","label":"Couleurs analogues: Red Mushroom Block","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.936},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.93},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.93},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.951},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.95},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.921},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.911},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.911},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.868},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.835},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.833},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.96},{"type":"color_square","target":"minecraft:cactus","label":"Harmonie carree: Cactus","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.949},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.949},{"type":"color_square","target":"minecraft:lime_shulker_box","label":"Harmonie carree: Lime Shulker Box","confidence":0.945},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.554},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_sign","label":"Contraste clair sombre: Cherry Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:red_stained_glass_pane","name":"Red Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#933131","dominant_hex":"#943434","average_hex":"#933131","hue_group":"red","lightness":0.3843,"saturation":0.5,"palette":["#943434","#9c3434","#8c2c2c"],"color_groups":[{"hex":"#943434","weight":0.375,"lightness":0.3922,"saturation":0.48,"hue_group":"red"},{"hex":"#9c3434","weight":0.375,"lightness":0.4078,"saturation":0.5,"hue_group":"red"},{"hex":"#8c2c2c","weight":0.25,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_stained_glass_pane_top.png","family":"red_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_stained_glass","label":"Palette proche: Red Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_terracotta","label":"Palette proche: Red Terracotta","confidence":0.921},{"type":"color_neighbors","target":"minecraft:red_concrete","label":"Palette proche: Red Concrete","confidence":0.905},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.893},{"type":"color_neighbors","target":"minecraft:red_wool","label":"Palette proche: Red Wool","confidence":0.893},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.88},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.877},{"type":"color_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Palette proche: Mangrove Hanging Sign","confidence":0.871},{"type":"color_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Palette proche: Mangrove Wall Hanging Sign","confidence":0.871},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_log","label":"Palette proche: Stripped Mangrove Log","confidence":0.871},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Palette proche: Stripped Mangrove Wood","confidence":0.871},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.74},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.736},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.714},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.705},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.698},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.698},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.696},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.696},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.686},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.686},{"type":"color_analogous","target":"minecraft:red_stained_glass","label":"Couleurs analogues: Red Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_candle","label":"Couleurs analogues: Red Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete","label":"Couleurs analogues: Red Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_nylium","label":"Couleurs analogues: Crimson Nylium","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:netherrack","label":"Couleurs analogues: Netherrack","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_terracotta","label":"Couleurs analogues: Pink Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_mushroom_block","label":"Couleurs analogues: Red Mushroom Block","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.96},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.936},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.93},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.93},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.951},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.95},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.921},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.911},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.911},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.868},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.835},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.833},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.96},{"type":"color_square","target":"minecraft:cactus","label":"Harmonie carree: Cactus","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.949},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.949},{"type":"color_square","target":"minecraft:lime_shulker_box","label":"Harmonie carree: Lime Shulker Box","confidence":0.945},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.569},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_sign","label":"Contraste clair sombre: Cherry Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:red_terracotta","name":"Red Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#8f3d2f","dominant_hex":"#8c3c2c","average_hex":"#8f3d2f","hue_group":"red","lightness":0.3725,"saturation":0.5053,"palette":["#8c3c2c","#944434","#943c34","#943c2c","#8c3c34"],"color_groups":[{"hex":"#8c3c2c","weight":0.5586,"lightness":0.3608,"saturation":0.5217,"hue_group":"red"},{"hex":"#944434","weight":0.1719,"lightness":0.3922,"saturation":0.48,"hue_group":"red"},{"hex":"#943c34","weight":0.1211,"lightness":0.3922,"saturation":0.48,"hue_group":"red"},{"hex":"#943c2c","weight":0.1055,"lightness":0.3765,"saturation":0.5417,"hue_group":"red"},{"hex":"#8c3c34","weight":0.043,"lightness":0.3765,"saturation":0.4583,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_terracotta.png","family":"red_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:red_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:poppy","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_poppy","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_stained_glass_pane","label":"Palette proche: Red Stained Glass Pane","confidence":0.921},{"type":"color_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Palette proche: Mangrove Hanging Sign","confidence":0.89},{"type":"color_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Palette proche: Mangrove Wall Hanging Sign","confidence":0.89},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_log","label":"Palette proche: Stripped Mangrove Log","confidence":0.89},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Palette proche: Stripped Mangrove Wood","confidence":0.89},{"type":"color_neighbors","target":"minecraft:red_stained_glass","label":"Palette proche: Red Stained Glass","confidence":0.889},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.887},{"type":"color_neighbors","target":"minecraft:copper_bars","label":"Palette proche: Copper Bars","confidence":0.882},{"type":"color_neighbors","target":"minecraft:waxed_copper_bars","label":"Palette proche: Waxed Copper Bars","confidence":0.882},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.876},{"type":"color_neighbors","target":"minecraft:flower_pot","label":"Palette proche: Flower Pot","confidence":0.875},{"type":"color_neighbors","target":"minecraft:potted_bamboo","label":"Palette proche: Potted Bamboo","confidence":0.875},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.745},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.741},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.728},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.726},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.723},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.723},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.712},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.712},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.705},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.705},{"type":"color_analogous","target":"minecraft:crimson_fungus","label":"Couleurs analogues: Crimson Fungus","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_crimson_fungus","label":"Couleurs analogues: Potted Crimson Fungus","confidence":0.96},{"type":"color_analogous","target":"minecraft:redstone_block","label":"Couleurs analogues: Redstone Block","confidence":0.958},{"type":"color_analogous","target":"minecraft:nether_gold_ore","label":"Couleurs analogues: Nether Gold Ore","confidence":0.944},{"type":"color_analogous","target":"minecraft:redstone_torch","label":"Couleurs analogues: Redstone Torch","confidence":0.936},{"type":"color_analogous","target":"minecraft:tnt","label":"Couleurs analogues: Tnt","confidence":0.923},{"type":"color_analogous","target":"minecraft:ancient_debris","label":"Couleurs analogues: Ancient Debris","confidence":0.913},{"type":"color_analogous","target":"minecraft:mangrove_hanging_sign","label":"Couleurs analogues: Mangrove Hanging Sign","confidence":0.908},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.928},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.928},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.878},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.863},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.847},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.77},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.751},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.686},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.68},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.668},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.668},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.668},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.668},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.96},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.96},{"type":"color_square","target":"minecraft:potted_spruce_sapling","label":"Harmonie carree: Potted Spruce Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:spruce_sapling","label":"Harmonie carree: Spruce Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.952},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.944},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.942},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.904},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.579},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_trapdoor","label":"Contraste clair sombre: Cherry Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55}],"category":"building"},{"id":"minecraft:red_tulip","name":"Red Tulip","entry_type":"block","description":"Tulips are a kind of flower found in plains and flower forests that come in multiple colored variants: red, orange, white, and pink. They yield dyes of their respective colors, with the exception of white tulips, which yield light gray dye, and all of them are used to craft suspicious stew.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added tulips."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell tulips."}],"colors":{"primary":"#5a8121","dominant_hex":"#147c04","average_hex":"#5a8121","hue_group":"yellow","lightness":0.3176,"saturation":0.5926,"palette":["#147c04","#54ac2c","#549c2c","#4c8c2c","#ef3731","#ac2424"],"color_groups":[{"hex":"#147c04","weight":0.2653,"lightness":0.251,"saturation":0.9375,"hue_group":"green"},{"hex":"#54ac2c","weight":0.2449,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#549c2c","weight":0.1633,"lightness":0.3922,"saturation":0.56,"hue_group":"green"},{"hex":"#4c8c2c","weight":0.1429,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#ef3731","weight":0.102,"lightness":0.5647,"saturation":0.8559,"hue_group":"red"},{"hex":"#ac2424","weight":0.0816,"lightness":0.4078,"saturation":0.6538,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_tulip.png","family":"red_tulip","relations":[{"type":"visual_neighbors","target":"minecraft:potted_red_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_orange_tulip","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:podzol","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_acacia_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.931},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.931},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.872},{"type":"color_neighbors","target":"minecraft:dandelion","label":"Palette proche: Dandelion","confidence":0.806},{"type":"color_neighbors","target":"minecraft:potted_dandelion","label":"Palette proche: Potted Dandelion","confidence":0.806},{"type":"color_neighbors","target":"minecraft:poppy","label":"Palette proche: Poppy","confidence":0.804},{"type":"color_neighbors","target":"minecraft:potted_poppy","label":"Palette proche: Potted Poppy","confidence":0.804},{"type":"color_neighbors","target":"minecraft:rose_bush","label":"Palette proche: Rose Bush","confidence":0.789},{"type":"color_neighbors","target":"minecraft:pink_tulip","label":"Palette proche: Pink Tulip","confidence":0.783},{"type":"color_neighbors","target":"minecraft:potted_pink_tulip","label":"Palette proche: Potted Pink Tulip","confidence":0.783},{"type":"color_neighbors","target":"minecraft:seagrass","label":"Palette proche: Seagrass","confidence":0.78},{"type":"color_bridge","target":"minecraft:poppy","label":"Pont de nuance par palette: Poppy","confidence":0.839},{"type":"color_bridge","target":"minecraft:potted_poppy","label":"Pont de nuance par palette: Potted Poppy","confidence":0.839},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.826},{"type":"color_bridge","target":"minecraft:wheat","label":"Pont de nuance par palette: Wheat","confidence":0.698},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.664},{"type":"color_bridge","target":"minecraft:raw_copper_block","label":"Pont de nuance par palette: Raw Copper Block","confidence":0.654},{"type":"color_bridge","target":"minecraft:sniffer_egg","label":"Pont de nuance par palette: Sniffer Egg","confidence":0.646},{"type":"color_bridge","target":"minecraft:red_candle","label":"Pont de nuance par palette: Red Candle","confidence":0.601},{"type":"color_bridge","target":"minecraft:red_carpet","label":"Pont de nuance par palette: Red Carpet","confidence":0.594},{"type":"color_bridge","target":"minecraft:red_wool","label":"Pont de nuance par palette: Red Wool","confidence":0.594},{"type":"color_analogous","target":"minecraft:potted_red_tulip","label":"Couleurs analogues: Potted Red Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo","label":"Couleurs analogues: Bamboo","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_sapling","label":"Couleurs analogues: Birch Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_birch_sapling","label":"Couleurs analogues: Potted Birch Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_sapling","label":"Couleurs analogues: Oak Sapling","confidence":0.95},{"type":"color_analogous","target":"minecraft:potted_oak_sapling","label":"Couleurs analogues: Potted Oak Sapling","confidence":0.95},{"type":"color_analogous","target":"minecraft:orange_tulip","label":"Couleurs analogues: Orange Tulip","confidence":0.949},{"type":"color_analogous","target":"minecraft:potted_orange_tulip","label":"Couleurs analogues: Potted Orange Tulip","confidence":0.949},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.96},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.945},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.938},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.887},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.88},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.88},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.874},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral","label":"Harmonie triadique: Brain Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.959},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.959},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.959},{"type":"color_triad","target":"minecraft:light_blue_glazed_terracotta","label":"Harmonie triadique: Light Blue Glazed Terracotta","confidence":0.95},{"type":"color_square","target":"minecraft:fire_coral_fan","label":"Harmonie carree: Fire Coral Fan","confidence":0.96},{"type":"color_square","target":"minecraft:fire_coral_wall_fan","label":"Harmonie carree: Fire Coral Wall Fan","confidence":0.96},{"type":"color_square","target":"minecraft:fire_coral_block","label":"Harmonie carree: Fire Coral Block","confidence":0.96},{"type":"color_square","target":"minecraft:warped_button","label":"Harmonie carree: Warped Button","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence","label":"Harmonie carree: Warped Fence","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence_gate","label":"Harmonie carree: Warped Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_planks","label":"Harmonie carree: Warped Planks","confidence":0.96},{"type":"color_square","target":"minecraft:warped_pressure_plate","label":"Harmonie carree: Warped Pressure Plate","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.617},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.584},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.561},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone","label":"Contraste clair sombre: End Stone","confidence":0.55}],"category":"natural"},{"id":"minecraft:red_wall_banner","name":"Red Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"red_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:red_wool","name":"Red Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#a12723","dominant_hex":"#932424","average_hex":"#a12723","hue_group":"red","lightness":0.3843,"saturation":0.6429,"palette":["#932424","#9c2424","#ac2c24","#a42c24","#bc342c","#a42424"],"color_groups":[{"hex":"#932424","weight":0.25,"lightness":0.3588,"saturation":0.6066,"hue_group":"red"},{"hex":"#9c2424","weight":0.25,"lightness":0.3765,"saturation":0.625,"hue_group":"red"},{"hex":"#ac2c24","weight":0.2109,"lightness":0.4078,"saturation":0.6538,"hue_group":"red"},{"hex":"#a42c24","weight":0.1484,"lightness":0.3922,"saturation":0.64,"hue_group":"red"},{"hex":"#bc342c","weight":0.082,"lightness":0.4549,"saturation":0.6207,"hue_group":"red"},{"hex":"#a42424","weight":0.0586,"lightness":0.3922,"saturation":0.64,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_wool.png","family":"red_wool","relations":[{"type":"visual_neighbors","target":"minecraft:red_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_fungus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:red_carpet","label":"Palette proche: Red Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_glazed_terracotta","label":"Palette proche: Red Glazed Terracotta","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_concrete","label":"Palette proche: Red Concrete","confidence":0.939},{"type":"color_neighbors","target":"minecraft:fire_coral_block","label":"Palette proche: Fire Coral Block","confidence":0.91},{"type":"color_neighbors","target":"minecraft:fire_coral_fan","label":"Palette proche: Fire Coral Fan","confidence":0.906},{"type":"color_neighbors","target":"minecraft:fire_coral_wall_fan","label":"Palette proche: Fire Coral Wall Fan","confidence":0.906},{"type":"color_neighbors","target":"minecraft:fire_coral","label":"Palette proche: Fire Coral","confidence":0.905},{"type":"color_neighbors","target":"minecraft:red_concrete_powder","label":"Palette proche: Red Concrete Powder","confidence":0.901},{"type":"color_neighbors","target":"minecraft:red_mushroom_block","label":"Palette proche: Red Mushroom Block","confidence":0.893},{"type":"color_neighbors","target":"minecraft:red_stained_glass_pane","label":"Palette proche: Red Stained Glass Pane","confidence":0.893},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.735},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.713},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.697},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.672},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.67},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.667},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.65},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.643},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.635},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.635},{"type":"color_analogous","target":"minecraft:red_carpet","label":"Couleurs analogues: Red Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_candle","label":"Couleurs analogues: Red Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete_powder","label":"Couleurs analogues: Red Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_door","label":"Couleurs analogues: Mangrove Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_shelf","label":"Couleurs analogues: Mangrove Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:weeping_vines_plant","label":"Couleurs analogues: Weeping Vines Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_stained_glass_pane","label":"Couleurs analogues: Red Stained Glass Pane","confidence":0.958},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.96},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.956},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.956},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.953},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.94},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.94},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.93},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.919},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.87},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.869},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.837},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.826},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.826},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.748},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.959},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.959},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.957},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.955},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.925},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.924},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.909},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.909},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.565},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55}],"category":"decorative"},{"id":"minecraft:redstone","name":"Redstone","entry_type":"item","description":"Redstone may refer to:","history":[{"version":"wiki","status":"observed","notes":"Wiki revision 3530719 at 2026-04-13T10:49:25Z."}],"colors":{"primary":"#6c0500","dominant_hex":"#2e0404","average_hex":"#6c0500","hue_group":"red","lightness":0.2118,"saturation":1.0,"palette":["#2e0404","#440404","#ac0c04","#5c0404","#740404","#fc0404"],"color_groups":[{"hex":"#2e0404","weight":0.25,"lightness":0.098,"saturation":0.84,"hue_group":"red"},{"hex":"#440404","weight":0.2159,"lightness":0.1412,"saturation":0.8889,"hue_group":"red"},{"hex":"#ac0c04","weight":0.2045,"lightness":0.3451,"saturation":0.9545,"hue_group":"red"},{"hex":"#5c0404","weight":0.1364,"lightness":0.1882,"saturation":0.9167,"hue_group":"red"},{"hex":"#740404","weight":0.1023,"lightness":0.2353,"saturation":0.9333,"hue_group":"red"},{"hex":"#fc0404","weight":0.0909,"lightness":0.502,"saturation":0.9764,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/redstone.png","family":"redstone","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:magma_cube_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_soup","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fermented_spider_eye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_eye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rotten_flesh","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:apple","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_stew","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa_beans","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:saddle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_bundle","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:redstone_block","name":"Redstone Block","entry_type":"block","description":"A block of redstone, internally known as a redstone block, is a mineral block equivalent to nine redstone dust. It acts as an always active redstone power source that can be moved by pistons.","history":[{"version":"1.5 13w01a","status":"added","notes":"Added blocks of redstone."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of redstone, providing the football/regular effect to the mob."}],"colors":{"primary":"#b01905","dominant_hex":"#e4240c","average_hex":"#b01905","hue_group":"red","lightness":0.3549,"saturation":0.9448,"palette":["#e4240c","#740c04","#a41c0c","#941404","#bc240c"],"color_groups":[{"hex":"#e4240c","weight":0.2891,"lightness":0.4706,"saturation":0.9,"hue_group":"red"},{"hex":"#740c04","weight":0.1836,"lightness":0.2353,"saturation":0.9333,"hue_group":"red"},{"hex":"#a41c0c","weight":0.1797,"lightness":0.3451,"saturation":0.8636,"hue_group":"red"},{"hex":"#941404","weight":0.1758,"lightness":0.298,"saturation":0.9474,"hue_group":"red"},{"hex":"#bc240c","weight":0.1719,"lightness":0.3922,"saturation":0.88,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/redstone_block.png","family":"redstone_block","relations":[{"type":"visual_neighbors","target":"minecraft:orange_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrier","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines_plant","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_wool","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:barrier","label":"Palette proche: Barrier","confidence":0.858},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.857},{"type":"color_neighbors","target":"minecraft:weeping_vines","label":"Palette proche: Weeping Vines","confidence":0.848},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.833},{"type":"color_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Palette proche: Chiseled Resin Bricks","confidence":0.783},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.783},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.78},{"type":"color_neighbors","target":"minecraft:resin_brick_stairs","label":"Palette proche: Resin Brick Stairs","confidence":0.78},{"type":"color_neighbors","target":"minecraft:resin_brick_wall","label":"Palette proche: Resin Brick Wall","confidence":0.78},{"type":"color_neighbors","target":"minecraft:resin_bricks","label":"Palette proche: Resin Bricks","confidence":0.78},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.77},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.764},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.672},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.655},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.617},{"type":"color_bridge","target":"minecraft:hay_block","label":"Pont de nuance par palette: Hay Block","confidence":0.599},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.58},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.58},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.58},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.58},{"type":"color_analogous","target":"minecraft:crimson_fungus","label":"Couleurs analogues: Crimson Fungus","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_crimson_fungus","label":"Couleurs analogues: Potted Crimson Fungus","confidence":0.96},{"type":"color_analogous","target":"minecraft:redstone_torch","label":"Couleurs analogues: Redstone Torch","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_terracotta","label":"Couleurs analogues: Red Terracotta","confidence":0.958},{"type":"color_analogous","target":"minecraft:tnt","label":"Couleurs analogues: Tnt","confidence":0.958},{"type":"color_analogous","target":"minecraft:mangrove_hanging_sign","label":"Couleurs analogues: Mangrove Hanging Sign","confidence":0.95},{"type":"color_analogous","target":"minecraft:mangrove_wall_hanging_sign","label":"Couleurs analogues: Mangrove Wall Hanging Sign","confidence":0.95},{"type":"color_analogous","target":"minecraft:stripped_mangrove_log","label":"Couleurs analogues: Stripped Mangrove Log","confidence":0.95},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.942},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.917},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.906},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.883},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.88},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.877},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.859},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.86},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.782},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.649},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.648},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.616},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.605},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.605},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.588},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.957},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.957},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.951},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.949},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.941},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.914},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.868},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.868},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.583},{"type":"value_contrast","target":"minecraft:pink_stained_glass","label":"Contraste clair sombre: Pink Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:target","label":"Contraste clair sombre: Target","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55}],"category":"redstone"},{"id":"minecraft:redstone_lamp","name":"Redstone Lamp","entry_type":"block","description":"A redstone lamp is a solid block that produces light while it is receiving redstone power.","history":[{"version":"1.2.1 12w07a","status":"added","notes":"Added redstone lamps."},{"version":"1.2.4 release","status":"added","notes":"added to redstone lamps."}],"colors":{"primary":"#5f371e","dominant_hex":"#341c14","average_hex":"#5f371e","hue_group":"red","lightness":0.2451,"saturation":0.52,"palette":["#341c14","#844c2c","#5c3414","#945830","#a86838","#442c1c"],"color_groups":[{"hex":"#341c14","weight":0.3906,"lightness":0.1412,"saturation":0.4444,"hue_group":"red"},{"hex":"#844c2c","weight":0.1797,"lightness":0.3451,"saturation":0.5,"hue_group":"red"},{"hex":"#5c3414","weight":0.1367,"lightness":0.2196,"saturation":0.6429,"hue_group":"red"},{"hex":"#945830","weight":0.1094,"lightness":0.3843,"saturation":0.5102,"hue_group":"red"},{"hex":"#a86838","weight":0.1055,"lightness":0.4392,"saturation":0.5,"hue_group":"red"},{"hex":"#442c1c","weight":0.0781,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/redstone_lamp.png","family":"redstone_lamp","relations":[{"type":"visual_neighbors","target":"minecraft:brown_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brown_carpet","label":"Palette proche: Brown Carpet","confidence":0.866},{"type":"color_neighbors","target":"minecraft:brown_wool","label":"Palette proche: Brown Wool","confidence":0.866},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.863},{"type":"color_neighbors","target":"minecraft:brown_shulker_box","label":"Palette proche: Brown Shulker Box","confidence":0.855},{"type":"color_neighbors","target":"minecraft:brown_candle","label":"Palette proche: Brown Candle","confidence":0.852},{"type":"color_neighbors","target":"minecraft:brown_concrete","label":"Palette proche: Brown Concrete","confidence":0.85},{"type":"color_neighbors","target":"minecraft:brown_terracotta","label":"Palette proche: Brown Terracotta","confidence":0.847},{"type":"color_neighbors","target":"minecraft:item_frame","label":"Palette proche: Item Frame","confidence":0.845},{"type":"color_neighbors","target":"minecraft:coarse_dirt","label":"Palette proche: Coarse Dirt","confidence":0.843},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.838},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.838},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.838},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.76},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.758},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.75},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.735},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.73},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.726},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.725},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.725},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.705},{"type":"color_bridge","target":"minecraft:brown_glazed_terracotta","label":"Pont de nuance par sous-ton: Brown Glazed Terracotta","confidence":0.704},{"type":"color_analogous","target":"minecraft:note_block","label":"Couleurs analogues: Note Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_terracotta","label":"Couleurs analogues: Brown Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:jukebox","label":"Couleurs analogues: Jukebox","confidence":0.96},{"type":"color_analogous","target":"minecraft:soul_soil","label":"Couleurs analogues: Soul Soil","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.946},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.941},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.914},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.914},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.955},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.924},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.884},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.831},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.815},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.811},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.946},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.886},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.783},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.782},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.769},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.69},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.681},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.697},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.664},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.654},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.654},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.654},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.654},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.642},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.619}],"category":"redstone"},{"id":"minecraft:redstone_ore","name":"Redstone Ore","entry_type":"block","description":"Redstone ore is the ore block from which redstone is obtained. Deepslate redstone ore is a variant of redstone ore that can generate in deepslate and tuff blobs.","history":[{"version":"v1.0.1","status":"added","notes":"Added redstone ore in Seecret Friday Update 3 ."},{"version":"21w08a","status":"added","notes":"Added deepslate redstone ore."},{"version":"wiki-history","status":"added","notes":"Added redstone_ores block tag ."}],"colors":{"primary":"#8c6e6e","dominant_hex":"#7c7c7c","average_hex":"#8c6e6e","hue_group":"red","lightness":0.4902,"saturation":0.12,"palette":["#7c7c7c","#747474","#ab8989","#c70a0a","#6c6c6c","#6c5c5c"],"color_groups":[{"hex":"#7c7c7c","weight":0.3359,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.2148,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ab8989","weight":0.2148,"lightness":0.6039,"saturation":0.1683,"hue_group":"red"},{"hex":"#c70a0a","weight":0.1211,"lightness":0.4098,"saturation":0.9043,"hue_group":"red"},{"hex":"#6c6c6c","weight":0.0664,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c5c5c","weight":0.0469,"lightness":0.3922,"saturation":0.08,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/redstone_ore.png","family":"redstone_ore","relations":[{"type":"visual_neighbors","target":"minecraft:light_gray_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dripstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:detector_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pointed_dripstone","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.93},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.93},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.93},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.93},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.93},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.93},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.909},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.909},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.909},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.909},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.905},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.905},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_stairs","label":"Pont de nuance par palette: Stone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55}],"category":"redstone"},{"id":"minecraft:redstone_torch","name":"Redstone Torch","entry_type":"block","description":"A redstone torch is a non-solid block that produces a full-strength redstone signal on all sides adjacent to it, except for its attached block, and can power the block directly above it. It deactivates while the block it is attached to is powered.","history":[{"version":"v1.0.1","status":"added","notes":"Added redstone torches."}],"colors":{"primary":"#b63b2c","dominant_hex":"#f50404","average_hex":"#b63b2c","hue_group":"red","lightness":0.4431,"saturation":0.6106,"palette":["#f50404","#463923","#fc9292","#9c7c54","#6c5434","#947444"],"color_groups":[{"hex":"#f50404","weight":0.4,"lightness":0.4882,"saturation":0.9679,"hue_group":"red"},{"hex":"#463923","weight":0.2333,"lightness":0.2059,"saturation":0.3333,"hue_group":"yellow"},{"hex":"#fc9292","weight":0.1333,"lightness":0.7804,"saturation":0.9464,"hue_group":"red"},{"hex":"#9c7c54","weight":0.1,"lightness":0.4706,"saturation":0.3,"hue_group":"yellow"},{"hex":"#6c5434","weight":0.0667,"lightness":0.3137,"saturation":0.35,"hue_group":"yellow"},{"hex":"#947444","weight":0.0667,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/redstone_torch.png","family":"redstone_torch","relations":[{"type":"visual_neighbors","target":"minecraft:red_mushroom_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:redstone_wall_torch","label":"Palette proche: Redstone Wall Torch","confidence":0.812},{"type":"color_neighbors","target":"minecraft:torch","label":"Palette proche: Torch","confidence":0.803},{"type":"color_neighbors","target":"minecraft:wall_torch","label":"Palette proche: Wall Torch","confidence":0.803},{"type":"color_neighbors","target":"minecraft:lever","label":"Palette proche: Lever","confidence":0.755},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.722},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.721},{"type":"color_neighbors","target":"minecraft:barrier","label":"Palette proche: Barrier","confidence":0.718},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.716},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.716},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.71},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.701},{"type":"color_neighbors","target":"minecraft:dirt_path","label":"Palette proche: Dirt Path","confidence":0.7},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.731},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.731},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.729},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.724},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.724},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.724},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.718},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.711},{"type":"color_bridge","target":"minecraft:copper_torch","label":"Pont de nuance par palette: Copper Torch","confidence":0.711},{"type":"color_bridge","target":"minecraft:copper_wall_torch","label":"Pont de nuance par palette: Copper Wall Torch","confidence":0.711},{"type":"color_analogous","target":"minecraft:tnt","label":"Couleurs analogues: Tnt","confidence":0.96},{"type":"color_analogous","target":"minecraft:redstone_block","label":"Couleurs analogues: Redstone Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fungus","label":"Couleurs analogues: Crimson Fungus","confidence":0.955},{"type":"color_analogous","target":"minecraft:potted_crimson_fungus","label":"Couleurs analogues: Potted Crimson Fungus","confidence":0.955},{"type":"color_analogous","target":"minecraft:mangrove_hanging_sign","label":"Couleurs analogues: Mangrove Hanging Sign","confidence":0.943},{"type":"color_analogous","target":"minecraft:mangrove_wall_hanging_sign","label":"Couleurs analogues: Mangrove Wall Hanging Sign","confidence":0.943},{"type":"color_analogous","target":"minecraft:stripped_mangrove_log","label":"Couleurs analogues: Stripped Mangrove Log","confidence":0.943},{"type":"color_analogous","target":"minecraft:stripped_mangrove_wood","label":"Couleurs analogues: Stripped Mangrove Wood","confidence":0.943},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.956},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.932},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.927},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.91},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.897},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.882},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.864},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.828},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.695},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.694},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.662},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.651},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.651},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.592},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.957},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.906},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.903},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.903},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.896},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"redstone"},{"id":"minecraft:redstone_wall_torch","name":"Redstone Wall Torch","entry_type":"block","description":"A redstone torch is a non-solid block that produces a full-strength redstone signal on all sides adjacent to it, except for its attached block, and can power the block directly above it. It deactivates while the block it is attached to is powered.","history":[{"version":"v1.0.1","status":"added","notes":"Added redstone torches."}],"colors":{"primary":"#65462c","dominant_hex":"#463923","average_hex":"#65462c","hue_group":"red","lightness":0.2843,"saturation":0.3931,"palette":["#463923","#9c7c54","#4f0404","#6c5434","#947444","#2c0404"],"color_groups":[{"hex":"#463923","weight":0.35,"lightness":0.2059,"saturation":0.3333,"hue_group":"yellow"},{"hex":"#9c7c54","weight":0.2,"lightness":0.4706,"saturation":0.3,"hue_group":"yellow"},{"hex":"#4f0404","weight":0.15,"lightness":0.1627,"saturation":0.9036,"hue_group":"red"},{"hex":"#6c5434","weight":0.15,"lightness":0.3137,"saturation":0.35,"hue_group":"yellow"},{"hex":"#947444","weight":0.1,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#2c0404","weight":0.05,"lightness":0.0941,"saturation":0.8333,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/redstone_torch_off.png","family":"redstone_wall_torch","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:note_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lever","label":"Palette proche: Lever","confidence":0.883},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.878},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.878},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.854},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.844},{"type":"color_neighbors","target":"minecraft:activator_rail","label":"Palette proche: Activator Rail","confidence":0.836},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.836},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.83},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.83},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.829},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.826},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.826},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.865},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.818},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.803},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.795},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.782},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.78},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.777},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.773},{"type":"color_analogous","target":"minecraft:brown_shulker_box","label":"Couleurs analogues: Brown Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:coarse_dirt","label":"Couleurs analogues: Coarse Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_concrete","label":"Couleurs analogues: Brown Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:glow_item_frame","label":"Couleurs analogues: Glow Item Frame","confidence":0.96},{"type":"color_analogous","target":"minecraft:composter","label":"Couleurs analogues: Composter","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_mushroom_block","label":"Couleurs analogues: Brown Mushroom Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.916},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.916},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.916},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.854},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.854},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.818},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.816},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.96},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.882},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.869},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.925},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.879},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.849},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.849},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.844},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.831},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.81},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.778},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.663},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.63},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.619},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.619},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.619},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.619},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.607},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.584}],"category":"redstone"},{"id":"minecraft:redstone_wire","name":"Redstone Wire","entry_type":"block","description":"Redstone dust is a mineral used in crafting, brewing, trimming, and as a placeable wire. Redstone wire is a non-solid block that can transmit a redstone power signal up to 15 blocks in distance; signal strengths below 15 have reduced distance. Redstone wire can power blocks it is placed on or pointing at.","history":[{"version":"v1.0.1","status":"added","notes":"Added redstone."},{"version":"wiki-history","status":"added","notes":"Added redstone dust as a placed block ."},{"version":"wiki-history","status":"added","notes":"added to extended potions or tier-II potions."}],"colors":{"primary":"#f0f0f0","dominant_hex":"#fcfcfc","average_hex":"#f0f0f0","hue_group":"neutral","lightness":0.9412,"saturation":0.0,"palette":["#fcfcfc","#dcdcdc","#ececec"],"color_groups":[{"hex":"#fcfcfc","weight":0.5172,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.2414,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ececec","weight":0.2414,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/redstone_dust_dot.png","family":"redstone_wire","relations":[{"type":"visual_neighbors","target":"minecraft:white_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobweb","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:white_stained_glass_pane","label":"Palette proche: White Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:white_stained_glass","label":"Palette proche: White Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_trapdoor","label":"Palette proche: Iron Trapdoor","confidence":0.914},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.904},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.886},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.886},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.886},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.886},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.886},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.886},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_trapdoor","label":"Pont de nuance par palette: Iron Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par palette: Pale Oak Planks","confidence":0.86},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.834},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.825},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.821},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.804},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.8},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.799},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.799},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.799}],"category":"redstone"},{"id":"minecraft:reinforced_deepslate","name":"Reinforced Deepslate","entry_type":"block","description":"Reinforced deepslate is a block that generates exclusively in ancient cities. It has high hardness, is immune to explosions, and cannot be pushed by pistons or obtained in Survival mode.","history":[{"version":"1.19","status":"added","notes":"Added reinforced deepslate."},{"version":"22w13a","status":"added","notes":"Added reinforced deepslate to the regular snapshot."}],"colors":{"primary":"#50534f","dominant_hex":"#4c4c4c","average_hex":"#50534f","hue_group":"neutral","lightness":0.3176,"saturation":0.0247,"palette":["#4c4c4c","#2c2c2c","#a1ae91","#3c3434","#444444","#5e5e5f"],"color_groups":[{"hex":"#4c4c4c","weight":0.1992,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.1875,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a1ae91","weight":0.1562,"lightness":0.6255,"saturation":0.1518,"hue_group":"yellow"},{"hex":"#3c3434","weight":0.1523,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#444444","weight":0.1523,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5e5e5f","weight":0.1523,"lightness":0.3706,"saturation":0.0053,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/reinforced_deepslate_top.png","family":"reinforced_deepslate","relations":[{"type":"visual_neighbors","target":"minecraft:deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blast_furnace","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.902},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.902},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.902},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.902},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.902},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.902},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.895},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.895},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.895},{"type":"color_neighbors","target":"minecraft:polished_deepslate_wall","label":"Palette proche: Polished Deepslate Wall","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_bricks","label":"Palette proche: Cracked Deepslate Bricks","confidence":0.893},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.892},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_tiles","label":"Pont de nuance par palette: Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_deepslate","label":"Pont de nuance par palette: Chiseled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_slab","label":"Pont de nuance par palette: Polished Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_stairs","label":"Pont de nuance par palette: Polished Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate_wall","label":"Pont de nuance par palette: Polished Deepslate Wall","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.631},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.604},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.603},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.603},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.598},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.575},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.573},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.573}],"category":""},{"id":"minecraft:repeater","name":"Repeater","entry_type":"block","description":"A redstone repeater is a block that produces a full-strength redstone signal from its front while its back is powered, with four toggleable delay settings. It can also be locked into its current power state by directly powering its side with another repeater or a redstone comparator.","history":[{"version":"1.3","status":"added","notes":"Added redstone repeaters."},{"version":"wiki-history","status":"added","notes":"Added repeater locking to redstone repeaters. Interestingly, the smallest face of the bedrock cuboid's texture changes depending on the delay, but the other two faces remain the same. When/if this changed is unknown."}],"colors":{"primary":"#a09d9c","dominant_hex":"#878787","average_hex":"#a09d9c","hue_group":"neutral","lightness":0.6196,"saturation":0.0206,"palette":["#878787","#bcbcbc","#acacac","#c4ccc4","#440404","#d4dcd4"],"color_groups":[{"hex":"#878787","weight":0.3477,"lightness":0.5294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcbc","weight":0.2461,"lightness":0.7373,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.1914,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4ccc4","weight":0.1289,"lightness":0.7843,"saturation":0.0727,"hue_group":"neutral"},{"hex":"#440404","weight":0.0625,"lightness":0.1412,"saturation":0.8889,"hue_group":"red"},{"hex":"#d4dcd4","weight":0.0234,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/repeater.png","family":"repeater","relations":[{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:comparator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:comparator","label":"Palette proche: Comparator","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.898},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.898},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.89},{"type":"color_neighbors","target":"minecraft:pumpkin_stem","label":"Palette proche: Pumpkin Stem","confidence":0.889},{"type":"color_neighbors","target":"minecraft:melon_stem","label":"Palette proche: Melon Stem","confidence":0.886},{"type":"color_neighbors","target":"minecraft:attached_melon_stem","label":"Palette proche: Attached Melon Stem","confidence":0.886},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.883},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.883},{"type":"color_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Palette proche: Attached Pumpkin Stem","confidence":0.881},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.881},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.877},{"type":"color_bridge","target":"minecraft:comparator","label":"Pont de nuance par palette: Comparator","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:pumpkin_stem","label":"Pont de nuance par palette: Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:melon_stem","label":"Pont de nuance par palette: Melon Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_melon_stem","label":"Pont de nuance par palette: Attached Melon Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_pumpkin_stem","label":"Pont de nuance par palette: Attached Pumpkin Stem","confidence":0.86},{"type":"value_contrast","target":"minecraft:cracked_deepslate_bricks","label":"Contraste clair sombre: Cracked Deepslate Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_slab","label":"Contraste clair sombre: Deepslate Tile Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_stairs","label":"Contraste clair sombre: Deepslate Tile Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_wall","label":"Contraste clair sombre: Deepslate Tile Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tiles","label":"Contraste clair sombre: Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_deepslate_tiles","label":"Contraste clair sombre: Cracked Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:creeper_head","label":"Contraste clair sombre: Creeper Head","confidence":0.55}],"category":"redstone"},{"id":"minecraft:repeating_command_block","name":"Repeating Command Block","entry_type":"block","description":"A command block is an indestructible block that can execute commands. Because it cannot be obtained, destroyed or used in Survival mode without cheats, it is primarily used in multiplayer servers, Creative worlds, and custom maps. There are 3 types of these blocks. An impulse command block is the default block type; it executes only once when activated. A chain command block executes every time when triggered. A repeating command block executes every game tick as long as it is activated.","history":[{"version":"1.4.2 12w32a","status":"added","notes":"Added command blocks."},{"version":"12w38a","status":"added","notes":"Added the game rule commandBlockOutput ."},{"version":"14w27a","status":"added","notes":"Added CommandStats NBT tag to command blocks."}],"colors":{"primary":"#816fb0","dominant_hex":"#574176","average_hex":"#816fb0","hue_group":"blue","lightness":0.5627,"saturation":0.2915,"palette":["#574176","#6a4ac4","#9b8dc6","#bab7be","#7f6ec2","#ac9cd4"],"color_groups":[{"hex":"#574176","weight":0.2578,"lightness":0.3588,"saturation":0.2896,"hue_group":"blue"},{"hex":"#6a4ac4","weight":0.2031,"lightness":0.5294,"saturation":0.5083,"hue_group":"blue"},{"hex":"#9b8dc6","weight":0.1797,"lightness":0.6647,"saturation":0.3333,"hue_group":"blue"},{"hex":"#bab7be","weight":0.1602,"lightness":0.7314,"saturation":0.0511,"hue_group":"neutral"},{"hex":"#7f6ec2","weight":0.1289,"lightness":0.5961,"saturation":0.4078,"hue_group":"blue"},{"hex":"#ac9cd4","weight":0.0703,"lightness":0.7216,"saturation":0.3944,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/repeating_command_block_front.png","family":"repeating_command_block","relations":[{"type":"visual_neighbors","target":"minecraft:allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_allium","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:budding_amethyst","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:medium_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_cluster","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:small_amethyst_bud","label":"Palette proche: Small Amethyst Bud","confidence":0.772},{"type":"color_neighbors","target":"minecraft:amethyst_block","label":"Palette proche: Amethyst Block","confidence":0.767},{"type":"color_neighbors","target":"minecraft:budding_amethyst","label":"Palette proche: Budding Amethyst","confidence":0.755},{"type":"color_neighbors","target":"minecraft:blue_terracotta","label":"Palette proche: Blue Terracotta","confidence":0.704},{"type":"color_neighbors","target":"minecraft:medium_amethyst_bud","label":"Palette proche: Medium Amethyst Bud","confidence":0.703},{"type":"color_neighbors","target":"minecraft:amethyst_cluster","label":"Palette proche: Amethyst Cluster","confidence":0.696},{"type":"color_neighbors","target":"minecraft:large_amethyst_bud","label":"Palette proche: Large Amethyst Bud","confidence":0.686},{"type":"color_neighbors","target":"minecraft:clay","label":"Palette proche: Clay","confidence":0.679},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.676},{"type":"color_neighbors","target":"minecraft:light_blue_terracotta","label":"Palette proche: Light Blue Terracotta","confidence":0.671},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.666},{"type":"color_neighbors","target":"minecraft:blue_concrete_powder","label":"Palette proche: Blue Concrete Powder","confidence":0.661},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.756},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.736},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.729},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par palette: Purpur Pillar","confidence":0.712},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par palette: Purpur Block","confidence":0.709},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par palette: Purpur Slab","confidence":0.709},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par palette: Purpur Stairs","confidence":0.709},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par palette: Shulker Box","confidence":0.694},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.672},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.672},{"type":"color_analogous","target":"minecraft:small_amethyst_bud","label":"Couleurs analogues: Small Amethyst Bud","confidence":0.895},{"type":"color_analogous","target":"minecraft:end_gateway","label":"Couleurs analogues: End Gateway","confidence":0.89},{"type":"color_analogous","target":"minecraft:end_portal","label":"Couleurs analogues: End Portal","confidence":0.89},{"type":"color_analogous","target":"minecraft:ender_chest","label":"Couleurs analogues: Ender Chest","confidence":0.89},{"type":"color_analogous","target":"minecraft:obsidian","label":"Couleurs analogues: Obsidian","confidence":0.89},{"type":"color_analogous","target":"minecraft:amethyst_block","label":"Couleurs analogues: Amethyst Block","confidence":0.852},{"type":"color_analogous","target":"minecraft:budding_amethyst","label":"Couleurs analogues: Budding Amethyst","confidence":0.84},{"type":"color_analogous","target":"minecraft:nether_portal","label":"Couleurs analogues: Nether Portal","confidence":0.773},{"type":"color_complement","target":"minecraft:cave_vines","label":"Contraste complementaire: Cave Vines","confidence":0.96},{"type":"color_complement","target":"minecraft:melon","label":"Contraste complementaire: Melon","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_azalea_bush","label":"Contraste complementaire: Potted Azalea Bush","confidence":0.952},{"type":"color_complement","target":"minecraft:green_concrete_powder","label":"Contraste complementaire: Green Concrete Powder","confidence":0.943},{"type":"color_complement","target":"minecraft:azalea","label":"Contraste complementaire: Azalea","confidence":0.941},{"type":"color_complement","target":"minecraft:green_carpet","label":"Contraste complementaire: Green Carpet","confidence":0.914},{"type":"color_complement","target":"minecraft:green_wool","label":"Contraste complementaire: Green Wool","confidence":0.914},{"type":"color_complement","target":"minecraft:lime_glazed_terracotta","label":"Contraste complementaire: Lime Glazed Terracotta","confidence":0.908},{"type":"color_triad","target":"minecraft:exposed_lightning_rod","label":"Harmonie triadique: Exposed Lightning Rod","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_exposed_lightning_rod","label":"Harmonie triadique: Waxed Exposed Lightning Rod","confidence":0.96},{"type":"color_triad","target":"minecraft:polished_granite","label":"Harmonie triadique: Polished Granite","confidence":0.96},{"type":"color_triad","target":"minecraft:polished_granite_slab","label":"Harmonie triadique: Polished Granite Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:polished_granite_stairs","label":"Harmonie triadique: Polished Granite Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:granite","label":"Harmonie triadique: Granite","confidence":0.96},{"type":"color_triad","target":"minecraft:granite_slab","label":"Harmonie triadique: Granite Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:granite_stairs","label":"Harmonie triadique: Granite Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:cracked_nether_bricks","label":"Harmonie carree: Cracked Nether Bricks","confidence":0.939},{"type":"color_square","target":"minecraft:prismarine_brick_slab","label":"Harmonie carree: Prismarine Brick Slab","confidence":0.921},{"type":"color_square","target":"minecraft:prismarine_brick_stairs","label":"Harmonie carree: Prismarine Brick Stairs","confidence":0.921},{"type":"color_square","target":"minecraft:prismarine_bricks","label":"Harmonie carree: Prismarine Bricks","confidence":0.921},{"type":"color_square","target":"minecraft:enchanting_table","label":"Harmonie carree: Enchanting Table","confidence":0.903},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.894},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.894},{"type":"color_square","target":"minecraft:nether_brick_stairs","label":"Harmonie carree: Nether Brick Stairs","confidence":0.894},{"type":"value_contrast","target":"minecraft:black_candle","label":"Contraste clair sombre: Black Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:respawn_anchor","label":"Contraste clair sombre: Respawn Anchor","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.55},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.55},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_slab","label":"Contraste clair sombre: Polished Blackstone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_stairs","label":"Contraste clair sombre: Polished Blackstone Brick Stairs","confidence":0.55}],"category":"technical"},{"id":"minecraft:resin_block","name":"Resin Block","entry_type":"block","description":"A block of resin is a block equivalent to nine resin clumps.","history":[{"version":"1.21.4 24w44a","status":"added","notes":"Added blocks of resin."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of resin, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#d96319","dominant_hex":"#e46414","average_hex":"#d96319","hue_group":"red","lightness":0.4745,"saturation":0.7934,"palette":["#e46414","#c44c0c","#b43c14","#ec7414","#ec8434","#eca434"],"color_groups":[{"hex":"#e46414","weight":0.2852,"lightness":0.4863,"saturation":0.8387,"hue_group":"red"},{"hex":"#c44c0c","weight":0.2383,"lightness":0.4078,"saturation":0.8846,"hue_group":"red"},{"hex":"#b43c14","weight":0.1406,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#ec7414","weight":0.125,"lightness":0.502,"saturation":0.8504,"hue_group":"red"},{"hex":"#ec8434","weight":0.125,"lightness":0.5647,"saturation":0.8288,"hue_group":"red"},{"hex":"#eca434","weight":0.0859,"lightness":0.5647,"saturation":0.8288,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/resin_block.png","family":"resin_block","relations":[{"type":"visual_neighbors","target":"minecraft:resin_clump","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_brick_stairs","label":"Palette proche: Resin Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_brick_wall","label":"Palette proche: Resin Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_bricks","label":"Palette proche: Resin Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Palette proche: Chiseled Resin Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.939},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.927},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.899},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.895},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.883},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.883},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.647},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.646},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.631},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.631},{"type":"color_bridge","target":"minecraft:potted_crimson_roots","label":"Pont de nuance par palette: Potted Crimson Roots","confidence":0.62},{"type":"color_bridge","target":"minecraft:crimson_roots","label":"Pont de nuance par palette: Crimson Roots","confidence":0.616},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.61},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.594},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.593},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.584},{"type":"color_analogous","target":"minecraft:lava","label":"Couleurs analogues: Lava","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_terracotta","label":"Couleurs analogues: Orange Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_lantern","label":"Couleurs analogues: Copper Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_lantern","label":"Couleurs analogues: Waxed Copper Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:raw_copper_block","label":"Couleurs analogues: Raw Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_mushroom","label":"Couleurs analogues: Brown Mushroom","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_brown_mushroom","label":"Couleurs analogues: Potted Brown Mushroom","confidence":0.96},{"type":"color_analogous","target":"minecraft:rooted_dirt","label":"Couleurs analogues: Rooted Dirt","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.945},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.945},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.917},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.903},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.903},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.96},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.945},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.935},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.907},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.9},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.822},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.811},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.795},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.922},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.866},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.759},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.758},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.746},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.691},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.683},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:resin_brick","name":"Resin Brick","entry_type":"item","description":"A resin brick is an item used to create resin bricks. It can also be used as a smithing ingredient, giving orange details to pieces of armor.","history":[{"version":"1.21.4 24w44a","status":"added","notes":"Added resin brick."}],"colors":{"primary":"#c65c17","dominant_hex":"#b44404","average_hex":"#c65c17","hue_group":"red","lightness":0.4333,"saturation":0.7919,"palette":["#b44404","#e45404","#f47c1c","#fcc154","#8c3010","#641c14"],"color_groups":[{"hex":"#b44404","weight":0.2815,"lightness":0.3608,"saturation":0.9565,"hue_group":"red"},{"hex":"#e45404","weight":0.1852,"lightness":0.4549,"saturation":0.9655,"hue_group":"red"},{"hex":"#f47c1c","weight":0.163,"lightness":0.5333,"saturation":0.9076,"hue_group":"red"},{"hex":"#fcc154","weight":0.1556,"lightness":0.6588,"saturation":0.9655,"hue_group":"yellow"},{"hex":"#8c3010","weight":0.1333,"lightness":0.3059,"saturation":0.7949,"hue_group":"red"},{"hex":"#641c14","weight":0.0815,"lightness":0.2353,"saturation":0.6667,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/resin_brick.png","family":"resin_brick","relations":[{"type":"variants","target":"minecraft:resin_brick_slab","label":"Same family: resin_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:resin_brick_slab","label":"Related set: resin_brick","confidence":0.8},{"type":"variants","target":"minecraft:resin_brick_stairs","label":"Same family: resin_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:resin_brick_stairs","label":"Related set: resin_brick","confidence":0.8},{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:orange_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:apple","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:saddle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fermented_spider_eye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glistering_melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cube_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_soup","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:resin_brick_slab","name":"Resin Brick Slab","entry_type":"block","description":"A resin brick slab is a decorative slab variant of resin bricks that does not generate naturally and is used for building.","history":[{"version":"1.21.4 24w44a","status":"added","notes":"Added resin brick slabs."}],"colors":{"primary":"#ce5818","dominant_hex":"#c44c0c","average_hex":"#ce5818","hue_group":"red","lightness":0.451,"saturation":0.7913,"palette":["#c44c0c","#e66814","#b43c14","#a4341c","#ec8434","#eca434"],"color_groups":[{"hex":"#c44c0c","weight":0.2852,"lightness":0.4078,"saturation":0.8846,"hue_group":"red"},{"hex":"#e66814","weight":0.2461,"lightness":0.4902,"saturation":0.84,"hue_group":"red"},{"hex":"#b43c14","weight":0.1602,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#a4341c","weight":0.1328,"lightness":0.3765,"saturation":0.7083,"hue_group":"red"},{"hex":"#ec8434","weight":0.1094,"lightness":0.5647,"saturation":0.8288,"hue_group":"red"},{"hex":"#eca434","weight":0.0664,"lightness":0.5647,"saturation":0.8288,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/resin_bricks.png","family":"resin_brick","relations":[{"type":"variants","target":"minecraft:resin_brick_stairs","label":"Same family: resin_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:resin_brick_stairs","label":"Related set: resin_brick","confidence":0.8},{"type":"variants","target":"minecraft:resin_brick","label":"Same family: resin_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:resin_brick","label":"Related set: resin_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_clump","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:resin_brick_stairs","label":"Palette proche: Resin Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_brick_wall","label":"Palette proche: Resin Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_bricks","label":"Palette proche: Resin Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Palette proche: Chiseled Resin Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.914},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.914},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.901},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.868},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.866},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.852},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.852},{"type":"color_bridge","target":"minecraft:yellow_stained_glass","label":"Pont de nuance par palette: Yellow Stained Glass","confidence":0.663},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.649},{"type":"color_bridge","target":"minecraft:yellow_stained_glass_pane","label":"Pont de nuance par palette: Yellow Stained Glass Pane","confidence":0.644},{"type":"color_bridge","target":"minecraft:crimson_roots","label":"Pont de nuance par palette: Crimson Roots","confidence":0.636},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.63},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.622},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.62},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.62},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.61},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.607},{"type":"color_analogous","target":"minecraft:resin_brick_stairs","label":"Couleurs analogues: Resin Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_brick_wall","label":"Couleurs analogues: Resin Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_bricks","label":"Couleurs analogues: Resin Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_resin_bricks","label":"Couleurs analogues: Chiseled Resin Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:lava","label":"Couleurs analogues: Lava","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_terracotta","label":"Couleurs analogues: Orange Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.933},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.927},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.908},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.908},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.903},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.878},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.878},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.889},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.867},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.858},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.837},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.829},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.816},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.816},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.924},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.876},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.844},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.843},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.83},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.782},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.733},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.728},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:resin_brick_stairs","name":"Resin Brick Stairs","entry_type":"block","description":"Resin brick stairs are a decorative stairs variant of resin bricks that does not generate naturally and is used for building.","history":[{"version":"1.21.4 24w44a","status":"added","notes":"Added resin brick stairs."}],"colors":{"primary":"#ce5818","dominant_hex":"#c44c0c","average_hex":"#ce5818","hue_group":"red","lightness":0.451,"saturation":0.7913,"palette":["#c44c0c","#e66814","#b43c14","#a4341c","#ec8434","#eca434"],"color_groups":[{"hex":"#c44c0c","weight":0.2852,"lightness":0.4078,"saturation":0.8846,"hue_group":"red"},{"hex":"#e66814","weight":0.2461,"lightness":0.4902,"saturation":0.84,"hue_group":"red"},{"hex":"#b43c14","weight":0.1602,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#a4341c","weight":0.1328,"lightness":0.3765,"saturation":0.7083,"hue_group":"red"},{"hex":"#ec8434","weight":0.1094,"lightness":0.5647,"saturation":0.8288,"hue_group":"red"},{"hex":"#eca434","weight":0.0664,"lightness":0.5647,"saturation":0.8288,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/resin_bricks.png","family":"resin_brick","relations":[{"type":"variants","target":"minecraft:resin_brick_slab","label":"Same family: resin_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:resin_brick_slab","label":"Related set: resin_brick","confidence":0.8},{"type":"variants","target":"minecraft:resin_brick","label":"Same family: resin_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:resin_brick","label":"Related set: resin_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_clump","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_brick_wall","label":"Palette proche: Resin Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_bricks","label":"Palette proche: Resin Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Palette proche: Chiseled Resin Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.914},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.914},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.901},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.868},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.866},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.852},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.852},{"type":"color_bridge","target":"minecraft:yellow_stained_glass","label":"Pont de nuance par palette: Yellow Stained Glass","confidence":0.663},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.649},{"type":"color_bridge","target":"minecraft:yellow_stained_glass_pane","label":"Pont de nuance par palette: Yellow Stained Glass Pane","confidence":0.644},{"type":"color_bridge","target":"minecraft:crimson_roots","label":"Pont de nuance par palette: Crimson Roots","confidence":0.636},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.63},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.622},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.62},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.62},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.61},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.607},{"type":"color_analogous","target":"minecraft:resin_brick_slab","label":"Couleurs analogues: Resin Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_brick_wall","label":"Couleurs analogues: Resin Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_bricks","label":"Couleurs analogues: Resin Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_resin_bricks","label":"Couleurs analogues: Chiseled Resin Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:lava","label":"Couleurs analogues: Lava","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_terracotta","label":"Couleurs analogues: Orange Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.933},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.927},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.908},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.908},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.903},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.878},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.878},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.889},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.867},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.858},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.837},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.829},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.816},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.816},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.924},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.876},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.844},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.843},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.83},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.782},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.733},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.728},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:resin_brick_wall","name":"Resin Brick Wall","entry_type":"block","description":"A resin brick wall is a decorative wall variant of resin bricks that does not generate naturally and is used for building.","history":[{"version":"1.21.4 24w44a","status":"added","notes":"Added resin brick walls."}],"colors":{"primary":"#ce5818","dominant_hex":"#c44c0c","average_hex":"#ce5818","hue_group":"red","lightness":0.451,"saturation":0.7913,"palette":["#c44c0c","#e66814","#b43c14","#a4341c","#ec8434","#eca434"],"color_groups":[{"hex":"#c44c0c","weight":0.2852,"lightness":0.4078,"saturation":0.8846,"hue_group":"red"},{"hex":"#e66814","weight":0.2461,"lightness":0.4902,"saturation":0.84,"hue_group":"red"},{"hex":"#b43c14","weight":0.1602,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#a4341c","weight":0.1328,"lightness":0.3765,"saturation":0.7083,"hue_group":"red"},{"hex":"#ec8434","weight":0.1094,"lightness":0.5647,"saturation":0.8288,"hue_group":"red"},{"hex":"#eca434","weight":0.0664,"lightness":0.5647,"saturation":0.8288,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/resin_bricks.png","family":"resin_brick_wall","relations":[{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_clump","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_brick_stairs","label":"Palette proche: Resin Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_bricks","label":"Palette proche: Resin Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Palette proche: Chiseled Resin Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.914},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.914},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.901},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.868},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.866},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.852},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.852},{"type":"color_bridge","target":"minecraft:yellow_stained_glass","label":"Pont de nuance par palette: Yellow Stained Glass","confidence":0.663},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.649},{"type":"color_bridge","target":"minecraft:yellow_stained_glass_pane","label":"Pont de nuance par palette: Yellow Stained Glass Pane","confidence":0.644},{"type":"color_bridge","target":"minecraft:crimson_roots","label":"Pont de nuance par palette: Crimson Roots","confidence":0.636},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.63},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.622},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.62},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.62},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.61},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.607},{"type":"color_analogous","target":"minecraft:resin_brick_slab","label":"Couleurs analogues: Resin Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_brick_stairs","label":"Couleurs analogues: Resin Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_bricks","label":"Couleurs analogues: Resin Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_resin_bricks","label":"Couleurs analogues: Chiseled Resin Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:lava","label":"Couleurs analogues: Lava","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_terracotta","label":"Couleurs analogues: Orange Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.933},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.927},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.908},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.908},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.903},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.878},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.878},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.889},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.867},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.858},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.837},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.829},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.816},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.816},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.924},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.876},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.844},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.843},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.83},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.782},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.733},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.728},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:resin_bricks","name":"Resin Bricks","entry_type":"block","description":"Resin bricks are a block crafted from resin brick. It can also be crafted into its block family, containing slabs, stairs, walls, and the chiseled variant.","history":[{"version":"1.21.4 24w44a","status":"added","notes":"Added resin bricks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb resin bricks, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#ce5818","dominant_hex":"#c44c0c","average_hex":"#ce5818","hue_group":"red","lightness":0.451,"saturation":0.7913,"palette":["#c44c0c","#e66814","#b43c14","#a4341c","#ec8434","#eca434"],"color_groups":[{"hex":"#c44c0c","weight":0.2852,"lightness":0.4078,"saturation":0.8846,"hue_group":"red"},{"hex":"#e66814","weight":0.2461,"lightness":0.4902,"saturation":0.84,"hue_group":"red"},{"hex":"#b43c14","weight":0.1602,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#a4341c","weight":0.1328,"lightness":0.3765,"saturation":0.7083,"hue_group":"red"},{"hex":"#ec8434","weight":0.1094,"lightness":0.5647,"saturation":0.8288,"hue_group":"red"},{"hex":"#eca434","weight":0.0664,"lightness":0.5647,"saturation":0.8288,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/resin_bricks.png","family":"resin_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_clump","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_brick_stairs","label":"Palette proche: Resin Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_brick_wall","label":"Palette proche: Resin Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Palette proche: Chiseled Resin Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.914},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.914},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.901},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.868},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.866},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.852},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.852},{"type":"color_bridge","target":"minecraft:yellow_stained_glass","label":"Pont de nuance par palette: Yellow Stained Glass","confidence":0.663},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.649},{"type":"color_bridge","target":"minecraft:yellow_stained_glass_pane","label":"Pont de nuance par palette: Yellow Stained Glass Pane","confidence":0.644},{"type":"color_bridge","target":"minecraft:crimson_roots","label":"Pont de nuance par palette: Crimson Roots","confidence":0.636},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.63},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.622},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.62},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.62},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.61},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.607},{"type":"color_analogous","target":"minecraft:resin_brick_slab","label":"Couleurs analogues: Resin Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_brick_stairs","label":"Couleurs analogues: Resin Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:resin_brick_wall","label":"Couleurs analogues: Resin Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_resin_bricks","label":"Couleurs analogues: Chiseled Resin Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:lava","label":"Couleurs analogues: Lava","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_terracotta","label":"Couleurs analogues: Orange Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_button","label":"Couleurs analogues: Acacia Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_fence","label":"Couleurs analogues: Acacia Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.933},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.927},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.908},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.908},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.903},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.878},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.878},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.889},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.867},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.858},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.837},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.829},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.816},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.816},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.924},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.876},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.844},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.843},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.83},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.782},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.733},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.728},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:resin_clump","name":"Resin Clump","entry_type":"block","description":"A resin clump is a block generated by a creaking heart on pale oaks in any biome when a creaking is attacked. It also drops when a creaking heart is mined or destroyed. It can be used to craft decorative blocks of resin, and can also be smelted to produce resin bricks, which in turn can be crafted into the whole resin brick block family.","history":[{"version":"1.21.4 24w44a","status":"added","notes":"Added resin clumps."}],"colors":{"primary":"#df701b","dominant_hex":"#e46414","average_hex":"#df701b","hue_group":"red","lightness":0.4902,"saturation":0.784,"palette":["#e46414","#b44404","#ec8434","#fcb424"],"color_groups":[{"hex":"#e46414","weight":0.4286,"lightness":0.4863,"saturation":0.8387,"hue_group":"red"},{"hex":"#b44404","weight":0.2143,"lightness":0.3608,"saturation":0.9565,"hue_group":"red"},{"hex":"#ec8434","weight":0.1786,"lightness":0.5647,"saturation":0.8288,"hue_group":"red"},{"hex":"#fcb424","weight":0.1786,"lightness":0.5647,"saturation":0.973,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/resin_clump.png","family":"resin_clump","relations":[{"type":"visual_neighbors","target":"minecraft:resin_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_wool","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.939},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.914},{"type":"color_neighbors","target":"minecraft:resin_brick_stairs","label":"Palette proche: Resin Brick Stairs","confidence":0.914},{"type":"color_neighbors","target":"minecraft:resin_brick_wall","label":"Palette proche: Resin Brick Wall","confidence":0.914},{"type":"color_neighbors","target":"minecraft:resin_bricks","label":"Palette proche: Resin Bricks","confidence":0.914},{"type":"color_neighbors","target":"minecraft:chiseled_resin_bricks","label":"Palette proche: Chiseled Resin Bricks","confidence":0.905},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.896},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.893},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.893},{"type":"color_neighbors","target":"minecraft:lava","label":"Palette proche: Lava","confidence":0.883},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.88},{"type":"color_neighbors","target":"minecraft:orange_concrete_powder","label":"Palette proche: Orange Concrete Powder","confidence":0.88},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.661},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.661},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.64},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.624},{"type":"color_bridge","target":"minecraft:potted_crimson_roots","label":"Pont de nuance par palette: Potted Crimson Roots","confidence":0.584},{"type":"color_bridge","target":"minecraft:crimson_roots","label":"Pont de nuance par palette: Crimson Roots","confidence":0.582},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.581},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.581},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.58},{"type":"color_analogous","target":"minecraft:orange_carpet","label":"Couleurs analogues: Orange Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_wool","label":"Couleurs analogues: Orange Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_shulker_box","label":"Couleurs analogues: Orange Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sand","label":"Couleurs analogues: Red Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone","label":"Couleurs analogues: Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_wall","label":"Couleurs analogues: Red Sandstone Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone","label":"Couleurs analogues: Cut Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_red_sandstone","label":"Couleurs analogues: Chiseled Red Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.96},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.96},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.882},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.86},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.86},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.852},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.934},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.923},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.907},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.904},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.892},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.882},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.878},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.858},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.812},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.804},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.804},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.802},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.791},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.776},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:respawn_anchor","name":"Respawn Anchor","entry_type":"block","description":"The respawn anchor is a block that allows the player to set their spawn point in the Nether. It will only work if fueled using glowstone blocks.","history":[{"version":"1.16 20w12a","status":"added","notes":"Added the respawn anchor."}],"colors":{"primary":"#221634","dominant_hex":"#04040c","average_hex":"#221634","hue_group":"blue","lightness":0.1451,"saturation":0.4054,"palette":["#04040c","#1c1424","#573983","#2c2c44","#241c34","#380486"],"color_groups":[{"hex":"#04040c","weight":0.3906,"lightness":0.0314,"saturation":0.5,"hue_group":"blue"},{"hex":"#1c1424","weight":0.1719,"lightness":0.1098,"saturation":0.2857,"hue_group":"purple"},{"hex":"#573983","weight":0.168,"lightness":0.3686,"saturation":0.3936,"hue_group":"blue"},{"hex":"#2c2c44","weight":0.1094,"lightness":0.2196,"saturation":0.2143,"hue_group":"blue"},{"hex":"#241c34","weight":0.1055,"lightness":0.1569,"saturation":0.3,"hue_group":"blue"},{"hex":"#380486","weight":0.0547,"lightness":0.2706,"saturation":0.942,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/respawn_anchor_top_off.png","family":"respawn_anchor","relations":[{"type":"visual_neighbors","target":"minecraft:end_gateway","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_chest","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:obsidian","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spawner","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crying_obsidian","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chain","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crying_obsidian","label":"Palette proche: Crying Obsidian","confidence":0.853},{"type":"color_neighbors","target":"minecraft:end_gateway","label":"Palette proche: End Gateway","confidence":0.83},{"type":"color_neighbors","target":"minecraft:end_portal","label":"Palette proche: End Portal","confidence":0.83},{"type":"color_neighbors","target":"minecraft:ender_chest","label":"Palette proche: Ender Chest","confidence":0.83},{"type":"color_neighbors","target":"minecraft:obsidian","label":"Palette proche: Obsidian","confidence":0.83},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.793},{"type":"color_neighbors","target":"minecraft:tinted_glass","label":"Palette proche: Tinted Glass","confidence":0.744},{"type":"color_neighbors","target":"minecraft:spawner","label":"Palette proche: Spawner","confidence":0.731},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.718},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.712},{"type":"color_neighbors","target":"minecraft:blue_terracotta","label":"Palette proche: Blue Terracotta","confidence":0.702},{"type":"color_neighbors","target":"minecraft:purple_candle","label":"Palette proche: Purple Candle","confidence":0.697},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par sous-ton: Tinted Glass","confidence":0.789},{"type":"color_bridge","target":"minecraft:spawner","label":"Pont de nuance par palette: Spawner","confidence":0.778},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.768},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.763},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.754},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par palette: Iron Chain","confidence":0.743},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par sous-ton: Black Carpet","confidence":0.731},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par sous-ton: Black Wool","confidence":0.731},{"type":"color_bridge","target":"minecraft:chiseled_polished_blackstone","label":"Pont de nuance par sous-ton: Chiseled Polished Blackstone","confidence":0.715},{"type":"color_bridge","target":"minecraft:polished_blackstone","label":"Pont de nuance par palette: Polished Blackstone","confidence":0.706},{"type":"color_analogous","target":"minecraft:nether_portal","label":"Couleurs analogues: Nether Portal","confidence":0.92},{"type":"color_analogous","target":"minecraft:crying_obsidian","label":"Couleurs analogues: Crying Obsidian","confidence":0.918},{"type":"color_analogous","target":"minecraft:budding_amethyst","label":"Couleurs analogues: Budding Amethyst","confidence":0.912},{"type":"color_analogous","target":"minecraft:amethyst_block","label":"Couleurs analogues: Amethyst Block","confidence":0.898},{"type":"color_analogous","target":"minecraft:small_amethyst_bud","label":"Couleurs analogues: Small Amethyst Bud","confidence":0.855},{"type":"color_analogous","target":"minecraft:end_gateway","label":"Couleurs analogues: End Gateway","confidence":0.833},{"type":"color_analogous","target":"minecraft:end_portal","label":"Couleurs analogues: End Portal","confidence":0.833},{"type":"color_analogous","target":"minecraft:ender_chest","label":"Couleurs analogues: Ender Chest","confidence":0.833},{"type":"color_complement","target":"minecraft:potted_red_tulip","label":"Contraste complementaire: Potted Red Tulip","confidence":0.96},{"type":"color_complement","target":"minecraft:red_tulip","label":"Contraste complementaire: Red Tulip","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_sapling","label":"Contraste complementaire: Birch Sapling","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_birch_sapling","label":"Contraste complementaire: Potted Birch Sapling","confidence":0.96},{"type":"color_complement","target":"minecraft:oxeye_daisy","label":"Contraste complementaire: Oxeye Daisy","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_oxeye_daisy","label":"Contraste complementaire: Potted Oxeye Daisy","confidence":0.96},{"type":"color_complement","target":"minecraft:bamboo","label":"Contraste complementaire: Bamboo","confidence":0.958},{"type":"color_complement","target":"minecraft:oak_sapling","label":"Contraste complementaire: Oak Sapling","confidence":0.917},{"type":"color_triad","target":"minecraft:brown_candle","label":"Harmonie triadique: Brown Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:copper_lantern","label":"Harmonie triadique: Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_copper_lantern","label":"Harmonie triadique: Waxed Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:rooted_dirt","label":"Harmonie triadique: Rooted Dirt","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_mushroom","label":"Harmonie triadique: Brown Mushroom","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_brown_mushroom","label":"Harmonie triadique: Potted Brown Mushroom","confidence":0.96},{"type":"color_triad","target":"minecraft:command_block","label":"Harmonie triadique: Command Block","confidence":0.956},{"type":"color_triad","target":"minecraft:redstone_lamp","label":"Harmonie triadique: Redstone Lamp","confidence":0.955},{"type":"color_square","target":"minecraft:warped_button","label":"Harmonie carree: Warped Button","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence","label":"Harmonie carree: Warped Fence","confidence":0.96},{"type":"color_square","target":"minecraft:warped_fence_gate","label":"Harmonie carree: Warped Fence Gate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_planks","label":"Harmonie carree: Warped Planks","confidence":0.96},{"type":"color_square","target":"minecraft:warped_pressure_plate","label":"Harmonie carree: Warped Pressure Plate","confidence":0.96},{"type":"color_square","target":"minecraft:warped_sign","label":"Harmonie carree: Warped Sign","confidence":0.96},{"type":"color_square","target":"minecraft:warped_slab","label":"Harmonie carree: Warped Slab","confidence":0.96},{"type":"color_square","target":"minecraft:warped_stairs","label":"Harmonie carree: Warped Stairs","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.785},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.751},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.729},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.719},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.719},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.704},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.688},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.676}],"category":"utility"},{"id":"minecraft:rib_armor_trim_smithing_template","name":"Rib Armor Trim Smithing Template","entry_type":"item","description":"Rib armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, netherrack, and diamonds.","history":[{"version":"1.19.4","status":"added","notes":"Added the rib armor trim smithing template behind the \"Update 1.20\" experimental data pack."}],"colors":{"primary":"#302a33","dominant_hex":"#4b2830","average_hex":"#302a33","hue_group":"neutral","lightness":0.1824,"saturation":0.0968,"palette":["#4b2830","#1d1115","#341c1c","#3c1c24","#138ba7","#043b4b"],"color_groups":[{"hex":"#4b2830","weight":0.3333,"lightness":0.2255,"saturation":0.3043,"hue_group":"red"},{"hex":"#1d1115","weight":0.2182,"lightness":0.0902,"saturation":0.2609,"hue_group":"red"},{"hex":"#341c1c","weight":0.1455,"lightness":0.1569,"saturation":0.3,"hue_group":"red"},{"hex":"#3c1c24","weight":0.1333,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#138ba7","weight":0.103,"lightness":0.3647,"saturation":0.7957,"hue_group":"cyan"},{"hex":"#043b4b","weight":0.0667,"lightness":0.1549,"saturation":0.8987,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/rib_armor_trim_smithing_template.png","family":"rib_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mellohi","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snout_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_blocks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:rooted_dirt","name":"Rooted Dirt","entry_type":"block","description":"Rooted dirt is a natural decorative block.","history":[{"version":"1.17 21w05a","status":"added","notes":"Added rooted dirt."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb rooted dirt, providing the football/regular effect to the mob."}],"colors":{"primary":"#90684d","dominant_hex":"#80543d","average_hex":"#90684d","hue_group":"red","lightness":0.4333,"saturation":0.3032,"palette":["#80543d","#936c4d","#ab7c65","#bc845c","#5c3c2c","#bc948c"],"color_groups":[{"hex":"#80543d","weight":0.375,"lightness":0.3706,"saturation":0.3545,"hue_group":"red"},{"hex":"#936c4d","weight":0.2109,"lightness":0.4392,"saturation":0.3125,"hue_group":"red"},{"hex":"#ab7c65","weight":0.1367,"lightness":0.5333,"saturation":0.2941,"hue_group":"red"},{"hex":"#bc845c","weight":0.0977,"lightness":0.549,"saturation":0.4174,"hue_group":"red"},{"hex":"#5c3c2c","weight":0.0938,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#bc948c","weight":0.0859,"lightness":0.6431,"saturation":0.2637,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/rooted_dirt.png","family":"rooted_dirt","relations":[{"type":"visual_neighbors","target":"minecraft:brown_mushroom_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:packed_mud","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:hanging_roots","label":"Palette proche: Hanging Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:farmland","label":"Palette proche: Farmland","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dirt","label":"Palette proche: Dirt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:coarse_dirt","label":"Palette proche: Coarse Dirt","confidence":0.927},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.899},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.897},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.897},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.897},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.897},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.897},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.897},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.897},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.879},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.879},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.871},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.871},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.865},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.864},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.864},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.864},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.86},{"type":"color_analogous","target":"minecraft:mud_brick_slab","label":"Couleurs analogues: Mud Brick Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_stairs","label":"Couleurs analogues: Mud Brick Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_brick_wall","label":"Couleurs analogues: Mud Brick Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:mud_bricks","label":"Couleurs analogues: Mud Bricks","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_lantern","label":"Couleurs analogues: Copper Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_lantern","label":"Couleurs analogues: Waxed Copper Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_mushroom","label":"Couleurs analogues: Brown Mushroom","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_brown_mushroom","label":"Couleurs analogues: Potted Brown Mushroom","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.941},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.931},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.929},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.929},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.916},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.954},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.909},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.879},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.871},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.851},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.85},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.957},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.923},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.908},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.753},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.731},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.731},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.72},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.709},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55}],"category":""},{"id":"minecraft:rose_bush","name":"Rose Bush","entry_type":"block","description":"A rose bush is a tall flower that can be crafted into red dye.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added rose bushes."}],"colors":{"primary":"#625426","dominant_hex":"#244924","average_hex":"#625426","hue_group":"yellow","lightness":0.2667,"saturation":0.4412,"palette":["#244924","#4e932c","#2c742c","#8a2411","#ef3731","#bc242c"],"color_groups":[{"hex":"#244924","weight":0.2849,"lightness":0.2137,"saturation":0.3394,"hue_group":"green"},{"hex":"#4e932c","weight":0.2011,"lightness":0.3745,"saturation":0.5393,"hue_group":"green"},{"hex":"#2c742c","weight":0.162,"lightness":0.3137,"saturation":0.45,"hue_group":"green"},{"hex":"#8a2411","weight":0.1397,"lightness":0.3039,"saturation":0.7806,"hue_group":"red"},{"hex":"#ef3731","weight":0.1173,"lightness":0.5647,"saturation":0.8559,"hue_group":"red"},{"hex":"#bc242c","weight":0.095,"lightness":0.4392,"saturation":0.6786,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/rose_bush_bottom.png","family":"rose_bush","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sea_pickle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:poppy","label":"Palette proche: Poppy","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_poppy","label":"Palette proche: Potted Poppy","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.789},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.789},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.748},{"type":"color_neighbors","target":"minecraft:carrots","label":"Palette proche: Carrots","confidence":0.747},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.746},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.707},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.707},{"type":"color_neighbors","target":"minecraft:potted_spruce_sapling","label":"Palette proche: Potted Spruce Sapling","confidence":0.701},{"type":"color_neighbors","target":"minecraft:spruce_sapling","label":"Palette proche: Spruce Sapling","confidence":0.701},{"type":"color_neighbors","target":"minecraft:dark_oak_sapling","label":"Palette proche: Dark Oak Sapling","confidence":0.686},{"type":"color_bridge","target":"minecraft:potted_red_tulip","label":"Pont de nuance par palette: Potted Red Tulip","confidence":0.826},{"type":"color_bridge","target":"minecraft:red_tulip","label":"Pont de nuance par palette: Red Tulip","confidence":0.826},{"type":"color_bridge","target":"minecraft:beetroots","label":"Pont de nuance par palette: Beetroots","confidence":0.792},{"type":"color_bridge","target":"minecraft:carrots","label":"Pont de nuance par palette: Carrots","confidence":0.791},{"type":"color_bridge","target":"minecraft:potatoes","label":"Pont de nuance par palette: Potatoes","confidence":0.791},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.759},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.759},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.754},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.754},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.741},{"type":"color_analogous","target":"minecraft:hay_block","label":"Couleurs analogues: Hay Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_carpet","label":"Couleurs analogues: Yellow Carpet","confidence":0.926},{"type":"color_analogous","target":"minecraft:yellow_wool","label":"Couleurs analogues: Yellow Wool","confidence":0.926},{"type":"color_analogous","target":"minecraft:jungle_log","label":"Couleurs analogues: Jungle Log","confidence":0.923},{"type":"color_analogous","target":"minecraft:jungle_wood","label":"Couleurs analogues: Jungle Wood","confidence":0.923},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.922},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.922},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.922},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.932},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.929},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.929},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.919},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.916},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.895},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.896},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.893},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.893},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.893},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.883},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.877},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.793},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.753},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.96},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.935},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.696},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.644},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.63},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.63},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.624},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.577},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.676},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.642},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.627},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.627},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.627},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.627},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.62},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.593}],"category":""},{"id":"minecraft:rotten_flesh","name":"Rotten Flesh","entry_type":"item","description":"Rotten flesh is a food item that can be eaten by players, but may inflict Hunger. It can also be safely fed to tamed wolves or sold to cleric villagers.","history":[{"version":"1.8","status":"added","notes":"Added rotten flesh."},{"version":"1.10 16w20a","status":"added","notes":"Added husks , which drop rotten flesh."},{"version":"1.16 20w06a","status":"added","notes":"Added hoglins , which can drop rotten flesh if killed."}],"colors":{"primary":"#7b3c1d","dominant_hex":"#bc5c3a","average_hex":"#7b3c1d","hue_group":"red","lightness":0.298,"saturation":0.6184,"palette":["#bc5c3a","#2c140c","#794a1c","#8c341c","#542c14","#642c14"],"color_groups":[{"hex":"#bc5c3a","weight":0.3025,"lightness":0.4824,"saturation":0.5285,"hue_group":"red"},{"hex":"#2c140c","weight":0.1681,"lightness":0.1098,"saturation":0.5714,"hue_group":"red"},{"hex":"#794a1c","weight":0.1597,"lightness":0.2922,"saturation":0.6242,"hue_group":"red"},{"hex":"#8c341c","weight":0.1429,"lightness":0.3294,"saturation":0.6667,"hue_group":"red"},{"hex":"#542c14","weight":0.1261,"lightness":0.2039,"saturation":0.6154,"hue_group":"red"},{"hex":"#642c14","weight":0.1008,"lightness":0.2353,"saturation":0.6667,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/rotten_flesh.png","family":"rotten_flesh","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:rabbit_stew","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:saddle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider_eye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:saddle","name":"Saddle","entry_type":"item","description":"A saddle is equipment for certain animals that either enables or improves the act of riding them. All saddled animals can be directly controlled, except for pigs and striders, which must be guided using carrots or warped fungi on sticks.","history":[{"version":"20100625-1917","status":"added","notes":"Added saddles."},{"version":"wiki-history","status":"added","notes":"Added carrot on a stick to direct saddled pigs, effectively controlling them."},{"version":"wiki-history","status":"added","notes":"Added saddles to the loot tables of mineshaft minecarts, stronghold altar chests, village blacksmith chests, as well as desert and jungle pyramids ."}],"colors":{"primary":"#8f4521","dominant_hex":"#7a3d1e","average_hex":"#8f4521","hue_group":"red","lightness":0.3451,"saturation":0.625,"palette":["#7a3d1e","#54240c","#dc642c","#a24e28","#34140c","#eb8e63"],"color_groups":[{"hex":"#7a3d1e","weight":0.25,"lightness":0.298,"saturation":0.6053,"hue_group":"red"},{"hex":"#54240c","weight":0.1957,"lightness":0.1882,"saturation":0.75,"hue_group":"red"},{"hex":"#dc642c","weight":0.1957,"lightness":0.5176,"saturation":0.7154,"hue_group":"red"},{"hex":"#a24e28","weight":0.1848,"lightness":0.3961,"saturation":0.604,"hue_group":"red"},{"hex":"#34140c","weight":0.0978,"lightness":0.1255,"saturation":0.625,"hue_group":"red"},{"hex":"#eb8e63","weight":0.0761,"lightness":0.6549,"saturation":0.7727,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/saddle.png","family":"saddle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:rabbit_stew","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rotten_flesh","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lead","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:apple","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:salmon","name":"Salmon","entry_type":"item","description":"Salmon are common bucketable aquatic passive mobs found in oceans and rivers that are a source of raw salmon and, occasionally, bones\u200c[Bedrock Edition only] or bone meal.\u200c[Java Edition only]","history":[{"version":"1.13 18w08b","status":"added","notes":"Added salmon."},{"version":"1.21.2 24w33a","status":"added","notes":"Added small and large salmon sizes."}],"colors":{"primary":"#6d4941","dominant_hex":"#a83535","average_hex":"#6d4941","hue_group":"red","lightness":0.3412,"saturation":0.2529,"palette":["#a83535","#643c34","#252a25","#597361","#3c4c44","#a88078"],"color_groups":[{"hex":"#a83535","weight":0.2444,"lightness":0.4333,"saturation":0.5204,"hue_group":"red"},{"hex":"#643c34","weight":0.2333,"lightness":0.298,"saturation":0.3158,"hue_group":"red"},{"hex":"#252a25","weight":0.1444,"lightness":0.1549,"saturation":0.0633,"hue_group":"neutral"},{"hex":"#597361","weight":0.1333,"lightness":0.4,"saturation":0.1275,"hue_group":"green"},{"hex":"#3c4c44","weight":0.1222,"lightness":0.2667,"saturation":0.1176,"hue_group":"neutral"},{"hex":"#a88078","weight":0.1222,"lightness":0.5647,"saturation":0.2162,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/salmon.png","family":"salmon","relations":[{"type":"variants","target":"minecraft:salmon/mob","label":"Same family: salmon","confidence":0.75},{"type":"related_sets","target":"minecraft:salmon/mob","label":"Related set: salmon","confidence":0.8},{"type":"related_sets","target":"group:food","label":"Related set: food","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:trial_key","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_relic","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_upgrade_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_harness","label":"Shared hue group: red","confidence":0.55}],"category":"food"},{"id":"minecraft:salmon/mob","name":"Salmon / Mob","entry_type":"mob","description":"Salmon are common bucketable aquatic passive mobs found in oceans and rivers that are a source of raw salmon and, occasionally, bones\u200c[Bedrock Edition only] or bone meal.\u200c[Java Edition only]","history":[{"version":"1.13 18w08b","status":"added","notes":"Added salmon."},{"version":"1.21.2 24w33a","status":"added","notes":"Added small and large salmon sizes."}],"colors":{"primary":"#a66d60","dominant_hex":"#7b4132","average_hex":"#a66d60","hue_group":"red","lightness":0.5137,"saturation":0.2823,"palette":["#7b4132","#b73a39","#a07247","#ccbcbc","#bab3b0","#d7c7c7"],"color_groups":[{"hex":"#7b4132","weight":0.311,"lightness":0.3392,"saturation":0.422,"hue_group":"red"},{"hex":"#b73a39","weight":0.2105,"lightness":0.4706,"saturation":0.525,"hue_group":"red"},{"hex":"#a07247","weight":0.1699,"lightness":0.4529,"saturation":0.3853,"hue_group":"red"},{"hex":"#ccbcbc","weight":0.1244,"lightness":0.7686,"saturation":0.1356,"hue_group":"red"},{"hex":"#bab3b0","weight":0.1029,"lightness":0.7098,"saturation":0.0676,"hue_group":"neutral"},{"hex":"#d7c7c7","weight":0.0813,"lightness":0.8118,"saturation":0.1667,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/salmon.png","family":"salmon","relations":[{"type":"variants","target":"minecraft:salmon","label":"Same family: salmon","confidence":0.75},{"type":"related_sets","target":"minecraft:salmon","label":"Related set: salmon","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:salmon_bucket","name":"Salmon Bucket","entry_type":"item","description":"A bucket of salmon, internally known as a salmon bucket, is a living salmon inside of a water bucket.","history":[{"version":"1.13 18w08b","status":"added","notes":"Added salmon buckets."}],"colors":{"primary":"#71727a","dominant_hex":"#333333","average_hex":"#71727a","hue_group":"neutral","lightness":0.4608,"saturation":0.0383,"palette":["#333333","#7f807c","#5a483f","#e1e1e1","#acacac","#335bdb"],"color_groups":[{"hex":"#333333","weight":0.2667,"lightness":0.2,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7f807c","weight":0.2667,"lightness":0.4941,"saturation":0.0159,"hue_group":"neutral"},{"hex":"#5a483f","weight":0.14,"lightness":0.3,"saturation":0.1765,"hue_group":"red"},{"hex":"#e1e1e1","weight":0.14,"lightness":0.8824,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.1,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#335bdb","weight":0.0867,"lightness":0.5294,"saturation":0.7,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/salmon_bucket.png","family":"salmon_bucket","relations":[{"type":"related_sets","target":"group:food","label":"Related set: food","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:elder_guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nautilus_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55}],"category":"food"},{"id":"minecraft:salmon_spawn_egg","name":"Salmon Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#765e5b","dominant_hex":"#993e32","average_hex":"#765e5b","hue_group":"red","lightness":0.4098,"saturation":0.1292,"palette":["#993e32","#3c6284","#b1b3ba","#624730","#562222","#9d8145"],"color_groups":[{"hex":"#993e32","weight":0.2647,"lightness":0.398,"saturation":0.5074,"hue_group":"red"},{"hex":"#3c6284","weight":0.2574,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#b1b3ba","weight":0.1471,"lightness":0.7118,"saturation":0.0612,"hue_group":"neutral"},{"hex":"#624730","weight":0.1397,"lightness":0.2863,"saturation":0.3425,"hue_group":"red"},{"hex":"#562222","weight":0.0956,"lightness":0.2353,"saturation":0.4333,"hue_group":"red"},{"hex":"#9d8145","weight":0.0956,"lightness":0.4431,"saturation":0.3894,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/salmon_spawn_egg.png","family":"salmon_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:writable_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shears","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raiser_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_lava_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:sand","name":"Sand","entry_type":"block","description":"Sand is a gravity-affected block found abundantly in deserts and beaches, and less commonly in or near surface water.","history":[{"version":"0.0.14a","status":"added","notes":"Added sand."},{"version":"wiki-history","status":"added","notes":"added during this update."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb sand, providing the football/regular effect to the mob."}],"colors":{"primary":"#dbcfa3","dominant_hex":"#dccca4","average_hex":"#dbcfa3","hue_group":"yellow","lightness":0.749,"saturation":0.4375,"palette":["#dccca4","#d4c494","#e4dcb4","#d4bc8c","#e4e4bc","#ececcc"],"color_groups":[{"hex":"#dccca4","weight":0.4219,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#d4c494","weight":0.2617,"lightness":0.7059,"saturation":0.4267,"hue_group":"yellow"},{"hex":"#e4dcb4","weight":0.2266,"lightness":0.8,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#d4bc8c","weight":0.0391,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#e4e4bc","weight":0.0312,"lightness":0.8157,"saturation":0.4255,"hue_group":"yellow"},{"hex":"#ececcc","weight":0.0195,"lightness":0.8627,"saturation":0.4571,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sand.png","family":"sand","relations":[{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Palette proche: Smooth Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Palette proche: Smooth Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tall_dry_grass","label":"Palette proche: Tall Dry Grass","confidence":0.899},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.779},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.713},{"type":"color_bridge","target":"minecraft:target","label":"Pont de nuance par palette: Target","confidence":0.712},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.7},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.699},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.699},{"type":"color_bridge","target":"minecraft:cherry_door","label":"Pont de nuance par palette: Cherry Door","confidence":0.688},{"type":"color_bridge","target":"minecraft:cherry_trapdoor","label":"Pont de nuance par palette: Cherry Trapdoor","confidence":0.683},{"type":"color_bridge","target":"minecraft:cherry_button","label":"Pont de nuance par palette: Cherry Button","confidence":0.679},{"type":"color_bridge","target":"minecraft:cherry_fence","label":"Pont de nuance par palette: Cherry Fence","confidence":0.679},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone","label":"Couleurs analogues: Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_wall","label":"Couleurs analogues: Sandstone Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_sandstone","label":"Couleurs analogues: Chiseled Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:suspicious_sand","label":"Couleurs analogues: Suspicious Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_door","label":"Couleurs analogues: Birch Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:gold_block","label":"Couleurs analogues: Gold Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_weighted_pressure_plate","label":"Couleurs analogues: Light Weighted Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.957},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.953},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.942},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.933},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.929},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.89},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.89},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.937},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.937},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.937},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.927},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.852},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.837},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.832},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.796},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.96},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.96},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.692},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.677},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.677},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.671},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.648},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.624},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.631},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.601},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.601},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.598},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.588},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.588},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.573},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.572}],"category":"natural"},{"id":"minecraft:sandstone","name":"Sandstone","entry_type":"block","description":"Sandstone is a solid block related to sand that comes in two color variants, the other being red sandstone. Regular sandstone is commonly found in deserts and beaches. Sandstone also has three decorative variants: chiseled sandstone, cut sandstone, and smooth sandstone.","history":[{"version":"1.2","status":"added","notes":"Added sandstone."},{"version":"wiki-history","status":"added","notes":"Added the ability to craft sandstone slabs from sandstone."},{"version":"1.3.1 12w21a","status":"added","notes":"Added desert pyramids , which use all sandstone as building materials."}],"colors":{"primary":"#d8cb9c","dominant_hex":"#dcd4a4","average_hex":"#d8cb9c","hue_group":"yellow","lightness":0.7294,"saturation":0.4348,"palette":["#dcd4a4","#d4bc8c","#e5e5be","#c4ac74","#e4dcb4","#d4c494"],"color_groups":[{"hex":"#dcd4a4","weight":0.2578,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#d4bc8c","weight":0.1914,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#e5e5be","weight":0.1836,"lightness":0.8216,"saturation":0.4286,"hue_group":"yellow"},{"hex":"#c4ac74","weight":0.1523,"lightness":0.6118,"saturation":0.404,"hue_group":"yellow"},{"hex":"#e4dcb4","weight":0.125,"lightness":0.8,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#d4c494","weight":0.0898,"lightness":0.7059,"saturation":0.4267,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sandstone.png","family":"sandstone","relations":[{"type":"variants","target":"minecraft:sandstone_slab","label":"Same family: sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:sandstone_slab","label":"Related set: sandstone","confidence":0.8},{"type":"variants","target":"minecraft:sandstone_stairs","label":"Same family: sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:sandstone_stairs","label":"Related set: sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:sandstone_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azure_bluet","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Palette proche: Smooth Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Palette proche: Smooth Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tall_dry_grass","label":"Palette proche: Tall Dry Grass","confidence":0.895},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.768},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.751},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.731},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.711},{"type":"color_bridge","target":"minecraft:target","label":"Pont de nuance par palette: Target","confidence":0.695},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.689},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.675},{"type":"color_bridge","target":"minecraft:cherry_door","label":"Pont de nuance par palette: Cherry Door","confidence":0.67},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.668},{"type":"color_bridge","target":"minecraft:cherry_button","label":"Pont de nuance par palette: Cherry Button","confidence":0.658},{"type":"color_analogous","target":"minecraft:sandstone_wall","label":"Couleurs analogues: Sandstone Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_sandstone","label":"Couleurs analogues: Chiseled Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sand","label":"Couleurs analogues: Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:suspicious_sand","label":"Couleurs analogues: Suspicious Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_door","label":"Couleurs analogues: Birch Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:wildflowers","label":"Couleurs analogues: Wildflowers","confidence":0.96},{"type":"color_analogous","target":"minecraft:gold_block","label":"Couleurs analogues: Gold Block","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.952},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.948},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.946},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.934},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.928},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.895},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.895},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.932},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.932},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.932},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.921},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.857},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.838},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.831},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.791},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.96},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.96},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.686},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.671},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.671},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.665},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.654},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.618},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.613},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.583},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.582},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.579},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.57},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.57},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.555},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.553}],"category":""},{"id":"minecraft:sandstone_slab","name":"Sandstone Slab","entry_type":"block","description":"A sandstone slab is a decorative slab variant of sandstone that generates in desert structures and is used for building.","history":[{"version":"1.3","status":"added","notes":"Added sandstone slabs."}],"colors":{"primary":"#e0d6aa","dominant_hex":"#e4dcb4","average_hex":"#e0d6aa","hue_group":"yellow","lightness":0.7725,"saturation":0.4655,"palette":["#e4dcb4","#dcd4a4","#dccca4","#d4c494","#e4e4bc"],"color_groups":[{"hex":"#e4dcb4","weight":0.4375,"lightness":0.8,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#dcd4a4","weight":0.3281,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#dccca4","weight":0.1602,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#d4c494","weight":0.0391,"lightness":0.7059,"saturation":0.4267,"hue_group":"yellow"},{"hex":"#e4e4bc","weight":0.0352,"lightness":0.8157,"saturation":0.4255,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sandstone_top.png","family":"sandstone","relations":[{"type":"variants","target":"minecraft:sandstone","label":"Same family: sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:sandstone","label":"Related set: sandstone","confidence":0.8},{"type":"variants","target":"minecraft:sandstone_stairs","label":"Same family: sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:sandstone_stairs","label":"Related set: sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Palette proche: Smooth Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Palette proche: Smooth Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_door","label":"Palette proche: Birch Door","confidence":0.867},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.772},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.704},{"type":"color_bridge","target":"minecraft:target","label":"Pont de nuance par palette: Target","confidence":0.691},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.682},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.675},{"type":"color_bridge","target":"minecraft:cherry_trapdoor","label":"Pont de nuance par palette: Cherry Trapdoor","confidence":0.673},{"type":"color_bridge","target":"minecraft:cherry_door","label":"Pont de nuance par palette: Cherry Door","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_button","label":"Pont de nuance par palette: Cherry Button","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_fence","label":"Pont de nuance par palette: Cherry Fence","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_fence_gate","label":"Pont de nuance par palette: Cherry Fence Gate","confidence":0.672},{"type":"color_analogous","target":"minecraft:cut_sandstone_slab","label":"Couleurs analogues: Cut Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_stairs","label":"Couleurs analogues: Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone","label":"Couleurs analogues: Smooth Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone_slab","label":"Couleurs analogues: Smooth Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone_stairs","label":"Couleurs analogues: Smooth Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:ochre_froglight","label":"Couleurs analogues: Ochre Froglight","confidence":0.96},{"type":"color_analogous","target":"minecraft:wildflowers","label":"Couleurs analogues: Wildflowers","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.952},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.886},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.874},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.835},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.835},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.906},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.866},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.83},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.829},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.912},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.895},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.767},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.752},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.752},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.746},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.699},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.691},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.652},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.623},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.619},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.609},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.609},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.594},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.594}],"category":"building"},{"id":"minecraft:sandstone_stairs","name":"Sandstone Stairs","entry_type":"block","description":"Sandstone stairs are a decorative stairs variant of sandstone that generates in overworld structures and is used for building.","history":[{"version":"1.3.1 12w21a","status":"added","notes":"Added sandstone stairs."}],"colors":{"primary":"#e0d6aa","dominant_hex":"#e4dcb4","average_hex":"#e0d6aa","hue_group":"yellow","lightness":0.7725,"saturation":0.4655,"palette":["#e4dcb4","#dcd4a4","#dccca4","#d4c494","#e4e4bc"],"color_groups":[{"hex":"#e4dcb4","weight":0.4375,"lightness":0.8,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#dcd4a4","weight":0.3281,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#dccca4","weight":0.1602,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#d4c494","weight":0.0391,"lightness":0.7059,"saturation":0.4267,"hue_group":"yellow"},{"hex":"#e4e4bc","weight":0.0352,"lightness":0.8157,"saturation":0.4255,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sandstone_top.png","family":"sandstone","relations":[{"type":"variants","target":"minecraft:sandstone","label":"Same family: sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:sandstone","label":"Related set: sandstone","confidence":0.8},{"type":"variants","target":"minecraft:sandstone_slab","label":"Same family: sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:sandstone_slab","label":"Related set: sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Palette proche: Smooth Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Palette proche: Smooth Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_door","label":"Palette proche: Birch Door","confidence":0.867},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.772},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.704},{"type":"color_bridge","target":"minecraft:target","label":"Pont de nuance par palette: Target","confidence":0.691},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.682},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.675},{"type":"color_bridge","target":"minecraft:cherry_trapdoor","label":"Pont de nuance par palette: Cherry Trapdoor","confidence":0.673},{"type":"color_bridge","target":"minecraft:cherry_door","label":"Pont de nuance par palette: Cherry Door","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_button","label":"Pont de nuance par palette: Cherry Button","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_fence","label":"Pont de nuance par palette: Cherry Fence","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_fence_gate","label":"Pont de nuance par palette: Cherry Fence Gate","confidence":0.672},{"type":"color_analogous","target":"minecraft:cut_sandstone_slab","label":"Couleurs analogues: Cut Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_slab","label":"Couleurs analogues: Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone","label":"Couleurs analogues: Smooth Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone_slab","label":"Couleurs analogues: Smooth Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone_stairs","label":"Couleurs analogues: Smooth Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:ochre_froglight","label":"Couleurs analogues: Ochre Froglight","confidence":0.96},{"type":"color_analogous","target":"minecraft:wildflowers","label":"Couleurs analogues: Wildflowers","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.952},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.886},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.874},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.835},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.835},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.906},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.866},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.83},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.829},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.912},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.895},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.767},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.752},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.752},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.746},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.699},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.691},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.652},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.623},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.619},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.609},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.609},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.594},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.594}],"category":"building"},{"id":"minecraft:sandstone_wall","name":"Sandstone Wall","entry_type":"block","description":"A sandstone wall is a decorative wall variant of sandstone that generates in desert villages and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added sandstone walls."}],"colors":{"primary":"#d8cb9c","dominant_hex":"#dcd4a4","average_hex":"#d8cb9c","hue_group":"yellow","lightness":0.7294,"saturation":0.4348,"palette":["#dcd4a4","#d4bc8c","#e5e5be","#c4ac74","#e4dcb4","#d4c494"],"color_groups":[{"hex":"#dcd4a4","weight":0.2578,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#d4bc8c","weight":0.1914,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#e5e5be","weight":0.1836,"lightness":0.8216,"saturation":0.4286,"hue_group":"yellow"},{"hex":"#c4ac74","weight":0.1523,"lightness":0.6118,"saturation":0.404,"hue_group":"yellow"},{"hex":"#e4dcb4","weight":0.125,"lightness":0.8,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#d4c494","weight":0.0898,"lightness":0.7059,"saturation":0.4267,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sandstone.png","family":"sandstone_wall","relations":[{"type":"visual_neighbors","target":"minecraft:sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azure_bluet","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Palette proche: Smooth Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Palette proche: Smooth Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tall_dry_grass","label":"Palette proche: Tall Dry Grass","confidence":0.895},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.768},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.751},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.731},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.711},{"type":"color_bridge","target":"minecraft:target","label":"Pont de nuance par palette: Target","confidence":0.695},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.689},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.675},{"type":"color_bridge","target":"minecraft:cherry_door","label":"Pont de nuance par palette: Cherry Door","confidence":0.67},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.668},{"type":"color_bridge","target":"minecraft:cherry_button","label":"Pont de nuance par palette: Cherry Button","confidence":0.658},{"type":"color_analogous","target":"minecraft:sandstone","label":"Couleurs analogues: Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_sandstone","label":"Couleurs analogues: Chiseled Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sand","label":"Couleurs analogues: Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:suspicious_sand","label":"Couleurs analogues: Suspicious Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_door","label":"Couleurs analogues: Birch Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:wildflowers","label":"Couleurs analogues: Wildflowers","confidence":0.96},{"type":"color_analogous","target":"minecraft:gold_block","label":"Couleurs analogues: Gold Block","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.952},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.948},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.946},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.934},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.928},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.895},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.895},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.932},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.932},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.932},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.921},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.857},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.838},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.831},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.791},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.96},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.96},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.686},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.671},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.671},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.665},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.654},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.618},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.613},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.583},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.582},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.579},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.57},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.57},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.555},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.553}],"category":"building"},{"id":"minecraft:scaffolding","name":"Scaffolding","entry_type":"block","description":"Scaffolding is a climbable semi-solid block with a stable top platform and unique placement controls that simplify creating columns and bridges. Scaffolding pieces fall downward if placed too far away from a supporting block, which can naturally form into more supporting columns.","history":[{"version":"1.14 18w45a","status":"added","notes":"Added scaffolding."}],"colors":{"primary":"#aa8449","dominant_hex":"#aa7644","average_hex":"#aa8449","hue_group":"yellow","lightness":0.4765,"saturation":0.3992,"palette":["#aa7644","#8c6c44","#bb895c","#c2af4c","#dac25c","#774f2f"],"color_groups":[{"hex":"#aa7644","weight":0.2672,"lightness":0.4667,"saturation":0.4286,"hue_group":"red"},{"hex":"#8c6c44","weight":0.1983,"lightness":0.4078,"saturation":0.3462,"hue_group":"yellow"},{"hex":"#bb895c","weight":0.1552,"lightness":0.5471,"saturation":0.4113,"hue_group":"red"},{"hex":"#c2af4c","weight":0.1379,"lightness":0.5294,"saturation":0.4917,"hue_group":"yellow"},{"hex":"#dac25c","weight":0.1379,"lightness":0.6078,"saturation":0.63,"hue_group":"yellow"},{"hex":"#774f2f","weight":0.1034,"lightness":0.3255,"saturation":0.4337,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/scaffolding_top.png","family":"scaffolding","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wet_sponge","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_trapdoor","label":"Palette proche: Jungle Trapdoor","confidence":0.886},{"type":"color_neighbors","target":"minecraft:jungle_shelf","label":"Palette proche: Jungle Shelf","confidence":0.884},{"type":"color_neighbors","target":"minecraft:lectern","label":"Palette proche: Lectern","confidence":0.876},{"type":"color_neighbors","target":"minecraft:jungle_door","label":"Palette proche: Jungle Door","confidence":0.873},{"type":"color_neighbors","target":"minecraft:jungle_button","label":"Palette proche: Jungle Button","confidence":0.872},{"type":"color_neighbors","target":"minecraft:jungle_fence","label":"Palette proche: Jungle Fence","confidence":0.872},{"type":"color_neighbors","target":"minecraft:jungle_fence_gate","label":"Palette proche: Jungle Fence Gate","confidence":0.872},{"type":"color_neighbors","target":"minecraft:jungle_planks","label":"Palette proche: Jungle Planks","confidence":0.872},{"type":"color_neighbors","target":"minecraft:jungle_pressure_plate","label":"Palette proche: Jungle Pressure Plate","confidence":0.872},{"type":"color_neighbors","target":"minecraft:jungle_sign","label":"Palette proche: Jungle Sign","confidence":0.872},{"type":"color_neighbors","target":"minecraft:jungle_slab","label":"Palette proche: Jungle Slab","confidence":0.872},{"type":"color_neighbors","target":"minecraft:jungle_stairs","label":"Palette proche: Jungle Stairs","confidence":0.872},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.821},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.821},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.816},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.812},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.812},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.812},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.802},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.792},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.792},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.945},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.918},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.886},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.885},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.869},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.869},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.862},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.853},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper","label":"Harmonie triadique: Oxidized Cut Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper_slab","label":"Harmonie triadique: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper_stairs","label":"Harmonie triadique: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_cut_copper","label":"Harmonie triadique: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.929},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.929},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.928},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.923},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.907},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.891},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.889},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.839},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55}],"category":"utility"},{"id":"minecraft:scrape_pottery_sherd","name":"Scrape Pottery Sherd","entry_type":"item","description":"A scrape pottery sherd is a pottery sherd that depicts an axe. It can be found in trial chambers.","history":[{"version":"1.20.5","status":"added","notes":"Added scrape pottery sherds."}],"colors":{"primary":"#6c3d32","dominant_hex":"#724234","average_hex":"#6c3d32","hue_group":"red","lightness":0.3098,"saturation":0.3671,"palette":["#724234","#5c342c","#834b3c","#44241c","#9a5a4a","#542c24"],"color_groups":[{"hex":"#724234","weight":0.2166,"lightness":0.3255,"saturation":0.3735,"hue_group":"red"},{"hex":"#5c342c","weight":0.2102,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#834b3c","weight":0.1656,"lightness":0.3745,"saturation":0.3717,"hue_group":"red"},{"hex":"#44241c","weight":0.1465,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.1401,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"},{"hex":"#542c24","weight":0.121,"lightness":0.2353,"saturation":0.4,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/scrape_pottery_sherd.png","family":"scrape_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blade_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:angler_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:burn_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:sculk","name":"Sculk","entry_type":"block","description":"Sculk is a block found abundantly in the deep dark or converted from other blocks by a sculk catalyst. Like most of the rest of the sculk family, it drops experience when broken by a tool.","history":[{"version":"1.19","status":"added","notes":"Added sculk."}],"colors":{"primary":"#0d1e24","dominant_hex":"#0c1414","average_hex":"#0d1e24","hue_group":"cyan","lightness":0.0961,"saturation":0.4694,"palette":["#0c1414","#141c24","#042c34","#064453","#11abb0","#04645c"],"color_groups":[{"hex":"#0c1414","weight":0.4258,"lightness":0.0627,"saturation":0.25,"hue_group":"cyan"},{"hex":"#141c24","weight":0.3604,"lightness":0.1098,"saturation":0.2857,"hue_group":"blue"},{"hex":"#042c34","weight":0.1523,"lightness":0.1098,"saturation":0.8571,"hue_group":"cyan"},{"hex":"#064453","weight":0.0371,"lightness":0.1745,"saturation":0.8652,"hue_group":"cyan"},{"hex":"#11abb0","weight":0.0186,"lightness":0.3784,"saturation":0.8238,"hue_group":"cyan"},{"hex":"#04645c","weight":0.0059,"lightness":0.2039,"saturation":0.9231,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sculk.png","family":"sculk","relations":[{"type":"visual_neighbors","target":"minecraft:sculk_catalyst","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_crop","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:structure_void","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_pressure_plate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:sculk_vein","label":"Palette proche: Sculk Vein","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sculk_catalyst","label":"Palette proche: Sculk Catalyst","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.763},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.755},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.747},{"type":"color_neighbors","target":"minecraft:spawner","label":"Palette proche: Spawner","confidence":0.705},{"type":"color_neighbors","target":"minecraft:black_carpet","label":"Palette proche: Black Carpet","confidence":0.696},{"type":"color_neighbors","target":"minecraft:black_wool","label":"Palette proche: Black Wool","confidence":0.696},{"type":"color_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Palette proche: Calibrated Sculk Sensor","confidence":0.695},{"type":"color_neighbors","target":"minecraft:sculk_sensor","label":"Palette proche: Sculk Sensor","confidence":0.695},{"type":"color_neighbors","target":"minecraft:vault","label":"Palette proche: Vault","confidence":0.685},{"type":"color_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Palette proche: Cyan Glazed Terracotta","confidence":0.668},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.798},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.792},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par sous-ton: Black Carpet","confidence":0.75},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par sous-ton: Black Wool","confidence":0.75},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.741},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.701},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.686},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.684},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par palette: Black Candle","confidence":0.682},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.662},{"type":"color_analogous","target":"minecraft:sculk_catalyst","label":"Couleurs analogues: Sculk Catalyst","confidence":0.96},{"type":"color_analogous","target":"minecraft:sculk_vein","label":"Couleurs analogues: Sculk Vein","confidence":0.912},{"type":"color_analogous","target":"minecraft:light_blue_carpet","label":"Couleurs analogues: Light Blue Carpet","confidence":0.907},{"type":"color_analogous","target":"minecraft:light_blue_wool","label":"Couleurs analogues: Light Blue Wool","confidence":0.907},{"type":"color_analogous","target":"minecraft:light_blue_shulker_box","label":"Couleurs analogues: Light Blue Shulker Box","confidence":0.872},{"type":"color_analogous","target":"minecraft:light_blue_concrete_powder","label":"Couleurs analogues: Light Blue Concrete Powder","confidence":0.866},{"type":"color_analogous","target":"minecraft:cyan_stained_glass_pane","label":"Couleurs analogues: Cyan Stained Glass Pane","confidence":0.842},{"type":"color_analogous","target":"minecraft:cyan_stained_glass","label":"Couleurs analogues: Cyan Stained Glass","confidence":0.827},{"type":"color_complement","target":"minecraft:copper_chain","label":"Contraste complementaire: Copper Chain","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_copper_chain","label":"Contraste complementaire: Waxed Copper Chain","confidence":0.96},{"type":"color_complement","target":"minecraft:copper_bars","label":"Contraste complementaire: Copper Bars","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_copper_bars","label":"Contraste complementaire: Waxed Copper Bars","confidence":0.96},{"type":"color_complement","target":"minecraft:chiseled_copper","label":"Contraste complementaire: Chiseled Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_chiseled_copper","label":"Contraste complementaire: Waxed Chiseled Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:copper_block","label":"Contraste complementaire: Copper Block","confidence":0.96},{"type":"color_complement","target":"minecraft:copper_chest","label":"Contraste complementaire: Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:cave_vines","label":"Harmonie triadique: Cave Vines","confidence":0.956},{"type":"color_triad","target":"minecraft:lime_glazed_terracotta","label":"Harmonie triadique: Lime Glazed Terracotta","confidence":0.955},{"type":"color_triad","target":"minecraft:melon","label":"Harmonie triadique: Melon","confidence":0.95},{"type":"color_triad","target":"minecraft:potted_azalea_bush","label":"Harmonie triadique: Potted Azalea Bush","confidence":0.923},{"type":"color_triad","target":"minecraft:green_concrete_powder","label":"Harmonie triadique: Green Concrete Powder","confidence":0.914},{"type":"color_triad","target":"minecraft:azalea","label":"Harmonie triadique: Azalea","confidence":0.911},{"type":"color_triad","target":"minecraft:cave_vines_plant","label":"Harmonie triadique: Cave Vines Plant","confidence":0.902},{"type":"color_triad","target":"minecraft:flowering_azalea_leaves","label":"Harmonie triadique: Flowering Azalea Leaves","confidence":0.891},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.948},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.923},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.923},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.905},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.904},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.833},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.831},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.831},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.819},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.786},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.773},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.773},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.763}],"category":""},{"id":"minecraft:sculk_catalyst","name":"Sculk Catalyst","entry_type":"block","description":"A sculk catalyst is a sculk block that \"blooms\" when a mob or player dies nearby, which may convert nearby blocks to sculk blocks (except for more sculk catalysts).","history":[{"version":"1.19","status":"added","notes":"Added sculk catalysts."}],"colors":{"primary":"#0f2026","dominant_hex":"#0c1414","average_hex":"#0f2026","hue_group":"cyan","lightness":0.1039,"saturation":0.434,"palette":["#0c1414","#141c24","#042c34","#44546c","#2cdcec","#049494"],"color_groups":[{"hex":"#0c1414","weight":0.4258,"lightness":0.0627,"saturation":0.25,"hue_group":"cyan"},{"hex":"#141c24","weight":0.3633,"lightness":0.1098,"saturation":0.2857,"hue_group":"blue"},{"hex":"#042c34","weight":0.1484,"lightness":0.1098,"saturation":0.8571,"hue_group":"cyan"},{"hex":"#44546c","weight":0.0352,"lightness":0.3451,"saturation":0.2273,"hue_group":"blue"},{"hex":"#2cdcec","weight":0.0156,"lightness":0.549,"saturation":0.8348,"hue_group":"cyan"},{"hex":"#049494","weight":0.0117,"lightness":0.298,"saturation":0.9474,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sculk_catalyst_top.png","family":"sculk_catalyst","relations":[{"type":"visual_neighbors","target":"minecraft:sculk","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_pressure_plate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:sculk","label":"Palette proche: Sculk","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sculk_vein","label":"Palette proche: Sculk Vein","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.758},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.751},{"type":"color_neighbors","target":"minecraft:vault","label":"Palette proche: Vault","confidence":0.744},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.743},{"type":"color_neighbors","target":"minecraft:soul_lantern","label":"Palette proche: Soul Lantern","confidence":0.735},{"type":"color_neighbors","target":"minecraft:spawner","label":"Palette proche: Spawner","confidence":0.718},{"type":"color_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Palette proche: Calibrated Sculk Sensor","confidence":0.713},{"type":"color_neighbors","target":"minecraft:sculk_sensor","label":"Palette proche: Sculk Sensor","confidence":0.713},{"type":"color_neighbors","target":"minecraft:iron_chain","label":"Palette proche: Iron Chain","confidence":0.707},{"type":"color_neighbors","target":"minecraft:black_carpet","label":"Palette proche: Black Carpet","confidence":0.7},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.8},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.795},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.789},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.759},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par sous-ton: Black Carpet","confidence":0.753},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par sous-ton: Black Wool","confidence":0.753},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.727},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.724},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.711},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.711},{"type":"color_analogous","target":"minecraft:sculk","label":"Couleurs analogues: Sculk","confidence":0.96},{"type":"color_analogous","target":"minecraft:sculk_vein","label":"Couleurs analogues: Sculk Vein","confidence":0.914},{"type":"color_analogous","target":"minecraft:light_blue_carpet","label":"Couleurs analogues: Light Blue Carpet","confidence":0.909},{"type":"color_analogous","target":"minecraft:light_blue_wool","label":"Couleurs analogues: Light Blue Wool","confidence":0.909},{"type":"color_analogous","target":"minecraft:light_blue_shulker_box","label":"Couleurs analogues: Light Blue Shulker Box","confidence":0.874},{"type":"color_analogous","target":"minecraft:light_blue_concrete_powder","label":"Couleurs analogues: Light Blue Concrete Powder","confidence":0.867},{"type":"color_analogous","target":"minecraft:cyan_stained_glass_pane","label":"Couleurs analogues: Cyan Stained Glass Pane","confidence":0.844},{"type":"color_analogous","target":"minecraft:cyan_stained_glass","label":"Couleurs analogues: Cyan Stained Glass","confidence":0.829},{"type":"color_complement","target":"minecraft:copper_chain","label":"Contraste complementaire: Copper Chain","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_copper_chain","label":"Contraste complementaire: Waxed Copper Chain","confidence":0.96},{"type":"color_complement","target":"minecraft:copper_bars","label":"Contraste complementaire: Copper Bars","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_copper_bars","label":"Contraste complementaire: Waxed Copper Bars","confidence":0.96},{"type":"color_complement","target":"minecraft:chiseled_copper","label":"Contraste complementaire: Chiseled Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:waxed_chiseled_copper","label":"Contraste complementaire: Waxed Chiseled Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:copper_block","label":"Contraste complementaire: Copper Block","confidence":0.96},{"type":"color_complement","target":"minecraft:copper_chest","label":"Contraste complementaire: Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:cave_vines","label":"Harmonie triadique: Cave Vines","confidence":0.956},{"type":"color_triad","target":"minecraft:lime_glazed_terracotta","label":"Harmonie triadique: Lime Glazed Terracotta","confidence":0.952},{"type":"color_triad","target":"minecraft:melon","label":"Harmonie triadique: Melon","confidence":0.947},{"type":"color_triad","target":"minecraft:potted_azalea_bush","label":"Harmonie triadique: Potted Azalea Bush","confidence":0.925},{"type":"color_triad","target":"minecraft:green_concrete_powder","label":"Harmonie triadique: Green Concrete Powder","confidence":0.915},{"type":"color_triad","target":"minecraft:azalea","label":"Harmonie triadique: Azalea","confidence":0.912},{"type":"color_triad","target":"minecraft:cave_vines_plant","label":"Harmonie triadique: Cave Vines Plant","confidence":0.901},{"type":"color_triad","target":"minecraft:flowering_azalea_leaves","label":"Harmonie triadique: Flowering Azalea Leaves","confidence":0.894},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.945},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.925},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.925},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.904},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.903},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.824},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.823},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.823},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.813},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.779},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.766},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.766},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.757}],"category":""},{"id":"minecraft:sculk_sensor","name":"Sculk Sensor","entry_type":"block","description":"A sculk sensor is a sculk block that detects vibrations caused by nearby actions and events and emits a redstone signal in response. Player-caused vibrations can also trigger nearby sculk shriekers. Sneaking prevents the creation of vibrations while moving, and wool can be used to block or prevent them. Placing an amethyst block next to a sculk sensor allows it to \"relay\" detected vibrations to other sculk sensors.","history":[{"version":"1.17 20w49a","status":"added","notes":"Added sculk sensor with a new inactive and clicking animation."},{"version":"21w05a","status":"added","notes":"Added the following game events: Output Vibration type"},{"version":"6","status":"added","notes":"added to or removed from a flower pot , a campfire is filled with food [ note 2 ] , a candle is placed on a cake , a big dripleaf is tilted, a bell is rung, a daylight detector switches mode, a bee enters or exits a beeh"}],"colors":{"primary":"#097b7f","dominant_hex":"#0c6c6c","average_hex":"#097b7f","hue_group":"cyan","lightness":0.2667,"saturation":0.8676,"palette":["#0c6c6c","#049494","#044654","#2cdcec","#042c34","#1cb4bc"],"color_groups":[{"hex":"#0c6c6c","weight":0.3026,"lightness":0.2353,"saturation":0.8,"hue_group":"cyan"},{"hex":"#049494","weight":0.2947,"lightness":0.298,"saturation":0.9474,"hue_group":"cyan"},{"hex":"#044654","weight":0.1965,"lightness":0.1725,"saturation":0.9091,"hue_group":"cyan"},{"hex":"#2cdcec","weight":0.1139,"lightness":0.549,"saturation":0.8348,"hue_group":"cyan"},{"hex":"#042c34","weight":0.0629,"lightness":0.1098,"saturation":0.8571,"hue_group":"cyan"},{"hex":"#1cb4bc","weight":0.0295,"lightness":0.4235,"saturation":0.7407,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sculk_sensor_tendril_active.png","family":"sculk_sensor","relations":[{"type":"visual_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines_plant","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_sprouts","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Palette proche: Calibrated Sculk Sensor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.865},{"type":"color_neighbors","target":"minecraft:sculk_vein","label":"Palette proche: Sculk Vein","confidence":0.838},{"type":"color_neighbors","target":"minecraft:soul_fire","label":"Palette proche: Soul Fire","confidence":0.838},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.826},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.818},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.818},{"type":"color_neighbors","target":"minecraft:structure_void","label":"Palette proche: Structure Void","confidence":0.797},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.789},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.782},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.781},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.78},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.58},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_analogous","target":"minecraft:calibrated_sculk_sensor","label":"Couleurs analogues: Calibrated Sculk Sensor","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_wart_block","label":"Couleurs analogues: Warped Wart Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_carpet","label":"Couleurs analogues: Cyan Carpet","confidence":0.958},{"type":"color_analogous","target":"minecraft:cyan_wool","label":"Couleurs analogues: Cyan Wool","confidence":0.958},{"type":"color_analogous","target":"minecraft:cyan_candle","label":"Couleurs analogues: Cyan Candle","confidence":0.953},{"type":"color_analogous","target":"minecraft:blue_orchid","label":"Couleurs analogues: Blue Orchid","confidence":0.948},{"type":"color_analogous","target":"minecraft:potted_blue_orchid","label":"Couleurs analogues: Potted Blue Orchid","confidence":0.948},{"type":"color_analogous","target":"minecraft:soul_fire","label":"Couleurs analogues: Soul Fire","confidence":0.947},{"type":"color_complement","target":"minecraft:weeping_vines_plant","label":"Contraste complementaire: Weeping Vines Plant","confidence":0.96},{"type":"color_complement","target":"minecraft:red_carpet","label":"Contraste complementaire: Red Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:red_wool","label":"Contraste complementaire: Red Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:red_candle","label":"Contraste complementaire: Red Candle","confidence":0.959},{"type":"color_complement","target":"minecraft:potted_red_mushroom","label":"Contraste complementaire: Potted Red Mushroom","confidence":0.953},{"type":"color_complement","target":"minecraft:red_mushroom","label":"Contraste complementaire: Red Mushroom","confidence":0.953},{"type":"color_complement","target":"minecraft:red_concrete_powder","label":"Contraste complementaire: Red Concrete Powder","confidence":0.95},{"type":"color_complement","target":"minecraft:mangrove_door","label":"Contraste complementaire: Mangrove Door","confidence":0.947},{"type":"color_triad","target":"minecraft:bubble_coral_block","label":"Harmonie triadique: Bubble Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:cocoa","label":"Harmonie triadique: Cocoa","confidence":0.945},{"type":"color_triad","target":"minecraft:end_stone","label":"Harmonie triadique: End Stone","confidence":0.943},{"type":"color_triad","target":"minecraft:bubble_coral","label":"Harmonie triadique: Bubble Coral","confidence":0.928},{"type":"color_triad","target":"minecraft:bubble_coral_fan","label":"Harmonie triadique: Bubble Coral Fan","confidence":0.923},{"type":"color_triad","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie triadique: Bubble Coral Wall Fan","confidence":0.923},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.914},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.91},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.949},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.947},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.937},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.937},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.912},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.912},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.899},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.897},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.678},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.678},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.669},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.643},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.61},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.597},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.597},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.587}],"category":""},{"id":"minecraft:sculk_shrieker","name":"Sculk Shrieker","entry_type":"block","description":"A sculk shrieker is a sculk block that will \"shriek\" if any player touches its top (even indirectly) or activates a nearby sculk sensor. Only players can trigger it. Naturally-generated sculk shriekers also inflict Darkness and may summon a warden if triggered, but shriekers placed by players or sculk catalysts are completely inert and harmless.","history":[{"version":"1.19","status":"added","notes":"Added sculk shriekers."},{"version":"wiki-history","status":"added","notes":"added in this snapshot."},{"version":"22w12a","status":"added","notes":"Added functionality to the sculk shrieker."}],"colors":{"primary":"#c7cdaa","dominant_hex":"#d4d4b4","average_hex":"#c7cdaa","hue_group":"yellow","lightness":0.7353,"saturation":0.2593,"palette":["#d4d4b4","#bcc49c"],"color_groups":[{"hex":"#d4d4b4","weight":0.5385,"lightness":0.7686,"saturation":0.2712,"hue_group":"yellow"},{"hex":"#bcc49c","weight":0.4615,"lightness":0.6902,"saturation":0.2532,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sculk_shrieker_top.png","family":"sculk_shrieker","relations":[{"type":"visual_neighbors","target":"minecraft:birch_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxeye_daisy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_oxeye_daisy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_quartz_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:quartz_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mushroom_stem","label":"Palette proche: Mushroom Stem","confidence":0.818},{"type":"color_neighbors","target":"minecraft:bone_block","label":"Palette proche: Bone Block","confidence":0.785},{"type":"color_neighbors","target":"minecraft:chiseled_quartz_block","label":"Palette proche: Chiseled Quartz Block","confidence":0.741},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.737},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.737},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.737},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.737},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Palette proche: Smooth Sandstone Slab","confidence":0.737},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Palette proche: Smooth Sandstone Stairs","confidence":0.737},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.733},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.719},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.717},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.85},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.78},{"type":"color_bridge","target":"minecraft:light_gray_concrete_powder","label":"Pont de nuance par palette: Light Gray Concrete Powder","confidence":0.76},{"type":"color_bridge","target":"minecraft:smooth_quartz","label":"Pont de nuance par palette: Smooth Quartz","confidence":0.726},{"type":"color_bridge","target":"minecraft:smooth_quartz_slab","label":"Pont de nuance par palette: Smooth Quartz Slab","confidence":0.726},{"type":"color_bridge","target":"minecraft:smooth_quartz_stairs","label":"Pont de nuance par palette: Smooth Quartz Stairs","confidence":0.726},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.705},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.705},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.703},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.703},{"type":"color_analogous","target":"minecraft:flowering_azalea","label":"Couleurs analogues: Flowering Azalea","confidence":0.925},{"type":"color_analogous","target":"minecraft:dandelion","label":"Couleurs analogues: Dandelion","confidence":0.918},{"type":"color_analogous","target":"minecraft:potted_dandelion","label":"Couleurs analogues: Potted Dandelion","confidence":0.918},{"type":"color_analogous","target":"minecraft:green_terracotta","label":"Couleurs analogues: Green Terracotta","confidence":0.901},{"type":"color_analogous","target":"minecraft:bamboo_block","label":"Couleurs analogues: Bamboo Block","confidence":0.897},{"type":"color_analogous","target":"minecraft:end_stone_brick_slab","label":"Couleurs analogues: End Stone Brick Slab","confidence":0.896},{"type":"color_analogous","target":"minecraft:end_stone_brick_stairs","label":"Couleurs analogues: End Stone Brick Stairs","confidence":0.896},{"type":"color_analogous","target":"minecraft:end_stone_brick_wall","label":"Couleurs analogues: End Stone Brick Wall","confidence":0.896},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.786},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.758},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.758},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.758},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.758},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.749},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.617},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.59},{"type":"color_triad","target":"minecraft:glass_pane","label":"Harmonie triadique: Glass Pane","confidence":0.938},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.924},{"type":"color_triad","target":"minecraft:cyan_concrete","label":"Harmonie triadique: Cyan Concrete","confidence":0.908},{"type":"color_triad","target":"minecraft:sculk_vein","label":"Harmonie triadique: Sculk Vein","confidence":0.894},{"type":"color_triad","target":"minecraft:glass","label":"Harmonie triadique: Glass","confidence":0.864},{"type":"color_triad","target":"minecraft:cyan_shulker_box","label":"Harmonie triadique: Cyan Shulker Box","confidence":0.847},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.835},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.783},{"type":"color_square","target":"minecraft:magenta_terracotta","label":"Harmonie carree: Magenta Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:purple_terracotta","label":"Harmonie carree: Purple Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:oxidized_copper_chain","label":"Harmonie carree: Oxidized Copper Chain","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie carree: Waxed Oxidized Copper Chain","confidence":0.96},{"type":"color_square","target":"minecraft:pink_shulker_box","label":"Harmonie carree: Pink Shulker Box","confidence":0.954},{"type":"color_square","target":"minecraft:oxidized_copper_door","label":"Harmonie carree: Oxidized Copper Door","confidence":0.951},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie carree: Waxed Oxidized Copper Door","confidence":0.951},{"type":"color_square","target":"minecraft:pink_stained_glass","label":"Harmonie carree: Pink Stained Glass","confidence":0.951},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.62},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.59},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.586},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.58},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.58},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.569},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.569},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.565}],"category":""},{"id":"minecraft:sculk_vein","name":"Sculk Vein","entry_type":"block","description":"A sculk vein is a block found in the deep dark or generated by sculk catalysts. It can generate or be placed on any side of a solid block.","history":[{"version":"1.19","status":"added","notes":"Added sculk veins."}],"colors":{"primary":"#08303a","dominant_hex":"#042c34","average_hex":"#08303a","hue_group":"cyan","lightness":0.1294,"saturation":0.7576,"palette":["#042c34","#044454","#141c24","#0c1414","#0fa9ad","#04645c"],"color_groups":[{"hex":"#042c34","weight":0.3418,"lightness":0.1098,"saturation":0.8571,"hue_group":"cyan"},{"hex":"#044454","weight":0.3234,"lightness":0.1725,"saturation":0.9091,"hue_group":"cyan"},{"hex":"#141c24","weight":0.2105,"lightness":0.1098,"saturation":0.2857,"hue_group":"blue"},{"hex":"#0c1414","weight":0.0847,"lightness":0.0627,"saturation":0.25,"hue_group":"cyan"},{"hex":"#0fa9ad","weight":0.0297,"lightness":0.3686,"saturation":0.8404,"hue_group":"cyan"},{"hex":"#04645c","weight":0.0099,"lightness":0.2039,"saturation":0.9231,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sculk_vein.png","family":"sculk_vein","relations":[{"type":"visual_neighbors","target":"minecraft:cyan_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines_plant","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_sprouts","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:sculk","label":"Palette proche: Sculk","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sculk_catalyst","label":"Palette proche: Sculk Catalyst","confidence":0.94},{"type":"color_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Palette proche: Calibrated Sculk Sensor","confidence":0.838},{"type":"color_neighbors","target":"minecraft:sculk_sensor","label":"Palette proche: Sculk Sensor","confidence":0.838},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.784},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.74},{"type":"color_neighbors","target":"minecraft:structure_void","label":"Palette proche: Structure Void","confidence":0.709},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.706},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.706},{"type":"color_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Palette proche: Cyan Glazed Terracotta","confidence":0.686},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.679},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.671},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.689},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.676},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.662},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par sous-ton: Black Carpet","confidence":0.649},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par sous-ton: Black Wool","confidence":0.649},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.642},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.625},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.611},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par palette: Black Candle","confidence":0.607},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.586},{"type":"color_analogous","target":"minecraft:sculk_catalyst","label":"Couleurs analogues: Sculk Catalyst","confidence":0.914},{"type":"color_analogous","target":"minecraft:sculk","label":"Couleurs analogues: Sculk","confidence":0.912},{"type":"color_analogous","target":"minecraft:cyan_concrete","label":"Couleurs analogues: Cyan Concrete","confidence":0.895},{"type":"color_analogous","target":"minecraft:light_blue_concrete_powder","label":"Couleurs analogues: Light Blue Concrete Powder","confidence":0.873},{"type":"color_analogous","target":"minecraft:cyan_shulker_box","label":"Couleurs analogues: Cyan Shulker Box","confidence":0.861},{"type":"color_analogous","target":"minecraft:light_blue_carpet","label":"Couleurs analogues: Light Blue Carpet","confidence":0.833},{"type":"color_analogous","target":"minecraft:light_blue_wool","label":"Couleurs analogues: Light Blue Wool","confidence":0.833},{"type":"color_analogous","target":"minecraft:structure_void","label":"Couleurs analogues: Structure Void","confidence":0.831},{"type":"color_complement","target":"minecraft:ancient_debris","label":"Contraste complementaire: Ancient Debris","confidence":0.951},{"type":"color_complement","target":"minecraft:nether_gold_ore","label":"Contraste complementaire: Nether Gold Ore","confidence":0.927},{"type":"color_complement","target":"minecraft:flower_pot","label":"Contraste complementaire: Flower Pot","confidence":0.914},{"type":"color_complement","target":"minecraft:potted_bamboo","label":"Contraste complementaire: Potted Bamboo","confidence":0.914},{"type":"color_complement","target":"minecraft:potted_cactus","label":"Contraste complementaire: Potted Cactus","confidence":0.914},{"type":"color_complement","target":"minecraft:potted_mangrove_propagule","label":"Contraste complementaire: Potted Mangrove Propagule","confidence":0.914},{"type":"color_complement","target":"minecraft:brick_slab","label":"Contraste complementaire: Brick Slab","confidence":0.912},{"type":"color_complement","target":"minecraft:brick_stairs","label":"Contraste complementaire: Brick Stairs","confidence":0.912},{"type":"color_triad","target":"minecraft:bamboo_block","label":"Harmonie triadique: Bamboo Block","confidence":0.96},{"type":"color_triad","target":"minecraft:dandelion","label":"Harmonie triadique: Dandelion","confidence":0.955},{"type":"color_triad","target":"minecraft:potted_dandelion","label":"Harmonie triadique: Potted Dandelion","confidence":0.955},{"type":"color_triad","target":"minecraft:lime_terracotta","label":"Harmonie triadique: Lime Terracotta","confidence":0.934},{"type":"color_triad","target":"minecraft:cave_vines_plant","label":"Harmonie triadique: Cave Vines Plant","confidence":0.933},{"type":"color_triad","target":"minecraft:potted_wither_rose","label":"Harmonie triadique: Potted Wither Rose","confidence":0.923},{"type":"color_triad","target":"minecraft:wither_rose","label":"Harmonie triadique: Wither Rose","confidence":0.923},{"type":"color_triad","target":"minecraft:flowering_azalea_leaves","label":"Harmonie triadique: Flowering Azalea Leaves","confidence":0.916},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.941},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.919},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.881},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.881},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.877},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.865},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.841},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.841},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.807},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.807},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.799},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.778},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.745},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.732},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.732},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.722}],"category":""},{"id":"minecraft:sea_lantern","name":"Sea Lantern","entry_type":"block","description":"A sea lantern is an underwater light source that appears in ocean monuments and ocean ruins.","history":[{"version":"14w25a","status":"added","notes":"Added sea lanterns."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb sea lanterns, providing the football/regular effect to the mob."}],"colors":{"primary":"#acc8be","dominant_hex":"#528679","average_hex":"#acc8be","hue_group":"cyan","lightness":0.7294,"saturation":0.2029,"palette":["#528679","#e2ece3","#cfe2da","#dce7dd","#85b6ab","#b1d1c8"],"color_groups":[{"hex":"#528679","weight":0.25,"lightness":0.4235,"saturation":0.2407,"hue_group":"cyan"},{"hex":"#e2ece3","weight":0.2297,"lightness":0.9059,"saturation":0.2083,"hue_group":"green"},{"hex":"#cfe2da","weight":0.2023,"lightness":0.849,"saturation":0.2468,"hue_group":"cyan"},{"hex":"#dce7dd","weight":0.143,"lightness":0.8843,"saturation":0.1864,"hue_group":"green"},{"hex":"#85b6ab","weight":0.0898,"lightness":0.6176,"saturation":0.2513,"hue_group":"cyan"},{"hex":"#b1d1c8","weight":0.0852,"lightness":0.7569,"saturation":0.2581,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sea_lantern.png","family":"sea_lantern","relations":[{"type":"visual_neighbors","target":"minecraft:white_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chain_command_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_wall","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_bricks","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chain_command_block","label":"Palette proche: Chain Command Block","confidence":0.784},{"type":"color_neighbors","target":"minecraft:prismarine","label":"Palette proche: Prismarine","confidence":0.738},{"type":"color_neighbors","target":"minecraft:prismarine_slab","label":"Palette proche: Prismarine Slab","confidence":0.738},{"type":"color_neighbors","target":"minecraft:prismarine_stairs","label":"Palette proche: Prismarine Stairs","confidence":0.738},{"type":"color_neighbors","target":"minecraft:prismarine_wall","label":"Palette proche: Prismarine Wall","confidence":0.738},{"type":"color_neighbors","target":"minecraft:prismarine_brick_slab","label":"Palette proche: Prismarine Brick Slab","confidence":0.725},{"type":"color_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Palette proche: Prismarine Brick Stairs","confidence":0.725},{"type":"color_neighbors","target":"minecraft:prismarine_bricks","label":"Palette proche: Prismarine Bricks","confidence":0.725},{"type":"color_neighbors","target":"minecraft:white_shulker_box","label":"Palette proche: White Shulker Box","confidence":0.723},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Palette proche: Waxed Weathered Copper Lantern","confidence":0.71},{"type":"color_neighbors","target":"minecraft:weathered_copper_lantern","label":"Palette proche: Weathered Copper Lantern","confidence":0.71},{"type":"color_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Palette proche: Oxidized Copper Lantern","confidence":0.707},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par palette: Chain Command Block","confidence":0.822},{"type":"color_bridge","target":"minecraft:prismarine","label":"Pont de nuance par sous-ton: Prismarine","confidence":0.784},{"type":"color_bridge","target":"minecraft:prismarine_slab","label":"Pont de nuance par sous-ton: Prismarine Slab","confidence":0.784},{"type":"color_bridge","target":"minecraft:prismarine_stairs","label":"Pont de nuance par sous-ton: Prismarine Stairs","confidence":0.784},{"type":"color_bridge","target":"minecraft:prismarine_wall","label":"Pont de nuance par sous-ton: Prismarine Wall","confidence":0.784},{"type":"color_bridge","target":"minecraft:prismarine_brick_slab","label":"Pont de nuance par sous-ton: Prismarine Brick Slab","confidence":0.774},{"type":"color_bridge","target":"minecraft:prismarine_brick_stairs","label":"Pont de nuance par sous-ton: Prismarine Brick Stairs","confidence":0.774},{"type":"color_bridge","target":"minecraft:prismarine_bricks","label":"Pont de nuance par sous-ton: Prismarine Bricks","confidence":0.774},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par palette: White Shulker Box","confidence":0.771},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par palette: Waxed Weathered Copper Lantern","confidence":0.761},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.637},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.626},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.605},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.605},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.605},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.605},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.603},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.59}],"category":""},{"id":"minecraft:sea_pickle","name":"Sea Pickle","entry_type":"block","description":"A sea pickle is a block found in warm oceans. While in water it emits light, and can be spread using bone meal if placed on a living coral block. Up to four sea pickles can be placed in one block space, which affects the amount of light produced while in water.","history":[{"version":"1.13 18w14b","status":"added","notes":"Added sea pickles."},{"version":"wiki-history","status":"added","notes":"added to a stack when aiming at adjacent blocks instead of requiring the player to target the pickle stack directly"},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell sea pickles."}],"colors":{"primary":"#5a6128","dominant_hex":"#687028","average_hex":"#5a6128","hue_group":"yellow","lightness":0.2686,"saturation":0.4161,"palette":["#687028","#4c4c1c","#43441b","#545c1c","#2c3414","#c3efc1"],"color_groups":[{"hex":"#687028","weight":0.3981,"lightness":0.298,"saturation":0.4737,"hue_group":"yellow"},{"hex":"#4c4c1c","weight":0.2037,"lightness":0.2039,"saturation":0.4615,"hue_group":"yellow"},{"hex":"#43441b","weight":0.1667,"lightness":0.1863,"saturation":0.4316,"hue_group":"yellow"},{"hex":"#545c1c","weight":0.1019,"lightness":0.2353,"saturation":0.5333,"hue_group":"yellow"},{"hex":"#2c3414","weight":0.0741,"lightness":0.1412,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#c3efc1","weight":0.0556,"lightness":0.8471,"saturation":0.5897,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sea_pickle.png","family":"sea_pickle","relations":[{"type":"visual_neighbors","target":"minecraft:rose_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_vines_plant","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dead_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_oak_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:small_dripleaf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_block","label":"Palette proche: Bamboo Block","confidence":0.796},{"type":"color_neighbors","target":"minecraft:green_shulker_box","label":"Palette proche: Green Shulker Box","confidence":0.796},{"type":"color_neighbors","target":"minecraft:green_concrete","label":"Palette proche: Green Concrete","confidence":0.795},{"type":"color_neighbors","target":"minecraft:lime_terracotta","label":"Palette proche: Lime Terracotta","confidence":0.791},{"type":"color_neighbors","target":"minecraft:cocoa","label":"Palette proche: Cocoa","confidence":0.789},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.786},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.784},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.784},{"type":"color_neighbors","target":"minecraft:green_carpet","label":"Palette proche: Green Carpet","confidence":0.782},{"type":"color_neighbors","target":"minecraft:green_wool","label":"Palette proche: Green Wool","confidence":0.782},{"type":"color_neighbors","target":"minecraft:green_terracotta","label":"Palette proche: Green Terracotta","confidence":0.78},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.777},{"type":"color_bridge","target":"minecraft:dark_oak_button","label":"Pont de nuance par palette: Dark Oak Button","confidence":0.673},{"type":"color_bridge","target":"minecraft:dark_oak_fence","label":"Pont de nuance par palette: Dark Oak Fence","confidence":0.673},{"type":"color_bridge","target":"minecraft:dark_oak_fence_gate","label":"Pont de nuance par palette: Dark Oak Fence Gate","confidence":0.673},{"type":"color_bridge","target":"minecraft:dark_oak_planks","label":"Pont de nuance par palette: Dark Oak Planks","confidence":0.673},{"type":"color_bridge","target":"minecraft:dark_oak_pressure_plate","label":"Pont de nuance par palette: Dark Oak Pressure Plate","confidence":0.673},{"type":"color_bridge","target":"minecraft:dark_oak_sign","label":"Pont de nuance par palette: Dark Oak Sign","confidence":0.673},{"type":"color_bridge","target":"minecraft:dark_oak_slab","label":"Pont de nuance par palette: Dark Oak Slab","confidence":0.673},{"type":"color_bridge","target":"minecraft:dark_oak_stairs","label":"Pont de nuance par palette: Dark Oak Stairs","confidence":0.673},{"type":"color_bridge","target":"minecraft:dark_oak_wall_sign","label":"Pont de nuance par palette: Dark Oak Wall Sign","confidence":0.673},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.648},{"type":"color_analogous","target":"minecraft:potted_flowering_azalea_bush","label":"Couleurs analogues: Potted Flowering Azalea Bush","confidence":0.949},{"type":"color_analogous","target":"minecraft:green_terracotta","label":"Couleurs analogues: Green Terracotta","confidence":0.931},{"type":"color_analogous","target":"minecraft:flowering_azalea","label":"Couleurs analogues: Flowering Azalea","confidence":0.915},{"type":"color_analogous","target":"minecraft:wet_sponge","label":"Couleurs analogues: Wet Sponge","confidence":0.912},{"type":"color_analogous","target":"minecraft:potted_wither_rose","label":"Couleurs analogues: Potted Wither Rose","confidence":0.894},{"type":"color_analogous","target":"minecraft:wither_rose","label":"Couleurs analogues: Wither Rose","confidence":0.894},{"type":"color_analogous","target":"minecraft:dandelion","label":"Couleurs analogues: Dandelion","confidence":0.885},{"type":"color_analogous","target":"minecraft:potted_dandelion","label":"Couleurs analogues: Potted Dandelion","confidence":0.885},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.83},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.703},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.702},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.692},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.679},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.671},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.671},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.671},{"type":"color_triad","target":"minecraft:cyan_shulker_box","label":"Harmonie triadique: Cyan Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:glass","label":"Harmonie triadique: Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:glass_pane","label":"Harmonie triadique: Glass Pane","confidence":0.937},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.932},{"type":"color_triad","target":"minecraft:cyan_concrete","label":"Harmonie triadique: Cyan Concrete","confidence":0.917},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.907},{"type":"color_triad","target":"minecraft:cyan_glazed_terracotta","label":"Harmonie triadique: Cyan Glazed Terracotta","confidence":0.906},{"type":"color_triad","target":"minecraft:magenta_carpet","label":"Harmonie triadique: Magenta Carpet","confidence":0.902},{"type":"color_square","target":"minecraft:oxidized_copper_bars","label":"Harmonie carree: Oxidized Copper Bars","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_bars","label":"Harmonie carree: Waxed Oxidized Copper Bars","confidence":0.96},{"type":"color_square","target":"minecraft:oxidized_copper_bulb","label":"Harmonie carree: Oxidized Copper Bulb","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_bulb","label":"Harmonie carree: Waxed Oxidized Copper Bulb","confidence":0.96},{"type":"color_square","target":"minecraft:oxidized_cut_copper","label":"Harmonie carree: Oxidized Cut Copper","confidence":0.96},{"type":"color_square","target":"minecraft:oxidized_cut_copper_slab","label":"Harmonie carree: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_square","target":"minecraft:oxidized_cut_copper_stairs","label":"Harmonie carree: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_oxidized_cut_copper","label":"Harmonie carree: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.672},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.638},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.616},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.591},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.591},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.583},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.583},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.583}],"category":""},{"id":"minecraft:seagrass","name":"Seagrass","entry_type":"block","description":"Seagrass is a non-solid plant block that generates in all oceans, except frozen oceans. Tall seagrass is a two-block high variety of seagrass.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added \"sea grass\"."},{"version":"5 new sound events that apply t","status":"added","notes":"Added 5 new sound events that apply to seagrass: block.wet_grass.break , block.wet_grass.fall , block.wet_grass.hit , block.wet_grass.place , and block.wet_grass.step ."}],"colors":{"primary":"#337f08","dominant_hex":"#2c8404","average_hex":"#337f08","hue_group":"green","lightness":0.2647,"saturation":0.8815,"palette":["#2c8404","#3c9404","#245c04","#54942c","#2c7404"],"color_groups":[{"hex":"#2c8404","weight":0.3032,"lightness":0.2667,"saturation":0.9412,"hue_group":"green"},{"hex":"#3c9404","weight":0.2223,"lightness":0.298,"saturation":0.9474,"hue_group":"green"},{"hex":"#245c04","weight":0.2012,"lightness":0.1882,"saturation":0.9167,"hue_group":"green"},{"hex":"#54942c","weight":0.1647,"lightness":0.3765,"saturation":0.5417,"hue_group":"green"},{"hex":"#2c7404","weight":0.1086,"lightness":0.2353,"saturation":0.9333,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/seagrass.png","family":"seagrass","relations":[{"type":"visual_neighbors","target":"minecraft:wheat","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_seagrass","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sunflower","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:emerald_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tall_seagrass","label":"Palette proche: Tall Seagrass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.863},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.791},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.791},{"type":"color_neighbors","target":"minecraft:bamboo","label":"Palette proche: Bamboo","confidence":0.791},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.78},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.78},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.749},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.749},{"type":"color_neighbors","target":"minecraft:lime_shulker_box","label":"Palette proche: Lime Shulker Box","confidence":0.745},{"type":"color_neighbors","target":"minecraft:wheat","label":"Palette proche: Wheat","confidence":0.741},{"type":"color_neighbors","target":"minecraft:lime_concrete","label":"Palette proche: Lime Concrete","confidence":0.74},{"type":"color_bridge","target":"minecraft:bamboo_sapling","label":"Pont de nuance par palette: Bamboo Sapling","confidence":0.637},{"type":"color_bridge","target":"minecraft:acacia_sapling","label":"Pont de nuance par palette: Acacia Sapling","confidence":0.635},{"type":"color_bridge","target":"minecraft:potted_acacia_sapling","label":"Pont de nuance par palette: Potted Acacia Sapling","confidence":0.635},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.595},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Trapdoor","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Weathered Copper Trapdoor","confidence":0.58},{"type":"color_analogous","target":"minecraft:tall_seagrass","label":"Couleurs analogues: Tall Seagrass","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_spruce_sapling","label":"Couleurs analogues: Potted Spruce Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_sapling","label":"Couleurs analogues: Spruce Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:lily_of_the_valley","label":"Couleurs analogues: Lily Of The Valley","confidence":0.932},{"type":"color_analogous","target":"minecraft:potted_lily_of_the_valley","label":"Couleurs analogues: Potted Lily Of The Valley","confidence":0.932},{"type":"color_analogous","target":"minecraft:dried_kelp_block","label":"Couleurs analogues: Dried Kelp Block","confidence":0.898},{"type":"color_analogous","target":"minecraft:kelp","label":"Couleurs analogues: Kelp","confidence":0.873},{"type":"color_analogous","target":"minecraft:beetroots","label":"Couleurs analogues: Beetroots","confidence":0.845},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.933},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.917},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.917},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.879},{"type":"color_complement","target":"minecraft:purple_shulker_box","label":"Contraste complementaire: Purple Shulker Box","confidence":0.846},{"type":"color_complement","target":"minecraft:purple_candle","label":"Contraste complementaire: Purple Candle","confidence":0.835},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.812},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.809},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.96},{"type":"color_triad","target":"minecraft:frosted_ice","label":"Harmonie triadique: Frosted Ice","confidence":0.96},{"type":"color_triad","target":"minecraft:ice","label":"Harmonie triadique: Ice","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_concrete_powder","label":"Harmonie triadique: Pink Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_concrete","label":"Harmonie triadique: Pink Concrete","confidence":0.952},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.951},{"type":"color_triad","target":"minecraft:pearlescent_froglight","label":"Harmonie triadique: Pearlescent Froglight","confidence":0.942},{"type":"color_triad","target":"minecraft:cherry_leaves","label":"Harmonie triadique: Cherry Leaves","confidence":0.939},{"type":"color_square","target":"minecraft:cyan_concrete","label":"Harmonie carree: Cyan Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:target","label":"Harmonie carree: Target","confidence":0.954},{"type":"color_square","target":"minecraft:red_terracotta","label":"Harmonie carree: Red Terracotta","confidence":0.952},{"type":"color_square","target":"minecraft:crimson_fungus","label":"Harmonie carree: Crimson Fungus","confidence":0.95},{"type":"color_square","target":"minecraft:potted_crimson_fungus","label":"Harmonie carree: Potted Crimson Fungus","confidence":0.95},{"type":"color_square","target":"minecraft:cyan_shulker_box","label":"Harmonie carree: Cyan Shulker Box","confidence":0.947},{"type":"color_square","target":"minecraft:cherry_trapdoor","label":"Harmonie carree: Cherry Trapdoor","confidence":0.945},{"type":"color_square","target":"minecraft:redstone_block","label":"Harmonie carree: Redstone Block","confidence":0.941},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.657},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.623},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.601},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.586},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.586},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.573},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.553},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.551}],"category":"natural"},{"id":"minecraft:sentry_armor_trim_smithing_template","name":"Sentry Armor Trim Smithing Template","entry_type":"item","description":"Sentry armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, cobblestone, and diamonds.","history":[{"version":"1.19.4","status":"added","notes":"Added the sentry armor trim smithing template behind the \"Update 1.20\" experimental data pack."}],"colors":{"primary":"#505b5a","dominant_hex":"#77776e","average_hex":"#505b5a","hue_group":"neutral","lightness":0.3353,"saturation":0.0643,"palette":["#77776e","#545c54","#4c444c","#241c24","#34343c","#3bb8c7"],"color_groups":[{"hex":"#77776e","weight":0.2606,"lightness":0.449,"saturation":0.0393,"hue_group":"neutral"},{"hex":"#545c54","weight":0.2485,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#4c444c","weight":0.1515,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#241c24","weight":0.1273,"lightness":0.1255,"saturation":0.125,"hue_group":"purple"},{"hex":"#34343c","weight":0.1212,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#3bb8c7","weight":0.0909,"lightness":0.5059,"saturation":0.5556,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/sentry_armor_trim_smithing_template.png","family":"sentry_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ominous_trial_key","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:shaper_armor_trim_smithing_template","name":"Shaper Armor Trim Smithing Template","entry_type":"item","description":"A shaper armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, terracotta, and diamonds.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added the shaper armor trim smithing template."}],"colors":{"primary":"#55493f","dominant_hex":"#7f5f4f","average_hex":"#55493f","hue_group":"red","lightness":0.2902,"saturation":0.1486,"palette":["#7f5f4f","#5c4434","#4c342c","#342424","#241414","#4bccd2"],"color_groups":[{"hex":"#7f5f4f","weight":0.303,"lightness":0.4039,"saturation":0.233,"hue_group":"red"},{"hex":"#5c4434","weight":0.2364,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#4c342c","weight":0.1515,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#342424","weight":0.1455,"lightness":0.1725,"saturation":0.1818,"hue_group":"red"},{"hex":"#241414","weight":0.103,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#4bccd2","weight":0.0606,"lightness":0.5588,"saturation":0.6,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/shaper_armor_trim_smithing_template.png","family":"shaper_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raiser_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_lava_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_upgrade_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_axe","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:sheaf_pottery_sherd","name":"Sheaf Pottery Sherd","entry_type":"item","description":"A sheaf pottery sherd is a pottery sherd that depicts wheat. It can be found in trail ruins.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added sheaf pottery shards."}],"colors":{"primary":"#683a30","dominant_hex":"#724234","average_hex":"#683a30","hue_group":"red","lightness":0.298,"saturation":0.3684,"palette":["#724234","#542c24","#5c342c","#44241c","#9a5a4a","#844c3c"],"color_groups":[{"hex":"#724234","weight":0.2102,"lightness":0.3255,"saturation":0.3735,"hue_group":"red"},{"hex":"#542c24","weight":0.1975,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#5c342c","weight":0.1783,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#44241c","weight":0.172,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.1338,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"},{"hex":"#844c3c","weight":0.1083,"lightness":0.3765,"saturation":0.375,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/sheaf_pottery_sherd.png","family":"sheaf_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:plenty_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:shears","name":"Shears","entry_type":"item","description":"Shears are a tool crafted from iron ingots. They are required to obtain some organic blocks or otherwise mine them faster as well as to shear certain entities and blocks.","history":[{"version":"1.7","status":"added","notes":"Added shears."},{"version":"1.4.2 12w38a","status":"added","notes":"Added a sound when using shears on sheep ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which can be sheared to remove absorbed blocks."}],"colors":{"primary":"#8d716b","dominant_hex":"#acacac","average_hex":"#8d716b","hue_group":"red","lightness":0.4863,"saturation":0.1371,"palette":["#acacac","#653730","#5c2c1c","#d4d4d4","#964737","#747474"],"color_groups":[{"hex":"#acacac","weight":0.2468,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#653730","weight":0.2338,"lightness":0.2922,"saturation":0.3557,"hue_group":"red"},{"hex":"#5c2c1c","weight":0.1558,"lightness":0.2353,"saturation":0.5333,"hue_group":"red"},{"hex":"#d4d4d4","weight":0.1558,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#964737","weight":0.1299,"lightness":0.402,"saturation":0.4634,"hue_group":"red"},{"hex":"#747474","weight":0.0779,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/shears.png","family":"shears","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:tropical_fish_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_bucket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_scute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:writable_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_shell","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:sheep","name":"Sheep","entry_type":"mob","description":"A sheep is a common passive mob that supplies wool and raw mutton and is found in many of the grassy biomes.","history":[{"version":"0.28","status":"added","notes":"Added sheep."},{"version":"1.0.0","status":"added","notes":"Added baby sheep."},{"version":"12w38a","status":"added","notes":"Added new step sounds to sheep."}],"colors":{"primary":"#cbb8aa","dominant_hex":"#ab8c74","average_hex":"#cbb8aa","hue_group":"red","lightness":0.7314,"saturation":0.2409,"palette":["#ab8c74","#c59c84","#ececec","#dcdcdc","#d6d3d3","#fcf4f4"],"color_groups":[{"hex":"#ab8c74","weight":0.3292,"lightness":0.5627,"saturation":0.2466,"hue_group":"red"},{"hex":"#c59c84","weight":0.2207,"lightness":0.6451,"saturation":0.3591,"hue_group":"red"},{"hex":"#ececec","weight":0.1751,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.1227,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d6d3d3","weight":0.0799,"lightness":0.8333,"saturation":0.0353,"hue_group":"neutral"},{"hex":"#fcf4f4","weight":0.0723,"lightness":0.9725,"saturation":0.5714,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/sheep/sheep.png","family":"sheep","relations":[{"type":"variants","target":"minecraft:sheep/wool","label":"Same family: sheep","confidence":0.75},{"type":"related_sets","target":"minecraft:sheep/wool","label":"Related set: sheep","confidence":0.8},{"type":"variants","target":"minecraft:sheep/wool_undercoat","label":"Same family: sheep","confidence":0.75},{"type":"related_sets","target":"minecraft:sheep/wool_undercoat","label":"Related set: sheep","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:chicken/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:sheep/wool","name":"Sheep / Wool","entry_type":"mob","description":"A sheep is a common passive mob that supplies wool and raw mutton and is found in many of the grassy biomes.","history":[{"version":"0.28","status":"added","notes":"Added sheep."},{"version":"1.0.0","status":"added","notes":"Added baby sheep."},{"version":"12w38a","status":"added","notes":"Added new step sounds to sheep."}],"colors":{"primary":"#efefef","dominant_hex":"#fcfcfc","average_hex":"#efefef","hue_group":"neutral","lightness":0.9373,"saturation":0.0,"palette":["#fcfcfc","#ececec","#dcdcdc","#d4d4d4"],"color_groups":[{"hex":"#fcfcfc","weight":0.4944,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ececec","weight":0.205,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.1509,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d4d4d4","weight":0.1498,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/sheep/sheep_wool.png","family":"sheep","relations":[{"type":"variants","target":"minecraft:sheep","label":"Same family: sheep","confidence":0.75},{"type":"related_sets","target":"minecraft:sheep","label":"Related set: sheep","confidence":0.8},{"type":"variants","target":"minecraft:sheep/wool_undercoat","label":"Same family: sheep","confidence":0.75},{"type":"related_sets","target":"minecraft:sheep/wool_undercoat","label":"Related set: sheep","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitedots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitefield","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_1","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:sheep/wool_undercoat","name":"Sheep / Wool Undercoat","entry_type":"mob","description":"A sheep is a common passive mob that supplies wool and raw mutton and is found in many of the grassy biomes.","history":[{"version":"0.28","status":"added","notes":"Added sheep."},{"version":"1.0.0","status":"added","notes":"Added baby sheep."},{"version":"12w38a","status":"added","notes":"Added new step sounds to sheep."}],"colors":{"primary":"#e6e5e5","dominant_hex":"#ececec","average_hex":"#e6e5e5","hue_group":"neutral","lightness":0.9,"saturation":0.0196,"palette":["#ececec","#dcdcdc","#d4d4d4","#fcf4f4"],"color_groups":[{"hex":"#ececec","weight":0.394,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.2762,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d4d4d4","weight":0.1713,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4f4","weight":0.1585,"lightness":0.9725,"saturation":0.5714,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/sheep/sheep_wool_undercoat.png","family":"sheep","relations":[{"type":"variants","target":"minecraft:sheep","label":"Same family: sheep","confidence":0.75},{"type":"related_sets","target":"minecraft:sheep","label":"Related set: sheep","confidence":0.8},{"type":"variants","target":"minecraft:sheep/wool","label":"Same family: sheep","confidence":0.75},{"type":"related_sets","target":"minecraft:sheep/wool","label":"Related set: sheep","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cat/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitefield","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/caerbannog","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:sheep_spawn_egg","name":"Sheep Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#b4a69e","dominant_hex":"#efefef","average_hex":"#b4a69e","hue_group":"red","lightness":0.6627,"saturation":0.1279,"palette":["#efefef","#cbc3bf","#6e6e6e","#9b7b63","#bd9b89","#614736"],"color_groups":[{"hex":"#efefef","weight":0.2612,"lightness":0.9373,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cbc3bf","weight":0.2239,"lightness":0.7725,"saturation":0.1034,"hue_group":"neutral"},{"hex":"#6e6e6e","weight":0.1493,"lightness":0.4314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9b7b63","weight":0.1418,"lightness":0.498,"saturation":0.2205,"hue_group":"red"},{"hex":"#bd9b89","weight":0.1194,"lightness":0.6392,"saturation":0.2826,"hue_group":"red"},{"hex":"#614736","weight":0.1045,"lightness":0.2961,"saturation":0.2848,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/sheep_spawn_egg.png","family":"sheep_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:quartz","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_bucket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shears","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_shell","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:shelter_pottery_sherd","name":"Shelter Pottery Sherd","entry_type":"item","description":"A shelter pottery sherd is a pottery sherd that depicts an acacia tree. It can be found in the suspicious sand of warm ocean ruins.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added shelter pottery shards."}],"colors":{"primary":"#6b3c31","dominant_hex":"#724234","average_hex":"#6b3c31","hue_group":"red","lightness":0.3059,"saturation":0.3718,"palette":["#724234","#5c342c","#542c24","#844c3c","#44241c","#9a5a4a"],"color_groups":[{"hex":"#724234","weight":0.2229,"lightness":0.3255,"saturation":0.3735,"hue_group":"red"},{"hex":"#5c342c","weight":0.2038,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#542c24","weight":0.1592,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#844c3c","weight":0.1465,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#44241c","weight":0.1338,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.1338,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/shelter_pottery_sherd.png","family":"shelter_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:miner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:danger_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:howl_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scrape_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:shield","name":"Shield","entry_type":"item","description":"A shield is a defensive tool that can be used to block damage from melee attacks, ranged attacks and explosions. Shields are temporarily disabled when hit by an axe or attacked by a warden while blocking, and certain damage sources ignore a shield's protection. Shields can have ornamental banner designs applied to them.","history":[{"version":"1.9 15w33c","status":"added","notes":"Added shields."},{"version":"15w47b","status":"added","notes":"Added shield blocking sounds ."},{"version":"16w07a","status":"added","notes":"Added more variation of shield blocking sounds."}],"colors":{"primary":"#645847","dominant_hex":"#5d4726","average_hex":"#645847","hue_group":"yellow","lightness":0.3353,"saturation":0.1696,"palette":["#5d4726","#64666b","#503c1c","#8d8d95","#7a6237","#040404"],"color_groups":[{"hex":"#5d4726","weight":0.243,"lightness":0.2569,"saturation":0.4198,"hue_group":"yellow"},{"hex":"#64666b","weight":0.2067,"lightness":0.4059,"saturation":0.0338,"hue_group":"neutral"},{"hex":"#503c1c","weight":0.2053,"lightness":0.2118,"saturation":0.4815,"hue_group":"yellow"},{"hex":"#8d8d95","weight":0.1899,"lightness":0.5686,"saturation":0.0364,"hue_group":"neutral"},{"hex":"#7a6237","weight":0.1103,"lightness":0.3471,"saturation":0.3785,"hue_group":"yellow"},{"hex":"#040404","weight":0.0447,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shield_base_nopattern.png","family":"shield","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fishing_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:command_block_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pickaxe","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:short_dry_grass","name":"Short Dry Grass","entry_type":"block","description":"Short dry grass is a one-block tall foliage block that generates frequently in deserts and all types of badlands. It grows on sand and terracotta. It can also be eaten by sheep.","history":[{"version":"1.21.5 25w06a","status":"added","notes":"Added short dry grass."}],"colors":{"primary":"#bb9f6c","dominant_hex":"#a47c4c","average_hex":"#bb9f6c","hue_group":"yellow","lightness":0.5784,"saturation":0.3674,"palette":["#a47c4c","#bc9c6c","#d4bc8c","#dccca4"],"color_groups":[{"hex":"#a47c4c","weight":0.3542,"lightness":0.4706,"saturation":0.3667,"hue_group":"yellow"},{"hex":"#bc9c6c","weight":0.3125,"lightness":0.5804,"saturation":0.3738,"hue_group":"yellow"},{"hex":"#d4bc8c","weight":0.1667,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#dccca4","weight":0.1667,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/short_dry_grass.png","family":"short_dry_grass","relations":[{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sugar_cane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beehive","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tall_dry_grass","label":"Palette proche: Tall Dry Grass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_hanging_sign","label":"Palette proche: Oak Hanging Sign","confidence":0.907},{"type":"color_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Palette proche: Oak Wall Hanging Sign","confidence":0.907},{"type":"color_neighbors","target":"minecraft:stripped_oak_log","label":"Palette proche: Stripped Oak Log","confidence":0.907},{"type":"color_neighbors","target":"minecraft:stripped_oak_wood","label":"Palette proche: Stripped Oak Wood","confidence":0.907},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.903},{"type":"color_neighbors","target":"minecraft:lectern","label":"Palette proche: Lectern","confidence":0.895},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.894},{"type":"color_neighbors","target":"minecraft:beehive","label":"Palette proche: Beehive","confidence":0.894},{"type":"color_neighbors","target":"minecraft:jungle_hanging_sign","label":"Palette proche: Jungle Hanging Sign","confidence":0.873},{"type":"color_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Palette proche: Jungle Wall Hanging Sign","confidence":0.873},{"type":"color_neighbors","target":"minecraft:stripped_jungle_log","label":"Palette proche: Stripped Jungle Log","confidence":0.873},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.834},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.828},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.796},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.796},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.788},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.788},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.787},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.786},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.786},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.779},{"type":"color_analogous","target":"minecraft:chiseled_bookshelf","label":"Couleurs analogues: Chiseled Bookshelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_hanging_sign","label":"Couleurs analogues: Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wall_hanging_sign","label":"Couleurs analogues: Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_oak_log","label":"Couleurs analogues: Stripped Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_oak_wood","label":"Couleurs analogues: Stripped Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:tall_dry_grass","label":"Couleurs analogues: Tall Dry Grass","confidence":0.96},{"type":"color_analogous","target":"minecraft:bee_nest","label":"Couleurs analogues: Bee Nest","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_terracotta","label":"Couleurs analogues: Yellow Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.959},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.94},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.933},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.923},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.889},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.856},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.808},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.834},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.834},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.832},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.827},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.812},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.795},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.743},{"type":"value_contrast","target":"minecraft:dark_oak_hanging_sign","label":"Contraste clair sombre: Dark Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wall_hanging_sign","label":"Contraste clair sombre: Dark Oak Wall Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_log","label":"Contraste clair sombre: Stripped Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:stripped_dark_oak_wood","label":"Contraste clair sombre: Stripped Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_shelf","label":"Contraste clair sombre: Dark Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_log","label":"Contraste clair sombre: Jungle Log","confidence":0.55}],"category":"natural"},{"id":"minecraft:short_grass","name":"Short Grass","entry_type":"block","description":"Short grass is a non-solid plant block that may drop wheat seeds when broken. Its color is biome-dependent, and matches the color of grass blocks.","history":[{"version":"1.6","status":"added","notes":"Added grass. [ 1 ]"}],"colors":{"primary":"#929192","dominant_hex":"#a4a4a4","average_hex":"#929192","hue_group":"neutral","lightness":0.5706,"saturation":0.0046,"palette":["#a4a4a4","#848484","#949494","#747474","#bcb4bc","#6c6c6c"],"color_groups":[{"hex":"#a4a4a4","weight":0.2857,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#848484","weight":0.2,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1786,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1429,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcb4bc","weight":0.1357,"lightness":0.7216,"saturation":0.0563,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0571,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/short_grass.png","family":"short_grass","relations":[{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grindstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:andesite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bush","label":"Palette proche: Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:vine","label":"Palette proche: Vine","confidence":0.94},{"type":"color_bridge","target":"minecraft:bush","label":"Pont de nuance par palette: Bush","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:lily_pad","label":"Pont de nuance par palette: Lily Pad","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"value_contrast","target":"minecraft:cracked_polished_blackstone_bricks","label":"Contraste clair sombre: Cracked Polished Blackstone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_slab","label":"Contraste clair sombre: Blackstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:blackstone_stairs","label":"Contraste clair sombre: Blackstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_polished_blackstone","label":"Contraste clair sombre: Chiseled Polished Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_slab","label":"Contraste clair sombre: Polished Blackstone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_stairs","label":"Contraste clair sombre: Polished Blackstone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_brick_wall","label":"Contraste clair sombre: Polished Blackstone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_bricks","label":"Contraste clair sombre: Polished Blackstone Bricks","confidence":0.55}],"category":"natural"},{"id":"minecraft:shroomlight","name":"Shroomlight","entry_type":"block","description":"Shroomlights are light-emitting blocks that generate in huge fungi.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added shroomlight."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb shroomlights, providing the curling stone/slow sliding effect to the mob."}],"colors":{"primary":"#f19347","dominant_hex":"#fcac6c","average_hex":"#f19347","hue_group":"red","lightness":0.6118,"saturation":0.8586,"palette":["#fcac6c","#e47404","#ce4c0c","#fc843c","#fcc47c","#fce2a2"],"color_groups":[{"hex":"#fcac6c","weight":0.2266,"lightness":0.7059,"saturation":0.96,"hue_group":"red"},{"hex":"#e47404","weight":0.1953,"lightness":0.4549,"saturation":0.9655,"hue_group":"red"},{"hex":"#ce4c0c","weight":0.1797,"lightness":0.4275,"saturation":0.8899,"hue_group":"red"},{"hex":"#fc843c","weight":0.1602,"lightness":0.6118,"saturation":0.9697,"hue_group":"red"},{"hex":"#fcc47c","weight":0.1289,"lightness":0.7373,"saturation":0.9552,"hue_group":"yellow"},{"hex":"#fce2a2","weight":0.1094,"lightness":0.8118,"saturation":0.9375,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/shroomlight.png","family":"shroomlight","relations":[{"type":"visual_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_carpet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_wool","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_clump","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_shulker_box","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.869},{"type":"color_neighbors","target":"minecraft:orange_carpet","label":"Palette proche: Orange Carpet","confidence":0.859},{"type":"color_neighbors","target":"minecraft:orange_wool","label":"Palette proche: Orange Wool","confidence":0.859},{"type":"color_neighbors","target":"minecraft:orange_concrete","label":"Palette proche: Orange Concrete","confidence":0.849},{"type":"color_neighbors","target":"minecraft:orange_candle","label":"Palette proche: Orange Candle","confidence":0.847},{"type":"color_neighbors","target":"minecraft:orange_shulker_box","label":"Palette proche: Orange Shulker Box","confidence":0.833},{"type":"color_neighbors","target":"minecraft:resin_block","label":"Palette proche: Resin Block","confidence":0.82},{"type":"color_neighbors","target":"minecraft:resin_brick_slab","label":"Palette proche: Resin Brick Slab","confidence":0.814},{"type":"color_neighbors","target":"minecraft:resin_brick_stairs","label":"Palette proche: Resin Brick Stairs","confidence":0.814},{"type":"color_neighbors","target":"minecraft:resin_brick_wall","label":"Palette proche: Resin Brick Wall","confidence":0.814},{"type":"color_neighbors","target":"minecraft:resin_bricks","label":"Palette proche: Resin Bricks","confidence":0.814},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.812},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.616},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.616},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.615},{"type":"color_bridge","target":"minecraft:lime_glazed_terracotta","label":"Pont de nuance par palette: Lime Glazed Terracotta","confidence":0.611},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.58},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.58},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.58},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.58},{"type":"color_analogous","target":"minecraft:orange_carpet","label":"Couleurs analogues: Orange Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_wool","label":"Couleurs analogues: Orange Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_stained_glass","label":"Couleurs analogues: Orange Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sand","label":"Couleurs analogues: Red Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone","label":"Couleurs analogues: Cut Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.927},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.927},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.927},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.85},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.847},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.826},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.826},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.818},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.959},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.948},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.94},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.932},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.928},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.903},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.903},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.855},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.922},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.84},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.832},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.832},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.819},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.818},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.803},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.763},{"type":"value_contrast","target":"minecraft:brown_concrete","label":"Contraste clair sombre: Brown Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_lamp","label":"Contraste clair sombre: Redstone Lamp","confidence":0.55},{"type":"value_contrast","target":"minecraft:podzol","label":"Contraste clair sombre: Podzol","confidence":0.55},{"type":"value_contrast","target":"minecraft:nether_wart_block","label":"Contraste clair sombre: Nether Wart Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_trapdoor","label":"Contraste clair sombre: Dark Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55}],"category":""},{"id":"minecraft:shulker","name":"Shulker","entry_type":"mob","description":"A shulker is a box shaped hostile mob found only in End cities. It hides in its shell to protect itself and blend in with its surroundings, and attacks by shooting homing bullets that inflict Levitation. It is the only source of shulker shells, which are used to craft shulker boxes.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added shulkers."},{"version":"15w45a","status":"added","notes":"Added sounds for shulkers being damaged ."},{"version":"15w47b","status":"added","notes":"Added ambient, aggravated and death sounds for shulkers, and added sounds for their bullets dealing and taking damage ."}],"colors":{"primary":"#926e8b","dominant_hex":"#966d94","average_hex":"#926e8b","hue_group":"purple","lightness":0.502,"saturation":0.1417,"palette":["#966d94","#825c82","#8c648c","#755375","#dbe2a2","#6b4b6b"],"color_groups":[{"hex":"#966d94","weight":0.3035,"lightness":0.5078,"saturation":0.1633,"hue_group":"purple"},{"hex":"#825c82","weight":0.2456,"lightness":0.4353,"saturation":0.1712,"hue_group":"purple"},{"hex":"#8c648c","weight":0.1325,"lightness":0.4706,"saturation":0.1667,"hue_group":"purple"},{"hex":"#755375","weight":0.1302,"lightness":0.3922,"saturation":0.17,"hue_group":"purple"},{"hex":"#dbe2a2","weight":0.1082,"lightness":0.7608,"saturation":0.5246,"hue_group":"yellow"},{"hex":"#6b4b6b","weight":0.08,"lightness":0.3569,"saturation":0.1758,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker.png","family":"shulker","relations":[{"type":"visual_neighbors","target":"minecraft:dragon_fireball","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_magenta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:endermite","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_purple","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/lucy","label":"Shared hue group: purple","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_black","name":"Shulker Black","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#2a2c28","dominant_hex":"#0c0c14","average_hex":"#2a2c28","hue_group":"neutral","lightness":0.1647,"saturation":0.0476,"palette":["#0c0c14","#1d1d23","#0c1414","#d7dd9e","#14141c","#141414"],"color_groups":[{"hex":"#0c0c14","weight":0.3201,"lightness":0.0627,"saturation":0.25,"hue_group":"blue"},{"hex":"#1d1d23","weight":0.2677,"lightness":0.1255,"saturation":0.0938,"hue_group":"neutral"},{"hex":"#0c1414","weight":0.1198,"lightness":0.0627,"saturation":0.25,"hue_group":"cyan"},{"hex":"#d7dd9e","weight":0.1181,"lightness":0.7431,"saturation":0.4809,"hue_group":"yellow"},{"hex":"#14141c","weight":0.1049,"lightness":0.0941,"saturation":0.1667,"hue_group":"blue"},{"hex":"#141414","weight":0.0695,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_black.png","family":"shulker_black","relations":[{"type":"visual_neighbors","target":"minecraft:wolf/black_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_blue","name":"Shulker Blue","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#3a3c80","dominant_hex":"#313297","average_hex":"#3a3c80","hue_group":"blue","lightness":0.3647,"saturation":0.3763,"palette":["#313297","#1c1c64","#222474","#d7dd9e","#26267e","#1c1d6c"],"color_groups":[{"hex":"#313297","weight":0.3449,"lightness":0.3922,"saturation":0.51,"hue_group":"blue"},{"hex":"#1c1c64","weight":0.2323,"lightness":0.251,"saturation":0.5625,"hue_group":"blue"},{"hex":"#222474","weight":0.1203,"lightness":0.2941,"saturation":0.5467,"hue_group":"blue"},{"hex":"#d7dd9e","weight":0.1181,"lightness":0.7431,"saturation":0.4809,"hue_group":"yellow"},{"hex":"#26267e","weight":0.0966,"lightness":0.3216,"saturation":0.5366,"hue_group":"blue"},{"hex":"#1c1d6c","weight":0.0877,"lightness":0.2667,"saturation":0.5882,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_blue.png","family":"shulker_blue","relations":[{"type":"visual_neighbors","target":"minecraft:wither_invulnerable","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/all_black","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/cyan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_wind","label":"Shared hue group: blue","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_box","name":"Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#8b618b","dominant_hex":"#946c94","average_hex":"#8b618b","hue_group":"purple","lightness":0.4627,"saturation":0.178,"palette":["#946c94","#946494","#845d84","#745274","#7c5a7c","#8c648c"],"color_groups":[{"hex":"#946c94","weight":0.2812,"lightness":0.502,"saturation":0.1575,"hue_group":"purple"},{"hex":"#946494","weight":0.2031,"lightness":0.4863,"saturation":0.1935,"hue_group":"purple"},{"hex":"#845d84","weight":0.1719,"lightness":0.4412,"saturation":0.1733,"hue_group":"purple"},{"hex":"#745274","weight":0.168,"lightness":0.3882,"saturation":0.1717,"hue_group":"purple"},{"hex":"#7c5a7c","weight":0.1133,"lightness":0.4196,"saturation":0.1589,"hue_group":"purple"},{"hex":"#8c648c","weight":0.0625,"lightness":0.4706,"saturation":0.1667,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/shulker_box.png","family":"shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cherry_sapling","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_flower","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_slab","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_stairs","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purpur_pillar","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_plant","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:purpur_block","label":"Palette proche: Purpur Block","confidence":0.904},{"type":"color_neighbors","target":"minecraft:purpur_slab","label":"Palette proche: Purpur Slab","confidence":0.904},{"type":"color_neighbors","target":"minecraft:purpur_stairs","label":"Palette proche: Purpur Stairs","confidence":0.904},{"type":"color_neighbors","target":"minecraft:purpur_pillar","label":"Palette proche: Purpur Pillar","confidence":0.899},{"type":"color_neighbors","target":"minecraft:chorus_plant","label":"Palette proche: Chorus Plant","confidence":0.864},{"type":"color_neighbors","target":"minecraft:mycelium","label":"Palette proche: Mycelium","confidence":0.803},{"type":"color_neighbors","target":"minecraft:magenta_terracotta","label":"Palette proche: Magenta Terracotta","confidence":0.795},{"type":"color_neighbors","target":"minecraft:birch_leaves","label":"Palette proche: Birch Leaves","confidence":0.783},{"type":"color_neighbors","target":"minecraft:light_blue_terracotta","label":"Palette proche: Light Blue Terracotta","confidence":0.782},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.768},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.768},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.765},{"type":"color_bridge","target":"minecraft:chorus_plant","label":"Pont de nuance par sous-ton: Chorus Plant","confidence":0.888},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par palette: Purpur Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par palette: Purpur Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par palette: Purpur Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par palette: Purpur Pillar","confidence":0.86},{"type":"color_bridge","target":"minecraft:mycelium","label":"Pont de nuance par palette: Mycelium","confidence":0.838},{"type":"color_bridge","target":"minecraft:magenta_terracotta","label":"Pont de nuance par palette: Magenta Terracotta","confidence":0.831},{"type":"color_bridge","target":"minecraft:birch_leaves","label":"Pont de nuance par palette: Birch Leaves","confidence":0.821},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par palette: Light Blue Terracotta","confidence":0.82},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.809},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55}],"category":""},{"id":"minecraft:shulker_brown","name":"Shulker Brown","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#6d4e2e","dominant_hex":"#4c2c14","average_hex":"#6d4e2e","hue_group":"yellow","lightness":0.3039,"saturation":0.4065,"palette":["#4c2c14","#5a391c","#74492b","#684424","#d7dd9e","#643c23"],"color_groups":[{"hex":"#4c2c14","weight":0.2279,"lightness":0.1882,"saturation":0.5833,"hue_group":"red"},{"hex":"#5a391c","weight":0.2119,"lightness":0.2314,"saturation":0.5254,"hue_group":"red"},{"hex":"#74492b","weight":0.1965,"lightness":0.3118,"saturation":0.4591,"hue_group":"red"},{"hex":"#684424","weight":0.1485,"lightness":0.2745,"saturation":0.4857,"hue_group":"red"},{"hex":"#d7dd9e","weight":0.1181,"lightness":0.7431,"saturation":0.4809,"hue_group":"yellow"},{"hex":"#643c23","weight":0.0971,"lightness":0.2647,"saturation":0.4815,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_brown.png","family":"shulker_brown","relations":[{"type":"visual_neighbors","target":"minecraft:shulker_green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/cold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_ropes","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_horse","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/creamy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_cyan","name":"Shulker Cyan","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#28787d","dominant_hex":"#148090","average_hex":"#28787d","hue_group":"cyan","lightness":0.3235,"saturation":0.5152,"palette":["#148090","#146777","#0c5464","#d7dd9e","#0c5c6c","#0c535b"],"color_groups":[{"hex":"#148090","weight":0.3648,"lightness":0.3216,"saturation":0.7561,"hue_group":"cyan"},{"hex":"#146777","weight":0.17,"lightness":0.2725,"saturation":0.7122,"hue_group":"cyan"},{"hex":"#0c5464","weight":0.1286,"lightness":0.2196,"saturation":0.7857,"hue_group":"cyan"},{"hex":"#d7dd9e","weight":0.1181,"lightness":0.7431,"saturation":0.4809,"hue_group":"yellow"},{"hex":"#0c5c6c","weight":0.1104,"lightness":0.2353,"saturation":0.8,"hue_group":"cyan"},{"hex":"#0c535b","weight":0.1082,"lightness":0.202,"saturation":0.767,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_cyan.png","family":"shulker_cyan","relations":[{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_bioluminescent_layer","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_1","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_2","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_gray","name":"Shulker Gray","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#444743","dominant_hex":"#3b4042","average_hex":"#444743","hue_group":"neutral","lightness":0.2706,"saturation":0.029,"palette":["#3b4042","#2f2f34","#24242c","#d7dd9e","#242c2c","#2c2c2c"],"color_groups":[{"hex":"#3b4042","weight":0.3593,"lightness":0.2451,"saturation":0.056,"hue_group":"neutral"},{"hex":"#2f2f34","weight":0.2141,"lightness":0.1941,"saturation":0.0505,"hue_group":"neutral"},{"hex":"#24242c","weight":0.1374,"lightness":0.1569,"saturation":0.1,"hue_group":"neutral"},{"hex":"#d7dd9e","weight":0.1181,"lightness":0.7431,"saturation":0.4809,"hue_group":"yellow"},{"hex":"#242c2c","weight":0.0955,"lightness":0.1569,"saturation":0.1,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.0756,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_gray.png","family":"shulker_gray","relations":[{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_black","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_green","name":"Shulker Green","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#596b2f","dominant_hex":"#4b5f24","average_hex":"#596b2f","hue_group":"yellow","lightness":0.302,"saturation":0.3896,"palette":["#4b5f24","#546b1d","#3c4b1c","#d7dd9e","#445424","#3c4c24"],"color_groups":[{"hex":"#4b5f24","weight":0.2964,"lightness":0.2569,"saturation":0.4504,"hue_group":"yellow"},{"hex":"#546b1d","weight":0.2655,"lightness":0.2667,"saturation":0.5735,"hue_group":"yellow"},{"hex":"#3c4b1c","weight":0.1374,"lightness":0.202,"saturation":0.4563,"hue_group":"yellow"},{"hex":"#d7dd9e","weight":0.1181,"lightness":0.7431,"saturation":0.4809,"hue_group":"yellow"},{"hex":"#445424","weight":0.0922,"lightness":0.2353,"saturation":0.4,"hue_group":"yellow"},{"hex":"#3c4c24","weight":0.0905,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_green.png","family":"shulker_green","relations":[{"type":"visual_neighbors","target":"minecraft:shulker_brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/cold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_ropes","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_horse","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/creamy","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_light_blue","name":"Shulker Light Blue","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#3e9ac1","dominant_hex":"#3ab3da","average_hex":"#3e9ac1","hue_group":"cyan","lightness":0.5,"saturation":0.5137,"palette":["#3ab3da","#2489c6","#2a9ad1","#1c74ac","#d7dd9e","#1c6ba2"],"color_groups":[{"hex":"#3ab3da","weight":0.2533,"lightness":0.5412,"saturation":0.6838,"hue_group":"cyan"},{"hex":"#2489c6","weight":0.2152,"lightness":0.4588,"saturation":0.6923,"hue_group":"cyan"},{"hex":"#2a9ad1","weight":0.1805,"lightness":0.4922,"saturation":0.6653,"hue_group":"cyan"},{"hex":"#1c74ac","weight":0.1369,"lightness":0.3922,"saturation":0.72,"hue_group":"cyan"},{"hex":"#d7dd9e","weight":0.1181,"lightness":0.7431,"saturation":0.4809,"hue_group":"yellow"},{"hex":"#1c6ba2","weight":0.096,"lightness":0.3725,"saturation":0.7053,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_light_blue.png","family":"shulker_light_blue","relations":[{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_bioluminescent_layer","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allay","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_1","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/yellow_blue","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_light_gray","name":"Shulker Light Gray","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#78786a","dominant_hex":"#88887e","average_hex":"#78786a","hue_group":"neutral","lightness":0.4431,"saturation":0.0619,"palette":["#88887e","#686860","#54544c","#4b4b44","#5c5c54","#dbe2a2"],"color_groups":[{"hex":"#88887e","weight":0.3692,"lightness":0.5137,"saturation":0.0403,"hue_group":"neutral"},{"hex":"#686860","weight":0.1755,"lightness":0.3922,"saturation":0.04,"hue_group":"neutral"},{"hex":"#54544c","weight":0.1236,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#4b4b44","weight":0.1131,"lightness":0.2804,"saturation":0.049,"hue_group":"neutral"},{"hex":"#5c5c54","weight":0.1104,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#dbe2a2","weight":0.1082,"lightness":0.7608,"saturation":0.5246,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_light_gray.png","family":"shulker_light_gray","relations":[{"type":"visual_neighbors","target":"minecraft:chicken/cold","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silverfish","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_fangs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/toast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/lazy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/playful","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_lime","name":"Shulker Lime","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#659f24","dominant_hex":"#4d8e14","average_hex":"#659f24","hue_group":"yellow","lightness":0.3824,"saturation":0.6308,"palette":["#4d8e14","#70bb1c","#3c6e0c","#63ac1b","#d7dd9e","#44750d"],"color_groups":[{"hex":"#4d8e14","weight":0.2726,"lightness":0.3176,"saturation":0.7531,"hue_group":"green"},{"hex":"#70bb1c","weight":0.2533,"lightness":0.4216,"saturation":0.7395,"hue_group":"yellow"},{"hex":"#3c6e0c","weight":0.1374,"lightness":0.2392,"saturation":0.8033,"hue_group":"green"},{"hex":"#63ac1b","weight":0.1192,"lightness":0.3902,"saturation":0.7286,"hue_group":"green"},{"hex":"#d7dd9e","weight":0.1181,"lightness":0.7431,"saturation":0.4809,"hue_group":"yellow"},{"hex":"#44750d","weight":0.0993,"lightness":0.2549,"saturation":0.8,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_lime.png","family":"shulker_lime","relations":[{"type":"visual_neighbors","target":"minecraft:blaze","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/creamy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_ropes","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/cold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_green","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_magenta","name":"Shulker Magenta","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#a74498","dominant_hex":"#b63aaa","average_hex":"#a74498","hue_group":"purple","lightness":0.4608,"saturation":0.4213,"palette":["#b63aaa","#8b2483","#d7dd9e","#942c8c","#9c2c8e","#a52d95"],"color_groups":[{"hex":"#b63aaa","weight":0.3593,"lightness":0.4706,"saturation":0.5167,"hue_group":"purple"},{"hex":"#8b2483","weight":0.2329,"lightness":0.3431,"saturation":0.5886,"hue_group":"purple"},{"hex":"#d7dd9e","weight":0.1181,"lightness":0.7431,"saturation":0.4809,"hue_group":"yellow"},{"hex":"#942c8c","weight":0.1142,"lightness":0.3765,"saturation":0.5417,"hue_group":"purple"},{"hex":"#9c2c8e","weight":0.101,"lightness":0.3922,"saturation":0.56,"hue_group":"purple"},{"hex":"#a52d95","weight":0.0745,"lightness":0.4118,"saturation":0.5714,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_magenta.png","family":"shulker_magenta","relations":[{"type":"visual_neighbors","target":"minecraft:shulker_purple","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:endermite","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_fireball","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/lucy","label":"Shared hue group: purple","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_orange","name":"Shulker Orange","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#d46c17","dominant_hex":"#ef6e0b","average_hex":"#d46c17","hue_group":"red","lightness":0.4608,"saturation":0.8043,"palette":["#ef6e0b","#d35d04","#ac4c04","#d7dd9e","#9c4304","#c55404"],"color_groups":[{"hex":"#ef6e0b","weight":0.4338,"lightness":0.4902,"saturation":0.912,"hue_group":"red"},{"hex":"#d35d04","weight":0.128,"lightness":0.4216,"saturation":0.9628,"hue_group":"red"},{"hex":"#ac4c04","weight":0.1198,"lightness":0.3451,"saturation":0.9545,"hue_group":"red"},{"hex":"#d7dd9e","weight":0.1181,"lightness":0.7431,"saturation":0.4809,"hue_group":"yellow"},{"hex":"#9c4304","weight":0.1131,"lightness":0.3137,"saturation":0.95,"hue_group":"red"},{"hex":"#c55404","weight":0.0872,"lightness":0.3941,"saturation":0.9602,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_orange.png","family":"shulker_orange","relations":[{"type":"visual_neighbors","target":"minecraft:chicken/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/chestnut","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_pink","name":"Shulker Pink","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#d47790","dominant_hex":"#f289aa","average_hex":"#d47790","hue_group":"red","lightness":0.649,"saturation":0.5196,"palette":["#f289aa","#cd6089","#e17199","#b4547a","#d7dd9e","#ac4b73"],"color_groups":[{"hex":"#f289aa","weight":0.2533,"lightness":0.7431,"saturation":0.8015,"hue_group":"red"},{"hex":"#cd6089","weight":0.2152,"lightness":0.5902,"saturation":0.5215,"hue_group":"red"},{"hex":"#e17199","weight":0.1805,"lightness":0.6627,"saturation":0.6512,"hue_group":"red"},{"hex":"#b4547a","weight":0.1198,"lightness":0.5176,"saturation":0.3902,"hue_group":"red"},{"hex":"#d7dd9e","weight":0.1181,"lightness":0.7431,"saturation":0.4809,"hue_group":"yellow"},{"hex":"#ac4b73","weight":0.1131,"lightness":0.4843,"saturation":0.3927,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_pink.png","family":"shulker_pink","relations":[{"type":"visual_neighbors","target":"minecraft:pig/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/red_blue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_purple","name":"Shulker Purple","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#6b3390","dominant_hex":"#6f23a6","average_hex":"#6b3390","hue_group":"purple","lightness":0.3824,"saturation":0.4769,"palette":["#6f23a6","#571c88","#4c147c","#d7dd9e","#4b1473","#541484"],"color_groups":[{"hex":"#6f23a6","weight":0.3593,"lightness":0.3941,"saturation":0.6517,"hue_group":"purple"},{"hex":"#571c88","weight":0.2141,"lightness":0.3216,"saturation":0.6585,"hue_group":"purple"},{"hex":"#4c147c","weight":0.1479,"lightness":0.2824,"saturation":0.7222,"hue_group":"purple"},{"hex":"#d7dd9e","weight":0.1181,"lightness":0.7431,"saturation":0.4809,"hue_group":"yellow"},{"hex":"#4b1473","weight":0.0889,"lightness":0.2647,"saturation":0.7037,"hue_group":"purple"},{"hex":"#541484","weight":0.0717,"lightness":0.298,"saturation":0.7368,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_purple.png","family":"shulker_purple","relations":[{"type":"visual_neighbors","target":"minecraft:shulker_magenta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:endermite","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_fireball","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/lucy","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker","label":"Shared hue group: purple","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_red","name":"Shulker Red","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#883029","dominant_hex":"#9a2424","average_hex":"#883029","hue_group":"red","lightness":0.3471,"saturation":0.5367,"palette":["#9a2424","#6c1414","#811c1c","#741414","#d7dd9e","#631414"],"color_groups":[{"hex":"#9a2424","weight":0.2655,"lightness":0.3725,"saturation":0.6211,"hue_group":"red"},{"hex":"#6c1414","weight":0.1954,"lightness":0.251,"saturation":0.6875,"hue_group":"red"},{"hex":"#811c1c","weight":0.1766,"lightness":0.3078,"saturation":0.6433,"hue_group":"red"},{"hex":"#741414","weight":0.1313,"lightness":0.2667,"saturation":0.7059,"hue_group":"red"},{"hex":"#d7dd9e","weight":0.1181,"lightness":0.7431,"saturation":0.4809,"hue_group":"yellow"},{"hex":"#631414","weight":0.1131,"lightness":0.2333,"saturation":0.6639,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_red.png","family":"shulker_red","relations":[{"type":"visual_neighbors","target":"minecraft:horse/chestnut","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fox_sleep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_shell","name":"Shulker Shell","entry_type":"item","description":"Shulker shells are items dropped by shulkers that are used solely to craft shulker boxes.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker shells."}],"colors":{"primary":"#704b76","dominant_hex":"#936b93","average_hex":"#704b76","hue_group":"purple","lightness":0.3784,"saturation":0.2228,"palette":["#936b93","#543464","#6c4c6c","#442454","#ac84ac","#84548c"],"color_groups":[{"hex":"#936b93","weight":0.2576,"lightness":0.498,"saturation":0.1575,"hue_group":"purple"},{"hex":"#543464","weight":0.2197,"lightness":0.298,"saturation":0.3158,"hue_group":"purple"},{"hex":"#6c4c6c","weight":0.1894,"lightness":0.3608,"saturation":0.1739,"hue_group":"purple"},{"hex":"#442454","weight":0.1818,"lightness":0.2353,"saturation":0.4,"hue_group":"purple"},{"hex":"#ac84ac","weight":0.0833,"lightness":0.5961,"saturation":0.1942,"hue_group":"purple"},{"hex":"#84548c","weight":0.0682,"lightness":0.4392,"saturation":0.25,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/shulker_shell.png","family":"shulker_shell","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:popped_chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spire_armor_trim_smithing_template","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_bucket","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_breath","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_crystal","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enderman_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_bundle","label":"Shared hue group: purple","confidence":0.55}],"category":"item"},{"id":"minecraft:shulker_spawn_egg","name":"Shulker Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#7e6077","dominant_hex":"#95718d","average_hex":"#7e6077","hue_group":"purple","lightness":0.4353,"saturation":0.1351,"palette":["#95718d","#543c5c","#c0a8a3","#745474","#3c2c44","#644464"],"color_groups":[{"hex":"#95718d","weight":0.2188,"lightness":0.5137,"saturation":0.1452,"hue_group":"purple"},{"hex":"#543c5c","weight":0.2031,"lightness":0.298,"saturation":0.2105,"hue_group":"purple"},{"hex":"#c0a8a3","weight":0.1953,"lightness":0.6961,"saturation":0.1871,"hue_group":"red"},{"hex":"#745474","weight":0.1719,"lightness":0.3922,"saturation":0.16,"hue_group":"purple"},{"hex":"#3c2c44","weight":0.1094,"lightness":0.2196,"saturation":0.2143,"hue_group":"purple"},{"hex":"#644464","weight":0.1016,"lightness":0.3294,"saturation":0.1905,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/shulker_spawn_egg.png","family":"shulker_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:popped_chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_shell","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_bucket","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spire_armor_trim_smithing_template","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_breath","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_crystal","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_spawn_egg","label":"Shared hue group: purple","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:shulker_white","name":"Shulker White","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#c8cdc6","dominant_hex":"#e3e9ea","average_hex":"#c8cdc6","hue_group":"neutral","lightness":0.7902,"saturation":0.0654,"palette":["#e3e9ea","#d8e1ca","#c0c7c5","#afb5af","#a5aba2","#b4bcbc"],"color_groups":[{"hex":"#e3e9ea","weight":0.2666,"lightness":0.9039,"saturation":0.1429,"hue_group":"cyan"},{"hex":"#d8e1ca","weight":0.2097,"lightness":0.8373,"saturation":0.2771,"hue_group":"yellow"},{"hex":"#c0c7c5","weight":0.1799,"lightness":0.7667,"saturation":0.0588,"hue_group":"neutral"},{"hex":"#afb5af","weight":0.1402,"lightness":0.698,"saturation":0.039,"hue_group":"neutral"},{"hex":"#a5aba2","weight":0.128,"lightness":0.6529,"saturation":0.0508,"hue_group":"neutral"},{"hex":"#b4bcbc","weight":0.0756,"lightness":0.7216,"saturation":0.0563,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_white.png","family":"shulker_white","relations":[{"type":"visual_neighbors","target":"minecraft:wolf","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/ragdoll","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/caerbannog","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:shulker_yellow","name":"Shulker Yellow","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#e9b527","dominant_hex":"#fcc221","average_hex":"#e9b527","hue_group":"yellow","lightness":0.5333,"saturation":0.8151,"palette":["#fcc221","#dd9e0e","#f1ab14","#d7dd9e","#cb930c","#f4b415"],"color_groups":[{"hex":"#fcc221","weight":0.3593,"lightness":0.5588,"saturation":0.9733,"hue_group":"yellow"},{"hex":"#dd9e0e","weight":0.1722,"lightness":0.4608,"saturation":0.8809,"hue_group":"yellow"},{"hex":"#f1ab14","weight":0.154,"lightness":0.5118,"saturation":0.8876,"hue_group":"yellow"},{"hex":"#d7dd9e","weight":0.1181,"lightness":0.7431,"saturation":0.4809,"hue_group":"yellow"},{"hex":"#cb930c","weight":0.1131,"lightness":0.4216,"saturation":0.8884,"hue_group":"yellow"},{"hex":"#f4b415","weight":0.0833,"lightness":0.5196,"saturation":0.9102,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/shulker_yellow.png","family":"shulker_yellow","relations":[{"type":"visual_neighbors","target":"minecraft:axolotl/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/red","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/ocelot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_lime","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/persian","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spark","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:silence_armor_trim_smithing_template","name":"Silence Armor Trim Smithing Template","entry_type":"item","description":"Silence armor trim is a type of smithing template used in smithing tables to add a decorative trim to armor. It is consumed when used, but can be duplicated using an existing template, cobbled deepslate, and diamonds.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added the silence armor trim smithing template."}],"colors":{"primary":"#32484c","dominant_hex":"#161c20","average_hex":"#32484c","hue_group":"cyan","lightness":0.2471,"saturation":0.2063,"palette":["#161c20","#484848","#5b6061","#04343f","#56d2d9","#353434"],"color_groups":[{"hex":"#161c20","weight":0.2606,"lightness":0.1059,"saturation":0.1852,"hue_group":"cyan"},{"hex":"#484848","weight":0.2364,"lightness":0.2824,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5b6061","weight":0.1697,"lightness":0.3686,"saturation":0.0319,"hue_group":"neutral"},{"hex":"#04343f","weight":0.1455,"lightness":0.1314,"saturation":0.8806,"hue_group":"cyan"},{"hex":"#56d2d9","weight":0.103,"lightness":0.5941,"saturation":0.6329,"hue_group":"cyan"},{"hex":"#353434","weight":0.0848,"lightness":0.2059,"saturation":0.0095,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/silence_armor_trim_smithing_template.png","family":"silence_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:recovery_compass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:disc_fragment_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ward_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_shard","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_spawn_egg","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:silverfish","name":"Silverfish","entry_type":"mob","description":"Silverfish are small hostile arthropods found infesting stone and deepslate blocks in mountain caves and certain structures, such as strongholds, or spawned using potions of Infestation. They attack by biting, and attacking one can cause nearby silverfish to break out of their blocks to attack the aggressor.","history":[{"version":"1.8","status":"added","notes":"Added silverfish."},{"version":"1","status":"added","notes":"Added sounds for silverfish. Before the update, silverfish used spider sounds."}],"colors":{"primary":"#757777","dominant_hex":"#7a7a7a","average_hex":"#757777","hue_group":"neutral","lightness":0.4627,"saturation":0.0085,"palette":["#7a7a7a","#818287","#878c90","#373737","#8c9686","#969696"],"color_groups":[{"hex":"#7a7a7a","weight":0.2415,"lightness":0.4784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#818287","weight":0.196,"lightness":0.5176,"saturation":0.0244,"hue_group":"neutral"},{"hex":"#878c90","weight":0.196,"lightness":0.5471,"saturation":0.039,"hue_group":"neutral"},{"hex":"#373737","weight":0.1903,"lightness":0.2157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c9686","weight":0.0909,"lightness":0.5569,"saturation":0.0708,"hue_group":"neutral"},{"hex":"#969696","weight":0.0852,"lightness":0.5882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/silverfish.png","family":"silverfish","relations":[{"type":"visual_neighbors","target":"minecraft:rabbit/toast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/lazy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/playful","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/weak","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/worried","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/aggressive","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken/cold","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:silverfish_spawn_egg","name":"Silverfish Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#5c6061","dominant_hex":"#525553","average_hex":"#5c6061","hue_group":"neutral","lightness":0.3706,"saturation":0.0265,"palette":["#525553","#91938f","#6e6f6d","#788a99","#0b0b0b","#2f2f2f"],"color_groups":[{"hex":"#525553","weight":0.2264,"lightness":0.3275,"saturation":0.018,"hue_group":"neutral"},{"hex":"#91938f","weight":0.2264,"lightness":0.5686,"saturation":0.0182,"hue_group":"neutral"},{"hex":"#6e6f6d","weight":0.1698,"lightness":0.4314,"saturation":0.0091,"hue_group":"neutral"},{"hex":"#788a99","weight":0.1509,"lightness":0.5353,"saturation":0.1392,"hue_group":"cyan"},{"hex":"#0b0b0b","weight":0.1415,"lightness":0.0431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2f2f2f","weight":0.0849,"lightness":0.1843,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/silverfish_spawn_egg.png","family":"silverfish_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elytra","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:skeleton","name":"Skeleton","entry_type":"mob","description":"Skeletons are common undead type of hostile mobs that perform ranged attacks with a bow, shooting arrows from a distance. They are most commonly found in the Overworld at night or in dark locations, but they also occasionally spawn in the Nether in Nether fortresses and soul sand valleys. They are an important source of bones and arrows, which they drop when killed.","history":[{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added skeletons."},{"version":"v1.0.3","status":"added","notes":"Added unique idle and hurt sounds for skeletons. Previously, they had no idle sounds and used the hurt sound for players."}],"colors":{"primary":"#a8a7a8","dominant_hex":"#bcbcbc","average_hex":"#a8a7a8","hue_group":"neutral","lightness":0.6569,"saturation":0.0057,"palette":["#bcbcbc","#acacac","#949494","#858484","#a4a4a4","#d2d2d2"],"color_groups":[{"hex":"#bcbcbc","weight":0.2307,"lightness":0.7373,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.1851,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1754,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#858484","weight":0.174,"lightness":0.5196,"saturation":0.0041,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.1409,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d2d2d2","weight":0.0939,"lightness":0.8235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/skeleton/skeleton.png","family":"skeleton","relations":[{"type":"visual_neighbors","target":"minecraft:rabbit/white_splotched","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:skeleton_horse","name":"Skeleton Horse","entry_type":"mob","description":"A skeleton horse is an undead skeletal horse that sometimes spawns when lightning strikes as a skeleton horseman. Despite being undead, it does not burn in sunlight. It becomes passive once separated from its rider. A skeleton horseman is a skeleton wearing an enchanted iron helmet that rides and controls a skeleton horse.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added skeleton horses."},{"version":"13w21a","status":"added","notes":"Added new GUI for horses, including skeleton horses; to control saddles , armor and inventories ."},{"version":"13w22a","status":"added","notes":"Added new sound effects for skeleton horses."}],"colors":{"primary":"#bebebe","dominant_hex":"#d4d4d4","average_hex":"#bebebe","hue_group":"neutral","lightness":0.7451,"saturation":0.0,"palette":["#d4d4d4","#e4e4e4","#b8b8b8","#989797","#cccccc","#252525"],"color_groups":[{"hex":"#d4d4d4","weight":0.2471,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.2317,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b8b8b8","weight":0.2017,"lightness":0.7216,"saturation":0.0,"hue_group":"neutral"},{"hex":"#989797","weight":0.166,"lightness":0.5941,"saturation":0.0048,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.1042,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#252525","weight":0.0492,"lightness":0.1451,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/horse_skeleton.png","family":"skeleton_horse","relations":[{"type":"visual_neighbors","target":"minecraft:tropical_a","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white_splotched","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_white","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:skeleton_horse_spawn_egg","name":"Skeleton Horse Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#9c9b9b","dominant_hex":"#d8d8d8","average_hex":"#9c9b9b","hue_group":"neutral","lightness":0.6098,"saturation":0.005,"palette":["#d8d8d8","#a4a4a4","#5c5c5c","#848484","#444444","#bcbcbc"],"color_groups":[{"hex":"#d8d8d8","weight":0.2931,"lightness":0.8471,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.2184,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1437,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#848484","weight":0.1264,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.1092,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bcbcbc","weight":0.1092,"lightness":0.7373,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/skeleton_horse_spawn_egg.png","family":"skeleton_horse_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:milk_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tipped_arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_tears","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_boat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:skeleton_skull","name":"Skeleton Skull","entry_type":"block","description":"A skeleton skull is the head of a skeleton in the form of a block. It can be obtained from ancient cities or by killing a skeleton using a charged creeper's explosion.","history":[{"version":"1.4.2 12w36a","status":"added","notes":"Added skeleton skulls, obtainable only from the Creative inventory ."}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"skeleton_skull","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Palette proche: Wither Skeleton Wall Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":"decorative"},{"id":"minecraft:skeleton_spawn_egg","name":"Skeleton Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#919191","dominant_hex":"#c4c4c4","average_hex":"#919191","hue_group":"neutral","lightness":0.5686,"saturation":0.0,"palette":["#c4c4c4","#949494","#545454","#7c7474","#444444","#acacac"],"color_groups":[{"hex":"#c4c4c4","weight":0.3806,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1642,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1343,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7474","weight":0.1343,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"},{"hex":"#444444","weight":0.1194,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.0672,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/skeleton_spawn_egg.png","family":"skeleton_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:milk_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_boat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:skeleton_wall_skull","name":"Skeleton Wall Skull","entry_type":"block","description":"A skeleton skull is the head of a skeleton in the form of a block. It can be obtained from ancient cities or by killing a skeleton using a charged creeper's explosion.","history":[{"version":"1.4.2 12w36a","status":"added","notes":"Added skeleton skulls, obtainable only from the Creative inventory ."}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"skeleton_wall_skull","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Palette proche: Wither Skeleton Wall Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":"decorative"},{"id":"minecraft:skull_banner_pattern","name":"Skull Banner Pattern","entry_type":"item","description":"A skull charge banner pattern is a banner pattern used to customize banners with a shape of a skull with crossbones.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added skull charge banner patterns."},{"version":"1.21.2 24w33a","status":"added","notes":"Added a unique item icon texture for skull charge banner patterns."}],"colors":{"primary":"#afa492","dominant_hex":"#ececec","average_hex":"#afa492","hue_group":"yellow","lightness":0.6294,"saturation":0.1534,"palette":["#ececec","#65483e","#847454","#b2a48a","#dcd4bc","#948c6c"],"color_groups":[{"hex":"#ececec","weight":0.2866,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#65483e","weight":0.1951,"lightness":0.3196,"saturation":0.2393,"hue_group":"red"},{"hex":"#847454","weight":0.1646,"lightness":0.4235,"saturation":0.2222,"hue_group":"yellow"},{"hex":"#b2a48a","weight":0.1524,"lightness":0.6196,"saturation":0.2062,"hue_group":"yellow"},{"hex":"#dcd4bc","weight":0.1402,"lightness":0.8,"saturation":0.3137,"hue_group":"yellow"},{"hex":"#948c6c","weight":0.061,"lightness":0.502,"saturation":0.1575,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/skull_banner_pattern.png","family":"skull_banner_pattern","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:globe_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mojang_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bordure_indented_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:field_masoned_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_banner_pattern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:skull_pottery_sherd","name":"Skull Pottery Sherd","entry_type":"item","description":"A skull pottery sherd is a pottery sherd that depicts a skeleton skull. It can be found in desert pyramids.","history":[{"version":"1.19.4","status":"added","notes":"Added skull pottery shards behind the Update 1.20 experimental datapack ."}],"colors":{"primary":"#693b30","dominant_hex":"#5c342c","average_hex":"#693b30","hue_group":"red","lightness":0.3,"saturation":0.3725,"palette":["#5c342c","#734334","#44241c","#542c24","#9a5a4a","#844c3c"],"color_groups":[{"hex":"#5c342c","weight":0.2102,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#734334","weight":0.2102,"lightness":0.3275,"saturation":0.3772,"hue_group":"red"},{"hex":"#44241c","weight":0.1783,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#542c24","weight":0.1529,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#9a5a4a","weight":0.1465,"lightness":0.4471,"saturation":0.3509,"hue_group":"red"},{"hex":"#844c3c","weight":0.1019,"lightness":0.3765,"saturation":0.375,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/skull_pottery_sherd.png","family":"skull_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guster_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:slime","name":"Slime","entry_type":"mob","description":"Slimes are cube-shaped hostile mobs that spawn deep underground in particular chunks, aboveground in swamps, or when an Oozing-affected entity dies. They move by jumping, chase after their targets, and usually deal damage on touch. Slimes spawn in different sizes, and larger ones split into smaller ones on death. Slimes are a major source of slimeballs.","history":[{"version":"v1.0.11","status":"added","notes":"Added slimes."},{"version":"wiki-history","status":"added","notes":"added to the game."},{"version":"1.1 11w49a","status":"added","notes":"Added slime spawn egg , allowing the player to spawn slimes."}],"colors":{"primary":"#64ac52","dominant_hex":"#74c364","average_hex":"#64ac52","hue_group":"green","lightness":0.498,"saturation":0.3543,"palette":["#74c364","#56a63e","#7ccc66","#64b44c","#132713","#7cbc6c"],"color_groups":[{"hex":"#74c364","weight":0.367,"lightness":0.5784,"saturation":0.4419,"hue_group":"green"},{"hex":"#56a63e","weight":0.2385,"lightness":0.4471,"saturation":0.4561,"hue_group":"green"},{"hex":"#7ccc66","weight":0.1193,"lightness":0.6,"saturation":0.5,"hue_group":"green"},{"hex":"#64b44c","weight":0.1101,"lightness":0.502,"saturation":0.4094,"hue_group":"green"},{"hex":"#132713","weight":0.0826,"lightness":0.1137,"saturation":0.3448,"hue_group":"green"},{"hex":"#7cbc6c","weight":0.0826,"lightness":0.5804,"saturation":0.3738,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/slime/slime.png","family":"slime","relations":[{"type":"visual_neighbors","target":"minecraft:creeper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_sea_turtle","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_fox","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_fox_sleep","label":"Shared hue group: green","confidence":0.55}],"category":"mob"},{"id":"minecraft:slime_ball","name":"Slime Ball","entry_type":"item","description":"A slimeball is a crafting ingredient commonly dropped by slimes, and can be sneezed out by pandas.","history":[{"version":"v1.0.11","status":"added","notes":"Added slimeballs, which are dropped from slimes . At the time, they serve no purpose."}],"colors":{"primary":"#649c5c","dominant_hex":"#548d4c","average_hex":"#649c5c","hue_group":"green","lightness":0.4863,"saturation":0.2581,"palette":["#548d4c","#74bc6c","#9cdc96","#34542c","#447c44","#74ac64"],"color_groups":[{"hex":"#548d4c","weight":0.2232,"lightness":0.4255,"saturation":0.2995,"hue_group":"green"},{"hex":"#74bc6c","weight":0.1964,"lightness":0.5804,"saturation":0.3738,"hue_group":"green"},{"hex":"#9cdc96","weight":0.1696,"lightness":0.7255,"saturation":0.5,"hue_group":"green"},{"hex":"#34542c","weight":0.1607,"lightness":0.251,"saturation":0.3125,"hue_group":"green"},{"hex":"#447c44","weight":0.125,"lightness":0.3765,"saturation":0.2917,"hue_group":"green"},{"hex":"#74ac64","weight":0.125,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/slime_ball.png","family":"slime_ball","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_creator","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_egg","label":"Shared hue group: green","confidence":0.55}],"category":"item"},{"id":"minecraft:slime_block","name":"Slime Block","entry_type":"block","description":"A slime block is a storage block equivalent to nine slimeballs. It has both sticky and bouncy properties making it useful in conjunction with pistons to move both blocks and entities. It can be used to brew Potions of Oozing.","history":[{"version":"1.8 14w02a","status":"added","notes":"Added slime blocks."}],"colors":{"primary":"#70c05c","dominant_hex":"#74c464","average_hex":"#70c05c","hue_group":"green","lightness":0.5569,"saturation":0.4425,"palette":["#74c464","#64b44c","#7ccc64","#7ccc6c","#5cac44"],"color_groups":[{"hex":"#74c464","weight":0.5,"lightness":0.5804,"saturation":0.4486,"hue_group":"green"},{"hex":"#64b44c","weight":0.1992,"lightness":0.502,"saturation":0.4094,"hue_group":"green"},{"hex":"#7ccc64","weight":0.1367,"lightness":0.5961,"saturation":0.5049,"hue_group":"green"},{"hex":"#7ccc6c","weight":0.0898,"lightness":0.6118,"saturation":0.4848,"hue_group":"green"},{"hex":"#5cac44","weight":0.0742,"lightness":0.4706,"saturation":0.4333,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/slime_block.png","family":"slime_block","relations":[{"type":"visual_neighbors","target":"minecraft:test_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_propagule","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:emerald_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_propagule","label":"Palette proche: Mangrove Propagule","confidence":0.817},{"type":"color_neighbors","target":"minecraft:test_block","label":"Palette proche: Test Block","confidence":0.799},{"type":"color_neighbors","target":"minecraft:sugar_cane","label":"Palette proche: Sugar Cane","confidence":0.749},{"type":"color_neighbors","target":"minecraft:kelp","label":"Palette proche: Kelp","confidence":0.704},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.691},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.679},{"type":"color_neighbors","target":"minecraft:kelp_plant","label":"Palette proche: Kelp Plant","confidence":0.676},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Palette proche: Waxed Weathered Copper Lantern","confidence":0.676},{"type":"color_neighbors","target":"minecraft:weathered_copper_lantern","label":"Palette proche: Weathered Copper Lantern","confidence":0.676},{"type":"color_neighbors","target":"minecraft:lily_of_the_valley","label":"Palette proche: Lily Of The Valley","confidence":0.673},{"type":"color_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Palette proche: Potted Lily Of The Valley","confidence":0.673},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Palette proche: Waxed Weathered Copper Trapdoor","confidence":0.656},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.733},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.733},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Trapdoor","confidence":0.717},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Weathered Copper Trapdoor","confidence":0.717},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Copper","confidence":0.712},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chest","confidence":0.712},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Golem Statue","confidence":0.712},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par sous-ton: Weathered Copper","confidence":0.712},{"type":"color_bridge","target":"minecraft:weathered_copper_chest","label":"Pont de nuance par sous-ton: Weathered Copper Chest","confidence":0.712},{"type":"color_bridge","target":"minecraft:weathered_copper_golem_statue","label":"Pont de nuance par sous-ton: Weathered Copper Golem Statue","confidence":0.712},{"type":"color_analogous","target":"minecraft:test_block","label":"Couleurs analogues: Test Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:potatoes","label":"Couleurs analogues: Potatoes","confidence":0.953},{"type":"color_analogous","target":"minecraft:potted_white_tulip","label":"Couleurs analogues: Potted White Tulip","confidence":0.922},{"type":"color_analogous","target":"minecraft:white_tulip","label":"Couleurs analogues: White Tulip","confidence":0.922},{"type":"color_analogous","target":"minecraft:mangrove_propagule","label":"Couleurs analogues: Mangrove Propagule","confidence":0.899},{"type":"color_analogous","target":"minecraft:pink_tulip","label":"Couleurs analogues: Pink Tulip","confidence":0.893},{"type":"color_analogous","target":"minecraft:potted_pink_tulip","label":"Couleurs analogues: Potted Pink Tulip","confidence":0.893},{"type":"color_analogous","target":"minecraft:sunflower","label":"Couleurs analogues: Sunflower","confidence":0.887},{"type":"color_complement","target":"minecraft:magenta_stained_glass","label":"Contraste complementaire: Magenta Stained Glass","confidence":0.837},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.822},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.638},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.605},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.605},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.585},{"type":"color_complement","target":"minecraft:chorus_plant","label":"Contraste complementaire: Chorus Plant","confidence":0.58},{"type":"color_complement","target":"minecraft:bubble_coral_fan","label":"Contraste complementaire: Bubble Coral Fan","confidence":0.563},{"type":"color_triad","target":"minecraft:blue_stained_glass","label":"Harmonie triadique: Blue Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_glazed_terracotta","label":"Harmonie triadique: Blue Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:cracked_nether_bricks","label":"Harmonie triadique: Cracked Nether Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_candle","label":"Harmonie triadique: Blue Candle","confidence":0.957},{"type":"color_triad","target":"minecraft:enchanting_table","label":"Harmonie triadique: Enchanting Table","confidence":0.952},{"type":"color_triad","target":"minecraft:nether_brick_fence","label":"Harmonie triadique: Nether Brick Fence","confidence":0.949},{"type":"color_triad","target":"minecraft:nether_brick_slab","label":"Harmonie triadique: Nether Brick Slab","confidence":0.949},{"type":"color_square","target":"minecraft:acacia_hanging_sign","label":"Harmonie carree: Acacia Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:acacia_wall_hanging_sign","label":"Harmonie carree: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_acacia_log","label":"Harmonie carree: Stripped Acacia Log","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_acacia_wood","label":"Harmonie carree: Stripped Acacia Wood","confidence":0.96},{"type":"color_square","target":"minecraft:exposed_copper_door","label":"Harmonie carree: Exposed Copper Door","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_exposed_copper_door","label":"Harmonie carree: Waxed Exposed Copper Door","confidence":0.96},{"type":"color_square","target":"minecraft:copper_bulb","label":"Harmonie carree: Copper Bulb","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_bulb","label":"Harmonie carree: Waxed Copper Bulb","confidence":0.96},{"type":"value_contrast","target":"minecraft:potted_spruce_sapling","label":"Contraste clair sombre: Potted Spruce Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_sapling","label":"Contraste clair sombre: Spruce Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_sapling","label":"Contraste clair sombre: Jungle Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_jungle_sapling","label":"Contraste clair sombre: Potted Jungle Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:dried_kelp_block","label":"Contraste clair sombre: Dried Kelp Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55}],"category":""},{"id":"minecraft:slime_spawn_egg","name":"Slime Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#5a954a","dominant_hex":"#74bc64","average_hex":"#5a954a","hue_group":"green","lightness":0.4373,"saturation":0.3363,"palette":["#74bc64","#549c3c","#3c6434","#2c4c24","#4c843c","#94d47c"],"color_groups":[{"hex":"#74bc64","weight":0.3391,"lightness":0.5647,"saturation":0.3964,"hue_group":"green"},{"hex":"#549c3c","weight":0.2069,"lightness":0.4235,"saturation":0.4444,"hue_group":"green"},{"hex":"#3c6434","weight":0.1609,"lightness":0.298,"saturation":0.3158,"hue_group":"green"},{"hex":"#2c4c24","weight":0.1092,"lightness":0.2196,"saturation":0.3571,"hue_group":"green"},{"hex":"#4c843c","weight":0.1092,"lightness":0.3765,"saturation":0.375,"hue_group":"green"},{"hex":"#94d47c","weight":0.0747,"lightness":0.6588,"saturation":0.5057,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/slime_spawn_egg.png","family":"slime_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_ball","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_axe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_scute","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:small_amethyst_bud","name":"Small Amethyst Bud","entry_type":"block","description":"Amethyst buds are the first three stages of growth of amethyst clusters, which grow on budding amethyst. Amethyst clusters are the fourth and final growth stage of amethyst buds, which drop amethyst shards when mined.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added amethyst buds and amethyst clusters."}],"colors":{"primary":"#8463c0","dominant_hex":"#64449c","average_hex":"#8463c0","hue_group":"blue","lightness":0.5706,"saturation":0.4247,"palette":["#64449c","#7c5cb4","#8c6ccc","#b48cf4"],"color_groups":[{"hex":"#64449c","weight":0.3125,"lightness":0.4392,"saturation":0.3929,"hue_group":"blue"},{"hex":"#7c5cb4","weight":0.25,"lightness":0.5333,"saturation":0.3697,"hue_group":"blue"},{"hex":"#8c6ccc","weight":0.2188,"lightness":0.6118,"saturation":0.4848,"hue_group":"blue"},{"hex":"#b48cf4","weight":0.2188,"lightness":0.7529,"saturation":0.8254,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/small_amethyst_bud.png","family":"small_amethyst_bud","relations":[{"type":"visual_neighbors","target":"minecraft:amethyst_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:budding_amethyst","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:medium_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_amethyst_bud","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_cluster","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeating_command_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:amethyst_block","label":"Palette proche: Amethyst Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:budding_amethyst","label":"Palette proche: Budding Amethyst","confidence":0.94},{"type":"color_neighbors","target":"minecraft:amethyst_cluster","label":"Palette proche: Amethyst Cluster","confidence":0.922},{"type":"color_neighbors","target":"minecraft:medium_amethyst_bud","label":"Palette proche: Medium Amethyst Bud","confidence":0.914},{"type":"color_neighbors","target":"minecraft:large_amethyst_bud","label":"Palette proche: Large Amethyst Bud","confidence":0.883},{"type":"color_neighbors","target":"minecraft:repeating_command_block","label":"Palette proche: Repeating Command Block","confidence":0.772},{"type":"color_neighbors","target":"minecraft:purple_stained_glass_pane","label":"Palette proche: Purple Stained Glass Pane","confidence":0.746},{"type":"color_neighbors","target":"minecraft:purple_stained_glass","label":"Palette proche: Purple Stained Glass","confidence":0.727},{"type":"color_neighbors","target":"minecraft:purple_concrete_powder","label":"Palette proche: Purple Concrete Powder","confidence":0.682},{"type":"color_neighbors","target":"minecraft:blue_concrete_powder","label":"Palette proche: Blue Concrete Powder","confidence":0.674},{"type":"color_neighbors","target":"minecraft:purple_carpet","label":"Palette proche: Purple Carpet","confidence":0.666},{"type":"color_neighbors","target":"minecraft:purple_wool","label":"Palette proche: Purple Wool","confidence":0.666},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.718},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par palette: Shulker Box","confidence":0.668},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par palette: Purpur Block","confidence":0.655},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par palette: Purpur Slab","confidence":0.655},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par palette: Purpur Stairs","confidence":0.655},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par palette: Purpur Pillar","confidence":0.646},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par sous-ton: Blue Terracotta","confidence":0.633},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par palette: Clay","confidence":0.594},{"type":"color_bridge","target":"minecraft:magenta_concrete_powder","label":"Pont de nuance par palette: Magenta Concrete Powder","confidence":0.593},{"type":"color_bridge","target":"minecraft:structure_block","label":"Pont de nuance par sous-ton: Structure Block","confidence":0.58},{"type":"color_analogous","target":"minecraft:amethyst_block","label":"Couleurs analogues: Amethyst Block","confidence":0.956},{"type":"color_analogous","target":"minecraft:budding_amethyst","label":"Couleurs analogues: Budding Amethyst","confidence":0.943},{"type":"color_analogous","target":"minecraft:repeating_command_block","label":"Couleurs analogues: Repeating Command Block","confidence":0.895},{"type":"color_analogous","target":"minecraft:nether_portal","label":"Couleurs analogues: Nether Portal","confidence":0.875},{"type":"color_analogous","target":"minecraft:respawn_anchor","label":"Couleurs analogues: Respawn Anchor","confidence":0.855},{"type":"color_analogous","target":"minecraft:large_amethyst_bud","label":"Couleurs analogues: Large Amethyst Bud","confidence":0.852},{"type":"color_analogous","target":"minecraft:medium_amethyst_bud","label":"Couleurs analogues: Medium Amethyst Bud","confidence":0.843},{"type":"color_analogous","target":"minecraft:amethyst_cluster","label":"Couleurs analogues: Amethyst Cluster","confidence":0.84},{"type":"color_complement","target":"minecraft:green_stained_glass_pane","label":"Contraste complementaire: Green Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:big_dripleaf_stem","label":"Contraste complementaire: Big Dripleaf Stem","confidence":0.96},{"type":"color_complement","target":"minecraft:small_dripleaf","label":"Contraste complementaire: Small Dripleaf","confidence":0.96},{"type":"color_complement","target":"minecraft:azalea_leaves","label":"Contraste complementaire: Azalea Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:big_dripleaf","label":"Contraste complementaire: Big Dripleaf","confidence":0.953},{"type":"color_complement","target":"minecraft:green_glazed_terracotta","label":"Contraste complementaire: Green Glazed Terracotta","confidence":0.95},{"type":"color_complement","target":"minecraft:green_stained_glass","label":"Contraste complementaire: Green Stained Glass","confidence":0.948},{"type":"color_complement","target":"minecraft:green_concrete","label":"Contraste complementaire: Green Concrete","confidence":0.944},{"type":"color_triad","target":"minecraft:exposed_copper_trapdoor","label":"Harmonie triadique: Exposed Copper Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Harmonie triadique: Waxed Exposed Copper Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:raw_copper_block","label":"Harmonie triadique: Raw Copper Block","confidence":0.96},{"type":"color_triad","target":"minecraft:white_terracotta","label":"Harmonie triadique: White Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:resin_brick_slab","label":"Harmonie triadique: Resin Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:resin_brick_stairs","label":"Harmonie triadique: Resin Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:resin_brick_wall","label":"Harmonie triadique: Resin Brick Wall","confidence":0.96},{"type":"color_triad","target":"minecraft:resin_bricks","label":"Harmonie triadique: Resin Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:cactus_flower","label":"Harmonie carree: Cactus Flower","confidence":0.96},{"type":"color_square","target":"minecraft:nether_sprouts","label":"Harmonie carree: Nether Sprouts","confidence":0.953},{"type":"color_square","target":"minecraft:twisting_vines","label":"Harmonie carree: Twisting Vines","confidence":0.95},{"type":"color_square","target":"minecraft:chiseled_nether_bricks","label":"Harmonie carree: Chiseled Nether Bricks","confidence":0.921},{"type":"color_square","target":"minecraft:potted_warped_roots","label":"Harmonie carree: Potted Warped Roots","confidence":0.914},{"type":"color_square","target":"minecraft:twisting_vines_plant","label":"Harmonie carree: Twisting Vines Plant","confidence":0.913},{"type":"color_square","target":"minecraft:warped_trapdoor","label":"Harmonie carree: Warped Trapdoor","confidence":0.91},{"type":"color_square","target":"minecraft:warped_roots","label":"Harmonie carree: Warped Roots","confidence":0.908},{"type":"value_contrast","target":"minecraft:respawn_anchor","label":"Contraste clair sombre: Respawn Anchor","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.55},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.55},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone","label":"Contraste clair sombre: Polished Blackstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_button","label":"Contraste clair sombre: Polished Blackstone Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_blackstone_pressure_plate","label":"Contraste clair sombre: Polished Blackstone Pressure Plate","confidence":0.55}],"category":""},{"id":"minecraft:small_dripleaf","name":"Small Dripleaf","entry_type":"block","description":"A small dripleaf is a plant which generates in lush caves, and is used to grow big dripleaves, a platforming block.","history":[{"version":"1.17 21w05a","status":"added","notes":"Added small dripleaves."}],"colors":{"primary":"#5b732e","dominant_hex":"#6c8434","average_hex":"#5b732e","hue_group":"yellow","lightness":0.3157,"saturation":0.4286,"palette":["#6c8434","#546c2c","#44542c","#74942c"],"color_groups":[{"hex":"#6c8434","weight":0.3095,"lightness":0.3608,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#546c2c","weight":0.2976,"lightness":0.298,"saturation":0.4211,"hue_group":"yellow"},{"hex":"#44542c","weight":0.2143,"lightness":0.251,"saturation":0.3125,"hue_group":"yellow"},{"hex":"#74942c","weight":0.1786,"lightness":0.3765,"saturation":0.5417,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/big_dripleaf_stem.png","family":"small_dripleaf","relations":[{"type":"visual_neighbors","target":"minecraft:big_dripleaf_stem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azalea_leaves","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:big_dripleaf_stem","label":"Palette proche: Big Dripleaf Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea_leaves","label":"Palette proche: Azalea Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_block","label":"Palette proche: Moss Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:moss_carpet","label":"Palette proche: Moss Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:azalea","label":"Palette proche: Azalea","confidence":0.94},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_azalea_bush","label":"Palette proche: Potted Azalea Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cave_vines","label":"Palette proche: Cave Vines","confidence":0.921},{"type":"color_neighbors","target":"minecraft:green_concrete_powder","label":"Palette proche: Green Concrete Powder","confidence":0.92},{"type":"color_neighbors","target":"minecraft:green_stained_glass_pane","label":"Palette proche: Green Stained Glass Pane","confidence":0.917},{"type":"color_neighbors","target":"minecraft:green_stained_glass","label":"Palette proche: Green Stained Glass","confidence":0.914},{"type":"color_neighbors","target":"minecraft:flowering_azalea_leaves","label":"Palette proche: Flowering Azalea Leaves","confidence":0.894},{"type":"color_bridge","target":"minecraft:mossy_cobblestone","label":"Pont de nuance par sous-ton: Mossy Cobblestone","confidence":0.711},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_slab","label":"Pont de nuance par sous-ton: Mossy Cobblestone Slab","confidence":0.711},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_stairs","label":"Pont de nuance par sous-ton: Mossy Cobblestone Stairs","confidence":0.711},{"type":"color_bridge","target":"minecraft:mossy_cobblestone_wall","label":"Pont de nuance par sous-ton: Mossy Cobblestone Wall","confidence":0.711},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.7},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.696},{"type":"color_bridge","target":"minecraft:infested_mossy_stone_bricks","label":"Pont de nuance par sous-ton: Infested Mossy Stone Bricks","confidence":0.671},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_slab","label":"Pont de nuance par sous-ton: Mossy Stone Brick Slab","confidence":0.671},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_stairs","label":"Pont de nuance par sous-ton: Mossy Stone Brick Stairs","confidence":0.671},{"type":"color_bridge","target":"minecraft:mossy_stone_brick_wall","label":"Pont de nuance par sous-ton: Mossy Stone Brick Wall","confidence":0.671},{"type":"color_analogous","target":"minecraft:big_dripleaf_stem","label":"Couleurs analogues: Big Dripleaf Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:azalea_leaves","label":"Couleurs analogues: Azalea Leaves","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass_pane","label":"Couleurs analogues: Green Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_block","label":"Couleurs analogues: Moss Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:moss_carpet","label":"Couleurs analogues: Moss Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_stained_glass","label":"Couleurs analogues: Green Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:big_dripleaf","label":"Couleurs analogues: Big Dripleaf","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_glazed_terracotta","label":"Couleurs analogues: Green Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.921},{"type":"color_complement","target":"minecraft:budding_amethyst","label":"Contraste complementaire: Budding Amethyst","confidence":0.902},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.893},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.872},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.872},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.872},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.872},{"type":"color_triad","target":"minecraft:cyan_stained_glass","label":"Harmonie triadique: Cyan Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_stained_glass_pane","label":"Harmonie triadique: Cyan Stained Glass Pane","confidence":0.948},{"type":"color_triad","target":"minecraft:light_blue_candle","label":"Harmonie triadique: Light Blue Candle","confidence":0.941},{"type":"color_triad","target":"minecraft:soul_lantern","label":"Harmonie triadique: Soul Lantern","confidence":0.928},{"type":"color_triad","target":"minecraft:light_blue_concrete","label":"Harmonie triadique: Light Blue Concrete","confidence":0.904},{"type":"color_triad","target":"minecraft:light_blue_glazed_terracotta","label":"Harmonie triadique: Light Blue Glazed Terracotta","confidence":0.902},{"type":"color_triad","target":"minecraft:cornflower","label":"Harmonie triadique: Cornflower","confidence":0.896},{"type":"color_triad","target":"minecraft:potted_cornflower","label":"Harmonie triadique: Potted Cornflower","confidence":0.896},{"type":"color_square","target":"minecraft:twisting_vines","label":"Harmonie carree: Twisting Vines","confidence":0.96},{"type":"color_square","target":"minecraft:cactus_flower","label":"Harmonie carree: Cactus Flower","confidence":0.96},{"type":"color_square","target":"minecraft:chiseled_nether_bricks","label":"Harmonie carree: Chiseled Nether Bricks","confidence":0.938},{"type":"color_square","target":"minecraft:nether_sprouts","label":"Harmonie carree: Nether Sprouts","confidence":0.936},{"type":"color_square","target":"minecraft:warped_nylium","label":"Harmonie carree: Warped Nylium","confidence":0.921},{"type":"color_square","target":"minecraft:nether_brick_fence","label":"Harmonie carree: Nether Brick Fence","confidence":0.918},{"type":"color_square","target":"minecraft:nether_brick_slab","label":"Harmonie carree: Nether Brick Slab","confidence":0.918},{"type":"color_square","target":"minecraft:nether_brick_stairs","label":"Harmonie carree: Nether Brick Stairs","confidence":0.918},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.624},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.591},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.569},{"type":"value_contrast","target":"minecraft:oxeye_daisy","label":"Contraste clair sombre: Oxeye Daisy","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_oxeye_daisy","label":"Contraste clair sombre: Potted Oxeye Daisy","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55}],"category":"natural"},{"id":"minecraft:smithing_table","name":"Smithing Table","entry_type":"block","description":"A smithing table is a utility block used to apply smithing templates to tools, weapons, and armor. It also serves as a toolsmith's job site block.","history":[{"version":"1.14 18w44a","status":"added","notes":"Added smithing tables."}],"colors":{"primary":"#392527","dominant_hex":"#491c19","average_hex":"#392527","hue_group":"red","lightness":0.1843,"saturation":0.2128,"palette":["#491c19","#282c30","#191919","#444452","#2c1414","#652e29"],"color_groups":[{"hex":"#491c19","weight":0.2539,"lightness":0.1922,"saturation":0.4898,"hue_group":"red"},{"hex":"#282c30","weight":0.2109,"lightness":0.1725,"saturation":0.0909,"hue_group":"neutral"},{"hex":"#191919","weight":0.1836,"lightness":0.098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444452","weight":0.125,"lightness":0.2941,"saturation":0.0933,"hue_group":"neutral"},{"hex":"#2c1414","weight":0.1133,"lightness":0.1255,"saturation":0.375,"hue_group":"red"},{"hex":"#652e29","weight":0.1133,"lightness":0.2784,"saturation":0.4225,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/smithing_table_front.png","family":"smithing_table","relations":[{"type":"visual_neighbors","target":"minecraft:gray_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gilded_blackstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_soil","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_glazed_terracotta","label":"Palette proche: Black Glazed Terracotta","confidence":0.835},{"type":"color_neighbors","target":"minecraft:gray_shulker_box","label":"Palette proche: Gray Shulker Box","confidence":0.802},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.778},{"type":"color_neighbors","target":"minecraft:coal_block","label":"Palette proche: Coal Block","confidence":0.778},{"type":"color_neighbors","target":"minecraft:black_stained_glass","label":"Palette proche: Black Stained Glass","confidence":0.77},{"type":"color_neighbors","target":"minecraft:heavy_core","label":"Palette proche: Heavy Core","confidence":0.77},{"type":"color_neighbors","target":"minecraft:black_stained_glass_pane","label":"Palette proche: Black Stained Glass Pane","confidence":0.769},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.761},{"type":"color_neighbors","target":"minecraft:gray_concrete","label":"Palette proche: Gray Concrete","confidence":0.76},{"type":"color_neighbors","target":"minecraft:nether_brick_fence","label":"Palette proche: Nether Brick Fence","confidence":0.751},{"type":"color_neighbors","target":"minecraft:nether_brick_slab","label":"Palette proche: Nether Brick Slab","confidence":0.751},{"type":"color_neighbors","target":"minecraft:nether_brick_stairs","label":"Palette proche: Nether Brick Stairs","confidence":0.751},{"type":"color_bridge","target":"minecraft:black_glazed_terracotta","label":"Pont de nuance par sous-ton: Black Glazed Terracotta","confidence":0.864},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.837},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par palette: Black Concrete Powder","confidence":0.817},{"type":"color_bridge","target":"minecraft:coal_block","label":"Pont de nuance par palette: Coal Block","confidence":0.817},{"type":"color_bridge","target":"minecraft:black_stained_glass","label":"Pont de nuance par palette: Black Stained Glass","confidence":0.811},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par palette: Heavy Core","confidence":0.811},{"type":"color_bridge","target":"minecraft:black_stained_glass_pane","label":"Pont de nuance par palette: Black Stained Glass Pane","confidence":0.81},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par palette: Black Shulker Box","confidence":0.804},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.803},{"type":"color_bridge","target":"minecraft:nether_brick_fence","label":"Pont de nuance par sous-ton: Nether Brick Fence","confidence":0.795},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.767},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.733},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.721},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.72},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.72},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.718},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.718},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.718}],"category":"utility"},{"id":"minecraft:smoker","name":"Smoker","entry_type":"block","description":"A smoker is a block that cooks food twice as quickly as a furnace, but cannot smelt anything else. It also serves as a butcher's job site block.","history":[{"version":"1.14 18w44a","status":"added","notes":"Added smokers."},{"version":"19w03a","status":"added","notes":"added for smokers."}],"colors":{"primary":"#555451","dominant_hex":"#59514a","average_hex":"#555451","hue_group":"neutral","lightness":0.3255,"saturation":0.0241,"palette":["#59514a","#222222","#747474","#6c6c6c","#3f3c38","#848484"],"color_groups":[{"hex":"#59514a","weight":0.2773,"lightness":0.3196,"saturation":0.092,"hue_group":"neutral"},{"hex":"#222222","weight":0.2031,"lightness":0.1333,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1445,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.1367,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3f3c38","weight":0.125,"lightness":0.2333,"saturation":0.0588,"hue_group":"neutral"},{"hex":"#848484","weight":0.1133,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/smoker_top.png","family":"smoker","relations":[{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blast_furnace","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bedrock","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.938},{"type":"color_neighbors","target":"minecraft:dropper","label":"Palette proche: Dropper","confidence":0.936},{"type":"color_neighbors","target":"minecraft:observer","label":"Palette proche: Observer","confidence":0.916},{"type":"color_neighbors","target":"minecraft:bedrock","label":"Palette proche: Bedrock","confidence":0.911},{"type":"color_neighbors","target":"minecraft:furnace","label":"Palette proche: Furnace","confidence":0.906},{"type":"color_neighbors","target":"minecraft:deepslate_brick_slab","label":"Palette proche: Deepslate Brick Slab","confidence":0.906},{"type":"color_neighbors","target":"minecraft:deepslate_brick_stairs","label":"Palette proche: Deepslate Brick Stairs","confidence":0.906},{"type":"color_neighbors","target":"minecraft:deepslate_brick_wall","label":"Palette proche: Deepslate Brick Wall","confidence":0.906},{"type":"color_neighbors","target":"minecraft:deepslate_bricks","label":"Palette proche: Deepslate Bricks","confidence":0.906},{"type":"color_neighbors","target":"minecraft:polished_deepslate","label":"Palette proche: Polished Deepslate","confidence":0.904},{"type":"color_neighbors","target":"minecraft:polished_deepslate_slab","label":"Palette proche: Polished Deepslate Slab","confidence":0.904},{"type":"color_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Palette proche: Polished Deepslate Stairs","confidence":0.904},{"type":"color_bridge","target":"minecraft:dispenser","label":"Pont de nuance par palette: Dispenser","confidence":0.86},{"type":"color_bridge","target":"minecraft:dropper","label":"Pont de nuance par palette: Dropper","confidence":0.86},{"type":"color_bridge","target":"minecraft:observer","label":"Pont de nuance par palette: Observer","confidence":0.86},{"type":"color_bridge","target":"minecraft:bedrock","label":"Pont de nuance par palette: Bedrock","confidence":0.86},{"type":"color_bridge","target":"minecraft:furnace","label":"Pont de nuance par palette: Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_slab","label":"Pont de nuance par palette: Deepslate Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_stairs","label":"Pont de nuance par palette: Deepslate Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_brick_wall","label":"Pont de nuance par palette: Deepslate Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:deepslate_bricks","label":"Pont de nuance par palette: Deepslate Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_deepslate","label":"Pont de nuance par palette: Polished Deepslate","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.633},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.599},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.587},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.586},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.586},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.577},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.575},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.575}],"category":""},{"id":"minecraft:smooth_basalt","name":"Smooth Basalt","entry_type":"block","description":"Smooth basalt is an ornamental rock smelted from basalt or found as part of amethyst geodes and ancient cities.","history":[{"version":"1.17 21w08a","status":"added","notes":"Added smooth basalt."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb smooth basalt, providing the football/regular effect to the mob."}],"colors":{"primary":"#49484e","dominant_hex":"#4c4c4c","average_hex":"#49484e","hue_group":"neutral","lightness":0.2941,"saturation":0.04,"palette":["#4c4c4c","#5c5c5c","#3c3c4c","#34343c","#1c2434","#6c6c6c"],"color_groups":[{"hex":"#4c4c4c","weight":0.293,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.2852,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3c4c","weight":0.2266,"lightness":0.2667,"saturation":0.1176,"hue_group":"neutral"},{"hex":"#34343c","weight":0.1328,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#1c2434","weight":0.0391,"lightness":0.1569,"saturation":0.3,"hue_group":"blue"},{"hex":"#6c6c6c","weight":0.0234,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/smooth_basalt.png","family":"smooth_basalt","relations":[{"type":"visual_neighbors","target":"minecraft:basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jigsaw","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:reinforced_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:basalt","label":"Palette proche: Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_basalt","label":"Palette proche: Polished Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_bridge","target":"minecraft:basalt","label":"Pont de nuance par palette: Basalt","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_basalt","label":"Pont de nuance par palette: Polished Basalt","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.652},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.627},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.626},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.626},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.619},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.596},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.593},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.593}],"category":"natural"},{"id":"minecraft:smooth_quartz","name":"Smooth Quartz","entry_type":"block","description":"A smooth quartz block is a mineral block used only for decoration. It is made by smelting blocks of quartz.","history":[{"version":"1.5 13w04a","status":"added","notes":"Added seamless quartz double slabs as an unobtainable variant of the quartz double slab."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb smooth quartz blocks, providing the football/regular effect to the mob."}],"colors":{"primary":"#ede6e0","dominant_hex":"#ece4dc","average_hex":"#ede6e0","hue_group":"red","lightness":0.9039,"saturation":0.2653,"palette":["#ece4dc","#ecece4"],"color_groups":[{"hex":"#ece4dc","weight":0.6172,"lightness":0.8941,"saturation":0.2963,"hue_group":"yellow"},{"hex":"#ecece4","weight":0.3828,"lightness":0.9098,"saturation":0.1739,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/quartz_block_bottom.png","family":"smooth_quartz","relations":[{"type":"variants","target":"minecraft:smooth_quartz_slab","label":"Same family: smooth_quartz","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_quartz_slab","label":"Related set: smooth_quartz","confidence":0.8},{"type":"variants","target":"minecraft:smooth_quartz_stairs","label":"Same family: smooth_quartz","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_quartz_stairs","label":"Related set: smooth_quartz","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:smooth_quartz_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_pale_oak_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_pale_oak_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:smooth_quartz_slab","label":"Palette proche: Smooth Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Palette proche: Smooth Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_block","label":"Palette proche: Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_slab","label":"Palette proche: Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_stairs","label":"Palette proche: Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_quartz_block","label":"Palette proche: Chiseled Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_bricks","label":"Palette proche: Quartz Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_pillar","label":"Palette proche: Quartz Pillar","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bone_block","label":"Palette proche: Bone Block","confidence":0.857},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.84},{"type":"color_neighbors","target":"minecraft:mushroom_stem","label":"Palette proche: Mushroom Stem","confidence":0.76},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.723},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.868},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.802},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.772},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.766},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.766},{"type":"color_bridge","target":"minecraft:sculk_shrieker","label":"Pont de nuance par palette: Sculk Shrieker","confidence":0.726},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par palette: Pearlescent Froglight","confidence":0.726},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.709},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.709},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.707},{"type":"color_analogous","target":"minecraft:smooth_quartz_slab","label":"Couleurs analogues: Smooth Quartz Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_quartz_stairs","label":"Couleurs analogues: Smooth Quartz Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_stained_glass","label":"Couleurs analogues: Orange Stained Glass","confidence":0.923},{"type":"color_analogous","target":"minecraft:shroomlight","label":"Couleurs analogues: Shroomlight","confidence":0.922},{"type":"color_analogous","target":"minecraft:orange_stained_glass_pane","label":"Couleurs analogues: Orange Stained Glass Pane","confidence":0.919},{"type":"color_analogous","target":"minecraft:brown_mushroom_block","label":"Couleurs analogues: Brown Mushroom Block","confidence":0.902},{"type":"color_analogous","target":"minecraft:glow_item_frame","label":"Couleurs analogues: Glow Item Frame","confidence":0.899},{"type":"color_analogous","target":"minecraft:quartz_block","label":"Couleurs analogues: Quartz Block","confidence":0.897},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.892},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.892},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.892},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.85},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.85},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.82},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.818},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.795},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.96},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.859},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.847},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.902},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.901},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.853},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.853},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.848},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.813},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.807},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.759},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.786},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.756},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.753},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.752},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.743},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.729},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.728}],"category":""},{"id":"minecraft:smooth_quartz_slab","name":"Smooth Quartz Slab","entry_type":"block","description":"A smooth quartz slab is a decorative slab variant of smooth quartz that generates in bastion remnants and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added smooth quartz slabs."}],"colors":{"primary":"#ede6e0","dominant_hex":"#ece4dc","average_hex":"#ede6e0","hue_group":"red","lightness":0.9039,"saturation":0.2653,"palette":["#ece4dc","#ecece4"],"color_groups":[{"hex":"#ece4dc","weight":0.6172,"lightness":0.8941,"saturation":0.2963,"hue_group":"yellow"},{"hex":"#ecece4","weight":0.3828,"lightness":0.9098,"saturation":0.1739,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/quartz_block_bottom.png","family":"smooth_quartz","relations":[{"type":"variants","target":"minecraft:smooth_quartz","label":"Same family: smooth_quartz","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_quartz","label":"Related set: smooth_quartz","confidence":0.8},{"type":"variants","target":"minecraft:smooth_quartz_stairs","label":"Same family: smooth_quartz","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_quartz_stairs","label":"Related set: smooth_quartz","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_pale_oak_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_pale_oak_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:smooth_quartz","label":"Palette proche: Smooth Quartz","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Palette proche: Smooth Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_block","label":"Palette proche: Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_slab","label":"Palette proche: Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_stairs","label":"Palette proche: Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_quartz_block","label":"Palette proche: Chiseled Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_bricks","label":"Palette proche: Quartz Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_pillar","label":"Palette proche: Quartz Pillar","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bone_block","label":"Palette proche: Bone Block","confidence":0.857},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.84},{"type":"color_neighbors","target":"minecraft:mushroom_stem","label":"Palette proche: Mushroom Stem","confidence":0.76},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.723},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.868},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.802},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.772},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.766},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.766},{"type":"color_bridge","target":"minecraft:sculk_shrieker","label":"Pont de nuance par palette: Sculk Shrieker","confidence":0.726},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par palette: Pearlescent Froglight","confidence":0.726},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.709},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.709},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.707},{"type":"color_analogous","target":"minecraft:smooth_quartz","label":"Couleurs analogues: Smooth Quartz","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_quartz_stairs","label":"Couleurs analogues: Smooth Quartz Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_stained_glass","label":"Couleurs analogues: Orange Stained Glass","confidence":0.923},{"type":"color_analogous","target":"minecraft:shroomlight","label":"Couleurs analogues: Shroomlight","confidence":0.922},{"type":"color_analogous","target":"minecraft:orange_stained_glass_pane","label":"Couleurs analogues: Orange Stained Glass Pane","confidence":0.919},{"type":"color_analogous","target":"minecraft:brown_mushroom_block","label":"Couleurs analogues: Brown Mushroom Block","confidence":0.902},{"type":"color_analogous","target":"minecraft:glow_item_frame","label":"Couleurs analogues: Glow Item Frame","confidence":0.899},{"type":"color_analogous","target":"minecraft:quartz_block","label":"Couleurs analogues: Quartz Block","confidence":0.897},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.892},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.892},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.892},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.85},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.85},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.82},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.818},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.795},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.96},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.859},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.847},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.902},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.901},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.853},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.853},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.848},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.813},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.807},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.759},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.786},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.756},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.753},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.752},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.743},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.729},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.728}],"category":"building"},{"id":"minecraft:smooth_quartz_stairs","name":"Smooth Quartz Stairs","entry_type":"block","description":"Smooth quartz stairs are a decorative stairs variant of smooth quartz that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added smooth quartz stairs."}],"colors":{"primary":"#ede6e0","dominant_hex":"#ece4dc","average_hex":"#ede6e0","hue_group":"red","lightness":0.9039,"saturation":0.2653,"palette":["#ece4dc","#ecece4"],"color_groups":[{"hex":"#ece4dc","weight":0.6172,"lightness":0.8941,"saturation":0.2963,"hue_group":"yellow"},{"hex":"#ecece4","weight":0.3828,"lightness":0.9098,"saturation":0.1739,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/quartz_block_bottom.png","family":"smooth_quartz","relations":[{"type":"variants","target":"minecraft:smooth_quartz","label":"Same family: smooth_quartz","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_quartz","label":"Related set: smooth_quartz","confidence":0.8},{"type":"variants","target":"minecraft:smooth_quartz_slab","label":"Same family: smooth_quartz","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_quartz_slab","label":"Related set: smooth_quartz","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_pale_oak_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_pale_oak_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:smooth_quartz","label":"Palette proche: Smooth Quartz","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_quartz_slab","label":"Palette proche: Smooth Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_block","label":"Palette proche: Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_slab","label":"Palette proche: Quartz Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_stairs","label":"Palette proche: Quartz Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_quartz_block","label":"Palette proche: Chiseled Quartz Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_bricks","label":"Palette proche: Quartz Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:quartz_pillar","label":"Palette proche: Quartz Pillar","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bone_block","label":"Palette proche: Bone Block","confidence":0.857},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.84},{"type":"color_neighbors","target":"minecraft:mushroom_stem","label":"Palette proche: Mushroom Stem","confidence":0.76},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.723},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.868},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.802},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.772},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.766},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.766},{"type":"color_bridge","target":"minecraft:sculk_shrieker","label":"Pont de nuance par palette: Sculk Shrieker","confidence":0.726},{"type":"color_bridge","target":"minecraft:pearlescent_froglight","label":"Pont de nuance par palette: Pearlescent Froglight","confidence":0.726},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.709},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.709},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.707},{"type":"color_analogous","target":"minecraft:smooth_quartz","label":"Couleurs analogues: Smooth Quartz","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_quartz_slab","label":"Couleurs analogues: Smooth Quartz Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:orange_stained_glass","label":"Couleurs analogues: Orange Stained Glass","confidence":0.923},{"type":"color_analogous","target":"minecraft:shroomlight","label":"Couleurs analogues: Shroomlight","confidence":0.922},{"type":"color_analogous","target":"minecraft:orange_stained_glass_pane","label":"Couleurs analogues: Orange Stained Glass Pane","confidence":0.919},{"type":"color_analogous","target":"minecraft:brown_mushroom_block","label":"Couleurs analogues: Brown Mushroom Block","confidence":0.902},{"type":"color_analogous","target":"minecraft:glow_item_frame","label":"Couleurs analogues: Glow Item Frame","confidence":0.899},{"type":"color_analogous","target":"minecraft:quartz_block","label":"Couleurs analogues: Quartz Block","confidence":0.897},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.892},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.892},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.892},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.85},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.85},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.82},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.818},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.795},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.96},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.859},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.847},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.902},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.901},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.853},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.853},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.848},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.813},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.807},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.759},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.786},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.756},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.753},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.752},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.743},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.729},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.728}],"category":"building"},{"id":"minecraft:smooth_red_sandstone","name":"Smooth Red Sandstone","entry_type":"block","description":"Smooth red sandstone is a variant of red sandstone, obtained by smelting.","history":[{"version":"1.8 14w32a","status":"added","notes":"Added smooth red sandstone."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb smooth red sandstone, providing the football/regular effect to the mob."}],"colors":{"primary":"#b5621f","dominant_hex":"#bc6424","average_hex":"#b5621f","hue_group":"red","lightness":0.4157,"saturation":0.7075,"palette":["#bc6424","#b4641c","#ac5c1c","#a45414","#cc6c24"],"color_groups":[{"hex":"#bc6424","weight":0.4375,"lightness":0.4392,"saturation":0.6786,"hue_group":"red"},{"hex":"#b4641c","weight":0.3281,"lightness":0.4078,"saturation":0.7308,"hue_group":"red"},{"hex":"#ac5c1c","weight":0.1602,"lightness":0.3922,"saturation":0.72,"hue_group":"red"},{"hex":"#a45414","weight":0.0391,"lightness":0.3608,"saturation":0.7826,"hue_group":"red"},{"hex":"#cc6c24","weight":0.0352,"lightness":0.4706,"saturation":0.7,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_sandstone_top.png","family":"smooth_red_sandstone","relations":[{"type":"variants","target":"minecraft:smooth_red_sandstone_slab","label":"Same family: smooth_red_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_red_sandstone_slab","label":"Related set: smooth_red_sandstone","confidence":0.8},{"type":"variants","target":"minecraft:smooth_red_sandstone_stairs","label":"Same family: smooth_red_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_red_sandstone_stairs","label":"Related set: smooth_red_sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Palette proche: Smooth Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sand","label":"Palette proche: Red Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_terracotta","label":"Palette proche: Orange Terracotta","confidence":0.899},{"type":"color_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Palette proche: Orange Stained Glass Pane","confidence":0.878},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.688},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.651},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.645},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.644},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.644},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.644},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.643},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.643},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_slab","label":"Couleurs analogues: Smooth Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_stairs","label":"Couleurs analogues: Smooth Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_red_sandstone","label":"Couleurs analogues: Chiseled Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone","label":"Couleurs analogues: Cut Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone","label":"Couleurs analogues: Red Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.943},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.943},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.943},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.866},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.863},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.842},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.842},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.834},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.959},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.943},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.94},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.929},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.914},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.914},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.868},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.935},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.846},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.843},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.831},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.83},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.811},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.776},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:smooth_red_sandstone_slab","name":"Smooth Red Sandstone Slab","entry_type":"block","description":"A smooth red sandstone slab is a decorative slab variant of smooth red sandstone that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added smooth red sandstone slabs."}],"colors":{"primary":"#b5621f","dominant_hex":"#bc6424","average_hex":"#b5621f","hue_group":"red","lightness":0.4157,"saturation":0.7075,"palette":["#bc6424","#b4641c","#ac5c1c","#a45414","#cc6c24"],"color_groups":[{"hex":"#bc6424","weight":0.4375,"lightness":0.4392,"saturation":0.6786,"hue_group":"red"},{"hex":"#b4641c","weight":0.3281,"lightness":0.4078,"saturation":0.7308,"hue_group":"red"},{"hex":"#ac5c1c","weight":0.1602,"lightness":0.3922,"saturation":0.72,"hue_group":"red"},{"hex":"#a45414","weight":0.0391,"lightness":0.3608,"saturation":0.7826,"hue_group":"red"},{"hex":"#cc6c24","weight":0.0352,"lightness":0.4706,"saturation":0.7,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_sandstone_top.png","family":"smooth_red_sandstone","relations":[{"type":"variants","target":"minecraft:smooth_red_sandstone","label":"Same family: smooth_red_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_red_sandstone","label":"Related set: smooth_red_sandstone","confidence":0.8},{"type":"variants","target":"minecraft:smooth_red_sandstone_stairs","label":"Same family: smooth_red_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_red_sandstone_stairs","label":"Related set: smooth_red_sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Palette proche: Smooth Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sand","label":"Palette proche: Red Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_terracotta","label":"Palette proche: Orange Terracotta","confidence":0.899},{"type":"color_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Palette proche: Orange Stained Glass Pane","confidence":0.878},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.688},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.651},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.645},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.644},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.644},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.644},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.643},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.643},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone","label":"Couleurs analogues: Smooth Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_stairs","label":"Couleurs analogues: Smooth Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_red_sandstone","label":"Couleurs analogues: Chiseled Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone","label":"Couleurs analogues: Cut Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone","label":"Couleurs analogues: Red Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.943},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.943},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.943},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.866},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.863},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.842},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.842},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.834},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.959},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.943},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.94},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.929},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.914},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.914},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.868},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.935},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.846},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.843},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.831},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.83},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.811},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.776},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:smooth_red_sandstone_stairs","name":"Smooth Red Sandstone Stairs","entry_type":"block","description":"Smooth red sandstone stairs are a decorative stairs variant of smooth red sandstone that does not generate naturally and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added smooth red sandstone stairs."}],"colors":{"primary":"#b5621f","dominant_hex":"#bc6424","average_hex":"#b5621f","hue_group":"red","lightness":0.4157,"saturation":0.7075,"palette":["#bc6424","#b4641c","#ac5c1c","#a45414","#cc6c24"],"color_groups":[{"hex":"#bc6424","weight":0.4375,"lightness":0.4392,"saturation":0.6786,"hue_group":"red"},{"hex":"#b4641c","weight":0.3281,"lightness":0.4078,"saturation":0.7308,"hue_group":"red"},{"hex":"#ac5c1c","weight":0.1602,"lightness":0.3922,"saturation":0.72,"hue_group":"red"},{"hex":"#a45414","weight":0.0391,"lightness":0.3608,"saturation":0.7826,"hue_group":"red"},{"hex":"#cc6c24","weight":0.0352,"lightness":0.4706,"saturation":0.7,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/red_sandstone_top.png","family":"smooth_red_sandstone","relations":[{"type":"variants","target":"minecraft:smooth_red_sandstone","label":"Same family: smooth_red_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_red_sandstone","label":"Related set: smooth_red_sandstone","confidence":0.8},{"type":"variants","target":"minecraft:smooth_red_sandstone_slab","label":"Same family: smooth_red_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_red_sandstone_slab","label":"Related set: smooth_red_sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_sandstone_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_coral","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sand","label":"Palette proche: Red Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_terracotta","label":"Palette proche: Orange Terracotta","confidence":0.899},{"type":"color_neighbors","target":"minecraft:orange_stained_glass_pane","label":"Palette proche: Orange Stained Glass Pane","confidence":0.878},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.688},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.651},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.651},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.645},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.644},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.644},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.644},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.643},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.643},{"type":"color_analogous","target":"minecraft:cut_red_sandstone_slab","label":"Couleurs analogues: Cut Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_slab","label":"Couleurs analogues: Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone_stairs","label":"Couleurs analogues: Red Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone","label":"Couleurs analogues: Smooth Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_red_sandstone_slab","label":"Couleurs analogues: Smooth Red Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_red_sandstone","label":"Couleurs analogues: Chiseled Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_red_sandstone","label":"Couleurs analogues: Cut Red Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_sandstone","label":"Couleurs analogues: Red Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.943},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.943},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.943},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.866},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.863},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.842},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.842},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.834},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.959},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.943},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.94},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.929},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.914},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.914},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.868},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.935},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.846},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.843},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.831},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.83},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.811},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.776},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:smooth_sandstone","name":"Smooth Sandstone","entry_type":"block","description":"Smooth sandstone is a variant of sandstone, obtained by smelting sandstone.","history":[{"version":"1.5 13w04a","status":"added","notes":"Added smooth sandstone."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb smooth sandstone, providing the football/regular effect to the mob."}],"colors":{"primary":"#e0d6aa","dominant_hex":"#e4dcb4","average_hex":"#e0d6aa","hue_group":"yellow","lightness":0.7725,"saturation":0.4655,"palette":["#e4dcb4","#dcd4a4","#dccca4","#d4c494","#e4e4bc"],"color_groups":[{"hex":"#e4dcb4","weight":0.4375,"lightness":0.8,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#dcd4a4","weight":0.3281,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#dccca4","weight":0.1602,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#d4c494","weight":0.0391,"lightness":0.7059,"saturation":0.4267,"hue_group":"yellow"},{"hex":"#e4e4bc","weight":0.0352,"lightness":0.8157,"saturation":0.4255,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sandstone_top.png","family":"smooth_sandstone","relations":[{"type":"variants","target":"minecraft:smooth_sandstone_slab","label":"Same family: smooth_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_sandstone_slab","label":"Related set: smooth_sandstone","confidence":0.8},{"type":"variants","target":"minecraft:smooth_sandstone_stairs","label":"Same family: smooth_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_sandstone_stairs","label":"Related set: smooth_sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Palette proche: Smooth Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Palette proche: Smooth Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_door","label":"Palette proche: Birch Door","confidence":0.867},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.772},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.704},{"type":"color_bridge","target":"minecraft:target","label":"Pont de nuance par palette: Target","confidence":0.691},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.682},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.675},{"type":"color_bridge","target":"minecraft:cherry_trapdoor","label":"Pont de nuance par palette: Cherry Trapdoor","confidence":0.673},{"type":"color_bridge","target":"minecraft:cherry_door","label":"Pont de nuance par palette: Cherry Door","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_button","label":"Pont de nuance par palette: Cherry Button","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_fence","label":"Pont de nuance par palette: Cherry Fence","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_fence_gate","label":"Pont de nuance par palette: Cherry Fence Gate","confidence":0.672},{"type":"color_analogous","target":"minecraft:cut_sandstone_slab","label":"Couleurs analogues: Cut Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_slab","label":"Couleurs analogues: Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_stairs","label":"Couleurs analogues: Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone_slab","label":"Couleurs analogues: Smooth Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone_stairs","label":"Couleurs analogues: Smooth Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:ochre_froglight","label":"Couleurs analogues: Ochre Froglight","confidence":0.96},{"type":"color_analogous","target":"minecraft:wildflowers","label":"Couleurs analogues: Wildflowers","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.952},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.886},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.874},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.835},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.835},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.906},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.866},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.83},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.829},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.912},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.895},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.767},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.752},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.752},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.746},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.699},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.691},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.652},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.623},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.619},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.609},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.609},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.594},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.594}],"category":""},{"id":"minecraft:smooth_sandstone_slab","name":"Smooth Sandstone Slab","entry_type":"block","description":"A smooth sandstone slab is a decorative slab variant of smooth sandstone that generates in desert villages and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added smooth sandstone slabs."}],"colors":{"primary":"#e0d6aa","dominant_hex":"#e4dcb4","average_hex":"#e0d6aa","hue_group":"yellow","lightness":0.7725,"saturation":0.4655,"palette":["#e4dcb4","#dcd4a4","#dccca4","#d4c494","#e4e4bc"],"color_groups":[{"hex":"#e4dcb4","weight":0.4375,"lightness":0.8,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#dcd4a4","weight":0.3281,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#dccca4","weight":0.1602,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#d4c494","weight":0.0391,"lightness":0.7059,"saturation":0.4267,"hue_group":"yellow"},{"hex":"#e4e4bc","weight":0.0352,"lightness":0.8157,"saturation":0.4255,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sandstone_top.png","family":"smooth_sandstone","relations":[{"type":"variants","target":"minecraft:smooth_sandstone","label":"Same family: smooth_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_sandstone","label":"Related set: smooth_sandstone","confidence":0.8},{"type":"variants","target":"minecraft:smooth_sandstone_stairs","label":"Same family: smooth_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_sandstone_stairs","label":"Related set: smooth_sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Palette proche: Smooth Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_door","label":"Palette proche: Birch Door","confidence":0.867},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.772},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.704},{"type":"color_bridge","target":"minecraft:target","label":"Pont de nuance par palette: Target","confidence":0.691},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.682},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.675},{"type":"color_bridge","target":"minecraft:cherry_trapdoor","label":"Pont de nuance par palette: Cherry Trapdoor","confidence":0.673},{"type":"color_bridge","target":"minecraft:cherry_door","label":"Pont de nuance par palette: Cherry Door","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_button","label":"Pont de nuance par palette: Cherry Button","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_fence","label":"Pont de nuance par palette: Cherry Fence","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_fence_gate","label":"Pont de nuance par palette: Cherry Fence Gate","confidence":0.672},{"type":"color_analogous","target":"minecraft:cut_sandstone_slab","label":"Couleurs analogues: Cut Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_slab","label":"Couleurs analogues: Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_stairs","label":"Couleurs analogues: Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone","label":"Couleurs analogues: Smooth Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone_stairs","label":"Couleurs analogues: Smooth Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:ochre_froglight","label":"Couleurs analogues: Ochre Froglight","confidence":0.96},{"type":"color_analogous","target":"minecraft:wildflowers","label":"Couleurs analogues: Wildflowers","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.952},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.886},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.874},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.835},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.835},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.906},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.866},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.83},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.829},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.912},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.895},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.767},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.752},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.752},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.746},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.699},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.691},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.652},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.623},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.619},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.609},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.609},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.594},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.594}],"category":"building"},{"id":"minecraft:smooth_sandstone_stairs","name":"Smooth Sandstone Stairs","entry_type":"block","description":"Smooth sandstone stairs are a decorative stairs variant of smooth sandstone that generate in desert villages and are used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added smooth sandstone stairs."}],"colors":{"primary":"#e0d6aa","dominant_hex":"#e4dcb4","average_hex":"#e0d6aa","hue_group":"yellow","lightness":0.7725,"saturation":0.4655,"palette":["#e4dcb4","#dcd4a4","#dccca4","#d4c494","#e4e4bc"],"color_groups":[{"hex":"#e4dcb4","weight":0.4375,"lightness":0.8,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#dcd4a4","weight":0.3281,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#dccca4","weight":0.1602,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#d4c494","weight":0.0391,"lightness":0.7059,"saturation":0.4267,"hue_group":"yellow"},{"hex":"#e4e4bc","weight":0.0352,"lightness":0.8157,"saturation":0.4255,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sandstone_top.png","family":"smooth_sandstone","relations":[{"type":"variants","target":"minecraft:smooth_sandstone","label":"Same family: smooth_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_sandstone","label":"Related set: smooth_sandstone","confidence":0.8},{"type":"variants","target":"minecraft:smooth_sandstone_slab","label":"Same family: smooth_sandstone","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_sandstone_slab","label":"Related set: smooth_sandstone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_brick_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone_bricks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Palette proche: Smooth Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_door","label":"Palette proche: Birch Door","confidence":0.867},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.772},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.704},{"type":"color_bridge","target":"minecraft:target","label":"Pont de nuance par palette: Target","confidence":0.691},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.682},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.675},{"type":"color_bridge","target":"minecraft:cherry_trapdoor","label":"Pont de nuance par palette: Cherry Trapdoor","confidence":0.673},{"type":"color_bridge","target":"minecraft:cherry_door","label":"Pont de nuance par palette: Cherry Door","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_button","label":"Pont de nuance par palette: Cherry Button","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_fence","label":"Pont de nuance par palette: Cherry Fence","confidence":0.672},{"type":"color_bridge","target":"minecraft:cherry_fence_gate","label":"Pont de nuance par palette: Cherry Fence Gate","confidence":0.672},{"type":"color_analogous","target":"minecraft:cut_sandstone_slab","label":"Couleurs analogues: Cut Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_slab","label":"Couleurs analogues: Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_stairs","label":"Couleurs analogues: Sandstone Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone","label":"Couleurs analogues: Smooth Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:smooth_sandstone_slab","label":"Couleurs analogues: Smooth Sandstone Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:ochre_froglight","label":"Couleurs analogues: Ochre Froglight","confidence":0.96},{"type":"color_analogous","target":"minecraft:wildflowers","label":"Couleurs analogues: Wildflowers","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.952},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.886},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.874},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.835},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.835},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.906},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.866},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.83},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.829},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.912},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.895},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.767},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.752},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.752},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.746},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.699},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.691},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.652},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.623},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.621},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.619},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.609},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.609},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.594},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.594}],"category":"building"},{"id":"minecraft:smooth_stone","name":"Smooth Stone","entry_type":"block","description":"Smooth stone is a variant of stone made by smelting regular stone.","history":[{"version":"wiki-history","status":"added","notes":"added to the Creative inventory ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb smooth stone, providing the football/regular effect to the mob."}],"colors":{"primary":"#9f9f9f","dominant_hex":"#acacac","average_hex":"#9f9f9f","hue_group":"neutral","lightness":0.6235,"saturation":0.0,"palette":["#acacac","#a2a2a2","#b4b4b4","#8c8c8c","#747474","#7c7c7c"],"color_groups":[{"hex":"#acacac","weight":0.3008,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a2a2a2","weight":0.2734,"lightness":0.6353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.1914,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.082,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.0781,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.0742,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/smooth_stone.png","family":"smooth_stone","relations":[{"type":"variants","target":"minecraft:smooth_stone_slab","label":"Same family: smooth_stone","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_stone_slab","label":"Related set: smooth_stone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:smooth_stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeater","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leaf_litter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:comparator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:cracked_deepslate_bricks","label":"Contraste clair sombre: Cracked Deepslate Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_slab","label":"Contraste clair sombre: Deepslate Tile Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_stairs","label":"Contraste clair sombre: Deepslate Tile Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_wall","label":"Contraste clair sombre: Deepslate Tile Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tiles","label":"Contraste clair sombre: Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_deepslate_tiles","label":"Contraste clair sombre: Cracked Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:netherite_block","label":"Contraste clair sombre: Netherite Block","confidence":0.55}],"category":""},{"id":"minecraft:smooth_stone_slab","name":"Smooth Stone Slab","entry_type":"block","description":"A smooth stone slab is a decorative slab variant of smooth stone that generates in overworld structures and is used for building.","history":[{"version":"0.26","status":"added","notes":"Added stone slabs."},{"version":"wiki-history","status":"added","notes":"added to the game."}],"colors":{"primary":"#9f9f9f","dominant_hex":"#acacac","average_hex":"#9f9f9f","hue_group":"neutral","lightness":0.6235,"saturation":0.0,"palette":["#acacac","#a2a2a2","#b4b4b4","#8c8c8c","#747474","#7c7c7c"],"color_groups":[{"hex":"#acacac","weight":0.3008,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a2a2a2","weight":0.2734,"lightness":0.6353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.1914,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.082,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.0781,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.0742,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/smooth_stone.png","family":"smooth_stone","relations":[{"type":"variants","target":"minecraft:smooth_stone","label":"Same family: smooth_stone","confidence":0.75},{"type":"related_sets","target":"minecraft:smooth_stone","label":"Related set: smooth_stone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin_stem","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:repeater","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:grass_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leaf_litter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:comparator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:cracked_deepslate_bricks","label":"Contraste clair sombre: Cracked Deepslate Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_slab","label":"Contraste clair sombre: Deepslate Tile Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_stairs","label":"Contraste clair sombre: Deepslate Tile Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tile_wall","label":"Contraste clair sombre: Deepslate Tile Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:deepslate_tiles","label":"Contraste clair sombre: Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:cracked_deepslate_tiles","label":"Contraste clair sombre: Cracked Deepslate Tiles","confidence":0.55},{"type":"value_contrast","target":"minecraft:netherite_block","label":"Contraste clair sombre: Netherite Block","confidence":0.55}],"category":"building"},{"id":"minecraft:sniffer","name":"Sniffer","entry_type":"mob","description":"A sniffer is an ancient passive mob that spawns only by hatching from sniffer eggs. It looks for and digs up torchflower and pitcher plant seeds in dirt, grass, and moss blocks.","history":[{"version":"1.19.4","status":"added","notes":"Added sniffers behind the \" Update 1.20 \" experimental data pack ."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent snifflets from growing up."}],"colors":{"primary":"#543222","dominant_hex":"#530c0c","average_hex":"#543222","hue_group":"red","lightness":0.2314,"saturation":0.4237,"palette":["#530c0c","#1f3e36","#6c1010","#2e805b","#8e2e1b","#eaab2b"],"color_groups":[{"hex":"#530c0c","weight":0.302,"lightness":0.1863,"saturation":0.7474,"hue_group":"red"},{"hex":"#1f3e36","weight":0.2156,"lightness":0.1824,"saturation":0.3333,"hue_group":"cyan"},{"hex":"#6c1010","weight":0.1703,"lightness":0.2431,"saturation":0.7419,"hue_group":"red"},{"hex":"#2e805b","weight":0.131,"lightness":0.3412,"saturation":0.4713,"hue_group":"cyan"},{"hex":"#8e2e1b","weight":0.1303,"lightness":0.3314,"saturation":0.6805,"hue_group":"red"},{"hex":"#eaab2b","weight":0.0507,"lightness":0.5431,"saturation":0.8197,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/sniffer/sniffer.png","family":"sniffer","relations":[{"type":"visual_neighbors","target":"minecraft:tadpole","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/chestnut","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/darkbrown","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:sniffer_egg","name":"Sniffer Egg","entry_type":"block","description":"A sniffer egg is a block that can be brushed out of suspicious sand in warm ocean ruins, or obtained by breeding two sniffers. It slowly hatches into a snifflet (baby sniffer) when placed.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added sniffer eggs."}],"colors":{"primary":"#876944","dominant_hex":"#b4523e","average_hex":"#876944","hue_group":"yellow","lightness":0.398,"saturation":0.33,"palette":["#b4523e","#ac3c2c","#449c5c","#54ac6c","#9c341c","#3c8c54"],"color_groups":[{"hex":"#b4523e","weight":0.2798,"lightness":0.4745,"saturation":0.4876,"hue_group":"red"},{"hex":"#ac3c2c","weight":0.244,"lightness":0.4235,"saturation":0.5926,"hue_group":"red"},{"hex":"#449c5c","weight":0.1786,"lightness":0.4392,"saturation":0.3929,"hue_group":"green"},{"hex":"#54ac6c","weight":0.1667,"lightness":0.502,"saturation":0.3465,"hue_group":"green"},{"hex":"#9c341c","weight":0.0893,"lightness":0.3608,"saturation":0.6957,"hue_group":"red"},{"hex":"#3c8c54","weight":0.0417,"lightness":0.3922,"saturation":0.4,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sniffer_egg_not_cracked_top.png","family":"sniffer_egg","relations":[{"type":"visual_neighbors","target":"minecraft:torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafting_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powered_rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flowering_azalea","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dirt_path","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_lantern","label":"Palette proche: Copper Lantern","confidence":0.81},{"type":"color_neighbors","target":"minecraft:waxed_copper_lantern","label":"Palette proche: Waxed Copper Lantern","confidence":0.81},{"type":"color_neighbors","target":"minecraft:raw_copper_block","label":"Palette proche: Raw Copper Block","confidence":0.725},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.721},{"type":"color_neighbors","target":"minecraft:brick_slab","label":"Palette proche: Brick Slab","confidence":0.716},{"type":"color_neighbors","target":"minecraft:brick_stairs","label":"Palette proche: Brick Stairs","confidence":0.716},{"type":"color_neighbors","target":"minecraft:brick_wall","label":"Palette proche: Brick Wall","confidence":0.716},{"type":"color_neighbors","target":"minecraft:bricks","label":"Palette proche: Bricks","confidence":0.716},{"type":"color_neighbors","target":"minecraft:poppy","label":"Palette proche: Poppy","confidence":0.681},{"type":"color_neighbors","target":"minecraft:potted_poppy","label":"Palette proche: Potted Poppy","confidence":0.681},{"type":"color_neighbors","target":"minecraft:rose_bush","label":"Palette proche: Rose Bush","confidence":0.681},{"type":"color_neighbors","target":"minecraft:acacia_trapdoor","label":"Palette proche: Acacia Trapdoor","confidence":0.679},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par palette: Waxed Weathered Copper","confidence":0.726},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par palette: Waxed Weathered Copper Chest","confidence":0.726},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par palette: Waxed Weathered Copper Golem Statue","confidence":0.726},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par palette: Weathered Copper","confidence":0.726},{"type":"color_bridge","target":"minecraft:weathered_copper_chest","label":"Pont de nuance par palette: Weathered Copper Chest","confidence":0.726},{"type":"color_bridge","target":"minecraft:weathered_copper_golem_statue","label":"Pont de nuance par palette: Weathered Copper Golem Statue","confidence":0.726},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.722},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.722},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.716},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par palette: Weathered Copper Door","confidence":0.716},{"type":"color_analogous","target":"minecraft:powered_rail","label":"Couleurs analogues: Powered Rail","confidence":0.96},{"type":"color_analogous","target":"minecraft:barrel","label":"Couleurs analogues: Barrel","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_hanging_sign","label":"Couleurs analogues: Jungle Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_wall_hanging_sign","label":"Couleurs analogues: Jungle Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_jungle_log","label":"Couleurs analogues: Stripped Jungle Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_jungle_wood","label":"Couleurs analogues: Stripped Jungle Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_door","label":"Couleurs analogues: Spruce Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_button","label":"Couleurs analogues: Spruce Button","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.839},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.799},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.767},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.75},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.743},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.734},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.952},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.938},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.94},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.939},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.936},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.912},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.912},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.907},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.906},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.892},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.556},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55}],"category":""},{"id":"minecraft:sniffer_spawn_egg","name":"Sniffer Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#574823","dominant_hex":"#3a0404","average_hex":"#574823","hue_group":"yellow","lightness":0.2392,"saturation":0.4262,"palette":["#3a0404","#7f2a0e","#0c3028","#266f4a","#ebad2f","#144434"],"color_groups":[{"hex":"#3a0404","weight":0.2011,"lightness":0.1216,"saturation":0.871,"hue_group":"red"},{"hex":"#7f2a0e","weight":0.2011,"lightness":0.2765,"saturation":0.8014,"hue_group":"red"},{"hex":"#0c3028","weight":0.1782,"lightness":0.1176,"saturation":0.6,"hue_group":"cyan"},{"hex":"#266f4a","weight":0.1724,"lightness":0.2922,"saturation":0.4899,"hue_group":"green"},{"hex":"#ebad2f","weight":0.1724,"lightness":0.5529,"saturation":0.8246,"hue_group":"yellow"},{"hex":"#144434","weight":0.0747,"lightness":0.1725,"saturation":0.5455,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/sniffer_spawn_egg.png","family":"sniffer_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:spruce_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:book","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crossbow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_chest_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:snort_pottery_sherd","name":"Snort Pottery Sherd","entry_type":"item","description":"A snort pottery sherd is a pottery sherd that depicts a sniffer. It can be found in warm ocean ruins.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added snort pottery shards."}],"colors":{"primary":"#683a30","dominant_hex":"#5c342c","average_hex":"#683a30","hue_group":"red","lightness":0.298,"saturation":0.3684,"palette":["#5c342c","#542c24","#44241c","#734334","#844c3c","#995949"],"color_groups":[{"hex":"#5c342c","weight":0.2102,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#542c24","weight":0.1847,"lightness":0.2353,"saturation":0.4,"hue_group":"red"},{"hex":"#44241c","weight":0.172,"lightness":0.1882,"saturation":0.4167,"hue_group":"red"},{"hex":"#734334","weight":0.172,"lightness":0.3275,"saturation":0.3772,"hue_group":"red"},{"hex":"#844c3c","weight":0.1401,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#995949","weight":0.121,"lightness":0.4431,"saturation":0.354,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/snort_pottery_sherd.png","family":"snort_pottery_sherd","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:plenty_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:archer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arms_up_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prize_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shelter_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:snout_armor_trim_smithing_template","name":"Snout Armor Trim Smithing Template","entry_type":"item","description":"Snout armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, blackstone, and diamonds.","history":[{"version":"1.19.4","status":"added","notes":"Added the snout armor trim smithing template behind the \"Update 1.20\" experimental data pack."}],"colors":{"primary":"#383d45","dominant_hex":"#515159","average_hex":"#383d45","hue_group":"neutral","lightness":0.2451,"saturation":0.104,"palette":["#515159","#3c3c44","#342c34","#140c14","#24241c","#33afbd"],"color_groups":[{"hex":"#515159","weight":0.2848,"lightness":0.3333,"saturation":0.0471,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.2424,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#342c34","weight":0.1515,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#140c14","weight":0.1273,"lightness":0.0627,"saturation":0.25,"hue_group":"purple"},{"hex":"#24241c","weight":0.1212,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#33afbd","weight":0.0727,"lightness":0.4706,"saturation":0.575,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/snout_armor_trim_smithing_template.png","family":"snout_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mellohi","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_13","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_blocks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ink_sac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wayfinder_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_dye","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:snow","name":"Snow","entry_type":"block","description":"Snow is a ground cover and gravity-affected\u200c[Bedrock Edition only] block found on the surface in snowy biomes. It can be replenished during snowfall.","history":[{"version":"v1.0.4","status":"added","notes":"added to maps only in winter mode. When creating a new save, a map has a 1/4 chance of having worldwide snowfall. When falling on exposed land, a thin snow layer is created."},{"version":"wiki-history","status":"added","notes":"Added snow golems , which leave a trail of snow behind them, making snow easier to farm."},{"version":"1.19.3 22w44a","status":"added","notes":"Added the game rule snowAccumulationHeight ."}],"colors":{"primary":"#f9fefe","dominant_hex":"#f4fcfc","average_hex":"#f9fefe","hue_group":"cyan","lightness":0.9863,"saturation":0.7143,"palette":["#f4fcfc","#fcfcfc"],"color_groups":[{"hex":"#f4fcfc","weight":0.5391,"lightness":0.9725,"saturation":0.5714,"hue_group":"cyan"},{"hex":"#fcfcfc","weight":0.4609,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/snow.png","family":"snow","relations":[{"type":"visual_neighbors","target":"minecraft:snow_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beacon","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:snow_block","label":"Palette proche: Snow Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow","label":"Palette proche: Powder Snow","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobweb","label":"Palette proche: Cobweb","confidence":0.753},{"type":"color_neighbors","target":"minecraft:white_concrete_powder","label":"Palette proche: White Concrete Powder","confidence":0.73},{"type":"color_neighbors","target":"minecraft:white_carpet","label":"Palette proche: White Carpet","confidence":0.724},{"type":"color_neighbors","target":"minecraft:white_wool","label":"Palette proche: White Wool","confidence":0.724},{"type":"color_neighbors","target":"minecraft:white_candle","label":"Palette proche: White Candle","confidence":0.704},{"type":"color_neighbors","target":"minecraft:white_shulker_box","label":"Palette proche: White Shulker Box","confidence":0.654},{"type":"color_neighbors","target":"minecraft:white_concrete","label":"Palette proche: White Concrete","confidence":0.605},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.604},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.58},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.58},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par sous-ton: Cobweb","confidence":0.796},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par sous-ton: White Concrete Powder","confidence":0.778},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par sous-ton: White Carpet","confidence":0.773},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par sous-ton: White Wool","confidence":0.773},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par sous-ton: White Candle","confidence":0.756},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par sous-ton: White Shulker Box","confidence":0.715},{"type":"color_bridge","target":"minecraft:white_concrete","label":"Pont de nuance par palette: White Concrete","confidence":0.674},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par palette: Calcite","confidence":0.674},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.624},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.624},{"type":"color_analogous","target":"minecraft:snow_block","label":"Couleurs analogues: Snow Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:powder_snow","label":"Couleurs analogues: Powder Snow","confidence":0.96},{"type":"color_analogous","target":"minecraft:soul_fire","label":"Couleurs analogues: Soul Fire","confidence":0.863},{"type":"color_analogous","target":"minecraft:beacon","label":"Couleurs analogues: Beacon","confidence":0.858},{"type":"color_analogous","target":"minecraft:cyan_candle","label":"Couleurs analogues: Cyan Candle","confidence":0.858},{"type":"color_analogous","target":"minecraft:diamond_block","label":"Couleurs analogues: Diamond Block","confidence":0.848},{"type":"color_analogous","target":"minecraft:warped_wart_block","label":"Couleurs analogues: Warped Wart Block","confidence":0.846},{"type":"color_analogous","target":"minecraft:stripped_warped_hyphae","label":"Couleurs analogues: Stripped Warped Hyphae","confidence":0.842},{"type":"color_complement","target":"minecraft:red_mushroom_block","label":"Contraste complementaire: Red Mushroom Block","confidence":0.96},{"type":"color_complement","target":"minecraft:red_shulker_box","label":"Contraste complementaire: Red Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:red_concrete","label":"Contraste complementaire: Red Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:red_stained_glass","label":"Contraste complementaire: Red Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_nylium","label":"Contraste complementaire: Crimson Nylium","confidence":0.96},{"type":"color_complement","target":"minecraft:red_stained_glass_pane","label":"Contraste complementaire: Red Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:barrier","label":"Contraste complementaire: Barrier","confidence":0.96},{"type":"color_complement","target":"minecraft:netherrack","label":"Contraste complementaire: Netherrack","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral","label":"Harmonie triadique: Bubble Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_fan","label":"Harmonie triadique: Bubble Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie triadique: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_acacia_sapling","label":"Harmonie triadique: Potted Acacia Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:chorus_plant","label":"Harmonie triadique: Chorus Plant","confidence":0.96},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.96},{"type":"color_square","target":"minecraft:lime_shulker_box","label":"Harmonie carree: Lime Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.956},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.956},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.954},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.864},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.831},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.828},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.823},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.821},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.821},{"type":"value_contrast","target":"minecraft:sculk_vein","label":"Contraste clair sombre: Sculk Vein","confidence":0.807},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.806}],"category":"natural"},{"id":"minecraft:snow_block","name":"Snow Block","entry_type":"block","description":"A snow block is a full-sized block of snow.","history":[{"version":"v1.0.5","status":"added","notes":"Added snow blocks."},{"version":"1.0.0","status":"added","notes":"Added ice plains , making snow obtainable again."},{"version":"1.7.2 13w36a","status":"added","notes":"Added the ice plains spikes biome, which generates snow blocks on the surface."}],"colors":{"primary":"#f9fefe","dominant_hex":"#f4fcfc","average_hex":"#f9fefe","hue_group":"cyan","lightness":0.9863,"saturation":0.7143,"palette":["#f4fcfc","#fcfcfc"],"color_groups":[{"hex":"#f4fcfc","weight":0.5391,"lightness":0.9725,"saturation":0.5714,"hue_group":"cyan"},{"hex":"#fcfcfc","weight":0.4609,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/snow.png","family":"snow_block","relations":[{"type":"visual_neighbors","target":"minecraft:snow","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beacon","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:snow","label":"Palette proche: Snow","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow","label":"Palette proche: Powder Snow","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobweb","label":"Palette proche: Cobweb","confidence":0.753},{"type":"color_neighbors","target":"minecraft:white_concrete_powder","label":"Palette proche: White Concrete Powder","confidence":0.73},{"type":"color_neighbors","target":"minecraft:white_carpet","label":"Palette proche: White Carpet","confidence":0.724},{"type":"color_neighbors","target":"minecraft:white_wool","label":"Palette proche: White Wool","confidence":0.724},{"type":"color_neighbors","target":"minecraft:white_candle","label":"Palette proche: White Candle","confidence":0.704},{"type":"color_neighbors","target":"minecraft:white_shulker_box","label":"Palette proche: White Shulker Box","confidence":0.654},{"type":"color_neighbors","target":"minecraft:white_concrete","label":"Palette proche: White Concrete","confidence":0.605},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.604},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.58},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.58},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par sous-ton: Cobweb","confidence":0.796},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par sous-ton: White Concrete Powder","confidence":0.778},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par sous-ton: White Carpet","confidence":0.773},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par sous-ton: White Wool","confidence":0.773},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par sous-ton: White Candle","confidence":0.756},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par sous-ton: White Shulker Box","confidence":0.715},{"type":"color_bridge","target":"minecraft:white_concrete","label":"Pont de nuance par palette: White Concrete","confidence":0.674},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par palette: Calcite","confidence":0.674},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.624},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.624},{"type":"color_analogous","target":"minecraft:snow","label":"Couleurs analogues: Snow","confidence":0.96},{"type":"color_analogous","target":"minecraft:powder_snow","label":"Couleurs analogues: Powder Snow","confidence":0.96},{"type":"color_analogous","target":"minecraft:soul_fire","label":"Couleurs analogues: Soul Fire","confidence":0.863},{"type":"color_analogous","target":"minecraft:beacon","label":"Couleurs analogues: Beacon","confidence":0.858},{"type":"color_analogous","target":"minecraft:cyan_candle","label":"Couleurs analogues: Cyan Candle","confidence":0.858},{"type":"color_analogous","target":"minecraft:diamond_block","label":"Couleurs analogues: Diamond Block","confidence":0.848},{"type":"color_analogous","target":"minecraft:warped_wart_block","label":"Couleurs analogues: Warped Wart Block","confidence":0.846},{"type":"color_analogous","target":"minecraft:stripped_warped_hyphae","label":"Couleurs analogues: Stripped Warped Hyphae","confidence":0.842},{"type":"color_complement","target":"minecraft:red_mushroom_block","label":"Contraste complementaire: Red Mushroom Block","confidence":0.96},{"type":"color_complement","target":"minecraft:red_shulker_box","label":"Contraste complementaire: Red Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:red_concrete","label":"Contraste complementaire: Red Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:red_stained_glass","label":"Contraste complementaire: Red Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_nylium","label":"Contraste complementaire: Crimson Nylium","confidence":0.96},{"type":"color_complement","target":"minecraft:red_stained_glass_pane","label":"Contraste complementaire: Red Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:barrier","label":"Contraste complementaire: Barrier","confidence":0.96},{"type":"color_complement","target":"minecraft:netherrack","label":"Contraste complementaire: Netherrack","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral","label":"Harmonie triadique: Bubble Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_fan","label":"Harmonie triadique: Bubble Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie triadique: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_acacia_sapling","label":"Harmonie triadique: Potted Acacia Sapling","confidence":0.96},{"type":"color_triad","target":"minecraft:chorus_plant","label":"Harmonie triadique: Chorus Plant","confidence":0.96},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.96},{"type":"color_square","target":"minecraft:lime_shulker_box","label":"Harmonie carree: Lime Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.96},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.956},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.956},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.954},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.864},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.831},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.828},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.823},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.821},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.821},{"type":"value_contrast","target":"minecraft:sculk_vein","label":"Contraste clair sombre: Sculk Vein","confidence":0.807},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.806}],"category":""},{"id":"minecraft:snow_fox","name":"Snow Fox","entry_type":"mob","description":"A fox is a neutral mob found in taigas and similar biomes. It hunts small animals, can carry items in its mouth and will eat anything that is edible. A fox will trust and defend a player that spawned it through breeding, but will run away from non-sneaking players in any other circumstance.","history":[{"version":"1.14 19w07a","status":"added","notes":"Added foxes, baby foxes, snow foxes, and baby snow foxes."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby foxes from growing up."}],"colors":{"primary":"#dae4d9","dominant_hex":"#acc6b9","average_hex":"#dae4d9","hue_group":"green","lightness":0.8725,"saturation":0.1692,"palette":["#acc6b9","#ecf4ec","#fcfcec","#fcfcfc","#dce4dc","#345753"],"color_groups":[{"hex":"#acc6b9","weight":0.2766,"lightness":0.7255,"saturation":0.1857,"hue_group":"green"},{"hex":"#ecf4ec","weight":0.2695,"lightness":0.9412,"saturation":0.2667,"hue_group":"green"},{"hex":"#fcfcec","weight":0.2204,"lightness":0.9569,"saturation":0.7273,"hue_group":"yellow"},{"hex":"#fcfcfc","weight":0.1283,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dce4dc","weight":0.0812,"lightness":0.8784,"saturation":0.129,"hue_group":"green"},{"hex":"#345753","weight":0.024,"lightness":0.2725,"saturation":0.2518,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fox/snow_fox.png","family":"snow_fox","relations":[{"type":"visual_neighbors","target":"minecraft:snow_fox_sleep","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_sea_turtle","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime","label":"Shared hue group: green","confidence":0.55}],"category":"mob"},{"id":"minecraft:snow_fox_sleep","name":"Snow Fox Sleep","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#d9e3d9","dominant_hex":"#acc6b9","average_hex":"#d9e3d9","hue_group":"green","lightness":0.8706,"saturation":0.1515,"palette":["#acc6b9","#ecf4ec","#fcfcec","#fcfcfc","#dce4dc","#345a58"],"color_groups":[{"hex":"#acc6b9","weight":0.2725,"lightness":0.7255,"saturation":0.1857,"hue_group":"green"},{"hex":"#ecf4ec","weight":0.2675,"lightness":0.9412,"saturation":0.2667,"hue_group":"green"},{"hex":"#fcfcec","weight":0.2224,"lightness":0.9569,"saturation":0.7273,"hue_group":"yellow"},{"hex":"#fcfcfc","weight":0.1283,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dce4dc","weight":0.0812,"lightness":0.8784,"saturation":0.129,"hue_group":"green"},{"hex":"#345a58","weight":0.0281,"lightness":0.2784,"saturation":0.2676,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fox/snow_fox_sleep.png","family":"snow_fox_sleep","relations":[{"type":"visual_neighbors","target":"minecraft:snow_fox","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:big_sea_turtle","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime","label":"Shared hue group: green","confidence":0.55}],"category":"mob"},{"id":"minecraft:snow_golem","name":"Snow Golem","entry_type":"mob","description":"A snow golem is a buildable passive mob that throws snowballs at monsters, which provokes them into attacking it. Depending on the biome temperature, it also either produces a trail of snow or takes heat damage and dies.","history":[{"version":"1.0.0","status":"added","notes":"Added snow golems."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash snow golems."},{"version":"15w50a","status":"added","notes":"Added sounds entity.snowman.ambient , entity.snowman.hurt , and entity.snowman.death ."}],"colors":{"primary":"#eaf1ee","dominant_hex":"#fcfcfc","average_hex":"#eaf1ee","hue_group":"cyan","lightness":0.9314,"saturation":0.2,"palette":["#fcfcfc","#ecfcfc","#e4f4f4","#8d682e","#6c4c1c","#292929"],"color_groups":[{"hex":"#fcfcfc","weight":0.4298,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ecfcfc","weight":0.3397,"lightness":0.9569,"saturation":0.7273,"hue_group":"cyan"},{"hex":"#e4f4f4","weight":0.1609,"lightness":0.9255,"saturation":0.4211,"hue_group":"cyan"},{"hex":"#8d682e","weight":0.0328,"lightness":0.3667,"saturation":0.508,"hue_group":"yellow"},{"hex":"#6c4c1c","weight":0.0236,"lightness":0.2667,"saturation":0.5882,"hue_group":"yellow"},{"hex":"#292929","weight":0.0133,"lightness":0.1608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/snow_golem.png","family":"snow_golem","relations":[{"type":"visual_neighbors","target":"minecraft:parrot/yellow_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allay","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:snow_golem_spawn_egg","name":"Snow Golem Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#a08056","dominant_hex":"#a95e0f","average_hex":"#a08056","hue_group":"yellow","lightness":0.4824,"saturation":0.3008,"palette":["#a95e0f","#979f9f","#d5dddd","#e08e23","#44371c","#763c0e"],"color_groups":[{"hex":"#a95e0f","weight":0.226,"lightness":0.3608,"saturation":0.837,"hue_group":"yellow"},{"hex":"#979f9f","weight":0.1986,"lightness":0.6078,"saturation":0.04,"hue_group":"neutral"},{"hex":"#d5dddd","weight":0.1849,"lightness":0.851,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#e08e23","weight":0.1438,"lightness":0.5078,"saturation":0.753,"hue_group":"yellow"},{"hex":"#44371c","weight":0.1301,"lightness":0.1882,"saturation":0.4167,"hue_group":"yellow"},{"hex":"#763c0e","weight":0.1164,"lightness":0.2588,"saturation":0.7879,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/snow_golem_spawn_egg.png","family":"snow_golem_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:rabbit_foot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_porkchop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_hide","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trader_llama_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:totem_of_undying","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:snowball","name":"Snowball","entry_type":"item","description":"A snowball is an item obtained by breaking snow blocks or snow layers using a shovel. It can be crafted into snow blocks, thrown to knock mobs back, fed to ghastlings and used to attract happy ghasts.","history":[{"version":"v1.0.5","status":"added","notes":"Added snowballs."},{"version":"wiki-history","status":"added","notes":"Added a new snowball sound effect."}],"colors":{"primary":"#c7dede","dominant_hex":"#accccc","average_hex":"#c7dede","hue_group":"cyan","lightness":0.8255,"saturation":0.2584,"palette":["#accccc","#fcfcfc","#ecfcfc","#7ca4a4","#d4f4f4","#c4dcdc"],"color_groups":[{"hex":"#accccc","weight":0.1875,"lightness":0.7373,"saturation":0.2388,"hue_group":"cyan"},{"hex":"#fcfcfc","weight":0.1786,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ecfcfc","weight":0.1696,"lightness":0.9569,"saturation":0.7273,"hue_group":"cyan"},{"hex":"#7ca4a4","weight":0.1607,"lightness":0.5647,"saturation":0.1802,"hue_group":"cyan"},{"hex":"#d4f4f4","weight":0.1607,"lightness":0.8941,"saturation":0.5926,"hue_group":"cyan"},{"hex":"#c4dcdc","weight":0.1429,"lightness":0.8157,"saturation":0.2553,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/snowball.png","family":"snowball","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:prismarine_crystals","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_shard","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tide_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_tear","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_horse_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_nautilus_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ward_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_bundle","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:soul_campfire","name":"Soul Campfire","entry_type":"block","description":"Soul campfires are dimmer variants of campfires. Soul campfires deal more damage than normal campfires and have turquoise flames. Just like normal campfires, they can be used to cook food, pacify bees, or act as a spread-proof light source, smoke signal, or damaging trap block.","history":[{"version":"1.16 20w15a","status":"added","notes":"Added soul campfires."}],"colors":{"primary":"#4f4b44","dominant_hex":"#405062","average_hex":"#4f4b44","hue_group":"neutral","lightness":0.2882,"saturation":0.0748,"palette":["#405062","#2c3444","#9f7f4c","#1c2229","#745c34","#534327"],"color_groups":[{"hex":"#405062","weight":0.2308,"lightness":0.3176,"saturation":0.2099,"hue_group":"blue"},{"hex":"#2c3444","weight":0.2067,"lightness":0.2196,"saturation":0.2143,"hue_group":"blue"},{"hex":"#9f7f4c","weight":0.2067,"lightness":0.4608,"saturation":0.3532,"hue_group":"yellow"},{"hex":"#1c2229","weight":0.1779,"lightness":0.1353,"saturation":0.1884,"hue_group":"blue"},{"hex":"#745c34","weight":0.0962,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#534327","weight":0.0817,"lightness":0.2392,"saturation":0.3607,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/campfire_log.png","family":"soul_campfire","relations":[{"type":"visual_neighbors","target":"minecraft:campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jigsaw","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:basalt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:structure_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_core","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:campfire","label":"Palette proche: Campfire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lantern","label":"Palette proche: Lantern","confidence":0.789},{"type":"color_neighbors","target":"minecraft:brown_candle","label":"Palette proche: Brown Candle","confidence":0.778},{"type":"color_neighbors","target":"minecraft:muddy_mangrove_roots","label":"Palette proche: Muddy Mangrove Roots","confidence":0.777},{"type":"color_neighbors","target":"minecraft:iron_chain","label":"Palette proche: Iron Chain","confidence":0.757},{"type":"color_neighbors","target":"minecraft:vault","label":"Palette proche: Vault","confidence":0.757},{"type":"color_neighbors","target":"minecraft:trial_spawner","label":"Palette proche: Trial Spawner","confidence":0.745},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.742},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.742},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.727},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.724},{"type":"color_neighbors","target":"minecraft:deepslate_iron_ore","label":"Palette proche: Deepslate Iron Ore","confidence":0.721},{"type":"color_bridge","target":"minecraft:campfire","label":"Pont de nuance par palette: Campfire","confidence":0.86},{"type":"color_bridge","target":"minecraft:lantern","label":"Pont de nuance par palette: Lantern","confidence":0.826},{"type":"color_bridge","target":"minecraft:brown_candle","label":"Pont de nuance par sous-ton: Brown Candle","confidence":0.817},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par palette: Muddy Mangrove Roots","confidence":0.816},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par palette: Iron Chain","confidence":0.8},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par palette: Vault","confidence":0.8},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par palette: Trial Spawner","confidence":0.79},{"type":"color_bridge","target":"minecraft:oak_log","label":"Pont de nuance par sous-ton: Oak Log","confidence":0.788},{"type":"color_bridge","target":"minecraft:oak_wood","label":"Pont de nuance par sous-ton: Oak Wood","confidence":0.788},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par sous-ton: Black Candle","confidence":0.775},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.668},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.634},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.623},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.622},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.622},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.613},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.613},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.613}],"category":""},{"id":"minecraft:soul_fire","name":"Soul Fire","entry_type":"block","description":"Soul fire is a dimmer turquoise variation of fire that is created when soul sand or soul soil is ignited. Soul fire deals more damage than normal fire and does not spread.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added soul fire."}],"colors":{"primary":"#33c1c5","dominant_hex":"#0bccd1","average_hex":"#33c1c5","hue_group":"cyan","lightness":0.4863,"saturation":0.5887,"palette":["#0bccd1","#04a8ae","#049195","#edfcfc","#4df0f4","#048489"],"color_groups":[{"hex":"#0bccd1","weight":0.2289,"lightness":0.4314,"saturation":0.9,"hue_group":"cyan"},{"hex":"#04a8ae","weight":0.2147,"lightness":0.349,"saturation":0.9551,"hue_group":"cyan"},{"hex":"#049195","weight":0.1838,"lightness":0.3,"saturation":0.9477,"hue_group":"cyan"},{"hex":"#edfcfc","weight":0.1556,"lightness":0.9588,"saturation":0.7143,"hue_group":"cyan"},{"hex":"#4df0f4","weight":0.1433,"lightness":0.6294,"saturation":0.8836,"hue_group":"cyan"},{"hex":"#048489","weight":0.0737,"lightness":0.2765,"saturation":0.9433,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_fire_0.png","family":"soul_fire","relations":[{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Palette proche: Calibrated Sculk Sensor","confidence":0.838},{"type":"color_neighbors","target":"minecraft:sculk_sensor","label":"Palette proche: Sculk Sensor","confidence":0.838},{"type":"color_neighbors","target":"minecraft:diamond_block","label":"Palette proche: Diamond Block","confidence":0.808},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.753},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.753},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.748},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.71},{"type":"color_neighbors","target":"minecraft:beacon","label":"Palette proche: Beacon","confidence":0.702},{"type":"color_neighbors","target":"minecraft:nether_sprouts","label":"Palette proche: Nether Sprouts","confidence":0.694},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.693},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.688},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.687},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.584},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.58},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.58},{"type":"color_bridge","target":"minecraft:sea_lantern","label":"Pont de nuance par sous-ton: Sea Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.58},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.58},{"type":"color_analogous","target":"minecraft:blue_orchid","label":"Couleurs analogues: Blue Orchid","confidence":0.957},{"type":"color_analogous","target":"minecraft:potted_blue_orchid","label":"Couleurs analogues: Potted Blue Orchid","confidence":0.957},{"type":"color_analogous","target":"minecraft:calibrated_sculk_sensor","label":"Couleurs analogues: Calibrated Sculk Sensor","confidence":0.947},{"type":"color_analogous","target":"minecraft:sculk_sensor","label":"Couleurs analogues: Sculk Sensor","confidence":0.947},{"type":"color_analogous","target":"minecraft:warped_wart_block","label":"Couleurs analogues: Warped Wart Block","confidence":0.936},{"type":"color_analogous","target":"minecraft:cyan_carpet","label":"Couleurs analogues: Cyan Carpet","confidence":0.929},{"type":"color_analogous","target":"minecraft:cyan_wool","label":"Couleurs analogues: Cyan Wool","confidence":0.929},{"type":"color_analogous","target":"minecraft:cyan_candle","label":"Couleurs analogues: Cyan Candle","confidence":0.922},{"type":"color_complement","target":"minecraft:red_mushroom_block","label":"Contraste complementaire: Red Mushroom Block","confidence":0.96},{"type":"color_complement","target":"minecraft:red_concrete_powder","label":"Contraste complementaire: Red Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:red_carpet","label":"Contraste complementaire: Red Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:red_wool","label":"Contraste complementaire: Red Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:red_candle","label":"Contraste complementaire: Red Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_door","label":"Contraste complementaire: Mangrove Door","confidence":0.96},{"type":"color_complement","target":"minecraft:weeping_vines_plant","label":"Contraste complementaire: Weeping Vines Plant","confidence":0.96},{"type":"color_complement","target":"minecraft:red_shulker_box","label":"Contraste complementaire: Red Shulker Box","confidence":0.958},{"type":"color_triad","target":"minecraft:bubble_coral_block","label":"Harmonie triadique: Bubble Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:cocoa","label":"Harmonie triadique: Cocoa","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone","label":"Harmonie triadique: End Stone","confidence":0.95},{"type":"color_triad","target":"minecraft:bubble_coral_fan","label":"Harmonie triadique: Bubble Coral Fan","confidence":0.949},{"type":"color_triad","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie triadique: Bubble Coral Wall Fan","confidence":0.949},{"type":"color_triad","target":"minecraft:bubble_coral","label":"Harmonie triadique: Bubble Coral","confidence":0.941},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.927},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.922},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.942},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.924},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.924},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.918},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.918},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55}],"category":""},{"id":"minecraft:soul_lantern","name":"Soul Lantern","entry_type":"block","description":"The soul lantern is a block that emits light. It is a variant of the lantern crafted from the soul torch.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added soul fire lanterns."}],"colors":{"primary":"#486373","dominant_hex":"#3c4454","average_hex":"#486373","hue_group":"cyan","lightness":0.3667,"saturation":0.2299,"palette":["#3c4454","#4c5464","#444c5c","#9af5f8","#21bdbf","#242c3c"],"color_groups":[{"hex":"#3c4454","weight":0.3208,"lightness":0.2824,"saturation":0.1667,"hue_group":"blue"},{"hex":"#4c5464","weight":0.3019,"lightness":0.3451,"saturation":0.1364,"hue_group":"blue"},{"hex":"#444c5c","weight":0.1132,"lightness":0.3137,"saturation":0.15,"hue_group":"blue"},{"hex":"#9af5f8","weight":0.1132,"lightness":0.7882,"saturation":0.8704,"hue_group":"cyan"},{"hex":"#21bdbf","weight":0.0755,"lightness":0.4392,"saturation":0.7054,"hue_group":"cyan"},{"hex":"#242c3c","weight":0.0755,"lightness":0.1882,"saturation":0.25,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_lantern.png","family":"soul_lantern","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_spawner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_diamond_ore","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:iron_chain","label":"Palette proche: Iron Chain","confidence":0.905},{"type":"color_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Palette proche: Cyan Glazed Terracotta","confidence":0.789},{"type":"color_neighbors","target":"minecraft:vault","label":"Palette proche: Vault","confidence":0.774},{"type":"color_neighbors","target":"minecraft:gray_carpet","label":"Palette proche: Gray Carpet","confidence":0.762},{"type":"color_neighbors","target":"minecraft:gray_wool","label":"Palette proche: Gray Wool","confidence":0.762},{"type":"color_neighbors","target":"minecraft:warped_nylium","label":"Palette proche: Warped Nylium","confidence":0.751},{"type":"color_neighbors","target":"minecraft:gray_concrete_powder","label":"Palette proche: Gray Concrete Powder","confidence":0.743},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.74},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.736},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.735},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.735},{"type":"color_neighbors","target":"minecraft:sculk_catalyst","label":"Palette proche: Sculk Catalyst","confidence":0.735},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.9},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.814},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.804},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.804},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.788},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.786},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par palette: Black Candle","confidence":0.782},{"type":"color_bridge","target":"minecraft:lantern","label":"Pont de nuance par sous-ton: Lantern","confidence":0.767},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par sous-ton: Heavy Core","confidence":0.763},{"type":"color_bridge","target":"minecraft:gray_glazed_terracotta","label":"Pont de nuance par palette: Gray Glazed Terracotta","confidence":0.757},{"type":"color_analogous","target":"minecraft:cornflower","label":"Couleurs analogues: Cornflower","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_cornflower","label":"Couleurs analogues: Potted Cornflower","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_candle","label":"Couleurs analogues: Light Blue Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_blue_concrete","label":"Couleurs analogues: Light Blue Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_stained_glass","label":"Couleurs analogues: Cyan Stained Glass","confidence":0.938},{"type":"color_analogous","target":"minecraft:light_blue_glazed_terracotta","label":"Couleurs analogues: Light Blue Glazed Terracotta","confidence":0.936},{"type":"color_analogous","target":"minecraft:cyan_stained_glass_pane","label":"Couleurs analogues: Cyan Stained Glass Pane","confidence":0.929},{"type":"color_analogous","target":"minecraft:air","label":"Couleurs analogues: Air","confidence":0.919},{"type":"color_complement","target":"minecraft:creeper_head","label":"Contraste complementaire: Creeper Head","confidence":0.96},{"type":"color_complement","target":"minecraft:creeper_wall_head","label":"Contraste complementaire: Creeper Wall Head","confidence":0.96},{"type":"color_complement","target":"minecraft:dragon_head","label":"Contraste complementaire: Dragon Head","confidence":0.96},{"type":"color_complement","target":"minecraft:dragon_wall_head","label":"Contraste complementaire: Dragon Wall Head","confidence":0.96},{"type":"color_complement","target":"minecraft:piglin_head","label":"Contraste complementaire: Piglin Head","confidence":0.96},{"type":"color_complement","target":"minecraft:piglin_wall_head","label":"Contraste complementaire: Piglin Wall Head","confidence":0.96},{"type":"color_complement","target":"minecraft:player_head","label":"Contraste complementaire: Player Head","confidence":0.96},{"type":"color_complement","target":"minecraft:player_wall_head","label":"Contraste complementaire: Player Wall Head","confidence":0.96},{"type":"color_triad","target":"minecraft:oxeye_daisy","label":"Harmonie triadique: Oxeye Daisy","confidence":0.949},{"type":"color_triad","target":"minecraft:potted_oxeye_daisy","label":"Harmonie triadique: Potted Oxeye Daisy","confidence":0.949},{"type":"color_triad","target":"minecraft:azalea_leaves","label":"Harmonie triadique: Azalea Leaves","confidence":0.937},{"type":"color_triad","target":"minecraft:big_dripleaf_stem","label":"Harmonie triadique: Big Dripleaf Stem","confidence":0.928},{"type":"color_triad","target":"minecraft:small_dripleaf","label":"Harmonie triadique: Small Dripleaf","confidence":0.928},{"type":"color_triad","target":"minecraft:birch_sapling","label":"Harmonie triadique: Birch Sapling","confidence":0.91},{"type":"color_triad","target":"minecraft:potted_birch_sapling","label":"Harmonie triadique: Potted Birch Sapling","confidence":0.91},{"type":"color_triad","target":"minecraft:green_stained_glass_pane","label":"Harmonie triadique: Green Stained Glass Pane","confidence":0.905},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.944},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.84},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.803},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.802},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.791},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.695},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.695},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.57},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.566},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.565},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.565},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55}],"category":""},{"id":"minecraft:soul_sand","name":"Soul Sand","entry_type":"block","description":"Soul sand is a block found primarily in the Nether that slows down entities walking on it unless they are wearing Soul Speed boots. It can also be used to grow Nether wart, create soul fire, and make upward bubble columns.","history":[{"version":"v1.2.0 preview","status":"added","notes":"Added soul sand."},{"version":"wiki-history","status":"added","notes":"added Nether dimension."},{"version":"1.0.0","status":"added","notes":"Added Nether warts , which can be grown on soul sand."}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"soul_sand","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Palette proche: Wither Skeleton Wall Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":""},{"id":"minecraft:soul_soil","name":"Soul Soil","entry_type":"block","description":"Soul soil is a block found abundantly in soul sand valleys. It does not slow down entities, but still activates Soul Speed. It can also be used to create soul fire, and generate basalt when paired with blue ice and lava.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added soul soil."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb soul soil, providing the high resistance effect to the mob."}],"colors":{"primary":"#4c3a2f","dominant_hex":"#4c342c","average_hex":"#4c3a2f","hue_group":"red","lightness":0.2412,"saturation":0.2358,"palette":["#4c342c","#5c443c","#3c2c24","#342c24","#6c5444"],"color_groups":[{"hex":"#4c342c","weight":0.3008,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2539,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#3c2c24","weight":0.2422,"lightness":0.1882,"saturation":0.25,"hue_group":"red"},{"hex":"#342c24","weight":0.1055,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#6c5444","weight":0.0977,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_soil.png","family":"soul_soil","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.866},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.846},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.838},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.838},{"type":"color_bridge","target":"minecraft:potted_wither_rose","label":"Pont de nuance par palette: Potted Wither Rose","confidence":0.836},{"type":"color_bridge","target":"minecraft:wither_rose","label":"Pont de nuance par palette: Wither Rose","confidence":0.836},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.826},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.826},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.955},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.952},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.924},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.907},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.889},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.96},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.949},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.939},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.928},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.849},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.811},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.794},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.794},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.858},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.785},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.785},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.773},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.698},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.677},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.71},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.676},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.661},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.661},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.661},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.661},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.654},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.626}],"category":""},{"id":"minecraft:soul_torch","name":"Soul Torch","entry_type":"block","description":"Soul torches are non-solid blocks that emit light. They are a variant of the torch crafted with the addition of soul soil or soul sand.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added soul fire torches."}],"colors":{"primary":"#6d735a","dominant_hex":"#463923","average_hex":"#6d735a","hue_group":"yellow","lightness":0.402,"saturation":0.122,"palette":["#463923","#9c7c54","#6c5434","#8ff7f7","#947444","#04a4ac"],"color_groups":[{"hex":"#463923","weight":0.35,"lightness":0.2059,"saturation":0.3333,"hue_group":"yellow"},{"hex":"#9c7c54","weight":0.2,"lightness":0.4706,"saturation":0.3,"hue_group":"yellow"},{"hex":"#6c5434","weight":0.15,"lightness":0.3137,"saturation":0.35,"hue_group":"yellow"},{"hex":"#8ff7f7","weight":0.15,"lightness":0.7647,"saturation":0.8667,"hue_group":"cyan"},{"hex":"#947444","weight":0.1,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#04a4ac","weight":0.05,"lightness":0.3451,"saturation":0.9545,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_torch.png","family":"soul_torch","relations":[{"type":"visual_neighbors","target":"minecraft:soul_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:daylight_detector","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:soul_wall_torch","label":"Palette proche: Soul Wall Torch","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_torch","label":"Palette proche: Copper Torch","confidence":0.823},{"type":"color_neighbors","target":"minecraft:copper_wall_torch","label":"Palette proche: Copper Wall Torch","confidence":0.823},{"type":"color_neighbors","target":"minecraft:lever","label":"Palette proche: Lever","confidence":0.809},{"type":"color_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Palette proche: Brown Glazed Terracotta","confidence":0.771},{"type":"color_neighbors","target":"minecraft:torch","label":"Palette proche: Torch","confidence":0.766},{"type":"color_neighbors","target":"minecraft:wall_torch","label":"Palette proche: Wall Torch","confidence":0.766},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.755},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.751},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.747},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.747},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.742},{"type":"color_bridge","target":"minecraft:soul_wall_torch","label":"Pont de nuance par palette: Soul Wall Torch","confidence":0.86},{"type":"color_bridge","target":"minecraft:copper_torch","label":"Pont de nuance par sous-ton: Copper Torch","confidence":0.854},{"type":"color_bridge","target":"minecraft:copper_wall_torch","label":"Pont de nuance par sous-ton: Copper Wall Torch","confidence":0.854},{"type":"color_bridge","target":"minecraft:lever","label":"Pont de nuance par sous-ton: Lever","confidence":0.843},{"type":"color_bridge","target":"minecraft:brown_glazed_terracotta","label":"Pont de nuance par palette: Brown Glazed Terracotta","confidence":0.811},{"type":"color_bridge","target":"minecraft:torch","label":"Pont de nuance par sous-ton: Torch","confidence":0.808},{"type":"color_bridge","target":"minecraft:wall_torch","label":"Pont de nuance par sous-ton: Wall Torch","confidence":0.808},{"type":"color_bridge","target":"minecraft:barrel","label":"Pont de nuance par sous-ton: Barrel","confidence":0.799},{"type":"color_bridge","target":"minecraft:spruce_trapdoor","label":"Pont de nuance par sous-ton: Spruce Trapdoor","confidence":0.795},{"type":"color_bridge","target":"minecraft:oak_log","label":"Pont de nuance par sous-ton: Oak Log","confidence":0.792},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.553},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55}],"category":""},{"id":"minecraft:soul_wall_torch","name":"Soul Wall Torch","entry_type":"block","description":"Soul torches are non-solid blocks that emit light. They are a variant of the torch crafted with the addition of soul soil or soul sand.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added soul fire torches."}],"colors":{"primary":"#6d735a","dominant_hex":"#463923","average_hex":"#6d735a","hue_group":"yellow","lightness":0.402,"saturation":0.122,"palette":["#463923","#9c7c54","#6c5434","#8ff7f7","#947444","#04a4ac"],"color_groups":[{"hex":"#463923","weight":0.35,"lightness":0.2059,"saturation":0.3333,"hue_group":"yellow"},{"hex":"#9c7c54","weight":0.2,"lightness":0.4706,"saturation":0.3,"hue_group":"yellow"},{"hex":"#6c5434","weight":0.15,"lightness":0.3137,"saturation":0.35,"hue_group":"yellow"},{"hex":"#8ff7f7","weight":0.15,"lightness":0.7647,"saturation":0.8667,"hue_group":"cyan"},{"hex":"#947444","weight":0.1,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#04a4ac","weight":0.05,"lightness":0.3451,"saturation":0.9545,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_torch.png","family":"soul_wall_torch","relations":[{"type":"visual_neighbors","target":"minecraft:soul_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:daylight_detector","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:soul_torch","label":"Palette proche: Soul Torch","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_torch","label":"Palette proche: Copper Torch","confidence":0.823},{"type":"color_neighbors","target":"minecraft:copper_wall_torch","label":"Palette proche: Copper Wall Torch","confidence":0.823},{"type":"color_neighbors","target":"minecraft:lever","label":"Palette proche: Lever","confidence":0.809},{"type":"color_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Palette proche: Brown Glazed Terracotta","confidence":0.771},{"type":"color_neighbors","target":"minecraft:torch","label":"Palette proche: Torch","confidence":0.766},{"type":"color_neighbors","target":"minecraft:wall_torch","label":"Palette proche: Wall Torch","confidence":0.766},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.755},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.751},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.747},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.747},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.742},{"type":"color_bridge","target":"minecraft:soul_torch","label":"Pont de nuance par palette: Soul Torch","confidence":0.86},{"type":"color_bridge","target":"minecraft:copper_torch","label":"Pont de nuance par sous-ton: Copper Torch","confidence":0.854},{"type":"color_bridge","target":"minecraft:copper_wall_torch","label":"Pont de nuance par sous-ton: Copper Wall Torch","confidence":0.854},{"type":"color_bridge","target":"minecraft:lever","label":"Pont de nuance par sous-ton: Lever","confidence":0.843},{"type":"color_bridge","target":"minecraft:brown_glazed_terracotta","label":"Pont de nuance par palette: Brown Glazed Terracotta","confidence":0.811},{"type":"color_bridge","target":"minecraft:torch","label":"Pont de nuance par sous-ton: Torch","confidence":0.808},{"type":"color_bridge","target":"minecraft:wall_torch","label":"Pont de nuance par sous-ton: Wall Torch","confidence":0.808},{"type":"color_bridge","target":"minecraft:barrel","label":"Pont de nuance par sous-ton: Barrel","confidence":0.799},{"type":"color_bridge","target":"minecraft:spruce_trapdoor","label":"Pont de nuance par sous-ton: Spruce Trapdoor","confidence":0.795},{"type":"color_bridge","target":"minecraft:oak_log","label":"Pont de nuance par sous-ton: Oak Log","confidence":0.792},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.553},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55}],"category":""},{"id":"minecraft:spark","name":"Spark","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#e1c89b","dominant_hex":"#fcecad","average_hex":"#e1c89b","hue_group":"yellow","lightness":0.7451,"saturation":0.5385,"palette":["#fcecad","#e9cca3","#8d7174","#f4dca4","#fce498","#cebc8f"],"color_groups":[{"hex":"#fcecad","weight":0.2535,"lightness":0.8333,"saturation":0.9294,"hue_group":"yellow"},{"hex":"#e9cca3","weight":0.1962,"lightness":0.7765,"saturation":0.614,"hue_group":"yellow"},{"hex":"#8d7174","weight":0.1667,"lightness":0.498,"saturation":0.1102,"hue_group":"neutral"},{"hex":"#f4dca4","weight":0.151,"lightness":0.8,"saturation":0.7843,"hue_group":"yellow"},{"hex":"#fce498","weight":0.1285,"lightness":0.7922,"saturation":0.9434,"hue_group":"yellow"},{"hex":"#cebc8f","weight":0.1042,"lightness":0.6843,"saturation":0.3913,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/shulker/spark.png","family":"spark","relations":[{"type":"visual_neighbors","target":"minecraft:parrot/green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/creamy","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/persian","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/ocelot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/red","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/calico","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_golem","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_angry_nectar","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:spawner","name":"Spawner","entry_type":"block","description":"Spawner may refer to:","history":[{"version":"wiki","status":"observed","notes":"Wiki revision 3413727 at 2026-01-30T07:28:50Z."}],"colors":{"primary":"#242e3f","dominant_hex":"#1c2c3c","average_hex":"#242e3f","hue_group":"blue","lightness":0.1941,"saturation":0.2727,"palette":["#1c2c3c","#1c1c24","#2c2434","#2c4454","#44647c","#6c0454"],"color_groups":[{"hex":"#1c2c3c","weight":0.3125,"lightness":0.1725,"saturation":0.3636,"hue_group":"blue"},{"hex":"#1c1c24","weight":0.2386,"lightness":0.1255,"saturation":0.125,"hue_group":"blue"},{"hex":"#2c2434","weight":0.1818,"lightness":0.1725,"saturation":0.1818,"hue_group":"purple"},{"hex":"#2c4454","weight":0.1591,"lightness":0.251,"saturation":0.3125,"hue_group":"cyan"},{"hex":"#44647c","weight":0.0966,"lightness":0.3765,"saturation":0.2917,"hue_group":"cyan"},{"hex":"#6c0454","weight":0.0114,"lightness":0.2196,"saturation":0.9286,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spawner.png","family":"spawner","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chain","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:respawn_anchor","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_hyphae","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stem","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_gateway","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_chest","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:obsidian","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.864},{"type":"color_neighbors","target":"minecraft:trial_spawner","label":"Palette proche: Trial Spawner","confidence":0.853},{"type":"color_neighbors","target":"minecraft:tinted_glass","label":"Palette proche: Tinted Glass","confidence":0.845},{"type":"color_neighbors","target":"minecraft:vault","label":"Palette proche: Vault","confidence":0.827},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.799},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.796},{"type":"color_neighbors","target":"minecraft:iron_chain","label":"Palette proche: Iron Chain","confidence":0.791},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.762},{"type":"color_neighbors","target":"minecraft:black_carpet","label":"Palette proche: Black Carpet","confidence":0.76},{"type":"color_neighbors","target":"minecraft:black_wool","label":"Palette proche: Black Wool","confidence":0.76},{"type":"color_neighbors","target":"minecraft:blue_terracotta","label":"Palette proche: Blue Terracotta","confidence":0.749},{"type":"color_neighbors","target":"minecraft:gray_carpet","label":"Palette proche: Gray Carpet","confidence":0.74},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.879},{"type":"color_bridge","target":"minecraft:tinted_glass","label":"Pont de nuance par palette: Tinted Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.858},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.834},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.832},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.828},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.804},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par sous-ton: Black Carpet","confidence":0.802},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par sous-ton: Black Wool","confidence":0.802},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par palette: Blue Terracotta","confidence":0.793},{"type":"color_analogous","target":"minecraft:lapis_block","label":"Couleurs analogues: Lapis Block","confidence":0.918},{"type":"color_analogous","target":"minecraft:blue_ice","label":"Couleurs analogues: Blue Ice","confidence":0.882},{"type":"color_analogous","target":"minecraft:frosted_ice","label":"Couleurs analogues: Frosted Ice","confidence":0.875},{"type":"color_analogous","target":"minecraft:packed_ice","label":"Couleurs analogues: Packed Ice","confidence":0.86},{"type":"color_analogous","target":"minecraft:black_concrete","label":"Couleurs analogues: Black Concrete","confidence":0.857},{"type":"color_analogous","target":"minecraft:ice","label":"Couleurs analogues: Ice","confidence":0.857},{"type":"color_analogous","target":"minecraft:light_blue_stained_glass_pane","label":"Couleurs analogues: Light Blue Stained Glass Pane","confidence":0.824},{"type":"color_analogous","target":"minecraft:light_blue_stained_glass","label":"Couleurs analogues: Light Blue Stained Glass","confidence":0.811},{"type":"color_complement","target":"minecraft:dark_oak_log","label":"Contraste complementaire: Dark Oak Log","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_oak_wood","label":"Contraste complementaire: Dark Oak Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:spruce_shelf","label":"Contraste complementaire: Spruce Shelf","confidence":0.96},{"type":"color_complement","target":"minecraft:bookshelf","label":"Contraste complementaire: Bookshelf","confidence":0.96},{"type":"color_complement","target":"minecraft:oak_trapdoor","label":"Contraste complementaire: Oak Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:oak_shelf","label":"Contraste complementaire: Oak Shelf","confidence":0.96},{"type":"color_complement","target":"minecraft:black_banner","label":"Contraste complementaire: Black Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:black_bed","label":"Contraste complementaire: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_candle","label":"Harmonie triadique: Pink Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_concrete","label":"Harmonie triadique: Pink Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:cherry_leaves","label":"Harmonie triadique: Cherry Leaves","confidence":0.96},{"type":"color_triad","target":"minecraft:pearlescent_froglight","label":"Harmonie triadique: Pearlescent Froglight","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_concrete_powder","label":"Harmonie triadique: Pink Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.948},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.948},{"type":"color_triad","target":"minecraft:potted_spruce_sapling","label":"Harmonie triadique: Potted Spruce Sapling","confidence":0.945},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.933},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.866},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.866},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.864},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.86},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.844},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.827},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.775},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.735},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.725},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.724},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.724},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.702},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.684},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.684},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.679}],"category":""},{"id":"minecraft:spectral_arrow","name":"Spectral Arrow","entry_type":"item","description":"A spectral arrow is a type of arrow that inflicts the Glowing effect on hit in addition to dealing damage.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added spectral arrows. They show mob and player outlines in their team color when hit. They have no texture when shot."}],"colors":{"primary":"#b89132","dominant_hex":"#7c3c04","average_hex":"#b89132","hue_group":"yellow","lightness":0.4588,"saturation":0.5726,"palette":["#7c3c04","#fcfc74","#dcbc34","#cc8c24","#fcfcfc"],"color_groups":[{"hex":"#7c3c04","weight":0.4474,"lightness":0.251,"saturation":0.9375,"hue_group":"red"},{"hex":"#fcfc74","weight":0.2368,"lightness":0.7216,"saturation":0.9577,"hue_group":"yellow"},{"hex":"#dcbc34","weight":0.2105,"lightness":0.5333,"saturation":0.7059,"hue_group":"yellow"},{"hex":"#cc8c24","weight":0.0789,"lightness":0.4706,"saturation":0.7,"hue_group":"yellow"},{"hex":"#fcfcfc","weight":0.0263,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/spectral_arrow.png","family":"spectral_arrow","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_chestplate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_leggings","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_boots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_berries","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:spider","name":"Spider","entry_type":"mob","description":"A spider is a wall-climbing neutral arthropod (arachnid), that attacks players on sight in dark areas by jumping and biting them. They are a good source of both string and spider eyes.","history":[{"version":"0.26","status":"added","notes":"Added spiders."},{"version":"wiki-history","status":"added","notes":"added in Survival Test ."},{"version":"v1.0.3","status":"added","notes":"Added unique idle and hurt sounds for spiders. Previously, they had no idle sounds and used the hurt sound for players."}],"colors":{"primary":"#39302a","dominant_hex":"#3c342c","average_hex":"#39302a","hue_group":"red","lightness":0.1941,"saturation":0.1515,"palette":["#3c342c","#342c24","#24211a","#4c443c","#443c34","#70554c"],"color_groups":[{"hex":"#3c342c","weight":0.2887,"lightness":0.2039,"saturation":0.1538,"hue_group":"yellow"},{"hex":"#342c24","weight":0.2478,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#24211a","weight":0.2374,"lightness":0.1216,"saturation":0.1613,"hue_group":"yellow"},{"hex":"#4c443c","weight":0.1027,"lightness":0.2667,"saturation":0.1176,"hue_group":"neutral"},{"hex":"#443c34","weight":0.09,"lightness":0.2353,"saturation":0.1333,"hue_group":"yellow"},{"hex":"#70554c","weight":0.0335,"lightness":0.3686,"saturation":0.1915,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/spider/spider.png","family":"spider","relations":[{"type":"visual_neighbors","target":"minecraft:bat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:spider_eye","name":"Spider Eye","entry_type":"item","description":"A spider eye is a food item obtained from spiders and witches that is poisonous to players, but can be safely fed to armadillos for breeding. It is also a brewing ingredient for potions of Poison, and can be fermented for further brewing uses.","history":[{"version":"1.0.0","status":"added","notes":"Added spider eyes."}],"colors":{"primary":"#621228","dominant_hex":"#2c0414","average_hex":"#621228","hue_group":"red","lightness":0.2275,"saturation":0.6897,"palette":["#2c0414","#540424","#7c0c24","#a22535","#64042c","#e4bcc0"],"color_groups":[{"hex":"#2c0414","weight":0.3111,"lightness":0.0941,"saturation":0.8333,"hue_group":"red"},{"hex":"#540424","weight":0.2,"lightness":0.1725,"saturation":0.9091,"hue_group":"red"},{"hex":"#7c0c24","weight":0.1556,"lightness":0.2667,"saturation":0.8235,"hue_group":"red"},{"hex":"#a22535","weight":0.1556,"lightness":0.3902,"saturation":0.6281,"hue_group":"red"},{"hex":"#64042c","weight":0.1333,"lightness":0.2039,"saturation":0.9231,"hue_group":"red"},{"hex":"#e4bcc0","weight":0.0444,"lightness":0.8157,"saturation":0.4255,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/spider_eye.png","family":"spider_eye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:fermented_spider_eye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_soup","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magma_cube_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rotten_flesh","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_stew","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:saddle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa_beans","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berries","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:apple","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_chest_boat","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:spider_spawn_egg","name":"Spider Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#332c26","dominant_hex":"#413931","average_hex":"#332c26","hue_group":"red","lightness":0.1745,"saturation":0.1461,"palette":["#413931","#140c0c","#342c24","#655b4d","#1c1414","#24241c"],"color_groups":[{"hex":"#413931","weight":0.2651,"lightness":0.2235,"saturation":0.1404,"hue_group":"yellow"},{"hex":"#140c0c","weight":0.2108,"lightness":0.0627,"saturation":0.25,"hue_group":"red"},{"hex":"#342c24","weight":0.1807,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#655b4d","weight":0.1446,"lightness":0.349,"saturation":0.1348,"hue_group":"yellow"},{"hex":"#1c1414","weight":0.1265,"lightness":0.0941,"saturation":0.1667,"hue_group":"red"},{"hex":"#24241c","weight":0.0723,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/spider_spawn_egg.png","family":"spider_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_chirp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_sword","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raiser_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:spire_armor_trim_smithing_template","name":"Spire Armor Trim Smithing Template","entry_type":"item","description":"Spire armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, a purpur block, and diamonds.","history":[{"version":"1.19.4","status":"added","notes":"Added the spire armor trim smithing template behind the \"Update 1.20\" experimental data pack."}],"colors":{"primary":"#9271a0","dominant_hex":"#a575a5","average_hex":"#9271a0","hue_group":"purple","lightness":0.5353,"saturation":0.1983,"palette":["#a575a5","#b98eb9","#7f437f","#945c94","#178fac","#4ccccc"],"color_groups":[{"hex":"#a575a5","weight":0.2909,"lightness":0.5529,"saturation":0.2105,"hue_group":"purple"},{"hex":"#b98eb9","weight":0.2424,"lightness":0.6412,"saturation":0.235,"hue_group":"purple"},{"hex":"#7f437f","weight":0.2182,"lightness":0.3804,"saturation":0.3093,"hue_group":"purple"},{"hex":"#945c94","weight":0.1515,"lightness":0.4706,"saturation":0.2333,"hue_group":"purple"},{"hex":"#178fac","weight":0.0606,"lightness":0.3824,"saturation":0.7641,"hue_group":"cyan"},{"hex":"#4ccccc","weight":0.0364,"lightness":0.549,"saturation":0.5565,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/spire_armor_trim_smithing_template.png","family":"spire_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:axolotl_bucket","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:popped_chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chorus_fruit","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_breath","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_shell","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_crystal","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_dye","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_bundle","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl_spawn_egg","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_bundle","label":"Shared hue group: purple","confidence":0.55}],"category":"item"},{"id":"minecraft:splash_potion","name":"Splash Potion","entry_type":"item","description":"Splash potions are a variant of potions that can be thrown.","history":[{"version":"1.0.0","status":"added","notes":"Added splash potions."},{"version":"12w22a","status":"added","notes":"added to the new Creative item selection from 12w21b . This includes extended-enhanced potions with both extended duration and enhanced effect for splash potions of Poison , Regeneration , Strength and Swiftness ."},{"version":"1.4.2 12w32a","status":"added","notes":"Added splash potions of Night Vision ."}],"colors":{"primary":"#9998aa","dominant_hex":"#abc5e6","average_hex":"#9998aa","hue_group":"neutral","lightness":0.6314,"saturation":0.0957,"palette":["#abc5e6","#5c8cc4","#943414","#d46c4c","#d4e4f4","#ac4424"],"color_groups":[{"hex":"#abc5e6","weight":0.325,"lightness":0.7863,"saturation":0.5413,"hue_group":"blue"},{"hex":"#5c8cc4","weight":0.3,"lightness":0.5647,"saturation":0.4685,"hue_group":"blue"},{"hex":"#943414","weight":0.1,"lightness":0.3294,"saturation":0.7619,"hue_group":"red"},{"hex":"#d46c4c","weight":0.1,"lightness":0.5647,"saturation":0.6126,"hue_group":"red"},{"hex":"#d4e4f4","weight":0.1,"lightness":0.8941,"saturation":0.5926,"hue_group":"blue"},{"hex":"#ac4424","weight":0.075,"lightness":0.4078,"saturation":0.6538,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/splash_potion.png","family":"splash_potion","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:nether_star","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_membrane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_boat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trident","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_tears","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:sponge","name":"Sponge","entry_type":"block","description":"A sponge is a block that can be placed to remove water in an area around itself. This turns it into a wet sponge, which can be smelted or placed in the Nether to dry it to be reused. Sponges can only be found in ocean monuments.","history":[{"version":"0.0.19a","status":"added","notes":"Added sponges."},{"version":"20100227-1414","status":"added","notes":"added in a later version of Infdev, though sponges weren't touched as they were no longer necessary."},{"version":"1.8 14w25a","status":"added","notes":"Added wet sponges. Sponges now soak up contiguous water source blocks out to a taxicab distance of 7 when placed, thereupon turning into the new wet sponge."}],"colors":{"primary":"#c4c04b","dominant_hex":"#cccc4c","average_hex":"#c4c04b","hue_group":"yellow","lightness":0.5314,"saturation":0.5063,"palette":["#cccc4c","#c4bc4c","#e4e454","#9c8c3c","#b4ac4c"],"color_groups":[{"hex":"#cccc4c","weight":0.3477,"lightness":0.549,"saturation":0.5565,"hue_group":"yellow"},{"hex":"#c4bc4c","weight":0.3164,"lightness":0.5333,"saturation":0.5042,"hue_group":"yellow"},{"hex":"#e4e454","weight":0.1211,"lightness":0.6118,"saturation":0.7273,"hue_group":"yellow"},{"hex":"#9c8c3c","weight":0.1172,"lightness":0.4235,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#b4ac4c","weight":0.0977,"lightness":0.502,"saturation":0.4094,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sponge.png","family":"sponge","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.907},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic","label":"Palette proche: Bamboo Mosaic","confidence":0.895},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Palette proche: Bamboo Mosaic Slab","confidence":0.895},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic_stairs","label":"Palette proche: Bamboo Mosaic Stairs","confidence":0.895},{"type":"color_neighbors","target":"minecraft:bamboo_fence_gate","label":"Palette proche: Bamboo Fence Gate","confidence":0.895},{"type":"color_neighbors","target":"minecraft:wet_sponge","label":"Palette proche: Wet Sponge","confidence":0.894},{"type":"color_neighbors","target":"minecraft:bamboo_trapdoor","label":"Palette proche: Bamboo Trapdoor","confidence":0.889},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.889},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.889},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.889},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.889},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.889},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.721},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.721},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.712},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.712},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.707},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.703},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.703},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.702},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.701},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.693},{"type":"color_analogous","target":"minecraft:yellow_stained_glass_pane","label":"Couleurs analogues: Yellow Stained Glass Pane","confidence":0.956},{"type":"color_analogous","target":"minecraft:yellow_stained_glass","label":"Couleurs analogues: Yellow Stained Glass","confidence":0.952},{"type":"color_analogous","target":"minecraft:turtle_egg","label":"Couleurs analogues: Turtle Egg","confidence":0.935},{"type":"color_analogous","target":"minecraft:acacia_sapling","label":"Couleurs analogues: Acacia Sapling","confidence":0.92},{"type":"color_analogous","target":"minecraft:potted_acacia_sapling","label":"Couleurs analogues: Potted Acacia Sapling","confidence":0.92},{"type":"color_analogous","target":"minecraft:bamboo_sapling","label":"Couleurs analogues: Bamboo Sapling","confidence":0.917},{"type":"color_analogous","target":"minecraft:horn_coral_block","label":"Couleurs analogues: Horn Coral Block","confidence":0.898},{"type":"color_analogous","target":"minecraft:cocoa","label":"Couleurs analogues: Cocoa","confidence":0.89},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.81},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.698},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.674},{"type":"color_triad","target":"minecraft:stripped_warped_hyphae","label":"Harmonie triadique: Stripped Warped Hyphae","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_warped_stem","label":"Harmonie triadique: Stripped Warped Stem","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_hanging_sign","label":"Harmonie triadique: Warped Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_wall_hanging_sign","label":"Harmonie triadique: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:beacon","label":"Harmonie triadique: Beacon","confidence":0.934},{"type":"color_triad","target":"minecraft:powder_snow","label":"Harmonie triadique: Powder Snow","confidence":0.92},{"type":"color_triad","target":"minecraft:snow","label":"Harmonie triadique: Snow","confidence":0.907},{"type":"color_triad","target":"minecraft:snow_block","label":"Harmonie triadique: Snow Block","confidence":0.907},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.921},{"type":"color_square","target":"minecraft:cherry_log","label":"Harmonie carree: Cherry Log","confidence":0.897},{"type":"color_square","target":"minecraft:cherry_wood","label":"Harmonie carree: Cherry Wood","confidence":0.897},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.869},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.864},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.86},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.86},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.85},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55}],"category":""},{"id":"minecraft:spore_blossom","name":"Spore Blossom","entry_type":"block","description":"A spore blossom is a ceiling-hanging decorative block that generates in lush caves and emits green particles.","history":[{"version":"1.17 21w05a","status":"added","notes":"Added spore blossom."}],"colors":{"primary":"#cf619f","dominant_hex":"#f46cbc","average_hex":"#cf619f","hue_group":"purple","lightness":0.5961,"saturation":0.534,"palette":["#f46cbc","#fb88c5","#7c3464","#dc5cac","#bb5a82","#944474"],"color_groups":[{"hex":"#f46cbc","weight":0.2419,"lightness":0.6902,"saturation":0.8608,"hue_group":"purple"},{"hex":"#fb88c5","weight":0.2097,"lightness":0.7588,"saturation":0.935,"hue_group":"purple"},{"hex":"#7c3464","weight":0.1613,"lightness":0.3451,"saturation":0.4091,"hue_group":"purple"},{"hex":"#dc5cac","weight":0.1613,"lightness":0.6118,"saturation":0.6465,"hue_group":"purple"},{"hex":"#bb5a82","weight":0.1452,"lightness":0.5431,"saturation":0.4163,"hue_group":"red"},{"hex":"#944474","weight":0.0806,"lightness":0.4235,"saturation":0.3704,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spore_blossom.png","family":"spore_blossom","relations":[{"type":"visual_neighbors","target":"minecraft:magenta_glazed_terracotta","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_block","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brain_coral","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass_pane","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_stained_glass","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_carpet","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_wool","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_concrete_powder","label":"Shared hue group: purple","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_shulker_box","label":"Shared hue group: purple","confidence":0.55},{"type":"color_neighbors","target":"minecraft:brain_coral_block","label":"Palette proche: Brain Coral Block","confidence":0.845},{"type":"color_neighbors","target":"minecraft:brain_coral","label":"Palette proche: Brain Coral","confidence":0.836},{"type":"color_neighbors","target":"minecraft:brain_coral_fan","label":"Palette proche: Brain Coral Fan","confidence":0.83},{"type":"color_neighbors","target":"minecraft:brain_coral_wall_fan","label":"Palette proche: Brain Coral Wall Fan","confidence":0.83},{"type":"color_neighbors","target":"minecraft:pink_candle","label":"Palette proche: Pink Candle","confidence":0.797},{"type":"color_neighbors","target":"minecraft:pink_shulker_box","label":"Palette proche: Pink Shulker Box","confidence":0.768},{"type":"color_neighbors","target":"minecraft:pink_petals","label":"Palette proche: Pink Petals","confidence":0.721},{"type":"color_neighbors","target":"minecraft:pink_concrete","label":"Palette proche: Pink Concrete","confidence":0.712},{"type":"color_neighbors","target":"minecraft:pink_glazed_terracotta","label":"Palette proche: Pink Glazed Terracotta","confidence":0.708},{"type":"color_neighbors","target":"minecraft:pink_stained_glass_pane","label":"Palette proche: Pink Stained Glass Pane","confidence":0.703},{"type":"color_neighbors","target":"minecraft:pink_carpet","label":"Palette proche: Pink Carpet","confidence":0.702},{"type":"color_neighbors","target":"minecraft:pink_wool","label":"Palette proche: Pink Wool","confidence":0.702},{"type":"color_bridge","target":"minecraft:cherry_sapling","label":"Pont de nuance par sous-ton: Cherry Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:potted_cherry_sapling","label":"Pont de nuance par sous-ton: Potted Cherry Sapling","confidence":0.734},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.633},{"type":"color_bridge","target":"minecraft:closed_eyeblossom","label":"Pont de nuance par palette: Closed Eyeblossom","confidence":0.626},{"type":"color_bridge","target":"minecraft:potted_closed_eyeblossom","label":"Pont de nuance par palette: Potted Closed Eyeblossom","confidence":0.626},{"type":"color_bridge","target":"minecraft:purpur_block","label":"Pont de nuance par sous-ton: Purpur Block","confidence":0.621},{"type":"color_bridge","target":"minecraft:purpur_slab","label":"Pont de nuance par sous-ton: Purpur Slab","confidence":0.621},{"type":"color_bridge","target":"minecraft:purpur_stairs","label":"Pont de nuance par sous-ton: Purpur Stairs","confidence":0.621},{"type":"color_bridge","target":"minecraft:purpur_pillar","label":"Pont de nuance par sous-ton: Purpur Pillar","confidence":0.612},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.602},{"type":"color_analogous","target":"minecraft:brain_coral_block","label":"Couleurs analogues: Brain Coral Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:brain_coral_fan","label":"Couleurs analogues: Brain Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:brain_coral_wall_fan","label":"Couleurs analogues: Brain Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:brain_coral","label":"Couleurs analogues: Brain Coral","confidence":0.953},{"type":"color_analogous","target":"minecraft:pink_petals","label":"Couleurs analogues: Pink Petals","confidence":0.935},{"type":"color_analogous","target":"minecraft:cherry_log","label":"Couleurs analogues: Cherry Log","confidence":0.83},{"type":"color_analogous","target":"minecraft:cherry_wood","label":"Couleurs analogues: Cherry Wood","confidence":0.83},{"type":"color_analogous","target":"minecraft:crimson_hanging_sign","label":"Couleurs analogues: Crimson Hanging Sign","confidence":0.755},{"type":"color_complement","target":"minecraft:torchflower_crop","label":"Contraste complementaire: Torchflower Crop","confidence":0.77},{"type":"color_complement","target":"minecraft:oxidized_copper_lantern","label":"Contraste complementaire: Oxidized Copper Lantern","confidence":0.765},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_lantern","label":"Contraste complementaire: Waxed Oxidized Copper Lantern","confidence":0.765},{"type":"color_complement","target":"minecraft:emerald_block","label":"Contraste complementaire: Emerald Block","confidence":0.686},{"type":"color_complement","target":"minecraft:sweet_berry_bush","label":"Contraste complementaire: Sweet Berry Bush","confidence":0.662},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.647},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.647},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.647},{"type":"color_triad","target":"minecraft:lime_concrete_powder","label":"Harmonie triadique: Lime Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:lime_stained_glass","label":"Harmonie triadique: Lime Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:lime_stained_glass_pane","label":"Harmonie triadique: Lime Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:orange_tulip","label":"Harmonie triadique: Orange Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_orange_tulip","label":"Harmonie triadique: Potted Orange Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.96},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.96},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.96},{"type":"color_square","target":"minecraft:bamboo_sapling","label":"Harmonie carree: Bamboo Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:blue_carpet","label":"Harmonie carree: Blue Carpet","confidence":0.934},{"type":"color_square","target":"minecraft:blue_wool","label":"Harmonie carree: Blue Wool","confidence":0.934},{"type":"color_square","target":"minecraft:sponge","label":"Harmonie carree: Sponge","confidence":0.921},{"type":"color_square","target":"minecraft:blue_concrete_powder","label":"Harmonie carree: Blue Concrete Powder","confidence":0.908},{"type":"color_square","target":"minecraft:turtle_egg","label":"Harmonie carree: Turtle Egg","confidence":0.9},{"type":"color_square","target":"minecraft:blue_shulker_box","label":"Harmonie carree: Blue Shulker Box","confidence":0.892},{"type":"color_square","target":"minecraft:blue_concrete","label":"Harmonie carree: Blue Concrete","confidence":0.891},{"type":"value_contrast","target":"minecraft:crimson_hyphae","label":"Contraste clair sombre: Crimson Hyphae","confidence":0.55},{"type":"value_contrast","target":"minecraft:crimson_stem","label":"Contraste clair sombre: Crimson Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_log","label":"Contraste clair sombre: Cherry Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_wood","label":"Contraste clair sombre: Cherry Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:smithing_table","label":"Contraste clair sombre: Smithing Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_glazed_terracotta","label":"Contraste clair sombre: Black Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_nether_bricks","label":"Contraste clair sombre: Chiseled Nether Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:nether_brick_fence","label":"Contraste clair sombre: Nether Brick Fence","confidence":0.55}],"category":""},{"id":"minecraft:spruce_boat","name":"Spruce Boat","entry_type":"item","description":"Boats (including bamboo rafts) are drivable vehicle entities that can be ridden through water or at high speeds across all types of ice. Most mobs will ride nearby boats, which they cannot control or exit on their own.","history":[{"version":"v1.0.6","status":"added","notes":"Added boats."},{"version":"wiki-history","status":"added","notes":"added again."},{"version":"18w15a","status":"added","notes":"Added blue ice , which allows boats to travel even faster on it."}],"colors":{"primary":"#5c4428","dominant_hex":"#322618","average_hex":"#5c4428","hue_group":"yellow","lightness":0.2588,"saturation":0.3939,"palette":["#322618","#8b6636","#443424","#74542c","#54442c","#644c2c"],"color_groups":[{"hex":"#322618","weight":0.2424,"lightness":0.1451,"saturation":0.3514,"hue_group":"yellow"},{"hex":"#8b6636","weight":0.2303,"lightness":0.3784,"saturation":0.4404,"hue_group":"yellow"},{"hex":"#443424","weight":0.2,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#74542c","weight":0.1273,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#54442c","weight":0.1091,"lightness":0.251,"saturation":0.3125,"hue_group":"yellow"},{"hex":"#644c2c","weight":0.0909,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/spruce_boat.png","family":"spruce_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:carrot_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:book","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crossbow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_chest_raft","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:spruce_button","name":"Spruce Button","entry_type":"block","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added wooden buttons. They are currently uncraftable."},{"version":"12w34b","status":"added","notes":"Added crafting recipe for wooden buttons. Recipe"},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped buttons."}],"colors":{"primary":"#735531","dominant_hex":"#84643c","average_hex":"#735531","hue_group":"yellow","lightness":0.3216,"saturation":0.4024,"palette":["#84643c","#7c5c34","#74542c","#5f4727","#8c643c","#543c1c"],"color_groups":[{"hex":"#84643c","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"},{"hex":"#7c5c34","weight":0.1875,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#74542c","weight":0.1836,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#5f4727","weight":0.1641,"lightness":0.2627,"saturation":0.4179,"hue_group":"yellow"},{"hex":"#8c643c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#543c1c","weight":0.1133,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_planks.png","family":"spruce_button","relations":[{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wall_sign","label":"Palette proche: Spruce Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.934},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.828},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.812},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.791},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.787},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.783},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.783},{"type":"color_analogous","target":"minecraft:spruce_fence","label":"Couleurs analogues: Spruce Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence_gate","label":"Couleurs analogues: Spruce Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_planks","label":"Couleurs analogues: Spruce Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_pressure_plate","label":"Couleurs analogues: Spruce Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_sign","label":"Couleurs analogues: Spruce Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_slab","label":"Couleurs analogues: Spruce Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_stairs","label":"Couleurs analogues: Spruce Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_sign","label":"Couleurs analogues: Spruce Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.959},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.819},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.793},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.76},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.743},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.738},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.738},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.952},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.93},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.928},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.929},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.925},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.914},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.895},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.627},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.593},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.582},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.571},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":"building"},{"id":"minecraft:spruce_chest_boat","name":"Spruce Chest Boat","entry_type":"item","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#604623","dominant_hex":"#936a2d","average_hex":"#604623","hue_group":"yellow","lightness":0.2569,"saturation":0.4656,"palette":["#936a2d","#473725","#705228","#2c190c","#372c19","#343424"],"color_groups":[{"hex":"#936a2d","weight":0.3333,"lightness":0.3765,"saturation":0.5312,"hue_group":"yellow"},{"hex":"#473725","weight":0.1667,"lightness":0.2118,"saturation":0.3148,"hue_group":"yellow"},{"hex":"#705228","weight":0.1552,"lightness":0.298,"saturation":0.4737,"hue_group":"yellow"},{"hex":"#2c190c","weight":0.1379,"lightness":0.1098,"saturation":0.5714,"hue_group":"red"},{"hex":"#372c19","weight":0.1379,"lightness":0.1569,"saturation":0.375,"hue_group":"yellow"},{"hex":"#343424","weight":0.069,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/spruce_chest_boat.png","family":"spruce_chest_boat","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:mushroom_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_chest_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:book","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crossbow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:spruce_door","name":"Spruce Door","entry_type":"block","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","history":[{"version":"20100607","status":"added","notes":"Added wooden doors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"18w49a","status":"added","notes":"Added snowy tundra villages, which generate with spruce doors."}],"colors":{"primary":"#6a5031","dominant_hex":"#8b6339","average_hex":"#6a5031","hue_group":"yellow","lightness":0.3039,"saturation":0.3677,"palette":["#8b6339","#4c3a21","#786042","#5c4424","#6c5434","#644c2c"],"color_groups":[{"hex":"#8b6339","weight":0.25,"lightness":0.3843,"saturation":0.4184,"hue_group":"yellow"},{"hex":"#4c3a21","weight":0.2148,"lightness":0.2137,"saturation":0.3945,"hue_group":"yellow"},{"hex":"#786042","weight":0.168,"lightness":0.3647,"saturation":0.2903,"hue_group":"yellow"},{"hex":"#5c4424","weight":0.1445,"lightness":0.251,"saturation":0.4375,"hue_group":"yellow"},{"hex":"#6c5434","weight":0.1445,"lightness":0.3137,"saturation":0.35,"hue_group":"yellow"},{"hex":"#644c2c","weight":0.0781,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_door_top.png","family":"spruce","relations":[{"type":"variants","target":"minecraft:spruce_fence","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_fence","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_leaves","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_leaves","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_log","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_log","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_planks","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_planks","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_sapling","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_sapling","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_slab","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_slab","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_stairs","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_stairs","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_wood","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_wood","label":"Related set: spruce","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:spruce_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wall_sign","label":"Palette proche: Spruce Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_shelf","label":"Palette proche: Spruce Shelf","confidence":0.935},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.836},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.819},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.816},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.809},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.809},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.804},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.804},{"type":"color_analogous","target":"minecraft:spruce_trapdoor","label":"Couleurs analogues: Spruce Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_button","label":"Couleurs analogues: Spruce Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence","label":"Couleurs analogues: Spruce Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence_gate","label":"Couleurs analogues: Spruce Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_planks","label":"Couleurs analogues: Spruce Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_pressure_plate","label":"Couleurs analogues: Spruce Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_sign","label":"Couleurs analogues: Spruce Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_slab","label":"Couleurs analogues: Spruce Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.953},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.819},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.786},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.754},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.738},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.738},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.738},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.946},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.929},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.922},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.923},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.921},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.918},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.916},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.894},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.894},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.889},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.888},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.645},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.611},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.599},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.599},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.599},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.599},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.589},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.564}],"category":"building"},{"id":"minecraft:spruce_fence","name":"Spruce Fence","entry_type":"block","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","history":[{"version":"20100629","status":"added","notes":"added to the game. There are three defined states: north-south, east-west and a cross. These models are currently unused."},{"version":"v1.0.17","status":"added","notes":"Added fences."},{"version":"1.8","status":"added","notes":"Added villages and strongholds , where wooden fences naturally generate."}],"colors":{"primary":"#735531","dominant_hex":"#84643c","average_hex":"#735531","hue_group":"yellow","lightness":0.3216,"saturation":0.4024,"palette":["#84643c","#7c5c34","#74542c","#5f4727","#8c643c","#543c1c"],"color_groups":[{"hex":"#84643c","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"},{"hex":"#7c5c34","weight":0.1875,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#74542c","weight":0.1836,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#5f4727","weight":0.1641,"lightness":0.2627,"saturation":0.4179,"hue_group":"yellow"},{"hex":"#8c643c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#543c1c","weight":0.1133,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_planks.png","family":"spruce","relations":[{"type":"variants","target":"minecraft:spruce_door","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_door","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_leaves","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_leaves","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_log","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_log","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_planks","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_planks","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_sapling","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_sapling","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_slab","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_slab","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_stairs","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_stairs","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_wood","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_wood","label":"Related set: spruce","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wall_sign","label":"Palette proche: Spruce Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.934},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.828},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.812},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.791},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.787},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.783},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.783},{"type":"color_analogous","target":"minecraft:spruce_button","label":"Couleurs analogues: Spruce Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence_gate","label":"Couleurs analogues: Spruce Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_planks","label":"Couleurs analogues: Spruce Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_pressure_plate","label":"Couleurs analogues: Spruce Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_sign","label":"Couleurs analogues: Spruce Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_slab","label":"Couleurs analogues: Spruce Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_stairs","label":"Couleurs analogues: Spruce Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_sign","label":"Couleurs analogues: Spruce Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.959},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.819},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.793},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.76},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.743},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.738},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.738},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.952},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.93},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.928},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.929},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.925},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.914},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.895},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.627},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.593},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.582},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.571},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":"building"},{"id":"minecraft:spruce_fence_gate","name":"Spruce Fence Gate","entry_type":"block","description":"A fence gate is a block that shares the functions of both the door and the fence.","history":[{"version":"Pre-release","status":"added","notes":"Added fence gates."},{"version":"14w32b","status":"added","notes":"Added spruce, birch, jungle, acacia, and dark oak fence gates."},{"version":"18w49a","status":"added","notes":"added snowy tundra villages."}],"colors":{"primary":"#735531","dominant_hex":"#84643c","average_hex":"#735531","hue_group":"yellow","lightness":0.3216,"saturation":0.4024,"palette":["#84643c","#7c5c34","#74542c","#5f4727","#8c643c","#543c1c"],"color_groups":[{"hex":"#84643c","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"},{"hex":"#7c5c34","weight":0.1875,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#74542c","weight":0.1836,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#5f4727","weight":0.1641,"lightness":0.2627,"saturation":0.4179,"hue_group":"yellow"},{"hex":"#8c643c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#543c1c","weight":0.1133,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_planks.png","family":"spruce_fence_gate","relations":[{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wall_sign","label":"Palette proche: Spruce Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.934},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.828},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.812},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.791},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.787},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.783},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.783},{"type":"color_analogous","target":"minecraft:spruce_button","label":"Couleurs analogues: Spruce Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence","label":"Couleurs analogues: Spruce Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_planks","label":"Couleurs analogues: Spruce Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_pressure_plate","label":"Couleurs analogues: Spruce Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_sign","label":"Couleurs analogues: Spruce Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_slab","label":"Couleurs analogues: Spruce Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_stairs","label":"Couleurs analogues: Spruce Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_sign","label":"Couleurs analogues: Spruce Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.959},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.819},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.793},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.76},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.743},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.738},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.738},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.952},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.93},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.928},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.929},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.925},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.914},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.895},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.627},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.593},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.582},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.571},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":"building"},{"id":"minecraft:spruce_hanging_sign","name":"Spruce Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#745a34","dominant_hex":"#7c5c34","average_hex":"#745a34","hue_group":"yellow","lightness":0.3294,"saturation":0.381,"palette":["#7c5c34","#645434","#84643c","#735c34","#64542c","#7c5c3c"],"color_groups":[{"hex":"#7c5c34","weight":0.3047,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#645434","weight":0.2422,"lightness":0.298,"saturation":0.3158,"hue_group":"yellow"},{"hex":"#84643c","weight":0.1992,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"},{"hex":"#735c34","weight":0.1484,"lightness":0.3275,"saturation":0.3772,"hue_group":"yellow"},{"hex":"#64542c","weight":0.0859,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c5c3c","weight":0.0195,"lightness":0.3608,"saturation":0.3478,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_spruce_log.png","family":"spruce_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_spruce_log","label":"Palette proche: Stripped Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_spruce_wood","label":"Palette proche: Stripped Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_shelf","label":"Palette proche: Spruce Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.934},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.839},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.822},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.822},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.816},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.816},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.815},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.81},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.81},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.809},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_log","label":"Couleurs analogues: Stripped Spruce Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_wood","label":"Couleurs analogues: Stripped Spruce Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_log","label":"Couleurs analogues: Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wood","label":"Couleurs analogues: Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:ladder","label":"Couleurs analogues: Ladder","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_trapdoor","label":"Couleurs analogues: Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:bookshelf","label":"Couleurs analogues: Bookshelf","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.917},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.913},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.896},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.888},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.855},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.838},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.831},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.822},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.945},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.945},{"type":"color_triad","target":"minecraft:purple_carpet","label":"Harmonie triadique: Purple Carpet","confidence":0.943},{"type":"color_triad","target":"minecraft:purple_wool","label":"Harmonie triadique: Purple Wool","confidence":0.943},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.958},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.942},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.926},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.874},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.852},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.62},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.586},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.574},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.574},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.574},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.574},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.564},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":"building"},{"id":"minecraft:spruce_leaves","name":"Spruce Leaves","entry_type":"block","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","history":[{"version":"0.0.14a","status":"added","notes":"Added leaves."},{"version":"1.2","status":"added","notes":"Added spruce and birch leaves, which are colored #619961 and #80a755 respectively, and do not vary across biomes."},{"version":"1.7","status":"added","notes":"Added shears , which collect leaves. Before, leaves could be obtained only via inventory editing."}],"colors":{"primary":"#7e7e7e","dominant_hex":"#9c9c9c","average_hex":"#7e7e7e","hue_group":"neutral","lightness":0.4941,"saturation":0.0,"palette":["#9c9c9c","#8c8c8c","#444444","#545454","#4c4c4c"],"color_groups":[{"hex":"#9c9c9c","weight":0.4125,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.3,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.1375,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.1,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.05,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_leaves.png","family":"spruce","relations":[{"type":"variants","target":"minecraft:spruce_door","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_door","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_fence","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_fence","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_log","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_log","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_planks","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_planks","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_sapling","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_sapling","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_slab","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_slab","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_stairs","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_stairs","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_wood","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_wood","label":"Related set: spruce","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_leaves","label":"Palette proche: Mangrove Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:observer","label":"Palette proche: Observer","confidence":0.94},{"type":"color_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Palette proche: Attached Pumpkin Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bedrock","label":"Palette proche: Bedrock","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:furnace","label":"Palette proche: Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:mangrove_leaves","label":"Pont de nuance par palette: Mangrove Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:observer","label":"Pont de nuance par palette: Observer","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_pumpkin_stem","label":"Pont de nuance par palette: Attached Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:lily_pad","label":"Pont de nuance par palette: Lily Pad","confidence":0.86},{"type":"color_bridge","target":"minecraft:bedrock","label":"Pont de nuance par palette: Bedrock","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:furnace","label":"Pont de nuance par palette: Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"natural"},{"id":"minecraft:spruce_log","name":"Spruce Log","entry_type":"block","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","history":[{"version":"0.0.14a","status":"added","notes":"Added wood."},{"version":"1.2","status":"added","notes":"Added spruce and birch wood."},{"version":"wiki-history","status":"added","notes":"Added \"Getting Wood\" achievement for picking up a wood item ."}],"colors":{"primary":"#3b2611","dominant_hex":"#3c2414","average_hex":"#3b2611","hue_group":"yellow","lightness":0.149,"saturation":0.5526,"palette":["#3c2414","#4c3414","#2c1c0c","#341c0c","#2c140c","#543c1c"],"color_groups":[{"hex":"#3c2414","weight":0.4219,"lightness":0.1569,"saturation":0.5,"hue_group":"red"},{"hex":"#4c3414","weight":0.1641,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1484,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#341c0c","weight":0.1445,"lightness":0.1255,"saturation":0.625,"hue_group":"red"},{"hex":"#2c140c","weight":0.0742,"lightness":0.1098,"saturation":0.5714,"hue_group":"red"},{"hex":"#543c1c","weight":0.0469,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_log.png","family":"spruce","relations":[{"type":"variants","target":"minecraft:spruce_door","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_door","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_fence","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_fence","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_leaves","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_leaves","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_planks","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_planks","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_sapling","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_sapling","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_slab","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_slab","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_stairs","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_stairs","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_wood","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_wood","label":"Related set: spruce","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cartography_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:podzol","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_wood","label":"Palette proche: Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.938},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.739},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.738},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.73},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.73},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.724},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.724},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.722},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.722},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.706},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.704},{"type":"color_analogous","target":"minecraft:spruce_wood","label":"Couleurs analogues: Spruce Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:cartography_table","label":"Couleurs analogues: Cartography Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_button","label":"Couleurs analogues: Dark Oak Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence","label":"Couleurs analogues: Dark Oak Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence_gate","label":"Couleurs analogues: Dark Oak Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_planks","label":"Couleurs analogues: Dark Oak Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_pressure_plate","label":"Couleurs analogues: Dark Oak Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sign","label":"Couleurs analogues: Dark Oak Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.891},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.882},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.844},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.844},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.772},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.75},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.75},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.906},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.906},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.902},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.902},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.895},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.885},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.884},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.884},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.96},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.932},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.828},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.826},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.815},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.787},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.753},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.742},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.742},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.742},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.742},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.731},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.708}],"category":"natural"},{"id":"minecraft:spruce_planks","name":"Spruce Planks","entry_type":"block","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","history":[{"version":"rd-20090515","status":"added","notes":"Added wooden planks."},{"version":"1.2.4 release","status":"added","notes":"Added spruce, birch and jungle wood planks. They are crafted from their corresponding wood . The color of wood planks available to this point is now obtainable only from oak wood."},{"version":"18w07a","status":"added","notes":"Added stripped logs, a variant of logs , which can be used to craft wood planks."}],"colors":{"primary":"#735531","dominant_hex":"#84643c","average_hex":"#735531","hue_group":"yellow","lightness":0.3216,"saturation":0.4024,"palette":["#84643c","#7c5c34","#74542c","#5f4727","#8c643c","#543c1c"],"color_groups":[{"hex":"#84643c","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"},{"hex":"#7c5c34","weight":0.1875,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#74542c","weight":0.1836,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#5f4727","weight":0.1641,"lightness":0.2627,"saturation":0.4179,"hue_group":"yellow"},{"hex":"#8c643c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#543c1c","weight":0.1133,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_planks.png","family":"spruce","relations":[{"type":"variants","target":"minecraft:spruce_door","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_door","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_fence","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_fence","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_leaves","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_leaves","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_log","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_log","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_sapling","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_sapling","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_slab","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_slab","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_stairs","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_stairs","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_wood","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_wood","label":"Related set: spruce","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wall_sign","label":"Palette proche: Spruce Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.934},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.828},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.812},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.791},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.787},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.783},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.783},{"type":"color_analogous","target":"minecraft:spruce_button","label":"Couleurs analogues: Spruce Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence","label":"Couleurs analogues: Spruce Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence_gate","label":"Couleurs analogues: Spruce Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_pressure_plate","label":"Couleurs analogues: Spruce Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_sign","label":"Couleurs analogues: Spruce Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_slab","label":"Couleurs analogues: Spruce Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_stairs","label":"Couleurs analogues: Spruce Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_sign","label":"Couleurs analogues: Spruce Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.959},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.819},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.793},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.76},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.743},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.738},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.738},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.952},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.93},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.928},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.929},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.925},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.914},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.895},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.627},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.593},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.582},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.571},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":"building"},{"id":"minecraft:spruce_pressure_plate","name":"Spruce Pressure Plate","entry_type":"block","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","history":[{"version":"v1.0.1","status":"added","notes":"Added wooden pressure plates."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped pressure plates."},{"version":"1.19 22w11a","status":"added","notes":"Added mangrove pressure plates."}],"colors":{"primary":"#735531","dominant_hex":"#84643c","average_hex":"#735531","hue_group":"yellow","lightness":0.3216,"saturation":0.4024,"palette":["#84643c","#7c5c34","#74542c","#5f4727","#8c643c","#543c1c"],"color_groups":[{"hex":"#84643c","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"},{"hex":"#7c5c34","weight":0.1875,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#74542c","weight":0.1836,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#5f4727","weight":0.1641,"lightness":0.2627,"saturation":0.4179,"hue_group":"yellow"},{"hex":"#8c643c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#543c1c","weight":0.1133,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_planks.png","family":"spruce_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wall_sign","label":"Palette proche: Spruce Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.934},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.828},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.812},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.791},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.787},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.783},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.783},{"type":"color_analogous","target":"minecraft:spruce_button","label":"Couleurs analogues: Spruce Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence","label":"Couleurs analogues: Spruce Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence_gate","label":"Couleurs analogues: Spruce Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_planks","label":"Couleurs analogues: Spruce Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_sign","label":"Couleurs analogues: Spruce Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_slab","label":"Couleurs analogues: Spruce Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_stairs","label":"Couleurs analogues: Spruce Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_sign","label":"Couleurs analogues: Spruce Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.959},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.819},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.793},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.76},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.743},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.738},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.738},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.952},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.93},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.928},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.929},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.925},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.914},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.895},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.627},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.593},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.582},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.571},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":"building"},{"id":"minecraft:spruce_sapling","name":"Spruce Sapling","entry_type":"block","description":"A sapling is a non-solid block that can be grown into a tree.","history":[{"version":"rd-161348","status":"added","notes":"Added saplings as the fifth placeable block in the game."},{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added tree growth."},{"version":"1.5","status":"added","notes":"Added spruce and birch saplings. Before, trees dropped only oak saplings, regardless of the tree."}],"colors":{"primary":"#2d3c25","dominant_hex":"#243424","average_hex":"#2d3c25","hue_group":"green","lightness":0.1902,"saturation":0.2371,"palette":["#243424","#2c4c2c","#3c5c3c","#2c1c0c","#140c04","#54341c"],"color_groups":[{"hex":"#243424","weight":0.3253,"lightness":0.1725,"saturation":0.1818,"hue_group":"green"},{"hex":"#2c4c2c","weight":0.241,"lightness":0.2353,"saturation":0.2667,"hue_group":"green"},{"hex":"#3c5c3c","weight":0.2048,"lightness":0.298,"saturation":0.2105,"hue_group":"green"},{"hex":"#2c1c0c","weight":0.1084,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#140c04","weight":0.0602,"lightness":0.0471,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#54341c","weight":0.0602,"lightness":0.2196,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_sapling.png","family":"spruce","relations":[{"type":"variants","target":"minecraft:spruce_door","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_door","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_fence","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_fence","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_leaves","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_leaves","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_log","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_log","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_planks","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_planks","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_slab","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_slab","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_stairs","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_stairs","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_wood","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_wood","label":"Related set: spruce","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:potted_spruce_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dried_kelp_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sweet_berry_bush","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_fungus","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_emerald_ore","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_spruce_sapling","label":"Palette proche: Potted Spruce Sapling","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sapling","label":"Palette proche: Dark Oak Sapling","confidence":0.748},{"type":"color_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Palette proche: Potted Dark Oak Sapling","confidence":0.748},{"type":"color_neighbors","target":"minecraft:dried_kelp_block","label":"Palette proche: Dried Kelp Block","confidence":0.735},{"type":"color_neighbors","target":"minecraft:oak_sapling","label":"Palette proche: Oak Sapling","confidence":0.73},{"type":"color_neighbors","target":"minecraft:potted_oak_sapling","label":"Palette proche: Potted Oak Sapling","confidence":0.73},{"type":"color_neighbors","target":"minecraft:sweet_berry_bush","label":"Palette proche: Sweet Berry Bush","confidence":0.702},{"type":"color_neighbors","target":"minecraft:rose_bush","label":"Palette proche: Rose Bush","confidence":0.701},{"type":"color_neighbors","target":"minecraft:note_block","label":"Palette proche: Note Block","confidence":0.697},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.695},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.695},{"type":"color_neighbors","target":"minecraft:chiseled_tuff","label":"Palette proche: Chiseled Tuff","confidence":0.693},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.754},{"type":"color_bridge","target":"minecraft:note_block","label":"Pont de nuance par palette: Note Block","confidence":0.751},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.749},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.749},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.747},{"type":"color_bridge","target":"minecraft:dark_oak_door","label":"Pont de nuance par palette: Dark Oak Door","confidence":0.74},{"type":"color_bridge","target":"minecraft:dark_oak_trapdoor","label":"Pont de nuance par palette: Dark Oak Trapdoor","confidence":0.738},{"type":"color_bridge","target":"minecraft:pitcher_plant","label":"Pont de nuance par sous-ton: Pitcher Plant","confidence":0.738},{"type":"color_bridge","target":"minecraft:dark_oak_shelf","label":"Pont de nuance par palette: Dark Oak Shelf","confidence":0.737},{"type":"color_bridge","target":"minecraft:brown_candle","label":"Pont de nuance par palette: Brown Candle","confidence":0.736},{"type":"color_analogous","target":"minecraft:potted_spruce_sapling","label":"Couleurs analogues: Potted Spruce Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:seagrass","label":"Couleurs analogues: Seagrass","confidence":0.96},{"type":"color_analogous","target":"minecraft:tall_seagrass","label":"Couleurs analogues: Tall Seagrass","confidence":0.96},{"type":"color_analogous","target":"minecraft:lily_of_the_valley","label":"Couleurs analogues: Lily Of The Valley","confidence":0.929},{"type":"color_analogous","target":"minecraft:potted_lily_of_the_valley","label":"Couleurs analogues: Potted Lily Of The Valley","confidence":0.929},{"type":"color_analogous","target":"minecraft:dried_kelp_block","label":"Couleurs analogues: Dried Kelp Block","confidence":0.895},{"type":"color_analogous","target":"minecraft:beetroots","label":"Couleurs analogues: Beetroots","confidence":0.848},{"type":"color_analogous","target":"minecraft:sunflower","label":"Couleurs analogues: Sunflower","confidence":0.843},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.913},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.88},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.88},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.86},{"type":"color_complement","target":"minecraft:dragon_egg","label":"Contraste complementaire: Dragon Egg","confidence":0.834},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.832},{"type":"color_complement","target":"minecraft:magenta_stained_glass","label":"Contraste complementaire: Magenta Stained Glass","confidence":0.807},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.799},{"type":"color_triad","target":"minecraft:purple_terracotta","label":"Harmonie triadique: Purple Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_terracotta","label":"Harmonie triadique: Magenta Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:pearlescent_froglight","label":"Harmonie triadique: Pearlescent Froglight","confidence":0.96},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.945},{"type":"color_triad","target":"minecraft:pink_glazed_terracotta","label":"Harmonie triadique: Pink Glazed Terracotta","confidence":0.942},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.936},{"type":"color_triad","target":"minecraft:pink_stained_glass_pane","label":"Harmonie triadique: Pink Stained Glass Pane","confidence":0.935},{"type":"color_triad","target":"minecraft:pink_shulker_box","label":"Harmonie triadique: Pink Shulker Box","confidence":0.931},{"type":"color_square","target":"minecraft:red_terracotta","label":"Harmonie carree: Red Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:glass_pane","label":"Harmonie carree: Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:cyan_concrete","label":"Harmonie carree: Cyan Concrete","confidence":0.95},{"type":"color_square","target":"minecraft:cherry_trapdoor","label":"Harmonie carree: Cherry Trapdoor","confidence":0.924},{"type":"color_square","target":"minecraft:target","label":"Harmonie carree: Target","confidence":0.923},{"type":"color_square","target":"minecraft:nether_gold_ore","label":"Harmonie carree: Nether Gold Ore","confidence":0.917},{"type":"color_square","target":"minecraft:crimson_fungus","label":"Harmonie carree: Crimson Fungus","confidence":0.902},{"type":"color_square","target":"minecraft:potted_crimson_fungus","label":"Harmonie carree: Potted Crimson Fungus","confidence":0.902},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.747},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.713},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.691},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.676},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.676},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.663},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.642},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.639}],"category":"natural"},{"id":"minecraft:spruce_shelf","name":"Spruce Shelf","entry_type":"block","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added shelves."},{"version":"wiki-history","status":"added","notes":"Added the align_items_to_bottom block state property, by default set to false, to display items at the bottom of the shelf rather than in the middle."}],"colors":{"primary":"#685330","dominant_hex":"#64542c","average_hex":"#685330","hue_group":"yellow","lightness":0.298,"saturation":0.3684,"palette":["#64542c","#655434","#584123","#826540","#745c34","#7c5c35"],"color_groups":[{"hex":"#64542c","weight":0.2783,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#655434","weight":0.2754,"lightness":0.3,"saturation":0.3203,"hue_group":"yellow"},{"hex":"#584123","weight":0.1699,"lightness":0.2412,"saturation":0.4309,"hue_group":"yellow"},{"hex":"#826540","weight":0.1035,"lightness":0.3804,"saturation":0.3402,"hue_group":"yellow"},{"hex":"#745c34","weight":0.0869,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#7c5c35","weight":0.0859,"lightness":0.3471,"saturation":0.4011,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_shelf.png","family":"spruce_shelf","relations":[{"type":"visual_neighbors","target":"minecraft:spruce_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_spruce_log","label":"Palette proche: Stripped Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_spruce_wood","label":"Palette proche: Stripped Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.935},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.935},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.931},{"type":"color_neighbors","target":"minecraft:dead_bush","label":"Palette proche: Dead Bush","confidence":0.929},{"type":"color_neighbors","target":"minecraft:potted_dead_bush","label":"Palette proche: Potted Dead Bush","confidence":0.929},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.927},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.927},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.856},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.838},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.832},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.815},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.812},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.812},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.811},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.811},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.802},{"type":"color_analogous","target":"minecraft:oak_trapdoor","label":"Couleurs analogues: Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_log","label":"Couleurs analogues: Mangrove Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wood","label":"Couleurs analogues: Mangrove Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:bookshelf","label":"Couleurs analogues: Bookshelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_shelf","label":"Couleurs analogues: Oak Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:crafting_table","label":"Couleurs analogues: Crafting Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_log","label":"Couleurs analogues: Dark Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_wood","label":"Couleurs analogues: Dark Oak Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.931},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.916},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.899},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.892},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.849},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.833},{"type":"color_triad","target":"minecraft:oxidized_copper_bars","label":"Harmonie triadique: Oxidized Copper Bars","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_bars","label":"Harmonie triadique: Waxed Oxidized Copper Bars","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_bulb","label":"Harmonie triadique: Oxidized Copper Bulb","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_bulb","label":"Harmonie triadique: Waxed Oxidized Copper Bulb","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper","label":"Harmonie triadique: Oxidized Cut Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper_slab","label":"Harmonie triadique: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_cut_copper_stairs","label":"Harmonie triadique: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_cut_copper","label":"Harmonie triadique: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.929},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.885},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.885},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.883},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.863},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.846},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.795},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.65},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.616},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.603},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.603},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.603},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.603},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.594},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.568}],"category":""},{"id":"minecraft:spruce_sign","name":"Spruce Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#735531","dominant_hex":"#84643c","average_hex":"#735531","hue_group":"yellow","lightness":0.3216,"saturation":0.4024,"palette":["#84643c","#7c5c34","#74542c","#5f4727","#8c643c","#543c1c"],"color_groups":[{"hex":"#84643c","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"},{"hex":"#7c5c34","weight":0.1875,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#74542c","weight":0.1836,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#5f4727","weight":0.1641,"lightness":0.2627,"saturation":0.4179,"hue_group":"yellow"},{"hex":"#8c643c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#543c1c","weight":0.1133,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_planks.png","family":"spruce_sign","relations":[{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wall_sign","label":"Palette proche: Spruce Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.934},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.828},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.812},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.791},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.787},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.783},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.783},{"type":"color_analogous","target":"minecraft:spruce_button","label":"Couleurs analogues: Spruce Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence","label":"Couleurs analogues: Spruce Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence_gate","label":"Couleurs analogues: Spruce Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_planks","label":"Couleurs analogues: Spruce Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_pressure_plate","label":"Couleurs analogues: Spruce Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_slab","label":"Couleurs analogues: Spruce Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_stairs","label":"Couleurs analogues: Spruce Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_sign","label":"Couleurs analogues: Spruce Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.959},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.819},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.793},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.76},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.743},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.738},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.738},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.952},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.93},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.928},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.929},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.925},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.914},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.895},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.627},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.593},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.582},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.571},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":"building"},{"id":"minecraft:spruce_slab","name":"Spruce Slab","entry_type":"block","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","history":[{"version":"1.7.2 1.7","status":"added","notes":"Added acacia and dark oak slabs."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped slabs."}],"colors":{"primary":"#735531","dominant_hex":"#84643c","average_hex":"#735531","hue_group":"yellow","lightness":0.3216,"saturation":0.4024,"palette":["#84643c","#7c5c34","#74542c","#5f4727","#8c643c","#543c1c"],"color_groups":[{"hex":"#84643c","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"},{"hex":"#7c5c34","weight":0.1875,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#74542c","weight":0.1836,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#5f4727","weight":0.1641,"lightness":0.2627,"saturation":0.4179,"hue_group":"yellow"},{"hex":"#8c643c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#543c1c","weight":0.1133,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_planks.png","family":"spruce","relations":[{"type":"variants","target":"minecraft:spruce_door","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_door","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_fence","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_fence","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_leaves","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_leaves","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_log","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_log","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_planks","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_planks","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_sapling","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_sapling","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_stairs","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_stairs","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_wood","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_wood","label":"Related set: spruce","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wall_sign","label":"Palette proche: Spruce Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.934},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.828},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.812},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.791},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.787},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.783},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.783},{"type":"color_analogous","target":"minecraft:spruce_button","label":"Couleurs analogues: Spruce Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence","label":"Couleurs analogues: Spruce Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence_gate","label":"Couleurs analogues: Spruce Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_planks","label":"Couleurs analogues: Spruce Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_pressure_plate","label":"Couleurs analogues: Spruce Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_sign","label":"Couleurs analogues: Spruce Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_stairs","label":"Couleurs analogues: Spruce Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_sign","label":"Couleurs analogues: Spruce Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.959},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.819},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.793},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.76},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.743},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.738},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.738},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.952},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.93},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.928},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.929},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.925},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.914},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.895},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.627},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.593},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.582},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.571},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":"building"},{"id":"minecraft:spruce_stairs","name":"Spruce Stairs","entry_type":"block","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","history":[{"version":"20100629","status":"added","notes":"Added \"wooden\" stairs."},{"version":"1.3.1 12w25a","status":"added","notes":"Added wooden stairs for the remaining three wood types (spruce, birch, and jungle)."},{"version":"12w26a","status":"added","notes":"Added crafting recipes for spruce, birch, and jungle wood stairs."}],"colors":{"primary":"#735531","dominant_hex":"#84643c","average_hex":"#735531","hue_group":"yellow","lightness":0.3216,"saturation":0.4024,"palette":["#84643c","#7c5c34","#74542c","#5f4727","#8c643c","#543c1c"],"color_groups":[{"hex":"#84643c","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"},{"hex":"#7c5c34","weight":0.1875,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#74542c","weight":0.1836,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#5f4727","weight":0.1641,"lightness":0.2627,"saturation":0.4179,"hue_group":"yellow"},{"hex":"#8c643c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#543c1c","weight":0.1133,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_planks.png","family":"spruce","relations":[{"type":"variants","target":"minecraft:spruce_door","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_door","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_fence","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_fence","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_leaves","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_leaves","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_log","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_log","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_planks","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_planks","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_sapling","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_sapling","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_slab","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_slab","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_wood","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_wood","label":"Related set: spruce","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wall_sign","label":"Palette proche: Spruce Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.934},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.828},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.812},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.791},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.787},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.783},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.783},{"type":"color_analogous","target":"minecraft:spruce_button","label":"Couleurs analogues: Spruce Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence","label":"Couleurs analogues: Spruce Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence_gate","label":"Couleurs analogues: Spruce Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_planks","label":"Couleurs analogues: Spruce Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_pressure_plate","label":"Couleurs analogues: Spruce Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_sign","label":"Couleurs analogues: Spruce Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_slab","label":"Couleurs analogues: Spruce Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_sign","label":"Couleurs analogues: Spruce Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.959},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.819},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.793},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.76},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.743},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.738},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.738},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.952},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.93},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.928},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.929},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.925},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.914},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.895},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.627},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.593},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.582},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.571},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":"building"},{"id":"minecraft:spruce_trapdoor","name":"Spruce Trapdoor","entry_type":"block","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","history":[{"version":"1.6","status":"added","notes":"Added wooden trapdoors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped trapdoors."}],"colors":{"primary":"#684f30","dominant_hex":"#805c34","average_hex":"#684f30","hue_group":"yellow","lightness":0.298,"saturation":0.3684,"palette":["#805c34","#644c2c","#6c5434","#4b3b26","#5c4424","#6c6c6c"],"color_groups":[{"hex":"#805c34","weight":0.293,"lightness":0.3529,"saturation":0.4222,"hue_group":"yellow"},{"hex":"#644c2c","weight":0.1953,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#6c5434","weight":0.168,"lightness":0.3137,"saturation":0.35,"hue_group":"yellow"},{"hex":"#4b3b26","weight":0.1602,"lightness":0.2216,"saturation":0.3274,"hue_group":"yellow"},{"hex":"#5c4424","weight":0.1445,"lightness":0.251,"saturation":0.4375,"hue_group":"yellow"},{"hex":"#6c6c6c","weight":0.0391,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_trapdoor.png","family":"spruce_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:spruce_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:moss_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.932},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.932},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.932},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.932},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.932},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.932},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.932},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.932},{"type":"color_neighbors","target":"minecraft:spruce_wall_sign","label":"Palette proche: Spruce Wall Sign","confidence":0.932},{"type":"color_neighbors","target":"minecraft:spruce_shelf","label":"Palette proche: Spruce Shelf","confidence":0.931},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.89},{"type":"color_bridge","target":"minecraft:stonecutter","label":"Pont de nuance par palette: Stonecutter","confidence":0.86},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.841},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.838},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.835},{"type":"color_bridge","target":"minecraft:iron_ore","label":"Pont de nuance par sous-ton: Iron Ore","confidence":0.831},{"type":"color_bridge","target":"minecraft:smoker","label":"Pont de nuance par palette: Smoker","confidence":0.825},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.819},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.814},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.814},{"type":"color_analogous","target":"minecraft:spruce_door","label":"Couleurs analogues: Spruce Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_button","label":"Couleurs analogues: Spruce Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence","label":"Couleurs analogues: Spruce Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence_gate","label":"Couleurs analogues: Spruce Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_planks","label":"Couleurs analogues: Spruce Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_pressure_plate","label":"Couleurs analogues: Spruce Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_sign","label":"Couleurs analogues: Spruce Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_slab","label":"Couleurs analogues: Spruce Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.838},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.806},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.773},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.756},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.75},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.741},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.952},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.944},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.947},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.945},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.942},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.918},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.918},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.913},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.912},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.891},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.65},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.617},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.605},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.605},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.605},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.605},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.594},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.57}],"category":"building"},{"id":"minecraft:spruce_wall_hanging_sign","name":"Spruce Wall Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#745a34","dominant_hex":"#7c5c34","average_hex":"#745a34","hue_group":"yellow","lightness":0.3294,"saturation":0.381,"palette":["#7c5c34","#645434","#84643c","#735c34","#64542c","#7c5c3c"],"color_groups":[{"hex":"#7c5c34","weight":0.3047,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#645434","weight":0.2422,"lightness":0.298,"saturation":0.3158,"hue_group":"yellow"},{"hex":"#84643c","weight":0.1992,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"},{"hex":"#735c34","weight":0.1484,"lightness":0.3275,"saturation":0.3772,"hue_group":"yellow"},{"hex":"#64542c","weight":0.0859,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c5c3c","weight":0.0195,"lightness":0.3608,"saturation":0.3478,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_spruce_log.png","family":"spruce_wall_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_spruce_log","label":"Palette proche: Stripped Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_spruce_wood","label":"Palette proche: Stripped Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_shelf","label":"Palette proche: Spruce Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.934},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.839},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.822},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.822},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.816},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.816},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.815},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.81},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.81},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.809},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_log","label":"Couleurs analogues: Stripped Spruce Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_wood","label":"Couleurs analogues: Stripped Spruce Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_log","label":"Couleurs analogues: Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wood","label":"Couleurs analogues: Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:ladder","label":"Couleurs analogues: Ladder","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_trapdoor","label":"Couleurs analogues: Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:bookshelf","label":"Couleurs analogues: Bookshelf","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.917},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.913},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.896},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.888},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.855},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.838},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.831},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.822},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.945},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.945},{"type":"color_triad","target":"minecraft:purple_carpet","label":"Harmonie triadique: Purple Carpet","confidence":0.943},{"type":"color_triad","target":"minecraft:purple_wool","label":"Harmonie triadique: Purple Wool","confidence":0.943},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.958},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.942},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.926},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.874},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.852},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.62},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.586},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.574},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.574},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.574},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.574},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.564},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":"building"},{"id":"minecraft:spruce_wall_sign","name":"Spruce Wall Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#735531","dominant_hex":"#84643c","average_hex":"#735531","hue_group":"yellow","lightness":0.3216,"saturation":0.4024,"palette":["#84643c","#7c5c34","#74542c","#5f4727","#8c643c","#543c1c"],"color_groups":[{"hex":"#84643c","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"},{"hex":"#7c5c34","weight":0.1875,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#74542c","weight":0.1836,"lightness":0.3137,"saturation":0.45,"hue_group":"yellow"},{"hex":"#5f4727","weight":0.1641,"lightness":0.2627,"saturation":0.4179,"hue_group":"yellow"},{"hex":"#8c643c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#543c1c","weight":0.1133,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_planks.png","family":"spruce_wall_sign","relations":[{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.935},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.934},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.828},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.812},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.791},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.791},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.789},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.787},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.783},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.783},{"type":"color_analogous","target":"minecraft:spruce_button","label":"Couleurs analogues: Spruce Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence","label":"Couleurs analogues: Spruce Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_fence_gate","label":"Couleurs analogues: Spruce Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_planks","label":"Couleurs analogues: Spruce Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_pressure_plate","label":"Couleurs analogues: Spruce Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_sign","label":"Couleurs analogues: Spruce Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_slab","label":"Couleurs analogues: Spruce Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_stairs","label":"Couleurs analogues: Spruce Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.959},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.819},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.793},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.76},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.743},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.738},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.738},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.952},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.93},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.928},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.929},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.925},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.914},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.895},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.895},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.627},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.593},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.582},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.582},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.571},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":"building"},{"id":"minecraft:spruce_wood","name":"Spruce Wood","entry_type":"block","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","history":[{"version":"1.3.1 12w30d","status":"added","notes":"Added six-sided wood blocks, which look similar to logs , but have the wood's \"bark\" texture (side texture when placed vertically) on all 6 sides."},{"version":"1.7.2 13w43a","status":"added","notes":"Added two new types of wood: acacia and dark oak."},{"version":"1","status":"added","notes":"Added top textures of the bark blocks."}],"colors":{"primary":"#3b2611","dominant_hex":"#3c2414","average_hex":"#3b2611","hue_group":"yellow","lightness":0.149,"saturation":0.5526,"palette":["#3c2414","#4c3414","#2c1c0c","#341c0c","#2c140c","#543c1c"],"color_groups":[{"hex":"#3c2414","weight":0.4219,"lightness":0.1569,"saturation":0.5,"hue_group":"red"},{"hex":"#4c3414","weight":0.1641,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1484,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#341c0c","weight":0.1445,"lightness":0.1255,"saturation":0.625,"hue_group":"red"},{"hex":"#2c140c","weight":0.0742,"lightness":0.1098,"saturation":0.5714,"hue_group":"red"},{"hex":"#543c1c","weight":0.0469,"lightness":0.2196,"saturation":0.5,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/spruce_log.png","family":"spruce","relations":[{"type":"variants","target":"minecraft:spruce_door","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_door","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_fence","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_fence","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_leaves","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_leaves","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_log","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_log","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_planks","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_planks","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_sapling","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_sapling","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_slab","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_slab","label":"Related set: spruce","confidence":0.8},{"type":"variants","target":"minecraft:spruce_stairs","label":"Same family: spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:spruce_stairs","label":"Related set: spruce","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cartography_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:podzol","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_log","label":"Palette proche: Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_button","label":"Palette proche: Dark Oak Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence","label":"Palette proche: Dark Oak Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_fence_gate","label":"Palette proche: Dark Oak Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_planks","label":"Palette proche: Dark Oak Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_pressure_plate","label":"Palette proche: Dark Oak Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_sign","label":"Palette proche: Dark Oak Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_slab","label":"Palette proche: Dark Oak Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_stairs","label":"Palette proche: Dark Oak Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_sign","label":"Palette proche: Dark Oak Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cartography_table","label":"Palette proche: Cartography Table","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_trapdoor","label":"Palette proche: Dark Oak Trapdoor","confidence":0.938},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.739},{"type":"color_bridge","target":"minecraft:cave_vines_plant","label":"Pont de nuance par palette: Cave Vines Plant","confidence":0.738},{"type":"color_bridge","target":"minecraft:potted_spruce_sapling","label":"Pont de nuance par palette: Potted Spruce Sapling","confidence":0.73},{"type":"color_bridge","target":"minecraft:spruce_sapling","label":"Pont de nuance par palette: Spruce Sapling","confidence":0.73},{"type":"color_bridge","target":"minecraft:dark_oak_sapling","label":"Pont de nuance par palette: Dark Oak Sapling","confidence":0.724},{"type":"color_bridge","target":"minecraft:potted_dark_oak_sapling","label":"Pont de nuance par palette: Potted Dark Oak Sapling","confidence":0.724},{"type":"color_bridge","target":"minecraft:oak_sapling","label":"Pont de nuance par palette: Oak Sapling","confidence":0.722},{"type":"color_bridge","target":"minecraft:potted_oak_sapling","label":"Pont de nuance par palette: Potted Oak Sapling","confidence":0.722},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.706},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.704},{"type":"color_analogous","target":"minecraft:spruce_log","label":"Couleurs analogues: Spruce Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:cartography_table","label":"Couleurs analogues: Cartography Table","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_button","label":"Couleurs analogues: Dark Oak Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence","label":"Couleurs analogues: Dark Oak Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_fence_gate","label":"Couleurs analogues: Dark Oak Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_planks","label":"Couleurs analogues: Dark Oak Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_pressure_plate","label":"Couleurs analogues: Dark Oak Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_sign","label":"Couleurs analogues: Dark Oak Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.891},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.882},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.844},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.844},{"type":"color_complement","target":"minecraft:void_air","label":"Contraste complementaire: Void Air","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.772},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.75},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.75},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.906},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.906},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.902},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.902},{"type":"color_triad","target":"minecraft:crying_obsidian","label":"Harmonie triadique: Crying Obsidian","confidence":0.895},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.885},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.884},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.884},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.96},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.96},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.932},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.828},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.826},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.815},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.787},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.753},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.742},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.742},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.742},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.742},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.731},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.708}],"category":"building"},{"id":"minecraft:spyglass","name":"Spyglass","entry_type":"item","description":"A spyglass is a utility item used to zoom in on distant objects.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added spyglasses."}],"colors":{"primary":"#906f44","dominant_hex":"#b2622e","average_hex":"#906f44","hue_group":"yellow","lightness":0.4157,"saturation":0.3585,"palette":["#b2622e","#643225","#cddb90","#dc943c","#341414","#287c7c"],"color_groups":[{"hex":"#b2622e","weight":0.2442,"lightness":0.4392,"saturation":0.5893,"hue_group":"red"},{"hex":"#643225","weight":0.2326,"lightness":0.2686,"saturation":0.4599,"hue_group":"red"},{"hex":"#cddb90","weight":0.1977,"lightness":0.7118,"saturation":0.5102,"hue_group":"yellow"},{"hex":"#dc943c","weight":0.1279,"lightness":0.549,"saturation":0.6957,"hue_group":"yellow"},{"hex":"#341414","weight":0.1047,"lightness":0.1412,"saturation":0.4444,"hue_group":"red"},{"hex":"#287c7c","weight":0.093,"lightness":0.3216,"saturation":0.5122,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/spyglass.png","family":"spyglass","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:rabbit_hide","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroot_seeds","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:experience_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:poisonous_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:squid","name":"Squid","entry_type":"mob","description":"A squid is a common aquatic passive mob that spawns in rivers and oceans, and are the main sources of ink sacs, which they drop upon death.","history":[{"version":"1.2","status":"added","notes":"Added squid."},{"version":"wiki-history","status":"added","notes":"added to the game."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash squid."}],"colors":{"primary":"#354858","dominant_hex":"#142434","average_hex":"#354858","hue_group":"cyan","lightness":0.2765,"saturation":0.2482,"palette":["#142434","#5d748a","#243c4c","#3c5464","#751313","#44647c"],"color_groups":[{"hex":"#142434","weight":0.3452,"lightness":0.1412,"saturation":0.4444,"hue_group":"blue"},{"hex":"#5d748a","weight":0.3005,"lightness":0.4529,"saturation":0.1948,"hue_group":"cyan"},{"hex":"#243c4c","weight":0.1515,"lightness":0.2196,"saturation":0.3571,"hue_group":"cyan"},{"hex":"#3c5464","weight":0.1449,"lightness":0.3137,"saturation":0.25,"hue_group":"cyan"},{"hex":"#751313","weight":0.0406,"lightness":0.2667,"saturation":0.7206,"hue_group":"red"},{"hex":"#44647c","weight":0.0174,"lightness":0.3765,"saturation":0.2917,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/squid/squid.png","family":"squid","relations":[{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_bioluminescent_layer","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_1","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_2","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:squid_spawn_egg","name":"Squid Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#445971","dominant_hex":"#506b85","average_hex":"#445971","hue_group":"blue","lightness":0.3549,"saturation":0.2486,"palette":["#506b85","#1d3343","#2e4a80","#344c5c","#789fb5","#7f0f0f"],"color_groups":[{"hex":"#506b85","weight":0.3333,"lightness":0.4176,"saturation":0.2488,"hue_group":"cyan"},{"hex":"#1d3343","weight":0.1867,"lightness":0.1882,"saturation":0.3958,"hue_group":"cyan"},{"hex":"#2e4a80","weight":0.1733,"lightness":0.3412,"saturation":0.4713,"hue_group":"blue"},{"hex":"#344c5c","weight":0.1267,"lightness":0.2824,"saturation":0.2778,"hue_group":"cyan"},{"hex":"#789fb5","weight":0.1267,"lightness":0.5902,"saturation":0.2919,"hue_group":"cyan"},{"hex":"#7f0f0f","weight":0.0533,"lightness":0.2784,"saturation":0.7887,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/squid_spawn_egg.png","family":"squid_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:mace","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ominous_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_armor_trim_smithing_template","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:stick","name":"Stick","entry_type":"item","description":"A stick is an item used for crafting many tools and items.","history":[{"version":"0.31 20100129-1447","status":"added","notes":"Added sticks."},{"version":"20100219","status":"added","notes":"added furnace ."}],"colors":{"primary":"#4c3916","dominant_hex":"#2c1c0c","average_hex":"#4c3916","hue_group":"yellow","lightness":0.1922,"saturation":0.551,"palette":["#2c1c0c","#4c3414","#8c6424","#6c4c1c"],"color_groups":[{"hex":"#2c1c0c","weight":0.3784,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.3243,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#8c6424","weight":0.1892,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"},{"hex":"#6c4c1c","weight":0.1081,"lightness":0.2667,"saturation":0.5882,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/stick.png","family":"stick","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:debug_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:sticky_piston","name":"Sticky Piston","entry_type":"block","description":"A sticky piston is a variant of the piston that can additionally pull most blocks when it retracts.","history":[{"version":"1.7","status":"added","notes":"Added sticky pistons, alongside associated head and moving blocks."},{"version":"18w46a","status":"added","notes":"Added support for directional opacity of blocks. As such, extended sticky pistons now allow light to only pass through certain faces."},{"version":"1.15 19w41a","status":"added","notes":"Added honey blocks, which have multiple different types of interactions with sticky pistons."}],"colors":{"primary":"#6e6961","dominant_hex":"#9b8f7a","average_hex":"#6e6961","hue_group":"neutral","lightness":0.4059,"saturation":0.0628,"palette":["#9b8f7a","#59554d","#757473","#6c6c6c","#444444","#313131"],"color_groups":[{"hex":"#9b8f7a","weight":0.3047,"lightness":0.5431,"saturation":0.1416,"hue_group":"yellow"},{"hex":"#59554d","weight":0.2148,"lightness":0.3255,"saturation":0.0723,"hue_group":"neutral"},{"hex":"#757473","weight":0.1523,"lightness":0.4549,"saturation":0.0086,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.125,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#444444","weight":0.1133,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#313131","weight":0.0898,"lightness":0.1922,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/piston_side.png","family":"sticky_piston","relations":[{"type":"visual_neighbors","target":"minecraft:moving_piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piston_head","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crafter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mycelium","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:moving_piston","label":"Palette proche: Moving Piston","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piston","label":"Palette proche: Piston","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piston_head","label":"Palette proche: Piston Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.9},{"type":"color_neighbors","target":"minecraft:dead_tube_coral","label":"Palette proche: Dead Tube Coral","confidence":0.898},{"type":"color_neighbors","target":"minecraft:dropper","label":"Palette proche: Dropper","confidence":0.897},{"type":"color_neighbors","target":"minecraft:smoker","label":"Palette proche: Smoker","confidence":0.897},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.896},{"type":"color_neighbors","target":"minecraft:acacia_log","label":"Palette proche: Acacia Log","confidence":0.895},{"type":"color_neighbors","target":"minecraft:acacia_wood","label":"Palette proche: Acacia Wood","confidence":0.895},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.893},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.892},{"type":"color_bridge","target":"minecraft:moving_piston","label":"Pont de nuance par palette: Moving Piston","confidence":0.86},{"type":"color_bridge","target":"minecraft:piston","label":"Pont de nuance par palette: Piston","confidence":0.86},{"type":"color_bridge","target":"minecraft:piston_head","label":"Pont de nuance par palette: Piston Head","confidence":0.86},{"type":"color_bridge","target":"minecraft:dispenser","label":"Pont de nuance par palette: Dispenser","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral","label":"Pont de nuance par palette: Dead Tube Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:dropper","label":"Pont de nuance par palette: Dropper","confidence":0.86},{"type":"color_bridge","target":"minecraft:smoker","label":"Pont de nuance par palette: Smoker","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.556},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55}],"category":"redstone"},{"id":"minecraft:stone","name":"Stone","entry_type":"block","description":"Stone is a block found underground in the Overworld or on the surface of mountains.","history":[{"version":"Cave game tech test","status":"added","notes":"Added stone, known as \"rock\" internally."},{"version":"1.9 15w37a","status":"added","notes":"added void start platforms ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stone, providing the football/regular effect to the mob."}],"colors":{"primary":"#7e7e7e","dominant_hex":"#7c7c7c","average_hex":"#7e7e7e","hue_group":"neutral","lightness":0.4941,"saturation":0.0,"palette":["#7c7c7c","#747474","#8c8c8c","#6c6c6c"],"color_groups":[{"hex":"#7c7c7c","weight":0.4609,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.2773,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1953,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0664,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stone.png","family":"stone","relations":[{"type":"variants","target":"minecraft:stone_slab","label":"Same family: stone","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_slab","label":"Related set: stone","confidence":0.8},{"type":"variants","target":"minecraft:stone_stairs","label":"Same family: stone","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_stairs","label":"Related set: stone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_stairs","label":"Pont de nuance par palette: Stone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"natural"},{"id":"minecraft:stone_axe","name":"Stone Axe","entry_type":"item","description":"A stone axe is a variant of axe that is crafted from cobblestone. It can be used to cut down trees faster, to strip logs and scrape copper-based blocks, and as a melee weapon that disables shields. It is the fifth-highest tier of axe, having higher mining efficiency, attack damage, and durability than a wooden axe.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added stone axes."},{"version":"wiki-history","status":"added","notes":"added to the item chest in the Indev house."},{"version":"3","status":"added","notes":"added for stone axes, which adds 1 damage and 0.5 seconds (10 game ticks ) of shield stunning per level and is mutually exclusive with Sharpness ."}],"colors":{"primary":"#574e3f","dominant_hex":"#573d17","average_hex":"#574e3f","hue_group":"yellow","lightness":0.2941,"saturation":0.16,"palette":["#573d17","#7c7c7c","#2c1c0c","#5f5340","#1c1c1c","#9c9c9c"],"color_groups":[{"hex":"#573d17","weight":0.2333,"lightness":0.2157,"saturation":0.5818,"hue_group":"yellow"},{"hex":"#7c7c7c","weight":0.2333,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c1c0c","weight":0.1667,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#5f5340","weight":0.1667,"lightness":0.3118,"saturation":0.195,"hue_group":"yellow"},{"hex":"#1c1c1c","weight":0.1167,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.0833,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/stone_axe.png","family":"stone_tools","relations":[{"type":"variants","target":"minecraft:stone_hoe","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_hoe","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_pickaxe","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_pickaxe","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_shovel","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_shovel","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_sword","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_sword","label":"Related set: stone_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:stone_tools","label":"Related set: stone_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fishing_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:command_block_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:stone_brick_slab","name":"Stone Brick Slab","entry_type":"block","description":"A stone brick slab is a decorative slab variant of stone bricks that generates in overworld structures and is used for building.","history":[{"version":"1.8","status":"added","notes":"Added stone bricks slabs."}],"colors":{"primary":"#7a7a7a","dominant_hex":"#696969","average_hex":"#7a7a7a","hue_group":"neutral","lightness":0.4784,"saturation":0.0,"palette":["#696969","#7c7c7c","#8c8c8c","#7c747c","#9c9c9c","#5c5c5c"],"color_groups":[{"hex":"#696969","weight":0.2383,"lightness":0.4118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.2344,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1641,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c747c","weight":0.1523,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.1211,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0898,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stone_bricks.png","family":"stone_brick","relations":[{"type":"variants","target":"minecraft:stone_brick_stairs","label":"Same family: stone_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_brick_stairs","label":"Related set: stone_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:infested_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bush","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_bricks","label":"Palette proche: Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_stairs","label":"Pont de nuance par palette: Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_wall","label":"Pont de nuance par palette: Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_bricks","label":"Pont de nuance par palette: Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"building"},{"id":"minecraft:stone_brick_stairs","name":"Stone Brick Stairs","entry_type":"block","description":"Stone brick stairs are a decorative stairs variant of stone bricks that generate in overworld structures and are used for building.","history":[{"version":"1.8","status":"added","notes":"Added stone brick stairs."}],"colors":{"primary":"#7a7a7a","dominant_hex":"#696969","average_hex":"#7a7a7a","hue_group":"neutral","lightness":0.4784,"saturation":0.0,"palette":["#696969","#7c7c7c","#8c8c8c","#7c747c","#9c9c9c","#5c5c5c"],"color_groups":[{"hex":"#696969","weight":0.2383,"lightness":0.4118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.2344,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1641,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c747c","weight":0.1523,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.1211,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0898,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stone_bricks.png","family":"stone_brick","relations":[{"type":"variants","target":"minecraft:stone_brick_slab","label":"Same family: stone_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_brick_slab","label":"Related set: stone_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:infested_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bush","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_bricks","label":"Palette proche: Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_wall","label":"Pont de nuance par palette: Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_bricks","label":"Pont de nuance par palette: Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"building"},{"id":"minecraft:stone_brick_wall","name":"Stone Brick Wall","entry_type":"block","description":"A stone brick wall is a decorative wall variant of stone bricks that generates in ruined portals and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added stone brick walls."}],"colors":{"primary":"#7a7a7a","dominant_hex":"#696969","average_hex":"#7a7a7a","hue_group":"neutral","lightness":0.4784,"saturation":0.0,"palette":["#696969","#7c7c7c","#8c8c8c","#7c747c","#9c9c9c","#5c5c5c"],"color_groups":[{"hex":"#696969","weight":0.2383,"lightness":0.4118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.2344,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1641,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c747c","weight":0.1523,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.1211,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0898,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stone_bricks.png","family":"stone_brick_wall","relations":[{"type":"visual_neighbors","target":"minecraft:infested_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bush","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_bricks","label":"Palette proche: Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_stairs","label":"Pont de nuance par palette: Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_bricks","label":"Pont de nuance par palette: Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"building"},{"id":"minecraft:stone_bricks","name":"Stone Bricks","entry_type":"block","description":"Stone bricks are a block found in various structures. It has three other variants: mossy stone bricks, cracked stone bricks, and chiseled stone bricks.","history":[{"version":"1.7","status":"added","notes":"added to the language file (en_US.lang)."},{"version":"1.8","status":"added","notes":"Added stone bricks."},{"version":"1.8 14w02a","status":"added","notes":"added for mossy stone bricks, using regular stone bricks."}],"colors":{"primary":"#7a7a7a","dominant_hex":"#696969","average_hex":"#7a7a7a","hue_group":"neutral","lightness":0.4784,"saturation":0.0,"palette":["#696969","#7c7c7c","#8c8c8c","#7c747c","#9c9c9c","#5c5c5c"],"color_groups":[{"hex":"#696969","weight":0.2383,"lightness":0.4118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.2344,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1641,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c747c","weight":0.1523,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"},{"hex":"#9c9c9c","weight":0.1211,"lightness":0.6118,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.0898,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stone_bricks.png","family":"stone_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:infested_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bush","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_stone_bricks","label":"Palette proche: Infested Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_slab","label":"Palette proche: Stone Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_stairs","label":"Palette proche: Stone Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_brick_wall","label":"Palette proche: Stone Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Palette proche: Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Palette proche: Infested Chiseled Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cracked_stone_bricks","label":"Palette proche: Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Palette proche: Infested Cracked Stone Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_bridge","target":"minecraft:infested_stone_bricks","label":"Pont de nuance par palette: Infested Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_slab","label":"Pont de nuance par palette: Stone Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_stairs","label":"Pont de nuance par palette: Stone Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_brick_wall","label":"Pont de nuance par palette: Stone Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_stone_bricks","label":"Pont de nuance par palette: Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_chiseled_stone_bricks","label":"Pont de nuance par palette: Infested Chiseled Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:cracked_stone_bricks","label":"Pont de nuance par palette: Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_cracked_stone_bricks","label":"Pont de nuance par palette: Infested Cracked Stone Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"building"},{"id":"minecraft:stone_button","name":"Stone Button","entry_type":"block","description":"A stone button is a variant of the button, a non-solid block that produces a temporary redstone signal when pressed by a player or when hit by a wind charge.","history":[{"version":"v1.0.1","status":"added","notes":"Added buttons, which can be placed on the sides of blocks."}],"colors":{"primary":"#7e7e7e","dominant_hex":"#7c7c7c","average_hex":"#7e7e7e","hue_group":"neutral","lightness":0.4941,"saturation":0.0,"palette":["#7c7c7c","#747474","#8c8c8c","#6c6c6c"],"color_groups":[{"hex":"#7c7c7c","weight":0.4609,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.2773,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1953,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0664,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stone.png","family":"stone_button","relations":[{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_stairs","label":"Pont de nuance par palette: Stone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"building"},{"id":"minecraft:stone_hoe","name":"Stone Hoe","entry_type":"item","description":"A stone hoe is a variant of hoe that is crafted from cobblestone. It is used to till dirt-related blocks into farmland, and to break leaves, haybales, and sculk-related blocks faster. It is the fifth-highest tier of hoe, having higher mining efficiency, attack speed, and durability than a wooden hoe.","history":[{"version":"20100206-2034","status":"added","notes":"Added stone hoe."},{"version":"15w50a","status":"added","notes":"Added a sound for hoes: item.hoe.till ."}],"colors":{"primary":"#4e4433","dominant_hex":"#1c1c1c","average_hex":"#4e4433","hue_group":"yellow","lightness":0.2529,"saturation":0.2093,"palette":["#1c1c1c","#4c3414","#878787","#4c4c4c","#6c4c1c","#8c6424"],"color_groups":[{"hex":"#1c1c1c","weight":0.3137,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c3414","weight":0.1961,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#878787","weight":0.1765,"lightness":0.5294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1176,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c4c1c","weight":0.098,"lightness":0.2667,"saturation":0.5882,"hue_group":"yellow"},{"hex":"#8c6424","weight":0.098,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/stone_hoe.png","family":"stone_tools","relations":[{"type":"variants","target":"minecraft:stone_axe","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_axe","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_pickaxe","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_pickaxe","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_shovel","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_shovel","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_sword","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_sword","label":"Related set: stone_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:stone_tools","label":"Related set: stone_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:stone_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fishing_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:stone_pickaxe","name":"Stone Pickaxe","entry_type":"item","description":"A stone pickaxe is a variant of pickaxe that is crafted from cobblestone, blackstone, or cobbled deepslate. It is the fifth-highest tier of pickaxe, having higher mining efficiency, durability, and attack damage than a wooden pickaxe. It has a mining level of 1, allowing it to mine copper ore, iron ore, and lapis lazuli ore.","history":[{"version":"wiki","status":"observed","notes":"Wiki revision 3527322 at 2026-04-10T20:29:42Z."}],"colors":{"primary":"#4e4535","dominant_hex":"#573c17","average_hex":"#4e4535","hue_group":"yellow","lightness":0.2569,"saturation":0.1908,"palette":["#573c17","#1c1c1c","#65553d","#2c1c0c","#7c7c7c","#919191"],"color_groups":[{"hex":"#573c17","weight":0.2206,"lightness":0.2157,"saturation":0.5818,"hue_group":"yellow"},{"hex":"#1c1c1c","weight":0.2059,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#65553d","weight":0.1912,"lightness":0.3176,"saturation":0.2469,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1618,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#7c7c7c","weight":0.1176,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#919191","weight":0.1029,"lightness":0.5686,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/stone_pickaxe.png","family":"stone_tools","relations":[{"type":"variants","target":"minecraft:stone_axe","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_axe","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_hoe","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_hoe","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_shovel","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_shovel","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_sword","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_sword","label":"Related set: stone_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:stone_tools","label":"Related set: stone_tools","confidence":0.85},{"type":"related_sets","target":"group:pickaxes","label":"Related set: pickaxes","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:stone_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fishing_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:stone_pressure_plate","name":"Stone Pressure Plate","entry_type":"block","description":"A stone pressure plate is a stone variant of the pressure plate that can detect only players and mobs.","history":[{"version":"v1.0.1","status":"added","notes":"Added stone pressure plates."}],"colors":{"primary":"#7e7e7e","dominant_hex":"#7c7c7c","average_hex":"#7e7e7e","hue_group":"neutral","lightness":0.4941,"saturation":0.0,"palette":["#7c7c7c","#747474","#8c8c8c","#6c6c6c"],"color_groups":[{"hex":"#7c7c7c","weight":0.4609,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.2773,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1953,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0664,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stone.png","family":"stone_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_stairs","label":"Pont de nuance par palette: Stone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"building"},{"id":"minecraft:stone_shovel","name":"Stone Shovel","entry_type":"item","description":"A stone shovel is a variant of shovel that is crafted from cobblestone. It is used to break dirt, sand, gravel and other related blocks faster, to create dirt paths from dirt-related blocks, and to extinguish campfires. It is the fifth-highest tier of shovel, having higher mining efficiency, attack damage, and durability than a wooden shovel.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added stone shovels."},{"version":"wiki-history","status":"added","notes":"added to the item chest in the Indev house."},{"version":"15w50a","status":"added","notes":"added to stone shovels."}],"colors":{"primary":"#59503f","dominant_hex":"#909090","average_hex":"#59503f","hue_group":"yellow","lightness":0.298,"saturation":0.1711,"palette":["#909090","#523815","#2c1c0c","#1c1c1c","#4c4c4c","#8c6424"],"color_groups":[{"hex":"#909090","weight":0.3019,"lightness":0.5647,"saturation":0.0,"hue_group":"neutral"},{"hex":"#523815","weight":0.2075,"lightness":0.202,"saturation":0.5922,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1698,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#1c1c1c","weight":0.1321,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.0943,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c6424","weight":0.0943,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/stone_shovel.png","family":"stone_tools","relations":[{"type":"variants","target":"minecraft:stone_axe","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_axe","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_hoe","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_hoe","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_pickaxe","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_pickaxe","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_sword","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_sword","label":"Related set: stone_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:stone_tools","label":"Related set: stone_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fishing_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:stone_slab","name":"Stone Slab","entry_type":"block","description":"A stone slab is a decorative slab variant of stone that generates in ruined portals and is used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added stone slabs."}],"colors":{"primary":"#7e7e7e","dominant_hex":"#7c7c7c","average_hex":"#7e7e7e","hue_group":"neutral","lightness":0.4941,"saturation":0.0,"palette":["#7c7c7c","#747474","#8c8c8c","#6c6c6c"],"color_groups":[{"hex":"#7c7c7c","weight":0.4609,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.2773,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1953,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0664,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stone.png","family":"stone","relations":[{"type":"variants","target":"minecraft:stone","label":"Same family: stone","confidence":0.75},{"type":"related_sets","target":"minecraft:stone","label":"Related set: stone","confidence":0.8},{"type":"variants","target":"minecraft:stone_stairs","label":"Same family: stone","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_stairs","label":"Related set: stone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_stairs","label":"Pont de nuance par palette: Stone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"building"},{"id":"minecraft:stone_spear","name":"Stone Spear","entry_type":"item","description":"A stone spear is a variant of spear crafted from cobblestone, blackstone, or cobbled deepslate. It can be used to perform slow jab attacks or held forward to deal increasing damage based on the speed of the wielder. It is the fourth-highest tier of spear, dealing the same damage as a copper spear but with higher attack speed.","history":[{"version":"1.21.11 25w41a","status":"added","notes":"Added stone spears."}],"colors":{"primary":"#5c4f42","dominant_hex":"#474747","average_hex":"#5c4f42","hue_group":"yellow","lightness":0.3098,"saturation":0.1646,"palette":["#474747","#221c16","#85847f","#522e0f","#985d26","#b4b4ac"],"color_groups":[{"hex":"#474747","weight":0.2297,"lightness":0.2784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#221c16","weight":0.2162,"lightness":0.1098,"saturation":0.2143,"hue_group":"yellow"},{"hex":"#85847f","weight":0.1892,"lightness":0.5098,"saturation":0.024,"hue_group":"neutral"},{"hex":"#522e0f","weight":0.1757,"lightness":0.1902,"saturation":0.6907,"hue_group":"red"},{"hex":"#985d26","weight":0.1081,"lightness":0.3725,"saturation":0.6,"hue_group":"red"},{"hex":"#b4b4ac","weight":0.0811,"lightness":0.6902,"saturation":0.0506,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/stone_spear.png","family":"stone_spear","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fishing_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:command_block_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:stone_stairs","name":"Stone Stairs","entry_type":"block","description":"Stone stairs are a decorative stairs variant of stone used for building.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added stone stairs."}],"colors":{"primary":"#7e7e7e","dominant_hex":"#7c7c7c","average_hex":"#7e7e7e","hue_group":"neutral","lightness":0.4941,"saturation":0.0,"palette":["#7c7c7c","#747474","#8c8c8c","#6c6c6c"],"color_groups":[{"hex":"#7c7c7c","weight":0.4609,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.2773,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1953,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0664,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stone.png","family":"stone","relations":[{"type":"variants","target":"minecraft:stone","label":"Same family: stone","confidence":0.75},{"type":"related_sets","target":"minecraft:stone","label":"Related set: stone","confidence":0.8},{"type":"variants","target":"minecraft:stone_slab","label":"Same family: stone","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_slab","label":"Related set: stone","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:andesite_wall","label":"Palette proche: Andesite Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite","label":"Pont de nuance par palette: Andesite","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_slab","label":"Pont de nuance par palette: Andesite Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_stairs","label":"Pont de nuance par palette: Andesite Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:andesite_wall","label":"Pont de nuance par palette: Andesite Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"building"},{"id":"minecraft:stone_sword","name":"Stone Sword","entry_type":"item","description":"A stone sword is a variant of sword crafted from cobblestone, blackstone, or cobbled deepslate. It is the fifth-highest tier of sword, dealing the same damage as a copper sword but having less durability.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added stone swords."},{"version":"wiki-history","status":"added","notes":"added to the item chest in the starting house ."},{"version":"1.8","status":"added","notes":"Added the ability to block with a stone sword, giving the player more options in combat."}],"colors":{"primary":"#585552","dominant_hex":"#282521","average_hex":"#585552","hue_group":"neutral","lightness":0.3333,"saturation":0.0353,"palette":["#282521","#4e4c48","#94948c","#7c7474","#b4b4ac","#665e51"],"color_groups":[{"hex":"#282521","weight":0.3095,"lightness":0.1431,"saturation":0.0959,"hue_group":"neutral"},{"hex":"#4e4c48","weight":0.3095,"lightness":0.2941,"saturation":0.04,"hue_group":"neutral"},{"hex":"#94948c","weight":0.131,"lightness":0.5647,"saturation":0.036,"hue_group":"neutral"},{"hex":"#7c7474","weight":0.1071,"lightness":0.4706,"saturation":0.0333,"hue_group":"neutral"},{"hex":"#b4b4ac","weight":0.0833,"lightness":0.6902,"saturation":0.0506,"hue_group":"neutral"},{"hex":"#665e51","weight":0.0595,"lightness":0.3588,"saturation":0.1148,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/stone_sword.png","family":"stone_tools","relations":[{"type":"variants","target":"minecraft:stone_axe","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_axe","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_hoe","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_hoe","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_pickaxe","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_pickaxe","label":"Related set: stone_tools","confidence":0.8},{"type":"variants","target":"minecraft:stone_shovel","label":"Same family: stone_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:stone_shovel","label":"Related set: stone_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:stone_tools","label":"Related set: stone_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:vindicator_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:compass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:furnace_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_horn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"tool"},{"id":"minecraft:stonecutter","name":"Stonecutter","entry_type":"block","description":"A stonecutter is a block used to easily craft many stone and copper blocks, and is cheaper than normal crafting for stairs and copper variants. It is also a job site block for mason villagers.","history":[{"version":"1.14 18w44a","status":"added","notes":"Added stonecutters."},{"version":"19w04b","status":"added","notes":"Added additional recipes: andesite, diorite and granite to polished variant slabs and stairs, and smooth stone into smooth stone slabs."}],"colors":{"primary":"#7b776f","dominant_hex":"#717171","average_hex":"#7b776f","hue_group":"neutral","lightness":0.4588,"saturation":0.0513,"palette":["#717171","#7c7c7c","#8c8c8c","#585858","#72521e","#907036"],"color_groups":[{"hex":"#717171","weight":0.2852,"lightness":0.4431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7c7c7c","weight":0.2656,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.2305,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#585858","weight":0.0781,"lightness":0.3451,"saturation":0.0,"hue_group":"neutral"},{"hex":"#72521e","weight":0.0781,"lightness":0.2824,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#907036","weight":0.0625,"lightness":0.3882,"saturation":0.4545,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stonecutter_top.png","family":"stonecutter","relations":[{"type":"visual_neighbors","target":"minecraft:light_gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_mossy_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.939},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.939},{"type":"color_neighbors","target":"minecraft:tripwire_hook","label":"Palette proche: Tripwire Hook","confidence":0.934},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.931},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.931},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_stairs","label":"Pont de nuance par palette: Stone Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par palette: Tripwire Hook","confidence":0.86},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55}],"category":"utility"},{"id":"minecraft:stray","name":"Stray","entry_type":"mob","description":"A stray is a skeleton variant that spawns in various snow-covered biomes. They behave very similarly to skeletons, except they fire tipped arrows of Slowness from their bows and do not freeze in powder snow.","history":[{"version":"1.10 16w20a","status":"added","notes":"Added strays. When explaining the origin of the stray, Jeb stated, \"They\u2019re based on a concept that emerged from a game jam the Bellevue team had, where they were just adding a bunch of stuff to Minecraft - whatever they"},{"version":"wiki-history","status":"added","notes":"Added spawn eggs for strays, which strays can be spawned from."},{"version":"wiki-history","status":"added","notes":"added for strays, which allow them to have their own sounds. Previously, they had the same sounds as a regular skeleton ."}],"colors":{"primary":"#99aaaa","dominant_hex":"#849494","average_hex":"#99aaaa","hue_group":"neutral","lightness":0.6333,"saturation":0.0909,"palette":["#849494","#acbcbc","#9cacac","#94a4a4","#c6d6d6","#6c8484"],"color_groups":[{"hex":"#849494","weight":0.3183,"lightness":0.549,"saturation":0.0696,"hue_group":"neutral"},{"hex":"#acbcbc","weight":0.2336,"lightness":0.7059,"saturation":0.1067,"hue_group":"neutral"},{"hex":"#9cacac","weight":0.1885,"lightness":0.6431,"saturation":0.0879,"hue_group":"neutral"},{"hex":"#94a4a4","weight":0.1393,"lightness":0.6118,"saturation":0.0808,"hue_group":"neutral"},{"hex":"#c6d6d6","weight":0.0902,"lightness":0.8078,"saturation":0.1633,"hue_group":"cyan"},{"hex":"#6c8484","weight":0.0301,"lightness":0.4706,"saturation":0.1,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/skeleton/stray.png","family":"stray","relations":[{"type":"visual_neighbors","target":"minecraft:elder_guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_charging","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/warm","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/salt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white_splotched","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:stray_spawn_egg","name":"Stray Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#5f7273","dominant_hex":"#475d5d","average_hex":"#5f7273","hue_group":"neutral","lightness":0.4118,"saturation":0.0952,"palette":["#475d5d","#b8cacb","#2c3c3c","#344848","#869798","#5e6f76"],"color_groups":[{"hex":"#475d5d","weight":0.2612,"lightness":0.3216,"saturation":0.1341,"hue_group":"cyan"},{"hex":"#b8cacb","weight":0.1642,"lightness":0.7588,"saturation":0.1545,"hue_group":"cyan"},{"hex":"#2c3c3c","weight":0.1493,"lightness":0.2039,"saturation":0.1538,"hue_group":"cyan"},{"hex":"#344848","weight":0.1493,"lightness":0.2431,"saturation":0.1613,"hue_group":"cyan"},{"hex":"#869798","weight":0.1493,"lightness":0.5608,"saturation":0.0804,"hue_group":"neutral"},{"hex":"#5e6f76","weight":0.1269,"lightness":0.4157,"saturation":0.1132,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/stray_spawn_egg.png","family":"stray_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wild_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coast_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_axe","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:strider","name":"Strider","entry_type":"mob","description":"A strider is a passive mob found in the Nether. It can walk on lava and be saddled by the player, being directed via a warped fungus on a stick.","history":[{"version":"1.16 20w13a","status":"added","notes":"Added striders and baby striders."},{"version":"wiki-history","status":"added","notes":"added for strider sounds ."},{"version":"26.1 snap5","status":"added","notes":"Added golden dandelions , which can be used to prevent baby striders from growing up."}],"colors":{"primary":"#7e3637","dominant_hex":"#872c2c","average_hex":"#7e3637","hue_group":"red","lightness":0.3529,"saturation":0.4,"palette":["#872c2c","#a7393a","#40292a","#6c2424","#5f5a5f","#e0c9a2"],"color_groups":[{"hex":"#872c2c","weight":0.3575,"lightness":0.351,"saturation":0.5084,"hue_group":"red"},{"hex":"#a7393a","weight":0.2394,"lightness":0.4392,"saturation":0.4911,"hue_group":"red"},{"hex":"#40292a","weight":0.1713,"lightness":0.2059,"saturation":0.219,"hue_group":"red"},{"hex":"#6c2424","weight":0.1324,"lightness":0.2824,"saturation":0.5,"hue_group":"red"},{"hex":"#5f5a5f","weight":0.0677,"lightness":0.3627,"saturation":0.027,"hue_group":"neutral"},{"hex":"#e0c9a2","weight":0.0317,"lightness":0.7569,"saturation":0.5,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/strider/strider.png","family":"strider","relations":[{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tadpole","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:strider_cold","name":"Strider Cold","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#684c59","dominant_hex":"#6b4e5c","average_hex":"#684c59","hue_group":"red","lightness":0.3529,"saturation":0.1556,"palette":["#6b4e5c","#845f75","#553b45","#352c31","#5b4553","#e0c8a3"],"color_groups":[{"hex":"#6b4e5c","weight":0.2812,"lightness":0.3627,"saturation":0.1568,"hue_group":"red"},{"hex":"#845f75","weight":0.249,"lightness":0.4451,"saturation":0.163,"hue_group":"purple"},{"hex":"#553b45","weight":0.2217,"lightness":0.2824,"saturation":0.1806,"hue_group":"red"},{"hex":"#352c31","weight":0.1214,"lightness":0.1902,"saturation":0.0928,"hue_group":"neutral"},{"hex":"#5b4553","weight":0.095,"lightness":0.3137,"saturation":0.1375,"hue_group":"purple"},{"hex":"#e0c8a3","weight":0.0317,"lightness":0.7588,"saturation":0.4959,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/strider/strider_cold.png","family":"strider_cold","relations":[{"type":"visual_neighbors","target":"minecraft:cow/temperate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:strider_spawn_egg","name":"Strider Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#744340","dominant_hex":"#a43838","average_hex":"#744340","hue_group":"red","lightness":0.3529,"saturation":0.2889,"palette":["#a43838","#241f21","#50494c","#e0c8a0","#4a1a1b","#74242c"],"color_groups":[{"hex":"#a43838","weight":0.2834,"lightness":0.4314,"saturation":0.4909,"hue_group":"red"},{"hex":"#241f21","weight":0.2086,"lightness":0.1314,"saturation":0.0746,"hue_group":"neutral"},{"hex":"#50494c","weight":0.1765,"lightness":0.3,"saturation":0.0458,"hue_group":"neutral"},{"hex":"#e0c8a0","weight":0.1283,"lightness":0.7529,"saturation":0.5079,"hue_group":"yellow"},{"hex":"#4a1a1b","weight":0.123,"lightness":0.1961,"saturation":0.48,"hue_group":"red"},{"hex":"#74242c","weight":0.0802,"lightness":0.298,"saturation":0.5263,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/strider_spawn_egg.png","family":"strider_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:trial_key","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_relic","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:string","name":"String","entry_type":"item","description":"String is an item that can be used as a crafting material or placed as tripwire to allow tripwire hooks and observers to detect entities that touch it.","history":[{"version":"0.31 20100130","status":"added","notes":"Added string."}],"colors":{"primary":"#909a9b","dominant_hex":"#2c4444","average_hex":"#909a9b","hue_group":"neutral","lightness":0.5863,"saturation":0.0521,"palette":["#2c4444","#f4f4f4","#dcdcdc"],"color_groups":[{"hex":"#2c4444","weight":0.48,"lightness":0.2196,"saturation":0.2143,"hue_group":"cyan"},{"hex":"#f4f4f4","weight":0.2667,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.2533,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/string.png","family":"string","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_boat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_membrane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:milk_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:splash_potion","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:stripped_acacia_log","name":"Stripped Acacia Log","entry_type":"block","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added stripped logs."},{"version":"1.16 20w06a","status":"added","notes":"Added stripped crimson and warped stems."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove logs."}],"colors":{"primary":"#af5d3c","dominant_hex":"#b65c3c","average_hex":"#af5d3c","hue_group":"red","lightness":0.4608,"saturation":0.4894,"palette":["#b65c3c","#9e5c38","#ac5d3c","#b4643c","#bc643c","#c46444"],"color_groups":[{"hex":"#b65c3c","weight":0.2969,"lightness":0.4745,"saturation":0.5041,"hue_group":"red"},{"hex":"#9e5c38","weight":0.2539,"lightness":0.4196,"saturation":0.4766,"hue_group":"red"},{"hex":"#ac5d3c","weight":0.1719,"lightness":0.4549,"saturation":0.4828,"hue_group":"red"},{"hex":"#b4643c","weight":0.1211,"lightness":0.4706,"saturation":0.5,"hue_group":"red"},{"hex":"#bc643c","weight":0.0898,"lightness":0.4863,"saturation":0.5161,"hue_group":"red"},{"hex":"#c46444","weight":0.0664,"lightness":0.5176,"saturation":0.5203,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_acacia_log.png","family":"stripped_acacia","relations":[{"type":"variants","target":"minecraft:stripped_acacia_wood","label":"Same family: stripped_acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_acacia_wood","label":"Related set: stripped_acacia","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:acacia_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_acacia_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_acacia_wood","label":"Palette proche: Stripped Acacia Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_door","label":"Palette proche: Acacia Door","confidence":0.929},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.922},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.789},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.789},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.786},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.782},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.78},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.78},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.78},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.78},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.78},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.78},{"type":"color_analogous","target":"minecraft:acacia_hanging_sign","label":"Couleurs analogues: Acacia Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_hanging_sign","label":"Couleurs analogues: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_acacia_wood","label":"Couleurs analogues: Stripped Acacia Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_bulb","label":"Couleurs analogues: Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_bulb","label":"Couleurs analogues: Waxed Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:decorated_pot","label":"Couleurs analogues: Decorated Pot","confidence":0.96},{"type":"color_analogous","target":"minecraft:terracotta","label":"Couleurs analogues: Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite","label":"Couleurs analogues: Granite","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.946},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.942},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.936},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.936},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.9},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.883},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.873},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.96},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.838},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.914},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.914},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.897},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.884},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.856},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"natural"},{"id":"minecraft:stripped_acacia_wood","name":"Stripped Acacia Wood","entry_type":"block","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","history":[{"version":"1.13 pre2","status":"added","notes":"Added stripped bark."},{"version":"1.16 20w10a","status":"added","notes":"Added stripped crimson and warped hyphae."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove wood."}],"colors":{"primary":"#af5d3c","dominant_hex":"#b65c3c","average_hex":"#af5d3c","hue_group":"red","lightness":0.4608,"saturation":0.4894,"palette":["#b65c3c","#9e5c38","#ac5d3c","#b4643c","#bc643c","#c46444"],"color_groups":[{"hex":"#b65c3c","weight":0.2969,"lightness":0.4745,"saturation":0.5041,"hue_group":"red"},{"hex":"#9e5c38","weight":0.2539,"lightness":0.4196,"saturation":0.4766,"hue_group":"red"},{"hex":"#ac5d3c","weight":0.1719,"lightness":0.4549,"saturation":0.4828,"hue_group":"red"},{"hex":"#b4643c","weight":0.1211,"lightness":0.4706,"saturation":0.5,"hue_group":"red"},{"hex":"#bc643c","weight":0.0898,"lightness":0.4863,"saturation":0.5161,"hue_group":"red"},{"hex":"#c46444","weight":0.0664,"lightness":0.5176,"saturation":0.5203,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_acacia_log.png","family":"stripped_acacia","relations":[{"type":"variants","target":"minecraft:stripped_acacia_log","label":"Same family: stripped_acacia","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_acacia_log","label":"Related set: stripped_acacia","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:acacia_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_acacia_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_glazed_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_acacia_log","label":"Palette proche: Stripped Acacia Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_door","label":"Palette proche: Acacia Door","confidence":0.929},{"type":"color_neighbors","target":"minecraft:acacia_button","label":"Palette proche: Acacia Button","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_fence","label":"Palette proche: Acacia Fence","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_fence_gate","label":"Palette proche: Acacia Fence Gate","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_planks","label":"Palette proche: Acacia Planks","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_pressure_plate","label":"Palette proche: Acacia Pressure Plate","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_sign","label":"Palette proche: Acacia Sign","confidence":0.922},{"type":"color_neighbors","target":"minecraft:acacia_slab","label":"Palette proche: Acacia Slab","confidence":0.922},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.789},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.789},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.786},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.782},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.78},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.78},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.78},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.78},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.78},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.78},{"type":"color_analogous","target":"minecraft:acacia_hanging_sign","label":"Couleurs analogues: Acacia Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_hanging_sign","label":"Couleurs analogues: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_acacia_log","label":"Couleurs analogues: Stripped Acacia Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_bulb","label":"Couleurs analogues: Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_bulb","label":"Couleurs analogues: Waxed Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:decorated_pot","label":"Couleurs analogues: Decorated Pot","confidence":0.96},{"type":"color_analogous","target":"minecraft:terracotta","label":"Couleurs analogues: Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite","label":"Couleurs analogues: Granite","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.946},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.942},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.936},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.936},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.9},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.883},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.873},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.96},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.838},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.914},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.914},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.897},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.884},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.856},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:stripped_bamboo_block","name":"Stripped Bamboo Block","entry_type":"block","description":"A block of stripped bamboo is a variant of the block of bamboo made by using an axe on a block of bamboo.","history":[{"version":"1.19.3","status":"added","notes":"Added blocks of stripped bamboo behind the \" Update 1.20 \" experimental data pack ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of stripped bamboo, providing the bouncy/rubber effect to the mob."}],"colors":{"primary":"#c1ad50","dominant_hex":"#cdb74f","average_hex":"#c1ad50","hue_group":"yellow","lightness":0.5353,"saturation":0.4768,"palette":["#cdb74f","#b9ac4c","#e5ce6e","#dcc45c","#9c8444","#947c3c"],"color_groups":[{"hex":"#cdb74f","weight":0.3281,"lightness":0.5569,"saturation":0.5575,"hue_group":"yellow"},{"hex":"#b9ac4c","weight":0.168,"lightness":0.5118,"saturation":0.4378,"hue_group":"yellow"},{"hex":"#e5ce6e","weight":0.1484,"lightness":0.6647,"saturation":0.6959,"hue_group":"yellow"},{"hex":"#dcc45c","weight":0.1328,"lightness":0.6118,"saturation":0.6465,"hue_group":"yellow"},{"hex":"#9c8444","weight":0.1133,"lightness":0.4392,"saturation":0.3929,"hue_group":"yellow"},{"hex":"#947c3c","weight":0.1094,"lightness":0.4078,"saturation":0.4231,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_bamboo_block.png","family":"stripped_bamboo_block","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_wall_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_slab","label":"Palette proche: Bamboo Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_stairs","label":"Palette proche: Bamboo Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_hanging_sign","label":"Palette proche: Bamboo Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_wall_sign","label":"Palette proche: Bamboo Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_fence","label":"Palette proche: Bamboo Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_door","label":"Palette proche: Bamboo Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.747},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.736},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.736},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.723},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.722},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.717},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.708},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.706},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_planks","label":"Couleurs analogues: Bamboo Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_pressure_plate","label":"Couleurs analogues: Bamboo Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_sign","label":"Couleurs analogues: Bamboo Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_slab","label":"Couleurs analogues: Bamboo Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_stairs","label":"Couleurs analogues: Bamboo Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_wall_hanging_sign","label":"Couleurs analogues: Bamboo Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.953},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.936},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.871},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.858},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.819},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.819},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.952},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.952},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.926},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.886},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.849},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.849},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.892},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.874},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.788},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.774},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.767},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.721},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.712},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55}],"category":"natural"},{"id":"minecraft:stripped_birch_log","name":"Stripped Birch Log","entry_type":"block","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added stripped logs."},{"version":"1.16 20w06a","status":"added","notes":"Added stripped crimson and warped stems."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove logs."}],"colors":{"primary":"#c5b076","dominant_hex":"#d0bf84","average_hex":"#c5b076","hue_group":"yellow","lightness":0.6176,"saturation":0.4051,"palette":["#d0bf84","#c4ad74","#bca971","#cbb47b","#b49e66","#ccbc7c"],"color_groups":[{"hex":"#d0bf84","weight":0.2148,"lightness":0.6667,"saturation":0.4471,"hue_group":"yellow"},{"hex":"#c4ad74","weight":0.1914,"lightness":0.6118,"saturation":0.404,"hue_group":"yellow"},{"hex":"#bca971","weight":0.1836,"lightness":0.5902,"saturation":0.3589,"hue_group":"yellow"},{"hex":"#cbb47b","weight":0.1719,"lightness":0.6392,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#b49e66","weight":0.1211,"lightness":0.5529,"saturation":0.3421,"hue_group":"yellow"},{"hex":"#ccbc7c","weight":0.1172,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_birch_log.png","family":"stripped_birch","relations":[{"type":"variants","target":"minecraft:stripped_birch_wood","label":"Same family: stripped_birch","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_birch_wood","label":"Related set: stripped_birch","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_wood","label":"Palette proche: Stripped Birch Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.94},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.814},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.794},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.781},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.754},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.743},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.741},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.741},{"type":"color_analogous","target":"minecraft:birch_hanging_sign","label":"Couleurs analogues: Birch Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_hanging_sign","label":"Couleurs analogues: Birch Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_wood","label":"Couleurs analogues: Stripped Birch Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_planks","label":"Couleurs analogues: Birch Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_pressure_plate","label":"Couleurs analogues: Birch Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.95},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.928},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.918},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.863},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.851},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.848},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.949},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.823},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.823},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.821},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.821},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.821},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.808},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.89},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.851},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.775},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.615},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.615},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.613},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.609},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.593},{"type":"value_contrast","target":"minecraft:firefly_bush","label":"Contraste clair sombre: Firefly Bush","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_log","label":"Contraste clair sombre: Mangrove Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_wood","label":"Contraste clair sombre: Mangrove Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bamboo_sapling","label":"Contraste clair sombre: Bamboo Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_log","label":"Contraste clair sombre: Jungle Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_wood","label":"Contraste clair sombre: Jungle Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55}],"category":"natural"},{"id":"minecraft:stripped_birch_wood","name":"Stripped Birch Wood","entry_type":"block","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","history":[{"version":"1.13 pre2","status":"added","notes":"Added stripped bark."},{"version":"1.16 20w10a","status":"added","notes":"Added stripped crimson and warped hyphae."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove wood."}],"colors":{"primary":"#c5b076","dominant_hex":"#d0bf84","average_hex":"#c5b076","hue_group":"yellow","lightness":0.6176,"saturation":0.4051,"palette":["#d0bf84","#c4ad74","#bca971","#cbb47b","#b49e66","#ccbc7c"],"color_groups":[{"hex":"#d0bf84","weight":0.2148,"lightness":0.6667,"saturation":0.4471,"hue_group":"yellow"},{"hex":"#c4ad74","weight":0.1914,"lightness":0.6118,"saturation":0.404,"hue_group":"yellow"},{"hex":"#bca971","weight":0.1836,"lightness":0.5902,"saturation":0.3589,"hue_group":"yellow"},{"hex":"#cbb47b","weight":0.1719,"lightness":0.6392,"saturation":0.4348,"hue_group":"yellow"},{"hex":"#b49e66","weight":0.1211,"lightness":0.5529,"saturation":0.3421,"hue_group":"yellow"},{"hex":"#ccbc7c","weight":0.1172,"lightness":0.6431,"saturation":0.4396,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_birch_log.png","family":"stripped_birch","relations":[{"type":"variants","target":"minecraft:stripped_birch_log","label":"Same family: stripped_birch","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_birch_log","label":"Related set: stripped_birch","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:birch_hanging_sign","label":"Palette proche: Birch Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Palette proche: Birch Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_birch_log","label":"Palette proche: Stripped Birch Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_button","label":"Palette proche: Birch Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence","label":"Palette proche: Birch Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_fence_gate","label":"Palette proche: Birch Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_planks","label":"Palette proche: Birch Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_pressure_plate","label":"Palette proche: Birch Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_sign","label":"Palette proche: Birch Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_slab","label":"Palette proche: Birch Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_stairs","label":"Palette proche: Birch Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:birch_wall_sign","label":"Palette proche: Birch Wall Sign","confidence":0.94},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.814},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.794},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.781},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.754},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.743},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:dead_horn_coral","label":"Pont de nuance par palette: Dead Horn Coral","confidence":0.741},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.741},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.741},{"type":"color_analogous","target":"minecraft:birch_hanging_sign","label":"Couleurs analogues: Birch Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_hanging_sign","label":"Couleurs analogues: Birch Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_log","label":"Couleurs analogues: Stripped Birch Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence_gate","label":"Couleurs analogues: Birch Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_planks","label":"Couleurs analogues: Birch Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_pressure_plate","label":"Couleurs analogues: Birch Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.95},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.928},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.918},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.863},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.851},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.848},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.949},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.823},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.823},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.821},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.821},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.821},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.808},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.89},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.851},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.775},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.615},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.615},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.613},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.609},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.593},{"type":"value_contrast","target":"minecraft:firefly_bush","label":"Contraste clair sombre: Firefly Bush","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_log","label":"Contraste clair sombre: Mangrove Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_wood","label":"Contraste clair sombre: Mangrove Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:bamboo_sapling","label":"Contraste clair sombre: Bamboo Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_log","label":"Contraste clair sombre: Jungle Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_wood","label":"Contraste clair sombre: Jungle Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55}],"category":"building"},{"id":"minecraft:stripped_cherry_log","name":"Stripped Cherry Log","entry_type":"block","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added stripped logs."},{"version":"1.16 20w06a","status":"added","notes":"Added stripped crimson and warped stems."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove logs."}],"colors":{"primary":"#d79195","dominant_hex":"#dc949c","average_hex":"#d79195","hue_group":"red","lightness":0.7059,"saturation":0.4667,"palette":["#dc949c","#dc9c9d","#d48c94","#cc8484","#d48c8c","#cc7c7c"],"color_groups":[{"hex":"#dc949c","weight":0.2969,"lightness":0.7216,"saturation":0.507,"hue_group":"red"},{"hex":"#dc9c9d","weight":0.293,"lightness":0.7373,"saturation":0.4776,"hue_group":"red"},{"hex":"#d48c94","weight":0.1875,"lightness":0.6902,"saturation":0.4557,"hue_group":"red"},{"hex":"#cc8484","weight":0.1055,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#d48c8c","weight":0.0938,"lightness":0.6902,"saturation":0.4557,"hue_group":"red"},{"hex":"#cc7c7c","weight":0.0234,"lightness":0.6431,"saturation":0.4396,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_cherry_log.png","family":"stripped_cherry","relations":[{"type":"variants","target":"minecraft:stripped_cherry_wood","label":"Same family: stripped_cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_cherry_wood","label":"Related set: stripped_cherry","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cherry_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cactus_flower","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_wall_hanging_sign","label":"Palette proche: Cherry Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_cherry_wood","label":"Palette proche: Stripped Cherry Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.865},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.857},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.752},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.752},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.742},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.742},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.742},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.742},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.742},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.742},{"type":"color_bridge","target":"minecraft:dried_ghast","label":"Pont de nuance par palette: Dried Ghast","confidence":0.715},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.707},{"type":"color_analogous","target":"minecraft:cherry_hanging_sign","label":"Couleurs analogues: Cherry Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_wall_hanging_sign","label":"Couleurs analogues: Cherry Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_cherry_wood","label":"Couleurs analogues: Stripped Cherry Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire_coral","label":"Couleurs analogues: Fire Coral","confidence":0.922},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.902},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.902},{"type":"color_analogous","target":"minecraft:cherry_shelf","label":"Couleurs analogues: Cherry Shelf","confidence":0.895},{"type":"color_analogous","target":"minecraft:pink_terracotta","label":"Couleurs analogues: Pink Terracotta","confidence":0.893},{"type":"color_complement","target":"minecraft:beacon","label":"Contraste complementaire: Beacon","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_door","label":"Contraste complementaire: Warped Door","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_shelf","label":"Contraste complementaire: Warped Shelf","confidence":0.959},{"type":"color_complement","target":"minecraft:diamond_block","label":"Contraste complementaire: Diamond Block","confidence":0.952},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.948},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.948},{"type":"color_complement","target":"minecraft:warped_hanging_sign","label":"Contraste complementaire: Warped Hanging Sign","confidence":0.948},{"type":"color_complement","target":"minecraft:warped_wall_hanging_sign","label":"Contraste complementaire: Warped Wall Hanging Sign","confidence":0.948},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.955},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.955},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.935},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.912},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.911},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.87},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.819},{"type":"color_square","target":"minecraft:large_amethyst_bud","label":"Harmonie carree: Large Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:lime_concrete_powder","label":"Harmonie carree: Lime Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:oak_sapling","label":"Harmonie carree: Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_oak_sapling","label":"Harmonie carree: Potted Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:orange_tulip","label":"Harmonie carree: Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_orange_tulip","label":"Harmonie carree: Potted Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:azure_bluet","label":"Harmonie carree: Azure Bluet","confidence":0.951},{"type":"color_square","target":"minecraft:potted_azure_bluet","label":"Harmonie carree: Potted Azure Bluet","confidence":0.951},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.596},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.566},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.562},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.56},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.554},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.554},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.551},{"type":"value_contrast","target":"minecraft:mangrove_hanging_sign","label":"Contraste clair sombre: Mangrove Hanging Sign","confidence":0.55}],"category":"natural"},{"id":"minecraft:stripped_cherry_wood","name":"Stripped Cherry Wood","entry_type":"block","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","history":[{"version":"1.13 pre2","status":"added","notes":"Added stripped bark."},{"version":"1.16 20w10a","status":"added","notes":"Added stripped crimson and warped hyphae."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove wood."}],"colors":{"primary":"#d79195","dominant_hex":"#dc949c","average_hex":"#d79195","hue_group":"red","lightness":0.7059,"saturation":0.4667,"palette":["#dc949c","#dc9c9d","#d48c94","#cc8484","#d48c8c","#cc7c7c"],"color_groups":[{"hex":"#dc949c","weight":0.2969,"lightness":0.7216,"saturation":0.507,"hue_group":"red"},{"hex":"#dc9c9d","weight":0.293,"lightness":0.7373,"saturation":0.4776,"hue_group":"red"},{"hex":"#d48c94","weight":0.1875,"lightness":0.6902,"saturation":0.4557,"hue_group":"red"},{"hex":"#cc8484","weight":0.1055,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#d48c8c","weight":0.0938,"lightness":0.6902,"saturation":0.4557,"hue_group":"red"},{"hex":"#cc7c7c","weight":0.0234,"lightness":0.6431,"saturation":0.4396,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_cherry_log.png","family":"stripped_cherry","relations":[{"type":"variants","target":"minecraft:stripped_cherry_log","label":"Same family: stripped_cherry","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_cherry_log","label":"Related set: stripped_cherry","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cherry_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cactus_flower","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_hanging_sign","label":"Palette proche: Cherry Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_wall_hanging_sign","label":"Palette proche: Cherry Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_cherry_log","label":"Palette proche: Stripped Cherry Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_shelf","label":"Palette proche: Cherry Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.865},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.857},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.857},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.752},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.752},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.742},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.742},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.742},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.742},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.742},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.742},{"type":"color_bridge","target":"minecraft:dried_ghast","label":"Pont de nuance par palette: Dried Ghast","confidence":0.715},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.707},{"type":"color_analogous","target":"minecraft:cherry_hanging_sign","label":"Couleurs analogues: Cherry Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_wall_hanging_sign","label":"Couleurs analogues: Cherry Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_cherry_log","label":"Couleurs analogues: Stripped Cherry Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire_coral","label":"Couleurs analogues: Fire Coral","confidence":0.922},{"type":"color_analogous","target":"minecraft:crimson_hyphae","label":"Couleurs analogues: Crimson Hyphae","confidence":0.902},{"type":"color_analogous","target":"minecraft:crimson_stem","label":"Couleurs analogues: Crimson Stem","confidence":0.902},{"type":"color_analogous","target":"minecraft:cherry_shelf","label":"Couleurs analogues: Cherry Shelf","confidence":0.895},{"type":"color_analogous","target":"minecraft:pink_terracotta","label":"Couleurs analogues: Pink Terracotta","confidence":0.893},{"type":"color_complement","target":"minecraft:beacon","label":"Contraste complementaire: Beacon","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_door","label":"Contraste complementaire: Warped Door","confidence":0.96},{"type":"color_complement","target":"minecraft:warped_shelf","label":"Contraste complementaire: Warped Shelf","confidence":0.959},{"type":"color_complement","target":"minecraft:diamond_block","label":"Contraste complementaire: Diamond Block","confidence":0.952},{"type":"color_complement","target":"minecraft:stripped_warped_hyphae","label":"Contraste complementaire: Stripped Warped Hyphae","confidence":0.948},{"type":"color_complement","target":"minecraft:stripped_warped_stem","label":"Contraste complementaire: Stripped Warped Stem","confidence":0.948},{"type":"color_complement","target":"minecraft:warped_hanging_sign","label":"Contraste complementaire: Warped Hanging Sign","confidence":0.948},{"type":"color_complement","target":"minecraft:warped_wall_hanging_sign","label":"Contraste complementaire: Warped Wall Hanging Sign","confidence":0.948},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.955},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.955},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.935},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.912},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.911},{"type":"color_triad","target":"minecraft:verdant_froglight","label":"Harmonie triadique: Verdant Froglight","confidence":0.87},{"type":"color_triad","target":"minecraft:mangrove_propagule","label":"Harmonie triadique: Mangrove Propagule","confidence":0.819},{"type":"color_square","target":"minecraft:large_amethyst_bud","label":"Harmonie carree: Large Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:lime_concrete_powder","label":"Harmonie carree: Lime Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:oak_sapling","label":"Harmonie carree: Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_oak_sapling","label":"Harmonie carree: Potted Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:orange_tulip","label":"Harmonie carree: Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_orange_tulip","label":"Harmonie carree: Potted Orange Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:azure_bluet","label":"Harmonie carree: Azure Bluet","confidence":0.951},{"type":"color_square","target":"minecraft:potted_azure_bluet","label":"Harmonie carree: Potted Azure Bluet","confidence":0.951},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.596},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.566},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.562},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.56},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.554},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.554},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.551},{"type":"value_contrast","target":"minecraft:mangrove_hanging_sign","label":"Contraste clair sombre: Mangrove Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:stripped_crimson_hyphae","name":"Stripped Crimson Hyphae","entry_type":"block","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","history":[{"version":"1.13 pre2","status":"added","notes":"Added stripped bark."},{"version":"1.16 20w10a","status":"added","notes":"Added stripped crimson and warped hyphae."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove wood."}],"colors":{"primary":"#89395a","dominant_hex":"#8c3c5c","average_hex":"#89395a","hue_group":"red","lightness":0.3804,"saturation":0.4124,"palette":["#8c3c5c","#973d65","#843c54","#7c3454","#843c5c","#7c2c4c"],"color_groups":[{"hex":"#8c3c5c","weight":0.3203,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#973d65","weight":0.293,"lightness":0.4157,"saturation":0.4245,"hue_group":"red"},{"hex":"#843c54","weight":0.1719,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#7c3454","weight":0.0898,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#843c5c","weight":0.0664,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#7c2c4c","weight":0.0586,"lightness":0.3294,"saturation":0.4762,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_crimson_stem.png","family":"stripped_crimson_hyphae","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_pot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_bamboo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cactus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_crimson_stem","label":"Palette proche: Stripped Crimson Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_shelf","label":"Palette proche: Crimson Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.91},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:mycelium","label":"Pont de nuance par palette: Mycelium","confidence":0.741},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.726},{"type":"color_bridge","target":"minecraft:flower_pot","label":"Pont de nuance par palette: Flower Pot","confidence":0.715},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.715},{"type":"color_bridge","target":"minecraft:potted_bamboo","label":"Pont de nuance par palette: Potted Bamboo","confidence":0.715},{"type":"color_bridge","target":"minecraft:potted_cactus","label":"Pont de nuance par palette: Potted Cactus","confidence":0.715},{"type":"color_bridge","target":"minecraft:potted_mangrove_propagule","label":"Pont de nuance par palette: Potted Mangrove Propagule","confidence":0.715},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.707},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.695},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.689},{"type":"color_analogous","target":"minecraft:crimson_hanging_sign","label":"Couleurs analogues: Crimson Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_wall_hanging_sign","label":"Couleurs analogues: Crimson Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_crimson_stem","label":"Couleurs analogues: Stripped Crimson Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_shelf","label":"Couleurs analogues: Crimson Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_door","label":"Couleurs analogues: Crimson Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_trapdoor","label":"Couleurs analogues: Crimson Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.935},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.935},{"type":"color_complement","target":"minecraft:oxidized_copper_grate","label":"Contraste complementaire: Oxidized Copper Grate","confidence":0.926},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_grate","label":"Contraste complementaire: Waxed Oxidized Copper Grate","confidence":0.926},{"type":"color_complement","target":"minecraft:oxidized_cut_copper","label":"Contraste complementaire: Oxidized Cut Copper","confidence":0.922},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.924},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.922},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.905},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.892},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.879},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.849},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.849},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.957},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.911},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.889},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.572},{"type":"value_contrast","target":"minecraft:cherry_leaves","label":"Contraste clair sombre: Cherry Leaves","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_concrete_powder","label":"Contraste clair sombre: Pink Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_glazed_terracotta","label":"Contraste clair sombre: Pink Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_carpet","label":"Contraste clair sombre: Pink Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_wool","label":"Contraste clair sombre: Pink Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.55}],"category":""},{"id":"minecraft:stripped_crimson_stem","name":"Stripped Crimson Stem","entry_type":"block","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added stripped logs."},{"version":"1.16 20w06a","status":"added","notes":"Added stripped crimson and warped stems."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove logs."}],"colors":{"primary":"#89395a","dominant_hex":"#8c3c5c","average_hex":"#89395a","hue_group":"red","lightness":0.3804,"saturation":0.4124,"palette":["#8c3c5c","#973d65","#843c54","#7c3454","#843c5c","#7c2c4c"],"color_groups":[{"hex":"#8c3c5c","weight":0.3203,"lightness":0.3922,"saturation":0.4,"hue_group":"red"},{"hex":"#973d65","weight":0.293,"lightness":0.4157,"saturation":0.4245,"hue_group":"red"},{"hex":"#843c54","weight":0.1719,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#7c3454","weight":0.0898,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#843c5c","weight":0.0664,"lightness":0.3765,"saturation":0.375,"hue_group":"red"},{"hex":"#7c2c4c","weight":0.0586,"lightness":0.3294,"saturation":0.4762,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_crimson_stem.png","family":"stripped_crimson_stem","relations":[{"type":"visual_neighbors","target":"minecraft:crimson_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_concrete_powder","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flower_pot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_bamboo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cactus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_mangrove_propagule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:crimson_hanging_sign","label":"Palette proche: Crimson Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Palette proche: Crimson Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_crimson_hyphae","label":"Palette proche: Stripped Crimson Hyphae","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_shelf","label":"Palette proche: Crimson Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:crimson_door","label":"Palette proche: Crimson Door","confidence":0.91},{"type":"color_neighbors","target":"minecraft:crimson_button","label":"Palette proche: Crimson Button","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_fence","label":"Palette proche: Crimson Fence","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_fence_gate","label":"Palette proche: Crimson Fence Gate","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_planks","label":"Palette proche: Crimson Planks","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_pressure_plate","label":"Palette proche: Crimson Pressure Plate","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_sign","label":"Palette proche: Crimson Sign","confidence":0.9},{"type":"color_neighbors","target":"minecraft:crimson_slab","label":"Palette proche: Crimson Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:mycelium","label":"Pont de nuance par palette: Mycelium","confidence":0.741},{"type":"color_bridge","target":"minecraft:shulker_box","label":"Pont de nuance par sous-ton: Shulker Box","confidence":0.726},{"type":"color_bridge","target":"minecraft:flower_pot","label":"Pont de nuance par palette: Flower Pot","confidence":0.715},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.715},{"type":"color_bridge","target":"minecraft:potted_bamboo","label":"Pont de nuance par palette: Potted Bamboo","confidence":0.715},{"type":"color_bridge","target":"minecraft:potted_cactus","label":"Pont de nuance par palette: Potted Cactus","confidence":0.715},{"type":"color_bridge","target":"minecraft:potted_mangrove_propagule","label":"Pont de nuance par palette: Potted Mangrove Propagule","confidence":0.715},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.707},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.695},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.689},{"type":"color_analogous","target":"minecraft:crimson_hanging_sign","label":"Couleurs analogues: Crimson Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_wall_hanging_sign","label":"Couleurs analogues: Crimson Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_crimson_hyphae","label":"Couleurs analogues: Stripped Crimson Hyphae","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_shelf","label":"Couleurs analogues: Crimson Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_door","label":"Couleurs analogues: Crimson Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_trapdoor","label":"Couleurs analogues: Crimson Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_button","label":"Couleurs analogues: Crimson Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_fence","label":"Couleurs analogues: Crimson Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine","label":"Contraste complementaire: Dark Prismarine","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine_slab","label":"Contraste complementaire: Dark Prismarine Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:dark_prismarine_stairs","label":"Contraste complementaire: Dark Prismarine Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:oxidized_chiseled_copper","label":"Contraste complementaire: Oxidized Chiseled Copper","confidence":0.935},{"type":"color_complement","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Contraste complementaire: Waxed Oxidized Chiseled Copper","confidence":0.935},{"type":"color_complement","target":"minecraft:oxidized_copper_grate","label":"Contraste complementaire: Oxidized Copper Grate","confidence":0.926},{"type":"color_complement","target":"minecraft:waxed_oxidized_copper_grate","label":"Contraste complementaire: Waxed Oxidized Copper Grate","confidence":0.926},{"type":"color_complement","target":"minecraft:oxidized_cut_copper","label":"Contraste complementaire: Oxidized Cut Copper","confidence":0.922},{"type":"color_triad","target":"minecraft:dried_kelp_block","label":"Harmonie triadique: Dried Kelp Block","confidence":0.96},{"type":"color_triad","target":"minecraft:kelp","label":"Harmonie triadique: Kelp","confidence":0.924},{"type":"color_triad","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie triadique: Light Blue Stained Glass Pane","confidence":0.922},{"type":"color_triad","target":"minecraft:light_blue_stained_glass","label":"Harmonie triadique: Light Blue Stained Glass","confidence":0.905},{"type":"color_triad","target":"minecraft:spawner","label":"Harmonie triadique: Spawner","confidence":0.892},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.879},{"type":"color_triad","target":"minecraft:lily_of_the_valley","label":"Harmonie triadique: Lily Of The Valley","confidence":0.849},{"type":"color_triad","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie triadique: Potted Lily Of The Valley","confidence":0.849},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.957},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.911},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.889},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.572},{"type":"value_contrast","target":"minecraft:cherry_leaves","label":"Contraste clair sombre: Cherry Leaves","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_concrete_powder","label":"Contraste clair sombre: Pink Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_glazed_terracotta","label":"Contraste clair sombre: Pink Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_carpet","label":"Contraste clair sombre: Pink Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:pink_wool","label":"Contraste clair sombre: Pink Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pearlescent_froglight","label":"Contraste clair sombre: Pearlescent Froglight","confidence":0.55}],"category":"natural"},{"id":"minecraft:stripped_dark_oak_log","name":"Stripped Dark Oak Log","entry_type":"block","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added stripped logs."},{"version":"1.16 20w06a","status":"added","notes":"Added stripped crimson and warped stems."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove logs."}],"colors":{"primary":"#493924","dominant_hex":"#4c3c24","average_hex":"#493924","hue_group":"yellow","lightness":0.2137,"saturation":0.3394,"palette":["#4c3c24","#443424","#543c24","#3c3424"],"color_groups":[{"hex":"#4c3c24","weight":0.4258,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#443424","weight":0.2383,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#543c24","weight":0.2188,"lightness":0.2353,"saturation":0.4,"hue_group":"yellow"},{"hex":"#3c3424","weight":0.1172,"lightness":0.1882,"saturation":0.25,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_dark_oak_log.png","family":"stripped_dark_oak","relations":[{"type":"variants","target":"minecraft:stripped_dark_oak_wood","label":"Same family: stripped_dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_dark_oak_wood","label":"Related set: stripped_dark_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_roots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firefly_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Palette proche: Dark Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Palette proche: Dark Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Palette proche: Stripped Dark Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_shelf","label":"Palette proche: Dark Oak Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_roots","label":"Palette proche: Mangrove Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.898},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.898},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.896},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.888},{"type":"color_neighbors","target":"minecraft:brown_terracotta","label":"Palette proche: Brown Terracotta","confidence":0.887},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.894},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.826},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.812},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.786},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.786},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.765},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.739},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.739},{"type":"color_bridge","target":"minecraft:campfire","label":"Pont de nuance par sous-ton: Campfire","confidence":0.738},{"type":"color_bridge","target":"minecraft:soul_campfire","label":"Pont de nuance par sous-ton: Soul Campfire","confidence":0.738},{"type":"color_analogous","target":"minecraft:dark_oak_hanging_sign","label":"Couleurs analogues: Dark Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_wall_hanging_sign","label":"Couleurs analogues: Dark Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_dark_oak_wood","label":"Couleurs analogues: Stripped Dark Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_roots","label":"Couleurs analogues: Mangrove Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_shelf","label":"Couleurs analogues: Dark Oak Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_trapdoor","label":"Couleurs analogues: Spruce Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:dead_bush","label":"Couleurs analogues: Dead Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_dead_bush","label":"Couleurs analogues: Potted Dead Bush","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.945},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.869},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.831},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.798},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.781},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.775},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.766},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.945},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.934},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.934},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.951},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.951},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.946},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.945},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.936},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.854},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.731},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.697},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.685},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.685},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.685},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.685},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.675},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.65}],"category":"natural"},{"id":"minecraft:stripped_dark_oak_wood","name":"Stripped Dark Oak Wood","entry_type":"block","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","history":[{"version":"1.13 pre2","status":"added","notes":"Added stripped bark."},{"version":"1.16 20w10a","status":"added","notes":"Added stripped crimson and warped hyphae."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove wood."}],"colors":{"primary":"#493924","dominant_hex":"#4c3c24","average_hex":"#493924","hue_group":"yellow","lightness":0.2137,"saturation":0.3394,"palette":["#4c3c24","#443424","#543c24","#3c3424"],"color_groups":[{"hex":"#4c3c24","weight":0.4258,"lightness":0.2196,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#443424","weight":0.2383,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#543c24","weight":0.2188,"lightness":0.2353,"saturation":0.4,"hue_group":"yellow"},{"hex":"#3c3424","weight":0.1172,"lightness":0.1882,"saturation":0.25,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_dark_oak_log.png","family":"stripped_dark_oak","relations":[{"type":"variants","target":"minecraft:stripped_dark_oak_log","label":"Same family: stripped_dark_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_dark_oak_log","label":"Related set: stripped_dark_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_roots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firefly_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Palette proche: Dark Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Palette proche: Dark Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Palette proche: Stripped Dark Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_oak_shelf","label":"Palette proche: Dark Oak Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_log","label":"Palette proche: Mangrove Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wood","label":"Palette proche: Mangrove Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_roots","label":"Palette proche: Mangrove Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.898},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.898},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.896},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.888},{"type":"color_neighbors","target":"minecraft:brown_terracotta","label":"Palette proche: Brown Terracotta","confidence":0.887},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.894},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.826},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.812},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.786},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.786},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.765},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.739},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.739},{"type":"color_bridge","target":"minecraft:campfire","label":"Pont de nuance par sous-ton: Campfire","confidence":0.738},{"type":"color_bridge","target":"minecraft:soul_campfire","label":"Pont de nuance par sous-ton: Soul Campfire","confidence":0.738},{"type":"color_analogous","target":"minecraft:dark_oak_hanging_sign","label":"Couleurs analogues: Dark Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_wall_hanging_sign","label":"Couleurs analogues: Dark Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_dark_oak_log","label":"Couleurs analogues: Stripped Dark Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_roots","label":"Couleurs analogues: Mangrove Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:dark_oak_shelf","label":"Couleurs analogues: Dark Oak Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_trapdoor","label":"Couleurs analogues: Spruce Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:dead_bush","label":"Couleurs analogues: Dead Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_dead_bush","label":"Couleurs analogues: Potted Dead Bush","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.945},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.869},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.831},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.798},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.781},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.775},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.766},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_shulker_box","label":"Harmonie triadique: Purple Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.945},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.934},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.934},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.951},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.951},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.946},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.945},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.936},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.854},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.731},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.697},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.685},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.685},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.685},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.685},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.675},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.65}],"category":"building"},{"id":"minecraft:stripped_jungle_log","name":"Stripped Jungle Log","entry_type":"block","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added stripped logs."},{"version":"1.16 20w06a","status":"added","notes":"Added stripped crimson and warped stems."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove logs."}],"colors":{"primary":"#ab8555","dominant_hex":"#9c844c","average_hex":"#ab8555","hue_group":"yellow","lightness":0.502,"saturation":0.3386,"palette":["#9c844c","#b4845c","#bc8c64","#947c44","#ac8454","#bc9464"],"color_groups":[{"hex":"#9c844c","weight":0.2188,"lightness":0.4549,"saturation":0.3448,"hue_group":"yellow"},{"hex":"#b4845c","weight":0.2109,"lightness":0.5333,"saturation":0.3697,"hue_group":"red"},{"hex":"#bc8c64","weight":0.207,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#947c44","weight":0.168,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#ac8454","weight":0.1445,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#bc9464","weight":0.0508,"lightness":0.5647,"saturation":0.3964,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_jungle_log.png","family":"stripped_jungle","relations":[{"type":"variants","target":"minecraft:stripped_jungle_wood","label":"Same family: stripped_jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_jungle_wood","label":"Related set: stripped_jungle","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:jungle_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lectern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_birch_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_hanging_sign","label":"Palette proche: Jungle Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Palette proche: Jungle Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_jungle_wood","label":"Palette proche: Stripped Jungle Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_shelf","label":"Palette proche: Jungle Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:beehive","label":"Palette proche: Beehive","confidence":0.939},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.935},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.926},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.926},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.926},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.926},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.926},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.926},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.871},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.845},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.844},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.838},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.838},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.838},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.838},{"type":"color_analogous","target":"minecraft:jungle_hanging_sign","label":"Couleurs analogues: Jungle Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_wall_hanging_sign","label":"Couleurs analogues: Jungle Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_jungle_wood","label":"Couleurs analogues: Stripped Jungle Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:glowstone","label":"Couleurs analogues: Glowstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:powered_rail","label":"Couleurs analogues: Powered Rail","confidence":0.96},{"type":"color_analogous","target":"minecraft:sniffer_egg","label":"Couleurs analogues: Sniffer Egg","confidence":0.96},{"type":"color_analogous","target":"minecraft:barrel","label":"Couleurs analogues: Barrel","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire","label":"Couleurs analogues: Fire","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.85},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.812},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.779},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.762},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.756},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.747},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.956},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.956},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.953},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.952},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.956},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.954},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.952},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.922},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.921},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.877},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55}],"category":"natural"},{"id":"minecraft:stripped_jungle_wood","name":"Stripped Jungle Wood","entry_type":"block","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","history":[{"version":"1.13 pre2","status":"added","notes":"Added stripped bark."},{"version":"1.16 20w10a","status":"added","notes":"Added stripped crimson and warped hyphae."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove wood."}],"colors":{"primary":"#ab8555","dominant_hex":"#9c844c","average_hex":"#ab8555","hue_group":"yellow","lightness":0.502,"saturation":0.3386,"palette":["#9c844c","#b4845c","#bc8c64","#947c44","#ac8454","#bc9464"],"color_groups":[{"hex":"#9c844c","weight":0.2188,"lightness":0.4549,"saturation":0.3448,"hue_group":"yellow"},{"hex":"#b4845c","weight":0.2109,"lightness":0.5333,"saturation":0.3697,"hue_group":"red"},{"hex":"#bc8c64","weight":0.207,"lightness":0.5647,"saturation":0.3964,"hue_group":"red"},{"hex":"#947c44","weight":0.168,"lightness":0.4235,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#ac8454","weight":0.1445,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#bc9464","weight":0.0508,"lightness":0.5647,"saturation":0.3964,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_jungle_log.png","family":"stripped_jungle","relations":[{"type":"variants","target":"minecraft:stripped_jungle_log","label":"Same family: stripped_jungle","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_jungle_log","label":"Related set: stripped_jungle","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:jungle_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lectern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_birch_sapling","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jungle_hanging_sign","label":"Palette proche: Jungle Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Palette proche: Jungle Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_jungle_log","label":"Palette proche: Stripped Jungle Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:jungle_shelf","label":"Palette proche: Jungle Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:beehive","label":"Palette proche: Beehive","confidence":0.939},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.935},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.926},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.926},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.926},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.926},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.926},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.926},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.871},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.845},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.844},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.838},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.838},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.838},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.838},{"type":"color_analogous","target":"minecraft:jungle_hanging_sign","label":"Couleurs analogues: Jungle Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:jungle_wall_hanging_sign","label":"Couleurs analogues: Jungle Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_jungle_log","label":"Couleurs analogues: Stripped Jungle Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:glowstone","label":"Couleurs analogues: Glowstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:powered_rail","label":"Couleurs analogues: Powered Rail","confidence":0.96},{"type":"color_analogous","target":"minecraft:sniffer_egg","label":"Couleurs analogues: Sniffer Egg","confidence":0.96},{"type":"color_analogous","target":"minecraft:barrel","label":"Couleurs analogues: Barrel","confidence":0.96},{"type":"color_analogous","target":"minecraft:fire","label":"Couleurs analogues: Fire","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.85},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.812},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.779},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.762},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.756},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.747},{"type":"color_triad","target":"minecraft:purple_stained_glass","label":"Harmonie triadique: Purple Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_stained_glass_pane","label":"Harmonie triadique: Purple Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:torchflower_crop","label":"Harmonie triadique: Torchflower Crop","confidence":0.96},{"type":"color_triad","target":"minecraft:dragon_egg","label":"Harmonie triadique: Dragon Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_lantern","label":"Harmonie triadique: Oxidized Copper Lantern","confidence":0.956},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie triadique: Waxed Oxidized Copper Lantern","confidence":0.956},{"type":"color_triad","target":"minecraft:purple_candle","label":"Harmonie triadique: Purple Candle","confidence":0.953},{"type":"color_triad","target":"minecraft:purple_concrete","label":"Harmonie triadique: Purple Concrete","confidence":0.952},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.956},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.954},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.952},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.922},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.921},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.877},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:stripped_mangrove_log","name":"Stripped Mangrove Log","entry_type":"block","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added stripped logs."},{"version":"1.16 20w06a","status":"added","notes":"Added stripped crimson and warped stems."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove logs."}],"colors":{"primary":"#783630","dominant_hex":"#7c3434","average_hex":"#783630","hue_group":"red","lightness":0.3294,"saturation":0.4286,"palette":["#7c3434","#7c3c2c","#743434","#6c2c2c","#844434"],"color_groups":[{"hex":"#7c3434","weight":0.3359,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#7c3c2c","weight":0.2891,"lightness":0.3294,"saturation":0.4762,"hue_group":"red"},{"hex":"#743434","weight":0.2383,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#6c2c2c","weight":0.1172,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#844434","weight":0.0195,"lightness":0.3608,"saturation":0.4348,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_mangrove_log.png","family":"stripped_mangrove","relations":[{"type":"variants","target":"minecraft:stripped_mangrove_wood","label":"Same family: stripped_mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_mangrove_wood","label":"Related set: stripped_mangrove","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Palette proche: Mangrove Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Palette proche: Mangrove Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_wood","label":"Palette proche: Stripped Mangrove Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.782},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.756},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.756},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.752},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.751},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.734},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.734},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.73},{"type":"color_bridge","target":"minecraft:anvil","label":"Pont de nuance par palette: Anvil","confidence":0.729},{"type":"color_analogous","target":"minecraft:mangrove_hanging_sign","label":"Couleurs analogues: Mangrove Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wall_hanging_sign","label":"Couleurs analogues: Mangrove Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_mangrove_wood","label":"Couleurs analogues: Stripped Mangrove Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_planks","label":"Couleurs analogues: Mangrove Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_pressure_plate","label":"Couleurs analogues: Mangrove Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.929},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.919},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.919},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.914},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.914},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.908},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.901},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.753},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.752},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.735},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.714},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.714},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.64},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.958},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.955},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.947},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.944},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.93},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.929},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.623},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.589},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.583},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.583},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.583},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.583},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.567},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"natural"},{"id":"minecraft:stripped_mangrove_wood","name":"Stripped Mangrove Wood","entry_type":"block","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","history":[{"version":"1.13 pre2","status":"added","notes":"Added stripped bark."},{"version":"1.16 20w10a","status":"added","notes":"Added stripped crimson and warped hyphae."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove wood."}],"colors":{"primary":"#783630","dominant_hex":"#7c3434","average_hex":"#783630","hue_group":"red","lightness":0.3294,"saturation":0.4286,"palette":["#7c3434","#7c3c2c","#743434","#6c2c2c","#844434"],"color_groups":[{"hex":"#7c3434","weight":0.3359,"lightness":0.3451,"saturation":0.4091,"hue_group":"red"},{"hex":"#7c3c2c","weight":0.2891,"lightness":0.3294,"saturation":0.4762,"hue_group":"red"},{"hex":"#743434","weight":0.2383,"lightness":0.3294,"saturation":0.381,"hue_group":"red"},{"hex":"#6c2c2c","weight":0.1172,"lightness":0.298,"saturation":0.4211,"hue_group":"red"},{"hex":"#844434","weight":0.0195,"lightness":0.3608,"saturation":0.4348,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_mangrove_log.png","family":"stripped_mangrove","relations":[{"type":"variants","target":"minecraft:stripped_mangrove_log","label":"Same family: stripped_mangrove","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_mangrove_log","label":"Related set: stripped_mangrove","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_mangrove_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:mangrove_hanging_sign","label":"Palette proche: Mangrove Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_wall_hanging_sign","label":"Palette proche: Mangrove Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_mangrove_log","label":"Palette proche: Stripped Mangrove Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_shelf","label":"Palette proche: Mangrove Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_button","label":"Palette proche: Mangrove Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence","label":"Palette proche: Mangrove Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_fence_gate","label":"Palette proche: Mangrove Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_planks","label":"Palette proche: Mangrove Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_pressure_plate","label":"Palette proche: Mangrove Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_sign","label":"Palette proche: Mangrove Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_slab","label":"Palette proche: Mangrove Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_stairs","label":"Palette proche: Mangrove Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.782},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.756},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.756},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.752},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.751},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.734},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.734},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.73},{"type":"color_bridge","target":"minecraft:anvil","label":"Pont de nuance par palette: Anvil","confidence":0.729},{"type":"color_analogous","target":"minecraft:mangrove_hanging_sign","label":"Couleurs analogues: Mangrove Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wall_hanging_sign","label":"Couleurs analogues: Mangrove Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_mangrove_log","label":"Couleurs analogues: Stripped Mangrove Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_planks","label":"Couleurs analogues: Mangrove Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_pressure_plate","label":"Couleurs analogues: Mangrove Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.929},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.919},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.919},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.914},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.914},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.908},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.901},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.753},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.752},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.735},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.714},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.714},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.64},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.96},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.958},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.955},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.947},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.944},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.93},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.929},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.623},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.589},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.583},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.583},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.583},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.583},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.567},{"type":"value_contrast","target":"minecraft:cherry_hanging_sign","label":"Contraste clair sombre: Cherry Hanging Sign","confidence":0.55}],"category":"building"},{"id":"minecraft:stripped_oak_log","name":"Stripped Oak Log","entry_type":"block","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added stripped logs."},{"version":"1.16 20w06a","status":"added","notes":"Added stripped crimson and warped stems."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove logs."}],"colors":{"primary":"#b19056","dominant_hex":"#bc965c","average_hex":"#b19056","hue_group":"yellow","lightness":0.5157,"saturation":0.3684,"palette":["#bc965c","#c39e64","#ae8c54","#a4854c","#997944","#b4945b"],"color_groups":[{"hex":"#bc965c","weight":0.25,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#c39e64","weight":0.2188,"lightness":0.5784,"saturation":0.4419,"hue_group":"yellow"},{"hex":"#ae8c54","weight":0.1836,"lightness":0.5059,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#a4854c","weight":0.1328,"lightness":0.4706,"saturation":0.3667,"hue_group":"yellow"},{"hex":"#997944","weight":0.1133,"lightness":0.4333,"saturation":0.3846,"hue_group":"yellow"},{"hex":"#b4945b","weight":0.1016,"lightness":0.5314,"saturation":0.3724,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_oak_log.png","family":"stripped_oak","relations":[{"type":"variants","target":"minecraft:stripped_oak_wood","label":"Same family: stripped_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_oak_wood","label":"Related set: stripped_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lectern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beehive","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oak_hanging_sign","label":"Palette proche: Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Palette proche: Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_oak_wood","label":"Palette proche: Stripped Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:beehive","label":"Palette proche: Beehive","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lectern","label":"Palette proche: Lectern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.849},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.842},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.824},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.824},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.822},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.822},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.821},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.814},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.803},{"type":"color_analogous","target":"minecraft:oak_hanging_sign","label":"Couleurs analogues: Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wall_hanging_sign","label":"Couleurs analogues: Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_oak_wood","label":"Couleurs analogues: Stripped Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_bookshelf","label":"Couleurs analogues: Chiseled Bookshelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:beehive","label":"Couleurs analogues: Beehive","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.94},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.924},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.908},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.906},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.84},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.825},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_trapdoor","label":"Harmonie triadique: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Harmonie triadique: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.854},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.854},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.852},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.848},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.832},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.816},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.764},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55}],"category":"natural"},{"id":"minecraft:stripped_oak_wood","name":"Stripped Oak Wood","entry_type":"block","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","history":[{"version":"1.13 pre2","status":"added","notes":"Added stripped bark."},{"version":"1.16 20w10a","status":"added","notes":"Added stripped crimson and warped hyphae."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove wood."}],"colors":{"primary":"#b19056","dominant_hex":"#bc965c","average_hex":"#b19056","hue_group":"yellow","lightness":0.5157,"saturation":0.3684,"palette":["#bc965c","#c39e64","#ae8c54","#a4854c","#997944","#b4945b"],"color_groups":[{"hex":"#bc965c","weight":0.25,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#c39e64","weight":0.2188,"lightness":0.5784,"saturation":0.4419,"hue_group":"yellow"},{"hex":"#ae8c54","weight":0.1836,"lightness":0.5059,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#a4854c","weight":0.1328,"lightness":0.4706,"saturation":0.3667,"hue_group":"yellow"},{"hex":"#997944","weight":0.1133,"lightness":0.4333,"saturation":0.3846,"hue_group":"yellow"},{"hex":"#b4945b","weight":0.1016,"lightness":0.5314,"saturation":0.3724,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_oak_log.png","family":"stripped_oak","relations":[{"type":"variants","target":"minecraft:stripped_oak_log","label":"Same family: stripped_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_oak_log","label":"Related set: stripped_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_bookshelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lectern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beehive","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_jungle_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oak_hanging_sign","label":"Palette proche: Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Palette proche: Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_oak_log","label":"Palette proche: Stripped Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:beehive","label":"Palette proche: Beehive","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lectern","label":"Palette proche: Lectern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.849},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.842},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.824},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.824},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.822},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.822},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.821},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.814},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.803},{"type":"color_analogous","target":"minecraft:oak_hanging_sign","label":"Couleurs analogues: Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wall_hanging_sign","label":"Couleurs analogues: Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_oak_log","label":"Couleurs analogues: Stripped Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_bookshelf","label":"Couleurs analogues: Chiseled Bookshelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:beehive","label":"Couleurs analogues: Beehive","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.94},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.924},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.908},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.906},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.84},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.825},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_trapdoor","label":"Harmonie triadique: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Harmonie triadique: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.854},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.854},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.852},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.848},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.832},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.816},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.764},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:stripped_pale_oak_log","name":"Stripped Pale Oak Log","entry_type":"block","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added stripped logs."},{"version":"1.16 20w06a","status":"added","notes":"Added stripped crimson and warped stems."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove logs."}],"colors":{"primary":"#f6eeed","dominant_hex":"#fcf4f4","average_hex":"#f6eeed","hue_group":"red","lightness":0.9471,"saturation":0.3333,"palette":["#fcf4f4","#fcfcfc","#f4e4e4","#ece4e4","#e4dcdc"],"color_groups":[{"hex":"#fcf4f4","weight":0.3672,"lightness":0.9725,"saturation":0.5714,"hue_group":"red"},{"hex":"#fcfcfc","weight":0.2539,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4e4e4","weight":0.2383,"lightness":0.9255,"saturation":0.4211,"hue_group":"red"},{"hex":"#ece4e4","weight":0.0977,"lightness":0.9098,"saturation":0.1739,"hue_group":"red"},{"hex":"#e4dcdc","weight":0.043,"lightness":0.8784,"saturation":0.129,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_pale_oak_log.png","family":"stripped_pale_oak","relations":[{"type":"variants","target":"minecraft:stripped_pale_oak_wood","label":"Same family: stripped_pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_pale_oak_wood","label":"Related set: stripped_pale_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:pale_oak_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_pale_oak_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_hanging_sign","label":"Palette proche: Pale Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_hanging_sign","label":"Palette proche: Pale Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_pale_oak_wood","label":"Palette proche: Stripped Pale Oak Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pearlescent_froglight","label":"Palette proche: Pearlescent Froglight","confidence":0.927},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.882},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_stairs","label":"Pont de nuance par sous-ton: Pale Oak Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Sign","confidence":0.9},{"type":"color_analogous","target":"minecraft:pale_oak_hanging_sign","label":"Couleurs analogues: Pale Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:pale_oak_wall_hanging_sign","label":"Couleurs analogues: Pale Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_pale_oak_wood","label":"Couleurs analogues: Stripped Pale Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.938},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.934},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.93},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.919},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.899},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.887},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.854},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.845},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.837},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.681},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.68},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.666},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.642},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.642},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.617},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.955},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.948},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.912},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.903},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.903},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.897},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.828},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.798},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.795},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.793},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.785},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.785},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.78},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.77}],"category":"natural"},{"id":"minecraft:stripped_pale_oak_wood","name":"Stripped Pale Oak Wood","entry_type":"block","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","history":[{"version":"1.13 pre2","status":"added","notes":"Added stripped bark."},{"version":"1.16 20w10a","status":"added","notes":"Added stripped crimson and warped hyphae."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove wood."}],"colors":{"primary":"#f6eeed","dominant_hex":"#fcf4f4","average_hex":"#f6eeed","hue_group":"red","lightness":0.9471,"saturation":0.3333,"palette":["#fcf4f4","#fcfcfc","#f4e4e4","#ece4e4","#e4dcdc"],"color_groups":[{"hex":"#fcf4f4","weight":0.3672,"lightness":0.9725,"saturation":0.5714,"hue_group":"red"},{"hex":"#fcfcfc","weight":0.2539,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4e4e4","weight":0.2383,"lightness":0.9255,"saturation":0.4211,"hue_group":"red"},{"hex":"#ece4e4","weight":0.0977,"lightness":0.9098,"saturation":0.1739,"hue_group":"red"},{"hex":"#e4dcdc","weight":0.043,"lightness":0.8784,"saturation":0.129,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_pale_oak_log.png","family":"stripped_pale_oak","relations":[{"type":"variants","target":"minecraft:stripped_pale_oak_log","label":"Same family: stripped_pale_oak","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_pale_oak_log","label":"Related set: stripped_pale_oak","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:pale_oak_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_pale_oak_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_quartz_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pearlescent_froglight","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_planks","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_hanging_sign","label":"Palette proche: Pale Oak Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_hanging_sign","label":"Palette proche: Pale Oak Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_pale_oak_log","label":"Palette proche: Stripped Pale Oak Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pearlescent_froglight","label":"Palette proche: Pearlescent Froglight","confidence":0.927},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.882},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.882},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par sous-ton: Pale Oak Shelf","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par sous-ton: Pale Oak Planks","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par sous-ton: Pale Oak Pressure Plate","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par sous-ton: Pale Oak Sign","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_slab","label":"Pont de nuance par sous-ton: Pale Oak Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_stairs","label":"Pont de nuance par sous-ton: Pale Oak Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:pale_oak_wall_sign","label":"Pont de nuance par sous-ton: Pale Oak Wall Sign","confidence":0.9},{"type":"color_analogous","target":"minecraft:pale_oak_hanging_sign","label":"Couleurs analogues: Pale Oak Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:pale_oak_wall_hanging_sign","label":"Couleurs analogues: Pale Oak Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_pale_oak_log","label":"Couleurs analogues: Stripped Pale Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.938},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.934},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.93},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.919},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.899},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.887},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.854},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.845},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.837},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.681},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.68},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.666},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.642},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.642},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.617},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.96},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.955},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.948},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.912},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.903},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.903},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.897},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.828},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.798},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.795},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.793},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.785},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.785},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.78},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.77}],"category":"building"},{"id":"minecraft:stripped_spruce_log","name":"Stripped Spruce Log","entry_type":"block","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added stripped logs."},{"version":"1.16 20w06a","status":"added","notes":"Added stripped crimson and warped stems."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove logs."}],"colors":{"primary":"#745a34","dominant_hex":"#7c5c34","average_hex":"#745a34","hue_group":"yellow","lightness":0.3294,"saturation":0.381,"palette":["#7c5c34","#645434","#84643c","#735c34","#64542c","#7c5c3c"],"color_groups":[{"hex":"#7c5c34","weight":0.3047,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#645434","weight":0.2422,"lightness":0.298,"saturation":0.3158,"hue_group":"yellow"},{"hex":"#84643c","weight":0.1992,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"},{"hex":"#735c34","weight":0.1484,"lightness":0.3275,"saturation":0.3772,"hue_group":"yellow"},{"hex":"#64542c","weight":0.0859,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c5c3c","weight":0.0195,"lightness":0.3608,"saturation":0.3478,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_spruce_log.png","family":"stripped_spruce","relations":[{"type":"variants","target":"minecraft:stripped_spruce_wood","label":"Same family: stripped_spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_spruce_wood","label":"Related set: stripped_spruce","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_spruce_wood","label":"Palette proche: Stripped Spruce Wood","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_shelf","label":"Palette proche: Spruce Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.934},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.839},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.822},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.822},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.816},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.816},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.815},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.81},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.81},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.809},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_wood","label":"Couleurs analogues: Stripped Spruce Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_log","label":"Couleurs analogues: Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wood","label":"Couleurs analogues: Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:ladder","label":"Couleurs analogues: Ladder","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_trapdoor","label":"Couleurs analogues: Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:bookshelf","label":"Couleurs analogues: Bookshelf","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.917},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.913},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.896},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.888},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.855},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.838},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.831},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.822},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.945},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.945},{"type":"color_triad","target":"minecraft:purple_carpet","label":"Harmonie triadique: Purple Carpet","confidence":0.943},{"type":"color_triad","target":"minecraft:purple_wool","label":"Harmonie triadique: Purple Wool","confidence":0.943},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.958},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.942},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.926},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.874},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.852},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.62},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.586},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.574},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.574},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.574},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.574},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.564},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":"natural"},{"id":"minecraft:stripped_spruce_wood","name":"Stripped Spruce Wood","entry_type":"block","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","history":[{"version":"1.13 pre2","status":"added","notes":"Added stripped bark."},{"version":"1.16 20w10a","status":"added","notes":"Added stripped crimson and warped hyphae."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove wood."}],"colors":{"primary":"#745a34","dominant_hex":"#7c5c34","average_hex":"#745a34","hue_group":"yellow","lightness":0.3294,"saturation":0.381,"palette":["#7c5c34","#645434","#84643c","#735c34","#64542c","#7c5c3c"],"color_groups":[{"hex":"#7c5c34","weight":0.3047,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"},{"hex":"#645434","weight":0.2422,"lightness":0.298,"saturation":0.3158,"hue_group":"yellow"},{"hex":"#84643c","weight":0.1992,"lightness":0.3765,"saturation":0.375,"hue_group":"yellow"},{"hex":"#735c34","weight":0.1484,"lightness":0.3275,"saturation":0.3772,"hue_group":"yellow"},{"hex":"#64542c","weight":0.0859,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c5c3c","weight":0.0195,"lightness":0.3608,"saturation":0.3478,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_spruce_log.png","family":"stripped_spruce","relations":[{"type":"variants","target":"minecraft:stripped_spruce_log","label":"Same family: stripped_spruce","confidence":0.75},{"type":"related_sets","target":"minecraft:stripped_spruce_log","label":"Related set: stripped_spruce","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:spruce_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_spruce_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spruce_hanging_sign","label":"Palette proche: Spruce Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_wall_hanging_sign","label":"Palette proche: Spruce Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_spruce_log","label":"Palette proche: Stripped Spruce Log","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_shelf","label":"Palette proche: Spruce Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:spruce_button","label":"Palette proche: Spruce Button","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_fence","label":"Palette proche: Spruce Fence","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_fence_gate","label":"Palette proche: Spruce Fence Gate","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_planks","label":"Palette proche: Spruce Planks","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_pressure_plate","label":"Palette proche: Spruce Pressure Plate","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_sign","label":"Palette proche: Spruce Sign","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_slab","label":"Palette proche: Spruce Slab","confidence":0.934},{"type":"color_neighbors","target":"minecraft:spruce_stairs","label":"Palette proche: Spruce Stairs","confidence":0.934},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.839},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.822},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.822},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.816},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.816},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.815},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.81},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.81},{"type":"color_bridge","target":"minecraft:muddy_mangrove_roots","label":"Pont de nuance par sous-ton: Muddy Mangrove Roots","confidence":0.809},{"type":"color_analogous","target":"minecraft:spruce_hanging_sign","label":"Couleurs analogues: Spruce Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_wall_hanging_sign","label":"Couleurs analogues: Spruce Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_spruce_log","label":"Couleurs analogues: Stripped Spruce Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_log","label":"Couleurs analogues: Oak Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_wood","label":"Couleurs analogues: Oak Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:ladder","label":"Couleurs analogues: Ladder","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_trapdoor","label":"Couleurs analogues: Oak Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:bookshelf","label":"Couleurs analogues: Bookshelf","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.917},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.913},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.896},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.888},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.855},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.838},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.831},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.822},{"type":"color_triad","target":"minecraft:dark_prismarine","label":"Harmonie triadique: Dark Prismarine","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_slab","label":"Harmonie triadique: Dark Prismarine Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:dark_prismarine_stairs","label":"Harmonie triadique: Dark Prismarine Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:purple_glazed_terracotta","label":"Harmonie triadique: Purple Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_chiseled_copper","label":"Harmonie triadique: Oxidized Chiseled Copper","confidence":0.945},{"type":"color_triad","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Harmonie triadique: Waxed Oxidized Chiseled Copper","confidence":0.945},{"type":"color_triad","target":"minecraft:purple_carpet","label":"Harmonie triadique: Purple Carpet","confidence":0.943},{"type":"color_triad","target":"minecraft:purple_wool","label":"Harmonie triadique: Purple Wool","confidence":0.943},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.958},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.942},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.926},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.874},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.852},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.62},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.586},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.574},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.574},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.574},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.574},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.564},{"type":"value_contrast","target":"minecraft:birch_trapdoor","label":"Contraste clair sombre: Birch Trapdoor","confidence":0.55}],"category":"building"},{"id":"minecraft:stripped_warped_hyphae","name":"Stripped Warped Hyphae","entry_type":"block","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","history":[{"version":"1.13 pre2","status":"added","notes":"Added stripped bark."},{"version":"1.16 20w10a","status":"added","notes":"Added stripped crimson and warped hyphae."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove wood."}],"colors":{"primary":"#3a9794","dominant_hex":"#3c9c94","average_hex":"#3a9794","hue_group":"cyan","lightness":0.4098,"saturation":0.445,"palette":["#3c9c94","#43a59d","#348c8c","#348c84","#34948c","#2c847c"],"color_groups":[{"hex":"#3c9c94","weight":0.3203,"lightness":0.4235,"saturation":0.4444,"hue_group":"cyan"},{"hex":"#43a59d","weight":0.293,"lightness":0.4549,"saturation":0.4224,"hue_group":"cyan"},{"hex":"#348c8c","weight":0.1719,"lightness":0.3765,"saturation":0.4583,"hue_group":"cyan"},{"hex":"#348c84","weight":0.0898,"lightness":0.3765,"saturation":0.4583,"hue_group":"cyan"},{"hex":"#34948c","weight":0.0664,"lightness":0.3922,"saturation":0.48,"hue_group":"cyan"},{"hex":"#2c847c","weight":0.0586,"lightness":0.3451,"saturation":0.5,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_warped_stem.png","family":"stripped_warped_hyphae","relations":[{"type":"visual_neighbors","target":"minecraft:stripped_warped_stem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_hanging_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_hanging_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_shelf","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:stripped_warped_stem","label":"Palette proche: Stripped Warped Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_hanging_sign","label":"Palette proche: Warped Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wall_hanging_sign","label":"Palette proche: Warped Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.896},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.875},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.865},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.746},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.715},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.678},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.678},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.664},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.664},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.66},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.66},{"type":"color_analogous","target":"minecraft:stripped_warped_stem","label":"Couleurs analogues: Stripped Warped Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_hanging_sign","label":"Couleurs analogues: Warped Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_wall_hanging_sign","label":"Couleurs analogues: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_shelf","label":"Couleurs analogues: Warped Shelf","confidence":0.933},{"type":"color_analogous","target":"minecraft:warped_door","label":"Couleurs analogues: Warped Door","confidence":0.931},{"type":"color_analogous","target":"minecraft:cyan_candle","label":"Couleurs analogues: Cyan Candle","confidence":0.93},{"type":"color_analogous","target":"minecraft:warped_wart_block","label":"Couleurs analogues: Warped Wart Block","confidence":0.918},{"type":"color_analogous","target":"minecraft:beacon","label":"Couleurs analogues: Beacon","confidence":0.914},{"type":"color_complement","target":"minecraft:nether_wart","label":"Contraste complementaire: Nether Wart","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_brick_slab","label":"Contraste complementaire: Red Nether Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_brick_stairs","label":"Contraste complementaire: Red Nether Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_brick_wall","label":"Contraste complementaire: Red Nether Brick Wall","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_bricks","label":"Contraste complementaire: Red Nether Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:black_glazed_terracotta","label":"Contraste complementaire: Black Glazed Terracotta","confidence":0.954},{"type":"color_complement","target":"minecraft:pink_terracotta","label":"Contraste complementaire: Pink Terracotta","confidence":0.95},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.948},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.96},{"type":"color_triad","target":"minecraft:turtle_egg","label":"Harmonie triadique: Turtle Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.95},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.932},{"type":"color_triad","target":"minecraft:potted_acacia_sapling","label":"Harmonie triadique: Potted Acacia Sapling","confidence":0.932},{"type":"color_triad","target":"minecraft:chorus_plant","label":"Harmonie triadique: Chorus Plant","confidence":0.91},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.904},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.899},{"type":"color_square","target":"minecraft:sugar_cane","label":"Harmonie carree: Sugar Cane","confidence":0.96},{"type":"color_square","target":"minecraft:medium_amethyst_bud","label":"Harmonie carree: Medium Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:large_amethyst_bud","label":"Harmonie carree: Large Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:azure_bluet","label":"Harmonie carree: Azure Bluet","confidence":0.96},{"type":"color_square","target":"minecraft:potted_azure_bluet","label":"Harmonie carree: Potted Azure Bluet","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_cluster","label":"Harmonie carree: Amethyst Cluster","confidence":0.96},{"type":"color_square","target":"minecraft:allium","label":"Harmonie carree: Allium","confidence":0.96},{"type":"color_square","target":"minecraft:potted_allium","label":"Harmonie carree: Potted Allium","confidence":0.96},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55}],"category":""},{"id":"minecraft:stripped_warped_stem","name":"Stripped Warped Stem","entry_type":"block","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added stripped logs."},{"version":"1.16 20w06a","status":"added","notes":"Added stripped crimson and warped stems."},{"version":"1.19 22w11a","status":"added","notes":"Added stripped mangrove logs."}],"colors":{"primary":"#3a9794","dominant_hex":"#3c9c94","average_hex":"#3a9794","hue_group":"cyan","lightness":0.4098,"saturation":0.445,"palette":["#3c9c94","#43a59d","#348c8c","#348c84","#34948c","#2c847c"],"color_groups":[{"hex":"#3c9c94","weight":0.3203,"lightness":0.4235,"saturation":0.4444,"hue_group":"cyan"},{"hex":"#43a59d","weight":0.293,"lightness":0.4549,"saturation":0.4224,"hue_group":"cyan"},{"hex":"#348c8c","weight":0.1719,"lightness":0.3765,"saturation":0.4583,"hue_group":"cyan"},{"hex":"#348c84","weight":0.0898,"lightness":0.3765,"saturation":0.4583,"hue_group":"cyan"},{"hex":"#34948c","weight":0.0664,"lightness":0.3922,"saturation":0.48,"hue_group":"cyan"},{"hex":"#2c847c","weight":0.0586,"lightness":0.3451,"saturation":0.5,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_warped_stem.png","family":"stripped_warped_stem","relations":[{"type":"visual_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_hanging_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_hanging_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_shelf","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_hanging_sign","label":"Palette proche: Warped Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wall_hanging_sign","label":"Palette proche: Warped Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.896},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.875},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.865},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.746},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.715},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.678},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.678},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.664},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.664},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.66},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.66},{"type":"color_analogous","target":"minecraft:stripped_warped_hyphae","label":"Couleurs analogues: Stripped Warped Hyphae","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_hanging_sign","label":"Couleurs analogues: Warped Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_wall_hanging_sign","label":"Couleurs analogues: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_shelf","label":"Couleurs analogues: Warped Shelf","confidence":0.933},{"type":"color_analogous","target":"minecraft:warped_door","label":"Couleurs analogues: Warped Door","confidence":0.931},{"type":"color_analogous","target":"minecraft:cyan_candle","label":"Couleurs analogues: Cyan Candle","confidence":0.93},{"type":"color_analogous","target":"minecraft:warped_wart_block","label":"Couleurs analogues: Warped Wart Block","confidence":0.918},{"type":"color_analogous","target":"minecraft:beacon","label":"Couleurs analogues: Beacon","confidence":0.914},{"type":"color_complement","target":"minecraft:nether_wart","label":"Contraste complementaire: Nether Wart","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_brick_slab","label":"Contraste complementaire: Red Nether Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_brick_stairs","label":"Contraste complementaire: Red Nether Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_brick_wall","label":"Contraste complementaire: Red Nether Brick Wall","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_bricks","label":"Contraste complementaire: Red Nether Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:black_glazed_terracotta","label":"Contraste complementaire: Black Glazed Terracotta","confidence":0.954},{"type":"color_complement","target":"minecraft:pink_terracotta","label":"Contraste complementaire: Pink Terracotta","confidence":0.95},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.948},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.96},{"type":"color_triad","target":"minecraft:turtle_egg","label":"Harmonie triadique: Turtle Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.95},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.932},{"type":"color_triad","target":"minecraft:potted_acacia_sapling","label":"Harmonie triadique: Potted Acacia Sapling","confidence":0.932},{"type":"color_triad","target":"minecraft:chorus_plant","label":"Harmonie triadique: Chorus Plant","confidence":0.91},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.904},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.899},{"type":"color_square","target":"minecraft:sugar_cane","label":"Harmonie carree: Sugar Cane","confidence":0.96},{"type":"color_square","target":"minecraft:medium_amethyst_bud","label":"Harmonie carree: Medium Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:large_amethyst_bud","label":"Harmonie carree: Large Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:azure_bluet","label":"Harmonie carree: Azure Bluet","confidence":0.96},{"type":"color_square","target":"minecraft:potted_azure_bluet","label":"Harmonie carree: Potted Azure Bluet","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_cluster","label":"Harmonie carree: Amethyst Cluster","confidence":0.96},{"type":"color_square","target":"minecraft:allium","label":"Harmonie carree: Allium","confidence":0.96},{"type":"color_square","target":"minecraft:potted_allium","label":"Harmonie carree: Potted Allium","confidence":0.96},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55}],"category":"natural"},{"id":"minecraft:structure_block","name":"Structure Block","entry_type":"block","description":"A structure block is used to generate structures manually. They can also be used to save and load structures, alongside structure void blocks.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added structure blocks."},{"version":"wiki-history","status":"added","notes":"added to structure blocks."},{"version":"1.21.5 25w02a","status":"added","notes":"Added the \"Strict Placement\" option."}],"colors":{"primary":"#594a5a","dominant_hex":"#241c2c","average_hex":"#594a5a","hue_group":"neutral","lightness":0.3216,"saturation":0.0976,"palette":["#241c2c","#141414","#937b93","#bf9fbf","#d4bed4","#343434"],"color_groups":[{"hex":"#241c2c","weight":0.2969,"lightness":0.1412,"saturation":0.2222,"hue_group":"purple"},{"hex":"#141414","weight":0.2578,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#937b93","weight":0.1797,"lightness":0.5294,"saturation":0.1,"hue_group":"neutral"},{"hex":"#bf9fbf","weight":0.1094,"lightness":0.6863,"saturation":0.2,"hue_group":"purple"},{"hex":"#d4bed4","weight":0.1094,"lightness":0.7882,"saturation":0.2037,"hue_group":"purple"},{"hex":"#343434","weight":0.0469,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/structure_block.png","family":"structure_block","relations":[{"type":"visual_neighbors","target":"minecraft:pale_oak_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jigsaw","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_core","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_campfire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lantern","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:jigsaw","label":"Palette proche: Jigsaw","confidence":0.94},{"type":"color_neighbors","target":"minecraft:closed_eyeblossom","label":"Palette proche: Closed Eyeblossom","confidence":0.772},{"type":"color_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Palette proche: Potted Closed Eyeblossom","confidence":0.772},{"type":"color_neighbors","target":"minecraft:open_eyeblossom","label":"Palette proche: Open Eyeblossom","confidence":0.77},{"type":"color_neighbors","target":"minecraft:netherite_block","label":"Palette proche: Netherite Block","confidence":0.761},{"type":"color_neighbors","target":"minecraft:bedrock","label":"Palette proche: Bedrock","confidence":0.755},{"type":"color_neighbors","target":"minecraft:cracked_deepslate_tiles","label":"Palette proche: Cracked Deepslate Tiles","confidence":0.748},{"type":"color_neighbors","target":"minecraft:deepslate_tile_slab","label":"Palette proche: Deepslate Tile Slab","confidence":0.747},{"type":"color_neighbors","target":"minecraft:deepslate_tile_stairs","label":"Palette proche: Deepslate Tile Stairs","confidence":0.747},{"type":"color_neighbors","target":"minecraft:deepslate_tile_wall","label":"Palette proche: Deepslate Tile Wall","confidence":0.747},{"type":"color_neighbors","target":"minecraft:deepslate_tiles","label":"Palette proche: Deepslate Tiles","confidence":0.747},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.745},{"type":"color_bridge","target":"minecraft:jigsaw","label":"Pont de nuance par palette: Jigsaw","confidence":0.86},{"type":"color_bridge","target":"minecraft:closed_eyeblossom","label":"Pont de nuance par palette: Closed Eyeblossom","confidence":0.812},{"type":"color_bridge","target":"minecraft:potted_closed_eyeblossom","label":"Pont de nuance par palette: Potted Closed Eyeblossom","confidence":0.812},{"type":"color_bridge","target":"minecraft:open_eyeblossom","label":"Pont de nuance par palette: Open Eyeblossom","confidence":0.81},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par palette: Netherite Block","confidence":0.803},{"type":"color_bridge","target":"minecraft:bedrock","label":"Pont de nuance par palette: Bedrock","confidence":0.799},{"type":"color_bridge","target":"minecraft:cracked_deepslate_tiles","label":"Pont de nuance par palette: Cracked Deepslate Tiles","confidence":0.792},{"type":"color_bridge","target":"minecraft:deepslate_tile_slab","label":"Pont de nuance par palette: Deepslate Tile Slab","confidence":0.791},{"type":"color_bridge","target":"minecraft:deepslate_tile_stairs","label":"Pont de nuance par palette: Deepslate Tile Stairs","confidence":0.791},{"type":"color_bridge","target":"minecraft:deepslate_tile_wall","label":"Pont de nuance par palette: Deepslate Tile Wall","confidence":0.791},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.631},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.598},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.596},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.595},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.595},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.576},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.576},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.576}],"category":"technical"},{"id":"minecraft:structure_void","name":"Structure Void","entry_type":"block","description":"A structure void is an invisible block that is not saved by structure blocks, allowing for the creation of structures that leave some existing blocks unchanged when loaded.","history":[{"version":"1.10 16w20a","status":"added","notes":"Added structure voids. Originally, developers used barrier blocks for their purpose."}],"colors":{"primary":"#19575d","dominant_hex":"#0c4c4c","average_hex":"#19575d","hue_group":"cyan","lightness":0.2314,"saturation":0.5763,"palette":["#0c4c4c","#145c64","#0c545c","#5c747c","#64848c"],"color_groups":[{"hex":"#0c4c4c","weight":0.371,"lightness":0.1725,"saturation":0.7273,"hue_group":"cyan"},{"hex":"#145c64","weight":0.3629,"lightness":0.2353,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#0c545c","weight":0.1532,"lightness":0.2039,"saturation":0.7692,"hue_group":"cyan"},{"hex":"#5c747c","weight":0.1048,"lightness":0.4235,"saturation":0.1481,"hue_group":"cyan"},{"hex":"#64848c","weight":0.0081,"lightness":0.4706,"saturation":0.1667,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/structure_void.png","family":"structure_void","relations":[{"type":"visual_neighbors","target":"minecraft:torchflower_crop","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:void_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.822},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.816},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.812},{"type":"color_neighbors","target":"minecraft:warped_nylium","label":"Palette proche: Warped Nylium","confidence":0.806},{"type":"color_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Palette proche: Calibrated Sculk Sensor","confidence":0.797},{"type":"color_neighbors","target":"minecraft:sculk_sensor","label":"Palette proche: Sculk Sensor","confidence":0.797},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.795},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.791},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.791},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.78},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.78},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.777},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.711},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.703},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par sous-ton: Trial Spawner","confidence":0.691},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.679},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.679},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.675},{"type":"color_bridge","target":"minecraft:gray_glazed_terracotta","label":"Pont de nuance par palette: Gray Glazed Terracotta","confidence":0.674},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.673},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.673},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.669},{"type":"color_analogous","target":"minecraft:cyan_glazed_terracotta","label":"Couleurs analogues: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_concrete_powder","label":"Couleurs analogues: Cyan Concrete Powder","confidence":0.953},{"type":"color_analogous","target":"minecraft:cyan_shulker_box","label":"Couleurs analogues: Cyan Shulker Box","confidence":0.941},{"type":"color_analogous","target":"minecraft:cyan_carpet","label":"Couleurs analogues: Cyan Carpet","confidence":0.939},{"type":"color_analogous","target":"minecraft:cyan_wool","label":"Couleurs analogues: Cyan Wool","confidence":0.939},{"type":"color_analogous","target":"minecraft:calibrated_sculk_sensor","label":"Couleurs analogues: Calibrated Sculk Sensor","confidence":0.92},{"type":"color_analogous","target":"minecraft:sculk_sensor","label":"Couleurs analogues: Sculk Sensor","confidence":0.92},{"type":"color_analogous","target":"minecraft:blue_orchid","label":"Couleurs analogues: Blue Orchid","confidence":0.91},{"type":"color_complement","target":"minecraft:mangrove_hanging_sign","label":"Contraste complementaire: Mangrove Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:mangrove_wall_hanging_sign","label":"Contraste complementaire: Mangrove Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_mangrove_log","label":"Contraste complementaire: Stripped Mangrove Log","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_mangrove_wood","label":"Contraste complementaire: Stripped Mangrove Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:tnt","label":"Contraste complementaire: Tnt","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_door","label":"Contraste complementaire: Cherry Door","confidence":0.959},{"type":"color_complement","target":"minecraft:mangrove_trapdoor","label":"Contraste complementaire: Mangrove Trapdoor","confidence":0.956},{"type":"color_complement","target":"minecraft:redstone_torch","label":"Contraste complementaire: Redstone Torch","confidence":0.956},{"type":"color_triad","target":"minecraft:magenta_concrete","label":"Harmonie triadique: Magenta Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_shulker_box","label":"Harmonie triadique: Magenta Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_carpet","label":"Harmonie triadique: Magenta Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_wool","label":"Harmonie triadique: Magenta Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:wet_sponge","label":"Harmonie triadique: Wet Sponge","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_slab","label":"Harmonie triadique: End Stone Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_stairs","label":"Harmonie triadique: End Stone Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:end_stone_brick_wall","label":"Harmonie triadique: End Stone Brick Wall","confidence":0.96},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.954},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.95},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.944},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.941},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.941},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.934},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.93},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.71},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.71},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.71},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.686},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.652},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.64},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.64},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.63}],"category":"technical"},{"id":"minecraft:sugar","name":"Sugar","entry_type":"item","description":"Sugar is a food ingredient and brewing ingredient made from sugar cane or honey bottles.","history":[{"version":"1.2","status":"added","notes":"Added sugar. Sugar can be used to craft cake ."}],"colors":{"primary":"#c5c5cf","dominant_hex":"#fcfcfc","average_hex":"#c5c5cf","hue_group":"neutral","lightness":0.7922,"saturation":0.0943,"palette":["#fcfcfc","#d4d4dc","#54546c","#bcbccc","#ececec"],"color_groups":[{"hex":"#fcfcfc","weight":0.2955,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d4d4dc","weight":0.2159,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#54546c","weight":0.1932,"lightness":0.3765,"saturation":0.125,"hue_group":"blue"},{"hex":"#bcbccc","weight":0.1932,"lightness":0.7686,"saturation":0.1356,"hue_group":"blue"},{"hex":"#ececec","weight":0.1023,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/sugar.png","family":"sugar","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:paper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polar_bear_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:feather","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:splash_potion","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_star","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_tears","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_membrane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_bucket","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:sugar_cane","name":"Sugar Cane","entry_type":"block","description":"Sugar cane is a plant that can only be placed on plantable blocks adjacent to water. It grows up to three blocks tall over time, but will instead uproot itself if its water is removed. Sugar cane can be crafted into sugar and paper.","history":[{"version":"v1.0.11","status":"added","notes":"Added reeds."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell sugar cane."}],"colors":{"primary":"#95c165","dominant_hex":"#84ac5c","average_hex":"#95c165","hue_group":"yellow","lightness":0.5765,"saturation":0.4259,"palette":["#84ac5c","#acdc74","#80d32f","#6c8444","#94c464","#e4ecdc"],"color_groups":[{"hex":"#84ac5c","weight":0.3972,"lightness":0.5176,"saturation":0.3252,"hue_group":"green"},{"hex":"#acdc74","weight":0.3404,"lightness":0.6588,"saturation":0.5977,"hue_group":"yellow"},{"hex":"#80d32f","weight":0.0922,"lightness":0.5059,"saturation":0.6508,"hue_group":"green"},{"hex":"#6c8444","weight":0.0567,"lightness":0.3922,"saturation":0.32,"hue_group":"yellow"},{"hex":"#94c464","weight":0.0567,"lightness":0.5804,"saturation":0.4486,"hue_group":"green"},{"hex":"#e4ecdc","weight":0.0567,"lightness":0.8941,"saturation":0.2963,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sugar_cane.png","family":"sugar_cane","relations":[{"type":"visual_neighbors","target":"minecraft:pitcher_crop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:short_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:azure_bluet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_azure_bluet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_dry_grass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:lime_concrete_powder","label":"Palette proche: Lime Concrete Powder","confidence":0.833},{"type":"color_neighbors","target":"minecraft:big_dripleaf","label":"Palette proche: Big Dripleaf","confidence":0.76},{"type":"color_neighbors","target":"minecraft:mangrove_propagule","label":"Palette proche: Mangrove Propagule","confidence":0.756},{"type":"color_neighbors","target":"minecraft:slime_block","label":"Palette proche: Slime Block","confidence":0.749},{"type":"color_neighbors","target":"minecraft:birch_sapling","label":"Palette proche: Birch Sapling","confidence":0.735},{"type":"color_neighbors","target":"minecraft:potted_birch_sapling","label":"Palette proche: Potted Birch Sapling","confidence":0.735},{"type":"color_neighbors","target":"minecraft:lime_carpet","label":"Palette proche: Lime Carpet","confidence":0.73},{"type":"color_neighbors","target":"minecraft:lime_wool","label":"Palette proche: Lime Wool","confidence":0.73},{"type":"color_neighbors","target":"minecraft:test_block","label":"Palette proche: Test Block","confidence":0.724},{"type":"color_neighbors","target":"minecraft:lime_stained_glass","label":"Palette proche: Lime Stained Glass","confidence":0.716},{"type":"color_neighbors","target":"minecraft:lime_candle","label":"Palette proche: Lime Candle","confidence":0.715},{"type":"color_neighbors","target":"minecraft:bamboo_block","label":"Palette proche: Bamboo Block","confidence":0.708},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.746},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.746},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Door","confidence":0.707},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par sous-ton: Weathered Copper Door","confidence":0.707},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.703},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.703},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.7},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Cut Copper","confidence":0.7},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Weathered Cut Copper Slab","confidence":0.7},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Weathered Cut Copper Stairs","confidence":0.7},{"type":"color_analogous","target":"minecraft:azure_bluet","label":"Couleurs analogues: Azure Bluet","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_azure_bluet","label":"Couleurs analogues: Potted Azure Bluet","confidence":0.96},{"type":"color_analogous","target":"minecraft:lime_shulker_box","label":"Couleurs analogues: Lime Shulker Box","confidence":0.95},{"type":"color_analogous","target":"minecraft:lime_carpet","label":"Couleurs analogues: Lime Carpet","confidence":0.942},{"type":"color_analogous","target":"minecraft:lime_wool","label":"Couleurs analogues: Lime Wool","confidence":0.942},{"type":"color_analogous","target":"minecraft:cactus","label":"Couleurs analogues: Cactus","confidence":0.938},{"type":"color_analogous","target":"minecraft:lime_candle","label":"Couleurs analogues: Lime Candle","confidence":0.937},{"type":"color_analogous","target":"minecraft:kelp_plant","label":"Couleurs analogues: Kelp Plant","confidence":0.931},{"type":"color_complement","target":"minecraft:medium_amethyst_bud","label":"Contraste complementaire: Medium Amethyst Bud","confidence":0.96},{"type":"color_complement","target":"minecraft:amethyst_cluster","label":"Contraste complementaire: Amethyst Cluster","confidence":0.96},{"type":"color_complement","target":"minecraft:allium","label":"Contraste complementaire: Allium","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_allium","label":"Contraste complementaire: Potted Allium","confidence":0.96},{"type":"color_complement","target":"minecraft:large_amethyst_bud","label":"Contraste complementaire: Large Amethyst Bud","confidence":0.953},{"type":"color_complement","target":"minecraft:crying_obsidian","label":"Contraste complementaire: Crying Obsidian","confidence":0.935},{"type":"color_complement","target":"minecraft:respawn_anchor","label":"Contraste complementaire: Respawn Anchor","confidence":0.841},{"type":"color_complement","target":"minecraft:nether_portal","label":"Contraste complementaire: Nether Portal","confidence":0.841},{"type":"color_triad","target":"minecraft:cherry_log","label":"Harmonie triadique: Cherry Log","confidence":0.936},{"type":"color_triad","target":"minecraft:cherry_wood","label":"Harmonie triadique: Cherry Wood","confidence":0.936},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.895},{"type":"color_triad","target":"minecraft:air","label":"Harmonie triadique: Air","confidence":0.861},{"type":"color_triad","target":"minecraft:cave_air","label":"Harmonie triadique: Cave Air","confidence":0.861},{"type":"color_triad","target":"minecraft:void_air","label":"Harmonie triadique: Void Air","confidence":0.861},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.845},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.842},{"type":"color_square","target":"minecraft:pink_terracotta","label":"Harmonie carree: Pink Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_hyphae","label":"Harmonie carree: Stripped Warped Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_warped_stem","label":"Harmonie carree: Stripped Warped Stem","confidence":0.96},{"type":"color_square","target":"minecraft:warped_hanging_sign","label":"Harmonie carree: Warped Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:warped_wall_hanging_sign","label":"Harmonie carree: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:nether_wart","label":"Harmonie carree: Nether Wart","confidence":0.955},{"type":"color_square","target":"minecraft:netherrack","label":"Harmonie carree: Netherrack","confidence":0.944},{"type":"color_square","target":"minecraft:red_nether_brick_slab","label":"Harmonie carree: Red Nether Brick Slab","confidence":0.944},{"type":"value_contrast","target":"minecraft:jungle_sapling","label":"Contraste clair sombre: Jungle Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_jungle_sapling","label":"Contraste clair sombre: Potted Jungle Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_spruce_sapling","label":"Contraste clair sombre: Potted Spruce Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_sapling","label":"Contraste clair sombre: Spruce Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:dried_kelp_block","label":"Contraste clair sombre: Dried Kelp Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:gilded_blackstone","label":"Contraste clair sombre: Gilded Blackstone","confidence":0.55}],"category":""},{"id":"minecraft:sunflower","name":"Sunflower","entry_type":"block","description":"A sunflower is a tall flower that generates exclusively in sunflower plains biomes. It can be crafted into two yellow dye.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added sunflowers."}],"colors":{"primary":"#39871f","dominant_hex":"#4c8c2c","average_hex":"#39871f","hue_group":"green","lightness":0.3255,"saturation":0.6265,"palette":["#4c8c2c","#147c04","#549c2c","#246424","#54ac2c"],"color_groups":[{"hex":"#4c8c2c","weight":0.3333,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#147c04","weight":0.2807,"lightness":0.251,"saturation":0.9375,"hue_group":"green"},{"hex":"#549c2c","weight":0.193,"lightness":0.3922,"saturation":0.56,"hue_group":"green"},{"hex":"#246424","weight":0.1404,"lightness":0.2667,"saturation":0.4706,"hue_group":"green"},{"hex":"#54ac2c","weight":0.0526,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sunflower_bottom.png","family":"sunflower","relations":[{"type":"visual_neighbors","target":"minecraft:beetroots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:emerald_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wheat","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:seagrass","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.928},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.925},{"type":"color_neighbors","target":"minecraft:carrots","label":"Palette proche: Carrots","confidence":0.912},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.882},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.882},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.872},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.872},{"type":"color_neighbors","target":"minecraft:seagrass","label":"Palette proche: Seagrass","confidence":0.863},{"type":"color_neighbors","target":"minecraft:tall_seagrass","label":"Palette proche: Tall Seagrass","confidence":0.859},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.85},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.85},{"type":"color_neighbors","target":"minecraft:cactus","label":"Palette proche: Cactus","confidence":0.776},{"type":"color_bridge","target":"minecraft:rose_bush","label":"Pont de nuance par palette: Rose Bush","confidence":0.738},{"type":"color_bridge","target":"minecraft:poppy","label":"Pont de nuance par palette: Poppy","confidence":0.669},{"type":"color_bridge","target":"minecraft:potted_poppy","label":"Pont de nuance par palette: Potted Poppy","confidence":0.669},{"type":"color_bridge","target":"minecraft:blue_orchid","label":"Pont de nuance par palette: Blue Orchid","confidence":0.658},{"type":"color_bridge","target":"minecraft:potted_blue_orchid","label":"Pont de nuance par palette: Potted Blue Orchid","confidence":0.658},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.635},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.635},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.632},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.632},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.626},{"type":"color_analogous","target":"minecraft:beetroots","label":"Couleurs analogues: Beetroots","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_white_tulip","label":"Couleurs analogues: Potted White Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:white_tulip","label":"Couleurs analogues: White Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_tulip","label":"Couleurs analogues: Pink Tulip","confidence":0.952},{"type":"color_analogous","target":"minecraft:potted_pink_tulip","label":"Couleurs analogues: Potted Pink Tulip","confidence":0.952},{"type":"color_analogous","target":"minecraft:potatoes","label":"Couleurs analogues: Potatoes","confidence":0.934},{"type":"color_analogous","target":"minecraft:slime_block","label":"Couleurs analogues: Slime Block","confidence":0.887},{"type":"color_analogous","target":"minecraft:test_block","label":"Couleurs analogues: Test Block","confidence":0.881},{"type":"color_complement","target":"minecraft:magenta_stained_glass","label":"Contraste complementaire: Magenta Stained Glass","confidence":0.956},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.934},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.735},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.72},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.72},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.682},{"type":"color_complement","target":"minecraft:purple_shulker_box","label":"Contraste complementaire: Purple Shulker Box","confidence":0.642},{"type":"color_complement","target":"minecraft:purple_candle","label":"Contraste complementaire: Purple Candle","confidence":0.634},{"type":"color_triad","target":"minecraft:tube_coral","label":"Harmonie triadique: Tube Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:tube_coral_fan","label":"Harmonie triadique: Tube Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:tube_coral_wall_fan","label":"Harmonie triadique: Tube Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:tube_coral_block","label":"Harmonie triadique: Tube Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_crimson_roots","label":"Harmonie triadique: Potted Crimson Roots","confidence":0.917},{"type":"color_triad","target":"minecraft:crimson_roots","label":"Harmonie triadique: Crimson Roots","confidence":0.892},{"type":"color_triad","target":"minecraft:black_concrete","label":"Harmonie triadique: Black Concrete","confidence":0.892},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.89},{"type":"color_square","target":"minecraft:copper_bars","label":"Harmonie carree: Copper Bars","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_bars","label":"Harmonie carree: Waxed Copper Bars","confidence":0.96},{"type":"color_square","target":"minecraft:copper_chain","label":"Harmonie carree: Copper Chain","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_chain","label":"Harmonie carree: Waxed Copper Chain","confidence":0.96},{"type":"color_square","target":"minecraft:light_blue_carpet","label":"Harmonie carree: Light Blue Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:light_blue_wool","label":"Harmonie carree: Light Blue Wool","confidence":0.96},{"type":"color_square","target":"minecraft:copper_grate","label":"Harmonie carree: Copper Grate","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_grate","label":"Harmonie carree: Waxed Copper Grate","confidence":0.96},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.606},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.572},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_slab","label":"Contraste clair sombre: End Stone Brick Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_stairs","label":"Contraste clair sombre: End Stone Brick Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_brick_wall","label":"Contraste clair sombre: End Stone Brick Wall","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_stone_bricks","label":"Contraste clair sombre: End Stone Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55}],"category":"natural"},{"id":"minecraft:suspicious_gravel","name":"Suspicious Gravel","entry_type":"block","description":"Suspicious gravel is a fragile gravity-affected block found in various Overworld structures. It can be brushed to extract unique structure-dependent loot from it. It drops nothing if it breaks, and will break if it falls or is moved.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added suspicious gravel."}],"colors":{"primary":"#827d7c","dominant_hex":"#979696","average_hex":"#827d7c","hue_group":"neutral","lightness":0.498,"saturation":0.0236,"palette":["#979696","#746c6c","#847c7c","#8c847c","#645c5c","#6c6464"],"color_groups":[{"hex":"#979696","weight":0.2695,"lightness":0.5902,"saturation":0.0048,"hue_group":"neutral"},{"hex":"#746c6c","weight":0.2617,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#847c7c","weight":0.2266,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"},{"hex":"#8c847c","weight":0.1328,"lightness":0.5176,"saturation":0.065,"hue_group":"neutral"},{"hex":"#645c5c","weight":0.0781,"lightness":0.3765,"saturation":0.0417,"hue_group":"neutral"},{"hex":"#6c6464","weight":0.0312,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/suspicious_gravel_0.png","family":"suspicious_gravel","relations":[{"type":"visual_neighbors","target":"minecraft:gravel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:open_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_bubble_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gravel","label":"Palette proche: Gravel","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:furnace","label":"Palette proche: Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_bridge","target":"minecraft:gravel","label":"Pont de nuance par palette: Gravel","confidence":0.86},{"type":"color_bridge","target":"minecraft:lily_pad","label":"Pont de nuance par palette: Lily Pad","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:furnace","label":"Pont de nuance par palette: Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55}],"category":""},{"id":"minecraft:suspicious_sand","name":"Suspicious Sand","entry_type":"block","description":"Suspicious sand is a fragile gravity-affected block found in various Overworld structures. It can be brushed to extract unique structure-dependent loot from it. It drops nothing if it breaks, and will break if it falls or is moved.","history":[{"version":"1.19.4","status":"added","notes":"Added suspicious sand behind the \" Update 1.20 \" experimental data pack ."},{"version":"wiki-history","status":"added","notes":"added room in desert pyramids ."}],"colors":{"primary":"#dacc9f","dominant_hex":"#dccca4","average_hex":"#dacc9f","hue_group":"yellow","lightness":0.7392,"saturation":0.4436,"palette":["#dccca4","#d4c494","#e4dcb4","#d4bc8c","#e6e6c0","#c4ac74"],"color_groups":[{"hex":"#dccca4","weight":0.3008,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#d4c494","weight":0.2227,"lightness":0.7059,"saturation":0.4267,"hue_group":"yellow"},{"hex":"#e4dcb4","weight":0.1836,"lightness":0.8,"saturation":0.4706,"hue_group":"yellow"},{"hex":"#d4bc8c","weight":0.1484,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#e6e6c0","weight":0.0977,"lightness":0.8275,"saturation":0.4318,"hue_group":"yellow"},{"hex":"#c4ac74","weight":0.0469,"lightness":0.6118,"saturation":0.404,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/suspicious_sand_0.png","family":"suspicious_sand","relations":[{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_stone","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Palette proche: Smooth Sandstone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Palette proche: Smooth Sandstone Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tall_dry_grass","label":"Palette proche: Tall Dry Grass","confidence":0.921},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.776},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.749},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.737},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.727},{"type":"color_bridge","target":"minecraft:birch_sapling","label":"Pont de nuance par palette: Birch Sapling","confidence":0.701},{"type":"color_bridge","target":"minecraft:potted_birch_sapling","label":"Pont de nuance par palette: Potted Birch Sapling","confidence":0.701},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par sous-ton: Calcite","confidence":0.69},{"type":"color_bridge","target":"minecraft:cherry_door","label":"Pont de nuance par palette: Cherry Door","confidence":0.687},{"type":"color_bridge","target":"minecraft:cherry_button","label":"Pont de nuance par palette: Cherry Button","confidence":0.676},{"type":"color_bridge","target":"minecraft:cherry_fence","label":"Pont de nuance par palette: Cherry Fence","confidence":0.676},{"type":"color_analogous","target":"minecraft:sand","label":"Couleurs analogues: Sand","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone","label":"Couleurs analogues: Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_wall","label":"Couleurs analogues: Sandstone Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_sandstone","label":"Couleurs analogues: Chiseled Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_door","label":"Couleurs analogues: Birch Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_trapdoor","label":"Couleurs analogues: Birch Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.937},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.937},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.924},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.912},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.908},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.889},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.905},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.886},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.884},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.884},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.884},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.874},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.784},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.754},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.958},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.925},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.706},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.635},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.62},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.62},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.614},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.567},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.622},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.592},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.592},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.588},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.579},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.579},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.564},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.562}],"category":""},{"id":"minecraft:suspicious_stew","name":"Suspicious Stew","entry_type":"item","description":"Suspicious stew is a food item that can give the player a status effect that depends on the flower used to craft it.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added suspicious stew."}],"colors":{"primary":"#69562f","dominant_hex":"#b7b167","average_hex":"#69562f","hue_group":"yellow","lightness":0.298,"saturation":0.3816,"palette":["#b7b167","#3c2a0b","#1c1404","#4a370c","#956578","#744c0c"],"color_groups":[{"hex":"#b7b167","weight":0.2568,"lightness":0.5608,"saturation":0.3571,"hue_group":"yellow"},{"hex":"#3c2a0b","weight":0.2162,"lightness":0.1392,"saturation":0.6901,"hue_group":"yellow"},{"hex":"#1c1404","weight":0.1622,"lightness":0.0627,"saturation":0.75,"hue_group":"yellow"},{"hex":"#4a370c","weight":0.1351,"lightness":0.1686,"saturation":0.7209,"hue_group":"yellow"},{"hex":"#956578","weight":0.1216,"lightness":0.4902,"saturation":0.192,"hue_group":"red"},{"hex":"#744c0c","weight":0.1081,"lightness":0.251,"saturation":0.8125,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/suspicious_stew.png","family":"suspicious_stew","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:book","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crossbow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_chest_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mushroom_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:sweet_berries","name":"Sweet Berries","entry_type":"item","description":"Sweet berries are a food item obtained from sweet berry bushes and are used to plant them. Sweet berry bushes are quick-growing plants that grow sweet berries. Players and most mobs are slowed down and take constant damage while moving through them. They can be found naturally in taiga and snowy taiga biomes.","history":[{"version":"1.14 18w49a","status":"added","notes":"Added sweet berry bushes."},{"version":"wiki-history","status":"added","notes":"Added sweet berries."},{"version":"wiki-history","status":"added","notes":"Added sounds for sweet berry bushes."}],"colors":{"primary":"#57231d","dominant_hex":"#275133","average_hex":"#57231d","hue_group":"red","lightness":0.2275,"saturation":0.5,"palette":["#275133","#441414","#6c1c24","#b0121e","#3c0c0c","#840c04"],"color_groups":[{"hex":"#275133","weight":0.2581,"lightness":0.2353,"saturation":0.35,"hue_group":"green"},{"hex":"#441414","weight":0.2258,"lightness":0.1725,"saturation":0.5455,"hue_group":"red"},{"hex":"#6c1c24","weight":0.1613,"lightness":0.2667,"saturation":0.5882,"hue_group":"red"},{"hex":"#b0121e","weight":0.1505,"lightness":0.3804,"saturation":0.8144,"hue_group":"red"},{"hex":"#3c0c0c","weight":0.1183,"lightness":0.1412,"saturation":0.6667,"hue_group":"red"},{"hex":"#840c04","weight":0.086,"lightness":0.2667,"saturation":0.9412,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/sweet_berries.png","family":"sweet_berries","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cocoa_beans","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_pickaxe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_helmet","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_pigstep","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_axe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bundle","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:sweet_berry_bush","name":"Sweet Berry Bush","entry_type":"block","description":"Sweet berries are a food item obtained from sweet berry bushes and are used to plant them. Sweet berry bushes are quick-growing plants that grow sweet berries. Players and most mobs are slowed down and take constant damage while moving through them. They can be found naturally in taiga and snowy taiga biomes.","history":[{"version":"1.14 18w49a","status":"added","notes":"Added sweet berry bushes."},{"version":"wiki-history","status":"added","notes":"Added sweet berries."},{"version":"wiki-history","status":"added","notes":"Added sounds for sweet berry bushes."}],"colors":{"primary":"#2b5a38","dominant_hex":"#2c6444","average_hex":"#2b5a38","hue_group":"green","lightness":0.2608,"saturation":0.3534,"palette":["#2c6444","#1c3c24","#2c5434","#4c7c4c"],"color_groups":[{"hex":"#2c6444","weight":0.3962,"lightness":0.2824,"saturation":0.3889,"hue_group":"green"},{"hex":"#1c3c24","weight":0.2453,"lightness":0.1725,"saturation":0.3636,"hue_group":"green"},{"hex":"#2c5434","weight":0.1887,"lightness":0.251,"saturation":0.3125,"hue_group":"green"},{"hex":"#4c7c4c","weight":0.1698,"lightness":0.3922,"saturation":0.24,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/sweet_berry_bush_stage0.png","family":"sweet_berry_bush","relations":[{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_spruce_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dried_kelp_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_propagule","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.771},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.771},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Palette proche: Waxed Weathered Copper Bars","confidence":0.753},{"type":"color_neighbors","target":"minecraft:weathered_copper_bars","label":"Palette proche: Weathered Copper Bars","confidence":0.753},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Palette proche: Waxed Weathered Copper Lantern","confidence":0.74},{"type":"color_neighbors","target":"minecraft:weathered_copper_lantern","label":"Palette proche: Weathered Copper Lantern","confidence":0.74},{"type":"color_neighbors","target":"minecraft:dark_prismarine","label":"Palette proche: Dark Prismarine","confidence":0.74},{"type":"color_neighbors","target":"minecraft:dark_prismarine_slab","label":"Palette proche: Dark Prismarine Slab","confidence":0.74},{"type":"color_neighbors","target":"minecraft:dark_prismarine_stairs","label":"Palette proche: Dark Prismarine Stairs","confidence":0.74},{"type":"color_neighbors","target":"minecraft:carrots","label":"Palette proche: Carrots","confidence":0.722},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Palette proche: Oxidized Copper Bulb","confidence":0.71},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Palette proche: Waxed Oxidized Copper Bulb","confidence":0.71},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.811},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.796},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.796},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.786},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.786},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.756},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.756},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.752},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.752},{"type":"color_analogous","target":"minecraft:emerald_block","label":"Couleurs analogues: Emerald Block","confidence":0.944},{"type":"color_analogous","target":"minecraft:wheat","label":"Couleurs analogues: Wheat","confidence":0.708},{"type":"color_analogous","target":"minecraft:torchflower_crop","label":"Couleurs analogues: Torchflower Crop","confidence":0.632},{"type":"color_analogous","target":"minecraft:oxidized_copper_lantern","label":"Couleurs analogues: Oxidized Copper Lantern","confidence":0.615},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_lantern","label":"Couleurs analogues: Waxed Oxidized Copper Lantern","confidence":0.615},{"type":"color_analogous","target":"minecraft:dark_prismarine","label":"Couleurs analogues: Dark Prismarine","confidence":0.564},{"type":"color_analogous","target":"minecraft:dark_prismarine_slab","label":"Couleurs analogues: Dark Prismarine Slab","confidence":0.564},{"type":"color_analogous","target":"minecraft:dark_prismarine_stairs","label":"Couleurs analogues: Dark Prismarine Stairs","confidence":0.564},{"type":"color_complement","target":"minecraft:brain_coral","label":"Contraste complementaire: Brain Coral","confidence":0.725},{"type":"color_complement","target":"minecraft:magenta_glazed_terracotta","label":"Contraste complementaire: Magenta Glazed Terracotta","confidence":0.725},{"type":"color_complement","target":"minecraft:brain_coral_fan","label":"Contraste complementaire: Brain Coral Fan","confidence":0.712},{"type":"color_complement","target":"minecraft:brain_coral_wall_fan","label":"Contraste complementaire: Brain Coral Wall Fan","confidence":0.712},{"type":"color_complement","target":"minecraft:brain_coral_block","label":"Contraste complementaire: Brain Coral Block","confidence":0.706},{"type":"color_complement","target":"minecraft:spore_blossom","label":"Contraste complementaire: Spore Blossom","confidence":0.662},{"type":"color_complement","target":"minecraft:pink_petals","label":"Contraste complementaire: Pink Petals","confidence":0.66},{"type":"color_complement","target":"minecraft:magenta_carpet","label":"Contraste complementaire: Magenta Carpet","confidence":0.599},{"type":"color_triad","target":"minecraft:gray_terracotta","label":"Harmonie triadique: Gray Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:magma_block","label":"Harmonie triadique: Magma Block","confidence":0.96},{"type":"color_triad","target":"minecraft:granite","label":"Harmonie triadique: Granite","confidence":0.96},{"type":"color_triad","target":"minecraft:granite_slab","label":"Harmonie triadique: Granite Slab","confidence":0.96},{"type":"color_square","target":"minecraft:rose_bush","label":"Harmonie carree: Rose Bush","confidence":0.96},{"type":"color_square","target":"minecraft:chiseled_sandstone","label":"Harmonie carree: Chiseled Sandstone","confidence":0.96},{"type":"color_square","target":"minecraft:sandstone","label":"Harmonie carree: Sandstone","confidence":0.96},{"type":"color_square","target":"minecraft:sandstone_wall","label":"Harmonie carree: Sandstone Wall","confidence":0.96},{"type":"color_square","target":"minecraft:sand","label":"Harmonie carree: Sand","confidence":0.96},{"type":"color_square","target":"minecraft:birch_door","label":"Harmonie carree: Birch Door","confidence":0.96},{"type":"color_square","target":"minecraft:birch_button","label":"Harmonie carree: Birch Button","confidence":0.959},{"type":"color_square","target":"minecraft:birch_fence","label":"Harmonie carree: Birch Fence","confidence":0.959},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.67},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.662},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.661},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.661},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.637},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.615},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.611},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.611}],"category":""},{"id":"minecraft:tadpole","name":"Tadpole","entry_type":"mob","description":"A tadpole is a bucketable aquatic baby passive mob hatched from frogspawn. They mature into one of the three frog variants depending on the biome in which they mature.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added tadpoles."}],"colors":{"primary":"#503722","dominant_hex":"#543c24","average_hex":"#503722","hue_group":"red","lightness":0.2235,"saturation":0.4035,"palette":["#543c24","#644c34","#4c2c1c","#140c04","#6c543c","#442c14"],"color_groups":[{"hex":"#543c24","weight":0.3333,"lightness":0.2353,"saturation":0.4,"hue_group":"yellow"},{"hex":"#644c34","weight":0.2037,"lightness":0.298,"saturation":0.3158,"hue_group":"yellow"},{"hex":"#4c2c1c","weight":0.1667,"lightness":0.2039,"saturation":0.4615,"hue_group":"red"},{"hex":"#140c04","weight":0.1111,"lightness":0.0471,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#6c543c","weight":0.1111,"lightness":0.3294,"saturation":0.2857,"hue_group":"yellow"},{"hex":"#442c14","weight":0.0741,"lightness":0.1725,"saturation":0.5455,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/tadpole/tadpole.png","family":"tadpole","relations":[{"type":"visual_neighbors","target":"minecraft:sniffer","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mule","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/chestnut","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_red","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spider","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:tadpole_bucket","name":"Tadpole Bucket","entry_type":"item","description":"A bucket of tadpole, also known as a tadpole bucket, is a tadpole inside of a water bucket. The color of water is changed to be similar to water in a swamp, which is #617B64.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added buckets of tadpoles."}],"colors":{"primary":"#717775","dominant_hex":"#323533","average_hex":"#717775","hue_group":"neutral","lightness":0.4549,"saturation":0.0259,"palette":["#323533","#e1e1e1","#7b7570","#969696","#acacac","#3a7b6c"],"color_groups":[{"hex":"#323533","weight":0.3699,"lightness":0.202,"saturation":0.0291,"hue_group":"neutral"},{"hex":"#e1e1e1","weight":0.1438,"lightness":0.8824,"saturation":0.0,"hue_group":"neutral"},{"hex":"#7b7570","weight":0.137,"lightness":0.4608,"saturation":0.0468,"hue_group":"neutral"},{"hex":"#969696","weight":0.1233,"lightness":0.5882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.1233,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3a7b6c","weight":0.1027,"lightness":0.3549,"saturation":0.3591,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/tadpole_bucket.png","family":"tadpole_bucket","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:salmon_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nautilus_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chainmail_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_boots","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:tadpole_spawn_egg","name":"Tadpole Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#3d3836","dominant_hex":"#28180e","average_hex":"#3d3836","hue_group":"neutral","lightness":0.2255,"saturation":0.0609,"palette":["#28180e","#3a689b","#6c5138","#140c04","#4c2c1c","#543c24"],"color_groups":[{"hex":"#28180e","weight":0.2273,"lightness":0.1059,"saturation":0.4815,"hue_group":"red"},{"hex":"#3a689b","weight":0.2197,"lightness":0.4176,"saturation":0.4554,"hue_group":"blue"},{"hex":"#6c5138","weight":0.1667,"lightness":0.3216,"saturation":0.3171,"hue_group":"red"},{"hex":"#140c04","weight":0.1591,"lightness":0.0471,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#4c2c1c","weight":0.1439,"lightness":0.2039,"saturation":0.4615,"hue_group":"red"},{"hex":"#543c24","weight":0.0833,"lightness":0.2353,"saturation":0.4,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/tadpole_spawn_egg.png","family":"tadpole_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_otherside","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_wait","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_ward","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_13","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mellohi","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snout_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:tall_dry_grass","name":"Tall Dry Grass","entry_type":"block","description":"Tall dry grass is the tall variant of dry grass. Unlike other tall variants of foliage, this block is only one-block tall. It generates frequently in deserts and all types of badlands, and looks like a more full version of short dry grass. It also grows on sand and terracotta, and can be eaten by sheep.","history":[{"version":"1.21.5 25w06a","status":"added","notes":"Added tall dry grass."}],"colors":{"primary":"#c5ac7b","dominant_hex":"#bc9c6c","average_hex":"#c5ac7b","hue_group":"yellow","lightness":0.6275,"saturation":0.3895,"palette":["#bc9c6c","#d4bc8c","#dccca4","#a47c4c"],"color_groups":[{"hex":"#bc9c6c","weight":0.2991,"lightness":0.5804,"saturation":0.3738,"hue_group":"yellow"},{"hex":"#d4bc8c","weight":0.2897,"lightness":0.6902,"saturation":0.4557,"hue_group":"yellow"},{"hex":"#dccca4","weight":0.243,"lightness":0.7529,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#a47c4c","weight":0.1682,"lightness":0.4706,"saturation":0.3667,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tall_dry_grass.png","family":"tall_dry_grass","relations":[{"type":"visual_neighbors","target":"minecraft:birch_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_birch_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_fence_gate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:short_dry_grass","label":"Palette proche: Short Dry Grass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:suspicious_sand","label":"Palette proche: Suspicious Sand","confidence":0.921},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.899},{"type":"color_neighbors","target":"minecraft:chiseled_bookshelf","label":"Palette proche: Chiseled Bookshelf","confidence":0.898},{"type":"color_neighbors","target":"minecraft:sandstone","label":"Palette proche: Sandstone","confidence":0.895},{"type":"color_neighbors","target":"minecraft:sandstone_wall","label":"Palette proche: Sandstone Wall","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.893},{"type":"color_neighbors","target":"minecraft:chiseled_sandstone","label":"Palette proche: Chiseled Sandstone","confidence":0.892},{"type":"color_neighbors","target":"minecraft:oak_hanging_sign","label":"Palette proche: Oak Hanging Sign","confidence":0.891},{"type":"color_neighbors","target":"minecraft:oak_wall_hanging_sign","label":"Palette proche: Oak Wall Hanging Sign","confidence":0.891},{"type":"color_neighbors","target":"minecraft:stripped_oak_log","label":"Palette proche: Stripped Oak Log","confidence":0.891},{"type":"color_neighbors","target":"minecraft:stripped_oak_wood","label":"Palette proche: Stripped Oak Wood","confidence":0.891},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.825},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.823},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.784},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.781},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.775},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.766},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.765},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.765},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.763},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.763},{"type":"color_analogous","target":"minecraft:short_dry_grass","label":"Couleurs analogues: Short Dry Grass","confidence":0.96},{"type":"color_analogous","target":"minecraft:bee_nest","label":"Couleurs analogues: Bee Nest","confidence":0.96},{"type":"color_analogous","target":"minecraft:honey_block","label":"Couleurs analogues: Honey Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:pitcher_crop","label":"Couleurs analogues: Pitcher Crop","confidence":0.951},{"type":"color_analogous","target":"minecraft:oak_hanging_sign","label":"Couleurs analogues: Oak Hanging Sign","confidence":0.945},{"type":"color_analogous","target":"minecraft:oak_wall_hanging_sign","label":"Couleurs analogues: Oak Wall Hanging Sign","confidence":0.945},{"type":"color_analogous","target":"minecraft:stripped_oak_log","label":"Couleurs analogues: Stripped Oak Log","confidence":0.945},{"type":"color_analogous","target":"minecraft:stripped_oak_wood","label":"Couleurs analogues: Stripped Oak Wood","confidence":0.945},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.923},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.919},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.913},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.892},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.887},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.858},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.819},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.92},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.92},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.953},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.794},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.794},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.792},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.788},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.772},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.755},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.711},{"type":"value_contrast","target":"minecraft:mangrove_log","label":"Contraste clair sombre: Mangrove Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_wood","label":"Contraste clair sombre: Mangrove Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:rose_bush","label":"Contraste clair sombre: Rose Bush","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_log","label":"Contraste clair sombre: Dark Oak Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wood","label":"Contraste clair sombre: Dark Oak Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:mangrove_roots","label":"Contraste clair sombre: Mangrove Roots","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_hanging_sign","label":"Contraste clair sombre: Dark Oak Hanging Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_wall_hanging_sign","label":"Contraste clair sombre: Dark Oak Wall Hanging Sign","confidence":0.55}],"category":"natural"},{"id":"minecraft:tall_grass","name":"Tall Grass","entry_type":"block","description":"Tall grass is the 2-block tall variant of short grass.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added \"Double Tallgrass\"."}],"colors":{"primary":"#808080","dominant_hex":"#646c64","average_hex":"#808080","hue_group":"neutral","lightness":0.502,"saturation":0.0,"palette":["#646c64","#949494","#747474","#848484","#acacac"],"color_groups":[{"hex":"#646c64","weight":0.2941,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#949494","weight":0.2139,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.1872,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#848484","weight":0.1818,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.123,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tall_grass_bottom.png","family":"tall_grass","relations":[{"type":"visual_neighbors","target":"minecraft:tripwire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:iron_bars","label":"Palette proche: Iron Bars","confidence":0.91},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.906},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.904},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.904},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.902},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.901},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.9},{"type":"color_neighbors","target":"minecraft:short_grass","label":"Palette proche: Short Grass","confidence":0.9},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.9},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.9},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.9},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.9},{"type":"color_bridge","target":"minecraft:iron_bars","label":"Pont de nuance par palette: Iron Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:short_grass","label":"Pont de nuance par palette: Short Grass","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"natural"},{"id":"minecraft:tall_seagrass","name":"Tall Seagrass","entry_type":"block","description":"Seagrass is a non-solid plant block that generates in all oceans, except frozen oceans. Tall seagrass is a two-block high variety of seagrass.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added \"sea grass\"."},{"version":"5 new sound events that apply t","status":"added","notes":"Added 5 new sound events that apply to seagrass: block.wet_grass.break , block.wet_grass.fall , block.wet_grass.hit , block.wet_grass.place , and block.wet_grass.step ."}],"colors":{"primary":"#2d7504","dominant_hex":"#2c8404","average_hex":"#2d7504","hue_group":"green","lightness":0.2373,"saturation":0.9339,"palette":["#2c8404","#245c04","#2c7404","#3c9404","#54942c"],"color_groups":[{"hex":"#2c8404","weight":0.3456,"lightness":0.2667,"saturation":0.9412,"hue_group":"green"},{"hex":"#245c04","weight":0.3174,"lightness":0.1882,"saturation":0.9167,"hue_group":"green"},{"hex":"#2c7404","weight":0.1527,"lightness":0.2353,"saturation":0.9333,"hue_group":"green"},{"hex":"#3c9404","weight":0.0953,"lightness":0.298,"saturation":0.9474,"hue_group":"green"},{"hex":"#54942c","weight":0.0889,"lightness":0.3765,"saturation":0.5417,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tall_seagrass_bottom.png","family":"tall_seagrass","relations":[{"type":"visual_neighbors","target":"minecraft:seagrass","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wheat","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sunflower","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:emerald_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:seagrass","label":"Palette proche: Seagrass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.859},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.788},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.788},{"type":"color_neighbors","target":"minecraft:bamboo","label":"Palette proche: Bamboo","confidence":0.786},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.777},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.777},{"type":"color_neighbors","target":"minecraft:wheat","label":"Palette proche: Wheat","confidence":0.75},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.745},{"type":"color_neighbors","target":"minecraft:white_tulip","label":"Palette proche: White Tulip","confidence":0.745},{"type":"color_neighbors","target":"minecraft:lime_shulker_box","label":"Palette proche: Lime Shulker Box","confidence":0.735},{"type":"color_neighbors","target":"minecraft:lime_concrete","label":"Palette proche: Lime Concrete","confidence":0.724},{"type":"color_bridge","target":"minecraft:bamboo_sapling","label":"Pont de nuance par palette: Bamboo Sapling","confidence":0.637},{"type":"color_bridge","target":"minecraft:acacia_sapling","label":"Pont de nuance par palette: Acacia Sapling","confidence":0.625},{"type":"color_bridge","target":"minecraft:potted_acacia_sapling","label":"Pont de nuance par palette: Potted Acacia Sapling","confidence":0.625},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Trapdoor","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Weathered Copper Trapdoor","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.58},{"type":"color_analogous","target":"minecraft:seagrass","label":"Couleurs analogues: Seagrass","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_spruce_sapling","label":"Couleurs analogues: Potted Spruce Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:spruce_sapling","label":"Couleurs analogues: Spruce Sapling","confidence":0.96},{"type":"color_analogous","target":"minecraft:lily_of_the_valley","label":"Couleurs analogues: Lily Of The Valley","confidence":0.924},{"type":"color_analogous","target":"minecraft:potted_lily_of_the_valley","label":"Couleurs analogues: Potted Lily Of The Valley","confidence":0.924},{"type":"color_analogous","target":"minecraft:dried_kelp_block","label":"Couleurs analogues: Dried Kelp Block","confidence":0.906},{"type":"color_analogous","target":"minecraft:kelp","label":"Couleurs analogues: Kelp","confidence":0.869},{"type":"color_analogous","target":"minecraft:beetroots","label":"Couleurs analogues: Beetroots","confidence":0.837},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.93},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.915},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.915},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.877},{"type":"color_complement","target":"minecraft:purple_shulker_box","label":"Contraste complementaire: Purple Shulker Box","confidence":0.843},{"type":"color_complement","target":"minecraft:purple_candle","label":"Contraste complementaire: Purple Candle","confidence":0.833},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.807},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.803},{"type":"color_triad","target":"minecraft:packed_ice","label":"Harmonie triadique: Packed Ice","confidence":0.96},{"type":"color_triad","target":"minecraft:frosted_ice","label":"Harmonie triadique: Frosted Ice","confidence":0.96},{"type":"color_triad","target":"minecraft:ice","label":"Harmonie triadique: Ice","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_concrete_powder","label":"Harmonie triadique: Pink Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_ice","label":"Harmonie triadique: Blue Ice","confidence":0.958},{"type":"color_triad","target":"minecraft:pink_concrete","label":"Harmonie triadique: Pink Concrete","confidence":0.951},{"type":"color_triad","target":"minecraft:pearlescent_froglight","label":"Harmonie triadique: Pearlescent Froglight","confidence":0.941},{"type":"color_triad","target":"minecraft:cherry_leaves","label":"Harmonie triadique: Cherry Leaves","confidence":0.939},{"type":"color_square","target":"minecraft:cyan_concrete","label":"Harmonie carree: Cyan Concrete","confidence":0.957},{"type":"color_square","target":"minecraft:target","label":"Harmonie carree: Target","confidence":0.953},{"type":"color_square","target":"minecraft:crimson_fungus","label":"Harmonie carree: Crimson Fungus","confidence":0.95},{"type":"color_square","target":"minecraft:potted_crimson_fungus","label":"Harmonie carree: Potted Crimson Fungus","confidence":0.95},{"type":"color_square","target":"minecraft:redstone_block","label":"Harmonie carree: Redstone Block","confidence":0.949},{"type":"color_square","target":"minecraft:cyan_shulker_box","label":"Harmonie carree: Cyan Shulker Box","confidence":0.946},{"type":"color_square","target":"minecraft:cherry_trapdoor","label":"Harmonie carree: Cherry Trapdoor","confidence":0.945},{"type":"color_square","target":"minecraft:red_terracotta","label":"Harmonie carree: Red Terracotta","confidence":0.944},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.681},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.648},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.625},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.61},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.61},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.597},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.577},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.576}],"category":"natural"},{"id":"minecraft:target","name":"Target","entry_type":"block","description":"A target is a block that produces a temporary redstone signal when hit by a projectile. Unlike most other conductive blocks, it also redirects adjacent redstone dust toward it.","history":[{"version":"1.16 20w09a","status":"added","notes":"Added targets."}],"colors":{"primary":"#e5b0a8","dominant_hex":"#c83636","average_hex":"#e5b0a8","hue_group":"red","lightness":0.7784,"saturation":0.5398,"palette":["#c83636","#ece4d4","#f4ecdc","#fcfcfc","#f4f4ec","#ecd4bc"],"color_groups":[{"hex":"#c83636","weight":0.3281,"lightness":0.498,"saturation":0.5748,"hue_group":"red"},{"hex":"#ece4d4","weight":0.1758,"lightness":0.8784,"saturation":0.3871,"hue_group":"yellow"},{"hex":"#f4ecdc","weight":0.1523,"lightness":0.9098,"saturation":0.5217,"hue_group":"yellow"},{"hex":"#fcfcfc","weight":0.1445,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4ec","weight":0.125,"lightness":0.9412,"saturation":0.2667,"hue_group":"yellow"},{"hex":"#ecd4bc","weight":0.0742,"lightness":0.8314,"saturation":0.5581,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/target_side.png","family":"target","relations":[{"type":"visual_neighbors","target":"minecraft:cherry_leaves","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.844},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.844},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.844},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.844},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.844},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.844},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.844},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.844},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.844},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.844},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.844},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.844},{"type":"color_bridge","target":"minecraft:bone_block","label":"Pont de nuance par palette: Bone Block","confidence":0.788},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par palette: Calcite","confidence":0.779},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.766},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.758},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.752},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par sous-ton: Birch Log","confidence":0.746},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par sous-ton: Birch Wood","confidence":0.746},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.741},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.738},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.738},{"type":"color_analogous","target":"minecraft:cherry_trapdoor","label":"Couleurs analogues: Cherry Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_button","label":"Couleurs analogues: Cherry Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence","label":"Couleurs analogues: Cherry Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_fence_gate","label":"Couleurs analogues: Cherry Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_planks","label":"Couleurs analogues: Cherry Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_pressure_plate","label":"Couleurs analogues: Cherry Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_sign","label":"Couleurs analogues: Cherry Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:cherry_slab","label":"Couleurs analogues: Cherry Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.954},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.949},{"type":"color_complement","target":"minecraft:cyan_concrete","label":"Contraste complementaire: Cyan Concrete","confidence":0.947},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.911},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.889},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.88},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.841},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.807},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.782},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.649},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.649},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.648},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.644},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.634},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.631},{"type":"color_square","target":"minecraft:purple_concrete_powder","label":"Harmonie carree: Purple Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:seagrass","label":"Harmonie carree: Seagrass","confidence":0.954},{"type":"color_square","target":"minecraft:tall_seagrass","label":"Harmonie carree: Tall Seagrass","confidence":0.953},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.943},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.943},{"type":"color_square","target":"minecraft:lily_of_the_valley","label":"Harmonie carree: Lily Of The Valley","confidence":0.936},{"type":"color_square","target":"minecraft:potted_lily_of_the_valley","label":"Harmonie carree: Potted Lily Of The Valley","confidence":0.936},{"type":"color_square","target":"minecraft:potted_spruce_sapling","label":"Harmonie carree: Potted Spruce Sapling","confidence":0.923},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.662},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.632},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.631},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.628},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.619},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.619},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.613},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.604}],"category":"redstone"},{"id":"minecraft:terracotta","name":"Terracotta","entry_type":"block","description":"Terracotta is a block that is found abundantly in badlands biomes, or can be obtained by smelting clay. It can be dyed to create stained terracotta.","history":[{"version":"1.6.1 13w17a","status":"added","notes":"Added hardened clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#985e44","dominant_hex":"#945c44","average_hex":"#985e44","hue_group":"red","lightness":0.4314,"saturation":0.3818,"palette":["#945c44","#9c5c44","#9c6444"],"color_groups":[{"hex":"#945c44","weight":0.4141,"lightness":0.4235,"saturation":0.3704,"hue_group":"red"},{"hex":"#9c5c44","weight":0.3672,"lightness":0.4392,"saturation":0.3929,"hue_group":"red"},{"hex":"#9c6444","weight":0.2188,"lightness":0.4392,"saturation":0.3929,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/terracotta.png","family":"terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:decorated_pot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_item_frame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:farmland","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rooted_dirt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:decorated_pot","label":"Palette proche: Decorated Pot","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chain","label":"Palette proche: Copper Chain","confidence":0.901},{"type":"color_neighbors","target":"minecraft:waxed_copper_chain","label":"Palette proche: Waxed Copper Chain","confidence":0.901},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.889},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.889},{"type":"color_neighbors","target":"minecraft:stripped_acacia_log","label":"Palette proche: Stripped Acacia Log","confidence":0.889},{"type":"color_neighbors","target":"minecraft:stripped_acacia_wood","label":"Palette proche: Stripped Acacia Wood","confidence":0.889},{"type":"color_neighbors","target":"minecraft:brick_slab","label":"Palette proche: Brick Slab","confidence":0.881},{"type":"color_neighbors","target":"minecraft:brick_stairs","label":"Palette proche: Brick Stairs","confidence":0.881},{"type":"color_neighbors","target":"minecraft:brick_wall","label":"Palette proche: Brick Wall","confidence":0.881},{"type":"color_neighbors","target":"minecraft:bricks","label":"Palette proche: Bricks","confidence":0.881},{"type":"color_neighbors","target":"minecraft:copper_bars","label":"Palette proche: Copper Bars","confidence":0.878},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.848},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.845},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.844},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.815},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.815},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.813},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.813},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.811},{"type":"color_analogous","target":"minecraft:decorated_pot","label":"Couleurs analogues: Decorated Pot","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_bulb","label":"Couleurs analogues: Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_bulb","label":"Couleurs analogues: Waxed Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_door","label":"Couleurs analogues: Acacia Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_shelf","label":"Couleurs analogues: Acacia Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_hanging_sign","label":"Couleurs analogues: Acacia Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_hanging_sign","label":"Couleurs analogues: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_acacia_log","label":"Couleurs analogues: Stripped Acacia Log","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.956},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.943},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.939},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.897},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.894},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.88},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.88},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.86},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.944},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.944},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.944},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.944},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.923},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.922},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.918},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.892},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.959},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.863},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.863},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.852},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.832},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.819},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:test_block","name":"Test Block","entry_type":"block","description":"A test block is a technical block that is used for game tests.","history":[{"version":"1.21.5 25w03a","status":"added","notes":"Added test blocks."}],"colors":{"primary":"#84bf75","dominant_hex":"#8ce477","average_hex":"#84bf75","hue_group":"green","lightness":0.6039,"saturation":0.3663,"palette":["#8ce477","#6cac5c","#549144","#ececec","#5ca454","#75bd64"],"color_groups":[{"hex":"#8ce477","weight":0.2266,"lightness":0.6804,"saturation":0.6687,"hue_group":"green"},{"hex":"#6cac5c","weight":0.1836,"lightness":0.5176,"saturation":0.3252,"hue_group":"green"},{"hex":"#549144","weight":0.1758,"lightness":0.4176,"saturation":0.3615,"hue_group":"green"},{"hex":"#ececec","weight":0.1719,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5ca454","weight":0.1406,"lightness":0.4863,"saturation":0.3226,"hue_group":"green"},{"hex":"#75bd64","weight":0.1016,"lightness":0.5667,"saturation":0.4027,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/test_block_accept.png","family":"test_block","relations":[{"type":"visual_neighbors","target":"minecraft:mangrove_propagule","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:slime_block","label":"Palette proche: Slime Block","confidence":0.799},{"type":"color_neighbors","target":"minecraft:lily_of_the_valley","label":"Palette proche: Lily Of The Valley","confidence":0.756},{"type":"color_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Palette proche: Potted Lily Of The Valley","confidence":0.756},{"type":"color_neighbors","target":"minecraft:verdant_froglight","label":"Palette proche: Verdant Froglight","confidence":0.74},{"type":"color_neighbors","target":"minecraft:mangrove_propagule","label":"Palette proche: Mangrove Propagule","confidence":0.728},{"type":"color_neighbors","target":"minecraft:sugar_cane","label":"Palette proche: Sugar Cane","confidence":0.724},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Palette proche: Waxed Weathered Copper Lantern","confidence":0.705},{"type":"color_neighbors","target":"minecraft:weathered_copper_lantern","label":"Palette proche: Weathered Copper Lantern","confidence":0.705},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.664},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Palette proche: Waxed Weathered Copper Chest","confidence":0.664},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Palette proche: Waxed Weathered Copper Golem Statue","confidence":0.664},{"type":"color_neighbors","target":"minecraft:weathered_copper","label":"Palette proche: Weathered Copper","confidence":0.664},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.757},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Copper","confidence":0.724},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chest","confidence":0.724},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Golem Statue","confidence":0.724},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par sous-ton: Weathered Copper","confidence":0.724},{"type":"color_bridge","target":"minecraft:weathered_copper_chest","label":"Pont de nuance par sous-ton: Weathered Copper Chest","confidence":0.724},{"type":"color_bridge","target":"minecraft:weathered_copper_golem_statue","label":"Pont de nuance par sous-ton: Weathered Copper Golem Statue","confidence":0.724},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.708},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.708},{"type":"color_analogous","target":"minecraft:slime_block","label":"Couleurs analogues: Slime Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:potatoes","label":"Couleurs analogues: Potatoes","confidence":0.946},{"type":"color_analogous","target":"minecraft:potted_white_tulip","label":"Couleurs analogues: Potted White Tulip","confidence":0.916},{"type":"color_analogous","target":"minecraft:white_tulip","label":"Couleurs analogues: White Tulip","confidence":0.916},{"type":"color_analogous","target":"minecraft:pink_tulip","label":"Couleurs analogues: Pink Tulip","confidence":0.887},{"type":"color_analogous","target":"minecraft:potted_pink_tulip","label":"Couleurs analogues: Potted Pink Tulip","confidence":0.887},{"type":"color_analogous","target":"minecraft:mangrove_propagule","label":"Couleurs analogues: Mangrove Propagule","confidence":0.886},{"type":"color_analogous","target":"minecraft:sunflower","label":"Couleurs analogues: Sunflower","confidence":0.881},{"type":"color_complement","target":"minecraft:magenta_stained_glass","label":"Contraste complementaire: Magenta Stained Glass","confidence":0.835},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.82},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.636},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.602},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.602},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.582},{"type":"color_complement","target":"minecraft:chorus_plant","label":"Contraste complementaire: Chorus Plant","confidence":0.582},{"type":"color_complement","target":"minecraft:bubble_coral_fan","label":"Contraste complementaire: Bubble Coral Fan","confidence":0.55},{"type":"color_triad","target":"minecraft:blue_stained_glass","label":"Harmonie triadique: Blue Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_glazed_terracotta","label":"Harmonie triadique: Blue Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:cracked_nether_bricks","label":"Harmonie triadique: Cracked Nether Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:enchanting_table","label":"Harmonie triadique: Enchanting Table","confidence":0.951},{"type":"color_triad","target":"minecraft:nether_brick_fence","label":"Harmonie triadique: Nether Brick Fence","confidence":0.949},{"type":"color_triad","target":"minecraft:nether_brick_slab","label":"Harmonie triadique: Nether Brick Slab","confidence":0.949},{"type":"color_triad","target":"minecraft:nether_brick_stairs","label":"Harmonie triadique: Nether Brick Stairs","confidence":0.949},{"type":"color_square","target":"minecraft:exposed_copper_door","label":"Harmonie carree: Exposed Copper Door","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_exposed_copper_door","label":"Harmonie carree: Waxed Exposed Copper Door","confidence":0.96},{"type":"color_square","target":"minecraft:exposed_lightning_rod","label":"Harmonie carree: Exposed Lightning Rod","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_exposed_lightning_rod","label":"Harmonie carree: Waxed Exposed Lightning Rod","confidence":0.96},{"type":"color_square","target":"minecraft:decorated_pot","label":"Harmonie carree: Decorated Pot","confidence":0.96},{"type":"color_square","target":"minecraft:terracotta","label":"Harmonie carree: Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:acacia_hanging_sign","label":"Harmonie carree: Acacia Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:acacia_wall_hanging_sign","label":"Harmonie carree: Acacia Wall Hanging Sign","confidence":0.96},{"type":"value_contrast","target":"minecraft:potted_spruce_sapling","label":"Contraste clair sombre: Potted Spruce Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_sapling","label":"Contraste clair sombre: Spruce Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sapling","label":"Contraste clair sombre: Dark Oak Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_dark_oak_sapling","label":"Contraste clair sombre: Potted Dark Oak Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:dried_kelp_block","label":"Contraste clair sombre: Dried Kelp Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_sapling","label":"Contraste clair sombre: Jungle Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_jungle_sapling","label":"Contraste clair sombre: Potted Jungle Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:muddy_mangrove_roots","label":"Contraste clair sombre: Muddy Mangrove Roots","confidence":0.55}],"category":""},{"id":"minecraft:test_instance_block","name":"Test Instance Block","entry_type":"block","description":"A test instance block is a technical block that is used for game tests.","history":[{"version":"1.21.5 25w03a","status":"added","notes":"Added test instance blocks."}],"colors":{"primary":"#7f7977","dominant_hex":"#7b736c","average_hex":"#7f7977","hue_group":"neutral","lightness":0.4824,"saturation":0.0325,"palette":["#7b736c","#f0f0f0","#5c5454","#645c5c","#4a4242","#544c4c"],"color_groups":[{"hex":"#7b736c","weight":0.2266,"lightness":0.4529,"saturation":0.0649,"hue_group":"neutral"},{"hex":"#f0f0f0","weight":0.2031,"lightness":0.9412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5454","weight":0.1523,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#645c5c","weight":0.1445,"lightness":0.3765,"saturation":0.0417,"hue_group":"neutral"},{"hex":"#4a4242","weight":0.1406,"lightness":0.2745,"saturation":0.0571,"hue_group":"neutral"},{"hex":"#544c4c","weight":0.1328,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/test_instance_block.png","family":"test_instance_block","relations":[{"type":"visual_neighbors","target":"minecraft:copper_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_tube_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lodestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:open_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_gravel","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:pale_oak_log","label":"Palette proche: Pale Oak Log","confidence":0.905},{"type":"color_neighbors","target":"minecraft:pale_oak_wood","label":"Palette proche: Pale Oak Wood","confidence":0.905},{"type":"color_neighbors","target":"minecraft:chipped_anvil","label":"Palette proche: Chipped Anvil","confidence":0.876},{"type":"color_neighbors","target":"minecraft:dead_tube_coral","label":"Palette proche: Dead Tube Coral","confidence":0.875},{"type":"color_neighbors","target":"minecraft:damaged_anvil","label":"Palette proche: Damaged Anvil","confidence":0.874},{"type":"color_neighbors","target":"minecraft:dead_brain_coral_block","label":"Palette proche: Dead Brain Coral Block","confidence":0.868},{"type":"color_neighbors","target":"minecraft:open_eyeblossom","label":"Palette proche: Open Eyeblossom","confidence":0.866},{"type":"color_neighbors","target":"minecraft:dropper","label":"Palette proche: Dropper","confidence":0.866},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.865},{"type":"color_neighbors","target":"minecraft:dead_bubble_coral_block","label":"Palette proche: Dead Bubble Coral Block","confidence":0.863},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_fan","label":"Palette proche: Dead Fire Coral Fan","confidence":0.861},{"type":"color_neighbors","target":"minecraft:dead_fire_coral_wall_fan","label":"Palette proche: Dead Fire Coral Wall Fan","confidence":0.861},{"type":"color_bridge","target":"minecraft:pale_oak_log","label":"Pont de nuance par palette: Pale Oak Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_wood","label":"Pont de nuance par palette: Pale Oak Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:chipped_anvil","label":"Pont de nuance par palette: Chipped Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_tube_coral","label":"Pont de nuance par palette: Dead Tube Coral","confidence":0.86},{"type":"color_bridge","target":"minecraft:damaged_anvil","label":"Pont de nuance par palette: Damaged Anvil","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_brain_coral_block","label":"Pont de nuance par palette: Dead Brain Coral Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:open_eyeblossom","label":"Pont de nuance par palette: Open Eyeblossom","confidence":0.86},{"type":"color_bridge","target":"minecraft:dropper","label":"Pont de nuance par palette: Dropper","confidence":0.86},{"type":"color_bridge","target":"minecraft:dispenser","label":"Pont de nuance par palette: Dispenser","confidence":0.86},{"type":"color_bridge","target":"minecraft:dead_bubble_coral_block","label":"Pont de nuance par palette: Dead Bubble Coral Block","confidence":0.86},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55}],"category":""},{"id":"minecraft:tide_armor_trim_smithing_template","name":"Tide Armor Trim Smithing Template","entry_type":"item","description":"Tide armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, prismarine, and diamonds.","history":[{"version":"1.19.4","status":"added","notes":"Added the tide armor trim smithing template behind the \"Update 1.20\" experimental data pack."}],"colors":{"primary":"#5aa89c","dominant_hex":"#64c0b4","average_hex":"#5aa89c","hue_group":"cyan","lightness":0.5059,"saturation":0.3095,"palette":["#64c0b4","#57aaa6","#80d1cb","#549c8c","#34745c","#44846c"],"color_groups":[{"hex":"#64c0b4","weight":0.2485,"lightness":0.5725,"saturation":0.422,"hue_group":"cyan"},{"hex":"#57aaa6","weight":0.1879,"lightness":0.5039,"saturation":0.3281,"hue_group":"cyan"},{"hex":"#80d1cb","weight":0.1818,"lightness":0.6608,"saturation":0.4682,"hue_group":"cyan"},{"hex":"#549c8c","weight":0.1333,"lightness":0.4706,"saturation":0.3,"hue_group":"cyan"},{"hex":"#34745c","weight":0.1273,"lightness":0.3294,"saturation":0.381,"hue_group":"cyan"},{"hex":"#44846c","weight":0.1212,"lightness":0.3922,"saturation":0.32,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/tide_armor_trim_smithing_template.png","family":"tide_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:prismarine_shard","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_nautilus_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_horse_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_tear","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_bundle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_crystals","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_chestplate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_spawn_egg","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:tinted_glass","name":"Tinted Glass","entry_type":"block","description":"Tinted glass is a block that blocks light while being visually transparent.","history":[{"version":"2.0","status":"added","notes":"added in the 2013 joke update, which eventually became \"Stained Glass\" in 1.7.2 ."},{"version":"1.17 20w45a","status":"added","notes":"Added tinted glass."}],"colors":{"primary":"#2c272e","dominant_hex":"#24242c","average_hex":"#2c272e","hue_group":"neutral","lightness":0.1667,"saturation":0.0824,"palette":["#24242c","#342c3c","#2c2434","#4c444c","#2c1c2c"],"color_groups":[{"hex":"#24242c","weight":0.6875,"lightness":0.1569,"saturation":0.1,"hue_group":"neutral"},{"hex":"#342c3c","weight":0.1016,"lightness":0.2039,"saturation":0.1538,"hue_group":"purple"},{"hex":"#2c2434","weight":0.0977,"lightness":0.1725,"saturation":0.1818,"hue_group":"purple"},{"hex":"#4c444c","weight":0.0781,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#2c1c2c","weight":0.0352,"lightness":0.1412,"saturation":0.2222,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tinted_glass.png","family":"tinted_glass","relations":[{"type":"visual_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blackstone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_blackstone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.89},{"type":"color_neighbors","target":"minecraft:black_concrete_powder","label":"Palette proche: Black Concrete Powder","confidence":0.863},{"type":"color_neighbors","target":"minecraft:black_shulker_box","label":"Palette proche: Black Shulker Box","confidence":0.855},{"type":"color_neighbors","target":"minecraft:spawner","label":"Palette proche: Spawner","confidence":0.845},{"type":"color_neighbors","target":"minecraft:black_carpet","label":"Palette proche: Black Carpet","confidence":0.837},{"type":"color_neighbors","target":"minecraft:black_wool","label":"Palette proche: Black Wool","confidence":0.837},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.828},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.828},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.828},{"type":"color_neighbors","target":"minecraft:water_cauldron","label":"Palette proche: Water Cauldron","confidence":0.828},{"type":"color_neighbors","target":"minecraft:chiseled_polished_blackstone","label":"Palette proche: Chiseled Polished Blackstone","confidence":0.824},{"type":"color_neighbors","target":"minecraft:polished_blackstone","label":"Palette proche: Polished Blackstone","confidence":0.819},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par sous-ton: Black Candle","confidence":0.9},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par palette: Black Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par palette: Black Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:spawner","label":"Pont de nuance par palette: Spawner","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_carpet","label":"Pont de nuance par palette: Black Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:black_wool","label":"Pont de nuance par palette: Black Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.858},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.858},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.858},{"type":"color_bridge","target":"minecraft:water_cauldron","label":"Pont de nuance par palette: Water Cauldron","confidence":0.858},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.777},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.744},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.743},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.743},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.743},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.721},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.721},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.721}],"category":"building"},{"id":"minecraft:tipped_arrow","name":"Tipped Arrow","entry_type":"item","description":"A tipped arrow is a type of arrow that can inflict a status effect on hit in addition to dealing damage, depending on the potion used to create it.","history":[{"version":"1.9 15w31a","status":"added","notes":"Added 14 new tipped arrows. Currently, arrows of splashing are called \"Water Bottle\" in the inventory."},{"version":"15w44b","status":"added","notes":"Added the initial method for obtaining tipped arrows, which lasted until snapshot 16w06a \u2013 firing arrows into a lingering potion cloud."},{"version":"wiki-history","status":"added","notes":"Added the Arrow of Luck ."}],"colors":{"primary":"#acacac","dominant_hex":"#444444","average_hex":"#acacac","hue_group":"neutral","lightness":0.6745,"saturation":0.0,"palette":["#444444","#f4f4f4","#bfbfbf","#dcdcdc","#8c8c8c","#fcfcfc"],"color_groups":[{"hex":"#444444","weight":0.28,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.24,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#bfbfbf","weight":0.2,"lightness":0.749,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.16,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.08,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.04,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/tipped_arrow_head.png","family":"tipped_arrow","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_tears","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polar_bear_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:milk_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:feather","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:tnt","name":"Tnt","entry_type":"block","description":"TNT is an explosive block that can be lit by a redstone signal, flint and steel, stray fire, flaming projectile or explosion. When lit, TNT becomes primed TNT, a gravity-affected entity that produces a damaging, block-destroying explosion, usually after four seconds. Blocks destroyed by TNT always drop their usual items as if mined by a player.","history":[{"version":"0.26","status":"added","notes":"Added TNT."},{"version":"wiki-history","status":"added","notes":"Added optional field explosion_power ."},{"version":"25w10a","status":"added","notes":"Added the tntExplodes game rule."}],"colors":{"primary":"#8f3e36","dominant_hex":"#e73c1c","average_hex":"#8f3e36","hue_group":"red","lightness":0.3863,"saturation":0.4518,"palette":["#e73c1c","#14141c","#8c8c8c","#b41424","#942c14","#545454"],"color_groups":[{"hex":"#e73c1c","weight":0.2617,"lightness":0.5078,"saturation":0.8088,"hue_group":"red"},{"hex":"#14141c","weight":0.1641,"lightness":0.0941,"saturation":0.1667,"hue_group":"blue"},{"hex":"#8c8c8c","weight":0.1641,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b41424","weight":0.1484,"lightness":0.3922,"saturation":0.8,"hue_group":"red"},{"hex":"#942c14","weight":0.1328,"lightness":0.3294,"saturation":0.7619,"hue_group":"red"},{"hex":"#545454","weight":0.1289,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tnt_top.png","family":"tnt","relations":[{"type":"visual_neighbors","target":"minecraft:copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_hyphae","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_crimson_stem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:deepslate_redstone_ore","label":"Palette proche: Deepslate Redstone Ore","confidence":0.8},{"type":"color_neighbors","target":"minecraft:redstone_ore","label":"Palette proche: Redstone Ore","confidence":0.788},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.756},{"type":"color_neighbors","target":"minecraft:infested_deepslate","label":"Palette proche: Infested Deepslate","confidence":0.756},{"type":"color_neighbors","target":"minecraft:red_candle","label":"Palette proche: Red Candle","confidence":0.745},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.744},{"type":"color_neighbors","target":"minecraft:deepslate_coal_ore","label":"Palette proche: Deepslate Coal Ore","confidence":0.743},{"type":"color_neighbors","target":"minecraft:deepslate_gold_ore","label":"Palette proche: Deepslate Gold Ore","confidence":0.743},{"type":"color_neighbors","target":"minecraft:polished_basalt","label":"Palette proche: Polished Basalt","confidence":0.741},{"type":"color_neighbors","target":"minecraft:spruce_leaves","label":"Palette proche: Spruce Leaves","confidence":0.741},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.734},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.734},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.835},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.826},{"type":"color_bridge","target":"minecraft:deepslate","label":"Pont de nuance par palette: Deepslate","confidence":0.799},{"type":"color_bridge","target":"minecraft:infested_deepslate","label":"Pont de nuance par palette: Infested Deepslate","confidence":0.799},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.789},{"type":"color_bridge","target":"minecraft:deepslate_coal_ore","label":"Pont de nuance par palette: Deepslate Coal Ore","confidence":0.789},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.788},{"type":"color_bridge","target":"minecraft:polished_basalt","label":"Pont de nuance par palette: Polished Basalt","confidence":0.787},{"type":"color_bridge","target":"minecraft:spruce_leaves","label":"Pont de nuance par palette: Spruce Leaves","confidence":0.787},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.781},{"type":"color_analogous","target":"minecraft:mangrove_hanging_sign","label":"Couleurs analogues: Mangrove Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_wall_hanging_sign","label":"Couleurs analogues: Mangrove Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_mangrove_log","label":"Couleurs analogues: Stripped Mangrove Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_mangrove_wood","label":"Couleurs analogues: Stripped Mangrove Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_button","label":"Couleurs analogues: Mangrove Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence","label":"Couleurs analogues: Mangrove Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_fence_gate","label":"Couleurs analogues: Mangrove Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_planks","label":"Couleurs analogues: Mangrove Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_glazed_terracotta","label":"Contraste complementaire: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:structure_void","label":"Contraste complementaire: Structure Void","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_concrete_powder","label":"Contraste complementaire: Cyan Concrete Powder","confidence":0.954},{"type":"color_complement","target":"minecraft:glass","label":"Contraste complementaire: Glass","confidence":0.939},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.908},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.908},{"type":"color_complement","target":"minecraft:cyan_shulker_box","label":"Contraste complementaire: Cyan Shulker Box","confidence":0.907},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.904},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.895},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.884},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.74},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.739},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.718},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.7},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.7},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.627},{"type":"color_square","target":"minecraft:purple_glazed_terracotta","label":"Harmonie carree: Purple Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:dried_kelp_block","label":"Harmonie carree: Dried Kelp Block","confidence":0.956},{"type":"color_square","target":"minecraft:purple_shulker_box","label":"Harmonie carree: Purple Shulker Box","confidence":0.94},{"type":"color_square","target":"minecraft:dragon_egg","label":"Harmonie carree: Dragon Egg","confidence":0.94},{"type":"color_square","target":"minecraft:purple_carpet","label":"Harmonie carree: Purple Carpet","confidence":0.935},{"type":"color_square","target":"minecraft:purple_wool","label":"Harmonie carree: Purple Wool","confidence":0.935},{"type":"color_square","target":"minecraft:purple_stained_glass_pane","label":"Harmonie carree: Purple Stained Glass Pane","confidence":0.933},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.93},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.568},{"type":"value_contrast","target":"minecraft:cherry_door","label":"Contraste clair sombre: Cherry Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_trapdoor","label":"Contraste clair sombre: Cherry Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55}],"category":""},{"id":"minecraft:tnt_minecart","name":"Tnt Minecart","entry_type":"item","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#6c4d45","dominant_hex":"#b19291","average_hex":"#6c4d45","hue_group":"red","lightness":0.3471,"saturation":0.2203,"palette":["#b19291","#222a2e","#545a5f","#7c2410","#25180c","#dc441c"],"color_groups":[{"hex":"#b19291","weight":0.2579,"lightness":0.6314,"saturation":0.1702,"hue_group":"red"},{"hex":"#222a2e","weight":0.2264,"lightness":0.1569,"saturation":0.15,"hue_group":"cyan"},{"hex":"#545a5f","weight":0.1698,"lightness":0.351,"saturation":0.0615,"hue_group":"neutral"},{"hex":"#7c2410","weight":0.1384,"lightness":0.2745,"saturation":0.7714,"hue_group":"red"},{"hex":"#25180c","weight":0.1132,"lightness":0.0961,"saturation":0.5102,"hue_group":"red"},{"hex":"#dc441c","weight":0.0943,"lightness":0.4863,"saturation":0.7742,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/tnt_minecart.png","family":"tnt_minecart","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_relic","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_key","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_upgrade_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:torch","name":"Torch","entry_type":"block","description":"Torches are non-solid blocks that emit light.","history":[{"version":"0.31 20091223-1457","status":"added","notes":"Added torches."},{"version":"20100104-2154","status":"added","notes":"Added torches to the hotbar ."}],"colors":{"primary":"#8b7140","dominant_hex":"#463923","average_hex":"#8b7140","hue_group":"yellow","lightness":0.398,"saturation":0.3695,"palette":["#463923","#99794f","#6c5434","#fcb404","#fcfcc8"],"color_groups":[{"hex":"#463923","weight":0.35,"lightness":0.2059,"saturation":0.3333,"hue_group":"yellow"},{"hex":"#99794f","weight":0.3,"lightness":0.4549,"saturation":0.319,"hue_group":"yellow"},{"hex":"#6c5434","weight":0.15,"lightness":0.3137,"saturation":0.35,"hue_group":"yellow"},{"hex":"#fcb404","weight":0.1,"lightness":0.502,"saturation":0.9764,"hue_group":"yellow"},{"hex":"#fcfcc8","weight":0.1,"lightness":0.8863,"saturation":0.8966,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/torch.png","family":"torch","relations":[{"type":"visual_neighbors","target":"minecraft:wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dirt_path","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ladder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:wall_torch","label":"Palette proche: Wall Torch","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lever","label":"Palette proche: Lever","confidence":0.859},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.859},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.855},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.855},{"type":"color_neighbors","target":"minecraft:copper_torch","label":"Palette proche: Copper Torch","confidence":0.839},{"type":"color_neighbors","target":"minecraft:copper_wall_torch","label":"Palette proche: Copper Wall Torch","confidence":0.839},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.823},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.821},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.818},{"type":"color_neighbors","target":"minecraft:redstone_wall_torch","label":"Palette proche: Redstone Wall Torch","confidence":0.817},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.817},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.809},{"type":"color_bridge","target":"minecraft:soul_torch","label":"Pont de nuance par sous-ton: Soul Torch","confidence":0.808},{"type":"color_bridge","target":"minecraft:soul_wall_torch","label":"Pont de nuance par sous-ton: Soul Wall Torch","confidence":0.808},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.801},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.798},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.794},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.794},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.777},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.777},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.767},{"type":"color_analogous","target":"minecraft:wall_torch","label":"Couleurs analogues: Wall Torch","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_terracotta","label":"Couleurs analogues: Yellow Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_hanging_sign","label":"Couleurs analogues: Oak Hanging Sign","confidence":0.955},{"type":"color_analogous","target":"minecraft:oak_wall_hanging_sign","label":"Couleurs analogues: Oak Wall Hanging Sign","confidence":0.955},{"type":"color_analogous","target":"minecraft:stripped_oak_log","label":"Couleurs analogues: Stripped Oak Log","confidence":0.955},{"type":"color_analogous","target":"minecraft:stripped_oak_wood","label":"Couleurs analogues: Stripped Oak Wood","confidence":0.955},{"type":"color_analogous","target":"minecraft:short_dry_grass","label":"Couleurs analogues: Short Dry Grass","confidence":0.954},{"type":"color_analogous","target":"minecraft:dirt_path","label":"Couleurs analogues: Dirt Path","confidence":0.952},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.943},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.94},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.935},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.928},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.908},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.874},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.872},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.799},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.942},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.942},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.814},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.814},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.812},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.808},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.792},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.776},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.724},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.554},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone_slab","label":"Contraste clair sombre: Cut Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_slab","label":"Contraste clair sombre: Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_stairs","label":"Contraste clair sombre: Sandstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_sandstone","label":"Contraste clair sombre: Smooth Sandstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_sandstone_slab","label":"Contraste clair sombre: Smooth Sandstone Slab","confidence":0.55}],"category":""},{"id":"minecraft:torchflower","name":"Torchflower","entry_type":"block","description":"A torchflower is an ancient flower obtained from harvesting torchflower seeds. It can be crafted into orange dye.","history":[{"version":"1.19.4","status":"added","notes":"Added torchflowers behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#65654d","dominant_hex":"#7b2d5e","average_hex":"#65654d","hue_group":"yellow","lightness":0.349,"saturation":0.1348,"palette":["#7b2d5e","#f0b042","#1c5c3c","#144434","#24845c","#576769"],"color_groups":[{"hex":"#7b2d5e","weight":0.2268,"lightness":0.3294,"saturation":0.4643,"hue_group":"purple"},{"hex":"#f0b042","weight":0.2062,"lightness":0.6,"saturation":0.8529,"hue_group":"yellow"},{"hex":"#1c5c3c","weight":0.1649,"lightness":0.2353,"saturation":0.5333,"hue_group":"cyan"},{"hex":"#144434","weight":0.1443,"lightness":0.1725,"saturation":0.5455,"hue_group":"cyan"},{"hex":"#24845c","weight":0.134,"lightness":0.3294,"saturation":0.5714,"hue_group":"cyan"},{"hex":"#576769","weight":0.1237,"lightness":0.3765,"saturation":0.0937,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/torchflower.png","family":"torchflower","relations":[{"type":"visual_neighbors","target":"minecraft:potted_torchflower","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lever","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:daylight_detector","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_flowering_azalea_bush","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:muddy_mangrove_roots","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_torchflower","label":"Palette proche: Potted Torchflower","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_warped_fungus","label":"Palette proche: Potted Warped Fungus","confidence":0.679},{"type":"color_neighbors","target":"minecraft:warped_fungus","label":"Palette proche: Warped Fungus","confidence":0.679},{"type":"color_neighbors","target":"minecraft:lantern","label":"Palette proche: Lantern","confidence":0.628},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.625},{"type":"color_neighbors","target":"minecraft:torchflower_crop","label":"Palette proche: Torchflower Crop","confidence":0.622},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.621},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.621},{"type":"color_neighbors","target":"minecraft:gray_concrete_powder","label":"Palette proche: Gray Concrete Powder","confidence":0.606},{"type":"color_neighbors","target":"minecraft:cyan_terracotta","label":"Palette proche: Cyan Terracotta","confidence":0.599},{"type":"color_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Palette proche: Gray Glazed Terracotta","confidence":0.596},{"type":"color_neighbors","target":"minecraft:glow_lichen","label":"Palette proche: Glow Lichen","confidence":0.585},{"type":"color_bridge","target":"minecraft:potted_torchflower","label":"Pont de nuance par palette: Potted Torchflower","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par palette: Potted Warped Fungus","confidence":0.736},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par palette: Warped Fungus","confidence":0.736},{"type":"color_bridge","target":"minecraft:lantern","label":"Pont de nuance par palette: Lantern","confidence":0.694},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.691},{"type":"color_bridge","target":"minecraft:torchflower_crop","label":"Pont de nuance par sous-ton: Torchflower Crop","confidence":0.689},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par palette: Waxed Weathered Copper Chain","confidence":0.688},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par palette: Weathered Copper Chain","confidence":0.688},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.676},{"type":"color_bridge","target":"minecraft:cyan_terracotta","label":"Pont de nuance par palette: Cyan Terracotta","confidence":0.67},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.605},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.571},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.57},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.569},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.569},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.554},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.554},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.554}],"category":"natural"},{"id":"minecraft:torchflower_crop","name":"Torchflower Crop","entry_type":"block","description":"Torchflower seeds are ancient seeds that have a chance to be dropped by sniffers when they finish digging. It is the seed of torchflowers.","history":[{"version":"1.19.4","status":"added","notes":"Added torchflower seeds behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#1d6243","dominant_hex":"#144434","average_hex":"#1d6243","hue_group":"cyan","lightness":0.249,"saturation":0.5433,"palette":["#144434","#24845c","#1c5c3c"],"color_groups":[{"hex":"#144434","weight":0.3462,"lightness":0.1725,"saturation":0.5455,"hue_group":"cyan"},{"hex":"#24845c","weight":0.3462,"lightness":0.3294,"saturation":0.5714,"hue_group":"cyan"},{"hex":"#1c5c3c","weight":0.3077,"lightness":0.2353,"saturation":0.5333,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/torchflower_crop_stage0.png","family":"torchflower_crop","relations":[{"type":"visual_neighbors","target":"minecraft:structure_void","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:void_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_pressure_plate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:dark_prismarine","label":"Palette proche: Dark Prismarine","confidence":0.749},{"type":"color_neighbors","target":"minecraft:dark_prismarine_slab","label":"Palette proche: Dark Prismarine Slab","confidence":0.749},{"type":"color_neighbors","target":"minecraft:dark_prismarine_stairs","label":"Palette proche: Dark Prismarine Stairs","confidence":0.749},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.74},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.74},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.74},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.74},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.74},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.74},{"type":"color_neighbors","target":"minecraft:warped_slab","label":"Palette proche: Warped Slab","confidence":0.74},{"type":"color_neighbors","target":"minecraft:warped_stairs","label":"Palette proche: Warped Stairs","confidence":0.74},{"type":"color_neighbors","target":"minecraft:warped_wall_sign","label":"Palette proche: Warped Wall Sign","confidence":0.74},{"type":"color_bridge","target":"minecraft:potted_torchflower","label":"Pont de nuance par sous-ton: Potted Torchflower","confidence":0.689},{"type":"color_bridge","target":"minecraft:torchflower","label":"Pont de nuance par sous-ton: Torchflower","confidence":0.689},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.686},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.686},{"type":"color_bridge","target":"minecraft:end_portal_frame","label":"Pont de nuance par sous-ton: End Portal Frame","confidence":0.638},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.625},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.625},{"type":"color_bridge","target":"minecraft:potatoes","label":"Pont de nuance par palette: Potatoes","confidence":0.619},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.611},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.611},{"type":"color_analogous","target":"minecraft:oxidized_copper_lantern","label":"Couleurs analogues: Oxidized Copper Lantern","confidence":0.952},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_lantern","label":"Couleurs analogues: Waxed Oxidized Copper Lantern","confidence":0.952},{"type":"color_analogous","target":"minecraft:dark_prismarine","label":"Couleurs analogues: Dark Prismarine","confidence":0.928},{"type":"color_analogous","target":"minecraft:dark_prismarine_slab","label":"Couleurs analogues: Dark Prismarine Slab","confidence":0.928},{"type":"color_analogous","target":"minecraft:dark_prismarine_stairs","label":"Couleurs analogues: Dark Prismarine Stairs","confidence":0.928},{"type":"color_analogous","target":"minecraft:oxidized_copper_bars","label":"Couleurs analogues: Oxidized Copper Bars","confidence":0.875},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bars","label":"Couleurs analogues: Waxed Oxidized Copper Bars","confidence":0.875},{"type":"color_analogous","target":"minecraft:oxidized_chiseled_copper","label":"Couleurs analogues: Oxidized Chiseled Copper","confidence":0.867},{"type":"color_complement","target":"minecraft:crimson_button","label":"Contraste complementaire: Crimson Button","confidence":0.928},{"type":"color_complement","target":"minecraft:crimson_fence","label":"Contraste complementaire: Crimson Fence","confidence":0.928},{"type":"color_complement","target":"minecraft:crimson_fence_gate","label":"Contraste complementaire: Crimson Fence Gate","confidence":0.928},{"type":"color_complement","target":"minecraft:crimson_planks","label":"Contraste complementaire: Crimson Planks","confidence":0.928},{"type":"color_complement","target":"minecraft:crimson_pressure_plate","label":"Contraste complementaire: Crimson Pressure Plate","confidence":0.928},{"type":"color_complement","target":"minecraft:crimson_sign","label":"Contraste complementaire: Crimson Sign","confidence":0.928},{"type":"color_complement","target":"minecraft:crimson_slab","label":"Contraste complementaire: Crimson Slab","confidence":0.928},{"type":"color_complement","target":"minecraft:crimson_stairs","label":"Contraste complementaire: Crimson Stairs","confidence":0.928},{"type":"color_triad","target":"minecraft:spruce_trapdoor","label":"Harmonie triadique: Spruce Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_button","label":"Harmonie triadique: Spruce Button","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_fence","label":"Harmonie triadique: Spruce Fence","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_fence_gate","label":"Harmonie triadique: Spruce Fence Gate","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_planks","label":"Harmonie triadique: Spruce Planks","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_pressure_plate","label":"Harmonie triadique: Spruce Pressure Plate","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_sign","label":"Harmonie triadique: Spruce Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_slab","label":"Harmonie triadique: Spruce Slab","confidence":0.96},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.96},{"type":"color_square","target":"minecraft:cocoa","label":"Harmonie carree: Cocoa","confidence":0.928},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.893},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.881},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.881},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.881},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.881},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.685},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.684},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.684},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.673},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.64},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.619},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.619},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.618}],"category":"natural"},{"id":"minecraft:torchflower_seeds","name":"Torchflower Seeds","entry_type":"item","description":"Torchflower seeds are ancient seeds that have a chance to be dropped by sniffers when they finish digging. It is the seed of torchflowers.","history":[{"version":"1.19.4","status":"added","notes":"Added torchflower seeds behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#567546","dominant_hex":"#1c5c3c","average_hex":"#567546","hue_group":"green","lightness":0.3667,"saturation":0.2513,"palette":["#1c5c3c","#b4a954","#144434","#287753","#848c4c","#746c44"],"color_groups":[{"hex":"#1c5c3c","weight":0.2174,"lightness":0.2353,"saturation":0.5333,"hue_group":"cyan"},{"hex":"#b4a954","weight":0.2174,"lightness":0.5176,"saturation":0.3902,"hue_group":"yellow"},{"hex":"#144434","weight":0.1594,"lightness":0.1725,"saturation":0.5455,"hue_group":"cyan"},{"hex":"#287753","weight":0.1594,"lightness":0.3118,"saturation":0.4969,"hue_group":"cyan"},{"hex":"#848c4c","weight":0.1304,"lightness":0.4235,"saturation":0.2963,"hue_group":"yellow"},{"hex":"#746c44","weight":0.1159,"lightness":0.3608,"saturation":0.2609,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/torchflower_seeds.png","family":"torchflower_seeds","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_ball","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_hoe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_spawn_egg","label":"Shared hue group: green","confidence":0.55}],"category":"item"},{"id":"minecraft:totem_of_undying","name":"Totem Of Undying","entry_type":"item","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#b38d4c","dominant_hex":"#7c4c10","average_hex":"#b38d4c","hue_group":"yellow","lightness":0.5,"saturation":0.4039,"palette":["#7c4c10","#a45c24","#bcaf61","#ecdc84","#c48444","#fcf3c5"],"color_groups":[{"hex":"#7c4c10","weight":0.254,"lightness":0.2745,"saturation":0.7714,"hue_group":"yellow"},{"hex":"#a45c24","weight":0.2063,"lightness":0.3922,"saturation":0.64,"hue_group":"red"},{"hex":"#bcaf61","weight":0.1905,"lightness":0.5588,"saturation":0.4044,"hue_group":"yellow"},{"hex":"#ecdc84","weight":0.1349,"lightness":0.7216,"saturation":0.7324,"hue_group":"yellow"},{"hex":"#c48444","weight":0.1111,"lightness":0.5176,"saturation":0.5203,"hue_group":"yellow"},{"hex":"#fcf3c5","weight":0.1032,"lightness":0.8804,"saturation":0.9016,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/totem_of_undying.png","family":"totem_of_undying","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:bee_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone_dust","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:experience_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_nugget","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clock","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_foot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spyglass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_harness","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:trader_llama_spawn_egg","name":"Trader Llama Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#b19772","dominant_hex":"#886c50","average_hex":"#b19772","hue_group":"yellow","lightness":0.5706,"saturation":0.2877,"palette":["#886c50","#ccb484","#f4dcac","#c99b48","#463853","#f6e9c3"],"color_groups":[{"hex":"#886c50","weight":0.268,"lightness":0.4235,"saturation":0.2593,"hue_group":"yellow"},{"hex":"#ccb484","weight":0.2062,"lightness":0.6588,"saturation":0.4138,"hue_group":"yellow"},{"hex":"#f4dcac","weight":0.1804,"lightness":0.8157,"saturation":0.766,"hue_group":"yellow"},{"hex":"#c99b48","weight":0.1443,"lightness":0.5353,"saturation":0.5443,"hue_group":"yellow"},{"hex":"#463853","weight":0.134,"lightness":0.2725,"saturation":0.1942,"hue_group":"purple"},{"hex":"#f6e9c3","weight":0.067,"lightness":0.8647,"saturation":0.7391,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/trader_llama_spawn_egg.png","family":"trader_llama_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cooked_cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_porkchop","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_foot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:eye_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_golem_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:name_tag","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dune_armor_trim_smithing_template","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_spawn_egg","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:trapped_chest","name":"Trapped Chest","entry_type":"block","description":"A trapped chest is a type of chest that functions almost identically, but has a red-tinted latch and produces redstone power while open. Like normal chests, two trapped chests can merge into a large trapped chest if placed next to each other.","history":[{"version":"1.5 13w01a","status":"added","notes":"Added trapped chests."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"trapped_chest","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"utility"},{"id":"minecraft:trial_key","name":"Trial Key","entry_type":"item","description":"A trial key is an item obtained from trial spawners and some other containers in trial chambers. It is used to unlock a standard vault and obtain its loot.","history":[{"version":"1.20.3","status":"added","notes":"Added trial keys."}],"colors":{"primary":"#725142","dominant_hex":"#5f3020","average_hex":"#725142","hue_group":"red","lightness":0.3529,"saturation":0.2667,"palette":["#5f3020","#646b63","#2f332f","#da8e70","#a35335","#444c44"],"color_groups":[{"hex":"#5f3020","weight":0.2268,"lightness":0.249,"saturation":0.4961,"hue_group":"red"},{"hex":"#646b63","weight":0.2165,"lightness":0.4039,"saturation":0.0388,"hue_group":"neutral"},{"hex":"#2f332f","weight":0.1753,"lightness":0.1922,"saturation":0.0408,"hue_group":"neutral"},{"hex":"#da8e70","weight":0.1649,"lightness":0.6471,"saturation":0.5889,"hue_group":"red"},{"hex":"#a35335","weight":0.1237,"lightness":0.4235,"saturation":0.5093,"hue_group":"red"},{"hex":"#444c44","weight":0.0928,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/trial_key.png","family":"trial_key","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:strider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_relic","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:trial_spawner","name":"Trial Spawner","entry_type":"block","description":"A trial spawner is a type of spawner found in trial chambers. It spawns mobs in waves, ejects consumable items and/or trial keys after they are all defeated, and then deactivates for 30 minutes. Having more Survival/Adventure mode players nearby results in more mobs and more rewards. A trial spawner will convert into an active ominous trial spawner during an ominous trial, even if it was on cooldown.","history":[{"version":"1.20.3","status":"added","notes":"Added trial spawners."}],"colors":{"primary":"#3f515c","dominant_hex":"#4c6c80","average_hex":"#3f515c","hue_group":"cyan","lightness":0.3039,"saturation":0.1871,"palette":["#4c6c80","#2c4454","#222736","#243c44","#dc5c04","#fcb478"],"color_groups":[{"hex":"#4c6c80","weight":0.3633,"lightness":0.4,"saturation":0.2549,"hue_group":"cyan"},{"hex":"#2c4454","weight":0.3398,"lightness":0.251,"saturation":0.3125,"hue_group":"cyan"},{"hex":"#222736","weight":0.1719,"lightness":0.1725,"saturation":0.2273,"hue_group":"blue"},{"hex":"#243c44","weight":0.0625,"lightness":0.2039,"saturation":0.3077,"hue_group":"cyan"},{"hex":"#dc5c04","weight":0.0312,"lightness":0.4392,"saturation":0.9643,"hue_group":"red"},{"hex":"#fcb478","weight":0.0312,"lightness":0.7294,"saturation":0.9565,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/trial_spawner_top_active.png","family":"trial_spawner","relations":[{"type":"visual_neighbors","target":"minecraft:vault","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_diamond_ore","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:spawner","label":"Palette proche: Spawner","confidence":0.853},{"type":"color_neighbors","target":"minecraft:vault","label":"Palette proche: Vault","confidence":0.831},{"type":"color_neighbors","target":"minecraft:iron_chain","label":"Palette proche: Iron Chain","confidence":0.794},{"type":"color_neighbors","target":"minecraft:lantern","label":"Palette proche: Lantern","confidence":0.788},{"type":"color_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Palette proche: Cyan Stained Glass Pane","confidence":0.746},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.745},{"type":"color_neighbors","target":"minecraft:campfire","label":"Palette proche: Campfire","confidence":0.745},{"type":"color_neighbors","target":"minecraft:soul_campfire","label":"Palette proche: Soul Campfire","confidence":0.745},{"type":"color_neighbors","target":"minecraft:cyan_stained_glass","label":"Palette proche: Cyan Stained Glass","confidence":0.723},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.72},{"type":"color_neighbors","target":"minecraft:gray_glazed_terracotta","label":"Palette proche: Gray Glazed Terracotta","confidence":0.713},{"type":"color_neighbors","target":"minecraft:gray_carpet","label":"Palette proche: Gray Carpet","confidence":0.707},{"type":"color_bridge","target":"minecraft:spawner","label":"Pont de nuance par sous-ton: Spawner","confidence":0.879},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par palette: Vault","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par palette: Iron Chain","confidence":0.831},{"type":"color_bridge","target":"minecraft:lantern","label":"Pont de nuance par palette: Lantern","confidence":0.825},{"type":"color_bridge","target":"minecraft:cyan_stained_glass_pane","label":"Pont de nuance par sous-ton: Cyan Stained Glass Pane","confidence":0.791},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par sous-ton: Black Candle","confidence":0.79},{"type":"color_bridge","target":"minecraft:campfire","label":"Pont de nuance par palette: Campfire","confidence":0.79},{"type":"color_bridge","target":"minecraft:soul_campfire","label":"Pont de nuance par palette: Soul Campfire","confidence":0.79},{"type":"color_bridge","target":"minecraft:cyan_stained_glass","label":"Pont de nuance par sous-ton: Cyan Stained Glass","confidence":0.772},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.769},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.631},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.629},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.628},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.628},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.598},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.584},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.584},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.581}],"category":""},{"id":"minecraft:trident","name":"Trident","entry_type":"item","description":"A trident is a weapon that can be used to perform melee attacks, or be thrown as a projectile that is not slowed down by water. It can rarely be obtained either from trident-wielding drowned or from trial chambers.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added tridents, which are currently unobtainable in Survival ."},{"version":"18w11a","status":"added","notes":"Added drowned mobs, which can spawn with a trident, allowing tridents to now become obtainable in Survival ."}],"colors":{"primary":"#7a948d","dominant_hex":"#7e9791","average_hex":"#7a948d","hue_group":"neutral","lightness":0.5294,"saturation":0.1083,"palette":["#7e9791","#14443c","#2c5c54","#5a736c","#dcdcdc","#fcfcfc"],"color_groups":[{"hex":"#7e9791","weight":0.197,"lightness":0.5431,"saturation":0.1073,"hue_group":"neutral"},{"hex":"#14443c","weight":0.1667,"lightness":0.1725,"saturation":0.5455,"hue_group":"cyan"},{"hex":"#2c5c54","weight":0.1667,"lightness":0.2667,"saturation":0.3529,"hue_group":"cyan"},{"hex":"#5a736c","weight":0.1667,"lightness":0.402,"saturation":0.122,"hue_group":"cyan"},{"hex":"#dcdcdc","weight":0.1515,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1515,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/trident.png","family":"trident","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:water_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clay_ball","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_membrane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_boat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_chestplate","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:tripwire","name":"Tripwire","entry_type":"block","description":"String is an item that can be used as a crafting material or placed as tripwire to allow tripwire hooks and observers to detect entities that touch it.","history":[{"version":"0.31 20100130","status":"added","notes":"Added string."}],"colors":{"primary":"#818181","dominant_hex":"#5e5e5e","average_hex":"#818181","hue_group":"neutral","lightness":0.5059,"saturation":0.0,"palette":["#5e5e5e","#747474","#8c8c8c","#949494","#b1b1b1","#6c6c6c"],"color_groups":[{"hex":"#5e5e5e","weight":0.2381,"lightness":0.3686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#747474","weight":0.2381,"lightness":0.4549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1905,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1429,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b1b1b1","weight":0.1429,"lightness":0.6941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.0476,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tripwire.png","family":"tripwire","relations":[{"type":"visual_neighbors","target":"minecraft:tall_grass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobblestone_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cobblestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:large_fern","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_leaves","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_button","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.94},{"type":"color_neighbors","target":"minecraft:grindstone","label":"Palette proche: Grindstone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:attached_melon_stem","label":"Palette proche: Attached Melon Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Palette proche: Attached Pumpkin Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bush","label":"Palette proche: Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pumpkin_stem","label":"Palette proche: Pumpkin Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.94},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:lily_pad","label":"Pont de nuance par palette: Lily Pad","confidence":0.86},{"type":"color_bridge","target":"minecraft:grindstone","label":"Pont de nuance par palette: Grindstone","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_melon_stem","label":"Pont de nuance par palette: Attached Melon Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_pumpkin_stem","label":"Pont de nuance par palette: Attached Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:bush","label":"Pont de nuance par palette: Bush","confidence":0.86},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:pumpkin_stem","label":"Pont de nuance par palette: Pumpkin Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55}],"category":"redstone"},{"id":"minecraft:tripwire_hook","name":"Tripwire Hook","entry_type":"block","description":"A tripwire hook is a block used to create a tripwire circuit, which requires two hooks and a straight horizontal line of 1-40 string. Both hooks in a valid circuit emit a redstone signal and power their attached blocks while any of the string is being touched by an entity, or if any string is broken without using shears.","history":[{"version":"1.3.1 12w22a","status":"added","notes":"Added tripwire hooks."}],"colors":{"primary":"#8f8576","dominant_hex":"#7c7c7c","average_hex":"#8f8576","hue_group":"neutral","lightness":0.5118,"saturation":0.1004,"palette":["#7c7c7c","#848484","#8c8c8c","#949494","#8b7345","#b7975f"],"color_groups":[{"hex":"#7c7c7c","weight":0.1739,"lightness":0.4863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#848484","weight":0.1739,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8c8c8c","weight":0.1739,"lightness":0.549,"saturation":0.0,"hue_group":"neutral"},{"hex":"#949494","weight":0.1739,"lightness":0.5804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#8b7345","weight":0.1522,"lightness":0.4078,"saturation":0.3365,"hue_group":"yellow"},{"hex":"#b7975f","weight":0.1522,"lightness":0.5451,"saturation":0.3793,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tripwire_hook.png","family":"tripwire_hook","relations":[{"type":"visual_neighbors","target":"minecraft:diamond_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_terracotta","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:emerald_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_fire_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lilac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_lichen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_wall_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_horn_coral_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dead_brain_coral_fan","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:stonecutter","label":"Palette proche: Stonecutter","confidence":0.934},{"type":"color_neighbors","target":"minecraft:iron_ore","label":"Palette proche: Iron Ore","confidence":0.928},{"type":"color_neighbors","target":"minecraft:infested_stone","label":"Palette proche: Infested Stone","confidence":0.924},{"type":"color_neighbors","target":"minecraft:stone","label":"Palette proche: Stone","confidence":0.924},{"type":"color_neighbors","target":"minecraft:stone_button","label":"Palette proche: Stone Button","confidence":0.924},{"type":"color_neighbors","target":"minecraft:stone_pressure_plate","label":"Palette proche: Stone Pressure Plate","confidence":0.924},{"type":"color_neighbors","target":"minecraft:stone_slab","label":"Palette proche: Stone Slab","confidence":0.924},{"type":"color_neighbors","target":"minecraft:stone_stairs","label":"Palette proche: Stone Stairs","confidence":0.924},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.915},{"type":"color_neighbors","target":"minecraft:andesite","label":"Palette proche: Andesite","confidence":0.914},{"type":"color_neighbors","target":"minecraft:andesite_slab","label":"Palette proche: Andesite Slab","confidence":0.914},{"type":"color_neighbors","target":"minecraft:andesite_stairs","label":"Palette proche: Andesite Stairs","confidence":0.914},{"type":"color_bridge","target":"minecraft:lever","label":"Pont de nuance par sous-ton: Lever","confidence":0.9},{"type":"color_bridge","target":"minecraft:barrel","label":"Pont de nuance par sous-ton: Barrel","confidence":0.896},{"type":"color_bridge","target":"minecraft:dirt","label":"Pont de nuance par sous-ton: Dirt","confidence":0.883},{"type":"color_bridge","target":"minecraft:stonecutter","label":"Pont de nuance par palette: Stonecutter","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_ore","label":"Pont de nuance par palette: Iron Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:infested_stone","label":"Pont de nuance par palette: Infested Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone","label":"Pont de nuance par palette: Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_button","label":"Pont de nuance par palette: Stone Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_pressure_plate","label":"Pont de nuance par palette: Stone Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:stone_slab","label":"Pont de nuance par palette: Stone Slab","confidence":0.86},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55}],"category":"redstone"},{"id":"minecraft:tropical_a","name":"Tropical A","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#bdbdbd","dominant_hex":"#c4c4c4","average_hex":"#bdbdbd","hue_group":"neutral","lightness":0.7412,"saturation":0.0,"palette":["#c4c4c4","#acacac","#b4b4b4","#ececec","#d4d4d4","#1c1c1c"],"color_groups":[{"hex":"#c4c4c4","weight":0.3256,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.2326,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b4b4b4","weight":0.186,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ececec","weight":0.186,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d4d4d4","weight":0.0465,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#1c1c1c","weight":0.0233,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/tropical_a.png","family":"tropical_a","relations":[{"type":"visual_neighbors","target":"minecraft:skeleton_horse","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white_splotched","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_white","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:tropical_a_pattern_1","name":"Tropical A Pattern 1","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#f9f9f9","dominant_hex":"#fcfcfc","average_hex":"#f9f9f9","hue_group":"neutral","lightness":0.9765,"saturation":0.0,"palette":["#fcfcfc","#f4f4f4"],"color_groups":[{"hex":"#fcfcfc","weight":0.6316,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.3684,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/tropical_a_pattern_1.png","family":"tropical_a_pattern_1","relations":[{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitedots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_exploding","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:tropical_a_pattern_2","name":"Tropical A Pattern 2","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#efefef","dominant_hex":"#f4f4f4","average_hex":"#efefef","hue_group":"neutral","lightness":0.9373,"saturation":0.0,"palette":["#f4f4f4","#fcfcfc","#040404"],"color_groups":[{"hex":"#f4f4f4","weight":0.4833,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.4833,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.0333,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/tropical_a_pattern_2.png","family":"tropical_a_pattern_2","relations":[{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitedots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitefield","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_1","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:tropical_a_pattern_3","name":"Tropical A Pattern 3","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#e7e7e7","dominant_hex":"#fcfcfc","average_hex":"#e7e7e7","hue_group":"neutral","lightness":0.9059,"saturation":0.0,"palette":["#fcfcfc","#f4f4f4","#040404","#ececec"],"color_groups":[{"hex":"#fcfcfc","weight":0.5926,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.2963,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.0741,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ececec","weight":0.037,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/tropical_a_pattern_3.png","family":"tropical_a_pattern_3","relations":[{"type":"visual_neighbors","target":"minecraft:horse/markings_whitefield","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool_undercoat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:tropical_a_pattern_4","name":"Tropical A Pattern 4","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#fafafa","dominant_hex":"#fcfcfc","average_hex":"#fafafa","hue_group":"neutral","lightness":0.9804,"saturation":0.0,"palette":["#fcfcfc","#f4f4f4"],"color_groups":[{"hex":"#fcfcfc","weight":0.7,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.3,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/tropical_a_pattern_4.png","family":"tropical_a_pattern_4","relations":[{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_exploding","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitedots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:tropical_a_pattern_5","name":"Tropical A Pattern 5","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#eeeeee","dominant_hex":"#fcfcfc","average_hex":"#eeeeee","hue_group":"neutral","lightness":0.9333,"saturation":0.0,"palette":["#fcfcfc","#f4f4f4","#ececec","#040404"],"color_groups":[{"hex":"#fcfcfc","weight":0.4828,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.3448,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ececec","weight":0.1379,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.0345,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/tropical_a_pattern_5.png","family":"tropical_a_pattern_5","relations":[{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitefield","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitedots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:tropical_a_pattern_6","name":"Tropical A Pattern 6","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#fbfbfb","dominant_hex":"#fcfcfc","average_hex":"#fbfbfb","hue_group":"neutral","lightness":0.9843,"saturation":0.0,"palette":["#fcfcfc","#f4f4f4"],"color_groups":[{"hex":"#fcfcfc","weight":0.7407,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.2593,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/tropical_a_pattern_6.png","family":"tropical_a_pattern_6","relations":[{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_exploding","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitedots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:tropical_b","name":"Tropical B","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#aeaeae","dominant_hex":"#b4b4b4","average_hex":"#aeaeae","hue_group":"neutral","lightness":0.6824,"saturation":0.0,"palette":["#b4b4b4","#a4a4a4","#959595","#c4c4c4","#d4d4d4","#040404"],"color_groups":[{"hex":"#b4b4b4","weight":0.2681,"lightness":0.7059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#a4a4a4","weight":0.2246,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#959595","weight":0.2101,"lightness":0.5843,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.1667,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d4d4d4","weight":0.1159,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.0145,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/tropical_b.png","family":"tropical_b","relations":[{"type":"visual_neighbors","target":"minecraft:rabbit/white_splotched","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:tropical_b_pattern_1","name":"Tropical B Pattern 1","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#ededed","dominant_hex":"#dcdcdc","average_hex":"#ededed","hue_group":"neutral","lightness":0.9294,"saturation":0.0,"palette":["#dcdcdc","#fcfcfc","#f4f4f4"],"color_groups":[{"hex":"#dcdcdc","weight":0.4133,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.3467,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.24,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/tropical_b_pattern_1.png","family":"tropical_b_pattern_1","relations":[{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitefield","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitedots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:tropical_b_pattern_2","name":"Tropical B Pattern 2","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#f8f8f8","dominant_hex":"#fcfcfc","average_hex":"#f8f8f8","hue_group":"neutral","lightness":0.9725,"saturation":0.0,"palette":["#fcfcfc","#f4f4f4","#040404"],"color_groups":[{"hex":"#fcfcfc","weight":0.9091,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.0682,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.0227,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/tropical_b_pattern_2.png","family":"tropical_b_pattern_2","relations":[{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitedots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_exploding","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:tropical_b_pattern_3","name":"Tropical B Pattern 3","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#f3f3f3","dominant_hex":"#fcfcfc","average_hex":"#f3f3f3","hue_group":"neutral","lightness":0.9529,"saturation":0.0,"palette":["#fcfcfc","#e4e4e4","#f4f4f4","#cccccc"],"color_groups":[{"hex":"#fcfcfc","weight":0.5652,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e4e4e4","weight":0.3043,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.1087,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.0217,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/tropical_b_pattern_3.png","family":"tropical_b_pattern_3","relations":[{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitedots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_6","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:tropical_b_pattern_4","name":"Tropical B Pattern 4","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#ebebeb","dominant_hex":"#f4f4f4","average_hex":"#ebebeb","hue_group":"neutral","lightness":0.9216,"saturation":0.0,"palette":["#f4f4f4","#dcdcdc","#fcfcfc","#040404"],"color_groups":[{"hex":"#f4f4f4","weight":0.3774,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.3019,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.3019,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.0189,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/tropical_b_pattern_4.png","family":"tropical_b_pattern_4","relations":[{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitefield","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_5","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:tropical_b_pattern_5","name":"Tropical B Pattern 5","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#f4f4f4","dominant_hex":"#fcfcfc","average_hex":"#f4f4f4","hue_group":"neutral","lightness":0.9569,"saturation":0.0,"palette":["#fcfcfc","#f4f4f4","#040404","#cccccc","#dcdcdc"],"color_groups":[{"hex":"#fcfcfc","weight":0.7805,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.1463,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.0244,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.0244,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.0244,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/tropical_b_pattern_5.png","family":"tropical_b_pattern_5","relations":[{"type":"visual_neighbors","target":"minecraft:horse/markings_whitedots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_6","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:tropical_b_pattern_6","name":"Tropical B Pattern 6","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#f3f3f3","dominant_hex":"#fcfcfc","average_hex":"#f3f3f3","hue_group":"neutral","lightness":0.9529,"saturation":0.0,"palette":["#fcfcfc","#dcdcdc","#f4f4f4"],"color_groups":[{"hex":"#fcfcfc","weight":0.5429,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.2571,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.2,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/fish/tropical_b_pattern_6.png","family":"tropical_b_pattern_6","relations":[{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_3","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_whitedots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_5","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_2","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_1","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b_pattern_4","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a_pattern_6","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:tropical_fish","name":"Tropical Fish","entry_type":"item","description":"Tropical fish are common bucketable aquatic passive mobs found in warm or lukewarm oceans, mangrove swamps and lush caves. There are 2,700 naturally occurring variants of tropical fish of different colors and shapes with unique names in Bedrock Edition and 3,072 in Java Edition.","history":[{"version":"1.13 18w10a","status":"added","notes":"Added tropical fish."}],"colors":{"primary":"#c96c3d","dominant_hex":"#b9522b","average_hex":"#c96c3d","hue_group":"red","lightness":0.5137,"saturation":0.5645,"palette":["#b9522b","#ef681f","#65290b","#f4ccb4","#f48c4c","#ecb48c"],"color_groups":[{"hex":"#b9522b","weight":0.3191,"lightness":0.4471,"saturation":0.6228,"hue_group":"red"},{"hex":"#ef681f","weight":0.234,"lightness":0.5294,"saturation":0.8667,"hue_group":"red"},{"hex":"#65290b","weight":0.1489,"lightness":0.2196,"saturation":0.8036,"hue_group":"red"},{"hex":"#f4ccb4","weight":0.1277,"lightness":0.8314,"saturation":0.7442,"hue_group":"red"},{"hex":"#f48c4c","weight":0.0957,"lightness":0.6275,"saturation":0.8842,"hue_group":"red"},{"hex":"#ecb48c","weight":0.0745,"lightness":0.7373,"saturation":0.7164,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/tropical_fish.png","family":"tropical_fish","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:glistering_melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mutton","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cookie","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nautilus_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_ingot","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon_slice","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_nugget","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_bundle","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:porkchop","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:tropical_fish_bucket","name":"Tropical Fish Bucket","entry_type":"item","description":"A bucket of tropical fish, internally known as a tropical fish bucket, is a living tropical fish inside of a water bucket, in the form of an item.","history":[{"version":"18w10a","status":"added","notes":"Added tropical fish buckets."},{"version":"1.13.1 18w33a","status":"added","notes":"added for buckets of tropical fish."},{"version":"19w05a","status":"added","notes":"Added wandering traders , which sell buckets of tropical fish."}],"colors":{"primary":"#8b7877","dominant_hex":"#39322e","average_hex":"#8b7877","hue_group":"neutral","lightness":0.5059,"saturation":0.0794,"palette":["#39322e","#858585","#e5e0dc","#da6227","#bcafa8","#335bdb"],"color_groups":[{"hex":"#39322e","weight":0.2895,"lightness":0.202,"saturation":0.1068,"hue_group":"neutral"},{"hex":"#858585","weight":0.1776,"lightness":0.5216,"saturation":0.0,"hue_group":"neutral"},{"hex":"#e5e0dc","weight":0.1645,"lightness":0.8804,"saturation":0.1475,"hue_group":"red"},{"hex":"#da6227","weight":0.1513,"lightness":0.5039,"saturation":0.7075,"hue_group":"red"},{"hex":"#bcafa8","weight":0.1316,"lightness":0.698,"saturation":0.1299,"hue_group":"red"},{"hex":"#335bdb","weight":0.0855,"lightness":0.5294,"saturation":0.7,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/tropical_fish_bucket.png","family":"tropical_fish_bucket","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:pufferfish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clay_ball","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trident","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_bucket","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:tropical_fish_spawn_egg","name":"Tropical Fish Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#8c7168","dominant_hex":"#d5d0d1","average_hex":"#8c7168","hue_group":"red","lightness":0.4784,"saturation":0.1475,"palette":["#d5d0d1","#71777e","#305185","#933804","#d0611a","#4c4c4c"],"color_groups":[{"hex":"#d5d0d1","weight":0.2279,"lightness":0.8255,"saturation":0.0562,"hue_group":"neutral"},{"hex":"#71777e","weight":0.1765,"lightness":0.4686,"saturation":0.0544,"hue_group":"neutral"},{"hex":"#305185","weight":0.1691,"lightness":0.3549,"saturation":0.4696,"hue_group":"blue"},{"hex":"#933804","weight":0.1691,"lightness":0.2961,"saturation":0.947,"hue_group":"red"},{"hex":"#d0611a","weight":0.1471,"lightness":0.4588,"saturation":0.7778,"hue_group":"red"},{"hex":"#4c4c4c","weight":0.1103,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/tropical_fish_spawn_egg.png","family":"tropical_fish_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:shears","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_bucket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_scute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:writable_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_shell","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:tube_coral","name":"Tube Coral","entry_type":"block","description":"Coral is a type of non-solid block that comes in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w10a","status":"added","notes":"Added coral plants."},{"version":"18w10d","status":"added","notes":"Added coral reefs , allowing coral plants to generate naturally."}],"colors":{"primary":"#3053c5","dominant_hex":"#344cdc","average_hex":"#3053c5","hue_group":"blue","lightness":0.4804,"saturation":0.6082,"palette":["#344cdc","#1c348c","#3c6ce4","#445ce4","#2444a4","#3c84e4"],"color_groups":[{"hex":"#344cdc","weight":0.2484,"lightness":0.5333,"saturation":0.7059,"hue_group":"blue"},{"hex":"#1c348c","weight":0.2353,"lightness":0.3294,"saturation":0.6667,"hue_group":"blue"},{"hex":"#3c6ce4","weight":0.1765,"lightness":0.5647,"saturation":0.7568,"hue_group":"blue"},{"hex":"#445ce4","weight":0.1373,"lightness":0.5804,"saturation":0.7477,"hue_group":"blue"},{"hex":"#2444a4","weight":0.1176,"lightness":0.3922,"saturation":0.64,"hue_group":"blue"},{"hex":"#3c84e4","weight":0.085,"lightness":0.5647,"saturation":0.7568,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tube_coral.png","family":"tube_coral","relations":[{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lapis_block","label":"Palette proche: Lapis Block","confidence":0.829},{"type":"color_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Palette proche: Blue Stained Glass Pane","confidence":0.804},{"type":"color_neighbors","target":"minecraft:blue_stained_glass","label":"Palette proche: Blue Stained Glass","confidence":0.777},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.764},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass","label":"Palette proche: Light Blue Stained Glass","confidence":0.725},{"type":"color_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Palette proche: Blue Glazed Terracotta","confidence":0.72},{"type":"color_neighbors","target":"minecraft:blue_carpet","label":"Palette proche: Blue Carpet","confidence":0.713},{"type":"color_neighbors","target":"minecraft:blue_wool","label":"Palette proche: Blue Wool","confidence":0.713},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Palette proche: Light Blue Stained Glass Pane","confidence":0.708},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.62},{"type":"color_bridge","target":"minecraft:cyan_concrete_powder","label":"Pont de nuance par palette: Cyan Concrete Powder","confidence":0.609},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.596},{"type":"color_bridge","target":"minecraft:cyan_shulker_box","label":"Pont de nuance par palette: Cyan Shulker Box","confidence":0.588},{"type":"color_bridge","target":"minecraft:blue_orchid","label":"Pont de nuance par palette: Blue Orchid","confidence":0.587},{"type":"color_bridge","target":"minecraft:potted_blue_orchid","label":"Pont de nuance par palette: Potted Blue Orchid","confidence":0.587},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par sous-ton: Heavy Core","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_analogous","target":"minecraft:tube_coral_block","label":"Couleurs analogues: Tube Coral Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:tube_coral_fan","label":"Couleurs analogues: Tube Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:tube_coral_wall_fan","label":"Couleurs analogues: Tube Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_stained_glass_pane","label":"Couleurs analogues: Blue Stained Glass Pane","confidence":0.95},{"type":"color_analogous","target":"minecraft:blue_stained_glass","label":"Couleurs analogues: Blue Stained Glass","confidence":0.943},{"type":"color_analogous","target":"minecraft:blue_glazed_terracotta","label":"Couleurs analogues: Blue Glazed Terracotta","confidence":0.925},{"type":"color_analogous","target":"minecraft:blue_candle","label":"Couleurs analogues: Blue Candle","confidence":0.92},{"type":"color_analogous","target":"minecraft:black_concrete","label":"Couleurs analogues: Black Concrete","confidence":0.845},{"type":"color_complement","target":"minecraft:hay_block","label":"Contraste complementaire: Hay Block","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_button","label":"Contraste complementaire: Birch Button","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_fence","label":"Contraste complementaire: Birch Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_fence_gate","label":"Contraste complementaire: Birch Fence Gate","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_planks","label":"Contraste complementaire: Birch Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_pressure_plate","label":"Contraste complementaire: Birch Pressure Plate","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_sign","label":"Contraste complementaire: Birch Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_slab","label":"Contraste complementaire: Birch Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_white_tulip","label":"Harmonie triadique: Potted White Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:white_tulip","label":"Harmonie triadique: White Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:sunflower","label":"Harmonie triadique: Sunflower","confidence":0.96},{"type":"color_triad","target":"minecraft:beetroots","label":"Harmonie triadique: Beetroots","confidence":0.942},{"type":"color_triad","target":"minecraft:potatoes","label":"Harmonie triadique: Potatoes","confidence":0.918},{"type":"color_triad","target":"minecraft:pink_tulip","label":"Harmonie triadique: Pink Tulip","confidence":0.907},{"type":"color_triad","target":"minecraft:potted_pink_tulip","label":"Harmonie triadique: Potted Pink Tulip","confidence":0.907},{"type":"color_triad","target":"minecraft:slime_block","label":"Harmonie triadique: Slime Block","confidence":0.906},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.951},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.945},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.702},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.636},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.627},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.627},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.623},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.586},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.55}],"category":"natural"},{"id":"minecraft:tube_coral_block","name":"Tube Coral Block","entry_type":"block","description":"A coral block is a solid block that comes in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"20100629","status":"added","notes":"added to terrain.png ."},{"version":"1.13 18w09a","status":"added","notes":"Added coral."},{"version":"18w10d","status":"added","notes":"Added coral reefs , allowing coral to generate naturally."}],"colors":{"primary":"#3157cf","dominant_hex":"#344cdc","average_hex":"#3157cf","hue_group":"blue","lightness":0.502,"saturation":0.622,"palette":["#344cdc","#2444a4","#3c6ce4","#3c84e4","#445ce4","#1c348c"],"color_groups":[{"hex":"#344cdc","weight":0.3633,"lightness":0.5333,"saturation":0.7059,"hue_group":"blue"},{"hex":"#2444a4","weight":0.2344,"lightness":0.3922,"saturation":0.64,"hue_group":"blue"},{"hex":"#3c6ce4","weight":0.1758,"lightness":0.5647,"saturation":0.7568,"hue_group":"blue"},{"hex":"#3c84e4","weight":0.1094,"lightness":0.5647,"saturation":0.7568,"hue_group":"blue"},{"hex":"#445ce4","weight":0.0742,"lightness":0.5804,"saturation":0.7477,"hue_group":"blue"},{"hex":"#1c348c","weight":0.043,"lightness":0.3294,"saturation":0.6667,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tube_coral_block.png","family":"tube_coral_block","relations":[{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lapis_block","label":"Palette proche: Lapis Block","confidence":0.817},{"type":"color_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Palette proche: Blue Stained Glass Pane","confidence":0.807},{"type":"color_neighbors","target":"minecraft:blue_stained_glass","label":"Palette proche: Blue Stained Glass","confidence":0.782},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.77},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass","label":"Palette proche: Light Blue Stained Glass","confidence":0.74},{"type":"color_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Palette proche: Blue Glazed Terracotta","confidence":0.726},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Palette proche: Light Blue Stained Glass Pane","confidence":0.723},{"type":"color_neighbors","target":"minecraft:blue_carpet","label":"Palette proche: Blue Carpet","confidence":0.713},{"type":"color_neighbors","target":"minecraft:blue_wool","label":"Palette proche: Blue Wool","confidence":0.713},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.631},{"type":"color_bridge","target":"minecraft:cyan_concrete_powder","label":"Pont de nuance par palette: Cyan Concrete Powder","confidence":0.611},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.6},{"type":"color_bridge","target":"minecraft:blue_orchid","label":"Pont de nuance par palette: Blue Orchid","confidence":0.595},{"type":"color_bridge","target":"minecraft:potted_blue_orchid","label":"Pont de nuance par palette: Potted Blue Orchid","confidence":0.595},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par sous-ton: Heavy Core","confidence":0.58},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_analogous","target":"minecraft:tube_coral_fan","label":"Couleurs analogues: Tube Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:tube_coral_wall_fan","label":"Couleurs analogues: Tube Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:tube_coral","label":"Couleurs analogues: Tube Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_stained_glass_pane","label":"Couleurs analogues: Blue Stained Glass Pane","confidence":0.938},{"type":"color_analogous","target":"minecraft:blue_stained_glass","label":"Couleurs analogues: Blue Stained Glass","confidence":0.931},{"type":"color_analogous","target":"minecraft:blue_glazed_terracotta","label":"Couleurs analogues: Blue Glazed Terracotta","confidence":0.913},{"type":"color_analogous","target":"minecraft:blue_candle","label":"Couleurs analogues: Blue Candle","confidence":0.908},{"type":"color_analogous","target":"minecraft:black_concrete","label":"Couleurs analogues: Black Concrete","confidence":0.848},{"type":"color_complement","target":"minecraft:hay_block","label":"Contraste complementaire: Hay Block","confidence":0.96},{"type":"color_complement","target":"minecraft:yellow_carpet","label":"Contraste complementaire: Yellow Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:yellow_wool","label":"Contraste complementaire: Yellow Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_button","label":"Contraste complementaire: Birch Button","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_fence","label":"Contraste complementaire: Birch Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_fence_gate","label":"Contraste complementaire: Birch Fence Gate","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_planks","label":"Contraste complementaire: Birch Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_pressure_plate","label":"Contraste complementaire: Birch Pressure Plate","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_white_tulip","label":"Harmonie triadique: Potted White Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:white_tulip","label":"Harmonie triadique: White Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:sunflower","label":"Harmonie triadique: Sunflower","confidence":0.96},{"type":"color_triad","target":"minecraft:beetroots","label":"Harmonie triadique: Beetroots","confidence":0.954},{"type":"color_triad","target":"minecraft:pink_tulip","label":"Harmonie triadique: Pink Tulip","confidence":0.919},{"type":"color_triad","target":"minecraft:potted_pink_tulip","label":"Harmonie triadique: Potted Pink Tulip","confidence":0.919},{"type":"color_triad","target":"minecraft:potatoes","label":"Harmonie triadique: Potatoes","confidence":0.904},{"type":"color_triad","target":"minecraft:potted_crimson_roots","label":"Harmonie triadique: Potted Crimson Roots","confidence":0.894},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.936},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.932},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.715},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.621},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.612},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.612},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.608},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.573},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_vein","label":"Contraste clair sombre: Sculk Vein","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:crying_obsidian","label":"Contraste clair sombre: Crying Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55}],"category":"natural"},{"id":"minecraft:tube_coral_fan","name":"Tube Coral Fan","entry_type":"block","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w11a","status":"added","notes":"Added coral fans."}],"colors":{"primary":"#335cd1","dominant_hex":"#344cdc","average_hex":"#335cd1","hue_group":"blue","lightness":0.5098,"saturation":0.632,"palette":["#344cdc","#3c6ce4","#2444a4","#3c84e4","#1c348c","#445ce4"],"color_groups":[{"hex":"#344cdc","weight":0.2785,"lightness":0.5333,"saturation":0.7059,"hue_group":"blue"},{"hex":"#3c6ce4","weight":0.2785,"lightness":0.5647,"saturation":0.7568,"hue_group":"blue"},{"hex":"#2444a4","weight":0.2025,"lightness":0.3922,"saturation":0.64,"hue_group":"blue"},{"hex":"#3c84e4","weight":0.1392,"lightness":0.5647,"saturation":0.7568,"hue_group":"blue"},{"hex":"#1c348c","weight":0.0506,"lightness":0.3294,"saturation":0.6667,"hue_group":"blue"},{"hex":"#445ce4","weight":0.0506,"lightness":0.5804,"saturation":0.7477,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tube_coral_fan.png","family":"tube_coral_fan","relations":[{"type":"visual_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tube_coral_wall_fan","label":"Palette proche: Tube Coral Wall Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lapis_block","label":"Palette proche: Lapis Block","confidence":0.815},{"type":"color_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Palette proche: Blue Stained Glass Pane","confidence":0.798},{"type":"color_neighbors","target":"minecraft:blue_stained_glass","label":"Palette proche: Blue Stained Glass","confidence":0.774},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.769},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass","label":"Palette proche: Light Blue Stained Glass","confidence":0.746},{"type":"color_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Palette proche: Blue Glazed Terracotta","confidence":0.729},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Palette proche: Light Blue Stained Glass Pane","confidence":0.729},{"type":"color_neighbors","target":"minecraft:light_blue_shulker_box","label":"Palette proche: Light Blue Shulker Box","confidence":0.71},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.703},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.63},{"type":"color_bridge","target":"minecraft:cyan_concrete_powder","label":"Pont de nuance par palette: Cyan Concrete Powder","confidence":0.61},{"type":"color_bridge","target":"minecraft:blue_orchid","label":"Pont de nuance par palette: Blue Orchid","confidence":0.601},{"type":"color_bridge","target":"minecraft:potted_blue_orchid","label":"Pont de nuance par palette: Potted Blue Orchid","confidence":0.601},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.598},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par sous-ton: Heavy Core","confidence":0.58},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_analogous","target":"minecraft:tube_coral_wall_fan","label":"Couleurs analogues: Tube Coral Wall Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:tube_coral_block","label":"Couleurs analogues: Tube Coral Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:tube_coral","label":"Couleurs analogues: Tube Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_stained_glass_pane","label":"Couleurs analogues: Blue Stained Glass Pane","confidence":0.912},{"type":"color_analogous","target":"minecraft:blue_stained_glass","label":"Couleurs analogues: Blue Stained Glass","confidence":0.904},{"type":"color_analogous","target":"minecraft:blue_glazed_terracotta","label":"Couleurs analogues: Blue Glazed Terracotta","confidence":0.886},{"type":"color_analogous","target":"minecraft:blue_candle","label":"Couleurs analogues: Blue Candle","confidence":0.881},{"type":"color_analogous","target":"minecraft:black_concrete","label":"Couleurs analogues: Black Concrete","confidence":0.872},{"type":"color_complement","target":"minecraft:yellow_candle","label":"Contraste complementaire: Yellow Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:bell","label":"Contraste complementaire: Bell","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_hanging_sign","label":"Contraste complementaire: Birch Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_wall_hanging_sign","label":"Contraste complementaire: Birch Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_birch_log","label":"Contraste complementaire: Stripped Birch Log","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_birch_wood","label":"Contraste complementaire: Stripped Birch Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_trapdoor","label":"Contraste complementaire: Birch Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:hay_block","label":"Contraste complementaire: Hay Block","confidence":0.949},{"type":"color_triad","target":"minecraft:sunflower","label":"Harmonie triadique: Sunflower","confidence":0.96},{"type":"color_triad","target":"minecraft:beetroots","label":"Harmonie triadique: Beetroots","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_tulip","label":"Harmonie triadique: Pink Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_pink_tulip","label":"Harmonie triadique: Potted Pink Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_white_tulip","label":"Harmonie triadique: Potted White Tulip","confidence":0.947},{"type":"color_triad","target":"minecraft:white_tulip","label":"Harmonie triadique: White Tulip","confidence":0.947},{"type":"color_triad","target":"minecraft:potted_crimson_roots","label":"Harmonie triadique: Potted Crimson Roots","confidence":0.939},{"type":"color_triad","target":"minecraft:crimson_roots","label":"Harmonie triadique: Crimson Roots","confidence":0.914},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.887},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.885},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.761},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.599},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.599},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.593},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.593},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.573},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_vein","label":"Contraste clair sombre: Sculk Vein","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:crying_obsidian","label":"Contraste clair sombre: Crying Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55}],"category":"natural"},{"id":"minecraft:tube_coral_wall_fan","name":"Tube Coral Wall Fan","entry_type":"block","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","history":[{"version":"1.13 18w11a","status":"added","notes":"Added coral fans."}],"colors":{"primary":"#335cd1","dominant_hex":"#344cdc","average_hex":"#335cd1","hue_group":"blue","lightness":0.5098,"saturation":0.632,"palette":["#344cdc","#3c6ce4","#2444a4","#3c84e4","#1c348c","#445ce4"],"color_groups":[{"hex":"#344cdc","weight":0.2785,"lightness":0.5333,"saturation":0.7059,"hue_group":"blue"},{"hex":"#3c6ce4","weight":0.2785,"lightness":0.5647,"saturation":0.7568,"hue_group":"blue"},{"hex":"#2444a4","weight":0.2025,"lightness":0.3922,"saturation":0.64,"hue_group":"blue"},{"hex":"#3c84e4","weight":0.1392,"lightness":0.5647,"saturation":0.7568,"hue_group":"blue"},{"hex":"#1c348c","weight":0.0506,"lightness":0.3294,"saturation":0.6667,"hue_group":"blue"},{"hex":"#445ce4","weight":0.0506,"lightness":0.5804,"saturation":0.7477,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tube_coral_fan.png","family":"tube_coral_wall_fan","relations":[{"type":"visual_neighbors","target":"minecraft:tube_coral_fan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tube_coral","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_block","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_carpet","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wool","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tube_coral","label":"Palette proche: Tube Coral","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tube_coral_block","label":"Palette proche: Tube Coral Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tube_coral_fan","label":"Palette proche: Tube Coral Fan","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lapis_block","label":"Palette proche: Lapis Block","confidence":0.815},{"type":"color_neighbors","target":"minecraft:blue_stained_glass_pane","label":"Palette proche: Blue Stained Glass Pane","confidence":0.798},{"type":"color_neighbors","target":"minecraft:blue_stained_glass","label":"Palette proche: Blue Stained Glass","confidence":0.774},{"type":"color_neighbors","target":"minecraft:blue_candle","label":"Palette proche: Blue Candle","confidence":0.769},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass","label":"Palette proche: Light Blue Stained Glass","confidence":0.746},{"type":"color_neighbors","target":"minecraft:blue_glazed_terracotta","label":"Palette proche: Blue Glazed Terracotta","confidence":0.729},{"type":"color_neighbors","target":"minecraft:light_blue_stained_glass_pane","label":"Palette proche: Light Blue Stained Glass Pane","confidence":0.729},{"type":"color_neighbors","target":"minecraft:light_blue_shulker_box","label":"Palette proche: Light Blue Shulker Box","confidence":0.71},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.703},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.63},{"type":"color_bridge","target":"minecraft:cyan_concrete_powder","label":"Pont de nuance par palette: Cyan Concrete Powder","confidence":0.61},{"type":"color_bridge","target":"minecraft:blue_orchid","label":"Pont de nuance par palette: Blue Orchid","confidence":0.601},{"type":"color_bridge","target":"minecraft:potted_blue_orchid","label":"Pont de nuance par palette: Potted Blue Orchid","confidence":0.601},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.598},{"type":"color_bridge","target":"minecraft:light_blue_terracotta","label":"Pont de nuance par sous-ton: Light Blue Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par sous-ton: Iron Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par sous-ton: Heavy Core","confidence":0.58},{"type":"color_bridge","target":"minecraft:clay","label":"Pont de nuance par sous-ton: Clay","confidence":0.58},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.58},{"type":"color_analogous","target":"minecraft:tube_coral_fan","label":"Couleurs analogues: Tube Coral Fan","confidence":0.96},{"type":"color_analogous","target":"minecraft:tube_coral_block","label":"Couleurs analogues: Tube Coral Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:tube_coral","label":"Couleurs analogues: Tube Coral","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_stained_glass_pane","label":"Couleurs analogues: Blue Stained Glass Pane","confidence":0.912},{"type":"color_analogous","target":"minecraft:blue_stained_glass","label":"Couleurs analogues: Blue Stained Glass","confidence":0.904},{"type":"color_analogous","target":"minecraft:blue_glazed_terracotta","label":"Couleurs analogues: Blue Glazed Terracotta","confidence":0.886},{"type":"color_analogous","target":"minecraft:blue_candle","label":"Couleurs analogues: Blue Candle","confidence":0.881},{"type":"color_analogous","target":"minecraft:black_concrete","label":"Couleurs analogues: Black Concrete","confidence":0.872},{"type":"color_complement","target":"minecraft:yellow_candle","label":"Contraste complementaire: Yellow Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:bell","label":"Contraste complementaire: Bell","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_hanging_sign","label":"Contraste complementaire: Birch Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_wall_hanging_sign","label":"Contraste complementaire: Birch Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_birch_log","label":"Contraste complementaire: Stripped Birch Log","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_birch_wood","label":"Contraste complementaire: Stripped Birch Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:birch_trapdoor","label":"Contraste complementaire: Birch Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:hay_block","label":"Contraste complementaire: Hay Block","confidence":0.949},{"type":"color_triad","target":"minecraft:sunflower","label":"Harmonie triadique: Sunflower","confidence":0.96},{"type":"color_triad","target":"minecraft:beetroots","label":"Harmonie triadique: Beetroots","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_tulip","label":"Harmonie triadique: Pink Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_pink_tulip","label":"Harmonie triadique: Potted Pink Tulip","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_white_tulip","label":"Harmonie triadique: Potted White Tulip","confidence":0.947},{"type":"color_triad","target":"minecraft:white_tulip","label":"Harmonie triadique: White Tulip","confidence":0.947},{"type":"color_triad","target":"minecraft:potted_crimson_roots","label":"Harmonie triadique: Potted Crimson Roots","confidence":0.939},{"type":"color_triad","target":"minecraft:crimson_roots","label":"Harmonie triadique: Crimson Roots","confidence":0.914},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.887},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.885},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.761},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.599},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.599},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.593},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.593},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.573},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_vein","label":"Contraste clair sombre: Sculk Vein","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:crying_obsidian","label":"Contraste clair sombre: Crying Obsidian","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55}],"category":"natural"},{"id":"minecraft:tuff","name":"Tuff","entry_type":"block","description":"Tuff is an ornamental rock, occurring in underground ore blobs below Y=0.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added tuff."},{"version":"1.20.3","status":"added","notes":"added behind the \" Update 1.21 \" experimental data pack ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb tuff, providing the football/regular effect to the mob."}],"colors":{"primary":"#6c6d67","dominant_hex":"#6c6c6c","average_hex":"#6c6d67","hue_group":"neutral","lightness":0.4157,"saturation":0.0283,"palette":["#6c6c6c","#5c5c54","#84847c","#4c5444","#a4a494"],"color_groups":[{"hex":"#6c6c6c","weight":0.2969,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c54","weight":0.2773,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#84847c","weight":0.2695,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"},{"hex":"#4c5444","weight":0.1211,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#a4a494","weight":0.0352,"lightness":0.6118,"saturation":0.0808,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tuff.png","family":"tuff","relations":[{"type":"variants","target":"minecraft:tuff_slab","label":"Same family: tuff","confidence":0.75},{"type":"related_sets","target":"minecraft:tuff_slab","label":"Related set: tuff","confidence":0.8},{"type":"variants","target":"minecraft:tuff_stairs","label":"Same family: tuff","confidence":0.75},{"type":"related_sets","target":"minecraft:tuff_stairs","label":"Related set: tuff","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_moss_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_moss_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tuff_slab","label":"Palette proche: Tuff Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_stairs","label":"Palette proche: Tuff Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_wall","label":"Palette proche: Tuff Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.927},{"type":"color_neighbors","target":"minecraft:coal_ore","label":"Palette proche: Coal Ore","confidence":0.905},{"type":"color_neighbors","target":"minecraft:light_gray_carpet","label":"Palette proche: Light Gray Carpet","confidence":0.89},{"type":"color_neighbors","target":"minecraft:light_gray_wool","label":"Palette proche: Light Gray Wool","confidence":0.89},{"type":"color_neighbors","target":"minecraft:light_gray_concrete","label":"Palette proche: Light Gray Concrete","confidence":0.883},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.878},{"type":"color_neighbors","target":"minecraft:light_gray_candle","label":"Palette proche: Light Gray Candle","confidence":0.877},{"type":"color_neighbors","target":"minecraft:mycelium","label":"Palette proche: Mycelium","confidence":0.868},{"type":"color_neighbors","target":"minecraft:moving_piston","label":"Palette proche: Moving Piston","confidence":0.864},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:coal_ore","label":"Pont de nuance par palette: Coal Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_concrete","label":"Pont de nuance par palette: Light Gray Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_candle","label":"Pont de nuance par palette: Light Gray Candle","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55}],"category":""},{"id":"minecraft:tuff_brick_slab","name":"Tuff Brick Slab","entry_type":"block","description":"A tuff brick slab is a decorative slab variant of tuff bricks that does not generate naturally and is commonly used for building.","history":[{"version":"1.20.3","status":"added","notes":"Added tuff brick slabs."}],"colors":{"primary":"#62675f","dominant_hex":"#434b3e","average_hex":"#62675f","hue_group":"neutral","lightness":0.3882,"saturation":0.0404,"palette":["#434b3e","#575f57","#86857d","#6c746c","#646c6c","#74746c"],"color_groups":[{"hex":"#434b3e","weight":0.2344,"lightness":0.2686,"saturation":0.0949,"hue_group":"neutral"},{"hex":"#575f57","weight":0.2266,"lightness":0.3569,"saturation":0.044,"hue_group":"neutral"},{"hex":"#86857d","weight":0.1719,"lightness":0.5078,"saturation":0.0359,"hue_group":"neutral"},{"hex":"#6c746c","weight":0.1367,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#646c6c","weight":0.1172,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#74746c","weight":0.1133,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tuff_bricks.png","family":"tuff_brick","relations":[{"type":"variants","target":"minecraft:tuff_brick_stairs","label":"Same family: tuff_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:tuff_brick_stairs","label":"Related set: tuff_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tuff_brick_stairs","label":"Palette proche: Tuff Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_wall","label":"Palette proche: Tuff Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_bricks","label":"Palette proche: Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Palette proche: Chiseled Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff","label":"Palette proche: Chiseled Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.869},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.867},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.843},{"type":"color_bridge","target":"minecraft:tuff_brick_stairs","label":"Pont de nuance par palette: Tuff Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_wall","label":"Pont de nuance par palette: Tuff Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_bricks","label":"Pont de nuance par palette: Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_stairs","label":"Pont de nuance par palette: Polished Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_wall","label":"Pont de nuance par palette: Polished Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.565},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:tuff_brick_stairs","name":"Tuff Brick Stairs","entry_type":"block","description":"Tuff brick stairs are a decorative stairs variant of tuff bricks that does not generate naturally and is used for building.","history":[{"version":"1.20.3","status":"added","notes":"Added tuff brick stairs."}],"colors":{"primary":"#62675f","dominant_hex":"#434b3e","average_hex":"#62675f","hue_group":"neutral","lightness":0.3882,"saturation":0.0404,"palette":["#434b3e","#575f57","#86857d","#6c746c","#646c6c","#74746c"],"color_groups":[{"hex":"#434b3e","weight":0.2344,"lightness":0.2686,"saturation":0.0949,"hue_group":"neutral"},{"hex":"#575f57","weight":0.2266,"lightness":0.3569,"saturation":0.044,"hue_group":"neutral"},{"hex":"#86857d","weight":0.1719,"lightness":0.5078,"saturation":0.0359,"hue_group":"neutral"},{"hex":"#6c746c","weight":0.1367,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#646c6c","weight":0.1172,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#74746c","weight":0.1133,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tuff_bricks.png","family":"tuff_brick","relations":[{"type":"variants","target":"minecraft:tuff_brick_slab","label":"Same family: tuff_brick","confidence":0.75},{"type":"related_sets","target":"minecraft:tuff_brick_slab","label":"Related set: tuff_brick","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_wall","label":"Palette proche: Tuff Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_bricks","label":"Palette proche: Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Palette proche: Chiseled Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff","label":"Palette proche: Chiseled Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.869},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.867},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.843},{"type":"color_bridge","target":"minecraft:tuff_brick_slab","label":"Pont de nuance par palette: Tuff Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_wall","label":"Pont de nuance par palette: Tuff Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_bricks","label":"Pont de nuance par palette: Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_stairs","label":"Pont de nuance par palette: Polished Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_wall","label":"Pont de nuance par palette: Polished Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.565},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:tuff_brick_wall","name":"Tuff Brick Wall","entry_type":"block","description":"A tuff brick wall is a decorative wall variant of tuff bricks that does not generate naturally and is used for building.","history":[{"version":"1.20.3","status":"added","notes":"Added tuff brick walls."}],"colors":{"primary":"#62675f","dominant_hex":"#434b3e","average_hex":"#62675f","hue_group":"neutral","lightness":0.3882,"saturation":0.0404,"palette":["#434b3e","#575f57","#86857d","#6c746c","#646c6c","#74746c"],"color_groups":[{"hex":"#434b3e","weight":0.2344,"lightness":0.2686,"saturation":0.0949,"hue_group":"neutral"},{"hex":"#575f57","weight":0.2266,"lightness":0.3569,"saturation":0.044,"hue_group":"neutral"},{"hex":"#86857d","weight":0.1719,"lightness":0.5078,"saturation":0.0359,"hue_group":"neutral"},{"hex":"#6c746c","weight":0.1367,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#646c6c","weight":0.1172,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#74746c","weight":0.1133,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tuff_bricks.png","family":"tuff_brick_wall","relations":[{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_stairs","label":"Palette proche: Tuff Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_bricks","label":"Palette proche: Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Palette proche: Chiseled Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff","label":"Palette proche: Chiseled Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.869},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.867},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.843},{"type":"color_bridge","target":"minecraft:tuff_brick_slab","label":"Pont de nuance par palette: Tuff Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_stairs","label":"Pont de nuance par palette: Tuff Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_bricks","label":"Pont de nuance par palette: Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_stairs","label":"Pont de nuance par palette: Polished Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_wall","label":"Pont de nuance par palette: Polished Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.565},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:tuff_bricks","name":"Tuff Bricks","entry_type":"block","description":"Tuff bricks are a brick variant of tuff found abundantly in trial chambers.","history":[{"version":"1.20.3","status":"added","notes":"Added tuff bricks behind the \" Update 1.21 \" experimental data pack ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb tuff bricks, providing the football/regular effect to the mob."}],"colors":{"primary":"#62675f","dominant_hex":"#434b3e","average_hex":"#62675f","hue_group":"neutral","lightness":0.3882,"saturation":0.0404,"palette":["#434b3e","#575f57","#86857d","#6c746c","#646c6c","#74746c"],"color_groups":[{"hex":"#434b3e","weight":0.2344,"lightness":0.2686,"saturation":0.0949,"hue_group":"neutral"},{"hex":"#575f57","weight":0.2266,"lightness":0.3569,"saturation":0.044,"hue_group":"neutral"},{"hex":"#86857d","weight":0.1719,"lightness":0.5078,"saturation":0.0359,"hue_group":"neutral"},{"hex":"#6c746c","weight":0.1367,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"},{"hex":"#646c6c","weight":0.1172,"lightness":0.4078,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#74746c","weight":0.1133,"lightness":0.4392,"saturation":0.0357,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tuff_bricks.png","family":"tuff_bricks","relations":[{"type":"visual_neighbors","target":"minecraft:tuff_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_closed_eyeblossom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_iron_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tuff_brick_slab","label":"Palette proche: Tuff Brick Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_stairs","label":"Palette proche: Tuff Brick Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_brick_wall","label":"Palette proche: Tuff Brick Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff_bricks","label":"Palette proche: Chiseled Tuff Bricks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_tuff","label":"Palette proche: Chiseled Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.869},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.867},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.843},{"type":"color_bridge","target":"minecraft:tuff_brick_slab","label":"Pont de nuance par palette: Tuff Brick Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_stairs","label":"Pont de nuance par palette: Tuff Brick Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_brick_wall","label":"Pont de nuance par palette: Tuff Brick Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_stairs","label":"Pont de nuance par palette: Polished Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_tuff_wall","label":"Pont de nuance par palette: Polished Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff_bricks","label":"Pont de nuance par palette: Chiseled Tuff Bricks","confidence":0.86},{"type":"color_bridge","target":"minecraft:chiseled_tuff","label":"Pont de nuance par palette: Chiseled Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.565},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_door","label":"Contraste clair sombre: Iron Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55}],"category":"building"},{"id":"minecraft:tuff_slab","name":"Tuff Slab","entry_type":"block","description":"A tuff slab is a decorative slab variant of tuff that does not generate naturally and is used for building.","history":[{"version":"1.20.3","status":"added","notes":"Added tuff slabs."}],"colors":{"primary":"#6c6d67","dominant_hex":"#6c6c6c","average_hex":"#6c6d67","hue_group":"neutral","lightness":0.4157,"saturation":0.0283,"palette":["#6c6c6c","#5c5c54","#84847c","#4c5444","#a4a494"],"color_groups":[{"hex":"#6c6c6c","weight":0.2969,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c54","weight":0.2773,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#84847c","weight":0.2695,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"},{"hex":"#4c5444","weight":0.1211,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#a4a494","weight":0.0352,"lightness":0.6118,"saturation":0.0808,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tuff.png","family":"tuff","relations":[{"type":"variants","target":"minecraft:tuff","label":"Same family: tuff","confidence":0.75},{"type":"related_sets","target":"minecraft:tuff","label":"Related set: tuff","confidence":0.8},{"type":"variants","target":"minecraft:tuff_stairs","label":"Same family: tuff","confidence":0.75},{"type":"related_sets","target":"minecraft:tuff_stairs","label":"Related set: tuff","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_moss_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_moss_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_stairs","label":"Palette proche: Tuff Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_wall","label":"Palette proche: Tuff Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.927},{"type":"color_neighbors","target":"minecraft:coal_ore","label":"Palette proche: Coal Ore","confidence":0.905},{"type":"color_neighbors","target":"minecraft:light_gray_carpet","label":"Palette proche: Light Gray Carpet","confidence":0.89},{"type":"color_neighbors","target":"minecraft:light_gray_wool","label":"Palette proche: Light Gray Wool","confidence":0.89},{"type":"color_neighbors","target":"minecraft:light_gray_concrete","label":"Palette proche: Light Gray Concrete","confidence":0.883},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.878},{"type":"color_neighbors","target":"minecraft:light_gray_candle","label":"Palette proche: Light Gray Candle","confidence":0.877},{"type":"color_neighbors","target":"minecraft:mycelium","label":"Palette proche: Mycelium","confidence":0.868},{"type":"color_neighbors","target":"minecraft:moving_piston","label":"Palette proche: Moving Piston","confidence":0.864},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:coal_ore","label":"Pont de nuance par palette: Coal Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_concrete","label":"Pont de nuance par palette: Light Gray Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_candle","label":"Pont de nuance par palette: Light Gray Candle","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55}],"category":"building"},{"id":"minecraft:tuff_stairs","name":"Tuff Stairs","entry_type":"block","description":"Tuff stairs are a decorative stairs variant of tuff used for building.","history":[{"version":"1.20.3","status":"added","notes":"Added tuff stairs."}],"colors":{"primary":"#6c6d67","dominant_hex":"#6c6c6c","average_hex":"#6c6d67","hue_group":"neutral","lightness":0.4157,"saturation":0.0283,"palette":["#6c6c6c","#5c5c54","#84847c","#4c5444","#a4a494"],"color_groups":[{"hex":"#6c6c6c","weight":0.2969,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c54","weight":0.2773,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#84847c","weight":0.2695,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"},{"hex":"#4c5444","weight":0.1211,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#a4a494","weight":0.0352,"lightness":0.6118,"saturation":0.0808,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tuff.png","family":"tuff","relations":[{"type":"variants","target":"minecraft:tuff","label":"Same family: tuff","confidence":0.75},{"type":"related_sets","target":"minecraft:tuff","label":"Related set: tuff","confidence":0.8},{"type":"variants","target":"minecraft:tuff_slab","label":"Same family: tuff","confidence":0.75},{"type":"related_sets","target":"minecraft:tuff_slab","label":"Related set: tuff","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_moss_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_moss_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_slab","label":"Palette proche: Tuff Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_wall","label":"Palette proche: Tuff Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.927},{"type":"color_neighbors","target":"minecraft:coal_ore","label":"Palette proche: Coal Ore","confidence":0.905},{"type":"color_neighbors","target":"minecraft:light_gray_carpet","label":"Palette proche: Light Gray Carpet","confidence":0.89},{"type":"color_neighbors","target":"minecraft:light_gray_wool","label":"Palette proche: Light Gray Wool","confidence":0.89},{"type":"color_neighbors","target":"minecraft:light_gray_concrete","label":"Palette proche: Light Gray Concrete","confidence":0.883},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.878},{"type":"color_neighbors","target":"minecraft:light_gray_candle","label":"Palette proche: Light Gray Candle","confidence":0.877},{"type":"color_neighbors","target":"minecraft:mycelium","label":"Palette proche: Mycelium","confidence":0.868},{"type":"color_neighbors","target":"minecraft:moving_piston","label":"Palette proche: Moving Piston","confidence":0.864},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_wall","label":"Pont de nuance par palette: Tuff Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:coal_ore","label":"Pont de nuance par palette: Coal Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_concrete","label":"Pont de nuance par palette: Light Gray Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_candle","label":"Pont de nuance par palette: Light Gray Candle","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55}],"category":"building"},{"id":"minecraft:tuff_wall","name":"Tuff Wall","entry_type":"block","description":"A tuff wall is a decorative wall variant of tuff that does not generate naturally and is used for building.","history":[{"version":"1.20.3","status":"added","notes":"Added tuff walls behind the Update 1.21 experimental data pack ."}],"colors":{"primary":"#6c6d67","dominant_hex":"#6c6c6c","average_hex":"#6c6d67","hue_group":"neutral","lightness":0.4157,"saturation":0.0283,"palette":["#6c6c6c","#5c5c54","#84847c","#4c5444","#a4a494"],"color_groups":[{"hex":"#6c6c6c","weight":0.2969,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c54","weight":0.2773,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#84847c","weight":0.2695,"lightness":0.502,"saturation":0.0315,"hue_group":"neutral"},{"hex":"#4c5444","weight":0.1211,"lightness":0.298,"saturation":0.1053,"hue_group":"neutral"},{"hex":"#a4a494","weight":0.0352,"lightness":0.6118,"saturation":0.0808,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/tuff.png","family":"tuff_wall","relations":[{"type":"visual_neighbors","target":"minecraft:tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_moss_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_moss_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_hanging_moss","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_tuff_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pale_oak_sapling","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:tuff","label":"Palette proche: Tuff","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_slab","label":"Palette proche: Tuff Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tuff_stairs","label":"Palette proche: Tuff Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_shulker_box","label":"Palette proche: Light Gray Shulker Box","confidence":0.927},{"type":"color_neighbors","target":"minecraft:coal_ore","label":"Palette proche: Coal Ore","confidence":0.905},{"type":"color_neighbors","target":"minecraft:light_gray_carpet","label":"Palette proche: Light Gray Carpet","confidence":0.89},{"type":"color_neighbors","target":"minecraft:light_gray_wool","label":"Palette proche: Light Gray Wool","confidence":0.89},{"type":"color_neighbors","target":"minecraft:light_gray_concrete","label":"Palette proche: Light Gray Concrete","confidence":0.883},{"type":"color_neighbors","target":"minecraft:pale_oak_leaves","label":"Palette proche: Pale Oak Leaves","confidence":0.878},{"type":"color_neighbors","target":"minecraft:light_gray_candle","label":"Palette proche: Light Gray Candle","confidence":0.877},{"type":"color_neighbors","target":"minecraft:mycelium","label":"Palette proche: Mycelium","confidence":0.868},{"type":"color_neighbors","target":"minecraft:moving_piston","label":"Palette proche: Moving Piston","confidence":0.864},{"type":"color_bridge","target":"minecraft:tuff","label":"Pont de nuance par palette: Tuff","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_slab","label":"Pont de nuance par palette: Tuff Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:tuff_stairs","label":"Pont de nuance par palette: Tuff Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:coal_ore","label":"Pont de nuance par palette: Coal Ore","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_concrete","label":"Pont de nuance par palette: Light Gray Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_leaves","label":"Pont de nuance par palette: Pale Oak Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_candle","label":"Pont de nuance par palette: Light Gray Candle","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_trapdoor","label":"Contraste clair sombre: Iron Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55}],"category":"building"},{"id":"minecraft:turtle_egg","name":"Turtle Egg","entry_type":"block","description":"A turtle egg is a block that can be placed up to four times within one block space that hatches turtles.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added turtle eggs."},{"version":"18w11a","status":"added","notes":"Added drowned , which like zombies and their variants, seek out and trample turtle eggs."}],"colors":{"primary":"#e4e3c0","dominant_hex":"#f4ebc3","average_hex":"#e4e3c0","hue_group":"yellow","lightness":0.8235,"saturation":0.4,"palette":["#f4ebc3","#f4f4dc","#f4ecce","#f4e4b7","#f4e4ac","#459780"],"color_groups":[{"hex":"#f4ebc3","weight":0.2556,"lightness":0.8608,"saturation":0.6901,"hue_group":"yellow"},{"hex":"#f4f4dc","weight":0.2481,"lightness":0.9098,"saturation":0.5217,"hue_group":"yellow"},{"hex":"#f4ecce","weight":0.1579,"lightness":0.8824,"saturation":0.6333,"hue_group":"yellow"},{"hex":"#f4e4b7","weight":0.1353,"lightness":0.8373,"saturation":0.7349,"hue_group":"yellow"},{"hex":"#f4e4ac","weight":0.1128,"lightness":0.8157,"saturation":0.766,"hue_group":"yellow"},{"hex":"#459780","weight":0.0902,"lightness":0.4314,"saturation":0.3727,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/turtle_egg.png","family":"turtle_egg","relations":[{"type":"visual_neighbors","target":"minecraft:birch_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_sand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sandstone_wall","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:ochre_froglight","label":"Palette proche: Ochre Froglight","confidence":0.733},{"type":"color_neighbors","target":"minecraft:candle","label":"Palette proche: Candle","confidence":0.715},{"type":"color_neighbors","target":"minecraft:birch_door","label":"Palette proche: Birch Door","confidence":0.7},{"type":"color_neighbors","target":"minecraft:end_portal_frame","label":"Palette proche: End Portal Frame","confidence":0.693},{"type":"color_neighbors","target":"minecraft:cut_sandstone_slab","label":"Palette proche: Cut Sandstone Slab","confidence":0.686},{"type":"color_neighbors","target":"minecraft:sandstone_slab","label":"Palette proche: Sandstone Slab","confidence":0.686},{"type":"color_neighbors","target":"minecraft:sandstone_stairs","label":"Palette proche: Sandstone Stairs","confidence":0.686},{"type":"color_neighbors","target":"minecraft:smooth_sandstone","label":"Palette proche: Smooth Sandstone","confidence":0.686},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_slab","label":"Palette proche: Smooth Sandstone Slab","confidence":0.686},{"type":"color_neighbors","target":"minecraft:smooth_sandstone_stairs","label":"Palette proche: Smooth Sandstone Stairs","confidence":0.686},{"type":"color_neighbors","target":"minecraft:sand","label":"Palette proche: Sand","confidence":0.681},{"type":"color_neighbors","target":"minecraft:cut_sandstone","label":"Palette proche: Cut Sandstone","confidence":0.673},{"type":"color_bridge","target":"minecraft:end_portal_frame","label":"Pont de nuance par sous-ton: End Portal Frame","confidence":0.747},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.711},{"type":"color_bridge","target":"minecraft:black_candle_cake","label":"Pont de nuance par palette: Black Candle Cake","confidence":0.683},{"type":"color_bridge","target":"minecraft:blue_candle_cake","label":"Pont de nuance par palette: Blue Candle Cake","confidence":0.683},{"type":"color_bridge","target":"minecraft:brown_candle_cake","label":"Pont de nuance par palette: Brown Candle Cake","confidence":0.683},{"type":"color_bridge","target":"minecraft:cake","label":"Pont de nuance par palette: Cake","confidence":0.683},{"type":"color_bridge","target":"minecraft:candle_cake","label":"Pont de nuance par palette: Candle Cake","confidence":0.683},{"type":"color_bridge","target":"minecraft:cyan_candle_cake","label":"Pont de nuance par palette: Cyan Candle Cake","confidence":0.683},{"type":"color_bridge","target":"minecraft:gray_candle_cake","label":"Pont de nuance par palette: Gray Candle Cake","confidence":0.683},{"type":"color_bridge","target":"minecraft:green_candle_cake","label":"Pont de nuance par palette: Green Candle Cake","confidence":0.683},{"type":"color_analogous","target":"minecraft:sponge","label":"Couleurs analogues: Sponge","confidence":0.935},{"type":"color_analogous","target":"minecraft:yellow_stained_glass","label":"Couleurs analogues: Yellow Stained Glass","confidence":0.908},{"type":"color_analogous","target":"minecraft:yellow_stained_glass_pane","label":"Couleurs analogues: Yellow Stained Glass Pane","confidence":0.904},{"type":"color_analogous","target":"minecraft:end_stone","label":"Couleurs analogues: End Stone","confidence":0.886},{"type":"color_analogous","target":"minecraft:acacia_sapling","label":"Couleurs analogues: Acacia Sapling","confidence":0.868},{"type":"color_analogous","target":"minecraft:potted_acacia_sapling","label":"Couleurs analogues: Potted Acacia Sapling","confidence":0.868},{"type":"color_analogous","target":"minecraft:bamboo_sapling","label":"Couleurs analogues: Bamboo Sapling","confidence":0.851},{"type":"color_analogous","target":"minecraft:horn_coral_block","label":"Couleurs analogues: Horn Coral Block","confidence":0.841},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.831},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.682},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.655},{"type":"color_triad","target":"minecraft:stripped_warped_hyphae","label":"Harmonie triadique: Stripped Warped Hyphae","confidence":0.96},{"type":"color_triad","target":"minecraft:stripped_warped_stem","label":"Harmonie triadique: Stripped Warped Stem","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_hanging_sign","label":"Harmonie triadique: Warped Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_wall_hanging_sign","label":"Harmonie triadique: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:powder_snow","label":"Harmonie triadique: Powder Snow","confidence":0.923},{"type":"color_triad","target":"minecraft:chorus_plant","label":"Harmonie triadique: Chorus Plant","confidence":0.923},{"type":"color_triad","target":"minecraft:beacon","label":"Harmonie triadique: Beacon","confidence":0.913},{"type":"color_triad","target":"minecraft:snow","label":"Harmonie triadique: Snow","confidence":0.911},{"type":"color_square","target":"minecraft:cherry_log","label":"Harmonie carree: Cherry Log","confidence":0.919},{"type":"color_square","target":"minecraft:cherry_wood","label":"Harmonie carree: Cherry Wood","confidence":0.919},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.9},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.848},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.842},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.838},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.838},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.829},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.701},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.671},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.668},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.668},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.658},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.658},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.648},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.648}],"category":""},{"id":"minecraft:turtle_helmet","name":"Turtle Helmet","entry_type":"item","description":"A turtle shell is a variant of helmet that is crafted from turtle scutes. It is the third-highest tier of helmet, having the same armor points as golden, copper, iron, and chainmail helmets but with higher durability. When equipped, it grants ten seconds of Water Breathing to a player who enters water. It is also a brewing ingredient for potions of the Turtle Master.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added turtle shells."},{"version":"26.1 snap7","status":"added","notes":"Added a specific texture and model for when the armor piece is worn by a humanoid baby mob."}],"colors":{"primary":"#266f32","dominant_hex":"#0c341c","average_hex":"#266f32","hue_group":"green","lightness":0.2922,"saturation":0.4899,"palette":["#0c341c","#1c5c34","#44bc4c","#3ca444","#34743c"],"color_groups":[{"hex":"#0c341c","weight":0.3088,"lightness":0.1255,"saturation":0.625,"hue_group":"green"},{"hex":"#1c5c34","weight":0.25,"lightness":0.2353,"saturation":0.5333,"hue_group":"green"},{"hex":"#44bc4c","weight":0.2059,"lightness":0.502,"saturation":0.4724,"hue_group":"green"},{"hex":"#3ca444","weight":0.1471,"lightness":0.4392,"saturation":0.4643,"hue_group":"green"},{"hex":"#34743c","weight":0.0882,"lightness":0.3294,"saturation":0.381,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/turtle_helmet.png","family":"turtle_armor","relations":[{"type":"related_sets","target":"group:armor","label":"Related set: armor","confidence":0.85},{"type":"related_sets","target":"group:turtle_armor","label":"Related set: turtle_armor","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:turtle_scute","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_axe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wheat_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:emerald","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_hoe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_horse_spawn_egg","label":"Shared hue group: green","confidence":0.55}],"category":"armor"},{"id":"minecraft:turtle_scute","name":"Turtle Scute","entry_type":"item","description":"Turtle scutes are items that baby turtles drop when they grow into adults. They can be used to craft turtle shells which can be used to brew the potion of the Turtle Master.","history":[{"version":"1.13 18w07a","status":"added","notes":"Added turtle shell pieces."}],"colors":{"primary":"#359444","dominant_hex":"#44bc4c","average_hex":"#359444","hue_group":"green","lightness":0.3941,"saturation":0.4726,"palette":["#44bc4c","#246c44","#3ca444","#2c7c4c","#3c8c3c"],"color_groups":[{"hex":"#44bc4c","weight":0.2812,"lightness":0.502,"saturation":0.4724,"hue_group":"green"},{"hex":"#246c44","weight":0.25,"lightness":0.2824,"saturation":0.5,"hue_group":"green"},{"hex":"#3ca444","weight":0.1875,"lightness":0.4392,"saturation":0.4643,"hue_group":"green"},{"hex":"#2c7c4c","weight":0.1406,"lightness":0.3294,"saturation":0.4762,"hue_group":"green"},{"hex":"#3c8c3c","weight":0.1406,"lightness":0.3922,"saturation":0.4,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/turtle_scute.png","family":"turtle_scute","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:creeper_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_helmet","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:emerald","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_axe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wheat_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55}],"category":"item"},{"id":"minecraft:turtle_spawn_egg","name":"Turtle Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#478041","dominant_hex":"#3ca244","average_hex":"#478041","hue_group":"green","lightness":0.3784,"saturation":0.3264,"palette":["#3ca244","#29522c","#989565","#33783b","#144424","#4cc44c"],"color_groups":[{"hex":"#3ca244","weight":0.2273,"lightness":0.4353,"saturation":0.4595,"hue_group":"green"},{"hex":"#29522c","weight":0.2143,"lightness":0.2412,"saturation":0.3333,"hue_group":"green"},{"hex":"#989565","weight":0.2078,"lightness":0.4961,"saturation":0.2016,"hue_group":"yellow"},{"hex":"#33783b","weight":0.1623,"lightness":0.3353,"saturation":0.4035,"hue_group":"green"},{"hex":"#144424","weight":0.1104,"lightness":0.1725,"saturation":0.5455,"hue_group":"green"},{"hex":"#4cc44c","weight":0.0779,"lightness":0.5333,"saturation":0.5042,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/turtle_spawn_egg.png","family":"turtle_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:creeper_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_axe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_scute","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_creator","label":"Shared hue group: green","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:twisting_vines","name":"Twisting Vines","entry_type":"block","description":"Twisting vines are climbable upward-growing vegetation blocks found in the Nether in warped forests.","history":[{"version":"1.16 20w11a","status":"added","notes":"Added twisting vines."}],"colors":{"primary":"#148f7c","dominant_hex":"#14b484","average_hex":"#148f7c","hue_group":"cyan","lightness":0.3196,"saturation":0.7546,"palette":["#14b484","#149c84","#147c84","#14645c"],"color_groups":[{"hex":"#14b484","weight":0.2958,"lightness":0.3922,"saturation":0.8,"hue_group":"cyan"},{"hex":"#149c84","weight":0.2535,"lightness":0.3451,"saturation":0.7727,"hue_group":"cyan"},{"hex":"#147c84","weight":0.2394,"lightness":0.298,"saturation":0.7368,"hue_group":"cyan"},{"hex":"#14645c","weight":0.2113,"lightness":0.2353,"saturation":0.6667,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/twisting_vines.png","family":"twisting_vines","relations":[{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines_plant","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_sprouts","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calibrated_sculk_sensor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sculk_sensor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_sprouts","label":"Palette proche: Nether Sprouts","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.891},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.891},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.856},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.855},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.849},{"type":"color_neighbors","target":"minecraft:warped_nylium","label":"Palette proche: Warped Nylium","confidence":0.838},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.776},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.723},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.723},{"type":"color_bridge","target":"minecraft:lapis_block","label":"Pont de nuance par palette: Lapis Block","confidence":0.608},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.597},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.597},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:potted_torchflower","label":"Pont de nuance par sous-ton: Potted Torchflower","confidence":0.58},{"type":"color_bridge","target":"minecraft:torchflower","label":"Pont de nuance par sous-ton: Torchflower","confidence":0.58},{"type":"color_analogous","target":"minecraft:nether_sprouts","label":"Couleurs analogues: Nether Sprouts","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_nylium","label":"Couleurs analogues: Warped Nylium","confidence":0.959},{"type":"color_analogous","target":"minecraft:potted_warped_roots","label":"Couleurs analogues: Potted Warped Roots","confidence":0.953},{"type":"color_analogous","target":"minecraft:twisting_vines_plant","label":"Couleurs analogues: Twisting Vines Plant","confidence":0.952},{"type":"color_analogous","target":"minecraft:warped_roots","label":"Couleurs analogues: Warped Roots","confidence":0.95},{"type":"color_analogous","target":"minecraft:warped_trapdoor","label":"Couleurs analogues: Warped Trapdoor","confidence":0.939},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.917},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.917},{"type":"color_complement","target":"minecraft:cactus_flower","label":"Contraste complementaire: Cactus Flower","confidence":0.96},{"type":"color_complement","target":"minecraft:chiseled_nether_bricks","label":"Contraste complementaire: Chiseled Nether Bricks","confidence":0.919},{"type":"color_complement","target":"minecraft:nether_brick_fence","label":"Contraste complementaire: Nether Brick Fence","confidence":0.903},{"type":"color_complement","target":"minecraft:nether_brick_slab","label":"Contraste complementaire: Nether Brick Slab","confidence":0.903},{"type":"color_complement","target":"minecraft:nether_brick_stairs","label":"Contraste complementaire: Nether Brick Stairs","confidence":0.903},{"type":"color_complement","target":"minecraft:nether_brick_wall","label":"Contraste complementaire: Nether Brick Wall","confidence":0.903},{"type":"color_complement","target":"minecraft:nether_bricks","label":"Contraste complementaire: Nether Bricks","confidence":0.903},{"type":"color_complement","target":"minecraft:enchanting_table","label":"Contraste complementaire: Enchanting Table","confidence":0.89},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:horn_coral_wall_fan","label":"Harmonie triadique: Horn Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_fence_gate","label":"Harmonie triadique: Bamboo Fence Gate","confidence":0.952},{"type":"color_triad","target":"minecraft:copper_torch","label":"Harmonie triadique: Copper Torch","confidence":0.947},{"type":"color_triad","target":"minecraft:copper_wall_torch","label":"Harmonie triadique: Copper Wall Torch","confidence":0.947},{"type":"color_triad","target":"minecraft:bamboo_shelf","label":"Harmonie triadique: Bamboo Shelf","confidence":0.938},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.936},{"type":"color_square","target":"minecraft:big_dripleaf_stem","label":"Harmonie carree: Big Dripleaf Stem","confidence":0.96},{"type":"color_square","target":"minecraft:small_dripleaf","label":"Harmonie carree: Small Dripleaf","confidence":0.96},{"type":"color_square","target":"minecraft:azalea_leaves","label":"Harmonie carree: Azalea Leaves","confidence":0.959},{"type":"color_square","target":"minecraft:green_stained_glass_pane","label":"Harmonie carree: Green Stained Glass Pane","confidence":0.955},{"type":"color_square","target":"minecraft:small_amethyst_bud","label":"Harmonie carree: Small Amethyst Bud","confidence":0.95},{"type":"color_square","target":"minecraft:big_dripleaf","label":"Harmonie carree: Big Dripleaf","confidence":0.946},{"type":"color_square","target":"minecraft:green_glazed_terracotta","label":"Harmonie carree: Green Glazed Terracotta","confidence":0.938},{"type":"color_square","target":"minecraft:green_stained_glass","label":"Harmonie carree: Green Stained Glass","confidence":0.932},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.628},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.628},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.619},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.597},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.564},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55}],"category":"natural"},{"id":"minecraft:twisting_vines_plant","name":"Twisting Vines Plant","entry_type":"block","description":"Twisting vines are climbable upward-growing vegetation blocks found in the Nether in warped forests.","history":[{"version":"1.16 20w11a","status":"added","notes":"Added twisting vines."}],"colors":{"primary":"#14887a","dominant_hex":"#149c84","average_hex":"#14887a","hue_group":"cyan","lightness":0.3059,"saturation":0.7436,"palette":["#149c84","#14645c","#147c84","#14b484"],"color_groups":[{"hex":"#149c84","weight":0.3,"lightness":0.3451,"saturation":0.7727,"hue_group":"cyan"},{"hex":"#14645c","weight":0.2667,"lightness":0.2353,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#147c84","weight":0.2667,"lightness":0.298,"saturation":0.7368,"hue_group":"cyan"},{"hex":"#14b484","weight":0.1667,"lightness":0.3922,"saturation":0.8,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/twisting_vines_plant.png","family":"twisting_vines_plant","relations":[{"type":"visual_neighbors","target":"minecraft:cyan_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_sprouts","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:twisting_vines","label":"Palette proche: Twisting Vines","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_sprouts","label":"Palette proche: Nether Sprouts","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.897},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.897},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.866},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.86},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.859},{"type":"color_neighbors","target":"minecraft:warped_nylium","label":"Palette proche: Warped Nylium","confidence":0.844},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.781},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.72},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.72},{"type":"color_bridge","target":"minecraft:lapis_block","label":"Pont de nuance par palette: Lapis Block","confidence":0.614},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.598},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.598},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.58},{"type":"color_analogous","target":"minecraft:warped_roots","label":"Couleurs analogues: Warped Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_warped_roots","label":"Couleurs analogues: Potted Warped Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_sprouts","label":"Couleurs analogues: Nether Sprouts","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_trapdoor","label":"Couleurs analogues: Warped Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_planks","label":"Couleurs analogues: Warped Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.935},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.926},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.926},{"type":"color_complement","target":"minecraft:cactus_flower","label":"Contraste complementaire: Cactus Flower","confidence":0.902},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.887},{"type":"color_complement","target":"minecraft:crimson_hyphae","label":"Contraste complementaire: Crimson Hyphae","confidence":0.86},{"type":"color_complement","target":"minecraft:crimson_stem","label":"Contraste complementaire: Crimson Stem","confidence":0.86},{"type":"color_complement","target":"minecraft:chiseled_nether_bricks","label":"Contraste complementaire: Chiseled Nether Bricks","confidence":0.853},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.946},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.946},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.912},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.905},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.901},{"type":"color_triad","target":"minecraft:horn_coral_wall_fan","label":"Harmonie triadique: Horn Coral Wall Fan","confidence":0.901},{"type":"color_triad","target":"minecraft:bamboo_fence_gate","label":"Harmonie triadique: Bamboo Fence Gate","confidence":0.875},{"type":"color_square","target":"minecraft:amethyst_block","label":"Harmonie carree: Amethyst Block","confidence":0.955},{"type":"color_square","target":"minecraft:oxeye_daisy","label":"Harmonie carree: Oxeye Daisy","confidence":0.943},{"type":"color_square","target":"minecraft:potted_oxeye_daisy","label":"Harmonie carree: Potted Oxeye Daisy","confidence":0.943},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.939},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.932},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.921},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.921},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.921},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.642},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.642},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.634},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.61},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.577},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.562},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.562},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.555}],"category":"natural"},{"id":"minecraft:vault","name":"Vault","entry_type":"block","description":"A vault is a block found in trial chambers that ejects loot when unlocked using a trial key. Each vault can be opened by an unlimited number of players, but each player can unlock a specific vault only once.","history":[{"version":"1.20.5","status":"added","notes":"Added vaults."}],"colors":{"primary":"#37464f","dominant_hex":"#32414c","average_hex":"#37464f","hue_group":"cyan","lightness":0.2627,"saturation":0.1791,"palette":["#32414c","#222c3c","#6c797a","#151b24","#44647c","#5c645c"],"color_groups":[{"hex":"#32414c","weight":0.2695,"lightness":0.2471,"saturation":0.2063,"hue_group":"cyan"},{"hex":"#222c3c","weight":0.2188,"lightness":0.1843,"saturation":0.2766,"hue_group":"blue"},{"hex":"#6c797a","weight":0.1602,"lightness":0.451,"saturation":0.0609,"hue_group":"neutral"},{"hex":"#151b24","weight":0.1523,"lightness":0.1118,"saturation":0.2632,"hue_group":"blue"},{"hex":"#44647c","weight":0.1094,"lightness":0.3765,"saturation":0.2917,"hue_group":"cyan"},{"hex":"#5c645c","weight":0.0898,"lightness":0.3765,"saturation":0.0417,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/vault_top.png","family":"vault","relations":[{"type":"visual_neighbors","target":"minecraft:trial_spawner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_diamond_ore","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:iron_chain","label":"Palette proche: Iron Chain","confidence":0.862},{"type":"color_neighbors","target":"minecraft:gray_candle","label":"Palette proche: Gray Candle","confidence":0.831},{"type":"color_neighbors","target":"minecraft:trial_spawner","label":"Palette proche: Trial Spawner","confidence":0.831},{"type":"color_neighbors","target":"minecraft:spawner","label":"Palette proche: Spawner","confidence":0.827},{"type":"color_neighbors","target":"minecraft:soul_lantern","label":"Palette proche: Soul Lantern","confidence":0.774},{"type":"color_neighbors","target":"minecraft:gray_carpet","label":"Palette proche: Gray Carpet","confidence":0.772},{"type":"color_neighbors","target":"minecraft:gray_wool","label":"Palette proche: Gray Wool","confidence":0.772},{"type":"color_neighbors","target":"minecraft:black_candle","label":"Palette proche: Black Candle","confidence":0.766},{"type":"color_neighbors","target":"minecraft:polished_tuff","label":"Palette proche: Polished Tuff","confidence":0.762},{"type":"color_neighbors","target":"minecraft:polished_tuff_slab","label":"Palette proche: Polished Tuff Slab","confidence":0.762},{"type":"color_neighbors","target":"minecraft:polished_tuff_stairs","label":"Palette proche: Polished Tuff Stairs","confidence":0.762},{"type":"color_neighbors","target":"minecraft:polished_tuff_wall","label":"Palette proche: Polished Tuff Wall","confidence":0.762},{"type":"color_bridge","target":"minecraft:iron_chain","label":"Pont de nuance par palette: Iron Chain","confidence":0.86},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:trial_spawner","label":"Pont de nuance par palette: Trial Spawner","confidence":0.86},{"type":"color_bridge","target":"minecraft:spawner","label":"Pont de nuance par sous-ton: Spawner","confidence":0.858},{"type":"color_bridge","target":"minecraft:soul_lantern","label":"Pont de nuance par sous-ton: Soul Lantern","confidence":0.814},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.812},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.812},{"type":"color_bridge","target":"minecraft:black_candle","label":"Pont de nuance par sous-ton: Black Candle","confidence":0.807},{"type":"color_bridge","target":"minecraft:polished_tuff","label":"Pont de nuance par palette: Polished Tuff","confidence":0.804},{"type":"color_bridge","target":"minecraft:polished_tuff_slab","label":"Pont de nuance par palette: Polished Tuff Slab","confidence":0.804},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.671},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.668},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.667},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.667},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.637},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.624},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.624},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.62}],"category":""},{"id":"minecraft:verdant_froglight","name":"Verdant Froglight","entry_type":"block","description":"A froglight is a light-emitting block that is obtained when a frog eats a tiny magma cube. It comes in three variants based on the variant of frog that eats the magma cube.","history":[{"version":"1.19 22w11a","status":"added","notes":"Added pearlescent, verdant, and ochre froglights."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb all 3 froglights, providing the golf ball/fast flat effect to the mob."}],"colors":{"primary":"#d3ebd0","dominant_hex":"#ecfcec","average_hex":"#d3ebd0","hue_group":"green","lightness":0.8686,"saturation":0.403,"palette":["#ecfcec","#fcfcfc","#d4ecd4","#bce4b4","#8eba7c","#a4d49c"],"color_groups":[{"hex":"#ecfcec","weight":0.2539,"lightness":0.9569,"saturation":0.7273,"hue_group":"green"},{"hex":"#fcfcfc","weight":0.2422,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d4ecd4","weight":0.1758,"lightness":0.8784,"saturation":0.3871,"hue_group":"green"},{"hex":"#bce4b4","weight":0.1211,"lightness":0.8,"saturation":0.4706,"hue_group":"green"},{"hex":"#8eba7c","weight":0.1133,"lightness":0.6078,"saturation":0.31,"hue_group":"green"},{"hex":"#a4d49c","weight":0.0938,"lightness":0.7216,"saturation":0.3944,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/verdant_froglight_side.png","family":"verdant_froglight","relations":[{"type":"visual_neighbors","target":"minecraft:test_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_propagule","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:test_block","label":"Palette proche: Test Block","confidence":0.74},{"type":"color_neighbors","target":"minecraft:white_stained_glass_pane","label":"Palette proche: White Stained Glass Pane","confidence":0.645},{"type":"color_neighbors","target":"minecraft:redstone_wire","label":"Palette proche: Redstone Wire","confidence":0.644},{"type":"color_neighbors","target":"minecraft:birch_log","label":"Palette proche: Birch Log","confidence":0.644},{"type":"color_neighbors","target":"minecraft:birch_wood","label":"Palette proche: Birch Wood","confidence":0.644},{"type":"color_neighbors","target":"minecraft:white_stained_glass","label":"Palette proche: White Stained Glass","confidence":0.637},{"type":"color_neighbors","target":"minecraft:white_candle","label":"Palette proche: White Candle","confidence":0.623},{"type":"color_neighbors","target":"minecraft:cobweb","label":"Palette proche: Cobweb","confidence":0.621},{"type":"color_neighbors","target":"minecraft:calcite","label":"Palette proche: Calcite","confidence":0.621},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.616},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.616},{"type":"color_neighbors","target":"minecraft:white_concrete_powder","label":"Palette proche: White Concrete Powder","confidence":0.606},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.707},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.707},{"type":"color_bridge","target":"minecraft:birch_log","label":"Pont de nuance par palette: Birch Log","confidence":0.707},{"type":"color_bridge","target":"minecraft:birch_wood","label":"Pont de nuance par palette: Birch Wood","confidence":0.707},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.701},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par palette: White Candle","confidence":0.69},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par palette: Cobweb","confidence":0.688},{"type":"color_bridge","target":"minecraft:calcite","label":"Pont de nuance par palette: Calcite","confidence":0.688},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.684},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.684},{"type":"color_analogous","target":"minecraft:mangrove_propagule","label":"Couleurs analogues: Mangrove Propagule","confidence":0.9},{"type":"color_analogous","target":"minecraft:carrots","label":"Couleurs analogues: Carrots","confidence":0.832},{"type":"color_analogous","target":"minecraft:test_block","label":"Couleurs analogues: Test Block","confidence":0.825},{"type":"color_analogous","target":"minecraft:slime_block","label":"Couleurs analogues: Slime Block","confidence":0.819},{"type":"color_analogous","target":"minecraft:potatoes","label":"Couleurs analogues: Potatoes","confidence":0.772},{"type":"color_analogous","target":"minecraft:potted_white_tulip","label":"Couleurs analogues: Potted White Tulip","confidence":0.741},{"type":"color_analogous","target":"minecraft:white_tulip","label":"Couleurs analogues: White Tulip","confidence":0.741},{"type":"color_analogous","target":"minecraft:pink_tulip","label":"Couleurs analogues: Pink Tulip","confidence":0.712},{"type":"color_complement","target":"minecraft:chorus_plant","label":"Contraste complementaire: Chorus Plant","confidence":0.762},{"type":"color_complement","target":"minecraft:bubble_coral_fan","label":"Contraste complementaire: Bubble Coral Fan","confidence":0.737},{"type":"color_complement","target":"minecraft:bubble_coral_wall_fan","label":"Contraste complementaire: Bubble Coral Wall Fan","confidence":0.737},{"type":"color_complement","target":"minecraft:bubble_coral","label":"Contraste complementaire: Bubble Coral","confidence":0.729},{"type":"color_complement","target":"minecraft:bubble_coral_block","label":"Contraste complementaire: Bubble Coral Block","confidence":0.702},{"type":"color_complement","target":"minecraft:magenta_stained_glass","label":"Contraste complementaire: Magenta Stained Glass","confidence":0.655},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.64},{"type":"color_complement","target":"minecraft:magenta_concrete_powder","label":"Contraste complementaire: Magenta Concrete Powder","confidence":0.625},{"type":"color_triad","target":"minecraft:fire_coral_block","label":"Harmonie triadique: Fire Coral Block","confidence":0.939},{"type":"color_triad","target":"minecraft:fire_coral_fan","label":"Harmonie triadique: Fire Coral Fan","confidence":0.929},{"type":"color_triad","target":"minecraft:fire_coral_wall_fan","label":"Harmonie triadique: Fire Coral Wall Fan","confidence":0.929},{"type":"color_triad","target":"minecraft:cactus_flower","label":"Harmonie triadique: Cactus Flower","confidence":0.886},{"type":"color_triad","target":"minecraft:fire_coral","label":"Harmonie triadique: Fire Coral","confidence":0.886},{"type":"color_triad","target":"minecraft:cherry_hanging_sign","label":"Harmonie triadique: Cherry Hanging Sign","confidence":0.87},{"type":"color_triad","target":"minecraft:cherry_wall_hanging_sign","label":"Harmonie triadique: Cherry Wall Hanging Sign","confidence":0.87},{"type":"color_triad","target":"minecraft:stripped_cherry_log","label":"Harmonie triadique: Stripped Cherry Log","confidence":0.87},{"type":"color_square","target":"minecraft:command_block","label":"Harmonie carree: Command Block","confidence":0.96},{"type":"color_square","target":"minecraft:light_blue_glazed_terracotta","label":"Harmonie carree: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:copper_lantern","label":"Harmonie carree: Copper Lantern","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_lantern","label":"Harmonie carree: Waxed Copper Lantern","confidence":0.96},{"type":"color_square","target":"minecraft:exposed_copper","label":"Harmonie carree: Exposed Copper","confidence":0.96},{"type":"color_square","target":"minecraft:exposed_copper_chest","label":"Harmonie carree: Exposed Copper Chest","confidence":0.96},{"type":"color_square","target":"minecraft:exposed_copper_golem_statue","label":"Harmonie carree: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_exposed_copper","label":"Harmonie carree: Waxed Exposed Copper","confidence":0.96},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.736},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.709},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.709},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.706},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.702},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.694},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.693},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.679}],"category":""},{"id":"minecraft:vex","name":"Vex","entry_type":"mob","description":"A vex is a small flying hostile mob that wields an iron sword and is summoned by evokers. It attacks by lunging at its target with its sword and is capable of phasing through walls.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added vexes."}],"colors":{"primary":"#869cb2","dominant_hex":"#657c93","average_hex":"#869cb2","hue_group":"blue","lightness":0.6118,"saturation":0.2222,"palette":["#657c93","#9ab2ca","#8094ac","#7c8ca4","#849cb4","#e8f1f7"],"color_groups":[{"hex":"#657c93","weight":0.2974,"lightness":0.4863,"saturation":0.1855,"hue_group":"blue"},{"hex":"#9ab2ca","weight":0.2245,"lightness":0.698,"saturation":0.3117,"hue_group":"blue"},{"hex":"#8094ac","weight":0.1953,"lightness":0.5882,"saturation":0.2095,"hue_group":"blue"},{"hex":"#7c8ca4","weight":0.0962,"lightness":0.5647,"saturation":0.1802,"hue_group":"blue"},{"hex":"#849cb4","weight":0.0962,"lightness":0.6118,"saturation":0.2424,"hue_group":"blue"},{"hex":"#e8f1f7","weight":0.0904,"lightness":0.9392,"saturation":0.4839,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/illager/vex.png","family":"vex","relations":[{"type":"visual_neighbors","target":"minecraft:breeze","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_invulnerable","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/all_black","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/cyan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_wind","label":"Shared hue group: blue","confidence":0.55}],"category":"mob"},{"id":"minecraft:vex_armor_trim_smithing_template","name":"Vex Armor Trim Smithing Template","entry_type":"item","description":"Vex armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, cobblestone, and diamonds.","history":[{"version":"1.19.4","status":"added","notes":"Added the vex armor trim smithing template behind the \"Update 1.20\" experimental data pack."}],"colors":{"primary":"#4f6161","dominant_hex":"#77776e","average_hex":"#4f6161","hue_group":"neutral","lightness":0.3451,"saturation":0.1023,"palette":["#77776e","#545c54","#4c444c","#43c2ce","#241c24","#34343c"],"color_groups":[{"hex":"#77776e","weight":0.2545,"lightness":0.449,"saturation":0.0393,"hue_group":"neutral"},{"hex":"#545c54","weight":0.2,"lightness":0.3451,"saturation":0.0455,"hue_group":"neutral"},{"hex":"#4c444c","weight":0.1515,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#43c2ce","weight":0.1455,"lightness":0.5353,"saturation":0.5865,"hue_group":"cyan"},{"hex":"#241c24","weight":0.1273,"lightness":0.1255,"saturation":0.125,"hue_group":"purple"},{"hex":"#34343c","weight":0.1212,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/vex_armor_trim_smithing_template.png","family":"vex_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cyan_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wayfinder_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ominous_trial_key","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_axe","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ink_sac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:vex_charging","name":"Vex Charging","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#9a8ca2","dominant_hex":"#bf546f","average_hex":"#9a8ca2","hue_group":"neutral","lightness":0.5922,"saturation":0.1058,"palette":["#bf546f","#8296ae","#647c93","#a3b0c8","#e8f1f6","#7c8ca4"],"color_groups":[{"hex":"#bf546f","weight":0.2595,"lightness":0.5392,"saturation":0.4553,"hue_group":"red"},{"hex":"#8296ae","weight":0.207,"lightness":0.5961,"saturation":0.2136,"hue_group":"blue"},{"hex":"#647c93","weight":0.1924,"lightness":0.4843,"saturation":0.1903,"hue_group":"cyan"},{"hex":"#a3b0c8","weight":0.172,"lightness":0.7118,"saturation":0.2517,"hue_group":"blue"},{"hex":"#e8f1f6","weight":0.0904,"lightness":0.9373,"saturation":0.4375,"hue_group":"cyan"},{"hex":"#7c8ca4","weight":0.0787,"lightness":0.5647,"saturation":0.1802,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/illager/vex_charging.png","family":"vex_charging","relations":[{"type":"visual_neighbors","target":"minecraft:elder_guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/warm","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/salt","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/brown","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/british_shorthair","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chicken/cold","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:panda/aggressive","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_angry","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:vex_spawn_egg","name":"Vex Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#768a9d","dominant_hex":"#8fa7bf","average_hex":"#768a9d","hue_group":"cyan","lightness":0.5392,"saturation":0.166,"palette":["#8fa7bf","#3d4d61","#d2e4f0","#546c84","#647484","#6c849c"],"color_groups":[{"hex":"#8fa7bf","weight":0.2365,"lightness":0.6549,"saturation":0.2727,"hue_group":"blue"},{"hex":"#3d4d61","weight":0.2095,"lightness":0.3098,"saturation":0.2278,"hue_group":"blue"},{"hex":"#d2e4f0","weight":0.1554,"lightness":0.8824,"saturation":0.5,"hue_group":"cyan"},{"hex":"#546c84","weight":0.1419,"lightness":0.4235,"saturation":0.2222,"hue_group":"blue"},{"hex":"#647484","weight":0.1351,"lightness":0.4549,"saturation":0.1379,"hue_group":"blue"},{"hex":"#6c849c","weight":0.1216,"lightness":0.5176,"saturation":0.1951,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/vex_spawn_egg.png","family":"vex_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:ghast_tear","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_shard","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_crystals","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tide_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ward_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:recovery_compass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_nautilus_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_horse_armor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silence_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:villager","name":"Villager","entry_type":"mob","description":"Villagers are humanoid passive mobs that inhabit villages, work at their professions (see Villager professions), breed, and interact with each other. Their outfit varies according to their occupation and biome, and a player can trade with them using emeralds as currency, with their prices affected by reputation.","history":[{"version":"1.0.0","status":"added","notes":"Added villagers."},{"version":"2011, but in the beginning they we","status":"added","notes":"added them in 2011, but in the beginning they were completely useless - you couldn't trade with them, they didn't have any sound effects or anything. Their only purpose was to live in the villages. We discussed a lot abo"},{"version":"1.1 11w49a","status":"added","notes":"Added the villager spawn egg to Creative mode. However, only farmer villagers are spawned."}],"colors":{"primary":"#977362","dominant_hex":"#bc8c6d","average_hex":"#977362","hue_group":"red","lightness":0.4882,"saturation":0.2129,"palette":["#bc8c6d","#ac745b","#5d5d5d","#b28475","#706f6e","#433328"],"color_groups":[{"hex":"#bc8c6d","weight":0.315,"lightness":0.5824,"saturation":0.3709,"hue_group":"red"},{"hex":"#ac745b","weight":0.1728,"lightness":0.5157,"saturation":0.3279,"hue_group":"red"},{"hex":"#5d5d5d","weight":0.1592,"lightness":0.3647,"saturation":0.0,"hue_group":"neutral"},{"hex":"#b28475","weight":0.1558,"lightness":0.5784,"saturation":0.2837,"hue_group":"red"},{"hex":"#706f6e","weight":0.1159,"lightness":0.4353,"saturation":0.009,"hue_group":"neutral"},{"hex":"#433328","weight":0.0813,"lightness":0.2098,"saturation":0.2523,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/villager/villager.png","family":"villager","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:villager_spawn_egg","name":"Villager Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#7a5141","dominant_hex":"#673d2f","average_hex":"#7a5141","hue_group":"red","lightness":0.3667,"saturation":0.3048,"palette":["#673d2f","#c29070","#7a4c39","#94624a","#46362e","#342c2c"],"color_groups":[{"hex":"#673d2f","weight":0.2463,"lightness":0.2941,"saturation":0.3733,"hue_group":"red"},{"hex":"#c29070","weight":0.194,"lightness":0.6,"saturation":0.402,"hue_group":"red"},{"hex":"#7a4c39","weight":0.1716,"lightness":0.351,"saturation":0.3631,"hue_group":"red"},{"hex":"#94624a","weight":0.1567,"lightness":0.4353,"saturation":0.3333,"hue_group":"red"},{"hex":"#46362e","weight":0.1418,"lightness":0.2275,"saturation":0.2069,"hue_group":"red"},{"hex":"#342c2c","weight":0.0896,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/villager_spawn_egg.png","family":"villager_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:strider_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_key","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_horse_armor","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:vindicator","name":"Vindicator","entry_type":"mob","description":"A vindicator is an illager equipped with an iron axe. Vindicators spawn in woodland mansions and participate in raids. They sprint toward their targets to attack them with their axe.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added vindicators."}],"colors":{"primary":"#4f4f4f","dominant_hex":"#3c3935","average_hex":"#4f4f4f","hue_group":"neutral","lightness":0.3098,"saturation":0.0,"palette":["#3c3935","#909797","#261c1c","#3f2b2c","#294f52","#6e7070"],"color_groups":[{"hex":"#3c3935","weight":0.3552,"lightness":0.2216,"saturation":0.0619,"hue_group":"neutral"},{"hex":"#909797","weight":0.2432,"lightness":0.5784,"saturation":0.0326,"hue_group":"neutral"},{"hex":"#261c1c","weight":0.1301,"lightness":0.1294,"saturation":0.1515,"hue_group":"red"},{"hex":"#3f2b2c","weight":0.1164,"lightness":0.2078,"saturation":0.1887,"hue_group":"red"},{"hex":"#294f52","weight":0.093,"lightness":0.2412,"saturation":0.3333,"hue_group":"cyan"},{"hex":"#6e7070","weight":0.0621,"lightness":0.4353,"saturation":0.009,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/illager/vindicator.png","family":"vindicator","relations":[{"type":"visual_neighbors","target":"minecraft:horse/gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_fangs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:vindicator_spawn_egg","name":"Vindicator Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#515858","dominant_hex":"#4b5152","average_hex":"#515858","hue_group":"neutral","lightness":0.3314,"saturation":0.0414,"palette":["#4b5152","#343936","#162727","#757c7c","#969d9d","#acb4b4"],"color_groups":[{"hex":"#4b5152","weight":0.2687,"lightness":0.3078,"saturation":0.0446,"hue_group":"neutral"},{"hex":"#343936","weight":0.2612,"lightness":0.2137,"saturation":0.0459,"hue_group":"neutral"},{"hex":"#162727","weight":0.1493,"lightness":0.1196,"saturation":0.2787,"hue_group":"cyan"},{"hex":"#757c7c","weight":0.1418,"lightness":0.4725,"saturation":0.029,"hue_group":"neutral"},{"hex":"#969d9d","weight":0.1194,"lightness":0.602,"saturation":0.0345,"hue_group":"neutral"},{"hex":"#acb4b4","weight":0.0597,"lightness":0.6902,"saturation":0.0506,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/vindicator_spawn_egg.png","family":"vindicator_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:ravager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_sword","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:compass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:furnace_minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_horn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_horse_armor","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:vine","name":"Vine","entry_type":"block","description":"Vines are climbable non-solid vegetation blocks that grow on walls.","history":[{"version":"1.8","status":"added","notes":"Added vines."},{"version":"1.8 14w02a","status":"added","notes":"Added a crafting recipe for mossy stone bricks (uses 1 vine and 1 stone brick.)"},{"version":"1 vine and 1 cobblestone.)","status":"added","notes":"Added a crafting recipe for mossy cobblestone (uses 1 vine and 1 cobblestone.)"}],"colors":{"primary":"#747474","dominant_hex":"#848484","average_hex":"#747474","hue_group":"neutral","lightness":0.4549,"saturation":0.0,"palette":["#848484","#545454","#6c6c6c","#acacac"],"color_groups":[{"hex":"#848484","weight":0.3014,"lightness":0.5176,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545454","weight":0.2945,"lightness":0.3294,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6c6c6c","weight":0.2671,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.137,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/vine.png","family":"vine","relations":[{"type":"visual_neighbors","target":"minecraft:cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_cracked_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_chiseled_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bush","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:infested_stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_brick_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_bricks","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:furnace","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lodestone","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:large_fern","label":"Palette proche: Large Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:fern","label":"Palette proche: Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_fern","label":"Palette proche: Potted Fern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:mangrove_leaves","label":"Palette proche: Mangrove Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:bush","label":"Palette proche: Bush","confidence":0.94},{"type":"color_neighbors","target":"minecraft:furnace","label":"Palette proche: Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:tripwire","label":"Palette proche: Tripwire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lily_pad","label":"Palette proche: Lily Pad","confidence":0.94},{"type":"color_neighbors","target":"minecraft:acacia_leaves","label":"Palette proche: Acacia Leaves","confidence":0.94},{"type":"color_neighbors","target":"minecraft:attached_pumpkin_stem","label":"Palette proche: Attached Pumpkin Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dispenser","label":"Palette proche: Dispenser","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_bridge","target":"minecraft:large_fern","label":"Pont de nuance par palette: Large Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:fern","label":"Pont de nuance par palette: Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:potted_fern","label":"Pont de nuance par palette: Potted Fern","confidence":0.86},{"type":"color_bridge","target":"minecraft:mangrove_leaves","label":"Pont de nuance par palette: Mangrove Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:bush","label":"Pont de nuance par palette: Bush","confidence":0.86},{"type":"color_bridge","target":"minecraft:furnace","label":"Pont de nuance par palette: Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:tripwire","label":"Pont de nuance par palette: Tripwire","confidence":0.86},{"type":"color_bridge","target":"minecraft:lily_pad","label":"Pont de nuance par palette: Lily Pad","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_leaves","label":"Pont de nuance par palette: Acacia Leaves","confidence":0.86},{"type":"color_bridge","target":"minecraft:attached_pumpkin_stem","label":"Pont de nuance par palette: Attached Pumpkin Stem","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:heavy_weighted_pressure_plate","label":"Contraste clair sombre: Heavy Weighted Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:iron_block","label":"Contraste clair sombre: Iron Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_door","label":"Contraste clair sombre: Pale Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_shelf","label":"Contraste clair sombre: Pale Oak Shelf","confidence":0.55}],"category":"natural"},{"id":"minecraft:void_air","name":"Void Air","entry_type":"block","description":"Air is an invisible block used to define unoccupied space where other blocks and items could exist; it represents the absence of a block or an item. It is one of the few blocks in the game that players cannot normally interact with. Cave air\u200c[Java Edition only] is a variant found only underground in carver caves and some generated structures along with features like lava lakes. Void air\u200c[Java Edition only] is a variant used internally for the 'air' in unloaded chunks and outside of the world height limits (above Y=319 and below Y=-64 in the Overworld, and above Y=255 and below Y=0 in the Nether and the End dimensions).","history":[{"version":"Cave game tech test","status":"added","notes":"Added air, which is any space devoid of blocks."}],"colors":{"primary":"#20557c","dominant_hex":"#040404","average_hex":"#20557c","hue_group":"cyan","lightness":0.3059,"saturation":0.5897,"palette":["#040404","#0494fc","#54bcfc","#d4ecfc"],"color_groups":[{"hex":"#040404","weight":0.5128,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#0494fc","weight":0.2308,"lightness":0.502,"saturation":0.9764,"hue_group":"cyan"},{"hex":"#54bcfc","weight":0.1795,"lightness":0.6588,"saturation":0.9655,"hue_group":"cyan"},{"hex":"#d4ecfc","weight":0.0769,"lightness":0.9098,"saturation":0.8696,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/gui/sprites/hud/air.png","family":"void_air","relations":[{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:structure_void","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_crop","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete_powder","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:air","label":"Palette proche: Air","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cave_air","label":"Palette proche: Cave Air","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle","label":"Palette proche: Light Blue Candle","confidence":0.58},{"type":"color_neighbors","target":"minecraft:deepslate_lapis_ore","label":"Palette proche: Deepslate Lapis Ore","confidence":0.58},{"type":"color_neighbors","target":"minecraft:lapis_ore","label":"Palette proche: Lapis Ore","confidence":0.58},{"type":"color_neighbors","target":"minecraft:diamond_ore","label":"Palette proche: Diamond Ore","confidence":0.58},{"type":"color_neighbors","target":"minecraft:heavy_core","label":"Palette proche: Heavy Core","confidence":0.58},{"type":"color_neighbors","target":"minecraft:deepslate_diamond_ore","label":"Palette proche: Deepslate Diamond Ore","confidence":0.58},{"type":"color_neighbors","target":"minecraft:chiseled_deepslate","label":"Palette proche: Chiseled Deepslate","confidence":0.58},{"type":"color_neighbors","target":"minecraft:jigsaw","label":"Palette proche: Jigsaw","confidence":0.58},{"type":"color_neighbors","target":"minecraft:reinforced_deepslate","label":"Palette proche: Reinforced Deepslate","confidence":0.58},{"type":"color_neighbors","target":"minecraft:structure_block","label":"Palette proche: Structure Block","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_lapis_ore","label":"Pont de nuance par sous-ton: Deepslate Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:lapis_ore","label":"Pont de nuance par sous-ton: Lapis Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:diamond_ore","label":"Pont de nuance par sous-ton: Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:heavy_core","label":"Pont de nuance par sous-ton: Heavy Core","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_diamond_ore","label":"Pont de nuance par sous-ton: Deepslate Diamond Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:soul_torch","label":"Pont de nuance par sous-ton: Soul Torch","confidence":0.58},{"type":"color_bridge","target":"minecraft:soul_wall_torch","label":"Pont de nuance par sous-ton: Soul Wall Torch","confidence":0.58},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.58},{"type":"color_bridge","target":"minecraft:black_concrete_powder","label":"Pont de nuance par sous-ton: Black Concrete Powder","confidence":0.58},{"type":"color_bridge","target":"minecraft:black_shulker_box","label":"Pont de nuance par sous-ton: Black Shulker Box","confidence":0.58},{"type":"color_analogous","target":"minecraft:air","label":"Couleurs analogues: Air","confidence":0.96},{"type":"color_analogous","target":"minecraft:cave_air","label":"Couleurs analogues: Cave Air","confidence":0.96},{"type":"color_analogous","target":"minecraft:cornflower","label":"Couleurs analogues: Cornflower","confidence":0.924},{"type":"color_analogous","target":"minecraft:potted_cornflower","label":"Couleurs analogues: Potted Cornflower","confidence":0.924},{"type":"color_analogous","target":"minecraft:soul_lantern","label":"Couleurs analogues: Soul Lantern","confidence":0.919},{"type":"color_analogous","target":"minecraft:light_blue_concrete","label":"Couleurs analogues: Light Blue Concrete","confidence":0.911},{"type":"color_analogous","target":"minecraft:light_blue_candle","label":"Couleurs analogues: Light Blue Candle","confidence":0.891},{"type":"color_analogous","target":"minecraft:light_blue_glazed_terracotta","label":"Couleurs analogues: Light Blue Glazed Terracotta","confidence":0.891},{"type":"color_complement","target":"minecraft:brown_carpet","label":"Contraste complementaire: Brown Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_wool","label":"Contraste complementaire: Brown Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_shulker_box","label":"Contraste complementaire: Brown Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_concrete","label":"Contraste complementaire: Brown Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:brown_concrete_powder","label":"Contraste complementaire: Brown Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:resin_clump","label":"Contraste complementaire: Resin Clump","confidence":0.96},{"type":"color_complement","target":"minecraft:jungle_button","label":"Contraste complementaire: Jungle Button","confidence":0.96},{"type":"color_complement","target":"minecraft:jungle_fence","label":"Contraste complementaire: Jungle Fence","confidence":0.96},{"type":"color_triad","target":"minecraft:lime_concrete_powder","label":"Harmonie triadique: Lime Concrete Powder","confidence":0.96},{"type":"color_triad","target":"minecraft:lime_stained_glass_pane","label":"Harmonie triadique: Lime Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:lime_stained_glass","label":"Harmonie triadique: Lime Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_fan","label":"Harmonie triadique: Brain Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_wall_fan","label":"Harmonie triadique: Brain Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:brain_coral_block","label":"Harmonie triadique: Brain Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:spore_blossom","label":"Harmonie triadique: Spore Blossom","confidence":0.96},{"type":"color_triad","target":"minecraft:pink_petals","label":"Harmonie triadique: Pink Petals","confidence":0.96},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.898},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.842},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.785},{"type":"color_square","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie carree: Bubble Coral Wall Fan","confidence":0.785},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.782},{"type":"color_square","target":"minecraft:bubble_coral","label":"Harmonie carree: Bubble Coral","confidence":0.779},{"type":"color_square","target":"minecraft:bubble_coral_block","label":"Harmonie carree: Bubble Coral Block","confidence":0.745},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.632},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.632},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.631},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.618},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.584},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.57},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.57},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.562}],"category":""},{"id":"minecraft:wall_torch","name":"Wall Torch","entry_type":"block","description":"Torches are non-solid blocks that emit light.","history":[{"version":"0.31 20091223-1457","status":"added","notes":"Added torches."},{"version":"20100104-2154","status":"added","notes":"Added torches to the hotbar ."}],"colors":{"primary":"#8b7140","dominant_hex":"#463923","average_hex":"#8b7140","hue_group":"yellow","lightness":0.398,"saturation":0.3695,"palette":["#463923","#99794f","#6c5434","#fcb404","#fcfcc8"],"color_groups":[{"hex":"#463923","weight":0.35,"lightness":0.2059,"saturation":0.3333,"hue_group":"yellow"},{"hex":"#99794f","weight":0.3,"lightness":0.4549,"saturation":0.319,"hue_group":"yellow"},{"hex":"#6c5434","weight":0.15,"lightness":0.3137,"saturation":0.35,"hue_group":"yellow"},{"hex":"#fcb404","weight":0.1,"lightness":0.502,"saturation":0.9764,"hue_group":"yellow"},{"hex":"#fcfcc8","weight":0.1,"lightness":0.8863,"saturation":0.8966,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/torch.png","family":"wall_torch","relations":[{"type":"visual_neighbors","target":"minecraft:torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cocoa","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sniffer_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dirt_path","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_trapdoor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ladder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:torch","label":"Palette proche: Torch","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lever","label":"Palette proche: Lever","confidence":0.859},{"type":"color_neighbors","target":"minecraft:oak_trapdoor","label":"Palette proche: Oak Trapdoor","confidence":0.859},{"type":"color_neighbors","target":"minecraft:oak_log","label":"Palette proche: Oak Log","confidence":0.855},{"type":"color_neighbors","target":"minecraft:oak_wood","label":"Palette proche: Oak Wood","confidence":0.855},{"type":"color_neighbors","target":"minecraft:copper_torch","label":"Palette proche: Copper Torch","confidence":0.839},{"type":"color_neighbors","target":"minecraft:copper_wall_torch","label":"Palette proche: Copper Wall Torch","confidence":0.839},{"type":"color_neighbors","target":"minecraft:oak_door","label":"Palette proche: Oak Door","confidence":0.823},{"type":"color_neighbors","target":"minecraft:spruce_door","label":"Palette proche: Spruce Door","confidence":0.821},{"type":"color_neighbors","target":"minecraft:spruce_trapdoor","label":"Palette proche: Spruce Trapdoor","confidence":0.818},{"type":"color_neighbors","target":"minecraft:redstone_wall_torch","label":"Palette proche: Redstone Wall Torch","confidence":0.817},{"type":"color_neighbors","target":"minecraft:barrel","label":"Palette proche: Barrel","confidence":0.817},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.809},{"type":"color_bridge","target":"minecraft:soul_torch","label":"Pont de nuance par sous-ton: Soul Torch","confidence":0.808},{"type":"color_bridge","target":"minecraft:soul_wall_torch","label":"Pont de nuance par sous-ton: Soul Wall Torch","confidence":0.808},{"type":"color_bridge","target":"minecraft:daylight_detector","label":"Pont de nuance par sous-ton: Daylight Detector","confidence":0.801},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.798},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.794},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.794},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.777},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.777},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.767},{"type":"color_analogous","target":"minecraft:torch","label":"Couleurs analogues: Torch","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_terracotta","label":"Couleurs analogues: Yellow Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:oak_hanging_sign","label":"Couleurs analogues: Oak Hanging Sign","confidence":0.955},{"type":"color_analogous","target":"minecraft:oak_wall_hanging_sign","label":"Couleurs analogues: Oak Wall Hanging Sign","confidence":0.955},{"type":"color_analogous","target":"minecraft:stripped_oak_log","label":"Couleurs analogues: Stripped Oak Log","confidence":0.955},{"type":"color_analogous","target":"minecraft:stripped_oak_wood","label":"Couleurs analogues: Stripped Oak Wood","confidence":0.955},{"type":"color_analogous","target":"minecraft:short_dry_grass","label":"Couleurs analogues: Short Dry Grass","confidence":0.954},{"type":"color_analogous","target":"minecraft:dirt_path","label":"Couleurs analogues: Dirt Path","confidence":0.952},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.943},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.94},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.935},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.928},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.908},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.874},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.872},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.799},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.942},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.942},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.814},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.814},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.812},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.808},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.792},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.776},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.724},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.554},{"type":"value_contrast","target":"minecraft:birch_door","label":"Contraste clair sombre: Birch Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:mushroom_stem","label":"Contraste clair sombre: Mushroom Stem","confidence":0.55},{"type":"value_contrast","target":"minecraft:cut_sandstone_slab","label":"Contraste clair sombre: Cut Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_slab","label":"Contraste clair sombre: Sandstone Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:sandstone_stairs","label":"Contraste clair sombre: Sandstone Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_sandstone","label":"Contraste clair sombre: Smooth Sandstone","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_sandstone_slab","label":"Contraste clair sombre: Smooth Sandstone Slab","confidence":0.55}],"category":""},{"id":"minecraft:wandering_trader","name":"Wandering Trader","entry_type":"mob","description":"A wandering trader is a passive mob similar to villagers that sometimes spawns near players, alongside two trader llamas tied to it with leads. It can be traded with, buying commonly available resources and selling items mostly native to specific biomes. Its trades are randomized each time it spawns, and it will despawn after enough time has passed.","history":[{"version":"1.14 19w05a","status":"added","notes":"Added wandering traders."},{"version":"19w09a","status":"added","notes":"Added two new sounds for wandering traders when they drink Invisibility potions and milk."}],"colors":{"primary":"#534949","dominant_hex":"#473123","average_hex":"#534949","hue_group":"neutral","lightness":0.3059,"saturation":0.0641,"palette":["#473123","#b1784c","#243c5a","#2c446c","#345484","#445c94"],"color_groups":[{"hex":"#473123","weight":0.3859,"lightness":0.2078,"saturation":0.3396,"hue_group":"red"},{"hex":"#b1784c","weight":0.2117,"lightness":0.4961,"saturation":0.3992,"hue_group":"red"},{"hex":"#243c5a","weight":0.1708,"lightness":0.2471,"saturation":0.4286,"hue_group":"blue"},{"hex":"#2c446c","weight":0.0938,"lightness":0.298,"saturation":0.4211,"hue_group":"blue"},{"hex":"#345484","weight":0.0756,"lightness":0.3608,"saturation":0.4348,"hue_group":"blue"},{"hex":"#445c94","weight":0.0621,"lightness":0.4235,"saturation":0.3704,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wandering_trader.png","family":"wandering_trader","relations":[{"type":"visual_neighbors","target":"minecraft:pillager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ravager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_fangs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vindicator","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wandering_trader_spawn_egg","name":"Wandering Trader Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#603c2b","dominant_hex":"#1e2328","average_hex":"#603c2b","hue_group":"red","lightness":0.2725,"saturation":0.3813,"palette":["#1e2328","#6f4434","#b77c3c","#7f1004","#6c3610","#304f7b"],"color_groups":[{"hex":"#1e2328","weight":0.3134,"lightness":0.1373,"saturation":0.1429,"hue_group":"blue"},{"hex":"#6f4434","weight":0.2015,"lightness":0.3196,"saturation":0.362,"hue_group":"red"},{"hex":"#b77c3c","weight":0.1866,"lightness":0.4765,"saturation":0.5062,"hue_group":"yellow"},{"hex":"#7f1004","weight":0.1343,"lightness":0.2569,"saturation":0.9389,"hue_group":"red"},{"hex":"#6c3610","weight":0.097,"lightness":0.2431,"saturation":0.7419,"hue_group":"red"},{"hex":"#304f7b","weight":0.0672,"lightness":0.3353,"saturation":0.4386,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wandering_trader_spawn_egg.png","family":"wandering_trader_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:written_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_charge","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:plenty_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:ward_armor_trim_smithing_template","name":"Ward Armor Trim Smithing Template","entry_type":"item","description":"Ward armor trim is a type of smithing template found in ancient cities used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, cobbled deepslate, and diamonds.","history":[{"version":"1.19.4","status":"added","notes":"Added the ward armor trim smithing template behind the \"Update 1.20\" experimental data pack."}],"colors":{"primary":"#41575b","dominant_hex":"#616161","average_hex":"#41575b","hue_group":"cyan","lightness":0.3059,"saturation":0.1667,"palette":["#616161","#4c4c4c","#2ea9bb","#444444","#242424","#3c3434"],"color_groups":[{"hex":"#616161","weight":0.2121,"lightness":0.3804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4c4c4c","weight":0.1939,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2ea9bb","weight":0.1818,"lightness":0.4569,"saturation":0.6052,"hue_group":"cyan"},{"hex":"#444444","weight":0.1818,"lightness":0.2667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.1273,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c3434","weight":0.103,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/ward_armor_trim_smithing_template.png","family":"ward_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:recovery_compass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silence_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:disc_fragment_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_tear","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_shard","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55}],"category":"item"},{"id":"minecraft:warden","name":"Warden","entry_type":"mob","description":"A warden is a hostile mob summoned by sculk shriekers located in the deep dark. It is completely blind, relying entirely on vibrations and its sense of smell to detect players and entities to attack, and digs down to despawn if it does not detect anything for 60 seconds and if it doesn't have a name. If a warden successfully detects a target, it rapidly strikes them with its arms, or fires damaging sonic beams which pass through blocks and ignore armor, shields, as well as all enchantments.","history":[{"version":"1.19","status":"added","notes":"Added wardens."},{"version":"wiki-history","status":"added","notes":"Added the game rule doWardenSpawning ."}],"colors":{"primary":"#1b2b2f","dominant_hex":"#0c1414","average_hex":"#1b2b2f","hue_group":"cyan","lightness":0.1451,"saturation":0.2703,"palette":["#0c1414","#0e4d5b","#141c24","#9fae95","#042c34","#0c242c"],"color_groups":[{"hex":"#0c1414","weight":0.5956,"lightness":0.0627,"saturation":0.25,"hue_group":"cyan"},{"hex":"#0e4d5b","weight":0.1267,"lightness":0.2059,"saturation":0.7333,"hue_group":"cyan"},{"hex":"#141c24","weight":0.1001,"lightness":0.1098,"saturation":0.2857,"hue_group":"blue"},{"hex":"#9fae95","weight":0.0975,"lightness":0.6333,"saturation":0.1337,"hue_group":"green"},{"hex":"#042c34","weight":0.0543,"lightness":0.1098,"saturation":0.8571,"hue_group":"cyan"},{"hex":"#0c242c","weight":0.0259,"lightness":0.1098,"saturation":0.5714,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/warden/warden.png","family":"warden","relations":[{"type":"visual_neighbors","target":"minecraft:squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_bioluminescent_layer","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_heart","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_1","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:warden_bioluminescent_layer","name":"Warden Bioluminescent Layer","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#133637","dominant_hex":"#0c4444","average_hex":"#133637","hue_group":"cyan","lightness":0.1451,"saturation":0.4865,"palette":["#0c4444","#141c1d","#14141c","#143434","#1b2b2d","#3c6454"],"color_groups":[{"hex":"#0c4444","weight":0.5121,"lightness":0.1569,"saturation":0.7,"hue_group":"cyan"},{"hex":"#141c1d","weight":0.1498,"lightness":0.0961,"saturation":0.1837,"hue_group":"cyan"},{"hex":"#14141c","weight":0.1336,"lightness":0.0941,"saturation":0.1667,"hue_group":"blue"},{"hex":"#143434","weight":0.1053,"lightness":0.1412,"saturation":0.4444,"hue_group":"cyan"},{"hex":"#1b2b2d","weight":0.0749,"lightness":0.1412,"saturation":0.25,"hue_group":"cyan"},{"hex":"#3c6454","weight":0.0243,"lightness":0.3137,"saturation":0.25,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/warden/warden_bioluminescent_layer.png","family":"warden_bioluminescent_layer","relations":[{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_heart","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_1","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_2","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:warden_heart","name":"Warden Heart","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#085557","dominant_hex":"#04645c","average_hex":"#085557","hue_group":"cyan","lightness":0.1863,"saturation":0.8316,"palette":["#04645c","#0c1414","#049494","#0c242c","#2cdcec"],"color_groups":[{"hex":"#04645c","weight":0.3611,"lightness":0.2039,"saturation":0.9231,"hue_group":"cyan"},{"hex":"#0c1414","weight":0.3056,"lightness":0.0627,"saturation":0.25,"hue_group":"cyan"},{"hex":"#049494","weight":0.25,"lightness":0.298,"saturation":0.9474,"hue_group":"cyan"},{"hex":"#0c242c","weight":0.0556,"lightness":0.1098,"saturation":0.5714,"hue_group":"cyan"},{"hex":"#2cdcec","weight":0.0278,"lightness":0.549,"saturation":0.8348,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/warden/warden_heart.png","family":"warden_heart","relations":[{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_2","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_1","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_bioluminescent_layer","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allay","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:warden_pulsating_spots_1","name":"Warden Pulsating Spots 1","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#0f6c78","dominant_hex":"#044454","average_hex":"#0f6c78","hue_group":"cyan","lightness":0.2647,"saturation":0.7778,"palette":["#044454","#049494","#2cdcec","#44546c","#04645c","#0c242c"],"color_groups":[{"hex":"#044454","weight":0.4286,"lightness":0.1725,"saturation":0.9091,"hue_group":"cyan"},{"hex":"#049494","weight":0.2143,"lightness":0.298,"saturation":0.9474,"hue_group":"cyan"},{"hex":"#2cdcec","weight":0.1429,"lightness":0.549,"saturation":0.8348,"hue_group":"cyan"},{"hex":"#44546c","weight":0.1071,"lightness":0.3451,"saturation":0.2273,"hue_group":"blue"},{"hex":"#04645c","weight":0.0714,"lightness":0.2039,"saturation":0.9231,"hue_group":"cyan"},{"hex":"#0c242c","weight":0.0357,"lightness":0.1098,"saturation":0.5714,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/warden/warden_pulsating_spots_1.png","family":"warden_pulsating_spots_1","relations":[{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_2","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_heart","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allay","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_bioluminescent_layer","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:warden_pulsating_spots_2","name":"Warden Pulsating Spots 2","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#096b73","dominant_hex":"#049494","average_hex":"#096b73","hue_group":"cyan","lightness":0.2431,"saturation":0.8548,"palette":["#049494","#044454","#0c242c","#04645c","#2cdcec","#44546c"],"color_groups":[{"hex":"#049494","weight":0.3478,"lightness":0.298,"saturation":0.9474,"hue_group":"cyan"},{"hex":"#044454","weight":0.3043,"lightness":0.1725,"saturation":0.9091,"hue_group":"cyan"},{"hex":"#0c242c","weight":0.1304,"lightness":0.1098,"saturation":0.5714,"hue_group":"cyan"},{"hex":"#04645c","weight":0.087,"lightness":0.2039,"saturation":0.9231,"hue_group":"cyan"},{"hex":"#2cdcec","weight":0.087,"lightness":0.549,"saturation":0.8348,"hue_group":"cyan"},{"hex":"#44546c","weight":0.0435,"lightness":0.3451,"saturation":0.2273,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/warden/warden_pulsating_spots_2.png","family":"warden_pulsating_spots_2","relations":[{"type":"visual_neighbors","target":"minecraft:warden_heart","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_1","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:allay","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_bioluminescent_layer","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:warden_spawn_egg","name":"Warden Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#274b4f","dominant_hex":"#7caba2","average_hex":"#274b4f","hue_group":"cyan","lightness":0.2314,"saturation":0.339,"palette":["#7caba2","#042c34","#175e67","#141c24","#05060d","#273a42"],"color_groups":[{"hex":"#7caba2","weight":0.2163,"lightness":0.5784,"saturation":0.2186,"hue_group":"cyan"},{"hex":"#042c34","weight":0.2067,"lightness":0.1098,"saturation":0.8571,"hue_group":"cyan"},{"hex":"#175e67","weight":0.1827,"lightness":0.2471,"saturation":0.6349,"hue_group":"cyan"},{"hex":"#141c24","weight":0.1683,"lightness":0.1098,"saturation":0.2857,"hue_group":"blue"},{"hex":"#05060d","weight":0.1202,"lightness":0.0353,"saturation":0.4444,"hue_group":"blue"},{"hex":"#273a42","weight":0.1058,"lightness":0.2059,"saturation":0.2571,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/warden_spawn_egg.png","family":"warden_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silence_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:recovery_compass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:disc_fragment_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ward_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_helmet","label":"Shared hue group: cyan","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:warped_button","name":"Warped Button","entry_type":"block","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added wooden buttons. They are currently uncraftable."},{"version":"12w34b","status":"added","notes":"Added crafting recipe for wooden buttons. Recipe"},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped buttons."}],"colors":{"primary":"#2b6963","dominant_hex":"#285a54","average_hex":"#2b6963","hue_group":"cyan","lightness":0.2902,"saturation":0.4189,"palette":["#285a54","#3c8484","#2c7464","#3c8c8c","#143c34","#1c4444"],"color_groups":[{"hex":"#285a54","weight":0.2539,"lightness":0.2549,"saturation":0.3846,"hue_group":"cyan"},{"hex":"#3c8484","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#2c7464","weight":0.1875,"lightness":0.3137,"saturation":0.45,"hue_group":"cyan"},{"hex":"#3c8c8c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"cyan"},{"hex":"#143c34","weight":0.1133,"lightness":0.1569,"saturation":0.5,"hue_group":"cyan"},{"hex":"#1c4444","weight":0.0938,"lightness":0.1882,"saturation":0.4167,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_planks.png","family":"warped_button","relations":[{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_pressure_plate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_slab","label":"Palette proche: Warped Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_stairs","label":"Palette proche: Warped Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wall_sign","label":"Palette proche: Warped Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.875},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.865},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.759},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.721},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.712},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.709},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.709},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.687},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_planks","label":"Couleurs analogues: Warped Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_pressure_plate","label":"Couleurs analogues: Warped Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_sign","label":"Couleurs analogues: Warped Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_slab","label":"Couleurs analogues: Warped Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_stairs","label":"Couleurs analogues: Warped Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_wall_sign","label":"Couleurs analogues: Warped Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.925},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.916},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.958},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.917},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.899},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.883},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.846},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.844},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.96},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_block","label":"Harmonie carree: Amethyst Block","confidence":0.96},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.96},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.651},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.65},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.65},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.635},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.601},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.587},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.587},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.579}],"category":"building"},{"id":"minecraft:warped_door","name":"Warped Door","entry_type":"block","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","history":[{"version":"20100607","status":"added","notes":"Added wooden doors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"18w49a","status":"added","notes":"Added snowy tundra villages, which generate with spruce doors."}],"colors":{"primary":"#2d7f79","dominant_hex":"#24aba0","average_hex":"#2d7f79","hue_group":"cyan","lightness":0.3373,"saturation":0.4767,"palette":["#24aba0","#3c8484","#2c7464","#1c5252","#3c8c8c","#315b56"],"color_groups":[{"hex":"#24aba0","weight":0.2188,"lightness":0.4059,"saturation":0.6522,"hue_group":"cyan"},{"hex":"#3c8484","weight":0.1914,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#2c7464","weight":0.1797,"lightness":0.3137,"saturation":0.45,"hue_group":"cyan"},{"hex":"#1c5252","weight":0.1523,"lightness":0.2157,"saturation":0.4909,"hue_group":"cyan"},{"hex":"#3c8c8c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"cyan"},{"hex":"#315b56","weight":0.1094,"lightness":0.2745,"saturation":0.3,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_door_top.png","family":"warped","relations":[{"type":"variants","target":"minecraft:warped_fence","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_fence","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_planks","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_planks","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_slab","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_slab","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_stairs","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_stairs","label":"Related set: warped","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:warped_shelf","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_warped_stem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_hanging_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_hanging_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_slab","label":"Palette proche: Warped Slab","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_stairs","label":"Palette proche: Warped Stairs","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_wall_sign","label":"Palette proche: Warped Wall Sign","confidence":0.937},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.875},{"type":"color_neighbors","target":"minecraft:stripped_warped_stem","label":"Palette proche: Stripped Warped Stem","confidence":0.875},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.785},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.785},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.758},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.714},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.714},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.708},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.696},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.696},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.689},{"type":"color_bridge","target":"minecraft:gray_concrete_powder","label":"Pont de nuance par palette: Gray Concrete Powder","confidence":0.686},{"type":"color_analogous","target":"minecraft:warped_shelf","label":"Couleurs analogues: Warped Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.959},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.959},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.959},{"type":"color_analogous","target":"minecraft:warped_planks","label":"Couleurs analogues: Warped Planks","confidence":0.959},{"type":"color_analogous","target":"minecraft:warped_pressure_plate","label":"Couleurs analogues: Warped Pressure Plate","confidence":0.959},{"type":"color_analogous","target":"minecraft:warped_sign","label":"Couleurs analogues: Warped Sign","confidence":0.959},{"type":"color_analogous","target":"minecraft:warped_slab","label":"Couleurs analogues: Warped Slab","confidence":0.959},{"type":"color_complement","target":"minecraft:crimson_hyphae","label":"Contraste complementaire: Crimson Hyphae","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_stem","label":"Contraste complementaire: Crimson Stem","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.96},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.953},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.952},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.908},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.905},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.902},{"type":"color_triad","target":"minecraft:turtle_egg","label":"Harmonie triadique: Turtle Egg","confidence":0.889},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.858},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.84},{"type":"color_triad","target":"minecraft:potted_acacia_sapling","label":"Harmonie triadique: Potted Acacia Sapling","confidence":0.84},{"type":"color_square","target":"minecraft:oak_sapling","label":"Harmonie carree: Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_oak_sapling","label":"Harmonie carree: Potted Oak Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:lime_concrete_powder","label":"Harmonie carree: Lime Concrete Powder","confidence":0.96},{"type":"color_square","target":"minecraft:lime_stained_glass_pane","label":"Harmonie carree: Lime Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:lime_stained_glass","label":"Harmonie carree: Lime Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:nether_portal","label":"Harmonie carree: Nether Portal","confidence":0.955},{"type":"color_square","target":"minecraft:orange_tulip","label":"Harmonie carree: Orange Tulip","confidence":0.95},{"type":"color_square","target":"minecraft:potted_orange_tulip","label":"Harmonie carree: Potted Orange Tulip","confidence":0.95},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.608},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.607},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.607},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.588},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.555},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55}],"category":"building"},{"id":"minecraft:warped_fence","name":"Warped Fence","entry_type":"block","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","history":[{"version":"20100629","status":"added","notes":"added to the game. There are three defined states: north-south, east-west and a cross. These models are currently unused."},{"version":"v1.0.17","status":"added","notes":"Added fences."},{"version":"1.8","status":"added","notes":"Added villages and strongholds , where wooden fences naturally generate."}],"colors":{"primary":"#2b6963","dominant_hex":"#285a54","average_hex":"#2b6963","hue_group":"cyan","lightness":0.2902,"saturation":0.4189,"palette":["#285a54","#3c8484","#2c7464","#3c8c8c","#143c34","#1c4444"],"color_groups":[{"hex":"#285a54","weight":0.2539,"lightness":0.2549,"saturation":0.3846,"hue_group":"cyan"},{"hex":"#3c8484","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#2c7464","weight":0.1875,"lightness":0.3137,"saturation":0.45,"hue_group":"cyan"},{"hex":"#3c8c8c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"cyan"},{"hex":"#143c34","weight":0.1133,"lightness":0.1569,"saturation":0.5,"hue_group":"cyan"},{"hex":"#1c4444","weight":0.0938,"lightness":0.1882,"saturation":0.4167,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_planks.png","family":"warped","relations":[{"type":"variants","target":"minecraft:warped_door","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_door","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_planks","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_planks","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_slab","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_slab","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_stairs","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_stairs","label":"Related set: warped","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_pressure_plate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_slab","label":"Palette proche: Warped Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_stairs","label":"Palette proche: Warped Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wall_sign","label":"Palette proche: Warped Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.875},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.865},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.759},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.721},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.712},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.709},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.709},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.687},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_planks","label":"Couleurs analogues: Warped Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_pressure_plate","label":"Couleurs analogues: Warped Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_sign","label":"Couleurs analogues: Warped Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_slab","label":"Couleurs analogues: Warped Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_stairs","label":"Couleurs analogues: Warped Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_wall_sign","label":"Couleurs analogues: Warped Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.925},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.916},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.958},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.917},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.899},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.883},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.846},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.844},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.96},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_block","label":"Harmonie carree: Amethyst Block","confidence":0.96},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.96},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.651},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.65},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.65},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.635},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.601},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.587},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.587},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.579}],"category":"building"},{"id":"minecraft:warped_fence_gate","name":"Warped Fence Gate","entry_type":"block","description":"A fence gate is a block that shares the functions of both the door and the fence.","history":[{"version":"Pre-release","status":"added","notes":"Added fence gates."},{"version":"14w32b","status":"added","notes":"Added spruce, birch, jungle, acacia, and dark oak fence gates."},{"version":"18w49a","status":"added","notes":"added snowy tundra villages."}],"colors":{"primary":"#2b6963","dominant_hex":"#285a54","average_hex":"#2b6963","hue_group":"cyan","lightness":0.2902,"saturation":0.4189,"palette":["#285a54","#3c8484","#2c7464","#3c8c8c","#143c34","#1c4444"],"color_groups":[{"hex":"#285a54","weight":0.2539,"lightness":0.2549,"saturation":0.3846,"hue_group":"cyan"},{"hex":"#3c8484","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#2c7464","weight":0.1875,"lightness":0.3137,"saturation":0.45,"hue_group":"cyan"},{"hex":"#3c8c8c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"cyan"},{"hex":"#143c34","weight":0.1133,"lightness":0.1569,"saturation":0.5,"hue_group":"cyan"},{"hex":"#1c4444","weight":0.0938,"lightness":0.1882,"saturation":0.4167,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_planks.png","family":"warped_fence_gate","relations":[{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_pressure_plate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_slab","label":"Palette proche: Warped Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_stairs","label":"Palette proche: Warped Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wall_sign","label":"Palette proche: Warped Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.875},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.865},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.759},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.721},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.712},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.709},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.709},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.687},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_planks","label":"Couleurs analogues: Warped Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_pressure_plate","label":"Couleurs analogues: Warped Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_sign","label":"Couleurs analogues: Warped Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_slab","label":"Couleurs analogues: Warped Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_stairs","label":"Couleurs analogues: Warped Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_wall_sign","label":"Couleurs analogues: Warped Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.925},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.916},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.958},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.917},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.899},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.883},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.846},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.844},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.96},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_block","label":"Harmonie carree: Amethyst Block","confidence":0.96},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.96},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.651},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.65},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.65},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.635},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.601},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.587},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.587},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.579}],"category":"building"},{"id":"minecraft:warped_fungus","name":"Warped Fungus","entry_type":"block","description":"A warped fungus is a mushroom-like block that generates in the Nether.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added warped fungi."}],"colors":{"primary":"#4a6d58","dominant_hex":"#1c5f5c","average_hex":"#4a6d58","hue_group":"green","lightness":0.3588,"saturation":0.1913,"palette":["#1c5f5c","#4c2636","#14b484","#f75e12","#147c84","#149c84"],"color_groups":[{"hex":"#1c5f5c","weight":0.2,"lightness":0.2412,"saturation":0.5447,"hue_group":"cyan"},{"hex":"#4c2636","weight":0.2,"lightness":0.2235,"saturation":0.3333,"hue_group":"red"},{"hex":"#14b484","weight":0.18,"lightness":0.3922,"saturation":0.8,"hue_group":"cyan"},{"hex":"#f75e12","weight":0.18,"lightness":0.5196,"saturation":0.9347,"hue_group":"red"},{"hex":"#147c84","weight":0.14,"lightness":0.298,"saturation":0.7368,"hue_group":"cyan"},{"hex":"#149c84","weight":0.1,"lightness":0.3451,"saturation":0.7727,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_fungus.png","family":"warped_fungus","relations":[{"type":"visual_neighbors","target":"minecraft:potted_warped_fungus","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_emerald_ore","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal_frame","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_plant","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_warped_fungus","label":"Palette proche: Potted Warped Fungus","confidence":0.94},{"type":"color_neighbors","target":"minecraft:orange_glazed_terracotta","label":"Palette proche: Orange Glazed Terracotta","confidence":0.709},{"type":"color_neighbors","target":"minecraft:warped_hyphae","label":"Palette proche: Warped Hyphae","confidence":0.705},{"type":"color_neighbors","target":"minecraft:warped_stem","label":"Palette proche: Warped Stem","confidence":0.705},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.693},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.681},{"type":"color_neighbors","target":"minecraft:potted_torchflower","label":"Palette proche: Potted Torchflower","confidence":0.679},{"type":"color_neighbors","target":"minecraft:torchflower","label":"Palette proche: Torchflower","confidence":0.679},{"type":"color_neighbors","target":"minecraft:twisting_vines","label":"Palette proche: Twisting Vines","confidence":0.663},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.663},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.661},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.66},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par palette: Potted Warped Fungus","confidence":0.86},{"type":"color_bridge","target":"minecraft:orange_glazed_terracotta","label":"Pont de nuance par sous-ton: Orange Glazed Terracotta","confidence":0.76},{"type":"color_bridge","target":"minecraft:warped_hyphae","label":"Pont de nuance par palette: Warped Hyphae","confidence":0.757},{"type":"color_bridge","target":"minecraft:warped_stem","label":"Pont de nuance par palette: Warped Stem","confidence":0.757},{"type":"color_bridge","target":"minecraft:cyan_candle","label":"Pont de nuance par sous-ton: Cyan Candle","confidence":0.747},{"type":"color_bridge","target":"minecraft:warped_wart_block","label":"Pont de nuance par sous-ton: Warped Wart Block","confidence":0.737},{"type":"color_bridge","target":"minecraft:potted_torchflower","label":"Pont de nuance par palette: Potted Torchflower","confidence":0.736},{"type":"color_bridge","target":"minecraft:torchflower","label":"Pont de nuance par palette: Torchflower","confidence":0.736},{"type":"color_bridge","target":"minecraft:twisting_vines","label":"Pont de nuance par sous-ton: Twisting Vines","confidence":0.723},{"type":"color_bridge","target":"minecraft:warped_roots","label":"Pont de nuance par sous-ton: Warped Roots","confidence":0.722},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.581},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.575},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.574},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.574},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_shrieker","label":"Contraste clair sombre: Sculk Shrieker","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55}],"category":"natural"},{"id":"minecraft:warped_fungus_on_a_stick","name":"Warped Fungus On A Stick","entry_type":"item","description":"A warped fungus on a stick is a tool that can be used to control saddled striders.","history":[{"version":"1.16 20w13a","status":"added","notes":"Added warped fungus on a stick."}],"colors":{"primary":"#52523b","dominant_hex":"#384848","average_hex":"#52523b","hue_group":"yellow","lightness":0.2765,"saturation":0.1631,"palette":["#384848","#518b7f","#4c3416","#2c1c0c","#7a5825","#fc7119"],"color_groups":[{"hex":"#384848","weight":0.2619,"lightness":0.251,"saturation":0.125,"hue_group":"cyan"},{"hex":"#518b7f","weight":0.2262,"lightness":0.4314,"saturation":0.2636,"hue_group":"cyan"},{"hex":"#4c3416","weight":0.1786,"lightness":0.1922,"saturation":0.551,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1548,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#7a5825","weight":0.119,"lightness":0.3118,"saturation":0.5346,"hue_group":"yellow"},{"hex":"#fc7119","weight":0.0595,"lightness":0.5431,"saturation":0.9742,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/warped_fungus_on_a_stick.png","family":"warped_fungus_on_a_stick","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:stone_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fishing_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shield","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest_minecart","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_husk_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dried_kelp","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:warped_hanging_sign","name":"Warped Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#3a9794","dominant_hex":"#3c9c94","average_hex":"#3a9794","hue_group":"cyan","lightness":0.4098,"saturation":0.445,"palette":["#3c9c94","#43a59d","#348c8c","#348c84","#34948c","#2c847c"],"color_groups":[{"hex":"#3c9c94","weight":0.3203,"lightness":0.4235,"saturation":0.4444,"hue_group":"cyan"},{"hex":"#43a59d","weight":0.293,"lightness":0.4549,"saturation":0.4224,"hue_group":"cyan"},{"hex":"#348c8c","weight":0.1719,"lightness":0.3765,"saturation":0.4583,"hue_group":"cyan"},{"hex":"#348c84","weight":0.0898,"lightness":0.3765,"saturation":0.4583,"hue_group":"cyan"},{"hex":"#34948c","weight":0.0664,"lightness":0.3922,"saturation":0.48,"hue_group":"cyan"},{"hex":"#2c847c","weight":0.0586,"lightness":0.3451,"saturation":0.5,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_warped_stem.png","family":"warped_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_warped_stem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_hanging_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_shelf","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_warped_stem","label":"Palette proche: Stripped Warped Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wall_hanging_sign","label":"Palette proche: Warped Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.896},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.875},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.865},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.746},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.715},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.678},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.678},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.664},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.664},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.66},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.66},{"type":"color_analogous","target":"minecraft:stripped_warped_hyphae","label":"Couleurs analogues: Stripped Warped Hyphae","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_warped_stem","label":"Couleurs analogues: Stripped Warped Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_wall_hanging_sign","label":"Couleurs analogues: Warped Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_shelf","label":"Couleurs analogues: Warped Shelf","confidence":0.933},{"type":"color_analogous","target":"minecraft:warped_door","label":"Couleurs analogues: Warped Door","confidence":0.931},{"type":"color_analogous","target":"minecraft:cyan_candle","label":"Couleurs analogues: Cyan Candle","confidence":0.93},{"type":"color_analogous","target":"minecraft:warped_wart_block","label":"Couleurs analogues: Warped Wart Block","confidence":0.918},{"type":"color_analogous","target":"minecraft:beacon","label":"Couleurs analogues: Beacon","confidence":0.914},{"type":"color_complement","target":"minecraft:nether_wart","label":"Contraste complementaire: Nether Wart","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_brick_slab","label":"Contraste complementaire: Red Nether Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_brick_stairs","label":"Contraste complementaire: Red Nether Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_brick_wall","label":"Contraste complementaire: Red Nether Brick Wall","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_bricks","label":"Contraste complementaire: Red Nether Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:black_glazed_terracotta","label":"Contraste complementaire: Black Glazed Terracotta","confidence":0.954},{"type":"color_complement","target":"minecraft:pink_terracotta","label":"Contraste complementaire: Pink Terracotta","confidence":0.95},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.948},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.96},{"type":"color_triad","target":"minecraft:turtle_egg","label":"Harmonie triadique: Turtle Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.95},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.932},{"type":"color_triad","target":"minecraft:potted_acacia_sapling","label":"Harmonie triadique: Potted Acacia Sapling","confidence":0.932},{"type":"color_triad","target":"minecraft:chorus_plant","label":"Harmonie triadique: Chorus Plant","confidence":0.91},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.904},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.899},{"type":"color_square","target":"minecraft:sugar_cane","label":"Harmonie carree: Sugar Cane","confidence":0.96},{"type":"color_square","target":"minecraft:medium_amethyst_bud","label":"Harmonie carree: Medium Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:large_amethyst_bud","label":"Harmonie carree: Large Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:azure_bluet","label":"Harmonie carree: Azure Bluet","confidence":0.96},{"type":"color_square","target":"minecraft:potted_azure_bluet","label":"Harmonie carree: Potted Azure Bluet","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_cluster","label":"Harmonie carree: Amethyst Cluster","confidence":0.96},{"type":"color_square","target":"minecraft:allium","label":"Harmonie carree: Allium","confidence":0.96},{"type":"color_square","target":"minecraft:potted_allium","label":"Harmonie carree: Potted Allium","confidence":0.96},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55}],"category":"building"},{"id":"minecraft:warped_hyphae","name":"Warped Hyphae","entry_type":"block","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","history":[{"version":"1.3.1 12w30d","status":"added","notes":"Added six-sided wood blocks, which look similar to logs , but have the wood's \"bark\" texture (side texture when placed vertically) on all 6 sides."},{"version":"1.7.2 13w43a","status":"added","notes":"Added two new types of wood: acacia and dark oak."},{"version":"1","status":"added","notes":"Added top textures of the bark blocks."}],"colors":{"primary":"#3a3b4e","dominant_hex":"#442c5c","average_hex":"#3a3b4e","hue_group":"blue","lightness":0.2667,"saturation":0.1471,"palette":["#442c5c","#442434","#4c2434","#14645c","#147b69","#542c3c"],"color_groups":[{"hex":"#442c5c","weight":0.3164,"lightness":0.2667,"saturation":0.3529,"hue_group":"purple"},{"hex":"#442434","weight":0.1758,"lightness":0.2039,"saturation":0.3077,"hue_group":"red"},{"hex":"#4c2434","weight":0.1523,"lightness":0.2196,"saturation":0.3571,"hue_group":"red"},{"hex":"#14645c","weight":0.1492,"lightness":0.2353,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#147b69","weight":0.1203,"lightness":0.2804,"saturation":0.7203,"hue_group":"cyan"},{"hex":"#542c3c","weight":0.0859,"lightness":0.251,"saturation":0.3125,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_stem.png","family":"warped_hyphae","relations":[{"type":"visual_neighbors","target":"minecraft:warped_stem","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chain","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spawner","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:respawn_anchor","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_gateway","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:warped_stem","label":"Palette proche: Warped Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.741},{"type":"color_neighbors","target":"minecraft:blue_terracotta","label":"Palette proche: Blue Terracotta","confidence":0.731},{"type":"color_neighbors","target":"minecraft:potted_warped_fungus","label":"Palette proche: Potted Warped Fungus","confidence":0.705},{"type":"color_neighbors","target":"minecraft:warped_fungus","label":"Palette proche: Warped Fungus","confidence":0.705},{"type":"color_neighbors","target":"minecraft:cherry_log","label":"Palette proche: Cherry Log","confidence":0.699},{"type":"color_neighbors","target":"minecraft:cherry_wood","label":"Palette proche: Cherry Wood","confidence":0.699},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.638},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.638},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.638},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.638},{"type":"color_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Palette proche: Cracked Polished Blackstone Bricks","confidence":0.636},{"type":"color_bridge","target":"minecraft:warped_stem","label":"Pont de nuance par palette: Warped Stem","confidence":0.86},{"type":"color_bridge","target":"minecraft:cyan_candle","label":"Pont de nuance par sous-ton: Cyan Candle","confidence":0.786},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par palette: Blue Terracotta","confidence":0.778},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par palette: Potted Warped Fungus","confidence":0.757},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par palette: Warped Fungus","confidence":0.757},{"type":"color_bridge","target":"minecraft:cherry_log","label":"Pont de nuance par sous-ton: Cherry Log","confidence":0.752},{"type":"color_bridge","target":"minecraft:cherry_wood","label":"Pont de nuance par sous-ton: Cherry Wood","confidence":0.752},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.702},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.702},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_wall","label":"Pont de nuance par palette: Polished Blackstone Brick Wall","confidence":0.702},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.673},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.658},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.657},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.657},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.64},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.621},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.621},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.621}],"category":""},{"id":"minecraft:warped_nylium","name":"Warped Nylium","entry_type":"block","description":"Warped nylium is a variant of netherrack that generates in the Nether.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added nylium."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb warped nylium, providing the football/regular effect to the mob."}],"colors":{"primary":"#2b7265","dominant_hex":"#14645c","average_hex":"#2b7265","hue_group":"cyan","lightness":0.3078,"saturation":0.4522,"palette":["#14645c","#446c54","#147c84","#548454","#14a284","#3c4c5c"],"color_groups":[{"hex":"#14645c","weight":0.25,"lightness":0.2353,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#446c54","weight":0.2266,"lightness":0.3451,"saturation":0.2273,"hue_group":"green"},{"hex":"#147c84","weight":0.2109,"lightness":0.298,"saturation":0.7368,"hue_group":"cyan"},{"hex":"#548454","weight":0.1133,"lightness":0.4235,"saturation":0.2222,"hue_group":"green"},{"hex":"#14a284","weight":0.1055,"lightness":0.3569,"saturation":0.7802,"hue_group":"cyan"},{"hex":"#3c4c5c","weight":0.0938,"lightness":0.298,"saturation":0.2105,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_nylium.png","family":"warped_nylium","relations":[{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_pressure_plate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.844},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.843},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.843},{"type":"color_neighbors","target":"minecraft:twisting_vines","label":"Palette proche: Twisting Vines","confidence":0.838},{"type":"color_neighbors","target":"minecraft:nether_sprouts","label":"Palette proche: Nether Sprouts","confidence":0.81},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.808},{"type":"color_neighbors","target":"minecraft:structure_void","label":"Palette proche: Structure Void","confidence":0.806},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.776},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.776},{"type":"color_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Palette proche: Cyan Glazed Terracotta","confidence":0.775},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.772},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.763},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.815},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.815},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.796},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.796},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.789},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.789},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.76},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.76},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.758},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.757},{"type":"color_analogous","target":"minecraft:twisting_vines","label":"Couleurs analogues: Twisting Vines","confidence":0.959},{"type":"color_analogous","target":"minecraft:prismarine_brick_slab","label":"Couleurs analogues: Prismarine Brick Slab","confidence":0.944},{"type":"color_analogous","target":"minecraft:prismarine_brick_stairs","label":"Couleurs analogues: Prismarine Brick Stairs","confidence":0.944},{"type":"color_analogous","target":"minecraft:prismarine_bricks","label":"Couleurs analogues: Prismarine Bricks","confidence":0.944},{"type":"color_analogous","target":"minecraft:nether_sprouts","label":"Couleurs analogues: Nether Sprouts","confidence":0.934},{"type":"color_analogous","target":"minecraft:potted_warped_roots","label":"Couleurs analogues: Potted Warped Roots","confidence":0.916},{"type":"color_analogous","target":"minecraft:twisting_vines_plant","label":"Couleurs analogues: Twisting Vines Plant","confidence":0.916},{"type":"color_analogous","target":"minecraft:warped_roots","label":"Couleurs analogues: Warped Roots","confidence":0.914},{"type":"color_complement","target":"minecraft:enchanting_table","label":"Contraste complementaire: Enchanting Table","confidence":0.96},{"type":"color_complement","target":"minecraft:chiseled_nether_bricks","label":"Contraste complementaire: Chiseled Nether Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_fence","label":"Contraste complementaire: Nether Brick Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_slab","label":"Contraste complementaire: Nether Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_stairs","label":"Contraste complementaire: Nether Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_brick_wall","label":"Contraste complementaire: Nether Brick Wall","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_bricks","label":"Contraste complementaire: Nether Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:cracked_nether_bricks","label":"Contraste complementaire: Cracked Nether Bricks","confidence":0.954},{"type":"color_triad","target":"minecraft:bamboo_shelf","label":"Harmonie triadique: Bamboo Shelf","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_mosaic","label":"Harmonie triadique: Bamboo Mosaic","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_mosaic_slab","label":"Harmonie triadique: Bamboo Mosaic Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_mosaic_stairs","label":"Harmonie triadique: Bamboo Mosaic Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_door","label":"Harmonie triadique: Bamboo Door","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_button","label":"Harmonie triadique: Bamboo Button","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_hanging_sign","label":"Harmonie triadique: Bamboo Hanging Sign","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_planks","label":"Harmonie triadique: Bamboo Planks","confidence":0.96},{"type":"color_square","target":"minecraft:moss_block","label":"Harmonie carree: Moss Block","confidence":0.96},{"type":"color_square","target":"minecraft:moss_carpet","label":"Harmonie carree: Moss Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:green_stained_glass","label":"Harmonie carree: Green Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:green_concrete","label":"Harmonie carree: Green Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:green_shulker_box","label":"Harmonie carree: Green Shulker Box","confidence":0.96},{"type":"color_square","target":"minecraft:green_carpet","label":"Harmonie carree: Green Carpet","confidence":0.959},{"type":"color_square","target":"minecraft:green_wool","label":"Harmonie carree: Green Wool","confidence":0.959},{"type":"color_square","target":"minecraft:green_candle","label":"Harmonie carree: Green Candle","confidence":0.959},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.633},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.632},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.632},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.618},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.584},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.568},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.568},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.562}],"category":"natural"},{"id":"minecraft:warped_planks","name":"Warped Planks","entry_type":"block","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","history":[{"version":"rd-20090515","status":"added","notes":"Added wooden planks."},{"version":"1.2.4 release","status":"added","notes":"Added spruce, birch and jungle wood planks. They are crafted from their corresponding wood . The color of wood planks available to this point is now obtainable only from oak wood."},{"version":"18w07a","status":"added","notes":"Added stripped logs, a variant of logs , which can be used to craft wood planks."}],"colors":{"primary":"#2b6963","dominant_hex":"#285a54","average_hex":"#2b6963","hue_group":"cyan","lightness":0.2902,"saturation":0.4189,"palette":["#285a54","#3c8484","#2c7464","#3c8c8c","#143c34","#1c4444"],"color_groups":[{"hex":"#285a54","weight":0.2539,"lightness":0.2549,"saturation":0.3846,"hue_group":"cyan"},{"hex":"#3c8484","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#2c7464","weight":0.1875,"lightness":0.3137,"saturation":0.45,"hue_group":"cyan"},{"hex":"#3c8c8c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"cyan"},{"hex":"#143c34","weight":0.1133,"lightness":0.1569,"saturation":0.5,"hue_group":"cyan"},{"hex":"#1c4444","weight":0.0938,"lightness":0.1882,"saturation":0.4167,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_planks.png","family":"warped","relations":[{"type":"variants","target":"minecraft:warped_door","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_door","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_fence","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_fence","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_slab","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_slab","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_stairs","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_stairs","label":"Related set: warped","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_pressure_plate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_slab","label":"Palette proche: Warped Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_stairs","label":"Palette proche: Warped Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wall_sign","label":"Palette proche: Warped Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.875},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.865},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.759},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.721},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.712},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.709},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.709},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.687},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_pressure_plate","label":"Couleurs analogues: Warped Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_sign","label":"Couleurs analogues: Warped Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_slab","label":"Couleurs analogues: Warped Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_stairs","label":"Couleurs analogues: Warped Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_wall_sign","label":"Couleurs analogues: Warped Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.925},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.916},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.958},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.917},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.899},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.883},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.846},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.844},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.96},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_block","label":"Harmonie carree: Amethyst Block","confidence":0.96},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.96},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.651},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.65},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.65},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.635},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.601},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.587},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.587},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.579}],"category":"building"},{"id":"minecraft:warped_pressure_plate","name":"Warped Pressure Plate","entry_type":"block","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","history":[{"version":"v1.0.1","status":"added","notes":"Added wooden pressure plates."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped pressure plates."},{"version":"1.19 22w11a","status":"added","notes":"Added mangrove pressure plates."}],"colors":{"primary":"#2b6963","dominant_hex":"#285a54","average_hex":"#2b6963","hue_group":"cyan","lightness":0.2902,"saturation":0.4189,"palette":["#285a54","#3c8484","#2c7464","#3c8c8c","#143c34","#1c4444"],"color_groups":[{"hex":"#285a54","weight":0.2539,"lightness":0.2549,"saturation":0.3846,"hue_group":"cyan"},{"hex":"#3c8484","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#2c7464","weight":0.1875,"lightness":0.3137,"saturation":0.45,"hue_group":"cyan"},{"hex":"#3c8c8c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"cyan"},{"hex":"#143c34","weight":0.1133,"lightness":0.1569,"saturation":0.5,"hue_group":"cyan"},{"hex":"#1c4444","weight":0.0938,"lightness":0.1882,"saturation":0.4167,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_planks.png","family":"warped_pressure_plate","relations":[{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_slab","label":"Palette proche: Warped Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_stairs","label":"Palette proche: Warped Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wall_sign","label":"Palette proche: Warped Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.875},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.865},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.759},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.721},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.712},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.709},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.709},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.687},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_planks","label":"Couleurs analogues: Warped Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_sign","label":"Couleurs analogues: Warped Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_slab","label":"Couleurs analogues: Warped Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_stairs","label":"Couleurs analogues: Warped Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_wall_sign","label":"Couleurs analogues: Warped Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.925},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.916},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.958},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.917},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.899},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.883},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.846},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.844},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.96},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_block","label":"Harmonie carree: Amethyst Block","confidence":0.96},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.96},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.651},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.65},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.65},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.635},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.601},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.587},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.587},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.579}],"category":"building"},{"id":"minecraft:warped_roots","name":"Warped Roots","entry_type":"block","description":"Warped roots are a non-solid \"plant\" block which generate naturally on warped nylium and soul soil in warped forests. They resemble a colony of tall, thin mushrooms.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added warped roots."}],"colors":{"primary":"#148a7c","dominant_hex":"#147c84","average_hex":"#148a7c","hue_group":"cyan","lightness":0.3098,"saturation":0.7468,"palette":["#147c84","#149c84","#14645c","#14b484"],"color_groups":[{"hex":"#147c84","weight":0.3261,"lightness":0.298,"saturation":0.7368,"hue_group":"cyan"},{"hex":"#149c84","weight":0.25,"lightness":0.3451,"saturation":0.7727,"hue_group":"cyan"},{"hex":"#14645c","weight":0.2174,"lightness":0.2353,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#14b484","weight":0.2065,"lightness":0.3922,"saturation":0.8,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_roots.png","family":"warped_roots","relations":[{"type":"visual_neighbors","target":"minecraft:twisting_vines_plant","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_sprouts","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wart_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:twisting_vines","label":"Palette proche: Twisting Vines","confidence":0.94},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_sprouts","label":"Palette proche: Nether Sprouts","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wart_block","label":"Palette proche: Warped Wart Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.899},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.899},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.868},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.863},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.86},{"type":"color_neighbors","target":"minecraft:warped_nylium","label":"Palette proche: Warped Nylium","confidence":0.843},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.782},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.722},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.722},{"type":"color_bridge","target":"minecraft:lapis_block","label":"Pont de nuance par palette: Lapis Block","confidence":0.616},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.598},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.598},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Gray Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.58},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.58},{"type":"color_analogous","target":"minecraft:twisting_vines_plant","label":"Couleurs analogues: Twisting Vines Plant","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_warped_roots","label":"Couleurs analogues: Potted Warped Roots","confidence":0.96},{"type":"color_analogous","target":"minecraft:nether_sprouts","label":"Couleurs analogues: Nether Sprouts","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_trapdoor","label":"Couleurs analogues: Warped Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_planks","label":"Couleurs analogues: Warped Planks","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.939},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.929},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.929},{"type":"color_complement","target":"minecraft:cactus_flower","label":"Contraste complementaire: Cactus Flower","confidence":0.898},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.89},{"type":"color_complement","target":"minecraft:crimson_hyphae","label":"Contraste complementaire: Crimson Hyphae","confidence":0.864},{"type":"color_complement","target":"minecraft:crimson_stem","label":"Contraste complementaire: Crimson Stem","confidence":0.864},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.849},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.95},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.941},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.907},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.9},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.896},{"type":"color_triad","target":"minecraft:horn_coral_wall_fan","label":"Harmonie triadique: Horn Coral Wall Fan","confidence":0.896},{"type":"color_triad","target":"minecraft:bamboo_fence_gate","label":"Harmonie triadique: Bamboo Fence Gate","confidence":0.87},{"type":"color_square","target":"minecraft:amethyst_block","label":"Harmonie carree: Amethyst Block","confidence":0.96},{"type":"color_square","target":"minecraft:oxeye_daisy","label":"Harmonie carree: Oxeye Daisy","confidence":0.948},{"type":"color_square","target":"minecraft:potted_oxeye_daisy","label":"Harmonie carree: Potted Oxeye Daisy","confidence":0.948},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.945},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.937},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.926},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.925},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.925},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.638},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.638},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.63},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.607},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.573},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.558},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.558},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.551}],"category":"natural"},{"id":"minecraft:warped_shelf","name":"Warped Shelf","entry_type":"block","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added shelves."},{"version":"wiki-history","status":"added","notes":"Added the align_items_to_bottom block state property, by default set to false, to display items at the bottom of the shelf rather than in the middle."}],"colors":{"primary":"#338d86","dominant_hex":"#2c837b","average_hex":"#338d86","hue_group":"cyan","lightness":0.3765,"saturation":0.4688,"palette":["#2c837b","#348d86","#3c9c94","#286d60","#3caca4","#44a49c"],"color_groups":[{"hex":"#2c837b","weight":0.3008,"lightness":0.3431,"saturation":0.4971,"hue_group":"cyan"},{"hex":"#348d86","weight":0.2549,"lightness":0.3784,"saturation":0.4611,"hue_group":"cyan"},{"hex":"#3c9c94","weight":0.1426,"lightness":0.4235,"saturation":0.4444,"hue_group":"cyan"},{"hex":"#286d60","weight":0.1113,"lightness":0.2922,"saturation":0.4631,"hue_group":"cyan"},{"hex":"#3caca4","weight":0.1064,"lightness":0.4549,"saturation":0.4828,"hue_group":"cyan"},{"hex":"#44a49c","weight":0.084,"lightness":0.4549,"saturation":0.4138,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_shelf.png","family":"warped_shelf","relations":[{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_warped_stem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_hanging_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_hanging_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_warped_stem","label":"Palette proche: Stripped Warped Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_hanging_sign","label":"Palette proche: Warped Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wall_hanging_sign","label":"Palette proche: Warped Wall Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.906},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.875},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.875},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.875},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.875},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.875},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.875},{"type":"color_neighbors","target":"minecraft:warped_slab","label":"Palette proche: Warped Slab","confidence":0.875},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.762},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.762},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.736},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.692},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.692},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.692},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.678},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.678},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.676},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.676},{"type":"color_analogous","target":"minecraft:warped_door","label":"Couleurs analogues: Warped Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine","label":"Couleurs analogues: Prismarine","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine_slab","label":"Couleurs analogues: Prismarine Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine_stairs","label":"Couleurs analogues: Prismarine Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:prismarine_wall","label":"Couleurs analogues: Prismarine Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.957},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.957},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.957},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.959},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.959},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.959},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.959},{"type":"color_complement","target":"minecraft:crimson_hyphae","label":"Contraste complementaire: Crimson Hyphae","confidence":0.954},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.942},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.918},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.913},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.894},{"type":"color_triad","target":"minecraft:turtle_egg","label":"Harmonie triadique: Turtle Egg","confidence":0.879},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.869},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.835},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.829},{"type":"color_square","target":"minecraft:lime_stained_glass_pane","label":"Harmonie carree: Lime Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:nether_portal","label":"Harmonie carree: Nether Portal","confidence":0.96},{"type":"color_square","target":"minecraft:oak_sapling","label":"Harmonie carree: Oak Sapling","confidence":0.955},{"type":"color_square","target":"minecraft:potted_oak_sapling","label":"Harmonie carree: Potted Oak Sapling","confidence":0.955},{"type":"color_square","target":"minecraft:lime_stained_glass","label":"Harmonie carree: Lime Stained Glass","confidence":0.955},{"type":"color_square","target":"minecraft:lime_concrete_powder","label":"Harmonie carree: Lime Concrete Powder","confidence":0.954},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.952},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.952},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.571},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.57},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.57},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.551},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55}],"category":""},{"id":"minecraft:warped_sign","name":"Warped Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#2b6963","dominant_hex":"#285a54","average_hex":"#2b6963","hue_group":"cyan","lightness":0.2902,"saturation":0.4189,"palette":["#285a54","#3c8484","#2c7464","#3c8c8c","#143c34","#1c4444"],"color_groups":[{"hex":"#285a54","weight":0.2539,"lightness":0.2549,"saturation":0.3846,"hue_group":"cyan"},{"hex":"#3c8484","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#2c7464","weight":0.1875,"lightness":0.3137,"saturation":0.45,"hue_group":"cyan"},{"hex":"#3c8c8c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"cyan"},{"hex":"#143c34","weight":0.1133,"lightness":0.1569,"saturation":0.5,"hue_group":"cyan"},{"hex":"#1c4444","weight":0.0938,"lightness":0.1882,"saturation":0.4167,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_planks.png","family":"warped_sign","relations":[{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_pressure_plate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_slab","label":"Palette proche: Warped Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_stairs","label":"Palette proche: Warped Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wall_sign","label":"Palette proche: Warped Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.875},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.865},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.759},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.721},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.712},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.709},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.709},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.687},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_planks","label":"Couleurs analogues: Warped Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_pressure_plate","label":"Couleurs analogues: Warped Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_slab","label":"Couleurs analogues: Warped Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_stairs","label":"Couleurs analogues: Warped Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_wall_sign","label":"Couleurs analogues: Warped Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.925},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.916},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.958},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.917},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.899},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.883},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.846},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.844},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.96},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_block","label":"Harmonie carree: Amethyst Block","confidence":0.96},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.96},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.651},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.65},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.65},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.635},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.601},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.587},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.587},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.579}],"category":"building"},{"id":"minecraft:warped_slab","name":"Warped Slab","entry_type":"block","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","history":[{"version":"1.7.2 1.7","status":"added","notes":"Added acacia and dark oak slabs."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped slabs."}],"colors":{"primary":"#2b6963","dominant_hex":"#285a54","average_hex":"#2b6963","hue_group":"cyan","lightness":0.2902,"saturation":0.4189,"palette":["#285a54","#3c8484","#2c7464","#3c8c8c","#143c34","#1c4444"],"color_groups":[{"hex":"#285a54","weight":0.2539,"lightness":0.2549,"saturation":0.3846,"hue_group":"cyan"},{"hex":"#3c8484","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#2c7464","weight":0.1875,"lightness":0.3137,"saturation":0.45,"hue_group":"cyan"},{"hex":"#3c8c8c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"cyan"},{"hex":"#143c34","weight":0.1133,"lightness":0.1569,"saturation":0.5,"hue_group":"cyan"},{"hex":"#1c4444","weight":0.0938,"lightness":0.1882,"saturation":0.4167,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_planks.png","family":"warped","relations":[{"type":"variants","target":"minecraft:warped_door","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_door","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_fence","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_fence","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_planks","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_planks","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_stairs","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_stairs","label":"Related set: warped","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_pressure_plate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_stairs","label":"Palette proche: Warped Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wall_sign","label":"Palette proche: Warped Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.875},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.865},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.759},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.721},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.712},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.709},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.709},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.687},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_planks","label":"Couleurs analogues: Warped Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_pressure_plate","label":"Couleurs analogues: Warped Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_sign","label":"Couleurs analogues: Warped Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_stairs","label":"Couleurs analogues: Warped Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_wall_sign","label":"Couleurs analogues: Warped Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.925},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.916},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.958},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.917},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.899},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.883},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.846},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.844},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.96},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_block","label":"Harmonie carree: Amethyst Block","confidence":0.96},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.96},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.651},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.65},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.65},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.635},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.601},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.587},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.587},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.579}],"category":"building"},{"id":"minecraft:warped_stairs","name":"Warped Stairs","entry_type":"block","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","history":[{"version":"20100629","status":"added","notes":"Added \"wooden\" stairs."},{"version":"1.3.1 12w25a","status":"added","notes":"Added wooden stairs for the remaining three wood types (spruce, birch, and jungle)."},{"version":"12w26a","status":"added","notes":"Added crafting recipes for spruce, birch, and jungle wood stairs."}],"colors":{"primary":"#2b6963","dominant_hex":"#285a54","average_hex":"#2b6963","hue_group":"cyan","lightness":0.2902,"saturation":0.4189,"palette":["#285a54","#3c8484","#2c7464","#3c8c8c","#143c34","#1c4444"],"color_groups":[{"hex":"#285a54","weight":0.2539,"lightness":0.2549,"saturation":0.3846,"hue_group":"cyan"},{"hex":"#3c8484","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#2c7464","weight":0.1875,"lightness":0.3137,"saturation":0.45,"hue_group":"cyan"},{"hex":"#3c8c8c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"cyan"},{"hex":"#143c34","weight":0.1133,"lightness":0.1569,"saturation":0.5,"hue_group":"cyan"},{"hex":"#1c4444","weight":0.0938,"lightness":0.1882,"saturation":0.4167,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_planks.png","family":"warped","relations":[{"type":"variants","target":"minecraft:warped_door","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_door","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_fence","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_fence","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_planks","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_planks","label":"Related set: warped","confidence":0.8},{"type":"variants","target":"minecraft:warped_slab","label":"Same family: warped","confidence":0.75},{"type":"related_sets","target":"minecraft:warped_slab","label":"Related set: warped","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_pressure_plate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_slab","label":"Palette proche: Warped Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wall_sign","label":"Palette proche: Warped Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.875},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.865},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.759},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.721},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.712},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.709},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.709},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.687},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_planks","label":"Couleurs analogues: Warped Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_pressure_plate","label":"Couleurs analogues: Warped Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_sign","label":"Couleurs analogues: Warped Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_slab","label":"Couleurs analogues: Warped Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_wall_sign","label":"Couleurs analogues: Warped Wall Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.925},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.916},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.958},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.917},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.899},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.883},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.846},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.844},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.96},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_block","label":"Harmonie carree: Amethyst Block","confidence":0.96},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.96},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.651},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.65},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.65},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.635},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.601},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.587},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.587},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.579}],"category":"building"},{"id":"minecraft:warped_stem","name":"Warped Stem","entry_type":"block","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","history":[{"version":"0.0.14a","status":"added","notes":"Added wood."},{"version":"1.2","status":"added","notes":"Added spruce and birch wood."},{"version":"wiki-history","status":"added","notes":"Added \"Getting Wood\" achievement for picking up a wood item ."}],"colors":{"primary":"#3a3b4e","dominant_hex":"#442c5c","average_hex":"#3a3b4e","hue_group":"blue","lightness":0.2667,"saturation":0.1471,"palette":["#442c5c","#442434","#4c2434","#14645c","#147b69","#542c3c"],"color_groups":[{"hex":"#442c5c","weight":0.3164,"lightness":0.2667,"saturation":0.3529,"hue_group":"purple"},{"hex":"#442434","weight":0.1758,"lightness":0.2039,"saturation":0.3077,"hue_group":"red"},{"hex":"#4c2434","weight":0.1523,"lightness":0.2196,"saturation":0.3571,"hue_group":"red"},{"hex":"#14645c","weight":0.1492,"lightness":0.2353,"saturation":0.6667,"hue_group":"cyan"},{"hex":"#147b69","weight":0.1203,"lightness":0.2804,"saturation":0.7203,"hue_group":"cyan"},{"hex":"#542c3c","weight":0.0859,"lightness":0.251,"saturation":0.3125,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_stem.png","family":"warped_stem","relations":[{"type":"visual_neighbors","target":"minecraft:warped_hyphae","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chain","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_terracotta","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_candle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete_powder","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spawner","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lapis_ore","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_concrete","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:respawn_anchor","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_gateway","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal","label":"Shared hue group: blue","confidence":0.55},{"type":"color_neighbors","target":"minecraft:warped_hyphae","label":"Palette proche: Warped Hyphae","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.741},{"type":"color_neighbors","target":"minecraft:blue_terracotta","label":"Palette proche: Blue Terracotta","confidence":0.731},{"type":"color_neighbors","target":"minecraft:potted_warped_fungus","label":"Palette proche: Potted Warped Fungus","confidence":0.705},{"type":"color_neighbors","target":"minecraft:warped_fungus","label":"Palette proche: Warped Fungus","confidence":0.705},{"type":"color_neighbors","target":"minecraft:cherry_log","label":"Palette proche: Cherry Log","confidence":0.699},{"type":"color_neighbors","target":"minecraft:cherry_wood","label":"Palette proche: Cherry Wood","confidence":0.699},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_slab","label":"Palette proche: Polished Blackstone Brick Slab","confidence":0.638},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_stairs","label":"Palette proche: Polished Blackstone Brick Stairs","confidence":0.638},{"type":"color_neighbors","target":"minecraft:polished_blackstone_brick_wall","label":"Palette proche: Polished Blackstone Brick Wall","confidence":0.638},{"type":"color_neighbors","target":"minecraft:polished_blackstone_bricks","label":"Palette proche: Polished Blackstone Bricks","confidence":0.638},{"type":"color_neighbors","target":"minecraft:cracked_polished_blackstone_bricks","label":"Palette proche: Cracked Polished Blackstone Bricks","confidence":0.636},{"type":"color_bridge","target":"minecraft:warped_hyphae","label":"Pont de nuance par palette: Warped Hyphae","confidence":0.86},{"type":"color_bridge","target":"minecraft:cyan_candle","label":"Pont de nuance par sous-ton: Cyan Candle","confidence":0.786},{"type":"color_bridge","target":"minecraft:blue_terracotta","label":"Pont de nuance par palette: Blue Terracotta","confidence":0.778},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par palette: Potted Warped Fungus","confidence":0.757},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par palette: Warped Fungus","confidence":0.757},{"type":"color_bridge","target":"minecraft:cherry_log","label":"Pont de nuance par sous-ton: Cherry Log","confidence":0.752},{"type":"color_bridge","target":"minecraft:cherry_wood","label":"Pont de nuance par sous-ton: Cherry Wood","confidence":0.752},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_slab","label":"Pont de nuance par palette: Polished Blackstone Brick Slab","confidence":0.702},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_stairs","label":"Pont de nuance par palette: Polished Blackstone Brick Stairs","confidence":0.702},{"type":"color_bridge","target":"minecraft:polished_blackstone_brick_wall","label":"Pont de nuance par palette: Polished Blackstone Brick Wall","confidence":0.702},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.673},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.658},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.657},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.657},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.64},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.621},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.621},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.621}],"category":"natural"},{"id":"minecraft:warped_trapdoor","name":"Warped Trapdoor","entry_type":"block","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","history":[{"version":"1.6","status":"added","notes":"Added wooden trapdoors."},{"version":"18w11a","status":"added","notes":"added shipwrecks ."},{"version":"1.16 20w06a","status":"added","notes":"Added crimson and warped trapdoors."}],"colors":{"primary":"#2f7870","dominant_hex":"#2c5c54","average_hex":"#2f7870","hue_group":"cyan","lightness":0.3275,"saturation":0.4371,"palette":["#2c5c54","#349c94","#1c5454","#3c8484","#3c8c8c","#2c7464"],"color_groups":[{"hex":"#2c5c54","weight":0.2139,"lightness":0.2667,"saturation":0.3529,"hue_group":"cyan"},{"hex":"#349c94","weight":0.204,"lightness":0.4078,"saturation":0.5,"hue_group":"cyan"},{"hex":"#1c5454","weight":0.1891,"lightness":0.2196,"saturation":0.5,"hue_group":"cyan"},{"hex":"#3c8484","weight":0.1493,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#3c8c8c","weight":0.1294,"lightness":0.3922,"saturation":0.4,"hue_group":"cyan"},{"hex":"#2c7464","weight":0.1144,"lightness":0.3137,"saturation":0.45,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_trapdoor.png","family":"warped_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_pressure_plate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_wall_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_slab","label":"Palette proche: Warped Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_stairs","label":"Palette proche: Warped Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_wall_sign","label":"Palette proche: Warped Wall Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.906},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.896},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.786},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.786},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.759},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.708},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.707},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.707},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.7},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.7},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.696},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.687},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_planks","label":"Couleurs analogues: Warped Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_pressure_plate","label":"Couleurs analogues: Warped Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_sign","label":"Couleurs analogues: Warped Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_slab","label":"Couleurs analogues: Warped Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_stairs","label":"Couleurs analogues: Warped Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.946},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.938},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.938},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.901},{"type":"color_complement","target":"minecraft:cactus_flower","label":"Contraste complementaire: Cactus Flower","confidence":0.899},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.892},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.892},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.892},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.945},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.911},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.875},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.874},{"type":"color_triad","target":"minecraft:horn_coral_wall_fan","label":"Harmonie triadique: Horn Coral Wall Fan","confidence":0.874},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.871},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_block","label":"Harmonie carree: Amethyst Block","confidence":0.96},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.96},{"type":"color_square","target":"minecraft:oxeye_daisy","label":"Harmonie carree: Oxeye Daisy","confidence":0.96},{"type":"color_square","target":"minecraft:potted_oxeye_daisy","label":"Harmonie carree: Potted Oxeye Daisy","confidence":0.96},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.949},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.949},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.948},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.615},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.614},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.614},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.599},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.566},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.551},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.551},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55}],"category":"building"},{"id":"minecraft:warped_wall_hanging_sign","name":"Warped Wall Hanging Sign","entry_type":"block","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","history":[{"version":"1.19.3","status":"added","notes":"Added hanging signs."},{"version":"wiki-history","status":"added","notes":"Added unique sounds for Nether and bamboo wood hanging signs."},{"version":"1.19.4","status":"added","notes":"Added cherry hanging signs behind the \" Update 1.20 \" experimental data pack ."}],"colors":{"primary":"#3a9794","dominant_hex":"#3c9c94","average_hex":"#3a9794","hue_group":"cyan","lightness":0.4098,"saturation":0.445,"palette":["#3c9c94","#43a59d","#348c8c","#348c84","#34948c","#2c847c"],"color_groups":[{"hex":"#3c9c94","weight":0.3203,"lightness":0.4235,"saturation":0.4444,"hue_group":"cyan"},{"hex":"#43a59d","weight":0.293,"lightness":0.4549,"saturation":0.4224,"hue_group":"cyan"},{"hex":"#348c8c","weight":0.1719,"lightness":0.3765,"saturation":0.4583,"hue_group":"cyan"},{"hex":"#348c84","weight":0.0898,"lightness":0.3765,"saturation":0.4583,"hue_group":"cyan"},{"hex":"#34948c","weight":0.0664,"lightness":0.3922,"saturation":0.48,"hue_group":"cyan"},{"hex":"#2c847c","weight":0.0586,"lightness":0.3451,"saturation":0.5,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/stripped_warped_stem.png","family":"warped_wall_hanging_sign","relations":[{"type":"visual_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_warped_stem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_hanging_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_shelf","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_blue_orchid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.94},{"type":"color_neighbors","target":"minecraft:stripped_warped_stem","label":"Palette proche: Stripped Warped Stem","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_hanging_sign","label":"Palette proche: Warped Hanging Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.896},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.875},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.865},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.865},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.746},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.741},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.715},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.678},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.678},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.664},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.664},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.66},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.66},{"type":"color_analogous","target":"minecraft:stripped_warped_hyphae","label":"Couleurs analogues: Stripped Warped Hyphae","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_warped_stem","label":"Couleurs analogues: Stripped Warped Stem","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_hanging_sign","label":"Couleurs analogues: Warped Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_shelf","label":"Couleurs analogues: Warped Shelf","confidence":0.933},{"type":"color_analogous","target":"minecraft:warped_door","label":"Couleurs analogues: Warped Door","confidence":0.931},{"type":"color_analogous","target":"minecraft:cyan_candle","label":"Couleurs analogues: Cyan Candle","confidence":0.93},{"type":"color_analogous","target":"minecraft:warped_wart_block","label":"Couleurs analogues: Warped Wart Block","confidence":0.918},{"type":"color_analogous","target":"minecraft:beacon","label":"Couleurs analogues: Beacon","confidence":0.914},{"type":"color_complement","target":"minecraft:nether_wart","label":"Contraste complementaire: Nether Wart","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_brick_slab","label":"Contraste complementaire: Red Nether Brick Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_brick_stairs","label":"Contraste complementaire: Red Nether Brick Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_brick_wall","label":"Contraste complementaire: Red Nether Brick Wall","confidence":0.96},{"type":"color_complement","target":"minecraft:red_nether_bricks","label":"Contraste complementaire: Red Nether Bricks","confidence":0.96},{"type":"color_complement","target":"minecraft:black_glazed_terracotta","label":"Contraste complementaire: Black Glazed Terracotta","confidence":0.954},{"type":"color_complement","target":"minecraft:pink_terracotta","label":"Contraste complementaire: Pink Terracotta","confidence":0.95},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.948},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.96},{"type":"color_triad","target":"minecraft:turtle_egg","label":"Harmonie triadique: Turtle Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.95},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.932},{"type":"color_triad","target":"minecraft:potted_acacia_sapling","label":"Harmonie triadique: Potted Acacia Sapling","confidence":0.932},{"type":"color_triad","target":"minecraft:chorus_plant","label":"Harmonie triadique: Chorus Plant","confidence":0.91},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.904},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.899},{"type":"color_square","target":"minecraft:sugar_cane","label":"Harmonie carree: Sugar Cane","confidence":0.96},{"type":"color_square","target":"minecraft:medium_amethyst_bud","label":"Harmonie carree: Medium Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:large_amethyst_bud","label":"Harmonie carree: Large Amethyst Bud","confidence":0.96},{"type":"color_square","target":"minecraft:azure_bluet","label":"Harmonie carree: Azure Bluet","confidence":0.96},{"type":"color_square","target":"minecraft:potted_azure_bluet","label":"Harmonie carree: Potted Azure Bluet","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_cluster","label":"Harmonie carree: Amethyst Cluster","confidence":0.96},{"type":"color_square","target":"minecraft:allium","label":"Harmonie carree: Allium","confidence":0.96},{"type":"color_square","target":"minecraft:potted_allium","label":"Harmonie carree: Potted Allium","confidence":0.96},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.55}],"category":"building"},{"id":"minecraft:warped_wall_sign","name":"Warped Wall Sign","entry_type":"block","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","history":[{"version":"v1.0.1","status":"added","notes":"Added wall signs."},{"version":"1.8 14w25a","status":"added","notes":"Added support for JSON text to signs."},{"version":"wiki-history","status":"added","notes":"Added spruce, birch, jungle, acacia and dark oak signs."}],"colors":{"primary":"#2b6963","dominant_hex":"#285a54","average_hex":"#2b6963","hue_group":"cyan","lightness":0.2902,"saturation":0.4189,"palette":["#285a54","#3c8484","#2c7464","#3c8c8c","#143c34","#1c4444"],"color_groups":[{"hex":"#285a54","weight":0.2539,"lightness":0.2549,"saturation":0.3846,"hue_group":"cyan"},{"hex":"#3c8484","weight":0.2031,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#2c7464","weight":0.1875,"lightness":0.3137,"saturation":0.45,"hue_group":"cyan"},{"hex":"#3c8c8c","weight":0.1484,"lightness":0.3922,"saturation":0.4,"hue_group":"cyan"},{"hex":"#143c34","weight":0.1133,"lightness":0.1569,"saturation":0.5,"hue_group":"cyan"},{"hex":"#1c4444","weight":0.0938,"lightness":0.1882,"saturation":0.4167,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_planks.png","family":"warped_wall_sign","relations":[{"type":"visual_neighbors","target":"minecraft:warped_button","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fence_gate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_planks","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_pressure_plate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_sign","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_nylium","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:warped_button","label":"Palette proche: Warped Button","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence","label":"Palette proche: Warped Fence","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_fence_gate","label":"Palette proche: Warped Fence Gate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_planks","label":"Palette proche: Warped Planks","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_pressure_plate","label":"Palette proche: Warped Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_sign","label":"Palette proche: Warped Sign","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_slab","label":"Palette proche: Warped Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_stairs","label":"Palette proche: Warped Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_trapdoor","label":"Palette proche: Warped Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_door","label":"Palette proche: Warped Door","confidence":0.937},{"type":"color_neighbors","target":"minecraft:warped_shelf","label":"Palette proche: Warped Shelf","confidence":0.875},{"type":"color_neighbors","target":"minecraft:stripped_warped_hyphae","label":"Palette proche: Stripped Warped Hyphae","confidence":0.865},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.782},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.759},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.721},{"type":"color_bridge","target":"minecraft:vault","label":"Pont de nuance par sous-ton: Vault","confidence":0.712},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.709},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.709},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.699},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.687},{"type":"color_analogous","target":"minecraft:warped_button","label":"Couleurs analogues: Warped Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence","label":"Couleurs analogues: Warped Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_fence_gate","label":"Couleurs analogues: Warped Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_planks","label":"Couleurs analogues: Warped Planks","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_pressure_plate","label":"Couleurs analogues: Warped Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_sign","label":"Couleurs analogues: Warped Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_slab","label":"Couleurs analogues: Warped Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:warped_stairs","label":"Couleurs analogues: Warped Stairs","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_fan","label":"Contraste complementaire: Fire Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_wall_fan","label":"Contraste complementaire: Fire Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral_block","label":"Contraste complementaire: Fire Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:fire_coral","label":"Contraste complementaire: Fire Coral","confidence":0.925},{"type":"color_complement","target":"minecraft:cherry_hanging_sign","label":"Contraste complementaire: Cherry Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:cherry_wall_hanging_sign","label":"Contraste complementaire: Cherry Wall Hanging Sign","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_log","label":"Contraste complementaire: Stripped Cherry Log","confidence":0.916},{"type":"color_complement","target":"minecraft:stripped_cherry_wood","label":"Contraste complementaire: Stripped Cherry Wood","confidence":0.916},{"type":"color_triad","target":"minecraft:firefly_bush","label":"Harmonie triadique: Firefly Bush","confidence":0.96},{"type":"color_triad","target":"minecraft:horn_coral_block","label":"Harmonie triadique: Horn Coral Block","confidence":0.958},{"type":"color_triad","target":"minecraft:orange_glazed_terracotta","label":"Harmonie triadique: Orange Glazed Terracotta","confidence":0.917},{"type":"color_triad","target":"minecraft:bamboo_sapling","label":"Harmonie triadique: Bamboo Sapling","confidence":0.899},{"type":"color_triad","target":"minecraft:bone_block","label":"Harmonie triadique: Bone Block","confidence":0.883},{"type":"color_triad","target":"minecraft:sponge","label":"Harmonie triadique: Sponge","confidence":0.846},{"type":"color_triad","target":"minecraft:horn_coral","label":"Harmonie triadique: Horn Coral","confidence":0.844},{"type":"color_triad","target":"minecraft:horn_coral_fan","label":"Harmonie triadique: Horn Coral Fan","confidence":0.843},{"type":"color_square","target":"minecraft:potted_red_tulip","label":"Harmonie carree: Potted Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:red_tulip","label":"Harmonie carree: Red Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:respawn_anchor","label":"Harmonie carree: Respawn Anchor","confidence":0.96},{"type":"color_square","target":"minecraft:birch_sapling","label":"Harmonie carree: Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_birch_sapling","label":"Harmonie carree: Potted Birch Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:bamboo","label":"Harmonie carree: Bamboo","confidence":0.96},{"type":"color_square","target":"minecraft:amethyst_block","label":"Harmonie carree: Amethyst Block","confidence":0.96},{"type":"color_square","target":"minecraft:budding_amethyst","label":"Harmonie carree: Budding Amethyst","confidence":0.96},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.651},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.65},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.65},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.635},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.601},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.587},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.587},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.579}],"category":"building"},{"id":"minecraft:warped_wart_block","name":"Warped Wart Block","entry_type":"block","description":"Warped wart blocks are a decorative block found in warped forests, generating as part of huge warped fungus.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added warped wart blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb warped wart blocks, providing the curling stone/slow sliding effect to the mob."}],"colors":{"primary":"#177879","dominant_hex":"#147c84","average_hex":"#177879","hue_group":"cyan","lightness":0.2824,"saturation":0.6806,"palette":["#147c84","#1c6464","#1c6c6c","#149c84","#14b484"],"color_groups":[{"hex":"#147c84","weight":0.4961,"lightness":0.298,"saturation":0.7368,"hue_group":"cyan"},{"hex":"#1c6464","weight":0.2344,"lightness":0.251,"saturation":0.5625,"hue_group":"cyan"},{"hex":"#1c6c6c","weight":0.1914,"lightness":0.2667,"saturation":0.5882,"hue_group":"cyan"},{"hex":"#149c84","weight":0.043,"lightness":0.3451,"saturation":0.7727,"hue_group":"cyan"},{"hex":"#14b484","weight":0.0352,"lightness":0.3922,"saturation":0.8,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/warped_wart_block.png","family":"warped_wart_block","relations":[{"type":"visual_neighbors","target":"minecraft:cyan_concrete","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_shulker_box","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines_plant","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_roots","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_carpet","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_wool","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:twisting_vines","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:void_air","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:nether_sprouts","label":"Palette proche: Nether Sprouts","confidence":0.94},{"type":"color_neighbors","target":"minecraft:twisting_vines","label":"Palette proche: Twisting Vines","confidence":0.94},{"type":"color_neighbors","target":"minecraft:warped_roots","label":"Palette proche: Warped Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:potted_warped_roots","label":"Palette proche: Potted Warped Roots","confidence":0.94},{"type":"color_neighbors","target":"minecraft:twisting_vines_plant","label":"Palette proche: Twisting Vines Plant","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_carpet","label":"Palette proche: Cyan Carpet","confidence":0.906},{"type":"color_neighbors","target":"minecraft:cyan_wool","label":"Palette proche: Cyan Wool","confidence":0.906},{"type":"color_neighbors","target":"minecraft:cyan_shulker_box","label":"Palette proche: Cyan Shulker Box","confidence":0.895},{"type":"color_neighbors","target":"minecraft:cyan_concrete","label":"Palette proche: Cyan Concrete","confidence":0.891},{"type":"color_neighbors","target":"minecraft:cyan_candle","label":"Palette proche: Cyan Candle","confidence":0.853},{"type":"color_neighbors","target":"minecraft:structure_void","label":"Palette proche: Structure Void","confidence":0.812},{"type":"color_neighbors","target":"minecraft:cyan_concrete_powder","label":"Palette proche: Cyan Concrete Powder","confidence":0.811},{"type":"color_bridge","target":"minecraft:potted_warped_fungus","label":"Pont de nuance par sous-ton: Potted Warped Fungus","confidence":0.737},{"type":"color_bridge","target":"minecraft:warped_fungus","label":"Pont de nuance par sous-ton: Warped Fungus","confidence":0.737},{"type":"color_bridge","target":"minecraft:lapis_block","label":"Pont de nuance par palette: Lapis Block","confidence":0.649},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.629},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.629},{"type":"color_bridge","target":"minecraft:gray_concrete","label":"Pont de nuance par palette: Gray Concrete","confidence":0.619},{"type":"color_bridge","target":"minecraft:gray_carpet","label":"Pont de nuance par palette: Gray Carpet","confidence":0.61},{"type":"color_bridge","target":"minecraft:gray_wool","label":"Pont de nuance par palette: Gray Wool","confidence":0.61},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.602},{"type":"color_bridge","target":"minecraft:gray_shulker_box","label":"Pont de nuance par palette: Gray Shulker Box","confidence":0.585},{"type":"color_analogous","target":"minecraft:cyan_candle","label":"Couleurs analogues: Cyan Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:calibrated_sculk_sensor","label":"Couleurs analogues: Calibrated Sculk Sensor","confidence":0.96},{"type":"color_analogous","target":"minecraft:sculk_sensor","label":"Couleurs analogues: Sculk Sensor","confidence":0.96},{"type":"color_analogous","target":"minecraft:soul_fire","label":"Couleurs analogues: Soul Fire","confidence":0.936},{"type":"color_analogous","target":"minecraft:cyan_carpet","label":"Couleurs analogues: Cyan Carpet","confidence":0.93},{"type":"color_analogous","target":"minecraft:cyan_wool","label":"Couleurs analogues: Cyan Wool","confidence":0.93},{"type":"color_analogous","target":"minecraft:blue_orchid","label":"Couleurs analogues: Blue Orchid","confidence":0.92},{"type":"color_analogous","target":"minecraft:potted_blue_orchid","label":"Couleurs analogues: Potted Blue Orchid","confidence":0.92},{"type":"color_complement","target":"minecraft:crimson_nylium","label":"Contraste complementaire: Crimson Nylium","confidence":0.96},{"type":"color_complement","target":"minecraft:red_shulker_box","label":"Contraste complementaire: Red Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:red_concrete","label":"Contraste complementaire: Red Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:red_candle","label":"Contraste complementaire: Red Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:red_stained_glass_pane","label":"Contraste complementaire: Red Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:red_stained_glass","label":"Contraste complementaire: Red Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:nether_wart_block","label":"Contraste complementaire: Nether Wart Block","confidence":0.96},{"type":"color_complement","target":"minecraft:red_mushroom_block","label":"Contraste complementaire: Red Mushroom Block","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_fan","label":"Harmonie triadique: Bubble Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie triadique: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral","label":"Harmonie triadique: Bubble Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_block","label":"Harmonie triadique: Bubble Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie triadique: Yellow Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_stained_glass","label":"Harmonie triadique: Yellow Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:acacia_sapling","label":"Harmonie triadique: Acacia Sapling","confidence":0.951},{"type":"color_triad","target":"minecraft:potted_acacia_sapling","label":"Harmonie triadique: Potted Acacia Sapling","confidence":0.951},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.96},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.959},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.959},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.959},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.946},{"type":"color_square","target":"minecraft:lime_shulker_box","label":"Harmonie carree: Lime Shulker Box","confidence":0.934},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.667},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.667},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.66},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.634},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.6},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.587},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.587},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.578}],"category":""},{"id":"minecraft:water","name":"Water","entry_type":"block","description":"Water is a fluid that naturally generates abundantly in the Overworld.","history":[{"version":"wiki-history","status":"added","notes":"Added water."},{"version":"0.0.19a","status":"added","notes":"Added procedural animated texture to water. The old texture is retained for use as a placeholder ."},{"version":"wiki-history","status":"added","notes":"Added sponges , which remove water."}],"colors":{"primary":"#b1b1b1","dominant_hex":"#a4a4a4","average_hex":"#b1b1b1","hue_group":"neutral","lightness":0.6941,"saturation":0.0,"palette":["#a4a4a4","#acacac","#c4c4c4","#d4d4d4","#fcfcfc","#cccccc"],"color_groups":[{"hex":"#a4a4a4","weight":0.4027,"lightness":0.6431,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.3807,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#c4c4c4","weight":0.1382,"lightness":0.7686,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d4d4d4","weight":0.045,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.0255,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#cccccc","weight":0.0078,"lightness":0.8,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/water_still.png","family":"water","relations":[{"type":"visual_neighbors","target":"minecraft:bubble_column","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leaf_litter","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diorite_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:smooth_stone_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_diorite_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.94},{"type":"color_neighbors","target":"minecraft:leaf_litter","label":"Palette proche: Leaf Litter","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone","label":"Palette proche: Smooth Stone","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_stone_slab","label":"Palette proche: Smooth Stone Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_trapdoor","label":"Palette proche: Iron Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.936},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.936},{"type":"color_neighbors","target":"minecraft:light_gray_stained_glass","label":"Palette proche: Light Gray Stained Glass","confidence":0.933},{"type":"color_neighbors","target":"minecraft:grass_block","label":"Palette proche: Grass Block","confidence":0.93},{"type":"color_neighbors","target":"minecraft:diorite","label":"Palette proche: Diorite","confidence":0.919},{"type":"color_neighbors","target":"minecraft:diorite_slab","label":"Palette proche: Diorite Slab","confidence":0.919},{"type":"color_bridge","target":"minecraft:bubble_column","label":"Pont de nuance par palette: Bubble Column","confidence":0.86},{"type":"color_bridge","target":"minecraft:leaf_litter","label":"Pont de nuance par palette: Leaf Litter","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone","label":"Pont de nuance par palette: Smooth Stone","confidence":0.86},{"type":"color_bridge","target":"minecraft:smooth_stone_slab","label":"Pont de nuance par palette: Smooth Stone Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_trapdoor","label":"Pont de nuance par palette: Iron Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_stained_glass","label":"Pont de nuance par palette: Light Gray Stained Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:grass_block","label":"Pont de nuance par palette: Grass Block","confidence":0.86},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.599},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.591},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.586},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.569},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.566},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.565},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.565},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.565}],"category":""},{"id":"minecraft:water_bucket","name":"Water Bucket","entry_type":"item","description":"A water bucket is a bucket filled with water.","history":[{"version":"20100615","status":"added","notes":"Added water buckets."},{"version":"15w50a","status":"added","notes":"Added sounds for collecting and pouring water using a bucket."}],"colors":{"primary":"#6f768a","dominant_hex":"#343434","average_hex":"#6f768a","hue_group":"neutral","lightness":0.4882,"saturation":0.1084,"palette":["#343434","#3861de","#e1e1e1","#969696","#acacac","#767676"],"color_groups":[{"hex":"#343434","weight":0.3288,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3861de","weight":0.1644,"lightness":0.5451,"saturation":0.7155,"hue_group":"blue"},{"hex":"#e1e1e1","weight":0.1438,"lightness":0.8824,"saturation":0.0,"hue_group":"neutral"},{"hex":"#969696","weight":0.1233,"lightness":0.5882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#acacac","weight":0.1233,"lightness":0.6745,"saturation":0.0,"hue_group":"neutral"},{"hex":"#767676","weight":0.1164,"lightness":0.4627,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/water_bucket.png","family":"water_bucket","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:clay_ball","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trident","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wild_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stray_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:water_cauldron","name":"Water Cauldron","entry_type":"block","description":"A cauldron is a block that can contain water, lava or powder snow and, in certain situations, collect them from the environment. In Bedrock Edition, it can also hold dyed water or potions, and can be used to efficiently create tipped arrows. It also serves as a leatherworker's job site block.","history":[{"version":"wiki","status":"observed","notes":"Wiki revision 3526851 at 2026-04-10T12:08:59Z."}],"colors":{"primary":"#4a494a","dominant_hex":"#4c4c4c","average_hex":"#4a494a","hue_group":"neutral","lightness":0.2882,"saturation":0.0068,"palette":["#4c4c4c","#5c5c5c","#34343c","#3c3c44","#646464","#2c2c34"],"color_groups":[{"hex":"#4c4c4c","weight":0.4167,"lightness":0.298,"saturation":0.0,"hue_group":"neutral"},{"hex":"#5c5c5c","weight":0.1538,"lightness":0.3608,"saturation":0.0,"hue_group":"neutral"},{"hex":"#34343c","weight":0.1474,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#3c3c44","weight":0.1282,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"},{"hex":"#646464","weight":0.0962,"lightness":0.3922,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c34","weight":0.0577,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cauldron_top.png","family":"water_cauldron","relations":[{"type":"visual_neighbors","target":"minecraft:cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_cauldron","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_slab","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_stairs","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polished_deepslate_wall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chipped_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_coal_ore","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hopper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:damaged_anvil","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cauldron","label":"Palette proche: Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lava_cauldron","label":"Palette proche: Lava Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:powder_snow_cauldron","label":"Palette proche: Powder Snow Cauldron","confidence":0.94},{"type":"color_neighbors","target":"minecraft:hopper","label":"Palette proche: Hopper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate","label":"Palette proche: Cobbled Deepslate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_slab","label":"Palette proche: Cobbled Deepslate Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_stairs","label":"Palette proche: Cobbled Deepslate Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cobbled_deepslate_wall","label":"Palette proche: Cobbled Deepslate Wall","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blast_furnace","label":"Palette proche: Blast Furnace","confidence":0.94},{"type":"color_neighbors","target":"minecraft:basalt","label":"Palette proche: Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:smooth_basalt","label":"Palette proche: Smooth Basalt","confidence":0.94},{"type":"color_neighbors","target":"minecraft:deepslate","label":"Palette proche: Deepslate","confidence":0.94},{"type":"color_bridge","target":"minecraft:cauldron","label":"Pont de nuance par palette: Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:lava_cauldron","label":"Pont de nuance par palette: Lava Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:powder_snow_cauldron","label":"Pont de nuance par palette: Powder Snow Cauldron","confidence":0.86},{"type":"color_bridge","target":"minecraft:hopper","label":"Pont de nuance par palette: Hopper","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate","label":"Pont de nuance par palette: Cobbled Deepslate","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_slab","label":"Pont de nuance par palette: Cobbled Deepslate Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_stairs","label":"Pont de nuance par palette: Cobbled Deepslate Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobbled_deepslate_wall","label":"Pont de nuance par palette: Cobbled Deepslate Wall","confidence":0.86},{"type":"color_bridge","target":"minecraft:blast_furnace","label":"Pont de nuance par palette: Blast Furnace","confidence":0.86},{"type":"color_bridge","target":"minecraft:basalt","label":"Pont de nuance par palette: Basalt","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.666},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.633},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.624},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.623},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.623},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.61},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.606},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.606}],"category":""},{"id":"minecraft:waxed_chiseled_copper","name":"Waxed Chiseled Copper","entry_type":"block","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","history":[{"version":"1.20.3","status":"added","notes":"Added chiseled copper behind the \" Update 1.21 \" experimental data pack."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiseled copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#b8654a","dominant_hex":"#c46c4c","average_hex":"#b8654a","hue_group":"red","lightness":0.5059,"saturation":0.4365,"palette":["#c46c4c","#e08268","#944c34","#9c543c","#a45c44","#b46444"],"color_groups":[{"hex":"#c46c4c","weight":0.3281,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"},{"hex":"#e08268","weight":0.2109,"lightness":0.6431,"saturation":0.6593,"hue_group":"red"},{"hex":"#944c34","weight":0.1406,"lightness":0.3922,"saturation":0.48,"hue_group":"red"},{"hex":"#9c543c","weight":0.1211,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#a45c44","weight":0.1055,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#b46444","weight":0.0938,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/chiseled_copper.png","family":"waxed_chiseled_copper","relations":[{"type":"visual_neighbors","target":"minecraft:chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:chiseled_copper","label":"Palette proche: Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chest","label":"Palette proche: Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_golem_statue","label":"Palette proche: Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_block","label":"Palette proche: Waxed Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_chest","label":"Palette proche: Waxed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Palette proche: Waxed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_trapdoor","label":"Palette proche: Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Palette proche: Waxed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.806},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.806},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.806},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.806},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.806},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.806},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.784},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.784},{"type":"color_analogous","target":"minecraft:chiseled_copper","label":"Couleurs analogues: Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_slab","label":"Couleurs analogues: Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_stairs","label":"Couleurs analogues: Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper","label":"Couleurs analogues: Waxed Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_slab","label":"Couleurs analogues: Waxed Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_stairs","label":"Couleurs analogues: Waxed Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.939},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.939},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.88},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.877},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.823},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.921},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.916},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.903},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.903},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.903},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.903},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.889},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.747},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.941},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.92},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_copper_bars","name":"Waxed Copper Bars","entry_type":"block","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper bars."}],"colors":{"primary":"#9c5137","dominant_hex":"#944c34","average_hex":"#9c5137","hue_group":"red","lightness":0.4137,"saturation":0.4787,"palette":["#944c34","#843c24","#a45c44","#b46444","#cc7454"],"color_groups":[{"hex":"#944c34","weight":0.319,"lightness":0.3922,"saturation":0.48,"hue_group":"red"},{"hex":"#843c24","weight":0.25,"lightness":0.3294,"saturation":0.5714,"hue_group":"red"},{"hex":"#a45c44","weight":0.1724,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#b46444","weight":0.1293,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#cc7454","weight":0.1293,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_bars.png","family":"waxed_copper_bars","relations":[{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_bars","label":"Palette proche: Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chain","label":"Palette proche: Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_chain","label":"Palette proche: Waxed Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_copper","label":"Palette proche: Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_chiseled_copper","label":"Palette proche: Waxed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.935},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.935},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.928},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.928},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.928},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.928},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.928},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.789},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.789},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.786},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.785},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.785},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.777},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.777},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.777},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.777},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.777},{"type":"color_analogous","target":"minecraft:copper_bars","label":"Couleurs analogues: Copper Bars","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chain","label":"Couleurs analogues: Copper Chain","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_chain","label":"Couleurs analogues: Waxed Copper Chain","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_grate","label":"Couleurs analogues: Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_grate","label":"Couleurs analogues: Waxed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_copper","label":"Couleurs analogues: Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_chiseled_copper","label":"Couleurs analogues: Waxed Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.908},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.857},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.842},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.946},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.94},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.928},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.928},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.928},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.928},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.92},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.771},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.957},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.93},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.93},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.915},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.896},{"type":"value_contrast","target":"minecraft:cherry_trapdoor","label":"Contraste clair sombre: Cherry Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_sign","label":"Contraste clair sombre: Cherry Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_slab","label":"Contraste clair sombre: Cherry Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_copper_block","name":"Waxed Copper Block","entry_type":"block","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed copper blocks and three variants of waxed copper blocks."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#c06c50","dominant_hex":"#9d553d","average_hex":"#c06c50","hue_group":"red","lightness":0.5333,"saturation":0.4706,"palette":["#9d553d","#cc7454","#c46c4c","#d47c5c","#b46444","#e4846c"],"color_groups":[{"hex":"#9d553d","weight":0.2109,"lightness":0.4275,"saturation":0.4404,"hue_group":"red"},{"hex":"#cc7454","weight":0.1836,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#c46c4c","weight":0.1758,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1484,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#b46444","weight":0.1445,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#e4846c","weight":0.1367,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_block.png","family":"waxed_copper_block","relations":[{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chest","label":"Palette proche: Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_golem_statue","label":"Palette proche: Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_chest","label":"Palette proche: Waxed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Palette proche: Waxed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.779},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chest","label":"Couleurs analogues: Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_golem_statue","label":"Couleurs analogues: Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_chest","label":"Couleurs analogues: Waxed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_golem_statue","label":"Couleurs analogues: Waxed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_grate","label":"Couleurs analogues: Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_grate","label":"Couleurs analogues: Waxed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.945},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.893},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.871},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.828},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.929},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.924},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.911},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.911},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.911},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.911},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.903},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.754},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.95},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.95},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.933},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.911},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_copper_bulb","name":"Waxed Copper Bulb","entry_type":"block","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","history":[{"version":"1.20.3","status":"added","notes":"Added copper bulbs behind the \" Update 1.21 \" experimental data pack ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb copper bulbs at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#9c5739","dominant_hex":"#c26c4c","average_hex":"#9c5739","hue_group":"red","lightness":0.4176,"saturation":0.4648,"palette":["#c26c4c","#5c3414","#9b533b","#df8267","#74441c","#844c2c"],"color_groups":[{"hex":"#c26c4c","weight":0.25,"lightness":0.5294,"saturation":0.4917,"hue_group":"red"},{"hex":"#5c3414","weight":0.1758,"lightness":0.2196,"saturation":0.6429,"hue_group":"red"},{"hex":"#9b533b","weight":0.1719,"lightness":0.4196,"saturation":0.4486,"hue_group":"red"},{"hex":"#df8267","weight":0.1562,"lightness":0.6392,"saturation":0.6522,"hue_group":"red"},{"hex":"#74441c","weight":0.1406,"lightness":0.2824,"saturation":0.6111,"hue_group":"red"},{"hex":"#844c2c","weight":0.1055,"lightness":0.3451,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_bulb.png","family":"waxed_copper_bulb","relations":[{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_bulb","label":"Palette proche: Copper Bulb","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_copper","label":"Palette proche: Chiseled Copper","confidence":0.911},{"type":"color_neighbors","target":"minecraft:waxed_chiseled_copper","label":"Palette proche: Waxed Chiseled Copper","confidence":0.911},{"type":"color_neighbors","target":"minecraft:acacia_door","label":"Palette proche: Acacia Door","confidence":0.888},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.887},{"type":"color_neighbors","target":"minecraft:copper_bars","label":"Palette proche: Copper Bars","confidence":0.881},{"type":"color_neighbors","target":"minecraft:waxed_copper_bars","label":"Palette proche: Waxed Copper Bars","confidence":0.881},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.879},{"type":"color_neighbors","target":"minecraft:copper_trapdoor","label":"Palette proche: Copper Trapdoor","confidence":0.879},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.879},{"type":"color_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Palette proche: Waxed Copper Trapdoor","confidence":0.879},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.877},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.768},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.768},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.763},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.763},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.755},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.755},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.755},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.755},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.755},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.755},{"type":"color_analogous","target":"minecraft:copper_bulb","label":"Couleurs analogues: Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_shelf","label":"Couleurs analogues: Acacia Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_door","label":"Couleurs analogues: Acacia Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_hanging_sign","label":"Couleurs analogues: Acacia Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_hanging_sign","label":"Couleurs analogues: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_acacia_log","label":"Couleurs analogues: Stripped Acacia Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_acacia_wood","label":"Couleurs analogues: Stripped Acacia Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:decorated_pot","label":"Couleurs analogues: Decorated Pot","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.935},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.918},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.915},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.913},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.901},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.901},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.854},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.954},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.954},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.954},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.954},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.945},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.93},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.877},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.96},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.875},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.875},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.854},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.842},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.829},{"type":"value_contrast","target":"minecraft:cherry_trapdoor","label":"Contraste clair sombre: Cherry Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_sign","label":"Contraste clair sombre: Cherry Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_slab","label":"Contraste clair sombre: Cherry Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_copper_chain","name":"Waxed Copper Chain","entry_type":"block","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper chains."}],"colors":{"primary":"#984f37","dominant_hex":"#84442c","average_hex":"#984f37","hue_group":"red","lightness":0.4059,"saturation":0.4686,"palette":["#84442c","#a45c44","#b46444"],"color_groups":[{"hex":"#84442c","weight":0.4643,"lightness":0.3451,"saturation":0.5,"hue_group":"red"},{"hex":"#a45c44","weight":0.4464,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#b46444","weight":0.0893,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_chain.png","family":"waxed_copper_chain","relations":[{"type":"visual_neighbors","target":"minecraft:copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:composter","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:acacia_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_stained_glass_pane","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_chain","label":"Palette proche: Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_bars","label":"Palette proche: Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_bars","label":"Palette proche: Waxed Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chiseled_copper","label":"Palette proche: Chiseled Copper","confidence":0.914},{"type":"color_neighbors","target":"minecraft:waxed_chiseled_copper","label":"Palette proche: Waxed Chiseled Copper","confidence":0.914},{"type":"color_neighbors","target":"minecraft:acacia_shelf","label":"Palette proche: Acacia Shelf","confidence":0.911},{"type":"color_neighbors","target":"minecraft:acacia_hanging_sign","label":"Palette proche: Acacia Hanging Sign","confidence":0.902},{"type":"color_neighbors","target":"minecraft:acacia_wall_hanging_sign","label":"Palette proche: Acacia Wall Hanging Sign","confidence":0.902},{"type":"color_neighbors","target":"minecraft:stripped_acacia_log","label":"Palette proche: Stripped Acacia Log","confidence":0.902},{"type":"color_neighbors","target":"minecraft:stripped_acacia_wood","label":"Palette proche: Stripped Acacia Wood","confidence":0.902},{"type":"color_neighbors","target":"minecraft:decorated_pot","label":"Palette proche: Decorated Pot","confidence":0.901},{"type":"color_neighbors","target":"minecraft:terracotta","label":"Palette proche: Terracotta","confidence":0.901},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.804},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.799},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.798},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.786},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.786},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.781},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.781},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.778},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.778},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.778},{"type":"color_analogous","target":"minecraft:copper_chain","label":"Couleurs analogues: Copper Chain","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_bars","label":"Couleurs analogues: Copper Bars","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_bars","label":"Couleurs analogues: Waxed Copper Bars","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_copper","label":"Couleurs analogues: Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_chiseled_copper","label":"Couleurs analogues: Waxed Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chest","label":"Couleurs analogues: Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_golem_statue","label":"Couleurs analogues: Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.946},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.946},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.887},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.876},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.823},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.923},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.918},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.905},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.905},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.905},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.905},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.897},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.749},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.956},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.956},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.939},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.918},{"type":"value_contrast","target":"minecraft:cherry_trapdoor","label":"Contraste clair sombre: Cherry Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_button","label":"Contraste clair sombre: Cherry Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence","label":"Contraste clair sombre: Cherry Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_fence_gate","label":"Contraste clair sombre: Cherry Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_planks","label":"Contraste clair sombre: Cherry Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_pressure_plate","label":"Contraste clair sombre: Cherry Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_sign","label":"Contraste clair sombre: Cherry Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:cherry_slab","label":"Contraste clair sombre: Cherry Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_copper_chest","name":"Waxed Copper Chest","entry_type":"block","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper chests."}],"colors":{"primary":"#c06c50","dominant_hex":"#9d553d","average_hex":"#c06c50","hue_group":"red","lightness":0.5333,"saturation":0.4706,"palette":["#9d553d","#cc7454","#c46c4c","#d47c5c","#b46444","#e4846c"],"color_groups":[{"hex":"#9d553d","weight":0.2109,"lightness":0.4275,"saturation":0.4404,"hue_group":"red"},{"hex":"#cc7454","weight":0.1836,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#c46c4c","weight":0.1758,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1484,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#b46444","weight":0.1445,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#e4846c","weight":0.1367,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_block.png","family":"waxed_copper_chest","relations":[{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chest","label":"Palette proche: Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_golem_statue","label":"Palette proche: Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_block","label":"Palette proche: Waxed Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Palette proche: Waxed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.779},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chest","label":"Couleurs analogues: Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_golem_statue","label":"Couleurs analogues: Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_block","label":"Couleurs analogues: Waxed Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_golem_statue","label":"Couleurs analogues: Waxed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_grate","label":"Couleurs analogues: Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_grate","label":"Couleurs analogues: Waxed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.945},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.893},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.871},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.828},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.929},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.924},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.911},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.911},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.911},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.911},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.903},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.754},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.95},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.95},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.933},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.911},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_copper_door","name":"Waxed Copper Door","entry_type":"block","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","history":[{"version":"1.20.3","status":"added","notes":"Added copper doors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#c16d53","dominant_hex":"#cc7454","average_hex":"#c16d53","hue_group":"red","lightness":0.5412,"saturation":0.4701,"palette":["#cc7454","#b16244","#e4846c","#90543e","#d47c5c","#c46c4c"],"color_groups":[{"hex":"#cc7454","weight":0.2692,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#b16244","weight":0.1923,"lightness":0.4804,"saturation":0.4449,"hue_group":"red"},{"hex":"#e4846c","weight":0.1827,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#90543e","weight":0.1635,"lightness":0.4039,"saturation":0.3981,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1442,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#c46c4c","weight":0.0481,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_door_top.png","family":"waxed_copper","relations":[{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_door","label":"Palette proche: Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chest","label":"Palette proche: Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_golem_statue","label":"Palette proche: Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_block","label":"Palette proche: Waxed Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_chest","label":"Palette proche: Waxed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Palette proche: Waxed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.823},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.823},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.795},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.795},{"type":"color_analogous","target":"minecraft:copper_door","label":"Couleurs analogues: Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_slab","label":"Couleurs analogues: Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_stairs","label":"Couleurs analogues: Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper","label":"Couleurs analogues: Waxed Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_slab","label":"Couleurs analogues: Waxed Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_stairs","label":"Couleurs analogues: Waxed Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.951},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.947},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.924},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.924},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.899},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.865},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.816},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.898},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.892},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.88},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.88},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.88},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.88},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.871},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.723},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.953},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.947},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.947},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.945},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:green_candle_cake","label":"Contraste clair sombre: Green Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_copper_golem_statue","name":"Waxed Copper Golem Statue","entry_type":"block","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper golem statues."}],"colors":{"primary":"#c06c50","dominant_hex":"#9d553d","average_hex":"#c06c50","hue_group":"red","lightness":0.5333,"saturation":0.4706,"palette":["#9d553d","#cc7454","#c46c4c","#d47c5c","#b46444","#e4846c"],"color_groups":[{"hex":"#9d553d","weight":0.2109,"lightness":0.4275,"saturation":0.4404,"hue_group":"red"},{"hex":"#cc7454","weight":0.1836,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#c46c4c","weight":0.1758,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1484,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#b46444","weight":0.1445,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#e4846c","weight":0.1367,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_block.png","family":"waxed_copper_golem_statue","relations":[{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chest","label":"Palette proche: Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_golem_statue","label":"Palette proche: Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_block","label":"Palette proche: Waxed Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_chest","label":"Palette proche: Waxed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.779},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chest","label":"Couleurs analogues: Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_golem_statue","label":"Couleurs analogues: Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_block","label":"Couleurs analogues: Waxed Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_chest","label":"Couleurs analogues: Waxed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_grate","label":"Couleurs analogues: Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_grate","label":"Couleurs analogues: Waxed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.951},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.945},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.893},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.871},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.828},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.929},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.924},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.911},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.911},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.911},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.911},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.903},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.754},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.95},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.95},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.933},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.911},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_copper_grate","name":"Waxed Copper Grate","entry_type":"block","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","history":[{"version":"1.20.3","status":"added","notes":"Added copper grates behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#c06c4f","dominant_hex":"#9c543c","average_hex":"#c06c4f","hue_group":"red","lightness":0.5314,"saturation":0.4728,"palette":["#9c543c","#cc7454","#d47c5c","#c46c4c","#b46444","#e4846c"],"color_groups":[{"hex":"#9c543c","weight":0.2179,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#cc7454","weight":0.2179,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1788,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#c46c4c","weight":0.1508,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"},{"hex":"#b46444","weight":0.1285,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#e4846c","weight":0.1061,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_grate.png","family":"waxed_copper_grate","relations":[{"type":"visual_neighbors","target":"minecraft:copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chest","label":"Palette proche: Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_golem_statue","label":"Palette proche: Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_block","label":"Palette proche: Waxed Copper Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_chest","label":"Palette proche: Waxed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Palette proche: Waxed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.779},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.779},{"type":"color_analogous","target":"minecraft:copper_grate","label":"Couleurs analogues: Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chest","label":"Couleurs analogues: Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_golem_statue","label":"Couleurs analogues: Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_block","label":"Couleurs analogues: Waxed Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_chest","label":"Couleurs analogues: Waxed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_golem_statue","label":"Couleurs analogues: Waxed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.932},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.906},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.858},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.841},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.939},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.918},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.77},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.959},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.933},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.933},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.916},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.895},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_stairs","label":"Contraste clair sombre: Dark Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_copper_lantern","name":"Waxed Copper Lantern","entry_type":"block","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper lanterns."}],"colors":{"primary":"#9e6c4c","dominant_hex":"#9c543c","average_hex":"#9e6c4c","hue_group":"red","lightness":0.4588,"saturation":0.3504,"palette":["#9c543c","#c46c4c","#a45c44","#84442c","#aae4ac","#5ea464"],"color_groups":[{"hex":"#9c543c","weight":0.283,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#c46c4c","weight":0.2075,"lightness":0.5333,"saturation":0.5042,"hue_group":"red"},{"hex":"#a45c44","weight":0.1698,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#84442c","weight":0.1509,"lightness":0.3451,"saturation":0.5,"hue_group":"red"},{"hex":"#aae4ac","weight":0.1132,"lightness":0.7804,"saturation":0.5179,"hue_group":"green"},{"hex":"#5ea464","weight":0.0755,"lightness":0.5059,"saturation":0.2778,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_lantern.png","family":"waxed_copper_lantern","relations":[{"type":"visual_neighbors","target":"minecraft:copper_lantern","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_planks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_pressure_plate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_lantern","label":"Palette proche: Copper Lantern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_chain","label":"Palette proche: Copper Chain","confidence":0.857},{"type":"color_neighbors","target":"minecraft:waxed_copper_chain","label":"Palette proche: Waxed Copper Chain","confidence":0.857},{"type":"color_neighbors","target":"minecraft:chiseled_copper","label":"Palette proche: Chiseled Copper","confidence":0.842},{"type":"color_neighbors","target":"minecraft:waxed_chiseled_copper","label":"Palette proche: Waxed Chiseled Copper","confidence":0.842},{"type":"color_neighbors","target":"minecraft:copper_bars","label":"Palette proche: Copper Bars","confidence":0.835},{"type":"color_neighbors","target":"minecraft:waxed_copper_bars","label":"Palette proche: Waxed Copper Bars","confidence":0.835},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.83},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.83},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.825},{"type":"color_neighbors","target":"minecraft:copper_chest","label":"Palette proche: Copper Chest","confidence":0.825},{"type":"color_neighbors","target":"minecraft:copper_golem_statue","label":"Palette proche: Copper Golem Statue","confidence":0.825},{"type":"color_bridge","target":"minecraft:exposed_copper_lantern","label":"Pont de nuance par sous-ton: Exposed Copper Lantern","confidence":0.799},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Lantern","confidence":0.799},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.766},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.766},{"type":"color_bridge","target":"minecraft:light_gray_terracotta","label":"Pont de nuance par sous-ton: Light Gray Terracotta","confidence":0.764},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.764},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.764},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.761},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.761},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.761},{"type":"color_analogous","target":"minecraft:copper_lantern","label":"Couleurs analogues: Copper Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:rooted_dirt","label":"Couleurs analogues: Rooted Dirt","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_mushroom","label":"Couleurs analogues: Brown Mushroom","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_brown_mushroom","label":"Couleurs analogues: Potted Brown Mushroom","confidence":0.96},{"type":"color_analogous","target":"minecraft:command_block","label":"Couleurs analogues: Command Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper","label":"Couleurs analogues: Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_chest","label":"Couleurs analogues: Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_golem_statue","label":"Couleurs analogues: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.952},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.946},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.913},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.909},{"type":"color_complement","target":"minecraft:cave_air","label":"Contraste complementaire: Cave Air","confidence":0.909},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.96},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.912},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.883},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.846},{"type":"color_triad","target":"minecraft:amethyst_cluster","label":"Harmonie triadique: Amethyst Cluster","confidence":0.825},{"type":"color_triad","target":"minecraft:medium_amethyst_bud","label":"Harmonie triadique: Medium Amethyst Bud","confidence":0.824},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.944},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.895},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.767},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.766},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.755},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.717},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.681},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_copper_trapdoor","name":"Waxed Copper Trapdoor","entry_type":"block","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","history":[{"version":"1.20.3","status":"added","notes":"Added copper trapdoors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#bf6a50","dominant_hex":"#9a523a","average_hex":"#bf6a50","hue_group":"red","lightness":0.5314,"saturation":0.4644,"palette":["#9a523a","#e4846c","#c87050","#d47c5c","#b46444","#a45c44"],"color_groups":[{"hex":"#9a523a","weight":0.2255,"lightness":0.4157,"saturation":0.4528,"hue_group":"red"},{"hex":"#e4846c","weight":0.2108,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#c87050","weight":0.1961,"lightness":0.549,"saturation":0.5217,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1569,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#b46444","weight":0.1127,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#a45c44","weight":0.098,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/copper_trapdoor.png","family":"waxed_copper_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:copper_trapdoor","label":"Palette proche: Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper","label":"Palette proche: Waxed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Palette proche: Waxed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Palette proche: Waxed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.805},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.805},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.805},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.778},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.778},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_slab","label":"Couleurs analogues: Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_stairs","label":"Couleurs analogues: Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper","label":"Couleurs analogues: Waxed Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_slab","label":"Couleurs analogues: Waxed Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_stairs","label":"Couleurs analogues: Waxed Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.946},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.944},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.919},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.919},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.86},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.821},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.893},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.888},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.875},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.875},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.875},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.875},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.866},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.719},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.95},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.948},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.942},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.942},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_cut_copper","name":"Waxed Cut Copper","entry_type":"block","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed cut copper and three variants of waxed cut copper."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cut copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#bf6b51","dominant_hex":"#e4846c","average_hex":"#bf6b51","hue_group":"red","lightness":0.5333,"saturation":0.4622,"palette":["#e4846c","#a45c44","#b46444","#cc7454","#9c543c","#d47c5c"],"color_groups":[{"hex":"#e4846c","weight":0.2266,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#a45c44","weight":0.2188,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#b46444","weight":0.1758,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#cc7454","weight":0.1523,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#9c543c","weight":0.1172,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1094,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cut_copper.png","family":"waxed_cut_copper","relations":[{"type":"variants","target":"minecraft:waxed_cut_copper_slab","label":"Same family: waxed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_cut_copper_slab","label":"Related set: waxed_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:waxed_cut_copper_stairs","label":"Same family: waxed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_cut_copper_stairs","label":"Related set: waxed_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Palette proche: Waxed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Palette proche: Waxed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_trapdoor","label":"Palette proche: Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Palette proche: Waxed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.778},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.778},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_slab","label":"Couleurs analogues: Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_stairs","label":"Couleurs analogues: Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_slab","label":"Couleurs analogues: Waxed Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_stairs","label":"Couleurs analogues: Waxed Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_trapdoor","label":"Couleurs analogues: Waxed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.95},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.923},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.898},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.865},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.817},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.898},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.893},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.88},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.88},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.88},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.88},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.871},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.724},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.953},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.948},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.948},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.945},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_cut_copper_slab","name":"Waxed Cut Copper Slab","entry_type":"block","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper slabs and three variants of waxed cut copper slabs."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper slabs."}],"colors":{"primary":"#bf6b51","dominant_hex":"#e4846c","average_hex":"#bf6b51","hue_group":"red","lightness":0.5333,"saturation":0.4622,"palette":["#e4846c","#a45c44","#b46444","#cc7454","#9c543c","#d47c5c"],"color_groups":[{"hex":"#e4846c","weight":0.2266,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#a45c44","weight":0.2188,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#b46444","weight":0.1758,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#cc7454","weight":0.1523,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#9c543c","weight":0.1172,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1094,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cut_copper.png","family":"waxed_cut_copper","relations":[{"type":"variants","target":"minecraft:waxed_cut_copper","label":"Same family: waxed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_cut_copper","label":"Related set: waxed_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:waxed_cut_copper_stairs","label":"Same family: waxed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_cut_copper_stairs","label":"Related set: waxed_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper","label":"Palette proche: Waxed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Palette proche: Waxed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_trapdoor","label":"Palette proche: Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Palette proche: Waxed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.778},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.778},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_slab","label":"Couleurs analogues: Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_stairs","label":"Couleurs analogues: Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper","label":"Couleurs analogues: Waxed Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_stairs","label":"Couleurs analogues: Waxed Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_trapdoor","label":"Couleurs analogues: Waxed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.95},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.923},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.898},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.865},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.817},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.898},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.893},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.88},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.88},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.88},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.88},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.871},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.724},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.953},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.948},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.948},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.945},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_cut_copper_stairs","name":"Waxed Cut Copper Stairs","entry_type":"block","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper stairs and three variants of waxed cut copper stairs: (waxed) cut copper stairs, (waxed) lightly weathered cut copper stairs, (waxed) semi-weathered cut copper stairs, and weathered cut"},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper stairs."}],"colors":{"primary":"#bf6b51","dominant_hex":"#e4846c","average_hex":"#bf6b51","hue_group":"red","lightness":0.5333,"saturation":0.4622,"palette":["#e4846c","#a45c44","#b46444","#cc7454","#9c543c","#d47c5c"],"color_groups":[{"hex":"#e4846c","weight":0.2266,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#a45c44","weight":0.2188,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#b46444","weight":0.1758,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"},{"hex":"#cc7454","weight":0.1523,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#9c543c","weight":0.1172,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#d47c5c","weight":0.1094,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cut_copper.png","family":"waxed_cut_copper","relations":[{"type":"variants","target":"minecraft:waxed_cut_copper","label":"Same family: waxed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_cut_copper","label":"Related set: waxed_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:waxed_cut_copper_slab","label":"Same family: waxed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_cut_copper_slab","label":"Related set: waxed_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper","label":"Palette proche: Waxed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Palette proche: Waxed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_lightning_rod","label":"Palette proche: Waxed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_trapdoor","label":"Palette proche: Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Palette proche: Waxed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.816},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.808},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.808},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.778},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.778},{"type":"color_analogous","target":"minecraft:cut_copper","label":"Couleurs analogues: Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_slab","label":"Couleurs analogues: Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_copper_stairs","label":"Couleurs analogues: Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper","label":"Couleurs analogues: Waxed Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_cut_copper_slab","label":"Couleurs analogues: Waxed Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_trapdoor","label":"Couleurs analogues: Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_trapdoor","label":"Couleurs analogues: Waxed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.95},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.948},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.923},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.898},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.865},{"type":"color_complement","target":"minecraft:glass_pane","label":"Contraste complementaire: Glass Pane","confidence":0.817},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.898},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.893},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.88},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.88},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.88},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.88},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.871},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.724},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.953},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.948},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.948},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.945},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_chiseled_copper","name":"Waxed Exposed Chiseled Copper","entry_type":"block","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","history":[{"version":"1.20.3","status":"added","notes":"Added chiseled copper behind the \" Update 1.21 \" experimental data pack."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiseled copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#9b7765","dominant_hex":"#967966","average_hex":"#9b7765","hue_group":"red","lightness":0.502,"saturation":0.2126,"palette":["#967966","#ac7464","#7c6c5c","#746454","#cc8c84","#bc8474"],"color_groups":[{"hex":"#967966","weight":0.2578,"lightness":0.4941,"saturation":0.1905,"hue_group":"red"},{"hex":"#ac7464","weight":0.1914,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#7c6c5c","weight":0.1836,"lightness":0.4235,"saturation":0.1481,"hue_group":"yellow"},{"hex":"#746454","weight":0.1445,"lightness":0.3922,"saturation":0.16,"hue_group":"yellow"},{"hex":"#cc8c84","weight":0.1406,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#bc8474","weight":0.082,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_chiseled_copper.png","family":"waxed_exposed_chiseled_copper","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Palette proche: Exposed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Palette proche: Exposed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Palette proche: Waxed Exposed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Palette proche: Waxed Exposed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Palette proche: Waxed Exposed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_door","label":"Pont de nuance par sous-ton: Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_door","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_grate","label":"Pont de nuance par sous-ton: Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_grate","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chest","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Golem Statue","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_copper","name":"Waxed Exposed Copper","entry_type":"block","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed copper blocks and three variants of waxed copper blocks."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#a17e68","dominant_hex":"#ac7464","average_hex":"#a17e68","hue_group":"red","lightness":0.5196,"saturation":0.2327,"palette":["#ac7464","#998e6c","#7c7054","#bc8474","#947464","#cc8c84"],"color_groups":[{"hex":"#ac7464","weight":0.2422,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#998e6c","weight":0.1953,"lightness":0.5118,"saturation":0.1807,"hue_group":"yellow"},{"hex":"#7c7054","weight":0.1875,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#bc8474","weight":0.1562,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#947464","weight":0.1094,"lightness":0.4863,"saturation":0.1935,"hue_group":"red"},{"hex":"#cc8c84","weight":0.1094,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper.png","family":"waxed_exposed_copper","relations":[{"type":"variants","target":"minecraft:waxed_exposed_copper_door","label":"Same family: waxed_exposed_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_exposed_copper_door","label":"Related set: waxed_exposed_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Palette proche: Waxed Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Palette proche: Waxed Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_analogous","target":"minecraft:exposed_copper","label":"Couleurs analogues: Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_chest","label":"Couleurs analogues: Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_golem_statue","label":"Couleurs analogues: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_chest","label":"Couleurs analogues: Waxed Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Couleurs analogues: Waxed Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_grate","label":"Couleurs analogues: Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_grate","label":"Couleurs analogues: Waxed Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_trapdoor","label":"Couleurs analogues: Exposed Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.943},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.91},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.893},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.888},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.954},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.913},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.864},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.826},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.809},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.809},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.945},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.875},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.768},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.768},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.756},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.714},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.661},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_copper_bars","name":"Waxed Exposed Copper Bars","entry_type":"block","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper bars."}],"colors":{"primary":"#866c59","dominant_hex":"#7c6c54","average_hex":"#866c59","hue_group":"red","lightness":0.4373,"saturation":0.2018,"palette":["#7c6c54","#645c4c","#8c745c","#ac7464","#b47c74","#9c8c6c"],"color_groups":[{"hex":"#7c6c54","weight":0.3017,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#645c4c","weight":0.25,"lightness":0.3451,"saturation":0.1364,"hue_group":"yellow"},{"hex":"#8c745c","weight":0.1724,"lightness":0.4549,"saturation":0.2069,"hue_group":"red"},{"hex":"#ac7464","weight":0.1293,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#b47c74","weight":0.1293,"lightness":0.5804,"saturation":0.2991,"hue_group":"red"},{"hex":"#9c8c6c","weight":0.0172,"lightness":0.5176,"saturation":0.1951,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper_bars.png","family":"waxed_exposed_copper_bars","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dripstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pointed_dripstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewing_stand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:detector_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_lightning_rod","label":"Palette proche: Exposed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Palette proche: Waxed Exposed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.939},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.939},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.938},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.938},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.938},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.938},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.938},{"type":"color_bridge","target":"minecraft:exposed_lightning_rod","label":"Pont de nuance par sous-ton: Exposed Lightning Rod","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Exposed Lightning Rod","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_grate","label":"Pont de nuance par sous-ton: Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_grate","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chest","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Golem Statue","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_copper_bulb","name":"Waxed Exposed Copper Bulb","entry_type":"block","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","history":[{"version":"1.20.3","status":"added","notes":"Added copper bulbs behind the \" Update 1.21 \" experimental data pack ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb copper bulbs at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#876c5a","dominant_hex":"#c5887d","average_hex":"#876c5a","hue_group":"red","lightness":0.4412,"saturation":0.2,"palette":["#c5887d","#a47a66","#544c3c","#7b6354","#6c5c4c","#7c7555"],"color_groups":[{"hex":"#c5887d","weight":0.1914,"lightness":0.6314,"saturation":0.383,"hue_group":"red"},{"hex":"#a47a66","weight":0.1836,"lightness":0.5216,"saturation":0.2541,"hue_group":"red"},{"hex":"#544c3c","weight":0.1758,"lightness":0.2824,"saturation":0.1667,"hue_group":"yellow"},{"hex":"#7b6354","weight":0.1719,"lightness":0.4059,"saturation":0.1884,"hue_group":"red"},{"hex":"#6c5c4c","weight":0.1406,"lightness":0.3608,"saturation":0.1739,"hue_group":"yellow"},{"hex":"#7c7555","weight":0.1367,"lightness":0.4098,"saturation":0.1866,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper_bulb.png","family":"waxed_exposed_copper_bulb","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dripstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pointed_dripstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewing_stand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_terracotta","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:detector_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_copper_bulb","label":"Palette proche: Exposed Copper Bulb","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_lightning_rod","label":"Palette proche: Exposed Lightning Rod","confidence":0.931},{"type":"color_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Palette proche: Waxed Exposed Lightning Rod","confidence":0.931},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.916},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Palette proche: Exposed Cut Copper Slab","confidence":0.916},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Palette proche: Exposed Cut Copper Stairs","confidence":0.916},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Palette proche: Waxed Exposed Cut Copper","confidence":0.916},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Palette proche: Waxed Exposed Cut Copper Slab","confidence":0.916},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Palette proche: Waxed Exposed Cut Copper Stairs","confidence":0.916},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.912},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.912},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.912},{"type":"color_bridge","target":"minecraft:exposed_lightning_rod","label":"Pont de nuance par sous-ton: Exposed Lightning Rod","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Exposed Lightning Rod","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_trapdoor","label":"Pont de nuance par sous-ton: Exposed Copper Trapdoor","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Trapdoor","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_grate","label":"Pont de nuance par sous-ton: Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_grate","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_door","label":"Pont de nuance par sous-ton: Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_copper_chain","name":"Waxed Exposed Copper Chain","entry_type":"block","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper chains."}],"colors":{"primary":"#7e6654","dominant_hex":"#645c4c","average_hex":"#7e6654","hue_group":"red","lightness":0.4118,"saturation":0.2,"palette":["#645c4c","#8c745c","#ac7464","#9c8c6c"],"color_groups":[{"hex":"#645c4c","weight":0.4643,"lightness":0.3451,"saturation":0.1364,"hue_group":"yellow"},{"hex":"#8c745c","weight":0.4286,"lightness":0.4549,"saturation":0.2069,"hue_group":"red"},{"hex":"#ac7464","weight":0.0893,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#9c8c6c","weight":0.0179,"lightness":0.5176,"saturation":0.1951,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper_chain.png","family":"waxed_exposed_copper_chain","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper_chain","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brewing_stand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_bulb","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pointed_dripstone","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:detector_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dripstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:activator_rail","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanting_table","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mud_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_lightning_rod","label":"Palette proche: Exposed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Palette proche: Waxed Exposed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.91},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.91},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.91},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.91},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.91},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Palette proche: Waxed Exposed Copper Golem Statue","confidence":0.91},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.909},{"type":"color_bridge","target":"minecraft:exposed_lightning_rod","label":"Pont de nuance par sous-ton: Exposed Lightning Rod","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Exposed Lightning Rod","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chest","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_grate","label":"Pont de nuance par sous-ton: Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_grate","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Grate","confidence":0.9},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_copper_chest","name":"Waxed Exposed Copper Chest","entry_type":"block","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper chests."}],"colors":{"primary":"#a17e68","dominant_hex":"#ac7464","average_hex":"#a17e68","hue_group":"red","lightness":0.5196,"saturation":0.2327,"palette":["#ac7464","#998e6c","#7c7054","#bc8474","#947464","#cc8c84"],"color_groups":[{"hex":"#ac7464","weight":0.2422,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#998e6c","weight":0.1953,"lightness":0.5118,"saturation":0.1807,"hue_group":"yellow"},{"hex":"#7c7054","weight":0.1875,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#bc8474","weight":0.1562,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#947464","weight":0.1094,"lightness":0.4863,"saturation":0.1935,"hue_group":"red"},{"hex":"#cc8c84","weight":0.1094,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper.png","family":"waxed_exposed_copper_chest","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Palette proche: Waxed Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Palette proche: Waxed Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_analogous","target":"minecraft:exposed_copper","label":"Couleurs analogues: Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_chest","label":"Couleurs analogues: Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_golem_statue","label":"Couleurs analogues: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper","label":"Couleurs analogues: Waxed Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Couleurs analogues: Waxed Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_grate","label":"Couleurs analogues: Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_grate","label":"Couleurs analogues: Waxed Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_trapdoor","label":"Couleurs analogues: Exposed Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.943},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.91},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.893},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.888},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.954},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.913},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.864},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.826},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.809},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.809},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.945},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.875},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.768},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.768},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.756},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.714},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.661},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_copper_door","name":"Waxed Exposed Copper Door","entry_type":"block","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","history":[{"version":"1.20.3","status":"added","notes":"Added copper doors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#a47b6a","dominant_hex":"#b37b6b","average_hex":"#a47b6a","hue_group":"red","lightness":0.5294,"saturation":0.2417,"palette":["#b37b6b","#766553","#cc8c84","#947464","#bc8474","#9a8d6c"],"color_groups":[{"hex":"#b37b6b","weight":0.2356,"lightness":0.5608,"saturation":0.3214,"hue_group":"red"},{"hex":"#766553","weight":0.2019,"lightness":0.3941,"saturation":0.1741,"hue_group":"yellow"},{"hex":"#cc8c84","weight":0.1827,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#947464","weight":0.1538,"lightness":0.4863,"saturation":0.1935,"hue_group":"red"},{"hex":"#bc8474","weight":0.1442,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#9a8d6c","weight":0.0817,"lightness":0.5137,"saturation":0.1855,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper_door_top.png","family":"waxed_exposed_copper","relations":[{"type":"variants","target":"minecraft:waxed_exposed_copper","label":"Same family: waxed_exposed_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_exposed_copper","label":"Related set: waxed_exposed_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Palette proche: Waxed Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Palette proche: Waxed Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_analogous","target":"minecraft:exposed_copper_door","label":"Couleurs analogues: Exposed Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_lightning_rod","label":"Couleurs analogues: Exposed Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_lightning_rod","label":"Couleurs analogues: Waxed Exposed Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite","label":"Couleurs analogues: Polished Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_slab","label":"Couleurs analogues: Polished Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_stairs","label":"Couleurs analogues: Polished Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_hanging_sign","label":"Couleurs analogues: Acacia Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:acacia_wall_hanging_sign","label":"Couleurs analogues: Acacia Wall Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.956},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.92},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.916},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.913},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.901},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.899},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.899},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.841},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.959},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.953},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.95},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.843},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.96},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.893},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.893},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.861},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.849},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.845},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_copper_golem_statue","name":"Waxed Exposed Copper Golem Statue","entry_type":"block","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper golem statues."}],"colors":{"primary":"#a17e68","dominant_hex":"#ac7464","average_hex":"#a17e68","hue_group":"red","lightness":0.5196,"saturation":0.2327,"palette":["#ac7464","#998e6c","#7c7054","#bc8474","#947464","#cc8c84"],"color_groups":[{"hex":"#ac7464","weight":0.2422,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#998e6c","weight":0.1953,"lightness":0.5118,"saturation":0.1807,"hue_group":"yellow"},{"hex":"#7c7054","weight":0.1875,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#bc8474","weight":0.1562,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#947464","weight":0.1094,"lightness":0.4863,"saturation":0.1935,"hue_group":"red"},{"hex":"#cc8c84","weight":0.1094,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper.png","family":"waxed_exposed_copper_golem_statue","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Palette proche: Waxed Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_analogous","target":"minecraft:exposed_copper","label":"Couleurs analogues: Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_chest","label":"Couleurs analogues: Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_golem_statue","label":"Couleurs analogues: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper","label":"Couleurs analogues: Waxed Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_chest","label":"Couleurs analogues: Waxed Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_grate","label":"Couleurs analogues: Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_grate","label":"Couleurs analogues: Waxed Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_trapdoor","label":"Couleurs analogues: Exposed Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.943},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.91},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.893},{"type":"color_complement","target":"minecraft:air","label":"Contraste complementaire: Air","confidence":0.888},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.96},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.954},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.913},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.864},{"type":"color_triad","target":"minecraft:large_amethyst_bud","label":"Harmonie triadique: Large Amethyst Bud","confidence":0.826},{"type":"color_triad","target":"minecraft:allium","label":"Harmonie triadique: Allium","confidence":0.809},{"type":"color_triad","target":"minecraft:potted_allium","label":"Harmonie triadique: Potted Allium","confidence":0.809},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.96},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.945},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.875},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.768},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.768},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.756},{"type":"color_square","target":"minecraft:chorus_plant","label":"Harmonie carree: Chorus Plant","confidence":0.714},{"type":"color_square","target":"minecraft:bubble_coral_fan","label":"Harmonie carree: Bubble Coral Fan","confidence":0.661},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_copper_grate","name":"Waxed Exposed Copper Grate","entry_type":"block","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","history":[{"version":"1.20.3","status":"added","notes":"Added copper grates behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#a27e69","dominant_hex":"#ac7464","average_hex":"#a27e69","hue_group":"red","lightness":0.5235,"saturation":0.2346,"palette":["#ac7464","#7c6f54","#998d6c","#bc8474","#cc8c84","#947464"],"color_groups":[{"hex":"#ac7464","weight":0.2179,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#7c6f54","weight":0.1955,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#998d6c","weight":0.1899,"lightness":0.5118,"saturation":0.1807,"hue_group":"yellow"},{"hex":"#bc8474","weight":0.1564,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#cc8c84","weight":0.1341,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#947464","weight":0.1061,"lightness":0.4863,"saturation":0.1935,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper_grate.png","family":"waxed_exposed_copper_grate","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Palette proche: Waxed Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Palette proche: Waxed Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_analogous","target":"minecraft:exposed_copper_grate","label":"Couleurs analogues: Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_trapdoor","label":"Couleurs analogues: Exposed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Couleurs analogues: Waxed Exposed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper","label":"Couleurs analogues: Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_chest","label":"Couleurs analogues: Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_golem_statue","label":"Couleurs analogues: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper","label":"Couleurs analogues: Waxed Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_chest","label":"Couleurs analogues: Waxed Exposed Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.955},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.955},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.945},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.933},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.93},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.928},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.911},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.953},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.942},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.924},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.913},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.823},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.797},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.797},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.797},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.935},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.831},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.812},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.812},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.8},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.704},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.704},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_copper_lantern","name":"Waxed Exposed Copper Lantern","entry_type":"block","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper lanterns."}],"colors":{"primary":"#948369","dominant_hex":"#b37d6c","average_hex":"#948369","hue_group":"yellow","lightness":0.4961,"saturation":0.17,"palette":["#b37d6c","#8c745c","#7fca83","#5f634c","#7c6c54","#dcf0dd"],"color_groups":[{"hex":"#b37d6c","weight":0.3585,"lightness":0.5627,"saturation":0.3184,"hue_group":"red"},{"hex":"#8c745c","weight":0.283,"lightness":0.4549,"saturation":0.2069,"hue_group":"red"},{"hex":"#7fca83","weight":0.1321,"lightness":0.6451,"saturation":0.4144,"hue_group":"green"},{"hex":"#5f634c","weight":0.1132,"lightness":0.3431,"saturation":0.1314,"hue_group":"yellow"},{"hex":"#7c6c54","weight":0.0755,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#dcf0dd","weight":0.0377,"lightness":0.902,"saturation":0.4,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper_lantern.png","family":"waxed_exposed_copper_lantern","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:daylight_detector","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:conduit","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rail","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:loom","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_gold_ore","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_wall_torch","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fletching_table","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_copper_lantern","label":"Palette proche: Exposed Copper Lantern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.901},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.901},{"type":"color_neighbors","target":"minecraft:exposed_copper_chain","label":"Palette proche: Exposed Copper Chain","confidence":0.893},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chain","label":"Palette proche: Waxed Exposed Copper Chain","confidence":0.893},{"type":"color_neighbors","target":"minecraft:exposed_lightning_rod","label":"Palette proche: Exposed Lightning Rod","confidence":0.871},{"type":"color_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Palette proche: Waxed Exposed Lightning Rod","confidence":0.871},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.866},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.866},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.86},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.86},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:exposed_lightning_rod","label":"Pont de nuance par sous-ton: Exposed Lightning Rod","confidence":0.894},{"type":"color_bridge","target":"minecraft:waxed_exposed_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Exposed Lightning Rod","confidence":0.894},{"type":"color_bridge","target":"minecraft:exposed_copper_door","label":"Pont de nuance par sous-ton: Exposed Copper Door","confidence":0.89},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_door","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Door","confidence":0.89},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.885},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.885},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Copper","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chest","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chest","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Golem Statue","confidence":0.885},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_copper_trapdoor","name":"Waxed Exposed Copper Trapdoor","entry_type":"block","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","history":[{"version":"1.20.3","status":"added","notes":"Added copper trapdoors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#a17d69","dominant_hex":"#7c7054","average_hex":"#a17d69","hue_group":"red","lightness":0.5216,"saturation":0.2295,"palette":["#7c7054","#cc8c84","#ac7464","#bc8474","#988e6c","#947464"],"color_groups":[{"hex":"#7c7054","weight":0.2892,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#cc8c84","weight":0.1961,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#ac7464","weight":0.1422,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#bc8474","weight":0.1373,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#988e6c","weight":0.1225,"lightness":0.5098,"saturation":0.176,"hue_group":"yellow"},{"hex":"#947464","weight":0.1127,"lightness":0.4863,"saturation":0.1935,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_copper_trapdoor.png","family":"waxed_exposed_copper_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper","label":"Palette proche: Waxed Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Palette proche: Waxed Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Palette proche: Waxed Exposed Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_analogous","target":"minecraft:exposed_copper_trapdoor","label":"Couleurs analogues: Exposed Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_grate","label":"Couleurs analogues: Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_grate","label":"Couleurs analogues: Waxed Exposed Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper","label":"Couleurs analogues: Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_chest","label":"Couleurs analogues: Exposed Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_golem_statue","label":"Couleurs analogues: Exposed Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper","label":"Couleurs analogues: Waxed Exposed Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_chest","label":"Couleurs analogues: Waxed Exposed Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.939},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.933},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.932},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.932},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.91},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.907},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.916},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.898},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.887},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.822},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.822},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.822},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.822},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.907},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.84},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.839},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.828},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.802},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.732},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.732},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_cut_copper","name":"Waxed Exposed Cut Copper","entry_type":"block","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed cut copper and three variants of waxed cut copper."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cut copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#9b7a65","dominant_hex":"#967a66","average_hex":"#9b7a65","hue_group":"red","lightness":0.502,"saturation":0.2126,"palette":["#967a66","#7c7a58","#bc8474","#ac7464","#746454","#cc8c84"],"color_groups":[{"hex":"#967a66","weight":0.2383,"lightness":0.4941,"saturation":0.1905,"hue_group":"red"},{"hex":"#7c7a58","weight":0.2305,"lightness":0.4157,"saturation":0.1698,"hue_group":"yellow"},{"hex":"#bc8474","weight":0.1719,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#ac7464","weight":0.1484,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#746454","weight":0.1133,"lightness":0.3922,"saturation":0.16,"hue_group":"yellow"},{"hex":"#cc8c84","weight":0.0977,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_cut_copper.png","family":"waxed_exposed_cut_copper","relations":[{"type":"variants","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Same family: waxed_exposed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Related set: waxed_exposed_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Same family: waxed_exposed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Related set: waxed_exposed_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Palette proche: Exposed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Palette proche: Exposed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Palette proche: Waxed Exposed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Palette proche: Waxed Exposed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Palette proche: Waxed Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_door","label":"Pont de nuance par sous-ton: Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_door","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_grate","label":"Pont de nuance par sous-ton: Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chest","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_grate","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Grate","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_cut_copper_slab","name":"Waxed Exposed Cut Copper Slab","entry_type":"block","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper slabs and three variants of waxed cut copper slabs."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper slabs."}],"colors":{"primary":"#9b7a65","dominant_hex":"#967a66","average_hex":"#9b7a65","hue_group":"red","lightness":0.502,"saturation":0.2126,"palette":["#967a66","#7c7a58","#bc8474","#ac7464","#746454","#cc8c84"],"color_groups":[{"hex":"#967a66","weight":0.2383,"lightness":0.4941,"saturation":0.1905,"hue_group":"red"},{"hex":"#7c7a58","weight":0.2305,"lightness":0.4157,"saturation":0.1698,"hue_group":"yellow"},{"hex":"#bc8474","weight":0.1719,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#ac7464","weight":0.1484,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#746454","weight":0.1133,"lightness":0.3922,"saturation":0.16,"hue_group":"yellow"},{"hex":"#cc8c84","weight":0.0977,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_cut_copper.png","family":"waxed_exposed_cut_copper","relations":[{"type":"variants","target":"minecraft:waxed_exposed_cut_copper","label":"Same family: waxed_exposed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_exposed_cut_copper","label":"Related set: waxed_exposed_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Same family: waxed_exposed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Related set: waxed_exposed_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Palette proche: Exposed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Palette proche: Exposed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Palette proche: Waxed Exposed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Palette proche: Waxed Exposed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Palette proche: Waxed Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_door","label":"Pont de nuance par sous-ton: Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_door","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_grate","label":"Pont de nuance par sous-ton: Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chest","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_grate","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Grate","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_cut_copper_stairs","name":"Waxed Exposed Cut Copper Stairs","entry_type":"block","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper stairs and three variants of waxed cut copper stairs: (waxed) cut copper stairs, (waxed) lightly weathered cut copper stairs, (waxed) semi-weathered cut copper stairs, and weathered cut"},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper stairs."}],"colors":{"primary":"#9b7a65","dominant_hex":"#967a66","average_hex":"#9b7a65","hue_group":"red","lightness":0.502,"saturation":0.2126,"palette":["#967a66","#7c7a58","#bc8474","#ac7464","#746454","#cc8c84"],"color_groups":[{"hex":"#967a66","weight":0.2383,"lightness":0.4941,"saturation":0.1905,"hue_group":"red"},{"hex":"#7c7a58","weight":0.2305,"lightness":0.4157,"saturation":0.1698,"hue_group":"yellow"},{"hex":"#bc8474","weight":0.1719,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#ac7464","weight":0.1484,"lightness":0.5333,"saturation":0.3025,"hue_group":"red"},{"hex":"#746454","weight":0.1133,"lightness":0.3922,"saturation":0.16,"hue_group":"yellow"},{"hex":"#cc8c84","weight":0.0977,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_cut_copper.png","family":"waxed_exposed_cut_copper","relations":[{"type":"variants","target":"minecraft:waxed_exposed_cut_copper","label":"Same family: waxed_exposed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_exposed_cut_copper","label":"Related set: waxed_exposed_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Same family: waxed_exposed_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Related set: waxed_exposed_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper","label":"Palette proche: Exposed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_slab","label":"Palette proche: Exposed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_cut_copper_stairs","label":"Palette proche: Exposed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper","label":"Palette proche: Waxed Exposed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Palette proche: Waxed Exposed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Palette proche: Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_chiseled_copper","label":"Palette proche: Waxed Exposed Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_door","label":"Pont de nuance par sous-ton: Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_door","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Door","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par sous-ton: Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_chest","label":"Pont de nuance par sous-ton: Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_copper_grate","label":"Pont de nuance par sous-ton: Exposed Copper Grate","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chest","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chest","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Golem Statue","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_grate","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Grate","confidence":0.9},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_slab","label":"Contraste clair sombre: Pale Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_stairs","label":"Contraste clair sombre: Pale Oak Stairs","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_exposed_lightning_rod","name":"Waxed Exposed Lightning Rod","entry_type":"block","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added lightning rods."},{"version":"wiki-history","status":"added","notes":"Added exposed, weathered and oxidized variants of lightning rods."}],"colors":{"primary":"#9f7868","dominant_hex":"#bc8474","average_hex":"#9f7868","hue_group":"red","lightness":0.5157,"saturation":0.2227,"palette":["#bc8474","#7c6c54","#a77b66","#8c745c","#cc8c84","#645c4c"],"color_groups":[{"hex":"#bc8474","weight":0.3,"lightness":0.5961,"saturation":0.3495,"hue_group":"red"},{"hex":"#7c6c54","weight":0.175,"lightness":0.4078,"saturation":0.1923,"hue_group":"yellow"},{"hex":"#a77b66","weight":0.175,"lightness":0.5275,"saturation":0.2697,"hue_group":"red"},{"hex":"#8c745c","weight":0.125,"lightness":0.4549,"saturation":0.2069,"hue_group":"red"},{"hex":"#cc8c84","weight":0.125,"lightness":0.6588,"saturation":0.4138,"hue_group":"red"},{"hex":"#645c4c","weight":0.1,"lightness":0.3451,"saturation":0.1364,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/exposed_lightning_rod.png","family":"waxed_exposed_lightning_rod","relations":[{"type":"visual_neighbors","target":"minecraft:exposed_lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_chiseled_copper","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:exposed_lightning_rod","label":"Palette proche: Exposed Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_trapdoor","label":"Palette proche: Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Palette proche: Waxed Exposed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_grate","label":"Palette proche: Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_grate","label":"Palette proche: Waxed Exposed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_bars","label":"Palette proche: Exposed Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_door","label":"Palette proche: Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_bars","label":"Palette proche: Waxed Exposed Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_exposed_copper_door","label":"Palette proche: Waxed Exposed Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper","label":"Palette proche: Exposed Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_chest","label":"Palette proche: Exposed Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:exposed_copper_golem_statue","label":"Palette proche: Exposed Copper Golem Statue","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.9},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.9},{"type":"color_analogous","target":"minecraft:exposed_lightning_rod","label":"Couleurs analogues: Exposed Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:exposed_copper_door","label":"Couleurs analogues: Exposed Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_door","label":"Couleurs analogues: Waxed Exposed Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite","label":"Couleurs analogues: Polished Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_slab","label":"Couleurs analogues: Polished Granite Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:polished_granite_stairs","label":"Couleurs analogues: Polished Granite Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite","label":"Couleurs analogues: Granite","confidence":0.96},{"type":"color_analogous","target":"minecraft:granite_slab","label":"Couleurs analogues: Granite Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.95},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.919},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.915},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.901},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.901},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.895},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.839},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.96},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.96},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.96},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.96},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.957},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.953},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.836},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.96},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.96},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.959},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.897},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.897},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.865},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.853},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.849},{"type":"value_contrast","target":"minecraft:pale_oak_trapdoor","label":"Contraste clair sombre: Pale Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:smooth_quartz_stairs","label":"Contraste clair sombre: Smooth Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55}],"category":""},{"id":"minecraft:waxed_lightning_rod","name":"Waxed Lightning Rod","entry_type":"block","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added lightning rods."},{"version":"wiki-history","status":"added","notes":"Added exposed, weathered and oxidized variants of lightning rods."}],"colors":{"primary":"#c56f53","dominant_hex":"#d47c5c","average_hex":"#c56f53","hue_group":"red","lightness":0.549,"saturation":0.4957,"palette":["#d47c5c","#cc7454","#a45c44","#e4846c","#9c543c","#b46444"],"color_groups":[{"hex":"#d47c5c","weight":0.3,"lightness":0.5961,"saturation":0.5825,"hue_group":"red"},{"hex":"#cc7454","weight":0.25,"lightness":0.5647,"saturation":0.5405,"hue_group":"red"},{"hex":"#a45c44","weight":0.125,"lightness":0.4549,"saturation":0.4138,"hue_group":"red"},{"hex":"#e4846c","weight":0.125,"lightness":0.6588,"saturation":0.6897,"hue_group":"red"},{"hex":"#9c543c","weight":0.1,"lightness":0.4235,"saturation":0.4444,"hue_group":"red"},{"hex":"#b46444","weight":0.1,"lightness":0.4863,"saturation":0.4516,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/lightning_rod.png","family":"waxed_lightning_rod","relations":[{"type":"visual_neighbors","target":"minecraft:lightning_rod","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_grate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_chest","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_copper_golem_statue","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_copper","label":"Palette proche: Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_slab","label":"Palette proche: Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cut_copper_stairs","label":"Palette proche: Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lightning_rod","label":"Palette proche: Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper","label":"Palette proche: Waxed Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_slab","label":"Palette proche: Waxed Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_cut_copper_stairs","label":"Palette proche: Waxed Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_grate","label":"Palette proche: Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_grate","label":"Palette proche: Waxed Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_trapdoor","label":"Palette proche: Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_copper_trapdoor","label":"Palette proche: Waxed Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:copper_block","label":"Palette proche: Copper Block","confidence":0.94},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.819},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.811},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.811},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.777},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.777},{"type":"color_analogous","target":"minecraft:lightning_rod","label":"Couleurs analogues: Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_door","label":"Couleurs analogues: Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_door","label":"Couleurs analogues: Waxed Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_block","label":"Couleurs analogues: Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_chest","label":"Couleurs analogues: Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:copper_golem_statue","label":"Couleurs analogues: Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_block","label":"Couleurs analogues: Waxed Copper Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_copper_chest","label":"Couleurs analogues: Waxed Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.956},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.945},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.945},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.886},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.883},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.817},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.917},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.911},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.899},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.899},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.899},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.899},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.895},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.742},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.96},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.96},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.96},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.959},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.959},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.946},{"type":"color_square","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie carree: Magenta Stained Glass Pane","confidence":0.924},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_stairs","label":"Contraste clair sombre: Dark Oak Stairs","confidence":0.55}],"category":""},{"id":"minecraft:waxed_oxidized_chiseled_copper","name":"Waxed Oxidized Chiseled Copper","entry_type":"block","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","history":[{"version":"1.20.3","status":"added","notes":"Added chiseled copper behind the \" Update 1.21 \" experimental data pack."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiseled copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#54a284","dominant_hex":"#5cb494","average_hex":"#54a284","hue_group":"cyan","lightness":0.4824,"saturation":0.3171,"palette":["#5cb494","#6ac29c","#3c745c","#3c846c","#4c9484","#54a47c"],"color_groups":[{"hex":"#5cb494","weight":0.3242,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#6ac29c","weight":0.2148,"lightness":0.5882,"saturation":0.419,"hue_group":"cyan"},{"hex":"#3c745c","weight":0.1406,"lightness":0.3451,"saturation":0.3182,"hue_group":"cyan"},{"hex":"#3c846c","weight":0.1211,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1055,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.0938,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_chiseled_copper.png","family":"waxed_oxidized_chiseled_copper","relations":[{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.823},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.823},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.81},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.81},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.807},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.807},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Chiseled Copper","confidence":0.802},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Weathered Chiseled Copper","confidence":0.802},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.801},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.801},{"type":"color_analogous","target":"minecraft:oxidized_chiseled_copper","label":"Couleurs analogues: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Couleurs analogues: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_grate","label":"Couleurs analogues: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.953},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.952},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.949},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.948},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.94},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.957},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.939},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.939},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.939},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.939},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.927},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.861},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_oxidized_copper","name":"Waxed Oxidized Copper","entry_type":"block","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed copper blocks and three variants of waxed copper blocks."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#52a385","dominant_hex":"#5cb494","average_hex":"#52a385","hue_group":"cyan","lightness":0.4804,"saturation":0.3306,"palette":["#5cb494","#4cac94","#54a47c","#3c6c5b","#4c9484","#6cc49c"],"color_groups":[{"hex":"#5cb494","weight":0.2578,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#4cac94","weight":0.1992,"lightness":0.4863,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1914,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#3c6c5b","weight":0.1328,"lightness":0.3294,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1172,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1016,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper.png","family":"waxed_oxidized_copper","relations":[{"type":"variants","target":"minecraft:waxed_oxidized_copper_door","label":"Same family: waxed_oxidized_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_oxidized_copper_door","label":"Related set: waxed_oxidized_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Palette proche: Waxed Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.805},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.799},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.795},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.795},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.787},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_chest","label":"Couleurs analogues: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Couleurs analogues: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_grate","label":"Couleurs analogues: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.947},{"type":"color_complement","target":"minecraft:magenta_terracotta","label":"Contraste complementaire: Magenta Terracotta","confidence":0.93},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.926},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.921},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.904},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.897},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.892},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_oxidized_copper_bars","name":"Waxed Oxidized Copper Bars","entry_type":"block","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper bars."}],"colors":{"primary":"#407b65","dominant_hex":"#3c6c5c","average_hex":"#407b65","hue_group":"cyan","lightness":0.3667,"saturation":0.3155,"palette":["#3c6c5c","#3c6454","#3c846c","#4c9484","#54a47c"],"color_groups":[{"hex":"#3c6c5c","weight":0.319,"lightness":0.3294,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#3c6454","weight":0.25,"lightness":0.3137,"saturation":0.25,"hue_group":"cyan"},{"hex":"#3c846c","weight":0.1724,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1293,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1293,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper_bars.png","family":"waxed_oxidized_copper_bars","relations":[{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bars","label":"Palette proche: Oxidized Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chain","label":"Palette proche: Oxidized Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Palette proche: Waxed Oxidized Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.933},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.933},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.933},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.933},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.933},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.933},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.932},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.932},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.932},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.885},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.835},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.835},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.824},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.824},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.824},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.824},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.822},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.822},{"type":"color_analogous","target":"minecraft:oxidized_copper_bars","label":"Couleurs analogues: Oxidized Copper Bars","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_bulb","label":"Couleurs analogues: Oxidized Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bulb","label":"Couleurs analogues: Waxed Oxidized Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper","label":"Couleurs analogues: Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_slab","label":"Couleurs analogues: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_stairs","label":"Couleurs analogues: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper","label":"Couleurs analogues: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Couleurs analogues: Waxed Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.951},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.93},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.929},{"type":"color_triad","target":"minecraft:bookshelf","label":"Harmonie triadique: Bookshelf","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_trapdoor","label":"Harmonie triadique: Oak Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_shelf","label":"Harmonie triadique: Oak Shelf","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_shelf","label":"Harmonie triadique: Spruce Shelf","confidence":0.96},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.928},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.909},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.909},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.909},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.909},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.897},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.89},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.569},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.568},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.567},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.567},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_oxidized_copper_bulb","name":"Waxed Oxidized Copper Bulb","entry_type":"block","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","history":[{"version":"1.20.3","status":"added","notes":"Added copper bulbs behind the \" Update 1.21 \" experimental data pack ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb copper bulbs at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#46846d","dominant_hex":"#3c705e","average_hex":"#46846d","hue_group":"cyan","lightness":0.3961,"saturation":0.3069,"palette":["#3c705e","#3c6454","#4da18a","#345444","#5cb494","#6cc49c"],"color_groups":[{"hex":"#3c705e","weight":0.1992,"lightness":0.3373,"saturation":0.3023,"hue_group":"cyan"},{"hex":"#3c6454","weight":0.1953,"lightness":0.3137,"saturation":0.25,"hue_group":"cyan"},{"hex":"#4da18a","weight":0.1953,"lightness":0.4667,"saturation":0.3529,"hue_group":"cyan"},{"hex":"#345444","weight":0.1758,"lightness":0.2667,"saturation":0.2353,"hue_group":"cyan"},{"hex":"#5cb494","weight":0.1172,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1172,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper_bulb.png","family":"waxed_oxidized_copper_bulb","relations":[{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cornflower","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cornflower","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Palette proche: Oxidized Copper Bulb","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Palette proche: Waxed Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.939},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.939},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.939},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.939},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.939},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.854},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.854},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.814},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.814},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.805},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.803},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.803},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.802},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.802},{"type":"color_analogous","target":"minecraft:oxidized_copper_bulb","label":"Couleurs analogues: Oxidized Copper Bulb","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_bars","label":"Couleurs analogues: Oxidized Copper Bars","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bars","label":"Couleurs analogues: Waxed Oxidized Copper Bars","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper","label":"Couleurs analogues: Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_slab","label":"Couleurs analogues: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_stairs","label":"Couleurs analogues: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper","label":"Couleurs analogues: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Couleurs analogues: Waxed Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.946},{"type":"color_complement","target":"minecraft:magenta_terracotta","label":"Contraste complementaire: Magenta Terracotta","confidence":0.931},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.925},{"type":"color_triad","target":"minecraft:oak_shelf","label":"Harmonie triadique: Oak Shelf","confidence":0.96},{"type":"color_triad","target":"minecraft:bookshelf","label":"Harmonie triadique: Bookshelf","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_trapdoor","label":"Harmonie triadique: Oak Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.924},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.904},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.894},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.892},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:polished_diorite","label":"Contraste clair sombre: Polished Diorite","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_oxidized_copper_chain","name":"Waxed Oxidized Copper Chain","entry_type":"block","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper chains."}],"colors":{"primary":"#3e7663","dominant_hex":"#3c6454","average_hex":"#3e7663","hue_group":"cyan","lightness":0.3529,"saturation":0.3111,"palette":["#3c6454","#3c846c","#4c9484"],"color_groups":[{"hex":"#3c6454","weight":0.4643,"lightness":0.3137,"saturation":0.25,"hue_group":"cyan"},{"hex":"#3c846c","weight":0.4464,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.0893,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper_chain.png","family":"waxed_oxidized_copper_chain","relations":[{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_prismarine_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chain","label":"Palette proche: Oxidized Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bars","label":"Palette proche: Oxidized Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Palette proche: Waxed Oxidized Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_prismarine","label":"Palette proche: Dark Prismarine","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_prismarine_slab","label":"Palette proche: Dark Prismarine Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dark_prismarine_stairs","label":"Palette proche: Dark Prismarine Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Palette proche: Oxidized Copper Lantern","confidence":0.917},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_lantern","label":"Palette proche: Waxed Oxidized Copper Lantern","confidence":0.917},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Palette proche: Oxidized Copper Bulb","confidence":0.91},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Palette proche: Waxed Oxidized Copper Bulb","confidence":0.91},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.893},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.893},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.885},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.818},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.818},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.796},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.796},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.796},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.796},{"type":"color_bridge","target":"minecraft:gray_candle","label":"Pont de nuance par palette: Gray Candle","confidence":0.791},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.781},{"type":"color_analogous","target":"minecraft:oxidized_copper_chain","label":"Couleurs analogues: Oxidized Copper Chain","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_lightning_rod","label":"Couleurs analogues: Oxidized Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_lightning_rod","label":"Couleurs analogues: Waxed Oxidized Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_door","label":"Couleurs analogues: Oxidized Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_door","label":"Couleurs analogues: Waxed Oxidized Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_bars","label":"Couleurs analogues: Oxidized Copper Bars","confidence":0.952},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_bars","label":"Couleurs analogues: Waxed Oxidized Copper Bars","confidence":0.952},{"type":"color_analogous","target":"minecraft:oxidized_copper_bulb","label":"Couleurs analogues: Oxidized Copper Bulb","confidence":0.949},{"type":"color_complement","target":"minecraft:purple_terracotta","label":"Contraste complementaire: Purple Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:magenta_terracotta","label":"Contraste complementaire: Magenta Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_glazed_terracotta","label":"Contraste complementaire: Pink Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_stained_glass_pane","label":"Contraste complementaire: Pink Stained Glass Pane","confidence":0.954},{"type":"color_complement","target":"minecraft:pink_shulker_box","label":"Contraste complementaire: Pink Shulker Box","confidence":0.951},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.943},{"type":"color_complement","target":"minecraft:pink_stained_glass","label":"Contraste complementaire: Pink Stained Glass","confidence":0.932},{"type":"color_complement","target":"minecraft:pink_carpet","label":"Contraste complementaire: Pink Carpet","confidence":0.918},{"type":"color_triad","target":"minecraft:torch","label":"Harmonie triadique: Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:wall_torch","label":"Harmonie triadique: Wall Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:short_dry_grass","label":"Harmonie triadique: Short Dry Grass","confidence":0.96},{"type":"color_triad","target":"minecraft:tall_dry_grass","label":"Harmonie triadique: Tall Dry Grass","confidence":0.96},{"type":"color_triad","target":"minecraft:bee_nest","label":"Harmonie triadique: Bee Nest","confidence":0.96},{"type":"color_triad","target":"minecraft:chiseled_quartz_block","label":"Harmonie triadique: Chiseled Quartz Block","confidence":0.953},{"type":"color_triad","target":"minecraft:yellow_terracotta","label":"Harmonie triadique: Yellow Terracotta","confidence":0.943},{"type":"color_triad","target":"minecraft:oak_hanging_sign","label":"Harmonie triadique: Oak Hanging Sign","confidence":0.942},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.96},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.96},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.946},{"type":"color_square","target":"minecraft:wither_rose","label":"Harmonie carree: Wither Rose","confidence":0.946},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.914},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.914},{"type":"color_square","target":"minecraft:bamboo_block","label":"Harmonie carree: Bamboo Block","confidence":0.898},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.582},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.581},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.581},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.581},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_oxidized_copper_chest","name":"Waxed Oxidized Copper Chest","entry_type":"block","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper chests."}],"colors":{"primary":"#52a385","dominant_hex":"#5cb494","average_hex":"#52a385","hue_group":"cyan","lightness":0.4804,"saturation":0.3306,"palette":["#5cb494","#4cac94","#54a47c","#3c6c5b","#4c9484","#6cc49c"],"color_groups":[{"hex":"#5cb494","weight":0.2578,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#4cac94","weight":0.1992,"lightness":0.4863,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1914,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#3c6c5b","weight":0.1328,"lightness":0.3294,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1172,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1016,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper.png","family":"waxed_oxidized_copper_chest","relations":[{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Palette proche: Waxed Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.805},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.799},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.795},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.795},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.787},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper","label":"Couleurs analogues: Waxed Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Couleurs analogues: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_grate","label":"Couleurs analogues: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.947},{"type":"color_complement","target":"minecraft:magenta_terracotta","label":"Contraste complementaire: Magenta Terracotta","confidence":0.93},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.926},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.921},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.904},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.897},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.892},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_oxidized_copper_door","name":"Waxed Oxidized Copper Door","entry_type":"block","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","history":[{"version":"1.20.3","status":"added","notes":"Added copper doors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#52a085","dominant_hex":"#4cac94","average_hex":"#52a085","hue_group":"cyan","lightness":0.4745,"saturation":0.3223,"palette":["#4cac94","#3e6e5d","#6cc49c","#4c9484","#5cb494","#54a47c"],"color_groups":[{"hex":"#4cac94","weight":0.2452,"lightness":0.4863,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#3e6e5d","weight":0.2019,"lightness":0.3373,"saturation":0.2791,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1827,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1538,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#5cb494","weight":0.1442,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.0721,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper_door_top.png","family":"waxed_oxidized_copper","relations":[{"type":"variants","target":"minecraft:waxed_oxidized_copper","label":"Same family: waxed_oxidized_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_oxidized_copper","label":"Related set: waxed_oxidized_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Palette proche: Waxed Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.823},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.823},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.81},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.81},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.804},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.804},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.799},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.799},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Chiseled Copper","confidence":0.792},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Weathered Chiseled Copper","confidence":0.792},{"type":"color_analogous","target":"minecraft:oxidized_copper_door","label":"Couleurs analogues: Oxidized Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_lightning_rod","label":"Couleurs analogues: Oxidized Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_lightning_rod","label":"Couleurs analogues: Waxed Oxidized Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper","label":"Couleurs analogues: Waxed Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_chest","label":"Couleurs analogues: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:magenta_terracotta","label":"Contraste complementaire: Magenta Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:purple_terracotta","label":"Contraste complementaire: Purple Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.955},{"type":"color_complement","target":"minecraft:pink_glazed_terracotta","label":"Contraste complementaire: Pink Glazed Terracotta","confidence":0.948},{"type":"color_complement","target":"minecraft:pink_stained_glass_pane","label":"Contraste complementaire: Pink Stained Glass Pane","confidence":0.941},{"type":"color_complement","target":"minecraft:pink_shulker_box","label":"Contraste complementaire: Pink Shulker Box","confidence":0.938},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.928},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.923},{"type":"color_triad","target":"minecraft:torch","label":"Harmonie triadique: Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:wall_torch","label":"Harmonie triadique: Wall Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:short_dry_grass","label":"Harmonie triadique: Short Dry Grass","confidence":0.96},{"type":"color_triad","target":"minecraft:tall_dry_grass","label":"Harmonie triadique: Tall Dry Grass","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_terracotta","label":"Harmonie triadique: Yellow Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:chiseled_quartz_block","label":"Harmonie triadique: Chiseled Quartz Block","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_hanging_sign","label":"Harmonie triadique: Oak Hanging Sign","confidence":0.958},{"type":"color_triad","target":"minecraft:oak_wall_hanging_sign","label":"Harmonie triadique: Oak Wall Hanging Sign","confidence":0.958},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.957},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.953},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.951},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.93},{"type":"color_square","target":"minecraft:wither_rose","label":"Harmonie carree: Wither Rose","confidence":0.93},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.915},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.897},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.897},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_oxidized_copper_golem_statue","name":"Waxed Oxidized Copper Golem Statue","entry_type":"block","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper golem statues."}],"colors":{"primary":"#52a385","dominant_hex":"#5cb494","average_hex":"#52a385","hue_group":"cyan","lightness":0.4804,"saturation":0.3306,"palette":["#5cb494","#4cac94","#54a47c","#3c6c5b","#4c9484","#6cc49c"],"color_groups":[{"hex":"#5cb494","weight":0.2578,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#4cac94","weight":0.1992,"lightness":0.4863,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1914,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#3c6c5b","weight":0.1328,"lightness":0.3294,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1172,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1016,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper.png","family":"waxed_oxidized_copper_golem_statue","relations":[{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Palette proche: Waxed Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.805},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.805},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.799},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.795},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.795},{"type":"color_bridge","target":"minecraft:chain_command_block","label":"Pont de nuance par sous-ton: Chain Command Block","confidence":0.787},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper","label":"Couleurs analogues: Waxed Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_chest","label":"Couleurs analogues: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_grate","label":"Couleurs analogues: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.947},{"type":"color_complement","target":"minecraft:magenta_terracotta","label":"Contraste complementaire: Magenta Terracotta","confidence":0.93},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.926},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.921},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.904},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.904},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.897},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.892},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_oxidized_copper_grate","name":"Waxed Oxidized Copper Grate","entry_type":"block","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","history":[{"version":"1.20.3","status":"added","notes":"Added copper grates behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#52a183","dominant_hex":"#4cac94","average_hex":"#52a183","hue_group":"cyan","lightness":0.4765,"saturation":0.3251,"palette":["#4cac94","#5cb494","#54a47c","#3c6858","#6cc49c","#4b9382"],"color_groups":[{"hex":"#4cac94","weight":0.2179,"lightness":0.4863,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#5cb494","weight":0.2179,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1955,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#3c6858","weight":0.162,"lightness":0.3216,"saturation":0.2683,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1229,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#4b9382","weight":0.0838,"lightness":0.4353,"saturation":0.3243,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper_grate.png","family":"waxed_oxidized_copper_grate","relations":[{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.827},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.827},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.806},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.806},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.804},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.804},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.799},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.799},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.796},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Chiseled Copper","confidence":0.789},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper","label":"Couleurs analogues: Waxed Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_chest","label":"Couleurs analogues: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Couleurs analogues: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.958},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.958},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.95},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.944},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.944},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.944},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.927},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.927},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.927},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.927},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.915},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.874},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_oxidized_copper_lantern","name":"Waxed Oxidized Copper Lantern","entry_type":"block","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper lanterns."}],"colors":{"primary":"#4e8b6f","dominant_hex":"#3c6454","average_hex":"#4e8b6f","hue_group":"cyan","lightness":0.4255,"saturation":0.2811,"palette":["#3c6454","#3c846c","#4c9484","#3d765a","#aae4ac","#5faa72"],"color_groups":[{"hex":"#3c6454","weight":0.2358,"lightness":0.3137,"saturation":0.25,"hue_group":"cyan"},{"hex":"#3c846c","weight":0.2358,"lightness":0.3765,"saturation":0.375,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1698,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#3d765a","weight":0.1509,"lightness":0.351,"saturation":0.3184,"hue_group":"cyan"},{"hex":"#aae4ac","weight":0.1132,"lightness":0.7804,"saturation":0.5179,"hue_group":"green"},{"hex":"#5faa72","weight":0.0943,"lightness":0.5196,"saturation":0.3061,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper_lantern.png","family":"waxed_oxidized_copper_lantern","relations":[{"type":"visual_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cornflower","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_cornflower","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Palette proche: Oxidized Copper Lantern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chain","label":"Palette proche: Oxidized Copper Chain","confidence":0.917},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Palette proche: Waxed Oxidized Copper Chain","confidence":0.917},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bars","label":"Palette proche: Oxidized Copper Bars","confidence":0.914},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Palette proche: Waxed Oxidized Copper Bars","confidence":0.914},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.867},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.867},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.867},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.867},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.867},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.867},{"type":"color_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Palette proche: Oxidized Copper Bulb","confidence":0.866},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.855},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.855},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Lantern","confidence":0.854},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par sous-ton: Weathered Copper Lantern","confidence":0.854},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.842},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.842},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.842},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.842},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.824},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.824},{"type":"color_analogous","target":"minecraft:oxidized_copper_lantern","label":"Couleurs analogues: Oxidized Copper Lantern","confidence":0.96},{"type":"color_analogous","target":"minecraft:torchflower_crop","label":"Couleurs analogues: Torchflower Crop","confidence":0.952},{"type":"color_analogous","target":"minecraft:dark_prismarine","label":"Couleurs analogues: Dark Prismarine","confidence":0.893},{"type":"color_analogous","target":"minecraft:dark_prismarine_slab","label":"Couleurs analogues: Dark Prismarine Slab","confidence":0.893},{"type":"color_analogous","target":"minecraft:dark_prismarine_stairs","label":"Couleurs analogues: Dark Prismarine Stairs","confidence":0.893},{"type":"color_analogous","target":"minecraft:oxidized_chiseled_copper","label":"Couleurs analogues: Oxidized Chiseled Copper","confidence":0.889},{"type":"color_analogous","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Couleurs analogues: Waxed Oxidized Chiseled Copper","confidence":0.889},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper","label":"Couleurs analogues: Oxidized Cut Copper","confidence":0.886},{"type":"color_complement","target":"minecraft:crimson_button","label":"Contraste complementaire: Crimson Button","confidence":0.922},{"type":"color_complement","target":"minecraft:crimson_fence","label":"Contraste complementaire: Crimson Fence","confidence":0.922},{"type":"color_complement","target":"minecraft:crimson_fence_gate","label":"Contraste complementaire: Crimson Fence Gate","confidence":0.922},{"type":"color_complement","target":"minecraft:crimson_planks","label":"Contraste complementaire: Crimson Planks","confidence":0.922},{"type":"color_complement","target":"minecraft:crimson_pressure_plate","label":"Contraste complementaire: Crimson Pressure Plate","confidence":0.922},{"type":"color_complement","target":"minecraft:crimson_sign","label":"Contraste complementaire: Crimson Sign","confidence":0.922},{"type":"color_complement","target":"minecraft:crimson_slab","label":"Contraste complementaire: Crimson Slab","confidence":0.922},{"type":"color_complement","target":"minecraft:crimson_stairs","label":"Contraste complementaire: Crimson Stairs","confidence":0.922},{"type":"color_triad","target":"minecraft:sniffer_egg","label":"Harmonie triadique: Sniffer Egg","confidence":0.96},{"type":"color_triad","target":"minecraft:glowstone","label":"Harmonie triadique: Glowstone","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_door","label":"Harmonie triadique: Spruce Door","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_trapdoor","label":"Harmonie triadique: Spruce Trapdoor","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_button","label":"Harmonie triadique: Spruce Button","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_fence","label":"Harmonie triadique: Spruce Fence","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_fence_gate","label":"Harmonie triadique: Spruce Fence Gate","confidence":0.96},{"type":"color_triad","target":"minecraft:spruce_planks","label":"Harmonie triadique: Spruce Planks","confidence":0.96},{"type":"color_square","target":"minecraft:black_candle","label":"Harmonie carree: Black Candle","confidence":0.96},{"type":"color_square","target":"minecraft:end_stone","label":"Harmonie carree: End Stone","confidence":0.96},{"type":"color_square","target":"minecraft:cocoa","label":"Harmonie carree: Cocoa","confidence":0.959},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.864},{"type":"color_square","target":"minecraft:yellow_stained_glass_pane","label":"Harmonie carree: Yellow Stained Glass Pane","confidence":0.863},{"type":"color_square","target":"minecraft:yellow_stained_glass","label":"Harmonie carree: Yellow Stained Glass","confidence":0.858},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.851},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.843},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_oxidized_copper_trapdoor","name":"Waxed Oxidized Copper Trapdoor","entry_type":"block","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","history":[{"version":"1.20.3","status":"added","notes":"Added copper trapdoors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#54a184","dominant_hex":"#5cb494","average_hex":"#54a184","hue_group":"cyan","lightness":0.4804,"saturation":0.3143,"palette":["#5cb494","#6cc49c","#4c9484","#3c6c5b","#54a47c","#4cac94"],"color_groups":[{"hex":"#5cb494","weight":0.2108,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.1863,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1814,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#3c6c5b","weight":0.1667,"lightness":0.3294,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1618,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#4cac94","weight":0.0931,"lightness":0.4863,"saturation":0.3871,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_copper_trapdoor.png","family":"waxed_oxidized_copper_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Palette proche: Waxed Oxidized Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Palette proche: Oxidized Chiseled Copper","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.821},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.813},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.813},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.81},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.81},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.804},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.804},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.796},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Weathered Chiseled Copper","confidence":0.795},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_chiseled_copper","label":"Couleurs analogues: Oxidized Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_chiseled_copper","label":"Couleurs analogues: Waxed Oxidized Chiseled Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_grate","label":"Couleurs analogues: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.958},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.956},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.937},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.936},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.937},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.919},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.919},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.919},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.919},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.907},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.881},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete_powder","label":"Contraste clair sombre: Black Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk_catalyst","label":"Contraste clair sombre: Sculk Catalyst","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_oxidized_cut_copper","name":"Waxed Oxidized Cut Copper","entry_type":"block","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed cut copper and three variants of waxed cut copper."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cut copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#509a7e","dominant_hex":"#57a98d","average_hex":"#509a7e","hue_group":"cyan","lightness":0.4588,"saturation":0.3162,"palette":["#57a98d","#4c9484","#54a47c","#6cc49c","#346454","#3c7c64"],"color_groups":[{"hex":"#57a98d","weight":0.3281,"lightness":0.502,"saturation":0.3228,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1797,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1328,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.125,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#346454","weight":0.1172,"lightness":0.298,"saturation":0.3158,"hue_group":"cyan"},{"hex":"#3c7c64","weight":0.1172,"lightness":0.3608,"saturation":0.3478,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_cut_copper.png","family":"waxed_oxidized_cut_copper","relations":[{"type":"variants","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Same family: waxed_oxidized_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Related set: waxed_oxidized_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Same family: waxed_oxidized_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Related set: waxed_oxidized_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.812},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.812},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.809},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.809},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.798},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.797},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.797},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.796},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper","label":"Couleurs analogues: Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_slab","label":"Couleurs analogues: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_stairs","label":"Couleurs analogues: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Couleurs analogues: Waxed Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Couleurs analogues: Waxed Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Couleurs analogues: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.952},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.941},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.94},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.942},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.923},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.911},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.876},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_oxidized_cut_copper_slab","name":"Waxed Oxidized Cut Copper Slab","entry_type":"block","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper slabs and three variants of waxed cut copper slabs."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper slabs."}],"colors":{"primary":"#509a7e","dominant_hex":"#57a98d","average_hex":"#509a7e","hue_group":"cyan","lightness":0.4588,"saturation":0.3162,"palette":["#57a98d","#4c9484","#54a47c","#6cc49c","#346454","#3c7c64"],"color_groups":[{"hex":"#57a98d","weight":0.3281,"lightness":0.502,"saturation":0.3228,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1797,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1328,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.125,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#346454","weight":0.1172,"lightness":0.298,"saturation":0.3158,"hue_group":"cyan"},{"hex":"#3c7c64","weight":0.1172,"lightness":0.3608,"saturation":0.3478,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_cut_copper.png","family":"waxed_oxidized_cut_copper","relations":[{"type":"variants","target":"minecraft:waxed_oxidized_cut_copper","label":"Same family: waxed_oxidized_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_oxidized_cut_copper","label":"Related set: waxed_oxidized_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Same family: waxed_oxidized_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Related set: waxed_oxidized_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Palette proche: Waxed Oxidized Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.812},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.812},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.809},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.809},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.798},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.797},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.797},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.796},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper","label":"Couleurs analogues: Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_slab","label":"Couleurs analogues: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_stairs","label":"Couleurs analogues: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper","label":"Couleurs analogues: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Couleurs analogues: Waxed Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Couleurs analogues: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.952},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.941},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.94},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.942},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.923},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.911},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.876},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_oxidized_cut_copper_stairs","name":"Waxed Oxidized Cut Copper Stairs","entry_type":"block","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper stairs and three variants of waxed cut copper stairs: (waxed) cut copper stairs, (waxed) lightly weathered cut copper stairs, (waxed) semi-weathered cut copper stairs, and weathered cut"},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper stairs."}],"colors":{"primary":"#509a7e","dominant_hex":"#57a98d","average_hex":"#509a7e","hue_group":"cyan","lightness":0.4588,"saturation":0.3162,"palette":["#57a98d","#4c9484","#54a47c","#6cc49c","#346454","#3c7c64"],"color_groups":[{"hex":"#57a98d","weight":0.3281,"lightness":0.502,"saturation":0.3228,"hue_group":"cyan"},{"hex":"#4c9484","weight":0.1797,"lightness":0.4392,"saturation":0.3214,"hue_group":"cyan"},{"hex":"#54a47c","weight":0.1328,"lightness":0.4863,"saturation":0.3226,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.125,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#346454","weight":0.1172,"lightness":0.298,"saturation":0.3158,"hue_group":"cyan"},{"hex":"#3c7c64","weight":0.1172,"lightness":0.3608,"saturation":0.3478,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_cut_copper.png","family":"waxed_oxidized_cut_copper","relations":[{"type":"variants","target":"minecraft:waxed_oxidized_cut_copper","label":"Same family: waxed_oxidized_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_oxidized_cut_copper","label":"Related set: waxed_oxidized_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Same family: waxed_oxidized_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Related set: waxed_oxidized_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_chiseled_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper","label":"Palette proche: Oxidized Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Palette proche: Oxidized Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Palette proche: Oxidized Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Palette proche: Waxed Oxidized Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Palette proche: Waxed Oxidized Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.841},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.812},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.812},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.809},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.809},{"type":"color_bridge","target":"minecraft:glow_lichen","label":"Pont de nuance par sous-ton: Glow Lichen","confidence":0.798},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.797},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.797},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.796},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper","label":"Couleurs analogues: Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_slab","label":"Couleurs analogues: Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_cut_copper_stairs","label":"Couleurs analogues: Oxidized Cut Copper Stairs","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper","label":"Couleurs analogues: Waxed Oxidized Cut Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Couleurs analogues: Waxed Oxidized Cut Copper Slab","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_trapdoor","label":"Couleurs analogues: Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Couleurs analogues: Waxed Oxidized Copper Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_grate","label":"Couleurs analogues: Oxidized Copper Grate","confidence":0.96},{"type":"color_complement","target":"minecraft:crimson_trapdoor","label":"Contraste complementaire: Crimson Trapdoor","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_candle","label":"Contraste complementaire: Pink Candle","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.96},{"type":"color_complement","target":"minecraft:cherry_leaves","label":"Contraste complementaire: Cherry Leaves","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.96},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.952},{"type":"color_complement","target":"minecraft:crimson_shelf","label":"Contraste complementaire: Crimson Shelf","confidence":0.941},{"type":"color_complement","target":"minecraft:crimson_door","label":"Contraste complementaire: Crimson Door","confidence":0.94},{"type":"color_triad","target":"minecraft:black_banner","label":"Harmonie triadique: Black Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:black_bed","label":"Harmonie triadique: Black Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:black_wall_banner","label":"Harmonie triadique: Black Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_banner","label":"Harmonie triadique: Blue Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_bed","label":"Harmonie triadique: Blue Bed","confidence":0.96},{"type":"color_triad","target":"minecraft:blue_wall_banner","label":"Harmonie triadique: Blue Wall Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_banner","label":"Harmonie triadique: Brown Banner","confidence":0.96},{"type":"color_triad","target":"minecraft:brown_bed","label":"Harmonie triadique: Brown Bed","confidence":0.96},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.96},{"type":"color_square","target":"minecraft:potted_flowering_azalea_bush","label":"Harmonie carree: Potted Flowering Azalea Bush","confidence":0.942},{"type":"color_square","target":"minecraft:end_stone_brick_slab","label":"Harmonie carree: End Stone Brick Slab","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_brick_stairs","label":"Harmonie carree: End Stone Brick Stairs","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_brick_wall","label":"Harmonie carree: End Stone Brick Wall","confidence":0.923},{"type":"color_square","target":"minecraft:end_stone_bricks","label":"Harmonie carree: End Stone Bricks","confidence":0.923},{"type":"color_square","target":"minecraft:wet_sponge","label":"Harmonie carree: Wet Sponge","confidence":0.911},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.876},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_oxidized_lightning_rod","name":"Waxed Oxidized Lightning Rod","entry_type":"block","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added lightning rods."},{"version":"wiki-history","status":"added","notes":"Added exposed, weathered and oxidized variants of lightning rods."}],"colors":{"primary":"#4f9a80","dominant_hex":"#4e917a","average_hex":"#4f9a80","hue_group":"cyan","lightness":0.4569,"saturation":0.3219,"palette":["#4e917a","#5cb494","#4cac8c","#3c7464","#6cc49c","#346454"],"color_groups":[{"hex":"#4e917a","weight":0.25,"lightness":0.4373,"saturation":0.3004,"hue_group":"cyan"},{"hex":"#5cb494","weight":0.2,"lightness":0.5333,"saturation":0.3697,"hue_group":"cyan"},{"hex":"#4cac8c","weight":0.175,"lightness":0.4863,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#3c7464","weight":0.15,"lightness":0.3451,"saturation":0.3182,"hue_group":"cyan"},{"hex":"#6cc49c","weight":0.125,"lightness":0.5961,"saturation":0.4272,"hue_group":"cyan"},{"hex":"#346454","weight":0.1,"lightness":0.298,"saturation":0.3158,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oxidized_lightning_rod.png","family":"waxed_oxidized_lightning_rod","relations":[{"type":"visual_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_cut_copper_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_stained_glass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_grate","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxidized_lightning_rod","label":"Palette proche: Oxidized Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_door","label":"Palette proche: Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_door","label":"Palette proche: Waxed Oxidized Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_trapdoor","label":"Palette proche: Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_trapdoor","label":"Palette proche: Waxed Oxidized Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper","label":"Palette proche: Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_chest","label":"Palette proche: Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_golem_statue","label":"Palette proche: Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper","label":"Palette proche: Waxed Oxidized Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_chest","label":"Palette proche: Waxed Oxidized Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Palette proche: Waxed Oxidized Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:oxidized_copper_grate","label":"Palette proche: Oxidized Copper Grate","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Chain","confidence":0.831},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par sous-ton: Weathered Copper Chain","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par sous-ton: Weathered Lightning Rod","confidence":0.801},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.796},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.796},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bulb","confidence":0.792},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par sous-ton: Weathered Copper Bulb","confidence":0.792},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Bars","confidence":0.786},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par sous-ton: Weathered Copper Bars","confidence":0.786},{"type":"color_analogous","target":"minecraft:oxidized_lightning_rod","label":"Couleurs analogues: Oxidized Lightning Rod","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_door","label":"Couleurs analogues: Oxidized Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_door","label":"Couleurs analogues: Waxed Oxidized Copper Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper","label":"Couleurs analogues: Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_chest","label":"Couleurs analogues: Oxidized Copper Chest","confidence":0.96},{"type":"color_analogous","target":"minecraft:oxidized_copper_golem_statue","label":"Couleurs analogues: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper","label":"Couleurs analogues: Waxed Oxidized Copper","confidence":0.96},{"type":"color_analogous","target":"minecraft:waxed_oxidized_copper_chest","label":"Couleurs analogues: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_complement","target":"minecraft:magenta_terracotta","label":"Contraste complementaire: Magenta Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:purple_terracotta","label":"Contraste complementaire: Purple Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:pearlescent_froglight","label":"Contraste complementaire: Pearlescent Froglight","confidence":0.956},{"type":"color_complement","target":"minecraft:pink_glazed_terracotta","label":"Contraste complementaire: Pink Glazed Terracotta","confidence":0.947},{"type":"color_complement","target":"minecraft:pink_stained_glass_pane","label":"Contraste complementaire: Pink Stained Glass Pane","confidence":0.94},{"type":"color_complement","target":"minecraft:pink_shulker_box","label":"Contraste complementaire: Pink Shulker Box","confidence":0.937},{"type":"color_complement","target":"minecraft:pink_concrete_powder","label":"Contraste complementaire: Pink Concrete Powder","confidence":0.929},{"type":"color_complement","target":"minecraft:pink_concrete","label":"Contraste complementaire: Pink Concrete","confidence":0.924},{"type":"color_triad","target":"minecraft:torch","label":"Harmonie triadique: Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:wall_torch","label":"Harmonie triadique: Wall Torch","confidence":0.96},{"type":"color_triad","target":"minecraft:short_dry_grass","label":"Harmonie triadique: Short Dry Grass","confidence":0.96},{"type":"color_triad","target":"minecraft:tall_dry_grass","label":"Harmonie triadique: Tall Dry Grass","confidence":0.96},{"type":"color_triad","target":"minecraft:yellow_terracotta","label":"Harmonie triadique: Yellow Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:chiseled_quartz_block","label":"Harmonie triadique: Chiseled Quartz Block","confidence":0.96},{"type":"color_triad","target":"minecraft:oak_hanging_sign","label":"Harmonie triadique: Oak Hanging Sign","confidence":0.959},{"type":"color_triad","target":"minecraft:oak_wall_hanging_sign","label":"Harmonie triadique: Oak Wall Hanging Sign","confidence":0.959},{"type":"color_square","target":"minecraft:green_terracotta","label":"Harmonie carree: Green Terracotta","confidence":0.956},{"type":"color_square","target":"minecraft:flowering_azalea","label":"Harmonie carree: Flowering Azalea","confidence":0.951},{"type":"color_square","target":"minecraft:sculk_shrieker","label":"Harmonie carree: Sculk Shrieker","confidence":0.95},{"type":"color_square","target":"minecraft:potted_wither_rose","label":"Harmonie carree: Potted Wither Rose","confidence":0.929},{"type":"color_square","target":"minecraft:wither_rose","label":"Harmonie carree: Wither Rose","confidence":0.929},{"type":"color_square","target":"minecraft:sea_pickle","label":"Harmonie carree: Sea Pickle","confidence":0.916},{"type":"color_square","target":"minecraft:dandelion","label":"Harmonie carree: Dandelion","confidence":0.896},{"type":"color_square","target":"minecraft:potted_dandelion","label":"Harmonie carree: Potted Dandelion","confidence":0.896},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:sculk","label":"Contraste clair sombre: Sculk","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55}],"category":""},{"id":"minecraft:waxed_weathered_chiseled_copper","name":"Waxed Weathered Chiseled Copper","entry_type":"block","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","history":[{"version":"1.20.3","status":"added","notes":"Added chiseled copper behind the \" Update 1.21 \" experimental data pack."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiseled copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#69976f","dominant_hex":"#64ac74","average_hex":"#69976f","hue_group":"green","lightness":0.502,"saturation":0.1811,"palette":["#64ac74","#7ab499","#4c7464","#6c7444","#6c8454","#768f63"],"color_groups":[{"hex":"#64ac74","weight":0.3164,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#7ab499","weight":0.2148,"lightness":0.5922,"saturation":0.2788,"hue_group":"cyan"},{"hex":"#4c7464","weight":0.1406,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#6c7444","weight":0.1211,"lightness":0.3608,"saturation":0.2609,"hue_group":"yellow"},{"hex":"#6c8454","weight":0.1055,"lightness":0.4235,"saturation":0.2222,"hue_group":"green"},{"hex":"#768f63","weight":0.1016,"lightness":0.4745,"saturation":0.1818,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_chiseled_copper.png","family":"waxed_weathered_chiseled_copper","relations":[{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper","label":"Palette proche: Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Palette proche: Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_stairs","label":"Palette proche: Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Palette proche: Waxed Weathered Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_lightning_rod","label":"Palette proche: Weathered Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.934},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par palette: Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par palette: Waxed Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper","label":"Pont de nuance par palette: Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_slab","label":"Pont de nuance par palette: Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_stairs","label":"Pont de nuance par palette: Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par palette: Waxed Weathered Lightning Rod","confidence":0.86},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_weathered_copper","name":"Waxed Weathered Copper","entry_type":"block","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed copper blocks and three variants of waxed copper blocks."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#6c996e","dominant_hex":"#64a474","average_hex":"#6c996e","hue_group":"green","lightness":0.5118,"saturation":0.1807,"palette":["#64a474","#648c5e","#71834e","#64ac74","#7cb49c","#8c8474"],"color_groups":[{"hex":"#64a474","weight":0.2305,"lightness":0.5176,"saturation":0.2602,"hue_group":"green"},{"hex":"#648c5e","weight":0.2188,"lightness":0.4588,"saturation":0.1966,"hue_group":"green"},{"hex":"#71834e","weight":0.1797,"lightness":0.4098,"saturation":0.2536,"hue_group":"yellow"},{"hex":"#64ac74","weight":0.168,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#7cb49c","weight":0.125,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#8c8474","weight":0.0781,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper.png","family":"waxed_weathered_copper","relations":[{"type":"variants","target":"minecraft:waxed_weathered_copper_door","label":"Same family: waxed_weathered_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_weathered_copper_door","label":"Related set: waxed_weathered_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Palette proche: Waxed Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Palette proche: Waxed Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper","label":"Palette proche: Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_chest","label":"Palette proche: Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Palette proche: Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Palette proche: Waxed Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Palette proche: Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.937},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.937},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.929},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par palette: Waxed Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par palette: Waxed Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par palette: Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_chest","label":"Pont de nuance par palette: Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_golem_statue","label":"Pont de nuance par palette: Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par palette: Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par palette: Waxed Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par palette: Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_weathered_copper_bars","name":"Waxed Weathered Copper Bars","entry_type":"block","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper bars."}],"colors":{"primary":"#557b5e","dominant_hex":"#4c7464","average_hex":"#557b5e","hue_group":"green","lightness":0.4078,"saturation":0.1827,"palette":["#4c7464","#3c5c54","#6c8454","#64ac74","#6c945c","#8c8474"],"color_groups":[{"hex":"#4c7464","weight":0.319,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#3c5c54","weight":0.25,"lightness":0.298,"saturation":0.2105,"hue_group":"cyan"},{"hex":"#6c8454","weight":0.1724,"lightness":0.4235,"saturation":0.2222,"hue_group":"green"},{"hex":"#64ac74","weight":0.1293,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#6c945c","weight":0.1207,"lightness":0.4706,"saturation":0.2333,"hue_group":"green"},{"hex":"#8c8474","weight":0.0086,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper_bars.png","family":"waxed_weathered_copper_bars","relations":[{"type":"visual_neighbors","target":"minecraft:weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal_frame","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_plant","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_fungus","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_emerald_ore","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:weathered_copper_bars","label":"Palette proche: Weathered Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Palette proche: Waxed Weathered Copper Lantern","confidence":0.939},{"type":"color_neighbors","target":"minecraft:weathered_copper_lantern","label":"Palette proche: Weathered Copper Lantern","confidence":0.939},{"type":"color_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Palette proche: Waxed Weathered Lightning Rod","confidence":0.938},{"type":"color_neighbors","target":"minecraft:weathered_lightning_rod","label":"Palette proche: Weathered Lightning Rod","confidence":0.938},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.929},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.929},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.925},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.925},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.919},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par palette: Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par palette: Waxed Weathered Copper Chain","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par palette: Weathered Copper Chain","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par palette: Waxed Weathered Copper Lantern","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par palette: Weathered Copper Lantern","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par palette: Waxed Weathered Lightning Rod","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par palette: Weathered Lightning Rod","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par palette: Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_weathered_copper_bulb","name":"Waxed Weathered Copper Bulb","entry_type":"block","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","history":[{"version":"1.20.3","status":"added","notes":"Added copper bulbs behind the \" Update 1.21 \" experimental data pack ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb copper bulbs at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#5c7f63","dominant_hex":"#728654","average_hex":"#5c7f63","hue_group":"green","lightness":0.4294,"saturation":0.1598,"palette":["#728654","#4c544c","#4c7464","#64a674","#44645c","#7bb49a"],"color_groups":[{"hex":"#728654","weight":0.2266,"lightness":0.4275,"saturation":0.2294,"hue_group":"yellow"},{"hex":"#4c544c","weight":0.1758,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#4c7464","weight":0.1758,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#64a674","weight":0.1562,"lightness":0.5216,"saturation":0.2705,"hue_group":"green"},{"hex":"#44645c","weight":0.1406,"lightness":0.3294,"saturation":0.1905,"hue_group":"cyan"},{"hex":"#7bb49a","weight":0.125,"lightness":0.5941,"saturation":0.2754,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper_bulb.png","family":"waxed_weathered_copper_bulb","relations":[{"type":"visual_neighbors","target":"minecraft:weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_plant","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal_frame","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:weathered_copper_bulb","label":"Palette proche: Weathered Copper Bulb","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.921},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.921},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.921},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.921},{"type":"color_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Palette proche: Waxed Weathered Lightning Rod","confidence":0.919},{"type":"color_neighbors","target":"minecraft:weathered_lightning_rod","label":"Palette proche: Weathered Lightning Rod","confidence":0.919},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Palette proche: Waxed Weathered Copper Bars","confidence":0.912},{"type":"color_neighbors","target":"minecraft:weathered_copper_bars","label":"Palette proche: Weathered Copper Bars","confidence":0.912},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.89},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.89},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.89},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par palette: Weathered Copper Bulb","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par palette: Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par palette: Waxed Weathered Lightning Rod","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par palette: Weathered Lightning Rod","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par palette: Waxed Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par palette: Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par palette: Waxed Weathered Cut Copper","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_weathered_copper_chain","name":"Waxed Weathered Copper Chain","entry_type":"block","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper chains."}],"colors":{"primary":"#496d5c","dominant_hex":"#3c5c54","average_hex":"#496d5c","hue_group":"cyan","lightness":0.3569,"saturation":0.1978,"palette":["#3c5c54","#4c7464","#6c945c","#8c8474"],"color_groups":[{"hex":"#3c5c54","weight":0.4643,"lightness":0.298,"saturation":0.2105,"hue_group":"cyan"},{"hex":"#4c7464","weight":0.4107,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#6c945c","weight":0.1071,"lightness":0.4706,"saturation":0.2333,"hue_group":"green"},{"hex":"#8c8474","weight":0.0179,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper_chain.png","family":"waxed_weathered_copper_chain","relations":[{"type":"visual_neighbors","target":"minecraft:weathered_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_spawner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_diamond_ore","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vault","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Palette proche: Waxed Weathered Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_bars","label":"Palette proche: Weathered Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Palette proche: Waxed Weathered Copper Lantern","confidence":0.918},{"type":"color_neighbors","target":"minecraft:weathered_copper_lantern","label":"Palette proche: Weathered Copper Lantern","confidence":0.918},{"type":"color_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Palette proche: Waxed Weathered Lightning Rod","confidence":0.879},{"type":"color_neighbors","target":"minecraft:weathered_lightning_rod","label":"Palette proche: Weathered Lightning Rod","confidence":0.879},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Palette proche: Waxed Weathered Copper Bulb","confidence":0.874},{"type":"color_neighbors","target":"minecraft:weathered_copper_bulb","label":"Palette proche: Weathered Copper Bulb","confidence":0.874},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.872},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.872},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.872},{"type":"color_bridge","target":"minecraft:dark_prismarine","label":"Pont de nuance par sous-ton: Dark Prismarine","confidence":0.886},{"type":"color_bridge","target":"minecraft:dark_prismarine_slab","label":"Pont de nuance par sous-ton: Dark Prismarine Slab","confidence":0.886},{"type":"color_bridge","target":"minecraft:dark_prismarine_stairs","label":"Pont de nuance par sous-ton: Dark Prismarine Stairs","confidence":0.886},{"type":"color_bridge","target":"minecraft:oxidized_copper_bars","label":"Pont de nuance par sous-ton: Oxidized Copper Bars","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_oxidized_copper_bars","label":"Pont de nuance par sous-ton: Waxed Oxidized Copper Bars","confidence":0.885},{"type":"color_bridge","target":"minecraft:oxidized_copper_chain","label":"Pont de nuance par sous-ton: Oxidized Copper Chain","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_oxidized_copper_chain","label":"Pont de nuance par sous-ton: Waxed Oxidized Copper Chain","confidence":0.885},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par palette: Weathered Copper Chain","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par palette: Waxed Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par palette: Weathered Copper Bars","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.582},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.579},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.578},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.578},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_weathered_copper_chest","name":"Waxed Weathered Copper Chest","entry_type":"block","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper chests."}],"colors":{"primary":"#6c996e","dominant_hex":"#64a474","average_hex":"#6c996e","hue_group":"green","lightness":0.5118,"saturation":0.1807,"palette":["#64a474","#648c5e","#71834e","#64ac74","#7cb49c","#8c8474"],"color_groups":[{"hex":"#64a474","weight":0.2305,"lightness":0.5176,"saturation":0.2602,"hue_group":"green"},{"hex":"#648c5e","weight":0.2188,"lightness":0.4588,"saturation":0.1966,"hue_group":"green"},{"hex":"#71834e","weight":0.1797,"lightness":0.4098,"saturation":0.2536,"hue_group":"yellow"},{"hex":"#64ac74","weight":0.168,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#7cb49c","weight":0.125,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#8c8474","weight":0.0781,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper.png","family":"waxed_weathered_copper_chest","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Palette proche: Waxed Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper","label":"Palette proche: Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_chest","label":"Palette proche: Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Palette proche: Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Palette proche: Waxed Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Palette proche: Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.937},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.937},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.929},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par palette: Waxed Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par palette: Waxed Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par palette: Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_chest","label":"Pont de nuance par palette: Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_golem_statue","label":"Pont de nuance par palette: Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par palette: Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par palette: Waxed Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par palette: Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_weathered_copper_door","name":"Waxed Weathered Copper Door","entry_type":"block","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","history":[{"version":"1.20.3","status":"added","notes":"Added copper doors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#6e976e","dominant_hex":"#728c56","average_hex":"#6e976e","hue_group":"green","lightness":0.5118,"saturation":0.1647,"palette":["#728c56","#64a474","#7cb49c","#636f49","#64ac74","#8c8474"],"color_groups":[{"hex":"#728c56","weight":0.2404,"lightness":0.4431,"saturation":0.2389,"hue_group":"yellow"},{"hex":"#64a474","weight":0.1971,"lightness":0.5176,"saturation":0.2602,"hue_group":"green"},{"hex":"#7cb49c","weight":0.1827,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#636f49","weight":0.1635,"lightness":0.3608,"saturation":0.2065,"hue_group":"yellow"},{"hex":"#64ac74","weight":0.1442,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#8c8474","weight":0.0721,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper_door_top.png","family":"waxed_weathered_copper","relations":[{"type":"variants","target":"minecraft:waxed_weathered_copper","label":"Same family: waxed_weathered_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_weathered_copper","label":"Related set: waxed_weathered_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Palette proche: Waxed Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Palette proche: Waxed Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper","label":"Palette proche: Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_chest","label":"Palette proche: Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Palette proche: Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par palette: Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par palette: Waxed Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par palette: Waxed Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par palette: Waxed Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par palette: Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_chest","label":"Pont de nuance par palette: Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_golem_statue","label":"Pont de nuance par palette: Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par palette: Waxed Weathered Cut Copper","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_weathered_copper_golem_statue","name":"Waxed Weathered Copper Golem Statue","entry_type":"block","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper golem statues."}],"colors":{"primary":"#6c996e","dominant_hex":"#64a474","average_hex":"#6c996e","hue_group":"green","lightness":0.5118,"saturation":0.1807,"palette":["#64a474","#648c5e","#71834e","#64ac74","#7cb49c","#8c8474"],"color_groups":[{"hex":"#64a474","weight":0.2305,"lightness":0.5176,"saturation":0.2602,"hue_group":"green"},{"hex":"#648c5e","weight":0.2188,"lightness":0.4588,"saturation":0.1966,"hue_group":"green"},{"hex":"#71834e","weight":0.1797,"lightness":0.4098,"saturation":0.2536,"hue_group":"yellow"},{"hex":"#64ac74","weight":0.168,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#7cb49c","weight":0.125,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#8c8474","weight":0.0781,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper.png","family":"waxed_weathered_copper_golem_statue","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Palette proche: Waxed Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper","label":"Palette proche: Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_chest","label":"Palette proche: Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Palette proche: Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Palette proche: Waxed Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Palette proche: Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.937},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.937},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.929},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par palette: Waxed Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par palette: Waxed Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par palette: Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_chest","label":"Pont de nuance par palette: Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_golem_statue","label":"Pont de nuance par palette: Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par palette: Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par palette: Waxed Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par palette: Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_weathered_copper_grate","name":"Waxed Weathered Copper Grate","entry_type":"block","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","history":[{"version":"1.20.3","status":"added","notes":"Added copper grates behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#6a996f","dominant_hex":"#738f5e","average_hex":"#6a996f","hue_group":"green","lightness":0.5078,"saturation":0.1873,"palette":["#738f5e","#64a474","#64ac74","#7cb49c","#4c7464","#6c7444"],"color_groups":[{"hex":"#738f5e","weight":0.2961,"lightness":0.4647,"saturation":0.2068,"hue_group":"green"},{"hex":"#64a474","weight":0.2626,"lightness":0.5176,"saturation":0.2602,"hue_group":"green"},{"hex":"#64ac74","weight":0.1508,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#7cb49c","weight":0.1341,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#4c7464","weight":0.0782,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#6c7444","weight":0.0782,"lightness":0.3608,"saturation":0.2609,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper_grate.png","family":"waxed_weathered_copper_grate","relations":[{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper","label":"Palette proche: Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Palette proche: Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_stairs","label":"Palette proche: Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Palette proche: Waxed Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Palette proche: Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par palette: Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par palette: Waxed Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper","label":"Pont de nuance par palette: Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_slab","label":"Pont de nuance par palette: Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_stairs","label":"Pont de nuance par palette: Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par palette: Waxed Weathered Copper Trapdoor","confidence":0.86},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_weathered_copper_lantern","name":"Waxed Weathered Copper Lantern","entry_type":"block","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper lanterns."}],"colors":{"primary":"#608664","dominant_hex":"#4b7562","average_hex":"#608664","hue_group":"green","lightness":0.451,"saturation":0.1652,"palette":["#4b7562","#3c5c54","#6c8454","#6f9a65","#91df94","#dcf0dd"],"color_groups":[{"hex":"#4b7562","weight":0.2642,"lightness":0.3765,"saturation":0.2187,"hue_group":"cyan"},{"hex":"#3c5c54","weight":0.2264,"lightness":0.298,"saturation":0.2105,"hue_group":"cyan"},{"hex":"#6c8454","weight":0.217,"lightness":0.4235,"saturation":0.2222,"hue_group":"green"},{"hex":"#6f9a65","weight":0.1792,"lightness":0.5,"saturation":0.2078,"hue_group":"green"},{"hex":"#91df94","weight":0.0755,"lightness":0.7216,"saturation":0.5493,"hue_group":"green"},{"hex":"#dcf0dd","weight":0.0377,"lightness":0.902,"saturation":0.4,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper_lantern.png","family":"waxed_weathered_copper_lantern","relations":[{"type":"visual_neighbors","target":"minecraft:weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_plant","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal_frame","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:weathered_copper_lantern","label":"Palette proche: Weathered Copper Lantern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Palette proche: Waxed Weathered Copper Bars","confidence":0.939},{"type":"color_neighbors","target":"minecraft:weathered_copper_bars","label":"Palette proche: Weathered Copper Bars","confidence":0.939},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.918},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.918},{"type":"color_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Palette proche: Waxed Weathered Lightning Rod","confidence":0.873},{"type":"color_neighbors","target":"minecraft:weathered_lightning_rod","label":"Palette proche: Weathered Lightning Rod","confidence":0.873},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Palette proche: Waxed Weathered Copper Bulb","confidence":0.866},{"type":"color_neighbors","target":"minecraft:weathered_copper_bulb","label":"Palette proche: Weathered Copper Bulb","confidence":0.866},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.857},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.857},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.855},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par palette: Weathered Copper Lantern","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par palette: Waxed Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par palette: Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par palette: Waxed Weathered Copper Chain","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par palette: Weathered Copper Chain","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par palette: Waxed Weathered Lightning Rod","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par palette: Weathered Lightning Rod","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par palette: Waxed Weathered Copper Bulb","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par palette: Weathered Copper Bulb","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_weathered_copper_trapdoor","name":"Waxed Weathered Copper Trapdoor","entry_type":"block","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","history":[{"version":"1.20.3","status":"added","notes":"Added copper trapdoors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#6d996e","dominant_hex":"#778b58","average_hex":"#6d996e","hue_group":"green","lightness":0.5137,"saturation":0.1774,"palette":["#778b58","#7cb49c","#64ac74","#5e7452","#6c945c","#64a474"],"color_groups":[{"hex":"#778b58","weight":0.2108,"lightness":0.4451,"saturation":0.2247,"hue_group":"yellow"},{"hex":"#7cb49c","weight":0.201,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#64ac74","weight":0.1667,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#5e7452","weight":0.1569,"lightness":0.3882,"saturation":0.1717,"hue_group":"green"},{"hex":"#6c945c","weight":0.152,"lightness":0.4706,"saturation":0.2333,"hue_group":"green"},{"hex":"#64a474","weight":0.1127,"lightness":0.5176,"saturation":0.2602,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper_trapdoor.png","family":"waxed_weathered_copper_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Palette proche: Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Palette proche: Waxed Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Palette proche: Waxed Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper","label":"Palette proche: Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_chest","label":"Palette proche: Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Palette proche: Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.929},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par palette: Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par palette: Waxed Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par palette: Waxed Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par palette: Waxed Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par palette: Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_chest","label":"Pont de nuance par palette: Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_golem_statue","label":"Pont de nuance par palette: Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_weathered_cut_copper","name":"Waxed Weathered Cut Copper","entry_type":"block","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed cut copper and three variants of waxed cut copper."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cut copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#6d916c","dominant_hex":"#64a774","average_hex":"#6d916c","hue_group":"green","lightness":0.4961,"saturation":0.1462,"palette":["#64a774","#709058","#8c8474","#4c7464","#6c7444","#7cb49c"],"color_groups":[{"hex":"#64a774","weight":0.2773,"lightness":0.5235,"saturation":0.2757,"hue_group":"green"},{"hex":"#709058","weight":0.2148,"lightness":0.4549,"saturation":0.2414,"hue_group":"green"},{"hex":"#8c8474","weight":0.1602,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"},{"hex":"#4c7464","weight":0.1172,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#6c7444","weight":0.1172,"lightness":0.3608,"saturation":0.2609,"hue_group":"yellow"},{"hex":"#7cb49c","weight":0.1133,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_cut_copper.png","family":"waxed_weathered_cut_copper","relations":[{"type":"variants","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Same family: waxed_weathered_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Related set: waxed_weathered_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Same family: waxed_weathered_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Related set: waxed_weathered_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper_stairs","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper","label":"Palette proche: Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Palette proche: Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_stairs","label":"Palette proche: Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.929},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper","label":"Pont de nuance par palette: Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_slab","label":"Pont de nuance par palette: Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_stairs","label":"Pont de nuance par palette: Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par palette: Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_weathered_cut_copper_slab","name":"Waxed Weathered Cut Copper Slab","entry_type":"block","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper slabs and three variants of waxed cut copper slabs."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper slabs."}],"colors":{"primary":"#6d916c","dominant_hex":"#64a774","average_hex":"#6d916c","hue_group":"green","lightness":0.4961,"saturation":0.1462,"palette":["#64a774","#709058","#8c8474","#4c7464","#6c7444","#7cb49c"],"color_groups":[{"hex":"#64a774","weight":0.2773,"lightness":0.5235,"saturation":0.2757,"hue_group":"green"},{"hex":"#709058","weight":0.2148,"lightness":0.4549,"saturation":0.2414,"hue_group":"green"},{"hex":"#8c8474","weight":0.1602,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"},{"hex":"#4c7464","weight":0.1172,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#6c7444","weight":0.1172,"lightness":0.3608,"saturation":0.2609,"hue_group":"yellow"},{"hex":"#7cb49c","weight":0.1133,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_cut_copper.png","family":"waxed_weathered_cut_copper","relations":[{"type":"variants","target":"minecraft:waxed_weathered_cut_copper","label":"Same family: waxed_weathered_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_weathered_cut_copper","label":"Related set: waxed_weathered_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Same family: waxed_weathered_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Related set: waxed_weathered_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper_stairs","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper","label":"Palette proche: Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Palette proche: Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_stairs","label":"Palette proche: Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.929},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par palette: Waxed Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper","label":"Pont de nuance par palette: Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_slab","label":"Pont de nuance par palette: Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_stairs","label":"Pont de nuance par palette: Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par palette: Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_weathered_cut_copper_stairs","name":"Waxed Weathered Cut Copper Stairs","entry_type":"block","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper stairs and three variants of waxed cut copper stairs: (waxed) cut copper stairs, (waxed) lightly weathered cut copper stairs, (waxed) semi-weathered cut copper stairs, and weathered cut"},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper stairs."}],"colors":{"primary":"#6d916c","dominant_hex":"#64a774","average_hex":"#6d916c","hue_group":"green","lightness":0.4961,"saturation":0.1462,"palette":["#64a774","#709058","#8c8474","#4c7464","#6c7444","#7cb49c"],"color_groups":[{"hex":"#64a774","weight":0.2773,"lightness":0.5235,"saturation":0.2757,"hue_group":"green"},{"hex":"#709058","weight":0.2148,"lightness":0.4549,"saturation":0.2414,"hue_group":"green"},{"hex":"#8c8474","weight":0.1602,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"},{"hex":"#4c7464","weight":0.1172,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#6c7444","weight":0.1172,"lightness":0.3608,"saturation":0.2609,"hue_group":"yellow"},{"hex":"#7cb49c","weight":0.1133,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_cut_copper.png","family":"waxed_weathered_cut_copper","relations":[{"type":"variants","target":"minecraft:waxed_weathered_cut_copper","label":"Same family: waxed_weathered_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_weathered_cut_copper","label":"Related set: waxed_weathered_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Same family: waxed_weathered_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Related set: waxed_weathered_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper_stairs","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper","label":"Palette proche: Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Palette proche: Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_stairs","label":"Palette proche: Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.929},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par palette: Waxed Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper","label":"Pont de nuance par palette: Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_slab","label":"Pont de nuance par palette: Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_stairs","label":"Pont de nuance par palette: Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par palette: Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:waxed_weathered_lightning_rod","name":"Waxed Weathered Lightning Rod","entry_type":"block","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added lightning rods."},{"version":"wiki-history","status":"added","notes":"Added exposed, weathered and oxidized variants of lightning rods."}],"colors":{"primary":"#618e69","dominant_hex":"#64ac74","average_hex":"#618e69","hue_group":"green","lightness":0.4686,"saturation":0.1883,"palette":["#64ac74","#71925f","#446c64","#6c7c4f","#3c5c54","#7cb49c"],"color_groups":[{"hex":"#64ac74","weight":0.275,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#71925f","weight":0.175,"lightness":0.4725,"saturation":0.2116,"hue_group":"green"},{"hex":"#446c64","weight":0.15,"lightness":0.3451,"saturation":0.2273,"hue_group":"cyan"},{"hex":"#6c7c4f","weight":0.15,"lightness":0.398,"saturation":0.2217,"hue_group":"yellow"},{"hex":"#3c5c54","weight":0.125,"lightness":0.298,"saturation":0.2105,"hue_group":"cyan"},{"hex":"#7cb49c","weight":0.125,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_lightning_rod.png","family":"waxed_weathered_lightning_rod","relations":[{"type":"visual_neighbors","target":"minecraft:weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:weathered_lightning_rod","label":"Palette proche: Weathered Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Palette proche: Waxed Weathered Copper Bars","confidence":0.938},{"type":"color_neighbors","target":"minecraft:weathered_copper_bars","label":"Palette proche: Weathered Copper Bars","confidence":0.938},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Palette proche: Waxed Weathered Copper Trapdoor","confidence":0.919},{"type":"color_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Palette proche: Weathered Copper Trapdoor","confidence":0.919},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Palette proche: Waxed Weathered Copper Bulb","confidence":0.919},{"type":"color_neighbors","target":"minecraft:weathered_copper_bulb","label":"Palette proche: Weathered Copper Bulb","confidence":0.919},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.907},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par palette: Weathered Lightning Rod","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par palette: Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par palette: Waxed Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par palette: Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par palette: Waxed Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par palette: Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par palette: Waxed Weathered Copper Bulb","confidence":0.86},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55}],"category":""},{"id":"minecraft:wayfinder_armor_trim_smithing_template","name":"Wayfinder Armor Trim Smithing Template","entry_type":"item","description":"Wayfinder armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, terracotta, and diamonds.","history":[{"version":"1.20 23w12a","status":"added","notes":"Added the wayfinder armor trim smithing template."}],"colors":{"primary":"#564e46","dominant_hex":"#836353","average_hex":"#564e46","hue_group":"neutral","lightness":0.3059,"saturation":0.1026,"palette":["#836353","#5c4434","#4c342c","#342424","#241414","#4ecad2"],"color_groups":[{"hex":"#836353","weight":0.297,"lightness":0.4196,"saturation":0.2243,"hue_group":"red"},{"hex":"#5c4434","weight":0.2061,"lightness":0.2824,"saturation":0.2778,"hue_group":"red"},{"hex":"#4c342c","weight":0.1515,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#342424","weight":0.1455,"lightness":0.1725,"saturation":0.1818,"hue_group":"red"},{"hex":"#241414","weight":0.103,"lightness":0.1098,"saturation":0.2857,"hue_group":"red"},{"hex":"#4ecad2","weight":0.097,"lightness":0.5647,"saturation":0.5946,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wayfinder_armor_trim_smithing_template.png","family":"wayfinder_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:ink_sac","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_harness","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ominous_trial_key","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:minecart","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snout_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sentry_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mall","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_mellohi","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:goat_horn","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_13","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:weathered_chiseled_copper","name":"Weathered Chiseled Copper","entry_type":"block","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","history":[{"version":"1.20.3","status":"added","notes":"Added chiseled copper behind the \" Update 1.21 \" experimental data pack."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb chiseled copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#69976f","dominant_hex":"#64ac74","average_hex":"#69976f","hue_group":"green","lightness":0.502,"saturation":0.1811,"palette":["#64ac74","#7ab499","#4c7464","#6c7444","#6c8454","#768f63"],"color_groups":[{"hex":"#64ac74","weight":0.3164,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#7ab499","weight":0.2148,"lightness":0.5922,"saturation":0.2788,"hue_group":"cyan"},{"hex":"#4c7464","weight":0.1406,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#6c7444","weight":0.1211,"lightness":0.3608,"saturation":0.2609,"hue_group":"yellow"},{"hex":"#6c8454","weight":0.1055,"lightness":0.4235,"saturation":0.2222,"hue_group":"green"},{"hex":"#768f63","weight":0.1016,"lightness":0.4745,"saturation":0.1818,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_chiseled_copper.png","family":"weathered_chiseled_copper","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper","label":"Palette proche: Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Palette proche: Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_stairs","label":"Palette proche: Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Palette proche: Waxed Weathered Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_lightning_rod","label":"Palette proche: Weathered Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.934},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par palette: Waxed Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper","label":"Pont de nuance par palette: Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_slab","label":"Pont de nuance par palette: Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_stairs","label":"Pont de nuance par palette: Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par palette: Waxed Weathered Lightning Rod","confidence":0.86},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.55}],"category":"building"},{"id":"minecraft:weathered_copper","name":"Weathered Copper","entry_type":"block","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed copper blocks and three variants of waxed copper blocks."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb blocks of copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#6c996e","dominant_hex":"#64a474","average_hex":"#6c996e","hue_group":"green","lightness":0.5118,"saturation":0.1807,"palette":["#64a474","#648c5e","#71834e","#64ac74","#7cb49c","#8c8474"],"color_groups":[{"hex":"#64a474","weight":0.2305,"lightness":0.5176,"saturation":0.2602,"hue_group":"green"},{"hex":"#648c5e","weight":0.2188,"lightness":0.4588,"saturation":0.1966,"hue_group":"green"},{"hex":"#71834e","weight":0.1797,"lightness":0.4098,"saturation":0.2536,"hue_group":"yellow"},{"hex":"#64ac74","weight":0.168,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#7cb49c","weight":0.125,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#8c8474","weight":0.0781,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper.png","family":"weathered_copper","relations":[{"type":"variants","target":"minecraft:weathered_copper_door","label":"Same family: weathered_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:weathered_copper_door","label":"Related set: weathered_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Palette proche: Waxed Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Palette proche: Waxed Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_chest","label":"Palette proche: Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Palette proche: Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Palette proche: Waxed Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Palette proche: Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.937},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.937},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.929},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par palette: Waxed Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par palette: Waxed Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par palette: Waxed Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_chest","label":"Pont de nuance par palette: Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_golem_statue","label":"Pont de nuance par palette: Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par palette: Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par palette: Waxed Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par palette: Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:weathered_copper_bars","name":"Weathered Copper Bars","entry_type":"block","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper bars."}],"colors":{"primary":"#557b5e","dominant_hex":"#4c7464","average_hex":"#557b5e","hue_group":"green","lightness":0.4078,"saturation":0.1827,"palette":["#4c7464","#3c5c54","#6c8454","#64ac74","#6c945c","#8c8474"],"color_groups":[{"hex":"#4c7464","weight":0.319,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#3c5c54","weight":0.25,"lightness":0.298,"saturation":0.2105,"hue_group":"cyan"},{"hex":"#6c8454","weight":0.1724,"lightness":0.4235,"saturation":0.2222,"hue_group":"green"},{"hex":"#64ac74","weight":0.1293,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#6c945c","weight":0.1207,"lightness":0.4706,"saturation":0.2333,"hue_group":"green"},{"hex":"#8c8474","weight":0.0086,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper_bars.png","family":"weathered_copper_bars","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal_frame","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_plant","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_warped_fungus","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warped_fungus","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_emerald_ore","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Palette proche: Waxed Weathered Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Palette proche: Waxed Weathered Copper Lantern","confidence":0.939},{"type":"color_neighbors","target":"minecraft:weathered_copper_lantern","label":"Palette proche: Weathered Copper Lantern","confidence":0.939},{"type":"color_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Palette proche: Waxed Weathered Lightning Rod","confidence":0.938},{"type":"color_neighbors","target":"minecraft:weathered_lightning_rod","label":"Palette proche: Weathered Lightning Rod","confidence":0.938},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.929},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.929},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.925},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.925},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.919},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par palette: Waxed Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par palette: Waxed Weathered Copper Chain","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par palette: Weathered Copper Chain","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par palette: Waxed Weathered Copper Lantern","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_lantern","label":"Pont de nuance par palette: Weathered Copper Lantern","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par palette: Waxed Weathered Lightning Rod","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par palette: Weathered Lightning Rod","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par palette: Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:end_rod","label":"Contraste clair sombre: End Rod","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.55}],"category":"building"},{"id":"minecraft:weathered_copper_bulb","name":"Weathered Copper Bulb","entry_type":"block","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","history":[{"version":"1.20.3","status":"added","notes":"Added copper bulbs behind the \" Update 1.21 \" experimental data pack ."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb copper bulbs at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#5c7f63","dominant_hex":"#728654","average_hex":"#5c7f63","hue_group":"green","lightness":0.4294,"saturation":0.1598,"palette":["#728654","#4c544c","#4c7464","#64a674","#44645c","#7bb49a"],"color_groups":[{"hex":"#728654","weight":0.2266,"lightness":0.4275,"saturation":0.2294,"hue_group":"yellow"},{"hex":"#4c544c","weight":0.1758,"lightness":0.3137,"saturation":0.05,"hue_group":"neutral"},{"hex":"#4c7464","weight":0.1758,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#64a674","weight":0.1562,"lightness":0.5216,"saturation":0.2705,"hue_group":"green"},{"hex":"#44645c","weight":0.1406,"lightness":0.3294,"saturation":0.1905,"hue_group":"cyan"},{"hex":"#7bb49a","weight":0.125,"lightness":0.5941,"saturation":0.2754,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper_bulb.png","family":"weathered_copper_bulb","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_plant","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal_frame","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Palette proche: Waxed Weathered Copper Bulb","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.921},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.921},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.921},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.921},{"type":"color_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Palette proche: Waxed Weathered Lightning Rod","confidence":0.919},{"type":"color_neighbors","target":"minecraft:weathered_lightning_rod","label":"Palette proche: Weathered Lightning Rod","confidence":0.919},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Palette proche: Waxed Weathered Copper Bars","confidence":0.912},{"type":"color_neighbors","target":"minecraft:weathered_copper_bars","label":"Palette proche: Weathered Copper Bars","confidence":0.912},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.89},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.89},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.89},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par palette: Waxed Weathered Copper Bulb","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par palette: Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par palette: Waxed Weathered Lightning Rod","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par palette: Weathered Lightning Rod","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par palette: Waxed Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par palette: Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par palette: Waxed Weathered Cut Copper","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55}],"category":"building"},{"id":"minecraft:weathered_copper_chain","name":"Weathered Copper Chain","entry_type":"block","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper chains."}],"colors":{"primary":"#496d5c","dominant_hex":"#3c5c54","average_hex":"#496d5c","hue_group":"cyan","lightness":0.3569,"saturation":0.1978,"palette":["#3c5c54","#4c7464","#6c945c","#8c8474"],"color_groups":[{"hex":"#3c5c54","weight":0.4643,"lightness":0.298,"saturation":0.2105,"hue_group":"cyan"},{"hex":"#4c7464","weight":0.4107,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#6c945c","weight":0.1071,"lightness":0.4706,"saturation":0.2333,"hue_group":"green"},{"hex":"#8c8474","weight":0.0179,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper_chain.png","family":"weathered_copper_chain","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_spawner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:deepslate_diamond_ore","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vault","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_chain","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bars","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_oxidized_copper_bulb","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Palette proche: Waxed Weathered Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_bars","label":"Palette proche: Weathered Copper Bars","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Palette proche: Waxed Weathered Copper Lantern","confidence":0.918},{"type":"color_neighbors","target":"minecraft:weathered_copper_lantern","label":"Palette proche: Weathered Copper Lantern","confidence":0.918},{"type":"color_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Palette proche: Waxed Weathered Lightning Rod","confidence":0.879},{"type":"color_neighbors","target":"minecraft:weathered_lightning_rod","label":"Palette proche: Weathered Lightning Rod","confidence":0.879},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Palette proche: Waxed Weathered Copper Bulb","confidence":0.874},{"type":"color_neighbors","target":"minecraft:weathered_copper_bulb","label":"Palette proche: Weathered Copper Bulb","confidence":0.874},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.872},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.872},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.872},{"type":"color_bridge","target":"minecraft:dark_prismarine","label":"Pont de nuance par sous-ton: Dark Prismarine","confidence":0.886},{"type":"color_bridge","target":"minecraft:dark_prismarine_slab","label":"Pont de nuance par sous-ton: Dark Prismarine Slab","confidence":0.886},{"type":"color_bridge","target":"minecraft:dark_prismarine_stairs","label":"Pont de nuance par sous-ton: Dark Prismarine Stairs","confidence":0.886},{"type":"color_bridge","target":"minecraft:oxidized_copper_bars","label":"Pont de nuance par sous-ton: Oxidized Copper Bars","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_oxidized_copper_bars","label":"Pont de nuance par sous-ton: Waxed Oxidized Copper Bars","confidence":0.885},{"type":"color_bridge","target":"minecraft:oxidized_copper_chain","label":"Pont de nuance par sous-ton: Oxidized Copper Chain","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_oxidized_copper_chain","label":"Pont de nuance par sous-ton: Waxed Oxidized Copper Chain","confidence":0.885},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par palette: Waxed Weathered Copper Chain","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par palette: Waxed Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par palette: Weathered Copper Bars","confidence":0.86},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.582},{"type":"value_contrast","target":"minecraft:powder_snow","label":"Contraste clair sombre: Powder Snow","confidence":0.579},{"type":"value_contrast","target":"minecraft:snow","label":"Contraste clair sombre: Snow","confidence":0.578},{"type":"value_contrast","target":"minecraft:snow_block","label":"Contraste clair sombre: Snow Block","confidence":0.578},{"type":"value_contrast","target":"minecraft:sea_lantern","label":"Contraste clair sombre: Sea Lantern","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_glazed_terracotta","label":"Contraste clair sombre: White Glazed Terracotta","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass_pane","label":"Contraste clair sombre: Glass Pane","confidence":0.55},{"type":"value_contrast","target":"minecraft:glass","label":"Contraste clair sombre: Glass","confidence":0.55}],"category":"building"},{"id":"minecraft:weathered_copper_chest","name":"Weathered Copper Chest","entry_type":"block","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper chests."}],"colors":{"primary":"#6c996e","dominant_hex":"#64a474","average_hex":"#6c996e","hue_group":"green","lightness":0.5118,"saturation":0.1807,"palette":["#64a474","#648c5e","#71834e","#64ac74","#7cb49c","#8c8474"],"color_groups":[{"hex":"#64a474","weight":0.2305,"lightness":0.5176,"saturation":0.2602,"hue_group":"green"},{"hex":"#648c5e","weight":0.2188,"lightness":0.4588,"saturation":0.1966,"hue_group":"green"},{"hex":"#71834e","weight":0.1797,"lightness":0.4098,"saturation":0.2536,"hue_group":"yellow"},{"hex":"#64ac74","weight":0.168,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#7cb49c","weight":0.125,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#8c8474","weight":0.0781,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper.png","family":"weathered_copper_chest","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Palette proche: Waxed Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Palette proche: Waxed Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper","label":"Palette proche: Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Palette proche: Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Palette proche: Waxed Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Palette proche: Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.937},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.937},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.929},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par palette: Waxed Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par palette: Waxed Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par palette: Waxed Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par palette: Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_golem_statue","label":"Pont de nuance par palette: Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par palette: Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par palette: Waxed Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par palette: Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:weathered_copper_door","name":"Weathered Copper Door","entry_type":"block","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","history":[{"version":"1.20.3","status":"added","notes":"Added copper doors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#6e976e","dominant_hex":"#728c56","average_hex":"#6e976e","hue_group":"green","lightness":0.5118,"saturation":0.1647,"palette":["#728c56","#64a474","#7cb49c","#636f49","#64ac74","#8c8474"],"color_groups":[{"hex":"#728c56","weight":0.2404,"lightness":0.4431,"saturation":0.2389,"hue_group":"yellow"},{"hex":"#64a474","weight":0.1971,"lightness":0.5176,"saturation":0.2602,"hue_group":"green"},{"hex":"#7cb49c","weight":0.1827,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#636f49","weight":0.1635,"lightness":0.3608,"saturation":0.2065,"hue_group":"yellow"},{"hex":"#64ac74","weight":0.1442,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#8c8474","weight":0.0721,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper_door_top.png","family":"weathered_copper","relations":[{"type":"variants","target":"minecraft:weathered_copper","label":"Same family: weathered_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:weathered_copper","label":"Related set: weathered_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Palette proche: Waxed Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Palette proche: Waxed Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper","label":"Palette proche: Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_chest","label":"Palette proche: Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Palette proche: Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par palette: Waxed Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par palette: Waxed Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par palette: Waxed Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par palette: Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_chest","label":"Pont de nuance par palette: Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_golem_statue","label":"Pont de nuance par palette: Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par palette: Waxed Weathered Cut Copper","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55}],"category":"building"},{"id":"minecraft:weathered_copper_golem","name":"Weathered Copper Golem","entry_type":"mob","description":"A copper golem is a buildable passive mob that takes items out of copper chests, and attempts to store them in nearby wooden chests and trapped chests. A chest examined by a copper golem must either be empty, or contain the item type it is holding, for the golem to place anything inside of it. If not waxed, a copper golem oxidizes over time and eventually turns into a copper golem statue, dropping its currently held items.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper golems."}],"colors":{"primary":"#618566","dominant_hex":"#708b5c","average_hex":"#618566","hue_group":"green","lightness":0.451,"saturation":0.1565,"palette":["#708b5c","#40655d","#7cb49c","#64ac74","#4b4b43","#6c6c44"],"color_groups":[{"hex":"#708b5c","weight":0.2054,"lightness":0.4529,"saturation":0.2035,"hue_group":"green"},{"hex":"#40655d","weight":0.1994,"lightness":0.3235,"saturation":0.2242,"hue_group":"cyan"},{"hex":"#7cb49c","weight":0.1949,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#64ac74","weight":0.1533,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#4b4b43","weight":0.1511,"lightness":0.2784,"saturation":0.0563,"hue_group":"neutral"},{"hex":"#6c6c44","weight":0.0959,"lightness":0.3451,"saturation":0.2273,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/copper_golem/weathered_copper_golem.png","family":"weathered_copper_golem","relations":[{"type":"visual_neighbors","target":"minecraft:big_sea_turtle","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_fox_sleep","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snow_fox","label":"Shared hue group: green","confidence":0.55}],"category":"mob"},{"id":"minecraft:weathered_copper_golem_statue","name":"Weathered Copper Golem Statue","entry_type":"block","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","history":[{"version":"1.21.9 25w31a","status":"added","notes":"Added copper golem statues."}],"colors":{"primary":"#6c996e","dominant_hex":"#64a474","average_hex":"#6c996e","hue_group":"green","lightness":0.5118,"saturation":0.1807,"palette":["#64a474","#648c5e","#71834e","#64ac74","#7cb49c","#8c8474"],"color_groups":[{"hex":"#64a474","weight":0.2305,"lightness":0.5176,"saturation":0.2602,"hue_group":"green"},{"hex":"#648c5e","weight":0.2188,"lightness":0.4588,"saturation":0.1966,"hue_group":"green"},{"hex":"#71834e","weight":0.1797,"lightness":0.4098,"saturation":0.2536,"hue_group":"yellow"},{"hex":"#64ac74","weight":0.168,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#7cb49c","weight":0.125,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#8c8474","weight":0.0781,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper.png","family":"weathered_copper_golem_statue","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Palette proche: Waxed Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Palette proche: Waxed Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper","label":"Palette proche: Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_chest","label":"Palette proche: Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Palette proche: Waxed Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Palette proche: Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.937},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.937},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.929},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par palette: Waxed Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par palette: Waxed Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par palette: Waxed Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par palette: Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_chest","label":"Pont de nuance par palette: Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par palette: Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par palette: Waxed Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par palette: Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:weathered_copper_grate","name":"Weathered Copper Grate","entry_type":"block","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","history":[{"version":"1.20.3","status":"added","notes":"Added copper grates behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#6a996f","dominant_hex":"#738f5e","average_hex":"#6a996f","hue_group":"green","lightness":0.5078,"saturation":0.1873,"palette":["#738f5e","#64a474","#64ac74","#7cb49c","#4c7464","#6c7444"],"color_groups":[{"hex":"#738f5e","weight":0.2961,"lightness":0.4647,"saturation":0.2068,"hue_group":"green"},{"hex":"#64a474","weight":0.2626,"lightness":0.5176,"saturation":0.2602,"hue_group":"green"},{"hex":"#64ac74","weight":0.1508,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#7cb49c","weight":0.1341,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#4c7464","weight":0.0782,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#6c7444","weight":0.0782,"lightness":0.3608,"saturation":0.2609,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper_grate.png","family":"weathered_copper_grate","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper","label":"Palette proche: Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Palette proche: Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_stairs","label":"Palette proche: Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Palette proche: Waxed Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Palette proche: Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par palette: Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par palette: Waxed Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper","label":"Pont de nuance par palette: Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_slab","label":"Pont de nuance par palette: Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_stairs","label":"Pont de nuance par palette: Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par palette: Waxed Weathered Copper Trapdoor","confidence":0.86},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.55}],"category":"building"},{"id":"minecraft:weathered_copper_lantern","name":"Weathered Copper Lantern","entry_type":"block","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","history":[{"version":"1.21.9 25w32a","status":"added","notes":"Added copper lanterns."}],"colors":{"primary":"#608664","dominant_hex":"#4b7562","average_hex":"#608664","hue_group":"green","lightness":0.451,"saturation":0.1652,"palette":["#4b7562","#3c5c54","#6c8454","#6f9a65","#91df94","#dcf0dd"],"color_groups":[{"hex":"#4b7562","weight":0.2642,"lightness":0.3765,"saturation":0.2187,"hue_group":"cyan"},{"hex":"#3c5c54","weight":0.2264,"lightness":0.298,"saturation":0.2105,"hue_group":"cyan"},{"hex":"#6c8454","weight":0.217,"lightness":0.4235,"saturation":0.2222,"hue_group":"green"},{"hex":"#6f9a65","weight":0.1792,"lightness":0.5,"saturation":0.2078,"hue_group":"green"},{"hex":"#91df94","weight":0.0755,"lightness":0.7216,"saturation":0.5493,"hue_group":"green"},{"hex":"#dcf0dd","weight":0.0377,"lightness":0.902,"saturation":0.4,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper_lantern.png","family":"weathered_copper_lantern","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bulb","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pitcher_plant","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:end_portal_frame","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_bars","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Palette proche: Waxed Weathered Copper Lantern","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Palette proche: Waxed Weathered Copper Bars","confidence":0.939},{"type":"color_neighbors","target":"minecraft:weathered_copper_bars","label":"Palette proche: Weathered Copper Bars","confidence":0.939},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chain","label":"Palette proche: Waxed Weathered Copper Chain","confidence":0.918},{"type":"color_neighbors","target":"minecraft:weathered_copper_chain","label":"Palette proche: Weathered Copper Chain","confidence":0.918},{"type":"color_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Palette proche: Waxed Weathered Lightning Rod","confidence":0.873},{"type":"color_neighbors","target":"minecraft:weathered_lightning_rod","label":"Palette proche: Weathered Lightning Rod","confidence":0.873},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Palette proche: Waxed Weathered Copper Bulb","confidence":0.866},{"type":"color_neighbors","target":"minecraft:weathered_copper_bulb","label":"Palette proche: Weathered Copper Bulb","confidence":0.866},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.857},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.857},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.855},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_lantern","label":"Pont de nuance par palette: Waxed Weathered Copper Lantern","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par palette: Waxed Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par palette: Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chain","label":"Pont de nuance par palette: Waxed Weathered Copper Chain","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_chain","label":"Pont de nuance par palette: Weathered Copper Chain","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par palette: Waxed Weathered Lightning Rod","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_lightning_rod","label":"Pont de nuance par palette: Weathered Lightning Rod","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par palette: Waxed Weathered Copper Bulb","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_bulb","label":"Pont de nuance par palette: Weathered Copper Bulb","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55}],"category":"building"},{"id":"minecraft:weathered_copper_trapdoor","name":"Weathered Copper Trapdoor","entry_type":"block","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","history":[{"version":"1.20.3","status":"added","notes":"Added copper trapdoors behind the \" Update 1.21 \" experimental data pack ."}],"colors":{"primary":"#6d996e","dominant_hex":"#778b58","average_hex":"#6d996e","hue_group":"green","lightness":0.5137,"saturation":0.1774,"palette":["#778b58","#7cb49c","#64ac74","#5e7452","#6c945c","#64a474"],"color_groups":[{"hex":"#778b58","weight":0.2108,"lightness":0.4451,"saturation":0.2247,"hue_group":"yellow"},{"hex":"#7cb49c","weight":0.201,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"},{"hex":"#64ac74","weight":0.1667,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#5e7452","weight":0.1569,"lightness":0.3882,"saturation":0.1717,"hue_group":"green"},{"hex":"#6c945c","weight":0.152,"lightness":0.4706,"saturation":0.2333,"hue_group":"green"},{"hex":"#64a474","weight":0.1127,"lightness":0.5176,"saturation":0.2602,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_copper_trapdoor.png","family":"weathered_copper_trapdoor","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Palette proche: Waxed Weathered Copper Trapdoor","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Palette proche: Waxed Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Palette proche: Waxed Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper","label":"Palette proche: Weathered Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_chest","label":"Palette proche: Weathered Copper Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_golem_statue","label":"Palette proche: Weathered Copper Golem Statue","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.929},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par palette: Waxed Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper","label":"Pont de nuance par palette: Waxed Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_chest","label":"Pont de nuance par palette: Waxed Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Pont de nuance par palette: Waxed Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper","label":"Pont de nuance par palette: Weathered Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_chest","label":"Pont de nuance par palette: Weathered Copper Chest","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_golem_statue","label":"Pont de nuance par palette: Weathered Copper Golem Statue","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:weathered_cut_copper","name":"Weathered Cut Copper","entry_type":"block","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of unwaxed cut copper and three variants of waxed cut copper."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb cut copper at any oxidization stage, providing the medicine ball/slow flat effect to the mob."}],"colors":{"primary":"#6d916c","dominant_hex":"#64a774","average_hex":"#6d916c","hue_group":"green","lightness":0.4961,"saturation":0.1462,"palette":["#64a774","#709058","#8c8474","#4c7464","#6c7444","#7cb49c"],"color_groups":[{"hex":"#64a774","weight":0.2773,"lightness":0.5235,"saturation":0.2757,"hue_group":"green"},{"hex":"#709058","weight":0.2148,"lightness":0.4549,"saturation":0.2414,"hue_group":"green"},{"hex":"#8c8474","weight":0.1602,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"},{"hex":"#4c7464","weight":0.1172,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#6c7444","weight":0.1172,"lightness":0.3608,"saturation":0.2609,"hue_group":"yellow"},{"hex":"#7cb49c","weight":0.1133,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_cut_copper.png","family":"weathered_cut_copper","relations":[{"type":"variants","target":"minecraft:weathered_cut_copper_slab","label":"Same family: weathered_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:weathered_cut_copper_slab","label":"Related set: weathered_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:weathered_cut_copper_stairs","label":"Same family: weathered_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:weathered_cut_copper_stairs","label":"Related set: weathered_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper_stairs","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Palette proche: Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_stairs","label":"Palette proche: Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.929},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par palette: Waxed Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_slab","label":"Pont de nuance par palette: Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_stairs","label":"Pont de nuance par palette: Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par palette: Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:weathered_cut_copper_slab","name":"Weathered Cut Copper Slab","entry_type":"block","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper slabs and three variants of waxed cut copper slabs."},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper slabs."}],"colors":{"primary":"#6d916c","dominant_hex":"#64a774","average_hex":"#6d916c","hue_group":"green","lightness":0.4961,"saturation":0.1462,"palette":["#64a774","#709058","#8c8474","#4c7464","#6c7444","#7cb49c"],"color_groups":[{"hex":"#64a774","weight":0.2773,"lightness":0.5235,"saturation":0.2757,"hue_group":"green"},{"hex":"#709058","weight":0.2148,"lightness":0.4549,"saturation":0.2414,"hue_group":"green"},{"hex":"#8c8474","weight":0.1602,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"},{"hex":"#4c7464","weight":0.1172,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#6c7444","weight":0.1172,"lightness":0.3608,"saturation":0.2609,"hue_group":"yellow"},{"hex":"#7cb49c","weight":0.1133,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_cut_copper.png","family":"weathered_cut_copper","relations":[{"type":"variants","target":"minecraft:weathered_cut_copper","label":"Same family: weathered_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:weathered_cut_copper","label":"Related set: weathered_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:weathered_cut_copper_stairs","label":"Same family: weathered_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:weathered_cut_copper_stairs","label":"Related set: weathered_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper_stairs","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper","label":"Palette proche: Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_stairs","label":"Palette proche: Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.929},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par palette: Waxed Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper","label":"Pont de nuance par palette: Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_stairs","label":"Pont de nuance par palette: Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par palette: Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:weathered_cut_copper_stairs","name":"Weathered Cut Copper Stairs","entry_type":"block","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added four variants of cut copper stairs and three variants of waxed cut copper stairs: (waxed) cut copper stairs, (waxed) lightly weathered cut copper stairs, (waxed) semi-weathered cut copper stairs, and weathered cut"},{"version":"21w14a","status":"added","notes":"Added waxed oxidized cut copper stairs."}],"colors":{"primary":"#6d916c","dominant_hex":"#64a774","average_hex":"#6d916c","hue_group":"green","lightness":0.4961,"saturation":0.1462,"palette":["#64a774","#709058","#8c8474","#4c7464","#6c7444","#7cb49c"],"color_groups":[{"hex":"#64a774","weight":0.2773,"lightness":0.5235,"saturation":0.2757,"hue_group":"green"},{"hex":"#709058","weight":0.2148,"lightness":0.4549,"saturation":0.2414,"hue_group":"green"},{"hex":"#8c8474","weight":0.1602,"lightness":0.502,"saturation":0.0945,"hue_group":"neutral"},{"hex":"#4c7464","weight":0.1172,"lightness":0.3765,"saturation":0.2083,"hue_group":"cyan"},{"hex":"#6c7444","weight":0.1172,"lightness":0.3608,"saturation":0.2609,"hue_group":"yellow"},{"hex":"#7cb49c","weight":0.1133,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_cut_copper.png","family":"weathered_cut_copper","relations":[{"type":"variants","target":"minecraft:weathered_cut_copper","label":"Same family: weathered_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:weathered_cut_copper","label":"Related set: weathered_cut_copper","confidence":0.8},{"type":"variants","target":"minecraft:weathered_cut_copper_slab","label":"Same family: weathered_cut_copper","confidence":0.75},{"type":"related_sets","target":"minecraft:weathered_cut_copper_slab","label":"Related set: weathered_cut_copper","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_door","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Palette proche: Waxed Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Palette proche: Waxed Weathered Cut Copper Stairs","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper","label":"Palette proche: Weathered Cut Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_cut_copper_slab","label":"Palette proche: Weathered Cut Copper Slab","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_door","label":"Palette proche: Waxed Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_door","label":"Palette proche: Weathered Copper Door","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper","label":"Palette proche: Waxed Weathered Copper","confidence":0.929},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper","label":"Pont de nuance par palette: Waxed Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_slab","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_cut_copper_stairs","label":"Pont de nuance par palette: Waxed Weathered Cut Copper Stairs","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper","label":"Pont de nuance par palette: Weathered Cut Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_cut_copper_slab","label":"Pont de nuance par palette: Weathered Cut Copper Slab","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par palette: Waxed Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par palette: Weathered Copper Door","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55}],"category":"building"},{"id":"minecraft:weathered_lightning_rod","name":"Weathered Lightning Rod","entry_type":"block","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added lightning rods."},{"version":"wiki-history","status":"added","notes":"Added exposed, weathered and oxidized variants of lightning rods."}],"colors":{"primary":"#618e69","dominant_hex":"#64ac74","average_hex":"#618e69","hue_group":"green","lightness":0.4686,"saturation":0.1883,"palette":["#64ac74","#71925f","#446c64","#6c7c4f","#3c5c54","#7cb49c"],"color_groups":[{"hex":"#64ac74","weight":0.275,"lightness":0.5333,"saturation":0.3025,"hue_group":"green"},{"hex":"#71925f","weight":0.175,"lightness":0.4725,"saturation":0.2116,"hue_group":"green"},{"hex":"#446c64","weight":0.15,"lightness":0.3451,"saturation":0.2273,"hue_group":"cyan"},{"hex":"#6c7c4f","weight":0.15,"lightness":0.398,"saturation":0.2217,"hue_group":"yellow"},{"hex":"#3c5c54","weight":0.125,"lightness":0.298,"saturation":0.2105,"hue_group":"cyan"},{"hex":"#7cb49c","weight":0.125,"lightness":0.5961,"saturation":0.2718,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weathered_lightning_rod.png","family":"weathered_lightning_rod","relations":[{"type":"visual_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_grate","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_lantern","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_copper_golem_statue","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_copper_chest","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Palette proche: Waxed Weathered Lightning Rod","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_grate","label":"Palette proche: Waxed Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_copper_grate","label":"Palette proche: Weathered Copper Grate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_chiseled_copper","label":"Palette proche: Waxed Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weathered_chiseled_copper","label":"Palette proche: Weathered Chiseled Copper","confidence":0.94},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bars","label":"Palette proche: Waxed Weathered Copper Bars","confidence":0.938},{"type":"color_neighbors","target":"minecraft:weathered_copper_bars","label":"Palette proche: Weathered Copper Bars","confidence":0.938},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Palette proche: Waxed Weathered Copper Trapdoor","confidence":0.919},{"type":"color_neighbors","target":"minecraft:weathered_copper_trapdoor","label":"Palette proche: Weathered Copper Trapdoor","confidence":0.919},{"type":"color_neighbors","target":"minecraft:waxed_weathered_copper_bulb","label":"Palette proche: Waxed Weathered Copper Bulb","confidence":0.919},{"type":"color_neighbors","target":"minecraft:weathered_copper_bulb","label":"Palette proche: Weathered Copper Bulb","confidence":0.919},{"type":"color_neighbors","target":"minecraft:waxed_weathered_cut_copper","label":"Palette proche: Waxed Weathered Cut Copper","confidence":0.907},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par palette: Waxed Weathered Lightning Rod","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par palette: Waxed Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par palette: Weathered Copper Grate","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_chiseled_copper","label":"Pont de nuance par palette: Waxed Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_chiseled_copper","label":"Pont de nuance par palette: Weathered Chiseled Copper","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bars","label":"Pont de nuance par palette: Waxed Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_bars","label":"Pont de nuance par palette: Weathered Copper Bars","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par palette: Waxed Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par palette: Weathered Copper Trapdoor","confidence":0.86},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_bulb","label":"Pont de nuance par palette: Waxed Weathered Copper Bulb","confidence":0.86},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55}],"category":""},{"id":"minecraft:weeping_vines","name":"Weeping Vines","entry_type":"block","description":"Weeping vines are climbable, downwards-growing vegetation blocks found in the Nether in crimson forests.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added weeping vines."}],"colors":{"primary":"#690100","dominant_hex":"#5c0404","average_hex":"#690100","hue_group":"red","lightness":0.2059,"saturation":1.0,"palette":["#5c0404","#6c0404","#7c0404"],"color_groups":[{"hex":"#5c0404","weight":0.3929,"lightness":0.1882,"saturation":0.9167,"hue_group":"red"},{"hex":"#6c0404","weight":0.3214,"lightness":0.2196,"saturation":0.9286,"hue_group":"red"},{"hex":"#7c0404","weight":0.2857,"lightness":0.251,"saturation":0.9375,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weeping_vines.png","family":"weeping_vines","relations":[{"type":"visual_neighbors","target":"minecraft:nether_wart_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:barrier","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weeping_vines_plant","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_candle","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:weeping_vines_plant","label":"Palette proche: Weeping Vines Plant","confidence":0.926},{"type":"color_neighbors","target":"minecraft:red_nether_brick_slab","label":"Palette proche: Red Nether Brick Slab","confidence":0.868},{"type":"color_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Palette proche: Red Nether Brick Stairs","confidence":0.868},{"type":"color_neighbors","target":"minecraft:red_nether_brick_wall","label":"Palette proche: Red Nether Brick Wall","confidence":0.868},{"type":"color_neighbors","target":"minecraft:red_nether_bricks","label":"Palette proche: Red Nether Bricks","confidence":0.868},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.855},{"type":"color_neighbors","target":"minecraft:redstone_block","label":"Palette proche: Redstone Block","confidence":0.848},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.81},{"type":"color_neighbors","target":"minecraft:barrier","label":"Palette proche: Barrier","confidence":0.786},{"type":"color_neighbors","target":"minecraft:crimson_fungus","label":"Palette proche: Crimson Fungus","confidence":0.784},{"type":"color_neighbors","target":"minecraft:potted_crimson_fungus","label":"Palette proche: Potted Crimson Fungus","confidence":0.784},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.666},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.612},{"type":"color_bridge","target":"minecraft:smithing_table","label":"Pont de nuance par sous-ton: Smithing Table","confidence":0.58},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:gilded_blackstone","label":"Pont de nuance par sous-ton: Gilded Blackstone","confidence":0.58},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.58},{"type":"color_bridge","target":"minecraft:detector_rail","label":"Pont de nuance par sous-ton: Detector Rail","confidence":0.58},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.58},{"type":"color_bridge","target":"minecraft:comparator","label":"Pont de nuance par sous-ton: Comparator","confidence":0.58},{"type":"color_bridge","target":"minecraft:netherite_block","label":"Pont de nuance par sous-ton: Netherite Block","confidence":0.58},{"type":"color_analogous","target":"minecraft:nether_wart_block","label":"Couleurs analogues: Nether Wart Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:crimson_nylium","label":"Couleurs analogues: Crimson Nylium","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete","label":"Couleurs analogues: Red Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:netherrack","label":"Couleurs analogues: Netherrack","confidence":0.96},{"type":"color_analogous","target":"minecraft:weeping_vines_plant","label":"Couleurs analogues: Weeping Vines Plant","confidence":0.953},{"type":"color_analogous","target":"minecraft:red_stained_glass_pane","label":"Couleurs analogues: Red Stained Glass Pane","confidence":0.952},{"type":"color_analogous","target":"minecraft:mangrove_door","label":"Couleurs analogues: Mangrove Door","confidence":0.951},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_candle","label":"Contraste complementaire: Cyan Candle","confidence":0.957},{"type":"color_complement","target":"minecraft:snow","label":"Contraste complementaire: Snow","confidence":0.952},{"type":"color_complement","target":"minecraft:snow_block","label":"Contraste complementaire: Snow Block","confidence":0.952},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.938},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.938},{"type":"color_complement","target":"minecraft:powder_snow","label":"Contraste complementaire: Powder Snow","confidence":0.937},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.923},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.893},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.892},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.876},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.859},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.85},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.849},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.849},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.771},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.957},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.957},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.949},{"type":"color_square","target":"minecraft:dark_oak_sapling","label":"Harmonie carree: Dark Oak Sapling","confidence":0.936},{"type":"color_square","target":"minecraft:potted_dark_oak_sapling","label":"Harmonie carree: Potted Dark Oak Sapling","confidence":0.936},{"type":"color_square","target":"minecraft:lime_shulker_box","label":"Harmonie carree: Lime Shulker Box","confidence":0.924},{"type":"color_square","target":"minecraft:kelp_plant","label":"Harmonie carree: Kelp Plant","confidence":0.922},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.724},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.69},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.681},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.681},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.681},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.681},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.668},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.65}],"category":"natural"},{"id":"minecraft:weeping_vines_plant","name":"Weeping Vines Plant","entry_type":"block","description":"Weeping vines are climbable, downwards-growing vegetation blocks found in the Nether in crimson forests.","history":[{"version":"1.16 20w06a","status":"added","notes":"Added weeping vines."}],"colors":{"primary":"#85100c","dominant_hex":"#7c0404","average_hex":"#85100c","hue_group":"red","lightness":0.2843,"saturation":0.8345,"palette":["#7c0404","#6c0404","#5c0404","#a02228","#c4343c","#fc6404"],"color_groups":[{"hex":"#7c0404","weight":0.2609,"lightness":0.251,"saturation":0.9375,"hue_group":"red"},{"hex":"#6c0404","weight":0.2435,"lightness":0.2196,"saturation":0.9286,"hue_group":"red"},{"hex":"#5c0404","weight":0.1913,"lightness":0.1882,"saturation":0.9167,"hue_group":"red"},{"hex":"#a02228","weight":0.1304,"lightness":0.3804,"saturation":0.6495,"hue_group":"red"},{"hex":"#c4343c","weight":0.1304,"lightness":0.4863,"saturation":0.5806,"hue_group":"red"},{"hex":"#fc6404","weight":0.0435,"lightness":0.502,"saturation":0.9764,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/weeping_vines_plant.png","family":"weeping_vines_plant","relations":[{"type":"visual_neighbors","target":"minecraft:potted_crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crimson_roots","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_brick_wall","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:red_nether_bricks","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_wart_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_slab","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:resin_brick_stairs","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:nether_wart_block","label":"Palette proche: Nether Wart Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:nether_wart","label":"Palette proche: Nether Wart","confidence":0.933},{"type":"color_neighbors","target":"minecraft:weeping_vines","label":"Palette proche: Weeping Vines","confidence":0.926},{"type":"color_neighbors","target":"minecraft:crimson_fungus","label":"Palette proche: Crimson Fungus","confidence":0.892},{"type":"color_neighbors","target":"minecraft:potted_crimson_fungus","label":"Palette proche: Potted Crimson Fungus","confidence":0.892},{"type":"color_neighbors","target":"minecraft:crimson_nylium","label":"Palette proche: Crimson Nylium","confidence":0.881},{"type":"color_neighbors","target":"minecraft:red_shulker_box","label":"Palette proche: Red Shulker Box","confidence":0.853},{"type":"color_neighbors","target":"minecraft:redstone_block","label":"Palette proche: Redstone Block","confidence":0.833},{"type":"color_neighbors","target":"minecraft:red_nether_brick_slab","label":"Palette proche: Red Nether Brick Slab","confidence":0.832},{"type":"color_neighbors","target":"minecraft:red_nether_brick_stairs","label":"Palette proche: Red Nether Brick Stairs","confidence":0.832},{"type":"color_neighbors","target":"minecraft:red_nether_brick_wall","label":"Palette proche: Red Nether Brick Wall","confidence":0.832},{"type":"color_neighbors","target":"minecraft:red_nether_bricks","label":"Palette proche: Red Nether Bricks","confidence":0.832},{"type":"color_bridge","target":"minecraft:redstone_ore","label":"Pont de nuance par sous-ton: Redstone Ore","confidence":0.718},{"type":"color_bridge","target":"minecraft:activator_rail","label":"Pont de nuance par sous-ton: Activator Rail","confidence":0.713},{"type":"color_bridge","target":"minecraft:deepslate_redstone_ore","label":"Pont de nuance par palette: Deepslate Redstone Ore","confidence":0.677},{"type":"color_bridge","target":"minecraft:crafter","label":"Pont de nuance par sous-ton: Crafter","confidence":0.646},{"type":"color_bridge","target":"minecraft:repeater","label":"Pont de nuance par palette: Repeater","confidence":0.629},{"type":"color_bridge","target":"minecraft:yellow_concrete","label":"Pont de nuance par palette: Yellow Concrete","confidence":0.613},{"type":"color_bridge","target":"minecraft:bell","label":"Pont de nuance par palette: Bell","confidence":0.612},{"type":"color_bridge","target":"minecraft:yellow_shulker_box","label":"Pont de nuance par palette: Yellow Shulker Box","confidence":0.606},{"type":"color_bridge","target":"minecraft:honey_block","label":"Pont de nuance par palette: Honey Block","confidence":0.598},{"type":"color_bridge","target":"minecraft:raw_gold_block","label":"Pont de nuance par palette: Raw Gold Block","confidence":0.596},{"type":"color_analogous","target":"minecraft:red_carpet","label":"Couleurs analogues: Red Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_wool","label":"Couleurs analogues: Red Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_candle","label":"Couleurs analogues: Red Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_shelf","label":"Couleurs analogues: Mangrove Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:mangrove_door","label":"Couleurs analogues: Mangrove Door","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_concrete_powder","label":"Couleurs analogues: Red Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:red_shulker_box","label":"Couleurs analogues: Red Shulker Box","confidence":0.958},{"type":"color_analogous","target":"minecraft:nether_wart_block","label":"Couleurs analogues: Nether Wart Block","confidence":0.957},{"type":"color_complement","target":"minecraft:calibrated_sculk_sensor","label":"Contraste complementaire: Calibrated Sculk Sensor","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_sensor","label":"Contraste complementaire: Sculk Sensor","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_fire","label":"Contraste complementaire: Soul Fire","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_carpet","label":"Contraste complementaire: Cyan Carpet","confidence":0.944},{"type":"color_complement","target":"minecraft:cyan_wool","label":"Contraste complementaire: Cyan Wool","confidence":0.944},{"type":"color_complement","target":"minecraft:blue_orchid","label":"Contraste complementaire: Blue Orchid","confidence":0.94},{"type":"color_complement","target":"minecraft:potted_blue_orchid","label":"Contraste complementaire: Potted Blue Orchid","confidence":0.94},{"type":"color_complement","target":"minecraft:warped_wart_block","label":"Contraste complementaire: Warped Wart Block","confidence":0.939},{"type":"color_triad","target":"minecraft:wheat","label":"Harmonie triadique: Wheat","confidence":0.938},{"type":"color_triad","target":"minecraft:black_candle","label":"Harmonie triadique: Black Candle","confidence":0.917},{"type":"color_triad","target":"minecraft:blue_concrete","label":"Harmonie triadique: Blue Concrete","confidence":0.852},{"type":"color_triad","target":"minecraft:blue_shulker_box","label":"Harmonie triadique: Blue Shulker Box","confidence":0.851},{"type":"color_triad","target":"minecraft:blue_concrete_powder","label":"Harmonie triadique: Blue Concrete Powder","confidence":0.818},{"type":"color_triad","target":"minecraft:blue_carpet","label":"Harmonie triadique: Blue Carpet","confidence":0.808},{"type":"color_triad","target":"minecraft:blue_wool","label":"Harmonie triadique: Blue Wool","confidence":0.808},{"type":"color_triad","target":"minecraft:carrots","label":"Harmonie triadique: Carrots","confidence":0.729},{"type":"color_square","target":"minecraft:lime_concrete","label":"Harmonie carree: Lime Concrete","confidence":0.954},{"type":"color_square","target":"minecraft:purple_concrete","label":"Harmonie carree: Purple Concrete","confidence":0.948},{"type":"color_square","target":"minecraft:jungle_sapling","label":"Harmonie carree: Jungle Sapling","confidence":0.942},{"type":"color_square","target":"minecraft:potted_jungle_sapling","label":"Harmonie carree: Potted Jungle Sapling","confidence":0.942},{"type":"color_square","target":"minecraft:purple_stained_glass","label":"Harmonie carree: Purple Stained Glass","confidence":0.913},{"type":"color_square","target":"minecraft:kelp","label":"Harmonie carree: Kelp","confidence":0.912},{"type":"color_square","target":"minecraft:lime_candle","label":"Harmonie carree: Lime Candle","confidence":0.903},{"type":"color_square","target":"minecraft:purple_candle","label":"Harmonie carree: Purple Candle","confidence":0.898},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.654},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.62},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.612},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.612},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.612},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.612},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.598},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.581}],"category":"natural"},{"id":"minecraft:wet_sponge","name":"Wet Sponge","entry_type":"block","description":"A sponge is a block that can be placed to remove water in an area around itself. This turns it into a wet sponge, which can be smelted or placed in the Nether to dry it to be reused. Sponges can only be found in ocean monuments.","history":[{"version":"0.0.19a","status":"added","notes":"Added sponges."},{"version":"20100227-1414","status":"added","notes":"added in a later version of Infdev, though sponges weren't touched as they were no longer necessary."},{"version":"1.8 14w25a","status":"added","notes":"Added wet sponges. Sponges now soak up contiguous water source blocks out to a taxicab distance of 7 when placed, thereupon turning into the new wet sponge."}],"colors":{"primary":"#abb546","dominant_hex":"#b4bc4c","average_hex":"#abb546","hue_group":"yellow","lightness":0.4922,"saturation":0.4422,"palette":["#b4bc4c","#94ac44","#cccc4c","#8c8c34"],"color_groups":[{"hex":"#b4bc4c","weight":0.3789,"lightness":0.5176,"saturation":0.4553,"hue_group":"yellow"},{"hex":"#94ac44","weight":0.2422,"lightness":0.4706,"saturation":0.4333,"hue_group":"yellow"},{"hex":"#cccc4c","weight":0.2266,"lightness":0.549,"saturation":0.5565,"hue_group":"yellow"},{"hex":"#8c8c34","weight":0.1523,"lightness":0.3765,"saturation":0.4583,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/wet_sponge.png","family":"wet_sponge","relations":[{"type":"visual_neighbors","target":"minecraft:bamboo_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_mosaic_stairs","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:scaffolding","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_door","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_button","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_planks","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_slab","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:sponge","label":"Palette proche: Sponge","confidence":0.894},{"type":"color_neighbors","target":"minecraft:cocoa","label":"Palette proche: Cocoa","confidence":0.876},{"type":"color_neighbors","target":"minecraft:bamboo_block","label":"Palette proche: Bamboo Block","confidence":0.871},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic","label":"Palette proche: Bamboo Mosaic","confidence":0.83},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic_slab","label":"Palette proche: Bamboo Mosaic Slab","confidence":0.83},{"type":"color_neighbors","target":"minecraft:bamboo_mosaic_stairs","label":"Palette proche: Bamboo Mosaic Stairs","confidence":0.83},{"type":"color_neighbors","target":"minecraft:bamboo_shelf","label":"Palette proche: Bamboo Shelf","confidence":0.823},{"type":"color_neighbors","target":"minecraft:bamboo_button","label":"Palette proche: Bamboo Button","confidence":0.822},{"type":"color_neighbors","target":"minecraft:bamboo_hanging_sign","label":"Palette proche: Bamboo Hanging Sign","confidence":0.822},{"type":"color_neighbors","target":"minecraft:bamboo_planks","label":"Palette proche: Bamboo Planks","confidence":0.822},{"type":"color_neighbors","target":"minecraft:bamboo_pressure_plate","label":"Palette proche: Bamboo Pressure Plate","confidence":0.822},{"type":"color_neighbors","target":"minecraft:bamboo_sign","label":"Palette proche: Bamboo Sign","confidence":0.822},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.723},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.72},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.72},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.703},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.703},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.701},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.701},{"type":"color_bridge","target":"minecraft:light_gray_concrete","label":"Pont de nuance par palette: Light Gray Concrete","confidence":0.7},{"type":"color_bridge","target":"minecraft:light_gray_candle","label":"Pont de nuance par palette: Light Gray Candle","confidence":0.693},{"type":"color_bridge","target":"minecraft:exposed_copper","label":"Pont de nuance par palette: Exposed Copper","confidence":0.678},{"type":"color_analogous","target":"minecraft:potted_flowering_azalea_bush","label":"Couleurs analogues: Potted Flowering Azalea Bush","confidence":0.96},{"type":"color_analogous","target":"minecraft:end_stone_brick_slab","label":"Couleurs analogues: End Stone Brick Slab","confidence":0.938},{"type":"color_analogous","target":"minecraft:end_stone_brick_stairs","label":"Couleurs analogues: End Stone Brick Stairs","confidence":0.938},{"type":"color_analogous","target":"minecraft:end_stone_brick_wall","label":"Couleurs analogues: End Stone Brick Wall","confidence":0.938},{"type":"color_analogous","target":"minecraft:end_stone_bricks","label":"Couleurs analogues: End Stone Bricks","confidence":0.938},{"type":"color_analogous","target":"minecraft:sea_pickle","label":"Couleurs analogues: Sea Pickle","confidence":0.912},{"type":"color_analogous","target":"minecraft:cocoa","label":"Couleurs analogues: Cocoa","confidence":0.895},{"type":"color_analogous","target":"minecraft:end_stone","label":"Couleurs analogues: End Stone","confidence":0.89},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.893},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.771},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.77},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.755},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.738},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.738},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.611},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.603},{"type":"color_triad","target":"minecraft:magenta_carpet","label":"Harmonie triadique: Magenta Carpet","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_wool","label":"Harmonie triadique: Magenta Wool","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_shulker_box","label":"Harmonie triadique: Magenta Shulker Box","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_concrete","label":"Harmonie triadique: Magenta Concrete","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_glazed_terracotta","label":"Harmonie triadique: Cyan Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:structure_void","label":"Harmonie triadique: Structure Void","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_concrete_powder","label":"Harmonie triadique: Magenta Concrete Powder","confidence":0.959},{"type":"color_triad","target":"minecraft:cyan_concrete_powder","label":"Harmonie triadique: Cyan Concrete Powder","confidence":0.951},{"type":"color_square","target":"minecraft:crimson_hanging_sign","label":"Harmonie carree: Crimson Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_wall_hanging_sign","label":"Harmonie carree: Crimson Wall Hanging Sign","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_crimson_hyphae","label":"Harmonie carree: Stripped Crimson Hyphae","confidence":0.96},{"type":"color_square","target":"minecraft:stripped_crimson_stem","label":"Harmonie carree: Stripped Crimson Stem","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_shelf","label":"Harmonie carree: Crimson Shelf","confidence":0.96},{"type":"color_square","target":"minecraft:crimson_door","label":"Harmonie carree: Crimson Door","confidence":0.96},{"type":"color_square","target":"minecraft:dark_prismarine","label":"Harmonie carree: Dark Prismarine","confidence":0.96},{"type":"color_square","target":"minecraft:dark_prismarine_slab","label":"Harmonie carree: Dark Prismarine Slab","confidence":0.96},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_button","label":"Contraste clair sombre: Pale Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence","label":"Contraste clair sombre: Pale Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_fence_gate","label":"Contraste clair sombre: Pale Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_planks","label":"Contraste clair sombre: Pale Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_pressure_plate","label":"Contraste clair sombre: Pale Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:pale_oak_sign","label":"Contraste clair sombre: Pale Oak Sign","confidence":0.55}],"category":""},{"id":"minecraft:wheat","name":"Wheat","entry_type":"block","description":"Wheat is an item primarily obtained by harvesting fully-grown wheat crops. It is used for crafting as well as to feed certain animals.","history":[{"version":"20100206-2034","status":"added","notes":"Added wheat."},{"version":"19w07a","status":"added","notes":"Added foxes , which sometimes spawn with wheat in their mouths."}],"colors":{"primary":"#098010","dominant_hex":"#046c04","average_hex":"#098010","hue_group":"green","lightness":0.2686,"saturation":0.8686,"palette":["#046c04","#0c8c04","#14741c","#04ac1c"],"color_groups":[{"hex":"#046c04","weight":0.2857,"lightness":0.2196,"saturation":0.9286,"hue_group":"green"},{"hex":"#0c8c04","weight":0.2857,"lightness":0.2824,"saturation":0.9444,"hue_group":"green"},{"hex":"#14741c","weight":0.2857,"lightness":0.2667,"saturation":0.7059,"hue_group":"green"},{"hex":"#04ac1c","weight":0.1429,"lightness":0.3451,"saturation":0.9545,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/wheat_stage0.png","family":"wheat","relations":[{"type":"visual_neighbors","target":"minecraft:seagrass","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tall_seagrass","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_jungle_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sunflower","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dark_oak_sapling","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:beetroots","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potatoes","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:emerald_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.754},{"type":"color_neighbors","target":"minecraft:tall_seagrass","label":"Palette proche: Tall Seagrass","confidence":0.75},{"type":"color_neighbors","target":"minecraft:seagrass","label":"Palette proche: Seagrass","confidence":0.741},{"type":"color_neighbors","target":"minecraft:carrots","label":"Palette proche: Carrots","confidence":0.686},{"type":"color_neighbors","target":"minecraft:emerald_block","label":"Palette proche: Emerald Block","confidence":0.684},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.653},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.653},{"type":"color_neighbors","target":"minecraft:potatoes","label":"Palette proche: Potatoes","confidence":0.648},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.634},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.634},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.625},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.616},{"type":"color_bridge","target":"minecraft:potted_red_tulip","label":"Pont de nuance par palette: Potted Red Tulip","confidence":0.698},{"type":"color_bridge","target":"minecraft:red_tulip","label":"Pont de nuance par palette: Red Tulip","confidence":0.698},{"type":"color_bridge","target":"minecraft:bamboo","label":"Pont de nuance par palette: Bamboo","confidence":0.66},{"type":"color_bridge","target":"minecraft:dandelion","label":"Pont de nuance par palette: Dandelion","confidence":0.65},{"type":"color_bridge","target":"minecraft:potted_dandelion","label":"Pont de nuance par palette: Potted Dandelion","confidence":0.65},{"type":"color_bridge","target":"minecraft:melon","label":"Pont de nuance par palette: Melon","confidence":0.619},{"type":"color_bridge","target":"minecraft:blue_orchid","label":"Pont de nuance par palette: Blue Orchid","confidence":0.614},{"type":"color_bridge","target":"minecraft:potted_blue_orchid","label":"Pont de nuance par palette: Potted Blue Orchid","confidence":0.614},{"type":"color_bridge","target":"minecraft:deepslate_emerald_ore","label":"Pont de nuance par sous-ton: Deepslate Emerald Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:peony","label":"Pont de nuance par sous-ton: Peony","confidence":0.58},{"type":"color_analogous","target":"minecraft:carrots","label":"Couleurs analogues: Carrots","confidence":0.821},{"type":"color_analogous","target":"minecraft:sweet_berry_bush","label":"Couleurs analogues: Sweet Berry Bush","confidence":0.708},{"type":"color_analogous","target":"minecraft:mangrove_propagule","label":"Couleurs analogues: Mangrove Propagule","confidence":0.698},{"type":"color_analogous","target":"minecraft:emerald_block","label":"Couleurs analogues: Emerald Block","confidence":0.655},{"type":"color_analogous","target":"minecraft:verdant_froglight","label":"Couleurs analogues: Verdant Froglight","confidence":0.653},{"type":"color_analogous","target":"minecraft:potatoes","label":"Couleurs analogues: Potatoes","confidence":0.639},{"type":"color_analogous","target":"minecraft:slime_block","label":"Couleurs analogues: Slime Block","confidence":0.597},{"type":"color_analogous","target":"minecraft:test_block","label":"Couleurs analogues: Test Block","confidence":0.584},{"type":"color_complement","target":"minecraft:magenta_candle","label":"Contraste complementaire: Magenta Candle","confidence":0.947},{"type":"color_complement","target":"minecraft:magenta_concrete_powder","label":"Contraste complementaire: Magenta Concrete Powder","confidence":0.931},{"type":"color_complement","target":"minecraft:magenta_concrete","label":"Contraste complementaire: Magenta Concrete","confidence":0.921},{"type":"color_complement","target":"minecraft:magenta_shulker_box","label":"Contraste complementaire: Magenta Shulker Box","confidence":0.917},{"type":"color_complement","target":"minecraft:magenta_carpet","label":"Contraste complementaire: Magenta Carpet","confidence":0.914},{"type":"color_complement","target":"minecraft:magenta_wool","label":"Contraste complementaire: Magenta Wool","confidence":0.914},{"type":"color_complement","target":"minecraft:bubble_coral_block","label":"Contraste complementaire: Bubble Coral Block","confidence":0.911},{"type":"color_complement","target":"minecraft:bubble_coral","label":"Contraste complementaire: Bubble Coral","confidence":0.884},{"type":"color_triad","target":"minecraft:red_glazed_terracotta","label":"Harmonie triadique: Red Glazed Terracotta","confidence":0.96},{"type":"color_triad","target":"minecraft:potted_red_mushroom","label":"Harmonie triadique: Potted Red Mushroom","confidence":0.956},{"type":"color_triad","target":"minecraft:red_mushroom","label":"Harmonie triadique: Red Mushroom","confidence":0.956},{"type":"color_triad","target":"minecraft:weeping_vines_plant","label":"Harmonie triadique: Weeping Vines Plant","confidence":0.938},{"type":"color_triad","target":"minecraft:mangrove_trapdoor","label":"Harmonie triadique: Mangrove Trapdoor","confidence":0.935},{"type":"color_triad","target":"minecraft:mangrove_shelf","label":"Harmonie triadique: Mangrove Shelf","confidence":0.934},{"type":"color_triad","target":"minecraft:mangrove_button","label":"Harmonie triadique: Mangrove Button","confidence":0.932},{"type":"color_triad","target":"minecraft:mangrove_fence","label":"Harmonie triadique: Mangrove Fence","confidence":0.932},{"type":"color_square","target":"minecraft:barrel","label":"Harmonie carree: Barrel","confidence":0.96},{"type":"color_square","target":"minecraft:light_blue_stained_glass","label":"Harmonie carree: Light Blue Stained Glass","confidence":0.96},{"type":"color_square","target":"minecraft:light_blue_stained_glass_pane","label":"Harmonie carree: Light Blue Stained Glass Pane","confidence":0.96},{"type":"color_square","target":"minecraft:jungle_hanging_sign","label":"Harmonie carree: Jungle Hanging Sign","confidence":0.956},{"type":"color_square","target":"minecraft:jungle_wall_hanging_sign","label":"Harmonie carree: Jungle Wall Hanging Sign","confidence":0.956},{"type":"color_square","target":"minecraft:stripped_jungle_log","label":"Harmonie carree: Stripped Jungle Log","confidence":0.956},{"type":"color_square","target":"minecraft:stripped_jungle_wood","label":"Harmonie carree: Stripped Jungle Wood","confidence":0.956},{"type":"color_square","target":"minecraft:spruce_trapdoor","label":"Harmonie carree: Spruce Trapdoor","confidence":0.947},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.65},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.616},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.594},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.586},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.586},{"type":"value_contrast","target":"minecraft:cobweb","label":"Contraste clair sombre: Cobweb","confidence":0.573},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.552},{"type":"value_contrast","target":"minecraft:white_concrete_powder","label":"Contraste clair sombre: White Concrete Powder","confidence":0.552}],"category":""},{"id":"minecraft:wheat_seeds","name":"Wheat Seeds","entry_type":"item","description":"Wheat seeds are items obtained by breaking grass, or more abundantly harvested from wheat crops, and are used to plant them. Wheat crops are planted in farmland and used to grow wheat and wheat seeds.","history":[{"version":"Indev 20100206-2034","status":"added","notes":"Added seeds."},{"version":"wiki-history","status":"added","notes":"Added crops."},{"version":"19w03a","status":"added","notes":"added to wheat crops."}],"colors":{"primary":"#3d861c","dominant_hex":"#2c440c","average_hex":"#3d861c","hue_group":"green","lightness":0.3176,"saturation":0.6543,"palette":["#2c440c","#04e414","#6cb43c","#447424","#acb43c","#6c7424"],"color_groups":[{"hex":"#2c440c","weight":0.4,"lightness":0.1569,"saturation":0.7,"hue_group":"yellow"},{"hex":"#04e414","weight":0.2,"lightness":0.4549,"saturation":0.9655,"hue_group":"green"},{"hex":"#6cb43c","weight":0.2,"lightness":0.4706,"saturation":0.5,"hue_group":"green"},{"hex":"#447424","weight":0.1,"lightness":0.298,"saturation":0.5263,"hue_group":"green"},{"hex":"#acb43c","weight":0.0667,"lightness":0.4706,"saturation":0.5,"hue_group":"yellow"},{"hex":"#6c7424","weight":0.0333,"lightness":0.298,"saturation":0.5263,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wheat_seeds.png","family":"wheat_seeds","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:emerald","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_helmet","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_scute","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_axe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55}],"category":"item"},{"id":"minecraft:white_banner","name":"White Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"white_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:white_bed","name":"White Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"white_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:white_bundle","name":"White Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#bdc2be","dominant_hex":"#837d6b","average_hex":"#bdc2be","hue_group":"neutral","lightness":0.751,"saturation":0.0394,"palette":["#837d6b","#bdccca","#e4e4e4","#fcfcfc","#ccd4d4","#8ca4a4"],"color_groups":[{"hex":"#837d6b","weight":0.2214,"lightness":0.4667,"saturation":0.1008,"hue_group":"neutral"},{"hex":"#bdccca","weight":0.2061,"lightness":0.7706,"saturation":0.1282,"hue_group":"cyan"},{"hex":"#e4e4e4","weight":0.1603,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1527,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ccd4d4","weight":0.1374,"lightness":0.8157,"saturation":0.0851,"hue_group":"neutral"},{"hex":"#8ca4a4","weight":0.1221,"lightness":0.5961,"saturation":0.1165,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/white_bundle.png","family":"white_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:happy_ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polar_bear_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_horse_armor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:paper","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_tears","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sugar","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:feather","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tipped_arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:splash_potion","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:white_candle","name":"White Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#d2d9da","dominant_hex":"#c4d4d4","average_hex":"#d2d9da","hue_group":"neutral","lightness":0.8392,"saturation":0.0976,"palette":["#c4d4d4","#e4e4e4","#fcfcfc","#242434"],"color_groups":[{"hex":"#c4d4d4","weight":0.4286,"lightness":0.8,"saturation":0.1569,"hue_group":"cyan"},{"hex":"#e4e4e4","weight":0.2857,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.2381,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/white_candle.png","family":"white_candle","relations":[{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobweb","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cobweb","label":"Palette proche: Cobweb","confidence":0.9},{"type":"color_neighbors","target":"minecraft:white_concrete","label":"Palette proche: White Concrete","confidence":0.89},{"type":"color_neighbors","target":"minecraft:white_shulker_box","label":"Palette proche: White Shulker Box","confidence":0.884},{"type":"color_neighbors","target":"minecraft:white_concrete_powder","label":"Palette proche: White Concrete Powder","confidence":0.883},{"type":"color_neighbors","target":"minecraft:white_carpet","label":"Palette proche: White Carpet","confidence":0.841},{"type":"color_neighbors","target":"minecraft:white_wool","label":"Palette proche: White Wool","confidence":0.841},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.816},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.816},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.816},{"type":"color_neighbors","target":"minecraft:diorite","label":"Palette proche: Diorite","confidence":0.777},{"type":"color_neighbors","target":"minecraft:diorite_slab","label":"Palette proche: Diorite Slab","confidence":0.777},{"type":"color_neighbors","target":"minecraft:diorite_stairs","label":"Palette proche: Diorite Stairs","confidence":0.777},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par palette: Cobweb","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_concrete","label":"Pont de nuance par palette: White Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par palette: White Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par palette: White Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par palette: White Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par palette: White Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.849},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.849},{"type":"color_bridge","target":"minecraft:polished_diorite_stairs","label":"Pont de nuance par palette: Polished Diorite Stairs","confidence":0.849},{"type":"color_bridge","target":"minecraft:diorite","label":"Pont de nuance par palette: Diorite","confidence":0.816},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.742},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.731},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.71},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.71},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.71},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.71},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.708},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.701}],"category":"decorative"},{"id":"minecraft:white_candle_cake","name":"White Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"white_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:white_carpet","name":"White Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#eaeced","dominant_hex":"#fcfcfc","average_hex":"#eaeced","hue_group":"neutral","lightness":0.9235,"saturation":0.0769,"palette":["#fcfcfc","#f2f4f4","#d6dbdc","#e4e4e6","#eaecec","#dce3e4"],"color_groups":[{"hex":"#fcfcfc","weight":0.25,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f2f4f4","weight":0.2031,"lightness":0.9529,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#d6dbdc","weight":0.168,"lightness":0.851,"saturation":0.0789,"hue_group":"neutral"},{"hex":"#e4e4e6","weight":0.1406,"lightness":0.898,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#eaecec","weight":0.1328,"lightness":0.9216,"saturation":0.05,"hue_group":"neutral"},{"hex":"#dce3e4","weight":0.1055,"lightness":0.8784,"saturation":0.129,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/white_wool.png","family":"white_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:white_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobweb","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_wire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:white_wool","label":"Palette proche: White Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:white_concrete_powder","label":"Palette proche: White Concrete Powder","confidence":0.917},{"type":"color_neighbors","target":"minecraft:cobweb","label":"Palette proche: Cobweb","confidence":0.896},{"type":"color_neighbors","target":"minecraft:white_shulker_box","label":"Palette proche: White Shulker Box","confidence":0.891},{"type":"color_neighbors","target":"minecraft:white_concrete","label":"Palette proche: White Concrete","confidence":0.85},{"type":"color_neighbors","target":"minecraft:white_candle","label":"Palette proche: White Candle","confidence":0.841},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.73},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.73},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.73},{"type":"color_neighbors","target":"minecraft:white_stained_glass_pane","label":"Palette proche: White Stained Glass Pane","confidence":0.729},{"type":"color_neighbors","target":"minecraft:powder_snow","label":"Palette proche: Powder Snow","confidence":0.725},{"type":"color_neighbors","target":"minecraft:snow","label":"Palette proche: Snow","confidence":0.724},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par palette: White Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par palette: White Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par palette: Cobweb","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par palette: White Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_concrete","label":"Pont de nuance par palette: White Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par palette: White Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.778},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.778},{"type":"color_bridge","target":"minecraft:polished_diorite_stairs","label":"Pont de nuance par palette: Polished Diorite Stairs","confidence":0.778},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.776},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.823},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.813},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.791},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.791},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.791},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.791},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.791},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.782}],"category":"decorative"},{"id":"minecraft:white_concrete","name":"White Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#cfd5d6","dominant_hex":"#ccd4d4","average_hex":"#cfd5d6","hue_group":"neutral","lightness":0.8255,"saturation":0.0787,"palette":["#ccd4d4","#d4d4d4"],"color_groups":[{"hex":"#ccd4d4","weight":0.6406,"lightness":0.8157,"saturation":0.0851,"hue_group":"neutral"},{"hex":"#d4d4d4","weight":0.3594,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/white_concrete.png","family":"white_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobweb","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:white_shulker_box","label":"Palette proche: White Shulker Box","confidence":0.915},{"type":"color_neighbors","target":"minecraft:white_concrete_powder","label":"Palette proche: White Concrete Powder","confidence":0.899},{"type":"color_neighbors","target":"minecraft:white_candle","label":"Palette proche: White Candle","confidence":0.89},{"type":"color_neighbors","target":"minecraft:white_carpet","label":"Palette proche: White Carpet","confidence":0.85},{"type":"color_neighbors","target":"minecraft:white_wool","label":"Palette proche: White Wool","confidence":0.85},{"type":"color_neighbors","target":"minecraft:cobweb","label":"Palette proche: Cobweb","confidence":0.818},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.802},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.802},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.802},{"type":"color_neighbors","target":"minecraft:diorite","label":"Palette proche: Diorite","confidence":0.791},{"type":"color_neighbors","target":"minecraft:diorite_slab","label":"Palette proche: Diorite Slab","confidence":0.791},{"type":"color_neighbors","target":"minecraft:diorite_stairs","label":"Palette proche: Diorite Stairs","confidence":0.791},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par palette: White Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par palette: White Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par palette: White Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par palette: White Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par palette: White Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par palette: Cobweb","confidence":0.85},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.837},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.837},{"type":"color_bridge","target":"minecraft:polished_diorite_stairs","label":"Pont de nuance par palette: Polished Diorite Stairs","confidence":0.837},{"type":"color_bridge","target":"minecraft:diorite","label":"Pont de nuance par palette: Diorite","confidence":0.828},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.729},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.718},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.697},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.697},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.697},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.697},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.696},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.687}],"category":"building"},{"id":"minecraft:white_concrete_powder","name":"White Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#e2e3e4","dominant_hex":"#e4e4e4","average_hex":"#e2e3e4","hue_group":"neutral","lightness":0.8902,"saturation":0.0357,"palette":["#e4e4e4","#d9dada","#ececec","#dce2e4","#f4f5f5","#e4ecec"],"color_groups":[{"hex":"#e4e4e4","weight":0.3086,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"},{"hex":"#d9dada","weight":0.2812,"lightness":0.8529,"saturation":0.0133,"hue_group":"neutral"},{"hex":"#ececec","weight":0.1523,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dce2e4","weight":0.125,"lightness":0.8784,"saturation":0.129,"hue_group":"cyan"},{"hex":"#f4f5f5","weight":0.0859,"lightness":0.9588,"saturation":0.0476,"hue_group":"neutral"},{"hex":"#e4ecec","weight":0.0469,"lightness":0.9098,"saturation":0.1739,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/white_concrete_powder.png","family":"white_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_wire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobweb","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:white_shulker_box","label":"Palette proche: White Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:white_carpet","label":"Palette proche: White Carpet","confidence":0.917},{"type":"color_neighbors","target":"minecraft:white_wool","label":"Palette proche: White Wool","confidence":0.917},{"type":"color_neighbors","target":"minecraft:white_concrete","label":"Palette proche: White Concrete","confidence":0.899},{"type":"color_neighbors","target":"minecraft:cobweb","label":"Palette proche: Cobweb","confidence":0.897},{"type":"color_neighbors","target":"minecraft:white_candle","label":"Palette proche: White Candle","confidence":0.883},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.79},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.79},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.787},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.787},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.787},{"type":"color_neighbors","target":"minecraft:redstone_wire","label":"Palette proche: Redstone Wire","confidence":0.784},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par palette: White Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par palette: White Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par palette: White Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_concrete","label":"Pont de nuance par palette: White Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par palette: Cobweb","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par palette: White Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.827},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.827},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.825},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.825},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.792},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.781},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.762},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.76},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.76},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.76},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.76},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.751}],"category":"building"},{"id":"minecraft:white_dye","name":"White Dye","entry_type":"item","description":"White dye is one of the sixteen available dyes.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added white dye, prior to this update, bone meal was used as the white variant of dye ."},{"version":"19w05a","status":"added","notes":"Added the wandering trader , which sells white dye."},{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses , which can be dyed using white dye."}],"colors":{"primary":"#9a949f","dominant_hex":"#7a6e85","average_hex":"#9a949f","hue_group":"neutral","lightness":0.602,"saturation":0.0542,"palette":["#7a6e85","#fcfcfc","#dcdce4","#bab7ba","#3c1c1c","#464462"],"color_groups":[{"hex":"#7a6e85","weight":0.2587,"lightness":0.4765,"saturation":0.0947,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1748,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#dcdce4","weight":0.1608,"lightness":0.8784,"saturation":0.129,"hue_group":"blue"},{"hex":"#bab7ba","weight":0.1538,"lightness":0.7235,"saturation":0.0213,"hue_group":"neutral"},{"hex":"#3c1c1c","weight":0.1399,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#464462","weight":0.1119,"lightness":0.3255,"saturation":0.1807,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/white_dye.png","family":"white_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:powder_snow_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_boat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_membrane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_ingot","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:splash_potion","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:milk_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nether_star","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:white_glazed_terracotta","name":"White Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#bcd4cb","dominant_hex":"#fafafa","average_hex":"#bcd4cb","hue_group":"cyan","lightness":0.7843,"saturation":0.2182,"palette":["#fafafa","#309ccd","#fcdc3c","#fcdc5a","#4474d4","#d4d4d4"],"color_groups":[{"hex":"#fafafa","weight":0.457,"lightness":0.9804,"saturation":0.0,"hue_group":"neutral"},{"hex":"#309ccd","weight":0.2344,"lightness":0.4961,"saturation":0.6206,"hue_group":"cyan"},{"hex":"#fcdc3c","weight":0.0977,"lightness":0.6118,"saturation":0.9697,"hue_group":"yellow"},{"hex":"#fcdc5a","weight":0.0938,"lightness":0.6706,"saturation":0.9643,"hue_group":"yellow"},{"hex":"#4474d4","weight":0.0625,"lightness":0.549,"saturation":0.6261,"hue_group":"blue"},{"hex":"#d4d4d4","weight":0.0547,"lightness":0.8314,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/white_glazed_terracotta.png","family":"white_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:sea_lantern","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_pane","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chain_command_block","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_glazed_terracotta","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_wall","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_slab","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_brick_stairs","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:prismarine_bricks","label":"Shared hue group: cyan","confidence":0.55},{"type":"color_neighbors","target":"minecraft:wildflowers","label":"Palette proche: Wildflowers","confidence":0.739},{"type":"color_neighbors","target":"minecraft:light_blue_glazed_terracotta","label":"Palette proche: Light Blue Glazed Terracotta","confidence":0.721},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.683},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.683},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.683},{"type":"color_neighbors","target":"minecraft:iron_door","label":"Palette proche: Iron Door","confidence":0.678},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.677},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.677},{"type":"color_neighbors","target":"minecraft:redstone_wire","label":"Palette proche: Redstone Wire","confidence":0.66},{"type":"color_neighbors","target":"minecraft:iron_trapdoor","label":"Palette proche: Iron Trapdoor","confidence":0.657},{"type":"color_neighbors","target":"minecraft:bubble_column","label":"Palette proche: Bubble Column","confidence":0.651},{"type":"color_neighbors","target":"minecraft:water","label":"Palette proche: Water","confidence":0.651},{"type":"color_bridge","target":"minecraft:wildflowers","label":"Pont de nuance par sous-ton: Wildflowers","confidence":0.785},{"type":"color_bridge","target":"minecraft:light_blue_glazed_terracotta","label":"Pont de nuance par sous-ton: Light Blue Glazed Terracotta","confidence":0.771},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.739},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.739},{"type":"color_bridge","target":"minecraft:polished_diorite_stairs","label":"Pont de nuance par palette: Polished Diorite Stairs","confidence":0.739},{"type":"color_bridge","target":"minecraft:iron_door","label":"Pont de nuance par palette: Iron Door","confidence":0.735},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.734},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.734},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.72},{"type":"color_bridge","target":"minecraft:iron_trapdoor","label":"Pont de nuance par palette: Iron Trapdoor","confidence":0.718},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.689},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.678},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.657},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.657},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.657},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.657},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.655},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.641}],"category":"building"},{"id":"minecraft:white_harness","name":"White Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#7b6252","dominant_hex":"#717879","average_hex":"#7b6252","hue_group":"red","lightness":0.402,"saturation":0.2,"palette":["#717879","#502e16","#9f5f3e","#cdcfcf","#3c2414","#754525"],"color_groups":[{"hex":"#717879","weight":0.227,"lightness":0.4588,"saturation":0.0342,"hue_group":"neutral"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#9f5f3e","weight":0.1718,"lightness":0.4333,"saturation":0.4389,"hue_group":"red"},{"hex":"#cdcfcf","weight":0.1656,"lightness":0.8078,"saturation":0.0204,"hue_group":"neutral"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"},{"hex":"#754525","weight":0.1104,"lightness":0.302,"saturation":0.5195,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/white_harness.png","family":"white_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:writable_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_relic","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:white_shulker_box","name":"White Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#d8dddd","dominant_hex":"#e4ecec","average_hex":"#d8dddd","hue_group":"neutral","lightness":0.8569,"saturation":0.0685,"palette":["#e4ecec","#d4dcdc","#bac2c2","#cad1d2","#dce4e4","#e4e4e4"],"color_groups":[{"hex":"#e4ecec","weight":0.4297,"lightness":0.9098,"saturation":0.1739,"hue_group":"cyan"},{"hex":"#d4dcdc","weight":0.1719,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#bac2c2","weight":0.168,"lightness":0.7451,"saturation":0.0615,"hue_group":"neutral"},{"hex":"#cad1d2","weight":0.1133,"lightness":0.8078,"saturation":0.0816,"hue_group":"neutral"},{"hex":"#dce4e4","weight":0.0625,"lightness":0.8784,"saturation":0.129,"hue_group":"cyan"},{"hex":"#e4e4e4","weight":0.0547,"lightness":0.8941,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/white_shulker_box.png","family":"white_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobweb","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:white_concrete_powder","label":"Palette proche: White Concrete Powder","confidence":0.94},{"type":"color_neighbors","target":"minecraft:white_concrete","label":"Palette proche: White Concrete","confidence":0.915},{"type":"color_neighbors","target":"minecraft:cobweb","label":"Palette proche: Cobweb","confidence":0.913},{"type":"color_neighbors","target":"minecraft:white_carpet","label":"Palette proche: White Carpet","confidence":0.891},{"type":"color_neighbors","target":"minecraft:white_wool","label":"Palette proche: White Wool","confidence":0.891},{"type":"color_neighbors","target":"minecraft:white_candle","label":"Palette proche: White Candle","confidence":0.884},{"type":"color_neighbors","target":"minecraft:light_gray_glazed_terracotta","label":"Palette proche: Light Gray Glazed Terracotta","confidence":0.771},{"type":"color_neighbors","target":"minecraft:glass","label":"Palette proche: Glass","confidence":0.735},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.734},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.734},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.734},{"type":"color_neighbors","target":"minecraft:glass_pane","label":"Palette proche: Glass Pane","confidence":0.726},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par palette: White Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_concrete","label":"Pont de nuance par palette: White Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par palette: Cobweb","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par palette: White Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_wool","label":"Pont de nuance par palette: White Wool","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par palette: White Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:light_gray_glazed_terracotta","label":"Pont de nuance par palette: Light Gray Glazed Terracotta","confidence":0.812},{"type":"color_bridge","target":"minecraft:glass","label":"Pont de nuance par sous-ton: Glass","confidence":0.781},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.781},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.781},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.757},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.746},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.725},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.725},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.725},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.725},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.725},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.716}],"category":""},{"id":"minecraft:white_stained_glass","name":"White Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#ffffff","dominant_hex":"#fcfcfc","average_hex":"#ffffff","hue_group":"neutral","lightness":1.0,"saturation":0.0,"palette":["#fcfcfc"],"color_groups":[{"hex":"#fcfcfc","weight":1.0,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/white_stained_glass.png","family":"white_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:white_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_wire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobweb","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:white_stained_glass_pane","label":"Palette proche: White Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:redstone_wire","label":"Palette proche: Redstone Wire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.904},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.904},{"type":"color_neighbors","target":"minecraft:pale_oak_hanging_sign","label":"Palette proche: Pale Oak Hanging Sign","confidence":0.861},{"type":"color_neighbors","target":"minecraft:pale_oak_wall_hanging_sign","label":"Palette proche: Pale Oak Wall Hanging Sign","confidence":0.861},{"type":"color_neighbors","target":"minecraft:stripped_pale_oak_log","label":"Palette proche: Stripped Pale Oak Log","confidence":0.861},{"type":"color_neighbors","target":"minecraft:stripped_pale_oak_wood","label":"Palette proche: Stripped Pale Oak Wood","confidence":0.861},{"type":"color_neighbors","target":"minecraft:pale_oak_shelf","label":"Palette proche: Pale Oak Shelf","confidence":0.858},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.854},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.854},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.854},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.86},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.86},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_hanging_sign","label":"Pont de nuance par palette: Pale Oak Hanging Sign","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_wall_hanging_sign","label":"Pont de nuance par palette: Pale Oak Wall Hanging Sign","confidence":0.86},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_log","label":"Pont de nuance par palette: Stripped Pale Oak Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:stripped_pale_oak_wood","label":"Pont de nuance par palette: Stripped Pale Oak Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_shelf","label":"Pont de nuance par palette: Pale Oak Shelf","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.88},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.88},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.876},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.86},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.856},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.855},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.855},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.855}],"category":"building"},{"id":"minecraft:white_stained_glass_pane","name":"White Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#f6f6f6","dominant_hex":"#fcfcfc","average_hex":"#f6f6f6","hue_group":"neutral","lightness":0.9647,"saturation":0.0,"palette":["#fcfcfc","#f4f4f4","#ececec"],"color_groups":[{"hex":"#fcfcfc","weight":0.4062,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f4f4f4","weight":0.3438,"lightness":0.9569,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ececec","weight":0.25,"lightness":0.9255,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/white_stained_glass_pane_top.png","family":"white_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:redstone_wire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_stained_glass","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_block","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_wool","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobweb","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_trapdoor","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:redstone_wire","label":"Palette proche: Redstone Wire","confidence":0.94},{"type":"color_neighbors","target":"minecraft:white_stained_glass","label":"Palette proche: White Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:heavy_weighted_pressure_plate","label":"Palette proche: Heavy Weighted Pressure Plate","confidence":0.94},{"type":"color_neighbors","target":"minecraft:iron_block","label":"Palette proche: Iron Block","confidence":0.94},{"type":"color_neighbors","target":"minecraft:pale_oak_button","label":"Palette proche: Pale Oak Button","confidence":0.871},{"type":"color_neighbors","target":"minecraft:pale_oak_fence","label":"Palette proche: Pale Oak Fence","confidence":0.871},{"type":"color_neighbors","target":"minecraft:pale_oak_fence_gate","label":"Palette proche: Pale Oak Fence Gate","confidence":0.871},{"type":"color_neighbors","target":"minecraft:pale_oak_planks","label":"Palette proche: Pale Oak Planks","confidence":0.871},{"type":"color_neighbors","target":"minecraft:pale_oak_pressure_plate","label":"Palette proche: Pale Oak Pressure Plate","confidence":0.871},{"type":"color_neighbors","target":"minecraft:pale_oak_sign","label":"Palette proche: Pale Oak Sign","confidence":0.871},{"type":"color_neighbors","target":"minecraft:pale_oak_slab","label":"Palette proche: Pale Oak Slab","confidence":0.871},{"type":"color_neighbors","target":"minecraft:pale_oak_stairs","label":"Palette proche: Pale Oak Stairs","confidence":0.871},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.86},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par palette: Pale Oak Button","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par palette: Pale Oak Fence","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par palette: Pale Oak Fence Gate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_planks","label":"Pont de nuance par palette: Pale Oak Planks","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_pressure_plate","label":"Pont de nuance par palette: Pale Oak Pressure Plate","confidence":0.86},{"type":"color_bridge","target":"minecraft:pale_oak_sign","label":"Pont de nuance par palette: Pale Oak Sign","confidence":0.86},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.856},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.848},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.843},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.826},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.822},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.821},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.821},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.821}],"category":"building"},{"id":"minecraft:white_terracotta","name":"White Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#d2b2a1","dominant_hex":"#d4b4a4","average_hex":"#d2b2a1","hue_group":"red","lightness":0.7275,"saturation":0.3525,"palette":["#d4b4a4","#ccaca4","#ccac9c","#d4aca4","#d4ac9c","#ccb4a4"],"color_groups":[{"hex":"#d4b4a4","weight":0.7617,"lightness":0.7373,"saturation":0.3582,"hue_group":"red"},{"hex":"#ccaca4","weight":0.082,"lightness":0.7216,"saturation":0.2817,"hue_group":"red"},{"hex":"#ccac9c","weight":0.0781,"lightness":0.7059,"saturation":0.32,"hue_group":"red"},{"hex":"#d4aca4","weight":0.0547,"lightness":0.7373,"saturation":0.3582,"hue_group":"red"},{"hex":"#d4ac9c","weight":0.0156,"lightness":0.7216,"saturation":0.3944,"hue_group":"red"},{"hex":"#ccb4a4","weight":0.0078,"lightness":0.7216,"saturation":0.2817,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/white_terracotta.png","family":"white_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:cherry_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_wall_hanging_sign","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_cherry_log","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_cherry_wood","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_shelf","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_door","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_trapdoor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:command_block","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_button","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_fence_gate","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_planks","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cherry_door","label":"Palette proche: Cherry Door","confidence":0.836},{"type":"color_neighbors","target":"minecraft:cherry_trapdoor","label":"Palette proche: Cherry Trapdoor","confidence":0.831},{"type":"color_neighbors","target":"minecraft:cherry_button","label":"Palette proche: Cherry Button","confidence":0.824},{"type":"color_neighbors","target":"minecraft:cherry_fence","label":"Palette proche: Cherry Fence","confidence":0.824},{"type":"color_neighbors","target":"minecraft:cherry_fence_gate","label":"Palette proche: Cherry Fence Gate","confidence":0.824},{"type":"color_neighbors","target":"minecraft:cherry_planks","label":"Palette proche: Cherry Planks","confidence":0.824},{"type":"color_neighbors","target":"minecraft:cherry_pressure_plate","label":"Palette proche: Cherry Pressure Plate","confidence":0.824},{"type":"color_neighbors","target":"minecraft:cherry_sign","label":"Palette proche: Cherry Sign","confidence":0.824},{"type":"color_neighbors","target":"minecraft:cherry_slab","label":"Palette proche: Cherry Slab","confidence":0.824},{"type":"color_neighbors","target":"minecraft:cherry_stairs","label":"Palette proche: Cherry Stairs","confidence":0.824},{"type":"color_neighbors","target":"minecraft:cherry_wall_sign","label":"Palette proche: Cherry Wall Sign","confidence":0.824},{"type":"color_neighbors","target":"minecraft:mushroom_stem","label":"Palette proche: Mushroom Stem","confidence":0.789},{"type":"color_bridge","target":"minecraft:mushroom_stem","label":"Pont de nuance par sous-ton: Mushroom Stem","confidence":0.826},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.769},{"type":"color_bridge","target":"minecraft:exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Exposed Chiseled Copper","confidence":0.766},{"type":"color_bridge","target":"minecraft:waxed_exposed_chiseled_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Chiseled Copper","confidence":0.766},{"type":"color_bridge","target":"minecraft:exposed_cut_copper","label":"Pont de nuance par sous-ton: Exposed Cut Copper","confidence":0.757},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Exposed Cut Copper Slab","confidence":0.757},{"type":"color_bridge","target":"minecraft:exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Exposed Cut Copper Stairs","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_slab","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Slab","confidence":0.757},{"type":"color_bridge","target":"minecraft:waxed_exposed_cut_copper_stairs","label":"Pont de nuance par sous-ton: Waxed Exposed Cut Copper Stairs","confidence":0.757},{"type":"color_analogous","target":"minecraft:exposed_copper_trapdoor","label":"Couleurs analogues: Exposed Copper Trapdoor","confidence":0.945},{"type":"color_analogous","target":"minecraft:waxed_exposed_copper_trapdoor","label":"Couleurs analogues: Waxed Exposed Copper Trapdoor","confidence":0.945},{"type":"color_analogous","target":"minecraft:resin_brick_slab","label":"Couleurs analogues: Resin Brick Slab","confidence":0.938},{"type":"color_analogous","target":"minecraft:resin_brick_stairs","label":"Couleurs analogues: Resin Brick Stairs","confidence":0.938},{"type":"color_analogous","target":"minecraft:resin_brick_wall","label":"Couleurs analogues: Resin Brick Wall","confidence":0.938},{"type":"color_analogous","target":"minecraft:resin_bricks","label":"Couleurs analogues: Resin Bricks","confidence":0.938},{"type":"color_analogous","target":"minecraft:hanging_roots","label":"Couleurs analogues: Hanging Roots","confidence":0.936},{"type":"color_analogous","target":"minecraft:exposed_copper_grate","label":"Couleurs analogues: Exposed Copper Grate","confidence":0.931},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.937},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.931},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.912},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.902},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.899},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.96},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.902},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.884},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.873},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.856},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.856},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.856},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.856},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.946},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.891},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.875},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.875},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.864},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.787},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.767},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.767},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.617},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.59},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.587},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.584},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.574},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.574},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.566},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.559}],"category":"building"},{"id":"minecraft:white_tulip","name":"White Tulip","entry_type":"block","description":"Tulips are a kind of flower found in plains and flower forests that come in multiple colored variants: red, orange, white, and pink. They yield dyes of their respective colors, with the exception of white tulips, which yield light gray dye, and all of them are used to craft suspicious stew.","history":[{"version":"1.7.2 13w36a","status":"added","notes":"Added tulips."},{"version":"wiki-history","status":"added","notes":"Added wandering traders , which sell tulips."}],"colors":{"primary":"#5ea547","dominant_hex":"#54ac2c","average_hex":"#5ea547","hue_group":"green","lightness":0.4627,"saturation":0.3983,"palette":["#54ac2c","#147c04","#549c2c","#e4f0f0","#4c8c2c","#9cbcbc"],"color_groups":[{"hex":"#54ac2c","weight":0.2889,"lightness":0.4235,"saturation":0.5926,"hue_group":"green"},{"hex":"#147c04","weight":0.2222,"lightness":0.251,"saturation":0.9375,"hue_group":"green"},{"hex":"#549c2c","weight":0.1778,"lightness":0.3922,"saturation":0.56,"hue_group":"green"},{"hex":"#e4f0f0","weight":0.1333,"lightness":0.9176,"saturation":0.2857,"hue_group":"cyan"},{"hex":"#4c8c2c","weight":0.1111,"lightness":0.3608,"saturation":0.5217,"hue_group":"green"},{"hex":"#9cbcbc","weight":0.0667,"lightness":0.6745,"saturation":0.1928,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/white_tulip.png","family":"white_tulip","relations":[{"type":"visual_neighbors","target":"minecraft:potted_white_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_pink_tulip","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_propagule","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_lily_of_the_valley","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:slime_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:test_block","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:kelp","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:waxed_weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:weathered_lightning_rod","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrots","label":"Shared hue group: green","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_white_tulip","label":"Palette proche: Potted White Tulip","confidence":0.94},{"type":"color_neighbors","target":"minecraft:sunflower","label":"Palette proche: Sunflower","confidence":0.85},{"type":"color_neighbors","target":"minecraft:orange_tulip","label":"Palette proche: Orange Tulip","confidence":0.774},{"type":"color_neighbors","target":"minecraft:potted_orange_tulip","label":"Palette proche: Potted Orange Tulip","confidence":0.774},{"type":"color_neighbors","target":"minecraft:beetroots","label":"Palette proche: Beetroots","confidence":0.772},{"type":"color_neighbors","target":"minecraft:oxeye_daisy","label":"Palette proche: Oxeye Daisy","confidence":0.771},{"type":"color_neighbors","target":"minecraft:potted_oxeye_daisy","label":"Palette proche: Potted Oxeye Daisy","confidence":0.771},{"type":"color_neighbors","target":"minecraft:potted_red_tulip","label":"Palette proche: Potted Red Tulip","confidence":0.765},{"type":"color_neighbors","target":"minecraft:red_tulip","label":"Palette proche: Red Tulip","confidence":0.765},{"type":"color_neighbors","target":"minecraft:pink_tulip","label":"Palette proche: Pink Tulip","confidence":0.761},{"type":"color_neighbors","target":"minecraft:potted_pink_tulip","label":"Palette proche: Potted Pink Tulip","confidence":0.761},{"type":"color_neighbors","target":"minecraft:seagrass","label":"Palette proche: Seagrass","confidence":0.749},{"type":"color_bridge","target":"minecraft:blue_orchid","label":"Pont de nuance par palette: Blue Orchid","confidence":0.717},{"type":"color_bridge","target":"minecraft:potted_blue_orchid","label":"Pont de nuance par palette: Potted Blue Orchid","confidence":0.717},{"type":"color_bridge","target":"minecraft:lilac","label":"Pont de nuance par sous-ton: Lilac","confidence":0.707},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Trapdoor","confidence":0.671},{"type":"color_bridge","target":"minecraft:weathered_copper_trapdoor","label":"Pont de nuance par sous-ton: Weathered Copper Trapdoor","confidence":0.671},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_door","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Door","confidence":0.648},{"type":"color_bridge","target":"minecraft:weathered_copper_door","label":"Pont de nuance par sous-ton: Weathered Copper Door","confidence":0.648},{"type":"color_bridge","target":"minecraft:waxed_weathered_copper_grate","label":"Pont de nuance par sous-ton: Waxed Weathered Copper Grate","confidence":0.644},{"type":"color_bridge","target":"minecraft:weathered_copper_grate","label":"Pont de nuance par sous-ton: Weathered Copper Grate","confidence":0.644},{"type":"color_bridge","target":"minecraft:waxed_weathered_lightning_rod","label":"Pont de nuance par sous-ton: Waxed Weathered Lightning Rod","confidence":0.641},{"type":"color_analogous","target":"minecraft:potted_white_tulip","label":"Couleurs analogues: Potted White Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:pink_tulip","label":"Couleurs analogues: Pink Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:potted_pink_tulip","label":"Couleurs analogues: Potted Pink Tulip","confidence":0.96},{"type":"color_analogous","target":"minecraft:beetroots","label":"Couleurs analogues: Beetroots","confidence":0.96},{"type":"color_analogous","target":"minecraft:sunflower","label":"Couleurs analogues: Sunflower","confidence":0.96},{"type":"color_analogous","target":"minecraft:slime_block","label":"Couleurs analogues: Slime Block","confidence":0.922},{"type":"color_analogous","target":"minecraft:potatoes","label":"Couleurs analogues: Potatoes","confidence":0.918},{"type":"color_analogous","target":"minecraft:test_block","label":"Couleurs analogues: Test Block","confidence":0.916},{"type":"color_complement","target":"minecraft:magenta_stained_glass","label":"Contraste complementaire: Magenta Stained Glass","confidence":0.922},{"type":"color_complement","target":"minecraft:magenta_stained_glass_pane","label":"Contraste complementaire: Magenta Stained Glass Pane","confidence":0.907},{"type":"color_complement","target":"minecraft:purple_concrete_powder","label":"Contraste complementaire: Purple Concrete Powder","confidence":0.723},{"type":"color_complement","target":"minecraft:purple_carpet","label":"Contraste complementaire: Purple Carpet","confidence":0.69},{"type":"color_complement","target":"minecraft:purple_wool","label":"Contraste complementaire: Purple Wool","confidence":0.69},{"type":"color_complement","target":"minecraft:purple_glazed_terracotta","label":"Contraste complementaire: Purple Glazed Terracotta","confidence":0.67},{"type":"color_complement","target":"minecraft:dragon_egg","label":"Contraste complementaire: Dragon Egg","confidence":0.62},{"type":"color_complement","target":"minecraft:purple_stained_glass_pane","label":"Contraste complementaire: Purple Stained Glass Pane","confidence":0.609},{"type":"color_triad","target":"minecraft:tube_coral","label":"Harmonie triadique: Tube Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:tube_coral_block","label":"Harmonie triadique: Tube Coral Block","confidence":0.96},{"type":"color_triad","target":"minecraft:tube_coral_fan","label":"Harmonie triadique: Tube Coral Fan","confidence":0.947},{"type":"color_triad","target":"minecraft:tube_coral_wall_fan","label":"Harmonie triadique: Tube Coral Wall Fan","confidence":0.947},{"type":"color_triad","target":"minecraft:black_concrete","label":"Harmonie triadique: Black Concrete","confidence":0.898},{"type":"color_triad","target":"minecraft:blue_stained_glass_pane","label":"Harmonie triadique: Blue Stained Glass Pane","confidence":0.896},{"type":"color_triad","target":"minecraft:cracked_nether_bricks","label":"Harmonie triadique: Cracked Nether Bricks","confidence":0.892},{"type":"color_triad","target":"minecraft:potted_crimson_roots","label":"Harmonie triadique: Potted Crimson Roots","confidence":0.886},{"type":"color_square","target":"minecraft:chiseled_copper","label":"Harmonie carree: Chiseled Copper","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_chiseled_copper","label":"Harmonie carree: Waxed Chiseled Copper","confidence":0.96},{"type":"color_square","target":"minecraft:copper_bars","label":"Harmonie carree: Copper Bars","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_bars","label":"Harmonie carree: Waxed Copper Bars","confidence":0.96},{"type":"color_square","target":"minecraft:copper_chain","label":"Harmonie carree: Copper Chain","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_chain","label":"Harmonie carree: Waxed Copper Chain","confidence":0.96},{"type":"color_square","target":"minecraft:copper_grate","label":"Harmonie carree: Copper Grate","confidence":0.96},{"type":"color_square","target":"minecraft:waxed_copper_grate","label":"Harmonie carree: Waxed Copper Grate","confidence":0.96},{"type":"value_contrast","target":"minecraft:verdant_froglight","label":"Contraste clair sombre: Verdant Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:calcite","label":"Contraste clair sombre: Calcite","confidence":0.55},{"type":"value_contrast","target":"minecraft:turtle_egg","label":"Contraste clair sombre: Turtle Egg","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_log","label":"Contraste clair sombre: Birch Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:birch_wood","label":"Contraste clair sombre: Birch Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_candle","label":"Contraste clair sombre: White Candle","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_concrete","label":"Contraste clair sombre: White Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:white_shulker_box","label":"Contraste clair sombre: White Shulker Box","confidence":0.55}],"category":"natural"},{"id":"minecraft:white_wall_banner","name":"White Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"white_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:white_wool","name":"White Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#eaeced","dominant_hex":"#fcfcfc","average_hex":"#eaeced","hue_group":"neutral","lightness":0.9235,"saturation":0.0769,"palette":["#fcfcfc","#f2f4f4","#d6dbdc","#e4e4e6","#eaecec","#dce3e4"],"color_groups":[{"hex":"#fcfcfc","weight":0.25,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#f2f4f4","weight":0.2031,"lightness":0.9529,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#d6dbdc","weight":0.168,"lightness":0.851,"saturation":0.0789,"hue_group":"neutral"},{"hex":"#e4e4e6","weight":0.1406,"lightness":0.898,"saturation":0.0385,"hue_group":"neutral"},{"hex":"#eaecec","weight":0.1328,"lightness":0.9216,"saturation":0.05,"hue_group":"neutral"},{"hex":"#dce3e4","weight":0.1055,"lightness":0.8784,"saturation":0.129,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/white_wool.png","family":"white_wool","relations":[{"type":"visual_neighbors","target":"minecraft:white_carpet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cobweb","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete_powder","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_shulker_box","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:calcite","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_log","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:birch_wood","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:redstone_wire","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_concrete","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_candle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_stained_glass_pane","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pale_oak_door","label":"Shared hue group: neutral","confidence":0.55},{"type":"color_neighbors","target":"minecraft:white_carpet","label":"Palette proche: White Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:white_concrete_powder","label":"Palette proche: White Concrete Powder","confidence":0.917},{"type":"color_neighbors","target":"minecraft:cobweb","label":"Palette proche: Cobweb","confidence":0.896},{"type":"color_neighbors","target":"minecraft:white_shulker_box","label":"Palette proche: White Shulker Box","confidence":0.891},{"type":"color_neighbors","target":"minecraft:white_concrete","label":"Palette proche: White Concrete","confidence":0.85},{"type":"color_neighbors","target":"minecraft:white_candle","label":"Palette proche: White Candle","confidence":0.841},{"type":"color_neighbors","target":"minecraft:polished_diorite","label":"Palette proche: Polished Diorite","confidence":0.73},{"type":"color_neighbors","target":"minecraft:polished_diorite_slab","label":"Palette proche: Polished Diorite Slab","confidence":0.73},{"type":"color_neighbors","target":"minecraft:polished_diorite_stairs","label":"Palette proche: Polished Diorite Stairs","confidence":0.73},{"type":"color_neighbors","target":"minecraft:white_stained_glass_pane","label":"Palette proche: White Stained Glass Pane","confidence":0.729},{"type":"color_neighbors","target":"minecraft:powder_snow","label":"Palette proche: Powder Snow","confidence":0.725},{"type":"color_neighbors","target":"minecraft:snow","label":"Palette proche: Snow","confidence":0.724},{"type":"color_bridge","target":"minecraft:white_carpet","label":"Pont de nuance par palette: White Carpet","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_concrete_powder","label":"Pont de nuance par palette: White Concrete Powder","confidence":0.86},{"type":"color_bridge","target":"minecraft:cobweb","label":"Pont de nuance par palette: Cobweb","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_shulker_box","label":"Pont de nuance par palette: White Shulker Box","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_concrete","label":"Pont de nuance par palette: White Concrete","confidence":0.86},{"type":"color_bridge","target":"minecraft:white_candle","label":"Pont de nuance par palette: White Candle","confidence":0.86},{"type":"color_bridge","target":"minecraft:polished_diorite","label":"Pont de nuance par palette: Polished Diorite","confidence":0.778},{"type":"color_bridge","target":"minecraft:polished_diorite_slab","label":"Pont de nuance par palette: Polished Diorite Slab","confidence":0.778},{"type":"color_bridge","target":"minecraft:polished_diorite_stairs","label":"Pont de nuance par palette: Polished Diorite Stairs","confidence":0.778},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.776},{"type":"value_contrast","target":"minecraft:black_concrete","label":"Contraste clair sombre: Black Concrete","confidence":0.823},{"type":"value_contrast","target":"minecraft:dragon_egg","label":"Contraste clair sombre: Dragon Egg","confidence":0.813},{"type":"value_contrast","target":"minecraft:end_gateway","label":"Contraste clair sombre: End Gateway","confidence":0.791},{"type":"value_contrast","target":"minecraft:end_portal","label":"Contraste clair sombre: End Portal","confidence":0.791},{"type":"value_contrast","target":"minecraft:ender_chest","label":"Contraste clair sombre: Ender Chest","confidence":0.791},{"type":"value_contrast","target":"minecraft:obsidian","label":"Contraste clair sombre: Obsidian","confidence":0.791},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.791},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.782}],"category":"decorative"},{"id":"minecraft:wild_armor_trim_smithing_template","name":"Wild Armor Trim Smithing Template","entry_type":"item","description":"Wild armor trim is a type of smithing template used in smithing tables to add a trim to armor. It is consumed when used, but can be duplicated using an existing template, mossy cobblestone, and diamonds.","history":[{"version":"1.19.4","status":"added","notes":"Added the wild armor trim smithing template behind the \"Update 1.20\" experimental data pack."}],"colors":{"primary":"#63766a","dominant_hex":"#789ea6","average_hex":"#63766a","hue_group":"neutral","lightness":0.4255,"saturation":0.0876,"palette":["#789ea6","#3f4a2f","#6c6c6c","#6e824d","#4e4e4e","#545c3c"],"color_groups":[{"hex":"#789ea6","weight":0.3588,"lightness":0.5608,"saturation":0.2054,"hue_group":"cyan"},{"hex":"#3f4a2f","weight":0.1647,"lightness":0.2373,"saturation":0.2231,"hue_group":"yellow"},{"hex":"#6c6c6c","weight":0.1529,"lightness":0.4235,"saturation":0.0,"hue_group":"neutral"},{"hex":"#6e824d","weight":0.1294,"lightness":0.4059,"saturation":0.256,"hue_group":"yellow"},{"hex":"#4e4e4e","weight":0.1176,"lightness":0.3059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#545c3c","weight":0.0765,"lightness":0.298,"saturation":0.2105,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wild_armor_trim_smithing_template.png","family":"wild_armor_trim_smithing_template","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stray_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coast_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_axe","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clay_ball","label":"Shared hue group: neutral","confidence":0.55}],"category":"item"},{"id":"minecraft:wildflowers","name":"Wildflowers","entry_type":"block","description":"Wildflowers are a thin decorative flower that can be placed four times in the space of one block, similar to pink petals and leaf litter.","history":[{"version":"1.21.5 25w02a","status":"added","notes":"Added wildflowers."}],"colors":{"primary":"#edd675","dominant_hex":"#fcd43c","average_hex":"#edd675","hue_group":"yellow","lightness":0.6941,"saturation":0.7692,"palette":["#fcd43c","#f4b624","#d4ecec","#b0d0d0","#fcec4c","#fcfcfc"],"color_groups":[{"hex":"#fcd43c","weight":0.2951,"lightness":0.6118,"saturation":0.9697,"hue_group":"yellow"},{"hex":"#f4b624","weight":0.2459,"lightness":0.549,"saturation":0.9043,"hue_group":"yellow"},{"hex":"#d4ecec","weight":0.1639,"lightness":0.8784,"saturation":0.3871,"hue_group":"cyan"},{"hex":"#b0d0d0","weight":0.0984,"lightness":0.7529,"saturation":0.254,"hue_group":"cyan"},{"hex":"#fcec4c","weight":0.0984,"lightness":0.6431,"saturation":0.967,"hue_group":"yellow"},{"hex":"#fcfcfc","weight":0.0984,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/wildflowers.png","family":"wildflowers","relations":[{"type":"visual_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ochre_froglight","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:oxeye_daisy","label":"Palette proche: Oxeye Daisy","confidence":0.809},{"type":"color_neighbors","target":"minecraft:potted_oxeye_daisy","label":"Palette proche: Potted Oxeye Daisy","confidence":0.809},{"type":"color_neighbors","target":"minecraft:white_glazed_terracotta","label":"Palette proche: White Glazed Terracotta","confidence":0.739},{"type":"color_neighbors","target":"minecraft:azure_bluet","label":"Palette proche: Azure Bluet","confidence":0.724},{"type":"color_neighbors","target":"minecraft:potted_azure_bluet","label":"Palette proche: Potted Azure Bluet","confidence":0.724},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.684},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.684},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.652},{"type":"color_neighbors","target":"minecraft:yellow_wool","label":"Palette proche: Yellow Wool","confidence":0.652},{"type":"color_neighbors","target":"minecraft:yellow_candle","label":"Palette proche: Yellow Candle","confidence":0.647},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.639},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.608},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.785},{"type":"color_bridge","target":"minecraft:azure_bluet","label":"Pont de nuance par palette: Azure Bluet","confidence":0.773},{"type":"color_bridge","target":"minecraft:potted_azure_bluet","label":"Pont de nuance par palette: Potted Azure Bluet","confidence":0.773},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par sous-ton: Light","confidence":0.665},{"type":"color_bridge","target":"minecraft:jungle_leaves","label":"Pont de nuance par palette: Jungle Leaves","confidence":0.637},{"type":"color_bridge","target":"minecraft:potted_red_mushroom","label":"Pont de nuance par palette: Potted Red Mushroom","confidence":0.603},{"type":"color_bridge","target":"minecraft:red_mushroom","label":"Pont de nuance par palette: Red Mushroom","confidence":0.603},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.6},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.594},{"type":"color_bridge","target":"minecraft:diorite","label":"Pont de nuance par palette: Diorite","confidence":0.589},{"type":"color_analogous","target":"minecraft:yellow_concrete_powder","label":"Couleurs analogues: Yellow Concrete Powder","confidence":0.96},{"type":"color_analogous","target":"minecraft:ochre_froglight","label":"Couleurs analogues: Ochre Froglight","confidence":0.96},{"type":"color_analogous","target":"minecraft:gold_block","label":"Couleurs analogues: Gold Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_weighted_pressure_plate","label":"Couleurs analogues: Light Weighted Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:chiseled_sandstone","label":"Couleurs analogues: Chiseled Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone","label":"Couleurs analogues: Sandstone","confidence":0.96},{"type":"color_analogous","target":"minecraft:sandstone_wall","label":"Couleurs analogues: Sandstone Wall","confidence":0.96},{"type":"color_analogous","target":"minecraft:cut_sandstone","label":"Couleurs analogues: Cut Sandstone","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.953},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.952},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.897},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.888},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.851},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.851},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.96},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.955},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.913},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.875},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.834},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.833},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.934},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.887},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.731},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.723},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.723},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.719},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.707},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.661},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.569},{"type":"value_contrast","target":"minecraft:carved_pumpkin","label":"Contraste clair sombre: Carved Pumpkin","confidence":0.55},{"type":"value_contrast","target":"minecraft:acacia_sapling","label":"Contraste clair sombre: Acacia Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_acacia_sapling","label":"Contraste clair sombre: Potted Acacia Sapling","confidence":0.55},{"type":"value_contrast","target":"minecraft:rose_bush","label":"Contraste clair sombre: Rose Bush","confidence":0.55},{"type":"value_contrast","target":"minecraft:bamboo","label":"Contraste clair sombre: Bamboo","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_log","label":"Contraste clair sombre: Jungle Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_wood","label":"Contraste clair sombre: Jungle Wood","confidence":0.55}],"category":"natural"},{"id":"minecraft:wind_charge","name":"Wind Charge","entry_type":"item","description":"A wind charge is a throwable item that bursts into wind on impact, which can knock entities into the air and interact with doors, buttons, levers, and similar blocks. A breeze rod can be crafted into 4 wind charges, and the breeze rods are obtained from breezes, which shoot out wind charges that deal half a heart of damage.","history":[{"version":"1.20.3","status":"added","notes":"Added wind charges."},{"version":"wiki-history","status":"added","notes":"Added the breeze_wind_charge entity, which is now shot by the breeze ."}],"colors":{"primary":"#bfc6da","dominant_hex":"#dadffc","average_hex":"#bfc6da","hue_group":"blue","lightness":0.802,"saturation":0.2673,"palette":["#dadffc","#8d9db5","#c4ccd4","#b4bcc4","#d4dce4","#acb4bc"],"color_groups":[{"hex":"#dadffc","weight":0.3412,"lightness":0.9216,"saturation":0.85,"hue_group":"blue"},{"hex":"#8d9db5","weight":0.1882,"lightness":0.6314,"saturation":0.2128,"hue_group":"blue"},{"hex":"#c4ccd4","weight":0.1294,"lightness":0.8,"saturation":0.1569,"hue_group":"blue"},{"hex":"#b4bcc4","weight":0.1176,"lightness":0.7373,"saturation":0.1194,"hue_group":"neutral"},{"hex":"#d4dce4","weight":0.1176,"lightness":0.8627,"saturation":0.2286,"hue_group":"blue"},{"hex":"#acb4bc","weight":0.1059,"lightness":0.7059,"saturation":0.1067,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wind_charge.png","family":"wind_charge","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:lingering_potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glass_bottle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potion","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_rod","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flow_armor_trim_smithing_template","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin_spawn_egg","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bone_meal","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:amethyst_shard","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_dye","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bundle","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid_spawn_egg","label":"Shared hue group: blue","confidence":0.55}],"category":"item"},{"id":"minecraft:witch","name":"Witch","entry_type":"mob","description":"Witches are hostile mobs that use potions in combat, using various splash potions for offense and drinkable potions for defense.","history":[{"version":"1.4.2 12w38a","status":"added","notes":"Added witches, hostile monster mobs based on the witch found in the Baba Yaga folk tale from Eastern Europe. [ 1 ] The witch from Slavic folklore also lives in a swamp hut with foundations that resemble \"chicken legs\". W"},{"version":"1.7.2 13w37a","status":"added","notes":"added in this same version."},{"version":"1.9 15w47b","status":"added","notes":"Added sounds for witches idling, taking damage , dying , drinking and throwing potions."}],"colors":{"primary":"#43373e","dominant_hex":"#26251d","average_hex":"#43373e","hue_group":"neutral","lightness":0.2392,"saturation":0.0984,"palette":["#26251d","#140b1d","#a49685","#52422d","#301448","#34145c"],"color_groups":[{"hex":"#26251d","weight":0.2315,"lightness":0.1314,"saturation":0.1343,"hue_group":"yellow"},{"hex":"#140b1d","weight":0.1915,"lightness":0.0784,"saturation":0.45,"hue_group":"purple"},{"hex":"#a49685","weight":0.1858,"lightness":0.5824,"saturation":0.1455,"hue_group":"yellow"},{"hex":"#52422d","weight":0.1767,"lightness":0.249,"saturation":0.2913,"hue_group":"yellow"},{"hex":"#301448","weight":0.1394,"lightness":0.1804,"saturation":0.5652,"hue_group":"purple"},{"hex":"#34145c","weight":0.075,"lightness":0.2196,"saturation":0.6429,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/witch.png","family":"witch","relations":[{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker_fangs","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:witch_spawn_egg","name":"Witch Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#534440","dominant_hex":"#694934","average_hex":"#534440","hue_group":"red","lightness":0.2882,"saturation":0.1293,"palette":["#694934","#241337","#797963","#aea494","#0e140a","#040404"],"color_groups":[{"hex":"#694934","weight":0.3028,"lightness":0.3078,"saturation":0.3376,"hue_group":"red"},{"hex":"#241337","weight":0.2535,"lightness":0.1451,"saturation":0.4865,"hue_group":"blue"},{"hex":"#797963","weight":0.1408,"lightness":0.4314,"saturation":0.1,"hue_group":"neutral"},{"hex":"#aea494","weight":0.1338,"lightness":0.6314,"saturation":0.1383,"hue_group":"yellow"},{"hex":"#0e140a","weight":0.0986,"lightness":0.0588,"saturation":0.3333,"hue_group":"green"},{"hex":"#040404","weight":0.0704,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/witch_spawn_egg.png","family":"witch_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:raiser_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shaper_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:host_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_lava_chicken","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_shovel","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_hoe","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_chirp","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_sword","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:wither","name":"Wither","entry_type":"mob","description":"The wither is an undead boss mob spawned by building a specific structure using soul sand or soul soil and three wither skeleton skulls. It is able to fly, fires explosive blue and black skulls at players and most non-undead mobs, and becomes immune to projectiles below half health. It is the only source of Nether stars, which are needed to craft beacons.","history":[{"version":"1.4.2 12w34a","status":"added","notes":"Added withers."},{"version":"12w38a","status":"added","notes":"Added a sound when withers break blocks ."},{"version":"1.4","status":"added","notes":"added for withers."}],"colors":{"primary":"#252626","dominant_hex":"#141414","average_hex":"#252626","hue_group":"neutral","lightness":0.1471,"saturation":0.0133,"palette":["#141414","#1c1c1c","#3b3c3c","#2c2c2c","#899a9a","#242424"],"color_groups":[{"hex":"#141414","weight":0.4444,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#1c1c1c","weight":0.1935,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3b3c3c","weight":0.1564,"lightness":0.2333,"saturation":0.0084,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.1188,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#899a9a","weight":0.0466,"lightness":0.5706,"saturation":0.0776,"hue_group":"neutral"},{"hex":"#242424","weight":0.0402,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wither/wither.png","family":"wither","relations":[{"type":"visual_neighbors","target":"minecraft:dragon","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enderman","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/black","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wither_invulnerable","name":"Wither Invulnerable","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#46668d","dominant_hex":"#2b4363","average_hex":"#46668d","hue_group":"blue","lightness":0.4137,"saturation":0.3365,"palette":["#2b4363","#4c71a1","#5b83b9","#44648c","#a5c5eb","#345474"],"color_groups":[{"hex":"#2b4363","weight":0.3742,"lightness":0.2784,"saturation":0.3944,"hue_group":"blue"},{"hex":"#4c71a1","weight":0.1801,"lightness":0.4647,"saturation":0.3586,"hue_group":"blue"},{"hex":"#5b83b9","weight":0.1686,"lightness":0.5412,"saturation":0.4017,"hue_group":"blue"},{"hex":"#44648c","weight":0.1258,"lightness":0.4078,"saturation":0.3462,"hue_group":"blue"},{"hex":"#a5c5eb","weight":0.0766,"lightness":0.7843,"saturation":0.6364,"hue_group":"blue"},{"hex":"#345474","weight":0.0747,"lightness":0.3294,"saturation":0.381,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wither/wither_invulnerable.png","family":"wither_invulnerable","relations":[{"type":"visual_neighbors","target":"minecraft:shulker_blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:vex","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dolphin","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/all_black","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parrot/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/cyan","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/blue","label":"Shared hue group: blue","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:breeze_wind","label":"Shared hue group: blue","confidence":0.55}],"category":"mob"},{"id":"minecraft:wither_rose","name":"Wither Rose","entry_type":"block","description":"A wither rose is a damaging flower that drops when a mob is killed by a wither.","history":[{"version":"1.14 18w43a","status":"added","notes":"Added wither roses."}],"colors":{"primary":"#292d17","dominant_hex":"#293114","average_hex":"#292d17","hue_group":"yellow","lightness":0.1333,"saturation":0.3235,"palette":["#293114","#3c441c","#191414","#281c18","#122a0c","#44342c"],"color_groups":[{"hex":"#293114","weight":0.2432,"lightness":0.1353,"saturation":0.4203,"hue_group":"yellow"},{"hex":"#3c441c","weight":0.2162,"lightness":0.1882,"saturation":0.4167,"hue_group":"yellow"},{"hex":"#191414","weight":0.1622,"lightness":0.0882,"saturation":0.1111,"hue_group":"neutral"},{"hex":"#281c18","weight":0.1622,"lightness":0.1255,"saturation":0.25,"hue_group":"red"},{"hex":"#122a0c","weight":0.1081,"lightness":0.1059,"saturation":0.5556,"hue_group":"green"},{"hex":"#44342c","weight":0.1081,"lightness":0.2196,"saturation":0.2143,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/wither_rose.png","family":"wither_rose","relations":[{"type":"visual_neighbors","target":"minecraft:potted_wither_rose","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_shelf","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wall_hanging_sign","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stripped_dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_roots","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_log","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mangrove_wood","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:potted_wither_rose","label":"Palette proche: Potted Wither Rose","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_terracotta","label":"Palette proche: Gray Terracotta","confidence":0.817},{"type":"color_neighbors","target":"minecraft:soul_soil","label":"Palette proche: Soul Soil","confidence":0.801},{"type":"color_neighbors","target":"minecraft:dried_kelp_block","label":"Palette proche: Dried Kelp Block","confidence":0.793},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.784},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.784},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.784},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.784},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.784},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.784},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.784},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.784},{"type":"color_bridge","target":"minecraft:gray_terracotta","label":"Pont de nuance par palette: Gray Terracotta","confidence":0.849},{"type":"color_bridge","target":"minecraft:soul_soil","label":"Pont de nuance par palette: Soul Soil","confidence":0.836},{"type":"color_bridge","target":"minecraft:creeper_head","label":"Pont de nuance par palette: Creeper Head","confidence":0.822},{"type":"color_bridge","target":"minecraft:creeper_wall_head","label":"Pont de nuance par palette: Creeper Wall Head","confidence":0.822},{"type":"color_bridge","target":"minecraft:dragon_head","label":"Pont de nuance par palette: Dragon Head","confidence":0.822},{"type":"color_bridge","target":"minecraft:dragon_wall_head","label":"Pont de nuance par palette: Dragon Wall Head","confidence":0.822},{"type":"color_bridge","target":"minecraft:piglin_head","label":"Pont de nuance par palette: Piglin Head","confidence":0.822},{"type":"color_bridge","target":"minecraft:piglin_wall_head","label":"Pont de nuance par palette: Piglin Wall Head","confidence":0.822},{"type":"color_bridge","target":"minecraft:player_head","label":"Pont de nuance par palette: Player Head","confidence":0.822},{"type":"color_bridge","target":"minecraft:player_wall_head","label":"Pont de nuance par palette: Player Wall Head","confidence":0.822},{"type":"color_analogous","target":"minecraft:potted_wither_rose","label":"Couleurs analogues: Potted Wither Rose","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_terracotta","label":"Couleurs analogues: Green Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:flowering_azalea","label":"Couleurs analogues: Flowering Azalea","confidence":0.941},{"type":"color_analogous","target":"minecraft:dandelion","label":"Couleurs analogues: Dandelion","confidence":0.937},{"type":"color_analogous","target":"minecraft:potted_dandelion","label":"Couleurs analogues: Potted Dandelion","confidence":0.937},{"type":"color_analogous","target":"minecraft:bamboo_block","label":"Couleurs analogues: Bamboo Block","confidence":0.926},{"type":"color_analogous","target":"minecraft:cave_vines_plant","label":"Couleurs analogues: Cave Vines Plant","confidence":0.923},{"type":"color_analogous","target":"minecraft:lime_terracotta","label":"Couleurs analogues: Lime Terracotta","confidence":0.915},{"type":"color_complement","target":"minecraft:repeating_command_block","label":"Contraste complementaire: Repeating Command Block","confidence":0.807},{"type":"color_complement","target":"minecraft:end_gateway","label":"Contraste complementaire: End Gateway","confidence":0.786},{"type":"color_complement","target":"minecraft:end_portal","label":"Contraste complementaire: End Portal","confidence":0.786},{"type":"color_complement","target":"minecraft:ender_chest","label":"Contraste complementaire: Ender Chest","confidence":0.786},{"type":"color_complement","target":"minecraft:obsidian","label":"Contraste complementaire: Obsidian","confidence":0.786},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.721},{"type":"color_complement","target":"minecraft:small_amethyst_bud","label":"Contraste complementaire: Small Amethyst Bud","confidence":0.644},{"type":"color_complement","target":"minecraft:amethyst_block","label":"Contraste complementaire: Amethyst Block","confidence":0.58},{"type":"color_triad","target":"minecraft:sculk_vein","label":"Harmonie triadique: Sculk Vein","confidence":0.923},{"type":"color_triad","target":"minecraft:glass_pane","label":"Harmonie triadique: Glass Pane","confidence":0.919},{"type":"color_triad","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie triadique: Magenta Glazed Terracotta","confidence":0.905},{"type":"color_triad","target":"minecraft:cyan_concrete","label":"Harmonie triadique: Cyan Concrete","confidence":0.889},{"type":"color_triad","target":"minecraft:light_blue_concrete_powder","label":"Harmonie triadique: Light Blue Concrete Powder","confidence":0.864},{"type":"color_triad","target":"minecraft:glass","label":"Harmonie triadique: Glass","confidence":0.845},{"type":"color_triad","target":"minecraft:cyan_shulker_box","label":"Harmonie triadique: Cyan Shulker Box","confidence":0.828},{"type":"color_triad","target":"minecraft:sculk_catalyst","label":"Harmonie triadique: Sculk Catalyst","confidence":0.809},{"type":"color_square","target":"minecraft:pink_carpet","label":"Harmonie carree: Pink Carpet","confidence":0.96},{"type":"color_square","target":"minecraft:pink_wool","label":"Harmonie carree: Pink Wool","confidence":0.96},{"type":"color_square","target":"minecraft:purple_terracotta","label":"Harmonie carree: Purple Terracotta","confidence":0.957},{"type":"color_square","target":"minecraft:oxidized_copper_chain","label":"Harmonie carree: Oxidized Copper Chain","confidence":0.946},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie carree: Waxed Oxidized Copper Chain","confidence":0.946},{"type":"color_square","target":"minecraft:magenta_terracotta","label":"Harmonie carree: Magenta Terracotta","confidence":0.944},{"type":"color_square","target":"minecraft:pink_shulker_box","label":"Harmonie carree: Pink Shulker Box","confidence":0.933},{"type":"color_square","target":"minecraft:oxidized_copper_door","label":"Harmonie carree: Oxidized Copper Door","confidence":0.93},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.802},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.769},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.746},{"type":"value_contrast","target":"minecraft:white_carpet","label":"Contraste clair sombre: White Carpet","confidence":0.723},{"type":"value_contrast","target":"minecraft:white_wool","label":"Contraste clair sombre: White Wool","confidence":0.723},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.713},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.713},{"type":"value_contrast","target":"minecraft:smooth_quartz_slab","label":"Contraste clair sombre: Smooth Quartz Slab","confidence":0.713}],"category":""},{"id":"minecraft:wither_skeleton","name":"Wither Skeleton","entry_type":"mob","description":"A wither skeleton is a tall, black variant of a skeleton equipped with a stone sword. They inflict the Wither effect when attacking the player. They are found exclusively in Nether fortresses and are the only source of wither skeleton skulls, as well as the only renewable source of coal.","history":[{"version":"1.4.2 12w36a","status":"added","notes":"Added wither skeletons."},{"version":"1.10 16w20a","status":"added","notes":"Added separate spawn eggs for wither skeletons."},{"version":"1.16 20w07a","status":"added","notes":"Added piglins, which attack wither skeletons."}],"colors":{"primary":"#262626","dominant_hex":"#1c1c1c","average_hex":"#262626","hue_group":"neutral","lightness":0.149,"saturation":0.0,"palette":["#1c1c1c","#2c2c2c","#343434","#121212","#505050","#3c4444"],"color_groups":[{"hex":"#1c1c1c","weight":0.3607,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.2022,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#343434","weight":0.1844,"lightness":0.2039,"saturation":0.0,"hue_group":"neutral"},{"hex":"#121212","weight":0.1585,"lightness":0.0706,"saturation":0.0,"hue_group":"neutral"},{"hex":"#505050","weight":0.0533,"lightness":0.3137,"saturation":0.0,"hue_group":"neutral"},{"hex":"#3c4444","weight":0.041,"lightness":0.251,"saturation":0.0625,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/skeleton/wither_skeleton.png","family":"wither_skeleton","relations":[{"type":"visual_neighbors","target":"minecraft:dragon","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enderman","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/markings_blackdots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wither_skeleton_skull","name":"Wither Skeleton Skull","entry_type":"block","description":"A wither skeleton skull is the head of a wither skeleton in the form of a block, which is a rare drop from killed wither skeletons. Three of them can be used to summon a wither, a destructive boss mob that is the only source of Nether stars.","history":[{"version":"1.4.2 12w36a","status":"added","notes":"Added wither skeleton skulls. They are rarely dropped by the wither skeleton upon death (2.5% chance)."}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"wither_skeleton_skull","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_wall_skull","label":"Palette proche: Wither Skeleton Wall Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":"decorative"},{"id":"minecraft:wither_skeleton_spawn_egg","name":"Wither Skeleton Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#232323","dominant_hex":"#3a3c3c","average_hex":"#232323","hue_group":"neutral","lightness":0.1373,"saturation":0.0,"palette":["#3a3c3c","#1c1c1c","#0c0c0c","#2c2c2c","#040404","#141414"],"color_groups":[{"hex":"#3a3c3c","weight":0.3425,"lightness":0.2314,"saturation":0.0169,"hue_group":"neutral"},{"hex":"#1c1c1c","weight":0.1781,"lightness":0.1098,"saturation":0.0,"hue_group":"neutral"},{"hex":"#0c0c0c","weight":0.1301,"lightness":0.0471,"saturation":0.0,"hue_group":"neutral"},{"hex":"#2c2c2c","weight":0.1233,"lightness":0.1725,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.1164,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141414","weight":0.1096,"lightness":0.0784,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wither_skeleton_spawn_egg.png","family":"wither_skeleton_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:wither_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coal","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_stal","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_11","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flint","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_dragon_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flint_and_steel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bat_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_strad","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:wither_skeleton_wall_skull","name":"Wither Skeleton Wall Skull","entry_type":"block","description":"A wither skeleton skull is the head of a wither skeleton in the form of a block, which is a rare drop from killed wither skeletons. Three of them can be used to summon a wither, a destructive boss mob that is the only source of Nether stars.","history":[{"version":"1.4.2 12w36a","status":"added","notes":"Added wither skeleton skulls. They are rarely dropped by the wither skeleton upon death (2.5% chance)."}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"wither_skeleton_wall_skull","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":"decorative"},{"id":"minecraft:wither_spawn_egg","name":"Wither Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#2d2d2d","dominant_hex":"#333333","average_hex":"#2d2d2d","hue_group":"neutral","lightness":0.1765,"saturation":0.0,"palette":["#333333","#454949","#1b1b1b","#0c0c0c","#040404","#939393"],"color_groups":[{"hex":"#333333","weight":0.2874,"lightness":0.2,"saturation":0.0,"hue_group":"neutral"},{"hex":"#454949","weight":0.2471,"lightness":0.2784,"saturation":0.0282,"hue_group":"neutral"},{"hex":"#1b1b1b","weight":0.2011,"lightness":0.1059,"saturation":0.0,"hue_group":"neutral"},{"hex":"#0c0c0c","weight":0.1207,"lightness":0.0471,"saturation":0.0,"hue_group":"neutral"},{"hex":"#040404","weight":0.1092,"lightness":0.0157,"saturation":0.0,"hue_group":"neutral"},{"hex":"#939393","weight":0.0345,"lightness":0.5765,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wither_spawn_egg.png","family":"wither_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:music_disc_stal","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_11","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flint","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_boots","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_helmet","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_leggings","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:flint_and_steel","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coal","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_strad","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:netherite_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rib_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:wolf","name":"Wolf","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#c4bfbd","dominant_hex":"#d4cccc","average_hex":"#c4bfbd","hue_group":"neutral","lightness":0.7549,"saturation":0.056,"palette":["#d4cccc","#c5bcbb","#ccc4cc","#dddcdc","#aa9c91","#353431"],"color_groups":[{"hex":"#d4cccc","weight":0.238,"lightness":0.8157,"saturation":0.0851,"hue_group":"neutral"},{"hex":"#c5bcbb","weight":0.2115,"lightness":0.7529,"saturation":0.0794,"hue_group":"neutral"},{"hex":"#ccc4cc","weight":0.1923,"lightness":0.7843,"saturation":0.0727,"hue_group":"neutral"},{"hex":"#dddcdc","weight":0.1711,"lightness":0.8647,"saturation":0.0145,"hue_group":"neutral"},{"hex":"#aa9c91","weight":0.1562,"lightness":0.6176,"saturation":0.1282,"hue_group":"red"},{"hex":"#353431","weight":0.0308,"lightness":0.2,"saturation":0.0392,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/ragdoll","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_tame","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/angry","name":"Wolf / Angry","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#c3bdbc","dominant_hex":"#d3cccc","average_hex":"#c3bdbc","hue_group":"neutral","lightness":0.751,"saturation":0.0551,"palette":["#d3cccc","#c5bbba","#ccc4cc","#dcdcdc","#ab9c91","#44302e"],"color_groups":[{"hex":"#d3cccc","weight":0.238,"lightness":0.8137,"saturation":0.0737,"hue_group":"neutral"},{"hex":"#c5bbba","weight":0.2104,"lightness":0.751,"saturation":0.0866,"hue_group":"neutral"},{"hex":"#ccc4cc","weight":0.1892,"lightness":0.7843,"saturation":0.0727,"hue_group":"neutral"},{"hex":"#dcdcdc","weight":0.1658,"lightness":0.8627,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ab9c91","weight":0.1573,"lightness":0.6196,"saturation":0.134,"hue_group":"red"},{"hex":"#44302e","weight":0.0393,"lightness":0.2235,"saturation":0.193,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_angry.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/ragdoll","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/ashen","name":"Wolf / Ashen","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#afaeb4","dominant_hex":"#99929b","average_hex":"#afaeb4","hue_group":"neutral","lightness":0.6941,"saturation":0.0385,"palette":["#99929b","#84808c","#cbd3db","#f6f6f0","#e4ece4","#5e5c69"],"color_groups":[{"hex":"#99929b","weight":0.2667,"lightness":0.5902,"saturation":0.0431,"hue_group":"neutral"},{"hex":"#84808c","weight":0.2253,"lightness":0.5255,"saturation":0.0496,"hue_group":"neutral"},{"hex":"#cbd3db","weight":0.1977,"lightness":0.8275,"saturation":0.1818,"hue_group":"blue"},{"hex":"#f6f6f0","weight":0.135,"lightness":0.9529,"saturation":0.25,"hue_group":"yellow"},{"hex":"#e4ece4","weight":0.1052,"lightness":0.9098,"saturation":0.1739,"hue_group":"green"},{"hex":"#5e5c69","weight":0.0701,"lightness":0.3863,"saturation":0.066,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_ashen.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white_splotched","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/ashen_angry","name":"Wolf / Ashen Angry","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#aeadb3","dominant_hex":"#908890","average_hex":"#aeadb3","hue_group":"neutral","lightness":0.6902,"saturation":0.038,"palette":["#908890","#eef1ea","#cbd3db","#767585","#9e98a2","#4a2929"],"color_groups":[{"hex":"#908890","weight":0.2402,"lightness":0.549,"saturation":0.0348,"hue_group":"neutral"},{"hex":"#eef1ea","weight":0.238,"lightness":0.9314,"saturation":0.2,"hue_group":"yellow"},{"hex":"#cbd3db","weight":0.1977,"lightness":0.8275,"saturation":0.1818,"hue_group":"blue"},{"hex":"#767585","weight":0.1679,"lightness":0.4902,"saturation":0.064,"hue_group":"neutral"},{"hex":"#9e98a2","weight":0.1339,"lightness":0.6157,"saturation":0.051,"hue_group":"neutral"},{"hex":"#4a2929","weight":0.0223,"lightness":0.2255,"saturation":0.287,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_ashen_angry.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white_splotched","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/ashen_tame","name":"Wolf / Ashen Tame","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#afaeb4","dominant_hex":"#99929b","average_hex":"#afaeb4","hue_group":"neutral","lightness":0.6941,"saturation":0.0385,"palette":["#99929b","#84808c","#cbd3db","#f6f6f0","#e4ece4","#5e5c69"],"color_groups":[{"hex":"#99929b","weight":0.2646,"lightness":0.5902,"saturation":0.0431,"hue_group":"neutral"},{"hex":"#84808c","weight":0.2253,"lightness":0.5255,"saturation":0.0496,"hue_group":"neutral"},{"hex":"#cbd3db","weight":0.1977,"lightness":0.8275,"saturation":0.1818,"hue_group":"blue"},{"hex":"#f6f6f0","weight":0.1371,"lightness":0.9529,"saturation":0.25,"hue_group":"yellow"},{"hex":"#e4ece4","weight":0.1052,"lightness":0.9098,"saturation":0.1739,"hue_group":"green"},{"hex":"#5e5c69","weight":0.0701,"lightness":0.3863,"saturation":0.066,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_ashen_tame.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white_splotched","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_b","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/jellie","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/black","name":"Wolf / Black","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#323036","dominant_hex":"#3c343c","average_hex":"#323036","hue_group":"neutral","lightness":0.2,"saturation":0.0588,"palette":["#3c343c","#2c2c34","#342c3c","#474747","#242424","#171117"],"color_groups":[{"hex":"#3c343c","weight":0.254,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#2c2c34","weight":0.2519,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#342c3c","weight":0.2062,"lightness":0.2039,"saturation":0.1538,"hue_group":"purple"},{"hex":"#474747","weight":0.1541,"lightness":0.2784,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.0776,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#171117","weight":0.0563,"lightness":0.0784,"saturation":0.15,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_black.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/black_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/black_angry","name":"Wolf / Black Angry","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#322f35","dominant_hex":"#3d343c","average_hex":"#322f35","hue_group":"neutral","lightness":0.1961,"saturation":0.06,"palette":["#3d343c","#2c2c34","#342c3c","#464444","#242424","#181118"],"color_groups":[{"hex":"#3d343c","weight":0.2529,"lightness":0.2216,"saturation":0.0796,"hue_group":"neutral"},{"hex":"#2c2c34","weight":0.2465,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#342c3c","weight":0.2083,"lightness":0.2039,"saturation":0.1538,"hue_group":"purple"},{"hex":"#464444","weight":0.1541,"lightness":0.2706,"saturation":0.0145,"hue_group":"neutral"},{"hex":"#242424","weight":0.0776,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#181118","weight":0.0606,"lightness":0.0804,"saturation":0.1707,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_black_angry.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/black_tame","name":"Wolf / Black Tame","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#323036","dominant_hex":"#3c343c","average_hex":"#323036","hue_group":"neutral","lightness":0.2,"saturation":0.0588,"palette":["#3c343c","#2c2c34","#342c3c","#494949","#242424","#171117"],"color_groups":[{"hex":"#3c343c","weight":0.254,"lightness":0.2196,"saturation":0.0714,"hue_group":"neutral"},{"hex":"#2c2c34","weight":0.2497,"lightness":0.1882,"saturation":0.0833,"hue_group":"neutral"},{"hex":"#342c3c","weight":0.2062,"lightness":0.2039,"saturation":0.1538,"hue_group":"purple"},{"hex":"#494949","weight":0.1562,"lightness":0.2863,"saturation":0.0,"hue_group":"neutral"},{"hex":"#242424","weight":0.0776,"lightness":0.1412,"saturation":0.0,"hue_group":"neutral"},{"hex":"#171117","weight":0.0563,"lightness":0.0784,"saturation":0.15,"hue_group":"purple"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_black_tame.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/black_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:witch","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_gray","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/black","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pillager","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wandering_trader","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:evoker","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/chestnut","name":"Wolf / Chestnut","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#a88e82","dominant_hex":"#8e776f","average_hex":"#a88e82","hue_group":"red","lightness":0.5843,"saturation":0.1792,"palette":["#8e776f","#e9c9b1","#47383c","#c4a494","#d4b49c","#ac9484"],"color_groups":[{"hex":"#8e776f","weight":0.2465,"lightness":0.4961,"saturation":0.1225,"hue_group":"red"},{"hex":"#e9c9b1","weight":0.22,"lightness":0.8039,"saturation":0.56,"hue_group":"red"},{"hex":"#47383c","weight":0.1658,"lightness":0.249,"saturation":0.1181,"hue_group":"neutral"},{"hex":"#c4a494","weight":0.1488,"lightness":0.6745,"saturation":0.2892,"hue_group":"red"},{"hex":"#d4b49c","weight":0.1328,"lightness":0.7216,"saturation":0.3944,"hue_group":"red"},{"hex":"#ac9484","weight":0.0861,"lightness":0.5961,"saturation":0.1942,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_chestnut.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_angry","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/chestnut_angry","name":"Wolf / Chestnut Angry","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#a88d81","dominant_hex":"#8f766e","average_hex":"#a88d81","hue_group":"red","lightness":0.5824,"saturation":0.1831,"palette":["#8f766e","#e9c8b1","#48383b","#c4a494","#d4b49c","#ac9484"],"color_groups":[{"hex":"#8f766e","weight":0.2465,"lightness":0.4961,"saturation":0.1304,"hue_group":"red"},{"hex":"#e9c8b1","weight":0.2179,"lightness":0.8039,"saturation":0.56,"hue_group":"red"},{"hex":"#48383b","weight":0.1722,"lightness":0.251,"saturation":0.125,"hue_group":"red"},{"hex":"#c4a494","weight":0.1456,"lightness":0.6745,"saturation":0.2892,"hue_group":"red"},{"hex":"#d4b49c","weight":0.1318,"lightness":0.7216,"saturation":0.3944,"hue_group":"red"},{"hex":"#ac9484","weight":0.0861,"lightness":0.5961,"saturation":0.1942,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_chestnut_angry.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_angry","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/chestnut_tame","name":"Wolf / Chestnut Tame","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#a88e83","dominant_hex":"#e9c9b2","average_hex":"#a88e83","hue_group":"red","lightness":0.5863,"saturation":0.1754,"palette":["#e9c9b2","#856e67","#a48c80","#443539","#c4a494","#d4b49c"],"color_groups":[{"hex":"#e9c9b2","weight":0.2221,"lightness":0.8059,"saturation":0.5556,"hue_group":"red"},{"hex":"#856e67","weight":0.1838,"lightness":0.4627,"saturation":0.1271,"hue_group":"red"},{"hex":"#a48c80","weight":0.1626,"lightness":0.5725,"saturation":0.1651,"hue_group":"red"},{"hex":"#443539","weight":0.1498,"lightness":0.2373,"saturation":0.124,"hue_group":"red"},{"hex":"#c4a494","weight":0.1488,"lightness":0.6745,"saturation":0.2892,"hue_group":"red"},{"hex":"#d4b49c","weight":0.1328,"lightness":0.7216,"saturation":0.3944,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_chestnut_tame.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_angry","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/rusty","name":"Wolf / Rusty","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#97664e","dominant_hex":"#664132","average_hex":"#97664e","hue_group":"red","lightness":0.449,"saturation":0.3188,"palette":["#664132","#c17b47","#885338","#e3d2c1","#7c4c3c","#ac644c"],"color_groups":[{"hex":"#664132","weight":0.2869,"lightness":0.298,"saturation":0.3421,"hue_group":"red"},{"hex":"#c17b47","weight":0.1966,"lightness":0.5176,"saturation":0.4959,"hue_group":"red"},{"hex":"#885338","weight":0.1382,"lightness":0.3765,"saturation":0.4167,"hue_group":"red"},{"hex":"#e3d2c1","weight":0.1307,"lightness":0.8235,"saturation":0.3778,"hue_group":"yellow"},{"hex":"#7c4c3c","weight":0.1275,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#ac644c","weight":0.1201,"lightness":0.4863,"saturation":0.3871,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_rusty.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/rusty_angry","name":"Wolf / Rusty Angry","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#97654d","dominant_hex":"#654032","average_hex":"#97654d","hue_group":"red","lightness":0.4471,"saturation":0.3246,"palette":["#654032","#c17b47","#895238","#e2d0bf","#7c4c3c","#ad634b"],"color_groups":[{"hex":"#654032","weight":0.2891,"lightness":0.2961,"saturation":0.3377,"hue_group":"red"},{"hex":"#c17b47","weight":0.1966,"lightness":0.5176,"saturation":0.4959,"hue_group":"red"},{"hex":"#895238","weight":0.1382,"lightness":0.3784,"saturation":0.4197,"hue_group":"red"},{"hex":"#e2d0bf","weight":0.1286,"lightness":0.8176,"saturation":0.3763,"hue_group":"red"},{"hex":"#7c4c3c","weight":0.1275,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#ad634b","weight":0.1201,"lightness":0.4863,"saturation":0.3952,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_rusty_angry.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/red","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/rusty_tame","name":"Wolf / Rusty Tame","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#98664e","dominant_hex":"#664132","average_hex":"#98664e","hue_group":"red","lightness":0.451,"saturation":0.3217,"palette":["#664132","#c17b47","#885338","#e4d3c2","#7c4c3c","#ac644c"],"color_groups":[{"hex":"#664132","weight":0.2869,"lightness":0.298,"saturation":0.3421,"hue_group":"red"},{"hex":"#c17b47","weight":0.1966,"lightness":0.5176,"saturation":0.4959,"hue_group":"red"},{"hex":"#885338","weight":0.1382,"lightness":0.3765,"saturation":0.4167,"hue_group":"red"},{"hex":"#e4d3c2","weight":0.1328,"lightness":0.8275,"saturation":0.3864,"hue_group":"red"},{"hex":"#7c4c3c","weight":0.1275,"lightness":0.3608,"saturation":0.3478,"hue_group":"red"},{"hex":"#ac644c","weight":0.118,"lightness":0.4863,"saturation":0.3871,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_rusty_tame.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_brute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cow/warm","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/snowy","name":"Wolf / Snowy","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#d3d8d7","dominant_hex":"#d4dcdc","average_hex":"#d3d8d7","hue_group":"neutral","lightness":0.8373,"saturation":0.0602,"palette":["#d4dcdc","#e4ece4","#f4f4ec","#afb7bf","#fcfcfc","#868994"],"color_groups":[{"hex":"#d4dcdc","weight":0.2731,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#e4ece4","weight":0.1828,"lightness":0.9098,"saturation":0.1739,"hue_group":"green"},{"hex":"#f4f4ec","weight":0.1817,"lightness":0.9412,"saturation":0.2667,"hue_group":"yellow"},{"hex":"#afb7bf","weight":0.1552,"lightness":0.7176,"saturation":0.1111,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1073,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#868994","weight":0.0999,"lightness":0.5529,"saturation":0.0614,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_snowy.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/caerbannog","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_shooting","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool_undercoat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polarbear","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/snowy_angry","name":"Wolf / Snowy Angry","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#d3d6d6","dominant_hex":"#d4dcdc","average_hex":"#d3d6d6","hue_group":"neutral","lightness":0.8333,"saturation":0.0353,"palette":["#d4dcdc","#a6acb6","#e4ece4","#f4f4ec","#fcfcfc","#4a2929"],"color_groups":[{"hex":"#d4dcdc","weight":0.2721,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#a6acb6","weight":0.237,"lightness":0.6824,"saturation":0.0988,"hue_group":"neutral"},{"hex":"#e4ece4","weight":0.1817,"lightness":0.9098,"saturation":0.1739,"hue_group":"green"},{"hex":"#f4f4ec","weight":0.1817,"lightness":0.9412,"saturation":0.2667,"hue_group":"yellow"},{"hex":"#fcfcfc","weight":0.1052,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#4a2929","weight":0.0223,"lightness":0.2255,"saturation":0.287,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_snowy_angry.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/snowy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/caerbannog","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool_undercoat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/snowy_tame","name":"Wolf / Snowy Tame","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#d3d8d7","dominant_hex":"#d4dcdc","average_hex":"#d3d8d7","hue_group":"neutral","lightness":0.8373,"saturation":0.0602,"palette":["#d4dcdc","#e4ece4","#f4f4ec","#afb7bf","#fcfcfc","#868994"],"color_groups":[{"hex":"#d4dcdc","weight":0.2731,"lightness":0.8471,"saturation":0.1026,"hue_group":"neutral"},{"hex":"#e4ece4","weight":0.1828,"lightness":0.9098,"saturation":0.1739,"hue_group":"green"},{"hex":"#f4f4ec","weight":0.1817,"lightness":0.9412,"saturation":0.2667,"hue_group":"yellow"},{"hex":"#afb7bf","weight":0.153,"lightness":0.7176,"saturation":0.1111,"hue_group":"neutral"},{"hex":"#fcfcfc","weight":0.1095,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#868994","weight":0.0999,"lightness":0.5529,"saturation":0.0614,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_snowy_tame.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/snowy","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/caerbannog","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ghast_shooting","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheep/wool_undercoat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:polarbear","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/spotted","name":"Wolf / Spotted","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#7f6553","dominant_hex":"#3e3e46","average_hex":"#7f6553","hue_group":"red","lightness":0.4118,"saturation":0.2095,"palette":["#3e3e46","#2d292d","#c9813d","#d8ccc6","#a8612c","#7c675a"],"color_groups":[{"hex":"#3e3e46","weight":0.2412,"lightness":0.2588,"saturation":0.0606,"hue_group":"neutral"},{"hex":"#2d292d","weight":0.2009,"lightness":0.1686,"saturation":0.0465,"hue_group":"neutral"},{"hex":"#c9813d","weight":0.1849,"lightness":0.5137,"saturation":0.5645,"hue_group":"red"},{"hex":"#d8ccc6","weight":0.1668,"lightness":0.8118,"saturation":0.1875,"hue_group":"red"},{"hex":"#a8612c","weight":0.1371,"lightness":0.4157,"saturation":0.5849,"hue_group":"red"},{"hex":"#7c675a","weight":0.0691,"lightness":0.4196,"saturation":0.1589,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_spotted.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/spotted_angry","name":"Wolf / Spotted Angry","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#7f6453","dominant_hex":"#3e3e46","average_hex":"#7f6453","hue_group":"red","lightness":0.4118,"saturation":0.2095,"palette":["#3e3e46","#2d282d","#c9813d","#d8cbc6","#a95f2c","#7c685b"],"color_groups":[{"hex":"#3e3e46","weight":0.2412,"lightness":0.2588,"saturation":0.0606,"hue_group":"neutral"},{"hex":"#2d282d","weight":0.203,"lightness":0.1667,"saturation":0.0588,"hue_group":"neutral"},{"hex":"#c9813d","weight":0.1849,"lightness":0.5137,"saturation":0.5645,"hue_group":"red"},{"hex":"#d8cbc6","weight":0.1647,"lightness":0.8118,"saturation":0.1875,"hue_group":"red"},{"hex":"#a95f2c","weight":0.1392,"lightness":0.4176,"saturation":0.5869,"hue_group":"red"},{"hex":"#7c685b","weight":0.067,"lightness":0.4216,"saturation":0.1535,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_spotted_angry.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/spotted","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/spotted_tame","name":"Wolf / Spotted Tame","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#806554","dominant_hex":"#3e3e46","average_hex":"#806554","hue_group":"red","lightness":0.4157,"saturation":0.2075,"palette":["#3e3e46","#2d282d","#c9813d","#d9ccc7","#a8612c","#7c675a"],"color_groups":[{"hex":"#3e3e46","weight":0.2412,"lightness":0.2588,"saturation":0.0606,"hue_group":"neutral"},{"hex":"#2d282d","weight":0.1987,"lightness":0.1667,"saturation":0.0588,"hue_group":"neutral"},{"hex":"#c9813d","weight":0.1849,"lightness":0.5137,"saturation":0.5645,"hue_group":"red"},{"hex":"#d9ccc7","weight":0.169,"lightness":0.8157,"saturation":0.1915,"hue_group":"red"},{"hex":"#a8612c","weight":0.1371,"lightness":0.4157,"saturation":0.5849,"hue_group":"red"},{"hex":"#7c675a","weight":0.0691,"lightness":0.4196,"saturation":0.1589,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_spotted_tame.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/spotted","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/spotted_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/tabby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:exposed_copper_golem","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:axolotl/wild","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:strider_cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/striped","name":"Wolf / Striped","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#a38f6b","dominant_hex":"#4b4134","average_hex":"#a38f6b","hue_group":"yellow","lightness":0.5294,"saturation":0.2333,"palette":["#4b4134","#b8a278","#dcc494","#ccb384","#8e7a5d","#f4d5a6"],"color_groups":[{"hex":"#4b4134","weight":0.2816,"lightness":0.249,"saturation":0.1811,"hue_group":"yellow"},{"hex":"#b8a278","weight":0.2349,"lightness":0.5961,"saturation":0.3107,"hue_group":"yellow"},{"hex":"#dcc494","weight":0.1647,"lightness":0.7216,"saturation":0.507,"hue_group":"yellow"},{"hex":"#ccb384","weight":0.1328,"lightness":0.6588,"saturation":0.4138,"hue_group":"yellow"},{"hex":"#8e7a5d","weight":0.101,"lightness":0.4608,"saturation":0.2085,"hue_group":"yellow"},{"hex":"#f4d5a6","weight":0.085,"lightness":0.8039,"saturation":0.78,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_striped.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/striped_angry","name":"Wolf / Striped Angry","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#a28d6a","dominant_hex":"#4b4033","average_hex":"#a28d6a","hue_group":"yellow","lightness":0.5255,"saturation":0.2314,"palette":["#4b4033","#b8a278","#dcc494","#ccb384","#90795c","#f4d4a4"],"color_groups":[{"hex":"#4b4033","weight":0.288,"lightness":0.2471,"saturation":0.1905,"hue_group":"yellow"},{"hex":"#b8a278","weight":0.2317,"lightness":0.5961,"saturation":0.3107,"hue_group":"yellow"},{"hex":"#dcc494","weight":0.1647,"lightness":0.7216,"saturation":0.507,"hue_group":"yellow"},{"hex":"#ccb384","weight":0.1318,"lightness":0.6588,"saturation":0.4138,"hue_group":"yellow"},{"hex":"#90795c","weight":0.101,"lightness":0.4627,"saturation":0.2203,"hue_group":"yellow"},{"hex":"#f4d4a4","weight":0.0829,"lightness":0.8,"saturation":0.7843,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_striped_angry.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/striped_tame","name":"Wolf / Striped Tame","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#a38f6b","dominant_hex":"#4b4134","average_hex":"#a38f6b","hue_group":"yellow","lightness":0.5294,"saturation":0.2333,"palette":["#4b4134","#b8a278","#dcc494","#ccb384","#8e7a5d","#f4d6a8"],"color_groups":[{"hex":"#4b4134","weight":0.2816,"lightness":0.249,"saturation":0.1811,"hue_group":"yellow"},{"hex":"#b8a278","weight":0.2349,"lightness":0.5961,"saturation":0.3107,"hue_group":"yellow"},{"hex":"#dcc494","weight":0.1647,"lightness":0.7216,"saturation":0.507,"hue_group":"yellow"},{"hex":"#ccb384","weight":0.1328,"lightness":0.6588,"saturation":0.4138,"hue_group":"yellow"},{"hex":"#8e7a5d","weight":0.0988,"lightness":0.4608,"saturation":0.2085,"hue_group":"yellow"},{"hex":"#f4d6a8","weight":0.0871,"lightness":0.8078,"saturation":0.7755,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_striped_tame.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod/mob","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/tame","name":"Wolf / Tame","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#c4bfbe","dominant_hex":"#d4cccc","average_hex":"#c4bfbe","hue_group":"neutral","lightness":0.7569,"saturation":0.0484,"palette":["#d4cccc","#c5bcbb","#ccc4cc","#dddddd","#aa9c91","#353431"],"color_groups":[{"hex":"#d4cccc","weight":0.238,"lightness":0.8157,"saturation":0.0851,"hue_group":"neutral"},{"hex":"#c5bcbb","weight":0.2094,"lightness":0.7529,"saturation":0.0794,"hue_group":"neutral"},{"hex":"#ccc4cc","weight":0.1923,"lightness":0.7843,"saturation":0.0727,"hue_group":"neutral"},{"hex":"#dddddd","weight":0.1732,"lightness":0.8667,"saturation":0.0,"hue_group":"neutral"},{"hex":"#aa9c91","weight":0.1562,"lightness":0.6176,"saturation":0.1282,"hue_group":"red"},{"hex":"#353431","weight":0.0308,"lightness":0.2,"saturation":0.0392,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_tame.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_horse","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_a","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/ragdoll","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:llama/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_tame","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/ashen_angry","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse/white","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/snowy_angry","label":"Shared hue group: neutral","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/woods","name":"Wolf / Woods","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#816b51","dominant_hex":"#47392a","average_hex":"#816b51","hue_group":"yellow","lightness":0.4118,"saturation":0.2286,"palette":["#47392a","#c9bba5","#936f4a","#ad8157","#5c442c","#685636"],"color_groups":[{"hex":"#47392a","weight":0.2519,"lightness":0.2216,"saturation":0.2566,"hue_group":"yellow"},{"hex":"#c9bba5","weight":0.2115,"lightness":0.7176,"saturation":0.25,"hue_group":"yellow"},{"hex":"#936f4a","weight":0.1509,"lightness":0.4333,"saturation":0.3303,"hue_group":"yellow"},{"hex":"#ad8157","weight":0.1403,"lightness":0.5098,"saturation":0.344,"hue_group":"red"},{"hex":"#5c442c","weight":0.1233,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"},{"hex":"#685636","weight":0.1222,"lightness":0.3098,"saturation":0.3165,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_woods.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/woods_angry","name":"Wolf / Woods Angry","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#816a50","dominant_hex":"#46392a","average_hex":"#816a50","hue_group":"yellow","lightness":0.4098,"saturation":0.2344,"palette":["#46392a","#c7b9a3","#946d49","#ad8157","#5d432b","#685636"],"color_groups":[{"hex":"#46392a","weight":0.254,"lightness":0.2196,"saturation":0.25,"hue_group":"yellow"},{"hex":"#c7b9a3","weight":0.2094,"lightness":0.7098,"saturation":0.2432,"hue_group":"yellow"},{"hex":"#946d49","weight":0.1498,"lightness":0.4333,"saturation":0.3394,"hue_group":"red"},{"hex":"#ad8157","weight":0.1392,"lightness":0.5098,"saturation":0.344,"hue_group":"red"},{"hex":"#5d432b","weight":0.1254,"lightness":0.2667,"saturation":0.3676,"hue_group":"red"},{"hex":"#685636","weight":0.1222,"lightness":0.3098,"saturation":0.3165,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_woods_angry.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_tame","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf/woods_tame","name":"Wolf / Woods Tame","entry_type":"mob","description":"A wolf is a neutral mob that can be tamed using bones. Tamed wolves defend their owners against attackers and can assist in combat. They can also be equipped with wolf armor.","history":[{"version":"1.4","status":"added","notes":"Added wolves."},{"version":"1.0.0","status":"added","notes":"Added baby wolves. They can be spawned only through map editors and NBT editing."},{"version":"1.6.1 13w16a","status":"added","notes":"Added leads , which can be used to leash wolves."}],"colors":{"primary":"#826c51","dominant_hex":"#47392a","average_hex":"#826c51","hue_group":"yellow","lightness":0.4137,"saturation":0.2322,"palette":["#47392a","#c9bca6","#936e4a","#ad8157","#5c442c","#685636"],"color_groups":[{"hex":"#47392a","weight":0.2519,"lightness":0.2216,"saturation":0.2566,"hue_group":"yellow"},{"hex":"#c9bca6","weight":0.2136,"lightness":0.7196,"saturation":0.2448,"hue_group":"yellow"},{"hex":"#936e4a","weight":0.1488,"lightness":0.4333,"saturation":0.3303,"hue_group":"red"},{"hex":"#ad8157","weight":0.1403,"lightness":0.5098,"saturation":0.344,"hue_group":"red"},{"hex":"#5c442c","weight":0.1233,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"},{"hex":"#685636","weight":0.1222,"lightness":0.3098,"saturation":0.3165,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/wolf/wolf_woods_tame.png","family":"wolf","relations":[{"type":"variants","target":"minecraft:wolf","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/ashen_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/ashen_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/black_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/black_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/chestnut_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/chestnut_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/rusty_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/rusty_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/snowy_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/snowy_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/spotted_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/spotted_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_angry","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/striped_tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/striped_tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/tame","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/tame","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods","label":"Related set: wolf","confidence":0.8},{"type":"variants","target":"minecraft:wolf/woods_angry","label":"Same family: wolf","confidence":0.75},{"type":"related_sets","target":"minecraft:wolf/woods_angry","label":"Related set: wolf","confidence":0.8},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:wolf_armor","name":"Wolf Armor","entry_type":"item","description":"Wolf armor is an item crafted from armadillo scutes that can be equipped on a wolf to completely protect it against most damage types. It has limited durability, but can be repaired by using armadillo scutes on the wolf wearing it. It can also be dyed, and cannot be equipped on baby wolves.","history":[{"version":"1.20.5 23w51a","status":"added","notes":"Added wolf armor."}],"colors":{"primary":"#8a5551","dominant_hex":"#5c2c34","average_hex":"#8a5551","hue_group":"red","lightness":0.4294,"saturation":0.2603,"palette":["#5c2c34","#7e4d46","#a46464","#945c54","#b77f77","#a7766a"],"color_groups":[{"hex":"#5c2c34","weight":0.2432,"lightness":0.2667,"saturation":0.3529,"hue_group":"red"},{"hex":"#7e4d46","weight":0.2162,"lightness":0.3843,"saturation":0.2857,"hue_group":"red"},{"hex":"#a46464","weight":0.1757,"lightness":0.5176,"saturation":0.2602,"hue_group":"red"},{"hex":"#945c54","weight":0.1351,"lightness":0.4549,"saturation":0.2759,"hue_group":"red"},{"hex":"#b77f77","weight":0.1351,"lightness":0.5922,"saturation":0.3077,"hue_group":"red"},{"hex":"#a7766a","weight":0.0946,"lightness":0.5353,"saturation":0.2574,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wolf_armor.png","family":"wolf_armor","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:armadillo_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_scute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:trial_key","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_copper","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bolt_armor_trim_smithing_template","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:firework_rocket","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:wolf_spawn_egg","name":"Wolf Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#918a86","dominant_hex":"#d6d0d4","average_hex":"#918a86","hue_group":"neutral","lightness":0.5471,"saturation":0.0476,"palette":["#d6d0d4","#aaa69f","#34342f","#8c7f77","#4c4c44","#645c54"],"color_groups":[{"hex":"#d6d0d4","weight":0.2662,"lightness":0.8275,"saturation":0.0682,"hue_group":"neutral"},{"hex":"#aaa69f","weight":0.2532,"lightness":0.6451,"saturation":0.0608,"hue_group":"neutral"},{"hex":"#34342f","weight":0.1429,"lightness":0.1941,"saturation":0.0505,"hue_group":"neutral"},{"hex":"#8c7f77","weight":0.1364,"lightness":0.5078,"saturation":0.0837,"hue_group":"neutral"},{"hex":"#4c4c44","weight":0.1039,"lightness":0.2824,"saturation":0.0556,"hue_group":"neutral"},{"hex":"#645c54","weight":0.0974,"lightness":0.3608,"saturation":0.087,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wolf_spawn_egg.png","family":"wolf_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:pale_oak_boat","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_nugget","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:milk_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:string","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_dye","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:leather_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_chestplate","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pufferfish_bucket","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:wooden_axe","name":"Wooden Axe","entry_type":"item","description":"A wooden axe is an early-game variant of axe that is crafted from planks. It can be used to cut down trees faster, to strip logs and scrape copper-based blocks, and as a melee weapon that disables shields. It is the seventh-highest tier of axe, having the lowest mining efficiency, the lowest attack damage alongside golden axes, and having the lowest attack speed alongside stone and copper axes. It can be used as fuel in a furnace, smoker, or blast furnace.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added wooden axes."},{"version":"wiki-history","status":"added","notes":"added to the item chest in the Indev house."},{"version":"wiki-history","status":"added","notes":"Added block of bamboo , which when used with a wooden axe gives a block of stripped bamboo."}],"colors":{"primary":"#4f3b17","dominant_hex":"#6b511d","average_hex":"#4f3b17","hue_group":"yellow","lightness":0.2,"saturation":0.549,"palette":["#6b511d","#2c1c0c","#4c3414","#876424","#241c0c","#342c14"],"color_groups":[{"hex":"#6b511d","weight":0.3167,"lightness":0.2667,"saturation":0.5735,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1667,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.15,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#876424","weight":0.1333,"lightness":0.3353,"saturation":0.5789,"hue_group":"yellow"},{"hex":"#241c0c","weight":0.1167,"lightness":0.0941,"saturation":0.5,"hue_group":"yellow"},{"hex":"#342c14","weight":0.1167,"lightness":0.1412,"saturation":0.4444,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wooden_axe.png","family":"wooden_tools","relations":[{"type":"variants","target":"minecraft:wooden_hoe","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_hoe","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_pickaxe","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_pickaxe","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_shovel","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_shovel","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_sword","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_sword","label":"Related set: wooden_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:wooden_tools","label":"Related set: wooden_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:debug_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:wooden_hoe","name":"Wooden Hoe","entry_type":"item","description":"A wooden hoe is an early-game variant of hoe that is crafted from planks. It is used to till dirt-related blocks into farmland, and to break leaves, haybales, and sculk-related blocks faster. It is the seventh-highest tier of hoe, having the lowest mining efficiency, and having the lowest attack speed alongside golden hoes. It can be used as fuel in a furnace, smoker, or blast furnace.","history":[{"version":"20100206-2034","status":"added","notes":"Added wooden hoe."},{"version":"15w50a","status":"added","notes":"Added a sound for hoes: item.hoe.till ."}],"colors":{"primary":"#4b3816","dominant_hex":"#241c0c","average_hex":"#4b3816","hue_group":"yellow","lightness":0.1902,"saturation":0.5464,"palette":["#241c0c","#4c3414","#6c501c","#342c14","#8c6424","#745c24"],"color_groups":[{"hex":"#241c0c","weight":0.3137,"lightness":0.0941,"saturation":0.5,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.1961,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#6c501c","weight":0.1765,"lightness":0.2667,"saturation":0.5882,"hue_group":"yellow"},{"hex":"#342c14","weight":0.1176,"lightness":0.1412,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#8c6424","weight":0.1176,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"},{"hex":"#745c24","weight":0.0784,"lightness":0.298,"saturation":0.5263,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wooden_hoe.png","family":"wooden_tools","relations":[{"type":"variants","target":"minecraft:wooden_axe","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_axe","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_pickaxe","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_pickaxe","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_shovel","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_shovel","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_sword","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_sword","label":"Related set: wooden_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:wooden_tools","label":"Related set: wooden_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:debug_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_chest_boat","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:wooden_pickaxe","name":"Wooden Pickaxe","entry_type":"item","description":"A wooden pickaxe is an early-game variant of pickaxe that is crafted from planks. It is the seventh-highest tier of pickaxe, having the lowest mining efficiency, and having the lowest attack damage alongside golden pickaxes. It has a mining level of 0, allowing it to mine stone and coal ore. It can be used as fuel in a furnace, smoker, or blast furnace.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added wooden pickaxes."}],"colors":{"primary":"#493715","dominant_hex":"#6e561e","average_hex":"#493715","hue_group":"yellow","lightness":0.1843,"saturation":0.5532,"palette":["#6e561e","#241c0c","#2c1c0c","#4c3414","#342c14","#8c6424"],"color_groups":[{"hex":"#6e561e","weight":0.2647,"lightness":0.2745,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#241c0c","weight":0.2059,"lightness":0.0941,"saturation":0.5,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1618,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.1471,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#342c14","weight":0.1176,"lightness":0.1412,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#8c6424","weight":0.1029,"lightness":0.3451,"saturation":0.5909,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wooden_pickaxe.png","family":"wooden_tools","relations":[{"type":"variants","target":"minecraft:wooden_axe","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_axe","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_hoe","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_hoe","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_shovel","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_shovel","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_sword","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_sword","label":"Related set: wooden_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:wooden_tools","label":"Related set: wooden_tools","confidence":0.85},{"type":"related_sets","target":"group:pickaxes","label":"Related set: pickaxes","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:debug_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:wooden_shovel","name":"Wooden Shovel","entry_type":"item","description":"A wooden shovel is an early-game variant of shovel that is crafted from planks. It is used to break dirt, sand, gravel and other related blocks faster, to create dirt paths from dirt-related blocks, and to extinguish campfires. It is the seventh-highest tier of shovel, having the lowest mining efficiency, and having the lowest attack damage alongside golden shovels. It can be used as fuel in a furnace, smoker, or blast furnace.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added wooden shovels."},{"version":"wiki-history","status":"added","notes":"added to the item chest in the Indev house."},{"version":"15w50a","status":"added","notes":"added to wooden shovels."}],"colors":{"primary":"#533e18","dominant_hex":"#876424","average_hex":"#533e18","hue_group":"yellow","lightness":0.2098,"saturation":0.5514,"palette":["#876424","#6f561f","#2c1c0c","#4c3414","#241c0c","#342c14"],"color_groups":[{"hex":"#876424","weight":0.2453,"lightness":0.3353,"saturation":0.5789,"hue_group":"yellow"},{"hex":"#6f561f","weight":0.1887,"lightness":0.2784,"saturation":0.5634,"hue_group":"yellow"},{"hex":"#2c1c0c","weight":0.1698,"lightness":0.1098,"saturation":0.5714,"hue_group":"yellow"},{"hex":"#4c3414","weight":0.1698,"lightness":0.1882,"saturation":0.5833,"hue_group":"yellow"},{"hex":"#241c0c","weight":0.1321,"lightness":0.0941,"saturation":0.5,"hue_group":"yellow"},{"hex":"#342c14","weight":0.0943,"lightness":0.1412,"saturation":0.4444,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wooden_shovel.png","family":"wooden_tools","relations":[{"type":"variants","target":"minecraft:wooden_axe","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_axe","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_hoe","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_hoe","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_pickaxe","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_pickaxe","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_sword","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_sword","label":"Related set: wooden_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:wooden_tools","label":"Related set: wooden_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:dark_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:debug_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:wooden_spear","name":"Wooden Spear","entry_type":"item","description":"A wooden spear is an early-game variant of spear crafted from planks. It can be used to perform slow jab attacks or held forward to deal increasing damage based on how quickly the wielder is moving. It is the sixth-highest tier of spear, dealing the same damage as a golden spear but with higher attack speed and durability. It can be used as fuel in a furnace, smoker, or blast furnace.","history":[{"version":"1.21.11 25w41a","status":"added","notes":"Added wooden spears."}],"colors":{"primary":"#4f3715","dominant_hex":"#342c14","average_hex":"#4f3715","hue_group":"yellow","lightness":0.1961,"saturation":0.58,"palette":["#342c14","#271c0c","#513513","#905f25","#725822","#441c04"],"color_groups":[{"hex":"#342c14","weight":0.2297,"lightness":0.1412,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#271c0c","weight":0.2162,"lightness":0.1,"saturation":0.5294,"hue_group":"yellow"},{"hex":"#513513","weight":0.2027,"lightness":0.1961,"saturation":0.62,"hue_group":"yellow"},{"hex":"#905f25","weight":0.1622,"lightness":0.3549,"saturation":0.5912,"hue_group":"yellow"},{"hex":"#725822","weight":0.1486,"lightness":0.2902,"saturation":0.5405,"hue_group":"yellow"},{"hex":"#441c04","weight":0.0405,"lightness":0.1412,"saturation":0.8889,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wooden_spear.png","family":"wooden_spear","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:debug_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:wooden_sword","name":"Wooden Sword","entry_type":"item","description":"A wooden sword is an early-game variant of sword crafted from planks. It is the sixth-highest tier of sword, dealing the same damage as a golden sword but having more durability. It can be used as fuel in a furnace, smoker, or blast furnace.","history":[{"version":"0.31 20100128-2200","status":"added","notes":"Added wooden swords."},{"version":"wiki-history","status":"added","notes":"added to the item chest in the starting house ."},{"version":"1.8","status":"added","notes":"Added the ability to block with a wooden sword , giving the player more options in combat."}],"colors":{"primary":"#463514","dominant_hex":"#251c0c","average_hex":"#463514","hue_group":"yellow","lightness":0.1765,"saturation":0.5556,"palette":["#251c0c","#342c14","#5f451c","#745c24","#856424","#473414"],"color_groups":[{"hex":"#251c0c","weight":0.2857,"lightness":0.0961,"saturation":0.5102,"hue_group":"yellow"},{"hex":"#342c14","weight":0.2857,"lightness":0.1412,"saturation":0.4444,"hue_group":"yellow"},{"hex":"#5f451c","weight":0.131,"lightness":0.2412,"saturation":0.5447,"hue_group":"yellow"},{"hex":"#745c24","weight":0.131,"lightness":0.298,"saturation":0.5263,"hue_group":"yellow"},{"hex":"#856424","weight":0.0952,"lightness":0.3314,"saturation":0.574,"hue_group":"yellow"},{"hex":"#473414","weight":0.0714,"lightness":0.1784,"saturation":0.5604,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/wooden_sword.png","family":"wooden_tools","relations":[{"type":"variants","target":"minecraft:wooden_axe","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_axe","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_hoe","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_hoe","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_pickaxe","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_pickaxe","label":"Related set: wooden_tools","confidence":0.8},{"type":"variants","target":"minecraft:wooden_shovel","label":"Same family: wooden_tools","confidence":0.75},{"type":"related_sets","target":"minecraft:wooden_shovel","label":"Related set: wooden_tools","confidence":0.8},{"type":"related_sets","target":"group:tool","label":"Related set: tool","confidence":0.85},{"type":"related_sets","target":"group:wooden_tools","label":"Related set: wooden_tools","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:wooden_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:debug_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_axe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dark_oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_shovel","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wooden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horse_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_pickaxe","label":"Shared hue group: yellow","confidence":0.55}],"category":"tool"},{"id":"minecraft:writable_book","name":"Writable Book","entry_type":"item","description":"A book and quill is an item that can be used to write and edit text, with up to 100 pages available. Signing it allows it to be named for free and prevents further edits. It can also be displayed on a lectern.","history":[{"version":"1.3.1 12w17a","status":"added","notes":"Added books and quills."},{"version":"1 ]","status":"added","notes":"Added support for editing anywhere in the book and quill. [ 1 ]"}],"colors":{"primary":"#785d54","dominant_hex":"#6b2d1a","average_hex":"#785d54","hue_group":"red","lightness":0.4,"saturation":0.1765,"palette":["#6b2d1a","#411604","#d5d5d5","#ababab","#141404","#6e6e6e"],"color_groups":[{"hex":"#6b2d1a","weight":0.2437,"lightness":0.2608,"saturation":0.609,"hue_group":"red"},{"hex":"#411604","weight":0.2313,"lightness":0.1353,"saturation":0.8841,"hue_group":"red"},{"hex":"#d5d5d5","weight":0.2062,"lightness":0.8353,"saturation":0.0,"hue_group":"neutral"},{"hex":"#ababab","weight":0.15,"lightness":0.6706,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141404","weight":0.1062,"lightness":0.0471,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#6e6e6e","weight":0.0625,"lightness":0.4314,"saturation":0.0,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/writable_book.png","family":"writable_book","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:purple_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_spear","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_harness","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tnt_minecart","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_harness","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:written_book","name":"Written Book","entry_type":"item","description":"A written book is a book and quill that has been signed, which prevents its text from being edited and allows copies of it to be crafted. It can also be displayed on a lectern.","history":[{"version":"1.3.1 12w17a","status":"added","notes":"Added written books."}],"colors":{"primary":"#60372a","dominant_hex":"#72331d","average_hex":"#60372a","hue_group":"red","lightness":0.2706,"saturation":0.3913,"palette":["#72331d","#3c1404","#b0b0b0","#141404","#5c2414","#4c1c04"],"color_groups":[{"hex":"#72331d","weight":0.3026,"lightness":0.2804,"saturation":0.5944,"hue_group":"red"},{"hex":"#3c1404","weight":0.2434,"lightness":0.1255,"saturation":0.875,"hue_group":"red"},{"hex":"#b0b0b0","weight":0.1645,"lightness":0.6902,"saturation":0.0,"hue_group":"neutral"},{"hex":"#141404","weight":0.1053,"lightness":0.0471,"saturation":0.6667,"hue_group":"yellow"},{"hex":"#5c2414","weight":0.1053,"lightness":0.2196,"saturation":0.6429,"hue_group":"red"},{"hex":"#4c1c04","weight":0.0789,"lightness":0.1569,"saturation":0.9,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/written_book.png","family":"written_book","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:wandering_trader_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire_charge","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mourner_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:explorer_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heart_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:friend_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:heartbreak_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skull_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cooked_beef","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:sheaf_pottery_sherd","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:snort_pottery_sherd","label":"Shared hue group: red","confidence":0.55}],"category":"item"},{"id":"minecraft:yellow_banner","name":"Yellow Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"yellow_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:yellow_bed","name":"Yellow Bed","entry_type":"block","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","history":[{"version":"1.3","status":"added","notes":"Added beds."},{"version":"1.17 20w51a","status":"added","notes":"Added gamerules for sleeping in multiplayer."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"yellow_bed","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:yellow_bundle","name":"Yellow Bundle","entry_type":"item","description":"A bundle is an item that can store up to a stack's worth of mixed item types within itself in a single inventory slot. Items can be individually selected and taken out of the bundle via the inventory menu. Dyed bundles are the dyed variants of bundles.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added bundles. Hovering over them shows some of the items contained and their quantities, much like the tooltip of a shulker box . Incomplete bundles have the full texture."}],"colors":{"primary":"#cd9627","dominant_hex":"#c18821","average_hex":"#cd9627","hue_group":"yellow","lightness":0.4784,"saturation":0.6803,"palette":["#c18821","#8a4e1d","#f4c404","#fae27d","#dc9c14","#bc6c14"],"color_groups":[{"hex":"#c18821","weight":0.2366,"lightness":0.4431,"saturation":0.708,"hue_group":"yellow"},{"hex":"#8a4e1d","weight":0.1832,"lightness":0.3275,"saturation":0.6527,"hue_group":"red"},{"hex":"#f4c404","weight":0.1603,"lightness":0.4863,"saturation":0.9677,"hue_group":"yellow"},{"hex":"#fae27d","weight":0.1603,"lightness":0.7353,"saturation":0.9259,"hue_group":"yellow"},{"hex":"#dc9c14","weight":0.1374,"lightness":0.4706,"saturation":0.8333,"hue_group":"yellow"},{"hex":"#bc6c14","weight":0.1221,"lightness":0.4078,"saturation":0.8077,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/yellow_bundle.png","family":"yellow_bundle","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:golden_nautilus_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:enchanted_golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_apple","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_horse_armor","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_ingot","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_dye","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_bundle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blaze_rod","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_carrot","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:yellow_candle","name":"Yellow Candle","entry_type":"block","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candles and dyed candles."},{"version":"wiki-history","status":"added","notes":"added back into the creative inventory."}],"colors":{"primary":"#d1a532","dominant_hex":"#c49c24","average_hex":"#d1a532","hue_group":"yellow","lightness":0.5078,"saturation":0.6335,"palette":["#c49c24","#dcac34","#fccc4c","#242434","#fcdc3c"],"color_groups":[{"hex":"#c49c24","weight":0.4286,"lightness":0.4549,"saturation":0.6897,"hue_group":"yellow"},{"hex":"#dcac34","weight":0.2857,"lightness":0.5333,"saturation":0.7059,"hue_group":"yellow"},{"hex":"#fccc4c","weight":0.1905,"lightness":0.6431,"saturation":0.967,"hue_group":"yellow"},{"hex":"#242434","weight":0.0476,"lightness":0.1725,"saturation":0.1818,"hue_group":"blue"},{"hex":"#fcdc3c","weight":0.0476,"lightness":0.6118,"saturation":0.9697,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/yellow_candle.png","family":"yellow_candle","relations":[{"type":"visual_neighbors","target":"minecraft:fire","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jack_o_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bell","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hay_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.856},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.856},{"type":"color_neighbors","target":"minecraft:yellow_concrete_powder","label":"Palette proche: Yellow Concrete Powder","confidence":0.837},{"type":"color_neighbors","target":"minecraft:yellow_terracotta","label":"Palette proche: Yellow Terracotta","confidence":0.836},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.835},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.827},{"type":"color_neighbors","target":"minecraft:yellow_wool","label":"Palette proche: Yellow Wool","confidence":0.827},{"type":"color_neighbors","target":"minecraft:yellow_shulker_box","label":"Palette proche: Yellow Shulker Box","confidence":0.821},{"type":"color_neighbors","target":"minecraft:horn_coral_fan","label":"Palette proche: Horn Coral Fan","confidence":0.82},{"type":"color_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Palette proche: Horn Coral Wall Fan","confidence":0.82},{"type":"color_neighbors","target":"minecraft:bell","label":"Palette proche: Bell","confidence":0.814},{"type":"color_neighbors","target":"minecraft:horn_coral","label":"Palette proche: Horn Coral","confidence":0.814},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.752},{"type":"color_bridge","target":"minecraft:lantern","label":"Pont de nuance par sous-ton: Lantern","confidence":0.749},{"type":"color_bridge","target":"minecraft:gilded_blackstone","label":"Pont de nuance par sous-ton: Gilded Blackstone","confidence":0.745},{"type":"color_bridge","target":"minecraft:campfire","label":"Pont de nuance par sous-ton: Campfire","confidence":0.707},{"type":"color_bridge","target":"minecraft:soul_campfire","label":"Pont de nuance par sous-ton: Soul Campfire","confidence":0.707},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.682},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.669},{"type":"color_bridge","target":"minecraft:potted_torchflower","label":"Pont de nuance par sous-ton: Potted Torchflower","confidence":0.657},{"type":"color_bridge","target":"minecraft:torchflower","label":"Pont de nuance par sous-ton: Torchflower","confidence":0.657},{"type":"color_bridge","target":"minecraft:light","label":"Pont de nuance par sous-ton: Light","confidence":0.644},{"type":"color_analogous","target":"minecraft:bell","label":"Couleurs analogues: Bell","confidence":0.96},{"type":"color_analogous","target":"minecraft:raw_gold_block","label":"Couleurs analogues: Raw Gold Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_concrete","label":"Couleurs analogues: Yellow Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_shulker_box","label":"Couleurs analogues: Yellow Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_shelf","label":"Couleurs analogues: Birch Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_hanging_sign","label":"Couleurs analogues: Birch Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_hanging_sign","label":"Couleurs analogues: Birch Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_log","label":"Couleurs analogues: Stripped Birch Log","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.96},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.949},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.926},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.914},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.893},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.848},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.832},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.83},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.83},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.815},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.815},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.814},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.814},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.844},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.842},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.804},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.642},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.642},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.636},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.636},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.612},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55}],"category":"decorative"},{"id":"minecraft:yellow_candle_cake","name":"Yellow Candle Cake","entry_type":"block","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","history":[{"version":"1.17 20w45a","status":"added","notes":"Added candle cake."}],"colors":{"primary":"#f8dfd6","dominant_hex":"#fcfcfc","average_hex":"#f8dfd6","hue_group":"red","lightness":0.9059,"saturation":0.7083,"palette":["#fcfcfc","#fcf4dc","#f4eccc","#dc292e","#b42434","#f4745c"],"color_groups":[{"hex":"#fcfcfc","weight":0.5357,"lightness":0.9882,"saturation":0.0,"hue_group":"neutral"},{"hex":"#fcf4dc","weight":0.2143,"lightness":0.9255,"saturation":0.8421,"hue_group":"yellow"},{"hex":"#f4eccc","weight":0.1224,"lightness":0.8784,"saturation":0.6452,"hue_group":"yellow"},{"hex":"#dc292e","weight":0.0816,"lightness":0.5118,"saturation":0.7189,"hue_group":"red"},{"hex":"#b42434","weight":0.0255,"lightness":0.4235,"saturation":0.6667,"hue_group":"red"},{"hex":"#f4745c","weight":0.0204,"lightness":0.6588,"saturation":0.8736,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/cake_top.png","family":"yellow_candle_cake","relations":[{"type":"visual_neighbors","target":"minecraft:black_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:green_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_blue_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_gray_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:magenta_candle_cake","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_candle_cake","label":"Palette proche: Black Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_candle_cake","label":"Palette proche: Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_candle_cake","label":"Palette proche: Brown Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cake","label":"Palette proche: Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:candle_cake","label":"Palette proche: Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_candle_cake","label":"Palette proche: Cyan Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:gray_candle_cake","label":"Palette proche: Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:green_candle_cake","label":"Palette proche: Green Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_blue_candle_cake","label":"Palette proche: Light Blue Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:light_gray_candle_cake","label":"Palette proche: Light Gray Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:lime_candle_cake","label":"Palette proche: Lime Candle Cake","confidence":0.94},{"type":"color_neighbors","target":"minecraft:magenta_candle_cake","label":"Palette proche: Magenta Candle Cake","confidence":0.94},{"type":"color_bridge","target":"minecraft:white_stained_glass_pane","label":"Pont de nuance par palette: White Stained Glass Pane","confidence":0.831},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.83},{"type":"color_bridge","target":"minecraft:white_stained_glass","label":"Pont de nuance par palette: White Stained Glass","confidence":0.829},{"type":"color_bridge","target":"minecraft:redstone_wire","label":"Pont de nuance par palette: Redstone Wire","confidence":0.827},{"type":"color_bridge","target":"minecraft:heavy_weighted_pressure_plate","label":"Pont de nuance par palette: Heavy Weighted Pressure Plate","confidence":0.786},{"type":"color_bridge","target":"minecraft:iron_block","label":"Pont de nuance par palette: Iron Block","confidence":0.786},{"type":"color_bridge","target":"minecraft:pale_oak_trapdoor","label":"Pont de nuance par sous-ton: Pale Oak Trapdoor","confidence":0.777},{"type":"color_bridge","target":"minecraft:pale_oak_button","label":"Pont de nuance par sous-ton: Pale Oak Button","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence","label":"Pont de nuance par sous-ton: Pale Oak Fence","confidence":0.774},{"type":"color_bridge","target":"minecraft:pale_oak_fence_gate","label":"Pont de nuance par sous-ton: Pale Oak Fence Gate","confidence":0.774},{"type":"color_analogous","target":"minecraft:black_candle_cake","label":"Couleurs analogues: Black Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_candle_cake","label":"Couleurs analogues: Blue Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_candle_cake","label":"Couleurs analogues: Brown Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cake","label":"Couleurs analogues: Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:candle_cake","label":"Couleurs analogues: Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:cyan_candle_cake","label":"Couleurs analogues: Cyan Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:gray_candle_cake","label":"Couleurs analogues: Gray Candle Cake","confidence":0.96},{"type":"color_analogous","target":"minecraft:green_candle_cake","label":"Couleurs analogues: Green Candle Cake","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_carpet","label":"Contraste complementaire: Light Blue Carpet","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_wool","label":"Contraste complementaire: Light Blue Wool","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk","label":"Contraste complementaire: Sculk","confidence":0.96},{"type":"color_complement","target":"minecraft:sculk_catalyst","label":"Contraste complementaire: Sculk Catalyst","confidence":0.96},{"type":"color_complement","target":"minecraft:light_blue_shulker_box","label":"Contraste complementaire: Light Blue Shulker Box","confidence":0.935},{"type":"color_complement","target":"minecraft:light_blue_concrete_powder","label":"Contraste complementaire: Light Blue Concrete Powder","confidence":0.923},{"type":"color_complement","target":"minecraft:sculk_vein","label":"Contraste complementaire: Sculk Vein","confidence":0.866},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.834},{"type":"color_triad","target":"minecraft:emerald_block","label":"Harmonie triadique: Emerald Block","confidence":0.947},{"type":"color_triad","target":"minecraft:sweet_berry_bush","label":"Harmonie triadique: Sweet Berry Bush","confidence":0.944},{"type":"color_triad","target":"minecraft:repeating_command_block","label":"Harmonie triadique: Repeating Command Block","confidence":0.938},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.926},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.926},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.926},{"type":"color_triad","target":"minecraft:obsidian","label":"Harmonie triadique: Obsidian","confidence":0.926},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.769},{"type":"color_square","target":"minecraft:sunflower","label":"Harmonie carree: Sunflower","confidence":0.957},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.952},{"type":"color_square","target":"minecraft:beetroots","label":"Harmonie carree: Beetroots","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_stained_glass","label":"Harmonie carree: Magenta Stained Glass","confidence":0.904},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.902},{"type":"color_square","target":"minecraft:pink_tulip","label":"Harmonie carree: Pink Tulip","confidence":0.894},{"type":"color_square","target":"minecraft:potted_pink_tulip","label":"Harmonie carree: Potted Pink Tulip","confidence":0.894},{"type":"value_contrast","target":"minecraft:coal_block","label":"Contraste clair sombre: Coal Block","confidence":0.777},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.75},{"type":"value_contrast","target":"minecraft:black_stained_glass_pane","label":"Contraste clair sombre: Black Stained Glass Pane","confidence":0.747},{"type":"value_contrast","target":"minecraft:black_stained_glass","label":"Contraste clair sombre: Black Stained Glass","confidence":0.743},{"type":"value_contrast","target":"minecraft:black_carpet","label":"Contraste clair sombre: Black Carpet","confidence":0.734},{"type":"value_contrast","target":"minecraft:black_wool","label":"Contraste clair sombre: Black Wool","confidence":0.734},{"type":"value_contrast","target":"minecraft:cracked_nether_bricks","label":"Contraste clair sombre: Cracked Nether Bricks","confidence":0.726},{"type":"value_contrast","target":"minecraft:black_shulker_box","label":"Contraste clair sombre: Black Shulker Box","confidence":0.718}],"category":"decorative"},{"id":"minecraft:yellow_carpet","name":"Yellow Carpet","entry_type":"block","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added carpets."},{"version":"1.15 19w37a","status":"added","notes":"added to carpets in creative mode."},{"version":"1.21 24w18a","status":"added","notes":"added to carpets in creative mode."}],"colors":{"primary":"#f9c628","dominant_hex":"#f4bc1c","average_hex":"#f9c628","hue_group":"yellow","lightness":0.5667,"saturation":0.9457,"palette":["#f4bc1c","#fccc2b","#fcd435","#f9c424","#f4b418","#fcdc3c"],"color_groups":[{"hex":"#f4bc1c","weight":0.2148,"lightness":0.5333,"saturation":0.9076,"hue_group":"yellow"},{"hex":"#fccc2b","weight":0.1953,"lightness":0.5784,"saturation":0.9721,"hue_group":"yellow"},{"hex":"#fcd435","weight":0.1914,"lightness":0.598,"saturation":0.9707,"hue_group":"yellow"},{"hex":"#f9c424","weight":0.1797,"lightness":0.5588,"saturation":0.9467,"hue_group":"yellow"},{"hex":"#f4b418","weight":0.1367,"lightness":0.5255,"saturation":0.9091,"hue_group":"yellow"},{"hex":"#fcdc3c","weight":0.082,"lightness":0.6118,"saturation":0.9697,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/yellow_wool.png","family":"yellow_carpet","relations":[{"type":"visual_neighbors","target":"minecraft:yellow_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:yellow_wool","label":"Palette proche: Yellow Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:yellow_shulker_box","label":"Palette proche: Yellow Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:yellow_concrete","label":"Palette proche: Yellow Concrete","confidence":0.938},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.929},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.929},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.908},{"type":"color_neighbors","target":"minecraft:yellow_concrete_powder","label":"Palette proche: Yellow Concrete Powder","confidence":0.873},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.867},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.864},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.854},{"type":"color_neighbors","target":"minecraft:yellow_candle","label":"Palette proche: Yellow Candle","confidence":0.827},{"type":"color_neighbors","target":"minecraft:bell","label":"Palette proche: Bell","confidence":0.823},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.608},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.604},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.604},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.58},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.58},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.58},{"type":"color_analogous","target":"minecraft:yellow_wool","label":"Couleurs analogues: Yellow Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_shulker_box","label":"Couleurs analogues: Yellow Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_hanging_sign","label":"Couleurs analogues: Birch Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_hanging_sign","label":"Couleurs analogues: Birch Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_log","label":"Couleurs analogues: Stripped Birch Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_wood","label":"Couleurs analogues: Stripped Birch Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.948},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.938},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.938},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.883},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.867},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.858},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.852},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.912},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.885},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.828},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.828},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.828},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.82},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.778},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.74},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.903},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.698},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.586},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.578},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.578},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.574},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.568},{"type":"value_contrast","target":"minecraft:dark_oak_trapdoor","label":"Contraste clair sombre: Dark Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:weeping_vines","label":"Contraste clair sombre: Weeping Vines","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_door","label":"Contraste clair sombre: Dark Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55}],"category":"decorative"},{"id":"minecraft:yellow_concrete","name":"Yellow Concrete","entry_type":"block","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete blocks."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete, providing the football/regular effect to the mob."}],"colors":{"primary":"#f1af15","dominant_hex":"#f4ac14","average_hex":"#f1af15","hue_group":"yellow","lightness":0.5137,"saturation":0.8871,"palette":["#f4ac14","#f4b414","#ecac14","#f4b41c"],"color_groups":[{"hex":"#f4ac14","weight":0.4336,"lightness":0.5176,"saturation":0.9106,"hue_group":"yellow"},{"hex":"#f4b414","weight":0.4141,"lightness":0.5176,"saturation":0.9106,"hue_group":"yellow"},{"hex":"#ecac14","weight":0.1094,"lightness":0.502,"saturation":0.8504,"hue_group":"yellow"},{"hex":"#f4b41c","weight":0.043,"lightness":0.5333,"saturation":0.9076,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/yellow_concrete.png","family":"yellow_concrete","relations":[{"type":"visual_neighbors","target":"minecraft:yellow_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:yellow_shulker_box","label":"Palette proche: Yellow Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.938},{"type":"color_neighbors","target":"minecraft:yellow_wool","label":"Palette proche: Yellow Wool","confidence":0.938},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.888},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.869},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.855},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.855},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.849},{"type":"color_neighbors","target":"minecraft:bell","label":"Palette proche: Bell","confidence":0.846},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.843},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.843},{"type":"color_neighbors","target":"minecraft:yellow_concrete_powder","label":"Palette proche: Yellow Concrete Powder","confidence":0.843},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.642},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.642},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.628},{"type":"color_bridge","target":"minecraft:weeping_vines_plant","label":"Pont de nuance par palette: Weeping Vines Plant","confidence":0.613},{"type":"color_bridge","target":"minecraft:barrier","label":"Pont de nuance par palette: Barrier","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.58},{"type":"color_analogous","target":"minecraft:raw_gold_block","label":"Couleurs analogues: Raw Gold Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_candle","label":"Couleurs analogues: Yellow Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_glazed_terracotta","label":"Couleurs analogues: Yellow Glazed Terracotta","confidence":0.96},{"type":"color_analogous","target":"minecraft:bell","label":"Couleurs analogues: Bell","confidence":0.96},{"type":"color_analogous","target":"minecraft:pitcher_crop","label":"Couleurs analogues: Pitcher Crop","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_shelf","label":"Couleurs analogues: Birch Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:dirt_path","label":"Couleurs analogues: Dirt Path","confidence":0.96},{"type":"color_analogous","target":"minecraft:fletching_table","label":"Couleurs analogues: Fletching Table","confidence":0.96},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.914},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.913},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.893},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.893},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.887},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.866},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.855},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.934},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.914},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.863},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.863},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.848},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.848},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.847},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.847},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.842},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.767},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.766},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.68},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.679},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.674},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.674},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.65},{"type":"value_contrast","target":"minecraft:spruce_log","label":"Contraste clair sombre: Spruce Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_wood","label":"Contraste clair sombre: Spruce Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:yellow_concrete_powder","name":"Yellow Concrete Powder","entry_type":"block","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added concrete powder."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb concrete powder, providing the football/regular effect to the mob."}],"colors":{"primary":"#e9c737","dominant_hex":"#eecf3b","average_hex":"#e9c737","hue_group":"yellow","lightness":0.5647,"saturation":0.8018,"palette":["#eecf3b","#e2bb2d","#ebc42c","#e3c436","#eed959","#ecc434"],"color_groups":[{"hex":"#eecf3b","weight":0.332,"lightness":0.5824,"saturation":0.8404,"hue_group":"yellow"},{"hex":"#e2bb2d","weight":0.1992,"lightness":0.5314,"saturation":0.7573,"hue_group":"yellow"},{"hex":"#ebc42c","weight":0.1602,"lightness":0.5471,"saturation":0.8268,"hue_group":"yellow"},{"hex":"#e3c436","weight":0.1562,"lightness":0.551,"saturation":0.7555,"hue_group":"yellow"},{"hex":"#eed959","weight":0.082,"lightness":0.6412,"saturation":0.8142,"hue_group":"yellow"},{"hex":"#ecc434","weight":0.0703,"lightness":0.5647,"saturation":0.8288,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/yellow_concrete_powder.png","family":"yellow_concrete_powder","relations":[{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.876},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.876},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.873},{"type":"color_neighbors","target":"minecraft:yellow_wool","label":"Palette proche: Yellow Wool","confidence":0.873},{"type":"color_neighbors","target":"minecraft:yellow_stained_glass","label":"Palette proche: Yellow Stained Glass","confidence":0.864},{"type":"color_neighbors","target":"minecraft:horn_coral_block","label":"Palette proche: Horn Coral Block","confidence":0.852},{"type":"color_neighbors","target":"minecraft:yellow_shulker_box","label":"Palette proche: Yellow Shulker Box","confidence":0.848},{"type":"color_neighbors","target":"minecraft:horn_coral_fan","label":"Palette proche: Horn Coral Fan","confidence":0.843},{"type":"color_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Palette proche: Horn Coral Wall Fan","confidence":0.843},{"type":"color_neighbors","target":"minecraft:yellow_concrete","label":"Palette proche: Yellow Concrete","confidence":0.843},{"type":"color_neighbors","target":"minecraft:horn_coral","label":"Palette proche: Horn Coral","confidence":0.841},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.841},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.629},{"type":"color_bridge","target":"minecraft:jungle_leaves","label":"Pont de nuance par palette: Jungle Leaves","confidence":0.615},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.58},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.58},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.58},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.58},{"type":"color_analogous","target":"minecraft:gold_block","label":"Couleurs analogues: Gold Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:light_weighted_pressure_plate","label":"Couleurs analogues: Light Weighted Pressure Plate","confidence":0.96},{"type":"color_analogous","target":"minecraft:wildflowers","label":"Couleurs analogues: Wildflowers","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_fence","label":"Couleurs analogues: Bamboo Fence","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_fence_gate","label":"Couleurs analogues: Bamboo Fence Gate","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_trapdoor","label":"Couleurs analogues: Bamboo Trapdoor","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_button","label":"Couleurs analogues: Bamboo Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:bamboo_hanging_sign","label":"Couleurs analogues: Bamboo Hanging Sign","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.951},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.947},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.893},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.883},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.846},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.846},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.959},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.959},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.959},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.954},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.912},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.873},{"type":"color_triad","target":"minecraft:twisting_vines_plant","label":"Harmonie triadique: Twisting Vines Plant","confidence":0.833},{"type":"color_triad","target":"minecraft:potted_warped_roots","label":"Harmonie triadique: Potted Warped Roots","confidence":0.832},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.93},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.883},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.73},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.722},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.722},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.718},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.712},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.66},{"type":"value_contrast","target":"minecraft:dark_oak_trapdoor","label":"Contraste clair sombre: Dark Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_door","label":"Contraste clair sombre: Dark Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55}],"category":"building"},{"id":"minecraft:yellow_dye","name":"Yellow Dye","entry_type":"item","description":"Yellow dye is one of the sixteen available dyes.","history":[{"version":"1.2","status":"added","notes":"Added dandelion yellow."},{"version":"1.4.2 12w34a","status":"added","notes":"Added the ability to dye leather armor and wolf collars."},{"version":"1.8 14w30a","status":"added","notes":"Added banners , which can be dyed ."}],"colors":{"primary":"#ae993b","dominant_hex":"#cfb232","average_hex":"#ae993b","hue_group":"yellow","lightness":0.4569,"saturation":0.4936,"palette":["#cfb232","#e4dc2c","#795f2d","#f4f4ac","#3c1c1c","#8f7020"],"color_groups":[{"hex":"#cfb232","weight":0.2238,"lightness":0.5039,"saturation":0.6206,"hue_group":"yellow"},{"hex":"#e4dc2c","weight":0.1958,"lightness":0.5333,"saturation":0.7731,"hue_group":"yellow"},{"hex":"#795f2d","weight":0.1678,"lightness":0.3255,"saturation":0.4578,"hue_group":"yellow"},{"hex":"#f4f4ac","weight":0.1469,"lightness":0.8157,"saturation":0.766,"hue_group":"yellow"},{"hex":"#3c1c1c","weight":0.1399,"lightness":0.1725,"saturation":0.3636,"hue_group":"red"},{"hex":"#8f7020","weight":0.1259,"lightness":0.3431,"saturation":0.6343,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/yellow_dye.png","family":"yellow_dye","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:magma_cream","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:clock","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_nugget","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glowstone_dust","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_chestplate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spectral_arrow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:experience_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_spawn_egg","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_spear","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:baked_potato","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:yellow_glazed_terracotta","name":"Yellow Glazed Terracotta","entry_type":"block","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","history":[{"version":"1.12 17w06a","status":"added","notes":"Added glazed terracotta."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb glazed terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#eac059","dominant_hex":"#fceea6","average_hex":"#eac059","hue_group":"yellow","lightness":0.6333,"saturation":0.7754,"palette":["#fceea6","#f4b414","#a6764d","#fcdc43","#eeac0c","#f4b424"],"color_groups":[{"hex":"#fceea6","weight":0.3672,"lightness":0.8196,"saturation":0.9348,"hue_group":"yellow"},{"hex":"#f4b414","weight":0.2305,"lightness":0.5176,"saturation":0.9106,"hue_group":"yellow"},{"hex":"#a6764d","weight":0.1719,"lightness":0.4765,"saturation":0.3663,"hue_group":"red"},{"hex":"#fcdc43","weight":0.0859,"lightness":0.6255,"saturation":0.9686,"hue_group":"yellow"},{"hex":"#eeac0c","weight":0.0781,"lightness":0.4902,"saturation":0.904,"hue_group":"yellow"},{"hex":"#f4b424","weight":0.0664,"lightness":0.549,"saturation":0.9043,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/yellow_glazed_terracotta.png","family":"yellow_glazed_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:wildflowers","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.896},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.896},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.867},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.867},{"type":"color_neighbors","target":"minecraft:yellow_wool","label":"Palette proche: Yellow Wool","confidence":0.867},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.862},{"type":"color_neighbors","target":"minecraft:yellow_concrete","label":"Palette proche: Yellow Concrete","confidence":0.855},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.845},{"type":"color_neighbors","target":"minecraft:yellow_shulker_box","label":"Palette proche: Yellow Shulker Box","confidence":0.843},{"type":"color_neighbors","target":"minecraft:bee_nest","label":"Palette proche: Bee Nest","confidence":0.826},{"type":"color_neighbors","target":"minecraft:jack_o_lantern","label":"Palette proche: Jack O Lantern","confidence":0.811},{"type":"color_neighbors","target":"minecraft:torch","label":"Palette proche: Torch","confidence":0.801},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.749},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.646},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.641},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.634},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.634},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.631},{"type":"color_bridge","target":"minecraft:end_rod","label":"Pont de nuance par sous-ton: End Rod","confidence":0.63},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.629},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.629},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.628},{"type":"color_analogous","target":"minecraft:raw_gold_block","label":"Couleurs analogues: Raw Gold Block","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_concrete","label":"Couleurs analogues: Yellow Concrete","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_hanging_sign","label":"Couleurs analogues: Birch Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_hanging_sign","label":"Couleurs analogues: Birch Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_log","label":"Couleurs analogues: Stripped Birch Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_wood","label":"Couleurs analogues: Stripped Birch Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:pitcher_crop","label":"Couleurs analogues: Pitcher Crop","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_shelf","label":"Couleurs analogues: Birch Shelf","confidence":0.96},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.945},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.925},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.925},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.905},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.886},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.874},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.862},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.855},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.947},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.848},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.848},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.833},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.833},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.832},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.832},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.825},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.802},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.801},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.663},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.663},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.657},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.657},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.633},{"type":"value_contrast","target":"minecraft:jungle_log","label":"Contraste clair sombre: Jungle Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:jungle_wood","label":"Contraste clair sombre: Jungle Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:podzol","label":"Contraste clair sombre: Podzol","confidence":0.55},{"type":"value_contrast","target":"minecraft:rose_bush","label":"Contraste clair sombre: Rose Bush","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_concrete","label":"Contraste clair sombre: Brown Concrete","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_trapdoor","label":"Contraste clair sombre: Dark Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_door","label":"Contraste clair sombre: Dark Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:redstone_lamp","label":"Contraste clair sombre: Redstone Lamp","confidence":0.55}],"category":"building"},{"id":"minecraft:yellow_harness","name":"Yellow Harness","entry_type":"item","description":"A harness is an item that can be equipped on happy ghasts to make them mountable and rideable. Harnesses can be crafted into 16 dyed variants.","history":[{"version":"1.21.6 25w15a","status":"added","notes":"Added harnesses."}],"colors":{"primary":"#845f38","dominant_hex":"#93644c","average_hex":"#845f38","hue_group":"yellow","lightness":0.3686,"saturation":0.4043,"palette":["#93644c","#502e16","#c1bf97","#c07314","#70492f","#3c2414"],"color_groups":[{"hex":"#93644c","weight":0.227,"lightness":0.4373,"saturation":0.3184,"hue_group":"red"},{"hex":"#502e16","weight":0.1963,"lightness":0.2,"saturation":0.5686,"hue_group":"red"},{"hex":"#c1bf97","weight":0.1595,"lightness":0.6745,"saturation":0.253,"hue_group":"yellow"},{"hex":"#c07314","weight":0.1534,"lightness":0.4157,"saturation":0.8113,"hue_group":"yellow"},{"hex":"#70492f","weight":0.135,"lightness":0.3118,"saturation":0.4088,"hue_group":"red"},{"hex":"#3c2414","weight":0.1288,"lightness":0.1569,"saturation":0.5,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/yellow_harness.png","family":"yellow_harness","relations":[{"type":"related_sets","target":"group:item","label":"Related set: item","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:bamboo_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jungle_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:poisonous_potato","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_chest_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_sword","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spyglass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:experience_bottle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bamboo_chest_raft","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:golden_spear","label":"Shared hue group: yellow","confidence":0.55}],"category":"item"},{"id":"minecraft:yellow_shulker_box","name":"Yellow Shulker Box","entry_type":"block","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","history":[{"version":"1.11 16w39a","status":"added","notes":"Added shulker boxes."},{"version":"18w10b","status":"added","notes":"Added a default shulker box."}],"colors":{"primary":"#f8bd1d","dominant_hex":"#fcc424","average_hex":"#f8bd1d","hue_group":"yellow","lightness":0.5431,"saturation":0.9399,"palette":["#fcc424","#fcbc1c","#f4b415","#f2ac14","#eba414","#fcc41c"],"color_groups":[{"hex":"#fcc424","weight":0.5039,"lightness":0.5647,"saturation":0.973,"hue_group":"yellow"},{"hex":"#fcbc1c","weight":0.168,"lightness":0.549,"saturation":0.9739,"hue_group":"yellow"},{"hex":"#f4b415","weight":0.125,"lightness":0.5196,"saturation":0.9102,"hue_group":"yellow"},{"hex":"#f2ac14","weight":0.1133,"lightness":0.5137,"saturation":0.8952,"hue_group":"yellow"},{"hex":"#eba414","weight":0.0508,"lightness":0.5,"saturation":0.8431,"hue_group":"yellow"},{"hex":"#fcc41c","weight":0.0391,"lightness":0.549,"saturation":0.9739,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/yellow_shulker_box.png","family":"yellow_shulker_box","relations":[{"type":"visual_neighbors","target":"minecraft:yellow_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:yellow_wool","label":"Palette proche: Yellow Wool","confidence":0.94},{"type":"color_neighbors","target":"minecraft:yellow_concrete","label":"Palette proche: Yellow Concrete","confidence":0.94},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.917},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.904},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.904},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.884},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.88},{"type":"color_neighbors","target":"minecraft:resin_clump","label":"Palette proche: Resin Clump","confidence":0.861},{"type":"color_neighbors","target":"minecraft:potted_open_eyeblossom","label":"Palette proche: Potted Open Eyeblossom","confidence":0.851},{"type":"color_neighbors","target":"minecraft:yellow_concrete_powder","label":"Palette proche: Yellow Concrete Powder","confidence":0.848},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.843},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.629},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.629},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.626},{"type":"color_bridge","target":"minecraft:weeping_vines_plant","label":"Pont de nuance par palette: Weeping Vines Plant","confidence":0.606},{"type":"color_bridge","target":"minecraft:potted_red_mushroom","label":"Pont de nuance par palette: Potted Red Mushroom","confidence":0.592},{"type":"color_bridge","target":"minecraft:red_mushroom","label":"Pont de nuance par palette: Red Mushroom","confidence":0.592},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.58},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.58},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.58},{"type":"color_analogous","target":"minecraft:yellow_carpet","label":"Couleurs analogues: Yellow Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_wool","label":"Couleurs analogues: Yellow Wool","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_candle","label":"Couleurs analogues: Yellow Candle","confidence":0.96},{"type":"color_analogous","target":"minecraft:bell","label":"Couleurs analogues: Bell","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_shelf","label":"Couleurs analogues: Birch Shelf","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_hanging_sign","label":"Couleurs analogues: Birch Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_hanging_sign","label":"Couleurs analogues: Birch Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_log","label":"Couleurs analogues: Stripped Birch Log","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.949},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.949},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.91},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.904},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.898},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.848},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.833},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.832},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.96},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.945},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.788},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.788},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.773},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.773},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.772},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.772},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.84},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.838},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.761},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.6},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.599},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.594},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.594},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.569},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55}],"category":""},{"id":"minecraft:yellow_stained_glass","name":"Yellow Stained Glass","entry_type":"block","description":"Stained glass is a dyed variant of the glass block.","history":[{"version":"2.0","status":"added","notes":"Added \"tinted glass\"."},{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass."}],"colors":{"primary":"#e5e533","dominant_hex":"#e4e434","average_hex":"#e5e533","hue_group":"yellow","lightness":0.549,"saturation":0.7739,"palette":["#e4e434"],"color_groups":[{"hex":"#e4e434","weight":1.0,"lightness":0.549,"saturation":0.7652,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/yellow_stained_glass.png","family":"yellow_stained_glass","relations":[{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jack_o_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:yellow_stained_glass_pane","label":"Palette proche: Yellow Stained Glass Pane","confidence":0.94},{"type":"color_neighbors","target":"minecraft:yellow_concrete_powder","label":"Palette proche: Yellow Concrete Powder","confidence":0.864},{"type":"color_neighbors","target":"minecraft:horn_coral_block","label":"Palette proche: Horn Coral Block","confidence":0.859},{"type":"color_neighbors","target":"minecraft:horn_coral","label":"Palette proche: Horn Coral","confidence":0.834},{"type":"color_neighbors","target":"minecraft:sponge","label":"Palette proche: Sponge","confidence":0.833},{"type":"color_neighbors","target":"minecraft:horn_coral_fan","label":"Palette proche: Horn Coral Fan","confidence":0.83},{"type":"color_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Palette proche: Horn Coral Wall Fan","confidence":0.83},{"type":"color_neighbors","target":"minecraft:wet_sponge","label":"Palette proche: Wet Sponge","confidence":0.764},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.743},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.743},{"type":"color_neighbors","target":"minecraft:bamboo_fence_gate","label":"Palette proche: Bamboo Fence Gate","confidence":0.731},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.722},{"type":"color_bridge","target":"minecraft:resin_brick_slab","label":"Pont de nuance par palette: Resin Brick Slab","confidence":0.663},{"type":"color_bridge","target":"minecraft:resin_brick_stairs","label":"Pont de nuance par palette: Resin Brick Stairs","confidence":0.663},{"type":"color_bridge","target":"minecraft:resin_brick_wall","label":"Pont de nuance par palette: Resin Brick Wall","confidence":0.663},{"type":"color_bridge","target":"minecraft:resin_bricks","label":"Pont de nuance par palette: Resin Bricks","confidence":0.663},{"type":"color_bridge","target":"minecraft:chiseled_resin_bricks","label":"Pont de nuance par palette: Chiseled Resin Bricks","confidence":0.656},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.58},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.58},{"type":"color_analogous","target":"minecraft:yellow_stained_glass_pane","label":"Couleurs analogues: Yellow Stained Glass Pane","confidence":0.96},{"type":"color_analogous","target":"minecraft:sponge","label":"Couleurs analogues: Sponge","confidence":0.952},{"type":"color_analogous","target":"minecraft:acacia_sapling","label":"Couleurs analogues: Acacia Sapling","confidence":0.932},{"type":"color_analogous","target":"minecraft:potted_acacia_sapling","label":"Couleurs analogues: Potted Acacia Sapling","confidence":0.932},{"type":"color_analogous","target":"minecraft:cocoa","label":"Couleurs analogues: Cocoa","confidence":0.931},{"type":"color_analogous","target":"minecraft:turtle_egg","label":"Couleurs analogues: Turtle Egg","confidence":0.908},{"type":"color_analogous","target":"minecraft:end_stone","label":"Couleurs analogues: End Stone","confidence":0.899},{"type":"color_analogous","target":"minecraft:wet_sponge","label":"Couleurs analogues: Wet Sponge","confidence":0.869},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.934},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.933},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.902},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.895},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.895},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.849},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.605},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.584},{"type":"color_triad","target":"minecraft:bubble_coral","label":"Harmonie triadique: Bubble Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_fan","label":"Harmonie triadique: Bubble Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie triadique: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_candle","label":"Harmonie triadique: Cyan Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_wart_block","label":"Harmonie triadique: Warped Wart Block","confidence":0.96},{"type":"color_triad","target":"minecraft:snow","label":"Harmonie triadique: Snow","confidence":0.96},{"type":"color_triad","target":"minecraft:snow_block","label":"Harmonie triadique: Snow Block","confidence":0.96},{"type":"color_triad","target":"minecraft:powder_snow","label":"Harmonie triadique: Powder Snow","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_log","label":"Harmonie carree: Cherry Log","confidence":0.958},{"type":"color_square","target":"minecraft:cherry_wood","label":"Harmonie carree: Cherry Wood","confidence":0.958},{"type":"color_square","target":"minecraft:oxidized_copper_lantern","label":"Harmonie carree: Oxidized Copper Lantern","confidence":0.858},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie carree: Waxed Oxidized Copper Lantern","confidence":0.858},{"type":"color_square","target":"minecraft:torchflower_crop","label":"Harmonie carree: Torchflower Crop","confidence":0.855},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.822},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.808},{"type":"color_square","target":"minecraft:crimson_button","label":"Harmonie carree: Crimson Button","confidence":0.774},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_pressure_plate","label":"Contraste clair sombre: Dark Oak Pressure Plate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_sign","label":"Contraste clair sombre: Dark Oak Sign","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_slab","label":"Contraste clair sombre: Dark Oak Slab","confidence":0.55}],"category":"building"},{"id":"minecraft:yellow_stained_glass_pane","name":"Yellow Stained Glass Pane","entry_type":"block","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","history":[{"version":"1.7.2 13w41a","status":"added","notes":"Added stained glass panes."}],"colors":{"primary":"#dddd31","dominant_hex":"#dcdc34","average_hex":"#dddd31","hue_group":"yellow","lightness":0.5294,"saturation":0.7167,"palette":["#dcdc34","#e4e434","#d4d42c"],"color_groups":[{"hex":"#dcdc34","weight":0.375,"lightness":0.5333,"saturation":0.7059,"hue_group":"yellow"},{"hex":"#e4e434","weight":0.375,"lightness":0.549,"saturation":0.7652,"hue_group":"yellow"},{"hex":"#d4d42c","weight":0.25,"lightness":0.502,"saturation":0.6614,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/yellow_stained_glass_pane_top.png","family":"yellow_stained_glass_pane","relations":[{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jack_o_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:fire","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_candle","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:yellow_stained_glass","label":"Palette proche: Yellow Stained Glass","confidence":0.94},{"type":"color_neighbors","target":"minecraft:horn_coral_block","label":"Palette proche: Horn Coral Block","confidence":0.887},{"type":"color_neighbors","target":"minecraft:horn_coral_fan","label":"Palette proche: Horn Coral Fan","confidence":0.872},{"type":"color_neighbors","target":"minecraft:horn_coral_wall_fan","label":"Palette proche: Horn Coral Wall Fan","confidence":0.872},{"type":"color_neighbors","target":"minecraft:horn_coral","label":"Palette proche: Horn Coral","confidence":0.869},{"type":"color_neighbors","target":"minecraft:sponge","label":"Palette proche: Sponge","confidence":0.856},{"type":"color_neighbors","target":"minecraft:yellow_concrete_powder","label":"Palette proche: Yellow Concrete Powder","confidence":0.84},{"type":"color_neighbors","target":"minecraft:wet_sponge","label":"Palette proche: Wet Sponge","confidence":0.816},{"type":"color_neighbors","target":"minecraft:bamboo_fence_gate","label":"Palette proche: Bamboo Fence Gate","confidence":0.764},{"type":"color_neighbors","target":"minecraft:hay_block","label":"Palette proche: Hay Block","confidence":0.757},{"type":"color_neighbors","target":"minecraft:yellow_candle","label":"Palette proche: Yellow Candle","confidence":0.755},{"type":"color_neighbors","target":"minecraft:bamboo_fence","label":"Palette proche: Bamboo Fence","confidence":0.754},{"type":"color_bridge","target":"minecraft:resin_brick_slab","label":"Pont de nuance par palette: Resin Brick Slab","confidence":0.644},{"type":"color_bridge","target":"minecraft:resin_brick_stairs","label":"Pont de nuance par palette: Resin Brick Stairs","confidence":0.644},{"type":"color_bridge","target":"minecraft:resin_brick_wall","label":"Pont de nuance par palette: Resin Brick Wall","confidence":0.644},{"type":"color_bridge","target":"minecraft:resin_bricks","label":"Pont de nuance par palette: Resin Bricks","confidence":0.644},{"type":"color_bridge","target":"minecraft:chiseled_resin_bricks","label":"Pont de nuance par palette: Chiseled Resin Bricks","confidence":0.639},{"type":"color_bridge","target":"minecraft:light_gray_carpet","label":"Pont de nuance par palette: Light Gray Carpet","confidence":0.591},{"type":"color_bridge","target":"minecraft:light_gray_wool","label":"Pont de nuance par palette: Light Gray Wool","confidence":0.591},{"type":"color_bridge","target":"minecraft:light_gray_shulker_box","label":"Pont de nuance par palette: Light Gray Shulker Box","confidence":0.586},{"type":"color_bridge","target":"minecraft:jungle_leaves","label":"Pont de nuance par palette: Jungle Leaves","confidence":0.583},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.58},{"type":"color_analogous","target":"minecraft:yellow_stained_glass","label":"Couleurs analogues: Yellow Stained Glass","confidence":0.96},{"type":"color_analogous","target":"minecraft:sponge","label":"Couleurs analogues: Sponge","confidence":0.956},{"type":"color_analogous","target":"minecraft:acacia_sapling","label":"Couleurs analogues: Acacia Sapling","confidence":0.936},{"type":"color_analogous","target":"minecraft:potted_acacia_sapling","label":"Couleurs analogues: Potted Acacia Sapling","confidence":0.936},{"type":"color_analogous","target":"minecraft:cocoa","label":"Couleurs analogues: Cocoa","confidence":0.935},{"type":"color_analogous","target":"minecraft:turtle_egg","label":"Couleurs analogues: Turtle Egg","confidence":0.904},{"type":"color_analogous","target":"minecraft:end_stone","label":"Couleurs analogues: End Stone","confidence":0.895},{"type":"color_analogous","target":"minecraft:bamboo_sapling","label":"Couleurs analogues: Bamboo Sapling","confidence":0.873},{"type":"color_complement","target":"minecraft:blue_concrete","label":"Contraste complementaire: Blue Concrete","confidence":0.94},{"type":"color_complement","target":"minecraft:blue_shulker_box","label":"Contraste complementaire: Blue Shulker Box","confidence":0.939},{"type":"color_complement","target":"minecraft:blue_concrete_powder","label":"Contraste complementaire: Blue Concrete Powder","confidence":0.907},{"type":"color_complement","target":"minecraft:blue_carpet","label":"Contraste complementaire: Blue Carpet","confidence":0.901},{"type":"color_complement","target":"minecraft:blue_wool","label":"Contraste complementaire: Blue Wool","confidence":0.901},{"type":"color_complement","target":"minecraft:black_candle","label":"Contraste complementaire: Black Candle","confidence":0.855},{"type":"color_complement","target":"minecraft:blue_candle","label":"Contraste complementaire: Blue Candle","confidence":0.611},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.59},{"type":"color_triad","target":"minecraft:bubble_coral","label":"Harmonie triadique: Bubble Coral","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_fan","label":"Harmonie triadique: Bubble Coral Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:bubble_coral_wall_fan","label":"Harmonie triadique: Bubble Coral Wall Fan","confidence":0.96},{"type":"color_triad","target":"minecraft:warped_wart_block","label":"Harmonie triadique: Warped Wart Block","confidence":0.96},{"type":"color_triad","target":"minecraft:cyan_candle","label":"Harmonie triadique: Cyan Candle","confidence":0.96},{"type":"color_triad","target":"minecraft:snow","label":"Harmonie triadique: Snow","confidence":0.96},{"type":"color_triad","target":"minecraft:snow_block","label":"Harmonie triadique: Snow Block","confidence":0.96},{"type":"color_triad","target":"minecraft:chorus_plant","label":"Harmonie triadique: Chorus Plant","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_log","label":"Harmonie carree: Cherry Log","confidence":0.96},{"type":"color_square","target":"minecraft:cherry_wood","label":"Harmonie carree: Cherry Wood","confidence":0.96},{"type":"color_square","target":"minecraft:oxidized_copper_lantern","label":"Harmonie carree: Oxidized Copper Lantern","confidence":0.863},{"type":"color_square","target":"minecraft:waxed_oxidized_copper_lantern","label":"Harmonie carree: Waxed Oxidized Copper Lantern","confidence":0.863},{"type":"color_square","target":"minecraft:torchflower_crop","label":"Harmonie carree: Torchflower Crop","confidence":0.859},{"type":"color_square","target":"minecraft:spore_blossom","label":"Harmonie carree: Spore Blossom","confidence":0.826},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.804},{"type":"color_square","target":"minecraft:crimson_button","label":"Harmonie carree: Crimson Button","confidence":0.778},{"type":"value_contrast","target":"minecraft:spruce_log","label":"Contraste clair sombre: Spruce Log","confidence":0.55},{"type":"value_contrast","target":"minecraft:spruce_wood","label":"Contraste clair sombre: Spruce Wood","confidence":0.55},{"type":"value_contrast","target":"minecraft:potted_wither_rose","label":"Contraste clair sombre: Potted Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:wither_rose","label":"Contraste clair sombre: Wither Rose","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:yellow_terracotta","name":"Yellow Terracotta","entry_type":"block","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","history":[{"version":"1.6.1 13w19a","status":"added","notes":"Added stained clay."},{"version":"26.2 snap 1","status":"added","notes":"Added sulfur cubes , which have the ability to absorb stained terracotta, providing the football/regular effect to the mob."}],"colors":{"primary":"#ba8523","dominant_hex":"#bc8424","average_hex":"#ba8523","hue_group":"yellow","lightness":0.4333,"saturation":0.6833,"palette":["#bc8424","#bc8c24","#b48423","#c48c25","#bc841c","#bc842c"],"color_groups":[{"hex":"#bc8424","weight":0.7578,"lightness":0.4392,"saturation":0.6786,"hue_group":"yellow"},{"hex":"#bc8c24","weight":0.1484,"lightness":0.4392,"saturation":0.6786,"hue_group":"yellow"},{"hex":"#b48423","weight":0.0586,"lightness":0.4216,"saturation":0.6744,"hue_group":"yellow"},{"hex":"#c48c25","weight":0.0234,"lightness":0.4569,"saturation":0.6824,"hue_group":"yellow"},{"hex":"#bc841c","weight":0.0078,"lightness":0.4235,"saturation":0.7407,"hue_group":"yellow"},{"hex":"#bc842c","weight":0.0039,"lightness":0.4549,"saturation":0.6207,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/yellow_terracotta.png","family":"yellow_terracotta","relations":[{"type":"visual_neighbors","target":"minecraft:bell","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hay_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_wool","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:potted_dandelion","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass_pane","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pumpkin","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:jack_o_lantern","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:melon","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone_slab","label":"Palette proche: Cut Red Sandstone Slab","confidence":0.873},{"type":"color_neighbors","target":"minecraft:red_sandstone_slab","label":"Palette proche: Red Sandstone Slab","confidence":0.873},{"type":"color_neighbors","target":"minecraft:red_sandstone_stairs","label":"Palette proche: Red Sandstone Stairs","confidence":0.873},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone","label":"Palette proche: Smooth Red Sandstone","confidence":0.873},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_slab","label":"Palette proche: Smooth Red Sandstone Slab","confidence":0.873},{"type":"color_neighbors","target":"minecraft:smooth_red_sandstone_stairs","label":"Palette proche: Smooth Red Sandstone Stairs","confidence":0.873},{"type":"color_neighbors","target":"minecraft:red_sand","label":"Palette proche: Red Sand","confidence":0.872},{"type":"color_neighbors","target":"minecraft:cut_red_sandstone","label":"Palette proche: Cut Red Sandstone","confidence":0.854},{"type":"color_neighbors","target":"minecraft:red_sandstone","label":"Palette proche: Red Sandstone","confidence":0.842},{"type":"color_neighbors","target":"minecraft:red_sandstone_wall","label":"Palette proche: Red Sandstone Wall","confidence":0.842},{"type":"color_neighbors","target":"minecraft:chiseled_red_sandstone","label":"Palette proche: Chiseled Red Sandstone","confidence":0.836},{"type":"color_neighbors","target":"minecraft:yellow_candle","label":"Palette proche: Yellow Candle","confidence":0.836},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.739},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.698},{"type":"color_bridge","target":"minecraft:red_mushroom_block","label":"Pont de nuance par palette: Red Mushroom Block","confidence":0.694},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.686},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.67},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.67},{"type":"color_bridge","target":"minecraft:stonecutter","label":"Pont de nuance par palette: Stonecutter","confidence":0.668},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.66},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.66},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.658},{"type":"color_analogous","target":"minecraft:torch","label":"Couleurs analogues: Torch","confidence":0.96},{"type":"color_analogous","target":"minecraft:wall_torch","label":"Couleurs analogues: Wall Torch","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.96},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.96},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.954},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.948},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.92},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.914},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.832},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.812},{"type":"color_triad","target":"minecraft:oxidized_lightning_rod","label":"Harmonie triadique: Oxidized Lightning Rod","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_lightning_rod","label":"Harmonie triadique: Waxed Oxidized Lightning Rod","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_door","label":"Harmonie triadique: Oxidized Copper Door","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_door","label":"Harmonie triadique: Waxed Oxidized Copper Door","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chain","label":"Harmonie triadique: Oxidized Copper Chain","confidence":0.943},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chain","label":"Harmonie triadique: Waxed Oxidized Copper Chain","confidence":0.943},{"type":"color_triad","target":"minecraft:purple_concrete_powder","label":"Harmonie triadique: Purple Concrete Powder","confidence":0.927},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.927},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.824},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.823},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.818},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.818},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.794},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.791},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.76},{"type":"value_contrast","target":"minecraft:ochre_froglight","label":"Contraste clair sombre: Ochre Froglight","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_candle_cake","label":"Contraste clair sombre: Black Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:blue_candle_cake","label":"Contraste clair sombre: Blue Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:brown_candle_cake","label":"Contraste clair sombre: Brown Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cake","label":"Contraste clair sombre: Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:candle_cake","label":"Contraste clair sombre: Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:cyan_candle_cake","label":"Contraste clair sombre: Cyan Candle Cake","confidence":0.55},{"type":"value_contrast","target":"minecraft:gray_candle_cake","label":"Contraste clair sombre: Gray Candle Cake","confidence":0.55}],"category":"building"},{"id":"minecraft:yellow_wall_banner","name":"Yellow Wall Banner","entry_type":"block","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","history":[{"version":"14w30a","status":"added","notes":"Added banners."},{"version":"14w30c","status":"added","notes":"Added four additional patterns: Cross (+), Border, Curly Border and Thing (Mojang logo)."},{"version":"14w31a","status":"added","notes":"Added two additional patterns: Inverted Halves and Base Gradient."}],"colors":{"primary":"#a2834f","dominant_hex":"#9a804a","average_hex":"#a2834f","hue_group":"yellow","lightness":0.4725,"saturation":0.3444,"palette":["#9a804a","#bc945c","#ac8c54","#c49c64","#64542c","#7c6434"],"color_groups":[{"hex":"#9a804a","weight":0.2539,"lightness":0.4471,"saturation":0.3509,"hue_group":"yellow"},{"hex":"#bc945c","weight":0.2031,"lightness":0.549,"saturation":0.4174,"hue_group":"yellow"},{"hex":"#ac8c54","weight":0.1875,"lightness":0.502,"saturation":0.3465,"hue_group":"yellow"},{"hex":"#c49c64","weight":0.1484,"lightness":0.5804,"saturation":0.4486,"hue_group":"yellow"},{"hex":"#64542c","weight":0.1133,"lightness":0.2824,"saturation":0.3889,"hue_group":"yellow"},{"hex":"#7c6434","weight":0.0938,"lightness":0.3451,"saturation":0.4091,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/oak_planks.png","family":"yellow_wall_banner","relations":[{"type":"visual_neighbors","target":"minecraft:black_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:black_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:blue_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brown_wall_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:chest","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_banner","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cyan_bed","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:black_banner","label":"Palette proche: Black Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_bed","label":"Palette proche: Black Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:black_wall_banner","label":"Palette proche: Black Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_banner","label":"Palette proche: Blue Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_bed","label":"Palette proche: Blue Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:blue_wall_banner","label":"Palette proche: Blue Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_banner","label":"Palette proche: Brown Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_bed","label":"Palette proche: Brown Bed","confidence":0.94},{"type":"color_neighbors","target":"minecraft:brown_wall_banner","label":"Palette proche: Brown Wall Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:chest","label":"Palette proche: Chest","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_banner","label":"Palette proche: Cyan Banner","confidence":0.94},{"type":"color_neighbors","target":"minecraft:cyan_bed","label":"Palette proche: Cyan Bed","confidence":0.94},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.876},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.846},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.844},{"type":"color_bridge","target":"minecraft:rail","label":"Pont de nuance par sous-ton: Rail","confidence":0.831},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.831},{"type":"color_bridge","target":"minecraft:exposed_copper_bars","label":"Pont de nuance par sous-ton: Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bars","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bars","confidence":0.831},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.816},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.812},{"type":"color_analogous","target":"minecraft:black_banner","label":"Couleurs analogues: Black Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_bed","label":"Couleurs analogues: Black Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:black_wall_banner","label":"Couleurs analogues: Black Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_banner","label":"Couleurs analogues: Blue Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_bed","label":"Couleurs analogues: Blue Bed","confidence":0.96},{"type":"color_analogous","target":"minecraft:blue_wall_banner","label":"Couleurs analogues: Blue Wall Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_banner","label":"Couleurs analogues: Brown Banner","confidence":0.96},{"type":"color_analogous","target":"minecraft:brown_bed","label":"Couleurs analogues: Brown Bed","confidence":0.96},{"type":"color_complement","target":"minecraft:spawner","label":"Contraste complementaire: Spawner","confidence":0.96},{"type":"color_complement","target":"minecraft:blue_ice","label":"Contraste complementaire: Blue Ice","confidence":0.925},{"type":"color_complement","target":"minecraft:frosted_ice","label":"Contraste complementaire: Frosted Ice","confidence":0.917},{"type":"color_complement","target":"minecraft:packed_ice","label":"Contraste complementaire: Packed Ice","confidence":0.9},{"type":"color_complement","target":"minecraft:ice","label":"Contraste complementaire: Ice","confidence":0.893},{"type":"color_complement","target":"minecraft:lapis_block","label":"Contraste complementaire: Lapis Block","confidence":0.884},{"type":"color_complement","target":"minecraft:light_blue_stained_glass_pane","label":"Contraste complementaire: Light Blue Stained Glass Pane","confidence":0.844},{"type":"color_complement","target":"minecraft:light_blue_stained_glass","label":"Contraste complementaire: Light Blue Stained Glass","confidence":0.827},{"type":"color_triad","target":"minecraft:oxidized_copper_grate","label":"Harmonie triadique: Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_grate","label":"Harmonie triadique: Waxed Oxidized Copper Grate","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper","label":"Harmonie triadique: Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_chest","label":"Harmonie triadique: Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:oxidized_copper_golem_statue","label":"Harmonie triadique: Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper","label":"Harmonie triadique: Waxed Oxidized Copper","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_chest","label":"Harmonie triadique: Waxed Oxidized Copper Chest","confidence":0.96},{"type":"color_triad","target":"minecraft:waxed_oxidized_copper_golem_statue","label":"Harmonie triadique: Waxed Oxidized Copper Golem Statue","confidence":0.96},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.931},{"type":"color_square","target":"minecraft:magenta_carpet","label":"Harmonie carree: Magenta Carpet","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_wool","label":"Harmonie carree: Magenta Wool","confidence":0.879},{"type":"color_square","target":"minecraft:magenta_shulker_box","label":"Harmonie carree: Magenta Shulker Box","confidence":0.878},{"type":"color_square","target":"minecraft:magenta_concrete","label":"Harmonie carree: Magenta Concrete","confidence":0.873},{"type":"color_square","target":"minecraft:magenta_concrete_powder","label":"Harmonie carree: Magenta Concrete Powder","confidence":0.857},{"type":"color_square","target":"minecraft:magenta_candle","label":"Harmonie carree: Magenta Candle","confidence":0.841},{"type":"color_square","target":"minecraft:wheat","label":"Harmonie carree: Wheat","confidence":0.789},{"type":"value_contrast","target":"minecraft:chiseled_quartz_block","label":"Contraste clair sombre: Chiseled Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_pillar","label":"Contraste clair sombre: Quartz Pillar","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_block","label":"Contraste clair sombre: Quartz Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_slab","label":"Contraste clair sombre: Quartz Slab","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_stairs","label":"Contraste clair sombre: Quartz Stairs","confidence":0.55},{"type":"value_contrast","target":"minecraft:quartz_bricks","label":"Contraste clair sombre: Quartz Bricks","confidence":0.55},{"type":"value_contrast","target":"minecraft:bone_block","label":"Contraste clair sombre: Bone Block","confidence":0.55},{"type":"value_contrast","target":"minecraft:black_terracotta","label":"Contraste clair sombre: Black Terracotta","confidence":0.55}],"category":"decorative"},{"id":"minecraft:yellow_wool","name":"Yellow Wool","entry_type":"block","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","history":[{"version":"0.0.20a","status":"added","notes":"Added cloth in 16 colors, with a different spectrum than the current one."},{"version":"0.0.22a","status":"added","notes":"Added sounds . Cloth uses grass sounds for breaking and footsteps."},{"version":"0.28","status":"added","notes":"Added sheep , which drop white cloth."}],"colors":{"primary":"#f9c628","dominant_hex":"#f4bc1c","average_hex":"#f9c628","hue_group":"yellow","lightness":0.5667,"saturation":0.9457,"palette":["#f4bc1c","#fccc2b","#fcd435","#f9c424","#f4b418","#fcdc3c"],"color_groups":[{"hex":"#f4bc1c","weight":0.2148,"lightness":0.5333,"saturation":0.9076,"hue_group":"yellow"},{"hex":"#fccc2b","weight":0.1953,"lightness":0.5784,"saturation":0.9721,"hue_group":"yellow"},{"hex":"#fcd435","weight":0.1914,"lightness":0.598,"saturation":0.9707,"hue_group":"yellow"},{"hex":"#f9c424","weight":0.1797,"lightness":0.5588,"saturation":0.9467,"hue_group":"yellow"},{"hex":"#f4b418","weight":0.1367,"lightness":0.5255,"saturation":0.9091,"hue_group":"yellow"},{"hex":"#fcdc3c","weight":0.082,"lightness":0.6118,"saturation":0.9697,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/yellow_wool.png","family":"yellow_wool","relations":[{"type":"visual_neighbors","target":"minecraft:yellow_carpet","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_shulker_box","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honey_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_stained_glass","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:honeycomb_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:orange_concrete_powder","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_gold_block","label":"Shared hue group: yellow","confidence":0.55},{"type":"color_neighbors","target":"minecraft:yellow_carpet","label":"Palette proche: Yellow Carpet","confidence":0.94},{"type":"color_neighbors","target":"minecraft:yellow_shulker_box","label":"Palette proche: Yellow Shulker Box","confidence":0.94},{"type":"color_neighbors","target":"minecraft:yellow_concrete","label":"Palette proche: Yellow Concrete","confidence":0.938},{"type":"color_neighbors","target":"minecraft:gold_block","label":"Palette proche: Gold Block","confidence":0.929},{"type":"color_neighbors","target":"minecraft:light_weighted_pressure_plate","label":"Palette proche: Light Weighted Pressure Plate","confidence":0.929},{"type":"color_neighbors","target":"minecraft:honey_block","label":"Palette proche: Honey Block","confidence":0.908},{"type":"color_neighbors","target":"minecraft:yellow_concrete_powder","label":"Palette proche: Yellow Concrete Powder","confidence":0.873},{"type":"color_neighbors","target":"minecraft:yellow_glazed_terracotta","label":"Palette proche: Yellow Glazed Terracotta","confidence":0.867},{"type":"color_neighbors","target":"minecraft:raw_gold_block","label":"Palette proche: Raw Gold Block","confidence":0.864},{"type":"color_neighbors","target":"minecraft:honeycomb_block","label":"Palette proche: Honeycomb Block","confidence":0.854},{"type":"color_neighbors","target":"minecraft:yellow_candle","label":"Palette proche: Yellow Candle","confidence":0.827},{"type":"color_neighbors","target":"minecraft:bell","label":"Palette proche: Bell","confidence":0.823},{"type":"color_bridge","target":"minecraft:gold_ore","label":"Pont de nuance par sous-ton: Gold Ore","confidence":0.608},{"type":"color_bridge","target":"minecraft:orange_tulip","label":"Pont de nuance par palette: Orange Tulip","confidence":0.604},{"type":"color_bridge","target":"minecraft:potted_orange_tulip","label":"Pont de nuance par palette: Potted Orange Tulip","confidence":0.604},{"type":"color_bridge","target":"minecraft:deepslate_gold_ore","label":"Pont de nuance par sous-ton: Deepslate Gold Ore","confidence":0.58},{"type":"color_bridge","target":"minecraft:loom","label":"Pont de nuance par sous-ton: Loom","confidence":0.58},{"type":"color_bridge","target":"minecraft:tripwire_hook","label":"Pont de nuance par sous-ton: Tripwire Hook","confidence":0.58},{"type":"color_bridge","target":"minecraft:white_glazed_terracotta","label":"Pont de nuance par sous-ton: White Glazed Terracotta","confidence":0.58},{"type":"color_bridge","target":"minecraft:brewing_stand","label":"Pont de nuance par sous-ton: Brewing Stand","confidence":0.58},{"type":"color_bridge","target":"minecraft:conduit","label":"Pont de nuance par sous-ton: Conduit","confidence":0.58},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.58},{"type":"color_analogous","target":"minecraft:yellow_carpet","label":"Couleurs analogues: Yellow Carpet","confidence":0.96},{"type":"color_analogous","target":"minecraft:yellow_shulker_box","label":"Couleurs analogues: Yellow Shulker Box","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_hanging_sign","label":"Couleurs analogues: Birch Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_wall_hanging_sign","label":"Couleurs analogues: Birch Wall Hanging Sign","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_log","label":"Couleurs analogues: Stripped Birch Log","confidence":0.96},{"type":"color_analogous","target":"minecraft:stripped_birch_wood","label":"Couleurs analogues: Stripped Birch Wood","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_button","label":"Couleurs analogues: Birch Button","confidence":0.96},{"type":"color_analogous","target":"minecraft:birch_fence","label":"Couleurs analogues: Birch Fence","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral_block","label":"Contraste complementaire: Tube Coral Block","confidence":0.96},{"type":"color_complement","target":"minecraft:tube_coral","label":"Contraste complementaire: Tube Coral","confidence":0.948},{"type":"color_complement","target":"minecraft:tube_coral_fan","label":"Contraste complementaire: Tube Coral Fan","confidence":0.938},{"type":"color_complement","target":"minecraft:tube_coral_wall_fan","label":"Contraste complementaire: Tube Coral Wall Fan","confidence":0.938},{"type":"color_complement","target":"minecraft:blue_stained_glass_pane","label":"Contraste complementaire: Blue Stained Glass Pane","confidence":0.883},{"type":"color_complement","target":"minecraft:blue_stained_glass","label":"Contraste complementaire: Blue Stained Glass","confidence":0.867},{"type":"color_complement","target":"minecraft:blue_glazed_terracotta","label":"Contraste complementaire: Blue Glazed Terracotta","confidence":0.858},{"type":"color_complement","target":"minecraft:black_concrete","label":"Contraste complementaire: Black Concrete","confidence":0.852},{"type":"color_triad","target":"minecraft:magenta_stained_glass","label":"Harmonie triadique: Magenta Stained Glass","confidence":0.912},{"type":"color_triad","target":"minecraft:magenta_stained_glass_pane","label":"Harmonie triadique: Magenta Stained Glass Pane","confidence":0.885},{"type":"color_triad","target":"minecraft:prismarine_brick_slab","label":"Harmonie triadique: Prismarine Brick Slab","confidence":0.828},{"type":"color_triad","target":"minecraft:prismarine_brick_stairs","label":"Harmonie triadique: Prismarine Brick Stairs","confidence":0.828},{"type":"color_triad","target":"minecraft:prismarine_bricks","label":"Harmonie triadique: Prismarine Bricks","confidence":0.828},{"type":"color_triad","target":"minecraft:warped_nylium","label":"Harmonie triadique: Warped Nylium","confidence":0.82},{"type":"color_triad","target":"minecraft:twisting_vines","label":"Harmonie triadique: Twisting Vines","confidence":0.778},{"type":"color_triad","target":"minecraft:nether_sprouts","label":"Harmonie triadique: Nether Sprouts","confidence":0.74},{"type":"color_square","target":"minecraft:emerald_block","label":"Harmonie carree: Emerald Block","confidence":0.903},{"type":"color_square","target":"minecraft:sweet_berry_bush","label":"Harmonie carree: Sweet Berry Bush","confidence":0.901},{"type":"color_square","target":"minecraft:magenta_glazed_terracotta","label":"Harmonie carree: Magenta Glazed Terracotta","confidence":0.698},{"type":"color_square","target":"minecraft:brain_coral","label":"Harmonie carree: Brain Coral","confidence":0.586},{"type":"color_square","target":"minecraft:brain_coral_fan","label":"Harmonie carree: Brain Coral Fan","confidence":0.578},{"type":"color_square","target":"minecraft:brain_coral_wall_fan","label":"Harmonie carree: Brain Coral Wall Fan","confidence":0.578},{"type":"color_square","target":"minecraft:brain_coral_block","label":"Harmonie carree: Brain Coral Block","confidence":0.574},{"type":"color_square","target":"minecraft:pink_petals","label":"Harmonie carree: Pink Petals","confidence":0.568},{"type":"value_contrast","target":"minecraft:dark_oak_trapdoor","label":"Contraste clair sombre: Dark Oak Trapdoor","confidence":0.55},{"type":"value_contrast","target":"minecraft:weeping_vines","label":"Contraste clair sombre: Weeping Vines","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_door","label":"Contraste clair sombre: Dark Oak Door","confidence":0.55},{"type":"value_contrast","target":"minecraft:cartography_table","label":"Contraste clair sombre: Cartography Table","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_button","label":"Contraste clair sombre: Dark Oak Button","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence","label":"Contraste clair sombre: Dark Oak Fence","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_fence_gate","label":"Contraste clair sombre: Dark Oak Fence Gate","confidence":0.55},{"type":"value_contrast","target":"minecraft:dark_oak_planks","label":"Contraste clair sombre: Dark Oak Planks","confidence":0.55}],"category":"decorative"},{"id":"minecraft:zoglin","name":"Zoglin","entry_type":"mob","description":"A zoglin is an undead hostile mob created when a hoglin is out of the Nether for too long. It never retreats or flees, and attacks players and almost all non-zoglin mobs indiscriminately, using the same tusk attack as its non-zombified counterpart.","history":[{"version":"1.16 20w14a","status":"added","notes":"Added zoglins."},{"version":"20w18a","status":"added","notes":"added to allow summoning and correct saving of baby zoglins."}],"colors":{"primary":"#bc7a73","dominant_hex":"#be655f","average_hex":"#bc7a73","hue_group":"red","lightness":0.5941,"saturation":0.3527,"palette":["#be655f","#ec9894","#444c32","#cbc5c6","#dc746c","#d87d77"],"color_groups":[{"hex":"#be655f","weight":0.3075,"lightness":0.5588,"saturation":0.4222,"hue_group":"red"},{"hex":"#ec9894","weight":0.1788,"lightness":0.7529,"saturation":0.6984,"hue_group":"red"},{"hex":"#444c32","weight":0.1541,"lightness":0.2471,"saturation":0.2063,"hue_group":"yellow"},{"hex":"#cbc5c6","weight":0.1312,"lightness":0.7843,"saturation":0.0545,"hue_group":"neutral"},{"hex":"#dc746c","weight":0.1159,"lightness":0.6431,"saturation":0.6154,"hue_group":"red"},{"hex":"#d87d77","weight":0.1125,"lightness":0.6569,"saturation":0.5543,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/hoglin/zoglin.png","family":"zoglin","relations":[{"type":"visual_neighbors","target":"minecraft:nautilus_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pig/cold","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/chestnut","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:zoglin_spawn_egg","name":"Zoglin Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#a67970","dominant_hex":"#dcbbb9","average_hex":"#a67970","hue_group":"red","lightness":0.5451,"saturation":0.2328,"palette":["#dcbbb9","#6f795d","#a04a4a","#e77e76","#434943","#be6e5e"],"color_groups":[{"hex":"#dcbbb9","weight":0.2475,"lightness":0.7941,"saturation":0.3333,"hue_group":"red"},{"hex":"#6f795d","weight":0.1869,"lightness":0.4196,"saturation":0.1308,"hue_group":"yellow"},{"hex":"#a04a4a","weight":0.1818,"lightness":0.4588,"saturation":0.3675,"hue_group":"red"},{"hex":"#e77e76","weight":0.1616,"lightness":0.6843,"saturation":0.7019,"hue_group":"red"},{"hex":"#434943","weight":0.1465,"lightness":0.2745,"saturation":0.0429,"hue_group":"neutral"},{"hex":"#be6e5e","weight":0.0758,"lightness":0.5569,"saturation":0.4248,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/zoglin_spawn_egg.png","family":"zoglin_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:nautilus_shell","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brush","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:raw_iron","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_scute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:pink_dye","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombified_piglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_bucket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:copper_horse_armor","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:zombie","name":"Zombie","entry_type":"mob","description":"A zombie is a common undead type of hostile mob that deals melee damage and is a source of rotten flesh, which it drops upon death.","history":[{"version":"0.24_SURVIVAL_TEST","status":"added","notes":"Added zombies."},{"version":"wiki-history","status":"added","notes":"added to Minecraft ."},{"version":"20100219","status":"added","notes":"added in Minecraft , Notch confessed [ 2 ] that he made zombies drop feathers because he had no idea what they should have dropped when killed."}],"colors":{"primary":"#316b63","dominant_hex":"#416d2f","average_hex":"#316b63","hue_group":"cyan","lightness":0.3059,"saturation":0.3718,"palette":["#416d2f","#04a4a4","#273f75","#6a8559","#473fab","#39442e"],"color_groups":[{"hex":"#416d2f","weight":0.3691,"lightness":0.3059,"saturation":0.3974,"hue_group":"green"},{"hex":"#04a4a4","weight":0.2247,"lightness":0.3294,"saturation":0.9524,"hue_group":"cyan"},{"hex":"#273f75","weight":0.1816,"lightness":0.3059,"saturation":0.5,"hue_group":"blue"},{"hex":"#6a8559","weight":0.0878,"lightness":0.4353,"saturation":0.1982,"hue_group":"green"},{"hex":"#473fab","weight":0.0752,"lightness":0.4588,"saturation":0.4615,"hue_group":"blue"},{"hex":"#39442e","weight":0.0617,"lightness":0.2235,"saturation":0.193,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/zombie/zombie.png","family":"zombie","relations":[{"type":"visual_neighbors","target":"minecraft:illusioner","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_cyan","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oxidized_copper_golem","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cave_spider","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_bioluminescent_layer","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_light_blue","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_1","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_pulsating_spots_2","label":"Shared hue group: cyan","confidence":0.55}],"category":"mob"},{"id":"minecraft:zombie_head","name":"Zombie Head","entry_type":"block","description":"A zombie head is the head of a zombie in the form of a block. It can only be obtained by killing a zombie using a charged creeper's explosion.","history":[{"version":"1.4.2 12w36a","status":"added","notes":"Added zombie heads, obtainable only from the Creative inventory ."}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"zombie_head","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":"decorative"},{"id":"minecraft:zombie_horse","name":"Zombie Horse","entry_type":"mob","description":"A zombie horse is an undead variant of the horse. It rarely spawns in dark areas as a hostile mob being ridden and controlled by a zombie horseman wielding an iron spear. It becomes passive once separated from the zombie rider.","history":[{"version":"1.6.1 13w16a","status":"added","notes":"Added zombie horses."},{"version":"13w21a","status":"added","notes":"Added new GUI for zombie horses, to control the saddle."},{"version":"13w22a","status":"added","notes":"Added new sound effects for zombie horses."}],"colors":{"primary":"#384728","dominant_hex":"#243528","average_hex":"#384728","hue_group":"yellow","lightness":0.2176,"saturation":0.2793,"palette":["#243528","#3c502c","#34442c","#6a793f","#12150b","#4c5c2c"],"color_groups":[{"hex":"#243528","weight":0.2453,"lightness":0.1745,"saturation":0.191,"hue_group":"green"},{"hex":"#3c502c","weight":0.2038,"lightness":0.2431,"saturation":0.2903,"hue_group":"green"},{"hex":"#34442c","weight":0.1628,"lightness":0.2196,"saturation":0.2143,"hue_group":"green"},{"hex":"#6a793f","weight":0.1362,"lightness":0.3608,"saturation":0.3152,"hue_group":"yellow"},{"hex":"#12150b","weight":0.1303,"lightness":0.0627,"saturation":0.3125,"hue_group":"yellow"},{"hex":"#4c5c2c","weight":0.1217,"lightness":0.2667,"saturation":0.3529,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/horse/horse_zombie.png","family":"zombie_horse","relations":[{"type":"visual_neighbors","target":"minecraft:camel_husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_villager","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/cold","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:happy_ghast_ropes","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:zombie_horse_spawn_egg","name":"Zombie Horse Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#2c3920","dominant_hex":"#1d2415","average_hex":"#2c3920","hue_group":"green","lightness":0.1745,"saturation":0.2809,"palette":["#1d2415","#41572c","#243c2c","#0e110c","#67753b","#34442c"],"color_groups":[{"hex":"#1d2415","weight":0.303,"lightness":0.1118,"saturation":0.2632,"hue_group":"yellow"},{"hex":"#41572c","weight":0.1919,"lightness":0.2569,"saturation":0.3282,"hue_group":"green"},{"hex":"#243c2c","weight":0.1818,"lightness":0.1882,"saturation":0.25,"hue_group":"green"},{"hex":"#0e110c","weight":0.1515,"lightness":0.0569,"saturation":0.1724,"hue_group":"green"},{"hex":"#67753b","weight":0.0909,"lightness":0.3451,"saturation":0.3295,"hue_group":"yellow"},{"hex":"#34442c","weight":0.0808,"lightness":0.2196,"saturation":0.2143,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/zombie_horse_spawn_egg.png","family":"zombie_horse_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:diamond_pickaxe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_hoe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_axe","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_cat","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_shovel","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_far","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:torchflower_seeds","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ender_eye","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:knowledge_book","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:turtle_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:drowned_spawn_egg","label":"Shared hue group: green","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_spear","label":"Shared hue group: green","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:zombie_nautilus","name":"Zombie Nautilus","entry_type":"mob","description":"A zombie nautilus is an undead variant of the nautilus that spawns being ridden and controlled by a trident-wielding drowned, forming a zombie nautilus jockey. Once separated from the jockey, it behaves like a regular nautilus, but burns in sunlight instead of suffocating while not in water.","history":[{"version":"1.21.11 25w41a","status":"added","notes":"Added zombie nautiluses, along with zombie nautilus jockeys."},{"version":"25w45a","status":"added","notes":"Added coral zombie nautiluses, a variant which spawns in warm oceans in place of temperate zombie nautiluses."},{"version":"wiki-history","status":"added","notes":"Added inventory UI for the zombie nautilus."}],"colors":{"primary":"#818b67","dominant_hex":"#273930","average_hex":"#818b67","hue_group":"yellow","lightness":0.4745,"saturation":0.1488,"palette":["#273930","#617434","#b3b392","#e0e5c9","#938b5e","#c2c5ad"],"color_groups":[{"hex":"#273930","weight":0.245,"lightness":0.1882,"saturation":0.1875,"hue_group":"cyan"},{"hex":"#617434","weight":0.2303,"lightness":0.3294,"saturation":0.381,"hue_group":"yellow"},{"hex":"#b3b392","weight":0.1627,"lightness":0.6373,"saturation":0.1784,"hue_group":"yellow"},{"hex":"#e0e5c9","weight":0.1463,"lightness":0.8431,"saturation":0.35,"hue_group":"yellow"},{"hex":"#938b5e","weight":0.1271,"lightness":0.4725,"saturation":0.2199,"hue_group":"yellow"},{"hex":"#c2c5ad","weight":0.0887,"lightness":0.7255,"saturation":0.1714,"hue_group":"yellow"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/nautilus/zombie_nautilus.png","family":"zombie_nautilus","relations":[{"type":"visual_neighbors","target":"minecraft:zombie_nautilus_coral","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/siamese","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:zombie_nautilus_coral","name":"Zombie Nautilus Coral","entry_type":"mob","description":"","history":[{"version":"1.21.11","status":"present","notes":"Generated from current registry input."}],"colors":{"primary":"#8a7968","dominant_hex":"#b9b28d","average_hex":"#8a7968","hue_group":"yellow","lightness":0.4745,"saturation":0.1405,"palette":["#b9b28d","#2d351b","#b05755","#706334","#dee5c9","#4c42bd"],"color_groups":[{"hex":"#b9b28d","weight":0.277,"lightness":0.6392,"saturation":0.2391,"hue_group":"yellow"},{"hex":"#2d351b","weight":0.195,"lightness":0.1569,"saturation":0.325,"hue_group":"yellow"},{"hex":"#b05755","weight":0.1674,"lightness":0.5118,"saturation":0.3655,"hue_group":"red"},{"hex":"#706334","weight":0.167,"lightness":0.3216,"saturation":0.3659,"hue_group":"yellow"},{"hex":"#dee5c9","weight":0.1057,"lightness":0.8431,"saturation":0.35,"hue_group":"yellow"},{"hex":"#4c42bd","weight":0.088,"lightness":0.5,"saturation":0.4824,"hue_group":"blue"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/nautilus/zombie_nautilus_coral.png","family":"zombie_nautilus_coral","relations":[{"type":"visual_neighbors","target":"minecraft:zombie_nautilus","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:parched","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/striped_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cat/siamese","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:zombie_nautilus_spawn_egg","name":"Zombie Nautilus Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#687762","dominant_hex":"#7a7c3d","average_hex":"#687762","hue_group":"neutral","lightness":0.4255,"saturation":0.0968,"palette":["#7a7c3d","#57622d","#26342b","#305085","#cbdac7","#90a292"],"color_groups":[{"hex":"#7a7c3d","weight":0.2062,"lightness":0.3627,"saturation":0.3405,"hue_group":"yellow"},{"hex":"#57622d","weight":0.1804,"lightness":0.2804,"saturation":0.3706,"hue_group":"yellow"},{"hex":"#26342b","weight":0.1753,"lightness":0.1765,"saturation":0.1556,"hue_group":"green"},{"hex":"#305085","weight":0.1753,"lightness":0.3549,"saturation":0.4696,"hue_group":"blue"},{"hex":"#cbdac7","weight":0.1701,"lightness":0.8176,"saturation":0.2043,"hue_group":"green"},{"hex":"#90a292","weight":0.0928,"lightness":0.6,"saturation":0.0882,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/zombie_nautilus_spawn_egg.png","family":"zombie_nautilus_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:wild_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stray_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:arrow","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cod_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:coast_armor_trim_smithing_template","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:phantom_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:iron_axe","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:water_bucket","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_precipice","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:gray_bundle","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creaking_spawn_egg","label":"Shared hue group: neutral","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:elder_guardian_spawn_egg","label":"Shared hue group: neutral","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:zombie_spawn_egg","name":"Zombie Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#3a6856","dominant_hex":"#203028","average_hex":"#3a6856","hue_group":"cyan","lightness":0.3176,"saturation":0.284,"palette":["#203028","#1e5982","#476429","#6c8454","#779b63","#04acac"],"color_groups":[{"hex":"#203028","weight":0.2388,"lightness":0.1569,"saturation":0.2,"hue_group":"cyan"},{"hex":"#1e5982","weight":0.2164,"lightness":0.3137,"saturation":0.625,"hue_group":"cyan"},{"hex":"#476429","weight":0.1642,"lightness":0.2765,"saturation":0.4184,"hue_group":"yellow"},{"hex":"#6c8454","weight":0.1567,"lightness":0.4235,"saturation":0.2222,"hue_group":"green"},{"hex":"#779b63","weight":0.1418,"lightness":0.498,"saturation":0.2205,"hue_group":"green"},{"hex":"#04acac","weight":0.0821,"lightness":0.3451,"saturation":0.9545,"hue_group":"cyan"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/zombie_spawn_egg.png","family":"zombie_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:cyan_dye","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:ward_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:warden_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:silence_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:recovery_compass","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_ink_sac","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:music_disc_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tide_armor_trim_smithing_template","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:disc_fragment_5","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_sword","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:glow_squid_spawn_egg","label":"Shared hue group: cyan","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:diamond_boots","label":"Shared hue group: cyan","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:zombie_villager","name":"Zombie Villager","entry_type":"mob","description":"A zombie villager is a variant of the zombie that can be cured into a normal villager using a golden apple while it is under the effect of Weakness.","history":[{"version":"1.4.2 12w32a","status":"added","notes":"Added zombie villagers."},{"version":"wiki-history","status":"added","notes":"Added baby zombie villagers."},{"version":"1.7.4 13w49a","status":"added","notes":"Added zombie villager chicken jockeys \u2013 a rare version of the baby zombie villager."}],"colors":{"primary":"#53613c","dominant_hex":"#63863a","average_hex":"#53613c","hue_group":"yellow","lightness":0.3078,"saturation":0.2357,"palette":["#63863a","#44642e","#373b26","#6c6461","#57723c","#524542"],"color_groups":[{"hex":"#63863a","weight":0.2014,"lightness":0.3765,"saturation":0.3958,"hue_group":"yellow"},{"hex":"#44642e","weight":0.1877,"lightness":0.2863,"saturation":0.3699,"hue_group":"green"},{"hex":"#373b26","weight":0.1826,"lightness":0.1902,"saturation":0.2165,"hue_group":"yellow"},{"hex":"#6c6461","weight":0.1674,"lightness":0.402,"saturation":0.0537,"hue_group":"neutral"},{"hex":"#57723c","weight":0.1442,"lightness":0.3412,"saturation":0.3103,"hue_group":"green"},{"hex":"#524542","weight":0.1167,"lightness":0.2902,"saturation":0.1081,"hue_group":"neutral"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/zombie_villager/zombie_villager.png","family":"zombie_villager","relations":[{"type":"visual_neighbors","target":"minecraft:husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_angry","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods_tame","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/woods","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bogged","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zombie_horse","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:rabbit/brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:camel_husk","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:donkey","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_green","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shulker_brown","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:frog/cold","label":"Shared hue group: yellow","confidence":0.55}],"category":"mob"},{"id":"minecraft:zombie_villager_spawn_egg","name":"Zombie Villager Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#49572f","dominant_hex":"#424b2a","average_hex":"#49572f","hue_group":"yellow","lightness":0.2627,"saturation":0.2985,"palette":["#424b2a","#5a6a39","#759b4b","#342c24","#24241c","#2c3c1c"],"color_groups":[{"hex":"#424b2a","weight":0.306,"lightness":0.2294,"saturation":0.2821,"hue_group":"yellow"},{"hex":"#5a6a39","weight":0.2388,"lightness":0.3196,"saturation":0.3006,"hue_group":"yellow"},{"hex":"#759b4b","weight":0.1642,"lightness":0.451,"saturation":0.3478,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1045,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#24241c","weight":0.097,"lightness":0.1255,"saturation":0.125,"hue_group":"yellow"},{"hex":"#2c3c1c","weight":0.0896,"lightness":0.1725,"saturation":0.3636,"hue_group":"green"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/zombie_villager_spawn_egg.png","family":"zombie_villager_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:green_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lime_harness","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:bow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:crossbow","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:book","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armor_stand","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_hoe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:spruce_boat","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:carrot_on_a_stick","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:stone_pickaxe","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:suspicious_stew","label":"Shared hue group: yellow","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:oak_boat","label":"Shared hue group: yellow","confidence":0.55}],"category":"spawn_egg"},{"id":"minecraft:zombie_wall_head","name":"Zombie Wall Head","entry_type":"block","description":"A zombie head is the head of a zombie in the form of a block. It can only be obtained by killing a zombie using a charged creeper's explosion.","history":[{"version":"1.4.2 12w36a","status":"added","notes":"Added zombie heads, obtainable only from the Creative inventory ."}],"colors":{"primary":"#513e33","dominant_hex":"#4c342c","average_hex":"#513e33","hue_group":"red","lightness":0.2588,"saturation":0.2273,"palette":["#4c342c","#5c443c","#6c5444","#443424","#342c24","#7c6454"],"color_groups":[{"hex":"#4c342c","weight":0.2539,"lightness":0.2353,"saturation":0.2667,"hue_group":"red"},{"hex":"#5c443c","weight":0.2383,"lightness":0.298,"saturation":0.2105,"hue_group":"red"},{"hex":"#6c5444","weight":0.1523,"lightness":0.3451,"saturation":0.2273,"hue_group":"red"},{"hex":"#443424","weight":0.1484,"lightness":0.2039,"saturation":0.3077,"hue_group":"yellow"},{"hex":"#342c24","weight":0.1445,"lightness":0.1725,"saturation":0.1818,"hue_group":"yellow"},{"hex":"#7c6454","weight":0.0625,"lightness":0.4078,"saturation":0.1923,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/block/soul_sand.png","family":"zombie_wall_head","relations":[{"type":"visual_neighbors","target":"minecraft:creeper_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:creeper_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:dragon_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:player_wall_head","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:skeleton_wall_skull","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:soul_sand","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wither_skeleton_skull","label":"Shared hue group: red","confidence":0.55},{"type":"color_neighbors","target":"minecraft:creeper_head","label":"Palette proche: Creeper Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:creeper_wall_head","label":"Palette proche: Creeper Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_head","label":"Palette proche: Dragon Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:dragon_wall_head","label":"Palette proche: Dragon Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_head","label":"Palette proche: Piglin Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:piglin_wall_head","label":"Palette proche: Piglin Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_head","label":"Palette proche: Player Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:player_wall_head","label":"Palette proche: Player Wall Head","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_skull","label":"Palette proche: Skeleton Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:skeleton_wall_skull","label":"Palette proche: Skeleton Wall Skull","confidence":0.94},{"type":"color_neighbors","target":"minecraft:soul_sand","label":"Palette proche: Soul Sand","confidence":0.94},{"type":"color_neighbors","target":"minecraft:wither_skeleton_skull","label":"Palette proche: Wither Skeleton Skull","confidence":0.94},{"type":"color_bridge","target":"minecraft:creaking_heart","label":"Pont de nuance par sous-ton: Creaking Heart","confidence":0.9},{"type":"color_bridge","target":"minecraft:pointed_dripstone","label":"Pont de nuance par sous-ton: Pointed Dripstone","confidence":0.894},{"type":"color_bridge","target":"minecraft:dripstone_block","label":"Pont de nuance par sous-ton: Dripstone Block","confidence":0.892},{"type":"color_bridge","target":"minecraft:exposed_copper_bulb","label":"Pont de nuance par sous-ton: Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_bulb","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Bulb","confidence":0.861},{"type":"color_bridge","target":"minecraft:acacia_log","label":"Pont de nuance par palette: Acacia Log","confidence":0.86},{"type":"color_bridge","target":"minecraft:acacia_wood","label":"Pont de nuance par palette: Acacia Wood","confidence":0.86},{"type":"color_bridge","target":"minecraft:frogspawn","label":"Pont de nuance par sous-ton: Frogspawn","confidence":0.859},{"type":"color_bridge","target":"minecraft:exposed_copper_chain","label":"Pont de nuance par sous-ton: Exposed Copper Chain","confidence":0.851},{"type":"color_bridge","target":"minecraft:waxed_exposed_copper_chain","label":"Pont de nuance par sous-ton: Waxed Exposed Copper Chain","confidence":0.851},{"type":"color_analogous","target":"minecraft:creeper_head","label":"Couleurs analogues: Creeper Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:creeper_wall_head","label":"Couleurs analogues: Creeper Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_head","label":"Couleurs analogues: Dragon Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:dragon_wall_head","label":"Couleurs analogues: Dragon Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_head","label":"Couleurs analogues: Piglin Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:piglin_wall_head","label":"Couleurs analogues: Piglin Wall Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_head","label":"Couleurs analogues: Player Head","confidence":0.96},{"type":"color_analogous","target":"minecraft:player_wall_head","label":"Couleurs analogues: Player Wall Head","confidence":0.96},{"type":"color_complement","target":"minecraft:soul_lantern","label":"Contraste complementaire: Soul Lantern","confidence":0.96},{"type":"color_complement","target":"minecraft:cornflower","label":"Contraste complementaire: Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:potted_cornflower","label":"Contraste complementaire: Potted Cornflower","confidence":0.95},{"type":"color_complement","target":"minecraft:light_blue_candle","label":"Contraste complementaire: Light Blue Candle","confidence":0.948},{"type":"color_complement","target":"minecraft:cyan_stained_glass","label":"Contraste complementaire: Cyan Stained Glass","confidence":0.931},{"type":"color_complement","target":"minecraft:light_blue_glazed_terracotta","label":"Contraste complementaire: Light Blue Glazed Terracotta","confidence":0.929},{"type":"color_complement","target":"minecraft:light_blue_concrete","label":"Contraste complementaire: Light Blue Concrete","confidence":0.926},{"type":"color_complement","target":"minecraft:cyan_stained_glass_pane","label":"Contraste complementaire: Cyan Stained Glass Pane","confidence":0.914},{"type":"color_triad","target":"minecraft:small_amethyst_bud","label":"Harmonie triadique: Small Amethyst Bud","confidence":0.957},{"type":"color_triad","target":"minecraft:amethyst_block","label":"Harmonie triadique: Amethyst Block","confidence":0.937},{"type":"color_triad","target":"minecraft:budding_amethyst","label":"Harmonie triadique: Budding Amethyst","confidence":0.919},{"type":"color_triad","target":"minecraft:respawn_anchor","label":"Harmonie triadique: Respawn Anchor","confidence":0.909},{"type":"color_triad","target":"minecraft:nether_portal","label":"Harmonie triadique: Nether Portal","confidence":0.819},{"type":"color_triad","target":"minecraft:end_gateway","label":"Harmonie triadique: End Gateway","confidence":0.8},{"type":"color_triad","target":"minecraft:end_portal","label":"Harmonie triadique: End Portal","confidence":0.8},{"type":"color_triad","target":"minecraft:ender_chest","label":"Harmonie triadique: Ender Chest","confidence":0.8},{"type":"color_square","target":"minecraft:mangrove_propagule","label":"Harmonie carree: Mangrove Propagule","confidence":0.96},{"type":"color_square","target":"minecraft:verdant_froglight","label":"Harmonie carree: Verdant Froglight","confidence":0.93},{"type":"color_square","target":"minecraft:carrots","label":"Harmonie carree: Carrots","confidence":0.826},{"type":"color_square","target":"minecraft:slime_block","label":"Harmonie carree: Slime Block","confidence":0.816},{"type":"color_square","target":"minecraft:test_block","label":"Harmonie carree: Test Block","confidence":0.815},{"type":"color_square","target":"minecraft:potatoes","label":"Harmonie carree: Potatoes","confidence":0.804},{"type":"color_square","target":"minecraft:potted_white_tulip","label":"Harmonie carree: Potted White Tulip","confidence":0.708},{"type":"color_square","target":"minecraft:white_tulip","label":"Harmonie carree: White Tulip","confidence":0.708},{"type":"value_contrast","target":"minecraft:white_stained_glass","label":"Contraste clair sombre: White Stained Glass","confidence":0.693},{"type":"value_contrast","target":"minecraft:white_stained_glass_pane","label":"Contraste clair sombre: White Stained Glass Pane","confidence":0.66},{"type":"value_contrast","target":"minecraft:pale_oak_hanging_sign","label":"Contraste clair sombre: Pale Oak Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:pale_oak_wall_hanging_sign","label":"Contraste clair sombre: Pale Oak Wall Hanging Sign","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_log","label":"Contraste clair sombre: Stripped Pale Oak Log","confidence":0.644},{"type":"value_contrast","target":"minecraft:stripped_pale_oak_wood","label":"Contraste clair sombre: Stripped Pale Oak Wood","confidence":0.644},{"type":"value_contrast","target":"minecraft:redstone_wire","label":"Contraste clair sombre: Redstone Wire","confidence":0.637},{"type":"value_contrast","target":"minecraft:smooth_quartz","label":"Contraste clair sombre: Smooth Quartz","confidence":0.609}],"category":"decorative"},{"id":"minecraft:zombified_piglin","name":"Zombified Piglin","entry_type":"mob","description":"Zombified piglins are neutral and undead variants of piglins that spawn in the Nether. Zombified piglins normally ignore players, but if one gets attacked and survives, it and all other zombified piglins in the vicinity become hostile and attack the aggressor.","history":[{"version":"wiki-history","status":"added","notes":"Added zombie pigmen."},{"version":"1.7.4 13w49a","status":"added","notes":"Added chicken jockeys . Since zombie pigmen share some of the zombie .class files, there are also now zombie pigman jockeys - a rare version of the baby zombie pigman."},{"version":"wiki-history","status":"added","notes":"added to the normal damage of the zombie pigmen."}],"colors":{"primary":"#ac7363","dominant_hex":"#e1a29e","average_hex":"#ac7363","hue_group":"red","lightness":0.5314,"saturation":0.3054,"palette":["#e1a29e","#e47671","#656f33","#492d20","#be5850","#a58678"],"color_groups":[{"hex":"#e1a29e","weight":0.2886,"lightness":0.751,"saturation":0.5276,"hue_group":"red"},{"hex":"#e47671","weight":0.176,"lightness":0.6686,"saturation":0.6805,"hue_group":"red"},{"hex":"#656f33","weight":0.1675,"lightness":0.3176,"saturation":0.3704,"hue_group":"yellow"},{"hex":"#492d20","weight":0.1522,"lightness":0.2059,"saturation":0.3905,"hue_group":"red"},{"hex":"#be5850","weight":0.1284,"lightness":0.5294,"saturation":0.4583,"hue_group":"red"},{"hex":"#a58678","weight":0.0872,"lightness":0.5588,"saturation":0.2,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/entity/piglin/zombified_piglin.png","family":"zombified_piglin","relations":[{"type":"visual_neighbors","target":"minecraft:salmon/mob","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:hoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:mooshroom/brown","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_tame","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:wolf/rusty_angry","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:piglin","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:villager","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_baby","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus","label":"Shared hue group: red","confidence":0.55}],"category":"mob"},{"id":"minecraft:zombified_piglin_spawn_egg","name":"Zombified Piglin Spawn Egg","entry_type":"item","description":"A spawn egg is an item used to instantly spawn mobs.","history":[{"version":"1.1 11w49a","status":"added","notes":"Added spawn eggs for creepers , skeletons , spiders , zombies , slimes , ghasts , pig zombies , endermen , cave spiders , silverfish , blazes , magma cubes , pigs , sheep , cows , chickens , squid , wolves , mooshrooms a"},{"version":"12w04a","status":"added","notes":"Added ocelot spawn egg with the addition of the ocelot itself."},{"version":"12w38a","status":"added","notes":"Added bat and witch spawn eggs."}],"colors":{"primary":"#96736a","dominant_hex":"#e1bebd","average_hex":"#96736a","hue_group":"red","lightness":0.502,"saturation":0.1732,"palette":["#e1bebd","#73796c","#512b1c","#9e4949","#585e4a","#d8776c"],"color_groups":[{"hex":"#e1bebd","weight":0.255,"lightness":0.8118,"saturation":0.375,"hue_group":"red"},{"hex":"#73796c","weight":0.2215,"lightness":0.449,"saturation":0.0568,"hue_group":"neutral"},{"hex":"#512b1c","weight":0.1745,"lightness":0.2137,"saturation":0.4862,"hue_group":"red"},{"hex":"#9e4949","weight":0.1208,"lightness":0.4529,"saturation":0.368,"hue_group":"red"},{"hex":"#585e4a","weight":0.1141,"lightness":0.3294,"saturation":0.119,"hue_group":"neutral"},{"hex":"#d8776c","weight":0.1141,"lightness":0.6353,"saturation":0.5806,"hue_group":"red"}],"source":"game-asset"},"icon":"assets/minecraft/textures/item/zombified_piglin_spawn_egg.png","family":"zombified_piglin_spawn_egg","relations":[{"type":"related_sets","target":"group:spawn_egg","label":"Related set: spawn_egg","confidence":0.85},{"type":"visual_neighbors","target":"minecraft:raw_iron","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:lava_bucket","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:tropical_fish_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:shears","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:nautilus_shell","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:armadillo_scute","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:cherry_chest_boat","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:zoglin_spawn_egg","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:writable_book","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:brush","label":"Shared hue group: red","confidence":0.55},{"type":"visual_neighbors","target":"minecraft:white_harness","label":"Shared hue group: red","confidence":0.55}],"category":"spawn_egg"}]} diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/icon.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/icon.png new file mode 100644 index 0000000..7d3412e Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/icon.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/items/blocodex.json b/Gameplay/blocodex/src/main/resources/assets/blocodex/items/blocodex.json new file mode 100644 index 0000000..0e8c04f --- /dev/null +++ b/Gameplay/blocodex/src/main/resources/assets/blocodex/items/blocodex.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "blocodex:item/blocodex" + } +} diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/items/computer.json b/Gameplay/blocodex/src/main/resources/assets/blocodex/items/computer.json new file mode 100644 index 0000000..ec70047 --- /dev/null +++ b/Gameplay/blocodex/src/main/resources/assets/blocodex/items/computer.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "blocodex:block/computer" + } +} diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/lang/en_us.json b/Gameplay/blocodex/src/main/resources/assets/blocodex/lang/en_us.json new file mode 100644 index 0000000..6f27ec3 --- /dev/null +++ b/Gameplay/blocodex/src/main/resources/assets/blocodex/lang/en_us.json @@ -0,0 +1,12 @@ +{ + "block.blocodex.computer": "Computer", + "item.blocodex.blocodex": "Blocodex", + "itemGroup.blocodex": "Blocodex", + "key.blocodex.open": "Open Blocodex", + "key.blocodex.construction": "Open construction panel", + "key.blocodex.rotate_blueprint": "Rotate Blocodex blueprint", + "key.blocodex.confirm_blueprint": "Confirm Blocodex blueprint anchor", + "key.blocodex.cancel_blueprint": "Cancel Blocodex blueprint", + "key.blocodex.undo_construction": "Undo Blocodex construction", + "key.blocodex.redo_construction": "Redo Blocodex construction" +} diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/lang/fr_fr.json b/Gameplay/blocodex/src/main/resources/assets/blocodex/lang/fr_fr.json new file mode 100644 index 0000000..f80cdcd --- /dev/null +++ b/Gameplay/blocodex/src/main/resources/assets/blocodex/lang/fr_fr.json @@ -0,0 +1,12 @@ +{ + "block.blocodex.computer": "Computer", + "item.blocodex.blocodex": "Blocodex", + "itemGroup.blocodex": "Blocodex", + "key.blocodex.open": "Ouvrir le Blocodex", + "key.blocodex.construction": "Ouvrir le panneau de construction", + "key.blocodex.rotate_blueprint": "Tourner le blueprint Blocodex", + "key.blocodex.confirm_blueprint": "Valider l'ancre du blueprint Blocodex", + "key.blocodex.cancel_blueprint": "Annuler le blueprint Blocodex", + "key.blocodex.undo_construction": "Annuler la construction Blocodex", + "key.blocodex.redo_construction": "Retablir la construction Blocodex" +} diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/models/block/computer.json b/Gameplay/blocodex/src/main/resources/assets/blocodex/models/block/computer.json new file mode 100644 index 0000000..1593261 --- /dev/null +++ b/Gameplay/blocodex/src/main/resources/assets/blocodex/models/block/computer.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "blocodex:block/computer_bottom", + "east": "blocodex:block/computer_left", + "north": "blocodex:block/computer_front", + "particle": "blocodex:block/computer_front", + "south": "blocodex:block/computer_back", + "up": "blocodex:block/computer_top", + "west": "blocodex:block/computer_right" + } +} diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/models/item/blocodex.json b/Gameplay/blocodex/src/main/resources/assets/blocodex/models/item/blocodex.json new file mode 100644 index 0000000..af82ac6 --- /dev/null +++ b/Gameplay/blocodex/src/main/resources/assets/blocodex/models/item/blocodex.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "minecraft:item/book" + } +} diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_back.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_back.png new file mode 100644 index 0000000..b552039 Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_back.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_bottom.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_bottom.png new file mode 100644 index 0000000..5c21152 Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_bottom.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_front.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_front.png new file mode 100644 index 0000000..e6ecc4b Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_front.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_left.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_left.png new file mode 100644 index 0000000..8d313cd Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_left.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_right.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_right.png new file mode 100644 index 0000000..5dfcb4d Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_right.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_top.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_top.png new file mode 100644 index 0000000..742c9d0 Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/block/computer_top.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/device_panel.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/device_panel.png new file mode 100644 index 0000000..b958f68 Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/device_panel.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/grid_overlay_9x9.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/grid_overlay_9x9.png new file mode 100644 index 0000000..83e2c75 Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/grid_overlay_9x9.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/icon_arrow_left.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/icon_arrow_left.png new file mode 100644 index 0000000..6e280a3 Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/icon_arrow_left.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/icon_arrow_right.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/icon_arrow_right.png new file mode 100644 index 0000000..b35fd1d Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/icon_arrow_right.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/icon_menu.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/icon_menu.png new file mode 100644 index 0000000..6fb8e7e Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/icon_menu.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/screen_frame.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/screen_frame.png new file mode 100644 index 0000000..756faf7 Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/screen_frame.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/selection_frame.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/selection_frame.png new file mode 100644 index 0000000..a6b775e Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/selection_frame.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/slider_knob.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/slider_knob.png new file mode 100644 index 0000000..bcc8a6f Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/slider_knob.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/slider_well.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/slider_well.png new file mode 100644 index 0000000..b5cfd35 Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/slider_well.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/status_light.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/status_light.png new file mode 100644 index 0000000..25e3b25 Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/status_light.png differ diff --git a/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/vent_slots.png b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/vent_slots.png new file mode 100644 index 0000000..ad6d70e Binary files /dev/null and b/Gameplay/blocodex/src/main/resources/assets/blocodex/textures/gui/vent_slots.png differ diff --git a/Gameplay/blocodex/src/main/resources/data/blocodex/advancement/recipes/redstone/computer.json b/Gameplay/blocodex/src/main/resources/data/blocodex/advancement/recipes/redstone/computer.json new file mode 100644 index 0000000..efbadd9 --- /dev/null +++ b/Gameplay/blocodex/src/main/resources/data/blocodex/advancement/recipes/redstone/computer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_redstone": { + "conditions": { + "items": [ + { + "items": "minecraft:redstone" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "blocodex:computer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_redstone" + ] + ], + "rewards": { + "recipes": [ + "blocodex:computer" + ] + } +} diff --git a/Gameplay/blocodex/src/main/resources/data/blocodex/loot_table/blocks/computer.json b/Gameplay/blocodex/src/main/resources/data/blocodex/loot_table/blocks/computer.json new file mode 100644 index 0000000..939a21a --- /dev/null +++ b/Gameplay/blocodex/src/main/resources/data/blocodex/loot_table/blocks/computer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "blocodex:computer" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "blocodex:blocks/computer" +} diff --git a/Gameplay/blocodex/src/main/resources/data/blocodex/recipe/computer.json b/Gameplay/blocodex/src/main/resources/data/blocodex/recipe/computer.json new file mode 100644 index 0000000..a2a0e38 --- /dev/null +++ b/Gameplay/blocodex/src/main/resources/data/blocodex/recipe/computer.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "#": "minecraft:iron_ingot", + "R": "minecraft:redstone" + }, + "pattern": [ + "###", + "#R#", + "###" + ], + "result": { + "id": "blocodex:computer" + } +} diff --git a/Gameplay/blocodex/src/main/resources/fabric.mod.json b/Gameplay/blocodex/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..4929693 --- /dev/null +++ b/Gameplay/blocodex/src/main/resources/fabric.mod.json @@ -0,0 +1,28 @@ +{ + "schemaVersion": 1, + "id": "blocodex", + "version": "${version}", + "name": "Blocodex", + "description": "A native Minecraft memory engine with WSMC resources, world observation, player context, palette analysis, and an integrated voxel editor.", + "authors": [ + "KOKA99CAB" + ], + "contact": {}, + "license": "LGPL-3.0-or-later / CC-BY-NC-SA-4.0; see license.txt", + "icon": "assets/blocodex/icon.png", + "environment": "*", + "entrypoints": { + "main": [ + "dev.blocodex.Blocodex" + ], + "client": [ + "dev.blocodex.client.BlocodexClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Gameplay/blocodex/src/test/java/dev/blocodex/codex/WsmcCodexIndexTest.java b/Gameplay/blocodex/src/test/java/dev/blocodex/codex/WsmcCodexIndexTest.java new file mode 100644 index 0000000..7abb333 --- /dev/null +++ b/Gameplay/blocodex/src/test/java/dev/blocodex/codex/WsmcCodexIndexTest.java @@ -0,0 +1,41 @@ +package dev.blocodex.codex; + +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + +class WsmcCodexIndexTest { + @Test + void loadsCompactWsmcSnapshotWithBlocksItemsAndMobs() { + WsmcCodexIndex index = WsmcCodexIndex.loadDefault(); + + assertTrue(index.size() >= 1800); + assertEquals("1.21.11", index.minecraftVersion()); + assertEquals("block", index.entry("minecraft:stone").orElseThrow().entryType()); + assertEquals("item", index.entry("minecraft:diamond").orElseThrow().entryType()); + assertEquals("mob", index.entry("minecraft:zombie").orElseThrow().entryType()); + assertFalse(index.entry("minecraft:stone").orElseThrow().relations().isEmpty()); + } + + @Test + void exposesStableHslProfilesFromWsmcColors() { + WsmcCodexIndex.WsmcEntry diamond = WsmcCodexIndex.loadDefault().entry("minecraft:diamond").orElseThrow(); + WsmcCodexIndex.Hsl hsl = diamond.hsl(); + + assertTrue(hsl.hue() > 150.0D && hsl.hue() < 200.0D); + assertTrue(hsl.saturation() > 0.3D); + assertTrue(hsl.lightness() > 0.45D && hsl.lightness() < 0.65D); + assertTrue(diamond.distanceToHsl(hsl.hue(), hsl.saturation(), hsl.lightness()) < diamond.distanceToHsl(20.0D, 0.9D, 0.5D)); + } + + @Test + void resolvesEntityIdsToMobVariantsWhenNeeded() { + WsmcCodexIndex index = WsmcCodexIndex.loadDefault(); + + assertEquals("minecraft:pig/temperate", index.entityEntry("minecraft:pig").orElseThrow().id()); + assertEquals("minecraft:cod/mob", index.entityEntry("minecraft:cod").orElseThrow().id()); + assertEquals("minecraft:enderman", index.entityEntry("minecraft:enderman").orElseThrow().id()); + } +} diff --git a/Gameplay/blocodex/src/test/java/dev/blocodex/memory/BlocodexMemoryTest.java b/Gameplay/blocodex/src/test/java/dev/blocodex/memory/BlocodexMemoryTest.java new file mode 100644 index 0000000..b9206f5 --- /dev/null +++ b/Gameplay/blocodex/src/test/java/dev/blocodex/memory/BlocodexMemoryTest.java @@ -0,0 +1,328 @@ +package dev.blocodex.memory; + +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.mojang.serialization.JsonOps; +import dev.blocodex.network.BlocodexUiMode; +import dev.blocodex.network.BlocodexUiRequestPayload; +import dev.blocodex.network.BlocodexUiSnapshotPayload; +import org.junit.jupiter.api.Test; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + +class BlocodexMemoryTest { + @Test + void roundTripsThroughCodec() { + BlocodexMemory memory = new BlocodexMemory(); + ChunkKey key = new ChunkKey("minecraft:overworld", 1, 2); + + memory.observeChunk("player-a", key, Map.of("minecraft:stone", 12L, "minecraft:dirt", 3L), Map.of(12, Map.of("minecraft:stone", 4L)), Set.of("minecraft:plains"), -12, 64, 100L); + memory.addChunkTime("player-a", key, 80L); + memory.recordItem("player-a", "minecraft:oak_log"); + memory.recordEntity("player-a", "minecraft:cow"); + memory.recordBrokenBlock("player-a", "minecraft:stone"); + memory.player("player-a").loadLibraryEntry("minecraft:stone"); + memory.player("player-a").favoriteLibraryEntry("minecraft:oak_planks"); + memory.player("player-a").addResearchLibraryEntry("minecraft:blue_concrete"); + memory.player("player-a").recordRecentEvent("item", "minecraft:oak_log", 120L, "minecraft:overworld", 1, 64, 2); + memory.player("player-a").recordStatSample(new PlayerStatSample(1200L, 6400L, 7L, 3L, 2, 1, 4)); + memory.player("player-a").saveVoxelProject(new VoxelProjectMemory( + "hut", + "Starter Hut", + 5, + 4, + 6, + List.of("minecraft:oak_planks"), + Map.of("0,0,0", "minecraft:oak_planks"), + 100L, + 120L + )); + + JsonElement encoded = BlocodexMemory.CODEC.encodeStart(JsonOps.INSTANCE, memory).result().orElseThrow(); + BlocodexMemory decoded = BlocodexMemory.CODEC.parse(JsonOps.INSTANCE, encoded).result().orElseThrow(); + + assertEquals(1, decoded.players().size()); + assertEquals(1, decoded.chunks().size()); + assertEquals(12L, decoded.world().blockCounts().get("minecraft:stone")); + assertEquals(4L, decoded.chunk(key).layerBlockCounts(12).get("minecraft:stone")); + assertEquals(80L, decoded.player("player-a").chunkTimeTicks().get(key.asStorageKey())); + assertTrue(decoded.player("player-a").items().contains("minecraft:oak_log")); + assertTrue(decoded.player("player-a").entities().contains("minecraft:cow")); + assertTrue(decoded.player("player-a").loadedLibraryEntries().contains("minecraft:stone")); + assertTrue(decoded.player("player-a").loadedLibraryEntries().contains("minecraft:oak_planks")); + assertTrue(decoded.player("player-a").favoriteLibraryEntries().contains("minecraft:oak_planks")); + assertTrue(decoded.player("player-a").researchLibraryEntries().contains("minecraft:blue_concrete")); + assertEquals("minecraft:oak_log", decoded.player("player-a").recentEvents().getFirst().id()); + assertEquals(6400L, decoded.player("player-a").statSamples().getFirst().distanceCm()); + assertEquals("Starter Hut", decoded.player("player-a").voxelProjects().get("hut").name()); + } + + @Test + void repeatedSameSnapshotDoesNotDoubleGlobalCounts() { + BlocodexMemory memory = new BlocodexMemory(); + ChunkKey key = new ChunkKey("minecraft:overworld", 0, 0); + Map snapshot = Map.of("minecraft:stone", 10L, "minecraft:dirt", 2L); + + assertTrue(memory.observeChunk("player-a", key, snapshot, Map.of(20, snapshot), Set.of("minecraft:plains"), -4, 62, 10L)); + assertFalse(memory.observeChunk("player-a", key, snapshot, Map.of(20, snapshot), Set.of("minecraft:plains"), -4, 62, 20L)); + + assertEquals(10L, memory.world().blockCounts().get("minecraft:stone")); + assertEquals(2L, memory.world().blockCounts().get("minecraft:dirt")); + assertEquals(1L, memory.world().observedChunks()); + } + + @Test + void repeatedItemAndEntityScansDoNotInflateWorldCounts() { + BlocodexMemory memory = new BlocodexMemory(); + + assertTrue(memory.recordItem("player-a", "minecraft:diamond")); + assertFalse(memory.recordItem("player-a", "minecraft:diamond")); + assertTrue(memory.recordEntity("player-a", "minecraft:zombie")); + assertFalse(memory.recordEntity("player-a", "minecraft:zombie")); + + assertEquals(1L, memory.world().itemCounts().get("minecraft:diamond")); + assertEquals(1L, memory.world().entityCounts().get("minecraft:zombie")); + } + + @Test + void changedSnapshotAppliesDelta() { + BlocodexMemory memory = new BlocodexMemory(); + ChunkKey key = new ChunkKey("minecraft:overworld", 0, 0); + + memory.observeChunk("player-a", key, Map.of("minecraft:stone", 10L, "minecraft:dirt", 2L), Map.of(20, Map.of("minecraft:stone", 10L, "minecraft:dirt", 2L)), Set.of("minecraft:plains"), -4, 62, 10L); + memory.observeChunk("player-a", key, Map.of("minecraft:stone", 8L, "minecraft:oak_log", 3L), Map.of(20, Map.of("minecraft:stone", 8L), 21, Map.of("minecraft:oak_log", 3L)), Set.of("minecraft:forest"), -4, 70, 20L); + + assertEquals(8L, memory.world().blockCounts().get("minecraft:stone")); + assertFalse(memory.world().blockCounts().containsKey("minecraft:dirt")); + assertEquals(3L, memory.world().blockCounts().get("minecraft:oak_log")); + assertFalse(memory.world().biomeCounts().containsKey("minecraft:plains")); + assertEquals(1L, memory.world().biomeCounts().get("minecraft:forest")); + } + + @Test + void heatTicksAccumulateSeparatelyFromSnapshots() { + BlocodexMemory memory = new BlocodexMemory(); + ChunkKey key = new ChunkKey("minecraft:overworld", 4, -2); + + memory.observeChunk("player-a", key, Map.of("minecraft:stone", 1L), Map.of(0, Map.of("minecraft:stone", 1L)), Set.of(), 0, 1, 1L); + memory.addChunkTime("player-a", key, 20L); + memory.addChunkTime("player-a", key, 40L); + + assertEquals(1L, memory.world().blockCounts().get("minecraft:stone")); + assertEquals(60L, memory.player("player-a").chunkTimeTicks().get(key.asStorageKey())); + } + + @Test + void personalMemoryStaysSeparateFromAnonymousWorldLayer() { + BlocodexMemory memory = new BlocodexMemory(); + ChunkKey a = new ChunkKey("minecraft:overworld", 0, 0); + ChunkKey b = new ChunkKey("minecraft:overworld", 1, 0); + + memory.observeChunk("player-a", a, Map.of("minecraft:stone", 2L), Map.of(0, Map.of("minecraft:stone", 2L)), Set.of(), 0, 10, 1L); + memory.observeChunk("player-b", b, Map.of("minecraft:dirt", 5L), Map.of(0, Map.of("minecraft:dirt", 5L)), Set.of(), 0, 10, 1L); + + assertTrue(memory.player("player-a").discoveredBlocks().contains("minecraft:stone")); + assertFalse(memory.player("player-a").discoveredBlocks().contains("minecraft:dirt")); + assertTrue(memory.player("player-b").discoveredBlocks().contains("minecraft:dirt")); + assertEquals(2L, memory.world().observedChunks()); + assertEquals(2, memory.world().blockCounts().size()); + } + + @Test + void clearResetsPlayersChunksAndWorldAggregates() { + BlocodexMemory memory = new BlocodexMemory(); + ChunkKey key = new ChunkKey("minecraft:overworld", 0, 0); + memory.observeChunk("player-a", key, Map.of("minecraft:stone", 2L), Map.of(0, Map.of("minecraft:stone", 2L)), Set.of("minecraft:plains"), 0, 10, 1L); + memory.recordItem("player-a", "minecraft:diamond"); + memory.recordEntity("player-a", "minecraft:zombie"); + + memory.clear(); + + assertTrue(memory.players().isEmpty()); + assertTrue(memory.chunks().isEmpty()); + assertTrue(memory.world().blockCounts().isEmpty()); + assertTrue(memory.world().itemCounts().isEmpty()); + assertTrue(memory.world().entityCounts().isEmpty()); + assertEquals(0L, memory.world().observedChunks()); + } + + @Test + void cheatDiscoveryUnlocksPersonalBlocksWithoutWorldCounts() { + BlocodexMemory memory = new BlocodexMemory(); + PlayerMemory playerMemory = memory.player("player-a"); + + int first = playerMemory.discoverBlocks(List.of("minecraft:stone", "minecraft:dirt", "minecraft:stone")); + int second = playerMemory.discoverBlocks(List.of("minecraft:stone", "minecraft:oak_log")); + int items = playerMemory.discoverItems(List.of("minecraft:diamond", "minecraft:diamond")); + int entities = playerMemory.discoverEntities(List.of("minecraft:zombie")); + + assertEquals(2, first); + assertEquals(1, second); + assertEquals(1, items); + assertEquals(1, entities); + assertTrue(playerMemory.discoveredBlocks().contains("minecraft:stone")); + assertTrue(playerMemory.discoveredBlocks().contains("minecraft:dirt")); + assertTrue(playerMemory.discoveredBlocks().contains("minecraft:oak_log")); + assertTrue(playerMemory.items().contains("minecraft:diamond")); + assertTrue(playerMemory.entities().contains("minecraft:zombie")); + assertEquals(0, playerMemory.observedBlockCounts().size()); + assertEquals(0, memory.world().blockCounts().size()); + } + + @Test + void chunkMemoryKeepsLayerSnapshots() { + BlocodexMemory memory = new BlocodexMemory(); + ChunkKey key = new ChunkKey("minecraft:overworld", 2, 3); + + memory.observeChunk( + "player-a", + key, + Map.of("minecraft:stone", 6L, "minecraft:coal_ore", 2L), + Map.of( + -12, Map.of("minecraft:stone", 3L), + -11, Map.of("minecraft:stone", 3L, "minecraft:coal_ore", 2L) + ), + Set.of("minecraft:stony_peaks"), + -12, + -11, + 40L + ); + + JsonElement encoded = BlocodexMemory.CODEC.encodeStart(JsonOps.INSTANCE, memory).result().orElseThrow(); + BlocodexMemory decoded = BlocodexMemory.CODEC.parse(JsonOps.INSTANCE, encoded).result().orElseThrow(); + + assertEquals(3L, decoded.chunk(key).layerBlockCounts(-12).get("minecraft:stone")); + assertEquals(2L, decoded.chunk(key).layerBlockCounts(-11).get("minecraft:coal_ore")); + assertEquals(2, decoded.chunk(key).layerBlockCounts().size()); + } + + @Test + void gridDistributionNormalizesToFixedCellCount() { + List cells = GridDistribution.normalize(Map.of( + "minecraft:stone", 75L, + "minecraft:dirt", 25L + ), 81); + + long stone = cells.stream().filter("minecraft:stone"::equals).count(); + long dirt = cells.stream().filter("minecraft:dirt"::equals).count(); + + assertEquals(81, cells.size()); + assertEquals(61, stone); + assertEquals(20, dirt); + } + + @Test + void uiSnapshotPayloadRoundTripsThroughCodec() { + BlocodexUiSnapshotPayload payload = new BlocodexUiSnapshotPayload( + BlocodexUiMode.WORLD.id(), + 12, + 1, + 40, + -64, + 319, + List.of("MODE MONDE", "Y: 12"), + java.util.Collections.nCopies(81, "minecraft:stone"), + java.util.Collections.nCopies(81, 0xFF777777), + java.util.Collections.nCopies(81, "stone"), + "minecraft:stone", + 0xFF777777, + List.of("minecraft:stone", "minecraft:dirt"), + List.of("0|0|0|0|1|1|2", "6000|120|3|4|2|1|5") + ); + + JsonElement encoded = BlocodexUiSnapshotPayload.CODEC.encodeStart(JsonOps.INSTANCE, payload).result().orElseThrow(); + BlocodexUiSnapshotPayload decoded = BlocodexUiSnapshotPayload.CODEC.parse(JsonOps.INSTANCE, encoded).result().orElseThrow(); + + assertEquals(BlocodexUiMode.WORLD.id(), decoded.mode()); + assertEquals(81, decoded.gridBlockIds().size()); + assertEquals("minecraft:stone", decoded.selectedBlockId()); + assertEquals(List.of("minecraft:stone", "minecraft:dirt"), decoded.paletteBlockIds()); + assertEquals(2, decoded.graphPoints().size()); + } + + @Test + void uiRequestPayloadRoundTripsQueryThroughCodec() { + BlocodexUiRequestPayload payload = new BlocodexUiRequestPayload( + BlocodexUiMode.COLOR.id(), + 180, + 0, + 12, + "diamond" + ); + + JsonElement encoded = BlocodexUiRequestPayload.CODEC.encodeStart(JsonOps.INSTANCE, payload).result().orElseThrow(); + BlocodexUiRequestPayload decoded = BlocodexUiRequestPayload.CODEC.parse(JsonOps.INSTANCE, encoded).result().orElseThrow(); + + assertEquals(BlocodexUiMode.COLOR.id(), decoded.mode()); + assertEquals("diamond", decoded.query()); + } + + @Test + void recentEventsStayBoundedNewestFirst() { + PlayerMemory memory = new PlayerMemory(); + + for (int i = 0; i < 45; i++) { + memory.recordRecentEvent("item", "minecraft:item_" + i, i, "minecraft:overworld", i, 64, i); + } + + assertEquals(40, memory.recentEvents().size()); + assertEquals("minecraft:item_44", memory.recentEvents().getFirst().id()); + assertEquals("minecraft:item_5", memory.recentEvents().getLast().id()); + } + + @Test + void playerStatSampleRoundTripsThroughCodec() { + PlayerStatSample sample = new PlayerStatSample(6000L, 12345L, 12L, 3L, 8, 4, 16); + + JsonElement encoded = PlayerStatSample.CODEC.encodeStart(JsonOps.INSTANCE, sample).result().orElseThrow(); + PlayerStatSample decoded = PlayerStatSample.CODEC.parse(JsonOps.INSTANCE, encoded).result().orElseThrow(); + + assertEquals(sample, decoded); + } + + @Test + void oldPlayerMemoryWithoutStatSamplesLoadsEmpty() { + PlayerMemory memory = PlayerMemory.CODEC.parse(JsonOps.INSTANCE, new JsonObject()).result().orElseThrow(); + + assertTrue(memory.statSamples().isEmpty()); + } + + @Test + void statSamplesStayBoundedToRollingWindow() { + PlayerMemory memory = new PlayerMemory(); + + for (int i = 0; i < 300; i++) { + memory.recordStatSample(new PlayerStatSample(i, i * 10L, i, i, i, i, i)); + } + + assertEquals(PlayerMemory.MAX_STAT_SAMPLES, memory.statSamples().size()); + assertEquals(12L, memory.statSamples().getFirst().playTimeTicks()); + assertEquals(299L, memory.statSamples().getLast().playTimeTicks()); + } + + @Test + void voxelProjectsCanBeDeleted() { + PlayerMemory memory = new PlayerMemory(); + memory.saveVoxelProject(new VoxelProjectMemory( + "draft", + "Draft", + 1, + 1, + 1, + List.of("minecraft:stone"), + Map.of("0,0,0", "minecraft:stone"), + 1L, + 1L + )); + + assertTrue(memory.deleteVoxelProject("draft")); + assertFalse(memory.voxelProjects().containsKey("draft")); + assertFalse(memory.deleteVoxelProject("draft")); + } +} diff --git a/Gameplay/blocodex/src/test/java/dev/blocodex/server/BlocodexStudioPalettesTest.java b/Gameplay/blocodex/src/test/java/dev/blocodex/server/BlocodexStudioPalettesTest.java new file mode 100644 index 0000000..f07a232 --- /dev/null +++ b/Gameplay/blocodex/src/test/java/dev/blocodex/server/BlocodexStudioPalettesTest.java @@ -0,0 +1,94 @@ +package dev.blocodex.server; + +import dev.blocodex.codex.WsmcCodexIndex; +import dev.blocodex.memory.PlayerMemory; +import dev.blocodex.network.BlocodexStudioPalettePayload; +import dev.blocodex.network.BlocodexStudioPaletteRequestPayload; +import org.junit.jupiter.api.Test; + +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Set; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + +class BlocodexStudioPalettesTest { + @Test + void returnsOnlyDiscoveredOpaqueBuildableBlocks() { + PlayerMemory memory = new PlayerMemory(); + memory.discoverBlocks(List.of( + "minecraft:stone", + "minecraft:glass", + "minecraft:water", + "minecraft:oak_door", + "minecraft:blue_concrete" + )); + + BlocodexStudioPalettePayload payload = query(memory, "", Set.of("minecraft:stone", "minecraft:blue_concrete")); + List blockIds = payload.blockIds(); + + assertTrue(blockIds.contains("minecraft:stone")); + assertTrue(blockIds.contains("minecraft:blue_concrete")); + assertFalse(blockIds.contains("minecraft:glass")); + assertFalse(blockIds.contains("minecraft:water")); + assertFalse(blockIds.contains("minecraft:oak_door")); + assertFalse(blockIds.contains("minecraft:red_concrete")); + assertEquals(5, memory.discoveredBlocks().size()); + } + + @Test + void filtersByTextQueryAgainstIdsAndLabels() { + PlayerMemory memory = new PlayerMemory(); + memory.discoverBlocks(List.of("minecraft:stone", "minecraft:blue_concrete", "minecraft:red_concrete")); + + BlocodexStudioPalettePayload payload = query(memory, "Blue", memory.discoveredBlocks()); + + assertEquals(List.of("minecraft:blue_concrete"), payload.blockIds()); + assertEquals("minecraft:blue_concrete", payload.selectedBlockId()); + assertEquals(payload.colors().getFirst(), payload.selectedColor()); + assertEquals("Blue Concrete", payload.labels().getFirst()); + } + + @Test + void sortsByWsmcHslDistanceWhenEntriesExist() { + PlayerMemory memory = new PlayerMemory(); + memory.discoverBlocks(List.of("minecraft:red_concrete", "minecraft:blue_concrete", "minecraft:lime_concrete")); + + BlocodexStudioPalettePayload payload = BlocodexStudioPalettes.queryDiscoveredBlocks( + memory.discoveredBlocks(), + WsmcCodexIndex.loadDefault(), + new BlocodexStudioPaletteRequestPayload("", 240, 0.7D, 0.45D), + blockId -> true, + blockId -> 0xFF777777 + ); + + assertEquals("minecraft:blue_concrete", payload.selectedBlockId()); + } + + @Test + void requestPayloadSanitizesQueryAndHslTargets() { + BlocodexStudioPaletteRequestPayload payload = new BlocodexStudioPaletteRequestPayload( + " " + "x".repeat(80) + "\n", + -30, + 2.0D, + Double.NaN + ); + + assertEquals(64, payload.query().length()); + assertEquals(330, payload.hue()); + assertEquals(1.0D, payload.saturation()); + assertEquals(0.0D, payload.lightness()); + } + + private static BlocodexStudioPalettePayload query(PlayerMemory memory, String textQuery, Set opaqueBuildableBlocks) { + return BlocodexStudioPalettes.queryDiscoveredBlocks( + new LinkedHashSet<>(memory.discoveredBlocks()), + WsmcCodexIndex.loadDefault(), + new BlocodexStudioPaletteRequestPayload(textQuery, 0, 0.0D, 0.5D), + opaqueBuildableBlocks::contains, + blockId -> 0xFF777777 + ); + } +} diff --git a/Gameplay/blocodex/src/test/java/dev/blocodex/server/BlocodexUiSnapshotsTest.java b/Gameplay/blocodex/src/test/java/dev/blocodex/server/BlocodexUiSnapshotsTest.java new file mode 100644 index 0000000..553b3a4 --- /dev/null +++ b/Gameplay/blocodex/src/test/java/dev/blocodex/server/BlocodexUiSnapshotsTest.java @@ -0,0 +1,244 @@ +package dev.blocodex.server; + +import dev.blocodex.codex.WsmcCodexIndex; +import dev.blocodex.memory.PlayerMemory; +import dev.blocodex.memory.VoxelProjectMemory; +import net.minecraft.core.BlockPos; +import org.junit.jupiter.api.Test; + +import java.util.Collections; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + +class BlocodexUiSnapshotsTest { + @Test + void chunkLayerLinesShowPercentagesThenCounts() { + Map layer = Map.of( + "minecraft:stone", 42L, + "minecraft:deepslate", 21L, + "minecraft:diamond_ore", 7L + ); + + List percentages = BlocodexUiSnapshots.chunkLayerLines(-26, layer, 0); + List counts = BlocodexUiSnapshots.chunkLayerLines(-26, layer, 1); + + assertEquals("TITLE:Y -26", percentages.getFirst()); + assertEquals("stone 60%", percentages.get(1)); + assertEquals("deepslate 30%", percentages.get(2)); + assertEquals("diamond_ore 10%", percentages.get(3)); + assertEquals("Total: 70", counts.get(1)); + assertEquals("stone: 42", counts.get(2)); + } + + @Test + void statsLinesKeepRequestedInformationOrder() { + List lines = BlocodexUiSnapshots.statsLines( + "New World", + new BlockPos(12, -26, 44), + "overworld", + 30, + 2400, + 8, + 17, + "123 m", + "1h 5m", + 4, + 3 + ); + + assertEquals("TITLE:New World", lines.get(0)); + assertEquals("XYZ: 12 -26 44", lines.get(1)); + assertEquals("Dim: overworld", lines.get(2)); + assertEquals("Blocs vus: 30", lines.get(3)); + assertEquals("Zoom: x3 / rayon 12", lines.get(10)); + } + + @Test + void colorQueryMatchesWsmcNameIdTypeCategoryOrFamily() { + WsmcCodexIndex index = WsmcCodexIndex.loadDefault(); + + assertTrue(BlocodexUiSnapshots.entryMatchesQuery(index.entry("minecraft:diamond").orElseThrow(), "diamond")); + assertTrue(BlocodexUiSnapshots.entryMatchesQuery(index.entry("minecraft:zombie").orElseThrow(), "mob")); + assertTrue(BlocodexUiSnapshots.entryMatchesQuery(index.entry("minecraft:stone").orElseThrow(), "stone")); + } + + @Test + void hybridColorGridReducesAdjacencyWhileStayingWithinDiscoveries() { + WsmcCodexIndex index = WsmcCodexIndex.loadDefault(); + List entries = List.of( + index.entry("minecraft:diamond").orElseThrow(), + index.entry("minecraft:diamond_ore").orElseThrow(), + index.entry("minecraft:lapis_block").orElseThrow(), + index.entry("minecraft:blue_concrete").orElseThrow(), + index.entry("minecraft:cyan_concrete").orElseThrow(), + index.entry("minecraft:water").orElseThrow(), + index.entry("minecraft:packed_ice").orElseThrow() + ); + Set allowed = new LinkedHashSet<>(entries.stream().map(WsmcCodexIndex.WsmcEntry::id).toList()); + + List ids = BlocodexUiSnapshots.colorGridIdsForTesting(entries, 190); + + assertEquals(81, ids.size()); + assertTrue(ids.stream().allMatch(allowed::contains)); + assertTrue(adjacentDuplicates(ids) < 80); + } + + @Test + void profileLinesExposeVanillaPcStatsAndProgressionSection() { + PlayerMemory memory = new PlayerMemory(); + memory.discoverBlocks(List.of("minecraft:stone", "minecraft:dirt")); + memory.discoverItems(List.of("minecraft:diamond")); + memory.discoverEntities(List.of("minecraft:zombie")); + + List lines = BlocodexUiSnapshots.profileLines( + "BlocodexDev", + "New World", + "overworld", + new BlockPos(1, 64, 2), + memory, + "50 m", + "0h 4m", + 3, + 7 + ); + + assertTrue(lines.contains("Temps de jeu\t0h 4m")); + assertTrue(lines.contains("Blocs decouverts\t2")); + assertTrue(lines.contains("SECTION:Progression")); + assertTrue(lines.stream().noneMatch(line -> line.startsWith("SECTION:Activite recente"))); + assertTrue(lines.stream().noneMatch(line -> line.contains("Bloc casse"))); + } + + @Test + void worldLinesExposeMapMode() { + List lines = BlocodexUiSnapshots.worldLines( + "New World", + new dev.blocodex.memory.WorldMemory(), + new PlayerMemory(), + BlockPos.ZERO, + "overworld", + "0 m", + "0h 0m", + 0L, + 0L, + true, + 2 + ).lines(); + + assertTrue(lines.contains("Vue\tBiomes")); + assertTrue(lines.contains("Carte\tChargee")); + } + + @Test + void libraryLinesIncludeSelectedDetailAndEntries() { + List entries = List.of( + new BlocodexUiSnapshots.LibraryEntry("minecraft:dirt", "Dirt", "block", "Earthy.", 0xFF8A6B45, "brown", 30.0D, 0.4D), + new BlocodexUiSnapshots.LibraryEntry("minecraft:stone", "Stone", "block", "Rock.", 0xFF777777, "neutral", 0.0D, 0.5D) + ); + + List lines = BlocodexUiSnapshots.libraryLines(entries, 1, "stone", false); + + assertTrue(lines.contains("Recherche\tstone")); + assertTrue(lines.contains("Nom\tStone")); + assertTrue(lines.contains("DESC:Rock.")); + assertTrue(lines.contains("Etat\tDecouvert")); + assertTrue(lines.stream().anyMatch(line -> line.equals("ENTRY:1|Stone|Bloc|minecraft:stone"))); + } + + @Test + void creationLinesRenderEmptyAndSavedProjects() { + List empty = BlocodexUiSnapshots.creationLines(List.of()); + assertTrue(empty.contains("Projets sauvegardes\t0")); + + List saved = BlocodexUiSnapshots.creationLines(List.of(new VoxelProjectMemory( + "tower", + "Tower", + 3, + 9, + 3, + List.of("minecraft:stone"), + Collections.emptyMap(), + 10L, + 20L + ))); + + assertTrue(saved.contains("Projets sauvegardes\t1")); + assertTrue(saved.stream().anyMatch(line -> line.equals("ENTRY:0|Tower|3x9x3|tower"))); + } + + @Test + void creationLinesShowRequiredAndMissingBlocks() { + PlayerMemory memory = new PlayerMemory(); + memory.discoverBlocks(List.of("minecraft:stone")); + List lines = BlocodexUiSnapshots.creationLines(List.of(new VoxelProjectMemory( + "mixed", + "Mixed", + 2, + 1, + 1, + List.of("minecraft:stone", "minecraft:gray_concrete"), + Map.of( + "0,0,0", "minecraft:stone", + "1,0,0", "minecraft:gray_concrete" + ), + 10L, + 20L + )), 0, memory); + + assertTrue(lines.contains("Blocs requis\t2")); + assertTrue(lines.contains("A rechercher\t1")); + assertTrue(lines.contains("Manquants\tgray_concrete")); + } + + @Test + void creationLinesKeepDistinctEntryIndexes() { + List saved = BlocodexUiSnapshots.creationLines(List.of( + new VoxelProjectMemory( + "hut", + "Hut", + 4, + 3, + 5, + List.of("minecraft:oak_planks"), + Collections.emptyMap(), + 10L, + 20L + ), + new VoxelProjectMemory( + "tower", + "Tower", + 3, + 9, + 3, + List.of("minecraft:stone"), + Collections.emptyMap(), + 10L, + 20L + ) + )); + + assertTrue(saved.stream().anyMatch(line -> line.equals("ENTRY:0|Hut|4x3x5|hut"))); + assertTrue(saved.stream().anyMatch(line -> line.equals("ENTRY:1|Tower|3x9x3|tower"))); + } + + private static int adjacentDuplicates(List ids) { + int duplicates = 0; + for (int row = 0; row < 9; row++) { + for (int col = 0; col < 9; col++) { + String id = ids.get(row * 9 + col); + if (col > 0 && id.equals(ids.get(row * 9 + col - 1))) { + duplicates++; + } + if (row > 0 && id.equals(ids.get((row - 1) * 9 + col))) { + duplicates++; + } + } + } + return duplicates; + } +} diff --git a/Gameplay/blocodex/src/test/java/dev/blocodex/voxel/StudioVoxelEditorTest.java b/Gameplay/blocodex/src/test/java/dev/blocodex/voxel/StudioVoxelEditorTest.java new file mode 100644 index 0000000..580ae3a --- /dev/null +++ b/Gameplay/blocodex/src/test/java/dev/blocodex/voxel/StudioVoxelEditorTest.java @@ -0,0 +1,288 @@ +package dev.blocodex.voxel; + +import dev.blocodex.memory.VoxelProjectMemory; +import org.junit.jupiter.api.Test; + +import java.util.List; +import java.util.Map; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertThrows; + +class StudioVoxelEditorTest { + @Test + void createsDefaultBlankProject() { + VoxelProjectMemory project = StudioVoxelEditor.blankProject(); + + assertEquals(16, project.width()); + assertEquals(16, project.height()); + assertEquals(16, project.depth()); + assertEquals(List.of(), project.palette()); + assertEquals(Map.of(), project.cells()); + } + + @Test + void exposesClientFacingProjectStateAndExport() { + StudioVoxelEditor editor = StudioVoxelEditor.blank("castle", "Castle", 8, 6, 7); + editor.setName("Tower"); + editor.apply(StudioVoxelEditor.Tool.BRUSH, 1, 2, 3, "minecraft:stone"); + + assertEquals("castle", editor.id()); + assertEquals("Tower", editor.name()); + assertEquals(8, editor.width()); + assertEquals(6, editor.height()); + assertEquals(7, editor.depth()); + assertEquals(Map.of("1,2,3", "minecraft:stone"), editor.cells()); + assertEquals("minecraft:stone", editor.blockAt(1, 2, 3)); + assertNull(editor.blockAt(7, 5, 6)); + assertNull(editor.blockAt(8, 5, 6)); + + VoxelProjectMemory exported = editor.toProject(12L, 34L); + + assertEquals("castle", exported.id()); + assertEquals("Tower", exported.name()); + assertEquals(List.of("minecraft:stone"), exported.palette()); + assertEquals(12L, exported.createdTick()); + assertEquals(34L, exported.updatedTick()); + } + + @Test + void fromProjectNormalizesInvalidCellsAndPalette() { + VoxelProjectMemory source = new VoxelProjectMemory( + "source", + "Source", + 2, + 2, + 2, + List.of("minecraft:unused"), + Map.of( + "0,0,0", "minecraft:stone", + "3,0,0", "minecraft:dirt", + "1,1,1", " " + ), + 1L, + 2L + ); + + VoxelProjectMemory project = StudioVoxelEditor.fromProject(source).toProject(3L, 4L); + + assertEquals(Map.of("0,0,0", "minecraft:stone"), project.cells()); + assertEquals(List.of("minecraft:stone"), project.palette()); + assertEquals(3L, project.createdTick()); + assertEquals(4L, project.updatedTick()); + } + + @Test + void resizePreservesOnlyCellsInsideNewBounds() { + StudioVoxelEditor editor = StudioVoxelEditor.edit(project(4, 3, 4, Map.of( + "0,0,0", "minecraft:stone", + "2,1,2", "minecraft:dirt", + "3,2,3", "minecraft:oak_planks" + ))); + + VoxelProjectMemory resized = editor.resize(3, 2, 3).export(); + + assertEquals(3, resized.width()); + assertEquals(2, resized.height()); + assertEquals(3, resized.depth()); + assertEquals(Map.of( + "0,0,0", "minecraft:stone", + "2,1,2", "minecraft:dirt" + ), resized.cells()); + assertEquals(List.of("minecraft:stone", "minecraft:dirt"), resized.palette()); + } + + @Test + void selectedBlockBrushAddsAndRemoveClearsCells() { + StudioVoxelEditor editor = StudioVoxelEditor.blank() + .selectBlock("minecraft:stone") + .brush(1, 2, 3) + .brush(99, 2, 3) + .remove(1, 2, 3); + + assertEquals(Map.of(), editor.export().cells()); + assertThrows(IllegalStateException.class, () -> StudioVoxelEditor.blank().brush(0, 0, 0)); + } + + @Test + void applySupportsAddRemoveSquareRoundAndFillTools() { + StudioVoxelEditor editor = StudioVoxelEditor.blank("tools", "Tools", 5, 3, 5); + + editor.apply(StudioVoxelEditor.Tool.ADD, 0, 2, 0, "minecraft:stone"); + editor.apply(StudioVoxelEditor.Tool.SQUARE, 2, 1, 2, "minecraft:dirt"); + editor.apply(StudioVoxelEditor.Tool.ROUND, 4, 1, 4, "minecraft:gold_block"); + editor.apply(StudioVoxelEditor.Tool.REMOVE, 2, 1, 2, "minecraft:ignored"); + editor.apply(StudioVoxelEditor.Tool.FILL, 0, 0, 0, "minecraft:oak_planks"); + + assertEquals("minecraft:stone", editor.blockAt(0, 2, 0)); + assertNull(editor.blockAt(2, 1, 2)); + assertEquals("minecraft:dirt", editor.blockAt(1, 1, 1)); + assertEquals("minecraft:gold_block", editor.blockAt(4, 1, 4)); + assertEquals("minecraft:gold_block", editor.blockAt(3, 1, 3)); + assertEquals("minecraft:gold_block", editor.blockAt(3, 1, 4)); + assertEquals("minecraft:oak_planks", editor.blockAt(4, 0, 4)); + } + + @Test + void addBrushAndPipetteDoNotPaintAreaFootprints() { + StudioVoxelEditor editor = StudioVoxelEditor.blank("tools", "Tools", 7, 3, 7); + + editor.apply(StudioVoxelEditor.Tool.ADD, 2, 1, 2, "minecraft:stone"); + editor.apply(StudioVoxelEditor.Tool.BRUSH, 4, 1, 4, "minecraft:dirt"); + editor.apply(StudioVoxelEditor.Tool.PIPETTE, 3, 1, 3, "minecraft:gold_block"); + + assertEquals(2, editor.export().cells().size()); + assertEquals("minecraft:stone", editor.blockAt(2, 1, 2)); + assertEquals("minecraft:dirt", editor.blockAt(4, 1, 4)); + assertNull(editor.blockAt(3, 1, 3)); + } + + @Test + void applySquarePaintsRadiusTwoArea() { + StudioVoxelEditor editor = StudioVoxelEditor.blank("tools", "Tools", 7, 3, 7); + + editor.apply(StudioVoxelEditor.Tool.SQUARE, 3, 1, 3, "minecraft:stone"); + + assertEquals(25, editor.export().cells().size()); + assertEquals("minecraft:stone", editor.blockAt(1, 1, 1)); + assertEquals("minecraft:stone", editor.blockAt(5, 1, 5)); + assertEquals("minecraft:stone", editor.blockAt(3, 1, 3)); + assertNull(editor.blockAt(0, 1, 3)); + assertNull(editor.blockAt(3, 2, 3)); + } + + @Test + void applyRoundPaintsRadiusTwoDisk() { + StudioVoxelEditor editor = StudioVoxelEditor.blank("tools", "Tools", 7, 3, 7); + + editor.apply(StudioVoxelEditor.Tool.ROUND, 3, 1, 3, "minecraft:stone"); + + assertEquals(13, editor.export().cells().size()); + assertEquals("minecraft:stone", editor.blockAt(3, 1, 3)); + assertEquals("minecraft:stone", editor.blockAt(1, 1, 3)); + assertEquals("minecraft:stone", editor.blockAt(5, 1, 3)); + assertEquals("minecraft:stone", editor.blockAt(3, 1, 1)); + assertEquals("minecraft:stone", editor.blockAt(3, 1, 5)); + assertNull(editor.blockAt(1, 1, 1)); + assertNull(editor.blockAt(3, 2, 3)); + } + + @Test + void squareFillPaintsOneLayerWithinBounds() { + VoxelProjectMemory project = StudioVoxelEditor.blank() + .selectBlock("minecraft:stone") + .fillSquare(0, 2, 0, 1) + .export(); + + assertEquals(4, project.cells().size()); + assertEquals("minecraft:stone", project.cells().get("0,2,0")); + assertEquals("minecraft:stone", project.cells().get("1,2,0")); + assertEquals("minecraft:stone", project.cells().get("0,2,1")); + assertEquals("minecraft:stone", project.cells().get("1,2,1")); + assertFalse(project.cells().containsKey("0,1,0")); + } + + @Test + void roundFillPaintsOnlyCellsInsideRadiusOnOneLayer() { + VoxelProjectMemory project = StudioVoxelEditor.blank() + .selectBlock("minecraft:stone") + .fillRound(2, 4, 2, 1) + .export(); + + assertEquals(5, project.cells().size()); + assertEquals("minecraft:stone", project.cells().get("2,4,2")); + assertEquals("minecraft:stone", project.cells().get("1,4,2")); + assertEquals("minecraft:stone", project.cells().get("3,4,2")); + assertEquals("minecraft:stone", project.cells().get("2,4,1")); + assertEquals("minecraft:stone", project.cells().get("2,4,3")); + assertFalse(project.cells().containsKey("1,4,1")); + assertFalse(project.cells().containsKey("2,5,2")); + } + + @Test + void floodFill2dReplacesBoundedConnectedAreaOnOneLayer() { + VoxelProjectMemory source = project(5, 3, 5, Map.of( + "0,1,0", "minecraft:stone", + "1,1,0", "minecraft:stone", + "0,1,1", "minecraft:stone", + "3,1,3", "minecraft:stone", + "1,2,0", "minecraft:stone", + "1,1,1", "minecraft:dirt" + )); + + VoxelProjectMemory filled = StudioVoxelEditor.edit(source) + .selectBlock("minecraft:gold_block") + .floodFill2d(0, 1, 0) + .export(); + + assertEquals("minecraft:gold_block", filled.cells().get("0,1,0")); + assertEquals("minecraft:gold_block", filled.cells().get("1,1,0")); + assertEquals("minecraft:gold_block", filled.cells().get("0,1,1")); + assertEquals("minecraft:stone", filled.cells().get("3,1,3")); + assertEquals("minecraft:stone", filled.cells().get("1,2,0")); + assertEquals("minecraft:dirt", filled.cells().get("1,1,1")); + } + + @Test + void floodFill2dCanFillBlankBoundedArea() { + VoxelProjectMemory source = project(3, 2, 3, Map.of( + "1,0,1", "minecraft:stone" + )); + + VoxelProjectMemory filled = StudioVoxelEditor.edit(source) + .floodFill2d(0, 0, 0, "minecraft:dirt") + .export(); + + assertEquals(9, filled.cells().size()); + assertEquals("minecraft:stone", filled.cells().get("1,0,1")); + assertEquals("minecraft:dirt", filled.cells().get("2,0,2")); + assertFalse(filled.cells().containsKey("0,1,0")); + } + + @Test + void exportNormalizesCellsAndRecalculatesPalette() { + VoxelProjectMemory source = new VoxelProjectMemory( + "messy", + "Messy", + 3, + 2, + 3, + List.of("minecraft:unused"), + Map.of( + "2,0,0", "minecraft:stone", + "0,0,0", "minecraft:dirt", + "99,0,0", "minecraft:gold_block", + "1,0,0", " ", + "bad", "minecraft:oak_planks" + ), + 4L, + 5L + ); + + VoxelProjectMemory exported = StudioVoxelEditor.export(source); + + assertEquals(Map.of( + "0,0,0", "minecraft:dirt", + "2,0,0", "minecraft:stone" + ), exported.cells()); + assertEquals(List.of("minecraft:dirt", "minecraft:stone"), exported.palette()); + assertEquals(4L, exported.createdTick()); + assertEquals(5L, exported.updatedTick()); + } + + private static VoxelProjectMemory project(int width, int height, int depth, Map cells) { + return new VoxelProjectMemory( + "test", + "Test", + width, + height, + depth, + List.of(), + cells, + 0L, + 0L + ); + } +} diff --git a/Gameplay/blocodex/src/test/java/dev/blocodex/voxel/VoxelProjectPlacementTest.java b/Gameplay/blocodex/src/test/java/dev/blocodex/voxel/VoxelProjectPlacementTest.java new file mode 100644 index 0000000..7fb87e9 --- /dev/null +++ b/Gameplay/blocodex/src/test/java/dev/blocodex/voxel/VoxelProjectPlacementTest.java @@ -0,0 +1,72 @@ +package dev.blocodex.voxel; + +import dev.blocodex.memory.VoxelProjectMemory; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import org.junit.jupiter.api.Test; + +import java.util.List; +import java.util.Map; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class VoxelProjectPlacementTest { + @Test + void orderedCellsSortBottomToTopThenRows() { + VoxelProjectMemory project = project(Map.of( + "2,1,1", "minecraft:stone", + "0,0,1", "minecraft:dirt", + "1,0,0", "minecraft:oak_planks" + )); + + List cells = VoxelProjectPlacement.orderedCells(project); + + assertEquals(VoxelProjectPlacement.cellKey(1, 0, 0), VoxelProjectPlacement.cellKey(cells.get(0).x(), cells.get(0).y(), cells.get(0).z())); + assertEquals(VoxelProjectPlacement.cellKey(0, 0, 1), VoxelProjectPlacement.cellKey(cells.get(1).x(), cells.get(1).y(), cells.get(1).z())); + assertEquals(VoxelProjectPlacement.cellKey(2, 1, 1), VoxelProjectPlacement.cellKey(cells.get(2).x(), cells.get(2).y(), cells.get(2).z())); + } + + @Test + void transformCentersAndRotatesAroundAnchor() { + VoxelProjectMemory project = project(Map.of()); + BlockPos anchor = new BlockPos(10, 64, 20); + VoxelProjectPlacement.Cell northWestBottom = new VoxelProjectPlacement.Cell(0, 0, 0, "minecraft:stone"); + VoxelProjectPlacement.Cell southEastTop = new VoxelProjectPlacement.Cell(2, 1, 1, "minecraft:stone"); + + assertEquals(new BlockPos(9, 64, 19), VoxelProjectPlacement.transform(project, northWestBottom, anchor, Direction.NORTH)); + assertEquals(new BlockPos(11, 65, 20), VoxelProjectPlacement.transform(project, southEastTop, anchor, Direction.NORTH)); + assertEquals(new BlockPos(11, 64, 19), VoxelProjectPlacement.transform(project, northWestBottom, anchor, Direction.EAST)); + assertEquals(new BlockPos(10, 65, 21), VoxelProjectPlacement.transform(project, southEastTop, anchor, Direction.EAST)); + } + + @Test + void transformUsesLowerHalfAsAnchorForEvenFootprints() { + VoxelProjectMemory project = project(16, 1, 16, Map.of()); + BlockPos anchor = new BlockPos(0, 64, 0); + VoxelProjectPlacement.Cell first = new VoxelProjectPlacement.Cell(0, 0, 0, "minecraft:stone"); + VoxelProjectPlacement.Cell last = new VoxelProjectPlacement.Cell(15, 0, 15, "minecraft:stone"); + + assertEquals(new BlockPos(-8, 64, -8), VoxelProjectPlacement.transform(project, first, anchor, Direction.NORTH)); + assertEquals(new BlockPos(7, 64, 7), VoxelProjectPlacement.transform(project, last, anchor, Direction.NORTH)); + assertEquals(new BlockPos(8, 64, -8), VoxelProjectPlacement.transform(project, first, anchor, Direction.EAST)); + assertEquals(new BlockPos(-7, 64, 7), VoxelProjectPlacement.transform(project, last, anchor, Direction.EAST)); + } + + private static VoxelProjectMemory project(Map cells) { + return project(3, 2, 2, cells); + } + + private static VoxelProjectMemory project(int width, int height, int depth, Map cells) { + return new VoxelProjectMemory( + "test", + "Test", + width, + height, + depth, + List.of("minecraft:stone", "minecraft:dirt", "minecraft:oak_planks"), + cells, + 0L, + 0L + ); + } +} diff --git a/Gameplay/blocodex/src/test/java/dev/blocodex/voxel/VoxelProjectRequirementsTest.java b/Gameplay/blocodex/src/test/java/dev/blocodex/voxel/VoxelProjectRequirementsTest.java new file mode 100644 index 0000000..17f673d --- /dev/null +++ b/Gameplay/blocodex/src/test/java/dev/blocodex/voxel/VoxelProjectRequirementsTest.java @@ -0,0 +1,36 @@ +package dev.blocodex.voxel; + +import dev.blocodex.memory.PlayerMemory; +import dev.blocodex.memory.VoxelProjectMemory; +import org.junit.jupiter.api.Test; + +import java.util.List; +import java.util.Map; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class VoxelProjectRequirementsTest { + @Test + void countsRequiredBlocksAndReportsOnlyUndiscoveredBlocks() { + VoxelProjectMemory project = new VoxelProjectMemory( + "stone-giant", + "Stone Giant", + 2, + 2, + 1, + List.of("minecraft:stone", "minecraft:gray_concrete"), + Map.of( + "0,0,0", "minecraft:stone", + "1,0,0", "minecraft:stone", + "0,1,0", "minecraft:gray_concrete" + ), + 0L, + 0L + ); + PlayerMemory memory = new PlayerMemory(); + memory.discoverBlocks(List.of("minecraft:stone")); + + assertEquals(Map.of("minecraft:stone", 2, "minecraft:gray_concrete", 1), VoxelProjectRequirements.requiredBlockCounts(project)); + assertEquals(List.of("minecraft:gray_concrete"), VoxelProjectRequirements.missingRequiredBlocks(project, memory)); + } +} diff --git a/Gameplay/blocodex/tools/GenerateBlockTextures.java b/Gameplay/blocodex/tools/GenerateBlockTextures.java new file mode 100644 index 0000000..701b7f4 --- /dev/null +++ b/Gameplay/blocodex/tools/GenerateBlockTextures.java @@ -0,0 +1,203 @@ +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; + +public final class GenerateBlockTextures { + private static final Path OUT = Path.of("src/main/resources/assets/blocodex/textures/block"); + + private static final int BODY = 0xFFE0D7C6; + private static final int BODY_MID = 0xFFCABFAC; + private static final int BODY_DARK = 0xFF80776A; + private static final int BODY_LIGHT = 0xFFF8F0DD; + private static final int OUTLINE = 0xFF2A2723; + private static final int BLACK = 0xFF050706; + private static final int SCREEN = 0xFF0B2A25; + private static final int SCREEN_GLOW = 0xFF5BFFB5; + private static final int SLOT = 0xFF191611; + private static final int RED = 0xFFC8403C; + private static final int GREEN = 0xFF5DC462; + private static final int YELLOW = 0xFFE3C34B; + private static final int WHITE = 0xFFEAE3D5; + private static final int METAL = 0xFF9FA5A2; + + private GenerateBlockTextures() { + } + + public static void main(String[] args) throws Exception { + Files.createDirectories(OUT); + write("computer_front.png", front()); + write("computer_right.png", right()); + write("computer_left.png", left()); + write("computer_back.png", back()); + write("computer_top.png", top()); + write("computer_bottom.png", bottom()); + } + + private static BufferedImage front() { + BufferedImage image = base(); + rect(image, 2, 2, 12, 10, OUTLINE); + rect(image, 3, 3, 11, 9, BLACK); + rect(image, 4, 4, 10, 8, SCREEN); + set(image, 4, 4, 0xFF17463C); + set(image, 9, 7, SCREEN_GLOW); + set(image, 8, 7, SCREEN_GLOW); + set(image, 5, 5, 0xFF2E836D); + + rect(image, 2, 11, 10, 13, BODY_LIGHT); + line(image, 3, 12, 9, 12, SLOT); + set(image, 8, 11, 0xFF6DA6C8); + set(image, 9, 11, 0xFF3B657D); + + rect(image, 12, 11, 14, 13, GREEN); + set(image, 12, 11, 0xFFA9F1A7); + rect(image, 14, 11, 15, 13, RED); + + line(image, 3, 14, 7, 14, SLOT); + line(image, 9, 14, 13, 14, SLOT); + set(image, 2, 14, BODY_DARK); + return image; + } + + private static BufferedImage right() { + BufferedImage image = base(); + rect(image, 2, 2, 14, 14, BODY_MID); + line(image, 3, 3, 13, 3, BODY_LIGHT); + line(image, 13, 3, 13, 13, BODY_DARK); + + line(image, 3, 5, 7, 5, BODY_DARK); + line(image, 3, 8, 7, 8, BODY_DARK); + line(image, 3, 11, 7, 11, BODY_DARK); + rca(image, 10, 4, YELLOW); + rca(image, 10, 8, WHITE); + rca(image, 10, 12, RED); + + screw(image, 3, 3); + screw(image, 3, 12); + return image; + } + + private static BufferedImage left() { + BufferedImage image = base(); + rect(image, 2, 2, 14, 14, BODY_MID); + line(image, 3, 3, 13, 3, BODY_LIGHT); + line(image, 13, 3, 13, 13, BODY_DARK); + + line(image, 3, 5, 12, 5, SLOT); + line(image, 3, 7, 12, 7, SLOT); + line(image, 3, 9, 12, 9, SLOT); + line(image, 3, 11, 12, 11, SLOT); + set(image, 12, 5, BODY_LIGHT); + set(image, 12, 7, BODY_LIGHT); + set(image, 12, 9, BODY_LIGHT); + set(image, 12, 11, BODY_LIGHT); + + screw(image, 3, 3); + screw(image, 12, 12); + return image; + } + + private static BufferedImage back() { + BufferedImage image = base(); + rect(image, 2, 2, 14, 14, BODY_MID); + line(image, 3, 3, 13, 3, BODY_LIGHT); + + rect(image, 4, 4, 12, 10, OUTLINE); + rect(image, 5, 5, 11, 9, BLACK); + set(image, 7, 6, METAL); + set(image, 9, 6, METAL); + set(image, 8, 8, BODY_DARK); + + line(image, 4, 12, 7, 12, SLOT); + line(image, 9, 12, 12, 12, SLOT); + line(image, 4, 14, 12, 14, SLOT); + screw(image, 3, 3); + screw(image, 13, 3); + return image; + } + + private static BufferedImage top() { + BufferedImage image = base(); + rect(image, 2, 2, 14, 14, BODY); + line(image, 3, 3, 13, 3, BODY_LIGHT); + line(image, 3, 3, 3, 13, BODY_LIGHT); + line(image, 3, 13, 13, 13, BODY_DARK); + line(image, 13, 3, 13, 13, BODY_DARK); + line(image, 5, 6, 11, 6, SLOT); + line(image, 5, 8, 11, 8, SLOT); + line(image, 5, 10, 11, 10, SLOT); + set(image, 12, 12, BODY_LIGHT); + return image; + } + + private static BufferedImage bottom() { + BufferedImage image = base(); + rect(image, 2, 2, 14, 14, BODY_DARK); + rect(image, 4, 4, 7, 7, OUTLINE); + rect(image, 10, 4, 13, 7, OUTLINE); + rect(image, 4, 10, 7, 13, OUTLINE); + rect(image, 10, 10, 13, 13, OUTLINE); + line(image, 7, 8, 9, 8, SLOT); + line(image, 7, 9, 9, 9, SLOT); + return image; + } + + private static BufferedImage base() { + BufferedImage image = new BufferedImage(16, 16, BufferedImage.TYPE_INT_ARGB); + rect(image, 0, 0, 16, 16, BODY); + line(image, 0, 0, 15, 0, OUTLINE); + line(image, 0, 0, 0, 15, OUTLINE); + line(image, 0, 15, 15, 15, OUTLINE); + line(image, 15, 0, 15, 15, OUTLINE); + line(image, 1, 1, 14, 1, BODY_LIGHT); + line(image, 1, 1, 1, 14, BODY_LIGHT); + line(image, 1, 14, 14, 14, BODY_DARK); + line(image, 14, 1, 14, 14, BODY_DARK); + return image; + } + + private static void rca(BufferedImage image, int x, int y, int color) { + set(image, x, y - 1, OUTLINE); + set(image, x - 1, y, OUTLINE); + set(image, x, y, color); + set(image, x + 1, y, OUTLINE); + set(image, x, y + 1, OUTLINE); + set(image, x - 1, y - 1, METAL); + } + + private static void screw(BufferedImage image, int x, int y) { + set(image, x, y, OUTLINE); + set(image, x + 1, y, METAL); + set(image, x, y + 1, METAL); + set(image, x + 1, y + 1, BODY_DARK); + } + + private static void rect(BufferedImage image, int x1, int y1, int x2, int y2, int color) { + for (int y = Math.max(0, y1); y < Math.min(image.getHeight(), y2); y++) { + for (int x = Math.max(0, x1); x < Math.min(image.getWidth(), x2); x++) { + image.setRGB(x, y, color); + } + } + } + + private static void line(BufferedImage image, int x1, int y1, int x2, int y2, int color) { + if (x1 == x2) { + rect(image, x1, Math.min(y1, y2), x1 + 1, Math.max(y1, y2) + 1, color); + return; + } + if (y1 == y2) { + rect(image, Math.min(x1, x2), y1, Math.max(x1, x2) + 1, y1 + 1, color); + } + } + + private static void set(BufferedImage image, int x, int y, int color) { + if (x >= 0 && y >= 0 && x < image.getWidth() && y < image.getHeight()) { + image.setRGB(x, y, color); + } + } + + private static void write(String name, BufferedImage image) throws IOException { + ImageIO.write(image, "png", OUT.resolve(name).toFile()); + } +} diff --git a/Gameplay/blocodex/tools/GenerateGuiTextures.java b/Gameplay/blocodex/tools/GenerateGuiTextures.java new file mode 100644 index 0000000..a2628ca --- /dev/null +++ b/Gameplay/blocodex/tools/GenerateGuiTextures.java @@ -0,0 +1,298 @@ +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; + +public final class GenerateGuiTextures { + private static final Path OUT = Path.of("src/main/resources/assets/blocodex/textures/gui"); + + private static final int TRANSPARENT = 0x00000000; + private static final int DARK = 0xFF211F1C; + private static final int BLACK = 0xFF050606; + private static final int BODY = 0xFFE5DED0; + private static final int BODY_SHADOW = 0xFF8F887D; + private static final int BODY_MID = 0xFFD9D1C2; + private static final int BODY_LIGHT = 0xFFFFFAF0; + private static final int BUTTON = 0xFFC9C1B3; + private static final int SCREEN = 0xFF0A0D0C; + private static final int SCREEN_MID = 0xFF121614; + private static final int GRID = 0x66000000; + + private GenerateGuiTextures() { + } + + public static void main(String[] args) throws Exception { + Files.createDirectories(OUT); + write("device_panel.png", devicePanel()); + write("screen_frame.png", screenFrame()); + write("bottom_panel.png", bottomPanel()); + write("button_square.png", button(24, 24)); + write("button_wide.png", button(34, 24)); + write("slider_well.png", sliderWell()); + write("slider_knob.png", sliderKnob()); + write("vent_slots.png", ventSlots()); + write("status_light.png", statusLight()); + write("icon_menu.png", iconMenu()); + write("icon_arrow_left.png", iconArrow(true)); + write("icon_arrow_right.png", iconArrow(false)); + write("selection_frame.png", selectionFrame()); + write("grid_overlay_9x9.png", gridOverlay()); + write("blocodex_wordmark.png", wordmark()); + write("_gui_texture_preview.png", preview()); + } + + private static BufferedImage devicePanel() { + BufferedImage image = image(32, 32); + cutPanel(image, BODY_SHADOW, BODY, BODY_MID, BODY_LIGHT, DARK); + rect(image, 8, 8, 24, 24, BODY_MID); + line(image, 8, 9, 23, 9, 0x22FFFFFF); + line(image, 8, 22, 23, 22, 0x18000000); + return image; + } + + private static BufferedImage screenFrame() { + BufferedImage image = image(32, 32); + rect(image, 2, 2, 30, 30, 0xFF33302A); + rect(image, 4, 4, 28, 28, BODY_LIGHT); + rect(image, 6, 6, 26, 26, BLACK); + rect(image, 8, 8, 24, 24, SCREEN); + rect(image, 10, 10, 22, 22, SCREEN_MID); + line(image, 5, 4, 27, 4, 0xFFFFFFFF); + line(image, 4, 5, 4, 27, 0xFFFFFFFF); + line(image, 5, 27, 27, 27, DARK); + line(image, 27, 5, 27, 27, DARK); + return image; + } + + private static BufferedImage bottomPanel() { + BufferedImage image = image(32, 24); + rect(image, 1, 1, 31, 23, 0xFF5A554D); + rect(image, 2, 2, 30, 22, 0xFFFFFFFF); + rect(image, 3, 3, 29, 21, 0xFFD8D0C2); + rect(image, 5, 5, 27, 19, 0xFFDED6C8); + line(image, 3, 21, 29, 21, 0xFF5A554D); + line(image, 29, 3, 29, 21, 0xFF5A554D); + return image; + } + + private static BufferedImage button(int width, int height) { + BufferedImage image = image(width, height); + rect(image, 1, 1, width - 1, height - 1, 0xFF111111); + rect(image, 2, 2, width - 2, height - 2, 0xFF4C4842); + rect(image, 4, 4, width - 3, height - 3, BUTTON); + rect(image, 5, 5, width - 5, height - 5, 0xFFD7D0C3); + line(image, 3, 3, width - 3, 3, 0xFFFFFFFF); + line(image, 3, 3, 3, height - 3, 0xFFFFFFFF); + line(image, 3, height - 3, width - 3, height - 3, 0xFF191817); + line(image, width - 3, 3, width - 3, height - 3, 0xFF191817); + return image; + } + + private static BufferedImage sliderWell() { + BufferedImage image = image(20, 32); + rect(image, 2, 1, 18, 31, DARK); + rect(image, 4, 3, 16, 29, BODY_LIGHT); + rect(image, 6, 5, 14, 27, BLACK); + rect(image, 8, 7, 12, 25, SCREEN); + rect(image, 9, 9, 11, 23, 0xFF060807); + line(image, 5, 4, 15, 4, 0xFFFFFFFF); + line(image, 5, 4, 5, 28, 0xFFFFFFFF); + line(image, 5, 28, 15, 28, DARK); + line(image, 15, 4, 15, 28, DARK); + return image; + } + + private static BufferedImage sliderKnob() { + BufferedImage image = image(18, 12); + rect(image, 1, 1, 17, 11, 0xFF151515); + rect(image, 2, 2, 16, 10, BODY_LIGHT); + rect(image, 4, 3, 15, 9, 0xFFE8E0D2); + line(image, 2, 2, 15, 2, 0xFFFFFFFF); + line(image, 2, 10, 16, 10, 0xFF4A453F); + return image; + } + + private static BufferedImage ventSlots() { + BufferedImage image = image(96, 24); + for (int i = 0; i < 5; i++) { + int y = 3 + i * 4; + rect(image, 0, y, 96, y + 2, 0xFF181817); + line(image, 0, y + 2, 95, y + 2, 0xFFFFFFFF); + } + return image; + } + + private static BufferedImage statusLight() { + BufferedImage image = image(12, 12); + rect(image, 3, 2, 9, 10, 0xFF202020); + rect(image, 2, 3, 10, 9, 0xFF202020); + rect(image, 4, 4, 8, 8, 0xFFBFC7C9); + set(image, 5, 5, 0xFFE7F0F0); + set(image, 8, 8, 0xFF626B6B); + return image; + } + + private static BufferedImage iconMenu() { + BufferedImage image = image(16, 16); + for (int y : new int[]{4, 8, 12}) { + rect(image, 3, y, 13, y + 2, DARK); + } + return image; + } + + private static BufferedImage iconArrow(boolean left) { + BufferedImage image = image(16, 16); + if (left) { + rect(image, 6, 7, 13, 9, DARK); + rect(image, 5, 6, 8, 10, DARK); + rect(image, 4, 5, 7, 11, DARK); + rect(image, 3, 4, 6, 12, DARK); + } else { + rect(image, 3, 7, 10, 9, DARK); + rect(image, 8, 6, 11, 10, DARK); + rect(image, 9, 5, 12, 11, DARK); + rect(image, 10, 4, 13, 12, DARK); + } + return image; + } + + private static BufferedImage selectionFrame() { + BufferedImage image = image(16, 16); + line(image, 0, 0, 15, 0, 0xFFFFFFFF); + line(image, 0, 0, 0, 15, 0xFFFFFFFF); + line(image, 0, 15, 15, 15, 0xFF000000); + line(image, 15, 0, 15, 15, 0xFF000000); + line(image, 1, 1, 14, 1, 0xCCFFFFFF); + line(image, 1, 1, 1, 14, 0xCCFFFFFF); + return image; + } + + private static BufferedImage gridOverlay() { + BufferedImage image = image(144, 144); + for (int i = 0; i <= 9; i++) { + int p = Math.min(143, i * 16); + line(image, p, 0, p, 143, GRID); + line(image, 0, p, 143, p, GRID); + } + return image; + } + + private static BufferedImage wordmark() { + BufferedImage image = image(80, 16); + drawTinyText(image, "BLOCODEX", 0, 4, 0xFF111111); + drawTinyText(image, "BLOCODEX", 1, 5, 0xFFFFFFFF); + return image; + } + + private static BufferedImage preview() { + BufferedImage image = image(256, 160); + rect(image, 0, 0, 256, 160, 0xFF2C2925); + copy(image, devicePanel(), 8, 8); + copy(image, screenFrame(), 50, 8); + copy(image, bottomPanel(), 92, 8); + copy(image, button(24, 24), 136, 8); + copy(image, button(34, 24), 168, 8); + copy(image, sliderWell(), 214, 6); + copy(image, sliderKnob(), 215, 42); + copy(image, ventSlots(), 8, 64); + copy(image, statusLight(), 112, 66); + copy(image, iconMenu(), 136, 64); + copy(image, iconArrow(true), 160, 64); + copy(image, iconArrow(false), 184, 64); + copy(image, selectionFrame(), 212, 64); + copy(image, wordmark(), 8, 104); + copy(image, gridOverlay(), 104, 96, 72, 72); + return image; + } + + private static BufferedImage image(int width, int height) { + BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB); + rect(image, 0, 0, width, height, TRANSPARENT); + return image; + } + + private static void cutPanel(BufferedImage image, int shadow, int fill, int inner, int light, int dark) { + rect(image, 2, 0, image.getWidth() - 2, image.getHeight(), dark); + rect(image, 0, 2, image.getWidth(), image.getHeight() - 2, dark); + rect(image, 3, 1, image.getWidth() - 3, image.getHeight() - 1, shadow); + rect(image, 1, 3, image.getWidth() - 1, image.getHeight() - 3, shadow); + rect(image, 4, 2, image.getWidth() - 4, image.getHeight() - 2, fill); + rect(image, 2, 4, image.getWidth() - 2, image.getHeight() - 4, fill); + rect(image, 6, 6, image.getWidth() - 6, image.getHeight() - 6, inner); + line(image, 3, 2, image.getWidth() - 4, 2, light); + line(image, 2, 3, 2, image.getHeight() - 4, light); + line(image, 3, image.getHeight() - 3, image.getWidth() - 4, image.getHeight() - 3, shadow); + line(image, image.getWidth() - 3, 3, image.getWidth() - 3, image.getHeight() - 4, shadow); + } + + private static void drawTinyText(BufferedImage image, String text, int x, int y, int color) { + int cursor = x; + for (int i = 0; i < text.length(); i++) { + drawGlyph(image, text.charAt(i), cursor, y, color); + cursor += 6; + } + } + + private static void drawGlyph(BufferedImage image, char c, int x, int y, int color) { + String[] glyph = switch (c) { + case 'B' -> new String[]{"1110", "1001", "1110", "1001", "1110"}; + case 'L' -> new String[]{"1000", "1000", "1000", "1000", "1111"}; + case 'O' -> new String[]{"0110", "1001", "1001", "1001", "0110"}; + case 'C' -> new String[]{"0111", "1000", "1000", "1000", "0111"}; + case 'D' -> new String[]{"1110", "1001", "1001", "1001", "1110"}; + case 'E' -> new String[]{"1111", "1000", "1110", "1000", "1111"}; + case 'X' -> new String[]{"1001", "1001", "0110", "1001", "1001"}; + default -> new String[]{"0000", "0000", "0000", "0000", "0000"}; + }; + for (int row = 0; row < glyph.length; row++) { + for (int col = 0; col < glyph[row].length(); col++) { + if (glyph[row].charAt(col) == '1') { + set(image, x + col, y + row, color); + } + } + } + } + + private static void copy(BufferedImage target, BufferedImage source, int x, int y) { + copy(target, source, x, y, source.getWidth(), source.getHeight()); + } + + private static void copy(BufferedImage target, BufferedImage source, int x, int y, int width, int height) { + for (int yy = 0; yy < height; yy++) { + for (int xx = 0; xx < width; xx++) { + int sx = xx * source.getWidth() / width; + int sy = yy * source.getHeight() / height; + set(target, x + xx, y + yy, source.getRGB(sx, sy)); + } + } + } + + private static void rect(BufferedImage image, int x1, int y1, int x2, int y2, int color) { + for (int y = Math.max(0, y1); y < Math.min(image.getHeight(), y2); y++) { + for (int x = Math.max(0, x1); x < Math.min(image.getWidth(), x2); x++) { + set(image, x, y, color); + } + } + } + + private static void line(BufferedImage image, int x1, int y1, int x2, int y2, int color) { + if (x1 == x2) { + rect(image, x1, Math.min(y1, y2), x1 + 1, Math.max(y1, y2) + 1, color); + return; + } + if (y1 == y2) { + rect(image, Math.min(x1, x2), y1, Math.max(x1, x2) + 1, y1 + 1, color); + } + } + + private static void set(BufferedImage image, int x, int y, int color) { + if (x >= 0 && y >= 0 && x < image.getWidth() && y < image.getHeight()) { + image.setRGB(x, y, color); + } + } + + private static void write(String name, BufferedImage image) throws IOException { + ImageIO.write(image, "png", OUT.resolve(name).toFile()); + } +} diff --git a/Gameplay/computer/build.gradle b/Gameplay/computer/build.gradle new file mode 100644 index 0000000..556ec24 --- /dev/null +++ b/Gameplay/computer/build.gradle @@ -0,0 +1,72 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +base { + archivesName = project.archives_base_name +} + +repositories { + mavenCentral() +} + +loom { + splitEnvironmentSourceSets() + + mods { + "computer" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + inputs.property "archivesName", project.base.archivesName + + from("../../license.txt") { + rename { "${it}_${inputs.properties.archivesName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + artifactId = project.archives_base_name + from components.java + } + } + + repositories { + } +} diff --git a/Gameplay/computer/gradle.properties b/Gameplay/computer/gradle.properties new file mode 100644 index 0000000..e6518c4 --- /dev/null +++ b/Gameplay/computer/gradle.properties @@ -0,0 +1,20 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=computer + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Gameplay/computer/gradle/wrapper/gradle-wrapper.jar b/Gameplay/computer/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Gameplay/computer/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Gameplay/computer/gradle/wrapper/gradle-wrapper.properties b/Gameplay/computer/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Gameplay/computer/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Gameplay/computer/gradlew b/Gameplay/computer/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Gameplay/computer/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Gameplay/computer/gradlew.bat b/Gameplay/computer/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Gameplay/computer/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Gameplay/computer/settings.gradle b/Gameplay/computer/settings.gradle new file mode 100644 index 0000000..286a89d --- /dev/null +++ b/Gameplay/computer/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "computer" diff --git a/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/ComputerClient.java b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/ComputerClient.java new file mode 100644 index 0000000..97c2495 --- /dev/null +++ b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/ComputerClient.java @@ -0,0 +1,46 @@ +package fr.koka99cab.computer.client; + +import fr.koka99cab.computer.client.gui.ComputerDesktopScreen; +import fr.koka99cab.computer.client.voxel.ComputerBuildPlacementController; +import fr.koka99cab.computer.network.ComputerOpenPayload; +import fr.koka99cab.computer.network.ComputerStatsPayload; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.fabricmc.fabric.api.event.player.AttackBlockCallback; +import net.fabricmc.fabric.api.event.player.UseBlockCallback; +import net.fabricmc.fabric.api.event.player.UseItemCallback; +import net.minecraft.world.InteractionResult; + +public final class ComputerClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + ComputerLiveStats.register(); + ComputerBuildPlacementController.initialize(); + ClientPlayNetworking.registerGlobalReceiver(ComputerOpenPayload.TYPE, (payload, context) -> + context.client().execute(() -> context.client().setScreen(new ComputerDesktopScreen()))); + ClientPlayNetworking.registerGlobalReceiver(ComputerStatsPayload.TYPE, (payload, context) -> + context.client().execute(() -> ComputerDesktopScreen.acceptStatsPayload(payload))); + ClientPlayConnectionEvents.DISCONNECT.register((handler, client) -> ComputerBuildPlacementController.reset()); + AttackBlockCallback.EVENT.register((player, world, hand, pos, direction) -> { + if (world.isClientSide()) { + return ComputerBuildPlacementController.confirmFromAttack(pos, direction); + } + return InteractionResult.PASS; + }); + UseBlockCallback.EVENT.register((player, world, hand, hitResult) -> { + if (world.isClientSide()) { + return ComputerBuildPlacementController.confirmFromUse(hitResult); + } + return InteractionResult.PASS; + }); + UseItemCallback.EVENT.register((player, world, hand) -> { + if (world.isClientSide()) { + return ComputerBuildPlacementController.confirmCurrentAnchor(); + } + return InteractionResult.PASS; + }); + ClientTickEvents.END_CLIENT_TICK.register(ComputerBuildPlacementController::onEndTick); + } +} diff --git a/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/ComputerLiveStats.java b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/ComputerLiveStats.java new file mode 100644 index 0000000..768a5b0 --- /dev/null +++ b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/ComputerLiveStats.java @@ -0,0 +1,340 @@ +package fr.koka99cab.computer.client; + +import java.util.HashMap; +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; +import net.fabricmc.fabric.api.event.client.player.ClientPlayerBlockBreakEvents; +import net.fabricmc.fabric.api.event.player.UseBlockCallback; +import net.minecraft.client.Minecraft; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.Identifier; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.stats.Stats; +import net.minecraft.stats.StatsCounter; +import net.minecraft.world.item.Item; +import net.minecraft.world.entity.player.Inventory; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.phys.Vec3; + +public final class ComputerLiveStats { + private static final double MAX_TRACKED_TICK_DISTANCE = 24.0D; + private static final long HISTORY_SAMPLE_INTERVAL_MS = 2000L; + private static String sessionKey = ""; + private static Vec3 lastPosition; + private static long livePlayTimeTicks; + private static long liveDistanceCm; + private static long liveMinedBlocks; + private static long livePlacedBlocks; + private static long livePickedBlocks; + private static long baseCraftedItems = -1L; + private static long baseMobKills = -1L; + private static long basePlayTimeTicks = -1L; + private static long baseDistanceCm = -1L; + private static long baseMinedBlocks = -1L; + private static long basePlacedBlocks = -1L; + private static long basePickedBlocks = -1L; + private static long lastHistorySampleMs; + private static Map basePickedFamilies = Map.of(); + private static Map livePickedFamilies = new HashMap<>(); + private static Map lastInventoryFamilies = Map.of(); + private static final List historySamples = new ArrayList<>(); + + private ComputerLiveStats() { + } + + public static void register() { + ClientTickEvents.END_CLIENT_TICK.register(ComputerLiveStats::tick); + ClientPlayerBlockBreakEvents.AFTER.register((level, player, pos, state) -> { + ensureSession(Minecraft.getInstance()); + if (!state.isAir()) { + liveMinedBlocks++; + } + }); + UseBlockCallback.EVENT.register((player, world, hand, hitResult) -> { + if (world.isClientSide() && hand == InteractionHand.MAIN_HAND && player == Minecraft.getInstance().player) { + ItemStack stack = player.getItemInHand(hand); + if (!stack.isEmpty() && stack.getItem() instanceof BlockItem) { + ensureSession(Minecraft.getInstance()); + livePlacedBlocks++; + } + } + return InteractionResult.PASS; + }); + } + + private static void tick(Minecraft client) { + if (client.player == null || client.level == null) { + lastPosition = null; + lastInventoryFamilies = Map.of(); + return; + } + ensureSession(client); + livePlayTimeTicks++; + Vec3 position = client.player.position(); + if (lastPosition != null) { + double distance = position.distanceTo(lastPosition); + if (distance > 0.0D && distance <= MAX_TRACKED_TICK_DISTANCE) { + liveDistanceCm += Math.round(distance * 100.0D); + } + } + lastPosition = position; + updateInventoryPickups(client.player); + recordHistorySample(client, false); + } + + private static void ensureSession(Minecraft client) { + String key = sessionKey(client); + if (key.equals(sessionKey)) { + return; + } + sessionKey = key; + lastPosition = null; + livePlayTimeTicks = 0L; + liveDistanceCm = 0L; + liveMinedBlocks = 0L; + livePlacedBlocks = 0L; + livePickedBlocks = 0L; + baseCraftedItems = -1L; + baseMobKills = -1L; + lastHistorySampleMs = 0L; + livePickedFamilies = new HashMap<>(); + lastInventoryFamilies = Map.of(); + historySamples.clear(); + StatsCounter stats = client.player == null ? null : client.player.getStats(); + if (stats == null) { + basePlayTimeTicks = -1L; + baseDistanceCm = -1L; + baseMinedBlocks = -1L; + basePlacedBlocks = -1L; + basePickedBlocks = -1L; + baseCraftedItems = -1L; + baseMobKills = -1L; + basePickedFamilies = Map.of(); + } else { + basePlayTimeTicks = customStat(stats, Stats.PLAY_TIME); + baseDistanceCm = distanceCentimeters(stats); + baseMinedBlocks = minedBlocks(stats); + basePlacedBlocks = usedBlockItems(stats); + basePickedBlocks = pickedBlockItems(stats); + baseCraftedItems = craftedItems(stats); + baseMobKills = customStat(stats, Stats.MOB_KILLS); + basePickedFamilies = pickedBlockFamilies(stats); + recordHistorySample(client, true); + } + } + + private static String sessionKey(Minecraft client) { + if (client.player == null || client.level == null) { + return ""; + } + return client.player.getUUID() + "@" + client.level.dimension().identifier(); + } + + private static void updateInventoryPickups(LocalPlayer player) { + Map current = inventoryBlockFamilies(player); + if (!lastInventoryFamilies.isEmpty()) { + for (Map.Entry entry : current.entrySet()) { + long previous = lastInventoryFamilies.getOrDefault(entry.getKey(), 0L); + long delta = entry.getValue() - previous; + if (delta > 0L) { + livePickedBlocks += delta; + livePickedFamilies.merge(entry.getKey(), delta, Long::sum); + } + } + } + lastInventoryFamilies = current; + } + + private static Map inventoryBlockFamilies(LocalPlayer player) { + Map counts = new LinkedHashMap<>(); + Inventory inventory = player.getInventory(); + for (int slot = 0; slot < inventory.getContainerSize(); slot++) { + ItemStack stack = inventory.getItem(slot); + if (!stack.isEmpty() && stack.getItem() instanceof BlockItem blockItem) { + counts.merge(blockFamily(blockItem.getBlock()), (long) stack.getCount(), Long::sum); + } + } + return counts; + } + + public static long playTimeTicks(long vanillaValue) { + if (basePlayTimeTicks < 0L) { + basePlayTimeTicks = vanillaValue; + } + return Math.max(vanillaValue, basePlayTimeTicks + livePlayTimeTicks); + } + + public static long distanceCm(long vanillaValue) { + if (baseDistanceCm < 0L) { + baseDistanceCm = vanillaValue; + } + return Math.max(vanillaValue, baseDistanceCm + liveDistanceCm); + } + + public static long minedBlocks(long vanillaValue) { + if (baseMinedBlocks < 0L) { + baseMinedBlocks = vanillaValue; + } + return Math.max(vanillaValue, baseMinedBlocks + liveMinedBlocks); + } + + public static long placedBlocks(long vanillaValue) { + if (basePlacedBlocks < 0L) { + basePlacedBlocks = vanillaValue; + } + return Math.max(vanillaValue, basePlacedBlocks + livePlacedBlocks); + } + + public static long pickedBlocks(long vanillaValue) { + if (basePickedBlocks < 0L) { + basePickedBlocks = vanillaValue; + } + return Math.max(vanillaValue, basePickedBlocks + livePickedBlocks); + } + + public static Map pickedBlockFamilies(Map vanillaFamilies) { + if (basePickedFamilies.isEmpty() && !vanillaFamilies.isEmpty()) { + basePickedFamilies = new HashMap<>(vanillaFamilies); + } + Map merged = new LinkedHashMap<>(vanillaFamilies); + for (Map.Entry entry : livePickedFamilies.entrySet()) { + long base = basePickedFamilies.getOrDefault(entry.getKey(), 0L); + long liveValue = base + entry.getValue(); + merged.merge(entry.getKey(), liveValue, Math::max); + } + return merged; + } + + public static List historySamples() { + return List.copyOf(historySamples); + } + + private static void recordHistorySample(Minecraft client, boolean force) { + if (client.player == null) { + return; + } + long now = System.currentTimeMillis(); + if (!force && now - lastHistorySampleMs < HISTORY_SAMPLE_INTERVAL_MS) { + return; + } + StatsCounter stats = client.player.getStats(); + LiveSample sample = new LiveSample( + playTimeTicks(customStat(stats, Stats.PLAY_TIME)), + distanceCm(distanceCentimeters(stats)), + sessionValue(baseMinedBlocks, liveMinedBlocks), + Math.max(baseCraftedItems, craftedItems(stats)), + sessionValue(basePickedBlocks, livePickedBlocks), + Math.max(baseMobKills, customStat(stats, Stats.MOB_KILLS)) + ); + if (historySamples.isEmpty() || !historySamples.getLast().equals(sample)) { + historySamples.add(sample); + } + lastHistorySampleMs = now; + } + + private static long sessionValue(long base, long live) { + return Math.max(0L, (base < 0L ? 0L : base) + live); + } + + private static long customStat(StatsCounter stats, Identifier id) { + return stats.getValue(Stats.CUSTOM.get(id)); + } + + private static long distanceCentimeters(StatsCounter stats) { + return customStat(stats, Stats.WALK_ONE_CM) + + customStat(stats, Stats.CROUCH_ONE_CM) + + customStat(stats, Stats.SPRINT_ONE_CM) + + customStat(stats, Stats.WALK_ON_WATER_ONE_CM) + + customStat(stats, Stats.WALK_UNDER_WATER_ONE_CM) + + customStat(stats, Stats.SWIM_ONE_CM) + + customStat(stats, Stats.FLY_ONE_CM) + + customStat(stats, Stats.AVIATE_ONE_CM) + + customStat(stats, Stats.BOAT_ONE_CM) + + customStat(stats, Stats.MINECART_ONE_CM) + + customStat(stats, Stats.HORSE_ONE_CM); + } + + private static long minedBlocks(StatsCounter stats) { + long total = 0L; + for (Block block : BuiltInRegistries.BLOCK) { + total += stats.getValue(Stats.BLOCK_MINED, block); + } + return total; + } + + private static long pickedBlockItems(StatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + if (item instanceof BlockItem) { + total += stats.getValue(Stats.ITEM_PICKED_UP, item); + } + } + return total; + } + + private static long craftedItems(StatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + total += stats.getValue(Stats.ITEM_CRAFTED, item); + } + return total; + } + + private static long usedBlockItems(StatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + if (item instanceof BlockItem) { + total += stats.getValue(Stats.ITEM_USED, item); + } + } + return total; + } + + private static Map pickedBlockFamilies(StatsCounter stats) { + Map counts = new LinkedHashMap<>(); + for (Item item : BuiltInRegistries.ITEM) { + if (item instanceof BlockItem blockItem) { + long count = stats.getValue(Stats.ITEM_PICKED_UP, item); + if (count > 0L) { + counts.merge(blockFamily(blockItem.getBlock()), count, Long::sum); + } + } + } + return counts; + } + + private static String blockFamily(Block block) { + Identifier id = BuiltInRegistries.BLOCK.getKey(block); + String path = id == null ? "" : id.getPath().toLowerCase(Locale.ROOT); + if (path.contains("ore") || path.contains("raw_") || path.contains("coal") || path.contains("copper") || path.contains("iron") || path.contains("gold") || path.contains("diamond") || path.contains("emerald") || path.contains("lapis") || path.contains("redstone") || path.contains("quartz") || path.contains("ancient_debris")) { + return "Minerais"; + } + if (path.contains("log") || path.contains("wood") || path.contains("planks") || path.contains("stem") || path.contains("hyphae") || path.contains("bamboo")) { + return "Bois"; + } + if (path.contains("stone") || path.contains("deepslate") || path.contains("granite") || path.contains("andesite") || path.contains("diorite") || path.contains("tuff") || path.contains("basalt") || path.contains("blackstone") || path.contains("netherrack")) { + return "Roche"; + } + if (path.contains("dirt") || path.contains("grass_block") || path.contains("sand") || path.contains("gravel") || path.contains("clay") || path.contains("mud") || path.contains("soul")) { + return "Sols"; + } + if (path.contains("leaves") || path.contains("sapling") || path.contains("flower") || path.contains("moss") || path.contains("grass") || path.contains("vine") || path.contains("roots") || path.contains("crop")) { + return "Vegetal"; + } + if (path.contains("glass") || path.contains("wool") || path.contains("concrete") || path.contains("terracotta") || path.contains("brick")) { + return "Construits"; + } + return "Autres"; + } + + public record LiveSample(long playTimeTicks, long distanceCm, long minedBlocks, long craftedItems, long pickedBlocks, long mobKills) { + } +} diff --git a/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/gui/BlocotechDescriptions.java b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/gui/BlocotechDescriptions.java new file mode 100644 index 0000000..55fd8d6 --- /dev/null +++ b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/gui/BlocotechDescriptions.java @@ -0,0 +1,135 @@ +package fr.koka99cab.computer.client.gui; + +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import fr.koka99cab.computer.ComputerMod; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.Reader; +import java.nio.charset.StandardCharsets; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.Optional; + +final class BlocotechDescriptions { + private static final String RESOURCE_PATH = "/assets/computer/data/blocotech_descriptions.json"; + private static volatile BlocotechDescriptions defaultDescriptions; + + private final String minecraftVersion; + private final Map entries; + + private BlocotechDescriptions(String minecraftVersion, Map entries) { + this.minecraftVersion = minecraftVersion; + this.entries = Map.copyOf(entries); + } + + static BlocotechDescriptions loadDefault() { + BlocotechDescriptions loaded = defaultDescriptions; + if (loaded != null) { + return loaded; + } + synchronized (BlocotechDescriptions.class) { + if (defaultDescriptions != null) { + return defaultDescriptions; + } + try (InputStream stream = BlocotechDescriptions.class.getResourceAsStream(RESOURCE_PATH)) { + if (stream == null) { + ComputerMod.LOGGER.warn("Blocotech descriptions not found: {}", RESOURCE_PATH); + defaultDescriptions = empty(); + return defaultDescriptions; + } + try (Reader reader = new InputStreamReader(stream, StandardCharsets.UTF_8)) { + defaultDescriptions = fromReader(reader); + ComputerMod.LOGGER.info("Loaded {} Blocotech descriptions for Minecraft {}.", defaultDescriptions.size(), defaultDescriptions.minecraftVersion()); + return defaultDescriptions; + } + } catch (IOException | IllegalStateException exception) { + ComputerMod.LOGGER.warn("Could not load Blocotech descriptions.", exception); + defaultDescriptions = empty(); + return defaultDescriptions; + } + } + } + + private static BlocotechDescriptions fromReader(Reader reader) { + JsonObject root = JsonParser.parseReader(reader).getAsJsonObject(); + Map entries = new LinkedHashMap<>(); + for (JsonElement element : array(root, "entries")) { + if (!element.isJsonObject()) { + continue; + } + Entry entry = entry(element.getAsJsonObject()); + if (!entry.id().isBlank()) { + entries.put(entry.id(), entry); + } + } + return new BlocotechDescriptions(string(root, "minecraft_version", ""), entries); + } + + private static BlocotechDescriptions empty() { + return new BlocotechDescriptions("", Map.of()); + } + + Optional entry(String id) { + return Optional.ofNullable(entries.get(id)); + } + + int size() { + return entries.size(); + } + + String minecraftVersion() { + return minecraftVersion; + } + + private static Entry entry(JsonObject object) { + return new Entry( + string(object, "id", ""), + string(object, "name", ""), + string(object, "description", ""), + string(object, "category", ""), + string(object, "family", ""), + string(object, "primary", "#000000"), + string(object, "hue_group", "") + ); + } + + private static JsonArray array(JsonObject object, String key) { + JsonElement element = object.get(key); + return element != null && element.isJsonArray() ? element.getAsJsonArray() : new JsonArray(); + } + + private static String string(JsonObject object, String key, String fallback) { + JsonElement element = object.get(key); + return element != null && element.isJsonPrimitive() ? element.getAsString() : fallback; + } + + record Entry( + String id, + String name, + String description, + String category, + String family, + String primary, + String hueGroup + ) { + String displayName() { + return name.isBlank() ? id : name; + } + + int primaryArgb() { + return hexToArgb(primary); + } + } + + private static int hexToArgb(String hex) { + if (hex == null || !hex.matches("#?[0-9a-fA-F]{6}")) { + return 0xFF6B7483; + } + String cleaned = hex.startsWith("#") ? hex.substring(1) : hex; + return 0xFF000000 | Integer.parseInt(cleaned, 16); + } +} diff --git a/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/gui/ComputerDesktopScreen.java b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/gui/ComputerDesktopScreen.java new file mode 100644 index 0000000..9f92fa8 --- /dev/null +++ b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/gui/ComputerDesktopScreen.java @@ -0,0 +1,4955 @@ +package fr.koka99cab.computer.client.gui; + +import com.mojang.blaze3d.platform.NativeImage; +import fr.koka99cab.computer.ComputerMod; +import fr.koka99cab.computer.client.ComputerLiveStats; +import fr.koka99cab.computer.client.voxel.ComputerBuildPlacementController; +import fr.koka99cab.computer.client.voxel.ComputerVoxelGallery; +import fr.koka99cab.computer.network.ComputerStatsPayload; +import fr.koka99cab.computer.network.ComputerStatsRequestPayload; +import fr.koka99cab.computer.voxel.ComputerVoxelEditor; +import fr.koka99cab.computer.voxel.ComputerVoxelPlacement; +import fr.koka99cab.computer.voxel.ComputerVoxelProject; +import fr.koka99cab.computer.voxel.ComputerVoxelRequirements; +import fr.koka99cab.computer.voxel.ComputerVoxelValidator; +import java.io.IOException; +import java.io.InputStream; +import java.nio.file.Files; +import java.nio.file.Path; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.ArrayDeque; +import java.util.Comparator; +import java.util.Date; +import java.util.HashSet; +import java.util.HashMap; +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.Optional; +import java.util.Set; +import java.util.stream.Stream; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.client.gui.navigation.ScreenRectangle; +import net.minecraft.client.gui.render.TextureSetup; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.input.CharacterEvent; +import net.minecraft.client.input.KeyEvent; +import net.minecraft.client.input.MouseButtonEvent; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.RenderPipelines; +import net.minecraft.client.renderer.texture.AbstractTexture; +import net.minecraft.client.renderer.texture.DynamicTexture; +import net.minecraft.client.renderer.texture.TextureAtlas; +import net.minecraft.client.renderer.texture.TextureAtlasSprite; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.Identifier; +import net.minecraft.stats.Stats; +import net.minecraft.stats.StatsCounter; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.player.Inventory; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.EmptyLevelChunk; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.chunk.status.ChunkStatus; +import net.minecraft.world.level.levelgen.Heightmap; +import net.minecraft.world.level.material.MapColor; +import org.lwjgl.glfw.GLFW; + +public final class ComputerDesktopScreen extends Screen { + private static final int TEXT = 0xFFE8EDF5; + private static final int MUTED = 0xFFB6C0CE; + private static final int DARK = 0xDD10131A; + private static final int TITLEBAR = 20; + private static final int TASKBAR = 28; + private static final int ICON_WIDTH = 88; + private static final int MIN_ICON_SIZE = 16; + private static final int MAX_ICON_SIZE = 28; + private static final int DESKTOP_PADDING = 12; + private static final int LAYOUT_GAP = 8; + private static final int GRAPH_DISTANCE = 0xFF7DA9FF; + private static final int GRAPH_BLOCKS = 0xFF9BE382; + private static final int GRAPH_CRAFTS = 0xFFFFC76F; + private static final int GRAPH_MUTED = 0xFF6B7483; + private static final double MIN_MAP_PIXELS_PER_CHUNK = 1.0D; + private static final double MAX_MAP_PIXELS_PER_CHUNK = 32.0D; + private static final double INITIAL_MAP_PIXELS_PER_CHUNK = 17.0D; + private static final double MAP_SCROLL_ZOOM_FACTOR = 1.28D; + private static final double MAP_BUTTON_ZOOM_FACTOR = 1.6D; + private static final double MAP_ZOOM_EASE = 0.32D; + private static final int MAP_TEXTURE_MIN_SIZE = 256; + private static final int MAP_TEXTURE_MAX_SIZE = 1024; + private static final int MAP_TEXTURE_MARGIN = 64; + private static final int UNKNOWN_CHUNK_COLOR = 0xFF000000; + private static final int EMPTY_CHUNK_COLOR = 0xFF000000; + private static final int MAP_SAMPLE_STEP = 4; + private static final long MAP_REFRESH_INTERVAL_MS = 1800L; + private static final int DONF_WALLPAPER_WIDTH = 960; + private static final int DONF_WALLPAPER_HEIGHT = 600; + private static final int SKYBLOCK_WALLPAPER_WIDTH = 960; + private static final int SKYBLOCK_WALLPAPER_HEIGHT = 600; + private static final Identifier WINDOW_POPUP_TEXTURE = ComputerMod.id("textures/gui/os/popup.png"); + private static final int WINDOW_POPUP_TEXTURE_WIDTH = 34; + private static final int WINDOW_POPUP_TEXTURE_HEIGHT = 34; + private static final int WINDOW_POPUP_SLICE = 6; + private static final int WINDOW_TITLEBAR_INSET_X = 6; + private static final int WINDOW_TITLEBAR_INSET_Y = 6; + private static final int WINDOW_TITLEBAR_HEIGHT = 14; + private static final int WINDOW_TITLE_TEXT_PADDING = 3; + private static final int WINDOW_CONTROL_GAP = 6; + private static final Identifier WINDOW_MAXIMIZE_TEXTURE = ComputerMod.id("textures/gui/os/window_maximize.png"); + private static final Identifier WINDOW_MINIMIZE_TEXTURE = ComputerMod.id("textures/gui/os/window_minimize.png"); + private static final Identifier WINDOW_CLOSE_TEXTURE = ComputerMod.id("textures/gui/os/window_close.png"); + private static final int WINDOW_MAXIMIZE_TEXTURE_WIDTH = 6; + private static final int WINDOW_MINIMIZE_TEXTURE_WIDTH = 6; + private static final int WINDOW_CLOSE_TEXTURE_WIDTH = 6; + private static final int WINDOW_CONTROL_TEXTURE_HEIGHT = 6; + private static final int WINDOW_CONTROL_SCALE = 1; + private static final Identifier TASKBAR_TEXTURE = ComputerMod.id("textures/gui/os/taskbar.png"); + private static final int TASKBAR_TEXTURE_SIZE = 18; + private static final int TASKBAR_TEXTURE_SLICE = 1; + private static final Identifier SCREENSHOT_TEXTURE_ID = ComputerMod.id("screenshots/preview"); + private static final Identifier STAT_PIE_TEXTURE_ID = ComputerMod.id("statacraft/pie"); + private static final Identifier MAP_TEXTURE_ID = ComputerMod.id("minexplorer/map"); + private static final int MAX_RENDERED_STAT_SAMPLES = 120; + private static final int BLOCOTECH_ROW_HEIGHT = 20; + private static final int VOXEL_LIST_ROW_HEIGHT = 18; + private static final int VOXEL_HISTORY_LIMIT = 64; + private static final SimpleDateFormat CLOCK_FORMAT = new SimpleDateFormat("HH:mm", Locale.ROOT); + private static final Map> OBSERVED_CHUNKS = new HashMap<>(); + private static long observedChunkVersion; + private static int rememberedWallpaper; + private static ComputerStatsPayload latestServerStats; + private static long latestServerStatsMs; + private static String latestServerStatsKey = ""; + + private final List windows = new ArrayList<>(); + private final List terminalLines = new ArrayList<>(); + private int nextWindowId = 1; + private int focusedWindowId = -1; + private int draggingWindowId = -1; + private int dragOffsetX; + private int dragOffsetY; + private int mapDraggingWindowId = -1; + private final List statsViewSamples = new ArrayList<>(); + private StatSnapshot statsViewFallback = StatSnapshot.empty(); + private StatSnapshot statsViewServerSnapshot = StatSnapshot.empty(); + private long statsViewServerSnapshotMs = -1L; + private String statsViewSessionKey = ""; + private long statsViewRequestMs = -1L; + private double mapPixelsPerChunk = INITIAL_MAP_PIXELS_PER_CHUNK; + private double mapTargetPixelsPerChunk = INITIAL_MAP_PIXELS_PER_CHUNK; + private double mapPanX; + private double mapPanZ; + private long lastMapRefreshMs; + private int lastMapRefreshChunkX = Integer.MIN_VALUE; + private int lastMapRefreshChunkZ = Integer.MIN_VALUE; + private String lastMapRefreshDimension = ""; + private DynamicTexture mapTexture; + private int mapTextureSize; + private int mapTextureOriginChunkX; + private int mapTextureOriginChunkZ; + private String mapTextureDimension = ""; + private long mapTextureObservedVersion = -1L; + private DynamicTexture statPieTexture; + private int statPieTextureSize; + private String statPieTextureKey = ""; + private String terminalInput = ""; + private String notes = "Brouillon Computer\n\n- Bureau a programmes\n- Fenetres deplacables\n- Fond d'ecran modifiable"; + private List screenshots = List.of(); + private int selectedScreenshotIndex; + private boolean screenshotFullscreen; + private DynamicTexture screenshotTexture; + private Path loadedScreenshotPath; + private int loadedScreenshotWidth; + private int loadedScreenshotHeight; + private List blocotechEntries = List.of(); + private String blocotechSessionKey = ""; + private int blocotechTotalBlocks; + private int blocotechSelectedIndex; + private int blocotechListScroll; + private int blocotechDetailScroll; + private boolean blocotechLoaded; + private List voxelProjects = List.of(); + private boolean voxelGalleryLoaded; + private ComputerVoxelEditor voxelEditor; + private ComputerVoxelEditor.Tool voxelTool = ComputerVoxelEditor.Tool.BRUSH; + private final ArrayDeque voxelUndoStack = new ArrayDeque<>(); + private final ArrayDeque voxelRedoStack = new ArrayDeque<>(); + private final Map voxelColorByBlock = new LinkedHashMap<>(); + private final Map voxelSpriteByBlock = new LinkedHashMap<>(); + private final List voxelCachedVoxels = new ArrayList<>(); + private int voxelLayer; + private int voxelHoverX = -1; + private int voxelHoverY = -1; + private int voxelHoverZ = -1; + private VoxelFaceHit voxelHoverHit; + private double voxelYaw = -0.78D; + private double voxelPitch = 0.68D; + private double voxelZoom = 1.0D; + private double voxelPanX; + private double voxelPanY; + private int voxelHue = 32; + private double voxelSaturation = 0.55D; + private double voxelLightness = 0.55D; + private String voxelPaletteSearch = ""; + private boolean voxelSearchFocused; + private String voxelRenameText = ""; + private boolean voxelRenameFocused; + private boolean voxelDraggingLayer; + private boolean voxelDraggingHue; + private boolean voxelRotating; + private boolean voxelPanning; + private boolean voxelPainting; + private boolean voxelTemporaryRemoving; + private boolean voxelCacheDirty = true; + private int voxelSelectedProjectIndex; + private int voxelGalleryScroll; + private int voxelSelectedPaletteIndex; + private int voxelPaletteScroll; + private String voxelStatus = "Nouveau projet"; + + public ComputerDesktopScreen() { + super(Component.literal("Computer")); + terminalLines.add("OS 0.1"); + terminalLines.add("Tape help pour les commandes."); + } + + public static void acceptStatsPayload(ComputerStatsPayload payload) { + Minecraft client = Minecraft.getInstance(); + latestServerStats = payload; + latestServerStatsMs = System.currentTimeMillis(); + latestServerStatsKey = statsSessionKey(client); + } + + private static String statsSessionKey(Minecraft client) { + if (client == null || client.player == null || client.level == null) { + return ""; + } + return client.player.getUUID() + "@" + client.level.dimension().identifier(); + } + + @Override + protected void init() { + reloadScreenshots(); + for (DesktopWindow window : windows) { + clampWindow(window); + } + } + + @Override + public boolean isPauseScreen() { + return false; + } + + @Override + public boolean keyPressed(KeyEvent event) { + if (screenshotFullscreen) { + if (event.key() == GLFW.GLFW_KEY_LEFT) { + selectScreenshot(-1); + return true; + } + if (event.key() == GLFW.GLFW_KEY_RIGHT) { + selectScreenshot(1); + return true; + } + if (event.key() == GLFW.GLFW_KEY_ESCAPE || event.key() == GLFW.GLFW_KEY_ENTER || event.key() == GLFW.GLFW_KEY_KP_ENTER || event.key() == GLFW.GLFW_KEY_SPACE) { + screenshotFullscreen = false; + return true; + } + return true; + } + + DesktopWindow activeWindow = focusedWindow(); + if (event.key() == GLFW.GLFW_KEY_TAB && !windows.isEmpty()) { + focusNextWindow(); + return true; + } + if (event.key() == GLFW.GLFW_KEY_F5) { + reloadScreenshots(); + return true; + } + if (activeWindow != null && activeWindow.program == Program.TERMINAL) { + return handleTerminalKey(event, activeWindow); + } + if (activeWindow != null && activeWindow.program == Program.FILES) { + return handleFilesKey(event); + } + if (activeWindow != null && activeWindow.program == Program.BLOCOTECH) { + return handleBlocotechKey(event, activeWindow); + } + if (activeWindow != null && activeWindow.program == Program.VOXELIER) { + return handleVoxelKey(event, activeWindow); + } + if (activeWindow != null && activeWindow.program == Program.NOTES) { + return handleNotesKey(event); + } + return super.keyPressed(event); + } + + @Override + public boolean charTyped(CharacterEvent event) { + DesktopWindow activeWindow = focusedWindow(); + if (activeWindow == null || !event.isAllowedChatCharacter()) { + return super.charTyped(event); + } + int codePoint = event.codepoint(); + if (activeWindow.program == Program.VOXELIER && voxelRenameFocused && voxelRenameText.length() < 48) { + renameVoxelProject(voxelRenameText + new String(Character.toChars(codePoint))); + return true; + } + if (activeWindow.program == Program.VOXELIER && voxelSearchFocused && voxelPaletteSearch.length() < 48) { + voxelPaletteSearch += new String(Character.toChars(codePoint)); + voxelPaletteScroll = 0; + return true; + } + if (activeWindow.program == Program.TERMINAL && terminalInput.length() < 80) { + terminalInput += new String(Character.toChars(codePoint)); + return true; + } + if (activeWindow.program == Program.NOTES && notes.length() < 1200) { + notes += new String(Character.toChars(codePoint)); + return true; + } + return super.charTyped(event); + } + + @Override + public boolean mouseClicked(MouseButtonEvent event, boolean doubleClick) { + double mouseX = event.x(); + double mouseY = event.y(); + + if (screenshotFullscreen) { + if (mouseX < 58) { + selectScreenshot(-1); + } else if (mouseX > width - 58) { + selectScreenshot(1); + } else { + screenshotFullscreen = false; + } + return true; + } + + if (handleTaskbarClick(mouseX, mouseY)) { + return true; + } + + for (int index = windows.size() - 1; index >= 0; index--) { + DesktopWindow window = windows.get(index); + if (window.minimized) { + continue; + } + if (!inside(mouseX, mouseY, window.rect())) { + continue; + } + focusWindow(window); + if (inside(mouseX, mouseY, maximizeRect(window))) { + toggleMaximizeWindow(window); + return true; + } + if (inside(mouseX, mouseY, minimizeRect(window))) { + minimizeWindow(window); + return true; + } + if (inside(mouseX, mouseY, closeRect(window))) { + closeWindow(window); + return true; + } + if (!window.maximized && inside(mouseX, mouseY, titleRect(window))) { + draggingWindowId = window.id; + dragOffsetX = (int) mouseX - window.x; + dragOffsetY = (int) mouseY - window.y; + return true; + } + if (handleProgramClick(window, mouseX, mouseY, doubleClick, event.button(), event.modifiers())) { + return true; + } + return true; + } + + for (int index = 0; index < Program.DESKTOP_PROGRAMS.length; index++) { + if (inside(mouseX, mouseY, iconRect(index))) { + openProgram(Program.DESKTOP_PROGRAMS[index]); + return true; + } + } + return true; + } + + @Override + public boolean mouseDragged(MouseButtonEvent event, double dragX, double dragY) { + if (handleVoxelDrag(event, dragX, dragY)) { + return true; + } + if (draggingWindowId >= 0) { + DesktopWindow window = windowById(draggingWindowId); + if (window != null) { + window.x = (int) event.x() - dragOffsetX; + window.y = (int) event.y() - dragOffsetY; + clampWindow(window); + } + return true; + } + if (mapDraggingWindowId >= 0) { + double scale = Math.max(MIN_MAP_PIXELS_PER_CHUNK, mapPixelsPerChunk); + mapPanX -= dragX / scale; + mapPanZ -= dragY / scale; + return true; + } + return super.mouseDragged(event, dragX, dragY); + } + + @Override + public boolean mouseReleased(MouseButtonEvent event) { + if (handleVoxelRelease()) { + return true; + } + if (draggingWindowId >= 0 || mapDraggingWindowId >= 0) { + draggingWindowId = -1; + mapDraggingWindowId = -1; + return true; + } + return super.mouseReleased(event); + } + + @Override + public boolean mouseScrolled(double mouseX, double mouseY, double scrollX, double scrollY) { + DesktopWindow mapWindow = topWindowAt(mouseX, mouseY); + if (mapWindow != null && mapWindow.program == Program.MAP && inside(mouseX, mouseY, mapArea(mapWindow))) { + zoomMapAt(mapWindow, mouseX, mouseY, Math.pow(MAP_SCROLL_ZOOM_FACTOR, scrollY)); + return true; + } + if (mapWindow != null && mapWindow.program == Program.BLOCOTECH && handleBlocotechScroll(mapWindow, mouseX, mouseY, scrollY)) { + return true; + } + if (mapWindow != null && mapWindow.program == Program.VOXELIER && handleVoxelScroll(mapWindow, mouseX, mouseY, scrollY)) { + return true; + } + return super.mouseScrolled(mouseX, mouseY, scrollX, scrollY); + } + + @Override + public void extractRenderState(GuiGraphicsExtractor graphics, int mouseX, int mouseY, float partialTick) { + drawWallpaper(graphics); + drawDesktopIcons(graphics); + for (DesktopWindow window : windows) { + if (!window.minimized) { + drawWindow(graphics, window, mouseX, mouseY); + } + } + drawTaskbar(graphics); + if (screenshotFullscreen) { + drawScreenshotFullscreen(graphics); + } + super.extractRenderState(graphics, mouseX, mouseY, partialTick); + } + + @Override + public void removed() { + releaseScreenshotTexture(); + releaseMapTexture(); + releaseStatPieTexture(); + super.removed(); + } + + private boolean handleProgramClick(DesktopWindow window, double mouseX, double mouseY, boolean doubleClick, int button, int modifiers) { + return switch (window.program) { + case MAP -> handleMapClick(window, mouseX, mouseY); + case SETTINGS -> handleSettingsClick(window, mouseX, mouseY); + case FILES -> handleFilesClick(window, mouseX, mouseY, doubleClick); + case BLOCOTECH -> handleBlocotechClick(window, mouseX, mouseY); + case VOXELIER -> handleVoxelClick(window, mouseX, mouseY, button, modifiers); + default -> false; + }; + } + + private boolean handleMapClick(DesktopWindow window, double mouseX, double mouseY) { + if (inside(mouseX, mouseY, mapZoomOutRect(window))) { + Rect map = mapArea(window); + zoomMapAt(window, map.x() + map.w() / 2.0D, map.y() + map.h() / 2.0D, 1.0D / MAP_BUTTON_ZOOM_FACTOR); + return true; + } + if (inside(mouseX, mouseY, mapZoomInRect(window))) { + Rect map = mapArea(window); + zoomMapAt(window, map.x() + map.w() / 2.0D, map.y() + map.h() / 2.0D, MAP_BUTTON_ZOOM_FACTOR); + return true; + } + if (inside(mouseX, mouseY, mapResetRect(window))) { + mapPanX = 0.0D; + mapPanZ = 0.0D; + return true; + } + if (inside(mouseX, mouseY, mapArea(window))) { + mapDraggingWindowId = window.id; + return true; + } + return false; + } + + private boolean handleSettingsClick(DesktopWindow window, double mouseX, double mouseY) { + Rect content = contentRect(window); + for (int index = 0; index < Wallpaper.values().length; index++) { + Rect swatch = wallpaperSwatch(content, index); + if (inside(mouseX, mouseY, swatch)) { + rememberedWallpaper = index; + return true; + } + } + return false; + } + + private boolean handleTaskbarClick(double mouseX, double mouseY) { + if (mouseY < height - TASKBAR) { + return false; + } + for (int index = 0; index < windows.size(); index++) { + Rect rect = taskbarWindowRect(index); + if (inside(mouseX, mouseY, rect)) { + focusWindow(windows.get(index)); + return true; + } + } + return true; + } + + private boolean handleFilesClick(DesktopWindow window, double mouseX, double mouseY, boolean doubleClick) { + Rect content = contentRect(window); + Rect refresh = screenshotReloadRect(content); + if (inside(mouseX, mouseY, refresh)) { + reloadScreenshots(); + return true; + } + + Rect list = screenshotListArea(content); + if (inside(mouseX, mouseY, list)) { + int row = ((int) mouseY - list.y() - 4) / 14; + if (row >= 0 && row < screenshots.size()) { + selectedScreenshotIndex = row; + releaseScreenshotTexture(); + if (doubleClick) { + openScreenshotFullscreen(); + } + } + return true; + } + + if (doubleClick && inside(mouseX, mouseY, screenshotPreviewArea(content))) { + openScreenshotFullscreen(); + return true; + } + return true; + } + + private boolean handleBlocotechClick(DesktopWindow window, double mouseX, double mouseY) { + refreshBlocotechEntriesIfNeeded(); + Rect list = blocotechListArea(contentRect(window)); + if (!inside(mouseX, mouseY, list)) { + return false; + } + int rowsTop = blocotechRowsTop(list); + if (mouseY < rowsTop) { + return true; + } + int row = ((int) mouseY - rowsTop) / BLOCOTECH_ROW_HEIGHT; + int index = blocotechListScroll + row; + if (row >= 0 && index >= 0 && index < blocotechEntries.size()) { + selectBlocotechEntry(index, window); + } + return true; + } + + private boolean handleTerminalKey(KeyEvent event, DesktopWindow window) { + if (event.key() == GLFW.GLFW_KEY_BACKSPACE && !terminalInput.isEmpty()) { + terminalInput = terminalInput.substring(0, terminalInput.length() - 1); + return true; + } + if (event.key() == GLFW.GLFW_KEY_ENTER || event.key() == GLFW.GLFW_KEY_KP_ENTER) { + runTerminalCommand(window); + return true; + } + return false; + } + + private boolean handleNotesKey(KeyEvent event) { + if (event.key() == GLFW.GLFW_KEY_BACKSPACE && !notes.isEmpty()) { + notes = notes.substring(0, notes.length() - 1); + return true; + } + if (event.key() == GLFW.GLFW_KEY_ENTER || event.key() == GLFW.GLFW_KEY_KP_ENTER) { + notes += "\n"; + return true; + } + return false; + } + + private boolean handleBlocotechKey(KeyEvent event, DesktopWindow window) { + if (event.key() == GLFW.GLFW_KEY_UP) { + selectBlocotechEntry(blocotechSelectedIndex - 1, window); + return true; + } + if (event.key() == GLFW.GLFW_KEY_DOWN) { + selectBlocotechEntry(blocotechSelectedIndex + 1, window); + return true; + } + if (event.key() == GLFW.GLFW_KEY_PAGE_UP) { + scrollBlocotechList(window, -blocotechVisibleRows(blocotechListArea(contentRect(window)))); + return true; + } + if (event.key() == GLFW.GLFW_KEY_PAGE_DOWN) { + scrollBlocotechList(window, blocotechVisibleRows(blocotechListArea(contentRect(window)))); + return true; + } + if (event.key() == GLFW.GLFW_KEY_HOME) { + selectBlocotechEntry(0, window); + return true; + } + if (event.key() == GLFW.GLFW_KEY_END) { + selectBlocotechEntry(blocotechEntries.size() - 1, window); + return true; + } + return false; + } + + private boolean handleBlocotechScroll(DesktopWindow window, double mouseX, double mouseY, double scrollY) { + Rect content = contentRect(window); + if (!inside(mouseX, mouseY, content)) { + return false; + } + int delta = scrollY > 0.0D ? -3 : 3; + Rect list = blocotechListArea(content); + if (inside(mouseX, mouseY, list)) { + scrollBlocotechList(window, delta); + return true; + } + if (inside(mouseX, mouseY, blocotechDetailArea(content))) { + blocotechDetailScroll = Math.max(0, blocotechDetailScroll + delta * 11); + return true; + } + return false; + } + + private void selectBlocotechEntry(int index, DesktopWindow window) { + refreshBlocotechEntriesIfNeeded(); + if (blocotechEntries.isEmpty()) { + blocotechSelectedIndex = 0; + blocotechListScroll = 0; + blocotechDetailScroll = 0; + return; + } + blocotechSelectedIndex = clamp(index, 0, blocotechEntries.size() - 1); + blocotechDetailScroll = 0; + int visibleRows = blocotechVisibleRows(blocotechListArea(contentRect(window))); + if (blocotechSelectedIndex < blocotechListScroll) { + blocotechListScroll = blocotechSelectedIndex; + } + if (blocotechSelectedIndex >= blocotechListScroll + visibleRows) { + blocotechListScroll = blocotechSelectedIndex - visibleRows + 1; + } + blocotechListScroll = clamp(blocotechListScroll, 0, blocotechMaxListScroll(window)); + } + + private void scrollBlocotechList(DesktopWindow window, int delta) { + refreshBlocotechEntriesIfNeeded(); + blocotechListScroll = clamp(blocotechListScroll + delta, 0, blocotechMaxListScroll(window)); + } + + private boolean handleVoxelKey(KeyEvent event, DesktopWindow window) { + ensureVoxelEditor(); + if (voxelRenameFocused) { + if (event.key() == GLFW.GLFW_KEY_ENTER || event.key() == GLFW.GLFW_KEY_KP_ENTER) { + saveVoxelProject(); + voxelRenameFocused = false; + return true; + } + if (event.key() == GLFW.GLFW_KEY_ESCAPE) { + voxelRenameFocused = false; + return true; + } + if (event.key() == GLFW.GLFW_KEY_BACKSPACE && !voxelRenameText.isEmpty()) { + renameVoxelProject(voxelRenameText.substring(0, voxelRenameText.length() - 1)); + return true; + } + if (event.key() == GLFW.GLFW_KEY_DELETE && !voxelRenameText.isEmpty()) { + renameVoxelProject(""); + return true; + } + return false; + } + if (voxelSearchFocused) { + if (event.key() == GLFW.GLFW_KEY_ESCAPE || event.key() == GLFW.GLFW_KEY_ENTER || event.key() == GLFW.GLFW_KEY_KP_ENTER) { + voxelSearchFocused = false; + return true; + } + if (event.key() == GLFW.GLFW_KEY_BACKSPACE && !voxelPaletteSearch.isEmpty()) { + voxelPaletteSearch = voxelPaletteSearch.substring(0, voxelPaletteSearch.length() - 1); + voxelPaletteScroll = 0; + return true; + } + if (event.key() == GLFW.GLFW_KEY_DELETE && !voxelPaletteSearch.isEmpty()) { + voxelPaletteSearch = ""; + voxelPaletteScroll = 0; + return true; + } + return false; + } + if ((event.modifiers() & GLFW.GLFW_MOD_CONTROL) != 0 && event.key() == GLFW.GLFW_KEY_Z) { + undoVoxelEdit(); + return true; + } + if ((event.modifiers() & GLFW.GLFW_MOD_CONTROL) != 0 && event.key() == GLFW.GLFW_KEY_Y) { + redoVoxelEdit(); + return true; + } + if (event.key() == GLFW.GLFW_KEY_HOME) { + resetVoxelStudioView(); + return true; + } + if (event.key() == GLFW.GLFW_KEY_PAGE_UP || event.key() == GLFW.GLFW_KEY_UP) { + voxelLayer = clamp(voxelLayer + 1, 0, voxelEditor.height() - 1); + return true; + } + if (event.key() == GLFW.GLFW_KEY_PAGE_DOWN || event.key() == GLFW.GLFW_KEY_DOWN) { + voxelLayer = clamp(voxelLayer - 1, 0, voxelEditor.height() - 1); + return true; + } + if (event.key() == GLFW.GLFW_KEY_1) { + voxelTool = ComputerVoxelEditor.Tool.ADD; + return true; + } + if (event.key() == GLFW.GLFW_KEY_2) { + voxelTool = ComputerVoxelEditor.Tool.BRUSH; + return true; + } + if (event.key() == GLFW.GLFW_KEY_3) { + voxelTool = ComputerVoxelEditor.Tool.REMOVE; + return true; + } + if (event.key() == GLFW.GLFW_KEY_4) { + voxelTool = ComputerVoxelEditor.Tool.PIPETTE; + return true; + } + if (event.key() == GLFW.GLFW_KEY_5) { + voxelTool = ComputerVoxelEditor.Tool.SQUARE; + return true; + } + if (event.key() == GLFW.GLFW_KEY_6) { + voxelTool = ComputerVoxelEditor.Tool.ROUND; + return true; + } + if (event.key() == GLFW.GLFW_KEY_7) { + voxelTool = ComputerVoxelEditor.Tool.FILL; + return true; + } + if (event.key() == GLFW.GLFW_KEY_ENTER || event.key() == GLFW.GLFW_KEY_KP_ENTER) { + saveVoxelProject(); + return true; + } + return false; + } + + private boolean handleVoxelScroll(DesktopWindow window, double mouseX, double mouseY, double scrollY) { + ensureVoxelEditor(); + Rect content = contentRect(window); + if (!inside(mouseX, mouseY, content)) { + return false; + } + int delta = scrollY > 0.0D ? -3 : 3; + if (inside(mouseX, mouseY, voxelGalleryArea(content))) { + voxelGalleryScroll = clamp(voxelGalleryScroll + delta, 0, voxelMaxGalleryScroll(voxelGalleryArea(content))); + return true; + } + if (inside(mouseX, mouseY, voxelPaletteArea(content))) { + voxelPaletteScroll = clamp(voxelPaletteScroll + delta, 0, voxelMaxPaletteScroll(voxelPaletteArea(content))); + return true; + } + if (inside(mouseX, mouseY, voxelHslArea(content))) { + voxelHue = Math.floorMod(voxelHue + (scrollY > 0.0D ? 8 : -8), 360); + return true; + } + if (inside(mouseX, mouseY, voxelGridArea(content))) { + voxelZoom = clamp(voxelZoom + (scrollY > 0.0D ? 0.12D : -0.12D), 0.45D, 3.0D); + return true; + } + return false; + } + + private boolean handleVoxelDrag(MouseButtonEvent event, double dragX, double dragY) { + if (voxelDraggingLayer) { + DesktopWindow window = focusedWindow(); + if (window != null && window.program == Program.VOXELIER) { + setVoxelLayerFromMouse(contentRect(window), event.y()); + } + return true; + } + if (voxelDraggingHue) { + DesktopWindow window = focusedWindow(); + if (window != null && window.program == Program.VOXELIER) { + setVoxelHueFromMouse(contentRect(window), event.y()); + } + return true; + } + if (voxelRotating) { + voxelYaw += dragX * 0.012D; + voxelPitch = clamp(voxelPitch + dragY * 0.01D, 0.18D, 1.24D); + return true; + } + if (voxelPanning) { + voxelPanX += dragX; + voxelPanY += dragY; + return true; + } + if (voxelPainting) { + DesktopWindow window = focusedWindow(); + if (window != null && window.program == Program.VOXELIER) { + applyVoxelAtMouse(contentRect(window), event.x(), event.y()); + } + return true; + } + return false; + } + + private boolean handleVoxelRelease() { + if (!voxelDraggingLayer && !voxelDraggingHue && !voxelRotating && !voxelPanning && !voxelPainting) { + return false; + } + voxelDraggingLayer = false; + voxelDraggingHue = false; + voxelRotating = false; + voxelPanning = false; + voxelPainting = false; + voxelTemporaryRemoving = false; + return true; + } + + private boolean handleVoxelClick(DesktopWindow window, double mouseX, double mouseY, int button, int modifiers) { + ensureVoxelEditor(); + Rect content = contentRect(window); + if (inside(mouseX, mouseY, voxelRenameRect(content))) { + voxelRenameFocused = true; + voxelSearchFocused = false; + voxelRenameText = voxelEditor.name(); + return true; + } + if (inside(mouseX, mouseY, voxelNewRect(content))) { + createVoxelProject(); + return true; + } + if (inside(mouseX, mouseY, voxelSaveRect(content))) { + saveVoxelProject(); + return true; + } + if (inside(mouseX, mouseY, voxelDeleteRect(content))) { + deleteVoxelProject(); + return true; + } + if (inside(mouseX, mouseY, voxelBlueprintRect(content))) { + startVoxelBlueprint(); + return true; + } + if (inside(mouseX, mouseY, voxelPlaceRect(content))) { + startVoxelCreativeDirect(); + return true; + } + if (inside(mouseX, mouseY, voxelUndoRect(content))) { + undoVoxelEdit(); + return true; + } + if (inside(mouseX, mouseY, voxelRedoRect(content))) { + redoVoxelEdit(); + return true; + } + if (inside(mouseX, mouseY, voxelResetViewRect(content))) { + resetVoxelStudioView(); + return true; + } + if (inside(mouseX, mouseY, voxelLayerDownRect(content))) { + voxelLayer = clamp(voxelLayer - 1, 0, voxelEditor.height() - 1); + return true; + } + if (inside(mouseX, mouseY, voxelLayerUpRect(content))) { + voxelLayer = clamp(voxelLayer + 1, 0, voxelEditor.height() - 1); + return true; + } + for (ComputerVoxelEditor.Tool tool : voxelTools()) { + if (inside(mouseX, mouseY, voxelToolRect(content, tool))) { + voxelTool = tool; + return true; + } + } + if (handleVoxelGalleryClick(content, mouseX, mouseY)) { + return true; + } + if (handleVoxelPaletteClick(content, mouseX, mouseY)) { + return true; + } + if (handleVoxelHslClick(content, mouseX, mouseY)) { + return true; + } + if (inside(mouseX, mouseY, voxelPaletteSearchRect(content))) { + voxelSearchFocused = true; + voxelRenameFocused = false; + return true; + } + voxelSearchFocused = false; + voxelRenameFocused = false; + if (inside(mouseX, mouseY, voxelLayerSliderRect(content))) { + voxelDraggingLayer = true; + setVoxelLayerFromMouse(content, mouseY); + return true; + } + if (inside(mouseX, mouseY, voxelGridArea(content))) { + if (button == GLFW.GLFW_MOUSE_BUTTON_MIDDLE || (modifiers & GLFW.GLFW_MOD_SHIFT) != 0) { + voxelPanning = true; + return true; + } + if (button == GLFW.GLFW_MOUSE_BUTTON_LEFT) { + voxelTemporaryRemoving = (modifiers & GLFW.GLFW_MOD_ALT) != 0; + voxelPainting = voxelDragPaints(activeVoxelTool()); + applyVoxelAtMouse(content, mouseX, mouseY); + return true; + } + if (button == GLFW.GLFW_MOUSE_BUTTON_RIGHT || (modifiers & GLFW.GLFW_MOD_ALT) != 0) { + voxelRotating = true; + return true; + } + return true; + } + return false; + } + + private boolean handleVoxelGalleryClick(Rect content, double mouseX, double mouseY) { + Rect area = voxelGalleryArea(content); + if (!inside(mouseX, mouseY, area)) { + return false; + } + int rowTop = area.y() + 18; + if (mouseY < rowTop) { + return true; + } + int index = voxelGalleryScroll + ((int) mouseY - rowTop) / VOXEL_LIST_ROW_HEIGHT; + if (index >= 0 && index < voxelProjects.size()) { + loadVoxelProject(index); + } + return true; + } + + private boolean handleVoxelPaletteClick(Rect content, double mouseX, double mouseY) { + Rect area = voxelPaletteArea(content); + if (!inside(mouseX, mouseY, area)) { + return false; + } + List palette = voxelVisiblePaletteEntries(); + int rowTop = area.y() + 18; + if (mouseY < rowTop) { + return true; + } + int index = voxelPaletteScroll + ((int) mouseY - rowTop) / VOXEL_LIST_ROW_HEIGHT; + if (index >= 0 && index < palette.size()) { + voxelSelectedPaletteIndex = index; + voxelEditor.selectBlock(palette.get(index).id()); + voxelStatus = "Bloc: " + palette.get(index).name(); + } + return true; + } + + private boolean handleVoxelHslClick(Rect content, double mouseX, double mouseY) { + Rect area = voxelHslArea(content); + if (!inside(mouseX, mouseY, area)) { + return false; + } + Rect hue = voxelHueSliderRect(area); + if (inside(mouseX, mouseY, hue)) { + voxelDraggingHue = true; + setVoxelHueFromMouse(content, mouseY); + return true; + } + Rect grid = voxelHslGridRect(area); + if (!inside(mouseX, mouseY, grid)) { + return true; + } + int cell = Math.max(8, Math.min(grid.w(), grid.h()) / 9); + int size = cell * 9; + int startX = grid.x() + Math.max(0, (grid.w() - size) / 2); + int col = ((int) mouseX - startX) / cell; + int row = ((int) mouseY - grid.y()) / cell; + if (col < 0 || col >= 9 || row < 0 || row >= 9) { + return true; + } + voxelSaturation = clamp(col / 8.0D, 0.0D, 1.0D); + voxelLightness = clamp(1.0D - row / 8.0D, 0.0D, 1.0D); + BlocotechBlockEntry nearest = nearestVoxelPaletteEntry(voxelVisiblePaletteEntries(), hslPreviewColor(voxelHue, voxelSaturation, voxelLightness)); + if (nearest != null) { + selectVoxelPaletteBlock(nearest.id()); + voxelStatus = "Bloc: " + nearest.name(); + } + return true; + } + + private void applyVoxelGridHit(VoxelGridHit hit, int button, int modifiers) { + String blockId = voxelEditor.blockAt(hit.x(), voxelLayer, hit.z()); + if (button == GLFW.GLFW_MOUSE_BUTTON_MIDDLE || (modifiers & GLFW.GLFW_MOD_SHIFT) != 0) { + if (blockId != null) { + selectVoxelPaletteBlock(blockId); + } + return; + } + try { + ComputerVoxelProject before = voxelEditor.export(); + if (button == GLFW.GLFW_MOUSE_BUTTON_RIGHT || (modifiers & GLFW.GLFW_MOD_ALT) != 0) { + voxelEditor.remove(hit.x(), voxelLayer, hit.z()); + } else { + ensureVoxelPaletteSelection(); + voxelEditor.apply(voxelTool, hit.x(), voxelLayer, hit.z(), voxelEditor.selectedBlockId()); + } + finishVoxelMutation(before); + voxelStatus = voxelEditor.project().cells().size() + " voxels"; + } catch (IllegalStateException exception) { + voxelStatus = "Selectionne un bloc"; + } + } + + private boolean handleFilesKey(KeyEvent event) { + if (event.key() == GLFW.GLFW_KEY_UP) { + selectScreenshot(-1); + return true; + } + if (event.key() == GLFW.GLFW_KEY_DOWN) { + selectScreenshot(1); + return true; + } + if (event.key() == GLFW.GLFW_KEY_ENTER || event.key() == GLFW.GLFW_KEY_KP_ENTER) { + openScreenshotFullscreen(); + return true; + } + return false; + } + + private void selectScreenshot(int delta) { + if (screenshots.isEmpty()) { + selectedScreenshotIndex = 0; + return; + } + selectedScreenshotIndex = Math.floorMod(selectedScreenshotIndex + delta, screenshots.size()); + releaseScreenshotTexture(); + } + + private void openScreenshotFullscreen() { + ScreenshotEntry selected = selectedScreenshot(); + if (selected != null && !selected.placeholder()) { + screenshotFullscreen = true; + } + } + + private void runTerminalCommand(DesktopWindow terminalWindow) { + String raw = terminalInput.strip(); + terminalLines.add("> " + raw); + terminalInput = ""; + if (raw.isBlank()) { + return; + } + + String command = raw.toLowerCase(Locale.ROOT); + switch (command) { + case "help" -> { + terminalLines.add("Commandes: help, programs, map, stats, blocks, voxels, pics, wallpaper, clear, exit"); + terminalLines.add("Astuce: les fenetres se deplacent par leur barre de titre."); + } + case "programs" -> terminalLines.add("Programmes: Minexplorer, Poularoid, Statacraft, Blocotech, Voxelier, Bloc-Notes, terminal, Settings"); + case "map", "carte" -> { + openProgram(Program.MAP); + terminalLines.add("Carte lancee."); + } + case "pics", "screens", "screenshots" -> { + openProgram(Program.FILES); + terminalLines.add("Poularoid lance."); + } + case "stats" -> { + openProgram(Program.STATS); + terminalLines.add("Stats lancees."); + } + case "blocks", "blocs", "blocotech", "blocotheque" -> { + openProgram(Program.BLOCOTECH); + terminalLines.add("Blocotech lancee."); + } + case "voxels", "voxel", "voxelier", "studio" -> { + openProgram(Program.VOXELIER); + terminalLines.add("Voxelier lance."); + } + case "wallpaper" -> { + rememberedWallpaper = (rememberedWallpaper + 1) % Wallpaper.values().length; + terminalLines.add("Fond d'ecran: " + currentWallpaper().label); + } + case "clear" -> terminalLines.clear(); + case "exit" -> closeWindow(terminalWindow); + default -> terminalLines.add("Commande inconnue: " + raw); + } + while (terminalLines.size() > 80) { + terminalLines.removeFirst(); + } + } + + private void openProgram(Program program) { + for (DesktopWindow window : windows) { + if (window.program == program) { + focusWindow(window); + if (program == Program.BLOCOTECH) { + refreshBlocotechEntries(); + } + if (program == Program.VOXELIER) { + ensureVoxelEditor(); + } + return; + } + } + + int offset = windows.size() * 18; + int windowWidth = Math.min(maxWindowWidth(), program.defaultWidth); + int windowHeight = Math.min(maxWindowHeight(), program.defaultHeight); + DesktopWindow window = new DesktopWindow( + nextWindowId++, + program, + Math.max(8, (width - windowWidth) / 2 + offset), + Math.max(24, (height - TASKBAR - windowHeight) / 2 + offset), + Math.max(minWindowWidth(), windowWidth), + Math.max(minWindowHeight(), windowHeight) + ); + clampWindow(window); + windows.add(window); + focusWindow(window); + if (program == Program.STATS) { + captureStatsView(); + } + if (program == Program.BLOCOTECH) { + refreshBlocotechEntries(); + } + if (program == Program.VOXELIER) { + ensureVoxelEditor(); + } + } + + private void closeWindow(DesktopWindow window) { + windows.remove(window); + if (window.program == Program.FILES) { + screenshotFullscreen = false; + } + if (window.program == Program.STATS) { + releaseStatPieTexture(); + } + if (focusedWindowId == window.id) { + focusedWindowId = topVisibleWindowId(); + } + if (draggingWindowId == window.id) { + draggingWindowId = -1; + } + if (mapDraggingWindowId == window.id) { + mapDraggingWindowId = -1; + } + } + + private void minimizeWindow(DesktopWindow window) { + window.minimized = true; + if (focusedWindowId == window.id) { + focusedWindowId = topVisibleWindowId(); + } + if (draggingWindowId == window.id) { + draggingWindowId = -1; + } + if (mapDraggingWindowId == window.id) { + mapDraggingWindowId = -1; + } + } + + private void toggleMaximizeWindow(DesktopWindow window) { + window.minimized = false; + if (window.maximized) { + window.maximized = false; + window.x = window.restoreX; + window.y = window.restoreY; + window.w = window.restoreW; + window.h = window.restoreH; + clampWindow(window); + return; + } + window.restoreX = window.x; + window.restoreY = window.y; + window.restoreW = window.w; + window.restoreH = window.h; + window.maximized = true; + applyMaximizedBounds(window); + } + + private void applyMaximizedBounds(DesktopWindow window) { + window.x = 4; + window.y = 8; + window.w = maxWindowWidth(); + window.h = maxWindowHeight(); + clampWindow(window); + } + + private void focusWindow(DesktopWindow window) { + window.minimized = false; + focusedWindowId = window.id; + windows.remove(window); + windows.add(window); + } + + private void focusNextWindow() { + if (windows.isEmpty()) { + return; + } + for (int index = 0; index < windows.size(); index++) { + DesktopWindow window = windows.removeFirst(); + windows.add(window); + if (!window.minimized) { + focusedWindowId = window.id; + return; + } + } + focusedWindowId = -1; + } + + private DesktopWindow focusedWindow() { + DesktopWindow window = windowById(focusedWindowId); + return window == null || window.minimized ? null : window; + } + + private DesktopWindow windowById(int id) { + for (DesktopWindow window : windows) { + if (window.id == id) { + return window; + } + } + return null; + } + + private DesktopWindow topWindowAt(double mouseX, double mouseY) { + for (int index = windows.size() - 1; index >= 0; index--) { + DesktopWindow window = windows.get(index); + if (window.minimized) { + continue; + } + if (inside(mouseX, mouseY, window.rect())) { + return window; + } + } + return null; + } + + private int topVisibleWindowId() { + for (int index = windows.size() - 1; index >= 0; index--) { + DesktopWindow window = windows.get(index); + if (!window.minimized) { + return window.id; + } + } + return -1; + } + + private void clampWindow(DesktopWindow window) { + if (window.maximized) { + window.w = maxWindowWidth(); + window.h = maxWindowHeight(); + } + window.w = clamp(window.w, minWindowWidth(), maxWindowWidth()); + window.h = clamp(window.h, minWindowHeight(), maxWindowHeight()); + window.x = clamp(window.x, 4, Math.max(4, width - window.w - 4)); + window.y = clamp(window.y, 8, Math.max(8, height - TASKBAR - window.h - 4)); + } + + private int minWindowWidth() { + return Math.max(48, Math.min(180, Math.max(48, width - 12))); + } + + private int minWindowHeight() { + return Math.max(32, Math.min(128, Math.max(32, height - TASKBAR - 12))); + } + + private int maxWindowWidth() { + return Math.max(minWindowWidth(), width - 16); + } + + private int maxWindowHeight() { + return Math.max(minWindowHeight(), height - TASKBAR - 12); + } + + private void reloadScreenshots() { + if (minecraft == null) { + screenshots = List.of(); + selectedScreenshotIndex = 0; + releaseScreenshotTexture(); + return; + } + Path directory = minecraft.gameDirectory.toPath().resolve("screenshots"); + if (!Files.isDirectory(directory)) { + screenshots = List.of(ScreenshotEntry.message("Aucun dossier screenshots.")); + selectedScreenshotIndex = 0; + releaseScreenshotTexture(); + return; + } + try (Stream paths = Files.list(directory)) { + screenshots = paths + .filter(Files::isRegularFile) + .filter(ComputerDesktopScreen::isScreenshotFile) + .sorted(Comparator.comparingLong((Path path) -> path.toFile().lastModified()).reversed()) + .limit(32) + .map(path -> new ScreenshotEntry(path.getFileName().toString(), path, path.toFile().lastModified(), false)) + .toList(); + if (screenshots.isEmpty()) { + screenshots = List.of(ScreenshotEntry.message("Aucun screenshot pour le moment.")); + } + } catch (IOException exception) { + screenshots = List.of(ScreenshotEntry.message("Lecture impossible: " + exception.getClass().getSimpleName())); + } + selectedScreenshotIndex = clamp(selectedScreenshotIndex, 0, Math.max(0, screenshots.size() - 1)); + ScreenshotEntry selected = selectedScreenshot(); + if (selected == null || selected.placeholder() || !selected.path().equals(loadedScreenshotPath)) { + releaseScreenshotTexture(); + } + } + + private void refreshBlocotechEntriesIfNeeded() { + String sessionKey = statsSessionKey(minecraft); + if (!blocotechLoaded || !sessionKey.equals(blocotechSessionKey)) { + refreshBlocotechEntries(); + } + } + + private void refreshBlocotechEntries() { + blocotechLoaded = true; + blocotechSessionKey = statsSessionKey(minecraft); + blocotechEntries = List.of(); + blocotechTotalBlocks = 0; + blocotechSelectedIndex = 0; + blocotechListScroll = 0; + blocotechDetailScroll = 0; + if (minecraft == null || minecraft.player == null) { + return; + } + + StatsCounter stats = minecraft.player.getStats(); + Inventory inventory = minecraft.player.getInventory(); + BlocotechDescriptions descriptions = BlocotechDescriptions.loadDefault(); + List entries = new ArrayList<>(); + int total = 0; + for (Block block : BuiltInRegistries.BLOCK) { + Identifier id = BuiltInRegistries.BLOCK.getKey(block); + if (id == null) { + continue; + } + String blockId = id.toString(); + BlocotechDescriptions.Entry descriptionEntry = descriptions.entry(blockId).orElse(null); + Item item = block.asItem(); + boolean hasItem = item != Items.AIR; + if (!hasItem && descriptionEntry == null) { + continue; + } + total++; + + long mined = stats.getValue(Stats.BLOCK_MINED, block); + long picked = hasItem ? stats.getValue(Stats.ITEM_PICKED_UP, item) : 0L; + long crafted = hasItem ? stats.getValue(Stats.ITEM_CRAFTED, item) : 0L; + long used = hasItem ? stats.getValue(Stats.ITEM_USED, item) : 0L; + long inventoryCount = hasItem ? inventoryItemCount(inventory, item) : 0L; + if (mined + picked + crafted + used + inventoryCount <= 0L) { + continue; + } + + String name = blocotechDisplayName(blockId, item, descriptionEntry); + String family = descriptionEntry == null || descriptionEntry.family().isBlank() ? blockFamily(blockId) : cleanDescriptionLabel(descriptionEntry.family()); + String category = descriptionEntry == null || descriptionEntry.category().isBlank() ? "Bloc" : cleanDescriptionLabel(descriptionEntry.category()); + String hueGroup = descriptionEntry == null || descriptionEntry.hueGroup().isBlank() ? "non classe" : cleanDescriptionLabel(descriptionEntry.hueGroup()); + int color = descriptionEntry == null ? familyColor(family) : descriptionEntry.primaryArgb(); + entries.add(new BlocotechBlockEntry( + blockId, + name, + item, + descriptionEntry, + color, + category, + family, + hueGroup, + mined, + picked, + crafted, + used, + inventoryCount + )); + } + entries.sort(Comparator.comparing(BlocotechBlockEntry::name, String.CASE_INSENSITIVE_ORDER).thenComparing(BlocotechBlockEntry::id)); + blocotechEntries = List.copyOf(entries); + blocotechTotalBlocks = total; + blocotechSelectedIndex = clamp(blocotechSelectedIndex, 0, Math.max(0, blocotechEntries.size() - 1)); + } + + private long inventoryItemCount(Inventory inventory, Item item) { + long count = 0L; + for (int slot = 0; slot < inventory.getContainerSize(); slot++) { + ItemStack stack = inventory.getItem(slot); + if (!stack.isEmpty() && stack.getItem() == item) { + count += stack.getCount(); + } + } + return count; + } + + private String blocotechDisplayName(String blockId, Item item, BlocotechDescriptions.Entry descriptionEntry) { + if (descriptionEntry != null && !descriptionEntry.displayName().isBlank()) { + return descriptionEntry.displayName(); + } + if (item != Items.AIR) { + String itemName = new ItemStack(item).getHoverName().getString(); + if (!itemName.isBlank()) { + return itemName; + } + } + return humanizeBlockId(blockId); + } + + private String humanizeBlockId(String blockId) { + String[] words = blockPath(blockId).split("_"); + StringBuilder builder = new StringBuilder(); + for (String word : words) { + if (word.isBlank()) { + continue; + } + if (!builder.isEmpty()) { + builder.append(' '); + } + builder.append(Character.toUpperCase(word.charAt(0))); + if (word.length() > 1) { + builder.append(word.substring(1)); + } + } + return builder.isEmpty() ? blockId : builder.toString(); + } + + private String cleanDescriptionLabel(String label) { + if (label == null || label.isBlank()) { + return ""; + } + return humanizeBlockId("minecraft:" + label.replace('-', '_')); + } + + private void ensureVoxelEditor() { + if (!voxelGalleryLoaded) { + voxelProjects = ComputerVoxelGallery.load(minecraft); + voxelGalleryLoaded = true; + } + if (voxelEditor == null) { + if (voxelProjects.isEmpty()) { + createVoxelProject(); + } else { + loadVoxelProject(0); + } + } + ensureVoxelPaletteSelection(); + voxelLayer = clamp(voxelLayer, 0, Math.max(0, voxelEditor.height() - 1)); + } + + private void createVoxelProject() { + String id = "vox-" + Long.toString(System.currentTimeMillis(), 36); + String name = "Creation " + (voxelProjects.size() + 1); + voxelEditor = ComputerVoxelEditor.blank(id, name); + voxelRenameText = voxelEditor.name(); + voxelRenameFocused = false; + voxelLayer = 0; + voxelSelectedProjectIndex = -1; + voxelStatus = "Nouveau projet"; + clearVoxelHistory(); + markVoxelCacheDirty(); + ensureVoxelPaletteSelection(); + } + + private void loadVoxelProject(int index) { + if (index < 0 || index >= voxelProjects.size()) { + return; + } + voxelSelectedProjectIndex = index; + voxelEditor = ComputerVoxelEditor.fromProject(voxelProjects.get(index)); + voxelRenameText = voxelEditor.name(); + voxelRenameFocused = false; + voxelLayer = clamp(voxelLayer, 0, Math.max(0, voxelEditor.height() - 1)); + voxelStatus = voxelEditor.name(); + clearVoxelHistory(); + markVoxelCacheDirty(); + ensureVoxelPaletteSelection(); + } + + private void saveVoxelProject() { + ensureVoxelEditor(); + ComputerVoxelProject project = voxelEditor.toProject(System.currentTimeMillis()); + ComputerVoxelValidator.ValidationResult validation = ComputerVoxelValidator.validate(project); + if (!validation.valid() && !project.cells().isEmpty()) { + voxelStatus = validation.message(); + return; + } + List next = new ArrayList<>(voxelProjects); + int existingIndex = voxelProjectIndex(project.id()); + if (existingIndex >= 0) { + next.set(existingIndex, project); + voxelSelectedProjectIndex = existingIndex; + } else { + next.add(project); + voxelSelectedProjectIndex = next.size() - 1; + } + next.sort(Comparator.comparingLong(ComputerVoxelProject::updatedAt).reversed().thenComparing(ComputerVoxelProject::name)); + voxelProjects = List.copyOf(next); + voxelSelectedProjectIndex = Math.max(0, voxelProjectIndex(project.id())); + ComputerVoxelGallery.save(minecraft, voxelProjects); + voxelStatus = "Sauve: " + project.cells().size() + " voxels"; + } + + private void renameVoxelProject(String name) { + ensureVoxelEditor(); + String cleanName = name == null ? "" : name.stripLeading(); + if (cleanName.length() > 48) { + cleanName = cleanName.substring(0, 48); + } + voxelRenameText = cleanName; + voxelEditor.setName(cleanName.isBlank() ? "Sans titre" : cleanName); + if (voxelSelectedProjectIndex >= 0 && voxelSelectedProjectIndex < voxelProjects.size()) { + List next = new ArrayList<>(voxelProjects); + next.set(voxelSelectedProjectIndex, voxelEditor.export()); + voxelProjects = List.copyOf(next); + } + voxelStatus = "Nom: " + voxelEditor.name(); + } + + private void deleteVoxelProject() { + ensureVoxelEditor(); + if (voxelSelectedProjectIndex < 0 || voxelSelectedProjectIndex >= voxelProjects.size()) { + voxelStatus = "Projet non sauvegarde"; + return; + } + List next = new ArrayList<>(voxelProjects); + ComputerVoxelProject removed = next.remove(voxelSelectedProjectIndex); + voxelProjects = List.copyOf(next); + ComputerVoxelGallery.save(minecraft, voxelProjects); + voxelStatus = "Supprime: " + removed.name(); + if (voxelProjects.isEmpty()) { + createVoxelProject(); + } else { + loadVoxelProject(clamp(voxelSelectedProjectIndex, 0, voxelProjects.size() - 1)); + } + } + + private void undoVoxelEdit() { + if (voxelUndoStack.isEmpty()) { + voxelStatus = "Rien a annuler"; + return; + } + voxelRedoStack.push(voxelEditor.export()); + voxelEditor.replaceProject(voxelUndoStack.pop()); + voxelLayer = clamp(voxelLayer, 0, Math.max(0, voxelEditor.height() - 1)); + markVoxelCacheDirty(); + voxelStatus = "Undo"; + } + + private void redoVoxelEdit() { + if (voxelRedoStack.isEmpty()) { + voxelStatus = "Rien a refaire"; + return; + } + voxelUndoStack.push(voxelEditor.export()); + voxelEditor.replaceProject(voxelRedoStack.pop()); + voxelLayer = clamp(voxelLayer, 0, Math.max(0, voxelEditor.height() - 1)); + markVoxelCacheDirty(); + voxelStatus = "Redo"; + } + + private void finishVoxelMutation(ComputerVoxelProject before) { + ComputerVoxelProject after = voxelEditor.export(); + if (before.width() == after.width() && before.height() == after.height() && before.depth() == after.depth() && before.cells().equals(after.cells())) { + return; + } + voxelUndoStack.push(before); + while (voxelUndoStack.size() > VOXEL_HISTORY_LIMIT) { + voxelUndoStack.removeLast(); + } + voxelRedoStack.clear(); + markVoxelCacheDirty(); + } + + private void clearVoxelHistory() { + voxelUndoStack.clear(); + voxelRedoStack.clear(); + } + + private void markVoxelCacheDirty() { + voxelCacheDirty = true; + voxelHoverHit = null; + voxelHoverX = -1; + voxelHoverY = -1; + voxelHoverZ = -1; + } + + private void resetVoxelStudioView() { + voxelYaw = -0.78D; + voxelPitch = 0.68D; + voxelZoom = 1.0D; + voxelPanX = 0.0D; + voxelPanY = 0.0D; + voxelStatus = "Vue recentree"; + } + + private void startVoxelBlueprint() { + ensureVoxelEditor(); + ComputerVoxelProject project = voxelEditor.toProject(System.currentTimeMillis()); + if (project.cells().isEmpty()) { + voxelStatus = "Projet vide"; + return; + } + ComputerVoxelValidator.ValidationResult validation = ComputerVoxelValidator.validate(project); + if (!validation.valid()) { + voxelStatus = validation.message(); + return; + } + if (minecraft != null) { + minecraft.setScreen(null); + } + ComputerBuildPlacementController.startBlueprint(project); + } + + private void startVoxelCreativeDirect() { + ensureVoxelEditor(); + ComputerVoxelProject project = voxelEditor.toProject(System.currentTimeMillis()); + if (project.cells().isEmpty()) { + voxelStatus = "Projet vide"; + return; + } + ComputerVoxelValidator.ValidationResult validation = ComputerVoxelValidator.validate(project); + if (!validation.valid()) { + voxelStatus = validation.message(); + return; + } + if (minecraft != null) { + minecraft.setScreen(null); + } + ComputerBuildPlacementController.startCreativeDirect(project); + } + + private int voxelProjectIndex(String id) { + for (int index = 0; index < voxelProjects.size(); index++) { + if (voxelProjects.get(index).id().equals(id)) { + return index; + } + } + return -1; + } + + private void ensureVoxelPaletteSelection() { + List palette = voxelPaletteEntries(); + if (palette.isEmpty() || voxelEditor == null) { + return; + } + voxelSelectedPaletteIndex = clamp(voxelSelectedPaletteIndex, 0, palette.size() - 1); + String selected = voxelEditor.selectedBlockId(); + if (selected == null || palette.stream().noneMatch(entry -> entry.id().equals(selected))) { + voxelEditor.selectBlock(palette.get(voxelSelectedPaletteIndex).id()); + } else { + selectVoxelPaletteBlock(selected); + } + } + + private void selectVoxelPaletteBlock(String blockId) { + List palette = voxelPaletteEntries(); + for (int index = 0; index < palette.size(); index++) { + if (palette.get(index).id().equals(blockId)) { + voxelSelectedPaletteIndex = index; + voxelEditor.selectBlock(blockId); + return; + } + } + } + + private List voxelPaletteEntries() { + refreshBlocotechEntriesIfNeeded(); + List entries = new ArrayList<>(); + for (BlocotechBlockEntry entry : blocotechEntries) { + if (ComputerVoxelValidator.isBuildableFullBlock(entry.id())) { + entries.add(entry); + } + } + return entries; + } + + private List voxelVisiblePaletteEntries() { + List entries = voxelPaletteEntries(); + String query = voxelPaletteSearch == null ? "" : voxelPaletteSearch.strip().toLowerCase(Locale.ROOT); + if (query.isBlank()) { + return entries; + } + List filtered = new ArrayList<>(); + for (BlocotechBlockEntry entry : entries) { + String haystack = (entry.name() + " " + entry.id() + " " + entry.family() + " " + entry.category()).toLowerCase(Locale.ROOT); + if (haystack.contains(query)) { + filtered.add(entry); + } + } + return filtered; + } + + private static boolean isScreenshotFile(Path path) { + String name = path.getFileName().toString().toLowerCase(Locale.ROOT); + return name.endsWith(".png") || name.endsWith(".jpg") || name.endsWith(".jpeg"); + } + + private void drawWallpaper(GuiGraphicsExtractor graphics) { + Wallpaper wallpaper = currentWallpaper(); + graphics.fill(0, 0, width, height, wallpaper.base); + if (wallpaper.texture != null) { + drawTextureWallpaper(graphics, wallpaper.texture, wallpaper.textureWidth, wallpaper.textureHeight); + } else { + switch (wallpaper) { + case SANCTUARY -> drawSanctuaryWallpaper(graphics); + case MEADOW -> drawMeadowWallpaper(graphics); + case REDSTONE -> drawRedstoneWallpaper(graphics); + case VOID -> drawVoidWallpaper(graphics); + case DONF -> { + } + case SKYBLOCK -> { + } + } + } + } + + private void drawTextureWallpaper(GuiGraphicsExtractor graphics, Identifier texture, int textureWidth, int textureHeight) { + int targetHeight = Math.max(1, height - TASKBAR); + double scale = Math.max(width / (double) textureWidth, targetHeight / (double) textureHeight); + int drawWidth = Math.max(1, (int) Math.round(textureWidth * scale)); + int drawHeight = Math.max(1, (int) Math.round(textureHeight * scale)); + int x = (width - drawWidth) / 2; + int y = (targetHeight - drawHeight) / 2; + graphics.blit(RenderPipelines.GUI_TEXTURED, texture, x, y, 0.0F, 0.0F, drawWidth, drawHeight, textureWidth, textureHeight, textureWidth, textureHeight); + } + + private void drawSanctuaryWallpaper(GuiGraphicsExtractor graphics) { + for (int y = 20; y < height - TASKBAR; y += 14) { + int color = y % 28 == 0 ? 0x224E7BC5 : 0x163E6AA8; + graphics.fill(0, y, width, y + 1, color); + } + graphics.fill(0, height - TASKBAR - 50, width, height - TASKBAR, 0x44386455); + graphics.fill(0, height - TASKBAR - 22, width, height - TASKBAR, 0x664D7C61); + } + + private void drawMeadowWallpaper(GuiGraphicsExtractor graphics) { + graphics.fill(0, 20, width, height - TASKBAR, 0x442C5A45); + for (int x = -40; x < width + 40; x += 46) { + graphics.fill(x, height - TASKBAR - 44, x + 42, height - TASKBAR, 0x553C7C4B); + graphics.fill(x + 18, height - TASKBAR - 74, x + 54, height - TASKBAR, 0x33346A55); + } + } + + private void drawRedstoneWallpaper(GuiGraphicsExtractor graphics) { + for (int y = 24; y < height - TASKBAR; y += 28) { + graphics.fill(0, y, width, y + 1, 0x55B64D4D); + } + for (int x = 0; x < width; x += 34) { + graphics.fill(x, 20, x + 1, height - TASKBAR, 0x33F06A6A); + } + graphics.fill(width / 2 - 80, 34, width / 2 + 80, 38, 0x88FF5F5F); + } + + private void drawVoidWallpaper(GuiGraphicsExtractor graphics) { + for (int index = 0; index < 80; index++) { + int x = Math.floorMod(index * 73, Math.max(1, width)); + int y = 24 + Math.floorMod(index * 41, Math.max(1, height - TASKBAR - 28)); + int color = index % 5 == 0 ? 0xAA9CC7FF : 0x779BA8C8; + graphics.fill(x, y, x + 1, y + 1, color); + } + } + + private void drawDesktopIcons(GuiGraphicsExtractor graphics) { + int iconSize = desktopIconSize(); + for (int index = 0; index < Program.DESKTOP_PROGRAMS.length; index++) { + Program program = Program.DESKTOP_PROGRAMS[index]; + Rect rect = iconRect(index); + if (rect.y() >= height - TASKBAR - 4) { + continue; + } + int iconX = rect.x() + rect.w() / 2 - iconSize / 2; + int iconY = rect.y() + 8; + drawProgramIcon(graphics, program, iconX, iconY, iconSize); + drawCenteredWrappedText(graphics, program.title, rect.x(), iconY + iconSize + 7, rect.w(), 2, TEXT); + } + } + + private void drawTaskbar(GuiGraphicsExtractor graphics) { + Theme theme = currentTheme(); + int y = height - TASKBAR; + drawNineSlice(graphics, TASKBAR_TEXTURE, 0, y, width, TASKBAR, TASKBAR_TEXTURE_SIZE, TASKBAR_TEXTURE_SIZE, TASKBAR_TEXTURE_SLICE); + graphics.fill(0, y, width, y + 1, theme.borderMuted()); + graphics.text(font, "OS", 8, y + 10, TEXT, false); + String clock = CLOCK_FORMAT.format(new Date()); + graphics.text(font, clock, width - font.width(clock) - 8, y + 10, TEXT, false); + for (int index = 0; index < windows.size(); index++) { + DesktopWindow window = windows.get(index); + Rect button = taskbarWindowRect(index); + boolean focused = window.id == focusedWindowId; + int color = focused ? theme.buttonActive() : theme.button(); + graphics.fill(button.x(), button.y(), button.right(), button.bottom(), color); + graphics.outline(button.x(), button.y(), button.w(), button.h(), focused ? theme.accent() : theme.borderMuted()); + int iconSize = Math.max(8, Math.min(16, button.w() - 4)); + drawProgramIcon(graphics, window.program, button.x() + 3, button.y() + Math.max(1, (button.h() - iconSize) / 2), iconSize); + if (button.w() >= 48) { + graphics.text(font, trim(window.program.title, button.w() - 24), button.x() + 23, button.y() + 5, focused ? TEXT : MUTED, false); + } + } + } + + private void drawProgramIcon(GuiGraphicsExtractor graphics, Program program, int x, int y, int size) { + int sourceWidth = program.textureWidth; + int sourceHeight = program.textureHeight; + double scale = Math.min(size / (double) sourceWidth, size / (double) sourceHeight); + int drawWidth = Math.max(1, (int) Math.round(sourceWidth * scale)); + int drawHeight = Math.max(1, (int) Math.round(sourceHeight * scale)); + int drawX = x + (size - drawWidth) / 2; + int drawY = y + (size - drawHeight) / 2; + graphics.blit(RenderPipelines.GUI_TEXTURED, program.texture, drawX, drawY, 0.0F, 0.0F, drawWidth, drawHeight, sourceWidth, sourceHeight, sourceWidth, sourceHeight); + } + + private void drawScaledFakeItem(GuiGraphicsExtractor graphics, ItemStack stack, int boxX, int boxY, int boxSize, int itemSize) { + if (stack.isEmpty()) { + return; + } + int clampedSize = Math.max(6, Math.min(itemSize, boxSize)); + float scale = clampedSize / 16.0F; + int x = boxX + (boxSize - clampedSize) / 2; + int y = boxY + (boxSize - clampedSize) / 2; + graphics.pose().pushMatrix(); + graphics.pose().translate(x, y); + graphics.pose().scale(scale, scale); + graphics.fakeItem(stack, 0, 0); + graphics.pose().popMatrix(); + } + + private void drawWindow(GuiGraphicsExtractor graphics, DesktopWindow window, int mouseX, int mouseY) { + Theme theme = currentTheme(); + boolean focused = window.id == focusedWindowId; + graphics.fill(window.x + 3, window.y + 4, window.x + window.w + 3, window.y + window.h + 4, 0x66000000); + drawNineSlice(graphics, WINDOW_POPUP_TEXTURE, window.x, window.y, window.w, window.h, WINDOW_POPUP_TEXTURE_WIDTH, WINDOW_POPUP_TEXTURE_HEIGHT, WINDOW_POPUP_SLICE); + Rect titlebar = titlebarInnerRect(window); + graphics.fill(titlebar.x(), titlebar.y(), titlebar.right(), titlebar.bottom(), focused ? theme.titlebarActive() : theme.titlebar()); + Rect maximize = maximizeRect(window); + Rect minimize = minimizeRect(window); + Rect close = closeRect(window); + int titleX = titlebar.x() + WINDOW_TITLE_TEXT_PADDING; + graphics.text(font, trim(window.program.title, Math.max(20, maximize.x() - titleX - WINDOW_CONTROL_GAP)), titleX, titlebar.y() + 3, TEXT, false); + drawWindowControl(graphics, maximize, WINDOW_MAXIMIZE_TEXTURE, WINDOW_MAXIMIZE_TEXTURE_WIDTH, mouseX, mouseY); + drawWindowControl(graphics, minimize, WINDOW_MINIMIZE_TEXTURE, WINDOW_MINIMIZE_TEXTURE_WIDTH, mouseX, mouseY); + drawWindowControl(graphics, close, WINDOW_CLOSE_TEXTURE, WINDOW_CLOSE_TEXTURE_WIDTH, mouseX, mouseY); + + if (draggingWindowId == window.id) { + return; + } + Rect content = contentRect(window); + switch (window.program) { + case MAP -> drawMapProgram(graphics, window, content); + case FILES -> drawFilesProgram(graphics, content); + case STATS -> drawStatsProgram(graphics, content); + case BLOCOTECH -> drawBlocotechProgram(graphics, window, content); + case VOXELIER -> drawVoxelProgram(graphics, window, content, mouseX, mouseY); + case NOTES -> drawNotesProgram(graphics, content); + case TERMINAL -> drawTerminalProgram(graphics, content); + case SETTINGS -> drawSettingsProgram(graphics, content); + } + } + + private void drawWindowControl(GuiGraphicsExtractor graphics, Rect rect, Identifier texture, int textureWidth, int mouseX, int mouseY) { + if (inside(mouseX, mouseY, rect)) { + graphics.fill(rect.x() - 1, rect.y() - 1, rect.right() + 1, rect.bottom() + 1, 0x33FFFFFF); + } + graphics.blit(RenderPipelines.GUI_TEXTURED, texture, rect.x(), rect.y(), 0.0F, 0.0F, rect.w(), rect.h(), textureWidth, WINDOW_CONTROL_TEXTURE_HEIGHT, textureWidth, WINDOW_CONTROL_TEXTURE_HEIGHT); + } + + private int controlRenderWidth(int textureWidth) { + return textureWidth * WINDOW_CONTROL_SCALE; + } + + private int controlRenderHeight() { + return WINDOW_CONTROL_TEXTURE_HEIGHT * WINDOW_CONTROL_SCALE; + } + + private void drawNineSlice(GuiGraphicsExtractor graphics, Identifier texture, int x, int y, int width, int height, int textureWidth, int textureHeight, int slice) { + int centerSourceWidth = Math.max(1, textureWidth - slice * 2); + int centerSourceHeight = Math.max(1, textureHeight - slice * 2); + int centerWidth = Math.max(0, width - slice * 2); + int centerHeight = Math.max(0, height - slice * 2); + + blitRegion(graphics, texture, x, y, slice, slice, 0, 0, slice, slice, textureWidth, textureHeight); + blitRegion(graphics, texture, x + slice + centerWidth, y, slice, slice, textureWidth - slice, 0, slice, slice, textureWidth, textureHeight); + blitRegion(graphics, texture, x, y + slice + centerHeight, slice, slice, 0, textureHeight - slice, slice, slice, textureWidth, textureHeight); + blitRegion(graphics, texture, x + slice + centerWidth, y + slice + centerHeight, slice, slice, textureWidth - slice, textureHeight - slice, slice, slice, textureWidth, textureHeight); + + if (centerWidth > 0) { + blitRegion(graphics, texture, x + slice, y, centerWidth, slice, slice, 0, centerSourceWidth, slice, textureWidth, textureHeight); + blitRegion(graphics, texture, x + slice, y + slice + centerHeight, centerWidth, slice, slice, textureHeight - slice, centerSourceWidth, slice, textureWidth, textureHeight); + } + if (centerHeight > 0) { + blitRegion(graphics, texture, x, y + slice, slice, centerHeight, 0, slice, slice, centerSourceHeight, textureWidth, textureHeight); + blitRegion(graphics, texture, x + slice + centerWidth, y + slice, slice, centerHeight, textureWidth - slice, slice, slice, centerSourceHeight, textureWidth, textureHeight); + } + if (centerWidth > 0 && centerHeight > 0) { + blitRegion(graphics, texture, x + slice, y + slice, centerWidth, centerHeight, slice, slice, centerSourceWidth, centerSourceHeight, textureWidth, textureHeight); + } + } + + private void blitRegion(GuiGraphicsExtractor graphics, Identifier texture, int x, int y, int width, int height, int u, int v, int sourceWidth, int sourceHeight, int textureWidth, int textureHeight) { + graphics.blit(RenderPipelines.GUI_TEXTURED, texture, x, y, (float) u, (float) v, width, height, sourceWidth, sourceHeight, textureWidth, textureHeight); + } + + private void drawMapProgram(GuiGraphicsExtractor graphics, DesktopWindow window, Rect content) { + Theme theme = currentTheme(); + animateMapZoom(); + int titleRight = Math.max(content.x() + 20, mapResetRect(window).x() - 8); + graphics.text(font, trim("Carte locale", titleRight - content.x() - 8), content.x() + 8, content.y() + 10, TEXT, false); + drawMiniButton(graphics, mapResetRect(window), "0"); + drawMiniButton(graphics, mapZoomOutRect(window), "-"); + drawMiniButton(graphics, mapZoomInRect(window), "+"); + + Rect map = mapArea(window); + graphics.fill(map.x(), map.y(), map.right(), map.bottom(), 0xFF0C1118); + graphics.outline(map.x(), map.y(), map.w(), map.h(), theme.border()); + drawMapGrid(graphics, map); + drawMapStatus(graphics, content, map); + } + + private void drawMapGrid(GuiGraphicsExtractor graphics, Rect map) { + int playerChunkX = 0; + int playerChunkZ = 0; + if (minecraft != null && minecraft.player != null) { + playerChunkX = minecraft.player.getBlockX() >> 4; + playerChunkZ = minecraft.player.getBlockZ() >> 4; + } + ClientLevel level = minecraft == null ? null : minecraft.level; + long now = System.currentTimeMillis(); + String dimension = level == null ? "" : dimensionKey(level); + updateObservedChunksAroundPlayer(level, playerChunkX, playerChunkZ, now); + + graphics.enableScissor(map.x() + 1, map.y() + 1, map.right() - 1, map.bottom() - 1); + if (dimension.isBlank() || !drawMapTexture(graphics, map, dimension, playerChunkX, playerChunkZ)) { + graphics.fill(map.x() + 1, map.y() + 1, map.right() - 1, map.bottom() - 1, UNKNOWN_CHUNK_COLOR); + } + drawMapGridOverlay(graphics, map, playerChunkX, playerChunkZ); + drawMapPlayerMarker(graphics, map); + graphics.disableScissor(); + } + + private void drawMapStatus(GuiGraphicsExtractor graphics, Rect content, Rect map) { + int playerChunkX = 0; + int playerChunkZ = 0; + if (minecraft != null && minecraft.player != null) { + playerChunkX = minecraft.player.getBlockX() >> 4; + playerChunkZ = minecraft.player.getBlockZ() >> 4; + } + String line = "Centre: " + Math.round(playerChunkX + mapPanX) + ", " + Math.round(playerChunkZ + mapPanZ) + " Vus: " + observedChunkCount() + " Zoom: " + mapZoomLabel(); + graphics.text(font, trim(line, content.w() - 16), content.x() + 8, map.bottom() + 5, MUTED, false); + } + + private void drawFilesProgram(GuiGraphicsExtractor graphics, Rect content) { + Rect reload = screenshotReloadRect(content); + graphics.text(font, trim("Poularoid", Math.max(20, reload.x() - content.x() - 14)), content.x() + 8, content.y() + 8, TEXT, false); + drawMiniButton(graphics, reload, "Reload"); + drawScreenshotList(graphics, screenshotListArea(content)); + drawScreenshotPreview(graphics, screenshotPreviewArea(content)); + } + + private void drawScreenshotList(GuiGraphicsExtractor graphics, Rect list) { + Theme theme = currentTheme(); + graphics.fill(list.x(), list.y(), list.right(), list.bottom(), 0x66101620); + graphics.outline(list.x(), list.y(), list.w(), list.h(), theme.borderMuted()); + int y = list.y() + 5; + for (int index = 0; index < screenshots.size(); index++) { + if (y + 12 > list.bottom() - 3) { + break; + } + ScreenshotEntry entry = screenshots.get(index); + if (index == selectedScreenshotIndex) { + graphics.fill(list.x() + 3, y - 2, list.right() - 3, y + 11, theme.selection()); + } else if (index % 2 == 0) { + graphics.fill(list.x() + 3, y - 2, list.right() - 3, y + 11, 0x222B3546); + } + graphics.text(font, trim(entry.name(), list.w() - 14), list.x() + 7, y, entry.placeholder() ? MUTED : TEXT, false); + y += 14; + } + } + + private void drawScreenshotPreview(GuiGraphicsExtractor graphics, Rect preview) { + Theme theme = currentTheme(); + graphics.fill(preview.x(), preview.y(), preview.right(), preview.bottom(), 0xFF0C1118); + graphics.outline(preview.x(), preview.y(), preview.w(), preview.h(), theme.border()); + ScreenshotEntry selected = selectedScreenshot(); + if (selected == null || selected.placeholder()) { + graphics.centeredText(font, selected == null ? "Aucun screenshot" : selected.name(), preview.x() + preview.w() / 2, preview.y() + preview.h() / 2 - 4, MUTED); + return; + } + if (!ensureScreenshotTexture(selected)) { + graphics.centeredText(font, "Preview indisponible", preview.x() + preview.w() / 2, preview.y() + preview.h() / 2 - 4, MUTED); + return; + } + Rect image = fitImageRect(preview, loadedScreenshotWidth, loadedScreenshotHeight, 8); + drawScreenshotTexture(graphics, image); + String name = trim(selected.name(), preview.w() - 16); + graphics.centeredText(font, name, preview.x() + preview.w() / 2, preview.bottom() - 13, TEXT); + } + + private void drawScreenshotFullscreen(GuiGraphicsExtractor graphics) { + graphics.fill(0, 0, width, height, 0xF3000000); + ScreenshotEntry selected = selectedScreenshot(); + if (selected == null || selected.placeholder() || !ensureScreenshotTexture(selected)) { + graphics.centeredText(font, "Screenshot indisponible", width / 2, height / 2 - 4, TEXT); + return; + } + Rect screen = new Rect(52, 22, Math.max(1, width - 104), Math.max(1, height - 44)); + Rect image = fitImageRect(screen, loadedScreenshotWidth, loadedScreenshotHeight, 0); + drawScreenshotTexture(graphics, image); + graphics.centeredText(font, "<", 28, height / 2 - 4, TEXT); + graphics.centeredText(font, ">", width - 28, height / 2 - 4, TEXT); + graphics.centeredText(font, trim(selected.name(), width - 120), width / 2, height - 16, MUTED); + } + + private void drawScreenshotTexture(GuiGraphicsExtractor graphics, Rect image) { + graphics.blit( + RenderPipelines.GUI_TEXTURED, + SCREENSHOT_TEXTURE_ID, + image.x(), + image.y(), + 0.0F, + 0.0F, + image.w(), + image.h(), + loadedScreenshotWidth, + loadedScreenshotHeight, + loadedScreenshotWidth, + loadedScreenshotHeight + ); + } + + private boolean ensureScreenshotTexture(ScreenshotEntry entry) { + if (minecraft == null || entry == null || entry.placeholder()) { + return false; + } + if (screenshotTexture != null && entry.path().equals(loadedScreenshotPath)) { + return true; + } + releaseScreenshotTexture(); + try (InputStream input = Files.newInputStream(entry.path())) { + NativeImage image = NativeImage.read(input); + loadedScreenshotWidth = image.getWidth(); + loadedScreenshotHeight = image.getHeight(); + screenshotTexture = new DynamicTexture(() -> "Computer screenshot preview", image); + minecraft.getTextureManager().register(SCREENSHOT_TEXTURE_ID, screenshotTexture); + loadedScreenshotPath = entry.path(); + return true; + } catch (IOException | RuntimeException exception) { + releaseScreenshotTexture(); + return false; + } + } + + private void releaseScreenshotTexture() { + if (screenshotTexture != null) { + if (minecraft != null) { + minecraft.getTextureManager().release(SCREENSHOT_TEXTURE_ID); + } else { + screenshotTexture.close(); + } + } + screenshotTexture = null; + loadedScreenshotPath = null; + loadedScreenshotWidth = 0; + loadedScreenshotHeight = 0; + } + + private void releaseMapTexture() { + if (mapTexture != null) { + if (minecraft != null) { + minecraft.getTextureManager().release(MAP_TEXTURE_ID); + } else { + mapTexture.close(); + } + } + mapTexture = null; + mapTextureSize = 0; + mapTextureDimension = ""; + mapTextureObservedVersion = -1L; + } + + private ScreenshotEntry selectedScreenshot() { + if (screenshots.isEmpty()) { + return null; + } + selectedScreenshotIndex = clamp(selectedScreenshotIndex, 0, screenshots.size() - 1); + return screenshots.get(selectedScreenshotIndex); + } + + private void drawStatsProgram(GuiGraphicsExtractor graphics, Rect content) { + Theme theme = currentTheme(); + graphics.text(font, "Statacraft", content.x() + 8, content.y() + 8, TEXT, false); + StatSnapshot snapshot = statSnapshot(); + if (!snapshot.available()) { + drawPanel(graphics, new Rect(content.x() + 8, content.y() + 28, content.w() - 16, Math.max(36, content.h() - 36))); + drawWrappedText(graphics, "Aucun joueur actif.", content.x() + 16, content.y() + 38, content.w() - 32, 2, MUTED); + return; + } + + Rect metrics = new Rect(content.x() + 8, content.y() + 26, Math.max(32, content.w() - 16), 44); + drawStatsMetrics(graphics, metrics, snapshot); + + int top = metrics.bottom() + 8; + if (content.w() < 310) { + int chartHeight = Math.max(74, (content.bottom() - top - 12) / 2); + Rect chart = new Rect(content.x() + 8, top, Math.max(32, content.w() - 16), chartHeight); + Rect pie = new Rect(content.x() + 8, chart.bottom() + 8, Math.max(32, content.w() - 16), Math.max(58, content.bottom() - chart.bottom() - 16)); + drawProgressChart(graphics, chart, snapshot); + drawBlockPie(graphics, pie, snapshot.blockSlices()); + return; + } + + int leftWidth = Math.max(130, (content.w() - 24) * 3 / 5); + Rect chart = new Rect(content.x() + 8, top, leftWidth, Math.max(84, content.bottom() - top - 8)); + Rect right = new Rect(chart.right() + 8, top, Math.max(80, content.right() - chart.right() - 16), chart.h()); + Rect pie = new Rect(right.x(), right.y(), right.w(), Math.max(92, right.h() * 3 / 5)); + Rect bars = new Rect(right.x(), pie.bottom() + 8, right.w(), Math.max(50, right.bottom() - pie.bottom() - 8)); + drawProgressChart(graphics, chart, snapshot); + drawBlockPie(graphics, pie, snapshot.blockSlices()); + drawVanillaStatsPanel(graphics, bars, snapshot); + } + + private StatSnapshot statSnapshot() { + if (minecraft == null || minecraft.player == null) { + return StatSnapshot.empty(); + } + ComputerStatsPayload serverStats = latestServerStats; + if (serverStats != null && statsSessionKey(minecraft).equals(latestServerStatsKey) && latestServerStatsMs >= statsViewRequestMs) { + if (latestServerStatsMs != statsViewServerSnapshotMs) { + statsViewServerSnapshot = snapshotFromServer(serverStats); + statsViewServerSnapshotMs = latestServerStatsMs; + } + return statsViewServerSnapshot; + } + if (statsViewFallback.available() && statsSessionKey(minecraft).equals(statsViewSessionKey)) { + return statsViewFallback; + } + return localStatSnapshot(); + } + + private StatSnapshot snapshotFromServer(ComputerStatsPayload serverStats) { + return new StatSnapshot( + true, + minecraft.player.getName().getString(), + minecraft.player.level().dimension().identifier().toString(), + serverStats.playTimeTicks(), + serverStats.distanceCm(), + serverStats.minedBlocks(), + serverStats.craftedItems(), + serverStats.pickedBlocks(), + serverStats.usedItems(), + serverStats.droppedItems(), + serverStats.brokenItems(), + serverStats.placedBlocks(), + serverStats.mobKills(), + serverStats.killedByMobs(), + serverStats.deaths(), + serverStats.damageTaken(), + serverStats.jumps(), + serverStats.health(), + serverStats.maxHealth(), + serverStats.xpLevel(), + serverStats.totalExperience(), + blockPickupSlices(serverStats) + ); + } + + private StatSnapshot localStatSnapshot() { + if (minecraft == null || minecraft.player == null) { + return StatSnapshot.empty(); + } + StatsCounter stats = minecraft.player.getStats(); + long playTimeTicks = ComputerLiveStats.playTimeTicks(customStat(stats, Stats.PLAY_TIME)); + long distanceCm = ComputerLiveStats.distanceCm(distanceCentimeters(stats)); + long minedBlocks = ComputerLiveStats.minedBlocks(minedBlocks(stats)); + long craftedItems = craftedItems(stats); + long pickedBlocks = ComputerLiveStats.pickedBlocks(pickedBlockItems(stats)); + long usedItems = usedItems(stats); + long droppedItems = droppedItems(stats); + long brokenItems = brokenItems(stats); + long placedBlocks = ComputerLiveStats.placedBlocks(usedBlockItems(stats)); + long mobKills = customStat(stats, Stats.MOB_KILLS); + long killedByMobs = killedByMobs(stats); + long deaths = customStat(stats, Stats.DEATHS); + long damageTaken = customStat(stats, Stats.DAMAGE_TAKEN); + long jumps = customStat(stats, Stats.JUMP); + int health = Math.round(minecraft.player.getHealth()); + int maxHealth = Math.max(1, Math.round(minecraft.player.getMaxHealth())); + int xpLevel = minecraft.player.experienceLevel; + int totalExperience = minecraft.player.totalExperience; + return new StatSnapshot( + true, + minecraft.player.getName().getString(), + minecraft.player.level().dimension().identifier().toString(), + playTimeTicks, + distanceCm, + minedBlocks, + craftedItems, + pickedBlocks, + usedItems, + droppedItems, + brokenItems, + placedBlocks, + mobKills, + killedByMobs, + deaths, + damageTaken, + jumps, + health, + maxHealth, + xpLevel, + totalExperience, + blockPickupSlices(stats) + ); + } + + private void captureStatsView() { + statsViewSessionKey = statsSessionKey(minecraft); + statsViewRequestMs = System.currentTimeMillis(); + statsViewFallback = localStatSnapshot(); + statsViewServerSnapshot = StatSnapshot.empty(); + statsViewServerSnapshotMs = -1L; + statsViewSamples.clear(); + for (ComputerLiveStats.LiveSample sample : ComputerLiveStats.historySamples()) { + statsViewSamples.add(new StatSample( + sample.playTimeTicks(), + sample.distanceCm(), + sample.minedBlocks(), + sample.craftedItems(), + sample.pickedBlocks(), + sample.mobKills() + )); + } + if (statsViewFallback.available()) { + StatSample fallbackSample = new StatSample( + statsViewFallback.playTimeTicks(), + statsViewFallback.distanceCm(), + statsViewFallback.minedBlocks(), + statsViewFallback.craftedItems(), + statsViewFallback.pickedBlocks(), + statsViewFallback.mobKills() + ); + if (statsViewSamples.isEmpty() || !statsViewSamples.getLast().equals(fallbackSample)) { + statsViewSamples.add(fallbackSample); + } + } + requestStatsSnapshot(); + } + + private void requestStatsSnapshot() { + if (minecraft == null || minecraft.player == null || minecraft.getConnection() == null) { + return; + } + if (!ClientPlayNetworking.canSend(ComputerStatsRequestPayload.TYPE)) { + return; + } + ClientPlayNetworking.send(new ComputerStatsRequestPayload()); + } + + private void drawStatsMetrics(GuiGraphicsExtractor graphics, Rect rect, StatSnapshot snapshot) { + drawPanel(graphics, rect); + int columns = rect.w() < 250 ? 2 : 4; + int cellWidth = Math.max(1, rect.w() / columns); + drawMetric(graphics, rect.x(), rect.y(), cellWidth, "Temps", ticksToClock(snapshot.playTimeTicks())); + drawMetric(graphics, rect.x() + cellWidth, rect.y(), cellWidth, "Distance", meters(snapshot.distanceCm())); + drawMetric(graphics, rect.x() + cellWidth * (columns == 2 ? 0 : 2), rect.y() + (columns == 2 ? 22 : 0), cellWidth, "Mines", compact(snapshot.minedBlocks())); + drawMetric(graphics, rect.x() + cellWidth * (columns == 2 ? 1 : 3), rect.y() + (columns == 2 ? 22 : 0), cellWidth, "Crafts", compact(snapshot.craftedItems())); + } + + private void drawMetric(GuiGraphicsExtractor graphics, int x, int y, int width, String label, String value) { + graphics.text(font, trim(label, width - 8), x + 6, y + 6, MUTED, false); + graphics.text(font, trim(value, width - 8), x + 6, y + 18, TEXT, false); + } + + private void drawProgressChart(GuiGraphicsExtractor graphics, Rect rect, StatSnapshot snapshot) { + drawPanel(graphics, rect); + graphics.text(font, "Progression", rect.x() + 7, rect.y() + 6, TEXT, false); + drawChartLegend(graphics, rect); + Rect plot = new Rect(rect.x() + 10, rect.y() + 26, Math.max(20, rect.w() - 20), Math.max(24, rect.h() - 42)); + graphics.fill(plot.x(), plot.y(), plot.right(), plot.bottom(), 0x44000000); + graphics.horizontalLine(plot.x(), plot.right(), plot.bottom() - 1, 0x665A6574); + graphics.verticalLine(plot.x(), plot.y(), plot.bottom(), 0x665A6574); + for (int i = 1; i < 4; i++) { + int y = plot.y() + plot.h() * i / 4; + graphics.horizontalLine(plot.x() + 1, plot.right(), y, 0x224C5868); + } + + List samples = chartSamples(snapshot); + if (samples.size() < 2) { + graphics.centeredText(font, "En attente de donnees", plot.x() + plot.w() / 2, plot.y() + plot.h() / 2 - 4, MUTED); + return; + } + drawStatSeries(graphics, plot, samples, GRAPH_DISTANCE, StatSample::distanceCm); + drawStatSeries(graphics, plot, samples, GRAPH_BLOCKS, StatSample::minedBlocks); + drawStatSeries(graphics, plot, samples, GRAPH_CRAFTS, StatSample::craftedItems); + String footer = "Vus " + compact(snapshot.pickedBlocks()) + " Kills " + compact(snapshot.mobKills()); + graphics.text(font, trim(footer, rect.w() - 14), rect.x() + 7, rect.bottom() - 12, MUTED, false); + } + + private void drawChartLegend(GuiGraphicsExtractor graphics, Rect rect) { + int x = Math.max(rect.x() + 74, rect.right() - 128); + drawLegendDot(graphics, x, rect.y() + 7, GRAPH_DISTANCE, "dist"); + drawLegendDot(graphics, x + 42, rect.y() + 7, GRAPH_BLOCKS, "mines"); + drawLegendDot(graphics, x + 88, rect.y() + 7, GRAPH_CRAFTS, "crafts"); + } + + private void drawLegendDot(GuiGraphicsExtractor graphics, int x, int y, int color, String label) { + graphics.fill(x, y + 2, x + 5, y + 7, color); + graphics.text(font, label, x + 7, y, MUTED, false); + } + + private List chartSamples(StatSnapshot snapshot) { + StatSample live = new StatSample(snapshot.playTimeTicks(), snapshot.distanceCm(), snapshot.minedBlocks(), snapshot.craftedItems(), snapshot.pickedBlocks(), snapshot.mobKills()); + if (statsViewSamples.size() < 2) { + return List.of(new StatSample(0L, 0L, 0L, 0L, 0L, 0L), live); + } + boolean appendLive = !statsViewSamples.getLast().equals(live); + return downsampleStatSamples(statsViewSamples, appendLive ? live : null); + } + + private List downsampleStatSamples(List samples, StatSample appended) { + int sourceSize = samples.size() + (appended == null ? 0 : 1); + if (sourceSize <= MAX_RENDERED_STAT_SAMPLES) { + if (appended == null) { + return samples; + } + List copy = new ArrayList<>(samples); + copy.add(appended); + return copy; + } + List reduced = new ArrayList<>(MAX_RENDERED_STAT_SAMPLES); + for (int index = 0; index < MAX_RENDERED_STAT_SAMPLES; index++) { + int sourceIndex = (int) Math.round(index * (sourceSize - 1) / (double) (MAX_RENDERED_STAT_SAMPLES - 1)); + reduced.add(statSampleAt(samples, appended, sourceIndex)); + } + return reduced; + } + + private StatSample statSampleAt(List samples, StatSample appended, int index) { + if (index < samples.size()) { + return samples.get(index); + } + return appended == null ? samples.getLast() : appended; + } + + private void drawStatSeries(GuiGraphicsExtractor graphics, Rect plot, List samples, int color, StatValue value) { + long min = Long.MAX_VALUE; + long max = Long.MIN_VALUE; + for (StatSample sample : samples) { + long v = value.get(sample); + min = Math.min(min, v); + max = Math.max(max, v); + } + long range = Math.max(1L, max - min); + for (int i = 1; i < samples.size(); i++) { + int x1 = plot.x() + (i - 1) * Math.max(1, plot.w() - 1) / Math.max(1, samples.size() - 1); + int x2 = plot.x() + i * Math.max(1, plot.w() - 1) / Math.max(1, samples.size() - 1); + int y1 = plot.bottom() - 2 - (int) ((value.get(samples.get(i - 1)) - min) * Math.max(1, plot.h() - 4) / range); + int y2 = plot.bottom() - 2 - (int) ((value.get(samples.get(i)) - min) * Math.max(1, plot.h() - 4) / range); + drawLine(graphics, x1, y1, x2, y2, color); + } + } + + private void drawBlockPie(GuiGraphicsExtractor graphics, Rect rect, List slices) { + drawPanel(graphics, rect); + graphics.text(font, "Blocs recuperes", rect.x() + 7, rect.y() + 6, TEXT, false); + long total = slices.stream().mapToLong(PieSlice::value).sum(); + if (total <= 0L) { + graphics.centeredText(font, "Aucun bloc", rect.x() + rect.w() / 2, rect.y() + rect.h() / 2 - 4, MUTED); + return; + } + int radius = Math.max(14, Math.min(Math.min(rect.w() / 3, rect.h() / 2), 42)); + int cx = rect.x() + radius + 10; + int cy = rect.y() + rect.h() / 2 + 6; + if (ensureStatPieTexture(radius, slices, total)) { + int size = radius * 2 + 1; + graphics.blit(RenderPipelines.GUI_TEXTURED, STAT_PIE_TEXTURE_ID, cx - radius, cy - radius, 0.0F, 0.0F, size, size, size, size, size, size); + } + graphics.outline(cx - radius, cy - radius, radius * 2, radius * 2, currentTheme().borderMuted()); + + int legendX = cx + radius + 10; + int legendY = rect.y() + 24; + for (int i = 0; i < Math.min(5, slices.size()); i++) { + PieSlice slice = slices.get(i); + if (legendY + 10 > rect.bottom() - 4) { + break; + } + graphics.fill(legendX, legendY + 2, legendX + 6, legendY + 8, slice.color()); + String line = slice.label() + " " + percent(slice.value(), total); + graphics.text(font, trim(line, Math.max(20, rect.right() - legendX - 10)), legendX + 9, legendY, MUTED, false); + legendY += 12; + } + } + + private boolean ensureStatPieTexture(int radius, List slices, long total) { + if (minecraft == null) { + return false; + } + String key = statPieKey(radius, slices); + if (statPieTexture != null && statPieTextureSize == radius * 2 + 1 && key.equals(statPieTextureKey)) { + return true; + } + releaseStatPieTexture(); + int size = radius * 2 + 1; + NativeImage image = new NativeImage(size, size, false); + image.fillRect(0, 0, size, size, 0x00000000); + for (int y = 0; y < size; y++) { + int dy = y - radius; + for (int x = 0; x < size; x++) { + int dx = x - radius; + if (dx * dx + dy * dy > radius * radius) { + continue; + } + image.setPixel(x, y, pieColor(dx, dy, total, slices)); + } + } + statPieTexture = new DynamicTexture(() -> "Statacraft block pie", image); + minecraft.getTextureManager().register(STAT_PIE_TEXTURE_ID, statPieTexture); + statPieTextureSize = size; + statPieTextureKey = key; + return true; + } + + private int pieColor(int dx, int dy, long total, List slices) { + double angle = Math.atan2(dy, dx); + if (angle < 0.0D) { + angle += Math.PI * 2.0D; + } + long cursor = 0L; + long target = Math.max(0L, Math.min(total - 1L, (long) (angle / (Math.PI * 2.0D) * total))); + for (PieSlice slice : slices) { + cursor += slice.value(); + if (target < cursor) { + return slice.color(); + } + } + return GRAPH_MUTED; + } + + private String statPieKey(int radius, List slices) { + StringBuilder builder = new StringBuilder().append(radius); + for (PieSlice slice : slices) { + builder.append('|').append(slice.label()).append(':').append(slice.value()).append(':').append(slice.color()); + } + return builder.toString(); + } + + private void releaseStatPieTexture() { + if (statPieTexture != null) { + if (minecraft != null) { + minecraft.getTextureManager().release(STAT_PIE_TEXTURE_ID); + } else { + statPieTexture.close(); + } + } + statPieTexture = null; + statPieTextureSize = 0; + statPieTextureKey = ""; + } + + private void drawVanillaStatsPanel(GuiGraphicsExtractor graphics, Rect rect, StatSnapshot snapshot) { + drawPanel(graphics, rect); + graphics.text(font, "Stats Minecraft", rect.x() + 7, rect.y() + 6, TEXT, false); + int y = rect.y() + 22; + long max = Math.max(1L, Math.max( + Math.max(snapshot.minedBlocks(), snapshot.placedBlocks()), + Math.max(Math.max(snapshot.craftedItems(), snapshot.usedItems()), Math.max(snapshot.droppedItems(), snapshot.mobKills())) + )); + y += drawStatBar(graphics, rect.x() + 7, y, rect.w() - 14, "Blocs mines", snapshot.minedBlocks(), max, compact(snapshot.minedBlocks()), GRAPH_BLOCKS) + 3; + if (y + 12 <= rect.bottom()) { + y += drawStatBar(graphics, rect.x() + 7, y, rect.w() - 14, "Blocs poses", snapshot.placedBlocks(), max, compact(snapshot.placedBlocks()), 0xFF9BE382) + 3; + } + if (y + 12 <= rect.bottom()) { + y += drawStatBar(graphics, rect.x() + 7, y, rect.w() - 14, "Items crafts", snapshot.craftedItems(), max, compact(snapshot.craftedItems()), GRAPH_CRAFTS) + 3; + } + if (y + 12 <= rect.bottom()) { + y += drawStatBar(graphics, rect.x() + 7, y, rect.w() - 14, "Items uses", snapshot.usedItems(), max, compact(snapshot.usedItems()), GRAPH_DISTANCE) + 3; + } + if (y + 12 <= rect.bottom()) { + y += drawStatBar(graphics, rect.x() + 7, y, rect.w() - 14, "Items jetes", snapshot.droppedItems(), max, compact(snapshot.droppedItems()), 0xFFFF7777) + 3; + } + if (y + 12 <= rect.bottom()) { + y += drawStatBar(graphics, rect.x() + 7, y, rect.w() - 14, "Mobs kills", snapshot.mobKills(), max, compact(snapshot.mobKills()), 0xFF8AC9D4) + 3; + } + if (y + 10 <= rect.bottom()) { + String line = "Morts " + snapshot.deaths() + " Tue par " + snapshot.killedByMobs() + " Sauts " + compact(snapshot.jumps()); + graphics.text(font, trim(line, rect.w() - 14), rect.x() + 7, y + 2, MUTED, false); + } + } + + private int drawStatBar(GuiGraphicsExtractor graphics, int x, int y, int width, String label, long value, long max, String display, int color) { + int labelWidth = Math.min(44, Math.max(24, width / 3)); + graphics.text(font, trim(label, labelWidth), x, y, MUTED, false); + int barX = x + labelWidth; + int barW = Math.max(12, width - labelWidth - 4); + graphics.fill(barX, y + 1, barX + barW, y + 9, 0x55101620); + int fill = (int) Math.round(clamp(value / (double) Math.max(1L, max), 0.0D, 1.0D) * barW); + graphics.fill(barX, y + 1, barX + fill, y + 9, color); + graphics.outline(barX, y + 1, barW, 8, currentTheme().borderMuted()); + graphics.text(font, trim(display, barW - 4), barX + 2, y, TEXT, false); + return 12; + } + + private void drawPanel(GuiGraphicsExtractor graphics, Rect rect) { + Theme theme = currentTheme(); + graphics.fill(rect.x(), rect.y(), rect.right(), rect.bottom(), 0x66101620); + graphics.outline(rect.x(), rect.y(), rect.w(), rect.h(), theme.borderMuted()); + } + + private void drawLine(GuiGraphicsExtractor graphics, int x0, int y0, int x1, int y1, int color) { + int dx = Math.abs(x1 - x0); + int sx = x0 < x1 ? 1 : -1; + int dy = -Math.abs(y1 - y0); + int sy = y0 < y1 ? 1 : -1; + int error = dx + dy; + while (true) { + graphics.fill(x0, y0, x0 + 1, y0 + 1, color); + if (x0 == x1 && y0 == y1) { + break; + } + int e2 = 2 * error; + if (e2 >= dy) { + error += dy; + x0 += sx; + } + if (e2 <= dx) { + error += dx; + y0 += sy; + } + } + } + + private void drawNotesProgram(GuiGraphicsExtractor graphics, Rect content) { + graphics.text(font, "Bloc-Notes", content.x() + 8, content.y() + 8, TEXT, false); + List lines = wrap(notes + (focusedWindow() != null && focusedWindow().program == Program.NOTES ? "_" : ""), content.w() - 18); + int y = content.y() + 26; + for (String line : lines) { + if (y + 10 > content.bottom() - 4) { + break; + } + graphics.text(font, line, content.x() + 8, y, MUTED, false); + y += 11; + } + } + + private void drawTerminalProgram(GuiGraphicsExtractor graphics, Rect content) { + int y = content.y() + 8; + int visible = Math.max(1, (content.h() - 20) / 11); + int start = Math.max(0, terminalLines.size() - visible + 1); + for (int index = start; index < terminalLines.size(); index++) { + graphics.text(font, trim(terminalLines.get(index), content.w() - 14), content.x() + 7, y, 0xFF97F0A8, false); + y += 11; + } + graphics.text(font, "> " + terminalInput + "_", content.x() + 7, content.bottom() - 13, 0xFFE8EDF5, false); + } + + private void drawSettingsProgram(GuiGraphicsExtractor graphics, Rect content) { + Theme theme = currentTheme(); + graphics.text(font, "Settings", content.x() + 8, content.y() + 8, TEXT, false); + graphics.text(font, "Fond d'ecran", content.x() + 8, content.y() + 28, MUTED, false); + for (int index = 0; index < Wallpaper.values().length; index++) { + Wallpaper wallpaper = Wallpaper.values()[index]; + Rect swatch = wallpaperSwatch(content, index); + graphics.fill(swatch.x(), swatch.y(), swatch.right(), swatch.bottom(), wallpaper.base); + graphics.outline(swatch.x(), swatch.y(), swatch.w(), swatch.h(), index == rememberedWallpaper ? theme.accent() : theme.border()); + drawWrappedText(graphics, wallpaper.label, swatch.x(), swatch.bottom() + 4, swatch.w(), 2, TEXT); + } + drawWrappedText(graphics, "Programmes ouverts: " + windows.size(), content.x() + 8, content.bottom() - 30, content.w() - 16, 1, MUTED); + drawWrappedText(graphics, "Tab change la fenetre active.", content.x() + 8, content.bottom() - 16, content.w() - 16, 1, MUTED); + } + + private void drawBlocotechProgram(GuiGraphicsExtractor graphics, DesktopWindow window, Rect content) { + refreshBlocotechEntriesIfNeeded(); + String title = "Blocotech"; + String progress = blocotechEntries.size() + "/" + Math.max(blocotechTotalBlocks, blocotechEntries.size()) + " blocs"; + graphics.text(font, trim(title, Math.max(20, content.w() - font.width(progress) - 24)), content.x() + 8, content.y() + 8, TEXT, false); + graphics.text(font, progress, content.right() - font.width(progress) - 8, content.y() + 8, MUTED, false); + + Rect list = blocotechListArea(content); + Rect detail = blocotechDetailArea(content); + drawBlocotechList(graphics, window, list); + drawBlocotechDetail(graphics, detail); + } + + private void drawBlocotechList(GuiGraphicsExtractor graphics, DesktopWindow window, Rect list) { + Theme theme = currentTheme(); + drawPanel(graphics, list); + graphics.text(font, "Decouvertes", list.x() + 6, list.y() + 6, TEXT, false); + if (blocotechEntries.isEmpty()) { + drawWrappedText(graphics, "Aucun bloc decouvert pour le moment.", list.x() + 7, list.y() + 23, list.w() - 14, 4, MUTED); + return; + } + + blocotechSelectedIndex = clamp(blocotechSelectedIndex, 0, blocotechEntries.size() - 1); + blocotechListScroll = clamp(blocotechListScroll, 0, blocotechMaxListScroll(window)); + int rowsTop = blocotechRowsTop(list); + int visibleRows = blocotechVisibleRows(list); + graphics.enableScissor(list.x() + 1, rowsTop, list.right() - 1, list.bottom() - 1); + for (int row = 0; row < visibleRows; row++) { + int index = blocotechListScroll + row; + if (index >= blocotechEntries.size()) { + break; + } + BlocotechBlockEntry entry = blocotechEntries.get(index); + int y = rowsTop + row * BLOCOTECH_ROW_HEIGHT; + if (index == blocotechSelectedIndex) { + graphics.fill(list.x() + 3, y, list.right() - 4, y + BLOCOTECH_ROW_HEIGHT - 2, theme.selection()); + } else if (index % 2 == 0) { + graphics.fill(list.x() + 3, y, list.right() - 4, y + BLOCOTECH_ROW_HEIGHT - 2, 0x222B3546); + } + drawBlocotechIcon(graphics, entry, list.x() + 6, y + 2, 16); + String count = compact(entry.discoveryScore()); + int countWidth = font.width(count); + int countX = list.right() - countWidth - 10; + String family = trim(entry.shortFamily(), Math.max(18, list.w() / 4)); + int familyWidth = font.width(family); + int familyX = Math.max(list.x() + 28, countX - familyWidth - 8); + int nameX = list.x() + 27; + int nameWidth = Math.max(12, familyX - nameX - 6); + graphics.text(font, trim(entry.name(), nameWidth), nameX, y + 5, TEXT, false); + graphics.text(font, family, familyX, y + 5, MUTED, false); + graphics.text(font, count, countX, y + 5, MUTED, false); + } + graphics.disableScissor(); + drawBlocotechScrollbar(graphics, list, visibleRows); + } + + private void drawBlocotechIcon(GuiGraphicsExtractor graphics, BlocotechBlockEntry entry, int x, int y, int size) { + graphics.fill(x, y, x + size, y + size, 0x55101620); + graphics.fill(x + 1, y + 1, x + size - 1, y + size - 1, withAlpha(entry.color(), 0x66)); + graphics.outline(x, y, size, size, currentTheme().borderMuted()); + if (entry.item() != Items.AIR) { + drawScaledFakeItem(graphics, new ItemStack(entry.item()), x, y, size, Math.min(16, size)); + } + } + + private void drawBlocotechScrollbar(GuiGraphicsExtractor graphics, Rect list, int visibleRows) { + int count = blocotechEntries.size(); + if (count <= visibleRows) { + return; + } + int trackTop = blocotechRowsTop(list); + int trackHeight = Math.max(1, list.bottom() - trackTop - 2); + int knobHeight = Math.max(8, trackHeight * visibleRows / count); + int maxScroll = Math.max(1, count - visibleRows); + int knobY = trackTop + (trackHeight - knobHeight) * blocotechListScroll / maxScroll; + graphics.fill(list.right() - 5, trackTop, list.right() - 3, list.bottom() - 2, 0x44101620); + graphics.fill(list.right() - 5, knobY, list.right() - 3, knobY + knobHeight, currentTheme().accent()); + } + + private void drawBlocotechDetail(GuiGraphicsExtractor graphics, Rect detail) { + Theme theme = currentTheme(); + drawPanel(graphics, detail); + if (blocotechEntries.isEmpty()) { + drawWrappedText(graphics, "Marche, mine ou ramasse un bloc pour l'ajouter ici.", detail.x() + 8, detail.y() + 8, detail.w() - 16, 5, MUTED); + return; + } + + BlocotechBlockEntry entry = blocotechEntries.get(clamp(blocotechSelectedIndex, 0, blocotechEntries.size() - 1)); + int headerHeight = Math.min(48, Math.max(38, detail.h() / 4)); + drawBlocotechIcon(graphics, entry, detail.x() + 8, detail.y() + 8, Math.min(28, Math.max(18, headerHeight - 16))); + int textX = detail.x() + 44; + int textWidth = Math.max(20, detail.right() - textX - 8); + graphics.text(font, trim(entry.name(), textWidth), textX, detail.y() + 8, TEXT, false); + graphics.text(font, trim(entry.id(), textWidth), textX, detail.y() + 20, MUTED, false); + graphics.fill(textX, detail.y() + 34, Math.min(detail.right() - 8, textX + Math.max(16, textWidth)), detail.y() + 38, entry.color()); + graphics.outline(textX, detail.y() + 34, Math.min(textWidth, detail.right() - textX - 8), 4, theme.borderMuted()); + + Rect textArea = new Rect(detail.x() + 8, detail.y() + headerHeight, Math.max(12, detail.w() - 16), Math.max(10, detail.h() - headerHeight - 6)); + List lines = blocotechDetailLines(entry); + int contentHeight = blocotechInfoLinesHeight(lines, textArea.w()); + blocotechDetailScroll = clamp(blocotechDetailScroll, 0, Math.max(0, contentHeight - textArea.h())); + graphics.enableScissor(textArea.x(), textArea.y(), textArea.right(), textArea.bottom()); + drawBlocotechInfoLines(graphics, lines, textArea.x(), textArea.y() - blocotechDetailScroll, textArea.w(), textArea.y(), textArea.bottom()); + graphics.disableScissor(); + } + + private List blocotechDetailLines(BlocotechBlockEntry entry) { + List lines = new ArrayList<>(); + lines.add(BlocotechInfoLine.heading("Description")); + String description = entry.description(); + lines.add(BlocotechInfoLine.normal(description.isBlank() ? "Pas de description pour ce bloc." : description)); + lines.add(BlocotechInfoLine.blank()); + lines.add(BlocotechInfoLine.normal("ID: " + entry.id())); + lines.add(BlocotechInfoLine.normal("Categorie: " + entry.category())); + lines.add(BlocotechInfoLine.normal("Famille: " + entry.family())); + lines.add(BlocotechInfoLine.normal("Couleur: " + entry.hueGroup())); + lines.add(BlocotechInfoLine.normal("Mines: " + compact(entry.mined()) + " Obtenus: " + compact(entry.obtained()) + " Poses: " + compact(entry.used()))); + if (entry.inventory() > 0L) { + lines.add(BlocotechInfoLine.normal("Dans l'inventaire: " + compact(entry.inventory()))); + } + return lines; + } + + private int blocotechInfoLinesHeight(List lines, int width) { + int height = 0; + for (BlocotechInfoLine line : lines) { + if (line.text().isBlank()) { + height += 6; + continue; + } + height += Math.max(1, wrap(line.text(), width).size()) * 11 + (line.heading() ? 3 : 1); + } + return height; + } + + private void drawBlocotechInfoLines(GuiGraphicsExtractor graphics, List lines, int x, int y, int width, int clipTop, int clipBottom) { + for (BlocotechInfoLine line : lines) { + if (line.text().isBlank()) { + y += 6; + continue; + } + int color = line.color(); + for (String wrapped : wrap(line.text(), width)) { + if (y + 10 >= clipTop && y <= clipBottom) { + graphics.text(font, trim(wrapped, width), x, y, color, false); + } + y += 11; + } + y += line.heading() ? 3 : 1; + } + } + + private void drawVoxelProgram(GuiGraphicsExtractor graphics, DesktopWindow window, Rect content, int mouseX, int mouseY) { + ensureVoxelEditor(); + String title = "Voxelier"; + String meta = voxelEditor.width() + "x" + voxelEditor.height() + "x" + voxelEditor.depth() + " Y " + voxelLayer + "/" + Math.max(0, voxelEditor.height() - 1); + graphics.text(font, title, content.x() + 8, content.y() + 8, TEXT, false); + drawVoxelRenameField(graphics, voxelRenameRect(content)); + graphics.text(font, trim(meta, content.w() / 2), content.right() - font.width(trim(meta, content.w() / 2)) - 8, content.y() + 8, MUTED, false); + drawVoxelToolbar(graphics, content); + drawVoxelGallery(graphics, voxelGalleryArea(content)); + drawVoxelStudioViewport(graphics, content, mouseX, mouseY); + drawVoxelSide(graphics, content); + graphics.text(font, trim(voxelStatus, content.w() - 16), content.x() + 8, content.bottom() - 12, MUTED, false); + } + + private void drawVoxelRenameField(GuiGraphicsExtractor graphics, Rect rect) { + Theme theme = currentTheme(); + graphics.fill(rect.x(), rect.y(), rect.right(), rect.bottom(), voxelRenameFocused ? theme.selection() : theme.button()); + graphics.outline(rect.x(), rect.y(), rect.w(), rect.h(), voxelRenameFocused ? theme.accent() : theme.borderMuted()); + String value = voxelRenameFocused ? voxelRenameText : voxelEditor.name(); + String label = value == null || value.isBlank() ? "Sans titre" : value; + graphics.text(font, trim(label, rect.w() - 12), rect.x() + 6, rect.y() + 5, TEXT, false); + if (voxelRenameFocused && (System.currentTimeMillis() / 450L) % 2L == 0L) { + int cursorX = rect.x() + 6 + font.width(trim(voxelRenameText, rect.w() - 14)); + graphics.fill(Math.min(rect.right() - 5, cursorX), rect.y() + 4, Math.min(rect.right() - 4, cursorX + 1), rect.bottom() - 4, TEXT); + } + } + + private void drawVoxelToolbar(GuiGraphicsExtractor graphics, Rect content) { + drawMiniButton(graphics, voxelNewRect(content), "Nouv"); + drawMiniButton(graphics, voxelSaveRect(content), "Save"); + drawMiniButton(graphics, voxelDeleteRect(content), "Del"); + drawMiniButton(graphics, voxelBlueprintRect(content), "Plan"); + drawMiniButton(graphics, voxelPlaceRect(content), "Pose"); + drawMiniButton(graphics, voxelUndoRect(content), "Undo"); + drawMiniButton(graphics, voxelRedoRect(content), "Redo"); + drawMiniButton(graphics, voxelResetViewRect(content), "Vue"); + drawMiniButton(graphics, voxelLayerDownRect(content), "-Y"); + drawMiniButton(graphics, voxelLayerUpRect(content), "+Y"); + for (ComputerVoxelEditor.Tool tool : voxelTools()) { + Rect rect = voxelToolRect(content, tool); + drawMiniButton(graphics, rect, switch (tool) { + case ADD -> "Add"; + case BRUSH -> "Brush"; + case REMOVE -> "Cut"; + case PIPETTE -> "Pick"; + case SQUARE -> "Box"; + case ROUND -> "Round"; + case FILL -> "Fill"; + default -> tool.label(); + }); + if (tool == voxelTool) { + graphics.outline(rect.x() - 1, rect.y() - 1, rect.w() + 2, rect.h() + 2, currentTheme().accent()); + } + } + } + + private void drawVoxelGallery(GuiGraphicsExtractor graphics, Rect area) { + drawPanel(graphics, area); + graphics.text(font, "Galerie", area.x() + 6, area.y() + 6, TEXT, false); + if (voxelProjects.isEmpty()) { + drawWrappedText(graphics, "Aucune creation sauvegardee.", area.x() + 7, area.y() + 24, area.w() - 14, 4, MUTED); + return; + } + int rowsTop = area.y() + 20; + int rows = Math.max(1, (area.bottom() - rowsTop - 3) / VOXEL_LIST_ROW_HEIGHT); + voxelGalleryScroll = clamp(voxelGalleryScroll, 0, voxelMaxGalleryScroll(area)); + graphics.enableScissor(area.x() + 1, rowsTop, area.right() - 1, area.bottom() - 2); + for (int row = 0; row < rows; row++) { + int index = voxelGalleryScroll + row; + if (index >= voxelProjects.size()) { + break; + } + ComputerVoxelProject project = voxelProjects.get(index); + int y = rowsTop + row * VOXEL_LIST_ROW_HEIGHT; + if (index == voxelSelectedProjectIndex) { + graphics.fill(area.x() + 3, y, area.right() - 4, y + VOXEL_LIST_ROW_HEIGHT - 2, currentTheme().selection()); + } else if (index % 2 == 0) { + graphics.fill(area.x() + 3, y, area.right() - 4, y + VOXEL_LIST_ROW_HEIGHT - 2, 0x222B3546); + } + graphics.text(font, trim(project.name(), area.w() - 14), area.x() + 7, y + 3, TEXT, false); + } + graphics.disableScissor(); + } + + private void drawVoxelGrid(GuiGraphicsExtractor graphics, Rect area) { + drawPanel(graphics, area); + Rect board = voxelBoardRect(area); + int cell = voxelCellSize(area); + graphics.text(font, trim("Couche " + (voxelLayer + 1), area.w() - 12), area.x() + 6, area.y() + 6, TEXT, false); + graphics.fill(board.x(), board.y(), board.right(), board.bottom(), 0x66101620); + graphics.outline(board.x(), board.y(), board.w(), board.h(), currentTheme().borderMuted()); + for (int z = 0; z < voxelEditor.depth(); z++) { + for (int x = 0; x < voxelEditor.width(); x++) { + int px = board.x() + x * cell; + int py = board.y() + z * cell; + String blockId = voxelEditor.blockAt(x, voxelLayer, z); + if (blockId != null) { + graphics.fill(px + 1, py + 1, px + cell, py + cell, voxelColor(blockId)); + } + if (cell >= 7) { + graphics.outline(px, py, cell, cell, 0x332F3D50); + } + } + } + String selected = voxelEditor.selectedBlockId(); + if (selected != null) { + graphics.text(font, trim(ComputerVoxelRequirements.shortId(selected), area.w() - 12), area.x() + 6, area.bottom() - 13, MUTED, false); + } + } + + private void drawVoxelStudioViewport(GuiGraphicsExtractor graphics, Rect content, int mouseX, int mouseY) { + Rect panel = voxelGridArea(content); + drawPanel(graphics, panel); + Rect view = voxelViewportRect(content); + updateVoxelHover(content, mouseX, mouseY); + drawVoxelViewportBatch(graphics, view); + drawVoxelLayerSlider(graphics, content); + drawVoxelViewportHud(graphics, view); + } + + private void drawVoxelViewportHud(GuiGraphicsExtractor graphics, Rect view) { + String selected = voxelEditor.selectedBlockId(); + String block = selected == null || selected.isBlank() ? "aucun bloc" : ComputerVoxelRequirements.shortId(selected); + graphics.text(font, "Y " + voxelLayer + " / " + Math.max(0, voxelEditor.height() - 1), view.x() + 8, view.y() + 8, TEXT, false); + graphics.text(font, trim(activeVoxelTool().label() + " - " + block, Math.max(80, view.w() - 28)), view.x() + 8, view.y() + 21, MUTED, false); + if (voxelHoverX >= 0 && voxelHoverY >= 0 && voxelHoverZ >= 0) { + String position = voxelHoverX + "," + voxelHoverY + "," + voxelHoverZ; + graphics.text(font, position, view.right() - font.width(position) - 8, view.y() + 8, MUTED, false); + } + } + + private void drawVoxelViewportBatch(GuiGraphicsExtractor graphics, Rect view) { + StudioViewportRenderState.Builder builder = StudioViewportRenderState.builder(); + builder.rect(view.x(), view.y(), view.right(), view.bottom(), 0x66101520); + appendVoxelStudioGrid(builder, view); + ScreenRectangle scissor = new ScreenRectangle(view.x(), view.y(), view.w(), view.h()); + boolean submitted = !builder.isEmpty() && StudioGuiRenderAccess.submit(graphics, builder.build(graphics.pose(), scissor)); + + TextureSetup blockAtlas = voxelBlockAtlasTextureSetup(); + if (blockAtlas != null) { + StudioViewportRenderState.Builder textureBuilder = StudioViewportRenderState.texturedBuilder(blockAtlas); + appendTexturedVoxelFaces(textureBuilder, view); + submitted = submitted && (textureBuilder.isEmpty() || StudioGuiRenderAccess.submit(graphics, textureBuilder.build(graphics.pose(), scissor))); + } else { + StudioViewportRenderState.Builder colorBuilder = StudioViewportRenderState.builder(); + appendColoredVoxelFaces(colorBuilder, view); + submitted = submitted && (colorBuilder.isEmpty() || StudioGuiRenderAccess.submit(graphics, colorBuilder.build(graphics.pose(), scissor))); + } + + StudioViewportRenderState.Builder overlayBuilder = StudioViewportRenderState.builder(); + appendVoxelHover(overlayBuilder, view); + submitted = submitted && (overlayBuilder.isEmpty() || StudioGuiRenderAccess.submit(graphics, overlayBuilder.build(graphics.pose(), scissor))); + if (!submitted) { + drawVoxelViewportFallback(graphics, view); + } + } + + private TextureSetup voxelBlockAtlasTextureSetup() { + if (minecraft == null) { + return null; + } + AbstractTexture texture = minecraft.getTextureManager().getTexture(TextureAtlas.LOCATION_BLOCKS); + if (texture == null || texture.getTextureView() == null || texture.getSampler() == null) { + return null; + } + return TextureSetup.singleTexture(texture.getTextureView(), texture.getSampler()); + } + + private void appendTexturedVoxelFaces(StudioViewportRenderState.Builder builder, Rect view) { + for (VoxelRenderedFace face : visibleVoxelFaces(view, true)) { + TextureAtlasSprite sprite = face.sprite(); + if (sprite == null) { + builder.quad(face.a().x(), face.a().y(), face.b().x(), face.b().y(), face.c().x(), face.c().y(), face.d().x(), face.d().y(), face.fallbackColor()); + continue; + } + builder.texturedQuad( + face.a().x(), face.a().y(), + face.b().x(), face.b().y(), + face.c().x(), face.c().y(), + face.d().x(), face.d().y(), + sprite.getU0(), sprite.getV0(), + sprite.getU1(), sprite.getV1(), + face.textureColor() + ); + } + } + + private void appendColoredVoxelFaces(StudioViewportRenderState.Builder builder, Rect view) { + for (VoxelRenderedFace face : visibleVoxelFaces(view, true)) { + builder.quad(face.a().x(), face.a().y(), face.b().x(), face.b().y(), face.c().x(), face.c().y(), face.d().x(), face.d().y(), face.fallbackColor()); + } + } + + private void drawVoxelViewportFallback(GuiGraphicsExtractor graphics, Rect view) { + graphics.enableScissor(view.x(), view.y(), view.right(), view.bottom()); + graphics.fill(view.x(), view.y(), view.right(), view.bottom(), 0x66101520); + for (VoxelRenderedFace face : visibleVoxelFaces(view, false)) { + drawVoxelFaceFallback(graphics, face); + } + graphics.disableScissor(); + } + + private void drawVoxelFaceFallback(GuiGraphicsExtractor graphics, VoxelRenderedFace face) { + drawLine(graphics, Math.round(face.a().x()), Math.round(face.a().y()), Math.round(face.b().x()), Math.round(face.b().y()), face.fallbackColor()); + drawLine(graphics, Math.round(face.b().x()), Math.round(face.b().y()), Math.round(face.c().x()), Math.round(face.c().y()), face.fallbackColor()); + drawLine(graphics, Math.round(face.c().x()), Math.round(face.c().y()), Math.round(face.d().x()), Math.round(face.d().y()), face.fallbackColor()); + drawLine(graphics, Math.round(face.d().x()), Math.round(face.d().y()), Math.round(face.a().x()), Math.round(face.a().y()), face.fallbackColor()); + } + + private void appendVoxelStudioGrid(StudioViewportRenderState.Builder builder, Rect view) { + int gridColor = 0x556B7897; + for (int x = 0; x <= voxelEditor.width(); x++) { + VoxelScreenPoint a = voxelProject(x, voxelLayer, 0, view); + VoxelScreenPoint b = voxelProject(x, voxelLayer, voxelEditor.depth(), view); + builder.line(a.x(), a.y(), b.x(), b.y(), 1, gridColor); + } + for (int z = 0; z <= voxelEditor.depth(); z++) { + VoxelScreenPoint a = voxelProject(0, voxelLayer, z, view); + VoxelScreenPoint b = voxelProject(voxelEditor.width(), voxelLayer, z, view); + builder.line(a.x(), a.y(), b.x(), b.y(), 1, gridColor); + } + } + + private void appendVoxelHover(StudioViewportRenderState.Builder builder, Rect view) { + if (voxelHoverHit != null) { + VoxelProjectedPoint[] points = voxelFacePoints(voxelHoverHit.x(), voxelHoverHit.y(), voxelHoverHit.z(), voxelHoverHit.face(), view); + builder.quad(points[0].x(), points[0].y(), points[1].x(), points[1].y(), points[2].x(), points[2].y(), points[3].x(), points[3].y(), 0x44FFFFFF); + appendVoxelFaceOutline(builder, points[0], points[1], points[2], points[3], 0xEEFFFFFF); + } else if (voxelHoverX >= 0 && voxelHoverY >= 0 && voxelHoverZ >= 0) { + VoxelProjectedPoint a = voxelProjectExact(voxelHoverX, voxelHoverY + 0.03D, voxelHoverZ, view); + VoxelProjectedPoint b = voxelProjectExact(voxelHoverX + 1.0D, voxelHoverY + 0.03D, voxelHoverZ, view); + VoxelProjectedPoint c = voxelProjectExact(voxelHoverX + 1.0D, voxelHoverY + 0.03D, voxelHoverZ + 1.0D, view); + VoxelProjectedPoint d = voxelProjectExact(voxelHoverX, voxelHoverY + 0.03D, voxelHoverZ + 1.0D, view); + builder.quad(a.x(), a.y(), b.x(), b.y(), c.x(), c.y(), d.x(), d.y(), 0x33FFFFFF); + appendVoxelFaceOutline(builder, a, b, c, d, 0xDDFFFFFF); + } + } + + private List visibleVoxelFaces(Rect view, boolean limitContext) { + List faces = new ArrayList<>(); + rebuildVoxelCacheIfNeeded(); + Set occupied = occupiedVoxelKeys(); + int contextBudget = 1800; + int contextCount = 0; + for (CachedVoxel voxel : voxelCachedVoxels) { + boolean activeLayer = voxel.y() == voxelLayer; + if (limitContext && !activeLayer && voxelCachedVoxels.size() > contextBudget && Math.floorMod(voxel.x() * 31 + voxel.y() * 17 + voxel.z() * 13, 4) != 0) { + continue; + } + if (limitContext && !activeLayer && contextCount++ > contextBudget) { + continue; + } + appendVoxelCubeFaces(faces, voxel, activeLayer, occupied, view); + } + faces.sort(Comparator.comparingDouble(VoxelRenderedFace::depth)); + return faces; + } + + private void appendVoxelCubeFaces(List faces, CachedVoxel voxel, boolean activeLayer, Set occupied, Rect view) { + int baseColor = voxelColorFor(voxel.blockId(), activeLayer); + for (VoxelFace face : VoxelFace.values()) { + if (!isVoxelFaceVisible(voxel, face, occupied)) { + continue; + } + VoxelProjectedPoint[] points = voxelFacePoints(voxel.x(), voxel.y(), voxel.z(), face, view); + double depth = (points[0].depth() + points[1].depth() + points[2].depth() + points[3].depth()) / 4.0D; + faces.add(new VoxelRenderedFace(points[0], points[1], points[2], points[3], depth, shadeVoxelColor(baseColor, face.shade()), voxelTextureTint(activeLayer, face.shade()), voxelSpriteFor(voxel.blockId()), voxel, face)); + } + } + + private boolean isVoxelFaceVisible(CachedVoxel voxel, VoxelFace face, Set occupied) { + if (!isVoxelCameraFacing(face)) { + return false; + } + return !occupied.contains(voxelCacheKey(voxel.x() + face.dx(), voxel.y() + face.dy(), voxel.z() + face.dz())); + } + + private VoxelProjectedPoint[] voxelFacePoints(int x, int y, int z, VoxelFace face, Rect view) { + return switch (face) { + case TOP -> new VoxelProjectedPoint[]{ + voxelProjectExact(x, y + 1.0D, z, view), + voxelProjectExact(x + 1.0D, y + 1.0D, z, view), + voxelProjectExact(x + 1.0D, y + 1.0D, z + 1.0D, view), + voxelProjectExact(x, y + 1.0D, z + 1.0D, view) + }; + case BOTTOM -> new VoxelProjectedPoint[]{ + voxelProjectExact(x, y, z + 1.0D, view), + voxelProjectExact(x + 1.0D, y, z + 1.0D, view), + voxelProjectExact(x + 1.0D, y, z, view), + voxelProjectExact(x, y, z, view) + }; + case NORTH -> new VoxelProjectedPoint[]{ + voxelProjectExact(x, y, z, view), + voxelProjectExact(x + 1.0D, y, z, view), + voxelProjectExact(x + 1.0D, y + 1.0D, z, view), + voxelProjectExact(x, y + 1.0D, z, view) + }; + case SOUTH -> new VoxelProjectedPoint[]{ + voxelProjectExact(x + 1.0D, y, z + 1.0D, view), + voxelProjectExact(x, y, z + 1.0D, view), + voxelProjectExact(x, y + 1.0D, z + 1.0D, view), + voxelProjectExact(x + 1.0D, y + 1.0D, z + 1.0D, view) + }; + case WEST -> new VoxelProjectedPoint[]{ + voxelProjectExact(x, y, z + 1.0D, view), + voxelProjectExact(x, y, z, view), + voxelProjectExact(x, y + 1.0D, z, view), + voxelProjectExact(x, y + 1.0D, z + 1.0D, view) + }; + case EAST -> new VoxelProjectedPoint[]{ + voxelProjectExact(x + 1.0D, y, z, view), + voxelProjectExact(x + 1.0D, y, z + 1.0D, view), + voxelProjectExact(x + 1.0D, y + 1.0D, z + 1.0D, view), + voxelProjectExact(x + 1.0D, y + 1.0D, z, view) + }; + }; + } + + private boolean isVoxelCameraFacing(VoxelFace face) { + double cosYaw = Math.cos(voxelYaw); + double sinYaw = Math.sin(voxelYaw); + double cosPitch = Math.cos(voxelPitch); + double sinPitch = Math.sin(voxelPitch); + double z1 = face.dx() * sinYaw + face.dz() * cosYaw; + double depth = face.dy() * sinPitch + z1 * cosPitch; + return depth > 0.001D; + } + + private VoxelProjectedPoint voxelProjectExact(double x, double y, double z, Rect view) { + double centeredX = x - voxelEditor.width() / 2.0D; + double centeredY = y - voxelEditor.height() / 2.0D; + double centeredZ = z - voxelEditor.depth() / 2.0D; + double cosYaw = Math.cos(voxelYaw); + double sinYaw = Math.sin(voxelYaw); + double x1 = centeredX * cosYaw - centeredZ * sinYaw; + double z1 = centeredX * sinYaw + centeredZ * cosYaw; + double cosPitch = Math.cos(voxelPitch); + double sinPitch = Math.sin(voxelPitch); + double y1 = centeredY * cosPitch - z1 * sinPitch; + double z2 = centeredY * sinPitch + z1 * cosPitch; + double scale = voxelScale(view); + float sx = (float) (view.x() + view.w() / 2.0D + voxelPanX + x1 * scale); + float sy = (float) (view.y() + view.h() / 2.0D + voxelPanY - y1 * scale); + return new VoxelProjectedPoint(sx, sy, z2); + } + + private VoxelScreenPoint voxelProject(double x, double y, double z, Rect view) { + VoxelProjectedPoint point = voxelProjectExact(x, y, z, view); + return new VoxelScreenPoint(Math.round(point.x()), Math.round(point.y()), point.depth()); + } + + private double voxelScale(Rect view) { + int maxDimension = Math.max(voxelEditor.width(), Math.max(voxelEditor.height(), voxelEditor.depth())); + return Math.max(7.0D, Math.min(view.w(), view.h()) / Math.max(6.0D, maxDimension * 1.4D) * voxelZoom); + } + + private void drawVoxelLayerSlider(GuiGraphicsExtractor graphics, Rect content) { + Rect slider = voxelLayerSliderRect(content); + graphics.fill(slider.x(), slider.y(), slider.right(), slider.bottom(), 0xAA000000); + int max = Math.max(1, voxelEditor.height() - 1); + int thumbY = slider.bottom() - 8 - (slider.h() - 16) * voxelLayer / max; + graphics.fill(slider.x() + 2, thumbY, slider.right() - 2, thumbY + 8, 0xFFCED8EA); + } + + private void setVoxelLayerFromMouse(Rect content, double mouseY) { + Rect slider = voxelLayerSliderRect(content); + double normal = 1.0D - (mouseY - slider.y() - 4) / Math.max(1.0D, slider.h() - 8); + voxelLayer = clamp((int) Math.round(normal * Math.max(0, voxelEditor.height() - 1)), 0, Math.max(0, voxelEditor.height() - 1)); + } + + private void setVoxelHueFromMouse(Rect content, double mouseY) { + Rect slider = voxelHueSliderRect(voxelHslArea(content)); + double normal = (mouseY - slider.y()) / Math.max(1.0D, slider.h()); + voxelHue = Math.floorMod((int) Math.round(normal * 359.0D), 360); + } + + private void updateVoxelHover(Rect content, double mouseX, double mouseY) { + VoxelPaintTarget target = voxelPaintTargetAt(content, mouseX, mouseY); + voxelHoverHit = target == null ? null : target.hit(); + voxelHoverX = target == null ? -1 : target.editX(); + voxelHoverY = target == null ? -1 : target.editY(); + voxelHoverZ = target == null ? -1 : target.editZ(); + } + + private void applyVoxelAtMouse(Rect content, double mouseX, double mouseY) { + ComputerVoxelEditor.Tool activeTool = activeVoxelTool(); + VoxelPaintTarget target = voxelPaintTargetAt(content, mouseX, mouseY); + if (target == null) { + return; + } + if (activeTool == ComputerVoxelEditor.Tool.PIPETTE) { + String sampled = voxelEditor.blockAt(target.sourceX(), target.sourceY(), target.sourceZ()); + if (sampled != null && !sampled.isBlank()) { + selectVoxelPaletteBlock(sampled); + voxelColorByBlock.putIfAbsent(sampled, voxelColor(sampled)); + } + return; + } + if (activeTool != ComputerVoxelEditor.Tool.REMOVE) { + ensureVoxelPaletteSelection(); + if (voxelEditor.selectedBlockId() == null || voxelEditor.selectedBlockId().isBlank()) { + voxelStatus = "Selectionne un bloc"; + return; + } + } + try { + ComputerVoxelProject before = voxelEditor.export(); + if (activeTool == ComputerVoxelEditor.Tool.REMOVE) { + voxelEditor.remove(target.sourceX(), target.sourceY(), target.sourceZ()); + } else { + voxelEditor.apply(activeTool, target.editX(), target.editY(), target.editZ(), voxelEditor.selectedBlockId()); + } + finishVoxelMutation(before); + voxelStatus = voxelEditor.project().cells().size() + " voxels"; + } catch (IllegalStateException exception) { + voxelStatus = "Selectionne un bloc"; + } + } + + private ComputerVoxelEditor.Tool activeVoxelTool() { + return voxelTemporaryRemoving ? ComputerVoxelEditor.Tool.REMOVE : voxelTool; + } + + private boolean voxelDragPaints(ComputerVoxelEditor.Tool activeTool) { + return activeTool == ComputerVoxelEditor.Tool.BRUSH || activeTool == ComputerVoxelEditor.Tool.REMOVE; + } + + private VoxelPaintTarget voxelPaintTargetAt(Rect content, double mouseX, double mouseY) { + VoxelFaceHit hit = voxelFaceAt(content, mouseX, mouseY); + if (hit != null) { + ComputerVoxelEditor.Tool activeTool = activeVoxelTool(); + if (activeTool == ComputerVoxelEditor.Tool.REMOVE || activeTool == ComputerVoxelEditor.Tool.PIPETTE || activeTool == ComputerVoxelEditor.Tool.BRUSH) { + return VoxelPaintTarget.source(hit); + } + VoxelPaintTarget adjacent = VoxelPaintTarget.adjacent(hit); + return inVoxelBounds(adjacent.editX(), adjacent.editY(), adjacent.editZ()) ? adjacent : null; + } + VoxelCellTarget fallback = voxelCellAt(content, mouseX, mouseY); + return fallback == null ? null : VoxelPaintTarget.layer(fallback.x(), voxelLayer, fallback.z()); + } + + private VoxelFaceHit voxelFaceAt(Rect content, double mouseX, double mouseY) { + Rect view = voxelViewportRect(content); + if (!inside(mouseX, mouseY, view)) { + return null; + } + List faces = visibleVoxelFaces(view, false); + for (int i = faces.size() - 1; i >= 0; i--) { + VoxelRenderedFace face = faces.get(i); + if (pointInVoxelQuad(mouseX, mouseY, face.a(), face.b(), face.c(), face.d())) { + CachedVoxel voxel = face.voxel(); + return new VoxelFaceHit(voxel.x(), voxel.y(), voxel.z(), face.face(), face.depth()); + } + } + return null; + } + + private boolean pointInVoxelQuad(double x, double y, VoxelProjectedPoint a, VoxelProjectedPoint b, VoxelProjectedPoint c, VoxelProjectedPoint d) { + return pointInVoxelTriangle(x, y, a, b, c) || pointInVoxelTriangle(x, y, a, c, d); + } + + private boolean pointInVoxelTriangle(double x, double y, VoxelProjectedPoint a, VoxelProjectedPoint b, VoxelProjectedPoint c) { + double d1 = voxelTriangleSign(x, y, a, b); + double d2 = voxelTriangleSign(x, y, b, c); + double d3 = voxelTriangleSign(x, y, c, a); + boolean hasNegative = d1 < -0.001D || d2 < -0.001D || d3 < -0.001D; + boolean hasPositive = d1 > 0.001D || d2 > 0.001D || d3 > 0.001D; + return !(hasNegative && hasPositive); + } + + private double voxelTriangleSign(double x, double y, VoxelProjectedPoint a, VoxelProjectedPoint b) { + return (x - b.x()) * (a.y() - b.y()) - (a.x() - b.x()) * (y - b.y()); + } + + private VoxelCellTarget voxelCellAt(Rect content, double mouseX, double mouseY) { + Rect view = voxelViewportRect(content); + if (!inside(mouseX, mouseY, view)) { + return null; + } + double bestDistance = Double.MAX_VALUE; + int bestX = -1; + int bestZ = -1; + double threshold = Math.pow(Math.max(8.0D, voxelScale(view) * 0.72D), 2); + for (int x = 0; x < voxelEditor.width(); x++) { + for (int z = 0; z < voxelEditor.depth(); z++) { + VoxelScreenPoint point = voxelProject(x + 0.5D, voxelLayer + 0.04D, z + 0.5D, view); + double dx = point.x() - mouseX; + double dy = point.y() - mouseY; + double distance = dx * dx + dy * dy; + if (distance < bestDistance) { + bestDistance = distance; + bestX = x; + bestZ = z; + } + } + } + return bestDistance <= threshold ? new VoxelCellTarget(bestX, bestZ) : null; + } + + private boolean inVoxelBounds(int x, int y, int z) { + return x >= 0 && x < voxelEditor.width() && y >= 0 && y < voxelEditor.height() && z >= 0 && z < voxelEditor.depth(); + } + + private void rebuildVoxelCacheIfNeeded() { + if (!voxelCacheDirty) { + return; + } + voxelCachedVoxels.clear(); + for (Map.Entry entry : voxelEditor.cells().entrySet()) { + BlockPos pos = ComputerVoxelPlacement.parseCell(entry.getKey()); + if (pos != null) { + voxelCachedVoxels.add(new CachedVoxel(pos.getX(), pos.getY(), pos.getZ(), entry.getValue())); + } + } + voxelCachedVoxels.sort(Comparator.comparingInt(CachedVoxel::y).thenComparingInt(CachedVoxel::z).thenComparingInt(CachedVoxel::x)); + voxelCacheDirty = false; + } + + private Set occupiedVoxelKeys() { + Set occupied = new HashSet<>(voxelCachedVoxels.size() * 2); + for (CachedVoxel voxel : voxelCachedVoxels) { + occupied.add(voxelCacheKey(voxel.x(), voxel.y(), voxel.z())); + } + return occupied; + } + + private int voxelColorFor(String blockId, boolean activeLayer) { + int color = voxelColorByBlock.computeIfAbsent(blockId, this::voxelColor); + int rgb = color & 0x00FFFFFF; + return 0xFF000000 | (activeLayer ? rgb : darken(rgb, 28)); + } + + private int shadeVoxelColor(int color, int amount) { + int alpha = color & 0xFF000000; + int rgb = color & 0x00FFFFFF; + return alpha | (amount >= 0 ? lighten(rgb, amount) : darken(rgb, -amount)); + } + + private int voxelTextureTint(boolean activeLayer, int amount) { + int shade = Math.min(0, amount); + int rgb = shade < 0 ? darken(0xFFFFFF, -shade) : 0xFFFFFF; + if (!activeLayer) { + rgb = darken(rgb, 22); + } + return 0xFF000000 | rgb; + } + + private TextureAtlasSprite voxelSpriteFor(String blockId) { + return voxelSpriteByBlock.computeIfAbsent(blockId == null ? "" : blockId, this::loadVoxelBlockSprite); + } + + private TextureAtlasSprite loadVoxelBlockSprite(String blockId) { + Identifier identifier = Identifier.tryParse(blockId == null ? "" : blockId); + if (identifier != null) { + Optional block = BuiltInRegistries.BLOCK.getOptional(identifier); + if (block.isPresent() && minecraft != null) { + return minecraft.getModelManager() + .getBlockStateModelSet() + .getParticleMaterial(block.get().defaultBlockState()) + .sprite(); + } + } + if (minecraft != null) { + AbstractTexture texture = minecraft.getTextureManager().getTexture(TextureAtlas.LOCATION_BLOCKS); + if (texture instanceof TextureAtlas atlas) { + return atlas.missingSprite(); + } + } + return null; + } + + private void appendVoxelFaceOutline(StudioViewportRenderState.Builder builder, VoxelProjectedPoint a, VoxelProjectedPoint b, VoxelProjectedPoint c, VoxelProjectedPoint d, int color) { + builder.line(Math.round(a.x()), Math.round(a.y()), Math.round(b.x()), Math.round(b.y()), 1, color); + builder.line(Math.round(b.x()), Math.round(b.y()), Math.round(c.x()), Math.round(c.y()), 1, color); + builder.line(Math.round(c.x()), Math.round(c.y()), Math.round(d.x()), Math.round(d.y()), 1, color); + builder.line(Math.round(d.x()), Math.round(d.y()), Math.round(a.x()), Math.round(a.y()), 1, color); + } + + private List voxelTools() { + return List.of( + ComputerVoxelEditor.Tool.ADD, + ComputerVoxelEditor.Tool.BRUSH, + ComputerVoxelEditor.Tool.REMOVE, + ComputerVoxelEditor.Tool.PIPETTE, + ComputerVoxelEditor.Tool.SQUARE, + ComputerVoxelEditor.Tool.ROUND, + ComputerVoxelEditor.Tool.FILL + ); + } + + private void drawVoxelSide(GuiGraphicsExtractor graphics, Rect content) { + drawVoxelHslPalette(graphics, voxelHslArea(content)); + drawVoxelSearch(graphics, voxelPaletteSearchRect(content)); + drawVoxelPalette(graphics, voxelPaletteArea(content)); + } + + private void drawVoxelHslPalette(GuiGraphicsExtractor graphics, Rect area) { + drawPanel(graphics, area); + graphics.text(font, "Nuancier HSL", area.x() + 6, area.y() + 6, TEXT, false); + Rect grid = voxelHslGridRect(area); + Rect hue = voxelHueSliderRect(area); + int cell = Math.max(8, Math.min(grid.w(), grid.h()) / 9); + int size = cell * 9; + int startX = grid.x() + Math.max(0, (grid.w() - size) / 2); + int startY = grid.y(); + List entries = voxelVisiblePaletteEntries(); + for (int row = 0; row < 9; row++) { + for (int col = 0; col < 9; col++) { + int x = startX + col * cell; + int y = startY + row * cell; + double saturation = col / 8.0D; + double lightness = 1.0D - row / 8.0D; + int color = hslPreviewColor(voxelHue, saturation, lightness); + BlocotechBlockEntry nearest = nearestVoxelPaletteEntry(entries, color); + drawVoxelTextureSwatch(graphics, nearest, x, y, cell, color); + if (nearest != null && voxelEditor != null && nearest.id().equals(voxelEditor.selectedBlockId())) { + graphics.outline(x, y, cell - 1, cell - 1, 0xFFFFFFFF); + graphics.outline(x + 1, y + 1, Math.max(1, cell - 3), Math.max(1, cell - 3), 0xDD000000); + } + } + } + for (int y = hue.y(); y < hue.bottom(); y++) { + double normal = (y - hue.y()) / Math.max(1.0D, hue.h() - 1); + graphics.fill(hue.x(), y, hue.right(), y + 1, hslPreviewColor((int) Math.round(normal * 359.0D), 1.0D, 0.52D)); + } + int thumbY = hue.y() + (hue.h() - 4) * voxelHue / 359; + graphics.fill(hue.x() - 2, thumbY, hue.right() + 2, thumbY + 4, 0xFFFFFFFF); + } + + private void drawVoxelSearch(GuiGraphicsExtractor graphics, Rect area) { + drawPanel(graphics, area); + String value = voxelPaletteSearch.isBlank() ? "Recherche blocs" : voxelPaletteSearch; + int color = voxelPaletteSearch.isBlank() && !voxelSearchFocused ? MUTED : TEXT; + graphics.text(font, trim(value, area.w() - 14), area.x() + 7, area.y() + 6, color, false); + if (voxelSearchFocused && (System.currentTimeMillis() / 450L) % 2L == 0L) { + int cursorX = area.x() + 7 + font.width(trim(voxelPaletteSearch, area.w() - 16)); + graphics.fill(cursorX, area.y() + 5, cursorX + 1, area.bottom() - 5, TEXT); + } + } + + private void drawVoxelTextureSwatch(GuiGraphicsExtractor graphics, BlocotechBlockEntry entry, int x, int y, int cell, int fallbackColor) { + graphics.fill(x, y, x + cell - 1, y + cell - 1, 0xFF10131B); + int color = entry == null ? fallbackColor : entry.color(); + graphics.fill(x + 1, y + 1, x + cell - 2, y + cell - 2, 0xFF000000 | (color & 0x00FFFFFF)); + if (entry != null && entry.item() != Items.AIR) { + drawScaledFakeItem(graphics, new ItemStack(entry.item()), x + 1, y + 1, Math.max(1, cell - 2), Math.max(6, cell - 2)); + } + } + + private BlocotechBlockEntry nearestVoxelPaletteEntry(List entries, int targetArgb) { + if (entries.isEmpty()) { + return null; + } + BlocotechBlockEntry best = entries.getFirst(); + long bestDistance = Long.MAX_VALUE; + int target = targetArgb & 0x00FFFFFF; + int tr = (target >> 16) & 0xFF; + int tg = (target >> 8) & 0xFF; + int tb = target & 0xFF; + for (BlocotechBlockEntry entry : entries) { + int color = entry.color() & 0x00FFFFFF; + long dr = tr - ((color >> 16) & 0xFF); + long dg = tg - ((color >> 8) & 0xFF); + long db = tb - (color & 0xFF); + long distance = dr * dr + dg * dg + db * db; + if (distance < bestDistance) { + bestDistance = distance; + best = entry; + } + } + return best; + } + + private int hslPreviewColor(int hue, double saturation, double lightness) { + double chroma = (1.0D - Math.abs(2.0D * lightness - 1.0D)) * saturation; + double h = hue / 60.0D; + double x = chroma * (1.0D - Math.abs(h % 2.0D - 1.0D)); + double r1; + double g1; + double b1; + if (h < 1.0D) { + r1 = chroma; + g1 = x; + b1 = 0.0D; + } else if (h < 2.0D) { + r1 = x; + g1 = chroma; + b1 = 0.0D; + } else if (h < 3.0D) { + r1 = 0.0D; + g1 = chroma; + b1 = x; + } else if (h < 4.0D) { + r1 = 0.0D; + g1 = x; + b1 = chroma; + } else if (h < 5.0D) { + r1 = x; + g1 = 0.0D; + b1 = chroma; + } else { + r1 = chroma; + g1 = 0.0D; + b1 = x; + } + double m = lightness - chroma / 2.0D; + int r = (int) Math.round((r1 + m) * 255.0D); + int g = (int) Math.round((g1 + m) * 255.0D); + int b = (int) Math.round((b1 + m) * 255.0D); + return 0xFF000000 | (clampChannel(r) << 16) | (clampChannel(g) << 8) | clampChannel(b); + } + + private int clampChannel(int value) { + return Math.max(0, Math.min(255, value)); + } + + private void drawVoxelPreview(GuiGraphicsExtractor graphics, Rect area) { + drawPanel(graphics, area); + graphics.text(font, "Apercu", area.x() + 6, area.y() + 6, TEXT, false); + List cells = ComputerVoxelPlacement.orderedCells(voxelEditor.project()); + if (cells.isEmpty()) { + graphics.centeredText(font, "Vide", area.x() + area.w() / 2, area.y() + area.h() / 2 - 4, MUTED); + return; + } + int stride = Math.max(1, (int) Math.ceil(cells.size() / 260.0D)); + int tile = clamp(Math.min(area.w(), area.h()) / Math.max(12, voxelEditor.width() + voxelEditor.depth()), 2, 6); + int centerX = area.x() + area.w() / 2; + int baseY = area.y() + Math.max(28, area.h() * 2 / 3); + for (int index = 0; index < cells.size(); index += stride) { + ComputerVoxelPlacement.Cell cell = cells.get(index); + int sx = centerX + (cell.x() - cell.z()) * tile; + int sy = baseY + (cell.x() + cell.z()) * tile / 2 - cell.y() * tile; + int color = voxelColor(cell.blockId()); + graphics.fill(sx, sy, sx + Math.max(2, tile + 1), sy + Math.max(2, tile + 1), color); + if (tile >= 4) { + graphics.outline(sx, sy, tile + 1, tile + 1, 0xAA000000); + } + } + } + + private void drawVoxelRequirements(GuiGraphicsExtractor graphics, Rect area) { + drawPanel(graphics, area); + graphics.text(font, "Blocs", area.x() + 6, area.y() + 6, TEXT, false); + Map counts = ComputerVoxelRequirements.requiredBlockCounts(voxelEditor.project()); + if (counts.isEmpty()) { + graphics.text(font, "aucun", area.x() + 7, area.y() + 22, MUTED, false); + return; + } + int y = area.y() + 22; + int index = 0; + for (Map.Entry entry : counts.entrySet()) { + if (index >= 4 || y + 10 > area.bottom() - 4) { + break; + } + String line = ComputerVoxelRequirements.shortId(entry.getKey()) + " x" + entry.getValue(); + graphics.text(font, trim(line, area.w() - 14), area.x() + 7, y, MUTED, false); + y += 11; + index++; + } + } + + private void drawVoxelPalette(GuiGraphicsExtractor graphics, Rect area) { + drawPanel(graphics, area); + graphics.text(font, "Blocs decouverts", area.x() + 6, area.y() + 6, TEXT, false); + List palette = voxelVisiblePaletteEntries(); + if (palette.isEmpty()) { + drawWrappedText(graphics, voxelPaletteSearch.isBlank() ? "Aucun bloc plein decouvert." : "Aucun resultat.", area.x() + 7, area.y() + 24, area.w() - 14, 4, MUTED); + return; + } + voxelPaletteScroll = clamp(voxelPaletteScroll, 0, voxelMaxPaletteScroll(area)); + int rowsTop = area.y() + 20; + int rows = Math.max(1, (area.bottom() - rowsTop - 3) / VOXEL_LIST_ROW_HEIGHT); + graphics.enableScissor(area.x() + 1, rowsTop, area.right() - 1, area.bottom() - 2); + for (int row = 0; row < rows; row++) { + int index = voxelPaletteScroll + row; + if (index >= palette.size()) { + break; + } + BlocotechBlockEntry entry = palette.get(index); + int y = rowsTop + row * VOXEL_LIST_ROW_HEIGHT; + if (voxelEditor != null && entry.id().equals(voxelEditor.selectedBlockId())) { + graphics.fill(area.x() + 3, y, area.right() - 4, y + VOXEL_LIST_ROW_HEIGHT - 2, currentTheme().selection()); + } + drawBlocotechIcon(graphics, entry, area.x() + 6, y + 1, 14); + graphics.text(font, trim(entry.name(), area.w() - 30), area.x() + 24, y + 4, TEXT, false); + } + graphics.disableScissor(); + } + + private void drawLineList(GuiGraphicsExtractor graphics, Rect content, String title, List lines) { + graphics.text(font, title, content.x() + 8, content.y() + 8, TEXT, false); + int y = content.y() + 28; + for (String line : lines) { + if (y + 10 > content.bottom() - 4) { + break; + } + y += drawWrappedText(graphics, line, content.x() + 8, y, content.w() - 16, 3, MUTED) + 2; + } + } + + private void drawMiniButton(GuiGraphicsExtractor graphics, Rect rect, String label) { + Theme theme = currentTheme(); + graphics.fill(rect.x(), rect.y(), rect.right(), rect.bottom(), theme.button()); + graphics.outline(rect.x(), rect.y(), rect.w(), rect.h(), theme.border()); + graphics.centeredText(font, trim(label, rect.w() - 4), rect.x() + rect.w() / 2, rect.y() + 4, TEXT); + } + + private Rect iconRect(int index) { + int iconHeight = desktopIconHeight(); + int rows = desktopIconRows(iconHeight); + int col = index / rows; + int row = index % rows; + int x = DESKTOP_PADDING + col * (ICON_WIDTH + LAYOUT_GAP); + int y = 30 + row * (iconHeight + LAYOUT_GAP); + return new Rect(x, y, ICON_WIDTH, iconHeight); + } + + private int desktopIconRows(int iconHeight) { + int availableHeight = Math.max(iconHeight, height - TASKBAR - 30 - DESKTOP_PADDING); + return Math.max(1, availableHeight / (iconHeight + LAYOUT_GAP)); + } + + private int desktopIconHeight() { + return desktopIconSize() + 46; + } + + private int desktopIconSize() { + int usableHeight = height - TASKBAR; + if (width < 340 || usableHeight < 230) { + return MIN_ICON_SIZE; + } + int growth = Math.max(0, Math.min(width - 360, usableHeight - 220) / 30); + if (width >= 900 && usableHeight >= 520) { + growth += 2; + } + return clamp(MIN_ICON_SIZE + growth, MIN_ICON_SIZE, MAX_ICON_SIZE); + } + + private Rect taskbarWindowRect(int index) { + int count = Math.max(1, windows.size()); + int leftReserved = 36; + int rightReserved = 48; + int gap = Math.max(2, Math.min(6, width / 96)); + int available = Math.max(count, width - leftReserved - rightReserved - gap * (count + 1)); + int buttonWidth = Math.max(12, available / count); + int x = leftReserved + gap + index * (buttonWidth + gap); + int maxRight = Math.max(x + 8, width - rightReserved - gap); + return new Rect(x, height - TASKBAR + 5, Math.max(8, Math.min(buttonWidth, maxRight - x)), 18); + } + + private Rect titleRect(DesktopWindow window) { + return new Rect(window.x, window.y, window.w, TITLEBAR); + } + + private Rect titlebarInnerRect(DesktopWindow window) { + return new Rect( + window.x + WINDOW_TITLEBAR_INSET_X, + window.y + WINDOW_TITLEBAR_INSET_Y, + Math.max(1, window.w - WINDOW_TITLEBAR_INSET_X * 2), + WINDOW_TITLEBAR_HEIGHT + ); + } + + private Rect maximizeRect(DesktopWindow window) { + Rect titlebar = titlebarInnerRect(window); + return new Rect(controlStartX(window), titlebar.y() + (titlebar.h() - controlRenderHeight()) / 2, controlRenderWidth(WINDOW_MAXIMIZE_TEXTURE_WIDTH), controlRenderHeight()); + } + + private Rect minimizeRect(DesktopWindow window) { + Rect maximize = maximizeRect(window); + return new Rect(maximize.right() + WINDOW_CONTROL_GAP, maximize.y(), controlRenderWidth(WINDOW_MINIMIZE_TEXTURE_WIDTH), controlRenderHeight()); + } + + private Rect closeRect(DesktopWindow window) { + Rect minimize = minimizeRect(window); + return new Rect(minimize.right() + WINDOW_CONTROL_GAP, minimize.y(), controlRenderWidth(WINDOW_CLOSE_TEXTURE_WIDTH), controlRenderHeight()); + } + + private int controlStartX(DesktopWindow window) { + int controlsWidth = controlRenderWidth(WINDOW_MAXIMIZE_TEXTURE_WIDTH) + controlRenderWidth(WINDOW_MINIMIZE_TEXTURE_WIDTH) + controlRenderWidth(WINDOW_CLOSE_TEXTURE_WIDTH) + WINDOW_CONTROL_GAP * 2; + return window.x + window.w - WINDOW_TITLEBAR_INSET_X - WINDOW_TITLE_TEXT_PADDING - controlsWidth; + } + + private Rect contentRect(DesktopWindow window) { + return new Rect(window.x + WINDOW_POPUP_SLICE, window.y + TITLEBAR + WINDOW_POPUP_SLICE, window.w - WINDOW_POPUP_SLICE * 2, window.h - TITLEBAR - WINDOW_POPUP_SLICE * 2); + } + + private Rect mapArea(DesktopWindow window) { + Rect content = contentRect(window); + return new Rect(content.x() + 8, content.y() + 34, Math.max(24, content.w() - 16), Math.max(32, content.h() - 58)); + } + + private Rect mapResetRect(DesktopWindow window) { + Rect content = contentRect(window); + return new Rect(Math.max(content.x() + 8, content.right() - 90), content.y() + 5, 28, 18); + } + + private Rect mapZoomOutRect(DesktopWindow window) { + Rect reset = mapResetRect(window); + return new Rect(reset.right() + 5, reset.y(), 22, 18); + } + + private Rect mapZoomInRect(DesktopWindow window) { + Rect zoomOut = mapZoomOutRect(window); + return new Rect(zoomOut.right() + 5, zoomOut.y(), 22, 18); + } + + private Rect screenshotListArea(Rect content) { + if (content.w() < 260) { + int listHeight = Math.max(46, Math.min(96, (content.h() - 42) / 2)); + return new Rect(content.x() + 8, content.y() + 26, Math.max(24, content.w() - 16), listHeight); + } + int listWidth = Math.max(96, Math.min(180, content.w() / 3)); + return new Rect(content.x() + 8, content.y() + 26, listWidth, Math.max(46, content.h() - 34)); + } + + private Rect screenshotPreviewArea(Rect content) { + Rect list = screenshotListArea(content); + if (content.w() < 260) { + int y = list.bottom() + LAYOUT_GAP; + return new Rect(content.x() + 8, y, Math.max(24, content.w() - 16), Math.max(32, content.bottom() - y - 8)); + } + int left = list.right() + 8; + return new Rect(left, content.y() + 26, Math.max(54, content.right() - left - 8), Math.max(46, content.h() - 34)); + } + + private Rect screenshotReloadRect(Rect content) { + int buttonWidth = Math.min(62, Math.max(34, content.w() / 3)); + return new Rect(Math.max(content.x() + 8, content.right() - buttonWidth - 8), content.y() + 4, buttonWidth, 16); + } + + private Rect blocotechListArea(Rect content) { + int top = content.y() + 28; + if (content.w() < 320) { + int listHeight = Math.max(72, Math.min(150, (content.h() - 40) / 2)); + return new Rect(content.x() + 8, top, Math.max(24, content.w() - 16), Math.max(40, listHeight)); + } + int listWidth = Math.max(132, Math.min(210, content.w() * 2 / 5)); + return new Rect(content.x() + 8, top, listWidth, Math.max(60, content.bottom() - top - 8)); + } + + private Rect blocotechDetailArea(Rect content) { + Rect list = blocotechListArea(content); + if (content.w() < 320) { + int y = list.bottom() + LAYOUT_GAP; + return new Rect(content.x() + 8, y, Math.max(24, content.w() - 16), Math.max(48, content.bottom() - y - 8)); + } + int x = list.right() + 8; + return new Rect(x, content.y() + 28, Math.max(70, content.right() - x - 8), Math.max(60, content.h() - 36)); + } + + private int blocotechRowsTop(Rect list) { + return list.y() + 20; + } + + private int blocotechVisibleRows(Rect list) { + return Math.max(1, (list.bottom() - blocotechRowsTop(list) - 2) / BLOCOTECH_ROW_HEIGHT); + } + + private int blocotechMaxListScroll(DesktopWindow window) { + return Math.max(0, blocotechEntries.size() - blocotechVisibleRows(blocotechListArea(contentRect(window)))); + } + + private Rect voxelRenameRect(Rect content) { + int x = content.x() + 64; + int right = Math.max(x + 54, content.right() - 126); + return new Rect(x, content.y() + 4, Math.max(54, Math.min(190, right - x)), 18); + } + + private Rect voxelNewRect(Rect content) { + return new Rect(content.x() + 8, content.y() + 28, 34, 16); + } + + private Rect voxelSaveRect(Rect content) { + Rect previous = voxelNewRect(content); + return new Rect(previous.right() + 4, previous.y(), 36, 16); + } + + private Rect voxelDeleteRect(Rect content) { + Rect previous = voxelSaveRect(content); + return new Rect(previous.right() + 4, previous.y(), 30, 16); + } + + private Rect voxelBlueprintRect(Rect content) { + Rect previous = voxelDeleteRect(content); + return new Rect(previous.right() + 8, previous.y(), 34, 16); + } + + private Rect voxelPlaceRect(Rect content) { + Rect previous = voxelBlueprintRect(content); + return new Rect(previous.right() + 4, previous.y(), 34, 16); + } + + private Rect voxelUndoRect(Rect content) { + Rect previous = voxelPlaceRect(content); + return new Rect(previous.right() + 8, previous.y(), 36, 16); + } + + private Rect voxelRedoRect(Rect content) { + Rect previous = voxelUndoRect(content); + return new Rect(previous.right() + 4, previous.y(), 36, 16); + } + + private Rect voxelResetViewRect(Rect content) { + Rect previous = voxelRedoRect(content); + return new Rect(previous.right() + 4, previous.y(), 30, 16); + } + + private Rect voxelLayerDownRect(Rect content) { + return new Rect(Math.max(content.x() + 8, content.right() - 50), content.y() + 28, 22, 16); + } + + private Rect voxelLayerUpRect(Rect content) { + Rect down = voxelLayerDownRect(content); + return new Rect(down.right() + 4, down.y(), 22, 16); + } + + private Rect voxelToolRect(Rect content, ComputerVoxelEditor.Tool tool) { + Rect grid = voxelGridArea(content); + List tools = voxelTools(); + int index = Math.max(0, tools.indexOf(tool)); + int start = Math.max(grid.x(), voxelResetViewRect(content).right() + 8); + int end = Math.min(grid.right(), voxelLayerDownRect(content).x() - 8); + int available = Math.max(tools.size() * 28 + (tools.size() - 1) * 3, end - start); + int width = Math.max(28, Math.min(44, (available - (tools.size() - 1) * 3) / tools.size())); + return new Rect(start + index * (width + 3), content.y() + 28, width, 16); + } + + private Rect voxelGalleryArea(Rect content) { + int top = content.y() + 50; + int width = Math.max(86, Math.min(132, content.w() / 4)); + return new Rect(content.x() + 8, top, width, Math.max(70, content.bottom() - top - 16)); + } + + private Rect voxelSideArea(Rect content) { + int top = content.y() + 50; + int width = Math.max(106, Math.min(178, content.w() / 3)); + return new Rect(content.right() - width - 8, top, width, Math.max(70, content.bottom() - top - 16)); + } + + private Rect voxelGridArea(Rect content) { + Rect gallery = voxelGalleryArea(content); + Rect side = voxelSideArea(content); + int x = gallery.right() + 8; + int right = side.x() - 8; + if (right - x < 90) { + x = content.x() + 8; + right = side.x() - 8; + } + int top = content.y() + 50; + return new Rect(x, top, Math.max(60, right - x), Math.max(70, content.bottom() - top - 16)); + } + + private Rect voxelViewportRect(Rect content) { + Rect grid = voxelGridArea(content); + return new Rect(grid.x() + 6, grid.y() + 6, Math.max(20, grid.w() - 26), Math.max(24, grid.h() - 12)); + } + + private Rect voxelLayerSliderRect(Rect content) { + Rect view = voxelViewportRect(content); + return new Rect(view.right() + 6, view.y() + 30, 12, Math.max(40, view.h() - 60)); + } + + private Rect voxelPreviewArea(Rect content) { + Rect side = voxelSideArea(content); + int height = Math.max(68, Math.min(116, side.h() / 3)); + return new Rect(side.x(), side.y(), side.w(), height); + } + + private Rect voxelRequirementsArea(Rect content) { + Rect preview = voxelPreviewArea(content); + int height = Math.max(54, Math.min(74, voxelSideArea(content).h() / 4)); + return new Rect(preview.x(), preview.bottom() + 6, preview.w(), height); + } + + private Rect voxelPaletteArea(Rect content) { + Rect side = voxelSideArea(content); + Rect search = voxelPaletteSearchRect(content); + int top = search.bottom() + 6; + return new Rect(side.x(), top, side.w(), Math.max(50, side.bottom() - top)); + } + + private Rect voxelHslArea(Rect content) { + Rect side = voxelSideArea(content); + int height = Math.max(86, Math.min(142, side.h() / 3)); + return new Rect(side.x(), side.y(), side.w(), height); + } + + private Rect voxelHslGridRect(Rect area) { + int top = area.y() + 22; + int rightReserved = 20; + return new Rect(area.x() + 6, top, Math.max(52, area.w() - rightReserved - 12), Math.max(52, area.bottom() - top - 6)); + } + + private Rect voxelHueSliderRect(Rect area) { + Rect grid = voxelHslGridRect(area); + return new Rect(area.right() - 16, grid.y(), 10, grid.h()); + } + + private Rect voxelPaletteSearchRect(Rect content) { + Rect hsl = voxelHslArea(content); + return new Rect(hsl.x(), hsl.bottom() + 6, hsl.w(), 24); + } + + private int voxelCellSize(Rect gridArea) { + if (voxelEditor == null) { + return 4; + } + int availableWidth = Math.max(8, gridArea.w() - 14); + int availableHeight = Math.max(8, gridArea.h() - 38); + return clamp(Math.min(availableWidth / Math.max(1, voxelEditor.width()), availableHeight / Math.max(1, voxelEditor.depth())), 3, 22); + } + + private Rect voxelBoardRect(Rect gridArea) { + int cell = voxelCellSize(gridArea); + int width = Math.max(1, voxelEditor.width() * cell); + int height = Math.max(1, voxelEditor.depth() * cell); + return new Rect(gridArea.x() + (gridArea.w() - width) / 2, gridArea.y() + 24 + Math.max(0, (gridArea.h() - 38 - height) / 2), width, height); + } + + private VoxelGridHit voxelGridHit(Rect content, double mouseX, double mouseY) { + Rect grid = voxelGridArea(content); + if (!inside(mouseX, mouseY, grid)) { + return null; + } + Rect board = voxelBoardRect(grid); + if (!inside(mouseX, mouseY, board)) { + return null; + } + int cell = Math.max(1, voxelCellSize(grid)); + int x = ((int) mouseX - board.x()) / cell; + int z = ((int) mouseY - board.y()) / cell; + if (x < 0 || z < 0 || x >= voxelEditor.width() || z >= voxelEditor.depth()) { + return null; + } + return new VoxelGridHit(x, z); + } + + private int voxelMaxGalleryScroll(Rect area) { + int rows = Math.max(1, (area.bottom() - area.y() - 23) / VOXEL_LIST_ROW_HEIGHT); + return Math.max(0, voxelProjects.size() - rows); + } + + private int voxelMaxPaletteScroll(Rect area) { + int rows = Math.max(1, (area.bottom() - area.y() - 23) / VOXEL_LIST_ROW_HEIGHT); + return Math.max(0, voxelVisiblePaletteEntries().size() - rows); + } + + private static String voxelCacheKey(int x, int y, int z) { + return x + "," + y + "," + z; + } + + private Rect wallpaperSwatch(Rect content, int index) { + int columns = Math.max(1, Math.min(Wallpaper.values().length, Math.max(1, (content.w() - 16) / 70))); + int gap = 8; + int size = Math.max(24, Math.min(54, (content.w() - 16 - gap * (columns - 1)) / columns)); + int col = index % columns; + int row = index / columns; + return new Rect(content.x() + 8 + col * (size + gap), content.y() + 44 + row * (size + 28), size, size); + } + + private Rect fitImageRect(Rect bounds, int imageWidth, int imageHeight, int padding) { + int availableWidth = Math.max(1, bounds.w() - padding * 2); + int availableHeight = Math.max(1, bounds.h() - padding * 2 - 14); + double scale = Math.min(availableWidth / (double) Math.max(1, imageWidth), availableHeight / (double) Math.max(1, imageHeight)); + int drawWidth = Math.max(1, (int) Math.round(imageWidth * scale)); + int drawHeight = Math.max(1, (int) Math.round(imageHeight * scale)); + return new Rect( + bounds.x() + (bounds.w() - drawWidth) / 2, + bounds.y() + padding + Math.max(0, (availableHeight - drawHeight) / 2), + drawWidth, + drawHeight + ); + } + + private void zoomMapAt(DesktopWindow window, double mouseX, double mouseY, double factor) { + Rect map = mapArea(window); + int playerChunkX = minecraft != null && minecraft.player != null ? minecraft.player.getBlockX() >> 4 : 0; + int playerChunkZ = minecraft != null && minecraft.player != null ? minecraft.player.getBlockZ() >> 4 : 0; + double beforeChunkX = screenToChunkX(map, mouseX, playerChunkX, mapPanX, mapPixelsPerChunk); + double beforeChunkZ = screenToChunkZ(map, mouseY, playerChunkZ, mapPanZ, mapPixelsPerChunk); + mapTargetPixelsPerChunk = clamp(mapTargetPixelsPerChunk * factor, MIN_MAP_PIXELS_PER_CHUNK, MAX_MAP_PIXELS_PER_CHUNK); + mapPanX = beforeChunkX - playerChunkX - (mouseX - mapCenterX(map)) / mapTargetPixelsPerChunk; + mapPanZ = beforeChunkZ - playerChunkZ - (mouseY - mapCenterY(map)) / mapTargetPixelsPerChunk; + } + + private void animateMapZoom() { + double delta = mapTargetPixelsPerChunk - mapPixelsPerChunk; + if (Math.abs(delta) < 0.015D) { + mapPixelsPerChunk = mapTargetPixelsPerChunk; + return; + } + mapPixelsPerChunk += delta * MAP_ZOOM_EASE; + } + + private String mapZoomLabel() { + if (Math.abs(mapPixelsPerChunk - Math.rint(mapPixelsPerChunk)) < 0.05D) { + return (int) Math.rint(mapPixelsPerChunk) + "px/chunk"; + } + return String.format(Locale.ROOT, "%.1fpx/chunk", mapPixelsPerChunk); + } + + private boolean drawMapTexture(GuiGraphicsExtractor graphics, Rect map, String dimension, int playerChunkX, int playerChunkZ) { + int textureSize = desiredMapTextureSize(map); + if (!ensureMapTexture(textureSize)) { + return false; + } + + double scale = Math.max(MIN_MAP_PIXELS_PER_CHUNK, mapPixelsPerChunk); + double centerChunkX = playerChunkX + mapPanX; + double centerChunkZ = playerChunkZ + mapPanZ; + double visibleChunkWidth = Math.max(1.0D, (map.w() - 2) / scale); + double visibleChunkHeight = Math.max(1.0D, (map.h() - 2) / scale); + int firstChunkX = (int) Math.floor(centerChunkX - visibleChunkWidth / 2.0D) - 2; + int firstChunkZ = (int) Math.floor(centerChunkZ - visibleChunkHeight / 2.0D) - 2; + int sourceWidth = Math.max(1, (int) Math.ceil(visibleChunkWidth) + 4); + int sourceHeight = Math.max(1, (int) Math.ceil(visibleChunkHeight) + 4); + ensureMapTextureCoverage(dimension, centerChunkX, centerChunkZ, firstChunkX, firstChunkZ, sourceWidth, sourceHeight); + + int drawX = (int) Math.round(mapCenterX(map) + (firstChunkX - centerChunkX) * scale); + int drawY = (int) Math.round(mapCenterY(map) + (firstChunkZ - centerChunkZ) * scale); + int drawWidth = Math.max(1, (int) Math.round(sourceWidth * scale)); + int drawHeight = Math.max(1, (int) Math.round(sourceHeight * scale)); + graphics.blit( + RenderPipelines.GUI_TEXTURED, + MAP_TEXTURE_ID, + drawX, + drawY, + (float) (firstChunkX - mapTextureOriginChunkX), + (float) (firstChunkZ - mapTextureOriginChunkZ), + drawWidth, + drawHeight, + sourceWidth, + sourceHeight, + mapTextureSize, + mapTextureSize + ); + return true; + } + + private int desiredMapTextureSize(Rect map) { + int visibleAtMinZoom = Math.max(map.w(), map.h()) - 2; + return clamp(visibleAtMinZoom + MAP_TEXTURE_MARGIN * 2, MAP_TEXTURE_MIN_SIZE, MAP_TEXTURE_MAX_SIZE); + } + + private boolean ensureMapTexture(int textureSize) { + if (minecraft == null) { + return false; + } + if (mapTexture != null && mapTextureSize == textureSize) { + return true; + } + releaseMapTexture(); + NativeImage image = new NativeImage(textureSize, textureSize, false); + image.fillRect(0, 0, textureSize, textureSize, UNKNOWN_CHUNK_COLOR); + mapTexture = new DynamicTexture(() -> "Minexplorer chunk map", image); + minecraft.getTextureManager().register(MAP_TEXTURE_ID, mapTexture); + mapTextureSize = textureSize; + mapTextureObservedVersion = -1L; + mapTextureDimension = ""; + return true; + } + + private void ensureMapTextureCoverage(String dimension, double centerChunkX, double centerChunkZ, int firstChunkX, int firstChunkZ, int sourceWidth, int sourceHeight) { + boolean needsRecenter = !dimension.equals(mapTextureDimension); + int sourceX = firstChunkX - mapTextureOriginChunkX; + int sourceZ = firstChunkZ - mapTextureOriginChunkZ; + if (sourceX < MAP_TEXTURE_MARGIN / 2 || sourceZ < MAP_TEXTURE_MARGIN / 2) { + needsRecenter = true; + } + if (sourceX + sourceWidth > mapTextureSize - MAP_TEXTURE_MARGIN / 2 || sourceZ + sourceHeight > mapTextureSize - MAP_TEXTURE_MARGIN / 2) { + needsRecenter = true; + } + if (needsRecenter) { + mapTextureOriginChunkX = (int) Math.floor(centerChunkX - mapTextureSize / 2.0D); + mapTextureOriginChunkZ = (int) Math.floor(centerChunkZ - mapTextureSize / 2.0D); + mapTextureDimension = dimension; + mapTextureObservedVersion = -1L; + } + if (mapTextureObservedVersion != observedChunkVersion) { + rebuildMapTexture(); + } + } + + private void rebuildMapTexture() { + if (mapTexture == null || mapTextureDimension.isBlank()) { + return; + } + NativeImage image = mapTexture.getPixels(); + Map dimensionChunks = OBSERVED_CHUNKS.get(mapTextureDimension); + for (int y = 0; y < mapTextureSize; y++) { + for (int x = 0; x < mapTextureSize; x++) { + int color = UNKNOWN_CHUNK_COLOR; + if (dimensionChunks != null) { + ObservedChunk chunk = dimensionChunks.get(ChunkPos.pack(mapTextureOriginChunkX + x, mapTextureOriginChunkZ + y)); + if (chunk != null) { + color = chunk.color(); + } + } + image.setPixel(x, y, color); + } + } + mapTexture.upload(); + mapTextureObservedVersion = observedChunkVersion; + } + + private void drawMapGridOverlay(GuiGraphicsExtractor graphics, Rect map, int playerChunkX, int playerChunkZ) { + if (mapPixelsPerChunk < 4.0D) { + return; + } + double centerChunkX = playerChunkX + mapPanX; + double centerChunkZ = playerChunkZ + mapPanZ; + int startChunkX = (int) Math.floor(centerChunkX - map.w() / (2.0D * mapPixelsPerChunk)) - 1; + int endChunkX = (int) Math.ceil(centerChunkX + map.w() / (2.0D * mapPixelsPerChunk)) + 1; + int startChunkZ = (int) Math.floor(centerChunkZ - map.h() / (2.0D * mapPixelsPerChunk)) - 1; + int endChunkZ = (int) Math.ceil(centerChunkZ + map.h() / (2.0D * mapPixelsPerChunk)) + 1; + for (int chunkX = startChunkX; chunkX <= endChunkX; chunkX++) { + int x = (int) Math.round(mapCenterX(map) + (chunkX - centerChunkX) * mapPixelsPerChunk); + if (x >= map.x() && x <= map.right()) { + graphics.verticalLine(x, map.y(), map.bottom(), 0x222F3D50); + } + } + for (int chunkZ = startChunkZ; chunkZ <= endChunkZ; chunkZ++) { + int y = (int) Math.round(mapCenterY(map) + (chunkZ - centerChunkZ) * mapPixelsPerChunk); + if (y >= map.y() && y <= map.bottom()) { + graphics.horizontalLine(map.x(), map.right(), y, 0x222F3D50); + } + } + } + + private void drawMapPlayerMarker(GuiGraphicsExtractor graphics, Rect map) { + int x = (int) Math.round(mapCenterX(map) - mapPanX * mapPixelsPerChunk); + int y = (int) Math.round(mapCenterY(map) - mapPanZ * mapPixelsPerChunk); + int size = clamp((int) Math.round(mapPixelsPerChunk), 2, 12); + graphics.outline(x - size / 2, y - size / 2, size + 1, size + 1, 0xFFFFF08A); + graphics.fill(x - 1, y - 1, x + 2, y + 2, 0xFFFFF08A); + } + + private double screenToChunkX(Rect map, double mouseX, int playerChunkX, double panX, double scale) { + return playerChunkX + panX + (mouseX - mapCenterX(map)) / Math.max(MIN_MAP_PIXELS_PER_CHUNK, scale); + } + + private double screenToChunkZ(Rect map, double mouseY, int playerChunkZ, double panZ, double scale) { + return playerChunkZ + panZ + (mouseY - mapCenterY(map)) / Math.max(MIN_MAP_PIXELS_PER_CHUNK, scale); + } + + private double mapCenterX(Rect map) { + return map.x() + map.w() / 2.0D; + } + + private double mapCenterY(Rect map) { + return map.y() + map.h() / 2.0D; + } + + private void updateObservedChunksAroundPlayer(ClientLevel level, int playerChunkX, int playerChunkZ, long now) { + if (level == null) { + return; + } + String dimension = dimensionKey(level); + if ( + dimension.equals(lastMapRefreshDimension) + && playerChunkX == lastMapRefreshChunkX + && playerChunkZ == lastMapRefreshChunkZ + && now - lastMapRefreshMs < MAP_REFRESH_INTERVAL_MS + ) { + return; + } + + lastMapRefreshDimension = dimension; + lastMapRefreshChunkX = playerChunkX; + lastMapRefreshChunkZ = playerChunkZ; + lastMapRefreshMs = now; + + int radius = loadedRefreshRadius(level); + Map dimensionChunks = OBSERVED_CHUNKS.computeIfAbsent(dimension, key -> new HashMap<>()); + for (int chunkZ = playerChunkZ - radius; chunkZ <= playerChunkZ + radius; chunkZ++) { + for (int chunkX = playerChunkX - radius; chunkX <= playerChunkX + radius; chunkX++) { + long key = ChunkPos.pack(chunkX, chunkZ); + ObservedChunk observed = dimensionChunks.get(key); + if (observed != null && now - observed.scannedAtMs() < MAP_REFRESH_INTERVAL_MS) { + continue; + } + LevelChunk loadedChunk = loadedChunk(level, chunkX, chunkZ); + if (loadedChunk != null) { + putObservedChunk(dimensionChunks, key, sampleChunkColor(level, loadedChunk), now); + } + } + } + } + + private void putObservedChunk(Map dimensionChunks, long key, int color, long now) { + ObservedChunk previous = dimensionChunks.put(key, new ObservedChunk(color, now)); + if (previous == null || previous.color() != color) { + observedChunkVersion++; + } + } + + private int loadedRefreshRadius(ClientLevel level) { + int loadedChunks = Math.max(1, level.getChunkSource().getLoadedChunksCount()); + int estimatedSide = (int) Math.ceil(Math.sqrt(loadedChunks)); + return clamp(estimatedSide / 2 + 3, 8, 32); + } + + private LevelChunk loadedChunk(ClientLevel level, int chunkX, int chunkZ) { + try { + return level.getChunkSource().getChunk(chunkX, chunkZ, ChunkStatus.FULL, false); + } catch (RuntimeException exception) { + return null; + } + } + + private int sampleChunkColor(ClientLevel level, LevelChunk chunk) { + if (chunk instanceof EmptyLevelChunk || chunk.isEmpty()) { + return EMPTY_CHUNK_COLOR; + } + Map counts = new HashMap<>(); + BlockPos.MutableBlockPos pos = new BlockPos.MutableBlockPos(); + int samples = 0; + ChunkPos chunkPos = chunk.getPos(); + for (int localX = MAP_SAMPLE_STEP / 2; localX < 16; localX += MAP_SAMPLE_STEP) { + for (int localZ = MAP_SAMPLE_STEP / 2; localZ < 16; localZ += MAP_SAMPLE_STEP) { + int blockX = chunkPos.getBlockX(localX); + int blockZ = chunkPos.getBlockZ(localZ); + int topY = chunk.getHeight(Heightmap.Types.WORLD_SURFACE, localX, localZ) - 1; + int color = sampleColumnColor(level, chunk, pos, blockX, blockZ, topY); + if (color != 0) { + counts.merge(color, 1, Integer::sum); + samples++; + } + } + } + if (samples == 0 || counts.isEmpty()) { + return EMPTY_CHUNK_COLOR; + } + int dominantColor = EMPTY_CHUNK_COLOR; + int dominantCount = -1; + for (Map.Entry entry : counts.entrySet()) { + if (entry.getValue() > dominantCount) { + dominantColor = entry.getKey(); + dominantCount = entry.getValue(); + } + } + return dominantColor; + } + + private int sampleColumnColor(ClientLevel level, LevelChunk chunk, BlockPos.MutableBlockPos pos, int blockX, int blockZ, int topY) { + int minY = chunk.getMinY(); + int bottomY = Math.max(minY, topY - 24); + for (int y = topY; y >= bottomY; y--) { + pos.set(blockX, y, blockZ); + BlockState state = chunk.getBlockState(pos); + if (state.isAir() && state.getFluidState().isEmpty()) { + continue; + } + MapColor mapColor = state.getMapColor(level, pos); + if (mapColor == MapColor.NONE) { + continue; + } + return mapColor.calculateARGBColor(MapColor.Brightness.NORMAL); + } + return 0; + } + + private String dimensionKey(ClientLevel level) { + return level.dimension().identifier().toString(); + } + + private int observedChunkCount() { + if (minecraft == null || minecraft.level == null) { + int count = 0; + for (Map dimensionChunks : OBSERVED_CHUNKS.values()) { + count += dimensionChunks.size(); + } + return count; + } + String dimension = dimensionKey(minecraft.level); + Map dimensionChunks = OBSERVED_CHUNKS.get(dimension); + return dimensionChunks == null ? 0 : dimensionChunks.size(); + } + + private long customStat(StatsCounter stats, Identifier id) { + return stats.getValue(Stats.CUSTOM.get(id)); + } + + private long distanceCentimeters(StatsCounter stats) { + return customStat(stats, Stats.WALK_ONE_CM) + + customStat(stats, Stats.CROUCH_ONE_CM) + + customStat(stats, Stats.SPRINT_ONE_CM) + + customStat(stats, Stats.WALK_ON_WATER_ONE_CM) + + customStat(stats, Stats.WALK_UNDER_WATER_ONE_CM) + + customStat(stats, Stats.SWIM_ONE_CM) + + customStat(stats, Stats.FLY_ONE_CM) + + customStat(stats, Stats.AVIATE_ONE_CM) + + customStat(stats, Stats.BOAT_ONE_CM) + + customStat(stats, Stats.MINECART_ONE_CM) + + customStat(stats, Stats.HORSE_ONE_CM); + } + + private long minedBlocks(StatsCounter stats) { + long total = 0L; + for (Block block : BuiltInRegistries.BLOCK) { + total += stats.getValue(Stats.BLOCK_MINED, block); + } + return total; + } + + private long craftedItems(StatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + total += stats.getValue(Stats.ITEM_CRAFTED, item); + } + return total; + } + + private long pickedBlockItems(StatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + if (item instanceof BlockItem) { + total += stats.getValue(Stats.ITEM_PICKED_UP, item); + } + } + return total; + } + + private long usedItems(StatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + total += stats.getValue(Stats.ITEM_USED, item); + } + return total; + } + + private long droppedItems(StatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + total += stats.getValue(Stats.ITEM_DROPPED, item); + } + return total; + } + + private long brokenItems(StatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + total += stats.getValue(Stats.ITEM_BROKEN, item); + } + return total; + } + + private long usedBlockItems(StatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + if (item instanceof BlockItem) { + total += stats.getValue(Stats.ITEM_USED, item); + } + } + return total; + } + + private long killedByMobs(StatsCounter stats) { + long total = 0L; + for (EntityType entityType : BuiltInRegistries.ENTITY_TYPE) { + total += stats.getValue(Stats.ENTITY_KILLED_BY, entityType); + } + return total; + } + + private List blockPickupSlices(ComputerStatsPayload stats) { + Map counts = new LinkedHashMap<>(); + putFamilyCount(counts, "Minerais", stats.familyMinerais()); + putFamilyCount(counts, "Bois", stats.familyBois()); + putFamilyCount(counts, "Roche", stats.familyRoche()); + putFamilyCount(counts, "Sols", stats.familySols()); + putFamilyCount(counts, "Vegetal", stats.familyVegetal()); + putFamilyCount(counts, "Construits", stats.familyConstruits()); + putFamilyCount(counts, "Autres", stats.familyAutres()); + if (counts.isEmpty()) { + counts = inventoryBlockCounts(); + } + return pieSlices(counts); + } + + private void putFamilyCount(Map counts, String family, long value) { + if (value > 0L) { + counts.put(family, value); + } + } + + private List blockPickupSlices(StatsCounter stats) { + Map counts = new LinkedHashMap<>(); + for (Item item : BuiltInRegistries.ITEM) { + if (item instanceof BlockItem blockItem) { + long count = stats.getValue(Stats.ITEM_PICKED_UP, item); + if (count > 0L) { + addBlockFamilyCount(counts, blockItem.getBlock(), count); + } + } + } + Map merged = ComputerLiveStats.pickedBlockFamilies(counts); + if (merged.isEmpty()) { + merged = inventoryBlockCounts(); + } + return pieSlices(merged); + } + + private Map inventoryBlockCounts() { + Map counts = new LinkedHashMap<>(); + if (minecraft == null || minecraft.player == null) { + return counts; + } + Inventory inventory = minecraft.player.getInventory(); + for (int slot = 0; slot < inventory.getContainerSize(); slot++) { + ItemStack stack = inventory.getItem(slot); + if (!stack.isEmpty() && stack.getItem() instanceof BlockItem blockItem) { + addBlockFamilyCount(counts, blockItem.getBlock(), stack.getCount()); + } + } + return counts; + } + + private void addBlockFamilyCount(Map counts, Block block, long amount) { + Identifier id = BuiltInRegistries.BLOCK.getKey(block); + String family = blockFamily(id == null ? "" : id.toString()); + counts.merge(family, amount, Long::sum); + } + + private List pieSlices(Map counts) { + return counts.entrySet().stream() + .sorted(Map.Entry.comparingByValue().reversed()) + .map(entry -> new PieSlice(entry.getKey(), entry.getValue(), familyColor(entry.getKey()))) + .toList(); + } + + private String blockFamily(String blockId) { + String path = blockPath(blockId); + if (path.contains("ore") || path.contains("raw_") || path.contains("coal") || path.contains("copper") || path.contains("iron") || path.contains("gold") || path.contains("diamond") || path.contains("emerald") || path.contains("lapis") || path.contains("redstone") || path.contains("quartz") || path.contains("ancient_debris")) { + return "Minerais"; + } + if (path.contains("log") || path.contains("wood") || path.contains("planks") || path.contains("stem") || path.contains("hyphae") || path.contains("bamboo")) { + return "Bois"; + } + if (path.contains("stone") || path.contains("deepslate") || path.contains("granite") || path.contains("andesite") || path.contains("diorite") || path.contains("tuff") || path.contains("basalt") || path.contains("blackstone") || path.contains("netherrack")) { + return "Roche"; + } + if (path.contains("dirt") || path.contains("grass_block") || path.contains("sand") || path.contains("gravel") || path.contains("clay") || path.contains("mud") || path.contains("soul")) { + return "Sols"; + } + if (path.contains("leaves") || path.contains("sapling") || path.contains("flower") || path.contains("moss") || path.contains("grass") || path.contains("vine") || path.contains("roots") || path.contains("crop")) { + return "Vegetal"; + } + if (path.contains("glass") || path.contains("wool") || path.contains("concrete") || path.contains("terracotta") || path.contains("brick")) { + return "Construits"; + } + return "Autres"; + } + + private int familyColor(String family) { + return switch (family) { + case "Minerais" -> 0xFF8AC9D4; + case "Bois" -> 0xFFC8955B; + case "Roche" -> 0xFF8A8F96; + case "Sols" -> 0xFF9A6C43; + case "Vegetal" -> 0xFF78C76F; + case "Construits" -> 0xFFFFC76F; + default -> 0xFFB6C0CE; + }; + } + + private int voxelColor(String blockId) { + Identifier id = Identifier.tryParse(blockId == null ? "" : blockId); + Block block = id == null ? null : BuiltInRegistries.BLOCK.getOptional(id).orElse(null); + if (block != null && minecraft != null && minecraft.level != null) { + MapColor mapColor = block.defaultBlockState().getMapColor(minecraft.level, BlockPos.ZERO); + return 0xFF000000 | (mapColor.calculateARGBColor(MapColor.Brightness.NORMAL) & 0x00FFFFFF); + } + return familyColor(blockFamily(blockId == null ? "" : blockId)); + } + + private String blockPath(String blockId) { + int split = blockId.indexOf(':'); + return (split >= 0 ? blockId.substring(split + 1) : blockId).toLowerCase(Locale.ROOT); + } + + private String ticksToClock(long ticks) { + long seconds = ticks / 20L; + long hours = seconds / 3600L; + long minutes = (seconds % 3600L) / 60L; + if (hours > 0L) { + return hours + "h " + minutes + "m"; + } + return minutes + "m"; + } + + private String meters(long centimeters) { + long meters = centimeters / 100L; + if (meters >= 1000L) { + return String.format(Locale.ROOT, "%.1fkm", meters / 1000.0D); + } + return meters + "m"; + } + + private String compact(long value) { + if (value >= 1_000_000L) { + return String.format(Locale.ROOT, "%.1fM", value / 1_000_000.0D); + } + if (value >= 10_000L) { + return (value / 1000L) + "k"; + } + if (value >= 1000L) { + return String.format(Locale.ROOT, "%.1fk", value / 1000.0D); + } + return Long.toString(value); + } + + private String percent(long value, long total) { + if (total <= 0L) { + return "0%"; + } + return Math.round(value * 100.0D / total) + "%"; + } + + private Wallpaper currentWallpaper() { + Wallpaper[] wallpapers = Wallpaper.values(); + return wallpapers[Math.floorMod(rememberedWallpaper, wallpapers.length)]; + } + + private Theme currentTheme() { + return currentWallpaper().theme(); + } + + private boolean inside(double mouseX, double mouseY, Rect rect) { + return mouseX >= rect.x() && mouseX < rect.right() && mouseY >= rect.y() && mouseY < rect.bottom(); + } + + private int clamp(int value, int min, int max) { + return Math.max(min, Math.min(max, value)); + } + + private double clamp(double value, double min, double max) { + return Math.max(min, Math.min(max, value)); + } + + private int lighten(int rgb, int amount) { + int r = Math.min(255, ((rgb >> 16) & 0xFF) + amount); + int g = Math.min(255, ((rgb >> 8) & 0xFF) + amount); + int b = Math.min(255, (rgb & 0xFF) + amount); + return (r << 16) | (g << 8) | b; + } + + private int darken(int rgb, int amount) { + int r = Math.max(0, ((rgb >> 16) & 0xFF) - amount); + int g = Math.max(0, ((rgb >> 8) & 0xFF) - amount); + int b = Math.max(0, (rgb & 0xFF) - amount); + return (r << 16) | (g << 8) | b; + } + + private int withAlpha(int argb, int alpha) { + return (clamp(alpha, 0, 255) << 24) | (argb & 0x00FFFFFF); + } + + private String trim(String text, int maxWidth) { + if (text == null) { + return ""; + } + if (maxWidth <= 0) { + return ""; + } + if (font.width(text) <= maxWidth) { + return text; + } + String suffix = "..."; + int end = text.length(); + while (end > 0 && font.width(text.substring(0, end) + suffix) > maxWidth) { + end--; + } + return text.substring(0, Math.max(0, end)) + suffix; + } + + private int drawWrappedText(GuiGraphicsExtractor graphics, String text, int x, int y, int maxWidth, int maxLines, int color) { + List lines = wrap(text, maxWidth); + int drawn = 0; + for (String line : lines) { + if (drawn >= maxLines) { + break; + } + graphics.text(font, trim(line, maxWidth), x, y + drawn * 11, color, false); + drawn++; + } + return Math.max(0, drawn * 11); + } + + private int drawCenteredWrappedText(GuiGraphicsExtractor graphics, String text, int x, int y, int maxWidth, int maxLines, int color) { + List lines = wrap(text, maxWidth); + int drawn = 0; + for (String line : lines) { + if (drawn >= maxLines) { + break; + } + String fitted = trim(line, maxWidth); + graphics.centeredText(font, fitted, x + maxWidth / 2, y + drawn * 11, color); + drawn++; + } + return Math.max(0, drawn * 11); + } + + private List wrap(String text, int maxWidth) { + if (maxWidth <= 0) { + return List.of(""); + } + List lines = new ArrayList<>(); + for (String rawLine : text.split("\\n", -1)) { + if (rawLine.isBlank()) { + lines.add(""); + continue; + } + String current = ""; + for (String word : rawLine.split("\\s+")) { + String candidate = current.isBlank() ? word : current + " " + word; + if (font.width(candidate) <= maxWidth) { + current = candidate; + } else { + if (!current.isBlank()) { + lines.add(current); + } + current = font.width(word) <= maxWidth ? word : addWrappedWord(lines, word, maxWidth); + } + } + if (!current.isBlank()) { + lines.add(current); + } + } + return lines; + } + + private String addWrappedWord(List lines, String word, int maxWidth) { + String remaining = word; + while (font.width(remaining) > maxWidth && remaining.length() > 1) { + String fitted = fitLongWord(remaining, maxWidth); + lines.add(fitted); + remaining = remaining.substring(fitted.length()); + } + return remaining; + } + + private String fitLongWord(String word, int maxWidth) { + int end = word.length(); + while (end > 1 && font.width(word.substring(0, end)) > maxWidth) { + end--; + } + return word.substring(0, Math.max(1, end)); + } + + private record Rect(int x, int y, int w, int h) { + int right() { + return x + w; + } + + int bottom() { + return y + h; + } + } + + private record ObservedChunk(int color, long scannedAtMs) { + } + + private record StatSnapshot( + boolean available, + String playerName, + String dimension, + long playTimeTicks, + long distanceCm, + long minedBlocks, + long craftedItems, + long pickedBlocks, + long usedItems, + long droppedItems, + long brokenItems, + long placedBlocks, + long mobKills, + long killedByMobs, + long deaths, + long damageTaken, + long jumps, + int health, + int maxHealth, + int xpLevel, + int totalExperience, + List blockSlices + ) { + private static StatSnapshot empty() { + return new StatSnapshot(false, "", "", 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0, 1, 0, 0, List.of()); + } + } + + private record StatSample(long playTimeTicks, long distanceCm, long minedBlocks, long craftedItems, long pickedBlocks, long mobKills) { + } + + private record PieSlice(String label, long value, int color) { + } + + private record BlocotechBlockEntry( + String id, + String name, + Item item, + BlocotechDescriptions.Entry descriptionEntry, + int color, + String category, + String family, + String hueGroup, + long mined, + long picked, + long crafted, + long used, + long inventory + ) { + long obtained() { + return picked + crafted + inventory; + } + + long discoveryScore() { + return mined + picked + crafted + used + inventory; + } + + String shortFamily() { + return family == null || family.isBlank() ? "Bloc" : family; + } + + String description() { + return descriptionEntry == null ? "" : descriptionEntry.description(); + } + } + + private record BlocotechInfoLine(String text, int color, boolean heading) { + private static BlocotechInfoLine normal(String text) { + return new BlocotechInfoLine(text, MUTED, false); + } + + private static BlocotechInfoLine muted(String text) { + return new BlocotechInfoLine(text, 0xFF9FA8B7, false); + } + + private static BlocotechInfoLine accent(String text) { + return new BlocotechInfoLine(text, TEXT, false); + } + + private static BlocotechInfoLine heading(String text) { + return new BlocotechInfoLine(text, TEXT, true); + } + + private static BlocotechInfoLine blank() { + return new BlocotechInfoLine("", MUTED, false); + } + } + + private record VoxelGridHit(int x, int z) { + } + + private record VoxelScreenPoint(int x, int y, double depth) { + } + + private record VoxelProjectedPoint(float x, float y, double depth) { + } + + private record VoxelCellTarget(int x, int z) { + } + + private record VoxelFaceHit(int x, int y, int z, VoxelFace face, double depth) { + } + + private record VoxelPaintTarget(int sourceX, int sourceY, int sourceZ, int editX, int editY, int editZ, VoxelFaceHit hit) { + private static VoxelPaintTarget source(VoxelFaceHit hit) { + return new VoxelPaintTarget(hit.x(), hit.y(), hit.z(), hit.x(), hit.y(), hit.z(), hit); + } + + private static VoxelPaintTarget adjacent(VoxelFaceHit hit) { + return new VoxelPaintTarget( + hit.x(), + hit.y(), + hit.z(), + hit.x() + hit.face().dx(), + hit.y() + hit.face().dy(), + hit.z() + hit.face().dz(), + hit + ); + } + + private static VoxelPaintTarget layer(int x, int y, int z) { + return new VoxelPaintTarget(x, y, z, x, y, z, null); + } + } + + private record VoxelRenderedFace(VoxelProjectedPoint a, VoxelProjectedPoint b, VoxelProjectedPoint c, VoxelProjectedPoint d, double depth, int fallbackColor, int textureColor, TextureAtlasSprite sprite, CachedVoxel voxel, VoxelFace face) { + } + + private record CachedVoxel(int x, int y, int z, String blockId) { + } + + private enum VoxelFace { + TOP(0, 1, 0, 34), + BOTTOM(0, -1, 0, -48), + NORTH(0, 0, -1, -18), + SOUTH(0, 0, 1, -30), + WEST(-1, 0, 0, -10), + EAST(1, 0, 0, -38); + + private final int dx; + private final int dy; + private final int dz; + private final int shade; + + VoxelFace(int dx, int dy, int dz, int shade) { + this.dx = dx; + this.dy = dy; + this.dz = dz; + this.shade = shade; + } + + private int dx() { + return dx; + } + + private int dy() { + return dy; + } + + private int dz() { + return dz; + } + + private int shade() { + return shade; + } + } + + @FunctionalInterface + private interface StatValue { + long get(StatSample sample); + } + + private record ScreenshotEntry(String name, Path path, long modifiedTime, boolean placeholder) { + private static ScreenshotEntry message(String message) { + return new ScreenshotEntry(message, null, 0L, true); + } + } + + private static final class DesktopWindow { + private final int id; + private final Program program; + private int x; + private int y; + private int w; + private int h; + private int restoreX; + private int restoreY; + private int restoreW; + private int restoreH; + private boolean minimized; + private boolean maximized; + + private DesktopWindow(int id, Program program, int x, int y, int w, int h) { + this.id = id; + this.program = program; + this.x = x; + this.y = y; + this.w = w; + this.h = h; + this.restoreX = x; + this.restoreY = y; + this.restoreW = w; + this.restoreH = h; + } + + private Rect rect() { + return new Rect(x, y, w, h); + } + } + + private enum Program { + MAP("Minexplorer", ComputerMod.id("textures/gui/os/icon_minexplorer.png"), 12, 12, 410, 300), + FILES("Poularoid", ComputerMod.id("textures/gui/os/icon_poularoid.png"), 15, 15, 420, 300), + STATS("Statacraft", ComputerMod.id("textures/gui/os/icon_statacraft.png"), 15, 15, 470, 330), + BLOCOTECH("Blocotech", ComputerMod.id("textures/gui/os/icon_blocotech.png"), 16, 16, 520, 340), + VOXELIER("Voxelier", ComputerMod.id("textures/gui/os/icon_voxelier.png"), 16, 16, 640, 420), + NOTES("Bloc-Notes", ComputerMod.id("textures/gui/os/icon_notes.png"), 14, 14, 360, 260), + TERMINAL("terminal", ComputerMod.id("textures/gui/os/icon_terminal.png"), 16, 16, 390, 250), + SETTINGS("Settings", ComputerMod.id("textures/gui/os/icon_computer.png"), 15, 15, 350, 240); + + private static final Program[] DESKTOP_PROGRAMS = {MAP, FILES, STATS, BLOCOTECH, VOXELIER, NOTES, TERMINAL, SETTINGS}; + private final String title; + private final Identifier texture; + private final int textureWidth; + private final int textureHeight; + private final int defaultWidth; + private final int defaultHeight; + + Program(String title, Identifier texture, int textureWidth, int textureHeight, int defaultWidth, int defaultHeight) { + this.title = title; + this.texture = texture; + this.textureWidth = textureWidth; + this.textureHeight = textureHeight; + this.defaultWidth = defaultWidth; + this.defaultHeight = defaultHeight; + } + } + + private enum Wallpaper { + SANCTUARY("Sanctuary", 0xFF172033, new Theme( + 0xEE1B2230, + 0xAA111722, + 0xFF223452, + 0xFF2E496F, + 0xFF64758F, + 0x6659677A, + 0xFF7DA9FF, + 0xEE111722, + 0xAA222B3A, + 0xFF2E476C, + 0x88476586 + )), + MEADOW("Meadow", 0xFF1B3327, new Theme( + 0xEE1D2B25, + 0xAA121D18, + 0xFF264834, + 0xFF356646, + 0xFF6A8D72, + 0x665B765F, + 0xFF9BD28B, + 0xEE101A15, + 0xAA223329, + 0xFF355A42, + 0x884D7C61 + )), + REDSTONE("Redstone", 0xFF2B171B, new Theme( + 0xEE2E1E25, + 0xAA1B1014, + 0xFF552735, + 0xFF793343, + 0xFF9A5C62, + 0x666E464C, + 0xFFFF7777, + 0xEE1B1014, + 0xAA3A1E26, + 0xFF65303D, + 0x887B3945 + )), + VOID("Void", 0xFF090B13, new Theme( + 0xEE161823, + 0xAA0A0C12, + 0xFF22253A, + 0xFF303656, + 0xFF626E9E, + 0x66454B6F, + 0xFFA9B8FF, + 0xEE080A12, + 0xAA171A28, + 0xFF282E4A, + 0x88556086 + )), + DONF("Donf", 0xFF242621, ComputerMod.id("textures/gui/wallpapers/donf1.png"), DONF_WALLPAPER_WIDTH, DONF_WALLPAPER_HEIGHT, new Theme( + 0xEE252821, + 0xAA151713, + 0xFF3D4035, + 0xFF4A5148, + 0xFF8A8D79, + 0x66737566, + 0xFF8AC9D4, + 0xEE151711, + 0xAA303329, + 0xFF465146, + 0x88606B5E + )), + SKYBLOCK("Skyblock", 0xFF08111A, ComputerMod.id("textures/gui/wallpapers/layer.png"), SKYBLOCK_WALLPAPER_WIDTH, SKYBLOCK_WALLPAPER_HEIGHT, new Theme( + 0xEE102033, + 0xAA07111D, + 0xFF19324D, + 0xFF25557A, + 0xFF6B8AA0, + 0x66536E7C, + 0xFF9BE382, + 0xEE06101A, + 0xAA10263A, + 0xFF255170, + 0x884C855B + )); + + private final String label; + private final int base; + private final Identifier texture; + private final int textureWidth; + private final int textureHeight; + private final Theme theme; + + Wallpaper(String label, int base, Theme theme) { + this(label, base, null, 0, 0, theme); + } + + Wallpaper(String label, int base, Identifier texture, int textureWidth, int textureHeight, Theme theme) { + this.label = label; + this.base = base; + this.texture = texture; + this.textureWidth = textureWidth; + this.textureHeight = textureHeight; + this.theme = theme; + } + + private Theme theme() { + return theme; + } + } + + private record Theme( + int panel, + int content, + int titlebar, + int titlebarActive, + int border, + int borderMuted, + int accent, + int taskbar, + int button, + int buttonActive, + int selection + ) { + } +} diff --git a/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/gui/StudioGuiRenderAccess.java b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/gui/StudioGuiRenderAccess.java new file mode 100644 index 0000000..234d11e --- /dev/null +++ b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/gui/StudioGuiRenderAccess.java @@ -0,0 +1,36 @@ +package fr.koka99cab.computer.client.gui; + +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.client.renderer.state.gui.GuiElementRenderState; +import net.minecraft.client.renderer.state.gui.GuiRenderState; + +import java.lang.reflect.Field; + +final class StudioGuiRenderAccess { + private static final Field GUI_RENDER_STATE_FIELD = guiRenderStateField(); + + private StudioGuiRenderAccess() { + } + + static boolean submit(GuiGraphicsExtractor graphics, GuiElementRenderState state) { + if (GUI_RENDER_STATE_FIELD == null) { + return false; + } + try { + ((GuiRenderState) GUI_RENDER_STATE_FIELD.get(graphics)).addGuiElement(state); + return true; + } catch (IllegalAccessException | ClassCastException exception) { + return false; + } + } + + private static Field guiRenderStateField() { + try { + Field field = GuiGraphicsExtractor.class.getDeclaredField("guiRenderState"); + field.setAccessible(true); + return field; + } catch (NoSuchFieldException | SecurityException exception) { + return null; + } + } +} diff --git a/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/gui/StudioViewportRenderState.java b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/gui/StudioViewportRenderState.java new file mode 100644 index 0000000..482f70c --- /dev/null +++ b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/gui/StudioViewportRenderState.java @@ -0,0 +1,181 @@ +package fr.koka99cab.computer.client.gui; + +import com.mojang.blaze3d.pipeline.RenderPipeline; +import com.mojang.blaze3d.vertex.VertexConsumer; +import net.minecraft.client.gui.navigation.ScreenRectangle; +import net.minecraft.client.gui.render.TextureSetup; +import net.minecraft.client.renderer.RenderPipelines; +import net.minecraft.client.renderer.state.gui.GuiElementRenderState; +import org.joml.Matrix3x2f; +import org.joml.Matrix3x2fc; + +import java.util.ArrayList; +import java.util.List; + +final class StudioViewportRenderState implements GuiElementRenderState { + private static final RenderPipeline DEFAULT_PIPELINE = RenderPipelines.GUI; + private static final TextureSetup DEFAULT_TEXTURE_SETUP = TextureSetup.noTexture(); + + private final Matrix3x2f pose; + private final List quads; + private final ScreenRectangle scissorArea; + private final ScreenRectangle bounds; + private final RenderPipeline pipeline; + private final TextureSetup textureSetup; + private final boolean textured; + + StudioViewportRenderState(Matrix3x2fc pose, List quads, ScreenRectangle scissorArea, RenderPipeline pipeline, TextureSetup textureSetup, boolean textured) { + this.pose = new Matrix3x2f(pose); + this.quads = List.copyOf(quads); + this.scissorArea = scissorArea; + this.bounds = bounds(quads, scissorArea); + this.pipeline = pipeline; + this.textureSetup = textureSetup; + this.textured = textured; + } + + @Override + public void buildVertices(VertexConsumer consumer) { + for (Quad quad : quads) { + addVertex(consumer, quad.x0(), quad.y0(), quad.u0(), quad.v0(), quad.color()); + addVertex(consumer, quad.x1(), quad.y1(), quad.u1(), quad.v1(), quad.color()); + addVertex(consumer, quad.x2(), quad.y2(), quad.u2(), quad.v2(), quad.color()); + addVertex(consumer, quad.x3(), quad.y3(), quad.u3(), quad.v3(), quad.color()); + } + } + + private void addVertex(VertexConsumer consumer, float x, float y, float u, float v, int color) { + VertexConsumer vertex = consumer.addVertexWith2DPose(pose, x, y); + if (textured) { + vertex.setUv(u, v); + } + vertex.setColor(color); + } + + @Override + public RenderPipeline pipeline() { + return pipeline; + } + + @Override + public TextureSetup textureSetup() { + return textureSetup; + } + + @Override + public ScreenRectangle scissorArea() { + return scissorArea; + } + + @Override + public ScreenRectangle bounds() { + return bounds; + } + + static Builder builder() { + return new Builder(DEFAULT_PIPELINE, DEFAULT_TEXTURE_SETUP, false); + } + + static Builder texturedBuilder(TextureSetup textureSetup) { + return new Builder(RenderPipelines.GUI_TEXTURED, textureSetup, true); + } + + private static ScreenRectangle bounds(List quads, ScreenRectangle fallback) { + if (quads.isEmpty()) { + return fallback; + } + int left = Integer.MAX_VALUE; + int top = Integer.MAX_VALUE; + int right = Integer.MIN_VALUE; + int bottom = Integer.MIN_VALUE; + for (Quad quad : quads) { + left = Math.min(left, (int) Math.floor(Math.min(Math.min(quad.x0(), quad.x1()), Math.min(quad.x2(), quad.x3())))); + top = Math.min(top, (int) Math.floor(Math.min(Math.min(quad.y0(), quad.y1()), Math.min(quad.y2(), quad.y3())))); + right = Math.max(right, (int) Math.ceil(Math.max(Math.max(quad.x0(), quad.x1()), Math.max(quad.x2(), quad.x3())))); + bottom = Math.max(bottom, (int) Math.ceil(Math.max(Math.max(quad.y0(), quad.y1()), Math.max(quad.y2(), quad.y3())))); + } + return new ScreenRectangle(left, top, Math.max(1, right - left), Math.max(1, bottom - top)); + } + + static final class Builder { + private final List quads = new ArrayList<>(); + private final RenderPipeline pipeline; + private final TextureSetup textureSetup; + private final boolean textured; + + private Builder(RenderPipeline pipeline, TextureSetup textureSetup, boolean textured) { + this.pipeline = pipeline; + this.textureSetup = textureSetup; + this.textured = textured; + } + + void rect(int x0, int y0, int x1, int y1, int color) { + if (x0 == x1 || y0 == y1 || (color >>> 24) == 0) { + return; + } + int left = Math.min(x0, x1); + int right = Math.max(x0, x1); + int top = Math.min(y0, y1); + int bottom = Math.max(y0, y1); + float rightEdge = Math.max(left + 1, right); + float bottomEdge = Math.max(top + 1, bottom); + quads.add(new Quad(left, top, 0.0F, 0.0F, left, bottomEdge, 0.0F, 0.0F, rightEdge, bottomEdge, 0.0F, 0.0F, rightEdge, top, 0.0F, 0.0F, color)); + } + + void line(int x0, int y0, int x1, int y1, int thickness, int color) { + if ((color >>> 24) == 0) { + return; + } + float dx = x1 - x0; + float dy = y1 - y0; + float length = (float) Math.sqrt(dx * dx + dy * dy); + if (length <= 0.001F) { + rect(x0, y0, x0 + Math.max(1, thickness), y0 + Math.max(1, thickness), color); + return; + } + float half = Math.max(1.0F, thickness) * 0.5F; + float nx = -dy / length * half; + float ny = dx / length * half; + quads.add(new Quad(x0 + nx, y0 + ny, 0.0F, 0.0F, x1 + nx, y1 + ny, 0.0F, 0.0F, x1 - nx, y1 - ny, 0.0F, 0.0F, x0 - nx, y0 - ny, 0.0F, 0.0F, color)); + } + + void quad(float x0, float y0, float x1, float y1, float x2, float y2, float x3, float y3, int color) { + quad(x0, y0, 0.0F, 0.0F, x1, y1, 0.0F, 0.0F, x2, y2, 0.0F, 0.0F, x3, y3, 0.0F, 0.0F, color); + } + + void texturedQuad(float x0, float y0, float x1, float y1, float x2, float y2, float x3, float y3, float u0, float v0, float u1, float v1, int color) { + quad(x0, y0, u0, v0, x1, y1, u1, v0, x2, y2, u1, v1, x3, y3, u0, v1, color); + } + + private void quad(float x0, float y0, float u0, float v0, float x1, float y1, float u1, float v1, float x2, float y2, float u2, float v2, float x3, float y3, float u3, float v3, int color) { + if ((color >>> 24) == 0) { + return; + } + if (signedArea(x0, y0, x1, y1, x2, y2, x3, y3) > 0.0F) { + quads.add(new Quad(x0, y0, u0, v0, x3, y3, u3, v3, x2, y2, u2, v2, x1, y1, u1, v1, color)); + } else { + quads.add(new Quad(x0, y0, u0, v0, x1, y1, u1, v1, x2, y2, u2, v2, x3, y3, u3, v3, color)); + } + } + + private float signedArea(float x0, float y0, float x1, float y1, float x2, float y2, float x3, float y3) { + return 0.5F * ( + x0 * y1 - y0 * x1 + + x1 * y2 - y1 * x2 + + x2 * y3 - y2 * x3 + + x3 * y0 - y3 * x0 + ); + } + + boolean isEmpty() { + return quads.isEmpty(); + } + + StudioViewportRenderState build(Matrix3x2fc pose, ScreenRectangle scissorArea) { + return new StudioViewportRenderState(pose, quads, scissorArea, pipeline, textureSetup, textured); + } + } + + private record Quad(float x0, float y0, float u0, float v0, float x1, float y1, float u1, float v1, float x2, float y2, float u2, float v2, float x3, float y3, float u3, float v3, int color) { + } +} diff --git a/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/voxel/ComputerBuildPlacementController.java b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/voxel/ComputerBuildPlacementController.java new file mode 100644 index 0000000..82cc666 --- /dev/null +++ b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/voxel/ComputerBuildPlacementController.java @@ -0,0 +1,360 @@ +package fr.koka99cab.computer.client.voxel; + +import com.mojang.blaze3d.platform.InputConstants; +import fr.koka99cab.computer.network.ComputerPlaceVoxelProjectPayload; +import fr.koka99cab.computer.voxel.ComputerVoxelPlacement; +import fr.koka99cab.computer.voxel.ComputerVoxelProject; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import net.fabricmc.fabric.api.client.keymapping.v1.KeyMappingHelper; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.minecraft.client.KeyMapping; +import net.minecraft.client.Minecraft; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.gizmos.GizmoStyle; +import net.minecraft.gizmos.Gizmos; +import net.minecraft.gizmos.TextGizmo; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.Identifier; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.material.MapColor; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; +import org.lwjgl.glfw.GLFW; + +public final class ComputerBuildPlacementController { + private static final double RAYCAST_DISTANCE = 128.0D; + private static final int BLUEPRINT_COLOR = 0xFF62D6A4; + private static final int DIRECT_COLOR = 0xFFFFC857; + private static final int CURRENT_COLOR = 0xFFB7F7FF; + private static final int MAX_PREVIEW_CELLS = 4096; + private static final Map BLOCK_COLOR_CACHE = new HashMap<>(); + private static KeyMapping rotate; + private static KeyMapping cancel; + private static KeyMapping confirm; + private static KeyMapping undo; + private static KeyMapping redo; + private static ComputerVoxelProject activeProject; + private static Mode mode = Mode.BLUEPRINT; + private static BlockPos anchor; + private static Direction facing = Direction.NORTH; + private static boolean awaitingAnchor; + private static boolean previewVisible = true; + + private ComputerBuildPlacementController() { + } + + public static void initialize() { + if (rotate != null && cancel != null && confirm != null) { + return; + } + rotate = KeyMappingHelper.registerKeyMapping(new KeyMapping("key.computer.rotate_blueprint", InputConstants.Type.KEYSYM, GLFW.GLFW_KEY_R, KeyMapping.Category.INVENTORY)); + cancel = KeyMappingHelper.registerKeyMapping(new KeyMapping("key.computer.cancel_blueprint", InputConstants.Type.KEYSYM, GLFW.GLFW_KEY_V, KeyMapping.Category.INVENTORY)); + confirm = KeyMappingHelper.registerKeyMapping(new KeyMapping("key.computer.confirm_blueprint", InputConstants.Type.KEYSYM, GLFW.GLFW_KEY_ENTER, KeyMapping.Category.INVENTORY)); + undo = KeyMappingHelper.registerKeyMapping(new KeyMapping("key.computer.undo_construction", InputConstants.Type.KEYSYM, GLFW.GLFW_KEY_Z, KeyMapping.Category.INVENTORY)); + redo = KeyMappingHelper.registerKeyMapping(new KeyMapping("key.computer.redo_construction", InputConstants.Type.KEYSYM, GLFW.GLFW_KEY_Y, KeyMapping.Category.INVENTORY)); + } + + public static void startBlueprint(ComputerVoxelProject project) { + start(project, Mode.BLUEPRINT); + } + + public static void startCreativeDirect(ComputerVoxelProject project) { + Minecraft client = Minecraft.getInstance(); + if (client.player != null && !client.player.isCreative()) { + client.player.sendOverlayMessage(Component.literal("Pose directe reservee au mode creatif.")); + return; + } + start(project, Mode.CREATIVE_DIRECT); + } + + public static void reset() { + activeProject = null; + anchor = null; + awaitingAnchor = false; + mode = Mode.BLUEPRINT; + previewVisible = true; + } + + public static boolean isConstructionActive() { + return activeProject != null; + } + + public static void onEndTick(Minecraft client) { + if (client.player == null || client.level == null) { + if (activeProject != null) { + reset(); + } + return; + } + if (client.screen == null) { + while (undo != null && undo.consumeClick()) { + requestHistory(ComputerPlaceVoxelProjectPayload.MODE_UNDO); + } + while (redo != null && redo.consumeClick()) { + requestHistory(ComputerPlaceVoxelProjectPayload.MODE_REDO); + } + } + if (activeProject == null) { + return; + } + if (awaitingAnchor) { + anchor = resolvePreviewAnchor(client); + } + if (client.screen == null) { + while (rotate != null && rotate.consumeClick()) { + if (awaitingAnchor) { + facing = facing.getClockWise(); + } + } + while (cancel != null && cancel.consumeClick()) { + reset(); + client.player.sendOverlayMessage(Component.literal("Blueprint annule.")); + } + while (awaitingAnchor && confirm != null && confirm.consumeClick()) { + if (anchor != null) { + confirmAnchor(anchor); + } + } + while (awaitingAnchor && client.options.keyUse.consumeClick()) { + if (anchor != null) { + confirmAnchor(anchor); + } + } + } + if (!awaitingAnchor && mode == Mode.BLUEPRINT && anchor != null && activeProject != null) { + Progress progress = progress(client, activeProject, anchor, facing); + if (progress.total() > 0 && progress.done() >= progress.total()) { + reset(); + client.player.sendOverlayMessage(Component.literal("Blueprint termine.")); + return; + } + } + if (previewVisible) { + render(client); + } + } + + public static InteractionResult confirmFromAttack(BlockPos pos, Direction face) { + if (face == null) { + return InteractionResult.PASS; + } + return confirmAnchor(pos.relative(face)); + } + + public static InteractionResult confirmFromUse(BlockHitResult hitResult) { + return confirmAnchor(hitResult.getBlockPos().relative(hitResult.getDirection())); + } + + public static InteractionResult confirmCurrentAnchor() { + if (anchor == null) { + return InteractionResult.PASS; + } + return confirmAnchor(anchor); + } + + private static void start(ComputerVoxelProject project, Mode nextMode) { + activeProject = project; + mode = nextMode; + awaitingAnchor = true; + anchor = null; + previewVisible = true; + Minecraft client = Minecraft.getInstance(); + if (client.player != null) { + facing = horizontal(client.player.getDirection()); + client.player.sendOverlayMessage(Component.literal(nextMode == Mode.CREATIVE_DIRECT ? "Choisis l'ancre de pose directe." : "Choisis l'ancre du blueprint.")); + } + } + + private static InteractionResult confirmAnchor(BlockPos selectedAnchor) { + if (activeProject == null || !awaitingAnchor) { + return InteractionResult.PASS; + } + anchor = selectedAnchor.immutable(); + awaitingAnchor = false; + Minecraft client = Minecraft.getInstance(); + if (mode == Mode.CREATIVE_DIRECT) { + if (ClientPlayNetworking.canSend(ComputerPlaceVoxelProjectPayload.TYPE)) { + ClientPlayNetworking.send(new ComputerPlaceVoxelProjectPayload(activeProject, anchor, facing, ComputerPlaceVoxelProjectPayload.MODE_CREATIVE_DIRECT)); + } + reset(); + } else if (client.player != null) { + client.player.sendOverlayMessage(Component.literal("Blueprint actif: construis le bloc indique.")); + } + return InteractionResult.FAIL; + } + + private static void requestHistory(String action) { + if (ClientPlayNetworking.canSend(ComputerPlaceVoxelProjectPayload.TYPE)) { + ClientPlayNetworking.send(new ComputerPlaceVoxelProjectPayload(ComputerVoxelProject.empty(), BlockPos.ZERO, Direction.NORTH, action)); + } + } + + private static void render(Minecraft client) { + if (anchor == null || activeProject == null) { + return; + } + try (Gizmos.TemporaryCollection ignored = client.collectPerTickGizmos()) { + AABB box = projectBox(activeProject, anchor, facing); + int color = mode == Mode.CREATIVE_DIRECT ? DIRECT_COLOR : BLUEPRINT_COLOR; + Gizmos.cuboid(box, GizmoStyle.strokeAndFill(color, 2.0F, withAlpha(color, 0x18)), false).setAlwaysOnTop(); + renderProjectCells(client, activeProject, anchor, facing); + Vec3 center = box.getCenter(); + String title = mode == Mode.CREATIVE_DIRECT ? "Pose creative: " + activeProject.name() : activeProject.name(); + Gizmos.billboardText(title, new Vec3(center.x, box.maxY + 1.25D, center.z), TextGizmo.Style.forColorAndCentered(color).withScale(0.78F)).setAlwaysOnTop(); + if (awaitingAnchor) { + Gizmos.billboardText("Clic droit/Entree ancrer | R tourner | V annuler", new Vec3(center.x, box.maxY + 0.72D, center.z), TextGizmo.Style.forColorAndCentered(0xFFD3ECFF).withScale(0.58F)).setAlwaysOnTop(); + return; + } + Progress progress = progress(client, activeProject, anchor, facing); + Gizmos.billboardText(progress.done() + " / " + progress.total(), new Vec3(center.x, box.maxY + 0.72D, center.z), TextGizmo.Style.forColorAndCentered(0xFFD3ECFF).withScale(0.62F)).setAlwaysOnTop(); + if (progress.current() != null) { + BlockPos pos = ComputerVoxelPlacement.transform(activeProject, progress.current(), anchor, facing); + Gizmos.cuboid(new AABB(pos), GizmoStyle.strokeAndFill(CURRENT_COLOR, 2.8F, withAlpha(CURRENT_COLOR, 0x35)), false).setAlwaysOnTop(); + Gizmos.billboardText(shortId(progress.current().blockId()), new Vec3(pos.getX() + 0.5D, pos.getY() + 1.25D, pos.getZ() + 0.5D), TextGizmo.Style.forColorAndCentered(CURRENT_COLOR).withScale(0.55F)).setAlwaysOnTop(); + } + } + } + + private static Progress progress(Minecraft client, ComputerVoxelProject project, BlockPos anchor, Direction facing) { + List cells = ComputerVoxelPlacement.orderedCells(project); + int done = 0; + ComputerVoxelPlacement.Cell current = null; + for (ComputerVoxelPlacement.Cell cell : cells) { + BlockPos worldPos = ComputerVoxelPlacement.transform(project, cell, anchor, facing); + if (matches(client, worldPos, cell.blockId())) { + done++; + } else if (current == null) { + current = cell; + } + } + return new Progress(done, cells.size(), current); + } + + private static boolean matches(Minecraft client, BlockPos pos, String blockId) { + if (client.level == null) { + return false; + } + Identifier id = Identifier.tryParse(blockId); + Optional block = id == null ? Optional.empty() : BuiltInRegistries.BLOCK.getOptional(id); + return block.isPresent() && client.level.getBlockState(pos).getBlock() == block.get(); + } + + private static void renderProjectCells(Minecraft client, ComputerVoxelProject project, BlockPos anchor, Direction facing) { + List cells = ComputerVoxelPlacement.orderedCells(project); + int stride = Math.max(1, (int) Math.ceil(cells.size() / (double) MAX_PREVIEW_CELLS)); + for (int i = 0; i < cells.size(); i += stride) { + ComputerVoxelPlacement.Cell cell = cells.get(i); + BlockPos pos = ComputerVoxelPlacement.transform(project, cell, anchor, facing); + int color = blockPreviewColor(client, cell.blockId()); + Gizmos.cuboid(new AABB(pos), GizmoStyle.strokeAndFill(withAlpha(color, 0xB8), 0.25F, withAlpha(color, 0x48)), false).setAlwaysOnTop(); + } + } + + private static int blockPreviewColor(Minecraft client, String blockId) { + Integer cached = BLOCK_COLOR_CACHE.get(blockId); + if (cached != null) { + return cached; + } + Identifier id = Identifier.tryParse(blockId); + Block block = id == null ? Blocks.AIR : BuiltInRegistries.BLOCK.getOptional(id).orElse(Blocks.AIR); + int color = 0xFF7F7F7F; + if (block != Blocks.AIR && client.level != null) { + MapColor mapColor = block.defaultBlockState().getMapColor(client.level, BlockPos.ZERO); + color = 0xFF000000 | (mapColor.calculateARGBColor(MapColor.Brightness.NORMAL) & 0x00FFFFFF); + } + BLOCK_COLOR_CACHE.put(blockId, color); + return color; + } + + private static AABB projectBox(ComputerVoxelProject project, BlockPos anchor, Direction facing) { + List cells = ComputerVoxelPlacement.orderedCells(project); + if (cells.isEmpty()) { + return new AABB(anchor); + } + int minX = Integer.MAX_VALUE; + int minY = Integer.MAX_VALUE; + int minZ = Integer.MAX_VALUE; + int maxX = Integer.MIN_VALUE; + int maxY = Integer.MIN_VALUE; + int maxZ = Integer.MIN_VALUE; + for (ComputerVoxelPlacement.Cell cell : cells) { + BlockPos pos = ComputerVoxelPlacement.transform(project, cell, anchor, facing); + minX = Math.min(minX, pos.getX()); + minY = Math.min(minY, pos.getY()); + minZ = Math.min(minZ, pos.getZ()); + maxX = Math.max(maxX, pos.getX()); + maxY = Math.max(maxY, pos.getY()); + maxZ = Math.max(maxZ, pos.getZ()); + } + return new AABB(minX, minY, minZ, maxX + 1, maxY + 1, maxZ + 1); + } + + private static BlockPos resolvePreviewAnchor(Minecraft client) { + Entity cameraEntity = client.getCameraEntity(); + if (cameraEntity == null) { + cameraEntity = client.player; + } + if (cameraEntity == null) { + return anchor; + } + BlockHitResult hit = resolvePreviewHit(client); + if (hit != null) { + return hit.getBlockPos().relative(hit.getDirection()).immutable(); + } + Vec3 from = cameraEntity.getEyePosition(); + Vec3 to = from.add(cameraEntity.getViewVector(1.0F).scale(8.0D)); + return BlockPos.containing(to).immutable(); + } + + private static BlockHitResult resolvePreviewHit(Minecraft client) { + if (client.level == null) { + return null; + } + Entity cameraEntity = client.getCameraEntity(); + if (cameraEntity == null) { + cameraEntity = client.player; + } + if (cameraEntity == null) { + return null; + } + Vec3 from = cameraEntity.getEyePosition(); + Vec3 to = from.add(cameraEntity.getViewVector(1.0F).scale(RAYCAST_DISTANCE)); + BlockHitResult hitResult = client.level.clip(new ClipContext(from, to, ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, cameraEntity)); + return hitResult.getType() == HitResult.Type.BLOCK ? hitResult : null; + } + + private static Direction horizontal(Direction direction) { + if (direction == Direction.UP || direction == Direction.DOWN || direction == null) { + return Direction.NORTH; + } + return direction; + } + + private static String shortId(String id) { + int split = id.indexOf(':'); + return split >= 0 ? id.substring(split + 1) : id; + } + + private static int withAlpha(int color, int alpha) { + return (alpha << 24) | (color & 0x00FFFFFF); + } + + private enum Mode { + BLUEPRINT, + CREATIVE_DIRECT + } + + private record Progress(int done, int total, ComputerVoxelPlacement.Cell current) { + } +} diff --git a/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/voxel/ComputerVoxelGallery.java b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/voxel/ComputerVoxelGallery.java new file mode 100644 index 0000000..b4c6299 --- /dev/null +++ b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/voxel/ComputerVoxelGallery.java @@ -0,0 +1,144 @@ +package fr.koka99cab.computer.client.voxel; + +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import fr.koka99cab.computer.ComputerMod; +import fr.koka99cab.computer.voxel.ComputerVoxelProject; +import java.io.IOException; +import java.io.Reader; +import java.io.Writer; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.Comparator; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import net.minecraft.client.Minecraft; + +public final class ComputerVoxelGallery { + private ComputerVoxelGallery() { + } + + public static List load(Minecraft minecraft) { + Path path = galleryPath(minecraft); + if (!Files.isRegularFile(path)) { + return List.of(); + } + try (Reader reader = Files.newBufferedReader(path, StandardCharsets.UTF_8)) { + JsonObject root = JsonParser.parseReader(reader).getAsJsonObject(); + List projects = new ArrayList<>(); + for (JsonElement element : array(root, "projects")) { + if (element.isJsonObject()) { + projects.add(project(element.getAsJsonObject())); + } + } + projects.sort(Comparator.comparingLong(ComputerVoxelProject::updatedAt).reversed().thenComparing(ComputerVoxelProject::name)); + return projects; + } catch (IOException | IllegalStateException exception) { + ComputerMod.LOGGER.warn("Could not load Computer voxel gallery.", exception); + return List.of(); + } + } + + public static void save(Minecraft minecraft, List projects) { + Path path = galleryPath(minecraft); + try { + Files.createDirectories(path.getParent()); + JsonObject root = new JsonObject(); + root.addProperty("kind", "computer-voxel-gallery"); + JsonArray array = new JsonArray(); + for (ComputerVoxelProject project : projects) { + array.add(project(project)); + } + root.add("projects", array); + try (Writer writer = Files.newBufferedWriter(path, StandardCharsets.UTF_8)) { + writer.write(root.toString()); + } + } catch (IOException exception) { + ComputerMod.LOGGER.warn("Could not save Computer voxel gallery.", exception); + } + } + + private static Path galleryPath(Minecraft minecraft) { + Path gameDir = minecraft == null ? Path.of(".") : minecraft.gameDirectory.toPath(); + return gameDir.resolve("computer").resolve("voxel_gallery.json"); + } + + private static ComputerVoxelProject project(JsonObject object) { + List palette = new ArrayList<>(); + for (JsonElement element : array(object, "palette")) { + if (element.isJsonPrimitive()) { + palette.add(element.getAsString()); + } + } + Map cells = new LinkedHashMap<>(); + JsonObject cellObject = object(object, "cells"); + for (Map.Entry entry : cellObject.entrySet()) { + if (entry.getValue().isJsonPrimitive()) { + cells.put(entry.getKey(), entry.getValue().getAsString()); + } + } + return new ComputerVoxelProject( + string(object, "id", "voxel-project"), + string(object, "name", "Untitled"), + integer(object, "width", 12), + integer(object, "height", 12), + integer(object, "depth", 12), + palette, + cells, + number(object, "created_at", 0L), + number(object, "updated_at", 0L) + ); + } + + private static JsonObject project(ComputerVoxelProject project) { + JsonObject object = new JsonObject(); + object.addProperty("id", project.id()); + object.addProperty("name", project.name()); + object.addProperty("width", project.width()); + object.addProperty("height", project.height()); + object.addProperty("depth", project.depth()); + object.addProperty("created_at", project.createdAt()); + object.addProperty("updated_at", project.updatedAt()); + JsonArray palette = new JsonArray(); + for (String id : project.palette()) { + palette.add(id); + } + object.add("palette", palette); + JsonObject cells = new JsonObject(); + for (Map.Entry entry : project.cells().entrySet()) { + cells.addProperty(entry.getKey(), entry.getValue()); + } + object.add("cells", cells); + return object; + } + + private static JsonObject object(JsonObject object, String key) { + JsonElement element = object.get(key); + return element != null && element.isJsonObject() ? element.getAsJsonObject() : new JsonObject(); + } + + private static JsonArray array(JsonObject object, String key) { + JsonElement element = object.get(key); + return element != null && element.isJsonArray() ? element.getAsJsonArray() : new JsonArray(); + } + + private static String string(JsonObject object, String key, String fallback) { + JsonElement element = object.get(key); + return element != null && element.isJsonPrimitive() ? element.getAsString() : fallback; + } + + private static int integer(JsonObject object, String key, int fallback) { + JsonElement element = object.get(key); + return element != null && element.isJsonPrimitive() ? element.getAsInt() : fallback; + } + + private static long number(JsonObject object, String key, long fallback) { + JsonElement element = object.get(key); + return element != null && element.isJsonPrimitive() ? element.getAsLong() : fallback; + } +} diff --git a/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/voxel/ComputerVoxelProjectBuilder.java b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/voxel/ComputerVoxelProjectBuilder.java new file mode 100644 index 0000000..3fdf205 --- /dev/null +++ b/Gameplay/computer/src/client/java/fr/koka99cab/computer/client/voxel/ComputerVoxelProjectBuilder.java @@ -0,0 +1,739 @@ +package fr.koka99cab.computer.client.voxel; + +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import fr.koka99cab.computer.voxel.ComputerVoxelProject; +import fr.koka99cab.computer.voxel.ComputerVoxelPlacement; +import fr.koka99cab.computer.voxel.ComputerVoxelValidator; +import net.minecraft.client.Minecraft; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.Identifier; +import net.minecraft.server.packs.resources.Resource; +import net.minecraft.server.packs.resources.ResourceManager; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.material.MapColor; +import net.minecraft.world.level.block.Block; + +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.IOException; +import java.io.InputStream; +import java.io.Reader; +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.Set; + +public final class ComputerVoxelProjectBuilder { + private static final int GRID = 16; + private static final Map FALLBACK_CONCRETE_COLORS = Map.ofEntries( + Map.entry("minecraft:white_concrete", 0xF9FFFE), + Map.entry("minecraft:orange_concrete", 0xF9801D), + Map.entry("minecraft:magenta_concrete", 0xC74EBD), + Map.entry("minecraft:light_blue_concrete", 0x3AB3DA), + Map.entry("minecraft:yellow_concrete", 0xFED83D), + Map.entry("minecraft:lime_concrete", 0x80C71F), + Map.entry("minecraft:pink_concrete", 0xF38BAA), + Map.entry("minecraft:gray_concrete", 0x474F52), + Map.entry("minecraft:light_gray_concrete", 0x9D9D97), + Map.entry("minecraft:cyan_concrete", 0x169C9C), + Map.entry("minecraft:purple_concrete", 0x8932B8), + Map.entry("minecraft:blue_concrete", 0x3C44AA), + Map.entry("minecraft:brown_concrete", 0x835432), + Map.entry("minecraft:green_concrete", 0x5E7C16), + Map.entry("minecraft:red_concrete", 0xB02E26), + Map.entry("minecraft:black_concrete", 0x1D1D21) + ); + + private ComputerVoxelProjectBuilder() { + } + + public enum BuildMode { + FACE("face", "Face"), + HOLLOW("hollow", "Vide"), + FULL("full", "Plein"); + + private final String id; + private final String label; + + BuildMode(String id, String label) { + this.id = id; + this.label = label; + } + + public String id() { + return id; + } + + public String label() { + return label; + } + + public BuildMode next() { + BuildMode[] values = values(); + return values[(ordinal() + 1) % values.length]; + } + } + + public static ComputerVoxelProject build(String entryId, String displayName) { + return build(entryId, displayName, BuildMode.FACE, List.of()); + } + + public static ComputerVoxelProject build(String entryId, String displayName, BuildMode mode) { + return build(entryId, displayName, mode, List.of()); + } + + public static ComputerVoxelProject build(String entryId, String displayName, BuildMode mode, List paletteBlockIds) { + Identifier id = Identifier.tryParse(entryId); + if (id == null) { + throw new IllegalArgumentException("Identifiant invalide: " + entryId); + } + + ResourceManager resources = Minecraft.getInstance().getResourceManager(); + ColorPalette colorPalette = ColorPalette.from(paletteBlockIds); + Optional block = BuiltInRegistries.BLOCK.getOptional(id); + if (block.isPresent()) { + return blockProject(resources, id, block.get(), displayName, mode == null ? BuildMode.FACE : mode, colorPalette); + } + + Optional item = BuiltInRegistries.ITEM.getOptional(id); + if (item.isPresent() && item.get() != Items.AIR) { + return itemProject(resources, id, displayName, colorPalette); + } + + throw new IllegalArgumentException("Entree non voxelisable pour l'instant: " + entryId); + } + + private static ComputerVoxelProject blockProject(ResourceManager resources, Identifier id, Block block, String displayName, BuildMode mode, ColorPalette colorPalette) { + String blockId = id.toString(); + if (!ComputerVoxelValidator.isBuildableFullBlock(blockId)) { + throw new IllegalArgumentException("Bloc non constructible plein: " + blockId); + } + colorPalette.requireUsable(); + + Map cells = new LinkedHashMap<>(); + Set palette = new LinkedHashSet<>(); + Map textureCache = new LinkedHashMap<>(); + List models = blockModels(resources, id); + if (models.isEmpty()) { + addFallbackBlock(resources, id, cells, palette, textureCache, mode, colorPalette); + } else { + for (JsonObject model : models) { + JsonArray elements = array(model, "elements"); + if (elements.isEmpty()) { + addFallbackBlock(resources, id, cells, palette, textureCache, mode, colorPalette); + continue; + } + for (JsonElement element : elements) { + if (!element.isJsonObject()) { + continue; + } + addTexturedElement(resources, model, element.getAsJsonObject(), cells, palette, textureCache, mode, colorPalette); + } + } + } + if (cells.isEmpty()) { + throw new IllegalArgumentException("Aucun voxel opaque a generer: " + blockId); + } + + return new ComputerVoxelProject( + projectId(id, mode), + projectName(id, displayName, mode), + GRID, + GRID, + mode == BuildMode.FACE ? 1 : GRID, + List.copyOf(palette), + cells, + 0L, + System.currentTimeMillis() + ); + } + + private static ComputerVoxelProject itemProject(ResourceManager resources, Identifier id, String displayName, ColorPalette colorPalette) { + colorPalette.requireUsable(); + JsonObject itemModel = itemModel(resources, id); + JsonObject textures = object(itemModel, "textures"); + String textureRef = resolveTexture(textures, "#layer0"); + if (textureRef == null) { + textureRef = resolveTexture(textures, "#all"); + } + if (textureRef == null) { + textureRef = resolveTexture(textures, "#particle"); + } + if (textureRef == null) { + throw new IllegalArgumentException("Texture item introuvable: " + id); + } + + BufferedImage image = readTexture(resources, textureRef); + Map cells = new LinkedHashMap<>(); + Set palette = new LinkedHashSet<>(); + for (int x = 0; x < GRID; x++) { + for (int y = 0; y < GRID; y++) { + int sampleX = Math.min(image.getWidth() - 1, x * image.getWidth() / GRID); + int sampleY = Math.min(image.getHeight() - 1, y * image.getHeight() / GRID); + int argb = image.getRGB(sampleX, sampleY); + int alpha = (argb >>> 24) & 0xFF; + if (alpha < 24) { + continue; + } + String blockId = colorPalette.nearest(argb & 0xFFFFFF); + palette.add(blockId); + cells.put(ComputerVoxelPlacement.cellKey(x, GRID - 1 - y, 0), blockId); + } + } + + if (cells.isEmpty()) { + throw new IllegalArgumentException("Aucun pixel opaque a voxeliser: " + id); + } + + return new ComputerVoxelProject( + projectId(id, BuildMode.FACE), + displayName == null || displayName.isBlank() ? title(id) : displayName, + GRID, + GRID, + 1, + List.copyOf(palette), + cells, + 0L, + System.currentTimeMillis() + ); + } + + private static List blockModels(ResourceManager resources, Identifier id) { + JsonObject blockstate = readJson(resources, Identifier.fromNamespaceAndPath(id.getNamespace(), "blockstates/" + id.getPath() + ".json")); + List refs = new ArrayList<>(); + JsonObject variants = object(blockstate, "variants"); + if (!variants.entrySet().isEmpty()) { + JsonElement first = variants.entrySet().iterator().next().getValue(); + addModelRefs(refs, first); + } + JsonArray multipart = array(blockstate, "multipart"); + for (JsonElement element : multipart) { + if (element.isJsonObject()) { + addModelRefs(refs, element.getAsJsonObject().get("apply")); + } + } + + List models = new ArrayList<>(); + for (String ref : refs) { + resolveModel(resources, ref, new LinkedHashSet<>()).ifPresent(models::add); + } + return models; + } + + private static JsonObject itemModel(ResourceManager resources, Identifier id) { + String modelRef = null; + Optional itemDefinition = maybeReadJson(resources, Identifier.fromNamespaceAndPath(id.getNamespace(), "items/" + id.getPath() + ".json")); + if (itemDefinition.isPresent()) { + JsonObject model = object(itemDefinition.get(), "model"); + if ("minecraft:model".equals(string(model, "type", ""))) { + modelRef = string(model, "model", null); + } + } + if (modelRef == null || modelRef.isBlank()) { + modelRef = id.getNamespace() + ":item/" + id.getPath(); + } + String resolvedModelRef = modelRef; + return resolveModel(resources, resolvedModelRef, new LinkedHashSet<>()) + .orElseThrow(() -> new IllegalArgumentException("Modele item introuvable: " + resolvedModelRef)); + } + + private static void addModelRefs(List refs, JsonElement element) { + if (element == null) { + return; + } + if (element.isJsonArray()) { + for (JsonElement child : element.getAsJsonArray()) { + addModelRefs(refs, child); + } + return; + } + if (!element.isJsonObject()) { + return; + } + String model = string(element.getAsJsonObject(), "model", ""); + if (!model.isBlank()) { + refs.add(model); + } + } + + private static Optional resolveModel(ResourceManager resources, String ref, Set seen) { + Ref split = splitRef(ref); + String key = split.namespace() + ":" + split.path(); + if (!seen.add(key)) { + return Optional.empty(); + } + + Optional maybeRaw = maybeReadJson(resources, Identifier.fromNamespaceAndPath(split.namespace(), "models/" + split.path() + ".json")); + if (maybeRaw.isEmpty()) { + return Optional.empty(); + } + + JsonObject raw = maybeRaw.get(); + JsonObject merged = new JsonObject(); + JsonObject textures = new JsonObject(); + String parent = string(raw, "parent", ""); + if (!parent.isBlank()) { + resolveModel(resources, parent, seen).ifPresent(parentModel -> { + copyObject(object(parentModel, "textures"), textures); + if (parentModel.has("elements")) { + merged.add("elements", parentModel.get("elements").deepCopy()); + } + }); + } + copyObject(object(raw, "textures"), textures); + merged.add("textures", textures); + if (raw.has("elements")) { + merged.add("elements", raw.get("elements").deepCopy()); + } + return Optional.of(merged); + } + + private static void addFallbackBlock(ResourceManager resources, Identifier id, Map cells, Set palette, Map textureCache, BuildMode mode, ColorPalette colorPalette) { + JsonObject model = new JsonObject(); + JsonObject textures = new JsonObject(); + textures.addProperty("all", id.getNamespace() + ":block/" + id.getPath()); + textures.addProperty("particle", "#" + "all"); + model.add("textures", textures); + JsonObject element = new JsonObject(); + element.add("from", coordsArray(0, 0, 0)); + element.add("to", coordsArray(GRID, GRID, GRID)); + JsonObject faces = new JsonObject(); + for (String face : List.of("north", "south", "east", "west", "up", "down")) { + JsonObject faceObject = new JsonObject(); + faceObject.addProperty("texture", "#all"); + faces.add(face, faceObject); + } + element.add("faces", faces); + addTexturedElement(resources, model, element, cells, palette, textureCache, mode, colorPalette); + } + + private static void addTexturedElement( + ResourceManager resources, + JsonObject model, + JsonObject element, + Map cells, + Set palette, + Map textureCache, + BuildMode mode, + ColorPalette colorPalette + ) { + int[] from = coords(element.get("from"), 0, true); + int[] to = coords(element.get("to"), GRID, false); + int startX = clamp(Math.min(from[0], to[0])); + int startY = clamp(Math.min(from[1], to[1])); + int startZ = clamp(Math.min(from[2], to[2])); + int endX = clamp(Math.max(from[0], to[0])); + int endY = clamp(Math.max(from[1], to[1])); + int endZ = clamp(Math.max(from[2], to[2])); + JsonObject faces = object(element, "faces"); + if (mode == BuildMode.FACE) { + addProjectedFace(resources, model, faces, startX, startY, startZ, endX, endY, endZ, cells, palette, textureCache, colorPalette); + return; + } + + for (int x = startX; x < endX; x++) { + for (int y = startY; y < endY; y++) { + for (int z = startZ; z < endZ; z++) { + if (mode == BuildMode.HOLLOW && !isBoundary(x, y, z, startX, startY, startZ, endX, endY, endZ)) { + continue; + } + String face = nearestFace(x, y, z, startX, startY, startZ, endX, endY, endZ); + String blockId = blockForFace(resources, model, faces, face, x, y, z, startX, startY, startZ, endX, endY, endZ, textureCache, colorPalette); + if (blockId != null) { + palette.add(blockId); + cells.put(ComputerVoxelPlacement.cellKey(x, y, z), blockId); + } + } + } + } + } + + private static void addProjectedFace( + ResourceManager resources, + JsonObject model, + JsonObject faces, + int startX, + int startY, + int startZ, + int endX, + int endY, + int endZ, + Map cells, + Set palette, + Map textureCache, + ColorPalette colorPalette + ) { + String face = projectedFace(faces); + for (int x = startX; x < endX; x++) { + for (int y = startY; y < endY; y++) { + int sourceZ = face.equals("south") ? endZ - 1 : startZ; + String blockId = blockForFace(resources, model, faces, face, x, y, sourceZ, startX, startY, startZ, endX, endY, endZ, textureCache, colorPalette); + if (blockId != null) { + palette.add(blockId); + cells.put(ComputerVoxelPlacement.cellKey(x, y, 0), blockId); + } + } + } + } + + private static String projectedFace(JsonObject faces) { + for (String face : List.of("north", "south", "east", "west", "up", "down")) { + if (faces.has(face)) { + return face; + } + } + return "north"; + } + + private static String blockForFace( + ResourceManager resources, + JsonObject model, + JsonObject faces, + String face, + int x, + int y, + int z, + int startX, + int startY, + int startZ, + int endX, + int endY, + int endZ, + Map textureCache, + ColorPalette colorPalette + ) { + JsonObject faceObject = object(faces, face); + String textureRef = faceTexture(model, faces, face); + if (textureRef == null) { + return null; + } + BufferedImage image = readTextureCached(resources, textureRef, textureCache); + int[] uv = uv(faceObject); + int[] faceUv = faceUv(face, x, y, z, startX, startY, startZ, endX, endY, endZ); + int argb = sampleTexture(image, uv, faceUv[0], faceUv[1]); + int alpha = (argb >>> 24) & 0xFF; + return alpha < 24 ? null : colorPalette.nearest(argb & 0xFFFFFF); + } + + private static String faceTexture(JsonObject model, JsonObject faces, String face) { + JsonObject textures = object(model, "textures"); + JsonObject faceObject = object(faces, face); + String ref = string(faceObject, "texture", ""); + String texture = resolveTexture(textures, ref); + if (texture != null) { + return texture; + } + for (String fallback : textureFallbacks(face)) { + texture = resolveTexture(textures, fallback); + if (texture != null) { + return texture; + } + } + return null; + } + + private static List textureFallbacks(String face) { + return switch (face) { + case "up" -> List.of("#up", "#top", "#end", "#all", "#side", "#particle"); + case "down" -> List.of("#down", "#bottom", "#end", "#all", "#side", "#particle"); + default -> List.of("#" + face, "#side", "#all", "#particle", "#top"); + }; + } + + private static int[] uv(JsonObject faceObject) { + JsonArray uv = array(faceObject, "uv"); + if (uv.size() >= 4) { + return new int[]{ + clampTexture((int) Math.floor(uv.get(0).getAsDouble())), + clampTexture((int) Math.floor(uv.get(1).getAsDouble())), + clampTexture((int) Math.ceil(uv.get(2).getAsDouble())), + clampTexture((int) Math.ceil(uv.get(3).getAsDouble())) + }; + } + return new int[]{0, 0, GRID, GRID}; + } + + private static int[] faceUv(String face, int x, int y, int z, int startX, int startY, int startZ, int endX, int endY, int endZ) { + int localX = scaleToGrid(x - startX, endX - startX); + int localY = scaleToGrid(y - startY, endY - startY); + int localZ = scaleToGrid(z - startZ, endZ - startZ); + return switch (face) { + case "south" -> new int[]{localX, GRID - 1 - localY}; + case "east" -> new int[]{localZ, GRID - 1 - localY}; + case "west" -> new int[]{GRID - 1 - localZ, GRID - 1 - localY}; + case "up" -> new int[]{localX, localZ}; + case "down" -> new int[]{localX, GRID - 1 - localZ}; + default -> new int[]{GRID - 1 - localX, GRID - 1 - localY}; + }; + } + + private static int sampleTexture(BufferedImage image, int[] uv, int uIndex, int vIndex) { + double uStart = uv[0]; + double vStart = uv[1]; + double uEnd = uv[2]; + double vEnd = uv[3]; + double u = uStart + (uIndex + 0.5D) * (uEnd - uStart) / GRID; + double v = vStart + (vIndex + 0.5D) * (vEnd - vStart) / GRID; + int sampleX = Math.max(0, Math.min(image.getWidth() - 1, (int) Math.floor(u * image.getWidth() / GRID))); + int sampleY = Math.max(0, Math.min(image.getHeight() - 1, (int) Math.floor(v * image.getHeight() / GRID))); + return image.getRGB(sampleX, sampleY); + } + + private static boolean isBoundary(int x, int y, int z, int startX, int startY, int startZ, int endX, int endY, int endZ) { + return x == startX || x == endX - 1 || y == startY || y == endY - 1 || z == startZ || z == endZ - 1; + } + + private static String nearestFace(int x, int y, int z, int startX, int startY, int startZ, int endX, int endY, int endZ) { + int bestDistance = z - startZ; + String best = "north"; + int south = endZ - 1 - z; + if (south < bestDistance) { + bestDistance = south; + best = "south"; + } + int west = x - startX; + if (west < bestDistance) { + bestDistance = west; + best = "west"; + } + int east = endX - 1 - x; + if (east < bestDistance) { + bestDistance = east; + best = "east"; + } + int down = y - startY; + if (down < bestDistance) { + bestDistance = down; + best = "down"; + } + int up = endY - 1 - y; + if (up < bestDistance) { + best = "up"; + } + return best; + } + + private static int[] coords(JsonElement element, int fallback, boolean min) { + if (element == null || !element.isJsonArray() || element.getAsJsonArray().size() < 3) { + return new int[]{fallback, fallback, fallback}; + } + JsonArray values = element.getAsJsonArray(); + return new int[]{ + clamp((int) (min ? Math.floor(values.get(0).getAsDouble()) : Math.ceil(values.get(0).getAsDouble()))), + clamp((int) (min ? Math.floor(values.get(1).getAsDouble()) : Math.ceil(values.get(1).getAsDouble()))), + clamp((int) (min ? Math.floor(values.get(2).getAsDouble()) : Math.ceil(values.get(2).getAsDouble()))) + }; + } + + private static JsonArray coordsArray(int x, int y, int z) { + JsonArray array = new JsonArray(); + array.add(x); + array.add(y); + array.add(z); + return array; + } + + private static BufferedImage readTextureCached(ResourceManager resources, String textureRef, Map cache) { + BufferedImage cached = cache.get(textureRef); + if (cached != null) { + return cached; + } + BufferedImage image = readTexture(resources, textureRef); + cache.put(textureRef, image); + return image; + } + + private static BufferedImage readTexture(ResourceManager resources, String textureRef) { + Ref split = splitRef(textureRef); + Identifier textureId = Identifier.fromNamespaceAndPath(split.namespace(), "textures/" + split.path() + ".png"); + Resource resource = resources.getResource(textureId) + .orElseThrow(() -> new IllegalArgumentException("Texture introuvable: " + textureRef)); + try (InputStream stream = resource.open()) { + BufferedImage image = ImageIO.read(stream); + if (image == null) { + throw new IllegalArgumentException("Texture illisible: " + textureRef); + } + return image; + } catch (IOException exception) { + throw new IllegalArgumentException("Texture illisible: " + textureRef, exception); + } + } + + private static JsonObject readJson(ResourceManager resources, Identifier id) { + return maybeReadJson(resources, id).orElseThrow(() -> new IllegalArgumentException("Asset introuvable: " + id)); + } + + private static Optional maybeReadJson(ResourceManager resources, Identifier id) { + Optional resource = resources.getResource(id); + if (resource.isEmpty()) { + return Optional.empty(); + } + try (Reader reader = resource.get().openAsReader()) { + JsonElement parsed = JsonParser.parseReader(reader); + return parsed.isJsonObject() ? Optional.of(parsed.getAsJsonObject()) : Optional.empty(); + } catch (IOException | IllegalStateException exception) { + return Optional.empty(); + } + } + + private static String resolveTexture(JsonObject textures, String ref) { + if (ref == null || ref.isBlank()) { + return null; + } + String current = ref; + Set seen = new LinkedHashSet<>(); + while (current.startsWith("#")) { + String key = current.substring(1); + if (!seen.add(key) || !textures.has(key) || !textures.get(key).isJsonPrimitive()) { + return null; + } + current = textures.get(key).getAsString(); + } + Ref split = splitRef(current); + return split.namespace() + ":" + split.path(); + } + + private static int fallbackColor(String blockId) { + Integer concrete = FALLBACK_CONCRETE_COLORS.get(blockId); + if (concrete != null) { + return concrete; + } + Identifier id = Identifier.tryParse(blockId); + if (id == null) { + return 0x7F7F7F; + } + Block block = BuiltInRegistries.BLOCK.getOptional(id).orElse(null); + if (block == null || Minecraft.getInstance().level == null) { + return 0x7F7F7F; + } + MapColor mapColor = block.defaultBlockState().getMapColor(Minecraft.getInstance().level, BlockPos.ZERO); + return mapColor.calculateARGBColor(MapColor.Brightness.NORMAL) & 0xFFFFFF; + } + + private static String nearestColor(int rgb, List entries) { + String best = entries.getFirst().blockId(); + long bestDistance = Long.MAX_VALUE; + int r = (rgb >> 16) & 0xFF; + int g = (rgb >> 8) & 0xFF; + int b = rgb & 0xFF; + for (PaletteEntry entry : entries) { + int color = entry.rgb(); + long dr = r - ((color >> 16) & 0xFF); + long dg = g - ((color >> 8) & 0xFF); + long db = b - (color & 0xFF); + long distance = dr * dr + dg * dg + db * db; + if (distance < bestDistance) { + bestDistance = distance; + best = entry.blockId(); + } + } + return best; + } + + private static JsonObject object(JsonObject object, String key) { + JsonElement element = object.get(key); + return element != null && element.isJsonObject() ? element.getAsJsonObject() : new JsonObject(); + } + + private static JsonArray array(JsonObject object, String key) { + JsonElement element = object.get(key); + return element != null && element.isJsonArray() ? element.getAsJsonArray() : new JsonArray(); + } + + private static String string(JsonObject object, String key, String fallback) { + JsonElement element = object.get(key); + return element != null && element.isJsonPrimitive() ? element.getAsString() : fallback; + } + + private static void copyObject(JsonObject source, JsonObject target) { + for (Map.Entry entry : source.entrySet()) { + target.add(entry.getKey(), entry.getValue().deepCopy()); + } + } + + private static int clamp(int value) { + return Math.max(0, Math.min(GRID, value)); + } + + private static int clampTexture(int value) { + return Math.max(0, Math.min(GRID, value)); + } + + private static int scaleToGrid(int value, int span) { + if (span <= 1) { + return 0; + } + return Math.max(0, Math.min(GRID - 1, value * GRID / span)); + } + + private static String projectId(Identifier id, BuildMode mode) { + return "asset/" + id.getNamespace() + "/" + id.getPath() + "/" + mode.id(); + } + + private static String projectName(Identifier id, String displayName, BuildMode mode) { + String base = displayName == null || displayName.isBlank() ? title(id) : displayName; + return base + " (" + mode.label() + ")"; + } + + private static String title(Identifier id) { + String[] parts = id.getPath().replace('/', '_').replace('_', ' ').split("\\s+"); + StringBuilder builder = new StringBuilder(); + for (String part : parts) { + if (part.isBlank()) { + continue; + } + if (!builder.isEmpty()) { + builder.append(' '); + } + builder.append(Character.toUpperCase(part.charAt(0))).append(part.substring(1)); + } + return builder.isEmpty() ? id.toString() : builder.toString(); + } + + private static Ref splitRef(String ref) { + String clean = ref == null ? "" : ref; + int split = clean.indexOf(':'); + if (split >= 0) { + return new Ref(clean.substring(0, split), clean.substring(split + 1)); + } + return new Ref("minecraft", clean); + } + + private record Ref(String namespace, String path) { + } + + private record ColorPalette(List entries) { + private static ColorPalette from(List blockIds) { + List entries = new ArrayList<>(); + Set seen = new LinkedHashSet<>(); + for (String blockId : blockIds == null ? List.of() : blockIds) { + if (blockId == null || blockId.isBlank() || !seen.add(blockId) || !ComputerVoxelValidator.isOpaquePaletteBlock(blockId)) { + continue; + } + entries.add(new PaletteEntry(blockId, fallbackColor(blockId))); + } + return new ColorPalette(List.copyOf(entries)); + } + + private void requireUsable() { + if (entries.isEmpty()) { + throw new IllegalArgumentException("Palette Minecraft vide: decouvre des blocs dans Blocotech."); + } + } + + private String nearest(int rgb) { + return nearestColor(rgb, entries); + } + } + + private record PaletteEntry(String blockId, int rgb) { + } +} diff --git a/Gameplay/computer/src/main/java/fr/koka99cab/computer/ComputerMod.java b/Gameplay/computer/src/main/java/fr/koka99cab/computer/ComputerMod.java new file mode 100644 index 0000000..6b6035d --- /dev/null +++ b/Gameplay/computer/src/main/java/fr/koka99cab/computer/ComputerMod.java @@ -0,0 +1,43 @@ +package fr.koka99cab.computer; + +import fr.koka99cab.computer.command.ComputerCommands; +import fr.koka99cab.computer.network.ComputerOpenPayload; +import fr.koka99cab.computer.network.ComputerPlaceVoxelProjectPayload; +import fr.koka99cab.computer.network.ComputerStatsPayload; +import fr.koka99cab.computer.network.ComputerStatsRequestPayload; +import fr.koka99cab.computer.registry.ComputerBlocks; +import fr.koka99cab.computer.voxel.ComputerVoxelPlacementHandler; +import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry; +import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; +import net.minecraft.resources.Identifier; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class ComputerMod implements ModInitializer { + public static final String MOD_ID = "computer"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + ComputerBlocks.initialize(); + ComputerCommands.register(); + PayloadTypeRegistry.clientboundPlay().register(ComputerOpenPayload.TYPE, ComputerOpenPayload.STREAM_CODEC); + PayloadTypeRegistry.clientboundPlay().register(ComputerStatsPayload.TYPE, ComputerStatsPayload.STREAM_CODEC); + PayloadTypeRegistry.serverboundPlay().register(ComputerStatsRequestPayload.TYPE, ComputerStatsRequestPayload.STREAM_CODEC); + PayloadTypeRegistry.serverboundPlay().register(ComputerPlaceVoxelProjectPayload.TYPE, ComputerPlaceVoxelProjectPayload.STREAM_CODEC); + ServerPlayNetworking.registerGlobalReceiver(ComputerStatsRequestPayload.TYPE, (payload, context) -> + context.server().execute(() -> { + if (ServerPlayNetworking.canSend(context.player(), ComputerStatsPayload.TYPE)) { + ServerPlayNetworking.send(context.player(), ComputerStatsPayload.from(context.player())); + } + })); + ServerPlayNetworking.registerGlobalReceiver(ComputerPlaceVoxelProjectPayload.TYPE, (payload, context) -> + context.server().execute(() -> ComputerVoxelPlacementHandler.handle(context.player(), payload))); + LOGGER.info("Computer desktop initialized."); + } + + public static Identifier id(String path) { + return Identifier.fromNamespaceAndPath(MOD_ID, path); + } +} diff --git a/Gameplay/computer/src/main/java/fr/koka99cab/computer/block/ComputerBlock.java b/Gameplay/computer/src/main/java/fr/koka99cab/computer/block/ComputerBlock.java new file mode 100644 index 0000000..6fc2b42 --- /dev/null +++ b/Gameplay/computer/src/main/java/fr/koka99cab/computer/block/ComputerBlock.java @@ -0,0 +1,62 @@ +package fr.koka99cab.computer.block; + +import com.mojang.serialization.MapCodec; +import fr.koka99cab.computer.network.ComputerOpenPayload; +import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.context.BlockPlaceContext; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.HorizontalDirectionalBlock; +import net.minecraft.world.level.block.Mirror; +import net.minecraft.world.level.block.Rotation; +import net.minecraft.world.level.block.state.BlockBehaviour; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.phys.BlockHitResult; + +public final class ComputerBlock extends HorizontalDirectionalBlock { + public static final MapCodec CODEC = simpleCodec(ComputerBlock::new); + + public ComputerBlock(BlockBehaviour.Properties properties) { + super(properties); + registerDefaultState(stateDefinition.any().setValue(FACING, Direction.NORTH)); + } + + @Override + protected MapCodec codec() { + return CODEC; + } + + @Override + public BlockState getStateForPlacement(BlockPlaceContext context) { + return defaultBlockState().setValue(FACING, context.getHorizontalDirection().getOpposite()); + } + + @Override + protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hit) { + if (player instanceof ServerPlayer serverPlayer && ServerPlayNetworking.canSend(serverPlayer, ComputerOpenPayload.TYPE)) { + ServerPlayNetworking.send(serverPlayer, new ComputerOpenPayload()); + } + return InteractionResult.SUCCESS; + } + + @Override + protected BlockState rotate(BlockState state, Rotation rotation) { + return state.setValue(FACING, rotation.rotate(state.getValue(FACING))); + } + + @Override + protected BlockState mirror(BlockState state, Mirror mirror) { + return state.rotate(mirror.getRotation(state.getValue(FACING))); + } + + @Override + protected void createBlockStateDefinition(StateDefinition.Builder builder) { + builder.add(FACING); + } +} diff --git a/Gameplay/computer/src/main/java/fr/koka99cab/computer/command/ComputerCommands.java b/Gameplay/computer/src/main/java/fr/koka99cab/computer/command/ComputerCommands.java new file mode 100644 index 0000000..9280c19 --- /dev/null +++ b/Gameplay/computer/src/main/java/fr/koka99cab/computer/command/ComputerCommands.java @@ -0,0 +1,62 @@ +package fr.koka99cab.computer.command; + +import com.mojang.brigadier.CommandDispatcher; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import fr.koka99cab.computer.ComputerMod; +import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.network.chat.Component; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.server.permissions.Permissions; +import net.minecraft.stats.Stats; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; + +public final class ComputerCommands { + private ComputerCommands() { + } + + public static void register() { + CommandRegistrationCallback.EVENT.register((dispatcher, registryAccess, environment) -> register(dispatcher)); + } + + private static void register(CommandDispatcher dispatcher) { + dispatcher.register(Commands.literal(ComputerMod.MOD_ID) + .then(Commands.literal("unlock_all_blocks") + .requires(source -> source.permissions().hasPermission(Permissions.COMMANDS_GAMEMASTER)) + .executes(context -> unlockAllBlocks(context.getSource()))) + .then(Commands.literal("unlock_all") + .requires(source -> source.permissions().hasPermission(Permissions.COMMANDS_GAMEMASTER)) + .executes(context -> unlockAllBlocks(context.getSource()))) + .then(Commands.literal("cheat") + .requires(source -> source.permissions().hasPermission(Permissions.COMMANDS_GAMEMASTER)) + .then(Commands.literal("unlock_all") + .executes(context -> unlockAllBlocks(context.getSource()))) + .then(Commands.literal("discover_all") + .executes(context -> unlockAllBlocks(context.getSource()))))); + } + + private static int unlockAllBlocks(CommandSourceStack source) throws CommandSyntaxException { + ServerPlayer player = source.getPlayerOrException(); + int unlocked = 0; + for (Block block : BuiltInRegistries.BLOCK) { + if (block == Blocks.AIR || block.defaultBlockState().isAir()) { + continue; + } + player.awardStat(Stats.BLOCK_MINED.get(block), 1); + Item item = block.asItem(); + if (item != Items.AIR) { + player.awardStat(Stats.ITEM_PICKED_UP.get(item), 1); + } + unlocked++; + } + player.getStats().sendStats(player); + int count = unlocked; + source.sendSuccess(() -> Component.literal("Computer: " + count + " blocs debloques."), true); + return unlocked; + } +} diff --git a/Gameplay/computer/src/main/java/fr/koka99cab/computer/network/ComputerOpenPayload.java b/Gameplay/computer/src/main/java/fr/koka99cab/computer/network/ComputerOpenPayload.java new file mode 100644 index 0000000..4dce812 --- /dev/null +++ b/Gameplay/computer/src/main/java/fr/koka99cab/computer/network/ComputerOpenPayload.java @@ -0,0 +1,16 @@ +package fr.koka99cab.computer.network; + +import fr.koka99cab.computer.ComputerMod; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record ComputerOpenPayload() implements CustomPacketPayload { + public static final Type TYPE = new Type<>(ComputerMod.id("open_desktop")); + public static final StreamCodec STREAM_CODEC = StreamCodec.unit(new ComputerOpenPayload()); + + @Override + public Type type() { + return TYPE; + } +} diff --git a/Gameplay/computer/src/main/java/fr/koka99cab/computer/network/ComputerPlaceVoxelProjectPayload.java b/Gameplay/computer/src/main/java/fr/koka99cab/computer/network/ComputerPlaceVoxelProjectPayload.java new file mode 100644 index 0000000..f303967 --- /dev/null +++ b/Gameplay/computer/src/main/java/fr/koka99cab/computer/network/ComputerPlaceVoxelProjectPayload.java @@ -0,0 +1,40 @@ +package fr.koka99cab.computer.network; + +import fr.koka99cab.computer.ComputerMod; +import fr.koka99cab.computer.voxel.ComputerVoxelProject; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record ComputerPlaceVoxelProjectPayload(ComputerVoxelProject project, BlockPos anchor, Direction facing, String mode) implements CustomPacketPayload { + public static final String MODE_CREATIVE_DIRECT = "creative_direct"; + public static final String MODE_UNDO = "undo"; + public static final String MODE_REDO = "redo"; + public static final Type TYPE = new Type<>(ComputerMod.id("place_voxel_project")); + public static final StreamCodec STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.fromCodec(ComputerVoxelProject.CODEC), + ComputerPlaceVoxelProjectPayload::project, + BlockPos.STREAM_CODEC, + ComputerPlaceVoxelProjectPayload::anchor, + Direction.STREAM_CODEC, + ComputerPlaceVoxelProjectPayload::facing, + ByteBufCodecs.STRING_UTF8, + ComputerPlaceVoxelProjectPayload::mode, + ComputerPlaceVoxelProjectPayload::new + ); + + public ComputerPlaceVoxelProjectPayload { + project = project == null ? ComputerVoxelProject.empty() : project; + anchor = anchor == null ? BlockPos.ZERO : anchor.immutable(); + facing = facing == null ? Direction.NORTH : facing; + mode = mode == null ? "" : mode.strip(); + } + + @Override + public Type type() { + return TYPE; + } +} diff --git a/Gameplay/computer/src/main/java/fr/koka99cab/computer/network/ComputerStatsPayload.java b/Gameplay/computer/src/main/java/fr/koka99cab/computer/network/ComputerStatsPayload.java new file mode 100644 index 0000000..c2af6fe --- /dev/null +++ b/Gameplay/computer/src/main/java/fr/koka99cab/computer/network/ComputerStatsPayload.java @@ -0,0 +1,287 @@ +package fr.koka99cab.computer.network; + +import fr.koka99cab.computer.ComputerMod; +import java.util.Locale; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.resources.Identifier; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.stats.ServerStatsCounter; +import net.minecraft.stats.Stats; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.Item; +import net.minecraft.world.level.block.Block; + +public record ComputerStatsPayload( + long playTimeTicks, + long distanceCm, + long minedBlocks, + long craftedItems, + long pickedBlocks, + long usedItems, + long droppedItems, + long brokenItems, + long placedBlocks, + long mobKills, + long killedByMobs, + long deaths, + long damageTaken, + long jumps, + int health, + int maxHealth, + int xpLevel, + int totalExperience, + long familyMinerais, + long familyBois, + long familyRoche, + long familySols, + long familyVegetal, + long familyConstruits, + long familyAutres +) implements CustomPacketPayload { + public static final Type TYPE = new Type<>(ComputerMod.id("stats_snapshot")); + public static final StreamCodec STREAM_CODEC = StreamCodec.ofMember(ComputerStatsPayload::write, ComputerStatsPayload::read); + + public static ComputerStatsPayload from(ServerPlayer player) { + ServerStatsCounter stats = player.getStats(); + FamilyCounts families = pickedBlockFamilies(stats); + return new ComputerStatsPayload( + customStat(stats, Stats.PLAY_TIME), + distanceCentimeters(stats), + minedBlocks(stats), + craftedItems(stats), + pickedBlockItems(stats), + usedItems(stats), + droppedItems(stats), + brokenItems(stats), + usedBlockItems(stats), + customStat(stats, Stats.MOB_KILLS), + killedByMobs(stats), + customStat(stats, Stats.DEATHS), + customStat(stats, Stats.DAMAGE_TAKEN), + customStat(stats, Stats.JUMP), + Math.round(player.getHealth()), + Math.max(1, Math.round(player.getMaxHealth())), + player.experienceLevel, + player.totalExperience, + families.minerais, + families.bois, + families.roche, + families.sols, + families.vegetal, + families.construits, + families.autres + ); + } + + @Override + public Type type() { + return TYPE; + } + + private static ComputerStatsPayload read(RegistryFriendlyByteBuf buf) { + return new ComputerStatsPayload( + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarInt(), + buf.readVarInt(), + buf.readVarInt(), + buf.readVarInt(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong(), + buf.readVarLong() + ); + } + + private void write(RegistryFriendlyByteBuf buf) { + buf.writeVarLong(playTimeTicks); + buf.writeVarLong(distanceCm); + buf.writeVarLong(minedBlocks); + buf.writeVarLong(craftedItems); + buf.writeVarLong(pickedBlocks); + buf.writeVarLong(usedItems); + buf.writeVarLong(droppedItems); + buf.writeVarLong(brokenItems); + buf.writeVarLong(placedBlocks); + buf.writeVarLong(mobKills); + buf.writeVarLong(killedByMobs); + buf.writeVarLong(deaths); + buf.writeVarLong(damageTaken); + buf.writeVarLong(jumps); + buf.writeVarInt(health); + buf.writeVarInt(maxHealth); + buf.writeVarInt(xpLevel); + buf.writeVarInt(totalExperience); + buf.writeVarLong(familyMinerais); + buf.writeVarLong(familyBois); + buf.writeVarLong(familyRoche); + buf.writeVarLong(familySols); + buf.writeVarLong(familyVegetal); + buf.writeVarLong(familyConstruits); + buf.writeVarLong(familyAutres); + } + + private static long customStat(ServerStatsCounter stats, Identifier id) { + return stats.getValue(Stats.CUSTOM.get(id)); + } + + private static long distanceCentimeters(ServerStatsCounter stats) { + return customStat(stats, Stats.WALK_ONE_CM) + + customStat(stats, Stats.CROUCH_ONE_CM) + + customStat(stats, Stats.SPRINT_ONE_CM) + + customStat(stats, Stats.WALK_ON_WATER_ONE_CM) + + customStat(stats, Stats.WALK_UNDER_WATER_ONE_CM) + + customStat(stats, Stats.SWIM_ONE_CM) + + customStat(stats, Stats.FLY_ONE_CM) + + customStat(stats, Stats.AVIATE_ONE_CM) + + customStat(stats, Stats.BOAT_ONE_CM) + + customStat(stats, Stats.MINECART_ONE_CM) + + customStat(stats, Stats.HORSE_ONE_CM); + } + + private static long minedBlocks(ServerStatsCounter stats) { + long total = 0L; + for (Block block : BuiltInRegistries.BLOCK) { + total += stats.getValue(Stats.BLOCK_MINED, block); + } + return total; + } + + private static long craftedItems(ServerStatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + total += stats.getValue(Stats.ITEM_CRAFTED, item); + } + return total; + } + + private static long pickedBlockItems(ServerStatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + if (item instanceof BlockItem) { + total += stats.getValue(Stats.ITEM_PICKED_UP, item); + } + } + return total; + } + + private static long usedItems(ServerStatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + total += stats.getValue(Stats.ITEM_USED, item); + } + return total; + } + + private static long droppedItems(ServerStatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + total += stats.getValue(Stats.ITEM_DROPPED, item); + } + return total; + } + + private static long brokenItems(ServerStatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + total += stats.getValue(Stats.ITEM_BROKEN, item); + } + return total; + } + + private static long usedBlockItems(ServerStatsCounter stats) { + long total = 0L; + for (Item item : BuiltInRegistries.ITEM) { + if (item instanceof BlockItem) { + total += stats.getValue(Stats.ITEM_USED, item); + } + } + return total; + } + + private static long killedByMobs(ServerStatsCounter stats) { + long total = 0L; + for (EntityType entityType : BuiltInRegistries.ENTITY_TYPE) { + total += stats.getValue(Stats.ENTITY_KILLED_BY, entityType); + } + return total; + } + + private static FamilyCounts pickedBlockFamilies(ServerStatsCounter stats) { + FamilyCounts counts = new FamilyCounts(); + for (Item item : BuiltInRegistries.ITEM) { + if (item instanceof BlockItem blockItem) { + long count = stats.getValue(Stats.ITEM_PICKED_UP, item); + if (count > 0L) { + counts.add(blockFamily(blockItem.getBlock()), count); + } + } + } + return counts; + } + + private static String blockFamily(Block block) { + Identifier id = BuiltInRegistries.BLOCK.getKey(block); + String path = id == null ? "" : id.getPath().toLowerCase(Locale.ROOT); + if (path.contains("ore") || path.contains("raw_") || path.contains("coal") || path.contains("copper") || path.contains("iron") || path.contains("gold") || path.contains("diamond") || path.contains("emerald") || path.contains("lapis") || path.contains("redstone") || path.contains("quartz") || path.contains("ancient_debris")) { + return "Minerais"; + } + if (path.contains("log") || path.contains("wood") || path.contains("planks") || path.contains("stem") || path.contains("hyphae") || path.contains("bamboo")) { + return "Bois"; + } + if (path.contains("stone") || path.contains("deepslate") || path.contains("granite") || path.contains("andesite") || path.contains("diorite") || path.contains("tuff") || path.contains("basalt") || path.contains("blackstone") || path.contains("netherrack")) { + return "Roche"; + } + if (path.contains("dirt") || path.contains("grass_block") || path.contains("sand") || path.contains("gravel") || path.contains("clay") || path.contains("mud") || path.contains("soul")) { + return "Sols"; + } + if (path.contains("leaves") || path.contains("sapling") || path.contains("flower") || path.contains("moss") || path.contains("grass") || path.contains("vine") || path.contains("roots") || path.contains("crop")) { + return "Vegetal"; + } + if (path.contains("glass") || path.contains("wool") || path.contains("concrete") || path.contains("terracotta") || path.contains("brick")) { + return "Construits"; + } + return "Autres"; + } + + private static final class FamilyCounts { + private long minerais; + private long bois; + private long roche; + private long sols; + private long vegetal; + private long construits; + private long autres; + + private void add(String family, long amount) { + switch (family) { + case "Minerais" -> minerais += amount; + case "Bois" -> bois += amount; + case "Roche" -> roche += amount; + case "Sols" -> sols += amount; + case "Vegetal" -> vegetal += amount; + case "Construits" -> construits += amount; + default -> autres += amount; + } + } + } +} diff --git a/Gameplay/computer/src/main/java/fr/koka99cab/computer/network/ComputerStatsRequestPayload.java b/Gameplay/computer/src/main/java/fr/koka99cab/computer/network/ComputerStatsRequestPayload.java new file mode 100644 index 0000000..7e8156d --- /dev/null +++ b/Gameplay/computer/src/main/java/fr/koka99cab/computer/network/ComputerStatsRequestPayload.java @@ -0,0 +1,16 @@ +package fr.koka99cab.computer.network; + +import fr.koka99cab.computer.ComputerMod; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record ComputerStatsRequestPayload() implements CustomPacketPayload { + public static final Type TYPE = new Type<>(ComputerMod.id("stats_request")); + public static final StreamCodec STREAM_CODEC = StreamCodec.unit(new ComputerStatsRequestPayload()); + + @Override + public Type type() { + return TYPE; + } +} diff --git a/Gameplay/computer/src/main/java/fr/koka99cab/computer/registry/ComputerBlocks.java b/Gameplay/computer/src/main/java/fr/koka99cab/computer/registry/ComputerBlocks.java new file mode 100644 index 0000000..d39b61c --- /dev/null +++ b/Gameplay/computer/src/main/java/fr/koka99cab/computer/registry/ComputerBlocks.java @@ -0,0 +1,53 @@ +package fr.koka99cab.computer.registry; + +import fr.koka99cab.computer.ComputerMod; +import fr.koka99cab.computer.block.ComputerBlock; +import java.util.function.Function; +import net.fabricmc.fabric.api.creativetab.v1.CreativeModeTabEvents; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.CreativeModeTab; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.SoundType; +import net.minecraft.world.level.block.state.BlockBehaviour; + +public final class ComputerBlocks { + public static final Block COMPUTER = register( + "computer", + ComputerBlock::new, + BlockBehaviour.Properties.of().strength(2.0F, 6.0F).sound(SoundType.METAL), + true + ); + + private ComputerBlocks() { + } + + public static void initialize() { + CreativeModeTabEvents.modifyOutputEvent(vanillaTab("functional_blocks")).register(entries -> + entries.accept(new ItemStack(COMPUTER), CreativeModeTab.TabVisibility.PARENT_AND_SEARCH_TABS) + ); + } + + private static Block register(String path, Function factory, BlockBehaviour.Properties properties, boolean registerItem) { + ResourceKey blockKey = ResourceKey.create(Registries.BLOCK, ComputerMod.id(path)); + Block block = factory.apply(properties.setId(blockKey)); + + if (registerItem) { + ResourceKey itemKey = ResourceKey.create(Registries.ITEM, ComputerMod.id(path)); + BlockItem item = new BlockItem(block, new Item.Properties().setId(itemKey).useBlockDescriptionPrefix()); + Registry.register(BuiltInRegistries.ITEM, itemKey, item); + } + + return Registry.register(BuiltInRegistries.BLOCK, blockKey, block); + } + + private static ResourceKey vanillaTab(String path) { + return ResourceKey.create(Registries.CREATIVE_MODE_TAB, Identifier.fromNamespaceAndPath("minecraft", path)); + } +} diff --git a/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelEditor.java b/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelEditor.java new file mode 100644 index 0000000..9dd2ccd --- /dev/null +++ b/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelEditor.java @@ -0,0 +1,342 @@ +package fr.koka99cab.computer.voxel; + +import java.util.ArrayDeque; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; +import java.util.HashSet; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Queue; +import java.util.Set; + +public final class ComputerVoxelEditor { + public static final int DEFAULT_WIDTH = 16; + public static final int DEFAULT_HEIGHT = 16; + public static final int DEFAULT_DEPTH = 16; + private static final int SHAPE_TOOL_RADIUS = 2; + + public enum Tool { + PIPETTE, + BRUSH, + ADD, + REMOVE, + SQUARE, + ROUND, + FILL; + + public String label() { + return switch (this) { + case PIPETTE -> "Pipette"; + case BRUSH -> "Pinceau"; + case ADD -> "Ajouter"; + case REMOVE -> "Retirer"; + case SQUARE -> "Carre"; + case ROUND -> "Rond"; + case FILL -> "Remplir"; + }; + } + } + + private ComputerVoxelProject project; + private String selectedBlockId; + + private ComputerVoxelEditor(ComputerVoxelProject project, String selectedBlockId) { + this.project = normalize(project); + this.selectedBlockId = cleanBlockId(selectedBlockId); + } + + public static ComputerVoxelEditor blank(String id, String name) { + return blank(id, name, DEFAULT_WIDTH, DEFAULT_HEIGHT, DEFAULT_DEPTH); + } + + public static ComputerVoxelEditor blank(String id, String name, int width, int height, int depth) { + requirePositiveDimensions(width, height, depth); + return new ComputerVoxelEditor(new ComputerVoxelProject(id, name, width, height, depth, List.of(), Map.of(), System.currentTimeMillis(), System.currentTimeMillis()), null); + } + + public static ComputerVoxelEditor fromProject(ComputerVoxelProject project) { + return new ComputerVoxelEditor(project, null); + } + + public ComputerVoxelProject project() { + return project; + } + + public String id() { + return project.id(); + } + + public String name() { + return project.name(); + } + + public int width() { + return project.width(); + } + + public int height() { + return project.height(); + } + + public int depth() { + return project.depth(); + } + + public Map cells() { + return Collections.unmodifiableMap(new LinkedHashMap<>(project.cells())); + } + + public String selectedBlockId() { + return selectedBlockId; + } + + public ComputerVoxelEditor selectBlock(String blockId) { + selectedBlockId = cleanBlockId(blockId); + return this; + } + + public ComputerVoxelEditor setName(String name) { + project = new ComputerVoxelProject(project.id(), name, project.width(), project.height(), project.depth(), project.palette(), project.cells(), project.createdAt(), project.updatedAt()); + return this; + } + + public ComputerVoxelEditor replaceProject(ComputerVoxelProject project) { + this.project = normalize(project); + return this; + } + + public ComputerVoxelEditor resize(int width, int height, int depth) { + requirePositiveDimensions(width, height, depth); + Map cells = new LinkedHashMap<>(); + for (Map.Entry entry : project.cells().entrySet()) { + CellEntry pos = parseCellKey(entry.getKey(), entry.getValue()); + if (pos != null && inBounds(pos.x(), pos.y(), pos.z(), width, height, depth)) { + cells.put(entry.getKey(), entry.getValue()); + } + } + return withProject(width, height, depth, cells); + } + + public ComputerVoxelEditor add(int x, int y, int z, String blockId) { + String cleanBlockId = requireBlockId(blockId); + if (!inProjectBounds(x, y, z)) { + return this; + } + Map cells = mutableCells(); + cells.put(cellKey(x, y, z), cleanBlockId); + return withCells(cells); + } + + public ComputerVoxelEditor remove(int x, int y, int z) { + if (!inProjectBounds(x, y, z)) { + return this; + } + Map cells = mutableCells(); + cells.remove(cellKey(x, y, z)); + return withCells(cells); + } + + public ComputerVoxelEditor fillSquare(int centerX, int y, int centerZ, int radius, String blockId) { + String cleanBlockId = requireBlockId(blockId); + if (y < 0 || y >= project.height()) { + return this; + } + int startX = Math.max(0, centerX - radius); + int endX = Math.min(project.width() - 1, centerX + radius); + int startZ = Math.max(0, centerZ - radius); + int endZ = Math.min(project.depth() - 1, centerZ + radius); + Map cells = mutableCells(); + for (int z = startZ; z <= endZ; z++) { + for (int x = startX; x <= endX; x++) { + cells.put(cellKey(x, y, z), cleanBlockId); + } + } + return withCells(cells); + } + + public ComputerVoxelEditor fillRound(int centerX, int y, int centerZ, int radius, String blockId) { + String cleanBlockId = requireBlockId(blockId); + if (radius < 0 || y < 0 || y >= project.height()) { + return this; + } + int startX = Math.max(0, centerX - radius); + int endX = Math.min(project.width() - 1, centerX + radius); + int startZ = Math.max(0, centerZ - radius); + int endZ = Math.min(project.depth() - 1, centerZ + radius); + int radiusSquared = radius * radius; + Map cells = mutableCells(); + for (int z = startZ; z <= endZ; z++) { + int dz = z - centerZ; + for (int x = startX; x <= endX; x++) { + int dx = x - centerX; + if (dx * dx + dz * dz <= radiusSquared) { + cells.put(cellKey(x, y, z), cleanBlockId); + } + } + } + return withCells(cells); + } + + public ComputerVoxelEditor floodFill2d(int startX, int y, int startZ, String blockId) { + String cleanBlockId = requireBlockId(blockId); + if (!inProjectBounds(startX, y, startZ)) { + return this; + } + String targetBlockId = project.cells().get(cellKey(startX, y, startZ)); + if (Objects.equals(targetBlockId, cleanBlockId)) { + return this; + } + Map cells = mutableCells(); + Queue queue = new ArrayDeque<>(); + Set visited = new HashSet<>(); + queue.add(new LayerPos(startX, startZ)); + while (!queue.isEmpty()) { + LayerPos current = queue.remove(); + if (!visited.add(current) || !inProjectBounds(current.x(), y, current.z())) { + continue; + } + String currentKey = cellKey(current.x(), y, current.z()); + if (!Objects.equals(cells.get(currentKey), targetBlockId)) { + continue; + } + cells.put(currentKey, cleanBlockId); + queue.add(new LayerPos(current.x() + 1, current.z())); + queue.add(new LayerPos(current.x() - 1, current.z())); + queue.add(new LayerPos(current.x(), current.z() + 1)); + queue.add(new LayerPos(current.x(), current.z() - 1)); + } + return withCells(cells); + } + + public String blockAt(int x, int y, int z) { + if (!inProjectBounds(x, y, z)) { + return null; + } + return project.cells().get(cellKey(x, y, z)); + } + + public void apply(Tool tool, int x, int y, int z, String blockId) { + switch (tool) { + case PIPETTE -> { + } + case BRUSH, ADD -> add(x, y, z, blockId); + case REMOVE -> remove(x, y, z); + case SQUARE -> fillSquare(x, y, z, SHAPE_TOOL_RADIUS, blockId); + case ROUND -> fillRound(x, y, z, SHAPE_TOOL_RADIUS, blockId); + case FILL -> floodFill2d(x, y, z, blockId); + } + } + + public ComputerVoxelProject toProject(long updatedAt) { + ComputerVoxelProject normalized = normalize(project); + return new ComputerVoxelProject(normalized.id(), normalized.name(), normalized.width(), normalized.height(), normalized.depth(), normalized.palette(), normalized.cells(), normalized.createdAt(), updatedAt); + } + + public ComputerVoxelProject export() { + return normalize(project); + } + + private ComputerVoxelEditor withCells(Map cells) { + return withProject(project.width(), project.height(), project.depth(), cells); + } + + private ComputerVoxelEditor withProject(int width, int height, int depth, Map cells) { + project = normalize(new ComputerVoxelProject(project.id(), project.name(), width, height, depth, paletteFromCells(cells), cells, project.createdAt(), System.currentTimeMillis())); + return this; + } + + private Map mutableCells() { + return new LinkedHashMap<>(project.cells()); + } + + private boolean inProjectBounds(int x, int y, int z) { + return inBounds(x, y, z, project.width(), project.height(), project.depth()); + } + + private static ComputerVoxelProject normalize(ComputerVoxelProject project) { + Objects.requireNonNull(project, "project"); + requirePositiveDimensions(project.width(), project.height(), project.depth()); + Map cells = new LinkedHashMap<>(); + normalizedCellEntries(project).forEach(entry -> cells.put(entry.key(), entry.blockId())); + return new ComputerVoxelProject(project.id(), project.name(), project.width(), project.height(), project.depth(), paletteFromCells(cells), cells, project.createdAt(), project.updatedAt()); + } + + private static List normalizedCellEntries(ComputerVoxelProject project) { + List entries = new ArrayList<>(); + for (Map.Entry entry : project.cells().entrySet()) { + CellEntry pos = parseCellKey(entry.getKey(), entry.getValue()); + if (pos != null && inBounds(pos.x(), pos.y(), pos.z(), project.width(), project.height(), project.depth())) { + entries.add(pos); + } + } + entries.sort(Comparator.comparingInt(CellEntry::y).thenComparingInt(CellEntry::z).thenComparingInt(CellEntry::x)); + return entries; + } + + private static List paletteFromCells(Map cells) { + List palette = new ArrayList<>(); + for (String blockId : cells.values()) { + if (!palette.contains(blockId)) { + palette.add(blockId); + } + } + return palette; + } + + private static boolean inBounds(int x, int y, int z, int width, int height, int depth) { + return x >= 0 && x < width && y >= 0 && y < height && z >= 0 && z < depth; + } + + private static CellEntry parseCellKey(String key, String blockId) { + String cleanBlockId = cleanBlockId(blockId); + if (key == null || cleanBlockId == null) { + return null; + } + String[] parts = key.split(",", 3); + if (parts.length != 3) { + return null; + } + try { + return new CellEntry(Integer.parseInt(parts[0]), Integer.parseInt(parts[1]), Integer.parseInt(parts[2]), cleanBlockId); + } catch (NumberFormatException exception) { + return null; + } + } + + private static String cellKey(int x, int y, int z) { + return x + "," + y + "," + z; + } + + private static void requirePositiveDimensions(int width, int height, int depth) { + if (width <= 0 || height <= 0 || depth <= 0 || width > ComputerVoxelValidator.MAX_DIMENSION || height > ComputerVoxelValidator.MAX_DIMENSION || depth > ComputerVoxelValidator.MAX_DIMENSION) { + throw new IllegalArgumentException("Voxel project dimensions must be between 1 and " + ComputerVoxelValidator.MAX_DIMENSION); + } + } + + private static String requireBlockId(String blockId) { + String cleanBlockId = cleanBlockId(blockId); + if (cleanBlockId == null) { + throw new IllegalStateException("A block must be selected before painting"); + } + return cleanBlockId; + } + + private static String cleanBlockId(String blockId) { + if (blockId == null || blockId.isBlank()) { + return null; + } + return blockId.trim(); + } + + private record LayerPos(int x, int z) { + } + + private record CellEntry(int x, int y, int z, String blockId) { + String key() { + return cellKey(x, y, z); + } + } +} diff --git a/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelPlacement.java b/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelPlacement.java new file mode 100644 index 0000000..b148200 --- /dev/null +++ b/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelPlacement.java @@ -0,0 +1,81 @@ +package fr.koka99cab.computer.voxel; + +import java.util.ArrayList; +import java.util.Comparator; +import java.util.List; +import java.util.Map; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; + +public final class ComputerVoxelPlacement { + private ComputerVoxelPlacement() { + } + + public static List orderedCells(ComputerVoxelProject project) { + List cells = new ArrayList<>(); + for (Map.Entry entry : project.cells().entrySet()) { + BlockPos pos = parseCell(entry.getKey()); + if (pos != null) { + cells.add(new Cell(pos.getX(), pos.getY(), pos.getZ(), entry.getValue())); + } + } + cells.sort(Comparator.comparingInt(Cell::y).thenComparingInt(Cell::z).thenComparingInt(Cell::x)); + return cells; + } + + public static BlockPos transform(ComputerVoxelProject project, Cell cell, BlockPos anchor, Direction facing) { + Direction horizontal = horizontal(facing); + int centeredX = cell.x() - project.width() / 2; + int centeredZ = cell.z() - project.depth() / 2; + int worldX; + int worldZ; + switch (horizontal) { + case SOUTH -> { + worldX = -centeredX; + worldZ = -centeredZ; + } + case EAST -> { + worldX = -centeredZ; + worldZ = centeredX; + } + case WEST -> { + worldX = centeredZ; + worldZ = -centeredX; + } + default -> { + worldX = centeredX; + worldZ = centeredZ; + } + } + return anchor.offset(worldX, cell.y(), worldZ).immutable(); + } + + public static BlockPos parseCell(String key) { + if (key == null) { + return null; + } + String[] parts = key.split(",", 3); + if (parts.length != 3) { + return null; + } + try { + return new BlockPos(Integer.parseInt(parts[0]), Integer.parseInt(parts[1]), Integer.parseInt(parts[2])); + } catch (NumberFormatException exception) { + return null; + } + } + + public static String cellKey(int x, int y, int z) { + return x + "," + y + "," + z; + } + + public static Direction horizontal(Direction facing) { + if (facing == Direction.UP || facing == Direction.DOWN || facing == null) { + return Direction.NORTH; + } + return facing; + } + + public record Cell(int x, int y, int z, String blockId) { + } +} diff --git a/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelPlacementHandler.java b/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelPlacementHandler.java new file mode 100644 index 0000000..2ed356a --- /dev/null +++ b/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelPlacementHandler.java @@ -0,0 +1,134 @@ +package fr.koka99cab.computer.voxel; + +import fr.koka99cab.computer.network.ComputerPlaceVoxelProjectPayload; +import java.util.ArrayDeque; +import java.util.ArrayList; +import java.util.Deque; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.UUID; +import net.minecraft.ChatFormatting; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.Identifier; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockState; + +public final class ComputerVoxelPlacementHandler { + private static final int MAX_PLACEMENT_HISTORY = 8; + private static final Map> UNDO_HISTORY = new HashMap<>(); + private static final Map> REDO_HISTORY = new HashMap<>(); + + private ComputerVoxelPlacementHandler() { + } + + public static void handle(ServerPlayer player, ComputerPlaceVoxelProjectPayload payload) { + if (ComputerPlaceVoxelProjectPayload.MODE_UNDO.equals(payload.mode())) { + undoPlacement(player); + return; + } + if (ComputerPlaceVoxelProjectPayload.MODE_REDO.equals(payload.mode())) { + redoPlacement(player); + return; + } + if (!ComputerPlaceVoxelProjectPayload.MODE_CREATIVE_DIRECT.equals(payload.mode())) { + player.sendSystemMessage(Component.literal("Mode de pose inconnu.").withStyle(ChatFormatting.RED)); + return; + } + if (!player.isCreative()) { + player.sendSystemMessage(Component.literal("Pose directe reservee au mode creatif.").withStyle(ChatFormatting.RED)); + return; + } + + ComputerVoxelValidator.ValidationResult validation = ComputerVoxelValidator.validate(payload.project()); + if (!validation.valid()) { + player.sendSystemMessage(Component.literal(validation.message()).withStyle(ChatFormatting.RED)); + return; + } + + int placed = 0; + List changes = new ArrayList<>(); + for (ComputerVoxelPlacement.Cell cell : ComputerVoxelPlacement.orderedCells(payload.project())) { + Optional block = block(cell.blockId()); + if (block.isEmpty() || block.get() == Blocks.AIR) { + continue; + } + BlockPos worldPos = ComputerVoxelPlacement.transform(payload.project(), cell, payload.anchor(), payload.facing()); + BlockState before = player.level().getBlockState(worldPos); + BlockState after = block.get().defaultBlockState(); + if (before.equals(after)) { + continue; + } + player.level().setBlock(worldPos, after, 3); + changes.add(new BlockChange(worldPos.immutable(), before, after)); + placed++; + } + if (!changes.isEmpty()) { + pushUndo(player.getUUID(), new PlacementSnapshot(List.copyOf(changes))); + REDO_HISTORY.computeIfAbsent(player.getUUID(), ignored -> new ArrayDeque<>()).clear(); + } + player.sendSystemMessage(Component.literal("Structure posee: " + placed + " blocs.").withStyle(ChatFormatting.GREEN)); + } + + private static void undoPlacement(ServerPlayer player) { + Deque undo = UNDO_HISTORY.computeIfAbsent(player.getUUID(), ignored -> new ArrayDeque<>()); + PlacementSnapshot snapshot = undo.pollFirst(); + if (snapshot == null) { + player.sendSystemMessage(Component.literal("Aucune construction a annuler.").withStyle(ChatFormatting.YELLOW)); + return; + } + restore(player, snapshot, false); + REDO_HISTORY.computeIfAbsent(player.getUUID(), ignored -> new ArrayDeque<>()).push(snapshot); + player.sendSystemMessage(Component.literal("Construction annulee.").withStyle(ChatFormatting.YELLOW)); + } + + private static void redoPlacement(ServerPlayer player) { + Deque redo = REDO_HISTORY.computeIfAbsent(player.getUUID(), ignored -> new ArrayDeque<>()); + PlacementSnapshot snapshot = redo.pollFirst(); + if (snapshot == null) { + player.sendSystemMessage(Component.literal("Aucune construction a retablir.").withStyle(ChatFormatting.YELLOW)); + return; + } + restore(player, snapshot, true); + pushUndo(player.getUUID(), snapshot); + player.sendSystemMessage(Component.literal("Construction retablie.").withStyle(ChatFormatting.GREEN)); + } + + private static void restore(ServerPlayer player, PlacementSnapshot snapshot, boolean after) { + List changes = snapshot.changes(); + if (after) { + for (BlockChange change : changes) { + player.level().setBlock(change.pos(), change.after(), 3); + } + return; + } + for (int index = changes.size() - 1; index >= 0; index--) { + BlockChange change = changes.get(index); + player.level().setBlock(change.pos(), change.before(), 3); + } + } + + private static void pushUndo(UUID playerId, PlacementSnapshot snapshot) { + Deque undo = UNDO_HISTORY.computeIfAbsent(playerId, ignored -> new ArrayDeque<>()); + undo.push(snapshot); + while (undo.size() > MAX_PLACEMENT_HISTORY) { + undo.removeLast(); + } + } + + private static Optional block(String blockId) { + Identifier id = Identifier.tryParse(blockId == null ? "" : blockId); + return id == null ? Optional.empty() : BuiltInRegistries.BLOCK.getOptional(id); + } + + private record BlockChange(BlockPos pos, BlockState before, BlockState after) { + } + + private record PlacementSnapshot(List changes) { + } +} diff --git a/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelProject.java b/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelProject.java new file mode 100644 index 0000000..4f1cb95 --- /dev/null +++ b/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelProject.java @@ -0,0 +1,42 @@ +package fr.koka99cab.computer.voxel; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +public record ComputerVoxelProject( + String id, + String name, + int width, + int height, + int depth, + List palette, + Map cells, + long createdAt, + long updatedAt +) { + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.STRING.fieldOf("id").forGetter(ComputerVoxelProject::id), + Codec.STRING.optionalFieldOf("name", "Untitled").forGetter(ComputerVoxelProject::name), + Codec.INT.optionalFieldOf("width", 0).forGetter(ComputerVoxelProject::width), + Codec.INT.optionalFieldOf("height", 0).forGetter(ComputerVoxelProject::height), + Codec.INT.optionalFieldOf("depth", 0).forGetter(ComputerVoxelProject::depth), + Codec.STRING.listOf().optionalFieldOf("palette", List.of()).forGetter(ComputerVoxelProject::palette), + Codec.unboundedMap(Codec.STRING, Codec.STRING).optionalFieldOf("cells", Map.of()).forGetter(ComputerVoxelProject::cells), + Codec.LONG.optionalFieldOf("created_at", 0L).forGetter(ComputerVoxelProject::createdAt), + Codec.LONG.optionalFieldOf("updated_at", 0L).forGetter(ComputerVoxelProject::updatedAt) + ).apply(instance, ComputerVoxelProject::new)); + + public ComputerVoxelProject { + id = id == null || id.isBlank() ? "voxel-project" : id.strip(); + name = name == null || name.isBlank() ? "Untitled" : name.strip(); + palette = List.copyOf(palette); + cells = new LinkedHashMap<>(cells); + } + + public static ComputerVoxelProject empty() { + return new ComputerVoxelProject("empty", "Empty", 1, 1, 1, List.of(), Map.of(), 0L, 0L); + } +} diff --git a/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelRequirements.java b/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelRequirements.java new file mode 100644 index 0000000..7d216fc --- /dev/null +++ b/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelRequirements.java @@ -0,0 +1,55 @@ +package fr.koka99cab.computer.voxel; + +import java.util.ArrayList; +import java.util.Comparator; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +public final class ComputerVoxelRequirements { + private ComputerVoxelRequirements() { + } + + public static Map requiredBlockCounts(ComputerVoxelProject project) { + Map counts = new LinkedHashMap<>(); + if (project == null) { + return counts; + } + for (String blockId : project.cells().values()) { + if (blockId != null && !blockId.isBlank()) { + counts.merge(blockId, 1, Integer::sum); + } + } + return sortedByCount(counts); + } + + public static String formatCounts(Map counts, int limit) { + if (counts.isEmpty()) { + return "aucun"; + } + List parts = new ArrayList<>(); + int index = 0; + for (Map.Entry entry : counts.entrySet()) { + if (index >= limit) { + parts.add("+" + (counts.size() - limit)); + break; + } + parts.add(shortId(entry.getKey()) + " x" + entry.getValue()); + index++; + } + return String.join(", ", parts); + } + + public static String shortId(String id) { + int split = id.indexOf(':'); + return split >= 0 ? id.substring(split + 1) : id; + } + + private static Map sortedByCount(Map counts) { + Map sorted = new LinkedHashMap<>(); + counts.entrySet().stream() + .sorted(Comparator.>comparingInt(Map.Entry::getValue).reversed().thenComparing(Map.Entry::getKey)) + .forEach(entry -> sorted.put(entry.getKey(), entry.getValue())); + return sorted; + } +} diff --git a/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelValidator.java b/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelValidator.java new file mode 100644 index 0000000..70ec17e --- /dev/null +++ b/Gameplay/computer/src/main/java/fr/koka99cab/computer/voxel/ComputerVoxelValidator.java @@ -0,0 +1,100 @@ +package fr.koka99cab.computer.voxel; + +import java.util.HashSet; +import java.util.Set; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.Identifier; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.EmptyBlockGetter; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockState; + +public final class ComputerVoxelValidator { + public static final int MAX_DIMENSION = 32; + public static final int MAX_CELLS = 8192; + public static final int MAX_PALETTE = 1024; + + private ComputerVoxelValidator() { + } + + public static ValidationResult validate(ComputerVoxelProject project) { + if (project == null) { + return ValidationResult.error("Projet absent."); + } + if (project.id() == null || project.id().isBlank()) { + return ValidationResult.error("Identifiant de projet invalide."); + } + if (!validDimension(project.width()) || !validDimension(project.height()) || !validDimension(project.depth())) { + return ValidationResult.error("Dimensions invalides. Maximum " + MAX_DIMENSION + " par axe."); + } + if (project.cells().size() > MAX_CELLS) { + return ValidationResult.error("Structure trop grande. Maximum " + MAX_CELLS + " voxels."); + } + if (project.palette().size() > MAX_PALETTE) { + return ValidationResult.error("Palette trop grande. Maximum " + MAX_PALETTE + " blocs."); + } + + Set palette = new HashSet<>(project.palette()); + for (String blockId : palette) { + if (!isBuildableFullBlock(blockId)) { + return ValidationResult.error("Bloc non constructible dans la palette: " + blockId); + } + } + + for (var entry : project.cells().entrySet()) { + BlockPos cell = ComputerVoxelPlacement.parseCell(entry.getKey()); + if (cell == null || cell.getX() < 0 || cell.getY() < 0 || cell.getZ() < 0 || cell.getX() >= project.width() || cell.getY() >= project.height() || cell.getZ() >= project.depth()) { + return ValidationResult.error("Cellule hors limites: " + entry.getKey()); + } + String blockId = entry.getValue(); + if (!palette.contains(blockId)) { + return ValidationResult.error("Cellule hors palette: " + blockId); + } + if (!isBuildableFullBlock(blockId)) { + return ValidationResult.error("Bloc non constructible dans une cellule: " + blockId); + } + } + return ValidationResult.ok(); + } + + public static boolean isBuildableFullBlock(String blockId) { + Identifier id = Identifier.tryParse(blockId); + if (id == null) { + return false; + } + Block block = BuiltInRegistries.BLOCK.getOptional(id).orElse(Blocks.AIR); + if (block == Blocks.AIR || block.asItem() == Items.AIR) { + return false; + } + BlockState state = block.defaultBlockState(); + return !state.isAir() && state.isCollisionShapeFullBlock(EmptyBlockGetter.INSTANCE, BlockPos.ZERO); + } + + public static boolean isOpaquePaletteBlock(String blockId) { + if (!isBuildableFullBlock(blockId)) { + return false; + } + Identifier id = Identifier.tryParse(blockId); + if (id == null) { + return false; + } + BlockState state = BuiltInRegistries.BLOCK.getOptional(id).orElse(Blocks.AIR).defaultBlockState(); + return state.canOcclude() && state.isSolidRender(); + } + + private static boolean validDimension(int value) { + return value > 0 && value <= MAX_DIMENSION; + } + + public record ValidationResult(boolean valid, String message) { + public static ValidationResult ok() { + return new ValidationResult(true, ""); + } + + public static ValidationResult error(String message) { + return new ValidationResult(false, message == null ? "Projet invalide." : message); + } + } +} diff --git a/Gameplay/computer/src/main/resources/assets/computer/blockstates/computer.json b/Gameplay/computer/src/main/resources/assets/computer/blockstates/computer.json new file mode 100644 index 0000000..4bc5c7a --- /dev/null +++ b/Gameplay/computer/src/main/resources/assets/computer/blockstates/computer.json @@ -0,0 +1,19 @@ +{ + "variants": { + "facing=east": { + "model": "computer:block/computer", + "y": 90 + }, + "facing=north": { + "model": "computer:block/computer" + }, + "facing=south": { + "model": "computer:block/computer", + "y": 180 + }, + "facing=west": { + "model": "computer:block/computer", + "y": 270 + } + } +} diff --git a/Gameplay/computer/src/main/resources/assets/computer/data/blocotech_descriptions.json b/Gameplay/computer/src/main/resources/assets/computer/data/blocotech_descriptions.json new file mode 100644 index 0000000..52d348c --- /dev/null +++ b/Gameplay/computer/src/main/resources/assets/computer/data/blocotech_descriptions.json @@ -0,0 +1 @@ +{"kind":"computer-blocotech-descriptions","minecraft_version":"1.21.11","entry_count":1168,"entries":[{"id":"minecraft:acacia_button","name":"Acacia Button","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","category":"building","family":"acacia_button","primary":"#a85a32","hue_group":"red"},{"id":"minecraft:acacia_door","name":"Acacia Door","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","category":"building","family":"acacia","primary":"#a85f3d","hue_group":"red"},{"id":"minecraft:acacia_fence","name":"Acacia Fence","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","category":"building","family":"acacia","primary":"#a85a32","hue_group":"red"},{"id":"minecraft:acacia_fence_gate","name":"Acacia Fence Gate","description":"A fence gate is a block that shares the functions of both the door and the fence.","category":"building","family":"acacia_fence_gate","primary":"#a85a32","hue_group":"red"},{"id":"minecraft:acacia_hanging_sign","name":"Acacia Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"acacia_hanging_sign","primary":"#af5d3c","hue_group":"red"},{"id":"minecraft:acacia_leaves","name":"Acacia Leaves","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","category":"natural","family":"acacia","primary":"#959595","hue_group":"neutral"},{"id":"minecraft:acacia_log","name":"Acacia Log","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","category":"natural","family":"acacia","primary":"#676157","hue_group":"neutral"},{"id":"minecraft:acacia_planks","name":"Acacia Planks","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","category":"building","family":"acacia","primary":"#a85a32","hue_group":"red"},{"id":"minecraft:acacia_pressure_plate","name":"Acacia Pressure Plate","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","category":"building","family":"acacia_pressure_plate","primary":"#a85a32","hue_group":"red"},{"id":"minecraft:acacia_sapling","name":"Acacia Sapling","description":"A sapling is a non-solid block that can be grown into a tree.","category":"natural","family":"acacia","primary":"#777618","hue_group":"yellow"},{"id":"minecraft:acacia_shelf","name":"Acacia Shelf","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","category":"","family":"acacia_shelf","primary":"#9c5636","hue_group":"red"},{"id":"minecraft:acacia_sign","name":"Acacia Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"acacia_sign","primary":"#a85a32","hue_group":"red"},{"id":"minecraft:acacia_slab","name":"Acacia Slab","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","category":"building","family":"acacia","primary":"#a85a32","hue_group":"red"},{"id":"minecraft:acacia_stairs","name":"Acacia Stairs","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","category":"building","family":"acacia","primary":"#a85a32","hue_group":"red"},{"id":"minecraft:acacia_trapdoor","name":"Acacia Trapdoor","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","category":"building","family":"acacia_trapdoor","primary":"#9d5733","hue_group":"red"},{"id":"minecraft:acacia_wall_hanging_sign","name":"Acacia Wall Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"acacia_wall_hanging_sign","primary":"#af5d3c","hue_group":"red"},{"id":"minecraft:acacia_wall_sign","name":"Acacia Wall Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"acacia_wall_sign","primary":"#a85a32","hue_group":"red"},{"id":"minecraft:acacia_wood","name":"Acacia Wood","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","category":"building","family":"acacia","primary":"#676157","hue_group":"neutral"},{"id":"minecraft:activator_rail","name":"Activator Rail","description":"An activator rail is a type of rail that, if powered, can eject entities from regular minecarts, lock hopper minecarts, ignite TNT minecarts, and activate the command in a command block minecart. If not powered, it can only unlock locked hopper minecarts.","category":"redstone","family":"activator_rail","primary":"#73574a","hue_group":"red"},{"id":"minecraft:air","name":"Air","description":"Air is an invisible block used to define unoccupied space where other blocks and items could exist; it represents the absence of a block or an item. It is one of the few blocks in the game that players cannot normally interact with. Cave air‌[Java Edition only] is a variant found only underground in carver caves and some generated structures along with features like lava lakes. Void air‌[Java Edition only] is a variant used internally for the 'air' in unloaded chunks and outside of the world height limits (above Y=319 and below Y=-64 in the Overworld, and above Y=255 and below Y=0 in the Nether and the End dimensions).","category":"technical","family":"air","primary":"#20557c","hue_group":"cyan"},{"id":"minecraft:allium","name":"Allium","description":"An allium is a flower that can be crafted into magenta dye and suspicious stew.","category":"","family":"allium","primary":"#9f89b8","hue_group":"blue"},{"id":"minecraft:amethyst_block","name":"Amethyst Block","description":"A block of amethyst, known internally as an amethyst block, is a block found in amethyst geodes or crafted from amethyst shards. It can be placed next to a sculk sensor to \"relay\" received vibrations to other sculk sensors.","category":"resource","family":"amethyst_block","primary":"#8662bf","hue_group":"blue"},{"id":"minecraft:amethyst_cluster","name":"Amethyst Cluster","description":"Amethyst buds are the first three stages of growth of amethyst clusters, which grow on budding amethyst. Amethyst clusters are the fourth and final growth stage of amethyst buds, which drop amethyst shards when mined.","category":"","family":"amethyst_cluster","primary":"#a47fcf","hue_group":"blue"},{"id":"minecraft:ancient_debris","name":"Ancient Debris","description":"Ancient debris is a rare ore found in the Nether, and is the main source of netherite scraps, which can then be used to craft netherite ingots. Its high blast resistance makes it immune to normal explosions. In item form, it floats on lava and is completely immune to any form of fire.","category":"","family":"ancient_debris","primary":"#604038","hue_group":"red"},{"id":"minecraft:andesite","name":"Andesite","description":"Andesite is a block of igneous rock, most often found in large pockets in the ground.","category":"","family":"andesite","primary":"#888889","hue_group":"neutral"},{"id":"minecraft:andesite_slab","name":"Andesite Slab","description":"An andesite slab is a decorative slab variant of andesite that does not generate naturally and is used for building.","category":"building","family":"andesite","primary":"#888889","hue_group":"neutral"},{"id":"minecraft:andesite_stairs","name":"Andesite Stairs","description":"Andesite stairs are a decorative stairs variant of andesite used for building.","category":"building","family":"andesite","primary":"#888889","hue_group":"neutral"},{"id":"minecraft:andesite_wall","name":"Andesite Wall","description":"An andesite wall is a decorative wall variant of andesite that does not generate naturally and is used for building.","category":"building","family":"andesite_wall","primary":"#888889","hue_group":"neutral"},{"id":"minecraft:anvil","name":"Anvil","description":"An anvil is a gravity-affected utility block used to rename items, combine enchantments and repair items without losing the enchantments. An anvil has limited durability, and as it is used or dropped too far, gradually becomes a chipped anvil, then a damaged anvil, then breaks and vanishes.","category":"utility","family":"anvil","primary":"#454545","hue_group":"neutral"},{"id":"minecraft:attached_melon_stem","name":"Attached Melon Stem","description":"Melon seeds are items obtained from melon slices that can be used to grow melon stems. Melon stems are plants grown on farmland that, over time, grow melons on dirt, mud and moss blocks adjacent to them.","category":"natural","family":"attached_melon_stem","primary":"#8e8e8e","hue_group":"neutral"},{"id":"minecraft:attached_pumpkin_stem","name":"Attached Pumpkin Stem","description":"Pumpkin seeds are items obtained from pumpkins that can be used to grow pumpkin stems. Pumpkin stems are plants grown on farmland that, over time, grow pumpkins on dirt, mud and moss blocks adjacent to them.","category":"natural","family":"attached_pumpkin_stem","primary":"#8b8b8b","hue_group":"neutral"},{"id":"minecraft:azalea","name":"Azalea","description":"An azalea is a solid block that can be grown into an azalea tree.","category":"natural","family":"azalea","primary":"#667d30","hue_group":"yellow"},{"id":"minecraft:azalea_leaves","name":"Azalea Leaves","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","category":"natural","family":"azalea","primary":"#5a732c","hue_group":"yellow"},{"id":"minecraft:azure_bluet","name":"Azure Bluet","description":"An azure bluet is a flower that can be crafted into light gray dye and suspicious stew.","category":"","family":"azure_bluet","primary":"#a9cd7f","hue_group":"yellow"},{"id":"minecraft:bamboo","name":"Bamboo","description":"Bamboo is a versatile, fast-growing plant found primarily in jungles, used for crafting (particularly scaffolding and bamboo wood), smelting, and breeding pandas. A bamboo shoot is the initial non-solid sapling form of planted bamboo.","category":"natural","family":"bamboo","primary":"#5e9014","hue_group":"yellow"},{"id":"minecraft:bamboo_block","name":"Bamboo Block","description":"A block of bamboo is a log-like block made of bamboo that can be used to craft bamboo planks.","category":"natural","family":"bamboo_block","primary":"#7f903a","hue_group":"yellow"},{"id":"minecraft:bamboo_button","name":"Bamboo Button","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","category":"building","family":"bamboo_button","primary":"#c1ad50","hue_group":"yellow"},{"id":"minecraft:bamboo_door","name":"Bamboo Door","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","category":"building","family":"bamboo","primary":"#bfab51","hue_group":"yellow"},{"id":"minecraft:bamboo_fence","name":"Bamboo Fence","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","category":"building","family":"bamboo","primary":"#cfba59","hue_group":"yellow"},{"id":"minecraft:bamboo_fence_gate","name":"Bamboo Fence Gate","description":"A fence gate is a block that shares the functions of both the door and the fence.","category":"building","family":"bamboo_fence_gate","primary":"#ceba57","hue_group":"yellow"},{"id":"minecraft:bamboo_hanging_sign","name":"Bamboo Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"bamboo_hanging_sign","primary":"#c1ad50","hue_group":"yellow"},{"id":"minecraft:bamboo_mosaic","name":"Bamboo Mosaic","description":"A bamboo mosaic is a decorative block crafted out of bamboo slabs.","category":"natural","family":"bamboo_mosaic","primary":"#beaa4e","hue_group":"yellow"},{"id":"minecraft:bamboo_mosaic_slab","name":"Bamboo Mosaic Slab","description":"A bamboo mosaic slab is a decorative slab variant of bamboo mosaics that does not generate naturally and is used for building.","category":"building","family":"bamboo_mosaic","primary":"#beaa4e","hue_group":"yellow"},{"id":"minecraft:bamboo_mosaic_stairs","name":"Bamboo Mosaic Stairs","description":"Bamboo mosaic stairs are a decorative stairs variant of bamboo mosaics that does not generate naturally and is used for building.","category":"building","family":"bamboo_mosaic","primary":"#beaa4e","hue_group":"yellow"},{"id":"minecraft:bamboo_planks","name":"Bamboo Planks","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","category":"building","family":"bamboo","primary":"#c1ad50","hue_group":"yellow"},{"id":"minecraft:bamboo_pressure_plate","name":"Bamboo Pressure Plate","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","category":"building","family":"bamboo_pressure_plate","primary":"#c1ad50","hue_group":"yellow"},{"id":"minecraft:bamboo_sapling","name":"Bamboo Sapling","description":"Bamboo is a versatile, fast-growing plant found primarily in jungles, used for crafting (particularly scaffolding and bamboo wood), smelting, and breeding pandas. A bamboo shoot is the initial non-solid sapling form of planted bamboo.","category":"natural","family":"bamboo","primary":"#5c5924","hue_group":"yellow"},{"id":"minecraft:bamboo_shelf","name":"Bamboo Shelf","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","category":"natural","family":"bamboo_shelf","primary":"#b6a44c","hue_group":"yellow"},{"id":"minecraft:bamboo_sign","name":"Bamboo Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"bamboo_sign","primary":"#c1ad50","hue_group":"yellow"},{"id":"minecraft:bamboo_slab","name":"Bamboo Slab","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","category":"building","family":"bamboo","primary":"#c1ad50","hue_group":"yellow"},{"id":"minecraft:bamboo_stairs","name":"Bamboo Stairs","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","category":"building","family":"bamboo","primary":"#c1ad50","hue_group":"yellow"},{"id":"minecraft:bamboo_trapdoor","name":"Bamboo Trapdoor","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","category":"building","family":"bamboo_trapdoor","primary":"#c7b355","hue_group":"yellow"},{"id":"minecraft:bamboo_wall_hanging_sign","name":"Bamboo Wall Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"bamboo_wall_hanging_sign","primary":"#c1ad50","hue_group":"yellow"},{"id":"minecraft:bamboo_wall_sign","name":"Bamboo Wall Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"bamboo_wall_sign","primary":"#c1ad50","hue_group":"yellow"},{"id":"minecraft:barrel","name":"Barrel","description":"A barrel is a solid block used to store items. Unlike a chest, it cannot connect to other barrels. It also serves as a fisherman's job site block.","category":"utility","family":"barrel","primary":"#87653a","hue_group":"yellow"},{"id":"minecraft:barrier","name":"Barrier","description":"A barrier is an invisible block used to create solid boundaries.","category":"technical","family":"barrier","primary":"#d50000","hue_group":"red"},{"id":"minecraft:basalt","name":"Basalt","description":"Basalt is a block found in the Nether.","category":"natural","family":"basalt","primary":"#49494e","hue_group":"neutral"},{"id":"minecraft:beacon","name":"Beacon","description":"A beacon is a block that can be placed in view of the sky, on top of a pyramid made of valuable mineral blocks, to activate it. Once active, it projects a beam upward and can be set to provide constant status effects to all players in a radius around it. A beacon's range and available effects depend on the size of its pyramid base, between one and four layers.","category":"utility","family":"beacon","primary":"#76ddd7","hue_group":"cyan"},{"id":"minecraft:bedrock","name":"Bedrock","description":"Bedrock is an indestructible block found in all three dimensions.","category":"technical","family":"bedrock","primary":"#555555","hue_group":"neutral"},{"id":"minecraft:bee_nest","name":"Bee Nest","description":"Bee nests are blocks found attached to certain trees. They house bees, which fill their homes with honey made from gathered flower nectar. Full bee nests can be harvested for honeycombs (using shears) or honey bottles (using glass bottles). Bees will attack players who harvest or break their homes without utilizing campfires or Silk Touch, respectively.","category":"","family":"bee_nest","primary":"#caa04b","hue_group":"yellow"},{"id":"minecraft:beehive","name":"Beehive","description":"Beehives are craftable blocks that house bees, which fill their homes with honey made from gathered flower nectar. Full beehives can be harvested for honeycombs (using shears) or honey bottles (using glass bottles). Bees will attack players who harvest or break their homes without utilizing campfires or Silk Touch, respectively.","category":"","family":"beehive","primary":"#b5925a","hue_group":"yellow"},{"id":"minecraft:beetroots","name":"Beetroots","description":"A beetroot is a food and dye ingredient.","category":"natural","family":"beetroots","primary":"#428a29","hue_group":"green"},{"id":"minecraft:bell","name":"Bell","description":"A bell is a block that can be rung by hand, with a projectile or using a redstone signal to make all nearby villagers run to their beds. In Java Edition, this also reveals all illager-related mobs in a large radius. It can be found in villages or purchased from villagers, and cannot be crafted.","category":"utility","family":"bell","primary":"#bd942a","hue_group":"yellow"},{"id":"minecraft:big_dripleaf","name":"Big Dripleaf","description":"A big dripleaf is a plant that generates within lush caves. Its leaf is a temporary platform; when stood on, it tilts down and drops its burden, resetting a few seconds later. The leaf can be powered to prevent it from tilting.","category":"natural","family":"big_dripleaf","primary":"#708e34","hue_group":"yellow"},{"id":"minecraft:big_dripleaf_stem","name":"Big Dripleaf Stem","description":"A big dripleaf is a plant that generates within lush caves. Its leaf is a temporary platform; when stood on, it tilts down and drops its burden, resetting a few seconds later. The leaf can be powered to prevent it from tilting.","category":"natural","family":"big_dripleaf_stem","primary":"#5b732e","hue_group":"yellow"},{"id":"minecraft:birch_button","name":"Birch Button","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","category":"building","family":"birch_button","primary":"#c0af79","hue_group":"yellow"},{"id":"minecraft:birch_door","name":"Birch Door","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","category":"building","family":"birch","primary":"#dcd2b0","hue_group":"yellow"},{"id":"minecraft:birch_fence","name":"Birch Fence","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","category":"building","family":"birch","primary":"#c0af79","hue_group":"yellow"},{"id":"minecraft:birch_fence_gate","name":"Birch Fence Gate","description":"A fence gate is a block that shares the functions of both the door and the fence.","category":"building","family":"birch_fence_gate","primary":"#c0af79","hue_group":"yellow"},{"id":"minecraft:birch_hanging_sign","name":"Birch Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"birch_hanging_sign","primary":"#c5b076","hue_group":"yellow"},{"id":"minecraft:birch_leaves","name":"Birch Leaves","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","category":"natural","family":"birch","primary":"#838182","hue_group":"neutral"},{"id":"minecraft:birch_log","name":"Birch Log","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","category":"natural","family":"birch","primary":"#d9d7d2","hue_group":"neutral"},{"id":"minecraft:birch_planks","name":"Birch Planks","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","category":"building","family":"birch","primary":"#c0af79","hue_group":"yellow"},{"id":"minecraft:birch_pressure_plate","name":"Birch Pressure Plate","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","category":"building","family":"birch_pressure_plate","primary":"#c0af79","hue_group":"yellow"},{"id":"minecraft:birch_sapling","name":"Birch Sapling","description":"A sapling is a non-solid block that can be grown into a tree.","category":"natural","family":"birch","primary":"#80a150","hue_group":"yellow"},{"id":"minecraft:birch_shelf","name":"Birch Shelf","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","category":"","family":"birch_shelf","primary":"#af9c6a","hue_group":"yellow"},{"id":"minecraft:birch_sign","name":"Birch Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"birch_sign","primary":"#c0af79","hue_group":"yellow"},{"id":"minecraft:birch_slab","name":"Birch Slab","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","category":"building","family":"birch","primary":"#c0af79","hue_group":"yellow"},{"id":"minecraft:birch_stairs","name":"Birch Stairs","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","category":"building","family":"birch","primary":"#c0af79","hue_group":"yellow"},{"id":"minecraft:birch_trapdoor","name":"Birch Trapdoor","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","category":"building","family":"birch_trapdoor","primary":"#cfc29d","hue_group":"yellow"},{"id":"minecraft:birch_wall_hanging_sign","name":"Birch Wall Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"birch_wall_hanging_sign","primary":"#c5b076","hue_group":"yellow"},{"id":"minecraft:birch_wall_sign","name":"Birch Wall Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"birch_wall_sign","primary":"#c0af79","hue_group":"yellow"},{"id":"minecraft:birch_wood","name":"Birch Wood","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","category":"building","family":"birch","primary":"#d9d7d2","hue_group":"neutral"},{"id":"minecraft:black_banner","name":"Black Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"black_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:black_bed","name":"Black Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"black_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:black_candle","name":"Black Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"black_candle","primary":"#26253a","hue_group":"blue"},{"id":"minecraft:black_candle_cake","name":"Black Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"black_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:black_carpet","name":"Black Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"black_carpet","primary":"#15151a","hue_group":"neutral"},{"id":"minecraft:black_concrete","name":"Black Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"black_concrete","primary":"#080a0f","hue_group":"blue"},{"id":"minecraft:black_concrete_powder","name":"Black Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"black_concrete_powder","primary":"#191b20","hue_group":"blue"},{"id":"minecraft:black_glazed_terracotta","name":"Black Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"black_glazed_terracotta","primary":"#441e20","hue_group":"red"},{"id":"minecraft:black_shulker_box","name":"Black Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"black_shulker_box","primary":"#19191e","hue_group":"neutral"},{"id":"minecraft:black_stained_glass","name":"Black Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"black_stained_glass","primary":"#191919","hue_group":"neutral"},{"id":"minecraft:black_stained_glass_pane","name":"Black Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"black_stained_glass_pane","primary":"#181818","hue_group":"neutral"},{"id":"minecraft:black_terracotta","name":"Black Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"black_terracotta","primary":"#251710","hue_group":"red"},{"id":"minecraft:black_wall_banner","name":"Black Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"black_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:black_wool","name":"Black Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"black_wool","primary":"#15151a","hue_group":"neutral"},{"id":"minecraft:blackstone","name":"Blackstone","description":"Blackstone is a dark-colored block that functions similar to cobblestone or cobbled deepslate. It can be found only in the Nether.","category":"","family":"blackstone","primary":"#2a2429","hue_group":"neutral"},{"id":"minecraft:blackstone_slab","name":"Blackstone Slab","description":"A blackstone slab is a decorative slab variant of blackstone that generates in bastion remnants and is used for building.","category":"building","family":"blackstone","primary":"#2a242a","hue_group":"neutral"},{"id":"minecraft:blackstone_stairs","name":"Blackstone Stairs","description":"Blackstone stairs are a decorative stairs variant of blackstone that generates in bastion remnants and is used for building.","category":"building","family":"blackstone","primary":"#2a242a","hue_group":"neutral"},{"id":"minecraft:blackstone_wall","name":"Blackstone Wall","description":"A blackstone wall is a decorative wall variant of blackstone that generates in bastion remnants and is used for building.","category":"building","family":"blackstone_wall","primary":"#2a2429","hue_group":"neutral"},{"id":"minecraft:blast_furnace","name":"Blast Furnace","description":"A blast furnace is a block that smelts ores and metal items twice as quickly as a furnace, but cannot smelt anything else. It also serves as an armorer's job site block.","category":"utility","family":"blast_furnace","primary":"#515051","hue_group":"neutral"},{"id":"minecraft:blue_banner","name":"Blue Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"blue_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:blue_bed","name":"Blue Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"blue_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:blue_candle","name":"Blue Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"blue_candle","primary":"#394ca1","hue_group":"blue"},{"id":"minecraft:blue_candle_cake","name":"Blue Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"blue_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:blue_carpet","name":"Blue Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"blue_carpet","primary":"#35399d","hue_group":"blue"},{"id":"minecraft:blue_concrete","name":"Blue Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"blue_concrete","primary":"#2d2f8f","hue_group":"blue"},{"id":"minecraft:blue_concrete_powder","name":"Blue Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"blue_concrete_powder","primary":"#4649a7","hue_group":"blue"},{"id":"minecraft:blue_glazed_terracotta","name":"Blue Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"blue_glazed_terracotta","primary":"#2f418b","hue_group":"blue"},{"id":"minecraft:blue_ice","name":"Blue Ice","description":"Blue ice is a solid block similar to packed ice and ice, but much more slippery. It is the fastest ice type for boat riding and can be used to generate basalt in conjunction with soul soil and lava.","category":"","family":"blue_ice","primary":"#74a8fd","hue_group":"blue"},{"id":"minecraft:blue_orchid","name":"Blue Orchid","description":"A blue orchid is a flower that generates exclusively in swamp biomes. It is used to craft light blue dye and suspicious stew.","category":"natural","family":"blue_orchid","primary":"#2fa2a8","hue_group":"cyan"},{"id":"minecraft:blue_shulker_box","name":"Blue Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"blue_shulker_box","primary":"#2c2e8c","hue_group":"blue"},{"id":"minecraft:blue_stained_glass","name":"Blue Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"blue_stained_glass","primary":"#334cb2","hue_group":"blue"},{"id":"minecraft:blue_stained_glass_pane","name":"Blue Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"blue_stained_glass_pane","primary":"#314aab","hue_group":"blue"},{"id":"minecraft:blue_terracotta","name":"Blue Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"blue_terracotta","primary":"#4a3c5b","hue_group":"blue"},{"id":"minecraft:blue_wall_banner","name":"Blue Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"blue_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:blue_wool","name":"Blue Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"blue_wool","primary":"#35399d","hue_group":"blue"},{"id":"minecraft:bone_block","name":"Bone Block","description":"Bone blocks are storage blocks equivalent to 9 pieces of bone meal.","category":"","family":"bone_block","primary":"#e5e2d0","hue_group":"yellow"},{"id":"minecraft:bookshelf","name":"Bookshelf","description":"A bookshelf is a block that improves enchantments applied with an enchanting table when placed around one, up to a maximum of fifteen bookshelves, at the expense of level requirement.","category":"utility","family":"bookshelf","primary":"#755f3c","hue_group":"yellow"},{"id":"minecraft:brain_coral","name":"Brain Coral","description":"Coral is a type of non-solid block that comes in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"brain_coral","primary":"#c65598","hue_group":"purple"},{"id":"minecraft:brain_coral_block","name":"Brain Coral Block","description":"A coral block is a solid block that comes in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"brain_coral_block","primary":"#cf5b9f","hue_group":"purple"},{"id":"minecraft:brain_coral_fan","name":"Brain Coral Fan","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"brain_coral_fan","primary":"#cb549a","hue_group":"purple"},{"id":"minecraft:brain_coral_wall_fan","name":"Brain Coral Wall Fan","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"brain_coral_wall_fan","primary":"#cb549a","hue_group":"purple"},{"id":"minecraft:brewing_stand","name":"Brewing Stand","description":"A brewing stand is a block used for brewing potions using water bottles and suitable ingredients. It also serves as a cleric's job site block.","category":"utility","family":"brewing_stand","primary":"#7a6551","hue_group":"red"},{"id":"minecraft:brick_slab","name":"Brick Slab","description":"A brick slab is a decorative slab variant of bricks that generates in trail ruins and is used for building.","category":"building","family":"brick","primary":"#976253","hue_group":"red"},{"id":"minecraft:brick_stairs","name":"Brick Stairs","description":"Brick stairs are a decorative stairs variant of bricks that generates in trail ruins and is used for building.","category":"building","family":"brick","primary":"#976253","hue_group":"red"},{"id":"minecraft:brick_wall","name":"Brick Wall","description":"A brick wall is a decorative wall variant of bricks that generates in trail ruins and is used for building.","category":"building","family":"brick_wall","primary":"#976253","hue_group":"red"},{"id":"minecraft:bricks","name":"Bricks","description":"Bricks are a decorative building block.","category":"","family":"bricks","primary":"#976253","hue_group":"red"},{"id":"minecraft:brown_banner","name":"Brown Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"brown_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:brown_bed","name":"Brown Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"brown_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:brown_candle","name":"Brown Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"brown_candle","primary":"#704629","hue_group":"red"},{"id":"minecraft:brown_candle_cake","name":"Brown Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"brown_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:brown_carpet","name":"Brown Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"brown_carpet","primary":"#724829","hue_group":"red"},{"id":"minecraft:brown_concrete","name":"Brown Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"brown_concrete","primary":"#603c20","hue_group":"red"},{"id":"minecraft:brown_concrete_powder","name":"Brown Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"brown_concrete_powder","primary":"#7e5536","hue_group":"red"},{"id":"minecraft:brown_glazed_terracotta","name":"Brown Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"brown_glazed_terracotta","primary":"#786a56","hue_group":"yellow"},{"id":"minecraft:brown_mushroom","name":"Brown Mushroom","description":"A brown mushroom is a variety of fungus that grows and spreads in dark areas. Brown mushrooms can generate small or huge in size.","category":"natural","family":"brown_mushroom","primary":"#9a755c","hue_group":"red"},{"id":"minecraft:brown_mushroom_block","name":"Brown Mushroom Block","description":"A mushroom block is a solid block that makes up a huge mushroom, which consists of a mushroom stem and brown mushroom blocks or red mushroom blocks, depending on the color of the huge mushroom.","category":"natural","family":"brown_mushroom_block","primary":"#957051","hue_group":"red"},{"id":"minecraft:brown_shulker_box","name":"Brown Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"brown_shulker_box","primary":"#6a4224","hue_group":"red"},{"id":"minecraft:brown_stained_glass","name":"Brown Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"brown_stained_glass","primary":"#664c33","hue_group":"red"},{"id":"minecraft:brown_stained_glass_pane","name":"Brown Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"brown_stained_glass_pane","primary":"#624a31","hue_group":"yellow"},{"id":"minecraft:brown_terracotta","name":"Brown Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"brown_terracotta","primary":"#4d3324","hue_group":"red"},{"id":"minecraft:brown_wall_banner","name":"Brown Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"brown_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:brown_wool","name":"Brown Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"brown_wool","primary":"#724829","hue_group":"red"},{"id":"minecraft:bubble_column","name":"Bubble Column","description":"A bubble column is an air-providing vertical water current. It is created by magma blocks and soul sand and, depending on the block used, will either pull entities downward or push them upward, respectively.","category":"","family":"bubble_column","primary":"#b1b1b1","hue_group":"neutral"},{"id":"minecraft:bubble_coral","name":"Bubble Coral","description":"Coral is a type of non-solid block that comes in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"bubble_coral","primary":"#a118a0","hue_group":"purple"},{"id":"minecraft:bubble_coral_block","name":"Bubble Coral Block","description":"A coral block is a solid block that comes in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"bubble_coral_block","primary":"#a51aa2","hue_group":"purple"},{"id":"minecraft:bubble_coral_fan","name":"Bubble Coral Fan","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"bubble_coral_fan","primary":"#a0219f","hue_group":"purple"},{"id":"minecraft:bubble_coral_wall_fan","name":"Bubble Coral Wall Fan","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"bubble_coral_wall_fan","primary":"#a0219f","hue_group":"purple"},{"id":"minecraft:budding_amethyst","name":"Budding Amethyst","description":"Budding amethyst is a fragile block found in amethyst geodes that grows amethyst clusters over time. It drops nothing if it breaks, and cannot be moved from where it is found.","category":"","family":"budding_amethyst","primary":"#8460bb","hue_group":"blue"},{"id":"minecraft:bush","name":"Bush","description":"A bush is a non-solid plant block found in many grassy biomes. Its color is biome-dependent, and matches the color of grass blocks.","category":"","family":"bush","primary":"#787978","hue_group":"neutral"},{"id":"minecraft:cactus","name":"Cactus","description":"A cactus is a plant block found in deserts and badlands. It grows over time and can sprout cactus flowers. It damages mobs and destroys minecarts and dropped items that touch it.","category":"","family":"cactus","primary":"#567f2b","hue_group":"yellow"},{"id":"minecraft:cactus_flower","name":"Cactus Flower","description":"A cactus flower is a type of flower that grows from cacti. It can be placed on any solid top surface or crafted into pink dye.","category":"natural","family":"cactus_flower","primary":"#d27987","hue_group":"red"},{"id":"minecraft:cake","name":"Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"","family":"cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:calcite","name":"Calcite","description":"Calcite is a block of carbonate mineral, which can be used as decoration.","category":"","family":"calcite","primary":"#dfe0dd","hue_group":"neutral"},{"id":"minecraft:calibrated_sculk_sensor","name":"Calibrated Sculk Sensor","description":"A calibrated sculk sensor is a craftable type of sculk sensor that functions similarly, but detects vibrations more quickly and from further away. Its amethyst-covered input side can be powered to make the sensor only detect vibrations from specific sources, depending on the signal strength used. Placing an amethyst block next to a sculk sensor allows it to \"relay\" detected vibrations to other sculk sensors.","category":"","family":"calibrated_sculk_sensor","primary":"#097b7f","hue_group":"cyan"},{"id":"minecraft:campfire","name":"Campfire","description":"A campfire is a block that can be used to cook food, pacify bees, or act as a spread-proof light source, a smoke signal, or a damaging trap.","category":"","family":"campfire","primary":"#4f4b44","hue_group":"neutral"},{"id":"minecraft:candle","name":"Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"","family":"candle","primary":"#e8c999","hue_group":"yellow"},{"id":"minecraft:candle_cake","name":"Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"","family":"candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:carrots","name":"Carrots","description":"A carrot is a food item obtained from carrot crops that can be used to plant them, eaten or used as a crafting ingredient. Carrot crops are planted in farmland and used to grow carrots.","category":"","family":"carrots","primary":"#2d6e28","hue_group":"green"},{"id":"minecraft:cartography_table","name":"Cartography Table","description":"A cartography table is a utility block used for cloning, zooming out, and locking maps. It also serves as a cartographer's job site block.","category":"utility","family":"cartography_table","primary":"#442c14","hue_group":"yellow"},{"id":"minecraft:carved_pumpkin","name":"Carved Pumpkin","description":"A carved pumpkin is a block obtained by using shears on a pumpkin. It is used to craft jack o'lanterns, build golems, and can be worn as a helmet.","category":"","family":"carved_pumpkin","primary":"#965411","hue_group":"yellow"},{"id":"minecraft:cauldron","name":"Cauldron","description":"A cauldron is a block that can contain water, lava or powder snow and, in certain situations, collect them from the environment. In Bedrock Edition, it can also hold dyed water or potions, and can be used to efficiently create tipped arrows. It also serves as a leatherworker's job site block.","category":"utility","family":"cauldron","primary":"#4a494a","hue_group":"neutral"},{"id":"minecraft:cave_air","name":"Cave Air","description":"Air is an invisible block used to define unoccupied space where other blocks and items could exist; it represents the absence of a block or an item. It is one of the few blocks in the game that players cannot normally interact with. Cave air‌[Java Edition only] is a variant found only underground in carver caves and some generated structures along with features like lava lakes. Void air‌[Java Edition only] is a variant used internally for the 'air' in unloaded chunks and outside of the world height limits (above Y=319 and below Y=-64 in the Overworld, and above Y=255 and below Y=0 in the Nether and the End dimensions).","category":"","family":"cave_air","primary":"#20557c","hue_group":"cyan"},{"id":"minecraft:cave_vines","name":"Cave Vines","description":"Glow berries are a food item obtained from cave vines and can be used to plant them. Cave vines are a climbable plant that hangs off ceilings and grows glow berries. Cave vines with glow berries produce light.","category":"natural","family":"cave_vines","primary":"#5a6d29","hue_group":"yellow"},{"id":"minecraft:cave_vines_plant","name":"Cave Vines Plant","description":"Glow berries are a food item obtained from cave vines and can be used to plant them. Cave vines are a climbable plant that hangs off ceilings and grows glow berries. Cave vines with glow berries produce light.","category":"natural","family":"cave_vines_plant","primary":"#586626","hue_group":"yellow"},{"id":"minecraft:chain_command_block","name":"Chain Command Block","description":"A command block is an indestructible block that can execute commands. Because it cannot be obtained, destroyed or used in Survival mode without cheats, it is primarily used in multiplayer servers, Creative worlds, and custom maps. There are 3 types of these blocks. An impulse command block is the default block type; it executes only once when activated. A chain command block executes every time when triggered. A repeating command block executes every game tick as long as it is activated.","category":"technical","family":"chain_command_block","primary":"#84a597","hue_group":"cyan"},{"id":"minecraft:cherry_button","name":"Cherry Button","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","category":"building","family":"cherry_button","primary":"#e3b3ad","hue_group":"red"},{"id":"minecraft:cherry_door","name":"Cherry Door","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","category":"building","family":"cherry","primary":"#dfaba5","hue_group":"red"},{"id":"minecraft:cherry_fence","name":"Cherry Fence","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","category":"building","family":"cherry","primary":"#e3b3ad","hue_group":"red"},{"id":"minecraft:cherry_fence_gate","name":"Cherry Fence Gate","description":"A fence gate is a block that shares the functions of both the door and the fence.","category":"building","family":"cherry_fence_gate","primary":"#e3b3ad","hue_group":"red"},{"id":"minecraft:cherry_hanging_sign","name":"Cherry Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"cherry_hanging_sign","primary":"#d79195","hue_group":"red"},{"id":"minecraft:cherry_leaves","name":"Cherry Leaves","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","category":"natural","family":"cherry","primary":"#e5adc2","hue_group":"red"},{"id":"minecraft:cherry_log","name":"Cherry Log","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","category":"natural","family":"cherry","primary":"#37212c","hue_group":"red"},{"id":"minecraft:cherry_planks","name":"Cherry Planks","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","category":"building","family":"cherry","primary":"#e3b3ad","hue_group":"red"},{"id":"minecraft:cherry_pressure_plate","name":"Cherry Pressure Plate","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","category":"building","family":"cherry_pressure_plate","primary":"#e3b3ad","hue_group":"red"},{"id":"minecraft:cherry_sapling","name":"Cherry Sapling","description":"A sapling is a non-solid block that can be grown into a tree.","category":"natural","family":"cherry","primary":"#a4768f","hue_group":"purple"},{"id":"minecraft:cherry_shelf","name":"Cherry Shelf","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","category":"","family":"cherry_shelf","primary":"#cb8281","hue_group":"red"},{"id":"minecraft:cherry_sign","name":"Cherry Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"cherry_sign","primary":"#e3b3ad","hue_group":"red"},{"id":"minecraft:cherry_slab","name":"Cherry Slab","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","category":"building","family":"cherry","primary":"#e3b3ad","hue_group":"red"},{"id":"minecraft:cherry_stairs","name":"Cherry Stairs","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","category":"building","family":"cherry","primary":"#e3b3ad","hue_group":"red"},{"id":"minecraft:cherry_trapdoor","name":"Cherry Trapdoor","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","category":"building","family":"cherry_trapdoor","primary":"#e2b3ac","hue_group":"red"},{"id":"minecraft:cherry_wall_hanging_sign","name":"Cherry Wall Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"cherry_wall_hanging_sign","primary":"#d79195","hue_group":"red"},{"id":"minecraft:cherry_wall_sign","name":"Cherry Wall Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"cherry_wall_sign","primary":"#e3b3ad","hue_group":"red"},{"id":"minecraft:cherry_wood","name":"Cherry Wood","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","category":"building","family":"cherry","primary":"#37212c","hue_group":"red"},{"id":"minecraft:chest","name":"Chest","description":"A chest is a block used to store items. A large chest is the combination of two adjacent chests, and can store twice as many items.","category":"utility","family":"chest","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:chipped_anvil","name":"Chipped Anvil","description":"An anvil is a gravity-affected utility block used to rename items, combine enchantments and repair items without losing the enchantments. An anvil has limited durability, and as it is used or dropped too far, gradually becomes a chipped anvil, then a damaged anvil, then breaks and vanishes.","category":"","family":"chipped_anvil","primary":"#494949","hue_group":"neutral"},{"id":"minecraft:chiseled_bookshelf","name":"Chiseled Bookshelf","description":"Chiseled bookshelves are blocks that can hold books, books and quills, written books, enchanted books, and knowledge books.","category":"utility","family":"chiseled_bookshelf","primary":"#b29159","hue_group":"yellow"},{"id":"minecraft:chiseled_copper","name":"Chiseled Copper","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","category":"building","family":"chiseled_copper","primary":"#b8654a","hue_group":"red"},{"id":"minecraft:chiseled_deepslate","name":"Chiseled Deepslate","description":"Chiseled deepslate is the chiseled version of deepslate.","category":"","family":"chiseled_deepslate","primary":"#363637","hue_group":"neutral"},{"id":"minecraft:chiseled_nether_bricks","name":"Chiseled Nether Bricks","description":"Chiseled Nether bricks are a decorative variant of Nether bricks, crafted from Nether brick slabs.","category":"building","family":"chiseled_nether_bricks","primary":"#2e171b","hue_group":"red"},{"id":"minecraft:chiseled_polished_blackstone","name":"Chiseled Polished Blackstone","description":"Chiseled polished blackstone is the chiseled variation of polished blackstone. It has a piglin nose figure.","category":"","family":"chiseled_polished_blackstone","primary":"#363139","hue_group":"neutral"},{"id":"minecraft:chiseled_quartz_block","name":"Chiseled Quartz Block","description":"A chiseled quartz block is a variant of the block of quartz that can be crafted from quartz slabs.","category":"resource","family":"chiseled_quartz_block","primary":"#e8e3da","hue_group":"yellow"},{"id":"minecraft:chiseled_red_sandstone","name":"Chiseled Red Sandstone","description":"Chiseled red sandstone is the chiseled variant of red sandstone, crafted from red sandstone slabs.","category":"","family":"chiseled_red_sandstone","primary":"#b7611c","hue_group":"red"},{"id":"minecraft:chiseled_resin_bricks","name":"Chiseled Resin Bricks","description":"Chiseled resin bricks are a variant of resin bricks, crafted from resin brick slabs.","category":"building","family":"chiseled_resin_bricks","primary":"#c95419","hue_group":"red"},{"id":"minecraft:chiseled_sandstone","name":"Chiseled Sandstone","description":"Chiseled sandstone is a decorative variant of sandstone, crafted from sandstone slabs.","category":"","family":"chiseled_sandstone","primary":"#d8cb9b","hue_group":"yellow"},{"id":"minecraft:chiseled_stone_bricks","name":"Chiseled Stone Bricks","description":"Chiseled stone bricks are a variant of stone bricks, crafted from stone brick slabs.","category":"building","family":"chiseled_stone_bricks","primary":"#787778","hue_group":"neutral"},{"id":"minecraft:chiseled_tuff","name":"Chiseled Tuff","description":"Chiseled tuff is a chiseled variant of tuff.","category":"","family":"chiseled_tuff","primary":"#595e57","hue_group":"neutral"},{"id":"minecraft:chiseled_tuff_bricks","name":"Chiseled Tuff Bricks","description":"Chiseled tuff bricks are a variant of tuff bricks, featuring a large brick in the center of the block, with geometric design above and below.","category":"building","family":"chiseled_tuff_bricks","primary":"#636760","hue_group":"neutral"},{"id":"minecraft:chorus_flower","name":"Chorus Flower","description":"Chorus flowers are plant blocks harvested from chorus plants, and can be placed on End stone to grow more chorus plants. A chorus flower will only drop as an item if broken directly or shot with a projectile.","category":"natural","family":"chorus_flower","primary":"#977998","hue_group":"purple"},{"id":"minecraft:chorus_plant","name":"Chorus Plant","description":"Chorus plants are blocks that naturally generate on the outer islands of the End. They drop chorus fruit when broken. They can also be grown using chorus flowers.","category":"","family":"chorus_plant","primary":"#5e395e","hue_group":"purple"},{"id":"minecraft:clay","name":"Clay","description":"Clay is a block that can be found abundantly in lush caves, in patches in shallow surface water or converted from mud using pointed dripstone. It can be smelted into terracotta or broken into clay balls which are smeltable into bricks.","category":"natural","family":"clay","primary":"#a1a6b3","hue_group":"neutral"},{"id":"minecraft:closed_eyeblossom","name":"Closed Eyeblossom","description":"An eyeblossom is a unique flower found in the pale garden biome. It changes state depending on the daylight cycle, closing during the day and opening at night. Its \"eye\", visible only when the flower is open, glows in the dark but does not emit light in its surroundings.","category":"","family":"closed_eyeblossom","primary":"#6c6265","hue_group":"neutral"},{"id":"minecraft:coal_block","name":"Coal Block","description":"A block of coal, also known as a coal block, is a storage block, equivalent to nine coal, that can also be used as fuel.","category":"resource","family":"coal_block","primary":"#101010","hue_group":"neutral"},{"id":"minecraft:coal_ore","name":"Coal Ore","description":"Coal ore is a mineral block that drops coal when mined. Deepslate coal ore is a variant of coal ore that rarely generates at the top of the deepslate layer.","category":"resource","family":"coal_ore","primary":"#6a6a69","hue_group":"neutral"},{"id":"minecraft:coarse_dirt","name":"Coarse Dirt","description":"Coarse dirt is a variant of dirt of which grass blocks cannot spread to.","category":"","family":"coarse_dirt","primary":"#77563b","hue_group":"red"},{"id":"minecraft:cobbled_deepslate","name":"Cobbled Deepslate","description":"Cobbled deepslate is a stone variant that functions similar to cobblestone or blackstone.","category":"","family":"cobbled_deepslate","primary":"#4d4d51","hue_group":"neutral"},{"id":"minecraft:cobbled_deepslate_slab","name":"Cobbled Deepslate Slab","description":"A cobbled deepslate slab is a decorative slab variant of cobbled deepslate that generates in ancient cities and is used for building.","category":"building","family":"cobbled_deepslate","primary":"#4d4d51","hue_group":"neutral"},{"id":"minecraft:cobbled_deepslate_stairs","name":"Cobbled Deepslate Stairs","description":"Cobbled deepslate stairs are a decorative stairs variant of cobbled deepslate that generates in ancient cities and is used for building.","category":"building","family":"cobbled_deepslate","primary":"#4d4d51","hue_group":"neutral"},{"id":"minecraft:cobbled_deepslate_wall","name":"Cobbled Deepslate Wall","description":"A cobbled deepslate wall is a decorative wall variant of cobbled deepslate that generates in ancient cities and is used for building.","category":"building","family":"cobbled_deepslate_wall","primary":"#4d4d51","hue_group":"neutral"},{"id":"minecraft:cobblestone","name":"Cobblestone","description":"Cobblestone is a common block obtained from mining stone. It is mainly used for crafting or as a building block.","category":"","family":"cobblestone","primary":"#807f80","hue_group":"neutral"},{"id":"minecraft:cobblestone_slab","name":"Cobblestone Slab","description":"A cobblestone slab is a decorative slab variant of cobblestone that generates in overworld structures and is used for building.","category":"building","family":"cobblestone","primary":"#807f80","hue_group":"neutral"},{"id":"minecraft:cobblestone_stairs","name":"Cobblestone Stairs","description":"Cobblestone stairs are a decorative stairs variant of cobblestone that generates as parts of overworld structures and can be used for building.","category":"building","family":"cobblestone","primary":"#807f80","hue_group":"neutral"},{"id":"minecraft:cobblestone_wall","name":"Cobblestone Wall","description":"A cobblestone wall is a decorative wall variant of cobblestone that generates in overword structures and is used for building.","category":"building","family":"cobblestone_wall","primary":"#807f80","hue_group":"neutral"},{"id":"minecraft:cobweb","name":"Cobweb","description":"A cobweb is a block that drastically slows down the movement of most entities touching it. The Weaving effect lessens this movement speed decrease.","category":"","family":"cobweb","primary":"#e5e9ea","hue_group":"neutral"},{"id":"minecraft:cocoa","name":"Cocoa","description":"Cocoa beans are items obtained from cocoa pods, and are used to plant more of them as well as to craft brown dye and cookies. Cocoa pods are plant blocks that can only be placed on jungle log sides and grow cocoa beans. They can be found naturally in jungles.","category":"","family":"cocoa","primary":"#85873e","hue_group":"yellow"},{"id":"minecraft:command_block","name":"Command Block","description":"A command block is an indestructible block that can execute commands. Because it cannot be obtained, destroyed or used in Survival mode without cheats, it is primarily used in multiplayer servers, Creative worlds, and custom maps. There are 3 types of these blocks. An impulse command block is the default block type; it executes only once when activated. A chain command block executes every time when triggered. A repeating command block executes every game tick as long as it is activated.","category":"technical","family":"command_block","primary":"#b5886c","hue_group":"red"},{"id":"minecraft:comparator","name":"Comparator","description":"A redstone comparator is a block that can produce a redstone signal from its front by reading chests, lecterns, copper bulbs, and similar blocks. It can also repeat a signal without changing its strength. It can also be set to either stop outputting a signal while its side input is receiving a stronger one (front torch off), or output a weaker signal based on its side input's signal strength (front torch on).","category":"redstone","family":"comparator","primary":"#a6a2a0","hue_group":"neutral"},{"id":"minecraft:composter","name":"Composter","description":"A composter is a block that converts some biological material into bone meal. It also serves as a farmer's job site block.","category":"utility","family":"composter","primary":"#996334","hue_group":"red"},{"id":"minecraft:conduit","name":"Conduit","description":"A conduit is a block that can be placed underwater and surrounded by prismarine to activate it. Once active, it empowers nearby players touching water or rain, prevents them from drowning, and attacks wet monsters.","category":"utility","family":"conduit","primary":"#a08c71","hue_group":"yellow"},{"id":"minecraft:copper_bars","name":"Copper Bars","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","category":"building","family":"copper_bars","primary":"#9c5137","hue_group":"red"},{"id":"minecraft:copper_block","name":"Copper Block","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","category":"building","family":"copper_block","primary":"#c06c50","hue_group":"red"},{"id":"minecraft:copper_bulb","name":"Copper Bulb","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","category":"building","family":"copper_bulb","primary":"#9c5739","hue_group":"red"},{"id":"minecraft:copper_chain","name":"Copper Chain","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","category":"building","family":"copper_chain","primary":"#984f37","hue_group":"red"},{"id":"minecraft:copper_chest","name":"Copper Chest","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","category":"building","family":"copper_chest","primary":"#c06c50","hue_group":"red"},{"id":"minecraft:copper_door","name":"Copper Door","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","category":"building","family":"copper","primary":"#c16d53","hue_group":"red"},{"id":"minecraft:copper_golem_statue","name":"Copper Golem Statue","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","category":"building","family":"copper_golem_statue","primary":"#c06c50","hue_group":"red"},{"id":"minecraft:copper_grate","name":"Copper Grate","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","category":"building","family":"copper_grate","primary":"#c06c4f","hue_group":"red"},{"id":"minecraft:copper_lantern","name":"Copper Lantern","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","category":"building","family":"copper_lantern","primary":"#9e6c4c","hue_group":"red"},{"id":"minecraft:copper_ore","name":"Copper Ore","description":"Copper ore is an ore block found underground. Deepslate copper ore is the deepslate variant of copper ore, usually found deeper underground.","category":"building","family":"copper_ore","primary":"#7d7e78","hue_group":"neutral"},{"id":"minecraft:copper_torch","name":"Copper Torch","description":"A copper torch is a non-solid block that emits light. Copper torches can also be used to craft copper lanterns.","category":"building","family":"copper_torch","primary":"#756e49","hue_group":"yellow"},{"id":"minecraft:copper_trapdoor","name":"Copper Trapdoor","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","category":"building","family":"copper_trapdoor","primary":"#bf6a50","hue_group":"red"},{"id":"minecraft:copper_wall_torch","name":"Copper Wall Torch","description":"A copper torch is a non-solid block that emits light. Copper torches can also be used to craft copper lanterns.","category":"building","family":"copper_wall_torch","primary":"#756e49","hue_group":"yellow"},{"id":"minecraft:cornflower","name":"Cornflower","description":"A cornflower is a flower that can be crafted into blue dye and suspicious stew.","category":"natural","family":"cornflower","primary":"#507993","hue_group":"cyan"},{"id":"minecraft:cracked_deepslate_bricks","name":"Cracked Deepslate Bricks","description":"Cracked deepslate bricks are the cracked variant of deepslate bricks.","category":"building","family":"cracked_deepslate_bricks","primary":"#414141","hue_group":"neutral"},{"id":"minecraft:cracked_deepslate_tiles","name":"Cracked Deepslate Tiles","description":"Cracked deepslate tiles are a cracked variant of deepslate tiles.","category":"building","family":"cracked_deepslate_tiles","primary":"#353535","hue_group":"neutral"},{"id":"minecraft:cracked_nether_bricks","name":"Cracked Nether Bricks","description":"Cracked Nether bricks are a decorative variant of Nether bricks, obtained by smelting Nether bricks.","category":"building","family":"cracked_nether_bricks","primary":"#281418","hue_group":"red"},{"id":"minecraft:cracked_polished_blackstone_bricks","name":"Cracked Polished Blackstone Bricks","description":"Cracked polished blackstone bricks are the cracked variant of polished blackstone bricks.","category":"building","family":"cracked_polished_blackstone_bricks","primary":"#2c262c","hue_group":"neutral"},{"id":"minecraft:cracked_stone_bricks","name":"Cracked Stone Bricks","description":"Cracked stone bricks are a variant of stone bricks, obtained through smelting and natural generation.","category":"building","family":"cracked_stone_bricks","primary":"#767676","hue_group":"neutral"},{"id":"minecraft:crafter","name":"Crafter","description":"A crafter is a low-capacity storage block that can use its contents to craft items when given a redstone signal, ejecting the results into the world or into a container it is facing. Its inventory slots can be individually locked so hoppers and similar blocks cannot fill them, while not affecting crafting recipes.","category":"","family":"crafter","primary":"#706364","hue_group":"neutral"},{"id":"minecraft:crafting_table","name":"Crafting Table","description":"A crafting table is a utility block that gives access to all crafting recipes, including many not available from the inventory's crafting grid.","category":"utility","family":"crafting_table","primary":"#816a46","hue_group":"yellow"},{"id":"minecraft:creaking_heart","name":"Creaking Heart","description":"A creaking heart is a living block that can be crafted or found in pale oak trees in pale gardens. It activates if placed in a line between two pale oak logs; then, during nighttime, it spawns a creaking and protects it from all damage. Breaking a creaking heart that is protecting a creaking instantly kills it. Hitting a protected creaking causes resin clumps to grow on pale oak logs near its linked creaking heart.","category":"","family":"creaking_heart","primary":"#52443f","hue_group":"red"},{"id":"minecraft:creeper_head","name":"Creeper Head","description":"A creeper head is the head of a creeper in the form of a block. It can only be obtained by killing a creeper using a different charged creeper's explosion.","category":"decorative","family":"creeper_head","primary":"#513e33","hue_group":"red"},{"id":"minecraft:creeper_wall_head","name":"Creeper Wall Head","description":"A creeper head is the head of a creeper in the form of a block. It can only be obtained by killing a creeper using a different charged creeper's explosion.","category":"decorative","family":"creeper_wall_head","primary":"#513e33","hue_group":"red"},{"id":"minecraft:crimson_button","name":"Crimson Button","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","category":"building","family":"crimson_button","primary":"#653147","hue_group":"red"},{"id":"minecraft:crimson_door","name":"Crimson Door","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","category":"building","family":"crimson","primary":"#72374f","hue_group":"red"},{"id":"minecraft:crimson_fence","name":"Crimson Fence","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","category":"building","family":"crimson","primary":"#653147","hue_group":"red"},{"id":"minecraft:crimson_fence_gate","name":"Crimson Fence Gate","description":"A fence gate is a block that shares the functions of both the door and the fence.","category":"building","family":"crimson_fence_gate","primary":"#653147","hue_group":"red"},{"id":"minecraft:crimson_fungus","name":"Crimson Fungus","description":"A crimson fungus is a mushroom-like block that generates in the Nether.","category":"natural","family":"crimson_fungus","primary":"#8d2c1e","hue_group":"red"},{"id":"minecraft:crimson_hanging_sign","name":"Crimson Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"crimson_hanging_sign","primary":"#89395a","hue_group":"red"},{"id":"minecraft:crimson_hyphae","name":"Crimson Hyphae","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","category":"","family":"crimson_hyphae","primary":"#5d1a1e","hue_group":"red"},{"id":"minecraft:crimson_nylium","name":"Crimson Nylium","description":"Crimson nylium is a variant of netherrack that generates in the Nether.","category":"natural","family":"crimson_nylium","primary":"#831f1f","hue_group":"red"},{"id":"minecraft:crimson_planks","name":"Crimson Planks","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","category":"building","family":"crimson","primary":"#653147","hue_group":"red"},{"id":"minecraft:crimson_pressure_plate","name":"Crimson Pressure Plate","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","category":"building","family":"crimson_pressure_plate","primary":"#653147","hue_group":"red"},{"id":"minecraft:crimson_roots","name":"Crimson Roots","description":"Crimson roots are a non-solid \"plant\" block that generate naturally on nylium and soul soil in few Nether biomes. They resemble a colony of tall, thin mushrooms.","category":"natural","family":"crimson_roots","primary":"#7e082a","hue_group":"red"},{"id":"minecraft:crimson_shelf","name":"Crimson Shelf","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","category":"","family":"crimson_shelf","primary":"#813453","hue_group":"red"},{"id":"minecraft:crimson_sign","name":"Crimson Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"crimson_sign","primary":"#653147","hue_group":"red"},{"id":"minecraft:crimson_slab","name":"Crimson Slab","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","category":"building","family":"crimson","primary":"#653147","hue_group":"red"},{"id":"minecraft:crimson_stairs","name":"Crimson Stairs","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","category":"building","family":"crimson","primary":"#653147","hue_group":"red"},{"id":"minecraft:crimson_stem","name":"Crimson Stem","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","category":"natural","family":"crimson_stem","primary":"#5d1a1e","hue_group":"red"},{"id":"minecraft:crimson_trapdoor","name":"Crimson Trapdoor","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","category":"building","family":"crimson_trapdoor","primary":"#683348","hue_group":"red"},{"id":"minecraft:crimson_wall_hanging_sign","name":"Crimson Wall Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"crimson_wall_hanging_sign","primary":"#89395a","hue_group":"red"},{"id":"minecraft:crimson_wall_sign","name":"Crimson Wall Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"crimson_wall_sign","primary":"#653147","hue_group":"red"},{"id":"minecraft:crying_obsidian","name":"Crying Obsidian","description":"Crying obsidian is a luminous variant of obsidian that can be used to craft a respawn anchor. Purple particles drip from its faces. Like obsidian, It has high hardness and blast resistance, making it immune to normal explosions. It can be obtained by mining it with a diamond or netherite pickaxe.","category":"","family":"crying_obsidian","primary":"#210a3c","hue_group":"blue"},{"id":"minecraft:cut_copper","name":"Cut Copper","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","category":"building","family":"cut_copper","primary":"#bf6b51","hue_group":"red"},{"id":"minecraft:cut_copper_slab","name":"Cut Copper Slab","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","category":"building","family":"cut_copper","primary":"#bf6b51","hue_group":"red"},{"id":"minecraft:cut_copper_stairs","name":"Cut Copper Stairs","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","category":"building","family":"cut_copper","primary":"#bf6b51","hue_group":"red"},{"id":"minecraft:cut_red_sandstone","name":"Cut Red Sandstone","description":"Cut red sandstone is a variant of red sandstone, obtained through crafting.","category":"","family":"cut_red_sandstone","primary":"#bd6620","hue_group":"red"},{"id":"minecraft:cut_red_sandstone_slab","name":"Cut Red Sandstone Slab","description":"A cut red sandstone slab is a decorative slab variant of cut red sandstone that does not generate naturally and is used for building.","category":"building","family":"cut_red_sandstone","primary":"#b5621f","hue_group":"red"},{"id":"minecraft:cut_sandstone","name":"Cut Sandstone","description":"Cut sandstone is a variant of sandstone, obtained through crafting and stonecutting.","category":"","family":"cut_sandstone","primary":"#dacea0","hue_group":"yellow"},{"id":"minecraft:cut_sandstone_slab","name":"Cut Sandstone Slab","description":"A cut sandstone slab is a decorative slab variant of cut sandstone that does not generate naturally and is used for building.","category":"building","family":"cut_sandstone","primary":"#e0d6aa","hue_group":"yellow"},{"id":"minecraft:cyan_banner","name":"Cyan Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"cyan_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:cyan_bed","name":"Cyan Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"cyan_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:cyan_candle","name":"Cyan Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"cyan_candle","primary":"#117c7c","hue_group":"cyan"},{"id":"minecraft:cyan_candle_cake","name":"Cyan Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"cyan_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:cyan_carpet","name":"Cyan Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"cyan_carpet","primary":"#158a91","hue_group":"cyan"},{"id":"minecraft:cyan_concrete","name":"Cyan Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"cyan_concrete","primary":"#157788","hue_group":"cyan"},{"id":"minecraft:cyan_concrete_powder","name":"Cyan Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"cyan_concrete_powder","primary":"#25949d","hue_group":"cyan"},{"id":"minecraft:cyan_glazed_terracotta","name":"Cyan Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"cyan_glazed_terracotta","primary":"#34777d","hue_group":"cyan"},{"id":"minecraft:cyan_shulker_box","name":"Cyan Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"cyan_shulker_box","primary":"#147987","hue_group":"cyan"},{"id":"minecraft:cyan_stained_glass","name":"Cyan Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"cyan_stained_glass","primary":"#4c7f99","hue_group":"cyan"},{"id":"minecraft:cyan_stained_glass_pane","name":"Cyan Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"cyan_stained_glass_pane","primary":"#4a7b93","hue_group":"cyan"},{"id":"minecraft:cyan_terracotta","name":"Cyan Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"cyan_terracotta","primary":"#575b5b","hue_group":"neutral"},{"id":"minecraft:cyan_wall_banner","name":"Cyan Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"cyan_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:cyan_wool","name":"Cyan Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"cyan_wool","primary":"#158a91","hue_group":"cyan"},{"id":"minecraft:damaged_anvil","name":"Damaged Anvil","description":"An anvil is a gravity-affected utility block used to rename items, combine enchantments and repair items without losing the enchantments. An anvil has limited durability, and as it is used or dropped too far, gradually becomes a chipped anvil, then a damaged anvil, then breaks and vanishes.","category":"","family":"damaged_anvil","primary":"#484848","hue_group":"neutral"},{"id":"minecraft:dandelion","name":"Dandelion","description":"A dandelion is a flower that can be crafted into yellow dye, suspicious stew, and golden dandelions, and used to breed rabbits.","category":"","family":"dandelion","primary":"#94ac2b","hue_group":"yellow"},{"id":"minecraft:dark_oak_button","name":"Dark Oak Button","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","category":"building","family":"dark_oak_button","primary":"#432b14","hue_group":"red"},{"id":"minecraft:dark_oak_door","name":"Dark Oak Door","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","category":"building","family":"dark_oak","primary":"#4d3419","hue_group":"yellow"},{"id":"minecraft:dark_oak_fence","name":"Dark Oak Fence","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","category":"building","family":"dark_oak","primary":"#432b14","hue_group":"red"},{"id":"minecraft:dark_oak_fence_gate","name":"Dark Oak Fence Gate","description":"A fence gate is a block that shares the functions of both the door and the fence.","category":"building","family":"dark_oak_fence_gate","primary":"#432b14","hue_group":"red"},{"id":"minecraft:dark_oak_hanging_sign","name":"Dark Oak Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"dark_oak_hanging_sign","primary":"#493924","hue_group":"yellow"},{"id":"minecraft:dark_oak_leaves","name":"Dark Oak Leaves","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","category":"natural","family":"dark_oak","primary":"#979797","hue_group":"neutral"},{"id":"minecraft:dark_oak_log","name":"Dark Oak Log","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","category":"natural","family":"dark_oak","primary":"#3c2f1a","hue_group":"yellow"},{"id":"minecraft:dark_oak_planks","name":"Dark Oak Planks","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","category":"building","family":"dark_oak","primary":"#432b14","hue_group":"red"},{"id":"minecraft:dark_oak_pressure_plate","name":"Dark Oak Pressure Plate","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","category":"building","family":"dark_oak_pressure_plate","primary":"#432b14","hue_group":"red"},{"id":"minecraft:dark_oak_sapling","name":"Dark Oak Sapling","description":"A sapling is a non-solid block that can be grown into a tree.","category":"natural","family":"dark_oak","primary":"#3d5b1f","hue_group":"green"},{"id":"minecraft:dark_oak_shelf","name":"Dark Oak Shelf","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","category":"","family":"dark_oak_shelf","primary":"#423321","hue_group":"yellow"},{"id":"minecraft:dark_oak_sign","name":"Dark Oak Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"dark_oak_sign","primary":"#432b14","hue_group":"red"},{"id":"minecraft:dark_oak_slab","name":"Dark Oak Slab","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","category":"building","family":"dark_oak","primary":"#432b14","hue_group":"red"},{"id":"minecraft:dark_oak_stairs","name":"Dark Oak Stairs","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","category":"building","family":"dark_oak","primary":"#432b14","hue_group":"red"},{"id":"minecraft:dark_oak_trapdoor","name":"Dark Oak Trapdoor","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","category":"building","family":"dark_oak_trapdoor","primary":"#4b3217","hue_group":"yellow"},{"id":"minecraft:dark_oak_wall_hanging_sign","name":"Dark Oak Wall Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"dark_oak_wall_hanging_sign","primary":"#493924","hue_group":"yellow"},{"id":"minecraft:dark_oak_wall_sign","name":"Dark Oak Wall Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"dark_oak_wall_sign","primary":"#432b14","hue_group":"red"},{"id":"minecraft:dark_oak_wood","name":"Dark Oak Wood","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","category":"building","family":"dark_oak","primary":"#3c2f1a","hue_group":"yellow"},{"id":"minecraft:dark_prismarine","name":"Dark Prismarine","description":"Dark prismarine is a variant of prismarine that has a dark cyan color with a tight grid pattern. It is one of the building blocks of ocean monuments along with other prismarine variants.","category":"","family":"dark_prismarine","primary":"#345c4c","hue_group":"cyan"},{"id":"minecraft:dark_prismarine_slab","name":"Dark Prismarine Slab","description":"A dark prismarine slab is a decorative slab variant of dark prismarine that does not generate naturally and is used for building.","category":"building","family":"dark_prismarine","primary":"#345c4c","hue_group":"cyan"},{"id":"minecraft:dark_prismarine_stairs","name":"Dark Prismarine Stairs","description":"Dark prismarine stairs are a decorative stairs variant of dark prismarine that does not generate naturally and is used for building.","category":"building","family":"dark_prismarine","primary":"#345c4c","hue_group":"cyan"},{"id":"minecraft:daylight_detector","name":"Daylight Detector","description":"A daylight detector is a block that outputs a redstone signal based on its exposure to sky light. Using the detector inverts it, causing it instead to output a constant strong signal that weakens from exposure to sky light.","category":"","family":"daylight_detector","primary":"#83745f","hue_group":"yellow"},{"id":"minecraft:dead_brain_coral","name":"Dead Brain Coral","description":"A dead coral is the dead variant of coral. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_brain_coral","primary":"#867d79","hue_group":"neutral"},{"id":"minecraft:dead_brain_coral_block","name":"Dead Brain Coral Block","description":"A dead coral block is a dead variant of a coral block. These blocks are always gray. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_brain_coral_block","primary":"#7c7672","hue_group":"neutral"},{"id":"minecraft:dead_brain_coral_fan","name":"Dead Brain Coral Fan","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_brain_coral_fan","primary":"#857d79","hue_group":"neutral"},{"id":"minecraft:dead_brain_coral_wall_fan","name":"Dead Brain Coral Wall Fan","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_brain_coral_wall_fan","primary":"#857d79","hue_group":"neutral"},{"id":"minecraft:dead_bubble_coral","name":"Dead Bubble Coral","description":"A dead coral is the dead variant of coral. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_bubble_coral","primary":"#857d79","hue_group":"neutral"},{"id":"minecraft:dead_bubble_coral_block","name":"Dead Bubble Coral Block","description":"A dead coral block is a dead variant of a coral block. These blocks are always gray. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_bubble_coral_block","primary":"#847c77","hue_group":"neutral"},{"id":"minecraft:dead_bubble_coral_fan","name":"Dead Bubble Coral Fan","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_bubble_coral_fan","primary":"#8d8782","hue_group":"neutral"},{"id":"minecraft:dead_bubble_coral_wall_fan","name":"Dead Bubble Coral Wall Fan","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_bubble_coral_wall_fan","primary":"#8d8782","hue_group":"neutral"},{"id":"minecraft:dead_bush","name":"Dead Bush","description":"A dead bush is a non-solid plant block found in deserts, badlands, swamps and old growth taigas. It can only be obtained with shears, and otherwise drops sticks when broken.","category":"","family":"dead_bush","primary":"#6b4f29","hue_group":"yellow"},{"id":"minecraft:dead_fire_coral","name":"Dead Fire Coral","description":"A dead coral is the dead variant of coral. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_fire_coral","primary":"#89807c","hue_group":"neutral"},{"id":"minecraft:dead_fire_coral_block","name":"Dead Fire Coral Block","description":"A dead coral block is a dead variant of a coral block. These blocks are always gray. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_fire_coral_block","primary":"#847c78","hue_group":"neutral"},{"id":"minecraft:dead_fire_coral_fan","name":"Dead Fire Coral Fan","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_fire_coral_fan","primary":"#7d7673","hue_group":"neutral"},{"id":"minecraft:dead_fire_coral_wall_fan","name":"Dead Fire Coral Wall Fan","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_fire_coral_wall_fan","primary":"#7d7673","hue_group":"neutral"},{"id":"minecraft:dead_horn_coral","name":"Dead Horn Coral","description":"A dead coral is the dead variant of coral. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_horn_coral","primary":"#8f8782","hue_group":"neutral"},{"id":"minecraft:dead_horn_coral_block","name":"Dead Horn Coral Block","description":"A dead coral block is a dead variant of a coral block. These blocks are always gray. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_horn_coral_block","primary":"#867e7a","hue_group":"neutral"},{"id":"minecraft:dead_horn_coral_fan","name":"Dead Horn Coral Fan","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_horn_coral_fan","primary":"#867e79","hue_group":"neutral"},{"id":"minecraft:dead_horn_coral_wall_fan","name":"Dead Horn Coral Wall Fan","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_horn_coral_wall_fan","primary":"#867e79","hue_group":"neutral"},{"id":"minecraft:dead_tube_coral","name":"Dead Tube Coral","description":"A dead coral is the dead variant of coral. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_tube_coral","primary":"#766f6c","hue_group":"neutral"},{"id":"minecraft:dead_tube_coral_block","name":"Dead Tube Coral Block","description":"A dead coral block is a dead variant of a coral block. These blocks are always gray. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_tube_coral_block","primary":"#827b78","hue_group":"neutral"},{"id":"minecraft:dead_tube_coral_fan","name":"Dead Tube Coral Fan","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_tube_coral_fan","primary":"#807a76","hue_group":"neutral"},{"id":"minecraft:dead_tube_coral_wall_fan","name":"Dead Tube Coral Wall Fan","description":"Dead coral fans are the result of the living variants of coral fans when they are outside water. There are five variants total: tube, brain, bubble, fire, and horn.","category":"natural","family":"dead_tube_coral_wall_fan","primary":"#807a76","hue_group":"neutral"},{"id":"minecraft:decorated_pot","name":"Decorated Pot","description":"A decorated pot is a storage block crafted from bricks and/or pottery sherds, with the items used individually affecting the appearance of its four side faces. It can store a single inventory slot's worth of items, which cannot be seen or retrieved by hand without breaking the pot.","category":"","family":"decorated_pot","primary":"#985e44","hue_group":"red"},{"id":"minecraft:deepslate","name":"Deepslate","description":"Deepslate is a stone type found deep underground in the Overworld that functions similarly to regular stone, but takes significantly longer to mine.","category":"","family":"deepslate","primary":"#505053","hue_group":"neutral"},{"id":"minecraft:deepslate_brick_slab","name":"Deepslate Brick Slab","description":"A deepslate brick slab is a decorative slab variant of deepslate bricks that generates in ancient cities and is used for building.","category":"building","family":"deepslate_brick","primary":"#474747","hue_group":"neutral"},{"id":"minecraft:deepslate_brick_stairs","name":"Deepslate Brick Stairs","description":"Deepslate brick stairs are a decorative stairs variant of deepslate bricks that generates in ancient cities and is used for building.","category":"building","family":"deepslate_brick","primary":"#474747","hue_group":"neutral"},{"id":"minecraft:deepslate_brick_wall","name":"Deepslate Brick Wall","description":"A deepslate brick wall is a decorative wall variant of deepslate bricks that generates in ancient cities and is used for building.","category":"building","family":"deepslate_brick_wall","primary":"#474747","hue_group":"neutral"},{"id":"minecraft:deepslate_bricks","name":"Deepslate Bricks","description":"Deepslate bricks are the brick version of deepslate.","category":"building","family":"deepslate_bricks","primary":"#474747","hue_group":"neutral"},{"id":"minecraft:deepslate_coal_ore","name":"Deepslate Coal Ore","description":"Coal ore is a mineral block that drops coal when mined. Deepslate coal ore is a variant of coal ore that rarely generates at the top of the deepslate layer.","category":"resource","family":"deepslate_coal_ore","primary":"#4a4a4c","hue_group":"neutral"},{"id":"minecraft:deepslate_copper_ore","name":"Deepslate Copper Ore","description":"Copper ore is an ore block found underground. Deepslate copper ore is the deepslate variant of copper ore, usually found deeper underground.","category":"building","family":"deepslate_copper_ore","primary":"#5c5d59","hue_group":"neutral"},{"id":"minecraft:deepslate_diamond_ore","name":"Deepslate Diamond Ore","description":"Diamond ore is a rare ore that generates deep underground, and drops diamonds when mined. Deepslate diamond ore is a variant of diamond ore that can generate in deepslate and tuff blobs, and is more common than its regular variant.","category":"resource","family":"deepslate_diamond_ore","primary":"#536a6b","hue_group":"cyan"},{"id":"minecraft:deepslate_emerald_ore","name":"Deepslate Emerald Ore","description":"Emerald ore is a rare mineral block that generates only in mountains and windswept hills biomes. It drops emeralds when mined, or itself if mined with a pickaxe with the Silk Touch enchantment. Deepslate emerald ore is a very rare variant of emerald ore that can generate in deepslate and tuff blobs.","category":"resource","family":"deepslate_emerald_ore","primary":"#4e6858","hue_group":"green"},{"id":"minecraft:deepslate_gold_ore","name":"Deepslate Gold Ore","description":"Gold ore is a rare mineral block found underground that drops raw gold when mined with an iron pickaxe or better. Deepslate gold ore is a variant of gold ore that can generate in deepslate and tuff.","category":"resource","family":"deepslate_gold_ore","primary":"#73674e","hue_group":"yellow"},{"id":"minecraft:deepslate_iron_ore","name":"Deepslate Iron Ore","description":"Iron ore is a mineral block typically found underground. It is a source of raw iron, which can be smelted into iron ingots. Deepslate iron ore is the deepslate variant of iron ore. It is found in deepslate layers.","category":"resource","family":"deepslate_iron_ore","primary":"#6b645f","hue_group":"neutral"},{"id":"minecraft:deepslate_lapis_ore","name":"Deepslate Lapis Ore","description":"Lapis lazuli ore, internally known as lapis ore, is the ore block from which lapis lazuli is obtained. Deepslate lapis lazuli ore, internally known as deepslate lapis ore, is a variant of lapis lazuli ore that generates in deepslate layers.","category":"resource","family":"deepslate_lapis_ore","primary":"#505b73","hue_group":"blue"},{"id":"minecraft:deepslate_redstone_ore","name":"Deepslate Redstone Ore","description":"Redstone ore is the ore block from which redstone is obtained. Deepslate redstone ore is a variant of redstone ore that can generate in deepslate and tuff blobs.","category":"redstone","family":"deepslate_redstone_ore","primary":"#69494b","hue_group":"red"},{"id":"minecraft:deepslate_tile_slab","name":"Deepslate Tile Slab","description":"A deepslate tile slab is a decorative slab variant of deepslate tiles that generates in ancient cities and is used for building.","category":"building","family":"deepslate_tile","primary":"#373737","hue_group":"neutral"},{"id":"minecraft:deepslate_tile_stairs","name":"Deepslate Tile Stairs","description":"Deepslate tile stairs are a decorative stairs variant of deepslate tiles that generates in ancient cities and is used for building.","category":"building","family":"deepslate_tile","primary":"#373737","hue_group":"neutral"},{"id":"minecraft:deepslate_tile_wall","name":"Deepslate Tile Wall","description":"A deepslate tile wall is a decorative wall variant of deepslate tiles that generates in ancient cities and is used for building.","category":"building","family":"deepslate_tile_wall","primary":"#373737","hue_group":"neutral"},{"id":"minecraft:deepslate_tiles","name":"Deepslate Tiles","description":"Deepslate tiles are a decorative variant of deepslate.","category":"building","family":"deepslate_tiles","primary":"#373737","hue_group":"neutral"},{"id":"minecraft:detector_rail","name":"Detector Rail","description":"The detector rail is a type of rail that produces a redstone signal while a minecart is on it.","category":"redstone","family":"detector_rail","primary":"#7b695a","hue_group":"red"},{"id":"minecraft:diamond_block","name":"Diamond Block","description":"A block of diamond, known internally as a diamond block, is a precious mineral block equivalent to nine diamonds.","category":"resource","family":"diamond_block","primary":"#62ede4","hue_group":"cyan"},{"id":"minecraft:diamond_ore","name":"Diamond Ore","description":"Diamond ore is a rare ore that generates deep underground, and drops diamonds when mined. Deepslate diamond ore is a variant of diamond ore that can generate in deepslate and tuff blobs, and is more common than its regular variant.","category":"resource","family":"diamond_ore","primary":"#798d8d","hue_group":"neutral"},{"id":"minecraft:diorite","name":"Diorite","description":"Diorite is a block of igneous rock, found in large pockets underground.","category":"","family":"diorite","primary":"#bdbcbd","hue_group":"neutral"},{"id":"minecraft:diorite_slab","name":"Diorite Slab","description":"A diorite slab is a decorative slab variant of diorite that does not generate naturally and is used for building.","category":"building","family":"diorite","primary":"#bdbcbd","hue_group":"neutral"},{"id":"minecraft:diorite_stairs","name":"Diorite Stairs","description":"Diorite stairs are a decorative stairs variant of diorite that generates in snowy tundra villages and is used for building.","category":"building","family":"diorite","primary":"#bdbcbd","hue_group":"neutral"},{"id":"minecraft:diorite_wall","name":"Diorite Wall","description":"A diorite wall is a decorative wall variant of diorite that generates in snowy tundra villages and is used for building.","category":"building","family":"diorite_wall","primary":"#bdbcbd","hue_group":"neutral"},{"id":"minecraft:dirt","name":"Dirt","description":"Dirt is a block found abundantly in most biomes under a layer of grass blocks at the top of the Overworld as well as in patches underground.","category":"natural","family":"dirt","primary":"#866043","hue_group":"red"},{"id":"minecraft:dirt_path","name":"Dirt Path","description":"Dirt paths are decorative blocks. They are mainly found in villages as a path for the villagers.","category":"","family":"dirt_path","primary":"#947a41","hue_group":"yellow"},{"id":"minecraft:dispenser","name":"Dispenser","description":"A dispenser is a low-capacity storage block that can fire projectiles, use certain items or tools or place certain blocks, fluids or entities when given a redstone signal. Items that do not have unique dispenser functions are instead ejected into the world.","category":"redstone","family":"dispenser","primary":"#636262","hue_group":"neutral"},{"id":"minecraft:dragon_egg","name":"Dragon Egg","description":"The dragon egg is a gravity-affected block that can be obtained only once per world (or twice in Bedrock Edition) by defeating the ender dragon. It teleports to avoid being mined, but drops as an item if it falls onto a non-full block such as a torch or is pushed by a piston.","category":"","family":"dragon_egg","primary":"#0d0910","hue_group":"purple"},{"id":"minecraft:dragon_head","name":"Dragon Head","description":"A dragon head is a block that resembles a smaller version of the ender dragon's head. It can only be obtained from End ships.","category":"decorative","family":"dragon_head","primary":"#513e33","hue_group":"red"},{"id":"minecraft:dragon_wall_head","name":"Dragon Wall Head","description":"A dragon head is a block that resembles a smaller version of the ender dragon's head. It can only be obtained from End ships.","category":"decorative","family":"dragon_wall_head","primary":"#513e33","hue_group":"red"},{"id":"minecraft:dried_ghast","name":"Dried Ghast","description":"A dried ghast is an immobile, shriveled, harmless ghast in the form of a block. It can be found near Nether fossils or obtained through bartering or crafting. Placing it in water causes it to hydrate over time until it becomes a ghastling.","category":"","family":"dried_ghast","primary":"#9f9191","hue_group":"neutral"},{"id":"minecraft:dried_kelp_block","name":"Dried Kelp Block","description":"Dried kelp blocks are storage blocks equivalent to nine dried kelp. They can also be used as fuel.","category":"natural","family":"dried_kelp_block","primary":"#26311e","hue_group":"green"},{"id":"minecraft:dripstone_block","name":"Dripstone Block","description":"Dripstone block is a rock block that allows pointed dripstone to grow beneath it.","category":"","family":"dripstone_block","primary":"#866c5d","hue_group":"red"},{"id":"minecraft:dropper","name":"Dropper","description":"A dropper is a low-capacity storage block that can eject its contents into the world or into other containers when given a redstone signal.","category":"redstone","family":"dropper","primary":"#626161","hue_group":"neutral"},{"id":"minecraft:emerald_block","name":"Emerald Block","description":"A block of emerald, internally known as an emerald block, is a mineral block equivalent to nine emeralds.","category":"resource","family":"emerald_block","primary":"#2acb58","hue_group":"green"},{"id":"minecraft:emerald_ore","name":"Emerald Ore","description":"Emerald ore is a rare mineral block that generates only in mountains and windswept hills biomes. It drops emeralds when mined, or itself if mined with a pickaxe with the Silk Touch enchantment. Deepslate emerald ore is a very rare variant of emerald ore that can generate in deepslate and tuff blobs.","category":"resource","family":"emerald_ore","primary":"#6c8874","hue_group":"neutral"},{"id":"minecraft:enchanting_table","name":"Enchanting Table","description":"An enchanting table is a block used to spend experience and lapis lazuli to apply enchantments to tools, armor and books. Surrounding it with up to fifteen bookshelves increases both its enchanting power and level requirement.","category":"utility","family":"enchanting_table","primary":"#814b55","hue_group":"red"},{"id":"minecraft:end_gateway","name":"End Gateway","description":"End gateways are intradimensional portals generated in the End: some are spawned around the central island after each death of the ender dragon; others are randomly generated throughout the outer islands. On the central island, up to 20 gateways can be spawned. These can send the player far away to the outer islands, each of which has a corresponding gateway that returns the player back to the central island. There are other randomly-generated gateways that always lead the player back to the End platform. They provide quick access to the different parts of the End dimension.","category":"","family":"end_gateway","primary":"#0f0b19","hue_group":"blue"},{"id":"minecraft:end_portal","name":"End Portal","description":"An End portal is a naturally occurring generated structure that is used to travel into the End. It can only be found in the portal room of a stronghold.","category":"","family":"end_portal","primary":"#0f0b19","hue_group":"blue"},{"id":"minecraft:end_portal_frame","name":"End Portal Frame","description":"An End portal frame is an indestructible block, 12 of which form an End portal. Eyes of ender must be inserted into all 12 empty frames (if not already present upon generation) for the portal to activate and allow passage into the End dimension.","category":"","family":"end_portal_frame","primary":"#5b7961","hue_group":"green"},{"id":"minecraft:end_rod","name":"End Rod","description":"An End rod is a decorative light source that emits white particles.","category":"","family":"end_rod","primary":"#d0c6bb","hue_group":"yellow"},{"id":"minecraft:end_stone","name":"End Stone","description":"End stone is a block that appears in the End and, apart from generated structures, makes up all of the solid ground that exists in that dimension.","category":"","family":"end_stone","primary":"#dcdf9e","hue_group":"yellow"},{"id":"minecraft:end_stone_brick_slab","name":"End Stone Brick Slab","description":"An End stone brick slab is a decorative slab variant of End stone bricks that does not generate naturally and is used for building.","category":"building","family":"end_stone_brick","primary":"#dae0a2","hue_group":"yellow"},{"id":"minecraft:end_stone_brick_stairs","name":"End Stone Brick Stairs","description":"End stone brick stairs are a decorative stairs variant of End stone bricks that does not generate naturally and is used for building.","category":"building","family":"end_stone_brick","primary":"#dae0a2","hue_group":"yellow"},{"id":"minecraft:end_stone_brick_wall","name":"End Stone Brick Wall","description":"An End stone brick wall is a decorative wall variant of End stone bricks that does not generate naturally and is used for building.","category":"building","family":"end_stone_brick_wall","primary":"#dae0a2","hue_group":"yellow"},{"id":"minecraft:end_stone_bricks","name":"End Stone Bricks","description":"End stone bricks are decorative building blocks made of End stone that generate in End cities.","category":"building","family":"end_stone_bricks","primary":"#dae0a2","hue_group":"yellow"},{"id":"minecraft:ender_chest","name":"Ender Chest","description":"An ender chest is a type of chest whose contents are exclusive to each player, and they can be placed and accessed from anywhere in any dimension.","category":"utility","family":"ender_chest","primary":"#0f0b19","hue_group":"blue"},{"id":"minecraft:exposed_chiseled_copper","name":"Exposed Chiseled Copper","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","category":"building","family":"exposed_chiseled_copper","primary":"#9b7765","hue_group":"red"},{"id":"minecraft:exposed_copper","name":"Exposed Copper","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","category":"building","family":"exposed_copper","primary":"#a17e68","hue_group":"red"},{"id":"minecraft:exposed_copper_bars","name":"Exposed Copper Bars","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","category":"building","family":"exposed_copper_bars","primary":"#866c59","hue_group":"red"},{"id":"minecraft:exposed_copper_bulb","name":"Exposed Copper Bulb","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","category":"building","family":"exposed_copper_bulb","primary":"#876c5a","hue_group":"red"},{"id":"minecraft:exposed_copper_chain","name":"Exposed Copper Chain","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","category":"building","family":"exposed_copper_chain","primary":"#7e6654","hue_group":"red"},{"id":"minecraft:exposed_copper_chest","name":"Exposed Copper Chest","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","category":"building","family":"exposed_copper_chest","primary":"#a17e68","hue_group":"red"},{"id":"minecraft:exposed_copper_door","name":"Exposed Copper Door","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","category":"building","family":"exposed_copper","primary":"#a47b6a","hue_group":"red"},{"id":"minecraft:exposed_copper_golem_statue","name":"Exposed Copper Golem Statue","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","category":"building","family":"exposed_copper_golem_statue","primary":"#a17e68","hue_group":"red"},{"id":"minecraft:exposed_copper_grate","name":"Exposed Copper Grate","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","category":"building","family":"exposed_copper_grate","primary":"#a27e69","hue_group":"red"},{"id":"minecraft:exposed_copper_lantern","name":"Exposed Copper Lantern","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","category":"building","family":"exposed_copper_lantern","primary":"#948369","hue_group":"yellow"},{"id":"minecraft:exposed_copper_trapdoor","name":"Exposed Copper Trapdoor","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","category":"building","family":"exposed_copper_trapdoor","primary":"#a17d69","hue_group":"red"},{"id":"minecraft:exposed_cut_copper","name":"Exposed Cut Copper","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","category":"building","family":"exposed_cut_copper","primary":"#9b7a65","hue_group":"red"},{"id":"minecraft:exposed_cut_copper_slab","name":"Exposed Cut Copper Slab","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","category":"building","family":"exposed_cut_copper","primary":"#9b7a65","hue_group":"red"},{"id":"minecraft:exposed_cut_copper_stairs","name":"Exposed Cut Copper Stairs","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","category":"building","family":"exposed_cut_copper","primary":"#9b7a65","hue_group":"red"},{"id":"minecraft:exposed_lightning_rod","name":"Exposed Lightning Rod","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","category":"","family":"exposed_lightning_rod","primary":"#9f7868","hue_group":"red"},{"id":"minecraft:farmland","name":"Farmland","description":"Farmland is a block created by using a hoe on most types of dirt, and cannot be obtained in the inventory in Survival mode. It is required to grow all types of seeds, as well as carrots and potatoes. Hydrated farmland (wet farmland) is farmland that becomes soaked with water from a water block within 4 blocks horizontally and on the same level or 1 block above the farmland block.","category":"","family":"farmland","primary":"#8f6747","hue_group":"red"},{"id":"minecraft:fern","name":"Fern","description":"Ferns are a non-solid plant block found only in certain biomes and have the same characteristics as grass.","category":"","family":"fern","primary":"#7c7d7c","hue_group":"neutral"},{"id":"minecraft:fire","name":"Fire","description":"Fire is a non-solid block that can spread to nearby flammable blocks and destroy them.","category":"","family":"fire","primary":"#d48c36","hue_group":"yellow"},{"id":"minecraft:fire_coral","name":"Fire Coral","description":"Coral is a type of non-solid block that comes in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"fire_coral","primary":"#a7262f","hue_group":"red"},{"id":"minecraft:fire_coral_block","name":"Fire Coral Block","description":"A coral block is a solid block that comes in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"fire_coral_block","primary":"#a4232f","hue_group":"red"},{"id":"minecraft:fire_coral_fan","name":"Fire Coral Fan","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"fire_coral_fan","primary":"#9f232e","hue_group":"red"},{"id":"minecraft:fire_coral_wall_fan","name":"Fire Coral Wall Fan","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"fire_coral_wall_fan","primary":"#9f232e","hue_group":"red"},{"id":"minecraft:firefly_bush","name":"Firefly Bush","description":"A firefly bush is a decorative plant that produces firefly particles around it when exposed to darkness.","category":"","family":"firefly_bush","primary":"#58532b","hue_group":"yellow"},{"id":"minecraft:fletching_table","name":"Fletching Table","description":"The fletching table is a fletcher's job site block that can generate naturally in villages. It is used to turn an unemployed villager into a fletcher.","category":"utility","family":"fletching_table","primary":"#ad9b6f","hue_group":"yellow"},{"id":"minecraft:flower_pot","name":"Flower Pot","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"flower_pot","primary":"#7c4535","hue_group":"red"},{"id":"minecraft:flowering_azalea","name":"Flowering Azalea","description":"A flowering azalea is a variant of azalea that counts as a flower for all purposes, including pollination by bees, except for crafting dyes.","category":"natural","family":"flowering_azalea","primary":"#707a40","hue_group":"yellow"},{"id":"minecraft:flowering_azalea_leaves","name":"Flowering Azalea Leaves","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","category":"natural","family":"flowering_azalea","primary":"#646f3d","hue_group":"yellow"},{"id":"minecraft:frogspawn","name":"Frogspawn","description":"Frogspawn is a non-solid block laid by frogs when they are bred, which hatches into tadpoles over time. It cannot be obtained as an item or moved by a piston.","category":"","family":"frogspawn","primary":"#6e5f57","hue_group":"neutral"},{"id":"minecraft:frosted_ice","name":"Frosted Ice","description":"Frosted ice is a translucent block created when a mob or entity wearing Frost Walker-enchanted boots moves over water. It cannot be obtained as an item and will quickly crack and melt if exposed to light or sunlight.","category":"","family":"frosted_ice","primary":"#8cb5fd","hue_group":"blue"},{"id":"minecraft:furnace","name":"Furnace","description":"A furnace is a block with two functions: it can be used for either smelting or cooking, by placing fuel and an appropriate item inside together.","category":"utility","family":"furnace","primary":"#6e6e6e","hue_group":"neutral"},{"id":"minecraft:gilded_blackstone","name":"Gilded Blackstone","description":"Gilded blackstone is a variant of blackstone found exclusively in bastion remnants, that can drop itself or gold nuggets when mined.","category":"","family":"gilded_blackstone","primary":"#382b26","hue_group":"red"},{"id":"minecraft:glass","name":"Glass","description":"Glass is a transparent solid block that can be dyed into stained glass, or crafted into tinted glass.","category":"building","family":"glass","primary":"#b0d6db","hue_group":"cyan"},{"id":"minecraft:glass_pane","name":"Glass Pane","description":"A glass pane is a transparent block that can be used as a more efficient alternative to glass blocks. It can be dyed into stained glass panes.","category":"building","family":"glass_pane","primary":"#aad2d9","hue_group":"cyan"},{"id":"minecraft:glow_item_frame","name":"Glow Item Frame","description":"A glow item frame is an entity‌[Java Edition only] or block‌[Bedrock Edition only] that keeps itself and the item inside it, illuminated, even in the dark.","category":"","family":"glow_item_frame","primary":"#946740","hue_group":"red"},{"id":"minecraft:glow_lichen","name":"Glow Lichen","description":"A glow lichen is a non-solid, light-emitting block. It can generate, or be placed, on any side of a solid block. It primarily generates on the side of blocks in caves.","category":"","family":"glow_lichen","primary":"#70837a","hue_group":"neutral"},{"id":"minecraft:glowstone","name":"Glowstone","description":"Glowstone is a light-emitting block found hanging from ceilings and overhangs in the Nether. It can be used as a crafting material, broken into glowstone dust, and is required to fuel respawn anchors.","category":"","family":"glowstone","primary":"#ac8354","hue_group":"yellow"},{"id":"minecraft:gold_block","name":"Gold Block","description":"A block of gold, internally known as a gold block, is a precious metal block equivalent to nine gold ingots.","category":"resource","family":"gold_block","primary":"#f6d03e","hue_group":"yellow"},{"id":"minecraft:gold_ore","name":"Gold Ore","description":"Gold ore is a rare mineral block found underground that drops raw gold when mined with an iron pickaxe or better. Deepslate gold ore is a variant of gold ore that can generate in deepslate and tuff.","category":"resource","family":"gold_ore","primary":"#91866b","hue_group":"yellow"},{"id":"minecraft:granite","name":"Granite","description":"Granite is a block of igneous rock, found in large pockets underground.","category":"","family":"granite","primary":"#956756","hue_group":"red"},{"id":"minecraft:granite_slab","name":"Granite Slab","description":"A granite slab is a decorative slab variant of granite that does not generate naturally and is used for building.","category":"building","family":"granite","primary":"#956756","hue_group":"red"},{"id":"minecraft:granite_stairs","name":"Granite Stairs","description":"Granite stairs are a decorative stairs variant of granite that generates in desert villages and is used for building.","category":"building","family":"granite","primary":"#956756","hue_group":"red"},{"id":"minecraft:granite_wall","name":"Granite Wall","description":"A granite wall is a decorative wall variant of granite that generates in desert villages and is used for building.","category":"building","family":"granite_wall","primary":"#956756","hue_group":"red"},{"id":"minecraft:grass_block","name":"Grass Block","description":"A grass block is a natural block that generates abundantly across the surface of the Overworld.","category":"natural","family":"grass_block","primary":"#939393","hue_group":"neutral"},{"id":"minecraft:gravel","name":"Gravel","description":"Gravel is a gravity-affected block found in the Overworld and the Nether. It is a source of flint, which has a chance to drop when gravel is broken.","category":"natural","family":"gravel","primary":"#847f7f","hue_group":"neutral"},{"id":"minecraft:gray_banner","name":"Gray Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"gray_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:gray_bed","name":"Gray Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"gray_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:gray_candle","name":"Gray Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"gray_candle","primary":"#505e61","hue_group":"neutral"},{"id":"minecraft:gray_candle_cake","name":"Gray Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"gray_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:gray_carpet","name":"Gray Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"gray_carpet","primary":"#3f4448","hue_group":"neutral"},{"id":"minecraft:gray_concrete","name":"Gray Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"gray_concrete","primary":"#373a3e","hue_group":"neutral"},{"id":"minecraft:gray_concrete_powder","name":"Gray Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"gray_concrete_powder","primary":"#4d5155","hue_group":"neutral"},{"id":"minecraft:gray_glazed_terracotta","name":"Gray Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"gray_glazed_terracotta","primary":"#535a5e","hue_group":"neutral"},{"id":"minecraft:gray_shulker_box","name":"Gray Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"gray_shulker_box","primary":"#373b3e","hue_group":"neutral"},{"id":"minecraft:gray_stained_glass","name":"Gray Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"gray_stained_glass","primary":"#4c4c4c","hue_group":"neutral"},{"id":"minecraft:gray_stained_glass_pane","name":"Gray Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"gray_stained_glass_pane","primary":"#4a4a4a","hue_group":"neutral"},{"id":"minecraft:gray_terracotta","name":"Gray Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"gray_terracotta","primary":"#3a2a24","hue_group":"red"},{"id":"minecraft:gray_wall_banner","name":"Gray Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"gray_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:gray_wool","name":"Gray Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"gray_wool","primary":"#3f4448","hue_group":"neutral"},{"id":"minecraft:green_banner","name":"Green Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"green_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:green_bed","name":"Green Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"green_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:green_candle","name":"Green Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"green_candle","primary":"#496015","hue_group":"yellow"},{"id":"minecraft:green_candle_cake","name":"Green Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"green_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:green_carpet","name":"Green Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"green_carpet","primary":"#556e1c","hue_group":"yellow"},{"id":"minecraft:green_concrete","name":"Green Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"green_concrete","primary":"#495b24","hue_group":"yellow"},{"id":"minecraft:green_concrete_powder","name":"Green Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"green_concrete_powder","primary":"#61772d","hue_group":"yellow"},{"id":"minecraft:green_glazed_terracotta","name":"Green Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"green_glazed_terracotta","primary":"#758e43","hue_group":"yellow"},{"id":"minecraft:green_shulker_box","name":"Green Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"green_shulker_box","primary":"#4f6520","hue_group":"yellow"},{"id":"minecraft:green_stained_glass","name":"Green Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"green_stained_glass","primary":"#667f33","hue_group":"yellow"},{"id":"minecraft:green_stained_glass_pane","name":"Green Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"green_stained_glass_pane","primary":"#627b31","hue_group":"yellow"},{"id":"minecraft:green_terracotta","name":"Green Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"green_terracotta","primary":"#4c532a","hue_group":"yellow"},{"id":"minecraft:green_wall_banner","name":"Green Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"green_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:green_wool","name":"Green Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"green_wool","primary":"#556e1c","hue_group":"yellow"},{"id":"minecraft:grindstone","name":"Grindstone","description":"A grindstone is a block used to remove all enchantments (except for curses) from items, refunding some experience orbs. Additionally, it can repair tools, weapons, and armor. It also serves as a weaponsmith's job site block.","category":"utility","family":"grindstone","primary":"#8c8c8c","hue_group":"neutral"},{"id":"minecraft:hanging_roots","name":"Hanging Roots","description":"Hanging roots are a natural decorative block found underground in the lush caves biome.","category":"natural","family":"hanging_roots","primary":"#a1735c","hue_group":"red"},{"id":"minecraft:hay_block","name":"Hay Block","description":"Hay bales are storage blocks equivalent to nine pieces of wheat. They are used as a crafting ingredient, to feed llamas and all horse variants, reduce fall damage, and extend campfire smoke.","category":"","family":"hay_block","primary":"#a68826","hue_group":"yellow"},{"id":"minecraft:heavy_core","name":"Heavy Core","description":"A heavy core is a rare block that can only be obtained from ominous vaults found in trial chambers. It can be combined with a breeze rod to craft a mace.","category":"","family":"heavy_core","primary":"#52565e","hue_group":"neutral"},{"id":"minecraft:heavy_weighted_pressure_plate","name":"Heavy Weighted Pressure Plate","description":"A heavy weighted pressure plate is a type of pressure plate that produces a redstone signal while an entity is touching it. Depending on how many entities are touching it between 1 and the maximum of 141, the outputted signal strength will range from 1 to 15.","category":"building","family":"heavy_weighted_pressure_plate","primary":"#dcdcdc","hue_group":"neutral"},{"id":"minecraft:honey_block","name":"Honey Block","description":"A honey block is a storage block equivalent to the contents of four honey bottles. It is sticky, can prevent jumping, and can be used in conjunction with pistons to move blocks and adhered entities.","category":"","family":"honey_block","primary":"#fbbc3a","hue_group":"yellow"},{"id":"minecraft:honeycomb_block","name":"Honeycomb Block","description":"Honeycomb blocks are decorative blocks crafted from honeycombs.","category":"","family":"honeycomb_block","primary":"#e5941e","hue_group":"yellow"},{"id":"minecraft:hopper","name":"Hopper","description":"A hopper is a low-capacity storage block that can be used to collect item entities directly above it, as well as to transfer items into and out of other containers. A hopper can be locked with redstone power to stop it from moving items into or out of itself.","category":"redstone","family":"hopper","primary":"#4c4a4c","hue_group":"neutral"},{"id":"minecraft:horn_coral","name":"Horn Coral","description":"Coral is a type of non-solid block that comes in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"horn_coral","primary":"#d1ba3f","hue_group":"yellow"},{"id":"minecraft:horn_coral_block","name":"Horn Coral Block","description":"A coral block is a solid block that comes in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"horn_coral_block","primary":"#d8c842","hue_group":"yellow"},{"id":"minecraft:horn_coral_fan","name":"Horn Coral Fan","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"horn_coral_fan","primary":"#ceb73d","hue_group":"yellow"},{"id":"minecraft:horn_coral_wall_fan","name":"Horn Coral Wall Fan","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"horn_coral_wall_fan","primary":"#ceb73d","hue_group":"yellow"},{"id":"minecraft:ice","name":"Ice","description":"Ice is a transparent block formed from frozen water, which it can melt into if broken or exposed to bright light. Its top face is slippery for most entities and causes ridden boats to move at high speeds.","category":"natural","family":"ice","primary":"#92b8fe","hue_group":"blue"},{"id":"minecraft:infested_chiseled_stone_bricks","name":"Infested Chiseled Stone Bricks","description":"An infested block is a stone, stone variant or deepslate block inhabited by a silverfish, which can break out if it is mined or a nearby silverfish is attacked. Infested blocks break more quickly, do not drop as items and can be safely cleaned of infestation using Silk Touch.","category":"building","family":"infested_chiseled_stone_bricks","primary":"#787778","hue_group":"neutral"},{"id":"minecraft:infested_cobblestone","name":"Infested Cobblestone","description":"An infested block is a stone, stone variant or deepslate block inhabited by a silverfish, which can break out if it is mined or a nearby silverfish is attacked. Infested blocks break more quickly, do not drop as items and can be safely cleaned of infestation using Silk Touch.","category":"","family":"infested_cobblestone","primary":"#807f80","hue_group":"neutral"},{"id":"minecraft:infested_cracked_stone_bricks","name":"Infested Cracked Stone Bricks","description":"An infested block is a stone, stone variant or deepslate block inhabited by a silverfish, which can break out if it is mined or a nearby silverfish is attacked. Infested blocks break more quickly, do not drop as items and can be safely cleaned of infestation using Silk Touch.","category":"building","family":"infested_cracked_stone_bricks","primary":"#767676","hue_group":"neutral"},{"id":"minecraft:infested_deepslate","name":"Infested Deepslate","description":"An infested block is a stone, stone variant or deepslate block inhabited by a silverfish, which can break out if it is mined or a nearby silverfish is attacked. Infested blocks break more quickly, do not drop as items and can be safely cleaned of infestation using Silk Touch.","category":"","family":"infested_deepslate","primary":"#505053","hue_group":"neutral"},{"id":"minecraft:infested_mossy_stone_bricks","name":"Infested Mossy Stone Bricks","description":"An infested block is a stone, stone variant or deepslate block inhabited by a silverfish, which can break out if it is mined or a nearby silverfish is attacked. Infested blocks break more quickly, do not drop as items and can be safely cleaned of infestation using Silk Touch.","category":"building","family":"infested_mossy_stone_bricks","primary":"#737969","hue_group":"neutral"},{"id":"minecraft:infested_stone","name":"Infested Stone","description":"An infested block is a stone, stone variant or deepslate block inhabited by a silverfish, which can break out if it is mined or a nearby silverfish is attacked. Infested blocks break more quickly, do not drop as items and can be safely cleaned of infestation using Silk Touch.","category":"","family":"infested_stone","primary":"#7e7e7e","hue_group":"neutral"},{"id":"minecraft:infested_stone_bricks","name":"Infested Stone Bricks","description":"An infested block is a stone, stone variant or deepslate block inhabited by a silverfish, which can break out if it is mined or a nearby silverfish is attacked. Infested blocks break more quickly, do not drop as items and can be safely cleaned of infestation using Silk Touch.","category":"building","family":"infested_stone_bricks","primary":"#7a7a7a","hue_group":"neutral"},{"id":"minecraft:iron_bars","name":"Iron Bars","description":"Iron bars are the iron variant of bars.","category":"","family":"iron_bars","primary":"#898b88","hue_group":"neutral"},{"id":"minecraft:iron_block","name":"Iron Block","description":"A block of iron, known internally as an iron block, is a precious metal block equivalent to nine iron ingots.","category":"resource","family":"iron_block","primary":"#dcdcdc","hue_group":"neutral"},{"id":"minecraft:iron_chain","name":"Iron Chain","description":"Iron chains are metallic decoration blocks and the iron variant of the chain.","category":"","family":"iron_chain","primary":"#333a4a","hue_group":"blue"},{"id":"minecraft:iron_door","name":"Iron Door","description":"The iron door is a variant of the door made of iron that can only be opened using redstone. Iron doors are more secure than wooden and copper doors because they cannot be opened by hand and cannot be broken by zombies. They are also more resistant to explosions, and immune to fire and lava.","category":"building","family":"iron","primary":"#c2c1c1","hue_group":"neutral"},{"id":"minecraft:iron_ore","name":"Iron Ore","description":"Iron ore is a mineral block typically found underground. It is a source of raw iron, which can be smelted into iron ingots. Deepslate iron ore is the deepslate variant of iron ore. It is found in deepslate layers.","category":"resource","family":"iron_ore","primary":"#88817b","hue_group":"neutral"},{"id":"minecraft:iron_trapdoor","name":"Iron Trapdoor","description":"An iron trapdoor is a variant of the trapdoor that can be only opened using redstone mechanisms.","category":"building","family":"iron_trapdoor","primary":"#cbcaca","hue_group":"neutral"},{"id":"minecraft:item_frame","name":"Item Frame","description":"An item frame is an entity‌[JE only] or block‌[BE only] that displays the item or block that is inside it.","category":"","family":"item_frame","primary":"#75432b","hue_group":"red"},{"id":"minecraft:jack_o_lantern","name":"Jack O Lantern","description":"A jack o'lantern is a variant of pumpkin that emits light, and can be used to build golems.","category":"","family":"jack_o_lantern","primary":"#d79835","hue_group":"yellow"},{"id":"minecraft:jigsaw","name":"Jigsaw","description":"Jigsaw blocks are technical blocks commonly used as a way to construct large structures from smaller sections.","category":"technical","family":"jigsaw","primary":"#504651","hue_group":"neutral"},{"id":"minecraft:jukebox","name":"Jukebox","description":"A jukebox is a block used to insert and play music discs. Playing a disc causes it to produce a redstone signal and allows nearby allays to duplicate when given amethyst shards.","category":"utility","family":"jukebox","primary":"#5e402f","hue_group":"red"},{"id":"minecraft:jungle_button","name":"Jungle Button","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","category":"building","family":"jungle_button","primary":"#a07351","hue_group":"red"},{"id":"minecraft:jungle_door","name":"Jungle Door","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","category":"building","family":"jungle","primary":"#a47855","hue_group":"red"},{"id":"minecraft:jungle_fence","name":"Jungle Fence","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","category":"building","family":"jungle","primary":"#a07351","hue_group":"red"},{"id":"minecraft:jungle_fence_gate","name":"Jungle Fence Gate","description":"A fence gate is a block that shares the functions of both the door and the fence.","category":"building","family":"jungle_fence_gate","primary":"#a07351","hue_group":"red"},{"id":"minecraft:jungle_hanging_sign","name":"Jungle Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"jungle_hanging_sign","primary":"#ab8555","hue_group":"yellow"},{"id":"minecraft:jungle_leaves","name":"Jungle Leaves","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","category":"natural","family":"jungle","primary":"#9d9a90","hue_group":"neutral"},{"id":"minecraft:jungle_log","name":"Jungle Log","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","category":"natural","family":"jungle","primary":"#554419","hue_group":"yellow"},{"id":"minecraft:jungle_planks","name":"Jungle Planks","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","category":"building","family":"jungle","primary":"#a07351","hue_group":"red"},{"id":"minecraft:jungle_pressure_plate","name":"Jungle Pressure Plate","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","category":"building","family":"jungle_pressure_plate","primary":"#a07351","hue_group":"red"},{"id":"minecraft:jungle_sapling","name":"Jungle Sapling","description":"A sapling is a non-solid block that can be grown into a tree.","category":"natural","family":"jungle","primary":"#305111","hue_group":"green"},{"id":"minecraft:jungle_shelf","name":"Jungle Shelf","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","category":"","family":"jungle_shelf","primary":"#9c7a4a","hue_group":"yellow"},{"id":"minecraft:jungle_sign","name":"Jungle Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"jungle_sign","primary":"#a07351","hue_group":"red"},{"id":"minecraft:jungle_slab","name":"Jungle Slab","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","category":"building","family":"jungle","primary":"#a07351","hue_group":"red"},{"id":"minecraft:jungle_stairs","name":"Jungle Stairs","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","category":"building","family":"jungle","primary":"#a07351","hue_group":"red"},{"id":"minecraft:jungle_trapdoor","name":"Jungle Trapdoor","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","category":"building","family":"jungle_trapdoor","primary":"#996e4d","hue_group":"red"},{"id":"minecraft:jungle_wall_hanging_sign","name":"Jungle Wall Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"jungle_wall_hanging_sign","primary":"#ab8555","hue_group":"yellow"},{"id":"minecraft:jungle_wall_sign","name":"Jungle Wall Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"jungle_wall_sign","primary":"#a07351","hue_group":"red"},{"id":"minecraft:jungle_wood","name":"Jungle Wood","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","category":"building","family":"jungle","primary":"#554419","hue_group":"yellow"},{"id":"minecraft:kelp","name":"Kelp","description":"Kelp is aquatic algae found in most oceans. It can be planted underwater and grows over time (though not forever) or from bone meal usage. Smelting it results in dried kelp, which is edible and craftable into dried kelp blocks.","category":"natural","family":"kelp","primary":"#578c2d","hue_group":"green"},{"id":"minecraft:kelp_plant","name":"Kelp Plant","description":"Kelp is aquatic algae found in most oceans. It can be planted underwater and grows over time (though not forever) or from bone meal usage. Smelting it results in dried kelp, which is edible and craftable into dried kelp blocks.","category":"natural","family":"kelp_plant","primary":"#57822b","hue_group":"yellow"},{"id":"minecraft:ladder","name":"Ladder","description":"The ladder is a block used for climbing walls either vertically or horizontally. They can be placed only on the sides of other blocks.","category":"","family":"ladder","primary":"#7d6137","hue_group":"yellow"},{"id":"minecraft:lantern","name":"Lantern","description":"Lanterns are blocks that emit light.","category":"","family":"lantern","primary":"#6a5b54","hue_group":"neutral"},{"id":"minecraft:lapis_block","name":"Lapis Block","description":"A block of lapis lazuli, internally known as a lapis block, is a mineral block equivalent to nine pieces of lapis lazuli.","category":"resource","family":"lapis_block","primary":"#1f438c","hue_group":"blue"},{"id":"minecraft:lapis_ore","name":"Lapis Ore","description":"Lapis lazuli ore, internally known as lapis ore, is the ore block from which lapis lazuli is obtained. Deepslate lapis lazuli ore, internally known as deepslate lapis ore, is a variant of lapis lazuli ore that generates in deepslate layers.","category":"resource","family":"lapis_ore","primary":"#6b768d","hue_group":"blue"},{"id":"minecraft:large_amethyst_bud","name":"Large Amethyst Bud","description":"Amethyst buds are the first three stages of growth of amethyst clusters, which grow on budding amethyst. Amethyst clusters are the fourth and final growth stage of amethyst buds, which drop amethyst shards when mined.","category":"","family":"large_amethyst_bud","primary":"#a17ecb","hue_group":"blue"},{"id":"minecraft:large_fern","name":"Large Fern","description":"A large fern is the 2-block tall variant of the fern.","category":"","family":"large_fern","primary":"#848484","hue_group":"neutral"},{"id":"minecraft:lava","name":"Lava","description":"Lava is a light-emitting fluid that causes fire damage, mostly found in the lower reaches of the Overworld and the Nether.","category":"","family":"lava","primary":"#d45a12","hue_group":"red"},{"id":"minecraft:lava_cauldron","name":"Lava Cauldron","description":"A cauldron is a block that can contain water, lava or powder snow and, in certain situations, collect them from the environment. In Bedrock Edition, it can also hold dyed water or potions, and can be used to efficiently create tipped arrows. It also serves as a leatherworker's job site block.","category":"","family":"lava_cauldron","primary":"#4a494a","hue_group":"neutral"},{"id":"minecraft:leaf_litter","name":"Leaf Litter","description":"Leaf litter is a thin decorative block resembling fallen leaves. Up to four can be placed in the same block space.","category":"","family":"leaf_litter","primary":"#ababab","hue_group":"neutral"},{"id":"minecraft:lectern","name":"Lectern","description":"A lectern is a block used to display a book and quill or written book for reading. Turning a page triggers a redstone pulse. It also serves as a librarian's job site block.","category":"utility","family":"lectern","primary":"#ae8a53","hue_group":"yellow"},{"id":"minecraft:lever","name":"Lever","description":"The lever is a non-solid block that can be switched to provide redstone power.","category":"redstone","family":"lever","primary":"#6f5d43","hue_group":"yellow"},{"id":"minecraft:light","name":"Light","description":"Light (or lighting) in Minecraft is a game mechanic that affects visibility, mob spawning, and the growth of some plants. There are three aspects of Minecraft's lighting system: light level, internal light level, and rendered brightness.","category":"technical","family":"light","primary":"#889186","hue_group":"neutral"},{"id":"minecraft:light_blue_banner","name":"Light Blue Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"light_blue_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:light_blue_bed","name":"Light Blue Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"light_blue_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:light_blue_candle","name":"Light Blue Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"light_blue_candle","primary":"#238ac5","hue_group":"cyan"},{"id":"minecraft:light_blue_candle_cake","name":"Light Blue Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"light_blue_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:light_blue_carpet","name":"Light Blue Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"light_blue_carpet","primary":"#3aafd9","hue_group":"cyan"},{"id":"minecraft:light_blue_concrete","name":"Light Blue Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"light_blue_concrete","primary":"#2489c7","hue_group":"cyan"},{"id":"minecraft:light_blue_concrete_powder","name":"Light Blue Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"light_blue_concrete_powder","primary":"#4ab5d5","hue_group":"cyan"},{"id":"minecraft:light_blue_glazed_terracotta","name":"Light Blue Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"light_blue_glazed_terracotta","primary":"#5fa5d1","hue_group":"cyan"},{"id":"minecraft:light_blue_shulker_box","name":"Light Blue Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"light_blue_shulker_box","primary":"#31a4d4","hue_group":"cyan"},{"id":"minecraft:light_blue_stained_glass","name":"Light Blue Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"light_blue_stained_glass","primary":"#6699d8","hue_group":"blue"},{"id":"minecraft:light_blue_stained_glass_pane","name":"Light Blue Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"light_blue_stained_glass_pane","primary":"#6293d1","hue_group":"blue"},{"id":"minecraft:light_blue_terracotta","name":"Light Blue Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"light_blue_terracotta","primary":"#716d8a","hue_group":"neutral"},{"id":"minecraft:light_blue_wall_banner","name":"Light Blue Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"light_blue_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:light_blue_wool","name":"Light Blue Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"light_blue_wool","primary":"#3aafd9","hue_group":"cyan"},{"id":"minecraft:light_gray_banner","name":"Light Gray Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"light_gray_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:light_gray_bed","name":"Light Gray Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"light_gray_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:light_gray_candle","name":"Light Gray Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"light_gray_candle","primary":"#767970","hue_group":"neutral"},{"id":"minecraft:light_gray_candle_cake","name":"Light Gray Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"light_gray_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:light_gray_carpet","name":"Light Gray Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"light_gray_carpet","primary":"#8e8e87","hue_group":"neutral"},{"id":"minecraft:light_gray_concrete","name":"Light Gray Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"light_gray_concrete","primary":"#7d7d73","hue_group":"neutral"},{"id":"minecraft:light_gray_concrete_powder","name":"Light Gray Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"light_gray_concrete_powder","primary":"#9b9b94","hue_group":"neutral"},{"id":"minecraft:light_gray_glazed_terracotta","name":"Light Gray Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"light_gray_glazed_terracotta","primary":"#90a6a8","hue_group":"cyan"},{"id":"minecraft:light_gray_shulker_box","name":"Light Gray Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"light_gray_shulker_box","primary":"#7c7c73","hue_group":"neutral"},{"id":"minecraft:light_gray_stained_glass","name":"Light Gray Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"light_gray_stained_glass","primary":"#999999","hue_group":"neutral"},{"id":"minecraft:light_gray_stained_glass_pane","name":"Light Gray Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"light_gray_stained_glass_pane","primary":"#939393","hue_group":"neutral"},{"id":"minecraft:light_gray_terracotta","name":"Light Gray Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"light_gray_terracotta","primary":"#876b62","hue_group":"red"},{"id":"minecraft:light_gray_wall_banner","name":"Light Gray Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"light_gray_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:light_gray_wool","name":"Light Gray Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"light_gray_wool","primary":"#8e8e87","hue_group":"neutral"},{"id":"minecraft:light_weighted_pressure_plate","name":"Light Weighted Pressure Plate","description":"A light weighted pressure plate is a type of pressure plate that outputs a variable redstone signal strength equal to the number of entities touching it, but no higher than 15.","category":"building","family":"light_weighted_pressure_plate","primary":"#f6d03e","hue_group":"yellow"},{"id":"minecraft:lightning_rod","name":"Lightning Rod","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","category":"","family":"lightning_rod","primary":"#c56f53","hue_group":"red"},{"id":"minecraft:lilac","name":"Lilac","description":"A lilac is a tall flower that can be crafted into magenta dye.","category":"","family":"lilac","primary":"#897c7f","hue_group":"neutral"},{"id":"minecraft:lily_of_the_valley","name":"Lily Of The Valley","description":"A lily of the valley is a flower often found in forested biomes that can be crafted into white dye and suspicious stew.","category":"","family":"lily_of_the_valley","primary":"#7baf5f","hue_group":"green"},{"id":"minecraft:lily_pad","name":"Lily Pad","description":"A lily pad is a plant block found in swamps, mangrove swamps and as fishing loot. It can only be placed on water or waterlogged blocks and can be stood on as a platform.","category":"","family":"lily_pad","primary":"#868686","hue_group":"neutral"},{"id":"minecraft:lime_banner","name":"Lime Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"lime_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:lime_bed","name":"Lime Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"lime_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:lime_candle","name":"Lime Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"lime_candle","primary":"#62ac17","hue_group":"yellow"},{"id":"minecraft:lime_candle_cake","name":"Lime Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"lime_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:lime_carpet","name":"Lime Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"lime_carpet","primary":"#70b91a","hue_group":"yellow"},{"id":"minecraft:lime_concrete","name":"Lime Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"lime_concrete","primary":"#5ea918","hue_group":"green"},{"id":"minecraft:lime_concrete_powder","name":"Lime Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"lime_concrete_powder","primary":"#7dbd2a","hue_group":"yellow"},{"id":"minecraft:lime_glazed_terracotta","name":"Lime Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"lime_glazed_terracotta","primary":"#a3c637","hue_group":"yellow"},{"id":"minecraft:lime_shulker_box","name":"Lime Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"lime_shulker_box","primary":"#64ad17","hue_group":"yellow"},{"id":"minecraft:lime_stained_glass","name":"Lime Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"lime_stained_glass","primary":"#7fcc19","hue_group":"yellow"},{"id":"minecraft:lime_stained_glass_pane","name":"Lime Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"lime_stained_glass_pane","primary":"#7bc518","hue_group":"yellow"},{"id":"minecraft:lime_terracotta","name":"Lime Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"lime_terracotta","primary":"#687635","hue_group":"yellow"},{"id":"minecraft:lime_wall_banner","name":"Lime Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"lime_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:lime_wool","name":"Lime Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"lime_wool","primary":"#70b91a","hue_group":"yellow"},{"id":"minecraft:lodestone","name":"Lodestone","description":"A lodestone is a block that can be used to alter compasses to point toward it.","category":"utility","family":"lodestone","primary":"#77787b","hue_group":"neutral"},{"id":"minecraft:loom","name":"Loom","description":"A loom is a block used to apply customizable and layerable designs to banners using dyes. Some designs require banner patterns to apply. It also serves as a shepherd's job site block.","category":"utility","family":"loom","primary":"#8e775c","hue_group":"yellow"},{"id":"minecraft:magenta_banner","name":"Magenta Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"magenta_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:magenta_bed","name":"Magenta Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"magenta_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:magenta_candle","name":"Magenta Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"magenta_candle","primary":"#a12e99","hue_group":"purple"},{"id":"minecraft:magenta_candle_cake","name":"Magenta Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"magenta_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:magenta_carpet","name":"Magenta Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"magenta_carpet","primary":"#be45b4","hue_group":"purple"},{"id":"minecraft:magenta_concrete","name":"Magenta Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"magenta_concrete","primary":"#a9309f","hue_group":"purple"},{"id":"minecraft:magenta_concrete_powder","name":"Magenta Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"magenta_concrete_powder","primary":"#c154b9","hue_group":"purple"},{"id":"minecraft:magenta_glazed_terracotta","name":"Magenta Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"magenta_glazed_terracotta","primary":"#d064c0","hue_group":"purple"},{"id":"minecraft:magenta_shulker_box","name":"Magenta Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"magenta_shulker_box","primary":"#ae36a4","hue_group":"purple"},{"id":"minecraft:magenta_stained_glass","name":"Magenta Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"magenta_stained_glass","primary":"#b24cd8","hue_group":"purple"},{"id":"minecraft:magenta_stained_glass_pane","name":"Magenta Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"magenta_stained_glass_pane","primary":"#ab4ad1","hue_group":"purple"},{"id":"minecraft:magenta_terracotta","name":"Magenta Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"magenta_terracotta","primary":"#96586d","hue_group":"red"},{"id":"minecraft:magenta_wall_banner","name":"Magenta Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"magenta_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:magenta_wool","name":"Magenta Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"magenta_wool","primary":"#be45b4","hue_group":"purple"},{"id":"minecraft:magma_block","name":"Magma Block","description":"A magma block is a light-emitting block found underwater in the Overworld, and more abundantly in the Nether. It deals burning damage while stood on, which can be prevented by sneaking. Underwater magma blocks produce bubble columns that pull entities downward and provide air.","category":"","family":"magma_block","primary":"#8f3f20","hue_group":"red"},{"id":"minecraft:mangrove_button","name":"Mangrove Button","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","category":"building","family":"mangrove_button","primary":"#763631","hue_group":"red"},{"id":"minecraft:mangrove_door","name":"Mangrove Door","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","category":"building","family":"mangrove","primary":"#71312f","hue_group":"red"},{"id":"minecraft:mangrove_fence","name":"Mangrove Fence","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","category":"building","family":"mangrove","primary":"#763631","hue_group":"red"},{"id":"minecraft:mangrove_fence_gate","name":"Mangrove Fence Gate","description":"A fence gate is a block that shares the functions of both the door and the fence.","category":"building","family":"mangrove_fence_gate","primary":"#763631","hue_group":"red"},{"id":"minecraft:mangrove_hanging_sign","name":"Mangrove Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"mangrove_hanging_sign","primary":"#783630","hue_group":"red"},{"id":"minecraft:mangrove_leaves","name":"Mangrove Leaves","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","category":"natural","family":"mangrove","primary":"#828181","hue_group":"neutral"},{"id":"minecraft:mangrove_log","name":"Mangrove Log","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","category":"natural","family":"mangrove","primary":"#544329","hue_group":"yellow"},{"id":"minecraft:mangrove_planks","name":"Mangrove Planks","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","category":"building","family":"mangrove","primary":"#763631","hue_group":"red"},{"id":"minecraft:mangrove_pressure_plate","name":"Mangrove Pressure Plate","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","category":"building","family":"mangrove_pressure_plate","primary":"#763631","hue_group":"red"},{"id":"minecraft:mangrove_propagule","name":"Mangrove Propagule","description":"A mangrove propagule is a block that can be grown into a mangrove tree, similar to a sapling.","category":"","family":"mangrove_propagule","primary":"#60af54","hue_group":"green"},{"id":"minecraft:mangrove_roots","name":"Mangrove Roots","description":"Mangrove roots are blocks that form as part of mangrove trees. Unlike similar blocks such as copper grates, mangrove roots are capable of conducting redstone power.","category":"natural","family":"mangrove_roots","primary":"#4b3c27","hue_group":"yellow"},{"id":"minecraft:mangrove_shelf","name":"Mangrove Shelf","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","category":"","family":"mangrove_shelf","primary":"#6d2d2a","hue_group":"red"},{"id":"minecraft:mangrove_sign","name":"Mangrove Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"mangrove_sign","primary":"#763631","hue_group":"red"},{"id":"minecraft:mangrove_slab","name":"Mangrove Slab","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","category":"building","family":"mangrove","primary":"#763631","hue_group":"red"},{"id":"minecraft:mangrove_stairs","name":"Mangrove Stairs","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","category":"building","family":"mangrove","primary":"#763631","hue_group":"red"},{"id":"minecraft:mangrove_trapdoor","name":"Mangrove Trapdoor","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","category":"building","family":"mangrove_trapdoor","primary":"#6f2f2a","hue_group":"red"},{"id":"minecraft:mangrove_wall_hanging_sign","name":"Mangrove Wall Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"mangrove_wall_hanging_sign","primary":"#783630","hue_group":"red"},{"id":"minecraft:mangrove_wall_sign","name":"Mangrove Wall Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"mangrove_wall_sign","primary":"#763631","hue_group":"red"},{"id":"minecraft:mangrove_wood","name":"Mangrove Wood","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","category":"building","family":"mangrove","primary":"#544329","hue_group":"yellow"},{"id":"minecraft:medium_amethyst_bud","name":"Medium Amethyst Bud","description":"Amethyst buds are the first three stages of growth of amethyst clusters, which grow on budding amethyst. Amethyst clusters are the fourth and final growth stage of amethyst buds, which drop amethyst shards when mined.","category":"","family":"medium_amethyst_bud","primary":"#9e78ca","hue_group":"blue"},{"id":"minecraft:melon","name":"Melon","description":"A melon is a fruit block that grows from a fully-grown melon stem, which in turn is grown from melon seeds.","category":"","family":"melon","primary":"#72921e","hue_group":"yellow"},{"id":"minecraft:melon_stem","name":"Melon Stem","description":"Melon seeds are items obtained from melon slices that can be used to grow melon stems. Melon stems are plants grown on farmland that, over time, grow melons on dirt, mud and moss blocks adjacent to them.","category":"natural","family":"melon_stem","primary":"#9a9a9a","hue_group":"neutral"},{"id":"minecraft:moss_block","name":"Moss Block","description":"A moss block is a natural block that can be spread to other blocks by using bone meal.","category":"natural","family":"moss_block","primary":"#596e2d","hue_group":"yellow"},{"id":"minecraft:moss_carpet","name":"Moss Carpet","description":"A moss carpet is a thin decorative variant of the moss block, resembling a carpet in functionality.","category":"decorative","family":"moss_carpet","primary":"#596e2d","hue_group":"yellow"},{"id":"minecraft:mossy_cobblestone","name":"Mossy Cobblestone","description":"Mossy cobblestone is a variant of cobblestone with moss on it. It is mainly used for crafting or as building block.","category":"natural","family":"mossy_cobblestone","primary":"#6e765f","hue_group":"neutral"},{"id":"minecraft:mossy_cobblestone_slab","name":"Mossy Cobblestone Slab","description":"A mossy cobblestone slab is a decorative slab variant of mossy cobblestone that generates in pillager outposts and is used for building.","category":"building","family":"mossy_cobblestone","primary":"#6e765f","hue_group":"neutral"},{"id":"minecraft:mossy_cobblestone_stairs","name":"Mossy Cobblestone Stairs","description":"Mossy cobblestone stairs are a decorative stairs variant of mossy cobblestone that generates in pillager outposts and is used for building.","category":"building","family":"mossy_cobblestone","primary":"#6e765f","hue_group":"neutral"},{"id":"minecraft:mossy_cobblestone_wall","name":"Mossy Cobblestone Wall","description":"A mossy cobblestone wall is a decorative wall variant of mossy cobblestone that generates as part of pillager outposts and is used for building.","category":"building","family":"mossy_cobblestone_wall","primary":"#6e765f","hue_group":"neutral"},{"id":"minecraft:mossy_stone_brick_slab","name":"Mossy Stone Brick Slab","description":"A mossy stone brick slab is a decorative slab variant of mossy stone bricks that generates in ruined portals and is used for building.","category":"building","family":"mossy_stone_brick","primary":"#737969","hue_group":"neutral"},{"id":"minecraft:mossy_stone_brick_stairs","name":"Mossy Stone Brick Stairs","description":"Mossy stone brick stairs are a stairs variant of mossy stone bricks that generates in ruined portals and is used for building.","category":"building","family":"mossy_stone_brick","primary":"#737969","hue_group":"neutral"},{"id":"minecraft:mossy_stone_brick_wall","name":"Mossy Stone Brick Wall","description":"A mossy stone brick wall is a decorative wall variant of mossy stone bricks that generates in ruined portals and is used for building.","category":"building","family":"mossy_stone_brick_wall","primary":"#737969","hue_group":"neutral"},{"id":"minecraft:mossy_stone_bricks","name":"Mossy Stone Bricks","description":"Mossy stone bricks are a variant of stone bricks.","category":"building","family":"mossy_stone_bricks","primary":"#737969","hue_group":"neutral"},{"id":"minecraft:moving_piston","name":"Moving Piston","description":"Pistons and sticky pistons have 2 technical blocks that cannot be obtained. These include the piston head and moving piston blocks.","category":"technical","family":"moving_piston","primary":"#6e6961","hue_group":"neutral"},{"id":"minecraft:mud","name":"Mud","description":"Mud is a block found abundantly in mangrove swamps or created by using a water bottle on any type of dirt block. It can be used for crafting or converted into clay using pointed dripstone.","category":"","family":"mud","primary":"#3c393d","hue_group":"neutral"},{"id":"minecraft:mud_brick_slab","name":"Mud Brick Slab","description":"A mud brick slab is a decorative slab variant of mud bricks that generates in trail ruins and is used for building.","category":"building","family":"mud_brick","primary":"#89684f","hue_group":"red"},{"id":"minecraft:mud_brick_stairs","name":"Mud Brick Stairs","description":"Mud brick stairs are a decorative stairs variant of mud bricks that generates in trail ruins and is used for building.","category":"building","family":"mud_brick","primary":"#89684f","hue_group":"red"},{"id":"minecraft:mud_brick_wall","name":"Mud Brick Wall","description":"A mud brick wall is a decorative wall variant of mud bricks that generates in trail ruins and is used for building.","category":"building","family":"mud_brick_wall","primary":"#89684f","hue_group":"red"},{"id":"minecraft:mud_bricks","name":"Mud Bricks","description":"Mud bricks are a block obtained by crafting 4 packed mud.","category":"building","family":"mud_bricks","primary":"#89684f","hue_group":"red"},{"id":"minecraft:muddy_mangrove_roots","name":"Muddy Mangrove Roots","description":"Muddy mangrove roots are a decorative variant of mangrove roots with dirt-like properties.","category":"natural","family":"muddy_mangrove_roots","primary":"#443b30","hue_group":"yellow"},{"id":"minecraft:mushroom_stem","name":"Mushroom Stem","description":"A mushroom block is a solid block that makes up a huge mushroom, which consists of a mushroom stem and brown mushroom blocks or red mushroom blocks, depending on the color of the huge mushroom.","category":"natural","family":"mushroom_stem","primary":"#cbc5ba","hue_group":"yellow"},{"id":"minecraft:mycelium","name":"Mycelium","description":"Mycelium is a particularly rare variant of dirt that is only found naturally in mushroom fields biomes. It has a particle effect that resembles tiny spores being released constantly from the surface.","category":"","family":"mycelium","primary":"#6f6365","hue_group":"neutral"},{"id":"minecraft:nether_brick_fence","name":"Nether Brick Fence","description":"A Nether brick fence is a Nether brick variant of fences used to form Nether fortresses in the Nether.","category":"building","family":"nether_brick","primary":"#2c161a","hue_group":"red"},{"id":"minecraft:nether_brick_slab","name":"Nether Brick Slab","description":"A Nether brick slab is a decorative slab variant of Nether bricks that does not generate naturally and is used for building.","category":"building","family":"nether_brick","primary":"#2c161a","hue_group":"red"},{"id":"minecraft:nether_brick_stairs","name":"Nether Brick Stairs","description":"Nether brick stairs are a decorative stairs variant of Nether bricks that generate in Nether fortress staircases and are used for building.","category":"building","family":"nether_brick","primary":"#2c161a","hue_group":"red"},{"id":"minecraft:nether_brick_wall","name":"Nether Brick Wall","description":"A Nether brick wall is a decorative wall variant of Nether bricks that does not generate naturally and is used for building.","category":"building","family":"nether_brick_wall","primary":"#2c161a","hue_group":"red"},{"id":"minecraft:nether_bricks","name":"Nether Bricks","description":"Nether bricks are the building blocks of Nether fortresses in the Nether.","category":"building","family":"nether_bricks","primary":"#2c161a","hue_group":"red"},{"id":"minecraft:nether_gold_ore","name":"Nether Gold Ore","description":"Nether gold ore is a type of gold ore found in the Nether that drops gold nuggets instead of raw gold when broken. As with other gold blocks, breaking Nether gold ore will anger nearby piglins.","category":"resource","family":"nether_gold_ore","primary":"#73372a","hue_group":"red"},{"id":"minecraft:nether_portal","name":"Nether Portal","description":"The Nether portal is a manufactured structure made of obsidian that acts as a gateway between the Overworld and the Nether dimensions.","category":"","family":"nether_portal","primary":"#570bbf","hue_group":"blue"},{"id":"minecraft:nether_quartz_ore","name":"Nether Quartz Ore","description":"Nether quartz ore is an ore found in the Nether, and is a source of quartz.","category":"resource","family":"nether_quartz_ore","primary":"#76423e","hue_group":"red"},{"id":"minecraft:nether_sprouts","name":"Nether Sprouts","description":"Nether sprouts are a non-solid fungi block that generate in warped forests. Unlike other warped forest plants, it does not have a crimson equivalent.","category":"","family":"nether_sprouts","primary":"#149785","hue_group":"cyan"},{"id":"minecraft:nether_wart","name":"Nether Wart","description":"Nether wart is a fungus harvested from Nether wart crops and is used to plant them. It is an essential ingredient in almost every potion. Unlike other crimson plants, Nether wart doesn't have a warped equivalent, although warped wart blocks exist. Nether wart crops are found in Nether fortresses and bastion remnants and used to grow Nether wart, which only requires soul sand to grow.","category":"","family":"nether_wart","primary":"#761316","hue_group":"red"},{"id":"minecraft:nether_wart_block","name":"Nether Wart Block","description":"Nether wart blocks are decorative blocks found in crimson forests and crafted using Nether wart.","category":"","family":"nether_wart_block","primary":"#730302","hue_group":"red"},{"id":"minecraft:netherite_block","name":"Netherite Block","description":"A block of netherite, internally known as a netherite block, is a precious metal block made from nine netherite ingots. In item form, it is resistant to fire and lava, but can still be destroyed by cacti.","category":"resource","family":"netherite_block","primary":"#433d40","hue_group":"neutral"},{"id":"minecraft:netherrack","name":"Netherrack","description":"Netherrack is a frail stone block found abundantly in the Nether. Fire lit on top of netherrack burns indefinitely and cannot be extinguished by rain.","category":"","family":"netherrack","primary":"#622626","hue_group":"red"},{"id":"minecraft:note_block","name":"Note Block","description":"A note block is a block that emits sounds when attacked, used, or powered. The sound produced can be altered in various ways by using it or putting certain blocks directly above or below it. Allays are affected by note blocks, staying nearby and dropping held items next to it for a short while upon hearing its sound.","category":"utility","family":"note_block","primary":"#593b29","hue_group":"red"},{"id":"minecraft:oak_button","name":"Oak Button","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","category":"building","family":"oak_button","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:oak_door","name":"Oak Door","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","category":"building","family":"oak","primary":"#8d6f42","hue_group":"yellow"},{"id":"minecraft:oak_fence","name":"Oak Fence","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","category":"building","family":"oak","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:oak_fence_gate","name":"Oak Fence Gate","description":"A fence gate is a block that shares the functions of both the door and the fence.","category":"building","family":"oak_fence_gate","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:oak_hanging_sign","name":"Oak Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"oak_hanging_sign","primary":"#b19056","hue_group":"yellow"},{"id":"minecraft:oak_leaves","name":"Oak Leaves","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","category":"natural","family":"oak","primary":"#909090","hue_group":"neutral"},{"id":"minecraft:oak_log","name":"Oak Log","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","category":"natural","family":"oak","primary":"#6d5533","hue_group":"yellow"},{"id":"minecraft:oak_planks","name":"Oak Planks","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","category":"building","family":"oak","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:oak_pressure_plate","name":"Oak Pressure Plate","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","category":"building","family":"oak_pressure_plate","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:oak_sapling","name":"Oak Sapling","description":"A sapling is a non-solid block that can be grown into a tree.","category":"natural","family":"oak","primary":"#4e6b29","hue_group":"yellow"},{"id":"minecraft:oak_shelf","name":"Oak Shelf","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","category":"","family":"oak_shelf","primary":"#917343","hue_group":"yellow"},{"id":"minecraft:oak_sign","name":"Oak Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"oak_sign","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:oak_slab","name":"Oak Slab","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","category":"building","family":"oak","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:oak_stairs","name":"Oak Stairs","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","category":"building","family":"oak","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:oak_trapdoor","name":"Oak Trapdoor","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","category":"building","family":"oak_trapdoor","primary":"#7d6339","hue_group":"yellow"},{"id":"minecraft:oak_wall_hanging_sign","name":"Oak Wall Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"oak_wall_hanging_sign","primary":"#b19056","hue_group":"yellow"},{"id":"minecraft:oak_wall_sign","name":"Oak Wall Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"oak_wall_sign","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:oak_wood","name":"Oak Wood","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","category":"building","family":"oak","primary":"#6d5533","hue_group":"yellow"},{"id":"minecraft:observer","name":"Observer","description":"An observer is a block that emits a quick redstone pulse from its back whenever its \"face\" detects that the block, fluid, or air directly in front of it has changed.","category":"redstone","family":"observer","primary":"#626262","hue_group":"neutral"},{"id":"minecraft:obsidian","name":"Obsidian","description":"Obsidian is a block found naturally in all dimensions, and created when water flows over a lava source in the Overworld, or as part of structures in the Nether and the End. It has high hardness and blast resistance, making it immune to normal explosions. Obsidian can be used to craft beacons, enchanting tables, and ender chests, and build the frame of a Nether portal. Obsidian is only obtainable with a diamond or netherite pickaxe.","category":"","family":"obsidian","primary":"#0f0b19","hue_group":"blue"},{"id":"minecraft:ochre_froglight","name":"Ochre Froglight","description":"A froglight is a light-emitting block that is obtained when a frog eats a tiny magma cube. It comes in three variants based on the variant of frog that eats the magma cube.","category":"","family":"ochre_froglight","primary":"#f5e9b6","hue_group":"yellow"},{"id":"minecraft:open_eyeblossom","name":"Open Eyeblossom","description":"An eyeblossom is a unique flower found in the pale garden biome. It changes state depending on the daylight cycle, closing during the day and opening at night. Its \"eye\", visible only when the flower is open, glows in the dark but does not emit light in its surroundings.","category":"","family":"open_eyeblossom","primary":"#857d80","hue_group":"neutral"},{"id":"minecraft:orange_banner","name":"Orange Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"orange_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:orange_bed","name":"Orange Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"orange_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:orange_candle","name":"Orange Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"orange_candle","primary":"#db6409","hue_group":"red"},{"id":"minecraft:orange_candle_cake","name":"Orange Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"orange_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:orange_carpet","name":"Orange Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"orange_carpet","primary":"#f17614","hue_group":"red"},{"id":"minecraft:orange_concrete","name":"Orange Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"orange_concrete","primary":"#e06101","hue_group":"red"},{"id":"minecraft:orange_concrete_powder","name":"Orange Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"orange_concrete_powder","primary":"#e38420","hue_group":"yellow"},{"id":"minecraft:orange_glazed_terracotta","name":"Orange Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"orange_glazed_terracotta","primary":"#9b935c","hue_group":"yellow"},{"id":"minecraft:orange_shulker_box","name":"Orange Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"orange_shulker_box","primary":"#ea6a09","hue_group":"red"},{"id":"minecraft:orange_stained_glass","name":"Orange Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"orange_stained_glass","primary":"#d87f33","hue_group":"red"},{"id":"minecraft:orange_stained_glass_pane","name":"Orange Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"orange_stained_glass_pane","primary":"#d17b31","hue_group":"red"},{"id":"minecraft:orange_terracotta","name":"Orange Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"orange_terracotta","primary":"#a25426","hue_group":"red"},{"id":"minecraft:orange_tulip","name":"Orange Tulip","description":"Tulips are a kind of flower found in plains and flower forests that come in multiple colored variants: red, orange, white, and pink. They yield dyes of their respective colors, with the exception of white tulips, which yield light gray dye, and all of them are used to craft suspicious stew.","category":"natural","family":"orange_tulip","primary":"#5d8e1f","hue_group":"yellow"},{"id":"minecraft:orange_wall_banner","name":"Orange Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"orange_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:orange_wool","name":"Orange Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"orange_wool","primary":"#f17614","hue_group":"red"},{"id":"minecraft:oxeye_daisy","name":"Oxeye Daisy","description":"An oxeye daisy is a flower that can be crafted into light gray dye, suspicious stew, and flower charge banner patterns.","category":"","family":"oxeye_daisy","primary":"#b3ca8f","hue_group":"yellow"},{"id":"minecraft:oxidized_chiseled_copper","name":"Oxidized Chiseled Copper","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","category":"building","family":"oxidized_chiseled_copper","primary":"#54a284","hue_group":"cyan"},{"id":"minecraft:oxidized_copper","name":"Oxidized Copper","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","category":"building","family":"oxidized_copper","primary":"#52a385","hue_group":"cyan"},{"id":"minecraft:oxidized_copper_bars","name":"Oxidized Copper Bars","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","category":"building","family":"oxidized_copper_bars","primary":"#407b65","hue_group":"cyan"},{"id":"minecraft:oxidized_copper_bulb","name":"Oxidized Copper Bulb","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","category":"building","family":"oxidized_copper_bulb","primary":"#46846d","hue_group":"cyan"},{"id":"minecraft:oxidized_copper_chain","name":"Oxidized Copper Chain","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","category":"building","family":"oxidized_copper_chain","primary":"#3e7663","hue_group":"cyan"},{"id":"minecraft:oxidized_copper_chest","name":"Oxidized Copper Chest","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","category":"building","family":"oxidized_copper_chest","primary":"#52a385","hue_group":"cyan"},{"id":"minecraft:oxidized_copper_door","name":"Oxidized Copper Door","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","category":"building","family":"oxidized_copper","primary":"#52a085","hue_group":"cyan"},{"id":"minecraft:oxidized_copper_golem_statue","name":"Oxidized Copper Golem Statue","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","category":"building","family":"oxidized_copper_golem_statue","primary":"#52a385","hue_group":"cyan"},{"id":"minecraft:oxidized_copper_grate","name":"Oxidized Copper Grate","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","category":"building","family":"oxidized_copper_grate","primary":"#52a183","hue_group":"cyan"},{"id":"minecraft:oxidized_copper_lantern","name":"Oxidized Copper Lantern","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","category":"building","family":"oxidized_copper_lantern","primary":"#4e8b6f","hue_group":"cyan"},{"id":"minecraft:oxidized_copper_trapdoor","name":"Oxidized Copper Trapdoor","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","category":"building","family":"oxidized_copper_trapdoor","primary":"#54a184","hue_group":"cyan"},{"id":"minecraft:oxidized_cut_copper","name":"Oxidized Cut Copper","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","category":"building","family":"oxidized_cut_copper","primary":"#509a7e","hue_group":"cyan"},{"id":"minecraft:oxidized_cut_copper_slab","name":"Oxidized Cut Copper Slab","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","category":"building","family":"oxidized_cut_copper","primary":"#509a7e","hue_group":"cyan"},{"id":"minecraft:oxidized_cut_copper_stairs","name":"Oxidized Cut Copper Stairs","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","category":"building","family":"oxidized_cut_copper","primary":"#509a7e","hue_group":"cyan"},{"id":"minecraft:oxidized_lightning_rod","name":"Oxidized Lightning Rod","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","category":"","family":"oxidized_lightning_rod","primary":"#4f9a80","hue_group":"cyan"},{"id":"minecraft:packed_ice","name":"Packed Ice","description":"Packed ice is a variant of ice that functions almost identically, but does not melt and is opaque instead of transparent. Like other types of ice, it can only be obtained using a Silk Touch tool.","category":"","family":"packed_ice","primary":"#8eb4fa","hue_group":"blue"},{"id":"minecraft:packed_mud","name":"Packed Mud","description":"Packed mud is a block crafted from mud and wheat. It is used to create mud bricks.","category":"","family":"packed_mud","primary":"#8e6b50","hue_group":"red"},{"id":"minecraft:pale_hanging_moss","name":"Pale Hanging Moss","description":"Pale hanging moss is a block found under the logs and leaves of pale oaks. When attached to a pale oak log or leaves, it emits ambient sounds.","category":"natural","family":"pale_hanging_moss","primary":"#636862","hue_group":"neutral"},{"id":"minecraft:pale_moss_block","name":"Pale Moss Block","description":"A pale moss block is a block that generates in pale gardens. Unlike regular moss blocks, pale moss blocks are flammable.","category":"natural","family":"pale_moss_block","primary":"#6b7069","hue_group":"neutral"},{"id":"minecraft:pale_moss_carpet","name":"Pale Moss Carpet","description":"A pale moss carpet is a block that causes vine-like pale moss to grow on the side of neighboring blocks.","category":"decorative","family":"pale_moss_carpet","primary":"#6b7069","hue_group":"neutral"},{"id":"minecraft:pale_oak_button","name":"Pale Oak Button","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","category":"building","family":"pale_oak_button","primary":"#e4dad8","hue_group":"red"},{"id":"minecraft:pale_oak_door","name":"Pale Oak Door","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","category":"building","family":"pale_oak","primary":"#d8d0cf","hue_group":"neutral"},{"id":"minecraft:pale_oak_fence","name":"Pale Oak Fence","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","category":"building","family":"pale_oak","primary":"#e4dad8","hue_group":"red"},{"id":"minecraft:pale_oak_fence_gate","name":"Pale Oak Fence Gate","description":"A fence gate is a block that shares the functions of both the door and the fence.","category":"building","family":"pale_oak_fence_gate","primary":"#e4dad8","hue_group":"red"},{"id":"minecraft:pale_oak_hanging_sign","name":"Pale Oak Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"pale_oak_hanging_sign","primary":"#f6eeed","hue_group":"red"},{"id":"minecraft:pale_oak_leaves","name":"Pale Oak Leaves","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","category":"natural","family":"pale_oak","primary":"#757a73","hue_group":"neutral"},{"id":"minecraft:pale_oak_log","name":"Pale Oak Log","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","category":"natural","family":"pale_oak","primary":"#584e4b","hue_group":"neutral"},{"id":"minecraft:pale_oak_planks","name":"Pale Oak Planks","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","category":"building","family":"pale_oak","primary":"#e4dad8","hue_group":"red"},{"id":"minecraft:pale_oak_pressure_plate","name":"Pale Oak Pressure Plate","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","category":"building","family":"pale_oak_pressure_plate","primary":"#e4dad8","hue_group":"red"},{"id":"minecraft:pale_oak_sapling","name":"Pale Oak Sapling","description":"A sapling is a non-solid block that can be grown into a tree.","category":"natural","family":"pale_oak","primary":"#6e6a64","hue_group":"neutral"},{"id":"minecraft:pale_oak_shelf","name":"Pale Oak Shelf","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","category":"","family":"pale_oak_shelf","primary":"#e4d9d8","hue_group":"red"},{"id":"minecraft:pale_oak_sign","name":"Pale Oak Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"pale_oak_sign","primary":"#e4dad8","hue_group":"red"},{"id":"minecraft:pale_oak_slab","name":"Pale Oak Slab","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","category":"building","family":"pale_oak","primary":"#e4dad8","hue_group":"red"},{"id":"minecraft:pale_oak_stairs","name":"Pale Oak Stairs","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","category":"building","family":"pale_oak","primary":"#e4dad8","hue_group":"red"},{"id":"minecraft:pale_oak_trapdoor","name":"Pale Oak Trapdoor","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","category":"building","family":"pale_oak_trapdoor","primary":"#e6dcdb","hue_group":"red"},{"id":"minecraft:pale_oak_wall_hanging_sign","name":"Pale Oak Wall Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"pale_oak_wall_hanging_sign","primary":"#f6eeed","hue_group":"red"},{"id":"minecraft:pale_oak_wall_sign","name":"Pale Oak Wall Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"pale_oak_wall_sign","primary":"#e4dad8","hue_group":"red"},{"id":"minecraft:pale_oak_wood","name":"Pale Oak Wood","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","category":"building","family":"pale_oak","primary":"#584e4b","hue_group":"neutral"},{"id":"minecraft:pearlescent_froglight","name":"Pearlescent Froglight","description":"A froglight is a light-emitting block that is obtained when a frog eats a tiny magma cube. It comes in three variants based on the variant of frog that eats the magma cube.","category":"","family":"pearlescent_froglight","primary":"#ece1e5","hue_group":"red"},{"id":"minecraft:peony","name":"Peony","description":"A peony is a tall flower that can be crafted into pink dye.","category":"","family":"peony","primary":"#57655e","hue_group":"neutral"},{"id":"minecraft:petrified_oak_slab","name":"Petrified Oak Slab","description":"A petrified oak slab, known generically as a wooden slab in Bedrock Edition, is a unique type of slab available through commands or by upgrading from legacy versions. Unlike all other slabs, they are unobtainable in vanilla Survival gameplay.","category":"building","family":"petrified_oak","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:piglin_head","name":"Piglin Head","description":"A piglin head is the head of a piglin in the form of a block. It can only be obtained by killing a piglin using a charged creeper's explosion.","category":"decorative","family":"piglin_head","primary":"#513e33","hue_group":"red"},{"id":"minecraft:piglin_wall_head","name":"Piglin Wall Head","description":"A piglin head is the head of a piglin in the form of a block. It can only be obtained by killing a piglin using a charged creeper's explosion.","category":"decorative","family":"piglin_wall_head","primary":"#513e33","hue_group":"red"},{"id":"minecraft:pink_banner","name":"Pink Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"pink_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:pink_bed","name":"Pink Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"pink_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:pink_candle","name":"Pink Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"pink_candle","primary":"#d0668e","hue_group":"red"},{"id":"minecraft:pink_candle_cake","name":"Pink Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"pink_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:pink_carpet","name":"Pink Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"pink_carpet","primary":"#ee8dac","hue_group":"red"},{"id":"minecraft:pink_concrete","name":"Pink Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"pink_concrete","primary":"#d6658f","hue_group":"red"},{"id":"minecraft:pink_concrete_powder","name":"Pink Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"pink_concrete_powder","primary":"#e599b5","hue_group":"red"},{"id":"minecraft:pink_glazed_terracotta","name":"Pink Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"pink_glazed_terracotta","primary":"#eb9bb6","hue_group":"red"},{"id":"minecraft:pink_petals","name":"Pink Petals","description":"Pink petals are a decorative block that generates in cherry grove biomes.","category":"","family":"pink_petals","primary":"#f7b5db","hue_group":"purple"},{"id":"minecraft:pink_shulker_box","name":"Pink Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"pink_shulker_box","primary":"#e67a9e","hue_group":"red"},{"id":"minecraft:pink_stained_glass","name":"Pink Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"pink_stained_glass","primary":"#f27fa5","hue_group":"red"},{"id":"minecraft:pink_stained_glass_pane","name":"Pink Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"pink_stained_glass_pane","primary":"#e97ba0","hue_group":"red"},{"id":"minecraft:pink_terracotta","name":"Pink Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"pink_terracotta","primary":"#a24e4f","hue_group":"red"},{"id":"minecraft:pink_tulip","name":"Pink Tulip","description":"Tulips are a kind of flower found in plains and flower forests that come in multiple colored variants: red, orange, white, and pink. They yield dyes of their respective colors, with the exception of white tulips, which yield light gray dye, and all of them are used to craft suspicious stew.","category":"natural","family":"pink_tulip","primary":"#639d4e","hue_group":"green"},{"id":"minecraft:pink_wall_banner","name":"Pink Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"pink_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:pink_wool","name":"Pink Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"pink_wool","primary":"#ee8dac","hue_group":"red"},{"id":"minecraft:piston","name":"Piston","description":"A piston is a block capable of pushing most entities and blocks when given a redstone signal. Some blocks cannot be moved, break when pushed or have other interactions with pistons. A piston can move up to twelve blocks at once.","category":"redstone","family":"piston","primary":"#6e6961","hue_group":"neutral"},{"id":"minecraft:piston_head","name":"Piston Head","description":"Pistons and sticky pistons have 2 technical blocks that cannot be obtained. These include the piston head and moving piston blocks.","category":"redstone","family":"piston_head","primary":"#6e6961","hue_group":"neutral"},{"id":"minecraft:pitcher_crop","name":"Pitcher Crop","description":"A pitcher pod is an ancient bulbous seed that has a chance to be dropped by sniffers when they finish digging. It is the seed of pitcher plants.","category":"","family":"pitcher_crop","primary":"#c2a667","hue_group":"yellow"},{"id":"minecraft:pitcher_plant","name":"Pitcher Plant","description":"A pitcher plant is a tall ancient flower that grows from a pitcher pod.","category":"","family":"pitcher_plant","primary":"#687e5d","hue_group":"green"},{"id":"minecraft:player_head","name":"Player Head","description":"The player head is a block based on the head of a player's skin (Steve by default). Player heads cannot be obtained in Survival.","category":"decorative","family":"player_head","primary":"#513e33","hue_group":"red"},{"id":"minecraft:player_wall_head","name":"Player Wall Head","description":"The player head is a block based on the head of a player's skin (Steve by default). Player heads cannot be obtained in Survival.","category":"decorative","family":"player_wall_head","primary":"#513e33","hue_group":"red"},{"id":"minecraft:podzol","name":"Podzol","description":"Podzol is a dirt-type block that naturally blankets the surface of the old growth taiga and bamboo jungles, along with their respective variants. Grass blocks and mycelium cannot spread to this block.","category":"","family":"podzol","primary":"#5c3f18","hue_group":"yellow"},{"id":"minecraft:pointed_dripstone","name":"Pointed Dripstone","description":"Pointed dripstone is a block that forms stalactites and stalagmites. Stalactites (which point downward) grow over time under certain conditions, can serve as falling projectiles, can renewably drip water and lava into cauldrons and convert mud into clay. Stalagmites (which point upward) deal extra damage to players and mobs that land on them.","category":"","family":"pointed_dripstone","primary":"#81675a","hue_group":"red"},{"id":"minecraft:polished_andesite","name":"Polished Andesite","description":"Polished andesite is the polished version of andesite.","category":"","family":"polished_andesite","primary":"#848786","hue_group":"neutral"},{"id":"minecraft:polished_andesite_slab","name":"Polished Andesite Slab","description":"A polished andesite slab is a decorative slab variant of polished andesite that does not generate naturally and is used for building.","category":"building","family":"polished_andesite","primary":"#848786","hue_group":"neutral"},{"id":"minecraft:polished_andesite_stairs","name":"Polished Andesite Stairs","description":"Polished andesite stairs are a decorative stairs variant of polished andesite used for building.","category":"building","family":"polished_andesite","primary":"#848786","hue_group":"neutral"},{"id":"minecraft:polished_basalt","name":"Polished Basalt","description":"Polished basalt is the polished version of basalt and can be found as part of ancient cities and bastion remnants.","category":"natural","family":"polished_basalt","primary":"#59585c","hue_group":"neutral"},{"id":"minecraft:polished_blackstone","name":"Polished Blackstone","description":"Polished blackstone is the stone-like polished variation of blackstone.","category":"","family":"polished_blackstone","primary":"#353139","hue_group":"neutral"},{"id":"minecraft:polished_blackstone_brick_slab","name":"Polished Blackstone Brick Slab","description":"A polished blackstone brick slab is a decorative slab variant of polished blackstone bricks that generates in ruined portals and is used for building.","category":"building","family":"polished_blackstone_brick","primary":"#302b32","hue_group":"neutral"},{"id":"minecraft:polished_blackstone_brick_stairs","name":"Polished Blackstone Brick Stairs","description":"Polished blackstone brick stairs are a decorative stairs variant of polished blackstone bricks that generates in Nether structures and is used for building.","category":"building","family":"polished_blackstone_brick","primary":"#302b32","hue_group":"neutral"},{"id":"minecraft:polished_blackstone_brick_wall","name":"Polished Blackstone Brick Wall","description":"A polished blackstone brick wall is a decorative wall variant of polished blackstone bricks that generates in ruined portals and is used for building.","category":"building","family":"polished_blackstone_brick_wall","primary":"#302b32","hue_group":"neutral"},{"id":"minecraft:polished_blackstone_bricks","name":"Polished Blackstone Bricks","description":"Polished blackstone bricks are a decorative version of polished blackstone.","category":"building","family":"polished_blackstone_bricks","primary":"#302b32","hue_group":"neutral"},{"id":"minecraft:polished_blackstone_button","name":"Polished Blackstone Button","description":"A polished blackstone button is a variant of the button that shares many common properties with stone buttons. Like stone buttons, a polished blackstone button is a non-solid block that produces a temporary redstone signal when pressed.","category":"building","family":"polished_blackstone_button","primary":"#353139","hue_group":"neutral"},{"id":"minecraft:polished_blackstone_pressure_plate","name":"Polished Blackstone Pressure Plate","description":"A polished blackstone pressure plate is a polished blackstone variant of the pressure plate that can detect only players and mobs.","category":"building","family":"polished_blackstone_pressure_plate","primary":"#353139","hue_group":"neutral"},{"id":"minecraft:polished_blackstone_slab","name":"Polished Blackstone Slab","description":"A polished blackstone slab is a decorative slab variant of polished blackstone that generates in ruined portals and is used for building.","category":"building","family":"polished_blackstone","primary":"#353139","hue_group":"neutral"},{"id":"minecraft:polished_blackstone_stairs","name":"Polished Blackstone Stairs","description":"Polished blackstone stairs are a decorative stairs variant of polished blackstone that generates in ruined portals and is used for building.","category":"building","family":"polished_blackstone","primary":"#353139","hue_group":"neutral"},{"id":"minecraft:polished_blackstone_wall","name":"Polished Blackstone Wall","description":"A polished blackstone wall is a decorative wall variant of polished blackstone that does not generate naturally and is used for building.","category":"building","family":"polished_blackstone_wall","primary":"#353139","hue_group":"neutral"},{"id":"minecraft:polished_deepslate","name":"Polished Deepslate","description":"Polished deepslate is the stone-like polished version of deepslate.","category":"","family":"polished_deepslate","primary":"#484949","hue_group":"neutral"},{"id":"minecraft:polished_deepslate_slab","name":"Polished Deepslate Slab","description":"A polished deepslate slab is a decorative slab variant of polished deepslate that generates in ancient cities and is used for building.","category":"building","family":"polished_deepslate","primary":"#484949","hue_group":"neutral"},{"id":"minecraft:polished_deepslate_stairs","name":"Polished Deepslate Stairs","description":"Polished deepslate stairs are a decorative stairs variant of polished deepslate that generates in ancient cities and is used for building.","category":"building","family":"polished_deepslate","primary":"#484949","hue_group":"neutral"},{"id":"minecraft:polished_deepslate_wall","name":"Polished Deepslate Wall","description":"A polished deepslate wall is a decorative wall variant of polished deepslate that generates in ancient cities and is used for building.","category":"building","family":"polished_deepslate_wall","primary":"#484949","hue_group":"neutral"},{"id":"minecraft:polished_diorite","name":"Polished Diorite","description":"Polished diorite is the polished version of diorite.","category":"","family":"polished_diorite","primary":"#c1c1c3","hue_group":"neutral"},{"id":"minecraft:polished_diorite_slab","name":"Polished Diorite Slab","description":"A polished diorite slab is a decorative slab variant of polished diorite that does not generate naturally and is used for building.","category":"building","family":"polished_diorite","primary":"#c1c1c3","hue_group":"neutral"},{"id":"minecraft:polished_diorite_stairs","name":"Polished Diorite Stairs","description":"Polished diorite stairs are a decorative stairs variant of polished diorite used for building.","category":"building","family":"polished_diorite","primary":"#c1c1c3","hue_group":"neutral"},{"id":"minecraft:polished_granite","name":"Polished Granite","description":"Polished granite is a processed and polished decorative form of granite.","category":"","family":"polished_granite","primary":"#9a6b59","hue_group":"red"},{"id":"minecraft:polished_granite_slab","name":"Polished Granite Slab","description":"A polished granite slab is a decorative slab variant of polished granite that does not generate naturally and is used for building.","category":"building","family":"polished_granite","primary":"#9a6b59","hue_group":"red"},{"id":"minecraft:polished_granite_stairs","name":"Polished Granite Stairs","description":"Polished granite stairs are a decorative stairs variant of polished granite used for building.","category":"building","family":"polished_granite","primary":"#9a6b59","hue_group":"red"},{"id":"minecraft:polished_tuff","name":"Polished Tuff","description":"Polished tuff is the polished version of tuff.","category":"","family":"polished_tuff","primary":"#626864","hue_group":"neutral"},{"id":"minecraft:polished_tuff_slab","name":"Polished Tuff Slab","description":"A polished tuff slab is a decorative slab variant of polished tuff that generates in trial chambers and is used for building.","category":"building","family":"polished_tuff","primary":"#626864","hue_group":"neutral"},{"id":"minecraft:polished_tuff_stairs","name":"Polished Tuff Stairs","description":"Polished tuff stairs are a decorative stairs variant of polished tuff that does not generate naturally and is used for building.","category":"building","family":"polished_tuff","primary":"#626864","hue_group":"neutral"},{"id":"minecraft:polished_tuff_wall","name":"Polished Tuff Wall","description":"A polished tuff wall is a decorative wall variant of polished tuff that does not generate naturally and is used for building.","category":"building","family":"polished_tuff_wall","primary":"#626864","hue_group":"neutral"},{"id":"minecraft:poppy","name":"Poppy","description":"A poppy is a red flower that can be crafted into red dye and suspicious stew.","category":"","family":"poppy","primary":"#814126","hue_group":"red"},{"id":"minecraft:potatoes","name":"Potatoes","description":"A potato is a food item obtained from potato crops that can be used to plant them, consumed raw or cooked to make baked potatoes. Potato crops are planted in farmland and used to grow potatoes and, rarely, poisonous potatoes.","category":"","family":"potatoes","primary":"#3b8229","hue_group":"green"},{"id":"minecraft:potted_acacia_sapling","name":"Potted Acacia Sapling","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_acacia","primary":"#777618","hue_group":"yellow"},{"id":"minecraft:potted_allium","name":"Potted Allium","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"","family":"potted_allium","primary":"#9f89b8","hue_group":"blue"},{"id":"minecraft:potted_azalea_bush","name":"Potted Azalea Bush","description":"","category":"natural","family":"potted_azalea_bush","primary":"#657b30","hue_group":"yellow"},{"id":"minecraft:potted_azure_bluet","name":"Potted Azure Bluet","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"","family":"potted_azure_bluet","primary":"#a9cd7f","hue_group":"yellow"},{"id":"minecraft:potted_bamboo","name":"Potted Bamboo","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_bamboo","primary":"#7c4535","hue_group":"red"},{"id":"minecraft:potted_birch_sapling","name":"Potted Birch Sapling","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_birch","primary":"#80a150","hue_group":"yellow"},{"id":"minecraft:potted_blue_orchid","name":"Potted Blue Orchid","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_blue_orchid","primary":"#2fa2a8","hue_group":"cyan"},{"id":"minecraft:potted_brown_mushroom","name":"Potted Brown Mushroom","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_brown_mushroom","primary":"#9a755c","hue_group":"red"},{"id":"minecraft:potted_cactus","name":"Potted Cactus","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"","family":"potted_cactus","primary":"#7c4535","hue_group":"red"},{"id":"minecraft:potted_cherry_sapling","name":"Potted Cherry Sapling","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_cherry","primary":"#a4768f","hue_group":"purple"},{"id":"minecraft:potted_closed_eyeblossom","name":"Potted Closed Eyeblossom","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"","family":"potted_closed_eyeblossom","primary":"#6c6265","hue_group":"neutral"},{"id":"minecraft:potted_cornflower","name":"Potted Cornflower","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_cornflower","primary":"#507993","hue_group":"cyan"},{"id":"minecraft:potted_crimson_fungus","name":"Potted Crimson Fungus","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_crimson_fungus","primary":"#8d2c1e","hue_group":"red"},{"id":"minecraft:potted_crimson_roots","name":"Potted Crimson Roots","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_crimson_roots","primary":"#7f0829","hue_group":"red"},{"id":"minecraft:potted_dandelion","name":"Potted Dandelion","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"","family":"potted_dandelion","primary":"#94ac2b","hue_group":"yellow"},{"id":"minecraft:potted_dark_oak_sapling","name":"Potted Dark Oak Sapling","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_dark_oak","primary":"#3d5b1f","hue_group":"green"},{"id":"minecraft:potted_dead_bush","name":"Potted Dead Bush","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"","family":"potted_dead_bush","primary":"#6b4f29","hue_group":"yellow"},{"id":"minecraft:potted_fern","name":"Potted Fern","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"","family":"potted_fern","primary":"#7c7d7c","hue_group":"neutral"},{"id":"minecraft:potted_flowering_azalea_bush","name":"Potted Flowering Azalea Bush","description":"","category":"natural","family":"potted_flowering_azalea_bush","primary":"#737846","hue_group":"yellow"},{"id":"minecraft:potted_jungle_sapling","name":"Potted Jungle Sapling","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_jungle","primary":"#305111","hue_group":"green"},{"id":"minecraft:potted_lily_of_the_valley","name":"Potted Lily Of The Valley","description":"","category":"","family":"potted_lily_of_the_valley","primary":"#7baf5f","hue_group":"green"},{"id":"minecraft:potted_mangrove_propagule","name":"Potted Mangrove Propagule","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"","family":"potted_mangrove_propagule","primary":"#7c4535","hue_group":"red"},{"id":"minecraft:potted_oak_sapling","name":"Potted Oak Sapling","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_oak","primary":"#4e6b29","hue_group":"yellow"},{"id":"minecraft:potted_open_eyeblossom","name":"Potted Open Eyeblossom","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"","family":"potted_open_eyeblossom","primary":"#ee8a26","hue_group":"red"},{"id":"minecraft:potted_orange_tulip","name":"Potted Orange Tulip","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_orange_tulip","primary":"#5d8e1f","hue_group":"yellow"},{"id":"minecraft:potted_oxeye_daisy","name":"Potted Oxeye Daisy","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"","family":"potted_oxeye_daisy","primary":"#b3ca8f","hue_group":"yellow"},{"id":"minecraft:potted_pale_oak_sapling","name":"Potted Pale Oak Sapling","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_pale_oak","primary":"#6e6a64","hue_group":"neutral"},{"id":"minecraft:potted_pink_tulip","name":"Potted Pink Tulip","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_pink_tulip","primary":"#639d4e","hue_group":"green"},{"id":"minecraft:potted_poppy","name":"Potted Poppy","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"","family":"potted_poppy","primary":"#814126","hue_group":"red"},{"id":"minecraft:potted_red_mushroom","name":"Potted Red Mushroom","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_red_mushroom","primary":"#d94b44","hue_group":"red"},{"id":"minecraft:potted_red_tulip","name":"Potted Red Tulip","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_red_tulip","primary":"#5a8121","hue_group":"yellow"},{"id":"minecraft:potted_spruce_sapling","name":"Potted Spruce Sapling","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_spruce","primary":"#2d3c25","hue_group":"green"},{"id":"minecraft:potted_torchflower","name":"Potted Torchflower","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_torchflower","primary":"#65654d","hue_group":"yellow"},{"id":"minecraft:potted_warped_fungus","name":"Potted Warped Fungus","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_warped_fungus","primary":"#4a6d58","hue_group":"green"},{"id":"minecraft:potted_warped_roots","name":"Potted Warped Roots","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_warped_roots","primary":"#15897b","hue_group":"cyan"},{"id":"minecraft:potted_white_tulip","name":"Potted White Tulip","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"natural","family":"potted_white_tulip","primary":"#5ea547","hue_group":"green"},{"id":"minecraft:potted_wither_rose","name":"Potted Wither Rose","description":"A flower pot is a decorative block that can contain flowers, bamboo, saplings, cacti, mushrooms, fungi, and other small plants.","category":"","family":"potted_wither_rose","primary":"#292d17","hue_group":"yellow"},{"id":"minecraft:powder_snow","name":"Powder Snow","description":"Powder snow is a non-solid block found in snowy slopes and groves, or collected from snowfall using cauldrons. It slows down and deals freezing damage to most entities within it. Wearing any leather armor prevents freezing, and worn leather boots allow powder snow to be walked on and climbed through. It can only be obtained using a bucket and melts when placed inside water.","category":"","family":"powder_snow","primary":"#f8fdfd","hue_group":"cyan"},{"id":"minecraft:powder_snow_cauldron","name":"Powder Snow Cauldron","description":"A cauldron is a block that can contain water, lava or powder snow and, in certain situations, collect them from the environment. In Bedrock Edition, it can also hold dyed water or potions, and can be used to efficiently create tipped arrows. It also serves as a leatherworker's job site block.","category":"","family":"powder_snow_cauldron","primary":"#4a494a","hue_group":"neutral"},{"id":"minecraft:powered_rail","name":"Powered Rail","description":"A powered rail is a type of rail that either increases or halts the velocity of minecarts depending on its power state, and can be used to accelerate a minecart from a standstill when placed facing a conductive block.","category":"redstone","family":"powered_rail","primary":"#8a6e4a","hue_group":"yellow"},{"id":"minecraft:prismarine","name":"Prismarine","description":"Prismarine is a type of stone that appears underwater in ocean ruins and ocean monuments. It periodically changes color between blue and green.","category":"","family":"prismarine","primary":"#639c97","hue_group":"cyan"},{"id":"minecraft:prismarine_brick_slab","name":"Prismarine Brick Slab","description":"A prismarine brick slab is a decorative slab variant of prismarine bricks that does not generate naturally and is used for building.","category":"building","family":"prismarine_brick","primary":"#63ac9e","hue_group":"cyan"},{"id":"minecraft:prismarine_brick_stairs","name":"Prismarine Brick Stairs","description":"Prismarine brick stairs are a decorative stairs variant of prismarine bricks that does not generate naturally and is used for building.","category":"building","family":"prismarine_brick","primary":"#63ac9e","hue_group":"cyan"},{"id":"minecraft:prismarine_bricks","name":"Prismarine Bricks","description":"Prismarine bricks are a variant of prismarine, appearing as cyan bricks with chiseled patterns.","category":"building","family":"prismarine_bricks","primary":"#63ac9e","hue_group":"cyan"},{"id":"minecraft:prismarine_slab","name":"Prismarine Slab","description":"A prismarine slab is a decorative slab variant of prismarine that does not generate naturally and is used for building.","category":"building","family":"prismarine","primary":"#639c97","hue_group":"cyan"},{"id":"minecraft:prismarine_stairs","name":"Prismarine Stairs","description":"Prismarine stairs are a decorative stairs variant of prismarine that does not generate naturally and is used for building.","category":"building","family":"prismarine","primary":"#639c97","hue_group":"cyan"},{"id":"minecraft:prismarine_wall","name":"Prismarine Wall","description":"A prismarine wall is a decorative wall variant of prismarine that does not generate naturally and is used for building.","category":"building","family":"prismarine_wall","primary":"#639c97","hue_group":"cyan"},{"id":"minecraft:pumpkin","name":"Pumpkin","description":"A pumpkin is a block found in patches in grassy biomes or grown from pumpkin seeds, which it can also be crafted into. Using shears on a pumpkin carves a face into it and drops pumpkin seeds.","category":"","family":"pumpkin","primary":"#c47318","hue_group":"yellow"},{"id":"minecraft:pumpkin_stem","name":"Pumpkin Stem","description":"Pumpkin seeds are items obtained from pumpkins that can be used to grow pumpkin stems. Pumpkin stems are plants grown on farmland that, over time, grow pumpkins on dirt, mud and moss blocks adjacent to them.","category":"natural","family":"pumpkin_stem","primary":"#9a9a9a","hue_group":"neutral"},{"id":"minecraft:purple_banner","name":"Purple Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"purple_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:purple_bed","name":"Purple Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"purple_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:purple_candle","name":"Purple Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"purple_candle","primary":"#69229f","hue_group":"purple"},{"id":"minecraft:purple_candle_cake","name":"Purple Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"purple_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:purple_carpet","name":"Purple Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"purple_carpet","primary":"#7a2aad","hue_group":"purple"},{"id":"minecraft:purple_concrete","name":"Purple Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"purple_concrete","primary":"#64209c","hue_group":"purple"},{"id":"minecraft:purple_concrete_powder","name":"Purple Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"purple_concrete_powder","primary":"#8438b2","hue_group":"purple"},{"id":"minecraft:purple_glazed_terracotta","name":"Purple Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"purple_glazed_terracotta","primary":"#6e3098","hue_group":"purple"},{"id":"minecraft:purple_shulker_box","name":"Purple Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"purple_shulker_box","primary":"#67209c","hue_group":"purple"},{"id":"minecraft:purple_stained_glass","name":"Purple Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"purple_stained_glass","primary":"#7f3fb2","hue_group":"purple"},{"id":"minecraft:purple_stained_glass_pane","name":"Purple Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"purple_stained_glass_pane","primary":"#7b3dab","hue_group":"purple"},{"id":"minecraft:purple_terracotta","name":"Purple Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"purple_terracotta","primary":"#764656","hue_group":"red"},{"id":"minecraft:purple_wall_banner","name":"Purple Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"purple_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:purple_wool","name":"Purple Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"purple_wool","primary":"#7a2aad","hue_group":"purple"},{"id":"minecraft:purpur_block","name":"Purpur Block","description":"Purpur blocks are decorative blocks that can be crafted with popped chorus fruit and are naturally generated in End cities and End ships.","category":"","family":"purpur_block","primary":"#aa7eaa","hue_group":"purple"},{"id":"minecraft:purpur_pillar","name":"Purpur Pillar","description":"Purpur pillars are decorative blocks that can be crafted with purpur slabs and are naturally generated in End cities and End ships.","category":"building","family":"purpur_pillar","primary":"#ac82ac","hue_group":"purple"},{"id":"minecraft:purpur_slab","name":"Purpur Slab","description":"A purpur slab is a decorative slab variant of purpur that generates in End cities and is used for building.","category":"building","family":"purpur","primary":"#aa7eaa","hue_group":"purple"},{"id":"minecraft:purpur_stairs","name":"Purpur Stairs","description":"Purpur stairs are a decorative stairs variant of purpur that generates in End cities and is used for building.","category":"building","family":"purpur","primary":"#aa7eaa","hue_group":"purple"},{"id":"minecraft:quartz_block","name":"Quartz Block","description":"A block of quartz, internally known as a quartz block, is a mineral block used for decoration. It can be turned into a quartz slab, chiseled quartz block, quartz pillar, quartz bricks, or smooth quartz block.","category":"resource","family":"quartz_block","primary":"#ece6df","hue_group":"yellow"},{"id":"minecraft:quartz_bricks","name":"Quartz Bricks","description":"Quartz bricks are the brick variant of the block of quartz, obtained through crafting.","category":"building","family":"quartz_bricks","primary":"#ebe5de","hue_group":"yellow"},{"id":"minecraft:quartz_pillar","name":"Quartz Pillar","description":"A quartz pillar is a variant of the block of quartz, obtained through crafting.","category":"building","family":"quartz_pillar","primary":"#ece7e0","hue_group":"yellow"},{"id":"minecraft:quartz_slab","name":"Quartz Slab","description":"A quartz slab is a decorative slab variant of quartz that does not generate naturally and is used for building.","category":"building","family":"quartz","primary":"#ece6df","hue_group":"yellow"},{"id":"minecraft:quartz_stairs","name":"Quartz Stairs","description":"Quartz stairs are a decorative stairs variant of quartz that does not generate naturally and is used for building.","category":"building","family":"quartz","primary":"#ece6df","hue_group":"yellow"},{"id":"minecraft:rail","name":"Rail","description":"A rail is a non-solid block that provides a path along which minecarts can travel, and can be placed either flat on the ground, as a ramp, or curved. A curved rail allows minecarts to turn corners, and can rotate to connect to a different rail line while powered.","category":"redstone","family":"rail","primary":"#7e7059","hue_group":"yellow"},{"id":"minecraft:raw_copper_block","name":"Raw Copper Block","description":"A block of raw copper, internally known as a raw copper block, is a raw metal block equivalent to nine raw copper.","category":"building","family":"raw_copper_block","primary":"#9a6a4f","hue_group":"red"},{"id":"minecraft:raw_gold_block","name":"Raw Gold Block","description":"A block of raw gold, internally known as a raw gold block, is a raw metal block equivalent to nine raw gold.","category":"resource","family":"raw_gold_block","primary":"#dea92f","hue_group":"yellow"},{"id":"minecraft:raw_iron_block","name":"Raw Iron Block","description":"A block of raw iron, known internally as a raw iron block, is a raw metal block equivalent to nine raw iron.","category":"resource","family":"raw_iron_block","primary":"#a6886b","hue_group":"red"},{"id":"minecraft:red_banner","name":"Red Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"red_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:red_bed","name":"Red Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"red_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:red_candle","name":"Red Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"red_candle","primary":"#992724","hue_group":"red"},{"id":"minecraft:red_candle_cake","name":"Red Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"red_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:red_carpet","name":"Red Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"red_carpet","primary":"#a12723","hue_group":"red"},{"id":"minecraft:red_concrete","name":"Red Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"red_concrete","primary":"#8e2121","hue_group":"red"},{"id":"minecraft:red_concrete_powder","name":"Red Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"red_concrete_powder","primary":"#a83633","hue_group":"red"},{"id":"minecraft:red_glazed_terracotta","name":"Red Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"red_glazed_terracotta","primary":"#b63c35","hue_group":"red"},{"id":"minecraft:red_mushroom","name":"Red Mushroom","description":"A red mushroom is a variety of fungus that grows and spreads in dark areas. Mushrooms can generate small or huge in size.","category":"natural","family":"red_mushroom","primary":"#d94b44","hue_group":"red"},{"id":"minecraft:red_mushroom_block","name":"Red Mushroom Block","description":"A mushroom block is a solid block that makes up a huge mushroom, which consists of a mushroom stem and brown mushroom blocks or red mushroom blocks, depending on the color of the huge mushroom.","category":"natural","family":"red_mushroom_block","primary":"#c82f2d","hue_group":"red"},{"id":"minecraft:red_nether_brick_slab","name":"Red Nether Brick Slab","description":"A red Nether brick slab is a decorative slab variant of red Nether bricks that does not generate naturally and is used for building.","category":"building","family":"red_nether_brick","primary":"#460709","hue_group":"red"},{"id":"minecraft:red_nether_brick_stairs","name":"Red Nether Brick Stairs","description":"Red Nether brick stairs are a decorative stairs variant of red Nether bricks that does not generate naturally and is used for building.","category":"building","family":"red_nether_brick","primary":"#460709","hue_group":"red"},{"id":"minecraft:red_nether_brick_wall","name":"Red Nether Brick Wall","description":"A red Nether brick wall is a decorative wall variant of red Nether bricks that does not generate naturally and is used for building.","category":"building","family":"red_nether_brick_wall","primary":"#460709","hue_group":"red"},{"id":"minecraft:red_nether_bricks","name":"Red Nether Bricks","description":"Red Nether bricks are a decorative variant of Nether bricks that do not naturally generate.","category":"building","family":"red_nether_bricks","primary":"#460709","hue_group":"red"},{"id":"minecraft:red_sand","name":"Red Sand","description":"Red sand is a variant of sand found exclusively in badlands biomes. It can be used in place of sand in many crafting recipes, with the exception of concrete powder.","category":"","family":"red_sand","primary":"#bf6721","hue_group":"red"},{"id":"minecraft:red_sandstone","name":"Red Sandstone","description":"Red sandstone is a variant of sandstone. It comes in three other variants: cut red sandstone, chiseled red sandstone, and smooth red sandstone.","category":"","family":"red_sandstone","primary":"#bb631d","hue_group":"red"},{"id":"minecraft:red_sandstone_slab","name":"Red Sandstone Slab","description":"A red sandstone slab is a decorative slab variant of red sandstone that does not generate naturally and is used for building.","category":"building","family":"red_sandstone","primary":"#b5621f","hue_group":"red"},{"id":"minecraft:red_sandstone_stairs","name":"Red Sandstone Stairs","description":"Red sandstone stairs are a decorative stairs variant of red sandstone that does not generate naturally and is used for building.","category":"building","family":"red_sandstone","primary":"#b5621f","hue_group":"red"},{"id":"minecraft:red_sandstone_wall","name":"Red Sandstone Wall","description":"A red sandstone wall is a decorative wall variant of red sandstone that does not generate naturally and is used for building.","category":"building","family":"red_sandstone_wall","primary":"#bb631d","hue_group":"red"},{"id":"minecraft:red_shulker_box","name":"Red Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"red_shulker_box","primary":"#8c1f1e","hue_group":"red"},{"id":"minecraft:red_stained_glass","name":"Red Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"red_stained_glass","primary":"#993333","hue_group":"red"},{"id":"minecraft:red_stained_glass_pane","name":"Red Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"red_stained_glass_pane","primary":"#933131","hue_group":"red"},{"id":"minecraft:red_terracotta","name":"Red Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"red_terracotta","primary":"#8f3d2f","hue_group":"red"},{"id":"minecraft:red_tulip","name":"Red Tulip","description":"Tulips are a kind of flower found in plains and flower forests that come in multiple colored variants: red, orange, white, and pink. They yield dyes of their respective colors, with the exception of white tulips, which yield light gray dye, and all of them are used to craft suspicious stew.","category":"natural","family":"red_tulip","primary":"#5a8121","hue_group":"yellow"},{"id":"minecraft:red_wall_banner","name":"Red Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"red_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:red_wool","name":"Red Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"red_wool","primary":"#a12723","hue_group":"red"},{"id":"minecraft:redstone_block","name":"Redstone Block","description":"A block of redstone, internally known as a redstone block, is a mineral block equivalent to nine redstone dust. It acts as an always active redstone power source that can be moved by pistons.","category":"redstone","family":"redstone_block","primary":"#b01905","hue_group":"red"},{"id":"minecraft:redstone_lamp","name":"Redstone Lamp","description":"A redstone lamp is a solid block that produces light while it is receiving redstone power.","category":"redstone","family":"redstone_lamp","primary":"#5f371e","hue_group":"red"},{"id":"minecraft:redstone_ore","name":"Redstone Ore","description":"Redstone ore is the ore block from which redstone is obtained. Deepslate redstone ore is a variant of redstone ore that can generate in deepslate and tuff blobs.","category":"redstone","family":"redstone_ore","primary":"#8c6e6e","hue_group":"red"},{"id":"minecraft:redstone_torch","name":"Redstone Torch","description":"A redstone torch is a non-solid block that produces a full-strength redstone signal on all sides adjacent to it, except for its attached block, and can power the block directly above it. It deactivates while the block it is attached to is powered.","category":"redstone","family":"redstone_torch","primary":"#b63b2c","hue_group":"red"},{"id":"minecraft:redstone_wall_torch","name":"Redstone Wall Torch","description":"A redstone torch is a non-solid block that produces a full-strength redstone signal on all sides adjacent to it, except for its attached block, and can power the block directly above it. It deactivates while the block it is attached to is powered.","category":"redstone","family":"redstone_wall_torch","primary":"#65462c","hue_group":"red"},{"id":"minecraft:redstone_wire","name":"Redstone Wire","description":"Redstone dust is a mineral used in crafting, brewing, trimming, and as a placeable wire. Redstone wire is a non-solid block that can transmit a redstone power signal up to 15 blocks in distance; signal strengths below 15 have reduced distance. Redstone wire can power blocks it is placed on or pointing at.","category":"redstone","family":"redstone_wire","primary":"#f0f0f0","hue_group":"neutral"},{"id":"minecraft:reinforced_deepslate","name":"Reinforced Deepslate","description":"Reinforced deepslate is a block that generates exclusively in ancient cities. It has high hardness, is immune to explosions, and cannot be pushed by pistons or obtained in Survival mode.","category":"","family":"reinforced_deepslate","primary":"#50534f","hue_group":"neutral"},{"id":"minecraft:repeater","name":"Repeater","description":"A redstone repeater is a block that produces a full-strength redstone signal from its front while its back is powered, with four toggleable delay settings. It can also be locked into its current power state by directly powering its side with another repeater or a redstone comparator.","category":"redstone","family":"repeater","primary":"#a09d9c","hue_group":"neutral"},{"id":"minecraft:repeating_command_block","name":"Repeating Command Block","description":"A command block is an indestructible block that can execute commands. Because it cannot be obtained, destroyed or used in Survival mode without cheats, it is primarily used in multiplayer servers, Creative worlds, and custom maps. There are 3 types of these blocks. An impulse command block is the default block type; it executes only once when activated. A chain command block executes every time when triggered. A repeating command block executes every game tick as long as it is activated.","category":"technical","family":"repeating_command_block","primary":"#816fb0","hue_group":"blue"},{"id":"minecraft:resin_block","name":"Resin Block","description":"A block of resin is a block equivalent to nine resin clumps.","category":"","family":"resin_block","primary":"#d96319","hue_group":"red"},{"id":"minecraft:resin_brick_slab","name":"Resin Brick Slab","description":"A resin brick slab is a decorative slab variant of resin bricks that does not generate naturally and is used for building.","category":"building","family":"resin_brick","primary":"#ce5818","hue_group":"red"},{"id":"minecraft:resin_brick_stairs","name":"Resin Brick Stairs","description":"Resin brick stairs are a decorative stairs variant of resin bricks that does not generate naturally and is used for building.","category":"building","family":"resin_brick","primary":"#ce5818","hue_group":"red"},{"id":"minecraft:resin_brick_wall","name":"Resin Brick Wall","description":"A resin brick wall is a decorative wall variant of resin bricks that does not generate naturally and is used for building.","category":"building","family":"resin_brick_wall","primary":"#ce5818","hue_group":"red"},{"id":"minecraft:resin_bricks","name":"Resin Bricks","description":"Resin bricks are a block crafted from resin brick. It can also be crafted into its block family, containing slabs, stairs, walls, and the chiseled variant.","category":"building","family":"resin_bricks","primary":"#ce5818","hue_group":"red"},{"id":"minecraft:resin_clump","name":"Resin Clump","description":"A resin clump is a block generated by a creaking heart on pale oaks in any biome when a creaking is attacked. It also drops when a creaking heart is mined or destroyed. It can be used to craft decorative blocks of resin, and can also be smelted to produce resin bricks, which in turn can be crafted into the whole resin brick block family.","category":"","family":"resin_clump","primary":"#df701b","hue_group":"red"},{"id":"minecraft:respawn_anchor","name":"Respawn Anchor","description":"The respawn anchor is a block that allows the player to set their spawn point in the Nether. It will only work if fueled using glowstone blocks.","category":"utility","family":"respawn_anchor","primary":"#221634","hue_group":"blue"},{"id":"minecraft:rooted_dirt","name":"Rooted Dirt","description":"Rooted dirt is a natural decorative block.","category":"","family":"rooted_dirt","primary":"#90684d","hue_group":"red"},{"id":"minecraft:rose_bush","name":"Rose Bush","description":"A rose bush is a tall flower that can be crafted into red dye.","category":"","family":"rose_bush","primary":"#625426","hue_group":"yellow"},{"id":"minecraft:sand","name":"Sand","description":"Sand is a gravity-affected block found abundantly in deserts and beaches, and less commonly in or near surface water.","category":"natural","family":"sand","primary":"#dbcfa3","hue_group":"yellow"},{"id":"minecraft:sandstone","name":"Sandstone","description":"Sandstone is a solid block related to sand that comes in two color variants, the other being red sandstone. Regular sandstone is commonly found in deserts and beaches. Sandstone also has three decorative variants: chiseled sandstone, cut sandstone, and smooth sandstone.","category":"","family":"sandstone","primary":"#d8cb9c","hue_group":"yellow"},{"id":"minecraft:sandstone_slab","name":"Sandstone Slab","description":"A sandstone slab is a decorative slab variant of sandstone that generates in desert structures and is used for building.","category":"building","family":"sandstone","primary":"#e0d6aa","hue_group":"yellow"},{"id":"minecraft:sandstone_stairs","name":"Sandstone Stairs","description":"Sandstone stairs are a decorative stairs variant of sandstone that generates in overworld structures and is used for building.","category":"building","family":"sandstone","primary":"#e0d6aa","hue_group":"yellow"},{"id":"minecraft:sandstone_wall","name":"Sandstone Wall","description":"A sandstone wall is a decorative wall variant of sandstone that generates in desert villages and is used for building.","category":"building","family":"sandstone_wall","primary":"#d8cb9c","hue_group":"yellow"},{"id":"minecraft:scaffolding","name":"Scaffolding","description":"Scaffolding is a climbable semi-solid block with a stable top platform and unique placement controls that simplify creating columns and bridges. Scaffolding pieces fall downward if placed too far away from a supporting block, which can naturally form into more supporting columns.","category":"utility","family":"scaffolding","primary":"#aa8449","hue_group":"yellow"},{"id":"minecraft:sculk","name":"Sculk","description":"Sculk is a block found abundantly in the deep dark or converted from other blocks by a sculk catalyst. Like most of the rest of the sculk family, it drops experience when broken by a tool.","category":"","family":"sculk","primary":"#0d1e24","hue_group":"cyan"},{"id":"minecraft:sculk_catalyst","name":"Sculk Catalyst","description":"A sculk catalyst is a sculk block that \"blooms\" when a mob or player dies nearby, which may convert nearby blocks to sculk blocks (except for more sculk catalysts).","category":"","family":"sculk_catalyst","primary":"#0f2026","hue_group":"cyan"},{"id":"minecraft:sculk_sensor","name":"Sculk Sensor","description":"A sculk sensor is a sculk block that detects vibrations caused by nearby actions and events and emits a redstone signal in response. Player-caused vibrations can also trigger nearby sculk shriekers. Sneaking prevents the creation of vibrations while moving, and wool can be used to block or prevent them. Placing an amethyst block next to a sculk sensor allows it to \"relay\" detected vibrations to other sculk sensors.","category":"","family":"sculk_sensor","primary":"#097b7f","hue_group":"cyan"},{"id":"minecraft:sculk_shrieker","name":"Sculk Shrieker","description":"A sculk shrieker is a sculk block that will \"shriek\" if any player touches its top (even indirectly) or activates a nearby sculk sensor. Only players can trigger it. Naturally-generated sculk shriekers also inflict Darkness and may summon a warden if triggered, but shriekers placed by players or sculk catalysts are completely inert and harmless.","category":"","family":"sculk_shrieker","primary":"#c7cdaa","hue_group":"yellow"},{"id":"minecraft:sculk_vein","name":"Sculk Vein","description":"A sculk vein is a block found in the deep dark or generated by sculk catalysts. It can generate or be placed on any side of a solid block.","category":"","family":"sculk_vein","primary":"#08303a","hue_group":"cyan"},{"id":"minecraft:sea_lantern","name":"Sea Lantern","description":"A sea lantern is an underwater light source that appears in ocean monuments and ocean ruins.","category":"","family":"sea_lantern","primary":"#acc8be","hue_group":"cyan"},{"id":"minecraft:sea_pickle","name":"Sea Pickle","description":"A sea pickle is a block found in warm oceans. While in water it emits light, and can be spread using bone meal if placed on a living coral block. Up to four sea pickles can be placed in one block space, which affects the amount of light produced while in water.","category":"","family":"sea_pickle","primary":"#5a6128","hue_group":"yellow"},{"id":"minecraft:seagrass","name":"Seagrass","description":"Seagrass is a non-solid plant block that generates in all oceans, except frozen oceans. Tall seagrass is a two-block high variety of seagrass.","category":"natural","family":"seagrass","primary":"#337f08","hue_group":"green"},{"id":"minecraft:short_dry_grass","name":"Short Dry Grass","description":"Short dry grass is a one-block tall foliage block that generates frequently in deserts and all types of badlands. It grows on sand and terracotta. It can also be eaten by sheep.","category":"natural","family":"short_dry_grass","primary":"#bb9f6c","hue_group":"yellow"},{"id":"minecraft:short_grass","name":"Short Grass","description":"Short grass is a non-solid plant block that may drop wheat seeds when broken. Its color is biome-dependent, and matches the color of grass blocks.","category":"natural","family":"short_grass","primary":"#929192","hue_group":"neutral"},{"id":"minecraft:shroomlight","name":"Shroomlight","description":"Shroomlights are light-emitting blocks that generate in huge fungi.","category":"","family":"shroomlight","primary":"#f19347","hue_group":"red"},{"id":"minecraft:shulker_box","name":"Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"shulker_box","primary":"#8b618b","hue_group":"purple"},{"id":"minecraft:skeleton_skull","name":"Skeleton Skull","description":"A skeleton skull is the head of a skeleton in the form of a block. It can be obtained from ancient cities or by killing a skeleton using a charged creeper's explosion.","category":"decorative","family":"skeleton_skull","primary":"#513e33","hue_group":"red"},{"id":"minecraft:skeleton_wall_skull","name":"Skeleton Wall Skull","description":"A skeleton skull is the head of a skeleton in the form of a block. It can be obtained from ancient cities or by killing a skeleton using a charged creeper's explosion.","category":"decorative","family":"skeleton_wall_skull","primary":"#513e33","hue_group":"red"},{"id":"minecraft:slime_block","name":"Slime Block","description":"A slime block is a storage block equivalent to nine slimeballs. It has both sticky and bouncy properties making it useful in conjunction with pistons to move both blocks and entities. It can be used to brew Potions of Oozing.","category":"","family":"slime_block","primary":"#70c05c","hue_group":"green"},{"id":"minecraft:small_amethyst_bud","name":"Small Amethyst Bud","description":"Amethyst buds are the first three stages of growth of amethyst clusters, which grow on budding amethyst. Amethyst clusters are the fourth and final growth stage of amethyst buds, which drop amethyst shards when mined.","category":"","family":"small_amethyst_bud","primary":"#8463c0","hue_group":"blue"},{"id":"minecraft:small_dripleaf","name":"Small Dripleaf","description":"A small dripleaf is a plant which generates in lush caves, and is used to grow big dripleaves, a platforming block.","category":"natural","family":"small_dripleaf","primary":"#5b732e","hue_group":"yellow"},{"id":"minecraft:smithing_table","name":"Smithing Table","description":"A smithing table is a utility block used to apply smithing templates to tools, weapons, and armor. It also serves as a toolsmith's job site block.","category":"utility","family":"smithing_table","primary":"#392527","hue_group":"red"},{"id":"minecraft:smoker","name":"Smoker","description":"A smoker is a block that cooks food twice as quickly as a furnace, but cannot smelt anything else. It also serves as a butcher's job site block.","category":"","family":"smoker","primary":"#555451","hue_group":"neutral"},{"id":"minecraft:smooth_basalt","name":"Smooth Basalt","description":"Smooth basalt is an ornamental rock smelted from basalt or found as part of amethyst geodes and ancient cities.","category":"natural","family":"smooth_basalt","primary":"#49484e","hue_group":"neutral"},{"id":"minecraft:smooth_quartz","name":"Smooth Quartz","description":"A smooth quartz block is a mineral block used only for decoration. It is made by smelting blocks of quartz.","category":"","family":"smooth_quartz","primary":"#ede6e0","hue_group":"red"},{"id":"minecraft:smooth_quartz_slab","name":"Smooth Quartz Slab","description":"A smooth quartz slab is a decorative slab variant of smooth quartz that generates in bastion remnants and is used for building.","category":"building","family":"smooth_quartz","primary":"#ede6e0","hue_group":"red"},{"id":"minecraft:smooth_quartz_stairs","name":"Smooth Quartz Stairs","description":"Smooth quartz stairs are a decorative stairs variant of smooth quartz that does not generate naturally and is used for building.","category":"building","family":"smooth_quartz","primary":"#ede6e0","hue_group":"red"},{"id":"minecraft:smooth_red_sandstone","name":"Smooth Red Sandstone","description":"Smooth red sandstone is a variant of red sandstone, obtained by smelting.","category":"","family":"smooth_red_sandstone","primary":"#b5621f","hue_group":"red"},{"id":"minecraft:smooth_red_sandstone_slab","name":"Smooth Red Sandstone Slab","description":"A smooth red sandstone slab is a decorative slab variant of smooth red sandstone that does not generate naturally and is used for building.","category":"building","family":"smooth_red_sandstone","primary":"#b5621f","hue_group":"red"},{"id":"minecraft:smooth_red_sandstone_stairs","name":"Smooth Red Sandstone Stairs","description":"Smooth red sandstone stairs are a decorative stairs variant of smooth red sandstone that does not generate naturally and is used for building.","category":"building","family":"smooth_red_sandstone","primary":"#b5621f","hue_group":"red"},{"id":"minecraft:smooth_sandstone","name":"Smooth Sandstone","description":"Smooth sandstone is a variant of sandstone, obtained by smelting sandstone.","category":"","family":"smooth_sandstone","primary":"#e0d6aa","hue_group":"yellow"},{"id":"minecraft:smooth_sandstone_slab","name":"Smooth Sandstone Slab","description":"A smooth sandstone slab is a decorative slab variant of smooth sandstone that generates in desert villages and is used for building.","category":"building","family":"smooth_sandstone","primary":"#e0d6aa","hue_group":"yellow"},{"id":"minecraft:smooth_sandstone_stairs","name":"Smooth Sandstone Stairs","description":"Smooth sandstone stairs are a decorative stairs variant of smooth sandstone that generate in desert villages and are used for building.","category":"building","family":"smooth_sandstone","primary":"#e0d6aa","hue_group":"yellow"},{"id":"minecraft:smooth_stone","name":"Smooth Stone","description":"Smooth stone is a variant of stone made by smelting regular stone.","category":"","family":"smooth_stone","primary":"#9f9f9f","hue_group":"neutral"},{"id":"minecraft:smooth_stone_slab","name":"Smooth Stone Slab","description":"A smooth stone slab is a decorative slab variant of smooth stone that generates in overworld structures and is used for building.","category":"building","family":"smooth_stone","primary":"#9f9f9f","hue_group":"neutral"},{"id":"minecraft:sniffer_egg","name":"Sniffer Egg","description":"A sniffer egg is a block that can be brushed out of suspicious sand in warm ocean ruins, or obtained by breeding two sniffers. It slowly hatches into a snifflet (baby sniffer) when placed.","category":"","family":"sniffer_egg","primary":"#876944","hue_group":"yellow"},{"id":"minecraft:snow","name":"Snow","description":"Snow is a ground cover and gravity-affected‌[Bedrock Edition only] block found on the surface in snowy biomes. It can be replenished during snowfall.","category":"natural","family":"snow","primary":"#f9fefe","hue_group":"cyan"},{"id":"minecraft:snow_block","name":"Snow Block","description":"A snow block is a full-sized block of snow.","category":"","family":"snow_block","primary":"#f9fefe","hue_group":"cyan"},{"id":"minecraft:soul_campfire","name":"Soul Campfire","description":"Soul campfires are dimmer variants of campfires. Soul campfires deal more damage than normal campfires and have turquoise flames. Just like normal campfires, they can be used to cook food, pacify bees, or act as a spread-proof light source, smoke signal, or damaging trap block.","category":"","family":"soul_campfire","primary":"#4f4b44","hue_group":"neutral"},{"id":"minecraft:soul_fire","name":"Soul Fire","description":"Soul fire is a dimmer turquoise variation of fire that is created when soul sand or soul soil is ignited. Soul fire deals more damage than normal fire and does not spread.","category":"","family":"soul_fire","primary":"#33c1c5","hue_group":"cyan"},{"id":"minecraft:soul_lantern","name":"Soul Lantern","description":"The soul lantern is a block that emits light. It is a variant of the lantern crafted from the soul torch.","category":"","family":"soul_lantern","primary":"#486373","hue_group":"cyan"},{"id":"minecraft:soul_sand","name":"Soul Sand","description":"Soul sand is a block found primarily in the Nether that slows down entities walking on it unless they are wearing Soul Speed boots. It can also be used to grow Nether wart, create soul fire, and make upward bubble columns.","category":"","family":"soul_sand","primary":"#513e33","hue_group":"red"},{"id":"minecraft:soul_soil","name":"Soul Soil","description":"Soul soil is a block found abundantly in soul sand valleys. It does not slow down entities, but still activates Soul Speed. It can also be used to create soul fire, and generate basalt when paired with blue ice and lava.","category":"","family":"soul_soil","primary":"#4c3a2f","hue_group":"red"},{"id":"minecraft:soul_torch","name":"Soul Torch","description":"Soul torches are non-solid blocks that emit light. They are a variant of the torch crafted with the addition of soul soil or soul sand.","category":"","family":"soul_torch","primary":"#6d735a","hue_group":"yellow"},{"id":"minecraft:soul_wall_torch","name":"Soul Wall Torch","description":"Soul torches are non-solid blocks that emit light. They are a variant of the torch crafted with the addition of soul soil or soul sand.","category":"","family":"soul_wall_torch","primary":"#6d735a","hue_group":"yellow"},{"id":"minecraft:spawner","name":"Spawner","description":"Spawner may refer to:","category":"","family":"spawner","primary":"#242e3f","hue_group":"blue"},{"id":"minecraft:sponge","name":"Sponge","description":"A sponge is a block that can be placed to remove water in an area around itself. This turns it into a wet sponge, which can be smelted or placed in the Nether to dry it to be reused. Sponges can only be found in ocean monuments.","category":"","family":"sponge","primary":"#c4c04b","hue_group":"yellow"},{"id":"minecraft:spore_blossom","name":"Spore Blossom","description":"A spore blossom is a ceiling-hanging decorative block that generates in lush caves and emits green particles.","category":"","family":"spore_blossom","primary":"#cf619f","hue_group":"purple"},{"id":"minecraft:spruce_button","name":"Spruce Button","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","category":"building","family":"spruce_button","primary":"#735531","hue_group":"yellow"},{"id":"minecraft:spruce_door","name":"Spruce Door","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","category":"building","family":"spruce","primary":"#6a5031","hue_group":"yellow"},{"id":"minecraft:spruce_fence","name":"Spruce Fence","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","category":"building","family":"spruce","primary":"#735531","hue_group":"yellow"},{"id":"minecraft:spruce_fence_gate","name":"Spruce Fence Gate","description":"A fence gate is a block that shares the functions of both the door and the fence.","category":"building","family":"spruce_fence_gate","primary":"#735531","hue_group":"yellow"},{"id":"minecraft:spruce_hanging_sign","name":"Spruce Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"spruce_hanging_sign","primary":"#745a34","hue_group":"yellow"},{"id":"minecraft:spruce_leaves","name":"Spruce Leaves","description":"Leaves are transparent natural blocks that generate as part of trees. They decay when not attached to a tree trunk, but persist when placed by a player.","category":"natural","family":"spruce","primary":"#7e7e7e","hue_group":"neutral"},{"id":"minecraft:spruce_log","name":"Spruce Log","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","category":"natural","family":"spruce","primary":"#3b2611","hue_group":"yellow"},{"id":"minecraft:spruce_planks","name":"Spruce Planks","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","category":"building","family":"spruce","primary":"#735531","hue_group":"yellow"},{"id":"minecraft:spruce_pressure_plate","name":"Spruce Pressure Plate","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","category":"building","family":"spruce_pressure_plate","primary":"#735531","hue_group":"yellow"},{"id":"minecraft:spruce_sapling","name":"Spruce Sapling","description":"A sapling is a non-solid block that can be grown into a tree.","category":"natural","family":"spruce","primary":"#2d3c25","hue_group":"green"},{"id":"minecraft:spruce_shelf","name":"Spruce Shelf","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","category":"","family":"spruce_shelf","primary":"#685330","hue_group":"yellow"},{"id":"minecraft:spruce_sign","name":"Spruce Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"spruce_sign","primary":"#735531","hue_group":"yellow"},{"id":"minecraft:spruce_slab","name":"Spruce Slab","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","category":"building","family":"spruce","primary":"#735531","hue_group":"yellow"},{"id":"minecraft:spruce_stairs","name":"Spruce Stairs","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","category":"building","family":"spruce","primary":"#735531","hue_group":"yellow"},{"id":"minecraft:spruce_trapdoor","name":"Spruce Trapdoor","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","category":"building","family":"spruce_trapdoor","primary":"#684f30","hue_group":"yellow"},{"id":"minecraft:spruce_wall_hanging_sign","name":"Spruce Wall Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"spruce_wall_hanging_sign","primary":"#745a34","hue_group":"yellow"},{"id":"minecraft:spruce_wall_sign","name":"Spruce Wall Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"spruce_wall_sign","primary":"#735531","hue_group":"yellow"},{"id":"minecraft:spruce_wood","name":"Spruce Wood","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","category":"building","family":"spruce","primary":"#3b2611","hue_group":"yellow"},{"id":"minecraft:sticky_piston","name":"Sticky Piston","description":"A sticky piston is a variant of the piston that can additionally pull most blocks when it retracts.","category":"redstone","family":"sticky_piston","primary":"#6e6961","hue_group":"neutral"},{"id":"minecraft:stone","name":"Stone","description":"Stone is a block found underground in the Overworld or on the surface of mountains.","category":"natural","family":"stone","primary":"#7e7e7e","hue_group":"neutral"},{"id":"minecraft:stone_brick_slab","name":"Stone Brick Slab","description":"A stone brick slab is a decorative slab variant of stone bricks that generates in overworld structures and is used for building.","category":"building","family":"stone_brick","primary":"#7a7a7a","hue_group":"neutral"},{"id":"minecraft:stone_brick_stairs","name":"Stone Brick Stairs","description":"Stone brick stairs are a decorative stairs variant of stone bricks that generate in overworld structures and are used for building.","category":"building","family":"stone_brick","primary":"#7a7a7a","hue_group":"neutral"},{"id":"minecraft:stone_brick_wall","name":"Stone Brick Wall","description":"A stone brick wall is a decorative wall variant of stone bricks that generates in ruined portals and is used for building.","category":"building","family":"stone_brick_wall","primary":"#7a7a7a","hue_group":"neutral"},{"id":"minecraft:stone_bricks","name":"Stone Bricks","description":"Stone bricks are a block found in various structures. It has three other variants: mossy stone bricks, cracked stone bricks, and chiseled stone bricks.","category":"building","family":"stone_bricks","primary":"#7a7a7a","hue_group":"neutral"},{"id":"minecraft:stone_button","name":"Stone Button","description":"A stone button is a variant of the button, a non-solid block that produces a temporary redstone signal when pressed by a player or when hit by a wind charge.","category":"building","family":"stone_button","primary":"#7e7e7e","hue_group":"neutral"},{"id":"minecraft:stone_pressure_plate","name":"Stone Pressure Plate","description":"A stone pressure plate is a stone variant of the pressure plate that can detect only players and mobs.","category":"building","family":"stone_pressure_plate","primary":"#7e7e7e","hue_group":"neutral"},{"id":"minecraft:stone_slab","name":"Stone Slab","description":"A stone slab is a decorative slab variant of stone that generates in ruined portals and is used for building.","category":"building","family":"stone","primary":"#7e7e7e","hue_group":"neutral"},{"id":"minecraft:stone_stairs","name":"Stone Stairs","description":"Stone stairs are a decorative stairs variant of stone used for building.","category":"building","family":"stone","primary":"#7e7e7e","hue_group":"neutral"},{"id":"minecraft:stonecutter","name":"Stonecutter","description":"A stonecutter is a block used to easily craft many stone and copper blocks, and is cheaper than normal crafting for stairs and copper variants. It is also a job site block for mason villagers.","category":"utility","family":"stonecutter","primary":"#7b776f","hue_group":"neutral"},{"id":"minecraft:stripped_acacia_log","name":"Stripped Acacia Log","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","category":"natural","family":"stripped_acacia","primary":"#af5d3c","hue_group":"red"},{"id":"minecraft:stripped_acacia_wood","name":"Stripped Acacia Wood","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","category":"building","family":"stripped_acacia","primary":"#af5d3c","hue_group":"red"},{"id":"minecraft:stripped_bamboo_block","name":"Stripped Bamboo Block","description":"A block of stripped bamboo is a variant of the block of bamboo made by using an axe on a block of bamboo.","category":"natural","family":"stripped_bamboo_block","primary":"#c1ad50","hue_group":"yellow"},{"id":"minecraft:stripped_birch_log","name":"Stripped Birch Log","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","category":"natural","family":"stripped_birch","primary":"#c5b076","hue_group":"yellow"},{"id":"minecraft:stripped_birch_wood","name":"Stripped Birch Wood","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","category":"building","family":"stripped_birch","primary":"#c5b076","hue_group":"yellow"},{"id":"minecraft:stripped_cherry_log","name":"Stripped Cherry Log","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","category":"natural","family":"stripped_cherry","primary":"#d79195","hue_group":"red"},{"id":"minecraft:stripped_cherry_wood","name":"Stripped Cherry Wood","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","category":"building","family":"stripped_cherry","primary":"#d79195","hue_group":"red"},{"id":"minecraft:stripped_crimson_hyphae","name":"Stripped Crimson Hyphae","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","category":"","family":"stripped_crimson_hyphae","primary":"#89395a","hue_group":"red"},{"id":"minecraft:stripped_crimson_stem","name":"Stripped Crimson Stem","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","category":"natural","family":"stripped_crimson_stem","primary":"#89395a","hue_group":"red"},{"id":"minecraft:stripped_dark_oak_log","name":"Stripped Dark Oak Log","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","category":"natural","family":"stripped_dark_oak","primary":"#493924","hue_group":"yellow"},{"id":"minecraft:stripped_dark_oak_wood","name":"Stripped Dark Oak Wood","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","category":"building","family":"stripped_dark_oak","primary":"#493924","hue_group":"yellow"},{"id":"minecraft:stripped_jungle_log","name":"Stripped Jungle Log","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","category":"natural","family":"stripped_jungle","primary":"#ab8555","hue_group":"yellow"},{"id":"minecraft:stripped_jungle_wood","name":"Stripped Jungle Wood","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","category":"building","family":"stripped_jungle","primary":"#ab8555","hue_group":"yellow"},{"id":"minecraft:stripped_mangrove_log","name":"Stripped Mangrove Log","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","category":"natural","family":"stripped_mangrove","primary":"#783630","hue_group":"red"},{"id":"minecraft:stripped_mangrove_wood","name":"Stripped Mangrove Wood","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","category":"building","family":"stripped_mangrove","primary":"#783630","hue_group":"red"},{"id":"minecraft:stripped_oak_log","name":"Stripped Oak Log","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","category":"natural","family":"stripped_oak","primary":"#b19056","hue_group":"yellow"},{"id":"minecraft:stripped_oak_wood","name":"Stripped Oak Wood","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","category":"building","family":"stripped_oak","primary":"#b19056","hue_group":"yellow"},{"id":"minecraft:stripped_pale_oak_log","name":"Stripped Pale Oak Log","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","category":"natural","family":"stripped_pale_oak","primary":"#f6eeed","hue_group":"red"},{"id":"minecraft:stripped_pale_oak_wood","name":"Stripped Pale Oak Wood","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","category":"building","family":"stripped_pale_oak","primary":"#f6eeed","hue_group":"red"},{"id":"minecraft:stripped_spruce_log","name":"Stripped Spruce Log","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","category":"natural","family":"stripped_spruce","primary":"#745a34","hue_group":"yellow"},{"id":"minecraft:stripped_spruce_wood","name":"Stripped Spruce Wood","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","category":"building","family":"stripped_spruce","primary":"#745a34","hue_group":"yellow"},{"id":"minecraft:stripped_warped_hyphae","name":"Stripped Warped Hyphae","description":"Stripped wood or stripped hyphae is a variant of wood obtained when any axe is used on wood or hyphae respectively.","category":"","family":"stripped_warped_hyphae","primary":"#3a9794","hue_group":"cyan"},{"id":"minecraft:stripped_warped_stem","name":"Stripped Warped Stem","description":"A stripped log or stripped stem is a variant of the log and stem, obtained by using an axe on a log or a stem respectively. Once stripped, it cannot be reversed.","category":"natural","family":"stripped_warped_stem","primary":"#3a9794","hue_group":"cyan"},{"id":"minecraft:structure_block","name":"Structure Block","description":"A structure block is used to generate structures manually. They can also be used to save and load structures, alongside structure void blocks.","category":"technical","family":"structure_block","primary":"#594a5a","hue_group":"neutral"},{"id":"minecraft:structure_void","name":"Structure Void","description":"A structure void is an invisible block that is not saved by structure blocks, allowing for the creation of structures that leave some existing blocks unchanged when loaded.","category":"technical","family":"structure_void","primary":"#19575d","hue_group":"cyan"},{"id":"minecraft:sugar_cane","name":"Sugar Cane","description":"Sugar cane is a plant that can only be placed on plantable blocks adjacent to water. It grows up to three blocks tall over time, but will instead uproot itself if its water is removed. Sugar cane can be crafted into sugar and paper.","category":"","family":"sugar_cane","primary":"#95c165","hue_group":"yellow"},{"id":"minecraft:sunflower","name":"Sunflower","description":"A sunflower is a tall flower that generates exclusively in sunflower plains biomes. It can be crafted into two yellow dye.","category":"natural","family":"sunflower","primary":"#39871f","hue_group":"green"},{"id":"minecraft:suspicious_gravel","name":"Suspicious Gravel","description":"Suspicious gravel is a fragile gravity-affected block found in various Overworld structures. It can be brushed to extract unique structure-dependent loot from it. It drops nothing if it breaks, and will break if it falls or is moved.","category":"","family":"suspicious_gravel","primary":"#827d7c","hue_group":"neutral"},{"id":"minecraft:suspicious_sand","name":"Suspicious Sand","description":"Suspicious sand is a fragile gravity-affected block found in various Overworld structures. It can be brushed to extract unique structure-dependent loot from it. It drops nothing if it breaks, and will break if it falls or is moved.","category":"","family":"suspicious_sand","primary":"#dacc9f","hue_group":"yellow"},{"id":"minecraft:sweet_berry_bush","name":"Sweet Berry Bush","description":"Sweet berries are a food item obtained from sweet berry bushes and are used to plant them. Sweet berry bushes are quick-growing plants that grow sweet berries. Players and most mobs are slowed down and take constant damage while moving through them. They can be found naturally in taiga and snowy taiga biomes.","category":"","family":"sweet_berry_bush","primary":"#2b5a38","hue_group":"green"},{"id":"minecraft:tall_dry_grass","name":"Tall Dry Grass","description":"Tall dry grass is the tall variant of dry grass. Unlike other tall variants of foliage, this block is only one-block tall. It generates frequently in deserts and all types of badlands, and looks like a more full version of short dry grass. It also grows on sand and terracotta, and can be eaten by sheep.","category":"natural","family":"tall_dry_grass","primary":"#c5ac7b","hue_group":"yellow"},{"id":"minecraft:tall_grass","name":"Tall Grass","description":"Tall grass is the 2-block tall variant of short grass.","category":"natural","family":"tall_grass","primary":"#808080","hue_group":"neutral"},{"id":"minecraft:tall_seagrass","name":"Tall Seagrass","description":"Seagrass is a non-solid plant block that generates in all oceans, except frozen oceans. Tall seagrass is a two-block high variety of seagrass.","category":"natural","family":"tall_seagrass","primary":"#2d7504","hue_group":"green"},{"id":"minecraft:target","name":"Target","description":"A target is a block that produces a temporary redstone signal when hit by a projectile. Unlike most other conductive blocks, it also redirects adjacent redstone dust toward it.","category":"redstone","family":"target","primary":"#e5b0a8","hue_group":"red"},{"id":"minecraft:terracotta","name":"Terracotta","description":"Terracotta is a block that is found abundantly in badlands biomes, or can be obtained by smelting clay. It can be dyed to create stained terracotta.","category":"building","family":"terracotta","primary":"#985e44","hue_group":"red"},{"id":"minecraft:test_block","name":"Test Block","description":"A test block is a technical block that is used for game tests.","category":"","family":"test_block","primary":"#84bf75","hue_group":"green"},{"id":"minecraft:test_instance_block","name":"Test Instance Block","description":"A test instance block is a technical block that is used for game tests.","category":"","family":"test_instance_block","primary":"#7f7977","hue_group":"neutral"},{"id":"minecraft:tinted_glass","name":"Tinted Glass","description":"Tinted glass is a block that blocks light while being visually transparent.","category":"building","family":"tinted_glass","primary":"#2c272e","hue_group":"neutral"},{"id":"minecraft:tnt","name":"Tnt","description":"TNT is an explosive block that can be lit by a redstone signal, flint and steel, stray fire, flaming projectile or explosion. When lit, TNT becomes primed TNT, a gravity-affected entity that produces a damaging, block-destroying explosion, usually after four seconds. Blocks destroyed by TNT always drop their usual items as if mined by a player.","category":"","family":"tnt","primary":"#8f3e36","hue_group":"red"},{"id":"minecraft:torch","name":"Torch","description":"Torches are non-solid blocks that emit light.","category":"","family":"torch","primary":"#8b7140","hue_group":"yellow"},{"id":"minecraft:torchflower","name":"Torchflower","description":"A torchflower is an ancient flower obtained from harvesting torchflower seeds. It can be crafted into orange dye.","category":"natural","family":"torchflower","primary":"#65654d","hue_group":"yellow"},{"id":"minecraft:torchflower_crop","name":"Torchflower Crop","description":"Torchflower seeds are ancient seeds that have a chance to be dropped by sniffers when they finish digging. It is the seed of torchflowers.","category":"natural","family":"torchflower_crop","primary":"#1d6243","hue_group":"cyan"},{"id":"minecraft:trapped_chest","name":"Trapped Chest","description":"A trapped chest is a type of chest that functions almost identically, but has a red-tinted latch and produces redstone power while open. Like normal chests, two trapped chests can merge into a large trapped chest if placed next to each other.","category":"utility","family":"trapped_chest","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:trial_spawner","name":"Trial Spawner","description":"A trial spawner is a type of spawner found in trial chambers. It spawns mobs in waves, ejects consumable items and/or trial keys after they are all defeated, and then deactivates for 30 minutes. Having more Survival/Adventure mode players nearby results in more mobs and more rewards. A trial spawner will convert into an active ominous trial spawner during an ominous trial, even if it was on cooldown.","category":"","family":"trial_spawner","primary":"#3f515c","hue_group":"cyan"},{"id":"minecraft:tripwire","name":"Tripwire","description":"String is an item that can be used as a crafting material or placed as tripwire to allow tripwire hooks and observers to detect entities that touch it.","category":"redstone","family":"tripwire","primary":"#818181","hue_group":"neutral"},{"id":"minecraft:tripwire_hook","name":"Tripwire Hook","description":"A tripwire hook is a block used to create a tripwire circuit, which requires two hooks and a straight horizontal line of 1-40 string. Both hooks in a valid circuit emit a redstone signal and power their attached blocks while any of the string is being touched by an entity, or if any string is broken without using shears.","category":"redstone","family":"tripwire_hook","primary":"#8f8576","hue_group":"neutral"},{"id":"minecraft:tube_coral","name":"Tube Coral","description":"Coral is a type of non-solid block that comes in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"tube_coral","primary":"#3053c5","hue_group":"blue"},{"id":"minecraft:tube_coral_block","name":"Tube Coral Block","description":"A coral block is a solid block that comes in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"tube_coral_block","primary":"#3157cf","hue_group":"blue"},{"id":"minecraft:tube_coral_fan","name":"Tube Coral Fan","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"tube_coral_fan","primary":"#335cd1","hue_group":"blue"},{"id":"minecraft:tube_coral_wall_fan","name":"Tube Coral Wall Fan","description":"Coral fans are non-solid blocks that come in five variants: tube, brain, bubble, fire, and horn.","category":"natural","family":"tube_coral_wall_fan","primary":"#335cd1","hue_group":"blue"},{"id":"minecraft:tuff","name":"Tuff","description":"Tuff is an ornamental rock, occurring in underground ore blobs below Y=0.","category":"","family":"tuff","primary":"#6c6d67","hue_group":"neutral"},{"id":"minecraft:tuff_brick_slab","name":"Tuff Brick Slab","description":"A tuff brick slab is a decorative slab variant of tuff bricks that does not generate naturally and is commonly used for building.","category":"building","family":"tuff_brick","primary":"#62675f","hue_group":"neutral"},{"id":"minecraft:tuff_brick_stairs","name":"Tuff Brick Stairs","description":"Tuff brick stairs are a decorative stairs variant of tuff bricks that does not generate naturally and is used for building.","category":"building","family":"tuff_brick","primary":"#62675f","hue_group":"neutral"},{"id":"minecraft:tuff_brick_wall","name":"Tuff Brick Wall","description":"A tuff brick wall is a decorative wall variant of tuff bricks that does not generate naturally and is used for building.","category":"building","family":"tuff_brick_wall","primary":"#62675f","hue_group":"neutral"},{"id":"minecraft:tuff_bricks","name":"Tuff Bricks","description":"Tuff bricks are a brick variant of tuff found abundantly in trial chambers.","category":"building","family":"tuff_bricks","primary":"#62675f","hue_group":"neutral"},{"id":"minecraft:tuff_slab","name":"Tuff Slab","description":"A tuff slab is a decorative slab variant of tuff that does not generate naturally and is used for building.","category":"building","family":"tuff","primary":"#6c6d67","hue_group":"neutral"},{"id":"minecraft:tuff_stairs","name":"Tuff Stairs","description":"Tuff stairs are a decorative stairs variant of tuff used for building.","category":"building","family":"tuff","primary":"#6c6d67","hue_group":"neutral"},{"id":"minecraft:tuff_wall","name":"Tuff Wall","description":"A tuff wall is a decorative wall variant of tuff that does not generate naturally and is used for building.","category":"building","family":"tuff_wall","primary":"#6c6d67","hue_group":"neutral"},{"id":"minecraft:turtle_egg","name":"Turtle Egg","description":"A turtle egg is a block that can be placed up to four times within one block space that hatches turtles.","category":"","family":"turtle_egg","primary":"#e4e3c0","hue_group":"yellow"},{"id":"minecraft:twisting_vines","name":"Twisting Vines","description":"Twisting vines are climbable upward-growing vegetation blocks found in the Nether in warped forests.","category":"natural","family":"twisting_vines","primary":"#148f7c","hue_group":"cyan"},{"id":"minecraft:twisting_vines_plant","name":"Twisting Vines Plant","description":"Twisting vines are climbable upward-growing vegetation blocks found in the Nether in warped forests.","category":"natural","family":"twisting_vines_plant","primary":"#14887a","hue_group":"cyan"},{"id":"minecraft:vault","name":"Vault","description":"A vault is a block found in trial chambers that ejects loot when unlocked using a trial key. Each vault can be opened by an unlimited number of players, but each player can unlock a specific vault only once.","category":"","family":"vault","primary":"#37464f","hue_group":"cyan"},{"id":"minecraft:verdant_froglight","name":"Verdant Froglight","description":"A froglight is a light-emitting block that is obtained when a frog eats a tiny magma cube. It comes in three variants based on the variant of frog that eats the magma cube.","category":"","family":"verdant_froglight","primary":"#d3ebd0","hue_group":"green"},{"id":"minecraft:vine","name":"Vine","description":"Vines are climbable non-solid vegetation blocks that grow on walls.","category":"natural","family":"vine","primary":"#747474","hue_group":"neutral"},{"id":"minecraft:void_air","name":"Void Air","description":"Air is an invisible block used to define unoccupied space where other blocks and items could exist; it represents the absence of a block or an item. It is one of the few blocks in the game that players cannot normally interact with. Cave air‌[Java Edition only] is a variant found only underground in carver caves and some generated structures along with features like lava lakes. Void air‌[Java Edition only] is a variant used internally for the 'air' in unloaded chunks and outside of the world height limits (above Y=319 and below Y=-64 in the Overworld, and above Y=255 and below Y=0 in the Nether and the End dimensions).","category":"","family":"void_air","primary":"#20557c","hue_group":"cyan"},{"id":"minecraft:wall_torch","name":"Wall Torch","description":"Torches are non-solid blocks that emit light.","category":"","family":"wall_torch","primary":"#8b7140","hue_group":"yellow"},{"id":"minecraft:warped_button","name":"Warped Button","description":"A wooden button is a type of button that remains pressed for longer than a stone button and can additionally be pressed by arrows and thrown tridents.","category":"building","family":"warped_button","primary":"#2b6963","hue_group":"cyan"},{"id":"minecraft:warped_door","name":"Warped Door","description":"The wooden door is a variant of the door made of wood that can be opened and closed by the player without redstone.","category":"building","family":"warped","primary":"#2d7f79","hue_group":"cyan"},{"id":"minecraft:warped_fence","name":"Warped Fence","description":"A wooden fence is the wooden variant of fences, crafted using planks and sticks.","category":"building","family":"warped","primary":"#2b6963","hue_group":"cyan"},{"id":"minecraft:warped_fence_gate","name":"Warped Fence Gate","description":"A fence gate is a block that shares the functions of both the door and the fence.","category":"building","family":"warped_fence_gate","primary":"#2b6963","hue_group":"cyan"},{"id":"minecraft:warped_fungus","name":"Warped Fungus","description":"A warped fungus is a mushroom-like block that generates in the Nether.","category":"natural","family":"warped_fungus","primary":"#4a6d58","hue_group":"green"},{"id":"minecraft:warped_hanging_sign","name":"Warped Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"warped_hanging_sign","primary":"#3a9794","hue_group":"cyan"},{"id":"minecraft:warped_hyphae","name":"Warped Hyphae","description":"Wood or hyphae is a block that has the log's \"bark\" texture on all six sides. It comes in 11 types: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry, crimson, warped, and pale oak.","category":"","family":"warped_hyphae","primary":"#3a3b4e","hue_group":"blue"},{"id":"minecraft:warped_nylium","name":"Warped Nylium","description":"Warped nylium is a variant of netherrack that generates in the Nether.","category":"natural","family":"warped_nylium","primary":"#2b7265","hue_group":"cyan"},{"id":"minecraft:warped_planks","name":"Warped Planks","description":"Planks are common blocks used as building blocks and in crafting recipes. They are usually one of the first things that a player crafts in Survival mode. There are currently twelve variants of planks, which can be differentiated into three categories: Overworld planks made from tree logs, bamboo planks made from blocks of bamboo, and nonflammable Nether planks made from huge fungus stems.","category":"building","family":"warped","primary":"#2b6963","hue_group":"cyan"},{"id":"minecraft:warped_pressure_plate","name":"Warped Pressure Plate","description":"A wooden pressure plate is a wooden variant of the pressure plate. It can detect all entities, producing the maximum signal strength of 15. Wooden pressure plates come in all variants of wood.","category":"building","family":"warped_pressure_plate","primary":"#2b6963","hue_group":"cyan"},{"id":"minecraft:warped_roots","name":"Warped Roots","description":"Warped roots are a non-solid \"plant\" block which generate naturally on warped nylium and soul soil in warped forests. They resemble a colony of tall, thin mushrooms.","category":"natural","family":"warped_roots","primary":"#148a7c","hue_group":"cyan"},{"id":"minecraft:warped_shelf","name":"Warped Shelf","description":"A shelf is a block that can store and display up to three stacks of items. A shelf can be used to swap its slots with the slots in the player's hotbar. It swaps 1 slot normally, and 3 slots at a time when powered with redstone.","category":"","family":"warped_shelf","primary":"#338d86","hue_group":"cyan"},{"id":"minecraft:warped_sign","name":"Warped Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"warped_sign","primary":"#2b6963","hue_group":"cyan"},{"id":"minecraft:warped_slab","name":"Warped Slab","description":"A wooden slab is a wooden variant of a slab crafted from its respective planks.","category":"building","family":"warped","primary":"#2b6963","hue_group":"cyan"},{"id":"minecraft:warped_stairs","name":"Warped Stairs","description":"Wooden stairs are a wooden variant of stairs, crafted from their respective planks.","category":"building","family":"warped","primary":"#2b6963","hue_group":"cyan"},{"id":"minecraft:warped_stem","name":"Warped Stem","description":"A log or stem is a naturally occurring block found in trees or huge fungi, primarily used as a building block and to create planks, a versatile crafting ingredient. There are nine types of logs: oak, spruce, birch, jungle, acacia, dark oak, mangrove, cherry blossom, and pale oak; and two types of stems: crimson, and warped.","category":"natural","family":"warped_stem","primary":"#3a3b4e","hue_group":"blue"},{"id":"minecraft:warped_trapdoor","name":"Warped Trapdoor","description":"A wooden trapdoor is a variant of the trapdoor that can be opened and closed by the player without redstone.","category":"building","family":"warped_trapdoor","primary":"#2f7870","hue_group":"cyan"},{"id":"minecraft:warped_wall_hanging_sign","name":"Warped Wall Hanging Sign","description":"A hanging sign is a variant of a sign that displays text, and can be placed underneath blocks or with a solid self-supporting bracket. The text of hanging signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent edits.","category":"building","family":"warped_wall_hanging_sign","primary":"#3a9794","hue_group":"cyan"},{"id":"minecraft:warped_wall_sign","name":"Warped Wall Sign","description":"A sign is a non-solid block that can display text, and can be placed on the top or side of other blocks. The text of signs can be customized with dyes and glow ink sacs, and they can be waxed to prevent its text from being edited by any player.","category":"building","family":"warped_wall_sign","primary":"#2b6963","hue_group":"cyan"},{"id":"minecraft:warped_wart_block","name":"Warped Wart Block","description":"Warped wart blocks are a decorative block found in warped forests, generating as part of huge warped fungus.","category":"","family":"warped_wart_block","primary":"#177879","hue_group":"cyan"},{"id":"minecraft:water","name":"Water","description":"Water is a fluid that naturally generates abundantly in the Overworld.","category":"","family":"water","primary":"#b1b1b1","hue_group":"neutral"},{"id":"minecraft:water_cauldron","name":"Water Cauldron","description":"A cauldron is a block that can contain water, lava or powder snow and, in certain situations, collect them from the environment. In Bedrock Edition, it can also hold dyed water or potions, and can be used to efficiently create tipped arrows. It also serves as a leatherworker's job site block.","category":"","family":"water_cauldron","primary":"#4a494a","hue_group":"neutral"},{"id":"minecraft:waxed_chiseled_copper","name":"Waxed Chiseled Copper","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","category":"building","family":"waxed_chiseled_copper","primary":"#b8654a","hue_group":"red"},{"id":"minecraft:waxed_copper_bars","name":"Waxed Copper Bars","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","category":"building","family":"waxed_copper_bars","primary":"#9c5137","hue_group":"red"},{"id":"minecraft:waxed_copper_block","name":"Waxed Copper Block","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","category":"building","family":"waxed_copper_block","primary":"#c06c50","hue_group":"red"},{"id":"minecraft:waxed_copper_bulb","name":"Waxed Copper Bulb","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","category":"building","family":"waxed_copper_bulb","primary":"#9c5739","hue_group":"red"},{"id":"minecraft:waxed_copper_chain","name":"Waxed Copper Chain","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","category":"building","family":"waxed_copper_chain","primary":"#984f37","hue_group":"red"},{"id":"minecraft:waxed_copper_chest","name":"Waxed Copper Chest","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","category":"building","family":"waxed_copper_chest","primary":"#c06c50","hue_group":"red"},{"id":"minecraft:waxed_copper_door","name":"Waxed Copper Door","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","category":"building","family":"waxed_copper","primary":"#c16d53","hue_group":"red"},{"id":"minecraft:waxed_copper_golem_statue","name":"Waxed Copper Golem Statue","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","category":"building","family":"waxed_copper_golem_statue","primary":"#c06c50","hue_group":"red"},{"id":"minecraft:waxed_copper_grate","name":"Waxed Copper Grate","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","category":"building","family":"waxed_copper_grate","primary":"#c06c4f","hue_group":"red"},{"id":"minecraft:waxed_copper_lantern","name":"Waxed Copper Lantern","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","category":"building","family":"waxed_copper_lantern","primary":"#9e6c4c","hue_group":"red"},{"id":"minecraft:waxed_copper_trapdoor","name":"Waxed Copper Trapdoor","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","category":"building","family":"waxed_copper_trapdoor","primary":"#bf6a50","hue_group":"red"},{"id":"minecraft:waxed_cut_copper","name":"Waxed Cut Copper","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","category":"building","family":"waxed_cut_copper","primary":"#bf6b51","hue_group":"red"},{"id":"minecraft:waxed_cut_copper_slab","name":"Waxed Cut Copper Slab","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","category":"building","family":"waxed_cut_copper","primary":"#bf6b51","hue_group":"red"},{"id":"minecraft:waxed_cut_copper_stairs","name":"Waxed Cut Copper Stairs","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","category":"building","family":"waxed_cut_copper","primary":"#bf6b51","hue_group":"red"},{"id":"minecraft:waxed_exposed_chiseled_copper","name":"Waxed Exposed Chiseled Copper","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","category":"building","family":"waxed_exposed_chiseled_copper","primary":"#9b7765","hue_group":"red"},{"id":"minecraft:waxed_exposed_copper","name":"Waxed Exposed Copper","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","category":"building","family":"waxed_exposed_copper","primary":"#a17e68","hue_group":"red"},{"id":"minecraft:waxed_exposed_copper_bars","name":"Waxed Exposed Copper Bars","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","category":"building","family":"waxed_exposed_copper_bars","primary":"#866c59","hue_group":"red"},{"id":"minecraft:waxed_exposed_copper_bulb","name":"Waxed Exposed Copper Bulb","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","category":"building","family":"waxed_exposed_copper_bulb","primary":"#876c5a","hue_group":"red"},{"id":"minecraft:waxed_exposed_copper_chain","name":"Waxed Exposed Copper Chain","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","category":"building","family":"waxed_exposed_copper_chain","primary":"#7e6654","hue_group":"red"},{"id":"minecraft:waxed_exposed_copper_chest","name":"Waxed Exposed Copper Chest","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","category":"building","family":"waxed_exposed_copper_chest","primary":"#a17e68","hue_group":"red"},{"id":"minecraft:waxed_exposed_copper_door","name":"Waxed Exposed Copper Door","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","category":"building","family":"waxed_exposed_copper","primary":"#a47b6a","hue_group":"red"},{"id":"minecraft:waxed_exposed_copper_golem_statue","name":"Waxed Exposed Copper Golem Statue","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","category":"building","family":"waxed_exposed_copper_golem_statue","primary":"#a17e68","hue_group":"red"},{"id":"minecraft:waxed_exposed_copper_grate","name":"Waxed Exposed Copper Grate","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","category":"building","family":"waxed_exposed_copper_grate","primary":"#a27e69","hue_group":"red"},{"id":"minecraft:waxed_exposed_copper_lantern","name":"Waxed Exposed Copper Lantern","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","category":"building","family":"waxed_exposed_copper_lantern","primary":"#948369","hue_group":"yellow"},{"id":"minecraft:waxed_exposed_copper_trapdoor","name":"Waxed Exposed Copper Trapdoor","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","category":"building","family":"waxed_exposed_copper_trapdoor","primary":"#a17d69","hue_group":"red"},{"id":"minecraft:waxed_exposed_cut_copper","name":"Waxed Exposed Cut Copper","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","category":"building","family":"waxed_exposed_cut_copper","primary":"#9b7a65","hue_group":"red"},{"id":"minecraft:waxed_exposed_cut_copper_slab","name":"Waxed Exposed Cut Copper Slab","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","category":"building","family":"waxed_exposed_cut_copper","primary":"#9b7a65","hue_group":"red"},{"id":"minecraft:waxed_exposed_cut_copper_stairs","name":"Waxed Exposed Cut Copper Stairs","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","category":"building","family":"waxed_exposed_cut_copper","primary":"#9b7a65","hue_group":"red"},{"id":"minecraft:waxed_exposed_lightning_rod","name":"Waxed Exposed Lightning Rod","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","category":"","family":"waxed_exposed_lightning_rod","primary":"#9f7868","hue_group":"red"},{"id":"minecraft:waxed_lightning_rod","name":"Waxed Lightning Rod","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","category":"","family":"waxed_lightning_rod","primary":"#c56f53","hue_group":"red"},{"id":"minecraft:waxed_oxidized_chiseled_copper","name":"Waxed Oxidized Chiseled Copper","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","category":"building","family":"waxed_oxidized_chiseled_copper","primary":"#54a284","hue_group":"cyan"},{"id":"minecraft:waxed_oxidized_copper","name":"Waxed Oxidized Copper","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","category":"building","family":"waxed_oxidized_copper","primary":"#52a385","hue_group":"cyan"},{"id":"minecraft:waxed_oxidized_copper_bars","name":"Waxed Oxidized Copper Bars","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","category":"building","family":"waxed_oxidized_copper_bars","primary":"#407b65","hue_group":"cyan"},{"id":"minecraft:waxed_oxidized_copper_bulb","name":"Waxed Oxidized Copper Bulb","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","category":"building","family":"waxed_oxidized_copper_bulb","primary":"#46846d","hue_group":"cyan"},{"id":"minecraft:waxed_oxidized_copper_chain","name":"Waxed Oxidized Copper Chain","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","category":"building","family":"waxed_oxidized_copper_chain","primary":"#3e7663","hue_group":"cyan"},{"id":"minecraft:waxed_oxidized_copper_chest","name":"Waxed Oxidized Copper Chest","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","category":"building","family":"waxed_oxidized_copper_chest","primary":"#52a385","hue_group":"cyan"},{"id":"minecraft:waxed_oxidized_copper_door","name":"Waxed Oxidized Copper Door","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","category":"building","family":"waxed_oxidized_copper","primary":"#52a085","hue_group":"cyan"},{"id":"minecraft:waxed_oxidized_copper_golem_statue","name":"Waxed Oxidized Copper Golem Statue","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","category":"building","family":"waxed_oxidized_copper_golem_statue","primary":"#52a385","hue_group":"cyan"},{"id":"minecraft:waxed_oxidized_copper_grate","name":"Waxed Oxidized Copper Grate","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","category":"building","family":"waxed_oxidized_copper_grate","primary":"#52a183","hue_group":"cyan"},{"id":"minecraft:waxed_oxidized_copper_lantern","name":"Waxed Oxidized Copper Lantern","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","category":"building","family":"waxed_oxidized_copper_lantern","primary":"#4e8b6f","hue_group":"cyan"},{"id":"minecraft:waxed_oxidized_copper_trapdoor","name":"Waxed Oxidized Copper Trapdoor","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","category":"building","family":"waxed_oxidized_copper_trapdoor","primary":"#54a184","hue_group":"cyan"},{"id":"minecraft:waxed_oxidized_cut_copper","name":"Waxed Oxidized Cut Copper","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","category":"building","family":"waxed_oxidized_cut_copper","primary":"#509a7e","hue_group":"cyan"},{"id":"minecraft:waxed_oxidized_cut_copper_slab","name":"Waxed Oxidized Cut Copper Slab","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","category":"building","family":"waxed_oxidized_cut_copper","primary":"#509a7e","hue_group":"cyan"},{"id":"minecraft:waxed_oxidized_cut_copper_stairs","name":"Waxed Oxidized Cut Copper Stairs","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","category":"building","family":"waxed_oxidized_cut_copper","primary":"#509a7e","hue_group":"cyan"},{"id":"minecraft:waxed_oxidized_lightning_rod","name":"Waxed Oxidized Lightning Rod","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","category":"","family":"waxed_oxidized_lightning_rod","primary":"#4f9a80","hue_group":"cyan"},{"id":"minecraft:waxed_weathered_chiseled_copper","name":"Waxed Weathered Chiseled Copper","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","category":"building","family":"waxed_weathered_chiseled_copper","primary":"#69976f","hue_group":"green"},{"id":"minecraft:waxed_weathered_copper","name":"Waxed Weathered Copper","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","category":"building","family":"waxed_weathered_copper","primary":"#6c996e","hue_group":"green"},{"id":"minecraft:waxed_weathered_copper_bars","name":"Waxed Weathered Copper Bars","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","category":"building","family":"waxed_weathered_copper_bars","primary":"#557b5e","hue_group":"green"},{"id":"minecraft:waxed_weathered_copper_bulb","name":"Waxed Weathered Copper Bulb","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","category":"building","family":"waxed_weathered_copper_bulb","primary":"#5c7f63","hue_group":"green"},{"id":"minecraft:waxed_weathered_copper_chain","name":"Waxed Weathered Copper Chain","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","category":"building","family":"waxed_weathered_copper_chain","primary":"#496d5c","hue_group":"cyan"},{"id":"minecraft:waxed_weathered_copper_chest","name":"Waxed Weathered Copper Chest","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","category":"building","family":"waxed_weathered_copper_chest","primary":"#6c996e","hue_group":"green"},{"id":"minecraft:waxed_weathered_copper_door","name":"Waxed Weathered Copper Door","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","category":"building","family":"waxed_weathered_copper","primary":"#6e976e","hue_group":"green"},{"id":"minecraft:waxed_weathered_copper_golem_statue","name":"Waxed Weathered Copper Golem Statue","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","category":"building","family":"waxed_weathered_copper_golem_statue","primary":"#6c996e","hue_group":"green"},{"id":"minecraft:waxed_weathered_copper_grate","name":"Waxed Weathered Copper Grate","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","category":"building","family":"waxed_weathered_copper_grate","primary":"#6a996f","hue_group":"green"},{"id":"minecraft:waxed_weathered_copper_lantern","name":"Waxed Weathered Copper Lantern","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","category":"building","family":"waxed_weathered_copper_lantern","primary":"#608664","hue_group":"green"},{"id":"minecraft:waxed_weathered_copper_trapdoor","name":"Waxed Weathered Copper Trapdoor","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","category":"building","family":"waxed_weathered_copper_trapdoor","primary":"#6d996e","hue_group":"green"},{"id":"minecraft:waxed_weathered_cut_copper","name":"Waxed Weathered Cut Copper","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","category":"building","family":"waxed_weathered_cut_copper","primary":"#6d916c","hue_group":"green"},{"id":"minecraft:waxed_weathered_cut_copper_slab","name":"Waxed Weathered Cut Copper Slab","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","category":"building","family":"waxed_weathered_cut_copper","primary":"#6d916c","hue_group":"green"},{"id":"minecraft:waxed_weathered_cut_copper_stairs","name":"Waxed Weathered Cut Copper Stairs","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","category":"building","family":"waxed_weathered_cut_copper","primary":"#6d916c","hue_group":"green"},{"id":"minecraft:waxed_weathered_lightning_rod","name":"Waxed Weathered Lightning Rod","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","category":"","family":"waxed_weathered_lightning_rod","primary":"#618e69","hue_group":"green"},{"id":"minecraft:weathered_chiseled_copper","name":"Weathered Chiseled Copper","description":"Chiseled copper is a variant of copper blocks that generates in trial chambers.","category":"building","family":"weathered_chiseled_copper","primary":"#69976f","hue_group":"green"},{"id":"minecraft:weathered_copper","name":"Weathered Copper","description":"A block of copper, internally known as a copper block, is a block that oxidizes over time, gaining a verdigris appearance over four stages. They can be prevented from oxidizing by being waxed with honeycombs. Non-oxidized blocks of copper are storage blocks equivalent to nine copper ingots.","category":"building","family":"weathered_copper","primary":"#6c996e","hue_group":"green"},{"id":"minecraft:weathered_copper_bars","name":"Weathered Copper Bars","description":"Copper bars are copper variants of bars. Unlike iron bars, they are colored copper orange and can oxidize over time, similar to other copper blocks.","category":"building","family":"weathered_copper_bars","primary":"#557b5e","hue_group":"green"},{"id":"minecraft:weathered_copper_bulb","name":"Weathered Copper Bulb","description":"A copper bulb is a light-emitting block. It toggles on or off when it receives a redstone pulse, and does not need continuous power to emit light. Its light level depends on its state of oxidation. Waxed copper bulbs do not oxidize, but otherwise function identically.","category":"building","family":"weathered_copper_bulb","primary":"#5c7f63","hue_group":"green"},{"id":"minecraft:weathered_copper_chain","name":"Weathered Copper Chain","description":"A copper chain is an oxidizing directional block and the copper variant of chains.","category":"building","family":"weathered_copper_chain","primary":"#496d5c","hue_group":"cyan"},{"id":"minecraft:weathered_copper_chest","name":"Weathered Copper Chest","description":"A copper chest is a type of chest made of copper. It functions almost identically to a normal wooden chest, except that it oxidizes over time, and copper golems will take items out of it and attempt to store them inside nearby wooden chests. Like normal chests, two copper chests can merge into a large copper chest if placed next to each other.","category":"building","family":"weathered_copper_chest","primary":"#6c996e","hue_group":"green"},{"id":"minecraft:weathered_copper_door","name":"Weathered Copper Door","description":"The copper door is a type of door made of copper that can be opened and closed by the player without redstone.","category":"building","family":"weathered_copper","primary":"#6e976e","hue_group":"green"},{"id":"minecraft:weathered_copper_golem_statue","name":"Weathered Copper Golem Statue","description":"A copper golem statue is the result of a copper golem fully oxidizing and petrifying into a block. It can be posed in four different ways, or it can be reanimated by scraping it with an axe enough times.","category":"building","family":"weathered_copper_golem_statue","primary":"#6c996e","hue_group":"green"},{"id":"minecraft:weathered_copper_grate","name":"Weathered Copper Grate","description":"Copper grates are a variant of copper blocks that have perforations that can be seen through.","category":"building","family":"weathered_copper_grate","primary":"#6a996f","hue_group":"green"},{"id":"minecraft:weathered_copper_lantern","name":"Weathered Copper Lantern","description":"A copper lantern is a copper variant of a lantern that displays a green flame and oxidizes over time.","category":"building","family":"weathered_copper_lantern","primary":"#608664","hue_group":"green"},{"id":"minecraft:weathered_copper_trapdoor","name":"Weathered Copper Trapdoor","description":"A copper trapdoor is a type of trapdoor made from copper that can be opened and closed by the player without redstone. A copper trapdoor can exist in one of eight variants depending on how oxidized it is and whether it is waxed or not.","category":"building","family":"weathered_copper_trapdoor","primary":"#6d996e","hue_group":"green"},{"id":"minecraft:weathered_cut_copper","name":"Weathered Cut Copper","description":"Cut copper is an oxidizing metal block crafted from blocks of copper. Like other copper blocks, cut copper can be waxed to prevent oxidation.","category":"building","family":"weathered_cut_copper","primary":"#6d916c","hue_group":"green"},{"id":"minecraft:weathered_cut_copper_slab","name":"Weathered Cut Copper Slab","description":"A cut copper slab is a decorative slab variant of cut copper that generates in trial chambers and is used for building. Unlike other types of slabs, cut copper slabs can oxidize over time.","category":"building","family":"weathered_cut_copper","primary":"#6d916c","hue_group":"green"},{"id":"minecraft:weathered_cut_copper_stairs","name":"Weathered Cut Copper Stairs","description":"Cut copper stairs are a decorative stairs variant of cut copper that generate in trial chambers and are used for building. Unlike other types of stairs, cut copper stairs can oxidize over time.","category":"building","family":"weathered_cut_copper","primary":"#6d916c","hue_group":"green"},{"id":"minecraft:weathered_lightning_rod","name":"Weathered Lightning Rod","description":"A lightning rod is a block that diverts lightning strikes. Getting struck by lightning causes it to emit a redstone signal and, if it is not waxed, also reduces its level of oxidation.","category":"","family":"weathered_lightning_rod","primary":"#618e69","hue_group":"green"},{"id":"minecraft:weeping_vines","name":"Weeping Vines","description":"Weeping vines are climbable, downwards-growing vegetation blocks found in the Nether in crimson forests.","category":"natural","family":"weeping_vines","primary":"#690100","hue_group":"red"},{"id":"minecraft:weeping_vines_plant","name":"Weeping Vines Plant","description":"Weeping vines are climbable, downwards-growing vegetation blocks found in the Nether in crimson forests.","category":"natural","family":"weeping_vines_plant","primary":"#85100c","hue_group":"red"},{"id":"minecraft:wet_sponge","name":"Wet Sponge","description":"A sponge is a block that can be placed to remove water in an area around itself. This turns it into a wet sponge, which can be smelted or placed in the Nether to dry it to be reused. Sponges can only be found in ocean monuments.","category":"","family":"wet_sponge","primary":"#abb546","hue_group":"yellow"},{"id":"minecraft:wheat","name":"Wheat","description":"Wheat is an item primarily obtained by harvesting fully-grown wheat crops. It is used for crafting as well as to feed certain animals.","category":"","family":"wheat","primary":"#098010","hue_group":"green"},{"id":"minecraft:white_banner","name":"White Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"white_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:white_bed","name":"White Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"white_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:white_candle","name":"White Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"white_candle","primary":"#d2d9da","hue_group":"neutral"},{"id":"minecraft:white_candle_cake","name":"White Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"white_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:white_carpet","name":"White Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"white_carpet","primary":"#eaeced","hue_group":"neutral"},{"id":"minecraft:white_concrete","name":"White Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"white_concrete","primary":"#cfd5d6","hue_group":"neutral"},{"id":"minecraft:white_concrete_powder","name":"White Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"white_concrete_powder","primary":"#e2e3e4","hue_group":"neutral"},{"id":"minecraft:white_glazed_terracotta","name":"White Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"white_glazed_terracotta","primary":"#bcd4cb","hue_group":"cyan"},{"id":"minecraft:white_shulker_box","name":"White Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"white_shulker_box","primary":"#d8dddd","hue_group":"neutral"},{"id":"minecraft:white_stained_glass","name":"White Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"white_stained_glass","primary":"#ffffff","hue_group":"neutral"},{"id":"minecraft:white_stained_glass_pane","name":"White Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"white_stained_glass_pane","primary":"#f6f6f6","hue_group":"neutral"},{"id":"minecraft:white_terracotta","name":"White Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"white_terracotta","primary":"#d2b2a1","hue_group":"red"},{"id":"minecraft:white_tulip","name":"White Tulip","description":"Tulips are a kind of flower found in plains and flower forests that come in multiple colored variants: red, orange, white, and pink. They yield dyes of their respective colors, with the exception of white tulips, which yield light gray dye, and all of them are used to craft suspicious stew.","category":"natural","family":"white_tulip","primary":"#5ea547","hue_group":"green"},{"id":"minecraft:white_wall_banner","name":"White Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"white_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:white_wool","name":"White Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"white_wool","primary":"#eaeced","hue_group":"neutral"},{"id":"minecraft:wildflowers","name":"Wildflowers","description":"Wildflowers are a thin decorative flower that can be placed four times in the space of one block, similar to pink petals and leaf litter.","category":"natural","family":"wildflowers","primary":"#edd675","hue_group":"yellow"},{"id":"minecraft:wither_rose","name":"Wither Rose","description":"A wither rose is a damaging flower that drops when a mob is killed by a wither.","category":"","family":"wither_rose","primary":"#292d17","hue_group":"yellow"},{"id":"minecraft:wither_skeleton_skull","name":"Wither Skeleton Skull","description":"A wither skeleton skull is the head of a wither skeleton in the form of a block, which is a rare drop from killed wither skeletons. Three of them can be used to summon a wither, a destructive boss mob that is the only source of Nether stars.","category":"decorative","family":"wither_skeleton_skull","primary":"#513e33","hue_group":"red"},{"id":"minecraft:wither_skeleton_wall_skull","name":"Wither Skeleton Wall Skull","description":"A wither skeleton skull is the head of a wither skeleton in the form of a block, which is a rare drop from killed wither skeletons. Three of them can be used to summon a wither, a destructive boss mob that is the only source of Nether stars.","category":"decorative","family":"wither_skeleton_wall_skull","primary":"#513e33","hue_group":"red"},{"id":"minecraft:yellow_banner","name":"Yellow Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"yellow_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:yellow_bed","name":"Yellow Bed","description":"A bed is a dyeable utility block that allows a player in the Overworld to sleep through the night and reset their spawn point to within a few blocks of the bed, as long as it is not broken or obstructed.","category":"decorative","family":"yellow_bed","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:yellow_candle","name":"Yellow Candle","description":"A candle is a dyable block that emits light when lit with a flint and steel. Up to four of the same color of candle can be placed in one block space, which affects the amount of light produced. Dyed candles are the dyed variants of candles that come in all sixteen colors, that once dyed, cannot be changed into a different color.","category":"decorative","family":"yellow_candle","primary":"#d1a532","hue_group":"yellow"},{"id":"minecraft:yellow_candle_cake","name":"Yellow Candle Cake","description":"A cake is both food and a block. It can be eaten by placing and using it, with each use consuming one of its seven slices. A cake with candle is an uneaten cake with any type of candle placed on it, which can be lit with a flint and steel to emit light.","category":"decorative","family":"yellow_candle_cake","primary":"#f8dfd6","hue_group":"red"},{"id":"minecraft:yellow_carpet","name":"Yellow Carpet","description":"Carpets are thin variants of wool that can be dyed in any of the 16 colors.","category":"decorative","family":"yellow_carpet","primary":"#f9c628","hue_group":"yellow"},{"id":"minecraft:yellow_concrete","name":"Yellow Concrete","description":"Concrete is a block created when concrete powder touches water. It comes in the sixteen dye colors.","category":"building","family":"yellow_concrete","primary":"#f1af15","hue_group":"yellow"},{"id":"minecraft:yellow_concrete_powder","name":"Yellow Concrete Powder","description":"Concrete powder is a gravity-affected block that is converted to concrete when touching water. It comes in the sixteen dye colors.","category":"building","family":"yellow_concrete_powder","primary":"#e9c737","hue_group":"yellow"},{"id":"minecraft:yellow_glazed_terracotta","name":"Yellow Glazed Terracotta","description":"Glazed terracotta is a vibrant solid block that comes in the sixteen regular dye colors, obtained by smelting stained terracotta. Glazed terracotta does not stick to slime blocks or honey blocks, and it cannot be pulled by sticky pistons, but it can be pushed by pistons.","category":"building","family":"yellow_glazed_terracotta","primary":"#eac059","hue_group":"yellow"},{"id":"minecraft:yellow_shulker_box","name":"Yellow Shulker Box","description":"A shulker box is a dyeable block that stores items, and, unlike all other storage blocks, keeps its contents in item form when broken.","category":"","family":"yellow_shulker_box","primary":"#f8bd1d","hue_group":"yellow"},{"id":"minecraft:yellow_stained_glass","name":"Yellow Stained Glass","description":"Stained glass is a dyed variant of the glass block.","category":"building","family":"yellow_stained_glass","primary":"#e5e533","hue_group":"yellow"},{"id":"minecraft:yellow_stained_glass_pane","name":"Yellow Stained Glass Pane","description":"A stained glass pane is a dyed version of a glass pane. It is a transparent block that can be used as a more efficient alternative to stained glass blocks.","category":"building","family":"yellow_stained_glass_pane","primary":"#dddd31","hue_group":"yellow"},{"id":"minecraft:yellow_terracotta","name":"Yellow Terracotta","description":"Stained terracotta is a dyed variant of terracotta obtained by crafting undyed terracotta with dyes. Some of the variants are found in badlands biomes, and all variants can be smelted into glazed terracotta.","category":"building","family":"yellow_terracotta","primary":"#ba8523","hue_group":"yellow"},{"id":"minecraft:yellow_wall_banner","name":"Yellow Wall Banner","description":"A banner is a block that can be crafted in 16 different colors, customized in a loom using dyes and banner patterns, and applied to a shield. In Java Edition, banners can also be used to add markers to maps.","category":"decorative","family":"yellow_wall_banner","primary":"#a2834f","hue_group":"yellow"},{"id":"minecraft:yellow_wool","name":"Yellow Wool","description":"Wool is a block obtained from sheep that can be dyed in any of the sixteen different colors. It can be used as a crafting material and to block vibrations.","category":"decorative","family":"yellow_wool","primary":"#f9c628","hue_group":"yellow"},{"id":"minecraft:zombie_head","name":"Zombie Head","description":"A zombie head is the head of a zombie in the form of a block. It can only be obtained by killing a zombie using a charged creeper's explosion.","category":"decorative","family":"zombie_head","primary":"#513e33","hue_group":"red"},{"id":"minecraft:zombie_wall_head","name":"Zombie Wall Head","description":"A zombie head is the head of a zombie in the form of a block. It can only be obtained by killing a zombie using a charged creeper's explosion.","category":"decorative","family":"zombie_wall_head","primary":"#513e33","hue_group":"red"}]} \ No newline at end of file diff --git a/Gameplay/computer/src/main/resources/assets/computer/icon.png b/Gameplay/computer/src/main/resources/assets/computer/icon.png new file mode 100644 index 0000000..595676b Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/icon.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/items/computer.json b/Gameplay/computer/src/main/resources/assets/computer/items/computer.json new file mode 100644 index 0000000..984eee6 --- /dev/null +++ b/Gameplay/computer/src/main/resources/assets/computer/items/computer.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "computer:block/computer" + } +} diff --git a/Gameplay/computer/src/main/resources/assets/computer/lang/en_us.json b/Gameplay/computer/src/main/resources/assets/computer/lang/en_us.json new file mode 100644 index 0000000..7f838b6 --- /dev/null +++ b/Gameplay/computer/src/main/resources/assets/computer/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "block.computer.computer": "Computer", + "itemGroup.computer": "Computer" +} diff --git a/Gameplay/computer/src/main/resources/assets/computer/lang/fr_fr.json b/Gameplay/computer/src/main/resources/assets/computer/lang/fr_fr.json new file mode 100644 index 0000000..7f838b6 --- /dev/null +++ b/Gameplay/computer/src/main/resources/assets/computer/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "block.computer.computer": "Computer", + "itemGroup.computer": "Computer" +} diff --git a/Gameplay/computer/src/main/resources/assets/computer/models/block/computer.json b/Gameplay/computer/src/main/resources/assets/computer/models/block/computer.json new file mode 100644 index 0000000..e758f37 --- /dev/null +++ b/Gameplay/computer/src/main/resources/assets/computer/models/block/computer.json @@ -0,0 +1,12 @@ +{ + "parent": "minecraft:block/cube", + "textures": { + "down": "computer:block/computer_bottom", + "east": "computer:block/computer_left", + "north": "computer:block/computer_front", + "particle": "computer:block/computer_front", + "south": "computer:block/computer_back", + "up": "computer:block/computer_top", + "west": "computer:block/computer_right" + } +} diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_back.png b/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_back.png new file mode 100644 index 0000000..b552039 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_back.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_bottom.png b/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_bottom.png new file mode 100644 index 0000000..5c21152 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_bottom.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_front.png b/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_front.png new file mode 100644 index 0000000..e6ecc4b Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_front.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_left.png b/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_left.png new file mode 100644 index 0000000..8d313cd Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_left.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_right.png b/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_right.png new file mode 100644 index 0000000..5dfcb4d Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_right.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_top.png b/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_top.png new file mode 100644 index 0000000..742c9d0 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/block/computer_top.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/bloc_notes.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/bloc_notes.png new file mode 100644 index 0000000..980fc18 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/bloc_notes.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/minedos.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/minedos.png new file mode 100644 index 0000000..f04fe5d Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/minedos.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/minexplorer.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/minexplorer.png new file mode 100644 index 0000000..7ec9427 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/minexplorer.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/poularoid.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/poularoid.png new file mode 100644 index 0000000..5c2054f Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/poularoid.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/settings.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/settings.png new file mode 100644 index 0000000..a34ad02 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/settings.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/statacraft.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/statacraft.png new file mode 100644 index 0000000..2a81514 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/apps/statacraft.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_blocotech.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_blocotech.png new file mode 100644 index 0000000..e9eda5d Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_blocotech.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_computer.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_computer.png new file mode 100644 index 0000000..6c8c6a2 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_computer.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_minexplorer.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_minexplorer.png new file mode 100644 index 0000000..43798e5 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_minexplorer.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_notes.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_notes.png new file mode 100644 index 0000000..745a1d1 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_notes.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_poularoid.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_poularoid.png new file mode 100644 index 0000000..dda7baa Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_poularoid.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_statacraft.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_statacraft.png new file mode 100644 index 0000000..c46c536 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_statacraft.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_terminal.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_terminal.png new file mode 100644 index 0000000..bd44283 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_terminal.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_voxelier.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_voxelier.png new file mode 100644 index 0000000..2ca91b7 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/icon_voxelier.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/popup.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/popup.png new file mode 100644 index 0000000..e30fd76 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/popup.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/taskbar.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/taskbar.png new file mode 100644 index 0000000..b824b4a Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/taskbar.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_close.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_close.png new file mode 100644 index 0000000..2a57018 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_close.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_close_vertical.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_close_vertical.png new file mode 100644 index 0000000..94ed2b7 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_close_vertical.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_maximize.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_maximize.png new file mode 100644 index 0000000..9854584 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_maximize.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_maximize_vertical.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_maximize_vertical.png new file mode 100644 index 0000000..463bfed Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_maximize_vertical.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_minimize.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_minimize.png new file mode 100644 index 0000000..b9628ae Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_minimize.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_minimize_vertical.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_minimize_vertical.png new file mode 100644 index 0000000..ddecf1c Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/os/window_minimize_vertical.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/wallpapers/donf1.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/wallpapers/donf1.png new file mode 100644 index 0000000..fe96acc Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/wallpapers/donf1.png differ diff --git a/Gameplay/computer/src/main/resources/assets/computer/textures/gui/wallpapers/layer.png b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/wallpapers/layer.png new file mode 100644 index 0000000..43ac1f8 Binary files /dev/null and b/Gameplay/computer/src/main/resources/assets/computer/textures/gui/wallpapers/layer.png differ diff --git a/Gameplay/computer/src/main/resources/data/computer/advancement/recipes/redstone/computer.json b/Gameplay/computer/src/main/resources/data/computer/advancement/recipes/redstone/computer.json new file mode 100644 index 0000000..d6f2b4c --- /dev/null +++ b/Gameplay/computer/src/main/resources/data/computer/advancement/recipes/redstone/computer.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_redstone": { + "conditions": { + "items": [ + { + "items": "minecraft:redstone" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "computer:computer" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_redstone" + ] + ], + "rewards": { + "recipes": [ + "computer:computer" + ] + } +} diff --git a/Gameplay/computer/src/main/resources/data/computer/loot_table/blocks/computer.json b/Gameplay/computer/src/main/resources/data/computer/loot_table/blocks/computer.json new file mode 100644 index 0000000..10e5988 --- /dev/null +++ b/Gameplay/computer/src/main/resources/data/computer/loot_table/blocks/computer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "computer:computer" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "computer:blocks/computer" +} diff --git a/Gameplay/computer/src/main/resources/data/computer/recipe/computer.json b/Gameplay/computer/src/main/resources/data/computer/recipe/computer.json new file mode 100644 index 0000000..11ca1b0 --- /dev/null +++ b/Gameplay/computer/src/main/resources/data/computer/recipe/computer.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "redstone", + "key": { + "#": "minecraft:iron_ingot", + "G": "minecraft:glass_pane", + "R": "minecraft:redstone" + }, + "pattern": [ + "###", + "#G#", + "#R#" + ], + "result": { + "id": "computer:computer" + } +} diff --git a/Gameplay/computer/src/main/resources/fabric.mod.json b/Gameplay/computer/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..2d204d3 --- /dev/null +++ b/Gameplay/computer/src/main/resources/fabric.mod.json @@ -0,0 +1,27 @@ +{ + "schemaVersion": 1, + "id": "computer", + "version": "${version}", + "name": "Computer", + "description": "A Sanctuary desktop computer block with a simulated OS, launchable programs, movable windows, wallpapers, and map tools.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "icon": "assets/computer/icon.png", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.computer.ComputerMod" + ], + "client": [ + "fr.koka99cab.computer.client.ComputerClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Gameplay/harder/.gitignore b/Gameplay/harder/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Gameplay/harder/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Gameplay/harder/build.gradle b/Gameplay/harder/build.gradle new file mode 100644 index 0000000..c6f6bf3 --- /dev/null +++ b/Gameplay/harder/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "harder" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Gameplay/harder/gradle.properties b/Gameplay/harder/gradle.properties new file mode 100644 index 0000000..3a3e596 --- /dev/null +++ b/Gameplay/harder/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=harder + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Gameplay/harder/gradle/wrapper/gradle-wrapper.jar b/Gameplay/harder/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Gameplay/harder/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Gameplay/harder/gradle/wrapper/gradle-wrapper.properties b/Gameplay/harder/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Gameplay/harder/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Gameplay/harder/gradlew b/Gameplay/harder/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Gameplay/harder/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Gameplay/harder/gradlew.bat b/Gameplay/harder/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Gameplay/harder/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Gameplay/harder/settings.gradle b/Gameplay/harder/settings.gradle new file mode 100644 index 0000000..829541b --- /dev/null +++ b/Gameplay/harder/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "harder" diff --git a/Gameplay/harder/src/client/java/fr/koka99cab/harder/client/HarderClient.java b/Gameplay/harder/src/client/java/fr/koka99cab/harder/client/HarderClient.java new file mode 100644 index 0000000..ecbc355 --- /dev/null +++ b/Gameplay/harder/src/client/java/fr/koka99cab/harder/client/HarderClient.java @@ -0,0 +1,11 @@ +package fr.koka99cab.harder.client; + +import net.fabricmc.api.ClientModInitializer; +import fr.koka99cab.harder.HarderMod; + +public class HarderClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + HarderMod.LOGGER.info("Harder client initialise."); + } +} diff --git a/Gameplay/harder/src/main/java/fr/koka99cab/harder/HarderMod.java b/Gameplay/harder/src/main/java/fr/koka99cab/harder/HarderMod.java new file mode 100644 index 0000000..dad30cc --- /dev/null +++ b/Gameplay/harder/src/main/java/fr/koka99cab/harder/HarderMod.java @@ -0,0 +1,121 @@ +package fr.koka99cab.harder; + +import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.entity.event.v1.ServerPlayerEvents; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents; +import net.minecraft.resources.Identifier; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.Difficulty; +import net.minecraft.world.entity.ai.attributes.AttributeInstance; +import net.minecraft.world.entity.ai.attributes.AttributeModifier; +import net.minecraft.world.entity.ai.attributes.Attributes; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class HarderMod implements ModInitializer { + public static final String MOD_ID = "harder"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + private static final Identifier HEALTH_LIMIT_MODIFIER_ID = Identifier.fromNamespaceAndPath(MOD_ID, "level_health_limit"); + private static final int STARTING_HEARTS = 3; + private static final int VANILLA_HEARTS = 10; + private static final int VANILLA_HEALTH_LEVEL = 10; + private static final int STARVATION_DAMAGE_INTERVAL = 80; + private static final float EASY_STARVATION_FLOOR = 10.0F; + private static final float NORMAL_STARVATION_FLOOR = 1.0F; + + @Override + public void onInitialize() { + ServerPlayerEvents.JOIN.register(HarderMod::applyPlayerRules); + ServerPlayerEvents.AFTER_RESPAWN.register((oldPlayer, newPlayer, alive) -> applyPlayerRules(newPlayer)); + ServerTickEvents.END_SERVER_TICK.register(server -> server.getPlayerList().getPlayers().forEach(HarderMod::tickPlayer)); + + LOGGER.info("Harder loaded: players start at 3 hearts and regain vanilla health by level 10."); + } + + private static void tickPlayer(ServerPlayer player) { + applyPlayerRules(player); + applyLethalStarvation(player); + } + + private static void applyPlayerRules(ServerPlayer player) { + applyLevelHeartLimit(player); + } + + private static void applyLevelHeartLimit(ServerPlayer player) { + AttributeInstance maxHealth = player.getAttribute(Attributes.MAX_HEALTH); + + if (maxHealth == null) { + return; + } + + double oldMaxHealth = player.getMaxHealth(); + double targetMaxHealth = getTargetHeartCount(player.experienceLevel) * 2.0D; + AttributeModifier currentModifier = maxHealth.getModifier(HEALTH_LIMIT_MODIFIER_ID); + double unlockedMaxHealth = maxHealth.getValue(); + + if (currentModifier != null) { + unlockedMaxHealth -= currentModifier.amount(); + } + + if (targetMaxHealth >= unlockedMaxHealth) { + if (currentModifier != null) { + maxHealth.removeModifier(HEALTH_LIMIT_MODIFIER_ID); + } + } else { + double modifierAmount = targetMaxHealth - unlockedMaxHealth; + + if (currentModifier == null || Math.abs(currentModifier.amount() - modifierAmount) > 0.001D) { + maxHealth.addOrUpdateTransientModifier(new AttributeModifier( + HEALTH_LIMIT_MODIFIER_ID, + modifierAmount, + AttributeModifier.Operation.ADD_VALUE + )); + } + } + + if (!player.isAlive()) { + return; + } + + float newMaxHealth = player.getMaxHealth(); + float currentHealth = player.getHealth(); + + if (currentHealth > newMaxHealth) { + player.setHealth(newMaxHealth); + } else if (newMaxHealth > oldMaxHealth) { + player.setHealth(Math.min(newMaxHealth, currentHealth + (float) (newMaxHealth - oldMaxHealth))); + } + } + + private static int getTargetHeartCount(int experienceLevel) { + int boundedLevel = Math.max(0, Math.min(experienceLevel, VANILLA_HEALTH_LEVEL)); + int bonusHearts = boundedLevel * (VANILLA_HEARTS - STARTING_HEARTS) / VANILLA_HEALTH_LEVEL; + + return STARTING_HEARTS + bonusHearts; + } + + private static void applyLethalStarvation(ServerPlayer player) { + if (!player.isAlive() || player.isCreative() || player.isSpectator()) { + return; + } + + if (player.getFoodData().getFoodLevel() > 0 || player.tickCount % STARVATION_DAMAGE_INTERVAL != 0) { + return; + } + + Difficulty difficulty = player.level().getDifficulty(); + + if (difficulty == Difficulty.PEACEFUL || difficulty == Difficulty.HARD) { + return; + } + + float health = player.getHealth(); + boolean easyWouldStopAtFiveHearts = difficulty == Difficulty.EASY && health <= EASY_STARVATION_FLOOR; + boolean normalWouldStopBeforeDeath = difficulty == Difficulty.NORMAL && health <= NORMAL_STARVATION_FLOOR; + + if (easyWouldStopAtFiveHearts || normalWouldStopBeforeDeath) { + player.hurtServer(player.level(), player.damageSources().starve(), 1.0F); + } + } +} diff --git a/Gameplay/harder/src/main/resources/assets/harder/icon.png b/Gameplay/harder/src/main/resources/assets/harder/icon.png new file mode 100644 index 0000000..de0f14c Binary files /dev/null and b/Gameplay/harder/src/main/resources/assets/harder/icon.png differ diff --git a/Gameplay/harder/src/main/resources/assets/harder/lang/en_us.json b/Gameplay/harder/src/main/resources/assets/harder/lang/en_us.json new file mode 100644 index 0000000..17a7ff5 --- /dev/null +++ b/Gameplay/harder/src/main/resources/assets/harder/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.harder": "Harder", + "modmenu.descriptionTranslation.harder": "Start with 3 hearts, regain normal health by level 10, and survive lethal starvation below 5 hearts." +} diff --git a/Gameplay/harder/src/main/resources/assets/harder/lang/fr_fr.json b/Gameplay/harder/src/main/resources/assets/harder/lang/fr_fr.json new file mode 100644 index 0000000..564a455 --- /dev/null +++ b/Gameplay/harder/src/main/resources/assets/harder/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.harder": "Harder", + "modmenu.descriptionTranslation.harder": "Commencez avec 3 coeurs, retrouvez la vie normale au niveau 10, et survivez a une faim mortelle sous 5 coeurs." +} diff --git a/Gameplay/harder/src/main/resources/fabric.mod.json b/Gameplay/harder/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..6eb1e6b --- /dev/null +++ b/Gameplay/harder/src/main/resources/fabric.mod.json @@ -0,0 +1,27 @@ +{ + "schemaVersion": 1, + "id": "harder", + "version": "${version}", + "name": "Harder", + "description": "Start with 3 hearts, regain normal health by level 10, and survive lethal starvation below 5 hearts.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "icon": "assets/harder/icon.png", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.harder.HarderMod" + ], + "client": [ + "fr.koka99cab.harder.client.HarderClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Gameplay/minecrafter/.gitignore b/Gameplay/minecrafter/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Gameplay/minecrafter/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Gameplay/minecrafter/build.gradle b/Gameplay/minecrafter/build.gradle new file mode 100644 index 0000000..9e7330a --- /dev/null +++ b/Gameplay/minecrafter/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "minecrafter" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Gameplay/minecrafter/gradle.properties b/Gameplay/minecrafter/gradle.properties new file mode 100644 index 0000000..a08efe6 --- /dev/null +++ b/Gameplay/minecrafter/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=minecrafter + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Gameplay/minecrafter/gradle/wrapper/gradle-wrapper.jar b/Gameplay/minecrafter/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Gameplay/minecrafter/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Gameplay/minecrafter/gradle/wrapper/gradle-wrapper.properties b/Gameplay/minecrafter/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Gameplay/minecrafter/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Gameplay/minecrafter/gradlew b/Gameplay/minecrafter/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Gameplay/minecrafter/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Gameplay/minecrafter/gradlew.bat b/Gameplay/minecrafter/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Gameplay/minecrafter/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Gameplay/minecrafter/minecrafter.png b/Gameplay/minecrafter/minecrafter.png new file mode 100644 index 0000000..3597ac5 Binary files /dev/null and b/Gameplay/minecrafter/minecrafter.png differ diff --git a/Gameplay/minecrafter/settings.gradle b/Gameplay/minecrafter/settings.gradle new file mode 100644 index 0000000..900f584 --- /dev/null +++ b/Gameplay/minecrafter/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "minecrafter" diff --git a/Gameplay/minecrafter/src/client/java/com/koka/heartoverlay/HeartOverlayClient.java b/Gameplay/minecrafter/src/client/java/com/koka/heartoverlay/HeartOverlayClient.java new file mode 100755 index 0000000..d4d8a1a --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/com/koka/heartoverlay/HeartOverlayClient.java @@ -0,0 +1,10 @@ +package com.koka.heartoverlay; + +import net.fabricmc.api.ClientModInitializer; + +public final class HeartOverlayClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + HeartOverlayRenderer.register(); + } +} diff --git a/Gameplay/minecrafter/src/client/java/com/koka/heartoverlay/HeartOverlayRenderer.java b/Gameplay/minecrafter/src/client/java/com/koka/heartoverlay/HeartOverlayRenderer.java new file mode 100755 index 0000000..425ced8 --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/com/koka/heartoverlay/HeartOverlayRenderer.java @@ -0,0 +1,172 @@ +package com.koka.heartoverlay; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import net.fabricmc.fabric.api.client.rendering.v1.level.LevelRenderContext; +import net.fabricmc.fabric.api.client.rendering.v1.level.LevelRenderEvents; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.rendertype.RenderTypes; +import net.minecraft.client.renderer.rendertype.RenderType; +import net.minecraft.client.renderer.texture.OverlayTexture; +import net.minecraft.resources.Identifier; +import net.minecraft.util.LightCoordsUtil; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.phys.EntityHitResult; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; + +public final class HeartOverlayRenderer { + private static final Identifier HEART_CONTAINER_TEXTURE = Identifier.fromNamespaceAndPath("minecraft", "textures/gui/sprites/hud/heart/container.png"); + private static final Identifier HEART_HALF_TEXTURE = Identifier.fromNamespaceAndPath("minecraft", "textures/gui/sprites/hud/heart/half.png"); + private static final Identifier HEART_FULL_TEXTURE = Identifier.fromNamespaceAndPath("minecraft", "textures/gui/sprites/hud/heart/full.png"); + private static final RenderType HEART_CONTAINER_RENDER_TYPE = RenderTypes.entityTranslucentEmissive(HEART_CONTAINER_TEXTURE); + private static final RenderType HEART_HALF_RENDER_TYPE = RenderTypes.entityTranslucentEmissive(HEART_HALF_TEXTURE); + private static final RenderType HEART_FULL_RENDER_TYPE = RenderTypes.entityTranslucentEmissive(HEART_FULL_TEXTURE); + private static final int HEARTS_PER_ROW = 10; + private static final int ICON_WIDTH = 9; + private static final int ICON_HEIGHT = 9; + private static final int HEART_STEP_X = 8; + private static final int BASE_LINE_HEIGHT = 10; + private static final int MIN_LINE_HEIGHT = 3; + private static final float FILL_Z_OFFSET = -0.01F; + private static final float LABEL_SCALE = 0.02F; + private static final float Y_OFFSET = 0.45F; + + private HeartOverlayRenderer() { + } + + public static void register() { + LevelRenderEvents.AFTER_TRANSLUCENT_TERRAIN.register(HeartOverlayRenderer::render); + } + + private static void render(LevelRenderContext context) { + Minecraft client = Minecraft.getInstance(); + if (client.options.hideGui || client.level == null || client.player == null || client.hitResult == null || !client.player.isCrouching()) { + return; + } + + LivingEntity target = getTargetedMob(client.hitResult); + if (target == null || target.isDeadOrDying()) { + return; + } + + PoseStack matrices = context.poseStack(); + if (matrices == null) { + return; + } + + Camera camera = client.gameRenderer.getMainCamera(); + float tickDelta = client.getDeltaTracker().getGameTimeDeltaPartialTick(false); + Vec3 entityPos = target.getPosition(tickDelta); + Vec3 cameraPos = camera.position(); + + matrices.pushPose(); + matrices.translate(entityPos.x - cameraPos.x, entityPos.y - cameraPos.y + target.getBbHeight() + Y_OFFSET, entityPos.z - cameraPos.z); + matrices.mulPose(camera.rotation()); + matrices.scale(-LABEL_SCALE, -LABEL_SCALE, LABEL_SCALE); + + renderHearts(matrices, context.bufferSource(), target); + + matrices.popPose(); + } + + private static LivingEntity getTargetedMob(HitResult hitResult) { + if (!(hitResult instanceof EntityHitResult entityHitResult)) { + return null; + } + + if (!(entityHitResult.getEntity() instanceof LivingEntity livingEntity)) { + return null; + } + + if (livingEntity instanceof Player) { + return null; + } + + return livingEntity; + } + + private static void renderHearts(PoseStack matrices, MultiBufferSource consumers, LivingEntity entity) { + float maxHealth = Math.max(entity.getMaxHealth(), 1.0F); + float currentHealth = Mth.clamp(entity.getHealth(), 0.0F, maxHealth); + int totalSlots = Math.max(1, Mth.ceil(maxHealth / 2.0F)); + int rows = Mth.ceil(totalSlots / (float) HEARTS_PER_ROW); + int lineHeight = Math.max(BASE_LINE_HEIGHT - (rows - 2), MIN_LINE_HEIGHT); + PoseStack.Pose pose = matrices.last(); + + for (int index = totalSlots - 1; index >= 0; index--) { + float left = heartLeft(index, totalSlots); + float top = heartTop(index, lineHeight); + drawHeart(consumers.getBuffer(HEART_CONTAINER_RENDER_TYPE), pose, left, top, 0.0F); + } + + for (int index = totalSlots - 1; index >= 0; index--) { + HeartState state = stateForSlot(index, currentHealth); + if (state != HeartState.EMPTY) { + float left = heartLeft(index, totalSlots); + float top = heartTop(index, lineHeight); + drawHeart(consumers.getBuffer(renderTypeFor(state)), pose, left, top, FILL_Z_OFFSET, state == HeartState.HALF); + } + } + } + + private static float heartLeft(int index, int totalSlots) { + int row = index / HEARTS_PER_ROW; + int column = index % HEARTS_PER_ROW; + int heartsInRow = Math.min(HEARTS_PER_ROW, totalSlots - row * HEARTS_PER_ROW); + int mirroredColumn = heartsInRow - 1 - column; + float rowWidth = ICON_WIDTH + (heartsInRow - 1) * HEART_STEP_X; + return -rowWidth / 2.0F + mirroredColumn * HEART_STEP_X; + } + + private static float heartTop(int index, int lineHeight) { + int row = index / HEARTS_PER_ROW; + return -row * lineHeight; + } + + private static HeartState stateForSlot(int slotIndex, float currentHealth) { + float slotStart = slotIndex * 2.0F; + float remaining = currentHealth - slotStart; + if (remaining >= 2.0F) { + return HeartState.FULL; + } + if (remaining >= 1.0F) { + return HeartState.HALF; + } + return HeartState.EMPTY; + } + + private static RenderType renderTypeFor(HeartState state) { + return switch (state) { + case FULL -> HEART_FULL_RENDER_TYPE; + case HALF -> HEART_HALF_RENDER_TYPE; + case EMPTY -> HEART_CONTAINER_RENDER_TYPE; + }; + } + + private static void drawHeart(VertexConsumer consumer, PoseStack.Pose pose, float left, float top, float z) { + drawHeart(consumer, pose, left, top, z, false); + } + + private static void drawHeart(VertexConsumer consumer, PoseStack.Pose pose, float left, float top, float z, boolean flipU) { + float right = left + ICON_WIDTH; + float bottom = top + ICON_HEIGHT; + float minU = flipU ? 1.0F : 0.0F; + float maxU = flipU ? 0.0F : 1.0F; + + consumer.addVertex(pose, left, bottom, z).setColor(255, 255, 255, 255).setUv(minU, 1.0F).setOverlay(OverlayTexture.NO_OVERLAY).setLight(LightCoordsUtil.FULL_BRIGHT).setNormal(pose, 0.0F, 0.0F, -1.0F); + consumer.addVertex(pose, right, bottom, z).setColor(255, 255, 255, 255).setUv(maxU, 1.0F).setOverlay(OverlayTexture.NO_OVERLAY).setLight(LightCoordsUtil.FULL_BRIGHT).setNormal(pose, 0.0F, 0.0F, -1.0F); + consumer.addVertex(pose, right, top, z).setColor(255, 255, 255, 255).setUv(maxU, 0.0F).setOverlay(OverlayTexture.NO_OVERLAY).setLight(LightCoordsUtil.FULL_BRIGHT).setNormal(pose, 0.0F, 0.0F, -1.0F); + consumer.addVertex(pose, left, top, z).setColor(255, 255, 255, 255).setUv(minU, 0.0F).setOverlay(OverlayTexture.NO_OVERLAY).setLight(LightCoordsUtil.FULL_BRIGHT).setNormal(pose, 0.0F, 0.0F, -1.0F); + } + + private enum HeartState { + FULL, + HALF, + EMPTY + } +} diff --git a/Gameplay/minecrafter/src/client/java/dev/koka/previewer/PreviewerClient.java b/Gameplay/minecrafter/src/client/java/dev/koka/previewer/PreviewerClient.java new file mode 100644 index 0000000..8897dfd --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/dev/koka/previewer/PreviewerClient.java @@ -0,0 +1,160 @@ +package dev.koka.previewer; + +import java.util.ArrayList; +import java.util.List; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.QuadInstance; +import com.mojang.blaze3d.vertex.VertexConsumer; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.rendering.v1.level.LevelRenderContext; +import net.fabricmc.fabric.api.client.rendering.v1.level.LevelRenderEvents; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.block.dispatch.BlockStateModel; +import net.minecraft.client.renderer.block.dispatch.BlockStateModelPart; +import net.minecraft.client.renderer.rendertype.RenderTypes; +import net.minecraft.client.renderer.texture.OverlayTexture; +import net.minecraft.client.resources.model.geometry.BakedQuad; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.util.LightCoordsUtil; +import net.minecraft.util.RandomSource; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.context.BlockPlaceContext; +import net.minecraft.world.level.block.RenderShape; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; + +public final class PreviewerClient implements ClientModInitializer { + private static final int GHOST_ALPHA_MIN = 128; + private static final int GHOST_ALPHA_MAX = 192; + private static final long GHOST_PULSE_PERIOD_MS = 1600L; + + @Override + public void onInitializeClient() { + LevelRenderEvents.COLLECT_SUBMITS.register(PreviewerClient::renderPreview); + } + + private static void renderPreview(LevelRenderContext context) { + Minecraft client = Minecraft.getInstance(); + + if (client.player == null || client.level == null || client.player.isSpectator()) { + return; + } + + if (!client.player.isCrouching() || !(client.hitResult instanceof BlockHitResult hitResult) || hitResult.getType() != HitResult.Type.BLOCK) { + return; + } + + PlacementPreview preview = findPreview(client, hitResult); + + if (preview == null) { + return; + } + + submitBlockModel(client, context, preview); + } + + private static PlacementPreview findPreview(Minecraft client, BlockHitResult hitResult) { + PlacementPreview mainHandPreview = findPreview(client, hitResult, InteractionHand.MAIN_HAND); + + if (mainHandPreview != null) { + return mainHandPreview; + } + + return findPreview(client, hitResult, InteractionHand.OFF_HAND); + } + + private static PlacementPreview findPreview(Minecraft client, BlockHitResult hitResult, InteractionHand hand) { + ItemStack stack = client.player.getItemInHand(hand); + + if (!(stack.getItem() instanceof BlockItem blockItem)) { + return null; + } + + BlockPlaceContext initialContext = new BlockPlaceContext(client.player, hand, stack, hitResult); + BlockPlaceContext placementContext = blockItem.updatePlacementContext(initialContext); + + if (placementContext == null || !placementContext.canPlace()) { + return null; + } + + BlockPos pos = placementContext.getClickedPos().immutable(); + BlockState state = blockItem.getBlock().getStateForPlacement(placementContext); + + if (state == null || state.isAir() || !state.canSurvive(client.level, pos)) { + return null; + } + + return new PlacementPreview(pos, state); + } + + private static void submitBlockModel(Minecraft client, LevelRenderContext context, PlacementPreview preview) { + if (preview.state().getRenderShape() != RenderShape.MODEL || context.poseStack() == null) { + return; + } + + List parts = modelParts(client, preview); + if (parts.isEmpty()) { + return; + } + + Camera camera = client.gameRenderer.getMainCamera(); + Vec3 cameraPos = camera.position(); + BlockPos pos = preview.pos(); + PoseStack matrices = context.poseStack(); + + matrices.pushPose(); + matrices.translate(pos.getX() - cameraPos.x, pos.getY() - cameraPos.y, pos.getZ() - cameraPos.z); + context.submitNodeCollector().submitCustomGeometry( + matrices, + RenderTypes.translucentMovingBlock(), + (pose, consumer) -> renderModelParts(pose, consumer, parts, getPulsingAlpha()) + ); + matrices.popPose(); + } + + private static List modelParts(Minecraft client, PlacementPreview preview) { + BlockStateModel model = client.getModelManager().getBlockStateModelSet().get(preview.state()); + List parts = new ArrayList<>(); + model.collectParts(RandomSource.create(preview.state().getSeed(preview.pos())), parts); + + return parts; + } + + private static void renderModelParts(PoseStack.Pose pose, VertexConsumer consumer, List parts, int alpha) { + QuadInstance quad = new QuadInstance(); + quad.setColor((alpha << 24) | 0xFFFFFF); + quad.setLightCoords(LightCoordsUtil.FULL_BRIGHT); + quad.setOverlayCoords(OverlayTexture.NO_OVERLAY); + + for (BlockStateModelPart part : parts) { + renderQuads(pose, consumer, part.getQuads(null), quad); + + for (Direction direction : Direction.values()) { + renderQuads(pose, consumer, part.getQuads(direction), quad); + } + } + } + + private static void renderQuads(PoseStack.Pose pose, VertexConsumer consumer, List quads, QuadInstance quad) { + for (BakedQuad bakedQuad : quads) { + consumer.putBakedQuad(pose, bakedQuad, quad); + } + } + + private static int getPulsingAlpha() { + double phase = (System.currentTimeMillis() % GHOST_PULSE_PERIOD_MS) / (double) GHOST_PULSE_PERIOD_MS; + double wave = (Math.sin(phase * Math.PI * 2.0D - Math.PI / 2.0D) + 1.0D) * 0.5D; + + return GHOST_ALPHA_MIN + (int) Math.round(wave * (GHOST_ALPHA_MAX - GHOST_ALPHA_MIN)); + } + + private record PlacementPreview(BlockPos pos, BlockState state) { + } +} diff --git a/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/BuilderClientKeys.java b/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/BuilderClientKeys.java new file mode 100755 index 0000000..6ef6651 --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/BuilderClientKeys.java @@ -0,0 +1,13 @@ +package fr.koka.builder.client; + +import fr.koka.builder.BuilderMod; +import net.minecraft.client.KeyMapping; +import net.minecraft.resources.Identifier; + +public final class BuilderClientKeys { + public static final KeyMapping.Category BUILDER_CATEGORY = + KeyMapping.Category.register(Identifier.fromNamespaceAndPath(BuilderMod.MOD_ID, "builder")); + + private BuilderClientKeys() { + } +} diff --git a/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/BuilderClientMod.java b/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/BuilderClientMod.java new file mode 100755 index 0000000..9b12e3a --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/BuilderClientMod.java @@ -0,0 +1,313 @@ +package fr.koka.builder.client; + +import java.util.List; + +import com.mojang.blaze3d.platform.InputConstants; +import fr.koka.builder.BuildSelection; +import fr.koka.builder.BuilderConfig; +import fr.koka.builder.BuilderControlPayload; +import fr.koka.builder.BuilderMod; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; +import net.fabricmc.fabric.api.client.keymapping.v1.KeyMappingHelper; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.fabricmc.fabric.api.client.rendering.v1.hud.HudElementRegistry; +import net.fabricmc.fabric.api.event.player.UseBlockCallback; +import net.minecraft.client.KeyMapping; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.Font; +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.network.chat.Component; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; +import org.lwjgl.glfw.GLFW; + +public final class BuilderClientMod implements ClientModInitializer { + private static final int SWING_INTERVAL_TICKS = 4; + private static final Vec3 ZERO_OFFSET = new Vec3(0.0D, 0.0D, 0.0D); + private static KeyMapping buildModeKey; + private static BlockPos activeOrigin; + private static Direction activeFace; + private static Vec3 activeHitOffset = ZERO_OFFSET; + private static BuildTarget lockedTarget; + private static int currentBuildPower = BuilderConfig.DEFAULT_BUILD_POWER; + private static int activeBuildPower = BuilderConfig.DEFAULT_BUILD_POWER; + private static List previewSelection = List.of(); + private static int buildAnimationTicks; + + @Override + public void onInitializeClient() { + buildModeKey = KeyMappingHelper.registerKeyMapping(new KeyMapping( + "key.builder.build_mode", + InputConstants.Type.KEYSYM, + GLFW.GLFW_KEY_B, + BuilderClientKeys.BUILDER_CATEGORY + )); + + HudElementRegistry.addLast(BuilderMod.id("selection_count"), BuilderClientMod::renderSelectionCount); + ClientTickEvents.END_CLIENT_TICK.register(BuilderClientMod::onEndClientTick); + ClientPlayConnectionEvents.DISCONNECT.register((handler, client) -> resetClientState()); + UseBlockCallback.EVENT.register((player, world, hand, hitResult) -> + world.isClientSide() ? onClientUseBlock(Minecraft.getInstance(), hand, hitResult) : InteractionResult.PASS + ); + } + + private static void onEndClientTick(Minecraft client) { + if (client.level == null || client.player == null) { + resetClientState(); + return; + } + + BuildTarget liveTarget = resolveCurrentTarget(client); + updateLockedTarget(client, liveTarget); + BuildTarget target = activeTarget(liveTarget); + updatePreviewSelection(client, target); + BuilderPreviewRenderer.collect(client, previewSelection); + + if (activeOrigin != null && (target == null || previewSelection.isEmpty() || !shouldContinueBuilding(client, target))) { + stopBuilding(client); + return; + } + + if (target == null || previewSelection.isEmpty() || !client.options.keyUse.isDown()) { + return; + } + + boolean targetChanged = activeOrigin == null + || !target.origin().equals(activeOrigin) + || target.face() != activeFace + || currentBuildPower != activeBuildPower; + + if (targetChanged) { + sendBuildPacket(client, true, target); + activeOrigin = target.origin(); + activeFace = target.face(); + activeHitOffset = target.hitOffset(); + activeBuildPower = currentBuildPower; + buildAnimationTicks = 0; + client.player.swing(InteractionHand.MAIN_HAND); + return; + } + + buildAnimationTicks++; + if (buildAnimationTicks >= SWING_INTERVAL_TICKS) { + client.player.swing(InteractionHand.MAIN_HAND); + buildAnimationTicks = 0; + } + } + + private static void updatePreviewSelection(Minecraft client) { + updatePreviewSelection(client, activeTarget(resolveCurrentTarget(client))); + } + + private static void updatePreviewSelection(Minecraft client, BuildTarget target) { + previewSelection = selectionForTarget(client, target); + } + + private static void updateLockedTarget(Minecraft client, BuildTarget liveTarget) { + if (!isBuildModeActive(client) || !client.options.keyUse.isDown()) { + lockedTarget = null; + return; + } + + if (lockedTarget == null && liveTarget != null) { + lockedTarget = liveTarget; + } + } + + private static BuildTarget activeTarget(BuildTarget liveTarget) { + return lockedTarget != null ? lockedTarget : liveTarget; + } + + private static List selectionForTarget(Minecraft client, BuildTarget target) { + if (target == null) { + return List.of(); + } + + return BuildSelection.collectPreview(client.player, client.level, target.origin(), target.face(), target.hitOffset(), currentBuildPower); + } + + private static boolean shouldContinueBuilding(Minecraft client, BuildTarget target) { + return buildModeKey != null + && buildModeKey.isDown() + && client.screen == null + && client.options.keyUse.isDown() + && activeOrigin != null + && activeOrigin.equals(target.origin()) + && activeFace == target.face() + && BuildSelection.canUseBuilderItem(client.player); + } + + private static void stopBuilding(Minecraft client) { + if (activeOrigin == null || activeFace == null) { + return; + } + + if (client.getConnection() != null) { + ClientPlayNetworking.send(new BuilderControlPayload(false, activeOrigin, activeFace, activeHitOffset, currentBuildPower)); + } + + activeOrigin = null; + activeFace = null; + activeHitOffset = ZERO_OFFSET; + activeBuildPower = currentBuildPower; + buildAnimationTicks = 0; + } + + public static boolean onMouseScroll(double horizontalAmount, double verticalAmount) { + Minecraft client = Minecraft.getInstance(); + + if (client.player == null || client.screen != null || buildModeKey == null || !buildModeKey.isDown()) { + return false; + } + + int direction = scrollDirection(horizontalAmount, verticalAmount); + + if (direction == 0) { + return false; + } + + int nextPower = BuilderConfig.clampBuildPower(currentBuildPower + direction * BuilderConfig.BUILD_POWER_SCROLL_STEP); + + if (nextPower == currentBuildPower) { + showBuildPowerMessage(client); + return true; + } + + currentBuildPower = nextPower; + showBuildPowerMessage(client); + updatePreviewSelection(client); + return true; + } + + public static boolean shouldReplaceCrosshair() { + return buildModeKey != null && buildModeKey.isDown() && !previewSelection.isEmpty(); + } + + public static Component crosshairReplacementText() { + if (!shouldReplaceCrosshair()) { + return null; + } + + return Component.literal(Integer.toString(previewSelection.size())); + } + + public static boolean shouldCancelVanillaUse(Minecraft client) { + if (client.player == null || client.level == null) { + return false; + } + + if (!isBuildModeActive(client) || !BuildSelection.canUseBuilderItem(client.player)) { + return false; + } + + BuildTarget target = activeTarget(resolveCurrentTarget(client)); + return target != null && (lockedTarget != null || !selectionForTarget(client, target).isEmpty()); + } + + private static void sendBuildPacket(Minecraft client, boolean active, BuildTarget target) { + if (client.getConnection() != null) { + ClientPlayNetworking.send(new BuilderControlPayload(active, target.origin(), target.face(), target.hitOffset(), currentBuildPower)); + } + } + + private static int scrollDirection(double horizontalAmount, double verticalAmount) { + if (verticalAmount > 0.0D) { + return 1; + } + + if (verticalAmount < 0.0D) { + return -1; + } + + if (horizontalAmount > 0.0D) { + return 1; + } + + if (horizontalAmount < 0.0D) { + return -1; + } + + return 0; + } + + private static void showBuildPowerMessage(Minecraft client) { + client.player.sendOverlayMessage( + Component.translatable( + "message.builder.build_power", + currentBuildPower, + BuilderConfig.buildDiameter(currentBuildPower) + ) + ); + } + + private static void renderSelectionCount(GuiGraphicsExtractor graphics, net.minecraft.client.DeltaTracker deltaTracker) { + Component selectionText = crosshairReplacementText(); + + if (selectionText == null) { + return; + } + + Font font = Minecraft.getInstance().font; + int x = (graphics.guiWidth() - font.width(selectionText)) / 2; + int y = (graphics.guiHeight() - font.lineHeight) / 2; + graphics.text(font, selectionText, x, y, 0xFFFFFFFF, true); + } + + private static InteractionResult onClientUseBlock(Minecraft client, InteractionHand hand, BlockHitResult hitResult) { + if (client.player == null || client.level == null || hand != InteractionHand.MAIN_HAND) { + return InteractionResult.PASS; + } + + if (!isBuildModeActive(client) || !BuildSelection.canUseBuilderItem(client.player)) { + return InteractionResult.PASS; + } + + List selection = selectionForTarget(client, buildTarget(hitResult)); + return selection.isEmpty() ? InteractionResult.PASS : InteractionResult.FAIL; + } + + private static BuildTarget resolveCurrentTarget(Minecraft client) { + if (!isBuildModeActive(client) + || client.player == null + || client.level == null + || !(client.hitResult instanceof BlockHitResult blockHitResult) + || blockHitResult.getType() == HitResult.Type.MISS + || !BuildSelection.canUseBuilderItem(client.player)) { + return null; + } + + return buildTarget(blockHitResult); + } + + private static BuildTarget buildTarget(BlockHitResult blockHitResult) { + return new BuildTarget( + blockHitResult.getBlockPos().immutable(), + blockHitResult.getDirection(), + BuildSelection.localHitOffset(blockHitResult) + ); + } + + private static boolean isBuildModeActive(Minecraft client) { + return buildModeKey != null && buildModeKey.isDown() && client.screen == null; + } + + private static void resetClientState() { + activeOrigin = null; + activeFace = null; + activeHitOffset = ZERO_OFFSET; + lockedTarget = null; + activeBuildPower = currentBuildPower; + previewSelection = List.of(); + buildAnimationTicks = 0; + } + + private record BuildTarget(BlockPos origin, Direction face, Vec3 hitOffset) { + } +} diff --git a/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/BuilderPreviewRenderer.java b/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/BuilderPreviewRenderer.java new file mode 100755 index 0000000..bfdcc5b --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/BuilderPreviewRenderer.java @@ -0,0 +1,231 @@ +package fr.koka.builder.client; + +import java.util.ArrayList; +import java.util.EnumMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import net.minecraft.client.Minecraft; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.gizmos.Gizmos; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; + +public final class BuilderPreviewRenderer { + private static final int OUTLINE_COLOR = 0x4B000000; + private static final double FACE_THICKNESS = 0.025D; + private static final double OUTLINE_OFFSET = 0.002D; + private static final float OUTLINE_WIDTH = 1.08F; + + private BuilderPreviewRenderer() { + } + + public static void collect(Minecraft client, List selection) { + if (selection.isEmpty() || client.level == null) { + return; + } + + PreviewMesh previewMesh = buildPreviewMesh(selection); + + try (Gizmos.TemporaryCollection ignored = client.collectPerTickGizmos()) { + for (LineSegment segment : previewMesh.outlineSegments()) { + Gizmos.line(segment.start(), segment.end(), OUTLINE_COLOR, OUTLINE_WIDTH) + .setAlwaysOnTop(); + } + } + } + + private static PreviewMesh buildPreviewMesh(List selection) { + Set blocks = new HashSet<>(); + + for (BlockPos pos : selection) { + blocks.add(pos.immutable()); + } + + Map>> facesByDirection = new EnumMap<>(Direction.class); + + for (Direction direction : Direction.values()) { + facesByDirection.put(direction, new java.util.HashMap<>()); + } + + for (BlockPos pos : blocks) { + for (Direction direction : Direction.values()) { + if (blocks.contains(pos.relative(direction))) { + continue; + } + + int plane = planeOf(pos, direction); + facesByDirection.get(direction) + .computeIfAbsent(plane, ignored -> new HashSet<>()) + .add(faceCellOf(pos, direction)); + } + } + + List faceBoxes = new ArrayList<>(); + List outlineSegments = new ArrayList<>(); + + for (Direction direction : Direction.values()) { + for (Map.Entry> entry : facesByDirection.get(direction).entrySet()) { + faceBoxes.addAll(mergeFacePlane(direction, entry.getKey(), entry.getValue())); + outlineSegments.addAll(outlineSegmentsForPlane(direction, entry.getKey(), entry.getValue())); + } + } + + return new PreviewMesh(faceBoxes, outlineSegments); + } + + private static List mergeFacePlane(Direction direction, int plane, Set faceCells) { + Set remaining = new HashSet<>(faceCells); + List boxes = new ArrayList<>(); + + while (!remaining.isEmpty()) { + FaceCell start = pickLowest(remaining); + int maxU = extendU(remaining, start); + int maxV = extendV(remaining, start, maxU); + + for (int u = start.u(); u <= maxU; u++) { + for (int v = start.v(); v <= maxV; v++) { + remaining.remove(new FaceCell(u, v)); + } + } + + boxes.add(faceBox(direction, plane, start.u(), start.v(), maxU + 1, maxV + 1)); + } + + return boxes; + } + + private static List outlineSegmentsForPlane(Direction direction, int plane, Set faceCells) { + Set edges = new HashSet<>(); + + for (FaceCell cell : faceCells) { + toggleEdge(edges, FaceEdge.of(cell.u(), cell.v(), cell.u() + 1, cell.v())); + toggleEdge(edges, FaceEdge.of(cell.u() + 1, cell.v(), cell.u() + 1, cell.v() + 1)); + toggleEdge(edges, FaceEdge.of(cell.u() + 1, cell.v() + 1, cell.u(), cell.v() + 1)); + toggleEdge(edges, FaceEdge.of(cell.u(), cell.v() + 1, cell.u(), cell.v())); + } + + List segments = new ArrayList<>(); + + for (FaceEdge edge : edges) { + segments.add(new LineSegment( + facePoint(direction, plane, edge.u1(), edge.v1()), + facePoint(direction, plane, edge.u2(), edge.v2()) + )); + } + + return segments; + } + + private static void toggleEdge(Set edges, FaceEdge edge) { + if (!edges.add(edge)) { + edges.remove(edge); + } + } + + private static FaceCell pickLowest(Set cells) { + FaceCell best = null; + + for (FaceCell cell : cells) { + if (best == null || cell.v() < best.v() || (cell.v() == best.v() && cell.u() < best.u())) { + best = cell; + } + } + + return best; + } + + private static int extendU(Set cells, FaceCell start) { + int maxU = start.u(); + + while (cells.contains(new FaceCell(maxU + 1, start.v()))) { + maxU++; + } + + return maxU; + } + + private static int extendV(Set cells, FaceCell start, int maxU) { + int maxV = start.v(); + + while (canExtendV(cells, start, maxU, maxV + 1)) { + maxV++; + } + + return maxV; + } + + private static boolean canExtendV(Set cells, FaceCell start, int maxU, int nextV) { + for (int u = start.u(); u <= maxU; u++) { + if (!cells.contains(new FaceCell(u, nextV))) { + return false; + } + } + + return true; + } + + private static int planeOf(BlockPos pos, Direction direction) { + return switch (direction) { + case WEST -> pos.getX(); + case EAST -> pos.getX() + 1; + case DOWN -> pos.getY(); + case UP -> pos.getY() + 1; + case NORTH -> pos.getZ(); + case SOUTH -> pos.getZ() + 1; + }; + } + + private static FaceCell faceCellOf(BlockPos pos, Direction direction) { + return switch (direction) { + case WEST, EAST -> new FaceCell(pos.getY(), pos.getZ()); + case DOWN, UP -> new FaceCell(pos.getX(), pos.getZ()); + case NORTH, SOUTH -> new FaceCell(pos.getX(), pos.getY()); + }; + } + + private static AABB faceBox(Direction direction, int plane, int minU, int minV, int maxUExclusive, int maxVExclusive) { + return switch (direction) { + case WEST -> new AABB(plane, minU, minV, plane + FACE_THICKNESS, maxUExclusive, maxVExclusive); + case EAST -> new AABB(plane - FACE_THICKNESS, minU, minV, plane, maxUExclusive, maxVExclusive); + case DOWN -> new AABB(minU, plane, minV, maxUExclusive, plane + FACE_THICKNESS, maxVExclusive); + case UP -> new AABB(minU, plane - FACE_THICKNESS, minV, maxUExclusive, plane, maxVExclusive); + case NORTH -> new AABB(minU, minV, plane, maxUExclusive, maxVExclusive, plane + FACE_THICKNESS); + case SOUTH -> new AABB(minU, minV, plane - FACE_THICKNESS, maxUExclusive, maxVExclusive, plane); + }; + } + + private static Vec3 facePoint(Direction direction, int plane, int u, int v) { + double offsetX = direction.getStepX() * OUTLINE_OFFSET; + double offsetY = direction.getStepY() * OUTLINE_OFFSET; + double offsetZ = direction.getStepZ() * OUTLINE_OFFSET; + + return switch (direction) { + case WEST, EAST -> new Vec3(plane + offsetX, u + offsetY, v + offsetZ); + case DOWN, UP -> new Vec3(u + offsetX, plane + offsetY, v + offsetZ); + case NORTH, SOUTH -> new Vec3(u + offsetX, v + offsetY, plane + offsetZ); + }; + } + + private record FaceCell(int u, int v) { + } + + private record FaceEdge(int u1, int v1, int u2, int v2) { + private static FaceEdge of(int u1, int v1, int u2, int v2) { + if (u1 < u2 || (u1 == u2 && v1 <= v2)) { + return new FaceEdge(u1, v1, u2, v2); + } + + return new FaceEdge(u2, v2, u1, v1); + } + } + + private record LineSegment(Vec3 start, Vec3 end) { + } + + private record PreviewMesh(List faceBoxes, List outlineSegments) { + } +} diff --git a/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/mixin/MinecraftMixin.java b/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/mixin/MinecraftMixin.java new file mode 100755 index 0000000..05b3fa2 --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/mixin/MinecraftMixin.java @@ -0,0 +1,26 @@ +package fr.koka.builder.client.mixin; + +import fr.koka.builder.client.BuilderClientMod; +import net.minecraft.client.Minecraft; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(Minecraft.class) +public abstract class MinecraftMixin { + @Shadow private int rightClickDelay; + + @Inject(method = "startUseItem", at = @At("HEAD"), cancellable = true) + private void builder$cancelVanillaUseWhileBuilding(CallbackInfo ci) { + Minecraft client = (Minecraft) (Object) this; + + if (!BuilderClientMod.shouldCancelVanillaUse(client)) { + return; + } + + this.rightClickDelay = 4; + ci.cancel(); + } +} diff --git a/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/mixin/MouseHandlerMixin.java b/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/mixin/MouseHandlerMixin.java new file mode 100755 index 0000000..e6c2776 --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/fr/koka/builder/client/mixin/MouseHandlerMixin.java @@ -0,0 +1,18 @@ +package fr.koka.builder.client.mixin; + +import fr.koka.builder.client.BuilderClientMod; +import net.minecraft.client.MouseHandler; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(MouseHandler.class) +public abstract class MouseHandlerMixin { + @Inject(method = "onScroll", at = @At("HEAD"), cancellable = true) + private void builder$onScroll(long windowPointer, double horizontalAmount, double verticalAmount, CallbackInfo ci) { + if (BuilderClientMod.onMouseScroll(horizontalAmount, verticalAmount)) { + ci.cancel(); + } + } +} diff --git a/Gameplay/minecrafter/src/client/java/fr/koka/miner/client/MinerClientKeys.java b/Gameplay/minecrafter/src/client/java/fr/koka/miner/client/MinerClientKeys.java new file mode 100755 index 0000000..4b758d3 --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/fr/koka/miner/client/MinerClientKeys.java @@ -0,0 +1,14 @@ +package fr.koka.miner.client; + +import fr.koka.miner.MinerMod; +import net.minecraft.client.KeyMapping; +import net.minecraft.resources.Identifier; + +public final class MinerClientKeys { + public static final KeyMapping.Category MINER_CATEGORY = + KeyMapping.Category.register(Identifier.fromNamespaceAndPath(MinerMod.MOD_ID, "miner")); + + private MinerClientKeys() { + } +} + diff --git a/Gameplay/minecrafter/src/client/java/fr/koka/miner/client/MinerClientMod.java b/Gameplay/minecrafter/src/client/java/fr/koka/miner/client/MinerClientMod.java new file mode 100755 index 0000000..88df66b --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/fr/koka/miner/client/MinerClientMod.java @@ -0,0 +1,263 @@ +package fr.koka.miner.client; + +import java.util.List; + +import com.mojang.blaze3d.platform.InputConstants; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; +import net.fabricmc.fabric.api.event.client.player.ClientPreAttackCallback; +import net.fabricmc.fabric.api.client.keymapping.v1.KeyMappingHelper; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.fabricmc.fabric.api.client.rendering.v1.hud.HudElementRegistry; +import fr.koka.miner.MinerMiningPayload; +import fr.koka.miner.MinerConfig; +import fr.koka.miner.MinerMod; +import fr.koka.miner.VeinSelection; +import net.minecraft.client.KeyMapping; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.Font; +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.core.BlockPos; +import net.minecraft.network.chat.Component; +import net.minecraft.sounds.SoundSource; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.level.block.SoundType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import org.lwjgl.glfw.GLFW; + +public final class MinerClientMod implements ClientModInitializer { + private static final int SWING_INTERVAL_TICKS = 4; + private static final float HIT_SOUND_VOLUME = 0.7F; + private static final float HIT_SOUND_PITCH_MULTIPLIER = 0.6F; + private static KeyMapping veinModeKey; + private static BlockPos activeMiningOrigin; + private static int currentVeinPower = MinerConfig.DEFAULT_VEIN_POWER; + private static int activeMiningPower = MinerConfig.DEFAULT_VEIN_POWER; + private static List previewSelection = List.of(); + private static int miningAnimationTicks; + + @Override + public void onInitializeClient() { + veinModeKey = KeyMappingHelper.registerKeyMapping(new KeyMapping( + "key.miner.vein_mode", + InputConstants.Type.KEYSYM, + GLFW.GLFW_KEY_M, + MinerClientKeys.MINER_CATEGORY + )); + + HudElementRegistry.addLast(MinerMod.id("selection_count"), MinerClientMod::renderSelectionCount); + ClientPreAttackCallback.EVENT.register(MinerClientMod::onClientPreAttack); + ClientTickEvents.END_CLIENT_TICK.register(MinerClientMod::onEndClientTick); + } + + private static void onEndClientTick(Minecraft client) { + if (client.level == null || client.player == null) { + stopMining(client); + previewSelection = List.of(); + return; + } + + updatePreviewSelection(client); + MinerPreviewRenderer.collect(client, previewSelection); + + if (activeMiningOrigin != null && previewSelection.isEmpty()) { + stopMining(client); + return; + } + + if (activeMiningOrigin != null && !shouldContinueMining(client)) { + stopMining(client); + return; + } + + if (activeMiningOrigin != null) { + miningAnimationTicks++; + + if (miningAnimationTicks >= SWING_INTERVAL_TICKS) { + playMiningHitSound(client, activeMiningOrigin); + client.player.swing(InteractionHand.MAIN_HAND); + miningAnimationTicks = 0; + } + } + } + + private static boolean onClientPreAttack(Minecraft client, LocalPlayer player, int clickCount) { + if (!veinModeKey.isDown() || client.level == null || !(client.hitResult instanceof BlockHitResult blockHitResult) || blockHitResult.getType() == HitResult.Type.MISS) { + return false; + } + + BlockPos origin = blockHitResult.getBlockPos(); + BlockState originState = client.level.getBlockState(origin); + List selection = VeinSelection.collectPreview(client.level, origin, originState, currentVeinPower); + + if (selection.isEmpty()) { + return false; + } + + previewSelection = selection; + + boolean originChanged = !origin.equals(activeMiningOrigin); + boolean powerChanged = currentVeinPower != activeMiningPower; + + if (originChanged) { + stopMining(client); + sendMiningPacket(client, true, origin); + activeMiningOrigin = origin; + activeMiningPower = currentVeinPower; + } else if (powerChanged) { + sendMiningPacket(client, true, origin); + activeMiningPower = currentVeinPower; + } + + if (clickCount > 0 || originChanged || powerChanged) { + playMiningHitSound(client, origin); + player.swing(InteractionHand.MAIN_HAND); + miningAnimationTicks = 0; + } + + return true; + } + + private static void updatePreviewSelection(Minecraft client) { + if (!veinModeKey.isDown() || !(client.hitResult instanceof BlockHitResult blockHitResult) || blockHitResult.getType() == HitResult.Type.MISS) { + previewSelection = List.of(); + return; + } + + BlockPos origin = blockHitResult.getBlockPos(); + BlockState originState = client.level.getBlockState(origin); + previewSelection = VeinSelection.collectPreview(client.level, origin, originState, currentVeinPower); + } + + private static boolean shouldContinueMining(Minecraft client) { + return veinModeKey.isDown() + && client.hitResult instanceof BlockHitResult blockHitResult + && blockHitResult.getType() != HitResult.Type.MISS + && activeMiningOrigin != null + && activeMiningOrigin.equals(blockHitResult.getBlockPos()); + } + + private static void stopMining(Minecraft client) { + if (activeMiningOrigin == null) { + return; + } + + sendMiningPacket(client, false, activeMiningOrigin); + activeMiningOrigin = null; + activeMiningPower = currentVeinPower; + miningAnimationTicks = 0; + } + + public static boolean onMouseScroll(double horizontalAmount, double verticalAmount) { + Minecraft client = Minecraft.getInstance(); + + if (client.player == null || client.screen != null || veinModeKey == null || !veinModeKey.isDown()) { + return false; + } + + int direction = scrollDirection(horizontalAmount, verticalAmount); + + if (direction == 0) { + return false; + } + + int nextPower = MinerConfig.clampVeinPower(currentVeinPower + direction * MinerConfig.VEIN_POWER_SCROLL_STEP); + + if (nextPower == currentVeinPower) { + showVeinPowerMessage(client); + return true; + } + + currentVeinPower = nextPower; + showVeinPowerMessage(client); + updatePreviewSelection(client); + + if (activeMiningOrigin != null) { + sendMiningPacket(client, true, activeMiningOrigin); + activeMiningPower = currentVeinPower; + miningAnimationTicks = 0; + } + + return true; + } + + public static boolean shouldReplaceCrosshair() { + return veinModeKey != null && veinModeKey.isDown() && !previewSelection.isEmpty(); + } + + public static Component crosshairReplacementText() { + if (!shouldReplaceCrosshair()) { + return null; + } + + return Component.literal(Integer.toString(previewSelection.size())); + } + + private static void sendMiningPacket(Minecraft client, boolean active, BlockPos origin) { + if (client.getConnection() != null) { + ClientPlayNetworking.send(new MinerMiningPayload(active, origin, currentVeinPower)); + } + } + + private static void playMiningHitSound(Minecraft client, BlockPos pos) { + if (client.level == null) { + return; + } + + BlockState state = client.level.getBlockState(pos); + + if (state.isAir()) { + return; + } + + SoundType soundType = state.getSoundType(); + client.level.playLocalSound( + pos, + soundType.getHitSound(), + SoundSource.PLAYERS, + HIT_SOUND_VOLUME, + soundType.getPitch() * HIT_SOUND_PITCH_MULTIPLIER, + false + ); + } + + private static int scrollDirection(double horizontalAmount, double verticalAmount) { + if (verticalAmount > 0.0D) { + return 1; + } + + if (verticalAmount < 0.0D) { + return -1; + } + + if (horizontalAmount > 0.0D) { + return 1; + } + + if (horizontalAmount < 0.0D) { + return -1; + } + + return 0; + } + + private static void showVeinPowerMessage(Minecraft client) { + client.player.sendOverlayMessage(Component.translatable("message.miner.vein_power", currentVeinPower)); + } + + private static void renderSelectionCount(GuiGraphicsExtractor graphics, net.minecraft.client.DeltaTracker deltaTracker) { + Component selectionText = crosshairReplacementText(); + + if (selectionText == null) { + return; + } + + Font font = Minecraft.getInstance().font; + int x = (graphics.guiWidth() - font.width(selectionText)) / 2; + int y = (graphics.guiHeight() - font.lineHeight) / 2; + graphics.text(font, selectionText, x, y, 0xFFFFFFFF, true); + } +} diff --git a/Gameplay/minecrafter/src/client/java/fr/koka/miner/client/MinerPreviewRenderer.java b/Gameplay/minecrafter/src/client/java/fr/koka/miner/client/MinerPreviewRenderer.java new file mode 100755 index 0000000..2a1e9f2 --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/fr/koka/miner/client/MinerPreviewRenderer.java @@ -0,0 +1,231 @@ +package fr.koka.miner.client; + +import java.util.ArrayList; +import java.util.EnumMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import net.minecraft.client.Minecraft; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.gizmos.Gizmos; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; + +public final class MinerPreviewRenderer { + private static final int OUTLINE_COLOR = 0x4B000000; + private static final double FACE_THICKNESS = 0.025D; + private static final double OUTLINE_OFFSET = 0.002D; + private static final float OUTLINE_WIDTH = 1.08F; + + private MinerPreviewRenderer() { + } + + public static void collect(Minecraft client, List selection) { + if (selection.isEmpty() || client.level == null) { + return; + } + + PreviewMesh previewMesh = buildPreviewMesh(selection); + + try (Gizmos.TemporaryCollection ignored = client.collectPerTickGizmos()) { + for (LineSegment segment : previewMesh.outlineSegments()) { + Gizmos.line(segment.start(), segment.end(), OUTLINE_COLOR, OUTLINE_WIDTH) + .setAlwaysOnTop(); + } + } + } + + private static PreviewMesh buildPreviewMesh(List selection) { + Set blocks = new HashSet<>(); + + for (BlockPos pos : selection) { + blocks.add(pos.immutable()); + } + + Map>> facesByDirection = new EnumMap<>(Direction.class); + + for (Direction direction : Direction.values()) { + facesByDirection.put(direction, new java.util.HashMap<>()); + } + + for (BlockPos pos : blocks) { + for (Direction direction : Direction.values()) { + if (blocks.contains(pos.relative(direction))) { + continue; + } + + int plane = planeOf(pos, direction); + facesByDirection.get(direction) + .computeIfAbsent(plane, ignored -> new HashSet<>()) + .add(faceCellOf(pos, direction)); + } + } + + List faceBoxes = new ArrayList<>(); + List outlineSegments = new ArrayList<>(); + + for (Direction direction : Direction.values()) { + for (Map.Entry> entry : facesByDirection.get(direction).entrySet()) { + faceBoxes.addAll(mergeFacePlane(direction, entry.getKey(), entry.getValue())); + outlineSegments.addAll(outlineSegmentsForPlane(direction, entry.getKey(), entry.getValue())); + } + } + + return new PreviewMesh(faceBoxes, outlineSegments); + } + + private static List mergeFacePlane(Direction direction, int plane, Set faceCells) { + Set remaining = new HashSet<>(faceCells); + List boxes = new ArrayList<>(); + + while (!remaining.isEmpty()) { + FaceCell start = pickLowest(remaining); + int maxU = extendU(remaining, start); + int maxV = extendV(remaining, start, maxU); + + for (int u = start.u(); u <= maxU; u++) { + for (int v = start.v(); v <= maxV; v++) { + remaining.remove(new FaceCell(u, v)); + } + } + + boxes.add(faceBox(direction, plane, start.u(), start.v(), maxU + 1, maxV + 1)); + } + + return boxes; + } + + private static List outlineSegmentsForPlane(Direction direction, int plane, Set faceCells) { + Set edges = new HashSet<>(); + + for (FaceCell cell : faceCells) { + toggleEdge(edges, FaceEdge.of(cell.u(), cell.v(), cell.u() + 1, cell.v())); + toggleEdge(edges, FaceEdge.of(cell.u() + 1, cell.v(), cell.u() + 1, cell.v() + 1)); + toggleEdge(edges, FaceEdge.of(cell.u() + 1, cell.v() + 1, cell.u(), cell.v() + 1)); + toggleEdge(edges, FaceEdge.of(cell.u(), cell.v() + 1, cell.u(), cell.v())); + } + + List segments = new ArrayList<>(); + + for (FaceEdge edge : edges) { + segments.add(new LineSegment( + facePoint(direction, plane, edge.u1(), edge.v1()), + facePoint(direction, plane, edge.u2(), edge.v2()) + )); + } + + return segments; + } + + private static void toggleEdge(Set edges, FaceEdge edge) { + if (!edges.add(edge)) { + edges.remove(edge); + } + } + + private static FaceCell pickLowest(Set cells) { + FaceCell best = null; + + for (FaceCell cell : cells) { + if (best == null || cell.v() < best.v() || (cell.v() == best.v() && cell.u() < best.u())) { + best = cell; + } + } + + return best; + } + + private static int extendU(Set cells, FaceCell start) { + int maxU = start.u(); + + while (cells.contains(new FaceCell(maxU + 1, start.v()))) { + maxU++; + } + + return maxU; + } + + private static int extendV(Set cells, FaceCell start, int maxU) { + int maxV = start.v(); + + while (canExtendV(cells, start, maxU, maxV + 1)) { + maxV++; + } + + return maxV; + } + + private static boolean canExtendV(Set cells, FaceCell start, int maxU, int nextV) { + for (int u = start.u(); u <= maxU; u++) { + if (!cells.contains(new FaceCell(u, nextV))) { + return false; + } + } + + return true; + } + + private static int planeOf(BlockPos pos, Direction direction) { + return switch (direction) { + case WEST -> pos.getX(); + case EAST -> pos.getX() + 1; + case DOWN -> pos.getY(); + case UP -> pos.getY() + 1; + case NORTH -> pos.getZ(); + case SOUTH -> pos.getZ() + 1; + }; + } + + private static FaceCell faceCellOf(BlockPos pos, Direction direction) { + return switch (direction) { + case WEST, EAST -> new FaceCell(pos.getY(), pos.getZ()); + case DOWN, UP -> new FaceCell(pos.getX(), pos.getZ()); + case NORTH, SOUTH -> new FaceCell(pos.getX(), pos.getY()); + }; + } + + private static AABB faceBox(Direction direction, int plane, int minU, int minV, int maxUExclusive, int maxVExclusive) { + return switch (direction) { + case WEST -> new AABB(plane, minU, minV, plane + FACE_THICKNESS, maxUExclusive, maxVExclusive); + case EAST -> new AABB(plane - FACE_THICKNESS, minU, minV, plane, maxUExclusive, maxVExclusive); + case DOWN -> new AABB(minU, plane, minV, maxUExclusive, plane + FACE_THICKNESS, maxVExclusive); + case UP -> new AABB(minU, plane - FACE_THICKNESS, minV, maxUExclusive, plane, maxVExclusive); + case NORTH -> new AABB(minU, minV, plane, maxUExclusive, maxVExclusive, plane + FACE_THICKNESS); + case SOUTH -> new AABB(minU, minV, plane - FACE_THICKNESS, maxUExclusive, maxVExclusive, plane); + }; + } + + private static Vec3 facePoint(Direction direction, int plane, int u, int v) { + double offsetX = direction.getStepX() * OUTLINE_OFFSET; + double offsetY = direction.getStepY() * OUTLINE_OFFSET; + double offsetZ = direction.getStepZ() * OUTLINE_OFFSET; + + return switch (direction) { + case WEST, EAST -> new Vec3(plane + offsetX, u + offsetY, v + offsetZ); + case DOWN, UP -> new Vec3(u + offsetX, plane + offsetY, v + offsetZ); + case NORTH, SOUTH -> new Vec3(u + offsetX, v + offsetY, plane + offsetZ); + }; + } + + private record FaceCell(int u, int v) { + } + + private record FaceEdge(int u1, int v1, int u2, int v2) { + private static FaceEdge of(int u1, int v1, int u2, int v2) { + if (u1 < u2 || (u1 == u2 && v1 <= v2)) { + return new FaceEdge(u1, v1, u2, v2); + } + + return new FaceEdge(u2, v2, u1, v1); + } + } + + private record LineSegment(Vec3 start, Vec3 end) { + } + + private record PreviewMesh(List faceBoxes, List outlineSegments) { + } +} diff --git a/Gameplay/minecrafter/src/client/java/fr/koka/miner/client/mixin/MouseHandlerMixin.java b/Gameplay/minecrafter/src/client/java/fr/koka/miner/client/mixin/MouseHandlerMixin.java new file mode 100755 index 0000000..20ec446 --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/fr/koka/miner/client/mixin/MouseHandlerMixin.java @@ -0,0 +1,18 @@ +package fr.koka.miner.client.mixin; + +import fr.koka.miner.client.MinerClientMod; +import net.minecraft.client.MouseHandler; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(MouseHandler.class) +public abstract class MouseHandlerMixin { + @Inject(method = "onScroll", at = @At("HEAD"), cancellable = true) + private void miner$onScroll(long windowPointer, double horizontalAmount, double verticalAmount, CallbackInfo ci) { + if (MinerClientMod.onMouseScroll(horizontalAmount, verticalAmount)) { + ci.cancel(); + } + } +} diff --git a/Gameplay/minecrafter/src/client/java/fr/koka/view/ViewClient.java b/Gameplay/minecrafter/src/client/java/fr/koka/view/ViewClient.java new file mode 100755 index 0000000..dbd3f5b --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/fr/koka/view/ViewClient.java @@ -0,0 +1,86 @@ +package fr.koka.view; + +import com.mojang.blaze3d.platform.InputConstants; +import fr.koka.view.config.ViewConfig; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; +import net.fabricmc.fabric.api.client.keymapping.v1.KeyMappingHelper; +import net.minecraft.client.KeyMapping; +import net.minecraft.client.Minecraft; +import net.minecraft.network.chat.Component; +import org.lwjgl.glfw.GLFW; + +import java.util.Locale; + +public final class ViewClient implements ClientModInitializer { + public static final String MOD_ID = "view"; + + private static final KeyMapping VIEW_KEY = KeyMappingHelper.registerKeyMapping( + new KeyMapping("key.view.activate", InputConstants.Type.KEYSYM, GLFW.GLFW_KEY_V, KeyMapping.Category.MISC) + ); + + private static ViewConfig config; + private static double activeFov; + private static boolean wasViewHeld; + + @Override + public void onInitializeClient() { + config = ViewConfig.load(); + activeFov = config.telephotoFov(); + + ClientTickEvents.END_CLIENT_TICK.register(ViewClient::onEndClientTick); + } + + private static void onEndClientTick(Minecraft client) { + boolean isViewHeld = isViewActive(client); + if (isViewHeld && !wasViewHeld) { + activeFov = config.telephotoFov(); + showCurrentFov(client); + } + + wasViewHeld = isViewHeld; + } + + public static boolean handleMouseScroll(double vertical) { + Minecraft client = Minecraft.getInstance(); + if (!isViewActive(client) || vertical == 0.0D) { + return false; + } + + double direction = Math.signum(vertical); + if (config.invertScroll()) { + direction = -direction; + } + + int notches = Math.max(1, (int) Math.round(Math.abs(vertical))); + activeFov = config.clamp(activeFov + (direction * config.scrollStep() * notches)); + showCurrentFov(client); + return true; + } + + public static float resolveFov(float originalFov) { + Minecraft client = Minecraft.getInstance(); + if (!isViewActive(client)) { + return originalFov; + } + + return (float) config.clamp(activeFov); + } + + private static boolean isViewActive(Minecraft client) { + return client != null + && client.player != null + && client.screen == null + && VIEW_KEY.isDown(); + } + + private static void showCurrentFov(Minecraft client) { + if (client == null || client.player == null || !config.showActionBarValue()) { + return; + } + + client.player.sendOverlayMessage( + Component.translatable("message.view.fov", String.format(Locale.ROOT, "%.1f", activeFov)) + ); + } +} diff --git a/Gameplay/minecrafter/src/client/java/fr/koka/view/mixin/GameRendererMixin.java b/Gameplay/minecrafter/src/client/java/fr/koka/view/mixin/GameRendererMixin.java new file mode 100755 index 0000000..a60aae2 --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/fr/koka/view/mixin/GameRendererMixin.java @@ -0,0 +1,19 @@ +package fr.koka.view.mixin; + +import fr.koka.view.ViewClient; +import net.minecraft.client.Camera; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(Camera.class) +abstract class GameRendererMixin { + @Inject(method = "calculateFov", at = @At("RETURN"), cancellable = true) + private void view$overrideHeldFov( + float tickProgress, + CallbackInfoReturnable cir + ) { + cir.setReturnValue(ViewClient.resolveFov(cir.getReturnValue())); + } +} diff --git a/Gameplay/minecrafter/src/client/java/fr/koka/view/mixin/MouseMixin.java b/Gameplay/minecrafter/src/client/java/fr/koka/view/mixin/MouseMixin.java new file mode 100755 index 0000000..25a46e8 --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/fr/koka/view/mixin/MouseMixin.java @@ -0,0 +1,18 @@ +package fr.koka.view.mixin; + +import fr.koka.view.ViewClient; +import net.minecraft.client.MouseHandler; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(MouseHandler.class) +abstract class MouseMixin { + @Inject(method = "onScroll", at = @At("HEAD"), cancellable = true) + private void view$consumeScrollWhileHeld(long window, double horizontal, double vertical, CallbackInfo ci) { + if (ViewClient.handleMouseScroll(vertical)) { + ci.cancel(); + } + } +} diff --git a/Gameplay/minecrafter/src/client/java/fr/koka99cab/minecrafter/client/MinecrafterClient.java b/Gameplay/minecrafter/src/client/java/fr/koka99cab/minecrafter/client/MinecrafterClient.java new file mode 100644 index 0000000..a1fa39f --- /dev/null +++ b/Gameplay/minecrafter/src/client/java/fr/koka99cab/minecrafter/client/MinecrafterClient.java @@ -0,0 +1,21 @@ +package fr.koka99cab.minecrafter.client; + +import com.koka.heartoverlay.HeartOverlayClient; +import dev.koka.previewer.PreviewerClient; +import fr.koka.builder.client.BuilderClientMod; +import fr.koka.miner.client.MinerClientMod; +import fr.koka.view.ViewClient; +import net.fabricmc.api.ClientModInitializer; +import fr.koka99cab.minecrafter.MinecrafterMod; + +public class MinecrafterClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + new BuilderClientMod().onInitializeClient(); + new MinerClientMod().onInitializeClient(); + new PreviewerClient().onInitializeClient(); + new ViewClient().onInitializeClient(); + new HeartOverlayClient().onInitializeClient(); + MinecrafterMod.LOGGER.info("Minecrafter client initialise."); + } +} diff --git a/Gameplay/minecrafter/src/client/resources/builder.client.mixins.json b/Gameplay/minecrafter/src/client/resources/builder.client.mixins.json new file mode 100755 index 0000000..c6791d2 --- /dev/null +++ b/Gameplay/minecrafter/src/client/resources/builder.client.mixins.json @@ -0,0 +1,12 @@ +{ + "required": true, + "package": "fr.koka.builder.client.mixin", + "compatibilityLevel": "JAVA_25", + "client": [ + "MinecraftMixin", + "MouseHandlerMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/Gameplay/minecrafter/src/client/resources/miner.client.mixins.json b/Gameplay/minecrafter/src/client/resources/miner.client.mixins.json new file mode 100755 index 0000000..8ac597c --- /dev/null +++ b/Gameplay/minecrafter/src/client/resources/miner.client.mixins.json @@ -0,0 +1,11 @@ +{ + "required": true, + "package": "fr.koka.miner.client.mixin", + "compatibilityLevel": "JAVA_25", + "client": [ + "MouseHandlerMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/Gameplay/minecrafter/src/client/resources/view.mixins.json b/Gameplay/minecrafter/src/client/resources/view.mixins.json new file mode 100755 index 0000000..4c3f95a --- /dev/null +++ b/Gameplay/minecrafter/src/client/resources/view.mixins.json @@ -0,0 +1,12 @@ +{ + "required": true, + "package": "fr.koka.view.mixin", + "compatibilityLevel": "JAVA_25", + "client": [ + "GameRendererMixin", + "MouseMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuildSelection.java b/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuildSelection.java new file mode 100755 index 0000000..4725335 --- /dev/null +++ b/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuildSelection.java @@ -0,0 +1,167 @@ +package fr.koka.builder; + +import java.util.ArrayList; +import java.util.Comparator; +import java.util.List; + +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.context.BlockPlaceContext; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.Vec3; + +public final class BuildSelection { + private BuildSelection() { + } + + public static boolean canUseBuilderItem(Player player) { + return !player.getMainHandItem().isEmpty() && player.getMainHandItem().getItem() instanceof BlockItem; + } + + public static List collectPreview(Player player, Level level, BlockHitResult hitResult, int buildPower) { + return collectPreview(player, level, hitResult.getBlockPos(), hitResult.getDirection(), localHitOffset(hitResult), buildPower); + } + + public static List collectPreview(Player player, Level level, BlockPos origin, Direction face, Vec3 hitOffset, int buildPower) { + BlockPlaceContext baseContext = createBaseContext(player, origin, face, hitOffset); + + if (baseContext == null) { + return List.of(); + } + + return collect(level, baseContext, face, BuilderConfig.buildRadius(buildPower)); + } + + public static boolean tryPlace(ServerPlayer player, BlockPos origin, Direction face, Vec3 hitOffset, BlockPos targetPos) { + BlockPlaceContext baseContext = createBaseContext(player, origin, face, hitOffset); + + if (baseContext == null) { + return false; + } + + BlockPlaceContext targetContext = createTargetContext(baseContext, targetPos, face); + + if (targetContext == null || !targetContext.canPlace()) { + return false; + } + + BlockPos supportPos = targetPos.relative(face.getOpposite()); + BlockHitResult placementHitResult = new BlockHitResult( + Vec3.atLowerCornerOf(supportPos).add(hitOffset), + face, + supportPos, + false + ); + + InteractionResult result = player.gameMode.useItemOn( + player, + player.level(), + player.getMainHandItem(), + InteractionHand.MAIN_HAND, + placementHitResult + ); + return result.consumesAction(); + } + + public static Vec3 localHitOffset(BlockHitResult hitResult) { + return hitResult.getLocation().subtract(Vec3.atLowerCornerOf(hitResult.getBlockPos())); + } + + private static List collect(Level level, BlockPlaceContext baseContext, Direction face, int radius) { + BlockPos anchor = baseContext.getClickedPos(); + Direction horizontal = horizontalAxis(face); + Direction vertical = verticalAxis(face); + List selection = new ArrayList<>(); + + for (PlaneOffset offset : orderedOffsets(radius)) { + BlockPos targetPos = anchor.relative(horizontal, offset.horizontal()).relative(vertical, offset.vertical()); + BlockPlaceContext targetContext = createTargetContext(baseContext, targetPos, face); + + if (targetContext == null || !targetContext.canPlace()) { + continue; + } + + selection.add(targetPos.immutable()); + } + + return List.copyOf(selection); + } + + private static BlockPlaceContext createBaseContext(Player player, BlockPos origin, Direction face, Vec3 hitOffset) { + if (player == null || !canUseBuilderItem(player)) { + return null; + } + + BlockHitResult hitResult = new BlockHitResult( + Vec3.atLowerCornerOf(origin).add(hitOffset), + face, + origin, + false + ); + return new BlockPlaceContext(player, InteractionHand.MAIN_HAND, player.getMainHandItem(), hitResult); + } + + private static BlockPlaceContext createTargetContext(BlockPlaceContext baseContext, BlockPos targetPos, Direction face) { + Level level = baseContext.getLevel(); + BlockPos supportPos = targetPos.relative(face.getOpposite()); + + if (!level.isInWorldBounds(targetPos) || !level.isInWorldBounds(supportPos)) { + return null; + } + + if (level.getBlockState(supportPos).isAir()) { + return null; + } + + BlockPlaceContext targetContext = BlockPlaceContext.at(baseContext, supportPos, face); + + if (!targetContext.getClickedPos().equals(targetPos)) { + return null; + } + + return targetContext; + } + + private static Direction horizontalAxis(Direction face) { + return switch (face.getAxis()) { + case X -> Direction.SOUTH; + case Y, Z -> Direction.EAST; + }; + } + + private static Direction verticalAxis(Direction face) { + return switch (face.getAxis()) { + case X, Z -> Direction.UP; + case Y -> Direction.SOUTH; + }; + } + + private static List orderedOffsets(int radius) { + List offsets = new ArrayList<>(); + + for (int vertical = -radius; vertical <= radius; vertical++) { + for (int horizontal = -radius; horizontal <= radius; horizontal++) { + offsets.add(new PlaneOffset(horizontal, vertical)); + } + } + + offsets.sort( + Comparator + .comparingInt((PlaneOffset offset) -> Math.max(Math.abs(offset.horizontal()), Math.abs(offset.vertical()))) + .thenComparingInt(offset -> Math.abs(offset.horizontal()) + Math.abs(offset.vertical())) + .thenComparingInt(offset -> Math.abs(offset.vertical())) + .thenComparingInt(PlaneOffset::vertical) + .thenComparingInt(PlaneOffset::horizontal) + ); + return offsets; + } + + private record PlaneOffset(int horizontal, int vertical) { + } +} diff --git a/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuilderConfig.java b/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuilderConfig.java new file mode 100755 index 0000000..f2f2dc3 --- /dev/null +++ b/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuilderConfig.java @@ -0,0 +1,25 @@ +package fr.koka.builder; + +public final class BuilderConfig { + public static final int MIN_BUILD_POWER = 1; + public static final int DEFAULT_BUILD_POWER = 2; + public static final int MAX_BUILD_POWER = 6; + public static final int MAX_BUILD_DIAMETER = MAX_BUILD_POWER * 2 - 1; + public static final int BUILD_POWER_SCROLL_STEP = 1; + public static final float SURVIVAL_BUILD_PROGRESS_PER_TICK = 0.5F; + + private BuilderConfig() { + } + + public static int clampBuildPower(int power) { + return Math.max(MIN_BUILD_POWER, Math.min(MAX_BUILD_POWER, power)); + } + + public static int buildRadius(int power) { + return clampBuildPower(power) - 1; + } + + public static int buildDiameter(int power) { + return buildRadius(power) * 2 + 1; + } +} diff --git a/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuilderControlPayload.java b/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuilderControlPayload.java new file mode 100755 index 0000000..0869212 --- /dev/null +++ b/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuilderControlPayload.java @@ -0,0 +1,38 @@ +package fr.koka.builder; + +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.world.phys.Vec3; + +public record BuilderControlPayload(boolean active, BlockPos origin, Direction face, Vec3 hitOffset, int power) implements CustomPacketPayload { + public static final CustomPacketPayload.Type ID = new CustomPacketPayload.Type<>(BuilderMod.id("build_control")); + public static final StreamCodec CODEC = CustomPacketPayload.codec(BuilderControlPayload::write, BuilderControlPayload::new); + + public BuilderControlPayload(RegistryFriendlyByteBuf buffer) { + this( + buffer.readBoolean(), + buffer.readBlockPos(), + Direction.from3DDataValue(buffer.readVarInt()), + new Vec3(buffer.readDouble(), buffer.readDouble(), buffer.readDouble()), + BuilderConfig.clampBuildPower(buffer.readVarInt()) + ); + } + + private void write(RegistryFriendlyByteBuf buffer) { + buffer.writeBoolean(this.active); + buffer.writeBlockPos(this.origin); + buffer.writeVarInt(this.face.get3DDataValue()); + buffer.writeDouble(this.hitOffset.x); + buffer.writeDouble(this.hitOffset.y); + buffer.writeDouble(this.hitOffset.z); + buffer.writeVarInt(this.power); + } + + @Override + public Type type() { + return ID; + } +} diff --git a/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuilderMod.java b/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuilderMod.java new file mode 100755 index 0000000..7884ab4 --- /dev/null +++ b/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuilderMod.java @@ -0,0 +1,26 @@ +package fr.koka.builder; + +import net.fabricmc.api.ModInitializer; +import net.minecraft.resources.Identifier; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class BuilderMod implements ModInitializer { + public static final String MOD_ID = "builder"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + public static Identifier id(String path) { + return Identifier.fromNamespaceAndPath(MOD_ID, path); + } + + @Override + public void onInitialize() { + BuilderPlacementManager.register(); + LOGGER.info( + "Builder ready. defaultBuildPower={}, maxBuildPower={}, maxDiameter={}", + BuilderConfig.DEFAULT_BUILD_POWER, + BuilderConfig.MAX_BUILD_POWER, + BuilderConfig.MAX_BUILD_DIAMETER + ); + } +} diff --git a/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuilderPlacementManager.java b/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuilderPlacementManager.java new file mode 100755 index 0000000..f2a890c --- /dev/null +++ b/Gameplay/minecrafter/src/main/java/fr/koka/builder/BuilderPlacementManager.java @@ -0,0 +1,81 @@ +package fr.koka.builder; + +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; +import java.util.UUID; + +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents; +import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry; +import net.fabricmc.fabric.api.networking.v1.ServerPlayConnectionEvents; +import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.phys.Vec3; + +public final class BuilderPlacementManager { + private static final Map SESSIONS = new HashMap<>(); + + private BuilderPlacementManager() { + } + + public static void register() { + PayloadTypeRegistry.serverboundPlay().register(BuilderControlPayload.ID, BuilderControlPayload.CODEC); + ServerPlayNetworking.registerGlobalReceiver(BuilderControlPayload.ID, (payload, context) -> { + if (payload.active()) { + startOrUpdateSession(context.player(), payload.origin(), payload.face(), payload.hitOffset(), payload.power()); + } else { + stopSession(context.player().getUUID()); + } + }); + + ServerPlayConnectionEvents.DISCONNECT.register((handler, server) -> { + stopSession(handler.player.getUUID()); + }); + + ServerTickEvents.END_SERVER_TICK.register(server -> tickSessions()); + } + + private static void startOrUpdateSession(ServerPlayer player, BlockPos origin, Direction face, Vec3 hitOffset, int buildPower) { + GroupBuildingSession currentSession = SESSIONS.get(player.getUUID()); + + if (currentSession != null && currentSession.matches(origin, face, buildPower)) { + return; + } + + stopSession(player.getUUID()); + + GroupBuildingSession nextSession = GroupBuildingSession.create(player, origin, face, hitOffset, buildPower); + + if (nextSession == null) { + return; + } + + if (player.isCreative()) { + nextSession.buildInstantly(); + } else { + SESSIONS.put(player.getUUID(), nextSession); + } + } + + private static void tickSessions() { + Iterator> iterator = SESSIONS.entrySet().iterator(); + + while (iterator.hasNext()) { + Map.Entry entry = iterator.next(); + + if (!entry.getValue().tick()) { + iterator.remove(); + } + } + } + + private static void stopSession(UUID playerId) { + GroupBuildingSession session = SESSIONS.remove(playerId); + + if (session != null) { + session.stop(); + } + } +} diff --git a/Gameplay/minecrafter/src/main/java/fr/koka/builder/GroupBuildingSession.java b/Gameplay/minecrafter/src/main/java/fr/koka/builder/GroupBuildingSession.java new file mode 100755 index 0000000..2470e3c --- /dev/null +++ b/Gameplay/minecrafter/src/main/java/fr/koka/builder/GroupBuildingSession.java @@ -0,0 +1,94 @@ +package fr.koka.builder; + +import java.util.List; + +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.phys.Vec3; + +public final class GroupBuildingSession { + private final ServerPlayer player; + private final ServerLevel level; + private final BlockPos origin; + private final Direction face; + private final Vec3 hitOffset; + private final int buildPower; + private final List selection; + private float placementProgress; + private int nextIndex; + + private GroupBuildingSession(ServerPlayer player, ServerLevel level, BlockPos origin, Direction face, Vec3 hitOffset, int buildPower, List selection) { + this.player = player; + this.level = level; + this.origin = origin; + this.face = face; + this.hitOffset = hitOffset; + this.buildPower = buildPower; + this.selection = selection; + } + + public static GroupBuildingSession create(ServerPlayer player, BlockPos origin, Direction face, Vec3 hitOffset, int buildPower) { + ServerLevel level = (ServerLevel) player.level(); + int clampedPower = BuilderConfig.clampBuildPower(buildPower); + List selection = BuildSelection.collectPreview(player, level, origin, face, hitOffset, clampedPower); + + if (selection.isEmpty()) { + return null; + } + + return new GroupBuildingSession(player, level, origin, face, hitOffset, clampedPower, selection); + } + + public boolean matches(BlockPos blockPos, Direction requestedFace, int requestedBuildPower) { + return this.origin.equals(blockPos) + && this.face == requestedFace + && this.buildPower == BuilderConfig.clampBuildPower(requestedBuildPower); + } + + public void buildInstantly() { + while (advanceOnce()) { + } + } + + public boolean tick() { + if (!this.player.isAlive() || this.player.level() != this.level) { + stop(); + return false; + } + + if (!BuildSelection.canUseBuilderItem(this.player) || this.nextIndex >= this.selection.size()) { + stop(); + return false; + } + + this.placementProgress += BuilderConfig.SURVIVAL_BUILD_PROGRESS_PER_TICK; + + while (this.placementProgress >= 1.0F) { + this.placementProgress -= 1.0F; + + if (!advanceOnce()) { + stop(); + return false; + } + } + + return true; + } + + public void stop() { + } + + private boolean advanceOnce() { + while (this.nextIndex < this.selection.size()) { + BlockPos targetPos = this.selection.get(this.nextIndex++); + + if (BuildSelection.tryPlace(this.player, this.origin, this.face, this.hitOffset, targetPos)) { + return this.nextIndex < this.selection.size(); + } + } + + return false; + } +} diff --git a/Gameplay/minecrafter/src/main/java/fr/koka/miner/GroupMiningSession.java b/Gameplay/minecrafter/src/main/java/fr/koka/miner/GroupMiningSession.java new file mode 100755 index 0000000..2dca64d --- /dev/null +++ b/Gameplay/minecrafter/src/main/java/fr/koka/miner/GroupMiningSession.java @@ -0,0 +1,144 @@ +package fr.koka.miner; + +import java.util.List; + +import net.minecraft.core.BlockPos; +import net.minecraft.core.particles.BlockParticleOption; +import net.minecraft.core.particles.ParticleTypes; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.sounds.SoundSource; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.SoundType; +import net.minecraft.world.level.block.state.BlockState; + +public final class GroupMiningSession { + private static final int DESTROY_PARTICLE_COUNT = 12; + private static final double DESTROY_PARTICLE_SPREAD = 0.35D; + private static final double DESTROY_PARTICLE_SPEED = 0.05D; + private static final float MIN_DESTROY_SOUND_VOLUME = 0.8F; + private static final float DESTROY_SOUND_VOLUME_MULTIPLIER = 0.6F; + private static final float DESTROY_SOUND_MIN_PITCH_MULTIPLIER = 0.85F; + private static final float DESTROY_SOUND_PITCH_VARIANCE = 0.25F; + private final ServerPlayer player; + private final ServerLevel level; + private final BlockPos origin; + private final BlockState originState; + private final Block targetBlock; + private final int veinPower; + private final List selection; + private final float requiredProgress; + private float progress; + + private GroupMiningSession(ServerPlayer player, ServerLevel level, BlockPos origin, BlockState originState, int veinPower, List selection) { + this.player = player; + this.level = level; + this.origin = origin; + this.originState = originState; + this.targetBlock = originState.getBlock(); + this.veinPower = veinPower; + this.selection = selection; + this.requiredProgress = Math.max(1.0F, selection.size()); + } + + public static GroupMiningSession create(ServerPlayer player, BlockPos origin, int veinPower) { + ServerLevel level = (ServerLevel) player.level(); + BlockState originState = level.getBlockState(origin); + int clampedPower = MinerConfig.clampVeinPower(veinPower); + List selection = VeinSelection.collectPreview(level, origin, originState, clampedPower); + + if (selection.isEmpty()) { + return null; + } + + return new GroupMiningSession(player, level, origin, originState, clampedPower, selection); + } + + public boolean matches(BlockPos blockPos, int requestedVeinPower) { + return this.origin.equals(blockPos) && this.veinPower == MinerConfig.clampVeinPower(requestedVeinPower); + } + + public void breakInstantly() { + complete(); + } + + public boolean tick() { + if (!this.player.isAlive() || this.player.level() != this.level) { + stop(); + return false; + } + + if (!this.level.getBlockState(this.origin).is(this.targetBlock)) { + stop(); + return false; + } + + float destroyDelta = this.originState.getDestroyProgress(this.player, this.level, this.origin); + + if (destroyDelta <= 0.0F) { + updateCracks(0); + return true; + } + + this.progress = Math.min(this.requiredProgress, this.progress + destroyDelta); + float normalizedProgress = this.progress / this.requiredProgress; + int stage = Math.min(9, (int) (normalizedProgress * 10.0F)); + updateCracks(stage); + + if (this.progress >= this.requiredProgress) { + complete(); + return false; + } + + return true; + } + + public void stop() { + updateCracks(-1); + } + + private void complete() { + updateCracks(-1); + + for (BlockPos pos : this.selection) { + BlockState state = this.level.getBlockState(pos); + + if (state.is(this.targetBlock) + && this.player.gameMode.destroyBlock(pos) + && !this.level.getBlockState(pos).is(this.targetBlock)) { + playDestroyEffect(pos, state); + } + } + } + + private void playDestroyEffect(BlockPos pos, BlockState state) { + SoundType soundType = state.getSoundType(); + float volume = Math.max(MIN_DESTROY_SOUND_VOLUME, (soundType.getVolume() + 1.0F) * DESTROY_SOUND_VOLUME_MULTIPLIER); + float pitch = soundType.getPitch() * (DESTROY_SOUND_MIN_PITCH_MULTIPLIER + this.level.getRandom().nextFloat() * DESTROY_SOUND_PITCH_VARIANCE); + + this.level.playSound(null, pos, soundType.getBreakSound(), SoundSource.BLOCKS, volume, pitch); + this.level.sendParticles( + new BlockParticleOption(ParticleTypes.BLOCK, state), + pos.getX() + 0.5D, + pos.getY() + 0.5D, + pos.getZ() + 0.5D, + DESTROY_PARTICLE_COUNT, + DESTROY_PARTICLE_SPREAD, + DESTROY_PARTICLE_SPREAD, + DESTROY_PARTICLE_SPREAD, + DESTROY_PARTICLE_SPEED + ); + } + + private void updateCracks(int stage) { + for (int index = 0; index < this.selection.size(); index++) { + BlockPos pos = this.selection.get(index); + int displayStage = this.level.getBlockState(pos).is(this.targetBlock) ? stage : -1; + this.level.destroyBlockProgress(progressId(index), pos, displayStage); + } + } + + private int progressId(int index) { + return 5_000_000 + this.player.getId() * MinerConfig.MAX_VEIN_POWER + index; + } +} diff --git a/Gameplay/minecrafter/src/main/java/fr/koka/miner/MinerConfig.java b/Gameplay/minecrafter/src/main/java/fr/koka/miner/MinerConfig.java new file mode 100755 index 0000000..7b80fe1 --- /dev/null +++ b/Gameplay/minecrafter/src/main/java/fr/koka/miner/MinerConfig.java @@ -0,0 +1,16 @@ +package fr.koka.miner; + +public final class MinerConfig { + public static final int SEARCH_RADIUS = 6; + public static final int MIN_VEIN_POWER = 1; + public static final int DEFAULT_VEIN_POWER = 12; + public static final int MAX_VEIN_POWER = 256; + public static final int VEIN_POWER_SCROLL_STEP = 1; + + private MinerConfig() { + } + + public static int clampVeinPower(int power) { + return Math.max(MIN_VEIN_POWER, Math.min(MAX_VEIN_POWER, power)); + } +} diff --git a/Gameplay/minecrafter/src/main/java/fr/koka/miner/MinerMiningPayload.java b/Gameplay/minecrafter/src/main/java/fr/koka/miner/MinerMiningPayload.java new file mode 100755 index 0000000..3ea90c3 --- /dev/null +++ b/Gameplay/minecrafter/src/main/java/fr/koka/miner/MinerMiningPayload.java @@ -0,0 +1,26 @@ +package fr.koka.miner; + +import net.minecraft.core.BlockPos; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record MinerMiningPayload(boolean active, BlockPos origin, int power) implements CustomPacketPayload { + public static final CustomPacketPayload.Type ID = new CustomPacketPayload.Type<>(MinerMod.id("mining_control")); + public static final StreamCodec CODEC = CustomPacketPayload.codec(MinerMiningPayload::write, MinerMiningPayload::new); + + public MinerMiningPayload(RegistryFriendlyByteBuf buffer) { + this(buffer.readBoolean(), buffer.readBlockPos(), MinerConfig.clampVeinPower(buffer.readVarInt())); + } + + private void write(RegistryFriendlyByteBuf buffer) { + buffer.writeBoolean(this.active); + buffer.writeBlockPos(this.origin); + buffer.writeVarInt(this.power); + } + + @Override + public Type type() { + return ID; + } +} diff --git a/Gameplay/minecrafter/src/main/java/fr/koka/miner/MinerMod.java b/Gameplay/minecrafter/src/main/java/fr/koka/miner/MinerMod.java new file mode 100755 index 0000000..1065b91 --- /dev/null +++ b/Gameplay/minecrafter/src/main/java/fr/koka/miner/MinerMod.java @@ -0,0 +1,26 @@ +package fr.koka.miner; + +import net.fabricmc.api.ModInitializer; +import net.minecraft.resources.Identifier; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class MinerMod implements ModInitializer { + public static final String MOD_ID = "miner"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + public static Identifier id(String path) { + return Identifier.fromNamespaceAndPath(MOD_ID, path); + } + + @Override + public void onInitialize() { + VeinMiningManager.register(); + LOGGER.info( + "Miner ready. Radius={}, defaultVeinPower={}, maxVeinPower={}", + MinerConfig.SEARCH_RADIUS, + MinerConfig.DEFAULT_VEIN_POWER, + MinerConfig.MAX_VEIN_POWER + ); + } +} diff --git a/Gameplay/minecrafter/src/main/java/fr/koka/miner/VeinMiningManager.java b/Gameplay/minecrafter/src/main/java/fr/koka/miner/VeinMiningManager.java new file mode 100755 index 0000000..bacd87f --- /dev/null +++ b/Gameplay/minecrafter/src/main/java/fr/koka/miner/VeinMiningManager.java @@ -0,0 +1,78 @@ +package fr.koka.miner; + +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; +import java.util.UUID; + +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents; +import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry; +import net.fabricmc.fabric.api.networking.v1.ServerPlayConnectionEvents; +import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; +import net.minecraft.server.level.ServerPlayer; + +public final class VeinMiningManager { + private static final Map SESSIONS = new HashMap<>(); + + private VeinMiningManager() { + } + + public static void register() { + PayloadTypeRegistry.serverboundPlay().register(MinerMiningPayload.ID, MinerMiningPayload.CODEC); + ServerPlayNetworking.registerGlobalReceiver(MinerMiningPayload.ID, (payload, context) -> { + if (payload.active()) { + startOrUpdateSession(context.player(), payload.origin(), payload.power()); + } else { + stopSession(context.player().getUUID()); + } + }); + + ServerPlayConnectionEvents.DISCONNECT.register((handler, server) -> { + stopSession(handler.player.getUUID()); + }); + + ServerTickEvents.END_SERVER_TICK.register(server -> tickSessions()); + } + + private static void startOrUpdateSession(ServerPlayer player, net.minecraft.core.BlockPos origin, int veinPower) { + GroupMiningSession currentSession = SESSIONS.get(player.getUUID()); + + if (currentSession != null && currentSession.matches(origin, veinPower)) { + return; + } + + stopSession(player.getUUID()); + + GroupMiningSession nextSession = GroupMiningSession.create(player, origin, veinPower); + + if (nextSession == null) { + return; + } + + if (player.isCreative()) { + nextSession.breakInstantly(); + } else { + SESSIONS.put(player.getUUID(), nextSession); + } + } + + private static void tickSessions() { + Iterator> iterator = SESSIONS.entrySet().iterator(); + + while (iterator.hasNext()) { + Map.Entry entry = iterator.next(); + + if (!entry.getValue().tick()) { + iterator.remove(); + } + } + } + + private static void stopSession(UUID playerId) { + GroupMiningSession session = SESSIONS.remove(playerId); + + if (session != null) { + session.stop(); + } + } +} diff --git a/Gameplay/minecrafter/src/main/java/fr/koka/miner/VeinSelection.java b/Gameplay/minecrafter/src/main/java/fr/koka/miner/VeinSelection.java new file mode 100755 index 0000000..cd0ca3f --- /dev/null +++ b/Gameplay/minecrafter/src/main/java/fr/koka/miner/VeinSelection.java @@ -0,0 +1,98 @@ +package fr.koka.miner; + +import java.util.ArrayDeque; +import java.util.LinkedHashSet; +import java.util.List; + +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; + +public final class VeinSelection { + private VeinSelection() { + } + + public static List collectPreview(Level level, BlockPos origin, BlockState originState) { + return collectPreview(level, origin, originState, MinerConfig.DEFAULT_VEIN_POWER); + } + + public static List collectPreview(Level level, BlockPos origin, BlockState originState, int maxBlocks) { + return collect(level, origin, originState, MinerConfig.SEARCH_RADIUS, MinerConfig.clampVeinPower(maxBlocks), true); + } + + public static List collectAfterBreak(Level level, BlockPos origin, BlockState originState) { + return collectAfterBreak(level, origin, originState, MinerConfig.DEFAULT_VEIN_POWER); + } + + public static List collectAfterBreak(Level level, BlockPos origin, BlockState originState, int maxBlocks) { + return collect(level, origin, originState, MinerConfig.SEARCH_RADIUS, Math.max(0, MinerConfig.clampVeinPower(maxBlocks) - 1), false); + } + + private static List collect(Level level, BlockPos origin, BlockState originState, int radius, int limit, boolean includeOrigin) { + if (limit <= 0 || originState.isAir() || originState.hasBlockEntity()) { + return List.of(); + } + + Block targetBlock = originState.getBlock(); + LinkedHashSet selected = new LinkedHashSet<>(); + ArrayDeque frontier = new ArrayDeque<>(); + + if (includeOrigin && matches(level, origin, targetBlock)) { + selected.add(origin); + frontier.add(origin); + } else { + seedNeighbors(level, origin, targetBlock, radius, limit, selected, frontier); + } + + while (!frontier.isEmpty() && selected.size() < limit) { + BlockPos current = frontier.removeFirst(); + + for (Direction direction : Direction.values()) { + BlockPos next = current.relative(direction); + + if (!isWithinRadius(origin, next, radius) || selected.contains(next) || !matches(level, next, targetBlock)) { + continue; + } + + selected.add(next); + frontier.addLast(next); + + if (selected.size() >= limit) { + break; + } + } + } + + return List.copyOf(selected); + } + + private static void seedNeighbors(Level level, BlockPos origin, Block targetBlock, int radius, int limit, LinkedHashSet selected, ArrayDeque frontier) { + for (Direction direction : Direction.values()) { + if (selected.size() >= limit) { + return; + } + + BlockPos next = origin.relative(direction); + + if (!isWithinRadius(origin, next, radius) || !matches(level, next, targetBlock) || selected.contains(next)) { + continue; + } + + selected.add(next); + frontier.addLast(next); + } + } + + private static boolean matches(Level level, BlockPos pos, Block targetBlock) { + BlockState state = level.getBlockState(pos); + return !state.isAir() && !state.hasBlockEntity() && state.is(targetBlock); + } + + private static boolean isWithinRadius(BlockPos origin, BlockPos candidate, int radius) { + return Math.abs(candidate.getX() - origin.getX()) <= radius + && Math.abs(candidate.getY() - origin.getY()) <= radius + && Math.abs(candidate.getZ() - origin.getZ()) <= radius; + } +} diff --git a/Gameplay/minecrafter/src/main/java/fr/koka/view/config/ViewConfig.java b/Gameplay/minecrafter/src/main/java/fr/koka/view/config/ViewConfig.java new file mode 100755 index 0000000..71d3967 --- /dev/null +++ b/Gameplay/minecrafter/src/main/java/fr/koka/view/config/ViewConfig.java @@ -0,0 +1,88 @@ +package fr.koka.view.config; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import net.fabricmc.loader.api.FabricLoader; +import net.minecraft.util.Mth; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.IOException; +import java.io.Reader; +import java.io.Writer; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; + +public final class ViewConfig { + private static final Logger LOGGER = LoggerFactory.getLogger("view"); + private static final Gson GSON = new GsonBuilder().setPrettyPrinting().create(); + private static final Path CONFIG_PATH = FabricLoader.getInstance().getConfigDir().resolve("view.json"); + + private double telephotoFov = 10.0D; + private double quickProFov = 110.0D; + private double scrollStep = 5.0D; + private boolean invertScroll = false; + private boolean showActionBarValue = true; + + public static ViewConfig load() { + ViewConfig config = null; + + if (Files.exists(CONFIG_PATH)) { + try (Reader reader = Files.newBufferedReader(CONFIG_PATH, StandardCharsets.UTF_8)) { + config = GSON.fromJson(reader, ViewConfig.class); + } catch (IOException exception) { + LOGGER.warn("Unable to read {}, using defaults.", CONFIG_PATH, exception); + } + } + + if (config == null) { + config = new ViewConfig(); + } + + config.normalize(); + config.save(); + return config; + } + + public double telephotoFov() { + return this.telephotoFov; + } + + public double quickProFov() { + return this.quickProFov; + } + + public double scrollStep() { + return this.scrollStep; + } + + public boolean invertScroll() { + return this.invertScroll; + } + + public boolean showActionBarValue() { + return this.showActionBarValue; + } + + public double clamp(double value) { + return Mth.clamp(value, this.telephotoFov, this.quickProFov); + } + + private void normalize() { + this.telephotoFov = Mth.clamp(this.telephotoFov, 1.0D, 170.0D); + this.quickProFov = Mth.clamp(this.quickProFov, this.telephotoFov, 170.0D); + this.scrollStep = Mth.clamp(this.scrollStep, 0.5D, 40.0D); + } + + private void save() { + try { + Files.createDirectories(CONFIG_PATH.getParent()); + try (Writer writer = Files.newBufferedWriter(CONFIG_PATH, StandardCharsets.UTF_8)) { + GSON.toJson(this, writer); + } + } catch (IOException exception) { + LOGGER.warn("Unable to write {}", CONFIG_PATH, exception); + } + } +} diff --git a/Gameplay/minecrafter/src/main/java/fr/koka99cab/minecrafter/MinecrafterMod.java b/Gameplay/minecrafter/src/main/java/fr/koka99cab/minecrafter/MinecrafterMod.java new file mode 100644 index 0000000..15cf737 --- /dev/null +++ b/Gameplay/minecrafter/src/main/java/fr/koka99cab/minecrafter/MinecrafterMod.java @@ -0,0 +1,19 @@ +package fr.koka99cab.minecrafter; + +import fr.koka.builder.BuilderMod; +import fr.koka.miner.MinerMod; +import net.fabricmc.api.ModInitializer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class MinecrafterMod implements ModInitializer { + public static final String MOD_ID = "minecrafter"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + new BuilderMod().onInitialize(); + new MinerMod().onInitialize(); + LOGGER.info("Minecrafter charge pour Minecraft 26.1.2."); + } +} diff --git a/Gameplay/minecrafter/src/main/resources/assets/builder/icon.png b/Gameplay/minecrafter/src/main/resources/assets/builder/icon.png new file mode 100644 index 0000000..6cf5ca1 Binary files /dev/null and b/Gameplay/minecrafter/src/main/resources/assets/builder/icon.png differ diff --git a/Gameplay/minecrafter/src/main/resources/assets/builder/lang/en_us.json b/Gameplay/minecrafter/src/main/resources/assets/builder/lang/en_us.json new file mode 100755 index 0000000..3534942 --- /dev/null +++ b/Gameplay/minecrafter/src/main/resources/assets/builder/lang/en_us.json @@ -0,0 +1,5 @@ +{ + "key.categories.builder.builder": "Builder", + "key.builder.build_mode": "Area Build", + "message.builder.build_power": "Builder power: %s (diameter %s)" +} diff --git a/Gameplay/minecrafter/src/main/resources/assets/builder/lang/fr_fr.json b/Gameplay/minecrafter/src/main/resources/assets/builder/lang/fr_fr.json new file mode 100755 index 0000000..bf6a3a5 --- /dev/null +++ b/Gameplay/minecrafter/src/main/resources/assets/builder/lang/fr_fr.json @@ -0,0 +1,5 @@ +{ + "key.categories.builder.builder": "Builder", + "key.builder.build_mode": "Build de zone", + "message.builder.build_power": "Puissance builder : %s (diametre %s)" +} diff --git a/Gameplay/minecrafter/src/main/resources/assets/heartoverlay/icon.png b/Gameplay/minecrafter/src/main/resources/assets/heartoverlay/icon.png new file mode 100755 index 0000000..4961e4f Binary files /dev/null and b/Gameplay/minecrafter/src/main/resources/assets/heartoverlay/icon.png differ diff --git a/Gameplay/minecrafter/src/main/resources/assets/heartoverlay/textures/gui/hearts.png b/Gameplay/minecrafter/src/main/resources/assets/heartoverlay/textures/gui/hearts.png new file mode 100755 index 0000000..ca6d12c Binary files /dev/null and b/Gameplay/minecrafter/src/main/resources/assets/heartoverlay/textures/gui/hearts.png differ diff --git a/Gameplay/minecrafter/src/main/resources/assets/minecrafter/icon.png b/Gameplay/minecrafter/src/main/resources/assets/minecrafter/icon.png new file mode 100644 index 0000000..3597ac5 Binary files /dev/null and b/Gameplay/minecrafter/src/main/resources/assets/minecrafter/icon.png differ diff --git a/Gameplay/minecrafter/src/main/resources/assets/minecrafter/lang/en_us.json b/Gameplay/minecrafter/src/main/resources/assets/minecrafter/lang/en_us.json new file mode 100644 index 0000000..3ab5491 --- /dev/null +++ b/Gameplay/minecrafter/src/main/resources/assets/minecrafter/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.minecrafter": "Minecrafter", + "modmenu.descriptionTranslation.minecrafter": "Combines Builder, Miner, Previewer, View, and Heart Overlay into one Fabric gameplay mod." +} diff --git a/Gameplay/minecrafter/src/main/resources/assets/minecrafter/lang/fr_fr.json b/Gameplay/minecrafter/src/main/resources/assets/minecrafter/lang/fr_fr.json new file mode 100644 index 0000000..8fc20f6 --- /dev/null +++ b/Gameplay/minecrafter/src/main/resources/assets/minecrafter/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.minecrafter": "Minecrafter", + "modmenu.descriptionTranslation.minecrafter": "Combine Builder, Miner, Previewer, View et Heart Overlay dans un seul mod de gameplay Fabric." +} diff --git a/Gameplay/minecrafter/src/main/resources/assets/miner/icon.png b/Gameplay/minecrafter/src/main/resources/assets/miner/icon.png new file mode 100644 index 0000000..907dd9a Binary files /dev/null and b/Gameplay/minecrafter/src/main/resources/assets/miner/icon.png differ diff --git a/Gameplay/minecrafter/src/main/resources/assets/miner/lang/en_us.json b/Gameplay/minecrafter/src/main/resources/assets/miner/lang/en_us.json new file mode 100755 index 0000000..bc8d104 --- /dev/null +++ b/Gameplay/minecrafter/src/main/resources/assets/miner/lang/en_us.json @@ -0,0 +1,5 @@ +{ + "key.categories.miner.miner": "Miner", + "key.miner.vein_mode": "Vein Mining Preview", + "message.miner.vein_power": "Veinmine power: %s" +} diff --git a/Gameplay/minecrafter/src/main/resources/assets/miner/lang/fr_fr.json b/Gameplay/minecrafter/src/main/resources/assets/miner/lang/fr_fr.json new file mode 100755 index 0000000..c36407a --- /dev/null +++ b/Gameplay/minecrafter/src/main/resources/assets/miner/lang/fr_fr.json @@ -0,0 +1,5 @@ +{ + "key.categories.miner.miner": "Miner", + "key.miner.vein_mode": "Apercu de veine", + "message.miner.vein_power": "Puissance veinmine : %s" +} diff --git a/Gameplay/minecrafter/src/main/resources/assets/previewer/icon.png b/Gameplay/minecrafter/src/main/resources/assets/previewer/icon.png new file mode 100644 index 0000000..1ca340e Binary files /dev/null and b/Gameplay/minecrafter/src/main/resources/assets/previewer/icon.png differ diff --git a/Gameplay/minecrafter/src/main/resources/assets/view/icon.png b/Gameplay/minecrafter/src/main/resources/assets/view/icon.png new file mode 100644 index 0000000..aad787d Binary files /dev/null and b/Gameplay/minecrafter/src/main/resources/assets/view/icon.png differ diff --git a/Gameplay/minecrafter/src/main/resources/assets/view/lang/en_us.json b/Gameplay/minecrafter/src/main/resources/assets/view/lang/en_us.json new file mode 100755 index 0000000..24d898c --- /dev/null +++ b/Gameplay/minecrafter/src/main/resources/assets/view/lang/en_us.json @@ -0,0 +1,6 @@ +{ + "key.category.view": "View", + "key.view.activate": "View lens", + "message.view.fov": "View FOV: %s" +} + diff --git a/Gameplay/minecrafter/src/main/resources/assets/view/lang/fr_fr.json b/Gameplay/minecrafter/src/main/resources/assets/view/lang/fr_fr.json new file mode 100755 index 0000000..ebbb351 --- /dev/null +++ b/Gameplay/minecrafter/src/main/resources/assets/view/lang/fr_fr.json @@ -0,0 +1,6 @@ +{ + "key.category.view": "View", + "key.view.activate": "Lentille View", + "message.view.fov": "FOV View : %s" +} + diff --git a/Gameplay/minecrafter/src/main/resources/fabric.mod.json b/Gameplay/minecrafter/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..13ec145 --- /dev/null +++ b/Gameplay/minecrafter/src/main/resources/fabric.mod.json @@ -0,0 +1,41 @@ +{ + "schemaVersion": 1, + "id": "minecrafter", + "version": "${version}", + "name": "Minecrafter", + "description": "Combines Builder, Miner, Previewer, View, and Heart Overlay into one Fabric gameplay mod for Minecraft 26.1.2, adding area building, vein mining, placement previews, adjustable zoom, and mob health hearts.", + "icon": "assets/minecrafter/icon.png", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.minecrafter.MinecrafterMod" + ], + "client": [ + "fr.koka99cab.minecrafter.client.MinecrafterClient" + ] + }, + "mixins": [ + { + "config": "builder.client.mixins.json", + "environment": "client" + }, + { + "config": "miner.client.mixins.json", + "environment": "client" + }, + { + "config": "view.mixins.json", + "environment": "client" + } + ], + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Gameplay/realtime/.gitignore b/Gameplay/realtime/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Gameplay/realtime/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Gameplay/realtime/build.gradle b/Gameplay/realtime/build.gradle new file mode 100644 index 0000000..b171ca5 --- /dev/null +++ b/Gameplay/realtime/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "realtime" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Gameplay/realtime/gradle.properties b/Gameplay/realtime/gradle.properties new file mode 100644 index 0000000..79340f5 --- /dev/null +++ b/Gameplay/realtime/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=realtime + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Gameplay/realtime/gradle/wrapper/gradle-wrapper.jar b/Gameplay/realtime/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Gameplay/realtime/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Gameplay/realtime/gradle/wrapper/gradle-wrapper.properties b/Gameplay/realtime/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Gameplay/realtime/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Gameplay/realtime/gradlew b/Gameplay/realtime/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Gameplay/realtime/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Gameplay/realtime/gradlew.bat b/Gameplay/realtime/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Gameplay/realtime/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Gameplay/realtime/minecraft_title.png b/Gameplay/realtime/minecraft_title.png new file mode 100644 index 0000000..500dbd4 Binary files /dev/null and b/Gameplay/realtime/minecraft_title.png differ diff --git a/Gameplay/realtime/settings.gradle b/Gameplay/realtime/settings.gradle new file mode 100644 index 0000000..a678ec6 --- /dev/null +++ b/Gameplay/realtime/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "realtime" diff --git a/Gameplay/realtime/src/client/java/fr/koka99cab/realtime/client/RealtimeClient.java b/Gameplay/realtime/src/client/java/fr/koka99cab/realtime/client/RealtimeClient.java new file mode 100644 index 0000000..1f37ba8 --- /dev/null +++ b/Gameplay/realtime/src/client/java/fr/koka99cab/realtime/client/RealtimeClient.java @@ -0,0 +1,11 @@ +package fr.koka99cab.realtime.client; + +import net.fabricmc.api.ClientModInitializer; +import fr.koka99cab.realtime.RealtimeMod; + +public class RealtimeClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + RealtimeMod.LOGGER.info("Realtime client initialise."); + } +} diff --git a/Gameplay/realtime/src/main/java/fr/koka99cab/realtime/RealtimeMod.java b/Gameplay/realtime/src/main/java/fr/koka99cab/realtime/RealtimeMod.java new file mode 100644 index 0000000..2bfa09f --- /dev/null +++ b/Gameplay/realtime/src/main/java/fr/koka99cab/realtime/RealtimeMod.java @@ -0,0 +1,257 @@ +package fr.koka99cab.realtime; + +import java.time.Duration; +import java.time.LocalDate; +import java.time.LocalTime; +import java.time.ZoneId; +import java.time.ZonedDateTime; + +import com.mojang.brigadier.Command; +import com.mojang.brigadier.context.CommandContext; +import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; +import net.minecraft.core.Holder; +import net.minecraft.core.registries.Registries; +import net.minecraft.network.chat.Component; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.permissions.Permissions; +import net.minecraft.world.clock.WorldClock; +import net.minecraft.world.clock.WorldClocks; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class RealtimeMod implements ModInitializer { + public static final String MOD_ID = "realtime"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + private static final long MINECRAFT_DAY_TICKS = 24000L; + private static final long REAL_DAY_SECONDS = 24L * 60L * 60L; + private static final long MINECRAFT_DAY_START_SECONDS = 6L * 60L * 60L; + private static final int SYNC_INTERVAL_TICKS = 20; + private static final float REALTIME_CLOCK_RATE = 1.0F / 72.0F; + private static final float VANILLA_CLOCK_RATE = 1.0F; + private static final long MINECRAFT_SUNSET_TICKS = 12000L; + private static final double SERVER_TICKS_PER_SECOND = 20.0D; + private static final double FRANCE_REFERENCE_LATITUDE = 48.8566D; + private static final double FRANCE_REFERENCE_LONGITUDE = 2.3522D; + private static final double OFFICIAL_SUN_ZENITH_DEGREES = 90.833D; + private static final int SECONDS_PER_DAY = 24 * 60 * 60; + + private static boolean realtimeEnabled = true; + + @Override + public void onInitialize() { + registerCommands(); + ServerTickEvents.END_SERVER_TICK.register(RealtimeMod::syncServerTime); + LOGGER.info("Realtime charge: le cycle jour/nuit suit l'heure locale du serveur."); + } + + private static void registerCommands() { + CommandRegistrationCallback.EVENT.register((dispatcher, registryAccess, environment) -> dispatcher.register( + Commands.literal("realtime") + .executes(RealtimeMod::showStatus) + .then(Commands.literal("status") + .executes(RealtimeMod::showStatus)) + .then(Commands.literal("disable") + .requires(source -> source.permissions().hasPermission(Permissions.COMMANDS_GAMEMASTER)) + .executes(context -> setRealtimeEnabled(context, false))) + .then(Commands.literal("off") + .requires(source -> source.permissions().hasPermission(Permissions.COMMANDS_GAMEMASTER)) + .executes(context -> setRealtimeEnabled(context, false))) + .then(Commands.literal("desactiver") + .requires(source -> source.permissions().hasPermission(Permissions.COMMANDS_GAMEMASTER)) + .executes(context -> setRealtimeEnabled(context, false))) + .then(Commands.literal("enable") + .requires(source -> source.permissions().hasPermission(Permissions.COMMANDS_GAMEMASTER)) + .executes(context -> setRealtimeEnabled(context, true))) + .then(Commands.literal("on") + .requires(source -> source.permissions().hasPermission(Permissions.COMMANDS_GAMEMASTER)) + .executes(context -> setRealtimeEnabled(context, true))) + .then(Commands.literal("activer") + .requires(source -> source.permissions().hasPermission(Permissions.COMMANDS_GAMEMASTER)) + .executes(context -> setRealtimeEnabled(context, true))) + )); + } + + private static void syncServerTime(MinecraftServer server) { + if (!realtimeEnabled) { + return; + } + + if (server.getTickCount() % SYNC_INTERVAL_TICKS != 0) { + return; + } + + applyRealtimeClock(server); + } + + private static int showStatus(CommandContext context) { + ZoneId zone = ZoneId.systemDefault(); + SolarDay solarDay = calculateSolarDay(LocalDate.now(zone), zone); + String status = realtimeEnabled ? "active" : "desactive"; + String solarStatus = solarDay == null + ? "" + : " Lever: " + formatTime(solarDay.sunrise()) + ", coucher: " + formatTime(solarDay.sunset()) + "."; + context.getSource().sendSuccess(() -> Component.literal("Realtime est " + status + "." + solarStatus), false); + return Command.SINGLE_SUCCESS; + } + + private static int setRealtimeEnabled(CommandContext context, boolean enabled) { + CommandSourceStack source = context.getSource(); + + if (realtimeEnabled == enabled) { + String status = enabled ? "deja active" : "deja desactive"; + source.sendSuccess(() -> Component.literal("Realtime est " + status + "."), false); + return Command.SINGLE_SUCCESS; + } + + realtimeEnabled = enabled; + if (enabled) { + applyRealtimeClock(source.getServer()); + source.sendSuccess(() -> Component.literal("Realtime active: le cycle suit l'heure locale du serveur."), true); + } else { + restoreVanillaClockRate(source.getServer()); + source.sendSuccess(() -> Component.literal("Realtime desactive: le temps Minecraft reprend son rythme normal."), true); + } + + return Command.SINGLE_SUCCESS; + } + + private static void applyRealtimeClock(MinecraftServer server) { + SolarClockPosition position = toSolarClockPosition(ZonedDateTime.now(ZoneId.systemDefault())); + Holder overworldClock = server.registryAccess() + .lookupOrThrow(Registries.WORLD_CLOCK) + .getOrThrow(WorldClocks.OVERWORLD); + + server.clockManager().setRate(overworldClock, position.rate()); + server.clockManager().setTotalTicks(overworldClock, position.ticks()); + } + + private static void restoreVanillaClockRate(MinecraftServer server) { + Holder overworldClock = server.registryAccess() + .lookupOrThrow(Registries.WORLD_CLOCK) + .getOrThrow(WorldClocks.OVERWORLD); + + server.clockManager().setRate(overworldClock, VANILLA_CLOCK_RATE); + } + + private static long toMinecraftDayTicks(LocalTime time) { + long secondsAfterMinecraftDayStart = Math.floorMod( + time.toSecondOfDay() - MINECRAFT_DAY_START_SECONDS, + REAL_DAY_SECONDS + ); + + return secondsAfterMinecraftDayStart * MINECRAFT_DAY_TICKS / REAL_DAY_SECONDS; + } + + private static SolarClockPosition toSolarClockPosition(ZonedDateTime now) { + ZoneId zone = now.getZone(); + LocalDate today = now.toLocalDate(); + SolarDay todaySun = calculateSolarDay(today, zone); + if (todaySun == null) { + return fallbackClockPosition(now.toLocalTime()); + } + + if (now.isBefore(todaySun.sunrise())) { + SolarDay yesterdaySun = calculateSolarDay(today.minusDays(1L), zone); + if (yesterdaySun == null) { + return fallbackClockPosition(now.toLocalTime()); + } + + return mapSolarSegment(now, yesterdaySun.sunset(), todaySun.sunrise(), MINECRAFT_SUNSET_TICKS, MINECRAFT_DAY_TICKS); + } + + if (now.isBefore(todaySun.sunset())) { + return mapSolarSegment(now, todaySun.sunrise(), todaySun.sunset(), 0L, MINECRAFT_SUNSET_TICKS); + } + + SolarDay tomorrowSun = calculateSolarDay(today.plusDays(1L), zone); + if (tomorrowSun == null) { + return fallbackClockPosition(now.toLocalTime()); + } + + return mapSolarSegment(now, todaySun.sunset(), tomorrowSun.sunrise(), MINECRAFT_SUNSET_TICKS, MINECRAFT_DAY_TICKS); + } + + private static SolarClockPosition mapSolarSegment( + ZonedDateTime now, + ZonedDateTime segmentStart, + ZonedDateTime segmentEnd, + long startTicks, + long endTicks + ) { + long totalMillis = Duration.between(segmentStart, segmentEnd).toMillis(); + if (totalMillis <= 0L) { + return fallbackClockPosition(now.toLocalTime()); + } + + long elapsedMillis = Math.clamp(Duration.between(segmentStart, now).toMillis(), 0L, totalMillis); + double progress = elapsedMillis / (double) totalMillis; + double ticks = startTicks + (progress * (endTicks - startTicks)); + float rate = (float) ((endTicks - startTicks) / ((totalMillis / 1000.0D) * SERVER_TICKS_PER_SECOND)); + + return new SolarClockPosition(Math.floorMod((long) ticks, MINECRAFT_DAY_TICKS), rate); + } + + private static SolarClockPosition fallbackClockPosition(LocalTime time) { + return new SolarClockPosition(toMinecraftDayTicks(time), REALTIME_CLOCK_RATE); + } + + private static SolarDay calculateSolarDay(LocalDate date, ZoneId zone) { + double gamma = 2.0D * Math.PI / date.lengthOfYear() * (date.getDayOfYear() - 1.0D); + double equationOfTime = 229.18D * ( + 0.000075D + + 0.001868D * Math.cos(gamma) + - 0.032077D * Math.sin(gamma) + - 0.014615D * Math.cos(2.0D * gamma) + - 0.040849D * Math.sin(2.0D * gamma) + ); + double solarDeclination = 0.006918D + - 0.399912D * Math.cos(gamma) + + 0.070257D * Math.sin(gamma) + - 0.006758D * Math.cos(2.0D * gamma) + + 0.000907D * Math.sin(2.0D * gamma) + - 0.002697D * Math.cos(3.0D * gamma) + + 0.00148D * Math.sin(3.0D * gamma); + + double latitudeRadians = Math.toRadians(FRANCE_REFERENCE_LATITUDE); + double sunZenithRadians = Math.toRadians(OFFICIAL_SUN_ZENITH_DEGREES); + double hourAngleCos = (Math.cos(sunZenithRadians) / (Math.cos(latitudeRadians) * Math.cos(solarDeclination))) + - Math.tan(latitudeRadians) * Math.tan(solarDeclination); + if (hourAngleCos < -1.0D || hourAngleCos > 1.0D) { + return null; + } + + double hourAngleDegrees = Math.toDegrees(Math.acos(hourAngleCos)); + int timezoneOffsetMinutes = zone.getRules().getOffset(date.atTime(12, 0)).getTotalSeconds() / 60; + double solarNoonMinutes = 720.0D - (4.0D * FRANCE_REFERENCE_LONGITUDE) - equationOfTime + timezoneOffsetMinutes; + double sunriseMinutes = solarNoonMinutes - (4.0D * hourAngleDegrees); + double sunsetMinutes = solarNoonMinutes + (4.0D * hourAngleDegrees); + + return new SolarDay( + toZonedDateTime(date, zone, sunriseMinutes), + toZonedDateTime(date, zone, sunsetMinutes) + ); + } + + private static ZonedDateTime toZonedDateTime(LocalDate date, ZoneId zone, double minutesFromMidnight) { + long secondsFromMidnight = Math.round(minutesFromMidnight * 60.0D); + LocalDate adjustedDate = date.plusDays(Math.floorDiv(secondsFromMidnight, SECONDS_PER_DAY)); + int secondOfDay = (int) Math.floorMod(secondsFromMidnight, SECONDS_PER_DAY); + + return adjustedDate.atStartOfDay(zone).plusSeconds(secondOfDay); + } + + private static String formatTime(ZonedDateTime time) { + return String.format("%02d:%02d", time.getHour(), time.getMinute()); + } + + private record SolarDay(ZonedDateTime sunrise, ZonedDateTime sunset) { + } + + private record SolarClockPosition(long ticks, float rate) { + } +} diff --git a/Gameplay/realtime/src/main/resources/assets/realtime/icon.png b/Gameplay/realtime/src/main/resources/assets/realtime/icon.png new file mode 100644 index 0000000..500dbd4 Binary files /dev/null and b/Gameplay/realtime/src/main/resources/assets/realtime/icon.png differ diff --git a/Gameplay/realtime/src/main/resources/assets/realtime/lang/en_us.json b/Gameplay/realtime/src/main/resources/assets/realtime/lang/en_us.json new file mode 100644 index 0000000..54b2236 --- /dev/null +++ b/Gameplay/realtime/src/main/resources/assets/realtime/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.realtime": "Realtime", + "modmenu.descriptionTranslation.realtime": "Synchronizes the Minecraft day-night cycle with the server's local time." +} diff --git a/Gameplay/realtime/src/main/resources/assets/realtime/lang/fr_fr.json b/Gameplay/realtime/src/main/resources/assets/realtime/lang/fr_fr.json new file mode 100644 index 0000000..d393e41 --- /dev/null +++ b/Gameplay/realtime/src/main/resources/assets/realtime/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.realtime": "Realtime", + "modmenu.descriptionTranslation.realtime": "Synchronise le cycle jour/nuit Minecraft avec l'heure locale du serveur." +} diff --git a/Gameplay/realtime/src/main/resources/fabric.mod.json b/Gameplay/realtime/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..db0e4c1 --- /dev/null +++ b/Gameplay/realtime/src/main/resources/fabric.mod.json @@ -0,0 +1,27 @@ +{ + "schemaVersion": 1, + "id": "realtime", + "version": "${version}", + "name": "Realtime", + "description": "Synchronizes the Minecraft day-night cycle with the server's local time.", + "icon": "assets/realtime/icon.png", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.realtime.RealtimeMod" + ], + "client": [ + "fr.koka99cab.realtime.client.RealtimeClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Graphics/ambiance/.gitignore b/Graphics/ambiance/.gitignore new file mode 100644 index 0000000..67a816f --- /dev/null +++ b/Graphics/ambiance/.gitignore @@ -0,0 +1,38 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Local reference assets +/golden-days-base-*.zip +/hw-ambiance.png + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Graphics/ambiance/build.gradle b/Graphics/ambiance/build.gradle new file mode 100644 index 0000000..8951f7f --- /dev/null +++ b/Graphics/ambiance/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "ambiance" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Graphics/ambiance/gradle.properties b/Graphics/ambiance/gradle.properties new file mode 100644 index 0000000..402f3dc --- /dev/null +++ b/Graphics/ambiance/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=ambiance + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Graphics/ambiance/gradle/wrapper/gradle-wrapper.jar b/Graphics/ambiance/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Graphics/ambiance/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Graphics/ambiance/gradle/wrapper/gradle-wrapper.properties b/Graphics/ambiance/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Graphics/ambiance/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Graphics/ambiance/gradlew b/Graphics/ambiance/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Graphics/ambiance/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Graphics/ambiance/gradlew.bat b/Graphics/ambiance/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Graphics/ambiance/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Graphics/ambiance/settings.gradle b/Graphics/ambiance/settings.gradle new file mode 100644 index 0000000..0be3b54 --- /dev/null +++ b/Graphics/ambiance/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "ambiance" diff --git a/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/client/AmbianceBiomeTints.java b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/client/AmbianceBiomeTints.java new file mode 100644 index 0000000..ccdbc7e --- /dev/null +++ b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/client/AmbianceBiomeTints.java @@ -0,0 +1,99 @@ +package fr.koka99cab.ambiance.client; + +import net.fabricmc.fabric.api.client.rendering.v1.ColorResolverRegistry; +import net.minecraft.client.color.block.BlockTintSource; +import net.minecraft.client.renderer.block.BlockAndTintGetter; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.ColorResolver; +import net.minecraft.world.level.biome.Biome; +import net.minecraft.world.level.block.state.BlockState; + +public final class AmbianceBiomeTints { + private static final int BIRCH_LEAVES_COLOR = 0xFFB7FF36; + private static final int DEFAULT_GRASS_COLOR = 0xFF91BD59; + private static final int DEFAULT_FOLIAGE_COLOR = 0xFF48B518; + private static final int DEFAULT_WATER_COLOR = 0xFF3F76E4; + private static final int DEFAULT_LILY_PAD_COLOR = 0xFF208030; + private static final int SWAMP_LUSH_GRASS_COLOR = 0xFF8F7FCF; + private static final int SWAMP_MURKY_GRASS_COLOR = 0xFF68609D; + private static final int SWAMP_FOLIAGE_COLOR = 0xFF716EA6; + private static final int SWAMP_WATER_COLOR = 0xFF4C47B8; + private static final int SWAMP_WATER = 0x617B64; + private static final int MANGROVE_SWAMP_WATER = 0x3A7A6A; + private static final int VANILLA_SWAMP_LUSH_GRASS = 0x4C763C; + private static final int VANILLA_SWAMP_MURKY_GRASS = 0x6A7039; + private static final double SWAMP_NOISE_SCALE = 0.0225D; + private static final double SWAMP_LUSH_THRESHOLD = -0.1D; + + static final ColorResolver SWAMP_GRASS_RESOLVER = (biome, x, z) -> isSwamp(biome, x, z) ? swampGrassColor(x, z) : biome.getGrassColor(x, z); + static final ColorResolver SWAMP_FOLIAGE_RESOLVER = (biome, x, z) -> isSwamp(biome, x, z) ? SWAMP_FOLIAGE_COLOR : biome.getFoliageColor(); + static final ColorResolver SWAMP_WATER_RESOLVER = (biome, x, z) -> isSwamp(biome, x, z) ? SWAMP_WATER_COLOR : biome.getWaterColor(); + static final ColorResolver SWAMP_LILY_PAD_RESOLVER = (biome, x, z) -> isSwamp(biome, x, z) ? SWAMP_FOLIAGE_COLOR : DEFAULT_LILY_PAD_COLOR; + static final ColorResolver SWAMP_MASK_RESOLVER = (biome, x, z) -> isSwamp(biome, x, z) ? 0xFFFFFFFF : 0xFF000000; + + public static final BlockTintSource BIRCH_LEAVES = constant(BIRCH_LEAVES_COLOR); + public static final BlockTintSource GRASS = biomeTint(DEFAULT_GRASS_COLOR, SWAMP_GRASS_RESOLVER); + public static final BlockTintSource FOLIAGE = biomeTint(DEFAULT_FOLIAGE_COLOR, SWAMP_FOLIAGE_RESOLVER); + public static final BlockTintSource WATER = biomeTint(DEFAULT_WATER_COLOR, SWAMP_WATER_RESOLVER); + public static final BlockTintSource LILY_PAD = biomeTint(DEFAULT_LILY_PAD_COLOR, SWAMP_LILY_PAD_RESOLVER); + + private AmbianceBiomeTints() { + } + + public static void registerColorResolvers() { + registerColorResolver(SWAMP_GRASS_RESOLVER); + registerColorResolver(SWAMP_FOLIAGE_RESOLVER); + registerColorResolver(SWAMP_WATER_RESOLVER); + registerColorResolver(SWAMP_LILY_PAD_RESOLVER); + registerColorResolver(SWAMP_MASK_RESOLVER); + } + + private static BlockTintSource constant(int color) { + return new BlockTintSource() { + @Override + public int color(BlockState state) { + return color; + } + }; + } + + private static BlockTintSource biomeTint(int fallbackColor, ColorResolver resolver) { + return new BlockTintSource() { + @Override + public int color(BlockState state) { + return fallbackColor; + } + + @Override + public int colorInWorld(BlockState state, BlockAndTintGetter level, BlockPos pos) { + return level.getBlockTint(pos, resolver); + } + }; + } + + private static void registerColorResolver(ColorResolver resolver) { + if (!ColorResolverRegistry.isRegistered(resolver)) { + ColorResolverRegistry.register(resolver); + } + } + + private static boolean isSwamp(Biome biome, double x, double z) { + int waterColor = biome.getWaterColor() & 0xFFFFFF; + if (waterColor == MANGROVE_SWAMP_WATER) { + return false; + } + + return waterColor == SWAMP_WATER || isVanillaSwampGrassColor(biome.getGrassColor(x, z)); + } + + private static boolean isVanillaSwampGrassColor(int color) { + int rgb = color & 0xFFFFFF; + return rgb == VANILLA_SWAMP_LUSH_GRASS || rgb == VANILLA_SWAMP_MURKY_GRASS; + } + + @SuppressWarnings("removal") + private static int swampGrassColor(double x, double z) { + double swampNoise = Biome.BIOME_INFO_NOISE.getValue(x * SWAMP_NOISE_SCALE, z * SWAMP_NOISE_SCALE, false); + return swampNoise < SWAMP_LUSH_THRESHOLD ? SWAMP_LUSH_GRASS_COLOR : SWAMP_MURKY_GRASS_COLOR; + } +} diff --git a/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/client/AmbianceClient.java b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/client/AmbianceClient.java new file mode 100644 index 0000000..d7aa913 --- /dev/null +++ b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/client/AmbianceClient.java @@ -0,0 +1,58 @@ +package fr.koka99cab.ambiance.client; + +import fr.koka99cab.ambiance.AmbianceMod; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.render.fluid.v1.FluidRenderingRegistry; +import net.fabricmc.fabric.api.client.rendering.v1.BlockColorRegistry; +import net.minecraft.client.renderer.block.FluidModel; +import net.minecraft.client.resources.model.sprite.Material; +import net.minecraft.resources.Identifier; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.material.Fluids; + +import java.util.List; + +public class AmbianceClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + AmbianceBiomeTints.registerColorResolvers(); + registerWaterFluidTint(); + BlockColorRegistry.register(List.of(AmbianceBiomeTints.GRASS), + Blocks.GRASS_BLOCK, + Blocks.SHORT_GRASS, + Blocks.FERN, + Blocks.POTTED_FERN, + Blocks.BUSH, + Blocks.TALL_GRASS, + Blocks.LARGE_FERN, + Blocks.SUGAR_CANE + ); + BlockColorRegistry.register(List.of(AmbianceBiomeTints.FOLIAGE), + Blocks.OAK_LEAVES, + Blocks.JUNGLE_LEAVES, + Blocks.ACACIA_LEAVES, + Blocks.DARK_OAK_LEAVES, + Blocks.PALE_OAK_LEAVES, + Blocks.MANGROVE_LEAVES, + Blocks.VINE + ); + BlockColorRegistry.register(List.of(AmbianceBiomeTints.WATER), + Blocks.WATER, + Blocks.BUBBLE_COLUMN, + Blocks.WATER_CAULDRON + ); + BlockColorRegistry.register(List.of(AmbianceBiomeTints.LILY_PAD), Blocks.LILY_PAD); + BlockColorRegistry.register(List.of(AmbianceBiomeTints.BIRCH_LEAVES), Blocks.BIRCH_LEAVES); + AmbianceMod.LOGGER.info("Ambiance client initialise."); + } + + private static void registerWaterFluidTint() { + FluidModel.Unbaked waterModel = new FluidModel.Unbaked( + new Material(Identifier.withDefaultNamespace("block/water_still")), + new Material(Identifier.withDefaultNamespace("block/water_flow")), + new Material(Identifier.withDefaultNamespace("block/water_overlay")), + AmbianceBiomeTints.WATER + ); + FluidRenderingRegistry.register(Fluids.WATER, Fluids.FLOWING_WATER, waterModel); + } +} diff --git a/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/client/AmbianceEffects.java b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/client/AmbianceEffects.java new file mode 100644 index 0000000..d756f31 --- /dev/null +++ b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/client/AmbianceEffects.java @@ -0,0 +1,176 @@ +package fr.koka99cab.ambiance.client; + +import net.minecraft.client.Camera; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.fog.FogData; +import net.minecraft.client.renderer.state.LightmapRenderState; +import net.minecraft.core.BlockPos; +import net.minecraft.util.ARGB; +import net.minecraft.util.Mth; +import net.minecraft.world.attribute.EnvironmentAttributes; +import net.minecraft.world.level.material.FogType; +import org.joml.Vector3f; +import org.joml.Vector3fc; +import org.joml.Vector4f; + +public final class AmbianceEffects { + private static final float FULL_CIRCLE = (float) (Math.PI * 2.0); + private static final float DAY_LENGTH = 24000.0F; + private static final float DAY_FOG_INTENSITY = 1.5F; + private static final float NIGHT_FOG_INTENSITY = 2.0F; + private static final float MIN_CLOUD_HEIGHT = 288.0F; + private static final int SWAMP_FOG_SAMPLE_STEP = 24; + private static final int SWAMP_FOG_SAMPLE_RADIUS = 2; + + private AmbianceEffects() { + } + + public static void adjustFog(FogData fogData, Camera camera, int viewDistance, DeltaTracker deltaTracker, ClientLevel level) { + if (fogData == null || camera.getFluidInCamera() != FogType.NONE) { + return; + } + + float tickDelta = deltaTracker.getGameTimeDeltaPartialTick(false); + float renderDistance = Math.max(32.0F, viewDistance * 16.0F); + float night = nightFactor(level, tickDelta); + float rain = level.getRainLevel(tickDelta); + float thunder = level.getThunderLevel(tickDelta); + float weather = Mth.clamp(rain * 0.35F + thunder * 0.45F, 0.0F, 0.65F); + float pressure = Math.max(night * 0.25F, weather); + float fogIntensity = Mth.lerp(night, DAY_FOG_INTENSITY, NIGHT_FOG_INTENSITY); + + float fogStart = renderDistance * Mth.lerp(weather, 0.25F, 0.12F) / fogIntensity; + float fogEnd = renderDistance * Mth.lerp(pressure, 0.96F, 0.72F) / fogIntensity; + fogEnd = Math.max(fogStart + 16.0F, fogEnd); + + fogData.environmentalStart = fogStart; + fogData.environmentalEnd = fogEnd; + fogData.renderDistanceStart = fogStart; + fogData.renderDistanceEnd = Math.max(fogEnd, renderDistance / fogIntensity); + fogData.skyEnd = Math.min(fogData.skyEnd, renderDistance * Mth.lerp(night, 0.82F, 0.65F) / fogIntensity); + fogData.cloudEnd = Math.min(fogData.cloudEnd, renderDistance * 0.78F / fogIntensity); + + Vector4f color = fogData.color; + keepFogColorInVoid(color, camera, level, tickDelta); + float dim = Mth.clamp(1.0F - night * 0.48F - weather * 0.22F, 0.38F, 1.0F); + float saturation = 1.18F + night * 0.10F; + setAdjustedColor(color, saturation, dim); + float swamp = swampFogInfluence(level, camera.blockPosition()); + if (swamp > 0.01F) { + float purple = swamp * Mth.clamp(0.34F + weather * 0.14F + night * 0.06F, 0.0F, 0.54F); + color.set( + Mth.lerp(purple, color.x(), 0.56F), + Mth.lerp(purple, color.y(), 0.35F), + Mth.lerp(purple, color.z(), 0.76F), + color.w() + ); + } + } + + public static void adjustLightmap(LightmapRenderState state, float tickDelta) { + Minecraft minecraft = Minecraft.getInstance(); + ClientLevel level = minecraft.level; + if (level == null || minecraft.player == null || !state.needsUpdate) { + return; + } + + float nightVision = Mth.clamp(state.nightVisionEffectIntensity, 0.0F, 1.0F); + float night = nightFactor(level, tickDelta) * (1.0F - nightVision * 0.85F); + float rain = level.getRainLevel(tickDelta); + float thunder = level.getThunderLevel(tickDelta); + float weather = Mth.clamp(rain * 0.22F + thunder * 0.32F, 0.0F, 0.5F); + float skyDimming = Mth.clamp(1.0F - night * 0.72F - weather, 0.16F, 1.0F); + + state.skyFactor *= skyDimming; + state.ambientColor = adjustedColor(state.ambientColor, 1.14F, Mth.clamp(1.0F - night * 0.58F - weather * 0.18F, 0.24F, 1.0F)); + state.skyLightColor = adjustedColor(state.skyLightColor, 1.12F, Mth.clamp(1.0F - night * 0.36F - weather * 0.12F, 0.42F, 1.0F)); + state.blockLightTint = warmBlockLight(state.blockLightTint, night); + state.blockFactor *= Mth.lerp(night, 1.0F, 1.08F); + state.brightness = Math.min(state.brightness, Mth.lerp(night, 0.58F, 0.14F)); + } + + public static float adjustCloudHeight(float cloudHeight) { + return Math.max(cloudHeight, MIN_CLOUD_HEIGHT); + } + + private static float nightFactor(ClientLevel level, float tickDelta) { + if (!level.dimensionType().hasSkyLight() || level.dimensionType().hasFixedTime()) { + return 0.0F; + } + + float dayTime = (Math.floorMod(level.getDefaultClockTime(), 24000L) + tickDelta) / DAY_LENGTH; + float midnightWave = (float) Math.cos((dayTime - 0.75F) * FULL_CIRCLE); + return Mth.clamp((midnightWave - 0.02F) / 0.98F, 0.0F, 1.0F); + } + + private static float swampFogInfluence(ClientLevel level, BlockPos center) { + float total = 0.0F; + float weightTotal = 0.0F; + for (int x = -SWAMP_FOG_SAMPLE_RADIUS; x <= SWAMP_FOG_SAMPLE_RADIUS; x++) { + for (int z = -SWAMP_FOG_SAMPLE_RADIUS; z <= SWAMP_FOG_SAMPLE_RADIUS; z++) { + int distance = Math.abs(x) + Math.abs(z); + float weight = distance == 0 ? 4.0F : 1.0F / distance; + BlockPos sample = center.offset(x * SWAMP_FOG_SAMPLE_STEP, 0, z * SWAMP_FOG_SAMPLE_STEP); + int mask = level.getBlockTint(sample, AmbianceBiomeTints.SWAMP_MASK_RESOLVER); + total += ((mask >> 16) & 0xFF) / 255.0F * weight; + weightTotal += weight; + } + } + + float influence = Mth.clamp(total / weightTotal, 0.0F, 1.0F); + return influence * influence * (3.0F - 2.0F * influence); + } + + private static void keepFogColorInVoid(Vector4f color, Camera camera, ClientLevel level, float tickDelta) { + if (!level.dimensionType().hasSkyLight()) { + return; + } + + double cameraY = camera.position().y(); + float voidOnsetRange = level.getLevelData().voidDarknessOnsetRange(); + float voidDarkness = voidOnsetRange <= 0.0F + ? 0.0F + : Mth.clamp((level.getMinY() + voidOnsetRange - (float) cameraY) / voidOnsetRange, 0.0F, 1.0F); + + if (voidDarkness <= 0.0F) { + return; + } + + Vector4f fogColor = ARGB.vector4fFromARGB32(camera.attributeProbe().getValue(EnvironmentAttributes.FOG_COLOR, tickDelta)); + color.set(fogColor.x(), fogColor.y(), fogColor.z(), color.w()); + } + + private static void setAdjustedColor(Vector4f color, float saturation, float scale) { + Vector3f adjusted = adjustedColor(color.x(), color.y(), color.z(), saturation, scale); + color.set(adjusted.x(), adjusted.y(), adjusted.z(), color.w()); + } + + private static Vector3f adjustedColor(Vector3fc color, float saturation, float scale) { + return adjustedColor(color.x(), color.y(), color.z(), saturation, scale); + } + + private static Vector3f adjustedColor(float red, float green, float blue, float saturation, float scale) { + float luminance = red * 0.2126F + green * 0.7152F + blue * 0.0722F; + return new Vector3f( + clamp01((luminance + (red - luminance) * saturation) * scale), + clamp01((luminance + (green - luminance) * saturation) * scale), + clamp01((luminance + (blue - luminance) * saturation) * scale) + ); + } + + private static Vector3f warmBlockLight(Vector3fc color, float night) { + Vector3f saturated = adjustedColor(color, 1.10F, 1.03F); + float warmth = 0.12F + night * 0.10F; + return new Vector3f( + Mth.lerp(warmth, saturated.x(), 1.0F), + Mth.lerp(warmth, saturated.y(), 0.82F), + Mth.lerp(warmth, saturated.z(), 0.56F) + ); + } + + private static float clamp01(float value) { + return Mth.clamp(value, 0.0F, 1.0F); + } +} diff --git a/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/DeathScreenMixin.java b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/DeathScreenMixin.java new file mode 100644 index 0000000..ada0e87 --- /dev/null +++ b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/DeathScreenMixin.java @@ -0,0 +1,16 @@ +package fr.koka99cab.ambiance.mixin.client; + +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.client.gui.screens.DeathScreen; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(DeathScreen.class) +public abstract class DeathScreenMixin { + @Inject(method = "extractBackground", at = @At("HEAD"), cancellable = true) + private void ambiance$keepWorldVisibleOnDeath(GuiGraphicsExtractor graphics, int mouseX, int mouseY, float tickDelta, CallbackInfo ci) { + ci.cancel(); + } +} diff --git a/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/FogRendererMixin.java b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/FogRendererMixin.java new file mode 100644 index 0000000..e9ba0ae --- /dev/null +++ b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/FogRendererMixin.java @@ -0,0 +1,20 @@ +package fr.koka99cab.ambiance.mixin.client; + +import fr.koka99cab.ambiance.client.AmbianceEffects; +import net.minecraft.client.Camera; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.fog.FogData; +import net.minecraft.client.renderer.fog.FogRenderer; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(FogRenderer.class) +public abstract class FogRendererMixin { + @Inject(method = "setupFog", at = @At("RETURN")) + private void ambiance$deepenAtmosphericFog(Camera camera, int viewDistance, DeltaTracker deltaTracker, float bossOverlayDarkening, ClientLevel level, CallbackInfoReturnable cir) { + AmbianceEffects.adjustFog(cir.getReturnValue(), camera, viewDistance, deltaTracker, level); + } +} diff --git a/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/GameRendererMixin.java b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/GameRendererMixin.java new file mode 100644 index 0000000..deb24f5 --- /dev/null +++ b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/GameRendererMixin.java @@ -0,0 +1,30 @@ +package fr.koka99cab.ambiance.mixin.client; + +import fr.koka99cab.ambiance.AmbianceMod; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.renderer.GameRenderer; +import net.minecraft.resources.Identifier; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(GameRenderer.class) +public abstract class GameRendererMixin { + @Unique + private static final Identifier AMBIANCE_POST_EFFECT = Identifier.fromNamespaceAndPath(AmbianceMod.MOD_ID, "saturation"); + + @Shadow + private Identifier postEffectId; + + @Shadow + private boolean effectActive; + + @Inject(method = "renderLevel", at = @At("HEAD")) + private void ambiance$activateSaturationPostEffect(DeltaTracker deltaTracker, CallbackInfo ci) { + this.postEffectId = AMBIANCE_POST_EFFECT; + this.effectActive = true; + } +} diff --git a/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/LevelRendererMixin.java b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/LevelRendererMixin.java new file mode 100644 index 0000000..bdb0953 --- /dev/null +++ b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/LevelRendererMixin.java @@ -0,0 +1,25 @@ +package fr.koka99cab.ambiance.mixin.client; + +import fr.koka99cab.ambiance.client.AmbianceEffects; +import net.minecraft.client.Camera; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.client.renderer.state.level.LevelRenderState; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LevelRenderer.class) +public abstract class LevelRendererMixin { + @Shadow + @Final + private LevelRenderState levelRenderState; + + @Inject(method = "extractLevel", at = @At("TAIL")) + private void ambiance$raiseClouds(DeltaTracker deltaTracker, Camera camera, float tickDelta, CallbackInfo ci) { + this.levelRenderState.cloudHeight = AmbianceEffects.adjustCloudHeight(this.levelRenderState.cloudHeight); + } +} diff --git a/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/LightmapRenderStateExtractorMixin.java b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/LightmapRenderStateExtractorMixin.java new file mode 100644 index 0000000..75f88fb --- /dev/null +++ b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/LightmapRenderStateExtractorMixin.java @@ -0,0 +1,17 @@ +package fr.koka99cab.ambiance.mixin.client; + +import fr.koka99cab.ambiance.client.AmbianceEffects; +import net.minecraft.client.renderer.LightmapRenderStateExtractor; +import net.minecraft.client.renderer.state.LightmapRenderState; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LightmapRenderStateExtractor.class) +public abstract class LightmapRenderStateExtractorMixin { + @Inject(method = "extract", at = @At("TAIL")) + private void ambiance$darkenNightLightmap(LightmapRenderState state, float tickDelta, CallbackInfo ci) { + AmbianceEffects.adjustLightmap(state, tickDelta); + } +} diff --git a/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/SkyRendererMixin.java b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/SkyRendererMixin.java new file mode 100644 index 0000000..c096a23 --- /dev/null +++ b/Graphics/ambiance/src/client/java/fr/koka99cab/ambiance/mixin/client/SkyRendererMixin.java @@ -0,0 +1,23 @@ +package fr.koka99cab.ambiance.mixin.client; + +import net.minecraft.client.Camera; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.SkyRenderer; +import net.minecraft.client.renderer.state.level.SkyRenderState; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(SkyRenderer.class) +public abstract class SkyRendererMixin { + @Inject(method = "extractRenderState", at = @At("RETURN")) + private void ambiance$keepSkyOpenBelowHorizon(ClientLevel level, float tickDelta, Camera camera, SkyRenderState state, CallbackInfo ci) { + state.shouldRenderDarkDisc = false; + } + + @Inject(method = "renderDarkDisc", at = @At("HEAD"), cancellable = true) + private void ambiance$skipDarkDisc(CallbackInfo ci) { + ci.cancel(); + } +} diff --git a/Graphics/ambiance/src/client/resources/ambiance.client.mixins.json b/Graphics/ambiance/src/client/resources/ambiance.client.mixins.json new file mode 100644 index 0000000..a760a1a --- /dev/null +++ b/Graphics/ambiance/src/client/resources/ambiance.client.mixins.json @@ -0,0 +1,17 @@ +{ + "required": true, + "minVersion": "0.8", + "package": "fr.koka99cab.ambiance.mixin.client", + "compatibilityLevel": "JAVA_25", + "client": [ + "DeathScreenMixin", + "FogRendererMixin", + "GameRendererMixin", + "LevelRendererMixin", + "LightmapRenderStateExtractorMixin", + "SkyRendererMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/Graphics/ambiance/src/client/resources/assets/ambiance/post_effect/saturation.json b/Graphics/ambiance/src/client/resources/assets/ambiance/post_effect/saturation.json new file mode 100644 index 0000000..c277892 --- /dev/null +++ b/Graphics/ambiance/src/client/resources/assets/ambiance/post_effect/saturation.json @@ -0,0 +1,63 @@ +{ + "targets": { + "swap": {} + }, + "passes": [ + { + "vertex_shader": "minecraft:core/screenquad", + "fragment_shader": "ambiance:post/saturation", + "inputs": [ + { + "sampler_name": "In", + "target": "minecraft:main", + "bilinear": true + } + ], + "output": "swap", + "uniforms": { + "AmbianceConfig": [ + { + "name": "Saturation", + "type": "float", + "value": 1.18 + }, + { + "name": "Contrast", + "type": "float", + "value": 1.06 + }, + { + "name": "Exposure", + "type": "float", + "value": 0.98 + }, + { + "name": "Vignette", + "type": "float", + "value": 0.08 + } + ] + } + }, + { + "vertex_shader": "minecraft:core/screenquad", + "fragment_shader": "minecraft:post/blit", + "inputs": [ + { + "sampler_name": "In", + "target": "swap" + } + ], + "uniforms": { + "BlitConfig": [ + { + "name": "ColorModulate", + "type": "vec4", + "value": [ 1.0, 1.0, 1.0, 1.0 ] + } + ] + }, + "output": "minecraft:main" + } + ] +} diff --git a/Graphics/ambiance/src/client/resources/assets/ambiance/shaders/post/saturation.fsh b/Graphics/ambiance/src/client/resources/assets/ambiance/shaders/post/saturation.fsh new file mode 100644 index 0000000..1b5a198 --- /dev/null +++ b/Graphics/ambiance/src/client/resources/assets/ambiance/shaders/post/saturation.fsh @@ -0,0 +1,28 @@ +#version 330 + +uniform sampler2D InSampler; + +layout(std140) uniform AmbianceConfig { + float Saturation; + float Contrast; + float Exposure; + float Vignette; +}; + +in vec2 texCoord; + +out vec4 fragColor; + +void main() { + vec4 sourceColor = texture(InSampler, texCoord); + float luminance = dot(sourceColor.rgb, vec3(0.2126, 0.7152, 0.0722)); + vec3 color = mix(vec3(luminance), sourceColor.rgb, Saturation); + color = (color - 0.5) * Contrast + 0.5; + color *= Exposure; + + vec2 centered = texCoord * 2.0 - 1.0; + float edge = smoothstep(0.35, 1.25, dot(centered, centered)); + color *= 1.0 - edge * Vignette; + + fragColor = vec4(clamp(color, 0.0, 1.0), sourceColor.a); +} diff --git a/Graphics/ambiance/src/client/resources/assets/minecraft/items/birch_leaves.json b/Graphics/ambiance/src/client/resources/assets/minecraft/items/birch_leaves.json new file mode 100644 index 0000000..96164de --- /dev/null +++ b/Graphics/ambiance/src/client/resources/assets/minecraft/items/birch_leaves.json @@ -0,0 +1,12 @@ +{ + "model": { + "type": "minecraft:model", + "model": "minecraft:block/birch_leaves", + "tints": [ + { + "type": "minecraft:constant", + "value": -4718794 + } + ] + } +} diff --git a/Graphics/ambiance/src/client/resources/assets/minecraft/shaders/core/lightmap.fsh b/Graphics/ambiance/src/client/resources/assets/minecraft/shaders/core/lightmap.fsh new file mode 100644 index 0000000..6daa2df --- /dev/null +++ b/Graphics/ambiance/src/client/resources/assets/minecraft/shaders/core/lightmap.fsh @@ -0,0 +1,59 @@ +#version 330 + +layout(std140) uniform LightmapInfo { + float SkyFactor; + float BlockFactor; + float NightVisionFactor; + float DarknessScale; + float BossOverlayWorldDarkeningFactor; + float BrightnessFactor; + vec3 BlockLightTint; + vec3 SkyLightColor; + vec3 AmbientColor; + vec3 NightVisionColor; +} lightmapInfo; + +in vec2 texCoord; + +out vec4 fragColor; + +float betaLight(float lightLevel, float ambient) { + float darkness = 1.0 - lightLevel; + return (1.0 - darkness) / (darkness * 3.0 + 1.0) * (1.0 - ambient) + ambient; +} + +vec3 softGamma(vec3 color) { + float maxComponent = max(max(color.r, color.g), color.b); + if (maxComponent <= 0.0) { + return color; + } + + float maxInverted = 1.0 - maxComponent; + float maxScaled = 1.0 - maxInverted * maxInverted * maxInverted; + return color * (maxScaled / maxComponent); +} + +void main() { + float blockLevel = floor(texCoord.x * 16.0) / 15.0; + float skyLevel = floor(texCoord.y * 16.0) * lightmapInfo.SkyFactor / 15.0; + float blockIntensity = clamp(blockLevel * lightmapInfo.BlockFactor / 1.4, 0.0, 1.25); + float lightLevel = clamp(max(blockIntensity, skyLevel), 0.0, 1.0); + float ambient = (lightmapInfo.AmbientColor.r + lightmapInfo.AmbientColor.g + lightmapInfo.AmbientColor.b) / 3.0 + 0.01; + + vec3 color = vec3(betaLight(lightLevel, max(ambient, 0.025))); + vec3 torchTint = mix(vec3(1.0, 0.78, 0.52), vec3(1.0), smoothstep(0.15, 1.0, blockLevel)); + color *= mix(vec3(1.0), torchTint, smoothstep(0.02, 1.0, blockLevel) * 0.22); + color *= mix(vec3(1.0), lightmapInfo.SkyLightColor, smoothstep(0.05, 1.0, skyLevel) * 0.12); + + color = mix(color, color * max(lightLevel, 0.4), lightmapInfo.BossOverlayWorldDarkeningFactor); + color -= vec3(lightmapInfo.DarknessScale); + + color = clamp(color, 0.0, 1.0); + color = mix(color, softGamma(color), lightmapInfo.BrightnessFactor); + + if (lightmapInfo.NightVisionFactor > 0.0) { + color += lightmapInfo.NightVisionColor * lightmapInfo.NightVisionFactor; + } + + fragColor = vec4(clamp(color, 0.0, 1.0), 1.0); +} diff --git a/Graphics/ambiance/src/main/java/fr/koka99cab/ambiance/AmbianceMod.java b/Graphics/ambiance/src/main/java/fr/koka99cab/ambiance/AmbianceMod.java new file mode 100644 index 0000000..304ec68 --- /dev/null +++ b/Graphics/ambiance/src/main/java/fr/koka99cab/ambiance/AmbianceMod.java @@ -0,0 +1,15 @@ +package fr.koka99cab.ambiance; + +import net.fabricmc.api.ModInitializer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class AmbianceMod implements ModInitializer { + public static final String MOD_ID = "ambiance"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + LOGGER.info("Ambiance charge pour Minecraft 26.1.2."); + } +} diff --git a/Graphics/ambiance/src/main/resources/assets/ambiance/hw-ambiance.png b/Graphics/ambiance/src/main/resources/assets/ambiance/hw-ambiance.png new file mode 100644 index 0000000..d740e29 Binary files /dev/null and b/Graphics/ambiance/src/main/resources/assets/ambiance/hw-ambiance.png differ diff --git a/Graphics/ambiance/src/main/resources/assets/ambiance/lang/en_us.json b/Graphics/ambiance/src/main/resources/assets/ambiance/lang/en_us.json new file mode 100644 index 0000000..d595bc6 --- /dev/null +++ b/Graphics/ambiance/src/main/resources/assets/ambiance/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.ambiance": "Ambiance", + "modmenu.descriptionTranslation.ambiance": "A client-side atmosphere mod that enriches Minecraft with more saturated colors, classic deep fog, and darker nights where light matters." +} diff --git a/Graphics/ambiance/src/main/resources/assets/ambiance/lang/fr_fr.json b/Graphics/ambiance/src/main/resources/assets/ambiance/lang/fr_fr.json new file mode 100644 index 0000000..d595bc6 --- /dev/null +++ b/Graphics/ambiance/src/main/resources/assets/ambiance/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.ambiance": "Ambiance", + "modmenu.descriptionTranslation.ambiance": "A client-side atmosphere mod that enriches Minecraft with more saturated colors, classic deep fog, and darker nights where light matters." +} diff --git a/Graphics/ambiance/src/main/resources/fabric.mod.json b/Graphics/ambiance/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..a1e3aa7 --- /dev/null +++ b/Graphics/ambiance/src/main/resources/fabric.mod.json @@ -0,0 +1,30 @@ +{ + "schemaVersion": 1, + "id": "ambiance", + "version": "${version}", + "name": "Ambiance", + "description": "A client-side atmosphere mod that enriches Minecraft with more saturated colors, classic deep fog, and darker nights where light matters.", + "authors": [ + "KOKA99CAB" + ], + "icon": "assets/ambiance/hw-ambiance.png", + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.ambiance.AmbianceMod" + ], + "client": [ + "fr.koka99cab.ambiance.client.AmbianceClient" + ] + }, + "mixins": [ + "ambiance.client.mixins.json" + ], + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Graphics/dynamic_torches/build.gradle b/Graphics/dynamic_torches/build.gradle new file mode 100644 index 0000000..130e465 --- /dev/null +++ b/Graphics/dynamic_torches/build.gradle @@ -0,0 +1,72 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +base { + archivesName = project.archives_base_name +} + +repositories { + mavenCentral() +} + +loom { + splitEnvironmentSourceSets() + + mods { + "dynamic_torches" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + inputs.property "archivesName", project.base.archivesName + + from("../../license.txt") { + rename { "${it}_${inputs.properties.archivesName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + artifactId = project.archives_base_name + from components.java + } + } + + repositories { + } +} diff --git a/Graphics/dynamic_torches/gradle.properties b/Graphics/dynamic_torches/gradle.properties new file mode 100644 index 0000000..49a118c --- /dev/null +++ b/Graphics/dynamic_torches/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=dynamic_torches + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Graphics/dynamic_torches/gradle/wrapper/gradle-wrapper.jar b/Graphics/dynamic_torches/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Graphics/dynamic_torches/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Graphics/dynamic_torches/gradle/wrapper/gradle-wrapper.properties b/Graphics/dynamic_torches/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Graphics/dynamic_torches/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Graphics/dynamic_torches/gradlew b/Graphics/dynamic_torches/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Graphics/dynamic_torches/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Graphics/dynamic_torches/gradlew.bat b/Graphics/dynamic_torches/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Graphics/dynamic_torches/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Graphics/dynamic_torches/settings.gradle b/Graphics/dynamic_torches/settings.gradle new file mode 100644 index 0000000..14bdc10 --- /dev/null +++ b/Graphics/dynamic_torches/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "dynamic_torches" diff --git a/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/client/DynamicTorchLights.java b/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/client/DynamicTorchLights.java new file mode 100644 index 0000000..bab94c1 --- /dev/null +++ b/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/client/DynamicTorchLights.java @@ -0,0 +1,208 @@ +package fr.koka99cab.dynamic_torches.client; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.core.BlockPos; +import net.minecraft.core.SectionPos; +import net.minecraft.util.LightCoordsUtil; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.entity.HumanoidArm; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.BlockAndLightGetter; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; + +import java.util.ArrayList; +import java.util.List; + +public final class DynamicTorchLights { + private static final int MAX_DYNAMIC_LIGHT = 15; + private static final int RENDER_RADIUS = MAX_DYNAMIC_LIGHT; + private static final double HAND_FORWARD_OFFSET = 0.35D; + private static final double HAND_SIDE_OFFSET = 0.35D; + private static final double HAND_DOWN_OFFSET = 0.35D; + + private static ClientLevel lastLevel; + private static List sources = List.of(); + + private DynamicTorchLights() { + } + + public static void tick(Minecraft client) { + if (client.level == null || client.player == null) { + sources = List.of(); + lastLevel = null; + return; + } + + if (client.level != lastLevel) { + sources = List.of(); + lastLevel = client.level; + } + + List nextSources = collectHeldTorchSources(client.player); + if (sameSourceBlocks(sources, nextSources)) { + sources = nextSources; + return; + } + + markSourcesDirty(client.levelRenderer, sources); + sources = nextSources; + markSourcesDirty(client.levelRenderer, sources); + } + + public static int applyDynamicLight(int packedLight, BlockAndLightGetter level, BlockPos pos) { + return applyDynamicLight(packedLight, pos); + } + + public static int applyDynamicLight(int packedLight, BlockPos pos) { + if (sources.isEmpty() || pos == null) { + return packedLight; + } + + int vanillaBlockLight = LightCoordsUtil.block(packedLight); + if (vanillaBlockLight >= 15) { + return packedLight; + } + + int dynamicBlockLight = applyDynamicBlockLight(vanillaBlockLight, pos); + if (dynamicBlockLight <= vanillaBlockLight) { + return packedLight; + } + + return LightCoordsUtil.withBlock(packedLight, dynamicBlockLight); + } + + public static int applyDynamicBlockLight(int blockLight, BlockPos pos) { + if (sources.isEmpty() || pos == null || blockLight >= 15) { + return blockLight; + } + + return Math.max(blockLight, getDynamicBlockLight(pos)); + } + + public static int applyHeldTorchLight(int packedLight) { + if (sources.isEmpty()) { + return packedLight; + } + + int vanillaBlockLight = LightCoordsUtil.block(packedLight); + if (vanillaBlockLight >= 15) { + return packedLight; + } + + int heldLight = 0; + for (LightSource source : sources) { + heldLight = Math.max(heldLight, source.lightLevel()); + } + + if (heldLight <= vanillaBlockLight) { + return packedLight; + } + + return LightCoordsUtil.withBlock(packedLight, heldLight); + } + + private static List collectHeldTorchSources(LocalPlayer player) { + List nextSources = new ArrayList<>(2); + addHandSource(player, InteractionHand.MAIN_HAND, nextSources); + addHandSource(player, InteractionHand.OFF_HAND, nextSources); + return List.copyOf(nextSources); + } + + private static void addHandSource(LocalPlayer player, InteractionHand hand, List nextSources) { + int lightLevel = getHeldLightLevel(player.getItemInHand(hand)); + if (lightLevel <= 0) { + return; + } + + HumanoidArm arm = hand == InteractionHand.MAIN_HAND ? player.getMainArm() : player.getMainArm().getOpposite(); + nextSources.add(new LightSource(handPosition(player, arm), lightLevel)); + } + + private static int getHeldLightLevel(ItemStack stack) { + if (stack.isEmpty()) { + return 0; + } + + Item item = stack.getItem(); + if (item instanceof BlockItem blockItem) { + BlockState blockState = blockItem.getBlock().defaultBlockState(); + return Math.min(MAX_DYNAMIC_LIGHT, Math.max(0, blockState.getLightEmission())); + } + return 0; + } + + private static Vec3 handPosition(LocalPlayer player, HumanoidArm arm) { + Vec3 forward = Vec3.directionFromRotation(0.0F, player.getYRot()); + Vec3 right = Vec3.directionFromRotation(0.0F, player.getYRot() + 90.0F); + double sideOffset = arm == HumanoidArm.RIGHT ? HAND_SIDE_OFFSET : -HAND_SIDE_OFFSET; + return player.getEyePosition() + .add(forward.scale(HAND_FORWARD_OFFSET)) + .add(right.scale(sideOffset)) + .add(0.0D, -HAND_DOWN_OFFSET, 0.0D); + } + + private static int getDynamicBlockLight(BlockPos pos) { + Vec3 blockCenter = pos.getCenter(); + int bestLight = 0; + + for (LightSource source : sources) { + double distance = source.position().distanceTo(blockCenter); + if (distance >= source.lightLevel()) { + continue; + } + + int light = Math.max(0, source.lightLevel() - (int) Math.floor(distance)); + if (light > bestLight) { + bestLight = light; + } + } + + return Math.min(MAX_DYNAMIC_LIGHT, bestLight); + } + + private static boolean sameSourceBlocks(List previous, List next) { + if (previous.size() != next.size()) { + return false; + } + + for (int i = 0; i < previous.size(); i++) { + LightSource previousSource = previous.get(i); + LightSource nextSource = next.get(i); + if (previousSource.lightLevel() != nextSource.lightLevel()) { + return false; + } + if (!BlockPos.containing(previousSource.position()).equals(BlockPos.containing(nextSource.position()))) { + return false; + } + } + + return true; + } + + private static void markSourcesDirty(LevelRenderer levelRenderer, List dirtySources) { + for (LightSource source : dirtySources) { + markSourceDirty(levelRenderer, source); + } + } + + private static void markSourceDirty(LevelRenderer levelRenderer, LightSource source) { + BlockPos center = BlockPos.containing(source.position()); + int radius = Math.max(RENDER_RADIUS, source.lightLevel()); + int minSectionX = SectionPos.blockToSectionCoord(center.getX() - radius); + int minSectionY = SectionPos.blockToSectionCoord(center.getY() - radius); + int minSectionZ = SectionPos.blockToSectionCoord(center.getZ() - radius); + int maxSectionX = SectionPos.blockToSectionCoord(center.getX() + radius); + int maxSectionY = SectionPos.blockToSectionCoord(center.getY() + radius); + int maxSectionZ = SectionPos.blockToSectionCoord(center.getZ() + radius); + levelRenderer.setSectionRangeDirty(minSectionX, minSectionY, minSectionZ, maxSectionX, maxSectionY, maxSectionZ); + } + + private record LightSource(Vec3 position, int lightLevel) { + } +} diff --git a/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/client/DynamicTorchesClient.java b/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/client/DynamicTorchesClient.java new file mode 100644 index 0000000..94f0424 --- /dev/null +++ b/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/client/DynamicTorchesClient.java @@ -0,0 +1,13 @@ +package fr.koka99cab.dynamic_torches.client; + +import fr.koka99cab.dynamic_torches.DynamicTorchesMod; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; + +public class DynamicTorchesClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + ClientTickEvents.END_CLIENT_TICK.register(DynamicTorchLights::tick); + DynamicTorchesMod.LOGGER.info("Dynamic Torches client initialise."); + } +} diff --git a/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/mixin/client/EntityRendererMixin.java b/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/mixin/client/EntityRendererMixin.java new file mode 100644 index 0000000..3d4a353 --- /dev/null +++ b/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/mixin/client/EntityRendererMixin.java @@ -0,0 +1,18 @@ +package fr.koka99cab.dynamic_torches.mixin.client; + +import fr.koka99cab.dynamic_torches.client.DynamicTorchLights; +import net.minecraft.client.renderer.entity.EntityRenderer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(EntityRenderer.class) +public abstract class EntityRendererMixin { + @Inject(method = "getBlockLightLevel", at = @At("RETURN"), cancellable = true) + private void dynamicTorches$applyEntityLight(Entity entity, BlockPos pos, CallbackInfoReturnable cir) { + cir.setReturnValue(DynamicTorchLights.applyDynamicBlockLight(cir.getReturnValue(), pos)); + } +} diff --git a/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/mixin/client/ItemInHandRendererMixin.java b/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/mixin/client/ItemInHandRendererMixin.java new file mode 100644 index 0000000..c538186 --- /dev/null +++ b/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/mixin/client/ItemInHandRendererMixin.java @@ -0,0 +1,22 @@ +package fr.koka99cab.dynamic_torches.mixin.client; + +import fr.koka99cab.dynamic_torches.client.DynamicTorchLights; +import net.minecraft.client.renderer.ItemInHandRenderer; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.ModifyArg; + +@Mixin(ItemInHandRenderer.class) +public abstract class ItemInHandRendererMixin { + @ModifyArg( + method = "renderHandsWithItems", + at = @At( + value = "INVOKE", + target = "Lnet/minecraft/client/renderer/ItemInHandRenderer;renderArmWithItem(Lnet/minecraft/client/player/AbstractClientPlayer;FFLnet/minecraft/world/InteractionHand;FLnet/minecraft/world/item/ItemStack;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/SubmitNodeCollector;I)V" + ), + index = 9 + ) + private int dynamicTorches$applyHeldTorchLightToHand(int light) { + return DynamicTorchLights.applyHeldTorchLight(light); + } +} diff --git a/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/mixin/client/LevelRendererMixin.java b/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/mixin/client/LevelRendererMixin.java new file mode 100644 index 0000000..aeb1ce0 --- /dev/null +++ b/Graphics/dynamic_torches/src/client/java/fr/koka99cab/dynamic_torches/mixin/client/LevelRendererMixin.java @@ -0,0 +1,24 @@ +package fr.koka99cab.dynamic_torches.mixin.client; + +import fr.koka99cab.dynamic_torches.client.DynamicTorchLights; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.BlockAndLightGetter; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(LevelRenderer.class) +public abstract class LevelRendererMixin { + @Inject( + method = "getLightCoords(Lnet/minecraft/client/renderer/LevelRenderer$BrightnessGetter;Lnet/minecraft/world/level/BlockAndLightGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)I", + at = @At("RETURN"), + cancellable = true + ) + private static void dynamicTorches$applyHeldTorchLight(LevelRenderer.BrightnessGetter brightnessGetter, BlockAndLightGetter level, + BlockState state, BlockPos pos, CallbackInfoReturnable cir) { + cir.setReturnValue(DynamicTorchLights.applyDynamicLight(cir.getReturnValue(), level, pos)); + } +} diff --git a/Graphics/dynamic_torches/src/client/resources/dynamic_torches.client.mixins.json b/Graphics/dynamic_torches/src/client/resources/dynamic_torches.client.mixins.json new file mode 100644 index 0000000..7601cd7 --- /dev/null +++ b/Graphics/dynamic_torches/src/client/resources/dynamic_torches.client.mixins.json @@ -0,0 +1,14 @@ +{ + "required": true, + "minVersion": "0.8", + "package": "fr.koka99cab.dynamic_torches.mixin.client", + "compatibilityLevel": "JAVA_25", + "client": [ + "EntityRendererMixin", + "ItemInHandRendererMixin", + "LevelRendererMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/Graphics/dynamic_torches/src/main/java/fr/koka99cab/dynamic_torches/DynamicTorchesMod.java b/Graphics/dynamic_torches/src/main/java/fr/koka99cab/dynamic_torches/DynamicTorchesMod.java new file mode 100644 index 0000000..fabbe78 --- /dev/null +++ b/Graphics/dynamic_torches/src/main/java/fr/koka99cab/dynamic_torches/DynamicTorchesMod.java @@ -0,0 +1,15 @@ +package fr.koka99cab.dynamic_torches; + +import net.fabricmc.api.ModInitializer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class DynamicTorchesMod implements ModInitializer { + public static final String MOD_ID = "dynamic_torches"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + LOGGER.info("Dynamic Torches charge pour Minecraft 26.1.2."); + } +} diff --git a/Graphics/dynamic_torches/src/main/resources/assets/dynamic_torches/icon.png b/Graphics/dynamic_torches/src/main/resources/assets/dynamic_torches/icon.png new file mode 100644 index 0000000..168f665 Binary files /dev/null and b/Graphics/dynamic_torches/src/main/resources/assets/dynamic_torches/icon.png differ diff --git a/Graphics/dynamic_torches/src/main/resources/assets/dynamic_torches/lang/en_us.json b/Graphics/dynamic_torches/src/main/resources/assets/dynamic_torches/lang/en_us.json new file mode 100644 index 0000000..a0b6564 --- /dev/null +++ b/Graphics/dynamic_torches/src/main/resources/assets/dynamic_torches/lang/en_us.json @@ -0,0 +1,3 @@ +{ + "modmenu.descriptionTranslation.dynamic_torches": "Client-side dynamic lighting for luminous items held in either hand." +} diff --git a/Graphics/dynamic_torches/src/main/resources/assets/dynamic_torches/lang/fr_fr.json b/Graphics/dynamic_torches/src/main/resources/assets/dynamic_torches/lang/fr_fr.json new file mode 100644 index 0000000..425d4f9 --- /dev/null +++ b/Graphics/dynamic_torches/src/main/resources/assets/dynamic_torches/lang/fr_fr.json @@ -0,0 +1,3 @@ +{ + "modmenu.descriptionTranslation.dynamic_torches": "Lumiere dynamique cote client pour les objets lumineux tenus en main gauche ou droite." +} diff --git a/Graphics/dynamic_torches/src/main/resources/fabric.mod.json b/Graphics/dynamic_torches/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..c7f1d58 --- /dev/null +++ b/Graphics/dynamic_torches/src/main/resources/fabric.mod.json @@ -0,0 +1,30 @@ +{ + "schemaVersion": 1, + "id": "dynamic_torches", + "version": "${version}", + "name": "Dynamic Torches", + "description": "Client-side dynamic lighting for luminous items held in either hand.", + "authors": [ + "KOKA99CAB" + ], + "icon": "assets/dynamic_torches/icon.png", + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.dynamic_torches.DynamicTorchesMod" + ], + "client": [ + "fr.koka99cab.dynamic_torches.client.DynamicTorchesClient" + ] + }, + "mixins": [ + "dynamic_torches.client.mixins.json" + ], + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Interfaces/helloworld/.gitignore b/Interfaces/helloworld/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Interfaces/helloworld/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Interfaces/helloworld/Custom-loading-Sheet-11.png b/Interfaces/helloworld/Custom-loading-Sheet-11.png new file mode 100644 index 0000000..dc88bd5 Binary files /dev/null and b/Interfaces/helloworld/Custom-loading-Sheet-11.png differ diff --git a/Interfaces/helloworld/build.gradle b/Interfaces/helloworld/build.gradle new file mode 100644 index 0000000..5615fdd --- /dev/null +++ b/Interfaces/helloworld/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "helloworld" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Interfaces/helloworld/gradle.properties b/Interfaces/helloworld/gradle.properties new file mode 100644 index 0000000..fad7e08 --- /dev/null +++ b/Interfaces/helloworld/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=helloworld + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Interfaces/helloworld/gradle/wrapper/gradle-wrapper.jar b/Interfaces/helloworld/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Interfaces/helloworld/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Interfaces/helloworld/gradle/wrapper/gradle-wrapper.properties b/Interfaces/helloworld/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Interfaces/helloworld/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Interfaces/helloworld/gradlew b/Interfaces/helloworld/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Interfaces/helloworld/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Interfaces/helloworld/gradlew.bat b/Interfaces/helloworld/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Interfaces/helloworld/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Interfaces/helloworld/helloworld-icon-export.png b/Interfaces/helloworld/helloworld-icon-export.png new file mode 100644 index 0000000..a423256 Binary files /dev/null and b/Interfaces/helloworld/helloworld-icon-export.png differ diff --git a/Interfaces/helloworld/helloworld-icon.png b/Interfaces/helloworld/helloworld-icon.png new file mode 100644 index 0000000..5d9fc68 Binary files /dev/null and b/Interfaces/helloworld/helloworld-icon.png differ diff --git a/Interfaces/helloworld/settings.gradle b/Interfaces/helloworld/settings.gradle new file mode 100644 index 0000000..b12e808 --- /dev/null +++ b/Interfaces/helloworld/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "helloworld" diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/HelloWorldClient.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/HelloWorldClient.java new file mode 100644 index 0000000..1f4a1c1 --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/HelloWorldClient.java @@ -0,0 +1,13 @@ +package fr.koka99cab.helloworld.client; + +import fr.koka99cab.helloworld.HelloWorldMod; +import fr.koka99cab.helloworld.client.rpc.SanctuaryDiscordPresence; +import net.fabricmc.api.ClientModInitializer; + +public class HelloWorldClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + HelloWorldMod.LOGGER.info("helloworld client initialise."); + SanctuaryDiscordPresence.initialize(); + } +} diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/loading/LoadingScreenVisuals.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/loading/LoadingScreenVisuals.java new file mode 100644 index 0000000..07f04a7 --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/loading/LoadingScreenVisuals.java @@ -0,0 +1,27 @@ +package fr.koka99cab.helloworld.client.loading; + +import fr.koka99cab.helloworld.HelloWorldMod; +import net.minecraft.resources.Identifier; + +public final class LoadingScreenVisuals { + public static final Identifier LOADING_SHEET = + Identifier.fromNamespaceAndPath(HelloWorldMod.MOD_ID, "textures/gui/loading_sheet.png"); + public static final String LOADING_SHEET_RESOURCE = "/assets/helloworld/textures/gui/loading_sheet.png"; + public static final int BACKGROUND_ARGB = 0xFF050505; + public static final int FRAME_WIDTH = 750; + public static final int FRAME_HEIGHT = 750; + public static final int FRAME_COUNT = 11; + public static final int SHEET_WIDTH = FRAME_WIDTH * FRAME_COUNT; + private static int currentFrameIndex; + + private LoadingScreenVisuals() { + } + + public static int currentFrameU() { + return currentFrameIndex * FRAME_WIDTH; + } + + public static void advanceFrame() { + currentFrameIndex = (currentFrameIndex + 1) % FRAME_COUNT; + } +} diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/loading/LoadingSheetTexture.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/loading/LoadingSheetTexture.java new file mode 100644 index 0000000..1b699a2 --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/loading/LoadingSheetTexture.java @@ -0,0 +1,30 @@ +package fr.koka99cab.helloworld.client.loading; + +import com.mojang.blaze3d.platform.NativeImage; +import java.io.IOException; +import java.io.InputStream; +import net.minecraft.client.renderer.texture.MipmapStrategy; +import net.minecraft.client.renderer.texture.ReloadableTexture; +import net.minecraft.client.renderer.texture.TextureContents; +import net.minecraft.client.resources.metadata.texture.TextureMetadataSection; +import net.minecraft.server.packs.resources.ResourceManager; + +public final class LoadingSheetTexture extends ReloadableTexture { + private static final TextureMetadataSection METADATA = + new TextureMetadataSection(true, true, MipmapStrategy.MEAN, 0.0F); + + public LoadingSheetTexture() { + super(LoadingScreenVisuals.LOADING_SHEET); + } + + @Override + public TextureContents loadContents(ResourceManager resourceManager) throws IOException { + try (InputStream inputStream = LoadingSheetTexture.class.getResourceAsStream(LoadingScreenVisuals.LOADING_SHEET_RESOURCE)) { + if (inputStream == null) { + throw new IOException("Missing loading sheet resource: " + LoadingScreenVisuals.LOADING_SHEET_RESOURCE); + } + + return new TextureContents(NativeImage.read(inputStream), METADATA); + } + } +} diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/LoadingOverlayMixin.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/LoadingOverlayMixin.java new file mode 100644 index 0000000..a3c1a92 --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/LoadingOverlayMixin.java @@ -0,0 +1,124 @@ +package fr.koka99cab.helloworld.client.mixin; + +import com.mojang.blaze3d.pipeline.RenderPipeline; +import fr.koka99cab.helloworld.client.loading.LoadingSheetTexture; +import fr.koka99cab.helloworld.client.loading.LoadingScreenVisuals; +import java.util.function.IntSupplier; +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.client.gui.screens.LoadingOverlay; +import net.minecraft.client.renderer.RenderPipelines; +import net.minecraft.client.renderer.texture.TextureManager; +import net.minecraft.resources.Identifier; +import net.minecraft.util.ARGB; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Mutable; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LoadingOverlay.class) +public abstract class LoadingOverlayMixin { + @Shadow + @Final + @Mutable + private static IntSupplier BRAND_BACKGROUND; + + @Inject(method = "", at = @At("TAIL")) + private static void helloworld$setLoadingBackground(CallbackInfo ci) { + BRAND_BACKGROUND = () -> LoadingScreenVisuals.BACKGROUND_ARGB; + } + + @Inject(method = "registerTextures", at = @At("TAIL")) + private static void helloworld$registerLoadingSheet(TextureManager textureManager, CallbackInfo ci) { + textureManager.registerAndLoad(LoadingScreenVisuals.LOADING_SHEET, new LoadingSheetTexture()); + } + + @Inject(method = "tick", at = @At("HEAD")) + private void helloworld$advanceLoadingAnimation(CallbackInfo ci) { + LoadingScreenVisuals.advanceFrame(); + } + + @Redirect( + method = "extractRenderState", + at = @At( + value = "INVOKE", + target = "Lnet/minecraft/client/gui/GuiGraphicsExtractor;blit(Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/resources/Identifier;IIFFIIIIIII)V", + ordinal = 0 + ) + ) + private void helloworld$drawLoadingChicken( + GuiGraphicsExtractor graphics, + RenderPipeline pipeline, + Identifier texture, + int x, + int y, + float u, + float v, + int width, + int height, + int regionWidth, + int regionHeight, + int textureWidth, + int textureHeight, + int color + ) { + int drawSize = width; + int drawX = x + width - drawSize / 2; + int drawY = y - Math.max(0, (drawSize - height) / 2); + graphics.blit( + RenderPipelines.GUI_TEXTURED, + LoadingScreenVisuals.LOADING_SHEET, + drawX, + drawY, + LoadingScreenVisuals.currentFrameU(), + 0.0F, + drawSize, + drawSize, + LoadingScreenVisuals.FRAME_WIDTH, + LoadingScreenVisuals.FRAME_HEIGHT, + LoadingScreenVisuals.SHEET_WIDTH, + LoadingScreenVisuals.FRAME_HEIGHT, + color + ); + } + + @Redirect( + method = "extractRenderState", + at = @At( + value = "INVOKE", + target = "Lnet/minecraft/client/gui/GuiGraphicsExtractor;blit(Lcom/mojang/blaze3d/pipeline/RenderPipeline;Lnet/minecraft/resources/Identifier;IIFFIIIIIII)V", + ordinal = 1 + ) + ) + private void helloworld$skipSecondVanillaLogoHalf( + GuiGraphicsExtractor graphics, + RenderPipeline pipeline, + Identifier texture, + int x, + int y, + float u, + float v, + int width, + int height, + int regionWidth, + int regionHeight, + int textureWidth, + int textureHeight, + int color + ) { + } + + @Redirect( + method = "extractProgressBar", + at = @At( + value = "INVOKE", + target = "Lnet/minecraft/util/ARGB;color(IIII)I" + ) + ) + private int helloworld$whiteProgressBar(int alpha, int red, int green, int blue) { + return ARGB.color(alpha, 255, 255, 255); + } +} diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/MinecraftClientMixin.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/MinecraftClientMixin.java new file mode 100644 index 0000000..1b93e1a --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/MinecraftClientMixin.java @@ -0,0 +1,17 @@ +package fr.koka99cab.helloworld.client.mixin; + +import fr.koka99cab.helloworld.client.title.CustomTitleIconClient; +import net.minecraft.client.Minecraft; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(Minecraft.class) +public abstract class MinecraftClientMixin { + @Inject(method = "run", at = @At("HEAD")) + private void helloworld$applyWindowTitleAndIcon(CallbackInfo callbackInfo) { + Minecraft minecraft = (Minecraft) (Object) this; + CustomTitleIconClient.apply(minecraft.getWindow()); + } +} diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/OnlineServerEntryMixin.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/OnlineServerEntryMixin.java new file mode 100644 index 0000000..eb5efd6 --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/OnlineServerEntryMixin.java @@ -0,0 +1,155 @@ +package fr.koka99cab.helloworld.client.mixin; + +import fr.koka99cab.helloworld.motd.AnimationPayload; +import fr.koka99cab.helloworld.motd.GifFrameData; +import fr.koka99cab.helloworld.motd.GifIconLoader; +import fr.koka99cab.helloworld.motd.MotdPlusPlusMod; +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.client.gui.screens.FaviconTexture; +import net.minecraft.client.multiplayer.ServerData; +import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.Style; +import net.minecraft.util.Util; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.gen.Invoker; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.List; +import java.util.Objects; + +@Mixin(targets = "net.minecraft.client.gui.screens.multiplayer.ServerSelectionList$OnlineServerEntry") +public abstract class OnlineServerEntryMixin { + @Shadow @Final private ServerData serverData; + @Shadow @Final private FaviconTexture icon; + + @Unique + private String motdpp$lastPayloadInsertion; + + @Unique + private AnimationPayload motdpp$payload; + + @Unique + private List motdpp$iconFrames = List.of(); + + @Unique + private long motdpp$receivedAtMillis; + + @Unique + private byte[] motdpp$lastRenderedIconBytes; + + @Invoker("uploadServerIcon") + abstract boolean motdpp$uploadServerIcon(byte[] bytes); + + @Inject(method = "extractContent", at = @At("HEAD")) + private void motdpp$animateLocally(GuiGraphicsExtractor graphics, int mouseX, int mouseY, boolean hovered, float delta, CallbackInfo ci) { + this.motdpp$tryDecodePayload(); + + if (this.motdpp$payload == null) { + return; + } + + long now = Util.getMillis(); + long elapsedTicks = this.motdpp$payload.tickOffset + Math.max(0L, (now - this.motdpp$receivedAtMillis) / 50L); + this.serverData.motd = Component.literal(this.motdpp$frameAt(elapsedTicks)) + .withStyle(Style.EMPTY.withInsertion(this.motdpp$lastPayloadInsertion)); + + byte[] iconBytes = this.motdpp$iconBytesAt(elapsedTicks); + + if (iconBytes != null && !java.util.Arrays.equals(this.motdpp$lastRenderedIconBytes, iconBytes)) { + if (this.motdpp$uploadServerIcon(iconBytes)) { + this.motdpp$lastRenderedIconBytes = iconBytes.clone(); + } + } + } + + @Unique + private void motdpp$tryDecodePayload() { + String insertion = this.serverData.motd == null ? null : this.serverData.motd.getStyle().getInsertion(); + + if (Objects.equals(this.motdpp$lastPayloadInsertion, insertion)) { + return; + } + + this.motdpp$lastPayloadInsertion = insertion; + this.motdpp$payload = AnimationPayload.decode(insertion, MotdPlusPlusMod.LOGGER); + this.motdpp$receivedAtMillis = Util.getMillis(); + this.motdpp$lastRenderedIconBytes = null; + this.motdpp$iconFrames = this.motdpp$payload == null + ? List.of() + : GifIconLoader.load(this.motdpp$payload.gifBytes(), MotdPlusPlusMod.LOGGER); + } + + @Unique + private String motdpp$frameAt(long elapsedTicks) { + List frames = this.motdpp$payload.motdFrames == null || this.motdpp$payload.motdFrames.isEmpty() + ? List.of("sanctuary") + : this.motdpp$payload.motdFrames; + String text = this.motdpp$payload.scrollText == null ? "" : this.motdpp$payload.scrollText; + + if ("frames".equals(this.motdpp$payload.normalizedMode()) || (text.isBlank() && !frames.isEmpty())) { + int frameIndex = (int) ((elapsedTicks / this.motdpp$payload.normalizedMotdSpeedTicks()) % frames.size()); + String frame = frames.get(frameIndex); + return frame.isBlank() ? "sanctuary" : frame; + } + + String padding = this.motdpp$payload.scrollPadding == null ? " " : this.motdpp$payload.scrollPadding; + int width = Math.max(1, this.motdpp$payload.scrollWindowWidth); + + if (text.isBlank()) { + text = String.join(" | ", frames); + } + + int[] codePoints = (text + padding).codePoints().toArray(); + + if (codePoints.length == 0) { + return frames.getFirst(); + } + + int offset = (int) ((elapsedTicks / this.motdpp$payload.normalizedMotdSpeedTicks()) % codePoints.length); + StringBuilder builder = new StringBuilder(); + + for (int index = 0; index < width; index++) { + builder.appendCodePoint(codePoints[(offset + index) % codePoints.length]); + } + + String frame = builder.toString(); + return frame.isBlank() ? frames.getFirst() : frame; + } + + @Unique + private byte[] motdpp$iconBytesAt(long elapsedTicks) { + if (this.motdpp$iconFrames.isEmpty()) { + return null; + } + + if (this.motdpp$iconFrames.size() == 1) { + return this.motdpp$iconFrames.getFirst().pngBytes(); + } + + long cycleDuration = this.motdpp$iconFrames.stream() + .mapToLong(GifFrameData::durationTicks) + .sum(); + + if (cycleDuration <= 0L) { + return this.motdpp$iconFrames.getFirst().pngBytes(); + } + + long tickInCycle = elapsedTicks % cycleDuration; + long cursor = 0L; + + for (GifFrameData frame : this.motdpp$iconFrames) { + cursor += frame.durationTicks(); + + if (tickInCycle < cursor) { + return frame.pngBytes(); + } + } + + return this.motdpp$iconFrames.getLast().pngBytes(); + } +} diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/PauseScreenMixin.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/PauseScreenMixin.java new file mode 100644 index 0000000..074b64a --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/PauseScreenMixin.java @@ -0,0 +1,89 @@ +package fr.koka99cab.helloworld.client.mixin; + +import java.util.function.Supplier; +import net.minecraft.client.gui.components.Button; +import net.minecraft.client.gui.layouts.FrameLayout; +import net.minecraft.client.gui.layouts.GridLayout; +import net.minecraft.client.gui.screens.PauseScreen; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.gui.screens.ShareToLanScreen; +import net.minecraft.client.gui.screens.options.OptionsScreen; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.network.chat.CommonComponents; +import net.minecraft.network.chat.Component; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(PauseScreen.class) +public abstract class PauseScreenMixin extends Screen { + private static final int BUTTON_WIDTH = 204; + + @Shadow + private Button disconnectButton; + + protected PauseScreenMixin(Component title) { + super(title); + } + + @Inject(method = "createPauseMenu", at = @At("HEAD"), cancellable = true) + private void helloworld$createCompactPauseMenu(CallbackInfo ci) { + GridLayout layout = new GridLayout(); + layout.defaultCellSetting().padding(4, 4, 4, 0); + + GridLayout.RowHelper rowHelper = layout.createRowHelper(1); + rowHelper.addChild( + Button.builder(Component.translatable("menu.returnToGame"), button -> this.helloworld$returnToGame()) + .width(BUTTON_WIDTH) + .build(), + 1, + layout.newCellSettings().paddingTop(50) + ); + rowHelper.addChild(this.helloworld$screenButton( + Component.translatable("menu.options"), + () -> new OptionsScreen((Screen) (Object) this, this.minecraft.options, true) + )); + + if (this.minecraft.hasSingleplayerServer() && !this.minecraft.getSingleplayerServer().isPublished()) { + rowHelper.addChild(this.helloworld$screenButton( + Component.translatable("menu.shareToLan"), + () -> new ShareToLanScreen((Screen) (Object) this) + )); + } + + Button quitButton = Button.builder( + CommonComponents.disconnectButtonLabel(this.minecraft.isLocalServer()), + this::helloworld$handleDisconnect + ).width(BUTTON_WIDTH).build(); + this.disconnectButton = quitButton; + rowHelper.addChild(quitButton); + + layout.arrangeElements(); + FrameLayout.alignInRectangle(layout, 0, 0, this.width, this.height, 0.5F, 0.25F); + layout.visitChildren(element -> element.visitWidgets(this::addRenderableWidget)); + ci.cancel(); + } + + private Button helloworld$screenButton(Component label, Supplier screenSupplier) { + return Button.builder(label, button -> this.minecraft.setScreen(screenSupplier.get())) + .width(BUTTON_WIDTH) + .build(); + } + + private void helloworld$handleDisconnect(Button button) { + button.active = false; + this.minecraft.getReportingContext().draftReportHandled( + this.minecraft, + (Screen) (Object) this, + () -> this.minecraft.disconnectFromWorld(ClientLevel.DEFAULT_QUIT_MESSAGE), + true + ); + } + + private void helloworld$returnToGame() { + this.minecraft.setScreen(null); + this.minecraft.mouseHandler.grabMouse(); + } +} diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/TitleScreenMixin.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/TitleScreenMixin.java new file mode 100644 index 0000000..d77ad48 --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/TitleScreenMixin.java @@ -0,0 +1,152 @@ +package fr.koka99cab.helloworld.client.mixin; + +import com.mojang.realmsclient.gui.screens.RealmsNotificationsScreen; +import java.util.ArrayList; +import java.util.List; +import net.minecraft.client.gui.components.AbstractWidget; +import net.minecraft.client.gui.components.Button; +import net.minecraft.client.gui.components.SpriteIconButton; +import net.minecraft.client.gui.components.events.GuiEventListener; +import net.minecraft.client.gui.GuiGraphicsExtractor; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.gui.screens.TitleScreen; +import net.minecraft.network.chat.Component; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.ModifyArg; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(TitleScreen.class) +public abstract class TitleScreenMixin extends Screen { + private static final int SECONDARY_ROW_MIN_X_OFFSET = 130; + private static final int SECONDARY_ROW_MAX_X_OFFSET = 130; + private static final int OPTIONS_SECTION_GAP = 36; + private static final String LICENSE_TEXT = "sanctuary © KOKA99CAB - LGPL-3.0-or-later"; + private static final int FOOTER_TEXT_COLOR = 0xFFFFFFFF; + + @Shadow + private RealmsNotificationsScreen realmsNotificationsScreen; + + protected TitleScreenMixin(Component title) { + super(title); + } + + @Inject(method = "init", at = @At("TAIL")) + private void helloworld$compactTitleMenu(CallbackInfo ci) { + this.realmsNotificationsScreen = null; + + if (this.minecraft.isDemo()) { + return; + } + + Button realmsButton = null; + AbstractWidget singleplayerButton = null; + AbstractWidget multiplayerButton = null; + AbstractWidget optionsButton = null; + AbstractWidget quitButton = null; + String singleplayerText = Component.translatable("menu.singleplayer").getString(); + String multiplayerText = Component.translatable("menu.multiplayer").getString(); + String realmsText = Component.translatable("menu.online").getString(); + String optionsText = Component.translatable("menu.options").getString(); + String quitText = Component.translatable("menu.quit").getString(); + + for (GuiEventListener child : this.children()) { + if (!(child instanceof AbstractWidget widget)) { + continue; + } + + String widgetText = widget.getMessage().getString(); + if (realmsButton == null && child instanceof Button button && widgetText.equals(realmsText)) { + realmsButton = button; + } + + if (singleplayerButton == null && widgetText.equals(singleplayerText)) { + singleplayerButton = widget; + } + + if (multiplayerButton == null && widgetText.equals(multiplayerText)) { + multiplayerButton = widget; + } + + if (optionsButton == null && widgetText.equals(optionsText)) { + optionsButton = widget; + } + + if (quitButton == null && widgetText.equals(quitText)) { + quitButton = widget; + } + } + + if (realmsButton != null) { + this.removeWidget(realmsButton); + } + + if (singleplayerButton == null || multiplayerButton == null || optionsButton == null || quitButton == null) { + return; + } + + int centerX = this.width / 2; + int secondaryRowY = optionsButton.getY(); + List widgetsToRemove = new ArrayList<>(); + + for (GuiEventListener child : this.children()) { + if (!(child instanceof AbstractWidget widget)) { + continue; + } + + if (widget.getY() != secondaryRowY) { + continue; + } + + int widgetX = widget.getX(); + if (widgetX < centerX - SECONDARY_ROW_MIN_X_OFFSET || widgetX > centerX + SECONDARY_ROW_MAX_X_OFFSET) { + continue; + } + + if (widget instanceof SpriteIconButton) { + widgetsToRemove.add(widget); + } + } + + for (AbstractWidget widget : widgetsToRemove) { + this.removeWidget(widget); + } + + this.helloworld$restoreMenuSpacing(singleplayerButton, multiplayerButton, optionsButton, quitButton); + } + + @ModifyArg( + method = "extractRenderState", + at = @At( + value = "INVOKE", + target = "Lnet/minecraft/client/gui/GuiGraphicsExtractor;text(Lnet/minecraft/client/gui/Font;Ljava/lang/String;III)V" + ), + index = 1 + ) + private String helloworld$replaceVersionText(String original) { + return ""; + } + + @Inject(method = "extractRenderState", at = @At("TAIL")) + private void helloworld$renderLicenseNotice(GuiGraphicsExtractor graphics, int mouseX, int mouseY, float tickDelta, CallbackInfo ci) { + graphics.text(this.font, LICENSE_TEXT, 2, Math.max(2, this.height - 10), FOOTER_TEXT_COLOR); + } + + private void helloworld$restoreMenuSpacing( + AbstractWidget singleplayerButton, + AbstractWidget multiplayerButton, + AbstractWidget optionsButton, + AbstractWidget quitButton + ) { + int centerX = this.width / 2; + int baseY = this.height / 4 + 48; + int optionsRowY = baseY + 24 + OPTIONS_SECTION_GAP; + + singleplayerButton.setPosition(centerX - 100, baseY); + multiplayerButton.setPosition(centerX - 100, baseY + 24); + optionsButton.setPosition(centerX - 100, optionsRowY); + quitButton.setPosition(centerX + 2, optionsRowY); + } +} diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/WindowMixin.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/WindowMixin.java new file mode 100644 index 0000000..dcb5050 --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/mixin/WindowMixin.java @@ -0,0 +1,21 @@ +package fr.koka99cab.helloworld.client.mixin; + +import fr.koka99cab.helloworld.client.title.CustomTitleIconClient; +import org.lwjgl.glfw.GLFW; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(com.mojang.blaze3d.platform.Window.class) +public abstract class WindowMixin { + @Shadow + public abstract long handle(); + + @Inject(method = "setTitle", at = @At("HEAD"), cancellable = true) + private void helloworld$forceCustomTitle(String title, CallbackInfo callbackInfo) { + GLFW.glfwSetWindowTitle(this.handle(), CustomTitleIconClient.windowTitle()); + callbackInfo.cancel(); + } +} diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/SanctuaryDiscordPresence.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/SanctuaryDiscordPresence.java new file mode 100644 index 0000000..13d77d6 --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/SanctuaryDiscordPresence.java @@ -0,0 +1,43 @@ +package fr.koka99cab.helloworld.client.rpc; + +import fr.koka99cab.helloworld.HelloWorldMod; +import fr.koka99cab.helloworld.client.rpc.config.SanctuaryRpcConfig; +import fr.koka99cab.helloworld.client.rpc.discord.DiscordActivity; +import fr.koka99cab.helloworld.client.rpc.discord.DiscordIpcClient; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents; + +public final class SanctuaryDiscordPresence { + private static DiscordIpcClient discordIpcClient; + + private SanctuaryDiscordPresence() { + } + + public static void initialize() { + SanctuaryRpcConfig config = SanctuaryRpcConfig.load(); + if (!config.enabled()) { + HelloWorldMod.LOGGER.info("Discord RPC Sanctuary desactive dans la configuration."); + return; + } + + if (!config.hasClientId()) { + HelloWorldMod.LOGGER.warn("Sanctuary RPC attend un clientId Discord dans config/sanctuary-rpc.properties."); + return; + } + + discordIpcClient = new DiscordIpcClient( + config.clientId(), + DiscordActivity.fromConfig(config), + HelloWorldMod.LOGGER + ); + discordIpcClient.start(); + + ClientLifecycleEvents.CLIENT_STOPPING.register(client -> stop()); + } + + private static void stop() { + if (discordIpcClient != null) { + discordIpcClient.stop(); + discordIpcClient = null; + } + } +} diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/config/SanctuaryRpcConfig.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/config/SanctuaryRpcConfig.java new file mode 100644 index 0000000..deea95b --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/config/SanctuaryRpcConfig.java @@ -0,0 +1,115 @@ +package fr.koka99cab.helloworld.client.rpc.config; + +import fr.koka99cab.helloworld.HelloWorldMod; +import net.fabricmc.loader.api.FabricLoader; + +import java.io.IOException; +import java.io.Reader; +import java.io.Writer; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.Properties; + +public record SanctuaryRpcConfig( + boolean enabled, + String clientId, + String details, + String state, + String largeImage, + String largeText, + String smallImage, + String smallText, + boolean showElapsedTime +) { + private static final String CONFIG_FILE = "sanctuary-rpc.properties"; + private static final String DEFAULT_CLIENT_ID = "1522671140735025182"; + private static final String OLD_CLIENT_ID_PLACEHOLDER = "put-your-discord-application-id-here"; + + public static SanctuaryRpcConfig load() { + Path path = FabricLoader.getInstance().getConfigDir().resolve(CONFIG_FILE); + Properties properties = defaultProperties(); + boolean shouldSave = false; + + try { + if (Files.notExists(path)) { + writeDefaults(path, properties); + } else { + try (Reader reader = Files.newBufferedReader(path)) { + properties.load(reader); + } + + shouldSave = migrate(properties); + } + } catch (IOException exception) { + HelloWorldMod.LOGGER.warn("Impossible de lire la configuration Sanctuary RPC, valeurs par defaut utilisees.", exception); + } + + if (shouldSave) { + try { + writeDefaults(path, properties); + } catch (IOException exception) { + HelloWorldMod.LOGGER.warn("Impossible de mettre a jour la configuration Sanctuary RPC.", exception); + } + } + + return new SanctuaryRpcConfig( + Boolean.parseBoolean(properties.getProperty("enabled")), + properties.getProperty("clientId", "").trim(), + properties.getProperty("details", "").trim(), + properties.getProperty("state", "").trim(), + properties.getProperty("largeImage", "").trim(), + properties.getProperty("largeText", "").trim(), + properties.getProperty("smallImage", "").trim(), + properties.getProperty("smallText", "").trim(), + Boolean.parseBoolean(properties.getProperty("showElapsedTime")) + ); + } + + public boolean hasClientId() { + return !clientId.isBlank(); + } + + private static Properties defaultProperties() { + Properties properties = new Properties(); + properties.setProperty("enabled", "true"); + properties.setProperty("clientId", DEFAULT_CLIENT_ID); + properties.setProperty("details", "Joue a Sanctuary"); + properties.setProperty("state", "Minecraft 26.1.2 - Fabric"); + properties.setProperty("largeImage", ""); + properties.setProperty("largeText", "Sanctuary"); + properties.setProperty("smallImage", ""); + properties.setProperty("smallText", ""); + properties.setProperty("showElapsedTime", "true"); + return properties; + } + + private static boolean migrate(Properties properties) { + boolean changed = false; + + String clientId = properties.getProperty("clientId", "").trim(); + if (clientId.isBlank() || OLD_CLIENT_ID_PLACEHOLDER.equals(clientId)) { + properties.setProperty("clientId", DEFAULT_CLIENT_ID); + changed = true; + } + + for (String key : defaultProperties().stringPropertyNames()) { + if (!properties.containsKey(key)) { + properties.setProperty(key, defaultProperties().getProperty(key)); + changed = true; + } + } + + return changed; + } + + private static void writeDefaults(Path path, Properties properties) throws IOException { + Files.createDirectories(path.getParent()); + + try (Writer writer = Files.newBufferedWriter(path)) { + writer.write("# Sanctuary RPC\n"); + writer.write("# clientId doit etre l'identifiant d'une application Discord Developer Portal.\n"); + writer.write("# Pour afficher une image, ajoute un asset Rich Presence nomme comme largeImage.\n"); + properties.store(writer, null); + } + } +} diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/discord/DiscordActivity.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/discord/DiscordActivity.java new file mode 100644 index 0000000..628636e --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/discord/DiscordActivity.java @@ -0,0 +1,60 @@ +package fr.koka99cab.helloworld.client.rpc.discord; + +import com.google.gson.JsonObject; +import fr.koka99cab.helloworld.client.rpc.config.SanctuaryRpcConfig; + +import java.time.Instant; + +public record DiscordActivity( + String details, + String state, + String largeImage, + String largeText, + String smallImage, + String smallText, + boolean showElapsedTime, + long startedAt +) { + public static DiscordActivity fromConfig(SanctuaryRpcConfig config) { + return new DiscordActivity( + config.details(), + config.state(), + config.largeImage(), + config.largeText(), + config.smallImage(), + config.smallText(), + config.showElapsedTime(), + Instant.now().getEpochSecond() + ); + } + + public JsonObject toJson() { + JsonObject activity = new JsonObject(); + putIfNotBlank(activity, "details", details); + putIfNotBlank(activity, "state", state); + + if (showElapsedTime) { + JsonObject timestamps = new JsonObject(); + timestamps.addProperty("start", startedAt); + activity.add("timestamps", timestamps); + } + + JsonObject assets = new JsonObject(); + putIfNotBlank(assets, "large_image", largeImage); + putIfNotBlank(assets, "large_text", largeText); + putIfNotBlank(assets, "small_image", smallImage); + putIfNotBlank(assets, "small_text", smallText); + + if (assets.size() > 0) { + activity.add("assets", assets); + } + + return activity; + } + + private static void putIfNotBlank(JsonObject json, String key, String value) { + if (value != null && !value.isBlank()) { + json.addProperty(key, value); + } + } +} diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/discord/DiscordIpcClient.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/discord/DiscordIpcClient.java new file mode 100644 index 0000000..4434495 --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/discord/DiscordIpcClient.java @@ -0,0 +1,243 @@ +package fr.koka99cab.helloworld.client.rpc.discord; + +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import org.slf4j.Logger; + +import java.io.IOException; +import java.util.UUID; +import java.util.concurrent.atomic.AtomicBoolean; + +public final class DiscordIpcClient { + private static final long RECONNECT_DELAY_MILLIS = 15_000L; + private static final long ACTIVITY_REFRESH_MILLIS = 30_000L; + + private final String clientId; + private final DiscordActivity activity; + private final Logger logger; + private final AtomicBoolean running = new AtomicBoolean(); + + private volatile DiscordIpcConnection connection; + private volatile String lastActivityNonce; + private Thread worker; + private boolean missingDiscordLogged; + private boolean activityAcceptedLogged; + + public DiscordIpcClient(String clientId, DiscordActivity activity, Logger logger) { + this.clientId = clientId; + this.activity = activity; + this.logger = logger; + } + + public void start() { + if (!running.compareAndSet(false, true)) { + return; + } + + worker = new Thread(this::run, "Sanctuary Discord RPC"); + worker.setDaemon(true); + worker.start(); + } + + public void stop() { + if (!running.compareAndSet(true, false)) { + return; + } + + DiscordIpcConnection activeConnection = connection; + if (activeConnection != null) { + try { + clearActivity(activeConnection); + } catch (IOException exception) { + logger.debug("Impossible d'effacer la presence Discord.", exception); + } + + try { + activeConnection.close(); + } catch (IOException exception) { + logger.debug("Impossible de fermer la connexion Discord IPC.", exception); + } + } + + Thread activeWorker = worker; + if (activeWorker != null) { + activeWorker.interrupt(); + } + } + + private void run() { + while (running.get()) { + try (DiscordIpcConnection activeConnection = DiscordIpcConnection.open()) { + connection = activeConnection; + handshake(activeConnection); + setActivity(activeConnection); + missingDiscordLogged = false; + logger.info("Presence Discord Sanctuary active via {}.", activeConnection.endpoint()); + AtomicBoolean refreshRunning = new AtomicBoolean(true); + Thread refreshWorker = startRefreshWorker(activeConnection, refreshRunning); + try { + readLoop(activeConnection); + } finally { + refreshRunning.set(false); + refreshWorker.interrupt(); + } + } catch (IOException exception) { + logConnectionFailure(exception); + } finally { + connection = null; + } + + sleepBeforeReconnect(); + } + } + + private void handshake(DiscordIpcConnection activeConnection) throws IOException { + JsonObject payload = new JsonObject(); + payload.addProperty("v", 1); + payload.addProperty("client_id", clientId); + activeConnection.writeFrame(DiscordIpcConnection.OPCODE_HANDSHAKE, payload); + } + + private void setActivity(DiscordIpcConnection activeConnection) throws IOException { + JsonObject args = new JsonObject(); + args.addProperty("pid", ProcessHandle.current().pid()); + args.add("activity", activity.toJson()); + + JsonObject payload = new JsonObject(); + payload.addProperty("cmd", "SET_ACTIVITY"); + payload.add("args", args); + String nonce = UUID.randomUUID().toString(); + payload.addProperty("nonce", nonce); + lastActivityNonce = nonce; + + activeConnection.writeFrame(DiscordIpcConnection.OPCODE_FRAME, payload); + } + + private void clearActivity(DiscordIpcConnection activeConnection) throws IOException { + JsonObject args = new JsonObject(); + args.addProperty("pid", ProcessHandle.current().pid()); + args.add("activity", null); + + JsonObject payload = new JsonObject(); + payload.addProperty("cmd", "SET_ACTIVITY"); + payload.add("args", args); + payload.addProperty("nonce", UUID.randomUUID().toString()); + + activeConnection.writeFrame(DiscordIpcConnection.OPCODE_FRAME, payload); + } + + private void readLoop(DiscordIpcConnection activeConnection) throws IOException { + while (running.get()) { + DiscordIpcConnection.IpcFrame frame = activeConnection.readFrame(); + if (frame == null || frame.opcode() == DiscordIpcConnection.OPCODE_CLOSE) { + return; + } + + if (frame.opcode() == DiscordIpcConnection.OPCODE_PING) { + activeConnection.writeFrame(DiscordIpcConnection.OPCODE_PONG, frame.payload()); + continue; + } + + if (frame.opcode() == DiscordIpcConnection.OPCODE_FRAME) { + handlePayload(frame.payload()); + } + } + } + + private Thread startRefreshWorker(DiscordIpcConnection activeConnection, AtomicBoolean refreshRunning) { + Thread refreshWorker = new Thread(() -> { + while (running.get() && refreshRunning.get()) { + try { + Thread.sleep(ACTIVITY_REFRESH_MILLIS); + if (running.get() && refreshRunning.get()) { + setActivity(activeConnection); + } + } catch (InterruptedException exception) { + Thread.currentThread().interrupt(); + } catch (IOException exception) { + logger.debug("Impossible de rafraichir la presence Discord.", exception); + refreshRunning.set(false); + } + } + }, "Sanctuary Discord RPC refresh"); + refreshWorker.setDaemon(true); + refreshWorker.start(); + return refreshWorker; + } + + private void handlePayload(String payload) { + try { + JsonObject json = JsonParser.parseString(payload).getAsJsonObject(); + String command = stringMember(json, "cmd"); + String event = stringMember(json, "evt"); + String nonce = stringMember(json, "nonce"); + + if ("ERROR".equals(command)) { + JsonObject data = objectMember(json, "data"); + String message = data == null ? payload : stringMember(data, "message"); + logger.warn("Discord RPC a renvoye une erreur: {}", message == null ? payload : message); + } else if ("DISPATCH".equals(command) && "READY".equals(event)) { + logger.debug("Discord RPC pret."); + } else if ("SET_ACTIVITY".equals(command) && nonce != null && nonce.equals(lastActivityNonce)) { + logActivityAccepted(json); + } + } catch (RuntimeException exception) { + logger.debug("Payload Discord RPC ignore.", exception); + } + } + + private void logActivityAccepted(JsonObject payload) { + if (activityAcceptedLogged) { + logger.debug("Discord RPC confirme le rafraichissement de l'activite."); + return; + } + + JsonObject data = objectMember(payload, "data"); + String name = data == null ? null : stringMember(data, "name"); + String details = data == null ? null : stringMember(data, "details"); + String state = data == null ? null : stringMember(data, "state"); + logger.info( + "Discord RPC confirme l'activite: name={}, details={}, state={}.", + name == null ? "?" : name, + details == null ? "?" : details, + state == null ? "?" : state + ); + activityAcceptedLogged = true; + } + + private void logConnectionFailure(IOException exception) { + if (!running.get()) { + return; + } + + if (!missingDiscordLogged) { + logger.warn(exception.getMessage()); + missingDiscordLogged = true; + } else { + logger.debug("Reconnexion Discord RPC en attente.", exception); + } + } + + private void sleepBeforeReconnect() { + if (!running.get()) { + return; + } + + try { + Thread.sleep(RECONNECT_DELAY_MILLIS); + } catch (InterruptedException exception) { + Thread.currentThread().interrupt(); + } + } + + private static JsonObject objectMember(JsonObject json, String memberName) { + JsonElement element = json.get(memberName); + return element != null && element.isJsonObject() ? element.getAsJsonObject() : null; + } + + private static String stringMember(JsonObject json, String memberName) { + JsonElement element = json.get(memberName); + return element != null && element.isJsonPrimitive() ? element.getAsString() : null; + } +} diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/discord/DiscordIpcConnection.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/discord/DiscordIpcConnection.java new file mode 100644 index 0000000..25dba2a --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/rpc/discord/DiscordIpcConnection.java @@ -0,0 +1,208 @@ +package fr.koka99cab.helloworld.client.rpc.discord; + +import com.google.gson.Gson; +import com.google.gson.JsonObject; + +import java.io.Closeable; +import java.io.IOException; +import java.net.StandardProtocolFamily; +import java.net.UnixDomainSocketAddress; +import java.nio.ByteBuffer; +import java.nio.ByteOrder; +import java.nio.channels.ByteChannel; +import java.nio.channels.FileChannel; +import java.nio.channels.SocketChannel; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.StandardOpenOption; +import java.util.ArrayList; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Locale; +import java.util.Set; + +final class DiscordIpcConnection implements Closeable { + static final int OPCODE_HANDSHAKE = 0; + static final int OPCODE_FRAME = 1; + static final int OPCODE_CLOSE = 2; + static final int OPCODE_PING = 3; + static final int OPCODE_PONG = 4; + + private static final Gson GSON = new Gson(); + private static final int MAX_FRAME_SIZE = 1024 * 1024; + + private final ByteChannel channel; + private final String endpoint; + + private DiscordIpcConnection(ByteChannel channel, String endpoint) { + this.channel = channel; + this.endpoint = endpoint; + } + + static DiscordIpcConnection open() throws IOException { + if (isWindows()) { + return openWindowsPipe(); + } + + return openUnixSocket(); + } + + synchronized void writeFrame(int opcode, JsonObject payload) throws IOException { + writeFrame(opcode, GSON.toJson(payload)); + } + + synchronized void writeFrame(int opcode, String payload) throws IOException { + byte[] payloadBytes = payload.getBytes(StandardCharsets.UTF_8); + ByteBuffer buffer = ByteBuffer.allocate(8 + payloadBytes.length).order(ByteOrder.LITTLE_ENDIAN); + buffer.putInt(opcode); + buffer.putInt(payloadBytes.length); + buffer.put(payloadBytes); + buffer.flip(); + writeFully(buffer); + } + + IpcFrame readFrame() throws IOException { + ByteBuffer header = ByteBuffer.allocate(8).order(ByteOrder.LITTLE_ENDIAN); + if (!readFully(header)) { + return null; + } + + header.flip(); + int opcode = header.getInt(); + int length = header.getInt(); + if (length < 0 || length > MAX_FRAME_SIZE) { + throw new IOException("Discord IPC frame invalide: " + length + " octets."); + } + + ByteBuffer payload = ByteBuffer.allocate(length); + if (!readFully(payload)) { + return null; + } + + payload.flip(); + return new IpcFrame(opcode, StandardCharsets.UTF_8.decode(payload).toString()); + } + + String endpoint() { + return endpoint; + } + + @Override + public void close() throws IOException { + channel.close(); + } + + private void writeFully(ByteBuffer buffer) throws IOException { + while (buffer.hasRemaining()) { + int written = channel.write(buffer); + if (written == 0) { + Thread.onSpinWait(); + } + } + } + + private boolean readFully(ByteBuffer buffer) throws IOException { + while (buffer.hasRemaining()) { + int read = channel.read(buffer); + if (read < 0) { + return false; + } + + if (read == 0) { + Thread.onSpinWait(); + } + } + + return true; + } + + private static DiscordIpcConnection openUnixSocket() throws IOException { + IOException lastException = null; + + for (Path candidate : unixCandidates()) { + if (!Files.exists(candidate)) { + continue; + } + + SocketChannel socket = null; + try { + socket = SocketChannel.open(StandardProtocolFamily.UNIX); + socket.connect(UnixDomainSocketAddress.of(candidate)); + return new DiscordIpcConnection(socket, candidate.toString()); + } catch (IOException exception) { + lastException = exception; + if (socket != null) { + socket.close(); + } + } + } + + throw missingDiscordException(lastException); + } + + private static DiscordIpcConnection openWindowsPipe() throws IOException { + IOException lastException = null; + + for (int index = 0; index < 10; index++) { + String endpoint = "\\\\.\\pipe\\discord-ipc-" + index; + try { + FileChannel channel = FileChannel.open( + Path.of(endpoint), + StandardOpenOption.READ, + StandardOpenOption.WRITE + ); + return new DiscordIpcConnection(channel, endpoint); + } catch (IOException exception) { + lastException = exception; + } + } + + throw missingDiscordException(lastException); + } + + private static List unixCandidates() { + List candidates = new ArrayList<>(); + for (Path runtimeDirectory : unixRuntimeDirectories()) { + for (int index = 0; index < 10; index++) { + candidates.add(runtimeDirectory.resolve("discord-ipc-" + index)); + candidates.add(runtimeDirectory.resolve("snap.discord/discord-ipc-" + index)); + candidates.add(runtimeDirectory.resolve("app/com.discordapp.Discord/discord-ipc-" + index)); + } + } + + return candidates; + } + + private static Set unixRuntimeDirectories() { + Set directories = new LinkedHashSet<>(); + addEnvironmentPath(directories, "XDG_RUNTIME_DIR"); + addEnvironmentPath(directories, "TMPDIR"); + addEnvironmentPath(directories, "TMP"); + addEnvironmentPath(directories, "TEMP"); + directories.add(Path.of("/tmp")); + return directories; + } + + private static void addEnvironmentPath(Set directories, String name) { + String value = System.getenv(name); + if (value != null && !value.isBlank()) { + directories.add(Path.of(value)); + } + } + + private static boolean isWindows() { + return System.getProperty("os.name", "").toLowerCase(Locale.ROOT).contains("win"); + } + + private static IOException missingDiscordException(IOException cause) { + IOException exception = new IOException("Aucune connexion Discord IPC trouvee. Lance Discord puis redemarre Minecraft."); + if (cause != null) { + exception.initCause(cause); + } + return exception; + } + + record IpcFrame(int opcode, String payload) { + } +} diff --git a/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/title/CustomTitleIconClient.java b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/title/CustomTitleIconClient.java new file mode 100644 index 0000000..a4f94d5 --- /dev/null +++ b/Interfaces/helloworld/src/client/java/fr/koka99cab/helloworld/client/title/CustomTitleIconClient.java @@ -0,0 +1,162 @@ +package fr.koka99cab.helloworld.client.title; + +import com.mojang.blaze3d.platform.Window; +import fr.koka99cab.helloworld.HelloWorldMod; +import java.awt.EventQueue; +import java.awt.Taskbar; +import java.awt.image.BufferedImage; +import java.io.IOException; +import java.io.InputStream; +import java.nio.ByteBuffer; +import java.util.ArrayList; +import java.util.List; +import java.util.Locale; +import javax.imageio.ImageIO; +import org.lwjgl.glfw.GLFW; +import org.lwjgl.glfw.GLFWImage; +import org.lwjgl.system.MemoryStack; +import org.lwjgl.system.MemoryUtil; + +public final class CustomTitleIconClient { + private static final String WINDOW_TITLE = "sanctuary"; + private static final String APPLICATION_ICON_RESOURCE = "/assets/helloworld/icon.png"; + private static final boolean IS_MAC_OS = System.getProperty("os.name", "").toLowerCase(Locale.ROOT).contains("mac"); + private static final String[] WINDOW_ICON_RESOURCES = { + APPLICATION_ICON_RESOURCE + }; + + private CustomTitleIconClient() { + } + + public static String windowTitle() { + return WINDOW_TITLE; + } + + public static void apply(Window window) { + applyApplicationIcon(); + window.setTitle(WINDOW_TITLE); + + if (IS_MAC_OS) { + HelloWorldMod.LOGGER.info("Skipping GLFW window icon on macOS because Cocoa windows do not support it."); + return; + } + + List pixelBuffers = new ArrayList<>(WINDOW_ICON_RESOURCES.length); + + try (MemoryStack stack = MemoryStack.stackPush()) { + GLFWImage.Buffer iconBuffer = GLFWImage.malloc(WINDOW_ICON_RESOURCES.length, stack); + + for (int i = 0; i < WINDOW_ICON_RESOURCES.length; i++) { + IconData iconData = loadIcon(WINDOW_ICON_RESOURCES[i]); + pixelBuffers.add(iconData.pixels()); + + iconBuffer.position(i); + iconBuffer.width(iconData.width()); + iconBuffer.height(iconData.height()); + iconBuffer.pixels(iconData.pixels()); + } + + iconBuffer.position(0); + GLFW.glfwSetWindowIcon(window.handle(), iconBuffer); + HelloWorldMod.LOGGER.info("Applied sanctuary window title and icon."); + } catch (IOException exception) { + HelloWorldMod.LOGGER.error("Failed to load the sanctuary window icon.", exception); + } finally { + pixelBuffers.forEach(MemoryUtil::memFree); + } + } + + private static void applyApplicationIcon() { + try { + BufferedImage iconImage = loadBufferedImage(APPLICATION_ICON_RESOURCE); + applyTaskbarIcon(iconImage); + + if (canUseAppleDockApi()) { + EventQueue.invokeLater(() -> applyAppleDockIcon(iconImage)); + } + } catch (IOException exception) { + HelloWorldMod.LOGGER.warn("Unable to load the sanctuary application icon.", exception); + } + } + + private static boolean canUseAppleDockApi() { + if (!IS_MAC_OS) { + return false; + } + + return ModuleLayer.boot() + .findModule("java.desktop") + .map(module -> module.isExported("com.apple.eawt", CustomTitleIconClient.class.getModule())) + .orElse(false); + } + + private static void applyTaskbarIcon(BufferedImage iconImage) { + try { + if (!Taskbar.isTaskbarSupported()) { + return; + } + + Taskbar taskbar = Taskbar.getTaskbar(); + if (!taskbar.isSupported(Taskbar.Feature.ICON_IMAGE)) { + return; + } + + taskbar.setIconImage(iconImage); + HelloWorldMod.LOGGER.info("Applied sanctuary taskbar or Dock icon."); + } catch (RuntimeException exception) { + HelloWorldMod.LOGGER.warn("Unable to apply the taskbar or Dock icon.", exception); + } + } + + private static void applyAppleDockIcon(BufferedImage iconImage) { + try { + Class applicationClass = Class.forName("com.apple.eawt.Application"); + Object application = applicationClass.getMethod("getApplication").invoke(null); + applicationClass.getMethod("setDockIconImage", java.awt.Image.class).invoke(application, iconImage); + HelloWorldMod.LOGGER.info("Applied sanctuary Dock icon through com.apple.eawt.Application."); + } catch (ReflectiveOperationException | RuntimeException exception) { + HelloWorldMod.LOGGER.warn("Unable to apply the Dock icon through com.apple.eawt.Application.", exception); + } + } + + private static IconData loadIcon(String resourcePath) throws IOException { + return toIconData(loadBufferedImage(resourcePath)); + } + + private static BufferedImage loadBufferedImage(String resourcePath) throws IOException { + try (InputStream inputStream = CustomTitleIconClient.class.getResourceAsStream(resourcePath)) { + if (inputStream == null) { + throw new IOException("Missing icon resource: " + resourcePath); + } + + BufferedImage image = ImageIO.read(inputStream); + if (image == null) { + throw new IOException("Unable to decode image: " + resourcePath); + } + + return image; + } + } + + private static IconData toIconData(BufferedImage image) { + int width = image.getWidth(); + int height = image.getHeight(); + int[] pixels = new int[width * height]; + ByteBuffer pixelBuffer = MemoryUtil.memAlloc(width * height * 4); + + image.getRGB(0, 0, width, height, pixels, 0, width); + + for (int pixel : pixels) { + pixelBuffer.put((byte) (pixel >> 16 & 0xFF)); + pixelBuffer.put((byte) (pixel >> 8 & 0xFF)); + pixelBuffer.put((byte) (pixel & 0xFF)); + pixelBuffer.put((byte) (pixel >> 24 & 0xFF)); + } + + pixelBuffer.flip(); + return new IconData(width, height, pixelBuffer); + } + + private record IconData(int width, int height, ByteBuffer pixels) { + } +} diff --git a/Interfaces/helloworld/src/client/resources/assets/helloworld/textures/gui/loading_sheet.png b/Interfaces/helloworld/src/client/resources/assets/helloworld/textures/gui/loading_sheet.png new file mode 100644 index 0000000..dc88bd5 Binary files /dev/null and b/Interfaces/helloworld/src/client/resources/assets/helloworld/textures/gui/loading_sheet.png differ diff --git a/Interfaces/helloworld/src/client/resources/helloworld.client.mixins.json b/Interfaces/helloworld/src/client/resources/helloworld.client.mixins.json new file mode 100644 index 0000000..645f466 --- /dev/null +++ b/Interfaces/helloworld/src/client/resources/helloworld.client.mixins.json @@ -0,0 +1,19 @@ +{ + "required": true, + "package": "fr.koka99cab.helloworld.client.mixin", + "compatibilityLevel": "JAVA_25", + "client": [ + "LoadingOverlayMixin", + "MinecraftClientMixin", + "OnlineServerEntryMixin", + "PauseScreenMixin", + "TitleScreenMixin", + "WindowMixin" + ], + "injectors": { + "defaultRequire": 1 + }, + "overwrites": { + "requireAnnotations": true + } +} diff --git a/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/HelloWorldMod.java b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/HelloWorldMod.java new file mode 100644 index 0000000..9b894b8 --- /dev/null +++ b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/HelloWorldMod.java @@ -0,0 +1,17 @@ +package fr.koka99cab.helloworld; + +import fr.koka99cab.helloworld.motd.MotdPlusPlusMod; +import net.fabricmc.api.ModInitializer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class HelloWorldMod implements ModInitializer { + public static final String MOD_ID = "helloworld"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + MotdPlusPlusMod.initialize(); + LOGGER.info("helloworld charge pour Minecraft 26.1.2."); + } +} diff --git a/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/mixin/MinecraftServerStatusMixin.java b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/mixin/MinecraftServerStatusMixin.java new file mode 100644 index 0000000..0f5b027 --- /dev/null +++ b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/mixin/MinecraftServerStatusMixin.java @@ -0,0 +1,18 @@ +package fr.koka99cab.helloworld.mixin; + +import fr.koka99cab.helloworld.motd.MotdPlusPlusMod; +import net.minecraft.network.protocol.status.ServerStatus; +import net.minecraft.server.MinecraftServer; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(MinecraftServer.class) +public abstract class MinecraftServerStatusMixin { + @Inject(method = "getStatus", at = @At("RETURN"), cancellable = true) + private void motdpp$replaceStatusSnapshot(CallbackInfoReturnable cir) { + MinecraftServer server = (MinecraftServer) (Object) this; + cir.setReturnValue(MotdPlusPlusMod.CONTROLLER.dynamicStatus(server, cir.getReturnValue())); + } +} diff --git a/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/AnimationPayload.java b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/AnimationPayload.java new file mode 100644 index 0000000..32227a8 --- /dev/null +++ b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/AnimationPayload.java @@ -0,0 +1,114 @@ +package fr.koka99cab.helloworld.motd; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import fr.koka99cab.helloworld.motd.config.MotdppConfig; +import org.slf4j.Logger; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.nio.charset.StandardCharsets; +import java.util.Base64; +import java.util.List; +import java.util.Objects; +import java.util.zip.GZIPInputStream; +import java.util.zip.GZIPOutputStream; + +public final class AnimationPayload { + private static final Gson GSON = new GsonBuilder() + .disableHtmlEscaping() + .create(); + private static final String PREFIX = "helloworld_motd:"; + private static final int MAX_INSERTION_CHARS = 20_000; + + public String motdMode; + public String scrollText; + public String scrollPadding; + public int scrollWindowWidth; + public int motdSpeedTicks; + public List motdFrames; + public String gifBase64; + public long tickOffset; + + public static String encode(MotdppConfig config, byte[] gifBytes, long tickOffset, Logger logger) { + AnimationPayload payload = new AnimationPayload(); + payload.motdMode = config.normalizedMode(); + payload.scrollText = config.normalizedScrollText(); + payload.scrollPadding = config.normalizedScrollPadding(); + payload.scrollWindowWidth = config.normalizedScrollWindowWidth(); + payload.motdSpeedTicks = config.normalizedMotdSpeedTicks(); + payload.motdFrames = config.normalizedFrames(); + payload.tickOffset = tickOffset; + payload.gifBase64 = gifBytes == null ? null : Base64.getEncoder().encodeToString(gifBytes); + + String encoded = encodePayload(payload); + + if (encoded.length() <= MAX_INSERTION_CHARS) { + return encoded; + } + + if (payload.gifBase64 != null) { + payload.gifBase64 = null; + encoded = encodePayload(payload); + + if (encoded.length() <= MAX_INSERTION_CHARS) { + logger.warn("motd++: payload GIF trop gros pour le ping status, animation d'icone client desactivee"); + return encoded; + } + } + + logger.warn("motd++: payload MOTD trop gros pour le ping status, animation client desactivee"); + return null; + } + + public static AnimationPayload decode(String insertion, Logger logger) { + if (insertion == null || !insertion.startsWith(PREFIX)) { + return null; + } + + try { + byte[] compressed = Base64.getDecoder().decode(insertion.substring(PREFIX.length())); + + try (GZIPInputStream gzipInputStream = new GZIPInputStream(new ByteArrayInputStream(compressed))) { + String json = new String(gzipInputStream.readAllBytes(), StandardCharsets.UTF_8); + AnimationPayload payload = GSON.fromJson(json, AnimationPayload.class); + return payload == null ? null : payload; + } + } catch (IOException | IllegalArgumentException exception) { + logger.warn("motd++: impossible de decoder le payload client", exception); + return null; + } + } + + public byte[] gifBytes() { + if (this.gifBase64 == null || this.gifBase64.isBlank()) { + return null; + } + + try { + return Base64.getDecoder().decode(this.gifBase64); + } catch (IllegalArgumentException exception) { + return null; + } + } + + public String normalizedMode() { + return Objects.equals(this.motdMode, "frames") ? "frames" : "scroll"; + } + + public int normalizedMotdSpeedTicks() { + return Math.max(1, this.motdSpeedTicks); + } + + private static String encodePayload(AnimationPayload payload) { + try (ByteArrayOutputStream byteStream = new ByteArrayOutputStream(); + GZIPOutputStream gzipOutputStream = new GZIPOutputStream(byteStream)) { + gzipOutputStream.write(GSON.toJson(payload).getBytes(StandardCharsets.UTF_8)); + gzipOutputStream.finish(); + return PREFIX + Base64.getEncoder().encodeToString(byteStream.toByteArray()); + } catch (IOException exception) { + throw new IllegalStateException("Impossible d'encoder le payload motd++", exception); + } + } +} diff --git a/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/GifFrameData.java b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/GifFrameData.java new file mode 100644 index 0000000..20bd61b --- /dev/null +++ b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/GifFrameData.java @@ -0,0 +1,4 @@ +package fr.koka99cab.helloworld.motd; + +public record GifFrameData(byte[] pngBytes, int durationTicks) { +} diff --git a/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/GifIconLoader.java b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/GifIconLoader.java new file mode 100644 index 0000000..ca405a3 --- /dev/null +++ b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/GifIconLoader.java @@ -0,0 +1,162 @@ +package fr.koka99cab.helloworld.motd; + +import org.slf4j.Logger; +import org.w3c.dom.NodeList; + +import javax.imageio.ImageIO; +import javax.imageio.ImageReader; +import javax.imageio.metadata.IIOMetadata; +import javax.imageio.metadata.IIOMetadataNode; +import javax.imageio.stream.ImageInputStream; +import java.awt.Graphics2D; +import java.awt.RenderingHints; +import java.awt.image.BufferedImage; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; + +public final class GifIconLoader { + private static final int ICON_SIZE = 64; + + private GifIconLoader() { + } + + public static byte[] readGifBytes(Path gifPath, Logger logger) { + if (!Files.isRegularFile(gifPath)) { + return null; + } + + try { + return Files.readAllBytes(gifPath); + } catch (IOException exception) { + logger.error("motd++: echec de lecture du GIF {}", gifPath, exception); + return null; + } + } + + public static List load(Path gifPath, Logger logger) { + if (!Files.isRegularFile(gifPath)) { + return List.of(); + } + + try (InputStream inputStream = Files.newInputStream(gifPath)) { + return load(inputStream, gifPath.getFileName().toString(), logger); + } catch (IOException exception) { + logger.error("motd++: echec du chargement de {}", gifPath, exception); + return List.of(); + } + } + + public static List load(byte[] gifBytes, Logger logger) { + if (gifBytes == null || gifBytes.length == 0) { + return List.of(); + } + + try (InputStream inputStream = new ByteArrayInputStream(gifBytes)) { + return load(inputStream, "payload GIF", logger); + } catch (IOException exception) { + logger.error("motd++: echec du chargement du GIF embarque", exception); + return List.of(); + } + } + + private static List load(InputStream inputStream, String sourceName, Logger logger) throws IOException { + try (ImageInputStream imageInputStream = ImageIO.createImageInputStream(inputStream)) { + if (imageInputStream == null) { + logger.warn("motd++: impossible de lire {}", sourceName); + return List.of(); + } + + Iterator readers = ImageIO.getImageReadersByFormatName("gif"); + + if (!readers.hasNext()) { + logger.warn("motd++: aucun reader GIF disponible pour {}", sourceName); + return List.of(); + } + + ImageReader reader = readers.next(); + + try { + reader.setInput(imageInputStream, false, false); + int frameCount = reader.getNumImages(true); + List frames = new ArrayList<>(frameCount); + + for (int frameIndex = 0; frameIndex < frameCount; frameIndex++) { + BufferedImage rawFrame = reader.read(frameIndex); + BufferedImage normalizedFrame = scaleToIcon(rawFrame); + int durationTicks = readFrameDurationTicks(reader.getImageMetadata(frameIndex)); + frames.add(new GifFrameData(writePng(normalizedFrame), durationTicks)); + } + + logger.info("motd++: {} frame(s) GIF chargee(s) depuis {}", frames.size(), sourceName); + return frames; + } finally { + reader.dispose(); + } + } + } + + private static BufferedImage scaleToIcon(BufferedImage source) { + if (source.getWidth() == ICON_SIZE && source.getHeight() == ICON_SIZE && source.getType() == BufferedImage.TYPE_INT_ARGB) { + return source; + } + + BufferedImage target = new BufferedImage(ICON_SIZE, ICON_SIZE, BufferedImage.TYPE_INT_ARGB); + Graphics2D graphics = target.createGraphics(); + + try { + graphics.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); + graphics.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY); + graphics.drawImage(source, 0, 0, ICON_SIZE, ICON_SIZE, null); + } finally { + graphics.dispose(); + } + + return target; + } + + private static int readFrameDurationTicks(IIOMetadata metadata) { + if (metadata == null) { + return 1; + } + + String nativeFormat = metadata.getNativeMetadataFormatName(); + + if (nativeFormat == null) { + return 1; + } + + IIOMetadataNode root = (IIOMetadataNode) metadata.getAsTree(nativeFormat); + NodeList graphicControls = root.getElementsByTagName("GraphicControlExtension"); + + if (graphicControls.getLength() == 0) { + return 1; + } + + IIOMetadataNode graphicControl = (IIOMetadataNode) graphicControls.item(0); + String delayTime = graphicControl.getAttribute("delayTime"); + + try { + int hundredths = Integer.parseInt(delayTime); + return Math.max(1, Math.round(hundredths / 5.0f)); + } catch (NumberFormatException ignored) { + return 1; + } + } + + private static byte[] writePng(BufferedImage image) throws IOException { + try (ByteArrayOutputStream outputStream = new ByteArrayOutputStream()) { + if (!ImageIO.write(image, "PNG", outputStream)) { + throw new IOException("Aucun writer PNG disponible"); + } + + return outputStream.toByteArray(); + } + } +} diff --git a/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/MotdPlusPlusMod.java b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/MotdPlusPlusMod.java new file mode 100644 index 0000000..0da9ab8 --- /dev/null +++ b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/MotdPlusPlusMod.java @@ -0,0 +1,40 @@ +package fr.koka99cab.helloworld.motd; + +import fr.koka99cab.helloworld.HelloWorldMod; +import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerLifecycleEvents; +import net.minecraft.commands.Commands; +import net.minecraft.network.chat.Component; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class MotdPlusPlusMod { + public static final Logger LOGGER = LoggerFactory.getLogger(HelloWorldMod.MOD_ID + "/motdpp"); + public static final MotdStatusController CONTROLLER = new MotdStatusController(); + private static boolean initialized; + + private MotdPlusPlusMod() { + } + + public static void initialize() { + if (initialized) { + return; + } + + initialized = true; + ServerLifecycleEvents.SERVER_STARTED.register(CONTROLLER::start); + ServerLifecycleEvents.SERVER_STOPPING.register(CONTROLLER::stop); + CommandRegistrationCallback.EVENT.register((dispatcher, registryAccess, environment) -> + dispatcher.register( + Commands.literal("motdpp") + .requires(Commands.hasPermission(Commands.LEVEL_ADMINS)) + .then(Commands.literal("reload") + .executes(context -> { + CONTROLLER.reload(context.getSource().getServer()); + context.getSource().sendSuccess(() -> Component.literal("sanctuary MOTD++ config rechargee."), true); + return 1; + })) + ) + ); + } +} diff --git a/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/MotdStatusController.java b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/MotdStatusController.java new file mode 100644 index 0000000..140ad33 --- /dev/null +++ b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/MotdStatusController.java @@ -0,0 +1,217 @@ +package fr.koka99cab.helloworld.motd; + +import fr.koka99cab.helloworld.motd.config.MotdppConfig; +import net.fabricmc.loader.api.FabricLoader; +import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.MutableComponent; +import net.minecraft.network.chat.Style; +import net.minecraft.network.protocol.status.ServerStatus; +import net.minecraft.server.MinecraftServer; + +import java.nio.file.Path; +import java.util.IdentityHashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; + +public final class MotdStatusController { + private static final long NANOS_PER_TICK = 50_000_000L; + + private final Map states = new IdentityHashMap<>(); + + public void start(MinecraftServer server) { + ServerStatus currentStatus = server.getStatus(); + ServerStatus.Favicon fallbackIcon = currentStatus == null ? null : currentStatus.favicon().orElse(null); + this.states.put(server, ServerAnimationState.load(server, fallbackIcon)); + } + + public void stop(MinecraftServer server) { + this.states.remove(server); + } + + public void reload(MinecraftServer server) { + ServerAnimationState currentState = this.states.get(server); + ServerStatus currentStatus = server.getStatus(); + ServerStatus.Favicon fallbackIcon = currentState != null + ? currentState.fallbackIcon() + : currentStatus == null ? null : currentStatus.favicon().orElse(null); + this.states.put(server, ServerAnimationState.load(server, fallbackIcon)); + } + + public ServerStatus dynamicStatus(MinecraftServer server, ServerStatus baseStatus) { + ServerAnimationState state = this.states.get(server); + + if (state == null || baseStatus == null) { + return baseStatus; + } + + return state.createStatus(baseStatus, System.nanoTime()); + } + + private record ServerAnimationState( + MotdppConfig config, + MotdAnimator motdAnimator, + IconAnimator iconAnimator, + ServerStatus.Favicon fallbackIcon, + byte[] rawGifBytes, + long startedAtNanos + ) { + private static final String GIF_FILE_NAME = "server-icon.gif"; + + private static ServerAnimationState load(MinecraftServer server, ServerStatus.Favicon fallbackIcon) { + Path configPath = FabricLoader.getInstance().getConfigDir().resolve("motdpp.json"); + MotdppConfig config = MotdppConfig.load(configPath, MotdPlusPlusMod.LOGGER); + Path gifPath = server.getFile(GIF_FILE_NAME); + List iconFrames = GifIconLoader.load(gifPath, MotdPlusPlusMod.LOGGER).stream() + .map(frame -> new IconAnimator.IconFrame(new ServerStatus.Favicon(frame.pngBytes()), frame.durationTicks())) + .toList(); + return new ServerAnimationState( + config, + MotdAnimator.create(config), + IconAnimator.create(iconFrames), + fallbackIcon, + GifIconLoader.readGifBytes(gifPath, MotdPlusPlusMod.LOGGER), + System.nanoTime() + ); + } + + private ServerStatus createStatus(ServerStatus baseStatus, long nowNanos) { + long elapsedTicks = Math.max(0L, (nowNanos - this.startedAtNanos) / NANOS_PER_TICK); + String motd = this.motdAnimator.frameAt(elapsedTicks); + ServerStatus.Favicon favicon = this.iconAnimator.faviconAt(elapsedTicks, this.fallbackIcon); + String insertion = AnimationPayload.encode(this.config, this.rawGifBytes, elapsedTicks, MotdPlusPlusMod.LOGGER); + MutableComponent description = Component.literal(motd); + + if (insertion != null) { + description = description.withStyle(Style.EMPTY.withInsertion(insertion)); + } + + return new ServerStatus( + description, + baseStatus.players(), + baseStatus.version(), + Optional.ofNullable(favicon), + baseStatus.enforcesSecureChat() + ); + } + } + + private static final class MotdAnimator { + private final String mode; + private final int speedTicks; + private final List frameSequence; + private final int[] scrollCodePoints; + private final int scrollWindowWidth; + + private MotdAnimator(String mode, int speedTicks, List frameSequence, int[] scrollCodePoints, int scrollWindowWidth) { + this.mode = mode; + this.speedTicks = speedTicks; + this.frameSequence = frameSequence; + this.scrollCodePoints = scrollCodePoints; + this.scrollWindowWidth = scrollWindowWidth; + } + + private static MotdAnimator create(MotdppConfig config) { + List frames = config.normalizedFrames(); + String scrollText = config.normalizedScrollText(); + + if ("frames".equals(config.normalizedMode()) || (scrollText.isBlank() && !frames.isEmpty())) { + return new MotdAnimator( + "frames", + config.normalizedMotdSpeedTicks(), + frames, + new int[0], + 0 + ); + } + + if (scrollText.isBlank()) { + scrollText = String.join(" | ", frames); + } + + String scrollSource = scrollText + config.normalizedScrollPadding(); + return new MotdAnimator( + "scroll", + config.normalizedMotdSpeedTicks(), + frames, + scrollSource.codePoints().toArray(), + config.normalizedScrollWindowWidth() + ); + } + + private String frameAt(long elapsedTicks) { + if ("frames".equals(this.mode)) { + long frameStep = elapsedTicks / this.speedTicks; + int frameIndex = (int) (frameStep % this.frameSequence.size()); + String frame = this.frameSequence.get(frameIndex); + return frame.isBlank() ? "motd++" : frame; + } + + if (this.scrollCodePoints.length == 0) { + return this.frameSequence.isEmpty() ? "motd++" : this.frameSequence.getFirst(); + } + + long scrollStep = elapsedTicks / this.speedTicks; + int offset = (int) (scrollStep % this.scrollCodePoints.length); + String frame = buildScrollFrame(offset); + return frame.isBlank() && !this.frameSequence.isEmpty() ? this.frameSequence.getFirst() : frame; + } + + private String buildScrollFrame(int offset) { + if (this.scrollCodePoints.length == 0) { + return ""; + } + + StringBuilder builder = new StringBuilder(); + + for (int index = 0; index < this.scrollWindowWidth; index++) { + int codePoint = this.scrollCodePoints[(offset + index) % this.scrollCodePoints.length]; + builder.appendCodePoint(codePoint); + } + + return builder.toString(); + } + } + + static final class IconAnimator { + private final List frames; + private final long cycleDurationTicks; + + private IconAnimator(List frames) { + this.frames = frames; + this.cycleDurationTicks = frames.stream() + .mapToLong(IconFrame::durationTicks) + .sum(); + } + + private static IconAnimator create(List frames) { + return new IconAnimator(frames); + } + + private ServerStatus.Favicon faviconAt(long elapsedTicks, ServerStatus.Favicon fallbackIcon) { + if (this.frames.isEmpty()) { + return fallbackIcon; + } + + if (this.frames.size() == 1 || this.cycleDurationTicks <= 0L) { + return this.frames.getFirst().favicon(); + } + + long tickInCycle = elapsedTicks % this.cycleDurationTicks; + long cursor = 0L; + + for (IconFrame frame : this.frames) { + cursor += frame.durationTicks(); + + if (tickInCycle < cursor) { + return frame.favicon(); + } + } + + return this.frames.getLast().favicon(); + } + + record IconFrame(ServerStatus.Favicon favicon, int durationTicks) { + } + } +} diff --git a/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/config/MotdppConfig.java b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/config/MotdppConfig.java new file mode 100644 index 0000000..acffad4 --- /dev/null +++ b/Interfaces/helloworld/src/main/java/fr/koka99cab/helloworld/motd/config/MotdppConfig.java @@ -0,0 +1,129 @@ +package fr.koka99cab.helloworld.motd.config; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonParseException; +import org.slf4j.Logger; + +import java.io.IOException; +import java.io.Reader; +import java.io.Writer; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.List; +import java.util.Locale; +import java.util.Objects; + +public final class MotdppConfig { + private static final Gson GSON = new GsonBuilder() + .setPrettyPrinting() + .disableHtmlEscaping() + .create(); + + public String motdMode = "scroll"; + public String scrollText = "Bienvenue sur sanctuary | pose server-icon.gif a la racine du serveur"; + public String scrollPadding = " "; + public int scrollWindowWidth = 48; + public int motdSpeedTicks = 1; + public boolean clientAutoRefresh = false; + public int clientRefreshTicks = 10; + public List motdFrames = new ArrayList<>(List.of( + "sanctuary est pret", + "Ajoute server-icon.gif", + "Edite config/motdpp.json" + )); + + public static MotdppConfig load(Path path, Logger logger) { + MotdppConfig defaults = new MotdppConfig(); + + try { + Files.createDirectories(path.getParent()); + + if (Files.notExists(path)) { + save(path, defaults); + logger.info("motd++: config creee dans {}", path); + return defaults; + } + + try (Reader reader = Files.newBufferedReader(path)) { + MotdppConfig loaded = GSON.fromJson(reader, MotdppConfig.class); + + if (loaded == null) { + save(path, defaults); + return defaults; + } + + return sanitize(loaded); + } + } catch (IOException | JsonParseException exception) { + logger.error("motd++: impossible de charger la config {}, valeurs par defaut utilisees", path, exception); + return defaults; + } + } + + public String normalizedMode() { + String mode = Objects.requireNonNullElse(this.motdMode, "scroll"); + return switch (mode.toLowerCase(Locale.ROOT)) { + case "frames" -> "frames"; + default -> "scroll"; + }; + } + + public String normalizedScrollText() { + return Objects.requireNonNullElse(this.scrollText, ""); + } + + public String normalizedScrollPadding() { + return Objects.requireNonNullElse(this.scrollPadding, " "); + } + + public int normalizedScrollWindowWidth() { + return Math.max(1, this.scrollWindowWidth); + } + + public int normalizedMotdSpeedTicks() { + return Math.max(1, this.motdSpeedTicks); + } + + public boolean normalizedClientAutoRefresh() { + return this.clientAutoRefresh; + } + + public int normalizedClientRefreshTicks() { + return Math.max(1, this.clientRefreshTicks); + } + + public List normalizedFrames() { + List frames = this.motdFrames == null ? List.of() : this.motdFrames.stream() + .filter(Objects::nonNull) + .map(String::strip) + .filter(frame -> !frame.isEmpty()) + .toList(); + + if (!frames.isEmpty()) { + return frames; + } + + return List.of("sanctuary"); + } + + private static MotdppConfig sanitize(MotdppConfig config) { + MotdppConfig sanitized = new MotdppConfig(); + sanitized.motdMode = config.normalizedMode(); + sanitized.scrollText = config.normalizedScrollText(); + sanitized.scrollPadding = config.normalizedScrollPadding(); + sanitized.scrollWindowWidth = config.normalizedScrollWindowWidth(); + sanitized.motdSpeedTicks = config.normalizedMotdSpeedTicks(); + sanitized.clientAutoRefresh = config.normalizedClientAutoRefresh(); + sanitized.clientRefreshTicks = config.normalizedClientRefreshTicks(); + sanitized.motdFrames = new ArrayList<>(config.normalizedFrames()); + return sanitized; + } + + private static void save(Path path, MotdppConfig config) throws IOException { + try (Writer writer = Files.newBufferedWriter(path)) { + GSON.toJson(config, writer); + } + } +} diff --git a/Interfaces/helloworld/src/main/resources/assets/helloworld/icon.png b/Interfaces/helloworld/src/main/resources/assets/helloworld/icon.png new file mode 100644 index 0000000..5d9fc68 Binary files /dev/null and b/Interfaces/helloworld/src/main/resources/assets/helloworld/icon.png differ diff --git a/Interfaces/helloworld/src/main/resources/assets/helloworld/lang/en_us.json b/Interfaces/helloworld/src/main/resources/assets/helloworld/lang/en_us.json new file mode 100644 index 0000000..4443159 --- /dev/null +++ b/Interfaces/helloworld/src/main/resources/assets/helloworld/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.helloworld": "helloworld", + "modmenu.descriptionTranslation.helloworld": "Custom loading screen, menu, title icon and MOTD++." +} diff --git a/Interfaces/helloworld/src/main/resources/assets/helloworld/lang/fr_fr.json b/Interfaces/helloworld/src/main/resources/assets/helloworld/lang/fr_fr.json new file mode 100644 index 0000000..5c333b3 --- /dev/null +++ b/Interfaces/helloworld/src/main/resources/assets/helloworld/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.helloworld": "helloworld", + "modmenu.descriptionTranslation.helloworld": "Ecran de chargement, menu, icone de titre et MOTD++ personnalises." +} diff --git a/Interfaces/helloworld/src/main/resources/fabric.mod.json b/Interfaces/helloworld/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..d4e429a --- /dev/null +++ b/Interfaces/helloworld/src/main/resources/fabric.mod.json @@ -0,0 +1,34 @@ +{ + "schemaVersion": 1, + "id": "helloworld", + "version": "${version}", + "name": "helloworld", + "description": "Adds a custom loading screen, main menu, title icon, and enhanced MOTD for the sanctuary instance.", + "icon": "assets/helloworld/icon.png", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.helloworld.HelloWorldMod" + ], + "client": [ + "fr.koka99cab.helloworld.client.HelloWorldClient" + ] + }, + "mixins": [ + "helloworld.mixins.json", + { + "config": "helloworld.client.mixins.json", + "environment": "client" + } + ], + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Interfaces/helloworld/src/main/resources/helloworld.mixins.json b/Interfaces/helloworld/src/main/resources/helloworld.mixins.json new file mode 100644 index 0000000..294bf1e --- /dev/null +++ b/Interfaces/helloworld/src/main/resources/helloworld.mixins.json @@ -0,0 +1,11 @@ +{ + "required": true, + "package": "fr.koka99cab.helloworld.mixin", + "compatibilityLevel": "JAVA_25", + "mixins": [ + "MinecraftServerStatusMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/Interfaces/sanctuary_rpc/.gitignore b/Interfaces/sanctuary_rpc/.gitignore new file mode 100644 index 0000000..1acf51e --- /dev/null +++ b/Interfaces/sanctuary_rpc/.gitignore @@ -0,0 +1,37 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr + +# Local source assets +/sanctuary.png diff --git a/Interfaces/sanctuary_rpc/README.md b/Interfaces/sanctuary_rpc/README.md new file mode 100644 index 0000000..2d8ddb6 --- /dev/null +++ b/Interfaces/sanctuary_rpc/README.md @@ -0,0 +1,18 @@ +# Sanctuary RPC + +Client-only Fabric mod for Minecraft `26.1.2`. It publishes a Discord Rich Presence saying the player is playing Sanctuary. + +## Setup + +1. Build the mod with Java 25: + +```sh +JAVA_HOME=$PWD/.jdk/current ./gradlew build +``` + +2. Copy `build/libs/sanctuary_rpc-1.0.0.jar` into the Fabric mods folder. +3. Launch Minecraft once. The mod creates `config/sanctuary-rpc.properties`. +4. Replace `clientId=put-your-discord-application-id-here` with the application ID from the Discord Developer Portal. +5. Optional: add a Rich Presence art asset named `sanctuary` in that Discord application, or change `largeImage` in the config. + +Discord must be open on the same computer for IPC to connect. diff --git a/Interfaces/sanctuary_rpc/build.gradle b/Interfaces/sanctuary_rpc/build.gradle new file mode 100644 index 0000000..33f3042 --- /dev/null +++ b/Interfaces/sanctuary_rpc/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "sanctuary_rpc" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Interfaces/sanctuary_rpc/gradle.properties b/Interfaces/sanctuary_rpc/gradle.properties new file mode 100644 index 0000000..3a0f5b0 --- /dev/null +++ b/Interfaces/sanctuary_rpc/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=sanctuary_rpc + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Interfaces/sanctuary_rpc/gradle/wrapper/gradle-wrapper.jar b/Interfaces/sanctuary_rpc/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Interfaces/sanctuary_rpc/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Interfaces/sanctuary_rpc/gradle/wrapper/gradle-wrapper.properties b/Interfaces/sanctuary_rpc/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Interfaces/sanctuary_rpc/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Interfaces/sanctuary_rpc/gradlew b/Interfaces/sanctuary_rpc/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Interfaces/sanctuary_rpc/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Interfaces/sanctuary_rpc/gradlew.bat b/Interfaces/sanctuary_rpc/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Interfaces/sanctuary_rpc/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Interfaces/sanctuary_rpc/settings.gradle b/Interfaces/sanctuary_rpc/settings.gradle new file mode 100644 index 0000000..3f62cd0 --- /dev/null +++ b/Interfaces/sanctuary_rpc/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "sanctuary_rpc" diff --git a/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/SanctuaryRpcClient.java b/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/SanctuaryRpcClient.java new file mode 100644 index 0000000..262b7b2 --- /dev/null +++ b/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/SanctuaryRpcClient.java @@ -0,0 +1,41 @@ +package fr.koka99cab.sanctuaryrpc.client; + +import fr.koka99cab.sanctuaryrpc.SanctuaryRpcMod; +import fr.koka99cab.sanctuaryrpc.client.config.SanctuaryRpcConfig; +import fr.koka99cab.sanctuaryrpc.client.discord.DiscordActivity; +import fr.koka99cab.sanctuaryrpc.client.discord.DiscordIpcClient; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents; + +public class SanctuaryRpcClient implements ClientModInitializer { + private DiscordIpcClient discordIpcClient; + + @Override + public void onInitializeClient() { + SanctuaryRpcConfig config = SanctuaryRpcConfig.load(); + if (!config.enabled()) { + SanctuaryRpcMod.LOGGER.info("Discord RPC Sanctuary desactive dans la configuration."); + return; + } + + if (!config.hasClientId()) { + SanctuaryRpcMod.LOGGER.warn( + "Sanctuary RPC attend un clientId Discord dans config/sanctuary-rpc.properties." + ); + return; + } + + discordIpcClient = new DiscordIpcClient( + config.clientId(), + DiscordActivity.fromConfig(config), + SanctuaryRpcMod.LOGGER + ); + discordIpcClient.start(); + + ClientLifecycleEvents.CLIENT_STOPPING.register(client -> { + if (discordIpcClient != null) { + discordIpcClient.stop(); + } + }); + } +} diff --git a/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/config/SanctuaryRpcConfig.java b/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/config/SanctuaryRpcConfig.java new file mode 100644 index 0000000..1757206 --- /dev/null +++ b/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/config/SanctuaryRpcConfig.java @@ -0,0 +1,115 @@ +package fr.koka99cab.sanctuaryrpc.client.config; + +import fr.koka99cab.sanctuaryrpc.SanctuaryRpcMod; +import net.fabricmc.loader.api.FabricLoader; + +import java.io.IOException; +import java.io.Reader; +import java.io.Writer; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.Properties; + +public record SanctuaryRpcConfig( + boolean enabled, + String clientId, + String details, + String state, + String largeImage, + String largeText, + String smallImage, + String smallText, + boolean showElapsedTime +) { + private static final String CONFIG_FILE = "sanctuary-rpc.properties"; + private static final String DEFAULT_CLIENT_ID = "1522671140735025182"; + private static final String OLD_CLIENT_ID_PLACEHOLDER = "put-your-discord-application-id-here"; + + public static SanctuaryRpcConfig load() { + Path path = FabricLoader.getInstance().getConfigDir().resolve(CONFIG_FILE); + Properties properties = defaultProperties(); + boolean shouldSave = false; + + try { + if (Files.notExists(path)) { + writeDefaults(path, properties); + } else { + try (Reader reader = Files.newBufferedReader(path)) { + properties.load(reader); + } + + shouldSave = migrate(properties); + } + } catch (IOException exception) { + SanctuaryRpcMod.LOGGER.warn("Impossible de lire la configuration Sanctuary RPC, valeurs par defaut utilisees.", exception); + } + + if (shouldSave) { + try { + writeDefaults(path, properties); + } catch (IOException exception) { + SanctuaryRpcMod.LOGGER.warn("Impossible de mettre a jour la configuration Sanctuary RPC.", exception); + } + } + + return new SanctuaryRpcConfig( + Boolean.parseBoolean(properties.getProperty("enabled")), + properties.getProperty("clientId", "").trim(), + properties.getProperty("details", "").trim(), + properties.getProperty("state", "").trim(), + properties.getProperty("largeImage", "").trim(), + properties.getProperty("largeText", "").trim(), + properties.getProperty("smallImage", "").trim(), + properties.getProperty("smallText", "").trim(), + Boolean.parseBoolean(properties.getProperty("showElapsedTime")) + ); + } + + public boolean hasClientId() { + return !clientId.isBlank(); + } + + private static Properties defaultProperties() { + Properties properties = new Properties(); + properties.setProperty("enabled", "true"); + properties.setProperty("clientId", DEFAULT_CLIENT_ID); + properties.setProperty("details", "Joue a Sanctuary"); + properties.setProperty("state", "Minecraft 26.1.2 - Fabric"); + properties.setProperty("largeImage", ""); + properties.setProperty("largeText", "Sanctuary"); + properties.setProperty("smallImage", ""); + properties.setProperty("smallText", ""); + properties.setProperty("showElapsedTime", "true"); + return properties; + } + + private static boolean migrate(Properties properties) { + boolean changed = false; + + String clientId = properties.getProperty("clientId", "").trim(); + if (clientId.isBlank() || OLD_CLIENT_ID_PLACEHOLDER.equals(clientId)) { + properties.setProperty("clientId", DEFAULT_CLIENT_ID); + changed = true; + } + + for (String key : defaultProperties().stringPropertyNames()) { + if (!properties.containsKey(key)) { + properties.setProperty(key, defaultProperties().getProperty(key)); + changed = true; + } + } + + return changed; + } + + private static void writeDefaults(Path path, Properties properties) throws IOException { + Files.createDirectories(path.getParent()); + + try (Writer writer = Files.newBufferedWriter(path)) { + writer.write("# Sanctuary RPC\n"); + writer.write("# clientId doit etre l'identifiant d'une application Discord Developer Portal.\n"); + writer.write("# Pour afficher une image, ajoute un asset Rich Presence nomme comme largeImage.\n"); + properties.store(writer, null); + } + } +} diff --git a/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/discord/DiscordActivity.java b/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/discord/DiscordActivity.java new file mode 100644 index 0000000..97cae59 --- /dev/null +++ b/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/discord/DiscordActivity.java @@ -0,0 +1,60 @@ +package fr.koka99cab.sanctuaryrpc.client.discord; + +import com.google.gson.JsonObject; +import fr.koka99cab.sanctuaryrpc.client.config.SanctuaryRpcConfig; + +import java.time.Instant; + +public record DiscordActivity( + String details, + String state, + String largeImage, + String largeText, + String smallImage, + String smallText, + boolean showElapsedTime, + long startedAt +) { + public static DiscordActivity fromConfig(SanctuaryRpcConfig config) { + return new DiscordActivity( + config.details(), + config.state(), + config.largeImage(), + config.largeText(), + config.smallImage(), + config.smallText(), + config.showElapsedTime(), + Instant.now().getEpochSecond() + ); + } + + public JsonObject toJson() { + JsonObject activity = new JsonObject(); + putIfNotBlank(activity, "details", details); + putIfNotBlank(activity, "state", state); + + if (showElapsedTime) { + JsonObject timestamps = new JsonObject(); + timestamps.addProperty("start", startedAt); + activity.add("timestamps", timestamps); + } + + JsonObject assets = new JsonObject(); + putIfNotBlank(assets, "large_image", largeImage); + putIfNotBlank(assets, "large_text", largeText); + putIfNotBlank(assets, "small_image", smallImage); + putIfNotBlank(assets, "small_text", smallText); + + if (assets.size() > 0) { + activity.add("assets", assets); + } + + return activity; + } + + private static void putIfNotBlank(JsonObject json, String key, String value) { + if (value != null && !value.isBlank()) { + json.addProperty(key, value); + } + } +} diff --git a/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/discord/DiscordIpcClient.java b/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/discord/DiscordIpcClient.java new file mode 100644 index 0000000..3bc1aba --- /dev/null +++ b/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/discord/DiscordIpcClient.java @@ -0,0 +1,243 @@ +package fr.koka99cab.sanctuaryrpc.client.discord; + +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import org.slf4j.Logger; + +import java.io.IOException; +import java.util.UUID; +import java.util.concurrent.atomic.AtomicBoolean; + +public final class DiscordIpcClient { + private static final long RECONNECT_DELAY_MILLIS = 15_000L; + private static final long ACTIVITY_REFRESH_MILLIS = 30_000L; + + private final String clientId; + private final DiscordActivity activity; + private final Logger logger; + private final AtomicBoolean running = new AtomicBoolean(); + + private volatile DiscordIpcConnection connection; + private volatile String lastActivityNonce; + private Thread worker; + private boolean missingDiscordLogged; + private boolean activityAcceptedLogged; + + public DiscordIpcClient(String clientId, DiscordActivity activity, Logger logger) { + this.clientId = clientId; + this.activity = activity; + this.logger = logger; + } + + public void start() { + if (!running.compareAndSet(false, true)) { + return; + } + + worker = new Thread(this::run, "Sanctuary Discord RPC"); + worker.setDaemon(true); + worker.start(); + } + + public void stop() { + if (!running.compareAndSet(true, false)) { + return; + } + + DiscordIpcConnection activeConnection = connection; + if (activeConnection != null) { + try { + clearActivity(activeConnection); + } catch (IOException exception) { + logger.debug("Impossible d'effacer la presence Discord.", exception); + } + + try { + activeConnection.close(); + } catch (IOException exception) { + logger.debug("Impossible de fermer la connexion Discord IPC.", exception); + } + } + + Thread activeWorker = worker; + if (activeWorker != null) { + activeWorker.interrupt(); + } + } + + private void run() { + while (running.get()) { + try (DiscordIpcConnection activeConnection = DiscordIpcConnection.open()) { + connection = activeConnection; + handshake(activeConnection); + setActivity(activeConnection); + missingDiscordLogged = false; + logger.info("Presence Discord Sanctuary active via {}.", activeConnection.endpoint()); + AtomicBoolean refreshRunning = new AtomicBoolean(true); + Thread refreshWorker = startRefreshWorker(activeConnection, refreshRunning); + try { + readLoop(activeConnection); + } finally { + refreshRunning.set(false); + refreshWorker.interrupt(); + } + } catch (IOException exception) { + logConnectionFailure(exception); + } finally { + connection = null; + } + + sleepBeforeReconnect(); + } + } + + private void handshake(DiscordIpcConnection activeConnection) throws IOException { + JsonObject payload = new JsonObject(); + payload.addProperty("v", 1); + payload.addProperty("client_id", clientId); + activeConnection.writeFrame(DiscordIpcConnection.OPCODE_HANDSHAKE, payload); + } + + private void setActivity(DiscordIpcConnection activeConnection) throws IOException { + JsonObject args = new JsonObject(); + args.addProperty("pid", ProcessHandle.current().pid()); + args.add("activity", activity.toJson()); + + JsonObject payload = new JsonObject(); + payload.addProperty("cmd", "SET_ACTIVITY"); + payload.add("args", args); + String nonce = UUID.randomUUID().toString(); + payload.addProperty("nonce", nonce); + lastActivityNonce = nonce; + + activeConnection.writeFrame(DiscordIpcConnection.OPCODE_FRAME, payload); + } + + private void clearActivity(DiscordIpcConnection activeConnection) throws IOException { + JsonObject args = new JsonObject(); + args.addProperty("pid", ProcessHandle.current().pid()); + args.add("activity", null); + + JsonObject payload = new JsonObject(); + payload.addProperty("cmd", "SET_ACTIVITY"); + payload.add("args", args); + payload.addProperty("nonce", UUID.randomUUID().toString()); + + activeConnection.writeFrame(DiscordIpcConnection.OPCODE_FRAME, payload); + } + + private void readLoop(DiscordIpcConnection activeConnection) throws IOException { + while (running.get()) { + DiscordIpcConnection.IpcFrame frame = activeConnection.readFrame(); + if (frame == null || frame.opcode() == DiscordIpcConnection.OPCODE_CLOSE) { + return; + } + + if (frame.opcode() == DiscordIpcConnection.OPCODE_PING) { + activeConnection.writeFrame(DiscordIpcConnection.OPCODE_PONG, frame.payload()); + continue; + } + + if (frame.opcode() == DiscordIpcConnection.OPCODE_FRAME) { + handlePayload(frame.payload()); + } + } + } + + private Thread startRefreshWorker(DiscordIpcConnection activeConnection, AtomicBoolean refreshRunning) { + Thread refreshWorker = new Thread(() -> { + while (running.get() && refreshRunning.get()) { + try { + Thread.sleep(ACTIVITY_REFRESH_MILLIS); + if (running.get() && refreshRunning.get()) { + setActivity(activeConnection); + } + } catch (InterruptedException exception) { + Thread.currentThread().interrupt(); + } catch (IOException exception) { + logger.debug("Impossible de rafraichir la presence Discord.", exception); + refreshRunning.set(false); + } + } + }, "Sanctuary Discord RPC refresh"); + refreshWorker.setDaemon(true); + refreshWorker.start(); + return refreshWorker; + } + + private void handlePayload(String payload) { + try { + JsonObject json = JsonParser.parseString(payload).getAsJsonObject(); + String command = stringMember(json, "cmd"); + String event = stringMember(json, "evt"); + String nonce = stringMember(json, "nonce"); + + if ("ERROR".equals(command)) { + JsonObject data = objectMember(json, "data"); + String message = data == null ? payload : stringMember(data, "message"); + logger.warn("Discord RPC a renvoye une erreur: {}", message == null ? payload : message); + } else if ("DISPATCH".equals(command) && "READY".equals(event)) { + logger.debug("Discord RPC pret."); + } else if ("SET_ACTIVITY".equals(command) && nonce != null && nonce.equals(lastActivityNonce)) { + logActivityAccepted(json); + } + } catch (RuntimeException exception) { + logger.debug("Payload Discord RPC ignore.", exception); + } + } + + private void logActivityAccepted(JsonObject payload) { + if (activityAcceptedLogged) { + logger.debug("Discord RPC confirme le rafraichissement de l'activite."); + return; + } + + JsonObject data = objectMember(payload, "data"); + String name = data == null ? null : stringMember(data, "name"); + String details = data == null ? null : stringMember(data, "details"); + String state = data == null ? null : stringMember(data, "state"); + logger.info( + "Discord RPC confirme l'activite: name={}, details={}, state={}.", + name == null ? "?" : name, + details == null ? "?" : details, + state == null ? "?" : state + ); + activityAcceptedLogged = true; + } + + private void logConnectionFailure(IOException exception) { + if (!running.get()) { + return; + } + + if (!missingDiscordLogged) { + logger.warn(exception.getMessage()); + missingDiscordLogged = true; + } else { + logger.debug("Reconnexion Discord RPC en attente.", exception); + } + } + + private void sleepBeforeReconnect() { + if (!running.get()) { + return; + } + + try { + Thread.sleep(RECONNECT_DELAY_MILLIS); + } catch (InterruptedException exception) { + Thread.currentThread().interrupt(); + } + } + + private static JsonObject objectMember(JsonObject json, String memberName) { + JsonElement element = json.get(memberName); + return element != null && element.isJsonObject() ? element.getAsJsonObject() : null; + } + + private static String stringMember(JsonObject json, String memberName) { + JsonElement element = json.get(memberName); + return element != null && element.isJsonPrimitive() ? element.getAsString() : null; + } +} diff --git a/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/discord/DiscordIpcConnection.java b/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/discord/DiscordIpcConnection.java new file mode 100644 index 0000000..cf5170c --- /dev/null +++ b/Interfaces/sanctuary_rpc/src/client/java/fr/koka99cab/sanctuaryrpc/client/discord/DiscordIpcConnection.java @@ -0,0 +1,208 @@ +package fr.koka99cab.sanctuaryrpc.client.discord; + +import com.google.gson.Gson; +import com.google.gson.JsonObject; + +import java.io.Closeable; +import java.io.IOException; +import java.net.StandardProtocolFamily; +import java.net.UnixDomainSocketAddress; +import java.nio.ByteBuffer; +import java.nio.ByteOrder; +import java.nio.channels.ByteChannel; +import java.nio.channels.FileChannel; +import java.nio.channels.SocketChannel; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.StandardOpenOption; +import java.util.ArrayList; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Locale; +import java.util.Set; + +final class DiscordIpcConnection implements Closeable { + static final int OPCODE_HANDSHAKE = 0; + static final int OPCODE_FRAME = 1; + static final int OPCODE_CLOSE = 2; + static final int OPCODE_PING = 3; + static final int OPCODE_PONG = 4; + + private static final Gson GSON = new Gson(); + private static final int MAX_FRAME_SIZE = 1024 * 1024; + + private final ByteChannel channel; + private final String endpoint; + + private DiscordIpcConnection(ByteChannel channel, String endpoint) { + this.channel = channel; + this.endpoint = endpoint; + } + + static DiscordIpcConnection open() throws IOException { + if (isWindows()) { + return openWindowsPipe(); + } + + return openUnixSocket(); + } + + synchronized void writeFrame(int opcode, JsonObject payload) throws IOException { + writeFrame(opcode, GSON.toJson(payload)); + } + + synchronized void writeFrame(int opcode, String payload) throws IOException { + byte[] payloadBytes = payload.getBytes(StandardCharsets.UTF_8); + ByteBuffer buffer = ByteBuffer.allocate(8 + payloadBytes.length).order(ByteOrder.LITTLE_ENDIAN); + buffer.putInt(opcode); + buffer.putInt(payloadBytes.length); + buffer.put(payloadBytes); + buffer.flip(); + writeFully(buffer); + } + + IpcFrame readFrame() throws IOException { + ByteBuffer header = ByteBuffer.allocate(8).order(ByteOrder.LITTLE_ENDIAN); + if (!readFully(header)) { + return null; + } + + header.flip(); + int opcode = header.getInt(); + int length = header.getInt(); + if (length < 0 || length > MAX_FRAME_SIZE) { + throw new IOException("Discord IPC frame invalide: " + length + " octets."); + } + + ByteBuffer payload = ByteBuffer.allocate(length); + if (!readFully(payload)) { + return null; + } + + payload.flip(); + return new IpcFrame(opcode, StandardCharsets.UTF_8.decode(payload).toString()); + } + + String endpoint() { + return endpoint; + } + + @Override + public void close() throws IOException { + channel.close(); + } + + private void writeFully(ByteBuffer buffer) throws IOException { + while (buffer.hasRemaining()) { + int written = channel.write(buffer); + if (written == 0) { + Thread.onSpinWait(); + } + } + } + + private boolean readFully(ByteBuffer buffer) throws IOException { + while (buffer.hasRemaining()) { + int read = channel.read(buffer); + if (read < 0) { + return false; + } + + if (read == 0) { + Thread.onSpinWait(); + } + } + + return true; + } + + private static DiscordIpcConnection openUnixSocket() throws IOException { + IOException lastException = null; + + for (Path candidate : unixCandidates()) { + if (!Files.exists(candidate)) { + continue; + } + + SocketChannel socket = null; + try { + socket = SocketChannel.open(StandardProtocolFamily.UNIX); + socket.connect(UnixDomainSocketAddress.of(candidate)); + return new DiscordIpcConnection(socket, candidate.toString()); + } catch (IOException exception) { + lastException = exception; + if (socket != null) { + socket.close(); + } + } + } + + throw missingDiscordException(lastException); + } + + private static DiscordIpcConnection openWindowsPipe() throws IOException { + IOException lastException = null; + + for (int index = 0; index < 10; index++) { + String endpoint = "\\\\.\\pipe\\discord-ipc-" + index; + try { + FileChannel channel = FileChannel.open( + Path.of(endpoint), + StandardOpenOption.READ, + StandardOpenOption.WRITE + ); + return new DiscordIpcConnection(channel, endpoint); + } catch (IOException exception) { + lastException = exception; + } + } + + throw missingDiscordException(lastException); + } + + private static List unixCandidates() { + List candidates = new ArrayList<>(); + for (Path runtimeDirectory : unixRuntimeDirectories()) { + for (int index = 0; index < 10; index++) { + candidates.add(runtimeDirectory.resolve("discord-ipc-" + index)); + candidates.add(runtimeDirectory.resolve("snap.discord/discord-ipc-" + index)); + candidates.add(runtimeDirectory.resolve("app/com.discordapp.Discord/discord-ipc-" + index)); + } + } + + return candidates; + } + + private static Set unixRuntimeDirectories() { + Set directories = new LinkedHashSet<>(); + addEnvironmentPath(directories, "XDG_RUNTIME_DIR"); + addEnvironmentPath(directories, "TMPDIR"); + addEnvironmentPath(directories, "TMP"); + addEnvironmentPath(directories, "TEMP"); + directories.add(Path.of("/tmp")); + return directories; + } + + private static void addEnvironmentPath(Set directories, String name) { + String value = System.getenv(name); + if (value != null && !value.isBlank()) { + directories.add(Path.of(value)); + } + } + + private static boolean isWindows() { + return System.getProperty("os.name", "").toLowerCase(Locale.ROOT).contains("win"); + } + + private static IOException missingDiscordException(IOException cause) { + IOException exception = new IOException("Aucune connexion Discord IPC trouvee. Lance Discord puis redemarre Minecraft."); + if (cause != null) { + exception.initCause(cause); + } + return exception; + } + + record IpcFrame(int opcode, String payload) { + } +} diff --git a/Interfaces/sanctuary_rpc/src/main/java/fr/koka99cab/sanctuaryrpc/SanctuaryRpcMod.java b/Interfaces/sanctuary_rpc/src/main/java/fr/koka99cab/sanctuaryrpc/SanctuaryRpcMod.java new file mode 100644 index 0000000..2f28be5 --- /dev/null +++ b/Interfaces/sanctuary_rpc/src/main/java/fr/koka99cab/sanctuaryrpc/SanctuaryRpcMod.java @@ -0,0 +1,15 @@ +package fr.koka99cab.sanctuaryrpc; + +import net.fabricmc.api.ModInitializer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class SanctuaryRpcMod implements ModInitializer { + public static final String MOD_ID = "sanctuary_rpc"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + LOGGER.info("Sanctuary RPC initialise."); + } +} diff --git a/Interfaces/sanctuary_rpc/src/main/resources/assets/sanctuary_rpc/lang/en_us.json b/Interfaces/sanctuary_rpc/src/main/resources/assets/sanctuary_rpc/lang/en_us.json new file mode 100644 index 0000000..885cce8 --- /dev/null +++ b/Interfaces/sanctuary_rpc/src/main/resources/assets/sanctuary_rpc/lang/en_us.json @@ -0,0 +1,3 @@ +{ + "modmenu.descriptionTranslation.sanctuary_rpc": "Shows a Discord Rich Presence while playing Sanctuary." +} diff --git a/Interfaces/sanctuary_rpc/src/main/resources/assets/sanctuary_rpc/lang/fr_fr.json b/Interfaces/sanctuary_rpc/src/main/resources/assets/sanctuary_rpc/lang/fr_fr.json new file mode 100644 index 0000000..c0d2e01 --- /dev/null +++ b/Interfaces/sanctuary_rpc/src/main/resources/assets/sanctuary_rpc/lang/fr_fr.json @@ -0,0 +1,3 @@ +{ + "modmenu.descriptionTranslation.sanctuary_rpc": "Affiche une presence Discord Rich Presence pendant une partie Sanctuary." +} diff --git a/Interfaces/sanctuary_rpc/src/main/resources/fabric.mod.json b/Interfaces/sanctuary_rpc/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..d18e0b6 --- /dev/null +++ b/Interfaces/sanctuary_rpc/src/main/resources/fabric.mod.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "id": "sanctuary_rpc", + "version": "${version}", + "name": "Sanctuary RPC", + "description": "Discord Rich Presence client mod for showing that you are playing Sanctuary.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "client", + "entrypoints": { + "main": [ + "fr.koka99cab.sanctuaryrpc.SanctuaryRpcMod" + ], + "client": [ + "fr.koka99cab.sanctuaryrpc.client.SanctuaryRpcClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Mobs/happy_creeper/.gitignore b/Mobs/happy_creeper/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Mobs/happy_creeper/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Mobs/happy_creeper/build.gradle b/Mobs/happy_creeper/build.gradle new file mode 100644 index 0000000..3125a62 --- /dev/null +++ b/Mobs/happy_creeper/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "happy_creeper" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Mobs/happy_creeper/gradle.properties b/Mobs/happy_creeper/gradle.properties new file mode 100644 index 0000000..17eceac --- /dev/null +++ b/Mobs/happy_creeper/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=happy_creeper + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Mobs/happy_creeper/gradle/wrapper/gradle-wrapper.jar b/Mobs/happy_creeper/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Mobs/happy_creeper/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Mobs/happy_creeper/gradle/wrapper/gradle-wrapper.properties b/Mobs/happy_creeper/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Mobs/happy_creeper/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Mobs/happy_creeper/gradlew b/Mobs/happy_creeper/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Mobs/happy_creeper/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Mobs/happy_creeper/gradlew.bat b/Mobs/happy_creeper/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Mobs/happy_creeper/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Mobs/happy_creeper/icon.png b/Mobs/happy_creeper/icon.png new file mode 100644 index 0000000..e319c8f Binary files /dev/null and b/Mobs/happy_creeper/icon.png differ diff --git a/Mobs/happy_creeper/settings.gradle b/Mobs/happy_creeper/settings.gradle new file mode 100644 index 0000000..d6f06bd --- /dev/null +++ b/Mobs/happy_creeper/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "happy_creeper" diff --git a/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/HappyCreeperClient.java b/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/HappyCreeperClient.java new file mode 100644 index 0000000..7fcfea3 --- /dev/null +++ b/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/HappyCreeperClient.java @@ -0,0 +1,13 @@ +package fr.koka99cab.happy_creeper.client; + +import fr.koka99cab.happy_creeper.client.renderer.HappyCreeperRenderer; +import fr.koka99cab.happy_creeper.registry.ModEntityTypes; +import net.fabricmc.fabric.api.client.rendering.v1.EntityRendererRegistry; +import net.fabricmc.api.ClientModInitializer; + +public final class HappyCreeperClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + EntityRendererRegistry.register(ModEntityTypes.HAPPY_CREEPER, HappyCreeperRenderer::new); + } +} diff --git a/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/model/HappyCreeperModel.java b/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/model/HappyCreeperModel.java new file mode 100644 index 0000000..a11d450 --- /dev/null +++ b/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/model/HappyCreeperModel.java @@ -0,0 +1,41 @@ +package fr.koka99cab.happy_creeper.client.model; + +import fr.koka99cab.happy_creeper.client.renderer.HappyCreeperRenderState; +import net.minecraft.client.model.EntityModel; +import net.minecraft.client.model.HeadedModel; +import net.minecraft.client.model.geom.ModelPart; +import net.minecraft.util.Mth; + +public final class HappyCreeperModel extends EntityModel implements HeadedModel { + private final ModelPart head; + private final ModelPart rightHindLeg; + private final ModelPart leftHindLeg; + private final ModelPart rightFrontLeg; + private final ModelPart leftFrontLeg; + + public HappyCreeperModel(ModelPart modelPart) { + super(modelPart); + this.head = modelPart.getChild("head"); + this.leftHindLeg = modelPart.getChild("right_hind_leg"); + this.rightHindLeg = modelPart.getChild("left_hind_leg"); + this.leftFrontLeg = modelPart.getChild("right_front_leg"); + this.rightFrontLeg = modelPart.getChild("left_front_leg"); + } + + @Override + public void setupAnim(HappyCreeperRenderState happyCreeperRenderState) { + this.head.yRot = happyCreeperRenderState.yRot * Mth.DEG_TO_RAD; + this.head.xRot = happyCreeperRenderState.xRot * Mth.DEG_TO_RAD; + float walkPosition = happyCreeperRenderState.walkAnimationPos; + float walkSpeed = happyCreeperRenderState.walkAnimationSpeed; + this.rightHindLeg.xRot = Mth.cos(walkPosition * 0.6662F) * 1.4F * walkSpeed; + this.leftHindLeg.xRot = Mth.cos(walkPosition * 0.6662F + Mth.PI) * 1.4F * walkSpeed; + this.rightFrontLeg.xRot = Mth.cos(walkPosition * 0.6662F + Mth.PI) * 1.4F * walkSpeed; + this.leftFrontLeg.xRot = Mth.cos(walkPosition * 0.6662F) * 1.4F * walkSpeed; + } + + @Override + public ModelPart getHead() { + return this.head; + } +} diff --git a/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/renderer/HappyCreeperFlowerLayer.java b/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/renderer/HappyCreeperFlowerLayer.java new file mode 100644 index 0000000..2db1756 --- /dev/null +++ b/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/renderer/HappyCreeperFlowerLayer.java @@ -0,0 +1,58 @@ +package fr.koka99cab.happy_creeper.client.renderer; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.math.Axis; +import fr.koka99cab.happy_creeper.client.model.HappyCreeperModel; +import net.minecraft.client.renderer.SubmitNodeCollector; +import net.minecraft.client.renderer.block.BlockModelRenderState; +import net.minecraft.client.renderer.entity.LivingEntityRenderer; +import net.minecraft.client.renderer.entity.RenderLayerParent; +import net.minecraft.client.renderer.entity.layers.RenderLayer; + +public final class HappyCreeperFlowerLayer extends RenderLayer { + public HappyCreeperFlowerLayer(RenderLayerParent renderLayerParent) { + super(renderLayerParent); + } + + @Override + public void submit(PoseStack poseStack, SubmitNodeCollector submitNodeCollector, int packedLight, HappyCreeperRenderState happyCreeperRenderState, float limbAngle, float limbDistance) { + BlockModelRenderState flowerBlock = happyCreeperRenderState.flowerBlock; + + if (flowerBlock.isEmpty()) { + return; + } + + boolean renderOutline = happyCreeperRenderState.appearsGlowing() && happyCreeperRenderState.isInvisible; + if (happyCreeperRenderState.isInvisible && !renderOutline) { + return; + } + + int overlay = LivingEntityRenderer.getOverlayCoords(happyCreeperRenderState, 0.0F); + + poseStack.pushPose(); + this.getParentModel().getHead().translateAndRotate(poseStack); + poseStack.translate(0.0F, -0.72F, 0.0F); + poseStack.mulPose(Axis.YP.rotationDegrees(-45.0F)); + poseStack.scale(-0.7F, -0.7F, 0.7F); + poseStack.translate(-0.5F, -0.5F, -0.5F); + this.submitFlowerBlock(poseStack, submitNodeCollector, packedLight, renderOutline, happyCreeperRenderState.outlineColor, flowerBlock, overlay); + poseStack.popPose(); + } + + private void submitFlowerBlock( + PoseStack poseStack, + SubmitNodeCollector submitNodeCollector, + int packedLight, + boolean renderOutline, + int outlineColor, + BlockModelRenderState flowerBlock, + int overlay + ) { + if (renderOutline) { + flowerBlock.submitOnlyOutline(poseStack, submitNodeCollector, packedLight, overlay, outlineColor); + return; + } + + flowerBlock.submit(poseStack, submitNodeCollector, packedLight, overlay, outlineColor); + } +} diff --git a/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/renderer/HappyCreeperPowerLayer.java b/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/renderer/HappyCreeperPowerLayer.java new file mode 100644 index 0000000..de29c6a --- /dev/null +++ b/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/renderer/HappyCreeperPowerLayer.java @@ -0,0 +1,39 @@ +package fr.koka99cab.happy_creeper.client.renderer; + +import fr.koka99cab.happy_creeper.client.model.HappyCreeperModel; +import net.minecraft.client.model.geom.EntityModelSet; +import net.minecraft.client.model.geom.ModelLayers; +import net.minecraft.client.renderer.entity.RenderLayerParent; +import net.minecraft.client.renderer.entity.layers.EnergySwirlLayer; +import net.minecraft.resources.Identifier; + +public final class HappyCreeperPowerLayer extends EnergySwirlLayer { + private static final Identifier POWER_TEXTURE = Identifier.withDefaultNamespace("textures/entity/creeper/creeper_armor.png"); + + private final HappyCreeperModel model; + + public HappyCreeperPowerLayer(RenderLayerParent renderLayerParent, EntityModelSet entityModelSet) { + super(renderLayerParent); + this.model = new HappyCreeperModel(entityModelSet.bakeLayer(ModelLayers.CREEPER_ARMOR)); + } + + @Override + protected boolean isPowered(HappyCreeperRenderState happyCreeperRenderState) { + return happyCreeperRenderState.isPowered; + } + + @Override + protected float xOffset(float ageInTicks) { + return ageInTicks * 0.01F; + } + + @Override + protected Identifier getTextureLocation() { + return POWER_TEXTURE; + } + + @Override + protected HappyCreeperModel model() { + return this.model; + } +} diff --git a/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/renderer/HappyCreeperRenderState.java b/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/renderer/HappyCreeperRenderState.java new file mode 100644 index 0000000..7387cd2 --- /dev/null +++ b/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/renderer/HappyCreeperRenderState.java @@ -0,0 +1,8 @@ +package fr.koka99cab.happy_creeper.client.renderer; + +import net.minecraft.client.renderer.block.BlockModelRenderState; +import net.minecraft.client.renderer.entity.state.CreeperRenderState; + +public final class HappyCreeperRenderState extends CreeperRenderState { + public final BlockModelRenderState flowerBlock = new BlockModelRenderState(); +} diff --git a/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/renderer/HappyCreeperRenderer.java b/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/renderer/HappyCreeperRenderer.java new file mode 100644 index 0000000..5d76ac7 --- /dev/null +++ b/Mobs/happy_creeper/src/client/java/fr/koka99cab/happy_creeper/client/renderer/HappyCreeperRenderer.java @@ -0,0 +1,60 @@ +package fr.koka99cab.happy_creeper.client.renderer; + +import fr.koka99cab.happy_creeper.HappyCreeperMod; +import fr.koka99cab.happy_creeper.client.model.HappyCreeperModel; +import fr.koka99cab.happy_creeper.entity.HappyCreeperEntity; +import net.minecraft.client.Minecraft; +import net.minecraft.client.model.geom.ModelLayers; +import net.minecraft.client.renderer.block.BlockModelResolver; +import net.minecraft.client.renderer.block.model.BlockDisplayContext; +import net.minecraft.client.renderer.entity.EntityRendererProvider; +import net.minecraft.client.renderer.entity.MobRenderer; +import net.minecraft.resources.Identifier; + +public final class HappyCreeperRenderer extends MobRenderer { + private static final BlockDisplayContext BLOCK_DISPLAY_CONTEXT = BlockDisplayContext.create(); + private static final Identifier CREEPER_TEXTURE = Identifier.fromNamespaceAndPath(HappyCreeperMod.MOD_ID, "textures/entity/creeper.png"); + private static final Identifier HAPPY_CREEPER_TEXTURE = Identifier.fromNamespaceAndPath(HappyCreeperMod.MOD_ID, "textures/entity/happy_creeper.png"); + private static final Identifier FALLBACK_TEXTURE = Identifier.withDefaultNamespace("textures/entity/creeper/creeper.png"); + + private final BlockModelResolver blockModelResolver; + + public HappyCreeperRenderer(EntityRendererProvider.Context context) { + super(context, new HappyCreeperModel(context.bakeLayer(ModelLayers.CREEPER)), 0.5F); + this.blockModelResolver = context.getBlockModelResolver(); + this.addLayer(new HappyCreeperPowerLayer(this, context.getModelSet())); + this.addLayer(new HappyCreeperFlowerLayer(this)); + } + + @Override + public Identifier getTextureLocation(HappyCreeperRenderState happyCreeperRenderState) { + if (!Minecraft.getInstance().getResourceManager().getResourceStack(CREEPER_TEXTURE).isEmpty()) { + return CREEPER_TEXTURE; + } + + if (!Minecraft.getInstance().getResourceManager().getResourceStack(HAPPY_CREEPER_TEXTURE).isEmpty()) { + return HAPPY_CREEPER_TEXTURE; + } + + return FALLBACK_TEXTURE; + } + + @Override + public HappyCreeperRenderState createRenderState() { + return new HappyCreeperRenderState(); + } + + @Override + public void extractRenderState(HappyCreeperEntity happyCreeperEntity, HappyCreeperRenderState happyCreeperRenderState, float partialTick) { + super.extractRenderState(happyCreeperEntity, happyCreeperRenderState, partialTick); + happyCreeperRenderState.isPowered = happyCreeperEntity.isPowered(); + happyCreeperRenderState.swelling = 0.0F; + + if (happyCreeperEntity.hasFlower()) { + this.blockModelResolver.update(happyCreeperRenderState.flowerBlock, happyCreeperEntity.getFlowerBlockStateForRendering(), BLOCK_DISPLAY_CONTEXT); + return; + } + + happyCreeperRenderState.flowerBlock.clear(); + } +} diff --git a/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/HappyCreeperMod.java b/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/HappyCreeperMod.java new file mode 100644 index 0000000..dc26df8 --- /dev/null +++ b/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/HappyCreeperMod.java @@ -0,0 +1,19 @@ +package fr.koka99cab.happy_creeper; + +import fr.koka99cab.happy_creeper.registry.ModEntityTypes; +import fr.koka99cab.happy_creeper.registry.ModEntityInteractions; +import net.fabricmc.api.ModInitializer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class HappyCreeperMod implements ModInitializer { + public static final String MOD_ID = "happy_creeper"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + ModEntityTypes.register(); + ModEntityInteractions.register(); + LOGGER.info("Happy Creeper is waking up"); + } +} diff --git a/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/entity/HappyCreeperEntity.java b/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/entity/HappyCreeperEntity.java new file mode 100644 index 0000000..9e51737 --- /dev/null +++ b/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/entity/HappyCreeperEntity.java @@ -0,0 +1,350 @@ +package fr.koka99cab.happy_creeper.entity; + +import fr.koka99cab.happy_creeper.entity.ai.HappyCreeperFollowPlayerGoal; +import fr.koka99cab.happy_creeper.registry.ModEntityTypes; +import java.util.List; +import java.util.UUID; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.network.syncher.EntityDataAccessor; +import net.minecraft.network.syncher.EntityDataSerializers; +import net.minecraft.network.syncher.SynchedEntityData; +import net.minecraft.resources.Identifier; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.util.RandomSource; +import net.minecraft.world.DifficultyInstance; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.damagesource.DamageSource; +import net.minecraft.world.entity.AgeableMob; +import net.minecraft.world.entity.ConversionParams; +import net.minecraft.world.entity.EntitySpawnReason; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.Mob; +import net.minecraft.world.entity.SpawnGroupData; +import net.minecraft.world.entity.ai.attributes.AttributeSupplier; +import net.minecraft.world.entity.ai.attributes.Attributes; +import net.minecraft.world.entity.ai.goal.BreedGoal; +import net.minecraft.world.entity.ai.goal.FloatGoal; +import net.minecraft.world.entity.ai.goal.FollowParentGoal; +import net.minecraft.world.entity.ai.goal.LookAtPlayerGoal; +import net.minecraft.world.entity.ai.goal.RandomLookAroundGoal; +import net.minecraft.world.entity.ai.goal.WaterAvoidingRandomStrollGoal; +import net.minecraft.world.entity.animal.Animal; +import net.minecraft.world.entity.monster.Monster; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.ServerLevelAccessor; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.storage.ValueInput; +import net.minecraft.world.level.storage.ValueOutput; + +public final class HappyCreeperEntity extends Animal { + private static final EntityDataAccessor FLOWER_ID = SynchedEntityData.defineId(HappyCreeperEntity.class, EntityDataSerializers.STRING); + private static final EntityDataAccessor HAS_FLOWER = SynchedEntityData.defineId(HappyCreeperEntity.class, EntityDataSerializers.BOOLEAN); + private static final EntityDataAccessor IS_POWERED = SynchedEntityData.defineId(HappyCreeperEntity.class, EntityDataSerializers.BOOLEAN); + private static final List FLOWERS = List.of( + Items.DANDELION, + Items.POPPY, + Items.BLUE_ORCHID, + Items.ALLIUM, + Items.AZURE_BLUET, + Items.RED_TULIP, + Items.ORANGE_TULIP, + Items.WHITE_TULIP, + Items.PINK_TULIP, + Items.OXEYE_DAISY, + Items.CORNFLOWER, + Items.LILY_OF_THE_VALLEY, + Items.TORCHFLOWER + ); + + private static final String FLOWER_ID_KEY = "HappyFlowerId"; + private static final String HAS_FLOWER_KEY = "HappyFlowerReady"; + private static final String FLOWER_REGROW_TICKS_KEY = "HappyFlowerRegrowTicks"; + private static final String FOLLOW_TARGET_KEY = "HappyFollowTarget"; + private static final String POWERED_KEY = "HappyPowered"; + private static final int FLOWER_MIN_REGROW_TICKS = 20 * 45; + private static final int FLOWER_MAX_REGROW_TICKS = 20 * 90; + + private UUID rememberedPlayerUuid; + private int flowerRegrowTicks; + + public HappyCreeperEntity(EntityType entityType, Level level) { + super(entityType, level); + } + + public static AttributeSupplier.Builder createAttributes() { + return Animal.createAnimalAttributes() + .add(Attributes.MAX_HEALTH, 20.0D) + .add(Attributes.MOVEMENT_SPEED, 0.25D) + .add(Attributes.FOLLOW_RANGE, 32.0D); + } + + public static boolean canSpawn(EntityType entityType, ServerLevelAccessor level, EntitySpawnReason spawnReason, BlockPos blockPos, RandomSource random) { + return Mob.checkMobSpawnRules(entityType, level, spawnReason, blockPos, random) + && Monster.isDarkEnoughToSpawn(level, blockPos, random); + } + + @Override + protected void defineSynchedData(SynchedEntityData.Builder builder) { + super.defineSynchedData(builder); + builder.define(FLOWER_ID, ""); + builder.define(HAS_FLOWER, true); + builder.define(IS_POWERED, false); + } + + @Override + protected void registerGoals() { + this.goalSelector.addGoal(0, new FloatGoal(this)); + this.goalSelector.addGoal(1, new BreedGoal(this, 1.0D)); + this.goalSelector.addGoal(2, new HappyCreeperFollowPlayerGoal(this, 1.1D, 2.5F)); + this.goalSelector.addGoal(3, new FollowParentGoal(this, 1.1D)); + this.goalSelector.addGoal(4, new WaterAvoidingRandomStrollGoal(this, 0.95D)); + this.goalSelector.addGoal(5, new LookAtPlayerGoal(this, Player.class, 8.0F)); + this.goalSelector.addGoal(6, new RandomLookAroundGoal(this)); + } + + @Override + protected void customServerAiStep(ServerLevel serverLevel) { + super.customServerAiStep(serverLevel); + this.ensureFlowerAssigned(); + + if (this.rememberedPlayerUuid == null && this.tickCount % 20 == 0) { + this.rememberNearbyPlayer(serverLevel); + } + + if (!this.hasFlower() && this.flowerRegrowTicks > 0) { + this.flowerRegrowTicks--; + + if (this.flowerRegrowTicks == 0) { + this.setFlowerReady(true); + } + } + } + + @Override + public SpawnGroupData finalizeSpawn(ServerLevelAccessor level, DifficultyInstance difficulty, EntitySpawnReason spawnReason, SpawnGroupData spawnGroupData) { + SpawnGroupData finalizedSpawn = super.finalizeSpawn(level, difficulty, spawnReason, spawnGroupData); + this.assignRandomFlower(); + this.setFlowerReady(true); + this.flowerRegrowTicks = 0; + return finalizedSpawn; + } + + @Override + protected void addAdditionalSaveData(ValueOutput output) { + super.addAdditionalSaveData(output); + output.putString(FLOWER_ID_KEY, this.entityData.get(FLOWER_ID)); + output.putBoolean(HAS_FLOWER_KEY, this.hasFlower()); + output.putInt(FLOWER_REGROW_TICKS_KEY, this.flowerRegrowTicks); + output.putBoolean(POWERED_KEY, this.isPowered()); + + if (this.rememberedPlayerUuid != null) { + output.putString(FOLLOW_TARGET_KEY, this.rememberedPlayerUuid.toString()); + } + } + + @Override + protected void readAdditionalSaveData(ValueInput input) { + super.readAdditionalSaveData(input); + String flowerId = input.getStringOr(FLOWER_ID_KEY, ""); + this.entityData.set(FLOWER_ID, flowerId); + this.entityData.set(HAS_FLOWER, input.getBooleanOr(HAS_FLOWER_KEY, true)); + this.entityData.set(IS_POWERED, input.getBooleanOr(POWERED_KEY, false)); + this.flowerRegrowTicks = input.getIntOr(FLOWER_REGROW_TICKS_KEY, 0); + this.rememberedPlayerUuid = null; + + input.getString(FOLLOW_TARGET_KEY).ifPresent(uuid -> { + try { + this.rememberedPlayerUuid = UUID.fromString(uuid); + } catch (IllegalArgumentException ignored) { + this.rememberedPlayerUuid = null; + } + }); + + this.ensureFlowerAssigned(); + } + + @Override + public boolean isFood(ItemStack itemStack) { + return itemStack.is(Blocks.MOSS_BLOCK.asItem()) || itemStack.is(Blocks.MOSS_CARPET.asItem()); + } + + @Override + public InteractionResult mobInteract(Player player, InteractionHand interactionHand) { + ItemStack heldItem = player.getItemInHand(interactionHand); + + if (heldItem.is(Items.SHEARS) && this.hasFlower()) { + if (this.level().isClientSide()) { + return InteractionResult.SUCCESS; + } + + this.shearFlower(heldItem, player, interactionHand); + return InteractionResult.SUCCESS_SERVER; + } + + return super.mobInteract(player, interactionHand); + } + + @Override + public HappyCreeperEntity getBreedOffspring(ServerLevel serverLevel, AgeableMob ageableMob) { + HappyCreeperEntity baby = ModEntityTypes.HAPPY_CREEPER.create(serverLevel, EntitySpawnReason.BREEDING); + + if (baby != null) { + baby.assignRandomFlower(); + baby.setFlowerReady(true); + } + + return baby; + } + + @Override + protected SoundEvent getHurtSound(DamageSource damageSource) { + return SoundEvents.CREEPER_HURT; + } + + @Override + protected SoundEvent getDeathSound() { + return SoundEvents.CREEPER_DEATH; + } + + @Override + public void thunderHit(ServerLevel serverLevel, net.minecraft.world.entity.LightningBolt lightningBolt) { + super.thunderHit(serverLevel, lightningBolt); + this.setPowered(true); + } + + public boolean hasFlower() { + return this.entityData.get(HAS_FLOWER); + } + + public boolean isPowered() { + return this.entityData.get(IS_POWERED); + } + + public ItemStack getFlowerStackForRendering() { + if (!this.hasFlower()) { + return ItemStack.EMPTY; + } + + return new ItemStack(this.getFlowerItem()); + } + + public BlockState getFlowerBlockStateForRendering() { + if (!this.hasFlower()) { + return Blocks.AIR.defaultBlockState(); + } + + Block block = Block.byItem(this.getFlowerItem()); + return block.defaultBlockState(); + } + + public void setFlowerItem(Item flowerItem) { + Identifier flowerId = BuiltInRegistries.ITEM.getKey(flowerItem); + this.entityData.set(FLOWER_ID, flowerId.toString()); + this.setFlowerReady(true); + this.flowerRegrowTicks = 0; + } + + public void setPowered(boolean powered) { + this.entityData.set(IS_POWERED, powered); + } + + public Player getRememberedPlayer() { + if (this.rememberedPlayerUuid == null || !(this.level() instanceof ServerLevel serverLevel)) { + return null; + } + + return serverLevel.getPlayerByUUID(this.rememberedPlayerUuid); + } + + public void rememberPlayer(Player player) { + this.rememberedPlayerUuid = player.getUUID(); + } + + private void shearFlower(ItemStack shears, Player player, InteractionHand interactionHand) { + if (!(this.level() instanceof ServerLevel serverLevel)) { + return; + } + + this.playSound(SoundEvents.SHEEP_SHEAR, 1.0F, 1.0F); + this.spawnAtLocation(serverLevel, new ItemStack(this.getFlowerItem())); + shears.hurtAndBreak(1, player, interactionHand); + this.convertTo(EntityType.CREEPER, ConversionParams.single(this, false, false), EntitySpawnReason.CONVERSION, creeper -> { + MobConversionUtil.copyCommonState(this, creeper); + + if (this.isPowered()) { + net.minecraft.world.entity.LightningBolt lightningBolt = this.createConversionLightning(serverLevel, creeper); + if (lightningBolt != null) { + creeper.thunderHit(serverLevel, lightningBolt); + } + } + }); + } + + private net.minecraft.world.entity.LightningBolt createConversionLightning(ServerLevel serverLevel, Mob target) { + net.minecraft.world.entity.LightningBolt lightningBolt = EntityType.LIGHTNING_BOLT.create(serverLevel, EntitySpawnReason.TRIGGERED); + if (lightningBolt != null) { + lightningBolt.copyPosition(target); + } + + return lightningBolt; + } + + private void ensureFlowerAssigned() { + if (this.entityData.get(FLOWER_ID).isEmpty()) { + this.assignRandomFlower(); + } + } + + private void assignRandomFlower() { + Item flower = FLOWERS.get(this.random.nextInt(FLOWERS.size())); + this.setFlowerItem(flower); + } + + private Item getFlowerItem() { + Identifier flowerId = Identifier.tryParse(this.entityData.get(FLOWER_ID)); + + if (flowerId == null) { + return Items.DANDELION; + } + + return BuiltInRegistries.ITEM.getOptional(flowerId).orElse(Items.DANDELION); + } + + private void setFlowerReady(boolean hasFlower) { + this.entityData.set(HAS_FLOWER, hasFlower); + } + + private void rememberNearbyPlayer(ServerLevel serverLevel) { + Player rememberedPlayer = null; + double bestDistanceSquared = 12.0D * 12.0D; + + for (Player player : serverLevel.players()) { + if (!player.isAlive() || player.isSpectator()) { + continue; + } + + double distanceSquared = this.distanceToSqr(player); + + if (distanceSquared > bestDistanceSquared || !this.hasLineOfSight(player)) { + continue; + } + + rememberedPlayer = player; + bestDistanceSquared = distanceSquared; + } + + if (rememberedPlayer != null) { + this.rememberedPlayerUuid = rememberedPlayer.getUUID(); + } + } +} diff --git a/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/entity/MobConversionUtil.java b/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/entity/MobConversionUtil.java new file mode 100644 index 0000000..9cf4e85 --- /dev/null +++ b/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/entity/MobConversionUtil.java @@ -0,0 +1,36 @@ +package fr.koka99cab.happy_creeper.entity; + +import net.minecraft.world.entity.Mob; + +public final class MobConversionUtil { + private MobConversionUtil() { + } + + public static void copyCommonState(Mob source, T target) { + target.copyPosition(source); + target.setYRot(source.getYRot()); + target.setXRot(source.getXRot()); + target.setYBodyRot(source.yBodyRot); + target.setYHeadRot(source.getYHeadRot()); + target.yBodyRotO = source.yBodyRotO; + target.yHeadRotO = source.yHeadRotO; + target.setDeltaMovement(source.getDeltaMovement()); + target.setPose(source.getPose()); + target.setHealth(Math.min(target.getMaxHealth(), source.getHealth())); + target.setSilent(source.isSilent()); + target.setInvulnerable(source.isInvulnerable()); + + if (source.isPersistenceRequired()) { + target.setPersistenceRequired(); + } + + if (source.isNoAi()) { + target.setNoAi(true); + } + + if (source.hasCustomName()) { + target.setCustomName(source.getCustomName()); + target.setCustomNameVisible(source.isCustomNameVisible()); + } + } +} diff --git a/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/entity/ai/HappyCreeperFollowPlayerGoal.java b/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/entity/ai/HappyCreeperFollowPlayerGoal.java new file mode 100644 index 0000000..97e4c96 --- /dev/null +++ b/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/entity/ai/HappyCreeperFollowPlayerGoal.java @@ -0,0 +1,70 @@ +package fr.koka99cab.happy_creeper.entity.ai; + +import fr.koka99cab.happy_creeper.entity.HappyCreeperEntity; +import java.util.EnumSet; +import net.minecraft.world.entity.ai.goal.Goal; +import net.minecraft.world.entity.player.Player; + +public final class HappyCreeperFollowPlayerGoal extends Goal { + private final HappyCreeperEntity happyCreeper; + private final double speedModifier; + private final float stopDistance; + private Player player; + private int recalculatePathTicks; + + public HappyCreeperFollowPlayerGoal(HappyCreeperEntity happyCreeper, double speedModifier, float stopDistance) { + this.happyCreeper = happyCreeper; + this.speedModifier = speedModifier; + this.stopDistance = stopDistance; + this.setFlags(EnumSet.of(Goal.Flag.MOVE, Goal.Flag.LOOK)); + } + + @Override + public boolean canUse() { + this.player = this.happyCreeper.getRememberedPlayer(); + return this.player != null && this.player.isAlive(); + } + + @Override + public boolean canContinueToUse() { + this.player = this.happyCreeper.getRememberedPlayer(); + return this.player != null && this.player.isAlive(); + } + + @Override + public void start() { + this.recalculatePathTicks = 0; + } + + @Override + public void stop() { + this.player = null; + this.happyCreeper.getNavigation().stop(); + } + + @Override + public boolean requiresUpdateEveryTick() { + return true; + } + + @Override + public void tick() { + if (this.player == null) { + return; + } + + this.happyCreeper.getLookControl().setLookAt(this.player, 10.0F, this.happyCreeper.getMaxHeadXRot()); + double distanceToPlayer = this.happyCreeper.distanceToSqr(this.player); + double stopDistanceSquared = this.stopDistance * this.stopDistance; + + if (distanceToPlayer <= stopDistanceSquared) { + this.happyCreeper.getNavigation().stop(); + return; + } + + if (this.recalculatePathTicks-- <= 0) { + this.recalculatePathTicks = 10; + this.happyCreeper.getNavigation().moveTo(this.player, this.speedModifier); + } + } +} diff --git a/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/registry/ModEntityInteractions.java b/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/registry/ModEntityInteractions.java new file mode 100644 index 0000000..90170f9 --- /dev/null +++ b/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/registry/ModEntityInteractions.java @@ -0,0 +1,62 @@ +package fr.koka99cab.happy_creeper.registry; + +import fr.koka99cab.happy_creeper.entity.HappyCreeperEntity; +import fr.koka99cab.happy_creeper.entity.MobConversionUtil; +import net.fabricmc.fabric.api.event.player.UseEntityCallback; +import net.minecraft.tags.ItemTags; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.ConversionParams; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntitySpawnReason; +import net.minecraft.world.entity.monster.Creeper; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.EntityHitResult; + +public final class ModEntityInteractions { + private ModEntityInteractions() { + } + + public static void register() { + UseEntityCallback.EVENT.register(ModEntityInteractions::interactWithEntity); + } + + private static InteractionResult interactWithEntity(Player player, Level level, InteractionHand interactionHand, Entity entity, EntityHitResult entityHitResult) { + if (!(entity instanceof Creeper creeper)) { + return InteractionResult.PASS; + } + + ItemStack heldItem = player.getItemInHand(interactionHand); + if (!heldItem.is(ItemTags.FLOWERS)) { + return InteractionResult.PASS; + } + + if (level.isClientSide()) { + return InteractionResult.SUCCESS; + } + + HappyCreeperEntity happyCreeper = creeper.convertTo( + ModEntityTypes.HAPPY_CREEPER, + ConversionParams.single(creeper, false, false), + EntitySpawnReason.CONVERSION, + convertedHappyCreeper -> { + MobConversionUtil.copyCommonState(creeper, convertedHappyCreeper); + convertedHappyCreeper.setPowered(creeper.isPowered()); + convertedHappyCreeper.setFlowerItem(heldItem.getItem()); + convertedHappyCreeper.rememberPlayer(player); + } + ); + + if (happyCreeper == null) { + return InteractionResult.PASS; + } + + if (!player.getAbilities().instabuild) { + heldItem.shrink(1); + } + + return InteractionResult.SUCCESS_SERVER; + } +} diff --git a/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/registry/ModEntityTypes.java b/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/registry/ModEntityTypes.java new file mode 100644 index 0000000..c074073 --- /dev/null +++ b/Mobs/happy_creeper/src/main/java/fr/koka99cab/happy_creeper/registry/ModEntityTypes.java @@ -0,0 +1,41 @@ +package fr.koka99cab.happy_creeper.registry; + +import fr.koka99cab.happy_creeper.HappyCreeperMod; +import fr.koka99cab.happy_creeper.entity.HappyCreeperEntity; +import net.fabricmc.fabric.api.biome.v1.BiomeModifications; +import net.fabricmc.fabric.api.biome.v1.BiomeSelectors; +import net.fabricmc.fabric.api.object.builder.v1.entity.FabricEntityTypeBuilder; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.entity.EntityDimensions; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.MobCategory; +import net.minecraft.world.entity.SpawnPlacementTypes; +import net.minecraft.world.level.levelgen.Heightmap; + +public final class ModEntityTypes { + public static final Identifier HAPPY_CREEPER_ID = Identifier.fromNamespaceAndPath(HappyCreeperMod.MOD_ID, "happy_creeper"); + public static final EntityType HAPPY_CREEPER = Registry.register( + BuiltInRegistries.ENTITY_TYPE, + HAPPY_CREEPER_ID, + FabricEntityTypeBuilder.createMob() + .mobCategory(MobCategory.CREATURE) + .entityFactory(HappyCreeperEntity::new) + .dimensions(EntityDimensions.scalable(0.6F, 1.7F)) + .defaultAttributes(HappyCreeperEntity::createAttributes) + .spawnPlacement(SpawnPlacementTypes.ON_GROUND, Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, HappyCreeperEntity::canSpawn) + .trackRangeBlocks(10) + .trackedUpdateRate(2) + .build(ResourceKey.create(Registries.ENTITY_TYPE, HAPPY_CREEPER_ID)) + ); + + private ModEntityTypes() { + } + + public static void register() { + BiomeModifications.addSpawn(BiomeSelectors.spawnsOneOf(EntityType.CREEPER), MobCategory.CREATURE, HAPPY_CREEPER, 5, 1, 1); + } +} diff --git a/Mobs/happy_creeper/src/main/resources/assets/happy_creeper/icon.png b/Mobs/happy_creeper/src/main/resources/assets/happy_creeper/icon.png new file mode 100644 index 0000000..e319c8f Binary files /dev/null and b/Mobs/happy_creeper/src/main/resources/assets/happy_creeper/icon.png differ diff --git a/Mobs/happy_creeper/src/main/resources/assets/happy_creeper/lang/en_us.json b/Mobs/happy_creeper/src/main/resources/assets/happy_creeper/lang/en_us.json new file mode 100644 index 0000000..787bb96 --- /dev/null +++ b/Mobs/happy_creeper/src/main/resources/assets/happy_creeper/lang/en_us.json @@ -0,0 +1,3 @@ +{ + "entity.happy_creeper.happy_creeper": "Happy Creeper" +} diff --git a/Mobs/happy_creeper/src/main/resources/assets/happy_creeper/lang/fr_fr.json b/Mobs/happy_creeper/src/main/resources/assets/happy_creeper/lang/fr_fr.json new file mode 100644 index 0000000..787bb96 --- /dev/null +++ b/Mobs/happy_creeper/src/main/resources/assets/happy_creeper/lang/fr_fr.json @@ -0,0 +1,3 @@ +{ + "entity.happy_creeper.happy_creeper": "Happy Creeper" +} diff --git a/Mobs/happy_creeper/src/main/resources/assets/happy_creeper/textures/entity/creeper.png b/Mobs/happy_creeper/src/main/resources/assets/happy_creeper/textures/entity/creeper.png new file mode 100644 index 0000000..aa7b235 Binary files /dev/null and b/Mobs/happy_creeper/src/main/resources/assets/happy_creeper/textures/entity/creeper.png differ diff --git a/Mobs/happy_creeper/src/main/resources/fabric.mod.json b/Mobs/happy_creeper/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..957d5e6 --- /dev/null +++ b/Mobs/happy_creeper/src/main/resources/fabric.mod.json @@ -0,0 +1,27 @@ +{ + "schemaVersion": 1, + "id": "happy_creeper", + "version": "${version}", + "name": "Happy-Creeper", + "description": "Adds a passive Happy Creeper that follows players, carries a persistent flower, and can breed with moss.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "icon": "assets/happy_creeper/icon.png", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.happy_creeper.HappyCreeperMod" + ], + "client": [ + "fr.koka99cab.happy_creeper.client.HappyCreeperClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Mobs/no_phantoms/build.gradle b/Mobs/no_phantoms/build.gradle new file mode 100644 index 0000000..204fb2b --- /dev/null +++ b/Mobs/no_phantoms/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "no_phantoms" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Mobs/no_phantoms/gradle.properties b/Mobs/no_phantoms/gradle.properties new file mode 100644 index 0000000..066ef2e --- /dev/null +++ b/Mobs/no_phantoms/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=no_phantoms + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Mobs/no_phantoms/gradle/wrapper/gradle-wrapper.jar b/Mobs/no_phantoms/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Mobs/no_phantoms/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Mobs/no_phantoms/gradle/wrapper/gradle-wrapper.properties b/Mobs/no_phantoms/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Mobs/no_phantoms/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Mobs/no_phantoms/gradlew b/Mobs/no_phantoms/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Mobs/no_phantoms/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Mobs/no_phantoms/gradlew.bat b/Mobs/no_phantoms/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Mobs/no_phantoms/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Mobs/no_phantoms/settings.gradle b/Mobs/no_phantoms/settings.gradle new file mode 100644 index 0000000..8b1d398 --- /dev/null +++ b/Mobs/no_phantoms/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "no_phantoms" diff --git a/Mobs/no_phantoms/src/main/java/fr/koka99cab/no_phantoms/NoPhantomsMod.java b/Mobs/no_phantoms/src/main/java/fr/koka99cab/no_phantoms/NoPhantomsMod.java new file mode 100644 index 0000000..c2e87cd --- /dev/null +++ b/Mobs/no_phantoms/src/main/java/fr/koka99cab/no_phantoms/NoPhantomsMod.java @@ -0,0 +1,34 @@ +package fr.koka99cab.no_phantoms; + +import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerEntityEvents; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.level.Level; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class NoPhantomsMod implements ModInitializer { + public static final String MOD_ID = "no_phantoms"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + private static final boolean KEEP_PHANTOMS_IN_OVERWORLD = false; + + @Override + public void onInitialize() { + ServerEntityEvents.ENTITY_LOAD.register(NoPhantomsMod::removeForbiddenPhantom); + LOGGER.info("No Phantoms charge: les phantoms sont retires du monde."); + } + + private static void removeForbiddenPhantom(Entity entity, Level level) { + if (entity.getType() != EntityType.PHANTOM) { + return; + } + + if (KEEP_PHANTOMS_IN_OVERWORLD && level.dimension() == Level.OVERWORLD) { + return; + } + + entity.discard(); + } +} diff --git a/Mobs/no_phantoms/src/main/resources/assets/no_phantoms/lang/en_us.json b/Mobs/no_phantoms/src/main/resources/assets/no_phantoms/lang/en_us.json new file mode 100644 index 0000000..9a9569a --- /dev/null +++ b/Mobs/no_phantoms/src/main/resources/assets/no_phantoms/lang/en_us.json @@ -0,0 +1,3 @@ +{ + "modmenu.descriptionTranslation.no_phantoms": "Removes phantom mobs from realtime worlds." +} diff --git a/Mobs/no_phantoms/src/main/resources/assets/no_phantoms/lang/fr_fr.json b/Mobs/no_phantoms/src/main/resources/assets/no_phantoms/lang/fr_fr.json new file mode 100644 index 0000000..638fa35 --- /dev/null +++ b/Mobs/no_phantoms/src/main/resources/assets/no_phantoms/lang/fr_fr.json @@ -0,0 +1,3 @@ +{ + "modmenu.descriptionTranslation.no_phantoms": "Supprime les phantoms des mondes en temps reel." +} diff --git a/Mobs/no_phantoms/src/main/resources/fabric.mod.json b/Mobs/no_phantoms/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..6dcee85 --- /dev/null +++ b/Mobs/no_phantoms/src/main/resources/fabric.mod.json @@ -0,0 +1,23 @@ +{ + "schemaVersion": 1, + "id": "no_phantoms", + "version": "${version}", + "name": "No Phantoms", + "description": "Removes phantom mobs as soon as they appear, keeping realtime worlds free from insomnia swarms.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.no_phantoms.NoPhantomsMod" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Mobs/pipallon/blockbench/butterfly.bbmodel b/Mobs/pipallon/blockbench/butterfly.bbmodel new file mode 100644 index 0000000..a8016a1 --- /dev/null +++ b/Mobs/pipallon/blockbench/butterfly.bbmodel @@ -0,0 +1 @@ +{"meta":{"format_version":"5.0","model_format":"modded_entity","box_uv":true},"name":"butterfly","model_identifier":"pipallon:butterfly","modded_entity_entity_class":"fr.koka99cab.pipallon.entity.ButterflyEntity","modded_entity_version":"1.17","modded_entity_flip_y":true,"visible_box":[1,1,0],"variable_placeholders":"","multi_file_ruleset":"","variable_placeholder_buttons":[],"timeline_setups":[],"unhandled_root_fields":{},"resolution":{"width":32,"height":32},"elements":[{"name":"body","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-1,0,-1],"to":[1,2,3],"autouv":0,"color":6,"origin":[0,1,1],"uv_offset":[0,16],"faces":{"north":{"uv":[4,20,6,22],"texture":0},"east":{"uv":[0,20,4,22],"texture":0},"south":{"uv":[10,20,12,22],"texture":0},"west":{"uv":[6,20,10,22],"texture":0},"up":{"uv":[6,20,4,16],"texture":0},"down":{"uv":[8,16,6,20],"texture":0}},"type":"cube","uuid":"f554aa52-27d3-c7d5-b995-c55ec3574fd8"},{"name":"left-wing","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-5,2,-3],"to":[0,2,5],"autouv":0,"color":9,"origin":[0,2,1],"faces":{"north":{"uv":[8,8,13,8],"texture":0},"east":{"uv":[0,8,8,8],"texture":0},"south":{"uv":[21,8,26,8],"texture":0},"west":{"uv":[13,8,21,8],"texture":0},"up":{"uv":[13,8,8,0],"texture":0},"down":{"uv":[18,0,13,8],"texture":0}},"type":"cube","uuid":"3936b2b0-a079-134c-3389-47f48c4da143","uv_offset":[0,0]},{"name":"right-wing","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[0,2,-3],"to":[5,2,5],"autouv":0,"color":9,"origin":[0,2,1],"uv_offset":[0,8],"faces":{"north":{"uv":[8,16,13,16],"texture":0},"east":{"uv":[0,16,8,16],"texture":0},"south":{"uv":[21,16,26,16],"texture":0},"west":{"uv":[13,16,21,16],"texture":0},"up":{"uv":[13,16,8,8],"texture":0},"down":{"uv":[18,8,13,16],"texture":0}},"type":"cube","uuid":"81db23db-8756-ed17-c130-20cd284bf5a2"}],"groups":[],"outliner":[{"name":"body_root","uuid":"efdf16b6-0c8d-4f1f-8c34-45318f3cc5c9","origin":[0,1,1],"children":["f554aa52-27d3-c7d5-b995-c55ec3574fd8",{"name":"left_wing_pivot","uuid":"9b2a8291-298d-4fa9-9a2e-0d479b3e5f77","origin":[0,2,1],"children":["3936b2b0-a079-134c-3389-47f48c4da143"]},{"name":"right_wing_pivot","uuid":"bb610bbb-0b0a-48aa-9fd9-ded14661a20f","origin":[0,2,1],"children":["81db23db-8756-ed17-c130-20cd284bf5a2"]}]}],"textures":[{"name":"monarch.png","path":"../src/main/resources/assets/pipallon/textures/entity/butterfly/monarch.png","folder":"entity/butterfly","namespace":"pipallon","id":"0","group":"","scope":0,"width":32,"height":32,"uv_width":32,"uv_height":32,"particle":false,"use_as_default":true,"layers_enabled":false,"sync_to_project":"","file_format":"png","render_mode":"default","render_sides":"auto","wrap_mode":"limited","pbr_channel":"color","fps":7,"frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":false,"saved":true,"uuid":"3ed85cd8-b795-8be9-c27a-ce37361a9bb2","relative_path":"../src/main/resources/assets/pipallon/textures/entity/butterfly/monarch.png"}]} diff --git a/Mobs/pipallon/blockbench/texture_preview.png b/Mobs/pipallon/blockbench/texture_preview.png new file mode 100644 index 0000000..e548a73 Binary files /dev/null and b/Mobs/pipallon/blockbench/texture_preview.png differ diff --git a/Mobs/pipallon/build.gradle b/Mobs/pipallon/build.gradle new file mode 100644 index 0000000..60901cb --- /dev/null +++ b/Mobs/pipallon/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "pipallon" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Mobs/pipallon/gradle.properties b/Mobs/pipallon/gradle.properties new file mode 100644 index 0000000..02dc9b1 --- /dev/null +++ b/Mobs/pipallon/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=pipallon + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Mobs/pipallon/gradle/wrapper/gradle-wrapper.jar b/Mobs/pipallon/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Mobs/pipallon/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Mobs/pipallon/gradle/wrapper/gradle-wrapper.properties b/Mobs/pipallon/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Mobs/pipallon/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Mobs/pipallon/gradlew b/Mobs/pipallon/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Mobs/pipallon/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Mobs/pipallon/gradlew.bat b/Mobs/pipallon/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Mobs/pipallon/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Mobs/pipallon/settings.gradle b/Mobs/pipallon/settings.gradle new file mode 100644 index 0000000..06890e2 --- /dev/null +++ b/Mobs/pipallon/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "pipallon" diff --git a/Mobs/pipallon/src/client/java/fr/koka99cab/pipallon/client/PipallonClient.java b/Mobs/pipallon/src/client/java/fr/koka99cab/pipallon/client/PipallonClient.java new file mode 100644 index 0000000..bf2d778 --- /dev/null +++ b/Mobs/pipallon/src/client/java/fr/koka99cab/pipallon/client/PipallonClient.java @@ -0,0 +1,16 @@ +package fr.koka99cab.pipallon.client; + +import fr.koka99cab.pipallon.client.model.ButterflyModel; +import fr.koka99cab.pipallon.client.renderer.ButterflyRenderer; +import fr.koka99cab.pipallon.registry.ModEntityTypes; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.rendering.v1.EntityRendererRegistry; +import net.fabricmc.fabric.api.client.rendering.v1.ModelLayerRegistry; + +public final class PipallonClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + ModelLayerRegistry.registerModelLayer(ButterflyModel.LAYER_LOCATION, ButterflyModel::createBodyLayer); + EntityRendererRegistry.register(ModEntityTypes.BUTTERFLY, ButterflyRenderer::new); + } +} diff --git a/Mobs/pipallon/src/client/java/fr/koka99cab/pipallon/client/model/ButterflyModel.java b/Mobs/pipallon/src/client/java/fr/koka99cab/pipallon/client/model/ButterflyModel.java new file mode 100644 index 0000000..f2d7e32 --- /dev/null +++ b/Mobs/pipallon/src/client/java/fr/koka99cab/pipallon/client/model/ButterflyModel.java @@ -0,0 +1,82 @@ +package fr.koka99cab.pipallon.client.model; + +import fr.koka99cab.pipallon.PipallonMod; +import fr.koka99cab.pipallon.client.renderer.ButterflyRenderState; +import net.minecraft.client.model.EntityModel; +import net.minecraft.client.model.geom.ModelLayerLocation; +import net.minecraft.client.model.geom.ModelPart; +import net.minecraft.client.model.geom.PartPose; +import net.minecraft.client.model.geom.builders.CubeListBuilder; +import net.minecraft.client.model.geom.builders.LayerDefinition; +import net.minecraft.client.model.geom.builders.MeshDefinition; +import net.minecraft.client.model.geom.builders.PartDefinition; +import net.minecraft.util.Mth; + +public final class ButterflyModel extends EntityModel { + public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(PipallonMod.id("butterfly"), "main"); + + private final ModelPart bodyRoot; + private final ModelPart leftWingPivot; + private final ModelPart rightWingPivot; + + public ButterflyModel(ModelPart root) { + super(root); + this.bodyRoot = root.getChild("body_root"); + this.leftWingPivot = this.bodyRoot.getChild("left_wing_pivot"); + this.rightWingPivot = this.bodyRoot.getChild("right_wing_pivot"); + } + + public static LayerDefinition createBodyLayer() { + MeshDefinition mesh = new MeshDefinition(); + PartDefinition root = mesh.getRoot(); + PartDefinition bodyRoot = root.addOrReplaceChild("body_root", CubeListBuilder.create(), PartPose.offset(0.0F, 23.0F, 1.0F)); + + bodyRoot.addOrReplaceChild( + "body", + CubeListBuilder.create() + .texOffs(0, 16) + .addBox(-1.0F, -1.0F, -2.0F, 2.0F, 2.0F, 4.0F), + PartPose.ZERO + ); + + PartDefinition leftWingPivot = bodyRoot.addOrReplaceChild("left_wing_pivot", CubeListBuilder.create(), PartPose.offset(0.0F, -1.0F, 0.0F)); + leftWingPivot.addOrReplaceChild( + "left_wing", + CubeListBuilder.create() + .texOffs(0, 0) + .addBox(-5.0F, 0.0F, -4.0F, 5.0F, 0.0F, 8.0F), + PartPose.ZERO + ); + + PartDefinition rightWingPivot = bodyRoot.addOrReplaceChild("right_wing_pivot", CubeListBuilder.create(), PartPose.offset(0.0F, -1.0F, 0.0F)); + rightWingPivot.addOrReplaceChild( + "right_wing", + CubeListBuilder.create() + .texOffs(0, 8) + .addBox(0.0F, 0.0F, -4.0F, 5.0F, 0.0F, 8.0F), + PartPose.ZERO + ); + + return LayerDefinition.create(mesh, 32, 32); + } + + @Override + public void setupAnim(ButterflyRenderState state) { + super.setupAnim(state); + float speed = state.isAngry ? 1.9F : 1.15F; + float maxLift = state.isAngry ? 0.95F : 0.75F; + float wingLift = 0.12F + ((Mth.sin(state.ageInTicks * speed) + 1.0F) * 0.5F) * maxLift; + float idleTilt = Mth.sin(state.ageInTicks * 0.17F) * 0.08F; + + this.bodyRoot.y = 23.0F + Mth.sin(state.ageInTicks * 0.21F) * 0.35F; + this.bodyRoot.z = 1.0F; + this.bodyRoot.xRot = state.isFlying ? idleTilt : 0.0F; + this.bodyRoot.yRot = Mth.sin(state.ageInTicks * 0.09F) * 0.06F; + this.leftWingPivot.xRot = 0.0F; + this.rightWingPivot.xRot = 0.0F; + this.leftWingPivot.yRot = 0.04F; + this.rightWingPivot.yRot = -0.04F; + this.leftWingPivot.zRot = wingLift; + this.rightWingPivot.zRot = -wingLift; + } +} diff --git a/Mobs/pipallon/src/client/java/fr/koka99cab/pipallon/client/renderer/ButterflyRenderState.java b/Mobs/pipallon/src/client/java/fr/koka99cab/pipallon/client/renderer/ButterflyRenderState.java new file mode 100644 index 0000000..b6f526e --- /dev/null +++ b/Mobs/pipallon/src/client/java/fr/koka99cab/pipallon/client/renderer/ButterflyRenderState.java @@ -0,0 +1,10 @@ +package fr.koka99cab.pipallon.client.renderer; + +import fr.koka99cab.pipallon.entity.ButterflyVariant; +import net.minecraft.client.renderer.entity.state.LivingEntityRenderState; + +public final class ButterflyRenderState extends LivingEntityRenderState { + public ButterflyVariant variant = ButterflyVariant.MONARCH; + public boolean isAngry; + public boolean isFlying; +} diff --git a/Mobs/pipallon/src/client/java/fr/koka99cab/pipallon/client/renderer/ButterflyRenderer.java b/Mobs/pipallon/src/client/java/fr/koka99cab/pipallon/client/renderer/ButterflyRenderer.java new file mode 100644 index 0000000..8e06f91 --- /dev/null +++ b/Mobs/pipallon/src/client/java/fr/koka99cab/pipallon/client/renderer/ButterflyRenderer.java @@ -0,0 +1,47 @@ +package fr.koka99cab.pipallon.client.renderer; + +import fr.koka99cab.pipallon.PipallonMod; +import fr.koka99cab.pipallon.client.model.ButterflyModel; +import fr.koka99cab.pipallon.entity.ButterflyEntity; +import fr.koka99cab.pipallon.entity.ButterflyVariant; +import java.util.EnumMap; +import java.util.Map; +import net.minecraft.client.renderer.entity.EntityRendererProvider; +import net.minecraft.client.renderer.entity.MobRenderer; +import net.minecraft.resources.Identifier; + +public final class ButterflyRenderer extends MobRenderer { + private static final Map TEXTURES = createTextureMap(); + + public ButterflyRenderer(EntityRendererProvider.Context context) { + super(context, new ButterflyModel(context.bakeLayer(ButterflyModel.LAYER_LOCATION)), 0.18F); + } + + @Override + public Identifier getTextureLocation(ButterflyRenderState state) { + return TEXTURES.getOrDefault(state.variant, TEXTURES.get(ButterflyVariant.MONARCH)); + } + + @Override + public ButterflyRenderState createRenderState() { + return new ButterflyRenderState(); + } + + @Override + public void extractRenderState(ButterflyEntity butterfly, ButterflyRenderState state, float partialTick) { + super.extractRenderState(butterfly, state, partialTick); + state.variant = butterfly.getVariant(); + state.isAngry = butterfly.isAngryVisual(); + state.isFlying = butterfly.isFlying(); + } + + private static Map createTextureMap() { + EnumMap textures = new EnumMap<>(ButterflyVariant.class); + + for (ButterflyVariant variant : ButterflyVariant.values()) { + textures.put(variant, PipallonMod.id("textures/entity/butterfly/" + variant.textureName() + ".png")); + } + + return textures; + } +} diff --git a/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/PipallonMod.java b/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/PipallonMod.java new file mode 100644 index 0000000..422d0da --- /dev/null +++ b/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/PipallonMod.java @@ -0,0 +1,24 @@ +package fr.koka99cab.pipallon; + +import fr.koka99cab.pipallon.registry.ModEntityTypes; +import fr.koka99cab.pipallon.registry.ModItems; +import net.fabricmc.api.ModInitializer; +import net.minecraft.resources.Identifier; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class PipallonMod implements ModInitializer { + public static final String MOD_ID = "pipallon"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + ModEntityTypes.register(); + ModItems.register(); + LOGGER.info("Pipallon butterflies are taking off"); + } + + public static Identifier id(String path) { + return Identifier.fromNamespaceAndPath(MOD_ID, path); + } +} diff --git a/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/entity/ButterflyEntity.java b/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/entity/ButterflyEntity.java new file mode 100644 index 0000000..da34529 --- /dev/null +++ b/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/entity/ButterflyEntity.java @@ -0,0 +1,348 @@ +package fr.koka99cab.pipallon.entity; + +import fr.koka99cab.pipallon.registry.ModEntityTypes; +import java.util.EnumSet; +import net.minecraft.core.BlockPos; +import net.minecraft.network.syncher.EntityDataAccessor; +import net.minecraft.network.syncher.EntityDataSerializers; +import net.minecraft.network.syncher.SynchedEntityData; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.tags.BlockTags; +import net.minecraft.tags.ItemTags; +import net.minecraft.util.RandomSource; +import net.minecraft.util.TimeUtil; +import net.minecraft.util.valueproviders.UniformInt; +import net.minecraft.world.DifficultyInstance; +import net.minecraft.world.damagesource.DamageSource; +import net.minecraft.world.entity.AgeableMob; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityReference; +import net.minecraft.world.entity.EntitySpawnReason; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.Mob; +import net.minecraft.world.entity.NeutralMob; +import net.minecraft.world.entity.SpawnGroupData; +import net.minecraft.world.entity.ai.attributes.AttributeSupplier; +import net.minecraft.world.entity.ai.attributes.Attributes; +import net.minecraft.world.entity.ai.control.FlyingMoveControl; +import net.minecraft.world.entity.ai.goal.FloatGoal; +import net.minecraft.world.entity.ai.goal.FollowParentGoal; +import net.minecraft.world.entity.ai.goal.Goal; +import net.minecraft.world.entity.ai.goal.LookAtPlayerGoal; +import net.minecraft.world.entity.ai.goal.MeleeAttackGoal; +import net.minecraft.world.entity.ai.goal.RandomLookAroundGoal; +import net.minecraft.world.entity.ai.goal.TemptGoal; +import net.minecraft.world.entity.ai.goal.WaterAvoidingRandomFlyingGoal; +import net.minecraft.world.entity.ai.goal.target.HurtByTargetGoal; +import net.minecraft.world.entity.ai.goal.target.ResetUniversalAngerTargetGoal; +import net.minecraft.world.entity.ai.navigation.FlyingPathNavigation; +import net.minecraft.world.entity.ai.navigation.PathNavigation; +import net.minecraft.world.entity.animal.Animal; +import net.minecraft.world.entity.animal.FlyingAnimal; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelReader; +import net.minecraft.world.level.ServerLevelAccessor; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.storage.ValueInput; +import net.minecraft.world.level.storage.ValueOutput; + +public final class ButterflyEntity extends Animal implements FlyingAnimal, NeutralMob { + private static final EntityDataAccessor VARIANT = SynchedEntityData.defineId(ButterflyEntity.class, EntityDataSerializers.INT); + private static final EntityDataAccessor ANGRY = SynchedEntityData.defineId(ButterflyEntity.class, EntityDataSerializers.BOOLEAN); + private static final UniformInt PERSISTENT_ANGER_TIME = TimeUtil.rangeOfSeconds(18, 35); + private static final String VARIANT_KEY = "ButterflyVariant"; + + private long persistentAngerEndTime; + private EntityReference persistentAngerTarget; + + public ButterflyEntity(EntityType entityType, Level level) { + super(entityType, level); + this.moveControl = new FlyingMoveControl(this, 20, true); + this.setNoGravity(true); + } + + public static AttributeSupplier.Builder createAttributes() { + return Animal.createAnimalAttributes() + .add(Attributes.MAX_HEALTH, 6.0D) + .add(Attributes.FOLLOW_RANGE, 20.0D) + .add(Attributes.MOVEMENT_SPEED, 0.22D) + .add(Attributes.FLYING_SPEED, 0.45D) + .add(Attributes.ATTACK_DAMAGE, 1.0D); + } + + public static boolean canSpawn(EntityType entityType, ServerLevelAccessor level, EntitySpawnReason spawnReason, BlockPos blockPos, RandomSource random) { + return Animal.checkAnimalSpawnRules(entityType, level, spawnReason, blockPos, random); + } + + @Override + protected void defineSynchedData(SynchedEntityData.Builder builder) { + super.defineSynchedData(builder); + builder.define(VARIANT, ButterflyVariant.MONARCH.id()); + builder.define(ANGRY, false); + } + + @Override + protected void registerGoals() { + this.goalSelector.addGoal(0, new FloatGoal(this)); + this.goalSelector.addGoal(1, new MeleeAttackGoal(this, 1.25D, true)); + this.goalSelector.addGoal(2, new HoverNearFlowersGoal(this)); + this.goalSelector.addGoal(3, new TemptGoal(this, 1.05D, stack -> stack.is(ItemTags.FLOWERS), false)); + this.goalSelector.addGoal(4, new FollowParentGoal(this, 1.05D)); + this.goalSelector.addGoal(5, new WaterAvoidingRandomFlyingGoal(this, 0.85D)); + this.goalSelector.addGoal(6, new LookAtPlayerGoal(this, Player.class, 6.0F)); + this.goalSelector.addGoal(7, new RandomLookAroundGoal(this)); + + this.targetSelector.addGoal(0, new HurtByTargetGoal(this)); + this.targetSelector.addGoal(1, new ResetUniversalAngerTargetGoal<>(this, true)); + } + + @Override + protected PathNavigation createNavigation(Level level) { + return new FlyingPathNavigation(this, level); + } + + @Override + public SpawnGroupData finalizeSpawn(ServerLevelAccessor level, DifficultyInstance difficulty, EntitySpawnReason spawnReason, SpawnGroupData spawnGroupData) { + SpawnGroupData finalizedSpawn = super.finalizeSpawn(level, difficulty, spawnReason, spawnGroupData); + this.setVariant(ButterflyVariant.choose(this.random)); + this.setNoGravity(true); + return finalizedSpawn; + } + + @Override + protected void customServerAiStep(ServerLevel serverLevel) { + super.customServerAiStep(serverLevel); + this.setNoGravity(true); + this.updatePersistentAnger(serverLevel, true); + this.setAngryVisual(this.isAngry() || this.getTarget() != null); + } + + @Override + public void tick() { + super.tick(); + this.setNoGravity(true); + } + + @Override + protected void addAdditionalSaveData(ValueOutput output) { + super.addAdditionalSaveData(output); + output.putInt(VARIANT_KEY, this.getVariant().id()); + this.addPersistentAngerSaveData(output); + } + + @Override + protected void readAdditionalSaveData(ValueInput input) { + super.readAdditionalSaveData(input); + this.setVariant(ButterflyVariant.byId(input.getIntOr(VARIANT_KEY, ButterflyVariant.MONARCH.id()))); + this.readPersistentAngerSaveData(this.level(), input); + this.setNoGravity(true); + } + + @Override + public boolean hurtServer(ServerLevel serverLevel, DamageSource damageSource, float amount) { + boolean hurt = super.hurtServer(serverLevel, damageSource, amount); + Entity attacker = damageSource.getEntity(); + + if (hurt && attacker instanceof LivingEntity livingEntity && livingEntity != this && this.canAttack(livingEntity)) { + this.setPersistentAngerTarget(EntityReference.of(livingEntity)); + this.setTarget(livingEntity); + this.startPersistentAngerTimer(); + this.setAngryVisual(true); + } + + return hurt; + } + + @Override + public boolean doHurtTarget(ServerLevel serverLevel, Entity entity) { + boolean hurt = super.doHurtTarget(serverLevel, entity); + + if (hurt) { + this.playSound(SoundEvents.BEE_STING, 0.35F, 1.45F); + } + + return hurt; + } + + @Override + public boolean isFood(ItemStack itemStack) { + return itemStack.is(ItemTags.FLOWERS); + } + + @Override + public ButterflyEntity getBreedOffspring(ServerLevel serverLevel, AgeableMob ageableMob) { + ButterflyEntity baby = ModEntityTypes.BUTTERFLY.create(serverLevel, EntitySpawnReason.BREEDING); + + if (baby != null) { + if (ageableMob instanceof ButterflyEntity otherButterfly && this.random.nextBoolean()) { + baby.setVariant(otherButterfly.getVariant()); + } else { + baby.setVariant(this.getVariant()); + } + } + + return baby; + } + + @Override + public float getWalkTargetValue(BlockPos blockPos, LevelReader levelReader) { + if (isAttractiveFlower(levelReader, blockPos) || isAttractiveFlower(levelReader, blockPos.below())) { + return 10.0F; + } + + return levelReader.getPathfindingCostFromLightLevels(blockPos); + } + + @Override + protected void checkFallDamage(double fallDistance, boolean landed, BlockState state, BlockPos pos) { + } + + @Override + public boolean isFlying() { + return !this.onGround(); + } + + @Override + protected SoundEvent getAmbientSound() { + return this.isAngryVisual() ? SoundEvents.BEE_LOOP_AGGRESSIVE : SoundEvents.BAT_AMBIENT; + } + + @Override + protected SoundEvent getHurtSound(DamageSource damageSource) { + return SoundEvents.BEE_HURT; + } + + @Override + protected SoundEvent getDeathSound() { + return SoundEvents.BEE_DEATH; + } + + @Override + protected float getSoundVolume() { + return 0.25F; + } + + @Override + public float getVoicePitch() { + return 1.35F + this.random.nextFloat() * 0.25F; + } + + public ButterflyVariant getVariant() { + return ButterflyVariant.byId(this.entityData.get(VARIANT)); + } + + public void setVariant(ButterflyVariant variant) { + this.entityData.set(VARIANT, variant.id()); + } + + public boolean isAngryVisual() { + return this.entityData.get(ANGRY); + } + + private void setAngryVisual(boolean angry) { + this.entityData.set(ANGRY, angry); + this.setAggressive(angry); + } + + @Override + public long getPersistentAngerEndTime() { + return this.persistentAngerEndTime; + } + + @Override + public void setPersistentAngerEndTime(long persistentAngerEndTime) { + this.persistentAngerEndTime = persistentAngerEndTime; + } + + @Override + public EntityReference getPersistentAngerTarget() { + return this.persistentAngerTarget; + } + + @Override + public void setPersistentAngerTarget(EntityReference persistentAngerTarget) { + this.persistentAngerTarget = persistentAngerTarget; + } + + @Override + public void startPersistentAngerTimer() { + this.setPersistentAngerEndTime(this.level().getGameTime() + PERSISTENT_ANGER_TIME.sample(this.random)); + } + + private static boolean isAttractiveFlower(LevelReader levelReader, BlockPos blockPos) { + BlockState state = levelReader.getBlockState(blockPos); + return state.is(BlockTags.BEE_ATTRACTIVE) || state.is(BlockTags.FLOWERS); + } + + private static final class HoverNearFlowersGoal extends Goal { + private static final int SEARCH_RADIUS = 7; + private static final int VERTICAL_RADIUS = 4; + + private final ButterflyEntity butterfly; + private BlockPos flowerPos; + + private HoverNearFlowersGoal(ButterflyEntity butterfly) { + this.butterfly = butterfly; + this.setFlags(EnumSet.of(Goal.Flag.MOVE)); + } + + @Override + public boolean canUse() { + if (this.butterfly.isAngryVisual() || this.butterfly.getTarget() != null || this.butterfly.random.nextInt(12) != 0) { + return false; + } + + this.flowerPos = this.findNearbyFlower(); + return this.flowerPos != null; + } + + @Override + public boolean canContinueToUse() { + return this.flowerPos != null + && !this.butterfly.isAngryVisual() + && this.butterfly.distanceToSqr(this.flowerPos.getX() + 0.5D, this.flowerPos.getY() + 0.8D, this.flowerPos.getZ() + 0.5D) > 0.8D + && this.butterfly.distanceToSqr(this.flowerPos.getX() + 0.5D, this.flowerPos.getY() + 0.8D, this.flowerPos.getZ() + 0.5D) < 100.0D; + } + + @Override + public void tick() { + this.butterfly.getMoveControl().setWantedPosition( + this.flowerPos.getX() + 0.5D, + this.flowerPos.getY() + 0.9D, + this.flowerPos.getZ() + 0.5D, + 1.05D + ); + } + + @Override + public void stop() { + this.flowerPos = null; + } + + private BlockPos findNearbyFlower() { + BlockPos origin = this.butterfly.blockPosition(); + + for (int attempt = 0; attempt < 18; attempt++) { + int x = origin.getX() + this.butterfly.random.nextInt(SEARCH_RADIUS * 2 + 1) - SEARCH_RADIUS; + int y = origin.getY() + this.butterfly.random.nextInt(VERTICAL_RADIUS * 2 + 1) - VERTICAL_RADIUS; + int z = origin.getZ() + this.butterfly.random.nextInt(SEARCH_RADIUS * 2 + 1) - SEARCH_RADIUS; + BlockPos candidate = new BlockPos(x, y, z); + + if (!this.butterfly.level().isLoaded(candidate)) { + continue; + } + + if (isAttractiveFlower(this.butterfly.level(), candidate) && this.butterfly.level().isEmptyBlock(candidate.above())) { + return candidate; + } + } + + return null; + } + } +} diff --git a/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/entity/ButterflyVariant.java b/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/entity/ButterflyVariant.java new file mode 100644 index 0000000..bc271b3 --- /dev/null +++ b/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/entity/ButterflyVariant.java @@ -0,0 +1,68 @@ +package fr.koka99cab.pipallon.entity; + +import net.minecraft.util.RandomSource; + +public enum ButterflyVariant { + MONARCH("monarch", 50, 0xE77B12), + MORPHO("morpho", 22, 0x09A5F0), + EYED_MOTH("eyed_moth", 13, 0xB58B72), + ATLAS("atlas", 9, 0xB97842), + EMERALD_SWALLOWTAIL("emerald_swallowtail", 6, 0x58DFA5); + + private static final ButterflyVariant[] VALUES = values(); + private static final int TOTAL_WEIGHT = totalWeight(); + + private final String textureName; + private final int spawnWeight; + private final int eggColor; + + ButterflyVariant(String textureName, int spawnWeight, int eggColor) { + this.textureName = textureName; + this.spawnWeight = spawnWeight; + this.eggColor = eggColor; + } + + public String textureName() { + return this.textureName; + } + + public int eggColor() { + return this.eggColor; + } + + public int id() { + return this.ordinal(); + } + + public static ButterflyVariant byId(int id) { + if (id < 0 || id >= VALUES.length) { + return MONARCH; + } + + return VALUES[id]; + } + + public static ButterflyVariant choose(RandomSource random) { + int choice = random.nextInt(TOTAL_WEIGHT); + + for (ButterflyVariant variant : VALUES) { + choice -= variant.spawnWeight; + + if (choice < 0) { + return variant; + } + } + + return MONARCH; + } + + private static int totalWeight() { + int total = 0; + + for (ButterflyVariant variant : VALUES) { + total += variant.spawnWeight; + } + + return total; + } +} diff --git a/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/registry/ModEntityTypes.java b/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/registry/ModEntityTypes.java new file mode 100644 index 0000000..3b98557 --- /dev/null +++ b/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/registry/ModEntityTypes.java @@ -0,0 +1,51 @@ +package fr.koka99cab.pipallon.registry; + +import fr.koka99cab.pipallon.PipallonMod; +import fr.koka99cab.pipallon.entity.ButterflyEntity; +import java.util.function.Predicate; +import net.fabricmc.fabric.api.biome.v1.BiomeModifications; +import net.fabricmc.fabric.api.biome.v1.BiomeSelectionContext; +import net.fabricmc.fabric.api.biome.v1.BiomeSelectors; +import net.fabricmc.fabric.api.object.builder.v1.entity.FabricEntityTypeBuilder; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.entity.EntityDimensions; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.MobCategory; +import net.minecraft.world.entity.SpawnPlacementTypes; +import net.minecraft.world.level.biome.Biomes; +import net.minecraft.world.level.levelgen.Heightmap; + +public final class ModEntityTypes { + public static final Identifier BUTTERFLY_ID = PipallonMod.id("butterfly"); + public static final EntityType BUTTERFLY = Registry.register( + BuiltInRegistries.ENTITY_TYPE, + BUTTERFLY_ID, + FabricEntityTypeBuilder.createMob() + .mobCategory(MobCategory.CREATURE) + .entityFactory(ButterflyEntity::new) + .dimensions(EntityDimensions.scalable(0.45F, 0.35F)) + .defaultAttributes(ButterflyEntity::createAttributes) + .spawnPlacement(SpawnPlacementTypes.ON_GROUND, Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, ButterflyEntity::canSpawn) + .trackRangeBlocks(8) + .trackedUpdateRate(2) + .build(ResourceKey.create(Registries.ENTITY_TYPE, BUTTERFLY_ID)) + ); + + private ModEntityTypes() { + } + + public static void register() { + Predicate flowerBiomes = BiomeSelectors.includeByKey( + Biomes.FLOWER_FOREST, + Biomes.MEADOW, + Biomes.SUNFLOWER_PLAINS, + Biomes.CHERRY_GROVE + ); + Predicate beeBiomes = BiomeSelectors.spawnsOneOf(EntityType.BEE); + BiomeModifications.addSpawn(flowerBiomes.or(beeBiomes), MobCategory.CREATURE, BUTTERFLY, 8, 2, 4); + } +} diff --git a/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/registry/ModItems.java b/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/registry/ModItems.java new file mode 100644 index 0000000..091c14a --- /dev/null +++ b/Mobs/pipallon/src/main/java/fr/koka99cab/pipallon/registry/ModItems.java @@ -0,0 +1,32 @@ +package fr.koka99cab.pipallon.registry; + +import fr.koka99cab.pipallon.PipallonMod; +import net.fabricmc.fabric.api.creativetab.v1.CreativeModeTabEvents; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.item.CreativeModeTab; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.SpawnEggItem; + +public final class ModItems { + private static final ResourceKey BUTTERFLY_SPAWN_EGG_KEY = ResourceKey.create(Registries.ITEM, PipallonMod.id("butterfly_spawn_egg")); + private static final ResourceKey SPAWN_EGGS_TAB = ResourceKey.create(Registries.CREATIVE_MODE_TAB, Identifier.withDefaultNamespace("spawn_eggs")); + + public static final Item BUTTERFLY_SPAWN_EGG = Registry.register( + BuiltInRegistries.ITEM, + BUTTERFLY_SPAWN_EGG_KEY, + new SpawnEggItem(new Item.Properties() + .spawnEgg(ModEntityTypes.BUTTERFLY) + .setId(BUTTERFLY_SPAWN_EGG_KEY)) + ); + + private ModItems() { + } + + public static void register() { + CreativeModeTabEvents.modifyOutputEvent(SPAWN_EGGS_TAB).register(entries -> entries.accept(BUTTERFLY_SPAWN_EGG)); + } +} diff --git a/Mobs/pipallon/src/main/resources/assets/pipallon/icon.png b/Mobs/pipallon/src/main/resources/assets/pipallon/icon.png new file mode 100644 index 0000000..1fdfc90 Binary files /dev/null and b/Mobs/pipallon/src/main/resources/assets/pipallon/icon.png differ diff --git a/Mobs/pipallon/src/main/resources/assets/pipallon/items/butterfly_spawn_egg.json b/Mobs/pipallon/src/main/resources/assets/pipallon/items/butterfly_spawn_egg.json new file mode 100644 index 0000000..a717fd9 --- /dev/null +++ b/Mobs/pipallon/src/main/resources/assets/pipallon/items/butterfly_spawn_egg.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "pipallon:item/butterfly_spawn_egg" + } +} diff --git a/Mobs/pipallon/src/main/resources/assets/pipallon/lang/en_us.json b/Mobs/pipallon/src/main/resources/assets/pipallon/lang/en_us.json new file mode 100644 index 0000000..94aa2c5 --- /dev/null +++ b/Mobs/pipallon/src/main/resources/assets/pipallon/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "entity.pipallon.butterfly": "Butterfly", + "item.pipallon.butterfly_spawn_egg": "Butterfly Spawn Egg" +} diff --git a/Mobs/pipallon/src/main/resources/assets/pipallon/lang/fr_fr.json b/Mobs/pipallon/src/main/resources/assets/pipallon/lang/fr_fr.json new file mode 100644 index 0000000..4b91419 --- /dev/null +++ b/Mobs/pipallon/src/main/resources/assets/pipallon/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "entity.pipallon.butterfly": "Papillon", + "item.pipallon.butterfly_spawn_egg": "Oeuf d'apparition de papillon" +} diff --git a/Mobs/pipallon/src/main/resources/assets/pipallon/models/item/butterfly_spawn_egg.json b/Mobs/pipallon/src/main/resources/assets/pipallon/models/item/butterfly_spawn_egg.json new file mode 100644 index 0000000..0c856be --- /dev/null +++ b/Mobs/pipallon/src/main/resources/assets/pipallon/models/item/butterfly_spawn_egg.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "pipallon:item/butterfly_spawn_egg" + } +} diff --git a/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/atlas.png b/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/atlas.png new file mode 100644 index 0000000..116420a Binary files /dev/null and b/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/atlas.png differ diff --git a/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/emerald_swallowtail.png b/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/emerald_swallowtail.png new file mode 100644 index 0000000..f1a6314 Binary files /dev/null and b/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/emerald_swallowtail.png differ diff --git a/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/eyed_moth.png b/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/eyed_moth.png new file mode 100644 index 0000000..cccbfe9 Binary files /dev/null and b/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/eyed_moth.png differ diff --git a/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/monarch.png b/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/monarch.png new file mode 100644 index 0000000..2739477 Binary files /dev/null and b/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/monarch.png differ diff --git a/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/morpho.png b/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/morpho.png new file mode 100644 index 0000000..4a8c636 Binary files /dev/null and b/Mobs/pipallon/src/main/resources/assets/pipallon/textures/entity/butterfly/morpho.png differ diff --git a/Mobs/pipallon/src/main/resources/assets/pipallon/textures/item/butterfly_spawn_egg.png b/Mobs/pipallon/src/main/resources/assets/pipallon/textures/item/butterfly_spawn_egg.png new file mode 100644 index 0000000..461080e Binary files /dev/null and b/Mobs/pipallon/src/main/resources/assets/pipallon/textures/item/butterfly_spawn_egg.png differ diff --git a/Mobs/pipallon/src/main/resources/fabric.mod.json b/Mobs/pipallon/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..f967490 --- /dev/null +++ b/Mobs/pipallon/src/main/resources/fabric.mod.json @@ -0,0 +1,27 @@ +{ + "schemaVersion": 1, + "id": "pipallon", + "version": "${version}", + "name": "Pipallon", + "description": "Adds neutral flying butterflies that spawn around flower-rich biomes.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "icon": "assets/pipallon/icon.png", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.pipallon.PipallonMod" + ], + "client": [ + "fr.koka99cab.pipallon.client.PipallonClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Mobs/real_ghost/blockbench/spook_and_wraith.bbmodel b/Mobs/real_ghost/blockbench/spook_and_wraith.bbmodel new file mode 100644 index 0000000..07fd04e --- /dev/null +++ b/Mobs/real_ghost/blockbench/spook_and_wraith.bbmodel @@ -0,0 +1 @@ +{"meta":{"format_version":"5.0","model_format":"free","box_uv":true},"name":"spook and wraith","model_identifier":"","visible_box":[1,1,0],"variable_placeholders":"","multi_file_ruleset":"","variable_placeholder_buttons":[],"timeline_setups":[],"unhandled_root_fields":{},"resolution":{"width":64,"height":64},"elements":[{"name":"head","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-24,24,-4],"to":[-16,32,4],"autouv":0,"color":0,"origin":[-20,0,0],"faces":{"north":{"uv":[8,8,16,16],"texture":0},"east":{"uv":[0,8,8,16],"texture":0},"south":{"uv":[24,8,32,16],"texture":0},"west":{"uv":[16,8,24,16],"texture":0},"up":{"uv":[16,8,8,0],"texture":0},"down":{"uv":[24,0,16,8],"texture":0}},"type":"cube","uuid":"ff553c4d-4292-de24-6367-97d2493e7966"},{"name":"upper torso","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-24,9,-2],"to":[-16,24,2],"autouv":0,"color":0,"origin":[-20,0,0],"uv_offset":[24,16],"faces":{"north":{"uv":[28,20,36,35],"texture":0},"east":{"uv":[24,20,28,35],"texture":0},"south":{"uv":[40,20,48,35],"texture":0},"west":{"uv":[36,20,40,35],"texture":0},"up":{"uv":[36,20,28,16],"texture":0},"down":{"uv":[44,16,36,20],"texture":0}},"type":"cube","uuid":"60a30a28-0d8b-7a78-a590-408ee3a82dd7"},{"name":"upper torso","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-24,6,-2],"to":[-16,21,2],"autouv":0,"color":0,"inflate":-0.2,"origin":[-20,-3,0],"uv_offset":[0,16],"faces":{"north":{"uv":[4,20,12,35],"texture":0},"east":{"uv":[0,20,4,35],"texture":0},"south":{"uv":[16,20,24,35],"texture":0},"west":{"uv":[12,20,16,35],"texture":0},"up":{"uv":[12,20,4,16],"texture":0},"down":{"uv":[20,16,12,20],"texture":0}},"type":"cube","uuid":"d20f2dde-73bb-ff31-8e36-dc96d50439ae"},{"name":"right arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-16,12,-2],"to":[-12,24,2],"autouv":0,"color":0,"origin":[-20,0,0],"uv_offset":[32,0],"faces":{"north":{"uv":[36,4,40,16],"texture":0},"east":{"uv":[32,4,36,16],"texture":0},"south":{"uv":[44,4,48,16],"texture":0},"west":{"uv":[40,4,44,16],"texture":0},"up":{"uv":[40,4,36,0],"texture":0},"down":{"uv":[44,0,40,4],"texture":0}},"type":"cube","uuid":"2a26bcea-91f3-6b53-4a8a-8528413ac6f6"},{"name":"right arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-16,10,-2],"to":[-12,21,2],"autouv":0,"color":0,"inflate":-0.2,"origin":[-20,-3,0],"uv_offset":[0,35],"faces":{"north":{"uv":[4,39,8,50],"texture":0},"east":{"uv":[0,39,4,50],"texture":0},"south":{"uv":[12,39,16,50],"texture":0},"west":{"uv":[8,39,12,50],"texture":0},"up":{"uv":[8,39,4,35],"texture":0},"down":{"uv":[12,35,8,39],"texture":0}},"type":"cube","uuid":"9caf1a25-3149-b806-5de7-f3e15860eef2"},{"name":"left arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-28,12,-2],"to":[-24,24,2],"autouv":0,"color":0,"origin":[-20,0,0],"uv_offset":[32,0],"faces":{"north":{"uv":[36,4,40,16],"texture":0},"east":{"uv":[32,4,36,16],"texture":0},"south":{"uv":[44,4,48,16],"texture":0},"west":{"uv":[40,4,44,16],"texture":0},"up":{"uv":[40,4,36,0],"texture":0},"down":{"uv":[44,0,40,4],"texture":0}},"type":"cube","uuid":"172ad812-02ae-6aea-ca72-0b11916f6011"},{"name":"left arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-28,10,-2],"to":[-24,21,2],"autouv":0,"color":0,"inflate":-0.2,"origin":[-20,-3,0],"uv_offset":[0,35],"faces":{"north":{"uv":[4,39,8,50],"texture":0},"east":{"uv":[0,39,4,50],"texture":0},"south":{"uv":[12,39,16,50],"texture":0},"west":{"uv":[8,39,12,50],"texture":0},"up":{"uv":[8,39,4,35],"texture":0},"down":{"uv":[12,35,8,39],"texture":0}},"type":"cube","uuid":"1058e44e-2d7a-fc9a-d244-e94ae10a0752"},{"name":"lower torso","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-4.1,0,-2],"to":[3.9,12,2],"autouv":0,"color":0,"visibility":false,"origin":[0,0,0],"uv_offset":[0,16],"faces":{"north":{"uv":[4,20,12,32],"texture":1},"east":{"uv":[0,20,4,32],"texture":1},"south":{"uv":[16,20,24,32],"texture":1},"west":{"uv":[12,20,16,32],"texture":1},"up":{"uv":[12,20,4,16],"texture":1},"down":{"uv":[20,16,12,20],"texture":1}},"type":"cube","uuid":"c0a669de-b383-fee8-f5e0-f7dea41c082b"},{"name":"head","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-4,24,-4],"to":[4,32,4],"autouv":0,"color":0,"visibility":false,"origin":[0,0,0],"faces":{"north":{"uv":[8,8,16,16],"texture":1},"east":{"uv":[0,8,8,16],"texture":1},"south":{"uv":[24,8,32,16],"texture":1},"west":{"uv":[16,8,24,16],"texture":1},"up":{"uv":[16,8,8,0],"texture":1},"down":{"uv":[24,0,16,8],"texture":1}},"type":"cube","uuid":"11fd4c46-f069-0dde-cd39-ea6b101a44c1"},{"name":"upper torso","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-4,12,-2],"to":[4,24,2],"autouv":0,"color":0,"visibility":false,"origin":[0,0,0],"uv_offset":[24,16],"faces":{"north":{"uv":[28,20,36,32],"texture":1},"east":{"uv":[24,20,28,32],"texture":1},"south":{"uv":[40,20,48,32],"texture":1},"west":{"uv":[36,20,40,32],"texture":1},"up":{"uv":[36,20,28,16],"texture":1},"down":{"uv":[44,16,36,20],"texture":1}},"type":"cube","uuid":"a8a3fe69-7230-9529-2e56-934460c06df1"},{"name":"right arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[4,12,-2],"to":[8,24,2],"autouv":0,"color":0,"visibility":false,"origin":[0,0,0],"uv_offset":[0,32],"faces":{"north":{"uv":[4,36,8,48],"texture":1},"east":{"uv":[0,36,4,48],"texture":1},"south":{"uv":[12,36,16,48],"texture":1},"west":{"uv":[8,36,12,48],"texture":1},"up":{"uv":[8,36,4,32],"texture":1},"down":{"uv":[12,32,8,36],"texture":1}},"type":"cube","uuid":"5961b3f5-c6cc-72da-62c3-2b8e4cbd72ff"},{"name":"left arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-8,12,-2],"to":[-4,24,2],"autouv":0,"color":0,"visibility":false,"origin":[0,0,0],"uv_offset":[0,32],"faces":{"north":{"uv":[4,36,8,48],"texture":1},"east":{"uv":[0,36,4,48],"texture":1},"south":{"uv":[12,36,16,48],"texture":1},"west":{"uv":[8,36,12,48],"texture":1},"up":{"uv":[8,36,4,32],"texture":1},"down":{"uv":[12,32,8,36],"texture":1}},"type":"cube","uuid":"3030458a-e850-fd35-1091-6dce3660ab55"},{"name":"head","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-44,24,-4],"to":[-36,32,4],"autouv":0,"color":0,"origin":[-40,0,0],"faces":{"north":{"uv":[8,8,16,16],"texture":3},"east":{"uv":[0,8,8,16],"texture":3},"south":{"uv":[24,8,32,16],"texture":3},"west":{"uv":[16,8,24,16],"texture":3},"up":{"uv":[16,8,8,0],"texture":3},"down":{"uv":[24,0,16,8],"texture":3}},"type":"cube","uuid":"2a8f101a-db51-c186-b074-6d7d4ae1a35e"},{"name":"upper torso","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-44,9,-2],"to":[-36,24,2],"autouv":0,"color":0,"origin":[-40,0,0],"uv_offset":[0,16],"faces":{"north":{"uv":[4,20,12,35],"texture":3},"east":{"uv":[0,20,4,35],"texture":3},"south":{"uv":[16,20,24,35],"texture":3},"west":{"uv":[12,20,16,35],"texture":3},"up":{"uv":[12,20,4,16],"texture":3},"down":{"uv":[20,16,12,20],"texture":3}},"type":"cube","uuid":"c06f8db5-85fb-7e05-65f6-ebbd6027726d"},{"name":"upper torso","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-44,6,-2],"to":[-36,21,2],"autouv":0,"color":0,"inflate":-0.2,"origin":[-40,-3,0],"uv_offset":[24,16],"faces":{"north":{"uv":[28,20,36,35],"texture":3},"east":{"uv":[24,20,28,35],"texture":3},"south":{"uv":[40,20,48,35],"texture":3},"west":{"uv":[36,20,40,35],"texture":3},"up":{"uv":[36,20,28,16],"texture":3},"down":{"uv":[44,16,36,20],"texture":3}},"type":"cube","uuid":"aed5493e-73fe-ba50-fb2a-14831903345d"},{"name":"right arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-36,12,-2],"to":[-32,24,2],"autouv":0,"color":0,"origin":[-40,0,0],"uv_offset":[32,0],"faces":{"north":{"uv":[36,4,40,16],"texture":3},"east":{"uv":[32,4,36,16],"texture":3},"south":{"uv":[44,4,48,16],"texture":3},"west":{"uv":[40,4,44,16],"texture":3},"up":{"uv":[40,4,36,0],"texture":3},"down":{"uv":[44,0,40,4],"texture":3}},"type":"cube","uuid":"9009152f-2b7d-7d8c-eb56-6d610a0ac502"},{"name":"right arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-36,10,-2],"to":[-32,21,2],"autouv":0,"color":0,"inflate":-0.2,"origin":[-40,-3,0],"uv_offset":[0,35],"faces":{"north":{"uv":[4,39,8,50],"texture":3},"east":{"uv":[0,39,4,50],"texture":3},"south":{"uv":[12,39,16,50],"texture":3},"west":{"uv":[8,39,12,50],"texture":3},"up":{"uv":[8,39,4,35],"texture":3},"down":{"uv":[12,35,8,39],"texture":3}},"type":"cube","uuid":"f779bddb-8bb7-aed5-2131-1325407cffdf"},{"name":"left arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-48,12,-2],"to":[-44,24,2],"autouv":0,"color":0,"origin":[-40,0,0],"uv_offset":[32,0],"faces":{"north":{"uv":[36,4,40,16],"texture":3},"east":{"uv":[32,4,36,16],"texture":3},"south":{"uv":[44,4,48,16],"texture":3},"west":{"uv":[40,4,44,16],"texture":3},"up":{"uv":[40,4,36,0],"texture":3},"down":{"uv":[44,0,40,4],"texture":3}},"type":"cube","uuid":"f5be7880-85af-6f5f-03de-b48e42450ad5"},{"name":"left arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-48,10,-2],"to":[-44,21,2],"autouv":0,"color":0,"inflate":-0.2,"origin":[-40,-3,0],"uv_offset":[0,35],"faces":{"north":{"uv":[4,39,8,50],"texture":3},"east":{"uv":[0,39,4,50],"texture":3},"south":{"uv":[12,39,16,50],"texture":3},"west":{"uv":[8,39,12,50],"texture":3},"up":{"uv":[8,39,4,35],"texture":3},"down":{"uv":[12,35,8,39],"texture":3}},"type":"cube","uuid":"f6215721-23da-490f-e90f-6348c93e3a79"},{"name":"head","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-64,24,-4],"to":[-56,34,4],"autouv":0,"color":0,"origin":[-60,0,0],"faces":{"north":{"uv":[8,8,16,18],"texture":5},"east":{"uv":[0,8,8,18],"texture":5},"south":{"uv":[24,8,32,18],"texture":5},"west":{"uv":[16,8,24,18],"texture":5},"up":{"uv":[16,8,8,0],"texture":5},"down":{"uv":[24,0,16,8],"texture":5}},"type":"cube","uuid":"b902d06e-13bf-380b-f63f-e37895752c19"},{"name":"upper torso","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-64,9,-3],"to":[-56,24,3],"autouv":0,"color":0,"origin":[-60,0,0],"uv_offset":[0,18],"faces":{"north":{"uv":[6,24,14,39],"texture":5},"east":{"uv":[0,24,6,39],"texture":5},"south":{"uv":[20,24,28,39],"texture":5},"west":{"uv":[14,24,20,39],"texture":5},"up":{"uv":[14,24,6,18],"texture":5},"down":{"uv":[22,18,14,24],"texture":5}},"type":"cube","uuid":"207b26e1-de27-bd35-71c3-68bc3129db9a"},{"name":"upper torso","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-64,6,-3],"to":[-56,21,3],"autouv":0,"color":0,"inflate":-0.2,"origin":[-60,-3,0],"uv_offset":[28,18],"faces":{"north":{"uv":[34,24,42,39],"texture":5},"east":{"uv":[28,24,34,39],"texture":5},"south":{"uv":[48,24,56,39],"texture":5},"west":{"uv":[42,24,48,39],"texture":5},"up":{"uv":[42,24,34,18],"texture":5},"down":{"uv":[50,18,42,24],"texture":5}},"type":"cube","uuid":"7ace18ed-ec05-f148-4798-4a6dca2f5f0b"},{"name":"right arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-56,12,-2],"to":[-52,24,2],"autouv":0,"color":0,"origin":[-60,0,0],"uv_offset":[32,0],"faces":{"north":{"uv":[36,4,40,16],"texture":5},"east":{"uv":[32,4,36,16],"texture":5},"south":{"uv":[44,4,48,16],"texture":5},"west":{"uv":[40,4,44,16],"texture":5},"up":{"uv":[40,4,36,0],"texture":5},"down":{"uv":[44,0,40,4],"texture":5}},"type":"cube","uuid":"fbf8d794-c352-88bb-2282-77f74be4a0a5"},{"name":"right arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-56,10,-2],"to":[-52,21,2],"autouv":0,"color":0,"inflate":-0.2,"origin":[-60,-3,0],"uv_offset":[0,39],"faces":{"north":{"uv":[4,43,8,54],"texture":5},"east":{"uv":[0,43,4,54],"texture":5},"south":{"uv":[12,43,16,54],"texture":5},"west":{"uv":[8,43,12,54],"texture":5},"up":{"uv":[8,43,4,39],"texture":5},"down":{"uv":[12,39,8,43],"texture":5}},"type":"cube","uuid":"f4334fcb-1c7f-0235-3a30-618bb7e37bf9"},{"name":"left arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-68,12,-2],"to":[-64,24,2],"autouv":0,"color":0,"origin":[-60,0,0],"uv_offset":[32,0],"faces":{"north":{"uv":[36,4,40,16],"texture":5},"east":{"uv":[32,4,36,16],"texture":5},"south":{"uv":[44,4,48,16],"texture":5},"west":{"uv":[40,4,44,16],"texture":5},"up":{"uv":[40,4,36,0],"texture":5},"down":{"uv":[44,0,40,4],"texture":5}},"type":"cube","uuid":"e5eaec13-0ecc-6521-3109-910e0bf1b093"},{"name":"left arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-68,10,-2],"to":[-64,21,2],"autouv":0,"color":0,"inflate":-0.2,"origin":[-60,-3,0],"uv_offset":[0,39],"faces":{"north":{"uv":[4,43,8,54],"texture":5},"east":{"uv":[0,43,4,54],"texture":5},"south":{"uv":[12,43,16,54],"texture":5},"west":{"uv":[8,43,12,54],"texture":5},"up":{"uv":[8,43,4,39],"texture":5},"down":{"uv":[12,39,8,43],"texture":5}},"type":"cube","uuid":"1a807816-a274-91fa-228d-d99b0b36e3f3"},{"name":"head","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-61,23,-6],"to":[-59,27,-4],"autouv":0,"color":0,"origin":[-60,0,-8],"uv_offset":[16,39],"faces":{"north":{"uv":[18,41,20,45],"texture":5},"east":{"uv":[16,41,18,45],"texture":5},"south":{"uv":[22,41,24,45],"texture":5},"west":{"uv":[20,41,22,45],"texture":5},"up":{"uv":[20,41,18,39],"texture":5},"down":{"uv":[22,39,20,41],"texture":5}},"type":"cube","uuid":"7d35bef1-c02d-1370-41f9-f0214f9f2dba"},{"name":"head","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-84,24,-4],"to":[-76,32,4],"autouv":0,"color":0,"origin":[-80,0,0],"faces":{"north":{"uv":[8,8,16,16],"texture":6},"east":{"uv":[0,8,8,16],"texture":6},"south":{"uv":[24,8,32,16],"texture":6},"west":{"uv":[16,8,24,16],"texture":6},"up":{"uv":[16,8,8,0],"texture":6},"down":{"uv":[24,0,16,8],"texture":6}},"type":"cube","uuid":"d5b199ad-f885-a0a8-fc38-a8846a02a474"},{"name":"upper torso","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-84,9,-2],"to":[-76,24,2],"autouv":0,"color":0,"origin":[-80,0,0],"uv_offset":[0,16],"faces":{"north":{"uv":[4,20,12,35],"texture":6},"east":{"uv":[0,20,4,35],"texture":6},"south":{"uv":[16,20,24,35],"texture":6},"west":{"uv":[12,20,16,35],"texture":6},"up":{"uv":[12,20,4,16],"texture":6},"down":{"uv":[20,16,12,20],"texture":6}},"type":"cube","uuid":"05575f47-dc5b-bf37-308e-9f05c65af806"},{"name":"upper torso","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-84,6,-2],"to":[-76,21,2],"autouv":0,"color":0,"inflate":-0.2,"origin":[-80,-3,0],"uv_offset":[24,16],"faces":{"north":{"uv":[28,20,36,35],"texture":6},"east":{"uv":[24,20,28,35],"texture":6},"south":{"uv":[40,20,48,35],"texture":6},"west":{"uv":[36,20,40,35],"texture":6},"up":{"uv":[36,20,28,16],"texture":6},"down":{"uv":[44,16,36,20],"texture":6}},"type":"cube","uuid":"b9404d9e-8802-9346-8aa7-cf4bf151b31e"},{"name":"right arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-76,12,-2],"to":[-72,24,2],"autouv":0,"color":0,"origin":[-80,0,0],"uv_offset":[32,0],"faces":{"north":{"uv":[36,4,40,16],"texture":6},"east":{"uv":[32,4,36,16],"texture":6},"south":{"uv":[44,4,48,16],"texture":6},"west":{"uv":[40,4,44,16],"texture":6},"up":{"uv":[40,4,36,0],"texture":6},"down":{"uv":[44,0,40,4],"texture":6}},"type":"cube","uuid":"0b9d67c7-e984-0654-9054-d0b5aca6973f"},{"name":"right arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-76,10,-2],"to":[-72,21,2],"autouv":0,"color":0,"inflate":-0.2,"origin":[-80,-3,0],"uv_offset":[0,35],"faces":{"north":{"uv":[4,39,8,50],"texture":6},"east":{"uv":[0,39,4,50],"texture":6},"south":{"uv":[12,39,16,50],"texture":6},"west":{"uv":[8,39,12,50],"texture":6},"up":{"uv":[8,39,4,35],"texture":6},"down":{"uv":[12,35,8,39],"texture":6}},"type":"cube","uuid":"4121ce56-7b92-33f8-19d4-49a57a380b61"},{"name":"left arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-88,12,-2],"to":[-84,24,2],"autouv":0,"color":0,"origin":[-80,0,0],"uv_offset":[32,0],"faces":{"north":{"uv":[36,4,40,16],"texture":6},"east":{"uv":[32,4,36,16],"texture":6},"south":{"uv":[44,4,48,16],"texture":6},"west":{"uv":[40,4,44,16],"texture":6},"up":{"uv":[40,4,36,0],"texture":6},"down":{"uv":[44,0,40,4],"texture":6}},"type":"cube","uuid":"d6547a1e-2de2-0308-5330-94dc2a74e973"},{"name":"left arm","box_uv":true,"render_order":"default","locked":false,"export":true,"scope":0,"allow_mirror_modeling":true,"from":[-88,10,-2],"to":[-84,21,2],"autouv":0,"color":0,"inflate":-0.2,"origin":[-80,-3,0],"uv_offset":[0,35],"faces":{"north":{"uv":[4,39,8,50],"texture":6},"east":{"uv":[0,39,4,50],"texture":6},"south":{"uv":[12,39,16,50],"texture":6},"west":{"uv":[8,39,12,50],"texture":6},"up":{"uv":[8,39,4,35],"texture":6},"down":{"uv":[12,35,8,39],"texture":6}},"type":"cube","uuid":"ee5c42a8-3f05-62b0-473d-117d7b024bef"}],"groups":[{"name":"Head2","uuid":"2980bc14-b4e6-0824-e5e6-d516191051ec","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[0,24,0],"rotation":[-15,0,-2.5],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":false,"primary_selected":false},{"name":"Upper_torso2","uuid":"347e9d61-9352-997d-81ce-6ba30c70aad7","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[0,24,0],"rotation":[-17.5,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":false,"primary_selected":false},{"name":"Lower_torso2","uuid":"270a0c83-eae4-b155-8bfd-3b69433694cb","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[0,12,0],"rotation":[-22.5,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":false,"primary_selected":false},{"name":"Right_arm2","uuid":"618beba7-c20c-65f3-564d-215adcd46add","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[5.1,22,0],"rotation":[72.6097,-7.76673,-8.05118],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":false,"primary_selected":false},{"name":"Left_arm2","uuid":"f101a864-93e2-7fbd-1d78-718272fd6019","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-5,22,0],"rotation":[75.49107,5.1327,7.95282],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":false,"primary_selected":false},{"name":"Spook (Mob)","uuid":"0984bc52-b6a4-fbf2-af8a-b0f8b90d194f","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-20,12,0],"rotation":[0,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":false,"primary_selected":false},{"name":"Head3","uuid":"c2317489-b751-f901-b379-ad7be314abcd","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-20,24,0],"rotation":[-15,0,-2.5],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":false,"primary_selected":false},{"name":"Upper_torso3","uuid":"ff98cb07-383d-00c2-243e-5dad890b47ac","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-20,24,0],"rotation":[-17.5,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Lower_torso3","uuid":"9eec7843-a3d4-fe01-cc1f-b1042fe9089d","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-20,12,0],"rotation":[-22.5,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":false,"primary_selected":false},{"name":"Right_arm3","uuid":"b27b3967-4d29-5bfa-5a3d-e03733d21c16","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-14.9,22,0],"rotation":[72.6097,-7.76673,-8.05118],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Left_arm3","uuid":"15778716-2ebd-1a63-0b12-8be1f1265bb7","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-25,22,0],"rotation":[75.49107,5.1327,7.95282],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Spook","uuid":"417c9433-3fe7-d53f-dfdb-122a50872385","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[0,12,0],"rotation":[0,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":false,"autouv":0,"isOpen":false,"primary_selected":false},{"name":"Head","uuid":"6fa1424f-f0a8-27e5-e19d-8e5eedbdfdad","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[0,24,0],"rotation":[-15,0,-2.5],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":false,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Upper torso","uuid":"1e8d5bb9-21f8-9175-b2ef-b4c7b71a4410","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[0,24,0],"rotation":[-17.5,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":false,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Lower torso","uuid":"683b358c-f753-ca08-3558-f702fec94a69","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[0,13,58],"rotation":[0,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":false,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Left arm","uuid":"358e19fa-3dcd-582f-d6ad-d4e09003574a","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-5,22,0],"rotation":[75.49107,5.1327,7.95282],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":false,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Right arm","uuid":"f76a5580-11bd-e7db-52b2-76492d8ef6c0","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[5.1,22,0],"rotation":[72.6097,-7.76673,-8.05118],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":false,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"spook (Human)","uuid":"e56c1ab5-1d6e-cd66-2676-297576d7ed53","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-40,12,0],"rotation":[0,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":false,"primary_selected":false},{"name":"Head4","uuid":"14357347-55cf-0481-d77c-abe5a1da1ff3","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-40,24,0],"rotation":[-15,0,-2.5],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Upper_torso4","uuid":"ea5fec0f-d120-257d-51cd-8b97489b8c42","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-40,24,0],"rotation":[-17.5,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Lower_torso4","uuid":"dff0aa63-7f65-326c-b3a8-fa7c1a315beb","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-40,12,0],"rotation":[-22.5,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Right_arm4","uuid":"cfb93a3d-2745-6c96-95a0-e772abbbc7c6","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-34.9,22,0],"rotation":[72.6097,-7.76673,-8.05118],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Left_arm4","uuid":"65daf8b8-2605-1fb6-c834-bdad02b4f67d","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-45,22,0],"rotation":[75.49107,5.1327,7.95282],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Spook (Illager)","uuid":"6ac00eb4-24d7-29ad-f264-22fb20caace4","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-60,12,0],"rotation":[0,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":true},{"name":"Head5","uuid":"614581af-76df-672f-150f-a8cc2c2508c1","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-60,24,0],"rotation":[-15,0,-2.5],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Upper_torso5","uuid":"e4ca091c-89d8-99fd-0d62-d4805804fb1e","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-60,24,0],"rotation":[-17.5,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Lower_torso5","uuid":"53db4f45-c9d0-f1c6-7a7f-e2fa25c16aed","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-60,12,0],"rotation":[-22.5,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Right_arm5","uuid":"60a782b2-dfd2-2f44-e195-63af751a3a33","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-54.9,22,0],"rotation":[72.6097,-7.76673,-8.05118],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Left_arm5","uuid":"61037dca-eda8-b6bc-6314-aeb122f42fe7","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-65,22,0],"rotation":[75.49107,5.1327,7.95282],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Spook color","uuid":"02ae289d-5a07-a9ab-490f-38edf81ed374","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-80,12,0],"rotation":[0,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":false,"primary_selected":false},{"name":"Head6","uuid":"e72f88c9-b4aa-51fb-4eb0-95fde5695d95","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-80,24,0],"rotation":[-15,0,-2.5],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Upper_torso6","uuid":"0d1a4864-9342-257c-b462-f84581b85c43","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-80,24,0],"rotation":[-17.5,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Lower_torso6","uuid":"07eb2320-deee-1f3f-8b14-947fae7ba196","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-80,12,0],"rotation":[-22.5,0,0],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Right_arm6","uuid":"7ee7abcf-2486-6943-cfae-4d39dc6c0a0a","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-74.9,22,0],"rotation":[72.6097,-7.76673,-8.05118],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false},{"name":"Left_arm6","uuid":"1aa8923a-aae4-4854-569c-fc39c3ea3d99","export":true,"locked":false,"scope":0,"selected":false,"_static":{"properties":{},"temp_data":{}},"origin":[-85,22,0],"rotation":[75.49107,5.1327,7.95282],"color":0,"children":[],"reset":false,"shade":true,"mirror_uv":false,"visibility":true,"autouv":0,"isOpen":true,"primary_selected":false}],"outliner":[{"uuid":"417c9433-3fe7-d53f-dfdb-122a50872385","isOpen":false,"children":[{"uuid":"6fa1424f-f0a8-27e5-e19d-8e5eedbdfdad","isOpen":true,"children":["11fd4c46-f069-0dde-cd39-ea6b101a44c1"]},{"uuid":"1e8d5bb9-21f8-9175-b2ef-b4c7b71a4410","isOpen":true,"children":["a8a3fe69-7230-9529-2e56-934460c06df1",{"uuid":"683b358c-f753-ca08-3558-f702fec94a69","isOpen":true,"children":["c0a669de-b383-fee8-f5e0-f7dea41c082b"]}]},{"uuid":"f76a5580-11bd-e7db-52b2-76492d8ef6c0","isOpen":true,"children":["5961b3f5-c6cc-72da-62c3-2b8e4cbd72ff"]},{"uuid":"358e19fa-3dcd-582f-d6ad-d4e09003574a","isOpen":true,"children":["3030458a-e850-fd35-1091-6dce3660ab55"]}]},{"uuid":"0984bc52-b6a4-fbf2-af8a-b0f8b90d194f","isOpen":false,"children":[{"uuid":"c2317489-b751-f901-b379-ad7be314abcd","isOpen":false,"children":["ff553c4d-4292-de24-6367-97d2493e7966"]},{"uuid":"ff98cb07-383d-00c2-243e-5dad890b47ac","isOpen":true,"children":["60a30a28-0d8b-7a78-a590-408ee3a82dd7","d20f2dde-73bb-ff31-8e36-dc96d50439ae",{"uuid":"9eec7843-a3d4-fe01-cc1f-b1042fe9089d","isOpen":false,"children":[]}]},{"uuid":"b27b3967-4d29-5bfa-5a3d-e03733d21c16","isOpen":true,"children":["2a26bcea-91f3-6b53-4a8a-8528413ac6f6","9caf1a25-3149-b806-5de7-f3e15860eef2"]},{"uuid":"15778716-2ebd-1a63-0b12-8be1f1265bb7","isOpen":true,"children":["172ad812-02ae-6aea-ca72-0b11916f6011","1058e44e-2d7a-fc9a-d244-e94ae10a0752"]}]},{"uuid":"e56c1ab5-1d6e-cd66-2676-297576d7ed53","isOpen":false,"children":[{"uuid":"14357347-55cf-0481-d77c-abe5a1da1ff3","isOpen":true,"children":["2a8f101a-db51-c186-b074-6d7d4ae1a35e"]},{"uuid":"ea5fec0f-d120-257d-51cd-8b97489b8c42","isOpen":true,"children":["c06f8db5-85fb-7e05-65f6-ebbd6027726d","aed5493e-73fe-ba50-fb2a-14831903345d",{"uuid":"dff0aa63-7f65-326c-b3a8-fa7c1a315beb","isOpen":true,"children":[]}]},{"uuid":"cfb93a3d-2745-6c96-95a0-e772abbbc7c6","isOpen":true,"children":["9009152f-2b7d-7d8c-eb56-6d610a0ac502","f779bddb-8bb7-aed5-2131-1325407cffdf"]},{"uuid":"65daf8b8-2605-1fb6-c834-bdad02b4f67d","isOpen":true,"children":["f5be7880-85af-6f5f-03de-b48e42450ad5","f6215721-23da-490f-e90f-6348c93e3a79"]}]},{"uuid":"6ac00eb4-24d7-29ad-f264-22fb20caace4","isOpen":true,"children":[{"uuid":"614581af-76df-672f-150f-a8cc2c2508c1","isOpen":true,"children":["b902d06e-13bf-380b-f63f-e37895752c19","7d35bef1-c02d-1370-41f9-f0214f9f2dba"]},{"uuid":"e4ca091c-89d8-99fd-0d62-d4805804fb1e","isOpen":true,"children":["207b26e1-de27-bd35-71c3-68bc3129db9a","7ace18ed-ec05-f148-4798-4a6dca2f5f0b",{"uuid":"53db4f45-c9d0-f1c6-7a7f-e2fa25c16aed","isOpen":true,"children":[]}]},{"uuid":"60a782b2-dfd2-2f44-e195-63af751a3a33","isOpen":true,"children":["fbf8d794-c352-88bb-2282-77f74be4a0a5","f4334fcb-1c7f-0235-3a30-618bb7e37bf9"]},{"uuid":"61037dca-eda8-b6bc-6314-aeb122f42fe7","isOpen":true,"children":["e5eaec13-0ecc-6521-3109-910e0bf1b093","1a807816-a274-91fa-228d-d99b0b36e3f3"]}]},{"uuid":"02ae289d-5a07-a9ab-490f-38edf81ed374","isOpen":false,"children":[{"uuid":"e72f88c9-b4aa-51fb-4eb0-95fde5695d95","isOpen":true,"children":["d5b199ad-f885-a0a8-fc38-a8846a02a474"]},{"uuid":"0d1a4864-9342-257c-b462-f84581b85c43","isOpen":true,"children":["05575f47-dc5b-bf37-308e-9f05c65af806","b9404d9e-8802-9346-8aa7-cf4bf151b31e",{"uuid":"07eb2320-deee-1f3f-8b14-947fae7ba196","isOpen":true,"children":[]}]},{"uuid":"7ee7abcf-2486-6943-cfae-4d39dc6c0a0a","isOpen":true,"children":["0b9d67c7-e984-0654-9054-d0b5aca6973f","4121ce56-7b92-33f8-19d4-49a57a380b61"]},{"uuid":"1aa8923a-aae4-4854-569c-fc39c3ea3d99","isOpen":true,"children":["d6547a1e-2de2-0308-5330-94dc2a74e973","ee5c42a8-3f05-62b0-473d-117d7b024bef"]}]}],"textures":[{"name":"texture","path":"","folder":"block","namespace":"","id":"6","group":"","scope":0,"width":64,"height":64,"uv_width":64,"uv_height":64,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","file_format":"png","render_mode":"default","render_sides":"auto","wrap_mode":"limited","pbr_channel":"color","fps":7,"frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":false,"uuid":"ec7b371c-9ad5-ff10-7300-2c66174ab884","source":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAGLUlEQVR4AeyavXIcRRSFRxOglRxYEpkg02M4ceAABVCASVDgQGQUEFGEPIBTfiJwFQ7IIHVCQMJbQJEAGZIcWFqRiPl6/O3ebY93VjNbZc3Wunx87j33dk+fnp/d2XJZtPz5+ckvV+DJr79dRaCBr79/fDUPLdO/UM7neqFhyULrBmxtbaVDXlxcJOYfY2toQ0XrBmBMoxgHUSMeMhbaAA2OxxcFMF8FXngDovEY992Etns+r+d53+MvtAFe9vFgTVqsXyfe3t6e295Wnzu4pdi6ARodjeqHIfMZW0NbBjAKmEsmFmjAfBncugEehAfh7u5eAYjVl8XRWFMcNY6Z52hdUPJZHj/fY0yNSZsMq+3v7xcHBweNoMYccc4YU4tGRqNNDlfI1szl1FT9Y70KO/9NVwCXsnAm8hi35Xmv/TwwT09PCvIINGqMy41FzZpMTeNRQ++CkkUIJnCRxOoweZfaeHzJ0PTxyTwC0RqxZuSo1XH9DLIuU+uDagPqBTLJ7OLqb34ukho9wDivoQN6wLR+WW1APM4014gPVsaBmBvLeZ28K9ItwEKBk0QTaL//8WcBzs7OirMKxICaiGOYC1iT0YC5HI0dvff2hnmMY6+bRl29K5fn5+eTsSwOKBBTf/ON/QL89fc/BSAG1OiJ/TGnLuyR1TGxXb1vvH94b2KcHvImRnMMcV+kK8DFOBkmgDl1jJsTo5nTC8ypAXOYPAItR27aujp5jMn7Im2Ak7QtkLMO7I/cNjb25vFbd+9s5FpTHs0vOiafJ8/LTz56sNGE4w8/2ADWvvz8s5SjEauTA/M2zhew7O/2+fxt+cwV0Na8ivX1BqziWb2Op/KrR4+/WASPfvxpob58rqZ73K+yTQvN+9vypjmuo5W3RrdSf86IasTAvI1jr2Zzpgeox1gt56YetD6YPANGW68VGIOZkDgyMbXXd3cJZ3oR6KcOkxvzrU0je3u7kzc9etRle2HqgJq5MUxtGShdaJwME+hoOaMBdXvNqaHBQgN5rg7npsjRHUNujA6iZu26XG5WX0Nv791O4zQBo8MUNIQG1ImpR8Qasd/rWTAxoN/FT/XZ3wJ2dnaqq2WrwmaF2TdBxi8L6Ra4rH7zx4wYX/xXoHEQtMjG6pg0toZmDGMaEANjmRcpvkqTC7TZ3ulGqLN5xH1QYhTDTkJurDGvkKcnT1PJHhnR3jzWiMzbJD2cYRjDMLCnjnllrl/JyWNfjKn1QboCmAAzGiRnU9AAeRPTE2vksY/5OLMaa2I0epgHsEFoxCDm6PYSU++L8t/T0zQHiyeQuYyJAabgZ+NnBQziOGLMOj72o52cnKYfRFg8L00wBmq+rO7x+v4np19mXN5PnU2hZh9aV0y+B2DYSZpibgMfhvQZ08tHI3VimNuBmD7gA894evnXxtHj/WzsOHIue8YRw/lHKnN0QclZZSBnFQYYgEWs2U+NmLNPzFmHQYw5g2ggxvnZwyA9wNps//R5wNVDH1cB3AfpGYARJpExgGlymBoaObFMDNwEYvrgqJFrBtYARut8+sAjj/3EGnVc1Ijnoa1Wfnr84CFNmoKrn5ySpn58dP+hG4EG6GMsINewjEaN3wc0hQYwzm8IUa+OuWEuMxYwBrgRcqxR74J0BTCQxcIC08TquWF1ekRlIm2crO5CYRAN0sNmwIIeY7maM/1qJKv35bQBmoGBky4SN/WixbHk0dS82Jqcj23K0boibUDXwY6LZmNsfVk8b1O6HmMpG9D14Ddh3HoDbsJZeJVrKL/57oeP++BVLn4Zx063gF85XzZhW/1l44agpw1woRgF5DKxQAPmq8CTDYjGmuKoYTzP0YaIMhrZ3K7fzmRr5rJGrZsPkdMVkBvDiFrO1DRuDW2oSBvA4jUjRy3Fm/X/5bMuUxsySo0cvfvOt9HI5nPDaMaxBy3m9A0RJSYwExePZk7t/uG9yeaQs2lRs/cm8HXXkG4B/osKAzGOQWJADgMNy2irgLQBh3fvTM6wBuUmk3FjmupD0tIGzFvwvI2YN24otdYNGIqRrutcb0DXnVuVcesrYFXOZFcf6yug686tyrj1FbAqZ7Krj/UV0HXnVmXc+goY+pnsu/7/AQAA//9eDatyAAAABklEQVQDANdcwr0kW0dnAAAAAElFTkSuQmCC"},{"name":"texture","path":"","folder":"block","namespace":"","id":"8","group":"","scope":0,"width":64,"height":64,"uv_width":64,"uv_height":64,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","file_format":"png","render_mode":"default","render_sides":"auto","wrap_mode":"limited","pbr_channel":"color","fps":7,"frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":false,"uuid":"52c231b0-1e9c-67e3-55da-09391a100582","source":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAFNUlEQVR4Aeyau24sRRCGx5P4EtkOnfoxSAgIICAAkUAAEkhIIAICXgGJAAkCJCIISEgQ6UkISJBAvIdD25Evkdmvm2+ntk/vjr3rPeu29kj/+av+qu6pqu29zMh9N/Lv9xd/3IEXf/51F4EGfvjpl7tFGNl+4+HRAezv76cir6+vE/OftjG0VjE6ABqzURoHUcNuGfcagA3e3Fx3QP858L0HEBuPdutDuNcAPPax2ZoW463YowOw0b29/GFIY9rG0FrF6ABsjA/Co6PjDmCrt8493+Xx+z3axGiw1rDayclJd3p6WgUx9oh7RpsY+28S6QRwlIXF4Ed7zC9zzecD8+LivMOPQCPmuk1xTxGCIiwSWx3GXyZ2c3PL0vT1yT4C0Rj2pjAZQC6QAmaLy7/8LJIYOUC7jKEDcsAQv50MIF5n1id3U0hvAQoFFhGbQPvum687cHl52V1OgA2IibiGvYAxGQ3oPwXur66upnVQHFDAJv7Zl1914Mfvv+0ANiBGTsyPPnFhjjxPN/6qOJ2AshiaABZBnMb1sdH0yQX6xIA+jB+B9hSQBmAhYwXyqgPzI4+tjbmbtMtr91988uFOhAk2pP/Rp593aB+//97Ov//8PV2DD+Iei2z3kxc9S6jFXPdYPHMCHmvTlvbZDqClV2sdtfbxffbzr7/dcZGDg4MO1GxyWCNr68MAvQb3hJdBuecye8Q1fWw0Bvb2dqdDiDY5rsEWZQ46eUA7MjYwHm21kms5aKugZ7EXKps4PDwkPANyFFgH9GHj6vjax8dHHT55QF0mhg0TB9HXhok9BnovJrMptg898AFa5vxgRD9ru5PGsq5fYzTg2shlU/jGWYMPA3QQNfRlkE4Am81bTKw2DLQc250uzf4wCALkZc5D0rd418DmwZw+ctFhNGz4MVHcDcY7tnw3yMVmb3SyHrWhwNw8fiw2+znGfviR2Yuf0ugCLeawHzE0gI2GvQrSCWADCoABm8MUEfWs5SGhg/Pzi8mtbh5Kjg929NkLn7tJmFcY9lrY5mSbW+Zhr5gXbXJXQbobpBE24acuDNSwQbyosdn8oVgbycMZGlGPjO1+XIcBoWGD6KObi018VUxPgM3Abs7Fsj80gc9FZWwahV2HrWYee6HrY5cwp2Ty4t7a5hFfFulmqCyKjbnBifoH77y9oy970+PFbVomToz9Si6bcE/ytGXXx1jU0JdFOgEWCgMvjM3GDAMW6vowA4qMLdgPRJ8GAFoZQxMxZr4cY+Y/lNMAWBSbWmQbk8u1NR8NlAUv8mMMm6Zh9gHRxp+HMX06ABPL39o8u+e3vWxejWtDQauBU4UuYy9CzIt2rY6HaC8NoFw8vFeHT/kyp2X/HgO4nfzM3Z1812duudla7aMDYJG/AWS054KZ5wG8/8vG+LA5OztLzwNhciLK/Nb8dAK8MZlX/Fh83roW9DQAC6VRgC9jCzSg/xx4OoDYWM2OGo2XPlqLmD4So3hvL2Wb1JfJBcaxW0U6AWVjNKNWMjEbN4bWKtIAKN5m5KhlOz/QMC4TaxnhmWBu0Gbid762TE608VtFOgFlM9GPNk3iP5dXn37SAA7+/3vg3NxwEvBJAuZgA/wYR2sRk7dAbpiGYgPRjzY5Nl7qxFpDOgFl0bGxmh21cu2m/Ydev3/3rTd23nz9tQRsEH1tOcbRHnrBp5ZfPQFPrch11rMdwDqn28Le2xPQwqu0zhq3J2Cd021h7+0JaOFVWmeN2xOwzum2sPf2BLTwKq2zxu0JWOd0X8Xeq17jPwAAAP//d795sQAAAAZJREFUAwAHTiO9WshLTQAAAABJRU5ErkJggg=="},{"name":"texture","path":"","folder":"block","namespace":"","id":"2","group":"","scope":0,"width":64,"height":64,"uv_width":64,"uv_height":64,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","file_format":"png","render_mode":"default","render_sides":"auto","wrap_mode":"limited","pbr_channel":"color","fps":7,"frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":false,"uuid":"dc97d706-51c0-c952-e44f-db7c58654e69","source":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAGRUlEQVR4AeyaPXMbVRSG1yqw7BSxTGfo/DPSpEiBCxggNLhIYToGqBhKfkBaPirIDCnooE1DQcO/gKEBOmyniC3TmH3u5pGOb1ZaaVeJLY0Y3rznvOfcu/e9e/WxSnpFw38/P/nlEjz59bfLCDTw9fePL6ehYfoXyvlcLzQsWGjcgK2trXTJ8/PzxPxhbA1tWdG4ARjTKMZB1IiXGTNtgAaHw/MCmK8Cz7wB0XiMu25C02s+r+d51+vPtAEe+3ixOi3W54m3t7entjfVpw5uKDZugEb7/erNkPmMraEtAhgFzCUTCzRgvghu3AAvwhvhYLBbAGL1RXE0VhdHjWvmOVob9Pgsj5/vMabGpHWG1fb29or9/f1aUGOOOGeMqUUj/f4mlytka+Zyair/sF6Grf9PJ4CjLJyJPMZNed5rP2+YJyfHBXkEGjXG5caiZk2mpvGoobdBj0UIJnCRxOoweZvacHjB0PTxyTwC0RqxZuSoVXH1HmRdptYF5QZUC2SSq4urvvm5SGr0AOO8hg7oAeP6RbkB8TrjXCO+sTIOxNxYzuvkbZFeAiwUOEk0gfb7H38W4PT0tDgtQQyoiTiGuYA1GQ2Yy9HY4Xtvb5jHOPa6adTV23Lv7OxsNJbFAQVi6m++sVeAv/7+pwDEgBo9sT/m1IU9sjomtsvnjfcP7o2M00Nex2iOIe6KdAJcjJNhAphTx7g5MZo5vcCcGjCHySPQcuSmrauTx5i8K9IGOEnTArnrwP7ITWNjbx6/dffORq7V5dH8rGPyefK898lHDzYibNCQ+e5gp0A7+vCDjS8//2w0hhzEOeaJnf+6+MoJuK5FXOd11xtwnbt/E67dq3u+9qtm3QLz/qb8q0ePv5gFj378aaa+fK66Nc6j9TSbs5OokxtP4rqeW/1byEXOiGrEwLyJYy9xF/T4VqWh3d3B6EmMSdVle2HqgJq5MUwtor/1WtoEGD03iUbt9cGA8EovAv3UYfIYk7dFehPUgJOYR85NkVtnHDkM0AFa3UIxgZ56y42JTAys22tODQ1eBMoTMH7K4js4YGIWD2MEDTaHd3Z2ytOyVWKzxHgOahGb5dfc27u3k6QJGB2moCE0oE5MPSLWjGN93vj5CcBIZYIJMByZBx2+6qILtNjDBlFDA8RoxBfl3ylgRgzP/yvQqKFFNlbHpLE1NGO4C8rHYR97K+Zpjwm5wzBGYKDpKuaRthpDHvtijFEM0wPIYaAxT8jT46fIo82p66XBccRdUW7A2IgGIxNz970QG4RWl6PbS2wPjBkNkrMpaIC8jumJNfLYF+ejrw3SS+D4+CT9YMHi+b4PY6Dii/I1Xv1WR85FZMbl/dTZJGr0/XtyglSweAKZY0wMMAU/Gz5LfcRxHLFmqcV+5uyCtAG+4TER8fj4V8bRfT3HmF5zjj3j6IP9SPUNDsP0grqYl4G99BjTy0cjdWKYlwAxfV1x5QcR7qYTcveMYQzCwNrV/vH7AaeHPk4Bd5WYOwcDDMAi1uynRszdJ+auwyDG5F2QTgATaAbWAEarfPw+QR77iTEKO45YjRgjkTGAaXSYGho5sUwM3ARi+uCokU9Ck55+D9CUzRjnGT/q/AxlLvvc7zhNy9Q/PXrwkLqm4HKupKkfHd5/6EagAfoYC8g1LKNZI26LdAJYKBPAIBpEZzNgQY+xXJpKv+rI6nK+WExTU88Nq9MjyrnTxsnqXThtABNEU9Nia3I+ti7XDAzoAbPE9IHYW5ejtcFoA9oMzsdM25S8d548mo/xPHNM6l3oBky6yE3W1xtwk+/Oq1hb75vvfvi4C17FIl/mNdJLwK+0ky7UVJ80bhn0tAEuFKOAXCYWaMB8FXi0AdFYXRw1jOc52jJi9Kswi9/crp7+ZE2ay/QC68TLinQCcmOYUcuZmsatoS0r0gaweM3IUUvxZvVv+azL1JYZPY0cvvvOt9HI5nPDaMaxBy3m9C0jepjATFw8mjm1+wf3RptDzqZFzd6bwPOuIb0E+CcqDMQ4BokBOQw0LKOtAtIGHNy9M7rDGpTrTMaNqasvk5Y2YNqCp23EtHHLUmvcgGUx0nad6w1ou3OrMm59AlblTrb1sT4BbXduVcatT8Cq3Mm2PtYnoO3Orcq49QlY9jvZdf3/AwAA///Om3eiAAAABklEQVQDAMlSu71g/oh+AAAAAElFTkSuQmCC"},{"name":"texture","path":"","folder":"block","namespace":"","id":"3","group":"","scope":0,"width":64,"height":64,"uv_width":64,"uv_height":64,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","file_format":"png","render_mode":"default","render_sides":"auto","wrap_mode":"limited","pbr_channel":"color","fps":7,"frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":false,"uuid":"0e01244f-6dac-d4ac-6382-73457834df4f","source":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAGN0lEQVR4AeyavXIcRRSFRxuglRxYEpkg02M4ceAABVCASVDgQGQUpDyEU34icBUOyCB1QkDCW0CRABmSHFhakYj5evztXrVnd3ZnFkuztRTH595zb/f06en9mbUHRcN/Pz37+Qo8++XXqwg08NV3T69moWH6V8r5XK80LFlo3ICtra10yYuLi8T8YWwNra9o3ACMaRTjIGrEfcZcG6DB0eiiAOarwHNvQDQe466b0PSaz+t53vX6c22Axz5erE6L9UXi7e3tme1N9ZmDG4qNG6DR4bB6M2Q+Y2toywBGAXPJxAINmC+DGzfAi/BGuLu7VwBi9WVxNFYXR41r5jlaGwz4LI+f7zGmxqR1htX29/eLg4ODWlBjjjhnjKlFI8PhJpcrZGvmcmoq/7Behq3/TyeAoyyciTzGTXneaz9vmKenJwV5BBo1xuXGomZNpqbxqKG3wYBFCCZwkcTqMHmb2mh0ydD08ck8AtEasWbkqFVx9R5kXabWBeUGVAtkkuuLq775uUhq9ADjvIYO6AGT+mW5AfE6k1wjvrEyDsTcWM7r5G2RXgIsFDhJNIH22+9/FODs7Kw4K0EMqIk4hrmANRkNmMvR2NEH726Yxzj2umnU1dvy4Pz8fDyWxQEFYupvv7VfAHViQI0edWJgTl2oyeqY2C6fNz48fDA2Tg95HaM5hrgr0glwMU6GCWAu//nX3wUwl+kF5vl86GoyWo7ctHV18hiTd0XaACdxcbBaZO46iJoxY4TavPzO/Xsb8/RG8/OOyefN88FnnzzaiLAhmjGGjz/+aEMwLsbki8Lr3RRfOwE3tYibvO56A25y92/DtQd1z9d+1axbYN7flH/55OkX8+DJDz/O1ZfPVbfGRbSBZnN2EnVy42lc13NneAe5yBlRjRiYN3HsJe6CAd+qNLS3tzt+EmNSddlemDqgZm4MU4sYbr2RNgFGz02iUXtzd5fwWi8C/dRh8hiTt0V6E9SAk5hHzk2RW2ccOQzQAVrdQjGBnnrLjYlMDKzba04NDV4GyhMwecriOzhgYhYPYwQNNod3dnbK07JVYrPEZA5qEZvl19y7e3eTpAkYHaagITSgTkw9ItaMY33R+OUJwEhlggkwHJkHHb7qogu02MMGUUMDxGjEl+XfKWBGjC7+LdCooUU2VseksTU0Y7gLysdhH3sr5mmPCbnDMEZgoOkq5pG2GkMe+2KMUQzTA8hhoDFPyPOT58jjzanrpcFxxF1RbsDEiAYjE3P3vRAbhFaXo9tLbA+MGQ2SsylogLyO6Yk18tgX56OvDdJL4OTkNP1gweL5vg9joOLL8jVe/VZHzkVkxuX91NkkavT9c3qKVLB4ApljTAwwBb8YvUh9xHEcsWapxX7m7IK0Ab7hMRHx5PhXxtF9PceYXnOOPePog/1I9Q0Ow/SCupiXgb30GNPLRyN1YpiXADF9XXHtBxHuphNy94xhDMLA2vX+yfsBp4c+TgF3lZg7BwMMwCLW7KdGzN0n5q7DIMbkXZBOABNoBtYARqt88j5BHvuJMQo7jliNGCORMYBpdJgaGjmxTAzcBGL64KiRT0OTnn4P0JTNGOc5P+r8DGUu++zvOE3L1D8/fvSYuqbgcq6kqR8fPXzsRqAB+hgLyDUso1kjbot0AlgoE8AgGkRnM2BBj7Fcmkq/6sjqcr5YTFNTzw2r0yPKudPGyepdOG0AE0RTs2Jrcj62LtcMDOgB88T0gdhbl6O1wXgD2gzOx8zalLx3kTyaj/Eic0zrXeoGTLvIbdbXG3Cb787rWNvg62+//7QLXsci/89rpJeAX2mnXaipPm1cH/S0AS4Uo4BcJhZowHwVeLwB0VhdHDWM5zlaHzH+VZjFb25XT3+yJs1leoF14r4inYDcGGbUcqamcWtofUXaABavGTlqKd6s/i2fdZlanzHQyNH7730TjWy+NIxmHHvQYk5fHzHABGbi4tHMqT08fDDeHHI2LWr23gZedA3pJcA/UWEgxjFIDMhhoGEZbRWQNuDw/r3xHdagXGcybkxdvU9a2oBZC561EbPG9aXWuAF9MdJ2nesNaLtzqzJufQJW5U629bE+AW13blXGrU/AqtzJtj7WJ6Dtzq3KuPUJ6Pud7Lr+/wAAAP//wBAoZgAAAAZJREFUAwApO7W9bwQUZwAAAABJRU5ErkJggg=="},{"name":"texture","path":"","folder":"block","namespace":"","id":"4","group":"","scope":0,"width":64,"height":64,"uv_width":64,"uv_height":64,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","file_format":"png","render_mode":"default","render_sides":"auto","wrap_mode":"limited","pbr_channel":"color","fps":7,"frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":false,"uuid":"1d665ce5-110d-f488-c9ca-ef8ebcc63d87","source":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAG40lEQVR4AeyaPXPcVBSGZRX4I0Vs0xk68y/SpEiBCxggNLhIYToGqBhKCsoMFV8VeIYU0ABtGgoa/gUMDdBhO0XsNY3Rc5Vn9+y1Vlrv7kwiZzN5857znnOP7jmSdi3FZdHx5+eHv1yAh7/+dhGBBr789sFFGzrKXwrntS4lLFjoHMD6+no65NnZWWL+0TaG1ld0DqCpWRs31tfm2XfnAJqatXFjFOorOgdAYzZK4yBq2POg657P47k/z7FZO9UASASDwVkBsBeJjY2N1nJd8dbFHcGpBxAbj3ZH/SuFaRSwSMYWaEB/ETzVALzs4wGbtBi/qh0ba7KjRu3cR5sFJd/l8fs92sRsdG2t/jrkINrG0CaBGrFmtInFRtbWVlMZ2Zi+nJKqf4xX5sx/0xVAI8JK+NowH4RbW9sFwEabBtwux8dHBfUi0IhRI28sasZkYjYeNfRZkAZAQ8Ii+E12ru3s7BS7u7uNIMbV4tCoKdCIWc9mZPRxu74C1WTy5kEaQDwzFkOLdpef55rPWeZs40egEbOROAxqRV9bzuP4s6JkE4IibhJbHcafJTYYnLM0fX1SRyAai43tv/nain60yQfEHBpxtHlQDaDeIEXGN1f/7O8miZEDtPMYOiAHjOLn1QDicUY+TWxUzxtv7d0ZNs5a/CZGcw32vEi3ABsFFotNoP3+x58FODk5KU4qYANiIq6hFjAmowH9nPOmjavjRxt/XpSnp6fDGmwOKGATf/mlnQKoYwNi5KhjA33iQk2O+qu3b62ot3Fsfto1eb3cT1dA3AwJNAGwAfG//v6niEAjBsgF2IAYwBb4EepPm9MA3ETbBre3NosI18hta815Frl8/917K02wITdNzivV9z0ccfDO2ysgalexrX/4w48XET71ffrZ5xcR6jEX2zpX5bEroGvxou67puPkA485fN6AqGm3rTOnjScOID+LbUUWGcsb4rZD4yr75KMPh1crPnCfs+5h4gBmLdi3dcsB9O2MLXq/pZ+qXxw++HgaHH7/01R5ea184x5XJu5jLnYO86Zlj5/Xyf3Sg95Yu5FiOSOqYQP9Lo652BEeN2dz1PG1J3FTjnsj1oZLnwFr6y8ULIZZiB0Zm9iLW1uYY7kI5BOH8aONL3iis6Ht7a0C35i6TAwbjjn6xmDj03JJERY2bZQm0CmWMxpQN1efGBo8CRw7xvQjs7eYg28cHR8G6ACNfXQdnzXDK2C1eiS9uX0TrWAxBowO41sQDahjE4+IMe2x+JN3jGy4fsav3/iwefJG+vh7ws3NzaLOX01sLhzBnuwn6rldXQHrVaH6IOfV//+xUAzO/ivQWIQWWVudJrWNoWnDOepG6saJ4UfmEZuHLHSBFnMcFBqo80b9oLVheAXQKA2bjK9tY0700dGjFDJHRjQ3t/EjbETmPQNxzjBMIzAwp7Z5mVK/rMGPedFmT7EfcptQvREaFSOBhTaITxE0gN/E5MQYfsyL9cgDnFkba2I0csgFDAgNG0Qf3Vxs4qKLy6Oj4/S66t/j45TL5jFkLmNsQFPw48HjAgZxHbbNEov51Mzhsdk8P+/DNFDz+fDWxGetzLo8nzhDIUYee0HrQulXkB9wNOyiJpvbwFzytMnlq5E4NsztgE1eE/zAI4Y9uvzrexidexwG2uTqc9mzjhic90NeG9JnAFPjrJLImYMBDcAixswnhu3EOetoINr4EZxB/Whz9tRhGoSBsfH80S3M1UNe7Ae/DekWMIFGsGUaoGl8mBgaPraMDRwCNnlw1PBz2AxsAzRa+6MPPHzWytg0CrsOWw073x9ajnQF8Ez9wcG9+wRdBFevn5OmfrB/976DQAPksRbg27CMZgxbcMzYDDqN84wf9WoPK/oyawFrgE3LxJqOSW6ONIAo5gtpmrh63rA6OaLadBqcrJ4zG0WDQWwQnWHAghxtuTpGeqMsq0/LYwOwGRhYZBq7KRctrsXPEZtqs43J1Il2k991bNakl6IYi0A8YLQXUbutRhxEtNvWGBu7AhSfJ14O4Hk62029ll99891786CpaJ+0dAv4o+WkjXfFJ63rg54G4EZpFODL2AIN6F8HHg4gNtZkR43Gcx+tjxi+FWbzqxv1U5hsk/oyucA49rOCq+4jXQF5YxRRy5mYjRtD6yvSANi8zchRS/Zq/fu8xmVifUZpI/tvvP51bGT1ScNo2jEHLfrk9RElTdBM3DyaPrG7e3eGw8FnaFEzt4+cbgF+TY3N0zgNYgN8GNiwjHYdkAawd/vW8AzboNzUZBxMU7xPWhpA24bbBtG2ri+xzgH0pZFZ97kcwKyTuy7rllfAdTmTs/axvAJmndx1Wbe8Avp+Jufd//8AAAD//2e4m3wAAAAGSURBVAMA8+puzO9oT+MAAAAASUVORK5CYII="},{"name":"texture","path":"","folder":"block","namespace":"","id":"5","group":"","scope":0,"width":64,"height":64,"uv_width":64,"uv_height":64,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","file_format":"png","render_mode":"default","render_sides":"auto","wrap_mode":"limited","pbr_channel":"color","fps":7,"frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":false,"uuid":"80e62caa-39cf-3e2c-017d-3cdff5834ad0","source":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAG+UlEQVR4AezaP5McVxUF8NkJtH8UWLtkgkwfw4kDByiAAkyCAlMlZxROKT4C5SIzpooq7Co7cAYEBE4ISPgWUCS2M8tSYO3Kybp/r3V2r1o907MzKmtGtS6dPeeee9/rd1+/mfH07nw28d/fP/vXOXz27/+cV/DgTx9+cr4ME9M/lx7O9VzBCzYmN+Dw8LBd8vT0tLEf0cnxdhWTGzDWbBpPblebt+7JDRhrNo0nZ6JdxeQGaCyNahyqR2+Cqdf8MD+MN7m2sSttgEI4OzudAf0icXR0tHS6qfzSwRPJlTegNl71xPxXSmsUDArTAQ8SvwheaQNy7OsFx7yav6qujY3p6pl7GPPWwdxnOeQznq5IowcH/cehi0TL3b59e3ZyctxA37lzZwY031yZe8hytZGDg33Tz8LJJQ63ou5H8p1c+9/cGxxkBhoSh3nHxyczoONjGzL01fDkbRSuqN6wMXXxhiyXxpPjrYt5XUidRAOJqx7zxvLq6tyLtDpIM+Hq9bo/gcmH5TZBew+wuCCTiaueioe1qfeGCfI8oHmQRpwiflDj6LCaqsXrYm4RgUksEOj4WMwHmheI+UDH7/kJq3189vHlR+nZWZ+rzdz7+U/2ElfdJul+yGXT5Dtro3/dBvSLMEsWGN1zn5cTQ3QauIwvm+vrMvZJtwG9jp+xmjjqvm/84u6bF42rEY8xL2PoTdFeAhYDmSwNJf7v//4/g4cPH84edqAheVzHmAv4FTyoXtXDppOLL65avCnmjx8/vpjD4iAGLf+jH96eQXwa5NTEpyGxfBAvXP0fv/H6XvxlXJtfdcxwvmHcTkBdjAJNAA3yn3/x5ayCJwdqgQY5oANxRfyXzW0DsohlCzw5vjWryJjwsrGp2Uae//adt/fGkIYWLTpj7v/ql3uQ+Kq8aP7vy3/mBHxfF92m61xvwDbdjZexlusT8DJ2fZuuOR8+Y0tskfnaSQ+RunX5/Y8++d0q+OjTv61U99xcH378+/c7DNc9jNtLQKMgOWQexK863iJeVnvz4Kb0bMjMeDQknuJaSx8d9tegF2GexfuGFe1JjjiD4oflaFxrxNWPxqkb8sHhjbYJWG7YJE/uB8fH5DO1DPXyWFy1eApziwaFYRoSVx42I07emIAfLQ+8C37aeGqwJjRAD5kH8VObWI6Hwd0/PLhBLkW3AXnSEt7vnskdNhhp0djC63dxMf/WrVutVpw8luPhMex3X4FfO3mtpdIE5mOJNMSD+LR8Rc1F1/wi3T0POG0NKLBwoCE67CuvLz3igDdWq3k1ckDHw7wn3e8bNROcnX4748nxKkfH12R0crzoVe6+2vYmqAlghH3vF7vDWAMYUtNrDzsuf3HKg1pftRxoVMM0iDGksZyQRw8esS82Z6xWQcbRp2ffokm0DUhVGhtjnrufWhvEG8bVl88YWm2YBs2kQbFN4YF4jNXUnLjWZb4bNw9n6pahewn0j6os9MGDr1st7dsgtuCen3Qvlf65vVhh2LjUhzNOnU1Roz781ddPr9UdezWawI4xDZrC35x9M8NQx9FpVq7Wm+vRV/3JoRfhmRPgDc8iFdOXx79vnJ/Xb9Vqa6zGsTeexvloDecNTsPGwpj2Mkitmmi1PhrlaewlQKvzHgD0MrQN0LQ7l8Kq5eJjjWFIrtbzwQnAEO3ui7G7SrtzGDSAg5pLvRzt7tPuOoaqk+cvQ9uAWpBmcBau0T6+fMMTGxemNVY546uXGp5GKmtA03wsxxPTYRpqk+qGXs3LjWHuaY6EJzm1GZ7G5avvkXTisLFgTJhOs+Hk8Lv3335PTZrC3dzNi3//3lvvZSN4oM5YEKfJMC85egrtBGhSoYWF6dogP3U0qMFj6JppT3rDYzW84WI1Xf1hw8N6td012saFee++8+s/4Cm0DahFtallOrmwOaLDPBjGPEgzGHiwilYHtXYYr7IJz22ASdbBHz/4yzl8+o9/noM5auPRYflNUZuv+irzvrANuMpFt6l24w3wRw7gDyLAxyTwPCzZpmbH1rLxBoxNukve/IO/fvybTbCsWSdiWX4bcu0E5H9lFy1oKr9o3C74bQOyUI2COEwHPEiM/cYWus/gPaAr1GwzLjagNjamq6ehYczbRVw8FLX4/aP+W184TSYOq4Xk6W3BVdfRTsCwMZPEG7JcGk+Ot6toG2DxaSZcvab3+7/nTT4st8uYp5F7P/vpn2sj+08b5kXXGl6N1e0i5prQTF08L7HcW3ffvNgcsU2rXmp3kdtLwJ+pWbzGNUiDGEMaDvNeBbQNuPvG6xd3OA2Gx5qsGzOW3yWvbcCyBS/biGXjdiU3uQG70si667zegHV37lUZd30CXpU7uW4f1ydg3Z17VcZdn4Bdv5Obrv87AAAA//+P5VwYAAAABklEQVQDADMjRsxaBqKAAAAAAElFTkSuQmCC"},{"name":"texture","path":"","folder":"block","namespace":"","id":"7","group":"","scope":0,"width":64,"height":64,"uv_width":64,"uv_height":64,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","file_format":"png","render_mode":"default","render_sides":"auto","wrap_mode":"limited","pbr_channel":"color","fps":7,"frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":false,"uuid":"a0d2aa46-11ab-d524-e730-523aedfb2948","source":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAGGUlEQVR4AeyYwW4bVRSGx1OVkuCUljSJ1AURlQoqSLBhxRPwCqxhxQPwEF2wQWLFPptu2PIArJCQkKhUkJBggdSGiAKhoUTF+LvRNzq5nXjsGbfxWK765z/nP+feuf+ZsRO7LBr+ffD4yQh8OBqNItDAez/8NJqEhu2fKud7PdUwZ6FxAOsvnLQ8+ve/6tLG1qpCD4MTdw0H1yjGAe1qxH3GVAPQ4PGj3wpgvgw89QCi8Rh3HULTaz6v53nX6081AB/7eLE6LdZniYfD4cT2pvrExQ3FxgFo9OL6tWorY2tVoWOAUcA2MrFAA+bz4MYBeBHe9F6+sl0AYvV5cTRWF0eNa+Y5WhuU/C6Pv99jTI1N6wyr7e7uFrduvlYLauwR94wxtWjk8tqIyxWyNXM5NY1/WB+Hrf+nJ4BHWbgTeYyb8rzXft4w/3j4oCCPQKPGutxY1KzJ1DQeNfQ2KDmEYAMPSawOk7ep/Xk0YGn69ck+AtEasWbkqBH7vmNdptYFZTxEPBwxG1s3RzPOa+iAHmAdBmiAGBBrRINoIObGcl4nb4v0EuAwwE2iCbRPL28X4ODgoADEgJqIa9gLWJPRgLkcjd25ujMwj3HsdWjU1dtyeXh4WK3lcECBmPpH9/cLoE4MqNGjTgzMqQs1WR0T18afN/YuXaiM00Nex2iuIe6K9AR4GDfDBDCXv9jZKoC5TC8wz/dDV5PRcuSmrauTx5i8K9IA3MTDwWqRuesgasasEWrT8meDwck7ZcOCaH7aNfmWeV5+/fqNQYQN0Ywx/NX17YFgXYzJZ4XXOy8+9QSc1yHO87qrAZzn9Bfh2mXd52v/1Kw7YN7flL/1891PpsG7959M1ZfvVXfGWbRSszm7iTq58Vlc17P24hvIRc6IasTAvIljL3EXlPxVpaHrWy9Vn8TYVF22F6YOqJkbw9Qibl48SkOA0XOTaNTe3niV8FQvAv3UYfIYk7dFehPUgJuYR85NkVtnHTkM0AFa3UExgU5vzmhA3V5zamjwPFD6dzcHJgZszOFhddgc3tzcLOhFh9GI4YiHV4tia/soSZqA0WEKGkID6sTUI2LNONZnjdMTgAHgYmOZDzr8qUsu0OgnhzFvTE6MRnzl96LAjPjxeK1Ao4YW2Vgdk8bW0IzhLkjfB7CBhvi0R84dhjECA3uIGUjMY1+MMYph1gByGGjMJ2T/wRpyNZy6XhpcR9wV6fsAjdQxGma9EANCq8vR7SW2B8aMBskZChogr2N6Yo089sX96GuD9BL4df/vgoMD/t6HMQADH2ViLiKzLu+nzpCo0ffdX78gFRyeQOYxJgaYgo/+uZf6iOM6Ys1Si/3s2QVpAL7hsRGxj7/G0etieq3x2LOOPthfqb7BYZheUBfzMrCXHmN6+dVInRjmJUBMX1ec+kKEu+mG3D1jGIMwsBb7eWKoAWOeAu4qGncOBhiARazZT42Yu0/MXYdBjMm7ID0BbKAZWAMYJYfVyGM/MUZhe4jViDESGQOYRoepoZETy8TAIRDTB0eN/Cw06en7AE3ZjGE+50edr6HMZT/7u07TMvXvd9+8TV1T8N4rw6Spf7Nz4baDQAP0sRaQa1hGs0bcFukJ4KBsAINoEJ1hwIIeY5kBEcvEEflhMU1dPTesTo9wcLJ6F04DYINoalJsTc7X1uWagQE9YJqYPhB763K0NqgG0GZxvmbSUPLeWfJoPsaz7HFW71wHcNZFFllfDWCR787zOFv5/t1vP+6C53HIZ3mN9BLYvHRr4jWa6hMXL3gxDcAzYhSQy8QCDZgvA1cDiMbq4qhhPM/R+ogyGnm8fS95kK2Zy6lp/MP6OOzt//QE5MZwo5YzNY1bQ+sr0gA4vGbkqBEfD29AhXU5iT3+UWrkzsY7n0cfGkYzjj1oMaevjygxgZl4eDRzal8ONqrhkDO0qNm7CDzrGdJLYL0YpnUYx2BKxj/Ix5T+a1hO4hL8SAPYGwyqO6xBuc5jHExdvU9aGsCkA08axKR1fak1DqAvRtqeczWAtpNblnWrJ2BZ7mRbH6snoO3klmXd6glYljvZ1sfqCWg7uWVZt3oC+n4nu57/fwAAAP//F31WMgAAAAZJREFUAwBMbM297enYnQAAAABJRU5ErkJggg=="}]} \ No newline at end of file diff --git a/Mobs/real_ghost/build.gradle b/Mobs/real_ghost/build.gradle new file mode 100644 index 0000000..27df303 --- /dev/null +++ b/Mobs/real_ghost/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "real_ghost" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Mobs/real_ghost/gradle.properties b/Mobs/real_ghost/gradle.properties new file mode 100644 index 0000000..7c3dfdc --- /dev/null +++ b/Mobs/real_ghost/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=real_ghost + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Mobs/real_ghost/gradle/wrapper/gradle-wrapper.jar b/Mobs/real_ghost/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Mobs/real_ghost/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Mobs/real_ghost/gradle/wrapper/gradle-wrapper.properties b/Mobs/real_ghost/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Mobs/real_ghost/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Mobs/real_ghost/gradlew b/Mobs/real_ghost/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Mobs/real_ghost/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Mobs/real_ghost/gradlew.bat b/Mobs/real_ghost/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Mobs/real_ghost/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Mobs/real_ghost/settings.gradle b/Mobs/real_ghost/settings.gradle new file mode 100644 index 0000000..820a73a --- /dev/null +++ b/Mobs/real_ghost/settings.gradle @@ -0,0 +1,11 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + gradlePluginPortal() + } +} + +rootProject.name = "real_ghost" diff --git a/Mobs/real_ghost/src/client/java/fr/koka99cab/real_ghost/client/RealGhostClient.java b/Mobs/real_ghost/src/client/java/fr/koka99cab/real_ghost/client/RealGhostClient.java new file mode 100644 index 0000000..b2e3dfb --- /dev/null +++ b/Mobs/real_ghost/src/client/java/fr/koka99cab/real_ghost/client/RealGhostClient.java @@ -0,0 +1,16 @@ +package fr.koka99cab.real_ghost.client; + +import fr.koka99cab.real_ghost.client.model.GhostModel; +import fr.koka99cab.real_ghost.client.renderer.GhostRenderer; +import fr.koka99cab.real_ghost.registry.ModEntityTypes; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.rendering.v1.EntityRendererRegistry; +import net.fabricmc.fabric.api.client.rendering.v1.ModelLayerRegistry; + +public final class RealGhostClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + ModelLayerRegistry.registerModelLayer(GhostModel.LAYER_LOCATION, GhostModel::createBodyLayer); + EntityRendererRegistry.register(ModEntityTypes.GHOST, GhostRenderer::new); + } +} diff --git a/Mobs/real_ghost/src/client/java/fr/koka99cab/real_ghost/client/model/GhostModel.java b/Mobs/real_ghost/src/client/java/fr/koka99cab/real_ghost/client/model/GhostModel.java new file mode 100644 index 0000000..be3764b --- /dev/null +++ b/Mobs/real_ghost/src/client/java/fr/koka99cab/real_ghost/client/model/GhostModel.java @@ -0,0 +1,191 @@ +package fr.koka99cab.real_ghost.client.model; + +import fr.koka99cab.real_ghost.RealGhostMod; +import fr.koka99cab.real_ghost.client.renderer.GhostRenderState; +import fr.koka99cab.real_ghost.entity.GhostVariant; +import java.util.EnumMap; +import java.util.Map; +import net.minecraft.client.model.EntityModel; +import net.minecraft.client.model.geom.ModelLayerLocation; +import net.minecraft.client.model.geom.ModelPart; +import net.minecraft.client.model.geom.PartPose; +import net.minecraft.client.model.geom.builders.CubeListBuilder; +import net.minecraft.client.model.geom.builders.LayerDefinition; +import net.minecraft.client.model.geom.builders.MeshDefinition; +import net.minecraft.client.model.geom.builders.PartDefinition; +import net.minecraft.client.renderer.rendertype.RenderTypes; +import net.minecraft.util.Mth; + +public final class GhostModel extends EntityModel { + public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(RealGhostMod.id("ghost"), "main"); + private static final float DEG_TO_RAD = (float)(Math.PI / 180.0D); + + private final Map variantRoots = new EnumMap<>(GhostVariant.class); + private final Map heads = new EnumMap<>(GhostVariant.class); + private final Map rightArms = new EnumMap<>(GhostVariant.class); + private final Map leftArms = new EnumMap<>(GhostVariant.class); + private final Map torsos = new EnumMap<>(GhostVariant.class); + + public GhostModel(ModelPart root) { + super(root, RenderTypes::entityCutout); + + for (GhostVariant variant : GhostVariant.values()) { + ModelPart variantRoot = root.getChild(variant.modelName()); + this.variantRoots.put(variant, variantRoot); + this.heads.put(variant, variantRoot.getChild("head")); + this.torsos.put(variant, variantRoot.getChild("torso")); + this.rightArms.put(variant, variantRoot.getChild("right_arm")); + this.leftArms.put(variant, variantRoot.getChild("left_arm")); + } + } + + public static LayerDefinition createBodyLayer() { + MeshDefinition mesh = new MeshDefinition(); + PartDefinition root = mesh.getRoot(); + + addVariant(root, GhostVariant.SPOOK, false, false); + addVariant(root, GhostVariant.WRAITH, false, false); + addVariant(root, GhostVariant.ILLAGER, true, false); + addVariant(root, GhostVariant.ECLIPSE, false, false); + + return LayerDefinition.create(mesh, 64, 64); + } + + @Override + public void setupAnim(GhostRenderState state) { + super.setupAnim(state); + + for (ModelPart root : this.variantRoots.values()) { + root.visible = false; + } + + ModelPart variantRoot = this.variantRoots.getOrDefault(state.variant, this.variantRoots.get(GhostVariant.SPOOK)); + ModelPart head = this.heads.getOrDefault(state.variant, this.heads.get(GhostVariant.SPOOK)); + ModelPart torso = this.torsos.getOrDefault(state.variant, this.torsos.get(GhostVariant.SPOOK)); + ModelPart rightArm = this.rightArms.getOrDefault(state.variant, this.rightArms.get(GhostVariant.SPOOK)); + ModelPart leftArm = this.leftArms.getOrDefault(state.variant, this.leftArms.get(GhostVariant.SPOOK)); + float bob = Mth.sin(state.ageInTicks * 0.16F) * 0.75F; + float sway = Mth.sin(state.ageInTicks * 0.09F) * 0.08F; + float armSway = Mth.sin(state.ageInTicks * 0.22F) * 0.18F; + + variantRoot.visible = true; + variantRoot.yRot = 0.0F; + variantRoot.y = bob - (state.isCharging ? 0.45F : 0.0F); + variantRoot.zRot = sway; + head.xRot = 15.0F * DEG_TO_RAD + (state.xRot * DEG_TO_RAD * 0.25F); + head.yRot = state.yRot * DEG_TO_RAD * 0.18F; + head.zRot = 2.5F * DEG_TO_RAD + sway * 0.5F; + torso.xRot = (state.isCharging ? 27.5F : 17.5F) * DEG_TO_RAD; + rightArm.xRot = (state.isCharging ? -98.0F : -72.0F) * DEG_TO_RAD + armSway; + leftArm.xRot = (state.isCharging ? -98.0F : -72.0F) * DEG_TO_RAD - armSway; + rightArm.zRot = -8.0F * DEG_TO_RAD - sway; + leftArm.zRot = 8.0F * DEG_TO_RAD - sway; + } + + private static void addVariant(PartDefinition root, GhostVariant variant, boolean illager, boolean leaner) { + String name = variant.modelName(); + PartDefinition ghost = root.addOrReplaceChild(name, CubeListBuilder.create(), PartPose.ZERO); + int headHeight = illager ? 10 : 8; + int torsoDepth = illager ? 6 : 4; + int firstTorsoU = firstTorsoU(variant); + int firstTorsoV = firstTorsoV(variant); + int secondTorsoU = secondTorsoU(variant); + int secondTorsoV = secondTorsoV(variant); + + PartDefinition head = ghost.addOrReplaceChild( + "head", + CubeListBuilder.create() + .texOffs(0, 0) + .addBox(-4.0F, -headHeight, -4.0F, 8.0F, headHeight, 8.0F), + PartPose.offsetAndRotation(0.0F, 0.0F, 0.0F, 15.0F * DEG_TO_RAD, 0.0F, 2.5F * DEG_TO_RAD) + ); + + if (illager) { + head.addOrReplaceChild( + "nose", + CubeListBuilder.create() + .texOffs(16, 39) + .addBox(-1.0F, -3.0F, -6.0F, 2.0F, 4.0F, 2.0F), + PartPose.ZERO + ); + } + + ghost.addOrReplaceChild( + "torso", + CubeListBuilder.create() + .texOffs(firstTorsoU, firstTorsoV) + .addBox(-4.0F, 0.0F, -torsoDepth / 2.0F, 8.0F, 15.0F, torsoDepth), + PartPose.offsetAndRotation(0.0F, 0.0F, 0.0F, (leaner ? 20.0F : 17.5F) * DEG_TO_RAD, 0.0F, 0.0F) + ).addOrReplaceChild( + "inner_torso", + CubeListBuilder.create() + .texOffs(secondTorsoU, secondTorsoV) + .addBox(-4.0F, 3.0F, -torsoDepth / 2.0F, 8.0F, 15.0F, torsoDepth), + PartPose.ZERO + ); + + PartDefinition rightArm = ghost.addOrReplaceChild( + "right_arm", + CubeListBuilder.create(), + PartPose.offsetAndRotation(5.1F, 2.0F, 0.0F, -72.0F * DEG_TO_RAD, -7.75F * DEG_TO_RAD, -8.0F * DEG_TO_RAD) + ); + rightArm.addOrReplaceChild( + "upper", + CubeListBuilder.create() + .texOffs(32, 0) + .addBox(-1.1F, -2.0F, -2.0F, 4.0F, 12.0F, 4.0F), + PartPose.ZERO + ); + rightArm.addOrReplaceChild( + "lower", + CubeListBuilder.create() + .texOffs(0, illager ? 39 : 35) + .addBox(-1.1F, 1.0F, -2.0F, 4.0F, 11.0F, 4.0F), + PartPose.ZERO + ); + + PartDefinition leftArm = ghost.addOrReplaceChild( + "left_arm", + CubeListBuilder.create(), + PartPose.offsetAndRotation(-5.0F, 2.0F, 0.0F, -75.0F * DEG_TO_RAD, 5.15F * DEG_TO_RAD, 8.0F * DEG_TO_RAD) + ); + leftArm.addOrReplaceChild( + "upper", + CubeListBuilder.create() + .texOffs(32, 0) + .addBox(-3.0F, -2.0F, -2.0F, 4.0F, 12.0F, 4.0F), + PartPose.ZERO + ); + leftArm.addOrReplaceChild( + "lower", + CubeListBuilder.create() + .texOffs(0, illager ? 39 : 35) + .addBox(-3.0F, 1.0F, -2.0F, 4.0F, 11.0F, 4.0F), + PartPose.ZERO + ); + } + + private static int firstTorsoU(GhostVariant variant) { + if (variant == GhostVariant.SPOOK) { + return 24; + } + + return 0; + } + + private static int firstTorsoV(GhostVariant variant) { + return variant == GhostVariant.ILLAGER ? 18 : 16; + } + + private static int secondTorsoU(GhostVariant variant) { + if (variant == GhostVariant.SPOOK) { + return 0; + } + + return variant == GhostVariant.ILLAGER ? 28 : 24; + } + + private static int secondTorsoV(GhostVariant variant) { + return variant == GhostVariant.ILLAGER ? 18 : 16; + } +} diff --git a/Mobs/real_ghost/src/client/java/fr/koka99cab/real_ghost/client/renderer/GhostRenderState.java b/Mobs/real_ghost/src/client/java/fr/koka99cab/real_ghost/client/renderer/GhostRenderState.java new file mode 100644 index 0000000..826da7a --- /dev/null +++ b/Mobs/real_ghost/src/client/java/fr/koka99cab/real_ghost/client/renderer/GhostRenderState.java @@ -0,0 +1,9 @@ +package fr.koka99cab.real_ghost.client.renderer; + +import fr.koka99cab.real_ghost.entity.GhostVariant; +import net.minecraft.client.renderer.entity.state.LivingEntityRenderState; + +public final class GhostRenderState extends LivingEntityRenderState { + public GhostVariant variant = GhostVariant.SPOOK; + public boolean isCharging; +} diff --git a/Mobs/real_ghost/src/client/java/fr/koka99cab/real_ghost/client/renderer/GhostRenderer.java b/Mobs/real_ghost/src/client/java/fr/koka99cab/real_ghost/client/renderer/GhostRenderer.java new file mode 100644 index 0000000..7cdd1fc --- /dev/null +++ b/Mobs/real_ghost/src/client/java/fr/koka99cab/real_ghost/client/renderer/GhostRenderer.java @@ -0,0 +1,51 @@ +package fr.koka99cab.real_ghost.client.renderer; + +import fr.koka99cab.real_ghost.RealGhostMod; +import fr.koka99cab.real_ghost.client.model.GhostModel; +import fr.koka99cab.real_ghost.entity.GhostEntity; +import fr.koka99cab.real_ghost.entity.GhostVariant; +import java.util.EnumMap; +import java.util.Map; +import net.minecraft.client.renderer.entity.EntityRendererProvider; +import net.minecraft.client.renderer.entity.MobRenderer; +import net.minecraft.resources.Identifier; + +public final class GhostRenderer extends MobRenderer { + private static final Map TEXTURES = createTextureMap(); + + public GhostRenderer(EntityRendererProvider.Context context) { + super(context, new GhostModel(context.bakeLayer(GhostModel.LAYER_LOCATION)), 0.0F); + } + + @Override + public Identifier getTextureLocation(GhostRenderState state) { + return TEXTURES.getOrDefault(state.variant, TEXTURES.get(GhostVariant.SPOOK)); + } + + @Override + public GhostRenderState createRenderState() { + return new GhostRenderState(); + } + + @Override + public void extractRenderState(GhostEntity ghost, GhostRenderState state, float partialTick) { + super.extractRenderState(ghost, state, partialTick); + state.variant = ghost.getVariant(); + state.isCharging = ghost.isCharging(); + } + + @Override + protected int getModelTint(GhostRenderState state) { + return 0xFFFFFFFF; + } + + private static Map createTextureMap() { + EnumMap textures = new EnumMap<>(GhostVariant.class); + + for (GhostVariant variant : GhostVariant.values()) { + textures.put(variant, RealGhostMod.id("textures/entity/ghost/" + variant.textureName() + ".png")); + } + + return textures; + } +} diff --git a/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/RealGhostMod.java b/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/RealGhostMod.java new file mode 100644 index 0000000..6ba1be5 --- /dev/null +++ b/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/RealGhostMod.java @@ -0,0 +1,35 @@ +package fr.koka99cab.real_ghost; + +import fr.koka99cab.real_ghost.registry.ModEntityTypes; +import fr.koka99cab.real_ghost.registry.ModItems; +import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerEntityEvents; +import net.minecraft.resources.Identifier; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.level.Level; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class RealGhostMod implements ModInitializer { + public static final String MOD_ID = "real_ghost"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + ModEntityTypes.register(); + ModItems.register(); + ServerEntityEvents.ENTITY_LOAD.register(RealGhostMod::removeVanillaPhantom); + LOGGER.info("Real Ghost is drifting into the night"); + } + + public static Identifier id(String path) { + return Identifier.fromNamespaceAndPath(MOD_ID, path); + } + + private static void removeVanillaPhantom(Entity entity, Level level) { + if (entity.getType() == EntityType.PHANTOM) { + entity.discard(); + } + } +} diff --git a/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/entity/GhostEntity.java b/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/entity/GhostEntity.java new file mode 100644 index 0000000..2a17014 --- /dev/null +++ b/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/entity/GhostEntity.java @@ -0,0 +1,385 @@ +package fr.koka99cab.real_ghost.entity; + +import net.minecraft.commands.arguments.EntityAnchorArgument.Anchor; +import net.minecraft.core.BlockPos; +import net.minecraft.core.particles.ParticleTypes; +import net.minecraft.network.syncher.EntityDataAccessor; +import net.minecraft.network.syncher.EntityDataSerializers; +import net.minecraft.network.syncher.SynchedEntityData; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.sounds.SoundSource; +import net.minecraft.util.Mth; +import net.minecraft.util.RandomSource; +import net.minecraft.world.DifficultyInstance; +import net.minecraft.world.damagesource.DamageSource; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntitySpawnReason; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.Mob; +import net.minecraft.world.entity.SpawnGroupData; +import net.minecraft.world.entity.ai.attributes.AttributeSupplier; +import net.minecraft.world.entity.ai.attributes.Attributes; +import net.minecraft.world.entity.monster.Monster; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.ServerLevelAccessor; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.storage.ValueInput; +import net.minecraft.world.level.storage.ValueOutput; +import net.minecraft.world.phys.Vec3; + +public final class GhostEntity extends Monster { + private static final EntityDataAccessor VARIANT = SynchedEntityData.defineId(GhostEntity.class, EntityDataSerializers.INT); + private static final EntityDataAccessor CHARGING = SynchedEntityData.defineId(GhostEntity.class, EntityDataSerializers.BOOLEAN); + private static final String VARIANT_KEY = "GhostVariant"; + private static final int HAUNT_TICKS = 20 * 5; + private static final int MAX_CHARGE_TICKS = 20 * 3; + private static final int TARGET_SCAN_INTERVAL = 20; + private static final double TARGET_RANGE = 26.0D; + private static final double HAUNT_RADIUS = 2.35D; + private static final double ATTACK_REACH = 1.35D; + private static final float ATTACK_DAMAGE = 5.0F; + private static final int SPAWN_ROLL_BOUND = 3; + private static final double MIN_LOOK_DISTANCE_SQR = 1.0E-4D; + private static final float TARGET_TURN_DEGREES = 30.0F; + private static final float WANDER_TURN_DEGREES = 12.0F; + private static final float MAX_LOOK_PITCH = 35.0F; + + private Vec3 wanderTarget; + private int hauntTicks; + private int chargeTicks; + private int nextWhisperTicks; + + public GhostEntity(EntityType entityType, Level level) { + super(entityType, level); + this.setNoGravity(true); + this.noPhysics = true; + this.xpReward = 3; + } + + public static AttributeSupplier.Builder createAttributes() { + return Monster.createMonsterAttributes() + .add(Attributes.MAX_HEALTH, 14.0D) + .add(Attributes.MOVEMENT_SPEED, 0.27D) + .add(Attributes.FOLLOW_RANGE, TARGET_RANGE) + .add(Attributes.ATTACK_DAMAGE, ATTACK_DAMAGE); + } + + public static boolean canSpawn(EntityType entityType, ServerLevelAccessor level, EntitySpawnReason spawnReason, BlockPos blockPos, RandomSource random) { + return level.getLevel().dimension() == Level.OVERWORLD + && isNight(level.getLevel()) + && random.nextInt(SPAWN_ROLL_BOUND) == 0 + && Monster.checkMonsterSpawnRules(entityType, level, spawnReason, blockPos, random); + } + + public static boolean isNight(Level level) { + long time = Math.floorMod(level.getDefaultClockTime(), 24000L); + return time >= 13000L && time <= 23000L; + } + + @Override + protected void defineSynchedData(SynchedEntityData.Builder builder) { + super.defineSynchedData(builder); + builder.define(VARIANT, GhostVariant.SPOOK.id()); + builder.define(CHARGING, false); + } + + @Override + public SpawnGroupData finalizeSpawn(ServerLevelAccessor level, DifficultyInstance difficulty, EntitySpawnReason spawnReason, SpawnGroupData spawnGroupData) { + SpawnGroupData finalizedSpawn = super.finalizeSpawn(level, difficulty, spawnReason, spawnGroupData); + this.setVariant(GhostVariant.choose(this.random)); + this.setCharging(false); + this.hauntTicks = this.random.nextInt(25); + this.nextWhisperTicks = 12 + this.random.nextInt(26); + return finalizedSpawn; + } + + @Override + protected void addAdditionalSaveData(ValueOutput output) { + super.addAdditionalSaveData(output); + output.putInt(VARIANT_KEY, this.getVariant().id()); + } + + @Override + protected void readAdditionalSaveData(ValueInput input) { + super.readAdditionalSaveData(input); + this.setVariant(GhostVariant.byId(input.getIntOr(VARIANT_KEY, GhostVariant.SPOOK.id()))); + this.setCharging(false); + this.setNoGravity(true); + this.noPhysics = true; + } + + @Override + protected void customServerAiStep(ServerLevel serverLevel) { + super.customServerAiStep(serverLevel); + this.setNoGravity(true); + this.noPhysics = true; + + if (this.tickCount > 20 && !isNight(serverLevel)) { + this.vanish(serverLevel); + return; + } + + LivingEntity target = this.getTarget(); + + if (target instanceof Player player && this.isValidHauntTarget(player)) { + if (this.isCharging()) { + this.tickCharge(serverLevel, player); + } else { + this.tickHaunt(serverLevel, player); + } + return; + } + + this.clearHaunt(); + + if (this.tickCount % TARGET_SCAN_INTERVAL == 0) { + ServerPlayer player = this.findTarget(serverLevel); + + if (player != null) { + this.setTarget(player); + this.hauntTicks = 0; + this.nextWhisperTicks = 6 + this.random.nextInt(18); + this.playSound(SoundEvents.PHANTOM_AMBIENT, 0.35F, 1.45F + this.random.nextFloat() * 0.25F); + return; + } + } + + this.tickWander(); + } + + @Override + public void tick() { + super.tick(); + this.setNoGravity(true); + this.noPhysics = true; + this.updateVisualRotation(); + } + + @Override + public boolean isPushable() { + return false; + } + + @Override + public boolean canBeCollidedWith(Entity entity) { + return false; + } + + @Override + protected void checkFallDamage(double fallDistance, boolean landed, BlockState state, BlockPos pos) { + } + + @Override + protected SoundEvent getAmbientSound() { + return this.isCharging() ? SoundEvents.VEX_CHARGE : SoundEvents.PHANTOM_AMBIENT; + } + + @Override + protected SoundEvent getHurtSound(DamageSource damageSource) { + return SoundEvents.VEX_HURT; + } + + @Override + protected SoundEvent getDeathSound() { + return SoundEvents.PHANTOM_DEATH; + } + + @Override + protected float getSoundVolume() { + return 0.45F; + } + + @Override + public float getVoicePitch() { + return 1.25F + this.random.nextFloat() * 0.35F; + } + + public GhostVariant getVariant() { + return GhostVariant.byId(this.entityData.get(VARIANT)); + } + + public void setVariant(GhostVariant variant) { + this.entityData.set(VARIANT, variant.id()); + } + + public boolean isCharging() { + return this.entityData.get(CHARGING); + } + + private void setCharging(boolean charging) { + this.entityData.set(CHARGING, charging); + this.setAggressive(charging); + } + + private void tickHaunt(ServerLevel serverLevel, Player target) { + this.hauntTicks++; + this.chargeTicks = 0; + + double angle = (this.tickCount * 0.18D) + (this.getId() * 0.45D); + double bob = Mth.sin(this.tickCount * 0.18D) * 0.35D; + Vec3 targetPos = target.position().add( + Mth.cos(angle) * HAUNT_RADIUS, + 1.25D + bob, + Mth.sin(angle) * HAUNT_RADIUS + ); + + this.moveToward(targetPos, 0.18D, 0.62D); + this.lookAt(Anchor.EYES, target.getEyePosition()); + this.whisperIfNeeded(serverLevel, target, angle); + + if (this.hauntTicks >= HAUNT_TICKS) { + this.setCharging(true); + this.chargeTicks = 0; + this.playSound(SoundEvents.PHANTOM_SWOOP, 0.8F, 1.15F); + } + } + + private void tickCharge(ServerLevel serverLevel, Player target) { + this.chargeTicks++; + Vec3 targetPos = target.getEyePosition().add(0.0D, -0.2D, 0.0D); + this.moveToward(targetPos, 0.38D, 1.35D); + this.lookAt(Anchor.EYES, targetPos); + + if (this.distanceToSqr(target) <= ATTACK_REACH * ATTACK_REACH) { + float damage = (float)this.getAttributeValue(Attributes.ATTACK_DAMAGE); + target.hurtServer(serverLevel, serverLevel.damageSources().mobAttack(this), damage); + serverLevel.playSound(null, target.getX(), target.getEyeY(), target.getZ(), SoundEvents.PHANTOM_BITE, SoundSource.HOSTILE, 0.9F, 0.85F); + this.vanish(serverLevel); + return; + } + + if (this.chargeTicks > MAX_CHARGE_TICKS) { + this.vanish(serverLevel); + } + } + + private void tickWander() { + if (this.wanderTarget == null || this.position().distanceToSqr(this.wanderTarget) < 1.0D || this.random.nextInt(90) == 0) { + this.wanderTarget = this.position().add( + (this.random.nextDouble() - 0.5D) * 12.0D, + (this.random.nextDouble() - 0.35D) * 3.0D, + (this.random.nextDouble() - 0.5D) * 12.0D + ); + } + + this.moveToward(this.wanderTarget, 0.08D, 0.32D); + } + + private void updateVisualRotation() { + LivingEntity target = this.getTarget(); + + if (target != null && target.isAlive()) { + this.facePosition(target.getEyePosition(), TARGET_TURN_DEGREES, true); + return; + } + + if (this.wanderTarget != null && this.position().distanceToSqr(this.wanderTarget) > MIN_LOOK_DISTANCE_SQR) { + this.facePosition(this.wanderTarget, WANDER_TURN_DEGREES, false); + return; + } + + Vec3 movement = this.getDeltaMovement(); + if (movement.horizontalDistanceSqr() > MIN_LOOK_DISTANCE_SQR) { + this.facePosition(this.position().add(movement), WANDER_TURN_DEGREES, false); + } + } + + private void facePosition(Vec3 targetPos, float maxTurnDegrees, boolean pitchToTarget) { + Vec3 from = this.getEyePosition(); + double deltaX = targetPos.x - from.x; + double deltaY = targetPos.y - from.y; + double deltaZ = targetPos.z - from.z; + double horizontalDistance = Math.sqrt(deltaX * deltaX + deltaZ * deltaZ); + + if ((horizontalDistance * horizontalDistance) + (deltaY * deltaY) <= MIN_LOOK_DISTANCE_SQR) { + return; + } + + float targetYaw = (float)(Mth.atan2(deltaZ, deltaX) * Mth.RAD_TO_DEG) - 90.0F; + float yaw = Mth.approachDegrees(this.getYRot(), targetYaw, maxTurnDegrees); + this.setYRot(yaw); + this.setYHeadRot(yaw); + this.setYBodyRot(yaw); + + float targetPitch = pitchToTarget ? (float)(-(Mth.atan2(deltaY, horizontalDistance) * Mth.RAD_TO_DEG)) : 0.0F; + this.setXRot(Mth.approachDegrees(this.getXRot(), Mth.clamp(targetPitch, -MAX_LOOK_PITCH, MAX_LOOK_PITCH), maxTurnDegrees)); + } + + private void whisperIfNeeded(ServerLevel serverLevel, Player target, double angle) { + this.nextWhisperTicks--; + + if (this.nextWhisperTicks > 0) { + return; + } + + this.nextWhisperTicks = 24 + this.random.nextInt(34); + double side = this.random.nextBoolean() ? 1.0D : -1.0D; + Vec3 ear = target.getEyePosition().add(Mth.cos(angle + side * 1.5708D) * 0.42D, -0.05D, Mth.sin(angle + side * 1.5708D) * 0.42D); + SoundEvent whisper = this.random.nextBoolean() ? SoundEvents.BREEZE_INHALE : SoundEvents.BREEZE_IDLE_AIR; + serverLevel.playSound(null, ear.x, ear.y, ear.z, whisper, SoundSource.HOSTILE, 0.22F, 1.65F + this.random.nextFloat() * 0.4F); + serverLevel.sendParticles(ParticleTypes.WHITE_SMOKE, ear.x, ear.y, ear.z, 2, 0.035D, 0.02D, 0.035D, 0.002D); + } + + private void moveToward(Vec3 targetPos, double turnSpeed, double maxSpeed) { + Vec3 toTarget = targetPos.subtract(this.position()); + double distance = toTarget.length(); + + if (distance < 0.001D) { + this.setDeltaMovement(this.getDeltaMovement().scale(0.72D)); + return; + } + + Vec3 desired = toTarget.normalize().scale(maxSpeed); + this.setDeltaMovement(this.getDeltaMovement().lerp(desired, turnSpeed)); + } + + private ServerPlayer findTarget(ServerLevel serverLevel) { + ServerPlayer closest = null; + double closestDistance = TARGET_RANGE * TARGET_RANGE; + + for (ServerPlayer player : serverLevel.players()) { + if (!this.isValidHauntTarget(player)) { + continue; + } + + double distance = this.distanceToSqr(player); + + if (distance < closestDistance) { + closest = player; + closestDistance = distance; + } + } + + return closest; + } + + private boolean isValidHauntTarget(Player player) { + return player.isAlive() + && !player.isSpectator() + && !player.isCreative() + && this.distanceToSqr(player) <= TARGET_RANGE * TARGET_RANGE; + } + + private void clearHaunt() { + this.setTarget(null); + this.setCharging(false); + this.hauntTicks = 0; + this.chargeTicks = 0; + } + + private void vanish(ServerLevel serverLevel) { + if (this.isRemoved()) { + return; + } + + serverLevel.sendParticles(ParticleTypes.SOUL, this.getX(), this.getY() + 0.85D, this.getZ(), 14, 0.35D, 0.55D, 0.35D, 0.02D); + serverLevel.sendParticles(ParticleTypes.POOF, this.getX(), this.getY() + 0.65D, this.getZ(), 8, 0.25D, 0.25D, 0.25D, 0.01D); + serverLevel.playSound(null, this.getX(), this.getY(), this.getZ(), SoundEvents.SOUL_ESCAPE, SoundSource.HOSTILE, 0.55F, 1.25F); + this.discard(); + } +} diff --git a/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/entity/GhostVariant.java b/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/entity/GhostVariant.java new file mode 100644 index 0000000..938e141 --- /dev/null +++ b/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/entity/GhostVariant.java @@ -0,0 +1,65 @@ +package fr.koka99cab.real_ghost.entity; + +import net.minecraft.util.RandomSource; + +public enum GhostVariant { + SPOOK("mob", 42), + WRAITH("human", 30), + ILLAGER("illager", 18), + ECLIPSE("color", 10); + + private static final GhostVariant[] VALUES = values(); + private static final int TOTAL_WEIGHT = totalWeight(); + + private final String textureName; + private final int spawnWeight; + + GhostVariant(String textureName, int spawnWeight) { + this.textureName = textureName; + this.spawnWeight = spawnWeight; + } + + public String textureName() { + return this.textureName; + } + + public String modelName() { + return this.textureName; + } + + public int id() { + return this.ordinal(); + } + + public static GhostVariant byId(int id) { + if (id < 0 || id >= VALUES.length) { + return SPOOK; + } + + return VALUES[id]; + } + + public static GhostVariant choose(RandomSource random) { + int choice = random.nextInt(TOTAL_WEIGHT); + + for (GhostVariant variant : VALUES) { + choice -= variant.spawnWeight; + + if (choice < 0) { + return variant; + } + } + + return SPOOK; + } + + private static int totalWeight() { + int total = 0; + + for (GhostVariant variant : VALUES) { + total += variant.spawnWeight; + } + + return total; + } +} diff --git a/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/registry/ModEntityTypes.java b/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/registry/ModEntityTypes.java new file mode 100644 index 0000000..7a8f4a1 --- /dev/null +++ b/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/registry/ModEntityTypes.java @@ -0,0 +1,46 @@ +package fr.koka99cab.real_ghost.registry; + +import fr.koka99cab.real_ghost.RealGhostMod; +import fr.koka99cab.real_ghost.entity.GhostEntity; +import net.fabricmc.fabric.api.biome.v1.BiomeModifications; +import net.fabricmc.fabric.api.biome.v1.BiomeSelectors; +import net.fabricmc.fabric.api.object.builder.v1.entity.FabricEntityTypeBuilder; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.entity.EntityDimensions; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.MobCategory; +import net.minecraft.world.entity.SpawnPlacementTypes; +import net.minecraft.world.level.levelgen.Heightmap; + +public final class ModEntityTypes { + private static final int GHOST_SPAWN_WEIGHT = 18; + private static final int MIN_GHOSTS_PER_SPAWN = 1; + private static final int MAX_GHOSTS_PER_SPAWN = 2; + + public static final Identifier GHOST_ID = RealGhostMod.id("ghost"); + public static final EntityType GHOST = Registry.register( + BuiltInRegistries.ENTITY_TYPE, + GHOST_ID, + FabricEntityTypeBuilder.createMob() + .mobCategory(MobCategory.MONSTER) + .entityFactory(GhostEntity::new) + .dimensions(EntityDimensions.scalable(0.72F, 1.85F)) + .defaultAttributes(GhostEntity::createAttributes) + .spawnPlacement(SpawnPlacementTypes.ON_GROUND, Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, GhostEntity::canSpawn) + .trackRangeBlocks(48) + .trackedUpdateRate(2) + .build(ResourceKey.create(Registries.ENTITY_TYPE, GHOST_ID)) + ); + + private ModEntityTypes() { + } + + public static void register() { + BiomeModifications.addSpawn(BiomeSelectors.foundInOverworld(), MobCategory.MONSTER, GHOST, + GHOST_SPAWN_WEIGHT, MIN_GHOSTS_PER_SPAWN, MAX_GHOSTS_PER_SPAWN); + } +} diff --git a/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/registry/ModItems.java b/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/registry/ModItems.java new file mode 100644 index 0000000..702bf19 --- /dev/null +++ b/Mobs/real_ghost/src/main/java/fr/koka99cab/real_ghost/registry/ModItems.java @@ -0,0 +1,32 @@ +package fr.koka99cab.real_ghost.registry; + +import fr.koka99cab.real_ghost.RealGhostMod; +import net.fabricmc.fabric.api.creativetab.v1.CreativeModeTabEvents; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.item.CreativeModeTab; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.SpawnEggItem; + +public final class ModItems { + private static final ResourceKey GHOST_SPAWN_EGG_KEY = ResourceKey.create(Registries.ITEM, RealGhostMod.id("ghost_spawn_egg")); + private static final ResourceKey SPAWN_EGGS_TAB = ResourceKey.create(Registries.CREATIVE_MODE_TAB, Identifier.withDefaultNamespace("spawn_eggs")); + + public static final Item GHOST_SPAWN_EGG = Registry.register( + BuiltInRegistries.ITEM, + GHOST_SPAWN_EGG_KEY, + new SpawnEggItem(new Item.Properties() + .spawnEgg(ModEntityTypes.GHOST) + .setId(GHOST_SPAWN_EGG_KEY)) + ); + + private ModItems() { + } + + public static void register() { + CreativeModeTabEvents.modifyOutputEvent(SPAWN_EGGS_TAB).register(entries -> entries.accept(GHOST_SPAWN_EGG)); + } +} diff --git a/Mobs/real_ghost/src/main/resources/assets/real_ghost/icon.png b/Mobs/real_ghost/src/main/resources/assets/real_ghost/icon.png new file mode 100644 index 0000000..ecf9ec9 Binary files /dev/null and b/Mobs/real_ghost/src/main/resources/assets/real_ghost/icon.png differ diff --git a/Mobs/real_ghost/src/main/resources/assets/real_ghost/items/ghost_spawn_egg.json b/Mobs/real_ghost/src/main/resources/assets/real_ghost/items/ghost_spawn_egg.json new file mode 100644 index 0000000..d330539 --- /dev/null +++ b/Mobs/real_ghost/src/main/resources/assets/real_ghost/items/ghost_spawn_egg.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "real_ghost:item/ghost_spawn_egg" + } +} diff --git a/Mobs/real_ghost/src/main/resources/assets/real_ghost/lang/en_us.json b/Mobs/real_ghost/src/main/resources/assets/real_ghost/lang/en_us.json new file mode 100644 index 0000000..21247e5 --- /dev/null +++ b/Mobs/real_ghost/src/main/resources/assets/real_ghost/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "entity.real_ghost.ghost": "Ghost", + "item.real_ghost.ghost_spawn_egg": "Ghost Spawn Egg" +} diff --git a/Mobs/real_ghost/src/main/resources/assets/real_ghost/lang/fr_fr.json b/Mobs/real_ghost/src/main/resources/assets/real_ghost/lang/fr_fr.json new file mode 100644 index 0000000..afd5983 --- /dev/null +++ b/Mobs/real_ghost/src/main/resources/assets/real_ghost/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "entity.real_ghost.ghost": "Fantome", + "item.real_ghost.ghost_spawn_egg": "Oeuf d'apparition de fantome" +} diff --git a/Mobs/real_ghost/src/main/resources/assets/real_ghost/models/item/ghost_spawn_egg.json b/Mobs/real_ghost/src/main/resources/assets/real_ghost/models/item/ghost_spawn_egg.json new file mode 100644 index 0000000..ab68a89 --- /dev/null +++ b/Mobs/real_ghost/src/main/resources/assets/real_ghost/models/item/ghost_spawn_egg.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "real_ghost:item/ghost_spawn_egg" + } +} diff --git a/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/entity/ghost/color.png b/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/entity/ghost/color.png new file mode 100644 index 0000000..e0b5983 Binary files /dev/null and b/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/entity/ghost/color.png differ diff --git a/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/entity/ghost/human.png b/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/entity/ghost/human.png new file mode 100644 index 0000000..ba16d6f Binary files /dev/null and b/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/entity/ghost/human.png differ diff --git a/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/entity/ghost/illager.png b/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/entity/ghost/illager.png new file mode 100644 index 0000000..f19c938 Binary files /dev/null and b/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/entity/ghost/illager.png differ diff --git a/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/entity/ghost/mob.png b/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/entity/ghost/mob.png new file mode 100644 index 0000000..6cf6026 Binary files /dev/null and b/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/entity/ghost/mob.png differ diff --git a/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/item/ghost_spawn_egg.png b/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/item/ghost_spawn_egg.png new file mode 100644 index 0000000..1b24e8f Binary files /dev/null and b/Mobs/real_ghost/src/main/resources/assets/real_ghost/textures/item/ghost_spawn_egg.png differ diff --git a/Mobs/real_ghost/src/main/resources/fabric.mod.json b/Mobs/real_ghost/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..ca7a820 --- /dev/null +++ b/Mobs/real_ghost/src/main/resources/fabric.mod.json @@ -0,0 +1,28 @@ +{ + "schemaVersion": 1, + "id": "real_ghost", + "version": "${version}", + "name": "Real Ghost", + "description": "Adds rare night ghosts that haunt players, whisper around them, charge, attack, and vanish. Also removes vanilla phantoms.", + "authors": [ + "KOKA99CAB", + "Eclipse_Valley (bbmodel)" + ], + "license": "LGPL-3.0-or-later", + "icon": "assets/real_ghost/icon.png", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.real_ghost.RealGhostMod" + ], + "client": [ + "fr.koka99cab.real_ghost.client.RealGhostClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Mobs/villagers/.gitignore b/Mobs/villagers/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Mobs/villagers/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Mobs/villagers/build.gradle b/Mobs/villagers/build.gradle new file mode 100644 index 0000000..f719a07 --- /dev/null +++ b/Mobs/villagers/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "villagers" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Mobs/villagers/gradle.properties b/Mobs/villagers/gradle.properties new file mode 100644 index 0000000..bebc64e --- /dev/null +++ b/Mobs/villagers/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=villagers + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Mobs/villagers/gradle/wrapper/gradle-wrapper.jar b/Mobs/villagers/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Mobs/villagers/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Mobs/villagers/gradle/wrapper/gradle-wrapper.properties b/Mobs/villagers/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Mobs/villagers/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Mobs/villagers/gradlew b/Mobs/villagers/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Mobs/villagers/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Mobs/villagers/gradlew.bat b/Mobs/villagers/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Mobs/villagers/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Mobs/villagers/settings.gradle b/Mobs/villagers/settings.gradle new file mode 100644 index 0000000..cede87c --- /dev/null +++ b/Mobs/villagers/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "villagers" diff --git a/Mobs/villagers/src/client/java/fr/koka99cab/villagers/client/VillagersClient.java b/Mobs/villagers/src/client/java/fr/koka99cab/villagers/client/VillagersClient.java new file mode 100644 index 0000000..307d0a1 --- /dev/null +++ b/Mobs/villagers/src/client/java/fr/koka99cab/villagers/client/VillagersClient.java @@ -0,0 +1,11 @@ +package fr.koka99cab.villagers.client; + +import net.fabricmc.api.ClientModInitializer; +import fr.koka99cab.villagers.VillagersMod; + +public class VillagersClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + VillagersMod.LOGGER.info("Villagers client initialise."); + } +} diff --git a/Mobs/villagers/src/main/java/fr/koka99cab/villagers/VillagersMod.java b/Mobs/villagers/src/main/java/fr/koka99cab/villagers/VillagersMod.java new file mode 100644 index 0000000..b22cdf5 --- /dev/null +++ b/Mobs/villagers/src/main/java/fr/koka99cab/villagers/VillagersMod.java @@ -0,0 +1,94 @@ +package fr.koka99cab.villagers; + +import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerEntityEvents; +import net.minecraft.network.chat.Component; +import net.minecraft.util.RandomSource; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.npc.villager.AbstractVillager; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class VillagersMod implements ModInitializer { + public static final String MOD_ID = "villagers"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + private static final String[] NAME_STARTS = { + "Huh", "Hum", "Hu", "Huw", "Hem", "Him", "Hah", "Hoh", + "Hur", "Mhm", "Mhu", "Wuh", "Wum", "Wuw" + }; + + private static final String[] NAME_MIDDLES = { + "hu", "hum", "huw", "wuh", "wum", "mhu", "haa", "hee", + "hii", "hoo", "uwu", "uhu" + }; + + private static final String[] NAME_ENDS = { + "huh", "hum", "huw", "wum", "wuw", "mum", "mur", "rum", + "rah", "reh", "roh", "wu", "uwu", "uhu" + }; + + private static final String[] HONOR_WORDS = { + "Elder", "Trader", "Farmer", "Mason", "Fisher", "Shepherd", "Cleric", "Smith", + "Cartographer", "Librarian", "Butcher", "Fletcher", "Armorer", "Toolsmith", "Leatherworker" + }; + + private static final String[] FAMILY_WORDS = { + "of Hum", "of Huh", "of Huwuw", "of Hrrum", "of Wuwu", "of Hoom", + "the Humming", "the Huh-Sayer", "the Huwuw-Keeper", "the Emerald-Hum", + "the Bell-Huh", "the Trade-Hum" + }; + + @Override + public void onInitialize() { + ServerEntityEvents.ENTITY_LOAD.register((entity, level) -> nameVillager(entity)); + LOGGER.info("Villagers charge avec des noms hum/huh/huwuw."); + } + + private static void nameVillager(Entity entity) { + if (!(entity instanceof AbstractVillager villager)) { + return; + } + + if (villager.hasCustomName()) { + villager.setCustomNameVisible(false); + return; + } + + villager.setCustomName(Component.literal(createVillagerName(villager.getRandom()))); + villager.setCustomNameVisible(false); + } + + private static String createVillagerName(RandomSource random) { + String name = switch (random.nextInt(4)) { + case 0, 1 -> randomNameWord(random, 0); + case 2 -> randomNameWord(random, 1); + default -> randomElement(random, NAME_STARTS) + " " + randomElement(random, NAME_ENDS); + }; + + if (random.nextInt(12) == 0) { + name = randomElement(random, HONOR_WORDS) + " " + name; + } + + if (random.nextInt(15) == 0) { + name = name + " " + randomElement(random, FAMILY_WORDS); + } + + return name; + } + + private static String randomNameWord(RandomSource random, int middleCount) { + StringBuilder name = new StringBuilder(randomElement(random, NAME_STARTS)); + + for (int i = 0; i < middleCount; i++) { + name.append(randomElement(random, NAME_MIDDLES)); + } + + name.append(randomElement(random, NAME_ENDS)); + return name.toString(); + } + + private static String randomElement(RandomSource random, String[] values) { + return values[random.nextInt(values.length)]; + } +} diff --git a/Mobs/villagers/src/main/resources/assets/villagers/icon.png b/Mobs/villagers/src/main/resources/assets/villagers/icon.png new file mode 100644 index 0000000..772dbf1 Binary files /dev/null and b/Mobs/villagers/src/main/resources/assets/villagers/icon.png differ diff --git a/Mobs/villagers/src/main/resources/assets/villagers/lang/en_us.json b/Mobs/villagers/src/main/resources/assets/villagers/lang/en_us.json new file mode 100644 index 0000000..f148044 --- /dev/null +++ b/Mobs/villagers/src/main/resources/assets/villagers/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.villagers": "Villagers", + "modmenu.descriptionTranslation.villagers": "Adds many villager-style names made from hum, huh, huwuw, and vowel sounds." +} diff --git a/Mobs/villagers/src/main/resources/assets/villagers/lang/fr_fr.json b/Mobs/villagers/src/main/resources/assets/villagers/lang/fr_fr.json new file mode 100644 index 0000000..08a2b3d --- /dev/null +++ b/Mobs/villagers/src/main/resources/assets/villagers/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.villagers": "Villagers", + "modmenu.descriptionTranslation.villagers": "Ajoute beaucoup de noms de villageois style Minecraft avec hum, huh, huwuw et des voyelles." +} diff --git a/Mobs/villagers/src/main/resources/fabric.mod.json b/Mobs/villagers/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..0032c3b --- /dev/null +++ b/Mobs/villagers/src/main/resources/fabric.mod.json @@ -0,0 +1,27 @@ +{ + "schemaVersion": 1, + "id": "villagers", + "version": "${version}", + "name": "Villagers", + "description": "Adds many Minecraft villager-style names made from hum, huh, huwuw, and vowel sounds.", + "authors": [ + "KOKA99CAB" + ], + "icon": "assets/villagers/icon.png", + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.villagers.VillagersMod" + ], + "client": [ + "fr.koka99cab.villagers.client.VillagersClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Mobs/villagers/villager.png b/Mobs/villagers/villager.png new file mode 100644 index 0000000..772dbf1 Binary files /dev/null and b/Mobs/villagers/villager.png differ diff --git a/Multiplayer/events/build.gradle b/Multiplayer/events/build.gradle new file mode 100644 index 0000000..824be87 --- /dev/null +++ b/Multiplayer/events/build.gradle @@ -0,0 +1,72 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +base { + archivesName = project.archives_base_name +} + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "events" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + artifactId = project.archives_base_name + from components.java + } + } + + repositories { + } +} diff --git a/Multiplayer/events/gradle.properties b/Multiplayer/events/gradle.properties new file mode 100644 index 0000000..ce9a683 --- /dev/null +++ b/Multiplayer/events/gradle.properties @@ -0,0 +1,15 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true +org.gradle.configuration-cache=false + +# Fabric properties +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT +fabric_api_version=0.148.0+26.1.2 + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=events diff --git a/Multiplayer/events/gradle/wrapper/gradle-wrapper.jar b/Multiplayer/events/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Multiplayer/events/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Multiplayer/events/gradle/wrapper/gradle-wrapper.properties b/Multiplayer/events/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Multiplayer/events/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Multiplayer/events/gradlew b/Multiplayer/events/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Multiplayer/events/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Multiplayer/events/gradlew.bat b/Multiplayer/events/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Multiplayer/events/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Multiplayer/events/settings.gradle b/Multiplayer/events/settings.gradle new file mode 100644 index 0000000..6a13cfc --- /dev/null +++ b/Multiplayer/events/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "events" diff --git a/Multiplayer/events/src/main/java/fr/koka99cab/events/EventsMod.java b/Multiplayer/events/src/main/java/fr/koka99cab/events/EventsMod.java new file mode 100644 index 0000000..9b54617 --- /dev/null +++ b/Multiplayer/events/src/main/java/fr/koka99cab/events/EventsMod.java @@ -0,0 +1,26 @@ +package fr.koka99cab.events; + +import fr.koka99cab.events.command.EventsCommands; +import fr.koka99cab.events.engine.EventsEngine; +import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerLifecycleEvents; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class EventsMod implements ModInitializer { + public static final String MOD_ID = "events"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + private static final EventsEngine ENGINE = new EventsEngine(); + + @Override + public void onInitialize() { + ServerLifecycleEvents.SERVER_STARTED.register(ENGINE::start); + ServerLifecycleEvents.SERVER_STOPPING.register(server -> ENGINE.stop()); + ServerTickEvents.END_SERVER_TICK.register(ENGINE::tick); + EventsCommands.register(ENGINE); + + LOGGER.info("Events charge: moteur d'automations serveur pret."); + } +} diff --git a/Multiplayer/events/src/main/java/fr/koka99cab/events/command/EventsCommands.java b/Multiplayer/events/src/main/java/fr/koka99cab/events/command/EventsCommands.java new file mode 100644 index 0000000..d5c19df --- /dev/null +++ b/Multiplayer/events/src/main/java/fr/koka99cab/events/command/EventsCommands.java @@ -0,0 +1,102 @@ +package fr.koka99cab.events.command; + +import com.mojang.brigadier.Command; +import com.mojang.brigadier.arguments.StringArgumentType; +import fr.koka99cab.events.config.EventDefinition; +import fr.koka99cab.events.engine.EventsEngine; +import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; +import net.minecraft.commands.SharedSuggestionProvider; +import net.minecraft.network.chat.Component; +import net.minecraft.server.permissions.Permissions; + +import java.io.IOException; +import java.util.List; + +public final class EventsCommands { + private EventsCommands() { + } + + public static void register(EventsEngine engine) { + CommandRegistrationCallback.EVENT.register((dispatcher, registryAccess, environment) -> dispatcher.register( + Commands.literal("events") + .requires(source -> source.permissions().hasPermission(Permissions.COMMANDS_GAMEMASTER)) + .executes(context -> showStatus(context.getSource(), engine)) + .then(Commands.literal("status") + .executes(context -> showStatus(context.getSource(), engine))) + .then(Commands.literal("list") + .executes(context -> listEvents(context.getSource(), engine))) + .then(Commands.literal("reload") + .executes(context -> reload(context.getSource(), engine))) + .then(Commands.literal("run") + .then(Commands.argument("id", StringArgumentType.word()) + .suggests((context, builder) -> SharedSuggestionProvider.suggest(engine.eventIds(), builder)) + .executes(context -> runEvent(context.getSource(), engine, StringArgumentType.getString(context, "id"))))) + .then(Commands.literal("enable") + .then(Commands.argument("id", StringArgumentType.word()) + .suggests((context, builder) -> SharedSuggestionProvider.suggest(engine.eventIds(), builder)) + .executes(context -> setEnabled(context.getSource(), engine, StringArgumentType.getString(context, "id"), true)))) + .then(Commands.literal("disable") + .then(Commands.argument("id", StringArgumentType.word()) + .suggests((context, builder) -> SharedSuggestionProvider.suggest(engine.eventIds(), builder)) + .executes(context -> setEnabled(context.getSource(), engine, StringArgumentType.getString(context, "id"), false)))) + )); + } + + private static int showStatus(CommandSourceStack source, EventsEngine engine) { + List events = engine.events(); + long enabled = events.stream().filter(event -> event.enabled).count(); + source.sendSuccess(() -> Component.literal("Events: " + enabled + "/" + events.size() + " events actifs."), false); + source.sendSuccess(() -> Component.literal("Config: " + engine.configPathLabel()), false); + return Command.SINGLE_SUCCESS; + } + + private static int listEvents(CommandSourceStack source, EventsEngine engine) { + List events = engine.events(); + if (events.isEmpty()) { + source.sendSuccess(() -> Component.literal("Events: aucun event configure."), false); + return Command.SINGLE_SUCCESS; + } + + source.sendSuccess(() -> Component.literal("Events configures:"), false); + for (EventDefinition event : events) { + String status = event.enabled ? "on" : "off"; + String trigger = event.normalizedTrigger().normalizedType(); + source.sendSuccess(() -> Component.literal("- " + event.normalizedId() + " [" + status + ", " + trigger + "]"), false); + } + return Command.SINGLE_SUCCESS; + } + + private static int reload(CommandSourceStack source, EventsEngine engine) { + engine.reload(source.getServer()); + source.sendSuccess(() -> Component.literal("Events: config rechargee."), true); + return Command.SINGLE_SUCCESS; + } + + private static int runEvent(CommandSourceStack source, EventsEngine engine, String id) { + if (!engine.runNow(source.getServer(), id, "commande")) { + source.sendFailure(Component.literal("Events: event introuvable: " + id)); + return 0; + } + + source.sendSuccess(() -> Component.literal("Events: event lance: " + id), true); + return Command.SINGLE_SUCCESS; + } + + private static int setEnabled(CommandSourceStack source, EventsEngine engine, String id, boolean enabled) { + try { + if (!engine.setEnabled(id, enabled)) { + source.sendFailure(Component.literal("Events: event introuvable: " + id)); + return 0; + } + } catch (IOException exception) { + source.sendFailure(Component.literal("Events: impossible de sauvegarder la config: " + exception.getMessage())); + return 0; + } + + String status = enabled ? "active" : "desactive"; + source.sendSuccess(() -> Component.literal("Events: " + id + " " + status + "."), true); + return Command.SINGLE_SUCCESS; + } +} diff --git a/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventAction.java b/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventAction.java new file mode 100644 index 0000000..cd0b8ce --- /dev/null +++ b/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventAction.java @@ -0,0 +1,72 @@ +package fr.koka99cab.events.config; + +import java.util.ArrayList; +import java.util.List; +import java.util.Locale; +import java.util.Objects; + +public final class EventAction { + public String type = "broadcast"; + public String message = ""; + public List messages = new ArrayList<>(); + public String title = ""; + public String subtitle = ""; + public String sound = ""; + public String command = ""; + public List commands = new ArrayList<>(); + public float volume = 1.0F; + public float pitch = 1.0F; + public int fadeInTicks = 10; + public int stayTicks = 60; + public int fadeOutTicks = 20; + + public String normalizedType() { + return Objects.requireNonNullElse(this.type, "broadcast") + .strip() + .toLowerCase(Locale.ROOT); + } + + public List normalizedMessages() { + if (this.messages == null) { + return List.of(); + } + + return this.messages.stream() + .filter(Objects::nonNull) + .map(String::strip) + .filter(message -> !message.isEmpty()) + .toList(); + } + + public List normalizedCommands() { + if (this.commands == null) { + return List.of(); + } + + return this.commands.stream() + .filter(Objects::nonNull) + .map(String::strip) + .filter(command -> !command.isEmpty()) + .toList(); + } + + public String normalizedMessage() { + return Objects.requireNonNullElse(this.message, "").strip(); + } + + public String normalizedTitle() { + return Objects.requireNonNullElse(this.title, "").strip(); + } + + public String normalizedSubtitle() { + return Objects.requireNonNullElse(this.subtitle, "").strip(); + } + + public String normalizedSound() { + return Objects.requireNonNullElse(this.sound, "").strip(); + } + + public String normalizedCommand() { + return Objects.requireNonNullElse(this.command, "").strip(); + } +} diff --git a/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventCondition.java b/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventCondition.java new file mode 100644 index 0000000..8da085d --- /dev/null +++ b/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventCondition.java @@ -0,0 +1,23 @@ +package fr.koka99cab.events.config; + +public final class EventCondition { + public int minPlayers = 0; + public int maxPlayers = -1; + public double chance = 1.0D; + + public int normalizedMinPlayers() { + return Math.max(0, this.minPlayers); + } + + public int normalizedMaxPlayers() { + return this.maxPlayers < 0 ? -1 : this.maxPlayers; + } + + public double normalizedChance() { + if (Double.isNaN(this.chance)) { + return 1.0D; + } + + return Math.clamp(this.chance, 0.0D, 1.0D); + } +} diff --git a/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventDefinition.java b/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventDefinition.java new file mode 100644 index 0000000..31fd0cb --- /dev/null +++ b/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventDefinition.java @@ -0,0 +1,35 @@ +package fr.koka99cab.events.config; + +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; + +public final class EventDefinition { + public String id = ""; + public boolean enabled = true; + public EventTrigger trigger = new EventTrigger(); + public EventCondition conditions = new EventCondition(); + public List actions = new ArrayList<>(); + + public String normalizedId() { + return Objects.requireNonNullElse(this.id, "").strip(); + } + + public EventTrigger normalizedTrigger() { + return this.trigger == null ? new EventTrigger() : this.trigger; + } + + public EventCondition normalizedConditions() { + return this.conditions == null ? new EventCondition() : this.conditions; + } + + public List normalizedActions() { + if (this.actions == null) { + return List.of(); + } + + return this.actions.stream() + .filter(Objects::nonNull) + .toList(); + } +} diff --git a/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventTrigger.java b/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventTrigger.java new file mode 100644 index 0000000..72408b8 --- /dev/null +++ b/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventTrigger.java @@ -0,0 +1,58 @@ +package fr.koka99cab.events.config; + +import java.util.Locale; +import java.util.Objects; + +public final class EventTrigger { + public String type = "minecraft_time"; + public String time = ""; + public String timezone = "system"; + public long tick = -1L; + public int intervalTicks = 0; + public int intervalSeconds = 0; + public boolean runOnStart = false; + + public String normalizedType() { + return Objects.requireNonNullElse(this.type, "minecraft_time") + .strip() + .toLowerCase(Locale.ROOT); + } + + public String normalizedTime() { + return Objects.requireNonNullElse(this.time, "").strip(); + } + + public String normalizedTimezone() { + return Objects.requireNonNullElse(this.timezone, "system").strip(); + } + + public long normalizedTick() { + if (this.tick >= 0L) { + return Math.floorMod(this.tick, 24000L); + } + + return switch (normalizedTime().toLowerCase(Locale.ROOT)) { + case "noon", "midi", "midday" -> 6000L; + case "midnight", "minuit" -> 18000L; + case "sunrise", "lever", "morning" -> 0L; + case "sunset", "coucher", "evening" -> 12000L; + default -> parseTick(normalizedTime()); + }; + } + + public int normalizedIntervalTicks() { + if (this.intervalTicks > 0) { + return this.intervalTicks; + } + + return Math.max(0, this.intervalSeconds) * 20; + } + + private static long parseTick(String raw) { + try { + return Math.floorMod(Long.parseLong(raw), 24000L); + } catch (NumberFormatException exception) { + return -1L; + } + } +} diff --git a/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventsConfig.java b/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventsConfig.java new file mode 100644 index 0000000..71e4297 --- /dev/null +++ b/Multiplayer/events/src/main/java/fr/koka99cab/events/config/EventsConfig.java @@ -0,0 +1,166 @@ +package fr.koka99cab.events.config; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonParseException; +import org.slf4j.Logger; + +import java.io.IOException; +import java.io.Reader; +import java.io.Writer; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; +import java.util.Optional; + +public final class EventsConfig { + private static final Gson GSON = new GsonBuilder() + .setPrettyPrinting() + .disableHtmlEscaping() + .create(); + + public List events = new ArrayList<>(); + + public static EventsConfig load(Path path, Logger logger) { + EventsConfig defaults = defaults(); + + try { + Files.createDirectories(path.getParent()); + + if (Files.notExists(path)) { + save(path, defaults); + logger.info("Events: config creee dans {}", path); + return defaults; + } + + try (Reader reader = Files.newBufferedReader(path)) { + EventsConfig loaded = GSON.fromJson(reader, EventsConfig.class); + if (loaded == null) { + save(path, defaults); + return defaults; + } + + return sanitize(loaded); + } + } catch (IOException | JsonParseException exception) { + logger.error("Events: impossible de charger {}, valeurs par defaut utilisees", path, exception); + return defaults; + } + } + + public static void save(Path path, EventsConfig config) throws IOException { + Files.createDirectories(path.getParent()); + try (Writer writer = Files.newBufferedWriter(path)) { + GSON.toJson(config, writer); + } + } + + public List normalizedEvents() { + if (this.events == null) { + return List.of(); + } + + return this.events.stream() + .filter(Objects::nonNull) + .filter(event -> !event.normalizedId().isEmpty()) + .toList(); + } + + public Optional find(String id) { + String normalizedId = Objects.requireNonNullElse(id, "").strip(); + if (normalizedId.isEmpty()) { + return Optional.empty(); + } + + return normalizedEvents().stream() + .filter(event -> event.normalizedId().equals(normalizedId)) + .findFirst(); + } + + public static EventsConfig defaults() { + EventsConfig config = new EventsConfig(); + config.events.add(backupEvent()); + config.events.add(middayEvent()); + config.events.add(midnightEvent()); + return config; + } + + private static EventsConfig sanitize(EventsConfig config) { + EventsConfig sanitized = new EventsConfig(); + sanitized.events = new ArrayList<>(config.normalizedEvents()); + return sanitized; + } + + private static EventDefinition backupEvent() { + EventDefinition event = new EventDefinition(); + event.id = "backup_21h"; + event.trigger.type = "real_time"; + event.trigger.time = "21:00"; + event.trigger.timezone = "system"; + + EventAction announce = new EventAction(); + announce.type = "broadcast"; + announce.message = "[Events] Backup serveur de 21h: on range les coffres et on sauvegarde le monde."; + + EventAction actionbar = new EventAction(); + actionbar.type = "actionbar"; + actionbar.message = "Backup serveur en cours..."; + + EventAction command = new EventAction(); + command.type = "command"; + command.command = "save-all"; + + event.actions.add(announce); + event.actions.add(actionbar); + event.actions.add(command); + return event; + } + + private static EventDefinition middayEvent() { + EventDefinition event = new EventDefinition(); + event.id = "midi_sort_du_lit"; + event.trigger.type = "minecraft_time"; + event.trigger.tick = 6000L; + + EventAction message = new EventAction(); + message.type = "random_message"; + message.messages.add("Il est midi, on sort du lit !"); + message.messages.add("Midi pile: les couvertures rendent les armes."); + message.messages.add("Le soleil est au-dessus de vos tetes, c'est l'heure du sandwich."); + + EventAction sound = new EventAction(); + sound.type = "sound"; + sound.sound = "minecraft:block.bell.use"; + sound.volume = 0.8F; + sound.pitch = 1.15F; + + event.actions.add(message); + event.actions.add(sound); + return event; + } + + private static EventDefinition midnightEvent() { + EventDefinition event = new EventDefinition(); + event.id = "minuit_au_lit"; + event.trigger.type = "minecraft_time"; + event.trigger.tick = 18000L; + + EventAction title = new EventAction(); + title.type = "title"; + title.title = "Il est minuit"; + title.subtitle = "On saute dans le lit !"; + title.fadeInTicks = 10; + title.stayTicks = 70; + title.fadeOutTicks = 20; + + EventAction message = new EventAction(); + message.type = "broadcast"; + message.message = "Il est minuit, on saute dans le lit !"; + + event.actions.add(title); + event.actions.add(message); + return event; + } +} diff --git a/Multiplayer/events/src/main/java/fr/koka99cab/events/engine/EventsEngine.java b/Multiplayer/events/src/main/java/fr/koka99cab/events/engine/EventsEngine.java new file mode 100644 index 0000000..3074bf1 --- /dev/null +++ b/Multiplayer/events/src/main/java/fr/koka99cab/events/engine/EventsEngine.java @@ -0,0 +1,432 @@ +package fr.koka99cab.events.engine; + +import fr.koka99cab.events.EventsMod; +import fr.koka99cab.events.config.EventAction; +import fr.koka99cab.events.config.EventCondition; +import fr.koka99cab.events.config.EventDefinition; +import fr.koka99cab.events.config.EventTrigger; +import fr.koka99cab.events.config.EventsConfig; +import net.fabricmc.loader.api.FabricLoader; +import net.minecraft.core.Holder; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.network.chat.Component; +import net.minecraft.network.protocol.game.ClientboundSetActionBarTextPacket; +import net.minecraft.network.protocol.game.ClientboundSetSubtitleTextPacket; +import net.minecraft.network.protocol.game.ClientboundSetTitleTextPacket; +import net.minecraft.network.protocol.game.ClientboundSetTitlesAnimationPacket; +import net.minecraft.resources.Identifier; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.sounds.SoundSource; +import net.minecraft.world.clock.WorldClock; +import net.minecraft.world.clock.WorldClocks; + +import java.io.IOException; +import java.nio.file.Path; +import java.time.DateTimeException; +import java.time.LocalDate; +import java.time.LocalTime; +import java.time.ZoneId; +import java.time.ZonedDateTime; +import java.time.format.DateTimeParseException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import java.util.concurrent.ThreadLocalRandom; + +public final class EventsEngine { + private static final long MINECRAFT_DAY_TICKS = 24000L; + + private final Map realTimeRuns = new HashMap<>(); + private final Map minecraftTimeRuns = new HashMap<>(); + private final Map intervalRuns = new HashMap<>(); + + private EventsConfig config = EventsConfig.defaults(); + private Path configPath = FabricLoader.getInstance().getConfigDir().resolve("events/events.json"); + private long previousMinecraftTick = -1L; + private long minecraftCycle = 0L; + + public void start(MinecraftServer server) { + this.configPath = FabricLoader.getInstance().getConfigDir().resolve("events/events.json"); + reload(server); + runStartupEvents(server); + EventsMod.LOGGER.info("Events: {} events charges depuis {}", events().size(), this.configPath); + } + + public void stop() { + this.previousMinecraftTick = -1L; + this.minecraftCycle = 0L; + this.realTimeRuns.clear(); + this.minecraftTimeRuns.clear(); + this.intervalRuns.clear(); + } + + public void reload(MinecraftServer server) { + this.config = EventsConfig.load(this.configPath, EventsMod.LOGGER); + this.previousMinecraftTick = readMinecraftDayTick(server).orElse(-1L); + this.realTimeRuns.clear(); + this.minecraftTimeRuns.clear(); + this.intervalRuns.clear(); + } + + public void tick(MinecraftServer server) { + List events = events(); + if (events.isEmpty()) { + return; + } + + long currentMinecraftTick = readMinecraftDayTick(server).orElse(-1L); + boolean hasMinecraftTick = currentMinecraftTick >= 0L; + long previousTick = this.previousMinecraftTick; + if (hasMinecraftTick && previousTick >= 0L && previousTick > currentMinecraftTick) { + this.minecraftCycle++; + } + + for (EventDefinition event : events) { + if (!event.enabled) { + continue; + } + + EventTrigger trigger = event.normalizedTrigger(); + switch (trigger.normalizedType()) { + case "real_time" -> tickRealTimeEvent(server, event, trigger); + case "minecraft_time" -> { + if (hasMinecraftTick && previousTick >= 0L) { + tickMinecraftTimeEvent(server, event, trigger, previousTick, currentMinecraftTick); + } + } + case "interval" -> tickIntervalEvent(server, event, trigger); + default -> { + } + } + } + + if (hasMinecraftTick) { + this.previousMinecraftTick = currentMinecraftTick; + } + } + + public List events() { + return List.copyOf(this.config.normalizedEvents()); + } + + public List eventIds() { + return events().stream() + .map(EventDefinition::normalizedId) + .toList(); + } + + public String configPathLabel() { + return this.configPath.toString(); + } + + public boolean runNow(MinecraftServer server, String id, String reason) { + Optional event = this.config.find(id); + if (event.isEmpty()) { + return false; + } + + runEvent(server, event.get(), reason, true); + return true; + } + + public boolean setEnabled(String id, boolean enabled) throws IOException { + Optional event = this.config.find(id); + if (event.isEmpty()) { + return false; + } + + event.get().enabled = enabled; + EventsConfig.save(this.configPath, this.config); + return true; + } + + private void runStartupEvents(MinecraftServer server) { + for (EventDefinition event : events()) { + if (event.enabled && event.normalizedTrigger().runOnStart) { + runEvent(server, event, "startup", false); + } + } + } + + private void tickRealTimeEvent(MinecraftServer server, EventDefinition event, EventTrigger trigger) { + LocalTime target; + try { + target = LocalTime.parse(trigger.normalizedTime()); + } catch (DateTimeParseException exception) { + EventsMod.LOGGER.warn("Events: heure real_time invalide pour {}: {}", event.normalizedId(), trigger.normalizedTime()); + return; + } + + ZoneId zone = zoneFor(trigger.normalizedTimezone()); + ZonedDateTime now = ZonedDateTime.now(zone); + if (now.getHour() != target.getHour() || now.getMinute() != target.getMinute()) { + return; + } + + LocalDate today = now.toLocalDate(); + if (Objects.equals(this.realTimeRuns.get(event.normalizedId()), today)) { + return; + } + + this.realTimeRuns.put(event.normalizedId(), today); + runEvent(server, event, "real_time", false); + } + + private void tickMinecraftTimeEvent(MinecraftServer server, EventDefinition event, EventTrigger trigger, long previousTick, long currentTick) { + long targetTick = trigger.normalizedTick(); + if (targetTick < 0L) { + EventsMod.LOGGER.warn("Events: tick minecraft_time invalide pour {}", event.normalizedId()); + return; + } + + if (!crossedMinecraftTick(previousTick, currentTick, targetTick)) { + return; + } + + long runCycle = currentTick < previousTick && targetTick > previousTick + ? this.minecraftCycle - 1L + : this.minecraftCycle; + String runKey = event.normalizedId(); + if (Objects.equals(this.minecraftTimeRuns.get(runKey), runCycle)) { + return; + } + + this.minecraftTimeRuns.put(runKey, runCycle); + runEvent(server, event, "minecraft_time", false); + } + + private void tickIntervalEvent(MinecraftServer server, EventDefinition event, EventTrigger trigger) { + int intervalTicks = trigger.normalizedIntervalTicks(); + if (intervalTicks <= 0) { + EventsMod.LOGGER.warn("Events: interval invalide pour {}", event.normalizedId()); + return; + } + + int now = server.getTickCount(); + Integer lastRun = this.intervalRuns.get(event.normalizedId()); + if (lastRun == null) { + this.intervalRuns.put(event.normalizedId(), now); + return; + } + + if (now - lastRun < intervalTicks) { + return; + } + + this.intervalRuns.put(event.normalizedId(), now); + runEvent(server, event, "interval", false); + } + + private void runEvent(MinecraftServer server, EventDefinition event, String reason, boolean force) { + if (!force && !conditionsPass(server, event.normalizedConditions())) { + EventsMod.LOGGER.info("Events: {} ignore, conditions non remplies.", event.normalizedId()); + return; + } + + Map placeholders = placeholders(server, event, reason); + for (EventAction action : event.normalizedActions()) { + runAction(server, event, action, placeholders); + } + EventsMod.LOGGER.info("Events: {} execute ({})", event.normalizedId(), reason); + } + + private boolean conditionsPass(MinecraftServer server, EventCondition conditions) { + int playerCount = server.getPlayerCount(); + if (playerCount < conditions.normalizedMinPlayers()) { + return false; + } + + int maxPlayers = conditions.normalizedMaxPlayers(); + if (maxPlayers >= 0 && playerCount > maxPlayers) { + return false; + } + + double chance = conditions.normalizedChance(); + return chance >= 1.0D || ThreadLocalRandom.current().nextDouble() <= chance; + } + + private void runAction(MinecraftServer server, EventDefinition event, EventAction action, Map placeholders) { + switch (action.normalizedType()) { + case "broadcast", "message" -> broadcast(server, applyPlaceholders(action.normalizedMessage(), placeholders)); + case "random_message" -> randomMessage(server, action, placeholders); + case "actionbar" -> actionbar(server, applyPlaceholders(action.normalizedMessage(), placeholders)); + case "title" -> title(server, action, placeholders); + case "sound" -> sound(server, event, action); + case "command" -> commands(server, action, placeholders); + default -> EventsMod.LOGGER.warn("Events: action inconnue dans {}: {}", event.normalizedId(), action.normalizedType()); + } + } + + private void broadcast(MinecraftServer server, String message) { + if (message.isEmpty()) { + return; + } + + server.getPlayerList().broadcastSystemMessage(Component.literal(message), false); + } + + private void randomMessage(MinecraftServer server, EventAction action, Map placeholders) { + List messages = action.normalizedMessages(); + if (messages.isEmpty()) { + broadcast(server, applyPlaceholders(action.normalizedMessage(), placeholders)); + return; + } + + String message = messages.get(ThreadLocalRandom.current().nextInt(messages.size())); + broadcast(server, applyPlaceholders(message, placeholders)); + } + + private void actionbar(MinecraftServer server, String message) { + if (message.isEmpty()) { + return; + } + + ClientboundSetActionBarTextPacket packet = new ClientboundSetActionBarTextPacket(Component.literal(message)); + for (ServerPlayer player : server.getPlayerList().getPlayers()) { + player.connection.send(packet); + } + } + + private void title(MinecraftServer server, EventAction action, Map placeholders) { + String title = applyPlaceholders(action.normalizedTitle(), placeholders); + String subtitle = applyPlaceholders(action.normalizedSubtitle(), placeholders); + if (title.isEmpty() && subtitle.isEmpty()) { + return; + } + + ClientboundSetTitlesAnimationPacket animationPacket = new ClientboundSetTitlesAnimationPacket( + Math.max(0, action.fadeInTicks), + Math.max(1, action.stayTicks), + Math.max(0, action.fadeOutTicks) + ); + ClientboundSetTitleTextPacket titlePacket = new ClientboundSetTitleTextPacket(Component.literal(title)); + ClientboundSetSubtitleTextPacket subtitlePacket = new ClientboundSetSubtitleTextPacket(Component.literal(subtitle)); + + for (ServerPlayer player : server.getPlayerList().getPlayers()) { + player.connection.send(animationPacket); + if (!subtitle.isEmpty()) { + player.connection.send(subtitlePacket); + } + if (!title.isEmpty()) { + player.connection.send(titlePacket); + } + } + } + + private void sound(MinecraftServer server, EventDefinition event, EventAction action) { + String rawSound = action.normalizedSound(); + if (rawSound.isEmpty()) { + return; + } + + Identifier id = Identifier.tryParse(rawSound); + if (id == null) { + EventsMod.LOGGER.warn("Events: son invalide dans {}: {}", event.normalizedId(), rawSound); + return; + } + + Optional sound = BuiltInRegistries.SOUND_EVENT.getOptional(id); + if (sound.isEmpty()) { + EventsMod.LOGGER.warn("Events: son inconnu dans {}: {}", event.normalizedId(), rawSound); + return; + } + + for (ServerPlayer player : server.getPlayerList().getPlayers()) { + player.level().playSound( + null, + player.getX(), + player.getY(), + player.getZ(), + sound.get(), + SoundSource.MASTER, + Math.max(0.0F, action.volume), + Math.max(0.01F, action.pitch) + ); + } + } + + private void commands(MinecraftServer server, EventAction action, Map placeholders) { + List commands = new ArrayList<>(action.normalizedCommands()); + String singleCommand = action.normalizedCommand(); + if (!singleCommand.isEmpty()) { + commands.add(singleCommand); + } + + for (String command : commands) { + String applied = applyPlaceholders(command, placeholders); + if (!applied.isEmpty()) { + server.getCommands().performPrefixedCommand(server.createCommandSourceStack().withSuppressedOutput(), applied); + } + } + } + + private Map placeholders(MinecraftServer server, EventDefinition event, String reason) { + Map values = new HashMap<>(); + List players = server.getPlayerList().getPlayers(); + ZonedDateTime now = ZonedDateTime.now(); + + values.put("event", event.normalizedId()); + values.put("reason", reason); + values.put("online", Integer.toString(server.getPlayerCount())); + values.put("max_players", Integer.toString(server.getPlayerList().getMaxPlayers())); + values.put("server_tick", Integer.toString(server.getTickCount())); + values.put("minecraft_time", Long.toString(readMinecraftDayTick(server).orElse(0L))); + values.put("date", now.toLocalDate().toString()); + values.put("time", now.toLocalTime().withNano(0).toString()); + values.put("random_player", players.isEmpty() ? "personne" : players.get(ThreadLocalRandom.current().nextInt(players.size())).getName().getString()); + return values; + } + + private String applyPlaceholders(String input, Map placeholders) { + String output = Objects.requireNonNullElse(input, ""); + for (Map.Entry entry : placeholders.entrySet()) { + output = output.replace("{" + entry.getKey() + "}", entry.getValue()); + } + return output; + } + + private Optional readMinecraftDayTick(MinecraftServer server) { + try { + Holder overworldClock = server.registryAccess() + .lookupOrThrow(Registries.WORLD_CLOCK) + .getOrThrow(WorldClocks.OVERWORLD); + return Optional.of(Math.floorMod(server.clockManager().getTotalTicks(overworldClock), MINECRAFT_DAY_TICKS)); + } catch (RuntimeException exception) { + EventsMod.LOGGER.warn("Events: impossible de lire l'heure Minecraft.", exception); + return Optional.empty(); + } + } + + private static ZoneId zoneFor(String rawZone) { + String zone = Objects.requireNonNullElse(rawZone, "system").strip(); + if (zone.isEmpty() || zone.equalsIgnoreCase("system")) { + return ZoneId.systemDefault(); + } + + try { + return ZoneId.of(zone); + } catch (DateTimeException exception) { + EventsMod.LOGGER.warn("Events: timezone invalide '{}', timezone systeme utilisee.", rawZone); + return ZoneId.systemDefault(); + } + } + + private static boolean crossedMinecraftTick(long previousTick, long currentTick, long targetTick) { + if (previousTick == currentTick) { + return false; + } + + if (previousTick < currentTick) { + return previousTick < targetTick && targetTick <= currentTick; + } + + return targetTick > previousTick || targetTick <= currentTick; + } +} diff --git a/Multiplayer/events/src/main/resources/assets/events/lang/en_us.json b/Multiplayer/events/src/main/resources/assets/events/lang/en_us.json new file mode 100644 index 0000000..48f5cd4 --- /dev/null +++ b/Multiplayer/events/src/main/resources/assets/events/lang/en_us.json @@ -0,0 +1,3 @@ +{ + "events.mod": "Events" +} diff --git a/Multiplayer/events/src/main/resources/assets/events/lang/fr_fr.json b/Multiplayer/events/src/main/resources/assets/events/lang/fr_fr.json new file mode 100644 index 0000000..48f5cd4 --- /dev/null +++ b/Multiplayer/events/src/main/resources/assets/events/lang/fr_fr.json @@ -0,0 +1,3 @@ +{ + "events.mod": "Events" +} diff --git a/Multiplayer/events/src/main/resources/fabric.mod.json b/Multiplayer/events/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..cb8c9dd --- /dev/null +++ b/Multiplayer/events/src/main/resources/fabric.mod.json @@ -0,0 +1,23 @@ +{ + "schemaVersion": 1, + "id": "events", + "version": "${version}", + "name": "Events", + "description": "A small multiplayer server automation engine for timed messages, commands, titles, actionbars, and sounds.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.events.EventsMod" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Redstone/adresseur/.gitignore b/Redstone/adresseur/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Redstone/adresseur/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Redstone/adresseur/build.gradle b/Redstone/adresseur/build.gradle new file mode 100644 index 0000000..c9dcc5c --- /dev/null +++ b/Redstone/adresseur/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "adresseur" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Redstone/adresseur/gradle.properties b/Redstone/adresseur/gradle.properties new file mode 100644 index 0000000..17662b3 --- /dev/null +++ b/Redstone/adresseur/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=adresseur + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Redstone/adresseur/gradle/wrapper/gradle-wrapper.jar b/Redstone/adresseur/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Redstone/adresseur/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Redstone/adresseur/gradle/wrapper/gradle-wrapper.properties b/Redstone/adresseur/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Redstone/adresseur/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Redstone/adresseur/gradlew b/Redstone/adresseur/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Redstone/adresseur/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Redstone/adresseur/gradlew.bat b/Redstone/adresseur/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Redstone/adresseur/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Redstone/adresseur/settings.gradle b/Redstone/adresseur/settings.gradle new file mode 100644 index 0000000..edd50ea --- /dev/null +++ b/Redstone/adresseur/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "adresseur" diff --git a/Redstone/adresseur/src/client/java/fr/koka99cab/adresseur/client/AdresseurClient.java b/Redstone/adresseur/src/client/java/fr/koka99cab/adresseur/client/AdresseurClient.java new file mode 100644 index 0000000..4ca8c74 --- /dev/null +++ b/Redstone/adresseur/src/client/java/fr/koka99cab/adresseur/client/AdresseurClient.java @@ -0,0 +1,11 @@ +package fr.koka99cab.adresseur.client; + +import net.fabricmc.api.ClientModInitializer; +import fr.koka99cab.adresseur.AdresseurMod; + +public class AdresseurClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + AdresseurMod.LOGGER.info("Adresseur client initialise."); + } +} diff --git a/Redstone/adresseur/src/main/java/fr/koka99cab/adresseur/AdresseurMod.java b/Redstone/adresseur/src/main/java/fr/koka99cab/adresseur/AdresseurMod.java new file mode 100644 index 0000000..800a039 --- /dev/null +++ b/Redstone/adresseur/src/main/java/fr/koka99cab/adresseur/AdresseurMod.java @@ -0,0 +1,15 @@ +package fr.koka99cab.adresseur; + +import net.fabricmc.api.ModInitializer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class AdresseurMod implements ModInitializer { + public static final String MOD_ID = "adresseur"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + LOGGER.info("Adresseur charge pour Minecraft 26.1.2."); + } +} diff --git a/Redstone/adresseur/src/main/resources/assets/adresseur/lang/en_us.json b/Redstone/adresseur/src/main/resources/assets/adresseur/lang/en_us.json new file mode 100644 index 0000000..aa70dbc --- /dev/null +++ b/Redstone/adresseur/src/main/resources/assets/adresseur/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.adresseur": "Adresseur", + "modmenu.descriptionTranslation.adresseur": "Example Fabric mod for the Hello World mod collection." +} diff --git a/Redstone/adresseur/src/main/resources/assets/adresseur/lang/fr_fr.json b/Redstone/adresseur/src/main/resources/assets/adresseur/lang/fr_fr.json new file mode 100644 index 0000000..952a007 --- /dev/null +++ b/Redstone/adresseur/src/main/resources/assets/adresseur/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.adresseur": "Adresseur", + "modmenu.descriptionTranslation.adresseur": "Mod Fabric exemple pour la collection de mods Hello World." +} diff --git a/Redstone/adresseur/src/main/resources/fabric.mod.json b/Redstone/adresseur/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..1b2985b --- /dev/null +++ b/Redstone/adresseur/src/main/resources/fabric.mod.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "id": "adresseur", + "version": "${version}", + "name": "Adresseur", + "description": "Mod Fabric exemple pour la collection de mods Hello World.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.adresseur.AdresseurMod" + ], + "client": [ + "fr.koka99cab.adresseur.client.AdresseurClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Redstone/drawer/.gitignore b/Redstone/drawer/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Redstone/drawer/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Redstone/drawer/build.gradle b/Redstone/drawer/build.gradle new file mode 100644 index 0000000..bc2f918 --- /dev/null +++ b/Redstone/drawer/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "drawer" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Redstone/drawer/gradle.properties b/Redstone/drawer/gradle.properties new file mode 100644 index 0000000..9275d9b --- /dev/null +++ b/Redstone/drawer/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=drawer + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Redstone/drawer/gradle/wrapper/gradle-wrapper.jar b/Redstone/drawer/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Redstone/drawer/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Redstone/drawer/gradle/wrapper/gradle-wrapper.properties b/Redstone/drawer/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Redstone/drawer/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Redstone/drawer/gradlew b/Redstone/drawer/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Redstone/drawer/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Redstone/drawer/gradlew.bat b/Redstone/drawer/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Redstone/drawer/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Redstone/drawer/settings.gradle b/Redstone/drawer/settings.gradle new file mode 100644 index 0000000..a53ec7d --- /dev/null +++ b/Redstone/drawer/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "drawer" diff --git a/Redstone/drawer/src/client/java/fr/koka99cab/drawer/client/DrawerClient.java b/Redstone/drawer/src/client/java/fr/koka99cab/drawer/client/DrawerClient.java new file mode 100644 index 0000000..359a8c0 --- /dev/null +++ b/Redstone/drawer/src/client/java/fr/koka99cab/drawer/client/DrawerClient.java @@ -0,0 +1,14 @@ +package fr.koka99cab.drawer.client; + +import fr.koka99cab.drawer.DrawerMod; +import fr.koka99cab.drawer.client.render.DrawerBlockEntityRenderer; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.rendering.v1.BlockEntityRendererRegistry; + +public class DrawerClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + BlockEntityRendererRegistry.register(DrawerMod.DRAWER_BLOCK_ENTITY, DrawerBlockEntityRenderer::new); + DrawerMod.LOGGER.info("Drawer client initialise."); + } +} diff --git a/Redstone/drawer/src/client/java/fr/koka99cab/drawer/client/render/DrawerBlockEntityRenderer.java b/Redstone/drawer/src/client/java/fr/koka99cab/drawer/client/render/DrawerBlockEntityRenderer.java new file mode 100644 index 0000000..3c2cf3c --- /dev/null +++ b/Redstone/drawer/src/client/java/fr/koka99cab/drawer/client/render/DrawerBlockEntityRenderer.java @@ -0,0 +1,97 @@ +package fr.koka99cab.drawer.client.render; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.math.Axis; +import fr.koka99cab.drawer.block.DrawerBlock; +import fr.koka99cab.drawer.block.entity.DrawerBlockEntity; +import fr.koka99cab.drawer.client.render.state.DrawerRenderState; +import net.minecraft.client.gui.Font; +import net.minecraft.client.renderer.SubmitNodeCollector; +import net.minecraft.client.renderer.blockentity.BlockEntityRenderer; +import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; +import net.minecraft.client.renderer.feature.ModelFeatureRenderer; +import net.minecraft.client.renderer.item.ItemModelResolver; +import net.minecraft.client.renderer.state.level.CameraRenderState; +import net.minecraft.client.renderer.texture.OverlayTexture; +import net.minecraft.core.Direction; +import net.minecraft.network.chat.Component; +import net.minecraft.util.FormattedCharSequence; +import net.minecraft.world.item.ItemDisplayContext; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.phys.Vec3; + +public class DrawerBlockEntityRenderer implements BlockEntityRenderer { + private final ItemModelResolver itemModelResolver; + private final Font font; + + public DrawerBlockEntityRenderer(BlockEntityRendererProvider.Context context) { + this.itemModelResolver = context.itemModelResolver(); + this.font = context.font(); + } + + @Override + public DrawerRenderState createRenderState() { + return new DrawerRenderState(); + } + + @Override + public void extractRenderState(DrawerBlockEntity drawer, DrawerRenderState state, float tickProgress, Vec3 cameraPos, ModelFeatureRenderer.CrumblingOverlay crumblingOverlay) { + BlockEntityRenderer.super.extractRenderState(drawer, state, tickProgress, cameraPos, crumblingOverlay); + state.facing = drawer.getBlockState().getValue(DrawerBlock.FACING); + state.hasItem = !drawer.isEmpty(); + state.countText = state.hasItem ? formatCount(drawer.getStoredCount()) : ""; + state.item.clear(); + + ItemStack stack = drawer.getStoredItem(); + if (!stack.isEmpty()) { + itemModelResolver.updateForTopItem(state.item, stack, ItemDisplayContext.FIXED, drawer.level(), drawer, (int) drawer.getBlockPos().asLong()); + } + } + + @Override + public void submit(DrawerRenderState state, PoseStack poseStack, SubmitNodeCollector submitNodeCollector, CameraRenderState cameraRenderState) { + if (!state.hasItem) { + return; + } + + float yRotation = state.facing.getAxis().isHorizontal() ? -state.facing.toYRot() : 180.0F; + submitItem(state, poseStack, submitNodeCollector, yRotation); + submitCounter(state, poseStack, submitNodeCollector, yRotation); + } + + private void submitItem(DrawerRenderState state, PoseStack poseStack, SubmitNodeCollector submitNodeCollector, float yRotation) { + poseStack.pushPose(); + poseStack.translate(0.5F, 0.53F, 0.5F); + poseStack.mulPose(Axis.YP.rotationDegrees(yRotation)); + poseStack.translate(0.0F, 0.0F, -0.515F); + poseStack.scale(0.48F, 0.48F, 0.48F); + state.item.submit(poseStack, submitNodeCollector, state.lightCoords, OverlayTexture.NO_OVERLAY, 0); + poseStack.popPose(); + } + + private void submitCounter(DrawerRenderState state, PoseStack poseStack, SubmitNodeCollector submitNodeCollector, float yRotation) { + FormattedCharSequence text = Component.literal(state.countText).getVisualOrderText(); + float x = -font.width(text) / 2.0F; + + poseStack.pushPose(); + poseStack.translate(0.5F, 0.82F, 0.5F); + poseStack.mulPose(Axis.YP.rotationDegrees(yRotation)); + poseStack.translate(0.0F, 0.0F, -0.526F); + poseStack.scale(0.012F, -0.012F, 0.012F); + submitNodeCollector.submitText(poseStack, x, 0.0F, text, false, Font.DisplayMode.POLYGON_OFFSET, 0xFFFFFF, state.lightCoords, 0, 0x202020); + poseStack.popPose(); + } + + private static String formatCount(long count) { + if (count >= 1_000_000_000L) { + return (count / 1_000_000_000L) + "G"; + } + if (count >= 1_000_000L) { + return (count / 1_000_000L) + "M"; + } + if (count >= 1_000L) { + return (count / 1_000L) + "K"; + } + return Long.toString(count); + } +} diff --git a/Redstone/drawer/src/client/java/fr/koka99cab/drawer/client/render/state/DrawerRenderState.java b/Redstone/drawer/src/client/java/fr/koka99cab/drawer/client/render/state/DrawerRenderState.java new file mode 100644 index 0000000..d2d3996 --- /dev/null +++ b/Redstone/drawer/src/client/java/fr/koka99cab/drawer/client/render/state/DrawerRenderState.java @@ -0,0 +1,12 @@ +package fr.koka99cab.drawer.client.render.state; + +import net.minecraft.client.renderer.blockentity.state.BlockEntityRenderState; +import net.minecraft.client.renderer.item.ItemStackRenderState; +import net.minecraft.core.Direction; + +public class DrawerRenderState extends BlockEntityRenderState { + public final ItemStackRenderState item = new ItemStackRenderState(); + public Direction facing = Direction.NORTH; + public boolean hasItem; + public String countText = ""; +} diff --git a/Redstone/drawer/src/main/java/fr/koka99cab/drawer/DrawerMod.java b/Redstone/drawer/src/main/java/fr/koka99cab/drawer/DrawerMod.java new file mode 100644 index 0000000..4afb029 --- /dev/null +++ b/Redstone/drawer/src/main/java/fr/koka99cab/drawer/DrawerMod.java @@ -0,0 +1,106 @@ +package fr.koka99cab.drawer; + +import fr.koka99cab.drawer.block.DrawerBlock; +import fr.koka99cab.drawer.block.entity.DrawerBlockEntity; +import net.fabricmc.fabric.api.event.player.AttackBlockCallback; +import net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityTypeBuilder; +import net.fabricmc.api.ModInitializer; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.CreativeModeTab; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.SoundType; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockBehaviour; +import net.minecraft.world.level.material.MapColor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class DrawerMod implements ModInitializer { + public static final String MOD_ID = "drawer"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + public static final Block DRAWER_BLOCK = registerBlock("drawer", new DrawerBlock(BlockBehaviour.Properties.of() + .mapColor(MapColor.WOOD) + .strength(2.5F) + .sound(SoundType.WOOD) + .ignitedByLava() + .setId(blockKey("drawer")))); + + public static final Item DRAWER_ITEM = registerItem("drawer", new BlockItem(DRAWER_BLOCK, new Item.Properties() + .useBlockDescriptionPrefix() + .setId(itemKey("drawer")))); + + public static final BlockEntityType DRAWER_BLOCK_ENTITY = Registry.register( + BuiltInRegistries.BLOCK_ENTITY_TYPE, + id("drawer"), + FabricBlockEntityTypeBuilder.create(DrawerBlockEntity::new, DRAWER_BLOCK).build()); + + public static final CreativeModeTab DRAWER_TAB = Registry.register( + BuiltInRegistries.CREATIVE_MODE_TAB, + ResourceKey.create(Registries.CREATIVE_MODE_TAB, id("drawer")), + CreativeModeTab.builder(CreativeModeTab.Row.TOP, 0) + .title(Component.translatable("itemGroup.drawer.drawer")) + .icon(() -> new ItemStack(DRAWER_ITEM)) + .displayItems((parameters, output) -> output.accept(DRAWER_ITEM)) + .build()); + + @Override + public void onInitialize() { + registerAttackInteraction(); + LOGGER.info("Drawer charge pour Minecraft 26.1.2."); + } + + public static Identifier id(String path) { + return Identifier.fromNamespaceAndPath(MOD_ID, path); + } + + private static ResourceKey blockKey(String path) { + return ResourceKey.create(Registries.BLOCK, id(path)); + } + + private static ResourceKey itemKey(String path) { + return ResourceKey.create(Registries.ITEM, id(path)); + } + + private static Block registerBlock(String path, Block block) { + return Registry.register(BuiltInRegistries.BLOCK, blockKey(path), block); + } + + private static Item registerItem(String path, Item item) { + return Registry.register(BuiltInRegistries.ITEM, itemKey(path), item); + } + + private static void registerAttackInteraction() { + AttackBlockCallback.EVENT.register((player, level, hand, pos, direction) -> { + if (hand != InteractionHand.MAIN_HAND || !player.getItemInHand(hand).isEmpty()) { + return InteractionResult.PASS; + } + + if (!(level.getBlockState(pos).getBlock() instanceof DrawerBlock)) { + return InteractionResult.PASS; + } + + if (level.isClientSide()) { + return InteractionResult.SUCCESS; + } + + if (level.getBlockEntity(pos) instanceof DrawerBlockEntity drawer) { + int requested = player.isSecondaryUseActive() ? drawer.getStoredStackLimit() : 1; + DrawerBlock.extractToPlayer(drawer, player, requested); + player.swing(hand, true); + } + + return InteractionResult.SUCCESS_SERVER; + }); + } +} diff --git a/Redstone/drawer/src/main/java/fr/koka99cab/drawer/block/DrawerBlock.java b/Redstone/drawer/src/main/java/fr/koka99cab/drawer/block/DrawerBlock.java new file mode 100644 index 0000000..6f46ffc --- /dev/null +++ b/Redstone/drawer/src/main/java/fr/koka99cab/drawer/block/DrawerBlock.java @@ -0,0 +1,137 @@ +package fr.koka99cab.drawer.block; + +import com.mojang.serialization.MapCodec; +import fr.koka99cab.drawer.block.entity.DrawerBlockEntity; +import java.util.List; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.HolderLookup; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.context.BlockPlaceContext; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.BaseEntityBlock; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Mirror; +import net.minecraft.world.level.block.RenderShape; +import net.minecraft.world.level.block.Rotation; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.level.block.state.properties.BlockStateProperties; +import net.minecraft.world.level.block.state.properties.EnumProperty; +import net.minecraft.world.level.storage.loot.LootParams; +import net.minecraft.world.level.storage.loot.parameters.LootContextParams; +import net.minecraft.world.phys.BlockHitResult; + +public class DrawerBlock extends BaseEntityBlock { + public static final MapCodec CODEC = simpleCodec(DrawerBlock::new); + public static final EnumProperty FACING = BlockStateProperties.HORIZONTAL_FACING; + + public DrawerBlock(Properties properties) { + super(properties); + registerDefaultState(stateDefinition.any().setValue(FACING, Direction.NORTH)); + } + + @Override + public MapCodec codec() { + return CODEC; + } + + @Override + public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { + return new DrawerBlockEntity(pos, state); + } + + @Override + protected RenderShape getRenderShape(BlockState state) { + return RenderShape.MODEL; + } + + @Override + public BlockState getStateForPlacement(BlockPlaceContext context) { + return defaultBlockState().setValue(FACING, context.getHorizontalDirection().getOpposite()); + } + + @Override + protected void createBlockStateDefinition(StateDefinition.Builder builder) { + builder.add(FACING); + } + + @Override + protected BlockState rotate(BlockState state, Rotation rotation) { + return state.setValue(FACING, rotation.rotate(state.getValue(FACING))); + } + + @Override + protected BlockState mirror(BlockState state, Mirror mirror) { + return state.rotate(mirror.getRotation(state.getValue(FACING))); + } + + @Override + protected InteractionResult useItemOn(ItemStack stack, BlockState state, Level level, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { + if (stack.isEmpty() || !(level.getBlockEntity(pos) instanceof DrawerBlockEntity drawer)) { + return InteractionResult.PASS; + } + + if (level.isClientSide()) { + return InteractionResult.SUCCESS; + } + + int requested = player.isSecondaryUseActive() ? stack.getCount() : 1; + int inserted = drawer.insert(stack, requested); + if (inserted <= 0) { + return InteractionResult.CONSUME; + } + + if (!player.isCreative()) { + stack.shrink(inserted); + } + + return InteractionResult.SUCCESS_SERVER; + } + + @Override + protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hit) { + if (!(level.getBlockEntity(pos) instanceof DrawerBlockEntity drawer)) { + return InteractionResult.PASS; + } + + if (level.isClientSide()) { + return InteractionResult.SUCCESS; + } + + int requested = player.isSecondaryUseActive() ? drawer.getStoredStackLimit() : 1; + return extractToPlayer(drawer, player, requested) ? InteractionResult.SUCCESS_SERVER : InteractionResult.CONSUME; + } + + @Override + protected List getDrops(BlockState state, LootParams.Builder params) { + List drops = super.getDrops(state, params); + BlockEntity blockEntity = params.getOptionalParameter(LootContextParams.BLOCK_ENTITY); + if (blockEntity instanceof DrawerBlockEntity drawer && !drawer.isEmpty()) { + HolderLookup.Provider lookup = params.getLevel().registryAccess(); + for (ItemStack drop : drops) { + if (drop.getItem() == asItem()) { + drawer.saveToItem(drop, lookup); + break; + } + } + } + return drops; + } + + public static boolean extractToPlayer(DrawerBlockEntity drawer, Player player, int requested) { + ItemStack extracted = drawer.extract(requested); + if (extracted.isEmpty()) { + return false; + } + + if (!player.addItem(extracted)) { + player.drop(extracted, false); + } + return true; + } +} diff --git a/Redstone/drawer/src/main/java/fr/koka99cab/drawer/block/entity/DrawerBlockEntity.java b/Redstone/drawer/src/main/java/fr/koka99cab/drawer/block/entity/DrawerBlockEntity.java new file mode 100644 index 0000000..68ef575 --- /dev/null +++ b/Redstone/drawer/src/main/java/fr/koka99cab/drawer/block/entity/DrawerBlockEntity.java @@ -0,0 +1,151 @@ +package fr.koka99cab.drawer.block.entity; + +import fr.koka99cab.drawer.DrawerMod; +import fr.koka99cab.drawer.block.DrawerBlock; +import net.minecraft.core.BlockPos; +import net.minecraft.core.HolderLookup; +import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.game.ClientGamePacketListener; +import net.minecraft.network.protocol.game.ClientboundBlockEntityDataPacket; +import net.minecraft.util.ProblemReporter; +import net.minecraft.world.entity.ItemOwner; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.storage.TagValueOutput; +import net.minecraft.world.level.storage.ValueInput; +import net.minecraft.world.level.storage.ValueOutput; +import net.minecraft.world.phys.Vec3; + +public class DrawerBlockEntity extends BlockEntity implements ItemOwner { + private ItemStack storedItem = ItemStack.EMPTY; + private long storedCount; + + public DrawerBlockEntity(BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(DrawerMod.DRAWER_BLOCK_ENTITY, pos, state); + } + + public boolean isEmpty() { + return storedCount <= 0 || storedItem.isEmpty(); + } + + public ItemStack getStoredItem() { + return isEmpty() ? ItemStack.EMPTY : storedItem.copyWithCount(1); + } + + public long getStoredCount() { + return isEmpty() ? 0 : storedCount; + } + + public int getStoredStackLimit() { + return isEmpty() ? 0 : storedItem.getItem().getDefaultMaxStackSize(); + } + + public int insert(ItemStack source, int requested) { + if (source.isEmpty() || requested <= 0 || !canAccept(source)) { + return 0; + } + + int inserted = Math.min(requested, source.getCount()); + if (isEmpty()) { + storedItem = source.copyWithCount(1); + } + + storedCount = saturatedAdd(storedCount, inserted); + sync(); + return inserted; + } + + public ItemStack extract(int requested) { + if (isEmpty() || requested <= 0) { + return ItemStack.EMPTY; + } + + int extracted = (int) Math.min(Math.min((long) requested, storedCount), (long) getStoredStackLimit()); + ItemStack result = storedItem.copyWithCount(extracted); + storedCount -= extracted; + if (storedCount <= 0) { + clear(); + } else { + sync(); + } + return result; + } + + public void saveToItem(ItemStack stack, HolderLookup.Provider lookup) { + TagValueOutput output = TagValueOutput.createWithContext(ProblemReporter.DISCARDING, lookup); + saveCustomOnly(output); + BlockItem.setBlockEntityData(stack, DrawerMod.DRAWER_BLOCK_ENTITY, output); + } + + @Override + protected void saveAdditional(ValueOutput output) { + super.saveAdditional(output); + if (!isEmpty()) { + output.store("StoredItem", ItemStack.CODEC, storedItem.copyWithCount(1)); + output.putLong("StoredCount", storedCount); + } + } + + @Override + protected void loadAdditional(ValueInput input) { + super.loadAdditional(input); + storedItem = input.read("StoredItem", ItemStack.CODEC).map(stack -> stack.copyWithCount(1)).orElse(ItemStack.EMPTY); + storedCount = input.getLongOr("StoredCount", 0); + if (storedCount <= 0 || storedItem.isEmpty()) { + storedItem = ItemStack.EMPTY; + storedCount = 0; + } + } + + @Override + public Packet getUpdatePacket() { + return ClientboundBlockEntityDataPacket.create(this); + } + + @Override + public net.minecraft.nbt.CompoundTag getUpdateTag(HolderLookup.Provider lookup) { + return saveCustomOnly(lookup); + } + + @Override + public Level level() { + return level; + } + + @Override + public Vec3 position() { + return Vec3.atCenterOf(worldPosition); + } + + @Override + public float getVisualRotationYInDegrees() { + return getBlockState().getValue(DrawerBlock.FACING).toYRot(); + } + + private boolean canAccept(ItemStack source) { + return isEmpty() || ItemStack.isSameItemSameComponents(storedItem, source); + } + + private void clear() { + storedItem = ItemStack.EMPTY; + storedCount = 0; + sync(); + } + + private void sync() { + setChanged(); + if (level != null) { + level.sendBlockUpdated(worldPosition, getBlockState(), getBlockState(), Block.UPDATE_CLIENTS); + } + } + + private static long saturatedAdd(long left, int right) { + if (Long.MAX_VALUE - left < right) { + return Long.MAX_VALUE; + } + return left + right; + } +} diff --git a/Redstone/drawer/src/main/resources/assets/drawer/blockstates/drawer.json b/Redstone/drawer/src/main/resources/assets/drawer/blockstates/drawer.json new file mode 100644 index 0000000..5c53d46 --- /dev/null +++ b/Redstone/drawer/src/main/resources/assets/drawer/blockstates/drawer.json @@ -0,0 +1,19 @@ +{ + "variants": { + "facing=east": { + "model": "drawer:block/drawer", + "y": 90 + }, + "facing=north": { + "model": "drawer:block/drawer" + }, + "facing=south": { + "model": "drawer:block/drawer", + "y": 180 + }, + "facing=west": { + "model": "drawer:block/drawer", + "y": 270 + } + } +} diff --git a/Redstone/drawer/src/main/resources/assets/drawer/items/drawer.json b/Redstone/drawer/src/main/resources/assets/drawer/items/drawer.json new file mode 100644 index 0000000..deed7ef --- /dev/null +++ b/Redstone/drawer/src/main/resources/assets/drawer/items/drawer.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "drawer:block/drawer" + } +} diff --git a/Redstone/drawer/src/main/resources/assets/drawer/lang/en_us.json b/Redstone/drawer/src/main/resources/assets/drawer/lang/en_us.json new file mode 100644 index 0000000..a124e80 --- /dev/null +++ b/Redstone/drawer/src/main/resources/assets/drawer/lang/en_us.json @@ -0,0 +1,6 @@ +{ + "block.drawer.drawer": "Drawer", + "itemGroup.drawer.drawer": "Drawer", + "modmenu.nameTranslation.drawer": "Drawer", + "modmenu.descriptionTranslation.drawer": "Unlimited storage barrel with item preview and counter." +} diff --git a/Redstone/drawer/src/main/resources/assets/drawer/lang/fr_fr.json b/Redstone/drawer/src/main/resources/assets/drawer/lang/fr_fr.json new file mode 100644 index 0000000..a2f4905 --- /dev/null +++ b/Redstone/drawer/src/main/resources/assets/drawer/lang/fr_fr.json @@ -0,0 +1,6 @@ +{ + "block.drawer.drawer": "Drawer", + "itemGroup.drawer.drawer": "Drawer", + "modmenu.nameTranslation.drawer": "Drawer", + "modmenu.descriptionTranslation.drawer": "Baril de stockage illimite avec apercu et compteur." +} diff --git a/Redstone/drawer/src/main/resources/assets/drawer/models/block/drawer.json b/Redstone/drawer/src/main/resources/assets/drawer/models/block/drawer.json new file mode 100644 index 0000000..3bc549a --- /dev/null +++ b/Redstone/drawer/src/main/resources/assets/drawer/models/block/drawer.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/orientable", + "textures": { + "front": "minecraft:block/barrel_top", + "side": "minecraft:block/barrel_side", + "top": "minecraft:block/barrel_side" + } +} diff --git a/Redstone/drawer/src/main/resources/data/drawer/loot_table/blocks/drawer.json b/Redstone/drawer/src/main/resources/data/drawer/loot_table/blocks/drawer.json new file mode 100644 index 0000000..c7f3876 --- /dev/null +++ b/Redstone/drawer/src/main/resources/data/drawer/loot_table/blocks/drawer.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "drawer:drawer" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "drawer:blocks/drawer" +} diff --git a/Redstone/drawer/src/main/resources/fabric.mod.json b/Redstone/drawer/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..1cdfc9b --- /dev/null +++ b/Redstone/drawer/src/main/resources/fabric.mod.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "id": "drawer", + "version": "${version}", + "name": "Drawer", + "description": "Baril de stockage illimite avec apercu et compteur.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.drawer.DrawerMod" + ], + "client": [ + "fr.koka99cab.drawer.client.DrawerClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Techniques/voidloop/.gitignore b/Techniques/voidloop/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Techniques/voidloop/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Techniques/voidloop/build.gradle b/Techniques/voidloop/build.gradle new file mode 100644 index 0000000..c7bbdc1 --- /dev/null +++ b/Techniques/voidloop/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "voidloop" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Techniques/voidloop/gradle.properties b/Techniques/voidloop/gradle.properties new file mode 100644 index 0000000..4322c3c --- /dev/null +++ b/Techniques/voidloop/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=voidloop + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Techniques/voidloop/gradle/wrapper/gradle-wrapper.jar b/Techniques/voidloop/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Techniques/voidloop/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Techniques/voidloop/gradle/wrapper/gradle-wrapper.properties b/Techniques/voidloop/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Techniques/voidloop/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Techniques/voidloop/gradlew b/Techniques/voidloop/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Techniques/voidloop/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Techniques/voidloop/gradlew.bat b/Techniques/voidloop/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Techniques/voidloop/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Techniques/voidloop/settings.gradle b/Techniques/voidloop/settings.gradle new file mode 100644 index 0000000..b5ad7d6 --- /dev/null +++ b/Techniques/voidloop/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "voidloop" diff --git a/Techniques/voidloop/src/client/java/fr/koka99cab/voidloop/client/VoidloopClient.java b/Techniques/voidloop/src/client/java/fr/koka99cab/voidloop/client/VoidloopClient.java new file mode 100644 index 0000000..e03d53c --- /dev/null +++ b/Techniques/voidloop/src/client/java/fr/koka99cab/voidloop/client/VoidloopClient.java @@ -0,0 +1,11 @@ +package fr.koka99cab.voidloop.client; + +import net.fabricmc.api.ClientModInitializer; +import fr.koka99cab.voidloop.VoidloopMod; + +public class VoidloopClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + VoidloopMod.LOGGER.info("Voidloop client initialise."); + } +} diff --git a/Techniques/voidloop/src/main/java/fr/koka99cab/voidloop/VoidloopMod.java b/Techniques/voidloop/src/main/java/fr/koka99cab/voidloop/VoidloopMod.java new file mode 100644 index 0000000..46a1b11 --- /dev/null +++ b/Techniques/voidloop/src/main/java/fr/koka99cab/voidloop/VoidloopMod.java @@ -0,0 +1,15 @@ +package fr.koka99cab.voidloop; + +import net.fabricmc.api.ModInitializer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class VoidloopMod implements ModInitializer { + public static final String MOD_ID = "voidloop"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + LOGGER.info("Voidloop charge pour Minecraft 26.1.2."); + } +} diff --git a/Techniques/voidloop/src/main/resources/assets/voidloop/lang/en_us.json b/Techniques/voidloop/src/main/resources/assets/voidloop/lang/en_us.json new file mode 100644 index 0000000..c5cb41f --- /dev/null +++ b/Techniques/voidloop/src/main/resources/assets/voidloop/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.voidloop": "Voidloop", + "modmenu.descriptionTranslation.voidloop": "Example Fabric mod for the Hello World mod collection." +} diff --git a/Techniques/voidloop/src/main/resources/assets/voidloop/lang/fr_fr.json b/Techniques/voidloop/src/main/resources/assets/voidloop/lang/fr_fr.json new file mode 100644 index 0000000..35ee5d4 --- /dev/null +++ b/Techniques/voidloop/src/main/resources/assets/voidloop/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.voidloop": "Voidloop", + "modmenu.descriptionTranslation.voidloop": "Mod Fabric exemple pour la collection de mods Hello World." +} diff --git a/Techniques/voidloop/src/main/resources/fabric.mod.json b/Techniques/voidloop/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..2d675f9 --- /dev/null +++ b/Techniques/voidloop/src/main/resources/fabric.mod.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "id": "voidloop", + "version": "${version}", + "name": "Voidloop", + "description": "Mod Fabric exemple pour la collection de mods Hello World.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.voidloop.VoidloopMod" + ], + "client": [ + "fr.koka99cab.voidloop.client.VoidloopClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Transport/ibelievechickenfly/.gitignore b/Transport/ibelievechickenfly/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Transport/ibelievechickenfly/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Transport/ibelievechickenfly/LICENSE b/Transport/ibelievechickenfly/LICENSE new file mode 100644 index 0000000..489b435 --- /dev/null +++ b/Transport/ibelievechickenfly/LICENSE @@ -0,0 +1,168 @@ +IBelieveChickenFly is licensed by KOKA99CAB under the GNU Lesser General +Public License, version 3.0 or later. + + GNU LESSER GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + + This version of the GNU Lesser General Public License incorporates +the terms and conditions of version 3 of the GNU General Public +License, supplemented by the additional permissions listed below. + + 0. Additional Definitions. + + As used herein, "this License" refers to version 3 of the GNU Lesser +General Public License, and the "GNU GPL" refers to version 3 of the GNU +General Public License. + + "The Library" refers to a covered work governed by this License, +other than an Application or a Combined Work as defined below. + + An "Application" is any work that makes use of an interface provided +by the Library, but which is not otherwise based on the Library. +Defining a subclass of a class defined by the Library is deemed a mode +of using an interface provided by the Library. + + A "Combined Work" is a work produced by combining or linking an +Application with the Library. The particular version of the Library +with which the Combined Work was made is also called the "Linked +Version". + + The "Minimal Corresponding Source" for a Combined Work means the +Corresponding Source for the Combined Work, excluding any source code +for portions of the Combined Work that, considered in isolation, are +based on the Application, and not on the Linked Version. + + The "Corresponding Application Code" for a Combined Work means the +object code and/or source code for the Application, including any data +and utility programs needed for reproducing the Combined Work from the +Application, but excluding the System Libraries of the Combined Work. + + 1. Exception to Section 3 of the GNU GPL. + + You may convey a covered work under sections 3 and 4 of this License +without being bound by section 3 of the GNU GPL. + + 2. Conveying Modified Versions. + + If you modify a copy of the Library, and, in your modifications, a +facility refers to a function or data to be supplied by an Application +that uses the facility (other than as an argument passed when the +facility is invoked), then you may convey a copy of the modified +version: + + a) under this License, provided that you make a good faith effort to + ensure that, in the event an Application does not supply the + function or data, the facility still operates, and performs + whatever part of its purpose remains meaningful, or + + b) under the GNU GPL, with none of the additional permissions of + this License applicable to that copy. + + 3. Object Code Incorporating Material from Library Header Files. + + The object code form of an Application may incorporate material from +a header file that is part of the Library. You may convey such object +code under terms of your choice, provided that, if the incorporated +material is not limited to numerical parameters, data structure +layouts and accessors, or small macros, inline functions and templates +(ten or fewer lines in length), you do both of the following: + + a) Give prominent notice with each copy of the object code that the + Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the object code with a copy of the GNU GPL and this license + document. + + 4. Combined Works. + + You may convey a Combined Work under terms of your choice that, +taken together, effectively do not restrict modification of the +portions of the Library contained in the Combined Work and reverse +engineering for debugging such modifications, if you also do each of +the following: + + a) Give prominent notice with each copy of the Combined Work that + the Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the Combined Work with a copy of the GNU GPL and this license + document. + + c) For a Combined Work that displays copyright notices during + execution, include the copyright notice for the Library among + these notices, as well as a reference directing the user to the + copies of the GNU GPL and this license document. + + d) Do one of the following: + + 0) Convey the Minimal Corresponding Source under the terms of this + License, and the Corresponding Application Code in a form + suitable for, and under terms that permit, the user to + recombine or relink the Application with a modified version of + the Linked Version to produce a modified Combined Work, in the + manner specified by section 6 of the GNU GPL for conveying + Corresponding Source. + + 1) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (a) uses at run time + a copy of the Library already present on the user's computer + system, and (b) will operate properly with a modified version + of the Library that is interface-compatible with the Linked + Version. + + e) Provide Installation Information, but only if you would otherwise + be required to provide such information under section 6 of the + GNU GPL, and only to the extent that such information is + necessary to install and execute a modified version of the + Combined Work produced by recombining or relinking the + Application with a modified version of the Linked Version. (If + you use option 4d0, the Installation Information must accompany + the Minimal Corresponding Source and Corresponding Application + Code. If you use option 4d1, you must provide the Installation + Information in the manner specified by section 6 of the GNU GPL + for conveying Corresponding Source.) + + 5. Combined Libraries. + + You may place library facilities that are a work based on the +Library side by side in a single library together with other library +facilities that are not Applications and are not covered by this +License, and convey such a combined library under terms of your +choice, if you do both of the following: + + a) Accompany the combined library with a copy of the same work based + on the Library, uncombined with any other library facilities, + conveyed under the terms of this License. + + b) Give prominent notice with the combined library that part of it + is a work based on the Library, and explaining where to find the + accompanying uncombined form of the same work. + + 6. Revised Versions of the GNU Lesser General Public License. + + The Free Software Foundation may publish revised and/or new versions +of the GNU Lesser General Public License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. + + Each version is given a distinguishing version number. If the +Library as you received it specifies that a certain numbered version +of the GNU Lesser General Public License "or any later version" +applies to it, you have the option of following the terms and +conditions either of that published version or of any later version +published by the Free Software Foundation. If the Library as you +received it does not specify a version number of the GNU Lesser +General Public License, you may choose any version of the GNU Lesser +General Public License ever published by the Free Software Foundation. + + If the Library as you received it specifies that a proxy can decide +whether future versions of the GNU Lesser General Public License shall +apply, that proxy's public statement of acceptance of any version is +permanent authorization for you to choose that version for the +Library. diff --git a/Transport/ibelievechickenfly/build.gradle b/Transport/ibelievechickenfly/build.gradle new file mode 100644 index 0000000..11c7864 --- /dev/null +++ b/Transport/ibelievechickenfly/build.gradle @@ -0,0 +1,71 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +base { + archivesName = project.archives_base_name +} + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "ibelievechickenfly" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def archivesName = project.archives_base_name + inputs.property "archivesName", archivesName + + from("LICENSE") { + rename { "${it}_${archivesName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Transport/ibelievechickenfly/chicken.png b/Transport/ibelievechickenfly/chicken.png new file mode 100644 index 0000000..7f984cd Binary files /dev/null and b/Transport/ibelievechickenfly/chicken.png differ diff --git a/Transport/ibelievechickenfly/gradle.properties b/Transport/ibelievechickenfly/gradle.properties new file mode 100644 index 0000000..77a8c2a --- /dev/null +++ b/Transport/ibelievechickenfly/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=ibelievechickenfly + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Transport/ibelievechickenfly/gradle/wrapper/gradle-wrapper.jar b/Transport/ibelievechickenfly/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Transport/ibelievechickenfly/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Transport/ibelievechickenfly/gradle/wrapper/gradle-wrapper.properties b/Transport/ibelievechickenfly/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Transport/ibelievechickenfly/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Transport/ibelievechickenfly/gradlew b/Transport/ibelievechickenfly/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Transport/ibelievechickenfly/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Transport/ibelievechickenfly/gradlew.bat b/Transport/ibelievechickenfly/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Transport/ibelievechickenfly/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Transport/ibelievechickenfly/settings.gradle b/Transport/ibelievechickenfly/settings.gradle new file mode 100644 index 0000000..a70a3d1 --- /dev/null +++ b/Transport/ibelievechickenfly/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "ibelievechickenfly" diff --git a/Transport/ibelievechickenfly/src/client/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatClientController.java b/Transport/ibelievechickenfly/src/client/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatClientController.java new file mode 100644 index 0000000..db811b1 --- /dev/null +++ b/Transport/ibelievechickenfly/src/client/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatClientController.java @@ -0,0 +1,36 @@ +package fr.koka99cab.ibelievechickenfly.chickenboat; + +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; +import net.minecraft.client.Minecraft; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.vehicle.boat.AbstractBoat; + +public final class ChickenBoatClientController { + private ChickenBoatClientController() { + } + + public static void register() { + ClientTickEvents.END_CLIENT_TICK.register(ChickenBoatClientController::tick); + } + + private static void tick(Minecraft client) { + if (client.player == null || client.level == null) { + return; + } + + Entity vehicle = client.player.getVehicle(); + + if (!(vehicle instanceof AbstractBoat boat) || !ChickenBoatUtil.hasChickenPassenger(boat)) { + return; + } + + if (!ClientPlayNetworking.canSend(ChickenBoatControlPayload.ID)) { + return; + } + + boolean up = client.options.keyJump.isDown(); + ClientPlayNetworking.send(new ChickenBoatControlPayload(up)); + ChickenBoatFlightPhysics.apply(boat, up); + } +} diff --git a/Transport/ibelievechickenfly/src/client/java/fr/koka99cab/ibelievechickenfly/client/IBelieveChickenFlyClient.java b/Transport/ibelievechickenfly/src/client/java/fr/koka99cab/ibelievechickenfly/client/IBelieveChickenFlyClient.java new file mode 100644 index 0000000..ba503ea --- /dev/null +++ b/Transport/ibelievechickenfly/src/client/java/fr/koka99cab/ibelievechickenfly/client/IBelieveChickenFlyClient.java @@ -0,0 +1,13 @@ +package fr.koka99cab.ibelievechickenfly.client; + +import fr.koka99cab.ibelievechickenfly.chickenboat.ChickenBoatClientController; +import fr.koka99cab.ibelievechickenfly.IBelieveChickenFlyMod; +import net.fabricmc.api.ClientModInitializer; + +public final class IBelieveChickenFlyClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + ChickenBoatClientController.register(); + IBelieveChickenFlyMod.LOGGER.info("IBelieveChickenFly client initialise."); + } +} diff --git a/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/IBelieveChickenFlyMod.java b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/IBelieveChickenFlyMod.java new file mode 100644 index 0000000..d4d770b --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/IBelieveChickenFlyMod.java @@ -0,0 +1,30 @@ +package fr.koka99cab.ibelievechickenfly; + +import fr.koka99cab.ibelievechickenfly.chickenboat.ChickenBoatControlPayload; +import fr.koka99cab.ibelievechickenfly.chickenboat.ChickenBoatServerController; +import fr.koka99cab.ibelievechickenfly.chickenfly.ChickenCarryController; +import fr.koka99cab.ibelievechickenfly.registry.ModItems; +import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry; +import net.minecraft.resources.Identifier; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class IBelieveChickenFlyMod implements ModInitializer { + public static final String MOD_ID = "ibelievechickenfly"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + ModItems.register(); + PayloadTypeRegistry.serverboundPlay().register(ChickenBoatControlPayload.ID, ChickenBoatControlPayload.CODEC); + ChickenCarryController.register(); + ChickenBoatServerController.register(); + + LOGGER.info("IBelieveChickenFly 26.1.2 charge."); + } + + public static Identifier id(String path) { + return Identifier.fromNamespaceAndPath(MOD_ID, path); + } +} diff --git a/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatControlPayload.java b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatControlPayload.java new file mode 100644 index 0000000..426eaf8 --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatControlPayload.java @@ -0,0 +1,26 @@ +package fr.koka99cab.ibelievechickenfly.chickenboat; + +import fr.koka99cab.ibelievechickenfly.IBelieveChickenFlyMod; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record ChickenBoatControlPayload(boolean up) implements CustomPacketPayload { + public static final CustomPacketPayload.Type ID = + new CustomPacketPayload.Type<>(IBelieveChickenFlyMod.id("boat_control")); + public static final StreamCodec CODEC = + CustomPacketPayload.codec(ChickenBoatControlPayload::write, ChickenBoatControlPayload::new); + + public ChickenBoatControlPayload(RegistryFriendlyByteBuf buffer) { + this(buffer.readBoolean()); + } + + private void write(RegistryFriendlyByteBuf buffer) { + buffer.writeBoolean(this.up); + } + + @Override + public Type type() { + return ID; + } +} diff --git a/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatFlightPhysics.java b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatFlightPhysics.java new file mode 100644 index 0000000..d634274 --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatFlightPhysics.java @@ -0,0 +1,38 @@ +package fr.koka99cab.ibelievechickenfly.chickenboat; + +import net.minecraft.world.entity.vehicle.boat.AbstractBoat; +import net.minecraft.world.phys.Vec3; + +public final class ChickenBoatFlightPhysics { + private static final double ASCEND_ACCELERATION = 0.07D; + private static final double MIN_ASCEND_SPEED = 0.1D; + private static final double MAX_ASCEND_SPEED = 0.24D; + private static final double DESCEND_ACCELERATION = 0.025D; + private static final double MAX_DESCEND_SPEED = -0.04D; + + private ChickenBoatFlightPhysics() { + } + + public static void apply(AbstractBoat boat, boolean up) { + Vec3 velocity = boat.getDeltaMovement(); + double yVelocity; + + if (up) { + yVelocity = clamp(velocity.y + ASCEND_ACCELERATION, MIN_ASCEND_SPEED, MAX_ASCEND_SPEED); + } else { + yVelocity = glideVelocity(velocity.y); + } + + boat.setDeltaMovement(velocity.x, yVelocity, velocity.z); + boat.fallDistance = 0.0F; + boat.push(0.0D, 0.0D, 0.0D); + } + + private static double glideVelocity(double yVelocity) { + return Math.max(yVelocity - DESCEND_ACCELERATION, MAX_DESCEND_SPEED); + } + + private static double clamp(double value, double min, double max) { + return Math.max(min, Math.min(max, value)); + } +} diff --git a/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatServerController.java b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatServerController.java new file mode 100644 index 0000000..9abaec2 --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatServerController.java @@ -0,0 +1,90 @@ +package fr.koka99cab.ibelievechickenfly.chickenboat; + +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents; +import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.vehicle.boat.AbstractBoat; + +public final class ChickenBoatServerController { + private static final int INPUT_TIMEOUT_TICKS = 5; + + private static final Map CONTROL_STATES = new HashMap<>(); + + private ChickenBoatServerController() { + } + + public static void register() { + ServerPlayNetworking.registerGlobalReceiver( + ChickenBoatControlPayload.ID, + (payload, context) -> updateControls(context.player(), payload) + ); + ServerTickEvents.END_SERVER_TICK.register(ChickenBoatServerController::tick); + } + + private static void updateControls(ServerPlayer player, ChickenBoatControlPayload payload) { + UUID playerId = player.getUUID(); + + if (getValidBoat(player) == null) { + CONTROL_STATES.remove(playerId); + return; + } + + CONTROL_STATES.computeIfAbsent(playerId, id -> new ControlState()).update(payload.up()); + } + + private static void tick(MinecraftServer server) { + for (ServerPlayer player : server.getPlayerList().getPlayers()) { + tickPlayer(player); + } + } + + private static void tickPlayer(ServerPlayer player) { + UUID playerId = player.getUUID(); + AbstractBoat boat = getValidBoat(player); + + if (boat == null) { + CONTROL_STATES.remove(playerId); + return; + } + + ControlState controls = CONTROL_STATES.get(playerId); + boolean hasFreshInput = controls != null && controls.ticksSinceUpdate <= INPUT_TIMEOUT_TICKS; + boolean up = hasFreshInput && controls.up; + + ChickenBoatFlightPhysics.apply(boat, up); + + if (controls != null) { + controls.ticksSinceUpdate++; + } + } + + private static AbstractBoat getValidBoat(ServerPlayer player) { + Entity vehicle = player.getVehicle(); + + if (!(vehicle instanceof AbstractBoat boat)) { + return null; + } + + if (boat.level() != player.level() || !boat.isAlive() || !boat.hasPassenger(player)) { + return null; + } + + return ChickenBoatUtil.hasChickenPassenger(boat) ? boat : null; + } + + private static final class ControlState { + private boolean up; + private int ticksSinceUpdate; + + private void update(boolean up) { + this.up = up; + this.ticksSinceUpdate = 0; + } + } +} diff --git a/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatUtil.java b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatUtil.java new file mode 100644 index 0000000..5d5e05c --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenboat/ChickenBoatUtil.java @@ -0,0 +1,15 @@ +package fr.koka99cab.ibelievechickenfly.chickenboat; + +import net.minecraft.world.entity.animal.chicken.Chicken; +import net.minecraft.world.entity.vehicle.boat.AbstractBoat; + +public final class ChickenBoatUtil { + private ChickenBoatUtil() { + } + + public static boolean hasChickenPassenger(AbstractBoat boat) { + return boat != null + && !boat.isRemoved() + && boat.hasPassenger(passenger -> passenger instanceof Chicken && passenger.isAlive()); + } +} diff --git a/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenfly/ChickenCarryController.java b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenfly/ChickenCarryController.java new file mode 100644 index 0000000..368d2b9 --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenfly/ChickenCarryController.java @@ -0,0 +1,267 @@ +package fr.koka99cab.ibelievechickenfly.chickenfly; + +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; + +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents; +import net.fabricmc.fabric.api.event.player.UseBlockCallback; +import net.fabricmc.fabric.api.event.player.UseItemCallback; +import net.fabricmc.fabric.api.networking.v1.ServerPlayConnectionEvents; +import net.minecraft.core.Holder; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.effect.MobEffect; +import net.minecraft.world.effect.MobEffectInstance; +import net.minecraft.world.effect.MobEffects; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.Mob; +import net.minecraft.world.entity.Pose; +import net.minecraft.world.entity.animal.chicken.Chicken; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; + +public final class ChickenCarryController { + private static final int EFFECT_DURATION_TICKS = 10; + private static final int JUMP_BOOST_AMPLIFIER = 0; + private static final int SLOW_FALLING_AMPLIFIER = 0; + private static final double CHICKEN_HEIGHT_OFFSET = 0.5D; + private static final double CHICKEN_FORWARD_OFFSET = 0.18D; + private static final double CHICKEN_VELOCITY_COMPENSATION = 1.2D; + private static final double RELEASE_DISTANCE = 0.9D; + private static final double RELEASE_EXTRA_DISTANCE = 0.35D; + private static final double RELEASE_SIDE_OFFSET = 0.55D; + private static final double RELEASE_COLLISION_EPSILON = 1.0E-4D; + private static final double[] RELEASE_Y_OFFSETS = new double[] { + 0.0D, 0.25D, 0.5D, 1.0D, 1.5D, 2.0D, -0.25D, -0.5D, -1.0D + }; + + private static final Map PLAYER_TO_CHICKEN = new HashMap<>(); + private static final Map CHICKEN_TO_PLAYER = new HashMap<>(); + + private ChickenCarryController() { + } + + public static void register() { + UseItemCallback.EVENT.register(ChickenCarryController::tryReleaseChicken); + UseBlockCallback.EVENT.register((player, world, hand, hitResult) -> tryReleaseChicken(player, world, hand)); + ServerTickEvents.END_SERVER_TICK.register(server -> server.getPlayerList().getPlayers().forEach(ChickenCarryController::refreshChickenFlyState)); + ServerPlayConnectionEvents.DISCONNECT.register((handler, server) -> releaseChicken(handler.player, false)); + } + + public static InteractionResult tryPickUpChicken(Player player, Level level, InteractionHand hand, Entity entity) { + if (player.isSpectator() || !player.isCrouching() || !(entity instanceof Chicken chicken)) { + return InteractionResult.PASS; + } + + if (!player.getItemInHand(hand).isEmpty() || !player.getPassengers().isEmpty() || chicken.isPassenger()) { + return InteractionResult.PASS; + } + + if (level.isClientSide()) { + return InteractionResult.SUCCESS; + } + + if (!(player instanceof ServerPlayer serverPlayer)) { + return InteractionResult.PASS; + } + + return pickUpChicken(serverPlayer, chicken) ? InteractionResult.SUCCESS_SERVER : InteractionResult.PASS; + } + + private static InteractionResult tryReleaseChicken(Player player, Level level, InteractionHand hand) { + if (player.isSpectator() || !player.isCrouching() || !player.getItemInHand(hand).isEmpty()) { + return InteractionResult.PASS; + } + + if (level.isClientSide()) { + return InteractionResult.PASS; + } + + Chicken chicken = getCarriedChicken(player); + if (chicken == null) { + return InteractionResult.PASS; + } + + releaseChicken(player, true); + return InteractionResult.SUCCESS_SERVER; + } + + private static boolean pickUpChicken(ServerPlayer player, Chicken chicken) { + if (PLAYER_TO_CHICKEN.containsKey(player.getUUID()) || CHICKEN_TO_PLAYER.containsKey(chicken.getUUID())) { + return false; + } + + PLAYER_TO_CHICKEN.put(player.getUUID(), chicken.getUUID()); + CHICKEN_TO_PLAYER.put(chicken.getUUID(), player.getUUID()); + chicken.stopRiding(); + chicken.setNoGravity(true); + chicken.noPhysics = true; + + if (chicken instanceof Mob mob) { + mob.setNoAi(true); + } + + positionChicken(player, chicken); + return true; + } + + private static void refreshChickenFlyState(ServerPlayer player) { + Chicken chicken = getCarriedChicken(player); + if (chicken == null) { + return; + } + + if (!player.isAlive() || chicken.level() != player.level()) { + releaseChicken(player, false); + return; + } + + positionChicken(player, chicken); + refreshHiddenEffect(player, MobEffects.JUMP_BOOST, JUMP_BOOST_AMPLIFIER); + refreshHiddenEffect(player, MobEffects.SLOW_FALLING, SLOW_FALLING_AMPLIFIER); + } + + private static void refreshHiddenEffect(ServerPlayer player, Holder effect, int amplifier) { + MobEffectInstance currentEffect = player.getEffect(effect); + if (currentEffect != null && currentEffect.getAmplifier() == amplifier && currentEffect.getDuration() > EFFECT_DURATION_TICKS / 2) { + return; + } + + player.addEffect(new MobEffectInstance(effect, EFFECT_DURATION_TICKS, amplifier, false, false, false)); + } + + private static void releaseChicken(Player player, boolean placeInFront) { + Chicken chicken = getCarriedChicken(player); + if (chicken == null) { + clearChickenAssociation(player.getUUID(), null); + return; + } + + clearChickenAssociation(player.getUUID(), chicken.getUUID()); + chicken.setNoGravity(false); + chicken.noPhysics = false; + + if (chicken instanceof Mob mob) { + mob.setNoAi(false); + } + + Vec3 releasePos = findSafeReleasePosition(player, chicken, placeInFront); + + chicken.setPos(releasePos.x, releasePos.y, releasePos.z); + chicken.setYRot(player.getYRot()); + chicken.setXRot(0.0F); + chicken.setYBodyRot(player.getYRot()); + chicken.setYHeadRot(player.getYRot()); + chicken.setDeltaMovement(Vec3.ZERO); + chicken.resetFallDistance(); + } + + private static Vec3 findSafeReleasePosition(Player player, Chicken chicken, boolean placeInFront) { + Level level = player.level(); + Vec3 playerPos = player.position(); + + if (!placeInFront) { + Vec3 safePlayerPos = findSafeStandingPosition(level, chicken, playerPos); + return safePlayerPos != null ? safePlayerPos : playerPos.add(0.0D, player.getEyeHeight(), 0.0D); + } + + Vec3 forward = getHorizontalLook(player); + Vec3 right = new Vec3(-forward.z, 0.0D, forward.x); + Vec3 forwardPos = playerPos.add(forward.scale(RELEASE_DISTANCE + RELEASE_EXTRA_DISTANCE)); + Vec3[] candidates = new Vec3[] { + forwardPos, + forwardPos.add(right.scale(RELEASE_SIDE_OFFSET)), + forwardPos.add(right.scale(-RELEASE_SIDE_OFFSET)), + playerPos.add(forward.scale(RELEASE_DISTANCE * 0.5D)), + playerPos.add(right.scale(RELEASE_SIDE_OFFSET)), + playerPos.add(right.scale(-RELEASE_SIDE_OFFSET)) + }; + + for (Vec3 candidate : candidates) { + Vec3 safeCandidate = findSafeStandingPosition(level, chicken, candidate); + if (safeCandidate != null) { + return safeCandidate; + } + } + + Vec3 headFallback = playerPos.add(0.0D, player.getEyeHeight() + CHICKEN_HEIGHT_OFFSET, 0.0D); + Vec3 safeFallback = findSafeStandingPosition(level, chicken, headFallback); + return safeFallback != null ? safeFallback : headFallback; + } + + private static Vec3 getHorizontalLook(Player player) { + Vec3 look = player.getLookAngle(); + Vec3 horizontalLook = new Vec3(look.x, 0.0D, look.z); + if (horizontalLook.lengthSqr() > 1.0E-4D) { + return horizontalLook.normalize(); + } + + double yawRadians = Math.toRadians(player.getYRot()); + return new Vec3(-Math.sin(yawRadians), 0.0D, Math.cos(yawRadians)); + } + + private static Vec3 findSafeStandingPosition(Level level, Chicken chicken, Vec3 basePosition) { + for (double yOffset : RELEASE_Y_OFFSETS) { + Vec3 candidate = basePosition.add(0.0D, yOffset, 0.0D); + AABB boundingBox = chicken.getDimensions(Pose.STANDING) + .makeBoundingBox(candidate) + .deflate(RELEASE_COLLISION_EPSILON); + if (level.noCollision(chicken, boundingBox)) { + return candidate; + } + } + + return null; + } + + private static void positionChicken(ServerPlayer player, Chicken chicken) { + Vec3 look = player.getLookAngle(); + Vec3 forwardOffset = new Vec3(look.x, 0.0D, look.z).scale(CHICKEN_FORWARD_OFFSET); + Vec3 velocityOffset = new Vec3(player.getDeltaMovement().x, 0.0D, player.getDeltaMovement().z).scale(CHICKEN_VELOCITY_COMPENSATION); + Vec3 headPos = player.position() + .add(0.0D, player.getEyeHeight() + CHICKEN_HEIGHT_OFFSET, 0.0D) + .add(forwardOffset) + .add(velocityOffset); + + chicken.setPos(headPos.x, headPos.y, headPos.z); + chicken.setYRot(player.getYRot()); + chicken.setXRot(0.0F); + chicken.setYBodyRot(player.getYRot()); + chicken.setYHeadRot(player.getYRot()); + chicken.setDeltaMovement(Vec3.ZERO); + } + + private static Chicken getCarriedChicken(Player player) { + UUID chickenUuid = PLAYER_TO_CHICKEN.get(player.getUUID()); + if (chickenUuid == null || player.level().getServer() == null) { + return null; + } + + for (ServerLevel level : player.level().getServer().getAllLevels()) { + Entity entity = level.getEntity(chickenUuid); + if (entity instanceof Chicken chicken && entity.isAlive()) { + return chicken; + } + } + + clearChickenAssociation(player.getUUID(), chickenUuid); + return null; + } + + public static boolean isChickenCarried(Entity entity) { + return entity instanceof Chicken && CHICKEN_TO_PLAYER.containsKey(entity.getUUID()); + } + + private static void clearChickenAssociation(UUID playerUuid, UUID chickenUuid) { + UUID actualChickenUuid = chickenUuid != null ? chickenUuid : PLAYER_TO_CHICKEN.remove(playerUuid); + if (actualChickenUuid != null) { + PLAYER_TO_CHICKEN.remove(playerUuid); + CHICKEN_TO_PLAYER.remove(actualChickenUuid); + } + } +} diff --git a/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenfly/GoldenEggItem.java b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenfly/GoldenEggItem.java new file mode 100644 index 0000000..efd5794 --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenfly/GoldenEggItem.java @@ -0,0 +1,40 @@ +package fr.koka99cab.ibelievechickenfly.chickenfly; + +import net.minecraft.core.Direction; +import net.minecraft.core.Position; +import net.minecraft.core.component.DataComponents; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.entity.projectile.Projectile; +import net.minecraft.world.entity.projectile.throwableitemprojectile.ThrownEgg; +import net.minecraft.world.item.EggItem; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; + +public class GoldenEggItem extends EggItem { + public GoldenEggItem(Properties properties) { + super(properties); + } + + @Override + public InteractionResult use(Level level, Player player, InteractionHand hand) { + applyBlueVariant(level, player.getItemInHand(hand)); + return super.use(level, player, hand); + } + + @Override + public Projectile asProjectile(Level level, Position position, ItemStack stack, Direction direction) { + return new ThrownEgg(level, position.x(), position.y(), position.z(), stackWithBlueVariant(level, stack)); + } + + private static void applyBlueVariant(Level level, ItemStack stack) { + ModChickenVariants.getBlue(level.registryAccess()).ifPresent(variant -> stack.set(DataComponents.CHICKEN_VARIANT, variant)); + } + + private static ItemStack stackWithBlueVariant(Level level, ItemStack stack) { + ItemStack copy = stack.copyWithCount(1); + applyBlueVariant(level, copy); + return copy; + } +} diff --git a/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenfly/ModChickenVariants.java b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenfly/ModChickenVariants.java new file mode 100644 index 0000000..5410335 --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/chickenfly/ModChickenVariants.java @@ -0,0 +1,27 @@ +package fr.koka99cab.ibelievechickenfly.chickenfly; + +import fr.koka99cab.ibelievechickenfly.IBelieveChickenFlyMod; +import java.util.Optional; +import net.minecraft.core.Holder; +import net.minecraft.core.Registry; +import net.minecraft.core.RegistryAccess; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.entity.animal.chicken.Chicken; +import net.minecraft.world.entity.animal.chicken.ChickenVariant; + +public final class ModChickenVariants { + public static final ResourceKey BLUE = ResourceKey.create(Registries.CHICKEN_VARIANT, IBelieveChickenFlyMod.id("blue")); + + private ModChickenVariants() { + } + + public static Optional> getBlue(RegistryAccess registryAccess) { + Registry registry = registryAccess.lookupOrThrow(Registries.CHICKEN_VARIANT); + return registry.get(BLUE); + } + + public static boolean isBlue(Chicken chicken) { + return chicken.getVariant().is(BLUE); + } +} diff --git a/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/mixin/AnimalEntityMixin.java b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/mixin/AnimalEntityMixin.java new file mode 100644 index 0000000..71aa3ab --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/mixin/AnimalEntityMixin.java @@ -0,0 +1,28 @@ +package fr.koka99cab.ibelievechickenfly.mixin; + +import fr.koka99cab.ibelievechickenfly.chickenfly.ChickenCarryController; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.animal.Animal; +import net.minecraft.world.entity.animal.chicken.Chicken; +import net.minecraft.world.entity.player.Player; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(Animal.class) +public abstract class AnimalEntityMixin { + @Inject(method = "mobInteract", at = @At("HEAD"), cancellable = true) + private void ibelievechickenfly$pickUpChicken(Player player, InteractionHand hand, CallbackInfoReturnable cir) { + Animal self = (Animal) (Object) this; + if (!(self instanceof Chicken)) { + return; + } + + InteractionResult result = ChickenCarryController.tryPickUpChicken(player, self.level(), hand, self); + if (result != InteractionResult.PASS) { + cir.setReturnValue(result); + } + } +} diff --git a/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/mixin/ChickenMixin.java b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/mixin/ChickenMixin.java new file mode 100644 index 0000000..176e67f --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/mixin/ChickenMixin.java @@ -0,0 +1,40 @@ +package fr.koka99cab.ibelievechickenfly.mixin; + +import fr.koka99cab.ibelievechickenfly.chickenfly.ModChickenVariants; +import fr.koka99cab.ibelievechickenfly.registry.ModItems; +import java.util.function.BiConsumer; +import net.minecraft.resources.ResourceKey; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.entity.animal.chicken.Chicken; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.storage.loot.LootTable; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(Chicken.class) +public abstract class ChickenMixin { + private static final int GOLDEN_EGG_LAY_CHANCE = 256; + + @Redirect( + method = "aiStep", + at = @At( + value = "INVOKE", + target = "Lnet/minecraft/world/entity/animal/chicken/Chicken;dropFromGiftLootTable(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/resources/ResourceKey;Ljava/util/function/BiConsumer;)Z" + ) + ) + private boolean ibelievechickenfly$dropSpecialEgg(Chicken chicken, ServerLevel serverLevel, ResourceKey lootTable, BiConsumer dropper) { + if (ModChickenVariants.isBlue(chicken)) { + dropper.accept(serverLevel, new ItemStack(Items.DIAMOND)); + return true; + } + + if (chicken.getRandom().nextInt(GOLDEN_EGG_LAY_CHANCE) == 0) { + dropper.accept(serverLevel, new ItemStack(ModItems.GOLDEN_EGG)); + return true; + } + + return chicken.dropFromGiftLootTable(serverLevel, lootTable, dropper); + } +} diff --git a/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/mixin/EntityMixin.java b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/mixin/EntityMixin.java new file mode 100644 index 0000000..2b632ea --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/mixin/EntityMixin.java @@ -0,0 +1,50 @@ +package fr.koka99cab.ibelievechickenfly.mixin; + +import fr.koka99cab.ibelievechickenfly.chickenfly.ChickenCarryController; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.animal.chicken.Chicken; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(Entity.class) +public abstract class EntityMixin { + @Inject(method = "interact", at = @At("HEAD"), cancellable = true) + private void ibelievechickenfly$pickUpChickenAt(Player player, InteractionHand hand, Vec3 hitPos, CallbackInfoReturnable cir) { + Entity self = (Entity) (Object) this; + if (!(self instanceof Chicken)) { + return; + } + + InteractionResult result = ChickenCarryController.tryPickUpChicken(player, self.level(), hand, self); + if (result != InteractionResult.PASS) { + cir.setReturnValue(result); + } + } + + @Inject(method = "isPushable", at = @At("HEAD"), cancellable = true) + private void ibelievechickenfly$disablePush(CallbackInfoReturnable cir) { + if (ChickenCarryController.isChickenCarried((Entity) (Object) this)) { + cir.setReturnValue(false); + } + } + + @Inject(method = "isPickable", at = @At("HEAD"), cancellable = true) + private void ibelievechickenfly$disablePick(CallbackInfoReturnable cir) { + if (ChickenCarryController.isChickenCarried((Entity) (Object) this)) { + cir.setReturnValue(false); + } + } + + @Inject(method = "canCollideWith", at = @At("HEAD"), cancellable = true) + private void ibelievechickenfly$disableEntityCollision(Entity entity, CallbackInfoReturnable cir) { + if (ChickenCarryController.isChickenCarried((Entity) (Object) this)) { + cir.setReturnValue(false); + } + } +} diff --git a/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/mixin/LivingEntityMixin.java b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/mixin/LivingEntityMixin.java new file mode 100644 index 0000000..2d3c8f1 --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/mixin/LivingEntityMixin.java @@ -0,0 +1,19 @@ +package fr.koka99cab.ibelievechickenfly.mixin; + +import fr.koka99cab.ibelievechickenfly.chickenfly.ChickenCarryController; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.LivingEntity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LivingEntity.class) +public abstract class LivingEntityMixin { + @Inject(method = "doPush", at = @At("HEAD"), cancellable = true) + private void ibelievechickenfly$cancelPushAway(Entity entity, CallbackInfo ci) { + if (ChickenCarryController.isChickenCarried((Entity) (Object) this)) { + ci.cancel(); + } + } +} diff --git a/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/registry/ModItems.java b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/registry/ModItems.java new file mode 100644 index 0000000..d877a28 --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/java/fr/koka99cab/ibelievechickenfly/registry/ModItems.java @@ -0,0 +1,53 @@ +package fr.koka99cab.ibelievechickenfly.registry; + +import fr.koka99cab.ibelievechickenfly.IBelieveChickenFlyMod; +import fr.koka99cab.ibelievechickenfly.chickenfly.GoldenEggItem; +import fr.koka99cab.ibelievechickenfly.chickenfly.ModChickenVariants; +import net.fabricmc.fabric.api.creativetab.v1.CreativeModeTabEvents; +import net.minecraft.core.Registry; +import net.minecraft.core.component.DataComponents; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.item.CreativeModeTab; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.Items; +import net.minecraft.world.item.Rarity; +import net.minecraft.world.item.SpawnEggItem; + +public final class ModItems { + private static final ResourceKey GOLDEN_EGG_KEY = ResourceKey.create(Registries.ITEM, IBelieveChickenFlyMod.id("golden_egg")); + private static final ResourceKey BLUE_CHICKEN_SPAWN_EGG_KEY = ResourceKey.create(Registries.ITEM, IBelieveChickenFlyMod.id("blue_chicken_spawn_egg")); + private static final ResourceKey INGREDIENTS_TAB = vanillaTab("ingredients"); + private static final ResourceKey SPAWN_EGGS_TAB = vanillaTab("spawn_eggs"); + + public static final Item GOLDEN_EGG = Registry.register( + BuiltInRegistries.ITEM, + GOLDEN_EGG_KEY, + new GoldenEggItem(new Item.Properties().stacksTo(16).rarity(Rarity.RARE).setId(GOLDEN_EGG_KEY)) + ); + + public static final Item BLUE_CHICKEN_SPAWN_EGG = Registry.register( + BuiltInRegistries.ITEM, + BLUE_CHICKEN_SPAWN_EGG_KEY, + new SpawnEggItem(new Item.Properties() + .spawnEgg(EntityType.CHICKEN) + .delayedHolderComponent(DataComponents.CHICKEN_VARIANT, ModChickenVariants.BLUE) + .setId(BLUE_CHICKEN_SPAWN_EGG_KEY)) + ); + + private ModItems() { + } + + public static void register() { + CreativeModeTabEvents.modifyOutputEvent(INGREDIENTS_TAB).register(entries -> entries.insertAfter(Items.EGG, GOLDEN_EGG)); + CreativeModeTabEvents.modifyOutputEvent(SPAWN_EGGS_TAB).register(entries -> entries.insertAfter(Items.CHICKEN_SPAWN_EGG, BLUE_CHICKEN_SPAWN_EGG)); + IBelieveChickenFlyMod.LOGGER.debug("Objets IBelieveChickenFly enregistres."); + } + + private static ResourceKey vanillaTab(String path) { + return ResourceKey.create(Registries.CREATIVE_MODE_TAB, Identifier.withDefaultNamespace(path)); + } +} diff --git a/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/chicken.png b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/chicken.png new file mode 100644 index 0000000..7f984cd Binary files /dev/null and b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/chicken.png differ diff --git a/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/chickenboatfly.png b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/chickenboatfly.png new file mode 100644 index 0000000..41860e8 Binary files /dev/null and b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/chickenboatfly.png differ diff --git a/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/icon.png b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/icon.png new file mode 100755 index 0000000..89e606f Binary files /dev/null and b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/icon.png differ diff --git a/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/items/blue_chicken_spawn_egg.json b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/items/blue_chicken_spawn_egg.json new file mode 100644 index 0000000..4985f8b --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/items/blue_chicken_spawn_egg.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "ibelievechickenfly:item/blue_chicken_spawn_egg" + } +} diff --git a/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/items/golden_egg.json b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/items/golden_egg.json new file mode 100644 index 0000000..85b0868 --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/items/golden_egg.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "ibelievechickenfly:item/golden_egg" + } +} diff --git a/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/lang/en_us.json b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/lang/en_us.json new file mode 100644 index 0000000..f2c4345 --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/lang/en_us.json @@ -0,0 +1,6 @@ +{ + "modmenu.nameTranslation.ibelievechickenfly": "IBelieveChickenFly", + "modmenu.descriptionTranslation.ibelievechickenfly": "Carry chickens to glide through the air, and let boats fly when a chicken is on board.", + "item.ibelievechickenfly.golden_egg": "Golden Egg", + "item.ibelievechickenfly.blue_chicken_spawn_egg": "Blue Chicken Spawn Egg" +} diff --git a/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/lang/fr_fr.json b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/lang/fr_fr.json new file mode 100644 index 0000000..0d43092 --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/lang/fr_fr.json @@ -0,0 +1,6 @@ +{ + "modmenu.nameTranslation.ibelievechickenfly": "IBelieveChickenFly", + "modmenu.descriptionTranslation.ibelievechickenfly": "Carry chickens to glide through the air, and let boats fly when a chicken is on board.", + "item.ibelievechickenfly.golden_egg": "\u0152uf dor\u00e9", + "item.ibelievechickenfly.blue_chicken_spawn_egg": "\u0152uf d'apparition de poule bleue" +} diff --git a/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/models/item/blue_chicken_spawn_egg.json b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/models/item/blue_chicken_spawn_egg.json new file mode 100644 index 0000000..fd7a02a --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/models/item/blue_chicken_spawn_egg.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "ibelievechickenfly:item/blue_chicken_spawn_egg" + } +} diff --git a/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/models/item/golden_egg.json b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/models/item/golden_egg.json new file mode 100644 index 0000000..f73b1d6 --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/models/item/golden_egg.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "ibelievechickenfly:item/golden_egg" + } +} diff --git a/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/textures/entity/chicken/chicken_blue.png b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/textures/entity/chicken/chicken_blue.png new file mode 100644 index 0000000..b770df8 Binary files /dev/null and b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/textures/entity/chicken/chicken_blue.png differ diff --git a/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/textures/entity/chicken/chicken_blue_baby.png b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/textures/entity/chicken/chicken_blue_baby.png new file mode 100644 index 0000000..f66431e Binary files /dev/null and b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/textures/entity/chicken/chicken_blue_baby.png differ diff --git a/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/textures/item/blue_chicken_spawn_egg.png b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/textures/item/blue_chicken_spawn_egg.png new file mode 100644 index 0000000..b87d8f4 Binary files /dev/null and b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/textures/item/blue_chicken_spawn_egg.png differ diff --git a/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/textures/item/golden_egg.png b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/textures/item/golden_egg.png new file mode 100644 index 0000000..de716d7 Binary files /dev/null and b/Transport/ibelievechickenfly/src/main/resources/assets/ibelievechickenfly/textures/item/golden_egg.png differ diff --git a/Transport/ibelievechickenfly/src/main/resources/data/ibelievechickenfly/chicken_variant/blue.json b/Transport/ibelievechickenfly/src/main/resources/data/ibelievechickenfly/chicken_variant/blue.json new file mode 100644 index 0000000..301a04f --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/resources/data/ibelievechickenfly/chicken_variant/blue.json @@ -0,0 +1,5 @@ +{ + "asset_id": "ibelievechickenfly:entity/chicken/chicken_blue", + "baby_asset_id": "ibelievechickenfly:entity/chicken/chicken_blue_baby", + "spawn_conditions": [] +} diff --git a/Transport/ibelievechickenfly/src/main/resources/fabric.mod.json b/Transport/ibelievechickenfly/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..6421e67 --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/resources/fabric.mod.json @@ -0,0 +1,30 @@ +{ + "schemaVersion": 1, + "id": "ibelievechickenfly", + "version": "${version}", + "name": "IBelieveChickenFly", + "description": "Carry chickens to glide through the air, and let boats fly when a chicken is on board.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "icon": "assets/ibelievechickenfly/chicken.png", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.ibelievechickenfly.IBelieveChickenFlyMod" + ], + "client": [ + "fr.koka99cab.ibelievechickenfly.client.IBelieveChickenFlyClient" + ] + }, + "mixins": [ + "ibelievechickenfly.mixins.json" + ], + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Transport/ibelievechickenfly/src/main/resources/ibelievechickenfly.mixins.json b/Transport/ibelievechickenfly/src/main/resources/ibelievechickenfly.mixins.json new file mode 100644 index 0000000..fd1dd1c --- /dev/null +++ b/Transport/ibelievechickenfly/src/main/resources/ibelievechickenfly.mixins.json @@ -0,0 +1,14 @@ +{ + "required": true, + "package": "fr.koka99cab.ibelievechickenfly.mixin", + "compatibilityLevel": "JAVA_21", + "mixins": [ + "AnimalEntityMixin", + "ChickenMixin", + "EntityMixin", + "LivingEntityMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/Transport/magiccarpet/.gitignore b/Transport/magiccarpet/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Transport/magiccarpet/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Transport/magiccarpet/build.gradle b/Transport/magiccarpet/build.gradle new file mode 100644 index 0000000..ef2a7df --- /dev/null +++ b/Transport/magiccarpet/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "magiccarpet" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Transport/magiccarpet/gradle.properties b/Transport/magiccarpet/gradle.properties new file mode 100644 index 0000000..6a8e96e --- /dev/null +++ b/Transport/magiccarpet/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=magiccarpet + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Transport/magiccarpet/gradle/wrapper/gradle-wrapper.jar b/Transport/magiccarpet/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Transport/magiccarpet/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Transport/magiccarpet/gradle/wrapper/gradle-wrapper.properties b/Transport/magiccarpet/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Transport/magiccarpet/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Transport/magiccarpet/gradlew b/Transport/magiccarpet/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Transport/magiccarpet/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Transport/magiccarpet/gradlew.bat b/Transport/magiccarpet/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Transport/magiccarpet/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Transport/magiccarpet/settings.gradle b/Transport/magiccarpet/settings.gradle new file mode 100644 index 0000000..c081912 --- /dev/null +++ b/Transport/magiccarpet/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "magiccarpet" diff --git a/Transport/magiccarpet/src/client/java/fr/koka99cab/magiccarpet/client/MagicCarpetClient.java b/Transport/magiccarpet/src/client/java/fr/koka99cab/magiccarpet/client/MagicCarpetClient.java new file mode 100644 index 0000000..df1522e --- /dev/null +++ b/Transport/magiccarpet/src/client/java/fr/koka99cab/magiccarpet/client/MagicCarpetClient.java @@ -0,0 +1,11 @@ +package fr.koka99cab.magiccarpet.client; + +import net.fabricmc.api.ClientModInitializer; +import fr.koka99cab.magiccarpet.MagicCarpetMod; + +public class MagicCarpetClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + MagicCarpetMod.LOGGER.info("MagicCarpet client initialise."); + } +} diff --git a/Transport/magiccarpet/src/main/java/fr/koka99cab/magiccarpet/MagicCarpetMod.java b/Transport/magiccarpet/src/main/java/fr/koka99cab/magiccarpet/MagicCarpetMod.java new file mode 100644 index 0000000..abd903c --- /dev/null +++ b/Transport/magiccarpet/src/main/java/fr/koka99cab/magiccarpet/MagicCarpetMod.java @@ -0,0 +1,15 @@ +package fr.koka99cab.magiccarpet; + +import net.fabricmc.api.ModInitializer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class MagicCarpetMod implements ModInitializer { + public static final String MOD_ID = "magiccarpet"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + LOGGER.info("MagicCarpet charge pour Minecraft 26.1.2."); + } +} diff --git a/Transport/magiccarpet/src/main/resources/assets/magiccarpet/lang/en_us.json b/Transport/magiccarpet/src/main/resources/assets/magiccarpet/lang/en_us.json new file mode 100644 index 0000000..c01d752 --- /dev/null +++ b/Transport/magiccarpet/src/main/resources/assets/magiccarpet/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.magiccarpet": "MagicCarpet", + "modmenu.descriptionTranslation.magiccarpet": "Example Fabric mod for the Hello World mod collection." +} diff --git a/Transport/magiccarpet/src/main/resources/assets/magiccarpet/lang/fr_fr.json b/Transport/magiccarpet/src/main/resources/assets/magiccarpet/lang/fr_fr.json new file mode 100644 index 0000000..d0e1c55 --- /dev/null +++ b/Transport/magiccarpet/src/main/resources/assets/magiccarpet/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "modmenu.nameTranslation.magiccarpet": "MagicCarpet", + "modmenu.descriptionTranslation.magiccarpet": "Mod Fabric exemple pour la collection de mods Hello World." +} diff --git a/Transport/magiccarpet/src/main/resources/fabric.mod.json b/Transport/magiccarpet/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..ce009a0 --- /dev/null +++ b/Transport/magiccarpet/src/main/resources/fabric.mod.json @@ -0,0 +1,26 @@ +{ + "schemaVersion": 1, + "id": "magiccarpet", + "version": "${version}", + "name": "MagicCarpet", + "description": "Mod Fabric exemple pour la collection de mods Hello World.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.magiccarpet.MagicCarpetMod" + ], + "client": [ + "fr.koka99cab.magiccarpet.client.MagicCarpetClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Transport/spiderman/.gitignore b/Transport/spiderman/.gitignore new file mode 100644 index 0000000..6417825 --- /dev/null +++ b/Transport/spiderman/.gitignore @@ -0,0 +1,34 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr diff --git a/Transport/spiderman/build.gradle b/Transport/spiderman/build.gradle new file mode 100644 index 0000000..25825f6 --- /dev/null +++ b/Transport/spiderman/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "spiderman" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Transport/spiderman/gradle.properties b/Transport/spiderman/gradle.properties new file mode 100644 index 0000000..324c697 --- /dev/null +++ b/Transport/spiderman/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=spiderman + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Transport/spiderman/gradle/wrapper/gradle-wrapper.jar b/Transport/spiderman/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Transport/spiderman/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Transport/spiderman/gradle/wrapper/gradle-wrapper.properties b/Transport/spiderman/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Transport/spiderman/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Transport/spiderman/gradlew b/Transport/spiderman/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Transport/spiderman/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Transport/spiderman/gradlew.bat b/Transport/spiderman/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Transport/spiderman/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Transport/spiderman/settings.gradle b/Transport/spiderman/settings.gradle new file mode 100644 index 0000000..1e4d531 --- /dev/null +++ b/Transport/spiderman/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "spiderman" diff --git a/Transport/spiderman/src/client/java/fr/koka99cab/spiderman/client/SpidermanClient.java b/Transport/spiderman/src/client/java/fr/koka99cab/spiderman/client/SpidermanClient.java new file mode 100644 index 0000000..989ccb4 --- /dev/null +++ b/Transport/spiderman/src/client/java/fr/koka99cab/spiderman/client/SpidermanClient.java @@ -0,0 +1,17 @@ +package fr.koka99cab.spiderman.client; + +import fr.koka99cab.spiderman.SpidermanMod; +import fr.koka99cab.spiderman.client.item.GrapplingRodCastProperty; +import fr.koka99cab.spiderman.client.render.GrapplingHookRenderer; +import fr.koka99cab.spiderman.mixin.client.ConditionalItemModelPropertiesAccessor; +import fr.koka99cab.spiderman.registry.SpidermanEntityTypes; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.rendering.v1.EntityRendererRegistry; + +public class SpidermanClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + ConditionalItemModelPropertiesAccessor.spiderman$getIdMapper().put(SpidermanMod.id("grappling_rod/cast"), GrapplingRodCastProperty.MAP_CODEC); + EntityRendererRegistry.register(SpidermanEntityTypes.GRAPPLING_HOOK, GrapplingHookRenderer::new); + } +} diff --git a/Transport/spiderman/src/client/java/fr/koka99cab/spiderman/client/item/GrapplingRodCastProperty.java b/Transport/spiderman/src/client/java/fr/koka99cab/spiderman/client/item/GrapplingRodCastProperty.java new file mode 100644 index 0000000..7217a1e --- /dev/null +++ b/Transport/spiderman/src/client/java/fr/koka99cab/spiderman/client/item/GrapplingRodCastProperty.java @@ -0,0 +1,39 @@ +package fr.koka99cab.spiderman.client.item; + +import com.mojang.serialization.MapCodec; +import fr.koka99cab.spiderman.entity.GrapplingHookEntity; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.item.properties.conditional.ConditionalItemModelProperty; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemDisplayContext; +import net.minecraft.world.item.ItemStack; + +public record GrapplingRodCastProperty() implements ConditionalItemModelProperty { + public static final MapCodec MAP_CODEC = MapCodec.unit(new GrapplingRodCastProperty()); + + @Override + public boolean get(ItemStack stack, ClientLevel level, LivingEntity entity, int seed, ItemDisplayContext displayContext) { + if (!(entity instanceof Player player) || !isHeldStack(player, stack)) { + return false; + } + + for (Entity renderedEntity : level.entitiesForRendering()) { + if (renderedEntity instanceof GrapplingHookEntity hook && hook.getOwner() == player) { + return true; + } + } + + return false; + } + + @Override + public MapCodec type() { + return MAP_CODEC; + } + + private static boolean isHeldStack(Player player, ItemStack stack) { + return player.getMainHandItem() == stack || player.getOffhandItem() == stack; + } +} diff --git a/Transport/spiderman/src/client/java/fr/koka99cab/spiderman/client/render/GrapplingHookRenderer.java b/Transport/spiderman/src/client/java/fr/koka99cab/spiderman/client/render/GrapplingHookRenderer.java new file mode 100644 index 0000000..9502795 --- /dev/null +++ b/Transport/spiderman/src/client/java/fr/koka99cab/spiderman/client/render/GrapplingHookRenderer.java @@ -0,0 +1,59 @@ +package fr.koka99cab.spiderman.client.render; + +import fr.koka99cab.spiderman.entity.GrapplingHookEntity; +import java.util.List; +import net.minecraft.client.renderer.entity.EntityRendererProvider; +import net.minecraft.client.renderer.entity.ThrownItemRenderer; +import net.minecraft.client.renderer.entity.state.EntityRenderState.LeashState; +import net.minecraft.client.renderer.entity.state.ThrownItemRenderState; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.LightLayer; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; + +public class GrapplingHookRenderer extends ThrownItemRenderer { + private static final Vec3 HOOK_LEASH_OFFSET = new Vec3(0.0D, 0.04D, 0.0D); + + public GrapplingHookRenderer(EntityRendererProvider.Context context) { + super(context, 0.9F, false); + this.shadowRadius = 0.08F; + } + + @Override + public void extractRenderState(GrapplingHookEntity hook, ThrownItemRenderState state, float partialTick) { + super.extractRenderState(hook, state, partialTick); + Entity owner = hook.getOwner(); + if (owner == null) { + state.leashStates = null; + return; + } + + Vec3 hookPosition = hook.getPosition(partialTick); + Vec3 leashStart = hookPosition.add(HOOK_LEASH_OFFSET); + Vec3 leashEnd = owner.getRopeHoldPosition(partialTick); + LeashState leashState = new LeashState(); + + leashState.offset = HOOK_LEASH_OFFSET; + leashState.start = leashStart; + leashState.end = leashEnd; + leashState.slack = false; + fillLight(hook.level(), leashState, leashStart, leashEnd); + state.leashStates = List.of(leashState); + } + + @Override + protected boolean affectedByCulling(GrapplingHookEntity hook) { + return false; + } + + private static void fillLight(Level level, LeashState leashState, Vec3 leashStart, Vec3 leashEnd) { + BlockPos start = BlockPos.containing(leashStart); + BlockPos end = BlockPos.containing(leashEnd); + + leashState.startBlockLight = level.getBrightness(LightLayer.BLOCK, start); + leashState.endBlockLight = level.getBrightness(LightLayer.BLOCK, end); + leashState.startSkyLight = level.getBrightness(LightLayer.SKY, start); + leashState.endSkyLight = level.getBrightness(LightLayer.SKY, end); + } +} diff --git a/Transport/spiderman/src/client/java/fr/koka99cab/spiderman/mixin/client/ConditionalItemModelPropertiesAccessor.java b/Transport/spiderman/src/client/java/fr/koka99cab/spiderman/mixin/client/ConditionalItemModelPropertiesAccessor.java new file mode 100644 index 0000000..e9ed42f --- /dev/null +++ b/Transport/spiderman/src/client/java/fr/koka99cab/spiderman/mixin/client/ConditionalItemModelPropertiesAccessor.java @@ -0,0 +1,17 @@ +package fr.koka99cab.spiderman.mixin.client; + +import com.mojang.serialization.MapCodec; +import net.minecraft.client.renderer.item.properties.conditional.ConditionalItemModelProperties; +import net.minecraft.client.renderer.item.properties.conditional.ConditionalItemModelProperty; +import net.minecraft.resources.Identifier; +import net.minecraft.util.ExtraCodecs; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Accessor; + +@Mixin(ConditionalItemModelProperties.class) +public interface ConditionalItemModelPropertiesAccessor { + @Accessor("ID_MAPPER") + static ExtraCodecs.LateBoundIdMapper> spiderman$getIdMapper() { + throw new AssertionError(); + } +} diff --git a/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/SpidermanMod.java b/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/SpidermanMod.java new file mode 100644 index 0000000..fcec687 --- /dev/null +++ b/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/SpidermanMod.java @@ -0,0 +1,26 @@ +package fr.koka99cab.spiderman; + +import fr.koka99cab.spiderman.grapple.GrappleController; +import fr.koka99cab.spiderman.registry.SpidermanEntityTypes; +import fr.koka99cab.spiderman.registry.SpidermanItems; +import net.fabricmc.api.ModInitializer; +import net.minecraft.resources.Identifier; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class SpidermanMod implements ModInitializer { + public static final String MOD_ID = "spiderman"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + SpidermanEntityTypes.register(); + SpidermanItems.register(); + GrappleController.register(); + LOGGER.info("Spiderman charge: le grappin est pret."); + } + + public static Identifier id(String path) { + return Identifier.fromNamespaceAndPath(MOD_ID, path); + } +} diff --git a/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/entity/GrapplingHookEntity.java b/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/entity/GrapplingHookEntity.java new file mode 100644 index 0000000..17e75e7 --- /dev/null +++ b/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/entity/GrapplingHookEntity.java @@ -0,0 +1,121 @@ +package fr.koka99cab.spiderman.entity; + +import fr.koka99cab.spiderman.grapple.GrappleController; +import fr.koka99cab.spiderman.registry.SpidermanEntityTypes; +import fr.koka99cab.spiderman.registry.SpidermanItems; +import net.minecraft.network.syncher.EntityDataAccessor; +import net.minecraft.network.syncher.EntityDataSerializers; +import net.minecraft.network.syncher.SynchedEntityData; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.MoverType; +import net.minecraft.world.entity.projectile.ItemSupplier; +import net.minecraft.world.entity.projectile.Projectile; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.storage.ValueInput; +import net.minecraft.world.level.storage.ValueOutput; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; + +public class GrapplingHookEntity extends Projectile implements ItemSupplier { + private static final EntityDataAccessor ANCHORED = SynchedEntityData.defineId(GrapplingHookEntity.class, EntityDataSerializers.BOOLEAN); + private static final double GRAVITY = 0.035D; + private static final double DRAG = 0.985D; + private static final double MAX_FLIGHT_DISTANCE = 72.0D; + private static final int MAX_FLIGHT_TICKS = 80; + + private double traveledDistance; + + public GrapplingHookEntity(EntityType entityType, Level level) { + super(entityType, level); + this.noPhysics = true; + this.setNoGravity(true); + } + + public GrapplingHookEntity(Level level, Entity owner, Vec3 startPosition, Vec3 velocity) { + this(SpidermanEntityTypes.GRAPPLING_HOOK, level); + this.setOwner(owner); + this.snapTo(startPosition.x, startPosition.y, startPosition.z); + this.setDeltaMovement(velocity); + } + + @Override + protected void defineSynchedData(SynchedEntityData.Builder builder) { + builder.define(ANCHORED, false); + } + + @Override + public void tick() { + super.tick(); + this.noPhysics = true; + this.setNoGravity(true); + + if (!this.level().isClientSide() && (this.getOwner() == null || !this.getOwner().isAlive())) { + this.discard(); + return; + } + + if (this.isAnchored()) { + this.setDeltaMovement(Vec3.ZERO); + return; + } + + Vec3 velocity = this.getDeltaMovement(); + Vec3 from = this.position(); + Vec3 to = from.add(velocity); + BlockHitResult hitResult = this.level().clip(new ClipContext(from, to, ClipContext.Block.COLLIDER, ClipContext.Fluid.NONE, this)); + + if (hitResult.getType() == HitResult.Type.BLOCK) { + this.anchor(hitResult); + if (!this.level().isClientSide() && this.getOwner() instanceof ServerPlayer player) { + GrappleController.attach(player, this, hitResult); + } + return; + } + + this.move(MoverType.SELF, velocity); + this.traveledDistance += velocity.length(); + this.setDeltaMovement(velocity.scale(DRAG).add(0.0D, -GRAVITY, 0.0D)); + + if (!this.level().isClientSide() && this.getOwner() instanceof ServerPlayer player && (this.traveledDistance > MAX_FLIGHT_DISTANCE || this.tickCount > MAX_FLIGHT_TICKS)) { + GrappleController.expire(player, this); + } + } + + public void anchor(BlockHitResult hitResult) { + this.entityData.set(ANCHORED, true); + this.noPhysics = true; + this.setNoGravity(true); + this.setDeltaMovement(Vec3.ZERO); + Vec3 hitLocation = hitResult.getLocation(); + this.snapTo(hitLocation.x, hitLocation.y, hitLocation.z); + } + + public boolean isAnchored() { + return this.entityData.get(ANCHORED); + } + + @Override + public ItemStack getItem() { + return new ItemStack(SpidermanItems.GRAPPLING_HAND); + } + + @Override + public boolean isPickable() { + return false; + } + + @Override + protected void addAdditionalSaveData(ValueOutput output) { + super.addAdditionalSaveData(output); + } + + @Override + protected void readAdditionalSaveData(ValueInput input) { + super.readAdditionalSaveData(input); + } +} diff --git a/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/grapple/GrappleController.java b/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/grapple/GrappleController.java new file mode 100644 index 0000000..c82dfff --- /dev/null +++ b/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/grapple/GrappleController.java @@ -0,0 +1,427 @@ +package fr.koka99cab.spiderman.grapple; + +import fr.koka99cab.spiderman.entity.GrapplingHookEntity; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; +import java.util.UUID; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents; +import net.minecraft.core.BlockPos; +import net.minecraft.resources.ResourceKey; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.sounds.SoundSource; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.player.Input; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.Vec3; + +public final class GrappleController { + private static final Map ACTIVE = new HashMap<>(); + + private static final double CAST_SPEED = 2.35D; + private static final double CAST_PLAYER_VELOCITY_FACTOR = 0.9D; + private static final double MAX_INITIAL_HOOK_SPEED = 4.25D; + private static final double CAST_FORWARD_OFFSET = 0.65D; + private static final double CAST_DOWN_OFFSET = 0.18D; + private static final double INITIAL_SLACK = 5.0D; + private static final double HELD_ROPE_SLACK = 0.02D; + private static final double ROPE_TAUT_TOLERANCE = 0.12D; + private static final double MIN_ROPE_LENGTH = 1.0D; + private static final double MAX_EXTRA_ROPE = 64.0D; + private static final double MAX_SESSION_DISTANCE = 152.0D; + private static final double SWING_PUMP = 0.055D; + private static final double REEL_IN_SPEED = 0.18D; + private static final double STUCK_REEL_IN_SPEED = 0.24D; + private static final double STUCK_SPEED_SQ = 0.018D; + private static final int STUCK_REEL_DELAY = 8; + private static final double PENDULUM_GRAVITY = 0.08D; + private static final double SWING_DAMPING = 0.998D; + private static final double FALL_INERTIA_TO_SWING = 1.22D; + private static final double CATCH_LIFT_FROM_SPEED = 0.18D; + private static final double CATCH_LIFT_FROM_FALL = 0.22D; + private static final double MAX_CATCH_LIFT = 0.72D; + private static final double MAX_SWING_SPEED = 6.5D; + private static final double PLAYER_CENTER_FACTOR = 0.5D; + private static final double RELEASE_BOOST_SPEED = 0.85D; + private static final double RELEASE_BOOST_FROM_SWING_SPEED = 0.12D; + private static final double MAX_RELEASE_SPEED_BOOST = 0.65D; + private static final double MAX_RELEASE_SPEED = 8.0D; + private static final double MIN_RELEASE_SWING_SPEED_SQ = 0.05D; + + private GrappleController() { + } + + public static void register() { + ServerTickEvents.END_SERVER_TICK.register(server -> { + Set onlinePlayers = new HashSet<>(); + + for (ServerPlayer player : server.getPlayerList().getPlayers()) { + onlinePlayers.add(player.getUUID()); + tick(player); + } + + ACTIVE.keySet().removeIf(uuid -> !onlinePlayers.contains(uuid)); + }); + } + + public static boolean start(ServerLevel level, ServerPlayer player, InteractionHand hand, ItemStack stack) { + GrappleSession existingSession = ACTIVE.get(player.getUUID()); + if (existingSession != null) { + stop(player, true); + playRetrieveSound(level, player); + return true; + } + + Vec3 look = player.calculateViewVector(player.getXRot(), player.getYRot()).normalize(); + Vec3 startPosition = player.getEyePosition().add(look.scale(CAST_FORWARD_OFFSET)).add(0.0D, -CAST_DOWN_OFFSET, 0.0D); + Vec3 velocity = initialHookVelocity(player, look); + GrapplingHookEntity hook = new GrapplingHookEntity(level, player, startPosition, velocity); + + level.addFreshEntity(hook); + ACTIVE.put(player.getUUID(), new GrappleSession(level.dimension(), startPosition, BlockPos.containing(startPosition), hook.getId())); + + stack.hurtAndBreak(1, player, hand); + level.playSound(null, player.getX(), player.getY(), player.getZ(), SoundEvents.FISHING_BOBBER_THROW, SoundSource.PLAYERS, 0.8F, 1.15F); + return true; + } + + public static void attach(ServerPlayer player, GrapplingHookEntity hook, BlockHitResult hitResult) { + GrappleSession session = ACTIVE.get(player.getUUID()); + if (session == null || session.visualHookId != hook.getId()) { + hook.discard(); + return; + } + + Vec3 anchorPosition = hitResult.getLocation(); + Vec3 playerCenter = playerCenter(player); + + session.anchored = true; + session.anchorPosition = anchorPosition; + session.anchorBlockPos = hitResult.getBlockPos(); + session.ropeLength = playerCenter.distanceTo(anchorPosition) + INITIAL_SLACK; + session.maxRopeLength = session.ropeLength + MAX_EXTRA_ROPE; + session.swingVelocity = player.getDeltaMovement(); + session.held = false; + session.ropeTaut = false; + session.manualReel = false; + session.jumpHeldLastTick = false; + session.stillTicks = 0; + + levelSound(player, SoundEvents.LEAD_TIED, 0.8F, 1.1F); + } + + public static void expire(ServerPlayer player, GrapplingHookEntity hook) { + GrappleSession session = ACTIVE.get(player.getUUID()); + if (session != null && session.visualHookId == hook.getId() && !session.anchored) { + stop(player); + playMissSound((ServerLevel) player.level(), player); + } + } + + public static boolean stop(ServerPlayer player) { + return stop(player, false); + } + + private static boolean stop(ServerPlayer player, boolean boostIfJumping) { + GrappleSession session = ACTIVE.remove(player.getUUID()); + if (session == null) { + return false; + } + + if (boostIfJumping) { + applyReleaseBoost(player, session); + } + + discardVisualHook((ServerLevel) player.level(), session); + return true; + } + + private static void tick(ServerPlayer player) { + GrappleSession session = ACTIVE.get(player.getUUID()); + if (session == null) { + return; + } + + if (!canKeepGrappling(player, session)) { + stop(player); + return; + } + + Entity visualHook = ((ServerLevel) player.level()).getEntity(session.visualHookId); + if (!(visualHook instanceof GrapplingHookEntity hook)) { + ACTIVE.remove(player.getUUID()); + return; + } + + if (!session.anchored) { + tickFlyingHook(player, session, hook); + return; + } + + Vec3 center = playerCenter(player); + double distance = center.distanceTo(session.anchorPosition); + if (distance > MAX_SESSION_DISTANCE || distance < 0.001D) { + stop(player); + return; + } + + Input input = player.getLastClientInput(); + updateReelState(session, input); + if (!shouldTensionRope(session, distance)) { + session.held = false; + session.ropeTaut = false; + session.swingVelocity = player.getDeltaMovement(); + session.jumpHeldLastTick = session.manualReel; + return; + } + + boolean firstCatch = tensionRope(session, distance) || !session.ropeTaut; + reelInIfRequested(session); + simulatePendulum(player, session, center, firstCatch); + session.ropeTaut = true; + session.jumpHeldLastTick = session.manualReel; + + player.resetFallDistance(); + } + + private static void tickFlyingHook(ServerPlayer player, GrappleSession session, GrapplingHookEntity hook) { + session.anchorPosition = hook.position(); + session.anchorBlockPos = hook.blockPosition(); + session.swingVelocity = player.getDeltaMovement(); + } + + private static void updateReelState(GrappleSession session, Input input) { + if (session.swingVelocity.lengthSqr() < STUCK_SPEED_SQ) { + session.stillTicks++; + } else { + session.stillTicks = 0; + } + + session.manualReel = input.jump(); + } + + private static boolean shouldTensionRope(GrappleSession session, double distance) { + return session.manualReel || session.ropeTaut || distance >= session.ropeLength - ROPE_TAUT_TOLERANCE; + } + + private static boolean tensionRope(GrappleSession session, double distance) { + boolean firstHold = session.manualReel && !session.jumpHeldLastTick; + if (firstHold || (session.manualReel && !session.held)) { + double heldLength = Math.max(MIN_ROPE_LENGTH, distance + HELD_ROPE_SLACK); + session.ropeLength = Math.min(session.ropeLength, heldLength); + } + + session.held = session.manualReel; + return firstHold; + } + + private static void reelInIfRequested(GrappleSession session) { + if (session.manualReel) { + double reelSpeed = session.stillTicks >= STUCK_REEL_DELAY ? STUCK_REEL_IN_SPEED : REEL_IN_SPEED; + session.ropeLength = Math.max(MIN_ROPE_LENGTH, session.ropeLength - reelSpeed); + } + } + + private static void simulatePendulum(ServerPlayer player, GrappleSession session, Vec3 center, boolean firstCatch) { + Vec3 radial = center.subtract(session.anchorPosition).normalize(); + Vec3 currentCenter = session.anchorPosition.add(radial.scale(session.ropeLength)); + Vec3 swingVelocity = firstCatch ? preservedCatchVelocity(player, radial) : projectOntoSwingPlane(session.swingVelocity, radial); + + Vec3 gravity = new Vec3(0.0D, -PENDULUM_GRAVITY, 0.0D); + swingVelocity = swingVelocity.add(projectOntoSwingPlane(gravity, radial)); + swingVelocity = swingVelocity.add(swingInput(player, radial)).scale(SWING_DAMPING); + swingVelocity = limitSpeed(swingVelocity); + + Vec3 nextCenter = currentCenter.add(swingVelocity); + Vec3 nextRadial = nextCenter.subtract(session.anchorPosition); + if (nextRadial.lengthSqr() < 0.001D) { + nextRadial = radial; + } else { + nextRadial = nextRadial.normalize(); + } + + Vec3 constrainedCenter = session.anchorPosition.add(nextRadial.scale(session.ropeLength)); + Vec3 actualVelocity = limitSpeed(constrainedCenter.subtract(currentCenter)); + double centerOffset = player.getBbHeight() * PLAYER_CENTER_FACTOR; + + session.swingVelocity = actualVelocity; + player.snapTo(constrainedCenter.x, constrainedCenter.y - centerOffset, constrainedCenter.z); + player.setDeltaMovement(actualVelocity); + player.hurtMarked = true; + } + + private static Vec3 preservedCatchVelocity(ServerPlayer player, Vec3 radial) { + Vec3 incomingVelocity = player.getDeltaMovement(); + Vec3 tangentVelocity = projectOntoSwingPlane(incomingVelocity, radial).add(catchLift(radial, incomingVelocity)); + double fallSpeed = Math.max(0.0D, -incomingVelocity.y); + double outwardSpeed = Math.max(0.0D, incomingVelocity.dot(radial)); + double targetSwingSpeed = Math.max(fallSpeed, outwardSpeed) * FALL_INERTIA_TO_SWING; + + if (targetSwingSpeed <= tangentVelocity.length()) { + return tangentVelocity; + } + + Vec3 swingDirection = catchSwingDirection(player, radial, tangentVelocity); + return swingDirection.scale(targetSwingSpeed); + } + + private static Vec3 catchLift(Vec3 radial, Vec3 incomingVelocity) { + double speed = incomingVelocity.length(); + if (speed < 0.08D) { + return Vec3.ZERO; + } + + Vec3 upwardTangent = projectOntoSwingPlane(new Vec3(0.0D, 1.0D, 0.0D), radial); + if (upwardTangent.lengthSqr() < 0.001D) { + return Vec3.ZERO; + } + + double fallSpeed = Math.max(0.0D, -incomingVelocity.y); + double lift = Math.min(MAX_CATCH_LIFT, speed * CATCH_LIFT_FROM_SPEED + fallSpeed * CATCH_LIFT_FROM_FALL); + return upwardTangent.normalize().scale(lift); + } + + private static Vec3 swingInput(ServerPlayer player, Vec3 radial) { + Vec3 tangentIntent = projectOntoSwingPlane(player.getLastClientMoveIntent(), radial); + if (tangentIntent.lengthSqr() < 0.001D) { + return Vec3.ZERO; + } + + return tangentIntent.normalize().scale(SWING_PUMP); + } + + private static Vec3 catchSwingDirection(ServerPlayer player, Vec3 radial, Vec3 tangentVelocity) { + if (tangentVelocity.lengthSqr() > 0.001D) { + return tangentVelocity.normalize(); + } + + Vec3 moveIntent = player.getLastClientMoveIntent(); + Vec3 tangentIntent = projectOntoSwingPlane(moveIntent, radial); + if (tangentIntent.lengthSqr() > 0.001D) { + return tangentIntent.normalize(); + } + + Vec3 look = player.calculateViewVector(player.getXRot(), player.getYRot()); + Vec3 tangentLook = projectOntoSwingPlane(look, radial); + if (tangentLook.lengthSqr() > 0.001D) { + return tangentLook.normalize(); + } + + Vec3 horizontalFallback = new Vec3(-radial.z, 0.0D, radial.x); + if (horizontalFallback.lengthSqr() > 0.001D) { + return horizontalFallback.normalize(); + } + + return new Vec3(1.0D, 0.0D, 0.0D); + } + + private static Vec3 projectOntoSwingPlane(Vec3 direction, Vec3 radial) { + return direction.subtract(radial.scale(direction.dot(radial))); + } + + private static Vec3 limitSpeed(Vec3 velocity) { + double speed = velocity.length(); + if (speed <= MAX_SWING_SPEED) { + return velocity; + } + + return velocity.scale(MAX_SWING_SPEED / speed); + } + + private static void applyReleaseBoost(ServerPlayer player, GrappleSession session) { + if (!player.getLastClientInput().sprint() || !canBoostOnRelease(session)) { + return; + } + + Vec3 currentVelocity = player.getDeltaMovement(); + Vec3 baseVelocity = currentVelocity.lengthSqr() >= session.swingVelocity.lengthSqr() ? currentVelocity : session.swingVelocity; + Vec3 look = player.calculateViewVector(player.getXRot(), player.getYRot()).normalize(); + double baseSpeed = baseVelocity.length(); + double boostSpeed = RELEASE_BOOST_SPEED + Math.min(MAX_RELEASE_SPEED_BOOST, baseSpeed * RELEASE_BOOST_FROM_SWING_SPEED); + Vec3 boostedVelocity = softLimitReleaseSpeed(baseVelocity.add(look.scale(boostSpeed)), baseSpeed + boostSpeed); + + player.setDeltaMovement(boostedVelocity); + player.hurtMarked = true; + } + + private static boolean canBoostOnRelease(GrappleSession session) { + return session.ropeTaut || session.swingVelocity.lengthSqr() >= MIN_RELEASE_SWING_SPEED_SQ; + } + + private static Vec3 softLimitReleaseSpeed(Vec3 velocity, double carriedSpeed) { + double speed = velocity.length(); + double maxAllowedSpeed = Math.max(MAX_RELEASE_SPEED, carriedSpeed); + if (speed <= maxAllowedSpeed) { + return velocity; + } + + return velocity.scale(maxAllowedSpeed / speed); + } + + private static boolean canKeepGrappling(ServerPlayer player, GrappleSession session) { + return player.isAlive() + && player.level().dimension() == session.dimension; + } + + private static Vec3 playerCenter(ServerPlayer player) { + return player.position().add(0.0D, player.getBbHeight() * PLAYER_CENTER_FACTOR, 0.0D); + } + + private static Vec3 initialHookVelocity(ServerPlayer player, Vec3 look) { + Vec3 velocity = look.scale(CAST_SPEED).add(player.getDeltaMovement().scale(CAST_PLAYER_VELOCITY_FACTOR)); + double speed = velocity.length(); + if (speed <= MAX_INITIAL_HOOK_SPEED) { + return velocity; + } + + return velocity.scale(MAX_INITIAL_HOOK_SPEED / speed); + } + + private static void discardVisualHook(ServerLevel level, GrappleSession session) { + Entity entity = level.getEntity(session.visualHookId); + if (entity instanceof GrapplingHookEntity) { + entity.discard(); + } + } + + private static void playRetrieveSound(ServerLevel level, ServerPlayer player) { + level.playSound(null, player.getX(), player.getY(), player.getZ(), SoundEvents.LEAD_UNTIED, SoundSource.PLAYERS, 0.9F, 1.0F); + } + + private static void playMissSound(ServerLevel level, ServerPlayer player) { + level.playSound(null, player.getX(), player.getY(), player.getZ(), SoundEvents.LEAD_UNTIED, SoundSource.PLAYERS, 0.35F, 0.8F); + } + + private static void levelSound(ServerPlayer player, net.minecraft.sounds.SoundEvent soundEvent, float volume, float pitch) { + player.level().playSound(null, player.getX(), player.getY(), player.getZ(), soundEvent, SoundSource.PLAYERS, volume, pitch); + } + + private static final class GrappleSession { + private final ResourceKey dimension; + private Vec3 anchorPosition; + private BlockPos anchorBlockPos; + private double maxRopeLength; + private final int visualHookId; + private double ropeLength; + private Vec3 swingVelocity = Vec3.ZERO; + private boolean anchored; + private boolean held; + private boolean ropeTaut; + private boolean manualReel; + private boolean jumpHeldLastTick; + private int stillTicks; + + private GrappleSession(ResourceKey dimension, Vec3 anchorPosition, BlockPos anchorBlockPos, int visualHookId) { + this.dimension = dimension; + this.anchorPosition = anchorPosition; + this.anchorBlockPos = anchorBlockPos; + this.visualHookId = visualHookId; + } + } +} diff --git a/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/item/GrapplingRodItem.java b/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/item/GrapplingRodItem.java new file mode 100644 index 0000000..2371f14 --- /dev/null +++ b/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/item/GrapplingRodItem.java @@ -0,0 +1,34 @@ +package fr.koka99cab.spiderman.item; + +import fr.koka99cab.spiderman.grapple.GrappleController; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.stats.Stats; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.gameevent.GameEvent; + +public class GrapplingRodItem extends Item { + public GrapplingRodItem(Properties properties) { + super(properties); + } + + @Override + public InteractionResult use(Level level, Player player, InteractionHand hand) { + ItemStack stack = player.getItemInHand(hand); + + if (level instanceof ServerLevel serverLevel && player instanceof ServerPlayer serverPlayer) { + if (!GrappleController.start(serverLevel, serverPlayer, hand, stack)) { + return InteractionResult.FAIL; + } + } + + player.awardStat(Stats.ITEM_USED.get(this)); + stack.causeUseVibration(player, GameEvent.ITEM_INTERACT_START); + return InteractionResult.CONSUME; + } +} diff --git a/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/registry/SpidermanEntityTypes.java b/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/registry/SpidermanEntityTypes.java new file mode 100644 index 0000000..c5031d6 --- /dev/null +++ b/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/registry/SpidermanEntityTypes.java @@ -0,0 +1,32 @@ +package fr.koka99cab.spiderman.registry; + +import fr.koka99cab.spiderman.SpidermanMod; +import fr.koka99cab.spiderman.entity.GrapplingHookEntity; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.MobCategory; + +public final class SpidermanEntityTypes { + private static final ResourceKey> GRAPPLING_HOOK_KEY = ResourceKey.create(Registries.ENTITY_TYPE, SpidermanMod.id("grappling_hook")); + + public static final EntityType GRAPPLING_HOOK = Registry.register( + BuiltInRegistries.ENTITY_TYPE, + GRAPPLING_HOOK_KEY, + EntityType.Builder.of(GrapplingHookEntity::new, MobCategory.MISC) + .sized(0.25F, 0.25F) + .clientTrackingRange(96) + .updateInterval(1) + .noSave() + .build(GRAPPLING_HOOK_KEY) + ); + + private SpidermanEntityTypes() { + } + + public static void register() { + SpidermanMod.LOGGER.debug("Entites Spiderman enregistrees."); + } +} diff --git a/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/registry/SpidermanItems.java b/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/registry/SpidermanItems.java new file mode 100644 index 0000000..ae141b1 --- /dev/null +++ b/Transport/spiderman/src/main/java/fr/koka99cab/spiderman/registry/SpidermanItems.java @@ -0,0 +1,49 @@ +package fr.koka99cab.spiderman.registry; + +import fr.koka99cab.spiderman.SpidermanMod; +import fr.koka99cab.spiderman.item.GrapplingRodItem; +import net.fabricmc.fabric.api.creativetab.v1.CreativeModeTabEvents; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.item.CreativeModeTab; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.Items; + +public final class SpidermanItems { + private static final ResourceKey GRAPPLING_HAND_KEY = key("grappling_hand"); + private static final ResourceKey GRAPPLING_ROD_KEY = key("grappling_rod"); + private static final ResourceKey INGREDIENTS_TAB = vanillaTab("ingredients"); + private static final ResourceKey TOOLS_TAB = vanillaTab("tools_and_utilities"); + + public static final Item GRAPPLING_HAND = Registry.register( + BuiltInRegistries.ITEM, + GRAPPLING_HAND_KEY, + new Item(new Item.Properties().setId(GRAPPLING_HAND_KEY)) + ); + + public static final Item GRAPPLING_ROD = Registry.register( + BuiltInRegistries.ITEM, + GRAPPLING_ROD_KEY, + new GrapplingRodItem(new Item.Properties().durability(64).setId(GRAPPLING_ROD_KEY)) + ); + + private SpidermanItems() { + } + + public static void register() { + CreativeModeTabEvents.modifyOutputEvent(INGREDIENTS_TAB).register(entries -> entries.insertAfter(Items.TRIPWIRE_HOOK, GRAPPLING_HAND)); + CreativeModeTabEvents.modifyOutputEvent(TOOLS_TAB).register(entries -> entries.insertAfter(Items.FISHING_ROD, GRAPPLING_ROD)); + SpidermanMod.LOGGER.debug("Objets Spiderman enregistres."); + } + + private static ResourceKey key(String path) { + return ResourceKey.create(Registries.ITEM, SpidermanMod.id(path)); + } + + private static ResourceKey vanillaTab(String path) { + return ResourceKey.create(Registries.CREATIVE_MODE_TAB, Identifier.withDefaultNamespace(path)); + } +} diff --git a/Transport/spiderman/src/main/resources/assets/spiderman/items/grappling_hand.json b/Transport/spiderman/src/main/resources/assets/spiderman/items/grappling_hand.json new file mode 100644 index 0000000..4f03a2e --- /dev/null +++ b/Transport/spiderman/src/main/resources/assets/spiderman/items/grappling_hand.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "spiderman:item/grappling_hand" + } +} diff --git a/Transport/spiderman/src/main/resources/assets/spiderman/items/grappling_rod.json b/Transport/spiderman/src/main/resources/assets/spiderman/items/grappling_rod.json new file mode 100644 index 0000000..b7774b3 --- /dev/null +++ b/Transport/spiderman/src/main/resources/assets/spiderman/items/grappling_rod.json @@ -0,0 +1,14 @@ +{ + "model": { + "type": "minecraft:condition", + "property": "spiderman:grappling_rod/cast", + "on_false": { + "type": "minecraft:model", + "model": "spiderman:item/grappling_rod" + }, + "on_true": { + "type": "minecraft:model", + "model": "spiderman:item/grappling_rod_cast" + } + } +} diff --git a/Transport/spiderman/src/main/resources/assets/spiderman/lang/en_us.json b/Transport/spiderman/src/main/resources/assets/spiderman/lang/en_us.json new file mode 100644 index 0000000..df8a376 --- /dev/null +++ b/Transport/spiderman/src/main/resources/assets/spiderman/lang/en_us.json @@ -0,0 +1,4 @@ +{ + "item.spiderman.grappling_hand": "Grappling Hand", + "item.spiderman.grappling_rod": "Grappling Rod" +} diff --git a/Transport/spiderman/src/main/resources/assets/spiderman/lang/fr_fr.json b/Transport/spiderman/src/main/resources/assets/spiderman/lang/fr_fr.json new file mode 100644 index 0000000..4b5053a --- /dev/null +++ b/Transport/spiderman/src/main/resources/assets/spiderman/lang/fr_fr.json @@ -0,0 +1,4 @@ +{ + "item.spiderman.grappling_hand": "Main du grappin", + "item.spiderman.grappling_rod": "Canne-grappin" +} diff --git a/Transport/spiderman/src/main/resources/assets/spiderman/models/item/grappling_hand.json b/Transport/spiderman/src/main/resources/assets/spiderman/models/item/grappling_hand.json new file mode 100644 index 0000000..2671c16 --- /dev/null +++ b/Transport/spiderman/src/main/resources/assets/spiderman/models/item/grappling_hand.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "spiderman:item/grappling_hook" + } +} diff --git a/Transport/spiderman/src/main/resources/assets/spiderman/models/item/grappling_rod.json b/Transport/spiderman/src/main/resources/assets/spiderman/models/item/grappling_rod.json new file mode 100644 index 0000000..a531210 --- /dev/null +++ b/Transport/spiderman/src/main/resources/assets/spiderman/models/item/grappling_rod.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "spiderman:item/grappling_rod" + } +} diff --git a/Transport/spiderman/src/main/resources/assets/spiderman/models/item/grappling_rod_cast.json b/Transport/spiderman/src/main/resources/assets/spiderman/models/item/grappling_rod_cast.json new file mode 100644 index 0000000..1ed9451 --- /dev/null +++ b/Transport/spiderman/src/main/resources/assets/spiderman/models/item/grappling_rod_cast.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/handheld_rod", + "textures": { + "layer0": "spiderman:item/grappling_rod_cast" + } +} diff --git a/Transport/spiderman/src/main/resources/assets/spiderman/textures/item/grappling_hook.png b/Transport/spiderman/src/main/resources/assets/spiderman/textures/item/grappling_hook.png new file mode 100644 index 0000000..768c1c3 Binary files /dev/null and b/Transport/spiderman/src/main/resources/assets/spiderman/textures/item/grappling_hook.png differ diff --git a/Transport/spiderman/src/main/resources/assets/spiderman/textures/item/grappling_rod.png b/Transport/spiderman/src/main/resources/assets/spiderman/textures/item/grappling_rod.png new file mode 100644 index 0000000..a6926b5 Binary files /dev/null and b/Transport/spiderman/src/main/resources/assets/spiderman/textures/item/grappling_rod.png differ diff --git a/Transport/spiderman/src/main/resources/assets/spiderman/textures/item/grappling_rod_cast.png b/Transport/spiderman/src/main/resources/assets/spiderman/textures/item/grappling_rod_cast.png new file mode 100644 index 0000000..07a5647 Binary files /dev/null and b/Transport/spiderman/src/main/resources/assets/spiderman/textures/item/grappling_rod_cast.png differ diff --git a/Transport/spiderman/src/main/resources/data/spiderman/recipe/grappling_hand.json b/Transport/spiderman/src/main/resources/data/spiderman/recipe/grappling_hand.json new file mode 100644 index 0000000..8571328 --- /dev/null +++ b/Transport/spiderman/src/main/resources/data/spiderman/recipe/grappling_hand.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "pattern": [ + " I ", + "ISI", + " I " + ], + "key": { + "I": "minecraft:iron_ingot", + "S": "minecraft:string" + }, + "result": { + "id": "spiderman:grappling_hand" + } +} diff --git a/Transport/spiderman/src/main/resources/data/spiderman/recipe/grappling_rod.json b/Transport/spiderman/src/main/resources/data/spiderman/recipe/grappling_rod.json new file mode 100644 index 0000000..216a60e --- /dev/null +++ b/Transport/spiderman/src/main/resources/data/spiderman/recipe/grappling_rod.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "equipment", + "pattern": [ + " #", + " #X", + "# H" + ], + "key": { + "#": "minecraft:stick", + "X": "minecraft:string", + "H": "spiderman:grappling_hand" + }, + "result": { + "id": "spiderman:grappling_rod" + } +} diff --git a/Transport/spiderman/src/main/resources/fabric.mod.json b/Transport/spiderman/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..936e288 --- /dev/null +++ b/Transport/spiderman/src/main/resources/fabric.mod.json @@ -0,0 +1,32 @@ +{ + "schemaVersion": 1, + "id": "spiderman", + "version": "${version}", + "name": "Spiderman", + "description": "Transforme la canne a peche en grappin Fabric simple.", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.spiderman.SpidermanMod" + ], + "client": [ + "fr.koka99cab.spiderman.client.SpidermanClient" + ] + }, + "mixins": [ + { + "config": "spiderman.client.mixins.json", + "environment": "client" + } + ], + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Transport/spiderman/src/main/resources/spiderman.client.mixins.json b/Transport/spiderman/src/main/resources/spiderman.client.mixins.json new file mode 100644 index 0000000..70f7d05 --- /dev/null +++ b/Transport/spiderman/src/main/resources/spiderman.client.mixins.json @@ -0,0 +1,11 @@ +{ + "required": true, + "package": "fr.koka99cab.spiderman.mixin.client", + "compatibilityLevel": "JAVA_25", + "client": [ + "ConditionalItemModelPropertiesAccessor" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/Worldgen/portals/.gitignore b/Worldgen/portals/.gitignore new file mode 100644 index 0000000..6553ebc --- /dev/null +++ b/Worldgen/portals/.gitignore @@ -0,0 +1,15 @@ +.gradle/ +build/ +out/ +run/ + +*.class +*.log + +.idea/ +*.iml +.vscode/ +.codex-cache/ + +*.jar +!gradle/wrapper/gradle-wrapper.jar diff --git a/Worldgen/portals/LICENSE b/Worldgen/portals/LICENSE new file mode 100644 index 0000000..0a04128 --- /dev/null +++ b/Worldgen/portals/LICENSE @@ -0,0 +1,165 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + + This version of the GNU Lesser General Public License incorporates +the terms and conditions of version 3 of the GNU General Public +License, supplemented by the additional permissions listed below. + + 0. Additional Definitions. + + As used herein, "this License" refers to version 3 of the GNU Lesser +General Public License, and the "GNU GPL" refers to version 3 of the GNU +General Public License. + + "The Library" refers to a covered work governed by this License, +other than an Application or a Combined Work as defined below. + + An "Application" is any work that makes use of an interface provided +by the Library, but which is not otherwise based on the Library. +Defining a subclass of a class defined by the Library is deemed a mode +of using an interface provided by the Library. + + A "Combined Work" is a work produced by combining or linking an +Application with the Library. The particular version of the Library +with which the Combined Work was made is also called the "Linked +Version". + + The "Minimal Corresponding Source" for a Combined Work means the +Corresponding Source for the Combined Work, excluding any source code +for portions of the Combined Work that, considered in isolation, are +based on the Application, and not on the Linked Version. + + The "Corresponding Application Code" for a Combined Work means the +object code and/or source code for the Application, including any data +and utility programs needed for reproducing the Combined Work from the +Application, but excluding the System Libraries of the Combined Work. + + 1. Exception to Section 3 of the GNU GPL. + + You may convey a covered work under sections 3 and 4 of this License +without being bound by section 3 of the GNU GPL. + + 2. Conveying Modified Versions. + + If you modify a copy of the Library, and, in your modifications, a +facility refers to a function or data to be supplied by an Application +that uses the facility (other than as an argument passed when the +facility is invoked), then you may convey a copy of the modified +version: + + a) under this License, provided that you make a good faith effort to + ensure that, in the event an Application does not supply the + function or data, the facility still operates, and performs + whatever part of its purpose remains meaningful, or + + b) under the GNU GPL, with none of the additional permissions of + this License applicable to that copy. + + 3. Object Code Incorporating Material from Library Header Files. + + The object code form of an Application may incorporate material from +a header file that is part of the Library. You may convey such object +code under terms of your choice, provided that, if the incorporated +material is not limited to numerical parameters, data structure +layouts and accessors, or small macros, inline functions and templates +(ten or fewer lines in length), you do both of the following: + + a) Give prominent notice with each copy of the object code that the + Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the object code with a copy of the GNU GPL and this license + document. + + 4. Combined Works. + + You may convey a Combined Work under terms of your choice that, +taken together, effectively do not restrict modification of the +portions of the Library contained in the Combined Work and reverse +engineering for debugging such modifications, if you also do each of +the following: + + a) Give prominent notice with each copy of the Combined Work that + the Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the Combined Work with a copy of the GNU GPL and this license + document. + + c) For a Combined Work that displays copyright notices during + execution, include the copyright notice for the Library among + these notices, as well as a reference directing the user to the + copies of the GNU GPL and this license document. + + d) Do one of the following: + + 0) Convey the Minimal Corresponding Source under the terms of this + License, and the Corresponding Application Code in a form + suitable for, and under terms that permit, the user to + recombine or relink the Application with a modified version of + the Linked Version to produce a modified Combined Work, in the + manner specified by section 6 of the GNU GPL for conveying + Corresponding Source. + + 1) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (a) uses at run time + a copy of the Library already present on the user's computer + system, and (b) will operate properly with a modified version + of the Library that is interface-compatible with the Linked + Version. + + e) Provide Installation Information, but only if you would otherwise + be required to provide such information under section 6 of the + GNU GPL, and only to the extent that such information is + necessary to install and execute a modified version of the + Combined Work produced by recombining or relinking the + Application with a modified version of the Linked Version. (If + you use option 4d0, the Installation Information must accompany + the Minimal Corresponding Source and Corresponding Application + Code. If you use option 4d1, you must provide the Installation + Information in the manner specified by section 6 of the GNU GPL + for conveying Corresponding Source.) + + 5. Combined Libraries. + + You may place library facilities that are a work based on the +Library side by side in a single library together with other library +facilities that are not Applications and are not covered by this +License, and convey such a combined library under terms of your +choice, if you do both of the following: + + a) Accompany the combined library with a copy of the same work based + on the Library, uncombined with any other library facilities, + conveyed under the terms of this License. + + b) Give prominent notice with the combined library that part of it + is a work based on the Library, and explaining where to find the + accompanying uncombined form of the same work. + + 6. Revised Versions of the GNU Lesser General Public License. + + The Free Software Foundation may publish revised and/or new versions +of the GNU Lesser General Public License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. + + Each version is given a distinguishing version number. If the +Library as you received it specifies that a certain numbered version +of the GNU Lesser General Public License "or any later version" +applies to it, you have the option of following the terms and +conditions either of that published version or of any later version +published by the Free Software Foundation. If the Library as you +received it does not specify a version number of the GNU Lesser +General Public License, you may choose any version of the GNU Lesser +General Public License ever published by the Free Software Foundation. + + If the Library as you received it specifies that a proxy can decide +whether future versions of the GNU Lesser General Public License shall +apply, that proxy's public statement of acceptance of any version is +permanent authorization for you to choose that version for the +Library. diff --git a/Worldgen/portals/README.md b/Worldgen/portals/README.md new file mode 100644 index 0000000..a135eb1 --- /dev/null +++ b/Worldgen/portals/README.md @@ -0,0 +1,36 @@ +# Portals + +Fabric mod for Minecraft Java `26.1.2`. + +## Description + +Portals adds ritual portals to strange in-world dimensions for Minecraft Java. Build frames from specific blocks, light them with flint and steel, and step into places that feel like they could exist inside Minecraft's own mythology: ore-rich cavern worlds, alternate overworlds, impossible sheep plains, the haunted Skeleton Waste, and sunset-painted canyons. + +Portals ajoute des portails rituels vers des dimensions etranges integrees au monde de Minecraft Java. Construisez des cadres avec des blocs precis, allumez-les au briquet, puis traversez vers des lieux qui semblent appartenir a la mythologie interne de Minecraft : cavernes riches en minerais, overworld alternatif, plaines impossibles remplies de moutons, Skeleton Waste hantee et canyons peints au soleil couchant. + +## Current Content + +- Ore Caves: a dark cave dimension with dense ores, geodes, lush and dripstone cave zones, rare cave trees, and heavier hostile spawning. +- Overworld II: a dirt-framed portal to another overworld-style dimension, useful with worldgen mods. +- Sheep Land: a white wool portal to a bright rolling world full of naturally colored sheep. +- Skeleton Waste: a bone block portal to a dangerous soul-valley wasteland with yellow oceans, basalt spikes, fossils, rare ruined castles, and skeleton-family spawns. +- Painted Canyons: a mixed-terracotta portal to a dry sunset badlands dimension with colored terracotta strata, deep ravines, sparse white-leaf oak groves, and no ore generation. +- All portals use a 4x5 frame with a 2x3 empty interior, then ignite with flint and steel. + +The portal code is intentionally definition-based so more portal families can be added later, including coded portals that resolve to generated dimensions. + +## Requirements + +- Java 25 +- Fabric Loader `0.19.2` +- Fabric API `0.149.1+26.1.2` + +## Development + +```sh +./gradlew build +``` + +## License + +This project is licensed under `LGPL-3.0-or-later`. diff --git a/Worldgen/portals/build.gradle b/Worldgen/portals/build.gradle new file mode 100644 index 0000000..86be03d --- /dev/null +++ b/Worldgen/portals/build.gradle @@ -0,0 +1,77 @@ +plugins { + id 'net.fabricmc.fabric-loom' version "${loom_version}" + id 'maven-publish' +} + +version = project.mod_version +group = project.maven_group + +base { + archivesName = project.archives_base_name +} + +repositories { + // Loom adds the core Fabric and Minecraft repositories automatically. +} + +loom { + splitEnvironmentSourceSets() + + mods { + "portals" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def properties = [ + version: project.version, + minecraft_version: project.minecraft_version, + loader_version: project.loader_version + ] + + inputs.properties properties + + filesMatching("fabric.mod.json") { + expand properties + } +} + +tasks.withType(JavaCompile).configureEach { + options.release = 25 +} + +java { + withSourcesJar() + + toolchain { + languageVersion = JavaLanguageVersion.of(25) + } +} + +jar { + from("LICENSE") { + rename { "${it}_${project.archives_base_name}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + artifactId = project.archives_base_name + from components.java + } + } + + repositories { + // Add a Maven repository here when you are ready to publish. + } +} diff --git a/Worldgen/portals/gradle.properties b/Worldgen/portals/gradle.properties new file mode 100644 index 0000000..73d1448 --- /dev/null +++ b/Worldgen/portals/gradle.properties @@ -0,0 +1,19 @@ +# Gradle +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with Fabric Loom configuration cache. +org.gradle.configuration-cache=false + +# Fabric +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16.2 + +# Mod +mod_version=1.0.0 +maven_group=net.koka99cab +archives_base_name=portals + +# Dependencies +fabric_api_version=0.149.0+26.1.2 diff --git a/Worldgen/portals/gradle/wrapper/gradle-wrapper.jar b/Worldgen/portals/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Worldgen/portals/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Worldgen/portals/gradle/wrapper/gradle-wrapper.properties b/Worldgen/portals/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Worldgen/portals/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Worldgen/portals/gradlew b/Worldgen/portals/gradlew new file mode 100755 index 0000000..739907d --- /dev/null +++ b/Worldgen/portals/gradlew @@ -0,0 +1,248 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Worldgen/portals/gradlew.bat b/Worldgen/portals/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Worldgen/portals/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Worldgen/portals/portals.png b/Worldgen/portals/portals.png new file mode 100644 index 0000000..c2dabb9 Binary files /dev/null and b/Worldgen/portals/portals.png differ diff --git a/Worldgen/portals/settings.gradle b/Worldgen/portals/settings.gradle new file mode 100644 index 0000000..1e70cd4 --- /dev/null +++ b/Worldgen/portals/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = 'Fabric' + url = 'https://maven.fabricmc.net/' + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = 'portals' diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/PortalsMod.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/PortalsMod.java new file mode 100644 index 0000000..f5f95e9 --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/PortalsMod.java @@ -0,0 +1,38 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals; + +import net.fabricmc.api.ModInitializer; +import net.koka99cab.portals.portal.PortalDefinitions; +import net.koka99cab.portals.portal.PortalIgnitionHandler; +import net.koka99cab.portals.registry.ModBlocks; +import net.koka99cab.portals.world.ModDimensions; +import net.koka99cab.portals.world.ModFeatures; +import net.koka99cab.portals.world.SkeletonWasteSpawner; +import net.minecraft.resources.Identifier; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class PortalsMod implements ModInitializer { + public static final String MOD_ID = "portals"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + public static Identifier id(String path) { + return Identifier.fromNamespaceAndPath(MOD_ID, path); + } + + @Override + public void onInitialize() { + ModDimensions.init(); + ModFeatures.init(); + ModBlocks.init(); + PortalDefinitions.init(); + PortalIgnitionHandler.register(); + SkeletonWasteSpawner.register(); + + LOGGER.info("Portals initialized."); + } +} diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/block/OrePortalBlock.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/block/OrePortalBlock.java new file mode 100644 index 0000000..c6bd0c7 --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/block/OrePortalBlock.java @@ -0,0 +1,180 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals.block; + +import com.mojang.serialization.MapCodec; +import java.util.Map; +import java.util.Optional; +import java.util.function.Predicate; +import net.koka99cab.portals.portal.PortalFrame; +import net.koka99cab.portals.portal.PortalTeleporter; +import net.koka99cab.portals.world.ModDimensions; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.particles.ParticleOptions; +import net.minecraft.core.particles.ParticleTypes; +import net.minecraft.resources.ResourceKey; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.sounds.SoundSource; +import net.minecraft.util.RandomSource; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.InsideBlockEffectApplier; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelReader; +import net.minecraft.world.level.ScheduledTickAccess; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.Portal; +import net.minecraft.world.level.block.Rotation; +import net.minecraft.world.level.block.state.BlockBehaviour; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.level.block.state.properties.BlockStateProperties; +import net.minecraft.world.level.block.state.properties.EnumProperty; +import net.minecraft.world.level.gamerules.GameRules; +import net.minecraft.world.level.portal.TeleportTransition; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.phys.shapes.CollisionContext; +import net.minecraft.world.phys.shapes.Shapes; +import net.minecraft.world.phys.shapes.VoxelShape; + +public class OrePortalBlock extends Block implements Portal { + public static final MapCodec CODEC = simpleCodec(OrePortalBlock::new); + public static final EnumProperty AXIS = BlockStateProperties.HORIZONTAL_AXIS; + private static final Map SHAPES = Shapes.rotateHorizontalAxis(Block.column(4.0, 16.0, 0.0, 16.0)); + private final ResourceKey destination; + private final Block frameBlock; + private final Predicate framePredicate; + private final ParticleOptions particle; + + public OrePortalBlock(BlockBehaviour.Properties properties) { + this(properties, ModDimensions.ORE_CAVES, Blocks.STONE, ParticleTypes.END_ROD); + } + + public OrePortalBlock(BlockBehaviour.Properties properties, ResourceKey destination, Block frameBlock, ParticleOptions particle) { + this(properties, destination, frameBlock, state -> state.is(frameBlock), particle); + } + + public OrePortalBlock(BlockBehaviour.Properties properties, ResourceKey destination, Block frameBlock, Predicate framePredicate, ParticleOptions particle) { + super(properties); + this.destination = destination; + this.frameBlock = frameBlock; + this.framePredicate = framePredicate; + this.particle = particle; + registerDefaultState(stateDefinition.any().setValue(AXIS, Direction.Axis.X)); + } + + @Override + protected MapCodec codec() { + return CODEC; + } + + @Override + protected VoxelShape getShape(BlockState state, BlockGetter level, BlockPos pos, CollisionContext context) { + return SHAPES.get(state.getValue(AXIS)); + } + + @Override + protected BlockState updateShape(BlockState state, LevelReader level, ScheduledTickAccess ticks, BlockPos pos, Direction directionToNeighbour, BlockPos neighbourPos, BlockState neighbourState, RandomSource random) { + Direction.Axis axis = state.getValue(AXIS); + + if (PortalFrame.findExisting(level, pos, axis, framePredicate, this).isPresent()) { + return super.updateShape(state, level, ticks, pos, directionToNeighbour, neighbourPos, neighbourState, random); + } + + return Blocks.AIR.defaultBlockState(); + } + + @Override + protected void entityInside(BlockState state, Level level, BlockPos pos, Entity entity, InsideBlockEffectApplier effectApplier, boolean isPrecise) { + if (entity.canUsePortal(false)) { + entity.setAsInsidePortal(this, pos); + } + } + + @Override + public int getPortalTransitionTime(ServerLevel level, Entity entity) { + if (entity instanceof Player player) { + return Math.max(0, level.getGameRules().get(player.getAbilities().invulnerable ? GameRules.PLAYERS_NETHER_PORTAL_CREATIVE_DELAY : GameRules.PLAYERS_NETHER_PORTAL_DEFAULT_DELAY)); + } + + return 0; + } + + @Override + public TeleportTransition getPortalDestination(ServerLevel currentLevel, Entity entity, BlockPos portalEntryPos) { + ServerLevel targetLevel = currentLevel.getServer().getLevel(currentLevel.dimension().equals(destination) ? Level.OVERWORLD : destination); + + if (targetLevel == null) { + return null; + } + + Direction.Axis axis = currentLevel.getBlockState(portalEntryPos).getOptionalValue(AXIS).orElse(Direction.Axis.X); + Optional exit = PortalTeleporter.findOrCreateExit(targetLevel, entity, portalEntryPos, axis, frameBlock, framePredicate, this); + + if (exit.isEmpty()) { + return null; + } + + return new TeleportTransition( + targetLevel, + exit.get(), + Vec3.ZERO, + entity.getYRot(), + entity.getXRot(), + TeleportTransition.PLAY_PORTAL_SOUND + ); + } + + @Override + public Transition getLocalTransition() { + return Transition.CONFUSION; + } + + @Override + public void animateTick(BlockState state, Level level, BlockPos pos, RandomSource random) { + if (random.nextInt(100) == 0) { + level.playLocalSound(pos, SoundEvents.PORTAL_AMBIENT, SoundSource.BLOCKS, 0.35F, random.nextFloat() * 0.4F + 0.8F, false); + } + + for (int i = 0; i < 4; i++) { + double x = pos.getX() + random.nextDouble(); + double y = pos.getY() + random.nextDouble(); + double z = pos.getZ() + random.nextDouble(); + double velocityX = (random.nextFloat() - 0.5D) * 0.5D; + double velocityY = (random.nextFloat() - 0.5D) * 0.5D; + double velocityZ = (random.nextFloat() - 0.5D) * 0.5D; + + level.addParticle(particle, x, y, z, velocityX * 0.25D, velocityY * 0.25D, velocityZ * 0.25D); + } + } + + @Override + protected ItemStack getCloneItemStack(LevelReader level, BlockPos pos, BlockState state, boolean includeData) { + return ItemStack.EMPTY; + } + + @Override + protected BlockState rotate(BlockState state, Rotation rotation) { + return switch (rotation) { + case CLOCKWISE_90, COUNTERCLOCKWISE_90 -> switch (state.getValue(AXIS)) { + case X -> state.setValue(AXIS, Direction.Axis.Z); + case Z -> state.setValue(AXIS, Direction.Axis.X); + default -> state; + }; + default -> state; + }; + } + + @Override + protected void createBlockStateDefinition(StateDefinition.Builder builder) { + builder.add(AXIS); + } +} diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/mixin/SheepColorMixin.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/mixin/SheepColorMixin.java new file mode 100644 index 0000000..7bb17b6 --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/mixin/SheepColorMixin.java @@ -0,0 +1,41 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals.mixin; + +import net.koka99cab.portals.world.ModDimensions; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.util.Mth; +import net.minecraft.world.DifficultyInstance; +import net.minecraft.world.entity.EntitySpawnReason; +import net.minecraft.world.entity.SpawnGroupData; +import net.minecraft.world.entity.animal.sheep.Sheep; +import net.minecraft.world.item.DyeColor; +import net.minecraft.world.level.ServerLevelAccessor; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(Sheep.class) +public abstract class SheepColorMixin { + @Inject(method = "finalizeSpawn", at = @At("RETURN")) + private void portals$randomizeSheepLandColor(ServerLevelAccessor level, DifficultyInstance difficulty, EntitySpawnReason spawnReason, SpawnGroupData groupData, CallbackInfoReturnable callbackInfo) { + ServerLevel serverLevel = level.getLevel(); + + if (serverLevel.dimension() != ModDimensions.SHEEP_LAND) { + return; + } + + if (spawnReason != EntitySpawnReason.NATURAL && spawnReason != EntitySpawnReason.CHUNK_GENERATION) { + return; + } + + Sheep sheep = (Sheep)(Object)this; + long seed = sheep.getUUID().getMostSignificantBits() ^ sheep.getUUID().getLeastSignificantBits() ^ sheep.blockPosition().asLong(); + int colorIndex = Mth.positiveModulo(Mth.murmurHash3Mixer((int)(seed ^ seed >>> 32)), DyeColor.VALUES.size()); + sheep.setColor(DyeColor.VALUES.get(colorIndex)); + } +} diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalDefinition.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalDefinition.java new file mode 100644 index 0000000..ac8513c --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalDefinition.java @@ -0,0 +1,32 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals.portal; + +import java.util.function.Predicate; + +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.item.Item; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; + +public record PortalDefinition( + Identifier id, + Block frameBlock, + Item activationItem, + Block portalBlock, + ResourceKey destination, + Predicate framePredicate +) { + public PortalDefinition(Identifier id, Block frameBlock, Item activationItem, Block portalBlock, ResourceKey destination) { + this(id, frameBlock, activationItem, portalBlock, destination, state -> state.is(frameBlock)); + } + + public boolean matchesFrame(BlockState state) { + return framePredicate.test(state); + } +} diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalDefinitions.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalDefinitions.java new file mode 100644 index 0000000..1157651 --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalDefinitions.java @@ -0,0 +1,79 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals.portal; + +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; + +import net.koka99cab.portals.PortalsMod; +import net.koka99cab.portals.registry.ModBlocks; +import net.koka99cab.portals.world.ModDimensions; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.Items; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; + +public final class PortalDefinitions { + private static final List DEFINITIONS = new ArrayList<>(); + + public static final PortalDefinition ORE_CAVES = register(new PortalDefinition( + PortalsMod.id("ore_caves"), + Blocks.STONE, + Items.FLINT_AND_STEEL, + ModBlocks.ORE_PORTAL, + ModDimensions.ORE_CAVES + )); + public static final PortalDefinition OVERWORLD2 = register(new PortalDefinition( + PortalsMod.id("overworld2"), + Blocks.DIRT, + Items.FLINT_AND_STEEL, + ModBlocks.OVERWORLD2_PORTAL, + ModDimensions.OVERWORLD2, + state -> state.is(Blocks.DIRT) || state.is(Blocks.GRASS_BLOCK) + )); + public static final PortalDefinition SHEEP_LAND = register(new PortalDefinition( + PortalsMod.id("sheep_land"), + Blocks.WHITE_WOOL, + Items.FLINT_AND_STEEL, + ModBlocks.SHEEP_LAND_PORTAL, + ModDimensions.SHEEP_LAND + )); + public static final PortalDefinition SKELETON_WASTE = register(new PortalDefinition( + PortalsMod.id("skeleton_waste"), + Blocks.BONE_BLOCK, + Items.FLINT_AND_STEEL, + ModBlocks.SKELETON_WASTE_PORTAL, + ModDimensions.SKELETON_WASTE + )); + public static final PortalDefinition PAINTED_CANYONS = register(new PortalDefinition( + PortalsMod.id("painted_canyons"), + Blocks.TERRACOTTA, + Items.FLINT_AND_STEEL, + ModBlocks.PAINTED_CANYONS_PORTAL, + ModDimensions.PAINTED_CANYONS, + PortalFramePredicates.TERRACOTTA + )); + + private PortalDefinitions() { + } + + public static void init() { + PortalsMod.LOGGER.debug("Registered {} portal definitions", DEFINITIONS.size()); + } + + public static Optional find(Item activationItem, net.minecraft.world.level.block.state.BlockState frameState) { + return DEFINITIONS.stream() + .filter(definition -> definition.activationItem() == activationItem) + .filter(definition -> definition.matchesFrame(frameState)) + .findFirst(); + } + + private static PortalDefinition register(PortalDefinition definition) { + DEFINITIONS.add(definition); + return definition; + } +} diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalFrame.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalFrame.java new file mode 100644 index 0000000..13aa944 --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalFrame.java @@ -0,0 +1,106 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals.portal; + +import java.util.Optional; +import java.util.function.Predicate; + +import net.koka99cab.portals.block.OrePortalBlock; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelReader; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; + +public record PortalFrame(Direction.Axis axis, BlockPos origin) { + public static final int INTERIOR_WIDTH = 2; + public static final int INTERIOR_HEIGHT = 3; + public static final int OUTER_WIDTH = INTERIOR_WIDTH + 2; + public static final int OUTER_HEIGHT = INTERIOR_HEIGHT + 2; + + public static Optional findForIgnition(LevelReader level, BlockPos interiorPos, Predicate framePredicate) { + return find(level, interiorPos, framePredicate, state -> state.isAir() || state.canBeReplaced()); + } + + public static Optional findExisting(LevelReader level, BlockPos portalPos, Direction.Axis axis, Block frameBlock, Block portalBlock) { + return findExisting(level, portalPos, axis, state -> state.is(frameBlock), portalBlock); + } + + public static Optional findExisting(LevelReader level, BlockPos portalPos, Direction.Axis axis, Predicate framePredicate, Block portalBlock) { + return find(level, portalPos, axis, framePredicate, state -> state.is(portalBlock)); + } + + public void fill(Level level, BlockState portalState) { + BlockState orientedState = portalState.setValue(OrePortalBlock.AXIS, axis); + + for (int horizontal = 1; horizontal <= INTERIOR_WIDTH; horizontal++) { + for (int vertical = 1; vertical <= INTERIOR_HEIGHT; vertical++) { + level.setBlock(at(horizontal, vertical), orientedState, Block.UPDATE_CLIENTS | Block.UPDATE_KNOWN_SHAPE); + } + } + } + + public BlockPos center() { + return at(1, 1); + } + + private static Optional find(LevelReader level, BlockPos interiorPos, Predicate framePredicate, Predicate interiorPredicate) { + Optional xFrame = find(level, interiorPos, Direction.Axis.X, framePredicate, interiorPredicate); + + if (xFrame.isPresent()) { + return xFrame; + } + + return find(level, interiorPos, Direction.Axis.Z, framePredicate, interiorPredicate); + } + + private static Optional find(LevelReader level, BlockPos interiorPos, Direction.Axis axis, Predicate framePredicate, Predicate interiorPredicate) { + for (int horizontalOffset = 1; horizontalOffset <= INTERIOR_WIDTH; horizontalOffset++) { + for (int verticalOffset = 1; verticalOffset <= INTERIOR_HEIGHT; verticalOffset++) { + BlockPos origin = offset(interiorPos, axis, -horizontalOffset, -verticalOffset); + PortalFrame frame = new PortalFrame(axis, origin); + + if (frame.isValid(level, framePredicate, interiorPredicate)) { + return Optional.of(frame); + } + } + } + + return Optional.empty(); + } + + private boolean isValid(LevelReader level, Predicate framePredicate, Predicate interiorPredicate) { + for (int horizontal = 0; horizontal < OUTER_WIDTH; horizontal++) { + for (int vertical = 0; vertical < OUTER_HEIGHT; vertical++) { + BlockState state = level.getBlockState(at(horizontal, vertical)); + boolean border = horizontal == 0 || horizontal == OUTER_WIDTH - 1 || vertical == 0 || vertical == OUTER_HEIGHT - 1; + + if (border) { + if (!framePredicate.test(state)) { + return false; + } + } else if (!interiorPredicate.test(state)) { + return false; + } + } + } + + return true; + } + + private BlockPos at(int horizontal, int vertical) { + return offset(origin, axis, horizontal, vertical); + } + + private static BlockPos offset(BlockPos pos, Direction.Axis axis, int horizontal, int vertical) { + return switch (axis) { + case X -> pos.east(horizontal).above(vertical); + case Z -> pos.south(horizontal).above(vertical); + default -> throw new IllegalArgumentException("Portal frame axis must be horizontal"); + }; + } +} diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalFramePredicates.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalFramePredicates.java new file mode 100644 index 0000000..9710678 --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalFramePredicates.java @@ -0,0 +1,40 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals.portal; + +import java.util.Set; +import java.util.function.Predicate; + +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockState; + +public final class PortalFramePredicates { + private static final Set TERRACOTTA_BLOCKS = Set.of( + Blocks.TERRACOTTA, + Blocks.WHITE_TERRACOTTA, + Blocks.ORANGE_TERRACOTTA, + Blocks.MAGENTA_TERRACOTTA, + Blocks.LIGHT_BLUE_TERRACOTTA, + Blocks.YELLOW_TERRACOTTA, + Blocks.LIME_TERRACOTTA, + Blocks.PINK_TERRACOTTA, + Blocks.GRAY_TERRACOTTA, + Blocks.LIGHT_GRAY_TERRACOTTA, + Blocks.CYAN_TERRACOTTA, + Blocks.PURPLE_TERRACOTTA, + Blocks.BLUE_TERRACOTTA, + Blocks.BROWN_TERRACOTTA, + Blocks.GREEN_TERRACOTTA, + Blocks.RED_TERRACOTTA, + Blocks.BLACK_TERRACOTTA + ); + + public static final Predicate TERRACOTTA = state -> TERRACOTTA_BLOCKS.contains(state.getBlock()); + + private PortalFramePredicates() { + } +} diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalIgnitionHandler.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalIgnitionHandler.java new file mode 100644 index 0000000..202596d --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalIgnitionHandler.java @@ -0,0 +1,61 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals.portal; + +import java.util.Optional; + +import net.fabricmc.fabric.api.event.player.UseBlockCallback; +import net.minecraft.core.BlockPos; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.sounds.SoundSource; +import net.minecraft.world.InteractionResult; +import net.minecraft.world.item.ItemStack; + +public final class PortalIgnitionHandler { + private PortalIgnitionHandler() { + } + + public static void register() { + UseBlockCallback.EVENT.register((player, level, hand, hitResult) -> { + ItemStack stack = player.getItemInHand(hand); + BlockPos clickedPos = hitResult.getBlockPos(); + + Optional definition = PortalDefinitions.find(stack.getItem(), level.getBlockState(clickedPos)); + + if (definition.isEmpty()) { + return InteractionResult.PASS; + } + + BlockPos interiorPos = clickedPos.relative(hitResult.getDirection()); + Optional frame = PortalFrame.findForIgnition(level, interiorPos, definition.get().framePredicate()); + + if (frame.isEmpty()) { + return InteractionResult.PASS; + } + + if (level.isClientSide()) { + return InteractionResult.SUCCESS; + } + + if (!level.mayInteract(player, clickedPos) || !level.mayInteract(player, interiorPos)) { + return InteractionResult.FAIL; + } + + frame.get().fill(level, definition.get().portalBlock().defaultBlockState()); + level.playSound( + player, + interiorPos, + SoundEvents.FLINTANDSTEEL_USE, + SoundSource.BLOCKS, + 1.0F, + level.getRandom().nextFloat() * 0.4F + 0.8F + ); + stack.hurtAndBreak(1, player, hand); + + return InteractionResult.SUCCESS; + }); + } +} diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalTeleporter.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalTeleporter.java new file mode 100644 index 0000000..8206b09 --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/portal/PortalTeleporter.java @@ -0,0 +1,304 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals.portal; + +import java.util.Optional; +import java.util.function.Predicate; + +import net.koka99cab.portals.block.OrePortalBlock; +import net.koka99cab.portals.world.ModDimensions; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.Heightmap; +import net.minecraft.world.phys.Vec3; + +public final class PortalTeleporter { + private static final int PORTAL_SEARCH_RADIUS = 32; + private static final int SAFE_SEARCH_RADIUS = 48; + + private PortalTeleporter() { + } + + public static Optional findOrCreateExit(ServerLevel targetLevel, Entity entity, BlockPos entryPos, Direction.Axis axis, Block frameBlock, Predicate framePredicate, Block portalBlock) { + BlockPos targetPos = clampedTargetPos(targetLevel, entryPos); + Optional existingFrame = findNearbyPortal(targetLevel, targetPos, axis, framePredicate, portalBlock); + + if (existingFrame.isPresent()) { + return Optional.of(exitPosition(existingFrame.get())); + } + + BlockPos safeTargetPos = findSafeTargetPos(targetLevel, targetPos); + PortalFrame frame = createExitFrame(targetLevel, safeTargetPos, axis, frameBlock, portalBlock); + + if (!hasClearExitPocket(targetLevel, frame)) { + clearExitPocket(targetLevel, frame); + } + + return Optional.of(exitPosition(frame)); + } + + private static Optional findNearbyPortal(ServerLevel level, BlockPos center, Direction.Axis axis, Predicate framePredicate, Block portalBlock) { + PortalFrame bestFrame = null; + double bestDistance = Double.MAX_VALUE; + int minY = level.getMinY(); + int maxY = level.getMaxY() - 1; + + for (BlockPos pos : BlockPos.betweenClosed(center.offset(-PORTAL_SEARCH_RADIUS, 0, -PORTAL_SEARCH_RADIUS).atY(minY), center.offset(PORTAL_SEARCH_RADIUS, 0, PORTAL_SEARCH_RADIUS).atY(maxY))) { + BlockState state = level.getBlockState(pos); + + if (!state.is(portalBlock)) { + continue; + } + + Direction.Axis candidateAxis = state.getOptionalValue(OrePortalBlock.AXIS).orElse(axis); + Optional frame = PortalFrame.findExisting(level, pos, candidateAxis, framePredicate, portalBlock); + + if (frame.isEmpty()) { + frame = PortalFrame.findExisting(level, pos, axis, framePredicate, portalBlock); + } + + if (frame.isEmpty()) { + continue; + } + + double distance = frame.get().center().distSqr(center); + + if (distance < bestDistance) { + bestFrame = frame.get(); + bestDistance = distance; + } + } + + return Optional.ofNullable(bestFrame); + } + + private static PortalFrame createExitFrame(ServerLevel level, BlockPos targetPos, Direction.Axis axis, Block frameBlock, Block portalBlock) { + BlockPos origin = switch (axis) { + case X -> targetPos.west(1).below(1); + case Z -> targetPos.north(1).below(1); + default -> targetPos.below(1); + }; + PortalFrame frame = new PortalFrame(axis, origin); + + for (int horizontal = 0; horizontal < PortalFrame.OUTER_WIDTH; horizontal++) { + for (int vertical = 0; vertical < PortalFrame.OUTER_HEIGHT; vertical++) { + boolean border = horizontal == 0 || horizontal == PortalFrame.OUTER_WIDTH - 1 || vertical == 0 || vertical == PortalFrame.OUTER_HEIGHT - 1; + BlockPos pos = portalPos(origin, axis, horizontal, vertical); + + if (border) { + level.setBlockAndUpdate(pos, frameBlock.defaultBlockState()); + } + } + } + + frame.fill(level, portalBlock.defaultBlockState()); + + return frame; + } + + private static void clearExitPocket(ServerLevel level, PortalFrame frame) { + Direction.Axis axis = frame.axis(); + + for (int horizontal = -1; horizontal <= PortalFrame.OUTER_WIDTH; horizontal++) { + for (int vertical = 1; vertical <= PortalFrame.OUTER_HEIGHT; vertical++) { + for (int depth = -2; depth <= 2; depth++) { + if (depth == 0 && horizontal >= 0 && horizontal < PortalFrame.OUTER_WIDTH) { + continue; + } + + level.setBlockAndUpdate(pocketPos(frame.origin(), axis, horizontal, vertical, depth), Blocks.AIR.defaultBlockState()); + } + } + } + } + + private static boolean hasClearExitPocket(ServerLevel level, PortalFrame frame) { + Direction.Axis axis = frame.axis(); + + for (int horizontal = 1; horizontal <= PortalFrame.INTERIOR_WIDTH; horizontal++) { + for (int vertical = 1; vertical <= PortalFrame.INTERIOR_HEIGHT; vertical++) { + for (int depth = -1; depth <= 1; depth++) { + BlockPos pos = pocketPos(frame.origin(), axis, horizontal, vertical, depth); + + if (depth == 0) { + continue; + } + + BlockState state = level.getBlockState(pos); + + if (!state.isAir() && !state.canBeReplaced()) { + return false; + } + } + } + } + + return true; + } + + private static Vec3 exitPosition(PortalFrame frame) { + BlockPos origin = frame.origin(); + + return switch (frame.axis()) { + case X -> new Vec3(origin.getX() + 2.0D, origin.getY() + 1.0D, origin.getZ() + 0.5D); + case Z -> new Vec3(origin.getX() + 0.5D, origin.getY() + 1.0D, origin.getZ() + 2.0D); + default -> origin.getCenter(); + }; + } + + private static BlockPos clampedTargetPos(ServerLevel level, BlockPos entryPos) { + int x = entryPos.getX(); + int z = entryPos.getZ(); + int minY = level.getMinY() + 2; + int maxY = level.getMaxY() - PortalFrame.OUTER_HEIGHT - 2; + int y = Mth.clamp(entryPos.getY(), minY, maxY); + + if (usesSurfaceExit(level)) { + int surfaceY = level.getHeight(Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, x, z); + + if (surfaceY > level.getMinY() + 8) { + y = Mth.clamp(surfaceY, minY, maxY); + } + } + + return new BlockPos(x, y, z); + } + + private static boolean usesSurfaceExit(ServerLevel level) { + return level.dimension().equals(ModDimensions.SKELETON_WASTE) || level.dimensionType().hasSkyLight() && !level.dimensionType().hasCeiling(); + } + + private static BlockPos findSafeTargetPos(ServerLevel level, BlockPos targetPos) { + Optional safePos = usesSurfaceExit(level) ? findSafeSurfacePos(level, targetPos) : findSafeCavePos(level, targetPos); + return safePos.orElseGet(() -> targetPos.atY(Mth.clamp(targetPos.getY(), level.getMinY() + 12, level.getMaxY() - PortalFrame.OUTER_HEIGHT - 2))); + } + + private static Optional findSafeSurfacePos(ServerLevel level, BlockPos targetPos) { + BlockPos bestPos = null; + double bestDistance = Double.MAX_VALUE; + + for (int radius = 0; radius <= SAFE_SEARCH_RADIUS; radius++) { + for (int dx = -radius; dx <= radius; dx++) { + for (int dz = -radius; dz <= radius; dz++) { + if (Math.abs(dx) != radius && Math.abs(dz) != radius) { + continue; + } + + int x = targetPos.getX() + dx; + int z = targetPos.getZ() + dz; + int y = level.getHeight(Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, x, z); + BlockPos candidate = new BlockPos(x, y, z); + + if (!isSafeStandingPos(level, candidate)) { + continue; + } + + double distance = candidate.distSqr(targetPos); + + if (distance < bestDistance) { + bestPos = candidate; + bestDistance = distance; + } + } + } + + if (bestPos != null) { + return Optional.of(bestPos); + } + } + + return Optional.empty(); + } + + private static Optional findSafeCavePos(ServerLevel level, BlockPos targetPos) { + BlockPos bestPos = null; + double bestDistance = Double.MAX_VALUE; + int minY = level.getMinY() + 10; + int maxY = level.getMaxY() - PortalFrame.OUTER_HEIGHT - 2; + + for (int radius = 0; radius <= SAFE_SEARCH_RADIUS / 2; radius += 4) { + for (int dx = -radius; dx <= radius; dx += 4) { + for (int dz = -radius; dz <= radius; dz += 4) { + for (int dy = 0; dy <= 48; dy++) { + int upY = targetPos.getY() + dy; + int downY = targetPos.getY() - dy; + + if (upY <= maxY) { + bestPos = chooseCloserSafePos(level, targetPos, new BlockPos(targetPos.getX() + dx, upY, targetPos.getZ() + dz), bestPos); + } + + if (downY >= minY) { + bestPos = chooseCloserSafePos(level, targetPos, new BlockPos(targetPos.getX() + dx, downY, targetPos.getZ() + dz), bestPos); + } + + if (bestPos != null) { + bestDistance = bestPos.distSqr(targetPos); + } + } + } + } + + if (bestPos != null && bestDistance <= (radius + 8) * (radius + 8)) { + return Optional.of(bestPos); + } + } + + return Optional.ofNullable(bestPos); + } + + private static BlockPos chooseCloserSafePos(ServerLevel level, BlockPos targetPos, BlockPos candidate, BlockPos currentBest) { + if (!isSafeStandingPos(level, candidate)) { + return currentBest; + } + + if (currentBest == null || candidate.distSqr(targetPos) < currentBest.distSqr(targetPos)) { + return candidate; + } + + return currentBest; + } + + private static boolean isSafeStandingPos(ServerLevel level, BlockPos pos) { + if (pos.getY() <= level.getMinY() + 8 || pos.getY() >= level.getMaxY() - PortalFrame.OUTER_HEIGHT - 2) { + return false; + } + + BlockState floor = level.getBlockState(pos.below()); + + if (floor.isAir() || floor.liquid()) { + return false; + } + + return isReplaceableAir(level, pos) && isReplaceableAir(level, pos.above()) && isReplaceableAir(level, pos.above(2)); + } + + private static boolean isReplaceableAir(ServerLevel level, BlockPos pos) { + BlockState state = level.getBlockState(pos); + return state.isAir() || state.canBeReplaced(); + } + + private static BlockPos portalPos(BlockPos origin, Direction.Axis axis, int horizontal, int vertical) { + return switch (axis) { + case X -> origin.east(horizontal).above(vertical); + case Z -> origin.south(horizontal).above(vertical); + default -> origin; + }; + } + + private static BlockPos pocketPos(BlockPos origin, Direction.Axis axis, int horizontal, int vertical, int depth) { + return switch (axis) { + case X -> origin.east(horizontal).north(depth).above(vertical); + case Z -> origin.south(horizontal).east(depth).above(vertical); + default -> origin; + }; + } +} diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/registry/ModBlocks.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/registry/ModBlocks.java new file mode 100644 index 0000000..1b81ed0 --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/registry/ModBlocks.java @@ -0,0 +1,81 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals.registry; + +import net.koka99cab.portals.PortalsMod; +import net.koka99cab.portals.block.OrePortalBlock; +import net.koka99cab.portals.portal.PortalFramePredicates; +import net.koka99cab.portals.world.ModDimensions; +import net.minecraft.core.Registry; +import net.minecraft.core.particles.ParticleTypes; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.SoundType; +import net.minecraft.world.level.block.state.BlockBehaviour; +import net.minecraft.world.level.material.PushReaction; + +public final class ModBlocks { + public static final OrePortalBlock ORE_PORTAL = register("ore_portal", new OrePortalBlock( + portalProperties("ore_portal"), + ModDimensions.ORE_CAVES, + Blocks.STONE, + ParticleTypes.END_ROD + )); + public static final OrePortalBlock OVERWORLD2_PORTAL = register("overworld2_portal", new OrePortalBlock( + portalProperties("overworld2_portal"), + ModDimensions.OVERWORLD2, + Blocks.DIRT, + state -> state.is(Blocks.DIRT) || state.is(Blocks.GRASS_BLOCK), + ParticleTypes.HAPPY_VILLAGER + )); + public static final OrePortalBlock SHEEP_LAND_PORTAL = register("sheep_land_portal", new OrePortalBlock( + portalProperties("sheep_land_portal"), + ModDimensions.SHEEP_LAND, + Blocks.WHITE_WOOL, + ParticleTypes.FIREWORK + )); + public static final OrePortalBlock SKELETON_WASTE_PORTAL = register("skeleton_waste_portal", new OrePortalBlock( + portalProperties("skeleton_waste_portal"), + ModDimensions.SKELETON_WASTE, + Blocks.BONE_BLOCK, + ParticleTypes.SOUL_FIRE_FLAME + )); + public static final OrePortalBlock PAINTED_CANYONS_PORTAL = register("painted_canyons_portal", new OrePortalBlock( + portalProperties("painted_canyons_portal"), + ModDimensions.PAINTED_CANYONS, + Blocks.TERRACOTTA, + PortalFramePredicates.TERRACOTTA, + ParticleTypes.FLAME + )); + + private ModBlocks() { + } + + public static void init() { + PortalsMod.LOGGER.debug("Registered mod blocks"); + } + + private static T register(String path, T block) { + Identifier id = PortalsMod.id(path); + return Registry.register(BuiltInRegistries.BLOCK, id, block); + } + + private static BlockBehaviour.Properties portalProperties(String path) { + return BlockBehaviour.Properties.of() + .noCollision() + .noOcclusion() + .noLootTable() + .lightLevel(state -> 8) + .strength(-1.0F) + .sound(SoundType.GLASS) + .pushReaction(PushReaction.BLOCK) + .setId(ResourceKey.create(Registries.BLOCK, PortalsMod.id(path))); + } +} diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/world/ModDimensions.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/world/ModDimensions.java new file mode 100644 index 0000000..aa66e67 --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/world/ModDimensions.java @@ -0,0 +1,32 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals.world; + +import net.koka99cab.portals.PortalsMod; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.dimension.LevelStem; + +public final class ModDimensions { + public static final ResourceKey ORE_CAVES = ResourceKey.create(Registries.DIMENSION, PortalsMod.id("ore_caves")); + public static final ResourceKey ORE_CAVES_STEM = ResourceKey.create(Registries.LEVEL_STEM, PortalsMod.id("ore_caves")); + public static final ResourceKey OVERWORLD2 = ResourceKey.create(Registries.DIMENSION, PortalsMod.id("overworld2")); + public static final ResourceKey OVERWORLD2_STEM = ResourceKey.create(Registries.LEVEL_STEM, PortalsMod.id("overworld2")); + public static final ResourceKey SHEEP_LAND = ResourceKey.create(Registries.DIMENSION, PortalsMod.id("sheep_land")); + public static final ResourceKey SHEEP_LAND_STEM = ResourceKey.create(Registries.LEVEL_STEM, PortalsMod.id("sheep_land")); + public static final ResourceKey SKELETON_WASTE = ResourceKey.create(Registries.DIMENSION, PortalsMod.id("skeleton_waste")); + public static final ResourceKey SKELETON_WASTE_STEM = ResourceKey.create(Registries.LEVEL_STEM, PortalsMod.id("skeleton_waste")); + public static final ResourceKey PAINTED_CANYONS = ResourceKey.create(Registries.DIMENSION, PortalsMod.id("painted_canyons")); + public static final ResourceKey PAINTED_CANYONS_STEM = ResourceKey.create(Registries.LEVEL_STEM, PortalsMod.id("painted_canyons")); + + private ModDimensions() { + } + + public static void init() { + PortalsMod.LOGGER.debug("Registered dimension keys for {}, {}, {}, {}, and {}", ORE_CAVES.identifier(), OVERWORLD2.identifier(), SHEEP_LAND.identifier(), SKELETON_WASTE.identifier(), PAINTED_CANYONS.identifier()); + } +} diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/world/ModFeatures.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/world/ModFeatures.java new file mode 100644 index 0000000..2a7b806 --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/world/ModFeatures.java @@ -0,0 +1,38 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals.world; + +import net.koka99cab.portals.PortalsMod; +import net.koka99cab.portals.world.feature.SkeletonBasaltSpikeFeature; +import net.koka99cab.portals.world.feature.SkeletonRuinFeature; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.Identifier; +import net.minecraft.world.level.levelgen.feature.Feature; +import net.minecraft.world.level.levelgen.feature.configurations.NoneFeatureConfiguration; + +public final class ModFeatures { + public static final Feature SKELETON_BASALT_SPIKE = register( + "skeleton_basalt_spike", + new SkeletonBasaltSpikeFeature(NoneFeatureConfiguration.CODEC) + ); + public static final Feature SKELETON_RUIN = register( + "skeleton_ruin", + new SkeletonRuinFeature(NoneFeatureConfiguration.CODEC) + ); + + private ModFeatures() { + } + + public static void init() { + PortalsMod.LOGGER.debug("Registered skeleton waste worldgen features"); + } + + private static > T register(String path, T feature) { + Identifier id = PortalsMod.id(path); + return Registry.register(BuiltInRegistries.FEATURE, id, feature); + } +} diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/world/SkeletonWasteSpawner.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/world/SkeletonWasteSpawner.java new file mode 100644 index 0000000..58d1f74 --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/world/SkeletonWasteSpawner.java @@ -0,0 +1,127 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals.world; + +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents; +import net.koka99cab.portals.PortalsMod; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.util.RandomSource; +import net.minecraft.world.Difficulty; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntitySpawnReason; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.Mob; +import net.minecraft.world.level.levelgen.Heightmap; +import net.minecraft.world.phys.AABB; + +public final class SkeletonWasteSpawner { + private static final int TICK_INTERVAL = 80; + private static final int LOCAL_RADIUS = 64; + private static final int LOCAL_LIMIT = 24; + + private SkeletonWasteSpawner() { + } + + public static void register() { + ServerTickEvents.END_LEVEL_TICK.register(SkeletonWasteSpawner::tick); + PortalsMod.LOGGER.debug("Registered skeleton waste spawn support"); + } + + private static void tick(ServerLevel level) { + if (!level.dimension().equals(ModDimensions.SKELETON_WASTE) || level.getDifficulty() == Difficulty.PEACEFUL || level.players().isEmpty()) { + return; + } + + if (level.getGameTime() % TICK_INTERVAL != 0) { + return; + } + + RandomSource random = level.getRandom(); + + for (ServerPlayer player : level.players()) { + if (countSkeletonFamily(level, player.blockPosition()) >= LOCAL_LIMIT) { + continue; + } + + for (int attempt = 0; attempt < 4; attempt++) { + if (trySpawnNear(level, player, random)) { + break; + } + } + } + } + + private static boolean trySpawnNear(ServerLevel level, ServerPlayer player, RandomSource random) { + double angle = random.nextDouble() * Math.PI * 2.0D; + int distance = 24 + random.nextInt(33); + int x = player.blockPosition().getX() + (int) Math.round(Math.cos(angle) * distance); + int z = player.blockPosition().getZ() + (int) Math.round(Math.sin(angle) * distance); + int y = level.getHeight(Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, x, z); + BlockPos pos = new BlockPos(x, y, z); + EntityType type = randomSkeletonType(random); + + if (player.distanceToSqr(x + 0.5D, y, z + 0.5D) < 400.0D || !canSpawnAt(level, pos, type)) { + return false; + } + + return type.spawn(level, pos, EntitySpawnReason.NATURAL) != null; + } + + private static EntityType randomSkeletonType(RandomSource random) { + int roll = random.nextInt(100); + + if (roll < 45) { + return EntityType.SKELETON; + } + + if (roll < 75) { + return EntityType.STRAY; + } + + if (roll < 90) { + return EntityType.PARCHED; + } + + return EntityType.BOGGED; + } + + private static boolean canSpawnAt(ServerLevel level, BlockPos pos, EntityType type) { + if (pos.getY() <= level.getMinY() + 1 || pos.getY() >= level.getMaxY() - 2) { + return false; + } + + if (!level.isEmptyBlock(pos) || !level.isEmptyBlock(pos.above())) { + return false; + } + + if (!level.getFluidState(pos).isEmpty() || !level.getFluidState(pos.above()).isEmpty()) { + return false; + } + + if (level.getBlockState(pos.below()).isAir() || level.getBlockState(pos.below()).liquid()) { + return false; + } + + return level.noCollision(type.getSpawnAABB(pos.getX() + 0.5D, pos.getY(), pos.getZ() + 0.5D)); + } + + private static int countSkeletonFamily(ServerLevel level, BlockPos center) { + AABB bounds = new AABB(center).inflate(LOCAL_RADIUS); + + return level.getEntities((Entity) null, bounds, SkeletonWasteSpawner::isSkeletonFamily).size(); + } + + private static boolean isSkeletonFamily(Entity entity) { + EntityType type = entity.getType(); + return entity.isAlive() + && (type == EntityType.SKELETON + || type == EntityType.STRAY + || type == EntityType.BOGGED + || type == EntityType.PARCHED); + } +} diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/world/feature/SkeletonBasaltSpikeFeature.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/world/feature/SkeletonBasaltSpikeFeature.java new file mode 100644 index 0000000..f490a2e --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/world/feature/SkeletonBasaltSpikeFeature.java @@ -0,0 +1,107 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals.world.feature; + +import com.mojang.serialization.Codec; +import net.minecraft.core.BlockPos; +import net.minecraft.util.RandomSource; +import net.minecraft.world.level.WorldGenLevel; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.Heightmap; +import net.minecraft.world.level.levelgen.feature.Feature; +import net.minecraft.world.level.levelgen.feature.FeaturePlaceContext; +import net.minecraft.world.level.levelgen.feature.configurations.NoneFeatureConfiguration; + +public final class SkeletonBasaltSpikeFeature extends Feature { + private static final BlockState BASALT = Blocks.BASALT.defaultBlockState(); + private static final BlockState SMOOTH_BASALT = Blocks.SMOOTH_BASALT.defaultBlockState(); + private static final BlockState SOUL_SOIL = Blocks.SOUL_SOIL.defaultBlockState(); + + public SkeletonBasaltSpikeFeature(Codec codec) { + super(codec); + } + + @Override + public boolean place(FeaturePlaceContext context) { + WorldGenLevel level = context.level(); + RandomSource random = context.random(); + BlockPos origin = context.origin(); + int y = level.getHeight(Heightmap.Types.OCEAN_FLOOR_WG, origin.getX(), origin.getZ()); + + if (y <= level.getMinY() + 4 || y >= level.getMaxY() - 8) { + return false; + } + + BlockPos base = new BlockPos(origin.getX(), y - 1, origin.getZ()); + + if (level.getBlockState(base).isAir()) { + return false; + } + + int height = Math.min(10 + random.nextInt(27), level.getMaxY() - y - 2); + int baseRadius = 2 + random.nextInt(4); + + if (height < 10) { + return false; + } + + boolean placed = false; + + for (int dy = 0; dy < height; dy++) { + double taper = 1.0D - (double) dy / (double) height; + int radius = Math.max(0, (int) Math.ceil(baseRadius * taper + random.nextDouble() * 0.85D - 0.35D)); + + for (int dx = -radius; dx <= radius; dx++) { + for (int dz = -radius; dz <= radius; dz++) { + double distance = Math.sqrt(dx * dx + dz * dz); + + if (distance > radius + random.nextDouble() * 0.8D || dy > 2 && random.nextInt(18) == 0) { + continue; + } + + BlockState state = random.nextInt(5) == 0 ? SMOOTH_BASALT : BASALT; + placed |= placeBlock(level, base.offset(dx, dy, dz), state); + } + } + } + + for (int shard = 0; shard < 2 + random.nextInt(4); shard++) { + int dx = random.nextInt(baseRadius * 4 + 1) - baseRadius * 2; + int dz = random.nextInt(baseRadius * 4 + 1) - baseRadius * 2; + int shardHeight = 3 + random.nextInt(Math.max(4, height / 3)); + + for (int dy = 0; dy < shardHeight; dy++) { + placed |= placeBlock(level, base.offset(dx, dy, dz), random.nextInt(4) == 0 ? SMOOTH_BASALT : BASALT); + } + } + + for (int dx = -baseRadius - 1; dx <= baseRadius + 1; dx++) { + for (int dz = -baseRadius - 1; dz <= baseRadius + 1; dz++) { + if (Math.abs(dx) + Math.abs(dz) > baseRadius + 2 || random.nextInt(4) == 0) { + continue; + } + + BlockPos scatter = base.offset(dx, -1, dz); + + if (!level.getBlockState(scatter).isAir()) { + placed |= placeBlock(level, scatter, SOUL_SOIL); + } + } + } + + return placed; + } + + private static boolean placeBlock(WorldGenLevel level, BlockPos pos, BlockState state) { + if (pos.getY() <= level.getMinY() || pos.getY() >= level.getMaxY() || !level.ensureCanWrite(pos)) { + return false; + } + + level.setBlock(pos, state, 3); + return true; + } +} diff --git a/Worldgen/portals/src/main/java/net/koka99cab/portals/world/feature/SkeletonRuinFeature.java b/Worldgen/portals/src/main/java/net/koka99cab/portals/world/feature/SkeletonRuinFeature.java new file mode 100644 index 0000000..627d447 --- /dev/null +++ b/Worldgen/portals/src/main/java/net/koka99cab/portals/world/feature/SkeletonRuinFeature.java @@ -0,0 +1,202 @@ +/* + * SPDX-FileCopyrightText: 2026 KOKA99CAB + * SPDX-License-Identifier: LGPL-3.0-or-later + */ + +package net.koka99cab.portals.world.feature; + +import com.mojang.serialization.Codec; +import net.koka99cab.portals.PortalsMod; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.ResourceKey; +import net.minecraft.util.RandomSource; +import net.minecraft.world.level.WorldGenLevel; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.ChestBlock; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.ChestBlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.Heightmap; +import net.minecraft.world.level.levelgen.feature.Feature; +import net.minecraft.world.level.levelgen.feature.FeaturePlaceContext; +import net.minecraft.world.level.levelgen.feature.configurations.NoneFeatureConfiguration; +import net.minecraft.world.level.storage.loot.LootTable; + +public final class SkeletonRuinFeature extends Feature { + private static final ResourceKey LOOT_TABLE = ResourceKey.create(Registries.LOOT_TABLE, PortalsMod.id("chests/skeleton_ruin")); + private static final Direction[] HORIZONTAL_DIRECTIONS = new Direction[] { + Direction.NORTH, + Direction.EAST, + Direction.SOUTH, + Direction.WEST + }; + + public SkeletonRuinFeature(Codec codec) { + super(codec); + } + + @Override + public boolean place(FeaturePlaceContext context) { + WorldGenLevel level = context.level(); + RandomSource random = context.random(); + BlockPos origin = context.origin(); + int y = level.getHeight(Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, origin.getX(), origin.getZ()); + + if (y <= level.getMinY() + 5 || y >= level.getMaxY() - 10) { + return false; + } + + BlockPos base = new BlockPos(origin.getX(), y, origin.getZ()); + + if (level.getBlockState(base.below()).isAir()) { + return false; + } + + boolean placed = false; + int radius = 13; + int keepRadius = 6; + + for (int x = -radius; x <= radius; x++) { + for (int z = -radius; z <= radius; z++) { + if ((Math.abs(x) == radius && Math.abs(z) == radius && random.nextBoolean()) || random.nextInt(7) == 0) { + continue; + } + + placed |= placeBlock(level, base.offset(x, -1, z), foundationBlock(random)); + } + } + + placed |= buildWall(level, random, base, -radius, radius, -radius, -radius); + placed |= buildWall(level, random, base, -radius, radius, radius, radius); + placed |= buildWall(level, random, base, -radius, -radius, -radius, radius); + placed |= buildWall(level, random, base, radius, radius, -radius, radius); + placed |= buildWall(level, random, base, -keepRadius, keepRadius, -keepRadius, -keepRadius); + placed |= buildWall(level, random, base, -keepRadius, keepRadius, keepRadius, keepRadius); + placed |= buildWall(level, random, base, -keepRadius, -keepRadius, -keepRadius, keepRadius); + placed |= buildWall(level, random, base, keepRadius, keepRadius, -keepRadius, keepRadius); + + placed |= buildTower(level, random, base.offset(-radius, 0, -radius), 2, 11 + random.nextInt(10)); + placed |= buildTower(level, random, base.offset(radius, 0, -radius), 2, 9 + random.nextInt(10)); + placed |= buildTower(level, random, base.offset(-radius, 0, radius), 2, 9 + random.nextInt(10)); + placed |= buildTower(level, random, base.offset(radius, 0, radius), 2, 11 + random.nextInt(10)); + placed |= buildTower(level, random, base.offset(0, 0, 0), 3, 13 + random.nextInt(13)); + + for (int i = 0; i < 130; i++) { + int x = random.nextInt(radius * 2 + 1) - radius; + int z = random.nextInt(radius * 2 + 1) - radius; + + if (Math.abs(x) == radius || Math.abs(z) == radius || random.nextInt(5) == 0) { + continue; + } + + placed |= placeBlock(level, base.offset(x, random.nextInt(5), z), random.nextBoolean() ? wallBlock(random) : foundationBlock(random)); + } + + if (random.nextBoolean()) { + placed |= placeLootChest(level, random, base.offset(random.nextInt(keepRadius * 2 + 1) - keepRadius, 0, random.nextInt(keepRadius * 2 + 1) - keepRadius)); + } + + return placed; + } + + private static boolean buildWall(WorldGenLevel level, RandomSource random, BlockPos base, int x1, int x2, int z1, int z2) { + boolean placed = false; + int length = Math.max(Math.abs(x2 - x1), Math.abs(z2 - z1)); + + for (int i = 0; i <= length; i++) { + int x = x1 == x2 ? x1 : x1 + Integer.signum(x2 - x1) * i; + int z = z1 == z2 ? z1 : z1 + Integer.signum(z2 - z1) * i; + int height = 5 + random.nextInt(7); + + for (int y = 0; y < height; y++) { + if (y > 1 && random.nextInt(4) == 0 || y > 4 && random.nextInt(3) == 0) { + continue; + } + + placed |= placeBlock(level, base.offset(x, y, z), wallBlock(random)); + } + } + + return placed; + } + + private static boolean buildTower(WorldGenLevel level, RandomSource random, BlockPos base, int towerRadius, int height) { + boolean placed = false; + + for (int y = 0; y < height; y++) { + for (int x = -towerRadius; x <= towerRadius; x++) { + for (int z = -towerRadius; z <= towerRadius; z++) { + boolean shell = Math.abs(x) == towerRadius || Math.abs(z) == towerRadius; + + if (!shell || y > 2 && random.nextInt(5) == 0 || y > height / 2 && random.nextInt(4) == 0) { + continue; + } + + placed |= placeBlock(level, base.offset(x, y, z), wallBlock(random)); + } + } + } + + for (int x = -towerRadius; x <= towerRadius; x++) { + for (int z = -towerRadius; z <= towerRadius; z++) { + if (Math.abs(x) + Math.abs(z) < towerRadius + 1 && random.nextBoolean()) { + continue; + } + + placed |= placeBlock(level, base.offset(x, height, z), wallBlock(random)); + } + } + + return placed; + } + + private static boolean placeLootChest(WorldGenLevel level, RandomSource random, BlockPos pos) { + if (!placeBlock(level, pos, Blocks.CHEST.defaultBlockState().setValue(ChestBlock.FACING, HORIZONTAL_DIRECTIONS[random.nextInt(HORIZONTAL_DIRECTIONS.length)]))) { + return false; + } + + BlockEntity blockEntity = level.getBlockEntity(pos); + + if (blockEntity instanceof ChestBlockEntity chest) { + chest.setLootTable(LOOT_TABLE); + chest.setLootTableSeed(random.nextLong()); + } + + return true; + } + + private static BlockState foundationBlock(RandomSource random) { + return switch (random.nextInt(8)) { + case 0 -> Blocks.SOUL_SOIL.defaultBlockState(); + case 1 -> Blocks.SOUL_SAND.defaultBlockState(); + case 2 -> Blocks.GRAVEL.defaultBlockState(); + case 3 -> Blocks.TUFF.defaultBlockState(); + case 4 -> Blocks.SMOOTH_BASALT.defaultBlockState(); + default -> Blocks.BASALT.defaultBlockState(); + }; + } + + private static BlockState wallBlock(RandomSource random) { + return switch (random.nextInt(10)) { + case 0 -> Blocks.POLISHED_BASALT.defaultBlockState(); + case 1 -> Blocks.SMOOTH_BASALT.defaultBlockState(); + case 2 -> Blocks.BLACKSTONE.defaultBlockState(); + case 3 -> Blocks.POLISHED_BLACKSTONE.defaultBlockState(); + case 4 -> Blocks.POLISHED_BLACKSTONE_BRICKS.defaultBlockState(); + case 5 -> Blocks.CRACKED_POLISHED_BLACKSTONE_BRICKS.defaultBlockState(); + case 6 -> Blocks.COBBLED_DEEPSLATE.defaultBlockState(); + default -> Blocks.BASALT.defaultBlockState(); + }; + } + + private static boolean placeBlock(WorldGenLevel level, BlockPos pos, BlockState state) { + if (pos.getY() <= level.getMinY() || pos.getY() >= level.getMaxY() || !level.ensureCanWrite(pos)) { + return false; + } + + level.setBlock(pos, state, 3); + return true; + } +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/blockstates/ore_portal.json b/Worldgen/portals/src/main/resources/assets/portals/blockstates/ore_portal.json new file mode 100644 index 0000000..f838389 --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/blockstates/ore_portal.json @@ -0,0 +1,11 @@ +{ + "variants": { + "axis=x": { + "model": "portals:block/ore_portal" + }, + "axis=z": { + "model": "portals:block/ore_portal", + "y": 90 + } + } +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/blockstates/overworld2_portal.json b/Worldgen/portals/src/main/resources/assets/portals/blockstates/overworld2_portal.json new file mode 100644 index 0000000..967f39e --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/blockstates/overworld2_portal.json @@ -0,0 +1,11 @@ +{ + "variants": { + "axis=x": { + "model": "portals:block/overworld2_portal" + }, + "axis=z": { + "model": "portals:block/overworld2_portal", + "y": 90 + } + } +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/blockstates/painted_canyons_portal.json b/Worldgen/portals/src/main/resources/assets/portals/blockstates/painted_canyons_portal.json new file mode 100644 index 0000000..332a403 --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/blockstates/painted_canyons_portal.json @@ -0,0 +1,11 @@ +{ + "variants": { + "axis=x": { + "model": "portals:block/painted_canyons_portal" + }, + "axis=z": { + "model": "portals:block/painted_canyons_portal", + "y": 90 + } + } +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/blockstates/sheep_land_portal.json b/Worldgen/portals/src/main/resources/assets/portals/blockstates/sheep_land_portal.json new file mode 100644 index 0000000..b22b6f8 --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/blockstates/sheep_land_portal.json @@ -0,0 +1,11 @@ +{ + "variants": { + "axis=x": { + "model": "portals:block/sheep_land_portal" + }, + "axis=z": { + "model": "portals:block/sheep_land_portal", + "y": 90 + } + } +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/blockstates/skeleton_waste_portal.json b/Worldgen/portals/src/main/resources/assets/portals/blockstates/skeleton_waste_portal.json new file mode 100644 index 0000000..e3b6b1f --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/blockstates/skeleton_waste_portal.json @@ -0,0 +1,11 @@ +{ + "variants": { + "axis=x": { + "model": "portals:block/skeleton_waste_portal" + }, + "axis=z": { + "model": "portals:block/skeleton_waste_portal", + "y": 90 + } + } +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/lang/en_us.json b/Worldgen/portals/src/main/resources/assets/portals/lang/en_us.json new file mode 100644 index 0000000..503480e --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/lang/en_us.json @@ -0,0 +1,8 @@ +{ + "block.portals.ore_portal": "Ore Caves Portal", + "block.portals.overworld2_portal": "Overworld II Portal", + "block.portals.sheep_land_portal": "Sheep Land Portal", + "block.portals.skeleton_waste_portal": "Skeleton Waste Portal", + "block.portals.painted_canyons_portal": "Painted Canyons Portal", + "modmenu.descriptionTranslation.portals": "Ritual portals to strange in-world dimensions: ore-rich caverns, a second overworld, Sheep Land, the haunted Skeleton Waste, and Painted Canyons." +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/lang/fr_fr.json b/Worldgen/portals/src/main/resources/assets/portals/lang/fr_fr.json new file mode 100644 index 0000000..7a9ee99 --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/lang/fr_fr.json @@ -0,0 +1,8 @@ +{ + "block.portals.ore_portal": "Portail des cavernes minerais", + "block.portals.overworld2_portal": "Portail Overworld II", + "block.portals.sheep_land_portal": "Portail du pays des moutons", + "block.portals.skeleton_waste_portal": "Portail Skeleton Waste", + "block.portals.painted_canyons_portal": "Portail des canyons peints", + "modmenu.descriptionTranslation.portals": "Des portails rituels vers des dimensions etranges integrees au monde : cavernes riches en minerais, Overworld II, pays des moutons, Skeleton Waste hantee et canyons peints." +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/models/block/ore_portal.json b/Worldgen/portals/src/main/resources/assets/portals/models/block/ore_portal.json new file mode 100644 index 0000000..ffe0e1c --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/models/block/ore_portal.json @@ -0,0 +1,28 @@ +{ + "textures": { + "portal": "portals:block/portal/ore_portal", + "particle": "portals:block/portal/ore_portal" + }, + "elements": [ + { + "from": [ + 0, + 0, + 7 + ], + "to": [ + 16, + 16, + 9 + ], + "faces": { + "north": { + "texture": "#portal" + }, + "south": { + "texture": "#portal" + } + } + } + ] +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/models/block/overworld2_portal.json b/Worldgen/portals/src/main/resources/assets/portals/models/block/overworld2_portal.json new file mode 100644 index 0000000..8be6809 --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/models/block/overworld2_portal.json @@ -0,0 +1,28 @@ +{ + "textures": { + "portal": "portals:block/portal/overworld2_portal", + "particle": "portals:block/portal/overworld2_portal" + }, + "elements": [ + { + "from": [ + 0, + 0, + 7 + ], + "to": [ + 16, + 16, + 9 + ], + "faces": { + "north": { + "texture": "#portal" + }, + "south": { + "texture": "#portal" + } + } + } + ] +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/models/block/painted_canyons_portal.json b/Worldgen/portals/src/main/resources/assets/portals/models/block/painted_canyons_portal.json new file mode 100644 index 0000000..93b1eb6 --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/models/block/painted_canyons_portal.json @@ -0,0 +1,28 @@ +{ + "textures": { + "portal": "portals:block/portal/painted_canyons_portal", + "particle": "portals:block/portal/painted_canyons_portal" + }, + "elements": [ + { + "from": [ + 0, + 0, + 7 + ], + "to": [ + 16, + 16, + 9 + ], + "faces": { + "north": { + "texture": "#portal" + }, + "south": { + "texture": "#portal" + } + } + } + ] +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/models/block/sheep_land_portal.json b/Worldgen/portals/src/main/resources/assets/portals/models/block/sheep_land_portal.json new file mode 100644 index 0000000..2f82cc4 --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/models/block/sheep_land_portal.json @@ -0,0 +1,28 @@ +{ + "textures": { + "portal": "portals:block/portal/sheep_land_portal", + "particle": "portals:block/portal/sheep_land_portal" + }, + "elements": [ + { + "from": [ + 0, + 0, + 7 + ], + "to": [ + 16, + 16, + 9 + ], + "faces": { + "north": { + "texture": "#portal" + }, + "south": { + "texture": "#portal" + } + } + } + ] +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/models/block/skeleton_waste_portal.json b/Worldgen/portals/src/main/resources/assets/portals/models/block/skeleton_waste_portal.json new file mode 100644 index 0000000..69d7b98 --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/models/block/skeleton_waste_portal.json @@ -0,0 +1,28 @@ +{ + "textures": { + "portal": "portals:block/portal/skeleton_waste_portal", + "particle": "portals:block/portal/skeleton_waste_portal" + }, + "elements": [ + { + "from": [ + 0, + 0, + 7 + ], + "to": [ + 16, + 16, + 9 + ], + "faces": { + "north": { + "texture": "#portal" + }, + "south": { + "texture": "#portal" + } + } + } + ] +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/portals.png b/Worldgen/portals/src/main/resources/assets/portals/portals.png new file mode 100644 index 0000000..c2dabb9 Binary files /dev/null and b/Worldgen/portals/src/main/resources/assets/portals/portals.png differ diff --git a/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/ore_portal.png b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/ore_portal.png new file mode 100644 index 0000000..81dde0c Binary files /dev/null and b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/ore_portal.png differ diff --git a/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/ore_portal.png.mcmeta b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/ore_portal.png.mcmeta new file mode 100644 index 0000000..6637c41 --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/ore_portal.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation": { + "frametime": 2 + } +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/overworld2_portal.png b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/overworld2_portal.png new file mode 100644 index 0000000..a9693e2 Binary files /dev/null and b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/overworld2_portal.png differ diff --git a/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/overworld2_portal.png.mcmeta b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/overworld2_portal.png.mcmeta new file mode 100644 index 0000000..6637c41 --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/overworld2_portal.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation": { + "frametime": 2 + } +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/painted_canyons_portal.png b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/painted_canyons_portal.png new file mode 100644 index 0000000..68b1bfd Binary files /dev/null and b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/painted_canyons_portal.png differ diff --git a/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/painted_canyons_portal.png.mcmeta b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/painted_canyons_portal.png.mcmeta new file mode 100644 index 0000000..6637c41 --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/painted_canyons_portal.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation": { + "frametime": 2 + } +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/portal_base_grayscale.png b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/portal_base_grayscale.png new file mode 100644 index 0000000..81dde0c Binary files /dev/null and b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/portal_base_grayscale.png differ diff --git a/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/portal_base_grayscale.png.mcmeta b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/portal_base_grayscale.png.mcmeta new file mode 100644 index 0000000..6637c41 --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/portal_base_grayscale.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation": { + "frametime": 2 + } +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/sheep_land_portal.png b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/sheep_land_portal.png new file mode 100644 index 0000000..c75edcd Binary files /dev/null and b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/sheep_land_portal.png differ diff --git a/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/sheep_land_portal.png.mcmeta b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/sheep_land_portal.png.mcmeta new file mode 100644 index 0000000..6637c41 --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/sheep_land_portal.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation": { + "frametime": 2 + } +} diff --git a/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/skeleton_waste_portal.png b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/skeleton_waste_portal.png new file mode 100644 index 0000000..d6a42a7 Binary files /dev/null and b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/skeleton_waste_portal.png differ diff --git a/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/skeleton_waste_portal.png.mcmeta b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/skeleton_waste_portal.png.mcmeta new file mode 100644 index 0000000..6637c41 --- /dev/null +++ b/Worldgen/portals/src/main/resources/assets/portals/textures/block/portal/skeleton_waste_portal.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation": { + "frametime": 2 + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/dimension/ore_caves.json b/Worldgen/portals/src/main/resources/data/portals/dimension/ore_caves.json new file mode 100644 index 0000000..6ed5819 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/dimension/ore_caves.json @@ -0,0 +1,444 @@ +{ + "type": "portals:ore_caves", + "generator": { + "type": "minecraft:noise", + "biome_source": { + "type": "minecraft:multi_noise", + "biomes": [ + { + "biome": "portals:ore_caves_dripstone", + "parameters": { + "temperature": -0.75, + "humidity": -0.75, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves", + "parameters": { + "temperature": -0.45, + "humidity": -0.75, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_dripstone", + "parameters": { + "temperature": -0.15, + "humidity": -0.75, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_deep", + "parameters": { + "temperature": 0.15, + "humidity": -0.75, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_dripstone", + "parameters": { + "temperature": 0.45, + "humidity": -0.75, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves", + "parameters": { + "temperature": 0.75, + "humidity": -0.75, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves", + "parameters": { + "temperature": -0.75, + "humidity": -0.45, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_dripstone", + "parameters": { + "temperature": -0.45, + "humidity": -0.45, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_deep", + "parameters": { + "temperature": -0.15, + "humidity": -0.45, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_dripstone", + "parameters": { + "temperature": 0.15, + "humidity": -0.45, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves", + "parameters": { + "temperature": 0.45, + "humidity": -0.45, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_dripstone", + "parameters": { + "temperature": 0.75, + "humidity": -0.45, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_deep", + "parameters": { + "temperature": -0.75, + "humidity": -0.15, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves", + "parameters": { + "temperature": -0.45, + "humidity": -0.15, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_dripstone", + "parameters": { + "temperature": -0.15, + "humidity": -0.15, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_lush", + "parameters": { + "temperature": 0.15, + "humidity": -0.15, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_dripstone", + "parameters": { + "temperature": 0.45, + "humidity": -0.15, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves", + "parameters": { + "temperature": 0.75, + "humidity": -0.15, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves", + "parameters": { + "temperature": -0.75, + "humidity": 0.15, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_lush", + "parameters": { + "temperature": -0.45, + "humidity": 0.15, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_deep", + "parameters": { + "temperature": -0.15, + "humidity": 0.15, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves", + "parameters": { + "temperature": 0.15, + "humidity": 0.15, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_lush", + "parameters": { + "temperature": 0.45, + "humidity": 0.15, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_dripstone", + "parameters": { + "temperature": 0.75, + "humidity": 0.15, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_lush", + "parameters": { + "temperature": -0.75, + "humidity": 0.45, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves", + "parameters": { + "temperature": -0.45, + "humidity": 0.45, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_lush", + "parameters": { + "temperature": -0.15, + "humidity": 0.45, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_dripstone", + "parameters": { + "temperature": 0.15, + "humidity": 0.45, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves", + "parameters": { + "temperature": 0.45, + "humidity": 0.45, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_lush", + "parameters": { + "temperature": 0.75, + "humidity": 0.45, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_lush", + "parameters": { + "temperature": -0.75, + "humidity": 0.75, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_deep", + "parameters": { + "temperature": -0.45, + "humidity": 0.75, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_lush", + "parameters": { + "temperature": -0.15, + "humidity": 0.75, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves", + "parameters": { + "temperature": 0.15, + "humidity": 0.75, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_lush", + "parameters": { + "temperature": 0.45, + "humidity": 0.75, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + }, + { + "biome": "portals:ore_caves_dripstone", + "parameters": { + "temperature": 0.75, + "humidity": 0.75, + "continentalness": 0.0, + "erosion": 0.0, + "depth": 0.0, + "weirdness": 0.0, + "offset": 0.0 + } + } + ] + }, + "settings": "portals:ore_caves" + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/dimension/overworld2.json b/Worldgen/portals/src/main/resources/data/portals/dimension/overworld2.json new file mode 100644 index 0000000..9d6b578 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/dimension/overworld2.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:overworld", + "generator": { + "type": "minecraft:noise", + "biome_source": { + "type": "minecraft:multi_noise", + "preset": "minecraft:overworld" + }, + "settings": "minecraft:overworld" + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/dimension/painted_canyons.json b/Worldgen/portals/src/main/resources/data/portals/dimension/painted_canyons.json new file mode 100644 index 0000000..73864aa --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/dimension/painted_canyons.json @@ -0,0 +1,11 @@ +{ + "type": "portals:painted_canyons", + "generator": { + "type": "minecraft:noise", + "biome_source": { + "type": "minecraft:fixed", + "biome": "portals:painted_canyons" + }, + "settings": "portals:painted_canyons" + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/dimension/sheep_land.json b/Worldgen/portals/src/main/resources/data/portals/dimension/sheep_land.json new file mode 100644 index 0000000..b8e6140 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/dimension/sheep_land.json @@ -0,0 +1,11 @@ +{ + "type": "portals:sheep_land", + "generator": { + "type": "minecraft:noise", + "biome_source": { + "type": "minecraft:fixed", + "biome": "portals:sheep_land" + }, + "settings": "portals:sheep_land" + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/dimension/skeleton_waste.json b/Worldgen/portals/src/main/resources/data/portals/dimension/skeleton_waste.json new file mode 100644 index 0000000..2714a39 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/dimension/skeleton_waste.json @@ -0,0 +1,11 @@ +{ + "type": "portals:skeleton_waste", + "generator": { + "type": "minecraft:noise", + "biome_source": { + "type": "minecraft:fixed", + "biome": "portals:skeleton_waste" + }, + "settings": "portals:skeleton_waste" + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/dimension_type/ore_caves.json b/Worldgen/portals/src/main/resources/data/portals/dimension_type/ore_caves.json new file mode 100644 index 0000000..3ab32a7 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/dimension_type/ore_caves.json @@ -0,0 +1,43 @@ +{ + "ambient_light": 0.025, + "attributes": { + "minecraft:audio/ambient_sounds": { + "mood": { + "block_search_extent": 8, + "offset": 2.0, + "sound": "minecraft:ambient.cave", + "tick_delay": 6000 + } + }, + "minecraft:gameplay/bed_rule": { + "can_set_spawn": "never", + "can_sleep": "never" + }, + "minecraft:gameplay/can_start_raid": false, + "minecraft:gameplay/respawn_anchor_works": false, + "minecraft:gameplay/sky_light_level": 0.0, + "minecraft:visual/ambient_light_color": "#191b22", + "minecraft:visual/default_dripstone_particle": { + "type": "minecraft:dripping_dripstone_water" + }, + "minecraft:visual/fog_color": "#1e2028", + "minecraft:visual/fog_end_distance": 80.0, + "minecraft:visual/fog_start_distance": 12.0, + "minecraft:visual/sky_light_color": "#20222a", + "minecraft:visual/sky_light_factor": 0.0 + }, + "cardinal_light": "nether", + "coordinate_scale": 1.0, + "has_ceiling": true, + "has_ender_dragon_fight": false, + "has_fixed_time": true, + "has_skylight": false, + "height": 128, + "infiniburn": "#minecraft:infiniburn_overworld", + "logical_height": 128, + "min_y": 0, + "monster_spawn_block_light_limit": 15, + "monster_spawn_light_level": 7, + "skybox": "none", + "timelines": "#minecraft:in_nether" +} diff --git a/Worldgen/portals/src/main/resources/data/portals/dimension_type/painted_canyons.json b/Worldgen/portals/src/main/resources/data/portals/dimension_type/painted_canyons.json new file mode 100644 index 0000000..12241e8 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/dimension_type/painted_canyons.json @@ -0,0 +1,39 @@ +{ + "ambient_light": 0.12, + "attributes": { + "minecraft:audio/background_music": { + "default": { + "max_delay": 24000, + "min_delay": 12000, + "sound": "minecraft:music.overworld.badlands" + } + }, + "minecraft:gameplay/bed_rule": { + "can_set_spawn": "never", + "can_sleep": "never" + }, + "minecraft:gameplay/can_start_raid": false, + "minecraft:gameplay/respawn_anchor_works": false, + "minecraft:gameplay/sky_light_level": 15.0, + "minecraft:visual/ambient_light_color": "#ffb06f", + "minecraft:visual/cloud_color": "#ccf28d6d", + "minecraft:visual/fog_color": "#cc6046", + "minecraft:visual/sky_color": "#82305f", + "minecraft:visual/sky_light_color": "#ffc27a", + "minecraft:visual/sky_light_factor": 1.0 + }, + "cardinal_light": "default", + "coordinate_scale": 1.0, + "has_ceiling": false, + "has_ender_dragon_fight": false, + "has_fixed_time": true, + "has_skylight": true, + "height": 384, + "infiniburn": "#minecraft:infiniburn_overworld", + "logical_height": 384, + "min_y": 0, + "monster_spawn_block_light_limit": 0, + "monster_spawn_light_level": 7, + "skybox": "overworld", + "timelines": "#minecraft:in_overworld" +} diff --git a/Worldgen/portals/src/main/resources/data/portals/dimension_type/sheep_land.json b/Worldgen/portals/src/main/resources/data/portals/dimension_type/sheep_land.json new file mode 100644 index 0000000..e31dcd2 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/dimension_type/sheep_land.json @@ -0,0 +1,31 @@ +{ + "ambient_light": 0.2, + "attributes": { + "minecraft:gameplay/bed_rule": { + "can_set_spawn": "never", + "can_sleep": "never" + }, + "minecraft:gameplay/can_start_raid": false, + "minecraft:gameplay/respawn_anchor_works": false, + "minecraft:visual/ambient_light_color": "#fff3d6", + "minecraft:visual/cloud_color": "#ccffffff", + "minecraft:visual/fog_color": "#d9fff2", + "minecraft:visual/sky_color": "#83ddff", + "minecraft:visual/sky_light_factor": 1.0, + "minecraft:gameplay/sky_light_level": 15.0 + }, + "cardinal_light": "default", + "coordinate_scale": 1.0, + "has_ceiling": false, + "has_ender_dragon_fight": false, + "has_fixed_time": true, + "has_skylight": true, + "height": 256, + "infiniburn": "#minecraft:infiniburn_overworld", + "logical_height": 256, + "min_y": 0, + "monster_spawn_block_light_limit": 0, + "monster_spawn_light_level": 0, + "skybox": "overworld", + "timelines": "#minecraft:in_overworld" +} diff --git a/Worldgen/portals/src/main/resources/data/portals/dimension_type/skeleton_waste.json b/Worldgen/portals/src/main/resources/data/portals/dimension_type/skeleton_waste.json new file mode 100644 index 0000000..9be773f --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/dimension_type/skeleton_waste.json @@ -0,0 +1,48 @@ +{ + "ambient_light": 0.08, + "attributes": { + "minecraft:audio/ambient_sounds": { + "additions": { + "sound": "minecraft:ambient.soul_sand_valley.additions", + "tick_chance": 0.0111 + }, + "loop": "minecraft:ambient.soul_sand_valley.loop", + "mood": { + "block_search_extent": 8, + "offset": 2.0, + "sound": "minecraft:ambient.soul_sand_valley.mood", + "tick_delay": 6000 + } + }, + "minecraft:gameplay/bed_rule": { + "can_set_spawn": "never", + "can_sleep": "never", + "explodes": true + }, + "minecraft:gameplay/can_start_raid": false, + "minecraft:gameplay/fast_lava": true, + "minecraft:gameplay/respawn_anchor_works": true, + "minecraft:gameplay/sky_light_level": 4.0, + "minecraft:gameplay/water_evaporates": false, + "minecraft:visual/ambient_light_color": "#1f2830", + "minecraft:visual/fog_color": "#153a4d", + "minecraft:visual/fog_end_distance": 90.0, + "minecraft:visual/fog_start_distance": 8.0, + "minecraft:visual/sky_light_color": "#6f8ec8", + "minecraft:visual/sky_light_factor": 0.0 + }, + "cardinal_light": "nether", + "coordinate_scale": 1.0, + "has_ceiling": false, + "has_ender_dragon_fight": false, + "has_fixed_time": true, + "has_skylight": false, + "height": 128, + "infiniburn": "#minecraft:infiniburn_nether", + "logical_height": 128, + "min_y": 0, + "monster_spawn_block_light_limit": 15, + "monster_spawn_light_level": 15, + "skybox": "none", + "timelines": "#minecraft:in_nether" +} diff --git a/Worldgen/portals/src/main/resources/data/portals/loot_table/chests/skeleton_ruin.json b/Worldgen/portals/src/main/resources/data/portals/loot_table/chests/skeleton_ruin.json new file mode 100644 index 0000000..63dd921 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/loot_table/chests/skeleton_ruin.json @@ -0,0 +1,190 @@ +{ + "type": "minecraft:chest", + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 14.0, + "min": 4.0 + }, + "function": "minecraft:set_count" + } + ], + "name": "minecraft:bone", + "weight": 20 + }, + { + "type": "minecraft:item", + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 18.0, + "min": 6.0 + }, + "function": "minecraft:set_count" + } + ], + "name": "minecraft:arrow", + "weight": 18 + }, + { + "type": "minecraft:item", + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 9.0, + "min": 3.0 + }, + "function": "minecraft:set_count" + } + ], + "name": "minecraft:iron_ingot", + "weight": 14 + }, + { + "type": "minecraft:item", + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 20.0, + "min": 8.0 + }, + "function": "minecraft:set_count" + } + ], + "name": "minecraft:iron_nugget", + "weight": 12 + }, + { + "type": "minecraft:item", + "name": "minecraft:iron_horse_armor", + "weight": 4 + }, + { + "type": "minecraft:empty", + "weight": 10 + } + ], + "rolls": { + "type": "minecraft:uniform", + "max": 5.0, + "min": 2.0 + } + }, + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:enchant_with_levels", + "levels": { + "type": "minecraft:uniform", + "max": 42.0, + "min": 25.0 + }, + "options": "#minecraft:on_random_loot" + } + ], + "name": "minecraft:iron_sword", + "weight": 7 + }, + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:enchant_with_levels", + "levels": { + "type": "minecraft:uniform", + "max": 42.0, + "min": 25.0 + }, + "options": "#minecraft:on_random_loot" + } + ], + "name": "minecraft:bow", + "weight": 7 + }, + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:enchant_with_levels", + "levels": { + "type": "minecraft:uniform", + "max": 42.0, + "min": 25.0 + }, + "options": "#minecraft:on_random_loot" + } + ], + "name": "minecraft:iron_pickaxe", + "weight": 5 + }, + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:enchant_with_levels", + "levels": { + "type": "minecraft:uniform", + "max": 42.0, + "min": 25.0 + }, + "options": "#minecraft:on_random_loot" + } + ], + "name": "minecraft:iron_chestplate", + "weight": 4 + }, + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:enchant_with_levels", + "levels": { + "type": "minecraft:uniform", + "max": 42.0, + "min": 25.0 + }, + "options": "#minecraft:on_random_loot" + } + ], + "name": "minecraft:iron_helmet", + "weight": 4 + }, + { + "type": "minecraft:item", + "functions": [ + { + "function": "minecraft:enchant_randomly", + "options": "#minecraft:on_random_loot" + } + ], + "name": "minecraft:book", + "weight": 6 + }, + { + "type": "minecraft:empty", + "weight": 20 + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "portals:chests/skeleton_ruin" +} diff --git a/Worldgen/portals/src/main/resources/data/portals/tags/block/ore_cave_tree_grows_on.json b/Worldgen/portals/src/main/resources/data/portals/tags/block/ore_cave_tree_grows_on.json new file mode 100644 index 0000000..6427fa8 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/tags/block/ore_cave_tree_grows_on.json @@ -0,0 +1,9 @@ +{ + "values": [ + "#minecraft:base_stone_overworld", + "#minecraft:substrate_overworld", + "minecraft:gravel", + "minecraft:clay", + "minecraft:moss_block" + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/ore_caves.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/ore_caves.json new file mode 100644 index 0000000..5b16c9c --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/ore_caves.json @@ -0,0 +1,167 @@ +{ + "temperature": 0.5, + "downfall": 0.5, + "has_precipitation": false, + "effects": { + "water_color": "#172338", + "water_fog_color": "#11151c", + "fog_color": "#1e2028", + "sky_color": "#1a1c24", + "grass_color": "#4b8f5d", + "foliage_color": "#5fa66b", + "mood_sound": { + "sound": "minecraft:ambient.cave", + "tick_delay": 6000, + "block_search_extent": 8, + "offset": 2.0 + } + }, + "spawners": { + "ambient": [ + { + "type": "minecraft:bat", + "maxCount": 8, + "minCount": 8, + "weight": 10 + } + ], + "axolotls": [ + { + "type": "minecraft:axolotl", + "maxCount": 6, + "minCount": 4, + "weight": 4 + } + ], + "creature": [], + "misc": [], + "monster": [ + { + "type": "minecraft:zombie", + "maxCount": 6, + "minCount": 4, + "weight": 120 + }, + { + "type": "minecraft:skeleton", + "maxCount": 6, + "minCount": 4, + "weight": 120 + }, + { + "type": "minecraft:spider", + "maxCount": 5, + "minCount": 4, + "weight": 110 + }, + { + "type": "minecraft:creeper", + "maxCount": 5, + "minCount": 4, + "weight": 95 + }, + { + "type": "minecraft:witch", + "maxCount": 2, + "minCount": 1, + "weight": 15 + }, + { + "type": "minecraft:enderman", + "maxCount": 4, + "minCount": 1, + "weight": 15 + }, + { + "type": "minecraft:slime", + "maxCount": 4, + "minCount": 2, + "weight": 45 + } + ], + "underground_water_creature": [ + { + "type": "minecraft:glow_squid", + "maxCount": 6, + "minCount": 4, + "weight": 10 + } + ], + "water_ambient": [], + "water_creature": [] + }, + "spawn_costs": {}, + "carvers": [ + "minecraft:cave", + "minecraft:cave_extra_underground", + "minecraft:canyon" + ], + "features": [ + [], + [ + "minecraft:lake_lava_underground", + "minecraft:lake_lava_surface" + ], + [ + "minecraft:amethyst_geode", + "portals:amethyst_geode_dense" + ], + [ + "minecraft:monster_room", + "minecraft:monster_room_deep" + ], + [], + [], + [ + "minecraft:ore_dirt", + "minecraft:ore_gravel", + "portals:ore_gravel_dense", + "minecraft:ore_granite_upper", + "minecraft:ore_granite_lower", + "portals:ore_granite_dense", + "minecraft:ore_diorite_upper", + "minecraft:ore_diorite_lower", + "portals:ore_diorite_dense", + "minecraft:ore_andesite_upper", + "minecraft:ore_andesite_lower", + "portals:ore_andesite_dense", + "portals:ore_deepslate_dense", + "minecraft:ore_tuff", + "portals:ore_tuff_dense", + "minecraft:ore_coal_upper", + "minecraft:ore_coal_lower", + "portals:ore_coal_dense", + "minecraft:ore_iron_upper", + "minecraft:ore_iron_middle", + "minecraft:ore_iron_small", + "portals:ore_iron_dense", + "minecraft:ore_gold", + "minecraft:ore_gold_lower", + "portals:ore_gold_dense", + "minecraft:ore_redstone", + "minecraft:ore_redstone_lower", + "portals:ore_redstone_dense", + "minecraft:ore_lapis", + "minecraft:ore_lapis_buried", + "portals:ore_lapis_dense", + "minecraft:ore_copper", + "portals:ore_copper_dense", + "minecraft:ore_diamond", + "minecraft:ore_diamond_medium", + "minecraft:ore_diamond_large", + "portals:ore_diamond_dense", + "minecraft:disk_gravel" + ], + [], + [ + "minecraft:spring_water", + "minecraft:spring_lava" + ], + [ + "minecraft:glow_lichen", + "portals:rare_cave_tree", + "minecraft:patch_tall_grass_2" + ], + [] + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/ore_caves_deep.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/ore_caves_deep.json new file mode 100644 index 0000000..fc00948 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/ore_caves_deep.json @@ -0,0 +1,127 @@ +{ + "temperature": 0.35, + "downfall": 0.0, + "has_precipitation": false, + "effects": { + "water_color": "#101827", + "water_fog_color": "#080b10", + "fog_color": "#11131a", + "sky_color": "#0f1118", + "grass_color": "#3f4b45", + "foliage_color": "#46524a", + "mood_sound": { + "sound": "minecraft:ambient.cave", + "tick_delay": 6000, + "block_search_extent": 8, + "offset": 2.0 + } + }, + "spawners": { + "ambient": [ + { + "type": "minecraft:bat", + "maxCount": 8, + "minCount": 8, + "weight": 10 + } + ], + "creature": [], + "misc": [], + "monster": [ + { + "type": "minecraft:zombie", + "maxCount": 6, + "minCount": 4, + "weight": 120 + }, + { + "type": "minecraft:skeleton", + "maxCount": 6, + "minCount": 4, + "weight": 120 + }, + { + "type": "minecraft:creeper", + "maxCount": 5, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:spider", + "maxCount": 5, + "minCount": 4, + "weight": 90 + }, + { + "type": "minecraft:enderman", + "maxCount": 4, + "minCount": 1, + "weight": 25 + }, + { + "type": "minecraft:witch", + "maxCount": 2, + "minCount": 1, + "weight": 15 + } + ], + "underground_water_creature": [], + "water_ambient": [], + "water_creature": [] + }, + "spawn_costs": {}, + "carvers": [ + "minecraft:cave", + "minecraft:cave_extra_underground", + "minecraft:canyon" + ], + "features": [ + [], + [ + "minecraft:lake_lava_underground", + "minecraft:lake_lava_surface" + ], + [ + "minecraft:amethyst_geode", + "portals:amethyst_geode_dense" + ], + [ + "minecraft:monster_room", + "minecraft:monster_room_deep" + ], + [], + [], + [ + "minecraft:ore_gravel", + "portals:ore_gravel_dense", + "portals:ore_deepslate_dense", + "minecraft:ore_tuff", + "portals:ore_tuff_dense", + "minecraft:ore_coal_lower", + "portals:ore_coal_dense", + "minecraft:ore_iron_middle", + "minecraft:ore_iron_small", + "portals:ore_iron_dense", + "minecraft:ore_gold_lower", + "portals:ore_gold_dense", + "minecraft:ore_redstone", + "minecraft:ore_redstone_lower", + "portals:ore_redstone_dense", + "minecraft:ore_lapis_buried", + "portals:ore_lapis_dense", + "minecraft:ore_diamond", + "minecraft:ore_diamond_medium", + "minecraft:ore_diamond_large", + "portals:ore_diamond_dense" + ], + [], + [ + "minecraft:spring_lava" + ], + [ + "minecraft:glow_lichen", + "portals:rare_cave_tree" + ], + [] + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/ore_caves_dripstone.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/ore_caves_dripstone.json new file mode 100644 index 0000000..01c980c --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/ore_caves_dripstone.json @@ -0,0 +1,118 @@ +{ + "temperature": 0.8, + "downfall": 0.0, + "has_precipitation": false, + "effects": { + "water_color": "#1c1b15", + "water_fog_color": "#11100d", + "fog_color": "#211f18", + "sky_color": "#1b1813", + "grass_color": "#5f624a", + "foliage_color": "#6a6d50", + "mood_sound": { + "sound": "minecraft:ambient.cave", + "tick_delay": 6000, + "block_search_extent": 8, + "offset": 2.0 + } + }, + "spawners": { + "ambient": [ + { + "type": "minecraft:bat", + "maxCount": 8, + "minCount": 8, + "weight": 10 + } + ], + "creature": [], + "misc": [], + "monster": [ + { + "type": "minecraft:zombie", + "maxCount": 6, + "minCount": 4, + "weight": 110 + }, + { + "type": "minecraft:skeleton", + "maxCount": 6, + "minCount": 4, + "weight": 120 + }, + { + "type": "minecraft:spider", + "maxCount": 5, + "minCount": 4, + "weight": 95 + }, + { + "type": "minecraft:creeper", + "maxCount": 5, + "minCount": 4, + "weight": 80 + }, + { + "type": "minecraft:witch", + "maxCount": 2, + "minCount": 1, + "weight": 20 + } + ], + "underground_water_creature": [], + "water_ambient": [], + "water_creature": [] + }, + "spawn_costs": {}, + "carvers": [ + "minecraft:cave", + "minecraft:cave_extra_underground", + "minecraft:canyon" + ], + "features": [ + [], + [ + "minecraft:lake_lava_underground", + "minecraft:lake_lava_surface" + ], + [ + "minecraft:amethyst_geode" + ], + [ + "minecraft:monster_room", + "minecraft:monster_room_deep" + ], + [], + [], + [ + "minecraft:ore_gravel", + "portals:ore_gravel_dense", + "minecraft:ore_tuff", + "portals:ore_tuff_dense", + "minecraft:ore_iron_upper", + "minecraft:ore_iron_middle", + "portals:ore_iron_dense", + "minecraft:ore_gold", + "portals:ore_gold_dense", + "minecraft:ore_redstone", + "portals:ore_redstone_dense", + "minecraft:ore_copper", + "portals:ore_copper_dense", + "minecraft:ore_diamond_medium", + "portals:ore_diamond_dense" + ], + [], + [ + "minecraft:spring_water", + "minecraft:spring_lava" + ], + [ + "minecraft:glow_lichen", + "portals:rare_cave_tree", + "portals:ore_dripstone_cluster_dense", + "portals:ore_large_dripstone_dense", + "portals:ore_pointed_dripstone_dense" + ], + [] + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/ore_caves_lush.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/ore_caves_lush.json new file mode 100644 index 0000000..6d8a14a --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/ore_caves_lush.json @@ -0,0 +1,136 @@ +{ + "temperature": 0.7, + "downfall": 0.8, + "has_precipitation": false, + "effects": { + "water_color": "#12313a", + "water_fog_color": "#0b1b1a", + "fog_color": "#13221d", + "sky_color": "#101812", + "grass_color": "#4b8f5d", + "foliage_color": "#5fa66b", + "mood_sound": { + "sound": "minecraft:ambient.cave", + "tick_delay": 6000, + "block_search_extent": 8, + "offset": 2.0 + } + }, + "spawners": { + "ambient": [ + { + "type": "minecraft:bat", + "maxCount": 8, + "minCount": 8, + "weight": 10 + } + ], + "axolotls": [ + { + "type": "minecraft:axolotl", + "maxCount": 6, + "minCount": 4, + "weight": 8 + } + ], + "creature": [], + "misc": [], + "monster": [ + { + "type": "minecraft:zombie", + "maxCount": 5, + "minCount": 4, + "weight": 95 + }, + { + "type": "minecraft:skeleton", + "maxCount": 5, + "minCount": 4, + "weight": 95 + }, + { + "type": "minecraft:spider", + "maxCount": 5, + "minCount": 4, + "weight": 95 + }, + { + "type": "minecraft:creeper", + "maxCount": 5, + "minCount": 4, + "weight": 70 + }, + { + "type": "minecraft:slime", + "maxCount": 4, + "minCount": 2, + "weight": 55 + } + ], + "underground_water_creature": [ + { + "type": "minecraft:glow_squid", + "maxCount": 6, + "minCount": 4, + "weight": 10 + } + ], + "water_ambient": [], + "water_creature": [] + }, + "spawn_costs": {}, + "carvers": [ + "minecraft:cave", + "minecraft:cave_extra_underground", + "minecraft:canyon" + ], + "features": [ + [], + [ + "minecraft:lake_lava_underground" + ], + [ + "minecraft:amethyst_geode" + ], + [ + "minecraft:monster_room", + "minecraft:monster_room_deep" + ], + [], + [], + [ + "minecraft:ore_dirt", + "minecraft:ore_gravel", + "minecraft:ore_granite_upper", + "minecraft:ore_diorite_upper", + "minecraft:ore_andesite_upper", + "portals:ore_deepslate_dense", + "minecraft:ore_tuff", + "minecraft:ore_coal_lower", + "portals:ore_coal_dense", + "minecraft:ore_iron_middle", + "portals:ore_iron_dense", + "minecraft:ore_lapis", + "portals:ore_lapis_dense", + "minecraft:ore_diamond", + "portals:ore_diamond_dense", + "minecraft:disk_gravel" + ], + [], + [ + "minecraft:spring_water", + "minecraft:spring_lava" + ], + [ + "minecraft:glow_lichen", + "portals:rare_cave_tree", + "minecraft:patch_tall_grass_2", + "portals:ore_lush_ceiling_dense", + "portals:ore_cave_vines_dense", + "portals:ore_lush_clay_dense", + "portals:ore_lush_floor_dense", + "portals:ore_spore_blossom_dense" + ], + [] + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/painted_canyons.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/painted_canyons.json new file mode 100644 index 0000000..3fe2007 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/painted_canyons.json @@ -0,0 +1,142 @@ +{ + "temperature": 2.0, + "downfall": 0.0, + "has_precipitation": false, + "attributes": { + "minecraft:audio/background_music": { + "default": { + "max_delay": 24000, + "min_delay": 12000, + "sound": "minecraft:music.overworld.badlands" + } + }, + "minecraft:gameplay/snow_golem_melts": true, + "minecraft:visual/sky_color": "#82305f" + }, + "effects": { + "water_color": "#cc8a33", + "water_fog_color": "#7a3d22", + "fog_color": "#cc6046", + "sky_color": "#82305f", + "grass_color": "#d0b45e", + "foliage_color": "#f0ead8" + }, + "creature_spawn_probability": 0.04, + "spawners": { + "ambient": [ + { + "type": "minecraft:bat", + "maxCount": 8, + "minCount": 8, + "weight": 10 + } + ], + "axolotls": [], + "creature": [ + { + "type": "minecraft:armadillo", + "maxCount": 2, + "minCount": 1, + "weight": 12 + }, + { + "type": "minecraft:cow", + "maxCount": 4, + "minCount": 4, + "weight": 6 + }, + { + "type": "minecraft:sheep", + "maxCount": 4, + "minCount": 4, + "weight": 6 + }, + { + "type": "minecraft:wolf", + "maxCount": 4, + "minCount": 2, + "weight": 2 + } + ], + "misc": [], + "monster": [ + { + "type": "minecraft:spider", + "maxCount": 4, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:zombie", + "maxCount": 4, + "minCount": 4, + "weight": 95 + }, + { + "type": "minecraft:zombie_villager", + "maxCount": 1, + "minCount": 1, + "weight": 5 + }, + { + "type": "minecraft:skeleton", + "maxCount": 4, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:creeper", + "maxCount": 4, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:enderman", + "maxCount": 4, + "minCount": 1, + "weight": 10 + }, + { + "type": "minecraft:witch", + "maxCount": 1, + "minCount": 1, + "weight": 5 + } + ], + "underground_water_creature": [], + "water_ambient": [], + "water_creature": [] + }, + "spawn_costs": {}, + "carvers": [ + "minecraft:canyon", + "portals:painted_canyon" + ], + "features": [ + [], + [ + "minecraft:lake_lava_underground", + "minecraft:lake_lava_surface" + ], + [], + [ + "minecraft:monster_room", + "minecraft:monster_room_deep" + ], + [], + [], + [], + [], + [ + "minecraft:spring_lava" + ], + [ + "portals:painted_white_oak", + "minecraft:patch_grass_badlands", + "minecraft:patch_dry_grass_badlands", + "minecraft:patch_dead_bush_badlands", + "minecraft:patch_cactus_decorated" + ], + [] + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/sheep_land.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/sheep_land.json new file mode 100644 index 0000000..d1fd91f --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/sheep_land.json @@ -0,0 +1,52 @@ +{ + "temperature": 0.8, + "downfall": 0.0, + "has_precipitation": false, + "effects": { + "water_color": "#67d7ff", + "water_fog_color": "#7fe7ff", + "fog_color": "#d9fff2", + "sky_color": "#83ddff", + "grass_color": "#78d75b", + "foliage_color": "#6bd66c" + }, + "creature_spawn_probability": 0.28, + "spawners": { + "ambient": [], + "axolotls": [], + "creature": [ + { + "type": "minecraft:sheep", + "maxCount": 8, + "minCount": 4, + "weight": 100 + } + ], + "misc": [], + "monster": [], + "underground_water_creature": [], + "water_ambient": [], + "water_creature": [] + }, + "spawn_costs": {}, + "carvers": [], + "features": [ + [], + [], + [], + [], + [], + [], + [], + [], + [], + [ + "minecraft:patch_grass_plain", + "minecraft:patch_grass_meadow", + "portals:sheep_land_flower_mix", + "minecraft:wildflowers_meadow", + "minecraft:patch_tall_grass_2" + ], + [] + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/skeleton_waste.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/skeleton_waste.json new file mode 100644 index 0000000..14e665e --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/biome/skeleton_waste.json @@ -0,0 +1,108 @@ +{ + "temperature": 0.4, + "downfall": 0.0, + "has_precipitation": false, + "attributes": { + "minecraft:audio/ambient_sounds": { + "additions": { + "sound": "minecraft:ambient.soul_sand_valley.additions", + "tick_chance": 0.0111 + }, + "loop": "minecraft:ambient.soul_sand_valley.loop", + "mood": { + "block_search_extent": 8, + "offset": 2.0, + "sound": "minecraft:ambient.soul_sand_valley.mood", + "tick_delay": 6000 + } + }, + "minecraft:audio/background_music": { + "default": { + "max_delay": 24000, + "min_delay": 12000, + "sound": "minecraft:music.nether.soul_sand_valley" + } + }, + "minecraft:visual/ambient_particles": [ + { + "particle": { + "type": "minecraft:ash" + }, + "probability": 0.00625 + } + ], + "minecraft:visual/fog_color": "#153a4d" + }, + "effects": { + "water_color": "#d6c133", + "water_fog_color": "#8c7f19", + "fog_color": "#153a4d", + "sky_color": "#263548" + }, + "creature_spawn_probability": 0.0, + "spawners": { + "ambient": [], + "axolotls": [], + "creature": [], + "misc": [], + "monster": [ + { + "type": "minecraft:skeleton", + "maxCount": 7, + "minCount": 4, + "weight": 110 + }, + { + "type": "minecraft:stray", + "maxCount": 5, + "minCount": 3, + "weight": 80 + }, + { + "type": "minecraft:bogged", + "maxCount": 4, + "minCount": 2, + "weight": 35 + }, + { + "type": "minecraft:parched", + "maxCount": 5, + "minCount": 2, + "weight": 60 + } + ], + "underground_water_creature": [], + "water_ambient": [], + "water_creature": [] + }, + "spawn_costs": {}, + "carvers": [], + "features": [ + [], + [ + "portals:skeleton_lava_lake", + "portals:skeleton_yellow_water_lake" + ], + [ + "portals:skeleton_basalt_spike" + ], + [ + "portals:skeleton_fossil" + ], + [ + "portals:skeleton_ruin" + ], + [], + [ + "portals:skeleton_clay_disk", + "portals:skeleton_gravel_disk", + "portals:skeleton_concrete_powder_disk" + ], + [], + [ + "minecraft:spring_lava" + ], + [], + [] + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_carver/painted_canyon.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_carver/painted_canyon.json new file mode 100644 index 0000000..0a6e981 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_carver/painted_canyon.json @@ -0,0 +1,70 @@ +{ + "type": "minecraft:canyon", + "config": { + "debug_settings": { + "air_state": { + "Name": "minecraft:warped_button", + "Properties": { + "face": "wall", + "facing": "north", + "powered": "false" + } + }, + "barrier_state": { + "Name": "minecraft:glass" + }, + "lava_state": { + "Name": "minecraft:orange_stained_glass" + }, + "water_state": { + "Name": "minecraft:candle", + "Properties": { + "candles": "1", + "lit": "false", + "waterlogged": "false" + } + } + }, + "lava_level": { + "above_bottom": 8 + }, + "probability": 0.022, + "replaceable": "#minecraft:overworld_carver_replaceables", + "shape": { + "distance_factor": { + "type": "minecraft:uniform", + "max_exclusive": 1.25, + "min_inclusive": 0.8 + }, + "horizontal_radius_factor": { + "type": "minecraft:uniform", + "max_exclusive": 1.6, + "min_inclusive": 0.95 + }, + "thickness": { + "type": "minecraft:trapezoid", + "max": 9.0, + "min": 1.5, + "plateau": 4.0 + }, + "vertical_radius_center_factor": 0.0, + "vertical_radius_default_factor": 1.45, + "width_smoothness": 3 + }, + "vertical_rotation": { + "type": "minecraft:uniform", + "max_exclusive": 0.18, + "min_inclusive": -0.18 + }, + "y": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 190 + }, + "min_inclusive": { + "absolute": 18 + } + }, + "yScale": 5.5 + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_carver/painted_high_canyon.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_carver/painted_high_canyon.json new file mode 100644 index 0000000..679652f --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_carver/painted_high_canyon.json @@ -0,0 +1,70 @@ +{ + "type": "minecraft:canyon", + "config": { + "debug_settings": { + "air_state": { + "Name": "minecraft:warped_button", + "Properties": { + "face": "wall", + "facing": "north", + "powered": "false" + } + }, + "barrier_state": { + "Name": "minecraft:glass" + }, + "lava_state": { + "Name": "minecraft:orange_stained_glass" + }, + "water_state": { + "Name": "minecraft:candle", + "Properties": { + "candles": "1", + "lit": "false", + "waterlogged": "false" + } + } + }, + "lava_level": { + "above_bottom": 8 + }, + "probability": 0.03, + "replaceable": "#minecraft:overworld_carver_replaceables", + "shape": { + "distance_factor": { + "type": "minecraft:uniform", + "max_exclusive": 1.1, + "min_inclusive": 0.75 + }, + "horizontal_radius_factor": { + "type": "minecraft:uniform", + "max_exclusive": 1.2, + "min_inclusive": 0.7 + }, + "thickness": { + "type": "minecraft:trapezoid", + "max": 5.5, + "min": 0.5, + "plateau": 2.0 + }, + "vertical_radius_center_factor": 0.0, + "vertical_radius_default_factor": 1.6, + "width_smoothness": 2 + }, + "vertical_rotation": { + "type": "minecraft:uniform", + "max_exclusive": 0.22, + "min_inclusive": -0.22 + }, + "y": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 310 + }, + "min_inclusive": { + "absolute": 80 + } + }, + "yScale": 6.8 + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_andesite_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_andesite_dense.json new file mode 100644 index 0000000..1addd18 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_andesite_dense.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:ore", + "config": { + "size": 48, + "discard_chance_on_air_exposure": 0.0, + "targets": [ + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:base_stone_overworld" + }, + "state": { + "Name": "minecraft:andesite" + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_coal_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_coal_dense.json new file mode 100644 index 0000000..5376f59 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_coal_dense.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:ore", + "config": { + "size": 24, + "discard_chance_on_air_exposure": 0.0, + "targets": [ + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:stone_ore_replaceables" + }, + "state": { + "Name": "minecraft:coal_ore" + } + }, + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:deepslate_ore_replaceables" + }, + "state": { + "Name": "minecraft:deepslate_coal_ore" + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_copper_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_copper_dense.json new file mode 100644 index 0000000..46d4611 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_copper_dense.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:ore", + "config": { + "size": 24, + "discard_chance_on_air_exposure": 0.0, + "targets": [ + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:stone_ore_replaceables" + }, + "state": { + "Name": "minecraft:copper_ore" + } + }, + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:deepslate_ore_replaceables" + }, + "state": { + "Name": "minecraft:deepslate_copper_ore" + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_deepslate_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_deepslate_dense.json new file mode 100644 index 0000000..8037187 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_deepslate_dense.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:ore", + "config": { + "size": 64, + "discard_chance_on_air_exposure": 0.0, + "targets": [ + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:base_stone_overworld" + }, + "state": { + "Name": "minecraft:deepslate", + "Properties": { + "axis": "y" + } + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_diamond_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_diamond_dense.json new file mode 100644 index 0000000..fb31e0d --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_diamond_dense.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:ore", + "config": { + "size": 10, + "discard_chance_on_air_exposure": 0.25, + "targets": [ + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:stone_ore_replaceables" + }, + "state": { + "Name": "minecraft:diamond_ore" + } + }, + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:deepslate_ore_replaceables" + }, + "state": { + "Name": "minecraft:deepslate_diamond_ore" + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_diorite_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_diorite_dense.json new file mode 100644 index 0000000..aa328d2 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_diorite_dense.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:ore", + "config": { + "size": 48, + "discard_chance_on_air_exposure": 0.0, + "targets": [ + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:base_stone_overworld" + }, + "state": { + "Name": "minecraft:diorite" + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_dripstone_cluster.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_dripstone_cluster.json new file mode 100644 index 0000000..a926bc0 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_dripstone_cluster.json @@ -0,0 +1,38 @@ +{ + "type": "minecraft:dripstone_cluster", + "config": { + "chance_of_dripstone_column_at_max_distance_from_center": 0.1, + "density": { + "type": "minecraft:uniform", + "max_exclusive": 0.55, + "min_inclusive": 0.2 + }, + "dripstone_block_layer_thickness": { + "type": "minecraft:uniform", + "max_inclusive": 5, + "min_inclusive": 2 + }, + "floor_to_ceiling_search_range": 48, + "height": { + "type": "minecraft:uniform", + "max_inclusive": 8, + "min_inclusive": 3 + }, + "height_deviation": 4, + "max_distance_from_center_affecting_height_bias": 8, + "max_distance_from_edge_affecting_chance_of_dripstone_column": 3, + "max_stalagmite_stalactite_height_diff": 2, + "radius": { + "type": "minecraft:uniform", + "max_inclusive": 7, + "min_inclusive": 2 + }, + "wetness": { + "type": "minecraft:clamped_normal", + "deviation": 0.3, + "max": 0.9, + "mean": 0.1, + "min": 0.1 + } + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_gold_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_gold_dense.json new file mode 100644 index 0000000..2ef96af --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_gold_dense.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:ore", + "config": { + "size": 14, + "discard_chance_on_air_exposure": 0.0, + "targets": [ + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:stone_ore_replaceables" + }, + "state": { + "Name": "minecraft:gold_ore" + } + }, + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:deepslate_ore_replaceables" + }, + "state": { + "Name": "minecraft:deepslate_gold_ore" + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_granite_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_granite_dense.json new file mode 100644 index 0000000..f0dcbdc --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_granite_dense.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:ore", + "config": { + "size": 48, + "discard_chance_on_air_exposure": 0.0, + "targets": [ + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:base_stone_overworld" + }, + "state": { + "Name": "minecraft:granite" + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_gravel_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_gravel_dense.json new file mode 100644 index 0000000..e05b04f --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_gravel_dense.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:ore", + "config": { + "size": 48, + "discard_chance_on_air_exposure": 0.0, + "targets": [ + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:base_stone_overworld" + }, + "state": { + "Name": "minecraft:gravel" + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_iron_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_iron_dense.json new file mode 100644 index 0000000..6868f8c --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_iron_dense.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:ore", + "config": { + "size": 18, + "discard_chance_on_air_exposure": 0.0, + "targets": [ + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:stone_ore_replaceables" + }, + "state": { + "Name": "minecraft:iron_ore" + } + }, + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:deepslate_ore_replaceables" + }, + "state": { + "Name": "minecraft:deepslate_iron_ore" + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_lapis_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_lapis_dense.json new file mode 100644 index 0000000..a7264e9 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_lapis_dense.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:ore", + "config": { + "size": 10, + "discard_chance_on_air_exposure": 0.0, + "targets": [ + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:stone_ore_replaceables" + }, + "state": { + "Name": "minecraft:lapis_ore" + } + }, + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:deepslate_ore_replaceables" + }, + "state": { + "Name": "minecraft:deepslate_lapis_ore" + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_large_dripstone.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_large_dripstone.json new file mode 100644 index 0000000..d89987e --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_large_dripstone.json @@ -0,0 +1,34 @@ +{ + "type": "minecraft:large_dripstone", + "config": { + "column_radius": { + "type": "minecraft:uniform", + "max_inclusive": 5, + "min_inclusive": 2 + }, + "floor_to_ceiling_search_range": 64, + "height_scale": { + "type": "minecraft:uniform", + "max_exclusive": 2.0, + "min_inclusive": 0.7 + }, + "max_column_radius_to_cave_height_ratio": 0.33, + "min_bluntness_for_wind": 0.6, + "min_radius_for_wind": 4, + "stalactite_bluntness": { + "type": "minecraft:uniform", + "max_exclusive": 0.9, + "min_inclusive": 0.3 + }, + "stalagmite_bluntness": { + "type": "minecraft:uniform", + "max_exclusive": 1.0, + "min_inclusive": 0.4 + }, + "wind_speed": { + "type": "minecraft:uniform", + "max_exclusive": 0.15, + "min_inclusive": 0.0 + } + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_pointed_dripstone.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_pointed_dripstone.json new file mode 100644 index 0000000..7b64f58 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_pointed_dripstone.json @@ -0,0 +1,85 @@ +{ + "type": "minecraft:simple_random_selector", + "config": { + "features": [ + { + "feature": { + "type": "minecraft:pointed_dripstone", + "config": { + "chance_of_directional_spread": 0.7, + "chance_of_spread_radius2": 0.5, + "chance_of_spread_radius3": 0.5, + "chance_of_taller_dripstone": 0.25 + } + }, + "placement": [ + { + "type": "minecraft:environment_scan", + "allowed_search_condition": { + "type": "minecraft:any_of", + "predicates": [ + { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + }, + { + "type": "minecraft:matching_blocks", + "blocks": "minecraft:water" + } + ] + }, + "direction_of_search": "down", + "max_steps": 32, + "target_condition": { + "type": "minecraft:solid" + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": 0, + "y_spread": 1 + } + ] + }, + { + "feature": { + "type": "minecraft:pointed_dripstone", + "config": { + "chance_of_directional_spread": 0.7, + "chance_of_spread_radius2": 0.5, + "chance_of_spread_radius3": 0.5, + "chance_of_taller_dripstone": 0.25 + } + }, + "placement": [ + { + "type": "minecraft:environment_scan", + "allowed_search_condition": { + "type": "minecraft:any_of", + "predicates": [ + { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + }, + { + "type": "minecraft:matching_blocks", + "blocks": "minecraft:water" + } + ] + }, + "direction_of_search": "up", + "max_steps": 32, + "target_condition": { + "type": "minecraft:solid" + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": 0, + "y_spread": -1 + } + ] + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_redstone_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_redstone_dense.json new file mode 100644 index 0000000..f560d07 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_redstone_dense.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:ore", + "config": { + "size": 12, + "discard_chance_on_air_exposure": 0.0, + "targets": [ + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:stone_ore_replaceables" + }, + "state": { + "Name": "minecraft:redstone_ore" + } + }, + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:deepslate_ore_replaceables" + }, + "state": { + "Name": "minecraft:deepslate_redstone_ore" + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_tuff_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_tuff_dense.json new file mode 100644 index 0000000..35342b7 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/ore_tuff_dense.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:ore", + "config": { + "size": 48, + "discard_chance_on_air_exposure": 0.0, + "targets": [ + { + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:base_stone_overworld" + }, + "state": { + "Name": "minecraft:tuff" + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/rare_cave_tree.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/rare_cave_tree.json new file mode 100644 index 0000000..9ea4616 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/rare_cave_tree.json @@ -0,0 +1,68 @@ +{ + "type": "minecraft:tree", + "config": { + "below_trunk_provider": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:rooted_dirt" + } + }, + "decorators": [], + "foliage_placer": { + "type": "minecraft:random_spread_foliage_placer", + "foliage_height": 2, + "leaf_placement_attempts": 42, + "offset": 0, + "radius": 3 + }, + "foliage_provider": { + "type": "minecraft:weighted_state_provider", + "entries": [ + { + "data": { + "Name": "minecraft:azalea_leaves", + "Properties": { + "distance": "7", + "persistent": "false", + "waterlogged": "false" + } + }, + "weight": 4 + }, + { + "data": { + "Name": "minecraft:flowering_azalea_leaves", + "Properties": { + "distance": "7", + "persistent": "false", + "waterlogged": "false" + } + }, + "weight": 1 + } + ] + }, + "ignore_vines": true, + "minimum_size": { + "type": "minecraft:two_layers_feature_size", + "limit": 1, + "lower_size": 0, + "upper_size": 1 + }, + "trunk_placer": { + "type": "minecraft:straight_trunk_placer", + "base_height": 3, + "height_rand_a": 2, + "height_rand_b": 0 + }, + "trunk_provider": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:oak_log", + "Properties": { + "axis": "y" + } + } + } + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/sheep_land_flower_mix.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/sheep_land_flower_mix.json new file mode 100644 index 0000000..d6e4bed --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/sheep_land_flower_mix.json @@ -0,0 +1,118 @@ +{ + "type": "minecraft:simple_block", + "config": { + "to_place": { + "type": "minecraft:weighted_state_provider", + "entries": [ + { + "data": { + "Name": "minecraft:dandelion" + }, + "weight": 8 + }, + { + "data": { + "Name": "minecraft:poppy" + }, + "weight": 8 + }, + { + "data": { + "Name": "minecraft:blue_orchid" + }, + "weight": 5 + }, + { + "data": { + "Name": "minecraft:allium" + }, + "weight": 5 + }, + { + "data": { + "Name": "minecraft:azure_bluet" + }, + "weight": 7 + }, + { + "data": { + "Name": "minecraft:red_tulip" + }, + "weight": 5 + }, + { + "data": { + "Name": "minecraft:orange_tulip" + }, + "weight": 5 + }, + { + "data": { + "Name": "minecraft:white_tulip" + }, + "weight": 5 + }, + { + "data": { + "Name": "minecraft:pink_tulip" + }, + "weight": 5 + }, + { + "data": { + "Name": "minecraft:oxeye_daisy" + }, + "weight": 7 + }, + { + "data": { + "Name": "minecraft:cornflower" + }, + "weight": 7 + }, + { + "data": { + "Name": "minecraft:lily_of_the_valley" + }, + "weight": 4 + }, + { + "data": { + "Name": "minecraft:sunflower", + "Properties": { + "half": "lower" + } + }, + "weight": 2 + }, + { + "data": { + "Name": "minecraft:lilac", + "Properties": { + "half": "lower" + } + }, + "weight": 2 + }, + { + "data": { + "Name": "minecraft:rose_bush", + "Properties": { + "half": "lower" + } + }, + "weight": 2 + }, + { + "data": { + "Name": "minecraft:peony", + "Properties": { + "half": "lower" + } + }, + "weight": 2 + } + ] + } + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_basalt_spike.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_basalt_spike.json new file mode 100644 index 0000000..95d2f21 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_basalt_spike.json @@ -0,0 +1,4 @@ +{ + "type": "portals:skeleton_basalt_spike", + "config": {} +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_clay_disk.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_clay_disk.json new file mode 100644 index 0000000..dab7add --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_clay_disk.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:disk", + "config": { + "half_height": 1, + "radius": { + "type": "minecraft:uniform", + "max_inclusive": 5, + "min_inclusive": 2 + }, + "state_provider": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:clay" + } + }, + "target": { + "type": "minecraft:matching_blocks", + "blocks": [ + "minecraft:soul_sand", + "minecraft:soul_soil", + "minecraft:gravel", + "minecraft:white_concrete_powder" + ] + } + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_concrete_powder_disk.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_concrete_powder_disk.json new file mode 100644 index 0000000..20ab58f --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_concrete_powder_disk.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:disk", + "config": { + "half_height": 1, + "radius": { + "type": "minecraft:uniform", + "max_inclusive": 5, + "min_inclusive": 2 + }, + "state_provider": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:white_concrete_powder" + } + }, + "target": { + "type": "minecraft:matching_blocks", + "blocks": [ + "minecraft:soul_sand", + "minecraft:soul_soil", + "minecraft:gravel", + "minecraft:clay" + ] + } + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_gravel_disk.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_gravel_disk.json new file mode 100644 index 0000000..9325778 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_gravel_disk.json @@ -0,0 +1,26 @@ +{ + "type": "minecraft:disk", + "config": { + "half_height": 2, + "radius": { + "type": "minecraft:uniform", + "max_inclusive": 6, + "min_inclusive": 2 + }, + "state_provider": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:gravel" + } + }, + "target": { + "type": "minecraft:matching_blocks", + "blocks": [ + "minecraft:soul_sand", + "minecraft:soul_soil", + "minecraft:clay", + "minecraft:white_concrete_powder" + ] + } + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_lava_lake.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_lava_lake.json new file mode 100644 index 0000000..5e80064 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_lava_lake.json @@ -0,0 +1,23 @@ +{ + "type": "minecraft:lake", + "config": { + "barrier": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:basalt", + "Properties": { + "axis": "y" + } + } + }, + "fluid": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:lava", + "Properties": { + "level": "0" + } + } + } + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_ruin.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_ruin.json new file mode 100644 index 0000000..e99e84a --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_ruin.json @@ -0,0 +1,4 @@ +{ + "type": "portals:skeleton_ruin", + "config": {} +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_yellow_water_lake.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_yellow_water_lake.json new file mode 100644 index 0000000..71fedf3 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/configured_feature/skeleton_yellow_water_lake.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:lake", + "config": { + "barrier": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:clay" + } + }, + "fluid": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:water", + "Properties": { + "level": "0" + } + } + } + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/noise_settings/ore_caves.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/noise_settings/ore_caves.json new file mode 100644 index 0000000..cd39f2a --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/noise_settings/ore_caves.json @@ -0,0 +1,148 @@ +{ + "aquifers_enabled": false, + "default_block": { + "Name": "minecraft:stone" + }, + "default_fluid": { + "Name": "minecraft:air" + }, + "disable_mob_generation": false, + "legacy_random_source": true, + "noise": { + "height": 128, + "min_y": 0, + "size_horizontal": 1, + "size_vertical": 2 + }, + "noise_router": { + "barrier": 0.0, + "continents": 0.0, + "depth": 0.0, + "erosion": 0.0, + "final_density": { + "type": "minecraft:squeeze", + "argument": { + "type": "minecraft:mul", + "argument1": 0.64, + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:blend_density", + "argument": { + "type": "minecraft:add", + "argument1": 2.5, + "argument2": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_value": 0.0, + "from_y": -8, + "to_value": 1.0, + "to_y": 24 + }, + "argument2": { + "type": "minecraft:add", + "argument1": -2.5, + "argument2": { + "type": "minecraft:add", + "argument1": 0.9375, + "argument2": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_value": 1.0, + "from_y": 104, + "to_value": 0.0, + "to_y": 128 + }, + "argument2": { + "type": "minecraft:add", + "argument1": -0.9375, + "argument2": "minecraft:nether/base_3d_noise" + } + } + } + } + } + } + } + } + } + }, + "fluid_level_floodedness": 0.0, + "fluid_level_spread": 0.0, + "lava": 0.0, + "preliminary_surface_level": 0.0, + "ridges": 0.0, + "temperature": { + "type": "minecraft:shifted_noise", + "noise": "minecraft:nether/temperature", + "shift_x": 0.0, + "shift_y": 0.0, + "shift_z": 0.0, + "xz_scale": 0.55, + "y_scale": 0.0 + }, + "vegetation": { + "type": "minecraft:shifted_noise", + "noise": "minecraft:nether/vegetation", + "shift_x": 0.0, + "shift_y": 0.0, + "shift_z": 0.0, + "xz_scale": 0.55, + "y_scale": 0.0 + }, + "vein_gap": 0.0, + "vein_ridged": 0.0, + "vein_toggle": 0.0 + }, + "ore_veins_enabled": false, + "sea_level": 0, + "spawn_target": [], + "surface_rule": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:vertical_gradient", + "false_at_and_above": { + "above_bottom": 5 + }, + "random_name": "minecraft:bedrock_floor", + "true_at_and_below": { + "above_bottom": 0 + } + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:bedrock" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:not", + "invert": { + "type": "minecraft:vertical_gradient", + "false_at_and_above": { + "below_top": 0 + }, + "random_name": "minecraft:bedrock_roof", + "true_at_and_below": { + "below_top": 5 + } + } + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:bedrock" + } + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/noise_settings/painted_canyons.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/noise_settings/painted_canyons.json new file mode 100644 index 0000000..2c49efd --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/noise_settings/painted_canyons.json @@ -0,0 +1,943 @@ +{ + "aquifers_enabled": false, + "default_block": { + "Name": "minecraft:orange_terracotta" + }, + "default_fluid": { + "Name": "minecraft:air" + }, + "disable_mob_generation": false, + "legacy_random_source": false, + "noise": { + "height": 384, + "min_y": 0, + "size_horizontal": 1, + "size_vertical": 2 + }, + "noise_router": { + "barrier": 0.0, + "continents": 0.0, + "depth": 0.0, + "erosion": 0.0, + "final_density": { + "type": "minecraft:squeeze", + "argument": { + "type": "minecraft:mul", + "argument1": 0.64, + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:blend_density", + "argument": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_value": 1.28, + "from_y": 18, + "to_value": -1.18, + "to_y": 146 + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 1.02, + "argument2": { + "type": "minecraft:clamp", + "input": { + "type": "minecraft:noise", + "noise": "minecraft:surface", + "xz_scale": 0.03, + "y_scale": 0.0 + }, + "max": 0.85, + "min": -0.18 + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": -2.18, + "argument2": { + "type": "minecraft:clamp", + "input": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": -1.0, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:noise", + "noise": "minecraft:ridge", + "xz_scale": 0.054, + "y_scale": 0.0 + } + } + }, + "argument2": 0.49 + }, + "max": 0.95, + "min": 0.0 + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": -0.62, + "argument2": { + "type": "minecraft:clamp", + "input": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": -1.0, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:noise", + "noise": "minecraft:vegetation", + "xz_scale": 0.13, + "y_scale": 0.0 + } + } + }, + "argument2": 0.31 + }, + "max": 0.62, + "min": 0.0 + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 0.2, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:netherrack", + "xz_scale": 0.42, + "y_scale": 0.0 + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 0.08, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:gravel", + "xz_scale": 1.2, + "y_scale": 0.0 + } + }, + "argument2": { + "type": "minecraft:mul", + "argument1": 2.75, + "argument2": { + "type": "minecraft:clamp", + "input": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:clamp", + "input": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:noise", + "noise": "minecraft:ridge", + "xz_scale": 0.14, + "y_scale": 0.0 + } + }, + "argument2": -0.36 + }, + "max": 0.9, + "min": 0.0 + }, + "argument2": { + "type": "minecraft:clamp", + "input": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:noise", + "noise": "minecraft:surface", + "xz_scale": 0.2, + "y_scale": 0.0 + } + }, + "argument2": -0.42 + }, + "max": 0.85, + "min": 0.0 + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": -0.5, + "argument2": { + "type": "minecraft:clamp", + "input": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:noise", + "noise": "minecraft:vegetation", + "xz_scale": 0.09, + "y_scale": 0.0 + } + }, + "argument2": -0.46 + }, + "max": 0.7, + "min": 0.0 + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 0.32, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:gravel", + "xz_scale": 0.95, + "y_scale": 0.45 + } + }, + "argument2": { + "type": "minecraft:y_clamped_gradient", + "from_value": 0.5, + "from_y": 260, + "to_value": -0.92, + "to_y": 384 + } + } + } + }, + "max": 1.0, + "min": 0.0 + } + } + } + } + } + } + } + } + } + } + } + }, + "fluid_level_floodedness": 0.0, + "fluid_level_spread": 0.0, + "lava": 0.0, + "preliminary_surface_level": 72.0, + "ridges": 0.0, + "temperature": 0.0, + "vegetation": { + "type": "minecraft:noise", + "noise": "minecraft:vegetation", + "xz_scale": 0.22, + "y_scale": 0.0 + }, + "vein_gap": 0.0, + "vein_ridged": 0.0, + "vein_toggle": 0.0 + }, + "ore_veins_enabled": false, + "sea_level": 0, + "spawn_target": [], + "surface_rule": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:vertical_gradient", + "false_at_and_above": { + "above_bottom": 5 + }, + "random_name": "minecraft:bedrock_floor", + "true_at_and_below": { + "above_bottom": 0 + } + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:bedrock" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 376 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:purple_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 360 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:magenta_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 344 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:red_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 328 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:orange_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 312 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:yellow_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 296 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:white_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 280 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:light_gray_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 264 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:pink_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 248 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:brown_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 232 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:gray_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 216 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:cyan_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 200 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:blue_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 184 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:light_blue_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 168 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:green_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 152 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:lime_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "add_surface_depth": false, + "offset": 0, + "secondary_depth_range": 0, + "surface_type": "floor" + }, + "then_run": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": true, + "anchor": { + "absolute": 76 + }, + "surface_depth_multiplier": 1 + }, + "then_run": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:noise_threshold", + "max_threshold": 1.7976931348623157E308, + "min_threshold": 0.46, + "noise": "minecraft:vegetation" + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:grass_block", + "Properties": { + "snowy": "false" + } + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:noise_threshold", + "max_threshold": 1.7976931348623157E308, + "min_threshold": 0.38, + "noise": "minecraft:patch" + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:coarse_dirt" + } + } + } + ] + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:noise_threshold", + "max_threshold": 1.7976931348623157E308, + "min_threshold": 0.5, + "noise": "minecraft:surface" + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:red_sand" + } + } + } + ] + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 136 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:red_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 128 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:orange_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 120 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:yellow_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 112 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:white_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 104 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:light_gray_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 96 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:pink_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 88 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:magenta_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 80 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:purple_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 72 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:blue_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 64 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:light_blue_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 56 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:cyan_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 48 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:green_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 40 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:lime_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 32 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:brown_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 24 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:gray_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 16 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:black_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 12 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:orange_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 8 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:yellow_terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:y_above", + "add_stone_depth": false, + "anchor": { + "absolute": 16 + }, + "surface_depth_multiplier": 0 + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:terracotta" + } + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/noise_settings/sheep_land.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/noise_settings/sheep_land.json new file mode 100644 index 0000000..8d910ce --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/noise_settings/sheep_land.json @@ -0,0 +1,130 @@ +{ + "aquifers_enabled": false, + "default_block": { + "Name": "minecraft:dirt" + }, + "default_fluid": { + "Name": "minecraft:air" + }, + "disable_mob_generation": false, + "legacy_random_source": false, + "noise": { + "height": 256, + "min_y": 0, + "size_horizontal": 1, + "size_vertical": 2 + }, + "noise_router": { + "barrier": 0.0, + "continents": 0.0, + "depth": 0.0, + "erosion": 0.0, + "final_density": { + "type": "minecraft:squeeze", + "argument": { + "type": "minecraft:mul", + "argument1": 0.64, + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:blend_density", + "argument": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_value": 1.0, + "from_y": 48, + "to_value": -1.0, + "to_y": 80 + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 0.34, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:surface", + "xz_scale": 0.42, + "y_scale": 0.0 + } + }, + "argument2": { + "type": "minecraft:mul", + "argument1": 0.16, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:vegetation", + "xz_scale": 0.2, + "y_scale": 0.0 + } + } + } + } + } + } + } + }, + "fluid_level_floodedness": 0.0, + "fluid_level_spread": 0.0, + "lava": 0.0, + "preliminary_surface_level": 64.0, + "ridges": 0.0, + "temperature": 0.0, + "vegetation": { + "type": "minecraft:noise", + "noise": "minecraft:vegetation", + "xz_scale": 0.25, + "y_scale": 0.0 + }, + "vein_gap": 0.0, + "vein_ridged": 0.0, + "vein_toggle": 0.0 + }, + "ore_veins_enabled": false, + "sea_level": 0, + "spawn_target": [], + "surface_rule": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:vertical_gradient", + "false_at_and_above": { + "above_bottom": 5 + }, + "random_name": "minecraft:bedrock_floor", + "true_at_and_below": { + "above_bottom": 0 + } + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:bedrock" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "add_surface_depth": false, + "offset": 0, + "secondary_depth_range": 0, + "surface_type": "floor" + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:grass_block", + "Properties": { + "snowy": "false" + } + } + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/noise_settings/skeleton_waste.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/noise_settings/skeleton_waste.json new file mode 100644 index 0000000..6d99813 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/noise_settings/skeleton_waste.json @@ -0,0 +1,282 @@ +{ + "aquifers_enabled": false, + "default_block": { + "Name": "minecraft:soul_soil" + }, + "default_fluid": { + "Name": "minecraft:water", + "Properties": { + "level": "0" + } + }, + "disable_mob_generation": false, + "legacy_random_source": false, + "noise": { + "height": 128, + "min_y": 0, + "size_horizontal": 1, + "size_vertical": 1 + }, + "noise_router": { + "barrier": 0.0, + "continents": 0.0, + "depth": 0.0, + "erosion": 0.0, + "final_density": { + "type": "minecraft:squeeze", + "argument": { + "type": "minecraft:mul", + "argument1": 0.64, + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:blend_density", + "argument": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_value": 1.58, + "from_y": 8, + "to_value": -1.38, + "to_y": 120 + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 0.9, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:surface", + "xz_scale": 0.15, + "y_scale": 0.0 + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 0.46, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:ridge", + "xz_scale": 0.28, + "y_scale": 0.0 + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": -0.42, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:vegetation", + "xz_scale": 0.055, + "y_scale": 0.0 + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 0.28, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:netherrack", + "xz_scale": 0.95, + "y_scale": 0.0 + } + }, + "argument2": { + "type": "minecraft:mul", + "argument1": 0.16, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:gravel", + "xz_scale": 1.25, + "y_scale": 0.0 + } + } + } + } + } + } + } + } + } + } + }, + "fluid_level_floodedness": 0.0, + "fluid_level_spread": 0.0, + "lava": 0.0, + "preliminary_surface_level": 64.0, + "ridges": 0.0, + "temperature": 0.0, + "vegetation": { + "type": "minecraft:noise", + "noise": "minecraft:vegetation", + "xz_scale": 0.25, + "y_scale": 0.0 + }, + "vein_gap": 0.0, + "vein_ridged": 0.0, + "vein_toggle": 0.0 + }, + "ore_veins_enabled": false, + "sea_level": 64, + "spawn_target": [], + "surface_rule": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:vertical_gradient", + "false_at_and_above": { + "above_bottom": 5 + }, + "random_name": "minecraft:bedrock_floor", + "true_at_and_below": { + "above_bottom": 0 + } + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:bedrock" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "add_surface_depth": true, + "offset": 0, + "secondary_depth_range": 0, + "surface_type": "floor" + }, + "then_run": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:noise_threshold", + "max_threshold": 1.7976931348623157E308, + "min_threshold": 0.55, + "noise": "minecraft:ridge" + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:basalt", + "Properties": { + "axis": "y" + } + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:noise_threshold", + "max_threshold": 1.7976931348623157E308, + "min_threshold": 0.5, + "noise": "minecraft:netherrack" + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:black_concrete_powder" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:noise_threshold", + "max_threshold": 1.7976931348623157E308, + "min_threshold": 0.35, + "noise": "minecraft:patch" + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:gray_concrete_powder" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:noise_threshold", + "max_threshold": 1.7976931348623157E308, + "min_threshold": 0.34, + "noise": "minecraft:surface" + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:white_concrete_powder" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:noise_threshold", + "max_threshold": 0.34, + "min_threshold": 0.02, + "noise": "minecraft:surface" + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:clay" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:noise_threshold", + "max_threshold": 1.7976931348623157E308, + "min_threshold": 0.18, + "noise": "minecraft:gravel" + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:gravel" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:noise_threshold", + "max_threshold": 1.7976931348623157E308, + "min_threshold": 0.0, + "noise": "minecraft:nether_state_selector" + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:soul_sand" + } + } + }, + { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:soul_soil" + } + } + ] + } + } + ] + } +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/amethyst_geode_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/amethyst_geode_dense.json new file mode 100644 index 0000000..344748e --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/amethyst_geode_dense.json @@ -0,0 +1,27 @@ +{ + "feature": "minecraft:amethyst_geode", + "placement": [ + { + "type": "minecraft:rarity_filter", + "chance": 8 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "above_bottom": 8 + }, + "max_inclusive": { + "below_top": 8 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_andesite_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_andesite_dense.json new file mode 100644 index 0000000..936bf9e --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_andesite_dense.json @@ -0,0 +1,27 @@ +{ + "feature": "portals:ore_andesite_dense", + "placement": [ + { + "type": "minecraft:count", + "count": 8 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "above_bottom": 0 + }, + "max_inclusive": { + "below_top": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_cave_vines_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_cave_vines_dense.json new file mode 100644 index 0000000..bed87f9 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_cave_vines_dense.json @@ -0,0 +1,45 @@ +{ + "feature": "minecraft:cave_vine", + "placement": [ + { + "type": "minecraft:count", + "count": 260 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:environment_scan", + "allowed_search_condition": { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + }, + "direction_of_search": "up", + "max_steps": 32, + "target_condition": { + "type": "minecraft:has_sturdy_face", + "direction": "down" + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": 0, + "y_spread": -1 + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_cave_vines_sparse.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_cave_vines_sparse.json new file mode 100644 index 0000000..23f6815 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_cave_vines_sparse.json @@ -0,0 +1,45 @@ +{ + "feature": "minecraft:cave_vine", + "placement": [ + { + "type": "minecraft:count", + "count": 56 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:environment_scan", + "allowed_search_condition": { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + }, + "direction_of_search": "up", + "max_steps": 32, + "target_condition": { + "type": "minecraft:has_sturdy_face", + "direction": "down" + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": 0, + "y_spread": -1 + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_coal_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_coal_dense.json new file mode 100644 index 0000000..b20ad5a --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_coal_dense.json @@ -0,0 +1,27 @@ +{ + "feature": "portals:ore_coal_dense", + "placement": [ + { + "type": "minecraft:count", + "count": 24 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "above_bottom": 0 + }, + "max_inclusive": { + "below_top": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_copper_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_copper_dense.json new file mode 100644 index 0000000..b8e4460 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_copper_dense.json @@ -0,0 +1,27 @@ +{ + "feature": "portals:ore_copper_dense", + "placement": [ + { + "type": "minecraft:count", + "count": 14 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "above_bottom": 0 + }, + "max_inclusive": { + "below_top": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_deepslate_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_deepslate_dense.json new file mode 100644 index 0000000..b544aef --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_deepslate_dense.json @@ -0,0 +1,27 @@ +{ + "feature": "portals:ore_deepslate_dense", + "placement": [ + { + "type": "minecraft:count", + "count": 16 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "above_bottom": 0 + }, + "max_inclusive": { + "below_top": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_diamond_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_diamond_dense.json new file mode 100644 index 0000000..5ed4419 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_diamond_dense.json @@ -0,0 +1,27 @@ +{ + "feature": "portals:ore_diamond_dense", + "placement": [ + { + "type": "minecraft:count", + "count": 7 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "above_bottom": 0 + }, + "max_inclusive": { + "below_top": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_diorite_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_diorite_dense.json new file mode 100644 index 0000000..5e8971f --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_diorite_dense.json @@ -0,0 +1,27 @@ +{ + "feature": "portals:ore_diorite_dense", + "placement": [ + { + "type": "minecraft:count", + "count": 8 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "above_bottom": 0 + }, + "max_inclusive": { + "below_top": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_dripstone_cluster_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_dripstone_cluster_dense.json new file mode 100644 index 0000000..2940b04 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_dripstone_cluster_dense.json @@ -0,0 +1,31 @@ +{ + "feature": "portals:ore_dripstone_cluster", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:uniform", + "max_inclusive": 72, + "min_inclusive": 40 + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_dripstone_cluster_sparse.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_dripstone_cluster_sparse.json new file mode 100644 index 0000000..e33a86e --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_dripstone_cluster_sparse.json @@ -0,0 +1,31 @@ +{ + "feature": "portals:ore_dripstone_cluster", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:uniform", + "max_inclusive": 48, + "min_inclusive": 18 + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_gold_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_gold_dense.json new file mode 100644 index 0000000..674952c --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_gold_dense.json @@ -0,0 +1,27 @@ +{ + "feature": "portals:ore_gold_dense", + "placement": [ + { + "type": "minecraft:count", + "count": 12 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "above_bottom": 0 + }, + "max_inclusive": { + "below_top": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_granite_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_granite_dense.json new file mode 100644 index 0000000..37b632d --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_granite_dense.json @@ -0,0 +1,27 @@ +{ + "feature": "portals:ore_granite_dense", + "placement": [ + { + "type": "minecraft:count", + "count": 8 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "above_bottom": 0 + }, + "max_inclusive": { + "below_top": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_gravel_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_gravel_dense.json new file mode 100644 index 0000000..dc7918b --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_gravel_dense.json @@ -0,0 +1,27 @@ +{ + "feature": "portals:ore_gravel_dense", + "placement": [ + { + "type": "minecraft:count", + "count": 8 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "above_bottom": 0 + }, + "max_inclusive": { + "below_top": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_iron_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_iron_dense.json new file mode 100644 index 0000000..4989237 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_iron_dense.json @@ -0,0 +1,27 @@ +{ + "feature": "portals:ore_iron_dense", + "placement": [ + { + "type": "minecraft:count", + "count": 22 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "above_bottom": 0 + }, + "max_inclusive": { + "below_top": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lapis_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lapis_dense.json new file mode 100644 index 0000000..ff75b98 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lapis_dense.json @@ -0,0 +1,27 @@ +{ + "feature": "portals:ore_lapis_dense", + "placement": [ + { + "type": "minecraft:count", + "count": 10 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "above_bottom": 0 + }, + "max_inclusive": { + "below_top": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_large_dripstone_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_large_dripstone_dense.json new file mode 100644 index 0000000..e750e6d --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_large_dripstone_dense.json @@ -0,0 +1,31 @@ +{ + "feature": "portals:ore_large_dripstone", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:uniform", + "max_inclusive": 5, + "min_inclusive": 2 + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_large_dripstone_sparse.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_large_dripstone_sparse.json new file mode 100644 index 0000000..7b2f7f8 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_large_dripstone_sparse.json @@ -0,0 +1,31 @@ +{ + "feature": "portals:ore_large_dripstone", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:uniform", + "max_inclusive": 16, + "min_inclusive": 4 + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_ceiling_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_ceiling_dense.json new file mode 100644 index 0000000..f6d28ea --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_ceiling_dense.json @@ -0,0 +1,44 @@ +{ + "feature": "minecraft:moss_patch_ceiling", + "placement": [ + { + "type": "minecraft:count", + "count": 180 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:environment_scan", + "allowed_search_condition": { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + }, + "direction_of_search": "up", + "max_steps": 32, + "target_condition": { + "type": "minecraft:solid" + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": 0, + "y_spread": -1 + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_ceiling_sparse.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_ceiling_sparse.json new file mode 100644 index 0000000..3510707 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_ceiling_sparse.json @@ -0,0 +1,44 @@ +{ + "feature": "minecraft:moss_patch_ceiling", + "placement": [ + { + "type": "minecraft:count", + "count": 32 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:environment_scan", + "allowed_search_condition": { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + }, + "direction_of_search": "up", + "max_steps": 32, + "target_condition": { + "type": "minecraft:solid" + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": 0, + "y_spread": -1 + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_clay_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_clay_dense.json new file mode 100644 index 0000000..90f1999 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_clay_dense.json @@ -0,0 +1,44 @@ +{ + "feature": "minecraft:lush_caves_clay", + "placement": [ + { + "type": "minecraft:count", + "count": 80 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:environment_scan", + "allowed_search_condition": { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + }, + "direction_of_search": "down", + "max_steps": 32, + "target_condition": { + "type": "minecraft:solid" + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": 0, + "y_spread": 1 + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_clay_sparse.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_clay_sparse.json new file mode 100644 index 0000000..7e0517a --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_clay_sparse.json @@ -0,0 +1,44 @@ +{ + "feature": "minecraft:lush_caves_clay", + "placement": [ + { + "type": "minecraft:count", + "count": 14 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:environment_scan", + "allowed_search_condition": { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + }, + "direction_of_search": "down", + "max_steps": 32, + "target_condition": { + "type": "minecraft:solid" + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": 0, + "y_spread": 1 + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_floor_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_floor_dense.json new file mode 100644 index 0000000..b9c7022 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_floor_dense.json @@ -0,0 +1,44 @@ +{ + "feature": "minecraft:moss_patch", + "placement": [ + { + "type": "minecraft:count", + "count": 180 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:environment_scan", + "allowed_search_condition": { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + }, + "direction_of_search": "down", + "max_steps": 32, + "target_condition": { + "type": "minecraft:solid" + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": 0, + "y_spread": 1 + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_floor_sparse.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_floor_sparse.json new file mode 100644 index 0000000..19cad54 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_lush_floor_sparse.json @@ -0,0 +1,44 @@ +{ + "feature": "minecraft:moss_patch", + "placement": [ + { + "type": "minecraft:count", + "count": 32 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:environment_scan", + "allowed_search_condition": { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + }, + "direction_of_search": "down", + "max_steps": 32, + "target_condition": { + "type": "minecraft:solid" + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": 0, + "y_spread": 1 + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_pointed_dripstone_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_pointed_dripstone_dense.json new file mode 100644 index 0000000..a89cddf --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_pointed_dripstone_dense.json @@ -0,0 +1,56 @@ +{ + "feature": "portals:ore_pointed_dripstone", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:uniform", + "max_inclusive": 160, + "min_inclusive": 96 + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:count", + "count": { + "type": "minecraft:uniform", + "max_inclusive": 5, + "min_inclusive": 1 + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": { + "type": "minecraft:clamped_normal", + "deviation": 3.0, + "max_inclusive": 10, + "mean": 0.0, + "min_inclusive": -10 + }, + "y_spread": { + "type": "minecraft:clamped_normal", + "deviation": 0.6, + "max_inclusive": 2, + "mean": 0.0, + "min_inclusive": -2 + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_pointed_dripstone_sparse.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_pointed_dripstone_sparse.json new file mode 100644 index 0000000..aa458fc --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_pointed_dripstone_sparse.json @@ -0,0 +1,56 @@ +{ + "feature": "portals:ore_pointed_dripstone", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:uniform", + "max_inclusive": 96, + "min_inclusive": 48 + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:count", + "count": { + "type": "minecraft:uniform", + "max_inclusive": 3, + "min_inclusive": 1 + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": { + "type": "minecraft:clamped_normal", + "deviation": 3.0, + "max_inclusive": 10, + "mean": 0.0, + "min_inclusive": -10 + }, + "y_spread": { + "type": "minecraft:clamped_normal", + "deviation": 0.6, + "max_inclusive": 2, + "mean": 0.0, + "min_inclusive": -2 + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_redstone_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_redstone_dense.json new file mode 100644 index 0000000..5310b27 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_redstone_dense.json @@ -0,0 +1,27 @@ +{ + "feature": "portals:ore_redstone_dense", + "placement": [ + { + "type": "minecraft:count", + "count": 14 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "above_bottom": 0 + }, + "max_inclusive": { + "below_top": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_spore_blossom_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_spore_blossom_dense.json new file mode 100644 index 0000000..94cf27b --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_spore_blossom_dense.json @@ -0,0 +1,44 @@ +{ + "feature": "minecraft:spore_blossom", + "placement": [ + { + "type": "minecraft:count", + "count": 36 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:environment_scan", + "allowed_search_condition": { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + }, + "direction_of_search": "up", + "max_steps": 32, + "target_condition": { + "type": "minecraft:solid" + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": 0, + "y_spread": -1 + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_spore_blossom_sparse.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_spore_blossom_sparse.json new file mode 100644 index 0000000..b8b9280 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_spore_blossom_sparse.json @@ -0,0 +1,44 @@ +{ + "feature": "minecraft:spore_blossom", + "placement": [ + { + "type": "minecraft:count", + "count": 6 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:environment_scan", + "allowed_search_condition": { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + }, + "direction_of_search": "up", + "max_steps": 32, + "target_condition": { + "type": "minecraft:solid" + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": 0, + "y_spread": -1 + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_tuff_dense.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_tuff_dense.json new file mode 100644 index 0000000..6a74e0f --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/ore_tuff_dense.json @@ -0,0 +1,27 @@ +{ + "feature": "portals:ore_tuff_dense", + "placement": [ + { + "type": "minecraft:count", + "count": 8 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "min_inclusive": { + "above_bottom": 0 + }, + "max_inclusive": { + "below_top": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/painted_white_oak.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/painted_white_oak.json new file mode 100644 index 0000000..cf5173f --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/painted_white_oak.json @@ -0,0 +1,51 @@ +{ + "feature": "minecraft:oak", + "placement": [ + { + "type": "minecraft:count", + "count": { + "type": "minecraft:weighted_list", + "distribution": [ + { + "data": 0, + "weight": 6 + }, + { + "data": 1, + "weight": 4 + }, + { + "data": 2, + "weight": 1 + } + ] + } + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:surface_water_depth_filter", + "max_water_depth": 0 + }, + { + "type": "minecraft:heightmap", + "heightmap": "OCEAN_FLOOR" + }, + { + "type": "minecraft:block_predicate_filter", + "predicate": { + "type": "minecraft:would_survive", + "state": { + "Name": "minecraft:oak_sapling", + "Properties": { + "stage": "0" + } + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/rare_cave_tree.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/rare_cave_tree.json new file mode 100644 index 0000000..75524ef --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/rare_cave_tree.json @@ -0,0 +1,65 @@ +{ + "feature": "portals:rare_cave_tree", + "placement": [ + { + "type": "minecraft:rarity_filter", + "chance": 32 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 118 + }, + "min_inclusive": { + "absolute": 8 + } + } + }, + { + "type": "minecraft:environment_scan", + "allowed_search_condition": { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + }, + "direction_of_search": "down", + "max_steps": 32, + "target_condition": { + "type": "minecraft:solid" + } + }, + { + "type": "minecraft:random_offset", + "xz_spread": 0, + "y_spread": 1 + }, + { + "type": "minecraft:block_predicate_filter", + "predicate": { + "type": "minecraft:all_of", + "predicates": [ + { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + }, + { + "type": "minecraft:matching_block_tag", + "offset": [ + 0, + -1, + 0 + ], + "tag": "portals:ore_cave_tree_grows_on" + } + ] + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/sheep_land_flower_mix.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/sheep_land_flower_mix.json new file mode 100644 index 0000000..db43e3e --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/sheep_land_flower_mix.json @@ -0,0 +1,45 @@ +{ + "feature": "portals:sheep_land_flower_mix", + "placement": [ + { + "type": "minecraft:count", + "count": 10 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "MOTION_BLOCKING" + }, + { + "type": "minecraft:biome" + }, + { + "type": "minecraft:count", + "count": 32 + }, + { + "type": "minecraft:random_offset", + "xz_spread": { + "type": "minecraft:trapezoid", + "max": 7, + "min": -7, + "plateau": 0 + }, + "y_spread": { + "type": "minecraft:trapezoid", + "max": 3, + "min": -3, + "plateau": 0 + } + }, + { + "type": "minecraft:block_predicate_filter", + "predicate": { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + } + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_basalt_spike.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_basalt_spike.json new file mode 100644 index 0000000..2ad3b89 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_basalt_spike.json @@ -0,0 +1,19 @@ +{ + "feature": "portals:skeleton_basalt_spike", + "placement": [ + { + "type": "minecraft:count", + "count": 1 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "OCEAN_FLOOR_WG" + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_clay_disk.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_clay_disk.json new file mode 100644 index 0000000..380d7ee --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_clay_disk.json @@ -0,0 +1,19 @@ +{ + "feature": "portals:skeleton_clay_disk", + "placement": [ + { + "type": "minecraft:count", + "count": 4 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "MOTION_BLOCKING_NO_LEAVES" + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_concrete_powder_disk.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_concrete_powder_disk.json new file mode 100644 index 0000000..24ca643 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_concrete_powder_disk.json @@ -0,0 +1,19 @@ +{ + "feature": "portals:skeleton_concrete_powder_disk", + "placement": [ + { + "type": "minecraft:count", + "count": 1 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "MOTION_BLOCKING_NO_LEAVES" + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_fossil.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_fossil.json new file mode 100644 index 0000000..8edca09 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_fossil.json @@ -0,0 +1,27 @@ +{ + "feature": "minecraft:fossil_coal", + "placement": [ + { + "type": "minecraft:rarity_filter", + "chance": 18 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "absolute": 92 + }, + "min_inclusive": { + "absolute": 32 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_gravel_disk.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_gravel_disk.json new file mode 100644 index 0000000..c22e374 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_gravel_disk.json @@ -0,0 +1,19 @@ +{ + "feature": "portals:skeleton_gravel_disk", + "placement": [ + { + "type": "minecraft:count", + "count": 4 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "MOTION_BLOCKING_NO_LEAVES" + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_lava_lake.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_lava_lake.json new file mode 100644 index 0000000..91979da --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_lava_lake.json @@ -0,0 +1,19 @@ +{ + "feature": "portals:skeleton_lava_lake", + "placement": [ + { + "type": "minecraft:rarity_filter", + "chance": 18 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "WORLD_SURFACE_WG" + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_ruin.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_ruin.json new file mode 100644 index 0000000..88d3f7a --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_ruin.json @@ -0,0 +1,19 @@ +{ + "feature": "portals:skeleton_ruin", + "placement": [ + { + "type": "minecraft:rarity_filter", + "chance": 220 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "MOTION_BLOCKING_NO_LEAVES" + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_yellow_water_lake.json b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_yellow_water_lake.json new file mode 100644 index 0000000..c8930a7 --- /dev/null +++ b/Worldgen/portals/src/main/resources/data/portals/worldgen/placed_feature/skeleton_yellow_water_lake.json @@ -0,0 +1,19 @@ +{ + "feature": "portals:skeleton_yellow_water_lake", + "placement": [ + { + "type": "minecraft:rarity_filter", + "chance": 96 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "WORLD_SURFACE_WG" + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/portals/src/main/resources/fabric.mod.json b/Worldgen/portals/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..a802b07 --- /dev/null +++ b/Worldgen/portals/src/main/resources/fabric.mod.json @@ -0,0 +1,28 @@ +{ + "schemaVersion": 1, + "id": "portals", + "version": "${version}", + "name": "Portals", + "description": "Ritual portals to strange in-world dimensions: ore-rich caverns, a second overworld, Sheep Land, the haunted Skeleton Waste, and Painted Canyons.", + "icon": "assets/portals/portals.png", + "authors": [ + "KOKA99CAB" + ], + "contact": {}, + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "net.koka99cab.portals.PortalsMod" + ] + }, + "mixins": [ + "portals.mixins.json" + ], + "depends": { + "fabricloader": ">=${loader_version}", + "minecraft": "~${minecraft_version}", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/Worldgen/portals/src/main/resources/portals.mixins.json b/Worldgen/portals/src/main/resources/portals.mixins.json new file mode 100644 index 0000000..6f15257 --- /dev/null +++ b/Worldgen/portals/src/main/resources/portals.mixins.json @@ -0,0 +1,11 @@ +{ + "required": true, + "package": "net.koka99cab.portals.mixin", + "compatibilityLevel": "JAVA_25", + "mixins": [ + "SheepColorMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/Worldgen/portals/worldgeneration.txt b/Worldgen/portals/worldgeneration.txt new file mode 100644 index 0000000..d1d263b --- /dev/null +++ b/Worldgen/portals/worldgeneration.txt @@ -0,0 +1,167 @@ +World generation +Biomes +A randomized biome in a randomly generated dimension. + +Randomly generated biomes can be found in the new dimensions. + + Biomes that are discovered by the player through the changed portals are added to the list of biomes when creating a buffet world, including _generated:id biomes. + A certain sound effect may periodically play without the presence of its normal source throughout a biome, often excessively. + This also applies to music as well, sometimes even at different pitches as well (e.g. biomes in the dimension aide). + Weather is disabled in some biomes. + The biomes have randomized mob spawning. + Mobs that do not naturally spawn in the non-random dimensions may appear, such as giants, withers, zombie horses and illusioners. + Many generated biomes do not spawn mobs. + Large quantities of structures and shulkers generating with end cities in a randomly generated dimension. + The generated biomes can have random structures or structures that naturally generate in other dimensions. + "Basalt Spikes", a random biome that bears resemblance to both the basalt deltas and ice spikes biomes in a randomly generated dimension. + A biome filled with structures that resemble trees in a randomly generated dimension. + Mobs that spawn with a structure may spawn in larger numbers than usual. There could be a high number of elder guardians spawning near an ocean monument or a high number of shulkers generating with an end city. + Often, a biome contains one particular structure in great abundance. + Sometimes, a dimension repeatedly generates letters, depends on the biome. It is highly probable that the shapes for these characters are from Minecraft's font textures. + Some random biomes may have some resemblance to a non-random biome. + A significant number of the random biomes have large quantities of lag inducing blocks like vines or decaying leaves or stacked seeds breaking all at once. These biomes have the very great potential of crashing the game or at least render it unplayable. + +End ships found in the "between" biome. +A deposit of observers found underground in the "busy" biome. +Floating prisms of cobblestone stairs found in the "shapes" biome. + +Three new pre-made biomes were added. + + Between + Works best with Floating Islands buffet world generation. + Generates a mesh of end ships. + Resource location is minecraft:between. + Biome for player with no time for nonsense + Works best with Overworld buffet world generation. + Generates what seems like a normal snowy taiga, although mineral blocks and redstone components generate instead of ores. + Resource location is minecraft:busy. + Shapes + Works best with Floating Islands or Overworld buffet world generation. + Generates a world consisting of different shapes made of one or more different types of blocks. + Resource location is minecraft:shapes. + +Dimensions +A randomly generated dimension made of floating islands. + +There are 2,147,483,645 new dimensions, which means 2,147,483,648 (231) possible dimensions per world seed, giving 295 dimension combinations in total, roughly 40 octillion.[4] + + Certain dimensions contain easter eggs (see below). + Certain dimensions (including easter egg dimensions) have the consistent world generation as in the Overworld within the same world seed. + +Various pre-existing and randomly generated biomes appear in the dimensions. +A snowy tundra found in a randomly generated dimension. + + Some dimensions may have only one biome, while others have several. + Even if a dimension has multiple biomes, a dimension can be dominated by a particular biome with all other biomes being exceptionally rare. + Biomes that are rare in the Overworld or Nether can be quite common in the new dimensions. + +The blocks that make up various features (e.g. ores, ice spikes, lakes) are randomly swapped. + +If a non-random biome appears in a random dimension, mobs expected for that biome generally spawn. + + Usually, aside from bats, mobs that do require a particular light level to spawn do not spawn regardless of light level. For instance, in the dimension jeb__, passive mobs and slimes spawn in the savanna biome, but no other mobs. + There are some exceptions to this. For example, hostile mobs spawn at low lights levels in the dimension interesting, along with a small percentage of other dimensions. + There are still slime chunks, and slimes spawn in certain biomes. + When they do spawn, they spawn below Y=40 as usual. + +The sky, blocks, menu, player, etc. are randomly tinted. + +The sky is from the Overworld, Nether or End. + + For Overworld skies, the sun and moon appears in random sizes and the day-night cycle has a random duration. + In a majority of the dimensions, the sky either cycles rapidly, making a full revolution in exactly five seconds, or it is completely frozen. It is rare for the sky to move at other speeds, but when it does move at other speeds, the cycle duration is randomized. + +An example of the unusual lighting in the random dimensions. White concrete was placed near the void in this randomly generated dimension. + +Some dimensions have sky light, meanwhile others do not have any, even if there is a sun and moon. + + In dimensions without a day and night cycle, the skylight can operate like sunlight and prevent mob spawning, but in other dimensions, it can operate like moonlight and mobs can spawn on the surface. + +The lighting in the dimensions can be unusual. + + Sometimes, the same face of every block in the dimension is completely dark (sometimes fully black). + In some dimensions, blocks are sometimes tinted or recolored in different ways, depending on the block type, block state, or the dimension. + In some dimensions, the lighting in the dimensions is similar to the Overworld. + There are seven easter egg dimensions that use the exact same lighting system as the Overworld (not including Overworld-based easter egg dimensions). These are checkerboard, gallery (which uses the lighting system during the nighttime), origin, patterns, perfection, skygrid, and spiral. + +Unusual blue lighting with random particle effect in a randomly generated dimension. A random particle effect fills some biomes. + + The particle effects appearing in each biome depends on the dimension. In some cases, Overworld biomes can get a particle effect. + In some biomes in the generated dimensions, randomly generated particles can cause lag depends on the operational system. + +The style of generation can be: + + Overworld-style generation with hills and valleys. + Caves generally do not generate. Lava and water lakes may still generate when there are no other caves. + The size of the hills and valleys depends on the biome, much like in buffet generation. + There is bedrock at the bottom with generation identical to the Overworld. + There may occasionally be holes in the bedrock in some of the dimensions. + Example of holes in bedrock in a randomly generated dimension. + A subtype of the Overworld generation is generation that is superflat, but with some differences. + Superflat style generation in a randomly generated dimension. + Caves may still generate. + There can be various layers of a single type blocks. These layers have various thicknesses. + In certain dimensions, the layers are not perfectly flat with minor hills and valleys. + Bedrock near y=0 is not in a flat layer and instead generates in the same way as the Overworld's bedrock. + This type of generation is quite rare. + The superflat style generation appears to be a result of water based biomes having blocks swapped. The surface of the superflat biomes is identical to y level of the surface of the ocean. + Nether-style generation, with a bedrock ceiling at Y-level 128 and the cave generation that is seen in the Nether. + Objects may generate above the bedrock ceiling. + End-style generation, with no bedrock and floating islands. + End type generation in a randomly generated dimension. + +Beds and charged respawn anchors explode in the generated dimensions. +A mineshaft carving through dried kelp in a randomly generated dimension. + + However, beds do not explode in some dimensions, where the beds can be slept in at any time of the day. They set the spawn point much like in the Overworld, but when the beds are slept in, the time is not set to the morning. + Floating multicolored fossils in a randomly generated dimension. + The following dimensions where beds do not explode in the generated dimensions (all but "content" are easter egg dimensions that are based on the Overworld world generation, of a total of 16 dimensions): + "blacklight" + "busy" + "chess" + "colors" + "content" + "darkness" + "decay" + "holes" + "pillars" + "rooms" + "slime" + "wall" + "zones" + Colored dimensions (including "red", "green" and "blue") + +The ID for each dimension is determined from the SHA256 hash of the name of the dimension with the string :why_so_salty#LazyCrypto appended to it. +The dimension generated by the ID "redstone". + +In end ships in the new dimensions, chests are generated with fleet_orders loot table. +The dimension generated by the ID "overworld". + +In some dimensions, compasses point toward the center of the world. In others, the needle spins in random directions like in the Nether and the End. + +Liquids behave differently in different dimensions. In some, the liquids act like they are in the Overworld, and in the rest, they act like they are in the Nether. + +Undead mobs do not burn and piglins do not zombify in the random dimensions, even during the day. + +End portals can be constructed. When entered, the player is teleported to the end, but at the coordinates at which they entered the portal on a newly generated obsidian platform. + +Maps can function correctly as they do in Overworld, but usually a map just shows gray and orange static, much like in the Nether. + + Unlike the Nether, the player indicator accurately displays the player's orientation. + +Clouds can appear in some dimensions in a layer at some random Y level. + +There is weather. + + The current weather is identical in all dimensions. If it is raining in one random dimension, it is raining in all random dimensions and the Overworld, though it does not rain in certain biomes as mentioned above. + +Dimensions solely consisting of the biome the_end with obsidian pillars at the center of the map are quite common. +This dimension is an example of an 'endless end' dimension. The image was intentionally brightened due to this dimension having dark lighting. + + When using /debugdim in this type of dimensions, no biomes are listed. + +The music is identical to the Overworld's. + +Some dimensions may have fog that makes it difficult to see far distances. + +The lighting system between buffet worlds and unique dimensions is different. In the Overworld there can be darkness, while in the easter egg generated dimension there can not be (i.e. "fleet" (minecraft:between) and "shapes" (minecraft:shapes)). \ No newline at end of file diff --git a/Worldgen/sanctuary/.gitignore b/Worldgen/sanctuary/.gitignore new file mode 100644 index 0000000..1acf51e --- /dev/null +++ b/Worldgen/sanctuary/.gitignore @@ -0,0 +1,37 @@ +# Gradle +.gradle/ +build/ +out/ +classes/ + +# Eclipse +*.launch + +# IntelliJ IDEA +.idea/ +*.iml +*.ipr +*.iws + +# VS Code +.settings/ +.vscode/ +bin/ +.classpath +.project + +# macOS +*.DS_Store + +# Fabric +run/ + +# Java +.jdk/ +hs_err_*.log +replay_*.log +*.hprof +*.jfr + +# Local source assets +/sanctuary.png diff --git a/Worldgen/sanctuary/build.gradle b/Worldgen/sanctuary/build.gradle new file mode 100644 index 0000000..13b5edb --- /dev/null +++ b/Worldgen/sanctuary/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "net.fabricmc.fabric-loom" version "${loom_version}" + id "maven-publish" +} + +version = project.mod_version +group = project.maven_group + +repositories { +} + +loom { + splitEnvironmentSourceSets() + + mods { + "sanctuary" { + sourceSet sourceSets.main + sourceSet sourceSets.client + } + } +} + +dependencies { + minecraft "com.mojang:minecraft:${project.minecraft_version}" + implementation "net.fabricmc:fabric-loader:${project.loader_version}" + implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" +} + +processResources { + def version = project.version + inputs.property "version", version + + filesMatching("fabric.mod.json") { + expand "version": version + } +} + +tasks.withType(JavaCompile).configureEach { + it.options.release = 25 +} + +java { + withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_25 + targetCompatibility = JavaVersion.VERSION_25 +} + +jar { + def projectName = project.name + inputs.property "projectName", projectName + + from("../../license.txt") { + rename { "${it}_${projectName}" } + } +} + +publishing { + publications { + create("mavenJava", MavenPublication) { + from components.java + } + } + + repositories { + } +} diff --git a/Worldgen/sanctuary/gradle.properties b/Worldgen/sanctuary/gradle.properties new file mode 100644 index 0000000..6059a36 --- /dev/null +++ b/Worldgen/sanctuary/gradle.properties @@ -0,0 +1,21 @@ +# Done to increase the memory available to Gradle. +org.gradle.jvmargs=-Xmx1G +org.gradle.parallel=true + +# IntelliJ IDEA is not yet fully compatible with configuration cache: +# https://github.com/FabricMC/fabric-loom/issues/1349 +org.gradle.configuration-cache=false + +# Fabric properties +# Check current versions on https://fabricmc.net/develop +minecraft_version=26.1.2 +loader_version=0.19.2 +loom_version=1.16-SNAPSHOT + +# Mod properties +mod_version=1.0.0 +maven_group=fr.koka99cab +archives_base_name=sanctuary + +# Dependencies +fabric_api_version=0.148.0+26.1.2 diff --git a/Worldgen/sanctuary/gradle/wrapper/gradle-wrapper.jar b/Worldgen/sanctuary/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc Binary files /dev/null and b/Worldgen/sanctuary/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Worldgen/sanctuary/gradle/wrapper/gradle-wrapper.properties b/Worldgen/sanctuary/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..c61a118 --- /dev/null +++ b/Worldgen/sanctuary/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/Worldgen/sanctuary/gradlew b/Worldgen/sanctuary/gradlew new file mode 100755 index 0000000..47792a5 --- /dev/null +++ b/Worldgen/sanctuary/gradlew @@ -0,0 +1,253 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +if [ -z "$JAVA_HOME" ] && [ -x "$APP_HOME/.jdk/current/bin/java" ] ; then + JAVA_HOME=$APP_HOME/.jdk/current + export JAVA_HOME +fi + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Worldgen/sanctuary/gradlew.bat b/Worldgen/sanctuary/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/Worldgen/sanctuary/gradlew.bat @@ -0,0 +1,93 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Worldgen/sanctuary/island_spawn_density.png b/Worldgen/sanctuary/island_spawn_density.png new file mode 100644 index 0000000..2625dbf Binary files /dev/null and b/Worldgen/sanctuary/island_spawn_density.png differ diff --git a/Worldgen/sanctuary/settings.gradle b/Worldgen/sanctuary/settings.gradle new file mode 100644 index 0000000..007b219 --- /dev/null +++ b/Worldgen/sanctuary/settings.gradle @@ -0,0 +1,12 @@ +pluginManagement { + repositories { + maven { + name = "Fabric" + url = "https://maven.fabricmc.net/" + } + mavenCentral() + gradlePluginPortal() + } +} + +rootProject.name = "sanctuary" diff --git a/Worldgen/sanctuary/src/client/java/fr/koka99cab/sanctuary/client/SanctuaryClient.java b/Worldgen/sanctuary/src/client/java/fr/koka99cab/sanctuary/client/SanctuaryClient.java new file mode 100644 index 0000000..d294ff7 --- /dev/null +++ b/Worldgen/sanctuary/src/client/java/fr/koka99cab/sanctuary/client/SanctuaryClient.java @@ -0,0 +1,11 @@ +package fr.koka99cab.sanctuary.client; + +import net.fabricmc.api.ClientModInitializer; +import fr.koka99cab.sanctuary.SanctuaryMod; + +public class SanctuaryClient implements ClientModInitializer { + @Override + public void onInitializeClient() { + SanctuaryMod.LOGGER.info("Sanctuary client initialise."); + } +} diff --git a/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/SanctuaryMod.java b/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/SanctuaryMod.java new file mode 100644 index 0000000..3769b10 --- /dev/null +++ b/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/SanctuaryMod.java @@ -0,0 +1,21 @@ +package fr.koka99cab.sanctuary; + +import fr.koka99cab.sanctuary.world.SanctuarySpawn; +import fr.koka99cab.sanctuary.worldgen.SanctuaryDensityFunctions; +import fr.koka99cab.sanctuary.worldgen.SanctuaryFeatures; +import net.fabricmc.api.ModInitializer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class SanctuaryMod implements ModInitializer { + public static final String MOD_ID = "sanctuary"; + public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID); + + @Override + public void onInitialize() { + SanctuaryDensityFunctions.register(); + SanctuaryFeatures.register(); + SanctuarySpawn.register(); + LOGGER.info("Sanctuary charge pour Minecraft 26.1.2."); + } +} diff --git a/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/world/SanctuarySpawn.java b/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/world/SanctuarySpawn.java new file mode 100644 index 0000000..edcc9e0 --- /dev/null +++ b/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/world/SanctuarySpawn.java @@ -0,0 +1,44 @@ +package fr.koka99cab.sanctuary.world; + +import fr.koka99cab.sanctuary.SanctuaryMod; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerLevelEvents; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerLifecycleEvents; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.chunk.ChunkGenerator; +import net.minecraft.world.level.levelgen.NoiseBasedChunkGenerator; +import net.minecraft.world.level.levelgen.NoiseGeneratorSettings; +import net.minecraft.world.level.storage.LevelData; + +public final class SanctuarySpawn { + private static final ResourceKey SANCTUARY_NOISE_SETTINGS = ResourceKey.create( + Registries.NOISE_SETTINGS, + Identifier.fromNamespaceAndPath(SanctuaryMod.MOD_ID, "sanctuary") + ); + private static final BlockPos SPAWN_POS = new BlockPos(0, 122, -20); + + private SanctuarySpawn() { + } + + public static void register() { + ServerLevelEvents.LOAD.register(SanctuarySpawn::setSpawnIfSanctuaryWorld); + ServerLifecycleEvents.SERVER_STARTED.register(server -> setSpawnIfSanctuaryWorld(server, server.overworld())); + } + + private static void setSpawnIfSanctuaryWorld(MinecraftServer server, ServerLevel world) { + if (isSanctuaryWorld(world)) { + server.setRespawnData(LevelData.RespawnData.of(Level.OVERWORLD, SPAWN_POS, 0.0F, 0.0F)); + } + } + + private static boolean isSanctuaryWorld(ServerLevel world) { + ChunkGenerator generator = world.getChunkSource().getGenerator(); + return generator instanceof NoiseBasedChunkGenerator noiseGenerator + && noiseGenerator.generatorSettings().is(SANCTUARY_NOISE_SETTINGS); + } +} diff --git a/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/SanctuaryDensityFunctions.java b/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/SanctuaryDensityFunctions.java new file mode 100644 index 0000000..cbe52f3 --- /dev/null +++ b/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/SanctuaryDensityFunctions.java @@ -0,0 +1,232 @@ +package fr.koka99cab.sanctuary.worldgen; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.MapCodec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import fr.koka99cab.sanctuary.SanctuaryMod; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.resources.Identifier; +import net.minecraft.util.KeyDispatchDataCodec; +import net.minecraft.world.level.levelgen.DensityFunction; + +public final class SanctuaryDensityFunctions { + private SanctuaryDensityFunctions() { + } + + public static void register() { + Registry.register( + BuiltInRegistries.DENSITY_FUNCTION_TYPE, + Identifier.fromNamespaceAndPath(SanctuaryMod.MOD_ID, "radial_void_mask"), + RadialVoidMask.DATA_CODEC + ); + Registry.register( + BuiltInRegistries.DENSITY_FUNCTION_TYPE, + Identifier.fromNamespaceAndPath(SanctuaryMod.MOD_ID, "island_spawn_density"), + IslandSpawnDensity.DATA_CODEC + ); + } + + public record RadialVoidMask( + int voidRadius, + int transitionRadius, + double insideValue, + double outsideValue + ) implements DensityFunction.SimpleFunction { + public static final MapCodec DATA_CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + Codec.INT.fieldOf("void_radius").forGetter(RadialVoidMask::voidRadius), + Codec.INT.fieldOf("transition_radius").forGetter(RadialVoidMask::transitionRadius), + Codec.DOUBLE.fieldOf("inside_value").forGetter(RadialVoidMask::insideValue), + Codec.DOUBLE.fieldOf("outside_value").forGetter(RadialVoidMask::outsideValue) + ).apply(instance, RadialVoidMask::new)); + private static final KeyDispatchDataCodec CODEC = KeyDispatchDataCodec.of(DATA_CODEC); + + @Override + public double compute(FunctionContext context) { + double x = context.blockX(); + double z = context.blockZ(); + double rawDistance = Math.sqrt(x * x + z * z); + double transitionWidth = Math.max(1.0, transitionRadius - voidRadius); + double boundaryInfluence = smoothStep(clampValue((rawDistance - voidRadius + transitionWidth * 2.0) / (transitionWidth * 3.0), 0.0, 1.0)) + * (1.0 - smoothStep(clampValue((rawDistance - transitionRadius - transitionWidth * 2.0) / (transitionWidth * 3.0), 0.0, 1.0))); + double distortion = ( + 0.95 * smoothNoise2d(x * 0.009 + 37.0, z * 0.009 - 91.0) + + 0.35 * smoothNoise2d(x * 0.027 - 19.0, z * 0.027 + 13.0) + ) * transitionWidth * 0.90 * boundaryInfluence; + double distance = rawDistance + distortion; + + if (distance <= voidRadius) { + return insideValue; + } + if (distance >= transitionRadius) { + return outsideValue; + } + + double t = (distance - voidRadius) / Math.max(1.0, transitionRadius - voidRadius); + double smoothT = t * t * (3.0 - 2.0 * t); + return insideValue + (outsideValue - insideValue) * smoothT; + } + + @Override + public double minValue() { + return Math.min(insideValue, outsideValue); + } + + @Override + public double maxValue() { + return Math.max(insideValue, outsideValue); + } + + @Override + public KeyDispatchDataCodec codec() { + return CODEC; + } + } + + public record IslandSpawnDensity( + int radius, + int surfaceY, + int verticalRadius, + double centerValue, + double peakValue, + double outsideValue + ) implements DensityFunction.SimpleFunction { + public static final MapCodec DATA_CODEC = RecordCodecBuilder.mapCodec(instance -> instance.group( + Codec.INT.fieldOf("radius").forGetter(IslandSpawnDensity::radius), + Codec.INT.fieldOf("surface_y").forGetter(IslandSpawnDensity::surfaceY), + Codec.INT.fieldOf("vertical_radius").forGetter(IslandSpawnDensity::verticalRadius), + Codec.DOUBLE.fieldOf("center_value").forGetter(IslandSpawnDensity::centerValue), + Codec.DOUBLE.fieldOf("peak_value").forGetter(IslandSpawnDensity::peakValue), + Codec.DOUBLE.fieldOf("outside_value").forGetter(IslandSpawnDensity::outsideValue) + ).apply(instance, IslandSpawnDensity::new)); + private static final KeyDispatchDataCodec CODEC = KeyDispatchDataCodec.of(DATA_CODEC); + + @Override + public double compute(FunctionContext context) { + double x = context.blockX(); + double y = context.blockY(); + double z = context.blockZ(); + double distance = Math.sqrt(x * x + z * z); + double broadWarp = 0.23 * smoothNoise2d(x * 0.010 + 11.0, z * 0.010 - 23.0) + + 0.10 * smoothNoise2d(x * 0.026 - 47.0, z * 0.026 + 29.0); + double localWarp = 0.035 * smoothNoise2d(x * 0.055 + 71.0, z * 0.055 - 17.0); + double warpedDistance = distance / Math.max(0.55, 1.0 + broadWarp); + double t = Math.min(1.0, warpedDistance / Math.max(1.0, radius) + localWarp); + double horizontalStrength = curveStrength(t); + double mainRadius = radius * (0.095 + 0.024 * broadWarp); + double mainSoftness = radius * (0.058 + 0.018 * clampValue(broadWarp + 0.5, 0.0, 1.0)); + double centerAnchor = 1.0 - smoothStep(clampValue((distance - mainRadius) / mainSoftness, 0.0, 1.0)); + + double layerShift = 30.0 * smoothNoise2d(x * 0.011 - 31.0, z * 0.011 + 43.0) + + 13.0 * smoothNoise2d(x * 0.033 + 9.0, z * 0.033 - 67.0); + double localVerticalRadius = verticalRadius * ( + 1.0 + 0.30 * smoothNoise2d(x * 0.009 + 101.0, z * 0.009 - 11.0) + + 0.12 * smoothNoise3d(x * 0.018 - 13.0, y * 0.024 + 47.0, z * 0.018 + 29.0) + ); + double verticalT = Math.min(1.0, Math.abs(y - surfaceY - layerShift) / Math.max(1.0, localVerticalRadius)); + double broadVerticalEnvelope = 1.0 - smoothStep(clampValue((verticalT - 0.10) / 0.88, 0.0, 1.0)); + double lobeNoise = 0.68 * smoothNoise3d(x * 0.014 + 5.0, y * 0.030 - 31.0, z * 0.014 + 17.0) + + 0.42 * smoothNoise3d(x * 0.036 - 61.0, y * 0.062 + 11.0, z * 0.036 - 23.0) + + 0.22 * smoothNoise3d(x * 0.070 + 83.0, y * 0.095 - 7.0, z * 0.070 + 41.0); + double verticalStrength = clampValue(broadVerticalEnvelope * (0.50 + 0.56 * lobeNoise), 0.0, 1.0); + double coreVerticalAnchor = 1.0 - smoothStep(clampValue((verticalT - 0.02) / 0.58, 0.0, 1.0)); + double coreTexture = clampValue( + 0.76 + + 0.24 * smoothNoise3d(x * 0.018 + 113.0, y * 0.022 - 71.0, z * 0.018 - 37.0) + + 0.16 * smoothNoise3d(x * 0.044 - 17.0, y * 0.052 + 89.0, z * 0.044 + 101.0), + 0.42, + 1.10 + ); + double centralMass = centerAnchor * coreVerticalAnchor * coreTexture; + + double strength = Math.max(centralMass, horizontalStrength * verticalStrength); + double value = lerp(outsideValue, peakValue, strength); + value = lerp(value, centerValue, centerAnchor * coreVerticalAnchor); + + return clampValue(value, minValue(), maxValue()); + } + + @Override + public double minValue() { + return Math.min(centerValue, Math.min(peakValue, outsideValue)); + } + + @Override + public double maxValue() { + return Math.max(centerValue, Math.max(peakValue, outsideValue)); + } + + @Override + public KeyDispatchDataCodec codec() { + return CODEC; + } + } + + private static double curveStrength(double t) { + double brightness = sampleSpawnDensityReference(t); + double invertedReference = clampValue((0.56 - brightness) / 0.56, 0.0, 1.0); + double outerFade = 1.0 - smoothStep(clampValue((t - 0.78) / 0.22, 0.0, 1.0)); + return invertedReference * outerFade; + } + + private static double sampleSpawnDensityReference(double t) { + double[] positions = {0.00, 0.03, 0.12, 0.25, 0.38, 0.50, 0.63, 0.75, 0.88, 1.00}; + double[] values = {0.08, 0.09, 0.16, 0.33, 0.53, 0.55, 0.43, 0.30, 0.18, 0.00}; + + for (int i = 1; i < positions.length; i++) { + if (t <= positions[i]) { + double local = (t - positions[i - 1]) / (positions[i] - positions[i - 1]); + return lerp(values[i - 1], values[i], smoothStep(clampValue(local, 0.0, 1.0))); + } + } + + return values[values.length - 1]; + } + + private static double clampValue(double value, double min, double max) { + return Math.max(min, Math.min(max, value)); + } + + private static double lerp(double first, double second, double delta) { + return first + (second - first) * delta; + } + + private static double smoothStep(double value) { + return value * value * (3.0 - 2.0 * value); + } + + private static double smoothNoise2d(double x, double z) { + return smoothNoise3d(x, 0.0, z); + } + + private static double smoothNoise3d(double x, double y, double z) { + int floorX = (int) Math.floor(x); + int floorY = (int) Math.floor(y); + int floorZ = (int) Math.floor(z); + double localX = x - floorX; + double localY = y - floorY; + double localZ = z - floorZ; + double fadeX = smoothStep(localX); + double fadeY = smoothStep(localY); + double fadeZ = smoothStep(localZ); + + double x00 = lerp(hashToNoise(floorX, floorY, floorZ), hashToNoise(floorX + 1, floorY, floorZ), fadeX); + double x10 = lerp(hashToNoise(floorX, floorY + 1, floorZ), hashToNoise(floorX + 1, floorY + 1, floorZ), fadeX); + double x01 = lerp(hashToNoise(floorX, floorY, floorZ + 1), hashToNoise(floorX + 1, floorY, floorZ + 1), fadeX); + double x11 = lerp(hashToNoise(floorX, floorY + 1, floorZ + 1), hashToNoise(floorX + 1, floorY + 1, floorZ + 1), fadeX); + double y0 = lerp(x00, x10, fadeY); + double y1 = lerp(x01, x11, fadeY); + return lerp(y0, y1, fadeZ); + } + + private static double hashToNoise(int x, int y, int z) { + long value = 0x9E3779B97F4A7C15L; + value ^= (long) x * 0xBF58476D1CE4E5B9L; + value ^= (long) y * 0x94D049BB133111EBL; + value ^= (long) z * 0xD6E8FEB86659FD93L; + value = (value ^ (value >>> 30)) * 0xBF58476D1CE4E5B9L; + value = (value ^ (value >>> 27)) * 0x94D049BB133111EBL; + value = value ^ (value >>> 31); + return ((value >>> 11) * 0x1.0p-52) - 1.0; + } +} diff --git a/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/SanctuaryFeatures.java b/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/SanctuaryFeatures.java new file mode 100644 index 0000000..f41ab07 --- /dev/null +++ b/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/SanctuaryFeatures.java @@ -0,0 +1,62 @@ +package fr.koka99cab.sanctuary.worldgen; + +import fr.koka99cab.sanctuary.SanctuaryMod; +import fr.koka99cab.sanctuary.worldgen.feature.MatterDepthMaterializationFeature; +import fr.koka99cab.sanctuary.worldgen.feature.SanctuaryWaterLakeFeature; +import net.fabricmc.fabric.api.biome.v1.BiomeModifications; +import net.fabricmc.fabric.api.biome.v1.BiomeSelectors; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.level.levelgen.GenerationStep; +import net.minecraft.world.level.levelgen.feature.Feature; +import net.minecraft.world.level.levelgen.feature.LakeFeature; +import net.minecraft.world.level.levelgen.feature.configurations.NoneFeatureConfiguration; +import net.minecraft.world.level.levelgen.placement.PlacedFeature; + +public final class SanctuaryFeatures { + public static final Identifier MATTER_DEPTH_MATERIALIZATION_ID = + Identifier.fromNamespaceAndPath(SanctuaryMod.MOD_ID, "matter_depth_materialization"); + public static final ResourceKey MATTER_DEPTH_MATERIALIZATION_PLACED_FEATURE = + ResourceKey.create(Registries.PLACED_FEATURE, MATTER_DEPTH_MATERIALIZATION_ID); + public static final Feature MATTER_DEPTH_MATERIALIZATION = + new MatterDepthMaterializationFeature(NoneFeatureConfiguration.CODEC); + public static final Identifier WATER_LAKE_ID = + Identifier.fromNamespaceAndPath(SanctuaryMod.MOD_ID, "water_lake"); + public static final ResourceKey WATER_LAKE_UNDERGROUND_PLACED_FEATURE = + ResourceKey.create(Registries.PLACED_FEATURE, Identifier.fromNamespaceAndPath(SanctuaryMod.MOD_ID, "water_lake_underground")); + public static final ResourceKey WATER_LAKE_SURFACE_PLACED_FEATURE = + ResourceKey.create(Registries.PLACED_FEATURE, Identifier.fromNamespaceAndPath(SanctuaryMod.MOD_ID, "water_lake_surface")); + public static final Feature WATER_LAKE = + new SanctuaryWaterLakeFeature(LakeFeature.Configuration.CODEC); + + private SanctuaryFeatures() { + } + + public static void register() { + Registry.register( + BuiltInRegistries.FEATURE, + MATTER_DEPTH_MATERIALIZATION_ID, + MATTER_DEPTH_MATERIALIZATION + ); + Registry.register( + BuiltInRegistries.FEATURE, + WATER_LAKE_ID, + WATER_LAKE + ); + + addOverworldFeatureIfMissing(GenerationStep.Decoration.LAKES, WATER_LAKE_UNDERGROUND_PLACED_FEATURE); + addOverworldFeatureIfMissing(GenerationStep.Decoration.LAKES, WATER_LAKE_SURFACE_PLACED_FEATURE); + addOverworldFeatureIfMissing(GenerationStep.Decoration.UNDERGROUND_ORES, MATTER_DEPTH_MATERIALIZATION_PLACED_FEATURE); + } + + private static void addOverworldFeatureIfMissing(GenerationStep.Decoration step, ResourceKey feature) { + BiomeModifications.addFeature( + BiomeSelectors.foundInOverworld().and(context -> !context.hasPlacedFeature(feature)), + step, + feature + ); + } +} diff --git a/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/feature/MatterDepthMaterializationFeature.java b/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/feature/MatterDepthMaterializationFeature.java new file mode 100644 index 0000000..7009a9c --- /dev/null +++ b/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/feature/MatterDepthMaterializationFeature.java @@ -0,0 +1,217 @@ +package fr.koka99cab.sanctuary.worldgen.feature; + +import com.mojang.serialization.Codec; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.WorldGenLevel; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.feature.Feature; +import net.minecraft.world.level.levelgen.feature.FeaturePlaceContext; +import net.minecraft.world.level.levelgen.feature.configurations.NoneFeatureConfiguration; + +public class MatterDepthMaterializationFeature extends Feature { + private static final int MIN_Y = 0; + private static final int MAX_Y = 255; + private static final int HEIGHT = MAX_Y - MIN_Y + 1; + private static final int CHUNK_WIDTH = 16; + private static final int CHUNK_AREA = CHUNK_WIDTH * CHUNK_WIDTH; + private static final int CHUNK_VOLUME = CHUNK_AREA * HEIGHT; + private static final int MAX_MATTER_DEPTH = 18; + + public MatterDepthMaterializationFeature(Codec codec) { + super(codec); + } + + @Override + public boolean place(FeaturePlaceContext context) { + if (!SanctuaryWorldgenChecks.isSanctuaryGenerator(context)) { + return false; + } + + WorldGenLevel level = context.level(); + BlockPos origin = context.origin(); + int chunkStartX = origin.getX() & ~15; + int chunkStartZ = origin.getZ() & ~15; + BlockPos.MutableBlockPos mutable = new BlockPos.MutableBlockPos(0, 0, 0); + BlockState[] states = new BlockState[CHUNK_VOLUME]; + int[] matterDepths = new int[CHUNK_VOLUME]; + boolean changed = false; + + for (int localX = 0; localX < 16; localX++) { + int x = chunkStartX + localX; + for (int localZ = 0; localZ < 16; localZ++) { + int z = chunkStartZ + localZ; + for (int y = MIN_Y; y <= MAX_Y; y++) { + mutable.set(x, y, z); + int index = index(localX, y - MIN_Y, localZ); + BlockState state = level.getBlockState(mutable); + states[index] = state; + matterDepths[index] = state.isAir() ? 0 : MAX_MATTER_DEPTH; + } + } + } + + computeMatterDepths(matterDepths); + + for (int localX = 0; localX < 16; localX++) { + int x = chunkStartX + localX; + for (int localZ = 0; localZ < 16; localZ++) { + int z = chunkStartZ + localZ; + for (int y = MIN_Y; y <= MAX_Y; y++) { + int index = index(localX, y - MIN_Y, localZ); + BlockState current = states[index]; + if (current.getBlock() != Blocks.STONE) { + continue; + } + + BlockState replacement = replacementFor(x, y, z, matterDepths[index]); + if (replacement != null && replacement.getBlock() != current.getBlock()) { + mutable.set(x, y, z); + level.setBlock(mutable, replacement, Block.UPDATE_CLIENTS); + changed = true; + } + } + } + } + + return changed; + } + + private static void computeMatterDepths(int[] matterDepths) { + for (int y = 0; y < HEIGHT; y++) { + for (int z = 0; z < CHUNK_WIDTH; z++) { + for (int x = 0; x < CHUNK_WIDTH; x++) { + int index = index(x, y, z); + if (matterDepths[index] == 0) { + continue; + } + int depth = matterDepths[index]; + if (x == 0 || z == 0 || y == 0) { + depth = 1; + } else { + depth = Math.min(depth, matterDepths[index(x - 1, y, z)] + 1); + depth = Math.min(depth, matterDepths[index(x, y, z - 1)] + 1); + depth = Math.min(depth, matterDepths[index(x, y - 1, z)] + 1); + } + matterDepths[index] = Math.min(depth, MAX_MATTER_DEPTH); + } + } + } + + for (int y = HEIGHT - 1; y >= 0; y--) { + for (int z = CHUNK_WIDTH - 1; z >= 0; z--) { + for (int x = CHUNK_WIDTH - 1; x >= 0; x--) { + int index = index(x, y, z); + if (matterDepths[index] == 0) { + continue; + } + int depth = matterDepths[index]; + if (x == CHUNK_WIDTH - 1 || z == CHUNK_WIDTH - 1 || y == HEIGHT - 1) { + depth = Math.min(depth, 1); + } else { + depth = Math.min(depth, matterDepths[index(x + 1, y, z)] + 1); + depth = Math.min(depth, matterDepths[index(x, y, z + 1)] + 1); + depth = Math.min(depth, matterDepths[index(x, y + 1, z)] + 1); + } + matterDepths[index] = Math.min(depth, MAX_MATTER_DEPTH); + } + } + } + } + + private static int index(int x, int y, int z) { + return (y * CHUNK_WIDTH + z) * CHUNK_WIDTH + x; + } + + private static BlockState replacementFor(int x, int y, int z, int matterDepth) { + if (matterDepth <= 4) { + return null; + } + + double compressionNoise = smoothNoise3d(x * 0.070 + 9.0, y * 0.045 - 13.0, z * 0.070 + 31.0); + double seamNoise = smoothNoise3d(x * 0.145 - 41.0, y * 0.115 + 3.0, z * 0.145 + 17.0); + double pressureDepth = matterDepth + compressionNoise * 4.2 + seamNoise * 1.8; + + if (pressureDepth >= 8.8 && isDiamondPocket(x, y, z, pressureDepth)) { + return Blocks.DEEPSLATE_DIAMOND_ORE.defaultBlockState(); + } + if (pressureDepth >= 9.8) { + if (seamNoise < -0.74 && hash01(x, y, z, 19) < 0.24) { + return Blocks.TUFF.defaultBlockState(); + } + return Blocks.DEEPSLATE.defaultBlockState(); + } + if (pressureDepth >= 6.6) { + if (compressionNoise + seamNoise * 0.45 > -0.12) { + return Blocks.DEEPSLATE.defaultBlockState(); + } + if (seamNoise > -0.58) { + return Blocks.TUFF.defaultBlockState(); + } + return null; + } + if (pressureDepth >= 4.8 && seamNoise > 0.18) { + return Blocks.TUFF.defaultBlockState(); + } + + return null; + } + + private static boolean isDiamondPocket(int x, int y, int z, double pressureDepth) { + double pressure = clamp((pressureDepth - 8.8) / 5.4, 0.0, 1.0); + double oreNoise = smoothNoise3d(x * 0.118 + 71.0, y * 0.126 - 23.0, z * 0.118 + 5.0) + + 0.38 * smoothNoise3d(x * 0.255 - 11.0, y * 0.210 + 37.0, z * 0.255 - 29.0); + double threshold = 0.48 - pressure * 0.08; + double thinning = 0.160 + pressure * 0.065; + return oreNoise > threshold && hash01(x, y, z, 73) < thinning; + } + + private static double smoothNoise3d(double x, double y, double z) { + int floorX = (int) Math.floor(x); + int floorY = (int) Math.floor(y); + int floorZ = (int) Math.floor(z); + double localX = x - floorX; + double localY = y - floorY; + double localZ = z - floorZ; + double fadeX = smoothStep(localX); + double fadeY = smoothStep(localY); + double fadeZ = smoothStep(localZ); + + double x00 = lerp(hashToNoise(floorX, floorY, floorZ), hashToNoise(floorX + 1, floorY, floorZ), fadeX); + double x10 = lerp(hashToNoise(floorX, floorY + 1, floorZ), hashToNoise(floorX + 1, floorY + 1, floorZ), fadeX); + double x01 = lerp(hashToNoise(floorX, floorY, floorZ + 1), hashToNoise(floorX + 1, floorY, floorZ + 1), fadeX); + double x11 = lerp(hashToNoise(floorX, floorY + 1, floorZ + 1), hashToNoise(floorX + 1, floorY + 1, floorZ + 1), fadeX); + double y0 = lerp(x00, x10, fadeY); + double y1 = lerp(x01, x11, fadeY); + return lerp(y0, y1, fadeZ); + } + + private static double smoothStep(double value) { + return value * value * (3.0 - 2.0 * value); + } + + private static double lerp(double first, double second, double delta) { + return first + (second - first) * delta; + } + + private static double hashToNoise(int x, int y, int z) { + return hash01(x, y, z, 0) * 2.0 - 1.0; + } + + private static double hash01(int x, int y, int z, int salt) { + long value = 0x9E3779B97F4A7C15L; + value ^= (long) x * 0xBF58476D1CE4E5B9L; + value ^= (long) y * 0x94D049BB133111EBL; + value ^= (long) z * 0xD6E8FEB86659FD93L; + value ^= (long) salt * 0x9E3779B185EBCA87L; + value = (value ^ (value >>> 30)) * 0xBF58476D1CE4E5B9L; + value = (value ^ (value >>> 27)) * 0x94D049BB133111EBL; + value = value ^ (value >>> 31); + return (value >>> 11) * 0x1.0p-53; + } + + private static double clamp(double value, double min, double max) { + return Math.max(min, Math.min(max, value)); + } +} diff --git a/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/feature/SanctuaryWaterLakeFeature.java b/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/feature/SanctuaryWaterLakeFeature.java new file mode 100644 index 0000000..780cffc --- /dev/null +++ b/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/feature/SanctuaryWaterLakeFeature.java @@ -0,0 +1,122 @@ +package fr.koka99cab.sanctuary.worldgen.feature; + +import com.mojang.serialization.Codec; +import java.util.ArrayList; +import java.util.List; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.tags.FluidTags; +import net.minecraft.util.RandomSource; +import net.minecraft.world.level.WorldGenLevel; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.feature.FeaturePlaceContext; +import net.minecraft.world.level.levelgen.feature.LakeFeature; + +public class SanctuaryWaterLakeFeature extends LakeFeature { + private static final int LAKE_WIDTH = 16; + private static final int WATER_LEVEL_HEIGHT = 4; + private static final int SUGAR_CANE_ATTEMPTS = 28; + private static final int MAX_SUGAR_CANE_COLUMNS = 5; + private static final Direction[] HORIZONTAL_DIRECTIONS = { + Direction.NORTH, + Direction.SOUTH, + Direction.WEST, + Direction.EAST + }; + + public SanctuaryWaterLakeFeature(Codec codec) { + super(codec); + } + + @Override + public boolean place(FeaturePlaceContext context) { + if (!SanctuaryWorldgenChecks.isSanctuaryGenerator(context)) { + return false; + } + + boolean placed = super.place(context); + if (placed) { + placeSugarCane(context.level(), context.origin(), context.random()); + } + return placed; + } + + private static void placeSugarCane(WorldGenLevel level, BlockPos origin, RandomSource random) { + BlockPos lakeOrigin = origin.offset(-8, -4, -8); + List candidates = collectSugarCaneCandidates(level, lakeOrigin); + int placedColumns = 0; + int attempts = Math.min(SUGAR_CANE_ATTEMPTS, candidates.size()); + + for (int attempt = 0; attempt < attempts && placedColumns < MAX_SUGAR_CANE_COLUMNS; attempt++) { + int index = random.nextInt(candidates.size()); + BlockPos candidate = candidates.remove(index); + if (random.nextFloat() < 0.55F && placeSugarCaneColumn(level, candidate, random)) { + placedColumns++; + } + } + } + + private static List collectSugarCaneCandidates(WorldGenLevel level, BlockPos lakeOrigin) { + List candidates = new ArrayList<>(); + BlockPos.MutableBlockPos waterPos = new BlockPos.MutableBlockPos(); + BlockPos.MutableBlockPos groundPos = new BlockPos.MutableBlockPos(); + + for (int x = 1; x < LAKE_WIDTH - 1; x++) { + for (int z = 1; z < LAKE_WIDTH - 1; z++) { + for (int y = 0; y < WATER_LEVEL_HEIGHT; y++) { + waterPos.set(lakeOrigin.getX() + x, lakeOrigin.getY() + y, lakeOrigin.getZ() + z); + if (!isOpenWater(level, waterPos)) { + continue; + } + + for (Direction direction : HORIZONTAL_DIRECTIONS) { + groundPos.set(waterPos).move(direction); + BlockPos canePos = groundPos.above(); + if (canPlaceSugarCane(level, canePos)) { + candidates.add(canePos); + } + } + } + } + } + + return candidates; + } + + private static boolean isOpenWater(WorldGenLevel level, BlockPos pos) { + if (pos.getY() < level.getMinY() || pos.getY() >= level.getMinY() + level.getHeight() - 1) { + return false; + } + + return level.getBlockState(pos).getFluidState().is(FluidTags.WATER) + && level.getBlockState(pos.above()).isAir(); + } + + private static boolean canPlaceSugarCane(WorldGenLevel level, BlockPos pos) { + BlockState sugarCane = Blocks.SUGAR_CANE.defaultBlockState(); + return pos.getY() >= level.getMinY() + && pos.getY() < level.getMinY() + level.getHeight() + && level.getBlockState(pos).isAir() + && sugarCane.canSurvive(level, pos); + } + + private static boolean placeSugarCaneColumn(WorldGenLevel level, BlockPos origin, RandomSource random) { + BlockPos.MutableBlockPos mutable = origin.mutable(); + int height = 2 + random.nextInt(3); + boolean placed = false; + + for (int y = 0; y < height; y++) { + if (!canPlaceSugarCane(level, mutable)) { + break; + } + + level.setBlock(mutable, Blocks.SUGAR_CANE.defaultBlockState(), Block.UPDATE_CLIENTS); + placed = true; + mutable.move(Direction.UP); + } + + return placed; + } +} diff --git a/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/feature/SanctuaryWorldgenChecks.java b/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/feature/SanctuaryWorldgenChecks.java new file mode 100644 index 0000000..3e1a3c9 --- /dev/null +++ b/Worldgen/sanctuary/src/main/java/fr/koka99cab/sanctuary/worldgen/feature/SanctuaryWorldgenChecks.java @@ -0,0 +1,27 @@ +package fr.koka99cab.sanctuary.worldgen.feature; + +import fr.koka99cab.sanctuary.SanctuaryMod; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.level.levelgen.NoiseBasedChunkGenerator; +import net.minecraft.world.level.levelgen.NoiseGeneratorSettings; +import net.minecraft.world.level.levelgen.feature.FeaturePlaceContext; + +final class SanctuaryWorldgenChecks { + private static final ResourceKey SANCTUARY_NOISE_SETTINGS = + ResourceKey.create(Registries.NOISE_SETTINGS, Identifier.fromNamespaceAndPath(SanctuaryMod.MOD_ID, "sanctuary")); + + private SanctuaryWorldgenChecks() { + } + + static boolean isSanctuaryGenerator(FeaturePlaceContext context) { + if (!(context.chunkGenerator() instanceof NoiseBasedChunkGenerator generator)) { + return false; + } + + return generator.generatorSettings().unwrapKey() + .filter(SANCTUARY_NOISE_SETTINGS::equals) + .isPresent(); + } +} diff --git a/Worldgen/sanctuary/src/main/resources/assets/sanctuary/icon.png b/Worldgen/sanctuary/src/main/resources/assets/sanctuary/icon.png new file mode 100644 index 0000000..242af53 Binary files /dev/null and b/Worldgen/sanctuary/src/main/resources/assets/sanctuary/icon.png differ diff --git a/Worldgen/sanctuary/src/main/resources/assets/sanctuary/lang/en_us.json b/Worldgen/sanctuary/src/main/resources/assets/sanctuary/lang/en_us.json new file mode 100644 index 0000000..4ae81ad --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/assets/sanctuary/lang/en_us.json @@ -0,0 +1,6 @@ +{ + "generator.sanctuary.sanctuary": "Sanctuary", + "generator.sanctuary.sanctuary.info": "Floating survival archipelago with Overworld-compatible biomes.", + "modmenu.nameTranslation.sanctuary": "Sanctuary", + "modmenu.descriptionTranslation.sanctuary": "A floating Overworld preset with seed-shaped sanctuary islands, reduced oceans, 3D cave biomes, and pressure-based diamond pockets." +} diff --git a/Worldgen/sanctuary/src/main/resources/assets/sanctuary/lang/fr_fr.json b/Worldgen/sanctuary/src/main/resources/assets/sanctuary/lang/fr_fr.json new file mode 100644 index 0000000..4fa0eea --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/assets/sanctuary/lang/fr_fr.json @@ -0,0 +1,6 @@ +{ + "generator.sanctuary.sanctuary": "Sanctuary", + "generator.sanctuary.sanctuary.info": "Archipel flottant de survie avec biomes de l'Overworld.", + "modmenu.nameTranslation.sanctuary": "Sanctuary", + "modmenu.descriptionTranslation.sanctuary": "Preset d'Overworld flottant sculpte par la worldgen de Sanctuary." +} diff --git a/Worldgen/sanctuary/src/main/resources/data/minecraft/tags/worldgen/world_preset/normal.json b/Worldgen/sanctuary/src/main/resources/data/minecraft/tags/worldgen/world_preset/normal.json new file mode 100644 index 0000000..bd7e343 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/minecraft/tags/worldgen/world_preset/normal.json @@ -0,0 +1,5 @@ +{ + "values": [ + "sanctuary:sanctuary" + ] +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/biome/dripstone_caves.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/biome/dripstone_caves.json new file mode 100644 index 0000000..2ec23ea --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/biome/dripstone_caves.json @@ -0,0 +1,159 @@ +{ + "attributes": { + "minecraft:audio/background_music": { + "default": { + "max_delay": 24000, + "min_delay": 12000, + "sound": "minecraft:music.overworld.dripstone_caves" + } + }, + "minecraft:visual/sky_color": "#78a7ff" + }, + "carvers": [ + "minecraft:cave", + "minecraft:cave_extra_underground", + "minecraft:canyon" + ], + "downfall": 0.4, + "effects": { + "water_color": "#3f76e4" + }, + "features": [ + [], + [ + "minecraft:lake_lava_underground", + "minecraft:lake_lava_surface", + "sanctuary:water_lake_underground", + "sanctuary:water_lake_surface" + ], + [ + "minecraft:amethyst_geode", + "minecraft:large_dripstone" + ], + [ + "minecraft:monster_room", + "minecraft:monster_room_deep" + ], + [], + [], + [ + "minecraft:ore_dirt", + "minecraft:ore_gravel", + "minecraft:ore_granite_upper", + "minecraft:ore_granite_lower", + "minecraft:ore_diorite_upper", + "minecraft:ore_diorite_lower", + "minecraft:ore_andesite_upper", + "minecraft:ore_andesite_lower", + "minecraft:ore_tuff", + "minecraft:ore_coal_upper", + "minecraft:ore_coal_lower", + "minecraft:ore_iron_upper", + "minecraft:ore_iron_middle", + "minecraft:ore_iron_small", + "minecraft:ore_gold", + "minecraft:ore_gold_lower", + "minecraft:ore_redstone", + "minecraft:ore_redstone_lower", + "minecraft:ore_lapis", + "minecraft:ore_lapis_buried", + "minecraft:ore_copper_large", + "minecraft:underwater_magma", + "minecraft:disk_sand", + "minecraft:disk_clay", + "minecraft:disk_gravel", + "sanctuary:matter_depth_materialization" + ], + [ + "minecraft:dripstone_cluster", + "minecraft:pointed_dripstone" + ], + [ + "minecraft:spring_water", + "minecraft:spring_lava" + ], + [ + "minecraft:glow_lichen", + "minecraft:patch_tall_grass_2", + "minecraft:trees_plains", + "minecraft:flower_plains", + "minecraft:patch_grass_plain", + "minecraft:brown_mushroom_normal", + "minecraft:red_mushroom_normal", + "minecraft:patch_pumpkin" + ], + [ + "minecraft:freeze_top_layer" + ] + ], + "has_precipitation": true, + "spawn_costs": {}, + "spawners": { + "ambient": [ + { + "type": "minecraft:bat", + "maxCount": 8, + "minCount": 8, + "weight": 10 + } + ], + "axolotls": [], + "creature": [], + "misc": [], + "monster": [ + { + "type": "minecraft:spider", + "maxCount": 4, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:zombie", + "maxCount": 4, + "minCount": 4, + "weight": 95 + }, + { + "type": "minecraft:skeleton", + "maxCount": 4, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:creeper", + "maxCount": 4, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:slime", + "maxCount": 4, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:enderman", + "maxCount": 4, + "minCount": 1, + "weight": 10 + }, + { + "type": "minecraft:drowned", + "maxCount": 4, + "minCount": 4, + "weight": 95 + } + ], + "underground_water_creature": [ + { + "type": "minecraft:glow_squid", + "maxCount": 6, + "minCount": 4, + "weight": 10 + } + ], + "water_ambient": [], + "water_creature": [] + }, + "temperature": 0.8 +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/biome/lush_caves.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/biome/lush_caves.json new file mode 100644 index 0000000..89ea974 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/biome/lush_caves.json @@ -0,0 +1,165 @@ +{ + "attributes": { + "minecraft:audio/background_music": { + "default": { + "max_delay": 24000, + "min_delay": 12000, + "sound": "minecraft:music.overworld.lush_caves" + } + }, + "minecraft:visual/sky_color": "#7ba4ff" + }, + "carvers": [ + "minecraft:cave", + "minecraft:cave_extra_underground", + "minecraft:canyon" + ], + "downfall": 0.5, + "effects": { + "water_color": "#3f76e4" + }, + "features": [ + [], + [ + "minecraft:lake_lava_underground", + "minecraft:lake_lava_surface", + "sanctuary:water_lake_underground", + "sanctuary:water_lake_surface" + ], + [ + "minecraft:amethyst_geode" + ], + [ + "minecraft:monster_room", + "minecraft:monster_room_deep" + ], + [], + [], + [ + "minecraft:ore_dirt", + "minecraft:ore_gravel", + "minecraft:ore_granite_upper", + "minecraft:ore_granite_lower", + "minecraft:ore_diorite_upper", + "minecraft:ore_diorite_lower", + "minecraft:ore_andesite_upper", + "minecraft:ore_andesite_lower", + "minecraft:ore_tuff", + "minecraft:ore_coal_upper", + "minecraft:ore_coal_lower", + "minecraft:ore_iron_upper", + "minecraft:ore_iron_middle", + "minecraft:ore_iron_small", + "minecraft:ore_gold", + "minecraft:ore_gold_lower", + "minecraft:ore_redstone", + "minecraft:ore_redstone_lower", + "minecraft:ore_lapis", + "minecraft:ore_lapis_buried", + "minecraft:ore_copper", + "minecraft:underwater_magma", + "minecraft:ore_clay", + "minecraft:disk_sand", + "minecraft:disk_clay", + "minecraft:disk_gravel", + "sanctuary:matter_depth_materialization" + ], + [], + [ + "minecraft:spring_water", + "minecraft:spring_lava" + ], + [ + "minecraft:glow_lichen", + "minecraft:patch_tall_grass_2", + "minecraft:lush_caves_ceiling_vegetation", + "minecraft:cave_vines", + "minecraft:lush_caves_clay", + "minecraft:lush_caves_vegetation", + "minecraft:rooted_azalea_tree", + "minecraft:spore_blossom", + "minecraft:classic_vines_cave_feature" + ], + [ + "minecraft:freeze_top_layer" + ] + ], + "has_precipitation": true, + "spawn_costs": {}, + "spawners": { + "ambient": [ + { + "type": "minecraft:bat", + "maxCount": 8, + "minCount": 8, + "weight": 10 + } + ], + "axolotls": [ + { + "type": "minecraft:axolotl", + "maxCount": 6, + "minCount": 4, + "weight": 10 + } + ], + "creature": [], + "misc": [], + "monster": [ + { + "type": "minecraft:spider", + "maxCount": 4, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:zombie", + "maxCount": 4, + "minCount": 4, + "weight": 95 + }, + { + "type": "minecraft:skeleton", + "maxCount": 4, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:creeper", + "maxCount": 4, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:slime", + "maxCount": 4, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:enderman", + "maxCount": 4, + "minCount": 1, + "weight": 10 + } + ], + "underground_water_creature": [ + { + "type": "minecraft:glow_squid", + "maxCount": 6, + "minCount": 4, + "weight": 10 + } + ], + "water_ambient": [ + { + "type": "minecraft:tropical_fish", + "maxCount": 8, + "minCount": 8, + "weight": 25 + } + ], + "water_creature": [] + }, + "temperature": 0.5 +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/biome/sanctuary_core.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/biome/sanctuary_core.json new file mode 100644 index 0000000..0d80d06 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/biome/sanctuary_core.json @@ -0,0 +1,101 @@ +{ + "attributes": { + "minecraft:visual/sky_color": "#78a7ff" + }, + "carvers": [], + "downfall": 0.4, + "effects": { + "water_color": "#3f76e4" + }, + "features": [ + [], + [], + [], + [], + [], + [], + [ + "sanctuary:matter_depth_materialization" + ], + [], + [], + [], + [] + ], + "has_precipitation": true, + "spawn_costs": {}, + "spawners": { + "ambient": [ + { + "type": "minecraft:bat", + "maxCount": 8, + "minCount": 8, + "weight": 10 + } + ], + "axolotls": [], + "creature": [ + { + "type": "minecraft:sheep", + "maxCount": 4, + "minCount": 4, + "weight": 12 + }, + { + "type": "minecraft:pig", + "maxCount": 4, + "minCount": 4, + "weight": 10 + }, + { + "type": "minecraft:chicken", + "maxCount": 4, + "minCount": 4, + "weight": 10 + }, + { + "type": "minecraft:cow", + "maxCount": 4, + "minCount": 4, + "weight": 8 + } + ], + "misc": [], + "monster": [ + { + "type": "minecraft:spider", + "maxCount": 4, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:zombie", + "maxCount": 4, + "minCount": 4, + "weight": 95 + }, + { + "type": "minecraft:skeleton", + "maxCount": 4, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:creeper", + "maxCount": 4, + "minCount": 4, + "weight": 100 + }, + { + "type": "minecraft:enderman", + "maxCount": 1, + "minCount": 1, + "weight": 10 + } + ], + "underground_water_creature": [], + "water_ambient": [], + "water_creature": [] + }, + "temperature": 0.8 +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/configured_feature/matter_depth_materialization.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/configured_feature/matter_depth_materialization.json new file mode 100644 index 0000000..175925a --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/configured_feature/matter_depth_materialization.json @@ -0,0 +1,4 @@ +{ + "type": "sanctuary:matter_depth_materialization", + "config": {} +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/configured_feature/water_lake.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/configured_feature/water_lake.json new file mode 100644 index 0000000..dea8640 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/configured_feature/water_lake.json @@ -0,0 +1,20 @@ +{ + "type": "sanctuary:water_lake", + "config": { + "barrier": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:dirt" + } + }, + "fluid": { + "type": "minecraft:simple_state_provider", + "state": { + "Name": "minecraft:water", + "Properties": { + "level": "0" + } + } + } + } +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/base_3d_noise.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/base_3d_noise.json new file mode 100644 index 0000000..7706212 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/base_3d_noise.json @@ -0,0 +1,8 @@ +{ + "type": "minecraft:old_blended_noise", + "smear_scale_multiplier": 4.0, + "xz_factor": 80.0, + "xz_scale": 0.25, + "y_factor": 160.0, + "y_scale": 0.25 +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/central_seeded_verticality.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/central_seeded_verticality.json new file mode 100644 index 0000000..0e7795f --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/central_seeded_verticality.json @@ -0,0 +1,58 @@ +{ + "type": "minecraft:cache_once", + "argument": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:mul", + "argument1": 0.16, + "argument2": { + "type": "minecraft:add", + "argument1": "sanctuary:island_spawn_density", + "argument2": 1.35 + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": 0.36, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 0.85, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:cave_cheese", + "xz_scale": 0.78, + "y_scale": 1.75 + } + }, + "argument2": { + "type": "minecraft:add", + "argument1": { + "type": "minecraft:mul", + "argument1": 0.55, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:jagged", + "xz_scale": 0.42, + "y_scale": 2.25 + } + }, + "argument2": { + "type": "minecraft:mul", + "argument1": -0.26, + "argument2": { + "type": "minecraft:abs", + "argument": { + "type": "minecraft:noise", + "noise": "minecraft:spaghetti_3d_1", + "xz_scale": 1.15, + "y_scale": 1.55 + } + } + } + } + } + } + } +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/continents.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/continents.json new file mode 100644 index 0000000..e957cb7 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/continents.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:flat_cache", + "argument": { + "type": "minecraft:add", + "argument1": 0.44, + "argument2": { + "type": "minecraft:mul", + "argument1": 0.72, + "argument2": { + "type": "minecraft:shifted_noise", + "noise": "minecraft:continentalness", + "shift_x": "minecraft:shift_x", + "shift_y": 0.0, + "shift_z": "minecraft:shift_z", + "xz_scale": 0.25, + "y_scale": 0.0 + } + } + } +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/depth.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/depth.json new file mode 100644 index 0000000..42a2441 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/depth.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:add", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_value": 0.82, + "from_y": 16, + "to_value": -0.72, + "to_y": 158 + }, + "argument2": { + "type": "minecraft:mul", + "argument1": 0.34, + "argument2": { + "type": "minecraft:noise", + "noise": "minecraft:cave_layer", + "xz_scale": 0.65, + "y_scale": 0.95 + } + } +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/erosion.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/erosion.json new file mode 100644 index 0000000..a8e6d1b --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/erosion.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:flat_cache", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "minecraft:erosion", + "shift_x": "minecraft:shift_x", + "shift_y": 0.0, + "shift_z": "minecraft:shift_z", + "xz_scale": 0.25, + "y_scale": 0.0 + } +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/final_density.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/final_density.json new file mode 100644 index 0000000..124a47b --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/final_density.json @@ -0,0 +1,22 @@ +{ + "type": "minecraft:squeeze", + "argument": { + "type": "minecraft:mul", + "argument1": 0.64, + "argument2": { + "type": "minecraft:interpolated", + "argument": { + "type": "minecraft:blend_density", + "argument": { + "type": "minecraft:max", + "argument1": "sanctuary:zero_island", + "argument2": { + "type": "minecraft:add", + "argument1": "sanctuary:floating_archipelago", + "argument2": "sanctuary:radial_void_mask" + } + } + } + } + } +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/floating_archipelago.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/floating_archipelago.json new file mode 100644 index 0000000..ec07d8d --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/floating_archipelago.json @@ -0,0 +1,37 @@ +{ + "type": "minecraft:add", + "argument1": -0.234375, + "argument2": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_value": 0.0, + "from_y": 4, + "to_value": 1.0, + "to_y": 32 + }, + "argument2": { + "type": "minecraft:add", + "argument1": 0.234375, + "argument2": { + "type": "minecraft:add", + "argument1": -23.4375, + "argument2": { + "type": "minecraft:mul", + "argument1": { + "type": "minecraft:y_clamped_gradient", + "from_value": 1.0, + "from_y": 184, + "to_value": 0.0, + "to_y": 440 + }, + "argument2": { + "type": "minecraft:add", + "argument1": 23.4375, + "argument2": "sanctuary:base_3d_noise" + } + } + } + } + } +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/island_spawn_density.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/island_spawn_density.json new file mode 100644 index 0000000..e01fee6 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/island_spawn_density.json @@ -0,0 +1,9 @@ +{ + "type": "sanctuary:island_spawn_density", + "radius": 512, + "surface_y": 122, + "vertical_radius": 156, + "center_value": 0.66, + "peak_value": 0.50, + "outside_value": -1.35 +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/radial_void_mask.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/radial_void_mask.json new file mode 100644 index 0000000..e0ebdc7 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/radial_void_mask.json @@ -0,0 +1,7 @@ +{ + "type": "sanctuary:radial_void_mask", + "void_radius": 176, + "transition_radius": 352, + "inside_value": -1.85, + "outside_value": 0.0 +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/ridges.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/ridges.json new file mode 100644 index 0000000..a9d03cc --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/ridges.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:flat_cache", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "minecraft:ridge", + "shift_x": "minecraft:shift_x", + "shift_y": 0.0, + "shift_z": "minecraft:shift_z", + "xz_scale": 0.25, + "y_scale": 0.0 + } +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/temperature.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/temperature.json new file mode 100644 index 0000000..e221527 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/temperature.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:flat_cache", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "minecraft:temperature", + "shift_x": "minecraft:shift_x", + "shift_y": 0.0, + "shift_z": "minecraft:shift_z", + "xz_scale": 0.25, + "y_scale": 0.0 + } +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/vegetation.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/vegetation.json new file mode 100644 index 0000000..7b849f2 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/vegetation.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:flat_cache", + "argument": { + "type": "minecraft:shifted_noise", + "noise": "minecraft:vegetation", + "shift_x": "minecraft:shift_x", + "shift_y": 0.0, + "shift_z": "minecraft:shift_z", + "xz_scale": 0.25, + "y_scale": 0.0 + } +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/zero_island.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/zero_island.json new file mode 100644 index 0000000..5c96a32 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/density_function/zero_island.json @@ -0,0 +1,9 @@ +{ + "type": "minecraft:add", + "argument1": "sanctuary:floating_archipelago", + "argument2": { + "type": "minecraft:add", + "argument1": "sanctuary:island_spawn_density", + "argument2": "sanctuary:central_seeded_verticality" + } +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/noise_settings/sanctuary.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/noise_settings/sanctuary.json new file mode 100644 index 0000000..5f4fd88 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/noise_settings/sanctuary.json @@ -0,0 +1,192 @@ +{ + "aquifers_enabled": false, + "default_block": { + "Name": "minecraft:stone" + }, + "default_fluid": { + "Name": "minecraft:air" + }, + "disable_mob_generation": false, + "legacy_random_source": true, + "noise": { + "height": 256, + "min_y": 0, + "size_horizontal": 2, + "size_vertical": 1 + }, + "noise_router": { + "barrier": 0.0, + "continents": "sanctuary:continents", + "depth": "sanctuary:depth", + "erosion": "sanctuary:erosion", + "final_density": "sanctuary:final_density", + "fluid_level_floodedness": 0.0, + "fluid_level_spread": 0.0, + "lava": 0.0, + "preliminary_surface_level": 0.0, + "ridges": "sanctuary:ridges", + "temperature": "sanctuary:temperature", + "vegetation": "sanctuary:vegetation", + "vein_gap": 0.0, + "vein_ridged": 0.0, + "vein_toggle": 0.0 + }, + "ore_veins_enabled": false, + "sea_level": -64, + "spawn_target": [], + "surface_rule": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "add_surface_depth": false, + "offset": 0, + "secondary_depth_range": 0, + "surface_type": "floor" + }, + "then_run": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:biome", + "biome_is": [ + "minecraft:badlands", + "minecraft:eroded_badlands", + "minecraft:wooded_badlands" + ] + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:red_sand" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:biome", + "biome_is": [ + "minecraft:beach", + "minecraft:desert", + "minecraft:warm_ocean" + ] + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:sand" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:biome", + "biome_is": [ + "minecraft:frozen_peaks", + "minecraft:grove", + "minecraft:ice_spikes", + "minecraft:jagged_peaks", + "minecraft:snowy_plains", + "minecraft:snowy_slopes", + "minecraft:snowy_taiga" + ] + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:snow_block" + } + } + }, + { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:grass_block", + "Properties": { + "snowy": "false" + } + } + } + ] + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "add_surface_depth": true, + "offset": 0, + "secondary_depth_range": 5, + "surface_type": "floor" + }, + "then_run": { + "type": "minecraft:sequence", + "sequence": [ + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:biome", + "biome_is": [ + "minecraft:badlands", + "minecraft:eroded_badlands", + "minecraft:wooded_badlands" + ] + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:terracotta" + } + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:biome", + "biome_is": [ + "minecraft:beach", + "minecraft:desert", + "minecraft:warm_ocean" + ] + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:sandstone" + } + } + }, + { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:dirt" + } + } + ] + } + }, + { + "type": "minecraft:condition", + "if_true": { + "type": "minecraft:stone_depth", + "add_surface_depth": false, + "offset": 0, + "secondary_depth_range": 0, + "surface_type": "ceiling" + }, + "then_run": { + "type": "minecraft:block", + "result_state": { + "Name": "minecraft:stone" + } + } + } + ] + } +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/placed_feature/matter_depth_materialization.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/placed_feature/matter_depth_materialization.json new file mode 100644 index 0000000..8a397e2 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/placed_feature/matter_depth_materialization.json @@ -0,0 +1,8 @@ +{ + "feature": "sanctuary:matter_depth_materialization", + "placement": [ + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/placed_feature/water_lake_surface.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/placed_feature/water_lake_surface.json new file mode 100644 index 0000000..f139423 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/placed_feature/water_lake_surface.json @@ -0,0 +1,19 @@ +{ + "feature": "sanctuary:water_lake", + "placement": [ + { + "type": "minecraft:rarity_filter", + "chance": 200 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:heightmap", + "heightmap": "WORLD_SURFACE_WG" + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/placed_feature/water_lake_underground.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/placed_feature/water_lake_underground.json new file mode 100644 index 0000000..e893b86 --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/placed_feature/water_lake_underground.json @@ -0,0 +1,57 @@ +{ + "feature": "sanctuary:water_lake", + "placement": [ + { + "type": "minecraft:rarity_filter", + "chance": 9 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:uniform", + "max_inclusive": { + "below_top": 0 + }, + "min_inclusive": { + "absolute": 0 + } + } + }, + { + "type": "minecraft:environment_scan", + "direction_of_search": "down", + "max_steps": 32, + "target_condition": { + "type": "minecraft:all_of", + "predicates": [ + { + "type": "minecraft:not", + "predicate": { + "type": "minecraft:matching_block_tag", + "tag": "minecraft:air" + } + }, + { + "type": "minecraft:inside_world_bounds", + "offset": [ + 0, + -5, + 0 + ] + } + ] + } + }, + { + "type": "minecraft:surface_relative_threshold_filter", + "heightmap": "OCEAN_FLOOR_WG", + "max_inclusive": -5 + }, + { + "type": "minecraft:biome" + } + ] +} diff --git a/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/world_preset/sanctuary.json b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/world_preset/sanctuary.json new file mode 100644 index 0000000..d2c4d0d --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/data/sanctuary/worldgen/world_preset/sanctuary.json @@ -0,0 +1,36 @@ +{ + "dimensions": { + "minecraft:overworld": { + "type": "minecraft:overworld", + "generator": { + "type": "minecraft:noise", + "biome_source": { + "type": "minecraft:multi_noise", + "preset": "minecraft:overworld" + }, + "settings": "sanctuary:sanctuary" + } + }, + "minecraft:the_end": { + "type": "minecraft:the_end", + "generator": { + "type": "minecraft:noise", + "biome_source": { + "type": "minecraft:the_end" + }, + "settings": "minecraft:end" + } + }, + "minecraft:the_nether": { + "type": "minecraft:the_nether", + "generator": { + "type": "minecraft:noise", + "biome_source": { + "type": "minecraft:multi_noise", + "preset": "minecraft:nether" + }, + "settings": "minecraft:nether" + } + } + } +} diff --git a/Worldgen/sanctuary/src/main/resources/fabric.mod.json b/Worldgen/sanctuary/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..bc4b35b --- /dev/null +++ b/Worldgen/sanctuary/src/main/resources/fabric.mod.json @@ -0,0 +1,27 @@ +{ + "schemaVersion": 1, + "id": "sanctuary", + "version": "${version}", + "name": "Sanctuary", + "description": "A floating Overworld preset with seed-shaped sanctuary islands, reduced oceans, 3D cave biomes, and pressure-based diamond pockets.", + "icon": "assets/sanctuary/icon.png", + "authors": [ + "KOKA99CAB" + ], + "license": "LGPL-3.0-or-later", + "environment": "*", + "entrypoints": { + "main": [ + "fr.koka99cab.sanctuary.SanctuaryMod" + ], + "client": [ + "fr.koka99cab.sanctuary.client.SanctuaryClient" + ] + }, + "depends": { + "fabricloader": ">=0.19.2", + "minecraft": "~26.1.2", + "java": ">=25", + "fabric-api": "*" + } +} diff --git a/license.txt b/license.txt new file mode 100644 index 0000000..8ed4ba6 --- /dev/null +++ b/license.txt @@ -0,0 +1,15 @@ +Hello World is released as a layered project. + +Original source code is licensed under LGPL-3.0-or-later. + +Original documentation, writing, website content, concepts, configuration curation, +and non-code creative assets are licensed under CC BY-NC-SA 4.0, +unless otherwise stated. + +The Hello World name, logo, visual identity, and project marks are not licensed +under the above licenses. They may be used only to identify, discuss, review, +or link to the original project, and not to imply endorsement or publish a +confusing derivative project. + +Minecraft, Mojang, Microsoft, and all Minecraft assets remain the property of +their respective owners. Third-party mods remain under their own licenses. \ No newline at end of file diff --git a/modlist.txt b/modlist.txt new file mode 100644 index 0000000..b4a3158 --- /dev/null +++ b/modlist.txt @@ -0,0 +1,41 @@ +Audio: +Decoration: +Farming: + Canaplia + Malongo +Fun: + Abjection + PepperDream +Gameplay: + Atlas + Blocodex + Computer + Harder + Minecrafter + Realtime +Graphics: + Ambiance + Dynamic-Torches +Interfaces: + Helloworld +Mobs: + Happy-Creeper + No Phantoms + Pipallon + Real Ghost + Villagers +Multiplayer: +Redstone: + Adresseur + Drawer +Structures: +Techniques: + Voidloop +Tools: + Canon +Transport: + IBelieveChickenFly + MagicCarpet + Spiderman +Worldgen: + Sanctuary diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..2668e20 --- /dev/null +++ b/readme.md @@ -0,0 +1,27 @@ +Hello World est organisé autour d’un sanctuaire, d’un codex et d’une série de petits systèmes qui rendent Minecraft plus lisible, plus habitable et plus étrange sans casser son âme vanilla. + +Ce dépôt contient un module Fabric par mod listé dans `modlist.txt`, rangé dans son dossier de catégorie. Tous les modules ciblent Minecraft `26.1.2`, la dernière version stable de la ligne `26.1` au moment de la création du template. + +## Développement + +- Auteur : `KOKA99CAB` +- Licence du mod : `LGPL-3.0-or-later` +- Mod ids : noms normalisés en minuscules, avec `_` si besoin +- Packages Java : `fr.koka99cab.` + +Chaque module utilise `.jdk/current`, relié à `~/.local/jdks/temurin-25`. + +Exemple de lancement : + +```sh +cd Interfaces/helloworld +./gradlew runClient +``` + +Pour construire tous les modules : + +```sh +find . -mindepth 3 -maxdepth 3 -name build.gradle -printf '%h\n' | sort | while read module; do + (cd "$module" && ./gradlew build) +done +```